结论:这份档案记录的是欧宝 Astra H 的两条总线:单线的 LS-CAN(即 SW-CAN / GMLAN) 与 MS-CAN。在 LS-CAN 上,源文档把车速、转速、行驶距离、燃油喷射、冷却液温度、燃油液位、系统时间、电压与 TPMS 都逐字节解了出来;例如车速在 0x108 上除以 128、燃油液位是 94 - (值/2) 升。它是一份「按地址逐字节标注」的观测表,而不是厂商规格:大量字段被标为 ?? 或「见过 N 种取值」,这些不确定标记必须原样保留。
车辆与适用范围
源文档是一份公开的「车辆 CAN 报文数据库」,按 品牌/型号/代/总线/部件.md 组织。Astra H 这一支同时给出 LS-CAN 与 MS-CAN 两个目录,其中 LS-CAN 以 ALL_TYPES.md 汇总全部观测值。
| 项 | 内容 |
|---|---|
| 车型 | Opel Astra H(MS-CAN 文档中点名发动机为 Z16XEP 1.6L) |
| 年款 / 市场版本 | 源文档未给出具体年款与市场版本 |
| ECU / 改装状态 | 源文档未给出;为车主对原车的观测 |
| 采集跨度 | 源文档未给出日志数或帧数;部分报文注出周期(如 0x108 约 50ms、0x190/0x440 为 1000ms) |
| 适用范围 | 仅限源文档记录的这一台 Astra H;数值标定含多项未确认项 |
总线与寻址
这台车同时有 LS-CAN 与 MS-CAN。LS-CAN 被文档标注为「SW-CAN——单线或 GMLAN」,是单线制总线;MS-CAN 承载车身、信息显示等部件。两条总线都以小写十六进制地址登记(如 0x108、0x530、0x684)。
| 项 | 内容 |
|---|---|
| 物理层 | LS-CAN:单线(SW-CAN / GMLAN);MS-CAN:源文档未给出 |
| 链路层 / 比特率 | 源文档未给出 |
| 寻址方式 | 表中地址为小写十六进制(如 100、530),源文档未标注位宽 |
| CAN FD | 源文档未提及 |
| 多帧报文 | MS-CAN 的 Info-Display 报文超过 8 字节,使用 ISO-15765-2 分包 |
已解码信号
下表抽取 15 条最有代表性的条目,横跨 LS-CAN 与 MS-CAN。凡源文档标为 ??、「见过 N 种取值」或「计算取决于传感器/有时反向」的,均在证据列保留说明。
| 信号 | 位置(ID / 字节) | 解码 | 证据 / 置信度 |
|---|---|---|---|
| 车速 | LS-CAN 0x108 byte2+3 | 值 / 128 = km/h(例 0x2098=65.19) |
源文档示例与说明 |
| 发动机转速 | LS-CAN 0x108 byte5+6 | 16 位(例 0x04E5=1253 rpm) |
源文档示例;MS-CAN 版本在 0x4E8 上为「RPM/4」 |
| 行驶距离(每驱动轮) | LS-CAN 0x110 byte2+3 / byte4+5 | 一次增量 = 1.5748 cm;16 位满周期约 1032 m | 源文档说明 |
| 燃油喷射量 | LS-CAN 0x130 byte2+3 | 一次增量 = 0.03054 ml(1.6L 机);满周期约 2 升 | 标定基于作者 1.6L 发动机 |
| 冷却液温度 | LS-CAN 0x145 byte4 | 值 – 40 = °C(例 0x28→-2 °C) |
源文档示例 |
| 发动机/点火状态 | LS-CAN 0x145 byte1–3、5 | 多字节状态码(如 0x20=点火开未着、0x00=运行) | 源文档逐值说明 |
| 巡航控制状态 | LS-CAN 0x145 byte6 | 0x04=未激活 / 0x06=激活 | 源文档说明 |
| 转向灯/拨杆状态 | LS-CAN 0x175 byte3 | 0x01~0x04 表示半推/半抬/全推/全抬 | 源文档说明 |
| 转向灯控制帧 | LS-CAN 0x260 | 三字节组合区分左/右/双闪 | 源文档逐组合表 |
| 总里程 | LS-CAN 0x190 byte3–5 | 里程量(周期 1000ms) | 源文档标注;单位与系数未在本文展开 |
| 燃油液位 | LS-CAN 0x375 byte2 | 94 – (值/2) = 升(例 0xA0→14.0 L) |
「计算取决于传感器,有时反向」 |
| 系统时间 | LS-CAN 0x440 byte1–3 | 时 : 分 : 秒÷4 | 源文档说明 |
| 户外温度 | LS-CAN 0x445 byte2 | MS-CAN 同义项 0x682 为「值/2 – 40 = °C」 | 源文档说明 |
| 电压 | LS-CAN 0x500 byte2 | 源文档标注为电压(周期约 1500ms) | 源文档标注;换算未在本页给出 |
| 胎压 TPMS | LS-CAN 0x530 byte3–6 | 每轮 值/25 = Bar;byte1/2 为前/后传感器状态 |
MS-CAN 版本在 0x684 上同式 |
读取方法与注意事项
源文档的记法本身就是方法约束:页首声明斜体值表示「至今只见固定值」,粗体值表示已被单独页面解释,括号中的数字是见过的不同取值个数。也就是说,一个标了 ? (4) 的字节,作者只见过 4 种取值——它可能是枚举状态,也可能是「从未触发的故障位」,文档对后者也如实保留。
对使用者而言,最实际的两点:其一,MS-CAN 的 Info-Display 报文超过 8 字节,用 ISO-15765-2 打成多帧,数据块结构是「两字节命令 + 一字节负载长度 + 一字节消息类型 + 若干子包(ID + 字符数 + UTF-16 字符)」;文档给了 AC、音频、导航等消息类型与各类型下的行 ID 清单。其二,按位复用的字节必须做位运算(拨杆/方向盘按键就是「函数由位编码」)。
证据等级与边界
本档案属于单车观测:所有条目都来自一位车主对一台 Astra H 的记录,没有第三方旁证,也没有反汇编或厂商规格支撑。可核对的是「作者给出的一条条示例」(如 0x108 的 0x2098→65.1875 km/h、0x375 的 0xA0→14.0 L);不可核对的是这些标定是否适用于其他车。
三处不能外推。第一,改装的线束、传感器与仪表版本会让个别字节不同,燃油液位文档自己就注明「取决于传感器,有时反向」。第二,作者在页首明说斜体值「可能是从未触发的故障指示」,把「只见固定值」当成「恒为定值」是过度解读。第三,发动机相关标定(燃油喷射的 0.03054 ml)是用作者自己的 1.6L 发动机推出来的,换机型即失效。
关于「安全访问」类问题:本文只整理被动观测到的广播报文,未涉及任何诊断写入或安全访问绕过;源文档未提供绕过方法,且不建议尝试。
常见问题
Astra H 的 LS-CAN 和 MS-CAN 有什么区别?
LS-CAN 被文档标注为单线的 SW-CAN / GMLAN,承载车速、转速、燃油、里程、TPMS 等;MS-CAN 承载车身与 Info-Display 等。两者的地址与编码各自独立。
车速是怎么算出来的?
在 LS-CAN 的 0x108 上取 byte2+3 组成 16 位值,再除以 128。文档示例:0x2098 = 8344,8344 / 128 = 65.1875 km/h。
燃油液位为什么有时反向?
文档注明该值「计算取决于传感器,有时反向」,公式为 94 - (值/2) 升。因此同一公式在不同传感器配置下可能得出相反趋势,不能无条件套用。
Info-Display 的报文为什么超过 8 字节?
因为它用 ISO-15765-2 把长报文分成多个 CAN 帧(首帧 + 连续帧)。数据块由两字节命令、一字节负载长度、一字节消息类型和若干子包组成,子包再带行 ID、字符数与 UTF-16 字符。
延伸阅读
- CAN 报文解析的「健康位」在说什么:校验、计数器与总线空窗 —— 帮助理解本表里「只见固定值」的字节该如何判读。
- 同一个「转向灯」在三家车厂是三种实现:车辆状态归一化的坑 —— 呼应「函数由位编码」与多字节状态码的差异。
- UDS 诊断工具为什么不能随手调:只读、会话与写 ECU 的分权设计 —— 对照本档案的只读观测与 ISO-15765-2 分包。
- 2022 GR86 / BRZ 的 CAN 数据地图:从 ASC 与 DCM 口抓 18 个报文 —— 同批另一份按地址逐条标注的车型档案。
- 车载信号为什么会说谎:TTL、源时间与 500 ms 新鲜度阈值 —— 与不同报文的周期(50ms 到 1500ms)差异相关。
参考资料
- 项目 01 ——
public-can-dbc-datasets/additional/trueffelwurm-opel-astra-h/Opel/Astra/H/LS-CAN/ALL_TYPES.md(本项目车型档案主来源:LS-CAN 全部观测值与逐条说明)。 - 项目 01 ——
public-can-dbc-datasets/additional/trueffelwurm-opel-astra-h/Opel/Astra/H/MS-CAN/Body.md(MS-CAN 的底盘与发动机条目)。 - 项目 01 ——
public-can-dbc-datasets/additional/trueffelwurm-opel-astra-h/Opel/Astra/H/MS-CAN/Info-Display.md(Info-Display 的 ISO-15765-2 分包与消息类型表)。
说明:本文整理自第三方开源项目的公开文档,仅代表该文档所记录的单个车辆样本,不代表同型号全系车型。CAN 与诊断操作存在风险,任何实车操作前请自行复核并遵守当地法规。
更新记录
首次发布 2026-10-11 最近核对:2026-10-11
发表回复