劉向誠,雷斌
(西安工業(yè)大學(xué)電子信息工程學(xué)院,陜西西安710021)
野外WSN監(jiān)測系統(tǒng)數(shù)據(jù)透明傳輸?shù)膶?shí)現(xiàn)
劉向誠,雷斌
(西安工業(yè)大學(xué)電子信息工程學(xué)院,陜西西安710021)
針對(duì)在野外環(huán)境監(jiān)測中點(diǎn)多面廣、環(huán)境惡劣等問題,研究ZigBee技術(shù)能夠?qū)崿F(xiàn)野外環(huán)境數(shù)據(jù)的無線傳輸。而以前的傳感器網(wǎng)絡(luò)不滿足ZigBee協(xié)議的要求,不能通過ZigBee網(wǎng)絡(luò)進(jìn)行傳輸,這里介紹一種基于Z?Stack協(xié)議棧,在ZigBee網(wǎng)絡(luò)中實(shí)現(xiàn)以CC2530終端數(shù)據(jù)低功耗串口透明傳輸?shù)南到y(tǒng),該系統(tǒng)能夠通過終端節(jié)點(diǎn)將采集到的數(shù)據(jù)無線透明傳輸?shù)絽f(xié)調(diào)器節(jié)點(diǎn)上,從而實(shí)現(xiàn)數(shù)據(jù)的無線傳輸,并且該設(shè)計(jì)功耗低,適合野外長期使用。
Z?Stack協(xié)議棧;ZigBee網(wǎng)絡(luò);透明傳輸;低功耗
伴隨社會(huì)發(fā)展對(duì)各種信息的無限需求,野外環(huán)境監(jiān)測越來越受到有關(guān)部門的重視,隨之而來的問題也就越來越多。在很多監(jiān)測場,因?yàn)樘筋^布設(shè)比較分散、數(shù)采儀需求量較大,在當(dāng)前科研經(jīng)費(fèi)有限的情況下無法全部實(shí)現(xiàn)自動(dòng)化采集,仍然需要組織人員定期到現(xiàn)場觀測?;谝陨闲枨?,給出一種基于ZigBee技術(shù)的WSN分布式測控系統(tǒng),WSN(Wireless Sensor Network,無線傳感器網(wǎng)絡(luò))是一種新型的數(shù)字化探測技術(shù),融合了傳感技術(shù)、信息處理技術(shù)和網(wǎng)絡(luò)通信技術(shù)。在德州儀器(TI)公司提供的半開源ZigBee協(xié)議棧Z?Stack程序基礎(chǔ)上實(shí)現(xiàn)CC2530終端低功耗數(shù)據(jù)的串口透傳,通過傳感器采集到的數(shù)據(jù)與終端節(jié)點(diǎn)相連,終端節(jié)點(diǎn)與協(xié)調(diào)器進(jìn)行數(shù)據(jù)的透明傳輸,協(xié)調(diào)器再通過串口將數(shù)據(jù)上報(bào)給PC機(jī)。
整個(gè)系統(tǒng)由PC機(jī),數(shù)采儀,協(xié)調(diào)器以及終端節(jié)點(diǎn)構(gòu)成。整個(gè)網(wǎng)絡(luò)中的協(xié)調(diào)器只能有一個(gè),而與數(shù)采儀相連的終端節(jié)點(diǎn)可有多個(gè)。系統(tǒng)的總體設(shè)計(jì)圖如圖1所示。
圖1 系統(tǒng)的總體設(shè)計(jì)圖
數(shù)采儀將現(xiàn)場采集到的數(shù)據(jù)通過轉(zhuǎn)換接口發(fā)送到終端節(jié)點(diǎn)上,終端節(jié)點(diǎn)在獲取串口數(shù)據(jù)以后,對(duì)所獲得的數(shù)據(jù)進(jìn)行封裝,然后通過基于IEEE 802.15.4的ZigBee無線通信協(xié)議將數(shù)據(jù)傳遞給協(xié)調(diào)器,協(xié)調(diào)器把所獲取的數(shù)據(jù)進(jìn)行解析,應(yīng)用層獲得數(shù)據(jù)以后再通過串口上傳到PC機(jī),PC機(jī)可以在串口調(diào)試器上讀取采集到的數(shù)據(jù),從而實(shí)現(xiàn)數(shù)據(jù)的采集,透明傳輸以及數(shù)據(jù)的上報(bào)整個(gè)過程。
整個(gè)軟件的開發(fā)均以實(shí)現(xiàn)終端的低功耗為核心,因此低功耗是終端的最大特點(diǎn);又因?yàn)榻K端還擔(dān)任數(shù)據(jù)傳輸任務(wù),所以終端的另外一個(gè)功能是能夠?qū)崿F(xiàn)兩個(gè)模塊間數(shù)據(jù)的透明傳輸。但具體實(shí)現(xiàn)低功耗的情況需要根據(jù)在野外可能遇到的問題而設(shè)置進(jìn)入低功耗的條件。
本設(shè)計(jì)是采用休眠與喚醒方式來實(shí)現(xiàn)低功耗設(shè)計(jì)的,終端節(jié)點(diǎn)在每次喚醒后,根據(jù)查詢協(xié)調(diào)器是否有任務(wù)或者通過判斷是否有網(wǎng)絡(luò)存在來決定是否進(jìn)入休眠狀態(tài)。
以本設(shè)計(jì)所選用的終端節(jié)點(diǎn)芯片CC2530為例,通過閱讀其數(shù)據(jù)手冊(cè),得知其具有3種不同休眠運(yùn)行模式,使得它尤其適應(yīng)超低功耗要求的系統(tǒng)。在工作模式下,由于ZigBee技術(shù)的傳輸速率低,傳輸數(shù)據(jù)量小,因此信號(hào)收發(fā)時(shí)間短;在非工作模式下,ZigBee節(jié)點(diǎn)處于休眠狀態(tài)。
CC2530有3種供電模式,分別是PM1,PM2,PM3,根據(jù)分析得知PM1模式功耗比較大;PM2模式比較省功耗而且可以被定時(shí)器喚醒;PM3模式最省電但只能被外部中斷喚醒,有一定局限性。綜合考慮選擇PM2模式,PM2模式通過睡眠定時(shí)器,實(shí)現(xiàn)終端節(jié)點(diǎn)的休眠、喚醒,使其低功耗運(yùn)行,減少節(jié)點(diǎn)能耗。
終端低功耗功能流程圖如圖2所示。
圖2 終端低功耗功能流程圖
每隔8 s終端會(huì)自動(dòng)喚醒,喚醒后自動(dòng)檢測是否存在網(wǎng)絡(luò),如果存在網(wǎng)絡(luò),則啟動(dòng)入網(wǎng)流程,如果沒有網(wǎng)絡(luò),則繼續(xù)休眠。終端醒來后會(huì)處于準(zhǔn)備狀態(tài),準(zhǔn)備接收協(xié)調(diào)器的命令,待終端完成采集工作后,由協(xié)調(diào)器廣播休眠命令,終端收到休眠命令后,會(huì)自動(dòng)進(jìn)入休眠狀態(tài),考慮到惡劣情況,即網(wǎng)絡(luò)不穩(wěn)定,網(wǎng)絡(luò)連接又?jǐn)嚅_后,終端也會(huì)進(jìn)入休眠,這樣就實(shí)現(xiàn)了終端的低功耗問題。終端成功入網(wǎng)后的流程圖如圖3所示。
圖3 終端入網(wǎng)后的流程圖
在無線透明傳輸應(yīng)用中,發(fā)射模塊(也可作為接收模塊)與接收模塊(也可作為發(fā)射模塊)進(jìn)行信息交換的數(shù)據(jù)格式,沒有像指令字頭、結(jié)束符等數(shù)據(jù)包信息,只要發(fā)射模塊串口有數(shù)據(jù)輸出,模塊就把串口的數(shù)據(jù)以無線方式編碼發(fā)送。當(dāng)接收模塊接收到發(fā)射模塊發(fā)送的無線數(shù)據(jù)信號(hào)后進(jìn)行解碼,把解碼后的數(shù)據(jù)按發(fā)射模塊的格式從串口輸出,所發(fā)即所得,即對(duì)模塊使用者來說是透明的。其流程示意圖如圖4所示。
圖4 透傳流程示意圖
這里的發(fā)送方主要是指終端節(jié)點(diǎn),而接收方主要指協(xié)調(diào)器,協(xié)調(diào)器將終端節(jié)點(diǎn)發(fā)來的數(shù)據(jù)經(jīng)過解析后,通過串口上傳到PC機(jī)去讀取數(shù)據(jù),整個(gè)數(shù)據(jù)的傳輸過程對(duì)于發(fā)送方和接收方都是透明的,PC機(jī)如果想獲得某個(gè)終端節(jié)點(diǎn)采集的數(shù)據(jù),可以通過串口向協(xié)調(diào)器發(fā)送命令,根據(jù)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)找到相應(yīng)節(jié)點(diǎn)的網(wǎng)絡(luò)地址,從而完成采集命令的發(fā)送。
整個(gè)網(wǎng)絡(luò)系統(tǒng)中主要涉及到基于IEEE 802.15.4的ZigBee網(wǎng)絡(luò)通信協(xié)議,主要是發(fā)送方的射頻模塊通過ZigBee通信協(xié)議將封裝好的數(shù)據(jù)傳遞到接收方的射頻模塊,這一方面對(duì)于用戶來講是透明的。
3.1 串口透傳的主要程序
本系統(tǒng)協(xié)調(diào)器和終端節(jié)點(diǎn)程序主要是基于Z?Stack協(xié)議棧進(jìn)行編寫的,其中串口透傳相關(guān)函數(shù)如下,使用C語言編程:
(1)首先在SampleApp.c中添加函數(shù)
至此整個(gè)和串口透傳相關(guān)的函數(shù)均已添加完畢。
3.2 串口透傳實(shí)驗(yàn)
透傳實(shí)驗(yàn)的原理圖如圖5所示。
圖5 透傳實(shí)驗(yàn)的原理圖
將協(xié)調(diào)器通過串口與PC機(jī)相連,打開SSCOM串口助手,將串口助手設(shè)置為波特率為115 200 b/s、8位、無奇偶校驗(yàn)、無硬件流模式;再將終端按照同樣的方法和設(shè)置與PC機(jī)相連,上電后終端LED長亮表示入網(wǎng)成功,此時(shí)協(xié)調(diào)器發(fā)送“on0”作為啟動(dòng)命令,終端再發(fā)送10個(gè)a到10個(gè)h作為80個(gè)字節(jié),看協(xié)調(diào)器的接收情況。
串口測試結(jié)果如圖6所示。圖6左側(cè)是協(xié)調(diào)器串口圖,右側(cè)是終端串口圖。
測試結(jié)果:根據(jù)ZigBee協(xié)議棧官方資料的查閱,通過多次對(duì)發(fā)送數(shù)據(jù)包字節(jié)個(gè)數(shù)的調(diào)整,以及對(duì)SSCOM串口助手定時(shí)發(fā)送時(shí)間的更改,得出串口透傳一個(gè)數(shù)據(jù)包最大為83 B,每個(gè)數(shù)據(jù)包之間的時(shí)間間隔不能少于33 ms才不會(huì)產(chǎn)生丟包現(xiàn)象。因此,建議一個(gè)數(shù)據(jù)包為80 B,一秒內(nèi)傳輸?shù)臄?shù)據(jù)包個(gè)數(shù)不要超過30個(gè)。
圖6 串口測試結(jié)果圖
本設(shè)計(jì)主要是在德州儀器(TI)公司提供的半開源ZigBee協(xié)議棧Z?Stack程序基礎(chǔ)上,通過CC2530開發(fā)板實(shí)現(xiàn)終端低功耗串口透明傳輸以及數(shù)據(jù)的采集。因?yàn)閆igBee技術(shù)是一種近距離、低復(fù)雜度、低功耗、低速率、低成本的雙向無線通信技術(shù)。主要用于距離短、功耗低且傳輸速率不高的各種電子設(shè)備之間進(jìn)行數(shù)據(jù)傳輸以及典型的有周期性數(shù)據(jù)、間歇性數(shù)據(jù)和低反應(yīng)時(shí)間數(shù)據(jù)傳輸?shù)膽?yīng)用。所以本設(shè)計(jì)避免了復(fù)雜的通信協(xié)議,網(wǎng)絡(luò)組建方便、快速,采用無線傳輸方式,受地理環(huán)境約束小,低功耗,適合長期野外使用。
[1]劉彥飛,王成,余成波,等.基于ZigBee的數(shù)據(jù)透明傳輸系統(tǒng)的設(shè)計(jì)[J].計(jì)算機(jī)科學(xué),2009,26(4A):76?78.
[2]王小強(qiáng),歐陽駿,黃寧淋.ZigBee無線傳感器網(wǎng)絡(luò)設(shè)計(jì)與實(shí)現(xiàn)[M].北京:化學(xué)工業(yè)出版社,2012.
[3]歐杰峰.基于IEEE 802.15.4的無線傳感器網(wǎng)絡(luò)組網(wǎng)研究[D].杭州:浙江大學(xué),2006.
[4]任志健,王鳳,邱澤敏,等.基于物聯(lián)網(wǎng)的透明傳輸移動(dòng)環(huán)境勘探節(jié)點(diǎn)設(shè)計(jì)[J].實(shí)驗(yàn)室研究與探索,2013(6):103?108.
[5]唐思超.嵌入式系統(tǒng)軟件設(shè)計(jì)實(shí)戰(zhàn):基于IAR Embedded Work?bench[M].北京:北京航空航天大學(xué)出版社,2010.
[6]張少軍.無線傳感器網(wǎng)絡(luò)技術(shù)及應(yīng)用[M].北京:中國電力出版社,2010.
[7]賢武.傳感器原理與應(yīng)用[M].成都:電子科技大學(xué)出版社,1999.
[8]姚仲歡.無線傳感器網(wǎng)絡(luò)中基于網(wǎng)絡(luò)拓?fù)渑c路由的節(jié)能技術(shù)研究[D].南寧:廣西大學(xué),2008.
[9]任秀麗,于海斌.ZigBee無線通信協(xié)議實(shí)現(xiàn)技術(shù)的研究[J].計(jì)算機(jī)工程與應(yīng)用,2007(6):143?145.
[10]孫戈.短距離無線通信及組網(wǎng)技術(shù)[M].西安:西安電子科技大學(xué)出版社,2006.
Realization of data transparent transmission for WSN monitoring system
LIU Xiang?cheng,LEI Bin
(Institute of Electronic and Information Engineering,Xi’an Technological University,Xi’an 710021,China)
ZigBee technology research is benefit for overcoming multiple point,broad area,harsh environment and other is?sues in the field environmental monitoring,as well as realizing wireless transmission of environmental data in field.The previous sensor network could not meet the requirements of zigbee agreement,and could not transmit data through ZigBee network.A low power serial data transparent transmission system through CC2530 terminal in ZigBee network is introduced in this paper,which is based on Z?Stack protocol stack.The system can transmit the data collected through terminal nodes to the coordinator nodes in wireless transparently transmission mode.The system has the advantage of low power consumption,and is suitable for long?term use in the field.
Z?Stack protocol stack;ZigBee network;transparent transmission;low power consumption
TN919?34
A
1004?373X(2015)05?0019?04
劉向誠(1988—),男,陜西西安人,碩士,研究生。主要從事無線傳感器網(wǎng)絡(luò)、ZigBee網(wǎng)絡(luò)的研究。
雷斌(1966—),男,陜西西安人,碩士,副教授。主要從事無線傳感器網(wǎng)絡(luò)、嵌入式系統(tǒng)、地理信息系統(tǒng)等方面的研究。
2014?09?26