馬殷元,廖 理,柴 獲
(蘭州交通大學(xué) 機(jī)電技術(shù)研究所,甘肅 蘭州730070)
近來,電梯發(fā)生故障造成傷亡的事件多次發(fā)生,其中一種情況是某些機(jī)電部件在使用中突然失效,且沒有被及時(shí)發(fā)現(xiàn),電梯帶病運(yùn)行,控制系統(tǒng)誤動(dòng)作導(dǎo)致。以某小型6層6站曳引式貨運(yùn)電梯系統(tǒng)為例,其具有類似一般客運(yùn)電梯的基本功能。系統(tǒng)采用S7-200系列PLC為控制器,用變頻器驅(qū)動(dòng)曳引電機(jī),廳外配置了上下召喚按鈕和目的層按鈕(與普通客梯轎廂內(nèi)目的層按鈕不同),每層均配置了一個(gè)行程開關(guān)作為層定位檢測輸入傳感器。系統(tǒng)投入初期功能完好,但運(yùn)行一段時(shí)間后發(fā)生了轎廂運(yùn)行至目標(biāo)樓層的上一層時(shí)突然反向下降運(yùn)行,而后下降到目標(biāo)樓層的下一層時(shí)突然反向上升運(yùn)行,無法自動(dòng)停止的情況。人工強(qiáng)行急停斷電才使電梯停止運(yùn)行。檢查發(fā)現(xiàn)目標(biāo)樓層的層定位行程開關(guān)失效,修復(fù)該開關(guān)后系統(tǒng)恢復(fù)正常運(yùn)行。電梯轎廂突然反向運(yùn)行將對曳引機(jī)構(gòu)的電機(jī)、齒輪變速機(jī)構(gòu)、曳引輪、鋼索、轎廂懸掛等零部件有很大沖擊載荷。該電梯控制系統(tǒng)存在層定位傳感器失效導(dǎo)致系統(tǒng)誤動(dòng)作的隱患,消除該隱患可提高系統(tǒng)的安全性。
除了采用高品質(zhì)零部件、加強(qiáng)對電梯的檢修維護(hù)工作等措施,還應(yīng)該在控制軟件設(shè)計(jì)實(shí)現(xiàn)中考慮到零部件失效等情況,避免零部件失效導(dǎo)致控制系統(tǒng)誤動(dòng)作而引發(fā)安全事故。即通過改進(jìn)電梯控制軟件的故障安全性來提高電梯的安全性。一些文獻(xiàn)提出通過增加新的系統(tǒng)與原有系統(tǒng)并行運(yùn)行來提高系統(tǒng)安全性,如遠(yuǎn)程監(jiān)控技術(shù)、故障診斷技術(shù)、專家系統(tǒng)等[1-5]。文獻(xiàn)[6,7]設(shè)計(jì)了電梯控制軟件流程圖,但沒有涉及對某些關(guān)鍵零部件失效狀態(tài)的自動(dòng)監(jiān)測以及相應(yīng)的故障安全設(shè)計(jì)。
針對軟件的安全性,目前還沒有一套準(zhǔn)確的定量評估方法,必須在整個(gè)軟件生命周期中實(shí)施安全性保障工作[8],文獻(xiàn)[8]在結(jié)合具體案例分析并提出具體軟件解決思路方面尚未涉及。
該電梯系統(tǒng)控制軟件使用梯形圖編寫,其原有主程序如圖1所示。為了找到突然反向問題的控制程序隱患,采用了反向回溯的思路,即從電梯轎廂曳引電機(jī)正反轉(zhuǎn)控制開始逐步分析。
圖1 電梯系統(tǒng)控制主程序
電梯(曳引電機(jī))正反轉(zhuǎn)控制輸出為Q3.1,在子程序“升降”的網(wǎng)絡(luò)6中Q3.1輸出控制曳引電機(jī)變頻器的正反轉(zhuǎn),控制程序梯形圖如圖2所示。
“升降”子程序的網(wǎng)絡(luò)2 如圖3 所示,其實(shí)現(xiàn)了 “正轉(zhuǎn)”和 “反轉(zhuǎn)”控制邏輯的綜合。
從圖3可見,“正轉(zhuǎn)”和 “反轉(zhuǎn)”控制邏輯綜合中 “上行使能”和 “下降使能”變量是系統(tǒng)正常運(yùn)行狀態(tài)下影響電梯正反轉(zhuǎn)的兩個(gè)關(guān)鍵變量??刂栖浖映绦?“上升邏輯”和 “下降邏輯”中對上述兩個(gè)變量進(jìn)行了賦值操作?!吧闲惺鼓堋弊兞繌?fù)位和 “下降使能”置位在子程序 “上升邏輯”中的語句如圖4所示。圖4程序相對應(yīng)的 “上行使能”變量復(fù)位和 “下降使能”變量置位程序段在子程序 “下降邏輯”中。
圖2 電梯正反轉(zhuǎn)控制輸出梯形圖程序
圖3 電機(jī)正反轉(zhuǎn)控制邏輯綜合梯形圖程序
圖4 對 “上行使能”變量賦值梯形
根據(jù)圖4所示的程序邏輯和主程序網(wǎng)絡(luò)2的第三行控制邏輯可見,在子程序 “上升邏輯”中復(fù)位了變量 “上行使能”導(dǎo)致子程序 “上升邏輯”在下一個(gè)掃描周期不再運(yùn)行。同時(shí),由于變量 “上行使能”的復(fù)位和 “下降使能”的置位導(dǎo)致子程序 “升降”中網(wǎng)絡(luò)1的控制邏輯復(fù)位了變量 “正轉(zhuǎn)”并置位了變量 “反轉(zhuǎn)”。
圖4中網(wǎng)絡(luò)9的控制邏輯在電梯控制中一般被稱為定向操作或定向算法,因?yàn)樵摬僮鳑Q定了電梯轎廂的運(yùn)行方向趨勢。根據(jù)圖4網(wǎng)絡(luò)9,電梯結(jié)束上行趨勢、變?yōu)橄滦汹厔葸\(yùn)行的條件是變量 “最終目標(biāo)樓層”小于變量 “當(dāng)前樓層”并且標(biāo)志位 “門已關(guān)標(biāo)志位”為1。在電梯運(yùn)行中,最終目標(biāo)樓層是電梯趨勢方向上最遠(yuǎn)的召喚樓層或目標(biāo)樓層,處于上行趨勢時(shí)為召喚和運(yùn)行目標(biāo)樓層中的最高樓層,下降趨勢時(shí)為其中的最低樓層,最終目標(biāo)樓層通過實(shí)時(shí)搜索得到。變量 “當(dāng)前樓層”在子程序 “當(dāng)前層更新”中被賦值,其中一段程序如圖5所示。控制系統(tǒng)通過檢測各層布置的樓層限位傳感器而得到電梯運(yùn)行的當(dāng)前樓層。在樓層限位傳感器有效時(shí),系統(tǒng)可以正常工作。當(dāng)傳感器當(dāng) “最終目標(biāo)樓層”的傳感器失效時(shí),電梯會(huì)越過最終目標(biāo)樓層而到達(dá)更高一層時(shí)(假設(shè)目標(biāo)樓層不是電梯最頂層),將使得 “最終目標(biāo)樓層”小于 “當(dāng)前樓層”,這導(dǎo)致圖4所示的控制邏輯被執(zhí)行,并導(dǎo)致電梯表現(xiàn)出瞬間反向運(yùn)行狀態(tài)。
圖5 對 “當(dāng)前樓層”變量賦值梯形
容錯(cuò)控制的理論和方法可為解決該控制系統(tǒng)所存問題提供一定思路。常見的容錯(cuò)控制系統(tǒng)大致可分為兩類:主動(dòng)容錯(cuò)系統(tǒng)和被動(dòng)容錯(cuò)系統(tǒng),它們的控制策略實(shí)施一般依賴于被控系統(tǒng)的定量、半定量或定性模型等參數(shù)。在被動(dòng)容錯(cuò)控制系統(tǒng)設(shè)計(jì)之初,將系統(tǒng)有可能發(fā)生的故障情況以故障樹等方法列舉,并作為先驗(yàn)知識而考慮到控制策略中,故其不需要控制策略在線實(shí)時(shí)獲知故障信息,在其具體實(shí)現(xiàn)時(shí)大多采用魯棒控制技術(shù)等方案。一個(gè)系統(tǒng)具有容錯(cuò)能力的條件是系統(tǒng)中相應(yīng)部件存在一定冗余,如需要冗余執(zhí)行器來實(shí)現(xiàn)執(zhí)行器的容錯(cuò)、需要傳感器測量的冗余來實(shí)現(xiàn)傳感器的容錯(cuò)。硬件上的冗余必將增加系統(tǒng)成本且對既有硬件設(shè)備(設(shè)備升級改造等情況)的改動(dòng)不便于工程實(shí)施。對于本系統(tǒng),可以通過在軟件中增加冗余控制邏輯來改進(jìn)其安全性,避免電梯運(yùn)行中突然反向等問題再次發(fā)生。一種對控制軟件直觀的改正是在子程序 “當(dāng)前層更新”中增加監(jiān)視當(dāng)前層超越下一(目標(biāo))停層程序,詳見圖6。另外,如采用更加合理的軟件架構(gòu)模式亦可減少軟件缺陷和隱患[9]。
圖6 監(jiān)視當(dāng)前層超越下一停層梯形
人們在長期的軟件開發(fā)實(shí)踐中,總結(jié)提煉了一些行之有效的 “設(shè)計(jì)模式”[10,11]。可借助在Bruce Powel Douglass等人的極力推崇下的有關(guān)實(shí)時(shí)設(shè)計(jì)模式[12]來設(shè)計(jì)有安全緊要(safety-critical)和高可靠性(high-reliability)等重要需求的控制軟件,如安全執(zhí)行模式、心智檢查模式、同質(zhì)冗余模式和異質(zhì)冗余模式等。結(jié)合本案例,總結(jié)提出了3種可改善系統(tǒng)安全性的模式方法。
該方法是一種非重量級冗余安全模式,適合于一些類似于本系統(tǒng)的瞬態(tài)故障,花費(fèi)少量的系統(tǒng)掃描時(shí)間(只需要增加一個(gè)通道來處理傳感和執(zhí)行)而不會(huì)大幅度減少原有系統(tǒng)的實(shí)時(shí)等性能(非常適合規(guī)避控制器瓶頸問題)。它從數(shù)據(jù)傳輸?shù)慕嵌?,?“數(shù)據(jù)傳輸”模塊中增加數(shù)據(jù)確認(rèn),從而發(fā)現(xiàn)數(shù)據(jù)的錯(cuò)誤,避免錯(cuò)誤數(shù)據(jù)導(dǎo)致系統(tǒng)誤動(dòng)。
就本文所述的存在安全隱患問題的系統(tǒng)的數(shù)據(jù)傳輸?shù)谋Wo(hù)可從兩方面實(shí)施保護(hù)。一方面是傳感器失效導(dǎo)致檢測(輸入)數(shù)據(jù)跳變(目標(biāo)樓層傳感器失效時(shí)圖5 程序中變量“當(dāng)前樓層”將跳過傳感器失效的目標(biāo)樓層)的檢測和保護(hù);另一方面是控制算法運(yùn)算(輸出)數(shù)據(jù)(如圖2所示的程序中的電梯方向輸出控制變量“電梯正反轉(zhuǎn)”)跳變(曳引電機(jī)從正轉(zhuǎn)狀態(tài)不經(jīng)由停止?fàn)顟B(tài)而直接跳變到反轉(zhuǎn)狀態(tài),反之亦然)的檢測和保護(hù)。
該方法提供系統(tǒng)故障和隨機(jī)故障保護(hù)的同時(shí)可使控制邏輯進(jìn)入安全失敗狀態(tài)。其在原生數(shù)據(jù)和輸出執(zhí)行之間增加監(jiān)視執(zhí)行通道對象來監(jiān)護(hù)實(shí)際輸出,當(dāng)發(fā)現(xiàn)實(shí)際輸出超出預(yù)期則發(fā)出停機(jī)信號或者進(jìn)入其它形式的安全失敗狀態(tài)。
在實(shí)例化該模式方法時(shí)需要已知一個(gè)或多個(gè)安全失敗狀態(tài),這一點(diǎn)與被動(dòng)容錯(cuò)控制系統(tǒng)設(shè)計(jì)時(shí)需要考慮系統(tǒng)可能發(fā)生的故障情況的思路相似。監(jiān)視通道的輸入信息一般來自對系統(tǒng)輸出的檢測,這使得系統(tǒng)構(gòu)成一個(gè)信息流的閉環(huán)反饋結(jié)構(gòu)。由于該閉環(huán)檢測的是最終的輸出環(huán)節(jié),從而錯(cuò)誤檢測系統(tǒng)的響應(yīng)速度稍有些滯后,也就是有了結(jié)果才會(huì)動(dòng)作。當(dāng)監(jiān)視通道的輸入退化到來自控制器內(nèi)部的輸出變量時(shí),該模式與保護(hù)式單通道模式中對輸出數(shù)據(jù)錯(cuò)誤的檢測和保護(hù)相似。但此時(shí)控制系統(tǒng)響應(yīng)速度將有所提高,但不能發(fā)現(xiàn)閉環(huán)外部真實(shí)系統(tǒng)輸出故障情況。
該方法通過增加一個(gè)看門狗構(gòu)件來注視另一個(gè)構(gòu)件的運(yùn)行狀態(tài),在實(shí)例化時(shí)一般通過計(jì)算時(shí)間基或計(jì)算步驟按預(yù)定義的方式運(yùn)行。就本案例所述問題而言,電梯運(yùn)行中每個(gè)步驟的運(yùn)行時(shí)間是有限的并且是可以預(yù)測的。如,電梯從某一層運(yùn)動(dòng)到另外一層的時(shí)間必然在一個(gè)固定的可預(yù)見的時(shí)間范圍內(nèi)。若發(fā)現(xiàn)超出這個(gè)時(shí)間范圍則說明系統(tǒng)某個(gè)方面發(fā)生了故障。
經(jīng)過多次實(shí)測統(tǒng)計(jì),本系統(tǒng)正常運(yùn)行時(shí)電梯從某一層運(yùn)動(dòng)到相鄰層的最長時(shí)間(包括啟停的加、減速時(shí)間)為4600ms,最短時(shí)間為3900ms,電梯從某一層運(yùn)行到間隔的另一層所花費(fèi)的最短時(shí)間(不包括啟停的加、減速時(shí)間)為5800ms。為此可在控制程序中增加一個(gè)看門狗定時(shí)器構(gòu)件來監(jiān)視傳感器失效故障??撮T狗定時(shí)器報(bào)警時(shí)限設(shè)為4900ms??撮T狗在電梯啟動(dòng)上升或下降時(shí)啟動(dòng),在 “當(dāng)前層更新”中某層樓層限位開關(guān)閉合時(shí)復(fù)位。另外,已知了相鄰層之間運(yùn)行的最短時(shí)間為3900ms,因而可以采用有時(shí)間范圍的看門狗模式,檢測電梯的超速和過慢等失速狀態(tài)。
保護(hù)式單通道模式方法從數(shù)據(jù)保護(hù)的角度偵測系統(tǒng)輸入數(shù)據(jù)、輸出數(shù)據(jù)或中間數(shù)據(jù)的異常,從而及時(shí)發(fā)現(xiàn)系統(tǒng)部件的問題。該方法是一種通過內(nèi)部檢驗(yàn)來避免錯(cuò)誤的方法,但其檢驗(yàn)閉環(huán)結(jié)構(gòu)的檢測對象中不包含真實(shí)的輸出,因而無法檢測到執(zhí)行器的異?;蚬收?。而監(jiān)視器-執(zhí)行器模式方法包含了對實(shí)際輸出的檢測,是一種存在于控制邏輯外部檢驗(yàn)而避免錯(cuò)誤的方法,故其可以檢測到執(zhí)行器的異?;蚬收蠣顟B(tài)。
上述方法都需要事先知道系統(tǒng)所能發(fā)生的故障情況的條件,然后根據(jù)這些條件判斷故障,屬于被動(dòng)容錯(cuò)控制的范疇。不依賴于先驗(yàn)條件的看門狗模式方法是基于時(shí)間的檢驗(yàn)方法,可以檢測到傳感器和執(zhí)行器的運(yùn)行異?;蚬收?。
本文結(jié)合某貨運(yùn)電梯的故障現(xiàn)象,分析了該電梯控制軟件在位置傳感器失效時(shí)存在的安全隱患問題。在比較了以軟件容錯(cuò)方法和增加硬件冗余兩種方案的基礎(chǔ)上,運(yùn)用了軟件方法避免發(fā)生安全問題的思路。結(jié)合相關(guān)實(shí)時(shí)設(shè)計(jì)模式,總結(jié)出3種可以改善系統(tǒng)安全性的模式方法。先后在電梯模型和所述貨運(yùn)電梯上對提出的3種軟件改進(jìn)方法進(jìn)行了驗(yàn)證,提高了所述貨運(yùn)電梯的安全性。所述方法可為提高類似控制軟件質(zhì)量提供參考和指導(dǎo)。
進(jìn)一步研究可以著重以下兩個(gè)方面:①借鑒傳感器網(wǎng)絡(luò)部署及其數(shù)據(jù)融合技術(shù)[13],研究其它的定位方法[14],在電梯應(yīng)用中布置異類節(jié)點(diǎn)避免單一傳感器失效引起的安全事故;②對電梯所用傳感器的失效評價(jià)及其壽命預(yù)估研究,預(yù)測傳感器失效時(shí)間節(jié)點(diǎn)并以此主動(dòng)提醒需要維護(hù)電梯,打破目前電梯定期維護(hù)模式,以此提高維護(hù)效率和質(zhì)量。
[1]ZONG Qun,LI Guangyu,GUO Meng.Design of diagnostic expert system for elevator system based on FTA [J].Control Engineering of China,2013,20 (2):305-308 (in Chinese).[宗群,李光宇,郭萌.基于故障樹的電梯故障診斷專家系統(tǒng)設(shè)計(jì) [J].控制工程,2013,20 (2):305-308.]
[2]LIU Runli,BAI Jinping,TANG Ping.Design of remote elevator monitoring system [J].Control Engineering of China,2011,18 (S1):118-120 (in Chinese). [劉潤莉,白金平,唐平.電梯遠(yuǎn)程監(jiān)控系統(tǒng)的設(shè)計(jì) [J].控制工程,2011,18(S1):118-120.]
[3]Yao Zehua,Wan Jianru,Li Xiangwei,et al.The design of elevator failure monitoring system [J].Lecture Notes in Electrical Engineering,2011,122:437-442.
[4]Hiller Benjamin,Klug Torsten,Tuchscherer Andreas.An exact reoptimization algorithm for the scheduling of elevator groups [J].Flexible Services and Manufacturing Journal,2013:1-24.
[5]Abbasi Hamza Ijaz,Siddiqui Abdul Jabbar.Implementation of smart elevator system based on wireless multi-h(huán)op AdHoc sensor networks [C]//IEEE 2nd International Conference on Networked Embedded Systems for Enterprise Applications,2011:1-7.
[6]XU Jinna.Four elevator system development and design [J].Measurement & Control Technology,2010,39 (6):49-116(in Chinese).[許瑾娜.四層電梯系統(tǒng)的開發(fā)與設(shè)計(jì) [J].測控技術(shù),2010,39 (6):49-116.]
[7]MA Yan,XU Shuhua,LIU Huabo.The mult-ilevel design of elevator control system expermient based on S7-200and HMI[J].Research and Exploration in Laboratory,2008,27 (8):210-213 (in Chinese).[馬艷,徐淑華,劉華波.基于S7-200和觸摸屏的電梯控制實(shí)驗(yàn)項(xiàng)目的分層設(shè)計(jì) [J].實(shí)驗(yàn)室研究與探索,2008,27 (8):210-213.
[8]WANG Jinbo,ZHAO Guangheng,CHEN Weiwei.Research on software safety assurance of safety-critical software [J].Computer Engineering and Design,2008,29 (5):1072-1075(in Chinese).[王金波,趙光恒,陳蔚薇.安全關(guān)鍵軟件的安全性保障工作研究 [J].計(jì)算機(jī)工程與設(shè)計(jì),2008,29 (5):1072-1075.]
[9]MA Yinyuan,YAO Chuang.Elevator control modeling based on statecharts and its plc implementation [J].Computer Engineering,2009,35 (16):221-223 (in Chinese). [馬殷元,姚闖.基于狀態(tài)圖的電梯控制建模及其PLC 實(shí)現(xiàn) [J].計(jì)算機(jī)工程,2009,35 (16):221-223.]
[10]LIU Gang,SHAO Zhiqing,XIAO Lizhong,et al.Design pattern for embedded communication software development[J].Computer Engineering and Deaign,2007,28 (6):1368-1371 (in Chinese). [劉剛,邵志清,肖立中,等.嵌入式通信軟件開發(fā)中的設(shè)計(jì)模式 [J].計(jì)算機(jī)工程與設(shè)計(jì),2007,28 (6):1368-1371.]
[11]XIAO Lei,XU Hong.Research on selection of design patterns based on process [J].Computer Engineering and Deaign,2008,29 (21):5479-5497 (in Chinese). [肖磊,徐紅.基于過程的設(shè)計(jì)模式選擇研究 [J].計(jì)算機(jī)工程與設(shè)計(jì),2008,29 (21):5479-5497.]
[12]Bruce Powel Douglass.Design patterns for embedded systems in C [M].LIU Xudong,transl.Peaking:China Machine Press,2012 (in Chinese). [Bruce Powel Douglass.C 嵌入式編程設(shè)計(jì)模式 [M].劉旭東,譯.北京:機(jī)械工業(yè)出版社,2012.]
[13]BING Zhigang,LIU Jingtai,WENG Songyi,et al.Survey of deployment issue of sensor networks [J].Control Engineering of China,2009,16 (5):513-516 (in Chinese).[邴志剛,劉景泰,翁松怡,等.傳感器網(wǎng)絡(luò)部署問題研究現(xiàn)狀[J].控制工程,2009,16 (5):513-516.]
[14]Onat Ahmet,Gurbuz Cagri,Markon Sandor.A new active position sensing method for ropeless elevator[J].Mechatronics,2013,23 (2):182-189.