陳啟武,白天蕊
(西南交通大學 信息科學與技術學院,成都 610031)
面向貨運列車的物聯網實時在線監控系統設計
陳啟武,白天蕊
(西南交通大學 信息科學與技術學院,成都 610031)
針對鐵路貨車行車安全狀態監測系統的應用需求,設計一種基于物聯網技術的貨運列車監控系統。系統采用ZigBee短距離無線通信技術搭建無線傳感網絡,通過各節車輛的傳感器節點采集數據發送到機車監控平臺,然后通過GPRS網絡與地面監控中心進行通信,實現車地數據的實時傳輸。經測試,系統達到了良好的實時在線監測效果,在鐵路貨車行車安全監測領域具有廣泛的應用前景。
物聯網;ZigBee;監控系統
因列車貨運安全問題造成的事故居高不下,不僅給人民群眾的生命財產造成了巨大損失,也為社會帶來了嚴重的負面影響,鐵路貨運安全形勢十分嚴峻。長期以來,鐵路貨車行車安全監測主要依賴人工勘驗和地面設備測量手段,如紅外線軸溫探測系統[1]。這種傳統的地面設備監測方式不僅精度上很難達到要求,并且監測參數較少、設備成本高。另外,由于貨運列車需要頻繁地解列編組、車內無人值守、車廂也無固定電源,所以無法采取客車的車載總線、有人值守式監控方案[2]。近年來,新興的物聯網技術憑借其諸多的優勢,在智能電網、商業樓宇自動化、智能農業、智能交通等領域上贏得了一席之地[3]。將物聯網技術應用到貨運列車,必將有力促進鐵路貨運安全事業的發展。
本文充分利用ZigBee無線傳感網絡和嵌入式技術,選取了貨運列車運行安全最重要的兩個參數—軸溫與煙火作為監測對象。在每節車廂的轉向架軸箱里安置一個ZigBee節點用于采集軸溫和煙霧數據,通過ZigBee無線傳感網絡發送到機車監控平臺,在機車部分實現列車狀態的集中監控。機車監控平臺由匯聚節點(Sink)和以ARM為核心的嵌入式網關(Gateway)組成,司乘人員通過觸摸屏不僅能夠實時地查看到整列車的狀態預警信息以采取及時的應對措施,還能利用監控平臺軟件實現貨車的編組管理、數據查詢和網絡狀態控制等功能。嵌入式網關再將匯總數據通過GPRS網絡實時傳輸到地面監控中心服務器,保持列車和地面對狀態數據的同步監控,并將數據實時保存到數據庫中,便于專家分析歷史數據。系統總體方案設計如圖1所示。

圖1 系統方案總體框圖
2.1 數據采集節點設計

圖2 CC2530外圍電路
數據采集節點主要由無線通信模塊、傳感器模塊和電源模塊三部分組成。無線通信模塊采用兼容 ZigBee 2007 協議的 SoC 處理器 CC2530 實現,CC2530內置業界領先的RF轉發器,并結合增強型的8051內核MCU。CC2530具有256 KB Flash ROM、8 KB RAM、兩個UART接口并可復用的SPI接口、8通道的ADC并具有不同電源運行模式,非常適合超低功耗需求的系統[4]。CC2530外圍電路如圖2所示。

圖3 軸溫采集電路
傳感器模塊由軸溫與煙火傳感單元組成。軸溫傳感單元選取了Maxin公司推出的數字溫度傳感器DS18B20。DS18B20結構簡單,只有3個引腳(GND、DQ、VDD),通過一根數據線DQ就能獲取數字溫度值;支持多點組網功能,多個DS18B20可共用一根通信線, 以實現多點測溫;具有溫度報警功能,用戶可設置報警溫度等[5]。貨運列車的每節車廂有8個軸承,因此需要8個DS18B20檢測軸承的絕對溫度;同時,每節車廂還應配備1個DS18B20用于檢測環境溫度,以設定相對溫度報警值。本文利用CC2530的P0_6口接DS18B20的DQ,單總線上一次性采集9個溫度,軸溫采集電路如圖3所示。
煙火傳感單元采用集成的智能傳感器MQ-2模塊。MQ-2屬于表面離子式N型半導體,其對可燃氣體如CO和火災燃燒時所產生的煙霧具有較好的靈敏判別,這對油罐、洗煤等載有易燃物的貨車火災檢測十分有用。該模塊工作電壓為5 V,具有模擬量和TTL開關電平雙路信號輸出,模擬量輸出0~5 V電壓,煙霧濃度越高電壓越高。由于CC2530芯片的ADC接口最高只能承受3.3 V電壓,因此還需設計一個分壓電路才能進行有效采集,如圖4所示。CC2530的P0_7口用于檢測TTL電平信號,P2_0口檢測模擬信號。
由于貨車車內無電源,電源模塊采用1節5 V的干電池供電,5 V電源通過DC-DC變換器HT7533得到3.3 V工作電壓,保證采集節點穩定可靠地工作。

圖4 煙霧傳感器AD轉換電路
2.2 機車監控主機設計
機車監控主機選用了北京訊為電子公司生產的iTOP-4412精英版開發板作為開發平臺。其核心板搭載了一塊Samsung公司推出的基于ARM Cortex-A9內核的芯片Exnoys 4412,在設計上采用SCP封裝形式,集成了1 GB DDR3內存芯片、2 GB NAND Flash外部存儲器和Samsung公司專為Exnoys 4412處理器匹配設計的電源管理芯片等。開發板底板具有豐富的外圍資源,具有3路UART、2路USB 2.0 HOST、RGB-LCD接口等多種資源。機車監控主機系統框圖如圖5所示。ZigBee無線傳感器網絡與嵌入式平臺通過串口交換數據,底板的兩個9針RS232串口,一個用于ZigBee協調器串口連接,另一個可用于 PC 輔助開發時串口控制;2路USB接口可分別掛接GPRS模塊和鼠標;TFT-LCD接口可支持4.3 寸觸摸屏,便于人機交互;同時板載的一個蜂鳴器可用于遇到緊急情況時蜂鳴報警。

圖5 機車監控主機系統框圖
系統軟件包括ZigBee無線傳感網絡軟件設計和基于Qt的監控主機軟件設計兩大部分。
3.1 ZigBee無線傳感網絡軟件設計
3.1.1 匯聚節點軟件設計
匯聚節點在系統中起到溝通采集節點和監控主機的橋梁作用,主要負責整個ZigBee網絡的建立和運行,向網關設備上傳或接收數據。采用TI公司提供的ZigBee2007協議棧軟件,通過改寫ZStack的App層來創建所需項目,程序需要實現設備的初始化、協調器建網、節點加入網絡、數據信息的收發[6]。匯聚節點軟件設計流程如圖6所示。

圖6 匯聚節點軟件設計流程
匯聚節點與嵌入式網關串口通信的報文協議格式如下所示:

幀 頭車廂號傳感器數據鏈路質量幀校驗幀 尾1字節5字節N字節1字節2字節1字節
其中幀頭表示數據幀的開始,系統設置為0xFE;車廂號是貨車出廠時唯一的標識,這里默認設置為5個字節;傳感器數據為對應車廂號所存儲的軸溫和煙霧數據;鏈路質量LQI用于指示接收包的信號品質,判斷節點工作是否正常;幀校驗用于檢驗數據幀傳輸是否有誤,用兩個字節CRCH和CRCL實現;幀尾為幀結束符0x0D。
考慮到貨車頻繁解列編組的特殊應用情況,貨車在編組站重編組時,為了識別本車次所需要加入編組的車廂,設計了MAC地址白名單驗證機制。協調器組建網絡后,監控主機通過串口給協調器發送所要加入編組車廂對應節點的MAC地址,并將其添加到白名單記錄中;子節點請求入網時會發起一個AssoReq指令,該指令包含該節點的物理地址;協調器收到后,在ZDO層驗證該地址是否在白名單記錄中,若不在則返回一包拒絕信息,否則允許其加入網絡,并修改子節點表的信息。主要設計思路是在Zstack協議棧ZDO層的ZDApp.c中修改ZStatus_t ZDO_JoinIndicationCB(uint16 ShortAddress, uint8 *ExtendedAddress,uint8 CapabilityFlags, uint8 type)函數,該函數可以直接接駁NWK層處理子節點請求入網的事件,在此加入白名單驗證,不合法的地址直接返回ZFailure。修改后ZDO_JoinIndicationCB()函數核心代碼如下:
ZStatus_t ZDO_JoinIndicationCB(uint16 ShortAddress, uint8 *ExtendedAddress,uint8 CapabilityFlags, uint8 type)
{
uint8 flag=0; //MAC地址白名單比對結果標志
uint8 buf[16]={0}; //存儲待加入節點的MAC地址
To_string(buf,ExtendedAddress,8);
//調用To_string函數使MAC地址以十六進制形式存入buf數組
for(uint8 i=0;i //遍歷MAC地址白名單列表 if(osal_memcmp(buf,extAddrsList[i],16)==true){ //比對成功則跳出執行下面的事件 flag=1; break; } } if(!flag) //若比對的結果不存在,則return ZFailure return ZFailure; …… } 3.1.2 采集節點軟件設計 采集節點在ZigBee網絡中既作為傳感器數據采集節點,又作為數據中繼轉發節點。采集節點上電并成功入網后,等待協調器發送采集命令“colldata”,然后觸發OSAL定時器事件周期性地采集并發送軸溫和煙霧數據給協調器。其軟件設計流程如圖7所示。 圖7 采集節點軟件設計流程 為了保證整個系統可靠持續工作,可以對無線傳感器網絡做一定冗余。貨車遇到中途長時間停車情況時,系統通過協調器發送停止采集命令“collstop”,使節點進入休眠狀態,以降低節點電池的能耗;當遇到節點工作異常時,系統通過協調器發送指令“colldata”喚醒網絡中的休眠節點,同時提醒車輛修護人員及時更換故障節點。采集節點向匯聚節點上報數據包格式如下(N=1,…,8): 車廂號環境溫度N號軸溫N號軸承狀態煙霧濃度煙霧狀態5字節2字節2字節1字節2字節1字節 3.2 基于Qt的嵌入式監控軟件設計 3.2.1 GUI開發環境的搭建 對于嵌入式平臺上運行的監測軟件,本文采用 Qt 進行開發。Qt 具有良好封裝機制,模塊化程度非常高,跨平臺性好。同時,Qt提供了一種信號與槽通信機制來替代回調函數,這使得事件響應管理更加容易;Qt支持 2D/3D 圖形渲染,這為監測軟件中數據處理、圖像繪制等部分開發提供了必要的條件[7]。 由于采用不同的交叉編譯工具鏈編譯 Linux 內核與 Qt 的 x11 庫、ARM 庫會造成多種編譯錯誤。本文選用了arm-linux-gcc4.3.1 編譯 Linux 內核、Qt 的 x11 庫及ARM庫,選用 qt-opensource-src-4.7.1作為GUI用戶界面設計庫。同時在 PC 機上通過 VMware 安裝Ubuntu12.04,搭建交叉編譯環境,通過 SSH Secure File Transfer Client 完成代碼的移植,采用超級終端實現串口信息打印和對目標板控制[8]。 3.2.2 軟件工作流程及主要功能 基于Qt的嵌入式監控平臺軟件開發流程如圖8所示。 圖8 基于Qt的嵌入式監控平臺軟件開發流程圖 軟件主要功能如下: ① 串口通信功能。采用QThread線程監聽串口,當有數據發送過來就接收處理。軟件具備網絡控制功能,以控制串口是否接收數據,并通過廣播命令幀的方式控制節點是否工作。 ② 參數顯示功能。本軟件將數據分類處理后,在“狀態監測”界面對傳感器的數據進行實時顯示。顯示的參數狀態信息為各節車輛的8個軸承溫度、1個環境溫度以及煙霧濃度,并可以通過顏色變化直觀地顯示各軸承和車內煙火的預警狀態。狀態監測界面效果如圖9(a)所示。 ③ 編組管理功能。貨車在編組站進行編組時,用戶可通過編組管理選項中的“查詢添加”功能直接輸入車廂號即可加入當前車次的編組,若數據庫中不存在待加入車廂的信息,可利用“手動添加”功能輸入車廂號和MAC地址加入編組,從而解決了ZigBee自組織網絡給貨車編組帶來的難題。編組管理界面效果如圖9(b)所示。 ④ 數據遠程發送功能。匯聚節點接收到ZigBee網絡的原始數據通過GPRS網絡傳輸到地面監控中心,滿足了地對車的實時在線監測需求。 ⑤ 網絡狀態監測功能。實時更新ZigBee網路各節點的通信鏈路質量,同時將離線節點編號保存下來,以通知車輛修護人員及時更換故障節點。 ⑥ 歷史數據查詢功能。采用SQLite嵌入式數據庫, 將匯聚節點接收到的數據通過分類信息后實時保存到數據庫中。貨車進入車輛段檢修時,檢修人員無需現場檢查熱軸隱患,只需在機車內通過界面的數據查詢功能確認故障軸承的具體位置,從而大大提高了工作效率。歷史數據查詢界面效果如圖9(c)所示。 ⑦ 實時曲線查詢功能。可通過查詢曲線,直觀地查看和分析各車輛軸溫的變化趨勢。實時曲線查詢界面效果如圖9(d)所示。 圖9 監控軟件界面設計效果組圖 本文利用Qt在Windows平臺下編寫了地面監控中心上位機監控軟件,最后在實驗室條件下搭建了開發測試環境。測試結果表明,所設計的ZigBee無線傳感網絡、嵌入式平臺與地面監控中心上位機能夠正常通信,監測系統軟件可實現狀態參數實時顯示、車廂編組管理、數據存儲、查詢與節點通信質量監測等功能。本文采用了ZigBee 技術實現車載實時在線監測,不僅避免了貨車因頻繁的解列編組帶來的車廂間相互獨立、無法連線的難題,而且使得安裝與維護更為方便;同時嵌入式系統的引入使得監測系統的專一性、可靠性得到提升,系統硬件成本也大幅降低。因此,本文所開發的面向貨運列車的物聯網監控系統可為鐵路貨車行車安全監測領域提供了一種新的模式。 [1] 李開臣.鐵道車輛紅外軸溫探測技術的研究與改進[D].北京:北京交通大學,2008. [2] 孫根強,王可心,劉娟,等. ZigBee無線傳感網絡在客車安全監測系統中的應用[J].黑龍江科技信息,2010(7):9-10. [3] Kovacs A,Peroulis D,Sadeghi F. Early-Warning Wireless Telemeter for Harsh-Environment Bearings[C]//IEEE SENSORS 2007 Conference,2007:946-950. [4] Texas Instrument.CC2530 Datasheet,2009. [5] Dallas.DS18B20 Datasheet,2007. [6] 王小強,歐陽駿,黃寧淋.ZigBee無線傳感網絡設計與實現[M].北京:化學工業出版社,2012. [7] 李彬.Linux Qt GUI開發詳解(基于Nokia Qt SDK)[M].北京:北京航空航天大學出版社,2013. [8] 王宜祥,基于嵌入式與無線傳感器網絡的風機在線監測與診斷系統[D].北京:北京工業大學,2014. 陳啟武(碩士研究生),主要研究方向為物聯網技術、嵌入式系統;白天蕊(副教授),主要研究方向為數字集成電路設計。 (責任編輯:楊迪娜 收修改稿日期:2016-03-10) Railway Wagon Real-time Online Monitoring System Based on IoT Chen Qiwu,Bai Tianrui (School of Information Science and Technology,Southwest Jiaotong University,Chengdu 610031,China) Aiming at the demand of the railway wagon safety condition monitoring,a kind of railway wagon monitoring system based on the Internet of Things(IoT) is designed.The system applies ZigBee to build a wireless sensor network.The data is sent to the locomotive data monitoring platform via the sensor nodes of each vehicle,and the design communicates with the ground data monitoring center host through GPRS,so the real-time remote data transmission is achieved.The test results show that the system achieves the good results of real-time online monitoring,and has a wide range of applications in the railway wagon safety condition monitoring industry. IoT;ZigBee;monitoring system TP393 A



4 系統測試與結論