一种无线传感器网络的时钟同步方法、装置、设备和介质

文档序号:32841397发布日期:2023-01-06 20:56阅读:29来源:国知局
一种无线传感器网络的时钟同步方法、装置、设备和介质

1.本技术涉及分布式系统技术领域,特别是涉及一种无线传感器网络的时钟同步方法、装置、设备和计算机可读存储介质。


背景技术:

2.自计算机网络和分布式系统出现以来,时钟同步引起了研究人员的浓厚兴趣。时钟同步对于广泛的通信协议和应用程序至关重要。例如数据融合、多路访问控制(multiple access control,mac)协议和节点协议等模块都需要一个精准时钟的支持才能正确运行。
3.时钟同步目的是确保整个网络节点拥有相同的时间概念。然而,受到网络节点资源有限、网络节点硬件不完善的影响,产生了时钟漂移以及节点间通信时消息延迟等问题。同时,考虑到无线节点有限的资源,同步算法需要在高精度与能耗之间做出最佳取舍。尽管网络时间协议(network time protocol,ntp)基于全球定位系统(global positioning system,gps)的高精度同步技术,但是这些协议并不适用于无线传感器网络(wireless sensor network,wsn)。究其原因,主要是这些协议中的同步方案将精度作为首要目标。然而,在wsn中还必须考虑其他因素,例如能耗、可扩展性、鲁棒性、收敛速度和非对称链路应用等。
4.近些年来,无线传感器网络中的时钟同步问题受到了极大的关注,并演变为一个具有相当大的研究兴趣的话题。关于时钟同步的方案包括一种基于时间分配方案来增强时间戳的精度,从而达到提供亚纳秒的时间传输精度,但是该方案带来了信噪比和信道变化率的改变,造成了同步精度下降。另一种方案为了解决观测过程中引入的误差和由于从时钟晶振的不稳定性带来的频率抖动,采用高斯白噪声进行模拟,并用卡尔曼滤波器进行消减,这种方法能够建立稳定的时钟频率模型,降低频率抖动对系统的影响,但是只考虑了时钟频率,忽略了时钟偏移。
5.可见,如何提升无线传感器网络时钟同步的准确性,是本领域技术人员需要解决的问题。


技术实现要素:

6.本技术实施例的目的是提供一种无线传感器网络的时钟同步方法、装置、设备和计算机可读存储介质,可以提升无线传感器网络时钟同步的准确性。
7.为解决上述技术问题,本技术实施例提供一种无线传感器网络的时钟同步方法,包括:
8.基于目标节点的时钟参数和量测参数,建立目标节点的系统模型;其中,所述系统模型用于计算目标节点的频率和偏移;所述目标节点为无线传感器网络中所有节点中的任意一个节点;
9.利用加权平均算法,对所述系统模型以及所述无线传感器网络对应的权重矩阵进行迭代处理,以确定出所述无线传感器网络的通用频率和通用偏移;
10.依据所述通用频率和通用偏移,调整所述目标节点的频率和偏移。
11.可选地,所述基于目标节点的时钟参数和量测参数,建立目标节点的系统模型包括:
12.利用所述目标节点的时钟参数包括的初始时钟频率、时钟初始偏移、目标节点自身的振荡器参数以及设定的采样周期和状态噪声,建立目标节点的频率和偏移对应的状态模型;
13.利用所述量测参数包括的量测矩阵和量测噪声,建立所述目标节点的量测模型;
14.将所述目标节点的频率和偏移对应的状态模型以及所述目标节点的量测模型作为所述目标节点的系统模型。
15.可选地,所述利用所述目标节点的时钟参数包括的初始时钟频率、时钟初始偏移、目标节点自身的振荡器参数以及设定的采样周期和状态噪声,建立目标节点的频率和偏移对应的状态模型包括:
16.调用时钟卡尔曼状态模型,对所述目标节点的初始时钟频率、时钟初始偏移、目标节点自身的振荡器参数以及设定的采样周期和状态噪声进行处理,以得到所述目标节点的频率和偏移的状态模型;所述时钟卡尔曼状态模型对应的计算公式为:
17.xn(k)=φnxn(k-1)+ωn(k)+bn;
18.其中,xn(k)=[αn(k)βn(k)]
t
,αn(k)=αn(k-1)+δn(k),βn(k)=βn(k-1)+ταn(k-1)+τδn(k)-τ,
[0019]
αn(k)表示节点n在当前时刻k的时钟频率状态,αn(k-1)表示节点n在上一时刻k-1的时钟频率状态,δn(k)表示状态噪声,βn(k)表示节点n在当前时刻k的时钟偏移状态,βn(k-1)表示表示节点n在上一时刻k-1的时钟偏移状态,τ表示采样周期,φn表示状态转移矩阵,ωn(k)表示通用状态噪声。
[0020]
可选地,所述利用加权平均算法,对所述系统模型以及所述无线传感器网络对应的权重矩阵进行迭代处理,以确定出所述无线传感器网络的通用频率和通用偏移包括:
[0021]
根据所述无线传感器网络对应的权重矩阵以及各节点对应的状态参数,确定出目标节点与相邻节点的状态变化模型;其中,所述相邻节点为所述无线传感器网络中除所述目标节点外的任意一个节点;
[0022]
利用加权平均算法,对所述系统模型和所述状态变化模型进行迭代处理,以确定出所述无线传感器网络的通用频率和通用偏移。
[0023]
可选地,所述根据所述无线传感器网络对应的权重矩阵以及各节点对应的状态参数,确定出目标节点与相邻节点的状态变化模型包括:
[0024]
调用迭代平均共识算法公式,对所述无线传感器网络对应的权重矩阵以及各节点对应的状态参数进行处理,以得到目标节点与相邻节点的状态变化模型;所述迭代平均共识算法公式为:
[0025][0026]
其中,xi(t+1)表示节点i在下一时刻的状态,w
ij
(t)表示节点i和节点j对应的权重,xj(t)表示节点j在当前时刻的状态,ni表示节点i的邻居集合。
[0027]
可选地,针对于所述无线传感器网络对应的权重矩阵的确定方式,所述方法还包括:
[0028]
根据所述无线传感器网络中任意两节点之间的信号强度,确定出任意两节点之间的节点距离;
[0029]
基于任意两节点之间的节点距离,确定出任意两节点之间的权重值;
[0030]
将任意两节点之间的权重值汇总作为所述无线传感器网络对应的权重矩阵。
[0031]
可选地,所述根据所述无线传感器网络中任意两节点之间的信号强度,确定出任意两节点之间的节点距离包括:
[0032]
获取所述无线传感器网络中任意两节点之间的信号强度;
[0033]
调用信号强度与节点距离的对应关系式,确定出任意两节点之间的节点距离;所述信号强度与节点距离的对应关系式为
[0034][0035]
其中,p(d)表示距离为d时节点接收到的信号强度,d0为参考距离,p(d0)表示距离为d0时节点接收到的信号强度,m表示与环境相关的路径衰减指数,xm表示以σ为标准差,均值为0的高斯噪声。
[0036]
本技术实施例还提供了一种无线传感器网络的时钟同步装置,包括建立单元、确定单元和调整单元;
[0037]
所述建立单元,用于基于目标节点的时钟参数和量测参数,建立目标节点的系统模型;其中,所述系统模型用于计算目标节点的频率和偏移;所述目标节点为无线传感器网络中所有节点中的任意一个节点;
[0038]
所述确定单元,用于利用加权平均算法,对所述系统模型以及所述无线传感器网络对应的权重矩阵进行迭代处理,以确定出所述无线传感器网络的通用频率和通用偏移;
[0039]
所述调整单元,用于依据所述通用频率和通用偏移,调整所述目标节点的频率和偏移。
[0040]
可选地,所述建立单元包括状态模型建立子单元、量测模型建立子单元和作为子单元;
[0041]
所述状态模型建立子单元,用于利用所述目标节点的时钟参数包括的初始时钟频率、时钟初始偏移、目标节点自身的振荡器参数以及设定的采样周期和状态噪声,建立目标节点的频率和偏移对应的状态模型;
[0042]
所述量测模型建立子单元,用于利用所述量测参数包括的量测矩阵和量测噪声,建立所述目标节点的量测模型;
[0043]
所述作为子单元,用于将所述目标节点的频率和偏移对应的状态模型以及所述目标节点的量测模型作为所述目标节点的系统模型。
[0044]
可选地,所述状态模型建立子单元用于调用时钟卡尔曼状态模型,对所述目标节点的初始时钟频率、时钟初始偏移、目标节点自身的振荡器参数以及设定的采样周期和状态噪声进行处理,以得到所述目标节点的频率和偏移的状态模型;所述时钟卡尔曼状态模型对应的计算公式为:
[0045]
xn(k)=φnxn(k-1)+ωn(k)+bn;
[0046]
其中,xn(k)=[αn(k)βn(k)]
t
,αn(k)=αn(k-1)+δn(k),βn(k)=βn(k-1)+ταn(k-1)+τδn(k)-τ,
[0047]
αn(k)表示节点n在当前时刻k的时钟频率状态,αn(k-1)表示节点n在上一时刻k-1的时钟频率状态,δn(k)表示状态噪声,βn(k)表示节点n在当前时刻k的时钟偏移状态,βn(k-1)表示表示节点n在上一时刻k-1的时钟偏移状态,τ表示采样周期,φn表示状态转移矩阵,ωn(k)表示通用状态噪声。
[0048]
可选地,所述确定单元包括状态变化确定子单元和通用参数确定子单元;
[0049]
所述状态变化确定子单元,用于根据所述无线传感器网络对应的权重矩阵以及各节点对应的状态参数,确定出目标节点与相邻节点的状态变化模型;其中,所述相邻节点为所述无线传感器网络中除所述目标节点外的任意一个节点;
[0050]
所述通用参数确定子单元,用于利用加权平均算法,对所述系统模型和所述状态变化模型进行迭代处理,以确定出所述无线传感器网络的通用频率和通用偏移。
[0051]
可选地,所述状态变化确定子单元用于调用迭代平均共识算法公式,对所述无线传感器网络对应的权重矩阵以及各节点对应的状态参数进行处理,以得到目标节点与相邻节点的状态变化模型;所述迭代平均共识算法公式为:
[0052][0053]
其中,xi(t+1)表示节点i在下一时刻的状态,w
ij
(t)表示节点i和节点j对应的权重,xj(t)表示节点j在当前时刻的状态,ni表示节点i的邻居集合。
[0054]
可选地,针对于所述无线传感器网络对应的权重矩阵的确定方式,所述装置还包括距离确定单元、权重确定单元和汇总单元;
[0055]
所述距离确定单元,用于根据所述无线传感器网络中任意两节点之间的信号强度,确定出任意两节点之间的节点距离;
[0056]
所述权重确定单元,用于基于任意两节点之间的节点距离,确定出任意两节点之间的权重值;
[0057]
所述汇总单元,用于将任意两节点之间的权重值汇总作为所述无线传感器网络对应的权重矩阵。
[0058]
可选地,所述距离确定单元用于获取所述无线传感器网络中任意两节点之间的信号强度;
[0059]
调用信号强度与节点距离的对应关系式,确定出任意两节点之间的节点距离;所述信号强度与节点距离的对应关系式为:
[0060][0061]
其中,p(d)表示距离为d时节点接收到的信号强度,d0为参考距离,p(d0)表示距离为d0时节点接收到的信号强度,m表示与环境相关的路径衰减指数,xm表示以σ为标准差,均值为0的高斯噪声。
[0062]
本技术实施例还提供了一种电子设备,包括:
[0063]
存储器,用于存储计算机程序;
[0064]
处理器,用于执行所述计算机程序以实现如上述无线传感器网络的时钟同步方法的步骤。
[0065]
本技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述无线传感器网络的时钟同步方法的步骤。
[0066]
由上述技术方案可以看出,基于目标节点的时钟参数和量测参数,建立目标节点的系统模型;其中,系统模型用于计算目标节点的频率和偏移;目标节点为无线传感器网络中所有节点中的任意一个节点。为了实现无线传感器网络中各节点的时间同步,可以利用加权平均算法,对系统模型以及无线传感器网络对应的权重矩阵进行迭代处理,以确定出无线传感器网络的通用频率和通用偏移。依据通用频率和通用偏移,调整目标节点的频率和偏移。在该技术方案中,通过加权平均的方法使得无线传感器网络中各节点在网络中通过不断的迭代方式来使自身在网络中的频率和偏移趋近节点间的公认的通用频率和通用偏移,从而使网络时钟达到较高精度的同步。并且在构建系统模型时既考虑了频率对时钟同步的影响,也考虑了偏移对时钟同步的影响,提升了无线传感器网络时钟同步的准确性。
附图说明
[0067]
为了更清楚地说明本技术实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0068]
图1为本技术实施例提供的一种无线传感器网络的时钟同步方法的流程图;
[0069]
图2为本技术实施例提供的一种本地时钟与实时时间的关系示意图;
[0070]
图3为本技术实施例提供的一种实际的时钟同步报文交换机制的示意图;
[0071]
图4为本技术实施例提供的三个节点经过同步迭代时同步误差和迭代次数的关系变化的示意图;
[0072]
图5为本技术实施例提供的一种引入权重的情况下三个节点经过同步迭代时同步误差和迭代次数的关系变化的示意图;
[0073]
图6为本技术实施例提供的一种无线传感器网络的时钟同步装置的结构示意图;
[0074]
图7为本技术实施例提供的一种电子设备的结构图。
具体实施方式
[0075]
下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本技术保护范围。
[0076]
本技术的说明书和权利要求书及上述附图中的术语“包括”和“具有”,以及与“包括”和“具有”相关的任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可包括没有列出的步骤或单元。
[0077]
为了使本技术领域的人员更好地理解本技术方案,下面结合附图和具体实施方式
对本技术作进一步的详细说明。
[0078]
接下来,详细介绍本技术实施例所提供的一种无线传感器网络的时钟同步方法。图1为本技术实施例提供的一种无线传感器网络的时钟同步方法的流程图,该方法包括:
[0079]
s101:基于目标节点的时钟参数和量测参数,建立目标节点的系统模型。
[0080]
无线传感器网络中包含有多个节点,每个节点时钟同步的处理方式相同,在本技术实施例中,以无线传感器网络中所有节点中的任意一个节点即目标节点为例展开说明。
[0081]
其中,系统模型用于计算目标节点的频率和偏移。
[0082]
在本技术实施例中,为了提升时钟同步的准确性,充分考虑了影响时钟同步的两类参数:频率和偏离。
[0083]
以目标节点为例,在实际应用中,目标节点的时钟参数可以包括目标节点的初始时钟频率、时钟初始偏移、目标节点自身的振荡器参数。为了实现系统模型的构建,时钟参数还可以包括设定的采样周期和状态噪声。
[0084]
在具体实现中,可以利用目标节点的时钟参数包括的初始时钟频率、时钟初始偏移、目标节点自身的振荡器参数以及设定的采样周期和状态噪声,建立目标节点的频率和偏移对应的状态模型。
[0085]
为了提升状态模型的稳定性,可以利用量测参数包括的量测矩阵和量测噪声,建立目标节点的量测模型。量测模型用于对状态模型进行滤波处理,以保证状态模型的稳定性。在本技术实施例中,可以将目标节点的频率和偏移对应的状态模型以及目标节点的量测模型作为目标节点的系统模型。
[0086]
典型的传感器时钟由一个稳定的石英振荡器和一个计数器组成,应用程序通过一个适当的应用程序编程接口(application programming interfaces,api)来读取并使用软件时钟,这就为每个传感器都提供了一个属于自己的本地时钟。
[0087]
本地时钟c(t)与实时时间t的关系如图2所示,标准时钟的斜率为1,偏移为0;快时钟的斜率大于1,存在偏移;慢时钟的斜率小于1,存在偏移,此特性可以建立时钟的积分模型,其公式如下:
[0088][0089]
其中,α(τ)表示时钟频率,θ0表示时钟初始偏移,τ表示时间。
[0090]
根据节点自身石英振荡器特性,总结其特性方程,进而得到未耦合(同步)节点时钟本地晶振模型公式:
[0091][0092]
其中,φn(t)表示节点n的瞬时相位(累加器),f0表示石英振荡器的中心频率,ξn表示标准化频率,θ
n0
表示表示节点n的时钟初始偏移,pn表示节点n的晶振的质量参数,b(t)表示标准维纳过程。
[0093]
在实验阶段,为防止采样周期过长,引起有用信号的严重丢失,以时间τ为周期进行采样,同时也考虑到具体环境中的不确定因素引入高斯白噪声,在公式(1)和(2)的基础上,建立起了节点时钟的频率和偏移状态递推公式:
[0094][0095]
其中,αn(k)表示节点n在当前时刻k的时钟频率状态,αn(k-1)表示节点n在上一时刻k-1的时钟频率状态,δn(k)表示状态噪声,βn(k)表示节点n在当前时刻k的时钟偏移状态,βn(k-1)表示表示节点n在上一时刻k-1的时钟偏移状态,τ表示采样周期。
[0096]
公式(3)的偏移状态方程由公式(1)的状态方程推出,具体过程如下:
[0097][0098]
式中α(l)利用时钟频率状态方程代入即可求得时钟偏移方程。
[0099]
设xn(k)=[αn(k)βn(k)]
t
,基于此可以将公式(3)总结概括成如下公式(4)所示的时钟卡尔曼状态模型:
[0100]
xn(k)=φnxn(k-1)+ωn(k)+bnꢀꢀꢀꢀꢀꢀ
(4);
[0101]
其中,φn为状态转移矩阵ωn(k)表示通用状态噪声(k)表示通用状态噪声
[0102]
在实际应用中,可以设定好采样周期和状态噪声,在获取到目标节点的初始时钟频率、时钟初始偏移、目标节点自身的振荡器参数之后,可以调用时钟卡尔曼状态模型,对目标节点的初始时钟频率、时钟初始偏移、目标节点自身的振荡器参数以及设定的采样周期和状态噪声进行处理,以得到目标节点的频率和偏移的状态模型;其中,时钟卡尔曼状态模型对应的计算公式为公式(4)。
[0103]
为了便于描述,可以将目标节点的频率和偏移的状态模型简称为状态模型。
[0104]
本技术实施例中,采用状态模型和量测模型作为目标节点的系统模型。量测模型可以实现滤波功能,以保证状态模型输出结果的稳定性。
[0105]
传感器的一些工作环境具有特殊性,人们不可能随时去测量传感器某些方面的相关参数,所以无法直接获取传感器时钟的相关数据,但是根据ieee 1588协议,可以通过从节点时钟所记录的时间戳来间接的获取传感器时钟的状态。
[0106]
由于无线传感器受环境和自身的影响而导致各个节点时钟频率和偏移各不相同,实际的时钟同步报文交换机制如图3所示,图3中是以两个节点的时钟为例,为了便于区分可以将一个节点的时钟称作主时钟,将另一个节点的时钟称作从时钟。相应的,可以将主时钟所属的节点称作主节点,从时钟所属的节点称作从节点。需要说明的是,本技术中主节点和从节点仅用于区分两个不同的节点,并不做其它功能性的限定。
[0107]
在实际应用中,ptp协议中同步过程包含两个阶段:偏移测量阶段和延时测量阶段。在偏移测量阶段,主时钟周期性地向从时钟发送同步报文,从时钟在t2时刻接收同步报
文并记录下该时间戳,紧接着主时钟将包含发送同步报文的时间戳t1打包放入跟随报文中发送给从时钟,从时钟接受并记录时间戳t1。在延时测量阶段,从时钟向主时钟发送延时请求报文并记录此时时间戳t3,主时钟接收到延时请求报文后,记录此时时间戳t4,然后打包并发送延时请求响应报文给从时钟,从时钟接收并记录时间戳t4。
[0108]
通过图3的报文交换机制模型以及时间戳的记录情况建立模型,模型对应的公式如下:
[0109][0110]
其中,d
ij
为主节点i和从节点j之间的固定延时部分,d1和d2分别为两节点之间的随机延时部分。因为d1和d2代表了不同节点时钟间的随机延时来实现通信链路的不对称,所以d1和d2是服从均值为0且方差为σ2高斯分布的独立高斯变量。
[0111]
将公式(5)中的两个公式相减,可以得到:
[0112]
t
j-ti=2βj(k)-2βi(k)+viꢀꢀꢀ
(6);
[0113]
其中,tj=t2+t3,ti=t1+t4,vi=d
1-d2,βj(k)表示从节点j在当前时刻的时钟偏移状态,βi(k)表示主节点i在当前时刻的时钟偏移状态。
[0114]
公式(6)中,i代表了主节点,j代表了从节点。ti代表主节点时钟,而tj为代表了主节点周边与之通信的从节点时钟,总结概括可以得到时钟卡尔曼量测方程的公式(7)如下所示:
[0115]zn
(k)=hn(k)xn(k)+vn(k)
ꢀꢀꢀ
(7);
[0116]
其中,zn(k)=t
jn-ti,n=1,2,3

,hn(k)表示量测矩阵,vn(k)是服从均值为零,协方差为rn=2σ2i的量测噪声。
[0117]
综上,通过状态模型和量测模型得到节点时钟参数的系统模型:
[0118][0119]
利用该模型,可以求得网络中任意节点时钟的参数。节点时钟的参数可以包括节点对应的频率和偏移。
[0120]
设网络中任意一个节点i的本地时钟为τi,其对应的邻居节点j的本地时钟为τj,相应的对于节点i,可以按照如下公式(9)表示:
[0121][0122]
其中,和代表了节点i和邻居节点j之间的相对偏移和频率漂移。
[0123]
s102:利用加权平均算法,对系统模型以及无线传感器网络对应的权重矩阵进行迭代处理,以确定出无线传感器网络的通用频率和通用偏移。
[0124]
在本技术实施例中,可以根据无线传感器网络对应的权重矩阵以及各节点对应的状态参数,确定出目标节点与相邻节点的状态变化模型。其中,相邻节点为无线传感器网络中除目标节点外的任意一个节点。利用加权平均算法,对系统模型和状态变化模型进行迭代处理,可以确定出无线传感器网络的通用频率和通用偏移。
[0125]
考虑到无线传感器网络中,会存在时钟参数偏差较大的节点,为了实现各节点之
间的均衡,在本技术实施例中引入了权重矩阵。
[0126]
通常一个无线传感器网络可以建模为一个无向图g(t)=(v,ε(t)),由一组节点v={1,
···
,n}和一组边集表示可用的通信链路,这意味着节点i和节点j可以在时间t可靠地相互通信。符号ni(t)={j∈v{i,j}∈ε(t),i≠j}表示节点i∈v的邻居集合,di(t)表示它的度数,即它的邻居个数。其中,
[0127]
假设在任意时刻t,无向图g(t)是连通的,保证其每对节点可以在g(t)内交换消息,即网络中任意一对不同的节点之间都有一条路径。
[0128]
加权图是一个三元组g(t)=(v,ε(t),w(t)),其中,是一个函数,它为每条边分配一个严格的正实数w
ij
,称为其权重。
[0129]
在具体实现中,针对于无线传感器网络对应的权重矩阵的确定方式可以包括:根据无线传感器网络中任意两节点之间的信号强度,确定出任意两节点之间的节点距离;基于任意两节点之间的节点距离,确定出任意两节点之间的权重值;将任意两节点之间的权重值汇总作为无线传感器网络对应的权重矩阵。
[0130]
在获取到无线传感器网络中任意两节点之间的信号强度之后,可以调用信号强度与节点距离的对应关系式,确定出任意两节点之间的节点距离;信号强度与节点距离的对应关系式为
[0131][0132]
其中,p(d)表示距离为d时节点接收到的信号强度,d0为参考距离,p(d0)表示距离为d0时节点接收到的信号强度,m表示与环境相关的路径衰减指数,xm表示以σ为标准差,均值为0的高斯噪声。
[0133]
在无线传感器网络中,我们可以将分布式共识问题定义为:使网络中的各个节点就某个兴趣量的共同值达成共识或协议,从而使网络中的所有节点以一种协调的方式进行合作。
[0134]
常使用的一类共识问题是平均共识问题,其中,每个节点持有一个值或测量值,目的是使用分布式线性迭代计算网络中所有值的平均值。实际上,平均算法采用了一种完全分布式的简单机制。在每次迭代中,邻居节点交换它们的局部状态(信息),并根据接收到的数据使用简单的线性加权平均更新它们的状态。
[0135]
为了描述平均共识算法,本技术实施例中将平均算法在加权图g上进行。此外,与每个节点i∈v相关联一些定义其状态的标量值平均共识算法的目标是以分布式方式计算节点公认的平均值
[0136]
假设每个节点i在时间t的状态记为xi(t),网络的状态是一个向量,记为x(t)=[x1(t),
···
,xn(t)]
t
。因此,迭代t处的迭代平均共识算法公式如下:
[0137]
[0138]
其中,
[0139]
其中,xi(t+1)表示节点i在下一时刻的状态,w
ij
(t)表示节点i和节点j对应的权重,xj(t)表示节点j在当前时刻的状态,ni表示节点i的邻居集合。
[0140]
在具体实现中,可以调用迭代平均共识算法公式,对无线传感器网络对应的权重矩阵以及各节点对应的状态参数进行处理,以得到目标节点与相邻节点的状态变化模型。
[0141]
或者迭代t处的迭代平均共识算法可以采用如下形式表示:
[0142]
x(t+1)=w(t)x(t)
ꢀꢀꢀꢀꢀꢀꢀꢀ
(11);
[0143]
其中,w(t)给出了迭代t的权重矩阵。
[0144]
如果对于所有i和j,w
ij
(t)≥0,则方阵w(t)是非负的,如果它是非负的并且每行的条目总和为1,则为行随机矩阵。如果w(t)是行随机且g是连通的,式(11)描述的迭代算法渐近地解决了平均一致性问题,即:
[0145][0146]
其中,1是所有分量都等于1的列向量。
[0147]
该算法通过加权平均的方法使得无线传感器网络中各节点在网络中通过不断的迭代方式来使自身在网络中的参数趋近节点间的公认平均值,从而使网络时钟达到一定精度的同步。
[0148]
s103:依据通用频率和通用偏移,调整目标节点的频率和偏移。
[0149]
在确定出通用频率和通用偏移后,可以调整目标节点的频率趋近于通用频率,调整目标节点的偏移趋近于通用偏移。
[0150]
需要说明的是,随着时间的推移,通用频率和通用偏移也会发生变化,按照上述s101和s102的方式可以周期性或者实时性确定出当前的通用频率和通用偏移,基于当前的通用频率和通用偏移,对目标节点的频率和偏移进行调整。
[0151]
在本技术实施例中,采用了matlab r2020a进行了仿真实验。
[0152]
在matlab中基于网络和时钟理论搭建模型,接着再将算法更新到具体的公式中去,其中,模型中的具体参数见表1。需要说明的是,由于节点的本地时钟之间相互独立互不干扰,所以不同节点的参数设置要分开考虑不能机械照搬,要有一定的随机性与差异性。
[0153]
表1
[0154][0155]
在此基础上再引入平均均方根误差(root average mean squared error,ramse)
准则,通过对从时钟和补偿后的从时钟滤波结果与主时钟滤波结果进行根均方误差计算,使该算法优化结果更加直观,具体如公式(12)所示:
[0156][0157]
从网络中选取任意三个节点,这三个节点经过同步迭代时同步误差和迭代次数的关系如图4所示。在不引入权重的情况下,通过图4可以看出,在同步迭代次数为50次左右的时候,同步效果达成。
[0158]
在引入权重的情况下,三个节点经过同步迭代时同步误差和迭代次数的关系变化如图5所示。从图5不难看出,在改变权重时的情况下,节点时钟在迭代次数40次左右达到了同步效果。
[0159]
本技术通过卡尔曼滤波对网络中节点时钟进行最优估计,然后再通过加权平均算法来对节点时钟进行同步研究。经过加权平均算法优化后的网络时钟系统,相较于未经优化的时钟系统时钟在同步过程中有着更快的收敛性,同时有着更短的迭代次数,也意味着更低的能耗,从而大大提高wsn的寿命。
[0160]
由上述技术方案可以看出,基于目标节点的时钟参数和量测参数,建立目标节点的系统模型;其中,系统模型用于计算目标节点的频率和偏移;目标节点为无线传感器网络中所有节点中的任意一个节点。为了实现无线传感器网络中各节点的时间同步,可以利用加权平均算法,对系统模型以及无线传感器网络对应的权重矩阵进行迭代处理,以确定出无线传感器网络的通用频率和通用偏移。依据通用频率和通用偏移,调整目标节点的频率和偏移。在该技术方案中,通过加权平均的方法使得无线传感器网络中各节点在网络中通过不断的迭代方式来使自身在网络中的频率和偏移趋近节点间的公认的通用频率和通用偏移,从而使网络时钟达到较高精度的同步。并且在构建系统模型时既考虑了频率对时钟同步的影响,也考虑了偏移对时钟同步的影响,提升了无线传感器网络时钟同步的准确性。
[0161]
图6为本技术实施例提供的一种无线传感器网络的时钟同步装置的结构示意图,包括建立单元61、确定单元62和调整单元63;
[0162]
建立单元61,用于基于目标节点的时钟参数和量测参数,建立目标节点的系统模型;其中,系统模型用于计算目标节点的频率和偏移;目标节点为无线传感器网络中所有节点中的任意一个节点;
[0163]
确定单元62,用于利用加权平均算法,对系统模型以及无线传感器网络对应的权重矩阵进行迭代处理,以确定出无线传感器网络的通用频率和通用偏移;
[0164]
调整单元63,用于依据通用频率和通用偏移,调整目标节点的频率和偏移。
[0165]
可选地,建立单元包括状态模型建立子单元、量测模型建立子单元和作为子单元;
[0166]
状态模型建立子单元,用于利用目标节点的时钟参数包括的初始时钟频率、时钟初始偏移、目标节点自身的振荡器参数以及设定的采样周期和状态噪声,建立目标节点的频率和偏移对应的状态模型;
[0167]
量测模型建立子单元,用于利用量测参数包括的量测矩阵和量测噪声,建立目标节点的量测模型;
[0168]
作为子单元,用于将目标节点的频率和偏移对应的状态模型以及目标节点的量测模型作为目标节点的系统模型。
[0169]
可选地,状态模型建立子单元用于调用时钟卡尔曼状态模型,对目标节点的初始时钟频率、时钟初始偏移、目标节点自身的振荡器参数以及设定的采样周期和状态噪声进行处理,以得到目标节点的频率和偏移的状态模型;时钟卡尔曼状态模型对应的计算公式为:
[0170]
xn(k)=φnxn(k-1)+ωn(k)+bn;
[0171]
其中,xn(k)=[αn(k)βn(k)]
t
,αn(k)=αn(k-1)+δn(k),βn(k)=βn(k-1)+ταn(k-1)+τδn(k)-τ,
[0172]
αn(k)表示节点n在当前时刻k的时钟频率状态,αn(k-1)表示节点n在上一时刻k-1的时钟频率状态,δn(k)表示状态噪声,βn(k)表示节点n在当前时刻k的时钟偏移状态,βn(k-1)表示表示节点n在上一时刻k-1的时钟偏移状态,τ表示采样周期,φn表示状态转移矩阵,ωn(k)表示通用状态噪声。
[0173]
可选地,确定单元包括状态变化确定子单元和通用参数确定子单元;
[0174]
状态变化确定子单元,用于根据无线传感器网络对应的权重矩阵以及各节点对应的状态参数,确定出目标节点与相邻节点的状态变化模型;其中,相邻节点为无线传感器网络中除目标节点外的任意一个节点;
[0175]
通用参数确定子单元,用于利用加权平均算法,对系统模型和状态变化模型进行迭代处理,以确定出无线传感器网络的通用频率和通用偏移。
[0176]
可选地,状态变化确定子单元用于调用迭代平均共识算法公式,对无线传感器网络对应的权重矩阵以及各节点对应的状态参数进行处理,以得到目标节点与相邻节点的状态变化模型;迭代平均共识算法公式为:
[0177][0178]
其中,xi(t+1)表示节点i在下一时刻的状态,w
ij
(t)表示节点i和节点j对应的权重,xj(t)表示节点j在当前时刻的状态,ni表示节点i的邻居集合。
[0179]
可选地,针对于无线传感器网络对应的权重矩阵的确定方式,装置还包括距离确定单元、权重确定单元和汇总单元;
[0180]
距离确定单元,用于根据无线传感器网络中任意两节点之间的信号强度,确定出任意两节点之间的节点距离;
[0181]
权重确定单元,用于基于任意两节点之间的节点距离,确定出任意两节点之间的权重值;
[0182]
汇总单元,用于将任意两节点之间的权重值汇总作为无线传感器网络对应的权重矩阵。
[0183]
可选地,距离确定单元用于获取无线传感器网络中任意两节点之间的信号强度;
[0184]
调用信号强度与节点距离的对应关系式,确定出任意两节点之间的节点距离;信号强度与节点距离的对应关系式为:
[0185][0186]
其中,p(d)表示距离为d时节点接收到的信号强度,d0为参考距离,p(d0)表示距离
为d0时节点接收到的信号强度,m表示与环境相关的路径衰减指数,xm表示以σ为标准差,均值为0的高斯噪声。
[0187]
图6所对应实施例中特征的说明可以参见图1所对应实施例的相关说明,这里不再一一赘述。
[0188]
由上述技术方案可以看出,基于目标节点的时钟参数和量测参数,建立目标节点的系统模型;其中,系统模型用于计算目标节点的频率和偏移;目标节点为无线传感器网络中所有节点中的任意一个节点。为了实现无线传感器网络中各节点的时间同步,可以利用加权平均算法,对系统模型以及无线传感器网络对应的权重矩阵进行迭代处理,以确定出无线传感器网络的通用频率和通用偏移。依据通用频率和通用偏移,调整目标节点的频率和偏移。在该技术方案中,通过加权平均的方法使得无线传感器网络中各节点在网络中通过不断的迭代方式来使自身在网络中的频率和偏移趋近节点间的公认的通用频率和通用偏移,从而使网络时钟达到较高精度的同步。并且在构建系统模型时既考虑了频率对时钟同步的影响,也考虑了偏移对时钟同步的影响,提升了无线传感器网络时钟同步的准确性。
[0189]
图7为本技术实施例提供的一种电子设备的结构图,如图7所示,电子设备包括:存储器20,用于存储计算机程序;
[0190]
处理器21,用于执行计算机程序时实现如上述实施例无线传感器网络的时钟同步方法的步骤。
[0191]
本实施例提供的电子设备可以包括但不限于智能手机、平板电脑、笔记本电脑或台式电脑等。
[0192]
其中,处理器21可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器21可以采用dsp(digital signal processing,数字信号处理)、fpga(field-programmable gate array,现场可编程门阵列)、pla(programmable logic array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器21也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称cpu(central processing unit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器21可以在集成有gpu(graphics processing unit,图像处理器),gpu用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器21还可以包括ai(artificial intelligence,人工智能)处理器,该ai处理器用于处理有关机器学习的计算操作。
[0193]
存储器20可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器20还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器20至少用于存储以下计算机程序201,其中,该计算机程序被处理器21加载并执行之后,能够实现前述任一实施例公开的无线传感器网络的时钟同步方法的相关步骤。另外,存储器20所存储的资源还可以包括操作系统202和数据203等,存储方式可以是短暂存储或者永久存储。其中,操作系统202可以包括windows、unix、linux等。数据203可以包括但不限于时钟参数和量测参数等。
[0194]
在一些实施例中,电子设备还可包括有显示屏22、输入输出接口23、通信接口24、电源25以及通信总线26。
[0195]
本领域技术人员可以理解,图7中示出的结构并不构成对电子设备的限定,可以包
括比图示更多或更少的组件。
[0196]
可以理解的是,如果上述实施例中的无线传感器网络的时钟同步方法以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,执行本技术各个实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、磁盘或者光盘等各种可以存储程序代码的介质。
[0197]
基于此,本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述无线传感器网络的时钟同步方法的步骤。
[0198]
以上对本技术实施例所提供的一种无线传感器网络的时钟同步方法、装置、设备和计算机可读存储介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
[0199]
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
[0200]
以上对本技术所提供的一种无线传感器网络的时钟同步方法、装置、设备和计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本技术进行若干改进和修饰,这些改进和修饰也落入本技术权利要求的保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1