一种智能的无线传感器网络时间同步方法转让专利

申请号 : CN201310421213.7

文献号 : CN103458498B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 汪付强吴晓明于长斌刘祥志李刚王平胡一帆刘宏宋佐江

申请人 : 山东省计算中心山东华迪智能技术有限公司

摘要 :

本发明公开了一种智能的无线传感器网络时间同步方法,用于为无线传感器网络提供可靠、稳定的时间同步服务,所述方法包括如下内容:点到点的时间同步,通过单位误差漂移计数量获得更简便快捷的同步误差漂移计算和补偿方法;时间同步误差智能分析,通过对节点间同步误差智能分析,智能化选择单位漂误差移计数量,从而实现更精确、稳定的时间同步;网络同步扩散,依据本发明点到点的时间同步和同步误差智能分析,使得网络中各节点根据距离时间基准源的远近逐步将时间同步扩散到全网,从而实现全网络的时间同步。本发明建立了智能的无线传感器网络时间同步方法,为用户提供更优质高效的无线传感器网络时间同步服务。

权利要求 :

1.一种智能的无线传感器网络时间同步方法,包括如下步骤:

S100)点到点时间同步;时间基准源节点和同步完成节点周期性广播带有全局时间信息的同步报文,待同步节点监听同步报文选择父节点,通过对父节点同步报文的监听进行时间校准和同步误差漂移计算,从而实现与父节点同步的目的;

S200)同步误差智能分析;同步完成节点通过分析与父节点之间的同步误差,结合接收同步报文同步误差漂移补偿的变化以及与父节点之间计时频率的差异智能分析并计算新的同步误差漂移补偿,从而获得更稳定的同步方法;

S300)网络同步扩散;网络中节点同步过程从基准时间源开始,使用步骤S100和步骤S200,依据距离基准时间源的远近逐步扩散到全网,实现全网时间同步;

其特征是,所述点到点时间同步包含如下内容:

S101)处于同步状态节点周期广播发送带有全局时间信息的同步报文,其他节点通过监听同步报文进行同步;

S102)时间源选择;节点维护时间源选择保护时间,该保护时间至少大于一个同步周期,保证节点能够将周围潜在时间源周期广播的同步报文尽可能多监听到;时间源选择方法,距离基准时间源同步跳数信号强度大的优先;信号强度超过可通信门限,距离基准时间源同步跳数较小优先;

S103)待同步节点收到同步报文后,记录接收时间戳,并将本地时间按照全局时间更新;更新方法:同步报文中发送时间戳加上接收时间戳与转换时刻本地时间的差值所得结果更新为新的本地时间;

S104)待同步节点从第二次接收时间源节点同步报文开始计算误差漂移;首先,通过发送时间戳和接收时间戳的差值判断两次接收同步报文间隔时间内产生的误差;再次,计算两次同步间隔时间计数;时间计数除以误差得到本地多少次时间计数产生与时间源时间计数为1的误差漂移,称为单位误差漂移计数量;

S105)同步完成节点维护全局时间,本地时间通过漂移量补偿转为全局时间;时间转换计算方法如下:计算待转换时间与最后一次执行误差漂移计算的同步时间计数差值;计数差值除以单位漂移计数量获得待转换时间与全局时间的漂移;待转换时间补偿上述计算所得漂移获得对应全局时间;将全局时间转换为本地时间计算漂移方法与前述方法相同,补偿方向相反;

所述同步误差智能分析包括如下步骤:

S201)比较本地接收时间戳和发送时间戳,如果接收时间戳大于发送时间戳则本地时间计数频率高于同步源的计数频率,反之本地时间计数频率低于同步源计数频率;

S202)通过步骤S105将以本地时间记录的接收时间戳转换为本地全局时间戳,本地全局时间戳与发送时间戳对比获得上次同步后经过一个同步周期产生的同步误差;

S203)比较步骤S202获得的同步误差,如果本地全局时间戳大于发送时间戳,当步骤S201判断本地时间计数频率高时,则说明补偿不足,反之当本地时间计数频率低说明补偿过量;如果本地全局时间戳小于发送时间戳,当S201判断本地时间计数频率高,则说明补偿过量,反之当本地时间计数频率低说明补偿不足;

S204)对步骤S203,当判断补偿不足时,如果步骤S104计算出的单位误差漂移计数量小于原有单位误差漂移计数量则取二者平均值作为新的单位误差漂移计数量,反之如果步骤S104计算出的单位误差漂移计数量大于原有单位误差漂移计数量则将原有单位误差漂移计数量减去一定数值作为新的单位误差漂移计数量;

当判断补偿过量时,如果步骤S104计算出的单位误差漂移计数量大于原有漂移量则取二者平均值作为新的单位误差漂移计数量,反之如果步骤S104计算出的单位误差偏移计数量小于原有单位误差漂移计数量则将原有单位误差漂移计数量加上一定数值作为新的单位误差漂移计数量;

S205)通过步骤S204,同步节点以新的单位误差漂移计数量校正本地时间。

2.如权利要求1所述的智能的无线传感器网络时间同步方法,其特征是,所述网络同步扩散包括如下步骤:S301)时间基准源节点上电后周期广播发送同步报文,某一待同步节点接收到同步报文后与时间基准源节点同步,同步完成后周期性广播发送同步报文;

S302)其他待同步节点通过步骤S102选择时间源,并通过持续监听时间源同步报文获得时间同步,同步完成后周期广播同步报文的形式将同步后的全局时间广播出去并作为其他节点用于同步的潜在时间源,从而实现时间同步从时间基准源节点逐渐扩散到全网的过程。

说明书 :

一种智能的无线传感器网络时间同步方法

技术领域

[0001] 本发明属于无线传感器网络技术领域,涉及一种智能的无线传感器网络时间同步方法,具体是为无线传感器网络提供一种稳定、可靠的时间同步方法。

背景技术

[0002] 无线传感器网络是一种多跳自组织网络,综合了传感器技术、嵌入式计算技术、分布式信息处理技术和无线通信技术,能够协作地实时监测、感知和采集网络分布区域内的各种环境或监测对象的信息,并对这些数据进行处理,获得详尽准确的信息,并传送给需要这些信息的用户。因此无线传感器网络被认为是21世纪最重要的技术之一。
[0003] 在无线传感器网络应用中,往往需要多个节点感应的信息进行信息协同处理或数据融合。这就要求相关的传感器节点所采集的数据在时间上是关联的,有时甚至要求是同步的,但如果各个传感器节点不同步,这样来自传感器节点数据的相关性就会受到影响。无线传感器网络的许多应用对于时间同步都有要求,例如,要测量声音的传播时间就需要节点非常精确的时间;形成分布式波束成型阵列;构成低能量的TDMA无线调度;多传感器节点时序信息的融合以估计目标移动速度;识别许多节点对同一时间的重复探测以压缩冗余信息。一些诸如数据库查询、加密和验证方案、未来行动的协调、与用户交互、系统调试时有序的日志事件等应用都需要传感器节点间精确的时间同步。准确的时间同步是实现传感器网络自身协议的运行、定位、多传感器数据融合、移动目标的跟踪以及基于睡眠/侦听模式的节能等技术的基础
[0004] 无线网络中的节点都有各自的本地时钟。由于一些内在因素(如晶体振荡频率存在偏差等)和一些外在因素(如温度变化和电磁干扰等)的影响,节点之间很难达到长期的时间同步,即使在某个时刻所有节点都能够达到时间同步,节点之间的时间也会逐渐出现偏差。时间同步通过估算节点间的物理时钟之间的关系构造出对应的逻辑时钟,以达成时间同步。对于网络化的时间同步,需要构造便于进行时间同步的拓扑结构,并以此使得网络中各节点具备统一的逻辑时间,最终实现全网的时间同步。
[0005] 目前,无线传感器网络时间同步研究主要集中在同步精度、网络规模、低开销等方面,典型的无线传感器网络时间同步算法如RBS算法中,每一次同步都需要节点数平方级别的同步报文交互,大量同步报文的交互导致能量利用效率相对较低,而且在干扰严重的工厂环境下,报文的丢失使得同步的效率更低。TPSN协议也需要频繁的执行时间同步过程,而且同步过程是双向报文交互,一旦一次同步交互过程中的报文丢失一个,本次同步将无效,需要重新进行,在干扰严重的区域,算法执行效率较低。FTSP协议为单向广播式时间同步算法,单向的广播报文使得同步的方式更简单实用,但基于最小二乘法的线性拟合方法仍然需要消耗较多的计算资源。TPSN协议和FTSP协议在同步开始之前都需要单独的拓扑形成过程,延长了网络同步建立过程,不适合对网络快速性要求较高的无线传感器网络应用系统。因此,无线传感器网络与时间相关的应用领域迫切需要一套稳定、可靠的时间同步方法。

发明内容

[0006] 针对现有技术中无线传感器网络应用中存在同步效率低、可靠性差等不足之处,本发明提供一种智能的时间同步方法实现无线传感器网络中稳定、可靠的时间同步方法。
[0007] 为了解决上述技术问题,本发明采用的技术方案是:
[0008] 三个前提:1、无线设备能够在发送无线报文同时具有将发送时间戳放在无线报文中一起发送的能力;2、无线设备在接收无线报文时具有将接收时间以接收时间戳的形式保存下来的能力。3、一次发送和接收对应的发送时间戳和接收时间戳应当在相同的物理时刻记录各自维持的时间信息,即使不能够在相同的物理时刻记录时间戳,其时间差值也应当是可以通过计算得出其在相同物理时刻各自对应的时间信息。
[0009] 本发明采用同步方法需要网络中具有时间基准源节点,基准源节点维持网络全局时间,其他节点通过直接或者间接的形式与基准源节点同步,使得自身的时间运转与基准源节点保持同步。
[0010] 本发明主要包括如下步骤:
[0011] S100)点到点时间同步。时间基准源节点和同步完成节点周期性广播带有全局时间信息的同步广播报文(以下简称同步报文),待同步节点监听同步报文选择父节点,通过对父节点同步报文的监听进行时间校准和同步误差漂移计算,从而实现与父节点同步的目的。
[0012] S200)同步误差智能分析。同步完成节点通过分析与父节点之间的同步误差,结合接收同步报文同步误差漂移补偿的变化以及与父节点之间计时频率的差异智能分析并计算新的同步误差漂移补偿,从而获得更稳定的同步方法。
[0013] S300)网络同步扩散。网络中节点同步过程从基准时间源开始,使用步骤S100和步骤S200,依据距离基准时间源的远近逐步扩散到全网,实现全网时间同步。
[0014] 进一步的,所述点到点时间同步包含如下步骤:
[0015] S101)处于同步状态节点周期广播发送带有全局时间信息的同步广播报文(以下简称同步报文),其他节点通过监听同步报文进行同步;
[0016] S102)时间源选择。节点维护时间源选择保护时间,该保护时间至少大于一个同步周期,保证节点能够将周围潜在时间源周期广播的同步报文尽可能多监听到。时间源选择方法,相同跳数(距离基准时间源同步跳数)信号强度大的优先;信号强度超过可通信门限(经验值可根据射频工作环境设定),跳数(距离基准时间源同步跳数)较小优先;
[0017] S103)待同步节点收到同步报文后,记录接收时间戳,并将本地时间按照全局时间更新。更新方法:同步报文中发送时间戳加上接收时间戳与转换时刻本地时间的差值所得结果更新为新的本地时间;
[0018] S104)待同步节点从第二次接收时间源节点同步报文开始计算误差漂移,首先,通过发送时间戳和接收时间戳的差值判断两次接收同步报文间隔时间内产生的误差;再次,计算两次同步间隔时间计数;时间计数除以误差得到本地多少次时间计数产生与时间源时间计数为1的误差漂移,称为单位误差漂移计数量;
[0019] S105)同步完成节点维护全局时间,本地时间通过漂移量补偿转为全局时间。转换方法如下:计算待转换时间与最后一次执行误差漂移计算的同步时间计数差值;计数差值除以单位漂移计数量获得待转换时间与全局时间的漂移;待转换时间补偿上述计算所得漂移可以获得对应全局时间。将全局时间转换为本地时间计算漂移方法同上,补偿方向(加/减)相反。
[0020] 进一步的,所述同步误差智能分析如下:所述同步误差智能分析针对同步完成的节点,分析过程在步骤S104之后,同步完成节点通过同步误差智能分析动态维护单位误差漂移计数量;
[0021] S201)比较本地接收时间戳和发送时间戳,如果接收时间戳大于发送时间戳则本地时间计数频率高于同步源的计数频率,反之本地时间计数频率低于同步源计数频率;
[0022] S202)通过步骤S105将以本地时间记录的接收时间戳转换为全局时间(本地全局时间戳),本地全局时间戳与发送时间戳对比可以获得上次同步后经过一个同步周期产生的同步误差;
[0023] S203)比较步骤S202获得的同步误差,如果本地全局时间戳大于发送时间戳,当步骤S201判断本地时间计数频率高时,则说明补偿不足,反之当本地时间计数频率低说明补偿过量。如果本地全局时间戳小于发送时间戳,当S201判断本地时间计数频率高,则说明补偿过量,反之当本地时间计数频率低说明补偿不足;
[0024] S204)对步骤S203,当判断补偿不足时,如果步骤S104计算出的单位误差漂移计数量小于原有单位误差漂移计数量则取二者平均值作为新的单位误差漂移计数量,反之如果步骤S104计算出的单位误差漂移计数量大于原有单位误差漂移计数量则将原有单位误差漂移计数量减去一定数值作为新的单位误差漂移计数量,这里的一定数值属于经验值,可以设为原有单位误差漂移计数量的一定比例,如10%;当判断补偿过量时,如果步骤S104计算出的单位误差漂移计数量大于原有漂移量则取二者平均值作为新的单位误差漂移计数量,反之如果步骤S104计算出的单位误差偏移计数量小于原有单位误差漂移计数量则将原有单位误差漂移计数量加上一定数值作为新的单位误差漂移计数量,这里一定数值选取同上;
[0025] S205)通过步骤S204,同步节点以新的单位误差漂移计数量校正本地时间。
[0026] 进一步的,所述网络同步扩散包括如下步骤:
[0027] S301)时间基准源节点上电后周期广播发送同步报文,某一待同步节点接收到同步报文后与时间基准源节点同步,同步完成后周期性广播发送同步报文;
[0028] S302)其他待同步节点通过步骤S102选择时间源,并通过持续监听时间源同步报文获得时间同步,同步完成后周期广播同步报文的形式将同步后的全局时间广播出去并可作为其他节点用于同步的潜在时间源,从而实现时间同步从时间基准源节点逐渐扩散到全网的过程。
[0029] 与现有技术相比,本发明具有以下有益的技术效果:
[0030] 1、本发明采用的无线传感器网络时间同步方法,通过时间源优化选择和单位误差漂移计数量计算时间漂移的补偿方法,提供了简单有效的时间同步方法。一般类型的无线传感器网络时间同步方法通过线性拟合或者多项式拟合的方式实现同步误差漂移补偿,需要多次同步报文交互和复杂的拟合算法,这对于资源有限的无线传感器网络带来了更大压力,本发明通过优化的时间源选择和单位误差漂移计数量进行同步误差漂移补偿,通过更简便的运算获得节点间同步误差漂移,有效降低了同步方法对运算资源的需求。
[0031] 2、本发明通过智能的同步误差分析方法,通过对节点收到同步报文时的误差分析,结合节点间计数频率差异和新旧单位误差漂移计数量差异,智能维护同步节点与其时间源节点之间的单位误差漂移计数量,从而实现智能缩小同步误差的目的,为用户提供更稳定、可靠的无线传感器网络时间同步方法。

附图说明

[0032] 图1为本发明的原理结构图。
[0033] 图2为本发明的点到点同步过程流程图。
[0034] 图3为本发明的同步报文交互过程。
[0035] 图4为获得的第二组发送时间戳Tsend2和接收时间戳Treceive2图。
[0036] 图5为本发明所述同步误差智能分析流程图。

具体实施方式

[0037] 如图1所示,本发明所述智能的无线传感器网络时间同步方法包括点到点时间同步、同步误差智能分析、网络同步扩散三个方面。
[0038] 本发明所述方法涉及的无线设备,包括时间基准源节点、网络无线节点。
[0039] 时间基准源节点一般为网络中的中心设备,如数据采集网络的中心节点、控制网络的中央控制管理设备等。时间基准源节点负责维护网络唯一的全局时间,网络无线节点通过与时间基准源节点进行同步获得与网络全局时间的同步。
[0040] 所述时间基准源节点和网络无线节点应当能够在发送无线报文和接收无线报文时按照需求获得发送时间戳和接收时间戳,而且对于一次的同步报文交互,二者的时间应当在相同的物理时刻记录,即使不能够在相同的物理时刻记录时间戳,其时间差值也应当是可以通过计算得出其相同物理时刻各自对应的时间信息。如图2中发送节点和接收节点在相同的物理时刻t记录发送时间戳和接收时间戳。
[0041] 图3所示为点到点时间同步过程,包括如下步骤:
[0042] 步骤101:同步报文接收,同步接收过程如图2所示,在相同的物理时刻t,发送节点记录发送时间戳并将其放到无线报文中发送到接收节点,接收点在t时刻记录接收时间戳备用;
[0043] 步骤102:时间源选择,待同步节点上电后维护一个时间源选择保护时间,该保护时间应当至少大于一个同步周期,保证节点能够将周围潜在时间源周期广播的同步报文尽可能多监听到。时间源选择方法,相同跳数(距离基准时间源同步跳数)信号强度大的优先;信号强度超过可通信门限,跳数(距离基准时间源同步跳数)较小优先。在时间源保护时间内,优先级高的潜在父节点将代替优先级低的,保护时间结束所选的父节点应当是所有收到无线报文中信号质量最好的潜在父节点,同时将本地时间更新为父节点时间;
[0044] 步骤103:单位误差漂移计数量计算。单位误差漂移计数量定义为:本地时间计数产生与时间源时间计数为1的误差漂移时本地时间的计数量。具体计算方法如下:在经历时间源选择后,节点已经将本地时间更新为父节点时间,但是计数频率仍然以本地晶振计数,当再次收到父节点同步报文时,如图4所示,将会获得第二组发送时间戳Tsend2和接收时间戳Treceive2(Tsend1和Treceive1在时间源选择保护时间获得),根据发送时间戳更新本地时间同时计算单位误差漂移计数量Tskew如下:
[0045]
[0046] 步骤104:同步完成。经过步骤103后,节点完成与父节点之间的同步,后续将根据父节点的同步周期接收同步报文进行同步维护,同步维护主要维护单位误差漂移计数量,同时在每次接收到父节点的同步报文后根据发送时间戳更新本地时间。节点同步完成后将本地时间转化为全局时间方法如下(i表示第i次接收同步报文):
[0047]
[0048] 而将全局时间转化为本地时间方法如下:
[0049]
[0050] 步骤105:广播同步报文。同步完成的节点将周期性将本地维护的全局时间以同步报文的形式广播,由此同步完成可以作为其他待同步节点的潜在时间源。
[0051] 图5为本发明所述同步误差智能分析流程图。同步误差智能分析是在步骤104同步完成的基础上进行,包括如下步骤:
[0052] 步骤201:接收同步报文,同步完成后节点仍然要周期接收来自父节点的同步报文,通过接收同步报文更新本地时间和单位误差漂移计数量,同时进行同步误差智能分析;
[0053] 步骤202:比较发送时间戳和接收时间戳大小,如果发送时间戳大于接收时间戳转到步骤203,否则转到步骤204;
[0054] 步骤203:本地计时频率低。同步节点和同步源经过一个周期的同步运行,通过新的同步报文中的发送时间戳和同步节点的接收时间戳比较,当发送时间戳大于接收时间戳说明本地时间计数频率低于同步时间源计数频率;
[0055] 步骤204:本地计时频率高。发送时间戳和接收时间戳的比较结果与步骤203相反,则说明本地时间计数频率高于同步时间源计数频率;
[0056] 步骤205:根据本地接收同步报文计算新的单位时间漂移量,计算结果同步骤103;
[0057] 步骤206:通过原有旧的(接收本次同步报文前)单位时间漂移量将接收时间戳转换为本地全局接收时间戳,转换方式同步骤104;
[0058] 步骤207:比较本地全局接收时间戳与发送时间戳,如果本地全局接收时间戳大于发送时间戳则转入步骤208,否则转入步骤209;
[0059] 步骤208:通过步骤202的判断已经得出本地计时频率的高低,如果本地计时频率高则转入步骤211,否则转入步骤210;
[0060] 步骤209:通过步骤202的判断已经得出本地计时频率的高低,如果本地计时频率高则转入步骤210,否则转入步骤211;
[0061] 步骤210:补偿过量。也就是说对本地时间的补偿超过了期望补偿值,由于步骤104中将本地时间转化为全局时间的补偿部分(Tlocal-Treceive(i))/Tskew中Tskew处于分母部分,因此Tskew小于期望值,转入步骤212;
[0062] 步骤211:补偿不足。也就是说对本地时间的补偿小于了期望补偿值,同时根据步骤210中分析,Tskew大于期望值,转入步骤213;
[0063] 步骤212:比较当前同步报文计算所得单位误差漂移计数量和正在使用的单位误差漂移计数量,如果新计算结果大于正在使用的单位误差漂移计数量则转入步骤216,否则转入步骤215;
[0064] 步骤213:比较当前同步报文计算所得单位误差漂移计数量和正在使用的单位误差漂移计数量,如果新计算结果大于正在使用的单位误差漂移计数量则转入步骤214,否则转入步骤216;
[0065] 步骤214:在步骤211补偿不足和步骤213判断新计算单位误差漂移计数量大于正在使用的数值,则说明新计算结果相对当前使用值偏移期望值更大,因此将当前单位误差漂移计数量缩小到原来的90%作为新的单位误差漂移计数量;
[0066] 步骤215:在步骤210补偿过量和步骤212判断新计算单位误差漂移计数量小于正在使用的数值,则说明新计算结果相对当前使用值与期望值偏差更大,因此将当前单位误差漂移计数量扩大到原来的110%作为新的单位误差漂移计数量;
[0067] 步骤216:新计算结果相对当前使用值更接近期望值,因此取新计算的单位误差漂移计数量和正在使用的单位误差漂移计数量的平均值作为新的单位误差漂移计数量;
[0068] 步骤217:通过上述步骤获得新的单位误差漂移计数量,完成此次同步误差分析,并依据新的单位误差漂移计数量进行同步的维护和网络正常运行。
[0069] 为实现网络同步,步骤如下:
[0070] 步骤301:时间基准源节点上电,周期广播同步报文;
[0071] 步骤302:待同步节点监听到时间基准源的同步报文后,按照步骤102、103和104完成与时间基准源节点的同步,由于网络初始化只有时间基准源节点广播同步报文,步骤102只能选择时间基准源节点作为时间源;
[0072] 步骤303:完成与基准时间源节点同步的节点按照步骤105广播自身维护的全局时间;
[0073] 步骤304:其他待同步节点监听周围同步报文,并按照步骤102选择自身时间源,然后按照步骤103和104完成与时间源的同步;
[0074] 步骤305:完成同步的节点同样按照步骤105广播自身维护的全局时间,并可作为其他节点进行同步潜在的时间源,从而逐步实现时间同步扩散到全网。
[0075] 本发明并不局限于上述实施例,无线传感器网络时间同步具体实现技术可以根据实际情况灵活使用,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。