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

文档序号:7550768阅读:137来源:国知局
专利名称:无线测温网的节能时间同步方法
技术领域
本发明涉及无线传感器网络技术领域,具体涉及一种无线测温网的节能时间同步方法。
背景技术
无线传感器网络(Wireless Sensor Networks, WSN)是由大量布置在监测区域的静止或移动的传感器节点以自组织和多跳的方式构成的无线网络,其目的是协作地对监测区域的信息进行感知、采集、处理和传输。低速无线个域网(LowRate Wireless Personal Area Networks, LR-ffPAN)作为无线传感器网络的重要分支,是一种覆盖范围相对较小的无线网络,是为实现活动半径小、业务类型丰富、面向特定群体、无线无缝连接而提出的新兴无线通信网络技术。能够有效地解决“最后几米电缆”的问题,从而将无线联网进行到底。其中采用一种节点装置作为主控,其他节点装置作为从属的无线测温网络节点以其结构简单、数据率较低、通信距离近、功耗低、成本低等优点被广泛地应用于现代化工业、农业等需要进行温度监测的领域。在无线测温网络中,从属节点装置通常采用电池供电,且不易更换,因此,节能问题便是网络节点设计中的首要问题。一般来讲,一种典型的解决方案就是对节点使用休眠与唤醒机制,在多数情况下使节点处于低功耗睡眠状态,仅在合适的情况下将其唤醒进行工作。为此,就需要全网节点的状态切换连贯一致,保持一个统一的时间标准,以便进行准确的操作。不仅如此,网络的数据融合、测距定位等协议和应用都依赖于时间同步。而时间同步的目的就是使网络中的节点拥有相同的时间基准,即不同的节点可以保持相同的时钟,使网络中各节点可以协同工作。然而,由于网络中的节点都是独立工作的,都有自己的本地时钟,且不同节点的晶体振荡器会因环境以及老化等因素出现偏差,即使在某一时刻所有节点时钟都已达到同步,在另一时刻节点时钟也会出现偏差,引起网络碰撞、丢包、延时甚至瘫痪。如图2所示为晶体振荡频率随温度变化的曲线,可以用抛物线方程描述如下:y = a (T-T0) 2+b其中,y为晶体在温度T的频率偏差Λ f/f0,单位为ppm,即百万分之一 ;a为抛物线系数,Ttl为曲线的转折温度点,均与选取的晶体有关,可根据实际选择进行计算;b为晶体在转折温度点的频率偏差。因此,时间同步就需要尽量消除或减少上述由温度引起的晶体振荡器的误差而导致的实时时钟的偏差,然而如何在有限的通信和存储资源、有限的计算能力和能量的约束下消除实时时钟的偏差,在保证网络鲁棒性的前提下实现网络节点的时间同步就变得非常重要。鉴于无线测温网的结构特点和实际需要,现有技术中的时间同步方法主要包括以下几种:
第一种:基于全局的时间同步。基于全局的时间同步主要包括网络时间协议(Network Time Protocol,NTP)和全球定位系统(Global Positioning System, GPS)方法,基本思想都是使网络保持与世界协调时(Universal Time Coordinated, UTC)同步。其中NTP协议是在因特网上广泛使用的目前最成功的一种时间同步机制,采用层次型树型结构,逐级进行同步,然而由于无线网络在功耗、计算能力、体积、存储空间、带宽、抗干扰性等方面的限制,使得NTP协议并不能适用于无线网络。GPS方法是通过给每个节点配备GPS模块来获得精准的时间,使网络节点时间与标准时间一致进行同步,但由于GPS信号穿透性较差、且成本高、体积大、能耗大,使得GPS不能广泛适用于无线测温网络的节点上。第二种:基于广播时间同步。基于广播时间同步主要包括RBS(ReferenceBroadcast Synchronization)算法、DMTS (Delay Measurement Time Synchronization)算法、TPSN(Timing-Sync Protocol forSenor Networks)算法等。其中RBS算法利用无线广播信道特性,由第三方周期性地向其它节点发送参考广播,广播域中的节点通过本地时钟记录各自的接收时间,然后交换记录,得到偏移后进行计算和调整,缺点是消息交换的次数多,能耗大,不能实现与参考节点的同步;DTMS算法是通过估计同步信息在传输路径上的延迟来实现同步,缺点是同步精度低,同步周期算,且扩展性差;TPSN算法通过分层的拓扑结构实现网络所有节点的同步,缺点是计算量大,能量开销大。第三种:基于精准时钟芯片同步。基于精准时钟芯片同步主要是通过对节点本地时钟的校正来进行时间同步。通常的方案是采用带温度补偿的实时时钟芯片对由温度引起的晶体振荡器的频率误差进行补偿,校正节点本地时钟来实现时间同步,然而由于此类芯片的功耗较大不能满足网络低功耗的设计要求,同时时钟的校正以单个节点为标准,精度不高,并不能实现与全网节点的真正同步。由上述可以知道,由于无线测温网工作环境的限制和网络以及节点的自身因素,使得现有的时间同步方法对于网络的适用度不高,且采用现有的时间同步方法存在精度低、功耗大等缺点。因此,提供一种高精度、低功耗且方便快捷可适用于无线测温网的节能时间同步方法成为目前亟需解决的问题之一。

发明内容
本发明解决的问题是提供一种高精度、低功耗且方便快捷可适用于无线测温网的节能时间同步方法。本发明通过以下技术方案实现:一种无线测温网的节能时间同步方法,包括执行以下步骤:步骤一、建立主节点相对同步计算表;步骤二、建立从节点相对同步计算表;步骤三、主从节点时间同步操作。优选的,所述建立主节点相对同步计算表包括以下步骤;
步骤一、主节点根据所选的晶体振荡器特点建立以年老化率为周期的初始化同步模式;步骤二、主节点根据如图1所示的无线测温网络建立以m为周期的网络同步周期,则每个周期内主节点的时间同步工作时间为m/n,从节点的最大时间同步工作时间为m/n ;步骤三、主节点设定影响实时时钟的频率误差差值的允许阈值Y ;步骤四、主节点将由最小二乘法拟合后的采用同一型号批次的主从节点晶体振荡器频率偏差固有系数a和Ttl写入计算表中;步骤五、主节点根据频率偏差抛物线 方程表示式y = a (T-Ttl)Wb,建立频率误差差值计算模型Ay = yx-yxx,其中丫!£表示主节点在第X时刻的频率误差,yxx表示从节点在第x时刻的频率误差;建立频率误差累积代数和计算模型Σ Ay= Ayi+Ay2+...+Ayk,g卩计算前k次网络同步自唤醒周期中未进行补偿发送的频率误差差值的代数和;建立补偿时间计算模型At=HiX Σ Ay,式中m为网络时间同步补偿间隔,即为网络同步周期。优选的,所述建立从节点相对同步计算表包括以下步骤:步骤一、从节点根据网络同步周期m设定以m为周期的自唤醒模式;步骤二、从节点设定每个周期内自唤醒后的工作时间为m/2n ;步骤三、从节点根据晶体振荡器的频率进行秒脉冲更新补偿操作,首先记录写入补偿信息的时间h,判断补偿时间Λ t的正负,根据补偿信息Λ t的正负来判断从节点相对主节点是超前还是滞后,再执行相应的操作。优选的,所述主从节点时间同步操作包括以下步骤:步骤a:主从节点以年为周期进行初始化;步骤b:从节点以m为周期进行自唤醒,工作m/2n个时间周期,向主节点发送数据,发送结束后进入空闲等待模式转步骤h执行;步骤c:主节点进入定时中断时间同步工作模式,工作m/n个时间周期,接收从节点以m为周期自唤醒发送的数据信息;步骤d:主节点根据从节点第X时刻发送的温度Txx和自身在第X时刻测量的温度Tx利用频率误差差值计算模型进行补偿运算,求出Ay ;并求出频率误差差值的累积代数和Σ Ay ;步骤e:主节点通过比较Σ Ay与设定频率误差差值允许阈值Y的大小来决定是否向从节点发送数据;若I Σ Ay < Y未超过阈值则不发送数据至从节点,仅将累积误差差值Σ Δ y带入下一个m周期该从节点的同步计算中,并等待定时中断时间同步工作时间m/n到达后转步骤c开始执行;若I Σ Λ y I > Y超过阈值则转入步骤f继续执行;步骤f:主节点根据补偿时间计算模型计算出补偿时间Λ t并发送至从节点;步骤g:主节点在发送结束后将累积误差差值Σ Ay清零处理,并等待定时中断时间同步工作时间m/n到达后转步骤c开始执行;步骤h:从节点判断在m/2n工作时间周期内是否接收到来自主节点的数据补偿信息;若未接收到,则在m/2n工作时间周期结束后进入掉电模式等待下一个m周期到达后转步骤b开始执行;若接收到,则转入步骤i继续执行;步骤1:从节点进行时间校准操作,根据秒脉冲更新补偿操作对从节点时间进行补偿实现与主节点的同步;
步骤j:从节点同步补偿结束后在m/2n工作时间周期结束后进入掉电模式等待下一个m周期到达后转步骤b开始执行。与现有技术相比,本发明的技术方案具有以下有益效果:本发明通过分别建立主从节点相对同步计算表,在充分考虑影响节点时钟的主要因素下,根据节点实时时钟的误差允许条件,进行主从节点的时间同步操作。一方面消除网络节点时钟由晶体振荡器老化率引起的误差,另一方面消除网络节点时钟由晶体振荡器频率误差引起的误差,同时在保证网络可靠同步的基础上尽可能地减少网络的重复同步,不仅提高了同步的精度,而且也提高了同步效率和网络的鲁棒性。进一步的,本发明中主节点进行主要同步操作计算,从节点仅进行必要的同步操作计算,同时从节点进行周期性自唤醒操作与处理有效地减少了空闲侦听的能耗,而且减少了网络碰撞的几率,采用的秒脉冲更新补偿操作运算更保证了很高的同步精度。进一步的,本发明的节能时间同步不需要用户的干预,有着良好的自适应性、同步精度和节能效果,实现方法简单,可很好的适用于高精度、低功耗的无线测温网络应用系统中。


图1为本发明实施例的网络模型示意图;图2为本发明实施例的晶体振荡频率随温度变化的曲线示意图;图3为本发明实施例的时间同步方法流程示意图;图4为本发明实施例的主从节点时间同步操作流程示意图。
具体实施例方式为实现本发明的上述目的、特征和优点能够更为明显易懂,下面结合附图对本发明的具体实施方式
做详细的说明。在以下叙述中详细阐述了本发明的具体实现细节以便于充分理解本发明。本领域技术人员可以在不违背本发明内涵的情况下做类似推广。因此本发明不受下面公开的具体方式的限制。正如背景技术中所描述的,对于采用同一型号批次晶体振荡器的无线测温网络节点,影响本地时钟偏差的主要因素是晶体振荡器的误差引起的,而采用现有的时间同步技术存在同步精度低、功耗大、成本高等缺点,不能适用于无线测温网络低功耗高精度的应用需要。如图1所示的无线测温网络模型示意图,包括一个主节点和η个从节点,主节点与PC机通过串行通信相连,采用固定电源供电;从节点与主节点通过无线通信相连,采用电池供电。因此,网络的时间同步就是要保证网络在稳定可靠协同工作的前提下尽可能地节约从节点的能量消耗,延长网络的生存周期。为此,本发明提出,网络时间同步的主要任务应由主节点完成,从节点仅完成必要的任务。可以先由主节点根据影响实时时钟偏差的因素,计算出一个周期内与从节点之间的实时时钟误差是否在允许范围内,如果在允许范围内则不需要进行同步操作,否则将校正信息发送给从节点进行相应的同步操作。而为了减少从节点空闲侦听的能耗和避免从节点间出现网络碰撞现象,从节点采用周期性自唤醒工作模式,为了保证良好的同步精度,采用秒脉冲更新补偿操作。图3为本发明实施例的时间同步方法的流程示意图,如图3所示,所述的时间同步方法包括:步骤Sll:建立主节点相对同步计算表;步骤S12:建立从节点相对同步计算表;步骤S13:主从节点时间同步操作。下面将结合本发明所给出的实现方法对本发明的时间同步方法进行详细的说明。步骤Sll,建立主节点相对同步计算表。1、在本实施例中,所述主节点根据所选择的晶体振荡器的老化率特点建立以年为周期的初始化同步模式,设定5年的同步周期模式,每一年进行一次初始化同步,从而消除晶体振荡器因老化带来的时钟误差,提高时间同步的精度;2、在本实施例中,所述主节点以图1所示的无线测温网络结构为例,建立以m为周期的网络同步周期,则每个周期内主节点的时间同步工作时间为m/n,从节点是最大时间同步工作时间为m/n ;3、在本实施例中,所述主节点设定影响实时时钟的频率误差差值的允许阈值Y ;4、在本实施例中,所述主节点将由最小二乘法拟合后的采用同一型号批次的主从节点晶体振荡器频率偏差固有系数a和Ttl写入计算表中,其中a和Ttl的可按以下操作求出,首先测量不同温度T下晶体振荡器频率偏差y,然后利用最小二乘法拟合出如图2所示的晶体振荡器频率偏差的抛物线方程y = aCr-1gib,再取某固定温度带入即可得出抛物线系数a和转折温度点Ttl ;5、在本实施例中,所述主节点根据频率偏差抛物线方程表示式y = a (T-Tci) 2+b,建立频率误差差值计算模型Ay = yx-yxx = a (Tx-Txx) (TX+TXX_2T),其中yx表示主节点在第x时刻的频率误差,Yxx表示从节点在第X时刻的频率误差,a为晶振频率误差的二次系数,T0为晶振频率误差的转折温度点,Tx为主节点在第X时刻的温度,Txx为主节点在第X时刻的温度;建立频率误差累积代数和计算模型Σ Ay= Λ y1+Ay2+...+Ayk,即计算前k次网络同步自唤醒周期中未进行补偿发送的频率误差差值的代数和;建立补偿时间计算模型At=mX32768X Σ AyX 1/32768 = mX Σ Λ y,式中m为网络时间同步补偿间隔,即为网络同步周期。步骤S12:建立从节点相对同步计算表。1、在本实施例中,所述从节点为了有效减少空闲侦听的能耗,根据所述主节点设置的网络同步周期m,设定以m为周期的自唤醒模式,即从节点每隔m周期唤醒一次进行数据传输与同步工作;2、在本实施例中,所述从节点为了避免节点间出现碰撞导致的网络崩溃现象,根据每个周期内可进行的最大工作时间m/n,设定每次自唤醒后的工作时间为m/2n ;3、在本实施例中,所述从节点为了保证更高的同步精度,采用秒脉冲更新补偿操作进行节点的时间同步。其中秒脉冲更新补偿可按以下操作执行,首先记录写入补偿信息的时间h,判读补偿时间At的正负,若At > 0,则从节点相对主节点是超前,从节点等待At-t0时间后再进行一次脉冲更新;若At < 0,则从节点相对主节点是滞后,从节点等待l/f0-At-t0时间后再进行一次脉冲更新。
步骤S13:主从节点时间同步操作。在分别建立主从节点相对同步计算表后,具体的,需要主从节点完成相应的时间同步操作,如图4所示为本发明实施例中主从节点时间同步操作流程,包括以下步骤:步骤a:主从节点以年为周期进行初始化;步骤b:从节点以m为周期进行自唤醒,工作m/2n个时间周期,向主节点发送数据,发送结束后进入空闲等待模式转步骤h执行;步骤c:主节点进入定时中断时间同步工作模式,工作m/n个时间周期,接收从节点以m为周期自唤醒发送的数据信息;步骤d:主节点根据从节点第X时刻发送的温度txx和自身在第X时刻测量的温度tx利用频率误差差值计算模型进行补偿运算,求出Ay ;并求出频率误差差值的累积代数和Σ Ay ;步骤e:主节点通过比较Σ Ay与设定频率误差差值允许阈值Y的大小来决定是否向从节点发送数据;若I Σ Ay < Y未超过阈值则不发送数据至从节点,仅将累积误差差值Σ Δ y带入下一个m周期该从节点的同步计算中,并等待定时中断时间同步工作时间m/n到达后转步骤c开始执行;若I Σ Λ y I > Y超过阈值则转入步骤f继续执行;步骤f:主节点根据补偿时间计算模型计算出补偿时间Λ t并发送至从节点;步骤g:主节点在发送结束后将累积误差差值Σ Ay清零处理,并等待定时中断时间同步工作时间m/n到达后转步骤c开始执行;步骤h:从节点判断在m/2n工作时间周期内是否接收到来自主节点的数据补偿信息;若未接收到,则在m/2n工作时间周期结束后进入掉电模式等待下一个m周期到达后转步骤b开始执行;若接收到,则转入步骤i继续执行;步骤1:从节点进行时间校准操作,根据秒脉冲更新补偿操作对从节点时间进行补偿实现与主节点的同步;步骤j:从节点同步补偿结束后在m/2n工作时间周期结束后进入掉电模式等待下一个m周期到达后转步骤b开始执行。本发明实施例的时间同步装置的工作过程,可以参见上述的时间同步方法进行。综上所述,本发明的技术方案至少有如下有益效果:本发明通过分别建立主从节点相对同步计算表,在充分考虑影响节点时钟的主要因素下,根据节点实时时钟的误差允许条件,进行主从节点的时间同步操作。一方面消除网络节点时钟由晶体振荡器老化率引起的误差,另一方面消除网络节点时钟由晶体振荡器频率误差引起的误差,同时在保证网络可靠同步的基础上尽可能地减少网络的重复同步,不仅提闻了同步的精度,而且提闻了同步效率,提闻了网络的鲁棒性。进一步的,本发明中主节点进行主要同步操作计算,从节点仅进行必要的同步操作计算,同时从节点进行周期性自唤醒操作与处理有效地减少了空闲侦听的能耗,而且减少了网络碰撞的几率,采用的秒脉冲更新补偿操作运算更是可以保证很高的同步精度。进一步地,本发明的节能时间同步不需要用户的干预,有着良好的自适应性、同步精度和节能效果,实现方法简单,可很好的适用于高精度、低功耗的无线测温网络应用系统中。以上所述的本发明的具体实施例,仅是对本发明的目的、技术方面和有益效果进行的详细说明,但并不是用来限定本发明,本领域技术人员在不脱离本发明的精神和范围内,都可以利用上述的方法和技术内容对本发明技术方案做出可能的变动与修改,因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实例所作的任何简单修改、等同替换和改进等,均在本发明的技术方案的保护范围之内。
权利要求
1.一种无线测温网的节能时间同步方法,包括如下步骤: 步骤一,建立主节点相对同步计算表; 步骤二,建立从节点相对同步计算表; 步骤三,主从节点时间同步操作。
2.根据权利要求1所述的无线测温网的节能时间同步方法,其特征在于,所述建立主节点相对同步计算表包括以下步骤: 步骤一,主节点根据所选的晶体振荡器特点建立以年老化率为周期的初始化同步模式; 步骤二,主节点根据无线测温网络建立以m为周期的网络同步周期,每个周期内主节点的时间同步工作时间为m/n,从节点的最大时间同步工作时间为m/n ; 步骤三,主节点设定影响实时时钟的频率误差差值的允许阈值Y ; 步骤四,主节点将由最小二乘法拟合后的采用同一型号批次的主从节点晶体振荡器频率偏差固有系数a和Ttl写入计算表中; 步骤五,主节点根据频率偏差抛物线方程表示式y = a (T-Ttl)Wb,建立频率误差差值计算模型Ay = yx-yxx,其中yx表示主节点在第x时刻的频率误差,yxx表示从节点在第x时刻的频率误差;建立频率误差累积代数和计算模型Σ Ay= Ay1+Ay2+...+Ayk,即计算前k次网络同步自唤醒周期中未进行补偿发送的频率误差差值的代数和;建立补偿时间计算模型At=mX Σ Ay,式中m为网络时间同步补偿间隔,即为网络同步周期。
3.根据权利要求2所 述的无线测温网的节能时间同步方法,其特征在于,所述建立从节点相对同步计算表包括以下步骤: 步骤一、从节点根据网络同步周期m设定以m为周期的自唤醒模式; 步骤二、从节点设定每个周期内自唤醒后的工作时间为m/2n ; 步骤三、从节点根据晶体振荡器的频率进行秒脉冲更新补偿操作,首先记录写入补偿信息的时间&,判断补偿时间At的正负,根据补偿信息At的正负来判断从节点相对主节点是超前还是滞后,再执行相应的操作。
4.根据权利要求1或3所述的无线测温网的节能时间同步方法,其特征在于,所述主从节点时间同步操作包括以下步骤: 步骤a,主从节点以年为周期进行初始化; 步骤b,从节点以m为周期进行自唤醒,工作m/2n个时间周期,向主节点发送数据,发送结束后进入空闲等待模式转步骤h执行; 步骤c,主节点进入定时中断时间同步工作模式,工作m/n个时间周期,接收从节点以m为周期自唤醒发送的数据信息; 步骤d,主节点根据从节点第X时刻发送的温度Txx和自身在第X时刻测量的温度Tx利用频率误差差值计算模型进行补偿运算,求出Ay ;并求出频率误差差值的累积代数和Σ Ay ; 步骤e,主节点通过比较Σ Δ y与设定频率误差差值允许阈值Y的大小来决定是否向从节点发送数据;若I Σ Ay < Y未超过阈值则不发送数据至从节点,仅将累积误差差值Σ Ay带入下一个m周期该从节点的同步计算中,并等待定时中断时间同步工作时间m/n到达后转步骤c开始执行;若I Σ Ay >Y超过阈值则转入步骤f继续执行;步骤f,主节点根据补偿时间计算模型计算出补偿时间At并发送至从节点; 步骤g,主节点在发送结束后将累积误差差值Σ Ay清零处理,并等待定时中断时间同步工作时间m/n到达后转步骤c开始执行; 步骤h,从节点判断在m/2n工作时间周期内是否接收到来自主节点的数据补偿信息;若未接收到,则在m/2n工作时间周期结束后进入掉电模式等待下一个m周期到达后转步骤b开始执行;若接收到,则转入步骤i继续执行; 步骤i,从节点进行时间校准操作,根据秒脉冲更新补偿操作对从节点时间进行补偿实现与主节点的同步; 步骤j,从节点同步补 偿结束后在m/2n工作时间周期结束后进入掉电模式等待下一个m周期到达后转步骤b开始执行。
5.根据权利要求1所述的无线测温网的节能时间同步方法,其特征在于,所述建立从节点相对同步计算表包括以下步骤: 步骤一、从节点根据网络同步周期m设定以m为周期的自唤醒模式; 步骤二、从节点设定每个周期内自唤醒后的工作时间为m/2n ; 步骤三、从节点根据晶体振荡器的频率进行秒脉冲更新补偿操作,首先记录写入补偿信息的时间&,判断补偿时间At的正负,根据补偿信息At的正负来判断从节点相对主节点是超前还是滞后,再执行相应的操作。
全文摘要
本发明提供了一种无线测温网的节能时间同步方法,包括执行以下步骤步骤一,建立主节点相对同步计算表;步骤二,建立从节点相对同步计算表;步骤三,主从节点时间同步操作。本发明一方面消除网络节点时钟由晶体振荡器老化率引起的误差,另一方面消除网络节点时钟由晶体振荡器频率误差引起的误差,同时在保证网络可靠同步的基础上尽可能地减少网络的重复同步,不仅提高了同步的精度,而且提高了同步效率,提高了网络的鲁棒性,是一种精度高、功低耗、方便快捷、可适用于无线测温网的节能时间同步方法。
文档编号H04W56/00GK103096458SQ20131002130
公开日2013年5月8日 申请日期2013年1月18日 优先权日2013年1月18日
发明者陈鹏, 刘力 申请人:陈鹏
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1