故障码状态用于实时反映该故障的诊断状态,ECU需按协议要求存储DTC状态信息,具体有如下相关定义和要求。
规则和定义:
Test: A test is an on-board diagnostic software algorithm that determines the malfunction status of a component or system typically within a single operation cycle. Some tests run only once during an operation cycle. Other tests can run every program loop, sampling as often as every few milliseconds. The end result of a test represents acompletely matured / qualified condition (i.e., passed or failed). That means a test which needs a failing condition over a specific time or evaluation ofadditional plausibility checks before a component isconsidered to be failing will return a “Failed” condition only after all maturation criteria have been fulfilled. Each DTC is associated with a test representing a detectable fault symptom.
在单个操作循环内,运行可判断某个系统/部件失效状态的在线诊断软件算法;一些Test在一个操作循环内只运行一次;一些Test每个软件循环都运行;Test的最终结果表示一个完全成熟/合格的条件。也就是说,一个需要零部件失效状态超过一定时间或额外的合理性验证才认为失效的测试,只有在满足所有成熟度条件后才返回Failed;
Test Sample: A test sample represents the 'pass' or 'fail' result from a single instance of a DTC test execution when the test run criteriaare met. This represents a single sample and therefore not generally a fully matured / qualified condition.For an ECU supporting the DTC Fault Detection Counter a test sample representing a fail willincrease the DTC Fault Detection Counter by a specific amount and a test sample representing a pass will decrease the DTC FaultDetection Counter by a specific amount.
测试采样表示了条件满足时单个DTC测试执行的结果pass/fail。这只代表单个测试,一般不满足完全成熟/限定的条件。对于一个支持DTC故障检测计数器的ECU来说,一次fail的测试采样会增加DTC故障检测计数器的值,增加多少可自定义;一次pass的测试采样会降低DTC故障检测计数器的值,降低多少可自定义。
Complete: Complete is an indication that a test was able todetermine whether a malfunction exists or does not exist for the current operation cycle (completedoes not imply failed).
能够判定故障在当前操作循环测试是否已经完成;(完成并不意味着失败)
Test results: While a test runs or after it has completedit may indicate one the following results to the internal failure handler.
测试运行或完成后,可能有如下测试结果:
-
PreFailed
-
Failed
-
Passed
Failure: A failure is the inability of a component or system tomeet its intended function. A failure has occurred when fault conditions have been detected for a sufficient period of time, implying that a test returned a “Failed” result. The terms"failure" and "malfunction" are interchangeable.
Failure是组件或系统无法满足其预期功能。Failure说明故障触发持续了足够的时间,意味着该测试结果为Failed;
Monitor: A monitor consists of one or more tests used to determinethe proper functioning of a component or system.
一个监控由一个或多个测试组成。
Monitoring cycle: A monitoring cycle is the time in which a monitor runs to its completeness. This is a manufacturer defined set of conditions during which the tests of a monitor can run. A monitoring cycle may be executed several times duringan operation cycle or once over several operation cycles.
监控循环,一个监控运行的时间;监控循环可在一个操作循环能执行多次或在多个操作循环能执行一次;
Operation Cycle: An operation cycle defines the start and end conditions for monitors to run. During an operation cycle several monitoring cycles may have completed (regardless of their test results). An ECU may support several operation cycles.For body and chassis ECUs it is up to the manufacturer to define an operation cycle (e.g. time between powering up and powering down the ECU or between ignition on and ignition off). For powertrain ECUs, there are additional criteria defining an operation cycle. Emissions related powertrain ECUs use an engine-running or engine-off time period to define an operation cycle which is referred to as driving cycle. If a reset condition for a DTC status bit is associated with the beginning of the operation cycle, it might also be considered the end of the previous cycle (i.e., it is not always possible to distinguish the beginning versus the end of each operation cycle).
操作循环定义了从监控运行的开始和结束条件。一个操作循环内,监控循环可能运行多次;一个ECU可能支持多个操作循环;对于车身、底盘相关ECU,由制造商定义一个操作循环(如power up到power down或ignition on到ignition off);排放相关的ECU使用engine-running or engine-off时间周期来定义一个操作循环(也称作driving cycle),其由法规来定义;
Pending: The pending status of a failure is defined as a test having reported a “Failed” result for this test during the current operation cycle or during the last completed operation cycle. Once the test has reported a “Passed” condition for a complete operation cycle of this failure the pending status is reset.
Failure的pending状态定义为:在当前操作循环或上一个完成的操作循环内,测试结果为"Failed"; 一旦该故障在一个完整操作循环内测试结果为"Passed", 则复位;
Confirmation Threshold: The confirmed status of a failure is defined as a test having reported 'Failed' for this test for a given number of operation cycles where the test has run to completion. Typically for non-OBD use cases the threshold foroperation cycles is defined as one. For OBD use cases this threshold is typically greater than one.Implementations may use a Trip Counter (see Figure D.9) as a trigger for changing the confirmed status from 0 to 1. The Trip Counter counts the number of operation cycles (driving cycles) where a malfunction occurred. If the counter reaches the threshold (e.g., 2 driving cycles) the confirmed bit changes from 0 to 1.
Failure的确认状态定义为:在指定个数的操作循环内均诊断到故障Failed,确认该故障;非排放相关的故障一般为一个操作循环确认故障;OBD相关的一般大于1;
Aging Threshold: The aging of a DTC is defined as a test having reported no 'Failed' result for a given number of vehicle manufacturer or regulation defined operation cylces and it is vehicle manufacturer specific if the respective cycle triggers incrementing the aging counter depending on whether the test has run to completion or not during the cycle. Implementations may use an aging counter see Figure D.11) as a trigger for changing the confirmed status from 1 to 0 and erasing the DTC information from non-volatile memory. The aging counter counts the number of cycles (e.g., warm-up cycles) meeting the previously mentioned criteria. If this counterreaches the threshold (e.g., 40 warm-up cycles) the confirmed bit changes from 1 to 0.
老化阈值,测试未报Failed的操作循环次数;满足某个标准,如warm-up cycles, 老化计数器开始计数,达到阈值后将DTC从non-volatile内存中清除,confirmed位从1变为0;
Driving cycle: A specific type of operation cycle used foremissions-related ECUs. Refer to “OperationCycle” for further details. In emissions-related ECUs only one operation cycle shall be supported, which is identical to the driving cycle as defined by legislation.
用于排放相关ECU的一种特殊操作循环;
DTC状态位定义:
Bit 0: testFailed
This bit shall indicate the result of the most recently performed test. A logical ‘1’ shall indicate that the lasttest failed meaning that the failure is completely matured. Reset to logical'0' if the result of the most recently performed test returns a “pass” resultmeaning that all de-mature criteria have been fulfilled. Additional reset conditions may be defined by the vehicle manufacturer / implementation.
最近执行测试的结果,Failed则置"1";最近测试通过(pass)或发送清故障码服务则置"0";
Bit 1: testFailedThisOperationCycle
This bit shall indicate whether or not a diagnostic test has reported a testFailed result at any time during the current operation cycle (or that a testFailed result has been reported during the current operation cycle and after the last time a call was made toClearDiagnosticInformation). Reset to logical '0' when a new operation cycle is initiated or after a call toClearDiagnosticInformation. If this bit is set to logical '1', itshall remain a '1' until a new operation cycle is started.
在当前操作循环内的测试结果,该操作循环内只要发生过Failed,则置"1"; 开始新的操作循环或发送清故障码服务后,置"0";
Bit 2: pendingDTC
This bit shall indicate whether or nota diagnostic test has reported a testFailed result at any time during the current or last completed operation cycle.The status shall only be updated if the test runs and completes. The criteria to set the pendingDTC bit and the TestFailedThisOperationCycle bit are the same. The difference is that the testFailedThisOperationCycle is cleared at the beginning of each operation cycle and the pendingDTC bit is not cleared until an operation cycle has completed where the test has passed at least once and never failed. If the test did not complete during the current operation cycle, the status bit shall not be changed. For example, if a monitor stops running after a confirmed DTC is set, the pendingDTC must remain set = '1'. For an OBD DTC, a pending DTC is required to be stored after a malfunction is detected during the first driving cycle.
在当前操作循环或上一个完成的操作循环内,测试是否报告过"Failed"; 该状态位只在测试运行和操作循环完成且在该操作循环内从未"Failed"过或发送清故障码服务后才置0;如果在当前操作循环内未完成测试,则状态不变;
Bit 3: confirmedDTC
This bit shall indicate whether amalfunction was detected enough times to warrant that the DTC is desired to be stored in long-term memory. A confirmed DTC does not always indicate that the malfunction is present at the time of the request. (testFailed can be used to determine if a malfunction is present at the time of the request). Reset to logical '0' after a call to ClearDiagnosticInformation or after aging threshold has been satisfied (e.g.,40 engine warm-ups without anotherdetected malfunction). Furthermore this bit is reset when the fault record associated with this DTC is overwrittenby a newer DTC based upon vehicle manufacturer specific fault memory overflow requirements. DTC confirmation threshold and aging threshold are defined by the vehicle manufacturer or mandated by On Board Diagnostic regulations.
表示故障是否检测到了足够的时间以存储到long-term memory,若足够,则置"1"; 其为1的时候并不意味着此刻故障存在;发送清除故障码或达到老化阈值(40个暖机循环里未检测到故障)则置"0";
Bit 4: testNotCompletedSinceLastClear
This bit shall indicate whether a DTC test has ever run and completed since the last time a call was made to ClearDiagnosticInformation. One ('1')shall indicate that the DTC test has not run to completion. If the test runs and passes or if the test runs and fails (e.g. testFailedThisOperationCycle = '1') then the bit shall be set to a'0' (and latched).
表示一个DTC测试从上次清故障码开始,是否运行过或完成过测试;若没有,则置"1";否则置"0";清故障码置"1";
Bit 5: testFailedSinceLastClear
This bit shall indicate whether a DTC test has completed with a failed result since the last time a call was made to ClearDiagnosticInformation (i.e., thisis a latched testFailedThisOperationCycle = '1'). Zero ('0') shall indicate that the test has not run or that the DTC test ran and passed (but never failed). If the test runs and fails then the bit shall remain latched at a '1'. It is the responsibility of the vehicle manufacturer to specify whether or not this bit is reset by aging-criteria or reset due to an overflow of the fault memory.
表示一个DTC测试从上次清故障码开始,是否测试失败过;若没有,则置"0";否则置"1";清故障码置"0";
Bit 6: testNotCompletedThisOperationCycle
This bit shall indicate whether a DTC test has ever run and completed during the current operation cycle (or completed during the current operation cycle after the last time a call was made to ClearDiagnosticInformation). A logical '1' shall indicate that the DTC test has not run to completion during the current operation cycle. If the test runs and passes or fails then the bit shall be set (and latched) to '0' until a new operation cycle is started.
表示一个DTC测试在当前操作循环内是否运行完成;若没完成,置"1";否则,置"0"; 开始新的操作循环或清故障码后则置"1";
Bit 7: warningIndicatorRequested
This bit shall report the status of any warning indicators associated with a particular DTC. Warning outputs may consist of indicator lamp(s), displayed text information, etc. If no warning indicators exist for a particular DTC,this status shall default to a logic '0'state. Conditions for activating the warning indicator shall be defined by the vehicle manufacturer / implementation, but if the warning indicator is on for a given DTC, then confirmedDTC shall also be set to '1' (with the exception described below).
报告与特定DTC相关的任何警告指示器的状态;没有警告,则置"0",有警告,则置"1";如果有警告,则confirmedDTC也应设置为1;清故障码或满足制造商定义的要求,则置"0";
图1 Example of a two operation cycle emissions-related OBD DTC
注释:
0 发送清故障码服务后,各状态位进行初始化;
1,2 在完成测试时,bit6,4状态均由1变为0;
3,4,5,6 测试结果Failed时,bit0,1,2,5状态均从0变为1;
7,8 测试结果Failed时,bit0为1,测试结果Passed时,bit0为1;
9,10,12 开始一个新的操作循环,bit1变为0;bit5先变成1,待测试完成再变成0;
11 开始下一个操作循环时,该位是否保持上一个操作循环的结果由制造商定义;
13,14,15 在第二个循环中再次测试Failed,bit0,1,3变为1;