Abstract:
A system for detecting a fault in an exhaust gas oxygen (EGO) sensor includes generating a first signal with a first voltage if the EGO sensor output signal is approaching an unacceptable voltage and a second voltage if the EGO sensor output signal has an unacceptable voltage. The system further includes setting a first flag if the first signal has the first voltage and a second flag, indicating an EGO sensor fault, if the first signal has the second voltage and the first flag is set.

Description:
BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention relates to a method and apparatus for detecting a fault in an exhaust gas oxygen sensor. 
     2. Description of the Related Art 
     Controlling emissions from automobile engines has for some time been an important focus in the design of automobiles. Emission control is receiving increased attention with upcoming On-Board Diagnostics II (OBD II) emission regulations. 
     In vehicle emission control systems, important components are exhaust gas oxygen (EGO) sensors. A vehicle may have one or more EGO sensors. These sensors measure the amount of oxygen in a vehicle&#39;s exhaust. The outputs of these sensors are typically fed back to an electronic engine controller. The electronic engine controller in turn controls a number of engine parameters to attempt to keep the engine running at a desired intake air-fuel ratio. Successful maintenance of the desired intake air-fuel ratio helps reduce undesirable emissions from the engine. 
     In normal operation, a typical EGO sensor generates an output signal which transitions between two voltage levels. One voltage level is generated when there is excess oxygen in the vehicle exhaust, an indicator that the engine is running at a lean air-fuel ratio. The other voltage level is generated by the EGO sensor when there is a lack of oxygen in the vehicle exhaust, an indicator that the engine is running at a rich air-fuel ratio. In normal engine operation, the output of an EGO sensor will frequently switch between the two voltage levels, as the electronic engine controller continually strives to maintain the desired intake air-fuel ratio. 
     Typically, an EGO sensor has a reference electrode located in a port which is open to the atmosphere. This electrode, because it is exposed to the atmosphere, is exposed to a relatively constant and known amount of oxygen. This relatively constant amount of oxygen serves as a reference against which the vehicle exhaust gas is compared. An EGO sensor can thus generate an output signal indicative of the oxygen content of the vehicle exhaust gas. 
     Because automotive emission control is such an important endeavor and because EGO sensors play such an important part in automotive emission control, diagnosing faults in an EGO sensor output signal is important. Faults in an EGO sensor output signal can have a number of causes and can be manifested by a number of effects on the EGO sensor output signal. For example, the electrical wiring which carries an EGO sensor output signal to the electronic engine controller can become short-circuited or open-circuited, resulting in an overvoltage or undervoltage EGO sensor signal. In addition, air leaks in the vehicle exhaust system can cause an EGO sensor to generate a faulty signal. Also, a phenomenon known as characteristic shift downward (CSD) can occur. A common cause of CSD is contaminants which enter the atmospheric oxygen port of an EGO sensor and reduce the exposure of the reference electrode to atmospheric oxygen. When such contamination occurs, the voltage of the EGO sensor output signal shirts downward. For example, instead of the EGO sensor operating between approximately zero and one volt, the EGO sensor output signal may shift downward and instead operate between approximately -1 and zero volts. 
     When a fault in an EGO sensor output signal occurs, it is important to detect that fault so the vehicle&#39;s owner can be notified by the electronic engine controller to bring the vehicle into a dealership for repair. However, it is also advantageous to be able to distinguish between the various causes of EGO sensor output signal faults. Different causes may require different actions by a repair technician (for example, fixing a shorted wire, fixing an air leak in the vehicle&#39;s exhaust system, or replacing the EGO sensor). 
     As mentioned above, an EGO sensor output signal is typically read by an electronic engine controller. Typical &#34;front-end&#34; circuitry into which each EGO sensor signal is routed in the electronic engine controller includes an operational amplifier. Such an operational amplifier&#39;s two power supply inputs are typically connected to a positive voltage power supply and to ground. The operational amplifier is typically configured in a &#34;unity-gain&#34; configuration such that the EGO sensor output signal is buffered by the operational amplifier but otherwise generally not changed. In such a unity-gain configuration, the EGO sensor output signal is routed into the non-inverting input of the operational amplifier. The output of the operational amplifier is then routed in some form to a microprocessor within the electronic engine controller. In general, the use of an operational amplifier in the front end of the electronic engine controller as described here is very economical in is thus desirable to use an operational amplifier for this application. 
     However, due to the use of an operational amplifier, a problem can occur when an EGO sensor experiences a CSD fault. This is due to a characteristic of a typical operational amplifier when connected to a positive voltage supply and to ground. As mentioned above, when an EGO sensor output signal experiences CSD, its voltage tends to shift negative. When a negative voltage of any more titan a small fraction of a volt is input into a typical operational amplifier connected to a positive voltage supply and to ground, the operational amplifier outputs a relatively large positive voltage. This positive voltage tends to approach the voltage of the positive voltage supply to the operational amplifier. This large positive voltage output from the operational amplifier is similar to the output which would occur if the EGO sensor output signal went into an overvoltage fault condition. Because the output from the operational amplifier is approximately the same when the EGO sensor experiences CSD as when the EGO sensor experiences an overvoltage fault, the electronic engine controller cannot typically tell the difference between the two conditions. 
     Because the electronic engine controller cannot generally tell the difference between a CSD fault and an overvoltage fault, a service technician working on the vehicle and interrogating the electronic engine controller&#39;s diagnostic memory has little or no guidance as to which condition occurred. As a result, the service technician may perform an incorrect or unnecessary repair procedure. 
     Therefore, means to detect CSD and to thereby distinguish it from other EGO sensor signal faults, while still employing an economical operational amplifier front end, will provide a great advantage over the prior art. 
     SUMMARY OF THE INVENTION 
     The present invention provides a method for detecting a fault in an exhaust gas oxygen (EGO) sensor in the nature of a characteristic shift downward (CSD) fault. The method comprises, first, the step of generating a first signal. This first signal has a first voltage if the EGO sensor signal voltage is below a first threshold but above a second threshold. However, if the EGO sensor signal voltage is below the second threshold, the first signal instead has a second voltage. The method further comprises the step of measuring the voltage of the first signal a first time. The method also comprises setting a flag to indicate a possible EGO sensor fault if the measured voltage is substantially equal to the first voltage. In addition, the method comprises measuring the first signal a subsequent time. Finally, the method comprises the step setting a flag to indicate an EGO sensor fault if the subsequently measured voltage is near the second voltage and if the flag which indicates a possible EGO sensor fault is set. 
     The method provided by this invention solves the problem of distinguishing CSD from other EGO sensor faults. The flag to indicate CSD is set only if the flag which indicates possible CSD is already set. Therefore, other faults which can appear similar to a CSD fault will not set the flag which indicates a CSD fault. 
     The present invention further provides an apparatus for detecting an EGO sensor fault in the nature of a CSD fault. The apparatus comprises first, means for generating a first signal which has a first voltage if the EGO sensor signal voltage is below a first threshold but above a second threshold and a second voltage if the EGO sensor signal is below the second threshold. The apparatus further comprises means for measuring the voltage of the first signal a first time. In addition, the apparatus comprises first flag means for flagging a potential EGO sensor fault. Also, the apparatus comprises means for setting the first flag means if the measured voltage is substantially equal to the first voltage. The apparatus further comprises means for measuring the voltage of the first signal a subsequent time. Also, the apparatus comprises second flag means for flagging an EGO sensor fault. Finally, the apparatus comprises means for setting a flag to indicate an EGO sensor fault if the subsequently measured voltage is near the second voltage and if the flag which indicates a possible EGO sensor fault is set. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1 is an electrical schematic of the apparatus of the present invention. 
     FIG. 2 is an input-output plot for the operational amplifier shown in FIG. 1. 
     FIG. 3 is a plot of an exhaust gas oxygen sensor signal showing both a normal output signal and an output signal which is generated during a characteristic shift downward fault. 
     FIG. 4 is a flowchart illustrating the logic performed by the microprocessor in FIG. 1. 
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT 
     Referring to FIG. 1, an EGO sensor 14 is connected to the input 16 of an electronic engine controller 10 such as a Ford EEC-V electronic engine controller. Additional EGO sensors can also be connected to similar inputs of electronic engine controller 10. A capacitor 20 located near input 16 filters out noise. A resistor 22 provides an electrical load for EGO sensor 14. Resistor 24 and capacitor 26 operate as a low-pass filter to further filter out noise from the EGO sensor signal. Neither capacitor 20 nor the filter formed by the combination of resistor 24 and capacitor 26 significantly alter the output signal from EGO sensor 14. They merely filter out electrical noise of a higher frequency than the frequency content generally in the output signal from EGO sensor 14. Operational amplifier 34, such as a LM124 from National Semiconductor Corporation, is connected in a unity-gain configuration. After the low-pass filter formed by resistor 24 and capacitor 26, the EGO sensor signal is fed into non-inverting input 30 of operational amplifier 34. 
     The voltage at output 42 of operational amplifier 34 as a function of the voltage at input 30 is shown in FIG. 2. Owing to the fact that operational amplifier 34 is connected in a unity-gain configuration, the voltage at output 42 is essentially equal to the voltage at input 30 for a range of voltage at input 30 from about zero to about 4 volts. Above an input 30 of about 4 volts, operational amplifier 34 saturates and generates about 4 volts (the &#34;saturation voltage&#34; or &#34;maximum output voltage&#34; of operational amplifier 34 of the preferred embodiment) at output 42. For input 30 of from about zero to about -0.3 volts, operational amplifier 34 generates a voltage of about zero volts at output 42. For an input 30 of less than about -0.3 volts (the &#34;inversion threshold voltage&#34; of operational amplifier 34 of the preferred embodiment), output 42 of operational amplifier 34 saturates at a voltage shown in FIG. 2 to be about 4 volts. 
     A typical output signal from EGO sensor 14 is shown in FIG. 3. During normal operation of EGO sensor 14, designated as Region I in FIG. 3, the voltage of the output signal from EGO sensor 14 is bounded approximately by zero volts and approximately one volt. The signal is near the upper end of its range when there is a lack of oxygen in the vehicle exhaust gas, indicating a rich intake air-fuel ratio condition. The signal is near the lower end of its range when there is a relative abundance of oxygen in the exhaust gas, indicating a lean intake air-fuel ratio condition. During a characteristic shift downward fault, designated as Region III in FIG. 3, the voltage of the output signal from EGO sensor 14 has shifted downward. In the illustration in FIG. 3, the voltage of the EGO sensor output signal is approximately bounded by -1 volt and zero volts. Between Regions I and III in FIG. 3, a transition Region II typically exists. In this region, the output signal from EGO sensor 14 shifts from normal operation in Region I to the characteristic shift downward condition of Region III. 
     Referring again to FIG. 1, as long as the output signal from EGO sensor 14 remains above about zero volts and below about 4 volts, output 42 of operational amplifier 34 will be essentially the same as the output signal from EGO sensor 14. If the output signal from EGO sensor 14 drops below about zero volts, output 42 of operational amplifier 34 will go to about zero volts, in accordance with FIG. 2. Furthermore, if the output signal from EGO sensor 14 drops below about -0.3 volts, output 42 of operational amplifier 34 will go to approximately 4 volts, also in accordance with FIG. 2. 
     It should be noted that once output 42 of operational amplifier 34 has gone to approximately 4 volts due to the output signal from EGO sensor 14 going below about -0.3 volts, the 4 volt signal will be interpreted by electronic engine controller 10 as a rich air-fuel condition. Electronic engine controller 10 will therefore try to increase the air-to-fuel ratio. This action will further drive the output from EGO sensor 14 negative, because the output signal from EGO sensor 14 tends toward its lower value when the engine is running at a lean air-fuel ratio. The output signal from EGO sensor 14 continuing to be below -0.3 volts will further perpetuate the high output from operational amplifier 34. Therefore, once characteristic shift downward has caused the output signal from EGO sensor 14 to dip below -0.3 volts, output 42 from operational amplifier 34 will tend to remain at approximately 4 volts. 
     Continuing with reference to FIG. 1, output 42 of operational amplifier 34 is filtered by a low-pass filter formed by resistor 38 and capacitor 40. This filter is used only to reject noise and does not significantly alter the signal coming from output 42. After the signal has gone through the filter, emerging at node 45, the signal is routed to an analog-to-digital converter 47. Analog-to-digital converter 47 converts the signal at node 45 into digital form. The signal is thus accessible by a microprocessor 49 such as an Intel 8065 microprocessor 
     One skilled in the art will recognize that such a microprocessor 49 has a number of capabilities. One such capability is the ability to set and clear flags in memory based on various conditions. (That memory can be either memory within microprocessor 49 or in a separate integrated circuit connected to microprocessor 49, or both.) Another such capability is the ability to increment and decrement the contents of locations in memory. Such incrementing and decrementing ability allows microprocessor 49 to maintain various &#34;timers&#34; by incrementing and decrementing memory locations on a periodic basis. One skilled in the art will also recognize that microprocessor 49 can measure the voltage at node 45, because that voltage has been converted to digital form by analog-to-digital converter 47. Further, one skilled in the art will recognize that microprocessor 49 can, in software, operate &#34;filter&#34; algorithms which can be used as means to create delays prior to microprocessor 49 performing a particular function. 
     FIG. 4 illustrates logic executed by microprocessor 49. The logic is preferably performed every 20 to 50 milliseconds. At step 102, the voltage at node 45, as converted to digital form by analog-to-digital converter 47 (FIG. 1), is examined (that is, measured). If the voltage is zero, that is due to the output signal from EGO sensor 14 being between 0 and -0.3 volts, in accordance with FIG. 2. In that case, the logic moves to step 104. At step 104, a flag CSD --  LIKELY in memory is set in recognition of the fact that the output signal from EGO sensor 14 is close to its lower limit of normal voltage. An impending characteristic shift downward fault is thus recognized. Preferably, the CSD --  LIKELY flag is located in &#34;non-volatile&#34; memory, memory which is retained even if the vehicle&#39;s ignition is switched off. At step 104, a software timer CSD --  TIMER is also initialized, to a small value CSD --  TM, preferably about two seconds. At step 106, the voltage at node 45 is again examined (that is, measured). If the voltage is greater than a threshold CSD --  EGO --  VOLT, typically 3.5 volts, there is a recognition that the EGO sensor output signal is out of range. (Recall from FIG. 2, however, that a voltage above 3.5 volts at node 45 can be due either to an overvoltage at input 30 or a voltage below about -0.3 volts at input 30. The exact cause for the voltage at node 45 being above the threshold CSD --  EGO --  VOLT is therefore not yet known). 
     If the voltage is greater than threshold CSD --  EGO --  VOLT, the value contained within a CSD fault filter is increased at step 110. The CSD fault filter is preferably a first-order low-pass digital filter implemented in software in microprocessor 49. The filter preferably has a time constant of about 5 seconds. The value contained within the filter is increased by exposing the filter to a step-function input. After the value contained within the CSD fault filter is increased, the logic proceeds to step 112. Here, the value within the CSD fault filter is examined to determine whether the value is greater than a threshold CSD --  LVL, preferably 63% of the filter&#39;s fully-incremented value. (Those skilled in the art will recognize that a first-order filter exposed to a step-function input will reach approximately 63% of its final value within a time period equal to the time constant of the filter). If the value within the filter is greater than CSD --  LVL, it is recognized that the output signal from EGO sensor 14 has been out of range for a considerable amount of time, and being out of range is therefore not merely a momentary aberration. Those skilled in the art will thus recognize that the filter is a delay means to prevent the logic performed by microprocessor 49 from reacting too quickly to a voltage above threshold CSD --  EGO --  VOLT. 
     The test then proceeds to step 114. At step 114, the CSD --  LIKELY flag is tested. If the CSD --  LIKELY flag is set, there is a recognition that the output from EGO sensor 14 is out of range due to CSD, as opposed to other causes such as overvoltage of the output signal from EGO sensor 14. A CSD --  FAULT flag in memory is therefore set at step 116 to signal that a CSD fault currently exists. Preferably, the CSD --  FAULT flag is located in non-volatile memory. Additionally, a CSD fault code is stored in memory. This is the same area of memory where electronic engine controller 10 stores other fault codes, also preferably non-volatile memory. Further at step 114, if the CSD --  FAULT flag was already set, it will remain set at step 116. The logic is then exited. 
     Further regarding step 106, if the voltage at node 45 (FIG. 1) is not greater than threshold CSD --  EGO --  VOLT, the logic proceeds to step 108. At step 108, the value within the CSD fault filter is decreased in recognition that the output signal from EGO sensor 14 is not out of range. The value contained within the CSD fault filter is decreased by exposing the filter to a zero input and employing the same time constant as that used by the filter in step 110. The logic is then exited. 
     Further regarding step 102, if the voltage at node 45 (FIG. 1) is not equal to zero volts, there is a recognition that the output signal from EGO sensor 14 is not between zero and -0.3 volts. This being the case, the logic branches to step 118, where the process of clearing the CSD --  LIKELY and CSD --  FAULT flags is begun. At step 118, the timer CSD --  TIMER is decremented. Step 120 then tests to determine whether the timer CSD --  TIMER has expired (that is, whether the timer CSD --  TIMER has reached zero). If it has not, not enough time has elapsed since the output signal from EGO sensor 14 was in the range of 0 to -0.3 volts to reset the CSD --  LIKELY and CSD --  FAULT flags. The test therefore moves to step 106 without resetting the CSD --  LIKELY and CSD --  FAULT flags. 
     If the timer CSD --  TIMER has expired, the logic moves to step 122, where the contents of the CSD fault filter are examined. If the CSD fault filter contains a value greater than zero, it is recognized that the output signal from EGO sensor 14 has recently been out of range. Under that circumstance, the CSD --  LIKELY flag and the CSD --  FAULT flag are not reset and the test proceeds to step 106. If the CSD fault filter contains a value of zero, it is recognized that the a CSD fault is not present or likely. Step 124 is then executed, clearing the CSD --  LIKELY flag and the CSD --  FAULT flag. The logic then proceeds to step 106. 
     This invention solves the problem of distinguishing a CSD fault from other faults. An out-of-range output signal from EGO sensor 14 will be flagged as a CSD fault only if there was a previous recognition that a CSD fault was likely. As a result, electronic engine controller 10 will be able to recognize the difference between a CSD fault and other EGO sensor faults which generate a similar overvoltage at output 42 of operational amplifier 34. 
     Various modifications and variations will no doubt occur to those skilled in the arts to which this invention pertains. Such variations which generally rely on the teachings through which this disclosure has advanced the art are properly considered within the scope of this invention. For example, the CSD fault filter can be replaced by other delay means, such as a software timer, for delaying the setting of the CSD --  FAULT flag.