无线同步技术

2024-09-29

无线同步技术(共8篇)

无线同步技术 篇1

摘要:时间同步是无线传感网络中数据传输、节点定位和网络调度等技术的基础。由于低功耗、低复杂度和低带宽的限制,传统网络的时间同步技术无法满足无线传感网的要求。在介绍无线传感网中时间同步技术国内外研究现状的基础上,给出节点的时钟模型,归纳经典时间同步机制,总结萤火虫同步、混合时间同步、分布式时间同步等多种新型时间同步协议,并指出当前无线传感网中时间同步技术存在的不足。最后给出时间同步技术发展趋势的展望。

关键词:无线传感网,时间同步,时钟模型,萤火虫同步,分布式同步

0 引言

自20世纪90年代开始,无线传感网技术得到快速发展,被广泛应用在森林、建筑、军事战场及其他感知监测区域[1,2]。其中时间同步技术应用在无线传感网各个方面:监测数据通过数据融合技术向网络基站传输,节点为减少能量消耗,延长网络寿命需要进行定时的睡眠和唤醒[3];节点定位[4]、节点调度机制[5]以及节点工作模式的切换[6]等。

互联网中常用的网络时间协议NTP,是在层状结构中利用客户/服务器模式对欲同步的客户端进行同步,通过时间获取的多路径和上层服务器的冗余性来保证时间同步的可靠性[7]。由于NTP无法满足无线传感网络中节点功耗低、带宽有限以及无线传输的要求,所以无线传感网中时间同步技术需要在无线传输、节点计算能力较低和能量受限的前提下尽可能实现低开销和较低的复杂度。作为无线传感网技术中的一项关键技术,时间同步技术不仅需要提高时间同步精度来实现系统运行的可靠性,还需要减少时间同步开销,延长网络寿命,实现系统运行的可持续性。

早期的时间同步协议致力于直接得到节点间的时钟差值或者构建晶振的时钟模型,来实现节点间的时钟同步。近年来新型的时间同步协议通过物理同步方式或者改进时钟模型的方式来实现较高的时间同步精度;通过物理方式或者被动同步方式来实现较低的时间同步开销和对动态网络拓扑的兼容性。本文将对目前主要的时间同步协议进行总结和对比。

1 时间同步技术难点

节点间时钟差异主要来源于节点晶振的差异性。节点的上电时间不同带来节点不同的时间相位偏移,晶振因制作工艺和环境的影响会产生频率偏差和频率漂移,并进一步导致节点时钟的输出时间产生偏差和漂移[8],如图1所示。图1所示的三条节点时间输出曲线,分别表示受上电时间和晶振制作工艺影响产生的相位偏移和频率偏差的节点时间、理想晶振对应的系统时间以及环境因素和晶振老化因素引起晶振频率漂移下的节点时间。

无论是估计同一时刻不同节点的时间差值,还是通过对节点的晶振建立时间模型来实现时间同步,节点进行报文交互的过程中都必须面临报文时延的不精确性。报文时延主要是指同步报文从节点发送之后分别经过的发送延时、信道访问延时、传输延时、传播延时、接收延时和接收处理延时六部分延时[9],如图2所示。

接收节点通过处理同步报文得到节点间的时间差值或者节点间的相对时钟模型。

(1)发送延时:节点构建同步报文并将报文递交到MAC层所用的时间;(2)信道访问延时:同步报文从检测信道是否空闲到物理层开始发送报文所用的时间;信道访问延时随机性较大,受当前信道空闲度和网络负载状况的影响较大;(3)传输延时:发送节点通过天线向外传输同步报文所用的时间;(4)传播延时:节点在媒介中从发送节点传播至接收节点所用的时间;(5)接收延时:接收节点的物理层通过天线接收同步报文所用的时间;(6)处理延时:接收节点对报文进行处理的时间。

除了上述随机性较大的发送延时、信道访问延时、处理延时之外,传输过程中存在的噪声经常会在同步报文的时延中引入部分符合高斯或者指数分布的小时延。

2 经典的时间同步协议

根据节点同步过程中同步报文的传输方向和交互方式的差异,经典的时间同步协议可以归纳为三类:基于接收-接收的同步机制、基于发送-接收的双向同步机制和基于发送-接收的单向同步机制。

2.1 基于接收-接收的同步机制

基于接收-接收模式的同步机制由参考节点向其广播范围内的节点广播不携带任何时间信息的参考同步报文。收到参考同步报文的一个节点会向另一个节点发送接收到该参考同步报文的本地时间。此时另一个节点可以根据收到的接收时间和自身记录的接收时间得到参考同步报文到达不同节点的时间差值,即两个节点的时间差值[10]。基于接收-接收同步机制的时间协议工作机制如图3所示。

接收-接收模式下的同步协议以同一参考同步报文到达不同节点应当为同一个时刻为出发点,通过节点间交换接收时间得到节点间的时间差值,通过补偿该时间差值来实现节点间的时间同步。接收-接收模式下节点m和节点n的时间差值为:

基于接收-接收机制的代表时间同步协议为RBS(Reference Broadcast Synchronisation)[10]。该机制下的同步协议虽然能够实现较高的同步精度,但是需要大量的参考同步报文和节点间交互报文,同步开销较大。尤其是在多跳网络中,所需的报文数量和同步计算的复杂度均将成倍增加。另外,节点间报文交互是接收-接收机制下实现网络时间同步的前提条件,所以基于接收-接收的时间同步机制不适用于跳数较多和节点分布较为稀疏的网络环境中。

2.2 基于发送-接收的双向同步机制

在发送-接收的双向同步机制中,待同步节点向基准节点发送同步请求报文,基准节点收到请求报文之后,向待同步节点发送包含自身当前时间的同步应答报文。待同步节点收到此应答报文之后通过自身的本地时间估算出节点间的时间偏差Δ和传输延时d,并据此校准自己的时钟。

双向同步机制在较短时间间隔内,认为节点间的时间偏差不变及报文传输延时一致,通过两次同步报文交互获得节点间的时间信息。基于发送-接收的双向同步机制中,报文交互如图4所示。

基于发送-接收双向同步机制的时间同步协议主要包括:TPSN(Time-sync Protocol for Sensor Networks)[11]和TS/MS(Tiny Time Synchronisation Protocol/Mini Time Synchronisation Protocol)[12,13]。TPSN协议通过图4所示的四个时间值完成待同步节点的时间同步,同步公式为:

采用双向同步机制的TPSN具有较高的同步可靠性,同步性能也比较好。但是因为没有考虑节点的时钟模型和晶振存在的频率偏移,在利用TPSN协议同步之后,节点仍旧会产生新的时间偏差,因此TPSN必须较为频繁地进行同步操作。TS/MS同步协议算法在基于图4所示的同步的基础上采用线性节点时钟模型,通过对少量的时间点进行拟合处理便可得到节点的时间偏差和时钟漂移。TS/MS时间同步协议采用较少的时间点得到比TPSN更高的同步精度,属于轻量级时间同步算法,适用于能量受限制的无线传感器网络。

基于发送-接收双向同步机制的时间同步协议在具有较高同步可靠性的同时产生相对较大的同步开销。另外,双向时间同步协议对网络拓扑的扩展的兼容性较差,无法适用于动态拓扑网络中。

2.3 基于发送-接收的同步机制

基于发送-接收同步机制的时间同步协议主要由基准节点向网络中单向广播包含报文发送时间的同步报文。子节点接收到同步报文之后,根据估计报文延时和记录本地报文的接收时间,对自身时间进行同步调整。

基于发送-接收机制的时间同步方法主要包括DMTS(Delay Measurement Time Synchronisation)[14]、FTSP(Flooding Time Synchronisation Protocol)[9]等方法。DMTS同步算法通过估计同步报文的传输延时,将同步报文中携带的发送时间与同步报文传输延时之和作为子节点的全局时间,对子节点进行时间同步。FTSP忽略同步报文的传输延时,认为待同步节点接收同步报文和基准节点发送报文为同一时刻,即节点记录的接收时间和基准节点的发送时间为两节点间的偏差。通过对时间点进行拟合,利用线性时钟模型,得到待同步节点相对于基准节点的相对时钟偏移和相位偏移。

发送-接收的同步机制采用单向信息交互,同步精度较高,能适应网络拓扑动态变化。同时和双向时间同步机制相比,它能够有效地减少网络中的同步开销,减小网络能耗。但由于发送-接收同步机制采用泛洪广播机制,网络规模较大时,产生的同步报文偏多。另外FTSP协议中节点的多径效应使得节点的同步精度不能得到保证。

2.4 经典时间同步协议总结对比

经典的时间同步协议主要通过得到节点间的时间差异,更新待同步节点的时钟来实现节点间的时间同步。在以上三种同步机制中,发送-接收双向同步机制和发送接收-同步机制均没有考虑同步报文的传输时延;接收-接收同步机制基于接收节点间的时间对比,无需考虑参考报文传输时的发送延时、信道访问延时和传播延时,时间同步精度不受发送方影响。发送-接收双向同步机制因为采用双向报文传输,所以更适用于对可靠性要求较高的应用。发送-接收同步机制采用时钟模型,利用得到的时钟参数对节点的时钟偏移进行修正补偿,同步精度较高;和双向同步机制相比,单向的同步方式也更适用于动态变化的网络拓扑结构。表1通过对时间同步协议一些具有代表性的性能指标进行列举,对比了以上三种时间同步机制。

3 新型时间同步协议

经典的时间同步协议主要解决节点间的时间同步精度问题。当同步协议能够达到较高精度时,新型时间同步协议在进一步提高精度的同时开始着手降低网络中的同步能耗,并研究应用于特定环境下的时间同步协议。

3.1 基于物理脉冲耦合的同步协议

经典的时间同步算法无法完全消除传输过程中延时对同步精度的影响,所以难以做到对节点间同步精度的进一步提升。在基于物理脉冲同步机制的同步协议中,每个传感器节点被看作是完全相同的耦合振荡器,通过物理方式来消除报文传输过程中的延时,实现节点间的高精度同步。

基于物理脉冲耦合的同步机制以萤火虫同步算法为主。1988年,Buck对萤火同步闪烁的现象进行了总结,并对此现象进行了基于phase-advance和phase-delay两种模式下的时间同步建模[15]。1990年Mirollo和Strogatz提出M&S脉冲耦合振荡模型,在假定脉冲延时为零的情况下,耦合振荡系统可以达到同步[16]。1998年Ernst在前人的基础上对脉冲延时情况下的耦合振荡系统的同步状况进行了研究。当一个振荡器状态激发时,会和临近的振荡器产生电耦合,使得临近的振荡器产生一个耦合强度的状态增量。基于物理脉冲的同步机制原理如图5所示。

Ernst通过理论证明,在脉冲延时不为零的情况下,正的耦合强度无法使振荡器之间产生同步现象,只有在负的耦合强度情况下,振荡器之间才能取得同步现象[17]。文献[18]针对耦合振荡电路提出了一种面向不相同模块的物理脉冲振荡模型,该系统模型不仅可以实现多振荡器之间的同步,而且可以实现多频率振荡器之间的耦合同步,为分布式系统中节点的多频段通信提供了理论依据。虽然文献[19]对M&S系统在硬件设备上的应用做了测试,但是大多数基于物理耦合脉冲的同步协议因为要求网络中各个耦合器完全一致、脉冲延迟较小,在实现上有很大难度,所以基于物理耦合脉冲的同步机制仍停留在理论研究阶段。

3.2 基于调度的同步协议

基于调度的时间同步算法有TSMP(Time Synchronised Mesh Protocol)[20]、TSCH(Time-Synchronised Channel Hopping)[5]。基于调度的同步机制是在网络初期将所有节点间的工作时隙、工作信道、网络结构均进行分配,并通过广播报文的形式告知网络中所有节点,节点在各自分配的时隙和分配好的邻居节点之间进行报文交互。父节点在固定的同步周期向网络广播时间同步报文,子节点在安全时间内接收到同步报文,然后根据发送时间和接收时间调整自身的时钟;如果安全时间内没有收到时间同步报文,则认为子节点与网络失去同步。

基于调度的时间同步机制能够达到较高的时间同步精度,但是该机制需要网络层、MAC层以及物理层进行整体协作,不再是单纯的时间同步机制;而且一般需要多信道甚至多频段的复用,整体上较为复杂。

3.3 分布式同步协议

经典的同步协议中,基于发送-接收的双向时间同步算法无法解决无线传感网中节点加入、失效和移动引起的网络拓扑动态变化问题,也无法较好地减少网络中的累积同步误差。为了解决这个问题,分布式一致时间同步协议应运而生。

分布式时间同步协议主要通过节点周期性广播本地时间来实现网络内节点的时间同步。分布式同步协议主要包括:实现邻居节点高精度同步的梯度时间同步协议GTSP(Gradient Time Synchronization Protocol)[21]、分开校正频偏和相偏实现更可靠时间同步的平均时间同步协议ATS(Average Time Synch)[22]、节点广播时间到网络虚拟时钟的分布时间同步协议[23]等。

分布式时间同步协议不要求网络拓扑结构为层次拓扑,这使得分布式时间同步协议的鲁棒性较强,能更好地适应于拓扑动态变化的无线传感网。由于分布式同步协议主要基于全局节点进行时间扩散和不停地同步迭代,分布式时间同步协议的收敛速度相对于经典的时间同步算法来说比较慢;并且分布式时间同步协议中需要的同步报文数量较多,网络开销较大,不利于降低网络同步能耗。

3.4 混合时间同步协议

除了提高时间同步精度,延长同步周期进而减少网络同步能耗[19,20]之外,部分时间同步协议采用主动同步和被动同步相结合的混合时间同步机制[24,25]。

混合时间同步机制中,代表节点之间采用双向的时间同步机制。在同步报文交互过程中,代表节点广播半径中的邻居节点能够监听到双向同步报文,得到同步报文中的时间信息。通过分析报文中包含的两个节点的时间信息,监听节点实现被动的时间同步。混合时间同步机制只需要代表节点之间进行报文交互,多数节点只需要对周围环境中的报文进行监听,无需发送报文,较大程度地减少了网络中的时间同步报文数量。混合时间同步机制通过主动同步来保证网络同步精度,通过被动时间同步来节省网络同步开销,从而实现了保证同步精度和节约能耗的双重目标。但是由于被动时间同步主要通过节点监听周围环境中的报文来实现自身的时间同步,所以混合时间同步协议中节点的分布密度不能过小,适用的网络规模不宜过大。图6说明了混合时间同步协议的同步机制。图中2号和3号节点为代表节点,采用基于双向的主动时间同步机制。在2号代表节点和3号代表节点周围的其他节点通过监听2号和3号代表节点发送的包含时间信息的同步报文之后,被动地完成时间同步。

3.5 特殊用途时间同步协议

传统的时间同步算法无法适用于报文延时较长、节点移动较为频繁的水下应用,近年来针对水下传感网特殊用途的无线同步协议逐渐发展起来。水下应用的时间同步协议主要从估计报文延时方面来实现节点同步。文献[26,27]通过采用邻居间的相对速度和多普勒频移来计算节点的真实移动速度,得到精确的报文延时时间,并进一步通过双向时间同步机制和基于权重的最小二乘法来求得节点相对于参考节点的相对时钟参数。文献[26,27]在利用线性规划获得节点间相对时钟参数的同时均引入了第二次线性回归计算,利用初次回归运算得到的时钟参数和估算的节点移动速度进一度提高节点的同步精度。

3.6 新型同步协议总结

新型同步协议主要是基于非层次性网络结构,更少地受到网络中心节点的制约,能够更好地适用于网络拓扑结构动态变化的无线传感网。无论是通过物理方式抑或是主动、被动同步方式结合,新型同步协议和经典时间同步协议相比,能够较大地减少网络同步能耗。另外,新型时间同步协议在提高同步精度和降低网络开销的同时,开始对特殊应用条件下的时间同步进行探索。虽然新型同步协议和经典时间同步协议相比有较多的优点,但是新型时间同步协议的复杂程度一般较高,对节点有较高的性能要求;而且新型时间同步协议大多数仍旧处于理论研究阶段,并没有在实际环境中大量应用。

除了上述同步协议之外,新型的时间同步算法还包括利用外部时间源的外部梯度时间同步算法[21]、针对移动网络拓扑的时间同步算法[28]、利用卡尔曼滤波实现高精度时间同步的卡尔曼一致滤波时间同步算法[9]和基于最大似然估计的时间同步算法[30]等。

4 结语

通过对时间同步协议机制的分析可知,更高的网络时间同步精度,需要更频繁的同步报文交互,相应会产生更高的网络能耗。在一定程度上,网络时间同步精度和同步能耗存在矛盾。早期的时间同步机制主要得到高精度的同步性能;新型的时间同步协议在保证同步较高精度的基础上,主要通过不同方式降低同步开销,减少网络能耗。

针对无线传感网节点间时间同步的技术难点,本文从时间同步精度、网络同步开销、协议特点等多个角度对时间同步协议进行了评价和比较。通过本文对各种时间同步机制的分析可以看出,单向同步机制中的FTSP时间同步协议因为采用节点时钟模型,时间同步精度较高,能够通过时钟模型进行时钟误差补偿,但是存在的多径效应无法降低同步精度。相对于经典时间同步算法单纯提高同步精度的做法,新型同步算法可以根据不同要求实现不同的时间同步,其中包括:提高时间同步精度、降低网络开销、分布式同步和特定用途的时间同步。新型时间同步协议较好地平衡了时间同步精度和同步开销之间的关系,同时更好地适用于动态变化的网络拓扑,有较高的鲁棒性。

通过对时间同步协议的总结和对比,结合当前无线传感网中时间同步协议发展的现状,本文认为未来时间同步协议需要在以下方面进行进一步研究:

(1)时间同步协议的实际应用。当前时间同步协议的性能主要是通过人为搭建仿真环境,通过网络仿真工具对性能进行试验得到的。应用到实际无线传感网中的同步试验较少,无从得知通信环境较恶劣环境下,时间同步协议的实际性能。

(2)大规模网络的同步。随着无线传感网技术的不断应用,网络规模将不断扩大,大规模无线传感网的时间同步将显得尤为重要。当前的时间同步协议主要是针对中小型网络的时间同步,缺少对大规模网络中大量节点移动、失效后网络同步状况的研究。

(3)多跳误差累积效应。随着无线传感网规模的不断扩大,网络层数也会相应增多,节点的时间同步会出现较大的同步偏差。如何降低网络中多跳累积误差也是当前时间同步研究领域需要解决的问题之一。

无线同步技术 篇2

导航星座自主导航的时间同步技术

导航星座自主导航能够有效地减少地面测控站的布设数量,减少地面站至卫星的信息注入次数,降低系统维持费用,实时监测导航信息的.完好性,增强系统的生存能力.卫星时间同步是实现导航星座自主导航的关键技术之一,而星载原子时钟的频率稳定性能直接影响着卫星时间同步精度。本文基于星载原子时钟频率稳定性的Allan方差表达,建立系统状态方程,并以星间双向测量伪距差作为基本观测量,组成系统测量方程。从而,可以设计适用于导航星座卫星时间同步的Kalman滤波算法。系统仿真结果表明:通过滤波处理星间双向测距数据,不断地更新卫星时钟参数,能够实现星座卫星自主高精度时间同步。

作 者:帅平曲广吉 SHUAI Ping QU Guang-ji  作者单位:中国空间技术研究院总体部,北京,100094 刊 名:宇航学报  ISTIC PKU英文刊名:JOURNAL OF ASTRONAUTICS 年,卷(期): 26(6) 分类号:V474.25 P127.11 关键词:导航星座   自主时间同步   星间测距与通信   Kalman滤波   系统仿真  

无线传感器网络时间同步技术分析 篇3

无线传感器网络[1]( Wireless Sensors Network,WSN) 是在监测区域内部署大量传感器节点,以无线通信方式形成的单跳或多跳的自组织网络系统,以协同感知、采集和处理监测区域中被感知对象的信息,并发送给观察者。无线传感器网络能大大提高人类对物理环境的远端监视和控制能力,在国防军事、环境监测、智能交通、医疗保健、物流管理、农牧业生产等方面有着广泛的应用[2]。

无线传感器网络往往需要大规模地部署于野外环境,其节点的计算资源和存储资源都十分有限,与传统计算机网络相比较,无线传感器网络在网络设备、终端节点、工作环境等方面与传统网络存在显著差异,传统的网络管理无法完全应用于无线传感器网络。网络管理技术是实现无线传感器网络可靠、安全、有效运行的保障,而时间同步是无线传感器网络管理的关键技术之一[3]。

基于无线传感器网络的应用,如目标定位和追踪、协同数据处理、能量管理等都需要时间同步的保障。如在目标定位和追踪应用中,除了要检测目标的位置、速度、前进方向等信息外,还必须有采集信息的时戳,才能正确绘制出目标的运动轨迹。由于传感节点的能量有限,为了节约能耗以延长网络生存周期,传感节点大部分时间要处于休眠状态,在准备工作时需及时唤醒,这也要求各节点要有准确的时间同步。此外, 数据融合、通信信道复用等也都需要时间同步的保障。

目前,学术界和业界对无线传感器网络的时间同步技术进行了一定的研究,本文总结了无线传感器网络时间同步技术的研究现状,对3种不同时间同步机制的经典算法进行分析和比较,讨论了同步技术下一步研究的方向。

1时钟描述及时钟偏移

在无线传感器网络中,各传感节点分布于一定的物理区域内,因节点内部时钟晶振的频率偏差、各节点所处的工作环境差异、电磁干扰等原因,使得各节点时间出现偏差,所以节点间需要周期性进行本地时钟信息的交互,以保证各节点的时间一致性。只有整个网络内各节点时间达到同步,无线传感器网络的应用才能获得效果实现的强大理想保障。

1.1时钟描述

对于有n个传感节点的无线传感器系统,其第i个节点的时钟系统可用一个连续函数[4]来表示:

其中,Fi( t) 表示t时刻节点i的硬件时间,fi( τ) 表示t时刻节点i的硬件时钟变化率,Fi( t0) 表示t0时刻节点i的硬件时间,ξi( t) 表示节点i的硬件时钟因环境温度和干扰等产生的偏差。这是节点间时间偏差的硬件因素。

1.2信息传输延迟

除了硬件时钟可能存在偏差,节点对信息的处理,以及节点间进行的信息传递也会产生延迟,这部分延时必将会导致节点间的时间偏差。信息处理和传输过程的延时如图1所示。

在发送端,需要对检测到的信息进行处理,并按一定的协议标准封装成数据包,其中存在延时主要取决于处理器的性能和负荷,可能高达几百毫秒。排队延时是指封装后的数据包从进入传输通道直至开始发送的时间,这一过程主要取决于网络负载情况,可能从几毫秒到几秒。发送延时是发送节点将信息全面发出需要的时间。传播延时是数据包从发送节点到接收节点花费的时间,主要取决于两者的通信方式和距离。接收延时是接收节点全部接收到数据包的时间,接受延时是对收到的数据包进行处理,再传递给上层应用程序的时间。

延迟的产生也会导致节点的同步时间偏差,需要对信息传递过程的延时进行分析补偿,以消除同步信息传输过程的不确定性,提高系统的同步精度。

2同步技术研究现状

自从2002年J.Elson和K.Romer在学术会议Hot Nets上首次提出时间同步这一研究课程后,到目前为止,无线传感器网络的时间同步技术取得了一定进展,开发出了多种时间同步算法。这些算法可以分为基于接收者—接收者的时间同步算法、基于成对同步的双向时间同步算法、基于发送者—接收者的单向时间同步算法等3类。RBS[5]、TPSN[6]、FTSP[7]分别是这3类同步机制的典型代表算法,其他代表性的同步算法还有DMTS[8]、LTS[9]、TSync[10]、GCS[11]等。在此,则针对RBS、TPSN和FTSP这3类典型算法给出性能概述与分析。

首先,RBS算法是无线传感器时间同步技术领域的开创性成果。该算法通过指定的“时标”节点周期广播时间信息分组,位于广播域内的节点用各自的时钟记录接收到该分组的时间,随即接收节点再两两互换消息以确定节点之间的时钟偏移量,最终达到各节点的时钟同步。在Mote试验平台上,RBS可以达到29微秒的同步精度。但RBS同步误差与跳数的平方根成正比,并且仅能够实现在广播域内节点的局部时间同步,却难以应用于密集多跳的网络中。

其次,TPSN算法将整个网络按层次进行划分,指定根节点初始化分层消息后逐层扩散,发送者与接收者依次成对同步来实现整个网络内的时间同步。TPSN扩展性好,结果的同步精度也优于RBS,但其根节点的失效将严重影响同步过程。

第三,FTSP算法形成一个Ad-hoc网络结构来将全局时间从根节点转换到所有节点,对链路故障、动态拓扑改变有较强的鲁棒性,可以达到很高的同步精度,且算法的复杂度和功耗低,在实际需要中也已得到广泛应用。

目前,对于单跳网络的同步研究已趋于成熟,但由于同步误差的累积,导致单跳网络的同步技术难以扩展到多跳网络, 使得多跳网络的同步技术研究较为薄弱。若再考虑节点的移动性,则会极大增加同步技术的研究难度。因此,无线传感器网络的时间同步技术还有很大的研究空间。

3时间同步经典算法

3.1基于接收者—接收者机制的同步算法

RBS( Reference Broadcast Synchronization) 算法是基于接收者—接收者同步机制的典型同步算法,其实现思想如图2所示。

设每轮同步时,由发送节点向广播域内的节点发送m个同步分组信息,在同一个广播域内的其他节点收到同步分组信息后,则用各自的本地时钟记录收到的广播分组信息,之后接收节点再将各自的时间记录相互交换,通过比较,并计算时钟偏差。任意两个接收节点i和j的时间偏差表示为:

式中,Ti,k和Tj,k分别是接收节点i和j收到的第k个同步分组信息时的时钟。

各节点可通过式( 2) 得到相对其他所有节点时钟偏移量的平均值,经多轮同步获得接收节点之间的时间偏差值,并据此调节本地时钟实现时间同步。RBS算法允许节点构建本地的时间尺度,而且通过同步信息包的多轮发送,极具现实优势地消除传输过程中的时间不确定性; 另一方面,其缺点却在于当网络节点数量增多时,将会使得同步收敛时间大大延长。

3.2基于发送者—接收者机制的同步算法

TPSN( Timing-sync Protocol for Sensor Network) 算法是采用发送者-接收者成对同步机制的同步算法。该算法先产生网络的分层拓扑结构,并给每个节点分配一个标号,再进行节点间的成对报文交换。实际的研究设计中,一对节点的报文交换过程如图3所示。

由图3可知,节点1向节点2发送同步请求报文,报文信息中包含发送时的时戳T1。节点2在本地时间T2收到请求报文,并在T3时刻发送响应报文,在响应报文中包含了T1、 T2、T3时戳信息。节点在T4时刻收到响应报文,则节点1即含有了完整的T1~ T4的信息。研究中,就可以根据式( 3) 和式( 4) 分别算出节点1和节点2之间的时钟偏差和传输延时。 具体公式如下所示:

节点可以根据计算结果调到自身时间,按层次结构分层逐级执行同步,如此操作直至全网同步完成为止。TPSN算法容易扩展,同步计算量也较小,但该算法还不能应用于快速移动节点,而且也不支持多跳网络。

3.3基于发送者—接收者机制的同步算法

泛洪时间同步协议( Flooding Time Synchronization,FTSP) 是基于发送者—接收者机制的同步算法,通过发送节点广播同步信息,在广播范围内的接收节点根据同步信息中的全局时间,计算自身与发送节点间的时钟偏差,实现在广播范围内的接收节点与发送节点的时间同步。描述中实现的同步过程如图4所示。

FTSP算法对链路故障、动态拓扑改变具有较强的鲁棒性,可以达到很高的同步精度,且算法的复杂度和功耗低,在实际的研究发展中得到广泛应用。

4结束语

本文介绍了节点时钟的模型,分析了无线传感器网络中时钟偏差的原因,对目前时钟同步技术的发展现状进行总结, 分别介绍了基于接收者-接收者机制、基于发送者-接收者机制、基于发送者-接收者机制等3种同步类型中的典型算法。

在无线传感器网络中,时间同步不仅要关注同步精度,还要考虑算法复杂度、同步能耗、可扩展性、网络尺寸、鲁棒性等性能参数。目前对于单跳网络的同步研究已趋于成熟,能够满足大多数应用场合的现实需求,在多跳网络中则要进一步考虑同步误差累计、节点移动性的影响等因素。

摘要:时间同步是无线传感器网络管理的重要内容,同时也是无线传感器网络应用可靠运行的基础前提。本论文分析了无线传感器网络时钟偏差的根源,阐述了同步技术的发展现状,分别介绍了目前3种时间同步机制中的典型算法,探讨了无线传感器网络时间同步技术领域的难题,最后提出了今后在该领域的研究方向。

关键词:无线传感器网络,时间同步,典型算法

参考文献

[1]AKYIDIZ I F,VURAN M C.Wireless sensor networks[M].New York,USA:Wiley,2003.

[2]孙利民.无线传感器网络[M].北京:清华大学出版社,2005.

[3]林晓鹏.无线传感器网络及关键技术综述[J].智能计算机与应用,2015,5(1):81-83.

[4]王营冠,王智.无线传感器网络[M].北京:电子工业出版社,2012:182-193.

[5]ELSON J,GIROD L,ESTRIN D.Fine-grained network time synchronization using reference broadcasts[C]//Proceeding of the 5th Symposium on Operating system Design and Implementation(OSDI2002).Boston,Massachusetts,USA:USENIX,2002:147-163.

[6]GANERIWAL S,KUMAR R,SRIVASTAVA M B.Timing-sync protocol for sensor network[C]//First ACM Conference on Embedded Networked Sensor System(Sen Sys).New York,NY,USA:ACM,2004,233(3):138-149.

[7]MAROTI M,KUSY B,SIMON G,et al.The flooding time synchronization protocol[C]//2ndACM Conference on Embedded Networked Sensor System(Sen Sys’04).Baltimore:ACM,2004:39-49.

[8]Su Ping.Delay Measurement Time Synchronization for Wireless Sensor Networks[R].Santa Clara,USA:Intel Research Berkeley Lab,IRB-TR-03-013,2003.

[9]GREUNEN J V,RABAEY J.Lightweight time synchronization for sensor networks[C]//Proceedings of WSNA’03.San Diego,California,USA:ACM,2003:11-19.

[10]DAI Hui,HAN R.TSync:A lightweight bidirectional time synchronization service for wireless sensor network[J].ACM SIGMOBILE Mobile Computing and Communications Reviews,2004,8(1):125-139.

高精度无线同步技术研究与实现 篇4

同步技术在同步数据采集系统、数据通信、安全生产、产品测试等方面均有着广泛的应用。传统的同步技术主要是采用公共的时钟线,同步精度较高,但其一大弊端就是不同的工作环境下为工作人员的布线工作带来很大困扰。而无线同步技术则不必考虑这方面的问题。通过大量实验测试,分别研究了基于nRF24l01和rfw102两种无线同步技术,并在无线同步数据采集系统中进行了实际应用,获得了较好的应用效果。

2 基于nRF24l01无线同步技术

2.1 n RF24l01

n RF24l01是一款工作在2.4~2.5GHz世界通用ISM频段的单片无线收发器芯片。无线收发器包括:频率发生器、增强型ShockBurst模式控制器、功率放大器、晶体振荡器、调制器、解调器。输出功率、频道选择和协议的设置可以通过SPI接口进行设置。

功能描述:

(1)真正的GFSK单片式收发芯片。

(2)内置硬件链路层。

(3)增强型ShockBurst功能。

(4)自动应答及自动重发功能。

(5)地址及CRC校验功能。

(6)无线速率:1或2Mbps。

(7)SPI接口速率:0~8Mbps。

(8)125个可选工作频道。

(9)很短的频道切换时间,可用于跳频。

(10)与nRF24XX系列完全兼容。

(11)IO口可接受5V电平的输入。

(12)20脚QFN4×4mm封装。

(13)低工作电压:1.9~3.6V。

特殊功能引脚描述如表1所示。

2.2 应用

nRF24l01凭借其超低功耗、高可靠性(CRC校验和自动应答)、低廉的价格、较高的传输速率(2Mbps)在短距离无线通信中得到了广泛的应用。通过实验测试,将其应用在无线同步技术中同样具有简单可靠、精度高等优点。

将一块nRF24l01模块配置为发送模式,发送完数据生成发送中断,并配置为不产生自动应答;其余模块均配置为接收模式,接收完数据时产生接收中断,用接收中断作为各模块间的同步信号。每次发送一字节数据,接收端同时接收,通过观测发送完数据到接收完数据时间间隔,均在6us左右,接收端模块间产生接收中断时间差小于5us,同步精度很高。缺点是发送端每次发送数据(同步信号)时必须通过SPI口由MCU向nRF4l01传送写缓存指令和待传数据,导致这种无线同步技术跟随性相对较差,即发送端开始发送同步信号到接收端实现同步时间差相对较长,另外,由于同步过程中有软件的参与,不可避免地要影响同步精度。

3 基于rfw102无线同步技术

3.1 rfw102

rfw102是以色列的RFWaves公司推出的一种面向低端的短程RF通信无线收发芯片组。该芯片组是一种半双工、使用直接序列扩频技术(DSSS)的无线收发两用IC,它采用ASK调制方式,工作频率在2.4GHz,功耗非常低。该芯片组是短程无线收发IC,它由3个芯片组成,同时具有简单的全数字系列I/O接口。它的典型输出功率为2dBm,最高传输速率为1Mbps(RFW302可达3 Mbps),RFW102的传输距离较远(室内为20米,室外可达80至100米)。该芯片组包括一个印在印刷电路板上的天线,因而使用非常方便(只需外接少量的无源元件)。其性能与蓝牙相近,但价格却低得多。RFW102的主要性能参数如下:

(1)输出功率:-5~5dbm。

(2)接收灵敏度:-80dbm。

(3)待机电流:2.6uA。

(4)工作电压:2.7~3.6V。

(5)最大传输速率:1Mbps。

(6)工作电流:21mA(1Mbps);28uA(1Kbps)。

(7)工作温度:-10~70摄氏度。

(8)唤醒时间:20ns。

(9)同步时间:1us。

rfw102管脚功能如表2所示。

rfw102模块较nRF24l01模块最大的优点就是操作简单,无需传送指令。以发送模式为例,首先将任意一MCU的3个IO口分别与TX/RX、ACT和DATAIO脚相连,并将TX/RX和ACT脚分别配置为1,则进入发送使能模式,发送数据时每向DATAIO口写入一个上升沿,接收端即收到一个尖峰脉冲,接收端通过定时采样判决是否收到尖峰脉冲来判断接收到0或1。因载波频率为700KHz,故发送端向DATAIO写入数据的最高频率应不高于700KHz。

3.2 同步技术

基于rfw102简便的操作方式,软件指令非常简短,使其在无线同步技术应用中具有先天的优越性,有利于提高无线同步技术的跟随性、可靠性,提高同步精度。

rfw102无线同步技术的基本思想是频率变换,即通过发送端发送不同频率的信号,在接收端通过简单的信号处理,最终转换为同步数字信号输出。

接收端的信号主要有两种处理方式,即低通滤波方式和频压转换方式。下面分别作简单介绍。

(1)低通滤波的rfw102无线同步技术

这种处理方式的基本原理是发送端发送两种不同频率的高低频脉冲信号,如一为10KHz,一为500Hz,则接收端将相应的接收到频率为10KHz和500Hz的尖峰脉冲信号。接收信号经过一无源RC低通滤波器进行滤波,滤波后的信号再经过电压比较器(lm393)或施密特触发器,获得同步信号。图1为接收信号通过RC低通滤波(1KHz)以及施密特触发器(反相)获得的实际测量图形。

其中,黄色波形图为发送端输入的10KHz和500Hz的原始方波,蓝色波形图为rfw102接收到的信号再经低通滤波、反相施密特触发器整形后获得的波形。由图1可以看出,由于RC滤波电路的充放电特性,导致获得的同步信号较发送端会产生1ms左右的延时。

基于这种方式的同步技术信号处理简单,同步精度同样较高,高达5us,但由于RC电路的充放电特性,接收端脉冲变换会产生一定的延时,同样导致这种同步技术的跟随性能不是很好。

(2)频压转换的rfw102无线同步技术

基于频压转换方式的rfw102同步技术能够很好地解决跟随性能不好的问题。

其基本原理是采用一种高频率频压转换器,将输入的不同高频率信号转换为不同的电压值,再经过电压比较器转换为数字信号输出,输入信号频率越高,则转换延时越低,当分别输入500KHz和400KHz频率的信号时,转换时间不超过2.5us,由此使得从开始发送到实现同步整个过程不超过5us。

AD650是美国AD公司生产的单片VF、FV转换集成电路,可实现精密的电压/频率、频率/电压转换。AD650具有外接电路简单、转换频率高、非线性误差低、输人方式灵活、集电极开路输出及模拟地和数字地分开等显著特点,其V/F转换最高频率可达1MHz,非线性误差低于0.1%,满度频率为10KHz时,最大非线性误差为0.005%,输人方式可选用单极性电压输入、双极性电压输入、差分电压输入及电流输入;输入信号范围和满度输出频率可通过外接的电阻、电容来调整;输出采用集电极开路形式,可通过外接电源及上拉电阻实现CMOS和TTL不同逻辑电平的输出。

图2为rfw102接收到的信号经AD650频压变换后获得的实际波形图。

其中,黄色波形图为发送端输入的500KHz和400KHz方波脉冲,蓝色图形为接收端rfw102接收到的信号经AD650频压转换后获得的波形。此时获得的同步信号延时主要为rfw102传输延时以及AD650频压变换所产生的延时,约2—3us,远小于低通滤波方式所产生的延时。

4 结语

分别介绍了基于nRF24l01和rfw102的无线同步技术,整个实现过程简单方便、可靠性高、同步精度高达5us。其中尤其以基于rfw02频压转换方式的同步技术性能最佳,整个同步过程在5us内完成。

参考文献

[1]2.4GHz单片高速2Mbps无线收发芯片nRF24l01.http://www.freqchina.com.

[2]RFW102 ISM Transceiver Chipset.http://www.rfwaves.com.

[3]Voltage-to-Frequency and Frequency-to-Voltage ConverterAD650.http://www.analog.com.

[4]牛天兰,丁彦闯.V/F,F/V转换器AD650及其应用.大连铁道学院学报.

美国研制出双向同步无线广播技术 篇5

斯坦福大学计算机科学和电子工程副教授菲利普·里维斯表示,大多数无线网络在使用时,每个设备必须打开,由于接收的信号会被无线电广播自己发送的信号所覆盖,因此要么发信息(说),要么接收信息(听),而不能同时发送(说)和接收(听)信息。如果无线电广播像我们的大脑一样,能同时听和说会怎样呢?基于这一设想,里维斯和三名同事经过了几个月的尝试,终于研制出双向同步无线广播技术。

里维斯表示,当无线电广播发送信号时,其发送信号的强度是其可能从其他无线电广播接收到信号的几百万倍甚至几十亿倍。但如果无线广播接收机能过滤自己发射出的信号,那么,它或许可以听到微弱的接收信号,而新技术使得每个无线电广播能确切知道其正发射的内容以及其应过滤的内容。

这项技术对未来的通讯网络意义重大。尽管目前手机网络已使用户能同时听话和交谈,但由于手机网络的运行环境非常昂贵且需要复杂规划,因此,不适用于其他无线通讯网。

同时发送和接收信号最明显的作用是让发送的信息增加了一倍,科学家可借此改进家用和办公网络,让其更快、拥堵更少。另外,这项技术还可以克服空中交通面临的一个重要问题。在目前的系统中,如果两驾飞机以同样的频率同时呼叫地面控制台,那么,没有一个信号能被接收,信号受阻可能导致飞机发生碰撞,而新系统能有效解决这一难题。

无线同步技术 篇6

关键词:无线Mesh网络,同步,时隙利用,数据包连发

0 引言

无线Mesh网络是一种多跳网状的宽带无线网络, 具有覆盖范围广、带宽高、鲁棒性强等特点, 在机动指挥与应急通信方面有着广阔的应用前景。

无线Mesh网络多采用异步组网技术[1,2,3,4,5,6,7,8,9,10,11,12]。该网络在节点个数较少并且节点之间距离较近时的性能比较理想, 但当网络规模扩大时, 所有节点因竞争信道导致了网络吞吐量急剧下降, 无法实现高速的端到端无线数据传输, 业务的服务质量也就难以保证。

目前出现了一种基于多方向天线阵列的同步无线Mesh网络 (以下简称为同步无线Mesh网络) [13]。该网络除通过定向天线实现了节点之间的远距离数据传输外, 还采用了同步组网技术, 通过精准的时隙划分, 网络内所有节点的通信都被安排在合适的时隙中, 避免了节点因竞争信道而导致网络吞吐量的急剧下降, 通过高效的时隙分配策略则进一步提高了网络的吞吐量。另外, 网络中节点之间具有一定的父子关系, 网络管理也变得更加简单。

现有同步无线Mesh网络采用了一个数据时隙 (以下简称为基本时隙或时隙) 内单一数据包的收发机制, 即每个节点在一个时隙内只发送或接收一个数据包, 当底层调制速率较低时, 该数据包的长度较短, 其收发时间会占满整个时隙, 即时隙的利用率较高;而当底层调制速率较高时, 该数据包的长度受到底层无线接口最大传输单元长度 (MTU) 的限制, 其收发时间不能占满整个时隙, 因而时隙内会有很大的浪费。

为在底层高调制速率下提高时隙利用率, 本文对同步无线Mesh网络下的数据包连发技术进行了研究, 提出了设计方案并对性能进行了对比分析。

1 同步无线Mesh网络数据包连发技术

数据包连发技术涉及到时间帧结构、包类型、单时隙内的数据包连发技术与多时隙内的数据包连发技术。

1.1 时间帧结构

时隙浪费与时隙长度有关。当时隙较长时, 高调制速率下会产生时隙内的时间浪费;当时隙长度设计得过小时, 由于协议控制包的开销而导致时隙内数据收发利用率下降, 另外, 也给底层同步平台设计带来难度, 系统资源消耗也因此增加。因此, 时隙长度应主要参考系统在实际使用时最大可能出现的底层调制速率值, 同时保证底层同步平台能够实现, 而系统资源消耗也能够接受。

时间帧结构如图1所示。

时间帧结构中具有以下两种类型的时隙:

(1) Hello时隙。Hello时隙的时间长度为1个基本时隙长度, 用于网络内节点向未入网节点提供接入服务。

(2) 数据时隙。数据时隙内的每个基本时隙用于实际数据传输。

时间帧结构是同步无线Mesh网络内各节点协调工作的基础。

1.2 包类型

节点在每个时隙内的通信都会涉及各种包的交互, 数据通信则与以下包相关:

1.2.1 轮询包

该包用于父节点调度子节点, 该包还可以进一步细分为如下两类:

(1) 父子轮询包

当父节点向子节点发送数据时, 父节点会在时隙开始时首先向子节点发送一个父子轮询包, 该包发完后, 父节点再接着向子节点发送数据包。

该包中含有父节点本次即将连发数据包的个数与父节点规定的时隙合并的个数。

(2) 子父轮询包

当父节点接收子节点的数据时, 父节点会在时隙开始时首先向子节点发送一个子父轮询包, 该包发完后, 父节点将等待接收子节点发送的数据包。

该包中含有父节点规定的时隙合并的个数。

1.2.2 确认包

当数据包为需确认数据时, 接收完数据的节点将立即向对端发送一个确认包, 否则接收完数据的节点将结束该时隙内的收发动作。

1.2.3 数据包

数据包格式如图2所示。

第一层包头的内容与节点之间点对点基本通信相关, 如基本数据包类型、目的节点地址、源节点地址、序列号、后续数据包个数等。

第二层包头, 由同步无线Mesh网络协议中不同的功能模块所定义, 如模块类型、该模块内的数据包类型、数据净荷长度、Qo S标记。

数据净荷为以太网帧。

校验在数据发送时由无线网卡添加。

1.3 单时隙内的数据包连发技术

1.3.1 功能说明

为提高时隙利用率, 发送节点应在每个时隙内尽可能多地发送数据包。

每个时隙内的数据包连发如图3所示。

1.3.2 最多连发的数据包个数与计算时机

(1) 单时隙内数据包最多连发个数

发送节点通过计算后应在一个时隙内尽可能多地发送数据包, 但需要规定最多发包个数, 规定最多连发数据包的个数不超过16个, 一个时隙内连发数据包的个数一般为2或3。

(2) 轮询包与确认包的发送时间

轮询包与确认包的发送时间 (单位:μs) 为固定值, 可按式 (1) 计算:

各值的含义如下:

包长为无线接口数据长度, 单位为字节;B为PLCP头部中服务类型的比特数;Nw为尾比特数;NDBPS为一个OFDM符号含有的比特数, 6 Mb/s时的值为24, 9 Mb/s时为36, 12 Mb/s时为48, 18 Mb/s时为72, 24 Mb/s时为96, 36 Mb/s时为144, 48 Mb/s时为192, 54 Mb/s时为216。

(3) 每个数据包的发送时间

每个数据包的发送时间在数据包被加入到数据发送队列时便已计算好, 仍按公式 (1) 计算。

(4) 单时隙内数据包最多连发个数的计算时机

发送节点在当前时隙开始时计算该时隙内最多能够发送多少个数据包。

1.3.3 序列号与确认机制

为所有数据包安排序列号并加入确认机制。接收节点根据发送节点所指示的数据包连发个数进行接收、检验序列号连续性并对实际收到的最后一个数据包进行确认。

接收节点刚刚收到的数据包中的序列号如果与收到的上一个数据包的序列号不连续, 则丢弃刚刚收到的数据包。

接收节点在当前时隙的后两个基本时隙单位开始时刻设定确认包等待定时器, 该定时器设定在该处可以保证接收节点能够在25 km距离条件下将确认包发送给发送节点。接收节点如果在当前时隙内收到了发送节点的所有应发数据包后, 则立即向发送节点回复一个确认包, 并取消确认包超时定时器;否则, 接收节点在确认包等待定时器超时后再向发送节点回复一个确认包。

1.3.4 涉及到的参量

数据包连发过程中涉及到以下参量:

数据包最大连发个数。一个时隙内所发送的数据包个数与多个连续时隙所发送的数据包个数都不应超过该值, 数据包连发个数过多, 失败重传的次数也会增加, 网络性能反而下降。

最大时隙合并个数。该值表示某个发送节点与某个接收节点之间共享的连续时隙数, 在连续时隙里可以持续收发数据包。

发送节点应发数据包个数。发送节点在当前时隙内计算出能够发送的数据包个数。

发送节点实发数据包个数。发送节点在当前时隙内实际发送的数据包个数, 在正常情况下, 发送节点实发数据包个数与发送节点应发数据包个数相等。

接收节点应收数据包个数。接收节点在当前时隙内应该接收到的数据包个数。

接收节点实收数据包个数。接收节点在当前时隙内实际接收到的数据包个数。

发送序列号。发送节点发送数据时在每个数据包中添加的序列号, 该序列号按模递增。

接收序列号。接收节点接收数据时从每个数据包中获得的序列号, 在正常情况下, 接收序列号应等于发送序列号, 即接收序列号也是按模递增。

1.3.5 父节点流程

父节点在当前时隙内的处理流程如图4所示。

(1) 父节点在当前时隙中断到来时开始确定是发送数据还是接收数据, 即确定父子节点之间数据传递的上下行关系。

(2) 当父节点向子节点发送数据时, 父节点根据1.3.2节中的各种时间值计算出当前时隙内能够发送的数据包个数并将该值填到父子轮询包中。另外, 时隙合并个数设为1, 表示仅在当前一个时隙内进行数据包连发。

(3) 父节点向子节点发送父子轮询包, 在父子轮询包发送成功后, 父节点继续向子节点连续发送所有数据包。

(4) 父节点会在所有数据包发送完毕后等待接收子节点的确认包, 等待接收确认定时器的超时时间设在当前时隙结束时。

(5) 父节点如果收到了子节点发送的确认包后, 根据确认包中的确认序列号判断出已经被子节点成功接收的数据包, 将这些数据包从发送队列中删除并释放内存。

(6) 父节点在等待确认定时器超时后仍没有收到子节点发送的确认包时, 根据已发送数据包的发送次数决定在后续时隙中是否重发, 如果这些数据包已经达到最大发送次数, 则将这些数据包从发送队列中删除并释放内存, 否则在后续时隙中继续重发。

(7) 当父节点准备接收子节点发送的数据包时, 父节点将时隙合并个数设为1, 并将该值填到子父轮询包中。

(8) 父节点向子节点发送子父轮询包, 在子父轮询包发送成功后, 父节点等待从子节点接收数据包。

(9) 父节点接收的数据包如果序列号不正确, 父节点则将这些数据包从接收队列中删除并释放内存, 否则, 父节点将在发送确认定时器超时前接收完子节点发送的所有数据包。

(10) 当发送确认定时器超时后, 父节点针对已收到的最后一个数据包向子节点发送确认包。

1.3.6 子节点流程

子节点在当前时隙内的处理流程如图5所示。

(1) 子节点在当前时隙中断到来时等待接收父节点发来的轮询包。

(2) 子节点如果收到的是子父轮询包, 子节点则记录时隙合并个数, 并计算出当前时隙内能够发送的数据包个数。

(3) 子节点向父节点连续发送所有数据包。

(4) 子节点会在所有数据包发送完毕后等待接收父节点的确认包, 等待接收确认定时器的超时时间设在当前时隙结束时。

(5) 子节点如果收到了父节点发送的确认包后, 根据确认包中的确认序列号判断出已经被父节点成功接收的数据包, 将这些数据包从发送队列中删除并释放内存。

(6) 子节点在等待确认定时器超时后仍没有收到父节点发送的确认包时, 根据已发送数据包的发送次数决定在后续时隙中是否重发, 如果这些数据包已经达到最大发送次数, 则将这些数据包从发送队列中删除并释放内存, 否则在后续时隙中继续重发。

(7) 子节点如果收到的是父子轮询包, 子节点准备接收父节点发送的所有数据包。

(8) 子节点接收的数据包如果序列号不正确, 子节点则将这些数据包从接收队列中删除并释放内存, 否则, 子节点将在发送确认定时器超时前接收完成父节点发送的所有数据包。

(9) 当发送确认定时器超时后, 子节点针对已收到的最后一个数据包向父节点发送确认包。

(10) 如果子节点没有收到父节点的轮询包, 则子节点在当前时隙内什么也不做。

1.4 多时隙内的数据包连发技术

多时隙内的数据包连发技术, 又称时隙合并技术, 该技术是对单时隙内数据包连发技术基础上做出的功能提升, 发送节点通过在多个连续时隙内连发数据包, 减少了中间时隙内的轮询包与确认包的个数, 从而进一步提高时隙利用率。多时隙内的数据包连发示意如图6所示。

多时隙内的数据包连发技术中的最多连发的数据包个数与计算时机、序列号与确认机制、涉及到的常量与变量、父子节点的处理流程与单时隙内的数据包连发技术均相同, 这里不再赘述。它们的不同之处在于:

(1) 父子节点需要计算多个连续时隙内最多能够发送多少个数据包。

(2) 父子节点将多个连续时隙中除第一个时隙以外的后续所有时隙中的状态机取消, 仅执行第一个时隙中的状态机。

2 理论性能对比

现分别对单跳网络在使用单时隙内的数据包连发技术前后的理论性能进行对比:

2.1 约束条件

(1) 每个时间帧内有980个数据时隙, 即时间帧使用效率为98%。

(2) 在实验室内或近距离条件下进行对比, 忽略传播时延, 忽略实际平台所带来的各种时延。

(3) 轮询包与确认包均始终以6 Mb/s的调制速率发送, 按公式 (1) 可算出它们的发送时间均为48μs。

(4) 发送节点分别以6~54 Mb/s调制速率发送数据包。

(5) 不使用组包功能, 但使用分段功能。

(6) 同步无线Mesh网络协议数据包净荷为以太网帧, 而以太网帧最大长度为1 518 B, 因此发送节点能够发送的最大数据包长度为1 518+40+4=1 562 B。

2.2 理论性能对比

理论性能对比情况分别见表1~表7。

2.3 结论

(1) 在6~12 Mb/s调制速率下, 一个时隙内只能发送一个数据包, 因此单时隙内单包发送与单时隙内多包发送的性能相同。

(2) 在达到18 Mb/s调制速率或以上时, 采用单时隙内多包发送的时隙使用效率仍为90.4%, 其性能明显高于单时隙内单包发送的性能。

3 结语

无线同步技术 篇7

近年来, 无线传感器网络得到了快速的发展, 无线传感器网络实用与战场通信、抢险救灾和公共集会等突发性、临时性场合。保持节点之间时间上的同步在无线传感器网络中非常重要, 它是保证无线传感网络中其他通信协议的前提, 如可靠的数据融合, 精确的目标跟踪, 低功耗MAC协议的设计, 无线传感网络中大部分节点在没有工作的情况下都是处于休眠状态, 只有在需要的情况下才处于激活状态, 以及整个网络中为了保证数据可靠的传输, 减少数据碰撞, 在MAC层可直接采用TDMA机制, 通过节点子节点个数动态分配时隙, 而这些的实现, 就必须保持节点之间的同步, 因此高效的同步机制就成了低功耗MAC协议设计的前提[1,2]。

2002年, Elson等人在HotNets这影响未来网络研究发展方向的国际权威学术会议上首次提出无线传感器网络时间同步的研究课题以来, 得到了国内外研究学者的高度重视, 目前也有相当多的研究成果被提出来, 并且单跳误差也控制在了微妙级, 功耗也相当较低, 可以符合大部分的环境需求。NTP协议是目前因特网上采用的时间同步协议标准, 虽然精度高, 当该协议的前提是网络中的链路失效非常小, 整个网络采用的是稳定的拓扑结构, 功耗大, 采用的是有线传输, 显然不适合于功耗、成本受限制的, 结构不稳定的无线传感网络中[2]。GPS系统也可以提供高精度的时间同步, 但它的信号穿透性差, GPS天线必须安装在空旷的地方, 还有功耗较大, 成本高, 所以不适合于无线传感网络中[3]。

目前关于无线传感网络的同步机制研究中, 主要有集中式同步机制, 以及分布式一致同步机制, 因有集中式同步机制采用的是首先由根节点发起的拓扑生成树阶段, 在同步阶段, 则采用相应的同步机制进行同步, 节点只能与上一级节点同步, 无法与根节点直接同步, 必然导致单跳累加的影响, 整个网络的拓扑性差, 全网同步收敛速度慢。随着无线传感网络规模的不断扩大, 节点体积不断缩小, 集中式同步机制的运用越来越受到限制。而分布式同步机制具有扩展性好, 抗毁性好等特性, 通过邻居节点的信息融合, 使节点的时间同步到一个虚拟的时间上, 不会因为根节点失效而导致全网重新同步的问题, 收敛速度快。

1时间同步技术

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

目前大部分作者都把无线传感器网络中时间同步不确定性的主要的影响因素归结为以下几个因素, 如图1所示。

(1) 发送时间:

发送方用于构造分组并将分组转交给发送方的MAC层的时间。主要取决于时间同步程序的操作系统调用时间和处理器负载等。

(2) 访问时间:

分组到达MAC层后, 获取信道发送权的时间。主要取决于共享信道的竞争, 当前的负载等。

(3) 传送时间:

发送分组的时间, 主要取决于报文的长度等。

(4) 传播时间:

分组离开发送方后, 并将分组传输到接收方之间的无线传输时间。主要取决于传输介质、传输距离等。

(5) 接收时间:

接收端接收到分组, 并将分组传送到MAC层所需的时间。

(6) 接受时间:

处理接收到分组的时间。主要受到操作系统的影响。

1.2节点之间的时钟模型

在传统的计算机系统中, 时钟通常是用晶振来计时的, 即c (t) =kt0tw (t) dt+c (t0)

其中:w (t) 是晶振的角频率, k是依赖于晶振物理特性的常量, t是真实时间变量;c (t) 是构造的本地时钟, 间隔c (t) -c (t0) 被用来作为度量时间。目前大体上把它分为三种模型, (1) 时钟有界模型, 符合该模型的时钟偏移具有上下界。 (2) 漂移变化有界模型, 即时钟漂移率是有界的, (3) 时钟速率恒定模型, 即节点的硬件时钟与真实时间Ck (t) 的关系可以表示为Ci (t) =aikCk (t) +mik, 式中aik, 为节点之间的相对漂移量, mik为节点之间的相对偏移量。如果两个节点之间完全同步, 则相对漂移量aik为1, 相对偏移量mik为0。

晶体振荡器的实际频率通常与它标定的频率之间存在一定的偏移, 即存在时钟频率的漂移。然而晶体振荡器会受到老化, 周围环境, 如温度、湿度的影响, 一段时间后必然存在时钟漂移, 节点之间的时钟必然也会不相同。

1.3传统的集中式同步机制

TPSN算法[4], 分成两个阶段, 第一阶段为层次发现阶段, 第二阶段为同步阶段。首先由根节点发起拓扑数生成阶段, 在同步阶段采用发送者—接收者的双向成对同步算法, 在MAC层则采用的加入时间戳的技术, 进而估算出节点之间的传输延迟与时钟偏移, 该作者在Mica 节点上测试过, TPSN平均单跳误差为17.61us, 然而TPSN算法并为考虑时钟漂移对同步精度的影响。RBS同步机制[5]采用的是接收者—接收者的同步算法, 较大程度的消除了发送方对同步精度的影响, 同级节点通过交换接收到上一级节点发来的同步消息, 进而修改自己的时钟, 在多跳网络中, RBS算法采用多次广播同步消息, 接收节点根据接收到同步消息的平均值, 同时采用最小平方线性回归方法进行线性拟合以减小同步误差, RBS虽然同时考虑了偏移与漂移的影响, 然而对漂移的考虑并未充分, RBS平均单跳误差为6.29us, DMTS算法[6], 是基于发送者—接收者的单向时间同步算法, 同步原理:当发送节点在检测到通道空闲时, 给广播分组加上时间戳t0, 从而排除了发送节点的处理延迟与MAC层的访问延迟。并假设发送报文的长度为NA个比特 (包括前导码与同步字) , 传送每个比特的时间为t, 而接收者在接收完同步字后, 记录下此时的本地时间为t1, 并在调整自己的本地时间记录之前记录下此时的时刻t2, 这时接收节点为了与发送节点达到时间上的同步, 可以调整接收节点的时间改为t0+tNA+ (t2-t1) , DMTS平均单跳误差为151us。LTS协议[7]是基于发送-接收同步机制基础上发展而来, 提出了集中式和分布式LTS多跳时间同步算法, 在集中式协议中, 首先把网络组成广度优先生成树拓扑结构, 并沿着树的每条边进行单跳成对同步, 参考节点的子节点同步完成后, 又以该节点为参考节点, 采用同样方式续继同步下去, 只到同步完成。HRTS算法[8]不再采用广度优先生成树的边, 采用的是广度优先生成树非叶子节点个数的线性函数, 相较于LTS协议, HRTS算法以牺牲一定的精确来降低了整个网络的功耗。BTS同步方法[9]类似于HRTS算法, 也是先建立广度优先成生树拓扑结构, 只不过BTS采用的是时间转换技术, 以达到整个网络的时间同步, 不同于HRTS直接对同步节点的本地时间进行修改而得到全网的同步。, 使得同步报文个数降为HRTS协议的2/3。

1.4协作同步技术

协作同步技术, 采用的是空间平均技术, 不再单纯的从单跳同步机制上进行改进, 而是通过信号叠加原理, 使同步基准节点能够把同步消息直接发送到远方待同步的节点, 使远方节点直接与基准节点同步, 消除了同步误差单跳累加的结果, Hu A等人针对节点密度较高的网络提出了一种协作同步算法, 基本思想是参考节点根据同步周期发出m个同步脉冲, 其一跳邻居节点收到这个消息后保存起来, 并根据最近的m个脉冲的发送时刻计算出参考节点的第m+1个同步消息发出的时间, 并在计算出来的时刻同步与参考节点同时发送第m+1个同步消息, 由于信号叠加, 因此同步脉冲可以发送到更远的节点[10][11]。在文献[12]中作者证实了协作同步误差的方差与节点密度呈反比关系。因此节点密度越高同步误差也会越小。协作同步的核心思想仍然是属于集中式协议, 要求整个网络中节点密度较高。

1.5分布式一致全网同步机制 (Distributed Consensus Time Synchronization: DCTS)

文献[13]中作者提出了分步式同步机制, 整个网络无需构造由根节点发起的生成树。只需要每个节点之间使用分布式广播同步机制。作者采用的时钟模型为时钟速率恒定模型, 即节点的硬件时钟与真实时钟满足线性关系。节点之间的同步原理:假设有两个节点i与j之间可以直接的通信, 节点i在X (tk) 发送一个同步包Ρ (tk) , 同步包包含了X (tk) , 两个节点之间的时钟漂移αij (tk) , 传播延迟为Γji (tk) , 节点j在U (tk) 时刻接收到Ρ (tk) , 这时节点j向节点i返回发送消息, 消息中包含计算出的αij (tk) Γji (tk) 以及回复时刻。节点时钟偏移Οij (t) 为两个节点的时钟差, 则节点j采用递推最小二乘法得到时钟漂移, 如公式 (1) 所示, 时钟偏移如式 (2) 所示。

αij (tk) =minl=-k-1λl-1-k[U (tl+1) -U (t1) -α[X (tl+1) -X (tl) ]]2 (1)

Οji (tk+1) =Οji (tk) + (tk+1-U (s) ) α¯ji (tk) -1α¯ji (tk) (2)

式中α¯ji (tk) =αij (tk) αji (tk) 文献[13]作者在MICA2节点上通过组网试验, 得到平均同步精度为2us, 最大误差为6us。

在多跳同步过程中, 文献[13]有一个限制条件, 就是每一个圈形环内, 两两偏差迭代和为零。

通过两两节点成对构成一个关联矩阵, 通过最小二乘法多次迭代得到节点vi之间的本地时间如式 (3) 所示, 初始v1=0, Ni为节点i的直接邻居节点, 具体迭代过程详见文献[13]。从公式 (3) 中我们也可以看出节点只需要知道邻居节点的信息, 无需全网的消息。文献[14]作者对文献[1]再次详细的分析后, 得出采用最小二乘法多次迭代后收敛于一个值V*。文献[14]通过同步迭代过程映射到马尔可夫链的状态转移上, 得出了收敛性, 见公式 (4) , D0为根节点的度, k为图的连通度。详细分析过程见文献[14]所示, 从而我们也可以看出收敛速度与网络连通度, 根节点的邻居数, 网络规模等有关。文献[15]中作者也将分布式一致的无线传感器网络时间同步协议的收敛和加速问题映射到马尔可夫链的状态转移过程, 但是排除了连通度对收敛速度的影响, 得出收敛速度与节点邻居数与网络规模有关, 并通过100节点组网实验得出可以降低25%的迭代次数。

|Νi|vi-jΝivj=jΝixij (3)

nD0log1εv (0) <Τε (A, v (0) ) <n2k2log1εv (0) (4)

文献[16]中作者提出的萤火虫同步机制, 也是分步式同步机制, 并且考虑信息延迟与丢失对同步精度的影响。通过先前的信息延迟来调整当前的开火时间, 同步思想是把本轮同步周期内接收到的同步消息按照实际需要排序发送。文献[16]通过24个节点组网试验, 得出同步精度大约在100us。然而文献[16]作者并未考虑漂移的影响, 而且在MoteLab上测试, 同步周期相对较小, 通信开销太大了。文献[17]作者提出的分布同步机制ATS充分考虑了偏移与漂移的影响, 并在MAC层采用了时间戳技术, 作者采用的时钟模型为时钟速率恒定模型, 假设节点j在本地时刻Τj (t1) 广播同步数据包, 一跳内节点i接收到数据包, 记下时刻为Τi (t1) , 则节点i就可以得到一组数据 (Τi (t1) , Τj (t1) ) 。同样的方法节点i可以得到另外一组数据 (Τi (t2) , Τj (t2) ) 。作者得到公式 (5) , 式中ρη (0, 1) 是调整系数, η+ijηij得到的新值, 作者得到在测量无误, 漂移常量的情况下, 节点i与j之间的漂移αij=limkηij (tk) 。节点需要的存储数据量少, 只需存储当前得到的漂移估计值ηij。在整个网络图为强连通的条件下, 可以允许部分数据在传输过程中丢失, 但是节点i至少与邻近节点有一次数据传输漂移补偿估计αi, 通过迭代后, 则作者得到整个网络漂移收敛于一个值αv, mini (αi (0) ) αvmaxi (αi (0) ) , 则整个网络就得到一个统一虚拟漂移, 通过再次计算后作者也得到整个网络中的偏移, 具体证明过程见文献[17]。文献[17]作者在Tmote Sky nodes上对ATS算法组网试验, 通过4个节点组网试验, 作者得到开始偏差呈现锯齿形, 到一定时间收敛于一个值 (90-150us) 。在大概30分钟后实现全网同步。

ηij+=ρηηij+ (1-ρη) Τj (t2) -Τj (t1) Τi (t2) -Τi (t1) (5)

相比于与往的分布同步机制 (FO-DCTS) , 节点时钟的更新只与当前的同步消息相关, 文献[18]作者提出了 (SO-DCTS) 同步机制, 不仅使用当前得到的同步消息, 而且结合以往迭代产生的数据来更新节点的时钟。每个节点必须同时存储当前与先前迭代得到的来自邻居节点的消息。每个节点时间的更新采用式 (6) 所示原理。式 (6) 中, ti (k) 为节点i第k次迭代的本地时钟, Ni为节点i可靠通信的节点集合, ε是常量, γ是每次迭代选择的常数。初始条件为节点i的时钟偏移, 作者通过节点组网试验得到SO-DCTS收敛速度大约是FO-DCTS的两倍速度, 当然这篇文章作者并为考虑到时钟漂移, 以及节点失效情况下对精度与收敛速度的影响。

ti (k) =ti (k-1) +εjΝi[tj (k-1) -ti (k-1) ]-γεjΝi[tj (k-2) -ti (k-2) ] (6)

1.6梯度同步机制 (Gradient Clock Synchronization:GCS)

麻省理工学院的Rui Fan, Nancy Lynch两位作者第一次提出了GCS (Gradient Clock Synchronization) 同步算法[19], 在移动自组织网络中, 往往是邻居的节点联系比较密切, 共同完成某些任务, 而相距较远的节点往往很少交互消息, 因此相距较远的节点可以允许误差大一点, 如数据融合中, 同个父节点的字节点需要精确的同步, 但是较远的节点, 往往不是同一个父节点, 可以允许误差大一点, 作者根据这些情况提出了梯度同步算法。时钟模型:假设, 节点i与j为网络中的两个节点, 信息从节点i到节点j的传播时间为0到dij, dij记做节点i到j的距离。网络的直径为D=maxijdij, 假设节点之间的最小距离为1。记节点i在时刻t时的硬件时钟Ηiα (t) =0thiα (r) dr, hiα (t) 为晶体振荡频率。并假设硬件时钟漂移ρ是有界的, 即0≤ρ<1。假设存在节点i与时刻t, 使得1-ρhiα (t) 1+ρ。节点计算出的时钟记为Liα (t) , 主要是通过自身的硬件时钟与接收到其他节点的时钟计算的。在通常的时间同步算法 (CSA) 基础上, GCS提出了两个要求条件。f (dij) 为任意两个节点i与j之间的最大时钟差。条件1:∀itr>0:r2Liα (t+r) -Liα (t) 。条件2: ∀tii:|Liα (t) -Ljα (t) |f (dij) 。通过以上两个条件, 作者计算出了时钟偏差的最低边界满足f (D) =Ω (d+logD/loglogD) , 因此得到节点之间的时钟偏差不止与两个节点之间的距离有关, 还与整个网络的规模大小有关, 因此越近节点同步效果越好, 远离节点同步效果不好。文献[20]中提出在直径为D的网络中任何两个节点之间的偏移量是Ο (d+D) 。任何的GCS算法, 目的就是确定邻居节点之间的最小的时钟偏差。文献[20]中要求任何GCS算法A满足, ∀it:Li (t) A (Li (t) , Ψi (t) ) maxjΝiLj (t) , Ψi (t) 用来存储接收到邻居节点的最大时钟值, 当前逻辑时钟值大于存储的值, 则更新, 否则保持不变。文献[21]中作者经过改进后, 最大的偏移上限为Ο (logD) 。然而大部分的GCS算法并未充分考虑最大时钟漂移率与传输不确定性对偏移上限界取值的影响, 文献[22]中作者充分的考虑这两方面的影响, 作者得出了时钟漂移率总是在[1-Ο (ε) , 1+Ο (ε) ]范围内变化, 传输延迟为Ω (Τε) , 其中ε与T为最大时钟漂移率与最大传输延迟。作者经过改进后, 在给定的一个周期内, 最小化的消息之间的交换量, 只需要存储少量的邻居节点发来的消息。文献[22]中作者也说明了邻居节点之间的偏移量Ω (log1ρD) 是不可避免的。静态的同步机制在移动自组织网络中的运用是有限的, 文献[23]中作者提出了GCS算法在动态网络中的偏移边界问题, 整个网络中节点是动态的, 可以加入与离开网络。作者得出了偏移上界是Ορn, 静态机制中的边界Ω (log1ρD) 在动态中是不适合的, 因为邻居节点随时有可能离开, 或距离变化掉。文献[24]中作者提出了GTSP (Gradient Time Synchronization Protocol) , 每个节点通过接收邻居节点的时间信息修正自己的时钟, 整个网络无需建立一个生成拓扑数, 也无需参考节点, 主要是实现直接的邻居节点之间保持高精度的同步精度, 同时考虑漂移与偏移补偿, 漂移补偿采用式 (7) 补偿, 式中xi (t) 为逻辑时钟漂移率, Ni是由节点i的邻居节点构成, 通过这种补偿机制, 所有节点的逻辑漂移将趋近一个值xss。时钟偏移补偿则采用公式 (8) 补偿, θi为时钟偏移。Li (t) 为节点当前的逻辑时钟值。文献[24]作者在Mica2节点上对协议进行仿真实验, 作者通过20个节点实验, 作者在MAC层采用加入时间戳技术, 得出邻居节点之间的平均同步精度达到4.0us, 整个网络的平均同步精度达到14.0us。

xi (tk+1) = (jΝixj (tk) ) +xi (tk) |Νi|+1 (7)

θi (tk+1) =θi (tk) +jΝiLj (tk) -Li (tk) |Νi|+1 (8)

2总结与展望

本文较详细的分析了近几年来无线传感器网络中时钟同步技术的研究进展情况, 充分分析了目前关于无线传感器网络中时钟不确定的来源, 节点之间采用的时钟模型, 以及分析了经典的同步机制, 传统的集中式同步机制, 虽然同步精度也到达了非常高, 然而由于整个网络的拓扑性差, 全网同步收敛速度慢, 大部分都存在单跳累加对同步精度的影响, 在结构不稳定, 规模较大的移动自组织无线传感器网络中的运用越来越受到限制。协作同步机制虽然避开了节点单跳累加的影响, 然而其核心思想仍然是属于集中式协议, 且要求整个网络中节点密度较高, 节点具有相同的同步脉冲, 这些条件的限制使得其在无线传感器网络中的运用有一定的局限性, 梯度同步机制, 核心机制属于分布式同步机制, 该机制具有扩展性好, 抗毁性好, 整个网络同步收敛速度快等特性, 通过邻居节点的信息融合, 使节点的时间同步到一个虚拟的时间上, 不会因为根节点失效而导致全网重新同步的问题, 非常适合于无线传感器网络中, 当然从以上的分析中, 我们也可以看出在MAC层加入时间戳, 可以提高同步精度, 以及同时考虑偏移与漂移的影响, 不但可以提高精度, 而且可以延长整个网络的同步周期, 减少整个网络的功耗。

无线传感器网络时钟同步研究 篇8

节点集成了传感器、处理器、无线通信模块并以Ad Hoc方式构成大规模传感器网络,网络中节点协作完成数据采集、融合处理, 通信发送等任务。作为分布式自治系统,无线传感器网络具有高灵活性、强鲁棒性及高智能度等优点,可被广泛应用于国防、环保、交通、医疗, 以及制造业等多个领域。时钟同步是无线传感器网络的一项重要支撑技术,传感器网络自身协议的运行及基于其上的应用,如:标记数据采集时间、时分多址接入、协同休眠、定位、数据融合等都需要网络中节点的时钟保持同步。无线传感器网络中节点众多,节点的能量、带宽、处理能力等相对受限,这就要求时钟同步算法必须具有扩展性好、低通信开销、低计算复杂度等特性。

(二)无线传感器网络节点时钟不同步的原因及研究现状

几乎所有的节点的计时装置都有相同的结构:有一个特定频率的晶体震荡器(Oscillators)和一个计数寄存器(Counter register),没出现一个震荡脉冲寄存器就增加1。只需要访问寄存器,并读取计数值就可以知道当前时间,两个计数的间隔就是时间分辨率(Time resolution)。

节点i在世界协调时间t时刻的硬件时钟(Hardware clock)值表示为Hi (t) 它是一个提供单调上升的时间值的计数寄存器的抽象。计算这个值的本地软件时钟(Software clock) iL (T) 的方法是对硬件时钟做仿射变换:Li (T) =θi iHi (t) +ϕi。ϕi是相位漂移(Phase shift),θi是漂移率(Drift rate)。通过改变ϕi和θi可以影响寄存器的计数,从而达到矫正时钟的目的。时钟不同步主要是由下三点造成的:1、所有节点都是在不同时间开启的,实质上是随机开启的。如果没有矫正它们的初始相位ϕi也应该是随机的。2、晶体震荡器的实际频率通常与它的标称频率有一点微小的偏差。频率偏差可能是因为晶体不纯净引起的,也可能是因为震荡器随压力、温度等环境因素发生变化而引起的。对于现有的无线传感器网络节点,时钟漂移范围在1×10-6~100×10-6之间。1×10-6的偏差对应每11.6天差1s, 100×10-6的偏差对应于大约每2.78h差1s。3、震荡器的频率也是时变的。有短期变化—由温度变化、电源电压变化、空气压力变化等因素引起的;还有长期变化—由震荡器老化引起的。

由上面讨论可得出:即使两个节点有相同类型的震荡器,以相同的逻辑时钟同时启动,随着时间的增加,两个节点的硬件时间差也可能变的非常大。所以,在网络中需要时钟同步协议。

目前,无线传感器网络有多种时钟同步协议,其中以RBS (Reference Broadcast Synchronization) 、Post-facto和TPSN (Timing-Sync Protocol for Sensor Networks) 为代表。RBS和TPSN能够提供较高的同步精度, 但需要较高的通信消耗,并且其通信消耗和参与同步的节点数量成正比,在大规模的网络内性能受到较大制约。Post-facto为事件发生后的同步方法,但在多个事件同时发生时容易引起系统时钟的不稳定。

(三)基于PCO同步模型的无线传感器网络时钟同步算法

针对大规模无线传感器网络,传感器网络的节点数目众多,分布密集,节点数量和密度都要比Ad hoc网络高几个数量级,因此算法应具有很强的可扩展性。本文提出了基于PCO (Pulse-Coupled Oscillators) 同步的无线传感器网络时钟同步算法。PCO模型早期是用于研究大群的萤火虫为何能有组织的同步发光。后来由Pekin建立了PCO模型从数学观点上证明了该模型的收敛性。下面简单介绍一下Pekin的PCO同步模型。

网络中每个节点都模拟RC放电过程的方式发送脉冲,其脉冲能量状态可表示为x (t) ∈[0, 1]。那么节点i的脉冲能量状态可表示为ix (t) 。取τi为ix (t) 到达发射脉冲的阈值,那么xi (τi) =1。此时节点瞬间发送一个时间脉冲q (t) 与此同时把ix (t) 置0,也就是xi (τi+) =0。当其他节点收到时间脉冲q (t) 时,如果还没有到达发射脉冲的阈值那么就使x=x+ε,称ε为耦合系数。此函数为周期性函数,既可表示为:fi (θi) =xi (τi+φiT) ,iφ∈ (0, 1]如图1所示。

在Pekin的模型当中这个方程称做震荡动力方程。iφ为节点i的瞬时时间。这个函数必须为一个单调增加的上凸函数,且必须满足x (t) ∈[0, 1]、φ∈[0, 1]、f'>0、f''<0。

在Pekin的PCO模型当中这个函数可以被设计为:

也就是IF (integrate-and-fire)模型。因此可以得到:

其中C=1/ (1-e-γT) , 而T=γ-1ln[S0/ (S0-γ) ]其无噪声状态下的模型如图2所示。

同步过程:

假设有N个无线传感器网络节点随机分布在一个固定区域中,并期望各个节点都与主节点(也就是汇聚节点sink-node)进行同步。此网络为单跳网络,也就是说网络中任何节点都可以收听到节点1的信息。网络中每个节点都在初始时建立一个节点标号i。网络中各个节点都以PCO形式记时fi (θi) =xi (τi+φiT) ,当主节点到达阈值同时发送一个时钟脉冲q (t) 。当其他节点收到时钟脉冲q (t) 时,如果还没有到达发射脉冲的阈值那么就使x=x+ε。当一定周期后,整个网络中节点的PCO计时方程会达到同步。子节点以PCO脉冲达到阈值为中断信号,为避免数据拥塞,以此中断延时ims发送测量到的数据到主节点并在数据包中附带节点标号i。由于无线传感器网络是基于数据的网络,主节点通过对收到的数据进行处理便可使全网络可达到时钟同步。

(四)仿真结果

代入适当的参数γ=2、ε=0.1、T=1到公式1,可以得到f (φ) =1-e-21-e-2φ。假设每个节点的初始时钟是随机分布的。用计算机模拟100个节点的情况,以任一个节点为基准进行返回映射分析,时间轴以震荡的自然周期为单位,每个周期10等分,每小段同步了的节点数目用竖条表示,如图3所示

开始阶段有少数节点同步,系统缓慢的组织变化,随后同步加速形成,在t=7T时系统形成同步。下面以同一组初始状态进行分析,考虑各个参数对同步过程的影响。

1.同步化速率正比于γ

当γ取0.2, 0.25,…, 2时,从整体趋势上来看同步化时间随γ的增大而减小,即同步化速率随γ的增大而增大。如图4所示

2.同步化速率正比于耦合系数ε

当ε取0.020, 0.025,…, 0.100时,从整体趋势上来看同步化时间随ε的增大而减小,即同步化速率随ε的增大而增大,如图5所示。

(五)结论

基于PCO模型的无线传感器网络时钟同步算法可以有效的达到无线传感器网络时钟同步的要求,本文只考虑单跳网络的情况,但要达成整网时钟同步, 时钟同步算法还必须提供多跳同步支持。在后续研究中还需要对本算法进行扩展来实现实际网络的应用。但基于PCO的同步机制的可扩展性极好, 可以有效的消除上层干扰,可以只通过物理层的相互作用有效的完成同步,因此它非常适用于大规模无线传感器网络的时间同步。

参考文献

[1]Hong Yao-Win, Scaglione Anna.A scalable synchronization protocol for large scale sensor networks and its applications[J].IEEE Journal on Selected Areas in Communications, 2005, 23 (5) :1085-1099.

[2]Hu A, Servetto S D.Algorithmic aspects of the time synchronization problem in dense sensor networks[J].ACM/Kluwer Journal on Mobile Networks and Applications (MONET) , 2005, 10:491-503.

[3]Mirollo R E, Strogatz S H.Synchronization of pulse-coupled biological oscillators[J].SIAM Journal on Applied Mathematics, 1990, 50 (6) :1645-1662.

[4] (德) 卡勒, 维里西.无线传感器网络协议与体系结构.邱天爽, 等译.北京:电子工业出版社, 2007.1:173-175.

上一篇:小学数学与引导教学下一篇:储罐底板