融入模糊补偿的机械臂轨迹跟踪预测控制*

2023-09-26 07:17徐智超文晓燕
组合机床与自动化加工技术 2023年9期
关键词:连杆摩擦轨迹

徐智超,文晓燕,张 雷

(北京建筑大学电气与信息工程学院,北京 102600)

0 引言

随着机器人技术的发展,机械臂的应用领域不断拓宽,现已广泛应用在工业制造、医疗健康、航空航天、海洋探索[1-4]等领域。其中,轨迹跟踪控制问题始终是机械臂研究的热点。由于机械臂是非线性、强耦合的复杂系统,且在实际运行中存在摩擦和外部干扰等不确定项,难以实现精确的轨迹跟踪控制。因此,实现机械臂的高精度、高稳定性轨迹跟踪是一项具有挑战性的任务。传统的控制算法如PID控制、鲁棒控制等,这些方法虽然具有不依赖系统模型、简单易实现的优点,但是通常难以满足愈加复杂的操作任务和工作环境对机械臂控制性能的要求。

近年来,各种新型控制方法应运而生,以解决机械臂轨迹跟踪控制问题。YI、SUN等[5-7]分别提出了滑模控制与自适应控制、扩展状态观测器以及鲁棒自适应模糊控制相结合的控制方法。其中,YI等[5]引入自适应方法对系统不确定性进行补偿,保证了系统性能,并进一步提高了机械臂轨迹跟踪的精度。SUN等[6]利用扩展状态观测器来估计机械臂系统参数不确定性和外部干扰。YIN等[7]将机械臂系统中的集中不确定性和干扰分为低频分量和高频分量,采用自适应方法补偿低频分量,建立模糊逻辑系统补偿高频分量。此外,KUMAR等[8]为三连杆机械臂系统设计了一种分数阶自整定模糊PID控制器,通过与其他方法的对比实验,证明了该控制器在轨迹跟踪、干扰抑制、噪声抑制和补偿模型不确定性方面性能更佳。陈引娟等[9]针对存在建模不确定性和外部干扰的机械臂系统,设计了一种标称计算力矩控制器和变论域模糊补偿器相结合的控制方案。利用计算力矩控制器求解标称系统控制力矩,通过变论域模糊补偿器对不确定项进行估计和补偿,实验表明该控制方案有效提升了系统的跟踪性能。尽管上述研究在提升轨迹跟踪精度方面取得了一定的成果,然而上述控制方法均未考虑机械臂系统的状态约束和控制输入约束,会导致不可预测的安全性问题以及影响跟踪性能。

模型预测控制(model predictive control,MPC)是一种基于预测模型的闭环寻优控制策略,能够处理耦合、约束和时变等问题,克服了上述方法的缺点。SHI等[10]对MPC、滑模控制、力矩控制3种控制方法在机械臂轨迹跟踪中的性能进行了比较,结果表明MPC的跟踪效果更为突出。INCREMONA、NICOLIS等[11-12]均提出了将滑模控制与MPC结合的鲁棒控制方案,利用滑模控制补偿未建模的系统动力学和干扰,MPC用于保证满足运动和驱动约束。KANG等[13]提出了一种基于神经网络的模型预测控制方法。该方法引入两组径向基函数神经网络(RBFNNs),分别用于处理系统不确定性和解决优化问题。XIE等[14]将机械臂的学习模型与标称模型引入了MPC框架,提出了一种基于学习的非线性模型预测控制方法,在学习模型中利用神经网络设计了一个在线参数估计器来处理系统的不确定性。虽然滑模控制和神经网络与MPC结合的控制方法能够有效处理系统不确定性,但滑模控制存在因控制变量不连续而导致的系统出现抖振的问题和滑模面选择困难的问题;同时,神经网络需要大量的数据进行训练,迭代成本较高。模糊控制理论能够用自然语言描述系统性能,确定控制规则,简单高效地实现控制目标,有较强的鲁棒性[15],可以弥补上述方法的不足,所以本文利用模糊控制理论设计模糊补偿器,以补偿机械臂系统存在的不确定项。

基于上述研究,本文针对机械臂系统存在未知摩擦项和外部干扰的情况,充分考虑了机械臂系统的状态约束和控制输入约束,设计了一种模型预测控制与模糊补偿相结合的控制方案。首先利用逆动力学方法实现机械臂系统反馈线性化,然后利用模型预测控制得到机械臂系统已知部分的最优控制量,并利用模糊补偿器对机械臂系统存在的不确定项进行补偿,最后将两者结合构成新的机械臂轨迹跟踪控制策略。

1 问题描述

针对任意一个n关节的机械臂,利用Lagrange方法建立其动力学模型,其Lagrange函数为:

L=EK-EP

(1)

式中:EK和EP分别表示机械臂系统的总动能和总势能。则机械臂Lagrange动力学方程为:

(2)

(3)

在实际应用中,机械臂系统存在未知摩擦项和外部干扰等不确定性因素,因此机械臂动力学方程可表示为:

(4)

为了将非线性机械臂系统简化为线性系统,使用逆动力学方法[16]实现反馈线性化。机械臂的逆动力学方程可以在关节空间中写成系统输入和输出之间的非线性关系,根据动力学方程(4),将控制律转化为如下形式:

(5)

(6)

(7)

针对式(3),只采用模型预测控制算法可以得到良好的跟踪效果,然而机械臂系统具有强耦合、高度非线性的特点,尤其是当机械臂系统存在不确定项时,可能会引起控制系统质的变化和系统不稳定[18],进而导致轨迹跟踪效果不理想。因此,本文利用模糊逻辑理论构建模糊补偿器,以此来消除不确定项对轨迹跟踪的影响,将得到的补偿控制量与模型预测控制相结合,实现机械臂对期望轨迹的跟踪控制。

2 控制器设计

多连杆机械臂轨迹跟踪控制的目标是使实际关节角度位置q精准跟踪期望关节角度位置qd,故本文根据式(5)~式(7),将新的控制变量Vc进一步设计为:

Vc=vmpc+vfuzzy

(8)

式中:vmpc是MPC控制器输出的控制量,vfuzzy是模糊补偿器输出的补偿控制量。本文提出的控制方法整体控制框图如图1所示,模糊补偿器的作用是对机械臂系统存在的未知摩擦项及外部干扰等不确定性因素进行补偿,通过与MPC控制器结合,使机械臂在满足状态约束和控制输入约束条件下以最优的方式跟踪目标轨迹。

图1 整体控制方案框图

2.1 模型预测控制

(9)

因为预测模型一般是线性离散的,因此需要将式(9)转换为线性离散的预测模型。本文利用逆动力学方法来实现反馈线性化。令:

(10)

则式(9)可以转换为线性系统:

(11)

将式(11)改写成状态空间形式:

(12)

式中:A、B、C为系数矩阵。

假设采样周期为T,在t=k时刻采用前向欧拉法对式(12)进行离散化,有:

(13)

(14)

式中:Ad=I+TA,Bd=TB,Cd=C。

在k时刻,给出一组输入Uk和当前状态x(k),向后预测N步,则可以根据式(14)得到:

(15)

通过递推和迭代运算,可以得到:

(16)

式(16)可进一步写成:

Xk=Fx(k)+GUk

(17)

现定义k时刻的跟踪误差为:

e(k)=x(k)-xr(k)

(18)

式中:xr(k)为k时刻的期望状态。同理,向后预测N步,可以得到:

2. The questions are concerning the knowledge, skills and professional dispositions of a qualified mathematics teacher in community college.

(19)

式(19)可进一步写成:

Ek=Fx(k)+GUk-Rk

(20)

考虑代价函数:

(21)

式中:Q为状态误差权重矩阵,R为控制输入权重矩阵。将式(20)代入式(21)可得:

(22)

对式(22)进行归纳整理,并忽略不影响最小化代价函数J的项,可以得到:

(23)

令H=GTQG+R,f=GTQ(Fx(k)-Rk),则式(23)可以写为:

(24)

考虑机械臂系统的约束,假设系统状态约束和控制输入约束分别定义为:

xmin≤x≤xmax

(25)

vmin≤vmpc≤vmax

(26)

由于模型预测控制向后预测N步,为了满足约束条件,结合式(17),式(25)、式(26)可化为:

Xmin≤Fx(k)+GUk≤Xmax

(27)

Umin≤Uk≤Umax

(28)

综上所述,可以将MPC问题转化为QP(quadratic programming)问题,即:

(29)

2.2 模糊补偿

在机械臂运行时,检测模块会不断测量实际轨迹与目标轨迹之间的误差,并将误差和误差变化率作为模糊补偿器的输入,输出补偿控制量。本文分别定义误差和误差变化率为:

(30)

(31)

表1 模糊控制规则表

(a) 输入量误差的隶属函数 (b) 输入量误差变化率的隶属函数

整个控制部分的运行方案如下:

步骤4:将控制力矩τ作用到机械臂,得到k+1时刻的状态量,并置k=k+1返回步骤1。

3 仿真实验

为了验证本文所提出控制方案的有效性,以及不失一般性,选择UR5机械臂第2、3关节所构成的二连杆机械臂作为被控对象,并且为了更好地看出机械臂的实时运动情况,以及验证模型的正确性,本文在SimMechanics中建立UR5机械臂第2、3关节的简化模型,采用MATLAB/SimMechanics联合仿真。图3是UR5机械臂模型,图4是二连杆机械臂简化图。

图3 UR5机械臂模型图4 二连杆机械臂简化图

在图4中,m1,m2分别表示连杆1和连杆2的质量,l1,l2分别表示连杆1和连杆2的长度,C1和C2分别表示连杆1和连杆2的质心,b1和b2分别表示关节1、2到质心1、2的距离,q1,q2为关节角,g为重力加速度。经计算推导,机械臂动力学方程式(4)中各参数计算表达式为:

(32)

(33)

(34)

式中:p=b2l1cosq2。机械臂相关参数为m1=1 kg,m2=1 kg,l1=1 m,l2=0.8 m,b1=0.5 m,b2=0.4 m,g=9.8 N/kg。

为了模拟摩擦和扰动,参考文献[19],采用库伦粘滞摩擦和外部干扰:

(35)

τd=0.2sin(t)

(36)

针对机械臂系统考虑和不考虑摩擦和外部干扰等不确定项的两种情况,本文进行了对比研究,如图5~图8所示。为了模拟实际机械臂系统存在的摩擦和外部干扰等不确定项的情况,引入式(35)、式(36)所示的摩擦和外部干扰。图5和图6展示了机械臂系统中加入不确定项对MPC控制下轨迹跟踪性能的影响,二者分别是双关节机械臂的轨迹跟踪曲线和误差曲线。

图5 MPC-双关节轨迹跟踪结果 图6 MPC-双关节跟踪误差曲线

由图5和图6可以看出,在不考虑摩擦和外部干扰等不确定项的情况下,单独利用MPC控制器就可以得到良好的轨迹跟踪效果,轨迹跟踪准确度较高。关节1的最大跟踪误差为0.008 34 rad,关节2的最大跟踪误差为0.019 46 rad。但是,摩擦和外部干扰等不确定项的加入,会显著影响轨迹跟踪的效果,单独的MPC控制器控制性能较差,双关节轨迹跟踪误差都有所增大。其中,关节1的最大跟踪误差增大为0.014 88 rad;关节2的轨迹跟踪准确度下降明显,最大跟踪误差为0.072 67 rad。

在考虑摩擦和干扰等不确定项的前提下,分别采用MPC和本文所提的融入模糊补偿的MPC控制策略时,双关节机械臂的轨迹跟踪曲线和误差曲线分别如图7和图8所示。

(a) 关节1位置跟踪 (b) 关节2位置跟踪

(a) 关节1跟踪误差 (b) 关节2跟踪误差

从图7可以看出融入模糊补偿后的控制器实现的跟踪效果有了明显改善。

由图8a可知,关节1的轨迹跟踪误差基本稳定在零值,图8b所示关节2的轨迹跟踪误差也明显减小,最大跟踪误差减小为0.024 8 rad。

表2是在3种情况下,双关节机械臂轨迹跟踪的平均绝对误差和均方根误差。

表2 双关节机械臂轨迹跟踪误差

由表中数据可以看出,摩擦和外部干扰等不确定项的存在会使平均绝对误差和均方根误差变大,但在加入模糊补偿后,两种误差均显著减小,经计算得,相对于单独的MPC控制器,双关节轨迹跟踪的平均绝对误差分别减小了88.63%和88.30%,均方根误差分别减小了96.84%和97.85%。

该实验结果说明将模糊补偿融入模型预测控制能够有效补偿机械臂系统中存在的摩擦和干扰等不确定性因素对轨迹跟踪的影响,提高轨迹跟踪精度,改善轨迹跟踪效果。

4 结论

本文针对机械臂在实际轨迹跟踪过程中存在的未知摩擦项和外部干扰,易导致跟踪精度不足的问题,考虑状态约束和控制输入约束,提出了一种融入模糊补偿的机械臂轨迹跟踪模型预测控制方案。首先,采用逆动力学方法进行反馈线性化,将非线性机械臂系统简化为线性系统;然后,利用模型预测控制处理多变量约束问题,并实现在线滚动优化;最后,使用模糊补偿处理摩擦和外部干扰等不确定项。通过联合仿真实验验证本文所提出的方案可以有效补偿不确定项对控制性能以及跟踪效果的影响,提高了机械臂轨迹跟踪的精确度和系统稳定性。此外,本文所提出的控制策略易于扩展到更多自由度的机械臂。

猜你喜欢
连杆摩擦轨迹
干摩擦和湿摩擦的区别
某发动机连杆螺栓拧紧工艺开发
轨迹
轨迹
神奇的摩擦起电
条分缕析 摩擦真相
轨迹
连杆的设计及有限元分析
进化的轨迹(一)——进化,无尽的适应
解读摩擦起电