周化龍,張 博,石海濤
(1.江蘇建筑職業(yè)技術(shù)學(xué)院智能制造學(xué)院,江蘇徐州 221000;2.中國礦業(yè)大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,江蘇徐州 221000;3.徐州威卡電子控制技術(shù)有限公司,江蘇徐州 221000)
近年來,隨著國家加大對(duì)公共基礎(chǔ)設(shè)施建設(shè)的投資,起重機(jī)行業(yè)迎來了高速發(fā)展期,產(chǎn)品技術(shù)和性能有了明顯提升[1]。隨著對(duì)起重機(jī)技術(shù)研究的持續(xù)深入,需要全面監(jiān)測起重機(jī)的各類工作參數(shù),如:監(jiān)測手柄和卷揚(yáng)轉(zhuǎn)速參數(shù),評(píng)估卷揚(yáng)系統(tǒng)性能;監(jiān)測起重機(jī)CAN總線報(bào)文數(shù)據(jù),捕捉異常報(bào)文排查疑難故障。起重機(jī)工作參數(shù)是研發(fā)人員開展起重機(jī)性能評(píng)估、疑難故障分析的數(shù)據(jù)基礎(chǔ)。
目前,起重機(jī)工作參數(shù)監(jiān)測主要有現(xiàn)場監(jiān)測法、遠(yuǎn)程監(jiān)測法?,F(xiàn)場監(jiān)測法由測試人員攜帶采集設(shè)備現(xiàn)場跟蹤記錄起重機(jī)的工作參數(shù)[2],勞動(dòng)強(qiáng)度大、監(jiān)測效率低。遠(yuǎn)程監(jiān)測法以自動(dòng)化程度高、靈活性強(qiáng)等優(yōu)點(diǎn)逐漸成為有效手段[3-5]。張偉等實(shí)現(xiàn)了基于物聯(lián)網(wǎng)的塔式起重機(jī)安全監(jiān)測[6],該系統(tǒng)具備一定實(shí)用性,但監(jiān)測參數(shù)固定,無法靈活調(diào)整,通用性不強(qiáng)。魯強(qiáng)等設(shè)計(jì)了基于TLink物聯(lián)網(wǎng)云平臺(tái)的車載信息遠(yuǎn)程監(jiān)測系統(tǒng)[7],實(shí)現(xiàn)了對(duì)發(fā)動(dòng)機(jī)工作參數(shù)的遠(yuǎn)程監(jiān)測,但其通過GPRS進(jìn)行數(shù)據(jù)傳輸,僅適用于少量、低采樣率信號(hào)的監(jiān)測。董梁玉等設(shè)計(jì)了基于叉車可靠性強(qiáng)化試驗(yàn)的遠(yuǎn)程監(jiān)控系統(tǒng)[8],對(duì)起重機(jī)領(lǐng)域具有一定借鑒意義,但該系統(tǒng)的監(jiān)控平臺(tái)通過BOOSTRAP+HTML+CSS+JavaScript方式實(shí)現(xiàn),軟件編程較復(fù)雜且對(duì)車輛CAN總線報(bào)文監(jiān)測的研究較少。
在總結(jié)多年起重機(jī)性能測試和故障診斷經(jīng)驗(yàn)的基礎(chǔ)上,本文設(shè)計(jì)了基于LabVIEW和TBox的起重機(jī)工作參數(shù)遠(yuǎn)程監(jiān)測系統(tǒng),具有監(jiān)測內(nèi)容靈活、采樣頻率高、傳輸延時(shí)小的優(yōu)點(diǎn)。該系統(tǒng)通過車載TBox終端采集起重機(jī)CAN總線報(bào)文數(shù)據(jù),經(jīng)4G網(wǎng)絡(luò)遠(yuǎn)程高速上傳至服務(wù)器,遠(yuǎn)程監(jiān)測平臺(tái)實(shí)時(shí)接收數(shù)據(jù),并由圖形化編程軟件LabVIEW實(shí)現(xiàn)各類參數(shù)的解析、顯示和存儲(chǔ)。
基于LabVIEW和TBox的起重機(jī)遠(yuǎn)程監(jiān)測系統(tǒng)整體架構(gòu)如圖1所示,系統(tǒng)由車載TBox終端、服務(wù)器及遠(yuǎn)程監(jiān)測平臺(tái)組成。車載TBox終端包括硬件和程序2部分,實(shí)現(xiàn)起重機(jī)CAN總線數(shù)據(jù)的全量采集和基于4G網(wǎng)絡(luò)的數(shù)據(jù)上傳。服務(wù)器包括主機(jī)和MQTT服務(wù)程序2部分,是數(shù)據(jù)接收和發(fā)送的中樞。遠(yuǎn)程監(jiān)測平臺(tái)是基于LabVIEW開發(fā)的上位機(jī)軟件,包括數(shù)據(jù)接收模塊、參數(shù)配置模塊、數(shù)據(jù)解析模塊、顯示和存儲(chǔ)模塊等部分,研發(fā)人員通過該平臺(tái),進(jìn)行起重機(jī)工作參數(shù)的配置、查看和記錄。
圖1 監(jiān)測系統(tǒng)整體架構(gòu)
TBox(Telematics BOX)是負(fù)責(zé)數(shù)據(jù)發(fā)送和接收的車載終端,是車聯(lián)網(wǎng)的重要組件[9-10]。隨著汽車網(wǎng)聯(lián)化程度的提高,TBox裝車量逐年增長,預(yù)計(jì)到2025年,中國乘用車TBox裝配率將達(dá)85%,裝配超2 000萬輛,國內(nèi)已有眾多成熟配套廠商[11]。本系統(tǒng)選用WLM51型TBox,關(guān)鍵指標(biāo)見表1。其供電電壓和工作溫度適合起重機(jī)惡劣的工作環(huán)境,2路CAN可分別采集起重機(jī)CAN Open和J1939總線數(shù)據(jù),4G聯(lián)網(wǎng)方式可實(shí)現(xiàn)起重機(jī)CAN總線數(shù)據(jù)全量、高速傳輸,且4G網(wǎng)絡(luò)覆蓋面廣。
表1 WLM51型TBox關(guān)鍵指標(biāo)
TBox本質(zhì)上是基于Linux操作系統(tǒng)帶通訊功能的盒子,為了實(shí)現(xiàn)起重機(jī)工作參數(shù)的高采樣率監(jiān)測,基于該TBox硬件,開發(fā)CAN總線數(shù)據(jù)全量采集和發(fā)送程序,如圖2所示。
圖2 TBOX程序設(shè)計(jì)流圖
TBox采用MQTT通信協(xié)議與服務(wù)器鏈接,MQTT是消息隊(duì)列遙測傳輸協(xié)議,具有簡單、穩(wěn)定、輕量的優(yōu)點(diǎn),廣泛應(yīng)用于物聯(lián)網(wǎng)通信[12]。為了兼顧數(shù)據(jù)監(jiān)測的實(shí)時(shí)性和采集數(shù)據(jù)包的大小,MQTT消息數(shù)據(jù)的發(fā)送周期設(shè)置為200 ms。
鑒于數(shù)據(jù)傳輸和處理的要求,服務(wù)器系統(tǒng)選用64位CentOS系統(tǒng),硬件配置采用8核、16 GB內(nèi)存,帶寬為100 Mbit/s。MQTT服務(wù)程序可通過運(yùn)行yum install mosquitto指令實(shí)現(xiàn)一鍵式安裝,然后運(yùn)行service mosquitto start開啟MQTT服務(wù)。
為了保證數(shù)據(jù)傳輸安全,MQTT服務(wù)器啟用ACL鑒權(quán)進(jìn)行用戶訪問控制,TBox僅允許發(fā)布數(shù)據(jù),遠(yuǎn)程監(jiān)測平臺(tái)程序僅允許訂閱數(shù)據(jù)。
選用LabVIEW 2017軟件開發(fā)遠(yuǎn)程監(jiān)測平臺(tái)的上位機(jī)程序,程序結(jié)構(gòu)如圖3所示。
圖3 遠(yuǎn)程監(jiān)測平臺(tái)程序結(jié)構(gòu)圖
首先通過數(shù)據(jù)接收模塊與服務(wù)器建立MQTT協(xié)議鏈接,此后遠(yuǎn)程監(jiān)測平臺(tái)持續(xù)從服務(wù)器獲取TBox回傳的CAN報(bào)文數(shù)據(jù);參數(shù)配置模塊用于讀取用戶導(dǎo)入的CAN總線協(xié)議配置文檔,是后續(xù)進(jìn)行數(shù)據(jù)解析的基礎(chǔ);數(shù)據(jù)解析模塊根據(jù)各參數(shù)的解析規(guī)則,對(duì)CAN總線報(bào)文進(jìn)行解析,得到起重機(jī)具體的工作參數(shù);顯示和存儲(chǔ)模塊用于各項(xiàng)參數(shù)的顯示和記錄。
2.3.1 數(shù)據(jù)接收模塊
數(shù)據(jù)接收模塊是遠(yuǎn)程監(jiān)測平臺(tái)持續(xù)從服務(wù)器獲取TBox數(shù)據(jù)的基礎(chǔ),該模塊基于MQTT工具包開發(fā),工具包封裝了一系列MQTT操作函數(shù),可實(shí)現(xiàn)對(duì)MQTT通信協(xié)議的鏈接建立、斷開、主題訂閱、消息發(fā)布、消息接收等功能。
為避免多個(gè)監(jiān)測平臺(tái)同時(shí)鏈接至服務(wù)器時(shí)發(fā)生沖突,這里采用mac地址+隨機(jī)字符串的形式產(chǎn)生唯一的Client ID,再通過MQTT Connect函數(shù)鏈接至服務(wù)器;然后通過MQTT Subscribe函數(shù)訂閱TBox上傳數(shù)據(jù)的“主題”;最后在While循環(huán)中重復(fù)調(diào)用MQTT Read Published Message函數(shù),從服務(wù)器持續(xù)獲取實(shí)時(shí)數(shù)據(jù),如圖4所示。
圖4 數(shù)據(jù)接收模塊程序框圖
2.3.2 參數(shù)配置模塊
為了滿足所監(jiān)測的參數(shù)可靈活調(diào)整的實(shí)際需求,遠(yuǎn)程監(jiān)測平臺(tái)以Excel文檔的形式提供了CAN協(xié)議配置模板,如圖5所示。由用戶根據(jù)實(shí)際監(jiān)測需求和起重機(jī)CAN通信協(xié)議填寫Excel文檔。
圖5 CAN協(xié)議配置模板
遠(yuǎn)程監(jiān)測平臺(tái)通過讀取Excel文檔,獲取需要監(jiān)測的工作參數(shù)以及各參數(shù)的解析協(xié)議,在參數(shù)配置模塊中通過Excel Get Data函數(shù)實(shí)現(xiàn)對(duì)Excel文檔的讀取。此外,為了避免用戶填寫信息不完整,導(dǎo)致CAN總線數(shù)據(jù)無法解析,程序還進(jìn)行了信息填寫的規(guī)范性和完整性檢查,見圖6。
圖6 參數(shù)配置模塊程序框圖
2.3.3 數(shù)據(jù)解析模塊
數(shù)據(jù)解析模塊是遠(yuǎn)程監(jiān)測平臺(tái)的數(shù)據(jù)處理核心,實(shí)現(xiàn)了由CAN總線報(bào)文到具體監(jiān)測參數(shù)的實(shí)時(shí)轉(zhuǎn)換。
對(duì)于每幀CAN報(bào)文,首先判斷其ID是否在用戶配置的總線協(xié)議列表內(nèi),如否,直接跳過并判斷下一幀報(bào)文;如是,則根據(jù)起始位、長度和數(shù)據(jù)類型獲得其對(duì)應(yīng)布爾數(shù)組轉(zhuǎn)換后的數(shù)值,再由比例因子和偏移量計(jì)算得到參數(shù)值。根據(jù)CAN通信機(jī)制,不同ID報(bào)文分時(shí)發(fā)送,即同一時(shí)刻僅能獲取某個(gè)ID的報(bào)文,為實(shí)現(xiàn)所有參數(shù)的同步采樣,在解析某一報(bào)文時(shí),其他ID報(bào)文對(duì)應(yīng)的參數(shù)值通過For循環(huán)的移位寄存器傳遞至下一循環(huán),從而保證所有參數(shù)同步更新,如圖7所示。
圖7 數(shù)據(jù)解析模塊程序框圖
2.3.4 顯示和存儲(chǔ)模塊
根據(jù)實(shí)際需求,遠(yuǎn)程監(jiān)測平臺(tái)提供了2種顯示模式:原始報(bào)文模式和參數(shù)曲線模式。
在原始報(bào)文模式下,可以實(shí)時(shí)監(jiān)測TBox的2路CAN通道所采集的CAN總線報(bào)文幀,包括ID、長度、數(shù)據(jù)、周期、數(shù)量等。此外,程序還可根據(jù)單位時(shí)間內(nèi)收到的報(bào)文數(shù)量估算CAN總線的負(fù)載率,如圖8所示。借助該功能,研發(fā)人員能夠?qū)崟r(shí)監(jiān)測起重機(jī)各控制器和傳感器的工作狀態(tài),并通過捕捉異常CAN報(bào)文數(shù)據(jù),進(jìn)行偶發(fā)故障排查。
圖8 CAN總線報(bào)文顯示界面
在參數(shù)曲線模式下,可以實(shí)時(shí)監(jiān)測起重機(jī)各項(xiàng)參數(shù)值,并在波形圖中查看各參數(shù)的變化曲線。還可以將監(jiān)測數(shù)據(jù)以“.tdms”的格式保存至本地,見圖9。
圖9 顯示和存儲(chǔ)界面
“.tdms”格式是NI公司推出的數(shù)據(jù)管理文件格式,具有文件體積小、訪問速度快的優(yōu)點(diǎn)[13],借助NI DIAdem工具可以進(jìn)行專業(yè)數(shù)據(jù)分析。借助該功能,研發(fā)人員能夠開展起重機(jī)作業(yè)性能的遠(yuǎn)程測試。
針對(duì)起重機(jī)監(jiān)測參數(shù)多變的特點(diǎn),遠(yuǎn)程監(jiān)測平臺(tái)以CAN協(xié)議配置文檔的方式讀取參數(shù)配置信息。根據(jù)某型起重機(jī)的CAN總線通信協(xié)議,填寫CAN協(xié)議配置文檔,見圖10。并將該文檔導(dǎo)入遠(yuǎn)程監(jiān)測平臺(tái),得到各監(jiān)測參數(shù)的實(shí)時(shí)數(shù)據(jù),見圖11。
圖10 CAN解析協(xié)議信息填寫
圖11 基于CAN協(xié)議配置信息確定監(jiān)測參數(shù)
經(jīng)驗(yàn)證,遠(yuǎn)程監(jiān)測平臺(tái)能夠根據(jù)配置文檔的內(nèi)容確定監(jiān)測參數(shù),反復(fù)修改文檔內(nèi)容,并導(dǎo)入平臺(tái),發(fā)現(xiàn)監(jiān)測參數(shù)能夠根據(jù)文檔內(nèi)容進(jìn)行調(diào)整,監(jiān)測內(nèi)容靈活性驗(yàn)證合格。
為了實(shí)現(xiàn)對(duì)起重機(jī)工作參數(shù)的高采樣率監(jiān)測,由TBox全量采集CAN總線所有報(bào)文幀,基于所有報(bào)文幀,理論上可以實(shí)現(xiàn)任意高頻率的采樣。為了測試TBox在數(shù)據(jù)采集和4G網(wǎng)絡(luò)傳輸環(huán)節(jié),是否存在數(shù)據(jù)丟失,根據(jù)起重機(jī)CAN總線負(fù)載率,在試驗(yàn)室環(huán)境下,利用PCAN工具模擬起重機(jī)CAN總線網(wǎng)絡(luò)進(jìn)行驗(yàn)證。PCAN是USB轉(zhuǎn)CAN工具,利用其配套的PCAN-View軟件實(shí)現(xiàn)CAN報(bào)文的收發(fā),如圖12所示。
圖12 PCAN-View總線報(bào)文發(fā)送界面
將PCAN與TBox組成獨(dú)立的CAN網(wǎng)絡(luò),利用PCAN發(fā)送大量CAN報(bào)文并由TBox采集,判斷PCAN發(fā)送的CAN報(bào)文數(shù)量與遠(yuǎn)程監(jiān)測平臺(tái)端所接收的CAN報(bào)文數(shù)量是否一致即可。
經(jīng)測試,當(dāng)CAN總線負(fù)載率為40%時(shí)(起重機(jī)CAN總線負(fù)載率一般低于40%),PCAN累計(jì)發(fā)送CAN報(bào)文65 411幀,遠(yuǎn)程監(jiān)測平臺(tái)端接收到CAN報(bào)文65 411幀,數(shù)據(jù)采集完成率100%,數(shù)據(jù)采集完整性驗(yàn)證合格。
為了測試CAN報(bào)文從被TBox采集到最終被遠(yuǎn)程監(jiān)測平臺(tái)記錄的全過程耗時(shí),在試驗(yàn)室環(huán)境下,編寫LabVIEW測試程序,分別基于NI cDAQ和TBox同時(shí)
采集同一開關(guān)量信號(hào),見圖13。NI cDAQ為有線數(shù)據(jù)采集,數(shù)據(jù)經(jīng)板卡直接傳輸至上位機(jī),傳輸延時(shí)忽略不計(jì),比較TBox數(shù)據(jù)相對(duì)于cDAQ數(shù)據(jù)的滯后時(shí)間來確定數(shù)據(jù)傳輸延時(shí)。
圖13 NI cDAQ與TBox同時(shí)采集開關(guān)量信號(hào)
操作試驗(yàn)臺(tái)開關(guān)使之交替產(chǎn)生0、1信號(hào),采集數(shù)據(jù)如圖14所示。分析數(shù)據(jù)得到6組傳輸延時(shí)Δt數(shù)據(jù),分別為0.32、0.28、0.34、0.41、0.32、0.42 s。計(jì)算得到數(shù)據(jù)傳輸平均延時(shí)350 ms,完全滿足起重機(jī)工作參數(shù)監(jiān)測的低時(shí)延要求。
圖14 數(shù)據(jù)傳輸延時(shí)性分析
本系統(tǒng)現(xiàn)已在某起重機(jī)制造企業(yè)成熟應(yīng)用,TBox累計(jì)裝車570余套,為143項(xiàng)起重機(jī)性能測試和54項(xiàng)起重機(jī)疑難故障診斷提供了數(shù)據(jù)支撐。
本文從系統(tǒng)組成上分析了起重機(jī)工作參數(shù)遠(yuǎn)程監(jiān)測系統(tǒng)的總體方案和設(shè)計(jì)方法,并分別從監(jiān)測內(nèi)容靈活性、數(shù)據(jù)采集完整性、數(shù)據(jù)傳輸實(shí)時(shí)性和工程應(yīng)用實(shí)踐等方面對(duì)系統(tǒng)的性能和可靠性進(jìn)行了驗(yàn)證。實(shí)踐證明該系統(tǒng)能夠滿足起重機(jī)性能測試和故障診斷的實(shí)際需求。此外,該系統(tǒng)通用性強(qiáng),除起重機(jī)外,還可應(yīng)用于其他采用CAN總線通信的工程機(jī)械車輛。