Apparatus for detecting purification factor of catalyst
BACKGROUND OF THE INVENTION 
     1. Field Of The Invention 
     The present invention relates to an apparatus for detecting a purification factor of a catalyst disposed in an exhaust system of an internal combustion engine for purifying an exhaust gas thereof. 
     2. Description Of The Related Art 
     As a conventional catalyst purification factor detecting apparatus, there is known an apparatus having such a structure that oxygen sensors are disposed at locations upstream and downstream of a catalyst, respectively, and the purification factor of the catalyst is detected on the basis of response delay times of the oxygen sensors (reference is made, for example, to U.S. Pat. No. 3,969,932). 
     The prior art apparatus suffers from such problems as mentioned below. The response delay time contains a response time of the oxygen sensor itself. This response time differs between respective oxygen sensors. Besides, the response time changes due to a change in the characteristics of the oxygen sensor caused by a change with time of the oxygen sensor. For these reasons, it is impossible or at least very difficult to detect the purification factor of a catalyst only on the basis of the response delay time with satisfactory accuracy. 
     SUMMARY OF THE INVENTION 
     Accordingly, it is an object of the present invention to provide an apparatus which is capable of detecting a purification factor of a catalyst for purifying an exhaust gas of an internal combustion engine with improved accuracy. 
     In view of the above and other objects which will become apparent from the following description, there is provided, according to an aspect of the present invention, a catalyst disposed in an exhaust system of the internal combustion engine for purifying an exhaust gas, first and second air-fuel ratio sensors disposed upstream and downstream of the catalyst for detecting air-fuel ratios, respectively, response delay time difference detecting means for detecting differences in response delay time between the first and second air-fuel ratio sensors in respective different operation states of the engine, purification factor detecting means for detecting a purification factor of the catalyst on the basis of a deviation between first and second response delay time differences detected in the respective different operation states of the engine. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1 is a functional block diagram showing a general structure of a catalyst purification factor detecting apparatus of an embodiment of the invention; 
     FIG. 2 shows schematically an internal combustion engine system to which an embodiment of the invention is applied; 
     FIG. 3 is a characteristic diagram for graphically illustrating a relation between a purification factor α of a ternary catalyst and an oxygen storage volume thereof; 
     FIG. 4 is a timing diagram for illustrating output timings of first and second O 2  -sensors employed in the system shown in FIG. 2; 
     FIGS. 5 and 6 are flow charts for explaining the operation of the purification factor detecting apparatus of the embodiment of the present invention; 
     FIG. 7 is a characteristic diagram showing an R/L characteristic curve; 
     FIG. 8 is a characteristic diagram showing an exhaust gas delay time; 
     FIG. 9 is a flow chart illustrating a routine for processing a feedback (F/B) correction coefficient by using a computer incorporated in the detecting apparatus of the embodiment; 
     FIG. 10 is a timing chart illustrating the procedure with time for processing the feedback correction coefficient; 
     FIG. 11 is a flow chart illustrating a second air-fuel ratio feedback control routine for calculating a delay time from the feedback correction coefficient by the computer; 
     FIG. 12 is a timing diagram for illustrating changes in the rich and lean delay times to be set by the processing of the feedback correction coefficient; 
     FIG. 13 is a flow chart illustrating a fuel injection time determining routine executed by the computer; 
     FIG. 14 is a characteristic diagram for graphically illustrating a relation between a deviation between first and second response delay time differences and the catalyst purification factor using a F/B control period as a parameter; 
     FIG. 15 is a characteristic diagram for illustrating a relation between the emission control quality and the F/B period in the A/F feedback control. 
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     The present invention will be described with respect to an embodiment thereof applied to an internal combustion engine for a motor vehicle in conjunction with the accompanying drawings. 
     FIG. 2 shows schematically a general structure of the apparatus according to an embodiment of the invention in the style of functional blocks. Referring to the figure, an air flow meter 3 is disposed in an intake air passage 2 of an internal combustion engine 1 (hereinafter referred to simply as the engine). The air flow meter 3 is adapted to measure directly an amount of intake air flow introduced through an air cleaner 4. Further, disposed within the intake air passage 2 is a throttle valve 6 which is opened or closed in response to the actuation of an accelerator pedal by a driver, thereby regulating or adjusting an intake air flow amount supplied to the engine 1. Provided at every engine cylinder is a fuel injection valve 8 for supplying pressurized fuel from a fuel supply system 7 to an intake port of the engine. 
     Provided in a distributor 9 are a reference position sensor for generating a reference position detecting signal at every crank angle of 720° and a crank angle sensor 11 for producing a crank angle detecting signal at every crank angle of 30°. 
     Further provided in a water jacket 12 of each engine cylinder block is a water temperature sensor 13 for detecting the temperature of a cooling water. 
     On the other hand, an exhaust system includes a three-way catalytic converter (TWC) 15 which is disposed downstream of an exhaust gas manifold 14 for purifying an exhaust gas by removing simultaneously three noxious or harmful components therein, HC, CO and NO x , a first oxygen sensor (also referred to as O 2  -sensor) 16 acting as a first air-fuel ratio sensor which is disposed at a position upstream of the TWC 15, i.e. within the exhaust gas manifold 14, and a second O 2  -sensor 18 acting as a second air-fuel ratio sensor which is disposed within an exhaust pipe 17, at a position downstream of the TWC 15. As is well known, the first and second O 2  -sensors 16 and 18 operate respectively to produce different output voltages in dependence on whether the air-fuel ratio is lean or rich as compared with the stoichiometric air-fuel ratio. 
     A reference numeral 19 designates an alarm for generating an alarm message to be supplied to the driver when a purification factor α of the TWC 15 becomes lower than a predetermined value. 
     An electronic control unit (hereinafter abbreviated as ECU) 20 is formed of a microcomputer, for example, and it comprises an A/D converter 101, an I/0 port 102, a CPU 103, a ROM 104, a RAM 105, a back-up RAM 106, a clock generator circuit 107 and others, as is known in the art. 
     The ECU 20 calculates a basic fuel injection quantity as a function of the intake air flow amount Q a  detected by the air flow meter 3, the temperature THW of the cooling water detected by the coolant temperature sensor 13, the rotational speed NE which is calculated on the basis of the crank angle detection signal outputted from the crank angle sensor 11, etc. Then, a fuel injection quantity TAU is determined by correcting the basic fuel injection quantity in accordance with the output signals of the first and second O 2  -sensors 16 and 18 so that the purification factor α of the TWC 15 becomes maximum. Subsequently, a control signal corresponding to the fuel injection quantity TAU is supplied to the fuel injection valve 8 through the I/0 port 102. 
     The ECU 20 further includes a down-counter 108, a flip-flop 109 and a driver circuit 110 for controlling the fuel injection valve 8. More specifically, when the fuel injection quantity TAU is calculated through the execution of a routine which will be described later, the fuel injection quantity TAU is preset at the down-counter 108 with the flip-flop 109 being set simultaneously. In response thereto, the driver circuit 110 starts energization of the fuel injection valve 8. In the meanwhile, the down-counter 108 counts clock pulses generated by a clock generator (not shown). When a carry-out terminal of the counter 108 assumes logic &#34;1&#34; level, the flip-flop 109 is reset, thereby causing the driver circuit 110 to stop the energization of the fuel injection valve 8. In this manner, the fuel injection valve 8 is energized during an injection period corresponding to the fuel injection quantity TAU mentioned above, whereby the fuel is supplied to a combustion chamber of the engine 1 by an amount corresponding to the fuel injection quantity TAU. 
     Now, a description will be directed to the detection of the purification factor α of the TWC 15. 
     FIG. 3 illustrates a relation between the purification factor α of the TWC 15 and an oxygen storage volume V 02  thereof. The oxygen storage volume V 02  of the TWC 15 can be obtained from a difference (T s  in FIG. 4) in response delay time (hereinafter referred to as a response delay time difference) between the first and second O 2  -sensors 16 and 18 disposed, respectively, upstream and downstream of the TWC 15. 
     In the case where an oxygen gas is caused to flow in the state where no oxygen is stored in the TWC 15 at all (i.e. a rich state), a response delay time difference T s  between the first and second O 2  -sensors 16 and 18 can be obtained in the manner described below. A response delay time T F  between a change of a mixture gas supplied to the engine 1 from a rich state to a lean state and a change of the output signal of the first O 2  -sensor 16 from a rich level (1 V) to a lean level (0 V) can be given by the following equation: 
     
         T.sub.F =t.sub.1 +D.sub.1                                  (1) 
    
     where t 1  represents a delay time spent by an exhaust gas while it leaves the engine 1 and reaches the upstream-side O 2  -sensor 16 and D 1  represents a response time of the upstream-side O 2  -sensor 16 itself. 
     On the other hand, a response delay time T R  of the second O 2  -sensor 18 is given by the following equation: 
     
         T.sub.R =t.sub.1 +t.sub.2 +V.sub.02 /Q.sub.02 +t.sub.3 +D.sub.2 (2) 
    
     where t 2  represents a delay time spent by an exhaust gas while it passes by the first O 2  -sensor 16 and reaches the TWC 15, V 02  represents an oxygen storage volume of the TWC 15, Q 02  represents an oxygen content of the exhaust gas, namely, an amount of oxygen contained in the exhaust gas, V 02  /Q 02  represents a time which has elapsed before the oxygen storage volume V 02  of the TWC 15 reaches a maximum limit thereof, t 3  represents a delay time spent by the exhaust gas while it passes by the TWC 15 and reaches the second O 2  -sensor 18, and D 2  represents a response time of the second O 2  -sensor 18. From the equations (1) and (2g), the response delay time difference T s  can be given by the following equation: ##EQU1## 
     As is apparent from the above equation (3), the oxygen storage volume V 02  can be determined on the basis of the response delay time difference T s , the oxygen flow amount Q 02 , the delay time sum of the exhaust gas (t 2  +t 3 ) which will hereinafter be represented by D Gas , and a difference in the response time (D 2  -D 1 ) between the O 2  -sensors 16 and 18. Here, it is noted that it is difficult to determine the sensor response time difference (D 2  -D 1 ), because of non-uniformity of the sensors themselves, changes of the sensor characteristics, etc. 
     Under the circumstances, consideration is made of a difference or deviation ΔT s  between first and second response delay time differences T s  and T s  &#39; in respective different operation states of the engine. The deviation ΔT s  can be given by the following equation: ##EQU2## where ΔD Gas  =(t 2  +t 3 )-(t 2  &#39;+t 3  &#39;). 
     Further, the oxygen content Q 02  of the exhaust gas can be given by 
     
         Q.sub.02 =K.sub.02 ×Q.sub.a 
    
     where K 02  (= constant) represents a concentration of oxygen and Q a  represents an intake air flow amount. Accordingly, from the expression (4), the oxygen storage volume V 02  can be calculated by the following equation: ##EQU3## Since all the quantities appearing on the right side of the above equation (5) can be detected, it is possible to determine the oxygen storage volume V 02  from the above equation (5). 
     Now, referring to the flow charts shown in FIGS. 5 and 6, a description will be made of the processing for detecting the purification factor u of the TWC 15 which processing is performed by the CPU 103. 
     FIG. 5 is a flow chart for illustrating a procedure for detecting the first and second response delay time differences ΔT 1  and ΔT 2 , respectively. 
     First, at a step 101, a decision is made as to which one of first and second conditions for detecting the purification factor is satisfied by the operating state of the engine. The purification factor detecting conditions are defined in terms of the rotational speed NE, engine load Q/NE, etc. By way of example, referring to FIG. 7 showing a so-called road/load (R/L) line, the first purification factor detecting condition is satisfied when the rotational speed NE is within a predetermined range N I and when the engine load is within a predetermined range Q I, while, the second purification factor detecting condition is satisfied when the rotational speed is within a predetermined range N II and when the engine load is within a predetermined range Q II, as indicated by hatched areas in FIG. 7. Parenthetically, the R/L line or curve represents a characteristic relation between the rotational speed NE and the engine load Q/NE in a normal or steady operating state of the engine. 
     When it is decided at the step 101 that the engine operating state satisfies none of the first and second purification factor detecting conditions, the processing proceeds to a step 102b. On the other hand, when either the first or the second purification factor detecting condition is satisfied, detection is made as to whether the engine is in a steady operating state or not, at a step 102. Detection of the steady operating state can be made by detecting the magnitude of a variation in the engine load Q/NE or the like parameter. Unless the engine is in a steady operating state, a delay time TD is reset to zero (TD←&#34;0&#34;) at a step 102b, thereafter the processing proceeds to a step 104. Parenthetically, the delay time TD represents a processing delay time. 
     On the other hand, when it is decided at the step 102 that the engine is in a steady state, the delay time is set to 100 ms (TD←100 ms) at a next step 102a. Subsequently, in a succeeding step 103, it is determined whether or not a predetermined time (e.g. 10 seconds in the case of the instant embodiment) has elapsed from the time point at which TD was set to 100 ms. If not (NO), the processing proceeds to a step 104 where flags OF and OR indicating the detection states of the response delay times T 1  and T 2  are reset (OF←&#34;0&#34; and OR←&#34;0&#34;), respectively. Additionally, a flag ROF representing that the rich state is indicated by the output of the first O 2  -sensor 16 is reset (ROF←&#34;0&#34;) and at the same time a flag ROR representing that the rich state is indicated by the output of the second O 2  -sensor 18 is reset (ROR←&#34;0&#34;), whereupon the processing comes to an end. 
     On the other hand, when it is determined at the step 103 that the predetermined time has elapsed (YES), the processing proceeds to a step 105 for detecting the state of a flag OF. This flag OF indicates a state of detection of the response delay time T 1  of the first O 2  -sensor 16. When the flag OF is set (i.e. OF=&#34;1&#34;), indicating that the response delay time T 1  has already been detected, the processing proceeds to a step 111. On the other hand, when it is decided at the step 105 that the flag OF is reset (i.e. OF=&#34;0&#34;), indicating that the response delay time T 1  has not yet been detected, the processing proceeds to a step 106, where detection is made to determine whether or not the output voltage V F  of the first O 2  -sensor 16 is lower than 0.45 V. Here, it should be noted that the output voltage of the O 2  -sensor changes around the voltage value of 0.45 V (a comparison reference voltage) as a function of the air-fuel ratio, as can be seen from FIG. 4. When the output voltage V F  is lower than 0.45 V, it can then be decided that the output of the first O 2  -sensor 16 indicates a lean state at the instant control time point. Thus, when the output voltage V F  is decided to be lower than 0.45 V at the step 106, the processing proceeds to a step 107 and a decision is made as to whether or not the flag ROF is &#34;1&#34;. When ROF=&#34;1&#34;, it can then be decided that the output of the first O 2  -sensor 16, which indicated a rich state at the preceding control time point, is now indicating a lean state. Accordingly, when the flag ROF is &#34;1&#34; at the step 107, the processing proceeds to a step 108. Otherwise, when the flag ROF is not &#34;1&#34; at the step 107, this control routine comes to an end. At the step 108, the time at that time point is stored as the response delay time T 1 , and then the flag OF is set (OF←&#34;1&#34;) at a succeeding step 109. the processing then proceeds to a step 111. 
     When it is decided at the step 106 that the output voltage V F  is equal to or higher than 0.45 V, the processing proceeds to a step 110. At this step 110, the flag ROF is set to &#34;1&#34;, and then this routine comes to an end. At the step 111, the state of the flag OR is detected, as described above with respect to the step 105. The flag OR indicates the state of the detection of the response delay time T 2  of the second O 2  -sensor 18. When this flag OR is set (OR =&#34;1&#34;), indicating that the response delay time T 2  has already been detected, the instant processing comes to an end. On the other hand, when it is found at the step 111 that the flag OR is in the reset state (OR =&#34;0&#34;) indicating that the response delay time T 2  has not yet been detected, the processing proceeds to a step 112. At this step 112, a decision is made as to whether the output voltage V R  of the second O 2  -sensor 18 is lower than 0.45 V or not, as in the case of the step 106 described above. When the output voltage V R  is equal to or higher than 0.45 V, the processing proceeds to a step 112a  where the flag ROR is set to &#34;1&#34;, and then the processing comes to an end. 
     When it is decided that the output voltage V R  is lower than 0.45 V at the step 112, it is decided that the output of the second O 2  -sensor 18 is reversed at the instant control time point from a level indicating a rich state to a level indicating a lean state. Then, the processing proceeds to a step 112b to make a decision as to whether the flag ROR is &#34;1&#34; or not. If the flag OR is not &#34;1&#34;, the processing comes to an end. While, if the flag OR is &#34;1&#34;, the processing proceeds to a step 113 where the time at that time point is stored as the response delay time T 2 . At a next step 114, the flag OR is set (OR Δ&#34;1&#34;). Subsequently, at a step 115, the response delay time deference ΔT (=T 2  -T 1 ) is calculated on the basis of the response delay times T 1  and T 2  stored at the aforementioned steps 108 and 113, respectively. At a succeeding step 116, the intake air flow amount Q a  is read in. Further, at a step 117, the engine rotational speed NE is read in. Subsequently, at a step 118, the engine load Q a  /NE is calculated on the basis of the intake air flow amount Q a  and the rotational speed NE. At a step 119, the gas delay time D Gas  is obtained from the rotational speed NE and the engine load Q a  /NE. FIG. 8 illustrates a characteristic relation between the gas delay time D Gas  and the intake air flow amount Q a . As can be seen from FIG. 8, the gas delay time D Gas  decreases as the engine load and the rotational speed increase. Concerning a method of setting the gas delay time D Gas , it may be considered to obtain by an experiment or emprically beforehand the gas delay time D Gas  as a function of the engine rotational speed NE and the engine load Q a  /NE and to store the results thus obtained in the ROM 104 in the form of a two-dimensional map so that the stored gas delay time D Gas  can be read out sequentially from the ROM 104. 
     Now, at a step 120, a decision is made as to which one of the first and second purification factor detecting conditions has been satisfied at the step 101. When the first purification factor detecting condition has been satisfied, the processing proceeds to a step 121. At the step 121, the various data obtained as mentioned above are newly set as shown below so as to be stored subsequently in the RAM 105. 
     
         ΔT.sub.1 ΔΔT, QI←Q.sub.a, D.sub.Gas 1←D.sub.Gas 
    
     At a step 122, a flag FI indicating the state of the detection of the response delay time difference ΔT 1  under the first purification factor detecting condition is set (FI←&#34;1&#34;). 
     When it is decided at the step 120 that the second purification factor detecting condition has been satisfied at the step 101, the processing proceeds to a step 123. At the step 123, the various data are newly set as shown below in the manner similar to that of the step 121 so as to be stored in the RAM 105. 
     
         ΔT.sub.2 ←ΔT, QII←Q.sub.a, D.sub.Gas 2←D.sub.Gas 
    
     Subsequently, at a step 124, a flag F II indicating the state of the detection of the response delay time difference ΔT 2  under the second purification factor detecting condition is set (F II←&#34;1&#34;). 
     Next, referring to a flow chart shown in FIG. 6, a description will be made of the detection of a purification factor of the catalyst and the diagnosis of the deterioration of the catalyst on the basis of the response delay time differences ΔT 1  and ΔT 2  detected through the procedure described above. 
     At first, the states of the flags F I and F II are detected at steps 200 and 201, respectively. Only when both the flags F I and F II are set, indicating that the response delay time differences ΔT 1  and ΔT 2  have been detected, the detection of a purification factor is carried out in accordance with the processing including step 202 et seq.. 
     At the step 202, a deviation or difference ΔT s  between the response delay time differences ΔT 1  and ΔT 2  is obtained (ΔT s  =ΔT 1  -ΔT 2 ). At a next step 203, a difference ΔD Gas  between the first and second exhaust gas delay times D Gas  1 and D Gas  2 is obtained (ΔD Gas  =D Gas  1-D Gas  2). subsequently, at a step 204, an oxygen storage volume V 02  of the TWC 15 is calculated by the following expression: ##EQU4## where K 02  represents an oxygen concentration of the exhaust gas, which is a constant, since the control of an air-fuel ratio is performed by making reference to the stoichiometric air-fuel ratio. 
     At a step 205, a purification factor α is calculated on the basis of the oxygen storage volume V 02  which has been calculated at the step 204. As described hereinbefore, the purification factor α has such a characteristic relation with the oxygen storage volume V 02  as illustrated in FIG. 3. Subsequently, at a step 206, the flags F I and F II are reset (F I←&#34;0&#34;, F II←&#34;0&#34;). Thereafter, the detection of the deterioration of the TWC 15 is performed at a step 207. More specifically, it is decided whether the purification factor α of the TWC 15 obtained through the procedure described above is equal to or greater than a predetermined value (50% in the case of the illustrated embodiment). When the purification factor α of the TWC 15 is smaller than the predetermined value, it is then decided that the TWC 15 has been degraded, and then the processing proceeds to a step 208 to carry out various diagnostic processings with respect to the deterioration of the catalyst. The diagnostic processings include, for example, the storing of the catalytic deterioration information in the back-up RAM 106 and the actuation of the alarm 19 shown in FIG. 2. 
     By way of the described above, the purification factor α of the TWC 15 is detected on the basis of the deviation ΔT s  between the first and second response delay times ΔT 1  and ΔT 2 , which deviation has been detected in respective different engine operating states. Thus, by virtue of the procedure according to the present invention, the purification factor α of the TWC 15 can be detected regardless of the response times inherent to the first and second O 2  -sensors, respectively. As a result, the purification factor α of the TWC 15 can be detected with improved accuracy. 
     Referring to FIG. 3, it can be seen that the characteristic curve representing the relation between the purification factor o and the oxygen storage volume V 02  of the TWC has a steep slope particularly in the low value region of the purification factor. Accordingly, the detection of a purification factor α based on the oxygen storage volume V 02  can be made with higher detection accuracy especially in the low value region of the purification factor α. Thus, the degradation or deterioration of the TWC 15 can be accomplished with high accuracy. 
     In the case of the embodiment described above, the response delay time deviation ΔT s  is obtained on the basis of the first and second response delay times T 1  and T 2 . It should however be noted that the response delay time deviation ΔT s  between the respective different engine operation states may be detected on the basis of a difference in phase of the outputs of the first and second O 2  -sensors 16 and 18 at the time when the conditions at the above-described steps 101 to 103 are satisfied. 
     Now, a description will be made of feedback control of the air-fuel ratio. 
     (1) Processing of F/B correction coefficient 
     FIG. 9 is a flow chart illustrating an air-fuel ratio feedback control routine for calculating a feedback (F/B) correction coefficient FAFl of the air-fuel ratio on the basis of the output of the first O 2  -sensor 16. This routine is executed at predetermined time intervals, for example, 4 ms. 
     Referring to FIG. 9, a decision is made at a step 901 as to whether the condition of the closed loop (feedback) control on the basis of the output of the first O 2  -sensor 16 is established or not. In this connection, it is noted that the closed loop condition can not be satisfied under such conditions as during an engine starting operation, during fuel increasing operations after the start of the engine operation, during a warming-up operation, during a power-up operation, during lean control, during an inactive state of the first O 2  -sensor 16, etc. Otherwise, the condition of the closed loop (feedback) control is satisfied. Parenthetically, the discrimination between the active and inactive states of the first O 2  -sensor 16 can be made by reading the water temperature data THW from the RAM 105 and deciding whether the relation THW ≧70° C. has once been satisfied or not, or alternatively by detecting whether the output level of the first O 2  -sensor has once experienced up-and-down fluctuation. 
     Unless the closed loop condition is satisfied, the processing proceeds to a step 917 where the F/B correction coefficient FAFl is set to &#34;1.0&#34;. On the other hand, when the closed loop condition is satisfied, the processing proceeds to a step 902. 
     At the step 902, the output V F  of the first O 2  -sensor 16 is fetched after being subjected to A/D conversion, which is then followed by a step 903 at which a decision is made as to whether the output V F  of the first O 2  -sensor 16 is equal to or lower than 0.45 V (a comparison reference voltage). In other words, it is decided whether the air-fuel ratio is in a rich state or in a lean state. 
     When the air-fuel ratio is in a lean state (namely when V F  ≦0.45 V), a first delay counter CDLYl is guarded by a minimum value TDRl-TD through processing steps 905 and 906. In other words, when the count value of CDLYl becomes smaller than the minimum value TDRl-TD, the former is then replaced by the latter. Incidentally, the minimum value TDRl-TD represents a rich delay time for maintaining a decision of the lean state even when the output of the first O 2  -sensor changes from a lean level to a rich level. The minimum value TDRl-TD is defined to have a negative value. 
     Further, as once appeared in the steps 102a and 102b in FIG. 5, the term TD represents a manipulation quantity for changing the period of F/B and has a positive value. Hereinafter, this quantity TD will be referred to as the delay manipulating quantity. 
     Now, when the air-fuel ratio is in a rich state (namely, when V F  &gt;0.45 V), the first delay counter CDLYl is incremented by &#34;1&#34;at a step 907, and then the value of the first delay counter CDLYl is guarded by a maximum value TDL1+TD, namely, by being replaced by TDL1+TD, so that the former is inhibited so as not to exceed the latter at steps 908 and 909. The maximum value TDL1+TD represents a lean delay time for maintaining a decision of a rich state even when the output of the first O 2  -sensor 16 changes from a rich level to a lean level. The maximum value TDL1 +TD is defined to have a positive value, wherein the term TD represents the delay manipulating quantity, as described with respect to the steps 905 and 906. 
     Here, the reference value of the first delay counter CDLYl is selected to be &#34;0&#34;. When CDLYl&gt;0, the air-fuel ratio after the delay processing is regarded to be in a rich state, while, it is regarded to be in a lean state when CDLYl≦0. 
     At a step 910, a decision is made as to whether the sign of the first delay counter CDLYl is inverted or not. In other words, it is decided whether the state of the air-fuel ratio after the delay processing is inverted or not. If it has been inverted, a decision is made at a step 912 as to whether the inversion is from a rich state to a lean state or vice versa. When it is from a rich state to a lean state, the F/B correction coefficient FAFl is increased skipwise to FAFl +RSl at a step 912, and if otherwise, the F/B correction coefficient FAFl is decreased skipwise to FAFl-RSl. In other words, a stepwise processing is performed. 
     When it is detected at the step 910 that the sign of the first delay counter value CDLYl has not been inverted, an accumulation processing is performed at steps 914, 915 and 916. More specifically, it is decided whether CDLYl≦0 holds or not at the step 914. When CDLYl≦0 holds, indicating a lean state, then FAFl is incremented by KIl (FAFl←FAFl+KIl) at the step 915, while, when CDLYl &gt;0 holds, indicating a rich state, then FAFl is decremented by KIl (FAFl←FAFl←KIl). Here, it should be noted that the integration constant KIl is sufficiently small as compared with the skip constant RSl, namely, KIl&lt;&lt;RSl holds. Thus, at the step 915, the fuel injection quantity is gradually increased, starting from a lean state (CDLYl=0), while, at the step 916, the fuel injection quantity is gradually decreased, starting from a rich state (CDLYl&gt;0). 
     The F/B correction coefficient FAFl processed at the steps 912, 913, 915 and 916 is guarded by a minimum value, for example 0.8, as well as by a maximum value, for example 1.2, in order for preventing the F/B correction coefficient FAFl from increasing or decreasing excessively for some reason and hence preventing the air-fuel ratio control from giving rise to an over-rich state or an over-lean state. 
     As described above, the F/B correction coefficient FAFl thus calculated is stored in the RAM 105, and the routine under consideration comes to an end at a step 918. 
     FIG. 10 is a timing diagram for explaining supplementally the operations described above with reference to the flow chart of FIG. 9. Referring to FIG. 10, there is shown at (A) an air-fuel ratio signal A/Fl for discriminating a rich state and a lean state from each other, which signal is obtained from an output of the first O 2  -sensor 16. In the rich state indicated by this signal A/Fl, the first delay counter CDLYl is counted up, while it is counted down in the lean state, as shown at (B) in FIG. 10. As a result, there is produced a delayed air-fuel ratio signal A/Fl&#39; having such a waveform as shown at (C) in FIG. 10. 
     By way of example, even when the air-fuel ratio signal A/Fl changes from a lean level to a rich level at a time point t 1 , the delayed air-fuel ratio signal A/Fl&#39; is held at a lean level for the rich delay time (-TDRl+TD) and then changes to a rich level at a time t 2 . Similarly, even when the air-fuel ratio signal A/Fl changes from a rich level to a lean level at a time point t 3 , the delayed air-fuel ratio signal A/Fl&#39; is held at a rich level for a period represented by the lean delay time (TDL1+TD) and then changes to a lean level at a time point t 4 . 
     However, when the air-fuel ratio signal A/Fl changes or inverts its level at a time interval shorter than the rich delay time (-TDRl+TD), as indicated at t 5 , t 6  and t 7  in FIG. 10(B), a time is required for the first delay counter CDLYl before crossing the reference value 0, which results in that the air-fuel ratio signal A/Fl&#39;, which has been subjected to the delay processing, is inverted at a time point t 8 . Thus, the delayed air-fuel ratio signal A/Fl&#39; after being subjected to the delay processing becomes more stable than the air-fuel ratio signal A/Fl before being subjected to the delay processing. In this manner, the F/B correction coefficient signal FAFl shown at (D) in FIG. 10 can be obtained on the basis of the air-fuel ratio signal A/Fl&#39; stabilized through the delay processing described above. 
     (2) Modification of F/B correction coefficient by second O 2  -sensor 18 
     Next, a description will be made of a second air-fuel ratio feedback control by using the second O 2  -sensor 18. To this end, there are provided two systems. A first system introduces a second feedback F/B correction coefficient FAF2 of the air-fuel ratio. In a second system, either the delay times (-TDRl+TD), (TDL1+TD), the skip quantity RSl (including a rich skip quantity RSlR representing a skip from a lean level to a rich level and a lean skip quantity RSlL representing a skip from a rich level to a lean level, respectively) and the integration constant KIl are set separately, or the comparison reference voltage for the output V F  of the first O 2  -sensor 16 is made variable. 
     By way of example, when the rich delay time (-TDRl+TD) is set to be longer than the lean delay time (TDL1+TD), namely, (-TDRl+TD)&gt;(TDL1+TD), then the air-fuel ratio under control tends to shift to the rich side. On the contrary, when the lean delay time (TDL1+TD) is set to be longer than the rich delay time (-TDRl+TD), namely (TDL1+TD)&gt;(-TDRl+TD), then the air-fuel ratio under control tends to shift to the lean side. In other words, the air-fuel ratio can be controlled by modifying the delay times (-TDRl+TD) and (TDL1+TD) in accordance with the output of the second O 2  -sensor. 
     FIG. 11 is a flow chart illustrating a second air-fuel ratio feedback control routine for calculating the delay times TDRl and TDL1 on the basis of the output of the second O 2  -sensor 18, which routine is executed at predetermined time intervals, for example, 1 second. At a step 1400, a decision is made as to whether the deterioration of the TWC is being detected by using the delay manipulation quantity TD. At a step 1401, a decision is made as to whether the closed loop condition of the air-fuel ratio is satisfied or not, as described hereinbefore with respect to the step 901 shown in FIG. 9. 
     When it is decided that the detection of the deterioration of the catalyst is being carried out or the closed loop condition is not satisfied, the processing proceeds to steps 1423 and 1424 where the rich delay time TDRl and the lean delay time TDL1 are set to constant values, respectively, as exemplified below: 
     
         TDRl←-12 (corresponding to 48 ms) 
    
     
         TDL1←6 (corresponding to 24 ms) 
    
     The reason why the rich delay time (-TDRl) is set to be longer than the lean delay time (TDL1) is that the comparison reference value is set to have a small value (e.g. 0.45 V) belonging to the lean side. 
     When no deterioration of the catalyst takes place and the closed loop condition is satisfied, the processing proceeds to a step 1402. 
     Steps 1402 to 1409 shown in FIG. 11 correspond to the steps 902 to 909 shown in FIG. 9. A decision as to a rich state or a lean state is made at the step 1403, and then the result of this decision is subjected to the delay processing at the steps 1404 to 1409, which is then followed by a decision as to a rich state or a lean state of the result of the delay processing at the step 1410. 
     At the step 1410, a decision is made as to whether the second delay counter CDLY2 is equal to or smaller than zero (CDLY2≦0). When CDLY2≦0 holds, it is decided that the air-fuel ratio is in a lean state, and then the processing proceeds through steps 1411 to 1416. While, when CDLY2&gt;0 holds, it is decided that the air-fuel ratio is in a rich state, and then the processing proceeds through steps 1417 to 1422. 
     At the step 1411, the count TDRl is decremented by &#34;1&#34;(namely, TDRl←TDRl-1) to thereby increase the rich delay time (-TDRl), as a result of which the change of the air-fuel ratio from a lean level to a rich level is further delayed to make the air-fuel ratio shift to the rich side. At the steps 1412 and 1413, TDRl is guarded by a minimum value T Rl  which also has a negative value in this case. Accordingly, (-T Rl ) represents a maximum rich delay time. 
     Further, at the step 1414, the count TDL1 is decremented by &#34;1&#34;(TDL1←TDL1-1). Thus, the lean delay time TDL1 is decreased to make the air-fuel ratio shift to the rich side by decreasing a delay in the change from a rich state to a lean state. At the steps 1415 and 1416, T L1  has a positive value and it represents a minimum lean delay time. 
     When the air-fuel ratio is decided to be in a rich state at the step 1410, then the count TDRl is incremented by &#34;1&#34;(namely, TDRl←TDRl+1). Thus, the rich delay time (-TDRl) is reduced to make the air-fuel ratio shift to the lean side by reducing a delay in the change from a lean state to a rich state. At the steps 1418 and 1419, TDRl is guarded by a maximum value T R2  which also has a negative value in this case. Accordingly, (-T R2 ) represents a minimum rich delay time. 
     Further, at the step 1420, the count TDL1 is incremented by &#34;1&#34;(TDL1←TDL1+1). Thus, the lean delay time TDL1 is increased to make the air-fuel ratio shift from the rich side to the lean side by increasing a delay in the change from a rich state to a lean state. At the steps 1421 and 1422, TDL1 is guarded by a maximum value T L1  which has a positive value in this case. Accordingly, T L2  represents a maximum lean delay time. 
     The values of TDRl and TDL1 calculated as described above are stored in the RAM 105, and then this routine comes to an end at a step 1425. 
     Further, although it has been described that the values of TDRl and TDL1 have constant values at the steps 1423 and 1424, it should be noted that TDRl and TDL1 may be values assumed immediately before the stoppage of the air-fuel ratio feedback control, mean values, or other values depending on other parameters such as a rotational speed NE, an intake air flow amount Q a , an intake air pressure, an exhaust gas temperature, etc.. Further, the values of FAFl, TDRl and TDL1 calculated during the air-fuel ratio feedback control may be converted to the other values of FAFl, TDRl and TDL1 so that they are stored in the back-up RAM 106, thereby making it possible to improve the operability of the engine at the time of restart of the engine, etc. 
     FIG. 12 is a timing diagram showing the delay times TDRl and TDL1 obtained through the procedure shown in FIG. 11. When the output voltage V R  of the second O 2  -sensor 18 changes as shown at (A) in FIG. 12, the delay times TDRl and TDL1 are both reduced in the lean state (V R  ≦0.45 V) as shown at (B) in FIG. 12, while the delay times TDRl and TDL1 are both increased in the rich state. In this case, TDRl varies within the range from T R1  to T R2 , while TDL1 varies within the range from T L1  to T L2 . 
     (3) Control of fuel injection time 
     FIG. 13 is a flow chart illustrating an injection quantity processing routine which is executed at every predetermined crank angle of 360°, for example. Referring to FIG. 13, at a step 1501, the intake air flow amount data Q a  and the rotational speed data NE are read out from the RAM 105 to calculate the basic fuel injection quantity TAUP. By way of example, the basic fuel injection quantity may be given by TAUP =K·Q/NE (where K is a constant). At a step 1502, the cooling water temperature data THW is read out from the RAM 105 and a warming-up increase of the fuel injection quantity FWL is calculated through an interpolation processing using a one-dimensional map stored in the ROM 104. At a step 1503, the final injection quantity TAU is calculated in accordance with the following relation. 
     
         TAU←TAUP·FAFl·(FWL+α)+β 
    
     where α and β represent correction quantities determined by other operation state parameters. 
     Next, at a step 1504, the fuel injection quantity TAU is set at the down counter 104 and the flip-flop 109 is set simultaneously to thereby start fuel injection. At a step 1505, this routine is completed. 
     FIG. 14 illustrates a relation between the purification factor α of the catalyst and the deviation ΔT s  between the first and second response delay time differences in the outputs of the first and second 
     O 2  -sensors 16 and 18 detected in respective different operating states of the engine, with the F/B control period being used as a parameter. As is shown by a broken curve in FIG. 14, when the F/B period is shortened (with TD←0) as in the case of ordinary emission control, a change of the deviation ΔT s  as a function of the purification factor α becomes very small, making it difficult to measure the purification factor α on the basis of ΔT s . By contrast, when the F/B period is elongated (with TD←100 ms) as done in the embodiment of the present invention, as shown by a solid curve in FIG. 14, the deviation ΔT s  changes significantly as a function of the purification factor α. Thus, the purification factor α can be obtained with high accuracy on the basis of the deviation ΔT s  between the first and second response delay time differences. FIG. 15 illustrates a relation between the F/B period and the emission control quality. As seen from FIG. 15, an optimum range of the F/B period is relatively narrow. 
     As will be appreciated from the foregoing description, the purification factor of the catalyst can be detected on the basis of the deviation between the first and second response delay time differences detected in respective different operation states of the engine. Thus, the purification factor can be detected independently of respective response times of the first and second oxygen sensors, which in turn provides an advantageous effect such that the purification factor of the catalyst can be detected with high accuracy.