范有機(jī)
(武夷學(xué)院 機(jī)電工程學(xué)院,福建 武夷山 354300)
隨著電梯數(shù)量增多,面向電子信息專業(yè)招聘電梯技術(shù)員的崗位增加,教學(xué)內(nèi)容未涉及電梯控制方面的知識(shí),實(shí)驗(yàn)室也沒有教學(xué)電梯模型,觀察實(shí)體電梯運(yùn)行過程不便且可能影響其正常運(yùn)行帶來危險(xiǎn),學(xué)生自學(xué)電梯控制算法難度大,需電梯控制算法的引導(dǎo),以鍛煉學(xué)生的邏輯思維和擴(kuò)大就業(yè)渠道。電梯控制系統(tǒng)是典型的復(fù)雜信息控制系統(tǒng),電梯在呼叫信息的驅(qū)動(dòng)下動(dòng)作,類似游戲機(jī)按鍵控制人物等對(duì)象進(jìn)程,適合用有限狀態(tài)機(jī)(FSM)思想建模。有限狀態(tài)機(jī)(Finite-state machine,FSM),又稱有限狀態(tài)自動(dòng)機(jī),簡(jiǎn)稱狀態(tài)機(jī)[1],在確定事件或指令觸發(fā)下,從一個(gè)狀態(tài)轉(zhuǎn)移至另一狀態(tài),并執(zhí)行相應(yīng)狀態(tài)下的動(dòng)作[2-3],本文基于FSM思想進(jìn)行電梯控制算法建模,并利用力控組態(tài)軟件設(shè)計(jì)仿真模型進(jìn)行了驗(yàn)證。
電梯控制算法有先來先服務(wù)算法、掃描算法、最短尋找樓層時(shí)間優(yōu)先算法、LOOK算法、SATF算法等算法[4],其中掃描算法(SCAN)為方向優(yōu)先控制方式[5-6],在運(yùn)行過程中優(yōu)先響應(yīng)與電梯運(yùn)行方向相同的呼叫,與電梯運(yùn)行方向相同的呼叫在一次上行或下行的過程中完成,較好的解決了電梯頻繁移動(dòng)問題,效率較高,適合樓層不高單個(gè)電梯的控制方式[7]。本文以4層電梯為例,采用FSM為方向優(yōu)先控制方式的掃描算法建模。
根據(jù)電梯工作情況,把電梯狀態(tài)分為待機(jī)狀態(tài)、運(yùn)行狀態(tài)、開門狀態(tài)和關(guān)門狀態(tài)4個(gè)狀態(tài),運(yùn)行狀態(tài)指向上或向下的運(yùn)行狀態(tài),其狀態(tài)轉(zhuǎn)換過程如圖1所示;圖中最遠(yuǎn)端呼叫層,是指運(yùn)行方向上最遠(yuǎn)的呼叫層,例如圖2,時(shí)間秩序?yàn)閠1~t13,圖中[t4,t10]表示第2層在t4時(shí)刻和t10時(shí)刻開門,i5-Δt表i5時(shí)刻前,設(shè)電梯在1層待機(jī),t1時(shí)刻2層按下向上呼叫,電梯i1時(shí)刻向上運(yùn)行至i4時(shí)刻到達(dá)2層,期間t2時(shí)刻,2層按下向下的呼叫,t2時(shí)刻最遠(yuǎn)端呼叫層為第2層,t3時(shí)刻,4層按下向下呼叫,t3時(shí)刻第4層就為向上最遠(yuǎn)端的呼叫層,到達(dá)2層后開門并清除本層向上呼叫標(biāo)志,用戶入梯按下至3層按鈕,t5時(shí)刻關(guān)門向上運(yùn)行,至第3層開門清除3層呼叫標(biāo)志,關(guān)門后至4層,第4層進(jìn)來的人呼叫到第1層,清除向下的呼叫信號(hào)電梯反向向下運(yùn)行,3層無呼叫,3層不停站,t10至2層,開門后清除t2第2層向下的呼叫標(biāo)志,電梯關(guān)門至1層,開關(guān)門并清除呼叫標(biāo)志,運(yùn)行過程中只為同向呼叫層或最遠(yuǎn)端呼叫層停站并開門和關(guān)門。
圖1 電梯工作狀態(tài)圖Fig.1 Elevator working state diagram
圖2 電梯工作過程示例圖Fig.2 Example diagram of elevator working process
狀態(tài)觸發(fā)條件(Trigger condition,Tr)及執(zhí)行動(dòng)作(Perform actions,Pe)如表1所示。其中“—”表無條件或無動(dòng)作,不符合停站條件指:未平層,或不是內(nèi)呼叫層,或該層無呼叫,或非同向外呼,或非最遠(yuǎn)端呼叫層;停站條件指:平層,該層有同向外部呼叫,或該層為內(nèi)呼叫層,或?yàn)樽钸h(yuǎn)端呼叫層。
表1 狀態(tài)觸發(fā)條件及執(zhí)行動(dòng)作表Tab.1 State trigger condition and execution action table
力控組態(tài)軟件提供了大量的圖形對(duì)象、控件及位圖,以及易于上手的控制腳本[8],其最大的特點(diǎn)是能以靈活多樣的“組態(tài)方式”進(jìn)行系統(tǒng)集成,并提供良好的用戶開發(fā)界面和簡(jiǎn)潔的工程實(shí)踐方法[9-10]。為驗(yàn)證并形象展示算法,利用力控組態(tài)軟件設(shè)計(jì)仿真模型進(jìn)行驗(yàn)證。
利用力控組態(tài)軟件中的各種圖像和動(dòng)畫逼真展現(xiàn)電梯工作過程,選擇圖形模擬內(nèi)外呼叫按鈕、電梯廂門、各層層門,定義數(shù)據(jù)變量模擬電梯各種參數(shù)的變化,并將這些變量與對(duì)應(yīng)圖形連接,當(dāng)控制程序運(yùn)行時(shí)就可以形象展示和驗(yàn)證算法,4層電梯仿真界面如圖3所示。
圖3 電梯仿真界面Fig.3 Elevator simulation interface
2.2.1 數(shù)組保存、處理呼叫信息
用數(shù)組保存、處理呼叫信息,數(shù)組有序與樓層有序?qū)?yīng),用4個(gè)數(shù)組保存外呼上、外呼下、樓層內(nèi)呼、綜合(內(nèi)外)呼叫,層號(hào)對(duì)應(yīng)數(shù)組下標(biāo)號(hào)的個(gè)位,按下呼叫,對(duì)應(yīng)數(shù)組位為1,否則為0,其中1層沒有外呼下,為了統(tǒng)一處理,其對(duì)應(yīng)元素置常數(shù)0,4層外呼上置0,綜合呼叫為外呼上、外呼下、樓層內(nèi)呼三者進(jìn)行邏輯“或運(yùn)算”,詳見表2;其他參數(shù)用變量模擬。
表2 呼叫與對(duì)應(yīng)數(shù)組元素映射表Tab.2 Call and corresponding array element mapping table
設(shè)所在樓層整形變量為flr,取值范圍1~4,綜合呼叫數(shù)組4個(gè)元素為zh[41]~zh[44],求兩個(gè)方向上最遠(yuǎn)端呼叫層,向下為minf,向上為maxf的函數(shù)如下:
利用數(shù)組可以方便提取呼叫信息,進(jìn)而方便控制電梯運(yùn)行。
2.2.2 主流程圖、待機(jī)狀態(tài)及運(yùn)行狀態(tài)流程圖
FSM算法采用switch語(yǔ)句現(xiàn)實(shí),switch開關(guān)語(yǔ)句專門處理多路分支(對(duì)應(yīng)多個(gè)狀態(tài))的情形,能使使程序變得簡(jiǎn)潔,主流程圖如圖4所示,Pe表執(zhí)行動(dòng)作(Perform actions);待機(jī)狀態(tài)流程圖如圖5所示,主要等待呼叫信息及確定運(yùn)行方向;運(yùn)行狀態(tài)流程圖如圖6所示,主要執(zhí)行上升與下降操作,并在平層時(shí)判斷是否滿足停站條件,滿足轉(zhuǎn)開門狀態(tài),停站條件:該層有同向外部呼叫或該層為內(nèi)呼叫層或?yàn)樽钸h(yuǎn)端呼叫層。
圖4 四層電梯控制主流程Fig.4 Four floor elevator control main flow
圖5 待機(jī)狀態(tài)流程圖Fig.5 Flow chart of standby state
圖6 運(yùn)行狀態(tài)流程圖Fig.6 Flow chart of running state
2.2.3 開門狀態(tài)及關(guān)門狀態(tài)流程圖
開門狀態(tài)流程圖如圖7所示,主要重先定向及打開廂門和對(duì)應(yīng)層門,開門前重先定向,為了提示乘客登梯,比如內(nèi)呼有人請(qǐng)求到3層,電梯從2層到3層運(yùn)行途中,3層有人按外呼向下請(qǐng)求,其它層沒有呼叫,電梯到3層時(shí)停站,開門前重先定向,原來上升就改為向下,以提示乘客登梯;關(guān)門狀態(tài)流程圖如圖8所示,主要響應(yīng)開門和關(guān)門請(qǐng)求,若沒有開門和關(guān)門請(qǐng)求電梯延時(shí)一段時(shí)間自動(dòng)關(guān)門,關(guān)門后若有同向它層呼叫,直接轉(zhuǎn)運(yùn)行狀態(tài),關(guān)門后若沒有同向它層呼叫,延時(shí)一段時(shí)間,等待用戶按下內(nèi)呼請(qǐng)求,把用戶送至欲往樓層,若延時(shí)時(shí)間到,沒有同向它層呼叫,轉(zhuǎn)待機(jī)狀態(tài)。開門和關(guān)門為互斥關(guān)系,不能同時(shí)有效。
圖8 關(guān)門狀態(tài)流程圖Fig.8 Flow chart of closing state
用有限狀態(tài)機(jī)(FSM)思想設(shè)計(jì)了一種四層電梯控制算法模型,并利用力控組態(tài)軟件對(duì)所設(shè)計(jì)的模型進(jìn)行了仿真驗(yàn)證;并給出了詳細(xì)的模型和流程圖,特別是開門和關(guān)門控制過程。本文的研究工作,對(duì)于改善以往學(xué)生設(shè)計(jì)電梯控制算法時(shí),往往無處參考開門和關(guān)門控制流程的不足,具有一定的實(shí)際應(yīng)用價(jià)值。