自动驾驶 can设备上位机常见诊断/监控功能汇总 自动驾驶 dv上位机 can设备诊断常见功能汇总通用约定CAN 诊断寻址诊断请求 IDtx_id0x6D71751诊断响应 IDrx_id0x6DF1759应用报文 ID0x500DUT、0x501NM帧类型诊断查询为 CAN 2.0is_fd: falseUDS 响应解析规则正响应以0x62开头后跟 DID2 字节然后是 payloadyaml 中offset是含 UDS 头0x62DID 共 3 字节的绝对偏移负响应以0x7F开头版本号 ASCII 解析遇到0x00/0xCC/0xFF或非可打印字符即截断字节序原项目Python view.js所有多字节读取用大端BERust 版对应类型uint16_be、int16_be、float64_be一、监控类面板1. 电压监控voltage功能监控 ECU 主板 20 路关键电源轨电压/电流覆盖电瓶、KL15、各路 DCDCMPQ2179/VR5510/TPS55289/MPQ2918/TPS74501、DDR、天线供电、高位开关电流采样。用于 DV 阶段验证电源完整性。对应硬件电源管理子系统PMIC 多路 Buck/Boost/LDO 高位开关驱动CAN 通信发送tx_id0x6D7,data[0x22, 0x2A, 0x0B]UDS 0x22 ReadDataByIdentifier, DID0x2A0B接收rx_id0x6DF, 正响应0x62 0x2A 0x0B payload40 字节20×uint16_be周期50ms超时2s字段列表全部uint16_be, scale0.01字段名offset单位告警范围说明ADC_VBAT3V0–14.5 (error)电瓶电压ADC_KL155V0–14.5 (error)KL15 点火电压ADC_MPQ2179_VOUT_1V27V1.0–1.4 (warning)MPQ2179 1.2V 输出ADC_PCAN5V9V-CAN 5V 供电ADC_MPQ2179_VOUT_3V311V3.0–3.6 (warning)MPQ2179 3.3V 输出ADC_MPQ2179_VOUT_1V813V1.6–2.0 (warning)MPQ2179 1.8V 输出ADC_VR5510_AMUX_VDDIO_MCU_3V315V-VR5510 MCU IO 3.3VADC_VR5510_AMUX_5510_VSUP17V-VR5510 供电ADC_VR5510_AMUX_5510_PWRON119V-VR5510 PWRON1ADC_VR5510_AMUX_VDD_AON_0V7521V-常开域 0.75VADC_MPQ2179_OUT_0V923V-MPQ2179 0.9V 输出ADC_TPS55289_VOUT_13V25V12.0–14.0 (warning)TPS55289 13V 输出USS 供电ADC_VR5510_AMUX_VBOOST_5V27V-VR5510 升压 5VADC_MPQ2918_5V29V-MPQ2918 5VADC_DDR_TYPE_0.9V31V-DDR 0.9VADC_VDD_ANT_5V33V4.5–5.5 (warning)天线 5V 供电GNSSADC_HSD1_HSS_IS35A-高位开关 1 电流采样ADC_KL30_VBAT2_A_IN37V-KL30 电瓶 2ADC_HSD2_HSS_IS39A-高位开关 2 电流采样ADC_TPS74501_OUT_3V341V-TPS74501 3.3V 输出2. 温度监控temperature功能监控 ECU 主板 9 路温度点包括 BPU/MCU/CMN 芯片内置 PVT 传感器、外部 NTC 热敏电阻、VR5510 PMIC 内部温度。用于 DV 阶段热验证。对应硬件芯片内置温度传感器 板载 NTCCAN 通信发送tx_id0x6D7,data[0x22, 0x2A, 0x03]DID0x2A03接收rx_id0x6DF, 正响应0x62 0x2A 0x03 payload周期50ms字段列表全部int16_be有符号, scale0.01, 单位 °C字段名offset告警范围说明PVT_BPU_PVTC1_T1_SENSOR30–100 (warning)BPU 温度PVT_CMN_PVTC1_T1_SENSOR5-CMN 温度 1PVT_CMN_PVTC1_T2_SENSOR7-CMN 温度 2PVT_MCU_PVTC1_T1_SENSOR90–100 (warning)MCU 温度 1PVT_MCU_PVTC1_T2_SENSOR11-MCU 温度 2offset 13-14 保留--跳过NTC_2150–100 (warning)NTC 2NTC_3170–100 (warning)NTC 3NTC_4190–100 (warning)NTC 4ADC_VR5510_AMUX_5510_Temp21-VR5510 PMIC 内部温度注意int16_be为有符号类型支持负温。offset 13-14 为保留字节原项目 view.js 中 byteStart 从 8 跳到 12。3. USS 超声波监控uss功能监控 12 路超声波雷达距离回波覆盖前/后保险杠 12 个传感器。用于泊车雷达 DV 验证。对应硬件USS 超声波传感器阵列由 TPS55289 13V 供电CAN 通信发送tx_id0x6D7,data[0x22, 0x2C, 0xFA]DID0x2CFA接收rx_id0x6DF, 正响应0x62 0x2C 0xFA payload24 字节12×uint16_be周期1s字段列表全部uint16_be, scale1, 单位 cm字段名offset位置FLS3前左外FL5前左FLM7前左中FRM9前右中FR11前右FRS13前右外RRS15后右外RR17后右RRM19后右中RLM21后左中RL23后左RLS25后左外特殊值0–510有效距离cm511无回波warning-- 未探测到障碍物512传感器故障error512显示为故障4. GNSS 收星监控gnss功能监控 GNSS 定位状态卫星数、经纬度、定位状态。用于自动驾驶定位 DV 验证。对应硬件GNSS 模组 M21由 ADC_VDD_ANT_5V 供电CAN 通信发送tx_id0x6D7,data[0x22, 0x40, 0x01]DID0x4001接收rx_id0x6DF, 正响应0x62 0x40 0x01 payload≥18 字节周期1s字段列表字段名offsetlengthtype单位说明卫星数31uint8颗可见卫星数经度48float64_be°IEEE754 双精度纬度128float64_be°IEEE754 双精度定位状态201enum-0无效, 1定位, 2差分异常判定卫星数 4 触发 warning卫星数不足。5. 风扇监控fan功能监控散热风扇转速。用于 DV 阶段热管理验证。对应硬件板载散热风扇CAN 通信发送tx_id0x6D7,data[0x22, 0x40, 0x02]DID0x4002接收rx_id0x6DF, 正响应0x62 0x40 0x02 payload周期1s字段列表字段名offsettypescale单位范围说明风扇转速3uint16_be1RPM0–10000风扇转速6. PPS 状态pps功能监控 PPSPulse Per Second秒脉冲信号状态与脉冲计数。用于 GNSS 时间同步 DV 验证。对应硬件GNSS 模组 PPS 输出CAN 通信发送tx_id0x6D7,data[0x22, 0x2D, 0x01]DID0x2D01接收rx_id0x6DF, 正响应0x62 0x2D 0x01 payload周期1s字段列表字段名offsettype说明PPS状态3uint80正常, 非0异常脉冲计数4uint16_be累计脉冲数大端派生字段状态 正常PPS状态0, 绿色/ 异常PPS状态!0, 红色异常判定PPS状态 ! 0 触发 error。7. IIC/SPI 监控iic_spi功能监控 12 路 IIC 总线 3 路 SPI 总线通信状态PASS/Fail。用于 DV 阶段板载外设总线通信完整性验证。对应硬件板载 IIC/SPI 外设传感器、EEPROM 等CAN 通信发送tx_id0x6D7,data[0x22, 0x40, 0x08]DID0x4008接收rx_id0x6DF, 正响应0x62 0x40 0x08 payload≥15 字节周期2s字段列表全部enum, length1, 值映射: 0PASS, 1Fail字段名offset说明IIC_0 – IIC_113–14IIC 通道 0-11SPI_0 – SPI_215–17SPI 通道 0-2异常判定IIC_01 触发 warningSPI_01 触发 error。8. 当前 Eventevent_current功能读取 ECU 当前激活的事件位图DTC/DEM 事件按event_mapping.csv解析为事件列表。是帧率检测和 Link 检测面板的数据源。对应硬件ECU 整机状态监控电源/CAN/看门狗/内存/外设/摄像头链路CAN 通信发送tx_id0x6D7,data[0x22, 0x2A, 0x0D]DID0x2A0D接收rx_id0x6DF, 正响应0x62 0x2A 0x0D payload事件位图≥99 字节周期2s解析逻辑遍历event_mapping.csv每条记录检查payload[byte]的第bit位是否为 1为 1 则该事件触发。事件映射表config/event_mapping.csv56 个事件系统/硬件事件Byte 0-3ByteBit事件名说明00Power_On上电01Power_Off下电02Over_Voltage过压03Under_Voltage欠压04Over_Temperature过温05CAN_Bus_OffCAN Bus Off06CAN_Error_PassiveCAN 错误被动07CAN_Rx_OverflowCAN 接收溢出10Watchdog_Reset看门狗复位11Flash_CRC_ErrorFlash CRC 错误12RAM_Test_FailRAM 测试失败13EEPROM_Read_ErrorEEPROM 读错误14EEPROM_Write_ErrorEEPROM 写错误15ADC_ErrorADC 错误16Clock_Error时钟错误17SCFM_ErrorSCFM 错误20HSD1_Short_Circuit高位开关 1 短路21HSD1_Open_Load高位开关 1 开路22HSD2_Short_Circuit高位开关 2 短路23HSD2_Open_Load高位开关 2 开路24Fan_Stall风扇堵转25Fan_Open风扇开路26GPS_No_FixGPS 未定位27GPS_Antenna_ErrorGPS 天线错误30NM_TimeoutNM 超时31NM_Bus_OffNM Bus Off32PPS_ErrorPPS 错误33IIC_Bus_ErrorIIC 总线错误34SPI_Bus_ErrorSPI 总线错误35USS_Sensor_ErrorUSS 传感器错误36Temperature_Sensor_Error温度传感器错误37Voltage_Sensor_Error电压传感器错误摄像头链路事件供帧率/Link 派生面板使用ByteBit事件名用途760-7DemEvent_DES_UNLOCK_Cam_*Link 检测8 通道770-3DemEvent_DES_UNLOCK_Cam_*Link 检测4 通道970-7DemEvent_SENSOR_FCNT_Cam_*帧率检测8 通道980-4DemEvent_SENSOR_FCNT_Cam_*帧率检测3 通道9. 历史 Eventevent_history功能读取 ECU 历史事件位图NV 存储累计。解析方式与 event_current 相同。CAN 通信发送tx_id0x6D7,data[0x22, 0x2A, 0x0F]DID0x2A0F接收rx_id0x6DF, 正响应0x62 0x2A 0x0F payload周期5s10. 电压状态监控voltage_status-- 派生功能派生面板无独立 CAN 通信。基于电压监控数据按电压阈值判定 6 个关键负载的供电状态。数据源voltage派生规则通道判定条件全部满足正常对应硬件96717F1.2V∈[1.0,1.4] 且 1.8V∈[1.6,2.0]GMSL 解串器 96717F96717同上GMSL 解串器 9671796722同上GMSL 解串器 96722MAX96724F同上GMSL 解串器 MAX96724FUSS13V∈[12.0,14.0]USS 超声波TPS55289 供电GNSS_M21天线5V∈[4.5,5.5]GNSS 模组 M2111. 帧率检测fps-- 派生功能派生面板无独立 CAN 通信。基于 event_current 的DemEvent_SENSOR_FCNT_Cam_*事件判定 11 路摄像头的帧率是否正常。数据源event_current派生规则对应事件 0 - 帧率正常OK事件触发1- 帧率异常。通道对应事件摄像头Front120DemEvent_SENSOR_FCNT_Cam_Front120前视 120°Front30DemEvent_SENSOR_FCNT_Cam_Front30前视 30°RearDemEvent_SENSOR_FCNT_Cam_Rear后视SideRRDemEvent_SENSOR_FCNT_Cam_SideRR右后侧视SideRLDemEvent_SENSOR_FCNT_Cam_SideRL左后侧视SideFLDemEvent_SENSOR_FCNT_Cam_SideFL左前侧视SideFRDemEvent_SENSOR_FCNT_Cam_SideFR右前侧视AVMRearDemEvent_SENSOR_FCNT_Cam_AVMRearAVM 后AVMLeftDemEvent_SENSOR_FCNT_Cam_AVMLeftAVM 左AVMFrontDemEvent_SENSOR_FCNT_Cam_AVMFrontAVM 前AVMRightDemEvent_SENSOR_FCNT_Cam_AVMRightAVM 右12. Link 检测link-- 派生功能派生面板无独立 CAN 通信。基于 event_current 的DemEvent_DES_UNLOCK_Cam_*事件判定 12 路视频链路GMSL 解锁状态是否正常。数据源event_current派生规则对应事件 0 - Link 正常事件触发 - 链路未锁定。通道对应事件摄像头Front30DemEvent_DES_UNLOCK_Cam_Front30前视 30°Front120DemEvent_DES_UNLOCK_Cam_Front120前视 120°RearDemEvent_DES_UNLOCK_Cam_Rear后视NADemEvent_DES_UNLOCK_Cam_NA预留SideRRDemEvent_DES_UNLOCK_Cam_SideRR右后侧视SideRLDemEvent_DES_UNLOCK_Cam_SideRL左后侧视SideFLDemEvent_DES_UNLOCK_Cam_SideFL左前侧视SideFRDemEvent_DES_UNLOCK_Cam_SideFR右前侧视AVMRearDemEvent_DES_UNLOCK_Cam_AVMRearAVM 后AVMLeftDemEvent_DES_UNLOCK_Cam_AVMLeftAVM 左AVMFrontDemEvent_DES_UNLOCK_Cam_AVMFrontAVM 前AVMRightDemEvent_DES_UNLOCK_Cam_AVMRightAVM 右注意Link 检测用DES_UNLOCK解串器解锁 物理链路锁定帧率检测用FCNT帧计数 数据帧到达。两者互补Link 检测物理层FPS 检测数据层。13-15. 版本号version_hw / version_supplier / version_part功能读取 ECU 硬件版本号、供应商代码、零件号ASCII 字符串。CAN 通信面板DID发送 data说明version_hw0xF289[0x22, 0xF2, 0x89]硬件号version_supplier0xF195[0x22, 0xF1, 0x95]供应商代码version_part0xF193[0x22, 0xF1, 0x93]零件号接收rx_id0x6DF, 正响应0x62 DID ASCII payload周期0仅启动时查询一次解析ASCII遇0x00/0xCC/0xFF截断二、控制类面板16. DUT 监控dut_monitor功能开关 DUTDevice Under Test监控模式。开启后 ECU 进入 DUT 测试模式。对应硬件ECU DUT 测试模式DV 诊断模式CAN 通信toggle 开关操作发送 dataUDS 服务说明开启[0x2E, 0xFD, 0x00, 0x01]0x2E WriteDataByIdentifierDID0xFD00, 值0x01关闭[0x2E, 0xFD, 0x00, 0x00]0x2E WriteDataByIdentifierDID0xFD00, 值0x00发送tx_id0x6D7, 接收rx_id0x6DF, 正响应0x6E 0xFD 0x00原项目差异Python 版直接由上位机发 0x500 应用帧8×0x11, FDRust 版改为通过 UDS 0x2E 写 DID 控制 ECU 自主进入 DUT 模式。17. NM 报文发送nm_send功能开关 NMNetwork Management报文周期发送。开启后上位机周期发送 NM 报文维持 ECU 网络管理唤醒状态。对应硬件AUTOSAR NM 唤醒保持CAN 通信toggle单向发送操作tx_iddata说明开启/关闭0x501[0x00]*8NM 报文8 字节全零rx_id0无响应纯发送周期100ms原项目 cycle0.1sNM 报文 ID 0x501 是 AUTOSAR OSEK Direct NM 典型 ID18. 高位开关high_side功能控制 ECU 高位开关High-Side Driver的通断驱动外挂负载。用于 DV 阶段验证 HSD 驱动能力与保护逻辑。对应硬件HSD1/HSD2 高位开关驱动电压面板监控其电流 ADC_HSD1/2_HSS_IS事件映射监控短路/开路CAN 通信双按钮UDS 0x31 RoutineControl操作发送 dataUDS 服务说明开启[0x31, 0x01, 0xA0, 0x01]0x31 RoutineControlstartRoutine, ID0xA001关闭[0x31, 0x02, 0xA0, 0x01]0x31 RoutineControlstopRoutine, ID0xA001发送tx_id0x6D7, 接收rx_id0x6DF, 正响应0x71均需二次确认19. ECU 复位ecu_reset功能两个控制按钮 – ECU 复位硬复位和清除故障码。对应硬件ECU 复位与 DTC 清除CAN 通信双按钮操作发送 dataUDS 服务说明ECU 复位[0x11, 0x01]0x11 ECUResethardReset清除故障码[0x14, 0xFF, 0xFF, 0xFF]0x14 ClearDiagnosticInformationgroupOfDTC0xFFFFFF所有发送tx_id0x6D7, 接收rx_id0x6DF复位正响应0x51清DTC正响应0x54均需二次确认三、DID 汇总表面板DIDUDS 服务说明voltage0x2A0B0x22 Read电压20通道temperature0x2A030x22 Read温度9通道uss0x2CFA0x22 ReadUSS 距离12通道gnss0x40010x22 ReadGNSS 定位fan0x40020x22 Read风扇转速pps0x2D010x22 ReadPPS 状态iic_spi0x40080x22 ReadIIC/SPI 状态15通道event_current0x2A0D0x22 Read当前事件位图event_history0x2A0F0x22 Read历史事件位图version_hw0xF2890x22 Read硬件号ASCIIversion_supplier0xF1950x22 Read供应商代码ASCIIversion_part0xF1930x22 Read零件号ASCIIdut_monitor0xFD000x2E WriteDUT 监控开关high_side0xA0010x31 Routine高位开关通断ecu_reset-0x11 / 0x14ECU 复位 / 清DTCnm_send0x501 (app)应用帧NM 报文周期发送四、其他面板CAN 发送can_send_panel功能手动发送任意 CAN 帧支持 CAN 2.0 / CAN-FD用于调试。操作输入 CAN IDhex、数据hex 字节、选择通道/扩展帧/FD点击发送 -POST /api/can/send- IPCcan.send- can-processdriver.send()发送成功后推送 tx 帧到can.raw前端原始数据流面板可见原始 CAN 数据流can_raw_panel功能实时显示所有 CAN 收发帧含回放帧可暂停/清空/设置行数上限。数据源WScan_raw消息来自 can-process 的can.rawIPC topic录制回放record_playback_panel功能录制 CAN 数据到文件jsonl/blf/asc回放录制文件纯数据显示模式不发送到 CAN 总线。录制POST /api/record/start- can-process 录制 monitor 周期收到的帧回放POST /api/record/play- can-process 读取文件按时间戳推送can.raw 可选重新解析推送can.data.new支持播放/暂停/停止/seek/循环/速度调节/外部文件加载DBC 解析dbc_panel功能加载 DBC 文件解析 CAN 帧信号离线解析 BLF/ASC 录制文件。DID 诊断did_diag_panel功能读取/写入 ECU DIDUDS 0x22/0x2E支持批量读取和轮询。CAN 通信读取tx_id0x6D7,data[0x22, DID_H, DID_L]UDS 0x22写入tx_id0x6D7,data[0x2E, DID_H, DID_L, ...data]UDS 0x2E结果通过 WSdid_result异步推送DTC 故障码dtc_diag_panel功能读取/清除 ECU 故障码UDS 0x19/0x14。CAN 通信读取tx_id0x6D7,data[0x19, sub_function]UDS 0x19 ReadDTCInformation清除tx_id0x6D7,data[0x14, 0xFF, 0xFF, 0xFF]UDS 0x14 ClearDiagnosticInformation结果通过 WSdtc_result异步推送Ping 监控ping_panel功能监控网络连通性支持启停/编辑 IP 列表/配置周期超时。数据源ping-process 子进程系统 ping 命令结果通过 IPCping.data.new推送阈值设置settings_panel功能编辑各监控项的告警阈值alerts保存到 yaml 文件。设备连接device_connect功能配置和连接 ZLG CAN 设备驱动类型/设备型号/通道/波特率/loopback。连接流程前端传配置 -POST /api/device/connect- IPCcan.connect- can-processdriver.connect()- ZLG FFI配置编辑器config_editor功能在线编辑监控项 yaml 配置支持 schema 校验。