(57)【要約】【課題】  空燃比センサが非対称に劣化した場合においても空燃比を適切に制御し、もって、エミッションを良好に維持することができる内燃機関の空燃比制御装置を提供すること。【解決手段】  制御装置は、排ガス浄化のための触媒を備えた内燃機関に適用される。制御装置は、空燃比センサの劣化を監視するとともに、空燃比センサが非対称に劣化した場合（ステップ７１０にて「Ｙｅｓ」と判定された場合）、空燃比センサの出力値に対して空燃比センサの劣化に対応する時定数に基づくローパスフィルタ処理を施し（ステップ７６０）、処理された出力値に基づき空燃比制御を行う（ステップ７１５乃至ステップ７４５）。【選択図】  図７
2010096015.tif 000002
【特許請求の範囲】
【請求項１】
内燃機関の排気通路に配設されるとともに配設された部位を流れる排ガスの空燃比に応じた出力値を出力する空燃比センサと、
前記排ガスの空燃比が増大したときの前記空燃比センサの応答時定数であるリーン方向応答時定数、及び、前記排ガスの空燃比が減少したときの前記空燃比センサの応答時定数であるリッチ方向応答時定数を取得する応答時定数取得手段と、
基準応答時定数を、前記リーン方向応答時定数及び前記リッチ方向応答時定数のうちの何れか大きい方の応答時定数である劣化側応答時定数に基づいて同劣化側応答時定数以上となるように決定するとともに、同基準応答時定数に対応する時定数を有するローパスフィルタ処理を前記空燃比センサの出力値に対して施すことによって処理後出力値を得るセンサ出力処理手段と、
前記処理後出力値に基づいて前記機関に供給される混合気の空燃比を目標空燃比に一致させる空燃比フィードバック制御を実行する空燃比制御手段と、
を備える内燃機関の空燃比制御装置。
【請求項２】
請求項１に記載の内燃機関の空燃比制御装置において、
前記センサ出力処理手段は、
前記基準応答時定数を前記機関が第１の運転状態にあるときの前記劣化側応答時定数に基づいて決定するように構成され、且つ、
前記機関が前記第１の運転状態とは異なる第２の運転状態にある場合、前記劣化側応答時定数を同第２の運転状態に応じたパラメータに基づいて補正した値に対応する時定数を前記ローパスフィルタの時定数として採用するように構成された空燃比制御装置。
【請求項３】
請求項１に記載の内燃機関の空燃比制御装置において、
前記センサ出力処理手段は、
前記基準応答時定数を前記機関が第１の運転状態にあるときの前記劣化側応答時定数に基づいて決定するように構成され、且つ、
前記機関が前記第１の運転状態とは異なる第２の運転状態にある場合、前記基準応答時定数を同第２の運転状態に応じたパラメータに基づいて補正した値に対応する時定数を前記ローパスフィルタの時定数として採用するように構成された空燃比制御装置。
【請求項４】
内燃機関の排気通路に配設された触媒と、
前記排気通路であって前記触媒よりも上流側の部位に配設されるとともに同配設された部位を流れる排ガスの空燃比に応じた出力値を出力する上流側空燃比センサと、
前記排気通路であって前記触媒よりも下流側の部位に配設されるとともに同配設された部位を流れる排ガスの空燃比に応じた出力値を出力する下流側空燃比センサと、
を備えた内燃機関に適用され、
前記上流側空燃比センサの出力値に応じた値と理論空燃比に対応する上流側目標値との偏差に対してハイパスフィルタ処理を施した値、及び、前記上流側空燃比センサの出力値に応じた値に対してハイパスフィルタ処理を施した値と理論空燃比に対応する上流側目標値との偏差の何れか一方に基づき、前記機関に供給される混合気の空燃比をフィードバック制御するためのメインフィードバック補正量を、少なくとも一つのゲインを含む第１フィードバック制御係数を用いて算出するメインフィードバック補正量算出手段と、
前記下流側空燃比センサの出力値に応じた値と理論空燃比に対応する下流側目標値との偏差に対してローパスフィルタ処理を施した値に基づき、前記機関に供給される混合気の空燃比をフィードバック制御するためのサブフィードバック補正量を、前記メインフィードバック補正量の算出とは独立して算出するサブフィードバック補正量算出手段と、
前記メインフィードバック補正量及び前記サブフィードバック補正量に基づいて前記機関に供給される混合気の空燃比を理論空燃比に一致するようにフィードバック制御する空燃比制御手段と、
前記排ガスの空燃比が増大したときの前記上流側空燃比センサの応答時定数であるリーン方向応答時定数、及び、前記排ガスの空燃比が減少したときの前記上流側空燃比センサの応答時定数であるリッチ方向応答時定数を取得する応答時定数取得手段と、
前記リーン方向応答時定数と前記リッチ方向応答時定数との差の絶対値である診断指標値が所定の許容値よりも大きいか否かを判定する空燃比センサ診断手段と、
を備えるとともに、
前記メインフィードバック補正量算出手段は、
前記空燃比センサ診断手段によって前記診断指標値が前記許容値よりも大きいと判定されたとき、前記第１フィードバック制御係数に代え、前記第１フィードバック制御係数に含まれるゲインのうちの少なくとも一つのゲインを小さくして得られる第２フィードバック制御係数を用いて前記メインフィードバック補正量を算出するように構成された内燃機関の空燃比制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内燃機関の排気通路に配設された空燃比センサの出力値に基づいて機関に供給される混合比の空燃比（以下、単に「機関の空燃比」とも称呼する。）をフィードバック制御する内燃機関の空燃比制御装置に関する。
【背景技術】
【０００２】
従来から、排ガスを浄化するための触媒（排気浄化用触媒、三元触媒）を排気通路に備えた内燃機関が提案されている。この触媒は、触媒の温度がその活性温度以上であり、且つ、触媒に流入する排ガスの空燃比が「理論空燃比を含む所定の空燃比幅（所謂ウインドウの範囲）」内にある場合、高い効率にて排ガス中の未燃物と窒素酸化物とを浄化することができる。そこで、このような触媒を備えた内燃機関においては、排気通路に備えられた空燃比センサの出力値に基づいて触媒に流入する排ガスの空燃比を制御する空燃比制御装置が広く採用されている。
【０００３】
この空燃比制御装置は、空燃比センサの出力値に基づいて空燃比センサが配設されている部位を流れる排ガスの空燃比を算出し、算出された空燃比が所定の目標空燃比（上述したウインドウの範囲内の空燃比）に一致するように機関の空燃比に対するフィードバック制御を実行する。これにより、触媒に流入する排ガスの空燃比が適切な値に制御され、その結果、機関のエミッションが良好に維持される。従って、この制御が適切に実行されるには、空燃比センサが正常に機能することが重要である。
【０００４】
しかし、空燃比センサへの未燃物等の付着、センサ素子の欠損及び経年劣化等の理由により、空燃比センサが劣化する（例えば、空燃比センサの出力及び応答速度等が低下する）場合がある。そこで、従来の空燃比制御装置の一つは、空燃比センサの劣化を診断するとともに、空燃比センサが劣化していると診断される場合には空燃比センサの出力値の高周波数成分を増幅器にて増幅するようになっている。これにより、空燃比センサの出力値が補償される（例えば、特許文献１を参照。）。なお、以下では、この補償を「高周波数成分増幅補償」とも称呼する。
【特許文献１】特開２００７−２７８０７６号公報
【発明の開示】
【０００５】
しかし、発明者は、上述した高周波数成分増幅補償を実行したとしても空燃比センサの出力値が適切に補償されない場合があることを見出した。以下、この点について述べる。
【０００６】
上述したように、空燃比センサが劣化すると、その出力及び応答速度等（以下、これらのパラメータを総称して「応答性」とも称呼する。）が低下する。劣化した空燃比センサの出力値は、空燃比センサが配設されている部位を流れる排ガスの空燃比が変動したとき、その変動に十分に追従することができない。具体的に述べると、空燃比センサが劣化すると、排ガスの空燃比の変動のうちの高周波数成分が検知され難くなるとともに、その出力値の大きさが空燃比センサが劣化していないときに比較して小さくなる（即ち、出力値の波形の振幅が小さくなる。）傾向がある。
【０００７】
一方、空燃比センサの出力値には、高周波ノイズが混入する場合がある。上述したように、劣化した空燃比センサは、劣化していない空燃比センサの出力値（以下、「通常出力値」とも称呼する。）に比較して振幅が小さく且つ高周波数成分が少ない出力値（以下、「劣化出力値」とも称呼する。）を出力する傾向がある。そのため、一般に、劣化出力値に上記高周波ノイズが混入したときの高周波ノイズの影響は、通常出力値に高周波ノイズが混入したときの高周波ノイズの影響よりも大きい。高周波ノイズが混入した劣化出力値に対して上述した「高周波数成分増幅補償」を行うと、劣化出力値に混入した高周波ノイズが増幅されるので、更に高周波ノイズの影響が大きくなる。
【０００８】
上述したように、上記空燃比制御装置は、空燃比センサの出力値に基づいて排ガスの空燃比を算出するようになっている。高周波ノイズの影響が十分に小さいとき、排ガスの実際の空燃比（以下、便宜上、「実空燃比」とも称呼する。）と空燃比センサの出力値に基づいて算出される空燃比（以下、「検出空燃比」とも称呼する。）とは、空燃比制御を実行する上で問題が無い程度に一致する。しかし、高周波ノイズの影響が大きいとき、実空燃比と検出空燃比との差が大きくなるので、機関の空燃比を適切に制御することができない。その結果、機関のエミッションが悪化するという問題が生じる。
【０００９】
更に、空燃比センサが劣化するとき、空燃比がリッチ側からリーン側に変動する場合の空燃比センサの応答性（以下、「リーン方向応答性」とも称呼する。）と空燃比がリーン側からリッチ側に変動する場合の空燃比センサの応答性（以下、「リッチ方向応答性」とも称呼する。）とが同程度に低下しない場合がある。なお、以下では、リーン方向応答性及びリッチ方向応答性が同程度に低下する劣化を「対称劣化」とも称呼する。
【００１０】
リーン方向応答性又はリッチ方向応答性のうちの何れか一方のみが低下したとき、又は、リーン方向応答性の低下の度合いとリッチ方向応答性の低下の度合いとが異なるとき（以下、これらの劣化を「非対称劣化」とも称呼する。）、空燃比センサの出力値は、実空燃比がリーン方向へ変動した場合とリッチ方向へ変動した場合とにおいて異なる挙動を示す（以下、出力値のこのような挙動を「非対称応答」とも称呼する。）。一般に、空燃比センサが非対称劣化するときの機関のエミッションは、空燃比センサが対称劣化するときの機関のエミッションよりも悪化する。
【００１１】
上述した「高周波数成分増幅補償」は、空燃比センサの出力値「全体」に対して行われる。従って、非対称応答を示している出力値に対して「高周波数成分増幅補償」を行ったとしても、非対称応答は解消されない。更に、非対称応答を示している出力値「全体」に対して「高周波数成分増幅補償」を行うと、応答性が高い方向の出力値の高周波数成分が過度に増幅される。空燃比センサの出力値がこのように補償されたとき、上記同様に実空燃比と検出空燃比との差が大きくなるので、機関の空燃比を適切に制御することができない。これらの結果、機関のエミッションが更に悪化するという問題も生じる。
【００１２】
本発明は、上記課題に対処するためになされたものである。即ち、本発明の目的は、空燃比センサが非対称に劣化した場合にもその出力値を適切に補正し、もって、機関のエミッションを良好に維持することができる内燃機関の空燃比制御装置を提供することにある。
【００１３】
より具体的に述べると、本発明の内燃機関の第１の空燃比制御装置は、
（１）内燃機関の排気通路に配設されるとともに配設された部位を流れる排ガスの空燃比に応じた出力値を出力する空燃比センサと、
（２）前記排ガスの空燃比が増大したときの前記空燃比センサの応答時定数であるリーン方向応答時定数、及び、前記排ガスの空燃比が減少したときの前記空燃比センサの応答時定数であるリッチ方向応答時定数を取得する応答時定数取得手段と、
（３）基準応答時定数を、前記リーン方向応答時定数及び前記リッチ方向応答時定数のうちの何れか大きい方の応答時定数である劣化側応答時定数に基づいて同劣化側応答時定数以上となるように決定するとともに、同基準応答時定数に対応する時定数を有するローパスフィルタ処理を前記空燃比センサの出力値に対して施すことによって処理後出力値を得るセンサ出力処理手段と、
（４）前記処理後出力値に基づいて前記機関に供給される混合気の空燃比を目標空燃比に一致させる空燃比フィードバック制御を実行する空燃比制御手段と、
を備える。
【００１４】
上記構成によれば、排ガスの空燃比が増大する（リッチ側からリーン側に変動する）ときの空燃比センサの応答時定数が、「リーン方向応答時定数」として取得される。更に、排ガスの空燃比が減少する（リーン側からリッチ側に変動する）ときの空燃比センサの応答時定数が、「リッチ方向応答時定数」として取得される。
【００１５】
本発明において、「リーン方向応答時定数」及び「リッチ方向応答時定数」は、例えば以下のように定めることができる。
「リーン方向応答時定数」は、実空燃比を「理論空燃比stoichよりも所定値αだけ小さい空燃比（stoich−α）を始点とし、同始点から終点である理論空燃比stoichよりも所定値αだけ大きい空燃比（stoich＋α）まで」ステップ状に変化させたとき、検出空燃比が「同始点を基準として同始点から同終点までの空燃比の変化量（＋２α）のうちの所定割合（例えば、６３．２％）の空燃比」に達するまでの「時間」とすることができる。
「リッチ方向応答時定数」は、実空燃比を「理論空燃比stoichよりも所定値αだけ大きい空燃比（stoich＋α）を始点とし、同始点から終点である理論空燃比stoichよりも所定値αだけ小さい空燃比（stoich−α）まで」ステップ状に変化させたとき、検出空燃比が「同始点を基準として同始点から同終点までの空燃比の変化量（−２α）のうちの所定割合（例えば、６３．２％）の空燃比」に達するまでの「時間」とすることができる。
【００１６】
即ち、応答時定数は「空燃比センサの応答性を示す指標」であり、その値が小さいほど「空燃比センサの出力値に基づいて算出される空燃比（検出空燃比）」が「排ガスの実際の空燃比（実空燃比）」に速やかに追従する。即ち、応答時定数の値が「小さい」ほど空燃比センサの応答性が「高い」。
【００１７】
第１の空燃比制御装置においては、上記「リーン方向応答時定数」及び「リッチ方向応答時定数」のうちの何れか「大きい」方の応答時定数（以下、「劣化側応答時定数」とも称呼する。）「以上」となるように、「基準応答時定数」が決定される。即ち、基準応答時定数は、空燃比センサのリーン方向応答性及びリッチ方向応答性のうちの応答性が「低い」方向の応答性（以下、「劣化側応答性」とも称呼する。）、又は、劣化側応答性よりも更に「低い」応答性に対応する応答時定数である。
【００１８】
そして、上述した基準応答時定数に対応する時定数を有するローパスフィルタ処理が、空燃比センサの出力値に対して施される。更に、このように処理された出力値に基づき、機関の空燃比がフィードバック制御される。
【００１９】
従って、上記ローパスフィルタ処理により、空燃比センサの出力値のうちの基準応答時定数によって定まるカットオフ周波数よりも大きい周波数成分が、空燃比センサの出力値から実質的に除去される。この結果、ローパスフィルタ処理が施された空燃比センサの出力値（以下、「処理後出力値」とも称呼する。）は、実質的に、上記カットオフ周波数以下の周波数成分のみによって構成される。即ち、上記処理によって空燃比センサの「応答性が高い側の出力値」が「応答性が低い側の出力値」に合わせこまれるので、処理後出力値は対称な応答性を示すようになる。
【００２０】
その結果、空燃比フィードバック制御は対称な応答性を示す処理後出力値に基づいて実行されるので、機関の空燃比は適切に制御される。従って、機関のエミッションを良好に維持することができる。
【００２１】
ここで、上述した「基準応答時定数」は、「劣化側応答時定数そのもの」であってもよく、又は、「劣化側応答時定数に所定の正の値が加算された値」であってもよい。ここで、「加算される正の値」は、機関の運転状態、機関に要求される排ガス浄化能力及び燃費等を考慮した適値とすることができる。
【００２２】
また、「基準応答時定数に対応する時定数」は、「基準応答時定数そのもの」でもよく、又は、「基準応答時定数に所定の正の値が加算された値」であってもよい。ここで、「加算される正の値」は、上記同様、機関の運転状態、機関に要求される排ガス浄化能力及び燃費等を考慮した適値とすることができる。
【００２３】
更に、第１の空燃比制御装置において、
前記センサ出力処理手段（３）は、
前記基準応答時定数を前記機関が第１の運転状態にあるときの前記劣化側応答時定数に基づいて決定するように構成され、且つ、
前記機関が前記第１の運転状態とは異なる第２の運転状態にある場合、「前記劣化側応答時定数を同第２の運転状態に応じたパラメータに基づいて補正した値」に対応する時定数を前記ローパスフィルタの時定数として採用するように構成されることが好適である。
【００２４】
上記「劣化側応答時定数を第２の運転状態に応じたパラメータに基づいて補正した値に対応する時定数」は、「劣化側応答時定数を第２の運転状態に応じたパラメータに基づいて補正した値そのもの」でもよく、又は、「劣化側応答時定数を第２の運転状態に応じたパラメータに基づいて補正した値に所定の正の値が加算された値」であってもよい。ここで、「加算される正の値」は、機関の運転状態、機関に要求される排ガス浄化能力及び燃費等を考慮した適値とすることができる。
【００２５】
空燃比センサの出力値は、一般に、測定対象である排ガスの状態（例えば、排ガスの流量、圧力、温度及び成分等）の影響を受ける。従って、排ガスの状態に影響を与える機関の運転状態（例えば、負荷、機関回転速度、及び、筒内吸入空気量等のパラメータ等）は、空燃比センサの応答性（従って、劣化側応答時定数）を変化させ得る。そこで、上記構成においては、機関の第２の運転状態に応じたパラメータに基づいて「第１の運転状態にて得られた劣化側応答時定数」が補正されるとともに、補正された劣化側応答時定数に対応する時定数が第２の運転状態におけるローパスフィルタの時定数として採用される。
【００２６】
上記構成により、ローパスフィルタの時定数を運転状態に応じて適切に決定することができる。即ち、第１の運転状態と第２の運転状態とにおいて劣化側応答時定数が変化する場合であっても、ローパスフィルタの時定数を各運転状態における劣化側応答時定数以上の値に設定することができる。従って、空燃比センサの出力値に過剰又は過小なローパスフィルタ処理を施すことを避けることができる。この結果、機関のエミッションを更に良好に維持することができる。
【００２７】
ここで、「機関の運転状態に応じたパラメータ」として採用されるパラメータは、空燃比センサの応答性に影響を及ぼすパラメータであり、機関に要求される排ガス浄化性能及び燃費等を考慮して適宜決定することができる。例えば、「機関の運転状態に応じたパラメータ」は、機関の負荷、機関回転速度及び筒内吸入空気量のうちの一つ又は任意の二以上の組み合わせであってもよい。
【００２８】
また、第１の空燃比制御装置において、
前記センサ出力処理手段（３）は、
前記基準応答時定数を前記機関が第１の運転状態にあるときの前記劣化側応答時定数に基づいて決定するように構成され、且つ、
前記機関が前記第１の運転状態とは異なる第２の運転状態にある場合、「前記基準応答時定数を同第２の運転状態に応じたパラメータに基づいて補正した値」に対応する時定数を前記ローパスフィルタの時定数として採用するように構成されることが好適である。
【００２９】
上述したように、劣化側応答時定数は、機関の運転状態（例えば、負荷、機関回転速度、及び、筒内吸入空気量等のパラメータ）によって変化し得る。そこで、上記構成においては、機関の運転状態に応じたパラメータに基づいて「基準応答時定数」が補正されるとともに、「補正された基準応答時定数」に対応する時定数がローパスフィルタの時定数として採用される。
【００３０】
上記構成によっても、ローパスフィルタの時定数を運転状態に応じて適切に決定することができる。即ち、第１の運転状態と第２の運転状態とにおいて劣化側応答時定数が変化する場合であっても、ローパスフィルタの時定数を各運転状態における劣化側応答時定数以上の値に設定することができる。従って、空燃比センサの出力値に過剰又は過小なローパスフィルタ処理を施すことを避けることができる。この結果、機関のエミッションを更に良好に維持することができる。
【００３１】
この場合においても、「機関の運転状態に応じたパラメータ」として採用されるパラメータは、空燃比センサの応答性に影響を及ぼすパラメータであり、機関に要求される排ガス浄化性能及び燃費等を考慮して適宜決定することができる。例えば、「機関の運転状態に応じたパラメータ」は、機関の負荷、機関回転速度及び筒内吸入空気量のうちの一つ又は任意の二以上の組み合わせであってもよい。
【００３２】
本発明の第２の空燃比制御装置は、
（１）内燃機関の排気通路に配設された触媒と、
（２）前記排気通路であって前記触媒よりも上流側の部位に配設されるとともに同配設された部位を流れる排ガスの空燃比に応じた出力値を出力する上流側空燃比センサと、
（３）前記排気通路であって前記触媒よりも下流側の部位に配設されるとともに同配設された部位を流れる排ガスの空燃比に応じた出力値を出力する下流側空燃比センサと、
を備えた内燃機関に適用される。
【００３３】
第２の空燃比制御装置は、
（４）前記上流側空燃比センサの出力値に応じた値と理論空燃比に対応する上流側目標値との偏差に対してハイパスフィルタ処理を施した値、及び、前記上流側空燃比センサの出力値に応じた値に対してハイパスフィルタ処理を施した値と理論空燃比に対応する上流側目標値との偏差の何れか一方に基づき、前記機関に供給される混合気の空燃比をフィードバック制御するためのメインフィードバック補正量を、少なくとも一つのゲインを含む第１フィードバック制御係数を用いて算出するメインフィードバック補正量算出手段と、
（５）前記下流側空燃比センサの出力値に応じた値と理論空燃比に対応する下流側目標値との偏差に対してローパスフィルタ処理を施した値に基づき、前記機関に供給される混合気の空燃比をフィードバック制御するためのサブフィードバック補正量を、前記メインフィードバック補正量の算出とは独立して算出するサブフィードバック補正量算出手段と、
（６）前記メインフィードバック補正量及び前記サブフィードバック補正量に基づいて前記機関に供給される混合気の空燃比を理論空燃比に一致するようにフィードバック制御する空燃比制御手段と、
（７）前記排ガスの空燃比が増大したときの前記上流側空燃比センサの応答時定数であるリーン方向応答時定数、及び、前記排ガスの空燃比が減少したときの前記上流側空燃比センサの応答時定数であるリッチ方向応答時定数を取得する応答時定数取得手段と、
（８）前記リーン方向応答時定数と前記リッチ方向応答時定数との差の絶対値である診断指標値が所定の許容値よりも大きいか否かを判定する空燃比センサ診断手段と、
を備える。
【００３４】
更に、第２の空燃比制御装置において、
前記メインフィードバック補正量算出手段（４）は、
前記空燃比センサ診断手段によって前記診断指標値が前記許容値よりも大きいと判定されたとき、前記第１フィードバック制御係数に代え、前記第１フィードバック制御係数に含まれるゲインのうちの少なくとも一つのゲインを小さくして得られる第２フィードバック制御係数を用いて前記メインフィードバック補正量を算出するように構成される。
【００３５】
第２の空燃比制御装置においては、触媒の上流側に配設された上流側空燃比センサからの出力値に基づき、「メインフィードバック補正量」が算出される。また、触媒の下流側に配設された下流側空燃比センサの出力値に基づき、「サブフィードバック補正量」が算出される。そして、「メインフィードバック補正量」及び「サブフィードバック補正量」に基づき、機関に供給される混合気の空燃比が理論空燃比に一致するように制御される。
【００３６】
具体的に述べると、「メインフィードバック補正量」は、「上流側空燃比センサの出力値に応じた値と理論空燃比との偏差に対してハイパスフィルタ処理を施した値」及び「上流側空燃比センサの出力値に応じた値に対してハイパスフィルタ処理を施した値と理論空燃比との偏差」の何れか一方に基づき、少なくとも一つのゲインを含む第１フィードバック制御係数を用いて算出される。
【００３７】
また、「サブフィードバック補正量」は、「下流側空燃比センサの出力値に応じた値と理論空燃比に対応する下流側目標値との偏差に対してローパスフィルタ処理を施した値」に基づき、上述したメインフィードバック補正量の算出とは独立して算出される。
【００３８】
上述したように、第２の空燃比制御装置は、上流側空燃比センサの出力値に基づく値にハイパスフィルタ処理を施すとともに、下流側空燃比センサの出力値に基づく値にローパスフィルタ処理を施す。この理由について以下に述べる。
【００３９】
第２の空燃比制御装置に用いられる触媒（三元触媒）は、セラミック等からなる担持体に触媒成分（白金及びロジウム等の貴金属）及び酸素吸蔵物質（CeO2等）を担持している。酸素吸蔵物質は、空燃比が理論空燃比よりもリーン側である排ガスが触媒に流入するときに酸素を吸蔵するとともに、空燃比が理論空燃比よりもリッチ側である排ガスが触媒に流入するときに触媒活性点に酸素を放出する機能（所謂酸素吸蔵能力）を有している。このため、触媒「上流」の排ガスの空燃比の変動における高周波数成分、及び、同変動における振幅（理論空燃比からの偏移量）が小さい低周波数成分は、触媒が有する酸素吸蔵能力により吸収され、触媒「下流」の排ガスの空燃比の変動として現れない。
【００４０】
一方、触媒「上流」の排ガスの空燃比の変動における振幅が大きい低周波数成分は、触媒の酸素吸蔵能力によっては吸収され難いので、少し遅れて触媒「下流」の排ガスの空燃比の変動として現れる。この結果、上流側空燃比センサの出力値と下流側空燃比センサの出力値とが理論空燃比に対して互いに逆方向に偏移した空燃比を示す値となる場合がある。この場合、メインフィードバック制御に基づく機関の空燃比制御とサブフィードバック制御に基づく機関の空燃比制御とが互いに干渉し、その結果、良好な空燃比制御を行うことができない。
【００４１】
そこで、上流側空燃比センサの出力値の変動における周波数成分のうちの触媒「下流」の空燃比の変動として現れ得る程度の周波数成分である「所定の周波数（以下、「第１カットオフ周波数」とも称呼する。）以下の低周波数成分」を実質的に除去（ハイパスフィルタ処理）した後の上流側空燃比センサの出力値をメインフィードバック制御に使用すれば、空燃比制御が干渉することを防ぐことができる。
【００４２】
また、下流側空燃比センサの出力値の変動における周波数成分のうちの「所定の周波数（以下、「第２カットオフ周波数」とも称呼する。）以上の高周波数成分」を実質的に除去（ローパスフィルタ処理）した後の下流側空燃比センサの出力値をサブフィードバック制御に使用すれば、本来は触媒下流に現れることのない「空燃比の変動の高周波数成分」及び「高周波数の外乱成分（例えば、上述した高周波ノイズ）」が下流側空燃比センサの出力値に混入する場合であっても、それらの成分を除去した後の出力値をサブフィードバック制御に使用することができる。これにより、機関の空燃比を確実且つ正確に制御することができる。
【００４３】
以上の観点に基づき、上流側空燃比センサの出力値に基づく値にハイパスフィルタ処理が施され、下流側空燃比センサの出力値に基づく値にローパスフィルタ処理が施される。
【００４４】
更に、第２の空燃比制御装置は、第１の空燃比制御装置と同様にリーン方向応答時定数及びリッチ方向応答時定数を取得するとともに、これらの差の絶対値（診断指標値）が所定の許容値よりも大きいとき、第１フィードバック制御係数に代えて「第１フィードバック制御係数に含まれるゲインのうちの少なくとも一つのゲインを小さくして得られる第２フィードバック制御係数」を用いてメインフィードバック制御を行う。即ち、第２の空燃比制御装置は、上流側空燃比センサの非対称劣化を監視するとともに、上流側空燃比センサが非対称劣化したときには「第２フィードバック制御係数」を用いてメインフィードバック制御を行う。
【００４５】
フィードバック制御係数に含まれるゲインの大きさは、フィードバック補正量の大きさに影響を与える。また、上流側空燃比センサの出力値に対して上述したハイパスフィルタ処理が施されることにより、その高周波数成分（排ガスの空燃比の変動のうちの高周波数成分）がメインフィードバック制御に用いられる。そこで、第２制御装置は、上流側空燃比センサが非対称劣化したときに「第２フィードバック制御係数」を採用することより、排ガスの空燃比の変動のうちの「高周波数成分」に基づく補正量を小さくする。これにより、サブフィードバック制御により算出される「低周波数成分に基づく補正量」に対するメインフィードバック制御により算出される「高周波数成分に基づく補正量」の影響を小さくすることができる。
【００４６】
この結果、上流側空燃比センサの非対称応答による影響を出来る限り小さくすることができ、もって、機関のエミッションを良好に維持することができる。
【００４７】
ここで、本発明における「理論空燃比」は、厳密な理論空燃比に限られない。上述したように、触媒は、触媒に流入する排ガスの空燃比が所定の空燃比幅内にある場合、高い効率にて未燃物と窒素酸化物とを浄化することができる。そこで、本発明において、この空燃比幅内の空燃比を「理論空燃比」と表現する。
【００４８】
メインフィードバック制御及びサブフィードバック制御に用いる「第１カットオフ周波数」及び「第２カットオフ周波数」は、機関に要求される排ガス浄化性能及び燃費等を勘案した適値とすることができる。また、第１カットオフ周波数及び第２カットオフ周波数は、同一であっても異なってもよい。
【００４９】
「第１フィードバック制御係数」及び「第２フィードバック制御係数」に含まれるゲインは、機関に要求される排ガス浄化性能及び燃費等を勘案して決定することができる。
【発明を実施するための最良の形態】
【００５０】
以下、本発明による内燃機関の制御装置の各実施形態について、図面を参照しながら説明する。
【００５１】
（第１実施形態）
以下、本発明の第１実施形態に係る制御装置（以下、「第１制御装置」とも称呼する。）について説明する。
【００５２】
＜装置の概要＞
図１は、第１制御装置が適用される内燃機関１０の一例を示す概略断面図である。図１は、第１制御装置を４サイクル火花点火式多気筒（４気筒）内燃機関１０に適用したシステムの概略構成を示している。なお、図１は、特定気筒の断面のみを示しているが、他の気筒も同様な構成を備えている。
【００５３】
この内燃機関１０は、シリンダブロック、シリンダブロックロワーケース及びオイルパン等を含むシリンダブロック部２０と、シリンダブロック部２０の上に固定されるシリンダヘッド部３０と、シリンダブロック部２０にガソリン混合気を供給するための吸気系統４０と、シリンダブロック部２０からの排ガスを外部に放出するための排気系統５０と、変速制御装置８０（電磁弁を含む油圧回路）により制御される変速装置９０（自動変速機）と、を含んでいる。
【００５４】
シリンダブロック部２０は、シリンダ２１、ピストン２２、コンロッド２３及びクランク軸２４を含んでいる。ピストン２２はシリンダ２１内を往復動し、ピストン２２の往復動がコンロッド２３を介してクランク軸２４に伝達され、これにより同クランク軸２４が回転するようになっている。シリンダ２１の壁面及びピストン２２の上面は、シリンダヘッド部３０の下面とともに燃焼室２５を形成している。
【００５５】
シリンダヘッド部３０は、燃焼室２５に連通した吸気ポート３１、吸気ポート３１を開閉する吸気弁３２、吸気弁３２を駆動するインテークカムシャフトを含むとともに同インテークカムシャフトの位相角及びリフト量を連続的に変更する可変吸気タイミング装置３３、可変吸気タイミング装置３３のアクチュエータ３３ａ、燃焼室２５に連通した排気ポート３４、排気ポート３４を開閉する排気弁３５、排気弁３５を駆動するエキゾーストカムシャフト３６、点火プラグ３７、点火プラグ３７に与える高電圧を発生するイグニッションコイルを含むイグナイタ３８及び燃料を吸気ポート３１内に噴射するインジェクタ（燃料噴射手段）３９を備えている。
【００５６】
なお、機関１０は、上記インジェクタ３９に代えて或いは上記インジェクタ３９に加えて、燃料を燃焼室２５内に直接噴射する筒内インジェクタ（図示省略）を備えてもよい。
【００５７】
吸気系統４０は、吸気ポート３１に連通し同吸気ポート３１とともに吸気通路を形成するインテークマニホールドを含む吸気管４１、吸気管４１の端部に設けられたエアフィルタ４２及び吸気管４１内にあって吸気通路の開口断面積を可変とするスロットルバルブ４３を備えている。スロットルバルブ４３は、ＤＣモータからなるスロットルバルブアクチュエータ４３ａにより吸気管４１内で回転駆動されるようになっている。
【００５８】
排気系統５０は、各気筒の排気ポート３４に一端が接続された複数の枝部を含むエキゾーストマニホールド５１、各エキゾーストマニホールド５１の枝部の他端であって総ての枝部が集合している集合部に接続されたエキゾーストパイプ５２、エキゾーストパイプ５２に配設された触媒５３を備えている。排気ポート３４、エキゾーストマニホールド５１及びエキゾーストパイプ５２は、排気通路を構成している。
【００５９】
なお、排気系統５０は、触媒５３に加えて、エキゾーストパイプ５２の触媒５３よりも下流側に下流側触媒（図示省略）を備えてもよい。
【００６０】
触媒５３（上記下流側触媒が配設される場合、触媒５３及び下流側触媒のそれぞれ。以下同じ。）は、所謂、ジルコニア等のセラミックからなる担持体に「白金等の貴金属からなる触媒成分」及び「セリア（CeO2）等の酸素吸蔵物質」を担持する三元触媒装置（排気浄化触媒）である。各触媒は、触媒物質の温度が活性温度以上であり、且つ、触媒５３に流入するガスの空燃比が理論空燃比である場合、未燃物（HC，CO等）と窒素酸化物（NOx）との酸化還元反応を促進し、流入するガスを浄化する。
【００６１】
この制御装置は、熱線式エアフローメータ６１、スロットルポジションセンサ６２、カムポジションセンサ６３、クランクポジションセンサ６４、水温センサ６５、上流側空燃比センサ６６、下流側空燃比センサ６７、アクセル開度センサ６８及び車速センサ（図示省略）を備えている。
【００６２】
エアフローメータ６１は、吸気管４１内を流れる吸入空気の質量流量（機関１０に単位時間あたりに吸入される空気の質量。本発明においては、単に「流量」とも称呼する。）Gaに応じた信号を出力するようになっている。
スロットルポジションセンサ６２は、スロットルバルブ４３の開度（スロットルバルブ開度）を検出し、スロットルバルブ開度TAを表す信号を出力するようになっている。
【００６３】
カムポジションセンサ６３は、インテークカムシャフトが９０°回転する毎に（即ち、クランク軸２４が１８０°回転する毎に）一つのパルスを有する信号（G2信号）を発生するようになっている。
クランクポジションセンサ６４は、クランク軸２４が１０°回転する毎に幅狭のパルスを有するとともに同クランク軸２４が３６０°回転する毎に幅広のパルスを有する信号を出力するようになっている。この信号は、後述する電気制御装置７０によって機関回転速度NEに変換される。
水温センサ６５は、内燃機関１０の冷却水の温度を検出し、冷却水温THWを表す信号を出力するようになっている。
【００６４】
上流側空燃比センサ６６は排気通路に配設されている。上流側空燃比センサ６６の配設位置は、エキゾーストマニホールド５１の枝部の集合部又はその集合部よりも下流側である。上流側空燃比センサ６６は、周知の限界電流式の酸素濃度センサである。上流側空燃比センサ６６は、図２に示したように、「被検出ガス」の空燃比A/Fに応じた電圧である出力値Vabyfsを出力するようになっている。従って、本実施形態において、上流側空燃比センサ６６は、排気通路であって上流側空燃比センサ６６が配設されている部位を流れるガスの空燃比（従って、触媒５３に流入するガスの空燃比、及び、機関に供給される混合気の空燃比）に応じた出力値Vabyfsを出力するようになっている。
【００６５】
この出力値Vabyfsは、被検出ガスの空燃比が理論空燃比であるときに値Vstoichに一致する。出力値Vabyfsは、被検出ガスの空燃比が大きくなる（リーンになる）ほど増大する。上流側空燃比センサ６６は、被検出ガスの空燃比の変化に対して出力が連続的に変化する広域空燃比センサである。
【００６６】
後述する電気制御装置７０は、図２に示したテーブル（マップ）Mapabyfsを記憶しており、そのテーブルMapabyfsに実際の出力値Vabyfsを適用することによって空燃比を検出する（検出空燃比abyfsを取得する）ようになっている。以下、上流側空燃比センサ６６の出力値VabyfsとテーブルMapabyfsとによって取得される空燃比を、「上流側空燃比abyfs」とも称呼する。
【００６７】
下流側空燃比センサ６７は、排気通路であって触媒５３よりも下流側に配設されている。なお、下流側触媒が配設される場合、下流側空燃比センサ６７は、触媒５３と下流側触媒との間の排気通路に配設されることが好適である。下流側空燃比センサ６７は、周知の起電力式の酸素濃度センサ（安定化ジルコニアを用いた周知の濃淡電池型の酸素濃度センサ）である。下流側空燃比センサ６７は、排気通路であって下流側空燃比センサ６７が配設されている部位を流れるガスである被検出ガスの空燃比（機関に供給される混合気の空燃比の時間的平均値）に応じた出力値Voxsを発生するようになっている。
【００６８】
この出力値Voxsは、図３に示したように、被検出ガスの空燃比が理論空燃比よりもリッチのとき最大出力値max（例えば、約０．９Ｖ）となり、被検出ガスの空燃比が理論空燃比よりもリーンのとき最小出力値min（例えば、約０．１Ｖ）となり、被検出ガスの空燃比が理論空燃比であるとき最大出力値maxと最小出力値minの略中間の電圧Vst（中間電圧Vst、例えば、約０．５Ｖ）となる。更に、この出力値Voxsは、被検出ガスの空燃比が理論空燃比よりもリッチな空燃比からリーンな空燃比へと変化する際に最大出力値maxから最小出力値minへと急変し、被検出ガスの空燃比が理論空燃比よりもリーンな空燃比からリッチな空燃比へと変化する際に最小出力値minから最大出力値maxへと急変する。
【００６９】
再び、図１を参照すると、アクセル開度センサ６８は、運転者によって操作されるアクセルペダルＡＰの操作量Accpを表す信号を出力するようになっている。
車速センサ（図示省略）は、例えば駆動輪周辺に設置され、車速SPDを表す信号を出力するようになっている。
【００７０】
電気制御装置７０は、互いにバスで接続されたＣＰＵ７１、ＲＯＭ７２、ＲＡＭ７３、バックアップＲＡＭ７４、及び、ＡＤコンバータを含むインターフェース７５等からなるマイクロコンピュータである。
【００７１】
インターフェース７５は、上記センサ６１〜６８と接続され、ＣＰＵ７１にセンサ６１〜６８からの信号を供給するようになっている。更に、インターフェース７５は、ＣＰＵ７１の指示に応じて各アクチュエータ（可変吸気タイミング装置３３のアクチュエータ３３ａ、イグナイタ３８、インジェクタ３９及びスロットルバルブアクチュエータ４３ａ等）に駆動信号（指示信号）を送出するようになっている。
【００７２】
＜空燃比制御＞
以下、第１制御装置における空燃比制御を説明する。
第１制御装置は、上流側空燃比センサ６６の出力値Vabyfsに基づいて得られる上流側空燃比abyfsを上流側目標空燃比abyfrに一致させるための「メインフィードバック制御」、及び、下流側空燃比センサ６７の出力値Voxsを下流側目標値Voxsrefに一致させるための「サブフィードバック制御」を含む空燃比フィードバック制御を実行する。ここで、第１制御装置は、上流側空燃比センサ６６の応答性の劣化を随時判定するとともに、上流側空燃比センサ６６が「非対称劣化」していると判定される場合、「その出力値Vabyfsに対してローパスフィルタ処理を施して得られる処理後出力値Vabyfslow」に基づいてメインフィードバック制御を実行する。
【００７３】
具体的には、まず、上流側空燃比センサ６６の出力値Vabyfs（上流側空燃比センサ６６が非対称劣化していると判定される場合、処理後出力値Vabyfslow）が、「下流側空燃比センサ６７の出力値Voxsと下流側目標値Voxsrefとの出力偏差量Dvoxsを小さくするように算出されたサブフィードバック補正量Vafsfb」により補正される。そして、この補正によって得られた「フィードバック制御用出力値Vabyfc」が上述したテーブルMapabyfs（図２を参照。）に適用されることにより、「フィードバック制御用空燃比（補正検出空燃比）abyfsc」が算出される。更に、このフィードバック制御用空燃比abyfscが「上流側目標空燃比abyfr」に一致するように燃料噴射量が制御される。第１制御装置においては、このように空燃比フィードバック制御が行われる。以下にて、この空燃比フィードバック制御をより詳細に説明する。
【００７４】
１．メインフィードバック制御
より具体的に述べると、第１制御装置は、フィードバック制御用出力値Vabyfcを下記（１）式に従って算出する。（１）式において、Vabyfsは上流側空燃比センサ６６の出力値、Vafsfbは下流側空燃比センサ６７の出力値Voxsに基づいて算出されるサブフィードバック補正量である。これらの値は、何れも現時点において得られている値である。サブフィードバック補正量Vafsfbの算出方法は後述される。
Vabyfc＝Vabyfs＋Vafsfb    ・・・（１）
【００７５】
第１制御装置は、下記（２）式に示したように、フィードバック制御用出力値Vabyfcを図２に示したテーブルMapabyfsに適用することによってフィードバック制御用空燃比abyfscを得る。
abyfsc＝Mapabyfs（Vabyfc）    ・・・（２）
【００７６】
一方、第１制御装置は、現時点（時点k）にて気筒内に吸入される空気量である筒内吸入空気量Mc（k）を求める。筒内吸入空気量Mc（k）は、各気筒の吸気行程毎に、その時点のエアフローメータ６１の出力Gaと機関回転速度NEとに基づいて求められ（例えば、エアフローメータ６１の出力Gaに対して一次遅れ処理を施した値を機関回転速度NEで除することにより求められ）、各吸気行程に対応されながらＲＡＭ７３内に記憶される。筒内吸入空気量Mc（k）は、周知の空気モデル（吸気通路における空気の挙動を模した物理法則に従って構築されたモデル）により算出されてもよい。
【００７７】
第１制御装置は、下記（３）式に示したように、その筒内吸入空気量Mc（k）を現時点における上流側目標空燃比abyfr（k）によって除すことにより基本燃料噴射量Fbaseを求める。なお、上流側目標空燃比abyfr（k）は、各吸気行程に対応されながらＲＡＭ７３内に記憶される。
Fbase＝Mc（k）／abyfr（k）    ・・・（３）
【００７８】
第１制御装置は、下記（４）式に示したように、基本燃料噴射量Fbaseをメインフィードバック補正量DFiにより補正する（基本燃料噴射量Fbaseにメインフィードバック補正量DFiを加える）ことにより、最終燃料噴射量Fiを算出する。そして、第１制御装置は、最終燃料噴射量Fiの燃料を吸気行程を迎えている気筒のインジェクタ３９から噴射する。メインフィードバック補正量DFiの算出方法は後述される。
Fi＝Fbase＋DFi    ・・・（４）
【００７９】
上記（４）式におけるメインフィードバック補正量DFiは、以下のようにして求められる。
まず、第１制御装置は、下記（５）式に示したように、現時点よりもNサイクル（即ち、N・７２０°クランク角）「前」の時点における筒内吸入空気量Mc（k−N）を、上記フィードバック制御用空燃比（補正検出空燃比）abyfscにて除すことにより、現時点よりもNサイクル前の時点において燃焼室２５に実際に供給された燃料の量である「筒内供給燃料量Fc（k−N）」を求める。
Fc（k−N）＝Mc（k−N）／abyfsc    ・・・（５）
【００８０】
このように、現時点からNサイクル前の筒内燃料供給量Fc（k−N）を求めるために、現時点からNサイクル前の筒内吸入空気量Mc（k−N）をフィードバック制御用空燃比abyfscで除するのは、燃焼室２５内で燃焼された混合気が上流側空燃比センサ６６に到達するまでにNサイクルに相当する時間を要しているからである。
【００８１】
次に、第１制御装置は、下記（６）式に示したように、現時点からNサイクル前の筒内吸入空気量Mc（k−N）を現時点からNサイクル前の上流側目標空燃比abyfr（k−N）で除すことにより現時点からNサイクル前の「目標筒内燃料供給量Fcr（k−N）」を求める。
Fcr（k−N）＝Mc（k−N）／abyfr（k−N）    ・・・（６）
【００８２】
第１制御装置は、下記（７）式に示したように、現時点からNサイクル前の目標筒内燃料供給量Fcr（k−N）から筒内燃料供給量Fc（k−N）を減じた値を「筒内燃料供給量偏差DFc」として設定する。この筒内燃料供給量偏差DFcは、「Nサイクル前の時点で筒内に供給された燃料の過不足分」を表す量となる。
DFc＝Fcr（k−N）−Fc（k−N）    ・・・（７）
【００８３】
その後、第１制御装置は、下記（８）式に基づいてメインフィードバック補正量DFiを求める。この（８）式において、Gpは予め設定された比例ゲイン、Giは予め設定された積分ゲインである。（８）式の係数KFBは、機関回転速度NE及び筒内吸入空気量Mc等により可変とすることが好適である。なお、ここでは係数KFBを「１」としている。また、（８）式の値SDFcは筒内燃料供給量偏差DFcの積分値である。即ち、第１制御装置は、フィードバック制御用空燃比abyfscと上流側目標空燃比abyfrとに基づく比例積分制御によりメインフィードバック補正量DFiを算出する。このメインフィードバック補正量DFiは上記（４）式に示したように基本燃料噴射量Fbaseに加えられ、それにより、最終的な燃料噴射量Fiが算出される。
DFi＝（Gp・DFc＋Gi・SDFc）・KFB    ・・・（８）
【００８４】
更に、第１制御装置は、随時、上流側空燃比センサ６６の応答性の劣化を診断（判定）するとともに、診断の結果に応じて上流側空燃比センサ６６の出力値Vabyfsを補正する。
【００８５】
上流側空燃比センサ６６の応答性劣化の診断（判定）方法を、図４に示すタイムチャートを参照して説明する。図４は、「触媒５３の上流側における排ガスの実空燃比の変動（ａ）」に対する「上流側空燃比センサ６６の出力値Vabyfsから得られる検出空燃比abyfs（ｂ）の変動」の一例を示すタイムチャートである。
【００８６】
まず、図４（ａ）に示すように、時刻t1にて、実空燃比を「理論空燃比stoichよりもαだけ小さい空燃比（stoich−α）」から「理論空燃比stoichよりもαだけ大きい空燃比（sstoich＋α）」までステップ状に変化させる。そして、時刻t1から時刻t3まで（期間Tp）、実空燃比を「stoich＋α」に維持する。このとき、図４（ｂ）に示すように、検出空燃比abyfsが「stoich＋α」に到達するには、ある程度の時間を要する。ここで、「検出空燃比abyfsが実空燃比の変化量Ａのうちの所定割合β（例えば、β＝０．６３２）に相当する値（stoich−α＋β・Ａ）に到達するまでの時間」（即ち、時刻t1から時刻t2までの時間）を、リーン方向応答時定数Tafleanとして取得する。
【００８７】
次いで、時刻t3にて、実空燃比を「stoich＋α」から「stoich−α」までステップ状に変化させる。そして、時刻t3から時刻t5まで（期間Tp）、実空燃比を「stoich−α」に維持する。このとき、上記同様、検出空燃比abyfsが「stoich−α」に到達するには、ある程度の時間を要する。ここで、「検出空燃比abyfsが実空燃比の変化量Ａのうちの所定割合β（例えば、上記同様、β＝０．６３２）に相当する値（stoich＋α−β・Ａ）に到達するまでの時間」（即ち、時刻t3から時刻t4までの時間）を、リッチ方向応答時定数Tafrichとして取得する。
【００８８】
そして、取得されたリーン方向応答時定数Tafleanとリッチ方向応答時定数Tafrichとの「差の絶対値」が所定の許容値よりも大きいとき、上流側空燃比センサ６６が非対称劣化していると判定される。
【００８９】
更に、第１制御装置は、上流側空燃比センサ６６が非対称劣化していると判定したとき、上流側空燃比センサ６６の出力値Vabyfsを補正する。上流側空燃比センサ６６の出力値Vabyfsの補正方法を、以下に説明する。
【００９０】
上記方法によって上流側空燃比センサ６６が非対称劣化していると判断されたとき、下記（９）式に従い、上流側空燃比センサ６６の出力値Vabyfsに対してローパスフィルタ処理が施されて処理後出力値Vabyfslowが取得される。（９）式において、Vabyfslow（k）は更新された後の処理後出力値、Vabyfslow（k−1）は更新される前の処理後出力値、Tsは本処理の実行周期、Tafはリーン方向応答時定数Taflean及びリッチ方向応答時定数Tafrichのうちの何れか大きい方の応答時定数（劣化側応答時定数）である。
Vabyfslow（k）＝Vabyfslow（k−1）
＋Ts／Taf・（Vabyfs（k）−Vabyfslow（k−1））  ・・・（９）
【００９１】
これにより、上流側空燃比センサ６６の出力値Vabyfsのうちの劣化側応答時定数Tafによって定まるカットオフ周波数よりも大きい周波数成分が、出力値Vabyfsから実質的に除去される。この結果、上記ローパスフィルタ処理が施された出力値Vabyfs（処理後出力値）は、実質的に、上記カットオフ周波数以下の周波数成分のみによって構成される。即ち、上記補正によって空燃比センサの「応答性が高い側の出力値」が「応答性が低い側の出力値」に合わせこまれるので、処理後出力値は対称な応答性を示すようになる。
【００９２】
第１制御装置は、上流側空燃比センサ６６が非対称劣化していると判定したとき、上記（１）式における出力値Vabyfsを上記（９）式にて取得した処理後出力値Vabyfslowに置換する。そして、第１制御装置は、処理後出力値Vabyfslow及びサブフィードバック補正量Vafsfbに基づき、上記（１）式に従ってフィードバック制御用出力値Vabyfcを算出する。その後、第１制御装置は、上記（２）式乃至上記（８）式に示すようにメインフィードバック制御を実行する。
【００９３】
２．サブフィードバック制御
第１制御装置は上述したサブフィードバック補正量Vafsfbを次のように算出する。
即ち、第１制御装置は、下記（１０）式に示したように、下流側目標値Voxsrefから現時点の下流側空燃比センサ６７の出力値Voxsを減じることにより出力偏差量DVoxsを求める。
DVoxs＝Voxsref−Voxs    ・・・（１０）
【００９４】
第１制御装置は、下記（１１）式に基づいてサブフィードバック補正量Vafsfbを求める。（１１）式において、Kpは予め設定された比例ゲイン（比例定数）、Kiは予め設定された積分ゲイン（積分定数）である。また、SDVoxsは、出力偏差量DVoxsの積分値である。
Vafsfb＝Kp・DVoxs＋Ki・SDVoxs    ・・・（１１）
【００９５】
このように、第１制御装置は、下流側空燃比センサ６７の出力値Voxsと下流側目標値Voxsrefとに基づく比例積分制御によりサブフィードバック補正量Vafsfbを算出する。このサブフィードバック補正量Vafsfbは、上述した（１１）式に示したように、フィードバック制御用出力値Vabyfcを算出するために使用される。
【００９６】
以上に説明したように、第１制御装置は、サブフィードバック補正量Vafsfbを加えることによって上流側空燃比センサ６６の出力値Vabyfs又は処理後出力値Vabyfslowを補正し、その補正によって得られたフィードバック制御用出力値Vabyfc（＝Vabyfs＋Vafsfb）に基づいてフィードバック制御用空燃比abyfscを取得する（図２を参照。）。そして、第１制御装置は、取得したフィードバック制御用空燃比abyfscが上流側目標空燃比abyfrに一致するように燃料噴射量Fiを制御する。
【００９７】
その結果、上流側空燃比センサ６６の出力値Vabyfsに相当する上流側空燃比abyfsは上流側目標空燃比abyfrに近づき、同時に、下流側空燃比センサ６７の出力値Voxsは下流側目標値Voxsrefに近づく。即ち、第１制御装置は、上流側空燃比センサ６６の出力値Vabyfsとサブフィードバック補正量Vafsfbとに基づいて機関の混合気の空燃比を上流側目標空燃比abyfrに一致させる空燃比フィードバック制御手段を備えている。
【００９８】
なお、上述した上流側目標空燃比abyfr及び下流側目標値Voxsrefの設定方法は、後述される。
【００９９】
＜実際の作動＞
以下、第１制御装置の実際の作動について説明する。
第１制御装置のＣＰＵ７１は、図５乃至図８にフローチャートにより示した各ルーチンを所定の時間毎に繰り返し実行するようになっている。
【０１００】
より具体的に述べると、ＣＰＵ７１は、所定のタイミングにて図５に示す燃料噴射制御ルーチンを実行し、最終燃料噴射量Fiの算出及び燃料噴射の指示を行う。ＣＰＵ７１は、このルーチンを、所定の気筒のクランク角が吸気上死点前の所定クランク角度（例えば、BTDC９０°CA）となる毎に、その気筒（以下、「燃料噴射気筒」とも称呼する。）に対して繰り返し実行するようになっている。即ち、ＣＰＵ７１は、図５のステップ５００から処理を開始し、後述するステップ５１０乃至ステップ５４０の処理を順に行い、ステップ５９５に進んで本ルーチンを一旦終了する。
【０１０１】
ステップ５１０：ＣＰＵ７１は、エアフローメータ６１により計測された吸入空気量Gaと機関回転速度NEとに基づき、燃料噴射気筒に吸入される空気量である筒内吸入空気量Mc（k）を取得する。
ステップ５２０：ＣＰＵ７１は、上記（３）式に従って基本燃料噴射量Fbaseを求める。
ステップ５３０：ＣＰＵ７１は、上記（４）式に従って基本燃料噴射量Fbaseをメインフィードバック補正量DFiにより補正し、最終燃料噴射量Fiを求める。
ステップ５４０：ＣＰＵ７１は、最終燃料噴射量Fiの燃料を燃料噴射気筒に対応して設けられているインジェクタ３９から噴射する。
【０１０２】
以上により、最終燃料噴射量Fiの燃料が燃料噴射気筒に対して噴射される。以下、上述したメインフィードバック補正量DFiの算出方法について説明する。
【０１０３】
ＣＰＵ７１は、所定時間が経過する毎に図６に示すセンサ出力補正用時定数取得ルーチンを実行し、上流側空燃比センサ６６が非対称劣化しているか否かを判定するとともに、上流側空燃比センサ６６が非対称劣化していると判定された場合には出力値Vabyfsを補正するための劣化側応答時定数Tafを取得する。即ち、ＣＰＵ７１は、所定のタイミングにて図６のステップ６００から処理を開始し、ステップ６１０に進んで「センサ劣化診断実行条件」が成立しているか否かを判定する。第１制御装置において、センサ劣化診断実行条件は、上流側空燃比センサ６６が活性状態であるときに成立する。
【０１０４】
ここで、現時点にて、センサ劣化診断実行条件が成立すると仮定する。本仮定に従えば、ＣＰＵ７１は、そのステップ６１０にて「Ｙｅｓ」と判定してステップ６２０に進み、図示しない時定数取得ルーチンにより別途検出（取得）されている「リーン方向応答時定数Taflean」及び「リッチ方向応答時定数Tafrich」を取得する。
【０１０５】
ここで、時定数取得ルーチンは、機関１０が「スロットルバルブ開度TAの単位時間あたりの変化量ΔTAが所定の閾値ΔTAth以下（ΔTA≦ΔTAth）、機関回転速度NEが所定の第１機関回転速度NE1以上第２機関回転速度NE2以下（NE1≦NE≦NE2）、且つ、筒内吸入空気量Mcが第１筒内吸入空気量Mc1以上第２筒内吸入空気量Mc2以下（Mc1≦Mc≦Mc2）」である定常運転を行っているときに実行される。なお、本例において、「機関回転速度NEが所定の第１機関回転速度NE1以上第２機関回転速度NE2以下（NE1≦NE≦NE2）、且つ、筒内吸入空気量Mcが第１筒内吸入空気量Mc1以上第２筒内吸入空気量Mc2以下（Mc1≦Mc≦Mc2）」である運転状態を「第１の運転状態」と称呼する。時定数取得ルーチンにおいては、上述したように、排ガスの実空燃比を図４（ａ）に示すようにステップ状に変化させたときの検出空燃比abyfsの変動に基づき、リーン方向応答時定数Taflean及びリッチ方向応答時定数Tafrichが取得される。なお、時定数取得ルーチンは、機関１０が上記第１の運転状態にて運転されている場合であって、今回の機関１０の始動後に一度も実行されていない場合にのみ実行されるようにプログラムされていてもよい。
【０１０６】
次いで、ＣＰＵ７１は、ステップ６３０に進み、「リーン方向応答時定数Tafleanとリッチ方向応答時定数Tafrichとの差の絶対値」が所定の許容値δよりも大きいか否かを判定する。第１制御装置においては、上記「差の絶対値」が許容値δよりも大きい場合、上流側空燃比センサ６６が非対称劣化していると判断される。一方、上記「差の絶対値」が許容値δ以下である場合、上流側空燃比センサ６６が非対称劣化していないと判断される。
【０１０７】
ここで、現時点では、上述した「差の絶対値」が許容値δ以下である（即ち、上流側空燃比センサ６６が非対称劣化していない）と仮定する。本仮定に従えば、ＣＰＵ７１は、そのステップ６３０にて「Ｎｏ」と判定してステップ６４０に進み、センサ非対称劣化フラグＸＳＡＤの値を「０」に設定する。その後、ＣＰＵ７１は、ステップ６９５に進んで本ルーチンを一旦終了する。
【０１０８】
センサ非対称劣化フラグＸＳＡＤは、その値が「１」であるとき、上流側空燃比センサ６６が非対称劣化していることを示す。一方、センサ非対称劣化フラグＸＳＡＤは、その値が「０」であるとき、上流側空燃比センサ６６が非対称劣化していないことを示す。なお、センサ非対称劣化フラグＸＳＡＤの値は、図示しないイグニッション・キー・スイッチがオフからオンに変更されたときに実行されるイニシャルルーチンにおいて「０」に設定されようになっている。
【０１０９】
更に、ＣＰＵ７１は、所定のタイミングにて図７に示すメインフィードバック補正量DFi算出ルーチンを実行し、図５のルーチンに示す処理（ステップ５３０を参照。）にて使用するメインフィードバック補正量DFiを算出する。即ち、ＣＰＵ７１は、ステップ７００から処理を開始してステップ７０５に進み、メインフィードバック制御条件（上流側空燃比フィードバック制御条件）が成立しているか否かを判定する。第１制御装置において、メインフィードバック制御条件は、触媒５３の暖機期間が終了しており、フューエルカット運転の実行中でなく、機関１０の冷却水温THWが所定の第１温度以上であり、機関の一回転当りの吸入空気量（負荷）が所定値以下であり、且つ、上流側空燃比センサ６６が活性化しているときに成立する。
【０１１０】
ここで、現時点にて、上記メインフィードバック制御条件が成立すると仮定する。本仮定に従えば、ＣＰＵ７１は、図７のステップ７０５にて「Ｙｅｓ」と判定してステップ７１０に進み、センサ非対称劣化フラグＸＳＡＤの値が「１」であるか否かを判定する。上述したように、現時点でのセンサ非対称劣化フラグＸＳＡＤの値は「０」である。従って、ＣＰＵ７１は、そのステップ７１０にて「Ｎｏ」と判定してステップ７１５に直接進む。次いで、ＣＰＵ７１は、後述するステップ７１５乃至ステップ７４５の処理を順に行い、ステップ７９５に進んで本ルーチンを一旦終了する。
【０１１１】
ステップ７１５：ＣＰＵ７１は、上記（１）式に従ってフィードバック制御用出力値Vabyfcを取得する。なお、第１制御装置においては、上流側目標空燃比abyfrは理論空燃比に設定される。
ステップ７２０：ＣＰＵ７１は、上記（２）式に従ってフィードバック制御用空燃比abyfscを取得する。
ステップ７２５：ＣＰＵ７１は、上記（５）式に従って筒内燃料供給量Fc（k−N）を取得する。
ステップ７３０：ＣＰＵ７１は、上記（６）式に従って目標筒内燃料供給量Fcr（k−N）を取得する。
ステップ７３５：ＣＰＵ７１は、上記（７）式に従って筒内燃料供給量偏差DFcを取得する。
ステップ７４０：ＣＰＵ７１は、上記（８）式に従ってメインフィードバック補正量DFiを取得する。なお、第１制御装置において、係数KFBは「１」に設定されている。筒内燃料供給量偏差DFcの積分値SDFcは次のステップ７４５にて求められる。
ステップ７４５：ＣＰＵ７１は、その時点における筒内燃料供給量偏差DFcの積分値SDFcに上記ステップ７４０にて求められた筒内燃料供給量偏差DFcを加えることにより、新たな筒内燃料供給量偏差の積分値SDFcを取得（更新）する。
【０１１２】
以上により、メインフィードバック補正量DFiが比例積分制御（ＰＩ制御）により求められ、このメインフィードバック補正量DFiが最終燃料噴射量Fiに反映される（図５のステップ５３０を参照。）。
【０１１３】
一方、ステップ７０５の判定時においてメインフィードバック制御条件が成立しないとき、ＣＰＵ７１は、そのステップ７０５にて「Ｎｏ」と判定してステップ７５０に進み、メインフィードバック補正量DFiの値をゼロに設定する。次いで、ＣＰＵ７１は、ステップ７５５に進み、筒内燃料供給量偏差の積分値SDFcの値をゼロに設定する。その後、ＣＰＵ７１は、ステップ７９５に進んで本ルーチンを一旦終了する。このように、メインフィードバック制御条件が成立しないとき、メインフィードバック補正量DFiはゼロに設定される。従って、このとき、基本燃料噴射量Fbaseのメインフィードバック補正量DFiによる補正は行われない。
【０１１４】
更に、ＣＰＵ７１は、所定のタイミングにて図８に示すサブフィードバック補正量Vafsfb算出ルーチンを実行し、図７のルーチンに示す処理（ステップ７１５を参照。）にて使用するサブフィードバック補正量Vafsfbを算出する。即ち、ＣＰＵ７１は、図８のステップ８００から処理を開始してステップ８１０に進み、サブフィードバック制御条件が成立しているか否かを判定する。第１制御装置において、サブフィードバック制御条件は、図７に示すメインフィードバック条件（ステップ７０５を参照。）が成立し、機関の冷却水温THWが上記第１温度よりも高い第２温度以上であり、且つ、下流側空燃比センサ６７が活性化しているときに成立する。
【０１１５】
ここで、現時点にて、サブフィードバック制御条件が成立すると仮定する。本仮定に従えば、ＣＰＵ７１は、図８のステップ８１０にて「Ｙｅｓ」と判定してステップ８２０に進む。次いで、ＣＰＵ７１は、後述するステップ８２０乃至ステップ８４０の処理を順に行い、ステップ８９５に進んで本ルーチンを一旦終了する。
【０１１６】
ステップ８２０：ＣＰＵ７１は、上記（１０）式に従って下流側目標値Voxsrefと下流側空燃比センサ６７の出力値Voxsとの差である出力偏差量DVoxsを取得する。なお、第１制御装置においては、下流側目標値Voxsrefは理論空燃比に対応する値に設定する。
ステップ８３０：ＣＰＵ７１は、上記（１１）式に従ってサブフィードバック補正量Vafsfbを取得する。なお、この時点における比例ゲインKp及び積分ゲインKiは、予め求められた適値に設定されている。
ステップ８４０：ＣＰＵ７１は、その時点における出力偏差量の積分値SDVoxsに上記ステップ８３０にて求めた出力偏差量DVoxsを加えて、新たな出力偏差量の積分値SDVoxsを取得する。
【０１１７】
以上により、サブフィードバック補正量Vafsfbが比例積分制御（ＰＩ制御）により求められ、このサブフィードバック補正量Vafsfbによって上述した上流側空燃比センサ６６の出力値Vabyfsが補正される（図７のステップ７１５を参照。）。そして、補正されたフィードバック制御用出力値Vabyfcに基づいてメインフィードバック量DFiが求められ（図７のステップ７４０を参照。）、このメインフィードバック量DFiが最終燃料噴射量Fiに反映される（図５のステップ５３０を参照）。
【０１１８】
一方、ステップ８１０の判定時においてサブフィードバック制御条件が成立しないとき、ＣＰＵ７１は、そのステップ８１０にて「Ｎｏ」と判定してステップ８５０に進み、サブフィードバック補正量Vafsfbの値をゼロに設定する。次いで、ＣＰＵ７１は、ステップ８６０に進み、出力偏差量の積分値SDVoxsの値をゼロに設定する。その後、ＣＰＵ７１は、ステップ８９５に進んで本ルーチンを一旦終了する。このように、サブフィードバック制御条件が成立しないとき、サブフィードバック補正量Vafsfbはゼロに設定される。従って、このとき、基本燃料噴射量Fbaseのサブフィードバック補正量Vafsfbによる補正は行われない。
【０１１９】
ここで、現時点にて、経年劣化等の理由によって上流側空燃比センサ６６が非対称劣化したと仮定する。更に、現時点にて、センサ劣化診断実行条件も成立していると仮定する。上記仮定（センサ劣化診断実行条件が成立している。）に従えば、ＣＰＵ７１は、図６のステップ６００から処理を開始すると、ステップ６１０にて「Ｙｅｓ」と判定してステップ６２０に進み、リーン方向応答時定数Taflean及びリッチ方向応答時定数Tafrichを取得してステップ６３０に進む。そして、上記仮定（上流側空燃比センサ６６が非対称劣化している。）に従えば、リーン方向応答時定数Tafleanとリッチ方向応答時定数Tafrichとの差の絶対値は、許容値δよりも大きい。従って、ＣＰＵ７１は、そのステップ６３０にて「Ｙｅｓ」と判定してステップ６５０に進み、センサ非対称劣化フラグＸＳＡＤの値を「１」に設定する。
【０１２０】
次いで、ＣＰＵ７１は、ステップ６６０に進み、リッチ方向応答時定数Tafrichがリーン方向応答時定数Tafleanよりも大きいか否かを判定する。ここで、現時点では、リッチ方向応答時定数Tafrichがリーン方向応答時定数よりも大きいと仮定する。本仮定に従えば、ＣＰＵ７１はそのステップ６６０にて「Ｙｅｓ」と判定してステップ６７０に進み、劣化側応答時定数Tafにリッチ方向応答時定数Tafrichを格納する。その後、ＣＰＵ７１は、ステップ６９５に進んで本ルーチンを一旦終了する。
【０１２１】
一方、ステップ６６０の判定時において、リーン方向応答時定数Tafleanがリッチ方向応答時定数Tafrichよりも大きいと、ＣＰＵ７１は、ステップ６６０にて「Ｎｏ」と判定してステップ６８０に進み、劣化側応答時定数Tafにリーン方向応答時定数を格納する。その後、ＣＰＵ７１は、ステップ６９５に進んで本ルーチンを一旦終了する。
【０１２２】
このとき、ＣＰＵ７１は、図７のステップ７００から処理を開始すると、上述したメインフィードバック制御条件が成立すれば、ステップ７０５にて「Ｙｅｓ」と判定してステップ７１０に進む。上述したように、現時点でのセンサ非対称劣化フラグＸＳＡＤの値は「１」である。従って、ＣＰＵ７１は、そのステップ７１０にて「Ｙｅｓ」と判定してステップ７６０に進む。
【０１２３】
ＣＰＵ７１は、そのステップ７６０にて、上記（９）式に従って上流側空燃比センサ６６の出力値Vabyfsに対して「劣化側応答時定数Tafを時定数とするローパスフィルタ処理」を施し、処理後出力値Vabyfslowを取得する。次いで、ＣＰＵ７１は、ステップ７６５に進み、上流側空燃比センサ６６の出力値Vabyfsに上記ステップ７６０にて取得した処理後出力値Vabyfslowを格納する。本処理により、出力値Vabyfsが処理後出力値Vabyfslowに置換される。
【０１２４】
次いで、ＣＰＵ７１は、ステップ７６５にて得られた出力値Vabyfs（上流側空燃比センサ６６の出力値Vabyfsをローパスフィルタ処理して得られる処理後出力値Vabyfslow）に基づき、上記同様、ステップ７１５乃至ステップ７４５の処理を順に行ってメインフィードバック補正量DFiを取得する。
【０１２５】
以上により、処理後出力値Vabyfslowに基づくメインフィードバック補正量DFiが比例積分制御（ＰＩ制御）により求められ、このメインフィードバック補正量DFiが最終燃料噴射量Fiに反映される（図５のステップ５３０を参照。）。
【０１２６】
更に、ＣＰＵ７１は、図８のステップ８００から処理を開始すると、上述したサブフィードバック制御条件が成立すれば、ステップ８１０にて「Ｙｅｓ」と判定してステップ８２０以降に進む。次いで、ＣＰＵ７１は、上記同様、ステップ８２０乃至ステップ８４０の処理を順に行ってサブフィードバック補正量Vafsfbを取得する。
【０１２７】
以上により、サブフィードバック補正量Vafsfbが比例積分制御（ＰＩ制御）により求められ、このサブフィードバック補正量Vafsfbによって上述した上流側空燃比センサ６６の出力値Vabyfs（上流側空燃比センサ６６の出力値Vabyfsをローパスフィルタ処理して得られる処理後出力値Vabyfslow）が補正される（図７のステップ７１５を参照。）。そして、補正されたフィードバック制御用出力値Vabyfcに基づいてメインフィードバック量DFiが求められ（図７のステップ７４０を参照。）、このメインフィードバック量DFiが最終燃料噴射量Fiに反映される（図５のステップ５３０を参照）。
【０１２８】
上述したように、第１制御装置においては、上流側空燃比センサ６６のリーン方向応答時定数Tafleanとリッチ方向応答時定数Tafrichとの差の絶対値が所定の許容値δよりも大きくなったとき、上流側空燃比センサ６６が非対称劣化したと判断される。そして、上流側空燃比センサ６６が非対称劣化したと判断されたとき、上流側空燃比センサ６６の出力値Vabyfsに対して劣化側応答時定数Tafを時定数とするローパスフィルタ処理が施される。そして、このローパスフィルタ処理によって得られる処理後出力値Vabyfslowに基づき、機関１０の空燃比に対するフィードバック制御が実行される。一方、上流側空燃比センサ６６が非対称劣化していないときには上記ローパスフィルタ処理は行われず、上流側空燃比センサ６６の出力値Vabyfsに基づいて機関１０の空燃比に対するフィードバック処理が実行される。
【０１２９】
以上、説明したように、第１制御装置は、
内燃機関１０の排気通路に配設されるとともに配設された部位を流れる排ガスの空燃比に応じた出力値Vabyfsを出力する空燃比センサ（上流側空燃比センサ６６）と、
前記排ガスの空燃比が増大したときの前記空燃比センサの応答時定数であるリーン方向応答時定数Taflean、及び、前記排ガスの空燃比が減少したときの前記空燃比センサの応答時定数であるリッチ方向応答時定数Tafrichを取得する応答時定数取得手段（図６のステップ６２０を参照。）と、
基準応答時定数を、前記リーン方向応答時定数Taflean及び前記リッチ方向応答時定数Tafrichのうちの何れか大きい方の応答時定数である劣化側応答時定数Tafに基づいて同劣化側応答時定数Taf以上となるように決定する（本例では、基準応答時定数は劣化側応答時定数Tafと等しくなるように決定される。図６のステップ６６０乃至ステップ６８０を参照。）。更に、第１制御装置は、同基準応答時定数に対応する時定数（本例では、劣化側応答時定数Taf）を有するローパスフィルタ処理を前記空燃比センサの出力値Vabyfsに対して施すことによって処理後出力値Vabyfslowを得るセンサ出力処理手段（図７のステップ７６０を参照。）と、
前記処理後出力値に基づいて前記機関に供給される混合気の空燃比を目標空燃比に一致させる空燃比フィードバック制御を実行する（図７のステップ７６５、及び、ステップ７１５乃至ステップ７４５を参照。）空燃比制御手段と、
を備える。
【０１３０】
このように、第１制御装置は、空燃比センサの劣化の度合いをリーン方向応答時定数Taflean及びリッチ方向応答時定数Tafrichの大きさに基づいて評価する。そして、空燃比センサが非対称劣化していると判断されたとき、劣化の度合いが大きい方向の応答時定数（劣化側応答時定数Taf。即ち、リーン方向応答時定数Taflean及びリッチ方向応答時定数Tafrichのうちの何れか大きい方の応答時定数）を時定数とするーパスフィルタ処理が、出力値Vabyfsに対して施される。即ち、第１制御装置においては、劣化側応答時定数Tafが基準応答時定数として採用されるとともに、この基準応答時定数を時定数とするローパスフィルタ処理が実行されている。
【０１３１】
上記ローパスフィルタ処理により、空燃比センサの出力値Vabyfsのうちの劣化側応答時定数Tafに対応する周波数（カットオフ周波数）よりも大きい周波数成分が、空燃比センサの出力値から実質的に除去される。これにより、上述したように、対称な応答性を示す処理後出力値を得ることができる。そして、この処理後出力値Vabyfslowに基づいて空燃比フィードバック制御を実行することにより、機関の空燃比を適切に制御することができる。その結果、機関のエミッションを良好に維持することができる。
【０１３２】
第１制御装置は、「劣化側応答時定数Taf」を基準応答時定数とするように構成されている。しかし、本発明の制御装置は、基準応答時定数を、劣化側応答時定数Tafに所定値Δを加算して得られる「劣化側応答時定数以上の値（Taf＋Δ）」とするように構成することもできる。このとき、劣化側応答時定数に加えられる所定値Δは、機関の運転状態、機関に要求される排ガス浄化能力及び燃費等を考慮した適値とすることができる。
【０１３３】
ここで、第１制御装置は、上流側空燃比センサ６６の非対称劣化の度合いを評価するとともに、その度合いが所定値よりも大きいとき（図６のステップ６３０を参照。）、上流側空燃比センサ６６の出力値Vabyfsをローパスフィルタ処理するように構成されている（図７のステップ７６０を参照。）。しかし、本発明の制御装置は、上流側空燃比センサ６６の非対称劣化の度合いを評価する処理を含まずに（即ち、図６のステップ６３０乃至ステップ６５０及び図７のステップ７１０を削除して）常に劣化側応答時定数を時定数とするローパスフィルタ処理を行うように構成されてもよい。また、このローパスフィルタ処理の時定数は、上述したように劣化側応答時定数以上の値としてもよい。
【０１３４】
第１制御装置は、メインフィードバック補正量DFiを比例積分制御（ＰＩ制御）により求めている。しかし、本発明の制御装置は、メインフィードバック補正量DFiを、例えば比例積分微分制御（ＰＩＤ制御）により求めるように構成されてもよい。
【０１３５】
本発明において、上流側目標空燃比abyfr及び下流側目標値Voxsrefは、上述した値に限られず、機関の運転状態、機関に要求される排ガス浄化能力及び燃費等を考慮した適値とすることができる。
【０１３６】
上述した「閾値開度TAth」、「第１機関回転速度NE1」、「第２機関回転速度NE2」、「第１筒内吸入空気量Mc1」及び「第２筒内吸入空気量Mc2」は、機関に要求される排ガス浄化能力及び燃費等を考慮した適値とすることができる。
【０１３７】
（第２実施形態）
以下、本発明の第２実施形態に係る制御装置（以下、「第２制御装置」とも称呼する。）について説明する。第２制御装置は、そのＣＰＵが、図５乃至図８のフローチャートに示す処理に加えて図９のフローチャートに示す処理を実行する点についてのみ、第１制御装置と相違している。従って、以下、この相違点を中心として説明を加える。
【０１３８】
第２制御装置は、第１制御装置と同様、図５及び図６のフローチャートに示す処理を所定の時間毎に繰り返し実行する。即ち、第２制御装置は、図５に示す処理により、現時点での目標空燃比abyfr（k）及び筒内吸入空気量Mc（k）に基づいて基本燃料噴射量Fbaseを算出する。そして、第２制御装置は、この基本燃料噴射量Fbaseをメインフィードバック補正量DFiによって補正し、最終燃料噴射量Fiを取得する。次いで、第２制御装置は、最終燃料噴射量Fiの燃料を燃料噴射気筒に対して噴射するようインジェクタ等の燃料噴射機構に指示を与える。また、第２制御装置は、図６に示す処理により、所定のタイミングにて上流側空燃比センサ６６の劣化を診断するとともに、上流側空燃比センサ６６が非対称劣化しているとき、上流側空燃比センサ６６の出力値Vabyfsを補正するための劣化側応答時定数Tafを取得する。以下では、上流側空燃比センサ６６が非対称劣化しており（図６のステップ６３０にて「Ｙｅｓ」と判定され）、センサ非対称劣化フラグＸＳＡＤの値が「１」に設定されていると仮定し、説明を続ける。
【０１３９】
第２制御装置は、所定のタイミングにて図９に示す応答時定数補正ルーチンを実行し、機関１０の運転状態に基づいて劣化側応答時定数Tafを補正する。即ち、ＣＰＵ７１は、図９のステップ９００から処理を開始してステップ９１０に進み、センサ非対称劣化フラグＸＳＡＤの値が「１」であるか否かを判定する。上記仮定に従えば、センサ非対称劣化フラグＸＳＡＤの値は「１」であるので、ＣＰＵ７１は、そのステップ９１０にて「Ｙｅｓ」と判定してステップ９２０に進む。ＣＰＵ７１は、そのステップ９２０にて、筒内吸入空気量Mc及び機関回転速度NE対する補正係数Kctcの関係を予め定めた補正係数テーブルMapKctc（Mc，NE）に現時点における筒内吸入空気量Mc及び機関回転速度NEを適用することにより、現時点における補正係数Kctcを取得する。
【０１４０】
なお、補正係数Kctcは、リーン方向応答時定数Taflean及びリッチ方向応答時定数Tafrichが取得される「第１の運転状態（即ち、機関回転速度NEが所定の第１機関回転速度NE1以上第２機関回転速度NE2以下（NE1≦NE≦NE2）、且つ、筒内吸入空気量Mcが第１筒内吸入空気量Mc1以上第２筒内吸入空気量Mc2以下（Mc1≦Mc≦Mc2）である運転状態）」に対しては「１」に設定されている。本例において、第１の運転状態以外の運転状態は、便宜上、「第２の運転状態」とも称呼される。
【０１４１】
次いで、ＣＰＵ７１は、ステップ９３０に進み、図６に示す処理（ステップ６６０乃至ステップ６８０を参照。）にて取得した劣化側応答時定数Tafに対して上記補正係数Kctcを乗算する（Kctc×Taf）ことによって劣化側応答時定数Tafを補正する。更に、ＣＰＵ７１は、同乗算の結果得られた値を、改めて劣化側応答時定数Tafに格納する。その後、ＣＰＵ７１は、ステップ９９５に進んで本ルーチンを一旦終了する。
【０１４２】
一方、ステップ９１０の判定時において、センサ非対称劣化フラグＸＳＡＤの値が「０」であるとき（即ち、上流側空燃比センサ６６が非対称劣化していないとき）、ＣＰＵ７１は、そのステップ９１０にて「Ｎｏ」と判定してステップ９９５に直接進んで本ルーチンを一旦終了する。従って、このとき、劣化側応答時定数Tafの補正は行われない。
【０１４３】
更に、ＣＰＵ７１は、第１制御装置と同様、所定のタイミングにて図７に示すルーチンを実行する。ここで、現時点にて、上述したメインフィードバック条件が成立すると仮定する。また、上述したように、現時点でのセンサ非対称劣化フラグＸＳＡＤの値は「１」である。従って、ＣＰＵ７１は、図７のステップ７００から処理を開始すると、ステップ７０５及びステップ７１０の双方にて「Ｙｅｓ」と判定してステップ７６０に進む。
【０１４４】
ＣＰＵ７１は、そのステップ７６０にて、「図９のルーチンに示す処理により補正された劣化側応答時定数Taf」を時定数とするローパスフィルタ処理を上流側空燃比センサ６６の出力値Vabyfsに対して施し、処理後出力値Vabyfslowを取得する。次いで、ＣＰＵ７１は、ステップ７６５に進み、上流側空燃比センサ６６の出力値Vabyfsに上記ステップ７６０にて取得した処理後出力値Vabyfslowを格納する。
【０１４５】
そして、ＣＰＵ７１は、ステップ７６５にて得られた出力値Vabyfs（上流側空燃比センサ６６の出力値Vabyfsをローパスフィルタ処理して得られる処理後出力値Vabyfslow）に基づき、第１制御装置と同様、ステップ７１５乃至ステップ７４５の処理を順に行ってメインフィードバック補正量DFiを取得する。更に、ＣＰＵ７１は、第１制御装置と同様、図８に示すルーチンを実行してサブフィードバック補正量Vafsfbを取得する。
【０１４６】
以上により、サブフィードバック補正量Vafsfbが比例積分制御（ＰＩ制御）により求められ、このサブフィードバック補正量Vafsfbによって上述した上流側空燃比センサ６６の出力値Vabyfs（上流側空燃比センサ６６の出力値Vabyfsをローパスフィルタ処理して得られる処理後出力値Vabyfslow）が補正される（図７のステップ７１５を参照。）。そして、補正されたフィードバック制御用出力値Vabyfcに基づいてメインフィードバック量DFiが求められ（図７のステップ７４０を参照。）、このメインフィードバック量DFiが最終燃料噴射量Fiに反映される（図５のステップ５３０を参照）。
【０１４７】
上述したように、第２制御装置においては、上流側空燃比センサ６６が非対称劣化したとき、劣化側応答時定数Tafが機関の運転状態（筒内吸入空気量及び機関回転速度）に基づいて補正される。そして、上流側空燃比センサ６６の出力値Vabyfsに対し、補正された劣化側応答時定数Tafを時定数とするローパスフィルタ処理が施される。その後、第１制御装置と同様、このローパスフィルタ処理によって得られる処理後出力値Vabyfslowに基づき、機関１０の空燃比に対するフィードバック制御が実行される。
【０１４８】
以上、説明したように、第２制御装置において、
第１制御装置におけるセンサ出力処理手段は、
前記基準応答時定数を前記機関１０が第１の運転状態にあるときの前記劣化側応答時定数Tafに基づいて決定するように構成され（図６のステップ６６０乃至ステップ６８０を参照。）、且つ、
前記機関１０が前記第１の運転状態とは異なる第２の運転状態にある場合、前記「劣化側応答時定数Taf」を同第２の運転状態に応じたパラメータに基づいて補正した値（図９のステップ９２０及びステップ９３０を参照。）に対応する時定数を前記ローパスフィルタの時定数として採用する（図７のステップ７６０を参照。）ように構成される。
【０１４９】
上述したように、機関１０の運転状態は上流側空燃比センサ６６の応答性に影響を与える。そのため、特定の運転状態（本例では、第１の運転状態）において決定されたローパスフィルタの時定数は、別の運転状態（本例では、第２の運転状態）においては最適な値ではなくなる虞がある。そこで、第２制御装置は、上流側空燃比センサ６６の劣化側応答時定数Tafを機関の運転状態に基づいて補正する。そして、第２制御装置は、本補正によって得られる応答時定数Tafに基づいて上流側空燃比センサ６６の出力値Vabyfsを補正する。本構成により、機関１０の運転状態が変化した場合であっても、ローパスフィルタの時定数を各運転状態における劣化側応答時定数以上の値となるように設定することができる。
【０１５０】
従って、ローパスフィルタ処理に用いる時定数をより適切に決定することができ、上流側空燃比センサ６６の出力値Vabyfsに過剰又は過小なローパスフィルタ処理を施すことを避けることができる。この結果、機関のエミッションを更に良好に維持することができる。
【０１５１】
ここで、第２制御装置は、「劣化側応答時定数Taf」を機関１０の運転状態に応じて補正し、補正された劣化側応答時定数Tafに基づいて基準応答時定数（従って、ローパスフィルタの時定数）を決定するように構成されている。しかし、第２制御装置は、まず劣化側応答時定数Tafに基づいて基準応答時定数を決定し、決定された「基準応答時定数」を機関１０の運転状態に応じて補正するように構成されてもよい。
【０１５２】
即ち、第１制御装置におけるセンサ出力処理手段は、
前記基準応答時定数を前記機関が第１の運転状態にあるときの前記劣化側応答時定数に基づいて決定するように構成され、且つ、
前記機関が前記第１の運転状態とは異なる第２の運転状態にある場合、前記「基準応答時定数」を同第２の運転状態に応じたパラメータに基づいて補正し、その補正した値に対応する時定数を前記ローパスフィルタの時定数として採用するように構成されてもよい。
【０１５３】
第２制御装置において、「補正した値に対応する時定数」とは、「第２の運転状態に応じたパラメータに基づいて補正した値そのもの」でもよく、「第２の運転状態に応じたパラメータに基づいて補正した値に所定の正の値が加算された値」であってもよい。
【０１５４】
第２制御装置は、機関１０の運転状態に応じたパラメータとして、筒内吸入空気量Mc及び機関回転速度NEを採用している（図９のステップ９２０及びステップ９３０を参照。）。しかし、本発明においては、機関１０の運転状態に応じたパラメータとして、筒内吸入空気量Mc及び機関回転速度NEに代えて又は加えてアクセルペダル開度Accpや機関負荷率KL等を採用してもよい。また、これらのパラメータのうちの１つ又は複数を運転状態に応じたパラメータとして採用してもよい。
【０１５５】
（第３実施形態）
以下、本発明の第３実施形態（以下、「第３制御装置」とも称呼する。）について説明する。
【０１５６】
＜装置の概要＞
第３制御装置は、第１制御装置が適用される内燃機関と同様の内燃機関に適用することができる。従って、第３制御装置が適用される内燃機関の構成についての詳細な説明は省略する。
【０１５７】
＜空燃比制御＞
以下、第３制御装置における空燃比制御を説明する。
第３制御装置は、図１０の機能ブロック図に示すように、Ａ１〜Ａ１２の各手段等を含むように構成されている。なお、図１０の機能ブロック図の詳細は、特開２００４−２５７３７７に開示されている。以下、図１０を参照し、これらの手段について説明する。
【０１５８】
１．基本燃料噴射量の算出
まず、筒内吸入空気量算出手段Ａ１は、現時点（時点k）にて気筒内に吸入される空気量である筒内吸入空気量Mc（k）を求める。筒内吸入空気量Mc（k）は、各気筒の吸気行程毎に、その時点のエアフローメータ６１の出力Gaと機関回転速度NEとに基づいて求められ（例えば、エアフローメータ６１の出力Gaに対して一次遅れ処理を施した値を機関回転速度NEで除することにより求められ）、各吸気行程に対応されながらＲＡＭ７３内に記憶される。筒内吸入空気量Mc（k）は、周知の空気モデル（吸気通路における空気の挙動を模した物理法則に従って構築されたモデル）により算出されてもよい。ここで、添え字の（k）は、今回の吸気行程に対する値であることを示す（以下、他のパラメータについても同様。）。
【０１５９】
上流側目標空燃比設定手段Ａ２は、機関１０の運転状態である機関回転速度NE、及びスロットル弁開度TA等に基づいて所定の上流側目標値に相当する上流側目標空燃比abyfr（k）を決定する。この上流側目標空燃比abyfr（k）は、例えば、機関１０の暖機終了後においては、特殊な場合を除き理論空燃比に設定されている。また、上流側目標空燃比abyfrは、各気筒の吸気行程に対応されながらＲＡＭ７３に記憶される。
【０１６０】
基本燃料噴射量算出手段Ａ３は、下記（１２）式に示したように、筒内吸入空気量Mc（k）を上流側目標空燃比abyfr（k）で除することにより、基本燃料噴射量Fbaseを求める。基本燃料供給量Fbaseは、各気筒の吸気行程に対応されながらＲＡＭ７３に記憶される。
Fbase＝Mc（k）／abyfr（k）    ・・・（１２）
【０１６１】
上述したように、筒内吸入空気量算出手段Ａ１、上流側目標空燃比設定手段Ａ２及び基本燃料噴射量算出手段Ａ３によって基本燃料噴射量Fbaseが求められる。
【０１６２】
２．燃料噴射量の算出
サブフィードバック制御用燃料噴射量算出手段Ａ４は、下記（１３）式に示したように、基本燃料噴射量Fbaseに後述するＰＩＤコントローラＡ１６により求められるサブフィードバック制御係数（サブフィードバック補正量）KFiを乗算することによってサブフィードバック制御用燃料噴射量Fbasesbを求める。
Fbaseb＝KFi・Fbase    ・・・（１３）
【０１６３】
燃料噴射量算出手段Ａ５は、下記（１４）式に示したように、サブフィードバック制御用燃料噴射量Fbasesbに後述するメインフィードバック補正量DFiを加えることにより、最終燃料噴射量Fiを求める。
Fi＝Fbasesb＋DFi    ・・・（１４）
【０１６４】
このように、第３制御装置は、サブフィードバック制御用燃料噴射量算出手段Ａ４及び燃料噴射量算出手段Ａ５により、基本燃料噴射量Fbaseをメインフィードバック補正量DFiとサブフィードバック制御係数KFiとに基づいて補正する。そして、本補正によって得られる燃料噴射量Fiの燃料を、今回の吸気行程を迎える気筒に対してインジェクタ３９から噴射する。
【０１６５】
３．メインフィードバック補正量の算出
テーブル変換手段Ａ６は、下記（１５）式に示したように、上流側空燃比センサ６６の出力値Vabyfsと図２に示したテーブル（マップ）Mapabyfsとに基づき、現時点における検出空燃比abyfsを求める。
abyfs＝Mapabyfs（Vabyfs）    ・・・（１５）
【０１６６】
筒内吸入空気量遅延手段Ａ７は、筒内吸入空気量算出手段Ａ１により吸気行程毎に求められＲＡＭ７３に記憶されている筒内吸入空気量Mcのうち、現時点からNサイクル前に吸気行程を迎えた気筒の筒内吸入空気量McをＲＡＭ７３から読み出し、これを筒内吸入空気量Mc（k−N）として設定する。
【０１６７】
筒内燃料供給量算出手段Ａ８は、下記（１６）式に示したように、現時点からNサイクル前の筒内吸入空気量Mc（k−N）を検出空燃比abyfsで除することにより、現時点からNサイクル前の実際の筒内燃料供給量Fc（k−N）を求める。
Fc（k−N）＝Mc（k−N）／abyfs    ・・・（１６）
【０１６８】
このように、現時点からNサイクル前の実際の筒内燃料供給量Fc（k−N）を求めるために、現時点からNサイクル前の筒内吸入吸気量Mc（k−N）を現時点における検出空燃比abyfsで除するのは、燃焼室２５内で燃料された混合気が上流側空燃比センサ６６に到達するまでにNサイクルに相当する時間を要しているからである。
【０１６９】
次に、目標筒内燃料供給量遅延手段Ａ９は、下記（１７）式に示したように、現時点からNサイクル前の筒内吸入空気量Mc（k−N）を現時点からNサイクル前の上流側目標空燃比abyfr（k−N）で除すことにより現時点からNサイクル前の「目標筒内燃料供給量Fcr（k−N）」を求める。
Fcr（k−N）＝Mc（k−N）／abyfr（k−N）    ・・・（１７）
【０１７０】
筒内燃料供給量偏差算出手段Ａ１０は、下記（１８）式に従い、現時点からNサイクル前の目標筒内燃料供給量Fcr（k−N）から筒内燃料供給量Fc（k−N）を減じた値を「筒内燃料供給量偏差DFc」として設定する。この筒内燃料供給量偏差DFcは、「Nサイクル前の時点で筒内に供給された燃料の過不足分」を表す量となる。
DFc＝Fcr（k−N）−Fc（k−N）    ・・・（１８）
【０１７１】
筒内燃料供給量偏差DFcは、ハイパスフィルタＡ１１に入力される。ハイパスフィルタＡ１１は、下記（１９）式に示す特性を有する。第３制御装置は、入力される筒内燃料供給量偏差DFcに対して下記（１９）式に示すハイパスフィルタ処理を施し、ハイパスフィルタ通過後筒内燃料供給量偏差DFchiを出力する。下記（１９）式において、sはラプラス演算子、τは時定数である。ハイパスフィルタＡ１１は、入力される信号のうちのカットオフ周波数（１／τ）以下の低周波数成分を実質的に除去する。
１−１／（１＋τ・s）    ・・・（１９）
【０１７２】
ＰＩコントローラＡ１２は、ハイパスフィルタＡ１１から出力値されるハイパスフィルタ通過後筒内燃料供給量偏差DFchiを比例積分処理（ＰＩ処理）することにより、下記（２０）式に従ってNサイクル前の燃料供給量（におけるカットオフ周波数以上の高周波数成分）の過不足を補償するためのメインフィードバック補正量DFiを求める。下記（２０）式において、GPは比例ゲイン（比例定数）、GIは積分ゲイン（積分定数）、SDFchiはハイパスフィルタ通過後筒内燃料供給量偏差DFchiの時間積分値である。（２０）式の係数KFBは、エンジン回転速度NE及び筒内吸入空気量Mc等により可変とすることが好適である。
DFi＝（Gp・DFchi＋Gi・SDFchi）・KFB    ・・・（２０）
【０１７３】
ここで、第３制御装置は、第１制御装置と同様に上流側空燃比センサ６６の応答性の劣化を診断（判定）するとともに、上流側空燃比センサ６６が非対称劣化していないと判定されたとき、上記（２０）式における比例ゲイン及び積分ゲインとして、予め設定された第１比例ゲインGp及び第１微分ゲインGiを採用する（以下、第１比例ゲインGp及び第１微分ゲインGiを総称して「第１フィードバック制御係数」とも称呼する。）。一方、第３制御装置は、上流側空燃比センサ６６が非対称劣化していると判定されたとき、第１フィードバック制御係数に含まれるゲインのうちの少なくとも一つを小さくして得られる「第２フィードバック制御係数」を採用する。
【０１７４】
上述したように、第３制御装置は、上流側目標空燃比abyfrと上流側空燃比センサ６６の出力値Vabyfsとに基づき、メインフィードバック補正量DFiを求める。そして、上記（１４）式に示すように、メインフィードバック補正量DFiはサブフィードバック制御によって求められるサブフィードバック制御用燃料噴射量Fbasesbに加算される。これにより、メインフィードバック補正量DFiによって機関１０の空燃比が補正される。なお、サブフィードバック制御用燃料噴射量Fbasesbの算出方法は、後述される。
【０１７５】
４．サブフィードバック補正量の算出
下流側目標値設定手段Ａ１３は、上述した上流側目標空燃比設定手段Ａ２と同様、内燃機関１０の運転状態であるエンジン回転速度NE、及びスロットル弁開度TA等に基づいて下流側目標空燃比に対応する下流側目標値（所定の下流側目標値）Voxsrefを決定する。この下流側目標値Voxsrefは、例えば、内燃機関１０の暖機終了後においては、特殊な場合を除き理論空燃比に対応する値に設定されている。また、第３制御装置においては、下流側目標値Voxsrefは、同下流側目標値Voxsrefに対応する下流側目標空燃比が上述した上流側目標空燃比abyfr（k）と常に一致するように設定される。
【０１７６】
出力偏差量算出手段Ａ１４は、下記（２１）式に従い、現時点での下流側目標値Voxsrefから現時点での下流側空燃比センサ６７の出力値Voxsを減じることにより、出力偏差量DVoxsを求める。
DVoxs＝Voxsref−Voxs    ・・・（２１）
【０１７７】
出力偏差量DVoxsは、ローパスフィルタＡ１５に入力される。ローパスフィルタＡ１５は、下記（２２）式に示す特性を有する。第３制御装置は、入力される出力偏差量DVoxsに対して下記（２２）式に基づくローパスフィルタ処理を施し、ローパスフィルタ通過後出力偏差量DVoxslowを出力する。下記（２２）式において、sはラプラス演算子、τは上記（１９）式における時定数と同一の時定数である。ローパスフィルタＡ１５は、入力される信号のうちのカットオフ周波数（１／τ）以上の高周波数成分を実質的に除去する。
１／（１＋τ・s）    ・・・（２２）
【０１７８】
次いで、下記（２３）式に従い、ローパスフィルタ通過後出力偏差量DVoxslowの微分値DDVoxslowを求める。下記（２３）式において、DVoxslowはローパスフィルタ通過後出力偏差量、DVoxslow1は更新前のローパスフィルタ通過後出力偏差量DVoxslow、Δtは本ルーチンの計算周期である。
DDVoxslow＝（DVoxslow−DVoxslow1）／Δt    ・・・（２３）
【０１７９】
ＰＩＤコントローラＡ１６は、ローパスフィルタＡ１５から出力されるローパスフィルタ通過後出力偏差量DVoxslowを下記（２４）式に従って比例積分微分処理（ＰＩＤ処理）することにより、サブフィードバック制御係数KFiを求める。下記（２４）式において、Kpは予め設定された比例ゲイン（比例定数）、Kiは予め設定された積分ゲイン（積分定数）、Kdは予め設定された微分ゲイン（微分定数）、SDVoxslowはローパスフィルタ通過後出力偏差量DVoxslowの時間積分値、DDVoxslowはローパスフィルタ通過後出力偏差量DVoxslowの時間微分値である。
KFi＝（Kp・DVoxslow＋Ki・SDVoxslow＋Kd・DDVoxslow）＋1    ・・・（２４）
【０１８０】
上述したように、第３制御装置は、下流側目標値Voxsrefと下流側空燃比センサ６７の出力値Voxsとに基づき、サブフィードバック制御係数KFiを求める。そして、上記（１３）式に示すように、サブフィードバック制御係数KFiは基本燃料噴射量Fbaseに乗算される。これにより、サブフィードバック制御係数KFiによって機関１０の空燃比が補正される。本補正よって得られたサブフィードバック制御用燃料噴射量Fbasesbは、上述したように、更にメインフィードバック補正量DFiによって補正される。
【０１８１】
以上、説明したように、第３制御装置は、メインフィードバック制御回路とサブフィードバック制御回路とを内燃機関１０に対して並列に接続している（図１０を参照。）。第３制御装置は、下流側目標値Voxsrefと下流側空燃比センサ６７の出力値Voxsとに基づくサブフィードバック制御係数KFiを求め、このサブフィードバック制御係数KFiによって機関１０の空燃比を補正する。更に、第３制御装置は、上流側目標空燃比abyfrと上流側空燃比センサ６６の出力値Vabyfsとに基づくメインフィードバック補正量DFiを求め、このメインフィードバック補正量DFiによって機関１０の空燃比を補正する。即ち、メインフィードバック制御による空燃比の補正とサブフィードバック制御による空燃比の補正は、独立して実行される。
【０１８２】
なお、上述した上流側目標空燃比abyfr及び下流側目標値Voxsrefの設定方法は、後述される。
【０１８３】
＜実際の作動＞
以下、第３制御装置の実際の作動について説明する。
第３制御装置のＣＰＵ７１は、図６、及び、図１０乃至図１３にフローチャートにより示した各ルーチンを所定の時間毎に繰り返し実行するようになっている。
【０１８４】
より具体的に述べると、ＣＰＵ７１は、所定のタイミングにて図１１に示す燃料噴射制御ルーチンを実行し、最終燃料噴射量Fiの計算及び燃料噴射の指示を行う。ＣＰＵ７１は、このルーチンを、所定の気筒のクランク角が吸気上死点前の所定クランク角度（例えば、BTDC９０°CA）となる毎に、その気筒（以下、「燃料噴射気筒」とも称呼する。）に対して繰り返し実行するようになっている。即ち、ＣＰＵ７１は、図１１のステップ１１００から処理を開始し、後述するステップ１１１０乃至ステップ１１５０の処理を順に行い、ステップ１１９５に進んで本ルーチンを一旦終了する。
【０１８５】
ステップ１１１０：ＣＰＵ７１は、エアフローメータ６１により計測された吸入空気量Gaと機関回転速度NEとに基づき、燃料噴射気筒に吸入される空気量である筒内吸入空気量Mc（k）を取得する。
ステップ１１２０：ＣＰＵ７１は、上記（１２）式に従って基本燃料噴射量Fbaseを求める。
ステップ１１３０：ＣＰＵ７１は、上記（１３）式に従って基本燃料噴射量Fbaseをサブフィードバック補正量KFiにより補正し、サブフィードバック制御用燃料噴射量Fbasesbを求める。
ステップ１１４０：ＣＰＵ７１は、上記（１４）式に従ってサブフィードバック制御用燃料噴射量Fbasesbをメインフィードバック補正量DFiにより補正し、最終燃料噴射量Fiを求める。
ステップ１１５０：ＣＰＵ７１は、最終燃料噴射量Fiの燃料を燃料噴射気筒に対応して設けられているインジェクタ３９から噴射する。
【０１８６】
以上により、最終燃料噴射量Fiの燃料が燃料噴射気筒に対して噴射される。以下、上述したメインフィードバック補正量DFiの算出方法について説明する。
【０１８７】
第３制御装置は、第１制御装置と同様、図６に示す処理により、所定のタイミングにて上流側空燃比センサ６６の劣化を診断する。以下では、上流側空燃比センサ６６が非対称劣化しており（図６のステップ６３０にて「Ｙｅｓ」と判定され）、センサ非対称劣化フラグＸＳＡＤの値が「１」に設定されていると仮定し、説明を続ける。
【０１８８】
第３制御装置は、所定のタイミングにて図１２に示すメインフィードバック補正量DFi算出ルーチンを実行し、図１１のルーチンに示す処理（ステップ１１４０を参照。）にて使用するメインフィードバック補正量DFiを算出する。即ち、ＣＰＵ７１は、ステップ１２００から処理を開始してステップ１２０５に進み、メインフィードバック制御条件が成立しているか否かを判定する。第３制御装置において、メインフィードバック制御条件は、第１制御装置と同様、触媒５３の暖機期間が終了しており、フューエルカット運転の実行中でなく、機関１０の冷却水温THWが所定の第１温度以上であり、機関の一回転当りの吸入空気量（負荷）が所定値以下であり、且つ、上流側空燃比センサ６６が活性化しているときに成立する。
【０１８９】
ここで、現時点にて、上記メインフィードバック制御条件が成立すると仮定する。本仮定に従えば、ＣＰＵ７１は、図１２のステップ１２０５にて「Ｙｅｓ」と判定してステップ１２１０に進む。次いで、ＣＰＵ７１は、後述するステップ１２１０乃至ステップ１２３０の処理を順に行い、ステップ１２３５に進む。
【０１９０】
ステップ１２１０：ＣＰＵ７１は、上記（１５）式に従って検出空燃比abyfsを取得する。
ステップ１２１５：ＣＰＵ７１は、上記（１６）式に従って筒内燃料供給量Fc（k−N）を取得する。なお、第３制御装置においては、上流側目標空燃比abyfrは理論空燃比に設定される。
ステップ１２２０：ＣＰＵ７１は、上記（１７）式に従って目標筒内燃料供給量Fcr（k−N）を取得する。
ステップ１２２５：ＣＰＵ７１は、上記（１８）式に従って筒内燃料供給量偏差DFcを取得する。
ステップ１２３０：ＣＰＵ７１は、上記（１９）式に示すハイパスフィルタ処理を筒内燃料供給量偏差DFcに施し、ハイパスフィルタ通過後筒内燃料供給量偏差DFchiを取得する。
【０１９１】
ＣＰＵ７１は、そのステップ１２３５にて、センサ非対称劣化フラグＸＳＡＤの値が「１」であるか否かを判定する。上述したように、現時点でのセンサ非対称劣化フラグＸＳＡＤの値は「０」である。従って、ＣＰＵ７１は、そのステップ１２３５にて「Ｎｏ」と判定してステップ１２４０に直接進む。
【０１９２】
ＣＰＵ７１は、そのステップ１２４０にて上記（２０）式に従ってメインフィードバック補正量DFiを取得する。ここで、第３制御装置は、第１フィードバック制御係数（第１比例ゲインGp及び第１微分ゲインGi）に基づいてメインフィードバック補正量DFiを算出する。また、第３制御装置において、係数KFBは「１」に設定されている。
【０１９３】
次いで、ＣＰＵ７１は、ステップ１２４５に進み、その時点におけるハイパスフィルタ通過後筒内燃料供給量偏差DFchiの積分値SDFchiに上記ステップ１２３０にて求められたハイパスフィルタ通過後筒内燃料供給量偏差DFchiを加えることにより、新たなハイパスフィルタ通過後筒内燃料供給量偏差の積分値SDFchiを取得（更新）する。その後、ＣＰＵ７１は、ステップ１２９５に進んで本ルーチンを一旦終了する。
【０１９４】
以上により、メインフィードバック補正量DFiが第１フィードバック制御係数に基づく比例積分制御（ＰＩ制御）により求められ、このメインフィードバック補正量DFiが最終燃料噴射量Fiに反映される（図１１のステップ１１４０を参照。）。
【０１９５】
一方、ステップ１２０５の判定時においてメインフィードバック制御条件が成立しないとき、ＣＰＵ７１は、そのステップ１２０５にて「Ｎｏ」と判定してステップ１２５５に進み、メインフィードバック補正量DFiの値をゼロに設定する。次いで、ＣＰＵ７１は、ステップ１２６０に進み、ハイパスフィルタ通過後筒内燃料供給量偏差の積分値SDFchiの値をゼロに設定する。その後、ＣＰＵ７１は、ステップ１２９５に進んで本ルーチンを一旦終了する。このように、メインフィードバック制御条件が成立しないとき、メインフィードバック補正量DFiはゼロに設定される。従って、このとき、サブフィードバック制御用燃料噴射量Fbasesbのメインフィードバック補正量DFiによる補正は行われない。
【０１９６】
更に、ＣＰＵ７１は、所定のタイミングにて図１３に示すサブフィードバック補正係数KFi算出ルーチンを実行し、図１１のルーチンに示す処理（ステップ１１３０を参照。）にて使用するサブフィードバック補正係数KFiを算出する。即ち、ＣＰＵ７１は、図１３のステップ１３００から処理を開始してステップ１３１０に進み、サブフィードバック制御条件が成立しているか否かを判定する。第３制御装置において、サブフィードバック制御条件は、第１制御装置と同様、図１２に示すメインフィードバック条件（ステップ１２０５を参照。）が成立し、機関の冷却水温THWが上記第１温度よりも高い第２温度以上であり、且つ、下流側空燃比センサ６７が活性化しているときに成立する。
【０１９７】
ここで、現時点にて、サブフィードバック制御条件が成立すると仮定する。本仮定に従えば、ＣＰＵ７１は、図１３のステップ１３１０にて「Ｙｅｓ」と判定してステップ１３２０に進む。次いで、ＣＰＵ７１は、後述するステップ１３２０乃至ステップ１３７０の処理を順に行い、ステップ１３９５に進んで本ルーチンを一旦終了する。
【０１９８】
ステップ１３２０：ＣＰＵ７１は、上記（２１）式に従って下流側目標値Voxsrefと下流側空燃比センサ６７の出力値Voxsとの差である出力偏差量DVoxsを取得する。なお、第１制御装置においては、下流側目標値Voxsrefは理論空燃比に対応する値に設定する。
ステップ１３３０：ＣＰＵ７１は、上記（２２）式に示すローパスフィルタ処理を出力偏差量DVoxsに施し、ローパスフィルタ通過後出力偏差量DVoxslowを取得する。
ステップ１３４０：ＣＰＵ７１は、上記（２３）式に従ってローパスフィルタ通過後出力偏差量DVoxslowの微分値DDVoxslowを求める。
ステップ１３５０：ＣＰＵ７１は、上記（２４）式に従ってサブフィードバック制御係数KFiを取得する。この時点における比例ゲインKp、積分ゲインKi及び微分ゲインKdは、予め求められた適値に設定されている。
ステップ１３６０：ＣＰＵ７１は、現時点におけるローパスフィルタ経過後出力偏差量DVoxlowの積分値SDVoxslowに上記ステップ１３３０にて求めたローパスフィルタ通過後出力偏差量DVoxslowを加えて、新たなローパスフィルタ通過後出力偏差量の積分値SDVoxslowを取得する。
ステップ１３７０：ＣＰＵ７１は、現時点におけるローパスフィルタ経過後出力偏差量DVoxlowを、次回のステップ１３４０での処理時に用いるローパスフィルタ経過後出力偏差量DVoxlow1に格納する。
【０１９９】
以上により、サブフィードバック補正係数KFiが比例積分積分制御（ＰＩＤ制御）により求められ、このサブフィードバック補正係数KFiによって基本燃料噴射量Fbaseが補正される（図１１のステップ１１３０を参照。）。そして、補正された基本燃料噴射量Fbase（サブフィードバック制御用燃料噴射量Fbasesb）に対して上記メインフィードバック補正量DFiが加算され、最終燃料噴射量Fiが決定される（図１１のステップ１１４０を参照。）。
【０２００】
一方、ステップ１３１０の判定時においてサブフィードバック制御条件が成立しないとき、ＣＰＵ７１は、そのステップ１３１０にて「Ｎｏ」と判定してステップ１３８０に進み、サブフィードバック補正係数KFiの値をゼロに設定する。次いで、ＣＰＵ７１は、ステップ１３９０に進み、ローパスフィルタ通過後出力偏差量DVoxslowの値をゼロに設定する。その後、ＣＰＵ７１は、ステップ１３９５に進んで本ルーチンを一旦終了する。このように、サブフィードバック制御条件が成立しないとき、サブフィードバック補正係数KFiはゼロに設定される。従って、このとき、基本燃料噴射量Fbaseのサブフィードバック補正係数KFiによる補正は行われない。
【０２０１】
ここで、現時点にて、経年劣化等の理由によって上流側空燃比センサ６６が非対称劣化したと仮定する。更に、現時点にて、センサ劣化診断実行条件も成立していると仮定する。上記仮定（センサ劣化診断実行条件が成立している。）に従えば、ＣＰＵ７１は、図１２のステップ１２００から処理を開始すると、ステップ１２０５にて「Ｙｅｓ」と判定した後、ステップ１２１０乃至ステップ１２３０の処理を順に実行してステップ１２３５に進む。上記仮定（上流側空燃比センサ６６が非対称劣化している。）に従えば、ＣＰＵ７１は、そのステップ１２３５にて「Ｙｅｓ」と判定してステップ１２６０に進む。
【０２０２】
第３制御装置は、上流側空燃比センサ６６が非対称劣化しているとき、メインフィードバック補正量DFiを算出する際の制御係数として、上述した第１フィードバック制御係数に代えて「第２フィードバック制御係数」を採用する。第３制御装置においては、第２フィードバック制御係数として、「第１比例ゲインGpよりも小さい第２比例ゲインGpsmall、及び、第１積分ゲインGiよりも小さい第２積分ゲインGiamallからなる第２フィードバック制御係数」が採用される。
【０２０３】
即ち、ＣＰＵ７１は、そのステップ１２６０にて第１比例ゲインGpの値に第２比例ゲインGpsmallを格納し、ステップ１２６０に続くステップ１２６５にて第１積分ゲインGiの値に第２積分ゲインGiamallを格納する。
【０２０４】
そして、ＣＰＵ７１は、ステップ１２４０に進み、上記第２フィードバック制御係数に基づいてメインフィードバック補正量DFiを取得する。次いで、ＣＰＵ７１は、ステップ１２４５に進んでハイパスフィルタ通過後筒内燃料供給量偏差の積分値SDFchiを取得（更新）し、ステップ１２９５に進んで本ルーチンを一旦終了する。
【０２０５】
更に、ＣＰＵ７１は、図１３のステップ１３００から処理を開始すると、上述したサブフィードバック制御条件が成立すれば、ステップ１３１０にて「Ｙｅｓ」と判定してステップ１３２０以降に進む。次いで、ＣＰＵ７１は、上記同様、ステップ１３２０乃至ステップ１３７０の処理を順に行ってサブフィードバック補正係数KFiを取得する。
【０２０６】
以上により、サブフィードバック補正係数KFiが比例積分微分制御（ＰＩＤ制御）により求められ、このサブフィードバック補正係数KFiによって基本燃料噴射量Fbaseが補正される（図１１のステップ１１３０を参照。）。そして、補正された基本燃料噴射量Fbase（サブフィードバック制御用燃料噴射量Fbasesb）に対して上記メインフィードバック補正量DFiが加算され、最終燃料噴射量Fiが決定される（図１１のステップ１１４０を参照。）。
【０２０７】
以上、説明したように、第３制御装置は、
内燃機関１０の排気通路に配設された触媒５３と、
前記排気通路であって前記触媒５３よりも上流側の部位に配設されるとともに同配設された部位を流れる排ガスの空燃比に応じた出力値Vabyfsを出力する上流側空燃比センサ６６と、
前記排気通路であって前記触媒５３よりも下流側の部位に配設されるとともに同配設された部位を流れる排ガスの空燃比に応じた出力値Voxsを出力する下流側空燃比センサ６７と、
を備えた内燃機関に適用される。
【０２０８】
第３制御装置は、
前記上流側空燃比センサ６６の出力値Vabyfsに応じた値と理論空燃比に対応する上流側目標値との偏差DFc（図１２のステップ１２２５を参照。）に対してハイパスフィルタ処理を施した値DFchi（図１２のステップ１２３０を参照。）、及び、前記上流側空燃比センサ６６の出力値Vabyfsに応じた値に対してハイパスフィルタ処理を施した値と理論空燃比に対応する上流側目標値との偏差の何れか一方に基づき、前記機関１０に供給される混合気の空燃比をフィードバック制御するためのメインフィードバック補正量DFiを、少なくとも一つのゲインを含む第１フィードバック制御係数（図１２のステップ１２４０におけるGp及びGi）を用いて算出するメインフィードバック補正量算出手段と、
前記下流側空燃比センサ６７の出力値Voxsに応じた値と理論空燃比に対応する下流側目標値との偏差DVoxs（図１３のステップ１３２０を参照。）に対してローパスフィルタ処理を施した値DVoxslowに基づき（図１３のステップ１３３０を参照。）、前記機関１０に供給される混合気の空燃比をフィードバック制御するためのサブフィードバック補正量Fbasesbを、前記メインフィードバック補正量の算出とは独立して算出するサブフィードバック補正量算出手段と、
前記メインフィードバック補正量DFi及び前記サブフィードバック補正量Fbasesbに基づいて前記機関１０に供給される混合気の空燃比を理論空燃比に一致するようにフィードバック制御する（図１１のルーチンを参照。）空燃比制御手段と、
前記排ガスの空燃比が増大したときの前記上流側空燃比センサ６６の応答時定数であるリーン方向応答時定数Taflean、及び、前記排ガスの空燃比が減少したときの前記上流側空燃比センサ６６の応答時定数であるリッチ方向応答時定数Tafrichを取得する応答時定数取得手段（図６のステップ６２０を参照。）と、
前記リーン方向応答時定数Tafleanと前記リッチ方向応答時定数Tafrichとの差の絶対値である診断指標値が所定の許容値δよりも大きいか否かを判定する（図６のステップ６３０を参照。）空燃比センサ診断手段と、
を備える。
【０２０９】
第３制御装置において、
前記メインフィードバック補正量算出手段は、
前記空燃比センサ診断手段によって前記診断指標値が前記許容値δよりも大きいと判定されたとき（図６のステップ６３０にて「Ｙｅｓ」と判定されたとき）、前記第１フィードバック制御係数に代え、前記第１フィードバック制御係数に含まれるゲインのうちの少なくとも一つのゲインを小さくして得られる第２フィードバック制御係数（Gpsmall及びGismall。図１２のステップ１２６０及びステップ１２６５を参照。）を用いて前記メインフィードバック補正量DFiを算出する（図１２のステップ１２４０を参照）ように構成される。
【０２１０】
このように、第３制御装置は、空燃比センサの劣化の度合いをリーン方向応答時定数Taflean及びリッチ方向応答時定数Tafrichの大きさに基づいて評価する。ここで、上流側空燃比センサ６６が非対称劣化していると判断されないとき、第１フィードバック制御係数（ゲインとして、Gp及びGiを含む。）に基づいてメインフィードバック制御が実行される。一方、上流側空燃比センサ６６が非対称劣化していると判断されたとき、第１フィードバック制御係数よりも小さいゲインを含む第２フィードバック制御係数（ゲインとして、Gpよりも小さいGpsmall、及び、Giよりも小さいGismallを含む。）に基づいてメインフィードバック制御が実行される。
【０２１１】
フィードバック制御係数に含まれるゲインの大きさは、フィードバック補正量の大きさに影響を与える。また、上流側空燃比センサ６６の出力値Vabyfsに基づく値に対してハイパスフィルタ処理が施されることにより、その高周波数成分（排ガスの空燃比の変動のうちの高周波数成分）がメインフィードバック制御に用いられる。よって、上流側空燃比センサが非対称劣化（高周波数成分への応答性が劣化）したときに「第２フィードバック制御係数」を採用することより、排ガスの空燃比の変動のうちの高周波数成分に基づく補正量（メインフィードバック補正量）が小さくなる。これにより、サブフィードバック補正量に対するメインフィードバック補正量の影響を小さくすることができる。この結果、上流側空燃比センサの非対称応答による影響を出来る限り小さくすることができ、もって、機関のエミッションを良好に維持することができる。
【０２１２】
第３制御装置は、「上流側空燃比センサ６６の出力値Vabyfsに応じた値と理論空燃比に対応する上流側目標値との偏差DFc」に対してハイパスフィルタ処理を施し、本処理によって得られる値DFi、及び、第１フィードバック制御係数又は第２フィードバック制御係数に基づきメインフィードバック制御を実行している。しかし、第３制御装置は、まず「上流側空燃比センサ６６の出力値Vabyfsに応じた値」に対してハイパスフィルタ処理を施し、処理された出力値Vabyfsと理論空燃比に対応する上流側目標値との偏差、及び、第１フィードバック制御係数又は第２フィードバック制御係数に基づきメインフィードバック制御を実行するように構成されてもよい。
【０２１３】
第３制御装置は、比例積分制御（ＰＩ制御）によってメインフィードバック制御を実行している。しかし、第３制御装置は、例えば比例積分微分制御（ＰＩＤ制御）によってメインフィードバック制御を実行するように構成されてもよい。また、上述した第１フィードバック制御係数が微分ゲイン（Ｄゲイン）を含む場合、第２フィードバック制御係数はその微分ゲインのみを小さくするように構成されてもよい。
【０２１４】
なお、本発明は上記各実施形態に限定されることはなく、本発明の範囲内において種々の変形例を採用することができる。
【０２１５】
また、本発明の内燃機関の空燃比制御装置は、以下のように構成することもできる。
【０２１６】
即ち、本発明の内燃機関の空燃比制御装置は、
（１）内燃機関の排気通路に配設されるとともに配設された部位を流れる排ガスの空燃比に応じた出力値を出力する空燃比センサと、
（２）前記空燃比センサの出力値に基づいて前記機関に供給される混合気の空燃比を目標空燃比に一致させる空燃比フィードバック制御を実行する空燃比制御手段と、
を備える内燃機関の空燃比制御装置に適用され、
（３）前記排ガスの空燃比が増大したときの前記空燃比センサの応答時定数であるリーン方向応答時定数、及び、前記排ガスの空燃比が減少したときの前記空燃比センサの応答時定数であるリッチ方向応答時定数を取得する応答時定数取得手段と、
（４）前記リーン方向応答時定数と前記リッチ方向応答時定数との差の絶対値である診断指標値が所定の許容値よりも大きいか否かを判定する空燃比センサ診断手段と、
（５）前記空燃比センサ診断手段によって前記診断指標値が前記許容値よりも大きいと判定されたとき、前記リーン方向応答時定数が前記リッチ方向応答時定数よりも大きい場合には前記目標空燃比を第１補正分だけ減少し、前記リッチ方向応答時定数が前記リーン方向応答時定数よりも大きい場合には前記目標空燃比を第２補正分だけ増大する空燃比補正手段と、
を備えるように構成することもできる。
【０２１７】
上述したように、空燃比センサが非対称劣化したとき、空燃比センサの出力値は、応答性が低い方向への排ガスの空燃比の変動に対して十分に追従することができない。この場合、検出空燃比は、実空燃比の変動とは異なる挙動を示す。これにより、検出空燃比に基づいて実行される空燃比フィードバック制御も適切に実行されない。
【０２１８】
例えば、空燃比センサのリッチ方向応答性のみが劣化した場合（即ち、リッチ方向応答時定数がリーン方向応答時定数よりも大きくなる場合）、空燃比センサの出力値は、排ガスの空燃比のリッチ方向への変動に十分に追従することができない。この場合、空燃比センサの出力値が実空燃比に追従することができない期間、検出空燃比は実空燃比よりも大きくなる（リーン側の値となる）。そのため、この期間において、実際には必要とされない過剰なフィードバック制御（空燃比をリッチ側に向かわせる制御）がなされる。この結果、触媒に流入する排ガスの空燃比の中心（以下、「平均空燃比」とも称呼する。）は目標空燃比よりもリッチ側の空燃比となり、機関のエミッションが悪化する。
【０２１９】
そこで、第３の空燃比制御装置は、空燃比センサが非対称劣化したとき、この空燃比センサの劣化に対応するように「目標空燃比」を補正する。具体的には、第３の空燃比制御装置は、空燃比センサのリーン方向応答時定数がリッチ方向応答時定数よりも大きい場合（即ち、リーン方向応答性がリッチ方向応答性よりも低下した場合）、目標空燃比を第１補正分だけ「減少」する。また、第３の空燃比制御装置は、リッチ方向応答時定数がリーン方向応答時定数よりも大きい場合（即ち、リッチ方向応答性がリーン方向応答性よりも低下した場合）、目標空燃比を第２補正分だけ「増大」する。
【０２２０】
目標空燃比が上述したように補正されたとしても、空燃比センサの出力値の非対称応答は解消されない。しかし、上記補正により、触媒に流入する排ガスの「平均空燃比」を本来の目標空燃比に出来る限り近づけることができる。この理由を、上述した「空燃比センサのリッチ方向応答性のみが劣化した場合」を参照し、以下に説明する。
【０２２１】
上述したように、空燃比センサのリッチ方向応答性のみが劣化した場合、触媒に流入する排ガスの平均空燃比は目標空燃比abyfrよりもリッチ側の空燃比（abyfr−β１）となる。このとき、目標空燃比abyfrが所定の補正分（γ）だけ増大するように補正されると、これ以降のフィードバック制御が補正された目標空燃比（abyfr＋γ）に基づいて実行される。上述したように、目標空燃比が補正されたとしても、空燃比センサの出力値の非対称応答は解消されない。従って、上記同様、触媒に流入する排ガスの平均空燃比は「補正された目標空燃比（abyfr＋γ）よりもリッチ側の空燃比（abyfr＋γ−β２）」となる。ここで、目標空燃比abyfrの補正分（γ）を適切に設定することにより、触媒に流入する排ガスの平均空燃比を本来の目標空燃比abyfrに出来る限り近づけることができる（例えば、γ＝β２のとき、平均空燃比は目標空燃比に一致する）。
【０２２２】
なお、上記とは逆に空燃比センサのリーン方向応答性がリッチ方向応答性よりも低下した場合においても、上記同様の手法により、触媒に流入する排ガスの平均空燃比を本来の目標空燃比abyfrに出来る限り近づけることができる。従って、機関のエミッションを良好に維持することができる。
【０２２３】
ここで、「第１補正分」及び「第２補正分」は、例えば以下のように決定することができる。まず、「劣化していない空燃比センサのリッチ方向応答時定数及びリーン方向応答時定数」が予め取得される。次いで、これらの応答時定数と劣化診断時点における各応答時定数とが比較されることにより、「応答性の劣化の度合い」が評価される。そして、この応答性の劣化の度合いに対応するように、「第１補正分」及び「第２補正分」が適宜決定される。
【０２２４】
更に、本発明の内燃機関の空燃比制御装置は、以下のように構成することもできる。
【０２２５】
即ち、本発明の内燃機関の空燃比制御装置は、
（１）内燃機関の排気通路に配設されるとともに配設された部位を流れる排ガスの空燃比に応じた出力値を出力する空燃比センサと、
（２）前記空燃比センサの出力値に基づいて前記機関に供給される混合気の空燃比を目標空燃比に一致させる空燃比フィードバック制御を実行する空燃比制御手段と、
を備える内燃機関の空燃比制御装置に適用され、
（３）前記排ガスの空燃比が増大したときの前記空燃比センサの応答時定数であるリーン方向応答時定数、及び、前記排ガスの空燃比が減少したときの前記空燃比センサの応答時定数であるリッチ方向応答時定数を取得する応答時定数取得手段と、
（４）前記リーン方向応答時定数と前記リッチ方向応答時定数との差の絶対値である診断指標値が所定の許容値よりも大きいか否かを判定する空燃比センサ診断手段と、
（５）前記空燃比センサ診断手段によって前記診断指標値が前記許容値よりも大きいと判定されると、前記リーン方向応答時定数が前記リッチ方向応答時定数よりも大きい場合には前記空燃比センサの出力値が増大する場合にその高周波数成分を増幅し、前記リッチ方向応答時定数が前記リーン方向応答時定数よりも大きい場合には前記空燃比センサの出力値が減少する場合にその高周波数成分を増幅するセンサ出力補正手段と、
を備えるように構成することもできる。
【０２２６】
上述したように、空燃比センサが非対称劣化したとき、空燃比センサの出力値は非対称応答を示す。ここで、上述したように、非対称応答を示す出力値「全体」に対して「高周波数成分増幅補償」を行うと、劣化の度合いが小さい方向の出力値の高周波数成分が過度に増幅され、その結果、機関のエミッションが悪化する。そこで、第４の空燃比制御装置は、非対称応答を示す出力値のうちの「劣化の度合いが大きい方向の出力値」に対してのみ高周波数成分を増幅する補正を行う。
【０２２７】
具体的には、第４の空燃比制御装置は、リーン方向応答時定数がリッチ方向応答時定数よりも大きいとき（即ち、リーン方向応答性がリッチ方向応答性よりも低下したとき）、空燃比センサの出力値が増大する場合（出力値がリーン方向に変動する場合）にその高周波数成分を増幅するように空燃比センサの出力値を補正する。また、第４の空燃比制御装置は、リッチ方向応答時定数がリーン方向応答時定数よりも大きいとき（即ち、リッチ方向応答性がリーン方向応答性よりも低下したとき）、空燃比センサの出力値が減少する場合（出力値がリッチ方向に変動する場合）にその高周波数成分を増幅するように空燃比センサの出力値を補正する。
【０２２８】
上記補正により、劣化側の度合いが大きい方向の出力値のみが増幅されるので、空燃比センサの出力値の非対称応答を解消することができる。更に、上記補正により、実空燃比の変動に対して遅れのない出力値を得ることができる。これらの結果、機関のエミッションを良好に維持することができる。
【０２２９】
ここで、上記補正を行うにあたり、空燃比センサの出力値が変動する方向を特定する必要がある。「空燃比センサの出力値が変動する方向」は、例えば、以下のように判断することができる。まず、所定時間の経過毎に空燃比センサの出力値が取得されるとともに、取得した出力値に時刻番号（１、２、３・・・N−1、N、N＋1・・・）が付与される。次いで、時刻Nにて取得された出力値と時刻N−1にて取得された出力値とが比較される。この比較により、「空燃比センサの出力値が変動する方向」が判断される。
【０２３０】
出力値の高周波数成分を増幅する際の「増幅の度合い」は、例えば、以下のように決定することができる。まず、上記第３の空燃比制御装置と同様の手法により、空燃比センサの劣化の度合いが評価される。次いで、この応答性の劣化の度合いに対応するように適切な「増幅の度合い」が決定される。
【図面の簡単な説明】
【０２３１】
【図１】本発明の制御装置が適用される内燃機関の概略断面図である。
【図２】空燃比と図１に示した上流側空燃比センサの出力値の関係を示したグラフである。
【図３】空燃比と図１に示した下流側空燃比センサの出力値の関係を示したグラフである。
【図４】空燃比と図１に示した上流側空燃比センサの出力値に基づき求められる検出空燃比との関係を示したタイムチャートである。
【図５】本発明の第１制御装置に係る制御装置のＣＰＵが実行するルーチンを示したフローチャートである。
【図６】本発明の第１制御装置に係る制御装置のＣＰＵが実行するルーチンを示したフローチャートである。
【図７】本発明の第１制御装置に係る制御装置のＣＰＵが実行するルーチンを示したフローチャートである。
【図８】本発明の第１制御装置に係る制御装置のＣＰＵが実行するルーチンを示したフローチャートである。
【図９】本発明の第２制御装置に係る制御装置のＣＰＵが実行するルーチンを示したフローチャートである。
【図１０】本発明の第３制御装置に係る制御装置のＣＰＵが実行するルーチンを示したフローチャートである。
【図１１】本発明の第３制御装置に係る制御装置のＣＰＵが実行するルーチンを示したフローチャートである。
【図１２】本発明の第３制御装置に係る制御装置のＣＰＵが実行するルーチンを示したフローチャートである。
【図１３】本発明の第３制御装置に係る制御装置のＣＰＵが実行するルーチンを示したフローチャートである。
【符号の説明】
【０２３２】
１０…内燃機関、２５…燃焼室、３９…インジェクタ、５２…エキゾーストパイプ（排気管）、５３…三元触媒（第１触媒）、５４…三元触媒（第２触媒）、６６…上流側空燃比センサ、６７…下流側空燃比センサ、７０…電気制御装置、７１…ＣＰＵ
【図１】
2010096015.tif 000003
【図２】
2010096015.tif 000004
【図３】
2010096015.tif 000005
【図４】
2010096015.tif 000006
【図５】
2010096015.tif 000007
【図６】
2010096015.tif 000008
【図７】
2010096015.tif 000009
【図８】
2010096015.tif 000010
【図９】
2010096015.tif 000011
【図１０】
2010096015.tif 000012
【図１１】
2010096015.tif 000013
【図１２】
2010096015.tif 000014
【図１３】
2010096015.tif 000015