王会明,张 扬,王雪闯
(重庆邮电大学复杂系统与仿生控制重庆市重点实验室,重庆 400065)
当前移动机器人已被广泛地应用于航天航空、机场服务、仓储物流等各种重要领域,轨迹跟踪问题一直是移动机器人控制研究的热点之一[1-3].为了让移动机器人达到高精度的跟踪目的,学者们提出了很多有效的控制方法,如,反步法控制[4]、神经网络控制[5-6]、滑模控制[7-8]、自适应控制[9]等.然而上面提到的这些控制算法都是建立在“纯滚动无滑动”理想条件下的,并没有考虑实际运行中扰动对移动机器人控制性能的影响.因此当移动机器人遭受各种严重扰动时,将会不可避免地影响其控制性能[10].
为了解决上述存在的问题,文献[11]针对车轮存在纵向滑动,提出了一种自适应非线性反馈控制器,以补偿扰动影响实现了轨迹跟踪的目的.文献[12]提出了一种级联的控制器结构,解决了在有界外扰和参数不确定性条件下的轮式移动机器人轨迹跟踪问题,并且通过仿真验证了所提控制方法的鲁棒性和有效性.文献[13]讨论了轮式移动机器人存在外部扰动和惯性不确定性情况下的自适应滑模轨迹跟踪控制问题.文献[14]针对具有侧向和纵向滑动下的非线性离散时间移动机器人动态系统,提出了一种基于强化学习的自适应神经网络控制跟踪算法.上述提到的控制策略都在一定程度上提高了控制系统的跟踪性能,具有良好的扰动抑制能力.但是,上述方法普遍存在以下问题:1)控制器参数多,调参困难;2)算法计算量大,需要高性能的设备来配合,增加了硬件成本.
近些年来,基于观测器的抗扰控制方法由于具有众多优点得到了广泛关注[15-17].常用的观测器主要有滑模观测器、扰动观测器、广义比例积分观测器、扩张状态观测器等.文献[18]提出了一种基于扰动观测器的自适应跟踪控制器,解决了轮式移动机器人动力学模型中存在不确定扰动的问题,有效地提高了控制系统的抗干扰能力.文献[19]设计了一种鲁棒跟踪控制策略,该方法由基于滑模观测器设计的运动学控制器和非线性扰动观测器设计的动力学控制器组成,解决了输入干扰以及纵向与侧向滑动干扰下移动机器人的轨迹跟踪问题.应该指出的是上述提到的这些扰动观测器都可以用来观测系统扰动,使用时可以根据所研究系统实际情况来选择合适的观测器.
本文主要研究不确定扰动情况下轮式移动机器人的轨迹跟踪问题.首先,建立在车轮纵向和侧向滑动情况下移动机器人的运动学模型;然后,利用该模型设计扩张状态观测器来估计移动机器人受到的各种扰动;接着,利用扰动估计构建轨迹跟踪控制器,同时,给出了系统的稳定性证明过程;最后,仿真和实验结果表明本文提出的控制器能够有效地抑制干扰对系统性能造成的不利影响,使移动机器人快速准确地跟踪上其参考轨迹.
如图1所示,定义XOY坐标系为固定参考坐标系,移动机器人配备了两个主动轮和一个从动轮.主动轮通过电机给移动机器人提供动力,可通过改变电机的输入电压调节速度,达到调节移动机器人位姿的目的.从动轮主要起到维持机器人平衡的作用.关于图中的符号做如下说明:r表示车轮的半径,b表示车轮之间距离的一半(轮距),P表示车轮之间距离的几何中心,C为移动机器人的质心,d表示P,C两点之间的距离.
图1 轮式移动机器人模型Fig.1 Model of wheeled mobile robot
定义移动机器人的完整位姿为q[x y θ φr φl]T,考虑其在实际运行时由于地面湿滑、摩擦等原因受到纵向和侧向滑动扰动影响,轮式移动机器人满足下列非完整约束方程[20]:
式中:x和y表示移动机器人在固定参考坐标系(XOY坐标系)下的坐标,θ表示方向角,ζ表示侧向滑动线速度,φr和φl表示两主动轮的角位移,ηr和ηl表示两主动轮的纵向滑动角速度.
则受到车轮纵向和侧向滑动扰动影响的轮式移动机器人运动学模型可描述为
式中:
定义跟踪误差exx-xr,eyy-yr,结合公式(2)可得
式中
假设1假设系统(3)中扰动d1,d2的一阶导数存在,且满足条件≤μ,μ ∈R+.
定义x1ex,x2ey,系统(3)可扩张为如下形式:
根据上式可设计如下所示的扩张状态观测器(ESO):
基于扩张状态观测器的扰动估计,可设计线性自抗扰控制器为(LADRC)[21-22]
式中kx,ky >0为控制器增益.然后根据下式:
可得系统(2)中的v和ω.
将控制律(6)带入到系统(3)中,在设计的控制器作用下,跟踪误差的动态方程可写为
式中:
由于A为Hurwitz矩阵,因此存在对称正定矩阵P∈R6×6,使得ATP+P A-I条件成立.
定理1对于受扰移动机器人系统(2),在扩张状态观测器(5)和控制器(7)中参数选择合适的情况下,若系统(2)中的扰动满足假设1,则系统跟踪误差将会渐近收敛至下面的有界区域
证定义Lyapunov函数V(E)ETP E,对该函数求导可得
将上式带入到式(12)中可得
根据假设1可得上式的解
则系统跟踪误差将会渐近收敛至有界区域(11).证毕.
注1针对移动机器人轨迹跟踪控制问题,本文贡献主要有3点:1)建立了系统在各类扰动影响下的运动学模型;2)给出了包括控制器(6)和观测器(5)在内的整个机器人闭环系统的详细稳定性证明过程;3)后续的仿真和实验测试验证了所提控制方法的有效性.
为了显示所推荐控制方法的优点,本文给出了其与传统PI控制方法的仿真和实验对比结果.测试中用到的PI控制器设计如下:
假设移动机器人在前30 s未受到外界扰动影响,30 s之后受到如下形式的外加扰动:
在该仿真实验中,假设移动机器人的初始位姿为q(0)[-0.2 0.2 0 0 0]T,推荐控制器的增益选为kxky0.5,β0γ0ρ2,β1γ12ρ,ρ2.5;PI控制器参数设置为:仿真步长设置为0.01 s.
仿真结果如图2-3所示,图2分别描述了在所推荐控制方法和传统PI控制方法作用下移动机器人的参考位置和实际位置,位置跟踪误差,航向角跟踪以及线速度和角速度变化曲线,图3给出了所提控制方法中扩张状态观测器对扰动的估计曲线.从图2(b1)与图2(b2)中可以看到,当移动机器人受到外部扰动影响时,与传统的PI控制算法相比,本文提出的控制算法可以使机器人获得更小的跟踪误差,这表明所提的控制算法具有很好的跟踪性能和较强的干扰抑制能力.
图2 在所推荐控制(第1列)和PI控制(第2列)下的跟踪曲线(仿真)Fig.2 Tracking curves(simulation results)under the proposed control(the 1st column)and PI method(the 2nd column)
图3 扩张状态观测器对扰动的估计曲线(仿真)Fig.3 Disturbance estimations based on extended state observer(simulation results)
需要指出的是由于本文研究的移动机器人系统是一个微分平坦的系统,根据微分同胚映射,状态θ可以由系统的平坦输出(x,y)来表示.因此只要能够保证实际位置(x,y)跟踪上其参考位置(xr,yr),状态θ就可以在一定误差范围内跟踪上θr,这一点也可以通过图2c的测试结果得到验证.关于移动机器人微分平坦属性的详细介绍及相应的控制器设计思路,可以参考文献[24].
图4是用于算法验证的移动机器人实验平台,该移动机器人主要由微控制器、直流减速电机、电池、车轮以及铝合金的车身组成.微控制器的型号为STM32F 103RCT6,该控制器运行底层电机速度控制算法.两台24 V直流减速电机为机器人提供动力,可通过500线光电编码器测量转速信息.图5是系统整体框架图,该系统主要由搭载微控制器的移动机器人和执行MATLAB/Simulink的计算机两部分组成.首先,微控制器利用串口外设接收MATLAB/Simulink发来的控制指令(线速度和角速度),并随即将控制指令转化为相应的左,右轮直流电机的转速指令,同时又可以利用定时器外设以定时采样的方式得到两编码器的增量值,计算两台直流电机的实际转速;然后,通过两直流电机的转速信息可计算出当前时刻的线速度和角速度,并且采用基于运动学模型的里程计算法推算出当前位置(通过串口发送到MATLAB/Simulink);最后,运行底层电机控制算法的微控制器利用直流电机的转速指令和实际转速之间的差值计算出PWM信号,将该信号作用到直流电机驱动器上,实现速度调节的功能.
图4 实验平台Fig.4 Experimental test platform
图5 系统整体框架图Fig.5 System structure diagram
在该实验测试中,移动机器人的初始位姿设置为q(0)[0 0 0 0 0]T,实验中推荐控制器和PI控制器的参数设置分别与仿真测试时相同.两种控制方法的采样控制周期都设置为0.01 s.实验结果如图6-7所示,分别描述了在两种控制方法下移动机器人在X轴和Y轴方向的轨迹跟踪效果,线速度和角速度的跟踪效果以及对扰动的估计结果.根据图6(b1)和图6(b2)的位置跟踪误差曲线可以看出,在机器人稳态运行至30 s时施加扰动,所推荐控制方法的跟踪误差范围±0.05 m明显小于PI控制方法的跟踪误差范围±0.1 m.结果表明本文提出的控制方法具有较好的抗干扰能力.
图6 所推荐控制(第1列)和PI控制(第2列)下的跟踪曲线(实验)Fig.6 Tracking curves(experiment results)under the proposed control(the 1st column)and PI method(the 2nd column)
图7 扩张状态观测器对扰动的估计曲线(实验)Fig.7 Disturbance estimations based on extended state observer(experiment results)
注2通过比较本文所推荐的控制器(4)-(7)和PI控制器(13)可以看出,本文所设计的控制器结构简单,调参数量少(调参数量与PI控制器的数量相同都只有两个).同时与已有研究成果[11-14]相比,所推荐方法由于使用ESO来实时动态的估计系统干扰,不需要设计计算量较大的自适应或者强化学习机制,因而可以有效降低系统计算负担.
为了解决移动机器人在干扰情况下的轨迹跟踪控制问题,首先,建立起移动机器人在车轮纵向和侧向滑动情况下的运动学模型;其次,根据扩张状态观测器对扰动的估计,提出了一种基于线性自抗扰的轨迹跟踪控制方法;然后,通过定义的Lyapunov函数证明了系统的稳定性;最后,仿真和实验结果都验证了所提控制方法的有效性和鲁棒性.为了进一步提高移动机器人的跟踪性能,接下来作者将利用高性能的微控制器来设计和验证基于非线性扩张状态观测器的自抗扰控制算法和滑模控制算法.