APP下载

基于反演滑模算法的工业机器人导纳控制*

2022-08-25李景春

组合机床与自动化加工技术 2022年8期
关键词:外力滑模反演

王 君,李景春

(兰州理工大学电气工程与信息工程学院,兰州 730050)

0 引言

随着加工制造业复杂程度的增加,工业机器人的应用越来越广泛,大大提高了工业生产效率。现今机器人被运用到磨抛、装配等复杂作业中,需要在环境或工件有力交互的情况下运行,若仅考虑机器人的位置控制可能会由于接触力作用引起末端力矩超限或工件损坏。故在此类接触式作业中,机器人除了常规的位置控制外还需根据接触力大小,调整机器人末端位姿以顺应外力,实现机器人的柔顺控制[1]。

目前机器人的柔顺控制方法主要有力/位混合控制、阻抗控制和导纳控制。OTT等[2]提出了一种统一阻抗导纳的混合切换控制方法,在线性系统动力学仿真中有良好的控制效果;潘立等[3]设计了一种动态柔顺控制方法,可在两种不同作业模式下来回切换,且有良好的柔顺性。然而混合控制须进行模式切换,增加了系统的复杂性,并且实际情况中的切换条件难以建立。ALBU等[4]提出了基于无源性的机器人阻抗控制方法,将位置控制扩展到关节空间中,满足一定的鲁棒性;许家忠等[5]设计了自适应阻抗控制器,实现了复合材料打磨过程中的柔顺控制。阻抗控制本身对模型精度要求很高,但是控制精度并不高。而导纳控制适用于高刚度环境并能有效补偿未建模摩擦,有较好的灵活性且实现方式简单,控制精度较高。SHARKAWY等[6]提出了一种基于在线JRNN训练的变导纳控制方法,实现了人-机协同任务中虚拟阻尼和虚拟惯性系数的优化调整;YANG等[7]提出了一种基于神经网络的无传感器的导纳控制方法,引入误差变换算法,使系统更加稳定。但是基于神经网络的导纳控制方法现仍处于仿真研究阶段,尚不能成熟地运用到实际生产中。REYES等[8]设计了一种改进的滑模控制器内环和导纳控制外环,实现机器人沿期望轨迹的柔顺性,保证了良好的状态跟踪性能和鲁棒性;叶伯生等[9]设计了基于动力学模型的导纳控制器,并在位置控制中加入计算力矩前馈,实现了高刚度环境下机器人的柔顺控制。由此,导纳控制因其对外力的良好交互作用以及良好的控制精度而逐渐引起学者们的高度关注。

针对机器人非线性、强耦合系统中需要线性化或变参数处理问题,并考虑机器人关节摩擦难以精确测量和建模,本文提出一种基于反演滑模的导纳控制算法,以提高机器人柔顺控制性能。并通过实验仿真,验证了所提方法的有效性。

1 机器人数学模型

1.1 运动学模型

采用D-H标准参数法以六轴机器人各轴为原点建立坐标系,再将各轴间的坐标系经过转换可得齐次变换矩阵。转换过程在此不做过多介绍,直接给出变换矩阵:

(1)

式中,i=1,2,…,6;c和s分别表示cos和sin;qi和αi-1分别表示第i个关节角度和第i-1个连杆的转角;di表示连杆的偏距;ai表示连杆的长度。

将各连杆的参数带入式(1)中,将6个齐次变换矩阵相乘可得六轴机器人末端位姿相对于机器人基座标的齐次变换矩阵:

(2)

1.2 动力学模型

考虑机器人系统建模的不确定性和外部干扰的影响,采用牛顿-欧拉递推求解法建立n自由度机器人动力学模型为:

(3)

为简化文中控制器的设计,对机器人动力学模型做如下假设:

假设1:对于任意q,矩阵M(q)是对称正定且有界的,即存在任意两个大于0的数m1和m2且m1

2 控制器设计

针对上述关节空间的动力学模型设计自适应反演滑模控制器,提高机器人轨迹跟踪的精度和效率;设计导纳控制器,在运动中发生碰撞之后,能根据碰撞力计算出适应此力的运动轨迹。其系统控制结构如图1所示。

图1 自适应反演滑模导纳控制结构图

2.1 导纳控制器

导纳控制本质是基于内环位置控制和外环力控制的一种控制策略。根据当前的受力情况以及目标导纳模型,决定输出的运动状态。当机器人末端感知到环境外力时,由导纳控制器产生期望的跟踪轨迹,通过调整机器人末端的位置和速度,实现对机器人末端位置的柔顺控制,避免机器人在接触中由于力过大而导致力矩超限或执行器损坏等问题。因此,设计导纳控制器如式(4)所示。

(4)

式中,Md、Dd和Kd分别表示惯性、阻尼和刚度系数,均为非奇异实数矩阵;x0为参考位置;xd为期望位置;Fext为环境外力。可通过调节Md、Dd和Kd三个参数,来改变系统的导纳特性,使之得到一个最优的控制性能。为了简化后续运算,将式(4)进行拉氏变换,整理可得期望的位置表示为:

(5)

如式(5)所示,导纳控制器可等价于理想的“质量-弹簧-阻尼”二阶系统。在图1中,根据机器人受到的外力Fext,通过二阶导纳模型,生成一个位置调整量x,用于修正初始参考位置x0,得到新的位置量xd,也即适应外力的期望位置;再通过逆动力学转换得到关节角度qd,以此进行位置控制。简而言之,导纳控制就是把作用在机器人上的外界接触力信息转换为位置偏差,从而改变机器人的期望位置,以适应外界接触力,并且此过程对机器人的动力学模型精度要求不高,大大提高了导纳控制应用的灵活性和广泛性。

2.2 自适应反演滑模控制器

滑模控制无需精确的数学模型,并对有界扰动具有很强的鲁棒性;反演法通过反向递推的方法,设计Lyapunov函数,从而取得控制律,使系统设计更加结构化,并且可利用系统有利的非线性项去控制不利非线性项,得到更好的鲁棒性。因此将两者结合设计控制器。为便于设计自适应反演滑模控制器,首先给出如下假设:

假设1:期望输入qd及二阶导数存在且有界;

定义系统的跟踪误差:

e1=q-qd

(6)

(7)

式中,α1是需设计的虚拟控制量,可定义为:

(8)

分别对式(6)和式(7)进行求导,并将式(3)代入整理可得:

(9)

(10)

定义线性滑模面如下:

s=ke1+e2,k>0

(11)

故有:

(12)

设计控制律如下:

τ=τeq+τd

(13)

(14)

(15)

(16)

式中,r为任意正常数。

设计正定的Lyapunov函数,对上述控制器进行稳定性判断。

(17)

对V求导,并将式(9)、式(12)和式(13)带入可得:

(18)

取k0=2min{k1,(k1-k),h},带入式(18)可得:

(19)

可得,在机器人系统内跟踪误差和干扰估计误差均是在有限时间内指数趋近于0,所以系统指数稳定。因此,各控制参数可以快速的趋近于期望值,大大提高机器人的时效性。

在切换控制项中,为了减少符号函数sgn(s)对控制信号抖振的影响,采用双曲正切函数tanh(s/γ)替换符号函数,提高控制器的精度和稳定性。则有:

(20)

式中,γ为滑模面的边界层厚度。

3 仿真实验与分析

图2 IRB-2600型机器人模型

为了验证控制策略的有效性,依照D-H标准参数法,再基于MATLAB中Robotics Toolbox建立的六自由度机器人模型,如图2所示。

利用所设计自适应反演滑模控制器和导纳控制器,通过MATLAB搭建如图1所示控制系统的仿真模型,令相应的控制参数分别为:k=140,k1=3,l=6,r=3,Md=0.001,Dd=0.1,Kd=5,γ=0.01,机器人运动的初始值均给定0值。

在操作空间中,当机器人正常工作且无环境外力影响时,只进行高精准的轨迹跟踪运动,给定末端位置3个方向上的期望轨迹分别为:x轴x=0.6+0.3*sin(π*t)、y轴y=0.6+0.06*t和z轴z=0.6+0.3*cos(π*t),机器人3个方向运行轨迹如图3所示。

图3 X、Y、Z方向上的轨迹跟踪

由图3可知,当机器人与环境没有任何接触时,3个方向均能在0.3 s内较好的跟踪到期望轨迹,在后续跟踪中存在一定的误差,但都满足允许的范围。文献[12]提供的算法在操作空间中前期跟踪有一定的波动,跟踪误差相比于本文所提出的控制方法较大,在1 s以后才能稳定跟踪期望轨迹。故本文所提方法大大提高了跟踪的快速性。

当机器人在运行中有外力接触时,给定x、y两个方向的期望轨迹同上,假设在1~2 s受到F=3 N的锯齿形外力,则末端运动如图4a~图4b所示。

图4 x、y方向受到外力时机器人的运动状态

图4a为机器人在x方向的运行轨迹示意图。由图可知,当受到锯齿波外力的冲击后,若没有导纳控制作用于机器人,其运动将随外力快速偏离期望值,产生较大的运动波动并出现尖峰型的轨迹,可能会对机器人或末端工具造成损坏。而通过导纳控制调整后,机器人运行更为平滑,能够很好的顺应外力,有效地避免了外力对机器人或末端工具的影响。图4b为y方向的运行轨迹示意图,结果同图4a相似,不再做详细解释。

当机器人在xoz平面上以(0.6,0.6)为圆心,0.3为半径做圆周运动,在1.2 s受到F=2 N的方波形外力并作用0.6 s,其操作空间中机器人的运动如图5所示。

图5 导纳控制调整下的机器人运动轨迹

由图5可知,黑色曲线为无外力作用的理想运动轨迹,虚线为受外力之后的实际轨迹。由图中可知,当机器人受到外力作用后,经导纳控制器计算出新的轨迹,并沿着此轨迹运行,到外力消失后又能平稳的按原轨迹继续运行。上述过程说明,当机器人受到环境外力时,由于采用了本文基于反演滑模算法的导纳控制,使得机器人在外力影响下导纳控制结果明显,能较好地达到末端柔顺的效果。

由于导纳控制算法是反馈外力信号经过导纳控制算法输出一个位置修正信号,因此环境外力作用于机器人末端时可以计算出新的轨迹,再将初始轨迹与新的轨迹做差,输出此偏差可间接性的得到上述实验中导纳控制器的性能。

图6 末端轨迹的误差

从图6可知,在1.2 s受到外力后,尽管很短时间内有些波动,但还是能快速的跟踪外力信息(Kd=5的曲线)。并且快速计算出新的轨迹,改变机器人的运动状态,能够很好的顺应外力的变化。为验证各个参数对控制器的影响,先增大Kd,外力产生的位置误差减小,但是此过程需要更大力矩;再依次改变Md和Dd,跟踪速度变慢,稳定性也降低。因此,通过试凑法当控制参数采用文中给定值时,所设计的导纳控制性能更优。

4 结束语

为了实现机器人末端的柔顺控制,提出了一种基于自适应反演滑模算法的导纳控制方法,当没有环境外力时,针对系统不确定性和外部干扰等未知参数,设计了自适应反演滑模控制器,自适应律是依照鲁棒滑模控制的优点所设计,收敛速度快,并且采用双曲正切函数代替符号函数,削弱了系统的抖振,实现了机器人系统高精准的位置控制;当有环境外力影响时,通过导纳控制算法将外力信息转化为位置信息进行研究,在机器人末端产生位置误差,顺应外力作用的影响,从而实现柔顺运动状态。最后,通过MATLAB仿真,结果表明了系统具有良好的鲁棒性和稳定性,验证了所提方法的有效性。

猜你喜欢

外力滑模反演
反演对称变换在解决平面几何问题中的应用
带低正则外力项的分数次阻尼波方程的长时间行为
基于组合滑模控制的绝对重力仪两级主动减振设计
PMSM调速系统的自学习滑模控制
并网逆变器逆系统自学习滑模抗扰控制
基于低频软约束的叠前AVA稀疏层反演
基于自适应遗传算法的CSAMT一维反演
常见运动创伤的简单处理方法(二)
叠前同步反演在港中油田的应用
四列氮氢气往复压缩机外力及其平衡的分析与计算