Operation CHARM: Car repair manuals for everyone.

Misfire Monitoring



Misfire Monitoring

Description
The misfire detection monitor runs continuously and is designed to detect levels of misfire that can cause thermal damage to the catalyst or result in excessive tailpipe emissions. Determination of a misfire is made by analysis of changes in crankshaft speed, since a misfire will cause a fall in speed after a faulty firing event. This data is analyzed in four ways to ensure the detection of all possible combinations of misfire.

The results of the misfire judgement process for each firing event are used to determine whether two failure levels have been met, 'catalyst damage' misfire and 'excess emissions' misfire. Each fault judgement process has its own failure threshold and calculation period.

The following fault conditions can be identified by the monitor
^ Cylinder 1 (1A) misfire - Cylinder 2 (1B) misfire
^ Cylinder 3 (2A) misfire - Cylinder 4 (2B) misfire
^ Cylinder 5 (3A) misfire - Cylinder 6 (3B) misfire
^ Cylinder 7 (4A) misfire - Cylinder 8 (4B) misfire (V8 engines only)
(V8 engines only)
^ Catalyst damage misfire - Excess emissions misfire
^ Low fuel level misfire - Multiple cylinder misfire

The misfire monitor operates continuously within the boundaries of the regulated monitor operation window, as shown below.





After engine start, the monitor will be enabled as soon as the engine speed rises above the minimum operation speed (150 rpm below fully warm stabilized idle speed). Two revolutions of crank angle data, i.e. One sample of data from each cylinder firing, must then be 'buffered' before any decisions can be made by the monitor.





Strategy Description

Introduction
Different sections of the monitor operate at different 'loop' rates. The flow chart above details the decisions made for each firing event in approximate chronological order, although some steps may not be made every 'loop'. Further explanation of these decisions is given below:

Recording segment time and position, and its manipulation
The monitor records crank angle time data every 30 degrees of rotation with a 250 nanoseconds measurement accuracy. Each 30 degrees period is known as a 'segment'. The starting point of the segments relative to TDC firing and the number of segments used can be defined for each application so as to give the best and most robust probability of misfire detection. To maintain good detection across the entire engine speed range the measurement period can be altered between low and high engine speeds. The engine speed, at which the measurement period is altered, if any, is determined by experiment.

Additionally, a third measurement period is defined for detection during start-up and when catalyst warm up ignition retard is being used after engine start.

The angular speed of the crankshaft during the ignition stroke is calculated using the segment data, multiplied by a scaling factor for easier storage in the ECM s memory, manipulated further and stored for each cylinder firing,

Adjustment of crank angle tolerance
Calculations are made using the stored data to generate an adaptive misfire 'signal'. Errors in the crank angle time data (for example, due to manufacturing tolerances) are calculated for each cylinder individually at pre-determined engine speed breakpoints. Compensating for these errors reduces the variation in amplitude of the misfire signal.

The data is gathered during normal combustion, requiring strict entry conditions to ensure robust adaptions. Adaption values are rolled in to a temporary calculation for the current speed breakpoint.

Misfire 'signal' calculation
Where calculated adaption values have been stored in memory the adaptive signal will be calculated. This signal generally has the best opportunity to detect. However, the signal requires data in each speed breakpoint to interpolate between. If there is a breakpoint where no adaptions have been stored then the adaptive signal will only be used for misfire judgements up to the breakpoint immediately below it. For example if there is adaption data stored in memory up to 2000 rpm but none at 2500 rpm the adaptive signal will only be used up to 2000 rpm.

To support detection across the entire engine speed range further misfire 'signals' are calculated. These signals are not adjusted for errors in crank angle tolerance. These signals typically give good probability of detection at low engine speeds but become less effective at higher engine speeds.

Misfire judgement
Misfire judgements are delayed by one firing cycle. This is to allow comparison of the signal with the cylinders that fire before and after it, eliminating 'noisy' signals. Should the monitor repeatedly eliminate the signal over 5 consecutive firings on the same cylinder the monitor will assume that two adjacent cylinders are misfiring, ignore the signal check and allocate the 5 eliminated misfire judgements to the appropriate cylinder.

Adapted and un-adapted signals are compared to their respective thresholds in series. The diagram below illustrates the behaviour of the 'adaptive' misfire signal with 1.0% intermittent misfire applied (data taken from a typical 8 cylinder application) and its judgement threshold.

Should one signal cross the threshold, indicating a misfire, the other methods will be skipped in order to prevent multiple counting of the same misfire event.





Catalyst damage judgement
If 200 revolutions of misfire judgements have been made the monitor will make an assessment as to whether 'catalyst damage' levels of misfire have been exceeded or not. The failure level is determined from a look up table. The sum of individual cylinder misfire counters is then compared against this threshold. If the failure threshold is exceeded then the MIL will illuminate and the appropriate DTCs will be stored.

Storing adaption values in back-up memory
If no misfires have been recorded for the last 'catalyst damage' judgement, and sufficient temporary adaption calculations have been made, the temporary adaption data calculated for each cylinder will be stored in 'back-up' memory, for the appropriate engine speed breakpoint.

If a single misfire is counted for the last 'catalyst damage' judgement, all temporary adaption data will be reset, along with the temporary calculation.

Once data has been stored in memory it can be updated but will not be erased, even after a battery reset.

Excess emissions judgement
If 1000 revolutions of misfire judgements have been made the monitor will make an assessment as to whether 'emissions failure' levels of misfire have been exceeded or not. The failure level is a single threshold value. The sum of individual cylinder misfire counters is compared against this threshold. If the failure threshold is exceeded then the MIL will illuminate and the appropriate DTCs will be stored.

Monitor execution check
Different monitor enable conditions are checked depending upon the operating condition of the engine (for example, fewer conditions apply during engine start). If all the appropriate enable conditions are met the monitor execution flag is set.

Adaptive learning execution check
Specific operating conditions, required for learning misfire 'adaption' values, are checked and the adaption execution flag set as appropriate.

Rough road and low fuel level judgement
A rolling average of 'delta' wheel speed data is calculated from ABS vehicle speed data that is transmitted over the CAN network. This data is compared to calibrated thresholds to determine if the vehicle is being driven over a rough surface that causes misdiagnosis of a misfire. If a rough road judgement is made the appropriate flag is set and taken into account the next time monitor execution conditions are checked.

An additional fault code is stored alongside the misfire fault codes if the fuel level is below a calibratable level. This is to indicate that a possible cause of the misfire fault codes was low fuel level.

It is also possible to block the output of misfire fault codes for low fuel level so long as the on board diagnostic system has not detected a fuel level signal fault. Again this is calibratable and is not used in all applications.











If the above table does not include details of the following enabling conditions: - IAT, ECT, vehicle speed range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor.

Drive Cycle Information
1. Record flagged DTC(s) and accompanying DTC Monitor freeze frame(s) data.
2. Fuel level > 25%.
3. Start the engine at a coolant temperature lower than the recorded freeze frame value (from Step 1).
4. Drive the vehicle to the recorded freeze frame conditions for 4 minutes. If CHECK ENGINE MIL flashes, lower the engine speed until the flashing stops.

Note regarding misfire monitor DTCs:
If, on the first trip, the misfire is severe enough to cause excess exhaust emission, the individual cylinder DTC plus DTC P1316 will be logged. The CHECK ENGINE MIL will not be activated. If the fault reoccurs on the second trip, the individual cylinder DTC plus DTC P1316 will be flagged, and the CHECK ENGINE MIL will be activated. If a misfire is detected on start up (within the first 1000 revolutions) the DTC P0316 will also be flagged.

If, on the first trip, the misfire is severe enough to cause catalyst damage (more severe than excess exhaust emission), the CHECK ENGINE MIL will flash while the fault is present and the individual cylinder DTC plus DTC P1313 (bank 1), DTC P1314 (bank 2) will be logged. When the fault is no longer present, the MIL will be deactivated. If the fault reoccurs on the second trip, the CHECK ENGINE MIL will flash while the fault is present and the individual cylinder DTC plus DTC P1313 (bank 1), DTC P1314 (bank 2) will be flagged. When the fault is no longer present, the CHECK ENGINE MIL will be activated.

If a misfire DTC is recorded when the fuel level is less than 15%, the DTC P0313 will be recorded.