基于改进ZigBee路由算法的温室大棚在线监测系统
2017-12-13滕志军曲兆强张力吕金玲薛永久李冠男
滕志军 曲兆强 张力 吕金玲 薛永久 李冠男
摘要:为实现温室大棚的智能化和实时监测的目的,结合ZigBee技术,设计了一种基于ZigBee技术的温室大棚远程监测方案。由于ZigBee树型路由算法存在路径选择不优的问题,进一步提出一种适用于温室大棚实时监测系统的ZigBee路由优化算法。该算法并不特定选择下一跳节点,而是根据一跳范围内邻居节点到目的节点的剩余跳数这一优先权来限制剩余跳数较多的邻居节点作为被选节点,从而降低节点转发跳数,提高系统的实时性。多次仿真结果表明,改进算法在节点跳数、端到端的延时及可靠性方面均有一定程度的改善。
关键词:农业信息化;ZigBee技术;机会路由算法;智能温室大棚;实时监测;节点;仿真
中图分类号: S126;S6255文献标志码: A
文章编号:1002-1302(2017)21-0247-05
收稿日期:2017-04-10
基金项目:国家自然科学基金(编号:51277023)。
作者简介:滕志军(1973—),男,吉林吉林人,博士,教授,研究方向为无线通信技术。E-mail:753731087@qqcom。
随着人们生活水平及生活质量的日益提高,对生产的农作物尤其是蔬菜的种类品质提出了更高的要求,因此对温室大棚远程监测的方法应运而生1-3]。但是,温室大棚里栽种的大都是反季节的农作物,只有对温室的环境进行相对严格的监测,才能保证农作物的品种及产量,使农作物能够更好地适应环境生长,因此对温室环境的监测就显得非常重要4-7]。对温室环境进行监测的方法有很多,如现场实时人工监测、远程无线监测和有线自动监测等8-10]。但上述方法要么存在抗干扰性不好、功耗很大等缺点;要么存在成本高、铺设困难等缺点,越来越不能满足人们的需求。ZigBee技术是一种新兴的短距离无线传感网络通信技术,因其低功耗、短距离等优点应用于各个领域。但是ZigBee路由算法在数据传输时未考虑邻居节点,数据传输的路径不是最优的。目前,国内外专家学者主要是对LEACH算法进行优化,很少对ZigBee树型路由算法进行优化。因此,本研究在基于ZigBee技术的温室大棚远程在线监测系统的基础上,提出了一种改进的ZigBee路由优化算法,通过降低节点的转发跳数来延长网络的使用寿命、提高网络的实时性。
1系统的总体设计方案
基于ZigBee技术的温室大棚远程在线监测系统主要由监测终端、4G无线通信模块及上位机软件3部分组成,系统总体结构如图1所示。
监测终端是系统设计的关键技术,主要负责温室大棚环境数据的采集,如温度、湿度、二氧化碳浓度及光照度等,该模块主要由温湿度传感器、光照度传感器、二氧化碳浓度传感器、ARM微处理器、供电模块及相应的接口电路组成。采集节点将采集到的温室大棚环境参数经过ZigBee路由器无线传输到ZigBee协调器上,经过串行通信UART连接到ARM处理器上,环境数据用ARM处理器处理,通过高速率的4G无线模块远程传输到远程监测中心。其中,节点的能耗问题是必须考虑的关键技术,为了尽可能降低节点消耗的能量,本研究主要采取2种措施:一是采用太阳能光伏板、充放电控制器、蓄电池三者相结合对系统进行供电;二是优化ZigBee路由算法,降低节点转发跳数,不但可降低网络的能耗,还可以提高在线监测系统的实时性。
远程监测中心的计算机、手机或平板等智能设备,对通信
传输过来的不同数据进行分析存储、处理并判断是否超过临界值,如果超过临界值就启动继电器并进行报警,操控控制设备去调整环境参数以达到控制生长环境的目的。远程监测中心上位机软件采用VBNET语言程序编写。远程监控中心对终端设备的控制是通过配备在ZigBee终端节点的继电器来实现的,操控控制设备适当地调整环境参数以达到让生长环境适合农作物生长的目的。
2系統关键技术设计及实现
21监测终端的硬件设计
监测终端主要由ARM处理器、采集节点模块、串口模块、供电模块、继电器、4G模块及相应的外围电路组成(图2)。CC2430芯片与传感器通过串口UART连接,其电路图如图3所示。
22系统的供电模块设计
温室大棚监测终端安装于野外,为尽量减少线路复杂程度,采用太阳能光伏板、充放电控制器、蓄电池三者相结合对系统进行供电。太阳能光伏板完成能量转换,将光能转换成电能,并将其存储于蓄电池中,通过充放电控制器来避免过充电和过放电现象发生。在系统设计过程中,各芯片所需工作电压存在差异,须针对各个模块设计电压转换电路,进而保证各芯片可靠工作。
23传感器节点软件设计
无线传感器网络节点的主要功能是温室大棚环境数据的采集和传输。本系统不但优化了ZigBee路由算法,同时在程序设计时采用中断唤醒的方式来接收环境数据,尽可能地降低ZigBee节点的功耗,延长节点的使用寿命。传感器节点软件设计流程如图4所示。
WTHZ]3ZigBee路由算法及优化
31树型路由算法原理及缺陷
ZigBee定义全功能型(full function device,简称FFD)与简化功能型(reduced function device,简称RFD)2种类型设备,其中RFD通常作为终端设备,FFD可以为协调器、路由器及终端设备。网路中的节点采用分布式地址分配机制,通过网路建立初始时的关联过程,加入网路的节点组成一个逻辑树,当网络中的节点允许1个新节点通过该节点加入网络时,两者之间就形成了父子关系,父节点为子节点分配网络中唯一的16位网络地址。假设父节点最多可连接的子节点数为Cm,子节点中允许的最大路由节点数为Rm,网络的最大深度为Lm,当加入的一个新网络节点为对应于父节点的第n个子节点时,父节点为该子节点分配的网络地址为:endprint
An=JB({]HL(2]Ap+Cskin(d)×Rm+n第n个RFDAp+1=Cskip(d)×(n-1)第n個FFDHL)]JB)]。JZ)]JY](1)
式中:Cskip表示网络深度为d的父节点为子节点分配的地址偏移量,即
Cskip(d)=JB({]1+Cm(Lm-d-1)Rm=1SX(]1+Cm-Rm-CmRmLm-d-11-RmSX)]其他JB)]。JZ)]JY](2)
在路由发送数据选择下一跳的过程中,当一个地址为A、深度为d的路由节点收到目的节点地址为d的数据帧,A节点会通过式(3)判断该目的节点是否为其后裔节点,即
A 如果满足式(3),则说明目的节点是该节点的后裔节点,则将该数据帧转发到地址为N的下一跳子节点。根据下一跳子节点类型的不同,地址分配为: JP4]n=JB({]D该节点就是中断子节点A+1+intSX(]D-(A+1)Cskip(d)SX)]]×Cskip(d)DW]其他JB)]。JZ)]JY](4) 如果不满足式(3),则说明目的节点不是该节点的后裔节点,因而其将数据帧转发给其父节点。 32ZigBee路由算法的改进 无线介质具有损耗特点,例如,当数据通信时所选路径中存在1条链路因频繁使用导致损耗过快时,有可能造成整个网络端到端数据传输的失败。针对此问题,本研究结合机会路由算法,提出基于机会路由能量优化的树型路由(OEZTR)算法。该算法并不特定选择下一跳节点,而是根据一跳范围内邻居节点到目的节点的剩余跳数这一优先权来限制剩余跳数较多的邻居节点作为被选节点。另外,在路径选择时,有可能遇到多个节点到目的节点的剩余跳数相同的情况,通过设置延时间隔t{RH(u,d)-1]·δ≤t≤RH(u,d)]·δ]}来避免冲突,其中δ为数据可靠传输的最小时间间隔。OEZTR算法不但继承了ZigBee树型路由协议没有任何路由开销的优点,还为网络提供了可靠的数据包传输。OEZTR算法数据通信路径如图5所示。 本研究提出了OEZTR算法的伪代码,该算法设计的核心 FK(W13]TPTZJ5tif] 思想是利用IEEE802154协议标准的一跳范围内的邻居表和邻居表中的邻居节点到目的节点最小的剩余跳数,把剩余跳数作为选择优先转发节点的条件来限制被选节点的区域,或限制下一跳节点到目的节点传递的方向,尽可能减少无效数据包的传输,以延长网络的生命周期。若A、B、C、D节点均是某中继节点的一跳范围内的邻居节点,根据延时间隔t{RH(u,d)-1]·δ≤t≤RH(u,d)]·δ]}来确定节点的优先权,若C节点的延时间隔小,到目的节点的剩余跳数最少,该节点首先接收数据包,并转发该数据包,其余节点取消数据传递。 假设s、u、d分别代表源节点的地址、中继节点的地址、目的节点的地址,RH(u)代表中继节点u到目的节点剩余的跳数,minRH(u,d)代表中继节点的一跳范围内的邻居节点到目的节点的最小剩余跳数。其OEZTR算法的伪代码选择路径的过程如图6所示。 FK(W14]TPTZJ6tif] 图6显示,源节点s向目的节点D发送数据,首先,一跳范围内邻居表中的邻居节点A、B、C、L节点接收源节点s广播的数据包,按照ZigBee树型结构计算上述4个节点到目的节点的最小剩余跳数,即RH(A,D)=4,RH(B,D)=4,RH(C,D)=3,RH(L,D)=3,tA∈3·δ,4·δ],tB∈3·δ,4·δ],tC∈2·δ,3·δ],tD∈2·δ,3·δ],根据剩余跳数可知,C和L节点具有优先权,而A和B节点取消数据包的传递,如果不把最小剩余跳数这一条件作为选择转发节点的优先权,C节点和L节点由于到目的节点的剩余跳数最少,因此最先接收到数据包,而B节点由于不知道C和L节点已经转发数据包,当t超过预设值时,B节点再次重新广播数据包,这样会造成传递不必要的数据包;其次,C和L节点开始转发数据包,G和H节点因到目的节点的最小剩余跳数少,获得优先权;最后,通过G和H节点将数据包转发给目的节点D。从OEZTR算法的过程中可以看出,上述数据的转发由2条路径同时进行,而EZTR算法只有1条路径,而它们到目的节点的剩余跳数是相同的。因此,OEZTR算法在没有增加任何路由开销的情况下,采用多条路径或者1条路径有多个候选节点进行数据传输,这可避免只有1条路径的特定节点而有可能遇到传输中断的问题,大大增加了数据分组的递交率。 33能耗模型 当传输距离为d,A节点发送l bit数据包到B节点的能量消耗见式(6): JP4]ETx(l,d)=ETx-elec(l)+ETx-amp(l,d)=JB({]lEelec+lεfsd2KG3]d 式中:ETx-elec(l)为发送I bit数据包电路所消耗的能量,ETx-amp(l,d)为传输距离d,发送l bit数据包的功率放大器所需的能耗,Eelec为发送和接收1 bit数据包的能量消耗,do为传输距离的阈值。 节点接收l bit数据包的能量消耗见式(7): ERx(l)=ERx-elec(l)=lEelec。JZ)]JY](7) 式中:ERx-elec(l)代表接收lbit数据包电路消耗的能量。 节点进行数据处理和融合的能量消耗见式(8): EDA(l)=lEDA。JZ)]JY](8) 式中:EDA代表数据融合所消耗的能量。 34仿真结果与分析 为了验证OEZTR算法的性能,本研究采用开源的NS2软件进行模拟仿真,对经典的ZigBee路由算法(ZBR算法)和本研究优化的ZigBee路由算法(OEZTR算法)进行性能对比分析,试验独立运行80次,分别获得路由算法的平均分组递交率和平均跳数,10~100个节点随机分布在100 m×100 m的区域内,Cm=4,Rm=4,Lm=6。
从图7、图8可以看出,OEZTR算法在平均跳数和节点端到端的时延方面优于ZigBee经典的路由算法,主要是本研究改进的路由算法并不特定选择下一跳节点,而是根据一跳范围内邻居节点到目的节点的剩余跳数这一优先权来限制剩余跳数较多的邻居节点作为被选节点,减少节点的转发跳数,降低ZigBee网络的总能耗,从而提高温室大棚远程在线监测系统的实时性。
4系统测试及分析
为了验证本研究提出的ZigBee路由优化算法(OEZTR算法)的可行性,将改进的路由算法应用到温室大棚在线监测系统中。ZigBee节点的组网方式为树型网络,远程监测中心上位机软件采用VBNET语言编写而成,系统的测试界面如图9所示。系统各个节点(终端节点、路由节点及协调器节点)均采用电池供电,通过设置对比测试试验,即ZigBee节点采用经典路由算法与节点采用OEZTR算法,结果表明,节点的电池寿命在同等条件下可延长5 d左右。
5结束语
为了实现温室大棚的信息化和智能化,本研究设计了一种基于ZigBee技术的温室大棚远程监测系统,利用短距离、低功耗的ZigBee技术,利用机会路由算法改进的ZigBee路由协议,实现对温室大棚的各种环境参数(如温湿度、光照度、二氧化碳浓度等环境参数)进行实时监控和智能控制,使温室大棚反季节农作物处于最佳的生长环境,有利于反季节农作物的优质高产。下一阶段的工作是盡可能地优化ZigBee路由协议,以更好地满足温室大棚远程监测系统对实时性要求高的特点。
参考文献:
1]ZK(#]滕志军,李国强,王中宝,等 基于ZigBee的温室大棚远程监测系统J] 农机化研究,2012,34(4):148-151HJ165mm]
2]Zhu Y L,Song J J,Dong F Z Applications of wireless sensor network in the agriculture environment monitoringJ] International Workshop on Automobile,2011(16):608-614
3]Su T M,Chen P Intelligent energy monitoring system based on ZigBee-Equipped smart socketsJ] Department of Electronic and Computer Engineering,2011(23):73-81
4]李建坡,钟鑫鑫,徐纯 无线传感器网络静态节点定位算法综述J] 东北电力大学学报,2015,35(2):73-82
5]张猛,房俊龙,韩雨 基于ZigBee和Internet的温室群环境远程监控系统设计J] 农业工程学报,2013,29(增刊1):171-176
6]杨玮,吕科,张栋,等 基于ZigBee技术的温室无线智能控制终端开发J] 农业工程学报,2010,26(3):198-202
7]陈智伟,苏维均,于重重,等 基于WSNs的农业温室监控系统的设计J] 传感器与微系统,2011,30(7):82-84,87
8]孙增友,周池 基于能量和距离的WSN自适应分簇算法J] 东北电力大学学报,2016,36(1):82-86
9]蔡镔,毕庆生,李福超,等 基于ZigBee无线传感器网络的农业环境监测系统研究与设计J] 江西农业学报,2010,22(11):153-156
10]ZK(#]纪建伟,左仲善,邹秋滢 基于ZigBee与嵌入式技术的农业远程监测系统的设计J] 中国农机化,2010(6):83-86,94endprint