袁思捷 鄒云峰
摘 要:本設(shè)計(jì)利用ZigBee協(xié)議構(gòu)建一個(gè)無(wú)線(xiàn)傳感器網(wǎng)絡(luò)系統(tǒng)。傳感器節(jié)點(diǎn)采集各位置的溫濕度數(shù)值,通過(guò)ZigBee協(xié)議經(jīng)無(wú)線(xiàn)網(wǎng)絡(luò)傳輸?shù)缴衔粰C(jī),上位機(jī)可以實(shí)時(shí)顯示各傳感器節(jié)點(diǎn)的溫濕度值,并根據(jù)各監(jiān)控點(diǎn)不同的溫濕度要求設(shè)置不同的溫濕度報(bào)警值。
關(guān)鍵詞:ZigBee 無(wú)線(xiàn)溫度監(jiān)控 系統(tǒng)設(shè)計(jì)
中圖分類(lèi)號(hào):TP274.4 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1672-3791(2018)02(a)-0022-02
隨著計(jì)算機(jī)技術(shù)、信息技術(shù)以及無(wú)線(xiàn)移動(dòng)通信技術(shù)的迅速發(fā)展,各種新的無(wú)線(xiàn)網(wǎng)絡(luò)通信技術(shù)不斷涌現(xiàn),如2G、3G、4G等移動(dòng)通信技術(shù)以及Bluetooth、Z-wave、WiFi、RFID、ZigBee等無(wú)線(xiàn)短距離通信技術(shù),它們?cè)絹?lái)越被人們所熟悉和應(yīng)用。然而,這些無(wú)線(xiàn)通信技術(shù)的設(shè)備系統(tǒng)復(fù)雜度不同,功耗差異較大、成本差異較大,它們有各自的使用領(lǐng)域。在數(shù)據(jù)采集系統(tǒng)、智能家居等領(lǐng)域ZigBee是最好的選擇。其中ZigBee作為一種低復(fù)雜度、低功耗、低成本的低速率無(wú)線(xiàn)連接技術(shù)越來(lái)越被人們所重視,應(yīng)用ZigBee技術(shù)的無(wú)線(xiàn)設(shè)備已成為業(yè)界的一個(gè)熱點(diǎn)。本文設(shè)計(jì)一種基于ZigBee的溫濕度監(jiān)控系統(tǒng),利用CC2530通信模塊組建無(wú)線(xiàn)個(gè)域網(wǎng)絡(luò),并實(shí)現(xiàn)了數(shù)據(jù)的傳輸與保存。
1 基于ZigBee的無(wú)線(xiàn)溫濕度監(jiān)控系統(tǒng)方案設(shè)計(jì)
無(wú)線(xiàn)網(wǎng)絡(luò)有多種,比如藍(lán)牙、WiFi。但是用藍(lán)牙或WiFi用于溫濕度監(jiān)控系統(tǒng)中傳輸數(shù)據(jù)缺點(diǎn)非常明顯,若用藍(lán)牙4.0組網(wǎng)節(jié)點(diǎn)數(shù)非常有限不能超過(guò)15個(gè)節(jié)點(diǎn),沒(méi)有網(wǎng)絡(luò)自愈功能。若用WiFi組網(wǎng)能力差、功耗高、安全性低。本設(shè)計(jì)用ZigBee構(gòu)建樹(shù)形拓?fù)浣Y(jié)構(gòu)無(wú)線(xiàn)個(gè)域網(wǎng),其優(yōu)勢(shì)在于功耗低,自組網(wǎng)能力強(qiáng),抗干擾能力比藍(lán)牙強(qiáng)。ZigBee網(wǎng)絡(luò)節(jié)點(diǎn)硬件的核心是微處理器。微處理器模塊在無(wú)線(xiàn)收發(fā)模塊的協(xié)作下完成ZigBee網(wǎng)絡(luò)的建立與維護(hù),數(shù)據(jù)采集與處理。本設(shè)計(jì)采用TI公司的最新的CC2530f256芯片,它集微處理器模塊和無(wú)線(xiàn)收發(fā)模塊于一體。系統(tǒng)結(jié)構(gòu)框圖如圖1所示。
2 監(jiān)控系統(tǒng)的硬件部分
系統(tǒng)由協(xié)調(diào)器、路由器、終端和上位機(jī)組成。其中協(xié)調(diào)器由無(wú)線(xiàn)收發(fā)模塊CC2530、電源、CH340轉(zhuǎn)換電路組成。其作用是建立無(wú)線(xiàn)個(gè)域網(wǎng),匯聚終端收集的溫濕度數(shù)據(jù),通過(guò)CH340轉(zhuǎn)換電路與上位機(jī)進(jìn)行串口通信。路由器由無(wú)線(xiàn)收發(fā)模塊CC2530、電源組成,其作用是為數(shù)據(jù)傳輸提供多跳,提高數(shù)據(jù)的傳輸距離。終端由無(wú)線(xiàn)收發(fā)模塊CC2530、電源、DHT11溫濕度傳感器組成,負(fù)責(zé)數(shù)據(jù)的采集。上位機(jī)實(shí)時(shí)顯示來(lái)自串口的數(shù)據(jù)和監(jiān)控節(jié)點(diǎn)的運(yùn)行情況。
3 軟件部分
首先初始化整個(gè)系統(tǒng),啟動(dòng)協(xié)調(diào)器建立一個(gè)個(gè)域網(wǎng),然后路由節(jié)點(diǎn)和傳感器節(jié)點(diǎn)尋找并加入網(wǎng)絡(luò),協(xié)調(diào)器即可與終端節(jié)點(diǎn)進(jìn)行綁定。綁定完成后傳感器節(jié)點(diǎn)即可采集數(shù)據(jù)并發(fā)送數(shù)據(jù),協(xié)調(diào)器節(jié)點(diǎn)負(fù)責(zé)接收數(shù)據(jù),并通過(guò)CH340傳至PC顯示。
協(xié)調(diào)器是整個(gè)個(gè)域網(wǎng)的核心,協(xié)調(diào)器負(fù)責(zé)創(chuàng)建和維護(hù)整個(gè)網(wǎng)絡(luò),為每個(gè)加入網(wǎng)絡(luò)的設(shè)備分配一個(gè)網(wǎng)絡(luò)地址。協(xié)調(diào)器啟動(dòng)時(shí)其網(wǎng)絡(luò)地址自動(dòng)設(shè)置為0×0000,所以路由和終端要跟協(xié)調(diào)器通信時(shí)設(shè)置其目標(biāo)地址為0×0000即可。
路由器的編程較協(xié)調(diào)器和終端的編程簡(jiǎn)單,設(shè)置啟動(dòng)類(lèi)型后負(fù)責(zé)轉(zhuǎn)發(fā)協(xié)調(diào)器與終端的數(shù)據(jù)只起中繼的作用。當(dāng)然路由的PANID和選擇的信道必須與協(xié)調(diào)器保持一致這樣才能加入網(wǎng)絡(luò)進(jìn)行通信。主要程序如下。
uint16 GenericApp_ProcessEvent( uint8 task_id, uint16 events )//事件處理函數(shù),當(dāng)路由器成功加入網(wǎng)絡(luò)后調(diào)用aps_AddGroup()函數(shù)加到組中。
終端負(fù)責(zé)采集溫濕度發(fā)送給路由或協(xié)調(diào)器。因此終端節(jié)點(diǎn)的軟件設(shè)計(jì)除了本身的終端節(jié)點(diǎn)的功能外還要設(shè)計(jì)溫濕度采集部分。其信道選擇需跟協(xié)調(diào)器保持一致否則無(wú)法進(jìn)行通信。
在PC端用VB6.0編寫(xiě)兩個(gè)上位機(jī)程序,一個(gè)是服務(wù)器上位機(jī)程序,另一個(gè)是客戶(hù)端上位機(jī)程序,兩程序可以在局域網(wǎng)內(nèi)通過(guò)IP地址進(jìn)行通信。服務(wù)器上位機(jī)讀取來(lái)自串口的數(shù)據(jù)實(shí)時(shí)顯示在文本框中并保存起來(lái)供過(guò)后查看??蛻?hù)端與服務(wù)器連接成功后接收來(lái)自服務(wù)器的數(shù)據(jù)并實(shí)時(shí)顯示出來(lái),與服務(wù)器一樣有數(shù)據(jù)保存功能。
4 測(cè)試結(jié)果
打開(kāi)上位機(jī)程序后選擇合適的串口與波特率后打開(kāi)串口此時(shí)我只用了3個(gè)終端節(jié)點(diǎn)。打開(kāi)串口后設(shè)置報(bào)警值實(shí)時(shí)畫(huà)面如圖2所示,報(bào)警時(shí)指示燈為紅色正常時(shí)指示燈為綠色。在客戶(hù)端輸入服務(wù)器的IP地址連接成功后能接受來(lái)自服務(wù)器的數(shù)據(jù)。目前服務(wù)器跟客戶(hù)端只能在局域網(wǎng)內(nèi)通信,后期筆者會(huì)改進(jìn)服務(wù)器與客戶(hù)端實(shí)現(xiàn)兩者在以太網(wǎng)進(jìn)行通信,這樣可以大大提高監(jiān)控距離。
5 結(jié)語(yǔ)
本文介紹了基于ZigBee無(wú)線(xiàn)溫濕度監(jiān)控系統(tǒng)的設(shè)計(jì)過(guò)程,系統(tǒng)分軟件和硬件部分。本設(shè)計(jì)是以ZigBee無(wú)線(xiàn)通信為基礎(chǔ)結(jié)合局域網(wǎng)通信實(shí)現(xiàn)遠(yuǎn)程監(jiān)控。同時(shí)ZigBee組網(wǎng)方便,網(wǎng)絡(luò)容量大可以滿(mǎn)足工農(nóng)業(yè)多點(diǎn)監(jiān)控的需求有廣泛的應(yīng)用前景。在設(shè)計(jì)時(shí)也考慮了使用的便捷性,充分體現(xiàn)在上位機(jī)的友好界面上。當(dāng)然本設(shè)計(jì)也存在缺陷不能連接互聯(lián)網(wǎng),數(shù)據(jù)保存容量有限,這些以后都會(huì)進(jìn)行研究和改善。
參考文獻(xiàn)
[1] 王小強(qiáng).ZigBee無(wú)線(xiàn)傳感器網(wǎng)絡(luò)設(shè)計(jì)與實(shí)現(xiàn)[M].北京:化學(xué)工業(yè)出版社,2012.
[2] 廉小親,楊曉玲,張曉力,等.空調(diào)遠(yuǎn)程控制系統(tǒng)終端控制器的低功耗設(shè)計(jì)[J].自動(dòng)化與儀器表,2012,27(10):57-60.
[3] 周游,方濱,王普.基于ZigBee技術(shù)的智能家居無(wú)線(xiàn)網(wǎng)絡(luò)系統(tǒng)[J].電子技術(shù)應(yīng)用,2005,31(9):37-40.
[4] 蔣挺,趙成林.紫峰技術(shù)及應(yīng)用[M].北京:北京郵電大學(xué)出版社,2006.
[5] 李新.基于CC2530的ZigBee網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)計(jì)[J].可編程控制器與工廠(chǎng)自動(dòng)化,2011(3):97-98.
[6] 高輝.ZigBee技術(shù)在智能公交調(diào)度系統(tǒng)上的應(yīng)用研究[D].長(zhǎng)安大學(xué),2008.
[7] 孫靜林,徐鋒,趙明忠.基于ZigBee技術(shù)的溫濕度數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2011,34(21):163-164.
[8] 蔣泰,蔣莉.基于ZigBee技術(shù)的低成本無(wú)線(xiàn)數(shù)傳系統(tǒng)的實(shí)現(xiàn)[J].廣西大學(xué)學(xué)報(bào):自然科學(xué)版,2005,30(4):332-336.