基于PTP协议的提高工业以太网时钟同步精度的方法研究

2016-11-22 08:22
化工自动化及仪表 2016年9期
关键词:以太网延时时钟

卓 岩 白 涛

(1.上海交通大学电子信息与电气工程学院,上海 200240;2.深圳中广核工程设计有限公司,广东 深圳 518172)

基于PTP协议的提高工业以太网时钟同步精度的方法研究

卓 岩1白 涛2

(1.上海交通大学电子信息与电气工程学院,上海 200240;2.深圳中广核工程设计有限公司,广东 深圳 518172)

介绍了PTP系统模型及其时间传播过程、点对点透明时钟的精确时钟同步原理,应用点延时机制计算路径延时。针对晶振频率漂移对硬件打时间戳的影响,用频率补偿算法来获得更准确的时间戳,从而提高工业以太网的时钟同步精度。

时钟同步 精度 PTP协议 频率漂移 透明时钟

目前工业以太网的同步技术越来越多地应用于工业控制领域与测量系统[1]。所谓时钟同步就是系统内各节点与时钟源的时间同步技术。目前广泛采用的时间同步协议主要有网络时间(NTP)同步和精确时钟同步(PTP)协议,可达到亚微秒级同步误差。但高要求的计量系统和事件序列分析/控制系统往往需要高精度的同步技术,尤其对于同时发生的事件,需要实现纳秒级的精确同步测量。以太网的时钟同步关键技术之一是同步消息包时间戳的精确性。

时间戳的精确性取决于消息包靠近物理层的程度,影响时间戳精度的因素有晶振的稳定性、物理层特性、时间戳分辨率、消息包收发时的抖动、网络结构与负荷。针对消息包收发时的抖动和晶振稳定性对时间戳精度的影响,文献[2]提出Kalman滤波算法估计消息包收发时的延时抖动,假设延时抖动服从正态分布,而在实际应用中时间戳值和消息包收发时的延时抖动值并不服从正态分布;文献[3]使用软件打时间戳的方法,提出自适应指数平滑的时钟同步算法,同步精度能够达到100μs;文献[4]采用DP83640芯片使用硬件打时间戳的方法,设备的同步时间源选择GPS,能达到纳秒级同步精度。

笔者采用Broadcom带IEEE 1588功能的物理层芯片,并且芯片带有专门寄存器存储收发消息的时间戳偏移量,使用在MAC层与PHY层之间硬件打时间戳的方法,以保证时间戳的高精确性。针对晶振稳定性、消息包收发时的抖动对消息包传输延时计算和时间戳精度的影响,提出基于PTP协议的频率补偿算法,减小频率漂移对同步精度的影响,使同步精度能够达到纳秒级。

1 PTP系统模型和时间传播过程

IEEE 1588标准定义了5种基本设备类型[5],分别是普通时钟(OC)、边界时钟(BC)、点到点透明时钟(TC)、端到端透明时钟和管理节点。每一个PTP系统不一定包含所有设备类型。笔者研究的PTP系统模型是包含有透明时钟的线性拓扑结构。

1.1点对点透明时钟模型

点对点透明时钟的模型如图1所示,点对点透明时钟端口只支持点延时测量机制。主时钟只需要发送Sync和Fellow_Up消息,并接收Pdelay_Req消息。

计算驻留时间和链路延时的时间戳是由本地时钟产生的,从时钟通过驻留时间和链路延时计算接收到Sync消息的主时钟时间。本地时钟打时间戳时会产生抖动,所以由主时钟和透明时钟的频率比引起的最大误差是不可忽略的,如果主时钟和本地时钟的频率比偏差为0.02%,则测得的驻留时间误差为0.02%。假设驻留时间为1ms,则最大误差为200ns,对于工业以太网这样的误差是不可接受的。有两种减小时钟误差的方法,一种方法是使本地时钟频率等于主时钟频率,图1中所示的RC模块通过估计本地时钟的比率来调整本地时钟晶振频率使本地时钟和主时钟的比率相同;另一种方法不调整本地时钟晶振的频率,本地时钟是一种自由状态,如图1中RE1模块。

图1 点对点透明时钟模型

笔者所提的频率补偿算法是基于上文提到的本地时钟等于主时钟的一种改进算法,通过频率补偿因子(RCF)减小频率偏差引起的抖动,同时减小温度等因素造成的晶振频率漂移,得到尽可能准确的时间戳,减小驻留时间和链路延时的计算误差,提高时钟的同步精度。

1.2PTP系统模型

PTP协议建立的是主从拓扑结构,在图2中,最优时钟(GM)有着最好的精确性和稳定性,最优时钟的时间被当做整个PTP域的参考时间。PTP系统中第n个节点的传播时间是n个链路延时和桥延时之和。路径延时包括线路延时和报文在发送端和接收端的抖动。

2 包含透明时钟的精确时钟同步原理

PTP协议基于同步消息传播和接收时的最精确的匹配时间,从时钟通过与主时钟交换同步消息而与主时钟达到同步。同步消息发送与链路延时测量如图3所示。

图2 PTP模型拓扑结构与延时

图3 同步消息发送与链路延时测量

2.1同步消息发送机制

为了让计数器的值能够加减,必须让时间值转化为同一时间基准。这里引入频率补偿因子(RFC)的概念,RFC是两个时钟的频率比值,用rx/y表示x和y之间的频率比。两个时钟之间理想的频率比rx/y=fx/fy。在图3a中频率比rn为:

(1)

2.2延时消息发送机制

PTP协议有两种延时测量机制,延时请求-响应机制和点延时机制。图3b是点延时机制测量两个端口间的传播时间。请求端n向应答端n-1周期性地发送Pdelay_Req消息,并打入时间戳t1(j),n-1接收到Pdelay_Req消息,记录接收到的时间t2(j)并立刻向从时钟n发送Pdelay_Resp消息,并打入时间戳t3(j),从时钟n接收到Pdelay_Resp消息,并记录接收的时间t4(j)。链路延时为:

(2)

其中,c是Pdelay_Resp消息中校正域的值。

3 PTP系统的同步算法

3.1延时的计算

PTP消息在网络中传播产生的延时可根据图3a计算,桥延时是PTP消息在一个时钟中驻留的时间:

(3)

链路延时是PTP消息在两个节点之间传播的时间,在图3b中从时钟n向从时钟n-1发送一个请求报文并记录消息离开的时间t1(j)。节点n-1收到请求消息并发送应答报文,节点n-1有两个时间点,一是收到请求消息时间t2(j),二是发送应答消息时间t3(j)。节点n-1应答延时的本地时间表达式为:

(4)

节点n请求延时的本地时间表达式为:

(5)

两个节点之间的频率补偿因子RCF的估计值为:

(6)

链路延时的表达式为:

(7)

(8)

其中H表示选择的连续Sync消息的个数。

3.2频率补偿同步算法

当从时钟接收到Sync消息,从时钟n首先根据接收到的两个相邻Sync消息中主时钟计数器的值和本地时钟计数器的值计算频率补偿因子RCF,计算公式为:

(9)

(10)

3.3频率补偿算法应用

频率补偿算法在工业以太网时钟同步中,可以提高网络时钟的同步精度。在利用点延时机制计算链路延时时,频率补偿算法可以用到校正域的计算中,用式(2)计算链路延时时,频率补偿算法能够减小由于抖动造成的链路延时和驻留时间的计算误差。网络中加入透明时钟后,用频率补偿算法计算驻留时间,能够减小计算多个时钟的延时而引入的误差,从而提高时钟同步的精度。

4 结束语

随着工业以太网在工业现场得到越来越多的应用,网络的复杂度和数据交换速度增加,提高网络中时钟同步精度成为热点。笔者参考目前应用广泛的精确时钟同步协议(PTP)建立了包含透明时钟的PTP系统模型,讨论了硬件打时间戳晶振稳定性对延时计算的影响,并介绍了一种频率补偿算法,消除频率漂移对延时计算的影响,从而提高时钟的同步精度。

[1] 关松青,肖昌炎,夏晓荣.IEEE 1588协议在工业以太网中的实现[J].计算机工程,2011,37(6):237~238.

[2] 赵小娇.随机信号建模和滤波在时间同步中的应用[D].北京:北京航空航天大学,2012.

[3] 谢太君.分布式系统高精度时钟同步的研究与实现[D].上海:上海交通大学,2015.

[4] Giorgi G,Narduzzi C.Performance Analysis of Kalman-Filter-Based Clock Synchronization in IEEE 1588 Networks[C].2009 International Symposium on Precision Clock Synchronization for Measurement,Control and Communication.Brescia:IEEE,2009:2902~2909.

[5] IEEE 1588,Precision Clock Synchronization Protocol for Networked Measurement and Control Systems[S].Geneva:International Electrotechnical Commission,2009.

ResearchofImprovingIndustrialEthernetClockSynchronizationAccuracyBasedonPTPProtocol

ZHUO Yan1, BAI Tao2

(1.SchoolofElectronicInformationandElectricalEngineering,ShanghaiJiaotongUniversity,Shanghai200240,China;2.ChinaNuclearPowerEngineeringDesignCo.,Ltd.,Shenzhen518172,China)

Both system model and PTP time propagation process was described, including the principle of peer-to-peer transparent clock’s accurate clock synchronization and making use of delay mechanism to calculate path delay. Regarding crystal oscillator frequency deviation’s effect on hardware timestamp, the frequency compensation algorithm was adopted to obtain a more accurate timestamps to improve industrial Ethernet clock synchronization accuracy.

clock synchronization, accuracy, PTP protocol, frequency drift, transparent clock

TP393

A

1000-3932(2016)09-0949-04

2016-07-13(修改稿)

猜你喜欢
以太网延时时钟
别样的“时钟”
基于1500以太网养猪场的智能饲喂控制系统的设计与实现
基于级联步进延时的顺序等效采样方法及实现
古代的时钟
日光灯断电关闭及自动延时开关设计
有趣的时钟
谈实时以太网EtherCAT技术在变电站自动化中的应用
时钟会开“花”
Two-dimensional Eulerian-Lagrangian Modeling of Shocks on an Electronic Package Embedded in a Projectile with Ultra-high Acceleration
浅谈EPON与工业以太网在贵遵高速公路中的应用