2. 基础知识
在VCU(Vehicle Control Unit,整车控制器)开发中,车辆状态与整车模式是两个最基础、也最容易混淆的概念。车辆状态描述的是“车此刻真实处于什么物理与逻辑条件”,例如钥匙位置、挡位、车速、高压继电器状态、充电枪连接状态;整车模式描述的则是“VCU希望整车以什么策略运行”,例如高压上电模式、行驶模式、充电模式、故障降级模式。状态是输入与反馈,模式是决策与输出,二者通过VCU的控制逻辑形成闭环。
一、车辆状态的定义与分层
工程上通常把车辆状态分为三层:物理层状态、电气层状态和整车逻辑状态。物理层包括车门开闭、安全带、制动踏板、加速踏板开度;电气层包括KL15、KL30、高压互锁、绝缘电阻、继电器粘连检测;整车逻辑状态则是VCU综合上述信号后判定的“可行驶”“可上高压”“可充电”等结论。分层的好处是:底层信号可独立诊断,上层逻辑可独立测试,避免把传感器故障与策略错误混为一谈。
- KL15:点火开关ON挡信号,表示驾驶员请求激活整车。
- KL30:常电,为VCU提供唤醒与记忆电源。
- Ready:整车就绪状态,表示高压已上电且无禁止行驶故障。
- 挡位:P/R/N/D,部分车型含E/S运动模式。
- 充电枪连接:CC/CP信号,用于判断交流充电连接与PWM占空比。
二、整车模式分类
整车模式是VCU对整车资源调度的高层抽象。常见分类包括:下电模式、低压唤醒模式、高压上电模式、行驶模式、能量回收模式、充电模式、故障降级模式、休眠模式。模式之间不是随意跳转,而是有严格的进入条件、退出条件和互斥关系。例如“充电模式”与“行驶模式”互斥,“故障降级模式”可由任意模式进入,但退出必须经过故障清除与重新上电确认。
三、常见术语与参数关系
VCU开发中经常出现以下术语:扭矩请求、蠕行、能量回收等级、附件使能、高压使能、继电器控制、故障等级。这些术语最终都映射为CAN信号或硬线IO。下表给出典型信号与模式的关系,便于建立“状态—模式—执行器”的映射思维。
| 信号/术语 | 所属层级 | 典型取值 | 关联模式 |
|---|---|---|---|
| KL15 | 电气层 | 0/1 | 唤醒、上电 |
| 挡位 | 整车逻辑 | P/R/N/D | 行驶、蠕行 |
| 高压继电器状态 | 电气层 | Open/Close | 上电、下电 |
| 充电连接 | 物理/电气 | Connected/Disconnected | 充电模式 |
| 故障等级 | 整车逻辑 | 0~3级 | 降级、跛行 |
四、应用场景与VCU开发流程概览
典型应用场景包括:上电起步、行驶扭矩管理、制动能量回收、交流/直流充电、故障跛行、下电休眠。以“上电起步”为例,驾驶员拧钥匙到ON,VCU被KL15唤醒,先进行自检与高压互锁检测,确认无故障后闭合负极继电器、预充继电器、正极继电器,完成预充后进入Ready,再根据挡位与踏板开度计算扭矩请求,进入行驶模式。
VCU开发流程通常遵循V模型:需求分析 → 系统设计 → 软件架构 → 模型/代码实现 → MIL/SIL/HIL测试 → 实车标定 → 验证发布。其中,状态机与模式管理是需求阶段就必须冻结的核心内容,因为它直接影响安全目标与诊断策略。
典型上电状态迁移(简化):
OFF → KL15_ON → 自检 → 预充 → 高压就绪 → Ready → 行驶
↓ 故障
故障降级 → 下电 → 休眠
五、误区与复盘
常见误区有三个:第一,把“KL15 ON”等同于“整车Ready”,忽略高压上电与预充过程;第二,把“挡位D”直接当作“行驶模式”,忽略制动踏板、车门、充电枪等互锁条件;第三,模式切换只写进入条件,不写退出条件与超时保护,导致实车出现“卡在预充”或“无法下电”。复盘时应重点检查:每个模式是否有明确的进入、退出、超时和故障处理路径;每个状态信号是否有合理的滤波与去抖;模式互斥是否在代码层强制约束。