基于IEEE 1588的时钟同步技术在分布式系统中的应用
以太网技术的高速发展为分布式系统在工业领域的广泛应用创造了条件。以太网具有成本低、可靠性高、传输速度快、通用性强、开放性好、发展潜力大等优点。但以太网也存在网络的确定性、实时性不强等缺陷。随着系统日益庞大复杂,分布化程度越来越高,对时钟同步的要求也逐步提高,虽然随着带宽的不断提高以及采用星形网络拓扑结构等减少冲突可能的技术的应用,以太网的确定性、实时性有一定程度的提高,但由于以太网自身冲突检测的载波帧听多路访问(CSMA/CD)机制,设备层和I/O层的数据采集与传输问题,以及TCP及UDP上的误差检测及翻译障碍等,以太网的实时性问题并未得到根本解决。仍不能满足精确定时的要求。
网络测量和控制系统的精密时钟同步协议标准IEEE1588适用于以太网、CAN总线和PROFIBUS等。IEEE 1588的基本功能是使分布式网络内所有从时钟与主时钟保持同步,该标准定义一种精确时间协议PTP(Precision rime Protocol),用于对标准以太网或其他采用多播技术的分布式总线系统中的传感器、执行器以及其他终端设备中的时钟进行微秒级同步。早期的网络时间协议(NTP)只有软件,而PTP协议同时使用硬件和软件,从而获得更精确的定时同步。PTP针对相对本地化、网络化的系统,子网或内部组件相对稳定的环境,特别适合于分布式系统在工业自动化方面的应用。
2 时钟同步原理
理论上,为每个系统节点配备GPS模块可得到精确的时间,这样系统中所有节点的时钟就和标准时间一致。从而达到同步;但分布式系统中节点数量大,GPS设备成本高、能耗大,且结构复杂,抗屏蔽性差,且出于安全性考虑排除大规模使用GPS的时钟同步方式。而基于以太网的IEEE 1588是通过在分布式系统各节点间交换时间报文的方法达到整个系统的时间同步。IEEE 1588通过交换报文来确定主时钟(Master)和从时钟(Slave)之间的时间偏移及报文传输的网络延迟。图1为IEEE 1588原理图。
由图1可知,主时钟的节点按照定义的间隔时间(缺省是2 s)周期性地向网络上所有从时钟节点发送“同步报文”(Sync),同时主时钟节点记录同步报文实际发送的时间戳,并在随后的“跟进报文”(Follow-up)中传送该精确时间戳TM1。这样,对传递和接收的测量与标准时间戳的传播可以分开。网络上所有其他从时钟节点收到上述报文后,记录同步报文的接收时间戳TS1,TS1和TM1的偏差中不但包含主从时钟的时间偏差,还包含未知的报文传输延迟,分布式系统中每个节点在网络中所处位置、布线方式、布线长度以及目前网络技术中的固有问题,也将造成测控数据在传输过程中的不同延迟。因此需要进一步测量并消除该传输延迟。与偏移测量不同,延迟测量是不规则进行的,从时钟节点按照定义的间隔时间(缺省值是4~60 s之间的随机值)向主时钟节点发送一个“延迟请求”(Dclay Request)报文,同时记录该报文的实际发送时间,作为精确的发送时间戳TS2,而主时钟接收到该报文时也记下接收时刻的精确时间戳TM2,并将该时间戳在随后的“延迟响应”(Delay Response)报文中发送给相应的从时钟节点。假设网络延迟是对称的,则有以下两式:
式中,τ为报文的传输延迟,△为从时钟相对主时钟的偏差。
由式(1)和式(2)可求得:
根据偏差△,调整从时钟,实现对时。
评论