王銳,吳紫薇
(長春軌道客車股份有限公司 信息化部,長春 130062)
目前,國內(nèi)的旅客列車正向著高速、自動和舒適的方向迅速發(fā)展,人們關(guān)注的目光更多地放到車廂內(nèi)部環(huán)境的舒適性上來。而且,現(xiàn)代列車的發(fā)展使其與傳統(tǒng)列車相比有著新的難題,尤其是大幅提升的行車速度,使得旅客列車的安全檢測已經(jīng)成為鐵路運(yùn)輸研究中的重要課題之一[1]。
物聯(lián)網(wǎng)技術(shù)及無線傳感器網(wǎng)絡(luò)技術(shù)的出現(xiàn),在信息的無線傳輸、低廉的使用成本,以及網(wǎng)絡(luò)自適應(yīng)等方面表現(xiàn)出較大的優(yōu)勢,十分適用于旅客列車運(yùn)行中環(huán)境信息的采集和傳輸上。在旅客列車環(huán)境信息監(jiān)測方面開展相關(guān)的研究,對于提高國內(nèi)鐵路運(yùn)行信息化水平有非常重要的意義。
ZigBee技術(shù)是目前應(yīng)用最為廣泛的一種近距離的無線通信技術(shù)。其基于IEEE 802.15.4協(xié)議,并提供了完整的通信協(xié)議棧。ZigBee技術(shù)具有協(xié)議棧復(fù)雜度較低的特點,而且具備硬件簡單、設(shè)備價格低,支持休眠狀態(tài)、系統(tǒng)功耗低,傳輸速率適中等特點?;赯igBee技術(shù)的設(shè)備通信距離可達(dá)百米以上,且斷網(wǎng)自組能力較強(qiáng)[3]。
ZigBee技術(shù)在進(jìn)行數(shù)據(jù)收發(fā)時可以在不同的通信頻道上進(jìn)行選擇,最常用的是2.4GHz的通用頻道,在美國可以選擇915MHz的通信頻道,在歐洲也可以選擇使用868MHz的通信頻道。采用標(biāo)準(zhǔn)的ZigBee協(xié)議在2.4GHz頻段上的最高速率可以達(dá)到250kbps,而在其它兩個頻段上的最高頻率也可以達(dá)到20kbps和40kbps。因此,ZigBee技術(shù)在嵌入式設(shè)備組網(wǎng)的應(yīng)用中可以很好的滿足數(shù)據(jù)傳輸?shù)男枰?/p>
在ZigBee技術(shù)規(guī)范中可以支持3種不同的拓?fù)浣Y(jié)構(gòu),分別是星形拓?fù)?、樹形拓?fù)浜途W(wǎng)狀拓?fù)洌?]。其中,星形拓?fù)鋵崿F(xiàn)最為簡單,但是網(wǎng)絡(luò)可靠性低,通信距離短,魯棒性差。樹形拓?fù)渫ㄟ^增加了路由節(jié)點,大大提高了通信的距離,可靠性有所提升,但是總體魯棒性還是不能很好的滿足應(yīng)用的需求。本文所設(shè)計的列車環(huán)境監(jiān)控系統(tǒng)必須保證系統(tǒng)的穩(wěn)定,因此選用了最為復(fù)雜的網(wǎng)狀拓?fù)浣Y(jié)果作為終端組網(wǎng)的通信鏈路。網(wǎng)狀拓?fù)淇梢酝耆珜崿F(xiàn)點對點的通信,在網(wǎng)絡(luò)中的某條通信鏈路發(fā)生故障的時候,可以自動切換其他鏈路,保證通信的可靠[5]。網(wǎng)狀拓?fù)浣Y(jié)構(gòu)如圖1所示。
圖1 ZigBee網(wǎng)狀拓?fù)浣Y(jié)構(gòu)
本文中設(shè)計的監(jiān)測系統(tǒng)的主要功能是通過建立無線傳輸網(wǎng)絡(luò),傳輸旅客列車車廂區(qū)域內(nèi)采集的溫度、氣壓、濕度、一氧化碳等環(huán)境參數(shù)數(shù)據(jù),實現(xiàn)對列車車廂內(nèi)環(huán)境狀態(tài)變化的實時監(jiān)測,確保旅客列車舒適安全運(yùn)行[6]。因此,本文中設(shè)計的監(jiān)測系統(tǒng)采用了基于ZigBee的無線傳輸網(wǎng)絡(luò),可以方便的完成列車上的數(shù)據(jù)采集、傳輸工作,可靠性強(qiáng)。系統(tǒng)的總體架構(gòu)如圖2所示。
圖2 系統(tǒng)總體架構(gòu)圖
整個系統(tǒng)由ZigBee無線網(wǎng)絡(luò)傳輸模塊和基于ARM CPU的控制模塊組成。其中,ZigBee無線網(wǎng)絡(luò)傳輸模塊主要完成信息的采集和無線傳輸?shù)暮诵哪K,由協(xié)調(diào)節(jié)點、路由節(jié)點和終端傳感器節(jié)點組成。ZigBee網(wǎng)絡(luò)協(xié)調(diào)節(jié)點是嵌入在ARM CPU的控制模塊上的,作為無線通信接口,實現(xiàn)ZigBee網(wǎng)絡(luò)與ARM CPU控制模塊的互聯(lián)。
ZigBee無線網(wǎng)絡(luò)傳輸模塊上電后,開始建立無線通信網(wǎng)絡(luò);網(wǎng)絡(luò)建立成功后,傳感器節(jié)點將通過溫度傳感器、濕度傳感器、速度傳感器、氣壓傳感器和一氧化碳傳感器等一系列傳感器對旅客列車車廂內(nèi)的環(huán)境狀態(tài)數(shù)據(jù)進(jìn)行采集;然后傳感器節(jié)點將采集的溫度、濕度、氣壓和一氧化碳等數(shù)據(jù)經(jīng)過低功耗射頻模塊發(fā)送出去,經(jīng)ZigBee無線傳輸網(wǎng)絡(luò)傳輸后,最終到達(dá)控制器節(jié)點,控制器節(jié)點接收數(shù)據(jù),并進(jìn)行處理及顯示,實現(xiàn)對旅客列車車廂內(nèi)部環(huán)境參數(shù)進(jìn)行實時的監(jiān)測。另外,控制器可以根據(jù)目前的車廂狀態(tài),向各個無線節(jié)點下達(dá)控制指令,無線節(jié)點可以具體做出空調(diào)的開關(guān)、溫濕度的調(diào)節(jié)等具體控制工作。
2.2.1 ZigBee無線網(wǎng)絡(luò)傳輸模塊設(shè)計
無線網(wǎng)絡(luò)傳輸模塊主要負(fù)責(zé)系統(tǒng)的數(shù)據(jù)采集、傳輸工作,由協(xié)調(diào)節(jié)點、路由節(jié)點和終端傳感器節(jié)點組成[7]。ZigBee無線網(wǎng)絡(luò)傳輸模塊功能框圖如圖3所示。
圖3 ZigBee無線網(wǎng)絡(luò)通信模塊
在本系統(tǒng)的采集終端中選擇了TI公司的ZigBee單芯片解決方案CC2430芯片,CC2430上系統(tǒng)資源豐富,并且具有較高的處理性能。C2430芯片內(nèi)部內(nèi)置了一個加強(qiáng)型的8051單片機(jī),并集成了一個2.4GHz的DSSH射頻收發(fā)器,目前CC2430已經(jīng)成為最為主流的ZigBee組網(wǎng)解決方案[8]。CC2430的典型電路如圖4所示。
圖4 CC2430典型電路圖
2.2.2 傳感器的選擇、設(shè)計
(1)為了獲取列車上的溫度和濕度數(shù)據(jù),本系統(tǒng)設(shè)計中選擇了集成度高的SHT11溫濕度傳感器芯片。SHT11采用了CMOSens技術(shù),包含一個14位的模數(shù)轉(zhuǎn)換器,通過串行進(jìn)口同外部處理器相連。SHT11在出廠前都經(jīng)過了非常嚴(yán)格的校準(zhǔn)標(biāo)定并在內(nèi)部OTP內(nèi)存中保存校準(zhǔn)系數(shù),在測量時可以保證溫度測量精度為±0.5oC,濕度在0%~100%RH[9]。SHT11的外圍電路及其同CC2430的接口電路如圖5所示。
圖5 SHT11與CC2430模塊連接圖
(2)本系統(tǒng)設(shè)計中選用了MPXA6115A氣壓傳感器來采集列車車廂內(nèi)的絕對氣壓。MPXA6115是飛思卡爾公司出品的高精度硅氣壓傳感器,可以測量的范圍是15kPa到115kPa。MPXA6115的外圍接口電路以及同CC2430的連接電路圖如圖6所示。
圖6 MPXA6115外圍電路圖
(3)一氧化碳傳感器采用了穩(wěn)定可靠的高精度、高靈敏的ME2-CO傳感器。ME2-CO廣泛應(yīng)用于工業(yè)領(lǐng)域的一氧化碳?xì)怏w檢測,具有非常好的重復(fù)性和穩(wěn)定性。ME2-CO的外圍電路設(shè)計如圖7所示,ME2-CO在檢測到一氧化碳?xì)怏w后會發(fā)出微弱的電信號,經(jīng)過LM358放大電路后通過P0.6端口輸入到CC2430中進(jìn)行后需處理,輸出的電壓同一氧化碳的濃度成正比例關(guān)系。
圖7 ME2-CO傳感器外圍電路圖
2.2.3 顯示電路設(shè)計
在本系統(tǒng)中,為了能夠?qū)崟r顯示列車車廂的數(shù)據(jù)信息,設(shè)計中采用了液晶觸摸屏作為列車車廂的數(shù)據(jù)顯示及空調(diào)控制單元。液晶顯示觸摸控制電路如圖8所示。在對這部分進(jìn)行設(shè)計時,選取了ADS7843作為控制器,通過其內(nèi)部的12bit高精度模數(shù)轉(zhuǎn)換器對觸摸屏采集的數(shù)據(jù)進(jìn)行轉(zhuǎn)換,得到觸摸點的XY坐標(biāo)信息。
圖8 液晶顯示部分電路圖
2.2.4 空調(diào)控制電路設(shè)計
為了控制車廂內(nèi)的環(huán)境溫度和濕度,本系統(tǒng)設(shè)計中采用了調(diào)速電機(jī)控制模塊,從而達(dá)到對空調(diào)蒸發(fā)器、冷凝器和換氣風(fēng)扇的調(diào)節(jié)控制。這部分電路如圖9所示,終端傳感器節(jié)點的CC2430處理器收到控制指令后,調(diào)用內(nèi)置的調(diào)速程序在P0.0端口輸出信號,通過光電耦合器隔離后,直接控制空調(diào)的調(diào)速電機(jī)輸入電流,完成對空調(diào)調(diào)速電機(jī)的控制。
圖9 空調(diào)電機(jī)控制電路
本文采用了CC2430的廠商TI公司提供的IAR EW作為相應(yīng)的軟件開發(fā)平臺。IAR開發(fā)編譯環(huán)境的代碼優(yōu)化率高,界面友好,功能強(qiáng)大,為用戶的開發(fā)提供了高效率的開發(fā)平臺,降低開發(fā)的時間和成本。
2.3.1 協(xié)調(diào)器節(jié)點程序設(shè)計
本系統(tǒng)中協(xié)調(diào)器節(jié)點軟件部分設(shè)計采用了模塊化的思路,通過ARM CPU處理器控制ZigBee網(wǎng)絡(luò)中的協(xié)調(diào)器節(jié)點初始化系統(tǒng)并啟動數(shù)據(jù)傳輸網(wǎng)絡(luò),之后掃描網(wǎng)絡(luò)中的終端節(jié)點等待其加入,在數(shù)據(jù)傳輸網(wǎng)絡(luò)建好后保證網(wǎng)絡(luò)的正常運(yùn)行。
當(dāng)一個協(xié)調(diào)器設(shè)備啟動之后,調(diào)用操作系統(tǒng)OSAL中的設(shè)備啟動函數(shù)進(jìn)行網(wǎng)絡(luò)的組建工作,并將自己在網(wǎng)絡(luò)中的設(shè)備類型定義為協(xié)調(diào)器,這樣就標(biāo)志著自己作為網(wǎng)絡(luò)的控制設(shè)備來進(jìn)行網(wǎng)絡(luò)的維護(hù)工作,賦予標(biāo)志位NodeType=COORDINATOR。在完成了初始化工作之后,協(xié)調(diào)器設(shè)備還需要對網(wǎng)絡(luò)的標(biāo)識符、超級幀命令、工作信道和信標(biāo)幀等具體的網(wǎng)絡(luò)參數(shù)進(jìn)行定義和配置工作,在完成了網(wǎng)絡(luò)環(huán)境參數(shù)的配置之后,調(diào)用OSAL中的函數(shù)來確定網(wǎng)絡(luò)的建立成功,并等待其他設(shè)備的入網(wǎng)工作。Zig-Bee網(wǎng)絡(luò)的組建流程如圖10所示。
圖10 主程序流程圖
2.3.2 終端傳感器節(jié)點程序設(shè)計
在終端傳感器節(jié)點設(shè)備的軟件設(shè)計中需要完成以下幾個功能:搜索網(wǎng)絡(luò)和加入網(wǎng)絡(luò)、發(fā)起綁定請求、數(shù)據(jù)的發(fā)送和接收、開關(guān)空調(diào)、調(diào)節(jié)氣壓和顯示器的控制等。終端節(jié)點的程序流程圖如圖11所示。
圖11 終端節(jié)點軟件流程圖
同協(xié)調(diào)器設(shè)備類似的ZigBee終端設(shè)備在上電之后,也需要啟動OSAL操作系統(tǒng)進(jìn)行設(shè)備的啟動和初始化工作,對當(dāng)前的硬件設(shè)備狀態(tài)進(jìn)行查詢和配置,對硬件上面的參數(shù)寄存器進(jìn)行初始化。之后ZigBee終端設(shè)備需要對附近的網(wǎng)絡(luò)進(jìn)行搜索和發(fā)現(xiàn),向ZigBee網(wǎng)絡(luò)協(xié)調(diào)器設(shè)備發(fā)送入網(wǎng)申請,并等待答復(fù)。在核準(zhǔn)入網(wǎng)之后,進(jìn)一步發(fā)送設(shè)備綁定請求,進(jìn)行網(wǎng)絡(luò)地址的綁定工作,在協(xié)調(diào)器更新網(wǎng)絡(luò)設(shè)備綁定表之后,會返回一個綁定成功的命令,之后ZigBee終端設(shè)備就可以按照相應(yīng)的地址發(fā)送數(shù)據(jù)了。在本系統(tǒng)中,ZigBee網(wǎng)絡(luò)終端設(shè)備的主要工作是將連接在終端設(shè)備上的傳感器采集的數(shù)據(jù)通過ZigBee網(wǎng)絡(luò)進(jìn)行發(fā)送,并接受協(xié)調(diào)器發(fā)來的控制命令,對空調(diào)電機(jī)進(jìn)行調(diào)速控制,或者將相應(yīng)的數(shù)據(jù)信息顯示在LCD顯示屏上面,方便列車乘客的查閱。在沒有任何工作任務(wù)的時候,設(shè)備處于空閑狀態(tài),這時候,需要進(jìn)入到睡眠模式,降低模塊的電量消耗,等待有任務(wù)時在進(jìn)行喚醒。
本文在物聯(lián)網(wǎng)技術(shù)的基礎(chǔ)上,選用多種傳感器來采集列車中的環(huán)境參數(shù)數(shù)據(jù),并利用CC2430芯片構(gòu)建了一個網(wǎng)狀拓?fù)浣Y(jié)果的無線數(shù)據(jù)傳輸網(wǎng)絡(luò),在此網(wǎng)絡(luò)中進(jìn)行環(huán)境數(shù)據(jù)的傳輸,實現(xiàn)了對旅客列車環(huán)境的智能監(jiān)控。通過合理的設(shè)計軟硬件系統(tǒng),系統(tǒng)可以實現(xiàn)長時、穩(wěn)定、可靠的運(yùn)行,在實際的旅客列車運(yùn)行保障中具有廣泛的應(yīng)用前景。