本发明属于机器人控制技术领域,涉及一种柔性双关节机械臂命令滤波反步控制方法。
背景技术:
柔性机械臂有着耗电小,成本低,高灵活性和低阻尼等优点,在空间机器人、微外科手术操作和处理复杂精密仪器等重要领域得到了广泛的应用。但是柔性会导致结构的振动,这种振动主要是由于电机转矩波动、电磁效应和加工装配工艺等原因,因此在柔性机械臂实现跟踪时采用何种控制方法是非常有必要的。随着柔性关节机械臂数学模型的建立,各种各样的控制方法都被用于对其控制中。对于刚性机械臂的控制方法的研究已经趋于成熟,并且已经大量的用于工程实际中。但现有柔性机械臂的控制方法还存在精度和稳定性差的问题,严重影响了柔性机械臂应用。
技术实现要素:
本发明的目的是提供一种柔性双关节机械臂命令滤波反步控制方法,解决了双关节柔性机械臂控制的精度差的问题。
本发明所采用的技术方案是,一种柔性双关节机械臂命令滤波反步控制方法,具体按照以下步骤实施:
步骤1,建立柔性双关节机械臂控制系统数学模型,定义命令滤波器;
步骤2,将步骤1定义的命令滤波器引入命令滤波误差补偿机制;
步骤3,利用步骤2得到的滤波误差补偿机制建立误差子系统;
步骤4,利用步骤3得到的系统误差和反步法推导经过滤波器后的虚拟控制函数α1,α2,α3和最终控制函数τ,计算lyapunov函数值,当lyapunov函数值都不大于0时,完成柔性双关节命令滤波反步控制。
本发明的特点还在于,
步骤1中建立柔性双关节机械臂控制系统数学模型具体按照以下步骤实施:
步骤1.1,建立柔性双关节机械臂动力学模型如下:
式中:q和θ分别为连杆转动的角位移和驱动电动机经过减速比后的角位移,q∈rn,θ∈rn;m(q)为连杆的惯性矩阵;
步骤1.2,利用步骤1.1的柔性双关节机械臂动力学模型,建立柔性双关节机械臂系统动力学模型的状态方程形式如下:
步骤1中定义命令滤波器具体按照以下实施:
其中,
步骤2的具体按照以下步骤实施:
步骤2.1,设i=1,2,3的αi(t)∈rn和αic∈rn分别为虚拟控制函数和滤波后虚拟控制函数输入,定义跟踪误差如下:
步骤2.2,根据步骤2.1定义误差补偿变量为:
其中,αi(i=1,2,3)为虚拟控制函数,
步骤3的具体按按照以下实施:
建立误差子系统如下式所示:
步骤4的具体按以下步骤实施:
步骤4.1,对步骤3定义的第1个补偿后的跟踪误差r1求导可得:
选取第1个误差子系统的lyapunov函数为
将α1视为该子系统的虚拟控制输入,设计虚拟控制率函数为:
其中:k1>0为待设计的参数。
公式(8)可转换为:
步骤4.2,根据步骤4.1,对步骤3定义的第2个补偿后的跟踪误差求导可得:
选取第2个误差子系统的lyapunov函数为
将α2视为该子系统的虚拟控制输入,设计虚拟控制率函数为:
公式(12)可转换为:
步骤4.3,根据步骤4.2,对步骤3定义的第3个补偿后的跟踪误差求导可得:
选取第3个误差子系统的lyapunov函数为
将α3视为该子系统的虚拟控制输入,设计虚拟控制函数为:
其中k3>0为待设计的参数
公式(16)可转换为:
步骤4.4,根据步骤4.3,对步骤3定义的第4个补偿后的跟踪误差求导可得:
选取第4个误差子系统的lyapunov函数为
将τ视为该子系统的最终控制函数,取最终控制函数:
其中k4>0为待设计参数,j为关节转子转动惯量的对角矩阵。
公式(20)可转换为:
当步骤4.1、步骤4.2、步骤4.3、步骤4.4计算的lyapunov函数均不大于0时,完成柔性双关节命令滤波反步控制。
本发明的有益效果是,本发明的目的是提供一种柔性双关节机械臂命令滤波反步控制方法,解决了双关节柔性机械臂控制的精度差的问题。避免了对虚拟控制函数的多阶求导所导致的计算膨胀的问题。滤波误差补偿机制,保证闭环跟踪误差系统的稳定性。
附图说明
图1是本发明一种柔性双关节机械臂命令滤波反步控制方法的双关节柔性机械臂示意图;
图2是本发明一种柔性双关节机械臂命令滤波反步控制方法中实施算例中的双关节轨迹跟踪效果图;
图3是本发明一种柔性双关节机械臂命令滤波反步控制方法中实施算例中的关节1力矩控制响应图;
图4是本发明一种柔性双关节机械臂命令滤波反步控制方法中实施例中的关节2力矩控制响应图;
图5是本发明一种柔性双关节机械臂命令滤波反步控制方法中实施例中的关节1误差曲线图;
图6是本发明一种柔性双关节机械臂命令滤波反步控制方法中实施例中的关节2误差曲线图。
具体实施方式
下面结合附图和具体实施方式对本发明进行详细说明。
本发明的目的是提供一种柔性双关节机械臂命令滤波反步控制方法,具体按照以下步骤实施:
步骤1,建立柔性双关节机械臂控制系统数学模型,定义命令滤波器;
步骤1中建立柔性双关节机械臂控制系统数学模型具体按照以下步骤实施:
步骤1.1,建立柔性双关节机械臂动力学模型如下:
式中:q和θ分别为连杆转动的角位移和驱动电动机经过减速比后的角位移,q∈rn,θ∈rn;m(q)为连杆的惯性矩阵;
步骤1.2,利用步骤1.1的柔性双关节机械臂动力学模型,建立柔性双关节机械臂系统动力学模型的状态方程形式如下:
步骤1中定义命令滤波器具体按照以下实施:
其中,
步骤2,将步骤1定义的命令滤波器引入命令滤波误差补偿机制;减少滤波误差;
步骤2的具体按照以下步骤实施:
步骤2.1,设i=1,2,3的αi(t)∈rn和αic∈rn分别为虚拟控制函数和滤波后虚拟控制函数输入,定义跟踪误差如下:
骤2.2,由于使用命令滤波器会产生滤波误差,影响系统性能,本文通过引入误差补偿机制来减少滤波误差
其中,αi(i=1,2,3)为虚拟控制函数,
步骤3,利用步骤2得到的滤波误差补偿机制建立误差子系统;
步骤3的具体按按照以下实施:
建立误差子系统如下式所示:
根据前述控制目标,在后续的设计中将保证r1、r2、r3、r4尽可能小,同时保证状态变量q,θ有界、稳定。
步骤4,利用步骤3得到的系统误差和反步法推导经过滤波器后的虚拟控制函数α1,α2,α3和最终控制函数τ,计算lyapunov函数值,当lyapunov函数值都不大于0时,完成柔性双关节命令滤波反步控制。
步骤4的具体按以下步骤实施:
步骤4.1,对步骤3定义的第1个补偿后的跟踪误差r1求导可得:
选取第1个误差子系统的lyapunov函数为
将α1视为该子系统的虚拟控制输入,设计虚拟控制率函数为:
其中:k1>0为待设计的参数。
公式(8)可转换为:
当r2为零矩阵时,
步骤4.2,根据步骤4.1,对步骤3定义的第2个补偿后的跟踪误差求导可得:
选取第2个误差子系统的lyapunov函数为
将α2视为该子系统的虚拟控制输入,设计虚拟控制率函数为:
公式(12)可转换为:
当r3为零矩阵时,
步骤4.3,根据步骤4.2,对步骤3定义的第3个补偿后的跟踪误差求导可得:
选取第3个误差子系统的lyapunov函数为
将α3视为该子系统的虚拟控制输入,设计虚拟控制函数为:
其中k3>0为待设计的参数
公式(16)可转换为:
当r4为零矩阵时,
步骤4.4,根据步骤4.3,对步骤3定义的第4个补偿后的跟踪误差求导可得:
选取第4个误差子系统的lyapunov函数为
将τ视为该子系统的最终控制函数,取最终控制函数:
其中k4>0为待设计参数,j为关节转子转动惯量的对角矩阵。
公式(20)可转换为:
当步骤4.1、步骤4.2、步骤4.3、步骤4.4计算的lyapunov函数均不大于0时,完成柔性双关节命令滤波反步控制。
结合步骤3得到的误差系统,利用反步法推导经过滤波器后的虚拟控制函数α1,α2,α3和最终控制函数τ,将虚拟控制函数α1,α2,α3和最终控制函数τ,再通过lyapunov稳定性理论证明所设计的控制方法能保证系统的稳定性,实现柔性双关节命令滤波反步控制。
实施例
利用matlab/simulink环境进行仿真分析,柔性双关节机械臂命令滤波反步控制方法参数选择如下:jm1=0.0000095;jm2=0.0000095;jm3=0.000003;jm4=0.000003;mr1=0.146;mr2=0.146;mr3=0.042;mr4=0.042;m11=4.3;m12=7.73;m14=2.01;12=0.53;13=0.39;14=0.1;d2=0.25;d3=0.17;d4=0.03;k1=500;k2=500;k3=500;k4=500;n=160;g=9.8。
图1为本发明的双关节柔性机械臂示意图;示意图有两个关节两个弹簧,每个关节采用弹簧连接。图中的两个关节分别为关节1和关节2。
图2中,实线表示本发明一种柔性双关节机械臂命令滤波反步控制方法的期望轨迹图,点实线实线表示关节1的轨迹跟踪图,虚线表示关节2的轨迹跟踪图。从图中可以看出关节1与关节2在开始跟踪时有轻微的震荡,在0.5秒后能够精准的跟踪期望轨迹。
图3和图4为本发明的双关节力矩控制响应图,图3中关节1力矩控制响应图比图4中关节2的力矩控制响应图小,从图3和图4可以看出本发明一种柔性双关节机械臂命令滤波反步控制方法在较短的时间内达到稳定,震荡幅值较小,系统的稳定性大幅度提高。
图5和图6为本发明的双关节误差曲线图,从图5中可以看出关节1的误差相比图6中关节2的误差较小,起始关节1与关节2有些许误差,但在0.2秒后误差逐渐平稳,接近于0。相比其他控制方法本发明所提出的一种柔性双关节机械臂命令滤波反步控制方法通过引入滤波误差补偿机制,来消除滤波误差对控制性能的影响,并且根据lyapunov稳定性理论分析了系统的稳定性。