(57)【要約】【課題】複数の内燃機関でそれらに搭載された排気通路の空燃比センサの感受性にばらつきがあっても、それら内燃機関で好適に気筒間空燃比ばらつき異常を検出する。【解決手段】本発明の一態様の気筒間空燃比ばらつき異常検出装置２２は、燃料噴射弁から燃料を噴射している所定の運転状態での排気通路に設けられた空燃比センサ１７の出力に基づいて空燃比の変化を表す値を算出し、該値に対して、燃料カット運転中の該空燃比センサ１７の出力に基づいて該空燃比センサの感受性に応じた補正を行い、該補正された値と所定値とを比較することで気筒間空燃比ばらつき異常の有無を判定する。【選択図】図１
2014202138.tif 000002
【特許請求の範囲】
【請求項１】
複数の気筒を有する内燃機関の気筒間空燃比ばらつき異常検出装置であって、
燃料噴射弁から燃料を噴射している所定の運転状態での排気通路に設けられた空燃比センサの出力に基づいて空燃比の変化を表す値を算出する空燃比変化値算出手段と、
燃料カット運転中の該空燃比センサの出力に基づいて該空燃比センサの感受性に応じた補正を前記空燃比変化値算出手段により算出された値に対して行う補正手段と、
該補正手段により補正された値と所定値とを比較することで気筒間空燃比ばらつき異常の有無を判定する判定手段と
を備えた、気筒間空燃比ばらつき異常検出装置。
【請求項２】
外気圧を検出する外気圧検出手段と、
該外気圧検出手段により検出された外気圧に基づいて外気圧補正係数を算出する外気圧補正係数算出手段と
をさらに備え、
前記補正手段は、燃料カット運転中の前記空燃比センサの出力に基づいて算出される燃料カット運転中の該空燃比センサの出力の変化を表す燃料カット中空燃比センサ出力変化値に基づいて前記空燃比変化値算出手段により算出された値を補正すると共に、該外気圧補正係数算出手段により算出された外気圧補正係数に基づいて前記空燃比変化値算出手段により算出された値を補正する、
請求項１に記載の気筒間空燃比ばらつき異常検出装置。
【請求項３】
外気圧を検出する外気圧検出手段と、
該外気圧検出手段により検出された外気圧に基づいて外気圧補正係数を算出する外気圧補正係数算出手段と
をさらに備え、
前記補正手段は、前記外気圧補正係数算出手段により算出された外気圧補正係数に基づいて、燃料カット運転中の前記空燃比センサの出力に基づく燃料カット運転中の該空燃比センサの出力の変化を表す燃料カット中空燃比センサ出力変化値を補正し、補正された該燃料カット中空燃比センサ出力変化値に基づいて前記空燃比変化値算出手段により算出された値を補正する、
請求項１に記載の気筒間空燃比ばらつき異常検出装置。
【請求項４】
前記補正手段は、前記空燃比センサの感受性が低いほど前記空燃比変化値算出手段により算出された値と補正後の値との差が大きくなるように、該空燃比変化値算出手段により算出された値を補正する、請求項１から３のいずれか一項に記載の気筒間空燃比ばらつき異常検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の気筒を有する内燃機関の気筒間空然比ばらつき異常検出装置に関する。
【背景技術】
【０００２】
一般に、触媒を利用した排気浄化システムを備える内燃機関では、排気中有害成分の触媒による浄化を高効率で行うため、内燃機関で燃焼される混合気の空気と燃料との混合割合、すなわち空燃比のコントロールが欠かせない。こうした空燃比の制御を行うため、内燃機関の排気通路に空燃比センサを設け、これによって検出された空燃比を所定の目標空燃比に追従させるようフィードバック制御を実施している。
【０００３】
一方、複数の気筒を有する内燃機関つまり所謂多気筒内燃機関においては、通常全気筒に対して同一の制御量を用いて空燃比制御を行うため、空燃比制御を実行したとしても実際の空燃比が気筒間でばらつくことがある。このときばらつきの程度が小さければ、空燃比フィードバック制御で吸収可能であり、また触媒でも排気中有害成分を浄化処理可能なので、排気エミッションに影響を与えず、特に問題とならない。
【０００４】
しかし、例えば一部の気筒の燃料噴射系や吸気バルブの動弁機構が故障するなどして、気筒間の空燃比が大きくばらつくと、排気エミッションを悪化させてしまい、問題となる。このような排気エミッションを悪化させる程の大きな空燃比ばらつきは異常として検出するのが望ましい。
【０００５】
例えば、排気通路に設けられた空燃比センサの出力に基づく検出空燃比変化率を判定用閾値と比較することにより気筒間に空燃比ばらつき異常つまり空燃比インバランスが発生していることを検出することが、従来、提案されている（例えば特許文献１を参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】国際公開第２０１１−０７０６８８号
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところで、複数の同一または同種センサ間では、その感受性に個体差があり、正常な空燃比センサ間でも同様である。それ故、複数の内燃機関で同一のシステム（例えば上記特許文献１に記載されているようなシステム）を導入して、それぞれの内燃機関で気筒間空燃比ばらつき異常の検出を行う場合、その異常が誤検出される可能性がある。
【０００８】
複数の内燃機関に同一のシステムを備える場合、ある内燃機関の感受性の比較的高い正常な空燃比センサでの気筒間空燃比ばらつき異常がない場合の検出空燃比変化率（第１変化率）と、別の内燃機関の感受性の比較的低い正常な空燃比センサでの気筒間空燃比ばらつき異常がある場合の検出空燃比変化率（第２変化率）との間に上記判定用閾値があるように、そのシステムは構築されることができる。しかし、排気空燃比が同じ場合でも単一空燃比センサの出力は種々の要因（例えば吸入空気量）により変化し得るので、第１変化率と第２変化率との差も同様に変化し得、それにより、気筒間空燃比ばらつき異常が誤検出される可能性がある。
【０００９】
そこで、本発明は、以上の事情に鑑みて創案され、その目的は、複数の内燃機関でそれらに搭載された排気通路の空燃比センサの感受性にばらつきがあっても、それら内燃機関で好適に気筒間空燃比ばらつき異常を検出することを可能にする装置を提供することにある。
【課題を解決するための手段】
【００１０】
本発明の一態様によれば、
複数の気筒を有する内燃機関の気筒間空燃比ばらつき異常検出装置であって、
燃料噴射弁から燃料を噴射している所定の運転状態での排気通路に設けられた空燃比センサの出力に基づいて空燃比の変化を表す値を算出する空燃比変化値算出手段と、
燃料カット運転中の該空燃比センサの出力に基づいて該空燃比センサの感受性に応じた補正を前記空燃比変化値算出手段により算出された値に対して行う補正手段と、
該補正手段により補正された値と所定値とを比較することで気筒間空燃比ばらつき異常の有無を判定する判定手段と
を備えた、気筒間空燃比ばらつき異常検出装置、が提供される。
【００１１】
好ましくは、上記気筒間空燃比ばらつき異常検出装置は、
外気圧を検出する外気圧検出手段と、
該外気圧検出手段により検出された外気圧に基づいて外気圧補正係数を算出する外気圧補正係数算出手段と
をさらに備え、
前記補正手段は、燃料カット運転中の前記空燃比センサの出力に基づいて算出される燃料カット運転中の該空燃比センサの出力の変化を表す燃料カット中空燃比センサ出力変化値に基づいて前記空燃比変化値算出手段により算出された値を補正すると共に、該外気圧補正係数算出手段により算出された外気圧補正係数に基づいて前記空燃比変化値算出手段により算出された値を補正するとよい。
【００１２】
好ましくは、上記気筒間空燃比ばらつき異常検出装置は、
外気圧を検出する外気圧検出手段と、
該外気圧検出手段により検出された外気圧に基づいて外気圧補正係数を算出する外気圧補正係数算出手段と
をさらに備え、
前記補正手段は、前記外気圧補正係数算出手段により算出された外気圧補正係数に基づいて、燃料カット運転中の前記空燃比センサの出力に基づく燃料カット運転中の該空燃比センサの出力の変化を表す燃料カット中空燃比センサ出力変化値を補正し、補正された該燃料カット中空燃比センサ出力変化値に基づいて前記空燃比変化値算出手段により算出された値を補正するとよい。
【００１３】
なお、前記補正手段は、前記空燃比センサの感受性が低いほど前記空燃比変化値算出手段により算出された値と補正後の値との差が大きくなるように、該空燃比変化値算出手段により算出された値を補正するとよい。
【発明の効果】
【００１４】
上記構成を有する本発明によれば、燃料カット運転中の空燃比センサの出力に基づいて該空燃比センサの感受性に応じた補正が上記空燃比変化値算出手段により算出された値に対して行われる。燃料カット運転中は概して空燃比変化はないので、そのときの空燃比センサの出力は、空燃比センサの感受性に応じたものである。したがって、空燃比センサの感受性に応じた補正を空燃比変化値算出手段により算出された値に対して行うことができ、これにより空燃比センサの感受性のばらつきを実質的にキャンセルした値を算出することができる。したがって、空燃比センサの感受性にばらつきがあっても、本願発明によれば、好適に気筒間空燃比ばらつき異常を検出することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の第１実施形態に係る内燃機関の概略図である。
【図２】触媒前センサおよび触媒後センサの出力特性を示すグラフである。
【図３】気筒間空燃比ばらつき度合いに応じた排気空燃比の変動を示すグラフである。
【図４】図３のＩＶ部に相当する拡大図である。
【図５】インバランス割合と空燃比の変化を表す値との関係を示すグラフである。
【図６】触媒前センサのセンサ素子の断面模式図である。
【図７】図６の一部の拡大模式図である。
【図８】燃料カット運転中での触媒前センサの出力変化例を示すグラフである。
【図９】正常な２つの空燃比センサの出力の傾きを吸入空気量に対してプロットしたグラフである。
【図１０】燃料カット中の吸入空気量と燃料カット中振幅率との関係を示すグラフである。
【図１１】燃料カット中の振幅率と、燃料噴射時の空燃比センサの出力の傾きとの関係を表すグラフである。
【図１２】燃料カット中の振幅率と、空燃比センサのセンサ出力の傾きに対する補正係数との関係を表すグラフである。
【図１３】吸入空気量に対する燃料噴射時の空燃比センサの出力傾きの変化を説明するための図であり、（ａ）は補正前の出力傾きを示し、（ｂ）は補正後の出力傾きを示す。
【図１４】第１実施形態の制御ルーチンを表す図である。
【図１５】第１実施形態の制御ルーチンを表す図であり、傾き算出制御用の図である。
【図１６】第１実施形態の制御ルーチンを表す図であり、補正係数算出制御用の図である。
【図１７】第１実施形態の制御ルーチンを表す図であり、図１６に連続する図である。
【図１８】触媒前センサの出力の振幅率を外気圧に対してプロットしたグラフである。
【図１９】外気圧と、燃料カット中の排気通路の圧力である背圧との関係を表したグラフである。
【図２０】外気圧と背圧振幅との関係を表したグラフである。
【図２１】外気圧と空燃比センサの出力振幅との関係を表したグラフである。
【図２２】振幅率の補正前後の値を外気圧に対してプロットしたグラフである。
【図２３】第２実施形態の制御ルーチンを表す図であり、補正係数算出制御用の図であり、第１実施形態の図１７に相当する図である。
【発明を実施するための形態】
【００１６】
以下、本発明の実施形態を添付図面に基づき説明する。まず、第１実施形態を説明する。
【００１７】
図１は、本第１実施形態に係る内燃機関の概略図である。図示されるように、内燃機関（エンジン）１は、シリンダブロック２に形成された燃焼室３の内部で燃料および空気の混合気を燃焼させ、ピストンを往復移動させることにより動力を発生する。本実施形態のエンジン１は、自動車に搭載されていて、複数気筒を有する内燃機関つまり多気筒内燃機関であり、より具体的には直列４気筒火花点火式内燃機関である。エンジン１は＃１〜＃４気筒を備える。ただし、本発明は、エンジンの気筒数、用途、形式等を特に限定しない。
【００１８】
図示しないが、エンジン１のシリンダヘッドには吸気ポートを開閉する吸気弁と、排気ポートを開閉する排気弁とが気筒ごとに配設されており、各吸気弁および各排気弁はカムシャフトによって開閉させられる。シリンダヘッドの頂部には、燃焼室３内の混合気に点火するための点火プラグ７が気筒ごとに取り付けられている。
【００１９】
各気筒の吸気ポートは気筒毎の枝管４を介して吸気集合室であるサージタンク８に接続されている。サージタンク８の上流側には吸気管１３が接続されており、吸気管１３の上流端にはエアクリーナ９が設けられている。そして吸気管１３には、上流側から順に、吸入空気量を検出するためのエアフローメータ５と、電子制御式のスロットルバルブ１０とが組み込まれている。なお、吸気ポート、枝管４、サージタンク８および吸気管１３はそれぞれ吸気通路の一部を区画形成する。
【００２０】
吸気通路、特に吸気ポート内に燃料を噴射するインジェクタ（燃料噴射弁）１２が気筒ごとに配設されている。インジェクタ１２から噴射された燃料は吸入空気と混合されて混合気をなし、この混合気が吸気弁の開弁時に燃焼室３に吸入され、ピストンで圧縮され、点火プラグ７で点火燃焼させられる。
【００２１】
一方、各気筒の排気ポートは排気マニホールド１４に接続される。排気マニホールド１４は、その上流部をなす気筒毎の枝管１４ａと、その下流部をなす排気集合部１４ｂとからなる。排気集合部１４ｂの下流側には排気管６が接続されている。なお、排気ポート、排気マニホールド１４および排気管６はそれぞれ排気通路の一部を区画形成する。
【００２２】
排気管６の上流側と下流側にはそれぞれ三元触媒からなる排気浄化用触媒を有する上流触媒コンバータ１１と下流触媒コンバータ１９とが直列に取り付けられている。これら触媒コンバータ１１、１９は酸素吸蔵能（Ｏ２ストレージ能）を有する。すなわち、触媒コンバータ１１、１９は、排気の空燃比がストイキ（理論空燃比、例えばＡ／Ｆ＝１４．６）より大きい（リーンな）ときに排気中の過剰酸素を吸蔵し、ＮＯｘを還元する。また触媒コンバータ１１、１９は、排気の空燃比がストイキより小さい（リッチな）ときに吸蔵酸素を放出し、ＨＣ、ＣＯを酸化する。
【００２３】
上流触媒コンバータ１１つまりそこの触媒の上流側および下流側の排気通路にそれぞれ排気の空燃比を検出するための第１および第２の空燃比センサ、すなわち触媒前センサ１７および触媒後センサ１８が設置されている。これら触媒前センサ１７および触媒後センサ１８は、上流触媒コンバータ１１の直前および直後の位置に設置され、排気中の酸素濃度に基づいて空燃比を検出することを可能にする。このように上流触媒コンバータ１１の上流側の排気合流部に単一の触媒前センサ１７が設置されている。
【００２４】
上述の点火プラグ７、スロットルバルブ１０およびインジェクタ１２等は、各種制御手段または制御装置としての機能を有する電子制御ユニット（ＥＣＵ）２０に電気的に接続されている。ＥＣＵ２０は、何れも図示されないＣＰＵ（演算処理装置）、ＲＯＭおよびＲＡＭを含む記憶装置、および入出力ポート等を含むものである。またＥＣＵ２０には、図示されるように、前述のエアフローメータ５、触媒前センサ１７、触媒後センサ１８のほか、エンジン１のクランク角を検出するためのクランク角センサ１６、アクセル開度を検出するためのアクセル開度センサ１５、吸気通路の圧力を検出するための吸気圧センサ２１、その他の各種センサが図示されないＡ／Ｄ変換器等を介して電気的に接続されている。ＥＣＵ２０は、各種センサの出力（検出値）に基づいて、所望の出力が得られるように、点火プラグ７、スロットルバルブ１０、インジェクタ１２等を制御し、点火時期、燃料噴射量、燃料噴射時期、スロットル開度等を制御する。このように、ＥＣＵ２０は、点火（時期）制御手段、燃料噴射制御手段、吸入空気量制御手段、空燃比制御手段の各機能を実質的に担う。
【００２５】
なお、ＥＣＵ２０は、空燃比センサである触媒前センサ１７の出力に基づいて空燃比の変化を表す値を算出する空燃比変化値算出手段、その値を補正する補正手段、補正後のその値に基づいて気筒間空燃比ばらつき異常の有無を判定する判定手段のそれぞれの機能を担う。なお、それら手段は相互に関連付けられている。
【００２６】
スロットルバルブ１０にはスロットル開度センサ（図示せず）が設けられ、スロットル開度センサからの信号がＥＣＵ２０に送られる。ＥＣＵ２０は、通常、アクセル開度に応じて定まる目標スロットル開度に、スロットルバルブ１０の開度（スロットル開度）をフィードバック制御する。
【００２７】
ＥＣＵ２０は、エアフローメータ５からの信号に基づき、単位時間当たりの吸入空気の量すなわち吸入空気量を検出する。そしてＥＣＵ２０は、検出したアクセル開度、スロットル開度および吸入空気量の少なくとも一つに基づき、エンジン１の負荷（または負荷率）を検出する。
【００２８】
ＥＣＵ２０は、クランク角センサ１６からのクランクパルス信号に基づき、クランク角自体を検出すると共にエンジン１の回転速度を検出する。ここで「回転速度」とは単位時間当たりの回転数のことをいい、特に１分間当たりの回転数ｒｐｍのことをいう。
【００２９】
空燃比検出手段としての触媒前センサ１７は所謂広域空燃比センサからなり、比較的広範囲に亘る空燃比を連続的に検出可能である。図２に触媒前センサ１７の出力特性を示す。図示するように、触媒前センサ１７は、排気空燃比に比例した大きさの電圧信号Ｖｆを出力する。排気空燃比が理論空燃比（ストイキ）であるときの出力電圧はＶｒｅｆｆ（例えば約３．３Ｖ）である。
【００３０】
他方、第２空燃比検出手段としての触媒後センサ１８は所謂Ｏ２センサからなり、ストイキを境に出力値が急変する特性を持つ。つまり、触媒後センサ１８は、触媒前センサ１７の出力特性に比べて、所定空燃比領域における空燃比変化に対して出力変動が大きいという出力特性を有する。図２に触媒後センサ１８の出力特性を示す。図示するように、排気空燃比がストイキであるときの出力電圧、すなわちストイキ相当値はＶｒｅｆｒ（例えば０．４５Ｖ）である。触媒後センサ１８の出力電圧は所定の範囲（例えば０〜１Ｖ）内で変化する。排気空燃比がストイキよりリーンのとき、触媒後センサの出力電圧はストイキ相当値Ｖｒｅｆｒより低くなり、排気空燃比がストイキよりリッチのとき、触媒後センサの出力電圧はストイキ相当値Ｖｒｅｆｒより高くなる。
【００３１】
上流触媒コンバータ１１および下流触媒コンバータ１９は、それぞれに流入する排気の空燃比Ａ／Ｆがストイキ近傍のときに排気中の有害成分であるＮＯｘ，ＨＣおよびＣＯを同時に浄化する。この三者を同時に高効率で浄化できる空燃比の幅（ウィンドウ）は比較的狭い。
【００３２】
そこでエンジン１の通常運転時、ＥＣＵ２０の空燃比制御ここでは具体的に空燃比フィードバック制御の機能を担う部分は、上流触媒コンバータ１１に流入する排気の空燃比がストイキ近傍に制御されるように、空燃比フィードバック制御（ストイキ制御）を実行する。この空燃比フィードバック制御は、触媒前センサ１７を用いて検出された排気空燃比を所定の目標空燃比であるストイキに一致させるような主空燃比フィードバック制御と、触媒後センサ１８を用いて検出された排気空燃比をストイキに一致させるような補助空燃比フィードバック制御とからなる。具体的には、主空燃比フィードバック制御では、触媒前センサ１７の出力に基づいて検出される現状の排気空燃比を所定の目標空燃比に追従させるために、第１補正係数を演算して、この第１補正係数に基づいてインジェクタ１２からの燃料噴射量を調整するような制御が実行される。そして、さらに補助空燃比フィードバック制御では、触媒後センサ１８の出力に基づいて、第２補正係数を演算し、主空燃比フィードバック制御にて得られた第１補正係数を修正するような制御が実行される。
【００３３】
なお、エンジン１では、クランク角センサ１６の出力に基づいて導かれるエンジン回転速度が所定回転速度（燃料カット回転速度）以上であり、かつアクセル開度センサ１５の出力に基づいて導かれるアクセルペダルの踏み込み量が「０」、すなわちアクセルペダルが踏み込まれていないときに、インジェクタ１２からの燃料噴射が停止（燃料カット（ＦＣ））される。ただし、このような燃料カットの状態が続いて、エンジン回転速度が低下して別の所定回転速度（燃料カット復帰回転速度）に達すると、または、アクセルペダルが踏まれると、燃料噴射は再開される。なお、燃料カットが行われているときは、概ね減速時に対応する。
【００３４】
さて、例えば全気筒のうちの一部の気筒（特に１気筒）に何等かの異常が発生し、気筒間に空燃比のばらつき（インバランス：imbalance）が発生することがある。例えば＃１気筒のインジェクタ１２が故障し、＃１気筒の燃料噴射量が相対的に多くなる結果、＃１気筒の空燃比が他の＃２、＃３および＃４気筒の空燃比よりも大きくリッチ側にずれる場合等である。このときでも前述の主空燃比フィードバック制御により比較的大きな補正量を与えれば、触媒前センサ１７に供給されるトータルガスの空燃比をストイキに近づけることができる場合があるかもしれない。しかし、気筒別に見ると、＃１気筒がストイキより大きくリッチ、＃２、＃３および＃４気筒がストイキより若干リーンであり、全体のバランスとしてストイキとなっているに過ぎず、エミッション上好ましくないことは明らかである。そこでエンジン１には、かかる気筒間空燃比ばらつき、特にある程度以上のばらつきが発生した場合、それを異常として検出する気筒間空然比ばらつき異常検出装置２２が備えられている。
【００３５】
ここで、本実施形態における気筒間空燃比ばらつき異常の検出の概略を説明する。
【００３６】
図３に示すように、気筒間空燃比ばらつきが発生すると、１エンジンサイクル（＝７２０°ＣＡ）間での排気空燃比の変動が大きくなる。（Ｂ）の空燃比線図ａ、ｂ、ｃはそれぞればらつき無し、１気筒のみ２０％のインバランス率でリッチずれ、および１気筒のみ５０％のインバランス率でリッチずれの場合の、触媒前センサ１７による検出空燃比Ａ／Ｆを示す。見られるように、ばらつき度合いが大きくなるほど空燃比変動の振幅が大きくなる。
【００３７】
ここでインバランス率（％）とは、気筒間空燃比のばらつき度合いを表す一つのパラメータである。すなわち、インバランス率とは、全気筒のうちある１気筒のみが燃料噴射量ずれを起こしている場合に、その燃料噴射量ずれを起こしている気筒（インバランス気筒）の燃料噴射量がどれくらいの割合で、燃料噴射量ずれを起こしていない気筒（バランス気筒）の燃料噴射量すなわち基準噴射量からずれているかを示す値である。インバランス率をＩＢ、インバランス気筒の燃料噴射量をＱｉｂ、バランス気筒の燃料噴射量すなわち基準噴射量をＱｓとすると、ＩＢ＝（Ｑｉｂ−Ｑｓ）／Ｑｓ×１００で表される。インバランス率ＩＢの絶対値が大きいほど、インバランス気筒のバランス気筒に対する燃料噴射量ずれが大きく、空燃比ばらつき度合いは大きい。
【００３８】
図３から理解されるように、インバランス率が大きいほど、すなわち気筒間空燃比のばらつき度合いが大きいほど、触媒前センサ１７の出力変動が大きくなる。つまり、インバランス率が大きいほど、排気通路における空燃比の変化が大きくなる。
【００３９】
よってこの特性に着目して、気筒間空然比ばらつき異常の検出が実行される。つまり、以下に説明されるように、エンジン１に搭載された気筒間空然比ばらつき異常検出装置２２では、触媒前センサ１７の出力つまり出力値に基づいて、空燃比の変化（または変動）を表す値（後述する「傾き」）を算出し、この値に基づいて気筒間空然比ばらつき異常の検出が実行される。なお、触媒前センサ１７の出力値は触媒前センサ１７を用いて検出された検出値に相当し、空燃比の変化を表す値は検出空燃比の変化率に応じた値に相当する。
【００４０】
以下に、本実施形態における空燃比の変化を表す値の導出の演算を説明する。図４は図３のＩＶ部に相当する拡大模式図であり、特に１エンジンサイクル内の触媒前センサ１７の出力値の変化を簡略的に示す。触媒前センサの出力値としては、ここでは触媒前センサ１７の出力電圧Ｖｆを空燃比Ａ／Ｆに換算した値を用いる。但し触媒前センサ１７の出力電圧Ｖｆを直接、出力値として用いることも可能である。
【００４１】
図４（Ｂ）に示すように、ＥＣＵ２０は、１エンジンサイクル内において、所定時間間隔つまり所定周期τ（単位時間、例えば４ｍｓ）毎に、触媒前センサの出力値Ａ／Ｆを取得するように作動する。そして今回（最新）のタイミング（第２のタイミング）で取得した値Ａ／Ｆｎと、前回のタイミング（第１のタイミング）で取得した値Ａ／Ｆｎ−１との差ΔＡ／Ｆｎを次の（１）式により求める。この差ΔＡ／Ｆｎは今回のタイミングにおける微分値あるいは傾きと言い換えることができる。
ΔＡ／Ｆn＝Ａ／Ｆn−Ａ／Ｆｎ−１      （１）
【００４２】
最も単純には、この差ΔＡ／Ｆｎ、好ましくはその絶対値が空燃比の変化を表す値つまり出力変化量を表す。変動度合いが大きくなるほど空燃比線図の傾きが大きくなり、差ΔＡ／Ｆｎの絶対値が大きくなるからである。そこで所定の１タイミングにおける差ΔＡ／Ｆｎまたはその絶対値を空燃比の変化を表す値とすることができる。
【００４３】
ただし、本実施形態では精度向上のため、複数の差ΔＡ／Ｆの平均値に関する値を空燃比の変化を表す値とする。特に、本実施形態では、以下の説明から明らかなように、差ΔＡ／Ｆが正の場合と、負の場合とで、差ΔＡ／Ｆの平均値をそれぞれ求め、それにより空燃比の変化を表す値が求められる。要するに、触媒前センサ１７に関する出力値Ａ／Ｆは増加する場合と減少する場合とがあるので、これら各場合について上記差ΔＡ／Ｆおよびその平均値を求め、それらの各絶対値が空燃比の変化を表す値として用いられ得る。
【００４４】
なお、差ΔＡ／Ｆが正であるか負であるかは無視されてもよい。例えば、正負にかかわらず差ΔＡ／Ｆが求められ、それらの絶対値の平均値が、空燃比の変化を表す値として用いられることもできる。
【００４５】
図５には、インバランス率ＩＢ（％）と、空燃比の変化を表す値Ｘとの関係例を示す。図示されるように、インバランス率ＩＢと値Ｘとの間には強い相関関係があり、インバランス率ＩＢの絶対値が増加するほど値Ｘの絶対値も増加する傾向にある。
【００４６】
それ故、空燃比の変化を表す値Ｘに基づいて気筒間空燃比ばらつき異常を検出することが可能である。すなわち、値Ｘの絶対値が所定の判定用閾値以上であれば気筒間空燃比ばらつき異常ありと判定し、それが所定の判定用閾値未満であれば気筒間空燃比ばらつき異常なし、すなわち正常と判定することができる。
【００４７】
ところで、空燃比センサである触媒前センサ１７は正常であっても、その感受性に個体間でばらつきがあり、その感受性を考慮して上記気筒間空燃比ばらつき異常の検出が行われることが望ましい。ここで、触媒前センサ１７のセンサ素子３０の断面模式図を示す図６およびその一部を拡大して示す図７を参照する。
【００４８】
触媒前センサ１７は、図６に示す断面構造を有するセンサ素子３０と、そのセンサ素子３０を保護するためのカバー（不図示）とを備えている。触媒前センサ１７は、カバーに覆われたセンサ素子３０が排気に曝されるようにエンジン１の排気通路に組みつけられていて、カバーには排気通路を流通する排気がセンサ素子３０に到達するように複数の通気孔が設けられている。
【００４９】
触媒前センサ１７のセンサ素子３０は、固体電解質３１と、それを挟む一対の電極である排気側電極３２および大気側電極３３とを備えている。排気側電極３２の表面には、拡散層３４が排気側電極３２を覆うように形成されている。拡散層３４は多孔質性の材料で形成され、排気通路を流れる排気を均質化させ、その流れを適度に律速させる機能を有している。
【００５０】
一方、固体電解質３１の大気側電極３３が配置される側には、絶縁基材３５が配置されている。絶縁基材３５には凹部が形成され、この凹部と固体電解質３１とで囲まれた大気室３６が形成されている。大気側電極３３は、固体電解質３１の大気室３６が形成された部分に配置されている。大気室３６には基準ガスとしての大気が外部から導入されるようになっていて、大気側電極３３の表面は大気室３６に導入される大気に接する。
【００５１】
センサ素子３０自体の応答特性（感受性）に対しては、拡散層３４の抵抗、拡散層の長さが支配的である。具体的には、拡散層３４の抵抗が小さく（つまり気孔率が大きく）、長さＬ（図７参照）が短い場合ほど、応答特性が速くなる傾向がある。よって、拡散層３４での気孔率や長さＬの違いなどにより、複数の空燃比センサでは感受性に違いがあり、この感受性の違いはセンサ出力にばらつきをもたらす。
【００５２】
ここで、図８に、燃料カット運転中での触媒前センサ１７の出力変化例を示す。燃料カット運転中は空燃比が概ね一定であるが、各気筒から断続的に排出される排気による圧力脈動の影響により、触媒前センサ１７の出力は変動する。よって、このセンサ出力の変化は、空燃比の変化によるものではなく、センサ素子３０の拡散層３４での排気（概ね空気）の拡散性によるものであり、触媒前センサ１７の感受性に応じたものである。そこで、本発明では、この点に着目する。
【００５３】
図９は、正常な２つの空燃比センサの出力の傾き（上記ΔＡ／Ｆに相当）を吸入空気量に対してプロットした図である。これら正常な２つの空燃比センサは、複数の正常な空燃比センサから選択されていて、一方はそれらのうちで最も感受性の高いセンサであり、他方はそれらのうちで最も感受性の低いセンサである。図９では、最も感受性の高いセンサに関するプロットが「応答性上限」として示されていて、最も感受性の低いセンサに関するプロットが「応答性下限」として示されている。また、図９では気筒間空燃比ばらつき異常がない場合のプロットが「正常時」として示されていて、１つのインバランス気筒の燃料噴射量が他の正常な気筒の燃料噴射量よりも５０％多いインバランス時（インバランス率５０％時）のプロットが「＋５０％時インバランス」として示されている。なお、これら用語は、図９以外の図に関しても同様に用いられる。
【００５４】
図９から理解できるように、空燃比センサの応答性つまり感受性が高いほど、該空燃比センサの出力の傾きが大きくなる。また、気筒間空燃比ばらつき度合いが高いほど、空燃比センサの出力の傾きが大きくなる。そして、吸入空気量に応じて、空燃比センサの出力の傾きは変化する。これは、上記したように、主に、吸入空気量により、つまり、排気の強さにより、空燃比センサのセンサ素子の上記拡散層での排気の移動が影響されるからである。
【００５５】
図９のようなデータより、正常時の感受性の高いセンサからの出力の傾きと、インバランス時の感受性の低いセンサからの出力の傾きとの間の値をとり、その値またはそれに相当する値を気筒間空燃比ばらつき異常の判定用の閾値として用いることで、気筒間空燃比ばらつき異常を判定することが可能である。しかし、排気空燃比が同じ場合でも単一空燃比センサの出力は種々の要因（例えば吸入空気量）により変化し得るので、それら傾きの差も同様に変化し得る。よって、正常時の感受性の高いセンサからの出力の傾きと、インバランス時の感受性の低いセンサからの出力の傾きとの差が必ずしも大きくないことに鑑みると、全てのエンジンで画一的にそのような判定用閾値を用いるとき、気筒間空燃比ばらつき異常がない場合にそれが誤検出される虞がある。
【００５６】
図１０に、燃料カット中の吸入空気量と燃料カット中振幅率との関係を説明するための図を示す。図１０において横軸は吸入空気量、縦軸は燃料カット運転中の振幅率を表している。ここで「振幅率」は、空燃比センサの所定期間のセンサ出力の振幅の、その出力平均値に対する割合をいうものとする。なお、振幅および出力平均値（平均出力）は図８に示される。エンジンの燃料カット中、排気空燃比は大気に対応する一定値となる。したがって、仮に気筒間空燃比ばらつきの度合いが高くても、空燃比センサのセンサ出力はその影響を受けない。よって、燃料カット中の出力の変化は、つまり、振幅率は、空燃比センサの感受性に起因するものと考えられることができる。つまり、燃料カット中のセンサ出力変化量である燃料カット中の振幅率には、気筒間空燃比ばらつきの影響が排除ざれた、空燃比センサのサイクル間の応答性が現れているものと考えられる。具体的には、図１０に示されるように、応答性が速いつまり感受性が高い空燃比センサほど燃料カット中の振幅率は大きくなり、感受性が低いセンサほど同振幅率が小さくなる。
【００５７】
図１１は、燃料カット中の振幅率と、燃料噴射時（非燃料カット時）の空燃比センサの出力の傾き（上記差ΔＡ／Ｆに相当）との関係を表している。図１１において横軸は燃料カット中の振幅率、縦軸は傾きを表している。図１１に示されるように、傾きと燃料カット中の振幅率との間には相関がある。そこで、ここでは、この相関関係に基づいて、傾きつまり空燃比の変化を表す値に対して、空燃比センサの感受性のばらつきの影響を排除または抑制するように、補正を行う。
【００５８】
図１２は、燃料カット中の振幅率と、空燃比センサのセンサ出力の傾きに対する補正係数との関係を表している。ここではこれらの関係は直線的であるが、本発明はこれに限定されない。図１２に示す燃料カット中の振幅率と補正係数との関係は、図１１に示されるような正常時の燃料カット中の振幅率と、燃料噴射時（非燃料カット時）の空燃比センサの出力傾きとの相関関係に基づいて求めることができる。なお、図１２の補正係数は、感受性の相対的に低い空燃比センサの出力を感受性の相対的に高い空燃比センサの出力に換算するように定められていて、正常な空燃比センサの中で最も感受性の高いであろう空燃比センサのセンサ出力が基準とされている。それ故、図１２では、最も感受性の高いであろう空燃比センサの出力による振幅率に対する補正係数が「１」にされている。求められた振幅率と補正係数との関係は、予め演算式やデータとして整理されて、ＥＣＵ２０の記憶装置に記憶され、後述される演算に利用される。
【００５９】
図１３は、吸入空気量に対する燃料噴射時の出力傾きの変化を説明するための図であり、図１３において（ａ）は図９そのものであって補正前の出力傾きを示し、（ｂ）は算出された補正係数を用いて補正された出力傾きを表している。図１３（ｂ）から理解できるように、空燃比センサの感受性が低いほど、出力傾きの補正量が大きいように（補正前の出力傾きと補正後の出力傾きとの差が大きくなるように）補正される。燃料カット中の振幅率に応じたこの補正で、正常時の感受性の高いセンサからの出力の傾きと、インバランス時の感受性の低いセンサからの出力の傾きとの差が、図１３（ａ）の差Ａから図１３（ｂ）の差Ｂへと大きくなるので、いずれのエンジンであってもつまり感受性の異なる空燃比センサを用いても、以下に具体的に説明される演算処理で気筒間空燃比ばらつき異常をより精度よく検出する（判別する）ことが可能になる。
【００６０】
図１４〜１７は、本第１実施形態においてＥＣＵ２０が実行する制御のルーチンについて説明するためのフローチャートである。図１４のルーチンは、一定の時間(例えば１ｍｓ〜４ｍｓ程度)ごとに繰り返し実行される。図１４のルーチンでは、まず、傾き算出制御（空燃比の変化を表す値の算出制御）が実行される（ステップＳ１４０１）。傾き算出制御は、上記ΔＡ／Ｆの絶対値に相当する出力傾きkatamukiを算出するための制御である。なお傾き算出制御のルーチンの詳細は後述する。
【００６１】
次に、補正係数算出制御が実行される（ステップＳ１４０３）。補正係数算出制御は燃料カット中の振幅率を求め、それに基づく補正係数（感受性補正係数）fckを算出するための制御である。なお補正係数算出制御のルーチンの詳細は後述する。
【００６２】
次に、出力傾きkatamukiの算出が完了し、かつ、補正係数fckの算出が完了したか否かが判別される（ステップＳ１４０５）。出力傾きkatamukiの算出完了および補正係数fckの算出完了のいずれか一方でも認められない場合には、今回の処理はこのまま終了する。
【００６３】
一方、ステップＳ１４０５で出力傾きkatamuki算出完了、かつ、補正係数fckの算出完了が認められると、次に、補正係数fckを用いて補正された出力傾きkatamukiの補正後値（katamuki×fck）が判定用閾値Thresholdより小さいか否かが判別される（ステップＳ１４０７）。この閾値Thresholdは、例えば、図９および図１３に基づいて説明したように応答性が速いつまり感受性が高い空燃比センサの正常時の出力の傾きを考慮するなどして予め適宜設定される値であり、この制御においては、ＥＣＵ２０の記憶装置に予め記憶された値が用いられる。なお、この閾値Thresholdは、図５の値αに対応し得る。
【００６４】
補正後の出力傾きkatamuki×fckが、閾値Thresholdより小さいことが認められた場合には、正常すなわち気筒間空燃比ばらつき異常が生じていない（気筒間空燃比ばらつき度合いが所定レベル以上でない)と判定される（ステップＳ１４０９）。一方、補正後の出力傾きkatamuki×fckが、閾値Thresholdより小さいことが認められない場合、異常すなわち気筒間空燃比ばらつき異常があると判定される（ステップＳ１４１１）。ステップＳ１４０９またはステップＳ１４１１の判定処理の後、今回の処理は終了する。
【００６５】
次に、ステップＳ１４０１の処理に相当する傾き算出制御ルーチンについて、図１５を用いて説明する。傾き算出制御が開始されると、まず、前回のこのルーチン実行時の空燃比eafoと今回の空燃比eafとの差を求める演算、すなわち、上記（１）式の演算が行われる（ステップＳ１５０１）。出力傾きeafsubが算出されると、次に出力傾きeafsubがゼロより大きいか否かが判別される（ステップＳ１５０３）。
【００６６】
ステップＳ１５０３において、出力傾きeafsubがゼロより大きいことが認められた場合、算出された出力傾きeafsubが、正の傾き積算値sumpに積算される（ステップＳ１５０５）。その後、正の傾きの積算回数sumpcntに１加算される（インクリメントされる）（ステップＳ１５０７）。一方、出力傾きeafsubがゼロより大きいことが認められない場合（ステップＳ１５０３で否定判定）、算出された出力傾きeafsubが負の傾き積算値summに積算される（ステップＳ１５０９）。その後、負の傾きの積算回数summcntがインクリメントされる（ステップＳ１５１１）。なお、積算回数sumpcnt、summcntは、初期状態ではゼロに設定され、ステップＳ１５０５またはＳ１５０９での積算処理ごとに１が加算されることで、それぞれの出力傾きeafsubの積算回数をカウントするカウンタである。
【００６７】
ステップＳ１５０７またはＳ１５１１の処理の後、次に、クランク角CAがゼロであるか否かが判別される（ステップＳ１５１３）。クランク角CAはクランク角センサ１６の出力に基づいて検出される。クランク角CAがゼロであることが認められない場合には、現在、出力傾き算出のタイミングではないと判断される。したがって、今回の処理は一旦、終了する。
【００６８】
一方、ステップＳ１５１３において、クランク角CAがゼロであることが認められると、出力傾き算出のタイミングであると判断される。この場合、ステップＳ１５１５の処理に進み、正の傾き積算値sumpの平均値sump/sumpcntが、正の傾き平均値の積算値avpsumに積算され、負の傾きの積算値summの平均値summ/summcntが、負の傾きの平均値の積算値avmsumに積算される（ステップＳ１５１５）。
【００６９】
なお、ステップＳ１５１３の判別処理を行うことで、クランク角CAがゼロから、再びゼロとなるまでの１サイクルの間、出力傾きが積算されて、その１サイクルごとに傾き積算値の平均値が算出される。
【００７０】
次に、正の傾き平均値の積算回数avpcntと、負の傾きの平均値の積算回数avmcntとがそれぞれインクリメントされる（ステップＳ１５１７）。積算回数avpcnt、avmcntは、初期状態ではゼロに設定され、ステップＳ１５１５の積算処理ごとに、それぞれ１が加算されることで、それぞれの平均値の積算値avpsum、avmsumの積算回数をカウントするカウンタである。
【００７１】
次に、正の傾き積算値sumpと負の傾き積算値summとがそれぞれ初期化され、ゼロとされる（ステップＳ１５１９）。次に、正の傾き積算回数sumpcntと負の傾き積算回数summcntとが、それぞれ初期化され、ゼロとされる（ステップＳ１５２１）。
【００７２】
次に、正の傾き平均値の積算回数avpcntと、負の傾きの平均値の積算回数avmcntとが、共に、所定回数Nより大きいか否かが判別される（ステップＳ１５２３）。積算回数avpcnt、avmcntが共に所定回数より大きいことが認められない場合には、今回の処理は一旦終了する。
【００７３】
一方、ステップＳ１５２３において、積算回数avpcnt、avmcntが共に所定回数より大きいことが認められた場合、次に出力傾きkatamukiが算出される（ステップＳ１５２５）。具体的には、正の傾き平均値の積算値avpsumを積算回数avpcntで除算した平均値avpsum/avpcntと、負の傾き平均値の積算値avmsumを積算回数avmcntで除算した平均値avmsum/avmcntの絶対値とが算出され、いずれか大きい方の値が出力傾きkatamukiとして設定される。
【００７４】
その後、積算回数avpcnt、avmcntが初期化されゼロとされる（ステップＳ１５２７）。また、各傾き平均値の積算値avpsum、avmsumが初期化されてゼロとされる（ステップＳ１５２９）。これにより、傾き算出制御が終了する。
【００７５】
なお、このような傾き算出は、所定の運転状態にあるときに行われるとよい。具体的には、空燃比が目標空燃比、好ましくはストイキに追従するように上記空燃比フィードバック制御が行われているときの、空燃比センサである触媒前センサ１７の出力に基づいて行われるとよい。つまり、上記傾き算出制御の実行のための前提条件として、そのような空燃比フィードバック制御が行われていること、または、それが行われる運転状態であることが定められることができる。なお、本発明は、その前提条件として、さらなる要件またはそれらに代わる要件が定められることを許容する。
【００７６】
次に、図１６、図１７を用いて、ステップＳ１４０３の処理に相当する補正係数算出制御のルーチンについて説明する。補正係数算出制御のルーチンが開始されると、まず、燃料カット実行フラグ（FC実行フラグ）exfcflgがONとなっているか否かが判別される（ステップＳ１６０１）。FC実行フラグexfcflgは、燃料カット運転中つまりFC制御中にONとされるフラグであり、別途上記したようなFC制御のルーチンにより、そのON、OFFが切り替え制御される。
【００７７】
ステップＳ１６０１においてFC実行フラグexfcflgがONであることが認められない場合、補正係数fckを算出する環境下にないため、FC制御の継続実行時間を計測する時間カウンタfcexetimeがゼロとされ（ステップＳ１６０３）、許可フラグexfcstがOFFとされる（ステップＳ１６０５）。その後、今回の処理は終了する。なお、許可フラグexfcstは、後述するステップＳ１６４３の処理によりFC制御が所定時間より長く継続された場合にONとされ、FC中でなくなった場合にOFFとされるフラグである。
【００７８】
一方、ステップＳ１６０１において、FC実行フラグexfcflgがONとなっていることが認められると、次に、時間カウンタfcexetimeに、FC実行時間T_Unitが加算される（ステップＳ１６０７）。FC実行時間T_Unitは、補正係数算出制御ルーチンの開始後、前回、ステップＳ１６０７の処理により時間カウンタfcexetimeにFC実行時間T_Unitが加算された後、再びステップＳ１６０７の処理が実行されるまでの経過時間に相当する。
【００７９】
次に時間カウンタfcexetimeが所定時間FCTIMEより大きいか否かが判別される（ステップS１６０９）。ここで所定時間FCTIMEは、補正係数を安定的に算出するのに必要十分と考えられるFC運転の継続時間等に応じて適宜設定され、ＥＣＵ２０に記憶された値である。ステップＳ１６０９において時間カウンタfcexetimeが所定時間FCTIMEより大きいことが認められない場合、今回の処理はこのまま一旦終了する。
【００８０】
一方、ステップＳ１６０９において時間カウンタfcexetimeが所定時間FCTIMEより大きいことが認められると、次に、許可フラグexfcstがＯＮであるか否かが判別される（ステップＳ１６１１）。許可フラグexfcstがＯＮであることが認められない場合、このサイクル中の出力積算値eaffcsumがゼロにされ（ステップＳ１６１３）、出力積算値の積算回数eaffccntがゼロにされて初期化される（ステップＳ１６１５）。
【００８１】
一方、ステップＳ１６１１で許可フラグexfcstがＯＮであることが認められた場合、次にセンサ出力eafが現在までの出力積算値eaffcsumに加算される（ステップＳ１６１７）。次に出力積算値eaffcsumの積算回数eaffccntに１が加算される（インクリメントされる）（ステップＳ１６１９）。なお、積算回数eaffccntは初期状態ではゼロに設定され、ステップＳ１６１７の積算処理ごとに１が加算されることで、出力積算値eaffcsumの積算回数をカウントするカウンタである。
【００８２】
次に、このサイクルのFC中の出力最大値eaffcmaxより、現在の出力eafが大きいか否かが判別される（ステップＳ１６２１）。出力最大値eaffcmaxより現在の出力eafが大きいことが認められた場合、現在の出力eafが出力最大値eaffcmaxとされる（ステップＳ１６２３）。
【００８３】
ステップＳ１６２１において現在の出力eafが出力最大値eaffcmaxより大きいことが認められない場合、または、ステップＳ１６２３において出力最大値eaffcmaxが更新された後、次に、現在の出力eafが出力最小値より小さいか否かが判別される（ステップＳ１６２５）。現在の出力eafが出力最小値より小さいことが認められると、現在の出力eafが出力最小値eaffcminとされる（ステップＳ１６２７）。
【００８４】
ステップＳ１６２５において現在の出力eafが出力最小値eaffcminより小さいことが認められない場合、または、ステップＳ１６２７において出力最小値eaffcminが更新された場合、または、ステップＳ１６１５で積算回数eaffccntがゼロにされた場合、次に、図１７のルーチンのステップＳ１６２９に進み、クランク角CAがゼロであるか否かが判別される。
【００８５】
ステップＳ１６２９においてクランク角CAがゼロであることが認められると、次に、許可フラグexfcstがＯＮであり、かつ、完了フラグexfckfinがＯＦＦであるか否かが判別される（ステップＳ１６３１）。完了フラグexfckfinは、補正係数の算出が完了した場合に、後述するステップＳ１６４１の処理によりＯＮとされるフラグである。ステップＳ１６３１において、許可フラグexfcstがＯＮであり、かつ、完了フラグexfckfinがＯＦＦであることが認められた場合、現在補正係数を算出中の状態にあると判断される。したがって、次に、ステップＳ１６３３において、ＦＣ時振幅率積算値eaffcamprsumに、今回のサイクルの振幅率が積算される。今回のサイクルの振幅率としては、出力最大値eaffcmaxと出力最小値eaffcminとの差（eaffcmax−eaffcmin）つまり振幅を、出力平均値（eaffcsum/eaffccnt）で除算した値（割合）が用いられる。その後、ＦＣ中振幅率積算値eaffcamprsumの積算回数のカウンタeaffcamprcntがインクリメントされる（ステップＳ１６３５）。
【００８６】
次に、現在の振幅率の積算回数eaffcamprcntが所定回数FCRCNTより大きいか否かが判別される（ステップＳ１６３７）。ここで所定回数FCRCNTは、FC中振幅率をより正確に検出するために必要十分な回数であり、適宜設定される。
【００８７】
ステップＳ１６３７において、積算回数eaffcamprcntが所定回数より多いことが認められると、次に、ステップＳ１６３９において、補正係数fckが算出される。補正係数fckは、算出されたＦＣ中振幅率積算値の平均値(eaffcamprsum/eaffcamprcut)に応じて、図１２に相当するデータまたは演算式に基づいて算出される。
【００８８】
次に、完了フラグexfckfinがONとされる（ステップＳ１６４１）。これにより、今回の補正係数の算出が終了したことが示される。完了フラグexfckfinがONとされた後、または、ステップＳ１６２９において、まだクランク角CAがゼロであることが認められない場合、またはステップＳ１６３１において、許可フラグexfcstがONであることおよび完了フラグexfckfinがOFFであることのいずれか一方でも認められなかった場合、または、ステップＳ１６３７において、FC中振幅率の積算回数eaffcamprcntが所定回数FCRCNより大きいことが認められない場合には、まだ、補正係数の算出のためのFC中振幅率の検出が継続される状態であるため、許可フラグexfcstがONとされ（ステップＳ１６４３）、今回の処理は終了する。
【００８９】
以上、説明したように、本実施形態によれば、燃料カット中の振幅率に応じた補正係数fckにより補正された出力傾きkatamukiを空燃比の変化を表す値（出力変化量）として用いることで、気筒間空燃比ばらつき異常をより高い精度で判別することができる。
【００９０】
次に、本発明の第２実施形態について説明する。第２実施形態のエンジンの構成は、概ね上記第１実施形態のエンジン１の構成と同じであるので、ここでは上記説明に用いた符号を同様に用いることで、第２実施形態のエンジンの構成の説明は省略される。
【００９１】
さて、高地等において外気圧が下がることで、空燃比センサである触媒前センサ１７の出力が影響を受ける。ここで、図１８に、触媒前センサ１７の出力の振幅率を外気圧に対してプロットした図を示す。なお、６０ｋｍ／ｈ、９０ｋｍ／ｈ、１２０ｋｍ／ｈはそれぞれ、燃料カット状態に移行したときの車速である。いずれの車速のときでも、外気圧が低くなるほど、センサ出力振幅率が大きくなる傾向を有する。
【００９２】
気圧が変化すると、燃料カット中の排気通路の圧力（背圧）が変化する（図１９参照）。また、空燃比センサの出力は圧力に依存する性質を有する（例えば図８参照）。それ故、気圧が下がって平均背圧が低下するほど、空燃比センサの出力が低下する。また背圧の低下に伴い背圧の振幅が縮小するので（図２０参照）、空燃比センサの出力の振幅も小さくなる（図２１参照）。ここで、空燃比センサの出力振幅の縮小する割合よりも、センサ出力の平均値が低下する割合の方が大きい。それ故、空燃比センサの出力振幅と出力平均値との比（割合）である振幅率は、図１８に示すように、外気圧の低下と共に大きくなる傾向を有する。
【００９３】
高地など外気圧が低いことで振幅率が大きくなると、図１２に表すようなデータから算出される上記補正係数は、常圧時（概して海面上での気圧である１気圧下）に算出される値よりも小さくなり、結果として第１実施形態で説明した空燃比センサの感受性に応じた補正が適切にできなくなる虞がある。そこで、本第２実施形態では、このような外気圧の影響をキャンセル（低減または抑制）するように、外気圧に応じて外気圧補正係数を算出し、それにより空燃比センサの感受性に応じた補正を適切に行い、気筒間空燃比ばらつき異常のより精度よい検出を可能にする。ここでは、具体的には、外気圧に応じて算出される外気圧補正係数で補正することで、常圧での振幅率に相当する振幅率を算出し、それを用いて上記第１実施形態と同様にして気筒間空燃比ばらつき異常を検出する。
【００９４】
外気圧補正係数を算出するためのデータまたは所定の演算式は、図１８に示されるような実験結果から外気圧に関して定められ、ＥＣＵ２０の記憶装置に記憶される。ここで図２２に、燃料カット運転への移行時の車速が６０ｋｍ／ｈのときの、空燃比センサの出力に基づいて算出される（補正前の）振幅率と、外気圧に基づいてそのように記憶されているデータを検索したりあるいは演算式で演算したりすることで算出される外気圧補正係数を用いて補正された補正後の振幅率とを示す。図２２から、外気圧補正係数による補正で、外気圧が低いときの振幅率を常圧での振幅率に近づけるまたは概ね一致させることができることが分かる。
【００９５】
図２３は、第１実施形態の図１７に対応する図であり、図１７のステップＳ１６３１（肯定側）とステップＳ１６３５との間にステップＳ２３０１とステップＳ１６３３に代わるステップＳ２３０３とを有する。なお、これらのステップＳ２３０１およびＳ２３０３以外の処理は、第１実施形態で説明したとおりであるので、これらのステップの処理のみここで説明する。
【００９６】
ステップＳ１６３１で許可フラグexfcstがＯＮであり、かつ、完了フラグexfckfinがＯＦＦであることが認められると、ステップＳ２３０１で外気圧補正係数fcohoseikeが算出される。まず、吸気圧センサ２１の出力に基づいて予め定めているデータを検索したり、所定の演算をしたりすることで外気圧が検出される。そして、検出外気圧に基づいて、図１８に示されるような実験結果から外気圧に対して定められて記憶されている外気圧補正係数のデータを検索したり所定の演算をしたりすることで、外気圧補正係数fcohoseikeが算出される。このように、ＥＣＵ２０は、外気圧補正係数算出手段の機能も担う。なお、本実施形態では、吸気圧センサとＥＣＵ２０の一部とが外気圧検出手段を構成する。しかし、エアフローメータ５等の他のセンサの出力に基づいて外気圧が検出されることを本発明は許容する。
【００９７】
次に、ステップＳ２３０３で、ＦＣ時振幅率積算値eaffcamprsumに、今回のサイクルの振幅率が積算される。今回のサイクルの振幅率としては、出力最大値eaffcmaxと出力最小値eaffcminとの差（eaffcmax−eaffcmin）を、出力平均値（eaffcsum/eaffccnt）で除算した値（上記ステップＳ１６３３で今回の振幅率として算出された値）に、ステップＳ２３０１で算出された外気圧補正係数fcohoseikeがかけられた値が算出される。つまり、外気圧補正係数fcohoseikeで補正された値が今回の振幅率としてＦＣ時振幅率積算値eaffcamprsumに積算される。そして、ステップＳ１６３５に進む。
【００９８】
なお、外気圧補正係数は、第１実施形態のステップＳ１６３９で算出される補正係数に適用されてもよい（かけられてもよい）。こうすることでも、好適に空燃比センサの傾きを補正して、気筒間空燃比ばらつき異常を検出することができる。
【００９９】
上記実施形態では、燃料カット運転中の空燃比センサ（触媒前センサ１７）の出力に基づいて振幅率を算出し、それに基づいて空燃比の変化を表す値を補正した。しかし、振幅率に代えて、燃料カット運転中の空燃比センサの出力の変化を表す他の値を用いることも可能である。例えば、所定期間（例えば１エンジンサイクル）での空燃比センサの出力最大値と出力最小値との差（出力振幅と称し得る）を用いることも可能である。または、燃料カット運転中の空燃比センサの出力に基づいて上記したように算出される差ΔＡ／Ｆ（傾き）を燃料カット運転中の空燃比センサの出力の変化を表す値として用い、それに基づいて補正係数を算出し、空燃比の変化を表す値を補正してもよい。これら燃料カット運転中の空燃比センサの出力の変化を表す値（燃料カット中空燃比センサ出力変化値）の算出は、燃料カット中空燃比センサ出力変化値算出手段としての機能を担うＥＣＵ２０により行われる。
【０１００】
本発明の実施形態は前述の実施形態のみに限らない。特許請求の範囲によって規定される本発明の思想に包含されるあらゆる変形例や応用例、均等物が本発明に含まれる。
【符号の説明】
【０１０１】
１  内燃機関（エンジン）
７  点火プラグ
１１  上流触媒コンバータ
１２  インジェクタ
１７  触媒前センサ（空燃比センサ）
２０  電子制御ユニット（ＥＣＵ）
２１  吸気圧センサ
２２  気筒間空然比ばらつき異常検出装置
【図１】
2014202138.tif 000003
【図２】
2014202138.tif 000004
【図３】
2014202138.tif 000005
【図４】
2014202138.tif 000006
【図５】
2014202138.tif 000007
【図６】
2014202138.tif 000008
【図７】
2014202138.tif 000009
【図８】
2014202138.tif 000010
【図９】
2014202138.tif 000011
【図１０】
2014202138.tif 000012
【図１１】
2014202138.tif 000013
【図１２】
2014202138.tif 000014
【図１３】
2014202138.tif 000015
【図１４】
2014202138.tif 000016
【図１５】
2014202138.tif 000017
【図１６】
2014202138.tif 000018
【図１７】
2014202138.tif 000019
【図１８】
2014202138.tif 000020
【図１９】
2014202138.tif 000021
【図２０】
2014202138.tif 000022
【図２１】
2014202138.tif 000023
【図２２】
2014202138.tif 000024
【図２３】
2014202138.tif 000025