当前位置:首页 期刊杂志

基于EtherCAT的多轴运动控制器

时间:2024-07-28

蒋劲峰, 张 力, 吕 燕

上海电气集团股份有限公司 中央研究院 上海 200070

基于EtherCAT的多轴运动控制器

蒋劲峰, 张 力, 吕 燕

上海电气集团股份有限公司 中央研究院 上海 200070

针对工业运动控制中的实时性、稳定性等问题,提出了基于EtherCAT总线的多轴运动控制器。介绍了EtherCAT的技术原理和通信协议,并对多轴运动控制器的硬件构成、软件架构进行了详细说明,最后对该控制器在多轴控制平台上进行了验证,对时间抖动误差进行了测试。测试结果表明,该控制器具有良好的实时性和稳定性。

多轴运动; 运动控制; EtherCAT总线; 性能

随着计算机技术和网络技术的快速发展,运动控制系统对实时性和网络化的要求越来越高,实时以太网通信技术因兼容性好、数据传输速度快、可靠性高等特点在工业控制领域得到了广泛的应用[1-5]。

目前,各大自动化厂商纷纷推出自己的实时以太网协议标准,如博世力士乐系统支持的SERCOS Ⅲ(串行实时)通信协议、倍福系统支持的EtherCAT(以太网控制自动化技术)通信协议、西门子系统支持的PROFINET(由PROFIBUS国际组织推出的总线标准)通信协议和贝加莱系统支持的Powerlink(开源实时通信技术)通信协议[6]等。实时以太网技术已经成为控制网络发展的主要方向,被工业自动化系统广泛接受。EtherCAT总线技术是德国倍福公司提出的实时工业以太网技术,在运动控制领域使用EtherCAT,在拓扑结构、时钟同步、数据传输速度和构建成本方面具有很大的优势。

笔者基于EtherCAT总线的通信原理,以计算机+赫优讯CIF-50通信板卡为控制器架构,介绍了多轴运动控制器软硬件的总体设计方案,并在实际运动控制中进行了性能验证。

1 EtherCAT技术概述

1.1 EtherCAT原理

EtherCAT技术采用专门的实时以太网硬件控制器,在MAC(介质访问控制)层采用实时MAC接管通信控制,能获得响应时间短于1ms的硬实时[7]。EtherCAT使用标准的以太网物理层和普通的以太网控制卡,以双绞线或光纤作为传输媒介,利用以太网全双工特性,采用主从模式介质访问方式,通过一个固定的报文实现主-从-主之间的循环通信。

EtherCAT的运行原理如图1所示。图中i表示从站个数,i=1,2,…,n。主站发出下行电报,数据帧遍访所有从站,在数据帧到达每个从站时,从站解析出本机报文,并对报文数据进行处理,然后将该数据帧传输到下一个从站,从站再进行类似的处理,直至传输完整个回路,得到一个处理完整的EtherCAT数据帧,并由紧挨着主站的从站作出响应,将数据帧发送给主站,完成一个周期的数据处理。

图1 EtherCAT运行原理图

1.2 EtherCAT通信协议

EtherCAT如同普通以太网,完全遵循电气和电子工程师协会IEEE802.3以太网协议[8],任何带商用以太网控制器的微处理器都可以用作主站控制器。EtherCAT有一种不同于其它以太网的帧类型0x88A4[9],使其可以并行运行在其它以太网协议中。EtherCAT的数据帧结构如图2所示。从图中可以分析出,数据包由EtherCAT头和EtherCAT数据组成,若干个子报文又组成了数据区。子报文由数据域、子报文头、工作计数器组成。子报文头决定子报文自身应传输到的对应从站,以及该从站对子报文进行读或写操作。报文头中8位命令决定了报文的寻址方式和读写操作,索引指帧编码,32位地址区用于表示所要通信的从站地址,标志位M是后续报文标志,如果EtherCAT数据帧有多个子报文,需要置位除最后一个子报文外的所有子报文的此标志位。子报文的数据部分由用户自定义,长度最大为1486Byte。工作计数器记录了子报文被从站操作的次数,可用于判断子报文是否被正确处理。

图2 EtherCAT协议栈

2 控制器硬件设计

整个控制系统分为主控制器模块、伺服驱动模块、电源转换模块和人机显示模块等。主控制器包括基于视窗系统的计算机及通信板卡。计算机采用研华E3825/J1900四核处理器,具有微型外部设备互连标准(PCI)卡槽、双高清多媒体接口(HDMI)、双串行通信(COM)接口、通用输入输出(GPIO)接口,能够满足工业现场的应用要求。图3为主控制器的硬件结构。

图3 主控器硬件结构

在运动控制中,为了保证系统的实时性,对于硬实时要求比较高的场合,如运动控制及安全应用等,通信板卡一般采用基于视窗系统的实时内核扩展系统。系统中的主站采用赫优讯EtherCAT硬主站板卡CIF-50。与主机的数据交换过程通过双端口存储器、直接内存存取(DMA)完成。图4为CIF-50通信接口卡。

图4 赫优讯CIF-50通信接口卡

伺服驱动系统采用三洋R系列驱动器,带有EtherCAT总线接口,支持同步时钟功能,采用绝对值编码器接口,作为控制系统的从站使用,完成运动指令的接收和状态信息的反馈。人机显示模块主要实现对控制器数据的监控、示教等功能。电源转换模块用于向控制系统供电。

3 控制器软件设计

多轴运动控制器软件建立在标准视窗操作系统平台之上,具有功能强大的EtherCAT实时应用环境。图5为控制系统的软件架构,分为三层: 应用层、控制层、驱动层。

图5 控制器软件结构图

(1) 应用层。主要进行示教盒端的软件实施,通过人机接口实现用户和控制系统之间的交互,用户可以选择不同的运行模式(监控模式、自由运行模式)和通信方式,完成对伺服电机的控制。

(2) 控制层。包含了控制系统所有的基础功能组件和系统任务组件,在实时操作系统的环境下导入设备描述文件(XML文件),完成EtherCAT主站的配置。控制层主要负责控制器系统内部的通信、任务调度、时钟管理、通信协议解析和通信故障分析等。

(3) 驱动层。通过以太网通信的底层驱动程序,实现EtherCAT数据链路层对数据进行封装。

EtherCAT在通信过程中,从站内部存在一个有限状态机,主站可通过发送报文切换从站的通信状态,如图6所示。在初始化阶段,主站可通过非周期性数据(SDO)通信对设备进行读写操作,完成配置。在运行模式状态,通过周期性数据(PDO)通信完成对从站的应用数据通信。

图6 通信状态切换图

4 系统性能验证

多轴运动控制系统测试平台由控制器电源转换模块、4个带有EtherCAT接口的伺服驱动系统等组成。图7为控制系统的整体结构图。

在EtherCAT总线通信中,主站发起周期控制,到数据帧遍历所有从站,最后返回主站所需的实际时间与设置的总线周期之间的差值称为时间抖动误差[10]。时间抖动误差直接影响系统的实时性和稳定性。为了验证控制器的性能,表1给出了控制器带2~4个伺服从站,在不同总线周期下主站时间

图7 控制系统测试平台

从站个数总线周期/μs最大抖动误差/μs21002.02003.05003.510005.020006.431002.52003.15006.210007.020007.041004.02005.95008.710008.7

抖动误差出现的最大值。经分析,在给定的总线周期内,最大时间抖动误差均可控制在10μs以内,能够满足系统实时性的要求。

5 结论

提出了基于EtherCAT总线的多轴运动控制器的设计,介绍了多轴运动控制系统的软硬件架构,在多轴运动控制平台上完成对多个伺服轴的分布式控制,测试不同总线周期下的时间抖动误差,通过数据对比分析,验证了多轴运动器的实时性和稳定性。

[1] 樊留群.实时以太网及运动控制总线技术[M].上海: 同济大学出版社,2009.

[2] 刘冬,闵华松,杨杰.基于EtherCAT的机器人控制总线方案研究[J].计算机工程与设计,2013,34(4): 1238-1243.

[3] 顾阳,尚群立,余善恩,等.工业以太网的技术特性及关键技术研究[J].机械制造,2010,48(3): 1-4.

[4] 谢香林.EtherCAT网络及其伺服运动控制系统的研究[D].大连: 大连理工大学,2008.

[5] 梁德春,方江龙,陶益民.数控系统以太网通讯的设计[J].机械制造,2008,46(1): 33-35.

[6] 段彬贤,方江龙,汤季安,等.Powerlink实时以太网总线在多轴数控系统中的应用[J],机械制造,2010,48(12): 31-33.

[7] 刘鑫.基于EtherCAT的工业机器人控制器研究与设计[D].武汉: 武汉科技大学,2012.

[8] 李木国,尹永洁,刘于之,等.基于PCIe总线接口的EtherCAT从站网卡设计[J].计算机测量与控制,2015,23(3): 921-923.

[9] 吕燕,沈玉玲,蒋劲峰.基于EtherCAT的双机器人协作系统设计[J].制造业自动化,2015,37(11): 61-63,67.

[10] 邹玉鞋.利用德国赫优讯netANALYZER分析仪研究实时以太网的时间抖动[J].国内外机电一体化技术,2008,11(5): 14-16.

Aiming at the issues of real-time performance and stability in industrial motion control, the multi-axis motion controller based on EtherCAT bus was proposed. Presented an introduction on the technical principle and communication protocols of EtherCAT and a detailed description of the multi-axis motion controller including its hardware configuration and software architecture. Finally, the controller was validated on the multi-axis control platform while testing the time jitter error. The test results show that the controller has sound real-time performance and stability.

Multi-axis Motion; Motion Control; EtherCAT Bus; Performance

2016年4月

蒋劲峰(1989— ),男,硕士,工程师,主要从事机器人运动控制研究工作, E-mail: jiangjinfeng918@163.com

TM921.02

A

1674-540X(2016)03-044-04

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!