(57)【要約】本発明による空燃比気筒間インバランス判定装置は、機械圧縮比を変更することができる多気筒内燃機関に適用される。この判定装置は、少なくとも、触媒４３に設けられた上流側空燃比センサ５７の出力値を用いて「それぞれの気筒２１に供給される混合気の空燃比である気筒別空燃比」の間の不均衡の程度が大きいほど大きくなる「インバランス判定用パラメータ」を取得する。更に、判定装置は、そのインバランス判定用パラメータが所定の閾値より大きいとき、空燃比気筒間インバランス状態が発生したと判定する。このとき、判定装置は、所定の閾値を機関の機械圧縮比に応じて変更する。
2011024324.tif 000002
【特許請求の範囲】
【請求項１】
複数の気筒を有する多気筒内燃機関に適用され、
前記機関の圧縮比を同機関の運転状態に応じて変更する圧縮比変更手段と、
前記機関の排気通路であって前記複数の気筒のうちの少なくとも２以上の気筒の燃焼室から排出された排ガスが集合する排気集合部又は同排ガス集合部よりも下流側の部位に配設された触媒と、
前記少なくとも２以上の気筒のそれぞれに対応して配設されるとともに同２以上の気筒のそれぞれの燃焼室に供給される混合気に含まれる燃料を噴射する燃料噴射弁と、
前記排気集合部、又は、前記排気通路の前記排気集合部と前記触媒との間に配設される上流側空燃比センサであって前記触媒を通過する前の排ガスが接触する拡散抵抗層を含み、同拡散抵抗層に覆われ且つ同拡散抵抗層を通過して到達した排ガスの空燃比に応じた信号を同上流側空燃比センサの出力値として出力する空燃比検出素子、を有する上流側空燃比センサと、
前記少なくとも２以上の気筒のそれぞれに供給される混合気の空燃比である気筒別空燃比の間の不均衡の程度が大きいほど大きくなるインバランス判定用パラメータを少なくとも前記上流側空燃比センサの出力値を用いて取得するとともに、前記取得したインバランス判定用パラメータが所定の閾値以上であるか否かの比較結果に基づいて空燃比気筒間インバランス状態が発生しているか否かの判定を実行するインバランス判定手段と、
を備えた内燃機関の空燃比気筒間インバランス判定装置において、
前記インバランス判定手段は、
前記所定の閾値及び前記インバランス判定用パラメータの少なくとも一方を、前記圧縮比変更手段により変更される前記機関の圧縮比に応じて変更するように構成されたことを特徴とする空燃比気筒間インバランス判定装置。
【請求項２】
請求項１に記載の内燃機関の空燃比気筒間インバランス判定装置において、
前記インバランス判定手段は、
前記所定の閾値を、前記インバランス判定用パラメータが同所定の閾値を超える値となった場合に前記触媒から流出する未燃物の量が前記圧縮比に関わらず一定の許容限界量となるように、前記機関の圧縮比に基づいて決定することを特徴とする空燃比気筒間インバランス判定装置。
【請求項３】
請求項２に記載の内燃機関の空燃比気筒間インバランス判定装置において、
前記圧縮比変更手段は、
前記機関のピストンが上死点位置にあるときの燃焼室容積に対する同ピストンが下死点位置にあるときの燃焼室容積の比である機械圧縮比を指示信号に応答して変更する圧縮比変更機構と、
前記機関の実際の機械圧縮比を前記機関の運転状態に応じて定まる目標機械圧縮比に一致させるための指示信号を前記圧縮比変更機構に与える圧縮比制御手段と、
を含む空燃比気筒間インバランス判定装置。
【請求項４】
請求項３に記載の内燃機関の空燃比気筒間インバランス判定装置において、
前記インバランス判定手段は、
前記機関の実際の機械圧縮比を検出する機械圧縮比検出センサを含み、
前記機械圧縮比センサにより検出された実際の機械圧縮比に基づいて前記所定の閾値を決定するように構成されたことを特徴とする空燃比気筒間インバランス判定装置。
【請求項５】
請求項１乃至請求項４の何れか一項に記載の内燃機関の空燃比気筒間インバランス判定装置であって、
前記圧縮比が第１の圧縮比であるとき前記上流側空燃比センサの出力値と空燃比との関係を規定する第１の関係に前記上流側空燃比センサの実際の出力値に基づく値を適用することによりフィードバック制御用空燃比を取得し、前記圧縮比が前記第１の圧縮比と異なる第２の圧縮比であるとき前記第１の関係とは異なる関係であって前記上流側空燃比センサの出力値と空燃比との関係を規定する第２の関係に前記上流側空燃比センサの実際の出力値に基づく値を適用することによりフィードバック制御用空燃比を取得するフィードバック制御用空燃比取得手段と、
前記取得されたフィードバック制御用空燃比が所定の目標空燃比と一致するように前記噴射される燃料の量を変更する燃料噴射量補正手段と、
を備えた空燃比気筒間インバランス判定装置。
【請求項６】
複数の気筒を有する多気筒内燃機関に適用され、
前記機関の圧縮比を同機関の運転状態に応じて変更する圧縮比変更手段と、
前記機関の排気通路であって前記複数の気筒のうちの少なくとも２以上の気筒の燃焼室から排出された排ガスが集合する排気集合部又は同排ガス集合部よりも下流側の部位に配設された触媒と、
前記少なくとも２以上の気筒のそれぞれに対応して配設されるとともに同２以上の気筒のそれぞれの燃焼室に供給される混合気に含まれる燃料を噴射する燃料噴射弁と、
前記排気集合部、又は、前記排気通路の前記排気集合部と前記触媒との間に配設される上流側空燃比センサであって前記触媒を通過する前の排ガスが接触する拡散抵抗層を含み、同拡散抵抗層に覆われ且つ同拡散抵抗層を通過して到達した排ガスの空燃比に応じた信号を同上流側空燃比センサの出力値として出力する空燃比検出素子、を有する上流側空燃比センサと、
前記圧縮比が第１の圧縮比であるとき前記上流側空燃比センサの出力値と空燃比との関係を規定する第１の関係に前記上流側空燃比センサの実際の出力値に基づく値を適用することによりフィードバック制御用空燃比を取得し、前記圧縮比が前記第１の圧縮比と異なる第２の圧縮比であるとき前記第１の関係とは異なる関係であって前記上流側空燃比センサの出力値と空燃比との関係を規定する第２の関係に前記上流側空燃比センサの実際の出力値に基づく値を適用することによりフィードバック制御用空燃比を取得するフィードバック制御用空燃比取得手段と、
前記取得されたフィードバック制御用空燃比が所定の目標空燃比と一致するように前記噴射される燃料の量を変更する燃料噴射量補正手段と、
を備えた空燃比制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、圧縮比を変更可能な多気筒内燃機関に適用され、各気筒に供給される混合気の空燃比の不均衡（空燃比気筒間インバランス、空燃比気筒間ばらつき、気筒間における空燃比の不均一性）が大きくなったことを判定（監視・検出）することができる「内燃機関の空燃比気筒間インバランス判定装置」に関する。
【背景技術】
【０００２】
従来から、内燃機関の排気通路に配設された三元触媒と、同排気通路であって同三元触媒の上流及び下流にそれぞれ配置された上流側空燃比センサ及び下流側空燃比センサと、を備えた空燃比制御装置が広く知られている。この空燃比制御装置は、機関に供給される混合気の空燃比（機関の空燃比）が理論空燃比と一致するように、上流側空燃比センサの出力値と下流側空燃比センサの出力値とに基いて、機関の空燃比をフィードバック制御するようになっている。【０００３】
このような空燃比制御装置は、全気筒に対して共通する制御量（空燃比フィードバック量）を用いて機関の空燃比を制御する。即ち、機関全体に供給される混合気の空燃比の平均値が理論空燃比に一致するように空燃比フィードバック制御が実行される。【０００４】
例えば、機関の吸入空気量の測定値又は推定値が「真の吸入空気量」と乖離した場合、その吸入空気量に基づいて算出される燃料噴射量が「理論空燃比を得るために必要な量」と乖離する。その結果、各気筒の空燃比は一律に理論空燃比に対して「リッチ側又はリーン側」へと偏移する。この場合、従来の空燃比制御は、機関に供給される混合気の空燃比を「リーン側又はリッチ側」へと移行する。その結果、各気筒に供給される混合気の空燃比は理論空燃比近傍の空燃比へと修正される。従って、各気筒における燃焼は完全燃焼（混合気の空燃比が理論空燃比であるときの燃焼）に近づき、且つ、三元触媒に流入する排ガスの空燃比は理論空燃比又は理論空燃比近傍の空燃比となる。よって、エミッションの悪化が回避される。【０００５】
ところで、一般に、電子燃料噴射式内燃機関は、各気筒又は各気筒に連通した吸気ポートに一つの燃料噴射弁を備えている。従って、ある特定の気筒の燃料噴射弁の特性が「指示された燃料噴射量よりも過大な量の燃料を噴射する特性」となると、その特定の気筒に供給される混合気の空燃比（その気筒の空燃比）のみが大きくリッチ側に変化する。即ち、気筒間における空燃比の不均一性（空燃比気筒間ばらつき、空燃比気筒間インバランス）が大きくなる。換言すると、複数の気筒のそれぞれに供給される混合気の空燃比（以下、「気筒別空燃比」とも称呼する。）の間に不均衡が生じる。【０００６】
この場合、機関に供給される混合気の空燃比の平均は、理論空燃比よりもリッチ側の空燃比となる。従って、全気筒に対して共通する空燃比フィードバック量により、上記特定の気筒の空燃比は理論空燃比に近づけられるようにリーン側へと変更される。更に、他の気筒の空燃比は理論空燃比から遠ざけられるようにリーン側へと変更させられる。このとき、上記特定の気筒の空燃比は依然として理論空燃比よりもリッチ側の空燃比となり、他の気筒の空燃比は理論空燃比よりも僅かにリーン側の空燃比となる。その結果、機関に供給される混合気の全体の空燃比の平均は略理論空燃比に一致させられる。【０００７】
しかしながら、上記特定の気筒の空燃比は依然として理論空燃比よりもリッチ側の空燃比となり、残りの気筒の空燃比は理論空燃比よりもリーン側の空燃比となるから、各気筒における混合気の燃焼状態は完全燃焼とは相違した燃焼状態となる。この結果、各気筒から排出されるエミッションの量（未燃物の量及び窒素酸化物の量）が増大する。このため、機関に供給される混合気の空燃比の平均が理論空燃比であったとしても、増大したエミッションを三元触媒が浄化しきれず、結果として、エミッションが悪化する虞がある。従って、気筒間における空燃比の不均一性が過大になっていることを検出し、何らかの対策を講じさせるようにすることはエミッションを悪化させないために重要である。【０００８】
このような「気筒間における空燃比の不均一性（空燃比気筒間インバランス、気筒別空燃比の間の不均衡）」が過大になったか否かを判定する従来の装置（空燃比気筒間インバランス判定装置）の一つは、排気集合部に配設された単一の空燃比センサ（上流側空燃比センサ）の出力を分析することにより、各気筒の空燃比を表す推定空燃比を取得する。そして、この従来の装置は、各気筒の推定空燃比を用いて「気筒間における空燃比の不均一性」が過大になったか否かを判定するようになっている（例えば、特開２０００−２２０４８９号公報を参照。）。なお、空燃比気筒間インバランス状態が発生したか否かの判定は、本明細書において、単に「空燃比気筒間インバランス判定、又は、インバランス判定」とも称呼される。【０００９】
更に、従来の装置の他の一つは、複数の気筒からの排ガスが集合する排気集合部に配設された空燃比センサ（上流側空燃比センサ）の出力信号（出力値）の軌跡長又は変動周波数を取得し、その軌跡長又は変動周波数と「機関回転速度及び吸入空気量に応じて変化する参照値」とを比較し、その比較結果に基づいて空燃比気筒間インバランス状態が発生したか否かを判定するようになっている（例えば、米国特許第７，１５２，５９４号を参照。）。【００１０】
一方、「ピストンが上死点位置にあるときの燃焼室容積」に対する「そのピストンが下死点位置にあるときの燃焼室容積」の比である「機械圧縮比」を変更する圧縮比変更機構を備えた可変圧縮比内燃機関について、種々の提案がなされている。これらの可変圧縮比内燃機関は、以下の何れかの手法等に基づいて機械圧縮比を変更する。【００１１】
（１）リンク機構を用いてピストンの移動量（ピストンが下死点位置から上死点位置にまで移動する際の移動距離）を変更させる（例えば、特開２００４−２３９１４７号公報を参照。）。
（２）クランクケースに対するシリンダブロックの傾斜角を変更させる。
（３）シリンダブロックをクランクケースに対してシリンダの軸線方向に移動させる（例えば、特開２００３−２０６７７１号公報及び特開２００７−３０３４２３号公報を参照。）。
（４）ピストンとクランク軸との距離を変更させる（例えば、特開平２−１６３４２９号公報を参照。）。【００１２】
他方、「ピストンが上死点位置にあるときの燃焼室容積」に対する「吸気弁の閉弁時期（吸気弁閉弁タイミング）であって混合気の実質的な圧縮が開始される時点における燃焼室容積」の比である「実圧縮比」を変更する内燃機関についても種々の提案がなされている（例えば、特開２００７−３０３４２３号公報を参照。）。なお、本明細書において、単に「圧縮比」というとき、その「圧縮比」は、機械圧縮比及び実圧縮比の双方を含む。
【発明の概要】
【００１３】
ところで、上記従来のインバランス判定装置は、上述したような手法を用いて圧縮比を変更することができる機関についても適用される。更に、上記従来のインバランス判定装置は、「複数の気筒のそれぞれに供給される混合気の空燃比である気筒別空燃比」の間に生じる不均衡の程度が「一定の閾値」以上に大きくなったとき、空燃比気筒間インバランス状態が発生と判定している。気筒別空燃比の間の不均衡の程度は、例えば、「インバランス割合」と称呼されるパラメータによっても表される。インバランス割合とは、複数の気筒のうち供給される混合気の空燃比が理論空燃比Ｘから大きく乖離した気筒（インバランス気筒）の混合気の空燃比をＹとするとき、「理論空燃比Ｘに対する、理論空燃比Ｘとインバランス気筒の混合気の空燃比Ｙとの差（Ｘ−Ｙ）、の比（Ｘ−Ｙ）／Ｘ」のことである。
【００１４】
しかしながら、圧縮比が変化すると燃焼により発生する水素の量が大きく変化する。例えば、混合気の空燃比が一定であっても、圧縮比が増大すると、その混合気の燃焼により生じる水素の量は増大する。従って、空燃比気筒間インバランス状態が発生した場合、気筒別空燃比の間の不均衡の程度が同じであっても、圧縮比が大きいほどエミッションは悪化する。換言すると、インバランス判定装置が、機関の圧縮比が「特定の圧縮比」である場合において「気筒別空燃比の間の不均衡の程度」が一定の閾値以上になったときに空燃比気筒間インバランス状態が発生したと判定して警告灯等を点灯するように構成されている場合、機関の圧縮比が特定の圧縮比よりも大きい圧縮比にて運転されていると、空燃比気筒間インバランス状態が発生したと判定した時点においては、既にエミッションが非常に悪化しているという問題が生じる。
【００１５】
従って、本発明の目的の一つは、圧縮比変更手段を備える多気筒内燃機関において、エミッションが過度に悪化しないタイミングにて「空燃比気筒間インバランス状態が発生している」と判定することが可能な「内燃機関の空燃比気筒間インバランス判定装置」を提供することにある。
【００１６】
本発明の空燃比気筒間インバランス判定装置（以下、「本判定装置」とも称呼する。）は、複数の気筒を有する多気筒内燃機関に適用される。更に、本判定装置は、圧縮比変更手段と、触媒と、上流側空燃比センサと、インバランス判定手段と、を備える。
【００１７】
前記圧縮比変更手段は、前記機関の圧縮比を同機関の運転状態に応じて変更するようになっている。この圧縮比変更手段は、前述した（１）乃至（４）のように機関の機械圧縮比を変更する手段であってもよく、吸気弁の閉弁時期を変更することにより機関の実圧縮比を変更する手段であってもよい。
【００１８】
前記触媒は、少なくとも水素を酸化する触媒（例えば、三元触媒）である。前記触媒は、「前記機関の排気通路であって前記複数の気筒のうちの少なくとも２以上の気筒（好ましくは３気筒以上）の燃焼室から排出された排ガスが集合する排気集合部」又は「その排ガス集合部よりも下流側の部位（排気通路）」に配設される。
【００１９】
前記燃料噴射弁は、前記少なくとも２以上の気筒のそれぞれに対応して配設される。更に、前記燃料噴射弁のそれぞれは、前記少なくとも２以上の気筒のそれぞれの燃焼室に供給される混合気に含まれる燃料を噴射するようになっている。
【００２０】
前記上流側空燃比センサは、排気集合部であって前記触媒よりも上流位置、又は、前記排気通路の前記排気集合部と前記触媒との間に配設される。前記上流側空燃比センサは、前記触媒を通過する前の排ガスが接触する拡散抵抗層を含み、同拡散抵抗層に覆われ且つ同拡散抵抗層を通過して到達した排ガスの空燃比に応じた信号を「上流側空燃比センサの出力値」として出力する空燃比検出素子を有する。
【００２１】
前記インバランス判定手段は、「前記少なくとも２以上の気筒のそれぞれに供給される混合気の空燃比である気筒別空燃比の間の不均衡の程度が大きいほど大きくなるインバランス判定用パラメータ」を「少なくとも前記上流側空燃比センサの出力値」を用いて取得するようになっている。更に、前記インバランス判定手段は、「前記取得したインバランス判定用パラメータが所定の閾値Ａｔｈ以上であるか否かの比較結果」に基づいて「空燃比気筒間インバランス状態が発生しているか否かの判定」を実行するようになっている。なお、上述のインバランス判定用パラメータの逆数をインバランス判定用パラメータとしてもよい。この場合、インバランス判定用パラメータは気筒別空燃比の間の不均衡の程度が大きいほど小さくなるパラメータとなるから、そのようなインバランス判定用パラメータが別の所定の閾値（例えば、上記所定の閾値Ａｔｈの逆数）以下となったとき、空燃比気筒間インバランス状態が発生していると判定され得る。即ち、「気筒別空燃比の間の不均衡の程度が大きいほど大きくなるインバランス判定用パラメータが所定の閾値Ａｔｈ以上であるか否かの比較結果」に基づいて「空燃比気筒間インバランス状態が発生しているか否かの判定」を実行することは、気筒別空燃比の間の不均衡の程度が大きいほど小さくなるインバランス判定用パラメータが所定の閾値１／Ａｔｈ以下であるか否かの比較結果」に基づいて「空燃比気筒間インバランス状態が発生しているか否かの判定」を実行することを含む。
【００２２】
前記インバランス判定手段により取得される前記インバランス判定用パラメータは、気筒別空燃比の間の不均衡の程度が大きいほど大きくなるパラメータであれば、特に、限定されない。例えば、インバランス判定用パラメータは、以下に列挙するようなパラメータであってもよい。
【００２３】
（Ｐ１）インバランス判定用パラメータは、前記上流側空燃比センサの出力値の軌跡長であってもよい。
【００２４】
（Ｐ２）インバランス判定用パラメータは、前記上流側空燃比センサの出力値の変化率に応じた値（上流側空燃比センサの出力値の時間についての微分値、又は、上流側空燃比センサの出力値により表される空燃比の時間についての微分値）の絶対値（大きさ）であってもよい。
【００２５】
空燃比気筒間インバランス状態が発生している場合、正常気筒からの排ガスが上流側空燃比センサに到達しているときに、異常気筒（インバランス気筒）からの排ガスが上流側空燃比センサに新たに到達すると、上流側空燃比センサの出力値は急激に変化する。更に、異常気筒からの排ガスが上流側空燃比センサに到達しているときに、正常気筒からの排ガスが上流側空燃比センサに新たに到達すると、上流側空燃比センサの出力値は急激に変化する。従って、上流側空燃比センサの出力値の変化率に応じた値の絶対値は、空燃比気筒間インバランス状態が発生すると、増大する。更に、上流側空燃比センサの出力値の変化率に応じた値の絶対値は、気筒別空燃比の間の不均衡の程度が大きいほど大きくなる。それ故、上流側空燃比センサの出力値の変化率に応じた値の絶対値は、インバランス判定用パラメータとして使用することができるパラメータとなる。
【００２６】
（Ｐ３）インバランス判定用パラメータは、前記上流側空燃比センサの出力値の変化率の変化率に応じた値（上流側空燃比センサの出力値の時間に関する二階微分値、又は、上流側空燃比センサの出力値により表される空燃比の時間に関する二階微分値）の絶対値（大きさ）であってもよい。
【００２７】
（Ｐ４）インバランス判定用パラメータは、「前記上流側空燃比センサの出力値を機関回転速度、機関のクランク角及び吸入空気量等に基づいて分析することによって推定される気筒別空燃比」の間の差の大きさ（例えば、気筒別空燃比のうちの最大値と最小値との差の絶対値等）であってもよい。
【００２８】
（Ｐ５）インバランス判定用パラメータは、前記触媒を通過する前後の水素Ｈ２の量の差に応じた値であってもよい。この値は、少なくとも上流側空燃比センサの出力値を用いて取得され得る（例えば、特開２００９−３０４５５号公報を参照。）。
【００２９】
空燃比気筒間インバランス状態が発生すると、仮に上述した空燃比フィードバック制御が実行されていても、気筒別空燃比が「理論空燃比よりもリッチ側に比較的大きく偏移した空燃比」となる気筒が発生する。更に、そのリッチ側の空燃比は、気筒別空燃比の間の不均衡の程度が大きいほど、よりリッチ側の空燃比になる。一方、水素Ｈ２、炭化水素ＨＣ及び一酸化炭素ＣＯ等の未燃物は、燃焼される混合気の空燃比が理論空燃比よりもリッチ側の空燃比であって理論空燃比から遠ざかるほど、二次関数的に増大する（図９を参照。）。従って、空燃比気筒間インバランス状態が発生して気筒別空燃比の間の不均衡の程度が大きくなるほど、水素Ｈ２、炭化水素ＨＣ及び一酸化炭素ＣＯ等の未燃物がより多く発生する。
【００３０】
水素Ｈ２は、炭化水素ＨＣ及び一酸化炭素ＣＯ等に比べて小さい分子である。従って、水素Ｈ２は他の未燃物（ＨＣ，ＣＯ）に比較して、上流側空燃比センサの拡散抵抗層を迅速に拡散する。このため、ＨＣ，ＣＯ及びＨ２からなる未燃物が多量に発生すると、拡散抵抗層において水素の選択的拡散（優先的な拡散）が顕著に発生する。即ち、水素Ｈ２は、空燃比検出素子の表面に「他の未燃物（ＨＣ，ＣＯ）」よりも多量に到達するようになる。この結果、水素Ｈ２の濃度と他の未燃物（ＨＣ，ＣＯ）の濃度とのバランスが崩れる。換言すると、「上流側空燃比センサの空燃比検出素子に到達した排ガス」に含まれる全未燃成分に対する水素Ｈ２の割合は、「機関の燃焼室から排出された排ガス」に含まれる全未燃成分に対する水素Ｈ２の割合よりも大きくなる。
【００３１】
いま、空燃比気筒間インバランス状態は発生していないが、総ての気筒の空燃比が一律に理論空燃比よりもリッチ側の所定空燃比ＡＦとなっていて、そのときに燃焼室から排出されて上流側空燃比センサの拡散抵抗層に到達する水素の量が所定量Ｓであると仮定する。この場合、機関全体に供給される混合気の空燃比の平均値は所定空燃比ＡＦである。これに対し、空燃比気筒間インバランス状態が発生すると、特定の気筒から水素が多量に発生するから、機関全体に供給される混合気の空燃比の平均値が「所定空燃比ＡＦよりもリーン側の空燃比」であるとき、上流側空燃比センサの拡散抵抗層に到達する水素の量は所定量Ｓとなる。
【００３２】
このため、上流側空燃比センサの出力値は、気筒別空燃比の間の不均衡の程度が大きくなるほど、実際の排ガスの空燃比の平均値よりも「よりリッチ側の空燃比」を示す値となる。一方、水素は触媒によって浄化されるので、触媒の下流側の排ガスの空燃比は、実際の排ガスの空燃比の平均値を表す。従って、前記上流側空燃比センサの出力値と、触媒の下流側に配設された下流側空燃比センサの出力値と、に基づけば、前記触媒を通過する前後の水素Ｈ２の量の差に応じた値を得ることができ、その値は「気筒別空燃比の間の不均衡の程度が大きいほど大きくなるインバランス判定用パラメータ」として使用することができる。
【００３３】
加えて、前記インバランス判定手段は、「前記所定の閾値及び前記インバランス判定用パラメータ」の少なくとも一方を、前記機関の圧縮比に応じて変更する（前記機関の圧縮比に基づいて決定する）ように構成されている。
【００３４】
上述したように、機関の圧縮比が高くなるほど、燃焼室において発生する水素の量は増大する。従って、空燃比気筒間インバランス状態が発生した場合、機関の圧縮比が高いと、気筒別空燃比の間の不均衡の程度が小さくても、エミッションが悪化する。そこで、上記インバランス判定手段のように、「前記所定の閾値及び前記インバランス判定用パラメータ」の少なくとも一方を、前記機関の圧縮比に基づいて決定すれば、エミッションが悪化する前の時点にて「空燃比気筒間インバランス状態が発生した」と判定することができ、必要に応じ警告を行うことも可能となる。
【００３５】
この場合、前記インバランス判定手段は、
前記所定の閾値を、前記インバランス判定用パラメータが同所定の閾値を超える値となった場合に前記触媒から流出する未燃物の量が前記圧縮比に関わらず一定の許容限界量となるように、前記機関の圧縮比に基づいて決定することが好適である。
【００３６】
これによれば、機関の圧縮比がどのような圧縮比であっても、前記触媒から流出する未燃物の量が一定許容限界量を超えない時点にて、「空燃比気筒間インバランス状態が発生した」と判定することができる。
【００３７】
前記圧縮比変更手段は、機械圧縮比を変更するものであってもよい。
即ち、前記圧縮比変更出力値は、
「前記機関のピストンが上死点位置にあるときの燃焼室容積」に対する「同ピストンが下死点位置にあるときの燃焼室容積」の比である機械圧縮比、を指示信号に応答して変更する圧縮比変更機構と、
前記機関の実際の機械圧縮比を前記機関の運転状態に応じて定まる目標機械圧縮比に一致させるための指示信号を前記圧縮比変更機構に与える圧縮比制御手段と、
を含むことができる。
【００３８】
この場合、
前記インバランス判定手段は、
前記機関の実際の機械圧縮比を検出する機械圧縮比検出センサを含み、
前記機械圧縮比センサにより検出された実際の機械圧縮比に基づいて前記所定の閾値を決定するように構成されてもよい。
【００３９】
これによれば、圧縮比変更機構に与える指示信号によって達成しようとしている機械圧縮比と、実際に達成されている機械圧縮比と、の間に差が生じている場合であっても、前記所定の閾値を「実際の機械圧縮比」に基づいて適切に決定することができる。
【００４０】
更に、本判定装置は、
前記圧縮比が第１の圧縮比であるとき「前記上流側空燃比センサの出力値と空燃比との関係を規定する第１の関係（第１の空燃比変換テーブル）」に「前記上流側空燃比センサの実際の出力値に基づく値」を適用することによりフィードバック制御用空燃比を取得し、前記圧縮比が前記第１の圧縮比と異なる第２の圧縮比であるとき「前記第１の空燃比変換テーブルとは異なる関係（空燃比変換テーブル）であって前記上流側空燃比センサの出力値と空燃比との関係を規定する第２の関係（第２の空燃比変換テーブル）」に「前記上流側空燃比センサの実際の出力値に基づく値」を適用することにより、フィードバック制御用空燃比を取得するフィードバック制御用空燃比取得手段と、
前記取得されたフィードバック制御用空燃比が所定の目標空燃比と一致するように前記噴射される燃料の量を変更する燃料噴射量補正手段と、
を備えていることが好適である。
【００４１】
これによれば、圧縮比が変化したことに伴って生じる「上流側空燃比センサの出力値により表される空燃比と、上流側空燃比センサの配設部位に実際に到達している空燃比（即ち、実際の混合気の空燃比）と、の差」を小さくすることができる。その結果、空燃比気筒間インバランス状態が発生しているか否かに関わらず、エミッションを更に良好に維持することができる。
【図面の簡単な説明】
【００４２】
【図１】図１は、本発明の第１実施形態に係る空燃比気筒間インバランス判定装置（第１判定装置）が適用される内燃機関の概略図である。
【図２】図２は、図１に示した機関の本体部の概略断面図である。
【図３】図３は、図１に示した上流側空燃比センサ（空燃比センサ）の部分概略斜視図（透視図）である。
【図４】図４は、図１に示した上流側空燃比センサの部分断面図である。
【図５】図５（Ａ）、（Ｂ）及び（Ｃ）は、図１に示した上流側空燃比センサが備える空燃比検出素子の概略断面図である。
【図６】図６は、排ガスの空燃比と上流側空燃比センサの限界電流値との関係を示したグラフである。
【図７】図７は、排ガスの空燃比と上流側空燃比センサの出力値との関係を示したグラフである。
【図８】図８は、排ガスの空燃比と図１に示した下流側空燃比センサの出力値との関係を示したグラフである。
【図９】図９は、ある気筒に供給された混合気の空燃比と、その気筒から排出される未燃成分と、の関係を示したグラフである。
【図１０】図１０は、空燃比気筒間インバランス割合とサブＦＢ学習値（インバランス判定用パラメータ、水素量差指示パラメータ）との関係を示したグラフである。
【図１１】図１１は、機械圧縮比と水素の発生量との関係を示したグラフである。
【図１２】図１２は、空燃比気筒間インバランス割合とエミッション（未燃物又は窒素酸化物）の排出量との関係を示したグラフである。
【図１３】図１３は、図１に示した電気制御装置のＣＰＵが実行する燃料噴射制御ルーチンを示したフローチャートである。
【図１４】図１４は、図１に示した電気制御装置のＣＰＵがメインフィードバック量を算出するために実行するルーチンを示したフローチャートである。
【図１５】図１５は、図１に示した電気制御装置のＣＰＵがサブフィードバック量及びサブＦＢ学習値を算出するために実行するルーチンを示したフローチャートである。
【図１６】図１６は、図１に示した電気制御装置のＣＰＵが空燃比気筒間インバランス判定を行うために実行するルーチンを示したフローチャートである。
【図１７】図１７は、本発明の第２実施形態に係る空燃比気筒間インバランス判定装置のＣＰＵが空燃比気筒間インバランス判定を行うために実行するルーチンを示したフローチャートである。
【図１８】図１８は、本発明の第３実施形態に係る空燃比気筒間インバランス判定装置のＣＰＵが空燃比気筒間インバランス判定を行うために実行するルーチンを示したフローチャートである。
【図１９】図１９は、本発明の第４実施形態に係る空燃比気筒間インバランス判定装置のＣＰＵが空燃比気筒間インバランス判定を行うために実行するルーチンを示したフローチャートである。
【図２０】図２０は、本発明の変形例に係る空燃比気筒間インバランス判定装置のＣＰＵが参照する空燃比変換テーブルを示した図である。
【図２１】図２１は、本発明の変形例に係る空燃比気筒間インバランス判定装置のＣＰＵが空燃比気筒間インバランス判定を行うために実行するルーチンを示したフローチャートである。
【図２２】図２２は、種々のインバランス判定用パラメータを説明するための図である。
【発明を実施するための形態】
【００４３】
以下、本発明の各実施形態に係る多気筒内燃機関の空燃比気筒間インバランス判定装置について図面を参照しながら説明する。この装置は、内燃機関の空燃比を制御する空燃比制御装置の一部であり、燃料噴射量を制御する燃料噴射量制御装置でもある。
【００４４】
＜第１実施形態＞
（構成）
図１及び図２は、本発明の第１実施形態に係る多気筒内燃機関の空燃比気筒間インバランス判定装置（以下、単に「第１判定装置」と称呼する。）が適用される内燃機関１０の概略構成を示している。機関１０は、４サイクル・火花点火式・多気筒（本例において４気筒）・ガソリン燃料・可変圧縮比機関である。機関１０は、本体部２０、吸気系統３０及び排気系統４０を備えている。
【００４５】
本体部２０は、図２に示したように、固定部２０Ａ、可動部２０Ｂ及び圧縮比変更機構２０Ｃを含んでいる。なお、図２は特定の気筒の断面を示しているが、他の気筒も同様な構成を備えている。
【００４６】
固定部２０Ａは、クランクケース２０１と、オイルパン２０２とを含んでいる。
【００４７】
クランクケース２０１は、クランク軸２０３を回転可能に支持している。オイルパン２０２は、クランクケース２０１の下方（下部）においてクランクケース２０１に固定されている。オイルパン２０２は、クランクケース２０１とともに、クランク軸２０３及び潤滑油等を収容する空間を形成している。
【００４８】
可動部２０Ｂは、クランクケース２０１の上方に配置されたシリンダブロック２０４と、シリンダブロック２０４の上部に配置されたシリンダヘッド２０５と、を備えている。
【００４９】
シリンダブロック２０４は、クランクケース２０１の上部に固定された側壁２０６の内側面に沿って摺動できるようになっている。シリンダブロック２０４は、中空円筒状のシリンダ（シリンダボア）２０４ａを複数個（４気筒分）備えている。ピストン２０４ｂは略円筒形であり、シリンダ２０４ａに収容されている。ピストン２０４ｂは、コネクティングロッド２０４ｃによってクランク軸２０３に連結されている。シリンダブロック２０４は、後述するように、クランクケース２０１に対してシリンダ２０４ａの軸線ＣＣ方向（以下、「上下方向」とも称呼する。）に移動することにより、機関１０の機械圧縮比を変更するようになっている。なお、機械圧縮比は、「ピストン２０４ｂが上死点位置にあるときの燃焼室容積に対するピストン２０４ｂが下死点位置にあるときの燃焼室容積の比」として定義される。
【００５０】
シリンダヘッド２０５はシリンダブロック２０４に固定されている。シリンダヘッド２０５には、燃焼室２１の上面を形成するシリンダヘッド下面２０５ａ、燃焼室２１に連通する吸気ポート２２、及び、燃焼室２１に連通する排気ポート２３が形成されている。
【００５１】
更に、シリンダヘッド２０５は、吸気ポート２２を開閉する吸気弁２２ａ、吸気弁２２ａを駆動するインンテークカムを備えるインテークカムシャフト２２ｂ、排気ポート２３を開閉する排気弁２３ａ、排気弁２３ａを駆動するエグゾーストカムを備えるエグゾーストカムシャフト２３ｂ、及びイグニッションコイルを含むイグナイタに連結された点火プラグ２４等を収容している。点火プラグ２４は、その火花発生部が燃焼室２１の中央部であってシリンダヘッド部の下面近傍位置に露呈するように配設されている。点火プラグ２４は、点火信号に応答して火花発生部から点火用火花を発生するようになっている。
【００５２】
圧縮比変更機構２０Ｃは、例えば、特開２００３−２０６７７１号公報、特開２００７−３０３４２３号公報、特開２００７−３２１５８９号公報及び特開２００４−２１８５２２号公報等に開示された機構と同様の機構を備える。圧縮比変更機構２０Ｃは、図２において、その機能を示すブロックにより示されている。
【００５３】
圧縮比変更機構２０Ｃは、シリンダブロック２０４とクランクケース２０１との間に介装された駆動部２０７と圧縮比変更機構のアクチュエータ２０８とを含んでいる。アクチュエータ２０８は電動モータである。駆動部２０７は、後述する電気制御装置６０（図１を参照。）からアクチュエータ２０８への駆動信号に応答して「シリンダ２０４ａの軸線ＣＣ方向（上下方向）」に伸縮する。この伸縮により、シリンダブロック２０４とクランクケース２０１との距離が変更され、その結果、機関１０の機械圧縮比が変更される。
【００５４】
再び、図１を参照すると、本体部２０には、吸気弁制御装置２６が設けられている。この吸気弁制御装置２６は、インテークカムシャフト（図示せず）とインテークカム（図示せず）との相対回転角度（位相角度）を油圧により調整・制御する周知の構成を備えている。吸気弁制御装置２６は、指示信号（駆動信号）に基いて作動し、吸気弁の開弁タイミング及び閉弁タイミングを変更することができるようになっている。吸気弁制御装置２６は、圧縮行程中の吸気弁閉弁タイミングを変更することにより、混合気の実質的な圧縮が開始される時点を変更し、その圧縮開始時点における燃焼室容積を変更することにより、機関１０の実圧縮比を変更するようになっている。
【００５５】
本体部２０には燃料噴射弁（インジェクタ）２５が固定されている。燃料噴射弁２５は、各吸気ポート２２に一つずつ設けられている。燃料噴射弁２５は、噴射指示信号に応答し、正常である場合に「その噴射指示信号に含まれる指示噴射量の燃料」を対応する吸気ポート２２内に噴射するようになっている。このように、複数の気筒２１のそれぞれは、他の気筒とは独立して燃料供給を行う燃料噴射弁２５を備えている。
【００５６】
吸気系統３０は、インテークマニホールド３１、吸気管３２、エアフィルタ３３、スロットル弁３４及びスロットル弁アクチュエータ３４ａを備えている。
【００５７】
インテークマニホールド３１は、各吸気ポート２２に接続された複数の枝部と、それらの枝部が集合したサージタンク部と、を備えている。吸気管３２はサージタンク部に接続されている。インテークマニホールド３１、吸気管３２及び複数の吸気ポート２２は、吸気通路を構成している。エアフィルタ３３は吸気管３２の端部に設けられている。スロットル弁３４はエアフィルタ３３とインテークマニホールド３１との間の位置において吸気管３２に回動可能に取り付けられている。スロットル弁３４は、回動することにより吸気管３２が形成する吸気通路の開口断面積を変更するようになっている。スロットル弁アクチュエータ３４ａは、ＤＣモータからなり、指示信号（駆動信号）に応答してスロットル弁３４を回動させるようになっている。
【００５８】
排気系統４０は、エキゾーストマニホールド４１、エキゾーストパイプ（排気管）４２、上流側触媒４３及び下流側触媒４４を備えている。
【００５９】
エキゾーストマニホールド４１は、各排気ポート２３に接続された複数の枝部４１ａと、それらの枝部４１ａが集合した集合部（排気集合部）４１ｂと、からなっている。エキゾーストパイプ４２は、エキゾーストマニホールド４１の集合部４１ｂに接続されている。エキゾーストマニホールド４１、エキゾーストパイプ４２及び複数の排気ポート２３は、排ガスが通過する通路を構成している。なお、本明細書において、エキゾーストマニホールド４１の集合部４１ｂ及びエキゾーストパイプ４２を、便宜上、「排気通路」と称呼する。
【００６０】
上流側触媒４３は、セラミックからなる担持体に「触媒物質である貴金属」及び「セリア（ＣｅＯ２）」を担持していて、酸素吸蔵・放出機能（酸素吸蔵機能）を有する三元触媒である。上流側触媒４３はエキゾーストパイプ４２に配設（介装）されている。上流側触媒４３は所定の活性温度に到達すると、「未燃物（ＨＣ、ＣＯ及びＨ２等）と窒素酸化物（ＮＯｘ）とを同時に浄化する触媒機能」及び「酸素吸蔵機能」を発揮する。
【００６１】
下流側触媒４４は、上流側触媒４３と同様の三元触媒である。下流側触媒４４は、上流側触媒４３よりも下流においてエキゾーストパイプ４２に配設（介装）されている。
【００６２】
第１判定装置は、熱線式エアフローメータ５１、スロットルポジションセンサ５２、水温センサ５３、クランク角センサ５４、インテークカムポジションセンサ５５、ストロークセンサ５６、上流側空燃比センサ５７、下流側空燃比センサ５８、及び、アクセル開度センサ５９等を備えている。
【００６３】
熱線式エアフローメータ５１は、吸気管３２内を流れる吸入空気の質量流量を検出し、その質量流量（機関１０の単位時間あたりの吸入空気量）Ｇａを表す信号を出力するようになっている。
【００６４】
スロットルポジションセンサ５２は、スロットル弁３４の開度を検出し、スロットル弁開度ＴＡを表す信号を出力するようになっている。
【００６５】
水温センサ５３は、内燃機関１０の冷却水の温度を検出し、冷却水温ＴＨＷを表す信号を出力するようになっている。
【００６６】
クランク角センサ５４は、クランク軸２０３が１０度回転する毎に幅狭のパルスを有するとともに同クランク軸が３６０°回転する毎に幅広のパルスを有する信号を出力するようになっている。この信号は、後述する電気制御装置６０によって機関回転速度ＮＥに変換される。
【００６７】
インテークカムポジションセンサ５５は、インテークカムシャフトが所定角度から９０度、次いで９０度、更に１８０度回転する毎に一つのパルスを出力するようになっている。電気制御装置６０は、クランク角センサ５４及びインテークカムポジションセンサ５５からの信号に基いて、特定気筒（例えば第１気筒＃１）の圧縮上死点を基準とした絶対クランク角を取得するようになっている。
【００６８】
ストロークセンサ５６は、図２に示したクランクケース２０１（例えば、クランクケース２０１の上端）と、図２に示したシリンダブロック２０４（例えば、シリンダブロック２０４の下端）と、の距離を計測し、その距離ＳＴを表す信号を出力するようになっている。電気制御装置６０は、距離ＳＴに基づいて「機関１０の機械圧縮比εａｃｔ」を取得するようになっている。従って、ストロークセンサ５６は機械圧縮比検出センサと称呼することもできる。
【００６９】
上流側空燃比センサ５７は、エキゾーストマニホールド４１の集合部４１ｂと上流側触媒４３との間の位置においてエキゾーストマニホールド４１及びエキゾーストパイプ４２の何れか（即ち、排気通路）に配設されている。上流側空燃比センサ５７は、例えば、特開平１１−７２４７３号公報、特開２０００−６５７８２号公報及び特開２００４−６９５４７号公報等に開示された「拡散抵抗層を備える限界電流式広域空燃比センサ」である。
【００７０】
上流側空燃比センサ５７は、図３及び図４に示したように、空燃比検出素子５７ａと、外側保護カバー５７ｂと、内側保護カバー５７ｃと、を有している。
【００７１】
外側保護カバー５７ｂは金属からなる中空円筒体である。外側保護カバー５７ｂは内側保護カバー５７ｃを覆うように、内側保護カバー５７ｃを内部に収容している。外側保護カバー５７ｂは、流入孔５７ｂ１をその側面に複数備えている。流入孔５７ｂ１は、排気通路を流れる排ガス（外側保護カバー５７ｂの外部の排ガス）ＥＸを外側保護カバー５７ｂの内部に流入させるための貫通孔である。更に、外側保護カバー５７ｂは、外側保護カバー５７ｂの内部の排ガスを外部（排気通路）に流出させるための流出孔５７ｂ２をその底面に有している。
【００７２】
内側保護カバー５７ｃは、金属からなり、外側保護カバー５７ｂの直径よりも小さい直径を有する中空円筒体である。内側保護カバー５７ｃは、空燃比検出素子５７ａを覆うように空燃比検出素子５７ａを内部に収容している。内側保護カバー５７ｃは流入孔５７ｃ１をその側面に複数備えている。この流入孔５７ｃ１は、外側保護カバー５７ｂの流入孔５７ｂ１を通して「外側保護カバー５７ｂと内側保護カバー５７ｃとの間の空間」に流入した排ガスを、内側保護カバー５７ｃの内部に流入させるため貫通孔である。更に、内側保護カバー５７ｃは、内側保護カバー５７ｃの内部の排ガスを外部に流出させるための流出孔５７ｃ２をその底面に有している。
【００７３】
上流側空燃比センサ５５は、「外側保護カバー５７ｂの中心軸Ｃｇが排ガスの流れの向きに直交し、外側保護カバー５７ｂの底面が排ガスの流れの向きに平行となるように」、配設されている。従って、図３及び図４の矢印Ａｒ１により示したように、排気通路を流れる排ガスＥＸは、外側の保護カバー５７ｂの流入孔５７ｂ１を通って「外側の保護カバー５７ｂと内側保護カバー５７ｃとの間」に流入する。次いで、その排ガスは、矢印Ａｒ２に示したように内側保護カバー５７ｃの流入孔５７ｃ１を通って「内側の保護カバー５７ｃの内部」に流入し、空燃比検出素子５７ａに到達する。その後、その排ガスは、矢印Ａｒ３に示したように「内側保護カバー５７ｃの流出孔５７ｃ２及び外側保護カバー５７ｂの流出孔５７ｂ２」を通って排気通路に流出する。
【００７４】
図５（Ａ）に示したように、空燃比検出素子５７ａは、固体電解質層５７１と、排ガス側電極層５７２と、大気側電極層５７３と、拡散抵抗層５７４と、隔壁部５７５と、ヒータ５７６と、を備えている。
【００７５】
図５（Ｂ）に示したように、排ガスの空燃比が理論空燃比よりもリーン側の空燃比であるとき、酸素ポンプ特性が利用されることにより空燃比が検出される。即ち、排ガスの空燃比が理論空燃比よりもリーン側の空燃比であるとき、排ガス中に多量に含まれる酸素分子が拡散抵抗層５７４を通って排ガス側電極層５７２に到達する。その酸素分子は電子を受け取って酸素イオンになる。酸素イオンは、固体電解質層５７１を通過し、大気側電極層５７３にて電子を放出して酸素分子になる。この結果、電源５７８の正極から、大気側電極層５７３、固体電解質層５７１及び排ガス側電極層５７２を介して電源５７８の負極へと電流Ｉが流れる。
【００７６】
この電流Ｉの大きさは、電源５７８による印加電圧Ｖの大きさを所定値Ｖｐ以上に設定したとき、拡散抵抗層５７４の外側表面に到達した排ガスに含まれる酸素分子のうち「拡散抵抗層５７４を通って排ガス側電極層５７２へと拡散によって到達する酸素分子」の量に応じて変化する。即ち、電流Ｉの大きさは、排ガス側電極層５７２における酸素濃度（酸素分圧）に応じて変化する。排ガス側電極層５７２における酸素濃度は、拡散抵抗層５７４の外側表面に到達した排ガスの酸素濃度に応じて変化する。この電流Ｉは、図６に示したように、電圧Ｖを所定値Ｖｐ以上に設定しても変化しないから、限界電流Ｉｐと呼ばれる。空燃比センサ５７は、この限界電流Ｉｐ値に基いて空燃比に応じた値を出力する。
【００７７】
これに対し、排ガスの空燃比が理論空燃比よりもリッチ側の空燃比であるとき、図５（Ｃ）に示したように、酸素電池特性が利用されることにより空燃比が検出される。より具体的に述べると、排ガスの空燃比が理論空燃比よりもリッチ側の空燃比であるとき、排ガス中に多量に含まれる未燃物（ＨＣ，ＣＯ及びＨ２等）が拡散抵抗層５７４を通って排ガス側電極層５７２に到達する。この場合、大気側電極層５７３における酸素濃度と排ガス側電極層５７２における酸素濃度との差（酸素分圧差）が大きくなるので、固体電解質層５７１は酸素電池として機能する。印加電圧Ｖは、この酸素電池の起電力よりも小さい値に設定されている。
【００７８】
従って、大気室５７７に存在する酸素分子は大気側電極層５７３にて電子を受け取って酸素イオンとなる。その酸素イオンは、固体電解質層５７１を通過し、排ガス側電極層５７２へと移動する。そして、排ガス側電極層５７２にて未燃物を酸化し、電子を放出する。この結果、電源５７８の負極から、排ガス側電極層５７２、固体電解質層５７１及び大気側電極層５７３を介して電源５７８の正極へと電流Ｉが流れる。
【００７９】
この電流Ｉの大きさは、大気側電極層５７３から固体電解質層５７１を通って排ガス側電極層５７２に到達する酸素イオンの量により定まる。前述したように、この酸素イオンは排ガス側電極層５７２にて未燃物を酸化するために使用される。従って、拡散により拡散抵抗層５７４を通過して排ガス側電極層５７２に到達する未燃物の量が多いほど、固体電解質層５７１を通過する酸素イオンの量は多くなる。換言すると、空燃比が小さいほど（理論空燃比よりもリッチ側の空燃比であって未燃物の量が多いほど）、電流Ｉの大きさは大きくなる。但し、拡散抵抗層５７４の存在により、排ガス側電極層５７２に到達する未燃物の量は制限されるので、電流Ｉは空燃比に応じた一定値Ｉｐとなる。上流側空燃比センサ５７は、この限界電流値Ｉｐに基いて空燃比に応じた値を出力する。
【００８０】
このような検出原理に基づく上流側空燃比センサ５７は、図７に示したように、上流側空燃比センサ５７の配設位置を流れる排ガスの空燃比（上流側空燃比ａｂｙｆｓ）に応じた出力値Ｖａｂｙｆｓを出力する。出力値Ｖａｂｙｆｓは限界電流Ｉｐを電圧に変換することにより得られる。出力値Ｖａｂｙｆｓは被検出ガスの空燃比が大きくなるほど（リーンとなるほど）増大する。電気制御装置６０は、図７に示した空燃比変換テーブル（関係、マップ）Ｍａｐａｂｙｆｓを記憶していて、出力値Ｖａｂｙｆｓを空燃比変換テーブルＭａｐａｂｙｆｓに適用することにより、実際の上流側空燃比ａｂｙｆｓを検出する。この空燃比変換テーブルＭａｐａｂｙｆｓは、水素の選択的拡散も考慮して作成されている。換言すると、テーブルＭａｐａｂｙｆｓは、各気筒の空燃比を互いに等しい空燃比Ａに設定することにより、上流側空燃比センサ５７に到達する排ガスの空燃比を値Ａに設定した場合の「上流側空燃比センサ５７の実際の出力値Ｖａｂｙｆｓ」に基いて作成される。
【００８１】
再び、図１を参照すると、下流側空燃比センサ５８は、上流側触媒４３と下流側触媒４４との間の位置においてエキゾーストパイプ４２（即ち、排気通路）に配設されている。下流側空燃比センサ５８は、周知の濃淡電池型の酸素濃度センサ（Ｏ２センサ）である。下流側空燃比センサ５８は、例えば、図５（Ａ）に示した上流側空燃比センサ５７と同様な構成を備える（但し、電源５７８を除く。）。或いは、下流側空燃比センサ５８は、試験管状の固体電解質層と、固体電解質層の外側に形成された排ガス側電極層と、大気室（固体電解質層の内側）に露呈し且つ固体電解室層を挟んで排ガス側電極層と対向するように固体電解質層に形成された大気側電極層と、排ガス側電極層を覆い且つ排ガスが接触する（排ガス中に晒されるように配置される）拡散抵抗層と、を備えるものであってもよい。下流側空燃比センサ５８は、下流側空燃比センサ５８の配設位置を流れる排ガスの空燃比（下流側空燃比ａｆｄｏｗｎ）に応じた出力値Ｖｏｘｓを出力するようになっている。
【００８２】
下流側空燃比センサ５８の出力値Ｖｏｘｓは、図８に示したように、被検出ガスの空燃比が理論空燃比よりもリッチのとき最大出力値ｍａｘ（例えば、約０．９Ｖ）となり、被検出ガスの空燃比が理論空燃比よりもリーンのとき最小出力値ｍｉｎ（例えば、約０．１Ｖ）となり、被検出ガスの空燃比が理論空燃比であるとき最大出力値ｍａｘと最小出力値ｍｉｎの略中間の電圧Ｖｓｔ（中間電圧Ｖｓｔ、例えば、約０．５Ｖ）となる。更に、この出力値Ｖｏｘｓは、被検出ガスの空燃比が理論空燃比よりもリッチな空燃比からリーンな空燃比へと変化する際に最大出力値ｍａｘから最小出力値ｍｉｎへと急変し、被検出ガスの空燃比が理論空燃比よりもリーンな空燃比からリッチな空燃比へと変化する際に最小出力値ｍｉｎから最大出力値ｍａｘへと急変する。
【００８３】
図１に示したアクセル開度センサ５９は、運転者によって操作されるアクセルペダルＡＰの操作量を検出し、アクセルペダルＡＰの操作量Ａｃｃｐを表す信号を出力するようになっている。
【００８４】
電気制御装置６０は、「ＣＰＵ、ＲＯＭ、ＲＡＭ、バックアップＲＡＭ（又は、ＥＥＰＲＯＭ等の不揮発性メモリ）、並びに、ＡＤコンバータを含むインターフェース等」からなる「周知のマイクロコンピュータ」である。
【００８５】
バックアップＲＡＭは、機関１０を搭載した車両の図示しないイグニッション・キー・スイッチの位置（オフ位置、始動位置及びオン位置等の何れか）に関わらず、車両に搭載されたバッテリから電力の供給を受けるようになっている。バックアップＲＡＭは、バッテリから電力の供給を受けている場合、ＣＰＵの指示に応じてデータを格納する（データが書き込まれる）とともに、そのデータを読み出し可能となるように保持（記憶）する。バックアップＲＡＭは、バッテリが車両から取り外される等によりバッテリからの電力供給が遮断されると、データを保持することができない。そこで、ＣＰＵは、バックアップＲＡＭへの電力供給が再開されたとき、バックアップＲＡＭに保持されるべきデータを初期化（デフォルト値に設定）するようになっている。
【００８６】
電気制御装置６０のインターフェースは、前記センサ５１〜５９と接続され、ＣＰＵにセンサ５１〜５９からの信号を供給するようになっている。更に、そのインターフェースは、ＣＰＵの指示に応じて、各気筒の点火プラグ２４、各気筒の燃料噴射弁２５、吸気弁制御装置２６、スロットル弁アクチュエータ３４ａ及び圧縮比変更機構のアクチュエータ２０８等に指示信号（駆動信号）等を送出するようになっている。なお、電気制御装置６０は、取得されたアクセルペダルの操作量Ａｃｃｐが大きくなるほどスロットル弁開度ＴＡが大きくなるように、スロットル弁アクチュエータ３４ａに指示信号を送出するようになっている。更に、電気制御装置６０は、機関１０の負荷ＫＬ（後述）が所定値以上の場合に機関１０の機械圧縮比が第１の機械圧縮比となるように圧縮比変更機構のアクチュエータ２０８に指示信号を送出し、機関１０の負荷ＫＬが所定値未満の場合に機関１０の機械圧縮比が第２の機械圧縮比となるように圧縮比変更機構のアクチュエータ２０８に指示信号を送出している。本例において、第１の機械圧縮比は第２の機械圧縮比よりも小さい。但し、第１の機械圧縮比及び第２の機械圧縮比の大小関係は機関１０の特性により適宜設定される。
【００８７】
（空燃比気筒間インバランス判定の原理）
次に、上記第１判定装置による「空燃比気筒間インバランス判定」の原理について説明する。空燃比気筒間インバランス判定とは、気筒間における空燃比の不均一性が「圧縮比に基づいて定まる所定値」以上となったか否か、換言すると、気筒別空燃比の間にエミッションの大幅な悪化を招く虞のある顕著な不均衡が生じているか否か、を判定することである。
【００８８】
機関１０の燃料は炭素と水素との化合物である。従って、燃料が燃焼して水Ｈ２Ｏと二酸化炭素ＣＯ２へと変化する過程において、「炭化水素ＨＣ、一酸化炭素ＣＯ及び水素Ｈ２等」の未燃物が中間生成物として生成される。
【００８９】
燃焼に供される混合気の空燃比が理論空燃比よりも小さくなるほど（即ち、空燃比が理論空燃比よりもリッチ側の空燃比になるほど）、燃料が完全燃焼するために必要な酸素の量と実際の酸素の量との差が増大する。換言すると、リッチ側の空燃比になるほど燃焼途中における酸素の不足量が増大し、酸素濃度が低下するから、中間生成物（未燃物）が酸素と出合って結合する（酸化される）確率が急激に小さくなる。この結果、図９に示したように、気筒から排出される未燃物（ＨＣ、ＣＯ及びＨ２）の量は、気筒に供給される混合気の空燃比がリッチ側の空燃比になるほど急激に（二次関数的に）増大する。なお、図９の点Ｐ１、点Ｐ２及び点Ｐ３は、ある気筒に供給される燃料の量が、その気筒の空燃比が理論空燃比に一致する場合の燃料の量に対して、それぞれ１０％（＝ＡＦ１）、３０％（＝ＡＦ２）及び４０％（＝ＡＦ３）だけ過剰となった点を示す。
【００９０】
更に、水素Ｈ２は、炭化水素ＨＣ及び一酸化炭素ＣＯ等に比べて小さい分子である。従って、水素Ｈ２は他の未燃物（ＨＣ，ＣＯ）に比較して、上流側空燃比センサ５７の拡散抵抗層５７４を迅速に拡散する。このため、ＨＣ，ＣＯ及びＨ２からなる未燃物が多量に発生すると、拡散抵抗層５７４において水素Ｈ２の選択的拡散（優先的な拡散）が顕著に発生する。即ち、水素Ｈ２は、空燃比検出素子の表面（固体電解質層５７１の表面に形成された排ガス側電極層５７２）に「他の未燃物（ＨＣ，ＣＯ）」よりも多量に到達するようになる。この結果、水素Ｈ２の濃度と他の未燃物（ＨＣ，ＣＯ）の濃度とのバランスが崩れる。換言すると、「上流側空燃比センサ５７の空燃比検出素子（排ガス側電極層５７２）に到達した排ガス」に含まれる全未燃成分に対する水素Ｈ２の割合は、「機関１０の各燃焼室２１から排出された排ガス」に含まれる全未燃成分に対する水素Ｈ２の割合よりも大きくなる。
【００９１】
ところで、上記第１判定装置は空燃比制御装置の一部である。空燃比制御装置は、「上流側空燃比センサ５７の出力値Ｖａｂｙｆｓにより表される上流側空燃比ａｂｙｆｓ（出力値Ｖａｂｙｆｓに相当する空燃比）」を「上流側目標空燃比ａｂｙｆｒ」に一致させる「空燃比のフィードバック制御（メインフィードバック制御）」を行う。一般に、上流側目標空燃比ａｂｙｆｒは理論空燃比ｓｔｏｉｃｈに設定される。
【００９２】
更に、空燃比制御装置は、下流側空燃比センサ５８の出力値Ｖｏｘｓ（又は、下流側空燃比センサの出力値Ｖｏｘｓにより表される下流側空燃比ａｆｄｏｗｎ）を下流側目標値Ｖｏｘｓｒｅｆ（又は、下流側目標値Ｖｏｘｓｒｅｆにより表される下流側目標空燃比）に一致させる「空燃比のサブフィードバック制御」を行う。一般に、下流側目標値Ｖｏｘｓｒｅｆは理論空燃比に相当する値（０．５Ｖ）に設定される。
【００９３】
いま、空燃比気筒間インバランスが発生していない状態において、各気筒の空燃比が一律にリッチ側に偏移した場合を想定する。このような状態は、例えば、燃料噴射量を算出する際の基本量となる「機関の吸入空気量の測定値又は推定値」が「真の吸入空気量」よりも大きくなったとき等において発生する。
【００９４】
この場合、例えば、各気筒の空燃比が図９に示したＡＦ２であった仮定する。ある気筒の空燃比がＡＦ２であると、ある気筒の空燃比がＡＦ２よりも理論空燃比に近い空燃比ＡＦ１である場合に比べ、より多くの未燃物（従って、水素Ｈ２）が排ガスに含まれる（点Ｐ１及び点Ｐ２を参照。）。従って、上流側空燃比センサ５７の拡散抵抗層５７４において「水素Ｈ２の選択的拡散」が発生する。
【００９５】
しかしながら、この場合、「各気筒が一回の燃焼行程を終了する間（クランク角７２０度に相当する期間）に機関１０に供給される混合気」の空燃比の真の平均値もＡＦ２である。更に、上述したように、図７に示した空燃比変換テーブルＭａｐａｂｙｆｓは、「水素Ｈ２の選択的拡散」を考慮して作成されている。従って、上流側空燃比センサ５７の実際の出力値Ｖａｂｙｆｓにより表される上流側空燃比ａｂｙｆｓ（実際の出力値Ｖａｂｙｆｓを空燃比変換テーブルＭａｐａｂｙｆｓに適用することにより得られる上流側空燃比ａｂｙｆｓ）は、上記「空燃比の真の平均値ＡＦ２」に一致する。
【００９６】
それ故、メインフィードバック制御により、機関１０全体に供給される混合気の空燃比は「上流側目標空燃比ａｂｙｆｒである理論空燃比」に一致するように修正され、空燃比気筒間インバランスは発生していないから、各気筒の空燃比も理論空燃比に略一致する。従って、サブフィードバック量（及び後述するサブフィードバック量の学習値）は、空燃比の補正を大きく行う値となることはない。即ち、空燃比気筒間インバランスが発生していない場合、サブフィードバック量（及び後述するサブフィードバック量の学習値）は、空燃比の補正を大きく行う値とならない。
【００９７】
上述した「空燃比気筒間インバランスが発生していない場合」における各値の挙動について、以下に別の説明を行う。
【００９８】
例えば、機関１０の各気筒に吸入される空気量（重量）がＡ０であり、各気筒に供給される燃料量（重量）がＦ０であるとき、空燃比Ａ０／Ｆ０が理論空燃比（例えば、１４．５）であると仮定する。
【００９９】
そして、吸入空気量の推定誤差等に起因して、各気筒に対して供給（噴射）される燃料量が均等に１０％だけ過剰となったと仮定する。即ち、各気筒に１．１・Ｆ０の燃料が供給されたと仮定する。このとき、４気筒エンジンである機関１０に供給される空気量の総量（各気筒がそれぞれ一回の燃焼行程を終了する間に機関１０全体に供給される空気量）は４・Ａ０である。また、機関１０に供給される燃料量の総量（各気筒がそれぞれ一回の燃焼行程を終了する間に機関１０全体に供給される燃料の量）は４．４・Ｆ０（＝１．１・Ｆ０＋１．１・Ｆ０＋１．１・Ｆ０＋１．１・Ｆ０）である。よって、機関１０全体に供給される混合気の空燃比の真の平均値は、４・Ａ０／（４．４・Ｆ０）＝Ａ０／（１．１・Ｆ０）となる。このとき、上流側空燃比センサの出力値は、空燃比Ａ０／（１．１・Ｆ０）に応じた出力値となる。
【０１００】
従って、メインフィードバック制御により、各気筒に供給される燃料の量が１０％ずつ減量され（各気筒に１・Ｆ０の燃料が供給されるようになり）、機関１０全体に供給される混合気の空燃比は理論空燃比Ａ０／Ｆ０に一致させられる。
【０１０１】
これに対し、特定気筒の空燃比のみが大きくリッチ側にずれた場合を想定する。このような状況は、例えば、特定気筒に対して備えられている燃料噴射弁２５の噴射特性が「指示された燃料噴射量よりも相当に多い量の燃料を噴射する特性」になった場合に生じる。このような燃料噴射弁２５の異常は「燃料噴射弁のリッチずれ異常」とも称呼される。
【０１０２】
いま、ある一つの特定気筒に対して供給される燃料の量が４０％だけ過剰な量（即ち、１．４・Ｆ０）であり、残りの３気筒に対して供給される燃料の量はそれらの気筒の空燃比が理論空燃比と一致するような燃料の量（即ち、１・Ｆ０）であると仮定する。この場合、特定気筒の空燃比は図９に示した「ＡＦ３」であり、残りの気筒の空燃比は理論空燃比である。
【０１０３】
このとき、４気筒エンジンである機関１０に供給される空気量の総量（各気筒がそれぞれ一回の燃焼行程を終了する間に機関１０全体に供給される空気量）は４・Ａ０である。一方、機関１０に供給される燃料の総量（各気筒がそれぞれ一回の燃焼行程を終了する間に機関１０全体に供給される燃料の量）は４．４・Ｆ０（＝１．４・Ｆ０＋Ｆ０＋Ｆ０＋Ｆ０）である。
【０１０４】
従って、機関１０全体に供給される混合気の空燃比の真の平均値は、４・Ａ０／（４．４・Ｆ０）＝Ａ０／（１．１・Ｆ０）となる。即ち、この場合の機関１０全体に供給される混合気の空燃比の真の平均値は、上述した「各気筒に対して供給される燃料の量が均等に１０％だけ過剰である場合」と同じ値となる。
【０１０５】
しかしながら、前述したように、排ガス中の未燃物（ＨＣ、ＣＯ及びＨ２）の量は、気筒に供給される混合気の空燃比がリッチ側の空燃比になるほど急激に増大する。このため、「特定気筒に対して供給される燃料の量のみが４０％だけ過剰な量となった場合」に排ガスに含まれる水素Ｈ２の総量ＳＨ１は、図９によれば、ＳＨ１＝Ｈ３＋Ｈ０＋Ｈ０＋Ｈ０＝Ｈ３＋３・Ｈ０となる。これに対し、「各気筒に対して供給される燃料の量が均等に１０％だけ過剰となった場合」に排ガスに含まれる水素Ｈ２の総量ＳＨ２は、図９によれば、ＳＨ２＝Ｈ１＋Ｈ１＋Ｈ１＋Ｈ１＝４・Ｈ１となる。このとき、量Ｈ１は量Ｈ０よりも僅かに大きいが、量Ｈ１及び量Ｈ０は共に極めて微量である。即ち、量Ｈ１と量Ｈ０とは、量Ｈ３に比べた場合、互いに略等しいと言える。従って、水素総量ＳＨ１は水素総量ＳＨ２よりも極めて大きくなる（ＳＨ１＞＞ＳＨ２）。
【０１０６】
このように、機関１０全体に供給される混合気の空燃比の真の平均値が同一であっても、空燃比気筒間インバランスが発生した場合に排ガスに含まれる水素の総量ＳＨ１は、空燃比気筒間インバランスが発生していない場合に排ガスに含まれる水素の総量ＳＨ２よりも、顕著に大きくなる。
【０１０７】
従って、特定気筒に対して供給される燃料の量のみが４０％だけ過剰な量となった場合、上述した拡散抵抗層５７４における「水素Ｈ２の選択的拡散」に起因して、上流側空燃比センサの出力値Ｖａｂｙｆｓにより表される空燃比は「機関１０全体に供給される混合気の空燃比の真の平均値（Ａ０／（１．１・Ｆ０））」よりもリッチ側の空燃比（小さい空燃比）となる。つまり、排ガスの空燃比の平均値が同じであっても、空燃比気筒間インバランスが発生している場合には、空燃比気筒間インバランスが発生していない場合よりも、上流側空燃比センサ５７の排ガス側電極層５７２における水素Ｈ２の濃度が高くなるから、上流側空燃比センサ５７の出力値Ｖａｂｙｆｓは「空燃比の真の平均値」よりもリッチ側の空燃比を示す値となるのである。
【０１０８】
その結果、メインフィードバック制御により、機関１０全体に供給される混合気の空燃比の真の平均は、理論空燃比よりもリーン側に制御されてしまう。
【０１０９】
一方、下流側空燃比センサ５８には、上流側触媒４３を通過した排ガスが到達する。排ガスに含まれる水素Ｈ２は他の未燃物（ＨＣ，ＣＯ）とともに上流側触媒４３において酸化（浄化）される。従って、下流側空燃比センサ５８の出力値Ｖｏｘｓは、機関１０全体に供給される混合気の真の空燃比に応じた値となる。従って、サブフィードバック制御にて算出される空燃比の制御量（サブフィードバック量等）は、上記メインフィードバック制御による空燃比のリーン側への過補正を補う値となる。そして、このようなサブフィードバック量等により、機関１０の空燃比の真の平均値は理論空燃比に一致させられる。
【０１１０】
このように、サブフィードバック制御にて算出される空燃比の制御量（サブフィードバック量）は、燃料噴射弁２５のリッチずれ異常（空燃比気筒間インバランス）に起因する「空燃比のリーン側への過補正」を補償するような値となる。また、このリーン側への過補正の程度は、リッチずれ異常を起こした燃料噴射弁２５が「指示された噴射量」に比較してより多くの量の燃料を噴射するようになるほど（即ち、特定気筒の空燃比がリッチ側の空燃比になるほど）増大する。
【０１１１】
従って、サブフィードバック量が正の値であってその大きさが大きいほど「機関の空燃比がよりリッチ側へと補正されるシステム」においては、「サブフィードバック量に応じて変化する値（実際には、例えば、サブフィードバック量の定常成分を取り込んだサブフィードバック量の学習値）」は、空燃比気筒間インバランスの程度を示す値となる。
【０１１２】
かかる知見に基づき、第１判定装置は、サブフィードバック量に応じて変化する値（本例において、サブフィードバック量の学習値である「サブＦＢ学習値」）を、インバランス判定用パラメータとして取得する。つまり、インバランス判定用パラメータは「上流側触媒４３を通過する前の排ガスに含まれる水素の量と、上流側触媒４３を通過した後の排ガスに含まれる水素の量と、の差が大きいほど、大きくなる値」となる。従って、このインバランス判定用パラメータは、水素量差指示パラメータとも称呼される。
【０１１３】
そして、第１判定装置は、そのインバランス判定用パラメータが「所定の閾値」以上となった場合、空燃比気筒間インバランスが発生したと判定する。
【０１１４】
図１０の曲線Ｃ１及び曲線Ｃ２は、空燃比気筒間インバランスが発生して、ある一つの気筒の空燃比が理論空燃比からリッチ側又はリーン側に乖離した場合におけるサブＦＢ学習値（インバランス判定用パラメータである水素量差指示パラメータ）を示している。曲線Ｃ１は機械圧縮比が高い値である場合のサブＦＢ学習値を示し、曲線Ｃ２は機械圧縮比が低い値である場合のサブＦＢ学習値を示す。図１０に示したグラフの横軸は、「複数の気筒のそれぞれに供給される混合気の空燃比である気筒別空燃比の間の不均衡の程度」を示す「インバランス割合」である。インバランス割合とは、「理論空燃比Ｘに対する、理論空燃比Ｘとそのリッチ又はリーンずれした気筒の空燃比Ｙとの差（＝Ｘ−Ｙ）、の比（＝（Ｘ−Ｙ）／Ｘ）」のことである。
【０１１５】
前述したように、インバランス割合が大きくなるほど、水素Ｈ２の選択的拡散の影響が急激に大きくなる。更に、インバランス割合に関わらず、燃焼室２１からの水素Ｈ２の排出量は、図１１に示したように、機械圧縮比εが大きくなるほど大きくなる。その結果、図１０の曲線Ｃ１及び曲線Ｃ２によって示されるように、サブＦＢ学習値は、インバランス割合が大きくなるほど且つ圧縮比ε（機械圧縮比又は実圧縮比）が大きいほど増大する。
【０１１６】
なお、図１０に示したように、インバランス割合が負の値である場合においても、そのインバランス割合の絶対値が増大するほど、サブＦＢ学習値は増大する。即ち、例えば、一つの特定気筒の空燃比のみが大きくリーン側にずれるような空燃比気筒間インバランスが発生した場合にも、インバランス判定用パラメータとしてのサブＦＢ学習値（サブＦＢ学習値に応じた値）は増大する。このような状況は、例えば、特定気筒に対して備えられている燃料噴射弁２５の噴射特性が「指示された燃料噴射量よりも相当に少ない量の燃料を噴射する特性」になった場合に生じる。このような燃料噴射弁２５の異常は「燃料噴射弁のリーンずれ異常」とも称呼される。
【０１１７】
以下、一つの特定気筒の空燃比のみが大きくリーン側にずれるような空燃比気筒間インバランスが発生した場合にも、サブＦＢ学習値が増大する理由について簡単に説明する。以下の説明においても、機関１０の各気筒に吸入される空気量（重量）はＡ０であると仮定する。更に、各気筒に供給される燃料量（重量）がＦ０であるとき、空燃比Ａ０／Ｆ０は理論空燃比に一致すると仮定する。
【０１１８】
いま、ある一つの特定気筒（便宜上、第１気筒＃１とする。）に対して供給される燃料の量が４０％だけ過小な量（即ち、０．６・Ｆ０）であり、残りの３気筒（第２、第３及び第４気筒）に対して供給される燃料の量はそれらの気筒の空燃比が理論空燃比と一致するような燃料の量、即ちＦ０）となった場合を想定する。なお、この場合、失火は発生しないものと仮定している。
【０１１９】
この場合、メインフィードバック制御により、第１気筒＃１乃至第４気筒＃４に供給される燃料の量は同じ所定量（１０％）だけ増大されたと仮定する。このとき、第１気筒に供給される燃料の量は０．７・Ｆ０となり、第２乃至第４気筒のそれぞれに供給される燃料の量は１．１・Ｆ０となる。
【０１２０】
係る状態においては、４気筒エンジンである機関１０に供給される空気量の総量（各気筒がそれぞれ一回の燃焼行程を終了する間に機関１０全体に供給される空気量）は４・Ａ０である。また、メインフィードバック制御の結果、機関１０に供給される燃料量の総量（各気筒がそれぞれ一回の燃焼行程を終了する間に機関１０全体に供給される燃料の量）は４・Ｆ０（＝０．７・Ｆ０＋１．１・Ｆ０＋１．１・Ｆ０＋１．１・Ｆ０）となる。よって、機関１０全体に供給される混合気の空燃比の真の平均値は、４・Ａ０／（４・Ｆ０）＝Ａ０／Ｆ０、即ち、理論空燃比となっている。
【０１２１】
しかしながら、この状態における「排ガスに含まれる水素Ｈ２の総量ＳＨ３」は、ＳＨ３＝Ｈ４＋Ｈ１＋Ｈ１＋Ｈ１＝Ｈ４＋３・Ｈ１となる。但し、Ｈ４は、空燃比が理論空燃比よりもリーン側の空燃比Ａ０／（０．７・Ｆ０）であるときに発生する水素量であり、Ｈ０と略等しい。従って、総量ＳＨ３は、最大でも（Ｈ０＋３・Ｈ１）となる。
【０１２２】
これに対し、空燃比気筒間インバランスが発生しておらず且つ機関１０全体に供給される混合気の空燃比の真の平均値が理論空燃比である場合、「排ガスに含まれる水素Ｈ２の総量ＳＨ４」は、ＳＨ４＝Ｈ０＋Ｈ０＋Ｈ０＋Ｈ０＝４・Ｈ０となる。前述したように、Ｈ１はＨ０よりも僅かに大きい。従って、総量ＳＨ３（＝Ｈ０＋３・Ｈ１）は総量ＳＨ４（＝４・Ｈ０）よりも大きくなる。
【０１２３】
従って、「燃料噴射弁のリーンずれ異常」に起因する空燃比気筒間インバランスが発生している場合、メインフィードバック制御によって、機関１０全体に供給される混合気の空燃比の真の平均値が理論空燃比に移行されたときであっても、水素の選択的拡散の影響が上流側空燃比センサ５７の出力値Ｖａｂｙｆｓに表れる。即ち、出力値Ｖａｂｙｆｓを空燃比変換テーブルＭａｐａｂｙｆｓに適用することにより得られる上流側空燃比ａｂｙｆｓは、上流側目標空燃比ａｂｙｆｒである理論空燃比よりも「リッチ側（小さい）の空燃比」となる。その結果、メインフィードバック制御が更に実行され、機関１０全体に供給される混合気の空燃比の真の平均値は、理論空燃比よりもリーン側に補正されてしまう。
【０１２４】
従って、サブフィードバック制御にて算出される空燃比の制御量は、燃料噴射弁２５のリーンずれ異常（空燃比気筒間インバランス）に起因する「メインフィードバック制御による空燃比のリーン側への過補正」を補償するように増大する。よって、「サブフィードバック制御にて算出される空燃比の制御量」に基いて取得される「サブＦＢ学習値」は、インバランス割合が負の値であってインバランス割合の絶対値が増大するほど増大する。
【０１２５】
これにより、第１判定装置は、特定気筒の空燃比が「リッチ側にずれた場合」のみならず「リーン側にずれた場合」にも、サブＦＢ学習値の増減に応じて増減するインバランス判定用パラメータが「所定の閾値」以上となった場合に、空燃比気筒間インバランスが発生したと判定する。但し、一般には、サブＦＢ学習値が「所定の閾値」に達する前に失火が発生する（図１０の失火領域ＭＦを参照。）。このため、通常、失火検出により「特定気筒の空燃比が過度にリーン側にずれたこと」が先に検出される。
【０１２６】
ところで、図１２は、空燃比気筒間インバランス状態が発生した場合における、エミッション（未燃物又は窒素酸化物）の量を示したグラフである。このグラフにおいて、曲線Ｃ１は機械圧縮比が高い値である場合のエミッションの排出量を示し、曲線Ｃ２は機械圧縮比が低い値である場合のエミッションの排出量を示す。値Ｃｔｈは、許容限界のエミッションの排出量（許容限界量）を示す。
【０１２７】
図１２から明らかなように、機械圧縮比が高い場合（曲線Ｃ１）、インバランス割合が相対的に小さい値（＝ＩＭ１）であるときにエミッションの排出量は許容限界値Ｃｔｈに到達する。これに対し、機械圧縮比が低い場合（曲線Ｃ２）、インバランス割合が相対的に大きい値（＝ＩＭ２＞ＩＭ１）であるときにエミッションの排出量は許容限界値Ｃｔｈに到達する。これは、前述したように、燃焼室からの水素Ｈ２の排出量が機械圧縮比が大きくなるほど大きくなるからであると推定される。この傾向は、実圧縮比についても同様である。即ち、実圧縮比が大きいほど、より小さいインバランス割合にて、エミッションの排出量は許容限界量に到達する。
【０１２８】
従って、圧縮比に関わることなく「空燃比気筒間インバランス状態が発生したと判定する際のインバランス割合」を一定割合（例えば、インバランス割合ＩＭ２に対応する割合）に設定していると、圧縮比が変化した場合にエミッションの排出量が許容限界量Ｃｔｈを超えてしまう虞がある。即ち、インバランス判定用パラメータとしてのサブＦＢ学習値が一定の閾値Ａ０ｔｈに到達したときに、空燃比気筒間インバランス状態が発生したと判定するように第１判定装置が構成されていると、圧縮比が高い場合において空燃比気筒間インバランス状態が発生したと判定されたときには、エミッション排出量は許容限界量を超えてしまう。
【０１２９】
そこで、第１判定装置は、機械圧縮比が低い場合にはインバランス割合がＩＭ２であるときに「インバランス状態が発生した」と判定されるように、サブＦＢ学習値と比較するインバランス判定用閾値Ａｔｈを値Ａ０ｔｈに設定する（図１０を参照。）。更に、機械圧縮比が高い場合にはインバランス割合がＩＭ１であるときに「インバランス状態が発生した」と判定されるように、インバランス判定用閾値Ａｔｈを値Ａ０ｔｈよりもαだけ小さい値（Ａ０ｔｈ−α、α＞０）に設定する（図１０を参照。）。
【０１３０】
これによれば、機械圧縮比がどのような圧縮比であっても、ミッションの排出量が許容限界値Ｃｔｈを超えることがない時点にて「空燃比気筒間インバランス状態が発生した」と判定することができる。なお、第１判定装置は、インバランス判定用の閾値を機械圧縮比に基づいて変更しているが、インバランス判定用の閾値は一定に維持しながら、「サブＦＢ学習値を機械圧縮比に基づいて補正した値」をインバランス判定用パラメータとして取得し、そのインバランス判定用パラメータと一定のインバランス判定用の閾値とを比較することにより、インバランス判定を行うように構成されてもよい。この場合、インバランス判定用パラメータには、サブＦＢ学習値を「そのサブＦＢ学習値が得られたときの機械圧縮比が、基準となる機械圧縮比（基準閾値Ａ０ｔｈを決定したときの圧縮比）であったとした場合における値」となるように補正した値が用いられ得る。
【０１３１】
（実際の作動）
次に、第１判定装置の実際の作動について説明する。
＜燃料噴射量制御＞
ＣＰＵは、図１３に示した燃料噴射量Ｆｉの計算及び燃料噴射の指示を行うルーチンを、所定の気筒のクランク角が吸気上死点前の所定クランク角度（例えば、ＢＴＤＣ９０°ＣＡ）となる毎に、その気筒（以下、「燃料噴射気筒」とも称呼する。）に対して繰り返し実行するようになっている。従って、所定のタイミングになると、ＣＰＵはステップ１３００から処理を開始し、以下に述べるステップ１３１０乃至ステップ１３４０の処理を順に行い、ステップ１３９５に進んで本ルーチンを一旦終了する。
【０１３２】
ステップ１３１０：ＣＰＵは、「エアフローメータ５１により計測された吸入空気量Ｇａ、機関回転速度ＮＥ及びルックアップテーブルＭａｐＭｃ」に基いて「燃料噴射気筒に吸入される空気量」である「筒内吸入空気量Ｍｃ（ｋ）」を取得する。筒内吸入空気量Ｍｃ（ｋ）は、各吸気行程に対応されながらＲＡＭ内に記憶される。筒内吸入空気量Ｍｃ（ｋ）は、周知の空気モデル（吸気通路における空気の挙動を模した物理法則に従って構築されたモデル）により算出されてもよい。
【０１３３】
ステップ１３２０：ＣＰＵは、筒内吸入空気量Ｍｃ（ｋ）を上流側目標空燃比ａｂｙｆｒで除することにより基本燃料噴射量Ｆｂａｓｅを求める。上流側目標空燃比ａｂｙｆｒは、後述するような特殊な場合を除き理論空燃比ｓｔｏｉｃｈに設定されている。
【０１３４】
ステップ１３３０：ＣＰＵは、基本燃料噴射量Ｆｂａｓｅをメインフィードバック量ＤＦｉにより補正する（より具体的には、基本燃料噴射量Ｆｂａｓｅにメインフィードバック量ＤＦｉを加える）ことにより、最終燃料噴射量Ｆｉを算出する。メインフィードバック量ＤＦｉについては後述する。
【０１３５】
ステップ１３４０：ＣＰＵは、最終燃料噴射量（指示噴射量）Ｆｉの燃料が「燃料噴射気筒に対応して設けられている燃料噴射弁２５」から噴射されるように、その燃料噴射弁２５に指示信号を送出する。
【０１３６】
このように、各燃料噴射弁２５から噴射される燃料の量は、全ての気筒に対して共通したメインフィードバック量ＤＦｉによって一律に増減される。
【０１３７】
＜メインフィードバック量の算出＞
ＣＰＵは図１４にフローチャートにより示したメインフィードバック量算出ルーチンを所定時間の経過毎に繰り返し実行している。従って、所定のタイミングになると、ＣＰＵはステップ１４００から処理を開始し、ステップ１４０５に進んでメインフィードバック制御条件（上流側空燃比フィードバック制御条件）が成立しているか否かを判定する。
【０１３８】
メインフィードバック制御条件は以下の総ての条件が成立したときに成立する。
（条件Ａ１）上流側空燃比センサ５７が活性化している。
（条件Ａ２）機関の負荷（負荷率）ＫＬが閾値ＫＬｔｈ以下である。
（条件Ａ３）フューエルカット中でない。
【０１３９】
なお、負荷率ＫＬは、ここでは下記の（１）式により求められる。この負荷率ＫＬに代え、機関の負荷としてアクセルペダル操作Ａｃｃｐ及びスロットル弁開度ＴＡ等が用いられても良い。（１）式において、Ｍｃは筒内吸入空気量であり、ρは空気密度（単位は（ｇ／ｌ））、Ｌは機関１０の排気量（単位は（ｌ））、「４」は機関１０の気筒数である。
ＫＬ＝（Ｍｃ／（ρ・Ｌ／４））・１００％  …（１）
【０１４０】
いま、メインフィードバック制御条件が成立しているものとして説明を続けると、ＣＰＵはステップ１４０５にて「Ｙｅｓ」と判定して以下に述べるステップ１４１０乃至ステップ１４４０の処理を順に行い、ステップ１４９５に進んで本ルーチンを一旦終了する。
【０１４１】
ステップ１４１０：ＣＰＵは、下記（２）式に従ってフィードバック制御用出力値Ｖａｂｙｆｃを取得する。（２）式において、Ｖａｂｙｆｓは上流側空燃比センサ５７の出力値、Ｖａｆｓｆｂは下流側空燃比センサ５８の出力値Ｖｏｘｓに基いて算出されるサブフィードバック量、Ｖａｆｓｆｂｇはサブフィードバック量の学習値（サブＦＢ学習値）である。これらの値は、何れも現時点において得られている値である。サブフィードバック量Ｖａｆｓｆｂ及びサブＦＢ学習値Ｖａｆｓｆｂｇの算出方法については、後述する。
Ｖａｂｙｆｃ＝Ｖａｂｙｆｓ＋（Ｖａｆｓｆｂ＋Ｖａｆｓｆｂｇ）    …（２）
【０１４２】
ステップ１４１５：ＣＰＵは、下記（３）式に示したように、上記フィードバック制御用出力値Ｖａｂｙｆｃを図１１に示した空燃比変換テーブルＭａｐａｂｙｆｓに適用することにより、フィードバック制御用空燃比ａｂｙｆｓｃを得る。
ａｂｙｆｓｃ＝Ｍａｐａｂｙｆｓ（Ｖａｂｙｆｃ）    …（３）
【０１４３】
ステップ１４２０：ＣＰＵは、下記（４）式に従って、「現時点よりもＮサイクル前の時点において燃焼室２１に実際に供給された燃料の量」である「筒内燃料供給量Ｆｃ（ｋ−Ｎ）」を求める。即ち、ＣＰＵは、「現時点よりもＮサイクル（即ち、Ｎ・７２０°クランク角）前の時点における筒内吸入空気量Ｍｃ（ｋ−Ｎ）」を「上記フィードバック制御用空燃比ａｂｙｆｓｃ」により除すことにより、筒内燃料供給量Ｆｃ（ｋ−Ｎ）を求める。
Ｆｃ（ｋ−Ｎ）＝Ｍｃ（ｋ−Ｎ）／ａｂｙｆｓｃ    …（４）
【０１４４】
このように、筒内燃料供給量Ｆｃ（ｋ−Ｎ）を求めるために、現時点からＮストローク前の筒内吸入空気量Ｍｃ（ｋ−Ｎ）をフィードバック制御用空燃比ａｂｙｆｓｃで除すのは、「燃焼室２１内での混合気の燃焼により生成された排ガス」が上流側空燃比センサ５７に到達するまでに「Ｎストロークに相当する時間」を要しているからである。但し、実際には、上流側空燃比センサ５７には各気筒から排出された排ガスがある程度混合された後に到達する。
【０１４５】
ステップ１４２５：ＣＰＵは、下記（５）式に従って、「現時点よりもＮサイクル前の時点において燃焼室２１に供給されるべきであった燃料の量」である「目標筒内燃料供給量Ｆｃｒ（ｋ−Ｎ）」を求める。即ち、ＣＰＵは、現時点からＮストローク前の筒内吸入空気量Ｍｃ（ｋ−Ｎ）を上流側目標空燃比ａｂｙｆｒで除すことにより、目標筒内燃料供給量Ｆｃｒ（ｋ−Ｎ）を求める。なお、上流側目標空燃比ａｂｙｆｒは通常運転時において理論空燃比ｓｔｏｉｃｈに設定される。
Ｆｃｒ＝Ｍｃ（ｋ−Ｎ）／ａｂｙｆｒ    …（５）
【０１４６】
ステップ１４３０：ＣＰＵは、下記（６）式に従って、筒内燃料供給量偏差ＤＦｃを取得する。即ち、ＣＰＵは、目標筒内燃料供給量Ｆｃｒ（ｋ−Ｎ）から筒内燃料供給量Ｆｃ（ｋ−Ｎ）を減じることにより、筒内燃料供給量偏差ＤＦｃを求める。この筒内燃料供給量偏差ＤＦｃは、Ｎストローク前の時点で筒内に供給された燃料の過不足分を表す量となる。
ＤＦｃ＝Ｆｃｒ（ｋ−Ｎ）−Ｆｃ（ｋ−Ｎ）    …（６）
【０１４７】
ステップ１４３５：ＣＰＵは、下記（７）式に従って、メインフィードバック量ＤＦｉを求める。この（７）式において、Ｇｐは予め設定された比例ゲイン、Ｇｉは予め設定された積分ゲインである。更に、（７）式の「値ＳＤＦｃ」は「筒内燃料供給量偏差ＤＦｃの積分値」である。つまり、ＣＰＵは、フィードバック制御用空燃比ａｂｙｆｓｃを上流側目標空燃比ａｂｙｆｒに一致させるための比例積分制御により「メインフィードバック量ＤＦｉ」を算出する。
ＤＦｉ＝Ｇｐ・ＤＦｃ＋Ｇｉ・ＳＤＦｃ    …（７）
【０１４８】
ステップ１４４０：ＣＰＵは、その時点における筒内燃料供給量偏差ＤＦｃの積分値ＳＤＦｃに上記ステップ１４３０にて求められた筒内燃料供給量偏差ＤＦｃを加えることにより、新たな筒内燃料供給量偏差の積分値ＳＤＦｃを取得する。
【０１４９】
以上により、メインフィードバック量ＤＦｉが比例積分制御により求められ、このメインフィードバック量ＤＦｉが前述した図１３のステップ１３３０の処理により最終燃料噴射量Ｆｉに反映される。
【０１５０】
ところで、上記（２）式の右辺の「サブフィードバック量ＶａｆｓｆｂとサブＦＢ学習値Ｖａｆｓｆｂｇとの和」は、上流側空燃比センサ５７の出力値Ｖａｂｙｆｓに比較して小さい値となり、且つ、小さい値となるように制限されている。従って、「サブフィードバック量ＶａｆｓｆｂとサブＦＢ学習値Ｖａｆｓｆｂｇとの和」は、後述するように、「下流側空燃比センサ５８の出力値Ｖｏｘｓ」を「理論空燃比に相当する値である下流側目標値Ｖｏｘｓｒｅｆ」に一致させるための「補助的な補正量」と考えることができる。この結果、フィードバック制御用空燃比ａｂｙｆｓｃは上流側空燃比センサ５７の出力値Ｖａｂｙｆｓに実質的に基づく値であると言うことができる。即ち、メインフィードバック量ＤＦｉは「上流側空燃比センサ５７の出力値Ｖａｂｙｆｓにより表される機関の空燃比」を「上流側目標空燃比ａｂｙｆｒ（理論空燃比）」に一致させるための補正量であると言うことができる。
【０１５１】
一方、ステップ１４０５の判定時において、メインフィードバック制御条件が不成立であると、ＣＰＵはそのステップ１４０５にて「Ｎｏ」と判定してステップ１４４５に進み、メインフィードバック量ＤＦｉの値を「０」に設定する。次いで、ＣＰＵは、ステップ１４５０にて筒内燃料供給量偏差の積分値ＳＤＦｃに「０」を格納する。その後、ＣＰＵは、ステップ１４９５に進んで本ルーチンを一旦終了する。このように、メインフィードバック制御条件が不成立であるとき、メインフィードバック量ＤＦｉは「０」に設定される。従って、基本燃料噴射量Ｆｂａｓｅのメインフィードバック量ＤＦｉによる補正は行われない。
【０１５２】
＜サブフィードバック量及びサブＦＢ学習値の算出＞
ＣＰＵは、「サブフィードバック量Ｖａｆｓｆｂ」及び「サブフィードバック量Ｖａｆｓｆｂの学習値（サブＦＢ学習値）Ｖａｆｓｆｂｇ」を算出するために、図１５示したルーチンを所定時間の経過毎に実行している。従って、所定のタイミングになると、ＣＰＵはステップ１５００から処理を開始し、ステップ１５０５に進んでサブフィードバック制御条件が成立しているか否かを判定する。
【０１５３】
サブフィードバック制御条件は以下の総ての条件が成立したときに成立する。
（条件Ｂ１）メインフィードバック制御条件が成立している。
（条件Ｂ２）下流側空燃比センサ５８が活性化している。
（条件Ｂ３）上流側目標空燃比ａｂｙｆｒが理論空燃比ｓｔｏｉｃｈに設定されている。
【０１５４】
いま、サブフィードバック制御条件が成立していると仮定して説明を続ける。この場合、ＣＰＵはステップ１５０５にて「Ｙｅｓ」と判定し、以下に述べるステップ１５１０乃至ステップ１５３０の処理を順に行い、サブフィードバック量Ｖａｆｓｆｂを算出する。
【０１５５】
ステップ１５１０：ＣＰＵは、下記（８）式に従って、「下流側目標値Ｖｏｘｓｒｅｆ」と「下流側空燃比センサ５８の出力値Ｖｏｘｓ」との差である「出力偏差量ＤＶｏｘｓ」を取得する。即ち、ＣＰＵは、「下流側目標値Ｖｏｘｓｒｅｆ」から「現時点の下流側空燃比センサ５８の出力値Ｖｏｘｓ」を減じることにより「出力偏差量ＤＶｏｘｓ」を求める。下流側目標値Ｖｏｘｓｒｅｆは理論空燃比に相当する値Ｖｓｔ（０．５Ｖ）に設定されている。
ＤＶｏｘｓ＝Ｖｏｘｓｒｅｆ−Ｖｏｘｓ    …（８）
【０１５６】
ステップ１５１５：ＣＰＵは、下記（９）式に従って、サブフィードバック量Ｖａｆｓｆｂを求める。この（９）式において、Ｋｐは予め設定された比例ゲイン（比例定数）、Ｋｉは予め設定された積分ゲイン（積分定数）、Ｋｄは予め設定された微分ゲイン（微分定数）である。また、ＳＤＶｏｘｓは出力偏差量ＤＶｏｘｓの積分値（時間積分値ＳＤＶｏｘｓ）、ＤＤＶｏｘｓは出力偏差量ＤＶｏｘｓの微分値である。
Ｖａｆｓｆｂ＝Ｋｐ・ＤＶｏｘｓ＋Ｋｉ・ＳＤＶｏｘｓ＋Ｋｄ・ＤＤＶｏｘｓ    …（９）
【０１５７】
ステップ１５２０：ＣＰＵは、「その時点における出力偏差量の積分値ＳＤＶｏｘｓ」に「上記ステップ１５１０にて求めた出力偏差量ＤＶｏｘｓ」を加えることにより、新たな出力偏差量の積分値ＳＤＶｏｘｓを求める。
【０１５８】
ステップ１５２５：ＣＰＵは、「上記ステップ１５１０にて算出した出力偏差量ＤＶｏｘｓ」から「本ルーチンを前回実行した際に算出された出力偏差量である前回出力偏差量ＤＶｏｘｓｏｌｄ」を減じることにより、新たな出力偏差量の微分値ＤＤＶｏｘｓを求める。
【０１５９】
ステップ１５３０：ＣＰＵは、「上記ステップ１５１０にて算出した出力偏差量ＤＶｏｘｓ」を「前回出力偏差量ＤＶｏｘｓｏｌｄ」として格納する。
【０１６０】
このように、ＣＰＵは、下流側空燃比センサ５８の出力Ｖｏｘｓを下流側目標値Ｖｏｘｓｒｅｆに一致させるための比例・積分・微分（ＰＩＤ）制御により「サブフィードバック量Ｖａｆｓｆｂ」を算出する。このサブフィードバック量Ｖａｆｓｆｂは、上述した（２）式に示したように、フィードバック制御用出力値Ｖａｂｙｆｃを算出するために使用される。
【０１６１】
次いで、ＣＰＵは、以下に述べるステップ１５３５乃至ステップ１５５５の処理を順に行うことにより「サブＦＢ学習値Ｖａｆｓｆｂｇ」を算出し、その後、ステップ１５９５に進んで本ルーチンを一旦終了する。
【０１６２】
ステップ１５３５：ＣＰＵは、その時点のサブＦＢ学習値Ｖａｆｓｆｂｇを更新前学習値Ｖａｆｓｆｂｇ０として格納する。
【０１６３】
ステップ１５４０：ＣＰＵは、下記（１０）式に従ってサブＦＢ学習値Ｖａｆｓｆｂｇを更新する。この（１０）式の左辺Ｖａｆｓｆｂｇ（ｋ＋１）は更新後のサブＦＢ学習値Ｖａｆｓｆｂｇを表す。値αは０以上１未満の任意の値である。サブＦＢ学習値ＶａｆｓｆｂｇはバックアップＲＡＭに格納される。
Ｖａｆｓｆｂｇ（ｋ＋１）＝α・Ｖａｆｓｆｂｇ＋（１−α）・Ｋｉ・ＳＤＶｏｘｓ    …（１０）
【０１６４】
（１０）式から明らかなように、サブＦＢ学習値Ｖａｆｓｆｂｇは「サブフィードバック量Ｖａｆｓｆｂの積分項Ｋｉ・ＳＤＶｏｘｓ」に「ノイズ除去のためのフィルタ処理」を施した値である。換言すると、サブＦＢ学習値Ｖａｆｓｆｂｇは、サブフィードバック量Ｖａｆｓｆｂの定常成分（積分項Ｋｉ・ＳＤＶｏｘｓ）に応じた値であり、積分項Ｋｉ・ＳＤＶｏｘｓの一次遅れ量（なまし値）である。このように、サブＦＢ学習値Ｖａｆｓｆｂｇは、サブフィードバック量Ｖａｆｓｆｂの定常成分に接近するように更新される。サブフィードバック量Ｖａｆｓｆｂ及びサブＦＢ学習値Ｖａｆｓｆｂｇは、上流側空燃比センサの出力値Ｖａｂｙｆｓに基づくフィードバック制御の結果を補正する値であるので、上流側空燃比センサの出力値Ｖａｂｙｆｓに基づいて算出される値（上流側空燃比センサの出力値Ｖａｂｙｆｓを用いて取得される値）であるということができる。更新されたサブＦＢ学習値Ｖａｆｓｆｂｇ（＝Ｖａｆｓｆｂｇ（ｋ＋１））はバックアップＲＡＭに格納される。
【０１６５】
ステップ１５４５：ＣＰＵは、下記（１１）式に従ってサブＦＢ学習値Ｖａｆｓｆｂｇの変更量（更新量）ΔＧを算出する。
ΔＧ＝Ｖａｆｓｆｂｇ−Ｖａｆｓｆｂｇ０    …（１１）
【０１６６】
ステップ１５５０：ＣＰＵは、下記（１２）式に従ってサブフィードバック量Ｖａｆｓｆｂを変更量ΔＧにより補正する。
Ｖａｆｓｆｂ＝Ｖａｆｓｆｂ−ΔＧ          …（１２）
【０１６７】
このステップ１５４５及びステップ１５５０の処理について説明する。上記（２）式に示したように、ＣＰＵは、「サブフィードバック量Ｖａｆｓｆｂ及びサブＦＢ学習値Ｖａｆｓｆｂｇ」を「上流側空燃比センサ５７の出力Ｖａｂｙｆｓ」に加えることにより、フィードバック制御用出力値Ｖａｂｙｆｃを得る。サブＦＢ学習値Ｖａｆｓｆｂｇはサブフィードバック量Ｖａｆｓｆｂの積分項Ｋｉ・ＳＤＶｏｘｓ（定常成分）の一部を取り込んだ値である。従って、サブＦＢ学習値Ｖａｆｓｆｂｇを更新した場合、サブフィードバック量Ｖａｆｓｆｂをその更新分に応じて補正しないと、「更新後のサブＦＢ学習値Ｖａｆｓｆｂｇ及びサブフィードバック量Ｖａｆｓｆｂ」により二重の補正が行われる。従って、サブＦＢ学習値Ｖａｆｓｆｂｇを更新した場合、サブフィードバック量ＶａｆｓｆｂをそのサブＦＢ学習値Ｖａｆｓｆｂｇ  の更新分ΔＧに応じて補正する。
【０１６８】
そこで、ＣＰＵは上記（１１）及び上記（１２）式に示したように、サブＦＢ学習値Ｖａｆｓｆｂｇを変更量ΔＧだけ増加するように更新したとき、サブフィードバック量Ｖａｆｓｆｂを変更量ΔＧだけ減少させる。（１１）式において、Ｖａｆｓｆｂｇ０は更新直前のサブＦＢ学習値Ｖａｆｓｆｂｇである。従って、変更量ΔＧは正の値及び負の値の何れともなる。
【０１６９】
ステップ１５５５：ＣＰＵは、下記（１３）式に従って出力偏差量ＤＶｏｘｓの積分値を変更量ΔＧに基いて補正する。なお、ステップ１５４５乃至ステップ１５５５を省略してもよい。また、ステップ１５４５乃至ステップ１５５５を省略してもよい。
ＳＤＶｏｘｓｎｅｗ＝ＳＤＶｏｘｓ−ΔＧ／Ｋｉ    …（１３）
【０１７０】
以上の処理により、所定時間の経過毎にサブフィードバック量ＶａｆｓｆｂとサブＦＢ学習値Ｖａｆｓｆｂｇとが更新される。
【０１７１】
一方、サブフィードバック制御条件が成立していない場合、ＣＰＵは図１５のステップ１５０５にて「Ｎｏ」と判定し、以下に述べるステップ１５６０及びステップ１５６５の処理を順に行い、ステップ１５９５に進んで本ルーチンを一旦終了する。
【０１７２】
ステップ１５６０：ＣＰＵはサブフィードバック量Ｖａｆｓｆｂの値を「０」に設定する。
ステップ１５６５：ＣＰＵは出力偏差量の積分値ＳＤＶｏｘｓの値を「０」に設定する。
【０１７３】
これにより、上記（２）式から明らかなように、フィードバック制御用出力値Ｖａｂｙｆｃは、上流側空燃比センサ５７の出力値ＶａｂｙｆｓとサブＦＢ学習値Ｖａｆｓｆｂｇとの和となる。即ち、この場合、「サブフィードバック量Ｖａｆｓｆｂの更新」及び「サブフィードバック量Ｖａｆｓｆｂの最終燃料噴射量Ｆｉへの反映」は停止される。但し、少なくとも、サブフィードバック量Ｖａｆｓｆｂの積分項に対応するサブＦＢ学習値Ｖａｆｓｆｂｇは最終燃料噴射量Ｆｉに反映される。
【０１７４】
＜空燃比気筒間インバランス判定＞
次に、「空燃比気筒間インバランス判定」を実行するための処理について図１６を参照しながら説明する。
【０１７５】
ＣＰＵは、図１６に示した「空燃比気筒間インバランス判定ルーチン」を所定時間の経過毎に繰り返し実行している。従って、所定のタイミングになると、ＣＰＵはステップ１６００から処理を開始し、ステップ１６１０に進んで「異常判定（空燃比気筒間インバランス判定）の前提条件」が成立しているか否かを判定する。
【０１７６】
この異常判定の前提条件は「インバランス判定用パラメータ取得許可条件」でもある。また、この異常判定の前提条件が成立しない場合、空燃比気筒間インバランスの「判定禁止条件」が成立する。空燃比気筒間インバランスの「判定禁止条件」が成立すると、「サブＦＢ学習値Ｖａｆｓｆｂｇに基いて算出されるインバランス判定用パラメータ」を用いた「以下に述べる空燃比気筒間インバランス」の判定が実行されない。
【０１７７】
この異常判定の前提条件は、例えば、次の（条件Ｄ１）乃至（条件Ｄ４）とすることができる。この前提条件は、（条件Ｄ１）乃至（条件Ｄ４）の総てが成立したとき成立する。換言すると、判定禁止条件は、（条件Ｄ３）乃至（条件Ｄ４）の何れか一つが不成立であるとき、成立する。また、これらの条件のうちの任意の一つ以上の組み合わせを前提条件としてもよく、他の条件を加えてもよい。
【０１７８】
（条件Ｄ１）上流側触媒４３の水素を酸化する能力が第１所定能力以下ではない。即ち、上流側触媒４３の水素を酸化する能力が第１所定能力より大きい場合。（条件Ｄ１）は、例えば、上流側触媒４３の酸素吸蔵量が第１閾値酸素吸蔵量以上である場合に成立する条件とすることができる。この場合、上流側触媒４３の水素を酸化する能力が第１所定能力よりも大きいと判定することができる。なお、ＣＰＵは、上流側触媒４３の酸素吸蔵量を周知の手法により別途取得している（例えば、特開２００７−２３９７００号公報、特開２００３−３３６５３５号公報、及び、特開２００４−０３６４７５号公報等を参照。）。
【０１７９】
（条件Ｄ２）上流側触媒４３の水素を酸化する能力が第２所定能力未満である場合。この第２所定能力は、前記第１所定能力よりも大きい能力である。
【０１８０】
（条件Ｄ３）機関１０の各燃焼室２１から排出される排ガスの流量が閾値排ガス流量以上ではない。即ち、機関１０から排出される排ガスの流量が閾値排ガス流量未満である。この（条件Ｄ３）の条件は、例えば、機関１０の負荷（負荷率ＫＬ、スロットル弁開度ＴＡ及びアクセルペダル操作量Ａｃｃｐ等）が閾値負荷以下である場合に成立する条件とすることができる。或いは、上記（条件Ｄ３）は、機関１０の単位時間あたりの吸入空気量Ｇａが閾値吸入空気量ＧＡｔｈ以下である場合に成立する条件とすることができる。
【０１８１】
（条件Ｄ４）上流側目標空燃比ａｂｙｆｒが理論空燃比ｓｔｏｉｃｈである。
【０１８２】
いま、上述した異常判定の前提条件（（条件Ｄ１）〜（条件Ｄ４）の総て）が成立していると仮定する。この場合、ＣＰＵはステップ１６１０にて「Ｙｅｓ」と判定し、ＣＰＵは以下に述べるステップ１６１５以降の処理を実行する。ステップ１６１５以降の処理は、異常判定（空燃比気筒間インバランス判定）のための処理の一部である。
【０１８３】
ステップ１６１５：ＣＰＵは現時点が「サブＦＢ学習値Ｖａｆｓｆｂｇが更新された直後の時点（サブＦＢ学習値更新直後時点）」であるか否かを判定する。ＣＰＵは、現時点がサブＦＢ学習値更新直後の時点であれば、ステップ１６２０乃至ステップ１６３５に進む。ＣＰＵは、現時点がサブＦＢ学習値更新直後の時点でなければ、ステップ１６９５に直接進んで本ルーチンを一旦終了する。
【０１８４】
ステップ１６２０：ＣＰＵは学習値積算カウンタＣｅｘｅの値を「１」だけ増大する。
ステップ１６２５：ＣＰＵは図１５のルーチンのステップ１５４０により算出されているサブＦＢ学習値Ｖａｆｓｆｂｇを読み込む。
ステップ１６３０：ＣＰＵは、サブＦＢ学習値Ｖａｆｓｆｂｇの積算値ＳＶａｆｓｆｂｇを更新する。即ち、ＣＰＵは「その時点の積算値ＳＶａｆｓｆｂｇ」に「ステップ１６２５にて読み込んだサブＦＢ学習値Ｖａｆｓｆｂｇ」を加えることにより、新たな積算値ＳＶａｆｓｆｂｇを得る。
【０１８５】
この積算値ＳＶａｆｓｆｂｇは、前述したイニシャルルーチンにより「０」に設定されるようになっている。更に、積算値ＳＶａｆｓｆｂｇは、後述するステップ１６７５の処理によっても「０」に設定される。このステップ１６７５は、異常判定（空燃比気筒間インバランス判定、ステップ１６６０〜ステップ１６７０）が実行されたときに実行される。従って、積算値ＳＶａｆｓｆｂｇは、機関１０の始動後又は直前の異常判定実行後において、「異常判定の前提条件が成立している場合」におけるサブＦＢ学習値Ｖａｆｓｆｂｇの積算値となる。
【０１８６】
ステップ１６３５：ＣＰＵは学習値積算カウンタＣｅｘｅの値がカウンタ閾値Ｃｅｘｅｔｈ以上であるか否かを判定する。カウンタ閾値Ｃｅｘｅｔｈは所定の自然数である。ＣＰＵは、学習値積算カウンタＣｅｘｅの値がカウンタ閾値Ｃｅｘｅｔｈよりも小さいと、ステップ１６３５にて「Ｎｏ」と判定してステップ１６９５に直接進み、本ルーチンを一旦終了する。これに対し、ＣＰＵは、学習値積算カウンタＣｅｘｅの値がカウンタ閾値Ｃｅｘｅｔｈ以上であると、ステップ１６３５にて「Ｙｅｓ」と判定してステップ１６４０及びステップ１６４５に進む。
【０１８７】
ステップ１６４０：ＣＰＵは、「サブＦＢ学習値Ｖａｆｓｆｂｇの積算値ＳＶａｆｓｆｂｇ」を「学習値積算カウンタＣｅｘｅ」で除することにより、サブＦＢ学習値平均値Ａｖｅｓｆｂｇを求める。このサブＦＢ学習値平均値Ａｖｅｓｆｂｇは、前述したように、上流側触媒４３を通過する前の排ガスに含まれる水素の量と上流側触媒４３を通過した後の排ガスに含まれる水素の量との差が大きいほど大きくなる「インバランス判定用パラメータ（水素量差指示パラメータ）」である。なお、学習値積算カウンタＣｅｘｅの値は「１」であってもよく、この場合、サブＦＢ学習値平均値ＡｖｅｓｆｂｇはサブＦＢ学習値Ｖａｆｓｆｂｇと一致する。
【０１８８】
ステップ１６４５：ＣＰＵは、ストロークセンサ５６により検出される距離ＳＴに基づいて「現時点における実際の機械圧縮比εａｃｔ（実機械圧縮比εａｃｔ）」を取得するとともに、その取得した実機械圧縮比εａｃｔが閾値機械圧縮比εｔｈ以上であるか否かを判定する。なお、前述したように、第１判定装置は、機関１０の負荷ＫＬが所定値以上の場合に機関１０の機械圧縮比が「目標圧縮比としての第１の機械圧縮比ε１」となるように圧縮比変更機構のアクチュエータ２０８に指示信号を送出し、機関１０の負荷ＫＬが所定値未満の場合に機関１０の機械圧縮比が「目標圧縮比としての第２の機械圧縮比ε２」となるように圧縮比変更機構のアクチュエータ２０８に指示信号を送出している。第１の機械圧縮比ε１は閾値機械圧縮比εｔｈ未満であり、第２の機械圧縮比ε２は閾値機械圧縮比εｔｈ以上である。ＣＰＵは、実機械圧縮比εａｃｔが閾値機械圧縮比εｔｈ以上である場合には以下に述べるステップ１６５０に進み、実機械圧縮比εａｃｔが閾値機械圧縮比εｔｈ未満である場合には以下に述べるステップ１６５５に進む。
【０１８９】
ステップ１６５０：ＣＰＵは、インバランス判定用の閾値Ａｔｈに、値Ａ０ｔｈよりもαだけ小さい値（Ａ０ｔｈ−α、α＞０）を設定する（図１０を参照。）。その後、ＣＰＵはステップ１６６０に進む。値Ａ０ｔｈは基準閾値である。
ステップ１６５５：ＣＰＵは、インバランス判定用の閾値Ａｔｈに、値Ａ０ｔｈを設定する（図１０を参照。）。その後、ＣＰＵはステップ１６６０に進む。
【０１９０】
ステップ１６６０：ＣＰＵは、サブＦＢ学習値平均値（インバランス判定用パラメータ、水素量差指示パラメータ）Ａｖｅｓｆｂｇが「上記ステップ１６５０又はステップ１６５５にて設定されたインバランス判定閾値Ａｔｈ」以上であるか否かを判定する。
【０１９１】
前述したように、気筒間における空燃比の不均一性が過大となって「空燃比気筒間インバランス」が生じている場合、サブフィードバック量Ｖａｆｓｆｂは機関１０に供給される混合気の空燃比を大きくリッチ側に補正する値になろうとするから、それに伴って、サブＦＢ学習値Ｖａｆｓｆｂｇの平均値であるサブＦＢ学習値平均値Ａｖｅｓｆｂｇも「機関１０に供給される混合気の空燃比を大きくリッチ側に補正する値（インバランス判定閾値Ａｔｈ以上の値）」となる。
【０１９２】
従って、ＣＰＵは、サブＦＢ学習値平均値Ａｖｅｓｆｂｇがインバランス判定閾値Ａｔｈ以上である場合、空燃比気筒間インバランスが発生していると判定する。即ち、ＣＰＵは、サブＦＢ学習値平均値Ａｖｅｓｆｂｇがインバランス判定閾値Ａｔｈ以上である場合、ステップ１６６０にて「Ｙｅｓ」と判定してステップ１６６５に進み、異常発生フラグＸＩＪＯの値を「１」に設定する。つまり、異常発生フラグＸＩＪＯの値が「１」であることは、空燃比気筒間インバランスが生じていることを示す。なお、この異常発生フラグＸＩＪＯの値はバックアップＲＡＭに格納される。また、異常発生フラグＸＩＪＯの値が「１」に設定されたとき、ＣＰＵは図示しない警告ランプを点灯してもよい。その後、ＣＰＵはステップ１６７５に進む。
【０１９３】
これに対し、サブＦＢ学習値平均値Ａｖｅｓｆｂｇがインバランス判定閾値Ａｔｈよりも小さい場合、ＣＰＵはステップ１６６０にて「Ｎｏ」と判定してステップ１６７０に進む。そして、ＣＰＵは、ステップ１６７０にて「空燃比気筒間インバランスが生じていない」ことを示すように、異常発生フラグＸＩＪＯの値を「０」に設定する。その後、ＣＰＵはステップ１６７５に進む。なお、ＣＰＵは、ステップ１６７０にて、「空燃比気筒間インバランスが生じていないと判定された」ことを示すように、異常発生フラグＸＩＪＯの値を「２」に設定してもよい。
【０１９４】
ステップ１６７５：ＣＰＵは、学習値積算カウンタＣｅｘｅの値を「０」に設定する（リセットする）とともに、サブＦＢ学習値の積算値ＳＶａｆｓｆｂｇを「０」に設定する（リセットする）。
【０１９５】
なお、ＣＰＵは、ステップ１６１０の処理を実行したとき、異常判定の前提条件が成立していなければ、ステップ１６７５の処理を実行した後、ステップ１６９５に進んで本ルーチンを一旦終了する。更に、ＣＰＵは、ステップ１６１５の処理を実行したとき、その時点がサブＦＢ学習値Ｖａｆｓｆｂｇの更新直後でなければ、ステップ１６１５からステップ１６９５に直接進んで本ルーチンを一旦終了する。
【０１９６】
以上、説明したように、本発明の第１判定装置は、
複数の気筒を有する多気筒内燃機関（１０）に適用され、
前記機関の排気通路であって前記複数の気筒のうちの少なくとも２以上の気筒（第１実施形態においては総ての気筒である４気筒）の燃焼室（２１）から排出された排ガスが集合する排気集合部よりも下流側の部位に配設された触媒（４３）と、
前記少なくとも２以上の気筒のそれぞれに対応して配設されるとともに同２以上の気筒のそれぞれの燃焼室に供給される混合気に含まれる燃料を噴射する燃料噴射弁（２５）と、
前記排気集合部（４１ｂ）、又は、前記排気通路の前記排気集合部（４１ｂ）と前記触媒（４３）との間に配設される上流側空燃比センサ（５７）であって前記触媒を通過する前の排ガスが接触する拡散抵抗層を含み、同拡散抵抗層に覆われ且つ同拡散抵抗層を通過して到達した排ガスの空燃比に応じた信号を同上流側空燃比センサの出力値として出力する空燃比検出素子、を有する上流側空燃比センサ（５７）と、
「前記少なくとも２以上の気筒のそれぞれに供給される混合気の空燃比である気筒別空燃比の間の不均衡の程度（例えば、インバランス割合）」が大きいほど大きくなるインバランス判定用パラメータ（サブＦＢ学習値平均値Ａｖｅｓｆｂｇ）を「少なくとも前記上流側空燃比センサの出力値Ｖａｂｙｆｓと下流側空燃比センサ（５８）の出力値Ｖｏｘｓと」に基づいて取得するとともに（図１４乃至図１６、特に、ステップ１５４０及びステップ１６４０を参照。）、前記取得したインバランス判定用パラメータが所定の閾値（Ａｔｈ）以上であるか否かの比較結果に基づいて空燃比気筒間インバランス状態が発生しているか否かの判定を実行するインバランス判定手段（図１６のステップ１６６０乃至ステップ１６７０）と、
を備えた内燃機関の空燃比気筒間インバランス判定装置において、
前記インバランス判定手段は、
前記所定の閾値（Ａｔｈ）を、前記圧縮比変更手段により変更される前記機関の圧縮比（εａｃｔ）に応じて変更するように構成されている（図１６のステップ１６４５乃至ステップ１６５５を参照。）。なお、前記所定の閾値（Ａｔｈ）は、前記機関の圧縮比が大きくなるほど小さくなるように設定されることが望ましい。但し、機関の特性によっては、所定の閾値（Ａｔｈ）は、前記機関の圧縮比が特定の範囲内にある場合等において、同機関の圧縮比が大きくなるほど大きくした方がよい場合もある。
【０１９７】
従って、機関の１０の圧縮比（本例における機械圧縮比）がどのような圧縮比であっても、エミッションが悪化する前の時点にて「空燃比気筒間インバランス状態が発生した」と判定することができ、必要に応じ警告を行うことも可能となる。
【０１９８】
この場合、前記インバランス判定手段は、
前記所定の閾値（Ａｔｈ）を、前記インバランス判定用パラメータが同所定の閾値を超える値となった場合に前記触媒から流出する未燃物の量が前記圧縮比に関わらず一定の許容限界量となるように、前記機関の圧縮比に基づいて決定している。換言すると、各圧縮比の下で、エミッションの排出量が許容限界量Ｃｔｈに到達するインバランス割合を測定し（図１２を参照。）、各圧縮比の下で運転しているときに、空燃比気筒間インバランスの程度がその測定したインバランス割合に一致したときに、空燃比気筒間インバランス状態が発生したと判定するように、閾値（Ａｔｈ）を圧縮比に基づいて設定する。
【０１９９】
これによれば、機関１０の圧縮比がどのような圧縮比であっても、前記触媒４３から流出する未燃物の量が一定許容限界量を超えない時点にて、「空燃比気筒間インバランス状態が発生した」と判定することができる。
【０２００】
なお、第１判定装置は、
触媒４３を通過した後の排ガスの空燃比に応じた出力値を出力する下流側空燃比センサ５８と、
所定の第１更新タイミングが到来する毎に前記下流側空燃比センサの出力値を理論空燃比に応じた値に一致させるためのサブフィードバック量Ｖａｆｓｆｂを同下流側空燃比センサの出力値に基いて更新するサブフィードバック量更新手段（図１５）と、
所定の第２更新タイミングが到来する毎に少なくとも前記上流側空燃比センサ５７の出力値Ｖａｂｙｆｓ及びサブフィードバック量Ｖａｆｓｆｂに基づき前記燃料噴射量を決定する燃料噴射量決定手段（図１４のステップ１４１０乃至１４３５）と、
所定の第３更新タイミングが到来する毎に前記サブフィードバック量の学習値Ｖａｆｓｆｂｇを前記サブフィードバック量に基いて更新する手段であって同学習値が同サブフィードバック量の定常成分に接近するように同学習値を更新するサブフィードバック量学習手段と（図１５のステップ１５３５乃至ステップ１５５５）、
を備え、
インバランス判定手段は、
前記インバランス判定用パラメータが前記サブフィードバック量の学習値が大きいほど大きくなるように同インバランス判定用パラメータを同サブフィードバック量の学習値に基づいて取得する（図１６のステップ１６４０）ように構成された、
空燃比気筒間インバランス判定装置であると言うこともできる。
【０２０１】
（第２実施形態）
次に、本発明の第２実施形態に係る多気筒内燃機関の空燃比気筒間インバランス判定装置（以下、単に「第２判定装置」と称呼する。）について説明する。この第２判定装置は、インバランス判定用の閾値Ａｔｈを機械圧縮比に基づいて変更する代わりに、インバランス判定用パラメータを機械圧縮比により補正する（インバランス判定用パラメータを機械圧縮比にも基づいて定める）点のみにおいて、第１判定装置と相違している。従って、以下、この相違点を中心として説明する。
【０２０２】
第２判定装置のＣＰＵは、第１判定装置のＣＰＵが実行するルーチンのうち「図１６のルーチン」を除くルーチンを実行するとともに、更に、図１７にフローチャートにより示した「空燃比気筒間インバランス判定ルーチン」を所定時間の経過毎に繰り返し実行している。なお、以下において、既に説明されたステップと同一の処理を行うためのステップには、そのようなステップに付された符号と同じ符合を付している。そのようなステップについての説明は適宜省略される。
【０２０３】
図１７のルーチンは、ステップ１７１０乃至ステップ１７３０のみが図１６のルーチンと相違している。即ち、第２判定装置のＣＰＵは、ステップ１６１０乃至ステップ１６４０までの処理によりサブＦＢ学習値平均値Ａｖｅｓｆｂｇを求める。サブＦＢ学習値平均値Ａｖｅｓｆｂｇは、本例において、インバランス判定用パラメータの基本値である。そして、そのＣＰＵは、ステップ１６４５にて、実機械圧縮比εａｃｔが閾値機械圧縮比εｔｈ以上であると判定した場合、ステップ１７１０に進んでサブＦＢ学習値平均値Ａｖｅｓｆｂｇを補正することによりインバランス判定用パラメータＨａｎｐを取得する。
【０２０４】
より具体的に述べると、ＣＰＵはステップ１７１０において、サブＦＢ学習値平均値Ａｖｅｓｆｂｇに補正係数ｋｈを乗じた値（ｋｈ・Ａｖｅｓｆｂｇ）をインバランス判定用パラメータＨａｎｐとして設定する。補正係数ｋｈは「１」より大きい値であり、実機械圧縮比εａｃｔが「閾値機械圧縮比εｔｈ以上である第２の機械圧縮比ε２」に設定されている場合において、インバランス割合が図１０に示した値ＩＭ１に一致しているときに、値（ｋｈ・Ａｖｅｓｆｂｇ）が基準閾値Ａ０ｔｈに一致するように予め設定・適合された係数である。その後、ＣＰＵはステップ１７３０に進む。
【０２０５】
これに対し、ＣＰＵは、ステップ１６４５にて、実機械圧縮比εａｃｔが閾値機械圧縮比εｔｈ未満であると判定した場合、ステップ１７２０に進んでサブＦＢ学習値平均値Ａｖｅｓｆｂｇを（補正することなく）インバランス判定用パラメータＨａｎｐとして採用する。その後、ＣＰＵはステップ１７３０に進む。
【０２０６】
ＣＰＵは、ステップ１７３０にて、上記ステップ１７１０又は上記ステップ１７２０にて得られたインバランス判定用パラメータＨａｎｐが「インバランス判定閾値Ａ０ｔｈ」以上であるか否かを判定する。
【０２０７】
ＣＰＵは、インバランス判定用パラメータＨａｎｐが「インバランス判定閾値Ａ０ｔｈ」以上である場合、空燃比気筒間インバランスが発生していると判定してステップ１７３０からステップ１６６５に進み、異常発生フラグＸＩＪＯの値を「１」に設定する。その後、ＣＰＵはステップ１６７５に進む。
【０２０８】
これに対し、インバランス判定用パラメータＨａｎｐが「インバランス判定閾値Ａ０ｔｈ」よりも小さい場合、ＣＰＵはステップ１７３０にて「Ｎｏ」と判定してステップ１６７０に進む。そして、ＣＰＵは、ステップ１６７０にて「空燃比気筒間インバランスが生じていない」ことを示すように、異常発生フラグＸＩＪＯの値を「０」に設定する。その後、ＣＰＵはステップ１６７５に進む。
【０２０９】
以上、説明したように、第２判定装置は、第１判定装置と同様に、
複数の気筒を有する多気筒内燃機関に適用され、圧縮比変更手段と、触媒と、燃料噴射弁と、上流側空燃比センサと、気筒別空燃比の間の不均衡の程度が大きいほど大きくなるインバランス判定用パラメータを取得するとともに、前記取得したインバランス判定用パラメータが所定の閾値以上であるか否かの比較結果に基づいて空燃比気筒間インバランス状態が発生しているか否かの判定を実行するインバランス判定手段と（例えば、図１７のステップ１７３０、ステップ１６６５及びステップ１６７０を参照。）、を備える。
【０２１０】
そして、第２判定装置の前記インバランス判定手段は、
前記インバランス判定用パラメータを、前記圧縮比変更手段により変更される前記機関の圧縮比に応じて変更するように構成されている（図１７のステップ１６４５、ステップ１７１０及びステップ１７２０）。
【０２１１】
これによれば、機関１０の圧縮比がどのような圧縮比であっても、前記触媒４３から流出する未燃物の量が一定許容限界量を超えない時点にて、「空燃比気筒間インバランス状態が発生した」と判定することができる。
【０２１２】
（第３実施形態）
次に、本発明の第３実施形態に係る多気筒内燃機関の空燃比気筒間インバランス判定装置（以下、単に「第３判定装置」と称呼する。）について説明する。この第３判定装置は、機関１０の機械圧縮比が「機関１０の負荷ＫＬ及び機関回転速度ＮＥ（即ち、機関１０の運転状態）に応じて定まる目標機械圧縮比」となるように圧縮比変更機構のアクチュエータ２０８に指示信号を送出している。即ち、機関１０の機械圧縮比は、下限値から上限値までの間において連続的に変更される。更に、第３判定装置は、インバランス判定用の閾値Ａｔｈを機械圧縮比によって連続的に変更する点のみにおいて、第１判定装置と相違している。従って、以下、この相違点を中心として説明する。
【０２１３】
より具体的に述べると、第３判定装置のＣＰＵは、第１判定装置のＣＰＵが実行するルーチンのうち「図１６のルーチン」を除くルーチン、を実行するとともに、更に、図１８にフローチャートにより示した「空燃比気筒間インバランス判定ルーチン」を所定時間の経過毎に繰り返し実行している。
【０２１４】
図１８のルーチンは、図１６のステップ１６４５乃至ステップ１６５５を、ステップ１８１０に置換した点のみにおいて図１６のルーチンと相違している。即ち、第３判定装置のＣＰＵは、ステップ１６１０乃至ステップ１６４０までの処理によりサブＦＢ学習値平均値Ａｖｅｓｆｂｇを求める。
【０２１５】
次いで、ＣＰＵはステップ１８１０に進み、ストロークセンサ５６からの距離ＳＴに基づいて実機械圧縮比εａｃｔを取得するとともに、その実機械圧縮比εａｃｔをステップ１８１０のブロック内に示したテーブルに適用することにより、インバランス判定用閾値Ａｔｈを決定する。このテーブルによれば、実機械圧縮比εａｃｔが高いほどインバランス判定用閾値Ａｔｈは小さくなるように決定される。その後、ＣＰＵは、ステップ１６６０以降の処理を実行することによりインバランス判定を行う。
【０２１６】
前述したように、機械圧縮比が高くなるほど、エミッションが許容限界量に達するインバランス割合が小さくなる。従って、上記第３判定装置のように、機械圧縮比が高くなるほどインバランス判定用閾値Ａｔｈを小さくすることにより、機械圧縮比が高くなるほど「気筒別空燃比の間の不均衡の程度」が小さい時点にて空燃比気筒間インバランス状態が発生したと判定することができる。従って、機関１０の圧縮比がどのような圧縮比であっても、前記触媒４３から流出する未燃物の量が一定許容限界量を超えない時点にて、「空燃比気筒間インバランス状態が発生した」と判定することができる。
【０２１７】
（第４実施形態）
次に、本発明の第４実施形態に係る多気筒内燃機関の空燃比気筒間インバランス判定装置（以下、単に「第４判定装置」と称呼する。）について説明する。この第４判定装置は、第３判定装置と同様、機関１０の機械圧縮比が「機関１０の負荷ＫＬ及び機関回転速度ＮＥ（即ち、機関１０の運転状態）に応じて定まる目標機械圧縮比」となるように圧縮比変更機構のアクチュエータ２０８に指示信号を送出している。即ち、機関１０の機械圧縮比は、下限値から上限値までの間において連続的に変更される。更に、第４判定装置は、インバランス判定用の閾値Ａｔｈを機械圧縮比により変更する代わりに、インバランス判定用パラメータを機械圧縮比により連続的（精密に）に補正する（インバランス判定用パラメータを機械圧縮比にも基づいて定める）。以下、この点を中心として説明する。
【０２１８】
より具体的に述べると、第４判定装置のＣＰＵは、第１判定装置のＣＰＵが実行するルーチンのうち「図１６のルーチン」を除くルーチンを実行するとともに、更に、図１９にフローチャートにより示した「空燃比気筒間インバランス判定ルーチン」を所定時間の経過毎に繰り返し実行している。
【０２１９】
図１９のルーチンは、図１６のステップ１６４５乃至ステップ１６６０を、ステップ１９１０及びステップ１７３０に置換した点のみにおいて図１６のルーチンと相違している。即ち、第４判定装置のＣＰＵは、ステップ１６１０乃至ステップ１６４０までの処理によりサブＦＢ学習値平均値Ａｖｅｓｆｂｇ（インバランス判定用パラメータの基準値）を求める。
【０２２０】
次いで、ＣＰＵはステップ１９１０に進み、ストロークセンサ５６からの距離ＳＴに基づいて実機械圧縮比εａｃｔを取得するとともに、その実機械圧縮比εａｃｔをステップ１９１０のブロック内に示したテーブルに適用することにより、補正係数ｋｈを決定する。このテーブルによれば、実機械圧縮比εａｃｔが高いほど補正係数ｋｈは大きくなるように決定される。そして、ＣＰＵはステップ１９１０において、サブＦＢ学習値平均値Ａｖｅｓｆｂｇに補正係数ｋｈを乗じた値（ｋｈ・Ａｖｅｓｆｂｇ）をインバランス判定用パラメータＨａｎｐとして設定する。その後、ＣＰＵはステップ１７３０以降に進み、ステップ１９１０にて取得されたインバランス判定用パラメータＨａｎｐと、基準閾値Ａ０ｔｈと、の比較に基づいてインバランス判定を実行する。
【０２２１】
以上、説明したように、第４判定装置は、機械圧縮比が高くなるほど、インバランス判定用パラメータの基準値として取得されたサブＦＢ学習値平均値Ａｖｅｓｆｂｇが大きくなるように、そのサブＦＢ学習値平均値Ａｖｅｓｆｂｇを補正することによって、最終的なインバランス判定用パラメータＨａｎｐを取得し、その最終的なインバランス判定用パラメータＨａｎｐと一定の基準閾値Ａ０ｔｈとの比較に基づいてインバランス判定を実行している。従って、機関１０の圧縮比がどのような圧縮比であっても、前記触媒４３から流出する未燃物の量が一定許容限界量を超えない時点にて、「空燃比気筒間インバランス状態が発生した」と判定することができる。
【０２２２】
（変形例）
次に、本発明の変形例に係る多気筒内燃機関の空燃比気筒間インバランス判定装置（以下、単に「変形例」と称呼する。）について説明する。この変形例は空燃比制御装置であり、機械圧縮比に応じて空燃比変換テーブル（出力値Ｖａｂｙｆｓを空燃比に変換するための関係）を切り替えることを特徴としている。
【０２２３】
前述したように、機関の圧縮比が高くなるほど水素の発生量が増大する。従って、拡散抵抗層を備える上流側空燃比センサの出力値Ｖａｂｙｆｓと、所定の機械圧縮比の下で作成された空燃比変換テーブルＭａｐａｂｙｆｓと、によって得られる検出空燃比ａｂｙｆｓは、機関の圧縮比が高くなるほど真の空燃比よりもリッチ側の空燃比に対応した値になる。
【０２２４】
そこで、この変形例は、機械圧縮比が閾値機械圧縮比εｔｈよりも低い場合（即ち、閾値機械圧縮比εｔｈ未満である第１の機械圧縮比ε１である場合）、図２０の実線により示した「低圧縮比用の空燃比変換テーブルＭａｐａｂｙｆｓＬ（第１の空燃比変換テーブル、出力値Ｖａｂｙｆｓと空燃比との関係を定めた第１の関係・関数）」を使用しながら空燃比フィードバック制御（特に、メインフィードバック制御）を実行する。更に、この変形例は、機械圧縮比が閾値機械圧縮比εｔｈよりも高い場合（即ち、閾値機械圧縮比εｔｈ以上である第２の機械圧縮比ε２である場合）、図２０の破線により示した「高圧縮比用の空燃比変換テーブルＭａｐａｂｙｆｓＨ（第２の空燃比変換テーブル、出力値Ｖａｂｙｆｓと空燃比との関係を定めた第２の関係・関数）」を使用しながら空燃比フィードバック制御（特に、メインフィードバック制御）を実行する。この高圧縮比用の空燃比変換テーブルＭａｐａｂｙｆｓＨによれば、特に、出力値Ｖａｂｙｆｓが理論空燃比に相当するＶｓｔｏｉｃｈよりも小さい場合（リッチ側の領域）において、低圧縮比用の空燃比変換テーブルＭａｐａｂｙｆｓＬを用いた場合より、同じ出力値Ｖｒ０に対して空燃比はリーン側（理論空燃比に近い側）であるように求められる（ａ１＜ａ２）。
【０２２５】
より具体的に述べると、変形例のＣＰＵは、第１判定装置のＣＰＵが実行するルーチンのうち「図１４のルーチン」を除くルーチンを実行するとともに、更に、図１４に代わる図２１にフローチャートにより示した「メインフィードバック量算出ルーチン」を所定時間の経過毎に繰り返し実行している。
【０２２６】
図２１のルーチンは、図１４のステップ１４１５を、ステップ２１１０乃至ステップ２１３０に置換した点のみにおいて図１４のルーチンと相違している。
【０２２７】
即ち、変形例のＣＰＵはステップ１４１０にて上記（２）式に従ってフィードバック制御用出力値Ｖａｂｙｆｃを取得し、ステップ２１１０に進んで実機械圧縮比εａｃｔが閾値機械圧縮比εｔｈ以上であるか否かを判定する。変形例のＣＰＵは、第１判定装置のＣＰＵと同様、機関１０の負荷ＫＬが所定値以上の場合に機関１０の機械圧縮比が第１の機械圧縮比ε１となるように圧縮比変更機構のアクチュエータ２０８に指示信号を送出し、機関１０の負荷ＫＬが所定値未満の場合に機関１０の機械圧縮比が第２の機械圧縮比ε２となるように圧縮比変更機構のアクチュエータ２０８に指示信号を送出している。
【０２２８】
ＣＰＵは、実機械圧縮比εａｃｔが閾値機械圧縮比εｔｈ以上である場合（即ち、実機械圧縮比εａｃｔが第２の機械圧縮比ε２である場合）には以下に述べるステップ２１２０に進み、実機械圧縮比εａｃｔが閾値機械圧縮比εｔｈ未満である場合（即ち、実機械圧縮比εａｃｔが第１の機械圧縮比ε１である場合）には以下に述べるステップ２１３０に進む。
【０２２９】
ステップ２１２０：ＣＰＵは、ステップ１４１０にて求めたフィードバック制御用出力値Ｖａｂｙｆｃを、図２０に破線により示した「高圧縮比用の空燃比変換テーブルＭａｐａｂｙｆｓＨ」に適用することにより、フィードバック制御用空燃比ａｂｙｆｓｃを得る。
ステップ２１３０：ＣＰＵは、ステップ１４１０にて求めたフィードバック制御用出力値Ｖａｂｙｆｃを、図２０に実線により示した「低圧縮比用の空燃比変換テーブルＭａｐａｂｙｆｓＬ」に適用することにより、フィードバック制御用空燃比ａｂｙｆｓｃを得る。その後、ＣＰＵはステップ１４２０乃至ステップ１４４０の処理を実行し、メインフィードバック量ＤＦｉ」を算出する。
【０２３０】
従って、変形例によれば、機械圧縮比が変化したことに伴って生じる「上流側空燃比センサの出力値により表される空燃比と、上流側空燃比センサの配設部位に実際に到達している空燃比（即ち、機関全体に供給される混合気の空燃比の平均値）と、の差」を小さくすることができる。実際には、変形例は、フィードバック制御用出力値Ｖａｂｙｆｃが本来表すべき空燃比を精度良く取得することができる。その結果、空燃比気筒間インバランス状態が発生しているか否かに関わらず、エミッションを更に良好に維持することができる。
【０２３１】
以上、説明したように、本発明による空燃比気筒間インバランス判定装置の各実施形態によれば、圧縮比が変化しても、エミッションが必要以上に悪化しない適切なタイミングにて空燃比気筒間インバランス状態が発生したと判定することができる。
【０２３２】
なお、本発明は上記実施形態に限定されることはなく、本発明の範囲内において種々の変形例を採用することができる。例えば、上記各実施形態におけるインバランス判定用パラメータはサブＦＢ学習値平均値Ａｖｅｓｆｂｇ等であったが、「サブＦＢ学習値Ｖａｆｓｆｂｇそのもの、又は、サブフィードバック量Ｖａｆｓｆｂの平均値」をインバランス判定用パラメータとして取得してもよい。更に、インバランス判定用パラメータは、以下のような値であってもよい。
【０２３３】
（Ｐ１）インバランス判定用パラメータは、上流側空燃比センサ５７の出力値Ｖａｂｙｆｓの軌跡長又は検出空燃比ａｂｙｆｓの軌跡長であってもよい。例えば、検出空燃比ａｂｙｆｓの軌跡長は、一定サンプリング時間ｔｓが経過する毎に出力値Ｖａｂｙｆｓを取得するとともに、その出力値Ｖａｂｙｆｓを検出空燃比ａｂｙｆｓへと変換し、その検出空燃比ａｂｙｆｓと、一定サンプリング時間ｔｓ前に取得した検出空燃比ａｂｙｆｓと、の差の絶対値を積算することによって求めることができる。この積算値は、単位燃焼サイクルが経過する毎に「０」にリセットされるとよい。「単位燃焼サイクル期間」は、上流側空燃比センサ５７に排ガスが到達する複数の気筒（本例においては総ての気筒）のうちの任意の一つの気筒が「吸気、圧縮、膨張及び排気の行程からなる一つの燃焼サイクル」を終了するのに要する期間のことである。機関１０は、４気筒４サイクル機関であるので、単位燃焼サイクル期間は「機関１０のクランク角が７２０°増大する期間」である。
【０２３４】
空燃比気筒間インバランス状態が発生していない場合、図２２の（Ｂ）の破線により示したように、上流側空燃比センサ５７の出力値Ｖａｂｙｆｓに基づく検出空燃比ａｂｙｆｓは殆ど変化しない。これに対し、空燃比気筒間インバランス状態が発生している場合、図２２の（Ｂ）の実線により示したように、検出空燃比ａｂｙｆｓは、「気筒別空燃比が理論空燃比に対してリッチ側又はリーン側に大きく偏移している異常気筒」からの排ガスが上流側空燃比センサ５７に到達する毎に、大きく変動する。更に、検出空燃比ａｂｙｆｓは、気筒別空燃比の間の不均衡の程度が大きいほど大きく変動する。
【０２３５】
従って、上流側空燃比センサ５７の出力値Ｖａｂｙｆｓの軌跡長又は検出空燃比ａｂｙｆｓの軌跡長は、空燃比気筒間インバランス状態が発生すると大きくなり、閾値Ｌｔｈ以上となる。そして、本発明による判定装置は、この閾値Ｌｔｈを圧縮比に応じて変更する。より具体的には、判定装置は、機械圧縮比εａｃｔが大きいほど閾値Ｌｔｈを小さくする。なお、出力値Ｖａｂｙｆｓの軌跡長及び検出空燃比ａｂｙｆｓの軌跡長は、機関回転速度ＮＥが大きいほど大きくなる傾向を有するので、判定装置は、機関回転速度ＮＥが大きいほど閾値Ｌｔｈを大きくすることが好ましい。
【０２３６】
（Ｐ２）インバランス判定用パラメータは、上流側空燃比センサ５７の出力値Ｖａｂｙｆｓ値の時間変化率に応じた値（即ち、上流側空燃比センサの出力値の時間についての微分値ｄＶａｂｙｆｓ／ｄｔ、又は、上流側空燃比センサ５７の出力値Ｖａｂｙｆｓにより表される検出空燃比ａｂｙｆｓ（＝Ｍａｐａｂｙｆｓ（Ｖａｂｙｆｓ））の時間についての微分値ｄａｂｙｆｓ／ｄｔ）の絶対値であってもよい（図２２の（Ｂ）の傾きα１、α２の大きさを参照。）。上流側空燃比センサ５７の出力値Ｖａｂｙｆｓ値の時間変化率に応じた値は、上流側空燃比センサ５７の出力値Ｖａｂｙｆｓにより表される空燃比（検出空燃比ａｂｙｆｓ）の単位時間あたりの変化量ということもできる。
【０２３７】
例えば、検出空燃比ａｂｙｆｓの変化率は、一定サンプリング時間ｔｓが経過する毎に出力値Ｖａｂｙｆｓを取得するとともに、その出力値Ｖａｂｙｆｓを検出空燃比ａｂｙｆｓへと変換し、その検出空燃比ａｂｙｆｓと、一定サンプリング時間ｔｓ前に取得した検出空燃比ａｂｙｆｓと、の差として取得することができる。この場合、単位燃焼サイクル内において複数得られた「検出空燃比ａｂｙｆｓの変化率の絶対値」の最大値を選択し、その最大値をインバランス判定用パラメータとして採用していもよい。
【０２３８】
実際、上流側空燃比センサ５７の出力値Ｖａｂｙｆｓ値の変化率に応じた値の絶対値は、図２２の（Ｄ）の実線により示したように、空燃比気筒間インバランス状態が発生すると大きくなり、閾値Ｈｔｈを超える。更に、上流側空燃比センサ５７の出力値Ｖａｂｙｆｓ値の変化率に応じた値の絶対値は、気筒別空燃比の間の不均衡の程度が大きいほど大きくなる。
【０２３９】
これに対し、空燃比気筒間インバランス状態が発生していなければ、図２２の（Ｄ）の破線により示したように、上流側空燃比センサ５７の出力値Ｖａｂｙｆｓ値の変化率に応じた値の絶対値は、閾値Ｈｔｈを超えない。それ故、上流側空燃比センサ５７の出力値Ｖａｂｙｆｓ値の変化率に応じた値の絶対値は、インバランス判定用パラメータとして使用することができるパラメータとなる。そして、本発明による判定装置は、この閾値Ｈｔｈを圧縮比に応じて変更する。より具体的には、判定装置は、機械圧縮比εａｃｔが大きいほど閾値Ｈｔｈを小さくする。
【０２４０】
なお、上流側空燃比センサ５７の出力値Ｖａｂｙｆｓ値の変化率に応じた値の絶対値は、吸入空気流量Ｇａに依存して変化するが、機関回転速度ＮＥに依存して変化しない。これは次の理由による。前述したように、上流側空燃比センサ５７は、外側保護カバー５７ｂの中心軸Ｃｇが排ガスの流れの向きに直交し、外側保護カバー５７ｂの底面は排ガスの流れの向きに平行となるように、配置されている。従って、図３及び図４に示したように、外側保護カバー５７ｂの流入孔５７ｂ１に到達した排気通路内の排ガスＥＸは、外側保護カバー５７ｂの流出孔５７ｂ２近傍を流れる排気通路内の排ガスＥＸの流れにより、外側保護カバー５７ｂ及び内側保護カバー５７ｃの内部へと吸い込まれる。
【０２４１】
このため、外側保護カバー５７ｂ及び内側保護カバー５７ｃの内部における排ガスの流速は、外側保護カバー５７ｂの流出孔５７ｂ２近傍を流れる排ガスＥＸの流速（従って、単位時間あたりの吸入空気量である吸入空気流量Ｇａ）に応じて変化する。換言すると、「ある空燃比の排ガス（第１排ガス）が流入孔５７ｂ１に到達した時点」から「その第１排ガスが空燃比検出素子５７ａに到達する時点」までの時間は、吸入空気流量Ｇａに依存するが機関回転速度ＮＥには依存しない。このことは、上流側空燃比センサ５７が内側の保護カバーのみを有する場合にも成立する。
【０２４２】
この結果、空燃比気筒間インバランス状態が発生することにより、理論空燃比よりも大きくリッチ側に偏移した排ガスが流入孔５７ｂ１に到達しはじめると、その時点より僅かに遅れてその排ガスが空燃比検出素子５７ａに到達する。このとき、前述したように、外側保護カバー５７ｂ及び内側保護カバー５７ｃの内部を流れる排ガスの流速は、排気通路を流れる排ガスの流速により決定される。
【０２４３】
更に、空燃比検出素子５７ａに接触する排ガスの空燃比は、「空燃比検出素子５７ａに新たに到達した排ガス」と「空燃比検出素子５７ａの近傍に既に存在していた排ガス」とが混合された排ガスの空燃比となる。従って、空燃比検出素子５７ａに接触（到達）する排ガスの空燃比の変化率（空燃比の時間微分値である変化速度、従って、検出空燃比ａｂｙｆｓの時間についての微分値、検出空燃比変化率、検出空燃比の変化の傾き）は「排ガスＥＸの流速に実質的に比例する吸入空気流量Ｇａ」が大きいほど大きくなる。即ち、空燃比検出素子５７ａに接触（到達）する排ガスの空燃比は、吸入空気流量Ｇａが大きいほど迅速に減少する。
【０２４４】
その後、理論空燃比から大きく偏移していない排ガスが流入孔５７ｂ１に到達しはじめると、その時点より僅かに遅れてその排ガスが空燃比検出素子５７ａに到達する。この場合においても、前述したように、外側保護カバー５７ｂ及び内側保護カバー５７ｃの内部を流れる排ガスの流速は、排気通路を流れる排ガスＥＸの流速により決定される。従って、空燃比検出素子５７ａに接触（到達）する排ガスの空燃比は、吸入空気流量Ｇａが大きいほど迅速に増大する。従って、検出空燃比ａｂｙｆｓの変化率は、吸入空気流量Ｇａが大きいほど大きくなる傾向を有する。
【０２４５】
一方、機関回転速度ＮＥが大きいほど、理論空燃比よりも大きくリッチ側に偏移した排ガスが流入孔５７ｂ１に到達を始める時間間隔（即ち、空燃比変動周期）は小さくなる。しかしながら、上述したように、外側保護カバー５７ｂ及び内側保護カバー５７ｃの内部を流れる排ガスの流速は、排気通路を流れる排ガスＥＸの流速により決定されるが、機関回転速度ＮＥの影響を受けない。従って、機関回転速度ＮＥが変化しても、吸入空気流量Ｇａが変化しなければ、検出空燃比ａｂｙｆｓの変化率は変化しない。以上のことから、判定装置は、吸入空気流量Ｇａが大きいほど閾値Ｈｔｈを大きくすることが好ましい。
【０２４６】
（Ｐ３）インバランス判定用パラメータは、前記上流側空燃比センサの出力値の変化率（時間変化率）の変化率（時間変化率）に応じた値（上流側空燃比センサ５７の出力値Ｖａｂｙｆｓの時間に関する二階微分値ｄ２（Ｖａｂｙｆｓ）／ｄｔ２、又は、上流側空燃比センサ５７の出力値Ｖａｂｙｆｓにより表される検出空燃比ａｂｙｆｓの時間に関する二階微分値ｄ２（ａｂｙｆｓ）／ｄｔ２）の絶対値であってもよい。上流側空燃比センサ５７の出力値Ｖａｂｙｆｓ値の変化率の変化率に応じた値は、上流側空燃比センサ５７の出力値Ｖａｂｙｆｓにより表される空燃比（検出空燃比ａｂｙｆｓ）の単位時間あたりの変化量の変化量ということもできる。
【０２４７】
例えば、検出空燃比ａｂｙｆｓの変化率の変化率は次のようにして取得することができる。
・一定サンプリング時間ｔｓが経過する毎に出力値Ｖａｂｙｆｓを取得する。
・その出力Ｖａｂｙｆｓを検出空燃比ａｂｙｆｓへと変換する。
・その検出空燃比ａｂｙｆｓと、一定サンプリング時間ｔｓ前に取得した検出空燃比ａｂｙｆｓと、の差を検出空燃比ａｂｙｆｓの変化率として取得する。
・その検出空燃比ａｂｙｆｓの変化率と、一定サンプリング時間ｔｓ前に取得した検出空燃比ａｂｙｆｓの変化率と、の差を検出空燃比ａｂｙｆｓの変化率の変化率として取得する。
この場合、単位燃焼サイクル内において複数得られた「検出空燃比ａｂｙｆｓの変化率の変化率」の中からその絶対値が最大である値」を選択し、その最大値をインバランス判定用パラメータとして採用していもよい。
【０２４８】
上述したように、空燃比気筒間インバランス状態が発生している場合、上流側空燃比センサ５７の出力値Ｖａｂｙｆｓは、上流側空燃比センサ５７に到達する排ガスが、「正常気筒からの排ガスから異常気筒からの排ガスへと変化したとき、及び、異常気筒からの排ガスから正常気筒からの排ガスへと変化したとき」急激に変化する。従って、図２２の（Ｅ）に実線により示したように、上流側空燃比センサ５７の出力値Ｖａｂｙｆｓにより表される検出空燃比ａｂｙｆｓの変化率の変化率の絶対値（出力値Ｖａｂｙｆｓの二階微分値又は検出空燃比ａｂｙｆｓの二階微分値）は、空燃比気筒間インバランス状態が発生すると、大きくなり、閾値Ｇｔｈを超える。更に、検出空燃比ａｂｙｆｓの変化率の変化率の絶対値は、気筒別空燃比の間の不均衡の程度が大きいほど大きくなる。
【０２４９】
これに対し、空燃比気筒間インバランス状態が発生していなければ、図２２の（Ｅ）の破線により示したように、検出空燃比ａｂｙｆｓの変化率の変化率の絶対値は、閾値Ｇｔｈを超えない。それ故、検出空燃比ａｂｙｆｓの変化率の変化率に応じた値の絶対値は、インバランス判定用パラメータとして使用することができるパラメータとなる。そして、本発明による判定装置は、この閾値Ｇｔｈを圧縮比に応じて変更する。より具体的には、判定装置は、機械圧縮比εａｃｔが大きいほど閾値Ｇｔｈを小さくする。
【０２５０】
（Ｐ４）インバランス判定用パラメータは、「上流側空燃比センサ５７の出力値Ｖａｂｙｆｓを機関回転速度ＮＥ、機関のクランク角及び吸入空気流量Ｇａ等に基づいて分析することによって推定される気筒別空燃比」の間の差の大きさ（例えば、気筒別空燃比のうちの最大値と最小値との差の絶対値等）であってもよい。
【０２５１】
更に、上記判定装置のサブフィードバック制御は、下流側空燃比センサ５８の出力値Ｖｏｘｓが下流側目標値Ｖｏｘｓｒｅｆに一致するように、上流側空燃比センサ５７の出力値Ｖａｂｙｆｓに基づく空燃比ａｂｙｆｓを見かけ上補正するような態様であった（上記（２）式を参照。）。これに対し、サブフィードバック制御は、特開平６−０１０７３８号公報に開示されているように、上流側空燃比センサ５７の出力値に基いて作成される空燃比補正係数を「下流側空燃比センサ５８の出力値Ｖｏｘｓを積分して求めたサブフィードバック量」に基いて変更する態様であってもよい。
【０２５２】
また、上記判定装置は、特開２００７−７７８６９号公報、特開２００７−１４６６６１号公報及び特開２００７−１６２５６５号公報等に開示されているように、上流側空燃比センサ５７の出力値Ｖａｂｙｆｓに基いて得られる上流側空燃比ａｂｙｆｓと上流側目標空燃比ａｂｙｆｒとの差をハイパスフィルタ処理してメインフィードバック量ＫＦｍａｉｎを算出するとともに、下流側空燃比センサ５８の出力値Ｖｏｘｓと下流側目標値Ｖｏｘｓｒｅｆとの偏差に対してローパスフィルタ処理を施した値を比例積分処理することによりサブフィードバック量Ｆｉｓｕｂを求めるように構成されていてもよい。この場合、下記（１４）式に示したように、それらのフィードバック量を互いに独立させた形態にて基本燃料噴射量Ｆｂａｓｅの補正に用い、それにより、最終燃料噴射量Ｆｉを求めるように構成されていても良い。
Ｆｉ＝ＫＦｍａｉｎ・Ｆｂａｓｅ＋Ｆｉｓｕｂ    …（１４）
【０２５３】
また、上記判定装置は、下記（１５）式に従ってサブＦＢ学習値Ｖａｆｓｆｂｇを更新してもよい。この場合、（１５）式から明らかなように、サブＦＢ学習値Ｖａｆｓｆｂｇは「サブフィードバック量Ｖａｆｓｆｂ」に「ノイズ除去のためのフィルタ処理」を施した値となる。換言すると、サブＦＢ学習値Ｖａｆｓｆｂｇは、サブフィードバック量Ｖａｆｓｆｂの一次遅れ量（なまし値）であってもよい。（１５）式において、値ｐは０より大きく１より小さい定数である。
Ｖａｆｓｆｂｇｎｅｗ＝（１−ｐ）・Ｖａｆｓｆｂｇ＋ｐ・Ｖａｆｓｆｂ  …（１５）
【０２５４】
また、本判定装置は、例えば、Ｖ型エンジンにも適用することができる。その場合、Ｖ型エンジンは右バンクに属する２以上の気筒の排気集合部よりも下流に右バンク上流側触媒（前記機関の排気通路であって前記複数の気筒のうちの少なくとも２以上の気筒の燃焼室から排出された排ガスが集合する排気集合部よりも下流側の部位に配設された触媒）を備え、左バンクに属する２以上の気筒の排気集合部よりも下流に左バンク上流側触媒（前記機関の排気通路であって前記複数の気筒のうちの少なくとも２以上の気筒以外の残りの２以上の気筒の燃焼室から排出された排ガスが集合する排気集合部よりも下流側の部位に配設された触媒）と、を備えることができる。更に、Ｖ型エンジンは、右バンク上流側触媒の上流及び下流に右バンク用の上流側空燃比センサ及び下流側空燃比センサを備え、左バンク上流側触媒の上流及び下流に左バンク用の上流側空燃比センサ及び下流側空燃比センサを備えることができる。この場合、右バンク用のメインフィードバック制御及びサブフィードバック制御が実行され、それとは独立して左バンク用のメインフィードバック制御及びサブフィードバック制御が実行される。
【０２５５】
加えて、上記実施形態においては、機械圧縮比に基づいて、空燃比気筒間インバランス状態が発生しているか否かの判定を実行するための閾値（インバランス判定用パラメータと比較される閾値）を変更していたが、判定装置が機関の負荷ＫＬ及び機関回転速度ＮＥ等の運転状態に応じて機関１０の実圧縮比を変更する（吸気弁２２ａの閉弁タイミングを変更する）ように構成されている場合、この実圧縮比に基づいて前記閾値を変更するように構成されてもよい。
【図１】
2011024324.tif 000003
【図２】
2011024324.tif 000004
【図３】
2011024324.tif 000005
【図４】
2011024324.tif 000006
【図５】
2011024324.tif 000007
【図６】
2011024324.tif 000008
【図７】
2011024324.tif 000009
【図８】
2011024324.tif 000010
【図９】
2011024324.tif 000011
【図１０】
2011024324.tif 000012
【図１１】
2011024324.tif 000013
【図１２】
2011024324.tif 000014
【図１３】
2011024324.tif 000015
【図１４】
2011024324.tif 000016
【図１５】
2011024324.tif 000017
【図１６】
2011024324.tif 000018
【図１７】
2011024324.tif 000019
【図１８】
2011024324.tif 000020
【図１９】
2011024324.tif 000021
【図２０】
2011024324.tif 000022
【図２１】
2011024324.tif 000023
【図２２】
2011024324.tif 000024
【国際調査報告】
2011024324.tif 000025
2011024324.tif 000026