基于VHDL三層電梯控制器的設計
0 引言
電梯控制器是控制電梯按顧客要求自動上下的裝置。本文采用VHDL語言來設計實用三層電梯控制器,其代碼具有良好的可讀性和易理解性,源程序經(jīng)A1tera公司的MAX+plus II軟件仿真,目標器件選用CPLD器件。通過對三層電梯控制器的設計,可以發(fā)現(xiàn)本設計有一定的擴展性,而且可以作為更多層電梯控制器實現(xiàn)的基礎。
1 三層電梯控制器將實現(xiàn)的功能
(1)每層電梯入口處設有上下請求開關,電梯內(nèi)設有顧客到達層次的停站請求開關。
(2)設有電梯入口處位置指示裝置及電梯運行模式(上升或下降)指示裝置。
(3)電梯每秒升(降)一層樓。
(4)電梯到達有停站請求的樓層,經(jīng)過1秒電梯門打開,開門指示燈亮,開門4秒后,電梯門關閉(開門指示燈滅),電梯繼續(xù)進行,直至執(zhí)行完最后一個請求信號后停留在當前層。
(5)能記憶電梯內(nèi)外所有請求,并按照電梯運行規(guī)則按順序響應,每個請求信號保留至執(zhí)行后消除。
(6)電梯運行規(guī)則一當電梯處于上升模式時,只響應比電梯所在位置高的上樓請求信號,由下而上逐個執(zhí)行,直到最后一個上樓請求執(zhí)行完畢;如果高層有下樓請求,則直接升到由下樓請求的最高層,然后進入下降模式。當電梯處于下降模式時則與上升模式相反。
(7)電梯初始狀態(tài)為一層開門狀態(tài)。
2 設計方案和論證
2.1 控制器的設計方案
控制器的功能模塊如圖1所示,包括主控制器、分控制器、樓層選擇器、狀態(tài)顯示器、譯碼器和樓層顯示器。乘客在電梯中選擇所要到達的樓層,通過主控制器的處理,電梯開始運行,狀態(tài)顯示器顯示電梯的運行狀態(tài),電梯所在樓層數(shù)通過譯碼器譯碼從而在樓層顯示器中顯示。分控制器把有效的請求傳給主控制器進行處理,同時顯示電梯的運行狀態(tài)和電梯所在樓層數(shù)。由于分控制器相對簡單很多,所以主控制器是核心部分。
2.2 三層電梯控制器的設計思路
電梯控制器采用狀態(tài)機來實現(xiàn),思路比較清晰??梢詫㈦娞莸却拿棵腌娨约伴_門、關門都看成一個獨立的狀態(tài)。由于電梯又是每秒上升或下降一層,所以就可以通過一個統(tǒng)一的1秒為周期的時鐘來觸發(fā)狀態(tài)機。根據(jù)電梯的實際工作情況,可以把狀態(tài)機設置10個狀態(tài),分別是“電梯停留在第1層”、“開門”、“關門”、“開門等待第1秒”、“開門等待第2秒”、“開門等待第3秒”、“開門等待第4秒”、“上升”、“下降”和“停止狀態(tài)”。各個狀態(tài)之間的轉換條件可由上面的設計要求所決定。
3 三層電梯控制器的綜合設計
3.1 三層電梯控制器的實體設計
首先考慮輸入端口,一個異步復位端口reset,用于在系統(tǒng)不正常時回到初始狀態(tài);在電梯外部,必須有升降請求端口,一層是最低層,不需要有下降請求,三層是最高層,不需要有上升請求,二層則上升、下降請求端口都有;在電梯的內(nèi)部,應該設有各層停留的請求端口:一個電梯時鐘輸入端口,該輸入時鐘以1秒為周期,用于驅(qū)動電梯的升降及開門關門等動作;另有一個按鍵時鐘輸入端口,時鐘頻率比電梯時鐘高。
其次是輸出端口,有升降請求信號以后,就得有一個輸出端口來指示請求是否被響應,有請求信號以后,該輸出端口輸出邏輯‘l’。被響應以后則恢復邏輯‘O’;同樣,在電梯內(nèi)部也應該有這樣的輸出端口來顯示各層停留是否被響應;在電梯外部,需要一個端口來指示電梯現(xiàn)在所處的位置;電梯開門關門的狀態(tài)也能用一個輸出端口來指示;為了觀察電梯的運行是否正確,可以設置一個輸出端口來指示電梯的升降狀態(tài)。
評論