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