劉岳鵬,蔡 睿,周 磊
(北京航天試驗(yàn)技術(shù)研究所,北京 100074)
基于ZigBee的環(huán)境參數(shù)遠(yuǎn)程無線監(jiān)控系統(tǒng)設(shè)計(jì)
劉岳鵬,蔡 睿,周 磊
(北京航天試驗(yàn)技術(shù)研究所,北京 100074)
針對(duì)室內(nèi)環(huán)境參數(shù)的遠(yuǎn)程監(jiān)控問題,提出一種基于ZigBee技術(shù)與手機(jī)進(jìn)行實(shí)時(shí)數(shù)據(jù)交換的遠(yuǎn)程無線監(jiān)控系統(tǒng):傳感器節(jié)點(diǎn)采集環(huán)境中的溫濕度、光強(qiáng)和煙霧濃度數(shù)據(jù),通過ZigBee無線網(wǎng)絡(luò)將數(shù)據(jù)傳輸?shù)街行膮f(xié)調(diào)器;協(xié)調(diào)器與WIFI模塊通過串口連接,將數(shù)據(jù)發(fā)送到互聯(lián)網(wǎng);另外,設(shè)計(jì)Android手機(jī)軟件對(duì)監(jiān)測(cè)數(shù)據(jù)進(jìn)行獲取,并發(fā)出對(duì)參數(shù)進(jìn)行調(diào)節(jié)的指令,從而完成遠(yuǎn)程的無線監(jiān)控任務(wù);經(jīng)過測(cè)試,通過手機(jī)可以在任何有網(wǎng)絡(luò)的地方實(shí)時(shí)對(duì)環(huán)境參數(shù)進(jìn)行采集和控制,且各節(jié)點(diǎn)性能穩(wěn)定,滿足長(zhǎng)期監(jiān)測(cè)的需求。
ZigBee; 遠(yuǎn)程無線監(jiān)控; Android手機(jī); 環(huán)境參數(shù)
隨著近年來計(jì)算機(jī)技術(shù)和通信技術(shù)的不斷發(fā)展,人們對(duì)于生活環(huán)境質(zhì)量的要求越來越高,使得智能家居的概念得到了迅速普及,通過智能化的傳感器網(wǎng)絡(luò)對(duì)環(huán)境進(jìn)行實(shí)時(shí)監(jiān)控,使人可以方便、快捷地了解環(huán)境狀態(tài),并隨心所欲地完成主動(dòng)調(diào)節(jié)與控制[1]。目前,主要的近距離無線通信技術(shù)主要包括WIFI、UWB、紅外、藍(lán)牙和ZigBee等[2],并根據(jù)各自的特點(diǎn)廣泛應(yīng)用于不同領(lǐng)域中。其中,ZigBee技術(shù)主要工作在2.4 GHz頻段,因其具有低成本、低功耗、低復(fù)雜度和組網(wǎng)靈活、易擴(kuò)展等優(yōu)勢(shì),在無線傳感器網(wǎng)絡(luò)監(jiān)測(cè)領(lǐng)域中占據(jù)了一席之地[3]。但ZigBee技術(shù)的傳輸距離有限,僅能滿足短距離通信需求,實(shí)現(xiàn)在傳感器布置范圍內(nèi)的監(jiān)控任務(wù)。當(dāng)需要在無線傳感器網(wǎng)絡(luò)覆蓋范圍之外對(duì)環(huán)境參數(shù)進(jìn)行監(jiān)控時(shí),通常采用移動(dòng)運(yùn)營(yíng)商提供的GSM或GPRS網(wǎng)絡(luò)處理遠(yuǎn)程通信問題,并通過額外終端運(yùn)行軟件來完成監(jiān)測(cè)工作?,F(xiàn)階段的智能手機(jī)作為日常生活中必備隨身物品,已不再是單純的移動(dòng)電話,而相當(dāng)于可以處理各類工作、娛樂事物的掌上電腦。因此,本文提出一種采用ZigBee技術(shù)與Android手機(jī)結(jié)合進(jìn)行遠(yuǎn)程通信的方法,實(shí)現(xiàn)對(duì)環(huán)境參數(shù)的監(jiān)測(cè)與控制,可保證操作人員隨時(shí)隨地對(duì)監(jiān)測(cè)結(jié)果進(jìn)行查詢和遠(yuǎn)程控制。
本文提出的環(huán)境參數(shù)遠(yuǎn)程監(jiān)控系統(tǒng)的核心是解決數(shù)據(jù)傳輸?shù)膯栴},主要包括短距離無線傳感器網(wǎng)絡(luò)和遠(yuǎn)程通信網(wǎng)絡(luò)兩部分。無線傳感器網(wǎng)絡(luò)部分采用ZigBee技術(shù),通過搭建無線通信網(wǎng)絡(luò)實(shí)現(xiàn)對(duì)溫濕度、光強(qiáng)和煙霧濃度等環(huán)境參數(shù)信息的采集與傳輸。遠(yuǎn)程通信網(wǎng)絡(luò)由WIFI模塊、路由器和手機(jī)三部分構(gòu)成,采用TCP協(xié)議完成數(shù)據(jù)傳輸。ZigBee傳感器網(wǎng)絡(luò)的中心協(xié)調(diào)器將傳感器節(jié)點(diǎn)采集到的數(shù)據(jù)匯總后通過串口與WIFI模塊進(jìn)行連接;WIFI模塊與無線路由器之間建立無線傳輸通道,最終通過路由器將數(shù)據(jù)發(fā)送到互聯(lián)網(wǎng)。其中,WIFI模塊作為TCP網(wǎng)絡(luò)通信的服務(wù)器。編寫Android手機(jī)上的監(jiān)控軟件,作為網(wǎng)絡(luò)通信的客戶端,從互聯(lián)網(wǎng)獲取數(shù)據(jù)進(jìn)行環(huán)境監(jiān)測(cè),并根據(jù)需要發(fā)出控制指令,ZigBee節(jié)點(diǎn)接收到指令后通過紅外射頻模塊和執(zhí)行元件控制空調(diào)、電燈等的開關(guān),從而完成遠(yuǎn)程的實(shí)時(shí)監(jiān)控要求,系統(tǒng)組成如圖1所示。
圖1 系統(tǒng)組成框圖
本系統(tǒng)的硬件部分包括ZigBee無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)、WIFI模塊、無線路由器和Android手機(jī)4個(gè)部分。
2.1 ZigBee無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)
ZigBee無線傳感器網(wǎng)絡(luò)實(shí)現(xiàn)對(duì)環(huán)境數(shù)據(jù)的實(shí)時(shí)采集、傳輸和控制,主要包括1個(gè)網(wǎng)絡(luò)協(xié)調(diào)器節(jié)點(diǎn)和若干傳感器節(jié)點(diǎn)。其中,網(wǎng)絡(luò)協(xié)調(diào)器節(jié)點(diǎn)是ZigBee網(wǎng)絡(luò)的中心,也是第一個(gè)啟動(dòng)的設(shè)備,當(dāng)協(xié)調(diào)器啟動(dòng)建立無線局域網(wǎng)后,等待傳感器節(jié)點(diǎn)加入網(wǎng)絡(luò);傳感器節(jié)點(diǎn)需等待網(wǎng)絡(luò)穩(wěn)定后啟動(dòng),并作為從設(shè)備加入網(wǎng)絡(luò),從而構(gòu)成星型拓?fù)浣Y(jié)構(gòu)的網(wǎng)絡(luò)通路。無線網(wǎng)絡(luò)構(gòu)建后,傳感器節(jié)點(diǎn)采集環(huán)境中的溫濕度、光強(qiáng)和煙霧濃度等參數(shù),并發(fā)送給協(xié)調(diào)器進(jìn)行匯總,并最終由協(xié)調(diào)器通過RS232串口發(fā)送給WIFI模塊;同時(shí),協(xié)調(diào)器還可以接收WIFI模塊下發(fā)的控制指令,并指揮傳感器節(jié)點(diǎn)通過繼電器和紅外射頻模塊完成對(duì)環(huán)境參數(shù)的控制功能。
ZigBee無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)的電路設(shè)計(jì)采用美國(guó)TI公司的CC2530芯片作為網(wǎng)絡(luò)搭建和數(shù)據(jù)處理的核心,電路包括電源、串口和傳感器的輸入接口等模塊,協(xié)調(diào)器節(jié)點(diǎn)和傳感器節(jié)點(diǎn)的結(jié)構(gòu)框圖如圖2所示。其中,協(xié)調(diào)器節(jié)點(diǎn)的串口模塊采用CH340G芯片和USB接口實(shí)現(xiàn),并通過12864液晶屏對(duì)網(wǎng)絡(luò)狀態(tài)和匯總的數(shù)據(jù)進(jìn)行實(shí)時(shí)的顯示。傳感器節(jié)點(diǎn)的數(shù)據(jù)采集部分選用DHT11傳感器采集溫濕度、光敏電阻采集光照強(qiáng)度、3MQ-2傳感器監(jiān)測(cè)環(huán)境中的煙霧濃度,并預(yù)留0~5 V模擬輸入通道和繼電器控制模塊;同時(shí),通過紅外模塊和繼電器等作為執(zhí)行元件負(fù)責(zé)對(duì)空調(diào)、電燈和風(fēng)扇等的控制工作。
圖2 ZigBee節(jié)點(diǎn)結(jié)構(gòu)框圖
2.2 WIFI模塊
WIFI模塊負(fù)責(zé)轉(zhuǎn)發(fā)ZigBee網(wǎng)絡(luò)協(xié)調(diào)器和手機(jī)終端之間的數(shù)據(jù),解決無線傳感器網(wǎng)絡(luò)與互聯(lián)網(wǎng)之間的數(shù)據(jù)通信問題。本系統(tǒng)中選用的WIFI模塊為ALIENTEK公司推出的ATK-RM04高性能UART-ETH-WIFI模塊。其通過RS232串口與ZigBee網(wǎng)絡(luò)協(xié)調(diào)器節(jié)點(diǎn)通信,內(nèi)置 TCP/IP協(xié)議棧,具有多種工作模式,可適應(yīng)各種不同的應(yīng)用需求,能夠?qū)崿F(xiàn)用戶串口、以太網(wǎng)、無線網(wǎng)(WIFI)3個(gè)接口之間的轉(zhuǎn)換。本文設(shè)計(jì)的系統(tǒng)在使用時(shí),為其提供12 V 1 A的電源,首先將模塊恢復(fù)為出廠默認(rèn)設(shè)置,再通過串口線將模塊與計(jì)算機(jī)連接,并在專用的配置軟件中,將模塊的工作模式設(shè)置為串口轉(zhuǎn)WIFI(STA)模式,通過WIFI信號(hào)搜索并連接到外部路由器建立的無線網(wǎng)絡(luò)中。同時(shí),將模塊的工作方式配置為TCP服務(wù)器,并指定服務(wù)器的偵聽端口號(hào)(本系統(tǒng)中為4567),從而實(shí)現(xiàn)將協(xié)調(diào)器串口和無線路由器之間的數(shù)據(jù)進(jìn)行實(shí)時(shí)轉(zhuǎn)發(fā)。待WIFI模塊設(shè)置完畢后,將其與計(jì)算機(jī)斷開連接,并通過串口與ZigBee網(wǎng)絡(luò)協(xié)調(diào)器接通。
2.3 無線路由器
無線路由器是實(shí)現(xiàn)系統(tǒng)遠(yuǎn)程控制的關(guān)鍵環(huán)節(jié),本文的系統(tǒng)中通過計(jì)算機(jī)登陸路由器的配置頁(yè)面,對(duì)系統(tǒng)進(jìn)行配置。首先,路由器要具備連接到互聯(lián)網(wǎng)的能力,并為路由器配置無線局域網(wǎng),根據(jù)2.2節(jié)中所述配置方法將WIFI模塊連接到網(wǎng)絡(luò)中;其次,在路由器中為WIFI模塊分配局域網(wǎng)靜態(tài)IP地址和端口號(hào),其中端口號(hào)應(yīng)與WIFI模塊配置的端口號(hào)相同,設(shè)置為4567。當(dāng)路由器在不斷電的情況下會(huì)使用不變的公網(wǎng)IP地址,此時(shí)手機(jī)客戶端軟件可以通過該公網(wǎng)IP地址與WIFI模塊實(shí)現(xiàn)通信。但實(shí)際使用過程中,不可避免的會(huì)發(fā)生路由器斷電重啟問題,此時(shí)的公網(wǎng)IP地址會(huì)發(fā)生變化,這樣手機(jī)端就無法與WIFI模塊通信。為了解決這一問題,可以考慮兩種方案:第一種為申請(qǐng)固定IP地址,但這會(huì)承擔(dān)額外的費(fèi)用,增加開銷,提高成本,一般在企業(yè)中才會(huì)用到,個(gè)人用戶通常不采用這種方案。因此,通常采用第二種方法,通過動(dòng)態(tài)域名解析工具建立域名與IP地址的映射關(guān)系,現(xiàn)在市面上的動(dòng)態(tài)域名解析工具很多,且有大部分可以提供免費(fèi)使用。由于本文的系統(tǒng)中采用WIFI模塊作為TCP服務(wù)器,而動(dòng)態(tài)域名解析工具需要運(yùn)行在電腦平臺(tái)上,因此,需要選擇具備動(dòng)態(tài)域名解析功能的路由器才能實(shí)現(xiàn)功能,現(xiàn)在市面上常用的TP-LINK、艾泰等知名品牌均提供這一功能。本文通過路由器系統(tǒng)中自帶的花生殼動(dòng)態(tài)域名解析工具,為路由器申請(qǐng)創(chuàng)建一個(gè)免費(fèi)的域名,無論路由器的公網(wǎng)IP地址如何變化,客戶端都可以通過域名找到網(wǎng)絡(luò)中的路由器[4]。工作時(shí),路由器將WIFI模塊發(fā)送來數(shù)據(jù)轉(zhuǎn)發(fā)到互聯(lián)網(wǎng)中的手機(jī)終端。同時(shí)也將手機(jī)端的控制指令發(fā)送給ZigBee網(wǎng)絡(luò)中的控制模塊,從而實(shí)現(xiàn)遠(yuǎn)程控制功能。
2.4 智能手機(jī)終端
智能手機(jī)的普及給人的生活帶來了極大的便利,且成為了人們?nèi)粘I畹谋匦杵?。因此,本系統(tǒng)中采用常規(guī)的Android智能手機(jī)作為監(jiān)控的終端設(shè)備設(shè)計(jì)監(jiān)控平臺(tái),要求Android操作系統(tǒng)的版本號(hào)在4.0以上,且能夠通過GPRS或WIFI進(jìn)行上網(wǎng),本文通過設(shè)計(jì)專用軟件為操作人員提供對(duì)環(huán)境參數(shù)進(jìn)行實(shí)時(shí)監(jiān)測(cè)和控制的功能。
本系統(tǒng)涉及的軟件開發(fā)環(huán)節(jié)包括:針對(duì)CC2530單片機(jī)的ZigBee無線傳感器網(wǎng)絡(luò)搭建和數(shù)據(jù)采集與傳輸程序編寫,以及針對(duì)Android手機(jī)的監(jiān)控軟件開發(fā)。
3.1 ZigBee無線傳感器網(wǎng)絡(luò)搭建
本文討論的ZigBee無線通信程序在IAR Embedded workbench開發(fā)環(huán)境下采用C語言編寫,并以TI公司提供的Z-Stack協(xié)議棧為基礎(chǔ)進(jìn)行開發(fā)[5]。Z-Stack協(xié)議棧提供了名為操作系統(tǒng)抽象層(Operating System Abstraction Layer,OSAL)的調(diào)度程序,包含了無線傳感器網(wǎng)絡(luò)建立時(shí),物理層、MAC層和網(wǎng)絡(luò)層等的全部底層驅(qū)動(dòng)代碼,用戶只需在應(yīng)用層通過調(diào)用API接口庫(kù)中的函數(shù)來開發(fā)自己的應(yīng)用程序即可,操作方便,大大縮短了開發(fā)所需時(shí)間。Z-Stack協(xié)議棧執(zhí)行輪轉(zhuǎn)查詢式操作系統(tǒng),根據(jù)產(chǎn)生的任務(wù)事件的優(yōu)先級(jí),調(diào)用相應(yīng)的處理函數(shù)。
無線傳感器網(wǎng)絡(luò)通信程序包括協(xié)調(diào)器程序和傳感器程序。其中,協(xié)調(diào)器節(jié)點(diǎn)是網(wǎng)絡(luò)中第一個(gè)啟動(dòng)的設(shè)備,上電后通過調(diào)用Z-Stack協(xié)議棧的庫(kù)函數(shù)對(duì)IO、時(shí)鐘、中斷等硬件進(jìn)行初始化,并配置網(wǎng)絡(luò)參數(shù),允許其他從設(shè)備加入該網(wǎng)絡(luò),并為加入網(wǎng)絡(luò)的設(shè)備自動(dòng)分配16位的網(wǎng)絡(luò)地址[6]。傳感器節(jié)點(diǎn)需等待協(xié)調(diào)器成功創(chuàng)建網(wǎng)絡(luò)后再啟動(dòng),并請(qǐng)求加入網(wǎng)絡(luò),接收到協(xié)調(diào)器的響應(yīng)后即可創(chuàng)建網(wǎng)絡(luò)傳輸通路,為數(shù)據(jù)傳輸做好準(zhǔn)備。Z-Stack協(xié)議棧已經(jīng)為用戶提供了大部分程序代碼,開發(fā)時(shí)僅需根據(jù)實(shí)際設(shè)計(jì)的硬件電路對(duì)LED指示燈、LCD顯示屏、按鍵等進(jìn)行定義,并對(duì)ZigBee網(wǎng)絡(luò)的數(shù)據(jù)傳輸信道和地址分配機(jī)制等參數(shù)進(jìn)行設(shè)定即可,其他工作都由協(xié)議棧自動(dòng)實(shí)現(xiàn)。
3.2 ZigBee數(shù)據(jù)采集與傳輸
傳感器節(jié)點(diǎn)的程序負(fù)責(zé)對(duì)環(huán)境中的溫濕度、光照強(qiáng)度和煙霧濃度等參數(shù)進(jìn)行采集。其中,溫濕度測(cè)量采用DHT11數(shù)字傳感器,其包含一個(gè)電阻式感濕元件和NTC測(cè)溫元件,采用單線制總線接口與單片機(jī)連接通信,具備響應(yīng)快、抗干擾能力強(qiáng)、相加比高、體積小和低功耗等優(yōu)勢(shì)[7]。使用時(shí),通過CC2530單片機(jī)的P10口發(fā)送時(shí)序指令來控制數(shù)據(jù)的讀取,平均4 ms即可完成一次通訊。光敏電阻和3MQ-2煙霧傳感器均輸出模擬電壓量,與0-5 V模擬信號(hào)的采集方式相同,因此通過CC2530單片機(jī)的P0口可實(shí)現(xiàn)對(duì)模擬量的直接采集,并通過芯片內(nèi)部的12位ADC轉(zhuǎn)換為數(shù)字量。
ZigBee數(shù)據(jù)采集和傳輸?shù)某绦蛐柙赯-Stack協(xié)議棧的App層進(jìn)行編寫。在傳感器節(jié)點(diǎn)的程序中,設(shè)定采集環(huán)境參數(shù)的周期為30s,依次調(diào)用各傳感器采集數(shù)據(jù)的函數(shù),并按照特定的數(shù)據(jù)包格式對(duì)測(cè)量的溫濕度、光照強(qiáng)度和煙霧濃度的數(shù)據(jù)進(jìn)行打包匯總,并添加傳感器節(jié)點(diǎn)編號(hào)信息,形成一條字符串?dāng)?shù)據(jù)包。最后通過Z-Stack協(xié)議棧中的AF_DataRequest()數(shù)據(jù)發(fā)送函數(shù)以單播方式向協(xié)調(diào)器發(fā)送數(shù)據(jù)。
DataZB[0] = Device_ID; //設(shè)備編號(hào)
DHT11_Read(); //讀取DHT11
LightLevel_Read(); //讀取光敏
Gas_Read(); //讀取煙霧
AF_DataRequest( //數(shù)據(jù)發(fā)送函數(shù)
&GenericApp_DstAddr, //目的地址
&GenericApp_epDesc, //節(jié)點(diǎn)描述符
GENERICAPP_CLUSTERID, //命令I(lǐng)D
17, //發(fā)送的數(shù)據(jù)長(zhǎng)度
(byte *)&DataZB, //發(fā)送的數(shù)據(jù)
&GenericApp_TransID, //發(fā)送序號(hào)指針
AF_DISCV_ROUTE,
AF_DEFAULT_RADIUS )
協(xié)調(diào)器節(jié)點(diǎn)程序運(yùn)行時(shí)不斷輪詢查看任務(wù)列表,當(dāng)發(fā)現(xiàn)傳輸信道上有數(shù)據(jù)傳來時(shí),通過osal_msg_receive()數(shù)據(jù)接收函數(shù)接收傳感器節(jié)點(diǎn)發(fā)來的數(shù)據(jù)包,并將該數(shù)據(jù)封裝成一個(gè)消息,放入消息隊(duì)列。如果消息的ID為AF_INCOMING_MSG_CMD,則進(jìn)行相應(yīng)的數(shù)據(jù)處理,按數(shù)據(jù)包格式對(duì)環(huán)境參數(shù)信息進(jìn)行解析,并在12864液晶顯示屏上實(shí)時(shí)顯示環(huán)境參數(shù)信息,同時(shí)將原始數(shù)據(jù)包通過串口直接轉(zhuǎn)發(fā)到WIFI模塊。WIFI模塊根據(jù)第2節(jié)的配置方式,可實(shí)現(xiàn)串口與路由器之間的數(shù)據(jù)轉(zhuǎn)發(fā),從而實(shí)現(xiàn)與互聯(lián)網(wǎng)中的手機(jī)進(jìn)行通信。結(jié)合無線傳感器網(wǎng)絡(luò)創(chuàng)建過程,協(xié)調(diào)器節(jié)點(diǎn)和傳感器節(jié)點(diǎn)的程序流程如圖3所示。
3.3 Android手機(jī)監(jiān)控軟件
Android手機(jī)上的監(jiān)控軟件在Eclipse開發(fā)環(huán)境下設(shè)計(jì),其可以實(shí)現(xiàn)對(duì)Android工程資源的有效管理,代碼通過Java語言進(jìn)行編寫,并通過Android SDK工具將程序編譯為.Apk安裝包[8]。本文中的手機(jī)監(jiān)控軟件設(shè)計(jì)主要是對(duì)UI界面的設(shè)計(jì)和網(wǎng)絡(luò)通信程序的編寫。
本文中的監(jiān)控軟件界面布局在使用中不會(huì)產(chǎn)生變化,因此采用xml布局文件來控制Android程序中的UI界面。設(shè)計(jì)時(shí),使用res/layout資源目錄下的xml文件進(jìn)行描述,同時(shí)在Eclipse開發(fā)環(huán)境中利用SDK提供的布局管理工具使界面設(shè)計(jì)變得十分靈活,通過圖形化的控件布局,可以自動(dòng)生成描述布局的xml代碼文件。編譯后R.java會(huì)自動(dòng)收錄該布局資源,在Android工程的Activity類中使用下述Java代碼就可以顯示布局內(nèi)容。
setContentView(R.layout.main);
程序的網(wǎng)絡(luò)通信采用Socket進(jìn)行實(shí)現(xiàn),手機(jī)端的軟件作為TCP客戶端,需要將花生殼提供的域名通過InetAddress.
getByName()方法解析為無線路由器的公網(wǎng)IP地址,并在代碼中通過Socket(“IP地址”,4567)指定無線路由器的公網(wǎng)IP地址和為WIFI模塊配置的端口號(hào),待WIFI模塊的服務(wù)器啟動(dòng)后,手機(jī)端通過TCP協(xié)議與服務(wù)器建立連接,通過輸入輸出流進(jìn)行數(shù)據(jù)的發(fā)送和接收,最終實(shí)現(xiàn)手機(jī)端軟件與ZigBee無線傳感器網(wǎng)絡(luò)之間的數(shù)據(jù)交換。手機(jī)監(jiān)控軟件作為終端控制中心,還具有數(shù)據(jù)的存儲(chǔ)、查詢和發(fā)出控制指令等功能,監(jiān)控軟件的程序流程如圖4所示。
圖4 上位機(jī)監(jiān)測(cè)軟件程序流程
經(jīng)過前期各模塊功能的分別開發(fā)后,對(duì)整個(gè)系統(tǒng)進(jìn)行綜合測(cè)試。采用一個(gè)協(xié)調(diào)器節(jié)點(diǎn)和3個(gè)傳感器節(jié)點(diǎn)組成無線傳感器網(wǎng)絡(luò),在傳感器節(jié)點(diǎn)上設(shè)置溫濕度、光強(qiáng)和煙霧傳感器,協(xié)調(diào)器采用外部5V電源供電,傳感器節(jié)點(diǎn)采用3節(jié)5號(hào)電池供電。此時(shí)啟動(dòng)協(xié)調(diào)器,待網(wǎng)絡(luò)指示燈穩(wěn)定后,依次打開3個(gè)傳感器節(jié)點(diǎn),協(xié)調(diào)器上的LCD可以實(shí)時(shí)顯示3個(gè)傳感器節(jié)點(diǎn)的環(huán)境參數(shù)信息,并以30s為周期更新數(shù)據(jù)。
確保無線傳感器網(wǎng)絡(luò)工作正常后,將協(xié)調(diào)器與設(shè)置好的WIFI模塊通過RS232串口進(jìn)行連接,并將WIFI模塊通過無線方式加入路由器的無線網(wǎng)絡(luò)中,其中,WIFI模塊和路由器按照上文中的方式進(jìn)行配置,路由器確??梢赃B接到互聯(lián)網(wǎng)。在Android手機(jī)上安裝監(jiān)控軟件,到室外進(jìn)行查看,并確保手機(jī)可以訪問GPRS無線網(wǎng)絡(luò)。此時(shí),打開手機(jī)上的監(jiān)控軟件,可以實(shí)時(shí)顯示環(huán)境中的參數(shù)信息,通過軟件上的控件下發(fā)指令,可有效實(shí)現(xiàn)對(duì)電燈、風(fēng)扇和空調(diào)等的啟動(dòng)和關(guān)閉。隨后進(jìn)行了4個(gè)小時(shí)的持續(xù)監(jiān)測(cè)任務(wù),系統(tǒng)未發(fā)生問題,并將數(shù)據(jù)存儲(chǔ)到了手機(jī)的內(nèi)存卡中。若考慮長(zhǎng)期監(jiān)測(cè)任務(wù),可對(duì)傳感器節(jié)點(diǎn)的參數(shù)采樣速率進(jìn)行調(diào)整,并使電路在空閑時(shí)進(jìn)入睡眠模式,并通過定時(shí)器喚醒,從而實(shí)現(xiàn)長(zhǎng)期的監(jiān)控任務(wù)。
通過上述測(cè)試,本文設(shè)計(jì)的遠(yuǎn)程環(huán)境無線監(jiān)控系統(tǒng),能夠通過ZigBee無線傳感器網(wǎng)絡(luò)對(duì)環(huán)境參數(shù)進(jìn)行實(shí)時(shí)、有效的采集和穩(wěn)定、可靠的傳輸,并借助WIFI模塊和路由器實(shí)現(xiàn)遠(yuǎn)程監(jiān)控的目的;通過手機(jī)端的監(jiān)控軟件可在任何有網(wǎng)絡(luò)連接的位置查看監(jiān)測(cè)結(jié)果和下發(fā)控制指令,完成對(duì)環(huán)境狀態(tài)的反饋控制。該系統(tǒng)的功能可使人對(duì)智能家居的管理和控制變得更加靈活和方便。
[1] 趙 麗.基于ZigBee技術(shù)的智能家居系統(tǒng)研究與設(shè)計(jì)[D].南京:南京郵電大學(xué),2011.
[2] 許 毅,陳立家,甘浪雄,等.無線傳感器網(wǎng)絡(luò)技術(shù)原理及應(yīng)用[M].北京:清華大學(xué)出版社,2015.
[3] 高 鍵,方 濱,尹金玉.ZigBee無線通信網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)計(jì)與組網(wǎng)實(shí)現(xiàn)[J].計(jì)算機(jī)測(cè)量與控制,2008,16(12):1912-1914.
[4] 高德欣,劉 芳,張如耀.基于Android的輪胎模具倉(cāng)庫(kù)溫濕度無線監(jiān)控系統(tǒng)設(shè)計(jì)[J].自動(dòng)化與儀表,2016,31(4):30-33.
[5] 朱 琎,楊占勇.基于CC2530的無線振動(dòng)監(jiān)測(cè)傳感器節(jié)點(diǎn)設(shè)計(jì)[J].儀表技術(shù)與傳感器,2012,44(8):56-58,83.
[6] 王玉潔,桑永勝.一種基于ZigBee物聯(lián)網(wǎng)技術(shù)的校園安防解決方案[J].現(xiàn)代計(jì)算機(jī),2012,29(3):33-38.
[7] 朱向慶,陳志雄.遠(yuǎn)程分布式溫濕度實(shí)時(shí)監(jiān)測(cè)系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)測(cè)量與控制,2010,18(1):55-57+63.
[8] 尹士龍.基于ZigBee網(wǎng)絡(luò)的手機(jī)位置共享系統(tǒng)設(shè)計(jì)[D].成都:電子科技大學(xué),2009.
Design of Remote Wireless Monitoring System for Environmental Parameters Based on ZigBee
Liu Yuepeng,Cai Rui,Zhou Lei
(Beijing Institute of Aerospace Testing Technology, Beijing 100074, China)
In view of remote-monitoring problem for indoor environmental parameters, a remote wireless-monitoring system based on ZigBee technology and mobile phone is proposed, which is used to realize the real-time data exchange. The sensor nodes collect the temperature, humidity, light intensity and smoke concentration, and transmit the data to the central coordinator by the ZigBee wireless network. The coordinator is connected with the WIFI module through the serial port, by which, the data is sent to the Internet. In addition, an Android mobile phone software is designed for the data acquisition, and issues instructions for adjusting parameters to complete the remote wireless monitoring task. As the test results show, the mobile phone is able to acquire and control the real-time environmental parameters in any place where the network is available. At the same time, the performance of nodes work stably and meet the need of long-term monitoring.
ZigBee; remote wireless monitoring; Android mobile phone; environmental parameters
2017-01-09;
2017-02-27。
裝備預(yù)先研究項(xiàng)目(617010604)。
劉岳鵬(1990-),男,北京市人,碩士研究生,助理工程師,主要從事傳感器與通信技術(shù)方向的研究。
1671-4598(2017)07-0087-03
10.16526/j.cnki.11-4762/tp.2017.07.022
TP277
A