Fuel metering control system for internal combustion engine

Abstract: A system for controlling fuel metering for a multi-cylinder internal combustion engine, having a feedback loop (Fig. 4) which has an adaptive controller and an adaptation mechanism coupled to said adaptive controller for estimating controller parameters  and. The adaptive controller calculates a feedback correction coefficient using internal variables that include the controller parameters  and, to correct a basic quantity of fuel injection obtained by retrieving mapped data by engine speed and engine load, to bring a detected air/fuel ratio to a desired air/fuel ratio. In the system, the internal variables of the adaptive controller are determined (S114) in response to detected engine operating conditions, when the engine operation has shifted from an open-loop control region to the feedback control region.

Description: This invention relates to a fuel metering control system for an internal combustion engine. The PID control law is ordinarily used for fuel metering control for internal combustion engines. The control error between the desired value and the controlled variable (plant output) is multiplied by a P term (proportional term), an I term (integral term) and a D term (differential or derivative term) to obtain the feedback correction coefficient (feedback gain). In addition, it has recently been proposed to obtain the feedback correction coefficient by use of modern control theory or the like, as taught by Japanese Laid-Open Patent Application Hei 4(1992)-209,940. When conducting feedback control based on modern control theory like an adaptive controller such that an air/fuel ratio or the quantity of fuel injection is brought to a desired value, using the amount of fuel injection as the manipulated variable, at the time that the engine operation has just shifted from an open-loop control region to a feedback control region, a spike may sometimes occur in the detected air/fuel ratio, unless internal variables of the controller are properly determined, which spike degrades the control stability. An object of the invention is therefore to provide a fuel metering control system for an internal combustion engine which can carry out the feedback control stably when the engine operating condition has just shifted from an open-loop control region to a feedback control region. This invention achieves the object by providing a system for controlling fuel metering for a multicylinder internal combustion engine, comprising an air/fuel ratio sensor located in an exhaust system of the engine for detecting an air/fuel ratio in exhaust gas of the engine, engine operating condition detecting means for detecting engine operating conditions including at least engine speed and engine load, basic fuel injection quantity determining means coupled to said engine operating condition detecting means, for determining a basic quantity of fuel injection for a cylinder of the engine based on at least the detected engine operating conditions, a feedback loop means coupled to said fuel injection quantity determining means, and having an adaptive controller and an adaptation mechanism coupled to said adaptive controller for estimating controller parameters, said adaptive controller calculating a feedback correction coefficient using internal variables that include at least said controller parameters, to correct the basic quantity of fuel injection to bring a controlled variable obtained based at least on the detected air/fuel ratio to a desired value, feedback control region discriminating means for discriminating whether engine operation is in a feedback control region based on the detected engine operating conditions, output fuel injection quantity determining means for determining an output quantity of fuel injection, said output fuel injection quantity determining means correcting the basic quantity of fuel injection using said feedback correction coefficient when the engine operation is discriminated to be in the feedback control region, and fuel injection means coupled to said output fuel injection quantity determining means, for injecting fuel into the cylinder of the engine based on the output quantity of fuel injection. In the system, said feedback loop means determines the internal variables of the adaptive controller in response to the detected engine operating conditions, when the engine operation has shifted from an open-loop control region to the feedback control region. These and other objects and advantages of the invention will be more apparent from the following description and drawings, which show the invention by way of example only, and in which: Figure 1 is an overall schematic view showing a fuel metering control system for an internal combustion engine according to the present invention; Figure 2 is a block diagram showing the details of a control unit illustrated in Figure 1; Figure 3 is a flowchart showing the operation of the system according to the invention; Figure 4 is a block diagram showing the configuration of the system; Figure 5 is a subroutine flowchart of Figure 3 showing the calculation of a feedback correction coefficient KFB referred to in Figure 3; Figure 6 is a view showing the characteristics of mapped data of the adaptive correction coefficient KSTR referred to in the flowchart of Figure 5; Figure 7 is a view showing the characteristics of mapped data of the controller parameters  and referred to in the flowchart of Figure 5; and Figure 8 is a view, similar to Figure 7, but showing the characteristics of mapped data in a second embodiment of the invention. Embodiments of the invention, given by way of example only, will now be explained with reference to the drawings. Figure 1 is an overview of a fuel metering control system for an internal combustion engine according to the invention. Reference numeral 10 in this figure designates an overhead cam (OHC) in-line four-cylinder (multicylinder) internal combustion engine. Air drawn into an air intake pipe 12 through an air cleaner 14 mounted on a far end thereof is supplied to each of the first to fourth cylinders through a surge tank 18, an intake manifold 20 and two intake valves (not shown), while the flow thereof is adjusted by a throttle valve 16. A fuel injector (fuel injection means) 22 is installed in the vicinity of the intake valves of each cylinder for injecting fuel into the cylinder. The injected fuel mixes with the intake air to form an air-fuel mixture that is ignited in the associated cylinder by a spark plug (not shown) in the firing order of #1, #3, #4 and #2 cylinder. The resulting combustion of the air-fuel mixture drives a piston (not shown) down. The exhaust gas produced by the combustion is discharged through two exhaust valves (not shown) into an exhaust manifold 24, from where it passes through an exhaust pipe 26 to a catalytic converter (three-way catalyst) 28 where noxious components are removed therefrom before it is discharged to the exterior. Not mechanically linked with the accelerator pedal (not shown), the throttle valve 16 is controlled to a desired degree of opening by a stepping motor M. In addition, the throttle valve 16 is bypassed by a bypass 32 provided at the air intake pipe 12 in the vicinity thereof. The engine 10 is equipped with an exhaust gas recirculation (EGR) mechanism 100 which recirculates a part of the exhaust gas to the intake side via a recirculation pipe 121, and a canister purge mechanism 200 connected between the air intake system and a fuel tank 36. The engine 10 is also equipped with a variable valve timing mechanism 300. (denoted as V/T in Figure 1). As taught by Japanese Laid-open Patent Application No. Hei 2(1990)-275,043, for example, the variable valve timing mechanism 300 switches the opening/closing timing of the intake and/or exhaust valves between two types of timing characteristics: a characteristic for low engine speed designated LoV/T, and a characteristic for high engine speed designated HiV/T in response to engine speed Ne and manifold pressure Pb. Since this is a well-known mechanism, however, it will not be described further here. (Among the different ways of switching between valve timing characteristics is included that of deactivating one of the two intake valves.) The engine 10 of Figure 1 is provided in its ignition distributor (not shown) with a crank angle sensor 40 for detecting the piston crank angle and is further provided with a throttle position sensor 42 for detecting the degree of opening of the throttle valve 16, and a manifold absolute pressure sensor 44 for detecting the pressure Pb of the intake manifold downstream of the throttle valve 16 in terms of absolute value. An atmospheric pressure sensor 46 for detecting atmospheric pressure Pa is provided at an appropriate portion of the engine 10, an intake air temperature sensor 48 for detecting the temperature of the intake air is provided upstream of the throttle valve 16, and a coolant temperature sensor 50 for detecting the temperature of the engine coolant is also provided at an appropriate portion of the engine. The engine 10 is further provided with a valve timing (V/T) sensor 52 (not shown in Figure 1) which detects the valve timing characteristic selected by the variable valve timing mechanism 300 based on oil pressure. Further, an air/fuel sensor 54 constituted as an oxygen detector or oxygen sensor is provided in the exhaust pipe 26 at, or downstream of, a confluence point in the exhaust system, between the exhaust manifold 24 and the catalytic converter 28, where it detects the oxygen concentration in the exhaust gas at the confluence point and produces a corresponding signal (explained later). The outputs of the sensors are sent to the control unit 34. Details of the control unit 34 are shown in the block diagram of Figure 2. The output of the air/fuel ratio sensor 54 is received by a detection circuit 62, where it is subjected to appropriate linearization processing for producing an output characterized in that it varies linearly with the oxygen concentration of the exhaust gas over a broad range extending from the lean side to the rich side. (The air/fuel ratio sensor is denoted as "LAF sensor" in the figure and will be so referred to in the remainder of this specification.) The output of the detection circuit 62 is forwarded through a multiplexer 66 and an A/D converter 68 to a CPU (central processing unit). The CPU has a CPU core 70, a ROM (read-only memory) 72 and a RAM (random access memory) 74, and the output of the detection circuit 62 is A/D-converted once every prescribed crank angle (e.g., 15 degrees) and stored in buffers of the RAM 74. Similarly, the analog outputs of the throttle position sensor 42, etc., are input to the CPU through the multiplexer 66 and the A/D converter 68 and stored in the RAM 74. The output of the crank angle sensor 40 is shaped by a waveform shaper 76 and has its output value counted by a counter 78. The result of the count is input to the CPU. In accordance with commands stored in the ROM 72, the CPU core 70 computes a manipulated variable in the manner described later and drives the fuel injectors 22 of the respective cylinders via a drive circuit 82. Operating via drive circuits 84, 86 and 88, the CPU core 70 also drives a solenoid valve (EACV) 90 (for opening and closing the bypass 32 to regulate the amount of secondary air), a solenoid valve 122 for controlling the aforesaid exhaust gas recirculation, and a solenoid valve 225 for controlling the aforesaid canister purge. Figure 3 is a flowchart showing the operation of the system. The program is activated at a predetermined crank angular position such as every TDC (Top Dead Center) of the engine. In the system, as disclosed in the Figure 4 block diagram, there is provided a feedback loop (means) having a controller means for calculating a feedback correction coefficient (shown as "KSTR(k)" in the figure) using a control law expressed in recursion formula, more particularly an adaptive controller of a type of STR (self-tuning regulator, shown as "STR controller" in the figure) to determine the manipulated variable in terms of the amount of fuel supply (shown as "Basic quantity of fuel injection Tim" in the figure), such that the detected exhaust air/fuel ratio (shown as "KACT(k)" in the figure) is brought to a desired air/fuel ratio (shown as "KCMD(k)" in the figure). Here, k is a sample number in the discrete time system. It should be noted that the detected air/fuel ratio and the desired air/fuel ratio are expressed as, in fact, the equivalence ratio, i.e., as Mst/M = 1/lambda (Mst: stoichiometric air/fuel ratio; M: A/F (A: air mass flow rate; F: fuel mass flow rate; lambda: excess air factor), so as to facilitate the calculation. In Figure 3, the program starts at S10 in which the detected engine speed Ne, the manifold pressure Pb, etc., are read and the program proceeds to S12 in which it is checked whether or not the engine is cranking, and if it is not, to S14 in which it is checked whether the supply of fuel is cut off. Fuel cutoff is implemented under a specific engine operating condition, such as when the throttle is fully closed and the engine speed is higher than a prescribed value, at which time the supply of fuel is stopped and fuel injection is controlled in an open-loop manner. When it is found in S14 that fuel cutoff is not implemented, the program proceeds to S16 in which the basic quantity of fuel injection Tim is calculated by retrieval from mapped data using the detected engine speed Ne and manifold pressure Pb as address data. Next, the program proceeds to S18 in which it is checked whether activation of the LAF sensor 54 is completed. This is done by comparing the difference between the output voltage and the center voltage of the LAF sensor 54 with a prescribed value (0.4 V, for example) and determining that the activation has been completed when the difference is smaller than the prescribed value. When S18 finds that the activation has been completed, the program goes to S20 in which the output of the LAF sensor is read, and to S22 in which the air/fuel ratio KACT(k) is determined or detected. The program then goes to S24 in which a feedback correction coefficient KFB is calculated. Figure 5 is a flowchart showing the calculation of the feedback correction coefficient KFB. The program starts at S100 in which it is checked whether the engine operation is in a feedback control region. This is conducted using a separate subroutine not shown in the drawing. Fuel metering is controlled in an open-loop fashion, for example, such as during full-load enrichment or high engine speed, or when the engine operating condition has changed suddenly owing to the operation of the exhaust gas recirculation mechanism. When the result in S100 is YES, the program proceeds to S102 in which it is checked or discriminated whether the engine operating condition at the preceding (control) cycle, i.e., at the time that the Figure 3 flowchart was activated in the preceding (control) cycle, was also in the feedback control region. When the result is affirmative, the program proceeds to S104 in which the feedback correction coefficient is calculated using the adaptive control law. The feedback correction coefficient will hereinafter be referred to as the "adaptive correction coefficient KSTR". Explaining this, the system illustrated in Figure 4 is based on adaptive control technology proposed in an earlier application by the assignee. It comprises an adaptive controller constituted as an STR (self-tuning regulator) controller (controller means) and an adaptation mechanism (adaptation mechanism means) (system parameter estimator) for estimating/identifying the controller parameters (system parameters)  and. The desired value and the controlled variable (plant output) of the fuel metering feedback control system are input to the STR controller, which receives the coefficient vector (i.e., the controller parameters expressed in a vector)  and estimated/identified by the adaptation mechanism, and generates an output. One identification or adaptation law (algorithm) available for adaptive control is that proposed by I.D. Landau et al. In the adaptation law proposed by I.D. Landau et al., the stability of the adaptation law expressed in a recursion formula is ensured at least using Lyapunov's theory or Popov's hyperstability theory. This method is described in, for example, Computrol (Corona Publishing Co., Ltd.) Ltd.) No. 27, pp. 28-41; Automatic Control Handbook (Ohm Publishing Co., Ltd.) pp. 703-707; "A Survey of Model Reference Adaptive Techniques - Theory and Applications" by I.D. Landau in Automatica , Vol. 10, pp. 353-379, 1974; "Unification of Discrete Time Explicit Model Reference Adaptive Control Designs" by I.D. Landau et al. in Automatica, Vol. 17, No. 4, pp. 593-611, 1981; and "Combining Model Reference Adaptive Controllers and Stochastic Self-tuning Regulators" by I.D. Landau in Automatica, Vol. 18, No. 1, pp. 77-84, 1982. The adaptation or identification algorithm of I. D. Landau et al. is used in the assignee's earlier proposed adaptive control technology. In this adaptation or identification algorithm, when the polynomials of the denominator and numerator of the transfer function B(Z -1 )/A(Z -1 ) of the discrete controlled system are defined in the manner of Eq. 1 and Eq. 2 shown below, then the controller parameters or system (adaptive) parameters  and(k) are made up of parameters as shown in Eq. 3 and are expressed as a vector (transpose vector). And the input zeta (k) which is input to the adaptation mechanism becomes that shown by Eq. 4. Here, there is taken as an example a plant in which m = 1, n = 1 and d = 3, namely, the plant model is given in the form of a linear system with three control cycles of dead time. A(z -1 ) = 1 + a 1 z -1 + ... + a n z -n B(z -1 ) = b 0 + b 1 z -1 + ··· + b m z -m  T (k) = [ b 0 (k), B R (z -1 ,k), S (z -1 , k)] = [ b 0 (k), r 1 (k),···,r m+d-1 (k),s 0 (k),···,s n-1 (k)] = [b 0 (k),r 1 (k),r 2 (k),r 3 (k),s 0 (k)] ζ T (k) = [u(k), ···,u(k-m-d+1),y(k), ···,y(k-n+1)] = [u(k),u(k-1),u(k-2),u(k-3),y(k)] Here, the factors of the controller parameters  and, i.e., the scalar quantity b and 0 -1 (k) that determines the gain, the control factor B and R (Z -1 ,k) that uses the manipulated variable and S and(Z -1 ,k) that uses the controlled variable, all shown in Eq. 3, are expressed respectively as Eq. 5 to Eq. 7. b 0 -1 (k) = 1/b 0 B R (Z -1 ,k) = r 1 z -1 + r 2 z -2 + ... + r m+d-1 z -(m+d-1) = r 1 z -1 + r 2 z -2 + r 3 z -3 S (Z -1 ,k) = s 0 + s 1 z -1 + ... + s n-1 z -(n-1) = s 0 The adaptation mechanism estimates or identifies each coefficient of the scalar quantity and control factors, calculates the controller parameters (vector)  and, and supplies the controller parameters  and to the STR controller. More specifically, the adaptation mechanism calculates the controller parameters  and using the manipulated variable u(i) and the controlled variable y (j) of the plant (i,j include past values) such that the control error between the desired value and the controlled variable becomes zero. More precisely, the controller parameters (vector)  and(k) are calculated by Eq. 8 below. In Eq. 8, Γ(k) is a gain matrix (the (m+n+d)th order square matrix) that determines the estimation/identification rate or speed of the controller parameters  and, and e*(k) is a signal indicating the generalized estimation/identification error, i.e., an estimation error signal of the controller parameters. They are represented by recursion formulas such as those of Eqs. 9 and 10.  (k) =  (k-1) + Γ(k-1)ζ(k-d)e*(k) Γ(k) = 1 λ 1 (k) [Γ(k-1) - λ 2 (k)Γ(k-1)ζ(k-d)ζ T (k-d)Γ(k-1) λ 1 (k) + λ 2 (k)ζ T (k-d)Γ(k-1)ζ(k-d) ] e*(k) = D(z -1 )y(k)-  T (k-1)ζ(k-d) 1 + ζ T (k-d)Γ(k-1)ζ(k-d) Various specific algorithms are given depending on the selection of lambda 1(k) and lambda 2(k) in Eq. 9. lambda 1(k) = 1, lambda 2(k) = lambda (0 < lambda < 2) gives the gradually-decreasing gain algorithm (least-squares method when lambda = 1); and lambda 1(k) = lambda 1 (0 < lambda 1 < 1), lambda 2(k) = lambda 2 (0 < lambda 2 < lambda) gives the variable-gain algorithm (weighted least-squares method when lambda 2 = 1). Further, defining lambda 1(k)/lambda 2(k) = σ and representing lambda 3(k) as in Eq. 11, the constant-trace algorithm is obtained by defining lambda 1(k) = lambda 3(k). Moreover, lambda 1(k) = 1, lambda 2(k) = 0 gives the constant-gain algorithm. As is clear from Eq. 9, in this case Γ(k) = Γ(k-1), resulting in the constant value Γ(k) = Γ. Any of the algorithms are suitable for the time-varying plant such as the fuel metering control system according to the invention. λ 3 (k) = 1 - ∥Γ(k-1)ζ(k-d)∥ 2 σ+ζ T (k-d)Γ(k-1)ζ(k-d) • 1 trΓ(0) In the diagram of Figure 4, the STR controller (adaptive controller) and the adaptation mechanism (system parameter estimator) are placed outside the system for calculating the quantity of fuel injection (fuel injection quantity determining means) and operate to calculate the feedback correction coefficient KSTR(k) so as to adaptively bring the detected value KACT(k) to the desired value KCMD(k-d') (where, as mentioned earlier, d' is the dead time before KCMD is reflected in KACT). In other words, the STR controller receives the coefficient vector  and(k) adaptively estimated/identified by the adaptive mechanism and forms a feedback compensator (feedback control loop) so as to bring it to the desired value KCMD(k-d'). The basic quantity of fuel injection Tim is multiplied by the calculated feedback correction coefficient KSTR(k), and the corrected quantity of fuel injection is supplied to the controlled plant (internal combustion engine) as the output quantity of fuel injection Tout(k). Thus, the feedback correction coefficient KSTR(k) and the detected air/fuel ratio KACT(k) are determined and input to the adaptation mechanism, which calculates/estimates the controller parameters (vector)  and(k) that are in turn input to the STR controller. Based on these values, the STR controller uses the recursion formula to calculate the feedback correction coefficient KSTR(k) so as to bring the detected air/fuel ratio KACT(k) to the desired air/fuel ratio KCMD(k-d'). The feedback correction coefficient KSTR(k) is specifically calculated as shown by Eq. 12: KSTR(k) = KCMD(k-d')-s 0 xy(k)-r 1 xKSTR(k-1)-r 2 xKSTR(k-2)-r 3 xKSTR(k-3) b 0 Returning to Figure 5, the program proceeds to S106 in which map retrieval values of the adaptive correction coefficient KSTR are updated, and to S108 in which map retrieval values of the controller parameters  and(k) are updated. These will be explained later. The program then proceeds to S110 in which the adaptive correction coefficient KSTR is renamed as the feedback correction coefficient KFB. On the other hand, when S100 finds that the engine operating condition is not in the feedback control region, the program proceeds to S112 in which the adaptive correction coefficient KSTR is fixed at 1.0, and the program goes to S110. Since the quantity of fuel injection is multiplied by the feedback correction coefficient and is corrected, setting the correction coefficient to 1.0 indicates no feedback control should be implemented. When S102 find that the last (control) cycle was not in the feedback control region, since this means that the engine operating condition has just shifted from the open-loop control region to the feedback control region, the program goes to S114 in which the controller parameters  and(k-1) and the adaptive correction coefficient KSTR are respectively retrieved from the mapped data in response to the desired air/fuel ratio KCMD using the engine speed Ne and the engine load (manifold pressure Pb) as address data. Figure 6 illustrates the characteristics of the mapped data of the adaptive correction coefficient KSTR, and Figure 7 shows those of the controller parameters  and. The values KSTR,  and are established in advance in response to the engine operating condition, more specifically to engine operating regions defined by the engine speed Ne and the manifold pressure Pb. In particular, regions include one in which the engine is idling, since the controller parameters and the adaptive correction coefficient may differ more greatly in the engine idling region than in other engine operating regions. It should be noted here that, although the controller parameters (vector)  and are preestablished as a transpose matrix, it is alternatively possible to immediately preestablish the controller parameters (vector)  and themselves. Moreover, since the controller parameters  and and the adaptive correction coefficient KSTR vary with the desired air/fuel ratio KCMD, the mapped data are prepared with respect to the engine operating region for possible desired air/fuel ratios to be used from No. 1 to No. n such as a stoichiometric value (KCMD=1.0), a leaner value or a richer value. The 5 factors of the controller parameters  and are similarly prepared as their initial values with respect to the engine operating region. These mapped data are not stored in the ROM 72, but in the backup portion of the RAM 74 for updating. The aforesaid adaptation mechanism receives zeta(k-d), i.e., a vector which is a set or group of the current and past values of the plant input u(k)(=KSTR(k)) and the plant output y(k)(=KACT(k)) and based on the cause-and-effect relationship of the plant input and output, calculates the controller parameters  and(k). Here, u(k) is the correction coefficient used for correcting the quantity of fuel injection, as just mentioned. Therefore, in the case of initiating the adaptive control when the engine operating condition has just entered the feedback control region (adaptive control region), unless the past value of the internal variables of the adaptive (STR) controller such as zeta (k-d),  and(k-1) and gain matrix Γ(k-1) are prepared properly, there is the possibility that the adaptive correction coefficient KSTR will be calculated improperly. If the control is conducted using an improperly calculated adaptive correction coefficient, the system may, at worst, oscillate. In view of the above, the system is configured such that initial values of the controller parameters  and(k), more precisely, initial values of their 5 factors (r 1 , r 2 , r 3 , s 0 , b 0 ) and the adaptive correction coefficient KSTR (plant input) are established and stored as mapped data in the memory beforehand with respect to the engine operating region and the desired air/fuel ratio. Specifically, the controller parameters at the previous control cycle  and(k-1) and the input (internal variable) at the previous control cycle zeta(k-d) are retrieved from the mapped data corresponding to the desired air/fuel ratio currently determined and the region in which the engine is currently operating using the engine speed, etc., as address data in S114 of the Figure 5 flowchart. Since the gain matrix Γ(k-1) is a value that determines adaptation rate or speed, the gain matrix is set to a predetermined matrix (such as its initial value) in response to the engine operating condition by retrieving mapped data stored in a memory (whose characteristics are not shown, but are similar to those shown in Figure 6) using the engine speed and some similar parameter as address data. Based on the values, the correction coefficient KSTR is then calculated in S104. Furthermore, the system is configured such that, the mapped data in the engine operating region concerned is updated, when the feedback control is carried out, as briefly referred to earlier with reference to S106, S108 of the flowchart. This updating is conducted by obtaining a weighted average between the retrieved value and a previously updated value (if not mapped value), in other words, by calculating a learning control value. This will be explained taking the updating of the controller parameters as an example. Assuming that the engine speed Ne is 1000 rpm and the manifold pressure Pb is 400 mmHg, the scalar quantity b 0 under the engine operating region is b 0map , and the scalar amount obtained during the feedback control under the same engine operating condition is b 01 , the updating is carried out as follows: b 0map = b 0map x W + b 01 x (1 - W) (W: weighting coefficient) It should be noted here that the updating of the controller parameters  and are conducted by respectively updating the individual 5 factors. This is because the controller parameters are expressed in a vector matrix. It should also be noted that, as regards the adaptive correction coefficient KSTR, it suffices if the current value KSTR(k) is solely updated. The updated value KSTR(k) is then used for determining the past values KSTR(k-i) in S114 of the Figure 5 flowchart. That is, although 3 past values of KSTR, i.e., u(k-1), u(k-2) and u(k-3) are needed for calculating the input zeta (as shown in Eq. 4) which are in turn needed for calculating the controller parameters  and (as shown in Eq. 8), these past values KSTR(k-1) to (k-3) can be determined from the updated KSTR(k). With the arrangement, it becomes possible to initiate the feedback control with a properly calculated adaptive correction coefficient KSTR when the engine operating condition has just moved from the open-loop control region to the feedback control region, enabling no control hunting to occur, no air/fuel ratio spike to occur and to improve the control stability. Returning to the Figure 3 flowchart, the program then proceeds to S26 in which the basic quantity of fuel injection (the amount of fuel supply) Tim is multiplied by a desired air/fuel ratio correction coefficient KCMDM (a value determined by correcting the desired air/fuel ratio KCMD (expressed in equivalence ratio) by the charging efficiency of the intake air), the feedback correction coefficient KFB and a product of other correction coefficients KTOTAL and is then added by the sum of additive correction terms TTOTAL to determine the output quantity of fuel injection Tout. The program then proceeds to S28 in which the output quantity of fuel injection Tout is applied to the fuel injector 22 as the manipulated variable. Here, KTOTAL is the product of various correction coefficients to be made through multiplication including correction based on the coolant temperature correction. TTOTAL indicates the total value of the various corrections for atmospheric pressure, etc., conducted by addition (but does not include the fuel injector dead time, etc., which is added separately at the time of outputting the output quantity of fuel injection Tout). When the result in S18 is NO, since this means that the control should be conducted in open-loop fashion, the program goes to S30 in which the feedback correction coefficient KFB is set to 1.0, and to S26 in which the output quantity of fuel injection Tout is determined in the manner stated above. If S12 finds that the engine is cranking, the program goes to S32 in which the quantity of fuel injection at cranking Ticr is retrieved, and then to S34 in which Ticr is used to calculate the output quantity of fuel injection Tout based on an equation for engine cranking. If S14 finds that fuel cutoff is in effect, the output quantity of fuel injection Tout is set to 0 in S36. The embodiment is configured that, thus, the fuel metering feedback control can be initiated or resumed with a properly calculated adaptive correction coefficient KSTR when the engine operating condition has shifted to the feedback control region, thereby enabling no control hunting to occur, and no air/fuel ratio spike to occur. The control stability can accordingly be improved. In particular, even when the engine operating condition, once shifted to the open-loop control region, has again returned to the feedback control region and in addition, the engine operating condition has changed greatly between before and after the return, it becomes possible to determine the adaptive correction coefficient KSTR appropriately. By the feedback correction coefficient calculated based on the high control response adaptive controller, on the other hand, when the detected air/fuel ratio becomes stable, the control error between the desired air/fuel ratio and the detected exhaust air/fuel ratio can then be decreased to zero or converged at one time. In addition, since the basic quantity of fuel injection is multiplied by the feedback correction coefficient to determine the manipulated variable, the stability and convergence of the control can be balanced appropriately. Figure 8 is a view, similar to Figure 7, but showing the characteristics of mapped data in a second embodiment of the invention. Explaining the second embodiment while putting the emphasis on the difference from the first embodiment, in the second embodiment, among the 5 factors of the controller parameters  and(k), only the scalar quantity b 0 that determines the gain is prepared as mapped data, as illustrated in Figure 8. The scalar quantity b 0 is similarly established and stored in the memory in advance with respect to the engine operating condition and the desired air/fuel ratio. The other 4 factors are set to predetermined values such as their initial values. Arranging thus, it becomes possible to use a memory of lesser capacity, making the system configuration simpler. The reason why the scalar quantity b 0 is selected, is that b 0 is most significant among the factors in calculating the adaptive correction coefficient KSTR, as will be apparent from Eq. 12. Configured in the foregoing manner, the second embodiment, like the first, can achieve the same result as that of the first embodiment and in addition, makes it possible to use a memory having lesser capacity. Although only one factor is selected to be prepared as mapped data, it is alternatively possible to select 2 to 4 factors as desired. Although only the correction coefficient obtained by the high response adaptive controller is used as the feedback correction coefficient in the first and second embodiments, it is alternatively possible to prepare another correction coefficient calculated by a low response controller such as a PID controller and to switch them in the feedback control region. In that case, it is alternatively possible to conduct the feedback control using the correction coefficient obtained by the PID controller and after the expiration of a predetermined period, to switch to the adaptive correction coefficient KSTR that has been calculated in the manner mentioned before at the time of the initiation of the feedback control and held for the period. Although the adaptive correction coefficient KSTR and the controller parameters  and(k) among the internal variables of the adaptive controller are determined in response to the engine operating condition, it is alternatively possible to determine only the controller parameters  and(k) in response to the engine operating condition, and to set the adaptive correction coefficient KSTR to a predetermined value. This is because the adaptive correction coefficient KSTR becomes constant (1.0, for example) irrespective of the engine operating condition under a status in which fuel metering control is stable. Therefore, if the coefficient is set to a predetermined value such as 1.0, control performance is not affected. Although the air/fuel ratio is used as the desired value in the first and second embodiments, it is alternatively possible to use the quantity of fuel injection itself as the desired value. Although the feedback correction coefficient is determined as a multiplication coefficient in the first and second embodiments, it can instead be determined as an additive value. Although a throttle valve is operated by the stepping motor in the first and second embodiments, it can instead be mechanically linked with the accelerator pedal and be directly operated in response to the accelerator depression. Furthermore, although the aforesaid embodiments are described with respect to examples using STR, MRACS (model reference adaptive control systems) can be used instead. Although the invention has thus been shown and described with reference to specific embodiments, it should be noted that the invention is in no way limited to the details of the described arrangements but changes and modifications may be made without departing from the scope of the invention, which is defined by the appended claims.

Claims: A system for controlling fuel metering in a multi-cylinder internal combustion engine, comprising: an air/fuel ratio sensor located in an exhaust system of the engine for detecting an air/fuel ratio KACT in exhaust gas of the engine; engine operating condition detecting means for detecting engine operating conditions including at least engine speed and engine load; basic fuel injection quantity determining means coupled to said engine operating condition detecting means, for determining a basic quantity of fuel injection Tim for a cylinder of the engine based on at least the detected engine operating conditions; a feedback loop means coupled to said fuel injection quantity determining means, and having an adaptive controller and an adaptation mechanism coupled to said adaptive controller for estimating controller parameters  and, said adaptive controller calculating a feedback correction coefficient KSTR using internal variables that include at least said controller parameters  and, to correct the basic quantity of fuel injection Tim to bring a controlled variable obtained based at least on the detected air/fuel ratio KACT to a desired value; feedback control region discriminating means for discriminating whether engine operation is in a feedback control region based on the detected engine operating conditions; output fuel injection quantity determining means for determining an output quantity of fuel injection Tout, said output fuel injection quantity determining means correcting the basic quantity of fuel injection Tim using said feedback correction coefficient KSTR when the engine operation is discriminated to be in the feedback control region; and fuel injection means coupled to said output fuel injection quantity determining means, for injecting fuel into the cylinder of the engine based on the output quantity of fuel injection Tout; wherein: said feedback loop means determines the internal variables of the adaptive controller in response to the detected engine operating conditions, when the engine operation has shifted from an open-loop control region to the feedback control region. A system according to claim 1, wherein the internal variables include past values of the controller parameters  and. A system according to claim 1 or 2, wherein the internal variables include a past value of the feedback correction coefficient KSTR. A system according to any of preceding claims 1 to 3, wherein the internal variables include a past value of an input zeta, which is input to the adaptation mechanism. A system according to any of preceding claims 1 to 4, wherein the internal variables include a past value of a gain matrix Γ that determines an estimation speed of the controller parameters  and. A system according to any of preceding claims 1 to 5, wherein the desired value is a desired air/fuel ratio KCMD, and said feedback loop determines the internal variables of the adaptive controller in response to the detected engine operating conditions and the desired air/fuel ratio. A system according to any of preceding claims 1 to 6, wherein the feedback correction coefficient KSTR is multiplied by the basic quantity of fuel injection Tim. A system according to any of preceding claims 1 to 7, wherein the internal variables are expressed in a recursion formula.

Inventors: AKAZAKI SHUSUKE, MAKI HIDETAKI, NISHIMURA YOICHI, AKAZAKI, SHUSUKE, MAKI, HIDETAKI, NISHIMURA, YOICHI, AKAZAKI, SHUSUKE, C/O K.K HONDA GIJYUTSU KENKYUSHO, Maki, Hidetaki, c/o K.K. Honda Gijyutsu Kenkyusho, Nishimura, Yoichi, c/o KK Honda Gijyutsu Kenkyusho
Applicants: HONDA MOTOR CO LTD, HONDA GIKEN KOGYO KABUSHIKI KAISHA
Application year: 1996
Main classification: F02D41
IPC codes: F02D41