CN101466142B - 无线传感器网络中分层时间比较时钟同步方法 - Google Patents
无线传感器网络中分层时间比较时钟同步方法 Download PDFInfo
- Publication number
- CN101466142B CN101466142B CN2009100450322A CN200910045032A CN101466142B CN 101466142 B CN101466142 B CN 101466142B CN 2009100450322 A CN2009100450322 A CN 2009100450322A CN 200910045032 A CN200910045032 A CN 200910045032A CN 101466142 B CN101466142 B CN 101466142B
- Authority
- CN
- China
- Prior art keywords
- node
- network
- synchronization
- clock
- clock source
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Synchronisation In Digital Transmission Systems (AREA)
- Electric Clocks (AREA)
Abstract
一种无线网络技术领域的无线传感器网络中分层时间比较时钟同步方法包括以下步骤:步骤一,网络开始初始化,并从基站/协调器开始按照信号强度和设备种类分层;步骤二,整个网络分为外时钟源同步和内时钟源同步,节点采用时间戳比较的方法同步,上下级节点以服务器/客户端模式同步;步骤三,根据历次同步效果来调整同步周期,时钟漂移参数;步骤四,自动抛弃陈旧的时间戳。本发明与现有技术相比,能更好地符合无线传感器网络时间同步方法的精度,同时具有低开销、健壮的优点。
Description
技术领域
本发明涉及一种无线网络技术领域的方法,具体是一种无线传感器网络中分层时间比较时钟同步方法。
背景技术
近年来,由低功耗无线传感器所组成的无线传感器网络(wireless sensornetworks,WSNs)应用愈加广泛。时间同步是WSNs应用的重要组成部分,控制消息冲突、数据融合、节点定位等方面都要求节点间保持时钟同步。
国内外许多大学和研究机构都对无线传感器网络的同步技术进行了深入研究并提出了多种时间同步方法,从不同方面满足传感器网络的应用需要。到目前为止,已经提出了十几种实现方法,典型的有RBS、TPSN、LTS、TS/MS、TSync、DMTS、FTSP、AD、TSS和TDP。这些方法虽然从不同的方面满足了应用需要,但是相应的他们自身有不少缺陷,比如RBS精度较好,但是在有的网络协议中无法应用。TS/MS、Tsync精度更好,但是方法复杂,对于无线网络中有限的运算能力和网络开销而言有点过大了。
经对现有技术文献的检索发现,Rui Fan,Indraneel Chakraborty,and NancyLynch,在2005年8月23日的Lecture Notes in Computer Science,Principlesof Distributed Systems(计算机科学讲座笔记,分布式***原理)中发表的文章《Clock Synchronization for Wireless Networks》(无线网络的时钟同步),该文章提出了一种同步方式,采取外部时钟同步与内部时钟同步并行的方式,通过不断比对时间坐标大小,取其最大(其实也是同步时可能与外部基准时间最接近的)为其逻辑时间,同步周期采用固定周期。该方法的计算开销和通信开销较小,避开了随机性最大的数据包处理延时的估计,同时避免了一些算法可能会将时钟回拨的可能性,但是该方法仅对稳定的单跳网络效果较好,在规模较大的动态网络里同步精度较差,这显然对于某些实际应用是不够的。
发明内容
本发明的目的是针对上述现有技术的不足,提供了一种无线传感器网络中分层时间比较时钟同步方法,通过分层以及时间戳比较,减少了同步通讯的开销,采用估计逼近时钟漂移,调整参数ρ的方法,进一步降低同步的开销,同时,抛弃了失效的时间戳,减小了对节点存储的开销,本发明能够应用到动态多跳网络中去。
本发明通过如下技术方案实现的,本发明包括如下步骤:
步骤一,网络开始初始化:以总的基站/协调器为顶层,根据信号强度和设备种类发出隶属关系确认帧,对应的设备接受到确认帧后,并返回应答帧,以此类推,完成对整个网络的分层设置,同时确认网络达到稳定状态;
步骤二,从顶层开始,逐层开始同步,同步分为两个部分:外时钟源同步和内时钟源同步,外部时钟源同步过程中,若节点i接到GPS同步信号,节点i的当前有效数组坐标i.current加一,外部时钟源同步为内部时钟源同步提供时间基准,各节点根据内时间源和外时钟源同步结果的比较获得该节点的逻辑时间;
步骤三,各节点统一设定同步周期,随后各节点根据最初若干次同步结果以及同步精度调整时钟漂移参数ρ、同步周期τ,若节点某次同步满足同步精度,则增加同步周期τ,减少***开销;若不满足,则调整时钟漂移参数ρ,并将减少同步周期τ;
步骤四,节点i检查当前有效数组坐标是否大于数组长度,如果成立,当前有效数组坐标清零,抛弃失效的时间戳,如果不成立,当前有效数组坐标继续计数,重复步骤二。
所述各节点根据内时间源和外时钟源同步结果的比较获得该节点的逻辑时间,包括如下步骤:
第一步,如果节点i发现节点i的逻辑时钟等于节点i的预订同步次数与节点同步周期的乘积,节点i开始同步,并检查外部时钟源是否存在,若存在,则发出外部同步服务请求,进入第二步;无论外部时钟源是否存在都开始内部时钟同步,即执行第三步,同时节点i的预订同步次数增加一,但第0层节点始终不进行内部时钟同步;
第二步,节点i进行外部时钟源同步:如果节点i接到GPS同步信号,节点i的当前有效数组坐标i.current加一,将GPS时间戳存入数组i.local[i.current]和i.max_gps中,i.local[i.current]随物理时钟同步更新,i.local[]表示节点i对该节点所处时间坐标的最佳估计,i.max_gps表示最近的GPS时间戳;
第三步,节点i进行内部时钟同步:节点i向直属的上级节点j发出同步服务请求,如果节点i收到从上级节点j发来的同步帧sync_message(j.local[j.current],j.max_gps),节点i检查节点j的GPS时间戳是否和节点i的i.max_gps一样新,随后检查j.local[j.current]是否比i.global[i.current]大,i.global[]表示节点i对该节点所属网络的其他节点时间最佳估计,如果两者皆满足,代表节点i对其他节点的估计i.global[i.current]有误差,则更新i.global[i.current]为j.local[j.current],j.global[j.current]以物理时钟的(1-ρ)/(1+ρ)倍更新;
第四步,节点i比较数组i.local[]各元素,取最大者为i.mlocal,比较数组i.global[]各元素,取最大者为i.mglobal;
第五步,节点i比较i.mlocal和i.mglobal的大小,取较大者为i.logical表示节点i的逻辑时钟,完成节点时钟同步,i.logical随物理时间同步更新。
与现有技术相比,本发明包括如下有益效果:
1、本发明通过时间戳比较来避免对节点间数据包传输延时的估计;从实际的无线网络的搭建和抓包分析可以知道节点间的传输延时由于信道能量检测和信道冲突检测,节点的任务调度的影响,随机性是非常大的,采用时间戳比较绕开了对这些因素的估计,从而在保证一定精度的条件下,降低***开销;
2、本发明通过分层的方法减小了节点间的同步误差极限;换言之,节点间的同步误差极限和节点的同步精度都取决于该节点所属网络的最大延时,故将一个大的网络分层,分成若干个小网进行同步,有助于减小误差;
3、本发明通过变周期的方法,减小了同步通讯的开销;在实际工程中,各节点所使用的晶振是有较大差别的,有的精度好,有的精度差。如果一刀切的统一同步周期,显然是给有限的网络信道流量增加不小的开销,增加全网络能量消耗,而让节点自行统计来变更同周期可以避免不必要的能量消耗和流量开销;
4、本发明通过估计逼近时钟漂移,调整参数ρ的方法,进一步降低同步的开销,在前面节点同步过程中,可以看到,如果ρ估计较准的话,显然本节点对其他节点的时钟估计更准,相应的同步周期就可以设的更长,自然开销就小了;
5、本发明通过将i.Current清零来抛弃失效的时间戳,减小了对节点存储的开销;虽然随着半导体工艺的不断发展,片上资源越来越丰富,但是,对于节点所使用的单片机而言资源受较大限制的状况在可见得将来一段时间内仍然是无法改变的。本同步机制中两个最佳估计数组在较短的时间内是不占多少资源的,但是时间长了,显然不行的,同时过旧的时间戳也是没有意义的。所以要抛弃失效的时间戳。
综上,本发明能更好的符合无限传感器网络时间同步算法的精度适中,低开销,健壮的要求。
附图说明
图1是本发明方法的工作流程图;
图2是本发明的实施例仿真结果图;
图中,(a)为模拟的未经处理晶振频率变化图,(b)为经过参数调整后逻辑频率变化图,(c)为处理前后的同步周期进行对比柱状图。
具体实施方式
下面结合附图对本发明的实施例作详细说明:本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
本实施例应用于无线传感器网络搭建项目中的实验网络的时钟同步研究的应用中,主要采用了基于紫芯公司的ASAP1810/20开发板和TI的CC2420无线传感器开发板,并在其上进行开发组网实验。
本实施例中无线传感器网络由126个从设备和一个主设备组成,其中主设备设有GPS时钟源,网络的分层层数由各节点按照其物理位置和功能自行划分。
如图1所示,本实施例包括如下步骤:
步骤一,网络开始初始化:以总的基站/协调器为顶层,根据信号强度和设备种类发出隶属关系确认帧,对应的设备接受到确认帧后,并返回应答帧,以此类推,完成对整个网络的分层设置,同时确认网络达到稳定状态;
步骤二,从顶层开始,逐层开始同步,同步分为两个部分:外时钟源同步和内时钟源同步,外部时钟源同步过程中,若节点i接到GPS同步信号,节点i的当前有效数组坐标i.current加一,外部时钟源同步为内部时钟源同步提供时间基准,各节点根据内时间源和外时钟源同步结果的比较获得该节点的逻辑时间;
步骤三,各节点统一设定同步周期,随后各节点根据最初若干次同步结果以及同步精度调整时钟漂移参数ρ、同步周期τ,若节点某次同步满足同步精度,则增加同步周期τ,减少***开销;若不满足,则调整时钟漂移参数ρ,并将减少同步周期τ;
步骤四,节点i检查当前有效数组坐标是否大于数组长度,如果成立,当前有效数组坐标清零,抛弃失效的时间戳,如果不成立,当前有效数组坐标继续计数,重复步骤二。
所述各节点根据内时间源和外时钟源同步结果的比较获得该节点的逻辑时间,包括如下步骤:
第一步,节点i内建立两个数组:i.local[p]、i.global[p],八个变量:i.current、i.next_sync、i.mlocal、i.mglobal、i.max_gps、ρ、i.logical、τ,其中,i.current表示节点i的当前有效数组坐标;i.local[]表示节点i对该节点所处时间坐标的最佳估计;i.global[]表示节点i对该节点所属网络的其他节点时间最佳估计;i.mlocal代表i.local[]中最大值;i.mglobal代表i.global[]中最大值;i.max_gps表示最近的GPS时间戳;ρ表示时钟漂移,单位ppm(每百万分之一);τ表示节点同步周期;p表示数组长度;i.logical表示节点i的逻辑时钟;i.next_sync表示节点i的预定同步次数;
第二步,如果节点i发现i.logical=i.next_sync*τ,节点i开始同步,并检查外部时钟源是否存在,若存在,则发出外部同步服务请求,进入步骤三;无论外部时钟源是否存在都开始内部时钟同步,即执行步骤四,同时变量i.next_sync加一,但第0层节点始终不进行内部时钟同步;
第三步,节点i进行外部时钟源同步过程:如果节点i接到GPS同步信号,i.current加一,将GPS时间戳存入i.local[i.current]和i.max_gps中,i.local[i.current]随物理时钟同步更新;
第四步,节点i进行内部时钟同步过程:节点i向直属的上级节点j发出同步服务请求,如果节点i收到从上级节点j发来的同步帧sync_message(j.local[j.current],j.max_gps),节点i检查节点j的GPS时间戳是否和节点i的i.max_gps一样新,随后检查j.local[j.current]是否比i.global[i.current]大,如果两者皆满足,代表节点i对其他节点的估计i.global[i.current]有误差,则更新i.global[i.current]为j.local[j.current],j.global[j.current]以物理时钟的(1-ρ)/(1+ρ)倍更新;
第五步,节点i比较数组i.local[]各元素,取最大者为i.mlocal,比较数组i.global[]各元素,取最大者为i.mglobal;
第六步,节点i比较i.mlocal和i.mglobal的大小,取较大者为i.logical即逻辑时钟已完成节点时钟同步,i.logical随物理时间同步更新。
本实施例中,节点间的同步误差如下述公式:|i.log ical(t)-j.log ical(t)|≤2(D+ρ(T+D)),节点间的同步误差大约控制在节点间信号延迟2倍以内,网络结构呈二叉树结构向下递推,本实施例的目的是使用该方法,在尽量小的网络开销和节点计算开销下,满足网络的同步精度要求。
将本实施例方法以软件的形式写入各开发板中,再以该开发板为无线传感器网络节点组建网络,观察网络通信情况,主要是确认网络已经建立,顶层节点接入外部时钟源。在实施例中,晶振漂移ρ取10-4秒,同步周期τ取1秒。网络的分层层数根据节点的通信容量和信号覆盖范围而定。
在该实际组网实验的基础上,对调整参数ρ和调整同步周期τ之间的关系进行了模拟仿真,仿真结果如图2所示,图(a)为模拟的未经处理晶振频率变化图,(b)为经过参数调整后逻辑频率变化图,这两幅图中的纵坐标分别表示原始频率和基准频率、逻辑频率和基准频率之差。而图(c)为一柱状图,表示将处理前后的同步周期进行对比。其中,1号柱代表处理前的同步周期,2号柱代表处理后的同步周期。由该图可知,经过处理的逻辑频率比原始频率稳定性要好很多,由此可以在满足一定定时精度的条件下,尽可能地延长同步周期,这对于能耗敏感的无线传感器网络有着很大的意义,尤其是在发射功耗远远超过运算功耗的情况下。
Claims (1)
1.一种无线传感器网络中分层时间比较时钟同步方法,其特征在于,包括如下步骤:
步骤一,网络开始初始化:以总的基站/协调器为顶层,根据信号强度和设备种类发出隶属关系确认帧,对应的设备接受到确认帧后,并返回应答帧,以此类推,完成对整个网络的分层设置,同时确认网络达到稳定状态;
步骤二,从顶层开始,逐层开始同步,同步分为两个部分:外部时钟源同步和内部时钟源同步,外部时钟源同步过程中,若节点i接到GPS同步信号,节点i的当前有效数组坐标i.current加一,外部时钟源同步为内部时钟源同步提供时间基准,各节点根据内部时钟源和外部时钟源同步结果的比较获得该节点的逻辑时间;
步骤三,各节点统一设定同步周期τ,随后各节点根据最初若干次同步结果以及同步精度调整时钟漂移参数ρ、同步周期τ,若节点某次同步满足同步精度,则增加同步周期τ,减少***开销;若不满足,则调整时钟漂移参数ρ,并将减少同步周期τ;
步骤四,节点i检查当前有效数组坐标是否大于数组长度,如果成立,当前有效数组坐标清零,抛弃失效的时间戳,如果不成立,当前有效数组坐标继续计数,重复步骤二。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100450322A CN101466142B (zh) | 2009-01-08 | 2009-01-08 | 无线传感器网络中分层时间比较时钟同步方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100450322A CN101466142B (zh) | 2009-01-08 | 2009-01-08 | 无线传感器网络中分层时间比较时钟同步方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101466142A CN101466142A (zh) | 2009-06-24 |
CN101466142B true CN101466142B (zh) | 2011-02-09 |
Family
ID=40806441
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009100450322A Expired - Fee Related CN101466142B (zh) | 2009-01-08 | 2009-01-08 | 无线传感器网络中分层时间比较时钟同步方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101466142B (zh) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8228757B2 (en) * | 2009-12-31 | 2012-07-24 | Wireless Seismic, Inc. | Synchronization of modules in a wireless array |
CN101883420B (zh) * | 2010-06-25 | 2012-12-12 | 中国科学院软件研究所 | 一种无线传感器网络时间同步方法 |
CN102761941B (zh) * | 2011-04-28 | 2016-08-03 | 北京云天创科技有限公司 | 一种利用超低功耗无线智能传感器网络协议传输的方法 |
CN102196554A (zh) * | 2011-06-10 | 2011-09-21 | 西安电子科技大学 | 通过簇平均实现无线传感器网络平均时钟同步的方法 |
CN102355319B (zh) * | 2011-08-17 | 2015-07-08 | 中国科学院深圳先进技术研究院 | 无线传感器网络中的时间同步方法及*** |
CN103175566B (zh) * | 2011-12-22 | 2016-03-30 | ***通信集团公司 | 一种校准传感器的***、装置及方法 |
CN102547965B (zh) * | 2011-12-22 | 2014-04-30 | 中国科学院上海微***与信息技术研究所 | 一种gps授时脉冲在中高速传感器网络中的应用*** |
CN102566411B (zh) * | 2012-01-12 | 2014-04-09 | 孙得膑 | 高精度授时授频授相统一***及其设计方法 |
US9226251B2 (en) * | 2012-11-30 | 2015-12-29 | Qualcomm Incorporated | Systems and methods for optimization of synchronization message transmission intervals in a peer-to-peer network |
CN104284411B (zh) * | 2013-07-04 | 2018-02-09 | 普天信息技术研究院有限公司 | 一种下行同步周期自动调整的方法 |
CN103402250B (zh) * | 2013-07-26 | 2014-11-26 | 深圳职业技术学院 | 一种大规模无线传感网络中时钟同步的方法及装置 |
CN103746762B (zh) * | 2013-11-29 | 2017-02-08 | 中国矿业大学 | 一种按需分层无线传感器网络时间同步方法 |
CN103957589B (zh) * | 2014-04-01 | 2017-03-29 | 安徽工程大学 | 一种多跳低开销的分布式时钟同步方法 |
WO2016166405A1 (en) * | 2015-04-17 | 2016-10-20 | Nokia Technologies Oy | Wireless device ranging |
EP3270286B1 (en) | 2016-07-13 | 2019-03-06 | Bayerische Motoren Werke Aktiengesellschaft | Vehicle control logic considering timestamps |
CN109413734B (zh) * | 2018-12-14 | 2020-10-30 | 郑州联睿电子科技有限公司 | 一种多时基基站及其构建方法 |
CN110446253A (zh) * | 2019-07-26 | 2019-11-12 | 杭州微萤科技有限公司 | 一种通过uwb定位过程中卫星的同步方法 |
CN113473404B (zh) * | 2021-07-02 | 2023-06-09 | 华南农业大学 | 一种基于宽窄带融合的农业物联网通信方法及设备 |
CN117979412B (zh) * | 2024-03-29 | 2024-07-19 | 江铃汽车股份有限公司 | 一种车载通讯远程终端内部时间同步方法及*** |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1972182A (zh) * | 2006-12-04 | 2007-05-30 | 中国科学院计算技术研究所 | 一种提高无线传感器网络时间同步精度的方法 |
-
2009
- 2009-01-08 CN CN2009100450322A patent/CN101466142B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1972182A (zh) * | 2006-12-04 | 2007-05-30 | 中国科学院计算技术研究所 | 一种提高无线传感器网络时间同步精度的方法 |
Non-Patent Citations (4)
Title |
---|
Bharath Sundararaman.Clock synchronization for wireless sensor networks: a survey.《Ad Hoc Networks (Elsevier)》.2005,第3卷(第3期),281-323. * |
M. Maroti.The Flooding Time Synchronization Protocol.《in Proceedings of the 2nd International Coference on Embedded Networked Sensor Systems》.2004,39-49. * |
李翔.无线传感器网络中时间同步技术的研究.《华中科技大学硕士学位论文》.2007, * |
谢洁锐.无线传感器网络的时间同步技术.《计算机工程与设计》.2007, * |
Also Published As
Publication number | Publication date |
---|---|
CN101466142A (zh) | 2009-06-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101466142B (zh) | 无线传感器网络中分层时间比较时钟同步方法 | |
Zhang et al. | A low duty cycle efficient MAC protocol based on self-adaption and predictive strategy | |
CN104519563B (zh) | 一种分层无线传感器网络时间同步方法 | |
Swain et al. | A model for the classification and survey of clock synchronization protocols in WSNs | |
Qiu et al. | STETS: A novel energy-efficient time synchronization scheme based on embedded networking devices | |
CN104038991A (zh) | 一种长距离线型无线传感器网络跨层通信方法 | |
Shi et al. | A novel rapid-flooding approach with real-time delay compensation for wireless-sensor network time synchronization | |
CN102196554A (zh) | 通过簇平均实现无线传感器网络平均时钟同步的方法 | |
CN105188126A (zh) | 基于平均场的分布式多跳无线网络时钟同步方法 | |
Dagdeviren et al. | Semi-asynchronous and distributed weighted connected dominating set algorithms for wireless sensor networks | |
Chalapathi et al. | E-SATS: An efficient and simple time synchronization protocol for cluster-based wireless sensor networks | |
CN106912100A (zh) | 基于TPSN和TSync的家电网络时间同步方法 | |
CN104994567B (zh) | 一种低功耗无线组网通信的方法和*** | |
Li et al. | Incorporating energy heterogeneity into sensor network time synchronization | |
CN110363980A (zh) | 基于TDMA和Contiki的LoRa采集装置及其采集方法 | |
US8934596B2 (en) | Methods and apparatuses for synchronization of wireless devices in wireless networks | |
CN101977433B (zh) | 无线传感器网络的平均时钟同步方法 | |
Mozumdar et al. | An Efficient Data Aggregation Algorithm for Cluster-based Sensor Network. | |
Swain et al. | A weighted average–based external clock synchronisation protocol for wireless sensor networks | |
Sun et al. | Photovoltaic modules monitoring based on WSN with improved time synchronization | |
Nguyen et al. | Efficiency reservation MAC protocol for underwater acoustic sensor networks | |
Wang et al. | A global clock skew estimation scheme for hierarchical wireless sensor networks | |
CN102413178B (zh) | 一种安全的无线传感器网络节点的自动分簇方法 | |
Yadav et al. | Cluster based hierarchical wireless sensor networks (CHWSN) and time synchronization in CHWSN | |
CN101753241A (zh) | 网络同步方法与*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110209 Termination date: 20140108 |