一、EtherCAT总线介绍
1、EtherCAT的背景
(1)EtherCAT(Ethernet for Control AutomationTechnology)是由德国倍福(Beckhoff)公司研发的一种工业以太网技术。以以太网为基础的现场总线系统,最早是由德国倍福公司于2003研发推出,于2007年成为国际标准,并于2014年成为中国国家标准。
(2)EtherCAT通信协议凭借极高的实时性能和灵活的拓扑结构,目前已成为半导体设备、机器人控制、伺服驱动和工业自动化生产线、医疗、电力电子等场景的主流通信标准。
(3)EtherCAT的发明背景:
①传统总线(如CAN、RS485)的传输速率低(通常低于1Mbps),无法满足多轴(多电机)同步控制的需求。
②传统以太网(Ethernet)虽然传输速度快,但它专为互联网设计,其数据包采取“存储转发”机制,且存在各种数据碰撞检测,导致高抖动和不可预测的延迟。
③为了解决传统总线和传统以太网在工业控制中的缺陷,德国倍福公司推出EtherCAT,用以太网的物理层实现极速的确定性通信。
(4)传统以太网应用于现场总线存在的主要性能问题:
①带宽利用率的问题:最小的以太网帧,长度大于等于84字节,其中包含帧前导和帧间间隙,如果需要传输的过程数据不多,那么一帧以太网帧的应用数据占比将会非常低。

②堆栈延时:以太网采用了7层OSI模型,每一层都有封装或解析的处理,这就导致整个以太网的堆栈很大,处理这些堆栈非常消耗算力,也就导致数据处理被延迟。(而EtherCAT只保留了物理层、数据链路层和应用层,堆栈比较精简)

③交换机延时:几乎所有交换机使用“存储并转发”策略,报文转发的过程也会存在延时且无法控制(就像高峰期网络非常卡,非高峰期网络顺畅一样),这会带来很多不确定性。
如下图所示,如果是线型拓扑,就意味着交换机的级联,在交换机空闲状态下,即使没有缓冲引起的延迟,仍有大量积累的延迟和抖动

2、EtherCAT的技术特征
(1)在运行中处理:数据帧在经过从站节点时,从站直接在数据流中提取属于自己的指令数据,并将需要反馈的数据插入到该数据帧中,整个过程几乎没有延迟,数据包只停靠极短的时间(纳秒级)便继续传往下一个节点。

(2)极高的实时性:由于采用了“在运行中处理”的机制,EtherCAT的带宽利用率极高(超过90%),100us内能够完成100个伺服轴的同步控制。
(3)分布式时钟:为了实现多个轴之间的精确同步,EtherCAT使用了分布式时钟技术,它能自动补偿电缆传输造成的微小延迟,各个从站之间的同步精度可以控制在1us以内,这对于高性能的FOC电机控制和多轴协同至关重要。

(4)协议架构:
①主站(Master):只需要标准的以太网控制器,甚至普通的PC网卡配合实时内核即可实现。
②从站(Slave):需要专门的硬件芯片(ESC,EtherCAT Slave Controller,从站控制器),如Microchip的LAN9252、倍福的ET1100或TIDP83826AI/ADIFIDO5200等,来负责硬件级的快速数据交换。
二、EtherCAT网络拓扑
1、物理端口形式
(1)主站相当于一个标准的以太网控制器,配置有RJ45网口,使用超五类网口线将网线从主站引出,连接到第一个从站的IN口。
(2)EtherCAT网络中可有若干个从站,以下以4个从站、2端口为例说明从站间的连接方式。使用超五类网线连接第一个从站的OUT口与第二个从站的IN口、第二个从站的OUT口与第三个从站的IN口、第三个从站的OUT口与第四个从站的IN口,如下图所示,如果从站数量增加或减少,也是以此类推的。

2、端口种类
(1)EtherCAT从站芯片ESC最多内置4个逻辑端口(Port0~Port3),每个端口自带硬件Loopback(环回转发),报文直通转发是硬件完成,不需要CPU参与。
(2)根据引出的逻辑端口数量,EtherCAT从站分成三类:
①2端口:引出Port0、Port1,适合构建菊花链线型拓扑,但如果单点故障,整条链路都会瘫痪。

②3端口:引出Port0、Port1、Port2,适合构建树形分支拓扑。

③4端口:引出Port0、Port1、Port2、Port3,适合构建多路分支/冗余拓扑。

(3)EtherCAT从站的内部数据处理:
①ESC的每个端口都可以收发以太网数据帧,数据帧在EtherCAT Processing Unit中处理。
②自动模式下,建立连接则端口打开,断开连接则端口闭合,如果端口有与其它设备连接,则数据帧从该端口流出,否则转向下一个端口,比如报文从端口0流入,处理完毕后,另外三个端口都未与其它设备连接,那么报文(被从站处理后的)就会从端口0再流出去。
③EtherCAT报文处理顺序为“Port0→Processing Unit→Port1→Port2→Port3”,报文严格按这个顺序遍历端口,决定多分支拓扑的寻址顺序。
三、EtherCAT协议帧与寻址方式
1、EtherCAT协议帧格式
(1)EtherCAT的数据帧结构采用的是标准的以太网帧结构,如下图所示。

(2)EtherCAT协议帧帧头是标准的以太网帧头,帧类型固定为0x88A4,目的地址一般设置为广播地址0xFFFFFFFFFFFF,如果存在中间交换机节点,则设置为交换机节点的从机地址。
(3)数据包由EtherCAT头和EtherCAT数据组成,EtherCAT头指示了EtherCAT数据区的长度,即所有子报文长度的总和,上限为1498个字节。
(4)若干个子报文组成EtherCAT数据区,子报文又由子报文头、数据域及工作计数器组成。子报文头标记该子报文应传输到哪一个从站,并且要对该子报文进行读或者写操作,子报文头具体位定义如下表所示;子报文的数据区可以是从站ESC寄存器的数据,也可以是邮箱报文或是过程数据。
|
缩写 |
全称 |
位宽(Bit) |
功能描述 |
|
Cmd |
Command(命令) |
8 |
定义操作类型和寻址方式,可选选项有APRD-位置读、APWR-位置写、LRW-逻辑读写、NPRD-节点读、NPWR-节点写 |
|
Idx |
Index(索引) |
8 |
报文标识符,由主站随机生成,当报文绕一圈回到主站时,主站通过对比Idx确保收到的回复是先前发出去的数据帧 |
|
Address |
Address(地址区) |
32 |
根据Cmd的不同,有不同的定义: ①位置寻址(自动增量寻址):16位Position(从站地址,指定链路上的第几个从站)+16位Offset(从站中被操作数据的起始地址) ②节点寻址:16位Address(从站节点地址)+16位Offset(从站中被操作数据的起始地址) ③全局逻辑寻址:32位Logical Address |
|
Len |
Length(长度) |
11 |
数据长度,代表紧随子报文头之后Data数据段的字节数量 |
|
R |
Reserved(预留) |
3 |
默认为0(截至2026年) |
|
C |
Circulating(循环标志) |
1 |
上图标注未注明C,它是环型拓扑专用标志,报文绕行一圈回到起点时,ESC硬件自动置位C位,主站以此判断报文是否完整遍历全部从站 |
|
M |
More(后续标志) |
1 |
一个以太网帧内可以封装多条EtherCAT子报文,M=1表示后面还有下一条子报文,M=0表示当前是本帧最后一条子报文 |
|
IRQ |
Interrupt(中断) |
16 |
从站硬件自动更新;当从站存在待处理中断(故障、告警、事件),从站ESC在报文经过时置对应位,报文回流主站后,主站读取IRQ字段,快速判断哪台从站触发中断 |
(5)在主从站通信的过程中,16位的工作计数器(WKC)的值为从站读写操作计数,主站发起周期控制的时候,预先给定WKC一个值,当数据帧遍历完整个设备的时候,通过对比返回的WKC值,可以验证数据报文是否被各从站节点正确处理。
(6)FCS是帧校验序列,主要用于检测数据帧在传输过程中是否出现差错。
2、EtherCAT子报文的三种寻址方式
(1)三种寻址方式的定义:
|
寻址模式 |
地址构成 |
工作方式 |
|
位置寻址 |
16位Position(从站地址,指定链路上的第几个从站)+16位Offset(从站中被操作数据的起始地址) |
在启动阶段,主站会为环路上的从站分配自增量地址,首个从站地址为0x0000,后续从站地址依次递减1,地址序列为0x0000、0xFFFF、0xFFFE 报文每经过一个从站,Position值自动加1,当Position加到0时,访问该从站的Offset地址 这种模式适合线性拓扑,主站只需指定起始位置和偏移,即可依次访问多个从站 |
|
节点寻址 |
16位Address(从站节点地址)+16位Offset(从站中被操作数据的起始地址) |
报文在链路上广播,每个从站检查Address字段是否与自己的节点地址匹配,只有匹配的从站才会响应并访问指定的Offset地址 这种模式可以直接访问链路上的任意一个从站,无需关心其物理位置 |
|
全局逻辑寻址 |
32位Logical Address |
通过从站的FMMU(Fieldbus Memory Management Unit)将这个32位的逻辑地址映射到从站内部的物理内存区域,主站只需使用这个逻辑地址,即可访问对应从站的指定数据 这种模式是EtherCAT过程数据对象(PDO)通信的基础,实现了逻辑地址与物理地址的解耦 |
(2)三种寻址方式的示意图:
①位置寻址(假设主站希望访问从站3):

②节点寻址(假设主站希望访问从站3):

③全局逻辑寻址(假设主站希望访问从站3的指定地址):

3、EtherCAT数据帧的传输
(1)系统的控制周期由主站发起。
(2)主站发下行报文,数据帧遍历所有从站设备,每个设备在数据帧经过时,分析寻址到的本机报文,根据报文头命令读取数据或写入数据到报文中指定位置(输入数据和输出数据)。
(3)从站硬件把该报文的工作计数器WKC加相应的计数,表示该数据被处理。
(4)访问最后一个从站时,将处理的数据帧作为上行报文直接发送给主站,主站收到后处理返回数据,记为一次通讯结束。

四、EtherCAT总线的软硬件配置
1、EtherCAT网络拓扑结构
(1)EtherCAT几乎支持任何拓扑类型,包括线型、树型、星型等,无论多少节点都可以一条线串接起来,不过不同拓扑结构各有优劣,线性拓扑中,如果其中一个节点发生故障,将会影响后面的节点,而冗余线性拓扑则不会(除非两个节点发生故障)。
(2)快速以太网的物理层(100BASE-TX)允许两个设备之间的最大电缆长度为100米。
(3)由于连接的设备数量可高达65535,网络的容量几乎没有限制。

2、EtherCAT主站的硬件组成
(1)通讯控制器:完成以太网数据链路的介质访问控制(MAC)功能。
(2)MII:标准以太网接口,定义了与传输介质无关的标准电气和机械接口,将以太网数据链路层和物理层隔离,方便以太网选用任何传输介质。
(3)物理层芯片PHY:实现编码、译码和收发。
(4)隔离变压器:实现信号隔离,提高通讯可靠性。
(5)通讯电缆:100Base-TX规范的5类UTP线缆。

3、EtherCAT主站的软件组成
(1)只要能收发标准帧的以太网帧设备,都能实现EtherCAT主站的功能,只需要软件实现,不需要额外增设硬件设施。
(2)EtherCAT主站的软件实现通常由EtherCAT配置工具和主站驱动组成:
①配置工具用于解析设备描述文件,以及生成网络初始化命令和周期性通讯数据帧格式。
②主站驱动是在线运行的,可以在线操作从站设备。

4、EtherCAT从站的硬件组成
(1)从站微处理器:实现应用层和用户自定义的程序。
(2)EtherCAT从站控制器(ESC):实现EtherCAT协议栈。
(3)物理层器件:以太网的PHY芯片和网口。

①其中EtherCAT从站控制器使用ESC专用集成芯片,内部集成数据帧转发处理单元(每个ESC最多集成4个数据收发端口)。
②EtherCAT从站控制器最大64KB的DPRAM存储空间,由同步管理器通道管理,保证了数据的实时性。
③EtherCAT从站控制器具有FMMU(总线内存管理器单元),能提供逻辑地址映射功能,使得有较高的数据帧利用率。
④EtherCAT从站控制器集成分布时钟(DC)功能,为微处理器提供高精度的中断信号。

5、EtherCAT从站的软件组成
(1)EtherCAT从站采用精简的OSI模型,仅使用了物理层、链路层、应用层三层协议,与多数传统的现场总线相同,但相比于其它实时以太网协议,如PROFINET、EtherNet/IP等,其协议栈更加精简,这也是EtherCAT协议的实时性优越于其它实时以太网协议的重要原因之一。

(2)Application Layer是最高的控制功能层,直接面向具体的控制对象;Data Link Layer是数据链路层,最基本的功能就是通过该层的协议使相邻两个节点之间进行可靠的数据传输。
网硕互联帮助中心



评论前必须登录!
注册