基于ZigBee和Android的环境监控APP的设计与实现
2016-10-21郭青薛亮
郭青 薛亮
摘 要:文章设计了一种以CC2530为核心控制芯片的ZigBee无线传感器网络环境监控系统,由协调器节点、路由器节点和终端传感器节点三部分构成。协调器节点建立并维护ZigBee网络,无线终端传感器节点采集环境信息,通过ZigBee网络经路由器节点和协调器节点将数据上传到智能手机监控客户端达到实时监测的效果。文章详细阐述了节点的硬件设计方法和软件流程。经实验证明,该系统性能稳定、扩展性好、功耗低,可广泛应用于农业大棚等环境监测领域。
关键词:CC2530安卓;ZigBee技术;手持设备;无线传感器网络
引言
近年来,随着工农业规模化的发展,环境监测网络被广泛地应用于大棚种植、粮食储藏、生物化学制药、畜牧养殖等领域中,建立有效的环境监测网络已经成为非常重要的技术环节[1]。现有传统的环境监测系统使用有线监测设备,布线复杂,维护困难,灵活性差。将传感器与无线通信技术相结合的无线传感器网络环境监测系统无需布设线路,不受环境制约,容易扩展,维护方便。
随着无线通信技术的发展,无线传感器网络(WSN,wireless sensor networks)[2]得到广泛应用,在WSN中通过在观测区域内部署大量的传感器节点,采集网络覆盖区域内感知对象的信息,以自组多跳的无线通信方式,将收集、处理后的信息提供给观察者。在实际的WSN应用领域中,ZigBee是一种新兴的短距离、低速率、高效率无线网络技术[3],是基于IEEE802.15.4标准研制开发,关于组网、安全和应用软件的技术标准。其突出优点是应用简单、工作频段灵活、低功耗、低成本、高可靠性,具有自组网和自恢复能力,非常适合用于无线温湿度、气体等环境监测系统[4]。APP是智能手机的第三方应用程序。文章基于ZigBee无线技术,以射频收发器CC2530芯片为核心,在TI公司的免费协议栈Z-Stack基础上,构建了应用于无线环境监测的ZigBee无线传感器网络,利用Eclipse4.4安卓开发平台使用java语言开发了环境监测管理系统APP,实现了安卓手机客户端及其他智能手持设备可远程实时监测环境的变化情况。
1 系统总体方案设计
无线环境监测系统由下位机ZigBee网络和智能手持设备APP两部分组成,如图1所示。下位机ZigBee网络系统由协调器节点、路由器节点和传感器终端节点组成树状网络拓扑。协调器节点主要负责建立ZigBee无线网络,并发送和接收指令;传感器终端节点主要负责感知周围环境信息,处理收集到的数据,然后通过无线射频发送给最近的路由器节点;路由器节点转发传感器节点采集到的数据给协调器,克服了远距离的终端节点的信号衰减的问题。上位机通过串口方式与协调器连接负责把下位机系统发送来的环境监测数据用串口调试助手显示出来,便于管理人员对环境信息进行实时监控。同时,智能手持设备通过自带Wi-Fi功能,可以将下位机采集的数据同时显示在手持设备的APP上。此外,在本设计中加入了对环境灯光的远程控制功能,手持设备可以通过点击APP中的图标实现远程控制灯光的开关。
2 系统硬件设计
本设计选用TI公司的CC2530F256片上系统芯片作为协调器、路由器和终端传感器节点的硬件核心。CC2530设有强大的无线前端,集成IEEE802.15.4标准2.4GHz频段的RF无线电收发机,射频调制模式为DSSS,具有较高的无线接收灵敏度和抗干扰性,传输距离大于75m,最高传输速率250kbps[4]。CC2530集成了1个增强型8051MCU内核,保证低功耗和相对高性能,本设计选取的系统可编程内存为256KB,以及8KB的RAM。CC2530提供了8通道12位A/D转换器和21个通用GPIO、2个UART接口、AES-128安全加密功能、看门狗定时器、32kHz晶振的休眠模式定时器,使得CC2530只需很少的外围电路即可构建一个简单的ZigBee节点[5]。CC2530支持2.0~3.6V供电电压,具有三种电源管理模式:唤醒模式0.2mA、睡眠模式1uA和中断模式0.4uA,当CC2530处于空闲模式时,任何中断可以把CC2530恢复到主动模式,有些中斷还可以将CC2530从睡眠模式唤醒,满足超短时间快速转换,确保了低能源消耗,工作温度范围为-40°C~125°C,特别适合要求电池寿命长且环境变化大的室外工作环境[5]。
2.1 协调器节点和路由器节点硬件设计
协调器节点负责对ZigBee网络进行配置和管理,向终端节点发布监测指令并收集监测数据然后通过串口上传到上位机显示,因此,协调器节点的硬件设计由CC2530芯片、串口模块、电源模块、射频天线(RF)模块及晶振电路等模块组成。RF ZigBee射频天线模块主要用于数据的无线收发和传送。串口模块选用PL-2303HX芯片来完成RS232-USB接口转换[6]。电源模块用于为协调器节点功能模块供电,保证节点的正常运行,供电电压为2.0~3.6V。晶振电路模块是两个不同频率的晶振,分别用于无线数据收发和休眠状态。路由器节点相比协调器节点只是没有串口模块。协调器节点硬件设计结构图如图2所示。
2.2 终端节点硬件设计
终端节点的硬件设计主要包括:用于采集环境温湿度数据的传感器DHT11、监测烟雾及可燃气体的MQ-2传感器;处理和传输数据的核心芯片CC2530及无线通信模块;低功耗的Flash存储芯片;电源模块采用外接锂电池盒供电。当各传感器检测到环境信息时,首先由CC2530对数据进行预处理,然后通过天线发送给ZigBee网络中的路由器节点,间接与协调器进行无线通信。当传输完毕后,芯片进入低功率的睡眠模式来延长电池寿命。终端传感器节点的结构如图3所示。
本设计的温湿度传感器采用DHT11数字温湿度传感器,如图4(a),这是一款含有已校准数字信号输出的温湿度复合传感器。它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。单线制串行接口,信号传输距离可达20米以上。温度测量范围是0°C~+50°C,精度±2°C,湿度测量范围20~90%RH,精度±5.0%RH[7]。DHT11与CC2530之间通过串行总线I2C进行通信,DATA三态门用于数据的读取。DHT11上电后,经过11s时间进入休眠状态,只有当CC2530微处理器发出测试命令后,DHT11才被唤醒进行工作[7]。
本设计的气体传感器采用MQ-2传感器。该传感器所使用的气敏材料是在清洁空气中电导率较低的二氧化锡(SnO2)。当传感器所处环境中存在可燃气体时,传感器的电导率随空气中可燃气体浓度的增加而增大[8]。使用简单的电路即可将电导率的变化转换为与该气体浓度相对应的输出信号。MQ-2气体传感器对液化气、丙烷、氢气的灵敏度高,对天然气和其他可燃蒸汽的检测也很理想。这种传感器可检测多种可燃性气体,是一款适合多种应用的低成本传感器。
3 软件实现
本设计下位机ZigBee网络基于TI公司的Z-Stack-CC2530-2.3.0-1.4.0协议栈,利用IAR Embedded Workbench V7.60 for 8051集成开发平台开发。当系统开始工作时,由上位机监控软件设置串口号、波特率、校验位等参数,开启串口连接,下位机ZigBee网络中的协调器上电之后将根据预先定义好的网络编号PANID,启动并组建ZigBee网络,等待路由节点和终端节点的入网请求,组网后分布在各个地点的传感器节点开始独立采集环境信息,采集到的数据将直接或者经路由器节点间接发送到协调器节点,最终通过 RS232-USB转换器将数据送入监控主机。在ZigBee网络中,路由器节点相当于不能组建网络的协调器节点,其功能模块如处理节点绑定请求、发送绑定处理消息等功能实现和协调器类似。
安卓手机客户端APP利用Eclipse4.4开发。各种装有Android系统的手持设备如智能手机或PAD,在安装本设计的安装包后,查询上位机所在电脑的IP地址,打开手持设备的Wi-Fi功能并连接好后,点击网络设置,输入电脑IP地址后点连接,此时与协调器所连的上位机虚拟为一台收发与存储数据的服务器,位于同一局域网的其他智能手持设备可访问这个服务器进行采集数据的查询。客户端显示连接成功后,自动刷新数据。点击右侧小灯泡图标,可以控制终端节点上LED灯的开关。系统的软件流程图如图5。
4 测试结果
本设计在河北工程大学第三教学楼一楼服务器机房模拟环境实时监测,该系统采用四个终端节点,一个路由节点,一个协调器节点。将四个终端节点分别放置于服务器机房不同位置:机房入口、窗口、交换机底部和顶部。终端节点和路由器节点采用电池盒供电,内部包括2节7号锂电池,协调器采用RS232-USB串口线与电脑上位机相连,电脑采用Acer宏 笔记本电脑,智能手持设备为MI3手机。系统节点实物如图6。
打开手机WI-FI功能,将APP的网络设置为协调器所连接电脑的IP地址,按下协调器的S1按键,即启动协调器的组网功能,然后观察手机客户端APP测试界面如图7,左侧为温湿度实时数据,中间绿色图标为气体正常显示,右侧四个小灯泡图标表示目前四个终端节点的LED显示灯正处于打开状态,点击各个小灯图标即可使终端节点上LED灯熄灭。
两次测试结果表明,当实验者在机房所在楼道(距离50米内)时打开该监控APP即可查看监控实时数据。机房内部交换机顶部和底部节点的温湿度测量值略高于机房窗口,这是由于交换机工作时产生大量的热量。多次测量结果符合实际情况。
5 结束语
文章在TI公司的Z-Stack2007协议栈和IAR开发环境下,以CC2530芯片为硬件核心构建了一个ZigBee无线环境监测网络,采用Eclipse4.4开发了手持设备安卓客户端。阐述了组成无线传感器网络所需的终端传感器节点、协调器节点和路由器节点的硬件设计方法及软件流程。经实验证明,本系统结构简单、准确性高、功耗低,能够满足实际应用的误差要求并能长时间稳定工作,具有较高的实用推广价值。
参考文献
[1]张涛.基于CC2530的温度监测模块设计与应用[D].南昌大学,2012.
[2]李正民,张兴伟,柳宏川.基于CC2530的温湿度监测系统的设计与实现[J].测控技术,2013,5:25-28+39.
[3]张睿,王建中.基于CC2530的无线温度传感网络的设计[J].杭州电子科技大学学报,2014,3:87-90.
[4]王鑫,潘贺,杨简.基于CC2530的ZigBee无线温湿度监测系统设计[J].中国农机化学報,2014,35(3):217-220+238.
[5]李文仲,段朝玉,等.ZigBee无线网络技术入门与实战[D].北京:北京航空航天大学.
[6]V. Sri Jahnavi,Shaik Fayaz Ahamed. Smart Wireless Sensor Network for Automated Greenhouse[J]. IETE Journal of Research,2015,612.
[7]XinZhenghua,ChenGuolong,LiXianwei. Research on the ZigBee Network and Equipment Design Based on the CC2530[J]. Sensors &; Transducers,2013,15811.
[8]隋浩,徐国凯,孙炎辉.基于ZigBee无线传感网络技术节点设计与实现[J].物联网技术,2014,2:47-50.
[9]Zigbee Technology, Zigbee Alliance. Available: http://www.zigbee. org/About/About Technology/ ZigBeeTechnology.aspx.
[10]Zigbee Sensor Monitor Software & User's Guide, Texas Instruments Inc., Texas, US, 2008. Available: http://www.ti.com/lit/zip/swrc096.
[11]CC2530 ZigBee Development Kit User's Guide, Texas instruments Inc., Texas, US, 2010. Available: http://www.ti.com/tool/cc2530zdk.
作者简介:郭青(1988-),女,满族,河北省秦皇岛市,在读硕士,研究方向为无线传感器网络。
薛亮(1982-),男,河北省邯郸市,副教授,博士,主要从事无线传感器网络组网理论与关键性技术和无线认知网络的研究。