微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > MCU和DSP > 无线传感网络时间同步研究进展与分析

无线传感网络时间同步研究进展与分析

时间:05-27 来源:单片机与嵌入式系统 点击:

引言

保持节点之间时间上的同步在无线传感器网络中非常重要,它是保证数据可靠传输的前提。NTP协议是目前因特网上采用的时间同步协议标准,功耗大,采用有线传输,不适合用于功耗、成本受限制的无线传感网络中。GPS系统也可以提供高精度的时间同步,但它的信号穿透性差,GPS天线必须安装在空旷的地方,功耗也较大,所以不适合无线传感网络。

Elson等人2002年首次提出无线传感器网络时间同步的研究课题以来,已有相当多的典型时间同步算法,主要可以分为以下几类:基于发送者一接收者的双向同步算法,典型算法如TPSN(Timing-Sync Protocol for Sensor Networks)算法;基于发送者一接收者的单向时间同步算,典型算法如FTSP(Flooding Time Synclaronization Protocol)算法、DMTS(Delay Measurement Time Synchronization)算法;基于接收者一接收者的同步算法,典型算法有RBS(Reference Broadcast Synchronization)算法。

近年来根据以上几种典型同步算法,还有人提出了分簇式的层次型拓扑结构算法,以及结合生成树等来提高整个网络的性能,如LTS(Li-glatweight time synchronization)算法、CHTS(Cluster-based Hierarehical Time Synchronization)算法、CRIT(Chained-Ripple Time Synchronization)算法、PBS(The Pairwise Broadcast Synchronization)算法、HRTS(Hierarchy ReferencingTime Synchronization Pro-toc01)算法、BTS(Broadcasttime synchronization)算法、ETSP(Energy-efficient Time Synchronization Protocol)算法等。

然而,无论以上同步算法怎样发展,精度如何提高,整个网络功耗怎样降低,都是基于单跳时间同步机制。随着无线传感网络的运用与发展,传感节点体积不断缩小,单跳距离变小,整体网络规模变大,同步误差的累积现象必将越来越严重,目前也有比较新的同步算法,试图尽量避开单跳累加来解决这些问题,如协作同步。

1 时间同步

1.1 时间同步不确定性的影响因素

时间同步不确定性的主要的影响因素如图1所示。


发送时间:发送方用于构造分组并将分组转交给发送方的MAC层的时间。主要取决于时间同步程序的操作系统调用时间和处理器负载等。
访问时间:分组到达MAC层后,获取信道发送权的时间。主要取决于共享信道的竞争、当前的负载等。
传送时间:发送分组的时间,主要取决于报文的长度等。
传播时间:分组离开发送方后,并将分组传输到接收方之间的无线传输时间。主要取决于传输介质、传输距离等。
接收时间:接收端接收到分组,并将分组传送到MAC层所需的时间。接受时间:处理接收到分组的时间。主要受到操作系统的影响。

1.2 典型时间同步算法分析

1.2.1 TPSN算法分析

TPSN算法采用的是层次型的网络结构,是基于发送者一接收者的双向同步算法。分成两个阶段,第一阶段为层次发现阶段,第二阶段为同步阶段。T1、T4用来记录同步节点的本地时间,T2、T3用来记录参考节点的本地时问。同步节点A在T1时刻向参考节点B发送一个同步请求报文,报文中包含了同步节点的级别和T1。当参考节点B收到报文后,记录下接收时刻T2,并立即向同步节点A回复一个同步应答报文,该报文中包含了参考节点B的级别和T1、T2及回复时刻T3。同步节点A收到参考节点的回复后,记下时刻T4。假设来回报文的传输延迟相同都为d,且m为同步节点在T1时刻两者之间的时偏,且设来回时偏相同,由T2=T1+m+d,T4=T3-m+d可得到:

则在T4时刻,若在同步节点A的本地时间增加修正量m,就能达到同步节点A与参考节点B之间的同步。

1.2.2 RBS算法分析

RBS算法是基于接收者一接收者的同步算法。首先参考节点广播一个参考分组,当同步节点A收到这个分组,记下自己的本地时钟为T21,当同步节点B收到这个分组时,也记下自己的本地时钟为T22,然后同步节点A与同步节点B交换本地时钟T21与T22,这时其中一个节点只要根据时间差值m=T21-T22,修改自己的时钟就能达到与另一个节点之间的同步。在多跳网络中,RBS算法采用多次广播同步消息,接收节点根据接收到同步消息的平均值,同时采用最小平方线性回归方法进行线性拟合以减小同步误差。

1.2.3 DMTS算法分析

DMTS算法是基于发送者一接收者的单向时间同步算法。当发送节点在检测到通道空闲时,给广播分组加上时间戳t0,从而排除了发送节点的处理延迟与MAC层的访问延迟。并假设发送报文的长度为NA个比特(包括前导码与同步字),传送每个比特的时间为t,而接收者在接收完同步字后,记录下此时的本地时间为t1,并在调整自己的本地时间记录之前记录下此时的时刻t2,这时接收节点为了与发送节点达到时间上的同步,可以调整接收节点的时间改为t0+t·NA+(t2-t1)。

从参考文献中,可以看出,文章作者在加州大学伯克利分校的Mica节点上测试过,TPSN平均单跳误差为17.61μs,DMTS平均单跳误差为30μs,RBS平均单跳误差为6.29μs,TPSN平均4跳误差为21.43μs,DMTS平均单跳误差为151μs,RBS平均4跳误差为9.97μS。

1.2.4 其他算法分析

LTS协议是基于发送~接收同步机制发展而来,提出了集中式和分布式LTS多跳时间同步算法。LTS协议首先把网络组成广度优先生成树拓扑结构,并沿着树的每条边进行单跳成对同步。参考节点的子节点同步完成后,又以该节点为参考节点,采用同样方式继续同步下去,直到同步完成。

单跳成对同步采用TPSN同步方法。成对同步的次数是边数的线性函数。Hui Dui等人提出来的HRTS利用了广播的特性,只需要一次同步过程可以完成一个单跳组网所有节点的同步,进一步降低了LTS协议的功耗。HRTS算法不再采用广度优先生成树的边,采用的是广度优先生成树非叶子节点个数的线性函数。相较于LTS协议,HRTS算法以牺牲一定的精确来降低了整个网络的功耗。

BTS同步方法类似于HRTS算法,也是先建立广度优先成生树拓扑结构,只不过BTS采用的是时间转换技术,以达到整个网络的时间同步,而HRTS直接对同步节点的本地时间进行修改,得到全网的同步,同步报文个数降为HRTS协议的2/3。

PBS同步算法的思想是参考节点与簇首节点之间采用双向同步方法,与TPSN相似,其他节点(在两个节点的通信范围内)可以侦听到同步消息,就可以根据接收者一接收者同步方法同步。类似于RBS同步,PBS同步的前提是每个同步节点必须在簇首节点的通信范围之内。

ETSP算法主要采用的是设置门槛值N来选择同步算法,当父节点的子节点小于或等于N时,采用接收-接收(RBS)同步模式,否则采用发送-接收(TPSN)同步模式。N值的选择采用来计算,式中m=Rx/Tx,Rx为节点的接收次数,Tx为传播次数。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top