一种基于动态路径和变周期的无线传感器网络同步方法与流程

文档序号:15752668发布日期:2018-10-26 18:04阅读:243来源:国知局
一种基于动态路径和变周期的无线传感器网络同步方法与流程

本发明属于无线传感器网络节点间的时间同步领域,具体涉及一种基于动态路径和变周期的无线传感器网络同步方法。



背景技术:

无线传感器网络(wirelesssensornetworks,wsns)是由大量具有信息采集、处理和无线传输能力的传感器节点形成的多跳自组织网络,在军事、环境监测、智能家居等领域有巨大的应用前景。时间同步技术是无线传感器网络中一项重要的关键技术,为整个网络节点提供统一的时间度量,在无线传感器网络中许多基本的操作和应用都需要时间同步,例如低功耗mac协议,数据融合,定位技术等。自无线传感器网络的时间同步技术提出以来出现了许多经典算法,如timing-syncprotocolforsensornetworks(tpsn)、floodingtimesynchronizationprotocol(ftsp)、referencebroadcastssynchronization(rbs)、pairwisebroadcastsynchronization(pbs)等,这些算法直接利用标准时钟的时间信息完成时间同步。当今无线传感器网络规模不断的扩大,节点数目不断增加,网络运行环境也不断发生变化,这都带来了新的难题。目前大部分的研究工作主要在单跳的范围进行,在整个网络多跳同步时,简单重复单跳的操作,这样容易造成误差的累积,降低同步精度;节点晶振容易受到外界温度等因素的影响,导致时钟频偏变化甚至发生突变;节点能量有限,如何在保证精度情况下尽量减少消息的传递等这些问题都亟待解决。

已经有一些同步协议对这些问题提出了解决思路,如lightweighttimesynchronization(lts)、timesynchronizationprotocolbasedondynamicroutelist(drl-tsp)、low-duty-cyclesynchronizationprotocol(ldsp)协议针对多跳误差指数增长提出了改进方案,应对节点频偏变化的协议有timesynchronizationprotocolbasedonclockfrequencydynamicdetection(tsp-cf-lsn)、tamingclockskewvariationforsynchronization(dualsync),还有对再同步周期进行优化的协议on-demandtimesynchronization(ods)、bayesianlinearregression(blr)。但是这些协议太过复杂,只对某一个限制条件提出改进,或者只考虑了少量节点的网络,应用效果不是特别理想。



技术实现要素:

针对现有大规模无线传感器网络的多跳误差累计严重、节点时钟频率多变、节点能耗过高的问题,本发明提供一种基于动态路径(dynamicpath)和变周期(variableperiod)的无线传感网络时间同步方法。进行时间同步时,利用区域分簇减少网络最大同步跳数,提高同步精度,簇间同步阶段,动态选择最佳同步路径,有效减少多跳累积误差。簇内同步阶段,根据频偏变化情况以及设定的最大同步误差更新下一次同步间隔,既能够满足同步精度的要求,又可以延长再同步周期,减少同步消息的发送,节省能量。

本发明是通过以下技术方案实现的:

一种基于动态路径和变周期的无线传感器网络同步方法,包括以下步骤:

步骤s1,分簇;根节点首先发送分簇数据包,节点按照自己的地理位置确定自己的所属的簇,簇内节点相互交换信息(剩余能量和节点id号),选举剩余能量最大的节点为簇头节点,簇头节点广播信息进行声明,直到所有的节点加入簇型结构,分簇完成;

步骤s2,簇头节点同步;根节点发送同步数据包,簇头节点监听邻居簇头节点发来的同步包,收到第一个数据包后,如果是时间同步数据包,则设定时间同步定时器开始参考节点优选过程,在定时器到时之前,节点持续接收其他同步数据包到来,比较收到的数据包的性能参数std,最终选取最优时间性能的节点为同步参考节点,然后利用双向同步消息交换与参考节点进行同步;

步骤s3,簇内节点同步;簇头节点广播同步消息,簇内节点根据收到的同步包计算相偏、频偏和频偏变化率,并把频偏变化率反馈给簇头节点,簇头节点只保留最大的频偏变化率,根据给定的最大同步误差边界值得到下一次同步间隔;

步骤s4,网络扩展;当有新的节点加入到已经运行的网络中时,可以发送请求包加入最近的簇接收同步消息,当有节点失效时,失效节点为簇内节点对网络没有什么影响,失效节点为簇头节点时,需要在区域内重新选举簇头节点,下一跳的簇头节点可以在接收到的同步信息中筛选其他性能好的同步簇头节点作为参考节点。

本发明的基于动态路径和变周期的同步方法在无线传感器网络环境下实现细节如下:

采用区域分簇结构,在簇间同步阶段,首先根节点发起同步过程,然后簇头与簇头之间进行基于动态路径的多跳同步。定义一个衡量节点时钟性能标准std,在时间同步中,std主要有两个主要参数。第一,节点时钟的频偏。在这里我们认为,当节点时钟的频偏越小,节点越稳定,节点时钟发生频率漂移的发生的可能性小,时钟精度也就越高,其发送的时间信息可靠性越高。第二,节点距离根节点的跳数。在多跳同步中,误差随着跳数的增加而累积,当距离标准时钟节点越近,时钟也就越精确,选择跳数小的参考节点进行同步也能够避免环路的产生。根据分析可知,一个时钟性能好的节点,应该具有更小的时钟频偏和跳数。

std的具体表达式如下:

stdi=m*α(f)*β(n)+(1-m)stdi-1,0≤m≤1.(1)

其中,i是同步轮次,stdi是第i轮次节点的性能标准,α(f)是与本轮节点时钟频偏相关的参数项,β(n)是与该节点距离根节点跳数相关的参数项,m是影响因子,在0到1之间取值,表示上一次节点性能对本次性能的影响程度,当m越小,上一轮节点性能对本轮次节点性能筛选影响越大。节点在筛选定时器时间内一直接收同步数据包,只保留性能最好的节点作为参考节点进行同步。

在簇内同步阶段,主要完成簇头与簇内节点之间的同步,各个簇头作为每个簇内节点的时间参考节点。假设节点i在t0时刻完成了一次同步,那么它在t1=t0+δt时刻的同步误差可以表示为:

ei(t1)=ei0(t0)+eia(δt)(2)

其中,ei0(t0)是节点在t0时刻由消息传输延迟产生的瞬时同步误差,eia(δt)是节点在δt时间内由时钟频率偏移产生的累积同步误差。

由于受到外界温度,湿度,电压等因素的影响,节点的时钟频率发生偏移即产生频偏,我们把节点时钟相对标准时钟频率漂移的快慢用频偏变化率来表示。在时间同步中,参考节点的时钟当作标准时钟,节点的频偏可以通过与参考节点进行同步包的交换来获得。假设我们要得到节点a相对于参考节点r频偏,需要节点r向节点a发送同步包。参考节点r在tr和tr+1时刻分别发送同步包到节点a,节点a在δtr+1=tr+1-tr时间段内的时间偏移θa(t′r+1)为:

θa(t′r+1)=(ta(t′r+1)-ta(t′r))-(tr+1-tr)(3)

那么,节点a相对于参考节点r在δtr+1时间段内的频偏为:

同理,由参考节点r在tr+1和tr+2时刻发送的同步包可以得到节点a在δtr+2=tr+2-tr+1时间段内的频偏为αa(t′r+2)。节点a相对于参考节点r在时间段δtr+1+δtr+2内的频偏变化率为:

在时钟频偏变化的情况下,节点同步误差主要是累积同步误差,已知频偏变化率为同步间隔为δ,同步误差可以表示为:

簇内节点所允许的最大同步误差为e,由式(5)得到节点中最大的频偏变化率则能够保证精度的最大同步周期t为:

本发明的有益效果在于:采用区域分簇的网络拓扑结构,不仅能够减少网络最大同步跳数,而且能够提高网络同步精度;簇间同步阶段采用一种动态路径机制,通过每一跳优选参考节点来获得最优同步路径,选取时钟频率稳定且同步跳数少的参考节点进行同步,抑制误差的多跳累积;簇内同步阶段采用变周期的同步机制,通过对簇内同步误差进行建模分析,确定了频偏变化率与同步周期之间的关系;根据频偏变化以及设定的最大同步误差更新下一次同步间隔,既能够满足同步精度的要求,又可以延长再同步周期,减少同步消息的发送,节省能量。

附图说明

图1是本发明分簇示意图;

图2是本发明簇间同步示意图;

图3是本发明簇内同步示意图;

图4是本发明拓扑分布示意图;

图5是本发明瞬时误差抑制效果对比图;

图6是本发明同步效果对比图。

具体实施方式

下面结合附图及具体实施例对本发明作进一步详细的说明。

本发明是一种基于动态路径和变周期无线传感器网络同步方法,同步时采用区域分簇的网络拓扑结构,不仅能够减少网络最大同步跳数,而且能够提高网络同步精度。簇间同步阶段,采用基于动态路径的多跳同步机制,每轮同步根据同步跳数以及时钟频偏相关的性能参数筛选性能好的邻居簇头节点作为参考节点,通过动态选择同步路径,可以有效减少多跳累积误差。簇内同步阶段,采用变周期的同步机制,通过对簇内同步误差进行建模分析,确定了频偏变化率与同步周期之间的关系;根据频偏变化以及设定的最大同步误差更新下一次同步间隔,既能够满足同步精度的要求,又可以延长再同步周期,减少同步消息的发送,节省能量。

本发明基于动态路径和变周期同步方法依次经过以下步骤:

步骤s1,分簇;如图1所示,根节点首先发送分簇数据包,把监测区域分成若干个虚拟单元格,将节点按照位置信息划入相应的单元格,每个单元格中选举产生一个簇头节点。接到分簇信息后节点按照自己的地理位置确定自己的所属的簇,簇内节点相互交换信息(剩余能量和节点id号),选举剩余能量最大的节点为簇头节点,簇头节点广播信息进行声明,直到所有的节点加入簇型结构,分簇完成;

步骤s2,簇头节点同步;如图2所示,在簇间同步的过程中,主要完成各个簇头之间的同步。根节点发起同步过程,然后簇头与簇头之间进行基于动态路径的多跳同步。簇头节点监听邻居簇头节点发来的同步包,收到第一个数据包后,如果是时间同步数据包,则设定时间同步定时器开始参考节点优选过程,在定时器到时之前,节点持续接收其他同步数据包到来,比较收到的数据包的性能参数std,最终选取最优时间性能的节点为同步参考节点,然后利用双向同步消息交换与参考节点进行同步;

步骤s3,簇内节点同步;如图3所示,在簇内同步过程中,主要完成簇头与簇内节点之间的同步,各个簇头作为每个簇内节点的时间参考节点。本发明采用单向消息传递的同步方案,添加变周期同步机制应对时钟频率变化,动态调整再同步周期。簇头节点广播同步消息,簇内节点根据收到的同步包计算相偏、频偏和频偏变化率,并把频偏变化率反馈给簇头节点,簇头节点只保留最大的频偏变化率,根据给定的最大同步误差边界值得到下一次同步间隔;

步骤s4,网络扩展;当有新的节点加入到已经运行的网络中时,可以发送请求包加入最近的簇接收同步消息。当有节点失效时,失效节点为簇内节点对网络没有什么影响,失效节点为簇头节点时,需要在区域内重新选举簇头节点,下一跳的簇头节点可以在接收到的同步信息中筛选其他性能好的同步簇头节点作为参考节点。

本发明的优点主要体现在以下几方面:

1.利用分簇策略减少跳数提高同步精度

在同步开始阶段,进行对网络进行区域分簇,图4为实验中部分区域分簇拓扑图以及同步消息的传播路径。采用分簇结构,能够从网络整体上减少同步跳数,减少同步误差的累积。

2.利用动态路径策略实现误差多跳累积的抑制

在簇间同步过程中,待同步节点总是选取能收到同步包中性能最好的一个作为其同步参考节点。本待同步节点距离根节点的跳距和节点频偏是影响性能参数的重要因素,一个性能优良的节点有较小的跳距和频偏。选择性能好的父节点,优化同步路径,从而有效的抑制多跳误差的累计。

图5为本发明同步方法的实验tsp-dpvp与不进行参考节点优选实验dmts和tpsn的比较,可以看出tsp-dpvp较dmts和tpsn经过更少的跳数完成了同步,多跳累计误差抑制效果明显。

3.采用变周期机制减少能耗

在簇内同步阶段,考虑到外界环境复杂多变,时钟频率容易发生变化,传统的固定周期的同步方案不能满足需求,采用变周期的同步策略,优化同步周期,能够适应时钟频率的变化,保证同步精度的同时减少能耗。

图6为本发明中tsp-dpvp方法与其他方法的最大同步误差对比实验,(a)tsp-dpvp中90%节点的同步误差小于150us,(b)tpsn协议90%节点的同步误差小于190us,(c)dmts协议中90%节点同步误差小于220us。

在10h的实验中,tsp-dpvp中节点平均发送同步包的数量为650,tpsn为1360,dmts为550。tpsn节点平均发送同步包的数量最多,dmts略高于tsp-dpvp的同步包数量。

4.网络同步收敛性

在全网络时间同步的收敛上,分簇结构能够减少跳数,就能够加速全网同步收敛速度;同步阶段,同步消息通过电磁波的方式,在网络不拥塞的情况下,消息交换时间比较短,收敛性主要受在簇间同步时节点筛选定时器时间的影响,节点接收邻居节点发送的同步包,筛选定时器时间也不需要设置很大,并且可以在前几轮的同步中把等待时间设置为0,来加速全网同步的收敛。

5.网络的拓展性和鲁棒性

当有新的节点加入的时候,可以广播请求数据包,加入临近的簇,然后接收簇头节点发送的同步消息;当有节点死亡时,簇内节点,对网络没有什么影响,当死亡节点为簇头节点的时候,需要在区域内重新选举簇头节点,短时间内就可以解决问题,并且只是对本簇内的节点有短暂的影响,不会对临近的簇头节点造成影响,因为在多跳同步中,下一跳的簇头节点可以直接根据接收到的同步信息,筛选其他性能好的同步簇头节点作为参考节点,完成同步。所以单个节点的加入和死亡对网络的时间同步造成的影响,都能够快速很好解决,不会造成整个网络毁灭性的打击。因此,新提出的时间同步方法在拓展性和鲁棒性上也有不错的表现。

最后应需要说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳的实施例对本发明进行了详细的说明,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的修改或等同替换,而不脱离本发明技术方案的精神和范围,都应涵盖在本发明的保护范围之内。

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