Apollo教程笔记7——Control
文章目录
Control
Introduction
控制是驱使车辆前行的策略
对于汽车而言, 最基本的控制输入为转向、加速和制动
通常,控制器使用一系列路径点来接收轨迹,控制器的任务是使用控制输入,让车辆通过这些路径点。
首先控制器必须准确,这意味着它应该避免偏离目标
其次,控制策略对汽车应该具备可行性
最后,平稳点, 提高乘客的舒适度
三种策略:
- proportional-integral-derivative controL, or PID, 比例积分微分控制
- linear quadratic regulator, or LQR 线性二次调节器
- model predictive control, or MPC 模型预测控制
Sebastian’s Take
控制是一门让汽车在既定轨迹上平稳运行的学问
控制是个很复杂的领域,只有通过10年控制领域的潜心学习,你才能拿到一个博士学位,之后才能成为一名控制学教授。
Control pipeline
PID Control
P 表示比例, proportional
比例控制意味着车辆偏离越远,控制器就越难将其拉回目标轨迹。
D 代表微分, derivative
当车辆越来越接近目标轨迹时,我们需要控制器更加稳定
D 致力于使运动处于稳定状态
I 表示积分, Integral
负责纠正车辆的任何系统性偏差
例如,转向可能失准,这可能造成恒定的转向偏移。在这种情况下,
我们需要稍微向一侧转向,以保持直行。为解决这一问题,控制器会系统的累积误差进行惩罚。
PID Pros and Cons
Pros
- 简单
- 只需知道你的车辆与目标轨迹之间的偏差
Cons
- PID控制器只是一种线性算法?
- 对于非常复杂的系统而言,这是不够的
- 对无人驾驶而言,我们需要应用不同的PID控制器来控制转向和加速。这意味着很难将横向和纵向控制结合起来。
- PID控制器依赖于实时误差测量,这意味着受到测量延迟限制时可能会失效。
Linear Quadratic Regulator
LQR, 是基于模型的控制器,它使用车辆的状态来使误差最小化。
Apollo 使用LQR进行横向控制, 横向控制包含四个组件:
- 横向误差, the rate of change of the lateral error
- 朝向误差, the heading error
- 朝向的变化率, the rate of change of the heading
Model Predictive Control, MPC
非常依赖于数学优化
三个步骤, MPC是一个重复过程:
- Build a model of the vehicle, 建立车辆模型
- use an optimization engine to calculate control inputs over a finite time horizon, 使用优化引擎计算有限时间范围内的控制输入
- and then implement the first set of control inputs. 然后执行第一组控制输入
Time Horizon and Vehicle Model
Optimization for MPC
MPC Pros and Cons
值得为MPC投入实现成本
Control Projects from SDCND
Summary
Apollo支持所有者三种控制器