(57)【要約】【課題】複雑な適合確認作業を必要とせずに、点火プラグ異常と失火検出システム故障の検出信頼性を向上できるようにする。【解決手段】エンジン制御系が正常状態のときに、失火検出区間内のイオン電流ピーク値に基づいて失火を検出して失火発生頻度を算出し、失火発生頻度が判定しきい値以上の状態が所定回数連続したときに失火状態フラグＭＮＧを「ＯＮ」にセットして失火ダイアグの点灯を行い、その後、失火発生頻度が判定しきい値以下の状態が所定回数連続したときに、正常燃焼状態に復帰したと判断して、正常燃焼復帰フラグＭＯＫを「ＯＮ」にセットする。失火ダイアグ状態（失火状態フラグＭＮＧ＝ＯＮ）になってから正常燃焼状態に復帰して正常燃焼復帰フラグＭＯＫが「ＯＮ」にセットされるまでの間は、点火プラグ異常判定処理と失火検出システム故障判定処理を禁止する。【選択図】図４
2009281161.tif 000002
【特許請求の範囲】
【請求項１】
内燃機関の各気筒の燃焼室内で混合気の燃焼に伴って発生するイオン電流を点火プラグの電極を介して検出するイオン電流検出手段と、
内燃機関の制御系が正常状態のときに前記イオン電流検出手段の検出結果に基づいて失火を検出する失火検出手段と、
前記失火検出手段の失火検出結果に基づいて失火状態から正常燃焼状態に復帰したか否かを判定する正常燃焼復帰判定手段と、
失火検出領域を含む運転条件で前記イオン電流検出手段の出力値の変動回数が所定値以上であるか否かで異常サイクルを検出する異常サイクル検出手段と、
前記異常サイクル検出手段で検出した異常サイクルの発生頻度に基づいて点火プラグ異常の有無を判定するダイアグ手段と、
前記失火検出手段が失火状態と判定したときから前記正常燃焼復帰判定手段が正常燃焼状態に復帰したと判定するまでの間は、前記ダイアグ手段の点火プラグ異常判定処理を禁止又は点火プラグ異常判定結果を無効とするダイアグ禁止手段と
を備えていることを特徴とする内燃機関のダイアグ装置。
【請求項２】
内燃機関の各気筒の燃焼室内で混合気の燃焼に伴って発生するイオン電流を点火プラグの電極を介して検出するイオン電流検出手段と、
内燃機関の制御系が正常状態のときに前記イオン電流検出手段の検出結果に基づいて失火を検出する失火検出手段と、
前記失火検出手段の失火検出結果に基づいて失火状態から正常燃焼状態に復帰したか否かを判定する正常燃焼復帰判定手段と、
内燃機関の減速運転領域で燃料カットする燃料カット手段と、
燃料カット中の前記イオン電流検出手段の出力値が所定値以上であるか否かで異常サイクルを検出する異常サイクル検出手段と、
前記異常サイクル検出手段で検出した異常サイクルの発生頻度に基づいて失火検出システムの故障の有無を判定するダイアグ手段と、
前記失火検出手段が失火状態と判定したときから前記正常燃焼復帰判定手段が正常燃焼状態に復帰したと判定するまでの間は、前記ダイアグ手段の失火検出システム故障判定処理を禁止又は該失火検出システム故障判定結果を無効とするダイアグ禁止手段と
を備えていることを特徴とする内燃機関のダイアグ装置。
【請求項３】
内燃機関の各気筒の燃焼室内で混合気の燃焼に伴って発生するイオン電流を点火プラグの電極を介して検出するイオン電流検出手段と、
内燃機関の制御系が正常状態のときに前記イオン電流検出手段の検出結果に基づいて失火を検出する失火検出手段と、
前記失火検出手段の失火検出結果に基づいて失火状態から正常燃焼状態に復帰したか否かを判定する正常燃焼復帰判定手段と、
前記イオン電流検出手段の出力値に基づいて異常サイクルを検出する異常サイクル検出手段と、
前記異常サイクル検出手段で検出した異常サイクルの発生頻度に基づいて失火検出システムの故障の有無を判定するダイアグ手段と、
前記失火検出手段が失火状態と判定したときから前記正常燃焼復帰判定手段が正常燃焼状態に復帰したと判定するまでの間は、前記ダイアグ手段の失火検出システム故障判定処理を禁止又は該失火検出システム故障判定結果を無効とするダイアグ禁止手段と
を備えていることを特徴とする内燃機関のダイアグ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内燃機関の各気筒の燃焼室内で混合気の燃焼に伴って発生するイオン電流を点火プラグの電極を介して検出する機能を備えた内燃機関のダイアグ装置に関する発明である。
【背景技術】
【０００２】
近年、内燃機関の各気筒の燃焼室内で混合気の燃焼に伴ってイオン電流が発生する特性に着目して、点火毎に各気筒の燃焼室内で発生するイオン電流を点火プラグの電極を介して検出し、そのイオン電流検出値に基づいて着火／失火を検出する技術が開発されている。従来の着火／失火の判定方法は、着火時にイオン電流が増加し、失火時にイオン電流が減少する性質を利用し、検出したイオン電流ピーク値を所定の失火判定値と比較して、イオン電流ピーク値が失火判定値以上であれば、着火と判定し、そうでなければ、失火と判定するものである。
【０００３】
この場合、点火プラグが異常であったり、失火検出システムが故障すると、着火／失火を誤判定するため、例えば、特許文献１（特開平１１−２９４２４９号公報）、特許文献２（特開平５−２６０９０号公報）に記載されているように、点火プラグの異常を検出する機能や、失火検出システム（イオン電流検出システム）の故障を検出する機能を搭載したものがある。
【特許文献１】特開平１１−２９４２４９号公報
【特許文献２】特開平５−２６０９０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、失火が発生する燃焼不安定な運転状態で、点火プラグの異常や失火検出システムの故障を検出すると、点火プラグの異常を誤検出したり、失火検出システムの故障を誤検出する可能性がある。もし、一旦、点火プラグの異常や失火検出システムの故障が誤検出されると、以後、失火検出処理が禁止されるため、失火を検出できなくなってしまう。また、失火が発生する燃焼不安定な運転状態で、点火プラグの異常や失火検出システムの故障を検出する場合には、誤検出を防止するための適合確認作業が複雑となり、コスト高になる。
【０００５】
本発明はこのような事情を考慮してなされたものであり、従ってその目的は、複雑な適合確認作業を必要とせずに、点火プラグの異常又は失火検出システムの故障の検出信頼性を向上できる内燃機関のダイアグ装置を提供することにある。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、請求項１に係る発明は、内燃機関の各気筒の燃焼室内で混合気の燃焼に伴って発生するイオン電流を点火プラグの電極を介して検出するイオン電流検出手段と、内燃機関の制御系（各種アクチュエータ、各種センサ等）が正常状態のときに前記イオン電流検出手段の検出結果に基づいて失火を検出する失火検出手段と、前記失火検出手段の失火検出結果に基づいて失火状態から正常燃焼状態に復帰したか否かを判定する正常燃焼復帰判定手段と、失火検出領域を含む運転条件で前記イオン電流検出手段の出力値の変動回数が所定値以上であるか否かで点火プラグ異常サイクルを検出する異常サイクル検出手段と、前記異常サイクル検出手段で検出した異常サイクルの発生頻度に基づいて点火プラグ異常の有無を判定するダイアグ手段と、前記失火検出手段が失火状態と判定したときから前記正常燃焼復帰判定手段が正常燃焼状態に復帰したと判定するまでの間は、前記ダイアグ手段の点火プラグ異常判定処理を禁止又は点火プラグ異常判定結果を無効とするダイアグ禁止手段とを備えた構成としたものである。
【０００７】
この構成によれば、失火状態と判定したときから正常燃焼状態に復帰したと判定するまでの間は、ダイアグ手段の点火プラグ異常判定処理を禁止又は点火プラグ異常判定結果を無効とするため、失火による点火プラグ異常の誤検出を未然に防止できて、複雑な適合確認作業を必要とせずに、点火プラグ異常の検出信頼性を向上できる。しかも、正常燃焼状態に復帰した後に点火プラグ異常判定処理の禁止状態又は点火プラグ異常判定結果の無効状態を解除するため、実用上、失火検出機能と点火プラグ異常検出機能とを問題なく並立させることができる。
【０００８】
また、請求項２に係る発明は、内燃機関の制御系が正常状態のときにイオン電流検出手段の検出結果に基づいて失火を検出する失火検出手段と、前記失火検出手段の失火検出結果に基づいて失火状態から正常燃焼状態に復帰したか否かを判定する正常燃焼復帰判定手段と、内燃機関の減速運転領域で燃料カットする燃料カット手段と、燃料カット中の前記イオン電流検出手段の出力値が所定値以上であるか否かで異常サイクルを検出する異常サイクル検出手段と、前記異常サイクル検出手段で検出した異常サイクルの発生頻度に基づいて失火検出システムの故障の有無を判定するダイアグ手段と、前記失火検出手段が失火状態と判定したときから前記正常燃焼復帰判定手段が正常燃焼状態に復帰したと判定するまでの間は、前記ダイアグ手段の失火検出システム故障判定処理を禁止又は該失火検出システム故障判定結果を無効とするダイアグ禁止手段とを備えた構成としたものである。
【０００９】
燃料カット直前に失火が発生した場合に、着火できなかった混合気が燃料カット中に燃焼可能な空燃比になって後着火する可能性があり、この場合は、燃料カット中の後着火により失火検出システム故障を誤検出することになる。もし、失火検出システム故障を誤検出すると、燃料カット復帰後も失火検出処理が禁止されるため、失火を検出できなくなってしまう。
【００１０】
この対策として、請求項２に係る発明では、失火状態と判定したときから正常燃焼状態に復帰したと判定するまでの間は、ダイアグ手段の失火検出システム故障判定処理を禁止又は該失火検出システム故障判定結果を無効とするため、燃料カット中の後着火による失火検出システム故障の誤検出を未然に防止できて、複雑な適合確認作業を必要とせずに、失火検出システム故障の検出信頼性を向上できる。しかも、正常燃焼状態に復帰した後に失火検出システム故障判定処理の禁止状態又は失火検出システム故障判定結果の無効状態を解除するため、実用上、失火検出機能と失火検出システム故障検出機能とを問題なく並立させることができる。
【００１１】
また、請求項３に係る発明は、内燃機関の制御系が正常状態のときにイオン電流検出手段の検出結果に基づいて失火を検出する失火検出手段と、前記失火検出手段の失火検出結果に基づいて失火状態から正常燃焼状態に復帰したか否かを判定する正常燃焼復帰判定手段と、前記イオン電流検出手段の出力値に基づいて異常サイクルを検出する異常サイクル検出手段と、前記異常サイクル検出手段で検出した異常サイクルの発生頻度に基づいて失火検出システムの故障の有無を判定するダイアグ手段と、前記失火検出手段が失火状態と判定したときから前記正常燃焼復帰判定手段が正常燃焼状態に復帰したと判定するまでの間は、前記ダイアグ手段の失火検出システム故障判定処理を禁止又は該失火検出システム故障判定結果を無効とするダイアグ禁止手段とを備えた構成としたものである。
【００１２】
この構成によれば、失火状態と判定したときから正常燃焼状態に復帰したと判定するまでの間は、ダイアグ手段の失火検出システム故障判定処理を禁止又は該失火検出システム故障判定結果を無効とするため、失火による失火検出システム故障の誤検出を未然に防止できて、複雑な適合確認作業を必要とせずに、失火検出システム故障の検出信頼性を向上できる。しかも、正常燃焼状態に復帰した後に失火検出システム故障判定処理の禁止状態又は失火検出システム故障判定結果の無効状態を解除するため、実用上、失火検出機能と失火検出システム故障検出機能とを問題なく並立させることができる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明を実施するための最良の形態を具体化した一実施例を説明する。
まず、図１に基づいて点火制御系の回路構成を説明する。
点火コイル２１の一次コイル２２の一端はバッテリ２３に接続され、該一次コイル２２の他端は、イグナイタ２４に内蔵されたパワートランジスタ２５のコレクタに接続されている。二次コイル２６の一端は点火プラグ２７に接続され、該二次コイル２６の他端は、２つのツェナーダイオード２８，２９を介してグランドに接続されている。
【００１４】
２つのツェナーダイオード２８，２９は互いに逆向きに直列接続され、一方のツェナーダイオード２８にコンデンサ３０が並列に接続され、他方のツェナーダイオード２９にイオン電流検出抵抗３１が並列に接続されている。コンデンサ３０とイオン電流検出抵抗３１との間の電位Ｖinが抵抗３２を介して反転増幅回路３３の反転入力端子（−）に入力されて反転増幅され、この反転増幅回路３３の出力電圧Ｖがイオン電流信号としてエンジン制御回路３４に入力される。イオン電流検出回路３５（イオン電流検出手段）は、ツェナーダイオード２８，２９、コンデンサ３０、イオン電流検出抵抗３１、反転増幅回路３３等から構成され、このイオン電流検出回路３５とエンジン制御回路３４とによってイオン電流検出装置が構成されている。
【００１５】
本実施例のイオン電流検出装置は、点火プラグ２７として、スパイクノイズ対策（コロナ放電対策）を施したイオン電流検出用点火プラグを用いる仕様となっている。スパイクノイズ対策を施したイオン電流検出用点火プラグは、例えば、特開平１０−８９２２１号公報、特開２００５−１２９３９８号公報、特開２００５−１２９３９９号公報、特開平１１−２１９７７２号公報等に記載された点火プラグを用いても良いし、３極プラグを用いても良く、要は、スパイクノイズの発生を抑制する機能を備えた点火プラグを用いれば良い。
【００１６】
エンジン制御回路３４は、エンジン制御用の各種プログラムを実行するエンジン制御用マイコン４１と、イオン電流検出回路３５からのイオン電流信号を所定のサンプリング周期でＡ／Ｄ変換してエンジン制御用マイコン４１に取り込むためのイオン電流信号処理回路４２と、クランク角センサ４３、カム角センサ４４等のエンジン運転状態を検出するための各種センサ信号を処理してエンジン制御用マイコン４１に取り込むためのセンサ信号処理回路４５等を備えた構成となっている。イオン電流信号処理回路４２は、Ａ／Ｄ変換機能付きのマイコンを用いても良いし、Ａ／Ｄ変換機能付き信号処理用ＩＣで構成しても良い。
【００１７】
エンジン運転中は、エンジン制御用マイコン４１からイグナイタ２４に送信される点火信号の立ち上がり／立ち下がりでパワートランジスタ２５がオン／オフする。パワートランジスタ２５がオンすると、バッテリ２３から一次コイル２２に一次電流が流れ、その後、パワートランジスタ２５がオフすると、一次コイル２２の一次電流が遮断されて、二次コイル２６に高電圧が電磁誘導され、この高電圧によって点火プラグ２７の電極３６，３７間に火花放電が発生する。この火花放電電流は、点火プラグ２７の接地電極３７から中心電極３６へ流れ、二次コイル２６を経てコンデンサ３０に充電されると共に、ツェナーダイオード２８，２９を経てグランド側に流れる。コンデンサ３０の充電後は、ツェナーダイオード２８のツェナー電圧によって規制されるコンデンサ３０の充電電圧を電源としてイオン電流検出回路３５が駆動され、後述するようにしてイオン電流が検出される。
【００１８】
これに対して、イオン電流は、火花放電電流とは反対方向に流れる。つまり、点火終了後は、コンデンサ３０の充電電圧によって点火プラグ２７の電極３６，３７間に電圧が印加されるため、気筒内で混合気が燃焼する際に発生するイオンによって電極３６，３７間にイオン電流が流れるが、このイオン電流は、中心電極３６から接地電極３７へ流れ、更に、グランド側からイオン電流検出抵抗３１を通ってコンデンサ３０に流れる。この際、イオン電流検出抵抗３１に流れるイオン電流の変化に応じて反転増幅回路３３の入力電位Ｖinが変化し、反転増幅回路３３の出力端子からイオン電流に応じた電圧Ｖのイオン電流信号がイオン電流信号処理回路３７でＡ／Ｄ変換されてエンジン制御用マイコン４１に取り込まれる。
【００１９】
エンジン制御用マイコン４１は、クランク角センサ４３、カム角センサ４４、吸入空気量センサ（図示せず）等により検出したエンジン運転状態に応じて燃料噴射制御や点火時期制御を行うと共に、イオン電流検出回路３５から出力されるイオン電流信号を利用して、所定の燃焼イオン検出区間におけるイオン電流のピーク値、積分値、イオン出力時間等を検出して燃焼状態（失火、プレイグニッション、ノッキング、燃焼変動状態等）を判定する。
【００２０】
前述したように、本実施例のイオン電流検出装置は、スパイクノイズ対策を施したイオン電流検出用点火プラグ２７を用いる仕様となっているが、ユーザー側で点火プラグ２７を交換する際に、スパイクノイズ未対策の異種点火プラグ（汎用の点火プラグ）が装着されてしまう可能性がある。スパイクノイズ未対策の異種点火プラグが装着された場合は、失火時に碍子帯電電荷を中和する効果が得られないため、失火時に燃焼行程後半の筒内圧力が低下する時期に点火プラグの碍子帯電電荷によりスパイクノイズが頻発しやすいという特性がある。
【００２１】
ここで、図２を用いて、スパイクノイズ対策を施したイオン電流検出用点火プラグ２７の装着時のイオン電流検出波形とスパイクノイズ未対策の異種点火プラグ装着時のイオン電流検出波形について説明する。
【００２２】
どの様な点火プラグであっても、点火コイル２１の一次側巻線２２への通電開始直後（点火信号ＯＦＦ→ＯＮ切換直後）に、短い時間幅のパルス状のノイズ電流が誘起され、点火タイミング直後（点火信号ＯＮ→ＯＦＦ切換直後）に、点火コイル２１の二次側の残留磁気エネルギによってＬＣ共振ノイズが発生し、その後、正常燃焼時には燃焼により発生したイオン（燃焼イオン）の電流波形が検出されるが、失火時には燃焼イオンが発生しないため、燃焼イオンの電流波形は検出されない。
【００２３】
スパイクノイズ対策を施したイオン電流検出用点火プラグ２７では、碍子帯電電荷によるスパイクノイズの発生が抑えられるため、図２（ｅ）に示すように、失火時にスパイクノイズによるイオン電流波形が検出されないが、スパイクノイズ未対策の異種点火プラグでは、失火時に碍子帯電電荷を中和する効果が得られないため、図２（ｆ）に示すように、失火時には、燃焼行程後半の筒内圧力が低下する時期に点火プラグの碍子帯電電荷によりスパイクノイズが頻発しやすい。
【００２４】
従来のイオン電流検出装置では、スパイクノイズ未対策の異種点火プラグが装着された場合でも、その異種点火プラグの装着を検出できないため、失火時に異種点火プラグの碍子帯電電荷により発生するスパイクノイズを燃焼イオンと誤判定する可能性があり、失火中であるにも拘らず燃焼と誤判定する可能性がある。
【００２５】
この対策として、エンジン制御用マイコン４１は、後述する図５のスパイクノイズダイアグルーチンを実行することで、各気筒毎に燃焼行程を含む所定の失火検出区間内でイオン電流検出回路３５で検出したイオン電流の変化パターンを解析してスパイクノイズ状の急激な電流変化（以下単に「スパイクノイズ」という）の発生回数をカウントし、各気筒の失火検出区間内のスパイクノイズの発生回数が所定値以上であるか否かで、各気筒毎に点火プラグ異常サイクルであるか否かを判定すると共に、各気筒毎に前記点火プラグ異常サイクルの発生頻度（所定点火回数当たりの点火プラグ異常サイクルの発生回数）を算出して、当該点火プラグ異常サイクルの発生頻度が判定しきい値以上であれば、点火プラグ異常（スパイクノイズ未対策の異種点火プラグ又は点火プラグの故障）と判定するようにしている。
【００２６】
また、エンジン制御用マイコン４１は、後述する図３と図４の各ルーチンを実行することで、エンジン制御系（各種アクチュエータ、各種センサ等）が正常状態のときに、所定の失火検出区間内で検出したイオン電流ピーク値に基づいて失火を検出して、失火発生頻度（所定点火回数当たりの失火回数）を算出し、この失火発生頻度が判定しきい値以上の状態が所定回数連続したときに、失火状態フラグＭＮＧを「ＯＮ」にセットして失火ダイアグの点灯を行い、その後、失火発生頻度が判定しきい値以下の状態が所定回数連続したときに、正常燃焼状態に復帰したと判断して、正常燃焼復帰フラグＭＯＫを「ＯＮ」にセットする。
【００２７】
更に、失火ダイアグ状態（失火状態フラグＭＮＧ＝ＯＮ）になってから正常燃焼状態に復帰して正常燃焼復帰フラグＭＯＫが「ＯＮ」にセットされるまでの間は、図５のスパイクノイズダイアグルーチンの点火プラグ異常判定処理が禁止される。
【００２８】
また、エンジン制御用マイコン４１は、後述する図６の失火検出システムダイアグルーチンを実行することで、燃料カット中に検出したイオン電流ピーク値が所定値以上であるか否かで異常サイクルを検出し、この異常サイクルの発生頻度に基づいて失火検出システム（イオン電流検出システム）の故障の有無を判定する。この場合も、失火ダイアグ状態（失火状態フラグＭＮＧ＝ＯＮ）になってから正常燃焼状態に復帰して正常燃焼復帰フラグＭＯＫが「ＯＮ」にセットされるまでの間は、失火検出システム故障判定処理が禁止される。以下、エンジン制御用マイコン４１によって実行される図３乃至図６の各ルーチンの処理内容を説明する。
【００２９】
［失火検出ルーチン］
図３の失火検出ルーチンは、各気筒の失火検出区間終了毎に起動される。本ルーチンが起動されると、まずステップ１０１で、失火検出区間内で検出したイオン電流ピーク値Ｈを読み込み、次のステップ１０２で、このイオン電流ピーク値Ｈを所定の失火判定値Ｖthと比較して、イオン電流ピーク値Ｈが失火判定値Ｖth以上であれば、着火サイクルと判定し（ステップ１０３）、イオン電流ピーク値Ｈが失火判定値Ｖthよりも小さければ、失火サイクルと判定する（ステップ１０４）。
【００３０】
［失火ダイアグルーチン］
図４の失火ダイアグルーチンは、上記図３の失火検出ルーチンで失火サイクルを検出する毎に起動される。図４の失火ダイアグルーチンが起動されると、まず、ステップ２０１で、所定の失火検出条件が成立しているか否かを判定する。ここで、失火検出条件は、例えば、(1) 燃料カット領域等の減速領域を除くエンジン運転領域であること、(2) エンジン制御系（各種アクチュエータ、各種センサ等）が正常状態であることであり、これら２つの条件(1) 、(2) を両方とも満たしていれば、失火検出条件が成立し、いずれか一方でも満たしていない条件があれば、失火検出条件が不成立となる。
【００３１】
このステップ２０１で、失火検出条件が不成立と判定されれば、以降の処理を行うことなく、本ルーチンを終了する。
【００３２】
これに対して、上記ステップ２０１で、失火検出条件が成立していると判定されれば、ステップ２０２に進み、失火サイクル数をカウントする失火回数カウンタＮをカウントアップする。これらステップ２０１、２０２と前記図３の失火検出ルーチンが特許請求の範囲でいう失火検出手段としての役割を果たす。
【００３３】
この後、ステップ２０３に進み、所定のダイアグ判定条件が成立しているか否かを判定する。ここで、ダイアグ判定条件は、エンジンの延べ回転数が所定値（例えば１０００回転）に到達することである。このステップ２０３で、ダイアグ判定条件が不成立（エンジンの延べ回転数が１０００回転未満）であると判定されれば、以降の処理を行うことなく、本ルーチンを終了する。
【００３４】
これに対して、上記ステップ２０３で、ダイアグ判定条件が成立（エンジンの延べ回転数が１０００回転）と判定されれば、ステップ２０４に進み、ダイアグ判定条件が成立した時点の失火回数カウンタＮのカウント値に基づいて失火発生頻度Ｓ（エンジン１０００回転当たりの失火回数）を算出する。これにより、エンジンが延べ１０００回転する毎に失火発生頻度Ｓが算出される。
【００３５】
この後、ステップ２０５に進み、失火発生頻度Ｓを判定しきい値Ｃmng と比較して、失火発生頻度Ｓが判定しきい値Ｃmng を越えていれば、失火状態（失火が頻発する状態）と判断して、ステップ２０６に進み、失火状態フラグＭＮＧを「ＯＮ」にセットすると共に、正常燃焼復帰フラグＭＯＫを「ＯＦＦ」にリセットし、更に、失火トリップフラグＴＭＮＧを「ＯＮ」にセットする。この失火トリップフラグＴＭＮＧの値は、エンジン制御用マイコン４１の電源オフ中（エンジン停止中）でも記憶データを保持する書き替え可能な不揮発性メモリ（バックアップＲＡＭ等）に記憶され、エンジン停止中でも失火トリップフラグＴＭＮＧの値の記憶が保持される。
【００３６】
この後、ステップ２０７に進み、前回トリップの失火トリップフラグＴＭＮＧも「ＯＮ」であるか否か（つまり２回連続して失火状態で運転したか否か）を判定し、前回トリップの失火トリップフラグＴＭＮＧも「ＯＮ」である場合（つまり２回連続して失火状態で運転した場合）には、ステップ２０８に進み、失火ダイアグの点灯を行い、次のステップ２０９で、失火回数カウンタＮのカウント値をリセットして初期値「０」に戻す。
【００３７】
一方、上記ステップ２０５で、失火発生頻度Ｓが判定しきい値Ｃmng 以下と判定されれば、ステップ２１０に進み、失火状態フラグＭＮＧが「ＯＮ」であるか否かで、それまで失火状態であったか否かを判定し、失火状態フラグＭＮＧが「ＯＦＦ」、つまり失火状態ではなかったと判定されれば、ステップ２０９に進み、失火回数カウンタＮのカウント値をリセットして初期値「０」に戻す。
【００３８】
これに対して、上記ステップ２１０で、失火状態フラグＭＮＧ＝ＯＮ（それまで失火状態であった）と判定されれば、ステップ２１１に進み、失火発生頻度Ｓが０であるか否かを判定し、失火発生頻度Ｓが０でなければ、ステップ２０９に進み、失火回数カウンタＮのカウント値をリセットして初期値「０」に戻す。
【００３９】
上記ステップ２１１で、失火発生頻度Ｓが０であると判定されれば、ステップ２１２に進み、失火発生頻度Ｓ＝０の状態が連続する回数Ｓo を算出し、次のステップ２１３で、失火発生頻度Ｓ＝０の連続回数Ｓo が所定回数（例えば２回）を越えたか否かを判定し、この連続回数Ｓo が所定回数（例えば２回）以下であれば、ステップ２０９に進み、失火回数カウンタＮのカウント値をリセットして初期値「０」に戻す。
【００４０】
その後、失火発生頻度Ｓ＝０の連続回数Ｓo が所定回数（例えば２回）を越えた時点で、失火状態から正常燃焼状態に復帰したと判断して、上記ステップ２１３からステップ２１４に進み、正常燃焼復帰フラグＭＯＫを「ＯＮ」にセットして、失火状態フラグＭＮＧを「ＯＦＦ」にリセットし、次のステップ２０９で、失火回数カウンタＮのカウント値をリセットして初期値「０」に戻す。これらステップ２１０〜２１４の処理が特許請求の範囲でいう正常燃焼復帰判定手段としての役割を果たす。
【００４１】
［スパイクノイズダイアグルーチン］
図５のスパイクノイズダイアグルーチンは、各気筒の失火検出区間終了時の失火判定後に実行される。本ルーチンが起動されると、まず、ステップ３０１で、失火検出区間内で検出したスパイクノイズのカウント数Ｎspn （イオン電流値の変動回数）を読み込み、次のステップ３０２で、所定のスパイクノイズ検出条件が成立しているか否かを判定する。ここで、スパイクノイズ検出条件は、失火検出条件と同じ条件で良く、例えば、(1) 燃料カット領域等の減速領域を除くエンジン運転領域であること、(2) エンジン制御系（各種アクチュエータ、各種センサ等）が正常状態であることであり、これら２つの条件(1) 、(2) を両方とも満たしていれば、スパイクノイズ検出条件が成立し、いずれか一方でも満たしていない条件があれば、スパイクノイズ検出条件が不成立となる。
【００４２】
このステップ３０２で、スパイクノイズ検出条件が不成立と判定されれば、以降の処理を行うことなく、本ルーチンを終了する。
【００４３】
これに対して、上記ステップ３０２で、スパイクノイズ検出条件が成立していると判定されれば、ステップ３０３に進み、失火状態フラグＭＮＧがＯＦＦ（正常着火状態）であるか否かを判定し、失火状態フラグＭＮＧがＯＮ（失火状態）であれば、以降の処理を行うことなく、本ルーチンを終了する。これにより、失火状態と判定されているときには、点火プラグ異常判定処理が禁止される。
【００４４】
上記ステップ３０３で、失火状態フラグＭＮＧがＯＦＦ（正常着火状態）と判定されれば、ステップ３０４に進み、正常燃焼復帰フラグＭＯＫがＯＮ（正常燃焼復帰）であるか否かを判定し、正常燃焼復帰フラグＭＯＫがＯＦＦ（正常燃焼復帰前）と判定されれば、以降の処理を行うことなく、本ルーチンを終了する。これにより、失火状態と判定されてから正常燃焼復帰（正常燃焼復帰フラグＭＯＫ＝ＯＮ）と判定されるまでの間は、点火プラグ異常判定処理が禁止される。これらステップ３０３、３０４の処理が特許請求の範囲でいうダイアグ禁止手段としての役割を果たす。
【００４５】
その後、上記ステップ３０４で、正常燃焼復帰フラグＭＯＫがＯＮ（正常燃焼復帰）と判定されれば、ステップ３０５に進み、スパイクノイズのカウント数Ｎspn を判定しきい値Ｃspn と比較して、スパイクノイズのカウント数Ｎspn が判定しきい値Ｃspn よりも小さいと判定されれば、ステップ３０６に進み、点火プラグ正常サイクルと判定する。
【００４６】
これに対して、上記ステップ３０５で、スパイクノイズのカウント数Ｎspn が判定しきい値Ｃspn 以上と判定されば、スパイクノイズが頻発する点火プラグの異常（スパイクノイズ未対策の異種点火プラグ又は点火プラグの故障）の可能性ありと判断して、ステップ３０７に進み、点火プラグ異常サイクルと判定して、次のステップ３０８で、点火プラグ異常サイクル数カウンタＦ1 をカウントアップする。上記ステップ３０５〜３０７の処理が特許請求の範囲でいう異常サイクル検出手段としての役割を果たす。
【００４７】
この後、ステップ３０９に進み、所定のダイアグ判定条件が成立しているか否かを判定する。ここで、ダイアグ判定条件は、エンジンの延べ回転数が所定値（例えば１０００回転）に到達することである。このステップ３０９で、ダイアグ判定条件が不成立（エンジンの延べ回転数が１０００回転未満）であると判定されれば、以降の処理を行うことなく、本ルーチンを終了する。
【００４８】
これに対して、上記ステップ３０９で、ダイアグ判定条件が成立（エンジンの延べ回転数が１０００回転）と判定されれば、ステップ３１０に進み、ダイアグ判定条件が成立した時点の点火プラグ異常サイクル数カウンタＦ1 のカウント値に基づいて点火プラグ異常サイクルの発生頻度Ｆspn （エンジン１０００回転当たりの点火プラグ異常サイクル数）を算出する。これにより、エンジンが延べ１０００回転する毎に点火プラグ異常サイクルの発生頻度Ｆspn が算出される。
【００４９】
この後、ステップ３１１に進み、点火プラグ異常サイクル発生頻度Ｆspn を判定しきい値Ｃfspnと比較して、点火プラグ異常サイクル発生頻度Ｆspn が判定しきい値Ｃfspnを越えていると判定されれば、ステップ３１２に進み、点火プラグ異常のダイアグ判定を行う。
【００５０】
一方、上記ステップ３１１で、点火プラグ異常サイクル発生頻度Ｆspn が判定しきい値Ｃfspn以下と判定されれば、点火プラグ異常のダイアグ判定を行わない。これらステップ３０９〜３１２の処理が特許請求の範囲でいうダイアグ手段としての役割を果たす。
この後、ステップ３１３に進み、点火プラグ異常サイクル数カウンタＦ1 をリセットして本ルーチンを終了する。
【００５１】
［失火検出システムダイアグルーチン］
図６の失火検出システムダイアグルーチンは、各気筒の失火検出区間終了時のスパイクノイズ判定後に実行される。本ルーチンが起動されると、まず、ステップ４０１で、減速時燃料カット実行条件が成立しているか否かを判定し、減速時燃料カット実行条件が成立していないと判定されれば、以降の処理を行うことなく、本ルーチンを終了する。
【００５２】
一方、上記ステップ４０１で、減速時燃料カット実行条件が成立していると判定されれば、ステップ４０２に進み、失火状態フラグＭＮＧがＯＦＦ（正常着火状態）であるか否かを判定し、失火状態フラグＭＮＧがＯＮ（失火状態）であれば、以降の処理を行うことなく、本ルーチンを終了する。これにより、失火状態と判定されているときには、失火検出システム故障判定処理が禁止される。
【００５３】
上記ステップ４０２で、失火状態フラグＭＮＧがＯＦＦ（正常着火状態）と判定されれば、ステップ４０３に進み、正常燃焼復帰フラグＭＯＫがＯＮ（正常燃焼復帰）であるか否かを判定し、正常燃焼復帰フラグＭＯＫがＯＦＦ（正常燃焼復帰前）と判定されれば、以降の処理を行うことなく、本ルーチンを終了する。これにより、失火状態と判定されてから正常燃焼復帰（正常燃焼復帰フラグＭＯＫ＝ＯＮ）と判定されるまでの間は、失火検出システム故障判定処理が禁止される。これらステップ４０２、４０３の処理が特許請求の範囲でいうダイアグ禁止手段としての役割を果たす。
【００５４】
その後、上記ステップ４０３で、正常燃焼復帰フラグＭＯＫがＯＮ（正常燃焼復帰）と判定されれば、ステップ４０４に進み、燃料カット中のイオン電流ピーク値を判定しきい値Ｃpkと比較して、イオン電流ピーク値が判定しきい値Ｃpk以下であると判定されれば、ステップ４０５に進み、正常サイクルと判定する。
【００５５】
これに対して、上記ステップ４０４で、イオン電流ピーク値が判定しきい値Ｃpkよりも大きいと判定されば、燃料カット中にイオン電流を検出する異常な状態であると判断して、ステップ４０６に進み、異常サイクルと判定して、次のステップ４０７で、異常サイクル数カウンタＦ2 をカウントアップする。上記ステップ４０４〜４０６の処理が特許請求の範囲でいう異常サイクル検出手段としての役割を果たす。
【００５６】
この後、ステップ４０８に進み、所定のダイアグ判定条件が成立しているか否かを判定する。ここで、ダイアグ判定条件は、エンジンの延べ回転数が所定値（例えば１０００回転）に到達することである。このステップ４０８で、ダイアグ判定条件が不成立（エンジンの延べ回転数が１０００回転未満）であると判定されれば、以降の処理を行うことなく、本ルーチンを終了する。
【００５７】
これに対して、上述したステップ４０８で、ダイアグ判定条件が成立（エンジンの延べ回転数が１０００回転）と判定されれば、ステップ４０９に進み、ダイアグ判定条件が成立した時点の異常サイクル数カウンタＦ2 のカウント値に基づいて異常サイクルの発生頻度Ｆpk（エンジン１０００回転当たりの異常サイクル数）を算出する。これにより、エンジンが延べ１０００回転する毎に異常サイクルの発生頻度Ｆpkが算出される。
【００５８】
この後、ステップ４１０に進み、異常サイクル発生頻度Ｆpkを判定しきい値Ｃfpk と比較して、異常サイクル発生頻度Ｆpkが判定しきい値Ｃfpk を越えていると判定されれば、ステップ４１１に進み、失火検出システム故障のダイアグ判定を行う。
【００５９】
一方、上記ステップ４１０で、異常サイクル発生頻度Ｆpkが判定しきい値Ｃfpk 以下と判定されれば、失火検出システム故障のダイアグ判定を行わない。これらステップ４０８〜４１１の処理が特許請求の範囲でいうダイアグ手段としての役割を果たす。
この後、ステップ４１２に進み、異常サイクル数カウンタＦ2 をリセットして本ルーチンを終了する。
【００６０】
以上説明した本実施例によれば、失火状態と判定したときから正常燃焼状態に復帰したと判定するまでの間は、点火プラグ異常判定処理／失火検出システム故障判定処理を禁止するようにしているため、失火による点火プラグ異常の誤検出や燃料カット中の後着火による失火検出システム故障の誤検出を未然に防止できて、複雑な適合確認作業を必要とせずに、点火プラグ異常／失火検出システム故障の検出信頼性を向上できる。しかも、正常燃焼状態に復帰した後に点火プラグ異常判定処理／失火検出システム故障判定処理の禁止状態を解除するため、実用上、失火検出機能と点火プラグ異常検出機能／失火検出システム故障検出機能とを問題なく並立させることができる。
【００６１】
尚、本実施例では、失火状態と判定したときから正常燃焼状態に復帰したと判定するまでの間に、点火プラグ異常判定処理／失火検出システム故障判定処理を禁止するようにしたが、点火プラグ異常判定結果／失火検出システム故障判定結果を無効とするようにしても良い。
【図面の簡単な説明】
【００６２】
【図１】本発明の一実施例における点火制御系とイオン電流検出回路の構成を示す回路図である。
【図２】点火信号、筒内圧力、スパイクノイズ検出区間、スパイクノイズ対策点火プラグの正常燃焼時の検出電流波形、失火時の検出電流波形、異種点火プラグの失火時の検出電流波形との関係を説明するタイムチャートである。
【図３】失火検出ルーチンの処理の流れを示すフローチャートである。
【図４】失火ダイアグルーチンの処理の流れを示すフローチャートである。
【図５】スパイクノイズダイアグルーチンの処理の流れを示すフローチャートである。
【図６】失火検出システムダイアグルーチンの処理の流れを示すフローチャートである。
【符号の説明】
【００６３】
２１…点火コイル、２２…一次コイル、２３…バッテリ、２４…イグナイタ、２５…パワートランジスタ、２６…二次コイル、２７…点火プラグ、３１…イオン電流検出抵抗、３３…反転増幅回路、３４…エンジン制御回路、３５…イオン電流検出回路（イオン電流検出手段）、３６…中心電極、３７…接地電極、４１…エンジン制御用マイコン（失火検出手段，正常燃焼復帰判定手段，異常サイクル検出手段，ダイアグ手段，ダイアグ禁止手段，燃料カット手段）、４２…イオン電流信号処理回路
【図１】
2009281161.tif 000003
【図２】
2009281161.tif 000004
【図３】
2009281161.tif 000005
【図４】
2009281161.tif 000006
【図５】
2009281161.tif 000007
【図６】
2009281161.tif 000008