摘要
提出了一种非完整约束轮式移动机器人的最优控制方案。
众所周知,具有非完整约束的wheeled mobile robot (WMR)
不能通过连续可微的时不变控制律来反馈稳定。
利用模型预测控制(MPC
),自然地得到了一个不连续的控制律。
MPC
的主要优点之一是能够直接处理约束(由于状态或输入限制)。
二次规划(QP
)通过对WMR
误差模型的逐次线性化来求解线性MPC
。
引言
移动机器人控制领域是近几十年来研究的热点。
尽管轮式移动机器人(WMR
)的运动学模型显然很简单,但非完整约束的存在使得这些系统的稳定控制律设计面临相当大的挑战。
由于Brockett
条件[1],无法得到连续可微的时不变稳定反馈控制律。为了克服这些限制,大多数作品使用非光滑和时变控制律[2]-[6]。
关于WMRs
鲁棒自适应控制的最新研究成果,见[7],[8]。
然而,在实际的实现中,由于自然产生的对输入或状态的约束,很难获得良好的性能。以前引用的著作都没有考虑到这些限制。这可以通过使用模型预测控制(MPC
)方案以简单的方式实现。
对于WMR
来说,这是一个重要的问题,因为机器人的位置可以被限制在一个安全的操作区域内。通过考虑输入约束,可以产生与执行器限值相关的控制动作。
此外,动态系统到链式或幂形式的坐标变换不再是必需的,这使得MPC
的调谐参数的选择更加直观。
针对WMR
的非完整特性,MPC
隐式地生成了分段连续(非光滑)控制律。
模型预测控制是利用系统的模型通过最小化目标函数来获得最优控制序列的一种最优控制策略。在每个采样间隔,该模型用于预测系统在预测范围内的行为。基于这些预测,目标函数相对于未来的输入序列最小化,因此需要对每个采样间隔求解一个约束优化问题。尽管预测和优化是在未来的时间范围内执行的,但只使用当前采样间隔的输入值,并且在下一个采样时间重复相同的过程。
这种机制被称为移动或后退地平线策略,参照时间窗口从一个采样时间向前移动到下一个采样时间的方式。对于复杂的、约束的、多变量的控制问题,MPC
已经成为过程工业中公认的标准[9]。在许多情况下,当被控制的工厂足够慢,允许其实施时,它被使用[10]。然而,对于具有快速和/或非线性动力学的系统,由于需要大量的在线计算,这种技术的实现在适用性上仍然存在根本的限制[11]。
WMR
的模型是非线性的。尽管非线性模型预测控制(NMPC
)已经得到了很好的发展[10]、[12]、[13],但所需的计算量远远高于线性模型预测控制。
在NMPC
中,有一个非线性规划问题需要在线求解,它是非凸的,有大量的决策变量,全局最小值通常是不可能找到的[14]。
在本文中,我们提出了一个策略,以克服至少一部分这些问题。**基本思想是使用连续线性化方法,如[14]所述,产生通过线性MPC
求解的系统的线性时变描述。**然后,以控制输入为决策变量,将优化问题转化为二次规划问题。由于这是一个凸问题,QP
问题可以通过数值鲁棒解得到全局最优解。结果表明,即使是实时实现也是可能的。虽然MPC
并不是一种新的控制方法,但处理WMRs
的MPC
的工作是最近的且较少的[15]–[17]。
WMR
的运动学模型
考虑了由刚体和非变形车轮组成的移动机器人(见图1)。
假定车辆在平面上运动而不打滑,即车轮与地面之间存在纯滚动接触。
WMR
的运动学模型:
{ x ˙ = v cos θ y ˙ = v sin θ θ ˙ = w (1) \left\{\begin{array}{l} \dot{x}=v \cos \theta \\ \dot{y}=v \sin \theta \\ \dot{\theta}=w \end{array}\right.\tag{1} ⎩⎨⎧x˙=vcosθy˙=vsinθθ˙=w(1)
写作更紧凑的形式:
x ˙ = f ( x , u ) (2) \dot{\mathbf{x}}=f(\mathbf{x}, \mathbf{u})\tag{2} x˙=f(x,u)(2)
x ≜ [ x y θ ] T \mathbf{x} \triangleq\left[\begin{array}{lll}x & y & \theta\end{array}\right]^{T} x≜[xyθ]T表示车轮中心 C C C相对于全局惯性坐标系 { O , X , Y } \{O, X, Y\} {
O,X,Y}中的(configuration
)配置(位置和方向);
u ≜ [ v w ] T \mathbf{u} \triangleq[v \quad w]^{T} u≜[vw]T是控制输入,其中 v v v和 w w w分别是线速度和角速度。
通过计算相对于参考车的误差模型得到线性模型。这样做。考虑同样由(2)描述的参考车。因此,它的轨迹 x r \mathbf{x}_{r} xr和 u r \mathbf{u}_{r} ur:
x ˙ r = f ( x r , u r ) (3) \dot{\mathbf{x}}_{r}=f\left(\mathbf{x}_{r}, \mathbf{u}_{r}\right)\tag{3} x˙r=f(xr,ur)(3)
通过在点 ( x r , u r ) \left(\mathbf{x}_{r}, \mathbf{u}_{r}\right) (xr,ur)处展开式(2)的右侧,并丢弃高阶项,得到:
x ˙ = f ( x r , u r ) + ∂ f ( x , u ) ∂ x ∣ x = x r u = u r ( x − x r ) + ∂ f ( x , u ) ∂ u ∣ x = x r u = u r ( u − u r ) (4) \begin{aligned} \dot{\mathbf{x}}=f\left(\mathbf{x}_{r}, \mathbf{u}_{r}\right)+\left.\frac{\partial f(\mathbf{x}, \mathbf{u})}{\partial \mathbf{x}}\right|_{\mathbf{x}=\mathbf{x}_{r}\atop\mathbf{u}=\mathbf{u}_{r}}\left(\mathbf{x}-\mathbf{x}_{r}\right)+\left.\frac{\partial f(\mathbf{x}, \mathbf{u})}{\partial \mathbf{u}}\right|_{\mathbf{x}=\mathbf{x}_{r}\atop\mathbf{u}=\mathbf{u}_{r}}\left(\mathbf{u}-\mathbf{u}_{r}\right) \end{aligned}\tag{4} x˙=f(xr,ur)+∂x∂f(x,u)∣∣∣∣u=urx=xr(x−xr)+∂u∂f(x,u)∣∣∣∣u=urx=xr(u−ur)(4)
或者,表示为:
x ˙ = f ( x r , u r ) + f x , r ( x − x r ) + f u , r ( u − u r ) (5) \dot{\mathbf{x}}=f\left(\mathbf{x}_{r}, \mathbf{u}_{r}\right)+f_{\mathbf{x}, r}\left(\mathbf{x}-\mathbf{x}_{r}\right)+f_{\mathbf{u}, r}\left(\mathbf{u}-\mathbf{u}_{r}\right)\tag{5} x˙=f(xr,ur)+fx,r(x−xr)+fu,r(u−ur)(5)
其中, f x , r f_{\mathbf{x}, r} fx,r和 f u , r f_{\mathbf{u}, r} fu,r分别表示 f f f对于 x x x和 u u u的雅各比矩阵,分别在参考点 ( x r , u r ) \left(\mathbf{x}_{r}, \mathbf{u}_{r}\right) (xr,ur)周围计算。
运动学模型参考论文:
[18] G. Campion, G. Bastin, and B. D’Andr´ea-Novel, “Structural properties and classification of kinematic and dynamical models ofwheeled mobile robots,” IEEE Transactions on Robotics and Automation, vol. 12, no. 1, pp. 47–62, Feb 1996.
然后,用式5减去式3,可得:
x ~ ˙ = f x , r x ~ + f u , r u ~