EtherCAT
介绍 EtherCAT 主站功能和使用方法。
模块介绍
IGH EtherCAT 主站是一个用于高性能实时通信的内核模块,支持从站 扫描、配置管理、分布式时钟同步等功能,能够高效调度和管理多个从站设备,广泛应用于工业自动化等对实时性与可靠性要求较高的应用场景。
功能介绍
EtherCAT主站架构如上图所示,由四个部分构成:
应用层: 用户应用程序,负责实现工业控制逻辑,通过接口与 EtherCAT 主站驱动交互。
EtherCAT主站驱动层:实现核心协议、监测总线拓扑、自动配置从站、同步分布式时钟。
EtherCAT设备驱动层:由实时网卡驱动构成,负责ECAT数据帧收发。
物理层:网络硬件设备。
源码结构介绍
EtherCAT主站驱动代码在drivers/net/ethercat目录下:
# 代码中出现大量配对的xxx.h + xxx.c文件,前者负责数据结构和接口定义,后者负责实现
├── device # EtherCAT device driver
│ ├── ecdev.h
│ ├── ec_generic.c # 通用网络设备驱动
│ ├── ec_k1x_emac.c # 针对 K1 以太网控制器的实时网卡驱动
│ ├── ec_k1x_emac.h
│ ├── Kconfig
│ └── Makefile
├── include
│ ├── config.h # 全局配置项和宏定义