EtherCAT全称EtherNet Control Automation Technology,是由德国倍福(Beckhoff)公司提出的一种实时以太网技术,用于工业自动化的现场总线通信协议。EtherCAT是一种开放但不开源的技术,从站使用专属ASIC芯片或是FPGA的形式。
IGH EtherCAT是一种EtherCAT协议主站协议栈的开源实现,是一个完全符合EtherCAT标准的库,能够在实时操作系统上运行。与传统总线相比,EtherCAT的优点在于减少了总线通信的延迟时间,从而提高了实时性。IGH EtherCAT实现了这一协议,并对其进行了优化和改进。
EtherCAT的主站开发是基于EtherCAT工控制系统的开发中非常重要的环节。EtherLab的the IgH EtherCAT® Master是目前常见的一种开源的主站协议栈。IgH EtherCAT Master比SOEM复杂一些,但对EtherCAT的实现更为完整。
目前用的最多的开源ethercat主站是igh和soem。igh主站功能更多,结构较为复杂。soem功能相对没有那么完善,实现更为简单一些。主站实现在带有处理器的硬件平台上,带有完整或较为完整的操作系统时用igh;如果主站实现在单片机平台上,则推荐使用soem。igh主站依赖操作系统,而soem很容易可以移植到单片机上。
SOME支持Windows和Linux平台,功能相对简单。IGH的EtherCATMaster基于Linux平台,从发布至今已经将近10年并进行了多次更新,功能相对完善,还支持RTAI、RT-Preempt、Xenomai等多种实时扩展,并且支持DC分布时钟,支持COE、SOE、EOE等多种通信协议。
IGH的EtherCAT 主站由三部分组成,包括主站协议栈、控制应用程序、支持EtherCAT的网卡驱动模块。IGH提供了两种网卡驱动方式:generic驱动和native驱动,generic驱动适用于所有网卡,通过调用Linux网络协议栈实现数据包的收发,并不能直接对硬件进行操作,实时性较难保证。native驱动针对主站支持的一些特定网卡,可以对底层硬件进行操作,可以支持RATI、Xenomai等实时扩展,可以保证EtherCAT主站的实时性。
IGH EtherCAT 主站(IgH EtherCAT Master for Linux)是一个专门针对 Linux 平台的 EtherCAT 主站实现。它是一个开源项目,旨在为 Linux 系统提供完整的 EtherCAT 主站功能。
适用于 Linux 平台:IGH EtherCAT 主站专门设计用于在 Linux 操作系统上实现 EtherCAT 主站功能。它利用 Linux 内核的实时性能和特性来实现对实时控制系统的支持。
完整的 EtherCAT 主站功能:IGH EtherCAT 主站支持 EtherCAT 协议的完整功能和特性,包括实时数据通信、分布式时钟同步、监视和配置等。
高性能和实时性:基于 Linux 实时内核的特性,IGH EtherCAT 主站能够提供可靠的实时通信和控制能力,适用于实时控制系统的要求。
开源和免费:IGH EtherCAT 主站是开源项目,基于 GPL 协议发布,用户可以免费使用、修改和定制它。
支持各种 EtherCAT 从站设备:IGH EtherCAT 主站能够与各种符合 EtherCAT 标准的从站设备进行通信,为用户提供了在 Linux 平台上实现 EtherCAT 控制网络的解决方案。
IGH EtherCAT 主站主要适用于对实时控制系统有高要求的应用场景。它能够提供高性能、实时性和完整的 EtherCAT 功能,在需要在 Linux 系统中实现 EtherCAT 控制网络的工业自动化、机器人控制、运动控制等领域发挥重要作用。
此外,由于其开源和免费的特性,IGH EtherCAT 主站还可以被广泛应用于研究和教育领域,为从业人员和学生提供了一个了解和探索 EtherCAT 技术的平台,同时市场上也有很多基于它的专利和市场商业应用。
IGH EtherCAT 主站(IgH EtherCAT Master for Linux)和 SOEM(Simple Open EtherCAT Master)都是开源的 EtherCAT 主站实现,用于在各种平台上实现 EtherCAT 主站功能。以下是它们之间的一些对比:
IGH EtherCAT 主站:
SOEM:
IGH EtherCAT 主站:
SOEM:
IGH EtherCAT 主站:
适用于需要实现 EtherCAT 主站功能并且对功能和特性有较高要求的复杂系统,通常是在带有处理器的硬件平台和完整的操作系统上使用。
SOEM:
适用于嵌入式系统和实时控制应用场景,在单片机等资源受限的平台上使用,例如实时控制系统和嵌入式设备。