K3-06 模型预测控制(MPC)在热管理中的应用
课程代码 K3-06 · 板块 K 控制、软件与标定 / K3 控制策略与算法 时长 约 4.0 小时(5 讲 + 1 次简化 MPC 问题搭建实操) 适合对象 控制工程师、仿真工程师(主修,预研方向选修课题);热管理域控软件架构师与算法预研负责人(主修);负责判「这个项目要不要上 MPC」的技术管理岗(选修,重点读第 1 讲与第 5 讲)。需已能整定一条 PID 环、能读懂状态空间形式、知道什么叫二次规划 前置 K3-05 PID/前馈/增益调度控制实战 PID/前馈/增益调度控制实战(θ_total 与 τ_plant 的合账方法与「调不动时往哪走」的判据,本课直接接在它第 7 讲的出口上);K3-10 热管理在线状态与负荷估计:观测器整定、软测量置信度与退出条件 热管理在线状态与负荷估计:观测器整定、软测量置信度与退出条件(不可测状态与不可测扰动的在线获取途径及其误差界——MPC 的鲁棒性上限由估计精度决定)。体系外前置(需自备):线性代数与最小二乘、离散时间系统与 Z 域基本概念、凸优化与二次规划的基本词汇(不要求会推 KKT 条件) 本讲义定位 讲师授课蓝本 / 学员自学讲义。本课是工程落地课,不是 MPC 理论课——不推稳定性证明、不推递归可行性定理、不推 KKT 与内点法。它只回答四件事:这个场景该不该上 MPC、模型骨架怎么搭、代价函数与约束怎么写、求解不出来时谁来兜底
按任务导航
| 你手上的事 | 直接看 | 还要配 |
|---|---|---|
| 领导说「上个 MPC 试试」,我要判该不该接 | 第 1 讲 1.4:三道前置筛,逐道给拦截判据 | 第 5 讲 5.1:四账对照与三档结论 |
| PID 调不动了,想知道下一步往哪走 | 第 1 讲 1.4 筛一:θ_total/τ_plant 比值(口径来自 K3-05 PID/前馈/增益调度控制实战) | 第 1 讲 1.3:MPC 买得到什么、买不到什么 |
| 两条环互相打架,有人说「上 MPC 就解耦了」 | 第 1 讲 1.4 筛二:先做通道配对与耦合强度评估 | 常见误区第 1 条:耦合不是只能靠 MPC 解 |
| 要搭一个电池预热的 MPC 模型骨架 | 第 2 讲 2.2 / 2.3:x/u/d/y 划分与二阶 RC 骨架 | 关键公式详解 · 公式一 |
| 环境温度、车速这些量该放哪一栏 | 第 2 讲 2.2:可测扰动 d 与不可测扰动 w 的分叉 | 第 5 讲 5.4:未来 d 轨迹从 K7-01 预测性热管理(导航/云端/驾驶意图协同) 来 |
| 状态测不到,只有估计值 | 第 2 讲 2.5:估计器接口三件套与约束收缩 | 图7:估计误差怎么吃掉硬约束裕度 |
| 代价函数的权重怎么调 | 第 3 讲 3.2:先归一化,再只调一个比值 | 第 3 讲 3.1:三项各改变轨迹的哪一处 |
| 阀开度下界该写 0 还是写别的 | 第 3 讲 3.3:u 的上下界取自执行器权限表 | 常见误区第 6 条:u_min 写 0 的连锁后果 |
| 优化器报「无可行解」,控制器直接不动了 | 第 3 讲 3.3 软约束段 + 3.5 可行性 | 第 4 讲 4.5:不可行时的三条兜底路径 |
| N_p 和 N_c 到底取多少 | 第 4 讲 4.2:三方夹逼,上下界各有物理来源 | 图10 与关键公式详解 · 公式五 |
| ECU 算不动,一到快充就丢帧 | 第 4 讲 4.3 / 4.4:求解预算与四条降算力折中 | 第 4 讲 4.4 末:定迭代上限的代价 |
| 要写功能安全的兜底论证 | 第 4 讲 4.5:限值保护层与求解器内约束是两件事 | 第 4 讲 4.6:横向隔离,输入不得取自优化器 |
| 要向项目组证明「上了 MPC 到底赚了多少」 | 第 5 讲 5.1 / 5.2:四账 + 收益拆分 A/B | 第 5 讲 5.3:必须上车的四个在线观测量 |
⛔ 本课不覆盖 · 栏一(不讲哪些题目,每样带去向):【控制方法本体】PID 结构形态、限幅三件套、整定式与整定路线、前馈设计、增益调度、无扰交接 → K3-05 PID/前馈/增益调度控制实战(本课是它第 7 讲的出口之一,⛔ 不重讲);通道配对、RGA 计算与耦合强度评估、解耦前馈的设计 → K3-14 多回路耦合识别与通道配对:谁控谁、耦合多强、抢控怎么查(它是本课前置筛二的属主,本课只调用它的结论、⛔ 不重推);模式表、迁移矩阵、双向执行器权限表、限值保护层的结构本体与横向隔离原则 → K3-01 整车热管理控制策略总览与模式管理(本课只说 MPC 的输出如何接进这条通道);稳态执行器需求生成与协同仲裁 → K3-08 冷却侧执行器需求生成与协同仲裁:电子水泵/冷却风扇/AGS;模式切换的时间轴编排 → K3-09 冷却液回路模式切换的执行时序:泵—阀联动、断流窗口与切换序列表;整车级能量最优的分层调度 → K3-07 能量最优的整车协调控制。【模型与估计】降阶方法本体、ROM 生成与验证、控制导向建模的一般方法学 → J7-02 模型降阶(ROM)与控制导向建模;一维系统仿真模型的搭建与标定 → J1-01 1D 热管理仿真导论(KULI/AMESim/GT/Flowmaster);数字孪生的融合架构与实时约束 → J7-04 整车热管理数字孪生与实时模型;观测器结构选型、Q/R 整定、残差带工况化、置信度分档与退出状态机 → K3-10 热管理在线状态与负荷估计:观测器整定、软测量置信度与退出条件(本课只取它的交付三件套并说明如何计入约束裕度);误差带到裕度的折算关系本体 → B4-04 整车能量管理与热管理的协同优化。【软件与安全】嵌入式任务架构、周期与抢占、WCET 与实时性论证 → K4-01 热管理嵌入式软件架构与 AUTOSAR 基础;Simulink 建模与代码生成、定点化 → K4-02 基于模型开发(MBD):Simulink 建模与代码生成;构型合法性与状态机可验证性 → K4-05 模式状态机的完备性核对与可验证性设计;降级等级体系与资源仲裁 → K5-02 热管理故障处理与降级策略;数据驱动件的「能力不足型」风险与预期功能安全论证方法学 → K2-05 预期功能安全(SOTIF/ISO 21448)与 AI 件安全论证在热管理的落法;控制器硬件与算力选型 → K2-01 热管理控制器(域控/ECU)硬件架构。【上游数值】电芯与部件的温度限值本体 → D1-01 动力电池产热机理与产热速率建模;执行器的死区、最小可控输出、降额线 → K1-02 执行器驱动:电子阀/泵/风扇/压缩机 PWM / G4-01 电子膨胀阀(EXV)结构、控制与选型 / G1-02 压缩机排量、转速控制与容调;快充场景的冷量分配与充电协商 → D4-03 充电过程温控策略与充电功率协同。【下游】外部预测信息源(导航/云端/驾驶意图)与预测性热管理的场景层 → K7-01 预测性热管理(导航/云端/驾驶意图协同)(分工见第 5 讲 5.4);黑箱形态的能效自学习 → K7-03 数据驱动的能效自学习控制;标定量规格与整定验收 → K6-01 热管理标定流程与工具(INCA/CANape) / K6-07 热泵与多模式切换标定;台架瞬态复现 → L2-04 冷却系统台架热性能试验:负载标定、散热能力与模式切换瞬态;工程收益的货币化与投资回收 → M3-05 工程收益的货币化与热管理投资回收决策:换算率来源、现金流折现与两种盈亏平衡口径。
⛔ 本课不覆盖 · 栏二(真正不给的数):① 任何权重矩阵的具体数值——W_y、W_Δu、W_N 的元素是平台相关的标定量,且它们只有比值有意义(第 3 讲 3.2 给的是归一化后的整定路线,不是数值);谁拿出一份「推荐的 MPC 权重」,那份东西一定不对应你的平台。② 目标 ECU 上的 QP 求解耗时——它由芯片、编译选项、求解器实现、问题规模四者共同决定,本课给的是量级区间与怎么量,⛔ 不给可以直接抄的数(第 4 讲 4.3)。③ 电芯温度上限与部件限值的数值——属主是 D1-01 动力电池产热机理与产热速率建模 与各部件规格书,本课只负责它在优化框架内的数学表达。④ 本课不引用任何标准条款的具体内容——功能安全相关的兜底要求只写去向,版次、部次以现行目录为准,引用前须核原文(说明见第 4 讲 4.5 末)。
⚠ 栏二之外的平台相关量(控制周期 T_s、预测时域 N_p、控制时域 N_c、约束收缩量、求解迭代上限、限值层介入率的告警阈值等)本课照给典型区间与常见值锚点,逐条标「⚠ 典型值、⛔ 不是验收依据,须实测确认」与拿到它的路。汇总表在第 1 讲 1.6。
引言:一次「上 MPC 也救不了」的快充预热
某纯电平台,冬季快充前电池预热。原方案是固定加热功率 + 一条 PID 环压电芯温度,标定阶段两头不讨好:功率给足,电芯最热点冲过上限触发保护回退,加热断断续续;功率给保守,到桩之后还要再等两三分钟才能开始大功率充电,用户抱怨「说好的预热白预热了」。
标定组调了三轮 PID,症状原地打转。预研组提出:这是典型的「有硬约束、有硬终点时刻、还有大热惯性」的场景,上 MPC。
项目组批了预研。三个月后的结论出乎所有人意料:MPC 版本在台架上确实更好——但把它拆开之后发现,绝大部分收益来自一件与 MPC 无关的事。
拆解是这样做的。把 MPC 相对原方案多出来的东西列成三样,逐样单独做一次 A/B:
- 前瞻——原方案的加热功率只看当前温差;MPC 用了「距离到桩还有多久」这条未来信息。单独把它加进原方案(做成一条按剩余时间调度的功率前馈),拿回了大部分的到达时间改善。
- 约束显式处理——MPC 把电芯温度上限写进优化问题,会提前减功率而不是撞上去再退。单独把它加进原方案(把保护阈值前面加一段按预测温升的提前减载),拿回了大部分的越界次数改善。
- 多变量协调——这个场景只有一个执行器(加热回路功率),协调项本来就没有可协调的东西,收益接近零。
三样加起来,原方案改造版拿到了 MPC 版八成以上的收益,而建模工时、ECU 算力占用、退出路径复杂度这三笔成本一分钱没花。
这门课要教的第一件事,就是这个拆解本身。它不是在劝退 MPC——恰恰相反,只有会做这个拆解的人,才说得清一个场景为什么值得上 MPC,也才拿得到项目预算。剩下的那不到两成收益,在有些平台上是可以忽略的,在另一些平台上(多热源、多约束同时活跃)它会放大成压倒性的差距。
⇒ 所以本课的顺序是:先教怎么把 MPC 挡在门外(第 1 讲),再教怎么把它做对(第 2~4 讲),最后回到怎么证明它值(第 5 讲)。
全课符号约定与两条跨课口径提醒
本课全程使用下表符号。⚠ 其中两条与其他课有交叉,必须先说清楚,否则读者会把两门课的量直接互代。
| 符号 | 含义 | 单位 | 口径归属 |
|---|---|---|---|
| x[k] | 状态向量(第 k 拍) | 各分量随物理量 | 本课定义,见第 2 讲 2.2 |
| u[k] | 控制输入向量(执行器指令) | 各分量随执行器 | 本课定义 |
| Δu[k] | 控制增量,Δu[k] = u[k] − u[k−1] | 同 u | 本课定义 |
| d[k] | 可测扰动向量(环境温度、车速、充电功率请求等) | 各分量随物理量 | 本课定义 |
| w[k] | 不可测扰动与模型失配的合并项 | 同 x 的量纲 | 本课定义 |
| y[k] | 被控输出(受控量) | 各分量随物理量 | 本课定义 |
| A, B, E, C | 离散状态空间的四个矩阵 | 无量纲/复合 | 本课定义,见公式一 |
| N_p | 预测时域(步数) | 拍 | 本课定义,见第 4 讲 |
| N_c | 控制时域(步数),N_c ≤ N_p | 拍 | 本课定义 |
| T_s | MPC 的控制周期(一拍的时长) | s | 本课定义 |
| J | 代价函数值 | 无量纲(归一化后) | 本课定义,见公式二 |
| W_y | 跟踪误差项的权重矩阵 | 无量纲(归一化后) | 本课定义,⚠ 见下方提醒① |
| W_Δu | 控制增量惩罚项的权重矩阵 | 无量纲(归一化后) | 本课定义,⚠ 见下方提醒① |
| W_N | 终端代价的权重矩阵 | 无量纲(归一化后) | 本课定义 |
| ε | 软约束的松弛变量(非负) | 同被松弛量 | 本课定义,见第 3 讲 3.3 |
| ρ | 松弛变量的惩罚权重 | 复合 | 本课定义 |
| σ_est | 估计误差的标准差(或误差带半宽) | 同被估计量 | 取自 K3-10 热管理在线状态与负荷估计:观测器整定、软测量置信度与退出条件 的残差带,⚠ 见下方提醒② |
| θ_total | 环路的纯滞后总账 | s | 逐字复用 K3-05 PID/前馈/增益调度控制实战 的口径 |
| τ_plant | 被控对象的主导时间常数 | s | 逐字复用 K3-05 PID/前馈/增益调度控制实战 的口径 |
⚠ 跨课口径提醒①:本课的 W_y / W_Δu,与 K3-10 热管理在线状态与负荷估计:观测器整定、软测量置信度与退出条件 的 Q / R 不是一回事
MPC 的公开文献里,代价函数的两个权重矩阵几乎总是写成 Q 与 R。而本课程体系里 K3-10 热管理在线状态与负荷估计:观测器整定、软测量置信度与退出条件 已经把 Q 与 R 用掉了——在那门课里它们是卡尔曼滤波的过程噪声协方差与量测噪声协方差,是估计器的整定量,由「长静置段实测」与「可接受的跟踪滞后反推」两条路得到。
两者形式上都是对称正定矩阵、都出现在一个二次型里、都靠调它们的比值起作用,而含义完全不同:
| K3-10 热管理在线状态与负荷估计:观测器整定、软测量置信度与退出条件 的 Q / R | 本课的 W_y / W_Δu | |
|---|---|---|
| 是什么 | 噪声的统计描述 | 设计者的偏好陈述 |
| 从哪来 | 从实测数据量出来(R)、按可接受滞后反推(Q) | 由「多目标之间怎么折中」这个工程决定给出 |
| 调大 R 的后果 | 更不信量测,估计更平滑、更滞后 | ——(本课无 R) |
| 调大 W_Δu 的后果 | ——(那门课无 W_Δu) | 执行器动作更柔和,跟踪更慢 |
| 有没有「正确值」 | 有参考——它对应真实的噪声统计 | 没有——它只反映你想要什么 |
⇒ 本课因此改用 W_y / W_Δu / W_N 这套记号,⛔ 不用 Q / R。读外部文献时请自行做一次映射:文献里的 Q ↔ 本课 W_y,文献里的 R ↔ 本课 W_Δu(⚠ 有些文献的 R 惩罚的是 u 本身而不是 Δu,这是第三种口径,读到时要看清它到底写的是 u 还是 Δu——本课一律惩罚 Δu,理由在第 3 讲 3.1)。
⛔ 这两套量绝不许互代。一个真实会发生的错法是:估计器整定得到一组「好用的 Q/R」,写 MPC 时顺手把同一组数填进代价函数——它们连量纲都不一样,填进去之后 MPC 的表现是随机的,而且没有任何一处会报错。
⚠ 跨课口径提醒②:σ_est 是从 K3-10 热管理在线状态与负荷估计:观测器整定、软测量置信度与退出条件 拿来的,本课只用它、不产它
本课第 2 讲 2.5 要用估计误差带把硬约束收缩一圈。那个 σ_est 不是本课算的——它是 K3-10 热管理在线状态与负荷估计:观测器整定、软测量置信度与退出条件 交付的残差带(并且是随工况变的,不是一个常数)。本课的责任只有两条:把它要过来,以及把它算进约束里。⛔ 本课不重讲残差带怎么整定,也不重讲置信度怎么分档。
而误差带折算成裕度的一般关系(不止用于 MPC),属主是 B4-04 整车能量管理与热管理的协同优化,本课只做 MPC 场景下的具体落法。
第 1 讲 MPC 解决什么问题,以及上之前的三道前置筛
本讲交付两件:① 一句能对项目组说清楚的「MPC 到底买到了什么」——三样,且只有三样;② 一张三道前置筛的决策流,每道筛给出可判真假的拦截判据。本讲不交付:MPC 的稳定性与可行性理论(本课全程不推)、RGA 与通道配对的算法(属主 K3-14 多回路耦合识别与通道配对:谁控谁、耦合多强、抢控怎么查)、PID 整定方法(属主 K3-05 PID/前馈/增益调度控制实战)。
1.1 先把 PID 的信息面画出来:它到底看得见什么
要说清 MPC 解决什么问题,得先说清 PID 看不见什么。把一条 PID 环在 k 拍能用到的信息摊开:
| 项 | 用到的信息 | 时间方向 |
|---|---|---|
| 比例项 | 当前误差 e[k] | 现在 |
| 积分项 | 误差的历史累积 | 过去 |
| 微分项 | 误差的变化率(近几拍的差分) | 过去到现在的斜率 |
| 前馈项(若有) | 当前可测扰动 d[k] | 现在 |
⇒ 一条完整的 PID+前馈,用到的全部信息都在「现在及以前」。它对「如果我现在这么动,三十秒后系统会到哪」这件事没有任何表示——它是靠反馈闭环,把这件事交给物理世界去回答,然后再修正。
这个结构在两类场景下会失效,而且失效方式不同:
失效方式一:来不及。环路的纯滞后 θ_total 很大时,误差出现在传感器上的那一刻,导致它的那个动作已经发生在 θ_total 之前。PID 此刻做的任何修正,还要再过 θ_total 才看得见效果。这是 K3-05 PID/前馈/增益调度控制实战 第 2 讲那本延迟总账要合的原因——θ_total 与 τ_plant 的比值接近或超过 1 时,任何整定都只是在振荡与迟钝之间换位置。
失效方式二:撞上去才知道。被控量有硬上限(电芯温度)时,PID 只有在温度已经接近上限、误差已经变号之后才会减小输出。而热惯性意味着此刻回路里已经存了一批还没释放出来的热——温度会继续往上冲一段。这就是引言里那个「冲过上限触发保护回退」的机制。事后加钳位、加保护阈值可以让它不越界,但代价是牺牲了逼近上限的能力:为了不冲过去,只能把工作点压得离上限远一些,那段裕度就是白白让掉的性能。
1.2 MPC 的核心机制:滚动时域优化,只执行第一步
MPC 每一拍做三件事,顺序固定:
- 预测——用一个模型,从当前状态 x[k] 出发,算出「未来 N_p 步的输出会怎么走」,这个走法取决于我打算下发的那串控制序列 u[k], u[k+1], …, u[k+N_c−1]。
- 优化——在满足所有约束的前提下,找一串使代价函数 J 最小的控制序列。
- 只执行第一步——把 u[k] 发下去,后面那 N_c−1 步全部丢掉;下一拍拿到新的 x[k+1],整个过程重做一遍。
第 3 步是最反直觉、也最关键的一步。算了 N_c 步只用一步,剩下的全扔掉,看起来是巨大的浪费——而它恰恰是 MPC 之所以是「控制」而不是「开环规划」的原因。
理由是:那串被丢掉的序列,是在「模型完全正确、扰动完全按预测走」这个假设下算出来的最优解。而这个假设一定不成立——模型有失配、有不可测扰动 w。如果照着那串序列一路执行下去,误差会一步步累积,且没有任何机制去修正它,这就是开环。而每拍重新用实测的 x[k+1] 重算一遍,等于每拍都把真实世界的反馈重新注入一次。反馈就是从这里进来的。
⇒ 一句话记住:滚动时域优化 = 有限时域的开环最优 + 每拍重做一次。前半句给了前瞻能力,后半句给了反馈能力。
1.3 MPC 买到的是三样东西,⛔ 只有三样
要判「值不值得上」,先得知道花钱买的是什么。MPC 相对一条整定良好的 PID+前馈+增益调度,多出来的能力只有三样:
① 显式约束处理。约束不是事后钳位,是写进优化问题里的一行不等式。优化器在选控制序列时就知道「这么走会在第 12 步撞上限」,于是提前几步就把动作收敛下来。收益是:可以把稳态工作点贴着约束跑,而不必留一大段裕度。约束越是「常态活跃」,这一项的价值越大。
② 前瞻(对未来扰动与未来目标的利用)。如果未来的 d 轨迹是已知的——环境温度的短期外推、导航给的爬坡段、充电协议协商出来的功率曲线、「距离到桩还有 8 分钟」——MPC 可以把它整段吃进预测里,提前动作。⚠ 这一项不是 MPC 独有的:一条按未来信息设计的前馈同样能拿到它的大部分,这正是引言那个拆解里最大的一块。它的属主在场景层是 K7-01 预测性热管理(导航/云端/驾驶意图协同)。
③ 多变量协调。MPC 一次求解所有执行器的指令,回路之间的耦合是被内生处理的——不需要先解耦、再各配一条环。执行器越多、耦合越强、越难找到干净的配对方案,这一项越值钱。反过来,单输入单输出的场景,这一项价值为零(引言那个例子)。
⛔ 与之对称,把 MPC 买不到的四样也写下来,因为它们是最常见的过高期待:
- ⛔ 买不到可观性与可控性。一个装不了传感器又估不出来的状态,MPC 也不知道它在哪;一个执行器权限压根推不到的目标,MPC 求出来的仍然是「推不到」。这两件事在上 MPC 之前就已经定死了。
- ⛔ 买不到「不需要模型」。MPC 的全部前瞻能力都建立在模型上。模型错了,它的「最优解」会比 PID 更差——因为 PID 至少不会自信地朝一个错误的预测走过去。
- ⛔ 买不到限值保护。写在优化问题里的 u_min ≤ u ≤ u_max 与限值保护层是两件事,这是第 4 讲的第二根钉子,也是全课最容易读错的一条。
- ⛔ 买不到标定工作量的减少。PID 要调三个参数,MPC 要定模型参数、权重比、时域长度、约束裕度、松弛惩罚、退出条件——标定量只会更多,只是它们更有物理含义、更好解释。
1.4 三道前置筛:过不去的那些场景,一道也进不了 MPC 的地盘
⭐ 这是本讲最该被带走的东西。把 1.3 的三样能力倒过来,就得到三道筛——一个场景只有把三道筛全部走完,才轮到讨论 MPC。
筛一(能力筛):这条环,PID 是不是真的调不动了?
判据直接沿用 K3-05 PID/前馈/增益调度控制实战 的合账结果:合出 θ_total 与 τ_plant,读它们的比值。⚠ 口径必须逐字照那门课来——θ_total 只收纯滞后以及可以折成等效纯滞后的小时间常数,被控对象的主时间常数 τ_plant 进分母、⛔ 不进分子。这一条的常见错法在那门课里叫「方向 C」:把热惯性 τ_thermal 也算进 θ_total,于是把一条本来很好调的环算成「比值接近 1、无解」,直接申请移交 MPC——方向完全做反、成本白付。
- 比值明显小于 1 且没有约束/耦合问题 ⇒ 拦截。这条环该做的是把 PID 调好,不是换算法。
- 比值接近或超过 1 ⇒ 还有两条比 MPC 便宜的出路要先试:前馈(把扰动的影响在它进入被控量之前抵消掉,绕过滞后)与迟延补偿结构。这两条也在 K3-05 PID/前馈/增益调度控制实战 的射程里。
- 两条都试过还不行 ⇒ 过筛一。
筛二(结构筛):这个耦合,是不是只能靠 MPC 解?
⭐ 这一道是最容易被跳过、也是拦下最多项目的一道。多回路互相打架时,「上 MPC 就解耦了」是一句极常见的话,而它把一个成本低得多的选项整个跳过了:
先做通道配对与耦合强度评估(属主 K3-14 多回路耦合识别与通道配对:谁控谁、耦合多强、抢控怎么查,本课只调用结论、⛔ 不重推 RGA 的算法)。这一步回答的是「哪个执行器该管哪个被控量」以及「配错了会有多糟」。
- 若评估结果显示存在一个可接受的配对方案(即:按这个配法,各通道之间的相互影响弱到可以当扰动处理)⇒ 拦截。多数这类场景,用「正确配对 + 一条解耦前馈」就能收敛,⛔ 不必付建模与算力的代价。
- 若不存在可接受的配对(任何配法都会导致某条环的增益方向随工况变号,或者相互影响强到无法当扰动看)⇒ 过筛二。这才是多变量协调这一项真正值钱的场景。
⇒ 这道筛背后是一句要写进设计评审的话:耦合不是只能靠 MPC 解。它是「是否值得上 MPC」的前置判据,不是 MPC 的适应症。
筛三(约束筛):约束是常态活跃,还是偶发活跃?
问一个可以量出来的问题:在代表性工况循环里,各条约束处于「活跃」(即:它确实在限制控制器的动作)状态的时间占比是多少?同时有几条约束活跃?
- 约束一年活跃几次、且每次只有一条 ⇒ 拦截。这种情况下,「PID + 一段保护性钳位 + 限值保护层」是更合适的结构,因为约束几乎不影响正常工况的性能,而 MPC 那套显式约束处理的价值全在「贴着约束跑」上。
- 约束在正常工况里就频繁活跃,或者多条约束同时活跃、彼此还会互相挤(例如快充时:电芯温度上限、加热/冷却功率上限、整车可分配功率上限、压缩机排温降额线,四条同时在压)⇒ 过筛三。多条约束同时活跃时,人工写钳位逻辑会迅速失控——组合数爆炸,且每加一条新约束都要重新评审所有组合。这是 MPC 最硬的适应症。
1.5 三类典型候选场景:逐个说清它凭什么过了三道筛
⚠ 下面三类是行业里被反复讨论的 MPC 候选场景。列它们的目的不是给一张「这些场景就该上 MPC」的清单——而是逐个拆开,示范三道筛怎么用。
候选一:电池预热 / 预冷(有硬终点时刻的那一类)
- 筛一:电池包热惯性极大,而加热回路从功率指令到电芯最热点温升之间串着「加热器响应 + 冷却液输运 + 包内传热」三段,θ_total 在这条链上不小。⚠ 但要注意,包内传热那一段多半应当计入 τ_plant 而不是 θ_total(见筛一的口径提醒)。多数平台上这条环比值不算大 ⇒ 筛一常常拦得住。
- 筛二:单执行器(加热功率)或双执行器(加热功率 + 流量分配),耦合弱 ⇒ 筛二也常常拦得住。
- 筛三:电芯温度上限 + 加热功率上限 + 有一个硬终点时刻(到桩时刻)。⚠ 「有终点时刻」严格说不是约束,而是终端代价——这正是引言那个例子里,一条按剩余时间调度的前馈能拿走大部分收益的原因。
- ⇒ 结论:这一类多数情况下不该上 MPC,除非平台上同时存在多路热源竞争(那就变成候选三了)。引言那个案例的真实结论就是这一条。
候选二:快充温控
- 筛一:与候选一同源,比值本身不是决定因素。
- 筛二:快充时通常有多个执行器同时在动(压缩机、Chiller 侧流量、电池回路泵、可能还有座舱侧分流),且它们共用同一套冷量供给 ⇒ 耦合强,配对未必找得到。
- 筛三:⭐ 这一道决定性地过了——电芯温度上限、充电功率协商上限、压缩机排温降额、整车可分配功率,四条约束在大功率段同时活跃且互相挤。人工钳位逻辑在这里会迅速变成一张没人敢改的组合表。
- ⇒ 结论:这是 MPC 最硬的适应症之一。收益主要来自「显式约束处理」这一项。
候选三:多热源 / 多用户的热量分配
- 筛一:不是决定因素。
- 筛二:⭐ 决定性地过了——多个热源(电驱、电池、乘员舱、余热回收)竞争同一批换热能力与同一批执行器,配对方案随工况变(同一个阀在不同模式下服务不同的被控量),静态配对表在模式边界处会失效。
- 筛三:约束多且随模式切换而变。
- ⇒ 结论:MPC 适用,收益主要来自「多变量协调」这一项。⚠ 但它也是建模成本最高、退出路径最复杂的一类——第 5 讲的四账在这里最容易算成负数。
1.6 本课平台相关量汇总表
⚠ 下表所有数值均为典型区间与常见值锚点。⛔ 它们不是验收依据,须在本平台上实测确认。每一行给出「拿到它的路」,这一栏比数值本身更重要。
| 量 | 典型区间 | 常见值锚点 | 拿到它的路 |
|---|---|---|---|
| MPC 控制周期 T_s(温度类慢环) | 0.2 ~ 5 s | 1 s | 由 τ_plant 与执行器速率限反推(第 4 讲 4.1),再受 ECU 任务周期栅格约束(K4-01 热管理嵌入式软件架构与 AUTOSAR 基础) |
| 预测时域 N_p | 10 ~ 60 拍 | 20 ~ 30 拍 | 下限由 θ_total + τ_plant 定,上限由模型可信预测视界与算力定(第 4 讲 4.2) |
| 控制时域 N_c | 1 ~ 5 拍 | 2 ~ 3 拍 | 从 1 开始加,加到性能不再改善为止(第 4 讲 4.2) |
| N_p·T_s(预测视界的物理时长) | 30 s ~ 10 min | 3 ~ 5 min(电池类慢环) | 由被控对象的主导响应时间定,须覆盖 θ_total + (1~2)·τ_plant |
| 约束收缩量(安全裕度) | σ_est 的 1 ~ 3 倍 | 2σ_est | σ_est 由 K3-10 热管理在线状态与负荷估计:观测器整定、软测量置信度与退出条件 交付,折算关系本体见 B4-04 整车能量管理与热管理的协同优化(第 2 讲 2.5) |
| QP 单次求解耗时占 T_s 的比例 | 5% ~ 30% | ≤ 20% | ⛔ 只能在目标 ECU 上跑最坏工况实测(第 4 讲 4.3) |
| 求解迭代次数上限 | 5 ~ 50 次 | 20 次 | 由 WCET 预算倒推,须与 K4-01 热管理嵌入式软件架构与 AUTOSAR 基础 的任务预算一起定 |
| 松弛变量激活率(正常工况) | < 1% ~ 5% | < 2% | 上车观测量之一,超阈值说明约束设置或模型有问题(第 5 讲 5.3) |
| 限值保护层介入率告警阈值 | 平台相关 | —— | 由 K3-01 整车热管理控制策略总览与模式管理 的限值通道定义,本课只要求它必须被观测 |
本讲小结:MPC 换掉的是 PID 的信息面——把「未来 N_p 步会到哪」显式算出来,滚动重算提供反馈。它买到的只有三样:显式约束处理、前瞻、多变量协调;买不到可观/可控、买不到「不需要模型」、买不到限值保护、买不到标定省事。因此有三道前置筛:能力筛(θ_total/τ_plant,口径来自 K3-05 PID/前馈/增益调度控制实战)、结构筛(通道配对,属主 K3-14 多回路耦合识别与通道配对:谁控谁、耦合多强、抢控怎么查)、约束筛(活跃度与同时活跃条数)。三道筛全过不去的场景一律拦截。三类典型候选逐个拆开之后,电池预热多数该被前两道筛拦下,快充温控靠筛三过关,多热源分配靠筛二过关——它们过关的理由各不相同,因而收益来源也各不相同,这直接决定第 5 讲怎么算账。
后面还有 4 讲正文 · 关键公式 · 案例拆解 · 常见误区 · 动手做