本发明属于无线传感器网络技术领域,涉及一种基于动态响应的免时间戳同步频率偏移跟踪方法。
背景技术:
由价格低廉、体积微型、资源受限的传感器节点组成的无线传感器网络广泛应用于数据融合、电源管理、传输调度、跟踪与定位等,这些应用都要求所有节点维持同一时间基准。随着无线传感网不断发展,如何有效的维持大量低成本、低功耗、资源受限的传感器节点之间的同步关系,成为制约传感网整体性能的瓶颈问题。无线传感网中的每个传感器节点都有自己的时钟,节点的本地时钟一般由晶振提供。受限于本身的精度,晶振在运行时会呈现出一定的频率偏移,偏移的程度还会随着晶振所处环境的温度、气压变化以及晶振自身的老化程度而改变。这就需要同步算法来校正本地时钟,维持时间同步。
现有的关于无线传感器网络时间同步技术的研究大都假设在稳定的环境下,晶振的频率偏移值在一定时间段内保持稳定,因而采用线性模型来描述节点间的时钟关系。然而,这些研究还存在些许不足:1)受外界环境影响,晶振频率实际上是随时间呈非线性变化的;2)即使利用这些同步算法校正了本地时钟,由于晶振的长期变化特性,各节点时钟仍会不断漂移,这就需要持续进行再同步操作,因而造成大量能量消耗。
基于上述缺点,本发明亟需解决同步频率偏移跟踪过程中因实现时间同步而造成通信开销大的问题。
技术实现要素:
有鉴于此,本发明的目的在于提供一种基于动态响应的免时间戳同步频率偏移跟踪方法,考虑了时钟晶振的长期变化特性,将时钟频率偏移的非线性变化视为随机过程,利用卡尔曼滤波算法实现对频偏参数的长期跟踪,且整个参数跟踪过程无需传递任何时间戳,仅根据本地记录的时间节点信息就能长期估计自身时钟频偏参数显著降低了节点的通信开销,节省了大量能量。
为达到上述目的,本发明提供如下技术方案:
一种基于动态响应的免时间戳同步频率偏移跟踪方法,采用一阶高斯马尔可夫模型来预测节点时钟的频偏变化,并建立免时间戳交互的观测模型,利用卡尔曼滤波算法消除观测噪声,实现对活动节点时钟频率偏移变化的长期跟踪。
进一步,由于晶振相位噪声的存在,时钟频偏
其中,
进一步,所述免时间戳交互的观测模型,具体包括以下步骤:
s1:活动节点s在其本地时间
s2:参考节点m在成功接收节点s发来的数据帧后,按预设的响应时间δi严格执行等待操作,动态地进行确认回复,确认帧中不含任何时间戳信息;
s3:活动节点s记录下确认帧接收时间
其中,f0表示参考节点m晶振的标称频率,f表示活动节点s晶振的实际频率,
s4:重复步骤s1~s3,用第i+1周期通式减去第i周期通式,得到有关频偏参数
其中,
进一步,由于节点s与m每周期交互持续时间间隔很短,假设时钟频偏
其中,o[n]表示n时刻的观测值,
进一步,所述利用卡尔曼滤波算法来跟踪节点时钟频率偏移的变化,具体包括:跟随网络任务流,活动节点s不断记录下时间节点信息,基于时钟频偏状态模型的预测值和观测模型的观测值,利用卡尔曼滤波算法实现对频偏参数真实值的实时估计;所述卡尔曼滤波算法计算公式为:
预测:
最小预测均方误差:
卡尔曼增益:
修正:
最小均方误差:m[n|n]=(1-hk[n])m[n|n-1]
其中,
本发明的有益效果在于:
1)本发明充分考虑了传感器节点中时钟晶振的长期变化特性,并利用一阶高斯马尔可夫模型来描述频偏变化的随机性,使参数预测模型更符合实际情况,估计结果更准确。
2)本发明不需要在节点间交换时间戳,待同步节点无需额外的通信开销,只需较少的计算成本就能实现对频偏参数的长期估计,大大降低了无线传感网中节点同步所需的能量消耗。
3)与现有的无线传感器网络时钟同步方法相比,本发明不需要依赖专门的同步协议,不需要交换专门的同步报文,跟随网络数据流就能实现,有效提高了频偏参数跟踪算法的可操作性和实用性。
本发明的其他优点、目标和特征在某种程度上将在随后的说明书中进行阐述,并且在某种程度上,基于对下文的考察研究对本领域技术人员而言将是显而易见的,或者可以从本发明的实践中得到教导。本发明的目标和其他优点可以通过下面的说明书来实现和获得。
附图说明
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作优选的详细描述,其中:
图1为本发明所述的免时间戳交互示意图;
图2为本发明所述的免时间戳同步频率偏移跟踪方法流程图;
图3为本发明所述的免时间戳同步频率偏移跟踪方法性能对比图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
请参阅图1~图3,图1为本发明所提供的基于动态响应的免时间戳交互示意图,如图1所示,节点m作为参考节点,活动节点s为待同步节点,与节点m进行免时间戳交互,具体步骤如下:
对于第i个同步周期,节点s向m发送一个不含任何时间戳的数据帧,并记录下本地时间为
其中,φ和
参考节点m接收到s发来的数据帧后,等待响应时间δi再回复一个确认帧,节点s记录下接收时间
根据节点s、m之间的相对频偏的定义
其中,f0表示参考节点m晶振的标称频率,f表示活动节点s晶振的实际频率。用第i+1周期通式减去第i周期通式,得到有关频偏参数
式中,
由于节点s与节点m每周期交互持续时间间隔很短,假设时钟频偏
式中,v[n]表示均值为0、方差为
由于晶振相位噪声的存在,时钟频偏
其中,u[n]是均值为0、方差为
基于状态方程(7)和观测方程(8),本发明利用卡尔曼滤波算法,根据传感器节点本地获取的观测值{o[1],o[2],…,o[n]}来估计频偏参数
预测:
最小预测mse:
卡尔曼增益:
修正:
最小mse:m[n|n]=(1-hk[n])m[n|n-1](12)
实施例:
图2为本发明实时例提供的基于动态响应的免时间戳同步频率偏移跟踪方法流程图。本实施例提供了无需传递时间戳情况下的传感器节点时钟频偏跟踪方法,如图2所示,具体包括以下步骤:
p1:时钟频率偏移跟踪过程开始。
p2:卡尔曼滤波器初始化:
p3:由频率偏移状态方程,根据n-1时刻频偏值预测n时刻频偏值
p4:活动节点s向参考节点m发送一个数据帧,并记录本地时刻
p5:待接收到节点m等待时间δi回复的ack,节点s记录下本地时间
p6:计算卡尔曼增益。
p7:根据卡尔曼增益和观测值对频率偏移预测值进行修正,并计算最小均方误差。
p8~p10:判断是否达到观测次数设定值,若已达到,则频率偏移跟踪过程结束;反之,则i=i+1,进入流程p3继续参数跟踪过程。
图3给出了本发明提供的基于动态响应的免时间戳同步频率偏移跟踪方法性能对比图。由图3可知,免时间戳卡尔曼滤波器能有效消除观测噪声的影响,准确地跟踪时钟频率偏移的真实值,证明了本发明所提供的频偏参数跟踪方法的可靠性。
最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。