1、OBD2 输出信息的 9 种诊断模式OBD 系统提供了丰富的诊断状态和结果信息,这些信息不仅可用于相应机关对车辆状态的审查(比如年检),还有助于故障的定位和排除,更可为 DIY 者提供新的乐趣。此外,这些信息的统计结果对法规制定者、整车和零部件/系统制造者以及科研工作者提供宝贵的借鉴。 法规要求OBD 系统提供的信息决定于法规的要求、车辆的配置、整车制造厂和发动机电控系统供应商的要求以及OBD 系统本身的技术水平几个方面。但是首先要满足当地法规的要求。我国采用了 EOBD 相同的要求,在 GB18352.32005 中的相关描述如下: IA.6.5.3.3 必须采用 ISO DIS 15031
2、5“道路车辆 车辆与排放有关诊断用的外部试验装置之间的通讯 第 5 部分:排放有关的诊断服务”(2001 年 11 月 1 日)规定的格式和单位提供基本诊断数据(见 IA.6.5.1 规定)和双向控制信息,并且这些信息必须能通过满足 ISO DIS 150314 要求的诊断工具获得。 OBD 系统输出信息的模式/服务 Mode 1: 请求动力系当前数据 Mode 2: 请求冻结祯数据 Mode 3: 请求排放相关的动力系诊断故障码 Mode 4: 清除/ 复位排放相关的诊断信息 Mode 5: 请求氧传感器监测测试结果 Mode 6: 请求非连续监测系统 OBD 测试结果 Mode 7: 请求
3、连续监测系统 OBD 测试结果 Mode 8: 请求控制车载系统,测试或者部件 Mode 9: 读车辆和标定识别号Mode 1: 请求动力系当前数据说明 模式 1 的功能是根据法规要求,使得外部标准的诊断工具可以访问当前排放相关的一些基本参数的数据值。这些参数包含系统的一些模拟输入和输出量,数字输出和输出量,以及系统状态信息等。这些参数是车辆和发动机以及 OBD 系统本身最重要的信息,它们是实时刷新的。 150315 给出了可供选择的所有参数的标准定义,包括存储格式、单位和文字描述等信息。每个参数都有一个参数标识(PID)与之相对应。所有可能输出的参数请参考 PID 列表。 不同的车在模式 1
4、 中显示的参数可能不同,比如使用进气歧管压力传感器来确定进气量的系统会输出压力值,而使用流量传感器的系统会输出流量值。但是至少要包含法规要求的基本参数。 在某些部件损坏的时候,系统在判断出故障之后可能会自动切换到一个预先设置或者根据相应模型计算出来的一个替代值,此时模式 1 显示的仍然是真实的信号值,这样更有利于在维修中确认和排除故障。示例PID 01 10000010 MIL on, 2 fault code entries00000111 Misfire monitoring supported and completeFuel system monitoring supported an
5、d completeComprehensive component monitoring supported and completereserved not supported01101101 Catalyst monitoring supported and complete01101100 Heated catalyst monitoring not supportedEvaporative system monitoring supportedSecondary air system monitoring supportedA/C system refrigerant monitori
6、ng not supportedOxygen sensor monitoring supportedOxygen sensor heater monitoring supportedEGR system monitoring not supportedPID 03 0000 0010 Fuel system status Bank 1 Closed loop, using oxygen sensors0000 0000 Fuel system status Bank 2PID 04 30.60% Calculated load valuePID 05 95 deg Engine coolant
7、 temperaturePID 06 1.60% Short term fuel trim - Bank 1PID 07 0.00% Long term fuel trim - Bank 1PID 0C 785 1/min Engine speedPID 0D 0 km/h Vehicle speedPID 0E 3.0 degW Ignition timing advance for cylinder 1PID 0F 39 deg Intake air temperaturePID 10 3.00 g/sec Air flow ratePID 11 12.20% Absolute throt
8、tle positionPID 12 0000 0100 Secondary air status atmosphere / offPID 13 0000 0011 Location of oxygen sensorBank 1 Sensor 1Bank 1 Sensor 2PID 15 0.800 V Oxygen sensor output Bank 1 Sensor 299.22%(Value = FF) Short term fuel trim Bank 1 Sensor 2PID 1C 6-Dec OBD requirement EOBDPID 21 0 km Distance tr
9、aveled while MIL onPID 34 1.000 Lambda Equivalence ratio Bank 1 Sensor 10.02 mA Oxygen sensor current Bank 1 Sensor 1模式 2:请求冻结桢数据法规要求IA.6.6.1 诊断信号的内容和获取方式 一旦测定了任何部件或系统的首次故障,必须将当时发动机状态的冻结帧储存在电控单元存储器中。如果随后发生了供油系统或失火故障,任何原储存的冻结帧必须被供油系统或失火状态(取先发生者)所替代。储存的发动机状态必须包括,但不限于:计算的负荷值、发动机转速、燃油修正值(如有)、燃油压力(如有)、车速
10、(如有)、冷却液温度、进气岐管压力(如有)、闭环或开环运转状态(如有)和引发上述数据被储存的故障代码。制造厂必须选择便于有效修理的最合适的一组状态作为冻结帧储存。 说明模式 2 的目的是访问保存在冻结桢中的排放相关的数据。所谓冻结桢,指的是故障在首次出现的瞬间,车辆和发动机的一些最重要的参数值。它就像一张故障现场的“快照”,这些信息有助于探究故障发生的原因,对维修具有重要价值。 冻结桢中包含的信息是有限的,法规给出了最小的要求,在满足法规要求的前提下,厂家可以把更多的参数记录下来在模式 2 种输出,不过所有输出的参数必须在 150315 定义的 PID 列表中选择,输出的格式、单位和文字描述必
11、须符合 150315 种的定义,这主要是为了使所有符合 150314 要求的扫描工具都能读取和解释这些信息。当然,输出的参数越多意味着在 ECU 中相应的存储空间就越大。 值得注意的是 OBD 系统只能输出一个故障的冻结桢,在系统中存在多个故障的时候,根据故障的优先级来决定在模式 2 种输出哪种故障的冻结桢。供油系统故障和失火故障的优先级高于其它故障。比如如果出现由于喷油器电路引发的失火故障的时候,模式 2 中输出的是失火故障,而不是喷油器电路的冻结桢。 示例P0301 Cylinder 1 misfire detectedPID 03 0000 1000 Fuel system status
12、 Bank 1 Open loop due to detected fault0000 0000 Fuel system status Bank 2PID 04 31.4 % Calculated load valuePID 05 96 deg Engine coolant temperaturePID 06 0.0 % Short term fuel trim - Bank 1PID 07 0.8 % Long term fuel trim - Bank 1PID 0C 760 1/min Engine speedPID 0D 0 km/h Vehicle speed根据上面的信息我们可以判
13、断 1 缸发生失火的时候发动机已经充分暖机,车辆处于静止状况下,因为转速较低,所以很可能是在怠速状态模式 3:请求排放相关的动力系诊断故障码法规要求I.3.6 故障代码的储存 如果由于劣化、发生故障或永久排放默认模式引起 MI 激活,则必须储存能识别相应故障类型的故障代码。当涉及 I.3.3.3.5 和 I.3.3.4.5 相关的故障类型时,也必须储存相应的故障代码。 I.3.5.2 对于需要两个以上运转循环才能激活 MI 的方案,制造厂必须提供数据和/ 或工程评价,以充分证明该监测系统能同样有效和及时地监测部件的劣化。不接受需要平均 10 个以上运转循环才能激活 MI 的方案。一旦超过 I.
14、3.3.2 给出的排放限值,发动机控制将进入永久排放默认模式,或者车载诊断(OBD)系统不能满足 I.3.3.3 或 I.3.3.4 的基本诊断要求时, MI 也必须激活。(关于激活 MI 的规定) I.3.3.3.5 除非另有监测,否则对其它任何与排放有关的,且与电控单元相连接的动力系部件,包括任何能实现监测功能的相关的传感器,都必须监测其电路的连通状态。 I.3.3.4.5 除非另有监测,否则必须监测其它任何与排放有关,且与电控单元相连接的动力系部件的电路连通状态。 说明 模式 3 中输出的是排放相关的动力系的故障代码。 故障灯亮的时候一定在模式 3 中存储了故障码。一个故障在首次被检测出
15、来之后一般并不会立即点亮故障灯,但是最多第三次检测出来的时候(即最多按照 I 型试验规定的工况进行两次预处理之后,在第三个 I 型试验结束之前)就应该点亮故障灯。这是出于对偶发故障进行确认的考虑。 点亮故障灯的故障不仅包含哪些损坏之后会导致排放超过 EOBD 限制的故障,还包含哪些损坏或者劣化之后会影响 OBD 系统检测其它排放相关的故障。以下是两个例子:o 催化器下游的后氧传感器损坏之后并不一定会导致排放超过 EOBD 限制,事实上在不带OBD 功能车辆上大多没有后氧传感器,但是如果催化器的诊断需要用到后氧传感器的信,那么后氧传感器出现故障被确认后也必须点亮故障灯。o 如果 OBD 系统是通
16、过车身加速度传感器来判断坏路,以临时关闭失火诊断功能来避免误判失火故障的,那么加速度传感器损坏之后就可能使得 OBD 系统认为始终处于坏路上而一直关闭失火诊断功能,这样在真的发生失火之后就反而会判断不出来。因此,虽然加速度传感器的损坏不会直接导致车辆的排放超过 EOBD 限制,但是它也必须被诊断并在故障确认之后点亮故障灯。示例MIL on 2 fault code entriesP0201 Injector Circuit/Open - Cylinder 1P0301 Cylinder 1 misfire detected模式 4:清除/复位排放相关的诊断信息模式 4 的作用是清除 OBD 系
17、统所记录的所有排放相关的诊断信息。这些信息包括: 诊断故障码的个数(模式 1 中 PID 01) 故障灯状态(模式 1 中 PID 01) 诊断故障码(模式 3) 冻结桢对应的故障码和冻结桢数据(模式 2) 氧传感器暖气测试结果(模式 5 或 6) 系统检测状态(模式 1 中 PID 01) 车载监测测试结果(模式 6 和模式 7) 故障灯激活之后的行驶里程(模式 1 中 PID 21)模式 4 对 OBD 系统进行的删除 /重置至少要在起动前点火钥匙开关处于 ON 的状态下能够执行。大部分ECU 在发动机运转的时候也可进行此操作。 值得指出的是,并不是通过模式 4 把故障信息删除了就可以掩盖
18、系统的故障。这是因为在模式 4 的操作之后,OBD 系统的状态信息也被重置了。即模式 1 中的 PID 01 内反映诊断功能是否完成的状态会显示为未完成,也就是说虽然 OBD 系统显示没有故障,但是同时也会显示还未完成相关诊断工作,因此没有故障这一结果是不可信的。这意味着,如果车检所以后通过 OBD 状态信息来判断车辆是否通过年检之前,把故障车辆的故障信息删除是无法过关的。模式 5:请求氧传感器检测测试结果模式 5 输出的信息是氧传感器的信息,其中既包含氧传感器的特性参数(常数,决定于选用的氧传感器本身),还包括氧传感器的一些评价指标的测试结果。 这里需要强调的是,对于使用 CAN 通讯协议的
19、 OBD 系统,模式 5 是不支持的,模式 5 中的相应信息会在模式 6 中输出。 氧传感器的重要性氧传感器是发动机控制系统中非常重要的排放控制部件,ECU 根据氧传感器的测量信号判断混和气的浓稀状态,从而相应的实时调整喷油量,使得油气混和气的比例控制在能够使催化转化器能够更高效的转化废气中的 HC、CO 和 NOx。氧传感器损坏之后会直接导致错误的控制反馈,从而无法保证混和气中的油气比例,进而导致排放超标。此外,氧传感器损坏之后还会导致催化器的诊断不可靠。 另一方面,氧传感器处于高温的工作状态,又可能受到不良油品的污染,因而比较容易损坏。因此对氧传感器的各项性能指标进行监测对排放控制来说非常
20、重要。 氧传感器的故障类型不同形式的氧传感器可能出现的故障类型也不同。对于较为常用的两点式氧传感器来说,可能出现故障类型包括但不限于如下几种: 氧传感器信号线断路,与电源线的短路,与地线的短路; 氧传感器加热线的断路,与电源线的短路,与地线的短路; 氧传感器信号的化学特性偏移,偏大或者偏小,从而导致测量信号比实际偏浓或者偏稀; 氧传感器与加热线的短路; 氧传感器的动态特性变慢; 氧传感器的加热效率降低,不能保证迅速达到正常工作所需要的温度。评价氧传感器的性能指标氧传感器的故障类型多种多样,不同的系统可能使用不同的测量和计算方法来评判氧传感器的各个指标。为了保证不同 OBD 系统在模式 5 中输
21、出的信息统一,ISO DIS 150315 规定了一些常用的评价指标供选择。这些指标反映了氧传感器最终的特性,每条指标对应一个测试标识号(Test ID),其格式、单位、描述等都有明确的定义,具体信息请参考 TID 列表。ISO DIS 150315 中也留出一些 TID 号供厂家自行定义。下图为部分 TID 对应的指标的图示: 模式 5 中输出的信息格式每个指标通过一条信息输出,每条信息包含如下内容: Test IDTest Value Min Value Max Value DescriptionTID号测试结果和单位正常情况下最小值和单位,如果这个 TID 对应的是反映传感器特性的常数,
22、则此项为空。正常情况下的最大值和单位,如果这个 TID 对应的是反映传感器特性的常数,则此项为空。文字描述示例 以下是在催化器上游和下游都使用了两点式氧传感器的车辆上得到的测试结果: Bank 1 Sensor1 (注:即第一个催化器的前氧传感器)Test ID Test Value Min Value Max Value Description01 0.445 V Lean to rich sensor threshold voltage02 0.445 V Lean to rich sensor threshold voltage07 0.050 V 0.005 V 0.400 V Min
23、imum sensor voltage for test cycle08 0.830 V 0.500 V 1.045 V Maximum sensor voltage for test cycle09 1.20 s 0.12 s 1.44 s Time between sensor transitions32 2.36 s 0.00 s 2.48 s Averaged sensor periodBank 1 Sensor 2 (注:即第一个催化器的后氧传感器)Test ID Test Value Min Value Max Value Description01 0.650 V Lean to
24、 rich sensor threshold voltage02 0.650 V Lean to rich sensor threshold voltage07 0.030 V 0.005 V 0.400 V Minimum sensor voltage for test cycle08 0.895 V 0.500 V 1.045 V Maximum sensor voltage for test cycle根据上面的输出内容可以判断此车具有两个氧传感器,各项指标都在正常的范围内。但是 TID 32 中测试结果 2.36 s 已经非常接近损坏的限制 2.48s,其含义是氧传感器的平均周期,这说
25、明此氧传感器已经发生了老化,其动态特性有明显变慢,对混和气浓稀的变化不够敏感,不过还不至于导致车辆的排放水平超过EOBD 限值。模式 6:请求非连续监控的测试结果模式 6 输出的是 OBD 系统对某个部件/ 系统的非连续监测结果。 非连续监测的原因任何故障出现之后都能够被立即诊断出来当然是理想的,但是事实上这并不容易。非连续监测一般指在一个运转循环中只能完成一次诊断的诊断功能。 导致这种情况的原因主要有如下两种: 诊断功能运行的前提条件较高。比如催化器诊断,因为没有可测的一个信号来直接判断催化器的转化能力,典型的诊断方法通过相应的算法根据催化器上游和下游的信号来“推断”催化器的状态,为了避免由
26、于氧传感器本身的损坏导致催化器诊断的错误,首先又要完成对氧传感器的诊断。再比如二次空气系统诊断,因为二次空气系统的工作有温度要求,而诊断功能只有在其工作的时候才可能判断它是不是能正常工作。发动机起动之后,冷却液温度会立即上升,一旦超过一定温度二次空气系统就会停止工作,诊断功能也不就不再会运行。 诊断功能的运行可能影响到系统的正常运行。举例来说,某些氧传感器诊断算法在发现氧传感器总是偏大或者偏小的时候,为了证明不是其它原因而真的是氧传感器本身的问题,诊断功能会强制减少或者增加喷油量,如过此时氧传感器信号仍然对此没有做出反应则再判为故障。然而系统为了完成诊断所做的这种行为本身对排放也是不利的,因此
27、不能总是进行。模式 6 中输出的信息模式 6 中输出的信息也是某个部件或系统的监测结果。每条信息对应一个测试标示(Test ID),信息中也包含测试值、最大值和最小值。模式 6 同模式 5 有以下不同: 模式 6 中的 TID 是由厂家定义的,只需要遵循 150315 中定义的格式输出即可。因为不同的厂家可能使用不同的 TID 定义,因此必须了解相应的定义才能解读。 模式 6 中一个 TID 可能有多个测试结果,每个测试结果对应不同的指标,通过 CID 来区分这些指标。 模式 6 中的测试结果只能是正数,多是一个无单位的指标。 模式 6 中每条信息只能指明一个边界值,比如如果想输出某个测试结果
28、以及其正常值的最大和最小边界,那么模式 6 会通过两条信息输出。模式 6 中每条信息的格式如下: Test ID Comp ID Test Value Min Value Max Value由厂家定义 由厂家定义 测试结果只可能是正数 最小值 最大值示例Test ID Comp ID Test Value Min Value Max Value01 20 191 - 409603 01 106 26 -05 05 2375 2294 -其中 TID 01 对应的是催化器的测试结果,TID 03 是二次空气系统的监测结果 ,TID 05 是蒸发控制装置的测试结果。可以看出,它们的相关指标都处于正
29、常的范围内。模式 7:请求连续监测系统 OBD 测试结果模式 7:请求连续监测系统 OBD 测试结果 模式 7 的目的是使外部的测试设备能够访问在一般驾驶状况下连续监测的排放相关部件和系统的故障。 一个故障在首次被监测出来之后会首先在模式 7 中显示,如果随后被确认(除非由厂家特别指出,一般最多在第三次被监测出来之后会被确认)才会进一步显示在模式 3 中。 模式 7 中显示的信息可以帮助维修技师在进行修理或者清除故障之后指通过一个有效的运转循环就可以确认故障是不是仍然存在。 模式 7 中通过故障码可以显示多个故障。示例P0300 Random/Multiple Cylinder Misfire
30、 DetectedP0304 Cylinder 4 Misfire DetectedP0301 Cylinder 1 Misfire DetectedP0303 Cylinder 3 Misfire Detected模式 8:请求控制车载系统,测试或者部件模式 8 的作用是使得外部测试设备可以控制 OBD 系统、测试或者部件的工作。显示的信息包括系统的状态和测试的结果。 对于 EOBD 来说不对模式 8 进行要求,我国采用了 EOBD 的要求,因此凡为中国市场开发的 OBD 系统不支持模式 8 的功能。模式 9:读车辆和软件识别号IA.6.5.1.5 通过标准数据连接器上的串口,应能读到匹配软
31、件的识别号。该匹配软件的识别号应以标准化格式提供。 说明 模式 9 种显示的软件识别号(Calibration IDentification)由车辆制造厂提供,但是要按照标准的格式输出,也就是一个只多 16 个字符的字符串; 除了 CID 之外,整车制造厂还可以选择输出其他信息,这些信息的格式已经在 ISO/DIS 150315 种给出了定义,每条信息有一个 VID 号码相对应; 如果能够提供车辆识别号(Vehicle Identification Number) ,ISO/DIS150315 也推荐显示此VIN,但是并不做强制要求,其 VID 号码为 02。模式 9 中的信息可以使得维修者和爱好者可以迅速准确地确定车辆和 OBD 系统的数据状态。比如用于爱好者之间进行交流和在召回时确定车辆和 OBD 系统状态。 示例VID 04 Calibration Identification06B123456Z ABCD