一种无线传感器执行器网络分簇路由选择方法与流程

文档序号:11148048阅读:580来源:国知局
一种无线传感器执行器网络分簇路由选择方法与制造工艺

本发明涉及一种无线传感器执行器网络分簇路由选择方法,属于无线传感器执行器网络领域。



背景技术:

无线传感器执行器网络(Wireless Sensor and Actor Networks,WSANs)在无线传感器网络(Wireless Sensor Networks,WSNs)的基础上引入若干执行器节点,形成复杂的分布式传感与控制系统。WSANs具有易部署、低成本、低能耗、实时性强、容错性高以及灵活性强等特点,常用于环境监控、智能家居、智慧城市等场景。WSANs最大的特点和优势在于网络中的执行器节点能够作用于物理环境,从而改变物理世界以达到交互的目的。

WSAN中,通常将网络节点划分成若干簇,达到减少无线网络的通信损耗和资源的重复浪费的目的。通常情况下,簇头由各传感器节点轮流充当,若当前的簇头节点不再满足充当簇头的条件时,需要对网络节点重新进行分簇。但是,节点退出或加入导致网络中拓扑结构一直变化,多次分簇过程导致簇头与簇成员多次发生变化,不仅不利于整个网络的稳定性,而且会增加能量的损耗,带来时延,又会影响正常的数据采集。

WSAN网络节点进行数据传输的过程主要包括三个方面:传感器节点至簇头节点、簇头节点至汇聚节点、汇聚节点至执行器节点。其中,汇聚节点将任务分配方案直接发送至执行器节点。由源节点发送至目标节点的过程中,可能以单跳或者多跳的方式进行传递。数据传输过程中,通过节点间的相互协同可增大源节点到目标节点间数据包投递率,提高数据传输的准确性和可靠性。因此,需建立以能耗,时延和数据包投递率为约束条件的路由节点选择机制,整体提高数据传输的性能。节点间数据传输的能耗决定着路由选择的能量成本;时延的大小直接影响着数据传输的实时性;包投递率的大小反映着数据传输的可靠性。本专利将时延与能耗作为路由节点选择的评判指标,同时将数据传输的包投递率作为路由节点选择依据。



技术实现要素:

发明目的:针对现有技术的不足,本发明的目的是提供一种能够实现在WSAN节点间快速传输信息的方法。

技术方案:为实现上述目的,本发明采用如下技术方案:

一种无线传感器执行器网络分簇路由选择方法,包括如下步骤:

(1)基于固定分簇的分簇方式选择簇头节点,簇头节点建簇并邀请节点入簇;

(2)当有信息需要传输时,需要传输信息的源节点基于角度的中继机制选择中间路由节点,形成由源节点至目的节点的至少一条传输路径;

(3)在源节点至目的节点形成多条路径的情况下,根据路径代价为每条路径配置优先级参数初始值,并根据路径的数据包投递率和路径代价,动态更新所有路径的优先级参数值,选出数据包投递率大于阈值且优先级参数值最大的路径为传输路径。

有益效果:本发明提供的无线传感器执行器网络分簇路由选择方法,一方面,基于固定分簇的分簇方式,减少多次成簇造成的时延和网络的不稳定,提高了信息传输的实时性;另一方面,通过基于角度的路由节点选择,减少被选择节点的个数,减少路由节点选择时间;另外,通过基于动态优先级参数的路径选择,减少由于数据包投递率过低造成的数据重传引起的时延,进一步提高了信息传输的实时性和可靠性。

附图说明

为了使本发明的内容更容易被清楚的理解,结合附图对本发明作进一步详细的说明,其中:

图1是本发明的总体流程图;

图2本发明的簇头选择流程图;

图3是本发明的建簇流程图;

图4是本发明的基于角度的节点选择示意图;

图5是本发明的基于动态优先级参数路径选择过程示意图。

具体实施方式

下面结合具体实施例和附图对本发明作进一步说明,但不应以此限制本发明的保护范围。

如图1所示,本发明实施例公开的一种无线传感器执行器网络分簇路由选择方法,主要包括如下步骤:

步骤1:基于固定分簇选择簇头节点;簇头选择流程图如图2所示。

步骤2:簇头节点进行建簇,邀请节点入簇;建簇流程图如图3所示。

步骤3:判断是否有信息需要传输,若有,则转步骤4;反之,则返回步骤3继续判断;

步骤4:需要传输信息的源节点基于角度的中继机制选择中间路由节点,形成由源节点至目的节点的传输路径。在中继区域中可能存在多个中间路由节点,形成多条路径;基于角度的节点选择示意图如图4所示。

步骤5:基于动态优先级参数,为多条路径分配不同的优先级参数值,并根据路径的数据包投递率,时延和能耗,动态更新所有路径的优先级参数,选出数据包投递率大于阈值且优先级参数最大的路径为传输路径。

具体的,基于动态优先级参数路径选择过程如图5所示,主要包括如下步骤:

a)首先为每条路径设置一个优先级参数P,第i条路径的参数Pi的初始值为:

其中,Mj为基于角度的区域中继机制中选择出的第j条路径代价,n为所有路径的个数。根据能耗与时延模型,路径代价Mi作为路径选择的代价指标:Mi=T*E其中,T表示由源节点到目标节点的数据传输过程中的时延,E为数据传输过程中的能耗,i为路径编号,通过能耗与时延来综合评价路径代价。

b)根据路径代价从小到大顺序,依次进行数据传输,并且统计传输过程中数据包投递率γ。根据每条路径优先级参数的大小,将路径的优先级参数Pi作为数据传输中选择对应路径进行数据传输的概率。

c)传输过程统计结束后,对各路径的优先级参数Pi进行更新。增加数据包投递率大于阈值λ(例如90%)的路径的优先级,减小数据包投递率小于阈值λ路径的优先级,从而使数据传输质量高的路径被选择的概率增大,第i条路径优先级更新过程如下式所示:

Pi=Pi+ΔP

其中,ΔP=Pii-λ) (2)

d)当优先级参数更新完毕后,对所有路径的优先级进行归一化,得到:

其中,k为优先级参数增大的节点个数。

e)此后,根据更新后的优先级,选择数据包投递率大于阈值λ且优先级参数最大的路径进行数据的传输。

如图2所示,是本实施例的簇头选择流程示意图,包括:

步骤1:汇聚节点(sink)发出n条建簇消息;

步骤2:判断汇聚节点发出建簇消息的次数是否超过3次,若是,则返回错误报告,无法建簇;反之,则转步骤3;

步骤3:传感器节点(sensor)收到建簇消息后向汇聚节点作出应答;

步骤4:判断簇头选择时间是否超过一定时间T0,若是,则转步骤5;反之,则返回步骤3,等待传感器节点作出应答;

步骤5:统计汇聚节点接收到传感器节点应答消息的个数,并计算二数据传输的数据宝投递率;

步骤6:判断数据包投递率最大的传感器节点的个数是否为一个,若是则转步骤7;反之,则转步骤8;

步骤7:选择数据包投递率最大的传感器节点作为簇头节点(cluster);

步骤8:在数据包投递率最大的多个传感器节点间随机选择一个节点作为簇头节点;

步骤9:判断所有区域是否均选出簇头节点,若是,则结束簇头选举过程;反之。则返回步骤1,汇聚节点重新发送建簇消息。

如图3所示,是本实施例的建簇流程图,包括:

步骤1:簇头节点向其周围的传感器节点发送入簇邀请;

步骤2:判断传感器节点是否在规定时间T1时间内收到入簇邀请,若是,则转步骤3;反之,则转步骤8;

步骤3:传感器节点应答入簇邀请,并反馈至簇头节点;

步骤4:判断传感器节点与簇头节点是否属于同一区域,若是,则转步骤与5;反之,则转步骤7;

步骤5:簇头同意该传感器节点加入自身所在簇,并将传感器节点的信息加入簇成员信息表中,转入步骤6;

步骤6:终止建簇过程,进入工作阶段;

步骤7:簇头节点拒绝该传感器接单加入自身所在簇,转入步骤6;

步骤8:判断簇头节点发送入簇邀请是否超过3次,若是,则转步骤9;反之,则返回步骤1,簇头节点重新发送入簇邀请;

步骤9:簇头节点舍弃未应答的传感器节点,转入步骤6;

如图4所示,是本实施例的基于角度的节点选择示意图,中间节点的选择过程如下:

当源节点需要将信息发送至目标节点,则以源节点P和目标节点为端点,以二者连接线为角平分线,以源节点P的最大传输距离为半径,角度为w的扇形区域为源节点P的中继区域,在区域内选择下一跳节点,避免更多的节点参与中转路由节点的选择过程。以节点P为初始点,在P的中继区域内找到满足条件的节点Q后,以节点Q为新的初始点,重复以上操作,构建节点Q的中继区域并选取下一跳节点,直到信息传递至目标节点。这样,在源节点与目标节点之间便形成一条传输路径s1。中继区域中可能存在多个可选择的节点从而产生多条传输路径,源节点至目标节点间所有路径的集合构成路径集S={s1,s2,…,sn}。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1