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