一种适用于WIA-PA网络的时钟同步频率偏移估计方法
技术领域
本发明涉及工业无线传感器网络技术领域,具体涉及适用于WIA-PA网络的一种时钟同步频率偏移估计方法。
背景技术
工业无线传感器网络以其功耗低,成本小的特点,已经成为工业控制领域发展的一个热门方向。WIA-PA标准(面向工业过程自动化的工业无线网络标准技术)基于短程无线通信IEEE 802.15.4标准,WIA-PA的数据链路层兼容并扩展了IEEE 802.15.4的超帧结构。WIA-PA的数据链路层支持基于时隙的跳频、重传、CSMA和TDMA混合信道访问机制,以此保证了传输的可靠性及实时性。因此为了保证TDMA机制的可靠性,对WIA-PA网络中的设备进行时间同步是极其重要的。
根据时间信息在时间同步过程中记录方式的不同,可将无线传感器网络时间同步方法分为以下三类:基于单方向的同步算法、基于报文信息交换的同步算法和基于接收方-接收方的同步算法。基于单方向的同步算法主要包括FTSP算法、DMTS算法,基于报文信息交换的算法主要有LTS算法、TPSN算法,基于接收方-接收方的同步算法主要是指RBS算法。WIA-PA网络的时间同步机制主要有信标帧同步和命令帧同步,子设备接收来自时间源周期性广播的附带时间信息的信标帧,记录接收到信标帧时的本地时间,通过简单地对比这两个时间,得到本设备时钟与标准时钟的时钟偏移,用时钟偏移调整本地时钟;此外,还可以通过WIA-PA网络专有的时间同步命令帧进行二次同步。
在WIA-PA网络中,为完成节点间的时间同步,消息报文的传输是必须的,然而报文收发中的各类时延对时间同步的精度有重要影响。图1给出了信息收发过程中的时间延迟分解图,如图所示,为了更好分析报文传输中的误差,可以将消息报文收发的时间时延分为六部分:发送时延(Send Time)、访问时延(Access Time)、传输时延(Transmission Time)、传播时延(Propagation Time)、接收时延(Reception Time)和接收处理时延(Receive Time),这六类时延是影响时间同步的关键因素。
目前WIA-PA网络时间同步机制存在的主要问题如下:首先,现有的信标帧同步机制仅仅简单估计了时钟偏移,却没有对更重要的频率偏移进行估计和补偿,导致在同步周期的间隔时间内,时间误差迅速积累,时间源不得不加快信标帧广播的频率以维持网络基本的时间同步精度。其次,在时间参数的估计过程中,没有排除报文收发过程中的发送时延、访问时延、传输时延、传播时延、接收时延和接收处理时延等六类时延对估计结果影响,导致调整后的时间与标准时间还有较大的偏差,降低了同步精度;最后,一般的时钟偏移和频率偏移联合估计方法,具有运算量大、复杂度较高的缺点,而且很少考虑本发明提出的子节点在每个同步周期对本地时间进行补偿,然后单独估计相对频率偏移这种更符合实际场景的情形。
发明内容
针对现有技术中的问题,本发明提供了一种提高WIA-PA网络的时间同步精度,延长时间同步周期,减少信标帧广播频率,降低网络的通信开销以及节点的能耗的适用于WIA-PA网络的时钟同步频率偏移估计方法,本发明的技术方案如下:一种适用于WIA-PA网络的时钟同步频率偏移估计方法,其包括以下步骤:
101、工业无线传感器网络WIA-PA中的子节点P通过接收时间源设备A周期性广播的信标帧,从接收到的信标帧中获得时间源设备A发送信标帧的时刻T1,i (A)和子节点P接收信标帧的时刻T2,i (P),计算两者的差值△Ti=T2,i (P)-T1,i (A)作为时间调整量,并在随后的一个时间T5,i (P)减去时间调整量△Ti作为子节点P自己的本地时间;重复上述过程,经过N个同步周期后,采用频率偏移估计公式单独估计本地时钟相对于时间源的频率偏移
102、当需要上报时间时,子节点P利用估计出的相对频率偏移根据公式将本地时间转换为节点P的当前时间,并以节点P的当前时间上报。
进一步的,当步骤101中的时间源设备A和子节点P要实现时间同步,时间源设备A作为时间参考节点,子节点P是待同步节点,所述时间同步步骤包括:
A0、节点A的MAC层生成信标帧,在信标帧中预留发送时间戳位置,在节点A发送信标帧到定界符SFD时,产生中断,把发送时间戳加入到信标帧中预留的发送时间戳位置;节点A通过无线接口周期性地广播信标帧;
A1、子节点P的MAC层接收信标帧,在SFD中断记录下接收时间戳并赋值到变量T2,i (P)上,T2,i (P)表示子节点P接收信标帧的时刻,解析出信标帧得到发送时间戳并赋值到变量T1,i (A)上,T1,i (A)表示时间源设备A发送信标帧的时刻;
A2、节点P的应用层根据公式△Ti=T2,i (P)-T1,i (A)计算时间调整量△Ti,并在随后的一个时间T5,i (P)调整自己的时间,即在当前本地时间上减去调整量△Ti作为新的时间;
A3、重复步骤A1、A2,并将点(T1,i (A),T2,i (P))保存到相应数组中,经过N个周期后,节点P的应用层根据频率偏移估计公式
估计出节点P相对于节点A的频率偏移式中,T1,i (A)为节点A发送第i个信标帧的时刻,T2,i (P)为节点P接收到第i个信标帧的时刻,T2,i-1 (P)为节点P接收到第i-1个信标帧的时刻,N为时间同步的次数。
进一步的,步骤A0中所述的信标帧通过广播的方式发送,信标帧的源地址为节点A的地址,信标帧时间同步机制为单向报文时间同步。
进一步的,步骤101中的N为1即对于第一个同步周期时,T2,1 (P)可表示为:
其中,ρ(AP)和分别为相对频率偏移和t0时刻的初始时钟偏移,信标帧收发过程中的固定延迟为d(AP),随机延迟为Xi (AP),ρ(AP)(d(AP)+X1 (AP))表示的是信标帧收发过程中由于频率偏移而积累的同步误差,节点P在随后的一个时间T5,i (P)利用两个时间戳的差值△T1=(T2,1 (P)-T1,1 (A))来调整本地时间,节点P调整后的时间可用T5,1 (P)*来表示,则有
T5,1 (P)*=T5,1 (P)+T2,1 (P)-T1,1 (A) (2)
在t0到T5,1 (A)时间内,节点A和节点P之间产生的真实的时钟偏移量△Ttrue,1为
(3)-(1)得到节点P调整后的新的时钟偏移量
设T5,1 (P)*时刻对应的节点A的时间为T5,1 (A)*,此时由于节点P的本地时间刚刚进行了调整,节点A和节点P的时间非常接近,因此可设T5,1 (P)*=T5,1 (A)*。
本发明的优点及有益效果如下:
1、本发明提供的适用于WIA-PA网络的时钟同步频率偏移估计方法,子节点在每个同步周期收到信标帧后对本地时间进行调整,经过多个同步周期后单独对相对频率偏移进行估计,减少了同步误差在时间同步周期内的自由增长,有效提高了时间同步精度,延长了同步周期,降低了网络的通信开销以及节点的能耗。
2、本发明在频率偏移的估计过程中不仅充分考虑了报文接收过程中的发送时延、访问时延、传输时延、传播时延、接收时延和接收处理时延等六类时延,还对信标帧收发过程中同步误差由于频率偏移造成的自由增长进行了处理,使同步模型更符合实际情况,估计结果更准确。
3、本发明提供的适用于WIA-PA网络的时钟同步频率偏移估计方法,其频率偏移估计表达式只与发送时间戳T1,i (A)、接收时间戳T2,i (P)有关,且不受调整时刻T5,i (P)、固定延迟d(AP)的影响。因此,仅仅需要这2类时间戳就能有效地估计出相对频率偏移,具有计算简单、方法新颖的优点。
4、本发明考虑了子节点在每个周期都对本地时间进行调整最后再单独估计频率偏移的情形,不需要使用对时钟偏移和频率偏移的联合估计方法,减少了待估计参数的个数和估计复杂度,更符合实际场景。
附图说明
图1是信息收发时延分解图;
图2:本发明提供的信标帧同步示意图;
图3:本发明提供的频率偏移估计结果性能对比图;
图4:本发明提供的频率偏移估计方法流程图。
具体实施方式
以下结合附图,对本发明作进一步说明:
本发明的核心思想是:基于单向广播的信标帧,记录其发送时间和接收时间,使用两者的差值作为时间调整量并用其调整本地时间,如此反复执行多个周期后,利用统计信号估计方法单独估计出频率偏移,用于补偿节点的本地时间,从而降低在两个同步周期之间的时间内同步误差由于的自由增长,有效提高WIA-PA信标帧的时间同步精度。
图2为本发明提供的信标帧同步示意图。节点A为时间源,节点P为待同步节点,t0为时间同步开始时刻,信标帧的发送时间戳和接收时间戳分为别T1,i (A)、T2,i (P)。
对于第一个同步周期,T2,1 (P)可表示为:
其中,ρ(AP)和分别为相对频率偏移和t0时刻的初始时钟偏移,信标帧收发过程中的固定延迟为d(AP),随机延迟为Xi (AP),ρ(AP)(d(AP)+X1 (AP))表示的是信标帧收发过程中由于频率偏移而积累的同步误差。节点P在随后的一个时间T5,i (P)利用两个时间戳的差值△T1=(T2,1 (P)-T1,1 (A))来调整本地时间,节点P调整后的时间可用T5,1 (P)*来表示,则有
T5,1 (P)*=T5,1 (P)+T2,1 (P)-T1,1 (A) (2)
实际上,在t0到T5,1 (A)时间内,节点A和节点P之间产生的真实的时钟偏移量△Ttrue,1为
(3)-(1)得到节点P调整后的新的时钟偏移量
设T5,1 (P)*时刻对应的节点A的时间为T5,1 (A)*,此时由于节点P的本地时间刚刚进行了调整,节点A和节点P的时间非常接近,因此可设T5,1 (P)*=T5,1 (A)*。
接下来的第二个周期,节点P的时间调整量△T2可求得为
将和T5,1 (A)*代入上式可得
△T2=T2,2 (P)-T1,2 (A)=ρ(AP)(T1,2 (A)-T2,1 (P)+X2 (AP)-X1 (AP))+X2 (AP)-X1 (AP) (6)
实际上,在T5,1 (P)*到T5,2 (P)的时间内,节点A和节点P之间真实的时钟偏移量△Ttrue,2可表示为
(7)-(6)得到节点P在第二次调整时间后的新的时钟偏移量为
表1 时间同步中的参数
表1列出了时间同步周期中的相关参数,包括参考时间、调整时间、初始偏移量。由(4)可知,初始偏移量中含有上一个周期的调整时间T5,i-1 (P)*和固定延迟d(AP),但是在式(6)计算时间调整量△Ti的过程中,这两个参数被抵消了,因此最终的表达式中不含有调整时间T5,i (P)*和固定延迟d(AP)。
对于第三个周期,时间调整量△T3可求得为
T2,3 (P)-T1,3 (A)=ρ(AP)(T1,3 (A)-T2,2 (P))+(1+ρ(AP))(X3 (AP)-X2 (AP))
重复上述步骤,第i个周期的时间调整量为
T2,i (P)-T1,i (A)=ρ(AP)(T1,i (A)-T2,i-1 (P))+(1+ρ(AP))(Xi (AP)-Xi-1 (AP))=ρ(AP)(T1,i (A)-T2,i-1 (P))+(1+ρ(AP))Wi (8)
其中Wi是均值为0且方差为σ2的高斯白噪声。使用最大似然估计方法对频率偏移ρ(AP)进行估计,式(8)基于观测量的对数似然函数可表示为
对ρ(AP)求偏导数并另其为0
得其解为
由上式可得,频率偏移与调整时刻T5,2 (P)和固定延迟d(AP)无关,节点P仅仅需要获得发送时间戳和接收时间戳就可以估计出频率偏移,具有方法新颖、计算简单的优点。另外,节点P不需要联合估计时钟偏移和频率偏移,只需单独估计出频率偏移就可以实现与节点A的同步,减少了计算量和复杂度。
为了验证估计结果的有效性,可求得的CRLB(Cramer-Rao Lower Bound)下限为
图2给出了的MSE(均方误差)与其CRLB的性能对比图,从图中可以看出,两条曲线非常接近,且的MSE曲线始终位于CRLB的上方,说明估计结果是有效的,而且近似为最小方差无偏估计,准确度较高。
实施例
基于上述本发明的原理,图4示出了本发明提供的适用于WIA-PA网络时钟同步的频率偏移估计方法实现流程图。
步骤401为初始动作。在步骤402中,源节点构造信标帧的前导码等部分,更新信标帧内容在步骤403中,判断是否符合发送信标帧条件,若步骤403为否,则继续等待,若步骤403为是,则在步骤404中开始发送信标帧,
在步骤405中,子节点经过无线接收等待,检测到信标帧后,开始接收信标帧。在步骤406、407中,源节点发送信标帧到定界符SFD时,产生中断,然后在步骤408中源节点把发送时间戳加入到信标帧中预留的时间戳位置,由于IEEE 802.15.4协议在2.4G频段上的传输速度为250kbps,每个比特4微妙,当发送到时间戳部分时中断程序已经运行结束,时间戳已经加入预留位置,中断加入时间戳过程和发送过程互不影响。在步骤409中,源节点设定发送标志位为0,信标帧发送完成,返回至步骤401。在步骤410、411中,子节点接收信标帧时,在SFD中断记录下接收时间戳并将其保存,接着在步骤412设定接收标志位,信标帧接收完成。在步骤413中,子节点解析信标帧,获得发送时间戳,并将其保存在相应的数组中,接着在步骤414中,计算发送时间戳与接收时间戳的差值,作为本次时间调整量。在步骤415中,子节点记录收到信标帧个数,并判断周期数(收到信标帧个数)是否为给定的值N,若步骤415为否,则执行步骤417,使用时间调整量调整本地时钟,若步骤415为是,则在步骤416中,子节点利用记录的历史时间戳数据,根据本发明中给出的式(10)对相对频率偏移进行单独估计,然后在步骤417中,同时使用时间调整量调整本地时钟并补偿频率偏移。在步骤418中,更新历史时间戳数据,将周期数置0,返回至步骤401。
以上这些实施例应理解为仅用于说明本发明而不用于限制本发明的保护范围。在阅读了本发明的记载的内容之后,技术人员可以对本发明作各种改动或修改,这些等效变化和修饰同样落入本发明权利要求所限定的范围。