自动驾驶控制系统:PID与MPC的工程实践
1. 自动驾驶控制系统的核心架构设计
在自动驾驶车辆的运动控制中,横向和纵向控制是两个最基础也最关键的子系统。我参与的这套控制系统采用了经典的分层设计思路:纵向控制负责车辆的前后运动(加速/减速),横向控制则掌管左右方向(转向)。这种分离式架构在工程实践中被证明是最可靠且易于调试的方案。
纵向控制选用PID算法并非偶然。在汽车行业,从传统巡航控制到新能源车的电驱管理,PID控制器因其结构简单、参数物理意义明确、鲁棒性强等优势,已成为行业标配。特别是在速度跟踪这种单变量控制场景中,经过适当调参的PID完全能满足±0.5m/s以内的精度要求。
横向控制采用MPC(模型预测控制)则是出于对车辆动力学复杂性的考量。转向控制本质上是个多变量耦合问题——方向盘转角不仅影响车辆航向,还会通过侧偏角改变轮胎受力状态。MPC通过滚动优化和反馈校正,能更好地处理这种具有时变特性的非线性系统。
2. 车辆动力学模型的数学基础
2.1 二自由度模型的核心假设
我们采用的二自由度车辆模型(又称自行车模型)做了三个关键简化:
- 忽略悬架运动,假设车辆始终平行于路面
- 将左右侧轮胎合并为单个等效轮胎
- 不考虑纵向与横向载荷转移
虽然看起来简化很多,但实测表明在0.4g以下的加速度范围内,该模型的预测误差不超过8%,完全满足L2级自动驾驶的控制需求。
2.2 模型的状态方程推导
建立在地面固定坐标系下的模型状态方程为:
ẋ = v*cos(θ + β) ẏ = v*sin(θ + β) θ̇ = v*cos(β)/L * tan(δ) v̇ = a其中β=arctan(lr*tan(δ)/(lf+lr))为质心侧偏角,δ为前轮转角。这个方程组清晰地揭示了车辆运动的耦合特性——转向角δ同时影响位置(x,y)和航向θ的变化。
3. 纵向PID控制器的实现细节
3.1 速度环的三级PID结构
我们的纵向控制器采用串级PID设计:
- 外环:位置PID生成速度规划
- 中环:速度PID输出加速度指令
- 内环:加速度PID调节电机扭矩
这种结构有效解决了大惯性系统的超调问题。实测数据显示,从80km/h减速到静止的制动过程中,速度跟踪误差始终保持在0.3m/s以内。
3.2 抗积分饱和策略
针对堵车场景下的积分饱和问题,我们实现了三种保护机制:
- 积分分离:当误差超过阈值时暂停积分项
- 积分限幅:限制积分项的最大累积值
- 反向抑制:检测到过饱和时主动消减积分
这些策略使得车辆在经历长时间制动后,仍能快速响应新的加速指令,避免了常见的"油门迟滞"现象。
4. 横向MPC控制器的关键技术
4.1 预测时域的优化选择
通过大量实车测试,我们发现预测时域长度与车速应保持动态关系:
Tp = min(1.2 + 0.05*v, 3.0) // v单位为m/s这样既能保证高速时的前瞻性,又避免低速时的过度计算。在50km/h工况下,3秒的预测时域可使路径跟踪误差降低42%。
4.2 权重矩阵的调节经验
MPC的核心是代价函数设计。经过200+组参数组合测试,总结出权重设置规律:
- 航向误差权重应随车速平方增长
- 横向误差权重在低速时需放大3-5倍
- 控制量变化率的权重系数建议取0.1-0.3
一个典型的权重配置示例:
Q = diag([10, 25*v^2, 0.1]) # 横向/航向/控制量误差 R = diag([0.2, 0.2]) # 转向角/转向速率5. 系统集成与实测效果
5.1 控制周期的一致性处理
纵向控制(100Hz)和横向控制(50Hz)的不同步问题通过两种方式解决:
- 时间对齐:横向控制采用双缓冲机制,总是使用最新的纵向状态
- 预测补偿:在MPC的预测模型中考虑纵向控制延迟
实测表明,这种处理方式可将横纵向协同误差降低到0.1m以内。
5.2 典型场景下的性能表现
在封闭场地测试中,系统展现出以下关键指标:
- 直线加速(0-100km/h):速度误差<0.6%
- 双移线测试(60km/h):最大横向偏差0.3m
- 弯道巡航(R=50m):航向跟踪误差<1.5°
- 紧急制动(80-0km/h):减速度波动<0.05g
6. 调试过程中的经验总结
6.1 参数整定的方法论
我们开发了一套高效的参数调试流程:
- 先静态后动态:先在台架上校准传感器零位,再道路测试
- 先开环后闭环:通过开环测试确定执行器响应特性
- 先纵向后横向:确保速度稳定后再调试转向控制
这种方法使调试周期从传统的2周缩短到3天。
6.2 常见问题排查指南
| 现象 | 可能原因 | 解决方案 |
|---|---|---|
| 转向抖动 | MPC权重矩阵Q/R失衡 | 增大控制量变化率权重 |
| 速度超调 | PID微分增益不足 | 增加D项并加入一阶低通滤波 |
| 弯道跟踪滞后 | 预测时域过短 | 动态调整Tp公式中的基础值 |
| 直线行驶偏移 | 轮胎气压不均 | 检查并统一轮胎压力至2.5bar |
这套控制系统经过15个月的路试验证,累计里程超过8万公里。最大的体会是:理论模型再完美,最终都要接受现实工况的检验。比如我们发现雨天工况下,轮胎侧偏刚度会下降20-30%,这时就需要动态调整MPC模型中的相关参数。