K3-01 整车热管理控制策略总览与模式管理
课程代码 K3-01 · 板块 K 控制、软件与标定 / 控制策略与算法 时长 约 4.0 小时(5 讲) 前置 推荐先读(非硬前置):K2-01 热管理控制器(域控/ECU)硬件架构——第 1 节已自带前指,本课讲软件/逻辑层;推荐先读(非硬前置):B2-03 纯电(BEV)整车热管理架构设计——本课框架跨动力形式通用,BEV 只是主例;体系外前置(需自备):有限状态机/自动机基础概念 本讲义定位 讲师授课蓝本 / 学员自学讲义,是 K3-01 大纲的完整展开版
引言:模式不是一个名字,优先级不是一份产能
整车热管理从来不是一堆独立环路各管各的。座舱、电池、电驱、智能电子这几个用冷用热的主体,共用的却是少数几件供能与散热部件:一台压缩机、在多条支路之间分流的电子水泵、被多方争用的低温散热器,以及同一股前端迎面风。它们的需求经常同时到达,而供给不够。现场最常听到的三类抱怨都落在同一层:快充时座舱不凉、模式在两个状态之间来回跳、总线上看到的反馈跟下发的目标值对不上。本课不解某一个回路的具体题,它建立的是 K3 后续各门课共用的框架语言——分层控制架构、模式表与状态机、仲裁优先级、切换稳定性、与整车其他域的接口契约。
全课反复敲两根钉子。第一根:优先级表只决定谁先分;有多少可分由供给侧 Q_avail(t) 定;两路目标能不能同时达成,还要再过一道可达域校核。排序层、标量能量层、多维可行集层,这仲裁三层缺一不可——缺任何一层,"资源不足时怎么降级"就只能靠经验挑(第 1、3、5 讲落地)。⚠ 这里先钉死一个贯穿全课的同音异义:本课裸称「三层」一律指架构三层(策略层/协调层/执行层,第 1 讲);仲裁的这三层一律写全称「仲裁三层」。两者不是一件事——架构三层说的是「谁定什么」,仲裁三层说的是「一次分配要过哪三道判据」;第 3 讲开篇会再交代一次。第二根:模式是一张可穷举的执行器目标状态映射表加一张迁移矩阵,不是一个名字。只要模式还停在"快充模式""舒适模式"这类名词上,就没有任何东西可核对;落成表之后,互斥与禁止组合才谈得上被静态检出、每条迁移才谈得上派生出用例。而其中最狠的一句判断是:规则表里从没写进去的组合,动态测试根本测不出来(第 2、4 讲落地)。
还有一句几乎人人会读反的话,先在开头拆掉:"策略层是老大,它下发的目标值就是执行层的动作"。方向是反的——最终动作是上层目标、部件本地自治、横切的限值保护三者取严之后的结果。它危险的地方在于大多数时候确实成立,偏偏在高温、降额、快充这些最要紧的工况下悄悄失效;读反之后人会顺着"制冷不足"这个判断继续拉高请求,于是部件更热、本地自保护降得更狠、更不足,形成一个每一步单看都合乎逻辑的错误正反馈。第 1、3、5 讲会分别从机理、量化形态、接口形态三个视角各敲一次。
本课的三条边界也在这里说死,免得被误读成漏讲。①讲软件与逻辑层,不讲控制器硬件——芯片选型、总线通道数、功率驱动与继电器规格属硬件层,归 K2-01 热管理控制器(域控/ECU)硬件架构,本课只讲跑在它上面的逻辑;②讲"为自家车定义模式集",不讲反推他人车型——从公开证据判读非自研车型的模式表是另一类问题,结论必须带置信度标注,方法归 M5-03 标杆车热管理反推:从公开证据到带置信度的回路图与模式表,与本课以及同在"自家车定义"这一侧的 B3-04 热泵型整车热管理架构(多通阀一体化方案) 不是一件事;③讲通用语义,不重讲他课实例——本课是 K3 总纲,正文里会反复出现"本课只定通用语义、实例前指他课"的显式边界。总纲课最大的风险不是漏讲,而是被密集的前指诱导着把那几门课重讲一遍,结果两边都讲不透还互相矛盾。所以每一讲开头都会先写一句"本讲交付什么、不交付什么",读者也按这句话判断该不该先跳去前指课。
不懂有限状态机也能读:第 2 讲前半的"模式=一组执行器目标状态的映射表"不依赖任何形式化,是本课的入门锚;状态、迁移、守卫条件、迁移矩阵这四个词的工程含义在第 2 讲后半才引入;仲裁优先级与迟滞带设计要到第 3、4 讲才需要状态机与控制基础打底。
第 1 讲 分层架构:策略层下发的目标值不等于最终动作
热管理的分层架构图,几乎人人见过:上面策略层,中间协调层,下面执行层,箭头一路往下。这张图长得太像组织架构图了,于是读者会顺手读出一个结论——上级指挥下级,策略层下发的目标值就是执行层的动作。这一讲要做的第一件事,就是把这个结论掰过来:真正的最终动作,是「上层目标 × 部件本地自治 × 限值保护通道」三方取严之后的结果。这不是抠字眼,它决定了你在高温、降额、快充这些最要紧的工况下,会把系统往哪个方向调。
本讲交付三件:①层次归属——三层,加上三层之下那一层不听指令的「部件本地自治层」,再加一条竖着切过三层的限值保护通道;②三张能评审、能逐格核对的表——跨执行器功能分配矩阵、双向执行器权限表、BMS–TMS 功能分配矩阵;③两条会直接改设计的硬分工——同一被控量只允许一级做闭环限幅,以及限值路径与优化/学习路径必须横向隔离。本讲不交付:控制器的芯片选型、总线通道数、继电器规格(属硬件层,前指 K2-01 热管理控制器(域控/ECU)硬件架构,本课讲跑在它上面的软件与逻辑层);各部件保护阈值与降额线的判据本体(一律前指持有它的那门课,本讲只做域控视角的汇总与索引);报文层的量纲/分辨率/周期/新鲜度与超时兜底(前指 K2-02 CAN/LIN/CAN-FD 通信与整车 EEA 集成)。本课是 K3 总纲,前指密集——凡本课明说「只划界、只汇总出处」的地方都是刻意的边界,不是漏讲;读者据这句话决定要不要跳去前指的那门课。
1.1 三层之下还有一层不听指令的:部件本地自治层
先把三层的分工用一句话定死:策略层(整车/热管理域控)定「要什么」,协调层(子系统控制器)定「怎么分」,执行层(阀、泵、压缩机的驱动)定「怎么动」。绝大多数架构图画到这里就停了。但车上还有一层,本课统一称它部件本地自治层。它分两小类,而且这两小类必须分开说:
第一小类,有本地 MCU 的。LIN 智能泵内置转速闭环与过温降额;LIN 风门执行器内置位置控制与止点自学习;电动压缩机内置 IPM 与排温、过流保护。它们收到域控的目标值之后,是否照做、照做到什么程度,由它自己的本地逻辑先判一遍。
第二小类,没有 MCU、靠材料或机械本征特性自治的。陶瓷 PTC 的本征自限温——材料电阻随温升陡增,功率自己就掉下来了,这个过程不经任何控制器;蜡式节温器的机械滞回——石蜡受热膨胀推杆,开启与关闭走的是两条不重合的路径。电子节温器带加热丝,开启点可以被指令偏置,但蜡包本体那份滞回仍然是机械的。
为什么非要把它单列一层:它先于域控动作,而且不听域控——第二小类连「不听」都谈不上,它压根没有指令入口。这就是「下发目标值 ≠ 实际动作」的物理根源。不承认这一层,总线上看到的反馈就没法解释:你请求 6000 r/min,反馈稳在 4200,既不报故障也不响应加大请求,你会怀疑传感器、怀疑总线、怀疑标定,唯独想不到它是部件在自保护。
本讲对这一层不给任何数字:各部件的保护阈值与降额斜率是部件/平台相关量,须查该件 CTS(前指 B1-02 需求逐级分解:整车 VTS → 系统 SSTS → 零部件 与 G12-03 执行器硬件接口与电气规格)。本讲给的是一张三问清单,对每个执行器都要答:它有没有本地自治?自治的是哪个量?有没有指令入口、有没有状态回读?这张清单后面还要用——它就是执行器「可指令性」这条维度的来源。
两个易错点,第二个尤其贵:
① 把这一层当成「执行层的实现细节」。一旦这么归类,反馈异常就会被归因为传感器漂移或总线故障,越查越远,而真相在部件里。
② 把两小类混为一谈。第一小类还能通过 LIN/CAN 读到状态字与降额标志——这正是后面「仲裁输入必须含降额状态字」这条要求在工程上可行的前提;第二小类连状态都读不到,只能靠上游量间接推断(PTC 回路电流下降、节温器前后温差变化)。两者的处置完全不同:前者能进信号表、能被诊断,后者只能在设计阶段就把它的自治行为当作系统的一条约束接受下来。
现在把读反的后果说透,因为它会让人把对策做反。看到反馈转速上不去、出风不达标,最省力的判断是「制冷不足」,于是继续拉高转速请求,或者触发一次错误降级;请求拉高,部件更热,本地自保护降得更狠,于是更不足。这是一个由误解驱动的错误正反馈,而每一步单看都合乎逻辑——这也是它能活着上路的原因。正确的方向恰好相反:把「反馈跟不上」当成部件回传的能力信息,而不是加大请求的理由。这条纠正动作的量化形态(仲裁输入里必须有能力上限与自保护状态字)在第 3 讲交付,接口形态(上行回报哪三件、收到饱和标志后做哪三个动作)在第 5 讲交付;本讲只负责把机理立住。
1.2 限值保护层不是某一层,是竖着切过三层的一条通道
限值保护常被画成执行层里的一个模块,这是错位的。它横切三层,可以在任一层直接接管输出,越过正在跟踪设定点的那条闭环。它的输出语义是钳位——把值按住,而不是作为一个加权项参与求和。这个区分在第 3 讲还会被再用一次:优先级与权重排的是需求之间的次序,保护走的是这条横切通道,两者不在同一层。
为什么不能把保护塞进同一条闭环:闭环的目标函数是跟踪设定点,保护的目标函数是不越界,两者的目标与失效模式都不同。混在一起,结果是互相稀释——保护被权重摊薄(该按住的时候没按住),控制被保护频繁打断(该跟踪的时候在被打断),两头都不达标。
限值介入本身是一个状态迁移,不是故障。它有三个状态:正常 → 限值介入 → 恢复 → 正常。它的退出条件与迟滞,用第 4 讲的 ΔT_hys 与 t_dwell_min 同一套骨架来设计——也就是说,它不是「等故障复位」,而是有明确的、按迟滞与最小驻留设计出来的退出边。把它当故障,你就会等一个永远不会来的复位;把每次介入都报成 DTC,售后会被大量无效故障码淹没,真故障反而被埋掉。
限值判据的本体,本课一条都不重写,只给出处:压缩机 MOP/LOP 包络与高压切断见 G12-02 压力—温度联测与冷媒状态感知;转速四条边界与排温降额线见 G1-02 压缩机排量、转速控制与容调;四道防护闸见 G1-05 压缩机润滑、可靠性与湿压缩防护;蒸发器防冻结环见 G2-03 蒸发器设计与出风温度均匀性;chiller 冷侧下界见 G3-03 水—冷媒换热的过热度与均流控制;热泵包络四条边见 C3-02 热泵采暖原理与低温制热衰减。限值 map 的取值与标定来源见 K3-12 电池放电与回馈侧可用功率窗口:限值 map、热限功率与撑窗策略 与 K6-08 电驱与前端散热回路标定(BEV)。本课在这一格上交付的是结构判据——限值层的输出必须是钳位语义,以及下一节要讲的输入独立性。
顺带点破一个常见的替代方案,它是无效的:「把某一路的优先级设到最高就安全了」。优先级只排序、不保证配额,它既不能保证这一路拿到量,也不能在越界时把输出按住。安全靠的是这条横切的限值通道。还有一个反向的错:让驾驶模式这类场景输入去改写限值。场景输入只能动设定点与偏置,不得越过限值层——这条边界在第 5 讲讲 VCU 接口时会再用到。
1.3 保护路径独立性是同层内的横向隔离,与上下两级的分工是两件事
上一节讲的是限值通道竖着穿过三层。这一节讲的是它在同一软件层内与旁边那些聪明模块的关系,规则只有一条,但它是硬规则:限值层的输入量不得取自 MPC 求解结果,也不得取自自学习件的产出。限值层必须在优化器不收敛、超时,以及学习件跑偏时,仍然独立成立。
理由很直白:优化器与学习件都是「可能给出坏结果」的部件。保护判据若取自它们,保护与被保护对象就共用同一个失效源——优化器坏了,保护跟着一起坏,而保护存在的全部意义就是在别的东西坏了的时候还成立。
这条规则可以核对,不必靠评审时的印象:画一张限值层的信号来源图,每一个输入都必须能追到传感器或静态标定量;追到优化器输出或学习件输出的,就是违规。
易错点只有一个,但它很有说服力:把学习件产出的「更准的估计值」直接喂给限值层,理由是「更准所以更安全」。更准与更可靠是两回事,兜底路径要的是后者。功能安全侧的兜底要求前指 K3-06 模型预测控制(MPC)在热管理中的应用,最终输出上的护栏(u_final = clip 那一层)前指 K7-03 数据驱动的能效自学习控制。
1.4 同一被控量挂两个闭环限幅器,会造出没人核算过的极限环
这是分层里最贵的一种错,而且它常常以「双保险」的名义被写进代码。场景是这样:域控按排气温度做降额,压缩机转速上限往下压;同一时刻,压缩机内置保护也在按自己的排温门限自行降速。两级串联、各自闭环,于是出现过降—恢复—再降的往复:温度下来了,两级各自放开一点,温度又上去,两级又各自压下去。
机理要说清,因为它决定了对策:两级都闭环时,每一级都把对方的降额动作当成被控对象的响应,于是各自继续修正。这构成一个谁都没设计过、也没人核算过稳定性的串联环路。请注意它不是阈值抖动——阈值抖动是测量噪声在阈值附近来回翻转,这一条是两个控制器互相把对方当被控对象。第 4 讲讲的是模式状态与仲裁输出层面的切换失稳,而这一条属控制回路级的极限环,不在那一类里。这个区分必须当场记住:拿加宽迟滞带去治它,治不好,因为它根本不是阈值问题。
处置原则是一条硬分工,没有折中:同一被控量只允许一级做闭环限幅,另一级只做监视与上报。更一般地讲,强实时、强安全的内环下沉到部件,跨部件的资源仲裁上收到域控——这条判据在下面的功能分配矩阵里会被逐格用到。
两级的阈值差与降额斜率是部件/平台相关量,本讲不给数。要提醒的是它的暴露方式:这种振荡在单件台架上测不出来,需要两级同时在环(域控的降额逻辑 + 真实部件的内置保护)才复现。这意味着如果 HIL 里用的是不含内置保护的部件模型,它会一路顺利通过,直到整车上出现。
1.5 集中式还是分布式:三条互相矛盾的取舍轴,「谁能否决谁」两侧都要答
集中式=域控持有全局模式表与全部仲裁规则,子系统只执行;分布式=各子系统自持局部规则,域控只广播场景与预算。这个问题在架构评审上永远吵不出结论,因为它的取舍轴有三条,而且互相矛盾:
- 全局最优性——集中式占优,只有一处知道全部约束,才谈得上全局分配;
- 单点失效后的降级可用性——分布式占优,域控挂了各子系统还能各自维持基本功能;
- 总线负载与标定/变更成本——集中式改一处就够,分布式要多方联调,但集中式把所有信号都拉到一处,总线与任务负载又是它的账。
没有普适门槛。它取决于供应商分工与 E/E 架构代际,须按项目定。本课给判断轴,不给结论——真正能落地的做法是把它降到执行器粒度上逐格判,这就是下面交付物一的用途。
「谁能否决谁」这一问,必须在两侧都答,只答一侧等于没答。
BMS 侧落成下一节那张五行三列的矩阵。HVAC 控制器/座舱域侧要答三个问题:座舱设定温度与 AUTO 逻辑归谁持有?域控能不能压低座舱送风目标(也就是让座舱让出冷量)?压低之后由谁向用户呈现?座舱侧请求源仲裁与人机接管的细则前指 K3-16 座舱 HVAC 请求源仲裁与人机接管:安全强制、AUTO 退出/恢复与设定记忆,本课只答分工与否决权的归属。
易错点是把「谁能否决谁」留在会议纪要里。最典型的一幕:BMS 的功率限值与域控的模式请求互相以为对方会让,平时相安无事,直到某个高温快充工况两边同时不让——这时才发现从来没有人写下过谁优先。
1.6 BMS–TMS 功能分配矩阵:同一个量两边各算一份,就必须写偏差带
这是本讲第一张要交付的表,五行三列,逐格填满,不许留空:
| 量(逐行填) | 谁算(权威源) | 谁复核 | 失效时谁兜底 |
|---|---|---|---|
| 电池产热估计 | 项目裁定。两侧都算得出:BMS 有电流与内阻表,TMS 有回路模型 | 非权威侧按自己的方法算一份做交叉,超差按下述三档处置 | 须写明降级后用哪一份估计、允许的精度损失到什么程度 |
| 电池目标温度 | 项目裁定,且只能有一个权威源 | 复核方要判的是「目标温度是否落在温度限值内」 | 收不到目标温度时的默认值来源与保守方向须写死 |
| 温度限值 | 安全相关量,权威源须与限值保护层的输入口径一致 | 复核方只做监视与上报,不得改写 | 兜底值取保守侧,且必须能追到传感器或静态标定量 |
| 功率限值 | 项目裁定;优先级栈本身前指 B4-04 整车能量管理与热管理的协同优化,本课不重讲 | 复核方核对限值是否被越过 | 兜底走取严;限值 map 的标定来源前指 K3-12 电池放电与回馈侧可用功率窗口:限值 map、热限功率与撑窗策略 |
| 模式请求 | 请求方与执行方须分清:谁发请求、谁有权拒绝、拒绝如何回执 | 复核的是请求与当前限值是否自相矛盾 | 请求方失联时的默认行为须写明(这一格与第 3 讲的配额回收同源) |
为什么这张表非要有:BMS 有电流与内阻表,TMS 有回路模型,同一个「电池产热」两边都算得出,而且必然不相等。不约定权威源,就会出现两套目标温度互相打架,而两套都「有道理」,谁也说服不了谁。
允许偏差带的宽度是平台相关量,本讲不给数。本讲给的是超差处置的三种选择判据:
- 取严——安全相关量,两份取更保守的那一份;
- 报 DTC——可诊断但不立即危险,先记录、按原权威源继续跑;
- 降级——权威源本身失信(越差越大、或与另一侧长期背离),此时要动的是权威源资格,不是继续修正。
易错点是矩阵只写了「以 BMS 为准」,既没写偏差带宽,也没写超差怎么办。后果不是立刻出事,而是实车上两侧偏差缓慢拉大时,没有任何一方会报警——因为没人被要求比较。
1.7 交付物一(第 1 讲):跨执行器功能分配矩阵,把架构问题拆成可裁决的格子
把「集中还是分布」实例化到每一个执行器上:功能维六项(能力闭环/位置闭环/过温过流保护/降额/学习找零/诊断上报)× 归属维三项(部件本地/域控/双方各一层),逐个执行器填格。
判定原则就是 1.4 那条:强实时、强安全的内环下沉到部件;跨部件的资源仲裁必须上收到域控。照这条原则,LIN 智能泵的转速闭环与过温降额、LIN 风门执行器的位置控制与止点自学习、电动压缩机的 IPM 与排温过流保护,天然归部件本地;而「这台泵此刻该分到多少流量」「压缩机排量在电池与座舱之间怎么分」这类跨部件的问题,天然归域控——它们需要的信息不在任何单个部件里。
为什么落成矩阵就能裁决:因为「集中式 vs 分布式」被问成了整体问题,整体问题没有判据;落到执行器粒度、按功能维逐格判,每一格都有明确判据,争论就从立场之争变成可裁决的技术问题。执行器接口与电气规格前指 G12-03 执行器硬件接口与电气规格,驱动侧前指 K1-02 执行器驱动:电子阀/泵/风扇/压缩机 PWM。
易错点在「双方各一层」这一列:凡填了「双方各一层」而没写清谁闭环、谁只监视,那一格就是 1.4 那个极限环的温床。这一列必须与「同一被控量只允许一级做闭环限幅」逐格对齐检查——这是本讲两个交付物之间唯一的强制交叉核对。
1.8 交付物二(第 1 讲):双向执行器权限表,是本课唯一能把「能推到哪」写下来的载体
这张表由限值汇总表扩成,不另起一张。每个执行器固定四列,再加一列速率限:
| 列 | 填什么 | 注意 |
|---|---|---|
| 约束源 | 是哪个物理机理/哪条判据在给这个界 | 一个执行器可以有多个约束源,逐条列,不合并 |
| 上限或下限的计算式 | 只写出处,不重推 | 判据本体归持有它的那门课,本课不复制公式 |
| 更新周期 | 三类之一:静态标定量/随工况刷新量/随故障态刷新量 | 分类错了会缓存错值,见下面易错点② |
| 该列此刻是否在压制 | 运行时标志 | 它是 1.9 那条「谁在压」的数据来源 |
| 速率限 | 转速爬升与步数限幅(前指 K1-02 执行器驱动:电子阀/泵/风扇/压缩机 PWM) | 它与上下界一样是权限的一部分,不是舒适性调味料 |
下界列写的是最小可控输出与死区,上界列写的是最大出力与降额线。跨执行器的例子(各挂各自那一行,不要混):EXV 的最小可控开度与低开度死区前指 G4-01 电子膨胀阀(EXV)结构、控制与选型;最小启动占空比前指 K1-02 执行器驱动:电子阀/泵/风扇/压缩机 PWM;压缩机最低转速的回油下限前指 G1-02 压缩机排量、转速控制与容调;排温降额线前指 G1-02 压缩机排量、转速控制与容调;PTC 功率降额前指 C3-01 PTC 采暖系统设计与功率匹配;驱动结温降额前指 K1-02 执行器驱动:电子阀/泵/风扇/压缩机 PWM。
⚠ 这些是不同执行器各自的约束,不是同一行的约束源。把别的执行器的界搬进这一行,权限带就被算宽了,而由它合成出来的可达域会跟着算大——校核于是永远通过,等于白做。
至少补齐两行,作为写法样例:
高压 PTC——上界的约束源有四条:本征温度与干烧判据(前指 G9-03 加热器功率控制与温度保护)、母线电压区间与绝缘状态(前指 G9-01 高压 PTC 加热器结构与安全设计,绝缘电阻判据形如 R_iso ≥ k·U_dc,取值与 k 的定义前指 D5-03 电池包防潮、冷凝水与 IP 防护)、整车可分配功率上限(前指 K3-07 能量最优的整车协调控制;注意这是电侧预算,与热侧的可用能力量纲不同,不能混在同一栏里加减)、功率降额线(前指 C3-01 PTC 采暖系统设计与功率匹配)。
电子水泵——下界的约束源有三条:最小启动占空比(前指 K1-02 执行器驱动:电子阀/泵/风扇/压缩机 PWM);气蚀下限(NPSHa 的定义断面与取压口径按现行标准与 A2-02 泵与风机的工作点、特性曲线与匹配、A2-06 流体力学基础:连续性、伯努利与静压/动压/全压口径 的口径确认,系统定压点前指 G10-02 膨胀水壶/去气罐(degas)设计与排气,本课不重推);噪声与最低稳定转速(前指 C2-04 鼓风机与蜗壳设计:风量—噪声平衡,它在整车 NVH 账里的位置前指 B4-03 热管理对续航、NVH、成本的系统性影响)。上界的约束源是它自己的驱动结温降额(前指 K1-02 执行器驱动:电子阀/泵/风扇/压缩机 PWM)与整车可分配功率上限(前指 K3-07 能量最优的整车协调控制)。
为什么这张表值得单独当一个交付物:它是本课唯一能把「控制器到底能把被控量推到哪」写下来的载体。第 3 讲要做的可达域校核,正是由这张表的上下界、死区与速率限合成出来的;没有这张表,可达域校核只能停在口号上。所以填这张表时的每一次偷懒,都会在第 3 讲变成一次通不过的校核,或者更糟——一次假装通过的校核。
所有限值取值都是平台/部件相关量,一律不给数、只写出处——这正是「只写出处不重推」这一列的设计用意。两个易错点:
① 只填上限不填下限。最小可控输出与死区被忽略,于是仲裁分出一个执行器根本执行不了的小份额:份额发下去了,执行器停在死区里不动,而账面上这一路已经「分到了」。
② 不填更新周期。把随故障态刷新的限值当静态标定量缓存下来,故障恢复之后限值不释放——系统会带着一个早已失效的限制继续跑很久,且不报任何故障。
1.9 低选之后必须输出「是谁在压」,否则标定只能靠猜
多路限值(电池限值、部件保护、电气上限、故障降级)汇到一处做低选取小,这一步大家都会做。本讲要加的是一条输出要求:下行除最终允许值之外,必须同时输出当前压制者标识(active limiter ID)与它的裕量,并且作为标定观察量与售后追溯量,登记进信号表。
没有它会怎样:标定时看到转速上不去,只能靠猜——把几路限值一个个屏蔽了试,试出来的还未必是当前工况下真正在压的那一路;售后更查不清,因为「工况正常受限」与「传感器漂移误限」的现象一模一样,而这两件事的处置完全相反:前者不用动,后者要换件。
本课给出的一条设计要求(不是大纲既有判据,特此标明):压制者标识的枚举必须与限值来源一一对应。只给一个「受限/不受限」的布尔量不够,几路限值共用一个枚举值也不够——那等于把「谁在压」这个问题的答案又抹掉了一次。裕量同样要出:它告诉你这一路是刚刚够到界,还是被压得很深。
易错点只有一个,但它出现的频率很高:把它当成调试期临时加的 XCP 变量,量产件里去掉。于是所有能在开发期定位的问题都定位了,而售后现场永远查不清——恰恰售后现场才是最需要它的地方。
本讲小结:三层之下还有一层不听指令的部件本地自治层(含本地 MCU 的闭环与无 MCU 的本征/机械自治两小类,后者连状态都读不到),一条竖着切过三层的限值保护通道(钳位语义,介入不等于故障,输入不得取自优化器与学习件)。最终动作是三方取严的结果,不是上层下发的那个值。本讲的落地物是三张表:跨执行器功能分配矩阵(本讲交付物一,把集中/分布之争降到可裁决的格子)、双向执行器权限表(本讲交付物二,第 3 讲可达域校核的唯一输入)、BMS–TMS 功能分配矩阵(同一个量两边各算就必须写偏差带与超差处置)。⚠「交付物一/二」是讲内编号,第 5 讲另有自己的一套,跨讲引用必须带讲号;全课交付物的完整清点见「小结与课程衔接」。两条硬分工要背下来:同一被控量只允许一级闭环限幅;限值路径与优化/学习路径横向隔离。
后面还有 4 讲正文 · 关键公式 · 案例拆解 · 常见误区 · 动手做