摘 要: 準確測量糧倉內的溫度是保障糧食質量的關鍵。介紹了一種基于ZigBee協議的智能糧倉溫度監測系統。此系統基于CC2530芯片完成了協調器節點和傳感器終端節點的硬件設計,基于ZigBee2007協議棧與IAR開發平臺完成了軟件設計,最終實現了糧倉無線測溫功能。經測試表明,本溫度監測系統可以準確地測量溫度,對環境適應性強,具備使用性。
關鍵詞: ZigBee;無線測溫;CC2530
0 引言
維持一定數量、品種和品質的糧食儲備,是保障國家糧食安全的重要措施。危害我國儲糧的因素包括霉變、害蟲等多個方面。而上述危害都與糧倉的溫度有密切關系。因此,準確、實時的監控糧倉內不同地方的溫度,是儲糧系統必須解決的關鍵問題。由于糧倉內的環境限制,使用有線方式建立網絡有諸多不便,而無線傳感網絡則對環境具有極大適應性,與有線方式相比,優勢明顯。在無線傳感網絡中,ZigBee技術由于其低復雜度、低功耗、低速率、低成本的特點,在傳輸距離短、傳輸速率要求不高的情況下,具備獨特的優勢。
基于上述優點以及溫度監控的重要性,本文開展了基于ZigBee協議的無線傳感網絡溫度監測系統設計。首先基于CC2530芯片完成了協調器節點與傳感器終端節點的硬件設計,然后基于ZigBee2007協議棧完成了軟件設計,并通過實際溫度測試實驗,驗證了該系統的有效性。
1 智能糧倉溫度監測系統
智能糧倉溫度監測系統是利用無線傳感網絡及ZigBee技術,實現對糧倉溫度實時監測。從技術架構上來看,智能糧倉溫度監測系統可以分為感知層、傳輸層和應用層。感知層承擔感知溫度信息的任務并執行來自上層的命令,傳輸層負責傳遞感知層獲得的信息,應用層則主要進行信息的處理,并提供人機交互界面。此監測系統中,終端節點構成感知層,用以測量溫度,協調器作用在傳輸層,負責傳遞溫度信息,而上位機則位于應用層,實現對溫度信息進行處理,并通過界面進行顯示。系統架構如圖1所示。
2 硬件系統設計
本文實驗中,ZigBee芯片選用CC2530芯片。CC2530芯片上系統(SoC)是高度集成的解決方案,可支持快速、廉價的ZigBee節點的構建。此芯片整合了業界領先的2.4 GHz IEEE 802.15.4/ZigBee RF收發機,以及工業標準的增強型8051MCU的卓越性能,該系統還包括了8 KB的RAM,大容量閃存,并且集成了AES安全協處理器,以及許多其他強大特性[1]。硬件設計的工作主要分為兩部分:溫度控制中心(即協調器)硬件設計以及溫度監測終端硬件設計。硬件系統設計完畢后的運行狀態如圖2所示,其中上方的兩個節點為傳感器終端節點,下方的一個節點為協調器節點。
協調器節點的硬件設計主要是基于TI公司開發的ZigBee開發套件,利用RS232串口實現協調器與上位機之間的通信。如圖2中所示,協調器利用RS232串口線與電腦相連接,將接收到的信息傳遞給此上位機[2]。
溫度監測終端硬件設計的主要工作是在原開發套件的基礎上增加了外接電路的設計,集成了溫度傳感器、信號LED燈等外置原件。
此硬件系統具有優良的無線接收靈敏度和強大的抗干擾性能,功能較為完善。
3 軟件系統設計
3.1 ZigBee協議
ZigBee是基于IEEE802.15.4標準的低功耗局域網協議。根據國際標準規定,ZigBee技術是一種短距離、低功耗的無線通信技術。這一名稱(又稱紫蜂協議)來源于蜜蜂的八字舞,由于蜜蜂(bee)是靠飛翔和“嗡嗡”(zig)地抖動翅膀的“舞蹈”來與同伴傳遞花粉所在方位信息,也就是說蜜蜂依靠這樣的方式構成了群體中的通信網絡[3]。其特點是近距離、低復雜度、自組織、低功耗、低數據速率。主要適合用于自動控制和遠程控制領域,可以嵌入各種設備。簡而言之,ZigBee就是一種低成本、低功耗的近距離無線組網通信技術。
3.2 ZigBee協議棧
協議定義的是一系列的通信標準,通信雙方需要共同按照這一標準進行正常的數據收發,而協議棧就是協議的具體實現形式,通俗的理解為用代碼實現的函數庫,以便于開發人員調用。ZigBee協議體系結構共有5部分組成:物理層、MAC層、網絡層、安全層和應用技術層。而ZigBee協議將其分為了兩部分,其中IEEE 802.15.4定義了物理層和MAC層技術規范,ZigBee聯盟定義了網絡層、安全層和應用技術層規范。ZigBee協議棧就是將各個層定義的協議棧都集合在一起,以函數的形式實現,并給用戶提供一些應用層API,供用戶使用。ZigBee協議棧結構如圖3所示[4]。
3.3 ZigBee模塊軟件設計
軟件設計主要分為ZigBee模塊軟件設計與溫度監測中心上位機軟件設計。
ZigBee模塊軟件設計基于IAR開發平臺以及ZigBee2007協議棧,并使用C語言進行開發[5]。其中,終端節點軟件設計主要實現了溫度信息的采集并遵從ZigBee協議發送給協調器,協調器節點的軟件設計實現了對終端節點傳遞信息的接收,并定義了與上位機間的通信協議,實現了與上位機之間的通信[6]。
圖4展示了協調器節點與終端節點的運行流程[7]。協調器與終端節點都需要在運行開始時進行初始化操作,此后由協調器建立網絡,并等待終端節點的加入,終端節點則在檢測到網絡后加入網絡。入網成功后終端節點就可以通過基于ZigBee協議的無線傳感網絡進行信息的傳遞并由協調器負責接收,再將收到的信息通過串口傳遞給上位機[8]。
3.4 上位機軟件設計
上位機軟件設計基于Microsoft Visual Studio 2010開發平臺并使用C#進行開發,本設計提供了人機交互界面[9],使用RS232串口實現協調器與上位機的通信,并遵循與協調器之間的通信協議,成功接收來自協調器的信息,實現對溫度的監測。通信協議的協議幀格式如圖5所示[10]。
P1為幀開始,表征新的一幀的開始,P2為節點編號,用以區分不同的終端節點,P3為幀長度,P4為所測得的溫度數據,P5為命令字,用來區分幀的功能,P6為校驗碼,用來保證數據的完整性與準確性[11]。
上位機軟件設計流程圖如圖6所示。界面效果如圖7所示。
4 實驗結果與分析
為了驗證此溫度監測系統的有效性,利用模擬糧倉進行了實驗。實驗的測溫系統由15個終端節點與一個協調器節點組成。實驗中將終端節點分置于模擬糧倉內預定位置,協調器置于模擬糧倉外,并同時用溫度計測量模擬糧倉內的溫度。為了驗證此溫度監測系統測量溫度的準確性,分別在7點30分、13點與18點進行測試,測試所得結果如表1所示。
通過最終所獲得的溫度平均誤差可以看出,此無線測溫系統所測溫度精確度較高。由此可見,基于ZigBee協議所設計的溫度監測系統是有效的,充分發揮了ZigBee的優勢,具有一定的實用性,可以用于糧倉內的溫度監測[12]。
參考文獻
[1] 金純,羅祖秋,羅鳳,等.ZigBee技術基礎及案例分析[M].北京:國防工業出版社,2008.
[2] 何文德,楊鳳年,劉光燦.無線傳感器網絡在文物保護中的應用[J].安防科技,2007(7):25-27.
[3] 吳光榮,章劍雄.基于Zigbee技術的無線智能照明系統[J].現代電子技術,2008,31(14):67-69.
[4] 王銳華,于全.淺析ZigBee技術[J].電視技術,2004(6):33-35.
[5] 李皓.基于ZigBee的無線網絡技術及應用[J].信息技術,2008,32(1):12-14.
[6] 蔣挺,趙成林.紫蜂技術及其應用(IEEE802.15.4)[M].北京:北京郵電大學出版社,2006.
[7] 史作鋒.基于ZigBee技術在無線傳感器網絡中的研究與應用[D].武漢:武漢科技大學,2009.
[8] 李文仲,段朝玉.ZigBee2006無線網絡與無線定位實戰[M].北京:北京航空航天大學出版社,2008.
[9] 夏普.Visual C# 2005從入門到精通[M].周靖,譯.北京:清華大學出版社,2006.
[10] 羅賓遜,內格爾.C#高級編程(第3版)[M].李敏波,譯.北京:清華大學出版社,2008.
[11] 瞿雷.ZigBee技術及應用[M].北京:高等教育出版社,2006.
[12] 許勇.基于ZigBee的Mesh網絡的研究[D].合肥:中國科學技術大學,2011.