利用ZigBee技术开发物联网应用系统,ZigBee网与以太网之间的数据传输系统是掌握应用系统开发主动权的重要研究对象。文中介绍了ZigBee网与以太网之间基于异构网络数据传输系统的概况,探讨了监控系统中ZigBee网与以太网数据传输机制的过程,以及ZigBee网与以太网间数据帧转换及交互的实现。
ZigBee是基于IEEE802.15.4标准的一种低速率、短距离的无线网络传输技术。其应用简单,适用于数据采集量小,数据传输的速率相对较低,以及分布范围有限的情况下。只要保证不断电其对数据的安全性是可靠的,在这些条件下,其有一个显著的特点就是成本和功耗较低,且容易安装并无需频段注册。在目前标准众多短距离无线传输的通信领域中,ZigBee的发展速度远超过了其他类的无线传输技术。ZigBee不仅在工业、军事、农业等领域而且在日常生活中应用广泛,对现代化的生活具有较高的应用价值。本文对ZigBee网络和以太网络间异构数据传输过程进行了研究。
1系统总体设计
ZigBee是短距离、低耗、低复杂度的双向无线传输技术,它可嵌入各种相关设备以提高监控的应用范围。要运用其来开发应用系统,必须扬长避短地应用ZigBee技术。无线传输系统的信号采集工作通过ZigBee网络中的传感器节点进行,传感器网络的节点数量可达成千上万,众多传感器协同工作,自组网多点路由地传输数据,实现多方位、广范围地采集准确数据。这些大量的传感器节点作为ZigBee节点的一员组成了系统的ZigBee传感器网络。无线传输系统利用ZigBee无线传感器网络将采集来的信号变为电信号,再经过模/数转化,将其信号储存于数据存储器中,并通过无线收发器发射到网络无线网关,网关再通过对数据进行ZigBee方式的解包和按照以太网传输模式再次打包的方式上传送以太网,从而完成ZigBee网数据到以太网的整个转换、传输和交互过程,系统结构如图1所示。
图1 系统总体结构图
整个数据传输系统分为3部分,其中ZigBee传感器网络和网关是实现两种异构网络进行数据传输的重要环节。其两部分包括处理整个数据传输系统的微处理器和用于进行数据储存的存储器,以及连接网络的网络接口等硬件设备。
2系统硬件设计
2.1 ZigBee网节点的设计
ZigBee网络是由相当量的节点组成,每个自带电源的ZigBee节点均有可在需要时自主的进行数据的采集、简单融合和数据信息发送等功能。ZigBee传感器网络这种多节点的网状拓扑结构,使得每个节点都发挥着路由器或者中继的作用,由于每个节点的作用增强从而使整个网络范围也成倍的扩大。在ZigBee传感器网络中,为获取大量的数据信息,通常在监测区域内布置了大量的传感器节点。由于各种因素造成节点存在复杂的不确定性,这就要求传感器节点具有自组网的能力,自动路由转发监测的数据。然而作为节点的通信距离有限,节点也需作为一个中间节点进行路由来达到与之范围内以外的节点通信。众多传感器节点采用部分拓扑结构,也在较大程度上扩宽了节点的通信范围。这就使ZigBee节点的路由能力增强。
节点采集数据完毕后,要进行处理和存储,需要通过微处理器和存储器的协作。而数据的收发则通过节点中的RF收发单元完成。所以一般传感器网络中的ZigBee节点可由传感器单元、处理单元、RF收发单元、存储单元以及电源单元等模块组成,其结构如图2所示。
图2 ZigBee节点结构图
ZigBee无线传感网络节点在微处理单元的控制下进行数据的采集、处理、接收和发送。各个模块的功能分别为:
(1)传感器单元的功能是进行数据采集。把采集到的信号转化为电信号,通过A/D接口在微处理单元的控制下进行模/数转换,将电信号转化为数字信号。根据采集环境的不同选择相应的传感器。
(2)ZigBee的RF收发单元通过SPI接口和微处理器MCU进行交互,从而完成与其他节点间数据的收发和控制信息的交换。而收发单元芯片一般选用CC2420这款RF收发器件,因为CC2420的选择性和敏感性指数超过了IEEE802.15.4标准的要求,可确保短距离通信的有效性和可靠性。利用该芯片开发的无线通信设备支持数据传输率高达250 kbit.s-1可以实现多点对多点的快速组网。
(3)存储单元则是用来存储处理过后的采集数据,便于重新打包发送。
(4)电源是ZigBee节点能否生存的关键,微处理部件显而易见成为了执行命令的发起者与协调者,起到了中枢系统的作用。
2.2网关
ZigBee网采集的数据信息靠自身的能力是不可能将数据信息传输与监测中心的上位机,重要途径是通过以太网络而到达目的地,ZigBee网和以太网是两个异构网络,其之间不能进行直接数据交换传输,网关起着网络传输纽带的作用。网关的设计主要由处理芯片与以太网控制芯片两部分结合以达到不同网络间数据传输的效果。网关结构框图如图3所示。
图3 网关结构图
网关的主要作用分为ZigBee网接收和以太网发送两部分:
(1)网关中的ZigBee收发单元接收ZigBee节点采集到的并以数据包形式发送来的数据信息,然后通过串行外围接口(SPI)发送给MCU,MCU经过处理后解析出有用的ZigBee数据,储存于存储单元中。完成ZigBee传感器网络与网关的数据通信。
(2)以太网控制芯片RTL8091AS是以太网与网关进行数据交换的控制器。网关解析出ZigBee数据,发送到以太网控制芯片进行数据处理,把数据写入RTL8091 AS的数据区域,然后对数据进行TCP/IP数据帧封装,再启动RTL8091AS发送封装好的TCP/IP数据帧到以太网进行数据的传输交换。
以上两个步骤完成了数据从ZigBee传感器网络到以太网络的传递。反之数据要从以太网络到ZigBee网络,则先需要验证IP地址是否正确,然后上位机发送请求到网关,网关收到请求将TCP/IP数据包解压,然后解析出有用的数据信息打包成ZigBee数据包,再通过网关中的ZigBee收发单元以无线的方式发送给ZigBee传感器网络。这就实现了由以太网络到传感器网络数据包透明转换和无线传输。ZigBee传感器网络和网关是本文研究ZigBee网与以太网间异构数据传输的重要组成部分,是实现数据传输必须的硬件平台。
3系统数据传输软件设计
对于系统的软件设计采用监控因事件唤醒模式,这样ZigBee低功耗的特点得到充分的体现。由于ZigBee网络中有大量的传感器节点,采用事件驱动唤醒工作模式说明在运用到该节点时它才进行数据的采集、收发,未使用时处于休息状态。在发送数据后则需判断下一个节点是否接收成功,如接收成功则说明此节点在通信范围内。这就避免了每个节点均工作而带来的高功耗。另外节点间的通信采用CRE校验来确保通信的误码率在可控安全范围内。这是ZigBee无线传感器网络采用的软件模式。而对于ZigBee无线传感器网络和以太网络两个不同网络间的数据传输软件的整体流程设计如图4所示。
图4 数据传输软件整体流程图
(1)首先启动系统并初始化ZigBee网的各个节点,事件唤醒节点采集数据并将其转化为电信号,然后经过模/数转换打包为ZigBee数据包,通过ZigBee收发单元发送数据包到网关。网关如接收成功将返回一个成功信息并进行继续的数据包传输处理,直至整个数据传输结束。反之不成功,程序就返回到继续发送ZigBee数据包,直至完成整个传输规定的次数同时报错。
(2)网关接收到ZigBee数据包后,经过微处理器的处理,解包出ZigBee数据包中有用的数据,并将其写入到RTLS019AS芯片控制器中,转换为TCP/IP数据包,发送给以太网络。这时如果发送成功,就会返送回一个信息提示操作完毕,否则程序就继续返回到网关发送数据到以太网络,直至完成整个传输规定的次数同时报错。
4 ZigBee网协议结构及数据转换
4.1 ZigBee网络体系
要研究数据传输必须先了解ZigBee网的体系结构,按照OSI模型可分为4层,从下往上分别是物理层、媒体访问控制层(MAC)、网络层(NWK)/安全层和应用层(APL)。其中物理层与MAC层使用的是IEEE802.15.4协议标准,而网络层和应用层则是由ZigBee联盟制定的。体系的每一层向它的上面层提供数据服务或管理服务。ZigBee的应用层支持子层(APS)、ZigBee设备对象和制造商定义的应用对象组成。
4.2 ZigBee网络拓扑
ZigBee支持含有主从设备的星型、树形和对等型的3种拓扑结构。其中星型网络中各个节点均需通过协调器节点的转发,协调器在网络中起到了网络管理的作用;树形网络中包含协调器节点路由节点跟终端节点,路由节点作用则是完成路由功能,路由节点将信息转发到协调器节点,通过协调器节点才能将信息传递给终端节点;而对于对等型网络,它的节点彼此相通,每个节点都具有转发功能,一般对于大面积的监测,可以采用对等网络的拓扑结构。而星型和树形网络则多是用于一对多的短距离数据采集与传输上面。
4.3 ZigBee协议结构
ZigBee节点通过路由获取来自网络内的多元化采集信息,并自下而上通过各协议层次的规范化进行解析。其转换途径为ZigBee网方面的物理层(PHY)、MAC层→网络层(NWK)→应用支持子层(APS)、应用层(APL)。为使传感器所采集的数据上传至处理中心,网关必须接入以太网,故以太网方面的转换途径为应用层→传输层(TCP)→地址寻址层(IP)→以太网帧接入层(网卡)。综上所述网关系统软件与支撑软件运行就是各层协议的分别执行,各层协议根据其接入和服务对象的业务与数据要求,按照各层协议的规范与标准,完成业务类型确定、数据格式转换、数据帧封装等一系列操作,最终由网卡模块实现接入功能。协议模型如图5所示。
图5 协议转换模型
4.4网间数据转换
协议转换是前提,但根本的作用是实现数据帧在两个不同类型网络之间的转换,要将传输的数据帧用两种协议规则实现各自的转换方式,并在两个网络中进行传输。转换规则和格式各不相同,ZigBee数据帧的解析过程是自下而上通过各种协议层的规范来进行数据帧解析,各层数据帧的格式如图6所示。
图6 ZigBee数据帧转换示意图
在物理层中脱去本层的同步帧头和物理层帧头后,形成上述MAC层的数据单元(MPDU);在MAC层里脱去本层的帧头和帧尾后又形成网络层的数据单元(NPDU),在NWK层里脱去本层的帧头后又形成应用支持子层的数据单元(APDU),在应用支持子层直到应用层解析为原始数据。在以太网中的数据帧形成过程是自上而下通过以太网各协议层的规范来进行数据帧转换的,过程如图7所示。
图7 Tthernet数据帧转换示意图
5结束语
随着物联网应用的发展ZigBee技术使用范围越来越广泛,目前ZigBee技术已成为短距离数据无线传输应用中的常用技术,本文将该技术应用于ZigBee网到以太网间的数据传输。探讨了从ZigBee节点的设计到网关的设计,实现了数据的采集、处理、存储、传输到接收这一系列的过程,成功的实现了两个不同网络结构间数据的传输。说明了采用Zig Bee技术来实现短距离、低功耗、低成本的传输体系,是最佳选择。通过对数据传输系统的进一步研究,对于加速物联网技术推广应用,具有重要的现实意义。