Title:

United States Patent 3846625

Abstract:

A computing device for interpolation of values which is suitable for controlling operation of a car engine includes a digital memory for memorizing the data of selected independent variations of engine parameters and digital adder circuit for adding the value of the data corresponding to the selected variations in a certain method being determined in accordance with the order of the read-out operation of the memory. The first read-out address is a near address to the value corresponding to desired variations in a lower direction and the read-out address is scanned sequentially in the same distance to the distance between said selected variations in every direction of the variations, in order to obtain the volume dependent on the memorized values of the selected variations near to the desired variations.

Inventors:

SASAYAMA T

Application Number:

05/334401

Publication Date:

11/05/1974

Filing Date:

02/21/1973

Export Citation:

Assignee:

HITACHI LTD,JA

Primary Class:

International Classes:

Field of Search:

235/152,150

View Patent Images:

US Patent References:

3689755 | ENGINE CONTROL SYSTEMS | 1972-09-05 | Hodgson et al. | |

3689753 | ENGINE CONTROL SYSTEMS | 1972-09-05 | Williams et al. | |

3676655 | DIGITAL FUNCTION GENERATOR FOR TWO INDEPENDENT VARIABLES WITH INTERPOLATION | 1972-07-11 | Ancona | |

3483364 | ELECTRICAL 3D CAM | 1969-12-09 | Leeson | |

3110802 | Electrical function generators | 1963-11-12 | Ingham et al. |

Primary Examiner:

Morrison, Malcolm A.

Assistant Examiner:

Gottman, James F.

Attorney, Agent or Firm:

Craig & Antonelli

Claims:

What is claimed is

1. A computing device for interpolation of values comprising digital memory means for memorizing data corresponding to selected values (x_{1}, x_{2}, - - - x_{n}, y_{1}, y_{2}, - - - y_{n}) of variations of the values (x, y), address control means connected to said digital memory means for reading out needed data from said memory means, input means connected to said address control means for setting certain values of said variations of (x, y) into said address control means, adder circuit means connected to said memory means for accumulating said output data of said memory means, and control circuit means for controlling said input means, said address control means and said adder circuit means, whereby at first certain values along said variations being set into said address control means and then said needed data to be accumulated are read out and the read out address of said memory means is shifted continuously by operation of said address control means, wherein said address control means comprises a plurality of address counters providing counted values which define said read out address, each of said address counters providing each of said certain values of said variations (x, y) from said input means, and wherein each of said address counters has an upper counter means connected to said memory means and a lower counter means connected to said upper counter means for counting increments of (Δx_{1}, Δx_{2} - - - Δx_{n}, Δy_{1}, Δy_{2} - - - Δy_{n}) between each of said selected values (x_{1}, x_{2} - - - x_{n}, y_{1}, y_{2} - - - y_{n}) of each variation of (x, y).

2. A computing device for interpolation of values in accordance with claim 1, wherein said computing device includes second counter means for determining the shifted area of said read out address of said memory means.

3. A computing device for interpolation of values in accordance with claim 2, wherein said input means includes sensor means responsive to selected operating conditions for providing corresponding digital values representing said variations of (x, y) and gating means responsive to said control circuit means for applying said digital values to said address control means.

4. A computing device for interpolation of values in accordance with claim 3, wherein said adder circuit means includes an adder circuit connected to the output of said memory means and a register connected to the output of said adder circuit, the output of said register being connected back to the input of said adder circuit.

5. A computing device for interpolation of values comprising digital memory means for memorizing data corresponding to selected values of two kinds of variables (x, y), first counting means for selecting the read out address of said memory in response to a certain value y_{p} of said first variable (y), second counting means for selecting the read out address of said memory in response to a second certain value x_{p} of said second variable (x), input means for setting said first and second certain values (x_{p}, y_{p}) into said first and second counting means, respectively, adder means for accumulating the output of said memory, third counter means for providing a signal defining the shifted distance of the read out address along said first variable (y), fourth counter means for providing a signal defining the shifted distance of the read out address along said second variable (x), and control means for providing pulse signals for operating said input means and for shifting said read out address.

6. A computing device for interpolation of values according to claim 5, wherein said first and second counting means include upper counting means and lower counting means, respectively, said upper counting means being connected to said memory means, and said lower counting means being connected to said upper counter means for counting increments between said selected values of said variations.

7. A computing device for interpolation of values according to claim 6, including means for applying pulses for shifting said read out address to said first counting means and said third counting means from said control means and the output of said third counting means is applied to said second counting means and said fourth counting means.

8. A computing device for interpolation of values in accordance with claim 7, wherein said input means includes sensor means responsive to selected operating conditions for providing corresponding digital values representing said variables of (x, y) and gating means responsive to said control circuit means for applying said digital values to said address control means.

9. A computing device for interpolation of values according to claim 5, wherein said first and second counting means include upper and lower counting means respectively, said read out address being selected in accordance with the counting values of said upper counting means, when the advance of said lower counting means for counting increments between said selected values of the variations reaches a predetermined value, the upper counting means being advanced by a unit count.

10. A computing device for interpolation of variables comprising

11. A computing device for interpolation of variables in accordance with claim 10, wherein said address control means comprises a plurality of second counters providing counted values which define said read out address.

12. A computing device for interpolation of variables in accordance with claim 11, wherein said adder means includes an adder circuit having two inputs and summing two digital values receiving from said two input means, a register for storing the output of the adder circuit and feed means for feeding the stored digital value of the register to the first input of the adder circuit, the output data from the digital memory being applied to the second input of the adder circuit.

13. A computing device for interpolation of two kinds of variables (x, y), each of said variables being divided into a plurality of selected values (x_{1}, x_{2}, - - - , x_{n} or y_{1}, y_{2}, - - - , y_{n}) and each of said selected values being divided into a predetermined number of increments (x_{1}, x_{2}, - - - x_{n} or y_{1}, y_{2}, - - - y_{n}), said interpolation computing device comprising

14. A computing device for interpolation of variables in accordance with claim 13, wherein said computing device includes a means for determining the shifted values of each of said counting means of the address control means, whereby at first certain values of each variables from the input means being set into each of said counting means of the address control means, said counting means being shifted in synchronization with the accumulating timing of the adder means until the shifted value of the counting means reaches said determined shifted values of said shifted values determining means.

15. A computing device for interpolation of variables in accordance with claim 14, wherein said input means includes sensor means responsive to operating conditions for providing corresponding digital values representing said variables (x, y) and gating means responsive to said control means for applying said digital values to said address control means.

16. A computing device for interpolation of variables in accordance with claim 15, wherein said adder means includes an adder circuit, a register for storing the output from said adder circuit and feedback means for feeding back the output of the register to the input of the adder circuit which sums the output from the memory means and the register.

1. A computing device for interpolation of values comprising digital memory means for memorizing data corresponding to selected values (x

2. A computing device for interpolation of values in accordance with claim 1, wherein said computing device includes second counter means for determining the shifted area of said read out address of said memory means.

3. A computing device for interpolation of values in accordance with claim 2, wherein said input means includes sensor means responsive to selected operating conditions for providing corresponding digital values representing said variations of (x, y) and gating means responsive to said control circuit means for applying said digital values to said address control means.

4. A computing device for interpolation of values in accordance with claim 3, wherein said adder circuit means includes an adder circuit connected to the output of said memory means and a register connected to the output of said adder circuit, the output of said register being connected back to the input of said adder circuit.

5. A computing device for interpolation of values comprising digital memory means for memorizing data corresponding to selected values of two kinds of variables (x, y), first counting means for selecting the read out address of said memory in response to a certain value y

6. A computing device for interpolation of values according to claim 5, wherein said first and second counting means include upper counting means and lower counting means, respectively, said upper counting means being connected to said memory means, and said lower counting means being connected to said upper counter means for counting increments between said selected values of said variations.

7. A computing device for interpolation of values according to claim 6, including means for applying pulses for shifting said read out address to said first counting means and said third counting means from said control means and the output of said third counting means is applied to said second counting means and said fourth counting means.

8. A computing device for interpolation of values in accordance with claim 7, wherein said input means includes sensor means responsive to selected operating conditions for providing corresponding digital values representing said variables of (x, y) and gating means responsive to said control circuit means for applying said digital values to said address control means.

9. A computing device for interpolation of values according to claim 5, wherein said first and second counting means include upper and lower counting means respectively, said read out address being selected in accordance with the counting values of said upper counting means, when the advance of said lower counting means for counting increments between said selected values of the variations reaches a predetermined value, the upper counting means being advanced by a unit count.

10. A computing device for interpolation of variables comprising

11. A computing device for interpolation of variables in accordance with claim 10, wherein said address control means comprises a plurality of second counters providing counted values which define said read out address.

12. A computing device for interpolation of variables in accordance with claim 11, wherein said adder means includes an adder circuit having two inputs and summing two digital values receiving from said two input means, a register for storing the output of the adder circuit and feed means for feeding the stored digital value of the register to the first input of the adder circuit, the output data from the digital memory being applied to the second input of the adder circuit.

13. A computing device for interpolation of two kinds of variables (x, y), each of said variables being divided into a plurality of selected values (x

14. A computing device for interpolation of variables in accordance with claim 13, wherein said computing device includes a means for determining the shifted values of each of said counting means of the address control means, whereby at first certain values of each variables from the input means being set into each of said counting means of the address control means, said counting means being shifted in synchronization with the accumulating timing of the adder means until the shifted value of the counting means reaches said determined shifted values of said shifted values determining means.

15. A computing device for interpolation of variables in accordance with claim 14, wherein said input means includes sensor means responsive to operating conditions for providing corresponding digital values representing said variables (x, y) and gating means responsive to said control means for applying said digital values to said address control means.

16. A computing device for interpolation of variables in accordance with claim 15, wherein said adder means includes an adder circuit, a register for storing the output from said adder circuit and feedback means for feeding back the output of the register to the input of the adder circuit which sums the output from the memory means and the register.

Description:

BACKGROUND OF THE INVENTION

1. Field of the Invention

This invention relates to a computing device for interpolation and more particularly to a computing device which is suitable for determining the quantity of fuel injection or for advancing the angle of ignition of an engine.

2. Description of the Prior Art

One of our most serious ecological problems results from the emission of impurious components included in exhaust gas from a car engine, the impurious components having a baneful influence upon mankind, animals and plants. As a result, it has become an ever more urgent requirement to decrease the impurious components which are issued from the exhaust gas of the engine, for example, by developing a device which is suitable for decreasing those components.

There are various difficult problems which must be solved, in order to decrease undesirable exhaust components. One problem is to determine precisely the quantity of injection fuel or the degree of advancing of the angle of ignition to produce minimum exhaust.

A computing device for calculating the quantity of fuel injection or the advancing angle of engine ignition is needed. The conventional fuel injection control system like the conventional ignition advancing control system is of the analogue type and therefore cannot determine precisely the quantity of the fuel or the advancing angle of ignition required for efficient operation. For example, when the quantity of fuel injection is determined by the condition of the engine, the discharge characteristic of a capacitor is used as a measure and the value of the resistor forming part of the discharge circuit including the capacitor is controlled by the suction of the intake manifold so as to change the discharge time of the capacitor in response to the suction. The fuel quantity is determined in response to the discharge time. However, with this technique, the determined fuel quantity is not an accurate value which is the most suitable value to that engine condition.

Additionally, the analogue type control device, or analogue type calculating device, has a significant disadvantage. The controlled value or the calculated value is dependent upon circumferential conditions, particular temperatures, etc. For the same engine condition, the calculated value in winter is different from that in summer. Therefore, a digital type calculating device is more desirable in such cases.

In the digital type calculating device, in order to regulate the fuel quantity or the advancing ignition angle of the engine, it is required to memorize the needed data which is used for determining that quantity or the ignition angle. Namely, the memory stores the values, each value being determined by each engine condition or each value of the engine speed and the suction of the intake manifold. The engine condition is continuously measured, and the fuel quantity or the advancing angle of ignition is determined by the stored value which corresponds to that engine condition. The memory cannot memorize all values corresponding to all engine conditions and therefore the memorized value is discontinuous. The price of the memory increases in response to the volume of the memorized value. Therefore, it is necessary to develop a calculating machine for interpolation in order to decrease the cost of the device.

SUMMARY OF THE INVENTION

1. Object of the Invention

The primary object of this invention is to provide an economical computing device for interpolation of values.

Another object of this invention is to provide a computing device which is suitable for determining the quantity of fuel injection or the advance angle of ignition of the engine to produce efficient operation.

A further object of this invention is to provide a computing device for interpolation of values which is independent of circumferential temperature.

2. Statement of the Invention

The present invention includes an adder circuit for calculating the volume and an interpolation. The value of that volume corresponds to each value of the interpolation or each value of the fuel injection.

The present invention includes memory means for memorizing basic values which correspond to each engine condition or any other condition relating to the needed purpose. The value of the interpolation can be calculated by adding these basic values in a predetermined order.

Therefore, the computing device of the present invention is very simple and of low price.

If the basic values correspond to the engine condition, viz, engine speed, the suction of the intake manifold, the air temperature in the intake manifold, the recycle quantity of the exhaust gas, the calculated value corresponds to the value of the fuel injection quantity or the advancing angle of ignition. Therefore, the present invention is very suitable for a control device of a car engine or other engine.

The memory means and the adder means of the present invention are of the digital type so as to be independent of circumferential temperatures. If the memorized data is changed, it can be used for other purposes or as a controlling device of other kinds of car engines without any regulation. The controlling devices for various kinds of car engines are provided in one kind of continuous design and continuous manufacturing process.

BRIEF DESCRIPTION OF THE DRAWING

FIG. 1 is a diagram of a surface of a group of values determined by independent variations x_{1}, x_{2} - - - x_{n} and y_{1}, y_{2} - - - y_{n}.

FIG. 2 is a partially enlarged view of desired values of independent variations of FIG. 1.

FIG. 3 is a partially enlarged view of desired values of FIG. 1 for graphical solution of an interpolation process.

FIG. 4 is a partially enlarged view of desired values of FIG. 1 for an electrical solution of an interpolation process.

FIG. 5 is a schematic block diagram of an electrical computing device for calculating an interpolation of values.

FIG. 6 is a schematic circuit diagram of an embodiment of the control circuit of the computing device of FIG. 5.

FIG. 7 is a schematic circuit diagram of another embodiment of the computing device for calculating an interpolation.

FIG. 8 is a schematic circuit diagram of another embodiment of the control circuit of the computing device of FIG. 7.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

Referring to FIG. 1, a needed value z is a function of two independent variables x and y.

z = f(x, y) (1)

The needed value x is obtained by an experiment or an experience and has a surface as shown in FIG. 1. Setting values on the X-coordinate and the Y-coordinate, we can find the desired value z on the surface. If the x value is x_{p} and the y value is y_{p}, the desired value z has the value of point P. All of the values which are determined by the two independent variables x and y are found on this surface, as shown in FIG. 1, if it is assumed that all of the conditions being determined by the independent variables x and y are tested. But in practice, it is impossible to test all of the conditions. Thus, it is necessary to select basic values of the independent variables x and y with a certain distance along the X- and Y-coordinates via, x_{1}, x_{2} - - - x_{n} and y_{1}, y_{2} - - - y_{n}.

The conditions dependent upon the basic values of the independent variables x and y have been tested and only the resulting values memorized. In this case, the value of point P must be obtained by calculation, since x_{p} and y_{p} are not selected values.

The calculating method of the present invention is explained using FIGS. 2, 3, and 4. It is assumed that the distances between the selected values on the X- and Y-coordinate axes are δx and δy, respectively. The value of P, which is the number z_{pp} on the Z-axis obtained by dropping a perpendicular to the Z-axis from the point P, is obtained by approximation within the plane from the values z_{ii}, z_{ij}, z_{ji} and z_{jj}. The values z_{ii}, z_{ij}, z_{ji} and z_{jj} are memorized by the memory.

The increment K_{1} of the line L_{j} between points z_{ij} and z_{jj} is, as seen from FIG. 1:

K_{1} = (z_{jj} - z_{ij}) /δx (2)

and the increment K_{2} of line L_{i} between points z_{ii} and z_{ji} is:

K_{2} = (z_{ji} - z_{ii}) /δx (3)

If a line L_{p} is extended parallel to lines L_{i} and L_{j} and passes through the point P, it is assumed that the values of points z_{jp} and z_{ip} of the intersection of line L_{p} and lines between points z_{ji} and z_{jj} and between point z_{ii} and points z_{ij} are z_{ip} and z_{jp}, respectively.

The increment K_{p} of line L_{p} is obtained by the increments K_{1} and K_{2}, as follows

K_{p} = K_{2} + (y_{p} - y_{i})^{.} (K_{1} - K_{2})/δy = (1 - α)K_{2} + α ^{.} K_{1} (4)

where α = (y_{p} - y_{i})/δy.

The perpendicular value z_{ip} to the Z-axis at the point z_{ip} is

z_{ip} = z_{ii} + (z_{ij} - z_{ii})(y_{p} - y_{i})/δy = z_{ii} + (z_{ij} - z_{ii}) ^{.} α = (1 - α)z_{ii} + αz_{ij}. (5)

The perpendicular value z_{pp} to the Z-axis at the point P is

z_{pp} = z_{ip} + K_{p} (x_{p} - x_{i}) = (1 - α)z_{ii} + αg_{ij} + {(1 - α)K_{2} + αK_{1} } (x_{p} - x_{i}) = (1 - α){z_{ii} + K_{2} (x_{p} - x_{i})} + α{z_{ij} + K_{1} (x_{p} - x_{i})} (6)

Substitution of equations 2, 3 in equation 6 yields

z_{pp} = (1 - α) {z_{ii} + (z_{ji} - z_{ii})/δx^{.} (x_{p} - x_{i})}+ α {z_{ij} + (z_{jj} - z_{ij})/δx^{.} (x_{p} - x_{i})} = (1 - α) {z_{ii} + (z_{ji} - z_{ii})^{.} β} + α } z_{ij} + (z_{jj} - z_{ij})^{.} β} = (1 - α) (z_{ii} - βz_{ii}) + α (z_{ij} - β ^{.} z_{ij}) + (1 - α)^{.} β z_{ji} + α^{.} βz_{jj} = (1 - α) (1 - β) ^{.} z_{ii} + α (1 - β) ^{.} z_{ij} + (1 - α) ^{.} βz_{ji} + α^{.} β^{.} z_{jj} (7)

where β = (x_{p} - x_{i})/δx.

Since coefficients α, β are given by

α = (y_{p} - y_{i})/δy (8)

β = (x_{p} - x_{i})/δx, (9)

the distance (y_{p} - y_{i}) and the distance (x_{p} - x_{i}) are

y_{p} - y_{i} = α^{.} δy (10)

x_{p} - x_{i} = β^{.} δx (11)

It follows from equations (8), (9), (10), and (11) that

y_{j} - y_{p} = (1 - α)δy (12)

x_{j} - x_{p} = (1 - β)δx (13)

Equation (7) can be written

z_{pp} = q_{ii} + q_{ij} + q_{ji} + q_{jj}

where

q_{ii} = (1 - α) (1 - β)^{.} z_{ii} (14)

q_{ij} = α^{.} (1 - β)z_{ij} (15)

q_{ji} = (1 - α)^{.} β^{.} z_{ji} (16)

q_{jj} = α^{.} β^{.} z_{jj} (17)

The following new equations (18) to (21) are obtained by multiplying the equations (14) to (17) by a coefficient δx^{.} δy.

V_{ii} = δx^{.} δy^{.} q_{ii} = (1 - α) δy (1- β) δx ^{.} z_{ii} (18)

V_{ij} = δx^{.} δy q_{ij} = α ^{.} δy ^{.} (1 - β) δx^{.} z_{ij} (19)

V_{ji} = δx^{.} δy^{.} q_{ji} = (1 - α) δy^{.} β^{.} δx^{.} z_{ji} (20)

V_{jj} = δ x^{.} δy^{.} q_{jj} = α^{.} δy^{.} βδx^{.} z_{jj} (21)

Referring to FIG. 3, the equations (18) to (21) represent volumes V_{ii}, V_{ij}, V_{ji}, V_{jj}.

Namely, the volume V_{ii} is obtained by multiplying an area defined by points (x_{p}, y_{p}), (x_{p}, y_{j}), (x_{j}, y_{p}) and (x_{j}, y_{j}) by the value z_{ii} of point (x_{i}, y_{i}); the volume V_{ij} is obtained by multiplying an area defined by point (x_{p}, y_{j}), (x_{j}, y_{j}), A_{5} and A_{6} by the value of point (x_{i}, y_{j}); the volume V_{ji} is obtained by multiplying an area defined by points (x_{j}, y_{p}), (A_{2}, A_{3}), (x_{j}, y_{j}) by the value of point (x_{j}, y_{i}); and the volume V_{jj} is obtained by multiplying an area defined by point (x_{j}, y_{j}), A_{3}, A_{4} and A_{5} by the value of point (x_{j}, y_{j}).

Equation (7) is given by the total of the volumes V_{ii}, V_{ij}, V_{ji} and V_{jj}. But in reality, the equation (7) is given by the value which is obtained by dividing the total of the volumes by the area defined by δx^{.} δy. Since the certain area δx^{.} δy is multiplied by any point as a coefficient, the coefficient is taken into account by regulating the memorized value. The calculating method of the total of the volumes is determined in an electrical way.

Referring to FIG. 4, the values of points (x_{i}, y_{i}), (x_{i}, y_{j}), (x_{j}, y_{i}), (x_{j}, y_{j}) are memorized in a memory means. Namely, the selected values of independent variations x_{1}, x_{2} - - - x_{n} and y_{1}, y_{2}, - - - y_{n}, correspond to the addresses of the memory means. The distance between two selected values of independent variations x and y are also divided into the many increments Δx_{1}, Δx_{2} - - - Δx_{n} and Δy_{1}, Δy_{2} - - - Δy_{n}. When the independent variations x and y are the values x_{p} and y_{p}, at first the value of point (x_{i}, y_{i}) is read out from the memory and the read out point is scanned from the first position of point p(x_{p}, y_{p}) to a point A_{4} or a point A_{2} through a small area defined by Δx_{1}, Δx_{2}, Δx_{n}, - - - Δy_{1}, Δy_{2} - - - Δy_{n}. When the read out point is located at a small area (Δx_{1}, Δy_{1}), the value of point (x_{i}, y_{i}) is added by the adder means and when the read out point is shifted to the next small area (Δx_{1}, Δy_{2}), the value of point (x_{i}, y_{i}) is also added. When the read out point goes over the point (x_{p}, y_{j}), the value of the point (x_{i}, y_{j}) is read out and then the value of point (x_{i}, y_{j}) is added by the adder means. When the read out point p is located at any small area in the domain of points (x_{p}, y_{p}), (x_{p}, y_{j}), (x_{j}, y_{j}) and (x_{j}, y_{p}), the memorized value of the address corresponding to point (x_{i}, y_{i}) is read out; when the read out point is located at any small area in the domain of points (x_{p}, y_{j}), (x_{j}, y_{j}), A_{5} and A_{6}, the memorized value of the address corresponding to point (x_{i}, y_{j}) is read out; when the read out point is located at any small area in the domain of points (x_{i}, x_{p}), A_{2}, A_{3} and (x_{j}, y_{j}), the memorized value of the address corresponding to point (x_{j}, y_{i}) is read out; and when the read out point is located at any small area in the domain of points A_{3}, A_{4}, A_{5}, (x_{j}, y_{j}), the memorized value of the address corresponding to point (x_{j}, y_{j}) is read out.

Referring to FIG. 5 the independent variations, for example, the rotational speed of the car engine and the suction value of an intake manifold, are converted to digital signals by sensors 1, 2 and are set in counters 10, 11 through AND gates 3, 4 and OR gates 5, 6, the operation of said AND gates 3, 4 is controlled by signals from a terminal T_{1} of a control circuit 7.

The independent variations (x_{p}, y_{p}) being set into said counters 10, 11 designate point (x_{p}, y_{p}) of FIG. 4. The counters 10 and 11 consist of an upper counter and a lower counter. The outputs of the upper counters are used for selecting an address of a memory 12 having two selecting input terminals T_{10} and T_{11}. The lower outputs of counters 10 and 11 count a small divided increment Δx_{1}, Δx_{2} - - - Δx_{n}, Δy_{1}, Δy_{2} - - - Δy_{n} between the selected variation x_{1}, x_{2} - - - x_{n}, y_{1}, y_{2} - - - y_{n}. Therefore, the address corresponding to point (x_{i}, y_{i}) is selected by the upper counters of counters 10 and 11. The output terminal T_{2} of the control circuit 7 starts the transfer of pulses into a counter 8 and input terminal T_{5} of counter 11. When a scanning (read out) point is located at (x_{p}, y_{p}), the memorized value z_{ii} corresponding to point (x_{i}, y_{i}) is read out into register 13 from the memory 12.

The value z_{ii} of the point (x_{i}, y_{i}) is applied to a terminal T_{14} of an adder circuit 14 and the value of a register 15 is also applied to a terminal 15 of the adder circuit 14. At first the value of the register 15 is zero, the value z_{ii} of the point (x_{i}, y_{i}) is stored in the register 15 as the output of the adder circuit 14. The counters 8 and 11 are advanced one count by the pulse from the terminal T_{2} of the control circuit 7, so that the scanning (read out) point is advanced to point (x_{p}, y_{1}). The read out address of the memory is not changed because the upper counters connected to the address inputs T_{10} and T_{11} of the memory are not advanced. The same value z_{ii} of the point (x_{i}, y_{i}) is read out for adding with the value in the register 15. The resulting value calculated by adder circuit 14 is stored in the register as a new value. When the scanning (read out) point is moved to a point (x_{p}, Δy_{6}), the upper counter of the counter 11 is advanced one count by the output of the lower counter of the counter 11. As a result, the memorized value z_{ij} of the point (x_{i}, y_{j}) is read out from the memory 12 to register 13. The value z_{ij} of the register 13 is added with the value of the register 15 and then stored in the register 15 as a new value. When the scanning (read out) point reaches a point (x_{p}, Δy_{n}), the counter 8 counts a full count and then it is reset and counters 9 and 10 are advanced one count. Since an output from a terminal T_{4} of a counter 9 also is applied to the terminal T_{6} of the counter 11, the counter 11 abates one count by one pulse from the control circuit 7. When the scanning point is located between the points (Δx_{1}, Δy_{n}), (Δx_{1}, y_{p}), the counter abates the count by pulses from the control circuit, since the output from the terminal T_{4} is applied to the terminal T_{6} of the counter 11. When the scanning point reaches point (Δx_{1}, Δ y_{6}) from the point (Δx_{1}, Δy_{n}), the count of the upper counter of counter 11 is abated one count, and after that the address of (x_{i}, y_{i}) is read out. When the scanning point reaches point (Δx_{1}, y_{p}), the counter 8 counts a full count and then the counters 9 and 10 are advanced one count. As a result, the output from the terminal T_{4} of the counter 9 is stopped, so that the counter 11 advances again.

When the scanning point reaches the point A_{5}, (x_{j}, Δy_{n}), the upper counter of the counter 10 is advanced one count, by the next pulse from the counter 8, because the lower counter of the counter 10 is at a full count. The address of the x side is advanced one count, whereby the address corresponding to the point (x_{j}, y_{j}) is read out. In this way the scanning point reaches the point A_{4} and the volume indicated by the total of equations (18) to (21) is calculated.

The comparator 16 and the register 17 are shown as an auxiliary circuit. Namely, if the output of this computing device indicates the advancing angle, an instantaneous position of an engine piston is set into the register instantaneously. When the value in the register coincides with the value of the register 15, the comparator 16 derives an output, by which the ignition is triggered. A counter can be used instead of the register 17 in order to obtain the instantaneous position of the piston by counting pulses generated in response to the position of the piston.

If the output of this computing device indicates a quantity of injection fuel, the instantaneous injecting quantity of the fuel is obtained by counting pulses, the generation of said pulses being started by opening the fuel injection valve. The output of the comparator is caused by coincidence of the value of the counter or register 17 and applied to a control device for the fuel injection valve so that the fuel injection is stopped.

The control circuit 7 is shown in FIG. 6 in detail. A pulse is applied to a terminal ST_{1} or ST_{2} by another circuit or an operator for setting a flip-flop FF_{1}.

The output of flip-flop FF_{1} is used for clearing the counters 8, 9, 10 and 11 and the registers 13 and 15. Next pulse from an oscillator 70 sets a flip-flop FF_{3} whereby the pulses from the oscillator 70 are applied to the counter 8 and the OR gate 6 until the output from the counter 9 is applied to an input of an AND gate 69 through the terminal T_{3}.

Digital signals are set into counters 10 or 10' and 11 in FIG. 7 from sensors 1 or 1' and 2, respectively. When an output from the terminal T_{20} of the control circuit 7 is transmitted to AND gates 3 and 3', the AND gate 3 is opened by a pulse from a terminal T_{1} of the control circuit 7, while the output of the terminal T_{20} is in the off stage, the AND gate 3' is opened by output from the terminal T_{1}. Assume that the output of the terminal T_{22} is continuously transmitted. The digital signals are set in the counters 10 and 11 respectively through the AND gates 3 and 4 and OR gates 5 and 6. Pulses for shifting the scanning point are applied to the counter 10 and a counter 8 from a terminal T_{2} of the control circuit 7.

In the way explained above in connection with FIG. 5, the value of the address determined by the counting values of counters 10 and 11 is transmitted to the input terminal of the adder 14 from the memory 12 through the register 13 in order to add to the value in the register 15. Namely, the adder circuit 14 accumulates the output data from the memory 12 in response to the signal of the control circuit 7. When the counter 9 is advanced to a full count, the desired calculation is completed and the calculated value is stored in the register 15. The comparators 16 and 16' and registers 17 and 17' operate in the same way as shown in FIG. 5. Counters can be also used instead of the registers 17 and 17'.

In the computing device of FIG. 7, it is assumed that the sensor 1 measures the suction of the intake manifold of the engine, the sensor 1' measures the throttle opening of the engine and the sensor 2 measures the rotating speed of the engine. At first the injecting fuel quantity is calculated from the measured values of sensor 1 and sensor 2. In the next cycle, the advancing angle is calculated from the measured values of sensor 1' and sensor 2.

FIG. 8 shows an embodiment of the control circuit of FIG. 1. A pulse is applied to a terminal ST_{1} or ST_{2} and a flip-flop FF_{1} is set. The output of the flip-flop FF_{1} is transmitted to set flip-flops FF_{4} and FF_{2} and to clear the counters 8, 9, 10, 10' and 11 and the registers 13 and 15. The output of flip-flop FF_{4} is transmitted to the AND gates 3, 3', 20 and 20'. The output of the flip-flop FF_{2} is transmitted to the AND gates 3, 3', and 4 through a terminal T_{1}. The pulses of the oscillator 70 are derived from a terminal T_{2} of an AND gate 69 by setting a flip-flop FF_{3}. The AND gate 69 is closed by the output from the counter 9 of FIG. 7.

The foregoing disclosure relates to the interpolation of two independent variations. If the independent variations are three or four, at first, the interpolation is caused between two independent variations of these variations in the above explained way, and the interpolation is caused between the resultant value and next variations. The desired result is obtained by repeat of this operation.

1. Field of the Invention

This invention relates to a computing device for interpolation and more particularly to a computing device which is suitable for determining the quantity of fuel injection or for advancing the angle of ignition of an engine.

2. Description of the Prior Art

One of our most serious ecological problems results from the emission of impurious components included in exhaust gas from a car engine, the impurious components having a baneful influence upon mankind, animals and plants. As a result, it has become an ever more urgent requirement to decrease the impurious components which are issued from the exhaust gas of the engine, for example, by developing a device which is suitable for decreasing those components.

There are various difficult problems which must be solved, in order to decrease undesirable exhaust components. One problem is to determine precisely the quantity of injection fuel or the degree of advancing of the angle of ignition to produce minimum exhaust.

A computing device for calculating the quantity of fuel injection or the advancing angle of engine ignition is needed. The conventional fuel injection control system like the conventional ignition advancing control system is of the analogue type and therefore cannot determine precisely the quantity of the fuel or the advancing angle of ignition required for efficient operation. For example, when the quantity of fuel injection is determined by the condition of the engine, the discharge characteristic of a capacitor is used as a measure and the value of the resistor forming part of the discharge circuit including the capacitor is controlled by the suction of the intake manifold so as to change the discharge time of the capacitor in response to the suction. The fuel quantity is determined in response to the discharge time. However, with this technique, the determined fuel quantity is not an accurate value which is the most suitable value to that engine condition.

Additionally, the analogue type control device, or analogue type calculating device, has a significant disadvantage. The controlled value or the calculated value is dependent upon circumferential conditions, particular temperatures, etc. For the same engine condition, the calculated value in winter is different from that in summer. Therefore, a digital type calculating device is more desirable in such cases.

In the digital type calculating device, in order to regulate the fuel quantity or the advancing ignition angle of the engine, it is required to memorize the needed data which is used for determining that quantity or the ignition angle. Namely, the memory stores the values, each value being determined by each engine condition or each value of the engine speed and the suction of the intake manifold. The engine condition is continuously measured, and the fuel quantity or the advancing angle of ignition is determined by the stored value which corresponds to that engine condition. The memory cannot memorize all values corresponding to all engine conditions and therefore the memorized value is discontinuous. The price of the memory increases in response to the volume of the memorized value. Therefore, it is necessary to develop a calculating machine for interpolation in order to decrease the cost of the device.

SUMMARY OF THE INVENTION

1. Object of the Invention

The primary object of this invention is to provide an economical computing device for interpolation of values.

Another object of this invention is to provide a computing device which is suitable for determining the quantity of fuel injection or the advance angle of ignition of the engine to produce efficient operation.

A further object of this invention is to provide a computing device for interpolation of values which is independent of circumferential temperature.

2. Statement of the Invention

The present invention includes an adder circuit for calculating the volume and an interpolation. The value of that volume corresponds to each value of the interpolation or each value of the fuel injection.

The present invention includes memory means for memorizing basic values which correspond to each engine condition or any other condition relating to the needed purpose. The value of the interpolation can be calculated by adding these basic values in a predetermined order.

Therefore, the computing device of the present invention is very simple and of low price.

If the basic values correspond to the engine condition, viz, engine speed, the suction of the intake manifold, the air temperature in the intake manifold, the recycle quantity of the exhaust gas, the calculated value corresponds to the value of the fuel injection quantity or the advancing angle of ignition. Therefore, the present invention is very suitable for a control device of a car engine or other engine.

The memory means and the adder means of the present invention are of the digital type so as to be independent of circumferential temperatures. If the memorized data is changed, it can be used for other purposes or as a controlling device of other kinds of car engines without any regulation. The controlling devices for various kinds of car engines are provided in one kind of continuous design and continuous manufacturing process.

BRIEF DESCRIPTION OF THE DRAWING

FIG. 1 is a diagram of a surface of a group of values determined by independent variations x

FIG. 2 is a partially enlarged view of desired values of independent variations of FIG. 1.

FIG. 3 is a partially enlarged view of desired values of FIG. 1 for graphical solution of an interpolation process.

FIG. 4 is a partially enlarged view of desired values of FIG. 1 for an electrical solution of an interpolation process.

FIG. 5 is a schematic block diagram of an electrical computing device for calculating an interpolation of values.

FIG. 6 is a schematic circuit diagram of an embodiment of the control circuit of the computing device of FIG. 5.

FIG. 7 is a schematic circuit diagram of another embodiment of the computing device for calculating an interpolation.

FIG. 8 is a schematic circuit diagram of another embodiment of the control circuit of the computing device of FIG. 7.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

Referring to FIG. 1, a needed value z is a function of two independent variables x and y.

z = f(x, y) (1)

The needed value x is obtained by an experiment or an experience and has a surface as shown in FIG. 1. Setting values on the X-coordinate and the Y-coordinate, we can find the desired value z on the surface. If the x value is x

The conditions dependent upon the basic values of the independent variables x and y have been tested and only the resulting values memorized. In this case, the value of point P must be obtained by calculation, since x

The calculating method of the present invention is explained using FIGS. 2, 3, and 4. It is assumed that the distances between the selected values on the X- and Y-coordinate axes are δx and δy, respectively. The value of P, which is the number z

The increment K

K

and the increment K

K

If a line L

The increment K

K

where α = (y

The perpendicular value z

z

The perpendicular value z

z

Substitution of equations 2, 3 in equation 6 yields

z

where β = (x

Since coefficients α, β are given by

α = (y

β = (x

the distance (y

y

x

It follows from equations (8), (9), (10), and (11) that

y

x

Equation (7) can be written

z

where

q

q

q

q

The following new equations (18) to (21) are obtained by multiplying the equations (14) to (17) by a coefficient δx

V

V

V

V

Referring to FIG. 3, the equations (18) to (21) represent volumes V

Namely, the volume V

Equation (7) is given by the total of the volumes V

Referring to FIG. 4, the values of points (x

Referring to FIG. 5 the independent variations, for example, the rotational speed of the car engine and the suction value of an intake manifold, are converted to digital signals by sensors 1, 2 and are set in counters 10, 11 through AND gates 3, 4 and OR gates 5, 6, the operation of said AND gates 3, 4 is controlled by signals from a terminal T

The independent variations (x

The value z

When the scanning point reaches the point A

The comparator 16 and the register 17 are shown as an auxiliary circuit. Namely, if the output of this computing device indicates the advancing angle, an instantaneous position of an engine piston is set into the register instantaneously. When the value in the register coincides with the value of the register 15, the comparator 16 derives an output, by which the ignition is triggered. A counter can be used instead of the register 17 in order to obtain the instantaneous position of the piston by counting pulses generated in response to the position of the piston.

If the output of this computing device indicates a quantity of injection fuel, the instantaneous injecting quantity of the fuel is obtained by counting pulses, the generation of said pulses being started by opening the fuel injection valve. The output of the comparator is caused by coincidence of the value of the counter or register 17 and applied to a control device for the fuel injection valve so that the fuel injection is stopped.

The control circuit 7 is shown in FIG. 6 in detail. A pulse is applied to a terminal ST

The output of flip-flop FF

Digital signals are set into counters 10 or 10' and 11 in FIG. 7 from sensors 1 or 1' and 2, respectively. When an output from the terminal T

In the way explained above in connection with FIG. 5, the value of the address determined by the counting values of counters 10 and 11 is transmitted to the input terminal of the adder 14 from the memory 12 through the register 13 in order to add to the value in the register 15. Namely, the adder circuit 14 accumulates the output data from the memory 12 in response to the signal of the control circuit 7. When the counter 9 is advanced to a full count, the desired calculation is completed and the calculated value is stored in the register 15. The comparators 16 and 16' and registers 17 and 17' operate in the same way as shown in FIG. 5. Counters can be also used instead of the registers 17 and 17'.

In the computing device of FIG. 7, it is assumed that the sensor 1 measures the suction of the intake manifold of the engine, the sensor 1' measures the throttle opening of the engine and the sensor 2 measures the rotating speed of the engine. At first the injecting fuel quantity is calculated from the measured values of sensor 1 and sensor 2. In the next cycle, the advancing angle is calculated from the measured values of sensor 1' and sensor 2.

FIG. 8 shows an embodiment of the control circuit of FIG. 1. A pulse is applied to a terminal ST

The foregoing disclosure relates to the interpolation of two independent variations. If the independent variations are three or four, at first, the interpolation is caused between two independent variations of these variations in the above explained way, and the interpolation is caused between the resultant value and next variations. The desired result is obtained by repeat of this operation.