自动驾驶 | 控制篇

自动驾驶系统的运动控制控制,是将意图转化为行动的过程。

它的主要目的是通过向硬件级别提供必要的输入来完成上层的规划意图,这些输入将生成所需的运动。控制器根据力和能量映射现实世界中的相互作用,而自主系统中的认知导航和规划算法通常关心的是车辆相对于环境的速度和位置。

控制系统内部的量可以用来确定系统的性能,控制器可以对干扰作出反应,并将系统的动力学调整到期望的状态。系统的模型可以被用来更详细地描述所需的运动,如果想达成令人满意的运动执行效果,好的系统模型是必不可少的。

传统控制

反馈控制是许多应用中最常见的控制器结构。反馈控制使用被测量的系统响应,并主动补偿任何偏离期望行为的偏差。反馈控制可以减少参数变化、建模误差以及不必要的干扰的负面影响。反馈控制也可以改变系统的瞬态行为,以及测量噪声的影响。

经典反馈控制最常见的形式是比例-积分-微分(PID)控制器。PID控制器是过程控制工业中应用最广泛的控制器。

其概念比较简单。它不需要系统模型,控制律以误差信号为基础,如下公式,其中e为误差信号,$k_p ,k_i和k_d$分别为控制器的比例增益,积分增益和导数增益.

然而,在控制器中仅使用反馈项可能会受到一些限制。第一个重要限制是它延迟了对错误的响应,因为它只在错误发生时才响应。纯反馈控制器还存在耦合响应问题,因为对扰动、建模误差和测量噪声的响应都是由同一机构计算的。对各项进行独立的响应才是更符合逻辑的。

通过在控制器中增加一个前馈项,可以向控制器添加一个新的自由度,这个控制器体系结构如下图所示。在控制器中加入前馈项有助于克服反馈控制的局限性。前馈项被添加到控制信号中,不需要考虑控制系统的任何测量。但是,前馈项可能涉及到干扰的测量等。设计前馈控制需要对物理系统有更全面的了解,因此,常常需要使用模型参考作为前馈控制器。
在控制器中结合前馈和反馈项的方法也称为二自由度控制器

下表总结了前馈和反馈控制的作用

状态空间控制

其通常被称为现代控制,它通过检查系统的状态,尝试把系统的整个向量来作为一个单元进行控制。
状态空间控制领域是一个非常大的领域,在这一领域还有很多积极的研究。

线性状态空间模型可以写成如下公式,其中 $x(t)$是系统状态向量,$u(t)$是控制输入向量,$y(t)$是系统输出向量。

自动驾驶系统的观测结果大多是非线性的,需要先通过线性化系统的状态空间方程,来获得非线性系统的线性模型。

双自由度控制器也适用于非线性系统。前馈用于产生参考轨迹,反馈用于补偿扰动和误差,通过对参考轨迹$x_r(t)$进行线性化处理,可以得到线性化的动态误差。

其中A B C D是合适的雅可比矩阵。如果存在可设计为产生参考输入$u_r(t)$的轨迹生成过程,使$u_r(t)$生成满足系统非线性系统动力学的可行轨迹,则可配置状态空间控制器对线性化误差动力学进行反馈补偿。

基于模型的预测控制-MPC控制

自治系统需要运动模型来进行规划和预测,模型也可以用于控制执行。

一种利用系统建模来优化前向时间范围的控制方法在文献中通常被称为模型预测控制(MPC)。
MPC的基本结构如下图所示。

模型预测控制,将最优控制的性能与鲁棒控制的鲁棒性相结合。预测是在短时间范围内进行的,称为预测范围,模型预测控制器的目标是在预测范围内计算最优解。模型和控制器可以在线改变以适应不同的条件。模型预测控制在工业过程控制应用中取得了巨大的成功,这主要是由于其简单的概念和用输入约束和非线性处理复杂过程模型的能力。

模型预测控制还有其他一些吸引人的特性,比如设计多变量反馈控制器对它而言是比较简单的。
它还可以方便地指定控制器必须执行的系统输入、状态和输出。MPC还允许指定一个目标函数来优化控制工作。
MPC还可以处理时间延迟,拒绝测量和未测量干扰,并利用以前存储的预期信息。这个特性对于例如遵循固定的路径等重复的任务非常有用。MPC实现了优化和反馈调整,模拟了自然过程,其也被广泛应用于汽车应用。

为了提高燃油经济性、排放和安全性能,整个车辆系统的运行必须在整个运行范围内达到最佳状态。
然而,在汽车系统中应用模型预测控制器与在过程控制行业中所面临的挑战不同。在过程控制行业中,采样时间相对较长,可用的计算资源也比较充足。汽车进程的采样周期为几毫秒,由于空间限制,可用的计算资源数量有限。

因此,处理器速度和内存的进步以及新算法的开发对于推动MPC在汽车行业的更广泛应用非常重要。
MPC已经应用于多种汽车控制应用,包括牵引控制、制动和转向、车道保持等。模型预测技术也被应用于各种工程的轨迹跟踪问题。

轨迹生成与追踪
已知路径信息的轨迹生成方法有两种。
第一种方法是使用优化方法同时生成和跟踪轨迹,另一种方法是解耦轨迹生成和跟踪。前者将生成和执行/跟踪任务集成到一个优化问题中。这种方法通常用于最优时间应用,例如在中。由于处理能力有限,实时运行优化问题是一个挑战,在复杂环境下进行规划可能并不十分有利。

轨迹生成

轨迹生成的问题是找到一个完整的控制输入$u(t)$,它对应于某个期望状态的轨迹$x(t)$。
轨迹生成问题可以为两点边值问题。
边界条件通常包括初始状态$x(t_0) = x_0$和最终目标状态$x(t _) = x_f$,系统动力学$\dot{x} = f (x, u)$作为附加约束。对于满足边界条件的给定状态的轨迹x(t),如果没有控制输入u(t),则定义为不可行的轨迹。

轨迹是限定在一定时间间隔内的运动的表示。
这可以是在区间上对状态向量的详细描述$x(t)|(t_0, t < t _f)$上的状态向量的描述,或者是在一个区间上输入向量的描述。$u(t) | (t_0, t < t_f)$.

自动驾驶汽车的轨迹生成问题可以通过多种技术来解决。讲述轨迹生成的文献通常可以分为两种方法:(i)基于传感器的方法和(ii)基于动力学的方法。
第一种方法更倾向于机器人领域。几十年来,机器人研究人员一直在解决轨迹生成问题,该问题已被应用于工业机器人和自主移动机器人。基于传感器的方法通常集中在对环境的感知集成,而不考虑车辆动力学。

另一种方法更多地基于车辆动力学。文献中提出了各种轨迹的优化方法,如遗传算法的应用,梯度下降法等。
对车辆动力学和控制的深入理解可以推动突破自动驾驶车辆的极限。
轨迹生成和跟踪的研究也被应用于半自主车辆,用于更先进的驾驶员辅助系统。

应该在充分考虑自动驾驶汽车的目标之后,在基于传感器的方法和基于动力学的方法之间寻找一个平衡。

轨迹跟踪

在这一节中,将综述可用的路径和轨迹跟踪方法。
我们认为路径是计划从起始姿态移动到目标姿态的几何表示,而轨迹还包括运动的速度信息。

目前最流行的两种轨迹跟踪方法是

  • 几何方法
  • 基于模型的方法

    基于模型的几何路径跟踪

    从基于模型的路径跟踪方法中派生出来的控制器使用车辆的运动学和/或动力学模型

  • 基于运动学模型的控制器在低速应用中表现良好,但误差随着车速和路径曲率的增大而增大。

  • 基于动态模型的控制器在高速公路自动驾驶等高速驾驶应用中往往表现良好,但在车辆快速加速、减速和大曲率路径时。基于模型的方法要求路径是连续的,对扰动和大的横向偏移不具有鲁棒性
基于几何的路径跟踪

几何路径跟踪算法利用简单的几何关系推导出转向控制律。这些技术利用前视距离来测量车辆前方的误差,就模型复杂度而言可从简单的圆弧计算到更为复杂的几何定理,如矢量跟踪方法。

最流行的几何路径跟踪算法之一是纯追踪路径跟踪算法。纯追踪路径跟踪算法是在距离车辆当前位置一定前视距离的路径上寻点。该算法相对简单,易于实现,对干扰和较大的横向误差具有较强的鲁棒性。该算法的输入是路径点,而不是平滑曲线,因此不太容易受到离散化相关问题的影响。如果所选的前向距离不合适,特别是在速度较高的情况下,当前向距离增加时(通常将前向距离设置为与速度相关的递增函数),该算法仍存在切角( corner cutting corner cutting)和稳态误差问题

为了避免限制路径生成的方式,路径应该以分段线性方式表示,根据这一原理,具有连续的一阶和二阶导数的平滑轨迹,例如贝塞尔曲线,应该表示为密集点序列,从而能够应用更广泛的潜在跟踪算法。一个点通过线性路径段连接到路径中的下一个点。为了尽可能地逼近连续路径,必须对连续路径进行更密集的离散化。
离散节点包含在有序列表中,按顺序和路径点追踪。

纯算法具有一个可调参数,即前向距离$L_{fw}$。阿克曼转向几何,该算法定义了一个虚拟的圆弧,用以连接锚点(rear axle)和跟踪点。

对该算法进行改进,不一定选择锚点作为rear axle ,可被定位在沿$x_b$与后桥的距离为e的点。
然而,在此之后,锚点将被假定为后桥。

对该算法的稳定性极限进行了分析,结果表明,对于系统所涉及的最小前向距离和过程延迟的正确组合,纯跟踪算法是稳定的。

0%