1588的实现
1588协议是一个运行在适配器上的C/C++工具,大多数1588协议的实现包括同步,诊断,延时请求,延时响应和报文管理。1588引导协议用于在启动时加快时间从站的时钟同步。实现8个同步报文的引导。
这里未提供“最佳主站”算法,本系统使用“推荐”主站选择方法决定子网络的主时钟。在启动时从站时钟无限期地收听主时钟。从时钟永远不会成为主时钟。也不会任命一个以上“推荐”主站。
为主时钟完整性的监视提供某些支持,如果一个从时钟发现失去主时钟,它将停止它的底版时钟,这将引起SERCOS适配器关闭SERCOS环路,并且所有运动停止。
输出同步
在范例应用中需要根据主轴的位置精确地接通或断开一个输出。用这个输出触发一个选通灯,照亮所有三个轴的相位。为了达到精确的输出闸门,使用一个特别的输出组件,它的时钟与系统中的其余时钟同步,由控制器内的运动计划器向这个组件发送一个输出值,这个值带着时间标记指示释放输出或停止输出的时间。输出组件使用先前说明过的任务同步电路管理输出的“定时”以达到精确的输出时间。
GPS作为最高主时钟
本运动系统范例的启动时间缺省为时间为0的UTC时间。对运动系统通常不需要绝对时间,但对一些明显的事件如故障条件,时间标记可能很有用处。所以这里集成了一个全球定位系统(GPS)接口,用于提供精确的UTC时间源。并用作系统的最高主时钟。这个接口集成在以太网适配器模块上,适配器上的算法从GPS接收器接收“秒脉冲”和UTC刷新,并调节它的本地时钟维持与GPS的同步。
结论
提供的1588在以太网分布运动系统的应用例子是可靠和精确的应用。硬件辅助电路提供的主时钟和从时钟之间的起伏精度不大于200纳秒。当使用GPS作为主时间基准时,在从时钟的累计波动为500纳秒。如果耒自GPS接收器的秒脉冲信号的边沿不清晰,还会产生附加的波动。