李小康 范延濱
摘 要: 針對電梯老齡化導(dǎo)致的電梯安全隱患問題,設(shè)計了一款電梯故障信息采集器。采集器基于LM3S6432處理器和RT?Thread操作系統(tǒng)設(shè)計,詳細分析了系統(tǒng)的硬件設(shè)計和軟件設(shè)計。軟件設(shè)計包括傳感器信號采集、電梯主狀態(tài)生成、電梯故障判別和信息傳輸幾個模塊。經(jīng)過現(xiàn)場測試,該設(shè)備運行良好。
關(guān)鍵詞: 電梯故障; 電梯遠程監(jiān)控; lwIP; LM3S6432; RT?Thread
中圖分類號: TN710?34; TP274+.2 文獻標識碼: A 文章編號: 1004?373X(2014)05?0110?04
0 引 言
電梯是高層建筑必不可少的組成部分,是與人們生活密切相關(guān)的垂直交通工具,然而,電梯老化的數(shù)量在逐年增加。大量缺乏安全保養(yǎng)的電梯每天不停的運轉(zhuǎn),存在極大的安全隱患,電梯故障造成的事故呈高發(fā)態(tài)勢[1]。在這種背景下,國家質(zhì)量監(jiān)督檢驗總局與2009年發(fā)布了兩個新標準《電梯遠程報警系統(tǒng)》[2]及《電梯、自動扶梯和自動人行道數(shù)據(jù)監(jiān)視和記錄規(guī)范》[3],全國各地利用物聯(lián)網(wǎng)技術(shù)建設(shè)電梯遠程監(jiān)控系統(tǒng)[4],通過為電梯安裝多種傳感器和數(shù)據(jù)采集終端設(shè)備,實現(xiàn)對電梯運行狀態(tài)的實時監(jiān)控和統(tǒng)計分析。
電梯遠程監(jiān)控系統(tǒng)中都有一個專門用來采集電梯信息的電梯故障采集器。本文基于TI公司的LM3S6432處理器和RT?Thread[5]實時系統(tǒng),設(shè)計了一個電梯故障信息采集器。
1 電梯遠程監(jiān)控系統(tǒng)
圖1給出了一個電梯遠程監(jiān)控系統(tǒng)的結(jié)構(gòu)框圖。數(shù)據(jù)庫服務(wù)器安裝數(shù)據(jù)庫管理軟件,用來存儲、處理電梯故障信息。每個轎廂安裝一臺主機,故障采集器、信息發(fā)布面板、攝像頭、麥克風(fēng)、揚聲器都連接到主機上。主機實現(xiàn)信息發(fā)布、視頻監(jiān)控、語音通信、本地存儲各種數(shù)據(jù)信息,并負責(zé)將故障采集器采集到的數(shù)據(jù)通過3G網(wǎng)絡(luò)傳輸?shù)竭h程數(shù)據(jù)庫服務(wù)器。管理終端可以通過私有網(wǎng)絡(luò)連接到數(shù)據(jù)庫服務(wù)器,進行系統(tǒng)監(jiān)控和管理。
2 功能分析
電梯故障信息采集器通過各種傳感器記錄電梯發(fā)生故障時轎廂和控制系統(tǒng)的各種運行和故障狀態(tài),并通過以太網(wǎng)口發(fā)送到轎廂主機。上下平層傳感器可以用來判斷電梯的上行、下行和停止狀態(tài),結(jié)合基站信號計算電梯所在樓層。門開關(guān)傳感器可以檢測門的開關(guān)狀態(tài)。紅外人體傳感器可以檢測轎廂內(nèi)是否有人。上極限和下極限傳感器用來判別沖頂和蹲底故障。加速度傳感器可以采集電梯的加速度值,并根據(jù)加速度計算出速度值,在電梯加速度或者速度超常時給出報警。面板上的LED指示燈指示當前電梯運行狀態(tài)。提供RS 485通信功能以連接電梯維保設(shè)備,使用以太網(wǎng)接口與轎廂主機進行通信。
3 硬件設(shè)計
系統(tǒng)的整體硬件框圖如圖2所示。核心MCU使用的是集成ARM Cortex?M3內(nèi)核的LM3S6432,它具有50 MHz性能和96K快速單周期片上閃存及32K SRAM內(nèi)存,并集成了片上10/100 MB以太網(wǎng)MAC和PHY。
檢測的信號都是開關(guān)量信號,通過光耦隔離可以保護核心MCU電路和提高電路抗干擾能力。因為驅(qū)動LED需要較大電流,LED不是直接連接到MCU的GPIO引腳,而是在中間添加了LED驅(qū)動電路。LM3S6432的IO口有限,LED驅(qū)動電路采用兩片74HCT245級聯(lián)實現(xiàn),并鏈接到LM3S6432的SSI接口。分別采用MAX3232和MAX3485芯片實現(xiàn)TTL電平和RS 232C、 RS 485電平的轉(zhuǎn)換。系統(tǒng)采用12 V開關(guān)穩(wěn)壓電源供電,在板內(nèi)使用開關(guān)型集成穩(wěn)壓芯片LM2596S?5.0將12 V電源轉(zhuǎn)換成5.0 V,再使用低壓差線性穩(wěn)壓器LM1117將5.0 V轉(zhuǎn)換成3.3 V。
4 軟件設(shè)計
RT?Thread實時操作系統(tǒng)是一款由國內(nèi)RT?Thread工作室開發(fā)的免費、開源實時操作系統(tǒng)。它實現(xiàn)了在LM3S8962上的lwIP[6]的移植實現(xiàn),可以很容易的移植到LM3S6432處理器。
4.1 軟件總體框架
電梯故障采集器的軟件總體框架結(jié)構(gòu)如圖3所示。傳感器信號處理模塊和電梯主狀態(tài)生成模塊主要是通過中斷處理程序獲取各個傳感器信號的狀態(tài),并生成電梯主狀態(tài)。電梯故障判別模塊根據(jù)電梯的主狀態(tài),根據(jù)一定的判別方法,對電梯發(fā)生的故障進行判別。信息傳輸模塊的功能包括信息發(fā)送和信息接收兩個方面。
4.2 傳感器信號檢測
電梯故障采集器的傳感器信號根據(jù)信號特點和處理方式的不同可以按照表1進行分類。
對[Sk]累計求和即可以得到即時的速度值。因為加速度傳感器在初始化時存在一定的誤差,在計算積分時,會使得這個誤差累積,導(dǎo)致計算的速度值不準確。為減小累積誤差對速度計算帶來的影響,在平層判斷出電梯停止后,將計算的速度歸零。
4.3 電梯主狀態(tài)生成
所有的電梯狀態(tài)變化都會通過事件通知主線程。主線程完成的任務(wù)是修改電梯當前運行狀態(tài)和根據(jù)運行狀態(tài)判斷故障類型,并將故障信息和電梯運行狀態(tài)信息封裝成信息包,傳遞給通信線程。
主線程定義了一個事件main_event,在沒有信號需要處理時,主線程阻塞在事件main_event上。當任意一個事件發(fā)生,主線程被喚醒,對相應(yīng)的事件進行處理。
為實現(xiàn)程序的模塊化,每個事件對應(yīng)一個相應(yīng)的事件處理程序。在程序中定義了一個函數(shù)指針數(shù)組void (*event_handler[31])(void)以實現(xiàn)事件到相應(yīng)的事件處理程序的映射。每個事件處理函數(shù)的原型聲明為void xxx_handler(void)。數(shù)組中的每個元素對應(yīng)了一個事件如event_handler[0]對應(yīng)上極限有效事件,event_handler[1]對應(yīng)上極限無效事件。當任意一個事件發(fā)生時,主線程掃描main_event中的各個位,只要相應(yīng)的位變?yōu)?,就調(diào)用相應(yīng)的事件處理函數(shù)。
在程序中定義一個32位的變量main_stat用來存儲電梯主狀態(tài)。各個事件的處理函數(shù)的主要功能是更改LED狀態(tài)和main_stat變量的值。
4.4 故障判別
電梯主狀態(tài)只要發(fā)生變化,就調(diào)用故障判別模塊根據(jù)主狀態(tài)生成故障信息。故障采集器支持以下故障類型:沖頂:上極限傳感器信號有效;蹲底:下極限傳感器信號有效;非門區(qū)開門:轎廂在非門區(qū)開門;非門區(qū)停止:轎廂在非門區(qū)停止;運行時間超長:轎廂從離開一個平層到到達另一個平層的時間過長;困人:轎廂里面有人,但是經(jīng)過一段較長的時間沒有開門;加速度異常:加速度值過大;速度異常:速度值過大。
為了識別電梯發(fā)生的故障,在主程序中定義一個16位的current_errs變量,標志當前發(fā)生的故障,電梯故障判別就是根據(jù)main_stat變量對current_errs變量進行修改。current_errs中的每一位表示一個故障。
通信管理線程負責(zé)連接的建立,連接建立后,則啟動發(fā)送線程和接收線程。通信管理線程檢測到連接斷開,則停止發(fā)送線程和接收線程。
主線程在封裝好消息包后,通過消息隊列發(fā)送給發(fā)送線程。發(fā)送線程不斷等待消息隊列有新的數(shù)據(jù),如果消息隊列中有消息,則調(diào)用lwIP中的發(fā)送函數(shù),將消息發(fā)送出去。
接收線程則不斷等待網(wǎng)絡(luò)上有新的數(shù)據(jù),如果接收到數(shù)據(jù),就對數(shù)據(jù)包進行分析,如果是命令包,如設(shè)置加速度閾值、設(shè)置速度閾值等,則對相應(yīng)的變量進行修改。
5 系統(tǒng)測試
使用Qt開發(fā)了一個簡單的測試程序,對該設(shè)備測試。在仿真教學(xué)電梯中安裝了故障采集器和各種傳感器,用來模擬真實的電梯運行環(huán)境。圖6為測試程序界面。
進行的測試包括如下幾個方面:
(1) 通信功能測試:保證通信正常,可以建立TCP連接,當TCP連接掉線時,可以重新恢復(fù)連接。
(2) 故障識別功能測試:模擬各種電梯可能出現(xiàn)的運行故障,保證能夠正常識別出故障,并且將故障信息發(fā)送到主機。
(3) 電梯傳感器信號采集功能測試:當傳感器信號變化時,故障采集器將傳感器信號發(fā)送給主機,主機端可以實時顯示傳感器信號狀態(tài)。
(4) 參數(shù)設(shè)置功能測試:在主機端設(shè)置參數(shù)值,觀察故障采集器的參數(shù)是否改變。
6 結(jié) 語
本文使用LM3S6432處理器和RT?Thread實時系統(tǒng)設(shè)計了一款電梯故障信息采集器。按照硬件設(shè)計制板、調(diào)試發(fā)現(xiàn),系統(tǒng)硬件運行良好。RT?Thread操作系統(tǒng)具有豐富的功能,并且接口簡單,針對lwIP也進行了不少優(yōu)化,網(wǎng)絡(luò)性能較好。LM3S6432結(jié)合RT?Thread可以較好的實現(xiàn)系統(tǒng)功能。
參考文獻
[1] 國家質(zhì)量監(jiān)督檢驗檢疫總局.2009年全國特種設(shè)備安全狀況白皮書[S].北京:中國標準出版社,2009.
[2] 國家質(zhì)量監(jiān)督檢驗檢疫總局.GB/T 24475?2009電梯遠程報警系統(tǒng)[S].北京:中國標準出版社,2009.
[3] 國家質(zhì)量監(jiān)督檢驗檢疫總局.GB/T 24476?2009電梯、自動扶梯和自動人行道數(shù)據(jù)監(jiān)視和記錄規(guī)范[S].北京:中國標準出版社,2009.
[4] 宗群,宋鼎,王朝陽.電梯遠程監(jiān)控系統(tǒng)的研制[J].儀器儀表學(xué)報,2002,23(6):609?611.
[5] 邱祎.嵌入式實時操作系統(tǒng)RT?Thread的設(shè)計與實現(xiàn)[D].成都:電子科技大學(xué),2007.
[6] DUNKELS A. Design and implementation of the lwIP TCP/IP stack [EB/OL]. [2001?02?20]. http://images.wikia.com/mini6/images/0/0e/Lwip.pdf.
[7] 劉松國,韓樹新,李偉忠,等.電梯運行狀態(tài)監(jiān)測與故障遠程報警系統(tǒng)研究[J].自動化與儀表,2011,26(10):42?46.
[8] 茅衛(wèi)娟.電梯遠程監(jiān)控系統(tǒng)的設(shè)計與實現(xiàn)[D].上海:上海交通大學(xué),2004.
[9] 尹蘇東,薛季愛.一種新型電梯遠程監(jiān)測報警系統(tǒng)[J].起重運輸機械,2009(8):19?22.
[10] 任詩渡,呂嘉賓,陳則來.基于網(wǎng)絡(luò)通信的電梯遠程故障診斷系統(tǒng)[J].機電工程技術(shù),2009,38(1):57?59.
[11] 萬健如,陳超,孫洋建.采用雙串口單片機的電梯遠程監(jiān)控系統(tǒng)[J].計算機測量與控制,2006,14(7):900?901.
在程序中定義一個32位的變量main_stat用來存儲電梯主狀態(tài)。各個事件的處理函數(shù)的主要功能是更改LED狀態(tài)和main_stat變量的值。
4.4 故障判別
電梯主狀態(tài)只要發(fā)生變化,就調(diào)用故障判別模塊根據(jù)主狀態(tài)生成故障信息。故障采集器支持以下故障類型:沖頂:上極限傳感器信號有效;蹲底:下極限傳感器信號有效;非門區(qū)開門:轎廂在非門區(qū)開門;非門區(qū)停止:轎廂在非門區(qū)停止;運行時間超長:轎廂從離開一個平層到到達另一個平層的時間過長;困人:轎廂里面有人,但是經(jīng)過一段較長的時間沒有開門;加速度異常:加速度值過大;速度異常:速度值過大。
為了識別電梯發(fā)生的故障,在主程序中定義一個16位的current_errs變量,標志當前發(fā)生的故障,電梯故障判別就是根據(jù)main_stat變量對current_errs變量進行修改。current_errs中的每一位表示一個故障。
通信管理線程負責(zé)連接的建立,連接建立后,則啟動發(fā)送線程和接收線程。通信管理線程檢測到連接斷開,則停止發(fā)送線程和接收線程。
主線程在封裝好消息包后,通過消息隊列發(fā)送給發(fā)送線程。發(fā)送線程不斷等待消息隊列有新的數(shù)據(jù),如果消息隊列中有消息,則調(diào)用lwIP中的發(fā)送函數(shù),將消息發(fā)送出去。
接收線程則不斷等待網(wǎng)絡(luò)上有新的數(shù)據(jù),如果接收到數(shù)據(jù),就對數(shù)據(jù)包進行分析,如果是命令包,如設(shè)置加速度閾值、設(shè)置速度閾值等,則對相應(yīng)的變量進行修改。
5 系統(tǒng)測試
使用Qt開發(fā)了一個簡單的測試程序,對該設(shè)備測試。在仿真教學(xué)電梯中安裝了故障采集器和各種傳感器,用來模擬真實的電梯運行環(huán)境。圖6為測試程序界面。
進行的測試包括如下幾個方面:
(1) 通信功能測試:保證通信正常,可以建立TCP連接,當TCP連接掉線時,可以重新恢復(fù)連接。
(2) 故障識別功能測試:模擬各種電梯可能出現(xiàn)的運行故障,保證能夠正常識別出故障,并且將故障信息發(fā)送到主機。
(3) 電梯傳感器信號采集功能測試:當傳感器信號變化時,故障采集器將傳感器信號發(fā)送給主機,主機端可以實時顯示傳感器信號狀態(tài)。
(4) 參數(shù)設(shè)置功能測試:在主機端設(shè)置參數(shù)值,觀察故障采集器的參數(shù)是否改變。
6 結(jié) 語
本文使用LM3S6432處理器和RT?Thread實時系統(tǒng)設(shè)計了一款電梯故障信息采集器。按照硬件設(shè)計制板、調(diào)試發(fā)現(xiàn),系統(tǒng)硬件運行良好。RT?Thread操作系統(tǒng)具有豐富的功能,并且接口簡單,針對lwIP也進行了不少優(yōu)化,網(wǎng)絡(luò)性能較好。LM3S6432結(jié)合RT?Thread可以較好的實現(xiàn)系統(tǒng)功能。
參考文獻
[1] 國家質(zhì)量監(jiān)督檢驗檢疫總局.2009年全國特種設(shè)備安全狀況白皮書[S].北京:中國標準出版社,2009.
[2] 國家質(zhì)量監(jiān)督檢驗檢疫總局.GB/T 24475?2009電梯遠程報警系統(tǒng)[S].北京:中國標準出版社,2009.
[3] 國家質(zhì)量監(jiān)督檢驗檢疫總局.GB/T 24476?2009電梯、自動扶梯和自動人行道數(shù)據(jù)監(jiān)視和記錄規(guī)范[S].北京:中國標準出版社,2009.
[4] 宗群,宋鼎,王朝陽.電梯遠程監(jiān)控系統(tǒng)的研制[J].儀器儀表學(xué)報,2002,23(6):609?611.
[5] 邱祎.嵌入式實時操作系統(tǒng)RT?Thread的設(shè)計與實現(xiàn)[D].成都:電子科技大學(xué),2007.
[6] DUNKELS A. Design and implementation of the lwIP TCP/IP stack [EB/OL]. [2001?02?20]. http://images.wikia.com/mini6/images/0/0e/Lwip.pdf.
[7] 劉松國,韓樹新,李偉忠,等.電梯運行狀態(tài)監(jiān)測與故障遠程報警系統(tǒng)研究[J].自動化與儀表,2011,26(10):42?46.
[8] 茅衛(wèi)娟.電梯遠程監(jiān)控系統(tǒng)的設(shè)計與實現(xiàn)[D].上海:上海交通大學(xué),2004.
[9] 尹蘇東,薛季愛.一種新型電梯遠程監(jiān)測報警系統(tǒng)[J].起重運輸機械,2009(8):19?22.
[10] 任詩渡,呂嘉賓,陳則來.基于網(wǎng)絡(luò)通信的電梯遠程故障診斷系統(tǒng)[J].機電工程技術(shù),2009,38(1):57?59.
[11] 萬健如,陳超,孫洋建.采用雙串口單片機的電梯遠程監(jiān)控系統(tǒng)[J].計算機測量與控制,2006,14(7):900?901.
在程序中定義一個32位的變量main_stat用來存儲電梯主狀態(tài)。各個事件的處理函數(shù)的主要功能是更改LED狀態(tài)和main_stat變量的值。
4.4 故障判別
電梯主狀態(tài)只要發(fā)生變化,就調(diào)用故障判別模塊根據(jù)主狀態(tài)生成故障信息。故障采集器支持以下故障類型:沖頂:上極限傳感器信號有效;蹲底:下極限傳感器信號有效;非門區(qū)開門:轎廂在非門區(qū)開門;非門區(qū)停止:轎廂在非門區(qū)停止;運行時間超長:轎廂從離開一個平層到到達另一個平層的時間過長;困人:轎廂里面有人,但是經(jīng)過一段較長的時間沒有開門;加速度異常:加速度值過大;速度異常:速度值過大。
為了識別電梯發(fā)生的故障,在主程序中定義一個16位的current_errs變量,標志當前發(fā)生的故障,電梯故障判別就是根據(jù)main_stat變量對current_errs變量進行修改。current_errs中的每一位表示一個故障。
通信管理線程負責(zé)連接的建立,連接建立后,則啟動發(fā)送線程和接收線程。通信管理線程檢測到連接斷開,則停止發(fā)送線程和接收線程。
主線程在封裝好消息包后,通過消息隊列發(fā)送給發(fā)送線程。發(fā)送線程不斷等待消息隊列有新的數(shù)據(jù),如果消息隊列中有消息,則調(diào)用lwIP中的發(fā)送函數(shù),將消息發(fā)送出去。
接收線程則不斷等待網(wǎng)絡(luò)上有新的數(shù)據(jù),如果接收到數(shù)據(jù),就對數(shù)據(jù)包進行分析,如果是命令包,如設(shè)置加速度閾值、設(shè)置速度閾值等,則對相應(yīng)的變量進行修改。
5 系統(tǒng)測試
使用Qt開發(fā)了一個簡單的測試程序,對該設(shè)備測試。在仿真教學(xué)電梯中安裝了故障采集器和各種傳感器,用來模擬真實的電梯運行環(huán)境。圖6為測試程序界面。
進行的測試包括如下幾個方面:
(1) 通信功能測試:保證通信正常,可以建立TCP連接,當TCP連接掉線時,可以重新恢復(fù)連接。
(2) 故障識別功能測試:模擬各種電梯可能出現(xiàn)的運行故障,保證能夠正常識別出故障,并且將故障信息發(fā)送到主機。
(3) 電梯傳感器信號采集功能測試:當傳感器信號變化時,故障采集器將傳感器信號發(fā)送給主機,主機端可以實時顯示傳感器信號狀態(tài)。
(4) 參數(shù)設(shè)置功能測試:在主機端設(shè)置參數(shù)值,觀察故障采集器的參數(shù)是否改變。
6 結(jié) 語
本文使用LM3S6432處理器和RT?Thread實時系統(tǒng)設(shè)計了一款電梯故障信息采集器。按照硬件設(shè)計制板、調(diào)試發(fā)現(xiàn),系統(tǒng)硬件運行良好。RT?Thread操作系統(tǒng)具有豐富的功能,并且接口簡單,針對lwIP也進行了不少優(yōu)化,網(wǎng)絡(luò)性能較好。LM3S6432結(jié)合RT?Thread可以較好的實現(xiàn)系統(tǒng)功能。
參考文獻
[1] 國家質(zhì)量監(jiān)督檢驗檢疫總局.2009年全國特種設(shè)備安全狀況白皮書[S].北京:中國標準出版社,2009.
[2] 國家質(zhì)量監(jiān)督檢驗檢疫總局.GB/T 24475?2009電梯遠程報警系統(tǒng)[S].北京:中國標準出版社,2009.
[3] 國家質(zhì)量監(jiān)督檢驗檢疫總局.GB/T 24476?2009電梯、自動扶梯和自動人行道數(shù)據(jù)監(jiān)視和記錄規(guī)范[S].北京:中國標準出版社,2009.
[4] 宗群,宋鼎,王朝陽.電梯遠程監(jiān)控系統(tǒng)的研制[J].儀器儀表學(xué)報,2002,23(6):609?611.
[5] 邱祎.嵌入式實時操作系統(tǒng)RT?Thread的設(shè)計與實現(xiàn)[D].成都:電子科技大學(xué),2007.
[6] DUNKELS A. Design and implementation of the lwIP TCP/IP stack [EB/OL]. [2001?02?20]. http://images.wikia.com/mini6/images/0/0e/Lwip.pdf.
[7] 劉松國,韓樹新,李偉忠,等.電梯運行狀態(tài)監(jiān)測與故障遠程報警系統(tǒng)研究[J].自動化與儀表,2011,26(10):42?46.
[8] 茅衛(wèi)娟.電梯遠程監(jiān)控系統(tǒng)的設(shè)計與實現(xiàn)[D].上海:上海交通大學(xué),2004.
[9] 尹蘇東,薛季愛.一種新型電梯遠程監(jiān)測報警系統(tǒng)[J].起重運輸機械,2009(8):19?22.
[10] 任詩渡,呂嘉賓,陳則來.基于網(wǎng)絡(luò)通信的電梯遠程故障診斷系統(tǒng)[J].機電工程技術(shù),2009,38(1):57?59.
[11] 萬健如,陳超,孫洋建.采用雙串口單片機的電梯遠程監(jiān)控系統(tǒng)[J].計算機測量與控制,2006,14(7):900?901.