李麗娜,王越,郭永強(qiáng),張曉東,李木子
(遼寧大學(xué) 物理學(xué)院,遼寧 沈陽(yáng) 110036)
基于ZigBee的多點(diǎn)溫濕度監(jiān)測(cè)系統(tǒng)設(shè)計(jì)
李麗娜,王越,郭永強(qiáng),張曉東,李木子
(遼寧大學(xué) 物理學(xué)院,遼寧 沈陽(yáng) 110036)
在對(duì)無(wú)線傳感器及其網(wǎng)絡(luò)協(xié)議技術(shù)分析的基礎(chǔ)上,設(shè)計(jì)出一種以ZigBee為基礎(chǔ)的多點(diǎn)無(wú)線溫濕度監(jiān)測(cè)系統(tǒng).網(wǎng)絡(luò)系統(tǒng)采用ZigBee樹狀網(wǎng)絡(luò)結(jié)構(gòu)組網(wǎng),利用本地傳感節(jié)點(diǎn)采集溫濕度數(shù)據(jù),無(wú)線傳輸至ZigBee協(xié)調(diào)器,進(jìn)而通過(guò)串口通信傳輸至PC機(jī)服務(wù)器進(jìn)行存儲(chǔ)和顯示.同時(shí),Android手機(jī)利用wifi路由器及Socket通信訪問(wèn)PC機(jī)服務(wù)器,實(shí)現(xiàn)手機(jī)端遠(yuǎn)程溫濕度監(jiān)測(cè).
ZigBee無(wú)線傳感網(wǎng)絡(luò);樹狀網(wǎng)絡(luò)結(jié)構(gòu);多點(diǎn)溫濕度監(jiān)測(cè);Socket通信
ZigBee技術(shù)是一項(xiàng)新興技術(shù),它是一種具有近距離、低功耗、較高速率、低成本的特性的雙向無(wú)線通訊技術(shù)[1].ZigBee與Android的結(jié)合是近幾年來(lái)研究的熱點(diǎn)之一,本文綜合運(yùn)用ZigBee與Android構(gòu)建了一個(gè)遠(yuǎn)程溫濕度監(jiān)測(cè)系統(tǒng),可實(shí)現(xiàn)實(shí)時(shí)測(cè)量及顯示[5].

圖1 系統(tǒng)整體設(shè)計(jì)方案
系統(tǒng)整體設(shè)計(jì)方案如圖1所示,采用連接在多個(gè)ZigBee終端節(jié)點(diǎn)的DHT11數(shù)字溫濕度傳感器采集環(huán)境溫濕度,通過(guò)父節(jié)點(diǎn)路由器后實(shí)時(shí)發(fā)送到ZigBee協(xié)調(diào)器,ZigBee協(xié)調(diào)器通過(guò)串口將溫濕度數(shù)據(jù)傳輸?shù)絇C機(jī)服務(wù)器,并顯示當(dāng)前環(huán)境溫濕度狀態(tài),同時(shí)Android手機(jī)通過(guò)Wifi與PC機(jī)服務(wù)器通信,基于Socket通信協(xié)議實(shí)現(xiàn)訪問(wèn)及接收溫濕度信息并進(jìn)行顯示.本系統(tǒng)基于ZigBee協(xié)議組成樹狀網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),實(shí)現(xiàn)多點(diǎn)遠(yuǎn)程溫濕度采集[2].

圖2 ZigBee樹狀網(wǎng)絡(luò)結(jié)構(gòu)
本系統(tǒng)采用ZigBee樹狀網(wǎng)絡(luò)結(jié)構(gòu),其組成由一個(gè)協(xié)調(diào)器和一個(gè)或多個(gè)星狀網(wǎng)絡(luò)結(jié)構(gòu)連接而成,而星狀網(wǎng)絡(luò)是由一個(gè)協(xié)調(diào)器與多個(gè)終端設(shè)備組成,設(shè)備可與自己的父節(jié)點(diǎn)與子節(jié)點(diǎn)進(jìn)行點(diǎn)對(duì)點(diǎn)的通信,即點(diǎn)播通訊,這樣網(wǎng)絡(luò)中的2個(gè)節(jié)點(diǎn)相互通信時(shí),沒(méi)有其它節(jié)點(diǎn)干擾,此種通信方式可靠高效.確定通信對(duì)象的就是節(jié)點(diǎn)的短地址.樹狀網(wǎng)絡(luò)拓?fù)涞膬?yōu)點(diǎn)是減少了消息延時(shí),實(shí)時(shí)性好,可靠性強(qiáng).ZigBee樹狀網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示[3].
3.1 CC2530核心板電路
系統(tǒng)總體控制電路以CC2530核心板為主控制器,CC2530核心板電路如圖3所示.

圖3 CC2530核心板電路
3.2 溫濕度測(cè)量電路
本系統(tǒng)采用結(jié)構(gòu)簡(jiǎn)單,測(cè)量溫濕度精度高、工作穩(wěn)定的DHT11溫濕度傳感器進(jìn)行溫濕度測(cè)量.該傳感器包括一個(gè)電阻式感濕元件和一個(gè)NTC測(cè)溫元件,傳感器經(jīng)過(guò)校準(zhǔn)后,以程序的形式儲(chǔ)存在內(nèi)存中.連接方便,封裝簡(jiǎn)潔.測(cè)量電路如圖4所示[6].

圖4 溫濕度測(cè)量電路

圖5 PC機(jī)程序主界面
4.1 系統(tǒng)總體程序設(shè)計(jì)
本系統(tǒng)上位機(jī)采用VC++6.0開(kāi)發(fā)軟件實(shí)現(xiàn)與ZigBee協(xié)調(diào)器節(jié)點(diǎn)間的串口通信,實(shí)現(xiàn)串口讀寫,并將信號(hào)測(cè)量結(jié)果進(jìn)行實(shí)時(shí)動(dòng)態(tài)可視化顯示,利用TCP/IP協(xié)議實(shí)現(xiàn)網(wǎng)絡(luò)發(fā)布,為遠(yuǎn)程PC機(jī)訪問(wèn)提供對(duì)象和地址,PC機(jī)VC++6.0程序主界面如圖5所示.下位機(jī)包括ZigBee各節(jié)點(diǎn)程序采用C語(yǔ)言編程.下面重點(diǎn)介紹串口通信程序、Socket通信程序、ZigBee本地節(jié)點(diǎn)數(shù)據(jù)采集程序等主要程序模塊設(shè)計(jì)[4].
用戶打開(kāi)服務(wù)器程序,在程序主界面開(kāi)啟相應(yīng)的串口,讀取串口接收到的ZigBee協(xié)調(diào)器的數(shù)據(jù),從數(shù)據(jù)包中索引出溫濕度數(shù)據(jù),分別進(jìn)行格式轉(zhuǎn)換后并顯示,即可將傳感器信息顯示在界面中,該系統(tǒng)的整體程序流程圖如圖6所示[9].

圖6 系統(tǒng)整體程序流程

圖7 串口通信程序
4.2 串口通信程序設(shè)計(jì)
本系統(tǒng)中串口通信波特率為115 200 bps,數(shù)據(jù)位為8位,停止位為1位.串口通信流程如圖7所示.
4.3 Android Socket通信程序設(shè)計(jì)
本系統(tǒng)中,Android手機(jī)與PC機(jī)服務(wù)器之間采用基于TCP協(xié)議的Socket通信實(shí)現(xiàn)數(shù)據(jù)傳輸.在程序內(nèi)部提供了與外界通信的端口,即端口通信.通過(guò)建立Socket連接,可為Android設(shè)備端與PC服務(wù)器端的數(shù)據(jù)傳輸傳提供通道[8].Socket通信的主要優(yōu)點(diǎn)是數(shù)據(jù)丟失率低,使用簡(jiǎn)單且易于移植.本系統(tǒng)中Socket通信分為Android手機(jī)端與PC服務(wù)器端,程序流程圖分別如圖8與圖9所示.
4.4 溫濕度測(cè)量程序
終端節(jié)點(diǎn)發(fā)送一次開(kāi)始信號(hào)后,DHT11從低功耗模式轉(zhuǎn)到高速模式,開(kāi)始信號(hào)結(jié)束后,DHT11發(fā)送響應(yīng)信號(hào),送出40bit的數(shù)據(jù),觸發(fā)一次采集,此時(shí)可以讀取經(jīng)過(guò)ASC碼轉(zhuǎn)換后的數(shù)據(jù).如果DHT11沒(méi)有接收到開(kāi)始信號(hào),它不會(huì)主動(dòng)進(jìn)行采集,進(jìn)入低功耗模式.其程序流程圖如圖10所示[7].

圖8 Android端Socket通信程序流程圖

圖9 PC服務(wù)器端Socket通信程序流程圖

圖10 溫濕度測(cè)量程序
本系統(tǒng)實(shí)現(xiàn)了溫濕度的手機(jī)端遠(yuǎn)程監(jiān)測(cè)與遙控,溫濕度測(cè)量結(jié)果較為精確,系統(tǒng)穩(wěn)定運(yùn)行,可以達(dá)到預(yù)期效果.本系統(tǒng)是物聯(lián)網(wǎng)技術(shù)和安卓開(kāi)發(fā)的有機(jī)結(jié)合,對(duì)實(shí)現(xiàn)物聯(lián)網(wǎng)遠(yuǎn)程監(jiān)控的做了有益的探索.
另外,該系統(tǒng)是在開(kāi)展無(wú)線單片機(jī)拓展教育、創(chuàng)客教育教學(xué)實(shí)踐中通過(guò)本研接對(duì)的方式實(shí)現(xiàn)的,論文也主要由學(xué)生整理及撰寫,是一個(gè)較好的教學(xué)研究實(shí)踐案例.
[1] 董方武.基于ZigBee的分布式織機(jī)運(yùn)行監(jiān)控系統(tǒng)[J].紡織學(xué)報(bào),2009(9).
[2] 趙曦,解永平.智能傳感器網(wǎng)絡(luò)無(wú)線接口設(shè)計(jì)[J].儀器儀表學(xué)報(bào),2008,28(12):2132-2137.
[3] 崔文華.ZigBee協(xié)議棧的研究與實(shí)現(xiàn)[D].上海:華東師范大學(xué),2010,1.
[4] 蒲泓全,賈軍營(yíng),張曉嬌,等.ZigBee網(wǎng)絡(luò)技術(shù)研究綜述[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2013,22(9):6-11.
[5] 瞿雷,劉盛德,胡咸斌,等.ZigBee技術(shù)及應(yīng)用[M].北京:北京航空航天大學(xué),2007.
[6] 劉渝燦.基于CC2530片內(nèi)溫度傳感器溫度監(jiān)測(cè)系統(tǒng)的設(shè)計(jì)[J].中國(guó)儀器儀表,2008,(7):40-41,45.
[7] 武風(fēng)波.基于ZigBee技術(shù)的遠(yuǎn)程無(wú)線溫濕度測(cè)控系統(tǒng)的設(shè)計(jì)[J].西北大學(xué)學(xué)報(bào),2008,38(5):731-734.
[8] ZigBee Alliance.ZjgBee Document 094980r03[Z].April,2009.
[9] 鄧中華.基于 ZigBee的無(wú)線溫度采集系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)工程與科學(xué),2011,33(06):164-167.
(責(zé)任編輯 鄭綏乾)
Design of Multi Point Temperature and Humidity Monitoring System Based on ZigBee
LI Li-na,WANG Yue,GUO Yong-qiang,ZHANG Xiao-dong,LI Mu-zi
(CollegeofPhysics,LiaoningUniversity,Shenyang110036,China)
A Multi point wireless temperature and humidity monitoring system based on the wireless ZigBee network was designed in this paper after the analysis of the technology for the protocol of wireless sensor network.Tree network structure was used in this network system,the temperature and humidity data can be collected by local sensor nodes,and the data can be transferred wirelessly to the ZigBee coordinator,then the data can be transferred to PC sever through serial communication to be displayed and saved.At the same time,android mobile can access PC server to realize remote temperature and humidity monitoring by WiFi router and Socket connection.
ZigBee wireless sensor network;tree network structure;multi point wireless temperature and humidity monitoring; Socket communication
2016-09-23
遼寧大學(xué)教學(xué)改革項(xiàng)目(JG2016YB0043)
李麗娜(1973-),女,滿族,遼寧本溪人,副教授,碩士研究生導(dǎo)師,主要從事物聯(lián)網(wǎng)感知層相關(guān)技術(shù)研究; 王越(1993-),男,漢族,遼寧本溪人,碩士研究生,主要從事無(wú)線傳感網(wǎng)絡(luò)技術(shù)及應(yīng)用研究.
TP 242
A
1000-5846(2017)01-0025-04