Controller of internal combustion engine

Tooth portions are formed at unit angles on a rotor connected with a crankshaft of an internal combustion engine. A toothless portion is formed on the rotor by irregularly changing the regular arrangement of the tooth portions. A controller of the engine estimates times necessary for rotation of unit angles of an arbitrary angular range of 50° CA including the toothless portion and a pair of tooth portions adjacent to the toothless portion by using times necessary for rotation of unit angles of a different angular range of 50° CA distant from the arbitrary angular range by 180° CA. Thus, the controller can maintain high controllability of the engine even when there occurs a range where the time necessary for the rotation of the crankshaft is not sensed appropriately.

CROSS REFERENCE TO RELATED APPLICATION

This application is based on and incorporates herein by reference Japanese Patent Application No. 2006-131411 filed on May 10, 2006.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a controller of an internal combustion engine having a function of sensing a time necessary for a unit angle of a crankshaft of the engine to rotate based on an output of a crank angle sensor sensing sensed portions formed for respective unit angles at equal intervals on a rotating body rotating in synchronization with rotation of the crankshaft.

2. Description of Related Art

It is common knowledge to sense multiple tooth portions (sensed portions) formed at equal intervals on a rotor provided on a crankshaft of an in-vehicle internal combustion engine with a crank angle sensor in order to calculate a time necessary for the crankshaft to rotate. A magnetic flux between the crank angle sensor and the rotor changes regularly because a positional relationship between the crank angle sensor, which is located near the rotor, and the tooth portions of the rotor changes regularly. Paying attention to this fact, the rotation of the tooth portions of the rotor is sensed based on the regular flux change.

In order to sense a reference position of the rotation angle of the crankshaft, a toothless portion is usually provided on the rotor by irregularly changing the disposal of the above-described tooth portions. Accordingly, the regularity of the flux change is disturbed if the crank angle sensor approaches to the toothless portion while the magnetic flux between the crank angle sensor and the rotor changes regularly with the rotation of the crankshaft. The reference position of the rotation angle of the crankshaft can be sensed based on disturbance of the regularity of the flux change.

However, since the regularity of the flux change is disturbed near the toothless portion, the rotation angle cannot be sensed with high accuracy. Control based on information with high accuracy about the rotation angle of the crankshaft cannot be performed if the engine is controlled based on the sensing value of the crank angle sensor. As a result, controllability deteriorates and there is a possibility that exhaust characteristics and drivability are deteriorated. For example, JP-A-2005-48644 describes a controller that controls an internal combustion engine based on a rotation angle of a crankshaft.

The problem of the deterioration of the controllability of the engine is not limited to the angle range having the toothless portion. This problem is common to a range where the time necessary for the rotation cannot be sensed appropriately, such as, a range where the time necessary for the rotation of the crankshaft cannot be sensed temporarily.

SUMMARY OF THE INVENTION

It is an object of the present invention to provide a controller of an internal combustion engine capable of maintaining high controllability of the engine even when there occurs a range where a time necessary for rotation of a crankshaft cannot be sensed appropriately.

According to an aspect of the present invention, a controller of an internal combustion engine has a first necessary time sensing device that senses a first necessary time necessary for rotation of an arbitrary angular range of the crankshaft, a second necessary time sensing device that senses a second necessary time necessary for rotation of an angular range different from the arbitrary angular range, a unit necessary time sensing device that senses multiple unit necessary times necessary for rotation of unit angles in the angular range different from the arbitrary angular range, and an estimating device that estimates times necessary for rotation of unit angles in the arbitrary angular range by converting the multiple unit necessary times into equivalents of the times necessary for the rotation of the unit angles in the arbitrary angular range based on a difference between the first necessary time and the second necessary time.

A tendency of rotation fluctuation in the arbitrary angular range is correlated with the unit necessary times necessary for the rotation of the unit angles of the different angular range. The times necessary for the rotation of the unit angles in the arbitrary angular range can differ from the times necessary for the rotation of the unit angles of the different angular range. The difference corresponds to the difference between the first necessary time necessary for the rotation of the arbitrary angular range and the second necessary time necessary for the rotation of the difference angular range.

Therefore, regarding the rotation fluctuation in the arbitrary angular range grasped with the unit necessary times, the above-described structure grasps the magnitude of the times necessary for the rotation of the unit angles in the arbitrary angular range based on the difference between the first necessary time and the second necessary time. That is, the unit necessary times are converted into the equivalents of times necessary for the rotation of the unit angles in the first necessary time based on the difference between the first necessary time and the second necessary time. Thus, the converted values are estimated as the times necessary for the rotation of the unit angles in the arbitrary angular range.

DETAILED DESCRIPTION OF EXAMPLE EMBODIMENTS

A controller of an internal combustion engine according to a first embodiment of the present invention is applied to a fuel injection controller of a diesel engine.FIG. 1shows an entire structure of an engine system according to the present embodiment. As shown inFIG. 1, a fuel pump6suctions fuel from a fuel tank2through a fuel filter4. The fuel pump6receives a driving force from a crankshaft8(i.e., an output shaft of the engine) and discharges the fuel. The fuel pump6has a suction metering valve10. The suction metering valve10regulates an amount of the fuel discharged from the fuel pump6by regulating an amount of the suctioned fuel. That is, the amount of the fuel discharged to an outside is decided by the operation of the suction metering valve10. The fuel pump6has multiple plungers, each of which reciprocates between a top dead center and a bottom dead center to suction and to discharge the fuel.

The fuel discharged from the fuel pump6is supplied under pressure (i.e., pressure-fed) to a common rail12. The common rail12stores the fuel pressure-fed from the fuel pump6at a high-pressure state and supplies the fuel to injectors16of respective cylinders (four cylinders are illustrated inFIG. 1) through high-pressure fuel passages14. The injectors16are connected with the fuel tank2through a low-pressure fuel passage18.

The engine system according to the present embodiment has various sensors for sensing operation states of the engine such as a fuel pressure sensor20for sensing the fuel pressure in the common rail12and a crank angle sensor22for sensing a rotation angle of the crankshaft8based on rotation of a rotor9provided on the crankshaft8. The engine system has an accelerator sensor24for sensing an operation amount ACCP of an accelerator pedal operated in response to acceleration demand of a user.

An electronic control unit30(ECU) includes a microcomputer as a main component. The ECU30takes in the sensing results of the various sensors and controls an output of the engine based on the sensing results. The ECU30performs fuel injection control in order to perform the output control appropriately.

The rotation angle of the crankshaft8is sensed by the crank angle sensor22in a manner shown inFIGS. 2A and 2B. Convex tooth portions9aas sensed portions are formed on the rotor9, which rotates integrally with the crankshaft8, at equal intervals (10° CA in this example). A toothless portion9bis formed on the rotor9by irregularly changing the regular disposal of the tooth portions9a. In the present embodiment, the toothless portion9bis formed as a convex member having width (30° CA in this example) greater than that of the tooth portion9a.

The crank angle sensor22is a sensor of an electromagnetic induction type located near the tooth portions9aof the rotor9. A magnetic flux intersecting a coil22aof the crank angle sensor22increases and decreases because the disposal mode between the shape of the rotor9with the convexes and concaves and the crank angle sensor22changes if the rotor9rotates. Voltage proportional to the rotation speed is outputted from the crank angle sensor22as a sensing signal due to electromagnetic induction caused by the change in the magnetic flux.

The rotation speed of the crankshaft8is controlled as desired through the above-described fuel injection control. If this rotation speed is analyzed in minute time intervals, it is shown that increase and decrease of the rotation speed are repeated in synchronization with respective strokes in a combustion cycle. As shown inFIG. 3A, the combustion is performed in the first cylinder #1, the third cylinder #3, the fourth cylinder #4, and the second cylinder #2in that order. InFIG. 3A, #1-#4represent combustion timings of the first to fourth cylinders #1-#4respectively. The fuel is injected every 180° CA and is combusted. During the combustion cycle (180° CA) of each cylinder, a rotating force is applied to the crankshaft8along with the combustion such that the rotation speed increases, and then, the rotation speed decreases because of loads applied to the crankshaft8and the like. In this case, it is expected that a work amount for each cylinder can be estimated in accordance with the behavior of the rotation speed.

It is expected that the work amount of each cylinder can be calculated from the rotation speed at the end timing of the combustion cycle of the cylinder. For example, as shown inFIG. 3B, the work amount of the first cylinder #1is calculated at timing t1as the end timing of the combustion cycle of first cylinder #1. The work amount of the following third cylinder #3is calculated at timing t2as the end timing of the combustion cycle of the third cylinder #3. However, in this case, the rotation speed calculated from the unit angles of the crankshaft8, which are grasped through the output (NE pulses) of the crank angle sensor22, includes noises or components caused by a sensing error. As shown inFIG. 3B, the sensed value (solid line b inFIG. 3B) of the rotation speed varies with respect to the actual rotation speed (broken line a inFIG. 3B). Therefore, an exact work amount cannot be calculated at timings t1, t2and the like. InFIG. 3B, a chain double-dashed line c shows a transition of the calculated work amounts of the cylinders.

Therefore, in the present embodiment, as shown inFIG. 4, the rotation speed Ne is inputted into a filtering section M1as an input signal in a constant angular cycle. The filtering section M1calculates an instantaneous torque equivalent Neflt by extracting only a rotation fluctuation component at each timing. The rotation speed Ne is sampled in an output cycle of the NE pulse (10° CA, in the present embodiment). For example, the filtering section Ml is provided by a BPF (band-pass filter). The BPF removes high-frequency components and low-frequency components contained in the rotation speed signal. The instantaneous torque equivalent Neflt(i) as the output of the filtering section M1is expressed by following Expression (1), for example.
Neflt(i)=k1×Ne(i)+k2×Ne(i−2)+k3×Neflt(i−1)+k4×Neflt(i−2)  Expression (1):

In Expression (1), Ne(i) represents the present sampling value of the rotation speed, Ne(i−2) is the second last sampling value of the rotation speed, Neflt(i−1) is the last value of the instantaneous torque equivalent, and Neflt(i−2) is the second last value of the instantaneous torque equivalent. k1-k4 are constants. The instantaneous torque equivalent Neflt(i) is calculated by Expression (1) each time the rotation speed signal is inputted into the filtering section M1.

Expression (1) is obtained by discretizing a transfer function G(s) shown by following Expression (2). In Expression (2), ζ represents a damping coefficient and ω is a response frequency.

Specifically, in the present embodiment, a combustion frequency of the engine is used as the response frequency ω and, in Expression (1), constants k1-k4 are set based on the setting that the response frequency ω is the combustion frequency. The combustion frequency is an angular frequency representing the combustion frequency per unit angle. In the case of the four cylinders, the combustion cycle (combustion angular cycle) is 180° CA. The combustion frequency is decided by the inverse of the combustion cycle.

An integration section M2shown inFIG. 4takes in the instantaneous torque equivalent Neflt and carries out integration of the instantaneous torque equivalent Neflt over a constant interval for each combustion cycle of each cylinder. Thus, the integration section M2calculates the work amounts Sneflt#1-Sneflt#4corresponding to the respective cylinders #1-#4as the torque integration values of the respective cylinders #1-#4. NE pulse numbers0-71are assigned to the NE pulses outputted in the cycle of 10° CA, respectively. The NE pulse numbers0-17are assigned to the combustion cycle of the first cylinder #1. The NE pulse numbers18-35are assigned to the combustion cycle of the third cylinder #3. The NE pulse numbers36-53are assigned to the combustion cycle of the fourth cylinder #4. The NE pulse numbers54-71are assigned to the combustion cycle of the second cylinder #2. The work amounts Sneflt#1-Sneflt#4corresponding to the cylinders #1-#4are calculated by following Expression (3) for the first to fourth cylinders #1-#4respectively.
Snelft#1=Nelft(0)+Nelft(1)+ . . . +Nelft(16)+Nelft(17),
Snelft#2=Nelft(18)+Nelft(19)+ . . . +Nelft(34)+Nelft(35),
Snelft#3=Nelft(36)+Nelft(37)+ . . . +Nelft(46)+Nelft(47),
Snelft#4=Nelft(48)+Nelft(49)+ . . . +Nelft(70)+Nelft(71)  Expression (3):

The cylinder number will be expressed as #i, and each of the work amounts Sneflt#1-Sneflt#4corresponding to the cylinder #i will be expressed as an each cylinder work amount Sneflt#i.

FIG. 5is a time chart showing transitions of the rotation speed Ne, the instantaneous torque equivalent Neflt, and the each cylinder work amount Sneflt#i. As shown inFIG. 5, the instantaneous torque equivalent Neflt oscillates with respect to a reference level Ref. The each cylinder work amount Sneflt#i is calculated by integrating the instantaneous torque equivalent Neflt within the combustion cycle of each cylinder #i. The integration value of the instantaneous torque equivalent Neflt on a positive side of the reference level Ref corresponds to combustion torque, and the integration value of the instantaneous torque equivalent Neflt on a negative side of the reference level Ref corresponds to load torque. The reference level Ref is decided in accordance with average rotation speed of the entire cylinders.

Essentially, the balance between the combustion torque and the load torque should be zero and the each cylinder work amount Sneflt#i should be zero (combustion torque−load torque=0) in the combustion cycle of each cylinder #i. However, the each cylinder work amount Sneflt#i will vary if injection characteristics, friction characteristics or the like of the injectors16differ among the cylinders because of individual differences among the cylinders, aging deterioration or the like. For example, as shown inFIG. 5, the variation is caused such that the each cylinder work amount Sneflt#1of the first cylinder #1is greater than zero and the each cylinder work amount Sneflt#2of the second cylinder #2is less than zero.

The differences generated between the injection characteristics of the injector16or the like and ideal values in each cylinder or a degree of the variation in the injection characteristics among the cylinders can be grasped by calculating the each cylinder work amounts Sneflt#i. Therefore, in the present embodiment, the deviation amounts of the injection characteristics of the injectors16among the cylinders are learned as the deviation amounts of the each cylinder work amounts Sneflt#i among the cylinders by using the each cylinder work amounts Sneflt#i. The processing steps of the calculation of the deviation amounts are shown inFIG. 6. The ECU30performs the processing when the NE pulse rises.

InFIG. 6, first, Step S10calculates the time interval of NE pulses from the present NE interruption timing and previous NE interruption timing. Step S1calculates the present rotation speed Ne (instantaneous rotation speed) through inverse calculation of the time interval. Following Step S12calculates the instantaneous torque equivalent Neflt(i) by using above-described Expression (1).

Following Step S14determines the present NE pulse number. Steps S16-S22calculate the each cylinder work amounts Sneflt#i of the first to fourth cylinders #1-#4. If the NE pulse number is in the range of “0-17”, the each cylinder work amount Sneflt#1of the first cylinder #1is calculated at Step S16. If the NE pulse number is in the rage of “18-35”, the each cylinder work amount Sneflt#3of the third cylinder #3is calculated at Step S18. If the NE pulse number is in the range of “36-53”, the each cylinder work amount Sneflt#4of the fourth cylinder #4is calculated at Step S20. If the NE pulse number is in the range of “54-71”, the each cylinder work amount Sneflt#2of the second cylinder #2is calculated at Step S22.

Then, Step S24determines whether a learning condition is established. The learning condition includes a condition that the calculation of the each cylinder work amounts Sneflt#i of the entire cylinders #i is completed, a condition that a power transmission device (drive train) of a vehicle is in a predetermined state, a condition that environmental conditions are in predetermined states, and the like. The learning condition is determined to be established when all of the subordinate conditions are satisfied. For example, a condition that a crutch device of a drive train system is not in a half-crutched state may be used as the condition related to the drive train. A condition that engine coolant temperature is equal to or higher than predetermined warm-up completion temperature may be used as the environmental condition.

If the learning condition is not satisfied, the processing is ended immediately. If the learning condition is satisfied, the process goes to Step S26. Step S26increments a counter nitgr by one and calculates integration values Qlp#i for the respective cylinders #1-#4by using following Expression (4). The integration value Qlp#i is an integration value of the injection characteristic value calculated by multiplying the each cylinder work amount Sneflt#i by a conversion coefficient Ka. The integration value Qlp#i is for calculating the injection characteristic value by performing the averaging processing predetermined times when the counter nitgr reaches the predetermined times.
Qlp#i=Qlp#i+Ka×Sneflt#iExpression (4):

The each cylinder work amounts Sneflt#i are cleared to zero if the above-described processing is performed. Then, Step S28determines whether the counter nitgr reaches predetermined times kitgr. A value of the times kitgr is set at a value capable of inhibiting a calculation error due to a noise and the like during the calculation of the injection characteristic value, which is calculated by multiplying the each cylinder work amount Snefit#i by the conversion coefficient Ka. If nitgr≧kitgr, the process goes to Step S30. Step S30calculates the injection characteristic value Qlrn#i of each cylinder by following Expression (5). The integration value Qlp#i is cleared to zero and the counter nitgr is also cleared to zero.
Qlrn#i=Qlrn#i+Kb×Qlp#i/kitgrExpression (5):

In Expression (5), the integration value Qlp#i integrated the predetermined times kitgr is averaged, and the injection characteristic value Qlrn#i is updated with the averaged learning value. At this time, an error in the each cylinder work amount Sneflt#i at each time is absorbed by averaging the integration value Qlp#i. In addition, in Expression (5), the coefficient Kb may be set in a range greater than zero and not greater than one (0<Kb≦1), for example.

Then, Step S32calculates the learning value ΔQlrn#i by following Expression (6),

The deviation amount of the injection characteristic value Qlrn#i of each cylinder from the average value (ΣQlrn#i/4) of the injection characteristic values Qlrn#i of all the cylinders can be calculated by Expression (6).

Following Step S34writes the learning value ΔQlrn#i in a predetermined area of a constantly memory-holding device. The constantly memory-holding device is a storage device that holds data irrespective of ON/OFF of a main power source of the ECU30. For example, the constantly memory-holding device is a nonvolatile memory such as EEPROM that holds the data irrespective of existence or nonexistence of power supply or a backup memory that maintains an energized state irrespective of a state of an ignition switch.

Through the series of above-described processing, the variation in the injection characteristics of the injectors16can be learned.

As shown inFIGS. 2A and 2B, the rotor9is formed with the toothless portion9b. Accordingly, the necessary time and the speed of the rotation of the unit angle (10° CA) cannot be sensed with the use of the output of the crank angle sensor22at the toothless portion9b. Furthermore, because of the toothless portion9b, regularity of the magnetic flux intersecting the coil22aof the crank angle sensor22immediately after the tooth portion9aadjacent to the toothless portion9bmost approaches to the crank angle sensor22is disordered unlike the magnetic flux in the portion where the tooth portions9aare arranged regularly at the equal intervals.FIG. 7shows a sensing result near the toothless portion9bbased on the output of the crank angle sensor22.

Part (a) ofFIG. 7shows the number of the tooth portion9a(or toothless portion9b) of the rotor9closest to the crank angle sensor22. Part (b) ofFIG. 7shows the output waveform of the crank angle sensor22. Part (c) ofFIG. 7shows a pulse (waveform-shaped pulse) produced through waveform shaping of the output of the crank angle sensor22. As shown inFIG. 7, the value of the output of the crank angle sensor22fluctuates in accordance with whether the tooth portion9aapproaches to the crank angle sensor22or a portion between the tooth portions9aapproaches to the crank angle sensor22. The waveform-shaped pulse generated by carrying out the waveform shaping of the output signal of the crank angle sensor22is generated as a signal logically inverting at a point, at which the output of the crank angle sensor22crosses zero (i.e., at zero-cross point). In detail, the waveform-shaped pulse is a signal that rises at a point where the output of the crank angle sensor22crosses zero while decreasing and that falls at a point where the output of the crank angle sensor22crosses zero while increasing. Thus, the point where the center of the crank angle sensor22most approaches to the tooth portion9acan be conformed to the rising edge of the waveform-shaped pulse. Accordingly, the angle between the rising edges of the waveform-shaped pulses can be sensed as 10° CA.

Since the thirty-second tooth portion9ais adjacent to the toothless portion9b, the next interval of 10° CA from the center of the thirty-second tooth portion9acannot be sensed accurately (range B inFIG. 7). Although the interval between the thirty-second tooth portion9aand the toothless portion9bis equal to the interval between the tooth portions9a, the magnetic flux change is small while the crank angle sensor22is close to the toothless portion9b. Accordingly, the zero-cross point delays with respect to the actual 10° CA interval. Moreover, since the first tooth portion9ais also adjacent to the toothless portion9b, the 10° CA interval to the center of the first tooth portion9acannot be accurately sensed (range D inFIG. 7). Although the interval between the toothless portion9band the first tooth portion9ais equal to the interval between the tooth portions9a, the zero-cross point delays with respect to the actual 10° CA interval since the magnetic flux change is small while the crank angle sensor22is close to the toothless portion9b. As explained above, accurate sensing of the necessary time is impossible in range C inFIG. 7due to the toothless portion9b. In ranges A, E, accurate sensing of the necessary time is possible.

Thus, the accurate interval of 10° CA cannot be sensed based on the rising edges of the waveform-shaped pulses in the interval of 50° CA from the center of the thirty-second tooth portion9ato the center of the first tooth portion9a. The influence of the disturbance of the magnetic flux can be removed and the rotation speed can be accurately sensed by sensing the rotation speed at the interval of 50° CA during the learning of the deviation amounts of the injection characteristics among the cylinders. Thus, the influence due to the existence of the toothless portion9bcan be removed, and the rotation speed can be sensed appropriately. However, it is desirable to minimize the sampling interval of the rotation speed from the viewpoint of maintaining high accuracy of the learning of the deviation amounts of the injection characteristics among the cylinders shown inFIG. 6. If the rotation speed is sampled at the interval of 50° CA, the interval decided by the tooth portions9acannot be fully utilized although the tooth portions9aare formed on the rotor9at the interval of 10° CA.

Therefore, the system according to the present embodiment performs processing for estimating the times necessary for the rotation of the unit angles in the angular range of 50° CA including the toothless portion9b. Next, the processing will be explained in detail. The processing steps of the estimation according to the present embodiment are shown inFIG. 8. The ECU30repeatedly performs the processing, for example, in a predetermined cycle.

In a series of the processing shown inFIG. 8, first, Step S40senses a unit necessary time etnint[i] as a time necessary for rotation of each unit angle in a certain range of 50° CA, which is distant from (i.e., opposite to) the angular range of 50° CA including the toothless portion9aby 180° CA. Part (a) ofFIG. 9shows the waveform-shaped pulse in the certain range, and Part (b) ofFIG. 9shows the unit necessary times etnint[14]-etnint[18]. Step S42ofFIG. 8calculates an average value et50ave of the unit necessary times etnint[14]-etnint[18] by following Expression (7). Part (b) ofFIG. 9also shows the average value et50ave.
et50ave={etnint[14]+etnint[15]+etnint[16]+etnint[17]+etnint[18]}/5  Expression (7):

Following Step S46calculates an average value et50ave2 of the time necessary for the rotation of the angular range of 50° CA including the toothless portion9bper 10° CA. Part (c) ofFIG. 9shows the waveform-shaped pulse in the angular range. As shown in Part (d) ofFIG. 9, the average value et50ave2 is calculated by using the necessary time etnint[32] between the rising edges of the waveform-shaped pulse at the thirty-second tooth portion9aand the toothless portion9b, the necessary time etnint[33] between the rising edges of the waveform-shaped pulse at the toothless portion9b, and the necessary time etnint(0) between the rising edges of the waveform-shaped pulse at the toothless portion9band the first tooth portion9a. The summation of the necessary times etnint[32], etnint[33], etnint[0] accurately represents the time necessary for the rotation of the angular range of 50° CA including the toothless portion9b. Accordingly, the average value et50ave2 of the above-described angular range is calculated by using this summation. The average value et50ave2 is calculated by following Expression (9).
et50ave2={etnint[32]+etnint[33]+etnint[0]}/5  Expression (9):

Following Step S48estimates times etwrtn[32]-etwrtn[0] necessary for the rotation of respective unit angles of 10° CA in the angular range of 50° CA including the toothless portion9b. The times etwrtn[32]-etwrtn[0] are estimated by multiplying the average value et50ave2 by the ratios erto[14]-erto[18] respectively. The times etwrtn[32]-etwrtn[0] are calculated by following Expression (10).
etwrtn[32]=et50ave2×erto[14],
etwrtn[33]=et50ave2×erto[15],
etwrtn[34]=et50ave2×erto[16],
etwrtn[35]=et50ave2×erto[17],
etwrtn[0]=et50ave2×erto[18]  Expression (10):

The times etwrtn[32]-etwrtn[0] are provided by extending or shortening the unit necessary times etnint[14]-etnint[18] by the ratio of the average value et50ave2 to the average value et50ave. When the ratio is one, same magnification conversion is performed. That is, the unit necessary times etnint[14]-etnint[18] are multiplied by the ratio of the time necessary for the rotation of the angular range of 50° CA including the toothless portion9bto the time necessary for the rotation of the angular range between the fourteenth tooth portion9aand the nineteenth tooth portion9a.

In the present embodiment, the unit necessary times etnint[14]-etnint[18] are used as parameters correlated with a rotation fluctuation tendency in the angular range of 50° CA including the toothless portion9b. This correlation is specifically strong because the relationship between the angular range between the fourteenth tooth portion9aand nineteenth tooth portion9aand the operation step of the first cylinder #1coincides with the relationship between the angular range of 50° CA including the toothless portion9band the operation step of the fourth cylinder #4. Accordingly, the relationship between the angular range between the fourteenth tooth portion9aand the nineteenth tooth portion9aand the operation steps of all the cylinders #1-#4coincides with the relationship between the angular range of 50° CA including the toothless portion9band the operation steps of all the cylinders #1-#4except for the cylinder numbers. For this reason, the correlation can be set at one if it is assumed that the cyclic rotation fluctuation tendency exists as shown inFIG. 3A.

However, if the time necessary for the rotation of the angular range between the fourteenth tooth portion9aand the nineteenth tooth portion9adiffers from the time necessary for the rotation of the angular range of 50° CA including the toothless portion9b, absolute values of the rotation fluctuation differ. Therefore, the unit necessary times etnint[14]-etnint[18] are converted into equivalents of times necessary for the rotation of the unit angles in the angular range of 50° CA including the toothless portion9bbased on the difference between the time necessary for the rotation of the angular range between the fourteenth tooth portion9aand the nineteenth tooth portion9aand the time necessary for the rotation of the angular range of 50° CA including the toothless portion9b.

The rotation speed per 10° CA can be used in the processing shown inFIG. 6by estimating the times necessary for the rotation of the unit angles in the angular range of 50° CA including the toothless portion9bthrough a series of the processing shown inFIG. 8. Accordingly, the deviation amounts of the injection characteristics among the cylinders can be learned with high accuracy. The NE pulse used in the processing shown inFIG. 8is constituted by both of the waveform-shaped pulse and the pulse that has the interval of 10° CA and that is estimated by the processing shown inFIG. 8.

The present embodiment exerts following effects.

(1) The unit necessary times etnint[14]-etnint[18] are converted into the equivalents of the times necessary for the rotation of the unit angles in the angular range of 50° CA including the toothless portion9bbased on the difference between the time necessary for the rotation of the angular range between the fourteenth tooth portion9aand the nineteenth tooth portion9aand the time necessary for the rotation of the angular range of 50° CA including the toothless portion9b. Thus, the times etwrtn[32]-etwrtn[0] necessary for the rotation of the unit angles in the angular range of 50° CA including the toothless portion9bcan be estimated.

(2) The times etwrtn[32]-etwrtn[0] are calculated by extending or shortening the unit necessary times etnint[14]-etnint[18] by the ratio of the time necessary for the rotation of the angular range of 50° CA including the toothless portion9bto the time necessary for the rotation of the angular range between the fourteenth tooth portion9aand the nineteenth tooth portion9a. Thus, the sum total of the times etwrtn[32]-etwrtn[0] can be conformed to the sensed value of the time necessary for the rotation of the angular range of 50° CA including the toothless portion9b.

(3) The times etwrtn[32]-etwrtn[0] are estimated by multiplying the average value et50ave2 by the ratios erto[14]-erto[18] respectively. Thus, the values provided by extending or shortening the unit necessary times etnint[14]-etnint[18] by the ratio of the time necessary for the rotation of the angular range of 50° CA including the toothless portion9bto the time necessary for the rotation of the angular range between the fourteenth tooth portion9aand nineteenth tooth portion9acan be provided.

(4) The setting is made such that the relationship between the angular range referred to during the estimation and the operation steps of the respective cylinders coincides with the relationship between the angular range of 50° CA including the toothless portion9band the operation steps of the respective cylinders except for the cylinder numbers. Thus, the time necessary for the rotation of each unit angle in the angular range of 50° CA including the toothless portion9bcan be estimated with high accuracy.

(5) The angular range referred to during the estimation is the range distant from the angular range of 50° CA including the toothless portion9bby 180° CA. Thus, the relationship between the angular range referred to during the estimation and the operation steps of the respective cylinders can be conformed to the relationship between the angular range of 50° CA including the toothless portion9band the operation steps of the respective cylinders except for the cylinder numbers.

(6) The instantaneous torque equivalents are calculated by carrying out the filtering of the sensed values of the rotation speed of the crankshaft8of the engine at a single frequency set based on the combustion frequency of the engine. The injection characteristics of the injector16of the engine are learned based on the instantaneous torque equivalents calculated by the filtering. It is preferable to sample the sensed values of the rotation speed at the minimum angular interval in order to perform the learning with high accuracy. In the present embodiment, the rotation speed can be sampled at each unit angle decided by the tooth portions9aby estimating the time necessary for the rotation of the unit angle in the range including the toothless portion9b.

Next, a system according to a second embodiment of the present invention will be explained in reference to drawings. In the present embodiment, if omission (temporary interruption) of the processing related to the sensing of the time necessary for the rotation of each 10° CA between the tooth portions9aoccurs due to some causes, the time necessary for the rotation of the range, in which the omission of the processing related to the sensing occurs, is estimated. The processing steps of the estimation are shown inFIG. 10. The ECU30performs the processing shown inFIG. 10repeatedly, for example, in a predetermined cycle.

In a series of the processing, first, Step S50determines whether there is omission of the processing of sensing the time necessary for the rotation of each10° CA between the tooth portions9a. The omission of the processing can be caused when the computation load of the ECU30becomes excessive temporarily or can be caused by an influence of a noise, for example. If it is determined that there is omission of the processing related to the sensing, Steps S52-S60perform the processing similar to that of Steps S40-S48shown inFIG. 8. The processing of Steps S52-S60can be performed by replacing the range including the toothless portion according to the first embodiment with a range, in which the processing omission occurs, in the processing of Steps S40-S48. The series of the processing is once ended if Step S50is NO or if the processing of Step S60is completed.

A mode of the estimation performed by this processing about the time necessary for the rotation of each unit angle in the sensing processing omission range is shown inFIG. 11. If the sensing processing omission occurs in the angular range of 30° CA from the twenty-fourth tooth portion9ato the twenty-seventh tooth portion9aas shown in Part (d) ofFIG. 11, the estimation about the range, in which the sensing processing omission occurs, is performed by using this angular range and the range of 30° CA distant from the sensing processing omission range by 180° CA. That is, Step S52ofFIG. 10calculates each of unit necessary times etnint[6]-etnint[8] necessary for the rotation of the unit angles in the angular range distant from the sensing processing omission range by 180° CA. Then, Step S54calculates an average value etave of the unit necessary times etnint[6]-etnint[8] by following Expression (11).
etave={etnint[6]+etnint[7]+etnint[8]}/3  Expression (11):

Then, Step S56ofFIG. 10calculates ratios erto[6]-erto[8] of the unit necessary times etnint[6]-etnint[8] to the average value etave. The ratios erto[6]-erto[8] are defined by following Expression (12).
erto[6]=etnint[6]/etave,
erto[7]=etnint[7]/etave,
erto[8]=etnint[8]/etave  Expression (12):

Then, Step S58ofFIG. 10calculates an average value etave2 of the time necessary for the rotation of the angular range, in which the sensing processing omission occurs, per 10° CA. The average value etave2 is calculated by following Expression (13) using the time t1of the rising edge of the twenty-fourth waveform-shaped pulse and the time t2of the rising edge of the twenty-seventh waveform-shaped pulse.
etave2=(t2−t1)/3  Expression (13):

Then, Step S60ofFIG. 10estimates times etwrtn[24]-etwrtn[26] necessary for rotation of unit angles of the angular range, in which the sensing processing omission occurs, based on following Expression (14).
etwrtn[24]=etave2×erto[6],
etwrtn[25]=etave2×erto[7],
etwrtn[26]=etave2×erto[8]  Expression (14):

Thus, the times necessary for the rotation of the unit angles of the angular range, in which the sensing processing omission occurs, can be estimated appropriately.

The present embodiment exerts effects similar to the effects (1)-(6) of the first embodiment about the range, in which the sensing processing omission occurs.

In the present embodiment, the unit necessary time etnint[24] can be sensed at 360° CA before the sensing processing omission occurs. The time etwrtn[24] can be estimated by multiplying the previous ratio of the unit necessary time etnint[23] to the unit necessary time etnint [24] by the present unit necessary time etnint[23] through the method described in JP-A-2005-48644. However, with this method, the estimation accuracy of the time etwrtn[24] deteriorates compared to the method according to the present embodiment. That is, for example, in the case where an angular error occurs such that the position where the twenty-fourth tooth portion9ais deviated toward the twenty-fifth tooth position9a, the interval between the twenty-third tooth portion9aand the twenty-fourth tooth portion9ais long and the interval between the twenty-fourth tooth portion9aand the twenty-fifth tooth portion9ais short. Accordingly, a large error is caused in the previous ratio of the unit necessary time etnint[23] to the unit necessary time etnint[24].

In contrast, with the method according to the present embodiment, the influence because of the above-described angular error as of the estimation is alleviated compared to the method of JP-A-2005-48644 even if the angular error occurs in the sixth tooth portion9a. Moreover, with the method of JP-A-2005-48644, in order to perform the estimation, the above-described ratio has to be beforehand calculated before the sensing processing omission occurs. In contrast, with the method according to the present embodiment, the estimation can be performed even after the sensing processing omission occurs.

The above-described embodiments may be modified and implemented as follows, for example.

In the above-described embodiments, the time necessary for the rotation of each unit angle in the angular range requiring the estimation is estimated based on the time necessary for the rotation of the unit angle in the angular range distant from the requiring angular range by 180° CA. In the case of a five-cylinder diesel engine, it is preferable to set a distance of 144° CA therebetween such that the relationship between the angular range requiring the estimation and the operation steps of all the cylinders of the engine coincides with the relationship between the angular range used for the above-described estimation and the operation steps of all the cylinders except for the cylinder numbers.

In the example of the above-described four-cylinder engine, the angular range preceding by 540° CA may be used. The estimation accuracy is improved more as the angular range requiring the estimation and the angular range used for the estimation are closer to each other. Therefore, generally, in the engine that causes the combustion strokes at equal crank angle intervals, the angular range requiring the estimation and the angular range used for the estimation should be preferably distanced by 720/n° CA (n: number of cylinders). Thus, the relationship between the angular range requiring the estimation and the operation steps of all the cylinders can be conformed to the relationship between the angular range used for the above-described estimation and the operation steps of all the cylinders except for the cylinder numbers. At the same time, the angular range requiring the estimation and the angular range used for the estimation can be brought as close to each other as possible.

In the above-described embodiments, the ratio of the time (unit necessary time) necessary for the rotation per unit angle to the average value of the time (second necessary time) necessary for the rotation of the unit angle of the angular range used for the estimation is multiplied by the average value of the time necessary for the rotation of the angular range requiring the estimation per unit angle. Alternatively, for example, a ratio of the time (first necessary time) necessary for the rotation of the requiring angular range to the second necessary time may be multiplied by the unit necessary time to calculate the estimated value. Alternatively, differences between the unit necessary times and the average value of the unit necessary times may be multiplied by the ratios of the first necessary time to the second necessary time, and the summations of the multiplied values and the average value of the first necessary time per unit angle may be used as the estimated values. Alternatively, the difference between the first necessary time and the second necessary time may be converted into the difference per unit angle and the difference may be added as an offset amount to the unit necessary times to calculate the estimated values.

The usage of the estimated values of the times necessary for the rotation of the unit angles in the angular range is not limited to the learning of the deviation amounts of the fuel injection characteristics as illustrated inFIG. 6. For example, misfire detection can also be performed with high accuracy by using the above-described estimated values.

The internal combustion engine is not limited to the diesel engine but may be a gasoline engine.