基于ZigBee技術(shù)的家居環(huán)境監(jiān)測設(shè)計
引言
隨著社會發(fā)展,人們對家庭環(huán)境舒適度提出更高的要求,新的技術(shù)將推動家居智能化,家居中各種智能化的設(shè)備、家用電器和家庭安防設(shè)備將整合成為智能化的系統(tǒng),在這個平臺上進行資源共享、分析、控制和管理這些設(shè)備。溫度和濕度是家居環(huán)境的兩個重要參數(shù)。在通常情況下,實現(xiàn)區(qū)域溫濕度監(jiān)測需要大量的電纜,新環(huán)境不利于移植。本文以ZigBee技術(shù)為基礎(chǔ),設(shè)計家庭環(huán)境無線監(jiān)測系統(tǒng),基于主從控制實現(xiàn)智能家居。
1ZigBee技術(shù)簡介
ZigBee技術(shù)主要用于低數(shù)據(jù)傳輸速率并且傳輸距離要求不是很遠的各種通信設(shè)備之間。ZigBee使用的是2.4GHz波段,采用了跳頻技術(shù),這和藍牙技術(shù)相似。但相比之下,ZigBee協(xié)議比藍牙更簡單,速率更慢,功率及費用也更低[%單個ZigBee無線模塊就可與254個節(jié)點互聯(lián),若網(wǎng)絡(luò)中加入路由節(jié)點,則網(wǎng)絡(luò)最大承載量可支持65535個節(jié)點設(shè)備互聯(lián)。人們更希望能在無線玩具、傳感器網(wǎng)絡(luò)、家庭監(jiān)控、工業(yè)監(jiān)控和安全系統(tǒng)等眾多領(lǐng)域拓展ZigBee的應(yīng)用。使用基于ZigBee短距無線通信技術(shù),環(huán)境信息采集模塊與顯示終端實現(xiàn)無線通信,省去了傳統(tǒng)布線的麻煩。在ZigBee協(xié)議規(guī)范中,組網(wǎng)時有三種網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)可供選擇:星型結(jié)構(gòu)(Star)、網(wǎng)狀結(jié)構(gòu)(Mesh)和簇樹型結(jié)構(gòu)(ClusterTree)。
2硬件結(jié)構(gòu)和軟件設(shè)計
2.1硬件結(jié)構(gòu)設(shè)計
家居環(huán)境監(jiān)測系統(tǒng)以CC2530芯片為平臺,實現(xiàn)信息數(shù)據(jù)的接收與發(fā)送。終端傳感器節(jié)點選用SHT11,實現(xiàn)快速、方便的家居環(huán)境信息的監(jiān)測功能。
2.1.1電源部分設(shè)計
采用的電源是雙電源策略,通過開關(guān)選通電源適配器供電或電池供電,提高了使用的靈活性,電源供電部分的實物圖如圖1所示。
圖1 電源供電部分實物圖
當(dāng)電池電壓低于1.7V時,低電壓指示燈D1亮,此時模塊工作電壓將不能保證穩(wěn)定在+3.3V,請注意更換電池以保持模塊正常工作。
2.1.2節(jié)點的硬件設(shè)計
主控節(jié)點和中央處理器在一起共用3.3V電源,通信采用ZigBee技術(shù),將終端設(shè)備采集到的數(shù)據(jù)發(fā)送給協(xié)調(diào)器以及協(xié)調(diào)器接收數(shù)據(jù)。
本系統(tǒng)中傳感器節(jié)點主要負(fù)責(zé)的是環(huán)境信息的采集與發(fā)送,協(xié)調(diào)器節(jié)點主要負(fù)責(zé)的是網(wǎng)絡(luò)的建立、終端節(jié)點管理、數(shù)據(jù)處理和對PC端的數(shù)據(jù)通信。PC機作為控制中心直接和協(xié)調(diào)器通信。溫濕度網(wǎng)絡(luò)控制圖如圖2所示。
圖2 溫濕度網(wǎng)絡(luò)控制圖
家庭中的每個房間可以多放幾個這樣的類似節(jié)點,可實現(xiàn)在同一個房間進行多點的溫度信息采集,以提高溫度測量的準(zhǔn)確度。同時增加了無線發(fā)射部分電路,可以將傳感器采集的數(shù)據(jù)傳輸給遠端設(shè)備。
本設(shè)計使用的是SHT11數(shù)字溫濕度傳感器,SHT11是包含有已校準(zhǔn)數(shù)字輸出的單芯片溫濕度復(fù)合傳感器。SHT11采用兩條串行線和處理器進行通信,傳感器在出廠時都進行校準(zhǔn),校準(zhǔn)系數(shù)都以程序形式存儲在OTP內(nèi)存中。在傳感器測量的時候,這些系數(shù)在傳感器內(nèi)部調(diào)用來修正信號。溫濕度傳感器SHT11的內(nèi)部結(jié)構(gòu)如圖3所示叫
軟件設(shè)計分?jǐn)?shù)據(jù)采集和無線通信兩部分。溫濕度傳感器采用I2C總線與處理器通信,完成數(shù)據(jù)采集工作,SHT11的SCK為時鐘信號,DATA雙向串行通信線可同時完成寫命令與讀數(shù)據(jù)的任務(wù)叫本設(shè)計選用的處理器芯片CC2530集成了射頻收發(fā)模塊,實現(xiàn)了ZigBee協(xié)議棧的體系結(jié)構(gòu)。ZigBee體系結(jié)構(gòu)包括四層:物理層(PHY)、控制子層(MAC)、網(wǎng)絡(luò)層和應(yīng)用層。
主模塊管理家居中各個房間模塊,將無線網(wǎng)絡(luò)中各個節(jié)點的情況報告給家庭網(wǎng)關(guān)。程序首先初始化CC2530,之后初始化協(xié)議棧,開始發(fā)送加入網(wǎng)絡(luò)信號,等待主機響應(yīng)。如果加入網(wǎng)絡(luò)成功,溫濕度采集節(jié)點的發(fā)光二極管就會被點亮,并分配16位的網(wǎng)絡(luò)地址。加入網(wǎng)絡(luò)成功之后,溫濕度采集節(jié)點就定時采集數(shù)據(jù)并向協(xié)調(diào)器發(fā)送。程序循環(huán)調(diào)用SendData()函數(shù),定時采集溫濕度值,然后把數(shù)據(jù)打包再發(fā)送到網(wǎng)絡(luò)協(xié)調(diào)器,并開始接收應(yīng)答。
無線數(shù)據(jù)發(fā)送函數(shù):voidzb_SendDataRequest(uint16destination,uint16commandld,uint8len,uint8*pData,uint8handle,uint8txOptions,uint8radius);無線數(shù)據(jù)接收函數(shù):voidSAPI_ReceiveDataIndication(uint16source,uint16command,uint16len,uint8*pData)。在ZigBee協(xié)議棧中,協(xié)調(diào)器節(jié)點的串口通信單元已經(jīng)由硬件層實現(xiàn)了接口封裝,其實現(xiàn)文件為hal_uart.c和hal_uart.h。
實驗裝置在IAREW環(huán)境下開發(fā),程序編譯完成后,下載到開發(fā)板上,在必要的時候可以進行單步調(diào)試。為提高適用性,在開發(fā)板安裝了液晶模塊LM6059BCW,方便觀測。對現(xiàn)場環(huán)境進行監(jiān)測,監(jiān)測結(jié)果如表1所列。
表1 各房間測量值
地址 |
溫度均值/C |
濕度均值/RH |
0X45AB |
25 |
56 |
0XB092 |
27 |
58 |
0XAF32 |
26 |
57 |
0XD50A |
26 |
56 |
對于表1所列的四個室內(nèi)溫度和濕度的監(jiān)測結(jié)果,經(jīng)實驗證明,此方式快捷,而且具有適用性。
3結(jié)語
實驗裝置以智能家居為目的,建立家居公共資源平臺,提供基本的信息服務(wù),滿足人們便利生活的同時,還能節(jié)能增效。在實際應(yīng)用中,根據(jù)需要確定節(jié)點數(shù)量。本系統(tǒng)可以通過添加模塊應(yīng)用到更多領(lǐng)域,如人體體溫、煤氣安防等,適于推廣。如果通過網(wǎng)關(guān)連接到Internet,同時可實現(xiàn)Android的智能無線控制系統(tǒng)介入[6],用戶可以方便監(jiān)控自己家里的情況,有很好的發(fā)展前景。
20211106_6185fb190b2c7__基于ZigBee技術(shù)的家居環(huán)境監(jiān)測設(shè)計