郭骥翔
(中国铁路设计集团有限公司电化电信工程设计研究院 天津 300412)
在传统的直线驱动场合,都是采用旋转电机,再由丝杠、齿条等中间过程转为直线运动。期间造成了大量能源的浪费,且摩擦噪声大,给系统维护带来了麻烦,影响系统精度和可靠性。永磁同步直线电机以其高可靠性、高精度、响应快速、高效率等优势在工农业生产、航空航天、国防以及日常生活中得到了广泛应用[1]。永磁同步直线电机的原理与传统的同步电机相同,只是将传统电机的结构进行改进,使其能够适应高速高精度的运动场合。永磁同步电机分为有铁心和无铁心两大类,有铁心直线电机虽然输出转矩大,但由于存在齿槽效应和端部效应其推力波动也较大[12],不适合精度要求较高的场合。U型结构的无铁心直线电机由于不存在铁心并且定子永磁体磁场对称,推力波动大为降低。并且无铁芯结构减少了动子质量,很大程度上削弱了齿槽效应产生的电机推力波动。使得这类电机可以应用于精密机床、数控雕刻机[4,14-16]等高精设备。因此,直线电机在机床进给伺服系统中的应用,在世界机床行业得到重视[2],直线电机的线性直驱“零传动”模式使得机床的控制性能得到了极大提高。在工业生产和各种加工制造业中,经常需要加工设备能够完成空间内的运动,二维插补算法简单,易于编程实现,在数控系统中广泛应用,但不能满足复杂加工工艺要求[3]。对于复杂三维运动,需要采用三维空间插补方法来满足精度、速度等加工指标要求。把直线电机与三维运动平台相结合,充分发挥直线电机定位精度高、进给速度大、响应快速等优点,大幅度提升三维运动平台的速度和精度。
一套完整控制系统由上位机、控制器、驱动器、电机、位置检测元件、电流检测元件、电压检测元件等构成。完成指令下发、数据采集、数据处理、信号放大驱动等一系列功能。其结构如图1所示。三维直线电机运动平台如图2所示。直线电机的控制器采用固高科技的GTS-400系列中的四轴控制器,驱动器选用elmo公司的harmonica工业级小型驱动器。控制器接收通过专用PCI卡接收上位机发出的控制指令,完成数据采集与分析,并把处理的数据送到驱动器;驱动器进行功率放大,驱动电机运动;位置检测元件采集位置信息回馈到控制器和驱动器形成闭环系统
图1 控制系统结构图
图2 三维直线电机运动平台实物图
直线插补和圆弧插补是机床行业的基本插补运动,直线插补与圆弧插补的原理相似,且相比于圆弧插补较为简单,因此这里只对实现圆弧插补的算法进行讨论,空间圆弧方程有多种方程表示方法,一般情况下习惯于用球面和平面相交表示,这种表示方式并不适合圆弧插补运动的方程表达方式。对于空间三维插补运动,空间圆弧的参数方程表示方法有其独特优势[9]。把空间圆弧的交线方程表达式(1)改成式(2)的参数方程形式。圆心坐标为方向向量为其中为单位向量且和两两垂直。θ为圆弧从0到2π的变化角度,则空间圆弧可表示为式(2)所示。
Matlab /GUI 是一种新型的基于 Matlab 的强大计算功能的图形用户界面开发工具,可方便、快速地用来开发一些常规图形界面应用程序[5-7]。圆弧插补的实质是“数据的密化”。为了能够直观的看出需要插补的圆弧以及插补过程,将插补算法在matlab中进行编写,通过matlab画图功能直观的看出插补运动的轨迹,便于对算法进行改进。空间圆弧运动轨迹需要三维运动平台协同工作来完成。本文采用逐点比较法来完成空间圆弧插补操作。首先对插补算法进行编程验证。逐点比较法每运行一步便进行一次轨迹偏差计算。协调三轴运动,使得运行轨迹以折线方式逼近圆弧。插补误差小,在三维圆弧插补运动中的插补误差不会超过一个脉冲当量。该方法具有方法简单、运算速度快等优点,空间圆弧插补流程图如图3所示,并在此基础上完成了Matlab的GUI界面开发。空间圆弧插补的图形化界面,如图4所示。
在三维圆弧插补过程中,由流程图可知,运动轴是基于距离最远的坐标轴来选择的,因此,每个轴相对于被插补点的平面投影距离不大于0.5单位脉冲当量。即在xoy平面、xoz平面、yoz平面的最大误差分别为dx≤0.5单位脉冲当量、dy≤0.5单位脉冲当量、dz≤0.5单位脉冲当量。空间最大插补误差出现在dx=dy=dz=0.5单位脉冲向量。由空间坐标分布和三角不等式关系可得插补误差为。可得最大插补误差为单位脉冲当量。
为了验证算法的有效性,本文选择vs2010作为开发平台,使用C++作为编程语言,将m文件中的程序利用C++进行实现,并将程序通过vs2010下载到运动控制器,将运动控制器产生的脉冲信号传输给驱动器,驱动三轴平台电机,完成空间圆弧的插补运动。插补算法流程如图5所示。
图3 空间圆弧插补流程图
图4 空间圆弧图形化界面
图5 C++算法流程图
图6 空间圆弧投影
图7 三维运动平台运动轨迹图
图8 三维运动平台xoy轨迹投影
图9 三维运动平台xoz轨迹投影
1)提出用三维圆弧的参数方程形式更适合圆弧插补运动的实现;
2)分析得到了空间圆弧插补算法的插补误差;
3)用Matlab的GUI功能开发了三维圆弧插补的图形化界面;
4)从三维直线电机运动平台得到的曲线来看,三维圆弧插补得到了很好的实现,证明了算法的可行性。