陈 强 顾贤拥 南余荣③ 丁科新 战 猛
(*浙江工业大学信息工程学院 杭州 310023)
(**杭州科技职业技术学院机电工程学院 杭州 311400)
(***一汽解放青岛汽车有限公司 青岛 266217)
随着科技的进步和发展,机械臂在工业、国防、医疗卫生等领域发挥着重要作用[1-4]。与传统刚性机械臂不同,柔性关节机械臂在关节处使用谐波齿轮减速器和力矩传感器等柔性器件,会带来柔性振动、不确定性和未知干扰等问题进而影响控制系统的稳定性和精度[5-6]。文献[7]针对柔性关节机械臂轨迹跟踪控制问题,基于奇异摄动理论,将柔性关节模型分解成快慢两个子系统,采用位置和速度反馈信号设计控制器,保证机械臂的轨迹跟踪性能。文献[8]提出一种基于反演法的柔性机械臂串级控制方法,所设计控制器不需要使用关节加速度信号,且可以保证机械臂跟踪误差指数收敛到零。
机械臂系统本身存在模型不确定及外部干扰等问题,从而影响控制系统性能,甚至导致系统不稳定[9]。文献[10]提出一种基于扩张状态观测器的反馈线性化控制方法。通过扩张状态观测器估计系统不确定和外部干扰,在此基础上设计反馈线性化控制器,实现柔性关节机械臂对目标轨迹的精确跟踪。文献[11]针对带有模型不确定和外部干扰的柔性关节机械臂,提出一种基于递归Elman 神经网络的自适应动态面控制方法。通过神经网络在线观测和补偿模型不确定及外部干扰,设计神经网络权值自适应律和动态面控制器,保证机械臂位置跟踪误差和权值估计误差最终收敛到有界紧集内。文献[12]构造一种未知系统动态观测器,用于补偿机械臂系统的未知动态和外部干扰。设计滑模控制器,保证机械臂位置跟踪误差和观测器估计误差收敛至平衡点附近。
上述文献多关注机械臂的稳态跟踪精度,对瞬态响应问题则考虑较少。针对控制系统瞬态响应问题,目前主要有障碍李雅普诺夫函数[13-15]、预设性能控制[16-18]和funnel 控制[19-22]等方法。其中,funnel 控制是根据高频增益的理念,采用可调节的时变比例增益控制一类一阶或二阶系统,提高系统的瞬态性能和稳态性能[19]。文献[20]针对一类多输入多输出严格反馈系统,提出一种基于模糊神经网络的funnel 动态面控制方法。然而,其funnel 变量在e=0 时存在不可微问题。文献[21]在此基础上构造一种新型funnel 变量。但当初始误差较大且接近误差边界时,该funnel 变量会导致较大的初始控制输出。文献[22]针对一类非仿射非线性系统,采用模糊逻辑系统逼近未知函数,并设计有限时间funnel控制器,保证闭环系统所有信号是半全局有限时间有界,且跟踪误差约束在设定的边界内。
基于以上讨论,本文针对带有模型不确定和外部干扰的柔性关节机械臂轨迹跟踪问题,提出一种基于未知系统动态估计器的funnel 控制方法。首先,通过低通滤波器设计未知系统动态估计器,用于估计模型不确定和外部干扰。该估计器结构简单,只需调节一个参数。为增强系统的瞬态性能,设计新型funnel 变量,通过构造指数衰减的约束边界,使得系统有较好的瞬态性能,并能够满足系统的稳态性能要求。其次,设计跟踪微分器逼近虚拟控制律导数,从而避免反演法的“微分爆炸”问题。最后,设计控制器保证机械臂位置跟踪误差严格约束在预先设定的边界内。
柔性关节机械臂模型如图1 所示,其动力学方程可表示为[23]
图1 柔性关节机械臂模型
其中M、g 和L 分别为机械臂质量、重力加速度和机械臂长度,q 和θ 分别为机械臂连杆和电机角度,I和J 分别为连杆和电机的惯量,K 为弹性系数,τ 为控制力矩,d1和d2是包含模型不确定和外部干扰的未知系统动态,表达式为
其中,da和db分别为非匹配和匹配干扰。
定义系统状态变量x1=q,x2=,x3=θ,x4=,则式(1)可改写为
其中,y 为系统输出。为便于控制器设计,对系统式(1)做如下假设:
假设1[24]di及其导数有界,即:。
本文控制目标为针对带有模型不确定和外部干扰的柔性关节机械臂系统式(3),设计funnel 控制器τ,使得机械臂输出y 快速准确跟踪连续有界的期望轨迹yd。
本节针对包含模型不确定和外部干扰的柔性关节机械臂系统式(3),设计一种基于滤波变换的未知系统动态估计器,用于估计d1和d2。
令a=x1-x3,b=sin(x1)。定义x2f、x4f、af、bf和τf为x2、x4、a、b 和τ 的滤波变量,分别满足
其中,k>0 表示滤波常数。
注1该估计器结构简单,只需要调节一个滤波参数k。当k 值设置过小时,估计器估计误差较小,但会导致估计器对于噪声过于敏感。而当k 值设置过大时,会造成估计器相位滞后。因此需要选取一个合适的k 值,一般选择较小的一个常数。
本节中,针对包含模型不确定和外部干扰的柔性关节机械臂系统式(3),结合未知系统动态估计器,设计funnel 控制器,提高系统的轨迹跟踪性能。
定义机械臂跟踪误差为
其中,yd是期望轨迹。
对e 求导可得:
设计如下形式的funnel 变量:
其中,Fφ(t)是预设性能函数,表达式为
其中,F0为Fφ的初始值,F∞为t→∞时Fφ的稳态值,a0表示Fφ收敛速度,F0>F∞>0,a0>0,误差初始值满足| e(0) | 对式(20)求导可得: 注2由式(20)和式(22)可以看出,本文设计的funnel 变量可以避免在e=0 时存在的不可微问题。文献[21] 中,funnel 变量的定义为z1=,在初始误差非常大且接近误差边界时,funnel 变量由于分母平方后变得更小,与本文funnel 变量相比其初始控制力矩较大。 注3设计预设性能函数对跟踪误差进行限制,使其能时刻保持在限定的边界范围之内。为提高瞬态性能,预设性能函数Fφ(t)为指数衰减函数,其中参数F0根据初始误差| e(0) | 的大小设置,需满足| e(0) | 为使柔性关节机械臂系统的输出y 能够快速准确跟踪期望轨迹yd,基于反演法设计funnel 控制器,具体设计步骤如下。 步骤1构造李雅普诺夫函数V1,表达式为 步骤2构造李雅普诺夫函数V2为 步骤3构造李雅普诺夫函数V3为 步骤4构造李雅普诺夫函数V4为 设计如下形式的跟踪微分器: 注4通过式(32)、(40)和(48)逼近,不用对虚拟控制律αi求导,从而避免反演法的“微分爆炸”问题。文献[27]讨论了跟踪微分器的收敛性问题,即存在一个正常数ωi,满足: 其中,Ttd是跟踪微分器的调节时间。 注5由式(26)可以看出,性能函数Fφ>0,且分母不为0。此外,中也不存在分母为0 的情况,因此α1和表达式中均不存在奇异值问题。 引理3[28]对于初始条件有界的系统,若存在一个C1连续且正定的Lyapunov 函数V(x)满足‖κ1‖≤V(x)≤‖κ2‖,如≤-ρV(x) +γ,其中κ1,κ2:Rn→R 是K 类函数且ρ、γ 为正常数,则系统的解x(t)一致最终有界。 定理2考虑柔性关节机械臂系统式(1),在虚拟控制律式(26)、(33)、(41)和控制器式(49)作用下,所有闭环信号能够达到一致最终有界,且跟踪误差可被约束在边界(-Fφ,Fφ)以内。 证明:构造李雅普诺夫函数为 由式(64)可知,系统跟踪误差e 约束在边界(-Fφ,Fφ)以内,证毕。 注6在本文提出控制方法中,参数F0、F∞和a0需要根据约束性能要求设置且保证0 本节中,为了更好地体现出本文提出控制方法的有效性和优越性,对以下3 种控制方法进行仿真对比。 M1:本文提出的基于未知系统动态估计器的funnel 控制方法,其中虚拟控制律表达式为式(26)、(33)和(41),控制器表达式为式(49)。 M2:文献[21]中的funnel 控制方法,其中虚拟控制律和控制器分别设计为 M3:文献[8]中的反步控制方法,其中虚拟控制律和控制器分别设计为 为保证对比的公平性,3 种方法的系统参数与控制器参数均保持一致。其中,系统参数设置为MgL=5,I=1,J=1,K=40,未知系统动态设置为 仿真实例1:期望轨迹设置为yd=0.5sin(t),系统初始值设置为x1(0)=0.4,xj(0)=0(j=2,3,4),虚拟控制律和控制器增益参数设置为k1=1.4,k2=5,k3=25,k4=15,滤波常数设置为k=0.01,跟踪参数设置为ri=1(i=1,2,3),预设性能函数设置为Fφ=+0.05。 仿真效果图如图2~4 所示,图2 和图3 分别为柔性关节机械臂关节角位置跟踪及跟踪误差效果图。由图2 可以看出,3 种控制方法均可以跟踪上期望轨迹。由图3 可以看出,相较于其他方法,本文所提出的M1 方法有更好的瞬态、稳态性能和鲁棒性。此外,M3 方法的跟踪误差会越过边界Fφ。图4为控制器输出效果图,可以看出3 种方法的控制输出接近。未知系统动态估计器式(12)的估计效果如图5 和图6 所示,可以看出估计器能够准确估计模型不确定和外部干扰。 图2 关节角位置跟踪 图3 关节角位置跟踪误差 图4 控制器输出 图5 未知系统动态d1 估计 图6 未知系统动态d2 估计 为了比较3 种控制方法的跟踪性能,表1 给出以下性能指标。其中,IAE=∫| e(t) | dt,表示系统跟踪性能。ISDE=∫(e(t) -e0)2dt,表示跟踪误差的平滑度,其中e0表示跟踪误差的平均值。IAU=∫| u(t) | dt,反映控制力矩的整体大小。 由表1 可以看出,本文所提出的M1 方法的IAE、ISDE 和IAU 3 种性能指标最小,表明M1 方法具有较好的跟踪性能,且整体的控制力矩较小。 表1 3 种控制方法性能指标 仿真实例2:为了进一步对比3 种控制方法的瞬态性能,选择阶跃信号作为期望轨迹。系统初始状态设置为x1(0)=0,xj(0)=0(j=2,3,4),虚拟控制律和控制器增益参数设置为k1=1.4,k2=6,k3=25,k4=10,滤波常数设置为k=0.01,跟踪参数设置为ri=1 (i=1,2,3),预设性能函数设置为Fφ=+0.05。 图7~图9 分别描述了柔性关节机械臂关节角位置跟踪性能、角位置跟踪误差以及控制器输出信号。由图7 可以看出,与M2 和M3 方法相比,本文提出的M1方法能够保证较好的瞬态性能。如图8所示,M3 方法的跟踪误差会越过边界Fφ,M1 和M2方法的跟踪误差则始终约束在边界内,且能够通过预先设定Fφ的参数,保证机械臂具有良好的瞬态和稳态跟踪性能。 图7 关节角位置跟踪 图8 关节角位置跟踪误差 图9 控制器输出 综上,相较于M2 和M3 方法,本文提出的M1方法能够保证系统有更好的瞬态、稳态性能及鲁棒性,实现柔性关节机械臂系统输出对期望轨迹的快速准确跟踪。 本文针对带有模型不确定和外部干扰的柔性关节机械臂系统,提出一种基于未知系统动态估计器的funnel 控制方法。为估计模型不确定和外部干扰,设计基于低通滤波器的未知系统动态估计器,提高系统鲁棒性。同时,设计新型funnel 变量,构造指数衰减的预设性能函数,通过预先设置性能函数的相关参数,保证系统输出的瞬态性能和稳态性能要求。最后,设计控制器实现柔性关节机械臂系统输出对期望轨迹的快速准确跟踪,并通过对比仿真结果验证了该方法的有效性。后续研究工作的重点是在机械臂实际系统中验证所提控制方法的有效性。3.2 控制器设计
4 稳定性证明
5 仿真验证
6 结论