EtherCAT - 以太网现场总线
1. 引言
现场总线已成为自动化技术的集成组件,通过大量的实践试验和测试,如今已获得广泛应用。正是由于现场总线技术的普及,才使基于PC的控制系统得以广泛应用。然而,虽然控制器CPU的性能(尤其是IPC的性能)发展迅猛,但传统的现场总线系统正日趋成为控制系统性能发展的“瓶颈”。急需技术革新的另一个因素则是由于传统的解决方案并不十分理想。传统的方案是,按层划分的控制体系通常都由几个辅助系统所组成(周期系统):即实际控制任务、现场总线系统、I/O系统中的本地扩展总线或外围设备的简单本地固件周期。正常情况下,系统响应时间是控制器周期时间的3-5倍。 在现场总线系统之上的层面(即网络控制器)中,以太网往往在某种程度上代表着技术发展的水平。该方面目前较新的技术是驱动或I/O级的应用,即过去普遍采用现场总线系统的这些领域。这些应用类型要求系统具备良好的实时能力、适应小数据量通讯,并且价格经济。EtherCAT可以满足这些需求,并且还可以在I/O级实现因特网技术 (参见图1)。

图1: 传统现场总线系统响应时间
在现场总线系统之上的层面(即网络控制器)中,以太网往往在某种程度上代表着技术发展的水平。该方面目前较新的技术是驱动或I/O级的应用,即过去普遍采用现场总线系统的这些领域。这些应用类型要求系统具备良好的实时能力、适应小数据量通讯,并且价格经济。EtherCAT可以满足这些需求,并且还可以在I/O级实现因特网技术。
1.1 以太网和实时能力
目前,有许多方案力求实现以太网的实时能力。例如,CSMA/CD介质存取过程方案,即禁止高层协议访问过程,而由时间片或轮循方式所取代的一种解决方案;另一种解决方案则是通过专用交换机精确控制时间的方式来分配以太网包。这些方案虽然可以在某种程度上快速准确地将数据包传送给所连接的以太网节点,但是,输出或驱动控制器重定向所需要的时间以及读取输入数据所需要的时间都要受制于具体的实现方式。 如果将单个以太网 帧用于每个设备,那么,理论上讲,其可用数据率非常低。例如,最短的以太网帧为84字节(包括内部的包间隔IPG)。如果一个驱动器周期性地发送4字节的实际值和状态信息,并相应地同时接收4字节的命令值和控制字信息,那么,即便是总线负荷为100%(即:无限小的驱动响应时间)时,其可用数据率也只能达到4/84= 4.8%。如果按照10 μs的平均响应时间估计,则速率将下降到1.9%。对所有发送以太网 帧到每个设备(或期望帧来自每个设备)的实时以太网方式而言,都存在这些限制,但以太网帧内部所使用的协议则是例外。
2. EtherCAT 运行原理
EtherCAT技术突破了其他以太网解决方案的系统限制:通过该项技术,无需接收以太网数据包,将其解码,之后再将过程数据复制到各个设备。EtherCAT从站设备在报文经过其节点时读取相应的编址数据,同样,输入数据也是在报文经过时插入至报文中(参见图2)。整个过程中,报文只有几纳秒的时间延迟。

图2: 过程数据插入至报文中
由于发送和接收的以太网帧压缩了大量的设备数据,所以有效数据率可达90%以上。100 Mb/s TX的全双工特性完全得以利用,因此,有效数据率可 大于100 Mb/s(即大于2 x 100 Mb/s的90%)(参见图3)。

图3: 带宽利用率的比较
符合IEEE 802.3标准的以太网协议无需附加任何总线即可访问各个设备。耦合设备中的物理层可以将双绞线或光纤转换为LVDS(一种可供选择的以太网物理层标准[4,5]),以满足电子端子块等模块化设备的需求。这样,就可以非常经济地对模块化设备进行扩展了。之后,便可以如普通以太网一样,随时进行从底板物理层LVDS到100 Mb/s TX物理层的转换。
3. EtherCAT 技术特征
3.1 协议
EtherCAT是用于过程数据的优化协议,凭借特殊的以太网类型,它可以在以太网帧内直接传送。EtherCAT帧可包括几个EtherCAT报文,每个报文都服务于一块逻辑过程映像区的特定内存区域,该区域最大可达4GB字节。数据顺序不依赖于网络中以太网端子的物理顺序,可任意编址。从站之间的广播、多播和通讯均得以实现。当需要实现最佳性能,且要求EtherCAT组件和控制器在同一子网操作时,则直接以太网帧传输就将派上用场。 然而,EtherCAT不仅限于单个子网的应用。EtherCAT UDP将EtherCAT协议封装为UDP/IP数据报文(参见图4),这就意味着,任何以太网协议堆栈的控制均可编址到EtherCAT系统之中,甚至通讯还可以通过路由器跨接到其它子网中。显然,在这种变体结构中,系统性能取决于控制的实时特性和以太网协议的实现方式。因为UDP数据报文仅在第一个站才完成解包,所以EtherCAT网络自身的响应时间基本不受影响。

图4: EtherCAT:符合IEEE 802.3 [3]的标准帧
另外,根据主/从数据交换原理,EtherCAT也非常适合控制器之间(主/从)的通讯。自由编址的网络变量可用于过程数据以及参数、诊断、编程和各种远程控制服务,满足广泛的应用需求。主站/从站与主站/主站之间的数据通讯接口也相同。
从站到从站的通讯则有两种机制以供选择。一种机制是,上游设备和下游设备可以在同一周期内实现通讯,速度非常快。由于这种方法与拓扑结构相关,因此适用于由设备架构设计所决定的从站到从站的通讯,如打印或包装应用等。而对于自由配置的从站到从站的通讯,则可以采用第二种机制—数据通过主站进行中继。这种机制需要两个周期才能完成,但由于EtherCAT的性能非常卓越,因此该过程耗时仍然快于采用其他方法所耗费的时间。
按照文献[3]所述,EtherCAT仅使用标准的以太网帧,无任何压缩。因此,EtherCAT 以太网帧可以通过任何以太网MAC发送,并可以使用标准工具(如:监视器)。
3.2 拓扑
EtherCAT几乎支持任何拓扑类型,包括线型、树型、星型等(参见图5)。通过现场总线而得名的总线结构或线型结构也可用于以太网,并且不受限于级联交换机或集线器的数量。

图5: 灵活的拓扑结构:线型、树型或星型拓扑