此文介绍了利用先楫半导体(hpm)官方hpm5e00_evk开发板搭建一个EtherCat通信的"Hello World"工程,主要汇总了先楫半导体实现ECAT通信的相关资料,完整的说明如何搭建软件开发与编译环境、硬件电路连接方式、实验效果。
1、EtherCat通信
1.1、 EtherCat通信定义
EtherCAT(以太网控制自动化技术,Ethernet for Control Automation Technology的缩写)**是一个开放架构,以以太网为基础的现场总线系统,EtherCAT是确定性的工业以太网,最早是由德国倍福Beckhoff公司于2003研发推出,于2007年成为国际标准,并于2014年成为中国国家标准。
与标准以太网通信一样,EtherCAT利用以太网帧在整个网络中传输数据。EtherCAT帧基于IEEE 802.3以太网标准;然而,它们是以一种特殊的方式构建的,可以针对增加的带宽和短周期的过程数据对它们进行优化。

EtherCAT帧还消除了更大的协议栈,如UDP/IP或TCP/IP,这意味着EtherCAT不是一个基于IP的协议,更类似于第2层或数据链路层协议。
EtherCAT帧或电报由以太网标头组成,后跟EtherCAT数据,并以帧检查序列(FCS)结束。EtherCAT协议通过使用以太网头中EtherType字段中的0x88A4标识符进行识别。
EtherCAT数据包含一个EtherCAT特定的头,后面跟着EtherCAT Datagram。EtherCAT标头指定后续EtherCAT数据报文的总长度和类型。EtherCAT头之后是EtherCAT数据报文,它包含将在网络中读取或写入的实际数据。这些数据包括地址规范、主机想要执行的命令类型(即读取、写入或读写)以及循环过程数据(PDO)。
单个EtherCAT帧最多可包含1498个字节。如果需要超过1498个字节,则主设备将发送多个数据帧,并且每个帧将包含标识符,该标识符用信号通知网络上的设备是否应该期望在当前帧之后的另一帧。
1.2、特点和优势
实时性能:EtherCAT具有非常低的通信延迟,通常在微秒级别,这使得它适用于对实时性要求较高的应用,如高速运动控制和精密定位系统。
高带宽:EtherCAT支持高达100Mbps的数据传输速度,能够满足大量实时数据和控制信息的传输需求。
灵活性:EtherCAT支持灵活的拓扑结构,可以适应各种网络配置,包括星形、总线型、树型等。它还支持热插拔设备和自动配置,简化了网络的部署和维护。
易于集成:EtherCAT可以与现有的以太网基础设施兼容,因此可以与其他以太网设备进行无缝集成。此外,EtherCAT还提供了各种接口和开发工具,使得开发人员能够轻松地实现EtherCAT的应用。
开放标准:EtherCAT是一个开放的标准,遵循国际电工委员会(IEC)的标准化规范,因此可以被各个厂商和组织广泛采用和支持。
EtherCAT已经在工业自动化领域得到广泛应用,包括机器人控制、工业自动化设备、测试和测量系统等。它的高性能和可靠性使得它成为一种理想的通信协议,用于实现实时控制和数据传输。
1.3、应用方式
由于ECAT的实时性、高带宽、易于集成的特点,目前在一些特殊领域,尤其工业实时控制领域,ECAT通信使用场景较为广泛,一个主站可以连接众多从站,实现对全部从设备的控制与监控。

2、hpm5e00_eck与EtherCat通信
2.1、准备工作
ECAT通信是一个主从模式的通信结构,需要有配套的主站方案和从站方案。主站分为硬件主站(如PLC、FPGA搭建的主站)和软件主站(倍福公司提供的TwinCAT软件、开源的IGH、SOEM等),从站也分为硬件从站(FPGA搭建的从站)和软件从站(ET1100、LAN9252、RT系列、HPM5E系列与6E系列)。上述从站本质上是一样的,有的是单ESC芯片、有的是ESC+PHY芯片,有的是MCU+ESC+PHY芯片,要实现ECAT通信就一定需要ESC部分,本文重点测试验证了HPM5E_EVK开发搭建的从站系统。
本人是win10+intel的台式电脑,笔记本也可以,都验证过,可能有一些网卡会出现异常,建议大家使用intel的网卡。需要安装的软件:
1、visual sudio 2019 ,下载链接:Visual Studio 旧版下载 - 2019、2017、2015
2、TwinCAT 3.1,下载 FULL 版本就好,也叫XAE 版本。下载链接:TC1200 | TwinCAT 3 PLC | 倍福 中国?
3、SSC Tool (5.13 ) 下载链接:EtherCAT Technology Group | 资料下载
第3个软件比较特殊,需要企业注册认证才可以的。自己研究一下,版本问题。当然默认你已经走完了hpm芯片的"Hello World"工程,下载hpm开发的软件和资料
2.2、硬件连接
本人台式机只有一个网口,所以采用了一个RJ45转USB的工具线,将RJ45的网线一端连接在电脑上,一端连接在开发板的 " IN<---" 标记符上。


2.3、操作流程