基于移动Sink 的带状无线传感器网络数据汇聚方法研究*
2022-07-09杨彩云汪小东汪晨王海军毛科技
杨彩云汪小东汪 晨王海军毛科技
(1.衢州学院电气与信息工程学院,浙江 衢州 324000;2.浙江九州治水科技股份有限公司,浙江 衢州 324000;3.衢州市气象局,浙江 衢州 324000;4.上海电机学院,上海 201306;5.浙江工业大学计算机科学与技术软件学院,浙江 杭州 310014)
无线传感器网络(Wireless sensor networks,WSN)是一种由大量传感器节点组成,并以无线自组织的形式构成的通信网络[1-2]。 无线传感器网络广泛应用于目标跟踪、空间监测、战场敌情侦察等领域[3-4]。 无线传感器节点通常采用干电池供电,节点能耗殆尽时一般不再进行电池更换,因此网络寿命受到限制。 为提高网络寿命,需要均衡网络节点能耗,从而最大限度地提高网络生存时间[5]。 传感器节点在数据发送和接收时都需要消耗能量,采集的数据通过多跳传输转发至Sink 节点,靠近Sink 节点的传感器节点由于需要频繁地转发网络内节点发送的数据而造成节点过早死亡,从而形成能量空洞导致网络失效[6]。
无线传感器网络路由方法根据逻辑结构可分为平面路由和分层路由[7]。 平面路由中网络内所有节点地位和功能相同,建立和维护路由时开销大,因此适合小规模网络。 分簇路由作为分层路由的一种,将传感器网络进行分簇,每个簇分配一个周期轮换的簇头,簇头收集簇内成员节点数据并转发给Sink 节点[8]。 由于数据的转发和路由通过簇头和Sink 完成,因此分簇收集网络数据是延长网络生命周期的重要方法之一。 Heinzelman 等人[9]提出了基于聚类的LEACH 协议,通过随机选举簇头均匀地分配网络内节点之间的负载,LEACH 协议中簇内成员节点、簇头节点和Sink 之间均通过一跳的方式进行数据传输。
带状无线传感器网络是一种长度远大于宽度的网络,网络内节点呈线性排列,主要应用于桥梁、管道、河流、地铁等场景之中[10]。 与普通网络类似的是,带状网络Sink 节点附近区域的节点要传输更多的数据量,因此也会产生能量空洞问题。 而目前大多数路由方法仅适合于螺旋或者环形网络场景,不适合于带状的网络,因此研究带状网络的能耗均衡具有重要意义。
通过静态Sink 节点进行网络数据收集,较难实现网络的均衡。 因此,Tunca 等人[11]提出了通过移动Sink 来收集网络数据的方法,该方法避免因数据传输距离长导致数据传输能耗高的问题,移动Sink提高了网络能耗的均衡性,对于提高网络寿命具有重要意义。 Khan 等人[12]将基于移动Sink 的数据收集和分发方案分为路径约束、无路径约束和Sink 移动性受限三种,并进行了比较研究,但该方案没有对移动Sink 的最佳移动速度进行考虑,且未根据簇头与Sink 的距离动态地调整传输距离,因此数据收集时网络能耗较高。 Krishnan 等人[13]提出了一种基于MDC 优化的无线传感器网络数据采集方法,使用改进的LEACH 算法选举簇头,簇内成员节点使用距离调整算法自动调整传输距离,最后采用基于萤火虫优化算法的MDC 来提高网络的生存期,实现高效数据采集。 该方法基于环状网络模型研究,不适用于带状网络模型。 Qiao 等人[14]为提高带状网络的通信效率,提出了一种基于位置的链簇路由协议(Position-based Chain Cluster Routing,PCCR),PCCR将带状WSN 划分为多个带状区域簇,通过节点的位置以及能耗情况选择簇头,并建立簇头链作为带状WSN 的数据传输路线转发节点数据,结果表明PCCR 协议比LEACH 协议更加适合于带状WSN,具有更长的网络生命周期。 然而该方法采用静态Sink 收集收据,仍会存在能量空洞。 Xin 等人[15]首次尝试解决带状无线传感器网络的多对一传输问题,提出一种基于精准距离的传输方案(ADTS),这种传输方案提高了带状无线传感器网络的生命周期。 但该方法是基于静态Sink 场景之下,虽然通过调整通信范围提高了网络寿命,但能量空洞问题仍未完全解决。 Ye 等人[16]针对道路结构的检测,提出了一种带状聚类方案(Strip Clustering Scheme,SCS),该方案包括网络区域划分、簇首节点选择、链路构建、数据融合和传输。 SCS 通过数据融合,减少冗余数据,降低网络总能耗,但该方案也是建立在静态Sink 的基础之上,因此能量空洞问题依然存在。
综上所述,目前基于环状无线传感器网络的路由协议无法适应带状无线传感器网络。 而已经提出的相关带状无线传感器网络的数据汇聚协议未考虑Sink 节点的最佳移动速度,从而导致网络数据收集时能耗过高。 针对该问题提出一种基于移动Sink 的带状WSN 数据汇聚方法(Low energy data collection method based on mobile Sink in banded WSN,LEDCM),该方法通过计算Sink 节点的最佳移动速度,并自适应调整簇首节点的通讯范围,从而以低能耗代价实现带状网络的数据汇聚,有效避免了网络能量空洞的产生。
1 相关模型与定义
1.1 网络模型
本文采用带状网络模型,网络内节点以线性方式均匀分布,如图1 所示,其中网络长度L远大于网络高度H。 为减少通信能耗,采用聚簇的方式进行通信,将网络划分为n个大小相同的簇,表示为Setc={c1,c2,…,ci,…,cn},并根据LEACH 协议[9]为每个簇选择一个簇头CHi,通过周期性轮换簇头的方式保持网络能耗均衡。 每个簇的簇头CHi直接与移动Sink 通信,每个簇都有w个成员节点(不包括簇头),每个成员节点生成k位数据。 网络内簇头的主要任务是:收集簇内成员节点采集的数据,以1/α的融合率将数据进行融合,以减少冗余数据传输,然后以单跳的方式将数据传输至移动Sink。 如图1 所示,网络内任意一个簇Ci的长度表示为leni,并满足条件0 图1 网络模型 本文采用文献[17]提出的节点能耗模型,根据节点传输距离的不同,可分为自由空间模型和多径模型。 节点发送或接收kbit 数据时,能耗如式(1)和式(2)所示: 式中:Eelec表示收发电路的基本能耗;Efs、Eamp表示功率放大电路的系数;k表示收发数据的位数;d表示通信距离;d0(d0=87m)是自由空间模型和多路径模型之间的边界。 假设本文节点遵循自由空间模型,即dj 假设1 移动Sink 和无线基站的能量充足,并且是可充电的。 假设2 将N个传感器节点以线性形式均匀地部署于带状网络内,移动Sink 并以最佳移动速度运行于网络上方,如图1 所示。 当移动Sink 到达待数据收集的簇附近时,簇头节点调整通信范围,使节点以较低能耗代价实现网络数据的收集。 网络能耗的最小目标可通过式(3)表示: 式中:Ei表示i节点的总基本能耗。 本文的数据通信方式为:簇内成员节点采集网络数据发送给簇头,簇头融合数据,将融合之后的数据通过单跳的方式转发给移动Sink,最后由Sink 将数据发送至基站。 由于移动Sink 和无线基站能量充足,因此在网络通信能耗方面只需考虑两部分:一是簇内成员节点与簇头通信的能耗;二是簇头与移动Sink 通信的能耗。 由于网络的L≫H,因此簇内两节点之间的距离可通过投影点之间的距离进行表示,如图2 所示,即可认为d(ni,ni+1)=d(n′i,n′i+1)。 因此,簇Ci内任意两节点之间距离平方的期望E(d2),可由式(4)计算得到,而此时E(d2)的值刚好约等于簇内成员节点到簇头平均距离的平方。 图2 节点投影点距离 式中:x,y分别表示投影节点n′i和n′i+1的位置。 对于簇Ci内的通信能耗由两部分组成,分别是簇内成员节点将数据发送给簇头CHi消耗的能量和簇头CHi从簇内成员节点接收数据消耗的能量。 由于每个簇Ci都由w个成员节点组成,且每个成员节点都产生k位数据。 因此,簇内成员节点需要发送的总数据量为TxCM=wk。 通过式(1)和式(4)可以计算出簇成员发送TxCM位数据时的总能耗,如式(5)所示: 由于簇头接收的数据量RxCM与簇内成员节点发送的数据量TxCM相同,因此可根据式(2)和式(4)计算簇头CHi接收RxCM位数据的能耗,如式(6)所示: 所以簇Ci内消耗的通信总能耗为+,如式(7)所示: 移动Sink 在距离网络上方dm的位置处以速度vi沿特定的方向移动(其中dm 图3 簇头与移动Sink 距离 根据式(7)可以计算簇头CHi与移动Sink 每个位置处的距离平方和,如式(10)所示: 簇头CHi与移动Sink 距离平方的均值为,由式(11)计算得到: 由于簇头从簇内成员节点接收wk位数据,而簇头的数据融合率为1/α,因此簇头发送给移动Sink 的数据量TxCH=wk/α,根据式(1)可以计算出簇头将数据发送至移动Sink 消耗的能量,如式(12)所示: 根据式(2)可计算出移动Sink 接收簇头CHi数据时消耗的能量ESink-rxi,如式(13)所示: 由于移动Sink 的能量充足,并且是可补充的。因此,在簇头与移动Sink 通信时可忽略移动Sink 消耗的能量,即=0。 则簇头与移动Sink 通信的总能耗可由式(14)计算得到: 节点的平均能耗是簇内通信能耗和簇头与移动Sink 通信能耗的均值。 由式(7)和式(14)可以得到簇Ci通信时总能耗,如式(15)所示: 由于簇Ci内成员节点的个数为w(即簇内节点数量为w+1),因此节点的平均通信能耗为,如式(16)所示: 在数据采集阶段,移动Sink 根据节点的平均能耗计算出最佳移动速度,利用数据发送前后的距离,调整簇头的传输距离,从而减少通信能耗。 智能化发展是未来阶段自动化机械制造的主要趋势,我国的机械制造自动化智能技术应用总体而言相对普及,但实际智能操控水平并不高,部分关键性系统操作流程仍需人工干预完成,导致生产成本大幅增加,自动化生产效率大打折扣。未来阶段的自动化机械设备制造必须与现代智能化技术有效融合,通过一系列的技术研发提高智能化技术应用可靠性,从将智能化技术开发纳入自动化机械设备制造体系,以此提高自动化机械设备生产的实际可控性。 为减少移动Sink 收集数据时的网络能耗,需要考虑移动Sink 的移动速度。 由于不同簇的物理规模不同,因此在采集数据时,移动Sink 的移动速度会有所差异,其目的是为了减少网络能耗,尽可能地提高网络生命周期。 由式(16)可知,节点的平均能耗是关于Sink 移动速度vi的二次方程,并且该方程开口向上,可以对平均能耗求取一阶导,当一阶导为0 时,此时的节点平均能耗最低,即移动Sink 在采集该簇数据时的最佳移动速度。 在数据传输的初期,本文利用LEACH 协议进行簇头选举、簇规划以及确定数据传输路径等。 移动Sink 从带状网络的一端开始移动并广播数据请求包Dreq,当簇头接收到数据请求包Dreq时,给移动Sink 回复Dreply数据包,接着开始网络数据的传输。具体的数据汇聚过程如表1 所示。 表1 数据汇聚方法 本文提出的LEDCM 方法在数据汇聚时,移动Sink 始终以最佳移动速度运行。 并且簇头动态调整传输距离,很好地解决了因传输距离的长短而造成能量浪费或者数据包投递率低的问题,因此本文提出的方法能够以较低能耗实现较高的网络数据包投递率。 使用MATLAB 仿真软件对本文提出的LEDCM方法进行实验,实验分析了节点的平均能耗、网络生存时间和数据包投递率。 为体现本文提出方法性能的优越性,与现有的基于带状网络模型的方法进行对比,包括带状聚类方案(SCS)[16]、节能地理路由协议(EEGR)[18]和直接传输方案(DT)[18]。 网络参数配置如表2 所示。 表2 网络参数配置 实验中将网络长度L设置为1 000 m,簇的长度leni 图4 簇规模与网络能耗关系 从图4 可以看出,随着簇规模的增大,节点的平均能耗首先迅速降低,当簇规模leni大于60 之后,节点平均能耗缓慢上升。 由于刚开始簇的规模较小,随着簇规模的增大,网络内簇的数量在减少,从而降低了由于大量簇头承担数据转发时过多的能量消耗。 而当簇规模大于一定值时,由于簇的数量少,此时负载主要由少量的簇头承担,但是该情况将加快簇头轮换,影响数据传输性能。 为降低节点平均能耗,选择一个合适的簇规模较为重要。 静态Sink 的网络模型中,Sink 节点部署于网络的一侧,如果簇的ID 越大,表明该簇距离Sink 节点的距离就越远。 实验中分别将网络长度L设置为400 m,600 m 和1 000 m,图5 至图7 分别分析了不同的簇与节点平均能耗之间的关系,网络簇的规模为50。 实验数据均为重复20 次的平均结果。 图5 簇ID 与节点平均能耗关系(L=400 m) 图6 簇ID 与节点平均能耗关系(L=600 m) 图7 簇ID 与节点平均能耗关系(L=1 000 m) 从图5 至图7 可以看出随着簇ID 的增大,DT和SCS 消耗的能量在增多,而LEDCM 方法节点的平均能耗始终保持不变,且能耗最低。 这是因为随着簇ID 的增大,DT 和SCS 方法中簇头与Sink 的距离就越长,则数据传输距离就越长,需要消耗的能量就越多。 而LEDCM 方法通过移动Sink 均衡网络能耗,由于在数据收集时,移动Sink 始终以最佳速度运动,而且簇头的传输距离根据与移动Sink 的距离自适应地调整,因此LEDCM 方法比现有方法的平均节点能耗都低,且网络能耗均衡性最好。 网络生存时间是评价一个网络节能性和能耗均衡性的重要标准,网络生存时间越长,网络节能性和网络均衡性就越好。 衡量网络生存时间的标准有很多,比如网络中第一个节点或最后一个节点死亡的时间、网络链路中断的时间。 本文采用最后一个节点死亡的时间作为网络的生存时间。 图8 分析了网络长度L=1 000 m,网络簇的个数为20 时(每个簇规模相同),每轮之后存活的节点数量。 图9 分析了网络内簇的个数为20 时,网络长度与网络生存时间的关系。 图8 实验轮数与存活节点关系 图9 网络长度与网络生存时间关系 从图8 可以看出,LEDCM 第一次出现死亡节点时,网络已经完成了5.2×104轮的数据收集,当网络内节点全部死亡时,LEDCM 完成了8.12×104轮的数据收集。 与其他方法对比,当存活节点数量相同的情况下,LEDCM 采集的数据轮数是最多的,即LEDCM 的网络寿命最长。 这是因为本文提出的方法Sink 以最佳移动速度运行,并且簇头在数据传输时动态地调整传输距离,因此使能耗达到最低,从而提高了网络生命周期。 从图9 可以看出随着网络长度的增加,LEDCM的网络的生存时间缓慢减小,但与SCS、EEGR 和DT相比,网络生存时间最长。 由于随着网络规模的增多,在网络内簇的个数不变的情况下,每个簇的规模在逐渐增大,需要传输的数据量就越多,网络生命周期就越短。 与其他方法相比,LEDCM 方法的移动Sink 采用最佳移动速度采集数据,因此网络能耗最低,网络寿命最长。 数据包投递率是衡量方法优劣的一个重要指标,数据包投递率越高表示该方法收集数据时,数据丢失率越低,收集的数据就越可靠。 图10 分析了当网络长度L=1 000 m,网络簇规模为50 时,不同的实验轮数与网络数据包投递率之间的关系。 图10 数据包投递率 从图10 可以看出,LEDCM 的数据投递率是最高的,当实验轮数为6×104时,数据包投递率为94.3%,而此时SCS、EEGR 和DT 方法的数据包投递率分别为61.9%,50.8%,10.2%。 因为实验轮数为4×104至6×104时,此时DT 方法中的节点已经全部死亡,因此网络已经失效,无法实现数据包的传输,所以数据包投递率最低。 SCS 和EEGR 在实验轮数为4×104时,网络内节点开始逐渐死亡,因此数据投递率逐渐降低。 而LEDCM 方法当实验轮数为5.2×104时才有节点能耗殆尽开始死亡,并且LEDCM 通过自适应地调整簇头的传输范围,从而以不增加通信能耗的情况下,尽可能地提高通信质量,因此LEDCM 方法的数据包投递率是最高的。 目前带状无线传感器网络数据汇聚时能耗高、数据包投递率低,从而造成网络生存时间短,数据可靠性差等问题。 本文提出了一种基于移动Sink 的带状WSN 数据汇聚方法,移动Sink 以最佳移动速度收集数据,簇头根据与移动Sink 的距离自适应地调整传输范围,从而在不浪费网络能耗的情况下尽可能地提高网络通信质量。 实验结果表明,提出的方法在能耗均衡性、网络寿命以及数据包投递率方面都表现出较好的性能。 下一步工作,将研究多个移动Sink 情况下LEDCM 的性能。1.2 节点能耗模型
1.3 相关定义
2 网络通信能耗分析
2.1 簇内通信能耗
2.2 簇头与移动Sink 通信能耗
2.3 节点平均能耗
3 数据采集方法设计
3.1 移动Sink 的最佳移动速度
3.2 数据采集模型
4 仿真实验
4.1 簇规模与节点能耗关系
4.2 不同簇的节点平均能耗
4.3 网络生存时间
4.4 数据包投递率
5 总结