覃園芳(廣東工貿職業(yè)技術學院,廣東 廣州 510510)
?
基于有限狀態(tài)機實現(xiàn)的單片機控制電梯仿真系統(tǒng)
覃園芳
(廣東工貿職業(yè)技術學院,廣東 廣州 510510)
摘 要:電梯控制系統(tǒng)是一個復雜的自動化控制系統(tǒng),本文在分析電梯運行特點基礎上,以51單片機為核心,設計電梯仿真電路結構,并實現(xiàn)基于有限狀態(tài)機的程序,控制電梯運行。仿真實驗結果表明,該電梯仿真系統(tǒng)具有真實電梯系統(tǒng)的各項功能,很好地模擬了真實電梯系統(tǒng)的運行,可較好地應用于單片機教學中,并可供實際電梯控制系統(tǒng)設計做參考。
關鍵詞:電梯;51單片機;有限狀態(tài)機;硬件設計;仿真系統(tǒng)
在現(xiàn)代社會和經濟活動中,尤其是高層建筑里,電梯是一種不可缺少的垂直運輸工具。由于應用廣泛,控制過程復雜,電梯已成為各種新型計算機控制技術的應用平臺和控制對象,也是相關專業(yè)教學和科研的重要平臺??紤]電梯結構龐大而復雜帶來教學培訓或者實習過程中帶來的安全等問題,開發(fā)安全且經濟有效的電梯控制仿真系統(tǒng)來輔助教學和研究是非常重要的。
目前電梯目前各式各樣的核心電梯控制器主要采用繼電器控制器、PLC控制器、單片機控制器這3種。采用繼電器控制的電梯系統(tǒng)通常需要器件較多,電路復雜,不利于維護;采用PLC控制的電梯系統(tǒng)由于一般的PLC控制器無法與上位機進行實時通信,或者通信協(xié)議沒有公開等因素,帶來難以實現(xiàn)人機界面友好的上位機監(jiān)控等缺點;利用單片機控制的電梯具有成本低,實時性強、精度高和顯示、功能多樣等優(yōu)點。本文的主要任務是采用單片機AT89C51設計控制一個6層電梯的仿真系統(tǒng),給出各部分的硬件電路設計和軟件設計,軟件設計采用有限狀態(tài)機的思想來實現(xiàn)。最后給出仿真結果,結果表明:這個電梯控制系統(tǒng)具有高精度、低成本、實時性高及功能多樣的優(yōu)勢。
(1)電梯完全自動響應電梯內、外指令;
(2)電梯到達目的樓層,延時關門;
(3)電梯運行時只響應順向按鍵的呼叫,反向按鍵呼叫信號做記憶功能;
(4)每個請求信號保留到執(zhí)行后自動刪除;
(5)顯示當前電梯所在樓層;
(6)語音提示功能;
(7)電梯上升帶動電動機正向轉動,下降帶動電動機反向轉動。
該系統(tǒng)是基于單片機AT89C51為主控制器設計的6層電梯仿真系統(tǒng),包括梯廂、樓層按鍵模塊、電梯位置顯示模塊,電梯開關門模擬模塊、電動機運行模塊以及語音模塊等,硬件系統(tǒng)的總體結構框圖如圖1所示。
本文采用Proteus軟件為平臺進行整個電梯仿真系統(tǒng)的設計及仿真工作。Proteus軟件是一種低投資的電子設計自動化軟件,提供可仿真數(shù)字和模擬、交流和直流等數(shù)千種元器件和多達30多個元件庫。它是目前比較好的仿真單片機及外圍器件的工具。具體的硬件設計模塊如下:
(1)電梯指令鍵盤和語音模塊
該仿真系統(tǒng)里電梯指令鍵盤分為梯廂按鍵和樓層按鍵,梯廂按鍵對應梯轎內部按鍵,該電梯有6層,因此對應6個按鍵。而樓層按鍵設在每個樓層內,每個樓層都對應一個向上和向下的方向鍵,而最高層第六層只有一個向下的按鍵,最底層第一層只有一個向下的按鍵,總共10個按鍵。該系統(tǒng)用一個4*4的矩陣式鍵盤實現(xiàn)電梯指令鍵盤,分別由單片機8個并行I/O口控制,其中1_U至5_ U表示1至5樓向上的按鍵,2_D至6_D表示2至6樓向下的按鍵,1至6表示梯廂內1 至6樓的按鍵。具體結構如圖2所示。
語音模塊的作用是實現(xiàn)電梯到達需要響應的樓層將發(fā)出蜂鳴聲。該模塊采用了有源蜂鳴器,由于蜂鳴器內部帶振蕩器,單片機只要給控制引腳輸出高電平就會發(fā)聲。
(2)電梯位置顯示模塊和電梯開關門模擬模塊
電梯位置顯示模塊負責顯示梯轎內當前電梯所在樓層的位置。本電梯控制系統(tǒng)采用一個共陽極的數(shù)碼管,公共端接電源正極,另外7個控制端分別跟單片機的7個并行I/O口相連。一定時間后熄滅。
圖1 電梯仿真系統(tǒng)硬件設計的總體結構框圖
圖2 電梯指令鍵盤模塊
圖3 語音模塊
圖4 電梯位置顯示模塊
(3)電動機運行模塊
單片機進行邏輯分析,控制電梯的運行方向,是處于停止、上升或是下降
電梯開關門模擬模塊負責模擬電梯到達需要響應的樓層時,對應的開門動作。1~6樓分別對應F1至F6標識的LED燈,當電梯到達該樓層需要開門,那么對應樓層的燈就會亮,否則都處于滅狀態(tài)。例如,如果梯廂內有人按下4樓,那么電梯到達4樓時,F(xiàn)4將由滅變亮,持續(xù)的狀態(tài),這個功能是由單片機控制電動機運行模塊實現(xiàn)的。電梯控制系統(tǒng)里的電動機采用直流電機,采用H橋驅動電路進行控制,如圖6所示。電路包括4個三極管和一個電機。要使電機運轉,必須導通對角線上的一對三極管。單片機通過給rev、enm、fwd 3個控制端輸出高低電平實現(xiàn)電機的停止、正轉、或反轉的控制。同時,可以通過給控制端rev、fwd端輸入不同占空比的PWM信號實現(xiàn)電機的速度控制。
圖5 電梯開關門模擬模塊
圖6 電動機運行模塊圖
圖7 電梯控制狀態(tài)轉移圖
圖8 仿真結果圖
該電梯系統(tǒng)基于有限狀態(tài)機來實現(xiàn)電梯的控制,思路明確清晰,能夠高效地解決電梯響應多個梯廂或是樓層按鍵都被按下的復雜情況。有限狀態(tài)機關鍵的步驟在于確定狀態(tài)的對象以及狀態(tài)的個數(shù),本文將電梯處在的每一個樓層都視為一個狀態(tài),而每一個狀態(tài)下都對應電梯開門、關門、停止、向上走一層和向下走一層這些動作,動作之間的轉移有相應的條件觸發(fā),具體參考如圖7所示。
其中開門和關門的動作通過電梯開關門模擬模塊中對應樓層燈處于亮狀態(tài)持續(xù)30s來實現(xiàn)。電梯處于向“上走一層”、“停止”或“向下走一層”的動作通過單片機控制電機的工作狀態(tài)來實現(xiàn)。對于電梯指令模塊,通過行掃描法實現(xiàn)4×4矩陣式鍵盤按鍵的識別,具備多個按鍵同時被按下的識別功能。
基于上述設計的電梯硬件結構,采用有限狀態(tài)機算法實現(xiàn)電梯控制,整個仿真系統(tǒng)的運行結果如下。例如當前電梯處于3樓向上運行的狀態(tài),按下第3層方向向上,即“3_U”鍵,電梯響應開門,如圖8(a)所示。之后在梯廂內按下“5”鍵,表示要去5樓,電梯將持續(xù)上升,電機正傳,每到達一層樓數(shù)碼管顯示為當前的樓層數(shù),當?shù)竭_第5層時,電梯停止轉動,開門后關門,對應5層LED燈亮持續(xù)30s,如圖8(b)所示。期間如有人不管在梯廂內或是樓層里按下按鍵,電梯都會根據(jù)相應的邏輯依次去相應。
本文基于51單片機設計了電梯仿真電路結構,并實現(xiàn)了基于有限狀態(tài)機的程序用于控制電梯運行。仿真實驗結果表明,該電梯仿真系統(tǒng)具有真實電梯系統(tǒng)的各項功能,很好地模擬了真實電梯系統(tǒng)的運行,可較好地應用于單片機教學中,并可供實際電梯控制系統(tǒng)設計做參考。
參考文獻
[1]葉安麗.電梯控制技術(第2版)[M].北京:機械工業(yè)出版社,2008:25-40.
[2]鞏玉濱,陳繼文,等.基于單片機的電梯控制仿真系統(tǒng)[M].計算機系統(tǒng)應用,2011,20(11):114-117.
[3]鄭良田.基于單片機的電梯控制系統(tǒng)的研究[M].科技資訊,2007(21):109-11.
[4]覃園芳.基于有限狀態(tài)機的優(yōu)化電梯控制算法的設計和實現(xiàn)[M].科技創(chuàng)新與應用,2016:14-139.
[5]陶磊.試論電梯控制算法[J].中國科技博覽,2013(8):323-323.
[6]王靜霞.單片機應用技術(C語言版)[M].北京:電子工業(yè)出版社,2009.
中圖分類號:TP309
文獻標識碼:A