Abstract:
A fuel controlling system for an internal combustion engine, e.g. a vehicular engine, provided for ensuring an appropriate air fuel ratio and a stable rotational output independently of variations in the quantity of air introduced into the engine.

Description:
BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention relates to a fuel controlling system for an internal combustion engine in which the quantity of intake air in the internal combustion engine is detected by an air flow sensor and the quantity of fuel to be fed to the internal combustion engine is controlled on the basis of the detected output. 
     2. Description of the Prior Art 
     According to a conventional method of controlling the quantity of fuel to be fed to an internal combustion engine, an air flow sensor (hereinafter referred to simply as an &#34;AFS&#34;) is disposed upstream of a throttle valve and the quantity of intake air per intake is determined on the basis of information obtained by the AFS and the engine speed to control the quantity of fuel to be fed. 
     In the case where an AFS is disposed upstream of the throttle valve in the air intake passage to detect the quantity of intake air for an internal combustion engine, when the throttle valve opens suddenly, the quantity of air charged into the intake passage between the throttle valve and the engine is also measured, so the total quantity of air measured will be larger than that actually introduced into the internal combustion engine, resulting in that the fuel quantity control based on such measured quantity would cause an overrich condition. According to a conventional proposal for avoiding this inconvenience, if the output of the AFS, i.e., a detected intake air quantity at a predetermined crank angle, is an AN.sub.(t), the quantity of air introduced into the internal combustion engine at n-1 th  time and that at n th  time both of the predetermined angle are AN.sub.(n-1) and AN.sub.(n), respectively, and the filter constant is K, AN.sub.(n) is calculated according to the following equation and fuel control is made using the calculated AN.sub.(n) : 
     
         AN.sub.(n) =K.sub.1 ×AN.sub.(n-1) +K.sub.2 ×AN.sub.(t) 
    
     This is for smoothing the intake air quantity at every predetermined crank angle to effect an appropriate fuel control. 
     According to the above conventional fuel control system, however, a relatively large amount of time is required for the calculation of the air quantity, so in the event of variation in the number of revolutions caused by disturbance such as a change of the road surface, for example in a very low speed condition of a vehicle, the air fuel ratio cannot follow such variation and changes in a direction to enlarge the change in the number of revolutions and thus the revolution generating condition cannot be controlled. For more detailed explanation, reference is here made to FIGS. 1 and 2. In the characteristic diagram of FIG. 1, (a) represents the number of revolutions, Ne, (b) represents the pressure of an intake pipe, (c) represents the width of a driving pulse for an injector, and (d) represents the air fuel ratio. Usually, when the number of revolutions, Ne, changes, the pressure of the intake pipe changes somewhat later than that under the influence of the intake pipe volume. The quantity of air introduced into the internal combustion engine also lags behind the number of revolutions, Ne, in proportion to the intake pipe pressure. When correction is made according to the foregoing equation, the air quantity lags behind the intake pipe pressure and a pulse width signal for the injector also lags as shown in (e). At this time, when the number of revolutions, Ne, is high, the air fuel ratio changes to the rich side, while when the number of revolutions, Ne, is low, the air fuel ratio changes to the lean side, as shown in (g). Consequently, the characteristics of the internal combustion engine shown in FIG. 2 allow the variation in the number of revolutions to be promoted, resulting in that the driving condition becomes very unstable. 
     SUMMARY OF THE INVENTION 
     The present invention has been accomplished for solving the above-mentioned problems and it is the object thereof to provide a fuel control system for an internal combustion engine capable of controlling the air fuel ratio appropriately even during transition of variation in the quantity of intake air. 
     According to the present invention, in order to achieve the above object, there is provided a fuel controlling system for an internal combustion engine, which has an AN detecting means for detecting a detected output of an intake air quantity in a section of a predetermined crank angle, an AN calculating means for correcting the output of the AN detecting means, a revolution detecting means for detecting the number of revolutions of the internal combustion engine, and vehicle speed detecting means, and in which when the output of the revolution detecting means is below a predetermined value and that of the vehicle speed detecting means is within a predetermined range, this condition is defined as a very low speed mode and the constant in the correction processing is changed according to whether the vehicle is in the very low speed mode or not to thereby control the quantity of fuel to be fed to the engine. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIGS. 1(a) to (d) are operation waveform diagrams of a fuel controlling system for an internal combustion engine, FIGS. 1(c) and (d) showing pulse width and air fuel ratio, respectively, in a conventional system in terms of solid line waveforms (e) and (g) and show pulse width and air fuel ratio in the present invention in terms of dotted line waveforms (f) and (h), for convenience&#39; sake; 
     FIG. 2 is a characteristic diagram of an internal combustion engine using a conventional fuel controlling system; 
     FIG. 3 is a schematic block diagram showing a model of an intake system in an internal combustion engine provided with a fuel controlling system according to the present invention; 
     FIG. 4 is a characteristic diagram showing a relation of the intake air quantity to the crank angle in the intake system model of FIG. 3; 
     FIG. 5 is a waveform diagram showing changes in the quantity of intake air during passing through various portions of the internal combustion engine; 
     FIG. 6 is a block diagram showing a basic concept of the fuel controlling system for an internal combustion engine according to the present invention; 
     FIG. 7 is a block diagram showing an embodiment as a concrete example of the fuel controlling system of the invention; 
     FIG. 8 is a flowchart showing operations thereof; 
     FIG. 9 is a correlation diagram showing a relation of a basic drive time transformation coefficient to the output frequency of an air flow sensor (AFS) in the embodiment of FIG. 7; 
     FIGS. 10 to 12 a and 12b are flowcharts explaining operations of the fuel controlling system in the embodiment of FIG. 7; and 
     FIG. 13 is a timing chart showing timing of each flow in the flowcharts of FIGS. 10 and 12. 
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT 
     An embodiment of the present invention will be described hereinunder with reference to the accompanying drawings. 
     Referring to FIG. 3, there is illustrated a model of an intake system in an internal combustion engine, in which the numeral 1 denotes an internal combustion engine having a volume of V c  per stroke. Air is introduced into the engine 1 through an AFS 13 which is a Karman&#39;s vortex flow meter, a throttle valve 12, a surge tank 11 and an intake pipe 15, and fuel is fed to the engine 1 by means of an injector 14. The volume from the throttle valve 12 up to the internal combustion engine 1 is here assumed to be V s . Numeral 16 denotes an exhaust pipe. 
     Referring now to FIG. 4, there is illustrated a relation of the intake air quantity to a predetermined crank angle in the internal combustion engine 1, in which (a) shows a predetermined crank angle (hereinafter referred to &#34;SGT&#34;) in the engine 1, (b) shows the quantity of air, Q a , passing through the AFS 13, (c) shows the quantity of air, Q e , introduced into the engine 1, and (d) shows an output pulse, f, of the AFS 13. Further, the rising period of n-2 th  to n-1 th  time of the SGT is assumed to be T n-1 , the rising period of n-1 th  to n th  time is t n , the quantities of the intake air passing through the AFS 13 at periods t n-1  and t n  are assumed to be Q a (n-1) and Q a (n), respectively, and the quantities of air introduced into the engine 1 at periods t -1  and t n  are Q e (n-1) and Q e (n), respectively. Moreover, an average pressure in the surge tank 11 at the period t n-1  and that at the period t n  as well as average intake air temperatures at those periods are assumed to be P s (n-1), P s (n), T s (n-1) and T s (n), respectively. For example, Q a (n-1) corresponds to the number of output pulses of the AFS 13 at the period t n-1  . Since the rate of change in the intake temperature is small, if T s (n-1) ≈T s (n) and the filling efficiency of the engine 1 is constant, 
     
         P.sub.s(n-1) ·V.sub.c =Q.sub.e(n-1) ·R·T.sub.s(n)                           (1) 
    
     
         P.sub.s(n) ·V.sub.c =Q.sub.e(n) ·R·T.sub.s(n) (2) 
    
     wherein R is a constant. And if the quantity of air which stays in the surge tank 11 and intake pipe 15 at the period t n  is ΔQ a (n), ##EQU1## Then, from equations (1)-(3), ##EQU2## Therefore, the quantity of air Q e (n) introduced into the engine at period t n  can be calculated from equation (4) on the basis of the quantity of air Q a (n) passing through the AFS 13. For example, if V c  =0.5 l and V s  =2.5 l, 
     
         Q.sub.e(n) =0.83×Q.sub.e(n-1) +0.17×Q.sub.a(n) (5) 
    
     Referring now to FIG. 5, there is illustrated a condition with the throttle valve 12 opened, in which (a) shows the degree of opening of the throttle valve 12, (b) shows the quantity of intake air, Q a , passing through the AFS 13, overshooting when the throttle valve 12 is open, (c) shows the quantity of air, Q e , introduced into the internal combustion engine 1 after correction according to equation (4), and (d) shows the pressure, P, of the surge tank 11. 
     Referring to FIG. 6, there is illustrated a construction of the fuel controlling system for the internal combustion engine according to the present invention, in which the numeral 10 denotes an air cleaner disposed upstream of the AFS 13. The AFS 13 outputs such a pulse as shown in FIG. 4(d) according to the quantity of air introduced into the engine 1, while a crank angle sensor 17 outputs such a pulse as shown in FIG. 4(a) according to the rotation of the engine 1 (for example, the period from a pulse rising edge to the next rising edge is assumed to be 180° in terms of crank angle). Numeral 20 denotes an intake air quantity (simply &#34;AN&#34; hereinafter) detecting means for detecting the quantity of intake air in the period of a predetermined crank angle. The AN detecting means 20 calculates the number of output pulses of the AFS 13 on the basis of both the output of the AFS 13 and that of the crank angle sensor 17. Numeral 21 denotes an AN calculating means, which performs calculation similar to that of equation (5) in accordance with the output of AN detecting means 20 to determine the number of pulses corresponding to the output of the AFS 13, that is, corresponding to the quantity of air which will be introduced into the engine 1. Control means 22 controls the operating time of the injector 14 in accordance with the quantity of intake air to the engine 1 and on the basis of the output of a water temperature sensor 18 (e.g. thermistor) which detects the temperature of the cooling water for the engine 1, the output of an idle switch 23 which detects an idling condition and the output of a vehicle speed sensor 19 which detects the vehicle speed, thereby controlling the quantity of fuel to be fed to the engine 1. 
     FIG. 7 illustrates a more concrete construction according to an embodiment of the present invention. Numeral 30 denotes a control system which receives output signals from AFS 13, water temperature sensor 18, vehicle speed sensor 19 and crank angle sensor 17 to control the injector 14 which is provided for each cylinder of the engine 1. The control system 30 corresponds to the AN calculating means 21 and control means 22 in FIG. 6 and it is constituted by a central processing unit (simply &#34;CPU&#34; hereinafter) 40 such as, for example, a microcomputer having ROM 41 and RAM 42. Numeral 31 denotes a 1/2 divider which is connected to the output of the AFS 13, and numeral 32 denotes an exclusive OR gate (simply &#34;EXOR&#34; hereinafter), one input terminal of which is connected to the output of the 1/2 divider 31 and the other connected to an input terminal Pl of the CPU 40. The output terminal of the EXOR 32 is connected to both a counter 33 and an input terminal P3 of the CPU 40. The AN detecting means 20 is constituted by these components. Numeral 34a denotes an interface connected between the water temperature sensor 18 and an A/D converter 35; numeral 34b denotes an interface connected between the idle switch 23 and the CPU 40; and numeral 36 denotes a waveform shaping circuit which receives the output of the crank angle sensor 17 and the output of which is fed to both an interrupt input terminal P4 of the CPU 40 and a counter 37. Further, numeral 38 denotes a timer connected to an interrupt input terminal P5; numeral 39 denotes an A/D converter for converting the voltage of a battery (not shown) from analog to digital and providing the converted output to the CPU 40; and numeral 43 denotes a timer provided between the CPU 40 and a driver 44. The output of the driver 44 is connected to the injector 14 of each cylinder. 
     The operation of the fuel controlling system of the above construction will now be explained. The output of the AFS 13 is divided by the 1/2 divider 31 and then fed to the counter 33 through the EXOR 32 which is controlled by the CPU 40. The counter 33 measures the period between trailing edges of the output of the EXOR 32. The CPU 40 receives the trailing edge of the output of the EXOR 32 at its interrupt input terminal P3 and performs interrupt processing at every output pulse period of the AFS 13 or at every 1/2 period thereof to measure the period of the counter 33. The output of the water temperature sensor 18 is converted to voltage by the interface 34a, which voltage is then converted to a digital value at every predetermined time by means of the A/D converter 35. The digital value is received by the CPU 40. The output of the crank angle sensor 17 is fed through the waveform shaping circuit 36 to both the interrupt input terminal P4 of the CPU 40 and the counter 37. The output of the idle switch 23 is fed to the CPU 40 through the interface 34b. The CPU 40 performs interrupt processing at every rising of the output of the crank angle sensor 17 and detects the period between rising edges of the output of the crank angle sensor 17 from the output of the counter 37. The timer 38 provides an interrupt signal to the interrupt input terminal P5 of the CPU 40 at every predetermined time. The A/D converter 39 converts the voltage of a battery (not shown) from analog to digital and the CPU 40 receives the data of this battery voltage at every predetermined time. The timer 43 is preset for the CPU 40 and is triggered by the output port P2 of the CPU to produce a pulse of a predetermined width, which pulse output serves to drive the injectors 14 through the driver 44. 
     Now, the operation of the CPU 40 will be explained with reference to the flowcharts of FIGS. 8 and 10 to 12 as well as the characteristic diagram of FIG. 9. A main program of the CPU 40 is shown in FIG. 8, in which upon input of a reset signal to the CPU 40, the RAM 42 and input/output ports are initialized in step 100, then in step 101 the output of the water temperature sensor 18 is converted from analog to digital and the digital data thus obtained is stored as water temperature data WT in the RAM 42. Next, in step 102 the battery voltage is converted from analog to digital and the digital value thus obtained is stored as a battery voltage value VB in the RAM 42. In step 103, 30/T R  is calculated from the period T R  of the crank angle sensor 17 to determine the number of engine rotations N e . In step 104, there is made calculation of &#34;AN·N e  /30&#34; on the basis of later-described load data AN and the number of engine rotations N e  to determine the output frequency F a  of the AFS 13. In step 105, a basic drive time transformation coefficient K p  is calculated from the output frequency F a  and f 1  which is set for F a  as shown in FIG. 9. In step 106, the transformation coefficient K p  is corrected by the water temperature WT and the corrected value is stored as a drive time transformation coefficient K I  in the RAM 42. In step 107, there is made mapping of a data table f 3  which is prestored in ROM 41, using the battery voltage data V B , to calculate a dead time T D , which is stored in RAM 42. After the processing of step 107, the processing of step 101 is repeated. 
     Referring now to FIG. 10, there is shown an interrupt processing for the interrupt input terminal P3, that is, for the output signal from the AFS 13. In step 201, an output T F  of the counter 33 is detected to clear the counter, the T F  representing the period between rising edges of the output of the gate 32. In step 202, judgment is made as to whether the dividing flag in the RAM 42 is set or not. If the answer is affirmative, then in step 203 the output T F  is divided in two to obtain an output pulse period T A  of the AFS 13, which is stored in the RAM 42. Then in step 204, a value obtained by multiplying the remaining pulse data P D  by 2 is added to integrated pulse data P R  and the result is used as a new integrated pulse data P R . This integrated pulse data P R  is of the number of pulses provided from the AFS 13 between rising edges of the crank angle sensor 17 and, for the convenience in handling, each pulse from the AFS 13 is multiplied by 156. On the other hand, if the dividing flag is reset in step 202, then in step 205 the period T F  is stored as output pulse period T A  in the RAM 42 and in step 206 the remaining pulse data P D  is added to the integrated pulse data P R . In step 207, 156 is set to the remaining pulse data P D . In step 208, if T F  &gt;2 msec when the dividing flag is reset, or T F  &gt;4 msec when the dividing flag is set, execution passes to step 210, while in other cases execution passes to step 209. In step 209, the dividing flag is set, while in step 210, the dividing flag is cleared, then in step 211, the input Pl is inverted. Thus, in the processing of step 209, signal is fed to the interrupt input terminal P3 at a timing obtained y dividing in two the output pulse of the AFS 13, while in the case where the processing of step 210 is performed, signal is fed to the interrupt input terminal P3 at every output pulse of the AFS 13. After the processings of steps 209 and 211, the interrupt processing is completed. 
     Referring now to FIG. 11, there is illustrated a very low speed mode judging processing. In step 301 there is made judgment as to whether the engine speed N e  is below a predetermined value (1,500 rpm) or not; in step 302 there is made judgment as to whether the vehicle speed V s  is below a predetermined value (15 km/h) and above a predetermined value (1.25 km/h), or not; in step 303 there is made judgment as to whether AN is below a predetermined value (3.79 pps) or not; and in step 304 there is obtained a ratio, r, of the vehicle speed V s  to the engine speed N e  (r=V s  /N e ) and judgment is made as to whether the ratio, r, is below a predetermined value, r 0 , (0.012) or not. For example, the following judgments can be made on the basis of the ratio, r: 
     If r 1  &lt;r≦r 2 , 1st gear. 
     If r 2  &lt;r≦r 3 , 2nd gear. 
     If r 3  &lt;r≦r 4 , 3rd gear. 
     Where, r 1 , r 2 , r 3  and r 4  are constants determined by the transmission structure of the engine and effective tire diameter. In step 305 there is made judgment as to whether five seconds have elapsed or not after satisfying all the conditions of steps 301, 302, 303 and 304. When all the conditions of steps 301 to 305 are satisfied, it is judged that the running mode is the very low speed mode, and a flag X is made equal to 1, while if even one of the conditions of steps 301 to 305 is not satisfied, it is judged that the running mode is the very low speed mode, and the flag X is made equal to 0 in step 306b, to complete the processing. 
     FIG. 12 shows an interrupt processing which is performed when an interrupt signal is developed at the interrupt input terminal P4 of CPU 40 upon outputting of the crank angle sensor 17. In step 401, the period between rising edges of the output of the crank angle sensor 17 is read from the counter 37 and stored as the period T R  in the RAM 42, then the counter 37 is cleared. If in step 402 there is an output pulse of the AFS 13 within the period T R , then in step 403 there is calculated a time difference Δt=t 02  -t 01  between the time t 01  of the output pulse of the AFS 13 developed just therebefore and the interrupt time t 02  of this time of the crank angle sensor 17, and the result is designated a period T S . On the other hand, when there is no output pulse of the AFS 13 within the period T R , the period T R  is used as the period T S . In step 405a, judgment is made as to whether the dividing flag is set or not. If it is reset, then in step 405b the time difference Δt is converted to the output pulse data ΔP by the calculation of 156×T S  /T A , while if it is set, then in step 405c the same conversion is made by the calculation of 156×T S  /2·T A . Thus, the pulse data ΔP is calculated on the assumption that the output pulse period of AFS 13 of last time and that of this time are the same. In step 406, whether the pulse data ΔP is larger than 156 or not is judged and if the answer is affirmative, ΔP is clipped to 156 in step 407, while if the answer is negative, execution passes to step 408. In step 408, the pulse data ΔP is subtracted from the residual pulse data P D  and the result obtained is used as new residual pulse data ΔP. In step 409, if the residual pulse data P D  is positive, execution passes to step 413a, while if not so, since the calculated value of the pulse data ΔP is too large, the pulse data ΔP is made equal to the data P D  in step 410 and the residual pulse data P D  is made zero in step 412. In step 413a, judgment is made as to whether Dividing Flag is set or not. If the flag is reset, the pulse data ΔP is added to the integrated pulse data P R  in step 413b, while if the flag is set, 2·ΔP is added to P R  in step 413c and the result is used as new integrated pulse data P R . This data P R  corresponds to the number of pulses which are presumed to have been output by the AFS 13 during the period between rising edges of the output of the crank angle sensor 17 of this time. In steps 414a to 414c, there is made calculation corresponding to equation (5). More particularly, if it is judged in step 414a that the running condition is a very low speed condition, there is made calculation of AN 2  =K 2  AN 1  +(1-K 2 )·P R , using this-time load data AN 2  and last-time load data AN 1  calculated up to the previous rising edge of the output of the crank angle sensor 17, as quantities of intake air at the predetermined crank angle, as well as the integrated pulse data P R  On the other hand, if it is judged in step 414a that the running condition is other than the very low speed condition, there is made calculation of AN 2  =K 1  AN 1  +(1-K 1 )·P R  (K 1  &gt;K 2 ) in step 414b and the result is used as new such load data AN of this time. In step 415, if the load data AN is larger than a predetermined value α, it is clipped to α in step 416 to prevent the load data AN from becoming too large as compared with actual value even in the maximum operating condition of the engine. Then, in step 417, the integrated pulse data P R  is cleared. In step 418, there is made calculation of a drive time data T 1  =AN·K 1  +T D  using the load data AN, drive time transformation coefficient K 1  and dead time T D . In step 419, the drive time data T 1  is set to the timer 43, and in step 420, the timer 43 is triggered, whereby the four injectors 14 are driven at a time according to the data T 1  to complete the interrupt processing. 
     FIG. 13 show timings at the time of clear of the dividing flag in the processings of FIGS. 8, 10 and 11. In FIG. 13, (a) shows the output of the divider 31; (b) shows the output of the crank angle sensor 17; (c) shows the residual pulse data P D , each pulse is set to 156 at every rising and trailing edge of the output of the divider 31 (rising edge of the output pulse of the AFS (3) and is changed into, for example, the result of calculation P D  =P D  -156×T S  /T A  at every rising edge of the output of the crank angle sensor 17 (this corresponds to the processings of steps 405 to 412); and (d) shows changes of the integrated pulse data P R , showing in what manner the residual pulse data P D  are integrated at every rising or trailing edge of the output of the divider 31. 
     Thus, in the above embodiment, the value of the filter constant K as a correction coefficient in the correction equation for the intake air quantity in the internal combustion engine is set at K 1  when the running condition is not a very low speed condition and it is changed to a smaller value K 2  when the running condition is a very low speed condition, whereby the delay of intake can be made small and the phase can be set on the leading side. Consequently, the pulse width signal is also on the leading side as in (f) shown in FIG. 1(c) which has been explained in connection with the prior art and the air fuel ratio can be set to the lean side when N e  is high and to the rich side when N e  is low, as indicated at (h) of FIG. 1(d). Thus, it is possible to attain a stable engine speed without promotion of the change in the number of revolutions or the engine speed. 
     Although in the above embodiment, the number of output pulses of the AFS 13 between rising edges of the output of the crank angle sensor 17 was counted, it may be between trailing edges of the above-mentioned output, or there may be counted the number of output pulses of the AFS 13 over several periods of the crank angle sensor 17. Moreover, although the number of output pulses of the AFS 13 was counted in the above embodiment, the number of output pulses may be multiplied by a coefficient which corresponds to the output frequency of the AFS 13. Further, for crank angle detection, there may be used an ignition signal of the engine 1 in place of the crank angle sensor 17. Also in this case there will be attained the same effect. 
     Moreover, although in the above embodiment the crank angle AN as load data was used in judging the load condition during detection of a very low speed running condition, the judgment may be made on the basis of ON-OFF of the idle switch 23 or the degree of opening of the throttle valve. Further, although in the above embodiment the coefficient K was made constant during detection of a very low speed running condition, the coefficient K may be further corrected using engine rotating speed, load and gear ratio. 
     According to the present invention, as set forth hereinabove, the quantity of intake air in the internal combustion engine is corrected on the basis of a correction equation and the coefficient in the correction equation is changed in a very low speed running condition. Consequently, the air fuel ratio is controlled to an appropriate value even in a transition stage of the change of the intake air quantity, thus permitting stable driving with less change in revolution even in a very low speed condition.