APP下载

基于EtherCAT协议的从站运动控制系统设计

2023-06-25薛迪杰忽晓伟刁梦梦

现代信息科技 2023年4期
关键词:主站以太网报文

薛迪杰 忽晓伟 刁梦梦

摘  要:针对工业运动控制系统中,传统的现场总线技术实时性差、容量小等缺点,研究了运动控制系统特点,并将EtherCAT通信技术引入其中,利用STM32F427主控芯片、AX58100从站控制器和JY02电机驱动芯片,开发了EtherCAT从站运动控制器的硬件。实验表明,开发的从站控制系统和主站TwinCAT 3通信完全兼容,通信速度和可靠性较传统总线通信技术大幅度提高,可以更好地满足智能化和柔性生产的发展需求。

关键词:EtherCAT协议;TwinCAT 3;运动控制系统;工业通信系统

中图分类号:TP273  文献标识码:A  文章编号:2096-4706(2023)04-0064-04

Design of a Slave Motion Control System Based on EtherCAT Protocol

XUE Dijie, HU Xiaowei, DIAO Mengmeng

(School of Electronics and Information Engineering, SIAS University, Zhengzhou  451150, China)

Abstract: Aiming at the shortcomings of the traditional field bus technology in industrial motion control systems, such as poor real-time performance and small capacity, the characteristics of the motion control system are studied and EtherCAT communication technology is introduced into industrial motion control systems. The hardware of the EtherCAT slave motion controller is developed using STM32F427 master controller chip, AX58100 slave controller and JY02 motor driver chip. The experimental results show that the developed slave control system is fully compatible with the master TwinCAT 3 communication, and the communication speed and reliability are greatly improved compared with the traditional bus communication technology, which can better meet the development needs of intelligent and flexible production.

Keywords: EtherCAT protocol; TwinCAT 3; motion control system; industrial communication system

0  引  言

近年来,各国都兴起了制造业的技术变革。一个国家的制造业技术水平与国家的经济发展息息相关,制造业就是国家经济的命脉,强大的制造业技术可以带动国内经济的高速发展。因此,发展制造业技术具有重要实际意义。为了推动我国制造业技术的发展,国家机关部门提出了“中国制造2025”的技术发展目标,为发展高集成化、柔性化、网络化的制造业提供了有力的保障[1]。运动控制系统是制造业技术的核心,制造业的智能化发展,要求其中的运动控制系统必须网络化、模块化。传统的运动控制系统往往比较局限,并且在运动控制精度及自动化程度方面比较落后。随着计算机测控技术的发展,运动控制系统正向开放的体系结构发展,但在网络实时性方面,运动控制系统仍存在一定短板。传统的现场总线技术通信速率低,兼容性差。而实时工业以太网技术则完全克服了传统现场总线的缺点,正逐步取代现场总线技术并应用在工业应用控制领域。

EtherCAT技术是在以太网基础上进行修改,以适应工业控制系统需求的工业以太网技术。目前是工业控制领域较为流行的通信网络技术。本文将对EtherCAT网络技术进行研究,结合多轴运动控制系统的特点,分析EtherCAT的工作原理,并对EtherCAT的从站控制器进行开发,完成EtherCAT的主站和从站通信。然后将EtherCAT技术应用在多轴运动控制系统中,实现对设备实时、高速控制的目标[2]。

1  EtherCAT总线技术

EtherCAT最早是由德国BECKHOFF自动化公司开发出来的,是在以太网技术基础上修改开发出来的适用于工业网络技术的新型工业以太网总线,充分继承了以太网全双工特性[3]。EhterCAT在传输数据过程中,无需对数据进行加密和解码,EtherCAT从站接收在EtherCAT报文通过该从站时,直接进行数据的交换,将接收数据读取下来,并将要发送的数据传送的报文中,报文中数据的获取和发送,仅需数纳秒,能够极大的提个数据传输的实时性。

EtherCAT主站一般可直接选PC,利用以太网网卡实现,从站选用EtherCAT从站控制器,从站主要完成报文中数据的接收,并实现对设备层设备的控制。EtherCAT主站发送数据到从站,从站从报文中获取数据后,将发送给本从站的数据接收进来,同时将需要发送给主站的数据嵌入报文中。接下来,从站将修改后的報文传送至下一个从站,执行同样的操作。如此重复,最终末位的EtherCAT将完成数据交换的报文,由逐个从站返回至第一个从站,并最终发送给主站[4]。EtherCAT工作原理如图1所示。

2  运动控制系统的设计

运动控制系统硬件总体分为主站和从站两部分。主站一般按照需求,使用配置有以太网网卡的PC。从站需使用兼容EtherCAT协议的控制器,控制器一般由通信接口电路,控制电路和伺服驱动电路三部分组成。EtherCAT运动控制系统框图如图2所示。

2.1  主站选择

使用的EtherCAT主站为普通的个人PC,主机使用英特尔I3处理器,配置4 GB内存,500 GB硬盘,配置千兆以太网网卡,完全可以支持EtherCAT通信。除了硬件支持,PC主机作为主站,还需要安装相关的软件。EtherCAT主站软件部分直接采用TwinCAT 3,首先需要安装网卡,将网卡添加到TwinCAT 3的设备当中;然后需要对TwinCAT 3进行激活,由于在实验室中使用的是DEMO版本,需要激活才能有七天的使用,找到TwinCAT 3的验证码,输入即可激活;最后,需要建立项目文件,添加软件自带的PLC电机运动控制TC2_MC2库文件,实现对电机的控制[5]。由于使用的软件自带的库文件,可以缩短开发周期,降低开发难度。本项目主要实现对主站对电动机的基本控制功能,包括点动、连续转动、停止、反转等功能。主站TwinCAT 3上还绘制了HMI界面,用来反映电动机的运行情况,并用曲线进行显示。

2.2  EtherCAT从站设计

2.2.1  从站控制器方案

目前,全球多家公司均可以提供ESC控制芯片,但这些芯片的内部IP内核均由德国倍福公司授权。市场上常用的有ASIX的AX58100、BECKHOFF公司的ET1100和MICROCHIP公司的LAN9252芯片。

ET1100芯片价格昂贵,芯片内资源较少,性价比较低,并且其芯片上不含物理层端口,需要自行扩展。LAN9252则主要因其芯片自身不含电机驱动,在开发过程中,会增加开发难度。因此,本系统从站选用ASIX公司的AX58100作为EtherCAT从站控制的ESC。AX58100是专为EtherCAT通信设计的ESC芯片,内部直接附带两个物理层接口,在使用的时候,无需额外增加外围的PHY,因此可以更加方便设计使用。此外,AX58100的内部还集成了PWM输出接口和霍尔编码器,可以和伺服电机组成伺服电机闭环控制系统,直接对伺服电机进行精准控制,实现EtherCAT主站对从站设备的精确控制[3]。

EtherCAT从站采用微控制与ESC组合形式。微控制器使用32位的处理器STM32F427,其采用ARM-Cotex4内核,处理速度快,且具有丰富的接口资源;搭配ESC控制芯片AX58100,组成EtherCAT的复杂从站结构。从站组成结构图如图3所示。

根据从站的功能,硬件部分可分为以下三部分:

(1)EtherCAT数据通信部分。从站EtherCAT数据通信主要由AX58100完成,其功能是负责主站TwinCAT 3和微控制器STM32F427之间数据交换。在和上位机主站进行通信时,AX58100完成物理层和数据链路层进行数据交换时的相关功能。AX58100在和微控制器STM32F427进行数据交换时,可使用其芯片自带的SPI Slave总线和Local Bus总线,但由于在进行运动控制时,数据量较大,要求的实时速度较快,因此,采用AX58100的Local Bus总线与微控制连接,将STM32芯片上的FSMC外设与AX58100的本地总线相连,采用16位异步通信模式,保证两者之间的通信速率。此外,为了主站可以识别从站设备的信息,采用了存储容量大小为32 KB的AT24C32存储芯片和AX58100连接,并在其中保存了从站的设备描述信息。

(2)微控制器数据处理部分。微控制器数据处理部分主要由STM32F427构成,用来处理和EtherCAT主站通信的相关数据。本方案中STM32F427采用了EtherCAT协议进行通信。在进行电机控制时,为了读写AX58100内部数据,并将数据发送给主站,供主站在TwinCAT 3显示控制电机的状态和设置电机的参数,STM32F427使用了为其配置的CoE协议及CiA 401运动控制的子协议。STM32F427通过从协议上获取的数据,转换成PWM通过驱动板对电机进行控制,并根据电机连接的霍尔编码器,将电机的运行状态反馈,最终通过AX58100传送至主站。

(3)电机驱动部分。主站TwinCAT 3软件上有配套的直流电机运动控制模块,为了配套主站进行电机运动的闭环控制,方案选用直流无刷电机作为控制对象,相比于有刷电机,无刷电机没有电刷,在转动的过程中不会出现电刷损耗及电刷摩擦大量发热的现象;无刷电机上还配备有反馈无刷电机位置的霍尔传感器,可以通过霍尔传感器编码接口反馈出无刷电机的运动位置信息。无刷单机的驱动电路,选用国产的JY02无刷电机驱动芯片,JY02驱动芯片只需在外部利用MOS管扩展六臂全桥电路,即可实现对无刷电机的控制,并且输出功率取决于MOS管功率的大小。因此,可方便控制大功率无刷电机,实现对电机的精确控制。

2.2.2  从站软件部分设计

从站软件部分的设计采用STM32F427自带的HAL库文件进行开发,从而实现在EtherCAT协议下进行通信。AX58100和主站通过EtherCAT进行通过通信,将接收的数据通过Local Bus总线的FSMC接口从STM32的存储其中拷贝出来,并根据EtherCAT的相关协议进行数据的解析。这些数据通过EtherCAT协议栈应用层的接口函数进行数据的映射,映射的数据最终会根据CiA401运动控制的子协议对电动机进行控制。

从站运行程序流程图如图4所示。STM32上电后首先执行HW_Iint()函数,对STM32的GPIO及总线进行初始化配置,同时对EtherCAT的协议下的相关寄存器进行初始化。然后Main_Init()函数对AX58100的初始化,需要对其I/O口、模数转换等进行配置,根据EEPROM中的从站设备描述信息,对EtherCAT的协议栈进行初始化配置,并且建立AX58100与STM32的总线连接。接下来,通过CiA_Init()初始化函数,完成直流电机的参数和对象字典的配置,得到其控制入口的相关地址。最后,需要把从站设置成轮询模式,STM32不断查询事件请求寄存器。根据寄存器查询的状态,从站在主循环体中不断地实现周期性以及非周期性過程的数据交换。周期性事件中的数据,转到PDI_I ()函数处理;非周期性事件的数据,转到ECAT_M()函数进行数据的处理。程序处理完周期性事件和非周期事件的数据后,返回继续查询事件请求寄存器。

在进行STM32的HAL库文件开发的时候,将一些无关的接口函数去掉,保留EtherCAT通信协议栈使用的接口函数,EtherCAT协议栈构架主要包括应用层的CoE协议框架和EtherCAT协议栈框架,EtherCAT协议栈使用ecatslv.c文件、ecatcoe.c文件、mailbox.c文件、objdef.c文件和sdoserv.c文件。应用层CoE协议使用coeappl.c文件、ecatappl.c文件和cia401appl.c文件。

3  测试过程及分析

采用两个实验对EtherCAT的主从站通信和电机控制进行测试。

为了测试EtherCAT主从站的通信,采用Wireshark软件进行抓包实验。通过以太网网线将主站PC的网卡和从站AX58100的网口进行连接,在TwinCAT 3中找到从站控制器,进行联机,联机成功后,打开Wireshark软件,使用抓包工具截取连接过程中的数据包。最终联机成功后,从站联机状态灯亮起,从站转为进入操作状态,激活从站状态機启动,可以随时被主站控制。Wireshark抓取的报文如图5所示。

从Wireshark抓取的报文中可分析,报文完全符合EtherCAT协议数据帧的格式,主从站已经建立了通信。从图5底部状态栏可以看出,通信报文长度一共60个字节,分为以太网数据帧头(前14个字节)、EtherCAT帧头(2个字节)、EtherCAT数据(由2个子报文组成,每个子报文由10字节报文头,16字节的数据,2字节的工作计数器组成)。

在电机运动控制测试部分,主要通过TwinCAT 3主站将指令发送给从站,经过电机驱动电路,驱动电动机进行基本控制。经测试,主站上发送的点动、连续运转、反转等指令可以被从站接收,并对电动机进行实时控制,验证了EtherCAT运动控制的实时性和准确性。

4  结  论

本文研究了EtherCAT总线技术,并将EtherCAT技术应用于传统工业运动控制系统中,重点设计了从站运控控制系统。测试表明,设计的从站实现了和主站的通信,完成了对运动控制系统中电动机的基本控制,可以应用在基本的EtherCAT运控控制系统中。

参考文献:

[1] 李益,王成杰,史世友,等.基于ZYNQ处理器的EtherCAT从站通信系统设计 [J].控制与信息技术,2022(1):59-63.

[2] 栾伟.基于EtherCAT总线的多轴运动控制系统研究与开发 [D].广州:广东工业大学,2017.

[3] 马志航.基于嵌入式的工业以太网EtherCAT从站研究与实现 [D].银川:北方民族大学,2021.

[4] 陈志军,韩利峰,黄丽.一种EtherCAT从站的硬件设计 [J].仪器仪表用户,2021,28(12):6-10.

[5] 孟另伟,郑永军.基于EtherCAT的分布式测控系统设计与实现 [J].仪表技术与传感器,2020(6):73-78.

作者简介:薛迪杰(1987—),男,汉族,河南焦作人,讲师,硕士,研究方向:工业通信网络、工业检测技术。

收稿日期:2022-10-24

基金项目:郑州西亚斯学院校级项目(2022-D70)

猜你喜欢

主站以太网报文
基于J1939 协议多包报文的时序研究及应用
基于1500以太网养猪场的智能饲喂控制系统的设计与实现
CTCS-2级报文数据管理需求分析和实现
浅析反驳类报文要点
基于OS2主站系统的海量数据共享技术研究
多表远程集抄主站系统
谈实时以太网EtherCAT技术在变电站自动化中的应用
ATS与列车通信报文分析
一种90W高功率以太网供电系统的设计
浅谈EPON与工业以太网在贵遵高速公路中的应用