基于有限狀態(tài)機(jī)的優(yōu)化電梯控制算法的設(shè)計(jì)和實(shí)現(xiàn)_第1頁(yè)
基于有限狀態(tài)機(jī)的優(yōu)化電梯控制算法的設(shè)計(jì)和實(shí)現(xiàn)_第2頁(yè)
基于有限狀態(tài)機(jī)的優(yōu)化電梯控制算法的設(shè)計(jì)和實(shí)現(xiàn)_第3頁(yè)
基于有限狀態(tài)機(jī)的優(yōu)化電梯控制算法的設(shè)計(jì)和實(shí)現(xiàn)_第4頁(yè)
基于有限狀態(tài)機(jī)的優(yōu)化電梯控制算法的設(shè)計(jì)和實(shí)現(xiàn)_第5頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余1頁(yè)可下載查看

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、基于有限狀態(tài)機(jī)的優(yōu)化電梯控制算法的設(shè)計(jì)和實(shí)現(xiàn)摘 要:電梯控制系統(tǒng)是一個(gè)復(fù)雜的自動(dòng)化控制系統(tǒng), 文章在分析電梯運(yùn)行特點(diǎn)的基礎(chǔ)上,設(shè)計(jì)一種電梯運(yùn)行控制 的有限狀態(tài)機(jī)模型,基于該有限狀態(tài)機(jī)模型設(shè)計(jì)優(yōu)化的電梯 控制算法, 并實(shí)現(xiàn)該算法, 實(shí)驗(yàn)表明, 該算法具有邏輯清晰、 簡(jiǎn)單明了、運(yùn)行可靠高效等特點(diǎn),可以很好地應(yīng)用于教學(xué)及 實(shí)際電梯控制系統(tǒng)之中。關(guān)鍵詞:電梯;有限狀態(tài)機(jī);電梯控制算法;算法設(shè)計(jì) 與實(shí)現(xiàn)在現(xiàn)代社會(huì)中,特別是高層建筑里,電梯是不可缺少的 垂直運(yùn)輸工具。電梯的特點(diǎn)是所占面積很小,通過(guò)合理的控 制程序可以將乘客或貨物安全有效快速地運(yùn)送到不同的樓 層12 。而目前的電梯控制算法比較復(fù)雜, 程序比

2、較繁瑣 3 , 文章提出了基于有限狀態(tài)機(jī)的優(yōu)化電梯控制算法,并給出了 具體的實(shí)現(xiàn)。1 電梯運(yùn)行分析 電梯結(jié)構(gòu),一般電梯內(nèi)有所有樓層的對(duì)應(yīng)按鍵,提供人 們按下所要到達(dá)的目的層;每一層電梯外都會(huì)對(duì)應(yīng)有一個(gè)向 上和向下的方向鍵(如果是最高層,則只有向下的按鍵;如 果是最底層,則只有向上的按鍵) ,提供人們所在樓層做出上樓或者下樓的操作電梯作為垂直運(yùn)輸?shù)纳翟O(shè)備,它通用的使用規(guī)則:當(dāng) 只有一層有需求時(shí),電梯直接響應(yīng)。每到達(dá)一個(gè)需要響應(yīng)的 樓層,則開門后關(guān)門。當(dāng)電梯處于上升狀態(tài)時(shí),電梯只響應(yīng) 高層的上升按鍵請(qǐng)求。當(dāng)電梯處于下降狀態(tài)時(shí),電梯只響應(yīng) 低層的下降按鍵請(qǐng)求。每個(gè)請(qǐng)求信號(hào)保留到執(zhí)行后自動(dòng)刪除。2

3、電梯控制的有限狀態(tài)機(jī)模型設(shè)計(jì) 有限狀態(tài)機(jī)是表示有限個(gè)狀態(tài)以及這些狀態(tài)之間轉(zhuǎn)移 和動(dòng)作等行為的數(shù)學(xué)模型,在軟件設(shè)計(jì)領(lǐng)域中,狀態(tài)機(jī)經(jīng)常 用來(lái)描述一些復(fù)雜的算法,表明一些算法內(nèi)部的結(jié)構(gòu)和流程 4。文章采用有限狀態(tài)機(jī)來(lái)描述電梯的控制過(guò)程,思路明確 清晰。有限狀態(tài)機(jī)關(guān)鍵的步驟在于確定狀態(tài)的對(duì)象以及狀態(tài) 的個(gè)數(shù),文章將電梯處在的每一個(gè)樓層都視為一個(gè)狀態(tài),而 每一個(gè)狀態(tài)下都對(duì)應(yīng)電梯開門、關(guān)門、停止、向上走一層和 向下走一層這些動(dòng)作,動(dòng)作之間的轉(zhuǎn)移有相應(yīng)的條件觸發(fā), 具體參考圖 1 所示。對(duì)圖 1 中具體的狀態(tài)、動(dòng)作轉(zhuǎn)移說(shuō)明如下:(1)“到達(dá)第 N 層”這個(gè)狀態(tài)下,能產(chǎn)生“電梯開門” 動(dòng)作的觸發(fā)條件為條件 1

4、,條件1為:第N層為目的地???能對(duì)應(yīng)以下兩種情況中的一種,或者兩種都具備:a.電梯內(nèi)有人按當(dāng)前層; b. 電梯外有人按下方向鍵,且方向鍵與當(dāng)前 電梯運(yùn)行方向一致; “電梯開門”動(dòng)作后,無(wú)條件進(jìn)入“電梯關(guān)門”動(dòng)作。 (2)“到達(dá)第 N 層”這個(gè)狀態(tài)下,由“電梯關(guān)門”動(dòng)作轉(zhuǎn)到“向上走一層”動(dòng)作的觸發(fā)條件為條件 2, 條件 2 為:電梯繼續(xù)上行。即電梯停止或者運(yùn)行方向向上, 尚未到達(dá)最高目的樓層。而最高目的樓層取決于: a.電梯內(nèi) 有人按了更高樓層;b.更高樓層電梯外有人按下,無(wú)須考慮 電梯外的方向鍵。 (3)“到達(dá)第 N 層”這個(gè)狀態(tài)下,由“電 梯關(guān)門”動(dòng)作轉(zhuǎn)到 “向下走一層” 動(dòng)作的觸發(fā)條件為

5、條件 3, 條件 3 為:電梯繼續(xù)下行。電梯停止或者運(yùn)行方向向下,尚 未到達(dá)最低目的地,最低目的地取決于:a.電梯內(nèi)有人按了更低樓層;b.更低樓層電梯外有人按下,無(wú)須考慮電梯外的 方向鍵。 (4)“到達(dá)第 N 層”這個(gè)狀態(tài)下,由“電梯關(guān)門” 動(dòng)作轉(zhuǎn)到“停止”動(dòng)作的觸發(fā)條件為條件 4,條件 4 為:無(wú) 鍵按下(電梯內(nèi)外都無(wú)按鍵按下) 。(5)“到達(dá)第 N 層”這個(gè) 狀態(tài)下, 直接轉(zhuǎn)到 “向上走一層” 動(dòng)作的觸發(fā)條件為條件 5, 條件 5 為:電梯當(dāng)前向上運(yùn)行,第 N 層不是目的地。下面條 件同時(shí)滿足:a.電梯內(nèi)無(wú)人按當(dāng)前層;b.電梯外無(wú)人按下與 當(dāng)前電梯運(yùn)行方向一致的方向鍵。(6)“到達(dá)第 N

6、層”這個(gè)狀態(tài)下, 直接轉(zhuǎn)到 “向下走一層” 動(dòng)作的觸發(fā)條件為條件 6, 條件 6 為:電梯當(dāng)前向下運(yùn)行,第 N 層不是目的地。下面條 件同時(shí)滿足:a.電梯內(nèi)無(wú)人按當(dāng)前層;b.電梯外無(wú)人按下與 當(dāng)前電梯運(yùn)行方向一致的方向鍵。(7)在“到達(dá)第 N 層”這個(gè)狀態(tài)下,直接轉(zhuǎn)向“停止”動(dòng)作的觸發(fā)條件為條件 7,條件 7 為:無(wú)鍵按下(電梯內(nèi)外都無(wú)按鍵按下) 。( 8)在“到 達(dá)第 N 層”這個(gè)狀態(tài)下,直接轉(zhuǎn)向“停止”動(dòng)作的觸發(fā)條件 為條件 8,條件 8 為:有鍵按下(電梯內(nèi)或外有按鍵按下) 。 每當(dāng)“向上走一層”或者“向下走一層”的動(dòng)作都會(huì)觸發(fā)狀 態(tài)的轉(zhuǎn)移,由電梯“到達(dá)第N層”轉(zhuǎn)移到“到達(dá)第 N+1層”

7、或者“到達(dá)第 N-1 層”。3 基于有限狀態(tài)機(jī)的算法設(shè)計(jì)與實(shí)現(xiàn) 根據(jù)上文介紹,利用有限狀態(tài)機(jī)建模,將電梯的每個(gè)樓 層視為一個(gè)狀態(tài),每個(gè)狀態(tài)下,又分為若干動(dòng)作。在具體的 實(shí)現(xiàn)中,在“每達(dá)到一層”的狀態(tài)下,都進(jìn)行圖 1 中各個(gè)條 件判斷,滿足條件則觸發(fā)對(duì)應(yīng)的動(dòng)作。同時(shí)在具體實(shí)現(xiàn)中, 由于這個(gè)動(dòng)作的觸發(fā)條件都是取決于當(dāng)前電梯按鍵狀態(tài),因 此我們需要記錄電梯內(nèi)外按鍵的狀態(tài)、電梯當(dāng)前運(yùn)行的方向 和最高(最低)響應(yīng)樓層的判斷。根據(jù)電梯控制的有限狀態(tài) 機(jī)模型,設(shè)計(jì)優(yōu)化的電梯控制算法如下:算法 1 基于有限狀態(tài)機(jī)的優(yōu)化電梯控制算法INPUT: 電梯內(nèi)部按鍵及各樓層按鍵狀態(tài);OUTPUT: 電梯運(yùn)行控制信號(hào) .

8、PROCEDUC:E FSM_Based_ elevator_control_Algorithm()1. while ( true ) then2. if 根據(jù)電梯內(nèi)部按鍵、當(dāng)前樓層按鍵及電梯運(yùn)行判斷當(dāng)前樓層應(yīng)該開門 then3. 在暫停在當(dāng)前樓層,并進(jìn)行電梯開門、關(guān)門動(dòng)作;4. end if ;5. if 電梯運(yùn)行方向是上行 then6. if 到達(dá)上行最高目的層 then7. 暫停在當(dāng)前層;8. else / 還未到達(dá)最高目的層9. 驅(qū)動(dòng)電梯上行;10. end if else ;11. else if 電梯運(yùn)行方向是下行12. if 到達(dá)下行最低目的層 then13. 暫停在當(dāng)前層;14

9、. else / 還未到達(dá)最低目的層15. 驅(qū)動(dòng)電梯下行;16. end if else ;17. else / 電梯目前是暫停在當(dāng)前層18. 根據(jù)電梯內(nèi)部按鍵、各樓層按鍵設(shè)置電梯運(yùn)行方向 及目標(biāo)層19. end if else ;20. end while ; 該算法需特別說(shuō)明兩點(diǎn): (1)步驟 2-3 需根據(jù)電梯運(yùn)行 設(shè)計(jì)時(shí)速提前進(jìn)行判斷,以便于有足夠的時(shí)間控制電梯暫停在 該層上;( 2)電梯的每次按鍵都將刷新當(dāng)前運(yùn)行電梯的最高 目的層或最低目的層,以便能及時(shí)響應(yīng)用戶使用電梯的需求。 我們?cè)?Microsoft Visual C+ 環(huán)境中對(duì)算法進(jìn)行了實(shí)現(xiàn),實(shí)驗(yàn) 表明,該算法具有計(jì)算量級(jí)小,能及時(shí)響應(yīng)按鍵,運(yùn)行高效 等特點(diǎn)。4 結(jié)束語(yǔ) 文章提出了基于有限狀態(tài)機(jī)的優(yōu)化電梯控制算法,實(shí)驗(yàn) 表明,該算法具有邏輯清晰、簡(jiǎn)單明了、運(yùn)行可靠高效等特 點(diǎn),適用于教學(xué)或者控制電梯的應(yīng)用研究工作中。參考文獻(xiàn)

溫馨提示

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

評(píng)論

0/150

提交評(píng)論