首页 > 专利 > 河海大学 > 一种多链型无线传感器网络的无分层通信方法专利详情

一种多链型无线传感器网络的无分层通信方法   0    0

有效专利 查看PDF
专利申请流程有哪些步骤?
专利申请流程图
申请
申请号:指国家知识产权局受理一件专利申请时给予该专利申请的一个标示号码。唯一性原则。
申请日:提出专利申请之日。
2017-04-14
申请公布
申请公布指发明专利申请经初步审查合格后,自申请日(或优先权日)起18个月期满时的公布或根据申请人的请求提前进行的公布。
申请公布号:专利申请过程中,在尚未取得专利授权之前,国家专利局《专利公报》公开专利时的编号。
申请公布日:申请公开的日期,即在专利公报上予以公开的日期。
2017-09-05
授权
授权指对发明专利申请经实质审查没有发现驳回理由,授予发明专利权;或对实用新型或外观设计专利申请经初步审查没有发现驳回理由,授予实用新型专利权或外观设计专利权。
2020-01-17
预估到期
发明专利权的期限为二十年,实用新型专利权期限为十年,外观设计专利权期限为十五年,均自申请日起计算。专利届满后法律终止保护。
2037-04-14
基本信息
有效性 有效专利 专利类型 发明专利
申请号 CN201710243601.9 申请日 2017-04-14
公开/公告号 CN107040878B 公开/公告日 2020-01-17
授权日 2020-01-17 预估到期日 2037-04-14
申请年 2017年 公开/公告年 2020年
缴费截止日
分类号 H04W4/38H04W28/02H04W28/06H04W56/00 主分类号 H04W4/38
是否联合申请 独立申请 文献类型号 B
独权数量 1 从权数量 7
权利要求数量 8 非专利引证数量 1
引用专利数量 2 被引证专利数量 0
非专利引证 1、Mário Nunes.Interference-Free TDMASlot Allocation in Wireless SensorNetworks《.32nd IEEE Conference on LocalComputer Networks》.2007,严谨.能量有效的无线传感器网络MAC协议. 《计算机工程》.2010,第36卷(第23期),;
引用专利 US2008159457A1、CN104038991A 被引证专利
专利权维持 5 专利申请国编码 CN
专利事件 事务标签 公开、实质审查、授权
申请人信息
申请人 第一申请人
专利权人 河海大学 当前专利权人 河海大学
发明人 严锡君、刁宏志、于凡、潘晓陈、赵姗姗、范媛媛、朱亚东 第一发明人 严锡君
地址 江苏省南京市江宁区佛城西路8号 邮编 211100
申请人数量 1 发明人数量 7
申请人所在省 江苏省 申请人所在市 江苏省南京市
代理人信息
代理机构
专利代理机构是经省专利管理局审核,国家知识产权局批准设立,可以接受委托人的委托,在委托权限范围内以委托人的名义办理专利申请或其他专利事务的服务机构。
南京经纬专利商标代理有限公司 代理人
专利代理师是代理他人进行专利申请和办理其他专利事务,取得一定资格的人。
葛潇敏
摘要
本发明公开了一种多链型无线传感器网络的无分层通信方法,所述多链型无线传感器网络采用星‑链式拓扑结构,汇聚节点位于监测区域的中心,每条链上的传感器节点通过多跳方式向汇聚节点传输信息,将通信协议分为时间同步模块、数据融合模块、功率控制模块和介质访问控制模块,通信过程依次为,全网初始化、汇聚节点对全网进行时间同步以及传感器节点均同步进行周期性侦听和睡眠。本发明克服了传统分层通信方法存在的缺陷,改善和优化了无线传感网络的性能。
  • 摘要附图
    一种多链型无线传感器网络的无分层通信方法
  • 说明书附图:图1
    一种多链型无线传感器网络的无分层通信方法
  • 说明书附图:图2
    一种多链型无线传感器网络的无分层通信方法
  • 说明书附图:图3
    一种多链型无线传感器网络的无分层通信方法
  • 说明书附图:图4
    一种多链型无线传感器网络的无分层通信方法
  • 说明书附图:图5
    一种多链型无线传感器网络的无分层通信方法
  • 说明书附图:图6
    一种多链型无线传感器网络的无分层通信方法
  • 说明书附图:图7
    一种多链型无线传感器网络的无分层通信方法
  • 说明书附图:图8
    一种多链型无线传感器网络的无分层通信方法
  • 说明书附图:图9
    一种多链型无线传感器网络的无分层通信方法
  • 说明书附图:图10
    一种多链型无线传感器网络的无分层通信方法
  • 说明书附图:图11
    一种多链型无线传感器网络的无分层通信方法
  • 说明书附图:图12
    一种多链型无线传感器网络的无分层通信方法
  • 说明书附图:图13
    一种多链型无线传感器网络的无分层通信方法
  • 说明书附图:图14
    一种多链型无线传感器网络的无分层通信方法
  • 说明书附图:图15
    一种多链型无线传感器网络的无分层通信方法
  • 说明书附图:图16
    一种多链型无线传感器网络的无分层通信方法
  • 说明书附图:图17
    一种多链型无线传感器网络的无分层通信方法
  • 说明书附图:图18
    一种多链型无线传感器网络的无分层通信方法
  • 说明书附图:图19
    一种多链型无线传感器网络的无分层通信方法
  • 说明书附图:图20
    一种多链型无线传感器网络的无分层通信方法
  • 说明书附图:图21
    一种多链型无线传感器网络的无分层通信方法
  • 说明书附图:图22
    一种多链型无线传感器网络的无分层通信方法
  • 说明书附图:图23
    一种多链型无线传感器网络的无分层通信方法
  • 说明书附图:图24
    一种多链型无线传感器网络的无分层通信方法
  • 说明书附图:图25
    一种多链型无线传感器网络的无分层通信方法
  • 说明书附图:图26
    一种多链型无线传感器网络的无分层通信方法
  • 说明书附图:图27
    一种多链型无线传感器网络的无分层通信方法
法律状态
序号 法律状态公告日 法律状态 法律状态信息
1 2020-01-17 授权
2 2017-09-05 实质审查的生效 IPC(主分类): H04W 4/00 专利申请号: 201710243601.9 申请日: 2017.04.14
3 2017-08-11 公开
权利要求
权利要求书是申请文件最核心的部分,是申请人向国家申请保护他的发明创造及划定保护范围的文件。
1.一种多链型无线传感器网络的无分层通信方法,其特征在于,所述多链型无线传感器网络采用星-链式拓扑结构,汇聚节点位于监测区域的中心,每条链上的传感器节点通过多跳方式向汇聚节点传输信息,通信过程如下:
(1)对整个网络进行初始化,包括初始化传感器节点的功率控制表、流量速率以及一个睡眠周期的时长;
(2)汇聚节点对全网进行时间同步,保证每条链上的传感器节点时间是一致的,相互之间能够进行数据传输;
(3)时间同步之后,各传感器节点均同步进行周期性侦听和睡眠,在侦听阶段,汇聚节点开始发送分配时隙请求,传感器接收到请求后开始动态时隙部署,在睡眠阶段,传感器节点根据部署好的时隙在规定的时间内醒来进行数据传输;
当某条链路上的节点出现传输错误时,重新建立新路由:
设某条链路上的节点n1在向下一跳节点n2进行数据传输时,发现链路中断,此时节点n1处于侦听阶段,并发送一个RTS消息帧听两条邻链的信道是否空闲,若两条邻链空闲,则节点n1会向两条邻链上与节点n2处于同一时隙的两个节点a2和b2持续发送路由请求,在接到路由请求后,节点a2和b2首先会判断自己的剩余能量,如果剩余能量低于一个特定的值将忽略此次请求,如果两条相邻的链路的剩余能量都满足条件,则向节点n1发送一个确认帧,那么节点n1根据收到的确认帧的先后来确定新路由,节点n1加入新路由,汇聚节点对新路由所在链路进行时隙重分配。

2.根据权利要求1所述多链型无线传感器网络的无分层通信方法,其特征在于,采用粗粒度方式进行时间同步;由汇聚节点广播包含编号的一系列信标帧,以保证网内所有传感器节点至少接收到一个信标帧,各传感器节点根据信标帧的编号计算唤醒时间,达到时间同步的目的。

3.根据权利要求1所述多链型无线传感器网络的无分层通信方法,其特征在于,每个传感器节点均建立和维护一个功率控制表,用于存放本节点与其相关的传感器节点之间的最优功率值,根据具体通信需要从功率控制表中取出相应的功率值,并在链路发生变化时,对功率控制表进行相应更新;任意两跳传感器节点之间的最优功率值的计算公式如下:
上式中,Plimit为接收节点的功率门限值,Pt为节点发射功率,Pr为节点接收功率,Gt为节点发射增益,Gr为节点接收增益,λ为监测区域内节点的平均密度,d为发射节点和接收节点之间的距离,β为损耗系数。

4.根据权利要求1所述多链型无线传感器网络的无分层通信方法,其特征在于,所述分配时隙请求为RTA0请求,RTA0请求包括链编号、应答节点ID和时隙ID;应答节点是每条链路上距离汇聚节点最远的一跳节点,每条链路上的应答节点根据链编号获取相应的时隙ID。

5.根据权利要求4所述多链型无线传感器网络的无分层通信方法,其特征在于,所述动态时隙部署的过程如下:
(a)汇聚节点广播RTA0请求;
(b)每条链路上的应答节点n1收到RTA0请求后,取出时隙ID,并在随机退避一段时间后向下一跳传感器节点n2发送CTA0请求,CTA0请求包括数据发送时间、时隙ID、数据发送标志位和节点ID;
(c)节点n2收到CTA0请求后,首先根据数据发送标志位计算时隙长度,并根据数据发送时间部署数据接收时隙和下一跳的数据上传时隙,若节点n1和n2均无数据发送,则不进行时隙部署,直到汇聚节点收到来自某条链路的CTA0请求,表示该条链路时隙部署完成;
(d)每个传感器节点在收到上一跳节点发送的CTA0请求后,会向上一跳节点返回一个确认信息。

6.根据权利要求1所述多链型无线传感器网络的无分层通信方法,其特征在于,在数据传输过程中引入临时休眠机制,过程如下:
(A)每个传感器节点设有一个计数器,初始值为一个大于0的整数;
(B)若某传感器节点在接收时隙内没有收到来自上一跳节点的数据,则该节点的计数器减1;
(C)若节点n1的计数器为0,则进入省电模式,即在下一个接收时隙到来的时候,该节点n1只在接收时隙的开始阶段侦听一个时间t,t的时长要大于接收一个WAKEUP报文的时间,若没有数据接收,则立即进入睡眠模式,节省能耗;
(D)当链路恢复正常,节点n1的上一条节点首先向节点n1发送一个WAKEUP消息,防止节点n1处于省电模式,WAEKUP消息仅包含下一节点ID和链编号,节点n1在时间t内接收到了这个WAKEUP消息,计数器恢复初始值,并在自己的接收时隙内正常接收数据。

7.根据权利要求1所述多链型无线传感器网络的无分层通信方法,其特征在于,在数据传输过程中引入拥塞控制机制,包括阻止传感器节点参与通信来控制拥塞以及控制节点生成数据包的速率来控制拥塞;当传感器节点满足下式才能参与通信:
上式中,pi为节点i传输数据包的错误率,λi,Relay为节点i传输数据包的源速率,λi,Src为节点i传输数据包的延时速率,Tpacket为节点i传输数据包到下一跳节点的平均持续时间;
当检测到拥塞时,数据包的生成速率如下式计算:
上式中,λ(t+Δt)为当前时刻的数据包生成速率,λ(t)为上一时刻的数据包生成速率,Δt为时间间隔,v、α为速率控制因子,v>1,α>0。

8.根据权利要求1所述多链型无线传感器网络的无分层通信方法,其特征在于,为了避免最后一跳数据传输在汇聚节点处发生碰撞,出现丢包,因此在时隙分配时保证各条链路的第一跳的时隙不同。
说明书

技术领域

[0001] 本发明属于无线传感器网络技术领域,特别涉及了一种多链型无线传感器网络的无分层通信方法。

背景技术

[0002] 随着无线传感器网络的技术发展和应用,其在工程中的应用越来越广泛,线型无线传感器网络和星型无线传感器网络作为常见的网络拓扑结构,具有广泛的应用前景和发展空间。但是单独的线型无线传感器网络和星型无线传感器网络的拓扑结构在工程应用中的范围都比较小,因此,目前更趋向于研究结合两种拓扑结构的特点的多链式的混合拓扑结构。另外,对于无线传感器网络本身的研究热点主要集中在3个方面的关键技术上:网络通信协议、网络管理技术、网络支撑技术,主要体现在:MAC协议、路由协议、节能降耗以及节点定位四个方面。由于无线传感器网络节点由电池供电,节点的生命周期决定了网络的生命周期,因而从节能降耗的角度设计传感器网络成为当今研究热点。
[0003] 影响无线传感器网络生命周期的一个重要因素是网络协议。目前广泛使用的网络协议有zigbee、182.15.4等基于层次结构的网络协议,但是,由于无线信道的动态变化特性、无线介质的不可靠性、广播特性、WSN的能量、存储能力、通信能力、计算能力资源受限等特点,使得此类网络协议不能良好的应用于多链型无线传感器网络。因此,需要研究一种适用于多链型无线传感器网络的网络协议,从而更好的实现网络资源分配,延长网络生命周期并提高网络可靠性。
[0004] 为了解决上述分层协议带来的问题,无分层协议应运而生。目前基于无分层设计方法的无线传感器网络协议并不是很多,多数对无分层协议的研究仅仅是提出一个理论框架,并没有应用到实际的应用场景中,已提出的几个无分层协议也不适用于工业应用中的多链型传感器网络。

发明内容

[0005] 为了解决上述背景技术提出的技术问题,本发明旨在提供一种多链型无线传感器网络的无分层通信方法,克服传统分层通信方法存在的缺陷,改善和优化无线传感网络的性能。
[0006] 为了实现上述技术目的,本发明的技术方案为:
[0007] 一种多链型无线传感器网络的无分层通信方法,所述多链型无线传感器网络采用星-链式拓扑结构,汇聚节点位于监测区域的中心,每条链上的传感器节点通过多跳方式向汇聚节点传输信息,通信过程如下:
[0008] (1)对整个网络进行初始化,包括初始化传感器节点的功率控制表、流量速率以及一个睡眠周期的时长;
[0009] (2)汇聚节点对全网进行时间同步,保证每条链上的传感器节点时间是一致的,相互之间能够进行数据传输;
[0010] (3)时间同步之后,各传感器节点均同步进行周期性侦听和睡眠,在侦听阶段,汇聚节点开始发送分配时隙请求,传感器接收到请求后开始动态时隙部署,在睡眠阶段,传感器节点根据部署好的时隙在规定的时间内醒来进行数据传输。
[0011] 进一步地,采用粗粒度方式进行时间同步;由汇聚节点广播包含编号的一系列信标帧,以保证网内所有传感器节点至少接收到一个信标帧,各传感器节点根据信标帧的编号计算唤醒时间,达到时间同步的目的。
[0012] 进一步地,每个传感器节点均建立和维护一个功率控制表,用于存放本节点与其相关的传感器节点之间的最优功率值,根据具体通信需要从功率控制表中取出相应的功率值,并在链路发生变化时,对功率控制表进行相应更新;任意两跳传感器节点之间的最优功率值的计算公式如下:
[0013]
[0014] 上式中,Plimit为接收节点的功率门限值,Pt为节点发射功率,Pr为节点接收功率,Gt为节点发射增益,Gr为节点接收增益,λ为监测区域内节点的平均密度,d为发射节点和接收节点之间的距离,β为损耗系数。
[0015] 进一步地,所述分配时隙请求为RTA0请求,RTA0请求包括链编号、应答节点ID和时隙ID;应答节点是每条链路上距离汇聚节点最远的一跳节点,每条链路上的应答节点根据链编号获取相应的时隙ID。
[0016] 进一步地,所述动态时隙部署的过程如下:
[0017] (a)汇聚节点广播RTA0请求;
[0018] (b)每条链路上的应答节点n1收到RTA0请求后,取出时隙ID,并在随机退避一段时间后向下一跳传感器节点n2发送CTA0请求,CTA0请求包括数据发送时间、时隙ID、数据发送标志位和节点ID;
[0019] (c)节点n2收到CTA0请求后,首先根据数据发送标志位计算时隙长度,并根据数据发送时间部署数据接收时隙和下一跳的数据上传时隙,若节点n1和 n2均无数据发送,则不进行时隙部署,直到汇聚节点收到来自某条链路的CTA0请求,表示该条链路时隙部署完成;
[0020] (d)每个传感器节点在收到上一跳节点发送的CTA0请求后,会向上一跳节点返回一个确认信息。
[0021] 进一步地,当某条链路上的节点出现传输错误时,重新建立新路由:
[0022] 设某条链路上的节点n1在向下一跳节点n2进行数据传输时,发现链路中断,此时节点n1处于侦听阶段,并发送一个RTS消息帧听两条邻链的信道是否空闲,若两条邻链空闲,则节点n1会向两条邻链上与节点n2处于同一时隙的两个节点a2和b2持续发送路由请求,在接到路由请求后,节点a2和b2首先会判断自己的剩余能量,如果剩余能量低于一个特定的值将忽略此次请求,如果两条相邻的链路的剩余能量都满足条件,则向节点n1发送一个确认帧,那么节点n1根据收到的确认帧的先后来确定新路由,节点n1加入新路由,汇聚节点对新路由所在链路进行时隙重分配。
[0023] 进一步地,在数据传输过程中引入临时休眠机制,过程如下:
[0024] (A)每个传感器节点设有一个计数器,初始值为一个大于0的整数;
[0025] (B)若某传感器节点在接收时隙内没有收到来自上一跳节点的数据,则该节点的计数器减1;
[0026] (C)若节点n1的计数器为0,则进入省电模式,即在下一个接收时隙到来的时候,该节点n1只在接收时隙的开始阶段侦听一个时间t,t的时长要大于接收一个WAKEUP报文的时间,若没有数据接收,则立即进入睡眠模式,节省能耗;
[0027] (D)当链路恢复正常,节点n1的上一条节点首先向节点n1发送一个 WAKEUP消息,防止节点n1处于省电模式,WAEKUP消息仅包含下一节点ID 和链编号,节点n1在时间t内接收到了这个WAKEUP消息,计数器恢复初始值,并在自己的接收时隙内正常接收数据。
[0028] 进一步地,在数据传输过程中引入拥塞控制机制,包括阻止传感器节点参与通信来控制拥塞以及控制节点生成数据包的速率来控制拥塞;当传感器节点满足下式才能参与通信:
[0029]
[0030] 上式中,pi为节点i传输数据包的错误率,λi,Relay为节点i传输数据包的源速率,λi,Src为节点i传输数据包的延时速率,Tpacket为节点i传输数据包到下一跳节点的平均持续时间;
[0031] 当检测到拥塞时,数据包的生成速率如下式计算:
[0032]
[0033] 上式中,λ(t+Δt)为当前时刻的数据包生成速率,λ(t)为上一时刻的数据包生成速率,Δt为时间间隔,v、α为速率控制因子,v>1,α>0。
[0034] 进一步地,为了避免最后一跳数据传输在汇聚节点处发生碰撞,出现丢包,因此在时隙分配时保证各条链路的第一跳的时隙不同。
[0035] 采用上述技术方案带来的有益效果:
[0036] 本发明采用无分层通信方法,将协议划分成时间同步模块、数据融合模块、功率控制模块、介质访问控制模块等功能模块,完全打破了传统的层次模型,实现协议栈向功能模块的转变,使其更加适用于传感器网络,解决了链间干扰、数据时延、网络能耗等问题。

实施方案

[0064] 以下将结合附图,对本发明的技术方案进行详细说明。
[0065] 如图1所示本发明的通信网络结构图,汇聚节点位于整个监测区域中心,以汇聚节点为中心形成多链式的拓扑结构覆盖整个监测区域,每条链上传感器节点通过多跳方式向汇聚节点传输信息。汇聚节点进行全网周期性时间同步,传感器节点进行周期性侦听及睡眠。
[0066] 如图2所示本发明的通信协议结构图,整个系统被分为若干个模块,每个功能模块有一个头信息,用于存储模块间需要共享的一些信息,包括功率,距离,节点状态,剩余能量等信息,所有的这些信息均被封装在一个数据包内,各个模块均可对这些包头信息进行任意的访问,模块和模块之间实现了信息共享,打破了传统的层的概念,实现了无线传感器网络无分层的设计。
[0067] 汇聚节点进行周期性时间同步:本发明通过动态调整同步周期的长度来解决时间漂移的问题。同步周期长度的选取充分考虑传输延时的抖动,通过考虑本次数据传输与上一次传输之间的时延差,最终通过一段时间内的平均时延和一个初始化的比例因子K计算本次同步周期的补充值ΔT,K的值与具体的硬件环境有关。即如果上次同步周期内时钟偏移量较小,则将本此同步周期长度按比例增加,ΔT增加;如果上次同步周期内时钟偏移量较大,则将本此同步周期长度按比例缩短,ΔT减少;如果本此同步消息没有收到应答,则按照前面M次同步周期的平均值进行时间同步。假设前两次同步周期间隔为T,那么下一次同步时长为 通过合理的周期性同步可以将时钟漂移带来的影响控制在可忽略的范围之内。
[0068] 传感器节点进行周期性侦听及睡眠:时间同步后,传感器节点进入周期性侦听及睡眠周期。侦听阶段,节点进行相关的时隙部署,睡眠阶段,节点在自己的时隙内醒来接收或发送数据。
[0069] 以上通信过程中还融入了其他相关机制:粗粒度的时间同步,可调功率控制,多链时隙部署,动态时隙大小,链路中断后时隙移动机制,临时休眠机制,占空比机制,拥塞控制和数据融合。
[0070] 1、粗粒度的时间同步
[0071] 汇聚节点在进行时间同步时采用的是粗粒度的时间同步方式。如图3所示本发明的时间同步时序图,汇聚节点广播信标帧,传感器节点根据接收到的信标帧的时刻进行相应的时间调整,最终达到时间同步。假设每个传感器节点内部时钟为T′,即传感器节点每隔T′时间周期性的醒来接收信标帧,整个同步周期为Tsyc,假设某个传感器节点在第一次醒来接收到信标帧的时间为周期T′内的t1时刻,如果传感器节点第二次醒来在t1时刻没有收到信标帧,则在下次周期T′内接收信标帧的时间为t+Δt,Δt表示随机延时的一时间间隔,如果传感器节点第二次醒来在时间t1正常接收到信标帧,则在下次周期T′内接收信标帧的时间为仍为t。网内的传感器节点通过周期性的醒来接收信标帧进行若干次的时间调整,最终达到时间同步的状态。
[0072] 当N个信标帧广播结束后,关闭传感器节点的内部时钟,所有的传感器节点进入休眠状态,在时间t后同时醒来,进入侦听阶段。
[0073] 2、可调功率控制
[0074] 本发明中采用图1所示的多链式的通信网络结构图,因此通过严格的功率控制避免链间干扰,节省能耗,提高网络可靠性。
[0075] 本发明中主要有以下三种情况要进行链路控制:
[0076] (1)在通信链路正常的情况下,每个节点需要根据节点间距初始化自身的发送功率P0,P0刚好能够覆盖所在链路上上一跳传感器节点和下一跳传感器节点;
[0077] (2)当某一条通信链路出现异常,如本发明中图4所示,链路lMO中节点B 出现异常,此时节点B首先需要增大自身功率尝试向节点H发送数据;
[0078] (3)如果此时B距离sink节点较远,节点间距较大,即H节点不在B的功率控制表中,节点B向邻链节点发起路由请求,如本发明中图4所示,B向E 节点发起新的路径请求,此时需要调节B的功率,使得B和E之间能够进行通信。
[0079] 每个传感器节点需要建立和维护一个功率控制表,用于存放节点与其相关的传感器节点的最优的功率值,根据具体通信需要从传感器节点的功率控制表中取相应的功率值。通过合理的功率控制,不但可以避免链与链之间的干扰,还可以避免由于功率过大而引起的额外的能耗的浪费。在有新节点加入等链路发生变化的情况,功率表要相应更新。任意两跳传感器节点之间的最优的功率值计算如下:
[0080] 首先,传感器节点在数据通信过程中接收端功率的计算公式如下:
[0081]
[0082] 其中,λ表示监测区域内节点的平均密度,β为损耗系数,d为发送节点和接受节点之间的距离,Gt为发射天线增益,Gr为接收天线增益,Pt为天线的发送功率。假设Plimit为接收节点的门限值,Pmin为发送节点的最小的发射功率,则有:
[0083]
[0084] 由(1.1)和(1.2)可得发送端的功率如下:
[0085]
[0086] 3、多链时隙部署
[0087] 本发明基于TDMA的时隙分配方式,通过TDMA时隙部署节点周期性的醒来进行数据的发送和接收。通过合理的时隙分配,避免了数据碰撞,保证数据的正确传输,本发明的TDMA的帧时隙结构如图5。
[0088] 一个TDMA帧被分为若干时隙,时隙0在本发明中是一个特定的竞争访问时隙,主要用于时隙分配,其他的若干时隙被动态的分配给传感器节点用于数据传输。每条链上的第一跳节点(即离汇聚节点最远的一跳节点)都需要维护一个时隙表,给每个时隙一个标志位flag,一开始初始化所有的时隙,使得flag=0,如果一个时隙被分配到某个节点中,就所有节点的时隙分配表中该时隙的flag置1。
[0089] 具体的时隙分配算法如下:
[0090] (1)假设整个监测区域有L条链,sink节点在时隙TS0广播L个RTA0(Request To Assign)消息给每条链上的第一跳节点,开始时隙分配。RTA0消息应包括链编号\源地址,应答节点id以及要分配的时隙TSi;应答节点只接受链编号相同的RTA0消息,如果链编号相同,则接受该消息,如果不同,则丢弃该消息。如图6所示本发明的多链时隙分配图,为了避免冲突,每条链上第一个节点的数据发送时隙均不能相同,图中n1n表示第一条链上第一跳节点,TS-L表示一个TDMA 周期,TSi表示第i个时隙,图6中通过给每条链的第一跳节点分配不同的时隙从而使得每条链上最后一跳数据传输时隙不同,避免了sink节点处的数据冲突, 整个数据传输过程中需要的时隙数为(L+n)个。
[0091] (2)第一跳传感器节点在收到RTA0消息后,首先根据时隙表中的flag位来检查TSi是否为空闲:
[0092] a.如果flag=0,则说明时隙TSi没有被占用,传感器节点i会主动发送一个CTA0(Clear to Assign)消息给sink节点;sink节点收到CTA0则将时隙TSi分配给节点i,并且将该时隙的flag置1,CTA0消息中包含链编号,源地址,目的地址,时隙ID,数据发送标志位;
[0093] b.如果时隙表中TSi的flag=1,那么传感器节点不会对sink节点进行应答,当超过一定的时间sink节点仍然没有收到某条链上的应答消息,则再次对其进行时隙分配;
[0094] (3)每条链上的第一跳节点不会同时给sink节点回复CTA0消息,此时应用随机退避机制,即只有一个节点会立即回复一个CTA0给sink,其他节点会退避不同的随机时间后发送CTA0应答消息,避免了冲突。具体如下:假设整个网络一共有l条链,每条链的第一跳节点同时收到RTA0消息,第一条链的第一跳节点n11缓冲时间Δt后向sink节点应答,第二条链的第一跳节点n21则退避(Δt+t)时间后向sink节点应答sink节点收到CTA0,第i条链的第一跳节点ni1则退避 (Δt+(i-1)t)时间后向sink节点应答,这里的时间t是接收一个CTA0消息的时长,由于CTA0消息比较小,因此t很小。CTA0消息的具体发送过程如下:
[0095] a.CTA0消息在上传的过程可以对其所在链上的其他节点进行时隙分配。 CTA0消息是通过多跳的方式上传到汇聚节点。第一跳节点转发CTA0消息给下一跳节点,节点可以根据接收到的上一跳节点的时隙id确定自己的时隙id,并且可以根据收到的CTA0消息的发送时间以及下一跳节点接收到CTA0消息所需时间计算和部署数据接收时隙和下一跳的数据上传时隙。下一跳节点在收到CTA0消息后,回复一个确认消息CTA给上一跳节点;
[0096] b.在时隙部署的过程中,CTA0消息中还增加了1bit数据发送标志位,用来标志发送该请求消息的源节点是否有数据需要发送。假设节点i向节点j发送CTA0请求消息,如果节点i有数据要发送,则将该位置1,如果没有数据发送,则将该位置0,当节点i的时隙到来时,如果该位为0,节点i在当前时隙将继续休眠。节点j收到来自节点i的CTA0消息,如果该消息数据发送标志位为1,则按照前文所描述的方法进行时隙部署;如果标志位为0,并且节点j也没有数据发送,则不对节点j进行时隙部署,继续向下一跳节点发送CTA0消息,在节点j的时隙到来时节点j继续休眠;如果标志位为0,但是节点j有数据发送,则将节点j的CTA0消息中的数据标志位置1,发送到下一跳节点,并对节点j进行相应的时隙部署,后面的节点以此类推。
[0097] (4)如果sink节点收到来自链i上的CTA0消息,则说明链i完成时隙部署。如果没有收到,将会重新分配一个时隙给节点i,i的时隙分配将会在下一个TDMA帧的TS0进行。
[0098] (5)若超过一定时间没有收到CTA0消息,则根据随机退避算法,随机退避一定时间后重发CTA0消息,如果此时TS0已结束,则在下一个周期的TS0进行。
[0099] (6)最终汇聚节点收到来自该链的CTA0消息,则表示该条链上的时隙部署完成。本发明中每条链上的时隙部署过程如图7所示。
[0100] 4、动态时隙大小
[0101] 本发明中采用了TDMA动态时隙分配方法,每个时隙的大小根据需要发送的数据量动态的变化,通过动态时隙分配,可以减少时延和不必要的能耗的浪费。假设每个节点产生的数据量为Rij,节点发送一次数据的时间为tdata。
[0102] 如图6所示,节点n1,n在时隙TS1内如果有数据发送,那么协议中t11的大小应为t11>tdata+t0,其中t11表示第一条链第一个节点所在时隙的长度,t0是一个预留时间,用于链路中断发送请求或者接收其他数据帧等等,n1,n-1在收到上一节点的CTA0消息时首先根据数据发送标志位判断上一节点是否有数据发送,如果上一节点有数据发送,则节点n1,n-1处的数据量为R11+R12,即时隙 TS2的大小t12的大小应为t12>2tdata+t0;如果上一跳节点没有数据发送,则TS2的大小t12的大小应为t12<2tdata+t0。假设每一跳节点均有数据发送,那么第一条链上第i个节点所在时隙TSi的大小t1i应为t1i>i*tdata+t0。同理,第二条链在进行时隙部署时根据节点是否有数据发送最终确定时隙i的长度为t2i,第i条链在进行时隙部署时根据节点是否有数据发送最终确定时隙i的长度为tii,最终时隙 i的大小为:
[0103]
[0104] 5、链路中断后时隙移动机制
[0105] 本发明的通信网络结构基于链式,因此在数据传输的过程中,如果某一个中间节点出现传输错误,那么整条链路的传输将会中断。为了提高传输的可靠性,本发明提出SSM(schedule shift mechanism)机制,用来应对链路传输中的数据传输错误。
[0106] SSM机制主要思想是通过时隙的移动重新建立新的路由,保证数据包的可靠传输,具体如图8所示。链路i上的节点n13在向下一跳节点进行数据传输时,发现链路中断,数据包没有转发成功,此时节点ni3会向两条相邻链上的节点nj3和 nk1持续发送路由请求,在发送路由请求之前,节点ni3首先会处于侦听阶段,并发送一个RTS消息侦听邻链的信道是否处于忙碌,如果信道均被占用,则说明邻链正在发送或者接收数据,如果检测到两边信道都处于空闲状态,则节点ni3会立即向nj3和nk1发送新的路由请求request,如果nj3和nk1同收到该请求,首先会判断自己的剩余能量,如果剩余能量低于一个特定的值将忽略此次请求,如果两条相邻的链路都满足条件,并向原节点发送一个确认帧,那么节点ni3根据收到的确认帧的先后来确定最后的路由。如图8中,节点ni3先收到了邻链j的确认帧,最终加入到邻链j中进行数据传输,sink节点对链路j进行时隙重分配过程。sink 节点广播1bit的控制信息,随后再广播时隙分配通知,节点nj3之前的节点向前移动一个时隙,从而预留出一个空余时隙,链上各节点收到通知后,按照新的时隙,将来自链j的数据包和来自节点ni3的数据包进行融合,并进行数据转发。
[0107] 最终,整个链路恢复正常。当然,太多的时隙移动会造成额外的能量消耗,因此,本发明还限制了移动的时隙单元的数量。如果移动的次数超过这个上限,那么该过程则被取消。
[0108] 6、临时休眠机制
[0109] 本发明中提出的临时休眠机制是为了进一步减少不必要的能耗的浪费。
[0110] 在数据传输过程中,当某个时刻节点醒来,上一节点没有数据要发送,会存在能量浪费,这种情况通常发生在某条链路中断后,节点已经申请了新的路径,但是该条链上后面的节点在属于他们的时隙依旧醒来接收数据,本文对此进行了考虑:
[0111] (1)每个节点有一个计数器,初始值为一个大于0的整数;
[0112] (2)若节点在接收时隙内没有收到来自上一跳节点的数据包,相应的计数器值减1;否则,计数器保持初始值不变;
[0113] (3)若节点的计数器为0,则进入PS(Power Saving,省电)模式,即在下一个接收时隙到来的时候,节点只在接受时隙的开始阶段侦听一个很短的时间 t,t的时长要大于接收一个WAKEUP报文的时间,若没有数据接收,则立即进入睡眠模式,节省能耗;
[0114] (4)若某时刻链路回复正常,节点首先下一节点发送一个WAKEUP消息,防止下一节点处于PS模式,无法正常接收数据,WAEKUP消息很小,仅包含下一结点ID,链编号。节点在时间t内接收到了这个WAKEUP消息,计数器恢复初始值,并在自己的接收时槽内保持活跃状态,开始接收数据。
[0115] 本发明在整个协议中采用了占空比机制,即节点周期性的侦听和睡眠。节点侦听的时长对整个网络性能影响很大,如果侦听时长过长,整个网络时延减少,但会导致能耗增大;反之,侦听时间过短,可能会导致数据传输时延较大,网络拥塞变大。因此本发明对占空比的大小δ进行分析。
[0116] 由前文分析可知,侦听阶段主要进行时隙分配,即Tl的长度必须能保证时隙分配过程能够完成,然后节点才能进入sleep状态。时隙分配过程中的数据传输主要包括RTA0消息,CTA0消息,CTA消息,假设传输这三种消息的平均时间分别为 tCTA,则TL的可以表示如下:
[0117]
[0118] 其中,l为整个网络中的链的条数,TS-L表示一个完整的帧听周期,TL表示传感器节点醒来的时长,n为一条链上节点的个数,tH为缓冲时长。因此在设定δ时,必须保证δ*TS-L≥TL,由于TS=tACK+tdata×(n+l),而CTA0消息长度约为数据包长度的1/6到1/5左右,因此δ的值一般在0.1到0.3之间。
[0119] 8、拥塞控制
[0120] 在传统的跨层协议中,一般由传输层进行拥塞控制。但是,由于层与层之间的接口问题,传输层无法充分获取其他层的信息,比如时隙,队列等等,从而导致无法进行很好的拥塞控制。而在本发明中,使用了无层协议的思想,在进行拥塞控制时可以共享其他模块的信息,因此能更好的进行拥塞控制。
[0121] 本发明从两个角度对拥塞控制进行考虑:
[0122] 第一,如果当前的负载较高,路由任务通过阻止传感器节点参与通信来控制拥塞;第二,通过限定源节点上生成数据包的传输速率。
[0123] 对于任何一个节点i,其输入输出包的速率可以用如下公式表示:
[0124] λi,In=λi,Src+λi,Relay  (1.6)
[0125] λi,Out=(1+pi)λi,In  (1.7)
[0126] 其中pi代表节点i传输数据包的错误率,λi,Src数据包的源速率,λi,Relay数据包的延时速率,1+pi代表着数据包传输的平均次数。通过(1.6)和(1.7)可以计算出节点 i发送和接收持续的时间(其中T代表一个比较长的时间间隔,TPacket是节点i传输数据包到下一个节点的平均持续时间):
[0127] Ttx=T*λi,Out*Tpacket  (1.8)
[0128] Trx=T*λi,Relay*TPacket  (1.9)
[0129] 为了在节点i处阻止拥塞,所有的数据包都需要在时间间隔T内完成传输,因此,必须满足下面的关系:
[0130] T≥Ttx+Trx  (1.10)
[0131] 结合公式(1.6)~(1.10),我们最终有如下关系:
[0132]
[0133] 节点满足公式(1.11)才能进行数据包的转发。拥塞控制的另一方面即控制源节点的速率。在本发明中,生成数据包的传输速率按照加性增加,乘性较少的规律来控制。当检测到拥塞时,生成数据包的速率按公式 其中v定义为传输速率控制因子,λii为第i跳第i个数据包的速率,如果数据包被成功传输,那么数据包生成速率以加法速度增加,即λii=λii+α,此种方法可以防止局部流量负载的抖动。因此,一个源节点产生的流量满足公式(1.12),其中△t为时间间隔:
[0134]
[0135] 9、数据融合
[0136] 本发明的数据传输采用多跳转发的机制,数据在转发到下一节点的过程中,采用了数据融合机制。通过数据融合,能够有效的减少数据包的长度,并能剔除冗余数据。合理的数据融合机制能够节省能耗,降低时延。
[0137] 如图9所示本发明的数据融合机制图,图中为一条链,链上有7个传感器节点,节点在向下一跳转发的过程中,会对数据包进行融合,最终在节点1处打包成一个数据包一起上传到汇聚节点。
[0138] 数据融合前后数据帧的变化如图10所示,其中控制信息中包含链编号,帧类型,前导码等信息。
[0139] 为了进一步减少数据包的大小,在进行数据融合时,只有当相邻两次传感器采集到的数据的差值大于某个特定的容忍限度时(该值根据不同的应用场景作具体的规定),该数据才转发到下一节点,即满足公式(1.13)的数据才能转发,否则数据将被丢弃。
[0140] |C1-C2|>CTh  (1.13)
[0141] 另外,在数据融合中,数据帧过长会导致传输时间大大增加,因此,网络中节点初始化过程中,需给定数据融合最大值,以确保在部署的时隙内数据可以成功发送和接收。当超过这个最大融合的值时,传感器节点将不再进行数据融合。
[0142] 如图11所示本发明的传感器节点的工作过程具体如下:
[0143] (1)首先对整个网络进行初始化,包括传感器节点的初始功率信息表,流量速率,一个周期性睡眠周期的时间等等;
[0144] (2)汇聚节点对全网进行时间同步,保证每条链上的传感器节点时间是一致的,相互之间能够进行数据传输;
[0145] (3)汇聚节点对全网进行时隙分配,考虑到无线传感器网络相对比较稳定且在最后一跳处数据流量比较大,为了避免最后一跳数据传输在汇聚节点处发生碰撞,出现丢包,因此在时隙分配时保证每条链第一跳的时隙不同;
[0146] (4)链稳定运行阶段:在TDMA时隙分配完成之后,sink节点广播TDMA 时隙表之后,开始处于接收数据的状态,链节点在接收到本链上的时隙分配表之后,根据时隙分配的要求,关闭无线射频收发模块,进入sleep状态,直到所分配的发送时隙的到来,则醒来进行数据传输。在传感器节点的每个数据传输周期开始,节点会先侦听一段时间,用来接收一些控制,请求消息等等。侦听结束之后,则进入睡眠阶段,等待自己的时隙。
[0147] (5)数据传输阶段:节点在睡眠周期内,根据部署好的时隙,开始以初始化功率值逐跳上传数据:
[0148] a.如果当前时隙属于本节点,并且节点在当前时隙内有数据发送,那么节点在发送子时隙发送数据帧,在确认子时隙接收来自下一跳节点的数据帧,相当于 ACK报文;
[0149] b.如果当前时隙属于本节点,但是节点在当前时隙内没有需要发送的数据,则当前节点进入休眠状态;
[0150] c.如果当前时隙属于上一跳节点,节点在接收子时隙内接收数据;
[0151] 如图12所示本发明的汇聚节点的主要功能具体如下:
[0152] (1)时间同步:汇聚节点主要用于广播同步消息,保证链上所有的节点都能收到同步消息,并指定相应的应答节点;
[0153] (2)时隙分配:sink节点在时隙TS0广播一个RTA0(Request To Assign)消息,来进行时隙分配;
[0154] (3)时隙重分配:链路意外中断,重新申请新的路径时由汇聚节点进行时隙重分配;
[0155] (4)老节点退出和新节点入网:当汇聚节点在一段时间之内一直没有收到某条链中某个节点的数据包,则断定此位置节点已死亡,此时汇聚节点启动节点退出与加入的算法;
[0156] (5)功率控制表:在新节点入网和链路重申请时,需更新节点功率控制表;
[0157] (6)数据接收:这是汇聚节点最核心的一个功能,所有的传感器节点采集到的数据最终都上传到汇聚节点,汇聚节点进行分析,存储,最终和上层控制中心进行数据通信;
[0158] (7)其他功能:当网络中出现拥塞警告或者当节点能量出现低电警告等情况时,汇聚节点需要作出相应的处理。
[0159] 本发明的性能理论分析:
[0160] 本发明提供了一种农田监测多链型无线传感器网络无分层通信方法,可以视为一种新的网络通信协议,以下用RBP表示。
[0161] (1)数据包时延:假设在一条链中,每个传感器节点都被分配一个单独的时隙,单跳的传输可以看作是一个伯努利模型,一跳(S_hop)成功传输的平均时隙数可表示如下:
[0162]
[0163] 其中,Ptxfail表示在一次数据包传输失败的概率,n为节点的总跳数,P0表示时隙内没有数据需要发送的概率,Ptxfail和链路的误比特率Pe相关,由于考虑的是一个时隙内,因此还决定于当前节点的时隙内数据传输的次数Ntxop,因此我们可以得到:
[0164]
[0165] 根据M/M/1/B排队模型,P0可以表示如下:
[0166]
[0167] 其中ρ表示传输密度,ρ可以用一次上传过程的数据总量R和传输率μ表示:
[0168]
[0169] 其中Tdata表示数据上传一次到sink节点的时间。考虑到多跳传输,如果一个时隙内传输失败,即S_hop>1,S_hop-1即为额外的平均时隙数,假设相邻两跳间的距离为d,则到达汇聚节点的平均帧数如下:
[0170]
[0171] 根据每帧内的时隙总数(Nslots)以及一次数据交换的持续时间tdata,一个数据包的平均时延如下:
[0172]
[0173] 其中,Slot_Distance表示的是当前节点i所在的时隙与帧的最后一个时隙间的时隙数。在SMAC中,由于没有事先的时隙分配,而且占空比是固定的,数据通信如果在listen阶段没有完成,协议将数据通信延迟到下一次侦听的开始,这样大大增加了时延。在XLP中数据传输在侦听阶段,且没有时间同步,单次数据上传时间由RTS-CTS-DATA-ACK顺序完成,其中还需要通过竞争窗机制获取通信资格,大大的增加了单次数据上传时间,因此在XLP中,ttxop远远大于RBA 中的ttxop,时延大于RBP,通过上面的分析,最终可以获得三种协议的时延如图 13所示。由图13可知,RBP的时延低于其他两种协议。
[0174] (2)系统能耗:假设每条链上的节点数为N,节点i经过多跳传输数据到 sink节点,一次数据交换的持续时间ttxop,假设数据发送和接收的时间相等,即数据发送和接收的时间为ttxop/2,一个时隙的时间为tslot。另外,设侦听阶段没有数据传输时为Eactive,睡眠阶段能耗为Esleep,同步过程能耗在此处忽略不计,数据接收的平均能耗为ERX=13.8mw,数据发送的平均能耗为ETX=24.95mw。根据前文分析,节点i通过多跳将数据上传到汇聚节点所需要消耗的能量如下:
[0175] ERBP,i=Eslot,i+Elisten,i+Edata,i  (1.20)
[0176] Eslot,i和Elisten,i具体的可以表示成如下:
[0177]
[0178] Elisten,i=iδTS-LEactive  (1.22)
[0179] 其中,δ表示占空比, pCTA、pSend、pRev、pAck分别为成功接收 RTA0(或RTS)、发送CTA0、发送CTA、发送数据、接收数据、接收ACK的概率。
[0180] 对于数据传输过程,可分为两部分,正常数据传输消耗的能量以及链路中断后数据传输消耗的能量,假设节点出现意外死亡的概率为p,这里的p是一个常数,与具体的环境相关,那么,
[0181]
[0182] 当链路正常的情况下,节点i传输数据所需要的能耗为:
[0183]
[0184] 当链路中断的情况下,传输数据所需要的能耗要比正常情况下多一个路由申请的过程和时隙充分配的过程:
[0185]
[0186] 而对于XLP协议,侦听阶段和睡眠阶段总能耗可表示如下:
[0187]
[0188] 设网络中所有节点的数据采集率为V,由于网内节点部署采用的是优化部署方案,虽然上式在计算过程中将数据发送和接收简化成平均能耗,但是在实际网络传输中节点功耗可调,即在正常的发射功率下,可路由的节点有且仅有一个。因此,上传所有数据需要的总能耗为:
[0189]
[0190] 同时,根据文献数据正确发送或接受的概率为:
[0191] p=(1-pe)8ρF  (1.28)
[0192] 其中,F是包的长度(比特),ρ是编码率,pe是信噪比。
[0193] 根据上面的分析,最终可以得到本发明所述通信协议的能耗与占空比的关系如图14所示。从图中可以看出,当占空比超过0.5时,整个网络的能耗增大的很快,当占空比约等于0.2时,整个网络的能耗最低。
[0194] (3)单链故障:当一条链上某个节点意外故障时,整个网络的生命周期也会发生变化。如果di+di-1≤rmax,rmax为最大通信半径,故障处理如图15(a)所示,节点i将转发数据到节点i-2。此种情况下,由于节点i的传输距离发生变化,其他节点的传输没有受到影响,因此节点i的能耗为:
[0195] E′net(i)=(Etx+εamp·(di+di-1)β)·k·(n-i+1)+Erx·k·(n-i)  (1.29)[0196] 整个网络的生命周期则为:
[0197]
[0198] 如果di+di-1>rmax,此时节点i不能直接与节点i-2进行数据通信,因此需要向邻链发起新的路由请求,如图15(b)所示。
[0199] 节点i向节点j发起新的路由请求,链2上从节点j开始所承担的数据流量将大大增大,消耗的能量更多,网络的生命周期也随之发生变化。链2上每个节点将需要(2n-i-j+2)此数据发送和(2n-i+1-j)次数据接收,因此对于链2:
[0200] E′net(j)=(Etx+(ε·dj)β)·k·(2n-i+2-j)+Erx·k·(2n-i+1-j)  (1.31)[0201] 此时网络的生命周期为:
[0202]
[0203] 根据上面的分析最终得到无节点故障时的网络生命周期和有节点变化时的网络生命周期之间的关系,如图16所示。
[0204] 根据图16可知,当节点出现故障时,整体网络生命周期下降;节点故障位置出现位置不同,网络生命周期不同,节点故障出现在靠近汇聚节点的位置,由于两跳之间距离较小,直接增大功率与下下跳节点通信,此时对网络生命周期影响较小;当节点故障位置出现在距离汇聚节点较远的位置,需要向邻链申请新的路由,对网络生命周期影响较大。
[0205] 本发明的性能仿真分析:
[0206] 采用OMNET++对本发明的性能进行仿真。图17和图18分别是本发明的网络仿真网络拓扑图和协议仿真模型图。
[0207] (1)数据时延仿真:数据时延是无线传感器网络性能的一个重要指标。在链式网络中,数据时延是随着节点个数的增加而不断累加的,因此在一条链上节点个数越多,平均时延越大。对于相邻的两条链之间,由于大部分时隙是复用的,因此时延不会随着节点个数的增大而增大,在某个阶段会保持不变,假设占空比此时取固定值,即δ=0.2,那么平均时延与某两条链上节点个数的关系如图19 所示。
[0208] 当节点个数一定时,即监测区域半径固定,δ的取值对时延也产生很大的影响,δ越小,节点睡眠时间越长,相应的时延越大,某一条链上平均数据时延和占空比的关系如图20所示。
[0209] 由图20可知,当占空比很小时,XLP时延过大,尽管在δ>0.65时,时延性能略优于RBP,但是由于能耗的因素,一般δ<0.5。
[0210] RBP协议的时延除了和节点个数及占空比有关,还和链的条数有关,链的条数与数据时延的关系如图21所示。
[0211] 综上所述,可知RBP协议由于睡眠周期仍可数据传输,并且采用时隙复用的方式,因此降低了平均数据时延,提高了网络的实时性。
[0212] (2)网络能耗仿真:能耗是无线传感器网络另一个重要的指标,能耗越低,网络性能越优。本文在仿真中假设每个节点的初始能量相同,监测区域半径为 500m,在经过一段时间后,其中一条链上每个节点的剩余能量如图22所示。
[0213] 由图22所示,RBP协议仿真后每个节点的剩余能量基本相当,且仿真值与理论值接近。而XLP协议中节点剩余能量与节点位置有关,越靠近汇聚节点的传感器节点剩余能量越少。而且在XLP协议中仿真值明显低于理论值,这表明 RBP协议在实际环境中的适应性比XLP协议要好。
[0214] 上面的仿真过程中占空比,节点个数以及链的条数是固定的,如果改变占空比,节点个数以及链的条数,总能耗也随之改变,节点个数越多,链数越多,能耗越高,占空比越低,能耗越低。下面本发明将通过改变占空比,节点个数以及链的条数对能耗进一步分析。首先,分析占空比与网络能耗的关系,仿真过程中通过设定不同的占空比计算网络的总能耗值,具体如图23所示。由图23可知,占空比越大,网络总能耗越大,因此在实际的应用场景中,在保证实时性的同时应尽量减小占空比。
[0215] 其次,进一步分析不同的网络传感器节点个数与网络总能耗的关系,此处取δ=0.2。仿真过程中取传感器节点个数为1~7个,传感器节点个数增加,数据转发的跳数增加,能耗也随之增加。两种协议的网络拓扑结构相同,网络能耗图如图24所示。
[0216] 最后,分析链的条数与网络总能耗的关系,δ仍取0.2,监测区域半径为 500m,仿真结果如图25所示。
[0217] 综上所述,RBP无层协议与XLP相比具有更小的能耗,提高了网络的整体性能,延长了网络生命周期。
[0218] (3)网络故障仿真:假设监测区域半径为500m,每条链上有7个节点,有相邻的两条链节点ID编号分别为1-14,某一条链路上节点ID为5的节点出现故障死亡,并通过向邻链上节点ID为12的节点申请新的路由进行数据传输,通过仿真得到这两条链路上的节点剩余能耗如图26所示。仿真结果表明节点ID为 5和12的节点由于需要承担更多的负担,导致剩余能量明显降低。
[0219] 当网络中有多条链路出现节点故障时,RBP协议和XLP协议的生命周期变化如图27所示。由图27所示,当链路出现故障时,两种协议的网络生命周期均有所下降,RBP协议由于具有故障处理机制,因此网络生命周期下降缓慢,而 XLP协议随着链路故障的条数的增加生命周期迅速减少,最后变为0。由此可见, RBP协议性能明显由于XLP协议。
[0220] 综上所述,RBP协议在链路出现故障时其处理能力明显优于XLP协议,提高了网络的可靠性。
[0221] 实施例仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明保护范围之内。

附图说明

[0037] 图1是本发明的通信网络结构图;
[0038] 图2是本发明的通信协议结构图;
[0039] 图3是本发明的时间同步时序图;
[0040] 图4是本发明的链路故障示意图;
[0041] 图5是本发明的TDMA帧时隙结构图;
[0042] 图6是本发明的多链时隙分配序列图;
[0043] 图7是本发明的单链时隙分配序列图;
[0044] 图8是本发明的数据传输错误恢复机制示意图;
[0045] 图9是本发明的数据融合机制示意图;
[0046] 图10是本发明的数据帧格式变化图;
[0047] 图11是本发明的传感器节点工作流程图;
[0048] 图12是本发明的汇聚节点工作流程图;
[0049] 图13是各协议的节点的数据采集率与数据延时关系图;
[0050] 图14是各协议的节点的侦听周期占空比与能耗关系图;
[0051] 图15是本发明的链路故障处理机制示意图;
[0052] 图16是本发明的节点故障与非故障网络生命周期关系图;
[0053] 图17是本发明的网络仿真网络拓扑图;
[0054] 图18是本发明的RBP协议仿真模型图;
[0055] 图19是各协议的网络仿真节点个数与数据时延关系图;
[0056] 图20是各协议的网络仿真占空比与数据时延关系图;
[0057] 图21是各协议的链的条数与数据时延关系图;
[0058] 图22是各协议的节点剩余能量关系图;
[0059] 图23是各协议的网络仿真占空比与网络总能耗关系图;
[0060] 图24是各协议的网络仿真节点个数与网络总能耗关系图;
[0061] 图25是各协议的网络仿真链的条数与网络总能耗关系图;
[0062] 图26是本发明的网络仿真出现节点故障对每个节点生命周期的影响关系图;
[0063] 图27是本发明的网络仿真出现故障的链的条数与网络生命周期的关系图。
版权所有:盲专网 ©2023 zlpt.xyz  蜀ICP备2023003576号