Misfire determination apparatus for internal combustion engine

10309872 ยท 2019-06-04

Assignee

Inventors

Cpc classification

International classification

Abstract

A misfire determination apparatus includes a rotation variation amount acquisition unit that obtains a rotation variation amount (NE), which is a difference between a first angular velocity variation amount (1) obtained during an expansion stroke of an arbitrary cylinder of a multi-cylinder internal combustion engine and a second angular velocity variation amount (2) having been obtained in relation to a cylinder that has reached the expansion stroke N (where N is a positive integer) revolutions of a crankshaft before the arbitrary cylinder reaches the expansion stroke, and a misfire determination unit that, when the obtained rotation variation amount (NE) exceeds a predetermined threshold (NEth), determines that a misfire has not occurred in the internal combustion engine when a predetermined condition is established, and determines that a misfire has occurred in the internal combustion engine when the predetermined condition is not established.

Claims

1. A misfire determination for a multi-cylinder internal combustion engine, the misfire determination apparatus comprising: a crank position sensor that detects a rotation position of a crankshaft; and a processor programmed to: obtain, using an output from the crank position sensor, a crank angle velocity on the basis of a time required for the crankshaft to rotate through a predetermined rotation angle width from a first crank angle to a second crank angle during an expansion stroke of each cylinder of the multi-cylinder internal combustion engine; obtain an angular velocity variation amount, which is a difference in the crank angle velocity between two cylinders that reach the expansion stroke consecutively; obtain a rotation variation mount which is a difference between a first angular velocity variation amount and a second angular velocity variation amount, the first angular velocity variation amount being obtained during the expansion stroke of an arbitrary cylinder among respective cylinders, and the second angular velocity variation amount being obtained in relation to a cylinder that has reached the expansion stroke in a Nth revolution of the crankshaft before the arbitrary cylinder reaches the expansion stroke, the N being a positive integer; when the rotation variation amount exceeds a predetermined threshold: determine that a misfire has not occurred in the multi-cylinder internal combustion engine when a predetermined condition is established, the predetermined condition being established when (i) a magnitude of the second angular velocity variation amount is greater than a magnitude of the first angular velocity variation amount, and (ii) the second angular velocity variation amount has a sign by which a value of the rotation variation amount relating to the arbitrary cylinder is oriented in a direction in which the rotation variation amount exceeds the predetermined threshold; and determine that a misfire has occurred in the multi-cylinder internal combustion engine when the predetermined condition is not established, such that the misfire determination apparatus does not erroneously determine a misfire due to an effect of a temporary increase in an engine rotation velocity.

2. The misfire determination apparatus for the multi-cylinder internal combustion engine according to claim 1, wherein the processor is programmed to: repeat a misfire determination after replacing the rotation variation amount relating to the arbitrary cylinder with a value that does not exceed the predetermined threshold when the predetermined condition is established.

3. The misfire determination apparatus for the multi-cylinder internal combustion engine according to claim 1, wherein the processor is programmed to: repeat a misfire determination after replacing the rotation variation amount relating to the arbitrary cylinder with 0 when the predetermined condition is established.

Description

BRIEF DESCRIPTION OF THE DRAWINGS

(1) Features, advantages, and technical and industrial significance of exemplary embodiments of the invention will be described below with reference to the accompanying drawings, in which like numerals denote like elements, and wherein:

(2) FIG. 1 is a schematic view showing a configuration of an internal combustion engine to which a misfire determination apparatus according to an embodiment of the invention is applied;

(3) FIGS. 2A to 2D are time charts illustrating an operation of the misfire determination apparatus according to this embodiment of the invention;

(4) FIG. 3 is a flowchart showing a rotation variation amount acquisition routine executed by a central processing unit (CPU) shown in FIG. 1;

(5) FIG. 4 is a flowchart showing a misfire determination routine executed by the CPU shown in FIG. 1;

(6) FIGS. 5A to 5C are time charts illustrating an operation of a misfire determination apparatus according to a modified example of this embodiment of the invention;

(7) FIG. 6 is a flowchart showing a rotation variation amount acquisition routine according to a third modified example of this embodiment of the invention;

(8) FIG. 7 is a flowchart showing a misfire determination routine according to the third modified example of this embodiment of the invention;

(9) FIGS. 8A to 8C are time charts illustrating a misfire determination method employed in the related art; and

(10) FIGS. 9A to 9C are time charts illustrating a reason why a misfire is detected erroneously in the related art.

DETAILED DESCRIPTION OF EMBODIMENTS

(11) A misfire determination apparatus (also referred to as the determination apparatus hereafter) for an internal combustion engine according to an embodiment of the invention will be described below with reference to the drawings.

(12) The determination apparatus is applied to an internal combustion engine 10 shown in FIG. 1. The engine 10 is a spark ignition, four-stroke cycle reciprocating piston, V6 type gasoline internal combustion engine. The engine 10 includes an engine main body portion 20 and an intake/exhaust system 40.

(13) The engine main body portion 20 includes a cylinder head 21, a cylinder block 22, a fuel injection valve 23, an ignition apparatus 24, an intake valve 25, an exhaust valve 26, a piston 27, a connecting rod 28, a crankshaft 29, a timing rotor 31, a crank case 32, an intake cam 33, and an exhaust cam 34.

(14) A combustion chamber 35 is formed in the engine main body portion 20 by the cylinder head 21, the cylinder block 22, and the piston 27. An intake port 36 is formed in the engine main body portion 20 on an intake side of the cylinder head 21. The intake port 36 communicates with the combustion chamber 35. An exhaust port 37 is formed in the engine main body portion 20 on an exhaust side of the cylinder head 21. The exhaust port 37 communicates with the combustion chamber 35.

(15) The fuel injection valve 23 is configured to inject fuel into the intake port 36. The ignition apparatus 24 is disposed on the cylinder head 21 such that a spark generation portion thereof is exposed to the interior of the combustion chamber 35. The ignition apparatus 24 includes an igniter, an ignition coil, and a spark plug. When the intake cam 33 rotates, the intake valve 25 performs a reciprocating motion while following a cam nose of the intake cam 33, and as a result, a communicating portion between the combustion chamber 35 and the intake port 36 is opened and closed. When the exhaust cam 34 rotates, the exhaust valve 26 performs a reciprocating motion while following a cam nose of the exhaust cam 34, and as a result, a communicating portion between the combustion chamber 35 and the exhaust port 37 is opened and closed.

(16) The crankshaft 29 is coupled to the piston 27 via the connecting rod 28, which is housed in the crank case 32, and is configured to rotate in conjunction with a reciprocating motion of the piston 27.

(17) The timing rotor 31 is disposed on an axial end portion of the crankshaft 29 and configured to rotate integrally with the crankshaft 29. The timing rotor 31 includes outer teeth 31a formed at 30 intervals on an outer peripheral surface thereof. The outer teeth 31a of the timing rotor 31 include mechanical dimension errors such as a manufacturing error. Therefore, variation tends to be detected over a 360 CA period in a rotation synchronization signal of the timing rotor, which is output by a crank position sensor 51 to be described below.

(18) The intake/exhaust system 40 includes an intake passage portion 41 having an intake passage formed in an interior thereof, a throttle valve 42, and an exhaust passage portion 43 having an exhaust passage formed in an interior thereof. The intake passage portion 41 communicates with the intake port 36. The exhaust passage portion 43 communicates with the exhaust port 37.

(19) The throttle valve 42 is disposed in the intake passage portion 41 and configured so as to be driven by a throttle motor, not shown in the drawings. The throttle valve 42 is configured such that an opening thereof is modified in accordance with a motor control amount calculated by an electronic control apparatus (ECU) 50, to be described below, and output to the throttle motor. An intake air amount introduced into the intake passage portion 41 is adjusted in accordance with the opening of the throttle valve 42.

(20) Fuel injected into the intake port 36 from the fuel injection valve 23 forms an air-fuel mixture with the intake air in the intake passage portion 41. When the intake valve 25 opens in an intake stroke of the internal combustion engine 10, the air-fuel mixture is introduced into the combustion chamber 35. The air-fuel mixture introduced into the combustion chamber 35 is compressed in a compression stroke, and then ignited and burned/exploded by the ignition apparatus 24 at a predetermined timing. In other words, an expansion stroke begins. When the exhaust valve 26 opens in an exhaust stroke, burned exhaust gas is discharged to the exhaust passage portion 43. This series of strokes (a combustion cycle constituted by intake, compression, expansion, and exhaust) is executed in the six cylinders in succession so that the crankshaft 29 rotates continuously. Ignition is performed in the internal combustion engine 10 in order of a first cylinder #1, a second cylinder #2, a third cylinder #3, a fourth cylinder #4, a fifth cylinder #5, and a sixth cylinder #6.

(21) The ECU 50 is an electronic circuit formed from a conventional microcomputer, and includes a CPU, a read only memory (ROM), a random access memory (RAM), a backup RAM (a static RAM or a nonvolatile memory), an interface, and so on. The ECU 50 is electrically connected to the fuel injection valve 23, the ignition apparatus 24, the throttle motor, and so on.

(22) The ECU 50 is configured to transmit instruction (drive) signals to actuators of the fuel injection valve 23, the ignition apparatus 24, and so on in response to instructions from the CPU. Further, the ECU 50 is electrically connected to the crank position sensor 51, an air flow meter 52, an operating condition amount detection sensor 53, and so on, and is configured to receive input signals from these respective sensors.

(23) The crank position sensor 51 is a sensor that detects a rotation position of the crankshaft 29. The crank position sensor 51 is disposed in the crank case 32 such that a predetermined air gap G is formed between the crank position sensor 51 and the timing rotor 31. When the timing rotor 31 rotates in conjunction with the rotation of the crankshaft 29, the air gap G varies in size as the outer teeth 31a approach and retreat. As a result, magnetic flux by which a coil, not shown in the drawing, provided inside the crank position sensor 51 is energized increases and decreases such that electromotive force is generated in the coil. This electromotive force is oriented in opposite directions when the outer teeth 31a approach and retreat, and therefore forms an alternating current signal.

(24) The crank position sensor 51 further includes a waveform shaper, not shown in the drawing, that shapes the aforesaid alternating current signal into a predetermined pulse signal and outputs the pulse signal. In other words, the crank position sensor 51 is configured to output a pulse signal in synchronization with the passage of the outer teeth 31a. Note that a timing rotor on which outer teeth are formed at 10 intervals may also be applied as the timing rotor 31. In this case, pulse signal output by the crank position sensor 51 is frequency-divided by the ECU 50 so as to be converted into pulse output at 30 CA intervals.

(25) The air flow meter 52 is disposed in the intake passage portion 41 in a position further toward an intake upstream side than the throttle valve 42. The air flow meter 52 detects an amount of intake air flowing through the intake passage portion 41. The ECU 50 calculates an intake air amount Ga per unit time on the basis of an output signal from the air flow meter 52.

(26) The operating condition amount detection sensor 53 includes an accelerator pedal depression amount sensor that detects an accelerator pedal depression amount Accp, an intake air pressure sensor that detects an intake air pressure Pm in the intake passage portion 41 in a position downstream of the throttle valve 42, an air-conditioner sensor that detects an operative/inoperative condition of an air-conditioner of a vehicle in which the internal combustion engine 10 is installed, a shift lever sensor that detects an operation of a shift lever provided in the vehicle in which the internal combustion engine 10 is installed, and so on.

(27) (Operation)

(28) Next, an operation of the determination apparatus will be described. The determination apparatus determines whether or not a misfire has occurred on the basis of a rotation variation amount, which is an amount indicating a degree of variation in an internal combustion engine rotation velocity NE. First, the definition of the rotation variation amount will be described.

(29) As regards the rotation variation amount, first, similarly to JP 4-365958 A described above, a required rotation time from compression top dead center TDC to 30 CA after TDC, or in other words a 30 CA required time T30, is obtained during the expansion stroke of each cylinder.

(30) Next, the determination apparatus calculates an angular velocity n from the obtained 30 CA required time T30. Note that in this embodiment, n denotes the current cylinder, and n-1 denotes the cylinder that reaches the expansion stroke immediately before the current cylinder. The angular velocity n is expressed by a following equation. More specifically, the angular velocity on takes a smaller value when a misfire occurs than when combustion/explosion occurs normally.
n=30/T30(6)

(31) An angular velocity variation amount is defined by a following equation as a difference between an angular velocity k-1 in a cylinder in which ignition is performed approximately 120 CA before an arbitrary cylinder used as a reference (in other words, a cylinder that reaches the expansion stroke immediately before the arbitrary cylinder) and an angular velocity k in the arbitrary cylinder.
=k-1k(7)

(32) An angular velocity variation amount defined specifically as a difference between an angular velocity n-1 in a cylinder in which ignition is performed approximately 120 CA before a cylinder (the current cylinder) currently in the expansion stroke (in other words, a cylinder that reaches the expansion stroke immediately before the current cylinder) and the angular velocity con in the current cylinder will be referred to as a first angular velocity variation amount 1. The first angular velocity variation amount 1 is expressed by a following equation.
1=n-1n(8)

(33) Further, an angular velocity variation amount defined as a difference between an angular velocity n-7 in a cylinder in which ignition is performed approximately 840 CA before the current cylinder used as the reference and an angular velocity n-6 in a cylinder in which ignition is performed approximately 720 CA before the current cylinder used as the reference (in other words, the same cylinder as the current cylinder in the four-stroke cycle internal combustion engine) will be referred to as a second angular velocity variation amount 2. The second angular velocity variation amount 2 is expressed by a following equation.
2=n-7n-6(9)

(34) The rotation variation amount NE is defined as a difference between the first angular velocity variation amount 1 and the second angular velocity variation amount 2. In other words, the rotation variation amount NE is expressed by a following equation.
NE=12=(n-1n)(n-7n-6)(10)

(35) Hence, the determination apparatus calculates the rotation variation amount NE as a difference in the angular velocity variation amount over a 720 CA period (a period of an integral multiple of 360 CA). More specifically, the determination apparatus calculates the angular velocity variation amount from the 30 CA required times T30 obtained using identical outer teeth of the timing rotor 31, and calculates the difference between the obtained 30 CA required times T30 as the rotation variation amount NE. Therefore, even when the pitch of the outer teeth 31a of the timing rotor 31 is not set accurately at equal intervals due to a manufacturing error, for example, the calculated rotation variation amount NE is not affected by the manufacturing error in the timing rotor 31. As a result, the determination apparatus can obtain the rotation variation amount NE accurately.

(36) Further, the determination apparatus calculates the difference in the angular velocity variation amount over a 720 CA period (a period in which the crankshaft 29 performs two revolutions), and therefore variation caused by manufacturing errors among the cylinders of the internal combustion engine 10 can be eliminated in addition to variation caused by the manufacturing error in the timing rotor 31.

(37) Next, a specific operation of the invention will be described with reference to FIGS. 2A to 2D. FIGS. 2A to 2D are time charts showing relationships between the angular velocity, shown in FIG. 2A, the angular velocity variation amount, shown in FIG. 2B, the rotation variation amount, shown in FIG. 2C, and a misfire determination rotation variation amount, shown in FIG. 2D. Note that FIGS. 2A to 2D show an example in which the angular velocity increases in the first cylinder #1.

(38) As can be seen in FIGS. 2A to 2D, the internal combustion engine is operated at an approximately average rotation velocity (an angular velocity ave), but for some reason the angular velocity increases when the first cylinder #1 reaches the expansion stroke ( (3) in FIG. 2A).

(39) As described above, the first angular velocity variation amount 1 is the difference between the angular velocity n-1 ( (2)) in the cylinder one cylinder before the current cylinder (the first cylinder #1) and the angular velocity n ( (3)) of the current cylinder, and therefore an absolute value thereof takes a comparatively large negative value (d3 in FIG. 2B). As described above, the second angular velocity variation amount 2 is the difference between the angular velocity n-7 in the cylinder 840 CA before the current cylinder and the angular velocity n-6 of the cylinder 720 CA before the current cylinder. The internal combustion engine runs at the average angular velocity ave, and therefore, although not shown in FIGS. 2A to 2D, the value of the second angular velocity variation amount 2 is substantially 0. As described above, the rotation variation amount NE is the difference between the first angular velocity variation amount 1 (d3) and the second angular velocity variation amount 2 (not shown), and therefore an absolute value thereof takes a comparatively large negative value (dN3 in FIG. 2C). As a result, the rotation variation amount NE (dN3) in the first cylinder #1 does not exceed a predetermined threshold NEth.

(40) In the second cylinder #2, which reaches the expansion stroke next, the angular velocity n ( (4)) has not yet recovered to the average angular velocity ave, and is still higher than the average angular velocity ave. At this time, the angular velocity variation amount (d4) takes a comparatively small positive value, and the rotation variation amount NE (dN4) likewise takes a comparatively small positive value. In this case, the rotation variation amount NE (dN4) in the second cylinder #2 does not exceed the predetermined threshold NEth.

(41) In the third cylinder #3, which reaches the expansion stroke next, the angular velocity n ( (5)) has recovered to the substantially average angular velocity ave. At this time, the angular velocity variation amount (d5) takes a comparatively small positive value, and therefore the rotation variation amount NE (dN5) in the third cylinder #3 takes a comparatively small positive value that does not exceed the predetermined threshold NEth.

(42) When the first cylinder #1 reaches the expansion stroke again, the angular velocity n ( (9)) is at the substantially average angular velocity ave, and the angular velocity n-1 ( (8)) in the immediately preceding cylinder (the sixth cylinder #6) is also at the substantially average angular velocity ave. Hence, the value of the angular velocity variation amount (d9) at this time is substantially 0. Moreover, as regards the rotation variation amount NE (dN9) at this time, the angular velocity variation amount in the current cylinder is calculated as the first angular velocity variation amount 1 (d9) while the angular velocity variation amount in the cylinder 720 CA before the current cylinder is calculated as the second angular velocity variation amount 2 (d3). The absolute value of the second angular velocity variation amount 2 (d3) at this time takes a comparatively large negative value, and therefore the rotation variation amount NE (dN9) at this time takes a comparatively large positive value that exceeds the predetermined threshold NEth. Hence, when a misfire determination is performed on the basis of the calculated rotation variation amount NE, a misfire is determined to have occurred in the first cylinder #1 even though a misfire has not occurred.

(43) Next, therefore, the determination apparatus determines whether or not the first angular velocity variation amount 1 and the second angular velocity variation amount 2 satisfy both of two relationships (a predetermined condition) described below in order to calculate the misfire determination rotation variation amount NEmd for use in the misfire determination.

(44) A first predetermined condition is satisfied when the magnitude of the first angular velocity variation amount 1 is smaller than the magnitude of the second angular velocity variation amount 2. In other words, the first predetermined condition is satisfied when
|1|<|2|(11)

(45) A second predetermined condition is satisfied when the second angular velocity variation amount 2 has a sign by which the value of the rotation variation amount NE in the cylinder in the expansion stroke is oriented in a direction for exceeding the predetermined threshold NEth. In this example, the predetermined threshold NEth takes a positive value, and therefore the direction for exceeding the predetermined threshold NEth is a direction for increasing the value of the rotation variation amount NE in a positive direction. Accordingly, in this example, the second angular velocity variation amount 2 is capable of increasing the value of the rotation variation amount NE in a positive direction when the second angular velocity variation amount 2 has a negative sign. In other words, the second condition is expressed by a following equation.
2<0(12)

(46) In this case, therefore, the predetermined condition (the first condition and the second condition) can be expressed by a following equation.
|1|<2(13)

(47) In this example (the example shown in FIGS. 2A to 2D), the first angular velocity variation amount 1 (d9) and the second angular velocity variation amount 2 (d3) satisfy the relationship shown in Equation (13). Accordingly, the determination apparatus replaces the value of the rotation variation amount NE in the current cylinder (the first cylinder #1) with 0, and sets 0 as the misfire determination rotation variation amount NEmd (dm9 in FIG. 2D). The reason why it is possible to perform the misfire determination on the basis of the above condition (the condition shown in Equation (13)) is as follows.

(48) When the magnitude (the absolute value) of the first angular velocity variation amount 1 (d9) including the angular velocity n ( (9)) is smaller than 2, which is obtained by inverting the sign of the second angular velocity variation amount 2 (d9) including the angular velocity n-6 ( (3)) (in other words, when Equation (13) is satisfied), a temporary increase in the angular velocity n-6 ( (3)) during acquisition of the angular velocity n-6 may be said to be the main cause of the increase in the rotation variation amount NE. Therefore, the probability that a misfire has not occurred at this time may be considered high. When, on the other hand, the magnitude (the absolute value) of the first angular velocity variation amount 1 equals or exceeds 2 obtained by inverting the sign of the second angular velocity variation amount 2 (in other words, when Equation (13) is not satisfied), the probability that the value of the rotation variation amount NE has increased due to a misfire that is to be detected may be considered high. The misfire determination rotation variation amount NEmd for use in the misfire determination can therefore be calculated in the manner described above.

(49) By applying the calculated misfire determination rotation variation amount NEmd to a misfire determination routine to be described below, the determination apparatus can determine whether or not a misfire has occurred without determining erroneously that a misfire has occurred even though a misfire has not occurred.

(50) Next, actual specific operations performed by the determination apparatus will be described. The CPU of the ECU 50 executes a rotation variation amount acquisition routine shown on a flowchart in FIG. 3 on an arbitrary cylinder of the internal combustion engine 10 when the CA of the arbitrary cylinder reaches compression top dead center TDC.

(51) Hence, when the CA of one of the cylinders reaches compression top dead center TDC of the corresponding cylinder, the CPU starts processing from step 300 in FIG. 3, advances to step 310, executes processing of step 310 to step 340 in sequence, as described below, and then advances to step 350.

(52) In step 310, the CPU obtains the 30 CA required time T30 (the time required for the CA of the arbitrary cylinder to rotate from TDC to 30 CA after TDC). In step 320, the CPU obtains the angular velocity n relating to the current cylinder in accordance with Equation (6). In step 330, the CPU obtains the angular velocity variation amount relating to the current cylinder in accordance with Equation (7). In step 340, the CPU obtains the rotation variation amount NE relating to the current cylinder in accordance with Equation (10).

(53) Note that the CPU stores the angular velocity n, the angular velocity variation amount , and the rotation variation amount NE obtained respectively in steps 320 to 340 in the RAM in association with the cylinder number of the current cylinder.

(54) Next, the CPU determines in step 350 whether or not the first angular velocity variation amount 1 and the second angular velocity variation amount 2 satisfy the condition (|1|<2) of Equation (13). According to the assumed condition, Equation (13) is satisfied. Therefore, after obtaining Yes in the determination of step 350, the CPU advances to step 360 and sets the value of the misfire detection determination rotation variation amount NEmd at 0. The CPU then advances to step 395, where the current routine is terminated.

(55) The CPU of the ECU 50 also executes a misfire determination routine shown on a flowchart in FIG. 4 on an arbitrary cylinder of the internal combustion engine 10 when the CA of the arbitrary cylinder reaches 60 CA after compression top dead center TDC.

(56) Hence, when the CA of one of the cylinders reaches 60 CA after compression top dead center TDC of the corresponding cylinder, the CPU starts processing from step 400 of FIG. 4 and then advances to step 410. In step 410, the CPU determines whether or not an execution condition for determining whether a misfire has occurred is established.

(57) During the misfire determination, the internal combustion engine rotation velocity NE is preferably in a comparatively stable condition. Accordingly, the execution condition may be set to be established when, for example, a predetermined time has elapsed after switching the air-conditioner between the operative condition and the inoperative condition, a predetermined time has elapsed following a shift level operation, and so on. Further, the misfire determination is not executed during a fuel cut and in extremely low temperatures (lower than 10 C.).

(58) When the execution condition is not established, the CPU obtains No in the determination of step 410 and advances directly to step 495, where the current routine is terminated. When the execution condition is established, on the other hand, the CPU executes processing described below. Several cases will be described below on the assumption that the execution condition remains established throughout.

(59) First, a first case in which the misfire determination rotation variation amount NEmd does not exceed the predetermined threshold NEth will be described. After obtaining Yes in the determination of step 410, the CPU advances to step 420 and counts a total determination number counter Ctotal up. The total determination number counter Ctotal is set at 0 in an initial routine, not shown in the drawings, that is executed separately when an ignition key switch is switched from OFF to ON. The total determination number counter Ctotal indicates the number of times the processing of this routine has been performed to determine whether or not a misfire has occurred.

(60) Next, the CPU advances to step 430 and determines whether or not the misfire determination rotation variation amount NEmd obtained in the rotation variation amount acquisition routine shown in FIG. 3 is larger than the predetermined threshold NEth. In accordance with the aforesaid assumption, the misfire determination rotation variation amount NEmd does not exceed the predetermined threshold NEth. Therefore, the CPU obtains No in the determination of step 430 and advances directly to step 450. In step 450, the CPU determines whether or not the total determination number counter Ctotal equals or exceeds 2000.

(61) When, at this time, the value of the total determination number counter Ctotal is smaller than 2000, the CPU obtains No in the determination of step 450 and advances directly to step 495, where the current routine is terminated. When the routine is executed thereafter, the total determination number counter Ctotal is counted up in step 420 every time the execution condition of step 410 is established.

(62) Next, a second case in which the misfire determination rotation variation amount NEmd exceeds the predetermined threshold NEth will be described. In this case, the CPU obtains Yes in the determination of step 430 after counting up the total determination number counter Ctotal in step 420, and then advances to step 440. In step 440, the CPU counts a misfire number counter Cmis up. The misfire number counter Cmis is set at 0 in the aforementioned initial routine. Accordingly, the value of the misfire number counter Cmis is increased by 1 from 0 every time Yes is obtained in the determination of step 430.

(63) The CPU then advances to step 450. When the value of the total determination number counter Ctotal is smaller than 2000, the CPU obtains No in the determination of step 450 and advances directly to step 495, where the current routine is terminated. When the routine is executed thereafter, the total determination number counter Ctotal is counted up in step 420 every time the execution condition of step 410 is established.

(64) When the processing (the first case and the second case) described above is executed repeatedly, the value of the total determination number counter Ctotal reaches 2000. In this case, when the CPU advances to step 450, the CPU obtains Yes in the determination of step 450 and then advances to step 460. In step 460, the CPU determines whether or not the value of the misfire number counter Cmis equals or exceeds a prescribed abnormal number (30, for example).

(65) When the value of the misfire number counter Cmis equals or exceeds the prescribed abnormal number, the CPU obtains Yes in the determination of step 460 and then advances to step 470. In step 470, the CPU determines that a misfire abnormality (a misfire) has occurred. At this time, the CPU illuminates a warning lamp provided in a vehicle cabin, and writes information indicating that a misfire has occurred to the backup RAM. Next, the CPU advances to step 480 in order to set the respective values of the total determination number counter Ctotal and the misfire number counter Cmis at 0, and then advances to step 495, where the current routine is terminated.

(66) When the value of the misfire number counter Cmis is smaller than the prescribed abnormal number, on the other hand, the CPU obtains No in the determination of step 460 and advances directly to step 480. The CPU then advances to step 495, where the current routine is terminated. At this time, the CPU may write information indicating that a misfire abnormality is determined not to have occurred to the backup RAM.

(67) As described above, the determination apparatus includes the angular velocity variation amount acquisition unit that obtains the CA velocity n (step 320 in FIG. 3) on the basis of the time (the required rotation time T30) required for the crankshaft 29 to rotate through a predetermined rotation angle width from a first CA to a second CA during the expansion stroke of each cylinder (the first cylinder #1 to the sixth cylinder #6) of the multi-cylinder (six-cylinder, for example) internal combustion engine, and obtains the angular velocity variation amount (step 330 in FIG. 3), which is the difference in the CA velocity n between two cylinders that reach the expansion stroke consecutively, the rotation variation amount acquisition unit that obtains the rotation variation amount NE (step 340 in FIG. 3), which is the difference between the first angular velocity variation amount 1 obtained by the angular velocity variation amount acquisition unit during the expansion stroke of an arbitrary cylinder among the respective cylinders and the second angular velocity variation amount 2 obtained by the angular velocity variation amount acquisition unit in relation to the cylinder that reaches the expansion stroke N (where N is a positive integer; in this case N=2) revolutions of the crankshaft 29 before the expansion stroke of the arbitrary cylinder, and the misfire determination unit that (1) determines that a misfire has not occurred in the internal combustion engine (obtains No in the determination of step 430 in FIG. 4 after the misfire determination rotation variation amount NEmd is set at 0 in step 360 of FIG. 3) when the rotation variation amount NE obtained by the rotation variation amount acquisition unit exceeds the predetermined threshold NEth and the predetermined condition is established (when Yes is obtained in the determination of step 350 in FIG. 3), the predetermined condition being established when the magnitude |2| of the second angular velocity variation amount 2 is greater than the magnitude |1| of the first angular velocity variation amount 1 and the second angular velocity variation amount 2 has a sign by which the value NE of the rotation variation amount in the arbitrary cylinder is oriented in a direction for exceeding the predetermined threshold NEth, and (2) determines that a misfire has occurred in the internal combustion engine (obtains Yes in the determination of step 430 in FIG. 4 after the misfire determination rotation variation amount NEmd is set at the rotation variation amount NE in step 370 of FIG. 3) when the rotation variation amount NE obtained by the rotation variation amount acquisition unit exceeds the predetermined threshold NEth and the predetermined condition is not established (when No is obtained in the determination of step 350 in FIG. 3).

(68) The invention is not limited to the embodiment described above, and various modified examples may be employed within the scope of the invention.

(69) A first modified example will now be described. The angular velocity variation amount defined by Equation (7) is calculated as a value obtained by subtracting the angular velocity k in the current cylinder from the angular velocity k-1 in the cylinder one before the current cylinder, but the angular velocity variation amount is not limited thereto, and as shown in a following equation, may be calculated by subtracting the angular velocity k-1 in the cylinder one before the current cylinder from the angular velocity k in the current cylinder. In this case, an angular velocity variation amount is expressed by a following equation.
=kk-1(14)

(70) In this case, a first angular velocity variation amount 1, a second angular velocity variation amount 2, and a rotation variation amount NE are expressed by a following equation.
NE=12=(nn-1)(n-6n-7)(15)

(71) This will now be described with reference to FIGS. 5A to 5C. In this case, as shown in FIGS. 5A to 5C, when a misfire occurs in an arbitrary cylinder (the third cylinder #3), the rotation variation amount NE (dN5) in the arbitrary cylinder takes a large negative value (i.e. the sign thereof is inverted relative to the rotation variation amount NE of the embodiment described above). Accordingly, a determination threshold NEth takes a negative value, and when the rotation variation amount NE falls below the determination threshold NEth, a misfire is determined to have occurred.

(72) In this case, the second condition is applied to this modified example as follows. Since the predetermined threshold NEth takes a negative value, the direction for exceeding the predetermined threshold NEth is a direction for reducing the value of the rotation variation amount NE in a negative direction. Hence, in this example, the second angular velocity variation amount 2 is capable of reducing the value of the rotation variation amount NE in a negative direction when the sign of the second angular velocity variation amount 2 is positive. In other words, the second condition is expressed by a following equation.
2>0(16)

(73) In this case, therefore, the determination condition of step 350 on the flowchart shown in FIG. 3 is replaced by a following equation.
|1|<2(17)

(74) Next, a second modified example will be described. In the embodiment described above, the value of the rotation variation amount NE is replaced with 0 when the first angular velocity variation amount and the second angular velocity variation amount satisfy the predetermined condition of Equation (13). However, the replacement value may be a value other than 0 as long as the value does not exceed the determination threshold set at that time.

(75) Next, a third modified example will be described. In the embodiment described above, when the predetermined condition (|1|<2) is established, the misfire determination rotation variation amount NEmd obtained by replacing the rotation variation amount NE at that time with 0 is calculated, whereupon the misfire determination is executed by comparing the misfire determination rotation variation amount NEmd with the predetermined threshold NEth. The invention is not limited thereto, however, and instead, when the predetermined condition is established, a misfire may be determined not to have occurred even in a case where the rotation variation amount NE exceeds the predetermined threshold NEth. Specific operations performed in this case will be described below.

(76) The CPU of the ECU 50 executes a rotation variation amount acquisition routine shown on a flowchart in FIG. 6 on an arbitrary cylinder of the internal combustion engine 10 when the CA of the arbitrary cylinder reaches compression top dead center TDC.

(77) Hence, when the CA of one of the cylinders reaches compression top dead center TDC of the corresponding cylinder, the CPU starts processing from step 600 in FIG. 6, advances to step 610, executes processing of step 610 to 640 in sequence, as described below, and then advances to step 695, where the current routine is terminated.

(78) In step 610, the CPU obtains the 30 CA time T30 (the time required for the CA of the arbitrary cylinder to rotate from TDC to 30 CA after TDC). In step 620, the CPU obtains the angular velocity con relating to the current cylinder in accordance with Equation (6). In step 630, the CPU obtains the angular velocity variation amount relating to the current cylinder in accordance with Equation (7). In step 640, the CPU obtains the rotation variation amount NE relating to the current cylinder in accordance with Equation (10).

(79) Note that the CPU stores the angular velocity n, the angular velocity variation amount , and the rotation variation amount NE obtained respectively in steps 620 to 640 in the RAM in association with the cylinder number of the current cylinder.

(80) The CPU of the ECU 50 also executes a misfire determination routine shown on a flowchart in FIG. 7 on an arbitrary cylinder of the internal combustion engine 10 when the CA of the arbitrary cylinder reaches 60 CA after compression top dead center TDC.

(81) Hence, when the CA of one of the cylinders reaches 60 CA after compression top dead center TDC of the corresponding cylinder, the CPU starts processing from step 700 of FIG. 7 and then advances to step 710. In step 710, the CPU determines whether or not an execution condition for determining whether a misfire has occurred is established.

(82) When the execution condition is not established, the CPU obtains No in the determination of step 710 and advances directly to step 795, where the current routine is terminated. When the determination execution condition is established, on the other hand, the CPU executes processing described below. Several cases will be described below on the assumption that the execution condition remains established throughout.

(83) First, a first case in which the rotation variation amount NE does not exceed the predetermined threshold NEth will be described. After obtaining Yes in the determination of step 710, the CPU advances to step 720 and counts the total determination number counter Ctotal up.

(84) Next, the CPU advances to step 730 and determines whether or not the rotation variation amount NE obtained in the rotation variation amount acquisition routine shown in FIG. 6 is larger than the predetermined threshold NEth. In accordance with the aforementioned assumption, the rotation variation amount NE does not exceed the predetermined threshold NEth. Therefore, the CPU obtains No in the determination of step 730 and advances directly to step 760. In step 760, the CPU determines whether or not the total determination number counter Ctotal equals or exceeds 2000.

(85) When, at this time, the value of the total determination number counter Ctotal is smaller than 2000, the CPU obtains No in the determination of step 760 and advances directly to step 795, where the current routine is terminated. When the routine is executed thereafter, the total determination number counter Ctotal is counted up in step 720 every time the execution condition of step 710 is established.

(86) Next, a second case in which the rotation variation amount NE exceeds the predetermined threshold NEth such that the predetermined condition (|1|<2) is established will be described. In this case, the CPU obtains Yes in the determination of step 730 after counting up the total determination number counter Ctotal in step 720, and then advances to step 740. In step 740, the CPU determines whether or not the predetermined condition shown in Equation (13) is established. In accordance with the assumption, the predetermined condition is established, and therefore the CPU obtains Yes in the determination of step 740 and advances to step 750. In step 750, the CPU counts the misfire number counter Cmis up. The misfire number counter Cmis is set at 0 in a separately executed initial routine. Accordingly, the value of the misfire number counter Cmis is increased by 1 from 0 every time Yes is obtained in the determination of step 740.

(87) The CPU then advances to step 760. When the value of the total determination number counter Ctotal is smaller than 2000, the CPU obtains No in the determination of step 760 and advances directly to step 795, where the current routine is terminated. When the routine is executed thereafter, the total determination number counter Ctotal is counted up in step 720 every time the execution condition of step 710 is established.

(88) In a third case, the rotation variation amount NE exceeds the predetermined threshold NEth but the predetermined condition (|1|<2) is not established. In this case, the CPU obtains Yes in the determination of step 730 after counting up the total determination number counter Ctotal in step 720, and then advances to step 740. Since the predetermined condition is not established, the CPU obtains No in the determination of step 740. The CPU then advances directly to step 760. When the value of the total determination number counter Ctotal is smaller than 2000, the CPU obtains No in the determination of step 760 and advances directly to step 795, where the current routine is terminated. When the routine is executed thereafter, the total determination number counter Ctotal is counted up in step 720 every time the execution condition of step 710 is established.

(89) When the processing (the first case, the second case, and the third case) described above is executed repeatedly, the value of the total determination number counter Ctotal reaches 2000. In this case, when the CPU advances to step 760, the CPU obtains Yes in the determination of step 760 and then advances to step 770. In step 770, the CPU determines whether or not the value of the misfire number counter Cmis equals or exceeds the prescribed abnormal number (30, for example).

(90) When the value of the misfire number counter Cmis equals or exceeds the prescribed abnormal number, the CPU obtains Yes in the determination of step 770 and then advances to step 780. In step 780, the CPU determines that a misfire abnormality (a misfire) has occurred. At this time, the CPU illuminates the warning lamp provided in the vehicle cabin, and writes information indicating that a misfire has occurred to the backup RAM. Next, the CPU advances to step 790 in order to set the respective values of the total determination number counter Ctotal and the misfire number counter Cmis at 0, and then advances to step 795, where the current routine is terminated.

(91) When the value of the misfire number counter Cmis is smaller than the prescribed abnormal number, on the other hand, the CPU obtains No in the determination of step 770 and advances directly to step 790. The CPU then advances to step 795, where the current routine is terminated.

(92) In another modified example of the embodiment, the determination apparatus may be applied to an internal combustion engine other than a six-cylinder engine (for example, a four-cylinder engine, a twelve-cylinder engine, and so on).

(93) Furthermore, in this embodiment, the required rotation time is determined as the time T30 required for the crankshaft to rotate 30, but the required rotation time may be determined as a time required for the crankshaft to rotate by an angle other than 30.

(94) Moreover, in the case of a six-cylinder internal combustion engine, the required rotation time may be a time required for the crankshaft to rotate from X CA to Y CA after compression top dead center (where X and Y are both between 0 and 120 CA. Further, in the case of a four-cylinder internal combustion engine, the required rotation time may be a time required for the crankshaft to rotate from X CA to Y CA after compression top dead center (where X and Y are both between 0 and 180 CA. In other words, the required rotation time may be set at any value which correlates with the CA velocity during the expansion stroke of an arbitrary cylinder and from which it is possible to tell the difference between a case in which normal combustion is underway in the arbitrary cylinder and a case in which a misfire has occurred in the arbitrary cylinder.

(95) The predetermined threshold NEth may take a fixed value or a value that varies on the basis of at least one of the engine rotation velocity NE and an engine load (for example, the intake air pressure Pm, the accelerator pedal depression amount Accp, the intake air amount Ga, and so on).

(96) The value of the total determination number counter Ctotal is not limited to 2000, and may be a value other than 2000.

(97) The total number of determinations does not have to be counted. In other words, step 420 or step 720 and step 450 or step 760 may be omitted from the misfire determination routine in FIG. 4 or FIG. 7.