基于CC2530的Zigbee2007/PRO協(xié)議的無線溫濕度系統(tǒng)設(shè)計
摘要:設(shè)計了一種基于CC2530的Zigbee2007/PRO協(xié)議無線溫濕度監(jiān)控系統(tǒng),以網(wǎng)狀網(wǎng)的組網(wǎng)方式有效解決現(xiàn)在市場上的各種問題,如檢測系統(tǒng)監(jiān)控范圍小,監(jiān)測節(jié)點數(shù)少等缺陷。該系統(tǒng)還具有自組織及自修復(fù)網(wǎng)絡(luò)的能力,在受干擾后可以動態(tài)切換到另一個信道工作。測試表明本系統(tǒng)能夠?qū)崿F(xiàn)對多個分散位置同時進(jìn)行溫濕度測試,并具備實時監(jiān)控功能,不僅接收數(shù)據(jù)的準(zhǔn)確率高,而且功耗低,具有很強(qiáng)的實用價值。
關(guān)鍵詞:CC2530;Zigbee2007/PRO;溫濕度監(jiān)控;無線傳感網(wǎng)絡(luò);網(wǎng)狀網(wǎng)
當(dāng)今計算機(jī)技術(shù)跟現(xiàn)代通信技術(shù)的進(jìn)步與發(fā)展使得Zigbee技術(shù)日漸成熟,本系統(tǒng)組建了一個基于Zigbee2007/PRO協(xié)議的網(wǎng)狀網(wǎng)網(wǎng)絡(luò),采用了新型低功耗的傳感設(shè)備進(jìn)行溫濕度信息采集,對終端節(jié)點進(jìn)行了設(shè)計使得終端節(jié)點可以自主發(fā)現(xiàn)和加入網(wǎng)絡(luò)并綁定,隨即將實時檢測到的溫濕度數(shù)據(jù)發(fā)送給終端節(jié)點。無線傳感器網(wǎng)絡(luò)這一綜合了傳感器技術(shù)、信息處理技術(shù)和無線通信技術(shù)的新興交叉學(xué)科目前已廣泛應(yīng)用于自動控制、環(huán)境監(jiān)測等領(lǐng)域。結(jié)合Zigbee2007/PRO協(xié)議的特點和當(dāng)今市場對環(huán)境監(jiān)控的要求,設(shè)計了基于CC2530的Zigbee2007/PRO協(xié)議的無線溫濕度監(jiān)控系統(tǒng),并通過實踐對系統(tǒng)中的關(guān)鍵部分進(jìn)行了可行性分析。
TI/Chipcon公司在IEEE802.15.4標(biāo)準(zhǔn)和ZigBee聯(lián)盟所推出的ZigBee2006規(guī)范的基礎(chǔ)上,發(fā)布并認(rèn)證了全功能的ZigBee 2006協(xié)議棧。該協(xié)議棧全用C語言編寫并向后兼容。由于Zigbee2006改進(jìn)后仍然無法滿足需求,因此在Zigbee2006的基礎(chǔ)上又誕生了實用性更強(qiáng)的Zigbee20 07/PRO,但對現(xiàn)在的用戶來說只需要了解應(yīng)用層函數(shù)以及如何合適調(diào)用這些函數(shù)即可搭建出具有穩(wěn)定性能和完善功能的Zigbee網(wǎng)絡(luò)了。
1 系統(tǒng)設(shè)計與分析
TI公司的推出的CC2530是第二代的Zigbee RF收發(fā)器,主要用于2.4 GHz的ISM頻段。其集成了1個高性能的RF收發(fā)器和1個優(yōu)化的低功耗的8051微控制器內(nèi)核,具有優(yōu)秀的接收器靈敏度和優(yōu)越的抗干擾性。同時,CC2530可以配備TI的RemoT I,ZStack或SimpliciT I等專有或標(biāo)
準(zhǔn)兼容的網(wǎng)絡(luò)協(xié)議棧來簡化開發(fā)。Zigbee2007/PRO協(xié)議棧Zstack-2.3.0是新一代Zigbee芯片CC2520基于Zigbee2007協(xié)議規(guī)范開發(fā)的協(xié)議棧。Zigbee協(xié)議結(jié)構(gòu)采用OSI七層模型。協(xié)議以IEEE802.15.4標(biāo)準(zhǔn)作為通訊基礎(chǔ),定義了物理層(PHY)和媒體訪問控制層(MAC)的標(biāo)準(zhǔn);ZigB ee聯(lián)盟則定義了ZigBee協(xié)議的網(wǎng)絡(luò)層(NWK)、應(yīng)用層(APL)和安全服務(wù)規(guī)范,其結(jié)構(gòu)如圖1所示。
Zigbee無線網(wǎng)絡(luò)可分為星狀網(wǎng)(Star Network)和網(wǎng)狀網(wǎng)兩種拓?fù)浣Y(jié)構(gòu),如圖2(a)、圖2(b)所示。星狀網(wǎng)連接方式比較簡單,加上Zigbee收發(fā)器受限于本身的工作范圍,只能用于組建包含節(jié)點數(shù)比較少而且范圍相對也比較小的無線網(wǎng)絡(luò);網(wǎng)狀網(wǎng)的結(jié)構(gòu)能夠使得無線網(wǎng)絡(luò)范圍大大拓展開的同時也使得無線網(wǎng)絡(luò)中的節(jié)點數(shù)目大大增多,非常適用于位置分散,監(jiān)控節(jié)點需求量大監(jiān)控對象。本系統(tǒng)采用了網(wǎng)狀網(wǎng)結(jié)構(gòu),
主要分為:協(xié)調(diào)器節(jié)點(Coordinator)、路由器節(jié)點(Router)和終端傳感器節(jié)點。系統(tǒng)結(jié)構(gòu)如圖3所示。
本系統(tǒng)結(jié)構(gòu)圖中監(jiān)控中心為一臺計算機(jī),主要用于可視化各個終端傳感器節(jié)點檢測到的溫濕度數(shù)據(jù)信息并對數(shù)據(jù)信息進(jìn)行儲存記錄;協(xié)調(diào)器節(jié)點用于組建無線網(wǎng)絡(luò)、分配網(wǎng)絡(luò)位置外、收集終端傳感器節(jié)點檢測到的信息和數(shù)據(jù)傳送工作;路由器節(jié)點的主要為尋找、建立和修復(fù)資料封包,收集并轉(zhuǎn)發(fā)與其形成路由路徑的下級終端傳感器節(jié)點檢測到的數(shù)據(jù)信息;終端傳感器節(jié)點主要負(fù)責(zé)檢測所在位置的實時溫濕度數(shù)據(jù)信息并發(fā)送給其上級節(jié)點,最終使得檢測到的溫濕度數(shù)據(jù)信息傳輸?shù)絽f(xié)調(diào)器節(jié)點,同時具備路南器節(jié)點的能力。
2 系統(tǒng)硬件電路設(shè)計
本系統(tǒng)溫濕度檢測部分選用了性能優(yōu)異的數(shù)字式溫濕度傳感器SHT15和CC22530 ZigBee模塊來搭建SHT15集成了1個電容性聚合體測濕敏感元件、1個用能隙材料制成的測溫元件、1與14位的A/D轉(zhuǎn)換器以及串行接口電路濕度傳感器在(10~50℃)正常溫度的工作環(huán)境下誤差低于±0.5℃,濕度的測量在10%RH~80%RH的環(huán)境下誤差低于±2%RH,是個相當(dāng)穩(wěn)定的溫濕度傳感器。
終端傳感器節(jié)點硬件部分的工作電壓由5 V干電池提供,在SHT15電源引腳VCC與GND之間加了1個100 nF去耦濾波電容C1;SHT15的2、3端口分別與CC2530F256ZigBee模塊的P2_1口和P2_2口進(jìn)行連接,SHT15與CC2530之間通過I2C總線技術(shù)進(jìn)行數(shù)據(jù)交換。而協(xié)調(diào)器節(jié)點硬件部分主要使用了RS232串口電路與計算機(jī)進(jìn)行通信,RS232串口部分電路圖如圖4所示,CC2530外圍電路如圖5所示,使用Protel DXP 2004作圖軟件來作圖。
為提高測量的準(zhǔn)確性,本系統(tǒng)在信號轉(zhuǎn)換時候進(jìn)行非線性補(bǔ)償和溫度補(bǔ)償來獲得精確的數(shù)據(jù)。在收到CRC 8是確認(rèn)位后,通過保持ACK高電平來結(jié)束通訊并且自動地進(jìn)入休眠模式。SHT15在信號轉(zhuǎn)換時,進(jìn)行相對濕度信號的非線性補(bǔ)償,測量的分辨率為12 bit,公式如下:
RH linear=-2+0.5*SORH+(-4)*SORH2(%RH)
式中:RH linear為相對濕度修正值,SO RH為傳感器相對濕度測量值。
3 系統(tǒng)軟件設(shè)計
本系統(tǒng)終端傳感器節(jié)點軟件設(shè)計流程如圖6所示。終端傳感器節(jié)點上電并開始工作后,先進(jìn)行初始化工作,分別對硬件還有協(xié)議棧進(jìn)行初始化,初始化后立即搜索附近存在的無線Zigbee網(wǎng)絡(luò)并發(fā)出加入請求。在成功加入該無線Zigbee網(wǎng)絡(luò)之后進(jìn)入休眠模式等待條件巾斷的產(chǎn)生,若中斷產(chǎn)生則對中斷做出判別再作出相應(yīng)的響應(yīng)動作。
協(xié)調(diào)器節(jié)點軟件設(shè)計流程如圖7所示。同終端傳感器節(jié)點類似,協(xié)調(diào)器節(jié)點上電后首先也要對硬件還有協(xié)議棧進(jìn)行初始化。初始化之后進(jìn)行信道搜索和并對搜索到的空閑信道進(jìn)行評估選擇最優(yōu)信道建立ZigBee無線網(wǎng)絡(luò),在網(wǎng)絡(luò)組建成功后檢查是否收到其他節(jié)點的入網(wǎng)請求或控制中心的測量命令,并對這兩種情況作出相應(yīng)的響應(yīng)動作,而在此過程中要檢查網(wǎng)絡(luò)的地址空間是否已滿,如果地址空間已經(jīng)滿了就轉(zhuǎn)到加入網(wǎng)絡(luò)失敗。一旦協(xié)調(diào)器節(jié)點接收到從控制中心發(fā)出的采集溫濕度數(shù)據(jù)的命令時馬上把從終端傳感器節(jié)點上接收到的溫濕度數(shù)據(jù)信息發(fā)送給控制中心。本系統(tǒng)部分程序如下:
4 系統(tǒng)結(jié)果分析
通過使用無線溫濕測量系統(tǒng)在工作環(huán)境中進(jìn)行當(dāng)?shù)丨h(huán)境氣候進(jìn)行測量,為了保證測量的結(jié)果和準(zhǔn)確性,我們在不同的時間進(jìn)行抽查測量,每過5分鐘時間段測量一次,測量一個小時,并用MATLAB對數(shù)據(jù)進(jìn)行分析,溫度測量值與標(biāo)準(zhǔn)值比較圖如圖8所示以及濕度測量值與標(biāo)準(zhǔn)值比較圖如圖9所示。
5 結(jié)束語
文中基于CC2530芯片結(jié)合ZigBee2007/PRO協(xié)議,設(shè)計了一個無線溫濕度監(jiān)測系統(tǒng)并對系統(tǒng)功能做了實際驗證,驗證結(jié)果表明了本系統(tǒng)是切實可行的。系統(tǒng)不僅實現(xiàn)了對多個分散的節(jié)點的溫濕度監(jiān)控和數(shù)據(jù)的準(zhǔn)確傳輸,而且系統(tǒng)采用了網(wǎng)狀網(wǎng)的網(wǎng)絡(luò)結(jié)構(gòu)組建無線網(wǎng)絡(luò)使得監(jiān)控的范圍大幅度擴(kuò)大,在監(jiān)控范圍上比一般的采用星狀網(wǎng)結(jié)構(gòu)搭建網(wǎng)絡(luò)的監(jiān)控系統(tǒng)要大得多,同時這也使得本系統(tǒng)比星狀網(wǎng)結(jié)構(gòu)的網(wǎng)絡(luò)的節(jié)點容量大,在現(xiàn)在的無線檢測系統(tǒng)一般都采用星狀網(wǎng)結(jié)構(gòu)組網(wǎng)的形勢下本系統(tǒng)具有很大的市場優(yōu)勢。另外本系統(tǒng)的能穩(wěn)定性和可靠性也非常高使得本系統(tǒng)的環(huán)境適應(yīng)性非常強(qiáng),特別適用于工農(nóng)業(yè)環(huán)境現(xiàn)場和對環(huán)境因素要求比較苛刻的作業(yè)現(xiàn)場。