跳转到内容

OBD-II PID

维基百科,自由的百科全书

OBD-II PID车上诊断系统(OBD)参数ID的简称,是在诊断工具上向车辆请求资料用的编码。

国际汽车工程师学会(SAE)标准 J1979(电子诊断测试模式)中定义了许多OBD-II PID。所有北美的道路车辆及卡车都要支援一部分的OBD-II PID,主要是在有强制排气英语vehicle emissions control检测英语vehicle inspection的州。制造商也定义针对个别车辆的PID。目前没有强制摩托车要支援OBD-II PID,不过也有许多的摩托车支援。

在1996年时,轻型商用车(重量小于8,500磅 [3,900千克])首先强制要支援OBD-II PID,之后是中型商用车(重量在8,500—14,000磅 [3,900—6,400千克]之间)在2005年强制支援[1]。轻型商用车及中型商用车都要可以透过由SAE J1962定义的标准数据链路连接器英语Data link connector (automotive)进行存取。

依加州空气资源局(CARB)的加州法规(CCR) sections 1971.1 title 13,美国2010年之后生产的重型商用车(重量大于14,000磅 [6,400千克])可以透过SAE standard J1939-13英语SAE J1939(圆型的诊断用连接头)支援OBD-II的诊断机能。有些北美的重型卡车使用SAE J1962 OBD-II诊断连接器,这也是一般轿车常用的连接器,知名的有麦克货车及富豪卡车,不过CAN识别符是29位元,不是一般轿车的11位元。

模式

[编辑]

在最新的OBD-II标准SAE J1979中,有列出十种诊断服务。2002年以前的J1979,将这些服务称为模式(modes)。其说明如下:

模式(十六进制) 叙述
01 显示目前资料
02 显示冻结的页框资料
03 显示已储存的诊断错误码英语Diagnostic Trouble Codes(DTC)
04 清除诊断错误码以及储存数值
05 测试结果,氧气感测器监控(只在不用CAN传输时有效)
06 测试结果、其他元件/系统监控(测试结果,氧气感测器监控只在用CAN传输时有效)
07 显示未处理的诊断错误码(在目前或上一次驾驶周期侦测到的诊断错误码)
08 on-board元件或系统的控制动作
09 请求车辆的资讯
0A 清除诊断错误码

汽车制造商不一定要实现所有的服务,制造商可以在#9以上增加制造商定义的服务(例如服务22是由Ford/GM的SAE J2190所定义,而服务21是因Toyota而定义) ,这些服务可以提供其他的资料,例如混合动力电动汽车(HEV)中牵引电池的电压[2]

非OBD的统一诊断服务从0x10开始,避免和ID范围重叠。

标准PID

[编辑]

下表中所列的是依SAE J1979定义的标准OBD-II PID。也列出每个PID的预期回应,以及回应和实际物理量之间的关系。不是所有车辆都会支援每一个PID,也有一些PID是厂商定义的,不在OBD-II标准中。

服务01和02基本上是相同的,不过服务01会提供目前的资讯,而服务02会提供上一次出现诊断错误码时的资讯。但PID 01和PID 02是例外,PID 01只出现在服务01,而PID 02只出现在服务02,若服务02的PID 02为零,表示没有冻结的页框资料,其他服务02的资料都没有意义。

若用位元编码表示(Bit-Encoded-Notation)时,像C4表示是资料字节C的第4位元。每一个位元都有0到7的编号,7是最高位元,而0是最低位元。

A B C D
A7 A6 A5 A4 A3 A2 A1 A0 B7 B6 B5 B4 B3 B2 B1 B0 C7 C6 C5 C4 C3 C2 C1 C0 D7 D6 D5 D4 D3 D2 D1 D0

服务01

[编辑]
PID
(HEX)
PID
(DEC)
回应资料字节个数 描述 最小值 最大值 单位 公式[a]
00 0 4 支持的PID[01 - 20] 位元编码[A7..D0] == [PID $01..PID $20] 见以下叙述
01 1 4 自从DTC清除后的监控状态,包括异常指示灯(MIL)状态,以及DTC的个数 位元编码。见以下叙述
02 2 2 冻结的DTC
03 3 2 燃油系统状态 枚举编码。见以下叙述
04 4 1 计算的发动机负载 0 100 % (或
05 5 1 发动机冷媒温度 -40 215 °C
06 6 1 短期燃油调整—Bank 1 -100(燃油需减少:过多燃油) 99.2(燃油需增加:过少燃油) % (or )
07 7 1 长期燃油调整—Bank 1
08 8 1 短期燃油调整—Bank 2
09 9 1 长期燃油调整—Bank 2
0A 10 1 燃油压力(表压英语Pressure measurement 0 765 kPa
0B 11 1 进气歧管绝对压力 0 255 kPa
0C 12 2 发动机速度 0 16,383.75 rpm
0D 13 1 车辆速度 0 255 km/h
0E 14 1 点火提前 -64 63.5 止点前的角度
0F 15 1 进气温度 -40 215 °C
10 16 2 空气流量感测器英语Mass airflow sensor(MAF)空气流率 0 655.35 grams/sec
11 17 1 油门位置 0 100 %
12 18 1 命令第二侧空气状态 见以下叙述
13 19 1 有氧气传感器(2 banks时) [A0..A3] == Bank 1, 感测器1-4. [A4..A7] == Bank 2...
14 20 2 氧气传感器 1
A:电压
B:短期燃油调整
0
-100
1.275
99.2
伏特

%

(若B==$FF,传感器未用来做燃油调整)
15 21 2 氧气传感器 2
A:电压
B:短期燃油调整
16 22 2 氧气传感器 3
A:电压
B:短期燃油调整
17 23 2 氧气传感器 4
A:电压
B:短期燃油调整
18 24 2 氧气传感器 5
A:电压
B:短期燃油调整
19 25 2 氧气传感器 6
A:电压
B:短期燃油调整
1A 26 2 氧气传感器 7
A:电压
B:短期燃油调整
1B 27 2 氧气传感器 8
A:电压
B:短期燃油调整
1C 28 1 车辆使用的OBD标准 1 250 - 枚举。如下
1D 29 1 存在的氧气传感器(在4 banks时) 类似PID 13,但[A0..A7] == [B1S1, B1S2, B2S1, B2S2, B3S1, B3S2, B4S1, B4S2]
1E 30 1 辅助输入状态 A0 == 动力分导英语Power Take Off(PTO)状态(1 == 有效)
[A1..A7] 未使用
1F 31 2 发动机启动后的运行时间 0 65,535
20 32 4 支援的PID[21 - 40] 位元编码[A7..D0] == [PID $21..PID $40] 见以下叙述
21 33 2 故障指示灯(MIL)亮时行驶的距离 0 65,535 km
22 34 2 高压共轨压力(相对进气歧管真空) 0 5177.265 kPa
23 35 2 高压共轨表压力(柴油,或是汽油直接喷射) 0 655,350 kPa
24 36 4 氧气侦测器1
AB: 燃油-空气当量比
CD: 电压
0
0
< 2
< 8
ratio
V
25 37 4  氧气侦测器2
AB: 燃油-空气当量比
CD: 电压
26 38 4 氧气侦测器3
AB: 燃油-空气当量比
CD: 电压
27 39 4 氧气侦测器4
AB: 燃油-空气当量比
CD: 电压
28 40 4 氧气侦测器5
AB: 燃油-空气当量比
CD: 电压
29 41 4 氧气侦测器6
AB: 燃油-空气当量比
CD: 电压
2A 42 4 氧气侦测器7
AB: 燃油-空气当量比
CD: 电压
2B 43 4 氧气侦测器8
AB: 燃油-空气当量比
CD: 电压
2C 44 1 排气再循环(EGR)指令 0 100 %
2D 45 1 EGR错误 -100 99.2 %
2E 46 1 指令蒸发清除 0 100 %
2F 47 1 燃油Tank水准输入 0 100 %
30 48 1 错误码清除后的暖机 0 255 count
31 49 2 错误码清除后行驶的距离 0 65,535 km
32 50 2 蒸发系统蒸气压力 -8,192 8191.75 Pa

(AB 是有号二补数[3]

33 51 1 绝对大气压 0 255 kPa
34 52 4 氧气侦测器1
AB: 燃油-空气当量比
CD: 电流
0
-128
< 2
<128
ratio
mA
or
35 53 4 氧气侦测器2
AB: 燃油-空气当量比
CD: 电流
36 54 4 氧气侦测器3
AB: 燃油-空气当量比
CD: 电流
37 55 4 氧气侦测器4
AB: 燃油-空气当量比
CD: 电流
38 56 4 氧气侦测器5
AB: 燃油-空气当量比
CD: 电流
39 57 4 氧气侦测器6
AB: 燃油-空气当量比
CD: 电流
3A 58 4 氧气侦测器7
AB: 燃油-空气当量比
CD: 电流
3B 59 4 氧气侦测器8
AB: 燃油-空气当量比
CD: 电流
3C 60 2 催化剂温度:Bank 1,感测器1 -40 6,513.5 °C
3D 61 2 催化剂温度:Bank 2,感测器1
3E 62 2 催化剂温度:Bank 1,感测器2
3F 63 2 催化剂温度:Bank 2,感测器2
40 64 4 支援的PID[41 - 60] 位元编码[A7..D0] == [PID $41..PID $60] 见以下叙述
41 65 4 监控状态,目前驾驶周期 位元编码 见以下叙述
42 66 2 控制模组电压 0 65.535 V
43 67 2 绝对负载值 0 25,700 %
44 68 2 燃油–空气命令等效比 0 < 2 ratio
45 69 1 相对油门位置 0 100 %
46 70 1 环境空气温度 -40 215 °C
47 71 1 绝对油门位置B 0 100 %
48 72 1 绝对油门位置C
49 73 1 加速踏板位置D
4A 74 1 加速踏板位置E
4B 75 1 加速踏板位置F
4C 76 1 指令油门致动器
4D 77 2 MIL灯亮的行驶时间 0 65,535
4E 78 2 错误码清除后的时间
4F 79 4 燃油-空气当量比最大值, 氧气侦测器电压,氧气侦测器电流,及进气歧管绝对压力 0, 0, 0, 0 255, 255, 255, 2550 ratio, V, mA, kPa A, B, C, D*10
50 80 4 质量空气流量计的最大空气流率 0 2550 g/s A*10, B, C和D保留
51 81 1 燃料种类 燃料种类码。见以下叙述
52 82 1 乙醇燃料百分比 0 100 %
53 83 2 蒸发系统绝对蒸气压力 0 327.675 kPa
54 84 2 蒸发系统(相对)蒸气压力 -32,767 32,768 Pa ((A*256)+B)-32767
55 85 2 第二侧氧气侦测器短期修正,A:bank 1, B:bank 3 -100 99.2 %

56 86 2 第二侧氧气侦测器长期修正,A:bank 1, B:bank 3
57 87 2 第二侧氧气侦测器短期修正,A:bank 2, B:bank 4
58 88 2 第二侧氧气侦测器长期修正,A:bank 2, B:bank 4
59 89 2 高压共轨绝对压力 0 655,350 kPa
5A 90 1 加速踏板相对位置 0 100 %
5B 91 1 油电混合电池组剩下寿命 0 100 %
5C 92 1 发动机油温 -40 210 °C
5D 93 2 燃料喷射正时 -210.00 301.992 °
5E 94 2 发动机燃料率 0 3212.75 L/h
5F 95 1 车辆设计的排气要求 位元编码
60 96 4 支援的PID[61 - 80] 位元编码[A7..D0] == [PID $61..PID $80] 见以下叙述
61 97 1 驾驶的发动机命令-力矩百分比 -125 130 % A-125
62 98 1 实际发动机-力矩百分比 -125 130 % A-125
63 99 2 发动机参考力矩 0 65,535 Nm
64 100 5 发动机力矩百分比资料 -125 130 % A-125 闲置
B-125 发动机点1
C-125 发动机点2
D-125 发动机点3
E-125 发动机点4
65 101 2 支援辅助输入/输出 位元编码
66 102 5 质量空气流量计
67 103 3 发动机冷媒温度 °C
68 104 7 进气温度感测器
69 105 7 EGR命令及EGR错误
6A 106 5 柴油进气空气流率控制命令及相对进气气流位置
6B 107 5 排气再循环温度
6C 108 5 油门致动器控制命令和相对油门位置
6D 109 6 燃料压力控制系统
6E 110 5 喷射压力控制系统
6F 111 3 涡轮增压压缩机入口压力
70 112 9 提升压力控制
71 113 5 可变几何涡轮增压(VGT)控制
72 114 5 泄压阀(Wastegate)控制
73 115 5 排气压力
74 116 5 涡轮增压器RPM
75 117 7 涡轮增压器温度
76 118 7 涡轮增压器温度
77 119 5 增压空气冷却器温度(Charge air cooler temperature,CACT)
78 120 9 排气温度(EGT)Bank 1 特别PID。见以下叙述
79 121 9 排气温度(EGT)Bank 2 特别PID。见以下叙述
7A 122 7 柴油粒子过滤器(DPF)
7B 123 7 柴油粒子过滤器(DPF)
7C 124 9 柴油粒子过滤器(DPF)温度 °C
7D 125 1 NOx NTE(Not-To-Exceed英语Not-To-Exceed)控制区状态
7E 126 1 PM NTE(Not-To-Exceed英语Not-To-Exceed)控制区状态
7F 127 13 发动机运行时间 seconds
80 128 4 支援的PID[81 - A0] 位元编码[A7..D0] == [PID $81..PID $A0] 见以下叙述
81 129 21 给辅助排放控制设备(AECD)的发动机运行时间
82 130 21 给辅助排放控制设备(AECD)的发动机运行时间
83 131 5 NOx感测器
84 132 1 歧管表面温度
85 133 10 NOx试剂系统
86 134 5 粒子(PM)感测器
87 135 5 进气歧管绝对压力
88 136 13 选择性触媒还原 (SCR)引入系统
89 137 41 AECD #11-#15的运行时间
8A 138 41 AECD #16-#20的运行时间
8B 139 7 柴油后处理
8C 140 16 O2感测器(广义)
8D 141 1 油门位置G 0 100 %
8E 142 1 发动机摩擦力-力矩百分比 -125 130 %
8F 143 5 PM感测器Bank 1 & 2
90 144 3 WWH-OBD车辆OBD系统资讯 hours
91 145 5 WWH-OBD车辆OBD系统资讯 hours
92 146 2 燃料系统控制
93 147 3 支援WWH-OBD车辆OBD计数器 hours
94 148 12 NOx警告及诱导系统
98 152 9 排气温度感测器
99 153 9 排气温度感测器
9A 154 6 油电混合车/电动车系统资料,电池,电压
9B 155 4 柴油车排气流体感测器资料
9C 156 17 O2感测器资料
9D 157 4 发动机燃油率 g/s
9E 158 2 发动机燃油流率 kg/h
9F 159 9 燃料系统使用百分比
A0 160 4 支援的PID[A1 - C0] 位元编码[A7..D0] == [PID $A1..PID $C0] 见以下叙述
A1 161 9 NOx感测器校正资料 ppm
A2 162 2 汽缸燃油率 mg/stroke
A3 163 9 蒸发系统蒸气压 Pa
A4 164 4 变速箱实际档位
A5 165 4 柴油排气液体量
A6 166 4 里程表 0 526 385 151.9 公引(km/10)
C0 192 4 支援的PID[C1 - E0] 0x0 0xffffffff 位元编码[A7..D0] == [PID $C1..PID $E0] 见以下叙述
C3 195 ? ? ? ? ? 回传数值资料,包括驾驶条件ID及发动机速度*
C4 196 ? ? ? ? ? B5是发动机闲置请求
B6是发动机停止请求*
PID
(HEX)
PID
(DEC)
回应资料字节个数 描述 最小值 最大值 单位 公式[a]

服务02

[编辑]

服务02的PID和服务01相同,意义也相同[4],不过资讯是在产生冻结页框[5]时的资料。

需要在讯息的资料区中传送页框号码。

PID
(hex)
回应资料字节个数 描述 最小值 最大值 单位 公式[a]
02 2 产生冻结页框,要储存资料的DTC BCD编码。格式如下

服务03

[编辑]
PID
(hex)
回应资料字节个数 叙述 最小值 最大值 单位 公式[a]
N/A n*6 请求的错误码 每个讯息三个错误码。见以下叙述

服务04

[编辑]
PID
(hex)
回应资料字节个数 描述 最小值 最大值 单位 公式[a]
N/A 0 清除错误码 / 故障指示灯(MIL) / 检查发动机灯 清除所有储存的错误码,并且关闭故障指示灯

服务05

[编辑]
PID
(hex)
回应资料字节个数 描述 最小值 最大值 单位 公式[a]
0100 4 支持的OBD监控ID ($01 – $20) 0x0 0xffffffff
0101 2 O2感测器Bank 1,感测器1 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage
0102 O2感测器Bank 1,感测器2 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage
0103 O2感测器Bank 1,感测器3 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage
0104 O2感测器Bank 1,感测器4 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage
0105 O2感测器Bank 2,感测器1 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage
0106 O2感测器Bank 2,感测器2 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage
0107 O2感测器Bank 2,感测器3 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage
0108 O2感测器Bank 2,感测器4 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage
0109 O2感测器Bank 3,感测器1 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage
010A O2感测器Bank 3,感测器2 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage
010B O2感测器Bank 3,感测器3 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage
010C O2感测器Bank 3,感测器4 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage
010D O2感测器Bank 4,感测器1 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage
010E O2感测器Bank 4,感测器2 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage
010F O2感测器Bank 4,感测器3 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage
0110 O2感测器Bank 4,感测器4 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage
0201 O2感测器Bank 1,感测器1 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage
0202 O2感测器Bank 1,感测器2 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage
0203 O2感测器Bank 1,感测器3 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage
0204 O2感测器Bank 1,感测器4 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage
0205 O2感测器Bank 2,感测器1 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage
0206 O2感测器Bank 2,感测器2 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage
0207 O2感测器Bank 2,感测器3 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage
0208 O2感测器Bank 2,感测器4 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage
0209 O2感测器Bank 3,感测器1 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage
020A O2感测器Bank 3,感测器2 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage
020B O2感测器Bank 3,感测器3 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage
020C O2感测器Bank 3,感测器4 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage
020D O2感测器Bank 4,感测器1 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage
020E O2感测器Bank 4,感测器2 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage
020F O2感测器Bank 4,感测器3 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage
0210 O2感测器Bank 4,感测器4 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage
PID
(hex)
回应资料字节个数 描述 最小值 最大值 单位 公式[a]

服务 09

[编辑]
PID
(hex)
回应资料字节个数 描述 最小值 最大值 单位 公式[a]
00 4 服务9支援的PID(01 to 20) 位元编码[A7..D0] = [PID $01..PID $20] 见以下叙述
01 1 PID 02中的VIN讯息计数,只针对ISO 9141-2、ISO 14230-4及SAE J1850. 多半数值会是5
02 17 车辆识别号码 (VIN) 17字元的VIN,ASCII编码,若不满17个字元,左边会填入空字元(0x00
03 1 PID 04中的校正ID讯息计数,只针对ISO 9141-2、ISO 14230-4及SAE J1850。 会是四的倍数(每一个ID需要四个讯息)
04 16,32,48,64.. 校正ID 最多16个ASCII字元。未使用的资料字节会回传空字元(0x00)。可以输出多个校正ID(每个ID 16个字节)
05 1 PID 06的校正验证码(CVN)讯息计数,只针对ISO 9141-2、ISO 14230-4及SAE J1850。
06 4,8,12,16 校正验证码(CVN)。可以输出多个校正验证码(每个码4个字节),校正验证码和校正ID的数量需符合 原始资料,左边会补空字元(0x00),一般会以十六进制字串显示。
07 1 PID 080B的使用中性能跟踪讯息计数,只针对ISO 9141-2、ISO 14230-4及SAE J1850。 8 10 数值会是8表示要回应16个数值,数值会是9表示要回应18个数值,数值会是10表示要回应20个数值
08 4 火星塞点火发动机车辆的使用中性能跟踪 四个或五个讯息,每一个有四个字节(二个数值)见以下叙述
09 1 PID 0A 的ECU名称讯息计数
0A 20 ECU名称 ASCII编码,右边会补空字元(0x00
0B 4 压缩点火发动机车辆的使用中性能跟踪 5个讯息,每个讯息4个字节(2个数值)见以下叙述
PID
(hex)
回应资料字节个数 描述 最小值 最大值 单位 公式[a]
  1. ^ 1.0 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 在公式栏中,字母A, B, C,.....表示资料字节的第一字节、第二字节、第三字节......的十进制。若有问号,表示有冲突或是不完整的资料

位元编码PID

[编辑]

上表中有部分的PID无法用简单的公式来说明。以下是这些PID的细部说明。

服务01 PID 00

[编辑]

这个PID的请求会回传4字节的资料(Big-endian。每一个位元的排序顺序是由MSBLSB。表示接下来的32个PID,并且说明支援哪些PID。

例如,若汽车的回复是BE1FA813,可以解码如下

十六进制 B E 1 F A 8 1 3
二进制 1 0 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 0 1 0 1 0 0 0 0 0 0 1 0 0 1 1
是否支援
PID编号 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F 20

因此,支援的PID有:0103040506070C0D0E0F101113151C1F20

服务01 PID 01

[编辑]

这个PID的请求会回传4字节的资料,分别标示A B C、D。

第一个字节(A)包括二部分的资讯。位元A7(字节A的MSB)表示MIL(检查发动机警示灯)是否点亮。位元A6A0表示发动机控制器显示的诊断故障码。

第二至第四字节(B, C和D)表示特定在线测试的可进行程度(availability)及完整性(completeness)。可用程度会用设定位元1来表示,而完整性会用清除位元0来表示。

位元 名称 叙述
A7 MIL 关闭或点亮。为1表示CEL/MIL点亮(或应该点亮)
A6-A0 DTC_CNT 显示幕上和尾气排放相关DTC的个数
B7 保留 保留(应该为0
B3 0 = 支援火星塞点火监控(奥托发动机或汪克尔发动机)
1 = 支援压缩点火监控(柴油发动机)

以下是常见的B字节定义,是以测试为基础的内容。

可进行测试 测试不完整
元件 B2 B6
燃料系统 B1 B5
不发火 B0 B4

第三字节及第四字节的定义会依发动机是火星塞点火(奥托发动机或汪克尔发动机)或柴油发动机而不同。第二字节的bit 3会说明如何定义字节C和D,0表示是火星塞点火(奥托发动机或汪克尔发动机),1表示是压缩点火(柴油发动机)

火星塞点火监控时的字节C和D (奥托发动机或汪克尔发动机):

可进行测试 测试不完整
尾气再循环系统 C7 D7
氧气侦测器加热器 C6 D6
氧气侦测器 C5 D5
冷气冷媒 C4 D4
第二侧空气系统 C3 D3
蒸发系统 C2 D2
已加热催化剂 C1 D1
催化剂 C0 D0

柴油发动机监控时的字节C和D:

可进行测试 测试不完整
EGR(排气再循环)及/或VVT(可变气门正时)系统 C7 D7
PM过滤器监控 C6 D6
尾气感测器 C5 D5
- 保留 - C4 D4
提升压力 C3 D3
- 保留 - C2 D2
NOx/SCR监控 C1 D1
NMHC催化剂[a] C0 D0
  1. ^ NMHC可以表示甲烷之外的碳氢化合物(Non-Methane HydroCarbons),不过J1979没有明确说明。

服务01 PID 41

[编辑]

这个PID的请求会回传4字节的资料。 第一个字节会是0,第二个到第四个字节会提供特定在线测试(on-board test)可进行程度(availability)及完整性(completeness)。和PID 01相同,第三和第四个字节的定义会依发动机类型(B3)而不同,B3为0表示是火星塞,为1表示是压缩点火。可进行程度(availability)是用位元1表示,而完整性(completeness)是用位元0表示。

以下是共用的字节B的定义,以测试为基础。

可进行测试 测试不完整
元件 B2 B6
燃料系统 B1 B5
不发火 B0 B4

针对火星塞点火监控的字节C和D(奥托发动机或汪克尔发动机):

可进行测试 测试不完整
EGR系统 C7 D7
氧气侦测器加热器 C6 D6
氧气侦测器 C5 D5
冷气冷媒 C4 D4
第二侧空气系统 C3 D3
蒸发系统 C2 D2
已加热催化剂 C1 D1
催化剂 C0 D0

柴油发动机监控时的字节C和D:

可进行测试 测试不完整
EGR(排气再循环)及/或VVT(可变气门正时)系统 C7 D7
PM过滤器监控 C6 D6
尾气感测器 C5 D5
- 保留 - C4 D4
提升压力 C3 D3
- 保留 - C2 D2
NOx/SCR Monitor C1 D1
NMHC催化剂[a] C0 D0
  1. ^ NMHC可以表示甲烷之外的碳氢化合物(Non-Methane HydroCarbons),不过J1979没有明确说明。

服务01 PID 78

[编辑]

这个PID的请求会回传9字节的资料。 第一个字节是位元编码,表示支援的尾气温度感测器:

Byte 叙述
A 支援的尾气感测器
B-C EGT11读到的温度
D-E EGT12读到的温度
F-G EGT13读到的温度
H-I EGT14读到的温度

第一个字节的位元编码如下:

Bit 叙述
A7-A4 保留
A3 EGT bank 1是否支援感测器4?
A2 EGT bank 1是否支援感测器3?
A1 EGT bank 1是否支援感测器2?
A0 EGT bank 1是否支援感测器1?

剩下的字节是16位元的整数,表示摄氏下的温度,范围从-40到6513.5(比例0.1),其转换公式为(高字节为A,低字节是B)。只有有支援的感测器对应的值是有意义的。

PID 79的结构相同,但是是针对bank 2的感测器。

服务03(不需PID)

[编辑]

此服务的请求会回传一串已设定的DTC。会用ISO 15765-2的协定进行封装。

若DTC不超过二个(4字节),会用ISO-TP单一页框格式(SF)回复。若三个或三个以上的DTC,会分为多个页框传送,实际的页框数会依通讯格式以及定址方式而定。

每个诊断错误码为二个字节。诊断错误码的文字叙述如下。诊断错误码的第一个字会由第一个字节的前二个位元决定:

A7-A6 DTC的第一个字元
00 P—动力总成(Powertrain)
01 C—底盘(Chassis)
10 B—车体(Body)
11 U—网络(Powertrain)

DTC码的第二个字会由第一个字节的下二个位元决定:

A5-A4 DTC的第二个字元
00 0
01 1
10 2
11 3

DTC码的第三个字是一个数字,定义如下:

A3-A0 DTC的第三个字元
0000 0
0001 1
0010 2
0011 3
0100 4
0101 5
0110 6
0111 7
1000 8
1001 9
1010 A
1011 B
1100 C
1101 D
1110 E
1111 F

DTC码的第四个字及第五个字定义方式类似,不过是用B7-B4B3-B0位元。所产生的五个字元需类似U0158之类的字元,而且可以在OBD-II DTC表上找到。最后三个字允许使用十六进制的数字(0-9, A-F),不过常见的还是使用十进制的数字(0-9)。

服务09 PID 08

[编辑]

会提供有关催化剂bank、氧气侦测器bank、蒸发泄漏侦测系统、排气再循环及第二侧空气系统的使用追踪资讯。

每一个元件或是系统的分子针对侦测特定误动作的监控,追踪该监控所有条件成立的次数 每一个元件或是系统的分母针对该特定条件,车辆运作的次数

资料的个数需在讯息的一开始就说明(第一个字节)

所有使用中性能追踪的资料会包括二个字节,依次数送出(每个讯息有二个资料,因此长度为4)

Mnemonic 叙述
OBDCOND OBD监控条件成立计数
IGNCNTR 点火计数
CATCOMP1 催化剂监控完成计数Bank 1
CATCOND1 催化剂监控条件成立计数Bank 1
CATCOMP2 催化剂监控完成计数Bank 2
CATCOND2 催化剂监控条件成立计数Bank 2
O2SCOMP1 O2感测器监控完成计数Bank 1
O2SCOND1 O2感测器监控条件成立计数Bank 1
O2SCOMP2 O2感测器监控完成计数Bank 2
O2SCOND2 O2感测器监控条件成立计数Bank 2
EGRCOMP EGR监控完成条件计数
EGRCOND EGR监控条件成立计数
AIRCOMP AIR监控完成条件计数(第二组)
AIRCOND AIR监控条件成立计数(第二组)
EVAPCOMP EVAP监控完成条件计数
EVAPCOND EVAP监控条件成立计数
SO2SCOMP1 第二组O2感测器监控完成计数Bank 1
SO2SCOND1 第二组O2感测器监控条件成立计数Bank 1
SO2SCOMP2 第二组O2感测器监控完成计数Bank 2
SO2SCOND2 第二组O2感测器监控条件成立计数Bank 2

服务09 PID 0B

[编辑]

此服务提供有关NMHC 催化剂监控、NOx 催化剂监控、NOx吸收器监控、PM过滤器监控、排气感测器监控、GR(排气再循环)及/或VVT(可变气门正时)监控, 提升压力监控及燃料系统监控的使用性能资讯。

所有的资料都有2个位元,以以下的顺序排列(每一个讯息有二个资料,因为是4个位元):

记忆字 叙述
OBDCOND OBD监控条件计数
IGNCNTR Ignition计数
HCCATCOMP NMHC催化剂监控完成条件计数
HCCATCOND NMHC催化剂监控条件计数
NCATCOMP NOx/SCR催化剂监控完成条件计数
NCATCOND NOx/SCR催化剂监控条件计数
NADSCOMP NOx吸收器监控完成条件计数
NADSCOND NOx吸收器监控条件计数
PMCOMP PM过滤器监控完成条件计数
PMCOND PM过滤器监控条件计数
EGSCOMP 排气感测器监控完成条件计数
EGSCOND 排气感测器监控条件计数
EGRCOMP EGR(排气再循环)及/或VVT(可变气门正时)监控完成条件计数
EGRCOND EGR及/或VVT监控条件计数
BPCOMP 提升压力监控完成条件计数
BPCOND 提升压力监控条件计数
FUELCOMP 燃料监控完成条件计数
FUELCOND 燃料监控条件计数

枚举PID

[编辑]

有些PID的解读方式比较特殊,是有枚举的型式,这类PID没有位元定义,也没有单位。

服务01 PID 03

[编辑]

这种PID的请求会回复二个字节的资料。 第一个字节表示燃料系统#1。

叙述
1 因为发动机温度不足而开路
2 闭回路,利用氧气侦测器回授来决定fuel mix
4 因为发动机负载或是因减速燃料减少而开路
8 因为系统失效而开路
16 闭回路,利用至少一个氧气侦测器,但回授系统出现故障

其他的值无效。

第二个字节表示燃料系统#1,定义完全相同。

服务01 PID 12

[编辑]

这种PID的请求会回复一个字节的资料,表示第二侧空气状态。

叙述
1 上游
2 催化转化器的下游
4 来自外部大气,或是关闭
8 泵浦因诊断机能而开启

其他的值无效。

服务01 PID 1C

[编辑]

此种PID请求会回复一个字节的资料,说明电子控制器使用的OBD标准。以下是数值以及其对应的标准。

叙述
1 加州空气资源局英语California Air Resources Board(CARB)定义的OBD-II
2 美国国家环境保护局定义的OBD
3 OBD及OBD-II
4 OBD-I
5 没有相容的OBD
6 EOBD(欧洲)
7 EOBD及OBD-II
8 EOBD及OBD
9 EOBD、OBD及OBD II
10 JOBD(日本)
11 JOBD及OBD II
12 JOBD及EOBD
13 JOBD、EOBD及OBD II
14 保留
15 保留
16 保留
17 发动机制造商诊断(Engine Manufacturer Diagnostics、EMD)
18 发动机制造商增强诊断(Engine Manufacturer Diagnostics Enhanced、EMD+)
19 重载OBD(部分)(HD OBD-C)
20 重载OBD(HD OBD)
21 全球协调OBD(WWH OBD)
22 保留
23 重载欧盟OBD第一阶段,没有NOx控制(HD EOBD-I)
24 重载欧盟OBD第一阶段,有NOx控制(HD EOBD-I N)
25 重载欧盟OBD第二阶段,没有NOx控制(HD EOBD-II)
26 重载欧盟OBD第二阶段,有NOx控制(HD EOBD-II N)
27 保留
28 巴西OBD第一阶段(OBDBr-1)
29 巴西OBD第二阶段(OBDBr-2)
30 韩国OBD(KOBD)
31 印度OBD I(IOBD I)
32 印度OBD II(IOBD II)
33 重载欧盟OBD第四阶段(HD EOBD-IV)
34-250 保留
251-255 没有适合的系统(SAE J1939有特殊意义)

燃料码

[编辑]

服务01 PID 51会回传数值,对应车辆的燃料型态。燃料型态一个字节,数值和燃料对应如下:

数值 描述
0
1 石油
2 甲醇
3 乙醇
4 柴油
5 液化石油气
6 压缩天然气
7 丙烷
8 电力
9 生质燃料汽车英语Bi-fuel vehicle,目前用汽油运行
10 生质燃料汽车,目前用甲醇运行
11 生质燃料汽车,目前用乙醇运行
12 生质燃料汽车,目前用LPG运行
13 生质燃料汽车,目前用CNG运行
14 生质燃料汽车,目前用丙烷运行
15 生质燃料汽车,目前用电力运行
16 生质燃料汽车,目前用电力及内燃机发动机运行
17 汽油燃料的油电车
18 乙醇燃料的油电车
19 柴油燃料的油电车
20 以电力运行的油电车
21 以电力及内燃机发动机运行的油电车
22 油电车,能源回昇模式
23 生质燃料汽车,目前用柴油运行

其他的值保留供ISO/SAE使用,目前没有针对弹性燃料车英语flexible-fuel vehicle的定义。

非标准的PID

[编辑]

大部分的在使用的OBD-II PID都是非标准的,针对大部分现今的车辆,OBD-II界面中支持的非标准PID功能比标准PID功能还多,各家的非标准PID只有少部分的重叠。

在公众领域中非标准PID的资讯相当有限。有一个以美国为主的设备工具研究所英语Equipment and Tool Institute(ETI)有维护一些厂商的非标准PID,只提供给其会员。ETI的年费和公司在北美车辆工具及设备的营业额有关:

北美年营业额 年费
$10,000,000以下 $5,000
$10,000,000 - $50,000,000 $7,500
$50,000,000以上 $10,000

就算是ETI,也没有所有非标准PID的文件。ETI表示[6][7]

有些车厂拒绝用ETI来提供资讯给相关工具厂商。他们比较想和每一家工具厂商个别作生意。这些公司会要求你和他们签合约。其费用是变动的,以下是2015年4月13日的年费:

通用汽车 $50,000
丰田 $5,000
铃木 $1,000
BMW $25,500,每次更新要加$2,000,每年更新一次

CAN(11位元)通讯格式

[编辑]

在车内的CAN网络中会有查询PID以及PID回复的讯息。标准OBD查询以及回复会用机能式的地址。诊断读取器会用CAN ID 7DFh送出查询讯息,此位址是广播位置,并且会接受从7E8h到7EFh的回复。回复OBD查询的电子控制器也会接收7DFh广播位置的讯息,并且接收7E0h到7E7h范围内指定ID的讯息。其回应的ID是指定ID值加8,范围从7E8h到7EFh。

此作法可以允许最多8个电子控制器,每一个都可以回复OBD的查询。诊断读取器可以用ECU回复的ID继续和特定的电子控制器通讯。特别是多页框的通讯需要特定ID电子控制器的回复。

CAN也可以传送标准OBD讯息以外的资讯,实体位址会用这些特殊模组的CAN讯息(例如720h是福特汽车的组合仪表),也会有专属的页框以及传送资料。

查询

[编辑]

机能性的PID查询会用ID 7DFh的CAN讯息送出,其资料为:

Byte
PID Type 0 1 2 3 4 5 6 7
SAE标准 额外资料字节的数量:
2
服务
01 = 显示目前资料
02 = 显示冻结的页框资料
......
PID code
(例如:05 = 发动机冷媒温度)
未使用
ISO 15765-2建议用CCh)
个别车辆 额外资料字节的数量:
3
自定服务(例如,22 = 加强资料) PID码
(例如4980h)
未使用
ISO 15765-2建议用CCh)

回应

[编辑]

车辆会用讯息ID来回应PID查询,其ID编辑和回应的模组有关。一般而言发动机及主发动机控制器会用ID 7E8h回应,其他设备,像是混合控制器或是Prius里的电池控制器,会用07E9h、07EAh、07EBh等ID回应。设备回应的讯息ID会比其设备接收的讯息ID多8。回应值的长度会变动,但回应讯息固定都是8个位元。 各字节的定义为:

Byte
PID Type 0 1 2 3 4 5 6 7
SAE标准
7E8h,
7E9h,
7EAh,
额外资料字节的长度:
3到6
自定服务
和查询的相同,但服务编号会加上40h。因此:
41h 是显示目前资料;
42h是显示冻结的页框资料等.
PID code
(例如05是发动机冷媒温度)
特定参数的值,字节0 值,字节1(可选) 值,字节2(可选) 值,字节3(可选) 未使用
(可以是00h或55h)
车辆指定
7E8h,或实体模组ID + 8h
额外资料字节的长度:
4到7
自定服务
和查询的相同,但服务编号会加上40h。(例如,62h 是服务22h请求的回复讯息)
PID码
(例如4980h)
特定参数的值,字节0 值,字节1(可选) 值,字节2(可选) 值,字节3(可选)
车辆指定
7E8h,或实体模组ID + 8h
额外资料字节的长度:
3
7Fh,此通用回应一般表示模组不识别请求 自定服务(例如22h是PID的加强诊断资料) 31h 未使用
(可以是00h)

相关条目

[编辑]

参考资料

[编辑]
  1. ^ Basic Information | On-Board Diagnostics (OBD). US EPA. 16 March 2015 [24 June 2015]. (原始内容存档于2016-04-06). 
  2. ^ Escape PHEV TechInfo - PIDs. Electric Auto Association - Plug in Hybrid Electric Vehicle. [11 December 2013]. (原始内容存档于2020-06-14). 
  3. ^ Extended PID's - Signed Variables. Torque-BHP. [17 March 2016]. (原始内容存档于2016-03-23). 
  4. ^ OBD2 Codes and Meanings. Lithuania: Baltic Automotive Diagnostic Systems. [11 June 2020]. (原始内容存档于2020-06-15). 
  5. ^ OBD2 Freeze Frame Data: What is It? How To Read It?. OBD Advisor. 2018-02-28 [2020-03-14]. (原始内容存档于2019-08-03) (美国英语). 
  6. ^ ETI Full Membership FAQ. The Equipment and Tool Institute. [29 November 2013]. (原始内容存档于2017-03-10). : state: showing cost of access to OBD-II PID documentation
  7. ^ Special OEM License Requirements. The Equipment and Tool Institute. [13 April 2015]. (原始内容存档于2017-05-03). 

延伸阅读

[编辑]