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