(57)【要約】【課題】エンジンの回転変動に基づいて失火診断を行うエンジンの失火診断装置において、クランク角を検出する手段の機械的なばらつきによる失火の誤診断を回避する。【解決手段】クランク軸の１回転中に複数設定された相互に異なる計測区間それぞれでの経過時間を燃料カット中に計測して、前記経過時間を補正するための補正値を設定する一方、前記計測結果に基づいて前記複数の計測区間の間における角度比を演算し、前記角度比に基づいて前記補正値が異常であるか否かを判断し、異常と判断された前記補正値による前記経過時間の補正を禁止する。【選択図】図２
2009221856.tif 000002
【特許請求の範囲】
【請求項１】
クランク軸の１回転中に複数設定された相互に異なる計測区間をそれぞれに検出する検出手段と、
前記複数の計測区間それぞれでの経過時間を計測する計測手段と、
学習条件の運転状態において計測された前記経過時間に基づいて、前記複数の計測区間毎に、各計測区間の角度誤差による経過時間の誤差を補正するための補正値を演算する補正値演算手段と、
前記計測された経過時間を前記補正値によって補正し、該補正された経過時間に基づいて、失火の有無を判定する失火判定手段と、
前記経過時間又は前記補正値に基づいて、前記複数の計測区間の間における角度比を演算する角度比演算手段と、
前記角度比に基づいて前記補正値が異常であるか否かを判断し、異常と判断された前記補正値による前記経過時間の補正を禁止する補正禁止手段と、
を含んで構成されたことを特徴とするエンジンの失火診断装置。
【請求項２】
前記角度比演算手段が、エンジン回転速度毎に前記角度比を演算し、
前記補正禁止手段が、前記エンジン回転速度毎に演算された前記角度比の統計処理によって、前記角度比の正常範囲を設定し、前記正常範囲を外れる角度比に対応する補正値を、異常と判断することを特徴とする請求項１記載のエンジンの失火診断装置。
【請求項３】
前記補正禁止手段が、前記統計処理として、前記エンジン回転速度毎に演算された前記角度比のメジアン値を求め、該メジアン値を含む範囲として前記正常範囲を設定することを特徴とする請求項２記載のエンジンの失火診断装置。
【請求項４】
前記補正禁止手段が、異常と判断された前記補正値に基づく最終的な補正値の更新を禁止することを特徴とする請求項１〜３のいずれか１つに記載のエンジンの失火診断装置。
【請求項５】
前記補正値演算手段が、エンジン回転速度毎に前記補正値を演算し、
前記角度比演算手段が、エンジン回転速度毎に前記角度比を演算し、
前記補正禁止手段が、エンジン回転速度毎の補正値のうち、異常と判断した補正値を、他の異常と判断されなかった補正値に基づいて補正設定することを特徴とする請求項１〜３のいずれか１つに記載のエンジンの失火診断装置。
【請求項６】
前記補正禁止手段が、異常と判断した補正値を、他の異常と判断されなかった補正値に基づく補間演算によって求めた値に置き換えることを特徴とする請求項５記載のエンジンの失火診断装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、エンジンの失火診断装置に関し、詳しくは、クランク軸の回転速度の変動に基づいて失火の有無を判定する装置に関する。
【背景技術】
【０００２】
特許文献１には、基準クランク角信号の周期に基づいて失火の有無を診断する失火診断装置が開示され、更に、該装置では、基準クランク角信号の発生位置（クランク角センサ）の機械的なばらつきによる診断精度の低下を回避するために、燃料カット状態において、基準クランク角信号間の回転角のばらつきを求め、前記ばらつきに基づいて前記周期の計測結果を補正している。
【特許文献１】特許第２９４３０４５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし、例えばエンジンがダンパ付のフライホイールを備える場合には、前記フライホイールの影響で特定のエンジン回転速度域で回転変動が発生することがあり、また、パワートレイン各部の製造・組み付け誤差や経時劣化・汚濁などによって回転変動が発生することがあり、更には、路面からの振動を含む走行振動等によって各種の振動，回転むらが発生することがある。
【０００４】
このため、上記のような回転変動・回転むらによって、基準クランク角信号の発生位置（クランク角センサ）の機械的なばらつきが誤学習され、失火診断の精度が悪化してしまうことがあった。
本発明は上記問題点に鑑みなされたものであり、回転変動の発生によって前記機械的なばらつきが誤学習されてしまうことを回避できるエンジンの失火診断装置を提供することを目的とする。
【課題を解決するための手段】
【０００５】
そのため、本発明に係るエンジンの失火診断装置は、クランク軸の１回転中に複数設定された相互に異なる計測区間をそれぞれに検出し、前記複数の計測区間それぞれでの経過時間を計測し、学習条件の運転状態において計測された前記経過時間に基づいて、前記複数の計測区間毎に、各計測区間の角度誤差による経過時間の誤差を補正するための補正値を演算し、前記計測された経過時間を前記補正値によって補正し、該補正された経過時間に基づいて、失火の有無を判定する失火診断装置であって、
前記経過時間又は前記補正値に基づいて、前記複数の計測区間の間における角度比を演算し、前記角度比に基づいて前記補正値が異常であるか否かを判断し、異常と判断された前記補正値による前記経過時間の補正を禁止するようにしたことを特徴とする。
【発明の効果】
【０００６】
上記発明によると、計測区間を検出する手段の機械的なばらつきによって、計測区間の角度が本来の角度からずれていると、計測区間での経過時間から失火による回転変動を判断する失火診断の精度が低下する。
そこで、計測区間の角度誤差による経過時間の誤差を補正するための補正値を求め、経過時間の計測結果を前記補正値で補正し、補正した経過時間に基づいて失火の有無を判定する。
【０００７】
更に、計測区間の角度誤差を検出するための学習条件の運転状態において、回転変動が発生すると、前記補正値の学習精度が低下するため、前記計測区間の間における角度比を、前記経過時間又は前記補正値に基づいて求め、該角度比に基づき、補正値が回転変動に影響された値（異常値）であるか否かを判別し、異常値に基づいて経過時間が補正されてしまうことを回避する。
【０００８】
即ち、ぞれぞれの計測区間に角度誤差があるとしても、角度誤差が変化しない限り、ある計測区間の実際の角度と別の計測区間の実際の角度との比（角度比）は略一定であり、前記角度比が変化する場合には、経過時間の測定結果が、エンジン回転変動の影響を受けているものと推定でき、回転変動の影響を受けた測定時間に基づく補正値による補正を禁止する。
【０００９】
従って、補正値を学習させる条件で回転変動が発生しても、これに影響されて補正値が誤学習されることを防止でき、失火検出の精度を維持することができる。
【発明を実施するための最良の形態】
【００１０】
以下に本発明の実施の形態を説明する。
図１は、本願発明に係る失火診断装置が適用される車両用エンジンのシステム図である。
図１に示すエンジン１０１の吸気管１０２には、電子制御スロットル装置１０３が介装されている。
【００１１】
前記電子制御スロットル装置１０３を通過した空気は、吸気バルブ１０４を介して、燃焼室１０５内に吸入される。
前記燃焼室１０５内の燃焼後のガスは、排気バルブ１０６を介して排気管１０７に排出され、前記排気管１０７に介装されたフロント触媒コンバータ１０８及びリア触媒コンバータ１０９で浄化された後、大気中に放出される。
【００１２】
前記吸気バルブ１０４及び排気バルブ１０６は、それぞれ、吸気カムシャフト１１０Ａ，排気カムシャフト１１０Ｂによって開閉駆動される。
また、各気筒の吸気バルブ１０４上流側の吸気ポート１１１には、燃料噴射弁１１２が設けられる。
前記燃料噴射弁１１２は、エンジンコントロールユニット（以下、ＥＣＵと略す）１１３から出力される噴射パルス信号によって開弁駆動されると、燃料を吸気バルブ１０４に向けて噴射する。
【００１３】
尚、燃料噴射弁１１２が燃焼室１０５内に直接燃料を噴射する筒内直接噴射式のエンジンであっても良い。
燃焼室１０５内に空気と共に吸引された燃料は、点火プラグ１１４による火花点火によって着火燃焼する。
各点火プラグ１１４には、それぞれにパワートランジスタを内蔵したイグニッションコイル１１５が設けられており、前記ＥＣＵ１１３は、前記パワートランジスタのオン・オフを制御することによって、各気筒の点火時期（点火進角値）をそれぞれ独立に制御する。
【００１４】
前記ＥＣＵ１１３には、アクセル開度ＡＰＳを検出するアクセルペダルセンサ１１６、エンジン１０１の吸入空気量ＱＡを検出するエアフローメータ１１５、ドライブプレートに取り付けたシグナルプレートに形成された突起部等の被検出部を検出することで、クランクシャフト１２１が単位クランク角度だけ回転する毎にポジション信号ＰＯＳを出力するクランク角センサ１１７、スロットルバルブ１０３ｂの開度ＴＶＯを検出するスロットルセンサ１１８、エンジン１０１の冷却水温度Ｔｗを検出する水温センサ１１９、吸気カムシャフト１１０Ａの回転に同期して気筒判別信号ＰＨＡＳＥを出力するカムセンサ１２０などからの信号が入力される
前記ポジション信号ＰＯＳは、クランク角で１８０deg間隔の２箇所で、前記単位クランク角に相当する周期の数倍（例えば３倍）の周期になるように前記被検出部を設けてあり、前記ＥＣＵ１１３は、前記ポジション信号ＰＯＳの周期が長くなる部分を検出することで、クランク角１８０deg毎の基準クランク角位置ＲＥＦを検出する。
【００１５】
前記エンジン１０１は、直列４気筒エンジンであり、前記基準クランク角位置ＲＥＦは、気筒間の行程位相差（燃料噴射間隔・点火間隔）である１８０deg毎に検出されることになり、前記基準クランク角位置ＲＥＦを基準に、各気筒における燃料噴射タイミング，点火タイミングが検出される。
前記ＥＣＵ１１３は、前記基準クランク角位置ＲＥＦの検出周期を計測して、エンジン１０１の回転速度ＮＥを算出する。
【００１６】
尚、クランク角１８０deg毎に基準クランク角信号ＲＥＦを出力する基準クランク角センサを、前記ポジション信号ＰＯＳを出力するクランク角センサ１１７と共に備えるようにすることができ、その場合、前記ポジション信号ＰＯＳの周期はクランクシャフト１２１の１回転中に全て同一とすることができる。
また、前記ＥＣＵ１１３は、エンジン回転速度Ｎｅの変動に基づいて失火の有無を判定する失火判定手段としての機能をソフトウェア的に有しており、係る失火判定手段としての機能を、図２のフローチャートに従って詳細に説明する。
【００１７】
図２のフローチャートに示すルーチンは所定微小時間毎に割り込み実行されるようになっている。
まず、ステップＳ１０１では、減速燃料カット中であるか否かを判断する。
前記ＥＣＵ１１３は、エンジン回転速度がカット開始回転速度以上であって、かつ、アクセル開度ＡＰＳが全閉である減速運転状態において、前記燃料噴射弁１１２による燃料噴射を停止させ、エンジン回転速度がリカバー回転速度（＜カット開始回転速度）を下回るか、アクセルペダルが踏み込まれると、燃料噴射弁１１２による燃料噴射を再開させる、減速燃料カット制御を行う。
【００１８】
前記ステップＳ１０１では、上記の減速燃料カット制御によって、燃料噴射弁１１２による燃料噴射を停止させている状態であるか否かを判断させる。
そして、減速燃料カット中であるときには、前記クランク角センサ１１７の機械的ばらつきによる検出角度のばらつきを学習すべく、ステップＳ１０２以降へ進む。
前記クランク角センサ１１７の機械的ばらつきは、部品の寸法精度や組み付け誤差、経時劣化や破損・汚濁、クランク角センサ１１７を構成するピックアップと被検出部との間のギャップ変化などを要因とし、例えば、前記ポジション信号ＰＯＳを発生させるための被検出部（凸部など）が一部で欠落していることで、本来前記ポジション信号ＰＯＳが発生する位置で発生せず、ポジション信号ＰＯＳのカウントによる角度検出に誤差を生じる場合などが含まれる。
【００１９】
燃料噴射が行われ、燃焼室１０５内で燃焼圧力が発生する場合（非燃料カット中）には、気筒間における燃焼ばらつきによって回転変動が発生するため、前記クランク角センサ１１７の機械的ばらつきによる検出角度のばらつきを、エンジン回転速度から精度良く学習することができない。
そこで、燃料噴射が停止されていて、エンジン１０１が慣性で回転している燃料カット中であることを、前記機械的ばらつきによる検出角度のばらつきを学習するための条件とする。
【００２０】
ステップＳ１０２では、エンジン回転速度ＮＥの変化、具体的には、エンジン回転速度ＮＥの更新周期の間におけるエンジン回転速度ＮＥの変化量の絶対値が許容値以下であるか否かを判断する。
例えば、燃料カット直後などのエンジン回転速度ＮＥが不安定な状態では、エンジン回転速度ＮＥの変動を、前記クランク角センサ１１７の機械的ばらつきによる検出角度のばらつきとして誤学習してしまうことになる。
【００２１】
そこで、燃料カットによってエンジン回転速度ＮＥが一定割合で減少している状態（マイナスの加速度が一定の状態）で学習を行わせるべく、前記ステップＳ１０２でエンジン回転速度ＮＥの変化が急激でない状態であるか否かを判断させる。
尚、ステップＳ１０２に代えて、又は、ステップＳ１０２での判定に加えて、燃料カット開始時から予め設定された規定時間が経過しているか否かを判断させ、前記規定時間内での学習を禁止させることができる。
【００２２】
前記規定時間は、燃料カットの開始からエンジン回転速度ＮＥの変化が安定するようになるまでの時間であり、予め実験等によって適合される。
燃料カット中であって、エンジン回転速度ＮＥの減少変化が安定しているときには、ステップＳ１０３へ進み、失火検出に用いる計測区間だけ回転するのに要する時間（計測区間の経過時間）を測定し、前記クランク角センサ１１７の機械的ばらつきによる検出角度のばらつき分だけ、測定時間を補正するための補正値ＴＫＭＦを、該測定時間に基づいて算出させる。
【００２３】
本実施形態では、前記クランク角センサ１１７からの信号に基づいて、図３に示すように、それぞれクランク角で６０degの角度範囲であって、相互にクランク角で１８０degだけずれた２つ計測区間Ａ，Ｂを検出し、それぞれの計測区間の通過時間（瞬間回転速度、角速度）を計測して、失火による回転変動を検出させる。
しかし、クランク角センサ１１７からの信号に基づき検出される計測区間Ａ，Ｂが本来の６０degからずれていると、失火の発生（回転速度の変化）がないとしても２つの計測区間Ａ，Ｂの経過時間に差異が生じ、失火が発生していると誤診断してしまう可能性がある。
【００２４】
そこで、２つの計測区間Ａ，Ｂの角度誤差を検出し、角度誤差分だけ経過時間の測定結果をそれぞれに補正して、同じ角度だけ回転するのに要した時間を対比させることができるようにするものである。
本実施形態における回転角６０degの２つの計測区間は、図３及び図４に示すように、点火順を＃１→＃３→＃２→＃４としたときに、＃３気筒及び＃４気筒の上死点前７０degから上死点前７０degまで（＃１気筒及び＃２気筒の上死点後１１０degから上死点後１７０degまで）の計測区間Ａと、＃１気筒及び＃２気筒の上死点前７０degから上死点前７０degまで（＃３気筒及び＃４気筒の上死点後１１０degから上死点後１７０degまで）の計測区間Ｂと、の２つの計測区間からなる。
【００２５】
そして、前記ＥＣＵ１１３は、前記クランク角センサ１１７からのポジション信号の発生周期が部分的に長くなる位置を基準クランク角位置ＲＥＦとして検出し、該基準クランク角位置ＲＥＦからのポジション信号の発生数をカウントすることで、前記計測区間を検出する（検出手段）。
ここで、例えば、前記計測区間に相当するシグナルプレートの角度範囲に設けられる被検出部（凸部など）に抜けや欠けがあると、計測区間が本来の角度よりも大きな角度範囲に検出されることになる。
【００２６】
尚、クランクシャフト１２１の１回転中に相互に異なる区間として複数の計測区間が設定されればよく、例えば、クランクシャフト１２１の１回転を２つの領域に区分し、回転角１８０degの２つの計測区間を設定しても良いし、計測区間の一部が重複しても良い。
また、エンジン１０１は４気筒エンジンに限定されず、気筒間における行程の位相差が１２０degである６気筒機関では、クランクシャフト１２１の１回転中に相互に異なる３つの計測区間を設定する。
【００２７】
前記補正値ＴＫＭＦの算出は、以下のようにして行われる。
まず、前記基準クランク角位置ＲＥＦの信号に基づいて、エンジン１０１の１回転を検出し、該１回転に要した時間Ｔ１Ｒを求める。
具体的には、基準クランク角位置ＲＥＦが検出された時点でのフリーランカウンタの値を読み取って記憶するようにし、前々回（１回転前）の基準クランク角位置ＲＥＦの検出時におけるカウンタ値と、最新の基準クランク角位置ＲＥＦの検出時におけるカウンタ値との差を、エンジン１０１の１回転に要した時間Ｔ１Ｒとして求める。
【００２８】
ここで、前記計測区間は、クランク角で６０degに設定されているから、該計測区間の経過時間ＴＳ（計測区間を通過するのに要した時間）と、前記エンジン１０１の１回転に要した時間Ｔ１Ｒを６で除算した値Ｔ１Ｒ／６とは、一致するはずであり、前記Ｔ１Ｒ／６に対するＴＳの差が、計測区間の角度誤差を示すことになる。
そこで、計測区間Ａでの経過時間ＴＡと、計測区間Ｂでの経過時間ＴＢとをそれぞれに計測し（計測手段）、経過時間ＴＡを補正するための補正値ＴＫＭＦ１２と、経過時間ＴＢを補正するための補正値ＴＫＭＦ３４とを、下式に従って算出する（補正値算出手段）。
【００２９】
ＴＫＭＦ１２＝（Ｔ１Ｒ／６）／ＴＡ
ＴＫＭＦ３４＝（Ｔ１Ｒ／６）／ＴＢ
例えば、計測区間が本来の角度６０degよりも大きな角度範囲として検出されると、Ｔ１Ｒ／６よりも、計測区間の経過時間が長くなり、これによって、前記補正値ＴＫＭＦは1.0よりも小さい値に算出され、前記補正値ＴＫＭＦを経過時間の測定結果に乗算することで、経過時間の測定値が減少補正されることになる。
【００３０】
従って、計測区間の角度が本来の角度よりも大きい場合には、余分な角度分に相当する時間が、経過時間の計測結果から排除され、本来の角度だけ回転するのに要した時間が求められることになる。
前記補正値ＴＫＭＦ１２及び補正値ＴＫＭＦ３４は、エンジン回転速度の領域（例えば０rpm〜４８００rpm）を複数（例えば１３）に分けた区分回転領域毎（回転速度の格子毎）に記憶されるようになっており、同一の区分回転領域内での算出結果を加重平均し、該加重平均結果をそのときの区分回転領域での値として更新記憶される。
【００３１】
ステップＳ１０４では、燃料カットをキャンセルして燃料噴射を再開させる条件（リカバリー条件）が成立したか否か、又は、前記補正値ＴＫＭＦの学習条件が非成立になったか否かを判断する。
燃料噴射の再開などによって補正値ＴＫＭＦの学習条件が非成立になると、ステップＳ１０５へ進み、補正値ＴＫＭＦ１２と補正値ＴＫＭＦ３４との比（ＴＫＭＦ１２／ＴＫＭＦ３４）を、前記区分回転領域毎に算出する（角度比演算手段）。
【００３２】
前記ＴＫＭＦ１２／ＴＫＭＦ３４は、計測区間Ａ，Ｂの角度比を示すことになり、例えば、計測区間Ａ，Ｂの角度が本来の６０degからずれていても、ずれの方向及び絶対値が同じであれば、前記ＴＫＭＦ１２／ＴＫＭＦ３４は１になり、計測区間Ａの角度が計測区間Ｂの角度よりも大きい場合には、ＴＫＭＦ１２＜ＴＫＭＦ３４となって、前記ＴＫＭＦ１２／ＴＫＭＦ３４は1.0よりも小さい値に算出され、角度の差が大きいほど前記ＴＫＭＦ１２／ＴＫＭＦ３４の値はより小さくなる。
【００３３】
尚、前記補正値ＴＫＭＦ１２と補正値ＴＫＭＦ３４との比を算出する代わりに、経過時間ＴＡと経過時間ＴＢとの比を、角度比を示す値として算出させることができる。
ステップＳ１０６では、区分回転領域毎に算出したＴＫＭＦ１２／ＴＫＭＦ３４（角度比）について統計処理を行うことで、前記ＴＫＭＦ１２／ＴＫＭＦ３４の異常値を判別するための判定基準（中心値）を設定する。
【００３４】
具体的には、前記区分回転領域毎に算出したＴＫＭＦ１２／ＴＫＭＦ３４のメジアン値MEDIANを、判定基準として求める。
前記メジアン値とは、測定値を大きさの順に並べたとき、ちょうどその中央に当たる１つの値であり、１３個の区分回転領域毎にＴＫＭＦ１２／ＴＫＭＦ３４が求められ、ＴＫＭＦ１２／ＴＫＭＦ３４のデータが１３個存在する場合には、測定値を大きさの順に並べたとき、最大値（最小値）から７番目の値がメジアン値となる。
【００３５】
後述するように、前記ＴＫＭＦ１２／ＴＫＭＦ３４のうち異常値と判断された値は、正常値であると判断された他の回転領域の値に基づいて補正設定され、異常値に基づく経過時間ＴＡ，ＴＢの補正が禁止されるようになっている（補正禁止手段）。
区分回転領域毎に算出したＴＫＭＦ１２／ＴＫＭＦ３４の統計処理として平均処理を用いることが可能であるが、前記補正値ＴＫＭＦのばらつきは、平均値を中心とした正規分布とならないため、平均値では中心値を表すことができない。
【００３６】
例えば、図４に示すように、燃料カット状態で回転変動が発生した場合、回転変動によって、計測期間Ａの経過時間ＴＡがより長く、計測区間Ｂの経過時間ＴＢはより短く計測されるため、ＴＫＭＦ１２／ＴＫＭＦ３４は、実際の角度比を表さなくなる。
特開２００７−１５５１３２号公報に開示されるようなダンパ付のフライホイールをエンジンが備える場合に、特定のエンジン回転域でダンパ付のフライホイールが共振周波数を有することなどが、燃料カット状態での回転変動の要因となる。
【００３７】
そして、図５に示すように、例えば、２８００rpmで回転変動が発生してＴＫＭＦ１２／ＴＫＭＦ３４の値が、他の回転領域でのＴＫＭＦ１２／ＴＫＭＦ３４に比して格別に大きく算出されると、この２８００rpmでの異常値に影響されて平均値が高く算出される結果、平均値を中心に正常範囲を定め、異常判別を行わせるようにすると、本来の正常値が正常範囲内になるように正常範囲を広くする必要が生じ、その結果、異常値までもが正常範囲内に含まれることになってしまう場合がある。
【００３８】
これに対し、メジアン値であれば、２８００rpmで回転変動が発生してＴＫＭＦ１２／ＴＫＭＦ３４の値が格別に大きく算出されたとしても、２８００rpmでのＴＫＭＦ１２／ＴＫＭＦ３４の値の大きさにはメジアン値の大きさが影響を受けないので、ほぼ中心値をトレースでき、回転変動を受けて算出されたＴＫＭＦ１２／ＴＫＭＦ３４の異常を精度良く判別できる（図６（Ａ）参照）。
【００３９】
尚、異常値を判別するための判定基準（中心値）として、本実施形態では、メジアン値を用いるが、この他、回転領域毎に求めたＴＫＭＦ１２／ＴＫＭＦ３４から最大値・最小値を除いて平均値を求め、該平均値を判定基準としたり、回転領域毎に求めたＴＫＭＦ１２／ＴＫＭＦ３４のうちで最も出現率（頻度）の高い値を判定基準としたりすることができる。
【００４０】
即ち、ある回転領域でのみＴＫＭＦ１２／ＴＫＭＦ３４の値が格別に大きくなっても、これに影響されないような統計処理で、判定基準を設定できればよい。
ステップＳ１０７では、前記メジアン値±既定値を正常範囲として設定し、区分回転領域毎に算出したＴＫＭＦ１２／ＴＫＭＦ３４のうち、前記正常範囲内に含まれるＴＫＭＦ１２／ＴＫＭＦ３４の個数が、判定値以上であるか否かを判断する。
【００４１】
前記正常範囲を特定するための既定値は、予め記憶された一定値とすることができる他、回転領域毎のＴＫＭＦ１２／ＴＫＭＦ３４とメジアン値との偏差の絶対値の最大値や、回転領域毎のＴＫＭＦ１２／ＴＫＭＦ３４のうちの最大値と最小値との偏差や、最大・最小値を除く回転領域毎のＴＫＭＦ１２／ＴＫＭＦ３４の平均値とメジアン値との偏差などに応じて可変に設定することができる。
【００４２】
そして、メジアン値MEDIANに基づき設定された正常範囲内に含まれるＴＫＭＦ１２／ＴＫＭＦ３４の個数が、判定値以上（全格子のうちの所定割合以上）である場合には、今回求めたメジアン値が計測区間Ａ，Ｂの角度比の中心値を精度良く示していると判断し、ステップＳ１０８へ進み、今回求めたメジアン値MEDIANを判定基準として確定させる。
即ち、各回転領域のＴＫＭＦ１２／ＴＫＭＦ３４の大部分が、メジアン値MEDIAN近傍の値を示すときに、今回求めたメジアン値MEDIANを判定基準として確定させる。
【００４３】
前記確定処理として、具体的には、前回までにステップＳ１０８で確定処理されたメジアン値MEDIANdと、今回求めたメジアン値MEDIANとの平均値を求め、この平均値を新たにメジアン値MEDIANdとして更新記憶させる処理を行う。
MEDIANd＝（MEDIAN＋MEDIANd）／２
一方、メジアン値MEDIANに基づき設定された正常範囲内に含まれるＴＫＭＦ１２／ＴＫＭＦ３４の個数が、判定値未満である場合には、判定基準としてのメジアン値MEDIANが正しく求められなかったものと推定し、ステップＳ１１１へ進む。
【００４４】
即ち、メジアン値MEDIANが正しく求められた場合には、その値は計測区間Ａ，Ｂの角度比を示し、大部分の回転領域では、ＴＫＭＦ１２／ＴＫＭＦ３４がメジアン値MEDIAN付近の値を示すはずであり、各回転領域でのＴＫＭＦ１２／ＴＫＭＦ３４がメジアン値MEDIAN付近の値を示さない場合には、メジアン値MEDIANが計測区間Ａ，Ｂの角度比を正しく示していないと判断する。
【００４５】
ステップＳ１０８で今回求めたメジアン値MEDIANを判定基準として確定させ、メジアン値MEDIANdを更新記憶させると、次に、ステップＳ１０９へ進む。
ステップＳ１０９では、異常なＴＫＭＦ１２／ＴＫＭＦ３４が算出された区分回転領域の補正値ＴＫＭＦ１２，ＴＫＭＦ３４を、他の回転領域の補正値ＴＫＭＦ１２，ＴＫＭＦ３４に基づく補間演算によって補正設定する処理の実行許可条件が成立しているか否かを判断する。
【００４６】
具体的には、前記メジアン値MEDIANd±既定値を、ＴＫＭＦ１２／ＴＫＭＦ３４の正常範囲として設定し、該正常範囲を外れるＴＫＭＦ１２／ＴＫＭＦ３４を異常値とし、前記正常範囲内のＴＫＭＦ１２／ＴＫＭＦ３４を正常値として判別し、ＴＫＭＦ１２／ＴＫＭＦ３４が異常値であると判断された回転領域が、最小回転速度領域及び／又は最大回転速度領域であるときに、前記実行許可条件の不成立を判定する。
【００４７】
即ち、本実施形態では、最小回転速度領域及び／又は最大回転速度領域でのＴＫＭＦ１２／ＴＫＭＦ３４が異常値である場合に、補間演算による補正値ＴＫＭＦ１２，ＴＫＭＦ３４の設定を禁止することで、外挿補間演算による異常値の補正設定を回避する。
これは、最小回転速度領域及び／又は最大回転速度領域でのＴＫＭＦ１２／ＴＫＭＦ３４が異常値である場合に、最小回転領域よりも高い領域での（最大回転速度領域よりも低い領域での）補正値ＴＫＭＦ１２，ＴＫＭＦ３４の特性から、最小回転領域（最大回転領域）での補正値ＴＫＭＦ１２，ＴＫＭＦ３４を推定する場合には、正常値で挟まれる回転領域での補正値ＴＫＭＦ１２，ＴＫＭＦ３４を推定する場合に比べて、補間演算による推定精度が大きく低下するためである。
【００４８】
また、ＴＫＭＦ１２／ＴＫＭＦ３４が異常値であると判断された回転領域が、最大個数（例えば４）以上連続する場合には、前記実行許可条件の不成立を判定する。
ＴＫＭＦ１２／ＴＫＭＦ３４が異常値であると判断された回転領域が、ＴＫＭＦ１２／ＴＫＭＦ３４が正常値であると判断された回転領域に挟まれているとしても、正常判断された回転領域の間が大きく隔たっていると、補間演算による推定精度が悪化するため、補間演算による推定を禁止する。
【００４９】
補間演算による補正値ＴＫＭＦ１２，ＴＫＭＦ３４の補正設定が禁止された場合、ＴＫＭＦ１２／ＴＫＭＦ３４が異常値であると判断された回転領域の補正値ＴＫＭＦ１２，ＴＫＭＦ３４として、前回までに確定されていてバックアップされているデータを当該回転領域の補正値ＴＫＭＦ１２，ＴＫＭＦ３４として再ストアさせる。
ＴＫＭＦ１２／ＴＫＭＦ３４が正常値であると判断された回転領域の補正値ＴＫＭＦ１２，ＴＫＭＦ３４については、正常判断された値に基づいて更新させる。
【００５０】
尚、補正値ＴＫＭＦ１２，ＴＫＭＦ３４のバックアップがなされていない初期状態において、換言すれば、補正値ＴＫＭＦ１２，ＴＫＭＦ３４の記憶データが全て初期値である未学習状態において、ＴＫＭＦ１２／ＴＫＭＦ３４が異常値であると判断された回転領域の補正値ＴＫＭＦ１２，ＴＫＭＦ３４を補間演算で求めることが禁止された場合には、回転領域毎に求めたＴＫＭＦ１２，ＴＫＭＦ３４を全て初期値（例えば1.0）にリセットし、学習の未終了状態を維持させる。
【００５１】
一方、最小回転速度領域及び／又は最大回転速度領域でのＴＫＭＦ１２／ＴＫＭＦ３４が異常値でなく、かつ、ＴＫＭＦ１２／ＴＫＭＦ３４が異常値であると判断された回転領域が、最大個数（例えば４）以上連続しておらず、前記実行許可条件が成立する場合には、ステップＳ１１０へ進む。
ステップＳ１１０では、前記メジアン値MEDIANd±既定値である正常範囲を外れるＴＫＭＦ１２／ＴＫＭＦ３４が算出された回転領域の補正値ＴＫＭＦ１２，ＴＫＭＦ３４を、当該領域を挟む両側の正常判定された回転領域の補正値ＴＫＭＦ１２，ＴＫＭＦ３４に基づく補間演算（直線補間）によって求める。
【００５２】
図６に示す例では、０rpmから４８００rpmまでを４００rpm幅の１３領域に区分してあり、ＴＫＭＦ１２／ＴＫＭＦ３４を大きさの順に並べたとき、７番目の値がメジアン値となり、このメジアン値±既定値である正常範囲を外れる（異常値である）ＴＫＭＦ１２／ＴＫＭＦ３４が算出されたのは、２４００rpm及び２８００rpmの格子、更に、３６００rpm，４０００rpm，４４００rpmの格子である。
【００５３】
そこで、２０００rpmでの補正値ＴＫＭＦ１２，ＴＫＭＦ３４と、３２００rpmでの補正値ＴＫＭＦ１２，ＴＫＭＦ３４とに基づく直線補間によって、２４００rpm及び２８００rpmの各格子に対応させる補正値ＴＫＭＦ１２，ＴＫＭＦ３４を求める。
同様に、３２００rpmでの補正値ＴＫＭＦ１２，ＴＫＭＦ３４と、４８００rpmでの補正値ＴＫＭＦ１２，ＴＫＭＦ３４とに基づく直線補間によって、３６００rpm，４０００rpm及び４４００rpmの各格子に対応させる補正値ＴＫＭＦ１２，ＴＫＭＦ３４を求める。
【００５４】
尚、直線補間とは、エンジン回転速度ＮＥと補正値ＴＫＭＦ１２，ＴＫＭＦ３４との相関において、例えば、２０００rpmでの補正値ＴＫＭＦ１２と、３２００rpmでの補正値ＴＫＭＦ１２とを直線で結んだ線上に、２４００rpm及び２８００rpmの格子における補正値ＴＫＭＦ１２が位置するものとして、２０００rpmの格子と３２００rpmの格子とで挟まれる２４００rpm及び２８００rpmの格子での値を推定するものである。
【００５５】
一部の回転領域で前記ＴＫＭＦ１２／ＴＫＭＦ３４が回転変動の影響を受けて算出されても、前記メジアン値は、計測区間Ａ，Ｂの角度比の中心値を高精度に示すから、回転変動の影響を受けたＴＫＭＦ１２／ＴＫＭＦ３４を異常値として精度良く判別でき、異常な補正値ＴＫＭＦ１２，ＴＫＭＦ３４がそのまま補正に用いられることがなく、異常な補正値ＴＫＭＦ１２，ＴＫＭＦ３４に基づいて他の回転領域の補正値ＴＫＭＦ１２，ＴＫＭＦ３４が推定されることを防止できる。
【００５６】
尚、補間演算としては、直線補間（線形補間、１次補間）の他、与えられた複数の点を通る滑らかな曲線上に位置する値として推定を行う多項式補間（スプライン補間）を用いることも可能である。
そして、例えば、最小回転速度領域及び／又は最大回転速度領域でのＴＫＭＦ１２／ＴＫＭＦ３４が異常値であっても、この最小回転速度領域及び／又は最大回転速度領域における補正値ＴＫＭＦ１２，ＴＫＭＦ３４を、多項式補間（スプライン補間）を用いて推定させることができる。
【００５７】
異常判定された区分回転領域の補正値ＴＫＭＦ１２，ＴＫＭＦ３４を、補間演算によって求めると、正常判定された区分回転領域の補正値ＴＫＭＦ１２，ＴＫＭＦ３４を含め、全領域の補正値ＴＫＭＦ１２，ＴＫＭＦ３４をバックアップし（更新記憶し）、このバックアップデータに基づいて実際の補正処理を行わせると共に、次回の補正値ＴＫＭＦ１２，ＴＫＭＦ３４の学習時において更新させることができなかった場合には、このバックアップデータを再ストアさせるようにする。
【００５８】
図７は、前記メジアン値に基づいて判別された異常値を補間演算値に置き換えた後のＴＫＭＦ１２／ＴＫＭＦ３４，ＴＫＭＦ１２，ＴＫＭＦ３４、即ち、バックアップデータを示す。
この図７に示されるように、ＴＫＭＦ１２，ＴＫＭＦ３４は、回転領域毎にある程度のばらつきを示すものの、ＴＫＭＦ１２／ＴＫＭＦ３４は、回転速度が異なってもメジアン値付近の値を示しており、補正値ＴＫＭＦ１２，ＴＫＭＦ３４による補正で、計測区間Ａ，Ｂの角度ばらつきによる経過時間ＴＡ，ＴＢの相対的な違いを回転領域毎に補正できることを表している。
【００５９】
ステップＳ１０１で燃料カット中でないと判断されたとき、ステップＳ１０２でエンジン回転速度ＮＥの変化量の絶対値が許容値を超えていると判断されたとき、ステップＳ１０７で正常範囲内であるＴＫＭＦ１２／ＴＫＭＦ３４の数が判定値未満であると判断されたとき、更に、ステップＳ１０９で補間演算の許可条件が成立していないと判断されると、ステップＳ１１１へ進む。
【００６０】
ステップＳ１１１では、過去に各回転領域にバックアップされ確定されている補正値ＴＫＭＦ１２，ＴＫＭＦ３４、即ち、メジアン値に基づく異常・正常判断がなされ、異常データについて補間演算を行った結果が存在するか否かを判断する。
そして、補正値ＴＫＭＦ１２，ＴＫＭＦ３４として確定されているデータがない場合（未学習状態）には、前記計測区間Ａ，Ｂの角度ばらつきの影響を受けて失火を誤診断する可能性があるので、ステップＳ１１２〜１１４を迂回して、再度、ステップＳ１０１の判断から開始させるようにする。
【００６１】
一方、今回ステップＳ１１０で補正値ＴＫＭＦ１２，ＴＫＭＦ３４を確定した場合（学習した場合）、及び、ステップＳ１１１で過去の学習結果が存在すると判断された場合には、ステップＳ１１２へ進む。
ステップＳ１１２では、そのときのエンジン回転速度ＮＥに対応して学習されている補正値ＴＫＭＦ１２，ＴＫＭＦ３４を補間演算付きで参照し、次のステップＳ１１３では、前記計測区間Ａ，Ｂの経過時間（角速度）を、前記ステップＳ１１２で参照した補正値ＴＫＭＦ１２，ＴＫＭＦ３４で補正することで、前記計測区間Ａ，Ｂの角度ばらつきの影響を排除する。
【００６２】
前記補間演算付きで参照するとは、例えば、そのときのエンジン回転速度が２２００rpmであるときに、２０００rpmでの補正値と２４００rpmでの補正値との中間値を２２００rpmでの補正値として求めることを示す。
ステップＳ１１４では、前記補正値ＴＫＭＦ１２，ＴＫＭＦ３４に基づいて補正された前記計測区間Ａ，Ｂの経過時間（角速度）に基づいて失火の有無を診断する。
【００６３】
例えば、前記計測区間Ａの経過時間ＴＡに補正値ＴＫＭＦ１２を乗算して補正し、また、前記計測区間Ｂの経過時間ＴＢに補正値ＴＫＭＦ３４を乗算して補正する一方、このようにして補正した経過時間ＴＡ，ＴＢの平均値（最近のクランク軸２回転中に求められたデータの平均値）を求め、補正後の経過時間ＴＡ又はＴＢを前記平均値で除算した値が、閾値以上であるときに、当該経過時間ＴＡ又はＴＢを求めたときに燃焼行程であった気筒について失火の発生を判定する。
【００６４】
即ち、失火することで、失火気筒の燃焼行程に影響を受けた前記経過時間ＴＡ，ＴＢ（角速度）が、他の正常燃焼した気筒の燃焼行程に影響を受けた前記経過時間ＴＡ，ＴＢ（角速度）に比べて長く（遅く）なるので、平均値に対して判定基準以上に長い経過時間は、失火によって角速度が低下したと判断する。
但し、前記補正値ＴＫＭＦ１２，ＴＫＭＦ３４に基づいて補正された前記経過時間ＴＡ，ＴＢに基づく失火診断の方法を上記のものに限定するものではなく、前記経過時間ＴＡ，ＴＢを用いて行われ得る公知の失火診断方法を全て適用可能である。
【００６５】
失火の発生が検出されたとき（失火の頻度が許容限界を超えるとき）には、失火気筒への燃料噴射を停止させ、また、失火の発生を車両の運転者に警告するなどしてフェイルセーフを図る。
上記実施形態によると、計測区間Ａ，Ｂの角度ばらつきを、燃料カット中の回転変動に影響されることなく検出して、前記補正値ＴＫＭＦ１２，ＴＫＭＦ３４を学習できるから、前記補正値ＴＫＭＦ１２，ＴＫＭＦ３４に基づいて前記経過時間ＴＡ，ＴＢを補正することで、補正後の経過時間ＴＡ，ＴＢから、失火による回転変動を高い精度で判定することができる。
【００６６】
図８のフローチャートは、失火判定手段の第２実施形態を示すものであり、ステップＳ２０１〜ステップＳ２０８では、前記ステップＳ１０１〜ステップＳ１０８と同様な処理を実施する。
即ち、燃料カット状態において回転領域毎にＴＫＭＦ１２／ＴＫＭＦ３４を算出し、この回転領域毎のＴＫＭＦ１２／ＴＫＭＦ３４の値からメジアン値を求め、該メジアン値を基準とする正常範囲に含まれるＴＫＭＦ１２／ＴＫＭＦ３４のデータ数が判定値以上あれば、そのときのメジアン値を中心値として確定する。
【００６７】
ステップＳ２０９では、メジアン値であるＴＫＭＦ１２／ＴＫＭＦ３４が算出された回転領域の補正値ＴＫＭＦ１２，ＴＫＭＦ３４を、全回転領域に共通の補正値として更新記憶（バックアップ）させる。
換言すれば、メジアン値としてのＴＫＭＦ１２／ＴＫＭＦ３４が算出された回転領域における補正値ＴＫＭＦ１２，ＴＫＭＦ３４が正常値であって、該正常値に基づいて経過時間ＴＡ，ＴＢの補正を行わせ、それ以外を異常値とし、異常値としての補正値ＴＫＭＦ１２，ＴＫＭＦ３４による補正が禁止される。
【００６８】
そして、次のステップＳ２１１では、前記経過時間ＴＡ，ＴＢの計測結果を、前記全回転領域に共通の補正値として記憶されている補正値ＴＫＭＦ１２，ＴＫＭＦ３４で補正し、ステップＳ２１２では、前記補正後の経過時間ＴＡ，ＴＢに基づいて失火診断を行わせる。
全回転領域に共通の補正値ＴＫＭＦ１２，ＴＫＭＦ３４を更新できる条件ではなく、ステップＳ２１０に進むと、前記ステップＳ１１１と同様に、過去にバックアップされ確定されている補正値ＴＫＭＦ１２，ＴＫＭＦ３４が存在するか否かを判断し、バックアップデータがあれば、ステップＳ２１１へ進んで、経過時間ＴＡ，ＴＢの補正処理を行わせた上で、ステップＳ２１２の失火診断へ移行する。
【００６９】
即ち、過去に学習された補正値ＴＫＭＦ１２，ＴＫＭＦ３４が記憶されている場合には、その記憶データを用いて経過時間ＴＡ，ＴＢを補正して、失火診断を行わせる。
【図面の簡単な説明】
【００７０】
【図１】本願発明の実施形態におけるエンジンのシステム図である。
【図２】本願発明の実施形態における失火診断の手順を示すフローチャートである。
【図３】本願発明の実施形態における角速度の計測区間を示す図である。
【図４】本願発明の実施形態における回転変動と計測区間との相関の一例を示すタイムチャートである。
【図５】本願発明の実施形態における回転毎の角度比ＴＫＭＦ１２／ＴＫＭＦ３４と平均値との相関を示す線図である。
【図６】本願発明の実施形態におけるメジアン値に基づく異常値の判断及び補間演算の一例を示す図である。
【図７】本願発明の実施形態における補間演算後の補正値の一例を示す図である。
【図８】本願発明の実施形態における失火診断の手順の別の例を示すフローチャートである。
【符号の説明】
【００７１】
１０１…エンジン、１１３…エンジンコントロールユニット（ＥＣＵ）、１１７…クランク角センサ、１２１…クランクシャフト
【図１】
2009221856.tif 000003
【図２】
2009221856.tif 000004
【図３】
2009221856.tif 000005
【図４】
2009221856.tif 000006
【図５】
2009221856.tif 000007
【図６】
2009221856.tif 000008
【図７】
2009221856.tif 000009
【図８】
2009221856.tif 000010