Air fuel ratio feedback control
BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     This invention relates to electronic engine controls. 
     2. Prior Art 
     It is known to use an electronic engine control module to control the amount of fuel being injected into an engine. In particular, it is known to use the output of an exhaust gas oxygen sensor as part of a feedback control loop to control air/fuel ratio. Typically, such an exhaust gas oxygen sensor is placed upstream of the catalyst which processes the exhaust gases. In some applications it is known to use a second exhaust gas oxygen sensor downstream of the catalyst, partly to serve as a diagnostic measurement of catalyst performance. With the presence of exhaust gas oxygen sensors both upstream of the catalyst and downstream of the catalyst, it would be desirable to develop an improved feedback air/fuel ratio control system using signals from both of these sensors. 
     Referring to FIG. 1, a prior art A/F control system 10 for an engine 11 uses feedback from an exhaust gas oxygen (EGO) sensor 12 installed after a catalyst 13 to trim the control point of a pre-catalyst A/F feedback loop including a pre-catalyst EGO sensor 14, a pre-catalyst feedback controller 15 and a base fuel controller 16. This post-catalyst feedback aids in (1) compensating for aging of pre-catalyst EGO sensor 14, and (2) maintaining the engine A/F in the catalyst window. Such performance improvements help reduce vehicle exhaust emissions. In known system designs, feedback from the post-catalyst sensor is used to slowly trim the A/F of the pre-catalyst loop by either changing the set point of the pre-catalyst EGO sensor or changing the relative values of the up-down integration rates and/or jump back values in the pre-catalyst control loop. A post-catalyst feedback loop includes a post-catalyst feedback controller 17 coupled between post-catalyst EGO sensor 12 and pre-catalyst feedback controller 15. 
     However, in such post-catalyst/pre-catalyst feedback systems (1) the pre-catalyst EGO sensor exhibits A/F offset errors which vary as a function of engine rpm and torque, and (2) the post-catalyst EGO sensor feedback signal is delayed due to oxygen storage in the catalyst. Since engine rpm and torque change continuously during dynamic operating conditions, the A/F correction applied to the pre-catalyst feedback loop under these conditions may not occur at the same rpm/torque point which generated the feedback signal, and the A/F offset error will consequently be incorrectly trimmed. As a result, such post-catalyst/pre-catalyst feedback systems compensate for aging of the pre-catalyst EGO sensor on the average basis. They do not maintain the engine A/F in the catalyst window at all rpm/torque operating points of the enqine. It would be desirable to have a system to not only compensate for pre-catalyst EGO sensor aging, but to also maintain the engine A/F in the catalyst window for all rpm/torque operating conditions. 
     SUMMARY OF THE INVENTION 
     This invention includes the use of a synchronized output of a post-catalyst exhaust gas oxygen (EGO) sensor to trim individual cells of a pre-catalyst air fuel bias table. Such a system provides compensation of the air/fuel ratio feedback system of an engine for pre-catalyst EGO sensor aging and provides the capability to stay in the catalyst window at all rpm/torque operating points. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1 is a block diagram of a pre-catalyst/post-catalyst air fuel ratio control feedback system in which post-catalyst feedback provides air fuel ratio trim to a pre-catalyst feedback, in accordance with the prior art; 
     FIG. 2 is a block diagram of a pre-catalyst/post-catalyst air fuel ratio feedback control system in which post-catalyst provides synchronized air fuel trimming to pre-catalyst sensor bias table as a function of engine rpm and torque in accordance with an embodiment of this invention; and 
     FIG. 3 (including 3A, 3B and 3C) is a software flow chart showing a sequence of logical steps in accordance with an embodiment of this invention wherein feedback from the post-catalyst sensor is used when the engine is operating in a certain rpm/load range. 
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
     Referring to FIG. 2, an air/fuel ratio control system 20 in accordance with an embodiment of this invention uses feedback from a post-catalyst EGO sensor 21 to appropriately trim existing values which are stored in a pre-catalyst closed-loop A/F bias table 22. A base fuel controller 25 is coupled to provide an input to an engine 24. Exhaust from the engine is applied to a catalyst 26. Upstream of catalyst 26, a block 23 generates a pre-catalyst EGO sensor feedback signal. Downstream of catalyst 26, a block 21 generates a post catalyst EGO sensor feedback signal. Block 28 receives rpm/torque inputs from engine 22, and in turn provides delayed rpm and torque signals to rpm/torque cell selector block 27. Block 29 provides updated delay values for block 28 based on interrogation of engine/catalyst system. Block 27 generates an A/F bias trim to update rpm and torque cells of table 22. Table 22 receives rpm and torque signals from engine 24. Table 22 applies an air/fuel bias signal to block 23, which in turn applies an A/F correction signal to controller 25. 
     Pre-catalyst A/F bias table 22 is a multi-cell table which contains correction values that are used to shift the closed-loop A/F control point of an engine 24 as a function of engine rpm and torque. Various methods can be used to actually shift the engine A/F ratio. These methods include changing the switch point reference of a pre-catalyst EGO sensor 23, changing the up/down integration rates and/or jump back values of the pre-catalyst feedback loop, or changing the relative lean-to-rich and rich-to-lean switching delays associated with pre-catalyst EGO sensor 23. A feature of the invention is the method by which the particular rpm/torque cells of A/F bias table 22 are selected for updating. To be specific, rpm/torque cell selector block 27 selects the proper rpm/torque cell in table 22 to be updated by the feedback signal from post-catalyst EGO sensor 21. Block 27 determines the proper rpm/torque cell based on delayed rpm/torque signals computed in block 28. The delay is necessary to account for the fact that the feedback signal produced by post-catalyst EGO sensor 21 is delayed by the oxygen storage characteristics of catalyst 26. 
     The operation of air/fuel ratio control system 20 requires that the value of the delay provided by block 28 is known with sufficient accuracy to insure that the post-catalyst feedback signal is applied to the particular rpm/torque cell representing conditions which existed when the feedback signal was actually produced. The delay values can be accessed from either a table containing the values as a function of (for example) rpm and torque, or from a self-contained computer algorithm which computes the delay values based on engine operating conditions. In either case, delay values in the table or calibration constants in the model will be periodically updated to compensate for changes in delay through the catalyst caused by aging. The actual updating process can be accomplished in one of several ways. For example, engine control computer 25 can be programmed to periodically perform closed-loop limit-cycle frequency measurements involving only the post-catalyst feedback loop, and then calculate updated delay values from the measurements. Alternately, control computer 25 can be programmed to periodically inject a known A/F disturbance into engine 24 and then determine the updated delay value by measuring the length of time required for the disturbance to be detected downstream of catalyst 26. 
     This invention includes a method to update the A/F bias values in the various cells of A/F bias table 22. Specifically, the output of post-catalyst EGO sensor 21 is processed by a voltage comparator circuit which will produce a &#34;rich&#34; signal when the engine A/F is on the rich side of the catalyst window. When a &#34;rich&#34; signal is produced, the post-catalyst feedback controller will slowly ramp a lean correction into the particular cell of the A/F bias table which has been selected by the delayed rpm/torque signal from the control computer. Similarly, when a &#34;lean&#34; signal is produced, the feedback controller will slowly ramp a rich correction into the selected cell of the A/F bias table. Note that applying the feedback correction in this manner is actually just a way to implement low gain integral feedback from post-catalyst EGO sensor 21. Also note that as the engine rpm and load change, the applied correction will automatically be directed to the proper cell of A/F bias table 22. This is because the stored corrections are arranged as a function of engine rpm and load. 
     Often in engine control systems, the actual signal processing is performed digitally. As such, the post-catalyst feedback could be implemented in several different ways. One example of how the disclosed invention would work and how it could be implemented is now described. 
     Suppose that engine 24 is operating at a particular rpm and torque point which causes the A/F to be on the rich side of the catalyst window. After sufficient time has passed to account for delay through catalyst 26, the voltage comparator connected to post-catalyst EGO sensor 21 will produce a &#34;rich&#34; signal corresponding to the rpm/torque operating point. As long as the &#34;rich&#34; indication exists, the engine control computer will change the value stored in the addressed cell of the A/F bias table so that the A/F will gradually become leaner. The control computer can accomplish this by continually changing the least significant bit (LSB) of the stored table value at some appropriate rate. The rate at which the LSB is changed would be chosen to provide a sufficiently low feedback gain so that instability (i.e., limit-cycle oscillation) of the post-catalyst feedback loop would never occur. The control computer will continue to make changes in the stored table value until the &#34;rich&#34; signal switches to a &#34;lean&#34; signal. As long as the engine is still operating at the same rpm/torque point, the appropriate corrections (lean or rich) will continue to be applied to the same cell of the A/F bias table. 
     Suppose now that the engine rpm and torque change so that the addressed cell no longer corresponds to the actual engine operating point. The feedback corrections would nevertheless continue to be applied to the same rpm/torque cell until a time interval corresponding to the delay in the catalyst had passed. The correction would be then switched to the rpm/torque cell corresponding the engine conditions which existed at a time that was earlier by an amount equal to the catalyst storage delay. The process of synchronizing the Post-catalyst correction signal with the proper rpm/torque cell would be performed automatically through the action of the delay block previously mentioned in connection with FIG. 2. If the residence time in any of the rpm/torque cells is very short, no updating of that cell would be performed because (1) uncertainties in the exact time delay could cause cell addressing errors, and (2) short residence times could result in no changes in the rear EGO sensor output because of catalyst oxygen storage. 
     The type of post-catalyst feedback discussed so far is pure integral control which uses the &#34;rich&#34;/&#34;lean&#34; output signals from a post-catalyst EGO sensor comparator circuit as its input. This is the conventional method of feedback which is employed when switching EGO sensors are used to indicate whether A/F is rich or lean of stoichiometry. It may be advantageous to use a tri-state feedback in order to avoid low-frequency fluctuations in the engine A/F. It should also be noted that it may be advantageous to incorporate correction for EGO sensor temperature effects. Such temperature correction would be used to offset any closed-loop A/F shifts that occur with some EGO sensors when exhaust gas temperature changes. 
     This invention teaches directing the post-catalyst feedback correction signal to different rpm/torque cells depending on the engine operating conditions. It should be pointed out that the number of cells and the actual rpm and torque ranges of each cell would be chosen to maximize the A/F control accuracy while minimizing system oomplexity. In general, some cells will cover fairly large rpm and torque ranges (such as one cell covering idle, decel, and light load conditions), whereas other cells could cover fairly small ranges. In general, different feedback gain values would be used in each rpm/torque cell. It should be noted that as a limiting case, the number of rpm/torque cells could be reduced to one. 
     The term EGO sensor refers to exhaust gas oxygen sensors in general. As such, heated exhaust gas oxygen (HEGO) and universal exhaust gas oxygen (UEGO) sensors could be used equally well. Furthermore, the invention could be advantageously applied to feedback systems using post-catalyst emission sensor arrays. Various other exhaust gas emission sensors can be used to detect exhaust gas components such as hydrocarbons or oxides of nitrogen. 
     A software flow chart of an embodiment of this invention when operating in one rpm/torque range is shown in FIGS. 3A, 3B and 3C. In this flow chart, blocks 30 through 37 check the entry criteria, while blocks 38 through 47 calculate the rear A/F bias trim value. Throughtout the discussion of this flow chart, bias  --  G is the normal A/F bias used to adjust engine A/F as a function of rpm and load. R --  bias is the A/F bias trim used to modify bias  --  G based on feedback from the post-catalyst EGO sensor. Bias  --  suml is an intermediate quantity used to generate R --  bias by one bit. Because of this, every time bias --  suml increments (or decrements) R --  bias by one bit, the bias suml register is decremented (or incremented) by the number of bits corresponding to the one bit R --  biasl register. With this introduction, the flow chart embodiment of this invention begins with a block 30 inquiring whether the rear EGO has failed. If yes the logic flow is exited. If no, logic flow goes to a block 31 wherein it is determined if the rear EGO has warmed up. This is done by comparing a ATMR3, times since start, to a function of TCSTRT which is the temperature of the engine coolant at start. If the rear EGO has not warmed up, logic flow is exited, and if it has, logic flow goes to a logic block 32. At block 32 it is determined whether the front control loop has been closed-loop long enough for the catalyst to stabilize. If not, the logic flow is exited. If yes, logic flow goes to a block 33 wherein it is determined if the engine is stabilized and not over heating. If not, logic flow is exited. If Yes, logic flow goes to a block 34. 
     In block 34 it is determined if the evaporative purge flow is too high. If yes, logic flow is exited. If no, logic flow goes to a block 35. In block 35 it is determined whether the load indicates a cruise condition. If not, logic flow is exited. If yes, logic flow goes to a block 36. At block 36 it is determined if the engine rpm indicates a cruise condition. If no, logic flow is exited. If yes, logic flow goes to a block 37. At block 37 it is asked if the vehicle speed indicates a cruise condition. If not, logic flow is exited. If yes, logic flow goes to a block 38. At block 38 the rear EGO trim is updated depending upon the calibration of a function FN331. Logic flow then goes to a decision block 39 wherein it is determined if the bias suml is greater than one bit resolution of bias G. Bias G is a low resolution, high range register that is used in the fuel algorithm to bias the average air/fuel ratio rich or lean. If no, logic flow goes to a decision block 43 wherein there is a check for a need for a negative update. If yes, logic flow goes to a block 40. At block 40 it is determined whether the front EGO switched since the last R --  bias update. This verifies the front loop is at stoichiometric operation. If not, the logic flow is exited. If yes, logic flow goes to a block 41. At block 41 it is determined if the R --  bias is less than the maximum (lean) clip. If no, logic flow is exited. If yes, logic flow goes to a block 42. At block 42 there is an increment of R --  bias one bit (leaner) and for the reason given earlier, a decrement of the bias --  suml by the one bit resolution of bias --  G. 
     When logic flow goes from block 39 to block 43, it is to a decision block where it is checked to see if a negative (richer) update is needed. There is a determination if the absolute value of the bias --  suml is greater than one bit resolution of bias --  G. If not, the logic flow is exited. If yes, logic flow goes to a decision block 44. At decision block 44 it is checked if the front EGO has been switched since the last R --  bias update. If not, logic flow is exited. If yes, logic flow goes to a block 45. At block 45 it is determined whether the R --  bias is greater than the minimum clip. If no, logic flow is exited. If yes, logic flow goes to a block 46. At block 46 there is a decrement of R --  bias one bit (richer) and increment bias --  suml by the one bit resolution of bias --  G. Logic flow is exited from block 46. Throughout the routine there is always a block 47 action wherein there is an updating of bias --  G and a determination of the base bias and R --  bias as a result of the pre-catalyst/post-catalyst control.