Fiat Ducato X250 车身 CAN 档案:50 kbit/s 上的 24 条信号

作者:

在

结论:Fiat Ducato X250 的一个反直觉特征是OBD 口后面不是发动机 CAN,而是一张 50 kbit/s 的车身 CAN:引脚 6/14 承载 B-CAN,500 kbit/s 上什么都没有;发动机 ECU 走引脚 7 的 K 线(ISO 14230-4 KWP2000)。好消息是仪表需要的多数发动机量(转速、冷却液温度、车速、里程、续航)都被广播到这张车身网上,所以一个只监听、不发送的 CAN 记录器就能读到。源文档记录 18 个 ID、约 90 帧/秒,并逐条说明每个信号是怎么在实车上核对出来的。下述结论仅限源文档记录的那一台 2009 X250。

车辆与适用范围

源文档是一位车主的业余项目,属于单台车、单人实验。作者明确声明「只做监听、绝不发送」,并说明是配合一款支持 MQTT 的 OBD-CAN 记录适配器完成的;文档还提到另一台车(同平台另一辆 van)提供了油量数据。作者列出该平台同款车型(Citroën Jumper / Peugeot Boxer 2006–2014),但只有 Ducato X250 被测试过。

项 内容
车型 Fiat Ducato X250,2.3 MultiJet 柴油(车身改装为 Elnagh Prince 55L 房车,7.15 m)
年款 / 市场版本 2009(第一代 X250,模拟仪表 + 橙色 LCD);意大利(EU)市场
ECU / 改装状态 原厂线束未改;OBD 口插一款 OBD-CAN 记录适配器(只监听模式);发动机 ECU 走 K 线
采集跨度 5 段真实抓包(怠速、门与灯、杂项动作、冷启动与轰油、约 20 分钟 7 km 行驶),约 90 帧/秒
适用范围 仅限这一台 Ducato X250;同平台 Jumper/Boxer 未测试,车身电路(例如车门与柜锁共用一条回路)因改装而异

总线与寻址

源文档把物理层写在最前面:OBD 引脚 6/14 是车身 CAN(B-CAN),50 kbit/s、11 位 ID;引脚 7 是发动机 ECU 的 K 线。作者特别提醒:把记录器设成 500 kbit/s 时「什么都看不到」,因为这张网上没有 500 kbit/s 的流量。

项 内容
物理层 双绞线 CAN,B-CAN 高/低;OBD 引脚 6/14
链路层 / 比特率 50 kbit/s(源文档明示;500 kbit/s 无流量)
寻址方式 11 位 ID,文档记录 18 个 ID
CAN FD 否;按经典 CAN 处理
发动机 ECU 走 OBD 引脚 7 的 K 线(ISO 14230-4 KWP2000)
模式 只监听(Silent / listen-only),记录器不在总线上发送

已解码信号

源文档对每个信号都写了「怎么验证」的一列,并明确保留未完成核对的条目。下表抽取代表性信号;油量与瞬时油耗两条按源文档原样保留其未完成核对的标注。

信号 位置(ID / 字节 / 位) 解码 证据
制动踏板 0x180,b0 位 7 位 踩踏板
示宽灯 / 近光 / 远光 0x180,b1 位 5 / 3 / 4 各自为 1 位 灯光开关、拨杆
左 / 右转向灯 0x180,b2 = 0x40 / 0x20 随闪光跳变 拨杆
发动机是否运转 0x281 用「转速 > 300」判定(不用 b1 位 7) 3 次钥匙测试(仅通电、启动、运转后停机)
冷却液温度 0x281,b3 b3 − 40 → °C 表针居中时 81 °C
转速 0x281,b5 与 b6 (b6×256 + b5) / 8 → rpm 怠速约 830,轰油 1800 / 3000
车速 0x286,b2 与 b3 (b2×256 + b3) / 16 → km/h 4 段稳态行驶与 GPS 差在 1% 内
车速(副本) 0x2A0,b0 与 b1 (b0×256 + b1) / 16 → km/h 同 0x286
驻车制动 0x380,b0 位 5 位 拉手刹
任一车门开 0x380,b1 任一门开时为 0x0C,全关为 0x00 驾驶室门、房车门、储物柜共一条回路
倒挡 0x380,b2 位 2 位 挂倒挡进出 3 次
启动电池电压 0x380,b3 b3 × 0.16 → V 与启动电池上的分流计对比 20 分钟行驶
低油量告警 0x380,b4 位 1 0x02 表示进入储备 与仪表储备灯同亮时 b5 = 11、续航 110 km
油量 0x380,b5 b5 → 升 另一台满油 90 L 罐读 91;本文档尚未在本车下次加油时交叉核对
驾驶员安全带 0x39A,b2 位 0 1 = 未系(副本见 0x3C3 b4 位 1) 系/解 3 次,跟随仪表告警灯
里程 0x603,b1 低半字节 + b2 + b3 20 位 → km 61744 与仪表一致,行驶 7 km 后 +7
续航 0x603,b4 位 2-0 + b5 11 位 → km 272 与仪表一致
瞬时油耗 0x603,b0 + b1 高半字节,BCD BCD → L/100km(示例 11 6x = 11.6) 源文档标注「待行驶中验证」
行程平均油耗 / 平均车速 / 时间 / 距离 0x643,b0-b7 油耗 BCD、车速 km/h、时间 BCD、距离 20 位×0.1 km 与仪表行程电脑一致
仪表时钟 0x683,b0 / b1,BCD 时 / 分 BCD 与本车仪表钟一致(本车约慢 3 分钟)

读取方法与注意事项

第一是速率设置:把记录器设成 50K、静默(Silent)模式,并在协议上选 slcan 以便抓包;源文档提醒设成 500K 会完全看不到流量。第二是总线上没有的东西:增压压力、发动机负荷、进气温度与故障码都在 K 线上,CAN-only 的记录器看不到;源文档把这条写进「不在本总线」一节。

第三是时间边界的陷阱。源文档给出三条:车钥匙拔出时整条总线静默,什么也读不到;熄火瞬间的最后一帧会「说谎」(油量 0、驻车制动释放、发动机仍报运转),不要基于该边沿做自动化;判断发动机是否运转要用「转速 > 300」,不要用 0x281 的 b1 位 7——它在仅通电、发动机未启动时就是 1,熄火最后一帧和行驶后 ECU 继续发送约 20 秒时也会误报。

第四是数据回读的取舍:里程、续航与油量没有过期机制,停车时会保留最后值,但在重启或 MQTT 重载后会变成未知值,直到下次通电;需要的话要在自己一侧加保留(retain)。此外作者提到,同一 ID 上的多个按位条目在实践中不一定都能可靠发布,所以灯、刹车、转向被合成一个 24 位原始值再在上层拆分。

证据等级与边界

可视为实车证据的是绝大多数条目——源文档逐条写了验证方式(踩踏板、切灯、GPS 对比、与分流计/仪表比对)。属于明确未完成的是油量(本文档尚未在本车加油时交叉核对,数字来自另一台车)与瞬时油耗(标注为待行驶中验证)。

不能外推的地方有两处。第一,这台是改装房车,车门、房车门与储物柜共用一条回路,所以 0x380 只能给「某个门开着」,不能分辨具体是哪扇门——同平台不同车身(van、底盘车、房车)的门路会不同。第二,源文档只测试了这一台 Ducato X250;同平台的 Jumper/Boxer 未测试,年款差异也可能改变 ID 与位定义。

关于「安全访问」类问题:源文档未提供任何绕过方法,且不建议尝试;它是纯监听项目,明确「不要在总线上发送报文」。本文只整理公开文档登记的只读信号。

常见问题

Ducato X250 的 OBD 口能读到发动机数据吗?

能读到一部分。源文档说明 OBD 引脚 6/14 是 50 kbit/s 的车身 CAN,引脚 7 是 K 线的发动机 ECU;转速、冷却液温度、车速、里程、续航这些被广播到车身网上的量,CAN-only 记录器可以只监听读到,而增压压力、负荷、进气温度与故障码在 K 线上读不到。

为什么设成 500K 看不到任何报文?

因为这张 OBD 口的车身 CAN 跑在 50 kbit/s,源文档说 500 kbit/s 上什么都没有。应设为 50K。

怎么判断发动机是否在运转?

用「转速 > 300」。源文档明确不要用 0x281 的 b1 位 7:它在仅通电、发动机未启动时就是 1,熄火最后一帧和行驶后 ECU 继续发送约 20 秒时也会误报。

为什么熄火后油量显示为 0?

因为源文档记录熄火瞬间的最后一帧会给出异常值(油量 0、驻车制动释放、发动机仍报运转)。作者建议不要基于这个边沿触发自动化,并让实时传感器用超时机制转为「不可用」而不是冻结。

延伸阅读

参考资料

  • 项目 01 —— public-can-dbc-datasets/additional/danderik88-fiat-ducato-x250/README.md(主来源:车辆、总线、取数路径与坑点)。
  • 项目 01 —— public-can-dbc-datasets/additional/danderik88-fiat-ducato-x250/docs/can-id-reference.md(逐 ID 的信号表与验证方式)。
  • 项目 01 —— public-can-dbc-datasets/additional/danderik88-fiat-ducato-x250/captures/README.md(5 段真实抓包的用途说明)。

说明:本文整理自第三方开源项目的公开文档,仅代表该文档所记录的单个车辆样本,不代表同型号全系车型。CAN 与诊断操作存在风险,任何实车操作前请自行复核并遵守当地法规。

更新记录

首次发布 2026-10-11 最近核对:2026-10-11

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注