EtherCAT 网络及其运动控制系统研究
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
EtherCAT网络及其运动控制系统研究
谢香林,李木国
大连理工大学电子信息工程学院,辽宁大连 (116024)
E-mail:xxlzdh204@
摘要:随着以太网技术的发展,特别是高速以太网的出现使得以太网进入工业通信领域,各种工业以太网技术也迅速发展和推广。本文介绍了一种高速的工业以太网-EtherCAT,该网络采用标准以太网技术,采用了独立的工业过程数据传输通道,提高了传输的实时性,并具有灵活的拓扑结构,简单的系统配置,高可靠性等特点。文章分析了EtherCAT网络的原理、技术特点及主从站关键技术。在此基础上设计了一种基于EtherCAT网络和DSP的双轴运动控制系统,给出了系统的总体框架及主从站实现的关键细节,最后给出了相应的实验结论。本设计充分发挥了EtherCAT工业以太网络实时数据传输的功能和TMS320F28335 DSP 芯片强大的运算处理能力,实现了运动系统高精度的位置控制。
关键词:EtherCAT;运动控制系统;实时以太网
1. 引言
目前基于以太网技术的现场控制网络被广泛应用于工业现场控制领域。由于传统的以太网不能满足工业控制实时性的要求,因此,如何在传统以太网的基础上加以实时性改进,使之符合工业传输标准是以太网用于工业领域的根本解决方法。德国倍福公司提出的EtherCAT工业以太网技术在数据链路层采用了实时调度的软件核,并采用了过程数据传输的独立通道,提高了系统的实时性;该网络还具有灵活的拓扑结构,简单的系统配置,较低的成本等特点,目前该网络得到了越来越多网络工业设备开发商的关注。把EtherCAT引入到运动控制系统,可以在上位控制器和驱动单元之间通过该网络实时的传递控制数据和状态数据,并且能够借助于该网络提供的分布时钟提供准确的多轴同步功能。本文设计的一套运动控制系统为双轴运动控制系统,实现了伺服电机精确的实时控制。
2. EtherCAT技术介绍
2.1 EtherCAT总体构架
EtherCAT采用主从式结构,主站PC机采用标准的以太网卡,从站采用专用芯片。EtherCAT支持包括线型、总线型和树型在内的几乎所有拓扑结构,整个网络可以连接65535台设备[1]。
与其他工业以太网和现场总线相比,EtherCAT在帧的处理方式上有了明显的不同,它突破了其它以太网解决方案的这些系统限制:不必再像从前那样在每个连接点接收以太网数据包,然后进行解码并复制为过程数据。在EtherCAT中,系统控制周期由主站发起,主站发出下行电报,电报的最大有效长度为1498字节。当帧通过每一个设备(包括底层端子设备)时,EtherCAT从站控制器分析寻址到本机的报文,根据报文头中的命令读入数据或写入数据到报文指定的位置,并且从站硬件把该报文的工作计数器(WKC)加1,表示该数据被处理,整个过程大约10ns的延迟。此过程是在从站控制器中通过硬件实现的,因此与协议堆栈软件的实时运行系统或处理器性能无关。数据帧在访问位于整个系统逻辑位置的最后一个从站后,该从站把经过处理的数据帧作为上行电报直接发送给主站。主站收到上行电报后,处理返回数据,一次通讯结束。图1为EtherCAT工作原理:
Fig1 Diagram of EtherCA T working principle
2.2 EtherCAT数据帧
EtherCAT 使用标准的IEEE802.3以太网帧,所以在主站一侧使用标准的以太网控制器,不需要其他的硬件。EtherCAT使用保留的以太网类型0x88A4来与其他以太网帧相区别,因此EtherCAT可以和其他以太网协议平行地运行在一条线路上[2]。EtherCAT的数据结构图2:
图2 EtherCA T的帧结构
Fig2 Diagram of EtherCA T Datagram
一个EtherCAT帧中可以包含多个子报文,所以一个帧可以同时寻址多个节点。在一个以太网段内EtherCAT支持两种寻址方式:设备寻址和逻辑寻址。设备寻址又可以分为自增寻址和配置节点地址寻址,EtherCAT从站有两个配置的节点地址:一个是由主站配置的,另一个是存储在E2PROM里的可以由从站程序修改的地址。地址域位于数据报头位置,一共为32位,设备寻址时前16位的地址空间来确定从站的地址,16位偏移量地址用来寻址从站控制器里具体某一个内存空间。逻辑寻址是借助于EtherCAT从站控制器中FMMU(Field Memory Management Unit)单元实现从站内存空间从物理地址到逻辑地址的映射,所有设备
从4GByte空间中(EtherCAT报文里的32bit地址空间)读数据或者写数据。逻辑寻址方式不是按照从站的位置寻址而是逻辑地址,所以逻辑寻址可以对所有进行逻辑映射的从站进行同时寻址。逻辑寻址支持位映射,在过程数据通讯过程中逻辑寻址可以充分利用带宽降低网络的拥堵。
所有的EtherCAT报文都由16位的WKC结束,WKC用来标识由EtherCAT报文寻址到的设备数量。当报文在从站成功实现数据交换,EtherCAT从站控制器通过硬件增加WKC的值。在主站一侧,主站通过比较返回报文的WKC值和期望的WKC值来校验报文的正确性。
3. EtherCAT实现
3.1 主站实现
EtherCAT在主站方面只需一块标准的NIC网卡,主站功能完全由软件实现。EtherCAT 可以用一个以太网帧发送1486字节的有效数据,所以在通常情况下,每个通讯周期只需要一个或两个帧就能完成所有节点的全部通信。EtherCAT主站程序应该包含以下几个方面:
(1)解析根据配置工具生成的XML文件并且根据其内容配置网络;
(2)管理EtherCAT从站状态:发送配置文件中定义的初始化帧,初始化从站,为通信做准备;
(3)使用邮箱操作实现非周期性数据传输,配置系统参数,处理过程通信中某些偶然性事件;
(4)实现过程数据通信,完成主站与从站之间的实时数据交换,达到主站控制从站运行,并处理从站实时状态的功能。
主站代码结构如图3:
图3 EtherCA T主站程序流程图
Fig3 EtherCA T Master Program Datagram
3.2 从站实现
EtherCAT最多可以连接65535个从站节点,这些从站节点又可以分为简单节点和复杂