基于迭代学习的工业机械臂抗干扰控制方法
2023-08-18楚雪平王晓玲
楚雪平,王晓玲
(1.河南职业技术学院智能制造学院,河南郑州 450046;2.河南科技大学图书馆,河南洛阳 471023)
1 引言
机械臂是将多个机械杆通过关节连接起来的自动化系统,各机械杆在电机驱动下绕关节自由转动,使机械臂末端到达指定位置来完成相应工作[1−2]。随着自动化技术的迅速发展,机械臂已广泛应用于装配、焊接、组装等工业生产中,机械臂的控制精度直接决定了工业生产的效率和质量[3−4]。但是工业机械臂是一个非线性、强耦合的复杂系统,在实际生产中,机械杆绕各关节转动时必然会受到机械摩擦的干扰,从而造成控制精度降低。同时,当工业机械臂需要与生产对象接触时,生产对象必然会对机械臂末端产生一个未知负载力矩,这会严重影响机械臂的控制精度[5−6]。因此,要想提高工业机械臂的实用性和精确度,必须充分考虑工业机械臂对于机械摩擦和负载力矩的鲁棒性。文献[7]为了克服模型误差对机械臂控制的影响,采用滑模自适应控制算法对轨迹指令进行有效跟踪,能够在一定程度上提高精度,但实用性不高;文献[8]采用自适应终端滑模控制方法来提高机械臂的鲁棒性和控制效果,但是不能很好地克服抖振现象;文献[9]针对具有摩擦和负载等干扰的机械臂轨迹跟踪控制问题,提出了一种模糊补偿控制方法,能够提高控制效果,但是需要已知机械臂的精确数学模型;文献[10]为了提高带有各种干扰因素的机械臂的运行稳定性,采用干扰观测器设计了反演滑模控制算法,虽然实现了对机械臂的控制,但是控制精度一般。基于以上分析,设计了一种二阶非奇异快速终端滑模面,并提出了一种基于迭代学习的滑模鲁棒控制方法,实现了对工业机械臂的精确控制。
2 模型建立
工业机械臂是通过机械关节将机械臂连接起来的多级智能工业生产设备,其中各级机械臂可以绕相应关节自由转动,从而使装有抓手、解刀、焊枪等设备的机械臂末端能够准确到达指定空间位置,来快速、精确、高效地完成装配和焊接等流水线工业生产任务。工业机械臂示意图,如图1所示。
图1 工业机械臂示意图Fig.1 Schematic Diagram of Industrial Manipulator
工业机械臂的数学模型为[11]:
式中:q、q̇、q̈—工业机械臂各关节转动的角度、角速度和角加速度;
M(q)—惯性矩阵;D(q,q̇)—科氏力和离心力矩阵;G(q)—重力矩阵;τ—各关节的驱动力矩。
在工业生产中,工业机械臂的末端设备必须接触各种零部件并施加一定的作用力,那么零部件就会对工业机械臂产生一个未知的负载力矩,此力矩必然会影响对工业机械臂的精确控制。另外,工业机械臂各关节在转动过程中不可避免地会受到机械摩擦的干扰,导致工业机械臂的末端无法快速、准确定位到指定位置,无法精准完成相应的生产任务[12]。因此,要实现对工业机械臂的精确控制,提高工业生产的效率和质量,必须充分考虑未知负载力矩和机械摩擦的干扰影响,则工业机械臂数学模型为:
式中:d—未知负载力矩和机械摩擦的干扰总和。
根据坐标转换关系,可以得到工业机械臂末端的运动轨迹与各关节转动角度的转换关系为[13−14]:
式中:P=[x,y,z]T—工业机械臂末端的运动轨迹;N—转换矩阵。
3 控制律设计
首先给出了二阶非奇异快速终端滑模面和滑模控制律,然后利用迭代学习方法来改善滑模控制律的鲁棒性,最后进行了收敛性分析。控制系统结构,如图2所示。
图2 控制系统结构Fig.2 Structure of Control System
3.1 滑模控制律
机械臂末端的轨迹跟踪误差为:
式中:Pc=[xc,yc,zc]T—工业机械臂末端的期望轨迹指令。
则由式(3)得到工业机械臂各关节转动的角度指令为:
式中:k1—正定矩阵。
工业机械臂的关节转动角度跟踪误差为:
设计二阶非奇异快速终端滑模面[15]s为:
式中:α、β—正定矩阵;r1=m1n1、r2=m2n2,其中,m1、n1、m2和n2是正奇数,且满足1 对式(7)求导得: 定义工业机械臂的状态ω和φ如下: 然后设计滑模控制律τ: 式中:k2、k3—正定矩阵;̂—ω的估计值;v—二阶滑模项,表达式如下: 的表达式为: 式中:λ、η、γ—正定矩阵。 迭代学习是通过迭代修正控制输出来达到控制目标的一种智能控制方法,不需要已知控制对象的精确数学模型,能够快速实现对控制对象运动轨迹的精确跟踪[16−17]。这里利用迭代学习方法来改进滑模控制律式(11),以改善滑模控制的抖振现象,提高控制的稳定性、准确性和鲁棒性。 设计第k次迭代学习的滑模控制律τk: 式中:k—迭代学习次数;—第k次迭代学习对ω的估计值;φk—第k次迭代学习时的状态φ;sk—第k次迭代学习时的二阶非奇异快速终端滑模面s;vk—第k次迭代学习的二阶滑模项,表达式描述如下: 其中,初始迭代值v0= 0。 设计的表达式为: 其中,初始迭代值= 0。 在第k次迭代学习的滑模控制律式(14)~式(16)的基础上,设计基于迭代学习的滑模控制律为: 式中:初始控制量τ0= 0;k4、k5—正定矩阵。 结论1:设计的基于迭代学习的滑模控制律式(14)~式(17)能够确保工业机械臂的运动轨迹收敛。 证明:构建复合能量函数[18]为: 式中:—对ωk的估计误差=−ωk。 相临2次迭代学习的复合能量函数变化值ΔEk描述为: 然后将滑模控制律式(14)~式(16)代入式(19)化简可得: 因为ΔEk≤0,可知结论1 成立[19],即所设计的基于迭代学习的滑模控制律式(14)~式(17)能够确保工业机械臂的运动轨迹收敛。 为了验证设计的快速终端滑模控制律的有效性,分别采用文献[20]的模型预测控制(MPCL)、滑模控制律式(11)(SMCL)与基于迭代学习的滑模控制律式(17)(ILS−SMCL)进行对比仿真。 设置工业机械臂的初始状态为0;工业机械臂末端的运动轨迹指令为:xc=(10 sint)mm、yc=(10 cost)mm、zc=( 3t)mm;设置干扰为d=[0.1 sint]3×1N ⋅m;迭代周期为0.2s。设置控制参数,如表1所示。 表1 控制参数Tab.1 Control Parameters 为了展示设计的基于迭代学习的滑模控制律(ILS−SMCL)对于工业机械臂的控制效果和优越性,利用实际坐标与指令坐标之间的距离误差eP来衡量定位控制精度,eP的计算方法描述如下: 按照设置的参数运行,并利用上述三种控制方法控制工业机械臂运动得到的跟踪误差eP,如图3所示。 图3 轨迹跟踪误差Fig.3 Trajectory Tracking Error 由轨迹跟踪误差仿真结果图3看出:在文献[20]模型预测控制(MPCL)下,工业机械臂可基本跟上指令信号,最大跟踪误差为8.1mm,误差比较大,效果不理想;在滑模控制律(SMCL)下,工业机械臂的末端能够基本跟踪轨迹指令信号,最大轨迹跟踪误差为4.2mm,跟踪误差仍然较大,控制效果一般;而在基于迭代学习的滑模控制律(ILS−SMCL)下,关节末端能够稳定、准确跟踪指令信号,最大轨迹跟踪误差仅为0.3mm,能够满足精确控制要求。进一步给出了工业机械臂末端对于x、y、z坐标的跟踪结果,如图4~图6所示。其中,ex=x−xc、ey=y−yc、ez=z−zc。 图4 x坐标跟踪仿真结果Fig.4 Tracking Simulation Results of x Coordinate 图5 y坐标跟踪仿真结果Fig.5 Tracking Simulation Results of y Coordinate 图6 z坐标跟踪仿真结果Fig.6 Tracking Simulation Results of z Coordinate 由轨迹跟踪误差仿真结果图4~图6可看出:在文献[20]模型预测控制(MPCL)下,工业机械臂末端的最大跟踪误差为6.2mm,误差比较大,控制效果不好;在滑模控制律(SMCL)下,工业机械臂末端的最大跟踪误差为3.3mm,误差较大;而基于迭代学习的滑模控制律(ILS−SMCL)的最大跟踪误差仅为0.2mm,误差较小,控制效果较好,能够满足精确控制要求。 为了验证设计的快速终端滑模控制律(ILS−SMCL)对工业机械臂的实际控制效果,选取的实验对象为勃朗特生产的六自由度工业机械臂,型号:BRTIRUS2550A,主要应用在搬运作业中,最大负载50kg,臂展255cm,其控制系统用来存储执行控制方法,并施加干扰信号。实验中,使机械臂携带25kg 负载,分别采用文献[20]中模型预测控制(MPCL)、滑模控制律(SMCL)与基于迭代学习的滑模控制律式(17)对BRTIRU机械臂进行定位精度测试,每次的初始点的坐标为(0,0,0)mm,然后在控制端依次发送10个坐标指令分别为:(100,100,100)mm、(200,200,200)mm、(300,300,300)mm、(400,400,400)mm、(500,500,500)mm、(600,600,600)mm、(700,700,700)mm、(800,800,800)mm、(900,900,900)mm、(1000,1000,1000)mm,然后测量每次定位的实际坐标位置,记录得到实验结果,如表2所示。 表2 实验结果Tab.2 Experiment Results 由表2看出:文献[20]模型预测控制方法(MPCL)的最大跟踪误差为2.83mm,平均运行时长为3.11s,控制精度较差,控制时间较长;滑模控制律(SMCL)的最大跟踪误差为1.45mm,平均运行时长为2.78s,控制精度一般,控制时间也较长;而基于迭代学习的滑模控制律(ILS−SMCL)的最大跟踪误差仅为0.17mm,平均运行时长仅为1.73s,控制精度较高,控制时间较短。 针对带有未知负载力矩和机械摩擦等干扰的工业机械臂,设计了一种基于迭代学习的滑模控制律,消除了抖振现象,使工业机械臂具有更小的控制误差。通过对比仿真结果表明:设计的基于迭代学习的滑模控制律能够实现对工业机械臂运动轨迹的高精确控制,最大跟踪误差仅为0.3mm,在平台测试试验中,设计的基于迭代学习的滑模控制律也表现出了更优的快速性、准确性和工程实用性,最大跟踪误差仅为0.17mm,平均运行时长仅为1.73s,能够在未知负载力矩和机械摩擦等干扰因素的影响下大幅提高工业机械臂的控制精度。3.2 基于迭代学习的滑模控制律
3.3 收敛性分析
4 仿真验证
4.1 仿真参数设置
4.2 对比仿真结果
5 平台测试实验
6 结论