




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
.VHDL數字系統設計與測試實驗報告基于VHDL的電梯控制系統設計一、設計背景及說明隨著高層建筑的不斷涌現,對電梯的需求也與日俱增,電梯已經成為我們日常生活中不可缺少的局部,穩定可靠性高的電梯系統成為了電梯領域的新需求。現在基于VHDL硬件描述語言,用FPGA為控制芯片控制完成一個簡單的6層樓的電梯控制系統設計。我們常見的電梯控制系統功能都包括:上升請求、下降請求、電梯門控、樓層顯示燈、電梯運動方向顯示、超載、報警、電梯請求信號等。根據這些常用的信號設計一個電梯系統,實現所要求的功能。控制方式的選擇:1)部請求優先控制方式部請求控制方式類似于出租車的工作方式,先將車上的人送至目地,再去載客。作為通用型電梯應該效勞于大多數人,必須考慮電梯對外請求的響應。在部請求優先控制方式中,當電梯外部人的請求和電梯部人的請求沖突時,外部人的請求信號可能被長時間忽略,因為它不能作為通用型電梯的設計方案。2)單層層停控制方案單層層停控制方式等同于火車運行方式,遇到站即停頓、開門。這種方案保證所有的人的請求都能得到響應。然而這樣對電梯的效率產生了消極的影響:不必要的等待消耗了大量時間,而且電梯的運作與用戶的請求無關,當無請求時電梯也照常跑空車,浪費了大量的電能。對于用戶而言這種控制方式的請求響應時間也不是很快,因而也不是理想的電梯控制設計方案。3)方向優先控制式方式方案方向優先控制是指電梯運行到*一層樓時,先考慮這一層樓是否有請求:有則停頓;無則繼續上升或者下降。停頓后再啟動時,考慮上方或者下方是否有請求,有則繼續前進,無則停頓。檢測前方是否有請求,有請求則轉向運行,無請求則維持停頓狀態。這種運作方式下,電梯對用戶的請求相應率為100%,而且響應的時間較短。方向優先控制方式的效率遠遠大于單向層層停等控制方式的效率。而且,方. >.向控制方式下,電梯在維持停頓狀態的時候可以進入省電模式,又能節省大量的電能。在本設計中采用方向優先控制方式。電梯的輸入信號分析電梯的輸入信號分析主要包括外部輸入信號和部輸入信息的分析。對于電梯外部輸入信號:每一層電梯門外需要有上升請求按鈕和下降請求按鈕,其中一樓電梯門外只有上升請求按鈕,6樓電梯門外只有下降請求按鈕。電梯部輸入信號包括6個前往樓層按鈕、提前關門按鈕、延時關門按鈕、電梯異常求救按鈕,另外還有超重等警告信號輸入。電梯的輸出信號分析:電梯的輸出信號分析也主要包括外部輸出信號和部輸出信息的分析。對于電梯外部信號包括上升請求按鈕和下降請求按鈕是否被按下指示信號燈、電梯當前所在樓層指示信號、電梯運行方向指示信號。電梯部輸出信號包括6個前往樓層按鈕是否被按下指示信號、是否超重等告警指示信號、電梯當前所在樓層指示信號、以及電梯運行方向指示信號。電梯運行規則分析:當電梯處于上升模式時,只響應比電梯所在位置更高的上樓信號,由下至上依次執行,直到最后一個上樓請求執行完畢,如果高層有下樓請求時,則直接升到有下降請求的最高樓,然后進入下降模式,電梯處于下降模式時,則與上升模式相反。電梯系統框圖如下列圖所示:按鍵輸入乘坐電梯者所想要去的樓層,控制電梯門的開關,可編程邏輯芯片接收到信號后進展處理,發送信號給控制電機系統來控制電梯的上升下降等狀態,同時通過LED數碼管顯示所在的樓層,以及電梯的運動狀態。該控制器完成6層電梯的載客效勞,而且遵循方向優先原則,并能相應提前關門、延時關門,并且有超載報警和故障報警。同時指示電梯的運行情況以及電梯外請求信息。二、設計框圖及模塊說明設計電梯系統框圖如下列圖所示:電梯系統大致包括4個模塊:. >.1)外部數據采集模塊對外部信號采集、處理要求電梯控制器:實現對外部請求信號的實時、準確采集;準確實時地捕捉到達樓層的信號;有效防止樓層到達信號、外部請求信號的誤判。采用FPGA為系統控制核心,系統時鐘頻率足夠滿足此系統實時采集數據的要求。外部請求信號的輸入形式為按鍵輸入,到達樓層信號來自光敏傳感器,關門中斷信號及超載信號則產生于壓力傳感器。2)信號存儲模塊電梯控制系統的請求輸入信號有18個〔電梯外有6個上升請求和6個下降請求的用戶輸入端口,電梯有6個請求用戶輸入端口〕,由于系統對外請求沒有設置優先級,各樓層的外請求信號被采集后可先進展運算,再存到存儲器。要注意的是電梯運行過程中,由于用戶的請求信號的輸入是離散的,而且系統對請求的響應也是離散的,因此請求信號的存儲要新的請求信號不能覆蓋原來的請求信號,只有響應動作完成后才能去除存儲器對應的請求信號位。3)基于FPGA的中央處理器模塊中央數據處理模塊是系統的核心,通過對存儲的數據〔含請求、到達樓層等信號〕進展比擬、判斷以驅動系統狀態的流轉。電梯工作過程中共有9種狀態:等待、上升、下降、開門、關門、停頓、休眠、超載報警及故障報警狀態。一般情況下電梯的工作始點是第一層,起始狀態是等待狀態,啟動條件是承受上升請求。超載狀態時電梯關門動作取消,同時發出警報,直到警報被去除〔看門狗信號有效的條件是一層樓連續發生關門中斷情況超過3次〕。本系統由請求信號啟動,運行中每檢測到一個到達樓層信號,再參考原方向信號來決定是否停頓,轉向等動作。系統狀態流程圖如下列圖所示:4)信號的輸出、顯示模塊本系統的輸出信號有兩種:一種是電機的升降控制信號〔兩位〕和開門/關門控制信號;另一種是面向用戶的提示信號〔含樓層顯示、方向顯示、已承受請求顯示等〕。電機控制信號一般需要兩位,本系統中電機有3種工作狀態:正轉、反轉和停轉狀態。兩位控制信號作為一個三路開關的選通信號,此三路開關選用模擬電. >.子開關。系統的顯示輸出包括數碼管樓層顯示、數碼管請求信號顯示和表征運動方向箭頭指示燈的開關信號。LED七段數碼管顯示局部在前面的作業中已經做了詳細的介紹及說明,在本系統中省略。本系統具有請求信號顯示功能,結合方向顯示,可以減少用戶對同一請求的輸入次數,這樣就延長了電梯按鍵的壽命。三、電梯控制程序設計源代碼及端口說明輸入端口信號說明:clk:時鐘信號,2Hz;clr:去除警報信號,高有效,去除故障報警;c_u1、c_u2、c_u3、c_u4、c_u5:電梯外人的上升請求;c_d2、c_d3、c_d4、c_d5、c_d6:電梯外人的下降請求;deng:關門中斷,用于在需要等待時,讓電梯門一直翻開,停頓運動;d1、d2、d3、d4、d5、d6:電梯人的請求信號;full:超載信號,高時表示電梯的人過多,超載報警;g1、g2、g3、g4、g5、g6:到達樓層信號,數碼管LED將顯示其值;quick:提前關門信號,高有效,當為高時,電梯門馬上關閉;輸出端口信號說明:door[1:0]:電梯門控信號;led[6:0]:電梯所在樓層顯示;led_c_u[5:0]:電梯外人上升請求信號顯示;led_c_d[5:0]:電梯外人下降請求信號顯示;led_d[5:0]:電梯請求信號顯示;alarm:超載警告信號;up:電梯運動狀態顯示,高時表示上升;down:電梯運動狀態顯示,高時表示為下降;ud:電機控制信號,控制電梯的上升下降,"1〞表示為上升,"0〞表示為下降;wawawa:看門狗報警信號,高時表示故障報警。源代碼如下所示:-------------------------------------------------------------------------------. >.---libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;useieee.std_logic_arith.all;entitydiantiisport(clk:instd_logic; --時鐘信號〔頻率為2Hz〕full,deng,quick,clr:instd_logic; --超載、關門中斷、提前關門去除報警信號c_u1,c_u2,c_u3,c_u4,c_u5:instd_logic; --電梯外人的上升請求信號c_d2,c_d3,c_d4,c_d5,c_d6:instd_logic; --電梯外人的下降請求信號d1,d2,d3,d4,d5,d6:instd_logic; --電梯人的請求信號g1,g2,g3,g4,g5,g6:instd_logic; --到達樓層信號door:outstd_logic_vector(1downto0); --電梯門控制信號led:outstd_logic_vector(6downto0); --電梯所在樓層顯示led_c_u:outstd_logic_vector(5downto0);--電梯外人上升請求信號顯示led_c_d:outstd_logic_vector(5downto0);--電梯外人下降請求信號顯示led_d:outstd_logic_vector(5downto0); --電梯請求信號顯示wahaha:outstd_logic; --看門狗報警信號ud,alarm:outstd_logic; --電梯運動方向顯示,超載警告信號up,down:outstd_logic); --電機控制信號和電梯運動enddianti;architecturebehavofdiantiissignald11,d22,d33,d44,d55,d66:std_logic; --電梯人請求信號存放信號signalc_u11,c_u22,c_u33,c_u44,c_u55:std_logic; --電梯外人上升請求信號存放信號signalc_d22,c_d33,c_d44,c_d55,c_d66:std_logic;電--梯外人下降請求信號存放信號signalq:integerrange0to1; --分頻信號.
>.signalq1:integerrange0to6;--關門延時計數器signalq2:integerrange0to9;--看門狗計數器signaldd,cc_u,cc_d,dd_cc:std_logic_vector(5downto0);--電梯外請求信號存放器signalopendoor:std_logic; --開門使能信號signalupdown:std_logic; --電梯運動方向信號存放器signalen_up,en_dw:std_logic; --預備上升、預備下降預操作使能信號begin:process(clk)beginifclk'eventandclk='1'thenifclr='1'thenq1<=0;q2<=0;wahaha<='0'; --去除故障報警elsiffull='1'thenalarm<='1';q1<=0; --超載報警ifq1>=3thendoor<="10";elsedoor<="00";endif;elsifq=1thenq<=0;alarm<='0';ifq2=3thenwahaha<='1'; --故障報警elseifopendoor='1'thendoor<="10";q1<=0;q2<=0;up<='0';down<='0';
--開門操作elsifen_up='1'then
--上升預操作ifdeng='1'thendoor<="10";q1<=0;q2<=q2+1;
--關門中斷elsifquick='1'thenq1<=3;
--提前關門.
>.elsifq1=6thendoor<="00";updown<='1';up<='1';--關門完畢,電梯進入上升狀態elsifq1>=3thendoor<="01";q1<=q1+1; --電梯進入關門狀態elseq1<=q1+1;door<="00"; --電梯進入等待狀態endif;elsifen_dw='1'then
--下降預操作ifdeng='1'thendoor<="10";q1<=0;q2<=q2+1;elsifquick='1'thenq1<=3;elsifq1=6thendoor<="00";updown<='0';down<='1';elsifq1>=3thendoor<="01";q1<=q1+1;elseq1<=q1+1;door<="00";endif;endif;ifg1='1'thenled<="1001111";
--電梯到達1樓,數碼管顯示1ifd11='1'orc_u11='1'thend11<='0';c_u11<='0';opendoor<='1';--有當前層的請求,則電梯進入開門狀態elsifdd_cc>"000001"thenen_up<='1';opendoor<='0';--有上升請求,則電梯進入預備上升狀態elsifdd_cc="000000"thenopendoor<='0';--無請求時,電梯停在1樓待機endif;elsifg2='1'thenled<="0010010"; --電梯到達2樓,數碼管顯示2ifupdown='1'then --電梯前一運動狀態位上升ifd22='1'orc_u22='1'thend22<='0';c_u22<='0';opendoor<='1';--有當前層的請求,則電梯進入開門狀態.
>.elsifdd_cc>"000011"thenen_up<='1';opendoor<='0';--有上升請求,則電梯進入預備上升狀態elsifdd_cc<"000010"thenen_dw<='1';opendoor<='0';--有下降請求,則電梯進入預備下降狀態endif;--電梯前一運動狀態為下降elsifd22='1'orc_d22='1'thend22<='0';c_d22<='0';opendoor<='1';--有當前層的請求,則電梯進入開門狀態elsifdd_cc<"000010"thenen_dw<='1';opendoor<='0';--有下降請求,則電梯進入預備下降狀態elsifdd_cc>"000011"thenen_up<='1'; opendoor<='0';--有上升請求,則電梯進入預備上升狀態endif;elsifg3='1'thenled<="0000110";
--電梯到達3樓,數碼管顯示3ifupdown='1'thenifd33='1'orc_u33='1'thend33<='0';c_u33<='0';opendoor<='1';elsifdd_cc>"000111"thenen_up<='1';opendoor<='0';elsifdd_cc<"000100"thenen_dw<='1';opendoor<='0';endif;elsifd33='1'orc_d33='1'thend33<='0';c_d33<='0'; opendoor<='1';elsifdd_cc<"000100"thenen_dw<='1';opendoor<='0';elsifdd_cc>"000111"thenen_up<='1';opendoor<='0';endif;elsifg4='1'thenled<="1001100"; --電梯到達4樓,數碼管顯示4ifupdown='1'thenifd44='1'orc_u44='1'thend44<='0';c_u44<='0';opendoor<='1';elsifdd_cc>"001111"thenen_up<='1';opendoor<='0';elsifdd_cc<"001000"thenen_dw<='1';opendoor<='0';. >.endif;elsifd44='1'orc_d44='1'thend44<='0';c_d44<='0';opendoor<='1';elsifdd_cc<"001000"thenen_dw<='1';opendoor<='0';elsifdd_cc>"001111"thenen_up<='1';opendoor<='0';endif;elsifg5='1'thenled<="0100100"; --電梯到達5樓,數碼管顯示5ifupdown='1'thenifd55='1'orc_u55='1'thend55<='0';c_u55<='0';opendoor<='1';elsifdd_cc>"011111"thenen_up<='1'; opendoor<='0';elsifdd_cc<"010000"thenen_dw<='1'; opendoor<='0';endif;elsifd55='1'orc_d55='1'thend55<='0';c_d55<='0';opendoor<='1';elsifdd_cc<"010000"thenen_dw<='1';opendoor<='0';elsifdd_cc>"011111"thenen_up<='1'; opendoor<='0';endif;elsifg6='1'thenled<="0100000"; --電梯到達6樓,數碼管顯示6ifd66='1'orc_d66='1'thend66<='0';c_d66<='0';opendoor<='1';elsifdd_cc<"100000"thenen_dw<='1';opendoor<='0';endif;elseen_up<='0';en_dw<='0'; --電梯進入上升或下降狀態endif;endif;elseq<=1;alarm<='0'; --去除超載報警ifd1='1'ord1='0'thend11<=d1; --對電梯人請求信號進展檢測和存放elsifd2='1'ord2='0'thend22<=d2;elsifd3='1'ord3='0'thend33<=d3;elsifd4='1'ord4='0'thend44<=d4;.
>.elsifd5='1'ord5='0'thend55<=d5;elsifd6='1'ord6='0'thend66<=d6;endif;ifc_u1='1'orc_u1='0'thenc_u11<=c_u1; --對電梯外人上升請求信號進展檢測和存放elsifc_u2='1'orc_u2='0'thenc_u22<=c_u2;elsifc_u3='1'orc_u3='0'thenc_u33<=c_u3;elsifc_u4='1'orc_u4='0'thenc_u44<=c_u4;elsifc_u5='1'orc_u5='0'thenc_u55<=c_u5;endif;ifc_d2='1'orc_d2='0'thenc_d22<=c_d2; --對電梯外人下降請求信號進展檢測和存放elsifc_d3='1'orc_d3='0'thenc_d33<=c_d3;elsifc_d4='1'orc_d4='0'thenc_d44<=c_d4;elsifc_d5='1'orc_d5='0'thenc_d55<=c_d5;elsifc_d6='1'orc_d6='0'thenc_d66<=c_d6;endif;dd<=d66&d55&d44&d33&d22&d11; --電梯人請求信號并置cc_u<='0'&c_u55&c_u44&c_u33&c_u22&c_u11; --電梯外人上升請求信號并置cc_d<=c_d66&c_d55&c_d44&c_d33&c_d22&'0'; --電梯外人下降請求信號并置dd_cc<=ddorcc_uorcc_d; --電梯、外人請求信號進展綜合endif;ud<=updown;led_d<=dd;led_c_u<=cc_u;led_c_d<=cc_d;endif;endprocess;endbehav;
--電梯運動狀態顯示--電梯人請求信號顯示--電梯外人上升請求信號顯示--電梯外人下降請求信號顯示.
>.此次電梯控制系統設計使用的是Altera公司的MA*-II,由下資源使用情況圖可見這款芯片足夠滿足本次設計需求。四、仿真結果及說明假設電梯初始狀態在一樓,此時2、3樓電梯外有人要下樓,4樓電梯外有人要上樓,在此后輸入等待、快速關門、超載等信號,觀察仿真圖得出結論:電梯控制程序仿真全圖注:實際使用時電梯的時鐘為2Hz,為了仿真時便于觀察我們在仿真時,將頻率加倍為25MHz。電梯控制程序仿真局部放大圖-1注:1.電梯停在一樓時,承受到請求信號c_d3、c_d2、c_u4和d6,并把請求信號寫入相應的存放器。led顯示電梯所在樓層;led_d、led-c_u和led_c_d顯示用戶的請求。電梯經過準備上升狀態后,進入上升狀態,到達2樓、3樓時,由于2、3樓的乘客要求的是下降,所以不停繼續前進。電梯上升到4
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 新II型水泥軌枕的安裝
- QYK型礦用潛水泵產品介紹
- 技能培訓-電氣防火培訓課件
- 2024高中生籃球裁判員考試試題及答案
- 2024年裁判員考試技能提升試題及答案
- 模具設計師資格考試戰爭準備試題及答案
- 2025租房合同的范本標準版
- 農業植保員職業資格考試的思路試題及答案
- 揭秘2024年模具設計師資格認證試題及答案技巧
- 體育經紀人資格考試考綱解析 試題及答案
- 2025年元宇宙+游戲行業新興熱點、發展方向、市場空間調研報告
- 問題等于機會的培訓
- 森林管護員面試題及答案
- 培訓課件:混凝土結構的施工技術(澆筑、養護)
- 人教版 七年級英語下冊 第二學期 期中綜合測試卷(2025年春)
- “中華傳統文化經典研習”任務群下先秦諸子散文教學策略研究
- 2025年高考語文模擬作文導寫及點評:社會時鐘
- 《護理信息系統》課件
- 《疥瘡的防治及治療》課件
- 施工現場平面布置與臨時設施、臨時道路布置方案
- 建筑施工大型機械設備安全使用與管理培訓
評論
0/150
提交評論