2. 预测控制基础
模型预测控制(Model Predictive Control,MPC)之所以能在化工、电力、汽车、机器人等领域广泛应用,核心在于它把“预测—优化—校正”三件事组织成了一个可在线反复执行的闭环机制。理解 MPC,不能只记住“滚动优化”四个字,而要看清预测模型如何提供未来轨迹、代价函数如何把控制目标变成数学问题、反馈校正如何弥补模型误差,以及离散状态空间与传递函数模型各自适合什么场景。
一、MPC 的三大支柱:预测模型、滚动优化、反馈校正
MPC 的第一个支柱是预测模型。它不要求模型绝对精确,但必须能够根据当前状态和未来控制输入,推算出未来若干步的系统输出。常见形式包括离散状态空间模型、传递函数模型、阶跃响应模型等。预测模型的作用是“向前看”:在每一个采样时刻,基于当前测量值,预测未来 N 步的输出轨迹。
第二个支柱是滚动优化。MPC 不会一次性算出整个运行周期的控制序列,而是在每个采样时刻求解一个有限时域优化问题,得到未来 M 步的控制增量或控制量,但只实施第一步。到下一个采样时刻,用新的测量值重新预测、重新优化。这种“走一步、看多步、再重算”的方式,使控制器具备在线调整能力。
第三个支柱是反馈校正。由于模型失配、外部扰动和测量噪声,预测输出与实际输出之间必然存在偏差。MPC 通常用当前时刻的预测误差对未来的预测轨迹进行修正,或者直接以当前测量值作为新一轮预测的初始状态。反馈校正让 MPC 不是“开环预测”,而是真正闭环的预测控制。
一句话理解 MPC:用模型预测未来,用优化求解控制,用反馈修正偏差,只执行第一步,然后重复整个过程。
二、预测模型:离散状态空间与传递函数模型
MPC 的预测模型通常采用离散形式,因为控制器在每个采样周期计算一次。最常用的两类模型是离散状态空间模型和传递函数模型。
离散状态空间模型适合多输入多输出系统,能够直接描述内部状态、输入和输出之间的关系。其标准形式为:
x(k+1) = A x(k) + B u(k)
y(k) = C x(k) + D u(k)
其中,x 为状态向量,u 为控制输入,y 为输出,A、B、C、D 为离散系统矩阵。MPC 利用该模型递推未来状态和输出,并把状态约束、输入约束、输出约束统一写入优化问题。状态空间模型的优势是结构清晰、便于处理多变量耦合和状态约束,适合现代控制理论和工业 MPC 软件实现。
传递函数模型则更适合单输入单输出或弱耦合系统,尤其在过程控制中常见。离散传递函数通常写成:
b0 + b1 z^-1 + ... + bm z^-m
G(z) = --------------------------------
1 + a1 z^-1 + ... + an z^-n
传递函数模型直观反映输入输出动态,便于频域分析和参数辨识。但在多变量系统中,传递函数矩阵的耦合关系不如状态空间模型清晰,约束处理也更麻烦。因此,工程上常根据对象规模、变量耦合程度和控制器实现方式选择模型形式。
| 对比维度 | 离散状态空间模型 | 传递函数模型 |
|---|---|---|
| 适用对象 | 多输入多输出、强耦合系统 | 单输入单输出、弱耦合过程 |
| 内部状态 | 显式描述,便于状态约束 | 不显式描述,侧重输入输出关系 |
| 约束处理 | 输入、输出、状态约束统一处理 | 约束处理相对间接 |
| 参数辨识 | 子空间辨识、状态空间辨识 | 最小二乘、阶跃响应辨识 |
| 典型场景 | 机器人、飞行器、多变量化工过程 | 温度、液位、流量单回路过程 |
三、滚动优化:从代价函数到约束求解
滚动优化的核心是构造一个有限时域代价函数,并在约束条件下求解最优控制序列。典型代价函数由输出跟踪误差和控制增量加权组成:
J = Σ ||y(k+i|k) - r(k+i)||²_Q
+ Σ ||Δu(k+i|k)||²_R
其中,Q 和 R 分别是跟踪误差和控制增量的权重矩阵。Q 越大,控制器越强调快速跟踪设定值;R 越大,控制动作越平滑,但跟踪速度可能变慢。约束通常包括输入幅值、输入增量、输出范围和状态范围。求解完成后,MPC 只把第一个控制量 u(k) 作用于系统,下一时刻重新测量并重复优化。
整定提示:预测时域 N 过短会导致控制短视,过长会增加计算量;控制时域 M 通常小于 N,用于减少优化变量。Q/R 的比值决定跟踪速度与控制平滑度之间的平衡。
四、案例场景:温度控制中的 MPC 执行过程
假设一个加热炉温度控制系统,采样周期为 1 s,预测时域 N=20,控制时域 M=5。当前温度测量值为 180 ℃,设定值为 200 ℃。MPC 首先用离散状态空间模型预测未来 20 步温度轨迹;然后以跟踪误差和控制增量加权为代价函数,在加热功率 0~100% 的约束下求解未来 5 步的功率序列;最后只执行第一步功率值。下一采样时刻,温度测量值更新,预测误差被用于修正未来轨迹,再重新优化。
如果模型预测温度上升过快,而实际炉温上升较慢,反馈校正会把预测轨迹向下修正,避免控制器过早减小加热功率。反之,如果实际温度高于预测,校正会提前抑制加热,防止超调。这个过程每个采样周期都在重复,因此 MPC 对模型误差具有一定容忍度。
五、常见误区与复盘
- 误区一:把 MPC 当成一次性全局优化。MPC 是滚动时域优化,每个采样时刻只求解有限时域问题,并只执行第一步。
- 误区二:认为模型越精确越好。模型精度重要,但反馈校正和合理时域设计同样关键;过度追求复杂模型可能拖慢在线计算。
- 误区三:忽略约束可行性。如果约束设置过紧或互相冲突,优化问题可能无解。工程上需要设置软约束或松弛变量。
- 误区四:只调 Q 不调 R。Q 和 R 共同决定闭环响应,单独增大 Q 可能导致控制量剧烈变化,甚至触发执行机构饱和。
复盘要点:MPC 的稳定性与可行性依赖预测模型、时域长度、权重矩阵和约束设置。调试时应先确认模型能反映主要动态,再逐步调整 N、M、Q、R,并观察控制量是否平滑、输出是否超调、约束是否频繁触发。
掌握 MPC 的关键,是把预测模型、滚动优化和反馈校正看作一个整体:模型负责“看得远”,优化负责“选得优”,反馈负责“纠得准”。离散状态空间模型和传递函数模型则是实现这一机制的两类基础载体,选择哪一种,取决于对象特性、变量规模和工程实现条件。