APP下载

针对智能家居应用中的LEACH协议改进

2018-09-12王改云胡方舟

现代电子技术 2018年17期
关键词:无线传感器网络智能家居

王改云 胡方舟

摘 要: 针对智能家居应用中的结构特点,在LEACH协议的基础上做出改进,并提出JC?LEACH算法。该算法分区成簇,将网络空间分为几个小区域,根据节点的坐标位置成簇,每个簇群里有且仅有一个簇首;在簇首选举上将节点剩余能量最多的节点设置为新的簇首,防止能量不足的节点成为簇首。有效改善了传统LEACH协议在智能家居应用中簇首分配不均,节点能耗不均的问题。通过Matlab仿真实验可以看出,该算法改善了节点能耗,有效提高了整个网络的生命周期。最终通过在智能家居实验箱上的实验,更进一步说明该算法的可行性与实用性。

关键词: 智能家居; 无线传感器网络; LEACH协议; 分区成簇; 低功耗路由算法; 网络寿命

中图分类号: TN915?34 文献标识码: A 文章编号: 1004?373X(2018)17?0011?04

Abstract: On the basis of LEACH protocol, the structure features of smart house in practical application are improved and the JC?LEACH algorithm is proposed. The algorithm based on subarea cluster divides the network space into several small areas, establishes the cluster according to the nodes coordinate, and makes each cluster have only one cluster head. The node with maximum residual energy is set as the new cluster head for cluster head election to avoid that the node with insufficient energy is selected as the cluster head. The algorithm can efficiently improve the asymmetrical distribution of cluster heads and energy consumption asymmetry of nodes in smart home application of the traditional LEACH protocol. The experiment results of Matlab simulation show that the JC?LEACH algorithm improves the energy consumption of nodes, and prolongs the entire network life effectively. The feasibility and practicability of the algorithm are further illustrated with the experiment of smart home experimental box.

Keywords: smart home; wireless sensor network; LEACH protocol; subarea cluster; low?power consumption routing algorithm; network lifetime

0 引 言

无线传感器网络(WSN)是一种将传感测控技术、通信技术、嵌入式技术有机整合形成的一个新式协同系统[1]。它由大量的传感器节点组成,通常用来检测一个区域的环境参数,并将收集到的数据发送给基站。由于其高超的低功耗数字电路工艺以及实现了无线传输,无线传感器网络常常应用于军事方面、目标跟踪、环境检测等[2]。但由于电池能量有限且不易补充,网络面临着生存时间较短的问题,所以节能成了无线传感网设计的主要目标[3]。

2000年,MIT学者Heinzelman等人提出了LEACH,这是第一个低功耗、自适应分簇路由算法,为后人的研究奠定了基础[4]。LEACH算法中,将整个网络分为几个簇,一个簇里选一个簇首,用来接收簇内其他节点发来的信息并转发给基站。这样可以使更多的节点处于低功耗模式,从而节省能量,提高整个网络的生命周期。但LEACH算法也存在簇首分配不均等问题。

本文提出一种对LEACH的改进算法,根据智能家居的实际应用,将网络分为几个区域,每个区域有且僅有一个簇首,并且簇首的选举考虑节点的剩余能量。改进后的算法无论是从网络拓扑结构还是簇首的选举上都有所提高,延长了网络的生命周期。

1 LEACH算法

1.1 簇的建立

LEACH协议是无线传感器网络中应用较广泛的一种层次路由协议[5],其工作过程分为初始化阶段和稳定阶段两部分。初始化阶段完成簇的建立,稳定阶段完成数据的传输。

1.1.1 初始化阶段

首先根据式(1)产生一个[T(n)];然后每个节点随机产生一个介于(0,1)之间的随机数,并与[T(n)]进行比较,若小于[T(n)]则当选簇首。

式中:[p]为成为簇首的期望百分比;[r]为轮数;[G]为[1p]轮还没有当选簇首的节点集合。

节点成为簇首后,会向网络中广播自己成为簇首的消息,非簇首节点根据收到信号的强弱决定加入的簇,并向该簇的簇首发送加入信息。当簇首收到加入信息后,通过时分多址(TDMA)建立通信时间表,并向簇内广播。此时,初始化阶段完成,进入稳定阶段。

1.1.2 稳定阶段

簇内非簇首节点按照之前分配好的通信时间表,将采集到的数据发给簇首节点,随后进入休眠状态。簇首节点将接收到的数据进行融合后,转发给基站(或者Sink节点)。稳定阶段的时间要远远大于初始化阶段的时间。

1.2 LEACH算法在智能家居方面的不足

对于不同的应用环境而言,LEACH并不是最优的路由协议[5]。在智能家居的实际应用中,LEACH就存在着不足。LEACH算法中,簇首的选举完全是随机的,因此很容易出现簇首分布不均的问题,而在智能家居应用中,传感器节点往往分布在由许多小区域组成的空间里,这样就会造成有的区域里有多个簇首,而有的区域里没有簇首,这将严重影响整个网络的寿命。此外,由于没有考虑到节点剩余能量这个因素,很有可能出现剩余能量低的节点重复當选簇首,因而加速该节点的死亡速度,最终影响网络的寿命。

本文针对这一问题做出改进并提出优化后的JC?LEACH算法。

2 JC?LEACH算法

2.1 提出假设

对于优化后的JC?LEACH算法,提出假设如下:

1) 只有Sink节点能量无限,其余节点同构且初始能量相同。

2) 所有节点一旦生成,位置不能改变。

3) 每个节点都有ID标识,并且是唯一的。

4) 节点可以根据接收到的信号强度计算与其之间的距离,控制发射功率。

2.2 能耗模型

在智能家居的实际应用中,居室被分为几个小房间,如厨房、卧室、客厅和卫生间等。传感器节点分布在各自的区域中独立工作,不受邻域干扰,十分符合LEACH算法的分簇思想。但由于传统LEACH算法的不足,使得整个网络的生命周期较短。

2.3.1 簇群的建立

将整个网络划分为几个小区域,每个区域成为一个簇群。对所有节点(Sink节点除外)进行遍历,根据各个节点的坐标决定加入的簇,并赋予该节点一个簇群编号。

2.3.2 簇首的选举

由于各个节点的初始能量相同,因此将簇首的选举分为两种方法。

1) 首轮选举

每个节点向Sink节点发送一组消息,消息内容为自身ID+该节点与Sink节点之间的距离+簇群编号。Sink节点根据簇群编号将消息分类,并比较出每类消息中距离最短的节点ID,最后向网络广播一组消息,内容为节点ID+簇群编号。各个节点根据广播中的簇群编号有选择地接受广播信息,选择广播消息中ID号对应的节点为簇首,并向簇首发送加入信息。簇首根据加入的节点数建立TDMA时间表,并向簇群内广播,建立通信。

2) 其余轮选举

经过首轮选举,各个节点出现能量差,这时就可以根据剩余能量的大小选择簇首。

每轮的开始,节点向各自的簇首发送一组消息,内容是ID+剩余能量。簇首比较出剩余能量最多的节点,并将该节点的ID号发送给簇群内剩余能量大于0的节点。最终将该节点选为新簇首,其余节点发送加入信息。簇首根据加入的节点数建立TDMA时间表,并向簇群内广播,建立通信。

JC?LEACH算法的改进,首先在于改善网络节点的拓扑结构,将网络空间分为几个小簇群,使之更加符合实际应用场景;然后将节点的剩余能量作为簇首选举的依据,杜绝剩余能量少的节点再次或多次当选簇首的可能性,提高了网络的生命周期。

3 仿真结果与分析

3.1 仿真环境以及模型配置

此次对LEACH算法的改进在Matlab环境下进行,环境模拟的是实际家庭结构。将100 m×100 m的区域划分为6个小区域,在大的区域内随机生成100个节点,Sink节点位于(50,50)的位置。参数表如表1所示。

3.2 仿真波形及分析

通过Matlab对传统LEACH算法以及改进后的JC?LEACH算法进行仿真,节点分布图如图2所示。

由图2a)可以看出,LEACH算法的簇首在6个区域中分布不均匀,有的区域分布着多个簇首,有的区域没有簇首,这样不但会造成簇首资源的浪费,更会缩短整个网络的寿命。而通过图2b)可以看出,JC?LEACH算法的簇首在6个区域中均匀分布,一个区域中只有一个簇首,使得簇首资源充分利用,也有利于网络生命周期的提高。

两种算法仿真结果对比如表2所示。由表2可以看出,JC?LEACH算法将第一个节点的死亡时间延长了20%,而2 000轮后网络中的剩余节点数超过LEACH算法5倍多。可以说,JC?LEACH算法在很大程度上优于传统LEACH算法。

轮数?平均剩余能量关系曲线如图4所示。实线代表JC?LEACH算法,虚线代表LEACH算法。很容易看出,传统LEACH算法下,网络中的节点能量损耗得很快,2 000轮后整个网络的平均剩余能量所剩无几;而在JC?LEACH算法下,网络的平均剩余能量下降得较为缓慢,明显优于传统LEACH算法。

4 结 语

本文在传统LEACH算法的基础上,根据智能家居的实际应用,将节点分布区域划分为多个区域,并对算法进行改进,确保每个小区域中有且仅有一个簇首。这使得簇首分布变得十分均匀,不会出现传统LEACH算法那样的簇首集中分布在一个区域里,而有的区域里没有簇首的情况。另外,簇首的选举完全取决于节点的剩余能量,避免了能量低的节点再次当选簇首,并且使得网络中节点的剩余能量趋于均匀。

通过仿真,证实了JC?LEACH算法在簇首分布以及延長网络生命周期方面都优于传统的LEACH算法,并且这种优势随着轮数的增大而增大。

参考文献

[1] 梁度,刘梦璐,章成驹.一种LEACH的分簇优化策略[J].北京联合大学学报,2017,31(1):75?80.

LIANG Du, LIU Menglu, ZHANG Chengju. A cluster optimization strategy of LEACH [J]. Journal of Beijing Union University, 2017, 31(1): 75?80.

[2] ARUMUGAM G S, PONNUCHAMY T. Development of energy?efficient LEACH protocol for data gathering in WSN [J]. EURASIP journal on wireless communications and networking, 2015(1): 1?9.

[3] 韩广辉,张丽翠.基于LEACH协议的无线传感网能效分簇算法[J].吉林大学学报(信息科学版),2017,35(1):26?31.

HAN Guanghui, ZHANG Licui. Energy efficiency clustering algorithm for wireless sensor network based on LEACH [J]. Journal of Jilin University (information science edition), 2017, 35(1): 26?31.

[4] 王改云,胡锦艳.基于簇的路由协议比较[J].传感器与微系统,2016(4):4?7.

WANG Gaiyun, HU Jinyan. The comparison of routing protocol based on cluster [J]. Sensors and microsystems, 2016(4): 4?7.

[5] 刘云翔,张伟.矿井无线通信网络中LEACH协议的改进[J].现代电子技术,2017,40(9):66?69.

LIU Yunxiang, ZHANG Wei. The improvement of LEACH protocol in mine wireless communication network [J]. Modern electronics technique, 2017, 40(9): 66?69.

[6] 孙文胜,朱为佳,苗红亮.基于最低能耗的改进LEACH分簇算法[J].软件导刊,2017,16(4):44?48.

SUN Wensheng, ZHU Weijia, MIAO Hongliang. An improved LEACH cluster algorithm based on minimum energy consumption [J]. Software guide, 2017, 16(4): 44?48.

[7] 石闪,施伟斌,朱蓓.一种针对无线传感器网络LEACH协议的改进算法[J].电子科技,2017,30(4):95?97.

SHI Shan, SHI Weibin, ZHU Bei. Improved algorithm of LEACH protocol for WSN [J]. Electronic science and technology, 2017, 30(4): 95?97.

[8] 赵旦峰,陈通.基于能量的水声传感器网络分簇算法优化[J].哈尔滨工程大学学报,2017,38(2):282?287.

ZHAO Danfeng, CHEN Tong. The improvement of water acoustic sensor network clustering algorithm based on energy [J]. Journal of Harbin Engineering University, 2017, 38(2): 282?287.

[9] 李建坡,董子奇.基于能量迭代的无线传感器网络非均匀分簇路由算法[J].计算机应用研究,2017(3):824?827.

LI Jianpo, DONG Ziqi. Non?uniform clustering routing algorithm for wireless sensor networks based on energy iteration [J]. Application research of computers, 2017(3): 824?827.

[10] 冯永亮,雷伟军.无线传感器网络LEACH协议的研究与改进[J].信息技术,2016(2):145?148.

FENG Yongliang, LEI Weijun. The research and improvement on LEACH protocol in WSN [J]. Information technology, 2016(2): 145?148.

猜你喜欢

无线传感器网络智能家居
基于PLC的智能家居控制系统研究
智能家居发展或将实现弯道超车
基于无线传感器网络的绿色蔬菜生长环境监控系统设计与实现
基于无线传感器网络的葡萄生长环境测控系统设计与应用
一种改进的基于RSSI最小二乘法和拟牛顿法的WSN节点定位算法
无线传感器网络定位技术可靠性分析
对无线传感器网络MAC层协议优化的研究与设计
无线传感器网络技术综述
关于智能家居真正需求的探讨
智能家居的发展趋势分析