APP下载

全向移动机器人自抗扰解耦控制

2020-10-21罗春阳谢小宇李建永董绪斌高兴华

关键词:移动机器人扰动耦合

罗春阳,谢小宇,李建永,董绪斌,高兴华

(北华大学机械工程学院,吉林 吉林 132021)

全向移动机器人是一种拥有完整约束的移动机器人,一般采用Mecanum轮或Omni轮作为全向移动装置,通过控制全向轮的不同转速组合,实现平面内3个自由度的独立控制.全向移动底盘能够实现平面内任意方向的平移、零半径转弯,运动高效灵活,适合机动要求较高、空间狭窄的应用场合,在足球机器人、全向智能轮椅、全向移动护理机器人、全向下肢康复机器人等领域得到了广泛应用[1-3].全向机器人各电机控制回路间相互耦合,具有非线性、多变量、存在内外随机扰动等特点,使建立系统模型及设计控制器变得复杂.为了克服传统PID控制的缺点[4],人们设计了模糊PID、神经网络等控制算法[5-7]并应用于全向移动机器人,取得了良好的控制效果.然而,这些方法存在大量迭代计算,使得控制算法设计变得更加复杂,并且不能消除系统内外随机扰动及各控制回路强耦合带来的影响.

自抗扰控制器(Active Disturbance Rejection Controller,ADRC)不仅继承了传统PID控制律的模型无关性以及参数易于调整的特性,而且具有自身天然的解耦性,能够估计并主动抑制未知扰动给系统造成的影响,显著提高整个系统的扰动适应性,简化控制器设计[8-9].本文以8个Mecanum轮的全向移动机器人为控制对象,分析其数学模型,针对系统的内外随机扰动及耦合设计电机ADRC解耦控制策略,以提高全向机器人运动控制的稳定性及抗扰性.

1 系统模型分析

在建立数学模型之前需做几个假设:1)全向移动机器人的重心与几何中心重合;2)机器人仅在二维刚体平面上运动;3)机器人的全向轮与地面间的摩擦力较大,不发生滑动.

本文研究的八轮全向移动机器人共有8个Mecanum轮,分别安装在机器人底盘两侧,每个轮子的位置和姿态排列见图1.以移动机器人的中心位置O点为原点建立坐标系Σ0,正前方为x轴正方向,正左方为y轴正方向.设1、2、7、8号Mecanum轮至原点O的纵向距离均为L1,3、4、5、6号Mecanum轮至原点O的纵向距离均为L2,Mecanum轮至原点O的横向距离均为L,每个Mecanum轮的轮毂轴线和小辊子轴线的夹角均为α,每个Mecanum轮的轮毂半径均为Rw.

vω=JOvO,

其中:vO=[vx,vy,ωz]T∈3为机器人中心点O在坐标系ΣO中的速度;vω=[v1,v2,…,v8]T∈8为各个轮子的线速度;JO为机器人逆雅克比矩阵:

本文采用Lagrange方法分析机器人动力学模型.在有势力和耗散力作用下的Lagrange方程为

(1)

机器人动能主要包括因机器人在x、y方向上具有速度而存在的动能、全向移动机器人自身围绕中心点O旋转的动能、8个Mecanum轮围绕其轴心转动的动能.其中,忽略了正在与地面接触或刚与地面分离的若干个Mecanum轮小辊子的动能及其他可以忽略不计的动能.系统摩擦主要为每个轮子与地面间的摩擦,忽略系统内部摩擦,于是可得系统的Lagrange函数以及耗散函数R:

(2)

(3)

外部广义力即为对电机每个轮子输入的转矩.将式(2)、(3)代入式(1)整理可得:

从表2可知:主要计算参数因不同作者而有不同的选取,同样对三江平原地下水资源量也会因不同作者的计算,而出现不同的数值。

(4)

其中:M1∈8×8为经过计算整理后得到的系数矩阵,因篇幅原因详情略;ω=[ω1,ω2,…,ω8]T∈8;Τw=[Tw1,Tw2, …,Tw8]T∈8,Twi(i=1,2,…,8)为第i个电机经过减速箱后作用到Mecanum轮上的转矩.

建立直流减速电机电枢两端的控制电压Um与Mecanum轮的转速ω、作用在轮子上的转矩Tw之间关系的微分方程:

(5)

式中:Um=[Um1,Um2,…,Um8]T∈8,Umi(i=1,2,…,8)为加载在第i个电机电枢两端的控制电压;Lm为直流电机电枢电感;Rm为电机电枢电阻;Ke为电机的反向电动势常数;KT为直流电机的转矩常数;N为电机减速箱的减速比.

联立式(4)、式(5)并整理可得系统的动力学方程:

(6)

式中:MA、MB、MC∈8×8为经过计算得到的系数矩阵.

由式(6)可知,整个系统中每个轮子的转动状态不仅与其动力电机的控制电压有关,而且其他电机的控制电压也会对其造成一定影响,是强耦合二阶MIMO系统.

2 自抗扰控制器设计

2.1 ADRC基本原理

ADRC由韩京清研究员在1999年正式提出.ADRC把系统动态过程中的不确定性、内部扰动和外部扰动等不同于标准型的部分当作系统的总扰动,通过扩张状态观测器的方式实时估计出系统的总扰动并主动补偿抵消,将非线性、存在未知扰动的系统还原成简单的积分串联型系统,实现了主动抗扰.其主要由跟踪微分器(Tracking Differentiator,TD)、扩张状态观测器(Extended State Observer,ESO)、非线性状态误差反馈控制律(Nonlinear States Error Feedback Control Laws,NLSEF)以及扰动补偿等部分组成.以常见的二阶系统为例,其原理见图2.

2.2 基于ADRC的解耦控制器设计

全向移动机器人系统为三自由度运动系统,其本质输入、输出关系见图3.设计电机控制器对该系统的非线性、耦合特性进行处理即可完成机器人的三自由度控制.利用ADRC的分离性原理,分别设计电机控制器的TD、ESO以及NLSEF部分,最后组合成自抗扰控制器.

将式(6)改写成如下形式:

(7)

可以很容易看出此时虚拟控制量UBi与输出yi=ωi为一一对应关系,即第i个通道的被控输出yi=ωi与虚拟控制量输入UBi之间已经解耦了,消除了系统的“静态耦合”部分,而实际控制量Um只需用Um=MAUB即可计算得出.

考虑系统存在未知扰动作用χ(t),将其作用量扩张成一个额外的状态变量x3,则系统(7)可写成

其中:f为系统“动态耦合”部分以及未知扰动χ(t)对系统的作用量.这个新扩张出来的状态变量x3可以被ESO当作系统内外扰动总和而观测估计出来,很容易通过自抗扰控制器消除.此时系统的“静态耦合”通过引入虚拟控制量UB解耦,“动态耦合”部分被系统补偿而消除,于是整个系统实现了完全解耦.分别设计ADRC的各个部分,二阶TD、二阶NLSEF的状态误差反馈采用最速控制综合函数fhan(x1,x2,r0,h0):

根据“小误差大增益,大误差小增益”的思想,三阶ESO的状态误差反馈选取非线性函数:

整理可得引入虚拟控制量所得的全向移动机器人第i个电机的离散自抗扰解耦控制算法:

式中:h为采样步长;vωi为第i个轮子的期望转速;vi1、vi2(i=1,2,…,8)分别为第i个通道的TD所安排的过渡过程以及该信号的微分;r0为跟踪速度因子;h0为跟踪滤波因子;zi1、zi2、zi3(i=1,2,…,8)分别为第i个通道的ESO观测出的状态变量;β01、β02、β03为状态误差增益;δ为ESO的滤波因子;c为阻尼系数;r1为控制量增益;h1为精度因子.

考虑到非线性ADRC待调参数较多,且其对于参数摄动有很强的适应性,所以本系统采用相同参数8个通道设计ADRC.

3 仿真试验

为了更好地观察本文ADRC解耦算法的效果,采取与经典PID对比的方式,在Simulink中进行对比仿真试验.三自由度速度初始状态均设置为0,三轴同时输入起始时间0.1 s幅值1的阶跃信号.全向移动机器人物理参数见表1,ADRC参数由经验法整定,见表2.

表1 机器人仿真物理参数Tab.1 Physical parameters of robot simulation

表2 自抗扰控制器仿真参数Tab.2 Simulation parameters of ADRC

由于机器人三自由度运动特性不同,所以同一组PID参数的三轴响应曲线差异较大.以x轴速度响应最优为例,通过MATLAB自动调节PID参数:Kp=3.5,Ki=15.2,Kd=0.03,其三自由度输入速度阶跃信号响应见图4.

为了验证系统的扰动适应性,进行扰动下的阶跃响应对比.在系统模型中电机输出扭矩处添加高斯白噪声模块,并设置参数SampleTime为0.5,NoisePower为0.3.扩张观测器的扰动观测解耦后的结果见图5,扰动下三自由度阶跃响应见图6.修改高斯白噪声模块SampleTime参数为0.01,系统的扰动观测及三自由度阶跃响应见图7、图8.

由傅里叶理论可知,任何时域信号均可以表示为不同频率正弦波信号的叠加.扫频信号是频率随时间线性增大的正弦信号,若机器人对输入扫频信号的跟踪性能良好,则可以说明对于任意时域信号及其叠加都能够良好地跟踪,所以有必要进行系统正弦扫频信号响应以验证本文设计的ADRC控制器的跟踪性能.正弦扫频信号由Simulink库中自带的Chirpsignal模块提供,设置初始频率为0.01 Hz,终点频率为1 Hz;高斯白噪声模块参数SampleTime为0.01、NoisePower为0.3、仿真时长为100 s,扰动下扫频信号响应对比见图9,扫频信号响应误差对比见图10.

由图4可以明显看出:与传统经典PID控制器相比,ADRC的三自由度响应曲线几乎相同,均能够快速准确无超调地跟踪给定信号,表明本文设计的控制器能够有效抑制系统内耦合造成的影响.由图5、图7可见:当存在未知随机扰动时,扩张状态观测器能够准确地观测出扰动作用量.由图6、图8可见:PID控制器有一定的低频扰动抑制能力,而高频扰动抑制性能较弱;ADRC在低频、高频扰动作用下均有较好的表现.在高频扰动作用下,x轴阶跃响应进入稳态后ADRC的最大误差为0.07 m/s,而传统PID最大误差达到了0.24 m/s.由图9、图10可见:随着输入信号频率的增加,PID控制器的响应幅值逐渐衰减,相位滞后,x轴最大误差为0.48 m/s,而ADRC控制器则仅有0.17 m/s.由此表明,ADRC在具有良好跟踪性能的同时能够有效抑制未知扰动给系统造成的影响.

仿真结果表明:本文设计的控制器可以很好地抑制全向移动机器人的随机扰动以及耦合性对系统的影响.

4 小 结

本文对基于Mecanum轮的八轮全向移动机器人进行了动力学分析,设计了ADRC解耦控制器.仿真试验表明,经过ADRC解耦的控制器比传统PID控制器具有更强的抗扰能力与鲁棒性.由于受条件与时间限制,本文算法仅通过仿真试验进行了研究,还有待于在实物系统中进行试验验证.

猜你喜欢

移动机器人扰动耦合
基于增强注意力的耦合协同过滤推荐方法
一类五次哈密顿系统在四次扰动下的极限环分支(英文)
移动机器人自主动态避障方法
擎动湾区制高点,耦合前海价值圈!
扰动作用下类岩石三轴蠕变变形特性试验研究
基于粒子滤波的欠驱动移动机器人多目标点跟踪控制
复杂线束在双BCI耦合下的终端响应机理
基于backstepping方法的两轮移动机器人轨迹跟踪控制
带扰动块的细长旋成体背部绕流数值模拟
移动机器人路径规划算法综述