基于EtherCAT实时通信的电机驱动控制系统
2020-01-07庞广富
庞广富
(广西工业职业技术学院 广西南宁 530001)
要想保证电机之间的同步准确性,对控制系统的实时性和同步性要求非常高,控制方式要更加灵活。传统的现场总线具有一定的局限性,通信的带宽较低,并且是串口通信,会给数据传输带来一定的延迟,因此传统的现场总线技术在工业自动化的快速发展的背景下已经无法满足控制领域的要求。工业以太网传输速度快,性价比较高,是当前工业现场总线技术的重要发展方向,以德国公司BECKHOFF公司开发的EtherCAT实时工业以太网为主要发展潮流,因其具有较高的实时性与同步精度的功能,能够更好地对电机驱动控制系统进行同步,对EtherCAT技术进行深入的研究,并将其应用到电机驱动控制系统中具有较强的研究价值。
一、实时工业以太网EtherCAT技术
(一)EtherCAT通信原理
EtherCAT系统一般采用主从式通信的结构方式进行搭建,进行数据通行时,都是通过主站进行发起,利用以太网的通信技术进行报文的发出和数据的返回,这种数据通信的方式能够有效地避免数据在传输过程中产生冲突,能够提高数据通信的稳定性。网络在进行数据通信时会分成几个步骤进行:(1)主站发出报文;(2)从站接收主站发出的报文进行解析,然后寻找到与自身相关联的数据,根据相关的命令从报文中将数据进行抽取,然后将信息转导下一个报文中,以此重复,直到完成数据通信的整个过程为止;(3)报文经过所有的从站之后,在到达最后的从站之前,会对数据进行处理,然后这个主站的下行报文会从各个从站进行转发,主站接到返回的报文之后并对数据进行相应的处理。
在整个传输的过程中需要特别注意,从站对报文进行处理时有专门的硬件,有传输延迟但是只有几百纳秒而已。
(二)EtherCAT组成
1.主站结构
以太网控制器的作用主要对EtherCAT主站在硬件上的功能进行控制,通过以太网控制器完成相应的功能。
其中,物理层中有一个MII接口,主要的功能就是与上层的数据进行交互,与传输介质没有太大的关联,能够隔离物理层与以太网数据链路层,从而让以太网能够更加顺利的选择传输介质;隔离变压器主要是隔离信号之间的干扰,以提高信号的稳定性与可靠性。
2.从站结构
EtherCAT从站中有物理层器件、从站控制微处理器、从站控制器以及其他的应用层器件组成。
从站的物理层接口的类型有EBUS和MII两种,EBUS需要借助低压差分信号进行定义,在传输的时候容易受到距离的限制;MII接口的延迟约为500ns,与外接隔离变压器相连;从站控制器ESC主要是对EtherCAT进行数据帧的处理,并与主站进行数据交互;其他相应的应用层器件会与从站控制微处理器进行连接,从而实现不同的任务需求。
3.拓扑结构
根据EtherCAT的通信原理可知,所搭建的网络是从主站发出的数据,最后又回到主站的环形结构,而且数据回环ESC的机制,可由多个端口的相互连接形成多种分支结构。因此,EtherCAT的拓扑结构这种包含了很多中组合形式,极大地优化了设备的接线方式,在设计网络系统时会更加方便灵活。如果网络系统较为庞大,线路上一般都会挂接很多个从站,如果线路的中间发生了故障,将会对故障点后的所有从站都会造成相应的影响。EtherCAT的拓扑结构中支持多种冗余技术,可以起到更好的解决效果。EtherCAT网络的冗余方案,主要是将系统中的最后一个从站连接到主站的端口,将其形成一个具有双逻辑环的网络结构,这样当网络发生故障后,只需要利用从站的ESC的回传机制与以太网的全双工特性,就可以实现数据的回传,从而保证主从站之间的可靠通信。
二、电机驱动控制系统
(一)电机驱动控制系统方案设计
通过分析EtherCAT的原理,能够得到EtherCAT具有良好的实时性与高同步精度,能够更好地应用在伺服的控制系统中。因此,对电机驱动控制系统进行方案设计非常有必要。
基于EtherCAT实时通信的电机驱动控制系统。
工控机(EtherCAT主站)接受位置与速度等信息,并进行相应的闭环与计算,然后将电流与转矩传到从站中;伺服驱动器(EtherCAT从站)主要接收来自编码器中的参数信息,然后与主站进行数据交互,然后将相应的数据通过EtherCAT传到主站,驱动伺服电机;EtherCAT总线会连接主控机(EtherCAT主站)与伺服驱动器(EtherCAT从站),将其作为数据通道进行数据的传输;编码器能够周期并快速地采集电机的位置以及速度参数,并将信息反馈到伺服驱动器中,让主站进行数据的读取;伺服电机采用的是矢量控制的方式,对伺服驱动器进行控制以实现轴系的运转功能。
基于EtherCAT实时通信的电机驱动控制系统采用的是三闭环控制模式,其中伺服驱动器只能进行电流闭环的运算;速度与位置等需要在工控机(EtherCAT主站)进行实现。这样的运行方式更加有利于编写复杂的算法,有较高的灵活度。
(二)工控机(EtherCAT主站)
使用KingStarMotion软件进行主站的配置以实现相应的功能。
1.搭建实时子系统RTSS
Windows是非实时性的操作系统,无法满足EtherCAT的高实时性要求。因此,要想满足电机驱动控制系统实时性的要求,需要将Windows转换成实时性的操作系统方可。使用RTX软件将HAL构建成实时的子系统RTSS,隔断Windows和RTX之间的传输,通过独立的RTSS调度器提高实时性的功能。
2.EtherCAT主站代码的二次开发
主站代码的二次开发主要是采用KingStarMotion软件进行实现,通过动态和静态链接库的方式进行开发,设置主站的参数,便于二次程序的开发与应用,同时该软件还支持CoE协议,能够更好地控制伺服驱动器。良好的编程环境更加有利于程序的编写,EtherCAT主站在RTSS系统的支持下能够保证通信的实时性。
3.编写电机实时控制程序
基于EtherCAT实时通信的电机驱动控制系统在RTSS下,利用高精度实时器实现闭环控制运算,保证数据的准确性。EtherCAT主站与从站要遵循一定的循环周期进行通信,每一个周期会接受并处理从站中反馈的数据,以实现闭环运算,计算过后会向从站发送相应的控制命令。电机实施控制程序会与伺服驱动器进行交互,从而完成伺服电机的运行。
4.人机交互界面设计
为了方便系统进行参数的测试,可以利用MFC进行程序的编写,通过进程间通信能够实现与电机实时控制程序的交互,从而完成相关参数的设定。在Windows系统的状态下与RESS实时程序进行数据通信,对于内存之间的通信可以引入同步事件的方式减少延迟。
(三)伺服驱动器(EtherCAT从站)
主从站架构的设计分别由工控机与伺服驱动器组成,本系统采用的伺服驱动器从站使用的是AxN型的驱动器,该驱动器集成了ESC与微处理器,同时还支持CoE协议,能够实现主站通行的功能。支持100Base-TX协议,接口为RJ45,位置传感器还支持多种类型的编码器,并配备相应的编程软件。AxN驱动器在驱动交流电机中运行时能够完成电流闭环的运算,同时还支持多种运行模式,功能较为完整。EtherCAT从站配置只需要打开EtherCAT接口并设置相关的电机参数即可连接主站,实现主站与从站之间的通信功能。
三、实验测试与分析
(一)平台搭建
搭建电机驱动控制实验平台,主站操作系统为Windows7,工控机为多核双网口,由Beckhoff提供,并安装主站测试软件,为该平台至少分配一个RTSS处理器,并为其配置实时网口;从站采用AxN驱动器,并集成相关的芯片与接口,简单地进行EtherCAT配置即可;同步电机中设置额定扭矩、额定转速、额定电流等参数;编码器采用具有较高位分辨率的ECA4000编码器,通过接口配置相应的软接线,以实现与伺服驱动器的连接。
工控机主要是通过网线与伺服驱动器进行连接的,通过实时网口发送相应的控制命令,将控制命令传送给驱动器,通过驱动器对电机进行控制。在可视化界面中编写程序,对相关参数进行设置,并保存数据。可视化界面程序中的EtherCAT、伺服控制器能够完成相应的参数功能,伺服控制模块可以对实验的数据进行保存。
(二)速度与位置的闭环测试
速度闭环控制测试实验中,在主站完成速度闭环运算,采用PI控制器完成速度调节的功能。其中给定电机的速度为1°,单位“s”,横坐标和纵坐标分别表示为时间和速度,对数据进行分析可以得到,当给定电机的速度为1°/s时,RMS为0.0037°/s,跟踪误差越小也能够满足其跟踪功能。
位置闭环控制测试实验中,主站会完成相应的闭环运算,速度与位置调节器均会采用PI控制器进行运算。当位置的定点跟踪顶点为1°时,横坐标与纵坐标分别表示时间与位置,纵坐标单位为“″”,当位置的定点跟踪在1°时,RMS为0.13″,说明位置定点的跟踪精度较好。
四、结束语
本文重点根据EtherCAT技术对电机驱动控制系统进行了设计,对EtherCAT的工作原理进行了分析,并使用KingStarMotion软件配置了EtherCAT主站,将工控机配置成EtherCAT主站,并为其编写了相应的界面程序,为其搭建了实验平台,随后使用该平台对系统进行了位置与速度的闭环实验。通过实验证明,电机驱动控制系统的可靠性越高说明精度越好,越能够满足先相关的性能要求。