模型预测控制是一种离散时间多变量控制体系。在每个控制间隔,MPC控制器使用一个内部模型来预测未来的设备行为。基于此预测,控制器计算最优控制动作。有关模型预测控制的更多信息,请参见MPC设计.
您可以在自动驾驶应用程序中使用MPC,以提高车辆响应能力,同时保持乘客的舒适性和安全性。应用程序可以包括:
自适应巡航控制-例如,见基于模型预测控制的自适应巡航控制系统.
车道保持辅助-例如,见基于模型预测控制的车道保持辅助系统.
车道跟踪控制—例如,请参见基于传感器融合和车道检测的车道跟踪控制.
停车-举个例子,请看基于非线性模型预测控制的平行泊车.
避障-举个例子,请看基于自适应模型预测控制的避障.
MPC有几个对自动驾驶有用的功能。
MPC特性 | 描述 | 更多的信息 |
---|---|---|
显式地处理输入和输出约束 | 当计算最优控制移动时,MPC控制器考虑系统的任何输入和输出约束。例如,你可以指定约束:
|
|
预测自我车辆行为越过后退的地平线 | MPC控制器使用车辆动力学的内部模型来预测车辆将如何在预测范围内对给定的控制动作做出反应。这种行为类似于人类司机理解和预测他们的车辆的行为。 | |
预览参考轨迹和跨越预测层的扰动 | 如果你能在预测范围内预测到参考轨迹或干扰,MPC控制器就可以在计算最优控制动作时纳入这些信息。这种行为类似于人类驾驶员在他们的车辆前面预习道路。 | 信号预览 |
在运行时更新内部车辆模型 | 如果自我车辆的动力学随时间变化,如速度依赖的转向动力学,您可以使用自适应MPC更新控制器内部模型。 | 自适应政策委员会 |
生成代码 | 您可以自动生成用于部署模型预测控制器的代码。 | 生成代码和部署控制器到实时目标 |
为了简化自动驾驶控制器的初始开发,Model Predictive Control Toolbox™软件提供了Simulink万博1manbetx®用于自适应巡航控制、车道保持辅助和路径跟踪的模块。这些块为设计MPC控制器提供了特定于应用程序的接口和选项。
块 | 描述 |
---|---|
自适应巡航控制系统 | 通过调整自我车辆的纵向加速度,跟踪设定的速度并保持与前车的安全距离。 |
车道保持辅助系统 | 通过调整前转向角度,让汽车沿着直线或弯曲道路的中心行驶。 |
路径跟踪控制系统 | 让自我驾驶的车辆沿直线或弯道的中心行驶,同时以设定的速度行驶,并保持与前车的安全距离。为此,控制器可以同时调整自我车辆的纵向加速度和前转向角度。 |
对于其他自动驾驶应用,如避障,您可以使用其他模型预测控制Simulink模块设计和模拟控制器,如万博1manbetxMPC控制器,自适应MPC控制器,非线性MPC控制器块。有关使用自适应模型预测控制器的示例,请参见基于自适应模型预测控制的避障.
为自适应巡航控制系统,车道保持辅助系统,路径跟踪控制系统块,您可以生成一个自定义子系统,然后您可以为您的应用程序修改该子系统。当你想:
修改默认MPC设置或使用高级MPC功能
修改控制器默认初始条件
使用不同的应用程序设置,如自定义安全跟随距离自适应巡航控制
要创建自定义子系统,请单击正在使用的块的相应按钮。例如,为对象创建自定义子系统自适应巡航控制系统块,块选项卡上,单击创建ACC子系统.该软件创建了一个Simulink模型,其中包含万博1manbetx一个与原始控制器配置相同的子系统。您可以修改这个子系统,并直接将其替换回原始模型,替换控制器块。
如果您有自动驾驶工具箱™软件,您可以将您的模型预测控制器与以下系统集成:
目标检测与跟踪
车道边界检测
路径规划
传感器融合
有关示例,请参见:传感器融合的自适应巡航控制,车道保持辅助车道检测,基于传感器融合和车道检测的车道跟踪控制.