移动机器人是一个包含自主决策、环境感知、动态规划、行为控制等功能于一体的综合系统[1],它不仅可以在复杂的环境中适应和执行任务,而且具备良好的交互性和易用性的特点,目前已经在航空、军事和医疗等领域得到了广泛应用。机器人运动控制作为机器人工作的基础,一直是学术界和工业界的研究热点。目前关于移动机器人运动控制方法主要包括:滑模控制[2]、模糊控制[3]、PID控制[4]、基于神经网络的智能控制[5]和模型预测控制(model predictive control,MPC)等。由于MPC能利用历史数据来预测系统未来状态,并具有处理复杂约束控制问题的能力,因此MPC相较于其他控制器可以更好的处理机器人的附加约束,使其能适应多变的工作环境。文献[6]研究了一种具有菱形输入约束的差分移动机器人的编队控制MPC。文献[7]基于离散机器人系统构造了一种能同时考虑位姿和控制输入的二次规划形式代价函数。文献[8]针对连续差分移动机器人系统,建立了积分型代价函数的MPC。但由于周期触发MPC需要频繁求解最优控制问题(optimal control problem,OCP),不仅会增加机器人的计算负担,而且会影响机器人系统的响应时间。因此,可降低计算压力的基于事件的MPC已被广泛关注。
基于事件的MPC能通过触发条件降低求解OCP的频率,减轻计算和通信负担、降低机器人系统的响应时间。目前基于事件的MPC主要分为自触发MPC(self-triggering model predictive control,STMPC)和事件触发MPC(event-triggered model predictive control,ETMPC)。ETMPC和STMPC的区别在于ETMPC是反应式的,需要根据系统实时状态判断触发条件是否被满足,而STMPC是主动式的,能通过预设的触发条件提前预测未来的触发时刻[9]。因此,相较于ETMPC,STMPC可以进一步降低对系统状态的监控频率,从而进一步减少计算资源的浪费。文献[10]针对具有持续有界附加扰动和状态输入约束的线性系统,研究了一种鲁棒STMPC控制策略。文献[11]通过一种考虑通信成本的新型代价函数,设计了能自适应调节触发间隔的自触发策略。
然而现有的STMPC策略大部分是通过单个采样时刻的误差来构建触发条件[12-14],忽略了系统因为状态误差的累计和变化率异常产生的残余误差和状态突变,导致系统触发次数过高。因此本文中提出了一种针对移动机器人系统,基于比例、积分、微分(proportion-integration-differentiation,PID)的STMPC(PID-STMPC)策略,旨在能更好的优化控制器控制行为,并有效降低求解OCP的频率。
本文中所使用的符号定义如下:R为所有实数空间,并且Rn代表n维实数空间。对于列向量表示向量X的欧几里得范数,
表示向量X的p范数。
本节分别对差速机器人系统和MPC控制器进行建模。
本文中研究对象为图1所示的两轮差速轮式移动机器人。其标称运动学模型如下:
(1)
图1 两轮差速移动机器人模型
Fig.1 Model of a two-wheeled differential mobile robot
为机器人在全局坐标系下的位姿坐标,
为机器人线速度与全局坐标系X轴的夹角,
为输入控制,满足如下约束:
(2)
其中,A⊂R3,U⊂R2是包含原点的紧集。和
分别表示机器人的线速度和角速度;vL和vR为左右轮的驱动速度。机器人的线速度和角速度分别由
和
定义,l为半轴距。且系统满足以下引理:
引理1 系统中非线性方程对
李普希兹连续,即存在李普希兹常数
满足:
(3)
vmax为机器人的最大线速度。
证明:基于不同的系统状态和
输入同一控制量
可以得到:
v(t)2[(cosθ1(t)-cosθ2(t))2+(sinθ1(t)-sinθ2(t))2]
(4)
根据拉格朗日中值定理得到:
结合式(4),以下不等式成立:
因此系统的李普希兹常数
由于机器人受环境和硬件影响,存在附加扰动,因此在建立机器人控制策略前需要在机器人模型中考虑扰动,从而获得如下实际机器人运动学模型:
(5)
其中,u(t)∈U, z(t)∈A。w(t)为机器人的附加扰动,满足
MPC作为在线优化控制算法,在每个更新时刻tk,都需要基于当前时刻系统状态求解OCP,以获得满足约束的最优控制序列和相应的最优状态
其中TP为MPC预测时域。在给出OCP之前,首先定义代价函数:
(6)
定义
(7)
(8)
其中: P>0,Q>0,R>0为权重矩阵,并且和
对
李普希兹连续,即存在相应的李普希兹常数LF∈(0,∞),LVf∈(0,∞)满足:
(9)
(10)
终端域Ω(ξ)定义为
(11)
存在反馈控制律使得以下不等式成立
(12)
需要说明的是,公式中的权重矩阵Q、R和P分别代表了代价函数中状态偏差、控制输入变化和终端性能对代价函数的影响。具体而言,权重矩阵Q占比越大,代表控制系统在控制过程中倾向于采取更加激进的控制策略以实现机器人的精准跟踪;权重矩阵R占比越大,控制器则会采取较为平缓的控制策略以降低执行器的资源消耗,但机器人的跟踪性能则会有所下降。因此,通过调节Q和R之间的关系,可以平衡机器人的跟踪性能和资源消耗。此外,终端代价函数的权重矩阵P体现了MPC控制系统的稳定性,它在确定本地反馈控制律κ(z)后根据公式(12)得出。
综上所述,可以得出代价函数满足如下引理:
引理2 代价函数对
李普希兹连续,并且其李普希兹常数为
(13)
证明:基于系统考虑不同的初始状态za(0),zb(0)以及控制输入u(t),t∈[0,Tp],则初始状态代价函数之差为
J(za(0),u(t))-J(zb(0),u(t))≤
式中:同理可得。通过Gronwall-Bellman不等式可以得到
因此:
J(za(0),u(t))-J(zb(0),u(t))≤
(14)
从而得出代价函数的李普希兹常数LJ。
基于上述代价函数和机器人系统模型,MPC的OCP描述为
(15)
式(15d)中的Ω(ξf)为鲁棒终端域,它为终端域Ω(ξ)的子集,满足ξf=aξ,a∈(0,1)。对于系统初始状态z∉Ω(ξ),首先通过MPC控制器驱动被控系统进入终端域Ω(ξ),然后由反馈控制律κ(z)驱动系统状态稳定至鲁棒终端域内。这种控制方法被称为“双模MPC”,并且已经被广泛应用在工程实践中。
由于常规周期触发MPC只将最优控制中的应用于系统,不仅造成计算系统资源浪费,且会增加系统响应时间,因此本文中考虑构建基于PID-STMPC控制策略。为方便书写,下文证明中将F(z(tx;tk),u(tx;tk))表示为F(tx),将
表示为通过式获得的最优成本,对应最优解为
为次优成本,满足
对应次优解为
(16)
本节首先设计了考虑状态误差的比例、微分和积分信息的自触发机制,以降低残余误差和状态突变对控制系统的影响。然后,进一步提出了相应的PID-STMPC算法。
在当前触发tk确定下一个触发时间tk+1是通过确保作为李雅普诺夫函数的最优代价函数递减获得的,即通过确保
J*(z(tk+1))-J*(z(tk))<0
(17)
成立。因为每次求解OCP之前都要考虑当前系统状态,因此并且
结合公式和文献[15]的引理3,可以得到:
(18)
基于式(18),通过确保式(17)成立可以得到以下不等式:
(19)
其中,E(tx;tk)表示系统实际状态z(tx;tk)和标称状态的差,即
结合式(1)和引理1得到:
通过Gronwall-Bellman不等式得出误差上界为
(20)
由式(19)构造触发条件的比例,积分,微分项,并且定义KP≥1,KI≥1,KD≥1分别为触发机制的比例、积分、微分系数:
(21)
设计触发条件状态量部分为
(22)
由于成立,因此基于式(19)和式(21)设计如下基于PID信息的STMPC的触发条件:
(23)
(24)
其中
(25)
并且考虑误差最大的情况,即:
(26)
需要注意的是,式(21)中KP、KI、KD分别对应触发条件中移动机器人系统状态的比例、积分和微分误差权重的调节参数。通过调节这些参数,可以平衡机器人系统所需的控制性能和计算资源。具体而言,触发机制中的比例、积分、微分系数可根据下述所示的思路进行选取。
当KP的比重较大时,控制器能更好的考虑实时状态,计算资源消耗量更接近机器人系统使用常规STMPC的控制效果;误差积分调节参数KI比重较大时,以消耗额外的计算资源为代价,有效减弱机器人系统的残余误差并提高控制精度;误差微分调节参数KD比重较大时,触发条件更注重当前时刻和触发时刻误差斜率的变化,以牺牲控制性能为代价,有效地增加2个连续触发瞬间的时间间隔,减小计算资源的消耗。因此,当明确机器人系统的实际控制要求时,需要根据上述规则调整KP、KI、KD之间的比重,实现对机器人控制性能和计算资源的调节。
算法1中介绍了基于PID-STMPC理论的算法。其中重要步骤解释如下:当系统状态满足z∉Ω(ξ)时,首先通过求解OCP式(15)得到最优控制输入然后,基于式(23)和式(24)得到下一个触发时刻tk+1,并在tk时刻将tk至tk+1内的最优控制输入应用至机器人系统;最后,当自触发控制序列
应用结束后重新求解(15),在整个控制过程中不断重复触发过程。当系统状态满足z∈Ω(ξ)后,通过反馈控制律u(t)=κ(z(t))驱动系统稳定至鲁棒终端域附近,不再需要求解OCP,构成“双模PID-STMPC”策略。
算法1 基于PID的STMPC算法
1 获得系统初始状态z(ts;tk),ts=0, tk=0;
2 while z(ts;tk)∉Ω(ξ) do
3 初始系统化
4 求解OCP得到
5 通过式(23)得到下一触发时刻tk+1;
6 while tx=tk+1 do
7 使用最优控制输入
8 x=x+1;
9 end while
10获得当前系统的实际状态z(tk+1;tk);
11tk=tk+1;
12 end while
13 使用反馈控制律κ(z)使系统稳定至Ω(ξf)内。
需要说明的是,周期触发MPC的计算压力主要来自频繁求解OCP获得而STMPC策略的引入显著降低了求解OCP的频率,并且触发条件(23)中的状态部分F(ts)可以通过
得到,误差部分在式(26)中也进行了说明。因此相较于周期触发MPC,PID-STMPC的计算负担较小。对比常规STMPC仅通过单一时刻状态误差构造的自触发条件获得下一触发时刻,并未考虑移动机器人系统在相邻触发间隔的控制过程中由于状态突变和状态残差累积对控制器触发策略的影响,本文中所提出的PID-STMPC在常规STMPC策略的基础上,进一步根据机器人状态误差的比例、积分、微分3种信息构造自触发条件(23)。具体而言,比例项作为自触发条件的基本部分,描述了常规STMPC策略的控制性能;积分项通过考虑相邻触发时间间隔内的误差变化的累积量,控制移动机器人系统状态与期望状态偏离程度;微分项则是通过考虑移动机器人系统误差状态的变化率来监测机器人系统状态误差变化的速率,控制系统状态与期望状态的偏离速度。因此,与常规STMPC相比,PID-STMPC策略由于PID机制的引入能够全面考虑相邻触发时刻状态误差的比例、积分和微分信息,其中积分项缓解了系统状态残差在相邻触发间隔内累积的现象,可以有效提高控制器的控制精度;微分项能够缓解由状态突变产生的控制器误触发现象,避免在不必要的采样时刻更新机器人系统的状态,从而有效减小了控制器的计算资源消耗,降低系统的响应时间。因此,本文中所提出的方法可以在兼顾机器人系统计算资源消耗的同时,提高控制器的控制性能。
本节在搭载ROS系统和Matlab的机器人平台上与常规STMPC[13]对比,分析验证了PID-STMPC的有效性。
用于实验的机器人平台为如图2所示的TurtleBot 3机器人,搭载的主控机为Intel NUCi7 4.7 GHz CPU,内存为32 GB,嵌入式控制器为OpenCR,并且配备了A2激光雷达和惯性运动传感器IMU。由于硬件限制,机器人的最大平移速度为0.22 m/s,最大旋转速度为2.84 rad/s。具体实验流程如图3所示。实验被分为MPC,运动控制和位姿信息反馈3个部分,通过话题通信在机器人网络中传递信息。实验中规定控制输入线速度上界为|vmax(t)|=0.2 m/s,角速度上界为|vmax(t)|=1 rad/s。经过测试得到扰动上界ρ=0.000 5 m。MPC预测时域为Tp=26 s和采样周期为 s,算法最大迭代次数M=130。机器人初始状态为z(t0)
[0,0,0}]T,参考1.2节中的规则,代价函数的权重矩阵设置为Q=diag(0.05,0.05,0.03),P=diag(0.01,0.01,0.01),R=diag(0.03,0.03)。代价函数李普希兹常数LF=0.323 5,LVf=0.031 5,式(25)中,KP=1,KI=2,KD=1。终端域ξ=0.1,鲁棒终端域ξf=0.095,反馈控制律κ(z)如下:
(27)
图2 机器人实验平台
Fig.2 Robot experiment platform
图3 实验框架
Fig.3 Experimental flow chart
其中,Δx=x(t)-xgoal,Δy=y(t)-ygoal,Δθ=θ(t)-θgoal,β1=0.5,β2=0.1,l=0.16。
实验的控制目标是在有限时间内将机器人驱动并稳定至目标点zgoal=[2,2,0]附近的终端域内。
图4和图5反应了机器人在不同控制算法下的位姿变化,虽然2种算法都能将机器人在有限时间内驱动并稳定至终端域,但是从图4中可以明显观察到常规的STMPC在x方向上出现了超调现象,这是由于在触发时并没考虑误差的累计和变化量,导致触发次数虚高,误差累计增大。
图4 机器人位姿x
Fig.4 Robot pose x
图5 机器人位姿y
Fig.5 Robot pose y
图6反应了不同触发算法下的速度输入,与常规STMPC相比,基于PID的STMPC的速度更稳定,速度曲线更平滑。
图6 机器人线速度v
Fig.6 Robot linear velocity v
参考文献[16]中关于移动机器人的实验设计,只考虑位置调节,而不考虑方向,这使得图7中常规STMPC在进入终端域后的角速度保持在0.056 rad/s。
图7 机器人角速度w
Fig.7 Robot angular velocity w
图8和图9中触发瞬间等于0.5代表在这一时刻进行了一次OCP的求解,触发瞬间为0代表这一时刻未进行OCP求解。因为进入终端域后输入由反馈控制律计算,所以进入终端域后的触发瞬间也为0。观察图8和图9发现在第一次触发时PID-STMPC得到的tk+1要小于常规STMPC,通过上文对位姿的分析得出这是因为常规STMPC没考虑误差的累计和变化量导致的触发次数虚高,造成了在后面的控制过程中机器人系统状态发生突变(如图4),导致系统没能在第一时间进入终端域,进而需要通过如图9中19 s以后的多次触发驱动系统进入终端域,并且由于控制效果差进入终端域后还需要反馈控制律多次调整位姿。这意味着与常规STMPC相比,由PID-STMPC驱动的机器人可以通过优化控制轨迹的方法用更少的计算资源被引导至鲁棒终端域内。
图8 PID-STMPC触发情况
Fig.8 PID-STMPC triggering condition
图9 常规STMPC触发情况
Fig.9 Traditional STMPC triggering condition
研究设计的PID-STMPC控制算法可以有效的克服状态突变问题,优化控制行为,并且降低机器人系统的计算负担。具体结论如下:
1) 在触发条件中引入了机器人系统状态误差的PID信息,避免了常规STMPC对误差分析有所欠缺而产生的状态突变问题。
2) 基于PID-STMPC算法在机器人平台上与常规STMPC进行了对比实验,验证算法的有效性。实验发现在PID-STMPC算法控制下的机器人,控制效果更好,输入曲线更平滑,触发次数大幅度减少。
[1] 徐国华,谭民.移动机器人的发展现状及其趋势[J].机器人技术与应用,2001(3):7-14. XU Guohua,TAN Min.The development status and trend of mobile robots[J].Robot Technique and Application.2001(3):7-14.
[2] LIU W,ZHENG Y,SONG R,et al.Adaptive sliding mode control of tracked mobile robot under unknown bounded disturbance[C]//2020 3rd International Conference on Unmanned Systems (ICUS),Harbin,China,IEEE,2020:960-965.
[3] 刘学文,任兴贵,许诺,等.多功能室外智能移动机器人避障轨迹自动规划方法[J].兵器装备工程学报,2022,43(10):201-206. LIU Xuewen,REN Xinggui,XU Nuo, et al.Automatic obstacle avoidance trajectory planning method for multifunctional outdoor intelligent mobile robot[J].Journal of Ordnance Equipment Engineering,2022,43(10):201-206.
[4] YU L,CAI Z,JIANG Z,et al.An advanced fuzzy immune PID-type tracking controller of a monholonomic mobile robot[C]//2007 IEEE International Conference on Automation and Logistics,Jinan,China,IEEE,2007:66-71.
[5] SUNG J Y.Adaptive neural tracking and obstacle avoidance of uncertain mobile robots with unknown skidding and slipping[J].Information Sciences,2013,238:176-189.
[6] WANG H,JIA Y.Formation control of differential mobile robots with diamond-shaped input constraints[C]//2022 41st Chinese Control Conference (CCC),Hefei,China,2022:4613-4618.
[7] REZAEI ADRIANI H,YOUSEFI LADEMAKHI N,KORAYEM A H.Superiority of nonlinear and stable MPC in a differential mobile robot:accuracy and solving speed[C]//9th RSI International Conference on Robotics and Mechatronics,Tehran,Iran,Islamic Republic of,IEEE,2021:13-17.
[8] BAI H,GAO J,SUN X,et al.Model predictive visual trajectory-tracking control of wheeled mobile robots[C]//IEEE 28th International Symposium on Industrial Electronics,Vancouver,BC,Canada,IEEE,2019:569-574.
[9] SUN Z,DAI L,XIA Y,et al.Event-based model predictive tracking control of nonholonomic systems with coupled input constraint and bounded disturbances[J].IEEE Transactions on Automatic Control,2018,63(2):608-615.
[10] LU L,MACIEJOWSKI J M.Robust Self-triggered MPC for constrained linear systems with additive disturbance[C]//IEEE 58th Conference on Decision and Control,Nice,France,IEEE,2019:608-615.
[11] LI H,YAN W,SHI Y.Adaptive self-triggered model predictive control of discrete-time linear systems[C]//IEEE 56th Annual Conference on Decision and Control.Melbourne,VIC,Australia,IEEE,2017:6165-6170.
[12] CUI D,LI H.Self-triggered model predictive control with adaptive selection of sampling number[C]//2019 IEEE International Conference on Industrial Cyber Physical Systems,Taipei,China,IEEE,2019:802-807.
[13] HASHIMOTO K,ADACHI S,DIMAROGONAS D V.Self-triggered model predictive control for nonlinear input-affine dynamical systems via adaptive control samples selection[J].IEEE Transactions on Automatic Control,2017,62(1):177-189.
[14] CAO Q,SUN Z,XIA Y,et al.Self-triggered MPC for trajectory tracking of unicycle-type robots with external disturbance[J].Journal of the Franklin Institute,2019,356(11):5593-5610.
[15] CHEN H,ALLGÖWER F.A quasi-infinite horizon nonlinear model predictive control scheme with guaranteed stability[J].Automatica,1998,34(10):1205- 1217.
[16] SUN Z,DAI L,LIU K,et al.robust self-triggered MPC with adaptive prediction horizon for perturbed nonlinear systems[J].IEEE Transactions on Automatic Control,2019,64(11):4780-4787.