(57)【要約】【課題】エンジンと変速機との共振現象に起因する失火の誤判定を回避できる失火判定装置を提供する。【解決手段】  エンジン１の回転変動量ΔＮＥが所定の閾値Ｎ１を越えた際、失火が生じた可能性があると判断する。ロックアップクラッチが非ロックアップ状態にある場合には、回転変動の変化が比較的大きいものとして規定されている第１の回転変動パターンに基づいて失火判定動作を実行する。ロックアップクラッチがロックアップ状態にある場合には、回転変動の変化が上記第１の回転変動パターンよりも小さく規定されている第２の回転変動パターンに基づいて失火判定動作を実行する。これにより、エンジン１と自動変速機５０との共振現象が発生している状況であっても、失火の誤判定が回避できる。【選択図】      図２
2010019198.tif 000002
【特許請求の範囲】
【請求項１】
ロックアップクラッチを有する流体式動力伝達装置を介して変速機に連結された内燃機関の回転変動量が所定の閾値を超えたときに失火が生じている可能性があると判断し、内燃機関の回転変動パターンが失火発生時に特有のパターンであるか否かを判定することによって失火判定を行う内燃機関の失火判定装置において、
上記ロックアップクラッチの非ロックアップ状態において、内燃機関の回転変動パターンが、非ロックアップ状態での失火発生時に特有の第１の回転変動パターンに沿っているか否かによって失火判定動作を行うと共に、上記ロックアップクラッチのロックアップ状態において、内燃機関の回転変動パターンが、ロックアップ状態での失火発生時に特有の第２の回転変動パターンに沿っているか否かによって失火判定動作を行う失火判定手段を備えており、
上記第２の回転変動パターンは、第１の回転変動パターンに比べて、回転変動の変化が小さいものとして規定されていることを特徴とする内燃機関の失火判定装置。
【請求項２】
上記請求項１記載の内燃機関の失火判定装置において、
上記失火判定手段は、ロックアップクラッチがロックアップ状態にある場合において、変速機の変速段が、上記内燃機関と変速機との共振が発生する可能性のある特定の変速段にある場合にのみ、上記第２の回転変動パターンに基づいた失火判定動作を行うよう構成されていることを特徴とする内燃機関の失火判定装置。
【請求項３】
上記請求項１または２記載の内燃機関の失火判定装置において、
上記失火判定手段は、ロックアップクラッチがロックアップ状態にある場合において、内燃機関の回転変動量が所定の閾値を超えたことで失火が生じている可能性があると判断された場合に、その失火が生じている可能性があると判断された気筒が、過去の燃焼行程においても回転変動量が所定の閾値を超えていた場合に、この気筒に対する上記第２の回転変動パターンに基づいた失火判定動作を行うよう構成されていることを特徴とする内燃機関の失火判定装置。
【請求項４】
上記請求項１、２または３記載の内燃機関の失火判定装置において、
上記失火判定手段は、ロックアップクラッチがロックアップ状態にある場合において、内燃機関の回転変動量が所定の閾値を超えたことで失火が生じている可能性があると判断された場合に、その失火判定対象気筒の膨張行程時における回転変動量、この失火判定対象気筒の膨張行程の直前に膨張行程を迎えていた気筒の膨張行程時における回転変動量、および、失火判定対象気筒の膨張行程の直後に膨張行程を迎えた気筒の膨張行程時における回転変動量の変化のパターンと、上記第２の回転変動パターンとを比較することで失火判定動作を行うよう構成されていることを特徴とする内燃機関の失火判定装置。
【請求項５】
上記請求項１〜４のうち何れか一つに記載の内燃機関の失火判定装置において、
上記第１の回転変動パターンは、失火判定対象気筒の膨張行程の直前に膨張行程を迎えた１点火前気筒の膨張行程時における回転変動量および失火判定対象気筒の膨張行程の直後に膨張行程を迎えた１点火後気筒の膨張行程時における回転変動量に対して、失火判定対象気筒の膨張行程時における回転変動量が所定量以上大きく、且つ上記１点火後気筒の膨張行程の更に直後に膨張行程を迎えた２点火後気筒の膨張行程時における回転変動量が、上記失火判定対象気筒の膨張行程における回転変動量に対して、絶対値が略同一であって正負が逆の値となるパターンとして規定されている一方、
上記第２の回転変動パターンは、上記１点火前気筒の膨張行程時における回転変動量に対して、失火判定対象気筒の膨張行程時における回転変動量が所定量以上大きく、上記１点火後気筒の膨張行程時における回転変動量と、失火判定対象気筒の膨張行程時における回転変動量との差が所定量以下であって、且つ上記２点火後気筒の膨張行程時における回転変動量が、上記失火判定対象気筒の膨張行程における回転変動量に対して、絶対値が略同一であって正負が逆の値となるパターンとして規定されていることを特徴とする内燃機関の失火判定装置。
【請求項６】
上記請求項１〜４のうち何れか一つに記載の内燃機関の失火判定装置において、
上記第１の回転変動パターンは、失火判定対象気筒の膨張行程の直前に膨張行程を迎えた１点火前気筒の膨張行程時における回転変動量および失火判定対象気筒の膨張行程の直後に膨張行程を迎えた１点火後気筒の膨張行程時における回転変動量に対して、失火判定対象気筒の膨張行程時における回転変動量が所定量以上大きく、且つ上記１点火後気筒の膨張行程の更に直後に膨張行程を迎えた２点火後気筒の膨張行程時における回転変動量が、上記失火判定対象気筒の膨張行程における回転変動量に対して、絶対値が略同一であって正負が逆の値となるパターンとして規定されている一方、
上記第２の回転変動パターンは、上記１点火前気筒の膨張行程時における回転変動量と、失火判定対象気筒の膨張行程時における回転変動量との差が所定量以下であって、上記１点火後気筒の膨張行程時における回転変動量に対して、失火判定対象気筒の膨張行程時における回転変動量が所定量以上大きく、且つ上記２点火後気筒の膨張行程時における回転変動量が、上記失火判定対象気筒の膨張行程における回転変動量に対して、絶対値が略同一であって正負が逆の値となるパターンとして規定されていることを特徴とする内燃機関の失火判定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は内燃機関の失火判定装置に係る。特に、本発明は、内燃機関の回転変動に基づいて失火発生の有無を判定する失火判定装置における判定動作の信頼性を高めるための対策に関する。
【背景技術】
【０００２】
従来より、例えば自動車用内燃機関において混合気への着火がなされない現象、いわゆる「失火」が発生すると、未燃混合気が排気通路に排出され、排気エミッションの悪化や、排気浄化触媒への悪影響が懸念される。
【０００３】
そこで、上記失火の発生時には機関回転速度の変動（以下、単に回転変動と呼ぶ）が大きくなることに着目し、この回転変動に基づいて失火の発生を判定する失火判定装置が提案されている。この種の装置における失火判定の基本原理は以下のとおりである。
【０００４】
先ず、ある一つの気筒に失火が発生した場合、その気筒の膨張行程（実際には失火しており爆発していない行程）における機関回転速度が次第に低下していく。その結果、この失火を生じた気筒の膨張行程中においてクランクシャフトが一定クランク角度を回転するのに要する時間が、他気筒の膨張行程時におけるその時間よりも長くなる。このため、これら時間を計測して比較することにより失火発生の有無を判定することが可能になる。
【０００５】
具体的には、ある気筒（例えば第３番気筒）が膨張行程にあるときに、この膨張行程中においてクランクシャフトが一定クランク角度を回転するのに要する時間と、この膨張行程よりも所定クランク角度前（例えば３６０°前）に膨張行程を迎えていた気筒（例えば第２番気筒）の膨張行程中においてクランクシャフトが一定クランク角度を回転するのに要する時間との差を演算（前者の時間から後者の時間を減算）する。そして、この演算値が所定の閾値を越えている場合には、内燃機関の回転変動が大きくなったと判断して失火（第３番気筒に失火）が発生したと判定している。
【０００６】
ＯＢＤ（Ｏｎ−Ｂｏａｄ  Ｄｉａｇｎｏｓｔｉｃ  Ｓｙｓｔｅｍ）対応国向けの自動車では、制御回路中に失火カウンタが備えられており、失火発生の判定を行う度に失火カウンタがインクリメントされ、所定の機関回転回数（例えば１０００回転）当たりの失火カウンタのカウント値が所定値（例えば３０）を越えるとＭＩＬ（警告灯）が点灯し、運転者に警告を促す。
【０００７】
従って、失火の判定が正確に行われていない状況では、例えば、失火が発生しているにも拘わらずそれを認識することができず、排気エミッションが悪化した状態が継続されてしまう。また、失火が発生していないにも拘わらず失火が発生していると誤判定してしまって、実際の失火発生回数が上記所定値より小さくても早期にＭＩＬが点灯することになってしまい、ユーザに違和感を与えてしまう。
【０００８】
そこで、失火の誤判定を解消するべく、回転変動の経時変化パターンが、予め定められた失火パターンとなったときに失火が生じたと判定するようにしたものが知られている（例えば、下記の特許文献１を参照）。
【０００９】
この特許文献１に開示されているものは、各気筒の膨張行程時においてクランクシャフトが一定クランク角度を回転するのに要する時間を検出し、膨張行程が一つ間隔を隔てて行われる気筒間（４気筒エンジンの場合のクランク角度３６０°の角度間隔で膨張行程が行われる気筒同士）の上記時間の偏差を求め、この偏差が閾値を越え且つ偏差の変化パターンが失火発生時に特有のパターンとなったときに失火が発生したと判定するようにしている。具体的には、失火判定対象気筒の膨張行程時における上記回転変動量が所定の閾値を超えており、且つこの回転変動量が、失火判定対象気筒の膨張行程の直前に膨張行程を迎えていた気筒の回転変動量および失火判定対象気筒の膨張行程の直後に膨張行程を迎えた気筒の回転変動量に比べて特に大きくなっている場合に、この失火判定対象気筒において失火が生じたと判定している。
【００１０】
また、下記の特許文献２〜４には、トルクコンバータにロックアップクラッチを備えた自動車において、エンジンの失火判定のための閾値を、ロックアップ状態にあるときと非ロックアップ状態にあるときとで異ならせることについて開示されている。
【特許文献１】特開２００６−１５２９７１号公報
【特許文献２】特開平４−１７１２４９号公報
【特許文献３】特開平１０−３３１７０７号公報
【特許文献４】特開２００４−２９３３５０号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
ところが、上述したような各特許文献における失火判定動作では、失火の誤判定が生じてしまう可能性が未だ残っていることを本発明の発明者は見出した。
【００１２】
具体的には、変速装置としてオートマティックトランスミッション（自動変速機）を搭載した自動車にあっては、トルクコンバータにロックアップクラッチを備えており、このロックアップクラッチの締結状態（ロックアップ状態）では、エンジンとトランスミッションとが直結状態となる。このような状況で、失火が発生してエンジンに振動が発生すると、その振動がトランスミッションにまで伝達され、その振動数がトランスミッションの固有振動数に一致する状況になると、エンジンからトランスミッションに亘るパワートレーン全体の共振現象が発生してしまうことになる。このような共振現象が発生する状況では、上記回転変動が正確に認識できず、失火の誤判定を招いてしまう可能性がある。
【００１３】
この失火の誤判定の発生状況の一例について説明する。エンジン回転数は、クランクシャフトに一体的に取り付けられたＮＥロータの外歯の通過を、電磁ピックアップで成るクランク角センサによって検出することで計測されるが、この際、上記共振現象が発生すると、クランク角センサを支持しているステーにも共振が発生し、このクランク角センサとＮＥロータとの相対位置が変動してしまう。このため、クランクシャフトの回転速度が失火によって変動しているにも拘わらず、上記共振現象により、この回転変動が正確に検出できなくなって、失火が発生しているにも拘わらず失火が発生していないと誤判定してしまうことになる。
【００１４】
また、上述した特許文献２〜４では、ロックアップクラッチがロックアップ状態にあるときと非ロックアップ状態にあるときとで、失火判定のための閾値を異ならせることについて開示されているが、上記パワートレーン全体の共振現象に起因する失火の誤判定については何ら考慮されておらず、単に回転変動量が所定の閾値を超えているか否かによって失火判定を行うものに過ぎない。従って、これら特許文献２〜４においても未だ失火の誤判定が生じてしまう可能性が残っている。
【００１５】
本発明は、かかる点に鑑みてなされたものであり、その目的とするところは、上記共振現象に起因する失火の誤判定を回避することができる失火判定装置を提供することにある。
【課題を解決するための手段】
【００１６】
−課題の解決原理−
上記の目的を達成するために講じられた本発明の解決原理は、失火の有無を内燃機関の回転変動パターンを認識することによって判定し、その判定のための回転変動パターンとして、ロックアップクラッチがロックアップ状態にある場合と非ロックアップ状態にある場合とで失火判定パターンを異ならせるようにしている。更に、ロックアップクラッチがロックアップ状態にある場合には非ロックアップ状態にある場合に比べて、回転変動幅が小さくても失火が発生していると判定できるように、失火判定条件を緩めている。これにより、上記ロックアップ状態で共振現象が発生している状況であっても、失火の誤判定が回避できるようにしている。
【００１７】
−解決手段−
具体的に、本発明は、ロックアップクラッチを有する流体式動力伝達装置を介して変速機に連結された内燃機関の回転変動量が所定の閾値を超えたときに失火が生じている可能性があると判断し、内燃機関の回転変動パターンが失火発生時に特有のパターンであるか否かを判定することによって失火判定を行う内燃機関の失火判定装置を前提とする。この失火判定装置に対し、上記ロックアップクラッチの非ロックアップ状態において、内燃機関の回転変動パターンが、非ロックアップ状態での失火発生時に特有の第１の回転変動パターンに沿っているか否かによって失火判定動作を行うと共に、上記ロックアップクラッチのロックアップ状態において、内燃機関の回転変動パターンが、ロックアップ状態での失火発生時に特有の第２の回転変動パターンに沿っているか否かによって失火判定動作を行う失火判定手段を備えさせる。そして、上記第２の回転変動パターンを、第１の回転変動パターンに比べて、回転変動の変化が小さいものとして規定している。
【００１８】
この特定事項により、先ず、内燃機関の駆動中にその回転変動量が所定の閾値を超えたときには、失火が生じている可能性があると判断する。そして、ロックアップクラッチが非ロックアップ状態である場合には、内燃機関の回転変動パターンが第１の回転変動パターン（非ロックアップ状態での失火発生時に特有の回転変動パターン）に沿っているか否かによって失火判定動作を行う。つまり、非ロックアップ状態における内燃機関の回転変動パターンが第１の回転変動パターンに沿っている場合には、失火が発生していると判定する。一方、ロックアップクラッチがロックアップ状態である場合には、内燃機関の回転変動パターンが第２の回転変動パターン（ロックアップ状態での失火発生時に特有の回転変動パターン）に沿っているか否かによって失火判定動作を行う。つまり、ロックアップ状態における内燃機関の回転変動パターンが第２の回転変動パターンに沿っている場合には、失火が発生していると判定する。
【００１９】
そして、この第２の回転変動パターンは、第１の回転変動パターンに比べて回転変動幅が小さいものとして規定されている。言い換えると、失火判定条件を緩めるようなパターンとなっている。このため、同様の回転変動が生じている場合に、ロックアップクラッチの非ロックアップ状態では失火が発生していると判定されなくても、ロックアップクラッチのロックアップ状態では失火が発生していると判定されることになる。つまり、ロックアップクラッチのロックアップ状態において、内燃機関と変速機との共振が発生している場合に、従来であれば、この共振の影響によって回転変動が小さくなっているために、失火が発生していてもそれを検出することができない可能性が高かったが、本解決手段によれば、特定の回転変動パターン（上記第２の回転変動パターン）を使用することによって失火の発生を検出することが可能になる。このようにして、上記共振現象の悪影響を受けることなく失火が発生していることが正確に判定され、失火判定の信頼性を高めることができる。
【００２０】
上記第２の回転変動パターンに基づいた失火判定動作を行う前提条件を規定する構成として以下のものが挙げられる。つまり、ロックアップクラッチがロックアップ状態にある場合において、変速機の変速段が、上記内燃機関と変速機との共振が発生する可能性のある特定の変速段にある場合にのみ、上記失火判定手段が、上記第２の回転変動パターンに基づいた失火判定動作を行う構成としている。
【００２１】
上記内燃機関と変速機との共振現象が発生する状況は限定的である。つまり、変速機がある特定の変速段にあって、且つある特定の内燃機関回転数にある際に、失火が発生した場合である。このため、上記ある特定の変速段以外の変速段では上記共振現象は発生しないため、この特定の変速段以外では第２の回転変動パターンに基づいた失火判定動作を行う必要はない。このような状況で失火判定動作を行わないことにより、この第２の回転変動パターンに基づいた失火判定動作の実行タイミングを必要最小限に抑えることができ、無駄な失火判定動作の回避と、ロックアップ状態における失火判定の信頼性の向上とを図ることができる。
【００２２】
上記第２の回転変動パターンに基づいた失火判定動作を実行する条件の一つとして以下のものが挙げられる。つまり、ロックアップクラッチがロックアップ状態にある場合において、内燃機関の回転変動量が所定の閾値を超えたことで失火が生じている可能性があると判断された場合に、その失火が生じている可能性があると判断された気筒が、過去の燃焼行程においても回転変動量が所定の閾値を超えていた場合に、上記失火判定手段が、この気筒に対する上記第２の回転変動パターンに基づいた失火判定動作を行う構成としている。
【００２３】
上述した如く、第２の回転変動パターンは、失火判定条件を緩めるものであるため、場合によっては、失火が発生していないにも拘わらず失火が発生したと誤判定してしまう可能性がある。これを考慮し、本解決手段では、過去にも失火が生じている可能性があると判断された気筒に対し、再び失火が生じている可能性があると判断された場合に限り、その気筒に対して回転変動パターンが上記第２の回転変動パターンに沿っているか否かの失火判定動作を実施するようにしている。これにより、上記失火の誤判定を防止することができ、失火判定動作の信頼性を更に高めることができる。
【００２４】
上記第２の回転変動パターンに基づいた失火判定動作として具体的には以下のものが挙げられる。ロックアップクラッチがロックアップ状態にある場合において、内燃機関の回転変動量が所定の閾値を超えたことで失火が生じている可能性があると判断された場合に、その失火判定対象気筒の膨張行程時における回転変動量、この失火判定対象気筒の膨張行程の直前に膨張行程を迎えていた気筒の膨張行程時における回転変動量、および、失火判定対象気筒の膨張行程の直後に膨張行程を迎えた気筒の膨張行程時における回転変動量の変化のパターンと、上記第２の回転変動パターンとを比較することで失火判定動作を行う構成としている。
【００２５】
これにより、上記第２の回転変動パターンに基づいた失火判定動作を具体的に特定することができ、本発明の実用性を高めることができる。
【００２６】
上記第１の回転変動パターンおよび第２の回転変動パターンとして具体的には以下の２組が挙げられる。
【００２７】
先ず、失火判定対象気筒の膨張行程の直前に膨張行程を迎えた１点火前気筒の膨張行程時における回転変動量および失火判定対象気筒の膨張行程の直後に膨張行程を迎えた１点火後気筒の膨張行程時における回転変動量に対して、失火判定対象気筒の膨張行程時における回転変動量が所定量以上大きく、且つ上記１点火後気筒の膨張行程の更に直後に膨張行程を迎えた２点火後気筒の膨張行程時における回転変動量が、上記失火判定対象気筒の膨張行程における回転変動量に対して、絶対値が略同一であって正負が逆の値となるパターンとして上記第１の回転変動パターンを規定する。一方、上記１点火前気筒の膨張行程時における回転変動量に対して、失火判定対象気筒の膨張行程時における回転変動量が所定量以上大きく、上記１点火後気筒の膨張行程時における回転変動量と、失火判定対象気筒の膨張行程時における回転変動量との差が所定量以下であって、且つ上記２点火後気筒の膨張行程時における回転変動量が、上記失火判定対象気筒の膨張行程における回転変動量に対して、絶対値が略同一であって正負が逆の値となるパターンとして上記第２の回転変動パターンを規定している。
【００２８】
また、失火判定対象気筒の膨張行程の直前に膨張行程を迎えた１点火前気筒の膨張行程時における回転変動量および失火判定対象気筒の膨張行程の直後に膨張行程を迎えた１点火後気筒の膨張行程時における回転変動量に対して、失火判定対象気筒の膨張行程時における回転変動量が所定量以上大きく、且つ上記１点火後気筒の膨張行程の更に直後に膨張行程を迎えた２点火後気筒の膨張行程時における回転変動量が、上記失火判定対象気筒の膨張行程における回転変動量に対して、絶対値が略同一であって正負が逆の値となるパターンとして上記第１の回転変動パターンを規定する。一方、上記１点火前気筒の膨張行程時における回転変動量と、失火判定対象気筒の膨張行程時における回転変動量との差が所定量以下であって、上記１点火後気筒の膨張行程時における回転変動量に対して、失火判定対象気筒の膨張行程時における回転変動量が所定量以上大きく、且つ上記２点火後気筒の膨張行程時における回転変動量が、上記失火判定対象気筒の膨張行程における回転変動量に対して、絶対値が略同一であって正負が逆の値となるパターンとして上記第２の回転変動パターンを規定している。尚、上記各所定量は内燃機関の排気量や気筒数、変速機の固有振動数などに応じて適宜設定される値である。
【００２９】
このようにして、第１の回転変動パターンと第２の回転変動パターンとを明確に識別することで、ロックアップクラッチの非ロックアップ状態における失火判定動作と、ロックアップクラッチのロックアップ状態における失火判定動作とをそれぞれ正確に行うことができ、ロックアップ時および非ロックアップ時ともに失火の誤判定を防止することができる。
【発明の効果】
【００３０】
以上説明したように、本発明では、失火の有無を判定するための内燃機関の回転変動パターンとして、ロックアップクラッチがロックアップ状態にある場合と非ロックアップ状態にある場合とでパターンを異ならせるようにしている。更に、ロックアップクラッチがロックアップ状態にある場合には非ロックアップ状態にある場合に比べて、回転変動幅が小さくても失火が発生していると判定できるように、失火判定条件を緩めている。これにより、上記ロックアップ状態で内燃機関と変速機との共振現象が発生している状況であっても、失火の誤判定が回避でき、失火判定の信頼性を高めることができる。
【発明を実施するための最良の形態】
【００３１】
以下、本発明の実施形態を図面に基づいて説明する。本実施形態では、本発明を自動車用４気筒ガソリンエンジンに適用した場合について説明する。
【００３２】
−エンジンの構成説明−
先ず、図１を参照して、本実施形態に係る失火判定装置が適用されるエンジン（内燃機関）、並びにその周辺装置の概略構成について説明する。図１に示すように、本実施形態に係るエンジン１は、４気筒分（図１では１気筒分のみを示す）のシリンダボア２を有するシリンダブロック１ａと、シリンダヘッド１ｂとを備えている。各シリンダボア２内には上下動可能に設けられたピストン３が備えられ、このピストン３が、コンロッド（コネクティングロッド）３ａを介してエンジン１の出力軸であるクランクシャフト１０に連結されている。そして、シリンダボア２の内部において、ピストン３とシリンダヘッド１ｂとにより囲まれた空間によって燃焼室４が区画形成されている。
【００３３】
シリンダヘッド１ｂには、各燃焼室４に対応して点火プラグ１１が取り付けられている。また、シリンダヘッド１ｂには、各燃焼室４に通じる吸気ポート５ａおよび排気ポート６ａがそれぞれ設けられ、これら吸気ポート５ａおよび排気ポート６ａには、吸気通路５および排気通路６がそれぞれ接続されている。吸気ポート５ａおよび排気ポート６ａの燃焼室４に通じる各開口端には、吸気バルブ７および排気バルブ８がそれぞれ設けられている。吸気バルブ７および排気バルブ８は、クランクシャフト１０の動力によってそれぞれ回転する吸気カムシャフト３１および排気カムシャフト３２によって開閉される。クランクシャフト１０の動力は、タイミングベルト３５および各タイミングプーリー３３，３４を介して、上記吸気カムシャフト３１および排気カムシャフト３２に伝達されている。
【００３４】
また、上記吸気ポート５ａの近傍には、各気筒に対応してインジェクタ（燃料噴射弁）９がそれぞれ備えられている。各インジェクタ９には図示しない燃料供給系を介して所定圧力の燃料が供給されている。
【００３５】
一方、吸気通路５にはサージタンク１６が設けられ、このサージタンク１６の上流側には、アクセルペダル１８の操作に応じて開閉駆動されるスロットルバルブ１９が設けられている。このスロットルバルブ１９の開度に応じて吸気通路５へ導入される吸入空気量が調整される。
【００３６】
エンジン１の運転が開始されると、吸気通路５内への吸入空気の導入とともにインジェクタ９から燃料が噴射されることにより、それら吸入空気と燃料とが混合されて混合気となる。そして、エンジン１の吸入行程において、吸気バルブ７により吸気ポート５ａが開かれることにより混合気が吸気ポート５ａを通じて燃焼室４に取り込まれる。この燃焼室４に取り込まれた混合気は、圧縮行程において圧縮された後、点火プラグ１１によって着火され、その混合気が爆発・燃焼してクランクシャフト１０に駆動力が付与される（膨張行程）。燃焼後の排気ガスは、排気バルブ８により排気ポート６ａが開かれることによって排気通路６に排出され（排気行程）、更に触媒１２を経て浄化された後、外部に放出される。なお、上記点火プラグ１１は、イグナイタ１３から出力される高電圧の印加タイミングに応じて混合気への点火動作を実行している。
【００３７】
エンジン１には、その運転状態を検出するための以下に述べるような各種のセンサが設けられている。
【００３８】
上記クランクシャフト１０の近傍には、その回転角（クランク角ＣＡ）および回転速度（エンジン回転速度ＮＥ）を検出するためのクランク角センサ２１が配設されている。このクランク角センサ２１は、所定のクランク角（例えば３０°）毎にパルス信号を出力する。このクランク角センサ２１によるクランク角の検出手法の一例としては、クランクシャフト１０と回転一体の図示しないロータ（ＮＥロータ）の外周面の３０°おきに外歯を形成しておき、この外歯と対面して電磁ピックアップで成る上記クランク角センサ２１を配置する。そして、クランクシャフト１０の回転に伴って外歯がクランク角センサ２１の近傍を通過した際に、このクランク角センサ２１が出力パルスを発生するようになっている。尚、このロータとしては、外周面に形成される外歯が１０°おきに形成されたものが適用される場合もある。この場合、エンジン制御装置（エンジンＥＣＵ）４０内で分周して３０°ＣＡ毎の出力パルスを発生する。
【００３９】
上記吸気カムシャフト３１の近傍には、カム角センサ２２が配設されている。このカム角センサ２２は、通常、気筒判別センサとして用いられ、例えば第１気筒＃１の圧縮上死点（ＴＤＣ）に対応してパルス信号を出力する。つまり、このカム角センサ２２は、吸気カムシャフト３１の１回転毎にパルス信号を出力する。このカム角センサ２２によるカム角の検出手法の一例としては、吸気カムシャフト３１と回転一体のロータの外周面の１箇所に外歯を形成しておき、この外歯と対面して電磁ピックアップで成る上記カム角センサ２２を配置し、吸気カムシャフト３１の回転に伴って外歯がカム角センサ２２の近傍を通過した際に、このカム角センサ２２が出力パルスを発生するようになっている。このロータはクランクシャフト１０の１／２の回転速度で回転するため、クランクシャフト１０が７２０°回転する毎に出力パルスを発生する。言い換えると、ある特定の気筒が同一行程（例えば第１気筒♯１が上死点に達した時点）となる度に出力パルスを発生する構成である。
【００４０】
上記サージタンク１６には、吸気通路５内の圧力（吸気管内圧力ＰＭ）を検出するための圧力センサ２３が設けられている。この圧力センサ２３は、サージタンク１６内の圧力に応じた信号を出力する。
【００４１】
以上が、本実施形態に係るエンジン１の概略構成である。
【００４２】
−自動変速機−
次に、上記エンジン１からの回転動力が伝達され、且つ変速動作を行う自動変速機について説明する。図２は、上記エンジン１と自動変速機５０との接続状態を示す概略構成図である。また、図３は、トルクコンバータ（流体式動力伝達装置）５３の概略構成を示す図である。
【００４３】
これらの図に示すように、自動変速機５０は、エンジン１から入力軸５１に入力される回転動力を変速し、出力軸５２を介して駆動輪に出力するもので、主として、トルクコンバータ５３、変速機構部５４、油圧制御装置５５等を含んで構成されている。
【００４４】
トルクコンバータ５３は、エンジン１に回転連結されるもので、ポンプインペラ５３ａ、タービンランナ５３ｂ、ステータ５３ｃ、ワンウェイクラッチ５３ｄ、ステータシャフト５３ｅ、ロックアップクラッチ５３ｆを含んで構成されている。
【００４５】
上記ロックアップクラッチ５３ｆは、トルクコンバータ５３のポンプインペラ５３ａ（入力側）とタービンランナ５３ｂ（出力側）とを直結可能とするものであり、必要に応じて、ポンプインペラ５３ａとタービンランナ５３ｂとを直結する係合状態と、ポンプインペラ５３ａとタービンランナ５３ｂとを切り離す解放状態と、これら係合状態と解放状態との中間の半係合状態（スリップ状態）との間で切り換えられる。この切り換えのための条件については後述する。
【００４６】
このロックアップクラッチ５３ｆの係合力制御は、ロックアップコントロールバルブ５６でポンプインペラ５３ａ（入力側）とタービンランナ５３ｂ（出力側）とに対する作動油圧をコントロールすることによって行われる。
【００４７】
変速機構部５４は、例えば、複数のプラネタリギヤ、クラッチ、ブレーキ、ワンウェイクラッチ等を含んで構成されており、例えば、前進６段、後進１段の変速が可能になっている。上記油圧制御装置５５によって、変速機構部５４のクラッチやブレーキが個別に係合、解放されることにより適宜の変速段（前進１〜６速段、後進段）を成立させるように構成されている。この変速機構部５４の構成および油圧制御装置５５による制御動作は公知であるので、ここでは詳細な図示や説明を割愛する。
【００４８】
−エンジン制御装置４０、トランスミッション制御装置４５−
上記油圧制御装置５５は、トランスミッション制御装置４５により制御される。つまり、このトランスミッション制御装置４５による油圧制御装置５５の制御により、変速機構部５４における適宜の変速段つまり動力伝達経路を成立させるようになっている。
【００４９】
また、図４に示すように、上記エンジン制御装置４０とトランスミッション制御装置４５とは、エンジン制御やトランスミッション制御に必要な情報を互いに送受可能に接続されている。
【００５０】
エンジン制御装置４０およびトランスミッション制御装置４５は、図示していないが、共に一般的に公知のＥＣＵ（Ｅｌｅｃｔｒｏｎｉｃ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ）とされており、それぞれ、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）およびバックアップＲＡＭなどを備えている。
【００５１】
ＲＯＭは、各種制御プログラムや、それら各種制御プログラムを実行する際に参照されるマップ等が記憶されている。ＣＰＵは、ＲＯＭに記憶された各種制御プログラムやマップに基づいて演算処理を実行する。ＲＡＭは、ＣＰＵでの演算結果や各センサから入力されたデータ等を一時的に記憶するメモリであり、バックアップＲＡＭは、エンジン１の停止時にその保存すべきデータ等を記憶する不揮発性のメモリである。
【００５２】
エンジン制御装置４０には、図４に示すように、上記クランク角センサ２１、カム角センサ２２、圧力センサ２３の他、スロットル開度センサ２４などのエンジン１の運転状態を検出する各種センサが接続されており、その各センサの信号が入力される。また、このエンジン制御装置４０は、スロットルバルブ１９のアクチュエータ１９ａ、および、インジェクタ９などのエンジン１の各部を制御する。また、このエンジン制御装置４０には失火カウンタ４１が備えられており、後述する失火判定動作によってエンジン１に失火が発生したことが認識される度に、この失火カウンタ４１がインクリメントされていくようになっている。
【００５３】
トランスミッション制御装置４５には、上記入力軸５１の回転数を検出する入力軸回転数センサ６１、出力軸５２の回転数を検出する出力軸回転数センサ６２、ドライバにより操作されるアクセルペダル１８の開度を検出するアクセル開度センサ６３、自動変速機５０のシフトレバー位置を検出するシフトポジションセンサ６４、駆動輪の速度（車輪速度）を検出する車輪速センサ６５などが接続されている。
【００５４】
また、このトランスミッション制御装置４５は、上記ロックアップコントロールバルブ５６にロックアップクラッチ制御信号を出力する。このロックアップクラッチ制御信号に基づいてロックアップコントロールバルブ５６がロックアップクラッチ５３ｆの係合圧を制御し、上述したロックアップクラッチ５３ｆの係合状態（トルコン状態）、解放状態（完全スリップ状態）、半係合状態（スリップ状態：フレックスロックアップ状態とも呼ばれる）が切り換えられるようになっている。
【００５５】
さらに、トランスミッション制御装置４５は、自動変速機５０の油圧制御装置５５にソレノイド制御信号（油圧指令信号）を出力する。このソレノイド制御信号に基づいて油圧制御装置５５の油圧制御回路に備えられているリニアソレノイドバルブやオンオフソレノイドバルブなどが制御され、所定の変速段（第１変速段〜第６変速段、後退変速段など）を達成するように、自動変速機５０の各クラッチ、各ブレーキなどが所定の状態に係合または解放される。
【００５６】
−ロックアップクラッチ作動マップ−
上述したロックアップクラッチ５３ｆの係合状態、解放状態、半係合状態の切り換え動作は、例えば図５に示すようなロックアップクラッチ作動マップに従って行われる。このロックアップクラッチ作動マップは、車速Ｖおよびアクセル開度θTHをパラメータとし、それら車速Ｖおよびアクセル開度θTHに応じて、ロックアップクラッチ５３ｆを、係合状態（ロックアップ状態）、解放状態（トルコン状態）、半係合状態（フレックスロックアップ状態：スリップ状態）の間で切り換えるためのマップであって、上記トランスミッション制御装置４５のＲＯＭ内に記憶されている。
【００５７】
つまり、車速Ｖおよびアクセル開度θTHに基づいて、係合領域（ロックアップ作動領域）、解放領域（トルコン作動領域）、スリップ領域（フレックスロックアップ作動領域）のいずれの領域に属するかを判定し、その判定された領域の作動となるように上記ロックアップコントロールバルブ５６を制御してロックアップクラッチ５３ｆを係合、解放、或いは半係合のいずれかの状態とする制御を実行する。尚、上記アクセル開度θTHに代えてスロットル開度に応じたロックアップクラッチ作動マップ（車速とスロットル開度とに応じてロックアップクラッチ５３ｆを制御するためのマップ）によりロックアップクラッチ５３ｆの状態を切り換えるようにしてもよい。
【００５８】
上記フレックスロックアップ作動領域では、運転性を損なうことなく燃費を可及的に良くすることを目的としてエンジン１の回転変動を吸収しつつトルクコンバータ５３の動力伝達損失を可及的に抑制するために、ロックアップクラッチ５３ｆのスリップ制御を実行する。ロックアップクラッチ５３ｆのスリップ制御については、タービン回転速度ＮＴとエンジン回転速度ＮＥとの回転速度差（スリップ量）ＮＳＬＰ（＝ＮＥ−ＮＴ）を目標回転速度差（目標スリップ量：例えば５０ｒｐｍ）に制御するためにロックアップクラッチ５３ｆを制御するソレノイド弁に対して駆動信号を出力する。このスリップ制御のうちの減速走行時スリップ制御は、たとえば、アクセル開度θTHが略零で惰性走行（減速走行）する前進走行時において生じる駆動輪側からの逆入力をエンジン１側へ伝達する変速段、すなわちエンジンブレーキ作用が得られる変速段で行われ、タービン回転速度ＮＴおよびエンジン回転速度ＮＥは、車両の減速にしたがって緩やかに減少させられる。このようにロックアップクラッチ５３ｆがスリップ係合させられると、エンジン回転速度ＮＥがタービン回転速度ＮＴ付近まで引き上げられるため、エンジン１に対する燃料供給量を抑制する制御状態（フューエルカット状態）がさらに長い期間維持されて燃費が向上する。
【００５９】
−失火判定のための構成および動作−
次に、本形態の特徴部分であるエンジン失火判定のための構成（失火判定装置の構成）およびその動作について説明する。
【００６０】
本実施形態に係る失火判定装置は、上記エンジン制御装置４０を備えている。このエンジン制御装置４０には、上記各センサ２１〜２４の出力信号がそれぞれ取り込まれている。そして、エンジン制御装置４０には、これら各信号に基づいてクランク角ＣＡや、エンジン回転速度ＮＥ、現在の運転気筒（例えば現在膨張行程を迎えている気筒）、吸気管内圧力ＰＭ等を演算するとともに、それら演算結果に基づいて、後述する失火判定動作を実行する。
【００６１】
次に、失火判定装置の失火判定動作について説明する。本失火判定装置は、各気筒の圧縮上死点を基準として、３６０°クランク角（ＣＡ）前から遅角側に０°〜３０°ＣＡ回転するのに要する時間をＴ１、また同じく遅角側に９０°〜１２０°ＣＡ回転するのに要する時間をＴ２として算出する。この時間Ｔ１およびＴ２はそれぞれ、各点火毎にクランクシャフト１０が３０°ＣＡ回転するのに要する時間が極大になると推定される角度および極小になると推定される角度に対応した３０°ＣＡの所要時間である。
【００６２】
また、現在の、すなわち上記時間Ｔ１およびＴ２の算出対象であった気筒のピストン３が上死点に達した位置から３６０°ＣＡ後の同じく遅角側に０°〜３０°ＣＡ回転するのに要する時間をＴ３、遅角側に９０°〜１２０°ＣＡ回転するのに要する時間をＴ４として算出する。これら時間Ｔ３およびＴ４も、各点火毎にクランクシャフト１０が３０°ＣＡ回転するのに要する時間が極大になると推定される角度および極小になると推定される角度にそれぞれ対応した３０°ＣＡの所要時間である。
【００６３】
そして、これら各時間Ｔ１，Ｔ２，Ｔ３，Ｔ４に基づき、回転変動量ΔＮＥ０を次式
ΔＮＥ０＝（Ｔ４−Ｔ３）−（Ｔ２−Ｔ１） …（１）
から算出する。
【００６４】
これにより、現在膨張行程中の気筒の回転速度における、３６０°進角側で膨張行程を迎えていた気筒（点火タイミングが２点火前の気筒）の回転速度に対する差を反映した回転変動量を求めることができる。
【００６５】
いずれかの気筒において失火が生じてエンジン回転速度が低下すると、クランクシャフト１０が一定クランク角度を回転するのに要する経過時間が長くなる。つまり、上記（１）式における（Ｔ４−Ｔ３）の値が（Ｔ２−Ｔ１）の値に対して大きくなる。そこで、各気筒の膨張行程時においてクランクシャフト１０が一定クランク角度を回転するのに要する経過時間を検出し、この経過時間の長さを上記（１）式に当てはめ、算出された回転変動量ΔＮＥ０に基づいて失火が生じている可能性があるか否かを認識して、後述する失火判定出動作に役立てるようにしている。
【００６６】
また、本失火判定装置は、上記（１）式によって算出される回転変動量について、現時点（失火発生の有無の判定開始時点）での算出量をΔＮＥ０、その１点火前の算出量（点火タイミングが１点火前の気筒の膨張行程時に求められた回転変動量）をΔＮＥ１、２点火前の算出量をΔＮＥ２、３点火前の算出量をΔＮＥ３とし、これら回転変動の変化パターンに基づいて失火の発生の有無を判定するようになっている。具体的な判定動作については後述する。
【００６７】
尚、本形態では、上述したように、クランク角度の位相が３６０°離れた気筒における経過時間の偏差（回転変動量）ΔＮＥ０を求めるようにしているので、ＮＥロータに製造誤差があったとしても、同一の外歯の認識に基づいて上記演算が実行され、回転変動量ΔＮＥ０がＮＥロータの製造誤差の影響を受けることがなく、この回転変動量ΔＮＥ０を正確に算出できる。
【００６８】
本実施形態の特徴は、上記ロックアップクラッチ５３ｆがロックアップ状態（上記フレックスロックアップ状態も含む）にある場合と非ロックアップ状態（解放状態）にある場合とで、失火判定のための回転変動パターン（失火判定パターン）を互いに異ならせている点にある。つまり、車速Ｖおよびアクセル開度θTHに基づいて設定される係合領域（ロックアップ作動領域）またはスリップ領域（フレックスロックアップ作動領域）にある場合と、解放領域（トルコン作動領域）にある場合とで、失火判定のための回転変動パターンを互いに異ならせている。
【００６９】
より具体的には、ロックアップクラッチ５３ｆの非ロックアップ状態にあっては、エンジン１の回転変動パターンが、非ロックアップ状態での失火発生時に特有の第１の回転変動パターンに沿っているか否かによって失火判定動作を行う一方、ロックアップクラッチ５３ｆのロックアップ状態にあっては、エンジン１の回転変動パターンが、ロックアップ状態での失火発生時に特有の第２の回転変動パターンに沿っているか否かによって失火判定動作を行うようになっている（失火判定手段による失火判定動作）。そして、上記第２の回転変動パターンは、第１の回転変動パターンに比べて回転変動幅が小さく設定されている。つまり、ロックアップクラッチ５３ｆがロックアップ状態にある場合には非ロックアップ状態にある場合に比べて、回転変動幅が小さくても失火が発生していると判定できるように、失火判定条件を緩めている。
【００７０】
−失火発生時の回転変動パターン−
上記判別動作では、上記各回転変動量ΔＮＥ０〜ΔＮＥ３（本判別動作における経時変化パターンの１サイクル）のうち、特に２点火前（判定動作開始タイミングである回転変動量ΔＮＥ０の算出時に膨張行程を迎えている気筒よりも点火タイミングで２点火前の気筒が膨張行程を迎えていた際）の算出量ΔＮＥ２が所定値（閾値）Ｎ１以上になったときに（エンジン１の回転変動量が所定の閾値を超えた場合に膨張行程を迎えていた気筒を失火判定対象気筒として失火判定を行う場合）、各回転変動量ΔＮＥ０〜ΔＮＥ３の関係に基づき、失火の発生の有無を判別する。
【００７１】
なお、上記所定値Ｎ１は、エンジン回転速度ＮＥが速いほど小さな値として例えばマップ演算される。これは、次の理由による。通常、エンジン回転速度ＮＥが速くなると、それに伴って上記各所要時間Ｔ１〜Ｔ４がそれぞれ短い時間として算出される。このため、上記（１）式に基づき算出される回転変動量ΔＮＥも小さな値として算出されるようになる。そこで、所定値Ｎ１をエンジン回転速度ＮＥが速くなるほど小さな値として算出することで、エンジン回転速度ＮＥの変化による影響を極力排除した上で判断することができるようにしている。
【００７２】
また、上記所定値Ｎ１は、吸気管内圧力ＰＭが高いほど大きな値として、同様に、例えばマップ演算される。これは、次の理由による。エンジン１の制御では通常、吸気管内圧力が高くなるほどインジェクタ９から多くの燃料が噴射される。このため、吸気管内圧力ＰＭが高くなるほど、燃焼室４内における混合気の燃焼圧力も高くなって、エンジン１のクランクシャフト１０には大きな駆動力が付与されるようになる。これにより、吸気管内圧力ＰＭが高いときには、同圧力ＰＭが低いときと比較して上記極小側の各所要時間Ｔ２，Ｔ４がそれぞれ更に短い時間として算出されるようになり、上記（１）式に基づき算出される回転変動量ΔＮＥは大きな値として算出されるようになる。そこで、所定値Ｎ１を吸気管内圧力ＰＭが高くなるほど大きな値として算出することで、吸気管内圧力ＰＭの変化による影響を極力排除した上で判断することができるようにしている。
【００７３】
以下、失火判定のための具体的な回転変動パターンについて説明する。
【００７４】
図６は、ロックアップクラッチ５３ｆが非ロックアップ状態にある際に失火が発生した場合における各回転変動量ΔＮＥ０〜ΔＮＥ３の関係である回転変動パターンの一例を示している（第１の回転変動パターン）。つまり、ロックアップクラッチ５３ｆが非ロックアップ状態にある場合には、回転変動パターンが、この図６に示す回転変動パターンに沿っているか否かによって失火の有無（この場合、第３番気筒＃３での失火の有無）を判定することになる。
【００７５】
また、図７の実線は、ロックアップクラッチ５３ｆがロックアップ状態にある際に失火が発生した場合における各回転変動量ΔＮＥ０〜ΔＮＥ３の関係である回転変動パターンの一例を示している（第２の回転変動パターン）。つまり、ロックアップクラッチ５３ｆがロックアップ状態にある場合には、回転変動パターンが、この図７に示す回転変動パターンに沿っているか否かによって失火の有無（この場合も、第３番気筒＃３での失火の有無）を判定することになる。
【００７６】
図６および図７に示されるように、本実施の形態では、第１番気筒を＃１、同様に第２番〜第４番気筒をそれぞれ＃２〜＃４とすると、＃１→＃３→＃４→＃２の順で各気筒における混合気への点火が実行されるようになっている。
【００７７】
そして、ロックアップクラッチ５３ｆが非ロックアップ状態にある際に失火が発生した場合における上記回転変動量ΔＮＥ０〜ΔＮＥ３の変化パターン（経時変化パターン）は以下のような傾向を示す。
【００７８】
すなわち、図６に示すように、例えば２点火前の第３番気筒＃３（失火判定対象気筒）で失火が発生する場合には、この第３番気筒＃３の膨張行程時に算出された回転変動量ΔＮＥ２が、その直前の第１番気筒＃１（本発明でいう１点火前気筒）の膨張行程時に算出された回転変動量ΔＮＥ３および直後の第４番気筒＃４（本発明でいう１点火後気筒）の膨張行程時に算出された回転変動量ΔＮＥ１に比べて特に大きくなる。また、これに加えて、今回の第２番気筒＃２（本発明でいう２点火後気筒）の膨張行程時に算出された回転変動量ΔＮＥ０が、上記回転変動量ΔＮＥ２と、ほぼその絶対値が同じであって、且つ正負が逆の値をとるようになる。
【００７９】
一方、ロックアップクラッチ５３ｆがロックアップ状態にある際に失火が発生した場合における上記回転変動量ΔＮＥ０〜ΔＮＥ３の変化パターン（経時変化パターン）は以下のような傾向を示す。
【００８０】
すなわち、図７に実線で示すように、例えば２点火前の第３番気筒＃３（失火判定対象気筒）で失火が発生する場合には、この第３番気筒＃３の膨張行程時に算出された回転変動量ΔＮＥ２が、その直前の第１番気筒＃１（本発明でいう１点火前気筒）の膨張行程時に算出された回転変動量ΔＮＥ３に比べて特に大きくなる。また、第３番気筒＃３の膨張行程時に算出された回転変動量ΔＮＥ２と、その直後の第４番気筒＃４（本発明でいう１点火後気筒）の膨張行程時に算出された回転変動量ΔＮＥ１とには大きな差は生じない。また、これに加えて、今回の第２番気筒＃２（本発明でいう２点火後気筒）の膨張行程時に算出された回転変動量ΔＮＥ０が、上記回転変動量ΔＮＥ２と、ほぼその絶対値が同じであって、且つ正負が逆の値をとるようになる。
【００８１】
つまり、従来では、上記第３番気筒＃３の膨張行程時に算出された回転変動量ΔＮＥ２と、その直後の第４番気筒＃４の膨張行程時に算出された回転変動量ΔＮＥ１とに大きな差が生じていないことで、失火が発生していないと判定していたが、本実施形態では、ロックアップクラッチ５３ｆがロックアップ状態またはフレックスロックアップ状態にある場合に限って、このような回転変動パターンであっても失火が発生していると判定するようにしている。即ち、この第２の回転変動パターンでは、第３番気筒＃３の膨張行程時に算出された回転変動量ΔＮＥ２と第４番気筒＃４の膨張行程時に算出された回転変動量ΔＮＥ１との変化が、上記第１の回転変動パターンのもの（第１の回転変動パターンにおける第３番気筒＃３の膨張行程時に算出された回転変動量ΔＮＥ２と第４番気筒＃４の膨張行程時に算出された回転変動量ΔＮＥ１との変化）に比べて小さいものとして規定されている。
【００８２】
本実施形態の失火判定装置では、このように回転変動量ΔＮＥ０〜ΔＮＥ３の変化パターンがロックアップ状態における失火発生時と非ロックアップ状態における失火発生時とで異なることに着目し、それらを判別すべく、以下の各条件がエンジン制御装置４０内のＲＯＭに予め記憶されている。
【００８３】
（ａ）ΔＮＥ２×Ａ＜｜ΔＮＥ０｜、且つ
（ｂ）ΔＮＥ２×Ｂ≧ΔＮＥ３、且つ
（ｃ）ΔＮＥ２×Ｃ≧ΔＮＥ１
これら（ａ）〜（ｃ）の論理積が満たされることを条件として、回転変動量がΔＮＥ２である気筒（第３番気筒＃３）で失火が発生していると判断されることになる。
【００８４】
ここで、上記各値Ａ，Ｂ，Ｃは、それぞれ「１」未満の正の定数として設定されており、これら値は、ロックアップクラッチ５３ｆがロックアップ状態またはフレックスロックアップ状態にある場合を対象とする値と、非ロックアップ状態にある場合を対象とする値とで異なったもとのとして規定されている。例えば、各値Ａ，Ｂ，Ｃは、非ロックアップ状態にある場合を対象とする値（第１の回転変動パターンでの値）よりもロックアップクラッチ５３ｆがロックアップ状態またはフレックスロックアップ状態にある場合を対象とする値（第２の回転変動パターンでの値）の方が小さく設定されている。
【００８５】
このようにして各値Ａ，Ｂ，Ｃを、ロックアップクラッチ５３ｆがロックアップ状態またはフレックスロックアップ状態にある場合と非ロックアップ状態にある場合とで異ならせることで、上記第１の回転変動パターンおよび第２の回転変動パターンを作り出し、非ロックアップ状態にある場合に上記第１の回転変動パターンに沿っているか、また、ロックアップ状態にある場合に上記第２の回転変動パターンに沿っているかによって失火の発生の有無を判定するようにしている。
【００８６】
また、これら定数Ａ〜Ｃは、エンジン回転速度ＮＥに基づき算出される。具体的には、上記各所定値Ａ〜Ｃは、エンジン回転速度ＮＥが速くなるほど小さな値として算出される。これは、次の理由による。
【００８７】
上述したように、エンジン回転速度ＮＥが速くなると、それに伴って各回転変動量ΔＮＥ０〜ΔＮＥ３は小さな値として算出されるようになる。そこで、上記各所定値Ａ〜Ｃをエンジン回転速度ＮＥが速いときほど小さな値として算出することで、これら回転変動量ΔＮＥ０〜ΔＮＥ３の変化パターンと、上記各失火パターンとを、エンジン回転速度ＮＥの変化による影響を極力排除した上で比較することができるようにしている。
【００８８】
そして、上記（ａ）〜（ｃ）の論理積条件が満たされているときには、回転変動量ΔＮＥ０〜ΔＮＥ３の変化パターンが失火パターンになっており、回転変動量ΔＮＥ２が大きくなった原因は失火発生の可能性があるとして「失火可能性有り」と判定される。
【００８９】
更に、本実施形態に係る失火判定装置では、失火発生の検出頻度に基づいて、排気エミッションの悪化や触媒１２の劣化を招く頻度で失火が発生しているか否かの判定が行われる。具体的には、失火発生の検出頻度が高い場合には、排気エミッションの悪化や触媒１２の劣化等を招くおそれのある頻度で失火が発生しているとして、失火異常と判定される。
【００９０】
以下、本実施形態における失火判定処理の手順について、図８および図９のフローチャートを参照して説明する。この図８および図９に示す制御ルーチンは、上記エンジン制御装置４０において、例えばクランクシャフト１０の１８０°ＣＡ回転毎（４気筒の場合）に繰り返して実行される。
【００９１】
この図８および図９に示すように、この処理では、先ず、失火を判定（失火検出）するための前提条件が成立しているか否かが判断される（ステップＳＴ１）。この判断では、上記前提条件に基づく判断を通じて、失火発生以外の要因でエンジン回転速度ＮＥが大きく変動するおそれがなく、この失火発生に伴うエンジン回転速度ＮＥの変動を精度よく検出することができる条件下であるか否かが判断される。なお、上記前提条件としては例えば、エアーコンディショナの作動／非作動が切り換えられてから所定時間が経過していることや、シフトレバーが操作されてから所定時間が経過していること等がある。
【００９２】
そして、上記前提条件が成立していないと判断（ステップＳＴ１でＮＯ判定）された場合には、エンジン１が現在、失火発生に伴うエンジン回転速度ＮＥの変動を精度よく判定することのできない条件下にあるとして、本処理が一旦終了される。
【００９３】
一方、上記前提条件が成立していると判断（ステップＳＴ１でＹＥＳ判定）された場合には、検出カウンタ（１０００ｒｅｖカウンタ）のカウント値がインクリメントされる（ステップＳＴ２）。このカウント値は、後述する失火異常の判定に際し失火発生の検出頻度の算出基準となる総判定回数として用いられる。
【００９４】
その後、エンジン回転速度ＮＥおよび吸気管内圧力ＰＭに基づいて上記閾値Ｎ１がマップ演算され、上述した態様で算出される回転変動量ΔＮＥがこの閾値Ｎ１よりも大きいか否かが判断される（ステップＳＴ３）。なお、上記マップ演算に用いられるマップは、エンジン回転速度ＮＥおよび吸気管内圧力ＰＭから所定値Ｎ１を算出するためのマップであり、これらエンジン回転速度ＮＥ、吸気管内圧力ＰＭおよび所定値Ｎ１の関係が実験等によって求められた上で設定されている。また、このマップも予めエンジン制御装置４０内の適宜のメモリに記憶されている。
【００９５】
そして、回転変動量ΔＮＥが所定値Ｎ１よりも大きいと判断（ステップＳＴ３でＹＥＳ判定）された場合には、ステップＳＴ４に移り、この回転変動量ΔＮＥが所定値Ｎ１よりも大きいと判断されたことで失火が発生している可能性があると判定された気筒に対し、その気筒では、失火が発生していた履歴が存在しているか否かを判定する。つまり、その気筒に対し、過去の燃焼行程においても回転変動量ΔＮＥが所定値Ｎ１を超えていた履歴が存在しているか否かを判定する。そして、失火が発生していた履歴が存在しておらず、ステップＳＴ４でＮＯ判定された場合にはステップＳＴ１０に移る一方、失火が発生していた履歴が存在しており、ステップＳＴ４でＹＥＳ判定された場合にはステップＳＴ５に移る。
【００９６】
ステップＳＴ５では、現在の自動変速機５０のシフト（変速段）は、予め設定された特定の変速段であるか否かを判定する。この特定の変速段とは、上記ロックアップクラッチ５３ｆがロックアップ状態にある場合において、エンジン１と自動変速機５０との共振現象が発生する可能性のある変速段をいう。つまり、現在、上記共振現象が発生する可能性のある変速段で走行しているか否かを判定している。エンジン１と自動変速機５０との共振現象は、自動変速機５０がある特定の変速段にあって、且つある特定のエンジン回転数にある際（例えば、変速段が第２速でエンジン回転数が４０００ｒｐｍの場合や、変速段が第３速でエンジン回転数が３５００ｒｐｍの場合など）に失火が発生した場合に生じる。そして、この共振現象が生じる変速段は、エンジン１や自動変速機５０の固有振動数などによって異なる。つまり、車種によって上記共振現象の発生する変速段は異なっている。このため、ここで設定される特定の変速段とは、実験などによって予め求められてＲＯＭに記憶されている。
【００９７】
現在の自動変速機５０の変速段が上記特定の変速段でなく、ステップＳＴ５でＮＯ判定された場合にはステップＳＴ１０に移る一方、現在の自動変速機５０の変速段が上記特定の変速段である場合にはステップＳＴ６に移る。
【００９８】
ステップＳＴ６では、ロックアップクラッチ５３ｆがフレックスロックアップ状態であるか否かを判定する。具体的には、フレックスロックアップフラグが「１」となっているか否かを判定する。フレックスロックアップ状態ではなくステップＳＴ６でＮＯ判定された場合にはステップＳＴ７に移る一方、フレックスロックアップ状態でありステップＳＴ６でＹＥＳ判定された場合にはステップＳＴ８に移る。
【００９９】
ステップＳＴ７では、ロックアップクラッチ５３ｆがロックアップ状態であるか否かを判定する。具体的には、ロックアップフラグが「１」となっているか否かを判定する。ロックアップ状態ではなくステップＳＴ７でＮＯ判定された場合にはステップＳＴ１０に移る一方、ロックアップ状態でありステップＳＴ７でＹＥＳ判定された場合にはステップＳＴ８に移る。
【０１００】
ステップＳＴ８では、自動変速機５０のタービン回転数とエンジン回転数との差が、所定の判定値以下であるか否かを判定する。つまり、各回転数に基づいて、上記フレックスロックアップ状態またはロックアップ状態が成立していることを確認する。このステップＳＴ８でＹｅｓ判定された場合にはステップＳＴ９に移る一方、ＮＯ判定された場合にはステップＳＴ１０に移る。
【０１０１】
ステップＳＴ９では、ロックアップクラッチ５３ｆがフレックスロックアップ状態またはロックアップ状態にある場合に使用する上記第２の回転変動パターンに基づいて失火判定を行う。具体的には、図７に示した第２の回転変動パターンに沿うような回転変動パターンとなっているか否かを判定し、エンジン１の回転変動パターンが第２の回転変動パターンに沿っている場合には、ステップＳＴ９でＹｅｓ判定されてステップＳＴ１１に移る。
【０１０２】
一方、ステップＳＴ４、ＳＴ５、ＳＴ７、ＳＴ８のうちの何れかでＮＯ判定された場合には、ロックアップクラッチ５３ｆはロックアップ状態ではなく且つフレックスロックアップ状態でもないとして、ステップＳＴ１０に移る。
【０１０３】
このステップＳＴ１０では、ロックアップクラッチ５３ｆがフレックスロックアップ状態およびロックアップ状態の何れにもない非ロックアップ状態にある場合に使用する上記第１の回転変動パターンに基づいて失火判定を行う。具体的には、図６に示した第１の回転変動パターンに沿うような回転変動パターンとなっているか否かを判定し、エンジン１の回転変動パターンが第１の回転変動パターンに沿っている場合には、ステップＳＴ１０でＹｅｓ判定されてステップＳＴ１１に移る。
【０１０４】
以上のようにしてステップＳＴ９またはステップＳＴ１０において失火が発生していると判定された場合には、ステップＳＴ１１において失火カウンタのカウント値をインクリメントし、その後にステップＳＴ１２に移ることになる。また、回転変動量ΔＮＥが閾値Ｎ１以下であると判断（ステップＳＴ３でＮＯ判定）された場合、あるいは回転変動量ΔＮＥが閾値Ｎ１を超えていても上記の何れのパターン（第１の回転変動パターンおよび第２の回転変動パターン）にも属さないと判断（ステップＳＴ９またはステップＳＴ１０でＮＯ判定）された場合には、上記失火カウンタのカウント操作を行うことなく、ステップＳＴ１２以降の処理にジャンプする。
【０１０５】
そして、このステップＳＴ１２以降の処理では、先ず、検出カウンタ（１０００ｒｅｖカウンタ）のカウント値が所定の条件成立カウント値（例えば１０００）以上であるか否かが判断される（ステップＳＴ１２）。この判断では、総検出回数が失火発生の検出頻度を判定する基準回数（例えばクランクシャフト１０の１０００回転相当）に達したか否かが判断される。
【０１０６】
そして、総検出回数が基準回数に達したと判断（ステップＳＴ１２でＹＥＳ判定）された場合には、次に失火カウンタのカウント値が所定の異常回数（例えば３０）以上であるか否かが判断される（ステップＳＴ１３）。すなわちこの判断では、総検出回数中に所定回数以上の頻度で失火発生が検出されたか否かが判断される。
【０１０７】
そして、失火カウンタのカウント値が所定値（異常回数値）以上であると判断（ステップＳＴ１３でＹＥＳ判定）された場合には、排気エミッションの悪化や触媒１２の劣化等を招くおそれのある頻度で失火が発生しているとして、失火異常と判定される（ステップＳＴ１４）。この場合には、例えば、この異常判定を異常履歴として記憶したり、異常ランプ（ＭＩＬ）を点灯させたりする。そして、その後、上記各カウンタのカウント値を「０」にリセットした後（ステップＳＴ１５）、リターンされる。
【０１０８】
一方、検出カウンタのカウント値が所定値未満であると判断（ステップＳＴ１２でＮＯ判定）された場合には、総検出回数が上記基準回数に達していないとして、リターンされる。
【０１０９】
また、検出カウンタ（１０００ｒｅｖカウンタ）のカウント値が所定値に達した際の失火カウンタのカウント値が所定値（異常回数値）未満であると判断（ステップＳＴ１３でＮＯ判定）された場合には、失火発生の検出頻度がさほど高くないとして、この場合にも各カウント値が「０」にリセットされた後（ステップＳＴ１５）、リターンされる。
【０１１０】
以上説明したように、本実施の形態によれば、以下に記載する効果が得られる。
【０１１１】
回転変動量ΔＮＥ０〜ΔＮＥ３の変化パターンとして、ロックアップクラッチ５３ｆが非ロックアップ状態である場合の失火判定パターンとしての第１の回転変動パターン（非ロックアップ状態での失火発生時に特有の回転変動パターン）と、ロックアップクラッチ５３ｆがロックアップ状態である場合の失火判定パターンとしての第２の回転変動パターン（ロックアップ状態での失火発生時に特有の回転変動パターン）とに基づいて失火判定動作を行うようにしている。そして、この第２の回転変動パターンは、第１の回転変動パターンに比べて回転変動幅が小さいものとして設定され、失火判定条件を緩めるようなパターンとなっている。このため、ロックアップクラッチ５３ｆのロックアップ状態において、エンジン１と自動変速機５０との共振が発生している場合に、従来であれば、この共振の影響によって回転変動が小さくなっているために、失火が発生していてもそれを検出することができない可能性が高かったが、本実施形態の失火判定動作によれば、特定の回転変動パターン（上記第２の回転変動パターン）を使用することによって失火の発生を検出することが可能になる。このように、上記共振現象の悪影響を受けることなく失火が発生していることが正確に判定され、失火判定の信頼性を高めることができる。
【０１１２】
（第２の回転変動パターンの変形例）
上述した実施形態では、第２の回転変動パターンを以下のように規定していた。つまり、失火判定対象気筒である第３番気筒＃３の膨張行程時に算出された回転変動量ΔＮＥ２が、その直前の第１番気筒＃１の膨張行程時に算出された回転変動量ΔＮＥ３に比べて特に大きく、また、第３番気筒＃３の膨張行程時に算出された回転変動量ΔＮＥ２と、その直後の第４番気筒＃４の膨張行程時に算出された回転変動量ΔＮＥ１とには大きな差は生じないものとして規定していた。これに限らず、以下のように規定してもよい。
【０１１３】
つまり、図７に一点鎖線で示すように、第３番気筒＃３（失火判定対象気筒）で失火が発生する場合に、この第３番気筒＃３の膨張行程時に算出された回転変動量ΔＮＥ２が、その直後の第４番気筒＃４（本発明でいう１点火後気筒）の膨張行程時に算出された回転変動量ΔＮＥ１に比べて特に大きく、また、第３番気筒＃３の膨張行程時に算出された回転変動量ΔＮＥ２と、その直前の第１番気筒＃１（本発明でいう１点火前気筒）の膨張行程時に算出された回転変動量ΔＮＥ３とには大きな差は生じず、更に、今回の第２番気筒＃２（本発明でいう２点火後気筒）の膨張行程時に算出された回転変動量ΔＮＥ０が、上記回転変動量ΔＮＥ２と、ほぼその絶対値が同じであって且つ正負が逆の値をとるようなパターンとして第２の回転変動パターンを規定するものである。
【０１１４】
尚、上記実施形態における第２の回転変動パターンと、本変形例における第２の回転変動パターンとの両方を、ロックアップ状態において失火が発生している回転変動パターンとして規定するようにしてもよい。この場合、上記条件式（ａ）〜（ｃ）において、ロックアップクラッチ５３ｆがロックアップ状態またはフレックスロックアップ状態にある場合を対象とする値（第２の回転変動パターンでの値）Ａ，Ｂ，Ｃとしては、図７に実線で示す第２の回転変動パターンに対応する値と、図７に一点鎖線で示す第２の回転変動パターンに対応する値との２種類を備えることになる。
【０１１５】
また、第２の回転変動パターンを以下に述べるパターンとして規定してもよい。
【０１１６】
つまり、図７に二点鎖線で示すように、第３番気筒＃３（失火判定対象気筒）で失火が発生する場合に、この第３番気筒＃３の膨張行程時に算出された回転変動量ΔＮＥ２が、その直後の第４番気筒＃４（本発明でいう１点火後気筒）の膨張行程時に算出された回転変動量ΔＮＥ１に比べて特に大きく、また、第３番気筒＃３の直前の第１番気筒＃１（本発明でいう１点火前気筒）の膨張行程時に算出された回転変動量ΔＮＥ３が、第３番気筒＃３の膨張行程時に算出された回転変動量ΔＮＥ２に比べて特に大きく、更に、今回の第２番気筒＃２（本発明でいう２点火後気筒）の膨張行程時に算出された回転変動量ΔＮＥ０が、上記回転変動量ΔＮＥ２と、ほぼその絶対値が同じであって且つ正負が逆の値をとるようなパターンとして第２の回転変動パターンを規定するものである。つまり、以下の条件式が成立するものである。
【０１１７】
（ｇ）ΔＮＥ３＞ΔＮＥ２、且つ
（ｈ）ΔＮＥ１＜ΔＮＥ２、且つ
（ｉ）｜ΔＮＥ０｜≒ΔＮＥ２
更には、第２の回転変動パターンを以下に述べるパターンとして規定してもよい。
【０１１８】
つまり、図７に破線で示すように、第３番気筒＃３（失火判定対象気筒）で失火が発生する場合に、この第３番気筒＃３の膨張行程時に算出された回転変動量ΔＮＥ２が、その直前の第１番気筒＃１（本発明でいう１点火前気筒）の膨張行程時に算出された回転変動量ΔＮＥ３に比べて特に大きく、また、第３番気筒＃３の直後の第４番気筒＃４（本発明でいう１点火後気筒）の膨張行程時に算出された回転変動量ΔＮＥ１が、第３番気筒＃３の膨張行程時に算出された回転変動量ΔＮＥ２に比べて特に大きく、更に、今回の第２番気筒＃２（本発明でいう２点火後気筒）の膨張行程時に算出された回転変動量ΔＮＥ０が、上記回転変動量ΔＮＥ２と、ほぼその絶対値が同じであって且つ正負が逆の値をとるようなパターンとして第２の回転変動パターンを規定するものである。つまり、以下の条件式が成立するものである。
【０１１９】
（ｊ）ΔＮＥ３＜ΔＮＥ２、且つ
（ｋ）ΔＮＥ１＞ΔＮＥ２、且つ
（ｌ）｜ΔＮＥ０｜≒ΔＮＥ２
（悪路走行を判別する変形例）
上述した実施形態では、ロックアップクラッチ５３ｆが非ロックアップ状態にある場合の失火判定とロックアップ状態にある場合の失火判定とを実施するようにしていた。本変形例では、それに加えて、ロックアップクラッチ５３ｆがロックアップ状態にある場合に、失火が発生している状況と悪路を走行している状況とを識別可能とするものである。以下、具体的に説明する。
【０１２０】
上記ロックアップクラッチ５３ｆがロックアップ状態にある際、車両が悪路を走行する場合、路面の凹凸などの影響によってエンジン回転速度が急激に変動し、失火が発生していないにも拘わらず回転変動が大きくなり、上記閾値Ｎ１を越えてしまって失火の誤判定がなされてしまう可能性がある。このため、回転変動が閾値Ｎ１を越えた原因が失火によるものであるか、悪路走行によるものであるのかを識別し、失火によるものである場合にのみ失火カウンタをインクリメントさせる必要がある。
【０１２１】
本変形例は、ロックアップクラッチ５３ｆがロックアップ状態にある際にエンジン１の回転変動量が大きくなった場合、その原因が、失火発生によるものであるのか、悪路走行によるものであるのかを判別するようにしている。この判別によって、失火の誤判定による失火カウンタのインクリメントを回避できる。
【０１２２】
この判別動作では、上記各回転変動量ΔＮＥ０〜ΔＮＥ３（判別動作における経時変化パターンの１サイクル）のうち、特に２点火前（判定動作開始タイミングである回転変動量ΔＮＥ０の算出時に膨張行程を迎えている気筒よりも点火タイミングで２点火前の気筒が膨張行程を迎えていた際）の算出量ΔＮＥ２が所定値（閾値）Ｎ１以上になったときに、各回転変動量ΔＮＥ０〜ΔＮＥ３の関係に基づき、これが失火異常による可能性があるものか、悪路走行によるものかを判別する。
【０１２３】
なお、本実施形態においても、上記所定値Ｎ１は、エンジン回転速度ＮＥが速いほど小さな値として例えばマップ演算される。その理由は上記実施形態の場合と同様である。また、上記所定値Ｎ１は、吸気管内圧力ＰＭが高いほど大きな値として例えばマップ演算される。その理由も上記実施形態の場合と同様である。
【０１２４】
上述した如く、ロックアップクラッチ５３ｆがロックアップ状態にある際に失火が発生した場合には、図７に示すように、例えば２点火前の第３番気筒＃３（失火判定対象気筒）で失火が発生する場合には、この第３番気筒＃３の膨張行程時に算出された回転変動量ΔＮＥ２が、その直前の第１番気筒＃１（本発明でいう１点火前気筒）の膨張行程時に算出された回転変動量ΔＮＥ３に比べて特に大きくなる。また、第３番気筒＃３の膨張行程時に算出された回転変動量ΔＮＥ２と、その直後の第４番気筒＃４（本発明でいう１点火後気筒）の膨張行程時に算出された回転変動量ΔＮＥ１とには大きな差は生じない。また、これに加えて、今回の第２番気筒＃２（本発明でいう２点火後気筒）の膨張行程時に算出された回転変動量ΔＮＥ０が、上記回転変動量ΔＮＥ２と、ほぼその絶対値が同じであって、且つ正負が逆の値をとるようになる。
【０１２５】
一方、悪路走行時には、回転変動量の大きい状態が比較的長く続く。すなわち、図１０に悪路走行時における各回転変動量ΔＮＥ０〜ΔＮＥ３の関係の一例を示すように、悪路走行時には、２点火前の第３番気筒＃３の膨張行程時に算出された回転変動量ΔＮＥ２が、その直前の第１番気筒＃１の膨張行程時に算出されたΔＮＥ３および直後の第４番気筒＃４の膨張行程時に算出された回転変動量ΔＮＥ１と比べて、値の大きい側に大きく突出した値をとることはない。また、今回の第２番気筒＃２の膨張行程時に算出された回転変動量ΔＮＥ０が、失火発生時のように回転変動量ΔＮＥ２と高い相関（絶対値が略同じであって正負が逆の値をとるといった関係）をもつこともない。
【０１２６】
また、悪路パターンとしては、図１０に示すものに限らず、第３番気筒＃３の膨張行程時に算出された回転変動量ΔＮＥ２が閾値Ｎ１を越えた場合において、その直後の第４番気筒＃４の膨張行程時に算出された回転変動量ΔＮＥ１が上記回転変動量ΔＮＥ２を超えていることを検出した場合に悪路走行であると判定するようにしてもよい。
【０１２７】
本例の失火判定装置では、このように回転変動量ΔＮＥ０〜ΔＮＥ３の変化パターンがロックアップ状態での失火発生時と悪路走行時とで異なることに着目し、それらを判別すべく、以下の各条件がエンジン制御装置４０内のＲＯＭに予め記憶されている。
【０１２８】
すなわち、回転変動量ΔＮＥ０〜ΔＮＥ３の変化パターンが失火発生の可能性がある時における変化パターンとなっていることを判断するための条件（失火パターン）として、以下の条件
（ａ）ΔＮＥ２×Ａ＜｜ΔＮＥ０｜、且つ
（ｂ）ΔＮＥ２×Ｂ≧ΔＮＥ３、且つ
（ｃ）ΔＮＥ２×Ｃ≧ΔＮＥ１
が予め定められている。これら（ａ）〜（ｃ）の論理積が満たされることを条件として、回転変動量ΔＮＥ２が特に大きくなったことの判断が可能になる。
【０１２９】
また、回転変動量ΔＮＥ０〜ΔＮＥ３の変化パターンが悪路走行時における変化パターンとなっていることを判断するための条件（悪路パターン）として、以下の条件
（ｄ）−（ΔＮＥ２×Ｄ）＞ΔＮＥ０、または
（ｅ）ΔＮＥ２×Ｅ≦ΔＮＥ３、または
（ｆ）ΔＮＥ２×Ｆ≦ΔＮＥ１
も予め定められている。これら（ｄ）〜（ｆ）の論理和が満たされることを条件として、回転変動量の多い状態が比較的長く続いていることの判断が可能になる。
【０１３０】
ここで、上記各値Ａ，Ｂ，Ｃ，Ｄ，Ｅ，Ｆは、それぞれ「１」未満の正の定数として設定され、それらの関係がそれぞれ、Ａ＞Ｄ、Ｂ＜Ｅ、Ｃ＜Ｆとなるように定められている。尚、ロックアップ状態における失火判定のための上記条件（ａ）〜（ｃ）における各値Ａ，Ｂ，Ｃは、上述した実施形態における第２の回転変動パターンに対応するものと同一である。
【０１３１】
また、これら定数Ａ〜Ｆは、エンジン回転速度ＮＥに基づき算出される。具体的には、上記各所定値Ａ〜Ｆは、エンジン回転速度ＮＥが速くなるほど小さな値として算出される。これは、次の理由による。
【０１３２】
上述したように、エンジン回転速度ＮＥが速くなると、それに伴って各回転変動量ΔＮＥ０〜ΔＮＥ３は小さな値として算出されるようになる。そこで、上記各所定値Ａ〜Ｆをエンジン回転速度ＮＥが速いときほど小さな値として算出することで、これら回転変動量ΔＮＥ０〜ΔＮＥ３の変化パターンと、上記失火パターンおよび悪路パターンとを、エンジン回転速度ＮＥの変化による影響を極力排除した上で比較することができるようにしている。
【０１３３】
そして、上記（ａ）〜（ｃ）の論理積条件が満たされているときには、回転変動量ΔＮＥ０〜ΔＮＥ３の変化パターンが失火パターン（ロックアップ状態において失火が発生しているパターン）になっており、回転変動量ΔＮＥ２が大きくなった原因は失火発生の可能性があるとして「失火可能性有り」と判定される。
【０１３４】
一方、上記（ｄ）〜（ｆ）の論理和条件が満たされているときには、回転変動量ΔＮＥ０〜ΔＮＥ３の変化パターンが悪路パターンとなっており、回転変動量ΔＮＥ２が大きくなったのは悪路走行が原因であるとして「悪路走行」が判定される。
【０１３５】
このように、本例に係る失火判定処理によれば、予め記憶されている失火発生パターン（ロックアップ状態における失火発生パターン）、悪路走行パターンに基づくパターン判定を通じて、エンジン１の回転変動が大きくなった原因が失火発生によるものか、悪路走行によるものかが精度よく判別されるようになる。そして、回転変動量ΔＮＥが所定値Ｎ１を超えた原因がエンジン１の失火によるものであると判定された場合に限り、後述する失火カウンタがインクリメントされることになる。これにより、非ロックアップ状態での失火発生の検出およびロックアップ状態での失火発生の検出と、悪路走行に伴う回転変動量の増大とを正確に識別することが可能になる。
【０１３６】
−他の実施形態−
上記実施の形態は、以下のように変更して実施してもよい。
・上記実施形態および変形例では、本発明を自動車用４気筒ガソリンエンジンに適用した場合について説明したが、本発明は、これに限るものではなく、種々のエンジンに対して適用できる。
・上記実施形態および変形例では、所定値Ｎ１をエンジン回転速度ＮＥおよび吸気管内圧力ＰＭに基づき算出するようにしたが、これに限られない。例えば、この所定値Ｎ１を、エンジン回転速度ＮＥおよび吸気管内圧力ＰＭの何れか一方に基づき算出したり、あるいは他のパラメータに基づき算出してもよい。また、吸気管内圧力ＰＭに代えて吸入空気量を検出するシステムにあっては、この吸入空気量を代用しても勿論よい。他方、所定値Ｎ１を一定の値として設定するようにしてもよい。要は、失火の発生に伴う回転変動量ΔＮＥの変化を好適に監視できるのであれば、所定値Ｎ１をどのように算出、若しくは設定してもよい。
・上記実施形態および変形例では、各定数Ａ〜Ｆをエンジン回転速度ＮＥに基づき算出するようにしたが、これに限らず、例えば各定数Ａ〜Ｆを吸気管内圧力ＰＭや吸入空気量に基づいて算出したり、あるいは他のパラメータに基づき算出したりするようにしてもよい。また、各定数Ａ〜Ｆを一定の値として設定するようにしてもよい。要は、失火パターン、悪路パターンを好適なパターンとして設定できるのであれば、定数Ａ〜Ｆをどのように算出、若しくは設定するようにしてもよい。
・上記実施形態では、検出カウンタ（１０００ｒｅｖカウンタ）によって総検出回数を、失火カウンタによって失火発生の検出回数をそれぞれカウントすることで、失火発生の検出頻度を求めるようにしたが、これら頻度の求め方も任意である。
・上記実施形態では、回転変動量を上記（１）式から算出するようにしたが、これに限られない。要は、失火発生に伴うエンジン回転速度の変動を把握することが可能な態様であれば、回転変動量の算出態様を適宜変更してもよい。
・上記実施形態では、クランク角度の位相が３６０°離れた気筒における経過時間の偏差ΔＮＥを求めるようにしていたが、この偏差ΔＮＥを求めるために対比される気筒はこれに限るものではない。また、上記偏差ΔＮＥの演算に用いる経過時間Ｔ１〜Ｔ４を求めるためのクランクシャフト１０の回転角度も３０°に限らず任意の角度が設定可能である。
【図面の簡単な説明】
【０１３７】
【図１】実施形態に係る失火判定装置が適用されるエンジンおよびその周辺装置の概略構成を示す図である。
【図２】実施形態に係る車両のパワートレーンを示す概略構成図である。
【図３】トルクコンバータの概略構成を模式的に示す自動変速機の概略構成図である。
【図４】エンジン制御装置およびトランスミッション制御装置を含む制御ブロックを示す概略構成図である。
【図５】ロックアップクラッチの制御に用いるロックアップクラッチ作動マップを示す図である。
【図６】非ロックアップ状態で使用される第１の回転変動パターンの一例を示す図である。
【図７】ロックアップ状態およびフレックスロックアップ状態で使用される第２の回転変動パターンの一例を示す図である。
【図８】失火判定処理動作の手順の一部を示すフローチャート図である。
【図９】失火判定処理動作の手順の他の一部を示すフローチャート図である。
【図１０】悪路走行時における回転変動量の変化パターンの一例を示す図である。
【符号の説明】
【０１３８】
１        エンジン（内燃機関）
５０      自動変速機
５３      トルクコンバータ（流体式動力伝達装置）
５３ｆ    ロックアップクラッチ
５４      変速機構部
Ｎ１      閾値
♯１      第１気筒（１点火前気筒）
♯２      第２気筒（２点火後気筒）
♯３      第３気筒（失火判定対象気筒）
♯４      第４気筒（１点火後気筒）
【図１】
2010019198.tif 000003
【図２】
2010019198.tif 000004
【図３】
2010019198.tif 000005
【図４】
2010019198.tif 000006
【図５】
2010019198.tif 000007
【図６】
2010019198.tif 000008
【図７】
2010019198.tif 000009
【図８】
2010019198.tif 000010
【図９】
2010019198.tif 000011
【図１０】
2010019198.tif 000012