Method of and apparatus for discriminating misfire
The present invention relates to a method of and apparatus for discriminating misfire in an internal combustion engine. 
     Known misfire detection systems are based on crankshaft speed changes. The crankshaft speed may be measured by a variable reluctance transducer responsive to the passage of teeth of a toothed wheel mounted on an engine output shaft. It is known to process the output of the transducer so as to detect misfires while providing a degree of integrity against spurious detection, as described in EP-A-0 442 687. 
     According to a first aspect of the present invention there is provided a method of improving reliability, of detection of misfire in an internal combustion engine, comprising examining a plurality of preceding engine speed changes to identify a pattern of speed changes characteristic of a misfire and signalling a misfire when both a misfire detector detects a misfire and the pattern of speed changes is present. 
     Preferably the pattern of speed changes comprises first and second patterns of speed changes. 
     Advantageously the first pattern is identified by applying a first generating rule to a sequence of outputs of an up-count. The up-count may be incremented when an Nth period is less than a (N-X)th period, where N and X are integers and X is less than N. 
     The engine speed may be measured by measuring the time difference between the passage of two reference points on a cyclically moving part of the engine past a sensor. Advantageously the same reference points are used for each engine speed comparison, to avoid variation caused by variation of the relative positions of the reference points. 
     Respective reference points may be provided at first and second positions relative to the top dead center position of respective cylinders of a multi-cylinder engine. 
     The first generating rule may be application specific. For example, an eight cylinder internal combustion engine may have a first generating rule which inhibits the detection of misfires occurring at the N, N-1, N-2 and N-3 combustion events adjacent the N, N-1, N-2 and N-3 periods when the up-count is greater than or equal to one. 
     Advantageously the second pattern is obtained by applying a second generating rule to a sequence of outputs of a down-count. The down count may be incremented when an Nth period is greater than or equal to a (N-Y)th period, where N and Y are integers and Y is less than N. The down-count may be reset to zero when the up-count is incremented. The up-count may be reset to zero when the down-count is incremented. X and Y may be equal. 
     The second generating rule may be application specific. For example, an eight cylinder internal combustion engine may have a second generating rule which inhibits detection of a misfire occurring at an N-5th combustion event when the down count is greater than or equal to 4. 
     According to a second aspect of the present invention there is provided a method of discriminating misfire in an internal combustion engine, comprising making a series of measurements representing engine speed; determining a series of speed differences from the series of speed measurements; inhibiting detection of misfire in response to a first pattern of values of speed differences which are greater than or equal to a first threshold where the first threshold is greater than or equal to zero; and inhibiting detection of misfire in response to detection of a second pattern of values of speed differences which are less than or equal to a second threshold, where the second threshold is less than or equal to zero. 
     Preferably the occurrence of a misfire is detected based on a series of engine speed measurements. A method of using speed measurements to determine the occurrence of a misfire is disclosed in EP-A-0 442 687. 
     According to a third aspect of the present invention there is provided an apparatus for improving reliability of detection of misfire in an internal combustion engine, comprising examining means for examining a plurality of preceding engine speed changes to identify a pattern of speed changes characteristic of a misfire and signalling means for signalling a misfire when both a misfire detector has detected a misfire and the pattern of speed changes is present. 
     According to a fourth aspect of the present invention there is provided an apparatus for discriminating misfire in an internal combustion engine, comprising an engine speed sensor for making a series of measurements representing engine speed; means for determining a series of speed differences from the series of speed measurements; first inhibiting means for inhibiting detection of misfire in response to a first pattern of values of speed differences which are greater than or equal to a first threshold where the first threshold is greater than or equal to zero; and second inhibiting means for inhibiting detection of misfire in response to detection of a second pattern of values of speed differences which are less than or equal to a second threshold, where the second threshold is less than or equal to zero. 
     It is thus possible to reduce the likelihood of falsely detecting a misfire as a result of transient operating conditions within a vehicle such as substantial accelerations or substantial decelerations resulting from the actions of the driver or engine control circuits, changes in engine load or motion of a vehicle powered by an internal combustion engine over a rough or uneven surface. 
    
    
     The present invention will further be described, by way of example, with reference to the accompanying drawings, in which: 
     FIG. 1 is a schematic diagram of an engine including an embodiment of the present invention; 
     FIGS. 2a to 2f are timing diagrams of variables within an apparatus for improving the detection of misfire; 
     FIGS. 3a and 3b show data from an experiment using an 8 cylinder engine misfiring at every 8th combustion event; and 
     FIGS. 4a and 4b show data from an experiment using an 8 cylinder engine misfiring at every 50th combustion event. 
    
    
     As shown in FIG. 1, a toothed wheel 4 is driven by an output shaft of an engine 2. A variable reluctance transducer 6 is adjacent the toothed wheel 4 and is responsive to the passage of the teeth. An output of the transducer 6 is provided to a misfire detector 8, for example, as described in EP-A-0 442 687. The output of the transducer 6 is also supplied to an engine speed change analyser 10 constituting an embodiment of the present invention. Outputs of the misfire detector 8 and the analyser 10 are supplied as inputs of an AND gate 12. The output of the AND gate 12 is used to signal the occurrence of a misfire. A misfire can only be signalled when the misfire detector 8 has detected a misfire and the analyser 10 has recognized a sequence of engine speed variations which are consistent with the occurrence of a misfire. 
     The misfire detector 8 and the analyser 10 are conveniently embodied within a digital data processor. 
     The output of the sensor 6 is representative of the period required for successive teeth to pass the sensor. It is convenient to perform the misfire detection and engine speed analysis in terms of the inter-tooth periods rather than converting to engine speed. 
     For an 8 cylinder engine, the misfire detector 8 may keep a record of the present and recent inter-tooth periods. The periods are measured between first and second teeth. The first and second teeth are in the same positions relative to top dead center (TDC) for each cylinder. The teeth need not be neighbouring teeth of the toothed wheel 4. 
     Misfire may be detected by comparing the result of P N  -P N-1  -P N-4  +P N-5  with a threshold. P N  represents the most recent inter-tooth period. P N-1  is the inter-tooth period immediately preceding the P N  period, and so on. A misfire is indicated when the result of the calculation exceeds the threshold. 
     The engine speed change analyser 10 forms two masks in response to predetermined patterns of engine speed changes. FIG. 2a shows synthesised data showing the results of 14 speed change calculations by the analyser 10. The analyser 10 compares the P N  th period with the P N-4  th period. An UP-COUNTER and a DOWN-COUNTER are controlled in response to the result of the comparison shown in FIG. 2a. 
     If P N  -P N-4  is greater than or equal to zero, i.e. engine speed has decreased, the UP-COUNTER is reset to zero and the DOWN-COUNTER is incremented. The UP-COUNTER is incremented and the DOWN-COUNTER is reset if P N  -P N-4  is less than zero, i.e. the engine speed has increased. FIGS. 2b and 2c show the values of the UP-COUNTER and the DOWN-COUNTER, respectively, in response to the comparisons of inter-tooth periods. 
     Two masks are formed from the values of the UP-COUNTER and the DOWN-COUNTER. The first mask is dependent on the value of the UP-COUNTER. If the UP-COUNTER has a value greater than or equal to one, then misfires detected for the N, N-1, N-2 and N-3 combustion events are discarded. 
     The second mask is dependent on the DOWN-COUNTER. If the DOWN-COUNTER has a value greater than or equal to four, then misfires detected for the N-5th combustion event are discarded. 
     The result of the comparison P N  -P N-4  for the first comparison of FIG. 2a is negative, i.e. less than zero. Consequently the UP-COUNTER is incremented to take a value of 1 and the DOWN-COUNTER is reset. The first mask is set to &#34;discard&#34; for the 1st period and the second mask is set to &#34;pass&#34;. The result of the comparison P N  -P N-4  remains negative for the 2nd, 3rd and 4th comparisons. The UP-COUNT is incremented, but, thus far, the statuses of the masks are not changed. 
     The result of P N  -P N-4  becomes greater than zero at comparison 5 (N+5). The UP-COUNTER is reset and the DOWN-COUNTER is incremented, taking a value of one. The first mask is set to &#34;pass&#34; as is the second mask. The result of P N  -P N-4  remains positive for the 6th and 7th comparisons. The DOWN-COUNTER is incremented at each comparison. 
     At the 8th comparison P N  -P N-4  remains positive. The DOWN-COUNTER is incremented once again and now holds a value of 4. The rule for the second mask is that misfires in the N-Sth period should be ignored if DOWN-COUNT≧4. Consequently the second mask is retrospectively set to &#34;discard&#34; for the combustion event associated with the 3rd comparison. 
     The result of P N  -P N-4  remains positive for the 9th and 10th comparisons, thus the DOWN-COUNTER is further incremented and the 4th and 5th combustion events of the second mask are set to &#34;discard&#34;. The UP-COUNTER remains at zero. 
     At the 11th comparison, P N  -P N-4  is negative. The DOWN-COUNTER is reset and the UP-COUNTER is incremented. Since the DOWN-COUNTER has a value of zero, the second mask is set to &#34;pass&#34; for the th combustion event. The UP-COUNTER has a value of one, and consequently the first mask is set to discard misfires occurring at the 11th, 10th, 9th and 8th combustion events. 
     For the 12 and 13th periods, the comparison P N  -P N-4  is positive. The UP-COUNTER is reset and the DOWN-COUNTER is incremented at each period. The first mask is set to &#34;pass&#34; for the 12th and 13th combustion events and the second mask is set to &#34;pass&#34; for the 7th and 8th combustion events, because the value of the DOWN-COUNTER is less than 4. 
     At the 14th comparison P N  -P N-4  is negative. The DOWN-COUNTER is reset to zero and the second mask is set to &#34;pass&#34; for the 9th combustion event. The UP-COUNTER is incremented and consequently the first mask is set to &#34;discard&#34; for the 14th, 13th, 12th and 11th combustion events. 
     Because the example does not continue beyond the 14th period it is not possible to define the status of the second mask for the 10th and subsequent combustion events. 
     The first and second masks must both be set to &#34;pass&#34; for a given combustion event if a misfire there is to be counted. Only misfires occurring during combustion events 6 and 7 in the example would be counted, as shown in FIG. 2f. 
     Because the Nth comparison can affect the masks for the preceding 5 combustion events, it is not possible to detect misfires immediately. The output of the misfire detector has to be delayed for 5 combustion events and is then ANDed with the first and second masks. 
     FIG. 3a shows the result of the calculation within the misfire detector 8. The engine is an 8 cylinder engine. The data were taken with the engine having a misfire occurring for every 8th combustion event. The engine was in neutral so as remove the effect of drive line resonance and was running at a nominally constant 2000 RPM. The detector 8 signals a misfire when the calculated period change exceeds the threshold value. Note that FIG. 3a does not show the actual period change for consecutive inter-tooth periods. It may be seen that under these conditions each indicated misfire is correctly allowed by masks 1 and 2. 
     FIG. 3b shows the values of the UP-COUNTER and the DOWN-COUNTER. The values of the masks determined from the counters are indicated in FIG. 3a. Both masks are in the &#34;pass&#34; state for the combustion events that suffered misfires. 
     When the engine is subjected to transient or non-steady state operating conditions, the misfire detector 8 may indicate a spurious misfire. However the sequence of engine speed changes around the spurious detection are likely to cause one of the masks to be set to &#34;discard&#34;. Thus the spurious misfire will be disregarded. 
     FIGS. 4a and 4b show similar data to that shown in FIGS. 3a and 3b. However the engine only misfires once in every 50 combustion events. All other experimental conditions are as for the data presented in FIGS. 3a and 3b. Again all indicated misfires are correctly allowed by the masks. 
     The misfire detection calculation and the rules for generating the first and second masks are application specific. For a 6 cylinder engine, misfire may be detected by comparing the result of P N  -P N-1  -P N-3  +P N-4  with a threshold. A misfire is signalled when the result of the above calculation exceeds the threshold. The P N  and the P N-3  periods are compared to determine the appropriate control of the UP-COUNTER and the DOWN-COUNTER. If the UP-COUNTER is greater than or equal to one, then misfires occurring in the N, N-1 and N-2 periods are ignored. If the DOWN-COUNTER is greater than or equal to one, then misfires occurring in the N-4 period are ignored. 
     The period between passage of the teeth of the toothed wheel past the transducer 6, and the change in that period due to misfire, vary with engine speed. Thus the misfire detection threshold is also varied with engine speed to maintain reliable misfire detection over a wide range of engine speeds. 
     The variations in engine speed due to misfire result in small changes being made to the misfire detection threshold. As indicated by the small variations in the thresholds indicated on FIGS. 3a and 4a. 
     It is thus possible to filter out and discard a large proportion of false threshold crossings in the misfire detector, for instance, due to gear changes and decelerations. Thus the reliability of on-board diagnostic systems within a vehicle can be enhanced.