Back to Blog

基于 ARM + FPGA 的 EtherCAT 主站设计及实现

#fpga开发

为解决实时工业以太网协议 EtherCAT 应用于嵌入式主站控制器所产生的实时性和稳定性等问题,首先研究了 EtherCAT 主站控制器在 EtherCAT 网络控制系统中的功能需求,分析并提出了实现嵌入式 EtherCAT 主站的架构,然后针对上述架构设计了基于 ARM + FPGA 的 EtherCAT 主站实现的硬件方案,并设计了基于 Xenomai 补丁的实时 Linux 操作系统的软件实现方案,最后搭建了互联互通的互操作性测试平台,实验结果表明,该主站控制器具有 EtherCAT 标准协议的兼容性、极高的实时性以及稳定性。

实时工业以太网技术是在常规以太网技术上发展起来的,由于传统以太网采用 CSMA /CD 机制,应用于工业自动化控制系统时会产生实时性和稳定性问题[1-3]。因此,在传统以太网的通信模型基础之上进行修改来实现强实时性和稳定性的工业以太网,如 EtherCAT、SERCOS 等协议[4-5],不仅能够实现大数据量的高带宽传输,而且可以方便接入以太网网段,实现以太

网直达现场级控制设备[6-7]。EtherCAT 由于其具有较为优良的性能而广泛应用于各类自动化控制系统当中。EtherCAT 主站的实现大部分基于普通的网卡设备,利用系统软件的实时性来保证 EtherCAT 主站的实时性,可以实现微秒级别的实时性; 其次,主站也可以利用专用硬件来实现,

用硬件的实时特性可以达到纳秒级别的实时性,同时具有较高的稳定性[8-9]。

本文针对实时工业以太网 EtherCAT 主站的实现进行了深入的研究,并设计和实现了基于嵌入式 ARM处理器外挂主站专用硬件 FPGA 的软硬件实现方案,解决了 EtherCAT 主站控制器所要求的协议兼容一致性、强实时性和高的稳定性等技术问题。

1 EtherCAT 主站控制系统

1. 1 EtherCAT 控制系统

将 EtherCAT 协议应用于工业自动化控制系统当中,其控制系统结构如图 1 所示。EtherCAT 工业以太网的控制系统属于一主多从的控制体系架构[10],其中主站属于整个网络控制系统的核心,用来调度整个网络的数据通信; 而从站作为 EtherCAT 控制系统的执行利部件,分布于整个控制系统当中,其类型可以包括 I /O端子、伺服设备等。

EtherCAT 主站发送集总帧数据帧依次经过各个从站,从站经过非常低延时的数据上传和下载操作后返回主站,主站根据相应子报文的响应来判别从站的状态,作为网络信息管理的输入迭代进行下一周期的通信数据准备。同时,EtherCAT 主站作为系统上位机的调用接口,也为各种不同种类的自动控制应用提供了不同的 API 函数调用接口。

1. 2 EtherCAT 主站控制器架构

根据 EtherCAT 主站置于 EtherCAT 控制系统中的作用可知,一方面 EtherCAT 主站负责 EtherCAT 网络信息的管理任务,而另一方面要负责与应用程序交互数据的 API( Application Programming Interface) 接口。