首页> 中国专利> 一种基于IEEE1588的精确时钟频率同步方法及装置

一种基于IEEE1588的精确时钟频率同步方法及装置

摘要

本发明提供了一种基于IEEE1588的精确时钟频率同步方法及装置,该方法通过接收主时钟设备发送的时钟同步报文,解析所述时钟同步报文,获取第一频率补偿值;根据设置的多个检测节点测量的本地时钟的完整时钟周期数及非完整时钟周期数,计算第二频率补偿值,其中,相邻检测节点的时间间隔小于本地时钟的时钟周期;根据所述第一频率补偿值及所述第二频率补偿值,对本地时钟的频率进行同步。在本发明中通过设置多个检测节点对非完整时钟周期进行精确测量,并将测量结果体现到频率补偿值中,因此,有效的提高了频率补偿值的准确性,从而增加了节点时钟频率的同步精度。

著录项

  • 公开/公告号CN102710359A

    专利类型发明专利

  • 公开/公告日2012-10-03

    原文格式PDF

  • 申请/专利权人 北京东土科技股份有限公司;

    申请/专利号CN201210216953.2

  • 发明设计人 黄剑超;谈黎;

    申请日2012-06-27

  • 分类号H04J3/06;

  • 代理机构

  • 代理人

  • 地址 100041 北京市石景山区实兴东街18号

  • 入库时间 2023-12-18 06:47:36

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2014-12-24

    授权

    授权

  • 2012-11-28

    实质审查的生效 IPC(主分类):H04J3/06 申请日:20120627

    实质审查的生效

  • 2012-10-03

    公开

    公开

说明书

技术领域

本发明涉及工业以太网技术领域,尤其涉及一种基于IEEE1588的精确 时钟频率同步方法及装置。

背景技术

随着计算机网络的飞速发展,越来越多的工业领域对时钟同步提出了更 高的要求,尤其是在大多数以工业以太网为基础的分布式控制系统中,已经 对时钟同步的同步要求达到了亚微秒级。特别是在智能变电站、分布式控制 系统中,考虑到实时的数据采集、调度和控制,对时间统一的要求就更为严 格。

IEEE1588标准定义了一种精确时间协议(Precision Time Protocol,PTP), 该协议为分布式测控应用而设计,基于报文流加时间戳的思想,采用软、硬 件结合的实现方式,旨在实现亚微秒级的同步精度。PTP协议是针对分布式 网络测控系统提出的精确时钟同步协议,能够将运行在局域网中的各个节点 设备上各类不同精确度、分辨率和稳定性的独立时钟同步到一个统一的时间 标准上,占用最少的网络和本地计算资源,并保证较高的同步精度。该协议 完全兼容以太网技术,由于其高同步精度、低成本实现、方便安装与维护等 优越性,在供电管理、工业控制、测试和测量、网络通信等领域得到了广泛 的应用。

时钟的频率同步是指根据基准时钟源与本地时钟产生的频率差,以某种 算法处理获得的频率差,并根据该频率差调整本地时钟的输出频率,已达到 节点时钟与主时钟同步的目的。随着IEEE1588标准定在工业以太网的广发 应用,以IEEE 1588报文作为时钟源进行时钟的频率同步就成为了工业以太 网中常用的手段。

但是,常规的基于IEEE1588的时钟同步方法只对本地时钟的时间进行 修正,而不对本地时钟的频率进行修正。然而,节点时钟一般是用一个由廉 价的有源或无源晶振驱动的计数器来实现时间计量的。由于温度变化、电磁 干扰、振荡器老化和生产调试等原因,时钟的振荡器频率和标准频率之间会 出项偏差。若这些偏差经过长时间的积累而不进行修正,就会使时钟时间在 短时间内出现较大的漂移。

解决上述问题以便维持节点时钟良好地守时性能的方法有两种,一是采 用性能稳定、精度较高的晶体振荡器;但是这会增加系统的成本,另外,晶 振老化问题依然不可避免。二是采用特定的算法和电路对晶振频率进行动态 的补偿,以消除时钟不稳定性对同步精度的影响,然而现有的测量主时钟秒 脉冲的方法属于粗测,只能根据本地晶振的性能测量单位时间内的完整的时 钟周期数,无法对非完整的时钟周期数进行测量,在特殊的情况下这种误差 将非常大,因此,现有方法计算的频率补偿值不够准确,从而导致节点时钟 频率的同步精度得不到保障。

发明内容

有鉴于此,本发明提供一种基于IEEE1588的精确时钟频率同步方法及 装置,用以解决现有技术中由于频率补偿值不精确,而导致的节点时钟频率 同步精度低的问题。

本发明提供了一种基于IEEE1588的精确时钟频率同步方法,该方法包 括:

接收主时钟设备发送的时钟同步报文,解析所述时钟同步报文,获取第 一频率补偿值;

根据设置的多个检测节点测量的本地时钟的完整时钟周期数及非完整 时钟周期数,计算第二频率补偿值,其中,相邻检测节点的时间间隔小于本 地时钟的时钟周期

根据所述第一频率补偿值及所述第二频率补偿值,对本地时钟的频率进 行同步。

本发明还提供了一种基于IEEE1588的精确时钟频率同步装置,该装置 包括:

接收模块,用于接收主时钟设备发送的时钟同步报文,解析所述时钟同 步报文,获取第一频率补偿值;

计算模块,用于根据设置的多个检测节点测量的本地时钟的完整时钟周 期数及非完整时钟周期数,计算第二频率补偿值,其中,相邻检测节点的时 间间隔小于本地时钟的时钟周期;

同步模块,用于根据所述第一频率补偿值及所述第二频率补偿值,对本 地时钟的频率进行同步。

本发明提供了一种基于IEEE1588的精确时钟频率同步方法及装置,该 方法通过接收主时钟设备发送的时钟同步报文,解析所述时钟同步报文,获 取第一频率补偿值;根据设置的多个检测节点测量的本地时钟的完整时钟周 期数及非完整时钟周期数,计算第二频率补偿值,其中,相邻检测节点的时 间间隔小于本地时钟的时钟周期;根据所述第一频率补偿值及所述第二频率 补偿值,对本地时钟的频率进行同步。在本发明中通过设置多个检测节点对 非完整时钟周期进行精确测量,并将测量结果体现到频率补偿值中,因此, 有效的提高了频率补偿值的准确性,从而增加了节点时钟频率的同步精度。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部 分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的 前测量的线路时延进行时钟校准,同时,节点设备向主设备发送延时请求报 文并记录其对应的发送时间作为延迟测量发送时间戳ts2[k],主设备接收并 解析该延时请求报文后,并向节点设备回复延时答复报文,从设备在收到延 时答复报文后记录该报文带有的延时请求报文的接收时间,作为延迟测量接 收时间戳tM2[k]并更新线路时延值。

S102:解析所述时钟同步报文,获取第一频率补偿值。

具体的,节点设备通过记录的四个时间戳,计算时间偏移量Offset[k]= ts1[k]-tM1[k]-Delay_latest,并采用频率补偿公式计算频率补偿值 FreqCompValue[K]

FreqCompValue[k]=FreqCompValue[0]+Δu[k]Δu[k]=β·FreqCompValue[k-1]+Δu[k-1]β=α-1=(r[k]-r[k-1])-Offset[k]-(y[k]-y[k-1])2,Δu[0]=0

其中,Δu[k]为频率补偿值的变化量,r[k]为从设备第k次收到同步报文 时所对应的主时钟的系统时间,节点设备根据测量的线路时延值对其值进行 估计,估计值为:r[k]=tM1[k]+Delay_latest;y[k]为从设备第k次收到同步报 文时的从时钟系统时间,y[k]=ts1[k];FreqCompValue[0]=2q/Ratio, CompPrecision≤1/(Tsync·fnorm),2q≥Ratio/CompPrecision,2r≥2q/Ratio,2p≥2q, 其中:fPLL为从时钟模块的晶体振荡器经PLL后输出的频率,fnorm为从时钟 和主时钟系统时间的标称频率,Ratio=fPLL/fnorm,CompPrecision为频率补偿 精度,Tsync为主设备发送同步报文的周期。

S103:根据设置的多个检测节点测量的本地时钟的完整时钟周期数及非 完整时钟周期数,计算第二频率补偿值,其中,相邻检测节点的时间间隔小 于本地时钟的时钟周期。

另外,本发明在对测量脉冲数时,所述根据设置的多个检测节点测量非 完整时钟周期数包括:

不当限定。在附图中:

图1为本发明提供的一种基于IEEE1588的精确时钟频率同步的过程示 意图;

图2为本发明提供的一种精确测量本地时钟周期数的结构示意图;

图3为本发明提供的一种基于IEEE1588的精确时钟频率同步的详细过 程示意图;

图4为本发明提供的一种基于IEEE1588的精确时钟频率同步装置的结 构示意图。

具体实施方式

为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚、明 白,以下结合附图和实施例,对本发明进行进一步详细说明。应当理解,此 处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明实施例为了解决现有技术中由于频率补偿值不精确,而导致的节 点时钟频率同步精度低的问题,提供了一种基于IEEE1588的精确时钟频率 同步方法及装置,从而有效的实现了对非完整时钟周期进行精确测量,并将 测量结果增加到频率补偿值中,因此,有效的提高了频率补偿值的准确性, 从而增加了节点时钟频率的同步精度。

下面结合说明书附图,对本发明进行详细说明。

图1为本发明提供的一种基于IEEE1588的精确时钟频率同步的过程示 意图,该过程包括以下几个步骤:

S101:节点时钟设备接收主时钟设备发送的时钟同步报文。

主设备已组播的方式周期发送sync报文至每个节点设备,节点设备接 收该sync报文,并记录该sync报文的的接收时间作为接收时间戳ts1[k],然 后主设备发送带有sync报文发送时间戳tM1[k]的跟随报文,节点设备根据当

在第一个完整时钟周期测量之前的每个检测节点处,检测是否出现脉冲 跳变,当出现脉冲跳变时,记录检测到的该脉冲跳变的检测节点的序号,根 据该检测节点的序号,以及检测节点的设置周期,确定第一非完整时钟周期 数;在最后一个完整时钟周期测量之后的每个检测节点处,检测是否出现脉 冲跳变,当出现脉冲跳变时,记录检测到的该脉冲跳变的检测节点的序号, 根据该检测节点的序号,以及检测节点的设置周期,确定第二非完整时钟周 期数;

根据第一非完整时钟周期数和第二非完整时钟周期数,确定非完整时钟 周期数。

S104:根据所述第一频率补偿值及所述第二频率补偿值,对本地时钟的 频率进行同步。

另外,在本发明中为了进一步提高测量精度,排除主钟切换或链路故障 等引起的频率补偿值异常对测量精度的影响,节点设备根据第一频率补偿值 及第二频率补偿值,对本地时钟的频率进行同步包括:

将第一频率补偿值及第二频率补偿值进行累加,判断所述累加后的频率 补偿值是否大于当前保存的阈值;

当确定所述累加后的频率补偿值不大于该阈值时,根据所述累加后的频 率补偿值修正本地时钟的频率。

当确定所述累加后的频率补偿值大于该阈值时,保持本地时钟的频率不 变。

另外,本发明对阈值的设置可以是人工手动设置的,也可以根据主时钟 的时钟同步报文及本地晶振的性能自动生成,为了提高阈值对异常报文的过 滤能力,并排除由于本地晶振老化而导致的对阈值的影响,在本发明当确定 将第一频率补偿值及第二频率补偿值进行累加后的频率补偿值大于设定的 阈值时,采用所述累加后的频率补偿值,通过一定的算法对该阈值进行调整。

在本发明中节点设备除了根据主设备发送的时钟同步报文计算第一频 率补偿值外,还通过设置的多个检测节点测量精确测量脉冲数中非整数脉冲 数,并将所述测量结果通过第二频率补偿值进行体现,从而有效的提高了主 时钟与节点时钟之间的频率补偿值的准确性,从而增加了节点时钟频率的同 步精度。

图2为本发明提供的一种精确测量每秒脉冲数的结构示意图,在该示意 图中,T0是一个完整的本地时钟的时钟周期,T1及T2为非完整的时钟周 期,在现有技术中只能测量1S内的完整时钟周期数即秒脉冲PPS,但是, 对于不完整的时钟周期T1及T2不能准确测量,只能丢弃或者用一个估计值 进行基本补偿,而本发明通过在单位时间内插入多个监测点,在第一个时钟 周期测量之前的每个检测节点处,检测是否出现脉冲跳变,当出现脉冲跳变 时,记录检测到的该脉冲跳变的检测节点的序号,根据该检测节点的序号, 以及检测节点的设置周期,确定第一非完整时钟周期数T1;在最后一个时 钟周期测量之后的每个检测节点处,检测是否出现脉冲跳变,当出现脉冲跳 变时,记录检测到的该脉冲跳变的检测节点的序号,根据该检测节点的序号, 以及检测节点的设置周期,确定第二非完整时钟周期数T2,其中,插入的 相邻检测节点的时间间隔小于本地时钟的时钟周期,例如,本地时钟晶振的 性能为10MPPS,根据本发明可以设置相邻检测节点的时间间隔为100PS, 通过插入1000个检测节点,可以有效的将精度控制在纳秒级。

图3为本发明提供的一种基于LEEE1588的精确时钟频率同步的详细过 程示意图,在该示意图中,具体过程包括如下几个步骤:

S301:节点时钟设备接收主时钟设备发送的时钟同步报文。

S302:解析所述时钟同步报文,获取第一频率补偿值。

S303:根据设置的多个检测节点测量的本地时钟的完整时钟周期数及非 完整时钟周期数,计算第二频率补偿值,其中,相邻检测节点的时间间隔小 于本地时钟的时钟周期。

S304:将第一频率补偿值及第二频率补偿值进行累加,判断所述累加后 的频率补偿值是否大于当前保存的阈值,当判定结果为是时,进行步骤S306, 否则,进行步骤S305。

S305:根据所述累加后的频率补偿值修正本地时钟的频率。

S306:保持本地时钟的频率不变。

S307:采用所述累加后的频率补偿值,通过一定的算法对阈值进行调整。

图4为本发明提供的一种基于IEEE1588的精确时钟频率同步装置的结 构示意图,该装置包括:

接收模块41,用于接收主时钟设备发送的时钟同步报文,解析所述时钟 同步报文,获取第一频率补偿值;

计算模块42,用于根据设置的多个检测节点测量的本地时钟的完整时钟 周期数及非完整时钟周期数,计算第二频率补偿值,其中,相邻检测节点的 时间间隔小于本地时钟的时钟周期;

同步模块43,用于根据所述第一频率补偿值及所述第二频率补偿值,对 本地时钟的频率进行同步。

该频率同步装置还包括:

测量模块44,用于在第一个完整时钟周期测量之前的每个检测节点处, 检测是否出现脉冲跳变,当出现脉冲跳变时,记录检测到的该脉冲跳变的检 测节点的序号,根据该检测节点的序号,以及检测节点的设置周期,确定第 一非完整时钟周期数;在最后一个完整时钟周期测量之后的每个检测节点处, 检测是否出现脉冲跳变,当出现脉冲跳变时,记录检测到的该脉冲跳变的检 测节点的序号,根据该检测节点的序号,以及检测节点的设置周期,确定第 二非完整时钟周期数;根据第一非完整时钟周期数和第二非完整时钟周期数, 确定非完整时钟周期数。

所述同步模块43,具体用于将第一频率补偿值及第二频率补偿值进行累 加,判断所述累加后的频率补偿值是否大于当前保存的阈值,当确定所述累 加后的频率补偿值不大于该阈值时,根据所述累加后的频率补偿值修正本地 时钟的频率。

,所述同步模块43,具体还用于当确定所述累加后的频率补偿值大于该 阈值时,保持本地时钟的频率不变。

该频率同步装置还包括:

阈值调整模块45,用于当所述累加后的频率补偿值大于该阈值时,采用 所述累加后的频率补偿值对该阈值进行调整。

本发明提供了一种基于IEEE1588的精确时钟频率同步方法及装置,该 方法通过接收主时钟设备发送的时钟同步报文,解析所述时钟同步报文,获 取第一频率补偿值;根据设置的多个检测节点测量的本地时钟的完整时钟周 期数及非完整时钟周期数,计算第二频率补偿值,其中,相邻检测节点的时 间间隔小于本地时钟的时钟周期;根据所述第一频率补偿值及所述第二频率 补偿值,对本地时钟的频率进行同步。在本发明中通过设置多个检测节点对 非完整时钟周期进行精确测量,并将测量结果体现到频率补偿值中,因此, 有效的提高了频率补偿值的准确性,从而增加了节点时钟频率的同步精度。

上述说明示出并描述了本发明的优选实施例,但如前所述,应当理解本 发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可 用于各种其他组合、修改和环境,并能够在本文所述发明构想范围内,通过 上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和 变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围 内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号