LEACH 路由协议最优簇头数计算方法

2013-08-16 01:07郭前岗周德祥周西峰
网络安全与数据管理 2013年3期
关键词:头数能量消耗消耗

郭前岗,周德祥,周西峰

(南京邮电大学 自动化学院,江苏 南京 210046)

无线传感器网络是由大量传感器节点以自组织的方式构成的无线网络,其目的是协作地感知、采集和处理区域中感知对象的信息,并发布给观察者[1]。由于传感器节点的计算、通信能力及能量都十分有限,因此,如何有效地使用能量均衡能量的消耗并延长网络生存时间成为无线传感器网络研究的重点之一[2]。

本文研究了低功耗自适应集群分层型路由协议LEACH。在簇头数选取时,如果簇头数过多,簇头要与远距离的基站通信,其消耗的能量将远远大于其他的成员节点,同时采集到的数据有冗余,浪费了较多的能量。如果簇头数太少,也就失去了LEACH协议分层的意义,同时簇头节点接收的信息量大,会增加簇头的工作量,导致簇头节点能量过快地消耗完而死亡[3]。因此,簇头数量的多少直接影响网络的能量消耗,选择一个合适的簇头数能够使网络的能量消耗平均到每一个节点,延长网络的寿命。

[4]针对最优簇头数的计算进行了研究,但是其只考虑了稳定传输阶段的能量消耗,而没有考虑建立阶段节点的能量消耗,本文在其基础上进行改进。本文方法能够在每轮选择一个合适的簇头数,均衡整个网络的能量消耗,达到延长网络使用时间的目的。

1 LEACH路由协议

LEACH是由MIT的HEINZELMAN等人提出的分簇路由协议,使用循环的簇头轮换技术使得每个传感器节点都能成为簇头,这样整个网络的能量消耗分布相对均衡,从而延长了网络的生存周期[5]。此外,簇头节点能够对簇内节点的信息进行融合。由于数据通信消耗的能量远远大于数据计算所消耗的能量,因此可以有效地节约能量。与一般的平面多跳路由协议和静态分簇协议相比,LEACH协议可以将网络生命周期延长15%[6]。

LEACH协议被分为很多轮,每一轮包括建立阶段和稳定传输阶段,为了减少网络的开销,稳定传输阶段的时间比建立阶段要长。在建立阶段,每个传感器节点产生一个0~1之间的随机数,如果这个数小于阈值T(n),则该节点被选为簇头节点,向其他节点发布自己是簇首的消息。 T(n)[7]的计算公式为:

其中,p是簇头占所有传感器节点的百分比,r是当前的轮数,G为未被当选过簇头节点的集合。在第0轮的时候,每个节点当选为簇头的概率为p,被选为簇头的节点在后面的几轮中将不能再次当选为簇头节点。随着每一轮的进行,剩下可以当选为簇头的节点数量在不断地变小,但是T(n)在不断地变大,且能够保持每轮当选的簇头个数是一样的。经过了若干轮后,T(n)=1,所有未当选为簇头的节点都当选为簇头节点,接下来的一轮,所有节点又可以重新当选为簇头节点。

簇头节点当选后,会发送一个广播包广播自己是簇头的消息,并且所有簇头节点发送广播消息的发射功率都是一样的。这个过程中,其他节点都处于等待接收广播消息的状态,每个节点可能收到不同簇头节点的广播信息,根据接收信号的强弱,向信号最强的簇头结点发送申请加入的消息,簇头节点收到成员节点的加入信息会完成簇的建立。最后,簇头节点会向所属簇的节点发送TDMA时刻表[8],通知每个节点何时向其发送数据。

在稳定传输阶段,传感器节点根据TDMA时刻表所确定的时隙,将信息发送给簇头节点。簇头节点将采集到的信息经过数据融合之后发送给基站。经历一段稳定的传输阶段之后,进入下一轮工作周期,不断循环[9]。

2 节点的能量消耗模型

LEACH路由协议中使用的能量消耗模型是一阶无线通信模式(First Order Radio Model),如图 1所示。

图1 一阶无线通信模式

该模型假设无线传感器网络中所有节点完全相同、能量有限、基站的位置固定,并且离传感器网络中节点较远、无线电信号在各个方向上耗能相同[10]。在这种模式下,每个节点发送1位数据消耗的能量为:

每个节点接收1位数据消耗的能量为:

其中,l为数据发送和接收的比特数;Eelec为发送或接收1比特数据消耗的能量;εmp为多路衰减模型的功率放大系数;εfs为自由空间模型的功率放大系数。当发送距离d≥d0时,采用多路衰减模型,能量消耗与距离的4次方成正比;当d<d0时,采用自由空间模型,能量消耗与距离的 2次方成正比,其中,d0=

3 最优簇头数计算方法

3.1 建立阶段的能量消耗

假设节点总数为 N,随机分布在M×M的区域内,簇头个数为K,则平均每个簇中非簇头成员节点数为N/K-1,簇头建立的过程如图2所示。

图2 簇头建立流程图

簇头节点根据式(1)选定以后,会向非簇头节点广播自己成为簇头的消息,假设广播的距离为d,则消耗的 能 量 为 l×Eelec+l×εmp×d4, 这 里 采 用 多 路 衰 减 模 型 , 能 量消耗与距离的4次方成正比。因为所选取的距离d>d0,所以保证了簇头的广播信息能够覆盖网络中的大部分节点。没有被选为簇头的节点根据收到广播消息的信号的强弱来决定加入哪个簇,簇头会收到节点的加入请求信息。因为平均每个簇中非簇头成员节点为N/K-1个,所以每个簇头消耗的平均能量为 l×Eelec×(N/K-1)。 簇头节点会创建TDMA时刻表并发送给簇成员,簇头到非簇头节点的距离用 dtoch表示, 消耗的 能量 为 l×Eelec+l×εmp×,所以簇建立阶段每个簇头节点消耗的能量为:

而每个非簇头节点接收簇头广播信息消耗的能量为 l×Eelec,向所加入簇的簇头节点发送消息的能量为 l×Eelec+l×εfs×, 接收簇头节点的 TDMA 时刻表消耗的能量为l×Eelec,因此,簇建立阶段每个非簇头节点消耗的能量为:

综上所述,簇建立阶段的总能量为:

3.2 稳定传输阶段的能量消耗

在簇稳定传输阶段,簇头节点接收非簇头节点发送的消息,消耗的能 量为 l×Eelec×(N/K-1),将 簇中所有的频率,而虚拟仪器是通过采集波形数据,然后对数据进行分析,可以得到准确频率。当电子变压器输出频率低于设定范围,会造成灯的闪烁、延时点亮等现象;而输出频率高于设定范围时,产品产生的干扰量值超标。这里用到LabVIEW的提取单频信息VI[5]。当频率测试在限值内,继续进行其他项目测试,否则跳出采集过程,提示产品频率不良。

3.3 输出波形非对称性测试

理想的电子变压器输出波形是上下对称,即波形的峰值等于波形谷值的绝对值。然而由于电子元器件的参数差异,导致输出波形存在非对称。这里用到LabVIEW的幅值和电平VI,测试原理:峰值与谷值相加得到差值,如果差值不小于零,用差值除以峰值,得到的商不大于12.5%,判定为合格,否则判定为不合格。若差值小于零,用差值除以谷值,得到的商不大于12.5%,判定为合格,否则判定为不合格。测试程序如图6所示。

图6 输出波形非对称性测试程序

3.4 短路恢复启动时间测试

短路恢复启动时间,是指短路状态消除到电子变压器可以正常工作的时间。要求产品在规定的时间内完成启动状态转换。采用LabVIEW的For循环检测电子变压器输出电压,并与设定值进行比较。这里设定值为额定输出电压的90%。在规定的循环次数 (对应规定的时间)内达到或超过设定值测试合格,否则测试失败。

3.5 程序发布

将生成的ET TEST独立应用程序及安装程序复制到目标机,运行安装程序,产生Measurement&Automation Explorer、NI-DMM 设备驱动、NI-DAQmx 设备驱动、LabVEIW运行引擎。建立被测产品的数据存放文件夹,用于测试数据的存放。

应用LabVIEW软件技术,可成功完成电子变压器动态性能的测试。本采集系统自动化程度较高,易于操控,通过选择被测产品型号,系统自动匹配负载电阻,自动

猜你喜欢
头数能量消耗消耗
玉钢烧结降低固体燃料消耗实践
太极拳连续“云手”运动强度及其能量消耗探究
中年女性间歇习练太极拳的强度、能量消耗与间歇恢复探究分析
转炉炼钢降低钢铁料消耗的生产实践
降低钢铁料消耗的生产实践
中药复方治疗牛病毒性腹泻的临床效果观察
没别的可吃
Scratch趣味数学之鸡兔同笼
猪场绩效指标“有效母猪饲养头数”的探讨
我们消耗很多能源