毛德明,張軒雄
(上海理工大學 光電信息與計算機工程學院,上海 200093)
?
基于ZigBee與Android技術的智能網(wǎng)關設計
毛德明,張軒雄
(上海理工大學 光電信息與計算機工程學院,上海 200093)
為實現(xiàn)智能家居遠程無線控制功能,設計了一種基于ZigBee與Android技術的智能網(wǎng)關方案。該方案是通過WiFi芯片ESP8266與TI公司的ZigBee芯片CC2530相結(jié)合,根據(jù)串口UART之間的數(shù)據(jù)透傳功能,搭建ZigBee-WiFi智能網(wǎng)關,并將Android移動終端接入智能網(wǎng)關,實現(xiàn)對監(jiān)測設備、家居照明、安防裝置的遠程控制和集中管理。實驗結(jié)果表明,智能網(wǎng)關工作穩(wěn)定、數(shù)據(jù)傳輸可靠,實現(xiàn)了移動終端的遠程控制功能,并且具有良好的移植性和擴展性,能滿足新型智能家居控制中心系統(tǒng)的要求,給用戶帶來智能、便捷、節(jié)能的居住環(huán)境。
ZigBee;數(shù)據(jù)透傳;Android;ZigBee-WiFi網(wǎng)關;智能家居
MAO Deming, ZHANG Xuanxiong
(School of Optical and Computer Engineering, University of Shanghai Science and Technology, Shanghai 200093, China)
物聯(lián)網(wǎng)是利用計算機、網(wǎng)絡、通信、傳感與自動控制等技術,將與生活中有關的各種應用子系統(tǒng)有機的協(xié)調(diào)在一起,促進人們的生活朝著智能化、人性化的方向發(fā)展。比如目前的智能家居系統(tǒng)將各種設備聯(lián)入無線傳感器網(wǎng)絡(WSN),在基本不改動家庭裝修的前提下,可以較低的成本實現(xiàn)智能家居系統(tǒng)中實用性最強的功能——遠程控制。
無線傳感器網(wǎng)絡(WSN)[1]是分布式設備傳感網(wǎng)絡組成,每個節(jié)點處利用傳感器來監(jiān)測和檢查所在環(huán)境的情況,如溫度、聲音、煙霧、振動或者壓力。近年來ZigBee在通信方式上的轉(zhuǎn)變,大多數(shù)智能家居是與計算機相連, 該方式限制智能化的的移動性[2],因此針對這現(xiàn)象,提出ZigBee網(wǎng)絡與智能手機在同一網(wǎng)絡下相互通訊,這將給用戶帶來智能、便捷、優(yōu)質(zhì)的生活環(huán)境。
ZigBee技術是一種短距離、低復雜度、功耗低、低速率、低成本自組織的雙向無線通訊技術。此外,ZigBee從最早的ZigBee 1.0,ZigBee 1.1到ZigBee 2007/PRO版本之間,規(guī)范的協(xié)議具有很好的兼容性,與不斷完善和成熟的ZigBee技術,它廣泛應用于無線傳感網(wǎng)絡[3-5]。ZigBee協(xié)議是一組基于IEEE802.15.4標準規(guī)范的協(xié)議,包括物理層(又稱實體層)、MAC層、數(shù)據(jù)連接層、網(wǎng)絡層(NWK)和應用層5個主要層次,如圖1所示。
對于智能家居(Smart Home)系統(tǒng)中,從功能的角度,將該系統(tǒng)分為3部分:手持終端作為監(jiān)控平臺,ZigBee-WiFi網(wǎng)關作為數(shù)據(jù)采集終端(協(xié)調(diào)器),以及節(jié)點設備。
圖1 ZigBee協(xié)議結(jié)構(gòu)體系
根據(jù)ZigBee網(wǎng)絡層(NWK)的星型網(wǎng)絡拓撲結(jié)構(gòu)[6],以及ESP8266的無線接入點模式(softAP),使數(shù)據(jù)采集終端通過ZigBee-WiFi網(wǎng)關連接到本地路由器,實現(xiàn)節(jié)點與協(xié)調(diào)器之間的數(shù)據(jù)傳輸。ZigBee-WiFi網(wǎng)關接收來自移動終端的控制指令以控制節(jié)點設備,同時將數(shù)據(jù)采集終端的狀態(tài)以及報警信息反饋到手持終端,并提示用戶。
其中智能網(wǎng)關是結(jié)合ZigBee芯片CC2530與Wifi芯片ESP8266搭建ZigBee-WiFi網(wǎng)關。使用LED燈實際模擬智能家居照明、使用溫濕度傳感器DHT11監(jiān)測家居室內(nèi)溫濕度,利用ZigBee無線通訊為橋梁與節(jié)點設備組成星型網(wǎng)絡結(jié)構(gòu)進行數(shù)據(jù)傳輸。用戶就可通過移動終端APP界面中,手動輸入智能網(wǎng)關所提供的IP,實現(xiàn)節(jié)點設備與協(xié)調(diào)器多對一的“上傳下達”的功能,從而實現(xiàn)智能家居的遠程無線控制。該智能家居系統(tǒng)示意圖如圖2所示。
圖2 智能家居系統(tǒng)示意圖
3.1 節(jié)點模塊的設計
節(jié)點模塊主要是由CC2530芯片、Power/Reset模塊、無線數(shù)據(jù)收發(fā)模塊、LED模塊、溫濕度傳感器模塊和串行通信RS-232模塊組成,如圖3所示。
圖3 ZigBee終端模塊硬件框圖
CC2530結(jié)合了領先的2.4 GHz RF收發(fā)器的優(yōu)良性能,業(yè)界標準的增強型8051單片機,系統(tǒng)內(nèi)可編程閃存,8 kB RAM,采用QFN40標準封裝,可編程輸出功率達4.5 dBm,而且有出色的接收靈敏度和抗干擾能力。
溫濕度測量模塊主要是使用了DHT11數(shù)字溫濕度傳感器,其中DHT11的DATA接口與CC2530進行通信和信息同步,采用單總線數(shù)據(jù)格式,一次通信時間4 ms。當CC2530發(fā)送一次開始信號后,DHT11從低功耗模式轉(zhuǎn)換到高速模式,并送出40 bit的數(shù)據(jù),并觸發(fā)一次信息的采集,用戶可以選擇讀取部分數(shù)據(jù)。該溫濕度傳感器連接電路如圖4所示。
圖4 溫濕度傳感器連接路圖
3.2 ZigBee-WiFi網(wǎng)關設計
ESP8266擁有高性能無線SOC,一個完整且自成體系的WiFi網(wǎng)絡解決方案,能夠獨立運行,也可以作為外設裝置搭載于其他主機上通過串口之間的透傳功能進行數(shù)據(jù)傳輸。且ESP8266芯片內(nèi)部固件以LWP協(xié)議為基礎,支持softAP(AP)、station(STA)、AP+STA這3種模式,具備簡潔高效的AT指令。其中STA模式,是使用手機作為Station,連入ESP8266提供的softAP達到無線控制,如圖5所示。
圖5 STA模式示意圖
所謂透明傳輸功能[7],是只負責將數(shù)據(jù)傳到目標地址,不對數(shù)據(jù)進行處理,這樣的好處是達到數(shù)據(jù)傳輸過程中的穩(wěn)定性。然而ZigBee-WiFi網(wǎng)關構(gòu)成原因也就是ESP8266接口復用了CC2530的UART0口,通過串口的透傳程序使該模塊可以接收和發(fā)送數(shù)據(jù),通過PC端串口工具軟件將數(shù)據(jù)通過CC2530的串口設置ESP8266的AP參數(shù),使網(wǎng)關在路由器網(wǎng)絡中獲得IP,并將所獲得的IP地址提供給移動終端,完成與移動終端的通訊。在PC機中輸入指令:
AT+CWSAP=“網(wǎng)絡ID”,“密碼”
當ESP8266接收來自移動終端的數(shù)據(jù)時,數(shù)據(jù)發(fā)送至CC253芯片中的串口UART0,協(xié)調(diào)器接收到的數(shù)據(jù)通過ZigBee網(wǎng)絡至未插接ESP8266模塊的節(jié)點上,并實現(xiàn)遠程控制功能。網(wǎng)關電路原理如圖6所示。
圖6 網(wǎng)關電路原理圖
系統(tǒng)軟件設計包括節(jié)點設備中的信息采集程序、移動終端、ZigBee-WiFi網(wǎng)關3部分。
4.1 移動終端安卓程序概述
Android系統(tǒng)的移動終端中,應用程序架構(gòu)里定義了4個部分:Activity、Service、Broadcast Receiver、Content Provider[8-9]。該方案的APP也符合當下的Android應用:運行速度快、響應快速、程序狀態(tài)轉(zhuǎn)換連貫流暢且安全。移動終端的軟件由信息顯示部分和信息處理部分組成,其架構(gòu)如圖7所示。
圖7 移動終端軟件架構(gòu)
在界面設計中,用戶需要手動輸入網(wǎng)關所提供的IP地址和端口號,建立連接之后就可以通過IP和端口,實現(xiàn)移動終端與網(wǎng)關之間數(shù)據(jù)通訊。界面中的LED照明情況及溫濕度的狀態(tài)可以實時的查看和控制。按照系統(tǒng)的設計要求,對移動終端UI界面的功能設計如圖8所示。
圖8 UI界面設計圖
4.2 協(xié)調(diào)器程序設計
在Z_Stack 協(xié)議棧,運行在一個OSAL(操作系統(tǒng)抽象層)操作系統(tǒng)上,該操作系統(tǒng)基于任務調(diào)度機制,通過對任務的事件觸發(fā)來實現(xiàn)任務調(diào)度, OSAL會根據(jù)事件的優(yōu)先級依次執(zhí)行。
在main()函數(shù)中調(diào)用了很多函數(shù),但重點在開啟操作系統(tǒng)函數(shù)osal_start_system()上,之前調(diào)用的函數(shù)大多數(shù)是對板載硬件及協(xié)議棧的初始化,直到調(diào)用osal_start_system()函數(shù)時,整個協(xié)調(diào)器系統(tǒng)才算運行起來。Z_Stack協(xié)議棧運行流程如圖9所示。
圖9 Z_Stack協(xié)議棧運行流程圖
系統(tǒng)功能的調(diào)試是保證系統(tǒng)能夠按照預期設計功能的關鍵,在測試個過程中,需完成節(jié)點與協(xié)調(diào)器之間通訊,以及協(xié)調(diào)器與移動終端的通訊,完成遠程控制的功能。根據(jù)以上軟硬件的描述,搭建ZigBee-WiFi智能網(wǎng)關平臺,如圖10所示。
圖10 硬件實驗平臺連接圖
在測試ZigBee-WiFi智能網(wǎng)關實際工作中發(fā)現(xiàn)通訊距離很容易被所在的環(huán)境影響,比如墻體、水平和垂直距離等因素的影響。為設計出最優(yōu)的智能家居網(wǎng)關與節(jié)點的方案,進行了以下實驗:編寫程序,依據(jù)星形拓撲結(jié)構(gòu)搭建網(wǎng)關,并將網(wǎng)關放置在3 m高的位置,讓網(wǎng)關以1 ms的時間間隔發(fā)送數(shù)字0、1,重復發(fā)送100次為指標至節(jié)點。網(wǎng)絡結(jié)構(gòu)中的節(jié)點位置不斷變化,但節(jié)點與節(jié)點的距離每5 m的位置在變化著,通過網(wǎng)關中ZigBee的串口識別出節(jié)點接收到數(shù)字01的次數(shù)來判定該網(wǎng)絡的最佳工作距離。然后在實際環(huán)境中,網(wǎng)關與節(jié)點之間一般情況下是會有一墻體,每一樓層的高度是3.5 m,實驗數(shù)據(jù)如表1所示。
表1 工作距離實驗數(shù)據(jù)表
實驗證明,其中的3 m工作距離是無障礙物的情況,在同一個網(wǎng)關通訊的情況下,當節(jié)點與網(wǎng)關之間的距離超過15 m時信號受到明顯的影響,故各節(jié)點之間的通訊距離最佳為15 m,其覆蓋的面積可達706.5 m2,覆蓋的體積可近似的認為是1個球體,根據(jù)表1的數(shù)據(jù)可以分析出,網(wǎng)關所覆蓋的區(qū)域可近似的認為是以14 m為半徑的球體,覆蓋的體積約為11 488.21 m3,這完全能夠滿足家居的設計要求。
本文設計并實現(xiàn)了基于ZigBee和WiFi的無線智能家居網(wǎng)關系統(tǒng),該網(wǎng)關以芯片ESP8266和芯片CC2530為硬件平臺,構(gòu)建ZigBee-WiFi智能網(wǎng)關,實現(xiàn)了家居設備遠程監(jiān)控。經(jīng)過功能測試,智能網(wǎng)關工作穩(wěn)定,數(shù)據(jù)傳輸可靠,實現(xiàn)了移動終端的遠程控制功能,并且有良好的移植性和擴展性,能滿足新型智能家居控制中心系統(tǒng)的要求,給用戶帶來智能、便捷、節(jié)能的居住環(huán)境 。
[1] 白躍彬,程琨.無線傳感器網(wǎng)絡[M].北京:高等教育出版社,2015.[2] 賀志龍,龐宇,宋得龍.基于Android平臺的ZigBee協(xié)調(diào)器的設計與實現(xiàn)[J].廣東通信技術,2013(1):20-23.
[3] 鐘永鋒,劉永俊.ZigBee無線網(wǎng)絡傳感器網(wǎng)絡[M].北京:北京郵電大學出版社,2011.
[4] He H J, Yue Z Q, Wang X J. Design and Realization of Wireless Sensor Network Gateway Based on ARM[J]. Applied Mechanics & Materials,2011(56):1127-1131.
[5] 李曉維,徐勇軍.無線傳感器網(wǎng)絡技術[M].北京:北京理工大學出版社,2007.
[6] 李勁,程糾艷,李佳林,等.基于ZigBee技術的無線數(shù)據(jù)采集網(wǎng)絡[J].測控技術,2007,26(8):63-65.
[7] 任林.帶WiFi通信和RF遙控的智能門鎖的設計[J].IT時代周刊,2015(17):33-39.
[8] 許文慶,鄭美容.基于Android的智能手機應用開發(fā)的研究[J].現(xiàn)代計算機,2012(8):55-57.
[9] 張元亮.Android開發(fā)應用實戰(zhàn)詳[M].北京:中國鐵道出版社,2011.
Design and Implementation of an Intelligent Gateway Based on ZigBee and Android
An intelligent gateway solution based on ZigBee and Android technology is proposed for smart home remote wireless control. The wifi chip ESP8266 and the TI ZigBee chip CC2530are adopted to build the ZigBee-WiFi intelligent gateway with the UART serial port passthrough function. The Android mobile intelligent terminal is connected to the intelligent gateway for the remote control and centralized management of equipment monitoring, home lighting and security devices. The results show that the intelligent gateway realizes the remote control function by the mobile terminal and achieves stable operation, reliable data transmission, good portability and scalability, thus offering a smart, convenient, energy-efficient living environment.
ZigBee; data passthrough; Android; ZigBee-WiFi gateway; smart home
2016- 01- 04
毛德明(1990-) ,男,碩士研究生。研究方向:嵌入式系統(tǒng)設計等。張軒雄(1965-),男,研究員,碩士生導師。研究方向:微電子機械系統(tǒng)等。
10.16180/j.cnki.issn1007-7820.2016.10.034
TN926+.23;TP273
A
1007-7820(2016)10-118-05