毛德明,张轩雄
(上海理工大学 光电信息与计算机工程学院,上海 200093)
基于ZigBee与Android技术的智能网关设计
毛德明,张轩雄
(上海理工大学 光电信息与计算机工程学院,上海 200093)
为实现智能家居远程无线控制功能,设计了一种基于ZigBee与Android技术的智能网关方案。该方案是通过WiFi芯片ESP8266与TI公司的ZigBee芯片CC2530相结合,根据串口UART之间的数据透传功能,搭建ZigBee-WiFi智能网关,并将Android移动终端接入智能网关,实现对监测设备、家居照明、安防装置的远程控制和集中管理。实验结果表明,智能网关工作稳定、数据传输可靠,实现了移动终端的远程控制功能,并且具有良好的移植性和扩展性,能满足新型智能家居控制中心系统的要求,给用户带来智能、便捷、节能的居住环境。
ZigBee;数据透传;Android;ZigBee-WiFi网关;智能家居
MAO Deming, ZHANG Xuanxiong
(School of Optical and Computer Engineering, University of Shanghai Science and Technology, Shanghai 200093, China)
物联网是利用计算机、网络、通信、传感与自动控制等技术,将与生活中有关的各种应用子系统有机的协调在一起,促进人们的生活朝着智能化、人性化的方向发展。比如目前的智能家居系统将各种设备联入无线传感器网络(WSN),在基本不改动家庭装修的前提下,可以较低的成本实现智能家居系统中实用性最强的功能——远程控制。
无线传感器网络(WSN)[1]是分布式设备传感网络组成,每个节点处利用传感器来监测和检查所在环境的情况,如温度、声音、烟雾、振动或者压力。近年来ZigBee在通信方式上的转变,大多数智能家居是与计算机相连, 该方式限制智能化的的移动性[2],因此针对这现象,提出ZigBee网络与智能手机在同一网络下相互通讯,这将给用户带来智能、便捷、优质的生活环境。
ZigBee技术是一种短距离、低复杂度、功耗低、低速率、低成本自组织的双向无线通讯技术。此外,ZigBee从最早的ZigBee 1.0,ZigBee 1.1到ZigBee 2007/PRO版本之间,规范的协议具有很好的兼容性,与不断完善和成熟的ZigBee技术,它广泛应用于无线传感网络[3-5]。ZigBee协议是一组基于IEEE802.15.4标准规范的协议,包括物理层(又称实体层)、MAC层、数据连接层、网络层(NWK)和应用层5个主要层次,如图1所示。
对于智能家居(Smart Home)系统中,从功能的角度,将该系统分为3部分:手持终端作为监控平台,ZigBee-WiFi网关作为数据采集终端(协调器),以及节点设备。
图1 ZigBee协议结构体系
根据ZigBee网络层(NWK)的星型网络拓扑结构[6],以及ESP8266的无线接入点模式(softAP),使数据采集终端通过ZigBee-WiFi网关连接到本地路由器,实现节点与协调器之间的数据传输。ZigBee-WiFi网关接收来自移动终端的控制指令以控制节点设备,同时将数据采集终端的状态以及报警信息反馈到手持终端,并提示用户。
其中智能网关是结合ZigBee芯片CC2530与Wifi芯片ESP8266搭建ZigBee-WiFi网关。使用LED灯实际模拟智能家居照明、使用温湿度传感器DHT11监测家居室内温湿度,利用ZigBee无线通讯为桥梁与节点设备组成星型网络结构进行数据传输。用户就可通过移动终端APP界面中,手动输入智能网关所提供的IP,实现节点设备与协调器多对一的“上传下达”的功能,从而实现智能家居的远程无线控制。该智能家居系统示意图如图2所示。
图2 智能家居系统示意图
3.1 节点模块的设计
节点模块主要是由CC2530芯片、Power/Reset模块、无线数据收发模块、LED模块、温湿度传感器模块和串行通信RS-232模块组成,如图3所示。
图3 ZigBee终端模块硬件框图
CC2530结合了领先的2.4 GHz RF收发器的优良性能,业界标准的增强型8051单片机,系统内可编程闪存,8 kB RAM,采用QFN40标准封装,可编程输出功率达4.5 dBm,而且有出色的接收灵敏度和抗干扰能力。
温湿度测量模块主要是使用了DHT11数字温湿度传感器,其中DHT11的DATA接口与CC2530进行通信和信息同步,采用单总线数据格式,一次通信时间4 ms。当CC2530发送一次开始信号后,DHT11从低功耗模式转换到高速模式,并送出40 bit的数据,并触发一次信息的采集,用户可以选择读取部分数据。该温湿度传感器连接电路如图4所示。
图4 温湿度传感器连接路图
3.2 ZigBee-WiFi网关设计
ESP8266拥有高性能无线SOC,一个完整且自成体系的WiFi网络解决方案,能够独立运行,也可以作为外设装置搭载于其他主机上通过串口之间的透传功能进行数据传输。且ESP8266芯片内部固件以LWP协议为基础,支持softAP(AP)、station(STA)、AP+STA这3种模式,具备简洁高效的AT指令。其中STA模式,是使用手机作为Station,连入ESP8266提供的softAP达到无线控制,如图5所示。
图5 STA模式示意图
所谓透明传输功能[7],是只负责将数据传到目标地址,不对数据进行处理,这样的好处是达到数据传输过程中的稳定性。然而ZigBee-WiFi网关构成原因也就是ESP8266接口复用了CC2530的UART0口,通过串口的透传程序使该模块可以接收和发送数据,通过PC端串口工具软件将数据通过CC2530的串口设置ESP8266的AP参数,使网关在路由器网络中获得IP,并将所获得的IP地址提供给移动终端,完成与移动终端的通讯。在PC机中输入指令:
AT+CWSAP=“网络ID”,“密码”
当ESP8266接收来自移动终端的数据时,数据发送至CC253芯片中的串口UART0,协调器接收到的数据通过ZigBee网络至未插接ESP8266模块的节点上,并实现远程控制功能。网关电路原理如图6所示。
图6 网关电路原理图
系统软件设计包括节点设备中的信息采集程序、移动终端、ZigBee-WiFi网关3部分。
4.1 移动终端安卓程序概述
Android系统的移动终端中,应用程序架构里定义了4个部分:Activity、Service、Broadcast Receiver、Content Provider[8-9]。该方案的APP也符合当下的Android应用:运行速度快、响应快速、程序状态转换连贯流畅且安全。移动终端的软件由信息显示部分和信息处理部分组成,其架构如图7所示。
图7 移动终端软件架构
在界面设计中,用户需要手动输入网关所提供的IP地址和端口号,建立连接之后就可以通过IP和端口,实现移动终端与网关之间数据通讯。界面中的LED照明情况及温湿度的状态可以实时的查看和控制。按照系统的设计要求,对移动终端UI界面的功能设计如图8所示。
图8 UI界面设计图
4.2 协调器程序设计
在Z_Stack 协议栈,运行在一个OSAL(操作系统抽象层)操作系统上,该操作系统基于任务调度机制,通过对任务的事件触发来实现任务调度, OSAL会根据事件的优先级依次执行。
在main()函数中调用了很多函数,但重点在开启操作系统函数osal_start_system()上,之前调用的函数大多数是对板载硬件及协议栈的初始化,直到调用osal_start_system()函数时,整个协调器系统才算运行起来。Z_Stack协议栈运行流程如图9所示。
图9 Z_Stack协议栈运行流程图
系统功能的调试是保证系统能够按照预期设计功能的关键,在测试个过程中,需完成节点与协调器之间通讯,以及协调器与移动终端的通讯,完成远程控制的功能。根据以上软硬件的描述,搭建ZigBee-WiFi智能网关平台,如图10所示。
图10 硬件实验平台连接图
在测试ZigBee-WiFi智能网关实际工作中发现通讯距离很容易被所在的环境影响,比如墙体、水平和垂直距离等因素的影响。为设计出最优的智能家居网关与节点的方案,进行了以下实验:编写程序,依据星形拓扑结构搭建网关,并将网关放置在3 m高的位置,让网关以1 ms的时间间隔发送数字0、1,重复发送100次为指标至节点。网络结构中的节点位置不断变化,但节点与节点的距离每5 m的位置在变化着,通过网关中ZigBee的串口识别出节点接收到数字01的次数来判定该网络的最佳工作距离。然后在实际环境中,网关与节点之间一般情况下是会有一墙体,每一楼层的高度是3.5 m,实验数据如表1所示。
表1 工作距离实验数据表
实验证明,其中的3 m工作距离是无障碍物的情况,在同一个网关通讯的情况下,当节点与网关之间的距离超过15 m时信号受到明显的影响,故各节点之间的通讯距离最佳为15 m,其覆盖的面积可达706.5 m2,覆盖的体积可近似的认为是1个球体,根据表1的数据可以分析出,网关所覆盖的区域可近似的认为是以14 m为半径的球体,覆盖的体积约为11 488.21 m3,这完全能够满足家居的设计要求。
本文设计并实现了基于ZigBee和WiFi的无线智能家居网关系统,该网关以芯片ESP8266和芯片CC2530为硬件平台,构建ZigBee-WiFi智能网关,实现了家居设备远程监控。经过功能测试,智能网关工作稳定,数据传输可靠,实现了移动终端的远程控制功能,并且有良好的移植性和扩展性,能满足新型智能家居控制中心系统的要求,给用户带来智能、便捷、节能的居住环境 。
[1] 白跃彬,程琨.无线传感器网络[M].北京:高等教育出版社,2015.[2] 贺志龙,庞宇,宋得龙.基于Android平台的ZigBee协调器的设计与实现[J].广东通信技术,2013(1):20-23.
[3] 钟永锋,刘永俊.ZigBee无线网络传感器网络[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] 李晓维,徐勇军.无线传感器网络技术[M].北京:北京理工大学出版社,2007.
[6] 李劲,程纠艳,李佳林,等.基于ZigBee技术的无线数据采集网络[J].测控技术,2007,26(8):63-65.
[7] 任林.带WiFi通信和RF遥控的智能门锁的设计[J].IT时代周刊,2015(17):33-39.
[8] 许文庆,郑美容.基于Android的智能手机应用开发的研究[J].现代计算机,2012(8):55-57.
[9] 张元亮.Android开发应用实战详[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-) ,男,硕士研究生。研究方向:嵌入式系统设计等。张轩雄(1965-),男,研究员,硕士生导师。研究方向:微电子机械系统等。
10.16180/j.cnki.issn1007-7820.2016.10.034
TN926+.23;TP273
A
1007-7820(2016)10-118-05