JPH0417756A - Misfire diagnostic device of internal combustion engine - Google Patents

Misfire diagnostic device of internal combustion engine

Info

Publication number
JPH0417756A
JPH0417756A JP11679990A JP11679990A JPH0417756A JP H0417756 A JPH0417756 A JP H0417756A JP 11679990 A JP11679990 A JP 11679990A JP 11679990 A JP11679990 A JP 11679990A JP H0417756 A JPH0417756 A JP H0417756A
Authority
JP
Japan
Prior art keywords
misfire
cylinder
value
engine
deviation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP11679990A
Other languages
Japanese (ja)
Inventor
Shinpei Nakaniwa
伸平 中庭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Unisia Automotive Ltd
Original Assignee
Japan Electronic Control Systems Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Japan Electronic Control Systems Co Ltd filed Critical Japan Electronic Control Systems Co Ltd
Priority to JP11679990A priority Critical patent/JPH0417756A/en
Publication of JPH0417756A publication Critical patent/JPH0417756A/en
Pending legal-status Critical Current

Links

Landscapes

  • Ignition Installations For Internal Combustion Engines (AREA)
  • Electrical Control Of Air Or Fuel Supplied To Internal-Combustion Engine (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)

Abstract

PURPOSE:To diagnose misfire with accuracy by diagnosing both of two cylinders of stroke phase difference corresponding to one cycle of engine rotation as misfiring if misfire is not diagnosed and exhaust component density shows a variation characteristic of misfire. CONSTITUTION:A misfire diagnostic means diagnoses misfire according to the deviation per one cycle of engine rotation or the deviation of this deviation and so cannot diagnose misfire when two cylinders of stroke phase difference corresponding to one cycle of engine rotation both misfire. However, the density of exhaust components must show a variation characteristic of misfire and an exhaust component density detecting means is interposed in the collected portion of an exhaust system and is hard to specify a misfiring cylinder but is capable of detecting generation of misfire. When the exhaust component density shows a variation corresponding to misfire though misfire is not diagnosed according to the cycle of rotation, the two cylinders of stroke phase difference corresponding to one cycle of engine rotation neither of which can be diagnosed by the misfire diagnostic means are therefore both regarded as misfiring.

Description

【発明の詳細な説明】 〈産業上の利用分野〉 本発明は内燃機関の失火診断装置に関し、詳しくは、機
関回転周期の機関1回転毎の偏差又は該偏差の偏差に基
づいて失火診断する装置における失火診断漏れを防止す
るための技術に関する。
DETAILED DESCRIPTION OF THE INVENTION <Industrial Application Field> The present invention relates to a misfire diagnosis device for an internal combustion engine, and more specifically, a device for diagnosing a misfire based on a deviation of the engine rotation period per engine revolution or a deviation of the deviation. The present invention relates to a technique for preventing omissions in misfire diagnosis.

〈従来の技術〉 内燃機関の失火を診断する装置としては、従来、各気筒
毎に筒内圧を直接に検出して失火診断する装置などが提
案されているが、より簡便な構成で失火を診断できる装
置として、機関回転変動から失火を診断する装置が先に
種々提案されており、例えばクランク角センサから気筒
間の行程位相差(TDC周期)に相当するクランク角度
(4気筒では180’、6気筒では120’ )毎に出
力される検出信号の周期を計測し、この周期の機関1回
転毎の偏差又はこの偏差の偏差に基づいて失火を診断す
るよう構成した装置が提案されている(特願平1−27
5046号参照)。
<Prior Art> As a device for diagnosing a misfire in an internal combustion engine, devices that directly detect the in-cylinder pressure for each cylinder and diagnose a misfire have been proposed. Various devices have been previously proposed that diagnose misfires based on engine rotation fluctuations. For example, a crank angle sensor (180' for 4 cylinders, 6 A device has been proposed that is configured to measure the period of a detection signal output every 120' in the cylinder and diagnose a misfire based on the deviation of this period for each engine revolution or the deviation of this deviation. Ganpei 1-27
(See No. 5046).

即ち、例えば前記TDC周期の最新計測値をTφ2機関
1回転前に計測されたTDC周期をT2機関2回転前に
計測されたTDC周期T4とし、下式に従ってTDC周
期の機関1回転毎の偏差の偏差に基づく失火判別値LU
を算出し、この失火判別値LUと所定のスライスレベル
とを比較することで、失火診断を行うようにしていた。
That is, for example, the latest measured value of the TDC cycle is Tφ2, and the TDC cycle measured one engine revolution ago is T2, and the TDC cycle measured two engine revolutions ago is T4, and the deviation of the TDC cycle per engine revolution is calculated according to the following formula. Misfire determination value LU based on deviation
A misfire diagnosis is performed by calculating the misfire determination value LU and comparing it with a predetermined slice level.

〈発明が解決しようとする課題〉 しかしながら、上記のように機関回転周期の機関1回転
毎の偏差又はこの偏差の偏差に基づいて失火を診断する
場合には、例えば4気筒内燃機関において点火順を#1
→#3→#4→#2としたときの#3気筒と#2気筒と
のように、行程位相差が機関1回転相当である2気筒が
共に失火すると、第11図に示すように、機関1回転毎
の周期に失火による変化が表れなくなってしまい、結果
、実際には2気筒が失火しているにも関わらず、失火発
生無しの診断が下されることになってしまっていた。
<Problems to be Solved by the Invention> However, when diagnosing a misfire based on the deviation of the engine rotation period for each engine revolution or the deviation of this deviation as described above, for example, the firing order in a 4-cylinder internal combustion engine must be adjusted. #1
→ #3 → #4 → #2 When two cylinders with a stroke phase difference equivalent to one revolution of the engine misfire, such as cylinder #3 and cylinder #2, as shown in Fig. 11, Changes caused by a misfire no longer appear in the cycle of each engine revolution, and as a result, the diagnosis was made that there was no misfire, even though two cylinders were actually misfiring.

即ち、失火が発生して筒内圧が減少すると、それが機関
回転速度の低下として表れるから、正常燃焼している気
筒に対応する周期と、失火している気筒に対応する周期
とを比較することで失火を診断できるが、第11図に示
すように例えば#3気筒と#2気筒とが共に失火すると
、機関1回転毎の周期偏差を求めるときに、共に失火気
筒に対応するもの同士、又は、共に失火してない気筒に
対応するもの同士を比較することになってしまい、周期
偏差の大きさとして失火を診断しようとしても、失火診
断ができなくなってしまうものである。
In other words, when a misfire occurs and the cylinder pressure decreases, this appears as a decrease in engine rotational speed, so it is necessary to compare the period corresponding to a normally combusting cylinder with the period corresponding to a misfiring cylinder. However, as shown in Fig. 11, if cylinder #3 and cylinder #2 both misfire, when calculating the periodic deviation for each engine revolution, the two cylinders that both correspond to misfiring cylinders, or , both of which correspond to cylinders in which no misfire has occurred are compared, and even if one attempts to diagnose a misfire based on the magnitude of the periodic deviation, the misfire diagnosis cannot be made.

本発明は上記問題点に鑑みなされたものであり、機関回
転周期の機関1回転毎の偏差又はこの偏差の偏差に基づ
いて失火を診断する装置において、行程位相差が機関1
回転相当である2気筒が共に失火した場合であってもか
かる失火発生を診断できるようにすることを目的1とす
る。
The present invention has been made in view of the above problems, and includes a device for diagnosing a misfire based on the deviation of the engine rotation period for each engine revolution or the deviation of this deviation.
The first object is to be able to diagnose the occurrence of a misfire even if two cylinders corresponding to the same rotation are both misfired.

〈課題を解決するための手段〉 そのため本発明では、第1図に示すように、内燃機関の
回転周期を計測する回転周期計測手段と、この回転周期
計測手段で検出される回転周期の機関1回転毎の偏差又
は該偏差の偏差に基づいて失火発生を診断する失火診断
手段と、内燃機関の排気系の集合部に介装されて排気成
分濃度を検出する排気成分濃度検出手段と、失火診断手
段によって失火発生が診断されず、かつ、排気成分濃度
によって検出される排気成分濃度が失火発生に対応する
変化を示すときに、機関1回転相当の行程位相差である
2つの気筒の両方が失火していると診断する2気筒失火
診断手段と、を含んで失火診断装置を構成するようにし
た。
<Means for Solving the Problems> Therefore, in the present invention, as shown in FIG. A misfire diagnosis means for diagnosing the occurrence of a misfire based on a deviation for each rotation or a deviation of the deviation; an exhaust component concentration detection means for detecting the concentration of exhaust components by being installed in a collection part of an exhaust system of an internal combustion engine; and a misfire diagnosis. When the occurrence of a misfire is not diagnosed by the means and the detected exhaust component concentration shows a change corresponding to the occurrence of a misfire, both of the two cylinders with a stroke phase difference equivalent to one engine rotation misfire. A misfire diagnostic device is configured to include a two-cylinder misfire diagnostic means for diagnosing that a two-cylinder misfire is occurring.

〈作用〉 かかる構成によると、失火診断手段は機関回転周期の機
関1回転毎の偏差又は該偏差の偏差に基づいて失火発生
を診断するから、機関1回転相当の行程位相差である2
つの気筒が共に失火しているときには前述のように失火
診断できなくなってしまう。しかしながら、排気成分濃
度は、失火発生によって未燃焼ガスが排気系に排出され
ることによって失火発生時特有の変化を示すはずであり
、排気成分濃度検出手段は排気系の集合部に介装される
から失火気筒を特定することは困難であるが、失火発生
を検出ことかできる。従って、回転周期に基づいて失火
診断されていないにも関わらず、排気成分濃度が失火発
生に対応する変化を示しているときには、失火診断手段
で診断できない機関1回転相当の行程位相差である2つ
の気筒が共に失火している状態であると見做すものであ
る。
<Operation> According to this configuration, the misfire diagnosis means diagnoses the occurrence of a misfire based on the deviation of the engine rotation period for each engine rotation or the deviation of the deviation, so that the stroke phase difference 2 corresponding to one engine rotation is detected.
When both cylinders misfire, it becomes impossible to diagnose the misfire as described above. However, the concentration of exhaust components should show a change peculiar to the occurrence of a misfire due to unburned gas being discharged into the exhaust system due to the occurrence of a misfire, and therefore the exhaust component concentration detection means is installed in the collecting part of the exhaust system. Although it is difficult to identify the misfiring cylinder from the above, it is possible to detect the occurrence of a misfire. Therefore, even though a misfire has not been diagnosed based on the rotation period, if the concentration of exhaust components shows a change corresponding to the occurrence of a misfire, the stroke phase difference corresponding to one engine revolution cannot be diagnosed by the misfire diagnostic means. It is assumed that both cylinders are misfiring.

〈実施例〉 以下乙こ本発明の詳細な説明する。<Example> The present invention will be described in detail below.

一実施例を示す第2図において、内燃機関1には、エア
クリーナ2.吸気ダクト3.スロットルチヤンハ4及び
吸気マニホールド5を介して空気が吸入される。
In FIG. 2 showing one embodiment, an internal combustion engine 1 includes an air cleaner 2. Intake duct 3. Air is taken in via the throttle channel 4 and the intake manifold 5.

吸気ダクト3にはエアフローメータ6が設けられていて
、吸入空気流量Qを検出する。スロットルチヤンハ4に
は、図示しないアクセルペダルと連動するスロットル弁
7が設けられていて、吸入空気流量Qを制御する。吸気
マニホールド5には、各気筒(本実施例では4気筒)毎
に電磁式の燃料噴射弁8が設けられていて、図示しない
燃料ポンブから圧送されプレッシャレギュレータにより
所定の圧力に制御される燃料を吸気マニホールド5内に
噴射供給する。
An air flow meter 6 is provided in the intake duct 3 to detect the intake air flow rate Q. The throttle valve 7 is provided in the throttle valve 4 and is connected to an accelerator pedal (not shown) to control the intake air flow rate Q. The intake manifold 5 is provided with an electromagnetic fuel injection valve 8 for each cylinder (four cylinders in this embodiment), which injects fuel that is fed under pressure from a fuel pump (not shown) and controlled to a predetermined pressure by a pressure regulator. It is injected and supplied into the intake manifold 5.

燃料噴射量の制御は、マイクロコンピュータ内蔵のコン
トロールユニット9において、エアフローメータ6によ
り検出される吸入空気流tQと、ディストリビュータ1
3に内蔵されたクランク角センサlOからの信号に基づ
き算出される機関回転速度Nと、から燃料噴射弁8の開
駆動時間に相当する基本燃料噴射量Tp=KXQ/N(
Kは定数)を演算し、この基本燃料噴射量Tpを水温セ
ンサ14で検出される冷却水温度Tw等や後述する空燃
比フィードバック補正係数αなどに基づいて補正するこ
とにより最終的な燃料噴射量Tiを演算し、この燃料噴
射量Tiに相当するパルス巾の駆動パルス信号を機関回
転に同期して燃料噴射弁8に出力することにより、機関
1に対して要求量の燃料が噴射供給されるようになって
いる。
The fuel injection amount is controlled by a control unit 9 with a built-in microcomputer based on the intake air flow tQ detected by the air flow meter 6 and the distributor 1.
The basic fuel injection amount Tp corresponding to the opening driving time of the fuel injection valve 8 is calculated based on the engine rotational speed N calculated based on the signal from the crank angle sensor lO built into the engine 3, and the basic fuel injection amount Tp=KXQ/N(
K is a constant), and by correcting this basic fuel injection amount Tp based on the cooling water temperature Tw detected by the water temperature sensor 14, the air-fuel ratio feedback correction coefficient α, etc. described later, the final fuel injection amount is determined. By calculating Ti and outputting a drive pulse signal with a pulse width corresponding to the fuel injection amount Ti to the fuel injection valve 8 in synchronization with the engine rotation, the required amount of fuel is injected and supplied to the engine 1. It looks like this.

また、機関1の各気筒にはそれぞれ点火栓11が設けら
れていて、これらには点火コイル12にて発生する高電
圧がディストリビュータ13を介して順次印加され(尚
、本実施例における点火順は#1→#3→#4→#2と
する。)、これにより火花点火して混合気を着火燃焼さ
せる。ここで、点火コイル12は、付設されたパワート
ランジスタ12aを介して高電圧の発生時期が制御され
るようになっている。従って、点火時期(点火進角値)
ADVの制御は、前記パワートランジスタ12aのオン
・オフ時期をコントロールユニット9からの点火制御信
号で制御することにより行う。
Further, each cylinder of the engine 1 is provided with an ignition plug 11, to which a high voltage generated by an ignition coil 12 is sequentially applied via a distributor 13 (the ignition order in this embodiment is #1 → #3 → #4 → #2), thereby igniting a spark to ignite and burn the air-fuel mixture. Here, the timing of generation of high voltage in the ignition coil 12 is controlled via an attached power transistor 12a. Therefore, ignition timing (ignition advance value)
The ADV is controlled by controlling the on/off timing of the power transistor 12a using an ignition control signal from the control unit 9.

コントロールユニット9は、前記基本燃料噴射量Tpと
機関回転速度Nとにより区分される複数の運転r■域毎
に予め点火時期ADVを記憶しであるマツプから、当該
運転条件に対応する点火時期ADVを検索して求めると
共に、該点火時期ADVに基づいて点火制御信号を出力
し、点火時期を制御する。
The control unit 9 stores the ignition timing ADV in advance for each of a plurality of operating regions divided by the basic fuel injection amount Tp and the engine rotational speed N, and selects the ignition timing ADV corresponding to the operating condition from a map. is searched and obtained, and an ignition control signal is output based on the ignition timing ADV to control the ignition timing.

尚、前記スロットル弁7には、その開度TVOヲホテン
ショメータにより検出するスロットルセンサ15が付設
されており−1また、前記クランク角センサ10からは
、4気筒機関において180°毎(本実施例ではBTD
C70°毎)の基準角度信号REFと、1°又は2°毎
の単位角度信号PO3とが出力されるようになっている
。前記基準角度信号REFは、コントロールユニット9
による点火時期制御の基準位置となるものであり、例え
ば基準角度信号REFのうち#1気筒の点火基準に対応
するものが他と区別できるようにしてあり、これにより
基準角度信号REFを各気筒に対応させて各気筒別に点
火制御できるようになっている。
The throttle valve 7 is equipped with a throttle sensor 15 that detects its opening with a TVO tensionometer. So BTD
A reference angle signal REF (every 70 degrees) and a unit angle signal PO3 every 1 degree or 2 degrees are output. The reference angle signal REF is transmitted to the control unit 9.
For example, the reference angle signal REF that corresponds to the ignition reference for the #1 cylinder can be distinguished from the others, so that the reference angle signal REF can be applied to each cylinder. The ignition can be controlled individually for each cylinder.

更に、機関1の排気マニホールド16の集合部には排気
成分濃度として排気中の酸素濃度を検出する排気成分濃
度検出手段に相当する酸素センサ17が介装されており
、この酸素センサ17で検出される酸素濃度に基づいて
、実際の機関吸入混合気の空燃比が理論空燃比に対して
リッチ状態にあるかリーン状態にあるかが検出できるよ
うにしである。
Furthermore, an oxygen sensor 17 corresponding to an exhaust component concentration detection means for detecting the oxygen concentration in the exhaust gas as the exhaust component concentration is installed in the collecting part of the exhaust manifold 16 of the engine 1. Based on the oxygen concentration, it is possible to detect whether the air-fuel ratio of the actual engine intake air-fuel mixture is in a rich state or a lean state with respect to the stoichiometric air-fuel ratio.

ここで、コントロールユニット9は、本発明にかかる失
火診断を行って、失火が発生している気筒を車両の運転
席付近等に表示させる失火診断装置としての機能を有し
ており、以下に、ががる失火診断制御を、第3図〜第8
図のフローチャートにそれぞれ示すプログラムに従って
説明する。
Here, the control unit 9 has a function as a misfire diagnostic device that performs the misfire diagnosis according to the present invention and displays the cylinder in which the misfire has occurred near the driver's seat of the vehicle. The misfire diagnosis control is shown in Figures 3 to 8.
The explanation will be made according to the programs shown in the flowcharts shown in the figure.

尚、本実施例において、失火診断手段、2気筒失火診断
手段としての機能は、前記第3図〜第8閲のフローチャ
ートにそれぞれ示すようにソフトウェア的に備えられて
いる。また、本実施例において、回転周期計測手段は、
前記クランク角センサ10とコントロールユニット9と
によって構成されるようになっている。
In this embodiment, the functions of the misfire diagnosing means and the two-cylinder misfire diagnosing means are provided in the form of software as shown in the flowcharts of FIGS. 3 to 8, respectively. Furthermore, in this embodiment, the rotation period measuring means is
It is composed of the crank angle sensor 10 and the control unit 9.

第3図のフローチャートに示すプログラムは、基準角変
信号REFから単位角度信号Posをカウントすること
によって検出される圧縮TDC後15°(ATDCl、
5″′)の角度位置毎に実行されるものである。
The program shown in the flowchart of FIG. 3 is 15 degrees after compression TDC (ATDCl,
This is executed at every angular position of 5″′).

まず、ステップ1 (図中ではSlとしである。First, step 1 (indicated as Sl in the figure).

以下同様)では、図示しない別のプログラムに従ってA
TDC206からATDc18o6まで(特に筒内圧の
変化によってクランク角速度が影響を受ける角度範囲)
の周期を計測した結果を時系列的にメモリする。
(The same applies hereafter) Then, according to another program (not shown),
From TDC206 to ATDc18o6 (angular range where the crank angular speed is particularly affected by changes in cylinder pressure)
The results of measuring the period of are stored in memory in chronological order.

即ち、コントロールユニット9は、第9図に示すように
、クランク角センサ10から出力される信号に基づいて
ATDC20@及びATDC180’の位置をそれぞれ
検出し、この間の経過時間(周期)を計測するようにな
っており、このステップ1では、直前に計測された前記
周期を最新計測周期としてTOにセットし、また、本プ
ログラムの前回実行時に最新周期をセットしたTOのデ
ータを1回前の周期としてT1にセットし、同様にして
前回の1回前、2回前、3回前の周期T”1.T2゜T
3を、更に1回古いデータとしてそれぞれ2回前(1回
転前)周期T2,3回前問期T3.4回前(2回転前)
周期T4にそれぞれセットする。
That is, as shown in FIG. 9, the control unit 9 detects the positions of the ATDC 20@ and ATDC 180' based on the signals output from the crank angle sensor 10, and measures the elapsed time (cycle) during this time. In this step 1, the cycle measured just before is set to TO as the latest measurement cycle, and the data of TO where the latest cycle was set when this program was executed last time is set as the previous cycle. Set it to T1, and in the same way, check the cycles T"1, 2, and 3 times before the previous time T"1.T2゜T
3 and one more old data, respectively, 2 times ago (1 rotation ago) period T2, 3 times ago period T3. 4 times ago (2 rotations ago)
Each is set to period T4.

そして、次のステップ2では、ステップ1で設定した最
新周期TO11回転前(1/2サイクル前)の周期T2
.2回転前(Iサイクル前)の周期T4を用いて下式に
従い、機関1回転毎の周期Tの偏差の偏差(T2−T4
)−(To−72)に基づく失火判別値LUを演算する
Then, in the next step 2, the period T2 before the latest period TO11 rotations (1/2 cycle before) set in step 1
.. Using the period T4 before two revolutions (before I cycle), calculate the deviation of the period T for each engine revolution (T2-T4) according to the formula below.
)-(To-72) is calculated.

(T2−74)−(To−72) 上記失火判別値LUは、平均有効圧の変化量に略相当す
る値であり、これにより、最新周期TOを計測している
ときに燃焼行程であった気筒の平均有効圧の変化が推定
される。
(T2-74) - (To-72) The above misfire determination value LU is a value that approximately corresponds to the amount of change in the average effective pressure. Changes in the average effective pressure of the cylinders are estimated.

ステップ3では、前記ステップ2で演算された判別(t
f!LUがゼロ以上であるか否かを判別し、判別値LU
が負の値であるときには、ステップ4へ進み、判別値L
Uの正負反転を判別するためのフラグF plusにゼ
ロをセットする。
In step 3, the discrimination (t
f! Determine whether LU is greater than or equal to zero, and set the determination value LU
is a negative value, the process advances to step 4 and the discriminant value L
A flag F plus for determining whether U is positive or negative is set to zero.

次のステップ5では、第4図のフローチャートに示すプ
ログラムで正の値として設定されるスライスレベルSL
を、ゼロから減算して負の値に変換しく0−3L)、こ
の負のスライスレベルSLと判別値LUとを比較する。
In the next step 5, the slice level SL is set as a positive value by the program shown in the flowchart of FIG.
is subtracted from zero to convert it into a negative value (0-3L), and this negative slice level SL is compared with the discrimination value LU.

第4図のフローチャートムこ示すプログラムはバックグ
ラウンド処理され、かかるプログラムのステップ81で
は、予め機関負荷を代表する前記基本燃料噴射量Tpと
機関回転速度Nとで複数に区分される運転領域毎にスラ
イスレベルSLを記憶しであるマツプから、最新の運転
条件に見合ったスライスレベルSLを検索して設定する
。上記のように、機関負荷と機関回転速度Nとに応じて
スライスレベルSLを可変設定するのは、機関負荷及び
機関回転速度の運転条件によって判別値LUのレベルが
大きく変化するためであり、失火発生時に算出される判
別値LUの絶対値が、このスライスレベルSLを越える
ように設定しである。
The program shown in the flowchart of FIG. 4 is processed in the background, and in step 81 of the program, each operating region is divided into a plurality of regions based on the basic fuel injection amount Tp representing the engine load and the engine rotational speed N. From a map that stores slice levels SL, a slice level SL that matches the latest operating conditions is searched and set. As mentioned above, the reason why the slice level SL is variably set according to the engine load and the engine rotation speed N is because the level of the discrimination value LU changes greatly depending on the operating conditions of the engine load and the engine rotation speed. The absolute value of the discrimination value LU calculated at the time of occurrence is set so as to exceed this slice level SL.

ステップ5で判別値LUが負のスライスレベルSL以下
であると判別されたときには、ステ、ンブ6でカウント
値cntに4をセットしてからステップ27へ進み、ま
た、判別値LUがゼロ以上である(正である)と判別さ
れたときには、ステ・ンブ6をジャンプしてステップ2
7へ進む。
If it is determined in step 5 that the discriminant value LU is less than or equal to the negative slice level SL, step 6 sets the count value cnt to 4 and then proceeds to step 27; If it is determined that there is (positive), jump step 6 and proceed to step 2.
Proceed to step 7.

ステップ27では、前記カウント値cntがゼロである
か否かを判別し、ゼロでないときには、ステップ28で
カウント値cntを1ダウンさせる。
In step 27, it is determined whether or not the count value cnt is zero, and if it is not zero, the count value cnt is decreased by 1 in step 28.

従って、判別値LUが負の状態が継続するときには、判
別値LUが負のスライスレベルSL以下となったときに
カウント値cntに4がセントされるが、同時に1ダウ
ンさせられ、その後判別値LUが負のスライスレベルS
L以下にならなければ、ゼロムこまでカウントダウンさ
れてゼロを維持する。
Therefore, when the discriminant value LU continues to be in a negative state, when the discriminant value LU becomes less than the negative slice level SL, 4 is added to the count value cnt, but at the same time it is decreased by 1, and then the discriminant value LU is a negative slice level S
If it does not fall below L, it counts down to zero and maintains zero.

一方、ステップ3で判別値LUがゼロ以上であると判別
されたときには、ステップ7で前記フラグFplusの
判別を行い、フラグFplusがゼロであって本プログ
ラムの前回実行時に演算された判別値LUが負の値であ
ったとき、即ち、判別値LUの負から正への反転時であ
るときには、まず、ステップ8で前記フラグFplus
に1をセットし、次回も判別値LUがゼロ以上であると
きに、ステップ7でフラグF plusが1であると判
別されるようにする。
On the other hand, when it is determined in step 3 that the discriminant value LU is greater than or equal to zero, the flag Fplus is determined in step 7. When the value is negative, that is, when the discriminant value LU is inverted from negative to positive, first, in step 8, the flag Fplus is
is set to 1, so that the flag F plus is determined to be 1 in step 7 next time as well when the determination value LU is greater than or equal to zero.

そして、次のステップ9では、前記カウント値cntが
3であるか否かを判別する。判別値LUが負から正へ反
転した初回で、かつ、前記カウント値cntが3である
場合は、負のスライスレベルSL以下の判別値LUから
正の判別値LUへ反転した場合であり、このときにはス
テップ10でカラント値cntに2をセットする。
Then, in the next step 9, it is determined whether the count value cnt is 3 or not. When the discriminant value LU is reversed from negative to positive for the first time and the count value cnt is 3, this is the case when the discriminant value LU is reversed from the negative slice level SL or lower to the positive discriminant value LU. Sometimes, in step 10, the currant value cnt is set to 2.

ステップ11では、前記カウント値cntがゼロである
か否かを判別し、ゼロでないときにはステ・ンプ12へ
進み、第4図のフローチャートに示すプログラムで機関
負荷(基本燃料噴射量Tp)と機関回転速度Nとに応じ
て可変設定される正のスライスレベルSLと判別値LU
とを比較する。
In step 11, it is determined whether or not the count value cnt is zero, and if it is not zero, the process proceeds to step 12, where the engine load (basic fuel injection amount Tp) and engine speed are determined by the program shown in the flowchart of FIG. A positive slice level SL and a discrimination value LU that are variably set according to the speed N.
Compare with.

判別値LUが正のスライスレベルSLよりも大きいとき
には、失火の発生を判別し、ステップ13〜ステツプ2
5で失火発生気筒を特定し、各気筒毎の失火検出回数を
カウントアツプさせる。
When the determination value LU is larger than the positive slice level SL, it is determined that a misfire has occurred, and steps 13 to 2 are performed.
In step 5, the cylinder in which the misfire has occurred is identified, and the number of misfire detections for each cylinder is counted up.

まず、ステップエ3では、失火が発注している気筒を特
定するために、点火気筒を示すシリンダカウンタCyl
cntの値を判別する。
First, in Step E3, in order to identify the cylinder in which the misfire is occurring, the cylinder counter Cyl indicating the ignition cylinder is used.
Determine the value of cnt.

前記シリンダカウンタCylcntは、第5図のフロー
チャートに示すプログラムに従って設定される。第5図
のフローチャートに示すプログラムは、クランク角セン
サ10から基準角度信号REFが出力される毎(BTD
C70’毎)に実行されるものであり、今回の基準角度
信号REFを基準として次に点火時期ADV (点火進
角値)が制御される気筒ナンバーを判別し、その気筒ナ
ンバーを前記シリンダカウンタCylcntにセットす
るものである(第9図参照)。
The cylinder counter Cylcnt is set according to the program shown in the flowchart of FIG. The program shown in the flowchart of FIG. 5 is executed every time the reference angle signal REF is output from the crank angle sensor 10 (BTD
C70'), the cylinder number whose ignition timing ADV (ignition advance value) will be controlled next is determined based on the current reference angle signal REF, and the cylinder number is sent to the cylinder counter Cylcnt. (See Figure 9).

即ち、まず、ステップ91では、今回の基準角度信号R
EFが#1気筒の点火基準となるものであるか否かを判
別し、今回の基準角度信号REFが#1気筒の点火基準
であるときには、ステ・7プ92へ進み、前記シリンダ
カウンタCylcntに#l気筒を示す1をセットする
That is, first, in step 91, the current reference angle signal R
It is determined whether or not EF is the ignition reference for the #1 cylinder. If the current reference angle signal REF is the ignition reference for the #1 cylinder, the process advances to step 792 and the cylinder counter Cylcnt is set. Set 1 to indicate the #l cylinder.

ステップ91で#1気筒の点火基準でないと判別された
ときには、ステップ93へ進み、今度は#2気筒の点火
基準であるか否かを判別する。そして、今回の基準角度
信号REFが#2気筒の点火基準であれば、ステップ9
4で前記シリンダカウンタCylcntに#2気筒を示
す2をセットする。
When it is determined in step 91 that it is not the ignition standard for the #1 cylinder, the process proceeds to step 93, where it is determined whether or not it is the ignition standard for the #2 cylinder. If the current reference angle signal REF is the ignition reference for #2 cylinder, step 9
At step 4, the cylinder counter Cylcnt is set to 2, which indicates the #2 cylinder.

また、ステップ93で今回の基準角度信号REFが#2
気筒の点火基準でないと判別されると、ステップ95で
#3気筒の点火基準であるか否かを判別し、#3気筒の
点火基準であればステップ96でCylcntに#3気
筒を示す3をセットし、#3気筒の点火基準でないとき
には残る#4気筒の点火基準であるから、ステップ97
でCylcntに#4気筒を示す4をセットする。
Also, in step 93, the current reference angle signal REF is set to #2.
If it is determined that it is not the ignition standard for the cylinder, it is determined in step 95 whether or not it is the ignition standard for the #3 cylinder, and if it is the ignition standard for the #3 cylinder, 3 indicating the #3 cylinder is set in Cylcnt in step 96. If the ignition standard is not the ignition standard for the #3 cylinder, the ignition standard remains for the #4 cylinder, so step 97
Set Cylcnt to 4, which indicates cylinder #4.

再び第3図のフローチャートに戻って説明すると、上記
のようにして設定されるCylcntをステップ13で
判別し、例えば、Cylcnt−2であるときには、ス
テップ17へ進み、前記カウント値cntが2であるか
否かを判別する。そして、カウント値cutが2であれ
ば、#1気筒が失火しているものと判断し、ステップ1
8で#1気筒の失火検出回数をカウントするLSTIを
1アツプさせる。
Returning to the flowchart of FIG. 3 again, the Cylcnt set as described above is determined in step 13, and if it is, for example, Cylcnt-2, the process proceeds to step 17, where the count value cnt is 2. Determine whether or not. If the count value cut is 2, it is determined that the #1 cylinder is misfiring, and step 1
At step 8, the LSTI that counts the number of misfire detections in the #1 cylinder is increased by one.

このようにして#1気筒の失火が判断される実際例を、
第9図に示しである。即ち、第9図に示すように、#1
気筒が失火すると、まず、失火気筒である#1気筒に対
応する判別値LUが大きな減少を示して負となり、次の
点火順である#3気筒に対応する判別値LUも同レベル
の負の値をとり、かつ、続く#4気筒及び#2気筒の失
火判別値LUが前記#1及び#3気筒の反動を受けるよ
うにして共に正となる(#1気筒失火後の#2気筒の失
火判別値LUについては第9図で図示を省略しである)
An actual example of how the #1 cylinder misfire is determined in this way is as follows:
This is shown in FIG. That is, as shown in FIG. 9, #1
When a cylinder misfires, the discriminant value LU corresponding to cylinder #1, which is the misfiring cylinder, first shows a large decrease and becomes negative, and the discriminant value LU corresponding to cylinder #3, which is the next firing order, also becomes negative at the same level. value, and the subsequent misfire determination values LU for the #4 cylinder and #2 cylinder become positive as they receive the reaction from the #1 and #3 cylinders (misfire in the #2 cylinder after the misfire in the #1 cylinder). (Discriminant value LU is not shown in Fig. 9)
.

ここで、#1気筒対応の判別値LUが負のスライスレベ
ルSL以下として算出されたときに前記カウント値cn
tには4がセントされた後、直ちに1ダウンされて3に
なるが、次の#3気筒対応の判別値しUも負のスライス
レベルSL以下で再度カラントイ直cntにはやはり3
がセットされる。
Here, when the discrimination value LU corresponding to the #1 cylinder is calculated to be less than or equal to the negative slice level SL, the count value cn
After 4 is added to t, it is immediately decreased by 1 to 3, but since the discrimination value corresponding to the next #3 cylinder and U is also less than the negative slice level SL, the currant direct cnt is again set to 3.
is set.

次に#4気筒対応の判別値LUが正のスライスレベルS
Lを越えて負から正に反転すると、カウント値cntに
は2がセットされるから、カウント値cntがゼロでな
く然も判別値LUが正のスライスレベルSLを越えるこ
とから、ステップ13へ進む。ステップ13では、前記
Cylcnt=2であると判別され、結果、#1気筒の
失火が最終判断されることになる。
Next, the slice level S for which the discrimination value LU corresponding to #4 cylinder is positive
When the value exceeds L and is reversed from negative to positive, the count value cnt is set to 2, so the process proceeds to step 13 since the count value cnt is not zero and the discrimination value LU exceeds the positive slice level SL. . In step 13, it is determined that Cylcnt=2, and as a result, it is finally determined that the #1 cylinder has misfired.

ここで、例えば正へ反転した初回の#4気筒対応の判別
値LUが正のスライスレベルSLを越えず、次の#2気
筒対応の判別値LUが正のスライスレベルSLを越える
場合もあるが、この場合には、負から正への反転初回に
ステップI2からステップ27へ進んで、カウント値c
ntがゼロでないと判別される(カウント値cnt=2
)ことにより、ステップ28でカウント値cntが1ダ
ウンされて1になり、次回の判別値LUが正のスライス
レベルSLを越えるときには、ステップ7からステップ
11へ進み、カウント値cntが1であることからステ
ップ12へ進んで失火検出される。このとき、Cylc
ntには1がセットされているからステップ14へ進む
が、カウント値cntが1であるから、ステップ14か
らステップ16へ進み、やはり#1気筒の失火を最終的
に判断して、#1気筒の失火検出回数LSTIが1アツ
プされる。
Here, for example, the first discriminant value LU corresponding to the #4 cylinder that is reversed to positive may not exceed the positive slice level SL, and the next discriminant value LU corresponding to the #2 cylinder may exceed the positive slice level SL. , in this case, the process proceeds from step I2 to step 27 at the first inversion from negative to positive, and the count value c
It is determined that nt is not zero (count value cnt=2
), the count value cnt is decreased by 1 to 1 in step 28, and when the next discrimination value LU exceeds the positive slice level SL, the process advances from step 7 to step 11, and the count value cnt is 1. The process then proceeds to step 12, where a misfire is detected. At this time, Cylc
Since nt is set to 1, the process proceeds to step 14, but since the count value cnt is 1, the process proceeds from step 14 to step 16, where it is finally determined that the #1 cylinder has misfired, and the #1 cylinder is The number of misfire detections LSTI is incremented by one.

また、第9図に示す例で、#1気筒対応の判別値LUと
#3気筒対応の判別値LUとのいずれか一方のみが負の
スライスレベルSL以下となる場合もあるが、この場合
にも、判別値LUが正へ反転した初回においては、カウ
ント値cntに2がセットされていることになり、#1
気筒の失火を判定させることができる。
Furthermore, in the example shown in FIG. 9, only one of the discrimination value LU corresponding to the #1 cylinder and the discrimination value LU corresponding to the #3 cylinder may be less than or equal to the negative slice level SL; Also, the first time that the discriminant value LU is reversed to positive, the count value cnt is set to 2, and #1
A cylinder misfire can be determined.

ステップ13〜ステツプ25で失火気筒を特定して各気
筒毎の失火検出回数LSTI〜LST4をカウントアツ
プさせると、ステップ26へ進みカウント値cntをゼ
ロリセットする。これにより、次回も判別値LUが正で
、ステップ7がらステップ11へ進んだ場合に、このス
テップ11でカウント値cnt=oの判定がなされて、
失火検出を行わせないようにする。
After identifying the misfiring cylinder in steps 13 to 25 and incrementing the number of misfire detections LSTI to LST4 for each cylinder, the process proceeds to step 26, where the count value cnt is reset to zero. As a result, if the discriminant value LU is positive next time and the process proceeds from step 7 to step 11, the count value cnt=o will be determined in step 11.
Disable misfire detection.

そして、次のステップ27ではカウント値cntがゼロ
であるか否かの判別を行い、ゼロでないときにはステッ
プ28でカウント値cntを1ダウンさせる。
Then, in the next step 27, it is determined whether or not the count value cnt is zero, and if it is not zero, the count value cnt is decreased by 1 in step 28.

次のステップ29では、前記スライスレベルSLの所定
倍(例えば1.5倍)と、ステップ2で算出した判別値
LUとを比較する。
In the next step 29, a predetermined multiple (for example, 1.5 times) of the slice level SL is compared with the discrimination value LU calculated in step 2.

ここで、上記のようにスライスレベルSLを所定倍する
のは、点火順#1→#3→#4→#2における#1気筒
と#3気筒とのように連続する2気筒が共に失火すると
、通常の特定1気筒のみが失火している場合に比べ大き
く判別値LUが落ち込む特性があるので、判別値LUが
連続2気筒失火と認められるような大きな落ち込みを示
しているか否かを判別するためである。
Here, the reason why the slice level SL is multiplied by a predetermined value as described above is that when two consecutive cylinders such as #1 cylinder and #3 cylinder in the firing order #1 → #3 → #4 → #2 both misfire. Since there is a characteristic that the discriminant value LU drops significantly compared to the normal case where only one specific cylinder misfires, it is determined whether the discriminant value LU shows a large drop that is recognized as two consecutive cylinder misfires. It's for a reason.

従って、スライスレベルSLを所定倍した値に対して、
判別値LUが1気筒単独失火のときには超えることがな
く、連続2気筒失火が発生したときにのみ超えるように
、前記スライスレベルSLを所定倍するための係数を予
め実験によって定めておく。
Therefore, for a value obtained by multiplying the slice level SL by a predetermined value,
A coefficient for multiplying the slice level SL by a predetermined value is determined in advance through experiments so that the discrimination value LU does not exceed when one cylinder misfires alone, but exceeds only when two consecutive cylinder misfires occur.

ステップ29で判別値LUがスライスレベルSLの所定
倍よりも小さいと判別され、連続2気筒の失火発生が予
測されると、ステップ30へ進んで連続2気筒失火が発
生している気筒を特定するためにシリンダカウンタCy
cntを判別する。
If it is determined in step 29 that the discrimination value LU is smaller than a predetermined multiple of the slice level SL, and it is predicted that two consecutive cylinders will misfire, the process will proceed to step 30 to identify the cylinder in which two consecutive cylinders have misfired. For cylinder counter Cy
Determine cnt.

例えば、#3気筒と#4気筒との2気筒が連続して失火
しているときには、#4気筒に対応する判別値LUが大
きくマイナス側に算出され、ここで、連続2気筒失火が
判別されることになり、このときにはシリンダカウンタ
cycntには2がセットされているから、連続2気筒
失火の発生が判別されたときにCycntが2であれば
、#3気筒と#4気筒との2気筒が連続失火しているこ
とになる。従って、このときには、ステップ32へ進ん
で#3気筒と#4気筒との2気筒が連続していることが
検出された回数をカウントアツプするカウンタであるc
nt34を1アツプさせる。
For example, when two cylinders, #3 and #4, are misfiring consecutively, the discrimination value LU corresponding to cylinder #4 is calculated to be significantly negative, and it is determined that two consecutive cylinders are misfiring. At this time, the cylinder counter cycnt is set to 2, so if Cycnt is 2 when it is determined that two consecutive cylinder misfires have occurred, the two cylinders #3 and #4 are This means that there are continuous misfires. Therefore, at this time, the process proceeds to step 32 where a counter c is incremented to count up the number of times it has been detected that two cylinders #3 and #4 are consecutive.
Increase nt34 by 1.

同様にして、シリンダカウンタCycntが1であると
きにはカウンタcnt42を、シリンダカウンタCyc
ntが3であるときにはカウンタcnt12を、シリン
ダカウンタCycntが4であるときにはカウンタcn
t13をそれぞれカウントア・ンブさせる。
Similarly, when the cylinder counter Cycnt is 1, the counter cnt42 is set to the cylinder counter Cycnt42.
When nt is 3, counter cnt12 is set, and when cylinder counter Cycnt is 4, counter cn is set.
Count t13 respectively.

尚、上記の判別値LUでは、第11図に示したように行
程位相差が機関1回転相当である2気筒が共に失火した
場合には、機関1回転毎の周期偏差が略ゼロとなってし
まって失火診断を行うことができない。
In addition, with the above discriminant value LU, if two cylinders with a stroke phase difference equivalent to one engine revolution both misfire as shown in Fig. 11, the periodic deviation for each engine revolution becomes approximately zero. It is impossible to diagnose a misfire.

次のステップ35では、前記周期T O−T 4と同様
にして、周期の最新値をT0φにセットし、本プログラ
ムの前回実行時に最新の計測結果をセットしたT0φの
周期データを7.1をセットし、同様に、本プログラム
の前回実行時における周期データT、1を7.2にセッ
トする。
In the next step 35, the latest value of the period is set to T0φ in the same manner as the period T O-T 4, and the period data of T0φ, to which the latest measurement result was set during the previous execution of this program, is set to 7.1. Similarly, the cycle data T, 1 from the previous execution of this program is set to 7.2.

ステップ36では、今回ステップ35で設定した周期デ
ータのT0φとT、1との偏差の絶対値を求め、その結
果をD!tにセットする。
In step 36, the absolute value of the deviation between T0φ and T,1 of the periodic data set in step 35 is calculated, and the result is D! Set to t.

ステップ37では、ステップ36で演算される周期偏差
Dftの加重平均値Dftavを以下の式に従って求め
る。
In step 37, the weighted average value Dftav of the period deviation Dft calculated in step 36 is determined according to the following formula.

次のステップ38では、クランク角センサ10の出力に
基づいて計測したTDC周期の偏差を、前記加重平均値
DJ2tavで補正しつつ、周期T0の2階微分値を以
下の式に従って演算してその結果を失火判別値Zuにセ
ットする。
In the next step 38, the deviation of the TDC period measured based on the output of the crank angle sensor 10 is corrected by the weighted average value DJ2tav, and the second differential value of the period T0 is calculated according to the following formula, and the result is is set as the misfire discrimination value Zu.

上記のように周期TelとT、2との偏差及び周期T。As described above, the deviation between the period Tel and T, 2 and the period T.

φとTelとの偏差を、前記DILaνで補正すれば、
To lとTo 2との間及びT0φとTo 1との間
に、クランク角センサ10の角度誤差に基づく偏差があ
ってもこの検出角度の差による周期差を減少させる方向
に補正することができ、回転変動を精度良く検出できる
If the deviation between φ and Tel is corrected by the above DILaν,
Even if there is a deviation between Tol and To2 and between T0φ and To1 due to the angular error of the crank angle sensor 10, the period difference due to the difference in detection angle can be corrected in the direction of decreasing. , rotational fluctuations can be detected with high accuracy.

ステップ39では、今回ステップ38で算出されたZu
を含め最近に算出された前記失火判別値Zuのうちゼロ
以下に算出された複数データの中で最も小さな値を求め
、この最新の最小値と前回までに設定されているZuの
最小値m1nZuとを加重平均し、その結果を新たに最
小値m1nZuにセットして、最小値m1nZuの更新
設定を行う。
In step 39, the Zu calculated in step 38 this time is
Find the smallest value among the multiple data calculated below zero among the recently calculated misfire discrimination values Zu including is weighted averaged, and the result is set as a new minimum value m1nZu to update the minimum value m1nZu.

次のステップ40では、上記のようにして求められた最
小値m1nZuと、今回ステップ4で算出されたZuと
を比較し、平均的な最小値m1nZUによりも最新の演
算結果がより小さいときには、ステップ41へ進んで今
回算出されたZuを最小値m1nZuにセットする。従
って、ステップ38で算出されるZuが平均レベルより
も低下した場合には、最小値m1nZuが直ちにこの変
化に追従することになる。
In the next step 40, the minimum value m1nZu obtained as described above is compared with the Zu calculated in step 4 this time, and if the latest calculation result is smaller than the average minimum value m1nZU, step The process advances to step 41 and sets the currently calculated Zu to the minimum value m1nZu. Therefore, if Zu calculated in step 38 falls below the average level, the minimum value m1nZu will immediately follow this change.

上記のようにして失火判別値Zuの最小値m1nZuを
設定すると、次のステップ42では今回算出された失火
判別値Zuのレベル判別のために、今回算出されたZu
の絶対値を機関回転速度Nの増大に応じて増大補正する
一方、機関負荷の増大に応じて減少補正し、かかる補正
結果をDZuにセットする。前記機関回転速度Nは、周
期に基づいて算出することができ、また、前記機関負荷
は機関への燃料供給量を吸入空気量に見合った量に電子
制御する際の基本燃料供給量TPを用いれば良い。
After setting the minimum value m1nZu of the misfire discrimination value Zu as described above, in the next step 42, the currently calculated Zu
The absolute value of is corrected to increase according to the increase in the engine rotation speed N, while it is corrected to decrease according to the increase in the engine load, and the result of this correction is set in DZu. The engine rotational speed N can be calculated based on a cycle, and the engine load can be calculated using a basic fuel supply amount TP when electronically controlling the fuel supply amount to the engine to an amount commensurate with the intake air amount. Good.

前記Zuは、機関回転速度Nが高いときほど小さな値に
算出され、また、機関負荷が高いときほど大きな値に算
出される傾向を示すので、上記の補正を施すことによっ
て機関回転速度及び機関負荷の条件とは無関係な真の機
関回転変動度合いを示す値を設定することができる。
The above-mentioned Zu tends to be calculated to a smaller value as the engine rotational speed N is higher, and to a larger value as the engine load is higher. It is possible to set a value that indicates the true degree of engine rotation variation that is unrelated to the conditions of .

次のステップ43では、失火判別値Zuのマイナス側レ
ベルを判定するためのスライスレベルSL1を前記最小
値m1nZuの所定倍として設定するための係数ga 
inを、前記ステップ42で算出したDZuに基づいて
、マツプから検索して求める。
In the next step 43, a coefficient ga is used to set the slice level SL1 for determining the negative level of the misfire discrimination value Zu as a predetermined multiple of the minimum value m1nZu.
in is searched from the map based on the DZu calculated in step 42 above.

ここで、前記DZuが大きいときほど前記係数gain
は小さな値に設定されるようになっており、前記DZu
があるレベル以上になって機関回転変動が大きいときに
は前記係数gainが1以下の数値に設定されて、最小
値m1nZuよりもゼロに違い側のスライスレベルSL
Iが設定されるようにしてあり、また逆に前記DZuが
あるレベル以上で機関回転変動が小さいときには前記係
数ga inが1以上の数値に設定されて、前記スライ
スレベルSLIが最小値m1nZuよりも更に小さい値
に設定されるようにしである。
Here, the larger the DZu, the larger the coefficient gain
is set to a small value, and the DZu
When the engine rotational fluctuation is greater than a certain level, the coefficient gain is set to a value of 1 or less, and the slice level SL on the side different from the minimum value m1nZu to zero is set.
conversely, when the DZu is above a certain level and the engine rotational fluctuation is small, the coefficient gain is set to a value of 1 or more, so that the slice level SLI is lower than the minimum value m1nZu. It is set to an even smaller value.

これにより、機関回転変動が大きいときほど、失火判別
値Zuが前記スライスレベルSLIよりも小さいと判別
されて失火診断され易いようにしてあり、逆に、機関回
転変動が小さいときには、スライスレベルSLIを越え
て失火判別値Zuが小さくなることを回避して、失火診
断され難いようにしである。
As a result, when the engine speed fluctuation is large, the misfire determination value Zu is determined to be smaller than the slice level SLI, and the misfire diagnosis is made easier. Conversely, when the engine speed fluctuation is small, the slice level SLI is more likely to be diagnosed. This is to avoid the misfire discrimination value Zu from becoming too small, thereby making it difficult to diagnose a misfire.

ステップ44では、ステップ43でマツプから検索して
求めた前記係数ga inを前記最小値m1nZuに乗
算してその結果をスライスレベルSLIに設定する。
In step 44, the minimum value m1nZu is multiplied by the coefficient gain obtained by searching from the map in step 43, and the result is set as the slice level SLI.

次のステップ45では、前記ステップ38で算出した失
火判別値Zuがゼロ以上であるか否かを判別し、ゼロ以
上でないとき、即ち、失火判別値Zuがゼロ未満である
ときには、ステップ46へ進んで失火判別値Zuと前記
ステップ44で設定したスライスレベルSLIとを比較
する。
In the next step 45, it is determined whether or not the misfire discrimination value Zu calculated in the step 38 is greater than or equal to zero. If it is not greater than or equal to zero, that is, if the misfire discrimination value Zu is less than zero, the process proceeds to step 46. The misfire determination value Zu is compared with the slice level SLI set in step 44 above.

ここで、失火判別値Zuが前記スライスレベルSLIよ
りも小さな値であることが判別されると、失火発生によ
って機関回転変動が所定レベル以上になっているものと
見做しく失火を検出し)、ステップ47へ進んで失火検
出回数をカウントするLSTDを1アツプさせる。
Here, if it is determined that the misfire discrimination value Zu is a value smaller than the slice level SLI, it is assumed that the engine rotational fluctuation has exceeded a predetermined level due to the occurrence of a misfire, and a misfire is detected. Proceeding to step 47, LSTD, which counts the number of misfire detections, is incremented by one.

尚、前記失火判別値Zuは、1気筒が単独で失火した場
合にはその気筒が影響する周期が長くなることによって
失火発生を診断できる。また、行程位相差が機関1回転
相当である2つの気筒が共に失火した場合には、かかる
失火気筒のいずれかに対応する周期がT0φにセットさ
れたときや、失火がときどき発生する場合にのみZuは
大きくマイナス側に変化してやはり失火診断を行わせる
ことができるが、失火気筒以外の周期がT0φにセット
される状況や失火が第11図に示すように継続している
場合では失火を確実に診断できない。
Incidentally, when one cylinder misfires independently, the misfire determination value Zu can be used to diagnose the occurrence of a misfire by increasing the period in which that cylinder is affected. In addition, if two cylinders with a stroke phase difference equivalent to one engine rotation both misfire, only when the period corresponding to one of the misfiring cylinders is set to T0φ, or when misfires occur occasionally. Zu changes significantly to the negative side and a misfire diagnosis can still be performed, but if the cycles of cylinders other than the misfire are set to T0φ or if the misfire continues as shown in Figure 11, a misfire can be detected. Cannot be diagnosed with certainty.

一方、点火順で連続する2気筒が共に失火しているとき
には、かかる2気筒連続失火の発生を検出することがで
きる。従って、前記失火検出回数LSTDは、1気筒単
独失火の検出回数と、点火順で連続する2気筒の失火検
出回数と、を含むことになるが、行程位相差が機関1回
転相当である2気筒が共に失火しているときには、前記
判別値LUに基づく判別同様に失火検出回数を正確に反
映させることはできない。
On the other hand, when two consecutive cylinders in the firing order are both misfired, it is possible to detect the occurrence of such two-cylinder consecutive misfires. Therefore, the misfire detection number LSTD includes the number of misfire detections in one cylinder alone and the number of misfire detections in two consecutive cylinders in the firing order. When both misfires occur, the number of misfire detections cannot be accurately reflected as in the discrimination based on the discriminant value LU.

次のステップ48では、本プログラムの実行回数をカウ
ントアツプするカウンタであるtotalが所定値(例
えば1000)までカウントアツプされているか否かを
判別し、所定値にまで達していないときには、ステップ
49で前記totalをカウントアツプさせる。
In the next step 48, it is determined whether total, which is a counter that counts up the number of times this program has been executed, has counted up to a predetermined value (for example, 1000). If it has not reached the predetermined value, step 49 is performed. The total is counted up.

一方、ステップ48で前記totalが所定値までカウ
ントアツプされていると判別されると、かかる所定回数
カたりの失火検出回数を判別することで、失火発生を診
断すべくステップ50以降へ進む。
On the other hand, if it is determined in step 48 that the total has been counted up to a predetermined value, the process proceeds to step 50 and subsequent steps to diagnose the occurrence of a misfire by determining the number of misfire detections within the predetermined number of times.

ステップ50では、酸素センサ17で検出される排気中
の酸素濃度に基づき検出される空燃比のリッチ状態で、
リーン方向に出力が変化することで検出される失火検出
回数1 s t Ozを、失火検出できないリーン状態
のときの分も含めて設定されるように補正して、最終的
な失火検出回数0□LSTとする。
In step 50, in a rich state of the air-fuel ratio detected based on the oxygen concentration in the exhaust gas detected by the oxygen sensor 17,
The number of misfire detections 1 s t Oz, which is detected when the output changes in the lean direction, is corrected to include the lean state in which misfires cannot be detected, and the final number of misfire detections is 0□ Let it be LST.

即ち、後述するように、本実施例の内燃機関では、機関
吸入混合気の空燃比を酸素センサ17で検出し、この空
燃比が目標空燃比(理論空燃比)に近づくようにフィー
ドバック補正するから、目標空燃比を中心にリッチ・リ
ーンを繰り返して平均的な空燃比を目標空燃比に制御す
るようにしている。ここで、失火気筒があると、その気
筒から未燃焼ガスが排出されることにより一時的なリー
ン状態となり、リッチ状態においては第10図の示すよ
うに、未燃焼ガスの排出が酸素センサ17出力の突発的
なリーン方向変化として表れる。このため、空燃比のリ
ッチ状態において、酸素センサ17出力がリーン方向に
突発的に変化したことを検出することで失火発生を予測
できるものであるが、前記カウンタtotalが所定値
にまでカウントアツプされるまでの間には、リッチ・リ
ーンを繰り返し、リーン状態のときの失火については検
出できないので、リーン時間とリッチ時間との割合に基
づいてリーン状態において発生していると予測される失
火回数分をも含めた回数が最終的に設定されるようにす
るものである。
That is, as will be described later, in the internal combustion engine of this embodiment, the air-fuel ratio of the engine intake air-fuel mixture is detected by the oxygen sensor 17, and feedback correction is performed so that this air-fuel ratio approaches the target air-fuel ratio (stoichiometric air-fuel ratio). , the average air-fuel ratio is controlled to the target air-fuel ratio by repeating rich and lean around the target air-fuel ratio. Here, if there is a misfiring cylinder, unburned gas is discharged from that cylinder, resulting in a temporary lean state, and in a rich state, as shown in FIG. This appears as a sudden change in lean direction. Therefore, when the air-fuel ratio is in a rich state, the occurrence of a misfire can be predicted by detecting a sudden change in the output of the oxygen sensor 17 in the lean direction, but the counter total may not count up to a predetermined value. Since rich and lean cycles are repeated until the engine reaches a lean state, misfires in a lean state cannot be detected. This is to ensure that the final number including the number of times is set.

かかる酸素センサ17出力に基づく失火検出回数の設定
に関わるプログラムを以下に説明する。
A program related to setting the number of misfire detections based on the output of the oxygen sensor 17 will be described below.

第6図のフローチャートは、基本燃料噴射量TPO補正
に用いられる空燃比フィードバック補正係数αの設定プ
ログラムであり、所定微小時間(例えば10+ms)毎
に実行されるようになっている。
The flowchart in FIG. 6 is a setting program for the air-fuel ratio feedback correction coefficient α used for basic fuel injection amount TPO correction, and is executed at predetermined minute intervals (for example, 10+ms).

まず、ステップ101では、リーン時間及びリッチ時間
を計測するためのタイマーt imeを1アツプさせ、
次のステップ102では酸素センサ17の出力を■02
にセットする。酸素センサ17は、理論空燃比を境に排
気中酸素濃度が急変することを利用して理論空燃比に対
する実際の空燃比のリッチ・リーンを検出するものであ
り、酸素濃度が薄くなるリッチ空燃比では1v程度の出
力となり、酸素濃度が濃くなるリーン空燃比では0■付
近の出力となる公知のものである。
First, in step 101, a timer time for measuring lean time and rich time is incremented by 1,
In the next step 102, the output of the oxygen sensor 17 is
Set to . The oxygen sensor 17 detects whether the actual air-fuel ratio is rich or lean with respect to the stoichiometric air-fuel ratio by utilizing the fact that the oxygen concentration in the exhaust gas changes suddenly after the stoichiometric air-fuel ratio. In this case, the output is about 1 V, and at a lean air-fuel ratio where the oxygen concentration is high, the output is around 0 ■, which is a known method.

ステップ103では、ステップ102でセットした酸素
センサ17出力V Ozと、理論空燃比相当のスライス
レベル(例えば50Qmv)とを比較し、実際の空燃比
が理論空燃比に対してリッチであるかリーンであるかを
判別する。
In step 103, the oxygen sensor 17 output VOz set in step 102 is compared with a slice level equivalent to the stoichiometric air-fuel ratio (for example, 50Qmv), and it is determined whether the actual air-fuel ratio is rich or lean with respect to the stoichiometric air-fuel ratio. Determine if there is.

出力がスライスレベルを超えていて空燃比がリッチであ
ると判別されると、ステップ104でり。
If it is determined that the output exceeds the slice level and the air-fuel ratio is rich, step 104 occurs.

チ・リーン判別フラグFRを判別する。The chi/lean determination flag FR is determined.

前記フラグFRは後述するように空燃比がり一ンである
ときにゼロがセットされるがら、空燃比がリーンからリ
ッチに反転した初回においては、ステップ104におい
て前記フラグFRはゼロであると判別されることになる
As will be described later, the flag FR is set to zero when the air-fuel ratio is at 1, but the first time the air-fuel ratio is reversed from lean to rich, the flag FR is determined to be zero in step 104. That will happen.

リーンからリッチへの判定初回で、ステップ104でフ
ラグFR=φであると判別されると、ステップ105へ
進み前記フラグFRに1をセットする。
When it is determined in step 104 that the flag FR=φ in the first determination from lean to rich, the process proceeds to step 105 and the flag FR is set to 1.

次のステップ106では、前回までの空燃比り−ン状態
においてカウントアツプされたタイマーtimeの値を
リーン時間を示すTmontLにセットし、ステップ1
07ではリッチ時間を計測させるために前記タイマーt
 imeをゼロリセットする。
In the next step 106, the value of the timer time counted up in the previous air-fuel ratio restoration state is set to TmontL indicating the lean time, and
07, the timer t is set to measure the rich time.
Reset ime to zero.

そして、ステップ108では、今回新たに検出されたリ
ーン時間TmontLと、前回までに算出されていたリ
ーン時間TtaontLの加重平均値Av慣ontLと
を加重平均し、その結果を新たにAvmont Lにセ
ットする。
Then, in step 108, the newly detected lean time TmontL and the weighted average value AvcontL of the lean time TtaontL calculated up to the previous time are weighted averaged, and the result is newly set in AvmontL. .

ステップ109では、空燃比フィードバック補正係数α
の前回値から所定の比例制御分PLを減算して、該空燃
比フィードバック補正係数αを基本燃料噴射量Tpに乗
算して求められる最終的な燃料噴射量Tiの減量を図っ
て、空燃比のリッチ状態が解消される方向に制御する。
In step 109, the air-fuel ratio feedback correction coefficient α
By subtracting a predetermined proportional control amount PL from the previous value of , and multiplying the basic fuel injection amount Tp by the air-fuel ratio feedback correction coefficient α to reduce the final fuel injection amount Ti, Control is performed in a direction that eliminates the rich state.

・ また、空燃比のリッチ状態が次回においても継続してい
るときには、前記ステップ104でフラグFRが1であ
ると判別されることにより、ステップ104からステッ
プ110へ進む。
- Furthermore, when the rich state of the air-fuel ratio continues next time, the flag FR is determined to be 1 in step 104, and the process proceeds from step 104 to step 110.

ステップ110では、前回までの空燃比フィードバック
補正係数αから、所定の積分制御分Iに燃料噴射量Ti
を乗算したを減算して、補正係数αの徐々に減少させる
ようにする。
In step 110, the fuel injection amount Ti is calculated from the previous air-fuel ratio feedback correction coefficient α to a predetermined integral control amount I.
The correction coefficient α is gradually decreased by subtracting the product multiplied by .

同様な制御がステップ103で空燃比がリーンであると
判別されたときにも行われ、空燃比のり一ン状態では前
記フラグFRにゼロがセットされ、また、リッチ時間A
vmont Rの設定が行われる(ステップ111〜1
17参照)。
Similar control is performed when it is determined in step 103 that the air-fuel ratio is lean, and when the air-fuel ratio is lean, the flag FR is set to zero, and the rich time A
vmont R settings are performed (steps 111-1
17).

一方、空燃比フィードバック補正係数αを積分制御した
後は、ステップ118へ進む。
On the other hand, after integrally controlling the air-fuel ratio feedback correction coefficient α, the process proceeds to step 118.

ステップ118では、酸素センサ17出力の最大値ma
x及び最小値minの前回値と所定値とをそれぞれに加
重平均して、may及びminが徐々に中央値付近に近
づくようにするが、次のステップ119〜ステツプ12
2では、最新の酸素センサ17出力VO□とmax及び
minとをそれぞれに比較して、最新値が加重平均結果
のmay及びminを越えたときには、最新値をmax
及びminにセットする。
In step 118, the maximum value ma of the oxygen sensor 17 output
The previous values and predetermined values of x and the minimum value min are each weighted averaged so that may and min gradually approach the median value, but in the next steps 119 to 12
2, the latest oxygen sensor 17 output VO□ is compared with max and min, and when the latest value exceeds may and min of the weighted average result, the latest value is
and set to min.

第7図のフローチャートに示すプログラムは、例エバB
 T D C60°を基準としてクランク角30’毎に
実行されるものであり、クランク角30’毎の酸素セン
サ17の出力■0□と、そのときの空燃比がリッチであ
ったかリーンであったがをメモリするようになっている
The program shown in the flowchart of FIG.
This is executed every 30' crank angle based on TDC60°, and the output of the oxygen sensor 17 at every 30' crank angle is 0□, and whether the air-fuel ratio at that time was rich or lean. It is designed to memorize.

まず、ステップ131では、酸素センサ17の出力をv
O2にセットし、次のステップ132では、カウンタi
で決定される番地にV Ozのデータをメモリさせる。
First, in step 131, the output of the oxygen sensor 17 is set to v
O2, and in the next step 132, the counter i
The data of V Oz is stored in the address determined by .

次のステップ133では、前記フラグFRに基づいて現
在の空燃比がリッチであるかリーンであるかを判別し、
フラグFRが1である空燃比のリッチ状態であるときに
は、ステップ134t\進んで前述と同じカウンタiで
決定される番地にフラグFRデータとして1をメモリさ
せ、フラグFRがφであるリーン状態ではステップ13
5でφをメモリさせる。
In the next step 133, it is determined whether the current air-fuel ratio is rich or lean based on the flag FR,
When the air-fuel ratio is in a rich state where the flag FR is 1, the process proceeds to step 134t\ and stores 1 as the flag FR data at the address determined by the same counter i as described above, and when the flag FR is in a lean state where the flag is φ, the step 13
5, memorize φ.

従って、カウンタiによって酸素センサ17の出力■0
□が時系列的にメモリされると共に、それぞれの出力■
0□が空燃比のリッチ状態におけるものであるか、又は
、リーン状態におけるものであるかが判別できるように
なっている。
Therefore, the output ■0 of the oxygen sensor 17 is determined by the counter i.
□ is memorized in chronological order, and each output ■
It is possible to determine whether 0□ is in a rich air-fuel ratio state or in a lean state.

第8図のフローチャートに示すプログラムは、前記第7
図のフローチャートでサンプリングされたデータに基づ
いて失火発生を診断するプログラムであり、クランク角
センサ10からBTDC70’毎の基準角度信号REF
が出力される毎に実行されるようになっている。
The program shown in the flowchart of FIG.
This is a program for diagnosing the occurrence of a misfire based on the data sampled in the flowchart shown in the figure.
It is executed every time the is output.

まず、ステップ151では、今回の基準角度信号REF
が#l気筒の圧縮上死点前70°に相当するものである
か否かを判別する。
First, in step 151, the current reference angle signal REF
It is determined whether or not corresponds to 70 degrees before the compression top dead center of the #l cylinder.

ここで、#1気筒用の基準角度信号REFでないと判別
されたとき、即ち、その他の#2〜#4気筒用の基準角
度信号REFであるときには、ステップ152へ進み、
後述するように空燃比のリッチ状態で酸素センサ17の
出力がリーン方向に変化したことを検出するためのスラ
イスレベルとなる5LO2を以下の式に従って算出する
Here, if it is determined that the reference angle signal REF is not for the #1 cylinder, that is, if it is the reference angle signal REF for the other #2 to #4 cylinders, the process proceeds to step 152;
As will be described later, 5LO2, which is a slice level for detecting that the output of the oxygen sensor 17 has changed in the lean direction when the air-fuel ratio is in a rich state, is calculated according to the following formula.

上記スライスレベルSLO,の算出式において、m i
 n及びmaxは、前記第6図のフローチャートにおい
て求められた酸素センサー7出力の最小・最大値であり
、上式によってリッチ空燃比時の出力よりも低くリッチ
・リーン判定レベルよりも高いスライスレベルSLO,
を設定し、リッチ空燃比状態で失火が発生してその気筒
からの未燃焼ガスが酸素センサー7に到達したときに、
−時的に出力が前記スライスレベルSLO□を下回る状
態となるように、5LO2を設定する(第10図参照)
In the formula for calculating the slice level SLO, above, m i
n and max are the minimum and maximum values of the output of the oxygen sensor 7 determined in the flowchart of FIG. ,
is set, and when a misfire occurs in a rich air-fuel ratio state and unburned gas from that cylinder reaches the oxygen sensor 7,
- Set 5LO2 so that the output temporarily falls below the slice level SLO□ (see Figure 10)
.

一方、ステップ151で今回の基準角度信号REFが#
1気筒用のものであるときには、ステップ153へ進む
On the other hand, in step 151, the current reference angle signal REF is #
If it is for one cylinder, the process advances to step 153.

ステップ153では、前記第7図のフローチャートでク
ランク角30°毎の酸素センサ17出力のサンプリング
に用いたカウンタiをゼロリセットすると共に、スライ
スレベルSLO□を下回る酸素センサ17出力をカウン
トするためのカウンタF、更に、前記カウンタFに基づ
く失火発生判別回数をカウントするカウンタZをそれぞ
れゼロリセ・ン卜する。
In step 153, the counter i used for sampling the output of the oxygen sensor 17 at every 30° crank angle in the flowchart of FIG. F. Further, a counter Z for counting the number of misfire occurrence determinations based on the counter F is reset to zero.

そして、次のステップ154では、まず、FR[i]の
判別を行い、カウンタiのときにサンプリングした酸素
センサ17出力■0□ (i)が、空燃比のリッチ状態
におけるものか、又は、空燃比のリーン状態におけるも
のであるかを判別する。
In the next step 154, FR[i] is first determined, and whether the oxygen sensor 17 output ■0□ (i) sampled at counter i is in a rich air-fuel ratio state or It is determined whether the fuel ratio is in a lean state.

フラグFRは空燃比リッチ状態において1がセットされ
るから、ステップ154で1であると判別されたときに
は、酸素センナ17出力■0゜[i)が空燃比のリッチ
状態でサンプリングされたデータであり、このときには
、ステップ155へ進んで酸素センサ17出力VOz(
i)と前記ステップ152で算出されるスライスレベル
5LO2を比較する。
Since the flag FR is set to 1 in the air-fuel ratio rich state, when it is determined in step 154 that it is 1, the oxygen sensor 17 output ■0° [i) is data sampled in the air-fuel ratio rich state. , at this time, the process advances to step 155 and the oxygen sensor 17 output VOz(
i) and the slice level 5LO2 calculated in step 152 above.

ここで、■0□ [i)≧SLO,であるときには安定
した空燃比のリッチ状態であり、このときにはステップ
156へ進んで前記カウンタFをゼロリセットする。
Here, when ■0□ [i)≧SLO, the air-fuel ratio is in a stable rich state, and in this case, the process proceeds to step 156 and the counter F is reset to zero.

一方、ステップ155で■0□ (i) < S L 
02であると判別されたときには、空燃比フィードバッ
ク制御による空燃比の反転時であることも想定されるが
、失火発生によって酸素センサ17出力が低下した場合
も考えられるので、ステップ157 l・進み前記カウ
ンタFがゼロであるか否かを判別する。そして、ゼロで
あるときには、ステップ160でカウンタFを1アツプ
させ、■0□ (i)<5LO2である状態が継続する
場合にはカウンタFがその都度カウントアツプされるよ
うにする。
On the other hand, in step 155 ■0□ (i) < S L
When it is determined that the air-fuel ratio is 02, it is assumed that the air-fuel ratio is being reversed by air-fuel ratio feedback control, but it is also possible that the output of the oxygen sensor 17 has decreased due to the occurrence of a misfire, so proceed to step 157 l. Determine whether or not counter F is zero. When it is zero, the counter F is incremented by 1 in step 160, and if the state of ■0□(i)<5LO2 continues, the counter F is incremented each time.

そして、ステップ157でカウンタFがゼロでないと判
別され、ステップ158でカウンタFが3であると判別
されたとき、即ち、3回連続して■0□(i ) < 
S L○2であると判別されたときには、かかるベース
空燃比がリッチの状態における連続的な空燃比のリーン
化傾向(第10図参照)が失火発生によるものであると
して、ステップ159で失火発生判別回数Zを1アツプ
させる。
Then, when it is determined in step 157 that the counter F is not zero, and in step 158 that the counter F is 3, that is, ■0□(i ) <
When it is determined that the air-fuel ratio is S L○2, it is assumed that the continuous trend toward lean air-fuel ratio (see FIG. 10) in the rich state of the base air-fuel ratio is due to the occurrence of a misfire, and in step 159, the occurrence of a misfire is determined. Increase the number of determinations Z by 1.

このような判別をステップ161でカウンタiが23以
上であると判別されるまで繰り返すべく、ステップ16
1でカウンタiで23未満であると判別されたときには
、ステップ162で前記カウンタiを1アツプさせて再
びステップ154からのステップ処理を行わせる。
In order to repeat such determination until it is determined in step 161 that the counter i is 23 or more, step 16 is performed.
If it is determined that the counter i is less than 23 at step 162, the counter i is incremented by 1 and the step processing from step 154 is performed again.

前記カウンタiの23は、#1気筒用の基準角度信号R
EFが出力される間にサンプリングされる酸素センサ1
7の出力数である24に対応させたものであり、カウン
タiをφから23までカウントアツプさせて24個の酸
素センサ17出力について全てスライスレベルSLO□
との比較を行わせる。
23 of the counter i is the reference angle signal R for the #1 cylinder.
Oxygen sensor 1 sampled while EF is output
This corresponds to 24, which is the output number of 7, and by counting up the counter i from φ to 23, all of the 24 oxygen sensor 17 outputs are at the slice level SLO□
Make a comparison with

#1気筒用の基準角度信号REFが出力される間でサン
プリングされた全ての酸素センサ17出力を全て判定し
、ステップ161でカウンタiが23以上であると判別
されると、ステップ163へ進み、それまでにカウント
アツプされた失火発生判別回数Zを1sto2に加算す
る。
All sampled outputs of the oxygen sensors 17 are determined while the reference angle signal REF for the #1 cylinder is being output, and when it is determined in step 161 that the counter i is 23 or more, the process proceeds to step 163. The number of misfire occurrence determinations Z that has been counted up up to that point is added to 1sto2.

次のステップ164では、前記カウンタiをゼロリセン
トし、再びカウンタiをφがらクランク角30°毎にカ
ウントアツプさせて、その都度に酸素センサ17出力が
サンプリングされるようにする。
In the next step 164, the counter i is reset to zero, and the counter i is again counted up every 30 degrees of the crank angle, so that the output of the oxygen sensor 17 is sampled each time.

上記ステップ163で設定される失火発生判別回数42
 s t O2が、前記第3図のフローチャートのステ
ップ50で用いられるものである。
Misfire occurrence determination count 42 set in step 163 above
s t O2 is used in step 50 of the flowchart of FIG. 3 above.

ここで、第3図のフローチャートに戻って説明を続ける
と、上記のようにして酸素センサ17出力に基づいて検
出された失火発生判別回数42 s t O2は、空燃
比のリッチ状態においてのみ検出した結果であるが、空
燃比のリーン状態では、元々が空燃比リーン状態である
ので失火発生によって未燃焼ガスが排出されてもそれが
酸素センサ17の出力変化として表れないため、検出が
不可能である。
Here, to continue the explanation by returning to the flowchart in FIG. 3, the misfire occurrence determination count 42 s t O2 detected based on the output of the oxygen sensor 17 as described above is detected only in the rich state of the air-fuel ratio. As a result, when the air-fuel ratio is in a lean state, since the air-fuel ratio is originally in a lean state, even if unburned gas is discharged due to a misfire, it does not appear as a change in the output of the oxygen sensor 17, so it cannot be detected. be.

しかしながら、全燃焼回数当たりの失火判別回数がどの
程度の割合であるかによって真の失火発生であるか否か
を判別させようとすると、全燃焼回数当たりの酸素セン
サ17出力に基づく失火判別回数を設定する必要がある
ので、ステップ50では、リッチ時間における失火発生
判別回数1 stO□と略同じ割合でリーン状態におい
ても失火が発生しているものと見做し、リッチ・リーン
に無関係に全燃焼回数当たりの失火発生を、リッチ状態
の酸素センサ17出力から求めたデータに基づいて下式
に従って推定設定するものである。
However, if we try to determine whether or not a true misfire has occurred based on the ratio of the number of misfire determinations per total number of combustions, it is difficult to determine the number of misfire determinations based on the output of the oxygen sensor 17 per total number of combustions. Therefore, in step 50, it is assumed that misfires occur in the lean state at approximately the same rate as the misfire occurrence determination number 1 stO The misfire occurrence per number of occurrences is estimated and set based on the data obtained from the output of the oxygen sensor 17 in the rich state according to the following formula.

このようにして、酸素センサ17出力から前記カウンタ
totalが所定値にまでカウントアツプされるまでの
間の失火発生判別回数0□LSTを設定すると、次のス
テップ51では、前記失火発生判別回数0□LSTと所
定値としてを比較して、酸素センサ17出力に基づいて
所定以上の割合で失火発生が判別されているか否かを判
別する。
In this way, when the number of misfire occurrence determinations 0□LST from the output of the oxygen sensor 17 until the counter total is counted up to a predetermined value is set, in the next step 51, the number of misfire occurrence determinations 0□LST is set. By comparing LST with a predetermined value, it is determined whether misfire occurrence is determined at a rate higher than a predetermined rate based on the output of the oxygen sensor 17.

そして、失火発生判別回数0zLSTが所定値以上であ
るときには、ステップ52で、前記ステップ29での判
別結果に基づいてカウントアツプされた連続2気筒失火
(例えば点火順#1→#3→#4→#2のときの#1気
筒と#3気筒)の検出回数のいずれか1つでも所定値を
越えるデータがあるか否かを判別する。
Then, when the misfire occurrence determination number 0zLST is equal to or greater than a predetermined value, in step 52, the consecutive two cylinder misfires counted up based on the determination result in step 29 (for example, the firing order #1→#3→#4→ It is determined whether there is any data exceeding a predetermined value in any one of the detection times of cylinder #1 and cylinder #3 at the time of #2.

ここで、連続2気筒失火の検出回数cnt42cnt3
4.cnt12.cnt13のいずれか1つでも所定値
(例えば12)を越えるものがあったときには、ステッ
プ53へ進み、2気筒の失火が発生していることを、例
えば運転席付近の表示パネルに表示させる。
Here, the number of consecutive two cylinder misfire detections cnt42cnt3
4. cnt12. If any one of cnt13 exceeds a predetermined value (for example, 12), the process proceeds to step 53, and a display panel near the driver's seat displays, for example, that a two-cylinder misfire has occurred.

一方、ステ・ンプ51で失火発生判別回数02LSTが
所定値以下であると判別されたときには、酸素センサ1
7出力から問題となるレベルの失火発生が確認されてい
ないので、何らの失火発生判定及びこれに基づく表示を
行うことなくステップ67以降へ進む。
On the other hand, when the step 51 determines that the misfire occurrence determination number 02LST is less than the predetermined value, the oxygen sensor 1
Since the occurrence of a misfire at a problematic level has not been confirmed from the output No. 7, the process proceeds to step 67 and subsequent steps without making any determination of the occurrence of a misfire and displaying based on the determination.

また、ステップ52で、連続2気筒失火の検出回数がい
ずれも所定値以下であると判別されて、連続する2気筒
での失火が発生していないときには、ステップ54以降
へ進む。
Further, if it is determined in step 52 that the number of consecutive two-cylinder misfire detections is less than or equal to a predetermined value, and no misfire has occurred in two consecutive cylinders, the process proceeds to step 54 and subsequent steps.

ステップ54〜ステツプ61では、1気筒毎の失火判別
回数がカウントアツプされているLSTI〜LST4そ
れぞれと所定値(例えば25)とを比較し、所定値を越
える回数だけ失火判別されて0る気筒については、その
気筒ナンバーと共に失火発生を表示させる。
In steps 54 to 61, each of LSTI to LST4, in which the number of misfire determinations for each cylinder has been counted up, is compared with a predetermined value (for example, 25), and for cylinders that have been misfired the number of times exceeding the predetermined value and are 0. displays the misfire occurrence along with the cylinder number.

そして、LSTI〜LST4をそれぞれ所定値と比較す
ると、ステップ62へ進み、前記ステ・ノブ47でカウ
ントアツプされる失火判別回数LSTDが所定値以上で
あるか否かを判別する。前記失火判別回数LSTDは、
点火順で連続する2気筒が失火した場合の失火回数、及
び、単独1気筒失火時の失火回数を含むと共に、機関1
回転相当の行程位相差である2気筒が失火した場合の失
火回数を不確実に含むことになる。従って、所定値以上
であって上記ステップ54〜61で1気筒の単独失火が
判定表示されていないときには(ステ・ンプ63)、2
気筒の失火発生をカウントしているものと見做すことが
できるので、ステップ64で2気筒の失火発生を表示さ
せる。
After each of LSTI to LST4 is compared with a predetermined value, the process proceeds to step 62, where it is determined whether the misfire determination number LSTD counted up by the steering knob 47 is greater than or equal to a predetermined value. The misfire determination number LSTD is
It includes the number of misfires when two consecutive cylinders misfire in the firing order, and the number of misfires when one single cylinder misfires.
This includes uncertainly the number of misfires when two cylinders misfire due to the stroke phase difference corresponding to the rotation. Therefore, when the value is equal to or greater than the predetermined value and the individual misfire of one cylinder is not determined and displayed in steps 54 to 61 (step 63), 2
Since it can be considered that the occurrence of a misfire in a cylinder is being counted, the occurrence of a misfire in two cylinders is displayed in step 64.

更に、上記のようにしてそれぞれの失火判別回数を所定
値と比べた結果、いずれの判別回数からも失火発生を特
定できず失火表示を行わなかったった場合には(ステッ
プ65)、ステップ51で排気中の酸素濃度の変化が失
火発生を示唆していることを確認しているから、いずれ
の失火判別回数からも正確に判定できない機関1回転相
当の行程位相差である2気筒(例えば点火順#1→#3
→#4→#2のときの#1気筒と#4気筒)が失火した
場合であると見做すことができ、ステップ66で2気筒
の失火発生状態を表示させる。
Furthermore, as a result of comparing each misfire determination number with a predetermined value as described above, if it is not possible to identify the occurrence of a misfire from any of the determination times and no misfire display is performed (step 65), in step 51 the exhaust gas is It has been confirmed that changes in the oxygen concentration in the engine indicate a misfire, so if there is a stroke phase difference equivalent to one revolution of the engine that cannot be accurately determined from any number of misfire determinations (for example, ignition order # 1 → #3
This can be considered to be a case where cylinders #1 and #4 (when → #4 → #2) have misfired, and the misfire occurrence state of the two cylinders is displayed in step 66.

即ち、機関1回転相当の行程位相差である2気筒が共に
失火した場合には、前記判別値LUに基づいて失火判別
することができず、また、判別値Zuによっては、前記
失火が単発的に発生した場合や周期のサンプリングタイ
ミングによっては検出できるが、前記失火態様が連続し
て発生する場合にはこれを確実に検出することができな
い。しかしながら、酸素センサ17出力からなんらかの
形で失火が発生していることが検出できるから、1気筒
単独でもなく、また、連続2気筒失火でないことが判別
値LUから検出されているときに、酸素センサ17出力
が失火発生を示していれば、かかる失火発生を、機関1
回転相当の行程位相差である2気筒が共に失火した状態
であると判別できるものである。
That is, if two cylinders with a stroke phase difference equivalent to one engine revolution both misfire, it is not possible to determine the misfire based on the discriminant value LU, and depending on the discriminant value Zu, it is possible that the misfire is a one-shot event. Although it can be detected depending on the periodic sampling timing or when the misfire occurs, it cannot be reliably detected when the misfire occurs continuously. However, since it is possible to detect that a misfire has occurred in some form from the output of the oxygen sensor 17, the oxygen sensor If the 17 output indicates that a misfire has occurred, the engine 1
It can be determined that both cylinders have misfired due to the stroke phase difference corresponding to the rotation.

従って、前記判別値Zuに基づく失火判別を省略し、機
関1回転毎の周期偏差の偏差に基づく判別値LUに基づ
いて連続2気筒失火又は単独1気筒失火が判別されてい
ない状態で、酸素センサ17出力が失火発生を示してい
るときに、機関1回転相当の行程位相差である2気筒が
共に失火した状態であると判別させるようにしても良い
Therefore, the misfire determination based on the discriminant value Zu is omitted, and the oxygen sensor When the output No. 17 indicates the occurrence of a misfire, it may be determined that two cylinders, which have a stroke phase difference equivalent to one revolution of the engine, are both misfiring.

上記のようにして失火表示を制御すると、ステップ67
〜ステツプ72で各失火判別回数をゼロリセットすると
共に、カウンタtotalをゼロリセットさせ、カウン
タtotalが再び所定値までカウントアツプされるま
での間の失火判別回数がそれぞれカウントアツプされる
ようにする。
When the misfire display is controlled as described above, step 67
- At step 72, each misfire discrimination number is reset to zero, and the counter total is reset to zero, so that each misfire discrimination number is incremented until the counter total is counted up again to a predetermined value.

〈発明の効果〉 以上説明したように本発明によると、機関1回転毎の回
転周期の偏差又はこの偏差の偏差に基づいて失火診断さ
せるときに、酸素濃度などの排気成分濃度に基づいて失
火発生を判別し、周期から検出できない機関1回転相当
の行程位相差である2気筒の失火が発生したときに、前
記排気成分濃度に基づいてかかる失火発生を判別できる
ようにしたので、1気筒単独、連続2気筒失火、更には
機関1回転相当の行程位相差である2気筒の失火をそれ
ぞれに検出することができ、失火診断の精度が向上する
という効果がある。
<Effects of the Invention> As explained above, according to the present invention, when diagnosing a misfire based on the deviation of the rotation period for each rotation of the engine or the deviation of this deviation, misfire occurrence is determined based on the concentration of exhaust components such as oxygen concentration. When a misfire occurs in two cylinders with a stroke phase difference equivalent to one revolution of the engine that cannot be detected from the period, the occurrence of a misfire can be determined based on the exhaust component concentration. It is possible to detect misfires in two consecutive cylinders, and even misfires in two cylinders with a stroke phase difference equivalent to one rotation of the engine, thereby improving the accuracy of misfire diagnosis.

【図面の簡単な説明】[Brief explanation of drawings]

第1図は本発明の構成を示すブロック図、第2図は本発
明の一実施例を示すシステム概略図、第3図〜第8図は
それぞれ同上実施例における失火診断の制御内容を示す
フローチャート、第9図は同上実施例における機関1回
転周期毎の偏差の偏差を用いた判別値の特性を示すタイ
ムチャート、第10図は同上実施例において排気成分濃
度としての排気中の酸素濃度に失火の影響が表れた様子
を示すタイムチャート、第11図は従来装置の問題点を
説明するためのタイムチャートである。 1・・・ill関9・・・、コントロールユニット10
・・・クランク角センサ  17・・・酸素センサ特許
出願人 日本電子機器株式会社 代理人 弁理士 笹 島  冨二雄 第2図 第3 図シ5
Fig. 1 is a block diagram showing the configuration of the present invention, Fig. 2 is a system schematic diagram showing an embodiment of the invention, and Figs. 3 to 8 are flowcharts showing control details of misfire diagnosis in the above embodiment. , Fig. 9 is a time chart showing the characteristics of the discriminant value using the deviation of the deviation for each rotation period of the engine in the above embodiment, and Fig. 10 is a time chart showing the characteristics of the discriminant value using the deviation of the deviation for each engine rotation period in the above embodiment. FIG. 11 is a time chart for explaining the problems of the conventional device. 1... ill control unit 9..., control unit 10
... Crank angle sensor 17 ... Oxygen sensor patent applicant Japan Electronics Co., Ltd. Agent Patent attorney Fujio Sasashima Figure 2 Figure 3 Figure 5

Claims (1)

【特許請求の範囲】  内燃機関の回転周期を計測する回転周期計測手段と、 該回転周期計測手段で検出される回転周期の機関1回転
毎の偏差又は該偏差の偏差に基づいて失火発生を診断す
る失火診断手段と、 内燃機関の排気系の集合部に介装されて排気成分濃度を
検出する排気成分濃度検出手段と、前記失火診断手段に
よって失火発生が診断されず、かつ、前記排気成分濃度
によって検出される排気成分濃度が失火発生に対応する
変化を示すときに、機関1回転相当の行程位相差である
2つの気筒の両方が失火していると診断する2気筒失火
診断手段と、 を含んで構成されたことを特徴とする内燃機関の失火診
断装置。
[Scope of Claims] A rotation period measuring means for measuring the rotation period of an internal combustion engine, and a misfire diagnosis based on a deviation of the rotation period detected by the rotation period measuring means for each rotation of the engine or a deviation of the deviation. misfire diagnosis means for detecting the concentration of exhaust components, which is installed in a collection part of an exhaust system of an internal combustion engine to detect the concentration of exhaust components; two-cylinder misfire diagnostic means for diagnosing that both of the two cylinders, which have a stroke phase difference equivalent to one engine rotation, are misfiring when the exhaust component concentration detected by shows a change corresponding to the occurrence of a misfire; A misfire diagnostic device for an internal combustion engine, comprising:
JP11679990A 1990-05-08 1990-05-08 Misfire diagnostic device of internal combustion engine Pending JPH0417756A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11679990A JPH0417756A (en) 1990-05-08 1990-05-08 Misfire diagnostic device of internal combustion engine

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11679990A JPH0417756A (en) 1990-05-08 1990-05-08 Misfire diagnostic device of internal combustion engine

Publications (1)

Publication Number Publication Date
JPH0417756A true JPH0417756A (en) 1992-01-22

Family

ID=14695957

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11679990A Pending JPH0417756A (en) 1990-05-08 1990-05-08 Misfire diagnostic device of internal combustion engine

Country Status (1)

Country Link
JP (1) JPH0417756A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013155672A (en) * 2012-01-30 2013-08-15 Mitsubishi Electric Corp Control apparatus for general purpose engine
CN112761790A (en) * 2021-02-03 2021-05-07 联合汽车电子有限公司 Misfire diagnostic method and misfire diagnostic device for two-cylinder engine

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013155672A (en) * 2012-01-30 2013-08-15 Mitsubishi Electric Corp Control apparatus for general purpose engine
US9267458B2 (en) 2012-01-30 2016-02-23 Mitsubishi Electric Corporation Control apparatus for general purpose engine
CN112761790A (en) * 2021-02-03 2021-05-07 联合汽车电子有限公司 Misfire diagnostic method and misfire diagnostic device for two-cylinder engine

Similar Documents

Publication Publication Date Title
US7103467B2 (en) Device for detecting response characteristics of sensor
EP0437212A2 (en) Method and apparatus for detecting misfired cylinder of internal combustion engine
JP2009121303A (en) Misfire detecting apparatus for internal combustion engine
JPH0972241A (en) Combustion state detector for internal combustion engine
JPH0249955A (en) Cylinder abnormality detecting device for internal combustion engine
EP0424917A2 (en) System for identifying misfire cylinder in internal combustion engine
JPH0472450A (en) Misfire cylinder detecting device for internal combustion engine
JPH07279740A (en) Fuel property detecting device for internal combustion engine
JP2807737B2 (en) Device for detecting combustion state of internal combustion engine
JPH0417756A (en) Misfire diagnostic device of internal combustion engine
JPH07310585A (en) Diagnostic device for cylinder internal pressure sensor
JPH04101071A (en) Misfire detecting device for internal combustion engine
JPH09126041A (en) Indicated mean effective pressure detecting device of internal combustion engine
JP2606413B2 (en) Ring gear sensor abnormality diagnosis device in misfire detection device of internal combustion engine
JPH10213058A (en) Misfire diagnostic device for engine
JPH03206337A (en) Misfiring cylinder detecting device for internal combustion engine
JP4186350B2 (en) Combustion state detection device for internal combustion engine
JPH0481548A (en) Combustion trouble detector for internal combustion engine
JP3631004B2 (en) Combustion state detection device for internal combustion engine
JPH07119532A (en) Misfire detection device for internal combustion engine
JP2543762B2 (en) Fuel supply control device for internal combustion engine
JP3782873B2 (en) Crank angle detection device for internal combustion engine
JPH03253770A (en) Misfiring cylinder detecting device for internal combustion engine
JPH0686837B2 (en) Misfire diagnosis device for multi-cylinder internal combustion engine
JPH03206360A (en) Misfired cylinder detection device of internal combustion engine