Abstract:
The calculation of an adjustment value, which is determined by the concentration of oxygen in the exhaust gas, the opening of a throttle valve provided in an intake air passage to the engine, the engine temperature, etc., is started every time a predetermined number of repeatedly produced start signals, the repetition rate of which corresponds to the rotational speed of the crankshaft, occur. A basic value for fuel supply, T p  =k Q/N, is calculated from the engine operating parameters; the amount of flow of intake air into the engine, Q the rotational speed of the crankshaft, N, and a constant k, and adjusted according to the adjustment value to obtain a control output signal, in the vicinity of the next start signal after said predetermined number.

Description:
BACKGROUND OF THE INVENTION 
     The present invention relates to a method of controlling fuel supply to an internal combustion engine, and more particularly relates to a method of controlling fuel supply to an internal combustion engine comprising the steps of calculating a basic value for fuel supply to the engine from fundamental operational parameters of the engine, calculating an adjustment value for this basic value, and adjusting the basic value according to the adjustment value to obtain a final control output value. 
     In FIG. 1 of the accompanying drawings is shown a timing chart for calculation of a final control output value which, in this case, is a value representing the amount of fuel injection for an internal combustion engine. The amount of fuel injection is determined by calculating a basic value for fuel supply, T p  =k Q/N, from fundamental operational parameters of the engine; the amount of flow of intake air, Q, into the engine, a constant k and the rotational speed of the crankshaft, N, and adjusting the basic value according to an adjustment value which depends on the output of an oxygen sensor, not shown, which senses the concentration of oxygen in the exhaust gas; the opening of a throttle valve, not shown, provided in an intake air passage to the engine; and the temperature of the engine. Thus, fuel is supplied to the engine according to the final control output value once for each rotation of the crankshaft. In FIG. 1, it is assumed that the engine is a 6-cylinder type engine. A crank angle signal 10 is shown as consisting of pulses of R 1 , R 2 , R 3 , R 4  . . . , which are sequentially produced at crankshaft rotational intervals of 120°. The adjustment value is calculated once for each rotation of the crankshaft, at time periods A 1  and A 2 . A calculation start signal 12 is shown as being a clock pulse signal containing clock pulses T 1  . . . T 11 , but could alternatively be a signal synchronized with the crank angle signal. Calculation of the basic output data, shown by 13, is started, for each of the time period shown as B 1 , B 2 , . . . B 11 , when each of the pulses T 1 , T 2  . . . of the calculation start signal 12 is received. A fuel injection valve drive signal 14 is shown as consisting of pulses C 1 , C 2 , one being produced for each rotation of the crankshaft. The latest completed basic output data obtained at time periods B 1  and B 9  are used for control of fuel supply, after correction by the latest adjustment value. Thus the latest adjustment value obtained at A 1  is used for correcting the output value at B 9 . 
     As shown in FIG. 1, to simplify the structure of the control device used, the timing of R 1  and the start of A 1  and C 1  are selected to be the same, and the timing of R 4  and the start of A 2  and C 2  are selected to be the same. 
     The problem with the above described method according to the timing chart shown in FIG. 1 is that the adjustment value obtained at A 1  is calculated one full crankshaft rotation before C 2 , and this value is used for adjusting the basic output value which defines fuel injection time C 2 , in the time period B 9  starting from pulse T 9 . Thus the adjustment value is rather old, compared with the basic value which it is used to correct. During operation of the engine at substantially constant load and at substantially constant speed, no large effect due to this will occur on the operation of the engine, whereas, however, during a time when the operating conditions are fluctuating, it is difficult to maintain the air/fuel ratio at a proper constant value when the amount of fuel supplied to the engine is controlled on a feedback basis, for example, using information on the components of the exhaust gas. 
     SUMMARY OF THE INVENTION 
     Therefore, it is an object of the invention to provide a method of controlling fuel supply to an internal combustion engine, which avoids the above explained problems. 
     According to the present invention, there is provided a method of controlling fuel supply to an internal combustion engine having a crankshaft, comprising the steps of; starting to calculate an adjustment value every time a predetermined number of repeatedly produced start signals, the repetition rate of which corresponds to the rotational speed of the crankshaft, occur; calculating a basic value for fuel supply from engine operating parameters, and adjusting the basic value according to the adjustment value to obtain a control output signal in the vicinity of the next start signal after said predetermined number of start signals. 
     Thus, according to the present invention, the basic value is adjusted according to a more recent adjustment value, thereby improving control. When the operating conditions, such as the load, change rapidly, proper control is possible of the flow of fuel in a feedback mode, using the sensed ratio of exhaust gas components, for example. This brings about a stable mixture ratio of air and fuel. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     Other features and advantages will be apparent from the following description, taken in conjunction with the accompanying drawings which are given by way of illustration only and which is not intended to be limitative. In the drawings: 
     FIG. 1 is a timing chart of a method of controlling fuel supply to an internal combustion engine; 
     FIG. 2 is a similar timing chart of a method according to a first embodiment of the present invention; 
     FIG. 3 shows in detail the step of preparing a final output control value in the method of FIG. 2; 
     FIG. 4 is a flowchart of a program which executes the method of FIG. 2; 
     FIG. 5 is a flowchart of a program which calculates adjustment value in the method of FIG. 2; 
     FIG. 6 is a timing chart of a second embodiment of the method of the present invention; 
     FIG. 7 shows in detail the step of preparing a final output control value in the method of FIG. 6; and 
     FIG. 8 is a flowchart of a program which executes the method of FIG. 6. 
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     In FIG. 2 is shown a timing chart for carrying out, by a computer program, a first preferred embodiment of the method according to the present invention. In order to contrast the method according to the present invention and the method illustrated in FIG. 1, the same reference numeral denotes corresponding signals or signal components, and calculation of an amount of flow of fuel supplied to a 6-cylinder internal combustion engine is shown as an example only. Since the engine is a 6-cylinder engine, the crank angle signal 10 consists of a train of pulses R 1  to R 5 , etc., produced sequentially at crankshaft rotational intervals of 120°. The calculation start signal 12 is a clock pulse signal consisting of pulses T 1  to T 12  which are produced independently of the crank angle signal. 
     In order to produce the fuel injection valve drive signal 14, shown as consisting of pulses C 1 , C 2 ,  etc., for every three pulses of the crank angle signal 10, a ternary counter, not shown, is used to process the pulses of the crank angle signal 10. The contents of the count in the counter can be classified as being 3n, 3n+1, or 3n+2, where n=0, 1, 2, . . . N. According to the program, the adjustment value is calculated at every count value 3n. Calculation of the final output value is effected before every (3n+1), and the injection valve is driven at every count value (3n+1). A state signal consisting of two bits can be used, changing as &#34;00&#34;, &#34;01&#34;, &#34;11&#34;, &#34;00&#34;. . . , to calculate the adjustment value at &#34;00&#34; and to produce the injection value drive signal 14 at the state of &#34;01&#34;. 
     As shown in FIG. 2, the calculation of the adjustment value is started at R 1  and carried out for a time period of A 1 . The adjustment value thus obtained is used for adjustment of basic output value calculated in each time period B 3  to B 10 . Thus, since the final control output value used for the fuel injection for the time period represented by C 1  is the latest value calculated at B 4 , the latest adjustment value obtained at A 1  is used. In the same way, the final control output value used for the fuel injection for the time period shown by C 2  is adjusted at B 11  according to the adjustment value obtained at A 2 . 
     Referring to FIG. 3, the details of calculation of the output value in each time period B are shown. The program makes the time point 20 of completing A/D conversion of the amount of flow of intake air coincident with the pulse of the calculation start signal 12 (clock pulse signal). When the calculation of the amount of flow of intake air, shown by 21, is completed, a basic value for fuel injection is calculated at 22, using data such as the rotational speed of the crankshaft, the amount of flow of intake air, etc., (the rotational speed of the crankshaft is beforehand calculated separately). Simultaneously with the completion of the calculation of the basic value, shown at 22, the adjustment value is taken in at time point 23, and, when the calculation of the final control output value at 24, (correcting the basic value using the adjustment value) is completed, the final output control value is sent to an output interface, not shown, at time point 25 for output. As shown in FIG. 3, since the basic value for fuel injection is calculated at 22 immediately after the amount of flow of intake air is determined, this basic value calculation is effected using the latest available information. 
     When both calculations, shown by A and B, overlap, it is arranged such that one of them is of first priority, or alternatively the one which has been earlier carried out is of first priority. In FIG. 2, A 1 , B 2 , etc., are shown as overlapping, for the purpose of clarifying the description. 
     The output interface to which the final output control value, the, calculation of which is shown in FIG. 3, is fed is updated by the latest value thereof, and supplies an output when each of the pulses R 2  and R 5  is input thereto. 
     In FIG. 4 the steps of calculation shown in FIG. 3 are shown as a flowchart. When the A/D conversion of the amount of flow of intake air is completed, an interrupt request is effected at 26, so that the series of calculations of the amount of intake air, shown by 27, the basic value, shown by 28, and correction of the basic value using the adjustment value, shown by 29, are carried out. 
     In FIG. 5 is shown a flowchart for starting a program to calculate the adjustment value. In the particular example shown in FIG. 2, the crank angle signal 10 includes pulses R 1  to R 5  sequentially produced at intervals of 120°. Interrupt requests R 1  to R 5  occurring sequentially at intervals of 120°, shown at 31, start a ternary counter, not shown, at a step 32 of the program. If the counted number of pulses of the crank angle signal is 3n, where n=0, 1, 2 . . . n, calculation of the adjustment value starts at 33. If the counted number of pulses at the crank angle signal is 3n+1, the contents of the ternary counter is 1, so that the fuel injection valve drive signal 14 occurs, as C 1  and C 2  defining fuel injection time periods, respectively. The adjustment value, obtained at 33 in FIG. 5, is used in the output calculation at 29 in FIG. 4. 
     In FIG. 6 there is shown a timing chart of a second embodiment of the method of the present invention, also carried out by a computer, in which the calculation start signal 12 is given by pulses R 1  to R 5  of the crank angle signal 40, occurring at intervals of 120°, without using any clock pulse signal such as shown in FIGS. 1 and 2. The calculation of the adjustment value, shown by 41, is shown as being carried out at the time periods A 1  and A 2 . The calculation of the output value is shown as being carried out at the time periods B 1  and B 2 . The fuel injection valve drive signal 43 is shown as containing pulses C 1  and C 2  defining fuel injection time periods, respectively. As shown in the figure, the adjustment value is calculated for the time periods A 1  and A 2  which start with the signal pulses R 1  and R 4  produced sequentially at crank rotational intervals of 360°. The output value is calculated for the time periods of B 1  and B 2  starting with R 2  and R 5 , respectively. Immediately after this calculation, the fuel injection valve is driven at C 1  and C 2 . 
     In FIG. 7 are shown the details of calculating the output data during time periods B 1 , B 2  shown in FIG. 6. The A/D conversion of the amount of flow of intake air is started at 45, which is simultaneous with the pulses R 2  and R 5  of the crank angle signal. Immediately after this conversion at 45, an amount of flow of intake air is calculated at 46, and a basic value for fuel injection is calculated at 47 from data such as the rotational speed of the crankshaft, the amount of flow of intake air, etc. The adjustment value calculated at A 1  , or A 2  is taken in at time point 48, and then the basic value is adjusted at 49 according to the adjustment value to obtain a final output value. Immediately after this adjustment, each of the pulses C 1 , C 2  of the fuel injection drive signal 43 starts fuel injection at 50. In this particular embodiment, the number of repetitions of calculating the basic value is relatively small, and it is therefore possible for the computer to perform other control functions between the pulses R 3  and R 4 . 
     FIG. 8 shows a flowchart of a program which corresponds to the timing chart of FIG. 6. Each time the pulses R 1  to R 4  of the crank angle signal are produced sequentially at an interval of 120°, an interrupt request to the computer is effected at 51. This interrupt request signal is sent to a ternary counter, not shown, which classifies the number of interrupt requests produced, at 52, with respect to 3. When the number is 3n, the adjustment value is calculated, at A, i.e. at a step 53. When the number is 3n+1, the calculation of the output value at B is effected at 54. When the number is 3n+2, calculations other than the calculation for fuel injection can be performed at 55. The final output control value is fed at 56 to a memory, not shown. The final control value fed from block 54 to the memory is immediately used for fuel injections at C 1  or C 2 . 
     While the present invention has been particularly shown and described with reference to preferred embodiments thereof, it will be understood by those skilled in the art that the foregoing and other changes in form and details may be made therein without departing from the spirit and scope of the present invention.