管海娃,駱秋琴,徐曉樂
GUAN Hai-wa,LUO Qiu-qin,XIU Xiao-le
(溫州科技職業學院,溫州 325000)
無線傳感網絡技術將信息處理、網絡通信以及傳感器技術結合起來,是獲得傳感信息的最高效的解決方案;它由分布在一定區域內的傳感節點組成,這些節點可以進行無線通信和數據處理,并能夠自動組織為無線網絡。一個典型的無線傳感網絡主要由傳感器節點、匯聚節點和監控終端組成;傳感器節點是無線傳感網絡的基礎組成部分,主要完成數據的采集;匯聚節點收集并管理傳感節點采集到的數據,并將這些數據傳輸到中央監控主機。
無線傳感網絡的傳感節點一般采用電池供電,這無疑限制了節點的能量,從而也就限制了通信帶寬和節點的存儲能力等。無線傳感器網絡的主要特點如下[1]:1)多跳路由:傳感節點有限的能量,決定了其通信范圍較小,所以如果要與遠距離節點通信,就必須利用中間節點進行多跳方式的路由通信;2)自組織:無需額外的網絡設施去架設無線傳感網絡,各個傳感節點可以自組織為無線傳感器網絡,從而進行自動通信;3)由于采用了分布式管理,無線傳感網絡更容易受到網絡安全性威脅,所以無線傳感網絡的安全性問題更加突出。
相對傳統的無線網絡,無線傳感網網絡在網絡體系結構上有很大的區別,網絡體系結構的不同會在很大程度上影響無線網絡的性能。無線傳感器網絡主要包括三部分:應用支撐技術、分層協議和傳感器網絡管理技術。應用支撐技術以分層協議和無線傳感網絡管理技術為基礎,面向上層應用,處于無線傳感器網絡體系結構的最上層,主要可以提供傳感節點定位以及時間同步等;節點定位的目的是確定傳感節點在網絡中的具體位置,應用于溫室環境監控時,節點定位非常重要,可以具體控制定位節點處的溫室環境,如果節點定位錯誤,溫室環境可能產生非常大的偏差。無線傳感網絡主要包括物理層、數據鏈路層、網絡層、傳輸層以及應用層五個層次;物理層直接接收無線傳感信號,數據鏈路層將傳感信號封裝為可以在通信鏈路中傳輸的信息,網絡層主要實現網絡互連和路由功能,傳輸層控制在無線傳感網絡中傳輸的數據流,保證數據的傳輸可靠到達目的地。無線傳感器網絡管理技術主要包括能量管理、服務管理以及網絡安全管理;眾多的無線傳感節點共享數據、相互協作,并且保持一種能量高效性,從而以最少的能量進行數據采集和節點通信。
要真正實現無線傳感網絡節點的功能,需要在硬件和軟件上進行設計,本文在接下來的傳感節點設計中,介紹了溫室無線傳感網絡的硬件結構和軟件設計。
從硬件的角度來看,基于無線傳感網絡的溫室環境監控系統由底層傳感節點、中間網關以及上層PC監控層構成。
微處理器模塊主要完成采集到數據的數據處理。溫室系統和ZigBee協議棧對微處理器做了如下要求[2]:1)8位處理器;2)完全協議棧的只讀存儲器ROM要小于32K,簡單協議棧的只讀存儲器ROM要小于6K;3)協調器要有充足的隨機存儲,以保存傳感節點采集到的數據和路由信息。基于以上要求,本文在設計溫室環境監控系統時,采用AVR系列的單片機,芯片包括ATmega128L,CC2420,DS2401P,AT45DB041以及其他的外圍器件。
CC2420功耗低而且性能比較穩定,能夠保證數據地正確傳輸,利用它開發的無線通信設備數據傳輸率非常高,適合多點對多點的快速組網;另外,設備的發射極部分基于直接上變頻,數據在發送時先被傳輸到數據發送緩存內,而且無線通信硬件自動產生傳輸數據流的頭幀和起始幀。要發送的數據流接下來被擴頻送到數模轉換器,經過上變頻的混頻后,最終被傳輸到天線進行發送[3]。CC2420內部包括33個控制/狀態寄存器,2個寄存器用于訪問先進先出緩沖區,還有15個命令選通寄存器;訪問CC2420的地址信息字節最高位是訪問類型,用于表明是對寄存器還是RAM的訪問;
無線傳感網絡的傳感節點一般只可以通過電池供電,電量的不斷消耗降低傳感器的測量精度。可以在傳感器節點上增加一個基于S812AMC30的穩壓電路,并增加一節電池。另外要注意的是,傳感節點處于睡眠狀態時功耗電流只有7~-8 uA,因此需要選用自身功耗電流較小的LDO作為穩壓裝置。
在本文設計的溫室環境監控系統中,傳感器模塊采用的是數字傳感器SHT11。SHT11在一個芯片上集成了溫濕度傳感器、數模轉換電路、傳感器標定數據以及串行通信接口,可以認為是在一個芯片上的兩種傳感器,可以同時監控溫度和濕度,所以在溫室環境監控中應用較廣。
無線傳感網絡的操作系統要能夠高效地使用無線傳感節點的各種資源,比如內存、低速、低功耗的處理器和傳感器等;在面向無線傳感網絡的操作系統支持下,應用程序間還可以進行并行計算、并行通信等,此時要求操作系統的邏輯控制流程滿足這種并發程度高、執行時間短的要求;另外,無線傳感節點也有很高的模塊化程度,所以應用程序要能夠在不影響系統開銷的情況下,比較容易地控制硬件。
在溫室環境監控系統中,有些場合會用到定時器。定時器會通過調用中斷服務來產生定時中斷。一般而言,設計定時器時多采用軟定時方式;定時器不僅包含了硬件初始化接口、軟定時器設置接口,還包括中斷服務程序:每隔固定的時間間隔就產生中斷,并且每次中斷都比較軟定時器的時鐘變量,一旦軟定時器的時鐘變量與中斷時鐘相匹配,定時監控程序就調用相應的模塊完成定時任務。無線傳感節點與中央監控主機進行串口通信時,使用的是UART(Universal Asynchronous Receiver/Transmitter)接口,UART驅動主要包括UART硬件初始化程序、UART數據包發送接口和UART數據包接收接口。
在通信協議上,為縮短監聽周期,可以在CTS發送狀態周期內周期性地發送SYNC幀,當源節點向目的節點發送數據包時,先生成一個SYNCRTS幀,此SYNC-RTS幀包含目的信息、同步信息以及RT S請求等。目的節點在第一個狀態內收到SYNC-RTS后,生成一個SYNC-CTS幀,此幀包含目的信息、同步信息以及CTS請求。接下來源節點和目的節點開始交換數據,結束后進入睡眠。其他節點占用信道則通過CSMA/CA方式競爭獲得。
溫室環境監控系統采集的參數并不是單一的物理量,而是多元的;基于此,在分析無線傳感網絡通信協議時,采用了ZigBee方式。ZigBee通過組網方式可以采集多達65000個傳感節點的數據,完全可以滿足溫室環境監控的需求;溫室中傳感節點間的通信距離一般在十幾米之內,而ZigBee的有效通信范圍介于10到70米之間,完全滿足實際需要。
基于無線傳感網絡的溫室環境監控系統由傳感節點、匯聚節點、網關以及客戶端組成;傳感節點自組織為無線傳感網絡,并采集溫室環境數據,然后將這些數據傳輸到匯聚節點;匯聚節點處理溫室環境數據,并通過網關將其傳輸到服務器,由服務器對溫室環境數據進行后續處理,并進行監控。
[1] 張武. 無線通訊模塊PTR8000在溫室環境監測中的應用[J]. 農業網絡信息. 2009,6: 32-37.
[2] 張小斌,鄭可鋒,張建成,方正平. 無線傳感網在浙江設施農業大棚中的應用探討[J]. 浙江農業學報. 2011,3:25.
[3] 馮賓. 基于ZigBee無線網絡技術的現代溫室環境檢測系統研究[D]. 安徽農業大學,2010,06,01.
[4] 馮雷,陳雙雙,楊凱盛,謝傳奇. 基于無線傳感器網絡的溫室草莓園監測裝置[D]. 浙江大學,2011,09,28.