57 lines
4.6 KiB
Markdown
57 lines
4.6 KiB
Markdown
# AMI SDC / BMS 联调报告
|
||
|
||
2026-10-03,测试链路:PCAN-USB(500 kbit/s)→ 实物 AMI CAN1 → STM32G0B1 MCU → USART2 PA2/PA3 → CH340 COM4(9600 8N1)→ USART HMI 官方调试器。使用 CAN 盒模拟 SDC / BMS 报文,未接真实 SDC / BMS 节点或物理串口屏。
|
||
|
||
本文记录 v2.0 的实物测试。后续 v2.1 将 CAN2 改为 250K;新版本尚未烧录,本文不作为 CAN2 250K 验证依据。
|
||
|
||
## 实际发送与显示
|
||
|
||
| ID / 格式 / DLC | CAN 数据(十六进制) | 含义 | HMI 实测 |
|
||
| --- | --- | --- | --- |
|
||
| `0x6A1` 标准 / 2 | `08 20` | ADC 8200 mV | 低压电池 8.20 V |
|
||
| `0x6A1` 标准 / 2 | `0C 30` | ADC 12300 mV | 低压电池 12.30 V |
|
||
| `0x140` 标准 / 8 | `0F A0 14 03 00 00 00 05` | 400.0 V,+12.3 A | 高压 400,电流 12 |
|
||
| `0x156` 标准 / 8 | `42 FF 43 47 37 0A 50 41` | 八路实际温度,第二路无效,最高 40 ℃ | 最高单体 40 |
|
||
| `0x186040F3` 扩展 / 8 | `10 73 10 D1 00 00 00 05` | 421.1 V,−69.5 A | 高压 421,电流 −70 |
|
||
| `0x186140F3` 扩展 / 8 | `10 04 0C E4 3F 17 00 7B` | 最高温度 23 ℃ | 最高单体 23 |
|
||
| `0x156` 标准 / 8 | `FF FF FF FF FF FF FF FF` | 无有效温度 | 原温度保留但变灰,MCU 有效位清零 |
|
||
|
||
低压控件 `lvbat` 为两位小数虚拟浮点数;高压、电流沿用整数控件,四舍五入显示。MCU 内保留高压/电流的 0.1 单位精度。电机/逆变器温度没有来源协议,保持灰色无效值,没有将电池温度套用到电机。
|
||
|
||
同一测试同时发送:SDC 心跳 100 ms、ADC 500 ms、四路频率 20 ms、BMS 状态 100 ms、BMS 温度 200 ms。轮频 `32 00 64 00 96 00 C8 00` 为 50 / 100 / 150 / 200 Hz,未擅自当作 km/h。
|
||
|
||
## 通过的检查
|
||
|
||
- MCU 不重启,仅重新打开并连接 HMI,等待同步后无效值恢复灰色;每 5 秒重新同步整套显示状态。\n- 实际 HMI 数值更新,标准与扩展 BMS 均可用,负电流符号和偏置正确。
|
||
- `FF` 无效温度被排除;全部温度无效时立即失效;恢复后重新转白。
|
||
- 只保留 SDC 心跳时,ADC 1500 ms、BMS 电压/电流 2000 ms 独立超时,变灰;心跳没有为其他数值续期。
|
||
- 恢复阶段显示 12.68 V / 55 V / 0 A / 27 ℃(BMS 原始总压 54.5 V)。
|
||
- 错误 DLC、同 ID 错误标准/扩展类型,以及旧 `0x180` 数据没有覆盖有效读数。
|
||
- 在 debug 页面更新数据,返回 dash 后显示 14.50 V / 300 V / −5 A / 60 ℃;具名 debug 状态保持未知。
|
||
- 同时注入 BMS 扩展帧的低压字段 8.5 V,仪表低压仍为 SDC ADC 的 14.50 V,没有被 BMS 覆盖。
|
||
- 六个任务确认均收到正确标准 `0x300 / 8` 请求,六个取消均没有 CAN 请求。测试期间 CAN1 持续有有效 SDC / BMS 输入。
|
||
- SWD 五阶段快照中的显示值、原始 ADC / BMS 值、有效位与预期一致,UART / CAN 接收错误计数均为 0;PCAN 状态为 0。
|
||
|
||
任务 CAN 序号依次为 0..5,前三个固定字段与来源字段为 `01 NN SEQ 01`,后四字节为 MCU 小端毫秒时间。任务回传仍为原 AMI 请求,未发 SDC DAC 或 ASSI 控制。
|
||
|
||
## 文件与证据
|
||
|
||
- [当前协议](SDC_BMS协议.md)
|
||
- [HMI 工程](../AMI.HMI),SHA256 `8A37E4961F90671F04E55BA94C173AE8FBFC5E30C2A3E74A2C37148157C3D16D`
|
||
- [测试所用 v2.0 固件 BIN](../output/firmware/AMI_Controller_v2.0_500k.bin),SHA256 `F0DA6EC9C5C8A4F803E4CDD28BB73C6458E010B15F32D3EAEF5C3A1B60D8827B`
|
||
- [全部 CAN 发送记录](evidence/2026-10-03/sdc-bms/sdc_bms_visual_results.json)
|
||
- [MCU 快照自动核对](evidence/2026-10-03/sdc-bms/sdc_bms_verified.json)
|
||
- [任务回归](evidence/2026-10-03/sdc-bms/sdc_bms_function_task_results.json)
|
||
- [跨页面记录](evidence/2026-10-03/sdc-bms/sdc_bms_cross_page.json)
|
||
- [烧录日志](evidence/2026-10-03/sdc-bms/sdc_bms_flash.log)
|
||
|
||
Release:Flash 15612 B,RAM 2632 B,编译通过;SWD 烧录显示 `Download verified successfully`。HMI 编辑器编译显示 0 错误、0 警告,[编译截图](evidence/2026-10-03/sdc-bms/saved_editor.png)。原 HMI 保留在 `tmp/can1-test-20261002/AMI_before_sdc_bms.HMI`,新版本另留验证副本。
|
||
|
||

|
||
|
||

|
||
|
||
## 尚缺资料或未测试部分
|
||
|
||
电机/逆变器温度的 CAN ID、字段和缩放,SDC GPIO 到具名安全信号的映射及正常极性,轮频到 km/h 的标定参数均缺失。CAN2 配置与 CAN1 相同,SWD 过滤寄存器均为 `0x0103002B`,但没有接线实测 CAN2。未测试物理串口屏、灯极性、VCU 执行反馈和车辆安全动作。现有未活跃端口的任务重发/队列限制未修改,详情见当前协议文档。
|