摘要:本文根据PTP精确时间协议的同步原理,研究了时间同步的测试方法与实现,提出了测试时间同步的方法和系统结构,开发了时间同步测试仪。通过实际应用,证明这种测试方法能够准确地测试被测设备的时间同步精度。
关键词:工业以太网;精确时间同步协议;时间同步测试
传统以太网技术难以满足控制系统要求准确定时通信的实时性要求,一直被视为非确定性的网络。在要求实时性的应用场合,通信系统必须保证传输的实时性、确定性以及稳定性。这意味着除了提高工业现场设备向网络上传输数据的速度之外,还必须规定它们向网络上发送数据遵循的时序,这就要求具有在所有通信设备之间实现精确时间同步的能力。
IEEEl588标准定义了一个在工业自动化系统中的精确同步时钟协议:PTP(PrecisionTimeProtocol)协议。它使用时间戳来同步本地时间,在网络通信时,同步控制信号可能会有一定的波动,但它所达到的精度使得这项技术适用于基于以太网的系统。通过采用这种技术,以太网、TCWIP协议以及基于以太网技术的各种现场总线不需要大的改动就可以运行于高精度的网络控制系统之中。
一、PTP协议简介
PTP系统由一个或多个PTP子域(简称子域)组成,每一个子域都有一个子域名,它包括一个或多个彼此通信的时钟(包含普通时钟OC和边界时钟BC)。一个简单PI.P子域系统包括一个主时钟和多个从属时钟。如果同时存在多个潜在的主时钟,那么活动的主时钟将根据最优化的主时钟算法决定。
所有的时钟不断地与主时钟比较时钟属性,如果新时钟加入系统或现存的主时钟与网络断开,则其他时钟会重新决定主时钟。
如果多个PTP子系统需要互联,则必须由边界时钟来实现。边界时钟的某个端口会作为从属端口与子系统相联,并且为整个系统提供时钟标准。因此,这个子系统的主时钟是整个系统的原主时钟。边界时钟的其他端口会作为主端口,通过边界时钟的这些端口将同步信息传送到子系统。
二、时间同步过程
PTP协议的时间同步方式是由主时钟周期性地发出同步(Sync)信息,Sync信息是包含了一个时间戳,精确地描述了数据包发出的预计时间(OriginTimestamp)。由于信息包含的是预计的发出时间而不是真实的发出时间,所以Sync信息的真实发出时间(PreciseOriginTimeStamp)被测量后在随后的Follow_up信息中发出。Sync信息的接收方记录下真实的接收时间(sync_receipt_fime)。使用Follow—Up信息中的真实发出时间(PreciseOriginTimeStamp)和接收方的真实接收时间(sync_receipt_time),可以计算出从属时钟与主时钟之间的时差,并据此更正从属时钟的时间。
但是按照以上方法计算出的时差包含了网络传输造成的延时,所以使用Delay_Req信息来定义网络的传输延时。Delay_Req信息由从时钟在收到Sync信息后发出。与Sync信息一样,发送方记录准确的发送时间(dehy_req_sending_time),接收方记录准确的接收时间(delayReceiptTimestamp)。准确的接收时间包含在Delay_Resp信息中,从而计算出网络延时和时钟误差。这样,主时钟通过周期性地发出时间同步消息,从时钟通过不断地根据时间偏差修改本地系统时间,便实现了基于PTP协议时间同步机制。具体过程如图1所示。

三、时间同步精度测试原理
如图2所示,时间同步测试系统包括测试仪、主时钟和被测设备。测试时,由测试仪发送一条报文当作测试请求报文,该报文以组播方式发送,主时钟和被测设备接收到测试请求报文后,打上各自的本地时间戳放入测试响应报文中,然后向测试仪返回测试响应报文,测试仪收到测试响应报文后取出时间戳,被测设备与主时钟之间的时间戳的差便是要测试的时间同步偏差。考虑到设备本身存在的硬件性能、软件性能的差异,即他们之间本身存在的反应速度差会给测试精度带来误差,为了减少误差,提高测试结果的准确精度,可以在测试之前先求出两者之间的反应速度偏差作为测试结果的修正值。测试偏差减去测试修正值得到时间同步精度。

测试前,测试系统中的所有设备都与时间同步服务器同步。测试时,测试仪以组播方式发送时间同步测试请求报文,其中。请求报文中的Protocol Number为0X8888,主时钟和被测设备收到测试请求报文后,分别打上本地时间戳他和T1,并放入到测试响应报文中,然后将该测试响应报文返回给测试仪,测试仪收到报文后打上接收时间戳T2'和Tl',传给EPA测试器,测试器根据响应报文计算出被测设备与时间同步服务器的时间偏差P=T2-T1-t(t为修正值),并显示测试结果。具体的流程如图3所示。

五、测试示例
本测试仪采用嵌入式经过裁剪的嵌入式Linux为操作系统,使其按最小化要求满足我们所需要的功能,且降低了功耗的同时也更加稳定可靠。图形界面采用了小巧、可配置、移植性好的MiniGUI。
本测试仪对新型现场总线——EPA现场总线(《用于工业测量与控制系统的EPA(Ethemet for plant automation)系统结构和通信标准》)的测试结果如图4所示,图中红色字样的IP表示被测设备的IP地址的最后一个字段值,如对于128.128.1.103设备,其时间同步精度平均值avg为682629ns(纳秒),当前测试的时间同步精度值ns为473788ns,目前为止出现的最大值max为36922949ns,当前测试的测试序列号(TestMessagelD)id为213,最小值min为296ns。

六、结束语
本文在1EEEl588的基础上,介绍了精确时间同步协议的同步过程,分析了精确时间同步协议的测试原理,提出了时间同步精度的测试方法,开发了精确时间同步测试仪,通过对EPA现场总线的时间同步测试,展示了时间同步的测试过程。
