




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、模擬電梯的設計與實現一、實驗目的1了解電梯調度算法。2利用微機實驗系統來模擬電梯。3進一步掌握微機接口的設計方法。二、實驗內容與要求1設計基本要求 用鍵盤、按鈕、發光二極管和 LED顯示單元來模擬電梯工作過程。樓層設為 5 層,用鍵盤鍵入希望停的樓層, 5 個 發光二極管顯示希望停的樓層,LED指示電梯當前所在樓層,按鈕用來啟、停電梯。電梯正常運行時以每 2 秒層的速度上升或下降。 2提高要求 設計幾個按鈕,模擬更多的電梯運行功能,如: 直達按鈕。若按此按鈕,電梯按直達方式運行,即對運行期間新鍵入的??繕菍樱词故峭较蛭吹綐菍樱┮嗖煌?,直達終點樓層; 急停按鈕。電
2、梯運行中,若按此按鈕,則電梯立即停在下一到達的樓層; 斷電待修按鈕。按下該鈕電梯不能工作,再按一下才能重新工作; 其它功能按鈕(由設計者自由發揮)。三、實驗報告要求設計目的和內容總體設計硬件設計:原理圖(接線圖)及簡要說明軟件設計框圖及程序清單設計結果和體會(包括遇到的問題及解決的方法)四、電梯的工作方式電梯工作按以下方式運行: 1假設當前電梯停在某層(LED顯示相應樓層, 5個發光二極管全滅)。鍵入數字鍵,如鍵入的數字與當前電梯??繉酉嗤?,則什么也不做,若不同則相應樓層的發光二極管亮;電梯自動判別上升或下降(在運行過程中用八段碼來顯示樓層變化)一直到達希望停的樓層
3、(八段碼顯示該樓層,相應 LED 滅)。 2假設當前電梯正在上升或下降運行(此時八段碼顯示樓層變化, LED 指示希望抵達的樓層),若鍵入新的希望停靠的樓層數字(相應的 LED 亮),則對同方向(上升或下降)未到的樓層能停靠,對其它情況則先??吭认M5臉菍樱缓罄^續運行)。如下幾例: 1) 設電梯當前在 2層,向上運行,LED指示希望在4層停,此時若鍵入3,則電梯將在3樓停,然后繼續運行至4層停; 2) 同上情況,若鍵入的不是 3而是5,則電梯將先停在4層,然后運行至5層停; 3) 同上情況,若鍵入的不是 3(或5),而是1,則電梯先停在4層,然后運行至層停。 五、總體設計思路本設計主要是
4、利用微機應用實驗平臺來模擬電梯的運行,用到了平臺上的一個非編碼鍵盤、LED顯示器、八段數碼管等模塊。有5個樓層,需要用5個按鍵模擬電梯中的請求按鈕,用5個按鍵模擬5個樓層每層向上請求的按鈕,再用5個模擬5個樓層每層向下請求的按鈕。非編碼鍵盤有16個鍵,可以用1-5號鍵模擬電梯內的按鈕,用6-0號鍵模擬每層向上請求的按紐,A-E模擬每層向下請求的按紐。當電梯靜止狀態時,無論外部哪一層有請求,電梯都由靜止狀態轉入向上或向下運行的狀態,直到到達請求的樓層;當電梯處于向上運行的狀態時,此時高于該樓層向上的請求和內部請求級別最高,其次是所有樓層向下的請求,再次是低于該樓層向上的請求;當電梯處于向下運行的
5、狀態時則情況相反。由于中斷級別在隨著電梯所處樓層的不同而變化,而且中斷源比較多。所以用每一個中斷源直接和中斷控制器相連,需要用到多個8259A級聯,很不方便。為解決這個問題,首先定義三個單字節變量REQ_U、REQ_D和REQ_IN分別存儲電梯每一層向上、向下和內部的請求,每一個變量用低5位,每一位代表一層。例如,REQ_U為 00000110B,這代表在2層和3層有向上的請求。8253定時器每隔20ms產生一次中斷,中斷程序便去執行掃描鍵盤,當掃描到有電梯內部或者外部按鍵時,將請求存儲到變量中。每到一個狀態時再檢查請求變量REQ_U、REQ_D和REQ_IN的值,根據電梯的運行方向和變量中的
6、請求,來決定電梯下一步的運行。設電梯的當前樓層為floor(floor=15),運行方向為dir(dir=0,向上;dir=1,向下),在電梯運行的工程中,用數碼管輸出floor值顯示當前的樓層。LED輸出REQ_IN的值顯示電梯內已經請求的樓層。六、系統硬件電路設計由于采用了PC機資源和微機實驗平臺,不需要其他的硬件電路。利用了微機平臺上的8253定時/計數器、8255并行接口單元、LED單元、非編碼鍵盤、數碼管顯示單元等等。系統結構框圖,如圖1所示。Q6IRQ25V clk08253 GATE0OUT0 A口8255 B口 C口LED顯示模塊CS0CS1CS2CS35個發光二極管非編碼鍵盤
7、片選圖1 系統結構框圖主要的模塊如下:1可編程定時/計數器8253定時/計數器8253主要是用于定時20ms,觸發中斷進行鍵盤掃描。電路連線是CLOCK0接Q6,分頻后頻率為46875Hz,OUT0接中斷IRQ2,每20ms中斷一次,GATE0接5v。計數器的初值應該是3A9H。28255并行接口單元8255主要是用于鍵盤的掃描和發光二極管的數據輸出。所以用8255A口的低5位接5個發光二極管,B口低4位接非編碼鍵盤的列線,高4位接鍵盤的行線。3 LED顯示系統雖然只用了1格LED顯示器,但為了數字更新更方便,主程序更加簡單,故此系統選用動態顯示方式。由于系統的軟件部分的運行時的核心程序是一直
8、循環的,因此顯示程序也是在循環過程中一直被調用,從而實時地被顯示出來。4非編碼鍵盤本系統采用的是行反轉法來掃描鍵盤的,調用鍵盤掃描的程序TESTKEY后,程序中的變量KEY的值就是按下的鍵的值,如果KEY為0FFH則表示無鍵盤輸入,為015 則按照上往下從左往右的順序分別代表每一個按鍵按下的信息。不過此掃描程序沒有考慮到多個按鍵同時按下的情況。又因為模擬電梯的按鍵一般不會有兩個按鍵同時按下的情況,所以,多個按鍵的情況可以不予考慮。七、軟件設計本設計的軟件設計的思路:通過軟件編程使8253輸出定時信號申請中斷,在中斷服務程序中掃描鍵盤,如果有按鍵,修改相應的變量位,并輸出內部請求變量REQ_IN
9、到發光二極管顯示當前的內部請求樓層。在主程序中,查詢變量的值,根據電梯調度算法運行電梯。1主要設計模塊程序主要包括以下主要模塊:鍵盤掃描程序、LED顯示程序、電梯調度算法。1) 鍵盤掃描程序:采用的是行反轉法來掃描鍵盤的,相應的程序設計請參考實驗指導書上實驗3中的相關介紹。2) LED顯示程序:本設計只用到了一個LED,只要將floor轉換為相應的段碼。先輸出位碼,再輸出段碼,循環輸出就可以動態顯示。為了循環的顯示,將LED顯示程序放在中斷服務程序中。相應的程序設計請參考實驗指導書上實驗3中的相關介紹。3) 電梯調度算法:在設計時將電梯一次從下到上視為一次運行(注意不一定從底層到頂層),同理,
10、電梯一次從上到下也視為一次運行(注意不一定從頂層到底層)。 當電梯向上運行時: a) 位于當前層以下的向上請求都被忽略留到下次向上運行時處理。 b) 位于當前層以上的向上請求都被記錄留到此次運行處理。 c) 無論哪層的向下請求都被忽略留到下次向下運行時處理。 當電梯向下運行時: a) 位于當前層以上的向下請求都被忽略留到下次向下運行時處理。 b) 位于當前層以下的向下請求都被記錄留到此次運行處理。 c) 無論哪層的向上請求都被忽略留到下次向上運行時處理。2程序流程圖 1)主程序框圖如圖2圖2 主程序框圖2)中斷服務程序框圖如圖3 圖3 中斷服務程序框圖3)電梯算法流程圖如圖4其中,dir代表電梯的運行方向,0代表電梯向上運行,1代表向下運動。設REQ_U(n)代表
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 應急演練方案常規采樣
- 廠區開門施工方案
- 救火現場處置方案
- 園區企業星級評定方案
- 農行維護客戶執行方案
- 科學調度庫容管理辦法
- 科技物品租賃管理辦法
- 科普行動資金管理辦法
- 租賃住房群組管理辦法
- 移動銷售團隊管理辦法
- 開關電源維修手冊
- 中建三局施工現場安全防護標準化圖冊
- 辦公樓裝修工程招標文件(改)
- 全過程工程咨詢服務方案
- GB/T 41948-2022顆粒表征樣品準備
- 哮喘病人麻醉
- 瓦工班組安全培訓試卷
- 2022年1月廣東省湛江市徐聞縣幼兒教師招聘考試《學前教育專業知識》真題試卷及標準答案有解析
- 2023年農業綜合行政執法理論考試題庫(含答案)
- GB/T 6561-1986十字槽沉頭自攻鎖緊螺釘
- GB/T 3532-2022日用瓷器
評論
0/150
提交評論