农业生产环境监测无线传感器网络路由算法研究

2017-01-21 15:36郑纪业封文杰王风云刘延忠
山东农业科学 2016年12期
关键词:仿真软件无线传感器网络

郑纪业+封文杰+王风云+刘延忠

摘 要:无线传感器网络以其低成本、低功耗、高可靠、自组织等特点,在农业生产环境监控中发挥着重要作用。针对无线传感器网络分簇结构中簇头节点能量消耗过快导致网络分割问题,提出了一种适用于农业生产环境监测的基于事件驱动的能量高效分簇路由算法。网络中所有节点部署完毕后即进入休眠状态,当环境中某个监测数值高于设定阈值时,感知范围内的节点被唤醒并启动事件响应分簇机制。在簇成立阶段,随机选择一个节点elector广播请求分簇消息,并接受其他唤醒节点的响应,elector根据各节点能量情况,选择剩余能量最大的节点作为簇头节点,能量次之的为下一轮elector;在数据传输阶段,根据节点剩余能量及到基站(BS)的距离选择转发节点。仿真实验结果表明,该路由协议减少了簇成员之间的通信开销,使得网络中各节点的能量消耗更加均衡, 有效延长了传感器网络的生命周期。

关键词:无线传感器网络;路由算法;事件驱动;分簇;OMNET++仿真软件

中图分类号:S126文献标识号:A文章编号:1001-4942(2016)12-0156-06

Abstract With the characteristics of low cost, low power consumption, high reliability and self-organization, wireless sensor networks (WSNs) play important roles in the agricultural production environment monitoring. Aiming at the problem of cluster head nodes consuming energy so fast to lead the network segmented into parts, we put forward an event driven and energy efficient clustering routing algorithm for agricultural production environment monitoring. All nodes go to sleep mode after the network deployment, when the monitored parameters value higher than the setting threshold, the nodes within the scope are awakened and start the incident response clustering mechanism. At the cluster set up phase, randomly select a node as elector to broadcast request clustering message, and accept the other sensor nodes response, according to each node energy situation, elector choose node with the maximum residual energy as a cluster head, and choose node with second highest energy for the next round elector. In data transmission phase, the relay nodes were selected on the basis of the residual energy of nodes and the distance to the base station (BS). The simulation experimental results showed that the proposed protocol could reduce the communication overhead between the cluster members, effectively balance the energy consumption of each node in the network, and significantly prolong the survival time of the network.

Keywords Wireless sensor network; Routing protocol; Event driven; Clustering; OMNET++simulate software

农业信息的精准获取是农业生产环境调控的基础,面对复杂的农业生产环境及庞大的数据监测量,传统的农业信息获取方式已无法满足现实需要。随着微电子工艺和无线射频技术的飞速发展,无线传感器网络的研究越来越受到人们的重视。传感器网络是由部署在观测环境内的大量微型传感器节点通过无线通信方式组成的一种无线网络[1]。由于无线传感器网络具有低成本、低功耗、高可靠、自组织等特点,在农业生产环境监控系统中有着重要的地位与广泛的应用前景[2]。

相对传统的有线农业环境监测系统,无线传感器网络具有无可比拟的优势,首先是方便布置,节省了有线安装的费用;其次是易于拓展,在已有的监测区域很容易扩展到相邻区域;再次是容错性好,网络中单个节点的失效不影响整个网络的操作;最后,无线传感器网络具有自组织性,节点具有自我配置的能力,这也是其易于拓展的重要原因。然而它也具有无线传输媒介固有的限制,如传输带宽低、传输过程容易出错、信道冲突等;另外,很多节点部署在野外,甚至一些不容易到达的地方,仅靠有限的电池来供电,某些靠近基站(BS)的节点由于传输任务重很容易因能量消耗过快而失效,从而导致它所负责区域的无线监控失效,因此,如何在节点初始能量一定的情况下,均衡网络流量,节省能量消耗,尽可能地扩大网络的生存时间,确保监测系统长期有效工作,是无线传感器网络路由协议设计的首要目标,也是研究无线传感器网络应用于农业生产环境监控的核心问题之一。

现有的路由协议从网络拓扑结构角度可以分为平面路由协议和分簇路由协议。平面型路由协议中所有节点具有相同的工作方式和地位,主要优点是算法简单、路由选择灵活和容易实现;缺点是可扩充性和实时性较差,所有节点都具有路由功能,当距离汇聚节点较远的节点需要发送数据时,必然会通过其他节点进行转发,最后到达汇聚点,这种路由方式称为“多跳”,其汇聚点附近的节点因过于频繁地参与数据转发,能耗过快,易致失效。如MTE(minimum-transmission-energy)路由协议,所有节点数据通过中继节点传输到汇聚点,导致中继节点既要感知数据,又要转发其他节点的感知数据,容易过早失效。

层次型路由也称为基于分簇的路由协议,通常把整个监控网络划分为多个簇区单元,每个单元由一个簇头和若干个簇成员传感节点构成,簇头管理和控制簇成员节点,协调簇内节点数据传输,同时将收到的簇内节点信息进行数据融合处理;普通节点只需要在其分配的时隙内将采集到的数据发送给簇头。传感网络的分簇弥补了可扩展性差的缺点,簇头节点的数据融合工作在一定程度上减少了网络中的冗余数据,降低了网络通信量,因此基于分簇的路由协议得到了十分广泛的应用。

低功耗自适应分簇分层型协议(low energy adaptive clustering hierarchy,LEACH) 是WSNs中最早提出的基于多簇结构的层次型路由协议[3],后期很多重要的路由协议都是基于它演变而来的。LEACH协议在每个数据收集周期(一个周期也称为一轮)开始时随机选择一小部分节点成为簇头,在数据传输阶段,簇头以单跳通信的方式将融合后的数据传输给汇聚点。该算法在簇头选择时采用了随机方法,并未考虑所选节点的能量剩余情况。为了提高簇的生成质量,Heinzelman等[4]又进一步提出了集中式的簇构造算法LEACH-C。蒋建明等[5]在采用LEACH的基础上,依据节点电池剩余能量的多少选择簇头,并将远距离簇头向基站传输数据的方式由单跳式改为双跳式,以达到节约节点能耗和延长网络生命周期的目的。李成法等[1]提出一种基于非均匀分簇的无线传感器网络多跳路由协议,该协议通过候选簇头使用非均匀的竞争范围来构造大小不等的簇,离汇聚点越近,所形成的簇规模越小,这使得靠近汇聚点的簇头可以为簇间的数据转发预留能量。为解决大面积水稻田无线传感器网络能量消耗过快和丢包率严重等问题,雷刚等[6,7]提出了基于能量异构双簇头分簇路由算法,并设计了不同天线模式下的3 种组网方案。归奕红[8]针对农业生产监控需求,提出一种适用于农田环境监控的动态WSN路由算法,该算法支持网络中的传感器节点和基站都是可移动的,采用移动式基站有利于实现整个网络的负载平衡,网络基于簇结构并分层进行管理,能有效降低能量消耗,延长网络的生命周期。朱勇等[2]在典型路由算法与蚁群算法的基础上,基于温室环境智能监控的应用需求,从能量高效与节点可信度方面出发,提出了一种新的基于蚁群算法的同时考虑节点位置与能量的无线传感器网络分簇路由算法(DEC-ACO)。赵春江等[9]提出了一种能量控制与动态路由相结合的路由算法ES-AODVjr,该算法通过平衡监测设备功耗和数据包最短路径路由策略,保证监测网络中的数据及时有效地传递。综上所述,LEACH及其变异算法均基于以下两个假设:传感器节点持续地向簇头节点发送数据;簇头节点总是直接与汇聚点通信。但在大面积农业生产环境监测中,簇头节点往往无法直接与汇聚节点通信,因此,LEACH并不能够很好地平衡整个网络的能量消耗。

基于事件驱动的路由算法由于只有当监测到事件发生时才进行分簇并向汇聚点发送数据,从而减少了持续定时分簇的开销以及数据发送的冗余,使得该方法对整个网络的能量使用效率、能耗平衡及网络寿命更加有效,OEDSR[10]、ARPEES[11]、HPEQ[12]的仿真实验也证明了这一点。Manjeshwar等根据节点工作模式及目标应用的类型,将传感器网络分为主动上报型和应急响应型:主动上报型同LEACH中采用的一样,周期性地启动传感器节点,感知环境信息并发送感兴趣的数据;应急响应型则只有在所监测的某个环境因子发生突然变化并超过预先设定的阈值时才会立刻做出反应,这比较适合实时性要求较高的应用。同时结合两者优点,提出了一种查询式混合路由协议APTEEN[13]。Yupho等[14]分析了连续监测模式、事件驱动模式及混合模式在医疗环境监测方面的优缺点,认为具有数据可靠交付保证的混合模式更加符合医疗环境监测的需求。由于上述所有路由协议都是面向具体应用而提出的,因此在具体的农业生产环境监控方面并不能完全适用。本文以农业生产环境无线监控为研究对象,提出了改进的基于事件驱动的能量高效分簇路由协议(event driven energy efficient clustering,EDEEC),在此协议下,当被检测环境因子高于某个预先设定的阈值后,传感器探测到该事件并自动进行分簇组网将此关键信息传送给管理者。

1 传感器网络模型

1.1 网络模型

为保证算法正常运行,本研究的无线传感器网络模型具有以下特征:

(1)N个传感器节点随机分布于M×M的正方形区域内,各节点在网络中的地位平等,具有唯一ID,网络部署后节点位置不再变化。

(2)所有节点均为同构节点,即具有相同的初始能量、数据处理和通信功能,包括存储转发、数据融合、自适应功率控制等。

(3)基站(BS)节点唯一,静置于监测区域外部且离监测节点很远,能量和功能不受限制。

1.2 信道模型

为了分析发送和接收广播控制信息及发送和接收感知数据的能量消耗,及时确定网络中各节点剩余能量及网络的整体能量情况,本文使用文献[3]中提出的无线信道模型:

(1)网络中传输的数据包括广播数据包和感知数据包两种,假设k表示数据包的大小,k=25 byte表示广播数据包的大小,k=500 byte表示感知数据包的大小。

(2)传输数据包所消耗的能量包括传输能耗ETx-elec=k×Eelec和功率放大能耗Eamp=k×Efs×d2两部分,其中Eelec表示发射或接收每比特数据发射和接收电路功耗,Efs表示在自由信道模型中传输所需能量,d表示发送节点与接收节点间的距离。因此,将k比特数据传输d距离所消耗的能量表示为ETx (k,d)=ETx-elec+Eamp=k×Eelec+k×Efs×d2。

(3)接收数据包所消耗的能量表示为:

ERx(k)=ETx-elec=k×Eelec。

可以看出,在感知、处理、发送数据过程中,传感器节点发送数据所消耗的能量最多,因此,在本研究提出的协议中,重点致力于减少控制信息数量、缩减信息长度及缩短数据传输距离来减少能量消耗,从而提高整个网络的生存周期。

2 EDEEC路由协议

EDEEC路由协议可分解为若干轮,每轮包括簇形成阶段和数据传输阶段,簇形成阶段主要包括簇头的选择和簇建立两部分,数据传输阶段包括簇内数据传输、数据融合及簇头与BS节点的数据传输三个阶段。

2.1 网络初始化

整个传感器网络在部署完毕后需要进行初始化配置工作,该工作仅在第一次部署完毕后进行。为了获取各节点与BS节点之间的距离,BS节点利用洪泛机制广播S_ADV消息,各节点根据文献[15]中提出的接收信号强度指示器(RSSI)估算出自身与BS节点间的距离。在本协议中,节点间可以通过交换请求建立簇消息(REQ_CLUSTER)或者请求转发节点消息(REQ_RELAY),获取与其他节点的距离。

2.2 簇形成阶段

2.2.1 簇头选举 为了节省能量,网络初始化完成后,所有节点均进入休眠状态。当监测到事件发生时,该事件周围的休眠节点被激活并获取所监测数据的具体信息。如果所感知信息超过预先设定的阈值,则被激活的节点运行簇建立与簇头选举算法。文献[16]和[11]中将所有激活的节点广播REQ_CLUSTER数据包(包含节点ID、剩余能量和事件中所感知数据的描述性信息等字段内容)给其他被激活的节点,请求建立分簇网络,假设有n个节点被激活,如果所有节点均发送广播消息,则所发送广播消息的数量为n(n-1)次;本协议随机选择一个被激活的节点elector发送广播消息,并等待所有其他节点传回应答信息RES_CLUSTER,则发送接收消息的总数量为2(n-1)。elector节点收到所有应答信息后,选举所有节点中剩余能量最多的节点为簇头(CH)节点,并将所有簇成员节点ID转发给CH,选举能量次之的节点为下一轮的elector,这样如果一轮结束后elector比其他节点剩余的能量多,则该elector成为下一轮簇头节点的概率将进一步增大,减少更多应答消息的传递。

2.2.2 簇构建过程 选举出簇头节点后,簇头根据本次事件中簇成员的多少分配TDMA调度计划,同时广播TDMA_MSG数据包给簇内成员节点来确保各节点有序地向簇头节点传输感知数据;各等待传输感知数据的非簇头节点进入休眠状态直到分配给它的时隙的到来。簇建立阶段的流程如图1所示。

2.3 数据传输阶段

在前面的网络模型中,我们假设BS节点远离各传感器节点,因此簇头节点必须经过转发节点(也称中继节点)将融合后的数据传送给BS节点,因此在该阶段,应该寻找一条更加节省能量的路由路径将融合后的数据传送到BS节点。

2.3.1 簇内数据收集 使用TDMA调度计划,各节点在其分配的时隙内向簇头节点传送感知数据。为了节约能量,当为各节点分配的时隙到来之前,各节点处于休眠状态,只有在其分配的时隙内才处于激活状态并传送数据。

2.3.2 簇头数据处理 数据处理相比于数据传输所消耗的能量少很多,因此簇内数据融合对于减少数据冗余、节约发送能耗至关重要。簇头节点收集完所有簇内成员的数据后,执行相应数据融合算法,从而减少发送到BS节点的数据量。

2.3.3 选择转发节点创建路由 要发送数据的簇头节点首先检查BS是否在其通信范围内,如果在则直接将数据发送给BS,如果不在则簇头给其通信范围内的节点广播请求转发REQ_RELAY数据包并请求所有收到数据包的节点返回其自身信息。REQ_RELAY数据包包含节点ID、剩余能量、离BS的距离信息。收到REQ_RELAY的节点将根据自身与BS的距离与REQ_RELAY中请求节点与BS的距离决定是否返回响应转发RESPON_RELAY数据包,只需距离BS更近的候选节点做出该响应,该响应数据包包含节点ID、剩余能量、端到端平均延时及离汇聚节点的距离等信息。簇头节点从邻居节点收到响应数据包后,根据式(1)所示的转发代价函数从候选节点中选择下一跳转发节点。

FRN(j)=Eres(j)Delay(CH,j) ×d(CH,j)d(j,BS)(1)

式中Eres是节点的剩余能量,d(j,BS)是候选节点j到基站BS的距离,d(CH,j)是簇头节点与候选节点j之间的距离,Delay(CH,j)表示簇头节点CH与候选节点j之间的平均延时。该转发代价函数是基于以下条件建立的:

①转发节点应具有最大的剩余能量Eres(j)。

②转发节点距离BS即d(j,BS)越近越好,距离CH即d(CH,j)越远越好。

③簇头CH与转发节点之间的延时Delay(CH,j)越小,实时性越好。

所有候选节点中FRN(j)值最大的节点将被选为转发节点。在下一跳中,转发节点作为簇头寻找下一个转发节点,一直重复这个过程,直到下一跳为BS节点。最终,建立起一条从簇头节点到BS节点的最优传输路径。图2描述了数据传输阶段的流程图。

3 仿真实验

为了验证本文提出的EDEEC路由算法的可行性和有效性,对EDEEC及LEACH、ARPEES协议在OMNET++仿真软件中进行了仿真实现。在仿真实验中,各节点均匀分布在500 m×500 m的方形区域内,基站设置在(250,500)的位置,并且能量不受限制,设置所有节点初始化能量为2 J,其他仿真参数设置如表1所示。

三种算法的网络生命周期如图3所示,横坐标为网络进行的轮数,纵坐标为网络中剩余的存活节点数。可以看出,LEACH、ARPEES、EDEEC三种算法的网络生命周期分别为246、635、691轮,EDEEC算法有效延长了整个网络的存活时间,是LEACH协议算法的两倍多,相较ARPEES提高了8.8%。

4 小结

针对无线传感器网络监测农业生产环境过程中,网络内各节点能量消耗不均匀导致部分节点失效过快,提出了一种基于事件驱动的农业生产环境监控无线路由算法——EDEEC算法。该算法通过减少簇内控制信息的发送数量,根据转发代价函数从候选节点中选择下一跳转发节点来缩短数据传输距离,减少能量消耗,从而提高整个网络的生命周期。仿真实验结果表明,EDEEC算法更好地解决了网络能量消耗不均衡问题,其网络生命周期相较ARPEES提高了8.8%,是LEACH的2.8倍。

本研究算法在分簇过程中簇头节点选择时elector节点是随机指定的,未考虑节点剩余能量,后续研究中应进一步限定elector节点指定时的最低剩余能量阈值,并通过KeilMDK开发平台将算法程序移植到硬件感知节点,以更好地实现农业生产环境的实时在线监测。

参 考 文 献:

[1] 李成法,陈贵海,叶懋,等. 一种基于非均匀分簇的无线传感器网络路由协议[J]. 计算机学报, 2007, 30(1): 29-38.

[2] 朱勇,卿培. 基于新分簇路由算法的温室监控网络节能研究[J]. 仪器仪表学报, 2012, 33(6): 1420-1426.

[3] Heinzelman W R, Chandrakasan A, Balakrishnan H. Energy-efficient communication protocol for wireless microsensor networks[C]// Proceedings of the 33rd Hawaii International Conference on System Sciences, 2000:1-10.

[4] Heinzelman W B, Chandrakasan A P, Balakrishnan H. An application-specific protocol architecture for wireless networks[J]. IEEE Transactions on Wireless Communications, 2002, 1(4): 660-670.

[5] 蒋建明,史国栋,赵德安,等. 水产养殖参数无线测量网络的长生命周期研究[J]. 农业工程学报, 2014, 30(7): 147-154.

[6] 雷刚,王卫星,孙宝霞,等. 大面积水稻田无线传感器网络组网设计与优化[J]. 农业工程学报, 2014, 30(11): 180-187.

[7] 雷刚,王卫星,孙宝霞,等. 基于能量异构双簇头路由算法的水稻田无线传感器网络[J]. 农业工程学报, 2013, 29(24): 139-146.

[8] 归奕红. 面向农业监控的动态无线传感器网络路由算法[J]. 湖北农业科学, 2012, 51(11): 2345-2347.

[9] 赵春江,吴华瑞,朱丽. 一种农田无线传感器网络能量控制与动态路由算法[J]. 传感技术学报, 2011, 24(6): 909-914.

[10]Ratnaraj S, Jagannathan S, Rao V. OEDSR:optimized energy-delay sub-network routing in wireless sensor network[C]//Proceedings of the IEEE International Conference onNetworking, Sensing and Control, 2006: 330-335.

[11]Vinh T Q, Takumi M. Adaptive routing protocol with energy efficiency and event clustering for wireless sensor networks[J]. IEICE Transactions on Communications, 2010, E91.B(9): 2795-2805.

[12]Boukerche A, Pazzi R W N, Araujo R B. HPEQahierarchical periodic, event-driven and query-based wireless sensor network protocol[C]// Proceedings ofthe IEEE Conference onLocal Computer Networks, 30th Anniversary, 2005: 560-567.

[13]Manjeshwar A,Agrawal D P. APTEEN: ahybrid protocol for efficient routing and comprehensive information retrieval in wireless sensor networks[C]//Proceedings of the International Parallel and Distributed Processing Symposium, 2002: 195-202.

[14]Yupho D,Kabara J. Continuous vs. event driven routing protocols for WSNs in healthcare environments[C]//Pervasive Health Conference and Workshops, 2006: 1-4.

[15]Bahl P,Padmanabhan V N. Radar: an in-building RF-based user location and tracking system[J]. IEEE INFOCOM, 2000: 784-775.

[16]Banh M T Q,Nguyen G T,Ngo T Q. Energy-balanced and fault-tolerant clustering routing protocol for event driven WSNs[C]//Proceedings of the Third Symposium on Information and Communication Technology, [S.l.]: Acm, 2012: 149-158.

猜你喜欢
仿真软件无线传感器网络
浅谈机器人离线编程软件在机器人教学中的应用
基于无线传感器网络的绿色蔬菜生长环境监控系统设计与实现
仿真软件在航空典型结构件上的应用
基于无线传感器网络的葡萄生长环境测控系统设计与应用
一种改进的基于RSSI最小二乘法和拟牛顿法的WSN节点定位算法
电子类仿真软件应用的教学之道
无线传感器网络定位技术可靠性分析
交流变频调速系统仿真软件的研究
对无线传感器网络MAC层协议优化的研究与设计
无线传感器网络技术综述