前言:想要写出一篇令人眼前一亮的文章吗?我们特意为您整理了5篇zigbee协议范文,相信会为您的写作带来帮助,发现更多的写作思路和灵感。
作为互联在形式上面的扩展,其主要发展的主要技术分别是:传感器、嵌入式自动化只能技术、RFID以及纳米技术。而作为物联网当中一项关键性的技术――无线传感器网络,对其的研究已经逐步成为了目前计算机领域当中的一个热点,它不仅在生产生活,还是在医学军事方面的应用都相当的广阔。但是随着计算机技术的快速发展,目前各种无线传感器网络都是如雨后春笋板出现,这样一来就不利于各个网络之间的网节点互联以及网络之间的管理。
ZigBee协议的出现标准的规范了网络直接的节点互联以及网络之间的管理,有效的解决了网络拓展之间存在的问题。
1 无线传感器网络的简介
无线传感器网络(Wireless Sensor Network, WSN)是由大量的静止或移动的传感器以自组织和多跳的方式构成的无线网络,以协作地感知、采集、处理和传输网络覆盖地理区域或者是区内被感知对象的信息,并最终把这些信息发送给网络的所有者。它综合了网络技术的方方面面,并通过了无线网的传感实现了无处不在的运算理念。图1为无线传感网络的结构示意图。
由于传感器一般情况下都是嵌入到各个电子设备当中,外加监测区域环境往往比较复杂,传感器的网络节点非常多,导致了网络的维护十分麻烦甚至就是不能进行维护。因此,导对于无线传感器的设计要做到网络容量要大,传感器体积小,消耗低等特点,以实现自组网络的动态性,并且还要加强无线传感器的网络安全,在无线信道上分布式的控制传感器所受到的攻击。
2 Zigbee协议概述
Zigbee协议是在无线网基础上延伸出来的一种网络安全协议,Zigbee是一种新兴的无线网络技术,其具有复杂程度低、距离近、功耗低、成本低、低数据速率等特点。其不仅可以适用于各种自动控制以及远程控制当中,还可以嵌入到不同的设备中去,强大了网络的应用。Zigbee的发射速率是10~250KB/s,延时时间在15~30ms之间,通讯的有效范围是10~75m,工作频率是2.4GHz、868MHz(欧洲)及915MHz(美国),单个的Zigbee可支持255个网络节点插入。
2.1 Zigbee协议栈简介
一个完整的Zigbee协议是从下而上依次由物理层、数据链路层、网络层、应用汇聚层和应用层五个层面组成。其中应用层是面对各种不用应用型业务的最高层用户;应用汇聚层主要的工作是将不用的应用需求反馈到Zigbee网络层上;网络层主要是功能层针对一些网络问题进行MAC、拓扑、安全等等管理;数据链路层又分为LLC和MAC,对输送过来的数据进行一个逻辑的分析建立,以保证数据管理的正常运行。
2.2 Zigbee的网络拓扑结构
Zigbee技术目前支持3中通讯技术的网络拓扑,其中包括星形(Star)、网状(Mesh)和树状(Cluster Tree)。Star网络技术是一种被常用于长期操作当中的网络;Mesh网络则是一种高检测性的网络,其可以通过无线网实现多个数据通道互联的效果,减少故障的发生,提高数据通道的安全性能;Cluster Tree网络是结合了Star网络与Mesh网络两者的优点,所拓扑出来的一种网络模式。
3 Zigbee技术的应用
Zigbee技术的发展应该根据当前网络技术当中所存在问题而进行推广,以弥补其他无线网技术的短距离、传送数据少、传送速率低等缺点,做到低成本、大容量、功耗低、智能化强的特点,以完善传感器领域的空白作用。
Zigbee技术的开发是一项工作较为复杂的技术工程,其涉及到的技术不仅有网络领域当中的传输、射频等技术,还涉及到了底层软件硬件控制等技术。在对Zigbee技术进行无线传感器网络开发时,主要也就考虑到网络的节点以及相适应的功能型软件。目前,在科研人员的努力之下在硬件上已经将Zigbee技术应用到了射频芯片等,这些高科技含量的硬件设施降低了开发者的设计要求,只需要在其中加入一些元件就可以实现应节点的应用,在加上Zigbee相关软件的开发利用,加速了Zigbee系统的设计,已经进一步的简化了用户命令接口,普通的用户只要使用一些简单的命令,就可以实现Zigbee的网络控制。
Zigbee是一项新的无线网络通讯技术,其相应的标准还待于完善,也正是如此Zigbee技术在现实生活中的应用也受到了一定的阻碍。但是不管如何在标准化来临之前,这是一个技术发展的趋势,象征着网线网络时代的真正到来,只有逐步完善无线网络的标准,才可以实现网络无处不在的理想。目前随着Zigbee组织的联盟,更加加速了IT技术的发展,Zigbee技术也会将变得越来越可靠灵活。
[参考文献]
关键词:无线体域网;ZigBee;NS2;时延;丢包率
中图分类号:TP212.9 文献标识码:A 文章编号:2095-1302(2014)04-0044-03
0 引 言
无线体域网(Wireless Body Area Network,WBAN)又称体域传感网(Body Area Sensor Networks,BASN),它是以人体为中心的通信网络,是由分布于人体表面和人体内部的传感器和组网设备以及与人体有关的网络元素构成[1]。WBAN随着医疗健康领域的飞速发展以及市场的巨大需求,越来越受到学术界和产业界的青睐。
WBAN的业务种类异构,普通业务、紧急业务和按需业务共存,因此其对数据传输技术有着特殊的要求[2,3]。当前WBAN主要采用的传输技术标准有蓝牙、ZigBee、超宽带(UWB)、红外和NFC等。而ZigBee技术相比于其他技术具有低复杂度、低功耗、低成本等优点,因此更加适合应用于WBAN的数据传输[4]。本文将ZigBee协议应用于WBAN,结合经典的AODV协议,构建了WBAN人体模型;进而利用网络主流仿真软件NS2,仿真测试了衡量WBAN的可靠性指标—丢包率和时效性指标—时延,探究了ZigBee协议对WBAN中数据传输的适用性。
1 ZigBee短距离无线通信技术的特点
ZigBee因专著于低成本、低速率等要求,它有如下特点:
(1)廉价,ZigBee协议栈简单,软件实现简练,需要的各项成本小[5],随着产品产业化的发展,ZigBee通信模块的价格可降至两美元左右;
(2)省电,ZigBee收发信息需要的功率很低,工作周期短,附有休眠模式,所以避免了更换电池和频繁充电;
(3)网络容量大,每个ZigBee网络最多可支持255个设备;
(4)安全,ZigBee有鉴权的能力,保证了用户的私人信息,加强了保密性。此外,ZigBee还有可靠、较大的网络容量等特点,使ZigBee有较好的应用前景和研究价值[6];
表1给出ZigBee与其他短距离无线通信技术的对比[7,8]。ZigBee与Bluetooth相比协议栈更简单,需要的软硬件资源相对少很多,且可以支持更多的传感器节点,所以ZigBee的成本低,更方便使用;ZigBee和Wi-Fi技术相比较来说,Wi-Fi的应用相对成本高,功耗大,资源要求多;ZigBee和UWB比较来说,后者有较高的通信速率和较大的数据容量,但缺乏统一性的应用标准;ZigBee和NFC对比来看,ZigBee的通信距离远大于后者,且功耗更低。因此从理论上讲,ZigBee协议适合WBAN体征监测信息的数据传输[9]。
2 AODV路由协议
本文依据所建WBAN中数据传输的要求,选择应用AODV(Ad hoc on-demand distance vector routing)路由协议。AODV是一种反应式路由协议,也称为按需路由协议(On-demand Routing Protocol),仅当有数据传输,需要包的传输路径时,才开始进行路由查找。根据国内外学者探究的结果可知,若考虑数据源的数目、模型中节点的可移动性、以及网络负载问题时,按需方式的路由算法相比于其他的算法有着很大的优势[10]。
AODV具体工作机制:当网络中的一个节点准备向网络中的其他节点发送数据信息时,节点先检查本身有没有所要到达目标节点的路由,如果自身没有储存所要到达目标节点的路由,就开始以多播的形式发出RREQ(路由请求)报文。在所发的RREQ报文中详细记录了源节点和目标节点的网络层地址,当邻近节点收到源节点发出的RREQ后,首先进行判断目标节点是否为自己。如果是,则向发起的节点发送RREP(路由回应);若不是,则在自己的路由表中查找其中是否有到达目标节点的路由,如果有,仍然向源节点单播RREP,同样若没有,则会继续转发接收到的RREQ进行进一步查找。概括来说,在AODV路由情况下,网络中的每一个节点只有在需要进行通信时才会发送路由分组,这样大大减少了路由查找的开销[11]。
因此,AODV作为一种经典的路由协议,对于无线体域网涉及的各个体征信息检测传感节点之间的数据传输来说可以胜任。
3 人体仿真模型的建立
在人身体上的一些关键部位,部署具有特定用途的传感节点,用来实时采集人体的生理信息,在WBAN中,这样的节点称为体征信息检测传感器节点,它们把采集来的身体的生理信息转发给汇聚节点,对于人体来说,汇聚节点可由手机充当。汇聚节点再把接收到的信息通过卫星或局域网络最终传送到专门的部门,以此来实现对人体健康状况的实时监测,同时,也可以在自己的手机上储存身体各项生理指标的正常范围区间,当源节点送来的某项生理值不在正常范围区间内时,便会报警提醒所要检测的主体。上述过程可以通过编写专门的程序来实现,比如当主体的血糖偏低时,手机会自动启动闹铃功能,假设此时铃声设置为A,而当血压偏高时,闹铃将启动铃声B,再进一步,也可以把出现的每种不正常生理状况的应对策略以及注意事项,储存在主体的手机里,在闹铃提示某种状况的同时,及时提供一些可行性建议。
本论文根据在人体范围内构建WBAN的特征:短距离、低复杂度、低功耗、低速率、低成本,选择了ZigBee协议和AODV路由协议来进行无线数据传输。
首先,构建一个网络拓扑结构,考虑模型的现实应用性,仿真以人身高180 cm,并根据所测主要指标的位置以及相对应的比例,设定了十个传感器节点和一个汇聚节点(由手机来担任)的坐标,在仿真中以CBR(Constant Bit Rate)包业务发生器来充当人体传感节点待发送的生理信息,而不涉及具体的信息采集过程以及每个传感节点采集信息的内部数据差别。因此,在程序中设定汇聚节点只接收其他节点转发来的信息,而自己不采集信息。具体模型如图1所示。
图1 无线体域网体征信息检测传感器节点分布图
本模型中所设节点对应的生理参数均为对人体的健康状况非常重要的指标,例如:n10心脏起搏传感器:可以实时采集心脏的跳动情况,并把采集到的信息转化为相应的代码,心脏的工作情况对于人体来说至关重要,有其对于有心脏病的群体来说重要性更加突显;n3 EEG传感器:能感受大脑皮质电位波形并转换成可用输出信号,实时检测大脑皮层的活动情况;n2,n9血压传感器:实时采集人的血压情况,把采集来的血压转化为二进制码,检测血压值的变化,最终防止血压高或者血压低带来人体的危害;n7作为汇聚节点(Sink Node)在此相当于移动通信领域中的基站,保证传感器网络与外部网络进行数据通信。
在人体及人体周围2 m×2 m范围内构建由11个节点组成的无线体域网,接着我们创建了10个UDP并把它们附加到10个传感器节点上,然后为UDP附加1个CBR业务发生器,该发生器可以在业务节点上产生数据包,在n7汇聚节点上,10个传感器节点采用CSMA/CA机制向n7发送CBR包,根据检测的业务信息不同设定包的大小不同,表2所列是体征信息检测传感节点发送CBR包的大小,其发送速率均为250 Kb/s,仿真运行时间为100 s。
4 仿真分析
为了探究ZigBee协议对无线体域网络的适用性,利用网络仿真软件NS2对构建模型进行了仿真,并对主要衡量可靠性指标的丢包率,以及时效性指标时延进行了测量。在仿真结束后,编写丢包率和时延的.awk提取文件,从仿真过后产生的.tr文件中,提取出丢包率和时延信息[12]。.tr文件的数据格式如图2所示。
图2 .tr文件的数据格式图
图2中,数据格式中每一部分的具体内容为:Event分为3种情况s、r、D,分别对应s发送,r接收,D丢包;Time为事件发生时间;Node为处理该事件的节点ID;Layer分为3种情况:RTR路由器Trace,AGTTrace,Mac层;Flags为分隔符;Pkt id为分组ID;Pkt type为分组类型;Pkt size为分组大小;------为分隔符;MAC Layer Info的数据如表3所列;IP Info的数据则如表4所列。
我们从模拟仿真的.tr文件里随机抽取的一条记录如图3所示。
图3 随机抽取的.tr文件的一条记录语句
对上述记录格式进行解释如下:在6.828 477 300 s时,一个ID为7的节点MAC层接收了一个CBR分组,这个分组的UID为42959,长度为32 B,源地址为1:0,目标地址为7:1,分组生存周期为30,源地址到目的节点的跳数为2。
进一步编写“CBR-drop.awk”和“CBR-delay.awk”文件,分别用于从跟踪文件.tr中统计整个网络的CBR包的丢包率和CBR包端到端传输的时延信息。
图4为整个网络的丢包率统计。在仿真运行的100 s内,10个传感节点共向Sink节点发送24 573个CBR数据包,sink节点共接收24 183个CBR数据包,丢包率为0.015 871。
图4 整个网络在仿真过程的丢包率
图5为发包速率为250 Kb/s时的CBR包端到端传输时延统计曲线。从仿真时延图中可以看出,仿真刚开始时,由于WBAN的收发包机制刚刚建立起来,网络整体性能不稳定,导致时延不稳定,上下浮动较大,等到网络整体相对稳定下来后,端到端包的传输时延趋于一个相对稳定值0.2 ms。
5 结 语
本文中,WBAN仿真系统采用了ZigBee无线通信协议和AODV路由协议,在发包速率上限250 Kb/s时,丢包率在2%以下,时延不超过0.3 ms,这样的丢包率和时延值对WBAN系统中进行简单的体征信息数据传输来说,是合理的,即它适用于无线体域网的短距离数据传输。该方法和结论对无线体域网及类似无线通信网络选择短距离通信协议具有积极的参考价值。
图5 CBR数据包端到端传输的平均时延
仿真中设定的10个传感节点所发CBR包的优先级等同,而实际中,根据业务QoS需求数据包的优先级应是不同的。下一步将针对不同的CBR包设定不同的优先级,进一步探讨ZigBee技术在WBAN中的适用性。
参 考 文 献
[1] YANG Guang-zhong. Body sensor networks [M]. London: Springer Verlag, 2006.
[2]宫继兵,王睿,崔莉.体域网BSN的研究进展及面临的挑战[J].计算机应用与研究,2010,47(5):737-753.
[3] LATRE Benoit, BRAEM Bart, MOERMAN Ingrid, et al. A survey on wireless body area networks [J], Wireless Networks, 2011 (l7): 1-18.
[4] LI Huan-bang, KOHNO Ryuji. Body area network and its standardization at IEEE 802.15. BAN [J]. Advances in Mobile and Wireless Communications, 2008 (16): 223-238.
[5]高守玮.ZigBee技术实践教程[M].北京:北京航空航天大学出版社,2009.
[6] IEEE. Std 802.15.4-2003:wireless medium access control (MAC) and physical layer (PHY) pecifications for low-rate wireless personal area networks (LR-WPANs) [S]. USA: IEEE, 2003.
[7]孙利民,李建中,陈渝.无线传感器网络[M].北京:清华大学出版社,2005..
[8] ULLAH Sana, HIGGINS Henry, KWAK Kyung Sup, et al. A comprehensive survey of wireless body area networks on PHY, MAC, and network layers solutions [J]. Journal of Medical Systems, 2012, 36(3): 1065-1094.
[9] CHEN Min, GONZALEZ Sergio, VASILAKOS Athanasios, et al. Body area networks: a survey [J]. Mobile Networks and Applications, 2011 (16): 171-193.
[10]臧婉瑜,于勐,谢立,等.按需式ad hoc移动网络路由协议的研究进展[J].计算机学报.2002,25(10):1009-1017.
关键词:ZigBee;GPRS;粮仓监视;防火防潮
引言
随着信息技术的不断发展,尤其是网络技术的广泛应用,传统的仓库管理方式也朝着智能化方向发展。传统仓库管理需要人工实时查看仓库内的情况,费时费力,效率较低;另外,采用布线方式组成有线网络监测,存在布线复杂、维护不便、成本高等缺点。因此,采用无线传感器网络监测仓库环境是一个必然发展趋势,文章提出了基于ZigBee与GPRS协议粮仓远程监视与防火防潮系统的设计。
1 系统框架设计
文章总体框架如图1所示,通过温湿度传感器节点采集粮仓的温湿度,通过烟雾传感器节点采集粮仓附近的烟雾情况,并将采集到的数据报警节点与协调器节点中。然后通过协调器传送到上位机,并通过上位机界面对数据进行显示,并将数据存储于数据库中。如果粮仓发生异常,通过报警节点将数据发送给SIM300,通过SIM300发送短信或打电话的方式通知值班人员及时到达现场进行处理。
2 基于ZigBee协议的粮仓内部网络设计
ZigBee是基于IEEE802.15.4标准的局域网协议,其特点是近距离、低复杂度、自组织、低功耗、低数据速率。因此文章通过对ZigBee网络拓扑结构的分析,采用了其中的网状网络作为粮仓内部网络的拓扑结构。通过ZigBee无线通信技术将粮仓中的一些传感器连接起来,从而形成一个粮仓内部网络。以下是各个节点的核心代码:
协调器节点,用于接收温度传感器与烟雾传感器的数据。
3 上位机界面设计
Qt是一个跨平台C++图形用户界面应用程序开发框架。它既可以开发GUI程序,也可用于开发非GUI程序,因此,文章采用Qt进行开发,对该上位机界面进行数据显示,如图2所示。
4 数据库的设计
SQLite是一款轻型的数据库,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,在嵌入式设备中,只需要几百K的内存就够了。文章采用SQLite数据库对粮仓所采集的数据进行存储,如图3所示。
5 结束语
文章提出基于ZigBee与GPRS协议粮仓远程监视与防火防潮系统设计,采用网状网络组网,实现对粮仓环境温湿度与烟雾的测量,采集并在上位机界面对节点数据的显示,通过数据库对数据进行存储,通过SIM300实现报警功能,通过实验证明这种解决方案有很强的实用性,系统运行稳定。对于解决实际应用中有线网络布线成本过高及不便到达、环境恶劣地区环境温湿度监测的问题是一个很好的解决方案。
参考文献
[1]王翠茹,于祥兵,王成福.基于ZigBee技术的温度采集传输系统[J].仪表技术与传感器,2008,7:102-105.
[2]江红,刘骊.ZigBee技术在智能家居控制器中的应用研究[J].云南大学学报,2009,31(S1):109-113.
[3]傅家祥,肇云波.基于GPRS与ZigBee的智能家居设计[J].新器件新技术,2007,1:50-52+55.
[4]李理,刘柯歧.基于ZigBee的粮仓分布式传感器网络[J].兵工自动化,2008,27(9):63-64.
关键词:无线传感器网络; ZigBee; 网关; GPRS
中图分类号:TP393.08 文献标志码:A 文章编号:2095-2163(2015)02-
Design of a Lightweight Wireless Sensor Networks Gateway
LI Songtao,ZHOU Chenghu
(School of Computer, Henan Institute of Engineering, Zhengzhou 451191,China)
Abstract:In the design of remote monitoring system of regional environment,the conversion is needed from ZigBee to GPRS.Aimed at the need of interconnection between different wireless communication technology in the system, a new intelligent gateway between two different wireless communication technologies is designed.This gateway is mainly composed of Zigbee and GPRS embedded TCP/IP,and is considered to achieve the conversion of these different protocol through the software and hardware design.The practical results show that the designed gateway satisfies the need of protocol conversion in remote wireless monitoring system.
Keywords:WSN; ZigBee; Gateway; GPRS
0引 言
Zigbee作为一种新兴的无线通信技术,其低速率、低成本、低功耗、自配置和灵活的网络结构,非常适合无线监控系统。而GPRS(General Packet Radio Service)网络是一种长距离的移动通讯网络具有信号覆盖范围广、数据传输速率高等特点,其协议规程展示了无线和网络相结合的特征。因此可以通过GPRS技术来拓展ZigBee测量控制网络的作用范围。而将两者的特点结合起来后,就在众多长距离、多监控点的系统中得到了广泛应用[1-3].。
基于ZigBee和GPRS的网关设计就是在ZigBee 无线传感器网络和互联网之间搭建一条数据传输通道,由此实现Zigbee协议数据包和TCP/IP 协议数据包的相互转换,并且进一步实现数据在Zigbee 协议和TCP/IP 协议之间的双向传输,完成ZigBee 网络和IP 网络的互通。系统设计的关键技术就是两种协议的转换。
1总体设计及网关作用
在监控系统中,网关的主要功能有[4-5]:
(1) 侦测并选定物理信道,分配ZigBee网络中的网络地址,初始化网络设置;
(2) 配合网络所采用的MAC算法和路由协议,协助其他网络节点建立路由;
(3) 完成ZigBee网络与GPRS网络之间的协议转换;
(4) 接收传感器节点数据,对数据进行分析、融合等处理;
(5) 接受监控中心的命令,对命令分析后转发给传感器节点执行。
网关节点由CC2430协调器模块,GPRS模块、电源模块等组成。作为区域环境远程监控系统的一部分,网关发挥着数据传输和协议转换的关键作用。网关在系统中的部署如图1所示。监控系统内部包含一个Zigbee无线传感器网络,由ZigBee数据采集节点构成网状网络,所有的数据最终汇聚到网关,再由网关中的协调器节点完成数据的过滤、融合及转发。除此之外,协调器模块还具有ZigBee网络的建立和协议转换及命令的转发等功能。GPRS模块用来进行远距离数据传输,并与远程服务器建立起TCP/IP连接,数据可以通过Internet传输到服务器上,在服务器中完成数据的存储、显示和分析,而后根据设定的监控条件发出相应的控制命令,实现对ZigBee数据采集节点的控制。
图1 网关的部署结构
Fig.1 Structure of?gateway?deployment
2协议栈分析及转换
2.1 ZigBee协议栈
ZigBee 是电气电子学会(IEEE) 无线个域网的802.15.4 技术标准,是基于开放系统互联(OSI) 参考模型的体系结构, 如图2所示。ZigBee是由多达65 000个无线节点组成的一个无线网络,在整个网络范围内,节点之间可以进行相互通信;每个网络节点间的距离可以从标准的75米,延拓至扩展后的几百米,而且通过增加放大电路,通信距离甚至可延伸成几公里。在ZigBee 协议栈里,IEEE 802.15.4定义了物理层(PHY) 协议和介质访问控制层(MAC) 协议;同时,ZigBee 联盟又制定了网络层(NWK)、应用支持层(APS)、ZigBee设备对象(ZDO)等协议。一般情况下,用户则可根据需求及接口来制定应用程序层[6]。
图2 ZigBee协议栈
Fig.2 Protocol stack of ZigBee
2.2 GPRS技术
GPRS 技术是在GSM(Global System for MobileCommunications,全球移动通讯系统)技术的基础上发展起来的一种新的移动通信技术,可为用户提供分组形式的数据业务, 还可在移动用户和数据网络之间提供高速的无线数据传输。GPRS 采用与GSM 相同的无线调制标准、频带、突发结构、跳频规则以及一般无二的TDMA帧结构。GPRS也是分组交换技术,并且具备实时在线、按量计费、高速传输等优点[7]。为方便开发,有些GPRS模块内嵌了完整的TCP /IP 协议,支持数据的透明传输与非透明传输,还为用户提供了更简单的网络接口。同时,GPRS模块将可支持标准的AT 指令集。通过终端设备、终端适配器发送AT 指令来控制移动台的功能,从而与GSM网络业务进行交互[8]。
2.3 ZigBee 协议与TCP/IP 协议的转换
ZigBee协议与GPRS之间的转换在网关完成,其协议转换如图3 所示。ZigBee协调器节点接收到来自ZigBee网络的数据包后,对数据包进行处理。按照已经定义的数据格式将数据重新封装由串口发送到GPRS模块。利用模块内嵌的TCP/IP 协议,将模块设置成透明数传模式,当GPRS联网成功时,网关将获得由GSM网络运营商随机分配的内网IP地址,此时利用这个IP通过移动运营商的网关访问Internet网,再将数据发送到服务器上,实现由ZigBee到GPRS的数据传送。需要注意的是,移动GPRS网关提供的NAT(网络地址翻译)端口映射服务具有很短的时效,若需要维持双向的通信必须设置GPRS-DTU定时发送的心跳数据包,从而保持NAT端口映射。由Internet端向ZigBee端的协议转换与前述过程相反,按照图3即可实现类似解决。
图3 ZigBee协议与GPRS之间的转换
Fig.3 Conversion?between ZigBee protocol and?GPRS
3网关硬件平台设计
网关硬件按照模块化思想进行设计,电路主要由控制器模块CC2430、GPRS模块、液晶显示模块和电源模块等组成,其硬件电路结构框图如图4所示。CC2430内嵌有加强功能的8051处理器和高效的无线射频芯片,通过软件编程的方式将其设置为ZigBee协调器节点。具体设计实现可做如下描述。
3.1 控制器模块
在该网关系统中,将控制器、协调器和通信模块集成为一个整体,基于这种结构,就减少了通常网关中单独使用的控制模块。由于在协议转换的全过程并不需要用户干预,从而实现了透明的协议转换和数据传输。由分析可知,这种设计方案不仅降低了成本,简化了设计,对网关的可靠性也获得了一定程度的提升。CC2430内部不仅有加强型的单片机,内置的Flash存储器还可以保存全部的ZigBee协议栈,并有足够的空间保证应用程序的流畅运行。
图4 网关硬件结构
Fig.4 Structure of gateway hardware??
3.2 GPRS模块
GPRS模块采用COMWAY WG-8010组件,其中内置工业级GPRS无线模块,提供标准RS232数据接口,可以方便地连接RTU、PLC、工控机等设备。完成初始化配置后,网关就可以与服务器端通过GPRS无线网络和Internet网络建立连接,实现数据的透明传输。
4 软件设计
4.1 ZigBee协调器软件设计
ZigBee协调器实现了网络的建立、传感器节点的数据收集和节点管理等功能。软件流程如图5所示。网关上电后,首先进行硬件的初始化,并扫描可用的通信信道,建立ZigBee网络,进一步设置网络的PAN ID,等待传感器节点加入网络。当传感器节点加入网络之后,接收传感器节点发送的传感器数据。协调器通过RS232与GPRS模块相连,将采集到的数据发送到GPRS模块。具体来说,协调器软件设计基于Z-Stack协议栈,使用C语言在IAR嵌入式编程环境下开发。Z-Stack是TI中操作系统、而且是基于优先级的轮转查询式操作系统,系统初始化后开始执行操作系统。在操作系统中进行的是一个轮询式无限循环。协调器的数据收集和串口通信分别部署在两个不同的任务中,任务之间即通过事件进行通信。
图5 协调器软件流程图
Fig.5 Software flow chart of coordinator
4.2 GPRS模块参数配置
由于GPRS模块实现了DTU功能,需要对模块的一些参数进行配置。基本内容主要有选择TCP/IP协议作为通信协议;设定远程主机的IP和端口号;设置DTU的工作模式为自动连接模式,保证模块掉线后能立即重新连接,最大限度地防止数据丢失;设置DTU串口的通信参数:波特率、数据位、停止位和校验位。这些参数要和ZigBee协调器的串口通信参数一致,保证串口通信的正常。此外,为了确保远程数据通信的连续性,还需要设置心跳包的内容(ASCII码或16进制数据)和时间间隔,心跳包是为了在GPRS通信空闲中避免运营商切断连接而定时发送的数据包。
5 结束语
本文提出了一种轻量级无线通信网关的设计和实现方案,该方案采用CC2430为核心,在网关内部完成了ZigBee协议与GPRS的转换,并通过GPRS将数据发送到远端的具有独立IP的服务器,实现了数据的远距离传输。系统将近距离的ZigBee通信和远距离的GPRS通信结合起来,发挥两种不同特点的无线通信技术的优势,该网关已在区域环境监控系统中得到了应用,实践结果表明,该网关可靠性高、抗干扰能力强,具有很好的通用性。
参考文献:
[1] 汪玉凤,姜林.基于ZigBee和GPRS的无线抄表系统[J].仪表技术与传感器,2010(10):49-51.
[2] 徐永杰,熊宗接,陈良洲.基于GPRS的ZigBee协调器网关设计通信[J].现代电子技术,2012,35(21):1-3.
[3] 邓小蕾,李民赞,武佳,等.集成GPRS、GPS、ZigBee 的土壤水分移动监测系统[J].农业工程学报,2012, 28(9):130-134.
[4] 满莎,杨恢先,等.基于ARM9的嵌入式无线智能家居网关设计[J].计算机应用,2010,30(9):2541-2544.
[5] 朱剑锋,熊志斌,尹成国.ZigBee无线传感网络与IP网络的网关设计[J].软件,2011,32(9):53-55.
[6] 成小良,邓志东.基于ZigBee规范构建大规模无线传感器网络[J].通信学报,2008,29(11):158-164.
[7] 付金勇,郭爱文.基于ZigBee 网络与GPRS 的数据采集传输系统设计[J].电子设计工程,2011,19(14):163-165.
[8] 聂明新,邹宇,莫奎.基于动态IP的GPRS远程监控系统[J].武汉理工大学学报,2011,33(10):685-688.
关键词:环境监测;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.