(57)【特許請求の範囲】
【請求項１】
内燃機関の回転に伴ってクランク角信号を周期的に出力するクランク角信号出力手段と、
前記クランク角信号に基づいて所定クランク角度幅の失火判定区間の時間を求めて回転速度変動量を演算する回転速度変動量演算手段と、
前記回転速度変動量に基づいて失火の有無を判定する失火判定手段とを備え、
前記回転速度変動量演算手段は、低回転域では高回転域と比較して、前記失火判定区間の位置を前側にずらすことを特徴とする内燃機関の失火検出装置。
【請求項２】
前記回転速度変動量演算手段は、前記失火判定区間の角度幅も機関回転速度に応じて変化させることを特徴とする請求項１に記載の内燃機関の失火検出装置。
【請求項３】
前記回転速度変動量演算手段は、機関回転速度が所定値以上のときに、前記失火判定区間の位置を所定クランク角遅らせると共に該失火判定区間の角度幅を長くすることを特徴とする請求項２に記載の内燃機関の失火検出装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、内燃機関（以下「エンジン」という）に発生する失火を回転速度低下量から検出する内燃機関の失火検出装置に関するものである。
【０００２】
【従来の技術】
エンジン運転中に失火が発生すると、エンジン回転速度が低下することから、特開平３−２７５９６２号公報に示すように、爆発行程毎に所定クランク角度幅の失火判定区間を設定し、この失火判定区間内にクランク角センサから一定クランク角毎に出力されるクランク角信号のパルス間隔から失火判定区間の時間を積算し、それを前回の失火判定区間の時間と比較することで、失火判定区間の時間の変動量即ち回転速度変動量を演算し、回転速度低下量（時間の変動量）が失火判定値を越えたときに失火と判定するようにしている。従来の一般的な失火検出装置は、ある特定の決った失火判定区間（例えば４気筒エンジンではＡＴＤＣ１４５℃Ａ〜２３５℃Ａの９０℃Ａ間又はＡＴＤＣ１７５℃Ａ〜２９５℃Ａの１２０℃Ａ間）を設定している。
【０００３】
【発明が解決しようとする課題】
ところで、図５に示すように、低回転域と高回転域では、失火発生後のエンジン回転速度の低下具合が異なり、エンジン回転速度低下の最下点の位置（クランク角）が高回転域ほど後側にずれる傾向があり、また、最下点からのエンジン回転速度の戻り具合も高回転域ほど遅くなる傾向がある。従って、従来のように失火判定区間の位置（クランク角）を固定したのでは、回転域によって最下点の位置が失火判定区間から外れてしまったり、失火判定区間の境界付近にずれてしまうことがあり、これが回転速度低下量の検出精度を低下させて失火検出精度を低下させる原因となっている。
【０００４】
ところで、失火判定区間のクランク角度幅を大きくすると、失火判定区間内に最下点が収まる回転域を拡大できるが、回転速度低下量は失火判定区間内の回転速度低下量の平均値として求められるため、失火判定区間が必要以上に大きくなると、相対的に回転速度低下量が少なく検出されてしまい、失火検出精度が低下してしまう（但し、外乱による瞬間的な回転変動の影響を受けにくくするために失火判定区間の角度幅をある程度大きくする必要がある）。従って、理想的には、失火判定区間の中間付近に最下点が位置し、失火判定区間の角度幅を、外乱による瞬間的な回転変動の影響を受けにくくしながら時間測定精度が低下しない範囲内で狭くすることが好ましいが、従来構成のものは、低回転域に合わせた設定（図５の従来技術１）又は高回転域に合わせた設定（図５の従来技術２）のいずれか一方に限定されてしまい、低回転域と高回転域のいずれか一方で失火検出精度が低下してしまう欠点があった。
【０００５】
本発明はこのような事情を考慮してなされたものであり、従ってその目的は、全回転域にわたって高い失火検出精度を確保することができる内燃機関の失火検出装置を提供することにある。
【０００６】
【課題を解決するための手段】
上記目的を達成するために、本発明の請求項１の内燃機関の失火検出装置は、失火判定区間の位置（クランク角）を機関回転速度に応じて変化させるものにおいて、低回転域では高回転域と比較して、前記失火判定区間の位置を前側にずらことを特徴とするものである。これにより、低回転域と高回転域のいずれに対しても失火判定区間の位置が適切なものとなり、全回転域にわたって高い失火検出精度を確保することができる。
【０００７】
更に、請求項２では、失火判定区間の角度幅も機関回転速度に応じて変化させる。つまり、図４及び図５に示すように、低回転域では、高回転域と比較して失火発生後のクランク角に対するエンジン回転速度の下降・上昇が速い。従って、低回転域では、失火判定区間の角度幅をある程度狭くした方が最下点付近で回転速度低下量を精度良く検出できる。
【０００８】
これに対し、高回転域では、失火発生後のクランク角に対するエンジン回転速度の下降・上昇が遅くなって、最下点付近がほぼフラットになるため、失火判定区間の角度幅をある程度大きくしても、回転速度低下量を精度良く検出できる。更に、高回転域では、クランク角信号のパルス間隔（時間）も短くなるため、失火判定区間の角度幅を大きくした方が時間測定精度の点で有利であるばかりか、外乱による瞬間的な回転変動の影響を受けにくくなる。請求項２は、このような回転域に応じた回転変動特性を考慮して失火判定区間をその位置と共に角度幅も回転域によって変化させるものである。
【０００９】
最も好ましい本発明の態様は、請求項３のように、機関回転速度が所定値以上のときに、失火判定区間の位置を所定クランク角遅らせると共に該失火判定区間の角度幅を長くする構成である。この構成により、低回転域と高回転域のいずれに対しても失火判定区間の位置と角度幅の双方が最良のものとなり、全回転域にわたって失火検出精度を更に向上することができる。
【００１０】
【発明の実施の形態】
以下、本発明の一実施形態を図１乃至図４に基づいて説明する。まず、図１に基づいてエンジン制御システム全体の概略構成を説明する。内燃機関であるエンジン１１の吸気管１２には、スロットルバルブ１３と吸気管圧力センサ１４が設けられ、また、エンジン１１の各気筒毎に燃料噴射弁１５が設けられている。エンジン１１には、イグナイタ１６で発生した高電圧を各気筒の点火プラグ（図示せず）に順次分配するディストリビュータ１７が取り付けられ、このディストリビュータ１７には、エンジン１１のクランク軸２回転に１回の割合でパルス信号を発生する気筒判別センサ１８と、所定のクランク角（本実施形態では３０℃Ａ）回転する毎にパルス状のクランク角信号を出力するクランク角信号出力手段であるクランク角センサ１９が設けられている。更に、エンジン１１のウォータジャケット２０には、エンジン冷却水温を検出する水温センサ２１が取り付けられている。
【００１１】
これら各センサからの検出信号は、エンジン制御回路２２に入力される。このエンジン制御回路２２は、ＣＰＵ２３，ＲＯＭ２４，ＲＡＭ２５，バックアップＲＡＭ２６，入出力ポート２７等を内蔵したマイクロコンピュータにより構成されている。このエンジン制御回路２２は、ＲＯＭ２４に記憶された各種のエンジン制御プログラムに従って燃料噴射量や点火時期を演算してエンジン１１の運転を制御すると共に、ＲＯＭ２４に記憶されている図３に示す失火判定プログラムに従って各気筒の失火の有無を判定し、失火検出時には警告ランプ２８を点灯させて運転者に警告する。
【００１２】
次に、図４（４気筒エンジンの例）に基づいて失火判定方式を説明する。本実施形態では、例えば５０００ｒｐｍで低回転域と高回転域に分け、低回転域では失火判定区間をＡＴＤＣ１４５℃Ａから開始し、その失火判定区間の角度幅を９０℃Ａとしている。一方、高回転域では、低回転域と比較して、失火発生後のエンジン回転速度低下の最下点の位置（クランク角）が後側にずれると共に、失火発生後のクランク角に対するエンジン回転速度の下降・上昇が遅くなって最下点付近がほぼフラットになるため、失火判定区間を低回転域より３０℃Ａ遅らせてＡＴＤＣ１７５℃Ａから開始すると共に、その失火判定区間の角度幅を低回転域より３０℃Ａ拡大して１２０℃Ａとしている。
【００１３】
そして、エンジン運転中は、失火判定区間内に出力されるクランク角信号のパルス間隔から失火判定区間の時間ＴＭＦ０を積算し、それを前回（４気筒エンジンでは１８０℃Ａ前）の失火判定区間の時間ＴＭＦ１と比較して両者の差ＤＭＦを算出することで、失火判定区間の時間の変動量即ち回転速度変動量を演算し、その回転速度低下量（時間変動量ＤＭＦ）が失火判定値ＭＦＲＥＦを越えたときに失火と判定するようになっている。
【００１４】
この失火判定処理は、以下に説明する図２及び図３のプログラムに従って実行される。図２に示すＴ３０割込みルーチンは、クランク角信号の立ち下がり入力毎に割込み処理にて実行される。本ルーチンが起動されると、まずステップ１０１で、前回のクランク角信号の立ち下がりから次のクランク角信号の立ち下がりまでの時間Ｔ３０、つまりクランク軸が３０℃Ａ回転するのに要した時間（以下「３０℃Ａ時間」という）を算出する。
【００１５】
そして、続くステップ１０２〜１０７の処理で、過去１５０℃Ａ前からの３０℃Ａ時間データＴ３０５〜Ｔ３００を順次更新する。ここで、Ｔ３００は今回の３０℃Ａ時間であり、Ｔ３０１は前回（３０℃Ａ前）の３０℃Ａ時間であり、Ｔ３０２は前々回（６０℃Ａ前）の３０℃Ａ時間であり、Ｔ３０３は９０℃Ａ前の３０℃Ａ時間であり、Ｔ３０４は１２０℃Ａ前の３０℃Ａ時間であり、Ｔ３０５は１５０℃Ａ前の３０℃Ａ時間である。尚、Ｔ３０□の□内の数字は図４のクランクＮｏ．に対応している。
【００１６】
一方、図３に示す失火検出ルーチンは、図４に示すクランクＮｏ．０のクランク角信号の立ち下がり入力毎に割込み処理にて実行される。本ルーチンが起動されると、まずステップ２０１で、エンジン回転速度ＮＥを読み込み、続くステップ２０２で、エンジン回転速度ＮＥが５０００ｒｐｍより低いか否か、つまり低回転域か高回転域かを判別する。もし、低回転域（ＮＥ＜５０００ｒｐｍ）であれば、ステップ２０３に進み、低回転域での失火判定区間の時間ＴＭＦ０を次式により算出する。
【００１７】
ＴＭＦ０＝Ｔ３０４＋Ｔ３０３＋Ｔ３０２
ここで、低回転域での失火判定区間は、ＡＴＤＣ１４５℃Ａから始まってＡＴＤＣ２３５℃Ａで終了する角度幅９０℃Ａの区間であり、この区間内に図２のＴ３０割込みルーチンで求められた３０℃Ａ時間であるＴ３０４，Ｔ３０３，Ｔ３０２を合算して、低回転域での失火判定区間の時間ＴＭＦ０を算出するものである。
【００１８】
また、上記ステップ２０２で、高回転域（ＮＥ≧５０００ｒｐｍ）と判定されれば、ステップ２０４に進み、高回転域での失火判定区間の時間ＴＭＦ０を次式により算出する。
ＴＭＦ０＝Ｔ３０３＋Ｔ３０２＋Ｔ３０１＋Ｔ３００
ここで、高回転域での失火判定区間は、ＡＴＤＣ１７５℃Ａから始まってＡＴＤＣ２９５℃Ａで終了する角度幅１２０℃Ａの区間であり、この区間内の３０℃Ａ時間であるＴ３０３，Ｔ３０２，Ｔ３０１，Ｔ３００を合算して高回転域での失火判定区間の時間ＴＭＦ０を算出するものである。
【００１９】
以上のようにして回転領域に応じて失火判定区間の時間ＴＭＦ０を算出した後、ステップ２０５に進み、今回算出した失火判定区間の時間ＴＭＦ０を前回（４気筒エンジンでは１８０℃Ａ前）の失火判定区間の時間ＴＭＦ１と比較して両者の差ＤＭＦを算出することで、失火判定区間の時間の変動量即ち回転速度変動量を演算する。これらステップ２０２〜２０５の処理が特許請求の範囲でいう回転速度変動量演算手段として機能する。
【００２０】
この後、ステップ２０６で、時間変化量ＤＭＦ（回転速度低下量）を失火判定値ＭＦＲＥＦと比較し、ＤＭＦ＞ＭＦＲＥＦであれば、失火と判定する。この際、失火判定値ＭＦＲＥＦは、エンジン回転速度ＮＥとエンジン負荷をパラメータとする二次元マップよりエンジン回転速度ＮＥとエンジン負荷を基に算出する。もし、失火（ＤＭＦ＞ＭＦＲＥＦ）と判定されれば、ステップ２０７に進み、警告ランプ２８を点灯させて運転者に警告すると共に、続くステップ２０８で、その失火の情報をバックアップＲＡＭ２６に記憶した後、ステップ２０９で、今回算出した失火判定区間の時間ＴＭＦ０を前回の失火判定区間の時間ＴＭＦ１として記憶し、次回の失火判定に用いる。尚、上記ステップ２０６で、失火と判定されない場合（ＤＭＦ≦ＭＦＲＥＦ）には、直ちにステップ２０９へ移行し、今回算出した失火判定区間の時間ＴＭＦ０を前回の失火判定区間の時間ＴＭＦ１として記憶し、本ルーチンを終了する。上記ステップ２０６の処理が特許請求の範囲でいう失火判定手段として機能する。
【００２１】
以上説明した実施形態によれば、低回転域と高回転域との間で失火判定区間の位置と角度幅の双方を変化させる。つまり、図４及び図５に示すように、失火発生後のエンジン回転速度低下の最下点の位置（クランク角）が高回転域ほど後側にずれると共に、最下点からのエンジン回転速度の戻り具合も高回転域ほど遅くなる傾向がある。換言すれば、低回転域では、高回転域と比較して失火発生後のクランク角に対するエンジン回転速度の下降・上昇が速い。従って、低回転域では、高回転域と比較して、失火判定区間の位置を前側にずらし、失火判定区間の角度幅をある程度狭くすることで、最下点付近で回転速度低下量を精度良く検出できる。
【００２２】
これに対し、高回転域では、失火発生後のエンジン回転速度低下の最下点の位置（クランク角）が後側にずれ、失火発生後のクランク角に対するエンジン回転速度の下降・上昇が遅くなって、最下点付近がほぼフラットになるため、高回転域では、失火判定区間の位置を後側にずらし、失火判定区間の角度幅をある程度大きくすることで、回転速度低下量を精度良く検出できる。更に、高回転域では、クランク角信号のパルス間隔（時間）も短くなるため、失火判定区間の角度幅を大きくした方が時間測定精度の点で有利であると共に、外乱による瞬間的な回転変動の影響を受けにくくなる。
【００２３】
本実施形態は、このような回転域に応じた回転変動特性を考慮して失火判定区間の位置と角度幅の双方を変化させることで、全回転域にわたって回転変動検出精度を向上させて失火検出精度を向上させるものであるが、失火判定区間の角度幅を変えずに失火判定区間の位置のみをエンジン回転速度に応じて変化させるようにしても良く、この場合でも本発明の所期の目的は達成できる。
【００２４】
また、本実施形態では、高回転域と低回転域との境界を５０００ｒｐｍに設定したが、例えば５５００ｒｐｍ、４５００ｒｐｍ、４０００ｒｐｍ、３５００ｒｐｍ、…のいずれかであっても良い。また、回転域を３領域以上に区分して各領域毎に失火判定区間の位置と角度幅（位置のみでも良い）を変化させるようにしても良い。
【００２５】
また、図３のステップ２０５では、今回算出した失火判定区間の時間ＴＭＦ０と前回の失火判定区間の時間ＴＭＦ１との差ＤＭＦを算出して回転速度変動量を推定するようにしたが、次式により今回の失火判定区間の角速度Ｋ／ＴＭＦ０と前回の失火判定区間の角速度Ｋ／ＴＭＦ１との差ＤＭＦを算出して回転速度変動量を推定するようにしても良い。
ＤＭＦ＝Ｋ／ＴＭＦ１−Ｋ／ＴＭＦ０      （Ｋ：定数）
さらに、特開昭６１−１１４４０号公報や特開昭５７−１０６８３４号公報等に記載されている回転変動量の算出方法を用いても良い。
【００２６】
尚、本実施形態では、クランク角信号を３０℃Ａ毎に発生するようにしたが、これに限定されず、例えば１５℃Ａ毎に発生するようにしても良い。また、エンジンの気筒数も４気筒に限定されないことは言うまでもない。
【図面の簡単な説明】
【図１】本発明の一実施形態を示すシステム全体の概略構成図
【図２】Ｔ３０割込みルーチンの処理の流れを示すフローチャート
【図３】失火検出ルーチンの処理の流れを示すフローチャート
【図４】エンジン回転域と失火判定区間の位置・角度幅との関係を説明するタイムチャート
【図５】従来のエンジン回転域と失火判定区間の位置・角度幅との関係を説明するタイムチャート
【符号の説明】
１１…エンジン（内燃機関）、１４…吸気管圧力センサ、１８…気筒判別センサ、１９…クランク角センサ（クランク角信号出力手段）、２２…エンジン制御回路（回転速度変動量演算手段，失火判定手段）。
【図１】
0003546565.tif 000002
【図２】
0003546565.tif 000003
【図３】
0003546565.tif 000004
【図４】
0003546565.tif 000005
【図５】
0003546565.tif 000006