凯旋 Speed 400 的广播信号图:0x25A 转速与三种车速

作者:

在

结论:这份档案针对凯旋 Speed 400 与 Scrambler 400 X(Bajaj 生产 398 cc 单缸、Bosch 电喷),是对诊断接插件被动监听得到的广播信号图。总线是 500 kbit/s、11 位标准 ID,钥匙打开即上线(即使发动机不转),总线负载约 1400 帧/秒、约 32 个不同 ID。最有辨识度的发现是三条:转速在 0x25A 上以 1 转/分分辨率给出;车速存在三个彼此不同的值(ECU 值、仪表值、GPS 真值);而总里程、进气温度、歧管压力不在广播里,只能 OBD 轮询读到。边界:用未端接的 DIY 抽头主动发送可能把控制器推向 bus-off,因此内容全部来自只监听;且克隆板与年款有别,需逐车复核。

本文整理自该项目的广播信号图与说明。文档用星级给出置信度,本文原样保留。

车辆与适用范围

对象是凯旋 Speed 400 与 Scrambler 400 X 两款摩托。采集方式为对诊断接插件被动嗅探:用 ESP32 的 TWAI 控制器设成只监听模式,配一只 SN65HVD230 收发器(去掉 120 Ω 终端),抽头取 OBD 引脚 6(CAN-H)、14(CAN-L)与 12 V / 地。信号是通过刻意激励(刹车、离合、挡位、转向灯)与一次真实骑行确认的。

项 内容
车型 凯旋 Speed 400 与 Scrambler 400 X(Bajaj 生产 398 cc 单缸,Bosch EMS)
年款 / 市场版本 源文档未确认(未绑定具体年款、ECU 版本或跨车适配)
ECU / 改装状态 原厂 Bosch EMS;采集为非侵入式被动监听,无改装
采集跨度 含一次真实骑行与多次刻意激励;文档未给出总时长
适用范围 广播信号图为部分映射;克隆板与年款有别,需逐车复核

总线与寻址

文档给出链路层轮廓:500 kbit/s、11 位标准 ID、钥匙打开即上线,总线负载约 1400 帧/秒、约 32 个不同 ID。它是一张广播面的图,不是整车网络或诊断库。

项 内容
物理层 诊断接插件抽头(OBD 引脚 6 CAN-H、14 CAN-L)
链路层 500 kbit/s,11 位标准 ID
上线时机 钥匙打开(即使发动机不转)
总线负载 约 1400 帧/秒,约 32 个不同 ID
CAN FD 源文档未提及

已解码信号

下表从文档信号表抽取代表性条目。bN 为第 N 字节,bN:k 为第 N 字节第 k 位(bit 0 最低),bN:bM 为大端 16 位。星级沿用文档:三星为多会话复现或有物理证据、二星为单次会话强证据、一星为候选。

信号 位置(ID / 字节) 解码 置信度
发动机转速(细) 0x25A b5:b6(大端) rpm = raw,1 转/分分辨率,验证到 9271 三星
发动机转速(粗) 0x140 b6 rpm = raw × 40,与 0x25A 一致(r = 1.00) 三星
节气门(TPS1 / TPS2) 0x142 b0 / b1 % = (raw − 128) × 100 / 96,双线控传感器,基准 0x80 三星
接合挡位 0x142 b3 0 为空挡,1 至 6 为挡位;按停留判定为「已接合挡」 三星
车速(ECU 值) 0x296 b3:b4(大端) km/h = raw × 0.01;GPS 标定得 raw = 1.317 × 真值(r = 0.965) 三星
车速(轮速) 0x102 b1:b2 / b3:b4(大端) km/h = raw × 0.0625(1/16),接近真实地面速度 三星
冷却液温度(显示) 0x405 b7 °C = raw − 40;这是显示值,非原始传感器 三星
环境气温 0x147 b3 °C = raw − 40;随天气在约 12 至 28 摄氏度之间 三星
燃油液位 0x555 b1 raw 0 至 255(非线性);低油位灯在 raw 约 90 点亮 三星
电池电压 0x142 b7 V = raw × 0.1(充电 14.2 V,熄火 12.7 V) 三星
侧撑 0x142 b6.1 该位为 1 表示放下 三星
刹车 0x146 b1.0 该位为 1 表示正在刹车 二星
转向灯 0x536 b2.0 该位为 1 表示激活(左 / 右尚未区分) 三星
水箱风扇 0x405 b5.5 该位为 1 表示风扇开启 三星
机油压力灯 0x400 b3.7 低有效(为 1 表示正常) 三星
ABS 状态 0x121 ID 已确认(原厂故障码 U1000),具体字节尚未定位 一星

读取方法与注意事项

只监听,别主动发。文档最重的注意事项是:不要用廉价适配器主动轮询——在这个平台上,从未端接的 DIY 抽头发送可能把 CAN 控制器推向 bus-off 并中断接收。不过文档也澄清:用已正确端接的适配器做 OBD 轮询,实测整趟骑行没有 bus-off,因此该风险特定于「DIY 抽头在发送」,而非「合规适配器的轮询」。

车速有三个,不要混用。文档用 GPS 对齐(r = 0.965)得到三套关系:ECU 值 0x296 × 0.01 = 1.317 × GPS 真值;骑手看到的仪表值 = raw × 0.89(约比 GPS 高 17%);真正的地面速度 = raw × 0.76。文档另指出轮速 0x102 × 1/16 约等于 0.87 × raw,与结论自洽。

挡位是「已接合挡」。文档用停留时间来论证:日常巡航时该值能保持数百帧不变(换挡杆输入会松手回中);另有一个瞬时换挡信号在 0x406 / 0x407 上。

温度要分清「显示值」与「真实值」。文档通过诊断对照发现:0x405 b7 是显示值(冷车时被钉在约 90 摄氏度,真实传感器冷态只有 28 摄氏度),真实冷车 / 过热应看 OBD 0105;0x147 b3 是环境气温而非进气温度。

证据等级与边界

文档星级即硬边界:三星为多会话复现或有物理证据,二星为单次会话强证据,一星为候选。表中二星与一星条目(如刹车、ABS)尚未达到确认级别。

来源说明还列出几层限制:精确年款、ECU 版本与跨车适配未建立;仓库未附带原始 CAN 采集,无法独立回放;候选字段与尚未解决的左右转向灯区分不应被视为已确认;该 DBC 只是部分广播映射,不是完整的摩托网络或诊断库。文档也说明它是社区逆向成果,不隶属于凯旋或 Bajaj,并建议依赖任何结论前先在你自己的车上验证。

据此,全部信号含义、比例与「不广播」的结论都不能外推到其他 Speed 400 / Scrambler 400 X 或其他车型,克隆板与年款差异更需逐车核对。

常见问题

Speed 400 的广播里能读到哪些量?

文档记录的有:转速(0x25A 细、0x140 粗)、节气门、已接合挡位、车速与轮速、冷却液显示温度、环境气温、燃油液位、电池电压,以及侧撑、刹车、转向灯、水箱风扇、机油压力灯等开关量。

为什么这台车的车速有三个不同的值?

因为 ECU 值、仪表值与真实地面速度是三回事。GPS 标定得 ECU 值 0x296 × 0.01 约等于 1.317 倍真值,仪表显示约为 raw 的 0.89 倍(比 GPS 高约 17%),真实速度约为 raw 的 0.76 倍。

为什么强调只监听、不主动轮询?

文档记录:在这个平台上,从未端接的 DIY 抽头发送可能把 CAN 控制器推向 bus-off、中断接收,因此全部信号都靠只监听获得。但用一只正确端接的适配器做 OBD 轮询,实测整趟骑行也没有 bus-off,所以该风险特定于 DIY 抽头在发送。

总里程、进气温度、歧管压力为什么读不到?

因为它们不在广播里。文档逐字节、全字节宽、两种字节序地找过,都没匹配;这些量由 Bosch ECU 内部保留,只能通过诊断通道轮询(如 010B、010F、0105)取得。总里程甚至不在模式 01 中,只由仪表显示。

转向灯的左右能区分吗?

目前不能。0x536 的 b2.0 只报「激活」,左右之分需要一个带标注「先左后右」的采集才能确定,文档把它列为尚未解决项。

延伸阅读

参考资料

  • 项目 01 —— public-can-dbc-datasets/additional/tbtanmay111-triumph-speed-400/SIGNALS.md(本项目车型档案主来源,取用了逐信号表与置信度星级)。
  • 项目 01 —— public-can-dbc-datasets/additional/tbtanmay111-triumph-speed-400/README.md(取用了总线、采集方式与 OBD 轮询说明)。
  • 项目 01 —— public-can-dbc-datasets/additional/tbtanmay111-triumph-speed-400/SOURCE.md(取用了「未建立年款 / ECU 版本、无原始采集」等边界说明)。

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

更新记录

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

评论

发表回复

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