具有無線通信功能的環(huán)境溫度監(jiān)測系統(tǒng)
摘要:設計了一種基于ZigBee和GPRS的環(huán)境溫度遠程無線監(jiān)測系統(tǒng)。該系統(tǒng)通過溫度傳感器采集數據后,在CC2430單片機內部作以處理,并控制GPRS模塊進行無線數據傳輸,闡述了用VB6.0實現數據分析處理的軟件設計。通過對采集的數據進行曲線分析,數據采集精度控制在了5%以內,穩(wěn)定性好。
關鍵詞:環(huán)境溫度;GPRS;ZigBee;無線監(jiān)測系統(tǒng)
溫度在工農業(yè)生產、科研以及辦公設備自動化領域中,是一種十分重要的數據。溫度的測量和控制在儲糧倉庫、智能樓宇空調控制及其他的工農業(yè)生產和科學研究中應用廣泛。文中介紹了一種環(huán)境溫度監(jiān)測系統(tǒng)可以實時多點監(jiān)測庫房或其他對溫度要求十分嚴格的場所,并通過無線協調器控制GPRS進行聯網實時顯示,進行溫度監(jiān)測。報警還可通過GPRS以短信的方式發(fā)送到管理員的手機上,以便及時處理。
1 系統(tǒng)總體構成
系統(tǒng)以CC2430單片機為核心,作為下位機實現數據采集、數據處理、數據存儲、數據傳輸功能。無線傳感器監(jiān)測網絡由多個無線傳感器節(jié)點、無線網關和帶有GPRS嵌入式系統(tǒng)組成,實時測量溫度參數,所有節(jié)點采集的現場數據通過ZigBee無線通信技術最終路由到網關節(jié)點,由網關節(jié)點將全部數據傳輸給GPRS模塊,最終通過GPRS和Internet網絡,將數據轉發(fā)至遠程數據監(jiān)控中心。在VB6.0編程環(huán)境下實現了上位機對下位機的控制和數據的存儲、處理、分析。上位機和下位機之間采用無線通信方式進行傳輸。該系統(tǒng)采用ZigBee的網狀網絡結構進行數據采集,ZigRee網狀網絡結構如圖1所示。系統(tǒng)整體結構組成如圖2所示。
2 硬件電路設計
2.1 傳感器節(jié)點硬件設計
根據無線傳感器網絡的應用需求以及功能要求,無線網絡傳感器節(jié)點主要包括傳感器單元、處理器單元、射頻單元等。傳感器DS18B20負責采集溫度參數。數據提供給CC2430進行處理、分析并將數據發(fā)送給ZigBee協調器節(jié)點。
2.2 ZigBee協調器節(jié)點設計
ZigBee協調器節(jié)點與GPRS模塊SIM300進行有線的串口通信,節(jié)點單片機CC2430將從傳感器節(jié)點處獲得的溫度數據經行地址分類和處理,通過RS-232通信接口進行傳輸,單片機可以發(fā)送AT指令對SIM300進行控制,設置發(fā)送模式,發(fā)送短消息進行數據傳輸??梢钥焖?、安全、可靠地實現系統(tǒng)方案中的數據和短消息服務。
3 軟件設計
文中應用IAR Embedded Workbench開發(fā)環(huán)境,在TI提供的ZStack-1.4.2-1.1.0協議棧的基礎上,編寫了本系統(tǒng)的應用程序代碼。 ZStack協議棧提供了一些應用接口,如aplFormNetwork()、aplJoinNetwork()、aplSendMSG()等函數,用戶可以通過調用這些函數來編寫自己的開發(fā)與應用程序。單片機CC2430通過串行通信對SIM300模塊進行寫AT指令來完成GPRS模塊的無線通訊功能。
3.1 傳感器節(jié)點數據采集
當CC2430內部的定時器定時溢出時,從休眠狀態(tài)喚醒傳感器。程序啟動后,首先對傳感器節(jié)點內的各模塊進行初始化工作。然后進行各模塊的配置,配置完成后進行傳感器數據采集,數據采集完后統(tǒng)一發(fā)送到網關節(jié)點。在數據采集次數達到規(guī)定次數時,傳感器節(jié)點進入休眠狀態(tài),等待下一次數據采集。傳感器節(jié)點數據采集流程圖如圖3所示。
3.2 ZigBee網絡的建立和加入
3.2.1 網絡的建立
在ZigBee網絡中,網絡協調器具有建立一個網絡、維護鄰居設備表、對邏輯網絡地址進行分配、允許設備MAC層/應用層的連接或斷開網絡的功能。網絡協調器在進行一些初始化之后,調用aplFormNetwork()來建立網絡。協調器通過掃描一個空信道來建立一個新的網絡,然后選擇一個隨機的PANID并開始監(jiān)聽此信道。同時協調器還有一個目前連接設備的列表,以支持其他設備加入網絡。網絡建立程序如下:
3.2.2 網絡的加入
當一個網絡建立成功后,便要考慮路由節(jié)點和RFD節(jié)點如何加入到網絡中去。路由節(jié)點和RFD節(jié)點通過調用alJoinNetwork()函數加入到協調器建立的網絡中。路由節(jié)點和RFD節(jié)點掃描信道找到協調器并申請加入網絡,獲取協調器的地址。同時將自己的地址發(fā)送給協調器。網絡加入成功后,網絡節(jié)點則進入休眠狀態(tài),直到有命令或數據發(fā)送時才被喚醒。網絡加入程序如下:
3.3 ZigBee數據收發(fā)
整個無線網絡中的網關節(jié)點承擔網絡管理和數據收發(fā)的功能。網絡管理主要負責組建無線網絡并分配網絡地址。數據收發(fā)功能主要是接收傳感器節(jié)點的數據并通過GPRS網絡發(fā)送給遠程數據中心。ZigBee收發(fā)數據流程如圖4所示。
3.4 上位機設計
基于VB6.0編程環(huán)境下,使用MSComm控件完成上位機控制軟件設計,實現了與下位機通信和對下位機上傳數據的處理、存儲、顯示以及數據曲線分析。MSComm控件通過串行端口傳送和接收數據,提供了基本的串行通信功能。TeeChart控件可以使各種數據以曲線方式進行動態(tài)和實時顯示。
4 結束語
基于ZigBee技術、以CC2430無線微處理器模塊與GPRS模塊為核心的環(huán)境溫度遠程監(jiān)測系統(tǒng),開發(fā)周期短、處理能力強、擴展性好,能快速可靠地進行遠程監(jiān)測和控制;開放式的通信協議,實現了與第三方設備接口的通信,具有較強的可擴展性,是現代農業(yè)監(jiān)測的發(fā)展方向。





