《電子技術(shù)應用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設計應用 > 基于ZigBee的溫濕度數(shù)據(jù)無線采集監(jiān)測系統(tǒng)設計
基于ZigBee的溫濕度數(shù)據(jù)無線采集監(jiān)測系統(tǒng)設計
來源:微型機與應用2012年第7期
李永成1,凌 青1,吳 剛1,陳 雷2,秦琳琳1
(1.中國科學技術(shù)大學 自動化系,安徽 合肥 230027; 2.中國人民解放軍63895部隊,河南
摘要: 在ZigBee技術(shù)的基礎上,設計出溫濕度數(shù)據(jù)無線采集監(jiān)測系統(tǒng),實現(xiàn)了監(jiān)測環(huán)境中不同區(qū)域的溫濕度節(jié)點信息實時采集,并將數(shù)據(jù)信息無線發(fā)送給用戶,在用戶終端界面上對環(huán)境的溫濕度進行監(jiān)測。該系統(tǒng)解決了農(nóng)業(yè)監(jiān)測環(huán)境中的通信布線問題,具有成本低、可靠性高、實用性強等優(yōu)點。
Abstract:
Key words :

摘  要:ZigBee技術(shù)的基礎上,設計出溫濕度數(shù)據(jù)無線采集監(jiān)測系統(tǒng),實現(xiàn)了監(jiān)測環(huán)境中不同區(qū)域的溫濕度節(jié)點信息實時采集,并將數(shù)據(jù)信息無線發(fā)送給用戶,在用戶終端界面上對環(huán)境的溫濕度進行監(jiān)測。該系統(tǒng)解決了農(nóng)業(yè)監(jiān)測環(huán)境中的通信布線問題,具有成本低、可靠性高、實用性強等優(yōu)點。
關(guān)鍵詞: 現(xiàn)代農(nóng)業(yè);溫濕度監(jiān)測;無線傳感器網(wǎng)絡;ZigBee技術(shù)

 溫濕度監(jiān)測被廣泛應用于工農(nóng)業(yè)生產(chǎn)中,如溫室、大棚、礦井等場所都會對環(huán)境的溫度和濕度進行定時監(jiān)測,以保證生產(chǎn)要求或植物的最優(yōu)生長條件。如果采用人工定時測量,不但要耗費大量的人力,而且很難做到實時監(jiān)控,特別是在某些高溫場所還有可能造成安全事故。傳感器是監(jiān)測系統(tǒng)中重要的組成部分,但是隨之而來的是布線的復雜和施工的困難,大量的數(shù)據(jù)線纜還存在著短路和斷線的隱患,以及成本高、易老化等問題,這都給系統(tǒng)的調(diào)試和維護增加了難度。無線數(shù)據(jù)通信技術(shù)在實際應用中具有組網(wǎng)簡單、使用方便、擴展性強的優(yōu)點。其中被廣泛采用的是基于ZigBee協(xié)議棧的無線通信技術(shù)[1-3]。
 ZigBee是IEEE 802.15.4協(xié)議的代名詞,該標準定義了RF射頻以及與相鄰設備之間的通信,并在IEEE 802.15.4協(xié)議(PHY層和MAC層)之上,添加了網(wǎng)絡層(NWK)、應用層(APL)和安全服務提供層,如圖1所示[4]。

 與其他無線通信技術(shù)相比,ZigBee技術(shù)的特點是距離短、復雜度低、自組織、功耗低、數(shù)據(jù)速率低、成本低和容量高,適用于對無線傳感器網(wǎng)絡WSN(Wireless Sensor Network)進行遠程數(shù)據(jù)的采集與控制[5]。為此,本文設計出一種基于ZigBee技術(shù)的無線傳感器網(wǎng)絡溫室溫濕度采集監(jiān)測系統(tǒng)。
1 系統(tǒng)構(gòu)成
    基于ZigBee技術(shù)的溫室溫濕度數(shù)據(jù)無線采集監(jiān)測系統(tǒng)通過WSN進行溫濕度信息的采集和發(fā)送,通過上位機監(jiān)控軟件完成數(shù)據(jù)的存儲,并且對溫室中每一個節(jié)點的溫濕度進行監(jiān)測,即在監(jiān)控終端設定溫濕度期望值區(qū)間,當實際值超出該設定范圍時,監(jiān)控界面顯示報警。WSN是由部署在監(jiān)測區(qū)域內(nèi)大量的微型傳感器節(jié)點組成,通過無線通信方式形成一個多跳自組織網(wǎng)絡。它通過各類集成化的微型傳感器協(xié)同完成對環(huán)境信息的實時監(jiān)測、感知和采集,并將信息通過無線方式發(fā)送到用戶終端[6]。網(wǎng)絡中只允許有一個采集節(jié)點充當網(wǎng)關(guān),但允許存在若干個傳感器節(jié)點來完成信息的采集。
 本系統(tǒng)主要由傳感器節(jié)點、采集節(jié)點和監(jiān)控終端組成。監(jiān)控終端由一臺PC和監(jiān)控操作界面組成,負責實時顯示、存儲與處理數(shù)據(jù),并能夠在溫濕度超過設定范圍時報警。傳感器節(jié)點由CC2430-F128芯片、溫濕度傳感器和電源模塊構(gòu)成,負責采集環(huán)境中的溫濕度信息和電壓值(由于溫濕度傳感器需要最低2.7 V的供電,因此需要對電源電壓進行監(jiān)測以便及時更換電源),并以無線方式發(fā)送至采集節(jié)點,以便進行離線的分析和處理。采集節(jié)點由CC2430-F128芯片和電源板構(gòu)成,負責建立網(wǎng)絡,接收傳感器節(jié)點的采集信息,并通過RS232串口將信息發(fā)送到監(jiān)控終端。一個典型的基于ZigBee技術(shù)的溫濕度數(shù)據(jù)無線監(jiān)測系統(tǒng)。共布設9個應用于溫室采集溫濕度信息的傳感器節(jié)點。
2 硬件結(jié)構(gòu)
 傳感器節(jié)點由數(shù)據(jù)處理發(fā)送模塊、溫度傳感器、濕度傳感器和供電板構(gòu)成,如圖2所示。

 數(shù)據(jù)處理發(fā)送模塊選用TI公司的CC2430/31-F128芯片,它具有低成本、低功耗的特點,內(nèi)嵌8 bit的增強型8051單片機、12 bit A/D轉(zhuǎn)換器和2.4 GHz的射頻收發(fā)器,在接收和發(fā)射模式下,電流消耗分別低于27 mA和25 mA[6]。
 電源模塊由一塊供電板和兩節(jié)AA電池構(gòu)成,負責給板上的各硬件模塊供電。
 溫度傳感器選用AD22103芯片,它的供電電壓為3.3 V,適合由電池供電的應用環(huán)境。溫度量程為0℃~100℃。通過外接1 kΩ電阻,使其輸出端與CC2430的P0.1口(內(nèi)嵌ADC的輸入端口為P0.0~P0.7)相連,則傳感器的輸出電壓正比于溫度值。當溫度為0℃時,其輸出電壓為0.25 V;當溫度為100℃時,其輸出電壓為3.05 V。溫度系數(shù)為(Vs/3.3 V)×28 mV/℃,其中Vs為供電電壓。
 濕度傳感器選用霍尼韋爾公司的HIH5030芯片,其工作電壓最低為2.7 V,典型工作電流為200 μA,適合于3 V電池供電系統(tǒng)。通過外接1 kΩ電阻,使其輸出端與CC2430的P0.0口相連,對應相對濕度的電壓輸出接近于線性。利用式(1)和(2)(溫度補償公式),即可由輸出電壓值求出當前濕度值。

3.1 組網(wǎng)
 采集節(jié)點在初始化后確定自己的邏輯類型為采集節(jié)點,由介質(zhì)訪問控制MAC(Media Access Control)層對工作于2.4 GHz波段的16個信道(11~26)進行能量檢測掃描,以檢測可能的干擾。當網(wǎng)絡層(NWK)接收到成功的能量檢測掃描結(jié)果后,以遞增的方式對所測得的能量值進行信道排序,并且拋棄那些能量值超出了允許能量水平的信道,最終在允許選擇的信道中選擇一個編號最小的信道,并設置網(wǎng)絡的個域網(wǎng)絡標識符PanID(Personal Area Network ID)。ZigBee設備對象然后由ZDO(ZigBee Device Object)層進行設備及網(wǎng)絡的初始化,再由網(wǎng)絡層發(fā)送網(wǎng)絡形成請求信息,由ZDO層返回網(wǎng)絡形成確認信息,改變其網(wǎng)絡狀態(tài),得到其網(wǎng)絡地址,并將信息發(fā)給應用層APL(Application Layer),由APL層處理函數(shù)完成建立網(wǎng)絡事件。
傳感器節(jié)點完成初始化后,在APL層確定自己的邏輯類型為終端設備,由MAC層掃描當前存在的網(wǎng)絡。若發(fā)現(xiàn)有網(wǎng)絡存在,由網(wǎng)絡層發(fā)送網(wǎng)絡發(fā)現(xiàn)請求信息,由ZDO層返回網(wǎng)絡發(fā)現(xiàn)確認信息,在ZDO層處理函數(shù)中由網(wǎng)絡層發(fā)送網(wǎng)絡加入請求信息,再由ZDO層返回網(wǎng)絡加入確認信息,并在其處理函數(shù)中更新網(wǎng)絡狀態(tài),得到該節(jié)點網(wǎng)絡地址,并將該信息發(fā)送到APL層,由APL層處理函數(shù)完成加入網(wǎng)絡事件。
3.2 綁定
 綁定是在兩個設備應用層上的邏輯鏈接。它只能在互為“補充”的設備間被建立,即當兩個設備已經(jīng)在它們的簡單描述符結(jié)構(gòu)中登記為相同的命令I(lǐng)D或簇ID(一個簇實際上是一些相關(guān)命令和屬性的集合,這些命令和屬性一起被定義為一個應用接口,被分配一個唯一的簇ID),且一個為輸入一個為輸出時,才能建立綁定。綁定允許應用層發(fā)送信息而無需帶目的地址,由應用支持子層APS(Application Support Sublayer)從它的綁定表中確定目的地址,然后在信息前端加上該目的地址(一對一綁定)或組地址(一對多綁定)來完成信息的發(fā)送。
 采集節(jié)點建立網(wǎng)絡后,通過按鍵處理函數(shù)開啟允許綁定模式。傳感器節(jié)點加入網(wǎng)絡后,ZDO層首先在自己內(nèi)部查找命令I(lǐng)D或簇ID,判斷其是否在傳感器節(jié)點的端點描述符的簇列表中,即查看其在簇列表中的簇號,并判斷是輸出簇還是輸入簇。然后由ZDO層以廣播的形式無線發(fā)送匹配描述符請求和簇信息到允許綁定的設備(即采集節(jié)點)。采集節(jié)點接收到該請求后,在ZDO層處理函數(shù)中解析接收到的簇信息,并在自己的簇列表中查找有無與之匹配的描述符,若存在同樣的簇ID,且與傳感節(jié)點的簇信息互補,則以無線方式發(fā)送匹配描述符響應信息到傳感器節(jié)點。傳感器節(jié)點接收到響應信息后,開始建立綁定表,并存儲發(fā)送過來的采集節(jié)點的網(wǎng)絡地址,同時無線發(fā)送IEEE地址請求到采集節(jié)點,采集節(jié)點接收到該請求信息后,將IEEE地址響應發(fā)送給傳感器節(jié)點,傳感器節(jié)點接收到該響應信息后進行地址更新,存儲與其建立綁定的采集節(jié)點的網(wǎng)絡地址和IEEE地址,完成綁定過程。
 本系統(tǒng)用到9個傳感器節(jié)點。在設備啟動后,每個節(jié)點都會通過上述過程與采集節(jié)點進行綁定,即一個采集節(jié)點與9個傳感器節(jié)點建立綁定(一對多的綁定)。
3.3 采集并發(fā)送數(shù)據(jù)
 傳感器節(jié)點與采集節(jié)點建立綁定后,會在應用層進行數(shù)據(jù)的采集。利用系統(tǒng)定時器和內(nèi)嵌ADC,周期性地采集環(huán)境的溫度、濕度和電壓(方便及時了解節(jié)點的供電情況,若電量不足,及時更換電源)信息,同時根據(jù)其傳感器特性對溫度值和濕度值進行校準處理后,利用綁定方式,以無線形式發(fā)送給采集節(jié)點。采集節(jié)點接收到該信息后,對信息進行格式處理,將16進制信息轉(zhuǎn)換成十進制信息,最后通過RS232串口轉(zhuǎn)USB口發(fā)送到監(jiān)控終端。
4 監(jiān)控終端
 監(jiān)控終端界面由當前時間、節(jié)點對象選擇、溫濕度數(shù)據(jù)接收、數(shù)據(jù)曲線顯示和報警狀態(tài)組成,如圖4所示。

 

 


 在本應用案例中,監(jiān)控終端軟件用VB6.0開發(fā)。VB6.0環(huán)境下提供了MsComm控件,該控件提供串行通信的全部功能,可以實現(xiàn)從串口讀入數(shù)據(jù)或?qū)憯?shù)據(jù)到串口,封裝了通信過程中的底層操作程序,實現(xiàn)了用戶和應用程序之間的異步串行通信,發(fā)送和接收數(shù)據(jù)。
 后臺數(shù)據(jù)庫采用Microsoft Office中的Access數(shù)據(jù)庫,用以存儲和管理所需要的數(shù)據(jù)。它不僅是一個數(shù)據(jù)庫,而且具有數(shù)據(jù)管理功能。數(shù)據(jù)庫中包含多個表,每個表可以分別表示和存儲不同類型的信息;通過建立各個表之間的關(guān)聯(lián),從而將存儲在不同表中的相關(guān)數(shù)據(jù)有機地結(jié)合起來;可以通過創(chuàng)建查詢在一個表或多個數(shù)據(jù)表中檢索、更新和刪除記錄,并且可以對數(shù)據(jù)庫中的數(shù)據(jù)進行各種計算;通過創(chuàng)建聯(lián)機窗體,可以直接對數(shù)據(jù)庫中的記錄執(zhí)行查看和編輯操作[7]。
 數(shù)據(jù)接收區(qū)利用Adodc控件和DataGrid控件完成對數(shù)據(jù)的接收、顯示并存儲到數(shù)據(jù)庫中。
 在節(jié)點選擇框架中,可選擇當前查看某一個節(jié)點的數(shù)據(jù)和曲線。
 通過VB6.0中的PictureBox控件設計出能夠根據(jù)數(shù)據(jù)實時繪制曲線的模塊,將溫濕度數(shù)據(jù)以曲線的形式實時描繪出來,并可以連續(xù)描繪出一天的溫濕度變化曲線,方便對溫濕度變化特征進行觀察和分析,如圖5所示。

 在報警狀態(tài)框架中,可以設定監(jiān)控環(huán)境的溫濕度控制范圍。當環(huán)境中的溫濕度在設定范圍內(nèi)時,以綠色燈顯示正常狀態(tài);當超出設定范圍時,以紅燈進行報警,以便及時采取控制措施,使其溫濕度控制在最優(yōu)的環(huán)境允許范圍內(nèi),顯示界面如圖6所示。
 本文將CC2430與外接溫濕度傳感器連接,并利用上位機監(jiān)控終端實現(xiàn)了基于ZigBee的溫濕度數(shù)據(jù)無線采集監(jiān)測系統(tǒng)。該系統(tǒng)能夠解決在傳統(tǒng)傳感器應用中的布線問題,降低了成本、維護安全,能實現(xiàn)對環(huán)境中多個區(qū)域的溫濕度的實時無線采集和監(jiān)測,在工農(nóng)業(yè)等方面具有廣闊的應用前景。系統(tǒng)還具有較強的移植性,只要更換采集節(jié)點中的傳感器就能對其他參量進行采集監(jiān)測。目前該系統(tǒng)在溫室溫濕度采集監(jiān)測上得到了應用。
參考文獻
[1] UNHAWIWAT M, MANOYUT P. Wireless Sensor Network for rubber orchard monitoring and alerting systems[C]. 2010 Second International Conference on Computer Engineering and Applications, 2010: 156-160.
[2] Zhang Xinrong, Chang Bo. Research of temperature and humidity monitoring system based on WSN and fuzzy control[C]. 2011 International Conference on Electronics and Optoelectronics (ICEOE 2011), 2011: V4-300-V4-303.
[3] 張軍,吳建鋒.基于無線傳感器網(wǎng)絡的溫濕度檢測系統(tǒng)[J].杭州電子科技大學學報,2010,12.
[4] 丁飛,張西良.ZigBee技術(shù)的硬件實現(xiàn)模式分析[EB/OL].http://www.armsky.net/articles/zigbee/671099428173.html.2008.
[5] 高守偉,吳燦陽.ZigBee技術(shù)實踐教程—基于CC2430/31的無線傳感器網(wǎng)絡解決方案[M].北京:北京航空航天大學出版社,2009.
[6] 李文仲,段朝玉.ZigBee2006無線網(wǎng)絡與無線定位實戰(zhàn)[M].北京:北京航空航天大學出版社,2008.
[7] 孟未來.基于無線傳感器網(wǎng)絡技術(shù)的溫濕度數(shù)據(jù)采集系統(tǒng)的研制[D].沈陽:沈陽工業(yè)大學,2007.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。