[0]
在本视频中,我们将讨论模型预测控制器的工作原理。
[4]
在控制问题中,控制器的目标是计算被控对象的输入,使得被控对象输出遵循期望的参考信号。
[13]
模型预测控制器计算此输入的策略是预测未来。
[20]
这听起来像算命 - 但让我们看看它究竟是什么。
[24]
MPC使用被控对象模型来预测未来的被控对象输出行为。
[31]
它还使用优化器,确保预测的未来被控对象输出跟踪所需的参考信号。
[44]
比如说这是一辆由MPC控制器控制的自动驾驶汽车,让它保持在这条车道的中间位置。
[51]
MPC可以处理像这样的MIMO系统 - 但为了简单起见,我们将假设
[60]
并且仅调整方向盘角度以控制汽车的横向位置。
[68]
我们将首先关注控制器如何使用汽车模型,稍后我们将讨论优化器。
[95]
当前,如果方向盘像这样的转动过程,MPC控制器使用汽车模型在接下来p时间步骤仿真汽车的路径,
[105]
就像这里看到的那样。
P是对MPC展望未来前景的衡量标准,被称为
[114]
预测范围。它通常由未来的时间长度或未来时间步数表示。
[124]
MPC控制器需要找到最接近参考输入的最佳预测路径。
[131]
因此,它模拟了象这样的多个未来场景。但是,它不是以随机顺序进行这些仿真;
[139]
相反,它以系统的方式做仿真。这时就是优化器介入的地方了。
[146]
通过解决优化问题,MPC控制器试图最小化汽车的参考轨迹和预测路径之间的误差。
[157]
它还试图从一个时间步到下一个时间步时,方向盘角度的变化最小。
[164]
因为如果转向方向盘急剧转动,可能乘客会对乘坐感到不舒服,
[174]
该优化问题的目标函数J包括这两项并且表示为
[183]
预测误差和方向盘角度增量的加权平方和。
在最小化目标函数的同时
[190]
MPC还确保方向盘角度和汽车位置保持在规定的范围内。这些被称为约束。
[198]
例如,方向盘转动的程度有限制。另一个限制因素是汽车的位置。
[207]
为了防止发生事故,汽车应该留在车道内而不是离开公路。
[214]
在当前时间步,MPC控制器正在解决预测范围内的优化问题
[221]
同时满足约束。具有最小J的预测路径给出了最优解,
[229]
由此确定最佳方向盘角度序列,使汽车尽可能接近参考信号。
[238]
在当前时间步,MPC仅将该最佳序列的第一步应用于汽车并忽略其余部分。
[248]
基于采用的方向盘角度,汽车行驶一段距离。在下一个时间步,控制器获得新的
[257]
汽车横向位置的测量值。它可能与MPC控制器之前预测的略有不同。
[265]
这可能是由于一些无法测量的干扰作用于汽车。例如,它可能是风或路面湿滑。
[274]
现在预测范围向前移动一个时间步,控制器重复相同的计算周期,以计算
[288]
由于预测范围的前向移动性质,MPC也被称为滚动时域控制。
[296]
在这里,我们使用汽车示例讨论了MPC的工作原理,但在教科书中,您将找到用于MPC的通用术语。
[305]
例如,由控制器计算并发送到被控对象的信号称为操纵变量,
[317]
您可能还会在反馈图中注意到状态估算器。在汽车的例子中,我们假设汽车的横向位置可以
[324]
被测量。但是如果你不能直接测量系统的状态,可以通过状态估计器估计它们并反馈给
[332]
MPC控制器。要了解有关状态估算器的更多信息,请查看有关卡尔曼滤波器的Controls Tech Talk系列。
[341]
在本视频中,我们使用汽车示例演示了MPC如何使用汽车模型和优化器来调整方向盘角度
[350]
使汽车遵循期望的参考信号。在下一个视频中,我们将讨论MPC设计参数
[356]
比如:控制器采样时间,预测和控制范围,约束和权重等参数。