基于软PLC的高精度运动控制系统应用
一、高精度定位技术发展现状
在高精度定位平台方面,国外出现了不同形式的精密定位平台发展产品,而我国在精密定位平台的研发方面尚处于落后趋势,在高速高精密定位领域技术基础薄弱,大部分高精密产品都依赖进口,而国外为了控制高新技术,限制向我国出口。为加快我国高精度产业及制造业的快速发展,对精密定位技术的研究已经迫在眉睫。
控制是影响定位平台定位精度的重要因素之一,在运动控制系统领域,目前国外主要有PMAC、ACS、NEWPORT、AEROTECH等高端控制器,但是这些控制器比较封闭,有的甚至需要专门学习其对应的开发语言,如ACS的ACSPL+,这无疑增加了开发的难度。
为追求更高的定位平台精度,本应用选用了倍福的Twincat控制平台,结合EtherCAT技术,研究分析如何利用运动控制技术和多种补偿方式实现高精度定位的目的。
二、主要配置介绍
软PLC系统
软PLC是运行在工业PC上的一个实时多任务控制内核,它既有所有硬PLC的性能、功能、可靠性、速度、纠错等特性,又有它自己的特性,即开放结构系统。
软PLC主要亮点
可运行在大多数计算机平台上(386、486、奔腾),独立于硬件总线(如ISA、PCI、VME、PC104、STD)。
支持I/O点多达8192点,包括数字、模拟和特殊I/O点,可选择的I/O硬件商有Allen-Bradley、GE Fanuc、DeviceNet、Profibus、MTL8000等。
超过1M的用户逻辑/数据表容量。
支持梯形逻辑、C/C++和Java编程。
支持在线运行模式,可在线程序修改和I/O强制。
EtherCAT总线
EtherCAT是迄今为止速度最快的工业以太网技术之一,同时它提供纳秒级精度的同步。EtherCAT将I/O现场总线通讯、驱动通讯整合在同一个系统中。由于 EtherCAT可实现高同步精度以及小于1ms的周期时间,因此能够确保大幅提升设备性能和效率。结合其他基于EtherCAT的高端驱动,为实现高精度的运控控制提供有力的支撑。
EtherCAT主要亮点
数据高速交互:1000个分布式I/O数据的刷新周期仅为30μs,其中包括端子循环时间。与100个伺服轴的通讯只需100μs。
分布式时钟(实时特性):精确同步在广泛要求同时动作的分布过程中显得尤为重要,如几个伺服轴在执行同时联动任务时。
热连接:“热连接”功能可以将网络的各个部分连在一起或断开,或“动态”进行重新组态,从而针对变化的组态提供灵活的响应能力。
开放性:EtherCAT是一个完全开放式协议,它已被认定为一个正式IEC规范(IEC/PAS62407)。
高精度运动控制系统核心
一网到底的总线结构
总线直达I/O,不再需要I/O内部总线到现场总线的接力;
DMA直接将总线传上来的数据复制到内存,不再经过CPU;
单一系统即可涵盖所有设备:输入输出、传感器、执行器、驱动、显示等;
无网关延迟。
集成在VS的开发环境
仅需采用一个软件就可对项目进行配置、编程、调试和诊断;
可以提供C/C++、C#、VB.NET编程语言和至Matlab/Simulink的链接;
高级语言加持,功能非常强大,非常适合精益求精的开发。
高精度补偿算法
三、测试数据分析
运动控制整体成果展示
间隙补偿及效果展示
(1)功能实施:
(2)补偿后的效果展示:
螺距补偿及效果展示
(1)功能块:
(2)补偿后的效果展示:
齿槽补偿及效果展示(针对有铁芯直驱场景)
(1)齿槽效应=磁吸力引起的齿槽力(物理效应)
不需要的和不均匀的吸引力
降低了精度和同步性
(2)基于机器学习的齿槽补偿
数据采集:通过正反方向的寻参确定原始数据
模型训练:用原始数据训练网络
结果:位置相关的电流值
应用:电流值转化为速度控制器的参数
(3)补偿后的效果展示:
NC轴多段位置补偿及效果展示
(1)NC轴可以实现多段位置补偿功能。如下图所示,NC轴在0到1000的绝对位置段内每间隔100长度(也可不等长间隔)进行不同长度的补偿。
NC轴多端位置补偿功能需要通过PLC功能块的方式实现,涉及到的功能块和结构体有:
① MC_TableBasedPositionCompensation; ② ST_PositionCompensationTableElement; ③ ST_PositionCompensationTableParameter。
(2)在轴参数中开启PositionCorrection功能。
(3)代码展示:下图是整个位置补偿表的数据。 (ST_PositionCompensationTableElement部分)
(4)补偿后的效果展示:
四、总结
通过上述验证分析,结果表明:该基于软PLC的高精度运动控制系统使平台的运动控制精度、定位精度得到了很大提升。本应用基于软PLC另辟蹊径,利用成熟的PC技术,加持高级语言的算法、友好的IDE及丰富的开发资源,为打造高精度的运动控制系统寻找到了有效的技术路线。