摘要
本文深入阐述了基于以太网现场总线系统的EtherCAT技术。EtherCAT为现场总线技术领域树立了新的性能标准,具备灵活的网络拓扑结构,系统配置简单,和现场总线系统一样操作直观简便。另外,由于EtherCAT实现成本低廉,因此使系统得以在过去无法应用现场总线网络的应用场合中选用现场总线。
引言
现场总线已成为自动化技术的集成组件,通过大量的实践试验和测试,如今已获得广泛应用。正是由于现场总线技术的普及,才使基于PC的控制系统得以广泛应用。
虽然控制器CPU的性能(尤其是IPC的性能)发展迅猛,但传统的现场总线系统正日趋成为控制系统性能发展的“瓶颈”。急需技术革新的另一个因素则是由于传统的解决方案并不十分理想。传统的方案是,按层划分的控制体系通常都由几个辅助系统所组成(周期系统):即实际控制任务、现场总线系统、 I/O 系统中的本地扩展总线或外围设备的简单本地固件周期。正常情况下,系统响应时间是控制器周期时间的3-5倍。
在现场总线系统之上的层面(即网络控制器)中,以太网往往在某种程度上代表着技术发展的水平。该方面目前较新的技术是驱动或I/O级的应用,即过去普遍采用现场总线系统的这些领域。这些应用类型要求系统具备良好的实时能力、适应小数据量通讯,并且价格经济。EtherCAT可以满足这些需求,并且还可以在I/O级实现因特网技术。
以太网和实时能力
目前,有许多方案力求实现以太网的实时能力。例如,CSMA/CD介质存取过程方案,即禁止高层协议访问过程,而由时间片或轮循方式所取代的一种解决方案;另一种解决方案则是通过专用交换机精确控制时间的方式来分配以太网包。这些方案虽然可以在某种程度上快速准确地将数据包传送给所连接的以太网节点,但是,输出或驱动控制器重定向所需要的时间以及读取输入数据所需要的时间都要受制于具体的实现方式。
如果将单个以太网祯用于每个设备,那么,理论上讲,其可用数据率非常低。例如,最短的以太网祯为84字节(包括内部的包间隔IPG)。如果一个驱动器周期性地发送4字节的实际值和状态信息,并相应地同时接收4字节的命令值和控制字信息,那么,即便是总线负荷为100%(即:无限小的驱动响应时间)时,其可用数据率也只能达到4/84= 4.8%。如果按照10 µs的平均响应时间估计,则速率将下降到1.9%。对所有发送以太网祯到每个设备(或期望祯来自每个设备)的实时以太网方式而言,都存在这些限制,但以太网祯内部所使用的协议则是例外。
图1:传统现场总线系统响应时间
EtherCAT工作原理
EtherCAT技术突破了其他以太网解决方案的系统限制:通过该项技术,无需接收以太网数据包,将其解码,之后再将过程数据复制到各个设备。EtherCAT从站设备在报文经过其节点时读取相应的编址数据,同样,输入数据也是在报文经过时插入至报文中(参见图2)。整个过程中,报文只有几纳秒的时间延迟。
图2:过程数据插入到报文中
由于发送和接收的以太网祯压缩了大量的设备数据,所以可用数据率可达90%以上。100 Mb/s TX的全双工特性完全得以利用,因此,有效数据率可以达到> 100 Mb/s (> 2 x 100 Mb/s的90%) (参见图3)。
符合IEEE 802.3标准的以太网协议无需附加任何总线即可访问各个设备。耦合设备中的物理层可以将双绞线或光纤转换为LVDS(一种可供选择的以太网物理层标准[4,5]),以满足电子端子块等模块化设备的需求。这样,就可以非常经济地对模块化设备进行扩展了。之后,便可以如普通以太网一样,随时进行从底板物理层LVDS到100 Mb/s TX物理层的转换。
图3:有效数据率对比
协议
EtherCAT是用于过程数据的优化协议,凭借特殊的以太网类型,可以在以太网祯内直接传送。EtherCAT协议可包括几个EtherCAT报文,每个报文都服务于一块逻辑过程映像区的特定内存区域,该区域最大可达4GB字节。数据顺序不依赖于网络中以太网端子的物理顺序,可任意编址。从站之间的广播、多播和通讯均得以实现。如果需要实现最大化性能,并且需要将EtherCAT组件作为同一子网控制器进行操作,则可直接传送以太网祯。
图4:EtherCAT遵循1EEE 802.3[3]的标准帧
然而,EtherCAT不仅限于单个子网的应用。EtherCAT UDP将EtherCAT协议封装为 UDP/IP数据报文(参见图4),这就意味着,任何以太网协议堆栈的控制均可编址到EtherCAT系统之中,甚至通讯还可以通过路由器跨接到其它子网中。显然,在这种变体结构中,系统性能取决于控制的实时特性和以太网协议的实现方式。因为UDP数据报文仅在第一个站才完成解包,所以EtherCAT网络自身的响应时间基本不受影响。
另外,根据主/从数据交换原理,EtherCAT 也非常适合控制器之间(主/从)的通讯。自由编址的网络变量可用于过程数据以及参数、诊断、编程和各种远程控制服务,满足广泛的应用需求。同理,主站/从站与主站/主站之间的数据通讯接口相同。
从站到从站的通讯则有两种机制以供选择。一种机制是,上游设备和下游设备可以在同一周期内实现通讯,速度非常快。由于这种方法与拓扑结构高度相关,因此适用于由设备架构设计所决定的从站到从站的通讯,如打印或包装应用等。而对于自由配置的从站到从站的通讯,则可以采用第二种机制——数据通过主站进行中继。这种机制需要两个周期才能完成,但由于EtherCAT的性能非常卓越,因此该过程耗时仍然小于采用其他方法所耗费的时间。
按照文献[3]所述,EtherCAT仅使用标准的以太网祯,无任何压缩。因此,EtherCAT 以太网祯可以通过任何以太网MAC发送,并可以使用标准工具(如:monitor)。
拓扑
图5:灵活的拓扑结构:线型、数型或星型
EtherCAT几乎支持任何拓扑类型,包括线型、树型、星型等(参见图5)。通过现场总线而得名的总线或线型结构也可用于以太网,并且不受限于级联交换机或集线器的数量。
最有效的系统连线方法是对线型、分支或树叉结构进行拓扑组合。因为所需接口在I/O 模块等很多设备中都已存在,所以无需附加交换机。当然,仍然可以使用传统的、基于以太网的星型拓扑结构。
还可以选择不同的电缆以提升连线的灵活性:灵活、廉价的标准以太网补偿电缆可采用 100 Mb/s TX模式传送信号;塑封光纤(POF)可补充用于特殊应用场合;还可以通过交换机或介质转换器实现不同以太网连线(如:不同的光纤和铜电缆)的完整组合。
快速以太网的物理层(100 M b/s-TX)允许两个设备之间的最大电缆长度达到100米。由于连接的设备数量可达65535,因此,网络的容量几乎没有限制。
分布时钟
精确同步对于同时动作的分布式过程而言尤为重要。例如,几个伺服轴同时执行协调运动时,便是如此。
最有效的同步方法是精确排列分布时钟(请参阅IEEE 1588标准[6])。与完全同步通讯中容易出现通讯故障,立即影响同步品质的情况相比,分布排列的时钟对于通讯系统中可能存在的相关故障延迟具有极好的容错性。
采用EtherCAT,数据交换就完全基于纯硬件机制。由于通讯采用了逻辑环结构 (借助于全双工快速以太网的物理层),主站时钟可以简单、精确地确定各个从站时钟传播的延迟偏移,反之亦然。分布时钟均基于该值进行调整,这意味着可以在网络范围内使用非常精确的、小于1 微秒的、确定性的同步误差时间基(参见图6)。而跨接工厂等外部同步则可以基于IEEE 1588 标准。
此外,高分辨率的分布时钟不仅可以用于同步,还可以提供数据采集的本地时间精确信息。当采样时间非常短暂时,即使是出现一个很小的位置测量瞬时同步偏差,也会导致速度计算出现较大的阶跃变化,例如,运动控制器通过顺序检测的位置计算速度便是如此。而在EtherCAT中,引入时间戳数据类型作为一个逻辑扩展,以太网所提供的巨大带宽使得高分辨率的系统时间得以与测量值进行链接。这样,速度的精确计算就不再受到通讯系统的同步误差值影响,其精度要高于基于自由同步误差的通讯测量技术。