(57)【要約】      （修正有）【課題】異常気筒特定時におけるエミッションの悪化等を防止する。【解決手段】多気筒内燃機関の複数の気筒に対し、触媒と、触媒温度を検出する温度センサと、触媒前後の空燃比センサである触媒前センサおよび触媒後センサとを設ける。温度センサの検出値に基づき、複数の気筒における気筒間空燃比ばらつき異常を検出したとき、異常気筒を特定する。異常気筒特定時、触媒前後センサの出力に基づく主・補助空燃比制御を複数の気筒に対して実行する。触媒後センサ出力に基づく補助空燃比制御量ΔＶｒｇの収束値に基づき異常気筒を特定する。【選択図】図１４
2012117464.tif 000002
【特許請求の範囲】
【請求項１】
多気筒内燃機関の複数の気筒に対して設けられた触媒と、
前記触媒の温度を検出する触媒温度検出手段と、
前記触媒温度の検出値に基づき、前記複数の気筒における気筒間空燃比ばらつき異常を検出する異常検出手段と、
前記ばらつき異常が検出されたとき、異常気筒を特定する特定手段と、
を備え、
前記特定手段が、
前記触媒の上流側に設けられた空燃比センサとしての触媒前センサと、
前記触媒の下流側に設けられた空燃比センサとしての触媒後センサと、
前記触媒前センサの出力に基づく主空燃比制御と、前記触媒後センサの出力に基づく補助空燃比制御とを、前記複数の気筒に対して実行する空燃比制御手段と、
前記触媒後センサの出力に基づき前記補助空燃比制御のための制御量を算出する制御量算出手段と、
前記制御量の収束値に基づき異常気筒を特定する異常気筒特定手段と、
を備えることを特徴とする気筒間空燃比ばらつき異常検出装置。
【請求項２】
前記制御量が、触媒後センサ学習値と補助空燃比補正量のいずれか一方からなる
ことを特徴とする請求項１に記載の気筒間空燃比ばらつき異常検出装置。
【請求項３】
多気筒内燃機関の複数の気筒に対して設けられた触媒と、
前記触媒の温度を検出する触媒温度検出手段と、
前記触媒温度の検出値に基づき、前記複数の気筒における気筒間空燃比ばらつき異常を検出する異常検出手段と、
前記ばらつき異常が検出されたとき、異常気筒を特定する特定手段と、
を備え、
前記特定手段が、
前記触媒の上流側に設けられた空燃比センサとしての触媒前センサと、
前記触媒前センサの出力変動の度合いに基づいて異常気筒を特定する異常気筒特定手段と、
を備えることを特徴とする気筒間空燃比ばらつき異常検出装置。
【請求項４】
前記異常気筒特定手段は、触媒前センサ出力の変動度合いに相関する空燃比変動パラメータの値に基づき異常気筒を特定し、
前記空燃比変動パラメータは、異なる二つのタイミングにおける前記空燃比センサ出力の差に基づく値である
ことを特徴とする請求項３に記載の気筒間空燃比ばらつき異常検出装置。
【請求項５】
前記異常検出手段が、前記内燃機関の冷間始動時から所定時間経過した時点での前記触媒温度の検出値に基づき、気筒間空燃比ばらつき異常を検出する
ことを特徴とする請求項１〜４のいずれか一項に記載の気筒間空燃比ばらつき異常検出装置。
【請求項６】
前記複数の気筒が、不等間爆発を起こすような複数の気筒からなる
ことを特徴とする請求項１〜５のいずれか一項に記載の気筒間空燃比ばらつき異常検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、多気筒内燃機関の気筒間空燃比のばらつき異常を検出するための装置に係り、特に、多気筒内燃機関において気筒間の空燃比が比較的大きくばらついていることを検出する装置に関する。
【背景技術】
【０００２】
一般に、触媒を利用した排気浄化システムを備える内燃機関では、排気中有害成分の触媒による浄化を高効率で行うため、内燃機関で燃焼される混合気の空気と燃料との混合割合、すなわち空燃比のコントロールが欠かせない。こうした空燃比の制御を行うため、内燃機関の排気通路に空燃比センサを設け、これによって検出された空燃比を所定の目標空燃比に一致させるようフィードバック制御を実施している。
【０００３】
一方、多気筒内燃機関においては、通常全気筒に対し同一の制御量を用いて空燃比制御を行うため、空燃比制御を実行したとしても実際の空燃比が気筒間でばらつくことがある。このときばらつきの程度が小さければ、空燃比フィードバック制御で吸収可能であり、また触媒でも排気中有害成分を浄化処理可能なので、排気エミッションに影響を与えず、特に問題とならない。
【０００４】
しかし、例えば一部の気筒の燃料噴射系が故障するなどして、気筒間の空燃比が大きくばらつくと、排気エミッションを悪化させてしまい、問題となる。このような排気エミッションを悪化させる程の大きな空燃比ばらつきは異常として検出するのが望ましい。特に自動車用内燃機関の場合、排気エミッションが悪化した車両の走行を未然に防止するため、気筒間空燃比ばらつき異常を車載状態（オンボード）で検出することが要請されており、最近ではこれを法規制化する動きもある。
【０００５】
例えば特許文献１に記載の装置では、触媒の前後に設置された空燃比センサの出力乖離に基づき、気筒間空燃比ばらつき異常を検出するようにしている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−３０４５５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところで、気筒間空燃比ばらつき異常が検出された場合、そのばらつき異常の原因となっている気筒（異常気筒）を特定するのが好ましい。異常気筒を特定できれば後の修理（例えばインジェクタの交換等）を迅速、的確に行えるからである。
【０００８】
異常気筒特定については、気筒毎に燃料噴射量を強制的に増量または減量したときの触媒温度の変化に基づき異常気筒を特定する方法がある。
【０００９】
しかし、このような強制増量または減量を行う方法は、エミッションを悪化させるなどの問題がある。
【００１０】
そこで本発明は、異常気筒特定時にエミッションの悪化等を防止することができる気筒間空燃比ばらつき異常検出装置を提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明の一の態様によれば、
多気筒内燃機関の複数の気筒に対して設けられた触媒と、
前記触媒の温度を検出する触媒温度検出手段と、
前記触媒温度の検出値に基づき、前記複数の気筒における気筒間空燃比ばらつき異常を検出する異常検出手段と、
前記ばらつき異常が検出されたとき、異常気筒を特定する特定手段と、
を備え、
前記特定手段が、
前記触媒の上流側に設けられた空燃比センサとしての触媒前センサと、
前記触媒の下流側に設けられた空燃比センサとしての触媒後センサと、
前記触媒前センサの出力に基づく主空燃比制御と、前記触媒後センサの出力に基づく補助空燃比制御とを、前記複数の気筒に対して実行する空燃比制御手段と、
前記触媒後センサの出力に基づき前記補助空燃比制御のための制御量を算出する制御量算出手段と、
前記制御量の収束値に基づき異常気筒を特定する異常気筒特定手段と、
を備えることを特徴とする気筒間空燃比ばらつき異常検出装置が提供される。
【００１２】
好ましくは、前記制御量が、触媒後センサ学習値と補助空燃比補正量のいずれか一方からなる。
【００１３】
本発明の他の態様によれば、
多気筒内燃機関の複数の気筒に対して設けられた触媒と、
前記触媒の温度を検出する触媒温度検出手段と、
前記触媒温度の検出値に基づき、前記複数の気筒における気筒間空燃比ばらつき異常を検出する異常検出手段と、
前記ばらつき異常が検出されたとき、異常気筒を特定する特定手段と、
を備え、
前記特定手段が、
前記触媒の上流側に設けられた空燃比センサとしての触媒前センサと、
前記触媒前センサの出力変動の度合いに基づいて異常気筒を特定する異常気筒特定手段と、
を備えることを特徴とする気筒間空燃比ばらつき異常検出装置が提供される。
【００１４】
好ましくは、前記異常気筒特定手段は、触媒前センサ出力の変動度合いに相関する空燃比変動パラメータの値に基づき異常気筒を特定し、
前記空燃比変動パラメータは、異なる二つのタイミングにおける前記空燃比センサ出力の差に基づく値である。
【００１５】
好ましくは、前記異常検出手段が、前記内燃機関の冷間始動時から所定時間経過した時点での前記触媒温度の検出値に基づき、気筒間空燃比ばらつき異常を検出する。
【００１６】
好ましくは、前記複数の気筒が、不等間爆発を起こすような複数の気筒からなる。
【発明の効果】
【００１７】
本発明によれば、異常気筒特定時にエミッションの悪化等を防止することができるという、優れた効果が発揮される。
【図面の簡単な説明】
【００１８】
【図１】本発明の一実施形態に係る内燃機関の概略図である。
【図２】触媒前センサおよび触媒後センサの出力特性を示すグラフである。
【図３】空燃比制御ルーチンを示すフローチャートである。
【図４】主空燃比補正量の算出マップである。
【図５】補助空燃比補正量の設定ルーチンを示すフローチャートである。
【図６】触媒後センサ出力差とその積算の様子を示すタイムチャートである。
【図７】補助空燃比補正量の算出マップである。
【図８】気筒間空燃比ばらつき度合いに応じた排気空燃比の変動を示すグラフである。
【図９】インバランス割合と触媒温度との関係を示すグラフである。
【図１０】内燃機関の冷間始動後の触媒温度の推移を示すタイムチャートである。
【図１１】触媒劣化度に応じた補正を説明するためのタイムチャートである。
【図１２】酸素吸蔵容量の計測方法を説明するためのタイムチャートである。
【図１３】インバランス割合と触媒後センサ学習値との関係を示すグラフである。
【図１４】異常気筒を変えたときの触媒後センサ学習値の収束値の相違を示すグラフである。
【図１５】１エンジンサイクル内の触媒前センサ出力の変動を示すタイムチャートである。
【図１６】異常気筒を変えたときの空燃比変動パラメータの相違を示すグラフである。
【図１７】強制増量または減量を伴う異常気筒特定の原理を説明するための図である。
【図１８】ばらつき異常検出ルーチンの第１の例を示すフローチャートである。
【図１９】酸素吸蔵容量と補正係数の関係を予め規定したマップを示す図である。
【図２０】ばらつき異常検出ルーチンの第２の例を示すフローチャートである。
【図２１】内燃機関の冷間始動後に車両を走行させたときの各値の推移を示すタイムチャートである。
【図２２】触媒温度推定ルーチンを示すフローチャートである。
【図２３】ばらつき異常検出の変形例に係るルーチンを示すフローチャートである。
【発明を実施するための形態】
【００１９】
以下、本発明の実施形態を添付図面に基づき説明する。  
図１に本実施形態に係る内燃機関を概略的に示す。図示される内燃機関（エンジン）１は自動車用のＶ型８気筒火花点火式内燃機関（ガソリンエンジン）である。エンジン１は第１のバンク４と第２のバンク５とを有し、第１のバンク４には奇数番気筒すなわち＃１，＃３，＃５，＃７気筒が設けられ、第２のバンク５には偶数番気筒すなわち＃２，＃４，＃６，＃８気筒が設けられている。＃１，＃３，＃５，＃７気筒が第１の気筒群をなし、＃２，＃４，＃６，＃８気筒が第２の気筒群をなす。
【００２０】
各気筒＃１〜＃８にインジェクタ（燃料噴射弁）２が設けられている。インジェクタ２は、対応気筒の吸気通路特に吸気ポート６内に向けて燃料を噴射する。
【００２１】
吸気を導入するための吸気通路７は、前記吸気ポート６の他、集合部としてのサージタンク８と、各気筒の吸気ポート６およびサージタンク８を結ぶ複数の吸気マニホールド９と、サージタンク８の上流側の吸気管１０とを含む。吸気管１０には、上流側から順にエアフローメータ１１と電子制御式スロットルバルブ１２とが設けられている。エアフローメータ１１は吸気流量に応じた大きさの信号を出力する。各気筒には、筒内の混合気に点火するための点火プラグ１３が設けられる。
【００２２】
第１のバンク４に対して第１の排気通路１４Ａが設けられ、第２のバンク５に対して第２の排気通路１４Ｂが設けられる。これら第１および第２の排気通路１４Ａ，１４Ｂは下流側の合流部Ｗで合流されている。この合流部Ｗより上流側の排気系統の構成は両バンクで同一なので、ここでは第１のバンク４側についてのみ説明し、第２のバンク５側については図中同一符号を付して説明を省略する。
【００２３】
第１の排気通路１４Ａは、＃１，＃３，＃５，＃７の各気筒の排気ポート１５と、これら排気ポート１５の排気ガスを集合させる排気マニホールド１６と、排気マニホールド１６の下流側に設置された排気管１７とを含む。そして排気マニホールド１６と排気管１７の間には三元触媒からなる触媒１８が設けられている。
【００２４】
触媒１８の上流側及び下流側（直前及び直後）にそれぞれ排気ガスの空燃比を検出するための空燃比センサ、即ち触媒前センサ２０及び触媒後センサ２１が設置されている。これらセンサは排気中の酸素濃度に基づいて空燃比を検出する。
【００２５】
このように、一方のバンクに属する複数の気筒（あるいは気筒群）に対して、触媒１８、触媒前センサ２０及び触媒後センサ２１が各一つずつ設けられている。
【００２６】
合流部Ｗより下流側の排気通路すなわち合流排気通路１４Ｃにも三元触媒からなる触媒１９が設置されている。以下、便宜上、合流部Ｗより上流側に設けられた触媒１８を上流触媒、合流部Ｗより下流側に設けられた触媒１９を下流触媒ともいう。
【００２７】
なお、第１および第２の排気通路１４Ａ，１４Ｂを合流させないで、これらに個別に下流触媒１９を設けることも可能である。
【００２８】
上述の点火プラグ１３、スロットルバルブ１２及びインジェクタ９等は、制御手段としての電子制御ユニット（以下ＥＣＵと称す）１００に電気的に接続されている。ＥＣＵ１００は、何れも図示されないＣＰＵ、ＲＯＭ、ＲＡＭ、入出力ポート、および記憶装置等を含むものである。またＥＣＵ１００には、図示されるように、前述のエアフローメータ１１、触媒前センサ２０、触媒後センサ２１のほか、内燃機関１のクランク角を検出するクランク角センサ２２、アクセル開度を検出するアクセル開度センサ２３、内燃機関１の冷却水の温度を検出する水温センサ２４、上流触媒１８の温度（床温）を検出する温度センサ２５、その他の各種センサが図示されないＡ／Ｄ変換器等を介して電気的に接続されている。ＥＣＵ１００は、各種センサの検出値等に基づいて、所望の出力が得られるように、点火プラグ１３、スロットルバルブ１２、インジェクタ２等を制御し、点火時期、燃料噴射量、燃料噴射時期、スロットル開度等を制御する。なおスロットル開度は通常アクセル開度に応じた開度に制御される。
【００２９】
温度センサ２５は、その温度検出部（素子部）が上流触媒１８に挿入されて触媒床温を直接検出するようになっている。その温度検出部の位置については基本的には任意であるが、本実施形態では後述する理由から、上流触媒１８の流路長Ｌの中間位置Ｌ／２よりも上流側（前側）とされている。
【００３０】
触媒前センサ２０は所謂広域空燃比センサからなり、比較的広範囲に亘る空燃比を連続的に検出可能である。図２に触媒前センサ２０の出力特性を示す。図示するように、触媒前センサ２０は、検出した排気空燃比（触媒前空燃比Ａ／Ｆｆ）に比例した大きさの電圧信号Ｖｆを出力する。排気空燃比がストイキ（理論空燃比、例えばＡ／Ｆ＝１４．５）であるときの出力電圧はＶｒｅｆｆ（例えば約３．３Ｖ）である。
【００３１】
他方、触媒後センサ２１は所謂Ｏ２センサからなり、ストイキを境に出力値が急変する特性を持つ。図２に触媒後センサ２１の出力特性を示す。図示するように、排気空燃比（触媒後空燃比Ａ／Ｆｒ）がストイキであるときの出力電圧、すなわちストイキ相当値はＶｒｅｆｒ（例えば０．４５Ｖ）である。触媒後センサ２１の出力電圧は所定の範囲（例えば０〜１Ｖ）内で変化する。排気空燃比がストイキよりリーンのとき、触媒後センサの出力電圧はストイキ相当値Ｖｒｅｆｒより低くなり、排気空燃比がストイキよりリッチのとき、触媒後センサの出力電圧はストイキ相当値Ｖｒｅｆｒより高くなる。
【００３２】
上流触媒１８及び下流触媒１９は、それぞれに流入する排気ガスの空燃比Ａ／Ｆがストイキ近傍のときに排気中の有害成分であるＮＯｘ、ＨＣおよびＣＯを同時に浄化する。この三者を同時に高効率で浄化できる空燃比の幅（ウィンドウ）は比較的狭い。
【００３３】
そこで、上流触媒１８に流入する排気ガスの空燃比をストイキ近傍に制御するための空燃比制御（ストイキ制御）がＥＣＵ１００により実行される。この空燃比制御は、触媒前センサ２０によって検出された排気空燃比を所定の目標空燃比であるストイキに一致させるような主空燃比制御（主空燃比フィードバック制御）と、触媒後センサ２１によって検出された排気空燃比をストイキに一致させるような補助空燃比制御（補助空燃比フィードバック制御）とからなる。
【００３４】
空燃比制御と、後述の気筒間空燃比ばらつき異常検出および異常気筒特定とは、バンク単位で若しくはバンク毎に行われる。例えば第１のバンク４側の触媒前センサ２０および触媒後センサ２１の検出値は、第１のバンク４に属する＃１，＃３，＃５，＃７気筒の空燃比フィードバック制御にのみ用いられ、第２のバンク５に属する＃２，＃４，＃６，＃８気筒の空燃比フィードバック制御には用いられない。逆も同様である。あたかも独立した直列４気筒エンジンが二つあるように、空燃比制御等が実行される。
【００３５】
図３に空燃比制御ルーチンを示す。このルーチンはＥＣＵ１００により１エンジンサイクル（＝７２０°クランク角）毎に繰り返し実行される。
【００３６】
まずステップＳ１０１では、筒内混合気の空燃比をストイキとするような基本の燃料噴射量即ち基本噴射量Ｑｂが算出される。基本噴射量Ｑｂは例えば、エアフローメータにより検出された吸入空気量Ｇａに基づき、式：Ｑｂ＝Ｇａ／１４．５により算出される。
【００３７】
ステップＳ１０２では触媒前センサ２０の出力Ｖｆが取得される。ステップＳ１０３では、このセンサ出力Ｖｆとストイキ相当センサ出力Ｖｒｅｆｆ（図２参照）との差、即ち触媒前センサ出力差ΔＶｆ＝Ｖｆ−Ｖｒｅｆｆが算出される。
【００３８】
ステップＳ１０４では、この触媒前センサ出力差ΔＶｆに基づき、図４に示したようなマップ（関数でもよい、以下同様）から主空燃比補正量（補正係数）Ｋｆが算出される。触媒前センサ出力差ΔＶｆ及び主空燃比補正量Ｋｆは、主空燃比制御のための制御量をなす。例えばゲインをＰｆとするとＫｆ＝Ｐｆ×ΔＶｆで表される。そしてステップＳ１０５では、図５に示す別ルーチンで設定された補助空燃比補正量Ｋｒの値が取得される。最後に、ステップＳ１０６にて、インジェクタ２から噴射すべき最終的な燃料噴射量即ち最終噴射量Ｑｆｎｌが式：Ｑｆｎｌ＝Ｋｆ×Ｑｂ＋Ｋｒにより算出される。
【００３９】
図４のマップによれば、触媒前センサ出力Ｖｆがストイキ相当センサ出力Ｖｒｅｆｆより大きい（ΔＶｆ＞０）ほど、即ち実際の触媒前空燃比がストイキからリーン側に離れるほど、１に対しより大きな補正量Ｋｆが得られ、基本噴射量Ｑｂは増量補正される。反対に、触媒前センサ出力Ｖｆがストイキ相当センサ出力Ｖｒｅｆｆより小さい（ΔＶｆ＜０）ほど、即ち実際の触媒前空燃比がストイキからリッチ側に離れるほど、１に対しより小さな補正量Ｋｆが得られ、基本噴射量Ｑｂは減量補正される。こうして、触媒前センサ２０によって検出された空燃比をストイキに一致させるような主空燃比フィードバック制御が実行される。
【００４０】
ステップＳ１０６で得られた最終噴射量Ｑｆｎｌの値は、対象バンクの全気筒に対し一律に用いられる。即ち、１エンジンサイクルの間、最終噴射量Ｑｆｎｌに等しい量の燃料が対象バンクの各気筒のインジェクタ２から順次噴射され、次のエンジンサイクルでは新たに計算された最終噴射量Ｑｆｎｌの燃料が対象バンクの各気筒のインジェクタ２から順次噴射される。
【００４１】
なお、周知のように、最終噴射量Ｑｆｎｌの算出に当たっては他の補正（水温補正、バッテリ電圧補正等）を追加することも可能である。
【００４２】
図５には補助空燃比補正量の設定ルーチンを示す。このルーチンはＥＣＵ１００により所定の演算周期で繰り返し実行される。
【００４３】
まずステップＳ２０１では、ＥＣＵ１００に装備されたタイマのカウントが実行され、ステップＳ２０２では、触媒後センサ１７の出力Ｖｒが取得される。ステップＳ２０３では、このセンサ出力Ｖｒとストイキ相当センサ出力Ｖｒｅｆｒ（図２参照）との差、即ち触媒後センサ出力差ΔＶｒ＝Ｖｒｅｆｒ−Ｖｒが算出され、この触媒後センサ出力差ΔＶｒが前回積算値に積算される。図６には触媒後センサ出力差ΔＶｒとその積算の様子を示す。
【００４４】
ステップＳ２０４では、タイマ値が所定値ｔｓを超えたか否かが判断される。所定値ｔｓを超えていなければルーチンが終了される。
【００４５】
タイマ値が所定値ｔｓを超えている場合、ステップＳ２０５で、この時点での触媒後センサ出力差積算値ΣΔＶｒが、触媒後センサ学習値ΔＶｒｇとして更新記憶される。そしてステップＳ２０６で、この触媒後センサ学習値ΔＶｒｇに基づき、図７に示したようなマップから、補助空燃比補正量Ｋｒが算出され、この補助空燃比補正量Ｋｒが更新記憶される。触媒後センサ学習値ΔＶｒｇ及び補助空燃比補正量Ｋｒは、補助空燃比制御のための制御量をなす。例えばゲインをＰｒとするとＫｒ＝Ｐｒ×ΔＶｒｇで表される。最後に、ステップＳ２０７にて、触媒後センサ出力差積算値ΣΔＶｒ及びタイマがリセットされる。
【００４６】
触媒後センサ出力差ΔＶｒを所定時間ｔｓの間積算する理由は、触媒後センサ出力Ｖｒのストイキ相当センサ出力Ｖｒｅｆｒに対する時間平均的なズレ量を検知するためである。積算時間を規定する所定値ｔｓは１エンジンサイクルより遙かに長い時間であり、よって触媒後センサ学習値ΔＶｒｇ及び補助空燃比補正量Ｋｒの更新は１エンジンサイクルより長い周期で行われる。
【００４７】
図７のマップによれば、触媒後センサ出力Ｖｒが時間平均的にストイキ相当センサ出力Ｖｒｅｆｒより小さい（ΔＶｒｇ＞０）ほど、即ち実際の触媒後空燃比がストイキからリーン側に離れるほど、０に対しより大きな補正量Ｋｒが得られ、最終噴射量算出の際に基本噴射量Ｑｂは増量補正される。反対に、触媒後センサ出力Ｖｒが時間平均的にストイキ相当センサ出力Ｖｒｅｆｒより大きい（ΔＶｒｇ＜０）ほど、即ち実際の触媒後空燃比がストイキからリッチ側に離れるほど、０に対しより小さな補正量Ｋｒが得られ、基本噴射量Ｑｂは減量補正される。こうして、触媒後センサ２１によって検出された触媒後空燃比をストイキに一致させるような補助空燃比フィードバック制御が実行される。触媒前センサ２０の劣化等の理由で主空燃比フィードバック制御を実行してもその結果がストイキからズレることがあるので、このズレを補正する目的で、補助空燃比フィードバック制御が実行される。
【００４８】
なお、この例では新たな学習値ΔＶｒｇ及び補正量Ｋｒが算出される度にこれらの値自身で更新を行うようにしたが、なまし等の平均化処理を行って更新速度を遅らせるようにしてもよい。
【００４９】
さて、例えば全気筒のうちの一部の気筒のインジェクタが故障し、気筒間に空燃比のばらつき（インバランス：imbalance）が発生したとする。例えば＃１気筒が他の＃２〜＃８気筒よりも燃料噴射量が多くなり、＃１気筒の空燃比が他の＃２〜＃８気筒の空燃比よりも大きくリッチ側にずれる場合等である。このとき、＃１気筒を含む第１のバンク４について、前述の主空燃比フィードバック制御により比較的大きな補正量を与えれば、トータルガスの空燃比をストイキに制御できる場合がある。しかし、気筒別に見ると、＃１気筒がストイキより大きくリッチ、＃３，＃５，＃７気筒がストイキよりリーンであり、全体のバランスとしてストイキとなっているに過ぎず、エミッション上好ましくないことは明らかである。そこで本実施形態では、かかる気筒間空燃比ばらつき異常を検出する装置が装備されている。
【００５０】
図８は、本実施形態と異なる典型的な直列４気筒エンジンにおける空燃比センサ出力の変動を示す。図示するように、空燃比センサによって検出される排気空燃比Ａ／Ｆは、１エンジンサイクル（＝７２０°ＣＡ）を１周期として周期的に変動する傾向にある。そして気筒間空燃比ばらつきが発生すると、１エンジンサイクル内での変動が大きくなる。（Ｂ）の空燃比線図ａ，ｂ，ｃはそれぞればらつき無し、１気筒のみ２０％のインバランス割合でリッチずれ、及び１気筒のみ５０％のインバランス割合でリッチずれの場合を示す。見られるように、ばらつき度合いが大きくなるほど空燃比変動の振幅が大きくなる。本実施形態のようなＶ型８気筒エンジンでも、片バンクについて同様の傾向がある。
【００５１】
ここでインバランス割合（％）とは、気筒間空燃比のばらつき度合いを表すパラメータである。即ち、インバランス割合とは、全気筒のうちある１気筒のみが燃料噴射量ズレを起こしている場合に、その燃料噴射量ズレを起こしている気筒（インバランス気筒）の燃料噴射量がどれくらいの割合で、燃料噴射量ズレを起こしていない気筒（バランス気筒）の燃料噴射量即ち基準噴射量からズレているかを示す値である。インバランス割合をＩＢ、インバランス気筒の燃料噴射量をＱｉｂ、バランス気筒の燃料噴射量即ち基準噴射量をＱｓとすると、ＩＢ＝（Ｑｉｂ−Ｑｓ）／Ｑｓで表される。インバランス割合ＩＢが大きいほど、インバランス気筒のバランス気筒に対する燃料噴射量ズレが大きく、空燃比ばらつき度合いは大きい。
【００５２】
［気筒間空燃比ばらつき異常検出］
上述のような空燃比ばらつきが発生し、図８に示したような１エンジンサイクル間における排気空燃比の変動が生じると、上流触媒１８において短い周期で酸化還元反応が繰り返され、上流触媒１８の活性が促進される。その結果、空燃比ばらつきが無いときに比べ、上流触媒１８の温度が上昇する。ここで上流触媒１８（下流触媒１９も同様）は酸素吸蔵能（Ｏ2ストレージ能）を有し、供給された排気ガスの空燃比がストイキよりリーンのときに排気ガス中の過剰酸素を吸着保持する一方、供給された排気ガスの空燃比がストイキよりリッチのときには吸着保持していた酸素を放出する。このときの酸素吸着が酸化反応、酸素放出が還元反応である。図８に示したように、空燃比ばらつきが発生すると上流触媒１８に供給される排気ガスの空燃比が１エンジンサイクル間でリーン、リッチと変化するので、その度に酸化還元反応が行われ、上流触媒１８の温度が上昇する。
【００５３】
図９にはインバランス割合（％）と上流触媒１８の触媒温度（℃）との関係を示す。図中の三角及び菱形は、内燃機関１を搭載した車両がそれぞれ１２０ｋｍ／ｈ及び６０ｋｍ／ｈで定速走行したときのデータである。見られるように、インバランス割合（％）が０％からずれるほど、即ち空燃比ばらつき度合いが大きくなるほど、触媒温度は上昇する傾向にある。
【００５４】
本実施形態では、かかる空燃比ばらつき度合い（インバランス割合）と触媒温度との間の相関関係に着目し、温度センサ２５による触媒温度の検出値（「検出触媒温度」という）に基づき空燃比ばらつき異常の有無を判定し、当該異常を検出する。
【００５５】
特に、本実施形態の特徴は、検出触媒温度に基づき温度パラメータを算出すると共に、内燃機関１の冷間始動時から所定時間経過した時点での温度パラメータの値に基づき、気筒間空燃比ばらつき異常を検出する点にある。
【００５６】
図１０に、内燃機関１の冷間始動時以降の触媒温度（検出触媒温度）の推移を示す。時刻ｔ１が内燃機関１の冷間始動時である。始動後、触媒温度は徐々に上昇するが、このとき気筒間空燃比ばらつき度合いが大きいほど（すなわちインバランス割合ＩＢが大きいほど）、触媒温度の上昇速度は速くなる。その理由は前述したように気筒間空燃比ばらつき度合いが大きいほど、触媒内でより活発に酸化還元反応が繰り返され、触媒の活性が促進されるからである。
【００５７】
よって、最も単純な例では、内燃機関１の冷間始動時ｔ１から所定時間経過した時点ｔ２において、検出触媒温度Ｔｃを、異常判定値である所定の判定温度Ｔｘと比較することにより、気筒間空燃比ばらつき異常の有無を判定することができる。この場合、検出触媒温度Ｔｃそのものが温度パラメータとされ、検出触媒温度Ｔｃに等しい値が温度パラメータとして算出される。
【００５８】
図示例では、五つの線図ａ〜ｅのうち、時刻ｔ２で判定温度Ｔｘを下回る線図ａ〜ｃについては、気筒間空燃比ばらつき異常無しと判定される。触媒温度の上昇速度が比較的遅く、気筒間空燃比ばらつき度合いが小さいと判断し得るからである。他方、時刻ｔ２で判定温度Ｔｘ以上となっている線図ｄ，ｅについては、気筒間空燃比ばらつき異常有りと判定される。触媒温度の上昇速度が比較的早く、気筒間空燃比ばらつき度合いが大きいと判断し得るからである。
【００５９】
この方法は、特に冷間始動時からの触媒温度を考慮する点に特徴がある。冷間始動時では、触媒温度が外気温付近に安定しているため、触媒温度の初期条件を検出時毎に揃えることができるからである。従って気筒間空燃比ばらつき異常の検出精度を向上することが可能となる。
【００６０】
ここで、「冷間始動時」とは、直近の内燃機関停止時から所定時間以上経過しており（内燃機関がもはや暖機状態になく）、且つ、水温、油温等の内燃機関１の代表温度が所定値以下にあるときに内燃機関１が始動された時をいう。ここでいう代表温度の所定値は、所定の常温（例えば２０℃）より若干高い値に設定することができる。この「冷間始動」に対し、内燃機関の暖機状態での始動が「温間始動」である。「冷間始動」をコールドスタート、「温間始動」をホットスタートということもある。
【００６１】
冷間始動時ｔ１から時点ｔ２（これを判定時点ともいう）までの間の所定時間は、冷間始動時ｔ１からエンジンの暖機終了時点までの間の時間よりも遙かに短く、例えば２５秒程度である。
【００６２】
異常検出の代替例として次のものも可能である。すなわち、図１０に示すように、検出触媒温度Ｔｃとその初期値Ｔｃｉとの差ΔＴｃを温度パラメータとして算出する。また前記判定温度Ｔｘと初期値Ｔｃｉとの差ΔＴｘを、温度パラメータΔＴｃと比較すべき異常判定値とする。冷間始動時ｔ１から所定時間経過した時点ｔ２において、温度パラメータΔＴｃが異常判定値ΔＴｘより小さければ気筒間空燃比ばらつき異常無しと判定し、温度パラメータΔＴｃが異常判定値ΔＴｘ以上であれば気筒間空燃比ばらつき異常有りと判定する。これによっても線図ａ〜ｅに関して同様の結果が得られる。
【００６３】
この方法は、単純に検出触媒温度Ｔｃを温度パラメータとする場合に比べ次の点で有利である。すなわち、初期値Ｔｃｉとの差を採ることにより、検出時毎の初期値Ｔｃｉのばらつきの影響を大幅に抑制することができ、検出精度の向上に有利である。
【００６４】
なお、上流触媒１８においては、その上流端（前端）から供給ガスを受けるので、その上流端から下流側（後側）に向けて徐々に温度変化するようになる。よって上流触媒１８の温度変化を即座に検知すべく、温度センサ２５の温度検出部は、本実施形態の如く上流触媒１８の流路長Ｌの中間位置Ｌ／２よりも上流側に位置されるのが好ましく、より言えばできるだけ上流側に位置されるのが好ましい。
【００６５】
気筒間空燃比ばらつき異常検出については、上記の如き触媒温度を利用する方法の他に、空燃比センサ出力変動や補助空燃比制御の制御量を利用する方法がある。しかし、本実施形態のＶ８エンジンのような不等間爆発が起こるエンジン（気筒間の点火、爆発ないし燃焼間隔が等間隔でないエンジン）の場合や、空燃比センサに対するガス当たり強さが気筒間で著しく異なるエンジンの場合には、空燃比センサ出力変動や補助空燃比制御量を利用する方法が適用困難な場合がある。一方、触媒温度を利用する方法にはこのような困難性が少ない。よって両エンジンの場合に触媒温度を利用する方法は極めて有利であり、また当該方法を採用することにより正確なばらつき異常検出を実施することが可能である。
【００６６】
［触媒劣化度に応じた補正］
ところで、触媒は劣化するほど反応部位が少なくなり、触媒温度は低下する傾向にある。そのため、先の冷間始動時からの触媒温度上昇速度も、触媒が劣化するほど遅くなる傾向にある。また冷間始動時から所定時間経過した時点における触媒温度自体も、触媒が劣化するほど低下する傾向にある。
【００６７】
これを図示したのが図１１である。図１１は図１０に類似のタイムチャートである。実線が劣化度の小さい触媒（小劣化触媒）の場合を示し、破線が劣化度の大きい触媒（大劣化触媒）の場合を示す。図示するように、大劣化触媒の場合には、小劣化触媒の場合に比べて触媒温度上昇速度が遅く、所定時間経過時点ｔ２における触媒温度も低い。つまり大劣化触媒の温度特性は小劣化触媒の温度特性から矢印ａのように低温側に変化する。
【００６８】
このように、触媒の劣化度を考慮しないと、検出精度を低下させる可能性があり、また実際には気筒間空燃比ばらつき異常が有るのにそれを無いと誤検出してしまう可能性がある。
【００６９】
そこで本実施形態では、触媒の劣化度に関する触媒劣化パラメータを計測する。そして、所定時間経過時点での温度パラメータの値または異常判定値を、計測された触媒劣化パラメータの値に応じて補正する。これにより、触媒劣化度の影響を排除して検出精度をより向上することが可能となる。なお、触媒劣化パラメータの計測対象となる触媒は当然ながら温度検出対象としての上流触媒１８である。
【００７０】
温度パラメータの値を補正する場合、図１１の矢印ｂで示すように、温度パラメータの値を高温側に補正する。また異常判定値を補正する場合、図１１の矢印ｃで示すように、異常判定値を低温側に補正する。
【００７１】
ここで、触媒劣化パラメータとしては様々なものが採用可能であるが、本実施形態では触媒の酸素吸蔵容量ＯＳＣを採用する。以下、触媒の酸素吸蔵容量ＯＳＣの計測方法について説明する。
【００７２】
本実施形態の上流触媒１８および下流触媒１９は、前述したように酸素吸蔵能を有する。一方、触媒が熱ストレスを受けて経時劣化すると、触媒の酸素吸蔵能が低下する。触媒の劣化度と酸素吸蔵能の低下度との間には相関関係がある。そこで本実施形態では、現状の触媒が吸蔵し得る最大酸素量である酸素吸蔵容量（ＯＳＣ；O2 Storage Capacity、単位はｇ）を、触媒劣化パラメータとして計測する。
【００７３】
計測に際しては、混合気の空燃比ひいては触媒前空燃比Ａ／Ｆｆを、ストイキを中心にリッチ及びリーンに交互に振るアクティブ空燃比制御を実行する。
【００７４】
図１２において、（Ａ）は目標空燃比Ａ／Ｆｔ（破線）と、触媒前センサ２０で検出された触媒前空燃比Ａ／Ｆｆ（実線）とを示す。また（Ｂ）は触媒後センサ出力Ｖｒを示す。（Ｃ）は触媒１１から放出された酸素量即ち放出酸素量ＯＳＡａの積算値を示し、（Ｄ）は触媒に吸蔵された酸素量即ち吸蔵酸素量ＯＳＡｂの積算値を示す。
【００７５】
図示するように、アクティブ空燃比制御の実行により、触媒に流入する排気ガスの空燃比は所定のタイミングで強制的にリーン及びリッチに交互に切り替えられる。例えば時刻ｔ１より前では目標空燃比Ａ／Ｆｔがストイキよりリーン（例えば１５．０）に設定され、触媒１１にはリーンガスが流入されている。このとき触媒１１は酸素を吸収し続け、排気中のＮＯｘを還元して浄化するが、飽和状態即ち満杯まで酸素を吸収した時点でそれ以上酸素を吸収できなくなり、リーンガスが触媒１１を通り抜けて触媒１１の下流側に流れ出す。こうなると触媒後センサ２１の出力がリーン側に反転し、触媒後センサ２１の出力がストイキ相当値Ｖｒｅｆｒに達する（時刻ｔ１）。この時点で、目標空燃比Ａ／Ｆｔがストイキよりリッチ（例えば１４．０）に切り替えられる。
【００７６】
そして今度は触媒１１にリッチガスが流入される。このとき触媒１１では、それまで吸蔵していた酸素を放出し続け、排気中のリッチ成分（ＨＣ，ＣＯ）を酸化して浄化するが、やがて触媒１１から全ての吸蔵酸素が放出され尽くすとその時点で酸素を放出できなくなり、リッチガスが触媒１１を通り抜けて触媒１１の下流側に流れ出す。こうなると触媒後空燃比がリッチ側に変化し、触媒後センサ２１の出力がストイキ相当値Ｖｒｅｆｒに達する（時刻ｔ２）。この時点で、目標空燃比Ａ／Ｆｔがリーン空燃比に切り替えられる。このようにして、空燃比のリッチ・リーンへの切替えが繰り返し実行される。
【００７７】
（Ｃ）に示すように、時刻ｔ１〜ｔ２の放出サイクルでは、極短い所定周期毎の放出酸素量ＯＳＡａが順次積算されていく。より詳しくは、触媒前センサ２０の出力がストイキ相当値に達した時刻ｔ１１から、触媒後センサ２１の出力がリーン側に反転した（Ｖｒｅｆｒに達した）時刻ｔ２まで、１演算周期毎の放出酸素量ｄＯＳＡ（ｄＯＳＡａ）が次式（１）により計算され、この１演算周期毎の値が周期毎に積算されていく。こうして１放出サイクルで得られた最終的な積算値が、触媒の酸素吸蔵容量に相当する放出酸素量ＯＳＡａの計測値となる。
【００７８】
【数１】
2012117464.tif 000003
【００７９】
Ｑは燃料噴射量であり、Ａ／Ｆｓはストイキである。空燃比差ΔＡ／Ｆに燃料噴射量Ｑを乗じると過剰又は不足分の空気量を計算できる。Ｋは空気に含まれる酸素割合（約０．２３）である。
【００８０】
時刻ｔ２〜ｔ３の吸蔵サイクルでも同様に、（Ｄ）に示すように、触媒前センサ２０の出力がストイキ相当値に達した時刻ｔ２１から、触媒後センサ２１の出力がリッチ側に反転した（Ｖｒｅｆｒに達した）時刻ｔ３まで、１演算周期毎の吸蔵酸素量ｄＯＳＡ（ｄＯＳＡｂ）が前式（１）により計算され、この１演算周期毎の値が周期毎に積算されていく。こうして１吸蔵サイクルで得られた最終的な積算値が、触媒の酸素吸蔵容量に相当する吸蔵酸素量ＯＳＡｂの計測値となる。こうして放出サイクルと吸蔵サイクルを繰り返すことにより、複数ずつの放出酸素量ＯＳＡａと吸蔵酸素量ＯＳＡｂとが計測、取得される。
【００８１】
触媒が新品に近いほど、触媒が酸素を放出或いは吸蔵し続けることのできる時間が長くなり、大きな放出酸素量ＯＳＡａ或いは吸蔵酸素量ＯＳＡｂの計測値が得られる。また、原理上は、触媒が放出できる酸素量と吸蔵できる酸素量とが等しいので、放出酸素量ＯＳＡａの計測値と吸蔵酸素量ＯＳＡｂの計測値もほぼ等しい。
【００８２】
相隣接する一対の放出サイクルと吸蔵サイクルとで計測された放出酸素量ＯＳＡａと吸蔵酸素量ＯＳＡｂとの平均値が求められ、これが１吸放出サイクルに係る１単位の酸素吸蔵容量の計測値とされる。そして複数の吸放出サイクルについて複数単位の酸素吸蔵容量計測値が求められ、その平均値が最終的な酸素吸蔵容量ＯＳＣの計測値、すなわち触媒劣化パラメータとして算出される。
【００８３】
なお、触媒劣化パラメータとしては、酸素吸蔵容量ＯＳＣ以外にも、例えばアクティブ空燃比制御時の触媒後センサ２１の出力軌跡長或いは出力面積等が採用可能である。アクティブ空燃比制御時、触媒劣化度が大きいほど触媒後センサ２１の出力変動が大きくなるので、この特性を利用したものである。
【００８４】
［異常気筒特定］
ところで、気筒間空燃比ばらつき異常が検出された場合、そのばらつき異常の原因となっている気筒（異常気筒）を特定するのが好ましい。異常気筒を特定できれば後の修理（例えばインジェクタの交換等）を迅速、的確に行えるからである。そこで本実施形態では異常気筒を特定する手段が設けられている。
【００８５】
異常気筒特定については、気筒毎に燃料噴射量を強制的に増量または減量したときの触媒温度の変化に基づき異常気筒を特定する方法がある。
【００８６】
しかし、このような強制増量または減量を行う方法は、エミッションを悪化させるなどの問題がある。
【００８７】
そこで、本実施形態では別の異常気筒特定方法を採用する。まず第１の方法は、補助空燃比制御のための制御量、すなわち触媒後センサ学習値ΔＶｒｇと補助空燃比補正量Ｋｒの少なくとも一方を利用する方法である。
【００８８】
図５〜図７を用いて説明したように、補助空燃比フィードバック制御においては、所定時間毎に、触媒後センサ学習値ΔＶｒｇと補助空燃比補正量Ｋｒとが学習ないし更新される。
【００８９】
一方、片バンクについて、１気筒のみが異常でその空燃比が大きくリッチ側にずれたとする。このとき主空燃比制御が実行されていると、全気筒の排ガスが合流した後のトータルの排ガスの空燃比は、暫くしてストイキに制御される。しかしながら、異常気筒の空燃比はストイキより大きくリッチであり、残りの正常気筒の空燃比はストイキよりリーンであり、全体のバランスとしてストイキになっているに過ぎない。しかも異常気筒から水素が多量に発生される結果、触媒前センサ２０の出力は、真の空燃比よりもリッチ側にずれた空燃比を誤ってストイキとして表示する。
【００９０】
他方、水素を含む排ガスが上流触媒１８を通過すると、水素が浄化されてその影響が取り除かれる。従って、触媒後センサ２１の出力は、真の空燃比、即ちストイキよりリーンな空燃比を表示することとなる。このようにリッチずれ異常が生じると触媒前センサ２０の出力がリッチ側にずれること、および触媒前センサ２０および触媒後センサ２１の出力の間に乖離が生じることは、例えば特許文献１により公知である。
【００９１】
異常発生から所定時間が経過すると、触媒後センサ２１の出力は、リッチずれの度合いに応じた一定値に収束する。この一定値は、ストイキよりリーンな値であり、燃料噴射量をリッチ側に補正しようとする値である。この触媒後センサ２１の出力変化に追従して、触媒後センサ学習値ΔＶｒｇと補助空燃比補正量Ｋｒも、燃料噴射量をリッチ側に補正するような正の一定値に収束する。
【００９２】
これを示すのが図１３である。図１３は、ある１気筒のみの燃料噴射量がストイキ相当量からずれたときのインバランス割合（％）と、触媒後センサ学習値ΔＶｒｇとの関係を調べた試験結果である。インバランス割合はリッチずれのときが正、リーンずれのときが負である。図示するように、インバランス割合がリッチずれ方向に大きくなるほど、触媒後センサ学習値ΔＶｒｇはより大きな値、即ち空燃比をよりリッチ側に補正するような値に収束する傾向にある。図示しないが、補助空燃比補正量Ｋｒにも同様の傾向がある。
【００９３】
なお、１気筒のみの空燃比が大きくリーン側にずれることもあり、この場合には、触媒後センサ学習値ΔＶｒｇの値は、図１３に負のインバランス割合領域で示される如くなる。こちらの領域の勾配は正のインバランス割合領域の勾配よりも緩い。ここでリーンずれとは、燃料噴射量が規定量よりも少なくなることであり、ある気筒で大きなリーンずれが起きた場合、当該気筒は通常は失火に陥る。よってリーンずれによるばらつき異常は別の失火検出手段によって検出可能である。本実施形態の異常検出はリッチずれ異常に対して特に有利である。
【００９４】
ところで、本発明者らの研究結果によれば、本実施形態のＶ８エンジンのような不等間爆発が起こるエンジンの場合や、空燃比センサ（触媒前センサ２０）に対するガス当たり強さが気筒間で著しく異なる場合には、主・補助空燃比制御（特にストイキ制御）の実行時における触媒後センサ学習値ΔＶｒｇおよび補助空燃比補正量Ｋｒの収束値が、どの気筒が異常かによって異なることが判明した。
【００９５】
ここで、本実施形態の場合、両バンクの全気筒単位で見れば点火間隔は等間隔であるが、第１のバンク４と第２のバンク５とで交互に点火が行われる訳ではないので、片バンク単位で見れば点火間隔は不等間隔となる。気筒間のガス当たり強さの相違は主に触媒前センサ２０の設置位置や、センサ上流側の排気通路構造に起因する。このガス当たり強さの相違は予め実験的に把握でき、また気筒番号とガス当たり強さとの対応関係はＥＣＵ１００に予め情報として入力しておくことができる。
【００９６】
図１４は、第１のバンク４について異常気筒を変えたときの触媒後センサ学習値ΔＶｒｇの収束値の相違を示す試験結果である。（Ａ）はいずれの気筒も正常な場合、（Ｂ）は＃１気筒のみが異常で＋６０％のインバランス割合のリッチずれが生じている場合、（Ｃ）〜（Ｅ）は同様に＃３、＃５、＃７気筒のみが異常で＋６０％のインバランス割合のリッチずれが生じている場合である。
【００９７】
（Ａ）に示されるように、いずれの気筒も正常な場合には収束値がほぼゼロである。これに対し、いずれか１気筒が異常であると、その異常気筒に応じて収束値は異なってくる。最大の収束値を示すのが（Ｄ）に示される＃５気筒異常の場合で、この場合収束値は所定の第２閾値ΔＶｒｇ２（但し０＜ΔＶｒｇ２）より大きい。他方、最小の収束値を示すのが（Ｅ）に示される＃７気筒異常の場合で、この場合収束値は所定の第１閾値ΔＶｒｇ１（但し０＜ΔＶｒｇ１＜ΔＶｒｇ２）より小さい。中間の収束値を示すのが（Ｂ）に示される＃１気筒異常の場合と、（Ｃ）に示される＃３気筒異常の場合で、これらの場合、収束値は第１閾値ΔＶｒｇ１と第２閾値ΔＶｒｇ２の間となる。
【００９８】
そこでこの特性を利用し、異常気筒を特定することが可能である。すなわち、触媒後センサ学習値ΔＶｒｇの収束値が第２閾値ΔＶｒｇ２以上のときには＃５気筒を異常と特定し、当該収束値が第１閾値ΔＶｒｇ１未満のときには＃７気筒を異常と特定し、当該収束値が第１閾値ΔＶｒｇ１以上で且つ第２閾値ΔＶｒｇ２未満のときには＃１と＃３のいずれかの気筒を異常と特定する。
【００９９】
これにより、燃料噴射量の強制増量または減量を実施することなく異常気筒を特定することができ、異常気筒特定時におけるエミッションや燃焼の悪化等を防止することができる。
【０１００】
ところで、図１４のような結果が得られる理由は次の通りと考えられる。本実施形態の場合、第１のバンク４について説明すると、＃５気筒の点火から次気筒の点火までの間に２７０°ＣＡの間隔があり、＃１気筒の点火から次気筒の点火までの間に１８０°ＣＡの間隔があり、＃３気筒の点火から次気筒の点火までの間に１８０°ＣＡの間隔があり、＃７気筒の点火から次気筒の点火までの間に９０°ＣＡの間隔がある。
【０１０１】
すると、ある気筒の点火により発生した排気ガスが、当該気筒と触媒前センサ２０の間の排気通路に滞留するときのガス滞留時間は、＃５気筒が最も長く、＃１気筒と＃３気筒が中間程度の長さであり、＃７気筒が最も短い。このようなガス滞留時間の違いが触媒後センサ学習値ΔＶｒｇの収束値の違いとなって現れるものと考えられる。すなわち、異常気筒のガス滞留時間が長いほど、その影響度は大きく、触媒後センサ学習値ΔＶｒｇの収束値は大きくなる。
【０１０２】
触媒後センサ学習値ΔＶｒｇの代わりに補助空燃比補正量Ｋｒを用いたときも同様の結果が得られる。従って、触媒後センサ学習値ΔＶｒｇと補助空燃比補正量Ｋｒのいずれか一方を用いることで異常気筒特定が可能である。精度向上等のため両方を用いることも可能である。
【０１０３】
ガス当たり強さの違いについても同様の傾向がある。すなわち、異常気筒がガス当たりの強い気筒であるほど、触媒後センサ学習値ΔＶｒｇの収束値は大きくなる。但し、ガス当たり強さの違いによる影響度は、ガス滞留時間の違いによる影響度よりも大きい。ガス当たり強さの違いは、触媒後センサ学習値ΔＶｒｇの収束値のより明確な違いとなって現れる。
【０１０４】
ここでは第１のバンク４のみについて説明したが、第２のバンク５についても同様の方法により異常気筒を特定することが可能である。
【０１０５】
次に、異常気筒特定に関する第２の方法を説明する。この第２の方法は、空燃比センサ（触媒前センサ２０）の出力変動を利用する方法である。
【０１０６】
図８を用いて説明したように、空燃比ばらつき異常が発生すると触媒前センサ２０の出力変動が大きくなる。ところで本発明者らの研究結果によれば、本実施形態のＶ８エンジンのような不等間爆発が起こるエンジンの場合や、空燃比センサ（触媒前センサ２０）に対するガス当たり強さが気筒間で著しく異なるエンジンの場合には、主・補助空燃比制御（特にストイキ制御）の実行時における触媒前センサ出力変動の大きさが、どの気筒が異常かによって異なることが判明した。
【０１０７】
この出力変動の相違を説明する前に、出力変動の大きさを表すパラメータについて説明する。ここでは、出力変動の度合いに相関する空燃比変動パラメータなるパラメータを用いる。ばらつき異常検出後、空燃比変動パラメータを算出すると共に、この空燃比変動パラメータに基づいて異常気筒を特定する。ここで空燃比変動パラメータの算出はバンク毎に、対応する空燃比センサである触媒前センサ２０の出力を用いて行う。
【０１０８】
以下に空燃比変動パラメータの算出方法を説明する。図１５は図８のＵ部に相当する拡大図であり、特に１エンジンサイクル内の触媒前センサ出力の変動を示す。触媒前センサ出力としては、触媒前センサ２０の出力電圧Ｖｆを空燃比Ａ／Ｆに換算した値を用いる。但し触媒前センサ２０の出力電圧Ｖｆを直接用いることも可能である。
【０１０９】
図１５（Ｂ）に示すように、ＥＣＵ１００は、１エンジンサイクル内において、所定のサンプル周期τ（単位時間、例えば４ｍｓ）毎に、触媒前センサ出力Ａ／Ｆの値を取得する。そして今回のタイミング（第２のタイミング）で取得した値Ａ／Ｆnと、前回のタイミング（第１のタイミング）で取得した値Ａ／Ｆn-1との差ΔＡ／Ｆnの絶対値を次式（２）により求める。この差ΔＡ／Ｆnは今回のタイミングにおける微分値あるいは傾きと言い換えることができる。
【０１１０】
【数２】
2012117464.tif 000004
【０１１１】
最も単純には、この差ΔＡ／Ｆnが触媒前センサ出力の変動を表す。変動度合いが大きくなるほど空燃比線図の傾きが大きくなり、差ΔＡ／Ｆnが大きくなるからである。そこで所定の１タイミングにおける差ΔＡ／Ｆnの値を空燃比変動パラメータとすることができる。
【０１１２】
但し、本実施形態では精度向上のため、複数の差ΔＡ／Ｆnの平均値を空燃比変動パラメータとする。本実施形態では、１エンジンサイクル内において、各タイミング毎に差ΔＡ／Ｆnを積算し、最終積算値をサンプル数Ｎで除し、１エンジンサイクル内の差ΔＡ／Ｆnの平均値を求める。そしてさらに、Ｍエンジンサイクル分（例えばＭ＝１００）だけ差ΔＡ／Ｆnの平均値を積算し、最終積算値をサイクル数Ｍで除し、Ｍエンジンサイクル内の差ΔＡ／Ｆnの平均値を求める。こうして求められた最終的な平均値を空燃比変動パラメータとし、以下「Ｘ」で表示する。触媒前センサ出力の変動度合いが大きいほど空燃比変動パラメータＸは大きくなる。
【０１１３】
なお、触媒前センサ出力Ａ／Ｆは増加する場合と減少する場合とがあるので、これら各場合の一方についてだけ上記差ΔＡ／Ｆnあるいはその平均値を求め、これを空燃比変動パラメータとしても良い。特に１気筒のみリッチずれの場合、当該１気筒に対応した排気ガスを触媒前センサが受けた時にその出力が急速にリッチ側に変化（すなわち急減）するので、減少側のみの値をリッチずれ検出のために用いることも可能である。もっとも、これに限定されず、増加側の値のみを用いることも可能である。
【０１１４】
また、触媒前センサ出力の変動度合いに相関する如何なる値をも空燃比変動パラメータとすることができる。例えば、１エンジンサイクル内における触媒前センサ出力の最大ピークと最小ピークの差（所謂ピークトゥピーク; peak to peak）、または２階微分値の最大ピークまたは最小ピークの絶対値に基づいて、空燃比変動パラメータを算出することもできる。触媒前センサ出力の変動度合いが大きいほど、触媒前センサ出力の最大ピークと最小ピークの差は大きくなり、また２階微分値の最大ピークまたは最小ピークの絶対値も大きくなるからである。
【０１１５】
ところで、前述したように、本実施形態のＶ８エンジンのような不等間爆発が起こるエンジンの場合や、空燃比センサ（触媒前センサ２０）に対するガス当たり強さが気筒間で著しく異なるエンジンの場合には、主・補助空燃比制御（特にストイキ制御）の実行時における空燃比変動パラメータＸの値が、どの気筒が異常かによって異なる。
【０１１６】
図１６は、第１のバンク４について異常気筒を変えたときの空燃比変動パラメータＸの相違を示す試験結果である。図中の菱形、丸、四角および三角の各プロットは、それぞれ、＃１、＃３、＃５、＃７気筒のみが異常で且つ＋６０％のインバランス割合のリッチずれが生じている場合のデータである。
【０１１７】
図中のモニタ領域とは、異常気筒特定のベースとして空燃比変動パラメータＸが使用可能である吸入空気量Ｇａの領域のことをいう。触媒前センサ出力変動ひいては空燃比変動パラメータＸの異常気筒に応じた明確な差を得るには、一定流速以上の排気ガスが触媒前センサに当たっている必要がある。そこで本実施形態では、排気ガス流量の代用値である吸入空気量Ｇａが所定値Ｇａ１（例えば２０ｇ／ｓ）以上のときの空燃比変動パラメータＸに限って、異常気筒特定に用いるようにしている。
【０１１８】
図示されるように、モニタ領域内では、どの気筒が異常かによって空燃比変動パラメータＸの値が異なる。最大値を示すのが四角で示される＃５気筒異常の場合で、この場合空燃比変動パラメータＸの値は所定の第２閾値Ｘ２（但し０＜Ｘ２）より大きい。他方、最小値を示すのが丸で示される＃３気筒異常の場合で、この場合空燃比変動パラメータＸの値は所定の第１閾値Ｘ１（但し０＜Ｘ１＜Ｘ２）より小さい。中間値を示すのが菱形で示される＃１気筒異常の場合と、三角で示される＃７気筒異常の場合で、これらの場合、空燃比変動パラメータＸの値は第１閾値Ｘ１と第２閾値Ｘ２の間となる。
【０１１９】
そこでこの特性を利用し、異常気筒を特定することが可能である。すなわち、空燃比変動パラメータＸの値が第２閾値Ｘ２以上のときには＃５気筒を異常と特定し、当該値が第１閾値Ｘ１未満のときには＃３気筒を異常と特定し、当該値が第１閾値Ｘ１以上で且つ第２閾値Ｘ２未満のときには＃１と＃７のいずれかの気筒を異常と特定する。
【０１２０】
これにより、燃料噴射量の強制増量または減量を実施することなく異常気筒を特定することができ、異常気筒特定時におけるエミッションや燃焼の悪化等を防止することができる。
【０１２１】
ガス当たり強さの違いについても同様の傾向がある。すなわち、異常気筒がガス当たりの強い気筒であるほど、空燃比変動パラメータＸの値は大きくなる。但し、ガス当たり強さの違いによる影響度は、ガス滞留時間の違いによる影響度よりも大きい。ガス当たり強さの違いは、空燃比変動パラメータＸのより明確な違いとなって現れる。
【０１２２】
ここでは第１のバンク４のみについて説明したが、第２のバンク５についても同様の方法により異常気筒を特定することが可能である。
【０１２３】
上記の第１の方法と第２の方法は任意に選択可能である。例えば、第１の方法では異常気筒特定が困難な場合に第２の方法を採用することができるし、その逆も可能である。検出精度向上等のため、第１の方法と第２の方法を組み合わせることも可能である。
【０１２４】
ところで、第１または第２の方法によっても異常気筒特定が困難な場合がある。上記の第１の方法の場合、＃１気筒と＃３気筒のいずれかが異常と特定されても、＃１気筒と＃３気筒のいずれが異常であるかまでは特定することができない。また上記の第２の方法の場合、＃１気筒と＃７気筒のいずれかが異常と特定されても、＃１気筒と＃７気筒のいずれが異常であるかまでは特定することができない。
【０１２５】
そこで異常特定が困難な気筒に対してのみ燃料噴射量の強制増量または減量を実施することが考えられる。こうすることでエミッションの悪化等を最小限に抑えつつ異常気筒を特定することが可能である。この異常特定が困難な気筒とは、第１の方法の場合＃１気筒と＃３気筒であり、第２の方法の場合＃１気筒と＃７気筒である。
【０１２６】
以下に強制増量または減量を伴う異常気筒特定の原理を、図１７を参照しつつ、通常の直列４気筒エンジンを例にとって説明する。
【０１２７】
例えば図１７（Ａ）に示すように、＃１気筒が異常であって＃１気筒の燃料噴射量がストイキ相当量に対し４０％の割合で多くなっており（即ちインバランス割合が＋４０％）、他の＃２，＃３，＃４気筒では燃料噴射量がストイキ相当量となっている（即ちインバランス割合が０％）場合を想定する。このとき、主・補助空燃比制御をある程度の時間実行すると、やがて図１７（Ｂ）に示すように、トータルの燃料噴射量がストイキ相当量となるように＃１気筒では＋３０％のインバランス割合、他の＃２，＃３，＃４気筒ではそれぞれ−１０％のインバランス割合となる。このときにもやはり各気筒でストイキ相当量に対し＋または−の噴射量ずれが生じている。よって１エンジンサイクル間で触媒の酸化還元反応が起こり、全気筒で噴射量ずれが生じていない場合に比べ触媒温度は高くなる。
【０１２８】
この図１７（Ｂ）の状態から、例えば図１７（Ｃ）に示すように、＃１気筒の燃料噴射量をストイキ相当量の４０％だけ強制的に減量する。こうすると＃１気筒は−１０％のインバランス割合となり、他の＃２，＃３，＃４気筒のインバランス割合と等しくなる。
【０１２９】
この状態から、＃１気筒の燃料噴射量減量状態を維持しつつ、主・補助空燃比制御をある程度の時間実行すると、やがて図１７（Ｄ）に示すように、各気筒の燃料噴射量が＋１０％ずつ補正され、各気筒の燃料噴射量がストイキ相当量になる（即ち各気筒のインバランス割合は０％）。よって触媒温度は全気筒で噴射量ずれが生じていないときのレベルにまで低下する。このことから、燃料噴射量を強制的に減量したときに触媒温度が所定値以上低下した気筒は異常気筒（特にリッチずれ異常気筒）であると特定することができる。
【０１３０】
一方、図１７（Ｂ）の状態から、例えば図１７（Ｅ）に示すように、正常な＃２気筒において燃料噴射量をストイキ相当量の４０％だけ強制的に減量したとする。こうすると各気筒のインバランス割合は＃１気筒では変わらず＋３０％、＃２気筒では−５０％、＃３，＃４気筒では変わらずー１０％となる。
【０１３１】
この状態から、＃２気筒の燃料噴射量減量状態を維持しつつ、主・補助空燃比制御をある程度の時間実行すると、やがて図１７（Ｆ）に示すように、トータルの燃料噴射量がストイキ相当量となるように＃１気筒では＋４０％、＃２気筒では−４０％、＃３，＃４気筒では０％となる。この場合にも、１エンジンサイクル間で触媒の酸化還元反応が起こり、全気筒で噴射量ずれが生じていない場合に比べ触媒温度は高くなる。このことから、燃料噴射量を強制的に減量したときに触媒温度が所定値以上低下しなかった気筒は異常気筒ではなく、正常気筒であると特定することができる。
【０１３２】
図示しないが、逆のパターンで、例えば図１７（Ａ）の例のうち＃１気筒のみが異常でその燃料噴射量が−４０％少なくなっている（即ちインバランス割合が−４０％）場合を想定する。すると、気筒毎に燃料噴射量を強制的に増量した場合に、触媒温度が所定値以上低下した気筒は異常気筒（特にリーンずれ異常気筒）であり、触媒温度が所定値以上低下しなかった気筒は正常気筒であると特定することができる。
【０１３３】
従って、第１の方法において、＃１気筒と＃３気筒のいずれかの気筒が異常と特定されたとき、これら＃１、＃３気筒に対して燃料噴射量の増減を実施すれば、いずれが異常かを確実に特定できる。また第２の方法において、＃１気筒と＃７気筒のいずれかの気筒が異常と特定されたとき、これら＃１、＃７気筒に対して燃料噴射量の増減を実施すれば、いずれが異常かを確実に特定できる。
【０１３４】
［異常気筒特定後の補正］
上記の方法により異常気筒を特定した後には、通常制御において、異常気筒の燃料噴射量を増量または減量補正するのが好ましい。異常発生に伴うエミッション悪化や触媒温度上昇を抑制できるからである。例えば異常気筒においてリッチずれが生じている場合には、そのリッチずれを解消するよう燃料噴射量を減量補正し、逆に異常気筒においてリーンずれが生じている場合には、そのリーンずれを解消するよう燃料噴射量を増量補正するのが好ましい。
【０１３５】
［気筒間空燃比ばらつき異常検出ルーチン］
次に、図１８を用いて、気筒間空燃比ばらつき異常検出ルーチンの第１の例を説明する。このルーチンはＥＣＵ１００により所定の演算周期τ毎に繰り返し実行される。またこのルーチンはバンク毎に実行される。
【０１３６】
まずステップＳ３０１では、異常判定フラグがオンか否かが判断される。異常判定フラグは、初期状態がオフであり、後述のステップＳ３０８で異常判定された時にオンとなるフラグである。異常判定フラグがオンのときにはステップＳ３１０に進み、異常判定フラグがオフのときにはステップＳ３０２に進む。
【０１３７】
ステップＳ３０２では、異常検出を行うのに適した所定の前提条件が成立したか否かが判断される。この前提条件が成立するためには、少なくとも、エンジン１が冷間始動されたことが必要である。例えば、前述したように、直近のエンジン停止時から所定時間以上経過しており、且つ、水温センサ２４で検出された水温が所定値以下であるという条件下で、エンジン１が始動されたときに、エンジン１が冷間始動されたと判断される。なお前提条件成立のための必要条件に他の条件を含めることもできる。
【０１３８】
前提条件が成立していない場合にはルーチンが終了される。他方、前提条件が成立した場合には、ステップＳ３０３において、触媒温度差ΔＴｃが積算される。ここでは、触媒温度差の積算値すなわち積算触媒温度差ΣΔＴｃが「温度パラメータ」として使用される。積算触媒温度差ΣΔＴｃを温度パラメータとして使用することにより、触媒温度上昇過程での上昇の仕方も考慮することができ、検出精度向上に有利である。
【０１３９】
触媒温度差ΔＴｃとは、図１０を参照して説明したように、また図１１にも示すように、検出触媒温度Ｔｃとその初期値Ｔｃｉとの差であり、ΔＴｃ＝Ｔｃ−Ｔｃｉから求められる値である。初期値Ｔｃｉは、ステップＳ３０２で初めて前提条件が成立した時の検出触媒温度Ｔｃの値である。
【０１４０】
図１１に示すように、触媒温度差ΔＴｃは演算周期τ毎に算出および積算される。今回値をｎ、前回値をｎ−１で表すと、今回の演算タイミングで算出される触媒温度差の積算値ΣΔＴｃnは次式（３）の通りである。
【０１４１】
【数３】
2012117464.tif 000005
【０１４２】
次いでステップＳ３０４において、エアフローメータ１１により算出された吸入空気量Ｇａが積算される。ここでは、吸入空気量の積算値すなわち積算吸入空気量ΣＧａが所定値Ｇ１以上に達した時点が、「内燃機関の冷間始動時から所定時間経過した時点」とされる。このように所定時間が経過したか否かを積算吸入空気量ΣＧａに基づき判断することにより、触媒温度上昇過程での負荷状態を考慮することができ、検出精度向上に有利である。
【０１４３】
次のステップＳ３０５では、積算吸入空気量ΣＧａが所定値Ｇ１以上に達したか否かが判断される。達していなければルーチンが終了され、達していればステップＳ３０６に進む。
【０１４４】
ステップＳ３０６では、触媒温度差ΔＴｃおよび吸入空気量Ｇａの積算が終了される。そしてその時点での積算触媒温度差ΣΔＴｃの値が、計測された酸素吸蔵容量ＯＳＣの値により、補正される。
【０１４５】
酸素吸蔵容量ＯＳＣとしては過去に計測された直近の値が用いられる。そして図１９に示すような予めＥＣＵ１００に記憶されたマップから、酸素吸蔵容量ＯＳＣに対応した補正係数Ｋ１が求められる。補正係数Ｋ１は積算触媒温度差ΣΔＴｃに乗じられる補正値である。図から分かるように、酸素吸蔵容量ＯＳＣが少ないほど補正係数Ｋ１が大きくなり、積算触媒温度差ΣΔＴｃがより大きな値に補正される。これは前述したように、触媒劣化度が大きいほど触媒温度の上昇速度が遅くなるのでこれを補償するためである。図示例では、新品触媒の場合にＯＳＣ＝１（ｇ）、Ｋ１＝１．０とされ、触媒が新品状態から劣化してＯＳＣの値が小さくなるにつれ、Ｋ１が１．０から大きくなるようにされている。
【０１４６】
こうして補正係数Ｋ１が求められたら、次式（４）により、補正後の積算触媒温度差ΣΔＴｃ’が算出される。
【０１４７】
【数４】
2012117464.tif 000006
【０１４８】
次に、ステップＳ３０７において、補正後の積算触媒温度差ΣΔＴｃ’が所定の異常判定値αと比較される。
【０１４９】
補正後の積算触媒温度差ΣΔＴｃ’が異常判定値αより小さい場合、ステップＳ３１２に進んで、気筒間空燃比ばらつき異常無しすなわち正常と判定され、ルーチンが終了される。
【０１５０】
他方、補正後の積算触媒温度差ΣΔＴｃ’が異常判定値α以上であるときには、ステップＳ３０８に進んで、気筒間空燃比ばらつき異常有りすなわち異常と判定される。なおこの異常判定と同時に、異常の事実をユーザに知らせるべくチェックランプ等の警告装置を起動させるのが好ましい。
【０１５１】
ステップＳ３０８で異常判定されると、ステップＳ３０９に進んで異常判定フラグがオンとされる。そしてステップＳ３１０，Ｓ３１１の異常気筒特定処理に進む。なお異常判定と同時に異常判定フラグがオンとなることから、次回以降のルーチン実行時には、ステップＳ３０１から直接ステップＳ３１０に進んで異常気筒特定処理が実行されることとなる。
【０１５２】
ここでは、前記第１の方法、すなわち補助空燃比制御のための制御量、特に触媒後センサ学習値ΔＶｒｇの収束値を用いて異常気筒を特定する方法を採用する。ステップＳ３１０では、主・補助空燃比制御の実行中に触媒後センサ学習値ΔＶｒｇが収束したか否かが判断される。例えば、ストイキ制御の実行中、触媒後センサ学習値ΔＶｒｇが所定時間内において所定範囲内にあるとき、触媒後センサ学習値ΔＶｒｇが収束したと判断される。
【０１５３】
触媒後センサ学習値ΔＶｒｇが収束していない場合にはルーチンが終了され、触媒後センサ学習値ΔＶｒｇが収束した場合にはステップＳ３１１に進む。
【０１５４】
ステップＳ３１１では、触媒後センサ学習値ΔＶｒｇの収束値に基づき異常気筒が特定される。すなわち、図１４を用いて説明したように、例えば第１のバンク４については、触媒後センサ学習値ΔＶｒｇの収束値が第２閾値ΔＶｒｇ２以上のときには＃５気筒が異常と特定され、当該収束値が第１閾値ΔＶｒｇ１未満のときには＃７気筒が異常と特定され、当該収束値が第１閾値ΔＶｒｇ１以上で且つ第２閾値ΔＶｒｇ２未満のときには＃１と＃３のいずれかの気筒が異常と特定される。第２のバンク４についても同様の方法で異常気筒が特定される。
【０１５５】
こうして異常気筒が特定されたならばルーチンが終了される。
【０１５６】
なお、ステップＳ３１１において、＃１と＃３のいずれかの気筒が異常と特定された場合、これら気筒に対し燃料噴射量の増減を実施し、いずれが異常であるかをさらに特定してもよい。ステップＳ３０６を省略してもよい。
【０１５７】
次に、図２０を用いて、気筒間空燃比ばらつき異常検出ルーチンの第２の例を説明する。この第２の例は前述の第１の例とほぼ同様であり、異なるのは異常気筒特定方法だけである。第２の例のステップＳ４０１〜Ｓ４０９は第１の例のステップＳ３０１〜Ｓ３０９と同じである。第２の例のステップＳ４１０，Ｓ４１１のみが第１の例のステップＳ３１０，Ｓ３１１と異なる。
【０１５８】
ここでは、前記第２の方法、すなわち空燃比変動パラメータＸを用いて異常気筒を特定する方法を採用する。ステップＳ４１０では、空燃比変動パラメータＸ、すなわち触媒前センサ出力差ΔＡ／ＦnのＭエンジンサイクル内の平均値が算出されたか否かが判断される。なおこの算出はストイキ制御中の触媒前センサ出力差ΔＡ／Ｆnを用いて行われる。
【０１５９】
空燃比変動パラメータＸが算出されていない場合にはルーチンが終了され、空燃比変動パラメータＸが算出された場合にはステップＳ４１１に進む。
【０１６０】
ステップＳ４１１では、算出された空燃比変動パラメータＸに基づき異常気筒が特定される。すなわち、図１６を用いて説明したように、例えば第１のバンク４については、空燃比変動パラメータＸの値が第２閾値Ｘ２以上のときには＃５気筒が異常と特定され、当該値が第１閾値Ｘ１未満のときには＃３気筒が異常と特定され、当該値が第１閾値Ｘ１以上で且つ第２閾値Ｘ２未満のときには＃１と＃７のいずれかの気筒が異常と特定される。
【０１６１】
こうして異常気筒が特定されたならばルーチンが終了される。なお、ステップＳ４１１において、＃１と＃７のいずれかの気筒が異常と特定された場合、これら気筒に対し燃料噴射量の増減を実施し、いずれが異常であるかをさらに特定してもよい。
【０１６２】
［暖機終了後の気筒間空燃比ばらつき異常検出］
次に、気筒間空燃比ばらつき異常検出の変形例を説明する。この変形例は、概略的に述べると、内燃機関の暖機終了後に、触媒温度の検出値と、機関運転状態に基づき推定された触媒温度の推定値とに基づき、気筒間空燃比ばらつき異常を検出するものである。
【０１６３】
気筒間空燃比ばらつきが発生すると触媒温度が上昇し、ばらつき度合いが大きいほど触媒温度の上昇度合いも大きいことは前述した通りである。ここでは、温度センサ２５により実際の触媒温度を検出する一方、触媒温度推定手段としてのＥＣＵ１００により機関運転状態に基づき触媒温度を推定する。推定された触媒温度は気筒間空燃比のばらつき度合いに無関係な値であり、他方、検出された触媒温度は気筒間空燃比のばらつき度合いを反映した値である。気筒間空燃比ばらつき異常が発生すると、両者が比較的大きく乖離するので、このことを利用し、触媒温度の検出値と推定値に基づいて気筒間空燃比ばらつき異常を検出する。
【０１６４】
ここで、エンジンの冷間始動後に検出を行う前記基本例と、エンジンの暖機終了後に検出を行う当該変形例との間の検出タイミングの相違について説明する。図２１は、エンジンの冷間始動後に車両を走行させたときの（Ａ）車速、（Ｂ）水温、（Ｃ）触媒温度の推移をそれぞれ示す。時刻ｔ０がエンジンの冷間始動時点である。
【０１６５】
時刻ｔ０から数１０秒程度経過した時点である時刻ｔ１が、前記基本例の検出タイミング、すなわち温度パラメータの取得タイミングである。前記基本例は、エンジンの冷間始動直後の所定期間ｔ０〜ｔ１内における触媒温度の昇温度合いに基づき、気筒間空燃比ばらつき異常を検出するものである。
【０１６６】
これに対し、当該変形例における検出タイミングは、水温が所定値（例えば７５℃）以上となっている時刻ｔ２以降のタイミングである。このように、当該変形例では前記基本例よりも検出タイミングが遅い。
【０１６７】
以下、触媒温度推定について説明する。図２２に、上流触媒１８の温度を推定するためのルーチンを示す。このルーチンはＥＣＵ１００により所定の演算周期毎に繰り返し実行される。またこのルーチンはバンク毎に行われる。
【０１６８】
まずステップＳ５０１では、触媒温度推定のための所定の前提条件が成立しているか否かが判断される。例えば、エンジンが始動後で、且つ水温センサ２４で検出された水温が所定温度（例えば−４０℃）より高いと、前提条件成立となる。なお前提条件についてはこの例に限られない。前提条件が成立していない場合にはルーチンが終了され、他方、前提条件が成立している場合にはステップＳ５０２に進む。
【０１６９】
ステップＳ５０２においては、前回のルーチン実行時（ｎ−１）に算出された触媒温度の推定値、即ち推定触媒温度Ｔｅ（ｎ−１）の値が取得される。
【０１７０】
次いでステップＳ５０３においては、今回のルーチン実行時（ｎ）における、排気ガスからの供給熱による触媒温度変化量Ａ（ｎ）が算出される。この触媒温度変化量Ａ（ｎ）は次式（５）により求められる。
【０１７１】
【数５】
2012117464.tif 000007
【０１７２】
Ｌ１は適合等によって定め得る所定値である。Ｌ２は所定のなまし率であり、１より大きい値として予め設定される。Ｂは吸入空気量Ｇａに応じて変化するパラメータ（空気量パラメータ）であり、予め定められたマップに従い、エアフローメータ１１により検出された吸入空気量Ｇａの値に基づき決定される。吸入空気量Ｇａの値が大きいほど大きな空気量パラメータＢの値が得られる。この空気量パラメータＢがエンジン運転状態を表す主なパラメータである。ここでは、第２項の大括弧内の値、即ち空気量パラメータＢに基づき算出された今回の温度変化分を、なまし率Ｌ２によりなまして前回の触媒温度変化量Ａ（ｎ−１）に加算し、今回の触媒温度変化量Ａ（ｎ）を求めている。エンジン運転状態が変化してもその影響が触媒温度に反映されるまでに時間差があるので、これに対応してかかるなまし演算を行っている。
【０１７３】
次いで、ステップＳ５０４においては、今回のルーチン実行時（ｎ）における、触媒内反応熱による触媒温度変化量Ｃ（ｎ）が算出される。この触媒温度変化量Ｃ（ｎ）は次式（６）により求められる。
【０１７４】
【数６】
2012117464.tif 000008
【０１７５】
Ｌ３は適合等によって定め得る所定値である。Ｌ４は所定のなまし率であり、１より大きい値として予め設定される。Ｄは推定触媒温度Ｔｅに応じて変化するパラメータ（推定温パラメータ）であり、予め定められたマップに従い、ステップＳ５０２で取得された前回の推定触媒温度Ｔｅ（ｎ−１）の値に基づき決定される。推定触媒温度Ｔｅの値が大きいほど大きな推定温パラメータＤの値が得られる。ここでもステップＳ５０３同様、第２項の大括弧内の値、即ち推定温パラメータＤに基づき算出された今回の温度変化分を、なまし率Ｌ４によりなまして前回の触媒温度変化量Ｃ（ｎ−１）に加算し、今回の触媒温度変化量Ｃ（ｎ）を求めている。
【０１７６】
次いで、ステップＳ５０５においては、今回のルーチン実行時（ｎ）における、触媒からの放射熱による触媒温度変化量Ｅ（ｎ）が算出される。この触媒温度変化量Ｅ（ｎ）は次式（７）により求められる。
【０１７７】
【数７】
2012117464.tif 000009
【０１７８】
Ｌ５は適合等によって定め得る所定値である。Ｔａは外気温であり、図示しない外気温センサにより検出される値である。Ｆは、エンジンが搭載される車両の速度（即ち車速）Ｖｈに応じて変化するパラメータ（車速パラメータ）であり、予め定められたマップに従い、図示しない車速センサにより検出された車速Ｖｈの値に基づき決定される。車速Ｖｈの値が大きいほど大きな車速パラメータＦの値が得られる。外気温Ｔａが低いほど、また車速Ｖｈが高いほど、大きな触媒温度変化量Ｅ（ｎ）が得られる。
【０１７９】
次いで、ステップＳ５０６においては、今回のルーチン実行時（ｎ）における、推定触媒温度Ｔｅ（ｎ）が算出される。この推定触媒温度Ｔｅ（ｎ）は次式（８）により求められる。こうして今回のルーチンが終了となる。
【０１８０】
【数８】
2012117464.tif 000010
【０１８１】
以上の推定方法から分かるように、推定触媒温度Ｔｅは気筒間空燃比ばらつき度合いに無関係な値であり、気筒間空燃比ばらつき異常が発生していても、それが発生していないときと同じ値になる。よって、推定触媒温度Ｔｅを基準とした、温度センサ２５により検出された触媒温度（検出触媒温度Ｔｃ）の乖離度合いを検出することにより、気筒間空燃比ばらつき異常の有無を判定することが可能である。
【０１８２】
次に、図２３を用いて変形例のルーチンを説明する。このルーチンはＥＣＵ１００により所定の演算周期τ毎に繰り返し実行される。またこのルーチンはバンク毎に実行される。
【０１８３】
まずステップＳ６０１では、異常判定フラグがオンか否かが判断される。異常判定フラグは、初期状態がオフであり、後述のステップＳ６１０で異常判定された時にオンとなるフラグである。異常判定フラグがオンのときにはステップＳ６１２に進み、異常判定フラグがオフのときにはステップＳ６０２に進む。
【０１８４】
ステップＳ６０２では、異常検出を行うのに適した所定の前提条件が成立しているか否かが判断される。この前提条件は、例えば、エンジンの暖機が終了しており、触媒前後のセンサ２０，２１が活性化しており、且つ上下流の触媒１８，１９が活性化しているときに成立となる。エンジン暖機終了の条件は例えば検出水温が所定値（例えば７５℃）以上となっていることである。触媒前後センサ活性化の条件は、ＥＣＵ１００により検出される両センサのインピーダンスがそれぞれ所定の活性温度相当の値になっていることである。上下流触媒活性化の条件は、両触媒の推定触媒温度が所定の活性温度になったことである。なお下流触媒１９の推定触媒温度は図示しない別ルーチンにより算出される。
【０１８５】
前提条件が成立していない場合、ルーチンが終了される。他方、前提条件が成立している場合、ステップＳ６０３において、温度センサ２５により検出された上流触媒１８の温度、即ち検出触媒温度Ｔｓの値が取得される。
【０１８６】
次いでステップＳ６０４において、図２２の触媒温度推定ルーチンにより推定された上流触媒１８の温度、即ち推定触媒温度Ｔｅの値が取得される。
【０１８７】
次のステップＳ６０５では、ステップＳ６０３及びＳ６０４でそれぞれ取得された検出触媒温度Ｔｓ及び推定触媒温度Ｔｅの値がそれぞれ積算される。即ち、前提条件成立時以降、ルーチン実行時毎に検出触媒温度Ｔｓ及び推定触媒温度Ｔｅの値がそれぞれ個別に積算されるようになっている。今回のルーチン実行時には、前回のルーチン実行時まで積算された検出触媒温度Ｔｓ及び推定触媒温度Ｔｅの積算値に、今回取得された検出触媒温度Ｔｓ及び推定触媒温度Ｔｅの値が足し込まれ、今回の検出触媒温度Ｔｓ及び推定触媒温度Ｔｅの積算値ΣＴｓ、ΣＴｅが算出される。
【０１８８】
次に、ステップＳ６０６では、前記ステップＳ３０４（図１８）と同様、エアフローメータ１１の検出値である吸入空気量Ｇａが積算される。
【０１８９】
次のステップＳ６０７では、積算吸入空気量ΣＧａが所定値Ｇ２以上に達したか否かが判断される。達していなければルーチンが終了され、達していればステップＳ６０８に進む。
【０１９０】
ステップＳ６０８では、検出触媒温度Ｔｓ、推定触媒温度Ｔｅおよび吸入空気量Ｇａの積算が終了される。そして最終的な検出触媒温度及び推定触媒温度の積算値ΣＴｓ、ΣＴｅ同士の差（絶対値）ＴＤ＝｜ΣＴｓ−ΣＴｅ｜が算出される。さらにこの差ＴＤが、ステップＳ３０６（図１８）で行われたのと同じように、触媒劣化パラメータとしての酸素吸蔵容量ＯＳＣの値に基づき補正される。酸素吸蔵容量ＯＳＣの値に対応した補正係数Ｋ２が、図１９に類似の所定のマップから算出される。ここで暖機終了の前後という条件の違いがあることから、補正係数Ｋ２を算出するためのマップには、図１９のマップと比較して、傾向は同じだが異なる値が入力されている。
【０１９１】
こうして補正係数Ｋ２が求められたら、次式（９）により、補正後の差ＴＤ’が算出される。
【０１９２】
【数９】
2012117464.tif 000011
【０１９３】
次に、ステップＳ６０９において、補正後の差ＴＤ’が所定の異常判定値ＴＤｓと比較される。
【０１９４】
補正後の差ＴＤ’が異常判定値ＴＤｓより小さい場合、ステップＳ６１４において、気筒間空燃比ばらつき異常無し、つまり正常と判定され、ルーチンが終了される。
【０１９５】
他方、補正後の差ＴＤ’が異常判定値ＴＤｓ以上の場合、ステップＳ６１０において気筒間空燃比ばらつき異常ありと判定される。なおこの異常判定と同時に、異常の事実をユーザに知らせるべくチェックランプ等の警告装置を起動させるのが好ましい。
【０１９６】
ステップＳ６１０で異常判定されると、ステップＳ６１１に進んで異常判定フラグがオンとされる。そしてステップＳ６１２，Ｓ６１３の異常気筒特定処理に進む。なお異常判定と同時に異常判定フラグがオンとなることから、次回以降のルーチン実行時には、ステップＳ６０１から直接ステップＳ６１２に進んで異常気筒特定処理が実行されることとなる。
【０１９７】
ステップＳ６１２，Ｓ６１３の異常気筒特定処理は、図１８に示したステップＳ３１０，Ｓ３１１の異常気筒特定処理と同じである。すなわち、補助空燃比制御のための制御量特に触媒後センサ学習値ΔＶｒｇの収束値を用いて異常気筒が特定される。
【０１９８】
代替的に、ステップＳ６１２，Ｓ６１３の異常気筒特定処理を、図２０に示したステップＳ４１０，Ｓ４１１の異常気筒特定処理と同じとしてもよい。この場合、空燃比変動パラメータＸの値を用いて異常気筒が特定される。
【０１９９】
こうして異常気筒が特定されたならばルーチンが終了される。
【０２００】
以上、本発明の好適な実施形態を詳細に述べたが、本発明の実施形態は他にも様々なものが考えられる。本発明は上述したように不等間爆発が起こるエンジンもしくは気筒群、および空燃比センサに対するガス当たり強さが気筒間で著しく異なるエンジンもしくは気筒群に好適であり、上述したようなＶ８エンジンにも好適である。しかしながら、これら以外のエンジンにも本発明は適用可能である。
【０２０１】
本発明における「複数の気筒」には、多気筒内燃機関の全気筒である場合と、その全気筒のうちの一部の気筒である場合とが含まれる。本実施形態は後者の例であり、すなわち、全８気筒のうち各バンクの４気筒ずつが「複数の気筒」に該当する。前者の例としては、全気筒を出力向上等の目的で不等間爆発させるエンジンが挙げられる。
【０２０２】
本発明の実施形態は前述の実施形態のみに限らず、特許請求の範囲によって規定される本発明の思想に包含されるあらゆる変形例や応用例、均等物が本発明に含まれる。従って本発明は、限定的に解釈されるべきではなく、本発明の思想の範囲内に帰属する他の任意の技術にも適用することが可能である。
【符号の説明】
【０２０３】
１  内燃機関（エンジン）
２  インジェクタ
４  第１のバンク
５  第２のバンク
１８  上流触媒
２０  触媒前センサ
２１  触媒後センサ
２５  温度センサ
１００  電子制御ユニット（ＥＣＵ）
【図１】
2012117464.tif 000012
【図２】
2012117464.tif 000013
【図３】
2012117464.tif 000014
【図４】
2012117464.tif 000015
【図５】
2012117464.tif 000016
【図６】
2012117464.tif 000017
【図７】
2012117464.tif 000018
【図８】
2012117464.tif 000019
【図９】
2012117464.tif 000020
【図１０】
2012117464.tif 000021
【図１１】
2012117464.tif 000022
【図１２】
2012117464.tif 000023
【図１３】
2012117464.tif 000024
【図１４】
2012117464.tif 000025
【図１５】
2012117464.tif 000026
【図１６】
2012117464.tif 000027
【図１７】
2012117464.tif 000028
【図１８】
2012117464.tif 000029
【図１９】
2012117464.tif 000030
【図２０】
2012117464.tif 000031
【図２１】
2012117464.tif 000032
【図２２】
2012117464.tif 000033
【図２３】
2012117464.tif 000034