刘少楠

摘要:通过对ZigBee路由协议进行研究,就优化ZigBee网络中传感器节点间的传输时延,均衡节点的能耗提出相应的改进意见。然后利用改进后的ZigBee路由协议设计和实现了一个无线传感器网络数据采集系统,并以光照强度、温度、湿度数据采集为例,对ZigBee网络中的终端节点、路由节点、协调器节点进行设计。

关键词:ZigBee无线传感器网络;数据采集系统;ZigBee路由算法及其改进

中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2017)28-0234-03

Abstract:Through the study of ZigBee routing protocol, the optimization of the transmission delay between the sensor nodes in the ZigBee network and the energy consumption of the equalized nodes is proposed. Then, the data acquisition system of wireless sensor network is designed and implemented by using the improved ZigBee routing protocol, and the terminal nodes, routing nodes and coordinator nodes in ZigBee network are designed with illumination intensity, temperature and humidity data acquisition as an example.

Key words: ZigBee wireless sensor network;data collection system;ZigBee routing algorithm and its improvement

1 概述

现如今,无线传感器网络主要用来采集指定区域内的参数信息,对数据传输的速率要求不高,但是对传感器节点的稳定性、能耗和体积等方面的要求比较高。ZigBee技术由于其传输距离短、能耗低、成本低、时延短、可靠性高、安全性高、网络容量大等特点[1],主要用于近距离无线传输,可以适应恶劣多变的物理环境。

本文结合AODVjr路由算法中选取最佳路径的优势和Cluster-Tree路由算法通过父子节点转发数据包的便捷来研究ZigBee路由算法。设计和实现了一个基于ZigBee的无线传感器网络数据采集系统, 由ZigBee协调器节将采集到的数据通过Wi-Fi模块传输到上位机。上位机中的环境数据实时显示软件对ZigBee无线传感器网络采集到的温度、湿度、光照强度信息进行存储并以参数和曲线两种形式展现给技术人员。

2 ZigBee路由算法的研究

2.1 Cluster-Tree路由算法

在Cluster-Tree路由算法中,父节点可以向子节点传输数据,并且子节点也可以向其父节点传输数据。

假设路由节点的地址为A,深度为d,目的节点的地址为D,通过公式1判断目的节点D是不是该路由节点的子节点。

若满足公式2,那幺目的节点D是该路由节点的终端子节点,下一跳的节点地址为D。若不满足公式2,可以判断该目的节点D不是该路由节点的终端子节点,此时通过公式3计算出转发的路由节点的网络地址,由该路由节点再进行判断和数据转发,直到将分组信息送到最终的目的节点。

而如果目的节点D不满足公式1,表明目的节点D不是该路由节点的子孙节点,那幺将分组信息转发给它的父节点。

2.2 AODVjr路由算法

节点根据AODVjr路由算法进行数据转发时,首先查看该节点的路由表中是否存在到达目的节点的路由信息,如果存在,只需按照此路由把数据转发出去。如果不存在,设备中的控制服务会告知源节点开启路由发现过程,查找到的结果便是最佳的传输数据路径。

2.3 ZigBee路由算法及改进

1) ZigBee路由算法的介绍

ZigBee协调器利用Cluster-Tree路由算法为ZigBee网络中的传感器节点进行网络地址分配,完成ZigBee网络的建立。因为Cluster-Tree路由算法规定只能按照树形拓扑结构在父子节点间进行数据传输,这样虽然可以减少路由开销,控制分组信息在父子节点间传输,减少整个网络的数据通信量。但是通过Cluster-Tree路由算法完成ZigBee网络的建立后,数据在网络中只能通过父子节点的树形结构进行传输,带来了很大的传输时延和网络能耗。利用AODVjr路由算法来优化源节点到达目的节点的传输路径,可以降低ZigBee网络中端到端的时延,并且可以动态维护ZigBee网络,弥补了Cluster-Tree路由算法的缺陷。

2) ZigBee路由算法的改进

通过上文的分析,Cluster-Tree路由算法的树形拓扑结构有利于分组信息方向性的传输,但是传输的路径却不是最佳的。AODVjr路由算法优化源节点到达目的节点的传输路径,降低ZigBee网络中端到端的时延,并且动态维护ZigBee网络,但是在进行路由发现和路由维护过程中增加了网络负荷。两个算法的结合在一定程度上形成了互补,但也存在改进之处。

(1) 使用Cluster-Tree路由算法建立好ZigBee网络后,需要用AODVjr路由算法对路径进行分析和修正,寻找到达目的节点的最优路径。在这个过程中,通过Cluster-Tree路由算法控制分组信息根据树形拓扑结构在父子节点间传输,当数据发送后,传输路径上的中间路由节点接收到分组信息需要看看是不是它的父节点发送过来的,是则丢弃该分组信息,不是就更新该路由节点的路由表信息,同时转发该分组信息。这样数据广播时就具有一定的方向性,而不是在全网范围内广播,降低网络的负载和能耗。

(2) 在树簇形网络拓扑结构中,距离ZigBee协调器节点近的簇首节点因能量消耗过快而导致整个网络传输效率下降。

本文提出设定好簇首节点正常工作的最低能耗值,当簇首节点的能耗低于这个最低值时,簇首节点会发出更换请求,由ZigBee协调器选择一个能量高于这个最低值的全功能传感器节点作为新的簇首节点。

E表示节点作为簇首时所需要的最低能量。d表示该节点在拓扑结构中的深度。Emin是传感器节点正常工作需要的能量。k表示节点附加能量计算系数。

对于网络中原来的簇首节点,经过时间t后剩余的能量可以通过公式5来计算:

其中P是节点经过时间t后所剩余能量;E0为节点被选作簇首时的能量;k是节点的附加能量系数;d是节点的网络深度。

当簇首节点的剩余能量P低于最低簇首能量E时,此时该节点会向ZigBee协调器发出更换簇首的申请。ZigBee协调器接受申请后向ZigBee网络内的节点发送簇首竞争的消息,具备能量要求的节点采用AODVjr路由算法的路由请求分组信息同时附加簇首申请广播给周围的邻节点,所有收到路由请求的节点都需要回复一个路由应答分组信息,由申请节点修改邻居信息表。随后将整个信息表发送给ZigBee协调器。ZigBee协调器接收到信息表后,选择邻居节点最多的节点作为新的簇首节点,最后新的簇首节点广播簇首信息供周围节点更新路由信息。

2.4 改进前后ZigBee路由算法的仿真分析

在NS-2仿真区域内,建立一个分布了50个传感器节点的仿真区域,且传感器节点的能量相同。ZigBee网络采用树簇型网络拓扑结构,仿真时间为300s,使用CBR业务源,40Bytes的分组容量。

可以看出改进后的ZigBee路由算法利用Cluster-Tree路由算法辅助AODVjr路由算法控制RREP分组在网络拓扑中的传输方向,从而加快了路由发现的过程,降低了整个网络中分组信息从源节点到达目的节点的平均时延。

发现改进后的ZigBee路由算法在传感器节点经过300s的工作后,能量的消耗更低。通过对比ZigBee路由算法改进前后不同节点的剩余能量证明改进后的ZigBee路由算法是节点的剩余能量高。可以看出改进后ZigBee路由算法采用簇首轮换机制可以更好的均衡网ZigBee络中各个传感器节点的能量。

3 基于ZigBee的无线传感器网络数据采集系统的设计

3.1 系统的总体设计架构

整个数据采集系统主要分为无线通信系统、数据采集系统和上位机软件。

3.2 ZigBee无线传感器网络组建

1) ZigBee协调器创建网络

(1) 确定协调器。

(2) 设置唯一的网络ID。

(3) 进行信道扫描。

2) ZigBee节点加入网络

当终端节点上电激活后,首先对附近的信道进行扫描,与自己周围的ZigBee路由器节点进行通信,选择合适的ZigBee路由器节点作为自己的父节点,ZigBee协调器通过网络地址分配机制为其分配唯一的网络地址。

3.3 ZigBee网络中节点的设计

1) ZigBee终端节点

在ZigBee网络中,ZigBee终端节点通过DHT11温湿度传感器和光敏电阻传感器采集待测区域内的温度、湿度和光照强度,并将采集到的数据通过CC2530芯片内置的无线收发器传输给上位机。

2) ZigBee路由节点

ZigBee路由器节点增加了数据传输的距离,扩大了ZigBee无线传感器网络的覆盖范围。ZigBee路由器节点主要是对数据进行转发,所以不需要传感器接口模块,但是在进行数据转发时,需要使用Flash存储模块暂存数据。

3) ZigBee协调器节点

ZigBee协调器节点是ZigBee网络的中心,承担着ZigBee网络中大部分的功能,

3.4 上位机设计

环境数据实时显示软件能够直接把传感器节点采集到的环境信息展现给技术人员,并以参数和曲线两种形式呈现,同时技术人员通过分析数据库中存储的历史环境数据对环境变化进行分析。其具备的功能如图5所示。

4 系统软设计展示

上位机中的环境数据实时显示软件对ZigBee无线传感器网络采集到的温度、湿度、光照强度信息进行存储并以参数和曲线两种形式展现给技术人员。

5 结束语

本文通过对ZigBee路由协议进行研究,设计和实现基于ZigBee的无线传感器网络数据采集系统,实现对待测区域内实时环境信息的采集并通过协调器将采集到的数据传输到上位机中的环境数据实时显示软件进行存储显示。在本文中仅仅考虑了时延和能耗方面的改进,还存在着许多值得继续研究的地方。

参考文献:

[1] 蒋挺, 赵成林. Zigbee技术及其应用[M]. 北京: 北京邮电大学出版社, 2006: 12-27.

[2] 杜焕军, 张维勇, 刘国田. ZigBee路由协议研究[J]. 合肥工业大学学报, 2008, 31(10) 1617-1621.

[3] 贾灵,王薪宇,郑淑军. 物联网无线传感网原理与实践[M]. 北京航空航天大学出版社, 2011.

[4] 蔡镔, 袁超, 顿文涛, 等.无线传感器网络在农业生产中的应用研究[J]. 江西农业学报, 2010(9).