直角坐标机器人轮廓误差补偿算法设计
2023-10-24蒋金伟刘进福
李 君,蒋金伟,刘进福
(常州工业职业技术学院,江苏 常州 213164)
0 引言
直线电机在微进给、高精度和高性能等领域的应用越来越广泛,主要是因为直线电机优势比较明显,如响应速度快、传动结构简单和定位准确等。大多数高精密仪器往往使用多台直线电机,考虑到直线电机的独特结构以及电机之间的耦合关系,多电机同步控制就成为进一步提升仪器控制精度的关键[1-3]。直线电机的同步控制策略可以参考旋转电机,对于X-Y两轴运动平台,许多学者采用轮廓误差作为控制指标,并通过不同控制方法来降低轮廓误差[4-5]。武志涛等[6]以直驱XY平台为研究对象,设计了一种轨迹跟踪控制方法,该方法集成了PDFF位置控制器和变增益轮廓误差补偿器的优点,可有效减小系统轮廓误差;实验结果表明,所提出的创新性方法不仅可实时、有效地计算出轨迹跟踪系统的轮廓误差,并且使XY平台满足高精度轮廓跟踪的需求;王丽梅等[7]以H型精密运动平台为研究对象,为消除电机参数变化和扰动导致的同步误差,提出了一种交叉耦合模糊PID控制方法;在单轴中采用模糊PID控制作为位置控制器,以保证单轴跟踪精度;通过交叉耦合控制方法来保证双轴同步精度。金鸿雁等[8]针对双直线电机伺服系统同步进给问题,设计了一种双轴同步控制方案,该方案包括1个滑模控制器、1个交叉耦合控制器;其中滑模控制器可用于消除系统抖振现象,而交叉耦合控制器可消除双直线电机中存在的耦合现象,实现双直线电机伺服系统同步控制。
本文在现有研究的基础上,设计一种直角坐标机器人轮廓误差控制方法。
1 直角坐标机器人建模
1.1 单轴数学模型
大多数情况下,直角坐标机器人基本结构类似,主要包括工作台、滚珠丝杠、直线导轨、联轴器和伺服电机等。为简化单轴建模流程,可作如下假设:滚珠螺母不计质量;电机与滚珠丝杠之间联接为刚性联接;工作台刚度不受位置变化影响;传动装置的刚度、惯量、阻尼和干扰转矩等均归于丝杠[9]。
基于上述假设可得单轴动力学方程,即
(1)
Ms为丝杠转矩;JL为转动惯量;θL为输出转角;fL为阻尼系数;Mgr为干扰转矩。
式(1)进行拉氏变换可得
(2)
那么传递函数可表示为
(3)
式(3)可调整为
(4)
式(4)同样可以表示为
(5)
θ为位置信号;u为控制输入;a、b、k为系数,根据被控对象确定。
1.2 轮廓误差模型
单轴控制存在跟踪误差,所以由单轴轨迹耦合而成的轮廓是无法避免误差的。相对而言,跟踪误差无法准确描述曲线轨迹精度。因此,控制系统既要确保单轴的速度和位置精度又要确保轮廓控制精度。
由文献[10]可知,交叉耦合增益系数Cx、Cy直接影响轮廓误差ε大小。若想获取直角坐标机器人轮廓误差需要以下参数:x轴轨迹误差Ex、y轴轨迹误差Ey、x轴增益系数Cx、y轴增益系数Cy。轮廓误差的计算式为
ε=EyCy-ExCx
(6)
其中,Ex=xr-xs、Ey=yr-ys,xr为x轴期望轨迹,xs为x轴实际轨迹,yr为y轴期望轨迹,ys为y轴实际轨迹。
如果轮廓轨迹为直线,其交叉耦合增益系数可定义为
(7)
如果轮廓轨迹为圆形,其交叉耦合增益系数可定义为
(8)
如果轮廓轨迹为一般曲线,那么交叉耦合增益系数可定义为
(9)
式(7)~式(9)中,θ为期望轨迹切线与x轴的夹角;R为轮廓半径;ρ为轮廓曲率半径。
2 迭代学习交叉耦合控制
交叉耦合控制可以有效提高直角坐标机器人的轮廓跟踪能力,减小系统误差,但该方法也存在不足,如系统轮廓跟踪精度往往受增益系数影响,且增益系数计算精度无法保证;交叉耦合控制在提高单轴跟踪精度方面作用有限。为此,可考虑在算法中引入迭代学习控制,主要是因为迭代学习控制对被控对象数学模型的要求不高而且计算量较小,同时也不需要过多的训练样本[11]。
参考各种控制方法优点,本文设计了一种轮廓跟踪控制器,其系统结构如图1所示。
图1 迭代学习交叉耦合控制系统结构
轮廓误差ε迭代学习律表示为
(10)
kpε、kdε为轮廓误差学习率。
x轴和y轴的迭代学习律分别表示为:
ux,j+1=[ux+(kpx+kdx)Ex-Cx(kpε+kdε)ε]j
(11)
uy,j+1=[uy+(kpy+kdy)Ey+Cy(kpε+kdε)ε]j
(12)
kpx和kdx为x轴迭代学习系数;kpy和kdy为y轴迭代学习系数。
由于Ex(t)=xr(t)-xs(t)、Ey(t)=yr(t)-ys(t),那么则有
(13)
式(13)中各参数可表示为:
M11=I-[(kpx+kdx)+Cx(kpε+kdε)Cx]Gx
(14)
M12=Cx(kpε+kdε)CyGy
(15)
M21=Cy(kpε+kdε)CxGx
(16)
M22=I-[(kpy+kdy)+Cy(kpε+kdε)Cy]Gy
(17)
(18)
i∈[1,n];λ为谱半径。由于max|λi|<1,收敛条件可以转化为
(19)
3 实验研究
3.1 硬件电路
直角坐标机器人的控制系统以ARM和FPGA为核心,其中,ARM主要用于传感器信号采集、上位机通信、故障检测和机器人运动轨迹规划等;FPGA则可实现伺服电机的控制。控制系统硬件结构如图2所示。ARM控制器的核心板基于MINI2440开发板,该开发板拥有多个接口,能够满足直角坐标机器人的多功能要求。ARM部分包括数据存储器、液晶显示屏、UART接口、SD卡槽以及外部I/O接口等。FPGA采用基于EP2C5T44C8N芯片的KIT-FPGA-V2.5开发板,该开发板采用Altera公司CycloneⅡ系列FPGA芯片EP2C5T144C8N。FPGA部分包括UART接口、定时器、存储器以及外围设备接口等,其外部扩展了Flash和SDRAM存储器。伺服电机选用通用松下MINAS-A5系列MDME152GCH伺服电机,与其配套的伺服驱动器为MDDHT5540。电机相关参数:额定转速为3 000 r/min,额定输出功率为750 W,最大转速为4 500 r/min,最大输出转矩为7.2 N·m,瞬间最大转速为5 175 r/min。
图2 控制系统硬件结构
3.2 实验分析
按上述结构搭建控制系统,并将其移植到某型号直角坐标机器人上。实验过程中,分别采用两轴单独控制算法、交叉耦合控制算法以及迭代学习交叉耦合控制算法跟踪平面蝴蝶曲线并记录轮廓误差,实验结果表1所示。
表1 轮廓误差
由表1可知,直角坐标机器人在跟踪比较复杂轨迹时,采用本文算法轮廓误差平均值为19.46 μm、最大值为73.00 μm、标准偏差仅有16.89 μm。与两轴单独控制相比,平均值、最大值、标准偏差分别降低了60.06%、70.31%、56.55%;与交叉耦合控制相比,平均值、最大值、标准偏差分别降低了31.77%、28.22%、18.29%。实验结果表明,迭代学习交叉耦合控制能够大幅降低轮廓误差,有效提高直角坐标机器人运动精度,可满足相关行业高精度等控制要求。
4 结束语
本文以直角坐标机器人为研究对象,为进一步提高其控制精度,分别建立了单独独立控制数学模型和轮廓误差模型。结合迭代学习控制和交叉耦合控制设计了一种迭代学习交叉耦合控制算法。实验结果表明,本文所提控制算法能够大幅降低轮廓误差,有效提高直角坐标机器人运动精度,具有一定的借鉴意义。