EDA課程設計——電梯控制器_第1頁
EDA課程設計——電梯控制器_第2頁
EDA課程設計——電梯控制器_第3頁
EDA課程設計——電梯控制器_第4頁
EDA課程設計——電梯控制器_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、電子設計E自D動)A化技術(課程設計報題目 : 電梯控制系統(tǒng)設計姓 名: 院 系: 專 業(yè): 學 號: 指導教師:完成時間 : 年 月 日目錄一、課程設計題目、內容與要求 41.1 設計內容41.2 具體要求4二、系統(tǒng)設計 42.1 設計思路 42.2 系統(tǒng)原理(包含:框圖等闡述)與設計說明等內容三、系統(tǒng)實現 5 注:此部分闡述具體實現,包含主要邏輯單元、模塊、源代碼等 內容四、系統(tǒng)仿真 12五、硬件驗證(操作)說明 15六、總結 16七、參考書目 17設計題目電梯控制系統(tǒng)設計要求1. 電梯入口處設有上下請求開關各 1 個,電梯內設有乘客到達層次的數字開關。電梯當 前所在的樓層位置用一位數碼管

2、顯示,用一只發(fā)光二極管顯示開門 / 關門狀態(tài),用發(fā)光二 極管顯示每層的上下請求狀態(tài); 2. 顯示電梯當前所處位置和電梯上行下行及開關門狀 態(tài);3. 電梯到達有??空菊埱蟮臉菍雍?,電梯門就會自動打開門指示燈亮,開門3 秒鐘后,電梯門自動關閉并繼續(xù)運行; 4. 對電梯開門時間可以提前關門(按關門按鈕) ;5. 能記憶電梯內外的所有請求信號,并按照電梯運行的規(guī)則次第響應,每個請求信號保留 至執(zhí)行后撤除,如到達某層后,上下方均無請求,則電梯停在該層,中止運行。設計過程(包括:設計方案、上機設計與仿真結果、硬件實驗方案及實驗結果、收獲和體會)附后成績 評定指導 教師 評語課程 設計 等級、課程設計題目、

3、內容與要求1.1 課程設計內容 - 電梯控制系統(tǒng)采用 EDA-VHDL語言建模電梯控制系統(tǒng),實現電梯的功能需求。在實驗操作平臺MAXPLUISI和實驗箱(主芯片 EPM7096LC68-7 )上完成系統(tǒng)的仿真。1.2 電梯系統(tǒng)控制設計要求(1). 每層電梯入口處設有上下請求開關各1 個,電梯內設有乘客到達層次的數字開關。電梯當前所在的樓層位置用一位數碼管顯示,用一只發(fā)光二極管顯示開門 / 關門狀 態(tài),用發(fā)光二極管顯示每層的上下請求狀態(tài);(2). 顯示電梯當前所處位置和電梯上行下行及開門,關門狀態(tài);(3). 電梯到達有??空菊埱蟮臉菍雍螅娞蓍T就會自動打開門指示燈亮,開門3 秒鐘后;(4). 電

4、梯門自動關閉(開門指示燈滅)電梯繼續(xù)運行;(5). 對電梯開門時間可以提前關門(按關門按鈕);( 6) . 能記憶電梯內外的所有請求信號,并按照電梯運行的規(guī)則次第響應,每個請求信號保留至執(zhí)行后撤除,如到達某層后,上下方均無請求,則電梯停在該層,中止運行。二、系統(tǒng)設計2.1 設計思路該設計采用方向優(yōu)先控制方式方案,方向優(yōu)先控制是指電梯運行到某一樓層時先考 慮這一樓層是否有請求:有 ,則停止;無,則繼續(xù)前進。停下來后再啟動時的步驟: 考慮前方上方或下方是否有請求:有,則繼續(xù)前進;無,則停止;檢測后方是否有 請求,有請求則轉向運行,無請求則維持停止狀態(tài)。2.2 系統(tǒng)原理(包含:框圖等闡述)與設計說明

5、等內容電梯控制器系統(tǒng)由系統(tǒng)時鐘,樓層請求,故障清除,關門中斷,超載,提前關門,信號 存儲,狀態(tài)存儲,中央處理器,電梯升降停,門開關停,樓層顯示,請求信號顯示,超載故 障報警部分組成。如圖 1 和如圖 2 所示圖2 電梯控制系統(tǒng)電路圖三、系統(tǒng)實現(1) 外部數據高速采集模塊設計有效的對外部信號采集、處理要求電梯控制器對外部請求信號的實時、準確采集準確、 實時的捕捉樓層到達信號;有防止樓層到達信號、外部請求信號的誤判。(2) 信號存儲模塊電梯控制器的請求輸入信號有 18個(電梯外有 6 個上升請求和 6個下降請求的用戶輸入 端口,電梯內有 6 個請求用戶輸入端口) ,由于系統(tǒng)對內、外請求沒有設置優(yōu)

6、先級,各樓層 的內、外請求信號被采集后可先進行運算,再存到存儲器內。(3) 基于 FPGA的中央處理模塊中央數據處理模塊是系統(tǒng)的核心,通過對存儲的數據(含請求、到達樓層等信號)進行 比較、判斷以驅動系統(tǒng)狀態(tài)的流轉。電梯工作過程中共有 9 種狀態(tài):等待、上升、下降、開 門、關門、停止、休眠、超載報警以及故障報警狀態(tài)。一般情況下,電梯工作起始點是第一 層,起始狀態(tài)是等待狀態(tài),啟動條件是收到上升請求。系統(tǒng)的狀態(tài)流程圖如圖 3所示 :圖 3 系統(tǒng)狀態(tài)流程圖(4)源程序 library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigne

7、d.all;use ieee.std_logic_arith.all;entity dianti isport ( clk : in std_logic;時鐘信號(頻率為 2Hz)full,deng,quick,clr : in std_logic;-超載、關門中斷、提前關門清除報警信號c_u1,c_u2,c_u3,c_u4,c_u5: in std_logic;電梯外人的上升請求信號c_d2,c_d3,c_d4,c_d5,c_d6 : in std_logic;電梯外人的下降請求信號d1,d2,d3,d4,d5,d6 : in std_logic;電梯內人的請求信號g1,g2,g3,g4,g

8、5,g6 : in std_logic;到達樓層信號door : out std_logic_vector(1 downto 0);電梯門控制信號led : out std_logic_vector(6 downto 0);電梯所在樓層顯示led_c_u:out std_logic_vector(5 downto 0);-電梯外人上升請求信號顯示led_c_d:out std_logic_vector(5 downto 0); -電梯外人下降請求信號顯示led_d : out std_logic_vector(5 downto 0);電梯內請求信號顯示ud,alarmwahaha : out

9、std_logic;看門狗報警信號: out std_logic;電梯運動方向顯示,超載警告信號up,down : out std_logic );電機控制信號和電梯運動end dianti;architecture behav of dianti issignal d11,d22,d33,d44,d55,d66:std_logic;電梯內人請求信號寄存信號signal c_u11,c_u22,c_u33,c_u44,c_u55:std_logic; -電梯外人上升請求信號寄存信號signal c_d22,c_d33,c_d44,c_d55,c_d66:std_logic; -電梯外人下降請求

10、信號寄存信號signal q:integer range 0 to 1;分頻信號signal q1:integer range 0 to 6;關門延時計數器signal q2:integer range 0 to 9;看門狗計數器signal dd,cc_u,cc_d,dd_cc:std_logic_vector(5 downto0); - 電梯內外請求信號寄存器signal opendoor:std_logic;開門使能信號signal updown:std_logic;電梯運動方向信號寄存器signal en_up,en_dw:std_logic;預備上升、預備下降預操作使能信號begin

11、process(clk)begin清除故障報警if clkevent and clk=1 thenif clr=1 then q1=0;q2=0;wahaha=0;elsif full=1 then alarm=1;q1=3 then door=10;else door=00;end if;elsif q=1 thenq=0;alarm=0;故障報警開門操作elsifen_up=1 then上升預操作if q2=3 then wahaha=1;elseif opendoor=1 then door=10;q1=0;q2=0;up=0;down=3 then door=01;q1=q1+1;電梯

12、進入關門狀態(tài)else q1=q1+1;door=00;電梯進入等待狀態(tài)elsif en_dw=1 thenend if;下降預操作if deng=1 then door=10;q1=0;q2=q2+1;elsif quick=1 then q1=3;elsif q1=6 then door=00;updown=0;down=1;if deng=1 then door=10;q1=0;q2=q2+1;elsif quick=1 then q1=3;elsif q1=6 then door=00 ;updown =1;up=3 then door=01;q1=q1+1;else q1=q1+1;d

13、oor=00;end if;end if;if g1=1 then led=1001111; - 電梯到達 1 樓,數碼管顯示 1if d11=1 or c_u11=1 then d11=0; c_u11=0;opendoor000001 then en_up=1; opendoor=0;- 有上升請求 ,則電梯進入預備上升狀態(tài)elsif dd_cc=000000 then opendoor=0; - 無請求時,電梯停在 1 樓待機end if;elsif g2=1 then led=0010010;- 電梯到達 2 樓,數碼管顯示 2if updown=1 then - 電梯前一運動狀態(tài)位上

14、升if d22=1 or c_u22=1 then d22=0; c_u22=0; opendoor000011 then en_up=1; opendoor=0;-有上升請求 ,則電梯進入預備上升狀態(tài)elsif dd_cc000010 then en_dw=1; opendoor=0;- 有下降請求 ,則電梯進入預備下降狀態(tài)end if; - 電梯前一運動狀態(tài)為下降elsif d22=1 or c_d22=1 then d22=0; c_d22=0;opendoor=1;- 有當前層的請求 ,則電梯進入開門狀態(tài)elsif dd_cc000010 then en_dw=1; opendoor0

15、00011 then en_up=1; opendoor=0;- 有上升請求 ,則電梯進入預備上升狀態(tài) end if;elsif g3=1 then led=0000110; - 電梯到達 3 樓,數碼管顯示 3 if updown=1 thenif d33=1 or c_u33=1 then d33=0; c_u33=0;opendoor000111 then en_up=1; opendoor=0;elsif dd_cc000100 then en_dw=1; opendoor=0;end if;elsif d33=1 or c_d33=1 then d33=0; c_d33=0; ope

16、ndoor=1;elsif dd_cc000100 then en_dw=1; opendoor000111 then en_up=1; opendoor=0;end if;elsif g4=1 then led=1001100; - 電梯到達 4 樓,數碼管顯示 4 if updown=1 thenif d44=1 or c_u44=1 then d44=0; c_u44=0; opendoor001111 then en_up=1; opendoor=0;elsif dd_cc001000 then en_dw=1; opendoor=0;end if;elsif d44=1 or c_d

17、44=1 then d44=0; c_d44=0; opendoor=1;elsif dd_cc001000 then en_dw=1; opendoor001111 then en_up=1; opendoor=0;end if;elsif g5=1 then led=0100100; - 電梯到達 5 樓,數碼管顯示 5if updown=1 thenif d55=1 or c_u55=1 then d55=0; c_u55=0;opendoor011111 then en_up=1; opendoor=0;elsif dd_cc010000 then en_dw=1; opendoor=

18、0;end if;elsif d55=1 or c_d55=1 then d55=0; c_d55=0;opendoor=1;elsif dd_cc010000 then en_dw=1; opendoor011111 then en_up=1; opendoor=0;end if;elsif g6=1 then led=0100000;- 電梯到達 6 樓,數碼管顯示 6if d66=1 or c_d66=1 then d66=0; c_d66=0;opendoor=1;elsif dd_cc100000 then en_dw=1; opendoor=0;else en_up=0;en_dw

19、=0;電梯進入上升或下降狀態(tài)end if;end if;end if;else q=1;alarm=0;if d1=1 then d11=d1;- 清除超載報警對電梯內人請求信號進行檢測和寄存elsif d2=1 then d22=d2;elsif d3=1 then d33=d3;elsif d4=1 then d44=d4;elsif d5=1 then d55=d5;elsif d6=1 then d66=d6;end if;if c_u1=1 then c_u11=c_u1; - 對電梯外人上升請求信號進行檢測和寄存elsif c_u2=1 then c_u22=c_u2;elsif

20、c_u3=1 then c_u33=c_u3;elsif c_u4=1 then c_u44=c_u4;elsif c_u5=1 then c_u55=c_u5;end if;if c_d2=1 then c_d22=c_d2; - 對電梯外人下降請求信號進行檢測和寄存elsif c_d3=1 then c_d33=c_d3;elsif c_d4=1 then c_d44=c_d4;elsif c_d5=1 then c_d55=c_d5;elsif c_d6=1 then c_d66=c_d6;end if;dd=d66&d55&d44&d33&d22&d11;cc_u=0&c_u55&c_

21、u44&c_u33&c_u22&c_u11; -cc_d=c_d66&c_d55&c_d44&c_d33&c_d22&0; -dd_cc=dd or cc_u or cc_d; -end if;ud=updown; -led_d=dd;-led_c_u=cc_u;-led_c_d=cc_d;-end if;end process;end behav;電梯內人請求信號并置電梯外人上升請求信號并置 電梯外人下降請求信號并置 電梯內、外人請求信號進行綜合電梯運動狀態(tài)顯示電梯內人請求信號顯示電梯外人上升請求信號顯示電梯外人下降請求信號顯示四、電梯 系統(tǒng)仿真 程序仿真注: 1. 電梯停在一樓時,接受到請求信號 c_d3、 c_d2、 c_u4 和 d6,并把請求信號寫 入相應的寄存器。 led 顯示電梯所在樓層; l ed_d、 led-c_u 和 led_c_d 顯示用戶的請求。2. 電梯經過準備上升狀態(tài)后,進入上升狀態(tài),到達2 樓, 3 樓時,不停繼續(xù)前進。3. 電梯上升到 4 樓時,響應請求( c_u4 ),開門載客;進入預備上升狀態(tài)。電梯控制程序仿真局部放大圖 -1注:1. 電梯上升到 6 樓時,響應請求( d_6),開門卸客;進入預備下降狀態(tài)。2. 電梯下降經過 5 樓,4 樓都不停 ,到達 3 樓開門卸客

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論