三电与动力总成软件

三电与动力总成软件实战:BMS 电池管理架构与 SOC 安时积分和卡尔曼估算、SOH 评估与主被动均衡、VCU 整车控制与扭矩仲裁的层级设计、电机 FOC 矢量控制与弱磁高速区策略、GB/T 与 OCPP 充电协议栈,以及能量回收与热管理的协同控制。

引言

纯电车的动力系统由「三电」构成:电池(BMS)、电机(MCU 与逆变器)、电控(VCU)。这三个控制器构成一条紧密的控制链——驾驶员踩下踏板,VCU 解析意图并仲裁出扭矩需求,MCU 把它变成三相电流驱动电机,BMS 则随时监控电池能不能提供这么多功率。任何一个环节的估算偏差,都会直接表现为续航虚标、动力不足或充电异常。

三电软件的难点在于「物理量与控制量的强耦合」。电池的 SOC(荷电状态)无法直接测量,只能通过电流积分与电压观测估计,而估计精度受温度、老化、倍率影响;电机的扭矩在低速与高速区的控制策略完全不同,高速弱磁区稍有不慎就会失控;充电过程则是 BMS、充电桩、云端三方协议的协同,任何一方时序不对都会导致充电中断。

另一层约束是安全。扭矩输出是 ASIL C/D 级别的功能安全对象——错误的扭矩指令会导致意外加速;电池的热失控则是整车最严重的失效模式之一。所以三电软件在功能安全、诊断、故障降级上的要求,比座舱类软件高一个量级。

本文按「系统分工 → BMS 与 SOC/SOH → VCU 与扭矩仲裁 → 电机 FOC 与弱磁 → 充电协议 → 能量回收与热管理」展开。

目录

  1. 三电系统的软件分工
  2. BMS 架构与功能
  3. SOC 估算:安时积分、OCV 与卡尔曼
  4. SOH 评估与均衡管理
  5. VCU 整车控制与扭矩仲裁
  6. 电机控制:FOC 矢量控制
  7. 弱磁控制与高速区策略
  8. 充电协议:GB/T 与 OCPP
  9. 能量回收与热管理协同

1. 三电系统的软件分工

三个控制器各司其职,通过 CAN/CAN FD 交换数据:

BMS(电池管理系统)
  感知:单体电压、温度、总电流、绝缘电阻
  估算:SOC、SOH、SOP(可用功率)
  执行:继电器控制、均衡、热管理请求
  保护:过压/欠压/过温/过流/绝缘故障 → 切断高压
  ASIL:通常 ASIL C(过充保护可达 D)

MCU(电机控制器,含逆变器)
  执行:把扭矩指令转为三相 PWM,驱动电机
  感知:转子位置(旋变)、相电流、母线电压、IGBT 温度
  闭环:电流环(10 kHz)、速度环(1 kHz)
  保护:过流、过温、堵转、失步
  ASIL:ASIL C/D(扭矩输出是安全关键)

VCU(整车控制器)
  解析:加速踏板、制动踏板、挡位、驾驶模式
  仲裁:驾驶员需求 vs ADAS 需求 vs 稳定性需求 vs 部件能力
  管理:能量管理、模式切换、上下电时序、故障管理
  ASIL:ASIL C/D(扭矩仲裁是安全关键)

数据流:
  踏板 → VCU 仲裁 → 扭矩指令(E2E 保护)→ MCU → 电机
  BMS 实时广播可用充放电功率 → VCU 据此限制扭矩需求
  任一控制器报故障 → VCU 进入降级或安全状态

三者之间的通信走 CAN 总线与车载网络通信 ,安全关键的扭矩与功率报文必须加 E2E 保护(CRC + 计数器 + 数据 ID),防止通信干扰导致错误扭矩被执行。扭矩链路的端到端延迟要求通常在 20 到 50 ms 内,超过这个时间驾驶感受会明显迟滞。

2. BMS 架构与功能

BMS 采用主从架构,把高压采样与低压控制分离:

架构:
  BMU(从板 / 采样板)
    每板负责若干串电芯的电压采样与温度采样
    通过菊花链(daisy chain)或 CAN 与主板通信
    典型:一个 100 kWh 包有 96~108 串,3~6 个从板

  BCU(主板 / 控制板)
    汇总所有单体数据
    运行 SOC/SOH/SOP 算法
    控制继电器(主正、主负、预充、快充)
    与 VCU / 充电桩 / 云端通信

  高压安全部件:
    预充回路(限制上电瞬间的浪涌电流)
    绝缘监测(测量正负极对车身的绝缘电阻)
    碰撞信号输入(收到碰撞信号立即断高压)
    手动维修开关(MSD)

BMS 的功能可以分成四类:

类别功能关键指标
测量单体电压、温度、总电流、绝缘电压精度 ±5 mV,采样周期 10~100 ms
估算SOC、SOH、SOPSOC 误差 < 3%,SOP 不过保守
保护过压、欠压、过温、过流、绝缘响应时间与阈值分级
管理均衡、热管理请求、上下电时序均衡效率、温控精度

上下电时序是最容易出问题的地方。上电必须「先预充、后合主继电器」:直接合主继电器会让母线电容瞬间充电产生数百安培的浪涌,可能烧毁继电器触点。预充回路用限流电阻把母线电压充到接近电池电压后再合主继电器。下电则要先确认电机已停止、电流归零,再断继电器。时序错了轻则继电器粘连,重则高压拉弧。

绝缘监测是高压安全的底线:车身与高压系统之间必须保持足够的绝缘电阻(通常要求 > 100 Ω/V,即 400 V 系统要求 > 40 kΩ)。绝缘下降可能是线缆磨损、进水、异物侵入,必须及时告警并限制或切断高压。

3. SOC 估算:安时积分、OCV 与卡尔曼

SOC(State of Charge)是「剩余电量百分比」,它无法直接测量,只能估计。三种方法各有适用场景:

1. 安时积分(Coulomb Counting)
   SOC(t) = SOC(0) - (1/Qn) · ∫ η·I dt
   Qn 为额定容量,η 为库仑效率
   优点:实时、简单
   缺点:初值不确定;电流测量误差累积;库仑效率随温度/倍率变化
   → 单用必然漂移,几天就可能偏 5% 以上

2. 开路电压法(OCV)
   静置足够长时间后,开路电压与 SOC 有确定的对应关系
   SOC = f(OCV),f 为查表(含温度修正)
   优点:绝对准确(无累积误差)
   缺点:需要长时间静置(1~2 小时以上);
        磷酸铁锂的 OCV 曲线在 20%~80% 区间非常平坦,
        30 mV 的电压误差可能对应 20% 的 SOC 误差

3. 卡尔曼滤波(EKF)
   用等效电路模型(Thevenin / 一阶或二阶 RC)描述电池动态
   状态向量:x = [SOC, U1, U2](SOC + 极化电压)
   观测:端电压 U = OCV(SOC) - I·R0 - U1 - U2
   用 EKF 递推,同时校正 SOC 与极化电压
   优点:动态过程中也能收敛,抗测量噪声
   缺点:依赖模型参数(R0、R1、C1 随温度与老化变化)

工程上的实际做法是融合:

# SOC 估算融合策略(概念示例)
def estimate_soc(state, meas):
    if state.rest_time > 7200:          # 静置超过 2 小时
        soc_ocv = ocv_lookup(meas.ocv, meas.temp)
        # OCV 可信,用它校正安时积分的漂移
        state.soc = 0.7 * state.soc + 0.3 * soc_ocv
        state.soc_sigma = small
    elif abs(meas.current) < 2:         # 小电流(接近静置)
        ekf_step(state, meas)           # EKF 缓慢校正
    else:                               # 大电流动态工况
        coulomb_count(state, meas)      # 以安时积分为主
    return clamp(state.soc, 0.0, 1.0)

关键在于「什么时候信任哪种方法」。静置时用 OCV 做绝对校正(消灭累积误差),动态时用安时积分与 EKF 跟踪变化。磷酸铁锂电池因为 OCV 平台区平坦,往往需要在充电末端(SOC 接近 100% 时电压快速上升)做一次满充校正,这也是为什么很多车企建议「每周充满一次」。

精度目标通常是全温度范围内误差小于 3%,但这个目标在低温(零下 20 度以下)与大倍率工况下很难达到,BMS 会在这些工况下主动放宽精度并保守限制可用功率。

4. SOH 评估与均衡管理

SOH(State of Health)衡量电池的老化程度,有两个维度:

SOH 的两个维度:
  容量衰减:当前可用容量 / 额定容量
    新车约 100%,8 年或 16 万公里后通常要求 ≥ 80%
    估计方法:满充满放标定(准确但难得)、
              部分区间容量积分 + 扩展、
              基于充电曲线的机器学习估计

  内阻增长:当前内阻 / 初始内阻
    内阻增大导致大倍率下压降增大、可用功率下降
    估计方法:电流阶跃下的电压响应 ΔU/ΔI

  两者的关系:内阻增长通常先于容量明显衰减出现,
  所以内阻是更灵敏的老化指标

容量标定难得是因为它需要一次完整的满充满放,而用户很少把电用到 0 再充满。工程上的替代方案是「部分区间估计」:在任意一次充电中,用安时积分得到 ΔAh,用 SOC 变化得到 ΔSOC,两者相除即得容量估计(Qn = ΔAh / ΔSOC)。这要求 SOC 估计本身足够准,所以 SOH 的精度依赖 SOC 的精度。

**均衡(Balancing)**解决单体不一致问题:串联电芯中,容量最小的那颗决定了整包可用容量,所以要把高 SOC 单体的电量「放掉」或「转移」给低的:

方式原理效率成本典型场景
被动均衡高 SOC 单体通过电阻放电低(能量浪费)低主流乘用车
主动均衡用电容/电感/DC-DC 转移能量高高高端车型、商用车

均衡策略有讲究:只在充电末端或静置时均衡。行驶中均衡会产生额外热量且电流测量受干扰;充电末端(SOC > 90%)单体电压差异明显,是均衡的最佳窗口。均衡电流通常只有几十到几百毫安,对几十安时容量的电芯来说,均衡一整天也只能修正百分之几的差异,所以均衡的作用是「防止差异扩大」,而不是「修复严重不一致」——后者只能靠换电芯。

5. VCU 整车控制与扭矩仲裁

VCU 是三电的「大脑」,最核心的功能是扭矩仲裁:

扭矩需求来源与优先级:
  1. 安全相关(最高)
     碰撞信号 → 断高压 / 零扭矩
     电机过温、逆变器过流 → 强制降扭
     BMS 限功率(低 SOC、低温、过温)
  2. 稳定性相关
     ESP/ESC 请求降扭(防滑、防侧滑)
     ABS 介入(制动回收退出)
  3. 驾驶意图
     加速踏板需求(经 pedal map 映射)
     制动踏板需求(回收 + 液压)
     驾驶模式(经济/舒适/运动)修正
  4. 辅助驾驶
     ACC 加减速请求、限速请求
  5. 舒适与效率
     扭矩梯度限制(防顿挫)
     能量回收强度

仲裁逻辑(分层):
  需求层:收集所有来源的扭矩需求
  约束层:计算各部件的可行域
         电机:外特性曲线(转速-扭矩)
         电池:SOP(当前温度/SOC 下允许的充放电功率)
  仲裁层:在可行域内取满足最高优先级需求的值
          min(驾驶员需求, 部件能力, 稳定性限制)
  执行层:加梯度限制与滤波,下发 MCU

仲裁的核心原则是「取最严格的约束」。例如驾驶员全油门请求 300 Nm,但 ESP 因为检测到车轮打滑请求降到 120 Nm,那么最终输出必须是 120 Nm——稳定性优先于驾驶意图。同理,BMS 报「当前允许放电功率 40 kW」,则扭矩需求必须被限制到不超过 40 kW 对应的值(扭矩 × 转速 = 功率)。

扭矩指令的安全保障是不可省的一环。扭矩指令从 VCU 到 MCU 的传输必须加 E2E 保护,且 MCU 侧要做合理性检查(指令值在物理范围内、指令变化率不超过物理可能)。扭矩功能的 ASIL 等级通常为 C 或 D,相关设计要遵循 功能安全 ISO 26262 工程实践 里的安全机制要求(双通道、监控、E2E)。BMS 与 MCU 的故障信息也要通过 诊断协议 UDS 与 OBD 记录 DTC 并支持售后读取。

6. 电机控制:FOC 矢量控制

永磁同步电机(PMSM)的控制用磁场定向控制(FOC),目标是把三相交流电机的控制简化成类似直流电机的形式:

FOC 流程(电流环,10 kHz):
  1. 采样三相电流 ia、ib、ic(实际采两相,第三相由和为零推出)
  2. Clarke 变换:三相 → 静止两相 (iα, iβ)
  3. Park 变换:用转子电角度 θ 把 (iα, iβ) → 旋转两相 (id, iq)
     θ 来自旋变(resolver)或编码器
  4. 电流环 PI:
     id 的参考值通常为 0(表贴式电机,MTPA)
     iq 的参考值由扭矩需求换算:Te = 1.5·p·ψf·iq
     两个 PI 分别控制 id 与 iq
  5. 逆 Park 变换:(ud, uq) → (uα, uβ)
  6. SVPWM(空间矢量脉宽调制):生成六路 PWM 驱动逆变器

  为什么解耦有效:
    Park 变换把随转子旋转的坐标系变成「静止」坐标系
    在这个坐标系里,id 控制励磁、iq 控制扭矩,互不干扰
    于是可以用两个简单的 PI 控制器完成控制

关键参数与带宽:

  • 电流环带宽通常 1 到 2 kHz,对应采样与控制周期 100 us(10 kHz)。带宽越高响应越快,但受 PWM 开关频率(通常 8 到 20 kHz)与采样噪声限制。
  • 速度环在电流环之外,带宽约 100 Hz,输出 iq 参考值。
  • 扭矩常数:表贴式 PMSM 的扭矩与 iq 成正比,比例系数含极对数 p 与永磁磁链 ψf。

转子位置是 FOC 的前提,位置错了整个解耦就错了。旋变(resolver)是车规主流,它输出与转子角度相关的正弦/余弦信号,需要 RDC(旋变数字转换)解码。无位置传感器方案(sensorless)通过反电动势估计角度,成本低但低速时反电动势太小无法估计,通常只用于高速区或作为冗余。

7. 弱磁控制与高速区策略

电机有两个工作区,分界点是基速:

恒扭矩区(低速):
  反电动势 < 母线电压,电流可自由控制
  扭矩仅受电流上限约束(id=0,iq 最大)
  输出扭矩恒定

恒功率区(高速):
  转速升高 → 反电动势升高 → 逼近母线电压上限
  必须「弱磁」:给 id 一个负值,抵消部分永磁磁通
  削弱磁通 → 反电动势下降 → 腾出电压空间
  代价:同样的电流下扭矩下降;铜损增加

  约束:
    电流圆:id² + iq² ≤ Imax²
    电压椭圆:(Ld·id + ψf)² + (Lq·iq)² ≤ (Umax/ω)²
    工作点在两个约束的交集内

  最优策略:
    MTPA(最大转矩电流比):低速区,单位电流产生最大扭矩
    MTPV(最大转矩电压比):高速区,受电压约束时的最优
    两者在基速附近切换

弱磁区的控制难点在稳定性。当电压达到饱和,电流环 PI 的输出无法再增大,控制器进入「饱和」状态,若此时负载突变(如爬坡、加速),电流可能失控导致过流保护跳闸。缓解手段包括:电压反馈式的弱磁(用电压裕度反馈调节 id)、电流环抗饱和(anti-windup)、以及在接近电压极限时主动降扭。

工程上还有一个容易被忽略的点:高速下的铁损与温升。弱磁运行时铜损与铁损都增加,电机温度上升,而永磁体温度升高会导致磁链下降(高温退磁风险),形成正反馈。所以高速区的扭矩能力要随温度动态降额,这部分逻辑通常由 MCU 内部的热模型与降额曲线实现。

区段转速控制策略主要约束
恒扭矩区< 基速id=0 或 MTPA电流上限
弱磁区基速 ~ 最高转速负 id,MTPV电压上限、温度
极限区接近最高转速深度弱磁 + 降额电压饱和、退磁风险

8. 充电协议:GB/T 与 OCPP

充电涉及三层协议,理解分层是排查充电问题的前提:

层次划分:
  物理连接与导引
    交流:GB/T 18487(控制导引 CP、连接确认 CC)
    直流:GB/T 20234(充电接口)
  车桩通信
    直流快充:GB/T 27930(基于 CAN 的充电机与 BMS 通信)
  桩与云端
    OCPP(Open Charge Point Protocol,JSON over WebSocket)
    OCPP 1.6 / 2.0.1
  即插即充(PnC)
    ISO 15118(基于电力线载波 PLC 的证书认证)

GB/T 27930 的直流充电流程是分阶段的握手:

阶段(简化):
  1. 物理连接完成,低压辅助上电
  2. 充电握手:BMS 与充电机互发辨识报文(版本、电池类型)
  3. 参数配置:BMS 发最大允许充电电压/电流,充电机回最大输出能力
  4. 充电中:BMS 周期性发「充电需求」报文
     充电机按需求输出,并回报输出电压/电流
     BMS 实时监控,异常则发「中止充电」
  5. 充电结束:BMS 发「充电结束」原因(达到目标 SOC / 用户停止 / 故障)
  6. 断电:充电机停止输出 → BMS 断高压继电器

  关键报文(GB/T 27930):
    BHM/CHM  握手辨识
    BCP/CML  参数配置
    BCL/BCS  充电需求与状态
    BSM/CSM  监控
    BST/CST  中止

OCPP 是桩与后台的协议,与车无关(车桩之间走 GB/T 或 ISO 15118)。OCPP 定义充电桩如何向运营平台注册、上报状态、接收启停指令、计费与固件升级。它用 JSON over WebSocket,消息模式是 CALL / CALLRESULT / CALLERROR 三种。理解 OCPP 的价值在于排查「车能充但平台看不到」这类问题——那通常是 OCPP 侧而非车桩侧。

充电安全的几个关键点:绝缘检测必须在充电前完成;温度监控要在充电中持续(电池包与充电接口都测温);BMS 与桩的双向限流——BMS 给出的需求不能超过桩的能力,桩的输出也不能超过 BMS 的请求,任何一方超限都应中止。BMS 的充电相关参数(最大充电电流曲线)属于标定量,随电池温度与 SOC 变化,通常通过 车载 OTA 升级与安全 通道更新。

9. 能量回收与热管理协同

**能量回收(Regenerative Braking)**把制动时的动能转成电能充回电池,是续航的关键贡献者(城市工况可提升 15% 到 30%):

回收策略:
  滑行回收(松踏板即回收,强度可调)
  制动回收(踩制动踏板时优先回收)
  单踏板模式(强回收,松踏板即明显减速)
  踏板解耦(CRBS,Cooperative Regenerative Braking System):
    制动踏板深度 → 总制动力需求
    → 优先分配电机回收(受回收能力限制)
    → 不足部分由液压制动补足
    → 踏板力与减速度解耦,靠模拟器提供踏板感

回收的限制条件(任一满足即退出或减弱回收):
  SOC > 90%           电池不接受大电流
  电池温度 < 0 度      低温下充电会析锂,损伤电池
  电池温度 > 45 度     过热保护
  车速过低(< 10 km/h)反电动势不足
  ABS 介入            轮速差异大,回收会导致不稳定
  电池允许充电功率低   由 BMS 的 SOP 决定

ABS 介入时退出回收是一条硬规则:回收扭矩作用在驱动轮上,若 ABS 正在调节制动力以防抱死,额外的回收扭矩会干扰 ABS 的控制,所以必须立即把回收扭矩降为零,由液压制动全权接管。这个切换必须快(几十毫秒内),否则会出现「ABS 工作时车辆反而加速」的危险。

热管理协同是三电的另一个耦合点。电池的最佳工作温度是 20 到 35 度,过高会加速老化甚至热失控,过低会限制功率与回收。热管理系统(TMS)通常包含:

  • 电池冷却/加热回路:用冷却液经板换与空调制冷剂或 PTC 加热器交换热量。
  • 电机与逆变器冷却回路:电机与 IGBT 也发热,通常与电池共用一个冷却系统,但温度窗口不同(电机可承受更高温度)。
  • 协同控制:低温时优先加热电池(用电机堵转发热或 PTC),高温时优先冷却电池;充电时(尤其快充)热管理负荷最大,需要提前预冷。

热管理的请求优先级通常由 VCU 统一调度:电池温度安全 > 充电需求 > 动力需求 > 座舱舒适。也就是说,快充时若电池过热,空调制冷能力要优先给电池,座舱降温可以被削减——这个权衡需要在标定阶段明确定义,并在 HMI 上告知用户(如「电池温度高,充电功率受限」)。

权衡取舍

决策点选项 A选项 B建议
SOC 估算纯安时积分安时 + OCV + EKF 融合必须融合,单方法必然漂移或滞后
均衡被动主动乘用车被动足够,商用车/长寿命需求用主动
扭矩仲裁单层取最小分层需求-约束-仲裁分层便于追溯与安全论证
电机控制有位置传感器无位置传感器全速域用旋变,高速区可 sensorless 冗余
高速区保守限速深度弱磁按热与退磁风险动态决定弱磁深度
充电只支持 GB/TGB/T + ISO 15118 PnC出口车型需 PnC,国内可选
回收全工况回收按条件受限回收必须按 SOC/温度/ABS 受限,安全优先

常见坑清单

  1. SOC 只做安时积分:无绝对校正导致长期漂移,必须配合 OCV 或 EKF 校正。
  2. 磷酸铁锂靠 OCV 估 SOC:平台区电压平坦导致误差巨大,需在满充末端校正。
  3. 上电不预充:直接合主继电器产生浪涌电流烧毁触点,必须走预充时序。
  4. 绝缘检测被跳过:绝缘下降未及时告警导致漏电风险,检测必须前置于上电。
  5. 扭矩指令无 E2E:通信干扰导致错误扭矩被执行,安全关键链路必须加保护。
  6. 仲裁未取最严约束:ESP 请求降扭却被驾驶员需求覆盖,稳定性优先于驾驶意图。
  7. 弱磁无抗饱和:电压饱和时电流环失控导致过流跳闸,需 anti-windup 与电压反馈弱磁。
  8. 忽略永磁体高温退磁:高速弱磁叠加高温导致不可逆退磁,必须做温度降额。
  9. ABS 介入不退出回收:回收扭矩干扰 ABS 控制,须在几十毫秒内把回收降为零。
  10. 快充不预冷电池:大倍率充电温升快导致降功率或中止,需提前启动热管理。

小结

三电软件的核心是「在物理约束下做闭环控制」:BMS 在不可直接测量的状态下估计 SOC 与 SOH,VCU 在多源需求下仲裁出安全可行的扭矩,MCU 在电压电流约束下把扭矩变成三相电流,而充电与能量回收则是三者的协同。贯穿始终的是估算精度(SOC/SOH 误差直接决定续航与寿命表现)与安全优先级(扭矩安全、高压安全、热安全)。

入门路径建议:先理解 BMS 的测量与保护逻辑(这是最直观的部分),再深入 SOC 估算的三种方法及其融合,然后学 VCU 的扭矩仲裁分层,最后进入电机 FOC 与弱磁——后者数学密度最高,但掌握了 Park 变换的物理意义就不难。充电协议属于工程约定,边做边查标准即可。

继续深入:三电控制器之间的总线通信与 E2E 保护见 CAN 总线与车载网络通信 ;扭矩与高压安全的 ASIL 论证见 功能安全 ISO 26262 工程实践 ;故障记录与售后诊断见 诊断协议 UDS 与 OBD ;BMS 标定参数与充电曲线的更新见 车载 OTA 升级与安全 。

继续阅读

探索更多技术文章

浏览归档,发现更多关于系统设计、工具链和工程实践的内容。

全部文章 返回首页

「车载软件」更多文章

  1. 车载软件测试与 HIL 台架
  2. ADAS 决策规划与横纵向控制
  3. 传感器融合与车辆定位