APP下载

一种用于环境远程监测的ZigBee-WiFi网关研制

2014-09-24王旭辉

城市建设理论研究 2014年25期
关键词:环境监测

王旭辉

摘要:信息技术与环境监测的结合极大促进了环境监控技术的发展,而现代环境监测也对数据采集、无线传输和远程应用提出了更高的要求。ZigBee以其低功耗、自组网被广泛用于监测系统中,为了将其与高传输速率、易于远程应用的WiFi网络集成,本文设计并实现了一种基于STM32W108及AX22001芯片的ZigBee-WiFi无线网关,该网关能够完成ZigBee与WiFi之间的协议转换,实现两种不同网络间的数据互联,拓展了环境监测设备的感知、监控范围。经测试,该无线网关达到设计要求且运行稳定可靠。

关键词:环境监测;ZigBee;WiFi;无线网关

中图分类号:X83 文献标识码:A

引言

随着环保意识的日益加强,对于环境的监测要求越来越高,不仅监测的参数越来越多,而且监测范围越来越细,手段也更加灵活。因此,用信息技术来提升环境监测设备不仅可能而且必要。早期环境监测设备中的监控数据多采用有线传输或者人工抄表,因其布线繁冗,成本高,位置固定,灵活度低而受到很大限制。智能化的数据采集处理与无线传输是环境监测设备的重要发展趋势。

ZigBee是目前应用最为广泛的近场无线通信技术之一,具有自组织、低成本、低功耗、高可靠性和短时延的特点,是需要较多传感控制节点应用的首选。ZigBee工作在2.4GHz ISM频段,最多可容纳65536个节点,节点不仅能进行数据采集,还能以多跳的方式承担网内节点的数据转发。但ZigBee单跳通信距离较短,数据传输速率最高仅为250kb/s@2.4GHz且不能直接与Internet互联[1]。

为了拓展通信距离和实现远程应用,文献【2】直接给出了基于WiFi的监控方案,但是WiFi节点功耗相对较高,组网方式限制了其覆盖范围。文献【3】采用ZigBee和以太网相结合的方式实现数据采集与远程应用,具体是通过ARM+Linux控制通信模块,如GPRS/CDMA或其他以太网接口来实现的。ARM芯片分别与ZigBee和通信模块相连,通过运行ARM中Linux平台上的代码进行总体控制和协议转换,此类方案虽可实现ZigBee与以太网之间的协议转换,但是网关的功耗大,成本高,协议转换效率低,可靠性与稳定性相对较差。

为充分利用ZigBee和WiFi的优点,实现设施环境监测数据与Internet无缝链接,拓展设施环境监测设备的应用范围。本文给出并实现了一种新的ZigBee-WiFi无线网关,该网关以STM32W108及AX22001为核心芯片,通过固化在芯片中的代码实现ZigBee网络与WiFi网络的协议转换,经测试,该无线网关稳定可靠,功耗低,能够满足设现代环境监测对数据采集、无线传输和数据远程应用的要求。

1.网关硬件设计与实现

ZigBee-WiFi无线网关位于ZigBee网络和WiFi网络之间,实现两种不同协议的转换。本文设计并实现的网关既是ZigBee网络的协调器,负责构建和配置整个ZigBee无线传感器网络,又是WiFi的无线节点,具有收集分发ZigBee节点数据、协议转换功能。其结构和功能如图1所示:

图1 ZigBee-WiFi网关结构能功能

ZigBee部分以STM32W108CBU61为核心芯片,它是集成了符合IEEE 802.15.4标准2.4GHz收发器的32位ARM Cortex-M3微处理器,固化了Ember ZigBee协议栈,支持星型、树状和网状三种ZigBee基本网络结构[6]。

网关中ZigBee射频部分在使用片内功率放大器时,无阻挡传输距离约为75M,能够满足布局简单,范围较小的场合。

网关中WiFi部分主控核心芯片AX22001是内置802.11无线网MAC/基带双CPU架构的TCP/IP微处理器,其中MCPU负责应用程序和TCP/IP协议处理,WCPU则负责WLAN协议处理以及以太网封包格式的转换,支持软件设置TCP 服务器、TCP客户端以及UDP工作模式。WiFi射频部分的核心芯片是AL2230S,它工作于2.4GHz频段,支持802.11b/g。STM32W108与AX22001间的数据交换通过UART完成。

ZigBee和WiFi都使用2.4GHz ISM频段,其间干扰是影响网关稳定工作的重要因素。ZigBee将工作得2.4GHz频段划分为16个信道,信道带宽为2MHz;WiFi则将该频段划分为11个信道,信道带宽为22MHz。ZigBee与WiFi有12个信道重叠,无重叠信道最多有4个,如图2所示。

图2 WiFi与ZigBee信道分配图

虽然ZigBee信号相对于WiFi属于窄带干扰源,WiFi通过扩频技术可以充分抑制ZigBee信号。同时ZigBee网络在信道访问上采用了CSMA-CA碰撞避免机制,通过检测信道上能量判断信道状态,这种信道占用检测和动态信道选择的方式对ZigBee和WiFi抗同频干扰,实现共存非常重要[7] 。在网关的硬件设计中仍需尽可能的将ZigBee和WiFi模块隔开且用铁壳覆盖以减少辐射外泄,软件设置ZigBee与WiFi信道选择范围,以减少二者信道相互重叠的可能性。此外,ZigBee和WiFi模块分别单独供电,软件实现“时分复用”,尽可能避免出现ZigBee和WiFi同时发送数据的情况出现,提高网关无线数据传输的可靠性和稳定性。

2.网关软件设计与实现

ZigBee采用IEEE 802.15.4协议,根据节点地址进行通信,WiFi采用TCP/IP协议,根据IP地址进行通信。ZigBee传感节点采集到的数据按照IEEE 802.15.4协议传送到网关,网关解析出数据的有效载荷并转发给WiFi网络。当WiFi网络需要发送数据给ZigBee中节点时,网关会根据TCP/IP数据包中含有的ZigBee节点地址将有效数据转发到指定节点。网关软件通过调用协议栈建立并维护网络通信,数据转换在应用层上实现。

网关中ZigBee模块作为协调器,负责ZigBee网络的建立,信息接收、汇总及传输。协调器上电后扫描信道创建ZigBee网络,选定一个PANID作为协调器的网络标识,创建路由表,广播网络允许节点加入网络。ZigBee模块的工作流程如图3所示:

图3 ZigBee协调器工作流程图

WiFi模块负责WiFi网络中的数据收发,支持AD-HOC直连和基础网络模式两种通信模式。本文将WiFi节点配置成基础网络模式,通过无线路由与上位机进行数据交换。WiFi模块上电后,初始化硬件和网络协议栈,设置模块参数,扫描信道加入无线局域网络。图4为WiFi模块工作流程图:

图4 WiFi模块工作流程图

ZigBee向WiFi发送数据:网关内的ZigBee协调器接收到节点传来的数据后将其与发送节点地址通过UART发送给AX22001主MCU,运行在主MCU中的程序将数据及节点地址打包通过WiFi发送出去。WiFi向ZigBee发送数据:AX22001主MCU将接收到的IP数据包解包提取目的节点地址和数据,通过UART将其发送给网关内的ZigBee协调器,协调器根据目的节点地址将数据发送到指定节点上。

3.系统测试与结果分析

为测试ZigBee-WiFi无线网关的运行情况,本文采用多线程技术开发了上位机监控测试程序,其中主线程用来接收数据,发送线程用来发送数据。ZigBee-WiFi网关与测试程序之间通信通过Socket套接字来完成,网关运行在服务器模式下,测试程序运行在客户端模式下,通信流程如图5所示。

图5 socket通信流程图

测试时将ZigBee采集节点设置为全功能路由节点,外接温湿度、光强、二氧化碳浓度传感器。在一112M×49M食品生产车间中布置15个数据采集结点,测试程序运行在PC上,配置PC使得ZigBee-WiFi网关和PC工作在同一无线网络中。ZigBee-WiFi网关首先加电启动,然后运行位于WiFi网络中PC上的测试程序,输入指定的IP地址和端口后,点击连接。接收数据结果如图6所示。

图6 上位机接收数据

接收到的数据包括ZigBee节点64位全球唯一的物理地址地址,如图中“0080E102001BC0A8”,接收到的信号的强度RSSI,该参数可被用来判定链接质量,其余分别为传感器测得的环境参数值。同时上位机通过WiFi向ZigBee中所有节点循环依次发送数据,ZigBee节点均可正确接收。经多天连续运行测试,数据传输多在单跳内完成且时延小于10ms,丢包与信号强度及频率有关,据测试结果可知网关丢包率小于1%。上述结果表明设计的网关节点功能符合要求且系统运行稳定、可靠。

4.结论

本文以STM32W108及AX22001为核心芯片设计并实现了一个用于环境监测中的ZigBee-WiFi无线网关。该网关能够满足ZigBee与WiFi两种不同网络间数据互联要求,实现了ZigBee网络与WiFi网络的无缝连接,拓展了ZigBee网络的覆盖范围,方便与远程环境监测系统实现无缝连接。同时,该网关较其他方案具有功耗低,结构简单,组网方便等特点。

参考文献:

[1]张荣标,谷国栋,冯友兵 等.基于IEEE802.15.4的温室无线监控系统的通信实现[J].农业机械学报,2008,39(8):119~122,127.

[2] 刘红义,赵方,李朝晖 等.一种基于WiFi传感器网络的室内外环境远程监测系统设计与实现[J].计算机研究与发展,2010,47(z2):361~365.

[3]韩华峰,杜克明,孙忠富 等.基于Zigbee网络的温室环境远程监控系统设计与应用[J].农业工程学报,2009,25(7):158~163.

[4]王晓喃,殷旭东.基于6LoWPAN无线传感器网络的农业环境实时监控系统[J].农业工程学报,2010,26(10):224~228.

[5]陈琦,韩冰,秦伟俊 等. 基于Zigbee/GPRS物联网网关系统的设计与实现[J].计算机研究与发展,2011, 48(z2):367~372.

[6]沈建华,郝立平. STM32W无线射频Zigbee单片机原理与应用[M]. 北京:北京航空航天大学出版社,2010.

[7]张招亮,陈海明,黄庭培 等. 无线传感器网络中一种抗无线局域网干扰的信道分配机制[J].计算机学报,2012,35(3):504~517.

猜你喜欢

环境监测
土壤环境监测方法探讨
分析3S技术在生态环境监测中的应用
严惩环境监测数据造假 谁签字谁负责