APP下载

针对无线测温网节能时间同步的新方法

2014-07-01刘力

河南科技 2014年4期
关键词:测温时钟偏差

刘力

(安徽中烟工业公司阜阳卷烟厂,安徽阜阳 236000)

针对无线测温网节能时间同步的新方法

刘力

(安徽中烟工业公司阜阳卷烟厂,安徽阜阳 236000)

时间同步对无线传感器网络的应用至关重要。由于无线测温网工作环境的限制和网络以及节点的自身因素,使得现有的时间同步方法对于网络的适用度不高。为解决这些问题,笔者提出了一种精度高、功耗低、方便快捷、可适用于无线测温网的节能时间同步方法。网络时间同步的任务主要由主节点完成,从节点仅完成必要的任务。主节点根据影响实时时钟偏差的因素,计算出一个周期内与从节点之间的实时时钟误差是否在允许范围内,由此判断是否将校正信息发送给从节点进行相应的同步操作。而为了减少从节点空闲侦听的能耗和避免从节点间出现网络碰撞现象,从节点采用周期性自唤醒工作模式,且为了保证良好的同步精度,采用秒脉冲更新补偿操作。最后通过仿真验证该方法的可行性与其优势。

无线测温网;节能;时间同步

1 引言

低速无线个域网(Low Rate Wireless Personal Area Networks, LR-WPAN)作为无线传感器网络的重要分支,是一种覆盖范围相对较小的无线网络,是为实现活动半径小、业务类型丰富、面向特定群体、无线无缝连接而提出的新兴无线通信网络技术。能够有效地解决“最后几米电缆”的问题,从而将无线联网进行到底。其中采用一种节点装置作为主控,其他节点装置作为从属的无线测温网络节点以其结构简单、数据率较低、通信距离近、功耗低、成本低等优点被广泛地应用于现代化工业、农业等需要进行温度监测的领域。

在无线测温网络中,从属节点装置通常采用电池供电,且不易更换,因此,节能问题便是网络节点设计中的首要问题。一种典型的解决方案就是对节点使用休眠与唤醒机制,在多数情况下使节点处于低功耗睡眠状态,仅在合适的情况下将其唤醒进行工作。为此,就需要全网节点的状态切换连贯一致,保持一个统一的时间标准,以便进行准确的操作。不仅如此,网络的数据融合、测距定位等协议和应用都依赖于时间同步。而时间同步的目的就是使网络中的节点拥有相同的时间基准,即不同的节点可以保持相同的时钟,使网络中各节点可以协同工作。然而由于网络中的节点都是独立工作的,都有自己的本地时钟,且不同节点的晶体振荡器会因环境以及老化等因素出现偏差,即使在某一时刻所有节点时钟都已达到同步,在另一时刻节点时钟也会出现偏差,引起网络碰撞、丢包、延时甚至瘫痪。因此,时间同步就需要尽量消除或减少上述由温度引起的晶体振荡器的误差而导致的实时时钟的偏差,然而如何在有限的通信和存储资源、有限的计算能力和能量的约束下消除实时时钟的偏差,在保证网络鲁棒性的前提下实现网络节点的时间同步就变得非常重要。

目前现有的时间同步方法主要包括以下三类:基于全局的时间同步、基于广播的时间同步和基于精准时钟芯片的时间同步。传统的时间同步协议NTP、GPS均是基于全局的时间同步的典型代表,其基本思想都是使网络保持与世界标准时间UTC同步。其中NTP协议是在Internet上广泛使用的协议,达到了10ms的同步精度,但由于它只适用于结构相对稳定、链路很少失败的有线网络系统且消息开销较大而不适合无线网络。GPS方法是通过给每个节点配备GPS模块来获得精准的时间,使网络节点时间与标准时间一致,但由于GPS信号穿透性较差、且成本高、体积大、能耗大,使得GPS不能广泛适用于无线测温网络的节点上。RBS、TPSN是基于广播的时间同步算法,其中RBS算法用“第三方广播”的思想让参照节点利用物理层广播周期性地向网络中的其他节点发送参照广播,广播域中的节点用自己的本地时间记录各自的包接收时间,并相互交换时间信息,因而进行同步,该方法完全排除了发送方对同步的影响,达到了较高的同步精度。但算法具有较大的消息开销,对于n个节点的单跳节点,需要O(n2)的时间交换。TPSN算法通过分层的拓扑结构实现网络所有节点的同步,缺点是计算量大,能量开销大。基于精准时钟芯片同步主要是通过对节点本地时钟的校正来进行时间同步。通常的方案是采用带温度补偿的实时时钟芯片对由温度引起的晶体振荡器的频率误差进行补偿,校正节点本地时钟来实现时间同步,然而由于此类芯片的功耗较大不能满足网络低功耗的设计要求,同时时钟的校正以单个节点为标准,精度不高,并不能实现与全网节点的真正同步。

由上述可以知道,由于无线测温网工作环境的限制和网络以及节点的自身因素,使得现有的时间同步方法对于网络的适用度不高,且采用现有的时间同步方法存在精度低、功耗大等缺点。因此,提供一种高精度、低功耗且方便快捷可适用于无线测温网的节能时间同步方法成为目前亟需解决的问题,笔者提出建立主从节点的控制模型,并通过计算主从节点的温度差导致的频率误差,由主节点在从节点自唤醒时向其发送时间频率调整信息,达到主从节点时间同步。该方法可动态补偿由温度引起的时间偏差且低功耗,时间快同步,适合无线测温网络对时间同步的要求。

2 时间同步模型的设计

如图1所示建立无线测温网络模型,其中包括一个主节点和N个从节点,主节点与PC机通过串行通信相连,采用固定电源供电;从节点与主节点通过无线通信相连,采用电池供电。因此,网络的时间同步就是要保证网络在稳定可靠协同工作的前提下尽可能地节约从节点的能量消耗,延长网络的生存周期。

图1 无线传感器网络模型

据此,系统时间同步模型的设计如下。

2.1 确定相对同步计算表的建立阶段

首先需确定主节点的初始化同步周期,因节点所选择的晶体振荡器的老化率特性是呈对数变化规律,可用数学表示为:

式中:a为初始老化,通常由时间确定;b为瞬时老化率。

从国外的一些老化率指标的制定来看,没有准确的规律性。根据上述晶振老化呈对数变化的公式,我们设定:a=2074.73,b=-610,代进公式计算可得结果如下表:

故根据无线网络节点时间同步的精度要求以及能量节省等方便考虑,主节点建立以年为周期的初始化同步模式,设定5年的同步周期模式,每一年进行一次初始化同步,从而消除晶体振荡器因老化带来的时钟误差,提高时间同步的精度。

其次需确定同一型号批次的主从节点晶体振荡器频率偏差固有系数a和T0:测量不同温度T下晶体振荡器频率偏差y= Δf/f0,然后利用最小二乘法[5]拟合出类似如图2所示的晶体振荡器频率偏差的抛物线方程:

取某固定温度带入即可得出抛物线系数a和转折温度点T0;b为晶体在转折温度点的频率偏差。

图2 晶体振荡器频率随温度变化曲线图

最后从节点为了有效减少空闲侦听的能耗,根据所述主节点设置的网络同步周期m,设定以m为周期的自唤醒模式,即从节点每隔m周期唤醒一次进行数据传输与同步工作;且为了避免节点间出现碰撞导致的网络崩溃现象,根据其每个周期内可进行的最大工作时间m/n,设定每次自唤醒后的工作时间为m/2n;为了保证更高的同步精度,从节点采用秒脉冲更新补偿操作进行节点的时间同步。(注:秒脉冲更新补偿:记录写入进行时间同步补偿的时间t0,判读补偿时间Δt的正负,若Δt>0,则从节点相对主节点是超前,从节点等待Δt-t0时间后再进行一次脉冲更新;若Δt<0,则从节点相对主节点是滞后,从节点等待1/f0-Δt-t0时间后再进行一次脉冲更新。)

2.2 同步阶段(设定网络同步时间周期m)

该阶段的主要任务是主节点对从节点逐个进行时间同步,最终使网络达到整体同步。在该阶段,从节点以m为周期进行自唤醒,工作m/2n个时间周期,向主节点发送数据,主节点则进入定时中断时间同步工作模式,工作m/n个时间周期,接收并利用从节点以m为周期自唤醒发送的数据信息计算频率误差差值:

其中yx表示主节点在第x时刻的频率误差,yxx表示从节点在第x时刻的频率误差,a为晶振频率误差的二次系数,T0为晶振频率误差的转折温度点,Tx为主节点在第x时刻的温度,Txx为主节点在第x时刻的温度;频率误差累积代数和计算模型:∑Δy=Δy1+Δy2+…+Δyk;主节点通过比较∑Δy与设定频率误差差值允许阈值Y的大小来决定是否向从节点发送数据;若|∑Δy|<Y未超过阈值则不发送数据至从节点,仅将累积误差差值∑Δy带入下一个m周期该从节点的同步计算中,若|∑Δy|>Y超过阈值则计算出补偿时间:

并将Δt发送至从节点,在发送结束后将∑Δy清零。从节点利用接收到的数据补偿信息进行秒脉冲更新补偿操作实现与主节点的同步。

其具体步骤如图3所示。

图3 时间同步操作流程图

3 仿真和结论

下面对笔者提出的时间同步方法消除从节点由温度引起的误差的性能进行仿真,假定所有节点晶体振荡器频率的偏差固有系数a和T0均相同,主节点温度保持不变,一定区域内随机分布着N个从节点与主节点组成一个连通的无线网络,设频率误差差值允许阈值为Y。

仿真中任意取一从节点P,对其在温度变化时与主节点保持频率同步的能力进行仿真验证。下图4所示为当主节点温度为25度不变时从节点P在不同温度下的晶体振荡频率。

图4 P点频率温度变化曲线图

由图可看出,无论从节点温度如何变化,其振荡频率均与主节点频率保持大致相同。且同步时间快,此仿真结果与理论分析基本一致。

4 结束语

本文所提的时间同步算法通过分别建立主从节点相对同步计算表,在充分考虑影响节点时钟的主要因素下,根据节点实时时钟的误差允许条件,进行主从节点的时间同步操作。一方面消除网络节点时钟由晶体振荡器老化率引起的误差,另一方面消除网络节点时钟由晶体振荡器频率误差(以温度变化导致的为主)引起的误差,同时在保证网络可靠同步的基础上尽可能地减少网络的重复同步,不仅提高了同步的精度,而且提高了同步效率,提高了网络的鲁棒性。从节点进行的周期性自唤醒操作与处理有效地减少了空闲侦听的能耗,而且减少了网络碰撞的几率,采用的秒脉冲更新补偿操作运算更是可以保证很高的同步精度。本领域技术人员在不脱离本文的精神和范围内,都可以利用上述的方法和技术内容对本文提出的技术方案做出可能的变动与修改。

[1]D L Mills1 Internet time synchronization:The network time protocol[J]1 IEEE Trans on Communications,1991,39:1482~1493.

[2]B Hofmann2Wellenhof,H Lichtenegger,J Collins1 Global Posi2tioningSystem:TheoryandPractice[M].1Berlin: SpringerVerlag,1997.

[3]J Elson,L Girod,D Estrin1 Fine2grained network time synchronization using reference broadcasts[C].1 In:Proc of the Fifth Symp on Operating systems Design and Implementation.(OSDI2002) 1 New York:ACM Press,20021 147~163.

[4]SGaneriwal,RKumar,MBSrivastava1Timing2Sync Protocol for Sensor Networks[M]1 New York:ACM Press,20031 138~ 149.

E835

A

1003-5168(2014)04-0015-03

猜你喜欢

测温时钟偏差
别样的“时钟”
古代的时钟
如何走出文章立意偏差的误区
两矩形上的全偏差
变压器光纤测温探头的安装固定
有趣的时钟
基于DS18B20的单片机测温系统
时钟会开“花”
关于均数与偏差
基于ARM的高精度测温系统设计与实现