(57)【要約】本発明による空燃比制御装置は、エンジン１の排気通路７上に配設された排気浄化触媒１９に流入する排ガスの排気空燃比に基づいて、前記排気浄化触媒から流出する排ガス中に含まれる少なくとも一つの特定成分の排出量をモデルを用いて推定し、この推定した値が目標状態となるように空燃比を制御する。モデルは、特定成分の物質収支を考慮することにより決定されている。
2002103181.tif 000002
【特許請求の範囲】
【請求項１】
内燃機関の排気通路上に配設された排気浄化触媒に流入する排ガスの排気空燃比に基づいて、前記排気浄化触媒から流出する排ガス中に含まれる少なくとも一つの特定成分の排出量又は流出する排ガスの状態を示す少なくとも一つの代表値である推定値を推定する推定手段と、
前記推定手段によって推定される推定値についての目標状態を設定する目標設定手段と、
前記推定手段によって推定される推定値が前記目標設定手段によって設定された目標状態となるように空燃比を制御する空燃比制御手段とを備えたことを特徴とする内燃機関の空燃比制御装置。
【請求項２】
前記推定手段によって推定される推定値が、所定時間後における排出量又は代表値を予測したものであることを特徴とする請求項１に記載の内燃機関の空燃比制御装置。
【請求項３】
前記内燃機関の点火時期を制御する点火時期制御手段をさらに備え、かつ、前記空燃比制御手段が前記内燃機関の吸入空気量を調節するスロットルバルブの開度を任意に制御しえる機能を有しており、
前記推定手段による所定時間後の前記推定値が所定の目標状態となるように前記空燃比制御手段を用いて空燃比を制御するに際して、前記空燃比制御手段によってスロットルバルブの開制御を遅延させるとともに、前記点火時期制御手段によって点火時期を進角させることを特徴とする請求項２に記載の内燃機関の空燃比制御装置。
【請求項４】
前記推定手段が、リッチ空燃比時に排出量が増加する成分に関連する少なくとも一つの推定値と、リーン空燃比時に排出量が増加する成分に関連する少なくとも一つの推定値とを推定し、
前記目標設定手段が、各推定値毎に目標状態を設定することを特徴とする請求項１〜３の何れか一項に記載の内燃機関の空燃比制御装置。
【請求項５】
前記目標設定手段によって設定される目標状態が、前記推定値を所定範囲内とすることであることを特徴とする請求項１〜４の何れか一項に記載の内燃機関の空燃比制御装置。
【請求項６】
前記目標設定手段が、各推定値毎が等しくなる状態を目標状態として設定することを特徴とする請求項４に記載の内燃機関の空燃比制御装置。
【請求項７】
前記推定手段が、スロットル開度の開度予測値を前記推定値の推定に反映させることを特徴とする請求項３に記載の内燃機関の空燃比制御装置。
【請求項８】
前記推定手段が、燃料挙動モデルを前記推定値の推定に反映させることを特徴とする請求項３に記載の内燃機関の空燃比制御装置。
【請求項９】
前記推定手段が、前記排気浄化触媒を排ガスの流れ方向に複数の領域に分割したうちの特定領域について前記推定値を推定し、
前記目標設定手段が、前記特定領域についての推定値に対する目標状態を設定し、
前記空燃比制御手段が、前記特定領域についての推定値が同特定領域に対して設定された前記目標状態となるように空燃比を制御することを特徴とする請求項１〜８の何れか一項に記載の内燃機関の空燃比制御装置。
【請求項１０】
前記推定手段が、前記分割された複数の領域のうちの最も下流側の領域よりも上流側に前記特定領域を設定することを特徴とする請求項９に記載の内燃機関の空燃比制御装置。
【請求項１１】
前記推定手段が、前記内燃機関の運転状態に応じて前記特定領域を変更することを特徴とする請求項９に記載の内燃機関の空燃比制御装置。
【請求項１２】
前記推定手段が、特定領域として二つの領域を選択して各推定値を推定し、前記目標設定手段が、各特定領域についてそれぞれ前記推定値の目標状態を設定し、前記空燃比制御手段が、各特定領域の各推定値が各目標状態となるように空燃比を制御することを特徴とする請求項９に記載の内燃機関の空燃比制御装置。
【請求項１３】
前記空燃比制御手段が、各特定領域毎に空燃比制御に対する影響度を個別に設定することを特徴とする請求項１２に記載の内燃機関の空燃比制御装置。
【請求項１４】
前記空燃比制御手段が、各特定領域毎の前記影響度を前記内燃機関の運転状態に応じて変更することを特徴とする請求項１３に記載の内燃機関の空燃比制御装置。
【請求項１５】
前記排気浄化触媒から流出する排ガスの排気空燃比を検出する下流側空燃比センサと、前記推定手段によって推定された前記推定値及び前記下流側空燃比センサの検出結果に基づいて前記推定値の推定モデルを補正する推定モデル補正手段とをさらに備えていることを特徴とする請求項１に記載の内燃機関の空燃比制御装置。
【請求項１６】
前記排気浄化触媒から流出する排ガスの排気空燃比を検出する下流側空燃比センサと、前記推定手段によって推定された前記推定値及び前記下流側空燃比センサの検出結果に基づいて前記下流側空燃比センサの診断を行うセンサ診断手段とをさらに備えていることを特徴とする請求項１に記載の内燃機関の空燃比制御装置。
【請求項１７】
前記排気通路上に前記排気浄化触媒として上流側排気浄化触媒及び下流側排気浄化触媒が配設されており、
前記推定手段は、前記上流側排気浄化触媒及び前記下流側排気浄化触媒の双方について推定値を推定することを特徴とする請求項１に記載の内燃機関の空燃比制御装置。
【請求項１８】
前記上流側排気浄化触媒から流出して前記下流側排気浄化触媒に流入する排ガスの排気空燃比を検出する中間部空燃比センサをさらに備え、
前記空燃比制御手段は、前記上流側排気浄化触媒についての前記推定値と前記中間部空燃比センサの検出結果とに基づいて、前記上流側排気浄化触媒から流出して前記下流側排気浄化触媒に流入する排ガスの排気空燃比を制御することを特徴とする請求項１７に記載の内燃機関の空燃比制御装置。
【請求項１９】
前記上流側排気浄化触媒についての前記推定値が排ガス中の酸素過不足量に関するものであり、
前記目標設定手段は、前記下流側排気浄化触媒に流入する排ガス中の前記酸素過不足量の積算値がゼロとなるように前記推定値の目標状態を設定することを特徴とする請求項１７に記載の内燃機関の空燃比制御装置。
【請求項２０】
流入するガスが通過する空間と、同空間に露呈するとともに触媒機能をもたらす物質及び酸素吸蔵放出機能をもたらす物質を担持したコート層と、を含んでなる排気浄化触媒を排気通路に配設した内燃機関の空燃比制御装置であって、
前記排気浄化触媒の一部又は全部を通過した前記機関の排ガスに含まれる特定成分の排出量に応じた値を推定値として推定する推定手段と、
前記推定手段によって推定される推定値の少なくとも一つが所定の目標状態となるように、前記排気浄化触媒に流入する排ガスの空燃比を制御する空燃比制御手段と、
を備えた内燃機関の空燃比制御装置。
【請求項２１】
前記特定成分は、前記排気浄化触媒に流入する前記機関の排ガスに含まれるとともに還元機能を有するリダクション成分及び同排ガスに含まれるとともに同リダクション成分に酸素を供給し得るストレージ成分のうちの少なくとも一つの成分であり、
前記推定手段は、前記特定成分の物質収支を考慮して形成された推定モデルに基づいて前記推定値を推定するように構成されたことを特徴とする請求項２０に記載した内燃機関の空燃比制御装置。
【請求項２２】
前記推定手段の推定モデルは、前記排気浄化触媒を排ガスの流れ方向に複数の領域に分割したうちの特定領域に着目し、同特定領域の前記空間に流入する前記特定成分の量と同特定領域の空間から流出する同特定成分の量、及び同特定領域の空間から同特定領域の前記コート層に拡散する同特定成分の量に基づいて形成されたことを特徴とする請求項２１に記載の内燃機関の空燃比制御装置。
【請求項２３】
前記推定手段のモデルは、前記特定領域の空間から前記特定領域のコート層に拡散する前記特定成分の量と同コート層で消費される同特定成分の量とに基づいて形成されたことを特徴とする請求項２２に記載の内燃機関の空燃比制御装置。
【請求項２４】
前記特定成分は、酸素である請求項２１〜２３の何れか一項に記載の内燃機関の空燃比制御装置。
【請求項２５】
前記特定成分は、酸素と一酸化炭素である請求項２１〜２３の何れか一項に記載の内燃機関の空燃比制御装置。
【発明の詳細な説明】
技  術  分  野
本発明は、内燃機関の空燃比制御装置に関する。
背  景  技  術
従来より、内燃機関の排ガスを浄化するため、排気浄化触媒（三元触媒）を排気通路上に配設し、排気通路に設けた空燃比センサにより検出される空燃比に基づいて機関に供給される混合気の空燃比が理論空燃比となるようにフィードバック制御を行っている。これにより、窒素酸化物ＮＯｘ、一酸化炭素ＣＯ、及び炭化水素ＨＣが同時に低減される。内燃機関から排出される排ガスの浄化率を向上させるには、上述したフィードバック制御を精度良く行うことが有効である。
また、更なる排気浄化性能の向上のため、排気浄化触媒の酸素吸蔵作用を効果的に利用する方法が検討されて来ている。この方法は、排ガス中の浄化すべき物質を酸化還元する際に、排気浄化触媒に吸蔵した酸素や排気浄化触媒の吸蔵機能を利用する。
特開平５−１９５８４２号公報に開示された制御装置は、このような酸素吸蔵作用に着目してなされた装置であって、排気浄化触媒全体に吸蔵される酸素量（酸素吸蔵量、酸素の実際充填度）を、吸入空気流量、空気中の酸素の含有量、及びラムダ値１（理論空燃比）からの偏差の積に基づいて推定し、この酸素吸蔵量をある固定された目標値となるように空燃比を制御するようになっている。
しかしながら、上述した制御は酸素吸蔵量を目標値近傍に維持しようとする制御であり、排ガス中の着目した一つ又は複数の特定の成分の排出量を所望の値以下とするような空燃比制御、或いは、触媒全体の酸素吸蔵量ではなく同触媒の上流部分までにおける酸素吸蔵量を所望の値近傍に維持しようとする空燃比制御を行うことができない等の問題がある。
そこで、発明者は、排気浄化触媒から流出する（排気浄化触媒により浄化される）排ガス中に含まれる特定成分の排出量（あるいは、排ガスの状態を表す代表値）を推定する手法を開発するとともに、この推定値を所定の目標状態とするように空燃比制御を行うことにより排気浄化性能を向上しえることを見い出した。
発  明  の  開  示
本発明の目的は、排気浄化触媒から流出する排ガス中に含まれる特定成分の排出量（あるいは、排ガスの状態を表す代表値）を推定し、その推定値に基づいて空燃比の制御を行うことにより、排気浄化触媒による排ガスの浄化効率を向上し得る内燃機関の空燃比制御装置を提供することにある。
本発明による空燃比制御装置により空燃比が制御される内燃機関は、その排気通路上に排気浄化触媒を備えている。そして、空燃比制御装置は、その排気浄化触媒に流入する排ガスの排気空燃比に基づいて、同排気浄化触媒から流出する排ガス中に含まれる少なくとも一つの特定成分の排出量又は流出する排ガスの状態を示す少なくとも一つの代表値である推定値を推定する推定手段と、前記推定手段によって推定される推定値についての目標状態を設定する目標設定手段と、前記推定手段によって推定される推定値が前記目標設定手段によって設定された目標状態となるように空燃比を制御する空燃比制御手段とを備えている。
これにより、排気浄化触媒から流出する排ガス中に含まれる少なくとも一つの特定成分の排出量又は流出する排ガスの状態を示す少なくとも一つの代表値である推定値が目標状態となるように、空燃比が制御されるので、排気浄化性能を向上することが可能となる。
また、本発明の一態様において、前記推定手段によって推定される推定値は、所定時間後における（即ち、現時点から所定時間後における時点での）排出量又は代表値を予測したものである。これにより、より迅速な空燃比の制御が可能となり、排気浄化性能を向上することができる。
本発明の他の態様においては、前記空燃比制御装置が、前記内燃機関の点火時期を制御する点火時期制御手段をさらに備え、かつ、前記空燃比制御手段が前記内燃機関の吸入空気量を調節するスロットルバルブの開度を任意に制御しえる機能を有しており、前記推定手段による所定時間後の前記推定値が所定の目標状態となるように前記空燃比制御手段を用いて空燃比を制御するに際して、前記空燃比制御手段によってスロットルバルブの開制御を遅延させるとともに、前記点火時期制御手段によって点火時期を進角させるように構成される。
これにより、エンジントルクの低下を抑制しながら、空燃比制御による排気浄化性能の向上を達成することができる。
本発明の他の態様においては、前記推定手段が、リッチ空燃比時に排出量が増加する成分に関連する少なくとも一つの推定値と、リーン空燃比時に排出量が増加する成分に関連する少なくとも一つの推定値とを推定し、前記目標設定手段が、各推定値毎に目標状態を設定する。
また、この空燃比制御装置において、前記目標設定手段によって設定される目標状態は、前記推定値を所定範囲内とすることであってもよい。
また、前記目標設定手段は、各推定値毎が等しくなる状態を目標状態として設定してもよい。
また、前記推定手段は、スロットル開度の開度予測値を前記推定値の推定に反映させてもよい。
また、前記推定手段は、燃料挙動モデルを前記推定値の推定に反映させてもよい。
本発明の他の態様において、前記推定手段が、前記排気浄化触媒を排ガスの流れ方向に複数の領域に分割したうちの特定領域について前記推定値を推定し、前記目標設定手段が、前記特定領域についての推定値に対する目標状態を設定し、前記空燃比制御手段が、前記特定領域についての推定値が同特定領域に対して設定された前記目標状態となるように空燃比を制御するように構成されていてもよい。
これによれば、特定領域での排ガスの状態を所望の状態に近づけることができる。
また、前記推定手段は、前記分割された複数の領域のうちの最も下流側の領域よりも上流側に前記特定領域を設定するように構成されてもよい。
これによれば、より上流側の特定領域の推定値が空燃比制御の対象となるので、迅速な空燃比制御が可能となるとともに、特定領域での制御結果が目標状態と異なったとしても、特定領域から下流の領域の触媒作用により排ガスを浄化することができるので、排気浄化性能を向上することができる。
この場合、前記推定手段は、前記内燃機関の運転状態に応じて前記特定領域を変更するように構成されてもよく、これにより、排気浄化性能を一層向上することができる。
また、前記推定手段が、前記特定領域として二つの領域を選択して各推定値を推定し、前記目標設定手段が、各特定領域についてそれぞれ前記推定値の目標状態を設定し、前記空燃比制御手段が、各特定領域の各推定値が各目標状態となるように空燃比を制御するように構成されてもよい。これにより、より綿密な空燃比制御が可能となるので、排気浄化性能を一層向上することができる。
また、このように特定領域を複数選択する場合、更に綿密な空燃比制御を行うため、前記空燃比制御手段が、各特定領域毎に空燃比制御に対する影響度を個別に設定するように構成されてもよい。
更に、前記空燃比制御手段は、各特定領域毎の前記影響度を前記内燃機関の運転状態に応じて変更するように構成されてもよい。
本発明の他の態様においては、空燃比制御装置が、前記排気浄化触媒から流出する排ガスの排気空燃比を検出する下流側空燃比センサと、前記推定手段によって推定された前記推定値及び前記下流側空燃比センサの検出結果に基づいて前記推定値の推定モデルを補正する推定モデル補正手段とをさらに備えている。これにより、推定モデルによる推定値の推定精度が向上する。
本発明の他の態様においては、空燃比制御装置が、前記排気浄化触媒から流出する排ガスの排気空燃比を検出する下流側空燃比センサと、前記推定手段によって推定された前記推定値及び前記下流側空燃比センサの検出結果に基づいて前記下流側空燃比センサの診断を行うセンサ診断手段とをさらに備えている。これにより。センサの診断を行うことができる。
本発明の他の態様において、排気通路上に前記排気浄化触媒として上流側排気浄化触媒及び下流側排気浄化触媒が配設されている場合、前記推定手段は、前記上流側排気浄化触媒及び前記下流側排気浄化触媒の双方について推定値を推定する。
この場合おいて、空燃比制御装置が、前記上流側排気浄化触媒から流出して前記下流側排気浄化触媒に流入する排ガスの排気空燃比を検出する中間部空燃比センサをさらに備える場合、前記空燃比制御手段は、前記上流側排気浄化触媒についての前記推定値と前記中間部空燃比センサの検出結果とに基づいて、前記上流側排気浄化触媒から流出して前記下流側排気浄化触媒に流入する排ガスの排気空燃比を制御するように構成されることが好適である。
また、前記上流側排気浄化触媒についての前記推定値が排ガス中の酸素過不足量に関するものであり、前記目標設定手段は、前記下流側排気浄化触媒に流入する排ガス中の前記酸素過不足量の積算値がゼロとなるように前記推定値の目標状態を設定するように構成されることが好適である。
本発明は、また、流入するガスが通過する空間と、同空間に露呈するとともに触媒機能をもたらす物質及び酸素吸蔵放出機能をもたらす物質を担持したコート層と、を含んでなる排気浄化触媒を排気通路に配設した内燃機関の空燃比制御装置であって、前記排気浄化触媒の一部又は全部を通過した前記機関の排ガスに含まれる特定成分の排出量に応じた値を推定値として推定する推定手段と、前記推定手段によって推定される推定値の少なくとも一つが所定の目標状態となるように、前記排気浄化触媒に流入する排ガスの空燃比を制御する空燃比制御手段と、を備えた内燃機関の空燃比制御装置を提供する。
これによれば、推定された排ガス中の特定成分の排出量（濃度等）に応じた空燃比制御がなされるので、排気浄化性能が向上する。
この場合、前記特定成分は、前記排気浄化触媒に流入する前記機関の排ガスに含まれるとともに還元機能を有するリダクション成分及び同排ガスに含まれるとともに同リダクション成分に酸素を供給し得るストレージ成分のうちの少なくとも一つの成分であり、前記推定手段は、前記特定成分の物質収支を考慮して形成された推定モデルに基づいて前記推定値を推定するように構成され得る。
さらに、前記推定手段のモデルは、前記排気浄化触媒を排ガスの流れ方向に複数の領域に分割したうちの特定領域に着目し、同特定領域の前記空間に流入する前記特定成分の量と同特定領域の空間から流出する同特定成分の量、及び同特定領域の空間から同特定領域の前記コート層に拡散する同特定成分の量に基づいて形成され得る。
さらに、前記推定手段の推定モデルは、前記特定領域の空間から前記特定領域のコート層に拡散する前記特定成分の量と同コート層で消費される同特定成分の量とに基づいて形成され得る。
このようなモデルにより特定成分の排出量を推定する場合、前記特定成分は、酸素、又は酸素と一酸化炭素とすることが計算上簡便である。
発明を実施するための最良の形態
以下、本発明による空燃比制御装置の実施形態について図面を参照しつつ説明する。図１は、かかる空燃比制御装置を有する内燃機関の構成を示している。この空燃比制御装置は内燃機関であるエンジン１を制御するものである。
エンジン１は多気筒エンジンであり、図１においては、その一気筒のみが断面図で示されている。このエンジン１は、点火プラグ２によって各シリンダ３内の混合気に対して点火を行うことにより駆動力を発生するようになっている。エンジン１は、吸気通路４を介して外部から吸入された空気とインジェクタ５から噴射された燃料とを混合することで形成される混合気をシリンダ３内に吸入するようになっている。吸気バルブ６は、シリンダ３の内部と吸気通路４との間を開閉するようになっている。排気通路７は、シリンダ３の内部で燃焼された混合気を排ガスとして排気する通路である。排気バルブ８は、シリンダ３の内部と排気通路７との間を開閉するようになっている。
スロットルバルブ９は、シリンダ３内に吸入される吸入空気量を調節するためのものであって、吸気通路４に配設されている。このスロットルバルブ９には、その開度を検出するスロットルポジションセンサ１０が接続されている。また、スロットルバルブ９は、スロットルモータ１１と連結されており、スロットルモータ１１の駆動力により開閉されるようになっている。アクセルポジションセンサ１２は、スロットルバルブ９の近傍に配設され、アクセルペダルの操作量（アクセル開度）を検出するようになっている。これらの構成に基き、スロットルバルブ９の開度は電子的に制御されるようになっている。即ち、本エンジン１には、電子制御スロットル方式が採用されている。
また、エンジン１は、吸入空気量（吸入空気流量）を検出するエアフローメータ１３、クランクシャフトの位置を検出することでシリンダ３内のピストン１５の位置やエンジン回転速度ＮＥを求める信号を発生するクランクポジションセンサ１４、同エンジン１のノッキングを検出するノックセンサ１６、及び冷却水温を検出する水温センサ１７を備えている。
排気浄化触媒（触媒コンバータ、以下、単に「触媒」と称呼することもある。）１９は、排気通路７に配設されている。このような触媒は、排気通路上に複数設けられる場合もある。例えば、排気の流れに対して直列に複数設けられる場合や、排気通路が分岐されている構成を備えるエンジンに対しては、各分岐した排気通路に備えられる場合（より具体的には、４気筒エンジンにおいて、２気筒の排気管が一つにまとめられた箇所に触媒が一つ配置され、残りの２気筒の排気管が一つにまとめられた箇所にもう一つの触媒が配置される場合）である。本実施形態においては、各シリンダ３の排気管が一つにまとめられた箇所よりも下流側に一つの触媒１９が配設されている。
エンジン１は、更に、触媒１９の温度を測定する触媒温度センサ２１、チャコールキャニスタ２３、チャコールキャニスタ２３に捕集された燃料タンクからの蒸発燃料を吸気通路４にパージさせるパージコントロールバルブ２４、触媒１９の上流側に取り付けられた上流側空燃比センサ２５、及び触媒１９の下流側に取り付けられた下流側空燃比センサ２６を備えている。
前記空燃比センサ２５，２６は、各取付位置における排ガス中の酸素濃度から同排ガスの空燃比（排ガスの排気空燃比、排気空燃比）をそれぞれ検出するようになっている。空燃比センサ２５は、空燃比をリニアに検出するリニア空燃比センサであり、空燃比センサ２６は、空燃比がリッチであるかリーンであるかを識別する濃淡電池型センサである。
上述した点火プラグ２、インジェクタ５、スロットルポジションセンサ１０、スロットルモータ１１、アクセルポジションセンサ１２、エアフローメータ１３、クランクポジションセンサ１４、ノックセンサ１６、水温センサ１７、触媒温度センサ２１、パージコントロールバルブ２４、上流側空燃比センサ２５、及び下流側空燃比センサ２６は、エンジン１を制御する電子制御ユニット（ＥＣＵ）１８と接続されていて、ＥＣＵ１８からの信号に基づいて制御され、或いは、検出結果をＥＣＵ１８に対して送出するようになっている。
ＥＣＵ１８は、演算を行うＣＰＵ、演算結果などの各種情報を記録するＲＡＭ、バッテリによって記憶内容が保持されるバックアップＲＡＭ、及び制御プログラム等を格納したＲＯＭを備えていて、各種演算を行い、インジェクタ５から噴射する燃料噴射量の制御、点火時期の制御、酸素吸蔵量の算出、後述するモデル補正、及び上記センサの診断等を行うようになっている。
（触媒の酸素吸蔵作用）
次に、触媒１９の構成及び酸素吸蔵作用について説明する。
触媒１９は、図２に外観を示したように、断面が楕円形（断面積がｄＡ一定）の柱状のモノリス触媒コンバータと称呼される三元触媒であり、軸に直交する平面で同触媒１９を切断した拡大断面図である図３に示したように、セラミックの一種であるコージェライトからなる担体１９ａにより、その内部が軸方向に延在する軸線方向空間に細分されている。各軸線方向空間は、軸線に垂直な平面で切断すると略正方形状を有していて、セルとも称呼される。担体１９ａは、アルミナのコート層１９ｂによりコーティングされていて、同コート層１９ｂは白金（Ｐｔ）等の貴金属からなる活性成分（触媒成分）及びセリア（ＣｅＯ２）等の成分を担持している。
かかる触媒１９は、同触媒１９に流入するガスの空燃比が理論空燃比のときに未燃成分（ＨＣ，ＣＯ）を酸化し、同時に窒素酸化物（ＮＯｘ）を還元する機能（これを「触媒機能」又は「酸化還元機能」と云う。）を有する。また、触媒１９は、上記セリア等の成分を担持することにより、同触媒１９に流入する排ガス中の酸素分子を吸蔵（貯蔵，吸着）及び放出する性質（以下、「酸素吸蔵機能」と称呼する。）を有していて、この酸素吸蔵機能により、空燃比が理論空燃比からある程度まで偏移したとしても、ＨＣ，ＣＯ、及びＮＯｘを浄化することができる。
即ち、触媒１９は、機関の吸入する混合気の空燃比（以下、単に「機関の空燃比」とも称呼する。この機関の空燃比は触媒に流入するガスの空燃比である「排気空燃比」と等しい。）がリーンとなって触媒１９に流入するガスに過剰の酸素及び窒素酸化物ＮＯｘが多量に含まれると、同過剰の酸素を吸蔵するとともに、同窒素酸化物ＮＯｘから酸素を奪って（ＮＯｘを還元して）同酸素を吸蔵し、これによりＮＯｘを浄化する。また、触媒１９は、機関の空燃比がリッチになって同触媒１９に流入するガスに炭化水素ＨＣや一酸化炭素ＣＯ等の未燃成分が多量に含まれると、内部に吸蔵している酸素分子をこれらの未燃成分に与えて同未燃成分を酸化し、これによりＨＣ，ＣＯを浄化する。
従って、触媒１９が酸素を吸蔵し得る限界まで酸素を吸蔵していると（換言すれば、酸素吸蔵量ＯＳＡが最大酸素吸蔵量ＯＳＡｍａｘ＝Ｃｍａｘに到達していると）、同触媒１９に流入するガスの排気空燃比がリーンとなったときに酸素を吸蔵することができないので、排ガス中のＮＯｘを充分に浄化できなくなる。一方、触媒１９が酸素を放出しきっていて酸素を全く吸蔵していなければ（換言すれば、酸素吸蔵量ＯＳＡが「０」になっていると）、同触媒１９に流入するガスの排気空燃比がリッチとなったときに酸素を放出することができないので、排ガス中のＨＣやＣＯを充分に浄化できなくなる。このため、触媒１９に流入するガスの空燃比が過渡的に相当のリーン空燃比又は相当のリッチ空燃比となった場合であっても、同ガス中の有害成分を充分に浄化できるように、触媒１９の酸素吸蔵量ＯＳＡを精度良く推定するとともに、同酸素吸蔵量ＯＳＡを所定の値に維持するように同触媒１９に流入するガスの空燃比を制御しておくことが望ましい。
また、触媒１９にリーンな空燃比のガスが流入したときには、同触媒１９の上流側においてより多くの酸素が吸蔵され、同触媒１９にリッチな空燃比のガスが流入したときには、同触媒１９の上流側から吸蔵されている酸素が消費されて行く。従って、同触媒１９の最上流位置から任意の位置までの酸素吸蔵量ＯＳＡの合計量を推定し、同推定値に基く空燃比制御を行えば、触媒１９全体の酸素吸蔵量が「０」または最大酸素吸蔵量Ｃｍａｘに到達することが回避し易くなるので、同空燃比の制御に不可避的な制御遅れが存在していても、エミッションを効果的に低減できる。さらに、触媒１９から流出するガス（又は触媒１９の一部又は全部により浄化されたガス）に含まれる特定のガス成分の濃度を推定できれば、同ガス成分に着目した空燃比制御を行うことで、同ガス成分の排出を高精度に抑制することができる。
以上の要求から、本空燃比制御装置は、推定モデル（触媒モデル）を使用することにより、特定ガス成分の濃度（排出量）と酸素吸蔵量を推定する。これらの推定値が、排気浄化触媒の全部又はその内部の所定領域（一部）から流出する排ガス中に含まれる少なくとも一つの特定成分の排出量又は流出する排ガスの状態を示す少なくとも一つの代表値である。
（触媒モデル）
以下、触媒モデルについて説明すると、先ず、図４に模式的に示したように、触媒１９をガスの入口（流入側）Ｆｒから出口（流出側）Ｒｒに向う軸線に直交する面により複数の領域（「ブロック」とも称呼する。）に分割する。即ち、触媒１９を排ガスの流れ方向に沿って、複数の領域に分割する。分割された各領域の軸線方向の長さはＬ（微小の長さでありｄｘとも書く。）である。上述したように、触媒１９の断面積はｄＡ一定である。
なお、この触媒モデルは、触媒を複数の領域に分割して構築されたモデルであるが、触媒全体を以下に述べる一つの領域として考えることにより、同触媒１９を複数の領域に分割することなく触媒モデルを構築することもできる。
次に、分割された領域のうちの任意の特定領域に注目し、同特定領域を通過する特定の化学種（特定成分）の物質の収支を考える。化学種は、排ガス中に含まれる成分であり、例えば、酸素Ｏ２、一酸化炭素ＣＯ、炭化水素ＨＣ、及び窒素酸化物ＮＯｘである。なお、化学種は、触媒に流入する排ガスの空燃比がリッチのときに同排ガス中に含まれる成分を総合したもの（リッチ成分）、或いは、触媒に流入する排ガスの空燃比がリーンのときに同排ガス中に含まれる成分を総合したもの（リーン成分）とすることもできる。
ここで、本触媒モデルで使用する種々の値を次のように定義する。
2002103181.tif 000003
いま、時刻ｔ〜ｔ＋Δｔの所与の期間における特定領域での化学種の収支を考えると、図５に示したように、特定領域の排ガス相（単に、「ガス相」とも称呼する。）における化学種の変化量ΔＭは、下記の（１）式に示したとおり、同特定領域に流入した同化学種の量Ｍｉｎから、同特定領域から流出した同化学種の量Ｍｏｕｔとコート層に奪われた同化学種の量Ｍｃｏａｔとを減算した量と等しい。このように、触媒モデルは特定領域における特定成分の物質収支に基づいて構築される。
2002103181.tif 000004
以下、（１）式の各項について個別に検討する。先ず、（１）式の左辺にある化学種の変化量ΔＭは、下記（２）式により求めることができる。（２）式は、上記所与の期間における化学種の濃度変化量（化学種の濃度Ｃｇの時間変化量を所与の期間に渡り積分した量）に微小体積σ・ｄＡ・ｄｘを乗じた値を特定領域に渡って（軸方向に）積分したものである。
2002103181.tif 000005
（１）式の右辺第１項のＭｉｎは、単位時間あたりに特定領域に流入するガスの体積に相当する値である「特定領域に流入するガスの流速ｖｇｉｎと同特定領域の断面積ｄＡの積ｖｇｉｎ・ｄＡ（実際には、断面積ｄＡで開口率σの触媒内に流速Ｖｇｉｎのガスが流れ込むので、触媒内部でのガスの流速はＶｇｉｎ／σとなり、この実際の流速Ｖｇｉｎ／σと触媒の実質的な断面積σ・ｄＡの積）」に同流入するガス中の化学種の濃度Ｃｇｉｎを乗じた値Ｃｇｉｎ・Ｖｇｉｎ・ｄＡを所与の期間に渡り積分した値である。また、（１）式の右辺第２項のＭｏｕｔは、特定領域から流出するガスの流速ｖｇｏｕｔと同特定領域の断面積ｄＡの積ｖｇｏｕｔ・ｄＡ（実際には、ガスの流速Ｖｇｏｕｔ／σと実質的な断面積σ・ｄＡの積）に同流出するガス中の同化学種の濃度Ｃｇｏｕｔを乗じた値Ｃｇｏｕｔ・ｖｇｏｕｔ・ｄＡを所与の期間に渡り積分した値である。即ち、上記（１）式の右辺第１項及び第２項は下記（３）式のように記述することができる。
2002103181.tif 000006
ところで、特定領域に流入するガスの流速ｖｇｉｎと同特定領域から流出するガスの流速ｖｇｏｕｔとの間に大きな差異はないので、ｖｇ＝ｖｇｉｎ＝ｖｇｏｕｔとおくと、（３）式は、下記（４）式のように変形される。
2002103181.tif 000007
次に、（１）式の右辺第３項のコート層に伝達される（移動する）化学種の量Ｍｃｏａｔについて検討する。幾何学的表面積Ｓｇｅｏは触媒の単位体積あたりの化学種の反応に寄与する表面積であるから、特定領域において化学種の反応に寄与する表面積はＳｇｅｏ・ｄＡ・ｄｘであり、同特定領域の単位長あたりに同反応に寄与する面積はＳｇｅｏ・ｄＡとなる。また、コート層に伝達される化学種の量は、フィックの法則から、ガス相の化学種の濃度Ｃｇとコート層の化学種の濃度Ｃｗとの差に比例すると考えることができる。これらから、下記の（５）式が得られる。なお、ｈＤは比例定数であるが、上記の表に示したように、物質伝達率と称呼される値である。
2002103181.tif 000008
従って、上記（１），（２），（４）式、及び（５）式から、以下の（６）式が得られる。
2002103181.tif 000009
この（６）式に準定常（ｑｕａｓｉ  ｓｔａｔｅ）近似を適用すると、（６）式の左辺は「０」（∂Ｃｇ／∂ｔ＝０）であると考えることができるから（即ち、濃度Ｃｇは瞬間的に定常値に至ると考えられるから）、下記の（７）式が得られる。
2002103181.tif 000010
ここで、見かけの拡散速度（実質的な拡散速度）ＲＤを（８）式のようにおけば、（７）式は（９）式に書き直される。
2002103181.tif 000011
次に、特定領域のコート層における化学種の収支（特定成分の物質収支）を上記と同様に考えると、下記（１０）式に示したように、コート層内における化学種の時間的変化量（単位時間あたりの変化量）ΔＭｃは、単位時間あたりに排ガス相からコート層へ伝達される同化学種の量Ｍｄから、同単位時間あたりにコート層にて反応により消費される同化学種の量Ｍｒを減じた量である。
2002103181.tif 000012
（１０）式の左辺（コート層内における化学種の時間的変化量）ΔＭｃは、下記（１１）式に示したように、化学種の濃度変化（∂Ｃｗ／∂ｔ）に体積（（１−σ）・ｄＡ・ｄｘ）を乗じることにより求められ、右辺第１項（単位時間あたりに排ガス相からコート層へ伝達される化学種の量Ｍｄ）は（５）式で説明した理由と同じ理由により、即ち、フィックの法則から考えると、下記（１２）式のように記述することができる。
2002103181.tif 000013
また、（１０）式の右辺第２項（単位時間あたりにコート層にて反応により消費される化学種の量Ｍｒ）は、コート層での化学種の消費速度Ｒを用いた下記（１３）式により求められる。
2002103181.tif 000014
従って、（１０）〜（１３）式から、下記の（１４）式が得られる。
2002103181.tif 000015
この（１４）式に準定常（ｑｕａｓｉ  ｓｔａｔｅ）近似を適用すると（∂Ｃｗ／∂ｔ＝０）、下記の（１５）式が得られる。
2002103181.tif 000016
ここで、（１５）式に（８）式を適用すれば、下記の（１６）式が得られる。
2002103181.tif 000017
以上を要約すると、（９）式及び（１６）式が触媒モデルの基本式である。（９）式は、ある化学種の（特定領域への流入量）と（排ガス相からコート層への拡散量＋特定領域からの流出量）とが釣り合っていることを示し、（１６）式は、同化学種の（排ガス相からコート層への拡散量）と（コート層での消費量）とが釣り合っていることを示している。
次に、かかる触媒モデルを使用して特定領域から流出する特定の化学種ｉの濃度Ｃｇｏｕｔを実際に算出するための方法について説明する。先ず、（９）式を離散化すると、下記（１７）式が得られる。なお、以下においては上記ｄｘをＬとして表す。
2002103181.tif 000018
ここで、図６に概念的に示したように、特定領域Ｉから流出する化学種の濃度Ｃｇｏｕｔは同特定領域Ｉの化学種の濃度Ｃｇ（Ｉ）の影響を強く受けると考えられるので、下記の（１８）式のように置くことができる。かかる考え方は「風上法」と称呼される。換言すると、風上法とは、「特定領域Ｉに隣接する上流側の領域（Ｉ−１）における濃度Ｃｇ（Ｉ−１）の化学種が、特定領域Ｉに流入する。」という考え方であり、下記（１９）式のように記述することもできる。
2002103181.tif 000019
2002103181.tif 000020
ところで、反応速度論に基けば、ある化学種の消費速度Ｒは、その化学種のコート層の平均濃度Ｃｗの関数ｆｃｗ（例えば、Ｃｗのｎ乗）となるので、この関数ｆｃｗを最も簡便となるようにｆｃｗ（ｘ）＝ｘとおけば、同消費速度Ｒは（２０）式にて示したように置くことができる。なお、以下において、（２０）式中のＲ＊を便宜上「消費速度定数」と称呼する。
2002103181.tif 000021
この（２０）式を上記（１６）式（Ｒ＝ＲＤ・（Ｃｇ−Ｃｗ）…（１６））に適用すると下記（２１）式が得られ、同（２１）式を変形することにより下記（２２）式が得られる。
2002103181.tif 000022
また、上述した風上法によれば、Ｃｇ＝Ｃｇｏｕｔであるから、（２２）式は下記（２３）式に書き換えられる。
2002103181.tif 000023
そして、Ｃｇ＝Ｃｇｏｕｔなる関係を上記（１７）式に適用してＣｇを消去するとともに、同（１７）式と上記（２３）式とからＣｗを消去すると、下記（２４）式が得られる。
2002103181.tif 000024
そこで、値ＳＰを下記（２５）式のようにおけば、（２４）式は（２６）式のように書き直すことができる。値ＳＰは、見かけの拡散速度ＲＤと消費速度定数Ｒ＊のうちの小さい方の値に強い影響を受ける値であるから、Ｃｇｏｕｔの変化が物質の伝達（ＲＤ）又は化学的反応（Ｒ＊）の何れにより律速されているかを示す値であり、従って、「反応律速因子」と呼ぶこともできる。
2002103181.tif 000025
以上のことから、消費速度定数Ｒ＊と見かけの拡散速度ＲＤとを決定できれば、特定領域に流入する化学種濃度Ｃｇｉｎを与えることにより、（２５）式と（２６）式とに基づいて同特定領域から流出する化学種の濃度Ｃｇｏｕｔを求めることができる。以上が、化学種の濃度Ｃｇｏｕｔを算出する基本的考え方である。
次に、上記消費速度定数Ｒ＊と見かけの拡散速度ＲＤを決定するとともに、特定領域から流出する化学種濃度Ｃｇｏｕｔを求める際のより具体的な方法の一例について説明する。この例（触媒モデル）では、触媒での酸化・還元反応である三元反応は瞬時に且つ完全に終了するものと仮定し、その結果としての酸素の過不足に基く酸素の吸蔵・放出反応に着目することとする。なお、この仮定（触媒モデル）は、現実的であり且つ精度の良いものである。
この場合、着目する化学種ｉは、例えば、酸素Ｏ２や窒素酸化物の一つである一酸化窒素ＮＯのように酸素を生成する（酸素をもたらす）化学種（ストレージ・エージェント）、及び、一酸化炭素ＣＯや炭化水素ＨＣのように酸素を消費する化学種（リダクション・エージェント）から選ばれた化学種である。
また、以下において、ストレージ・エージェントの化学種ｉのＣｇｏｕｔをＣｇｏｕｔ，ｓｔｏｒ，ｉ、同化学種ｉのＣｗをＣｗ，ｓｔｏｒ，ｉ、同化学種ｉのＣｇｉｎをＣｇｉｎ，ｓｔｏｒ，ｉ、同化学種ｉの見かけの拡散速度ＲＤをＲＤ，ｉ、同化学種ｉの消費速度をＲｓｔｏｒ，ｉ、同化学種ｉの消費速度定数をＲ＊ｓｔｏｒ，ｉ、及び同化学種ｉの反応律速因子ＳＰｓｔｏｒ，ｉ（この場合、化学種ｉはＯ２又はＮＯ）と表す。
同様に、リダクション・エージェントの化学種ｉのＣｇｏｕｔをＣｇｏｕｔ，ｒｅｄｕｃ，ｉ、同化学種ｉのＣｗをＣｗ，ｒｅｄｕｃ，ｉ、同化学種ｉのＣｇｉｎをＣｇｉｎ，ｒｅｄｕｃ，ｉ、同化学種ｉの見かけの拡散速度ＲＤをＲＤ，ｉ、同化学種ｉの消費速度をＲｒｅｄｕｃ，ｉ、同化学種ｉの消費速度定数をＲ＊ｒｅｄｕｃ，ｉ、及び同化学種ｉの反応律速因子ＳＰｒｅｄｕｃ，ｉ（この場合、化学種ｉはＣＯ又はＨＣ等）と表す。このように各値を表すと、上記（２０），（２３），（２５），（２６）式から以下の（２７）〜（３４）式が得られる。
2002103181.tif 000026
これらの式に基づいて、Ｃｇｏｕｔ，ｓｏｔｒ，ｉ（具体的には、特定領域から流出する酸素の濃度Ｃｇｏｕｔ，Ｏ２、特定領域から流出する一酸化窒素の濃度Ｃｇｏｕｔ，ＮＯ）及びＣｇｏｕｔ，ｒｅｄｕｃ，ｉ（具体的には、特定領域から流出する一酸化炭素の濃度Ｃｇｏｕｔ，ＣＯ、特定領域から流出する炭化水素の濃度Ｃｇｏｕｔ，ＨＣ）を求めるため、先ず、消費速度定数Ｒ＊ｓｔｏｒ，ｉ及び消費速度定数Ｒ＊ｒｅｄｕｃ，ｉを求める。
ところで、反応速度論によれば、特定領域のコート層で酸素が吸蔵される速度（酸素の吸蔵速度）Ｒｓｔｏｒ，ｉは、同コート層のストレージ・エージェント（Ｏ２、ＮＯｘ等）の濃度Ｃｗ，ｓｔｏｒ，ｉ（例えば、Ｃｗ，Ｏ２、Ｃｗ，ＮＯ）の関数ｆ１（Ｃｗ，ｓｔｏｒ，ｉ）の値に比例するとともに、特定領域のコート層の最大酸素吸蔵密度と実際の（その時点における）酸素吸蔵密度との差（Ｏｓｔｍａｘ−Ｏｓｔ）の関数ｆ２（Ｏｓｔｍａｘ−Ｏｓｔ）の値とに比例すると考えられる。この最大酸素吸蔵密度と酸素吸蔵密度との差（Ｏｓｔｍａｘ−Ｏｓｔ）は、着目している特定領域における酸素吸蔵余裕量を表す。
そこで、簡単のために関数ｆ１（ｘ）＝ｆ２（ｘ）＝ｘとすると、下記の（３５）式が得られる。下記（３５）式のｋｓｔｏｒ，ｉは酸素吸蔵速度係数（吸蔵側反応速度係数，ストレージ・エージェントの消費速度係数）であって、よく知られたアレニウスの式で表される温度に依存して変化する係数であり、別途検出又は推定される触媒温度Ｔｅｍｐと所定の関数（酸素吸蔵速度係数ｋｓｔｏｒ，ｉと触媒温度Ｔｅｍｐとの間の関係を規定したマップでも良い。）とに基づいて求めることができる。なお、酸素吸蔵速度係数ｋｓｔｏｒ，ｉは、触媒劣化程度に応じても変化するので、同触媒劣化程度に応じて求めてもよい。
2002103181.tif 000027
従って、（２７）式と（３５）式とから、消費速度定数Ｒ＊ｓｔｏｒ，ｉは下記（３６）式により求めることができる。
2002103181.tif 000028
また、酸素の吸蔵（吸着）と放出のみに着目しているこのモデルにおいては、還元剤であるリダクション・エージェントはコート層に吸蔵されている酸素の放出のみに使用されるから、同リダクション・エージェントの消費速度Ｒｒｅｄｃｕ，ｉはコート層に吸蔵されている酸素が放出される速度（酸素の放出速度）Ｒｒｅｌ，ｉと等しい。
そこで、酸素の放出速度Ｒｒｅｌ，ｉについて検討すると、同放出速度Ｒｒｅｌ，ｉは、酸素の吸蔵速度Ｒｓｔｏｒ，ｉと同様に反応速度論に基き、同コート層において酸素を消費する化学種（例えば、ＣＯ，ＨＣ）の濃度Ｃｗ，ｒｅｄｕｃ，ｉ（例えば、Ｃｗ，ＣＯ、Ｃｗ，ＨＣ）の関数ｇ１（Ｃｗ，ｒｅｄｕｃ，ｉ）の値に比例するとともに、酸素吸蔵密度Ｏｓｔの関数ｇ２（Ｏｓｔ）の値とに比例すると考えられる。
そこで、簡単のために関数ｇ１（ｘ）＝ｇ２（ｘ）＝ｘとすると、下記の（３７）式が得られる。下記（３７）式のｋｒｅｌ，ｉは酸素放出速度係数（吸脱側反応速度係数）であって、酸素吸蔵速度係数ｋｓｔｏｒ，ｉと同様にアレニウスの式で表される温度に依存して変化する係数であり、別途検出又は推定される触媒温度Ｔｅｍｐに基づいて所定の関数（酸素放出速度係数ｋｒｅｌ，ｉと触媒温度Ｔｅｍｐとの間の関係を規定したマップでも良い。）に基づいて求めることができる。なお、酸素放出速度係数ｋｒｅｌ，ｉは、触媒劣化程度に応じても変化するので、同触媒劣化程度に応じて求めてもよい。
2002103181.tif 000029
この結果、上述したようにリダクション・エージェントの消費速度Ｒｒｅｄｃｕ，ｉはコート層の酸素の放出速度Ｒｒｅｌ，ｉと等しいから、消費速度定数Ｒ＊ｒｅｄｕｃ，ｉは（３１）式と（３７）式とを比較することにより得られる下記（３８）式に基づいて求めることができる。
2002103181.tif 000030
以上のことから、酸素吸蔵密度Ｏｓｔが求められれば（酸素吸蔵密度Ｏｓｔの求め方については、後述する。）、（３６）式から消費速度定数Ｒ＊ｓｔｏｒ，ｉ（例えば、Ｒ＊Ｏ２）を求めることができる。一方、見かけの拡散速度ＲＤ，ｉ（例えば、ＲＤ，Ｏ２）は（８）式のようにＳｇｅｏ・ｈＤ，ｉであるから、温度と流量の関数（触媒の温度と同触媒を通過するガスの流量の関数）として実験的に求めておくことができる。この結果、（２９）式からＳＰｓｔｏｒ，ｉ（例えば、ＳＰｓｔｏｒ，Ｏ２）が決定されるので、境界条件としてＣｇｉｎ，ｓｔｏｒ，ｉ（例えば、Ｃｇｉｎ、Ｏ２）が与えられるとき、（３０）式からＣｇｏｕｔ，ｓｔｏｒ，ｉ（例えば、Ｃｏｕｔ，Ｏ２）が求められる。そして、新たなＣｗ，ｓｔｏｒ，ｉ（例えば、Ｃｗ，Ｏ２）が（２８）式により求められる。
同様に、酸素吸蔵密度Ｏｓｔが求められれば、（３８）式から消費速度定数Ｒ＊ｒｅｄｕｃ，ｉ（例えば、Ｒ＊ｒｅｄｕｃ，ＣＯ）を求めることができる。一方、見かけの拡散速度ＲＤ，ｉ（例えば、ＲＤ，ＣＯ）は（８）式のようにＳｇｅｏ・ｈＤ，ｉであるから、温度と流量の関数（触媒の温度と同触媒を通過するガスの流量の関数）として実験的に求めておくことができる。この結果、（３３）式からＳＰｒｅｄｕｃ，ｉ（例えば、ＳＰｒｅｄｕｃ，ＣＯ）が決定されるので、境界条件としてＣｇｉｎ，ｒｅｄｕｃ，ｉ（例えば、Ｃｇｉｎ，ＣＯ）が与えられるとき、（３４）式からＣｇｏｕｔ，ｒｅｄｕｃ，ｉ（例えば、Ｃｇｏｕｔ，ＣＯ）が求められる。そして、新たなＣｗ，ｒｅｕｄｃ，ｉ（例えば、Ｃｗ，ＣＯ）が（３２）式により求められる。
次に、Ｃｇｏｕｔ，ｓｔｏｒ，ｉ、Ｃｇｏｕｔ，ｒｅｄｕｃ，ｉを求めるために必要となる酸素吸蔵密度Ｏｓｔの求め方について説明する。
先ず、コート層での化学種としての酸素の収支について着目すると、同収支はコート層での酸素の吸蔵分と酸素の放出分の差であるから、下記（３９）式により記述される。（３９）式でｄＡ・Ｌは特定領域の体積ｄＶである。
2002103181.tif 000031
この（３９）式を変形すると、下記（４０）式が得られる。
2002103181.tif 000032
この（４０）式を、（３５）式と（３７）式とを用いながら離散化すると、下記の（４１）式が得られる。
2002103181.tif 000033
この（４１）式を変形すると、下記（４２）式〜（４４）式が得られ、これらから酸素吸蔵密度Ｏｓｔを求めること（更新して行くこと）ができる。
2002103181.tif 000034
このように、式（４２）〜（４４）式から酸素吸蔵密度Ｏｓｔが求められるので、上述したようにＣｇｏｕｔ，ｓｔｏｒ，ｉ、Ｃｇｏｕｔ，ｒｅｄｕｃ，ｉを求めることができる。また、酸素吸蔵密度Ｏｓｔが求められるから、下記（４５）式に基づいて特定領域の酸素吸蔵量ＯＳＡを求めることができる。
2002103181.tif 000035
従って、触媒に流入する化学種濃度Ｃｇｉｎ，ｉが境界条件として与えられたとき、触媒上流のブロック（特定領域）から、順次、（４５）式を用いて各ブロックの酸素吸蔵量ＯＳＡを求めることができ、これにより、触媒内部の酸素吸蔵量の分布が精度良く推定される。また、各ブロックの酸素吸蔵量ＯＳＡを触媒全体について積算すれば、同触媒全体の酸素吸蔵量についても精度良く推定することができる。
次に、実際の触媒における酸素Ｏ２、一酸化炭素ＣＯ、炭化水素ＨＣ、及び窒素酸化物（ここでは一酸化窒素）ＮＯの各化学種濃度Ｃｇｏｕｔ，Ｏ２、Ｃｇｏｕｔ，ＣＯ、Ｃｇｏｕｔ，ＨＣ、及びＣｇｏｕｔ，ＮＯを求めるための具体的方法の一例について、フローチャートを用いて説明する。この例においても、触媒での酸化・還元反応である三元反応は瞬時に且つ完全に終了するものと仮定し、その結果としての酸素の過不足に基く酸素の吸蔵・放出反応にのみ着目することとする。
ＥＣＵ１８のＣＰＵは、図７から図１１の一連のフローチャートによりに示されたプログラムを所定時間の経過毎に図７のプログラムから順に実行するようになっている。また、これらのプログラムは、触媒１９を多数のブロック（特定領域）に分割し、そのうちの一つのブロックＩについてのプログラムであって、全く同様なプログラムが他のブロックについても同時並行的にＣＰＵにより実行されている。
ＣＰＵは所定のタイミングになると図７のステップ７００から処理を開始し、ステップ７０５に進んで前回の本プログラムの演算時において後述するステップ７４５にて算出されたコート層の酸素濃度Ｃｗ，Ｏ２（ｋ＋１）を今回のコート層の酸素濃度Ｃｗ，Ｏ２の値であるＣｗ，Ｏ２（ｋ）に設定し、続くステップ７１０にて前回の本プログラムの演算時において後述する図１１のステップ１１２５にて算出された酸素吸蔵密度Ｏｓｔ（ｋ＋１）を今回の酸素吸蔵密度Ｏｓｔの値Ｏｓｔ（ｋ）に設定する。
次に、ＣＰＵは、ステップ７１５にて触媒１９の温度Ｔｅｍｐと同触媒１９の劣化程度を表す劣化指標値ＲＥＫＫＡと図１２に示したようなマップ（ルックアップテーブル）ＭａｐｋｓｔｏｒＯ２とから酸素吸蔵速度係数ｋｓｔｏｒ，Ｏ２（ｋ）を決定する。
触媒温度Ｔｅｍｐは、温度センサ２１によって検出してもよいし、エンジン１の運転状態（例えば、吸入空気量Ｇａとエンジン回転速度ＮＥ）に応じて推定してもよい。
劣化指標値ＲＥＫＫＡは、触媒１９の最大酸素吸蔵量Ｃｍａｘに応じて求められる値（例えば、最大酸素吸蔵量Ｃｍａｘの単調増加関数）である。最大酸素吸蔵量Ｃｍａｘは、次のようにして求められる。即ち、エンジン１が所定の定常運転状態にある場合に、下流側センサ２６が理論空燃比よりリーンな空燃比を検出しているとき、触媒１９に流入するガスの空燃比を所定のリッチ空燃比に維持し、これにより触媒１９内に貯蔵されている酸素を総べて消費する。
その結果、下流側センサ２６が理論空燃比よりリーンな空燃比に対応する値から理論空燃比よりリッチな空燃比に対応する値を出力すると、その時点ｔ１から触媒１９に流入するガスの空燃比を所定のリーン空燃比に設定し、次に下流側センサ２６が理論空燃比よりリッチな空燃比に対応する値から理論空燃比よりリーンな空燃比に対応する値を出力する時点ｔ２までに、同触媒１９に流入するガス中に含まれる酸素の量を下記（４６）式、及び（４７）式に基づいて求める。この（４７）式により求められる積算値Ｏ２ｓｔｏｒａｇｅ（＝Ｃｍａｘ１）を最大酸素吸蔵量Ｃｍａｘとして採用する。
2002103181.tif 000036
なお、時点ｔ２の後、触媒１９に流入するガスの空燃比を所定のリッチ空燃比に維持し、次に下流側センサ２６が理論空燃比よりリーンな空燃比に対応する値から理論空燃比よりリッチな空燃比に対応する値を出力する時点ｔ３までに、同触媒１９に流入するガス中に含まれる単位時間あたりの酸素の不足量を上記（４６）式と同様な式により求め、上記（４７）式と同様な式により同単位時間あたりの酸素の不足量を時点ｔ２〜ｔ３に渡って積算し、これにより求められる積算値Ｃｍａｘ２を最大酸素吸蔵量Ｃｍａｘとして採用してもよく、前記最大酸素吸蔵量Ｃｍａｘ１とこの最大酸素吸蔵量Ｃｍａｘ２との平均値を最大酸素吸蔵量Ｃｍａｘとして採用してもよい。
次いで、ＣＰＵは、ステップ７２０にて同ステップ７２０内に記載した式（上記（３６）式を参照。）に従って酸素の消費速度定数Ｒ＊ｓｔｏｒ，Ｏ２（ｋ）を求める。なお、ステップ７２０にて用いる最大酸素吸蔵密度Ｏｓｔｍａｘは、一定値としてもよいが、前記触媒劣化指標値ＲＥＫＫＡ（又は、最大酸素吸蔵量Ｃｍａｘ）に応じて決定されることが望ましい（以下、同じ。）。その後、ＣＰＵはステップ７２５にて見かけの拡散速度ＲＤ，Ｏ２（ｋ）を触媒温度ＴｅｍｐとマップＭａｐＲＤＯ２とから決定する。
続いて、ＣＰＵはステップ７３０にて酸素の反応律速因子ＳＰｓｔｏｒ，Ｏ２を同ステップ７３０内に記載した式（上記（２９）式を参照。）により求め、ステップ７３５にて、このプログラムが対象としているブロックＩよりも前の（即ち、上流の）ブロックＩ−１から流出する酸素濃度Ｃｇｏｕｔ，Ｏ２（ｋ）を、同対象としているブロックＩに流入する酸素濃度Ｃｇｉｎ，Ｏ２（ｋ）として取り込む。
このとき、対象としているブロックＩが触媒１９の最も上流のブロックである場合、前のブロックＩ−１は存在しないから、ステップ７３５における前のブロックのＣｇｏｕｔ，Ｏ２（ｋ）は、同触媒１９に流入するガスの酸素濃度Ｃｇｉｎ，Ｏ２である。この触媒１９に流入するガスの酸素濃度Ｃｇｉｎ，Ｏ２は、同触媒１９に流入するガスの空燃比Ａ／Ｆと同ガスの流量とに基く関数ｆＯ２により求められる。下記の（４８）式の右辺は、この関数ｆＯ２の具体例である。
2002103181.tif 000037
上記（４８）式の導出過程を簡単に述べると、触媒１９に流入する排ガスの空燃比ＡＦはＧａ／Ｇｆであり、Ｇｆに対して理論空燃比を得るために必要な空気質量をＧａｓｔｏｉｃｈとすると、理論空燃比ＡＦｓｔｏｉｃｈはＧａｓｔｏｉｃｈ／Ｇｆとなる。一方、供給燃料質量がＧａであるときに空燃比がＡＦとなったとき、理論空燃比ＡＦｓｔｏｉｃｈを得るために必要な空気質量に対する過剰な空気質量はＧａ−Ｇａｓｔｏｉｃｈであるから、酸素の質量をＭａｓｓＯ２とおくと、下記（４９）式が得られ、この（４９）式から上記（４８）式が得られる。
2002103181.tif 000038
次に、ＣＰＵはステップ７４０に進み、同ステップ７４０に記述した式（上記（３０）式を参照。）に従ってＣｇｏｕｔ，Ｏ２（ｋ＋１）を求める。ｖｇの値はエアフローメータ１３が検出した吸入空気流量とする。このように、ステップ７４０では、対象としているブロックＩから流出する酸素濃度Ｃｇｏｕｔ，Ｏ２を新たに算出する。次いで、ＣＰＵはステップ７４５に進み、同ステップ７４５に記述した式（上記（２８）式を参照。）に従ってＣｗ，Ｏ２（ｋ＋１）を求める。即ち、ＣＰＵは、ステップ７４５にて対象としているブロックＩのコート層の酸素濃度Ｃｗ，Ｏ２を新たに算出し、ステップ７９５を経由して図８に示したステップ８００に進む。このように、図７により示したプログラムは、特定領域Ｉにおける排ガス相の酸素濃度推定手段、及びコート層の酸素濃度推定手段を構成している。
次に、ＣＰＵはステップ８００からステップ８０５に進んで、前回の本プログラムの演算時において後述するステップ８４０にて算出されたコート層の一酸化炭素Ｃｗ，ＣＯ（ｋ＋１）を今回のコート層の一酸化炭素濃度Ｃｗ，ＣＯの値であるＣｗ，ＣＯ（ｋ）に設定する。
次に、ＣＰＵは、ステップ８１０にて触媒１９の温度Ｔｅｍｐと同触媒１９の劣化指標値ＲＥＫＫＡと図１２に示したようなマップＭａｐｋｒｅｌＣＯとから係数ｋｒｅｌ，ＣＯ（ｋ）を決定し、続く、ステップ８１５にて同ステップ８１５内に記載した式（上記（３８）式を参照。）に従って消費速度定数Ｒ＊ｒｅｄｕｃ，ＣＯ（ｋ）を求め、その後、ステップ８２０にて見かけの拡散速度ＲＤ，ＣＯ（ｋ）を触媒温度ＴｅｍｐとマップＭａｐＲＤＣＯとから決定する。
続いて、ＣＰＵはステップ８２５にて一酸化炭素の反応律速因子ＳＰｒｅｄｕｃ，ＣＯを同ステップ８２５内に記載した式（上記（３３）式を参照。）により求め、ステップ８３０にて、このプログラムが対象としているブロックＩよりも前の（即ち、上流の）ブロックＩ−１から流出する一酸化炭素濃度Ｃｇｏｕｔ，ＣＯ（ｋ）を、同対象としているブロックに流入する一酸化炭素濃度Ｃｇｉｎ，ＣＯ（ｋ）として取り込む。
このとき、対象としているブロックＩが触媒１９の最も上流のブロックである場合、前のブロックＩ−１は存在しないから、ステップ８３０における前のブロックのＣｇｏｕｔ，ＣＯ（ｋ）は、同触媒１９に流入するガスの一酸化炭素濃度Ｃｇｉｎ，ＣＯであり、同触媒１９に流入するガスの空燃比Ａ／Ｆと一酸化炭素濃度Ｃｇｉｎ，ＣＯとの関係を規定した図１３に示したマップに基づいて求められる。
ここでは、触媒に流入するガスの空燃比Ａ／Ｆと一酸化炭素濃度Ｃｇｉｎ，ＣＯとの関係を予め実験により求めておき、この関係と同触媒に流入する実際の空燃比Ａ／Ｆとに基づいて上記一酸化炭素濃度Ｃｇｉｎ，ＣＯを求めているが、空燃比Ａ／Ｆの他、点火時期、エンジン１の冷却水温、及び触媒に流入するガス量（例えば、エアフローメータ１３により検出される吸入空気流量と等しい量）等のパラメータの一つ以上と一酸化炭素濃度Ｃｇｉｎ，ＣＯとの関係を予め実験により求めておき、この関係と実際のパラメータとにも基づいて一酸化炭素濃度Ｃｇｉｎ，ＣＯを更に精度良く求めてもよい。
次に、ＣＰＵはステップ８３５に進み、同ステップ８３５に記述した式（上記（３４）式を参照。）に従ってＣｇｏｕｔ，ＣＯ（ｋ＋１）を求める。即ち、対象としているブロックＩから流出する一酸化炭素濃度Ｃｇｏｕｔ，ＣＯを新たに算出する。次いで、ＣＰＵはステップ８４０に進み、同ステップ８４０に記述した式（上記（３２）式を参照。）に従ってＣｗ，ＣＯ（ｋ＋１）を求める。即ち、ＣＰＵは、ステップ８４０にて対象としているブロックＩのコート層の一酸化炭素濃度Ｃｗ，ＣＯを新たに算出し、ステップ８９５を経由して図９に示したステップ９００に進む。このように、図８により示したプログラムは、特定領域Ｉにおける排ガス相の一酸化炭素濃度推定手段、及びコート層の一酸化炭素濃度推定手段を構成している。
図９に示したプログラムは、炭化水素ＨＣについての演算を行うプログラムであり、一酸化炭素ＣＯについての演算を行うための先に説明した図８のプログラムと同様なプログラムである。
簡単に説明すると、ＣＰＵはステップ９００からステップ９０５に進んで、前回の本プログラムの演算時において後述するステップ９４０にて算出されたコート層の一酸化炭素Ｃｗ，ＨＣ（ｋ＋１）を今回のコート層の一酸化炭素濃度Ｃｗ，ＨＣの値であるＣｗ，ＨＣ（ｋ）に設定する。
次に、ＣＰＵは、ステップ９１０にて触媒１９の温度Ｔｅｍｐと同触媒１９の劣化指標値ＲＥＫＫＡと図１２に示したようなマップＭａｐｋｒｅｌＨＣとから係数ｋｒｅｌ，ＨＣ（ｋ）を決定し、続く、ステップ９１５にて同ステップ９１５内に記載した式（上記（３８）式を参照。）に従って消費速度定数Ｒ＊ｒｅｄｕｃ，ＨＣ（ｋ）を求め、その後、ステップ９２０にて見かけの拡散速度ＲＤ，ＨＣ（ｋ）を触媒温度ＴｅｍｐとマップＭａｐＲＤＨＣとから決定する。
続いて、ＣＰＵはステップ９２５にて炭化水素の反応律速因子ＳＰｒｅｄｕｃ，ＨＣを同ステップ９２５内に記載した式（上記（３３）式を参照。）により求め、ステップ９３０にて、このプログラムが対象としているブロックＩよりも前の（即ち、上流の）ブロックＩ−１から流出する炭化水素濃度Ｃｇｏｕｔ，ＨＣ（ｋ）を、同対象としているブロックに流入する炭化水素濃度Ｃｇｉｎ，ＨＣ（ｋ）として取り込む。
このとき、このプログラムが対象としているブロックＩが触媒１９の最も上流のブロックである場合、前のブロックＩ−１は存在せず、ステップ９３０におけるＣｇｏｕｔ，ＨＣ（ｋ）は、同触媒１９に流入するガスの炭化水素濃度Ｃｇｉｎ，ＨＣである。この場合、触媒１９に流入するガスの空燃比Ａ／Ｆと炭化水素濃度Ｃｇｉｎ，ＨＣとの関係は図１４のグラフに示したようであり、エンジン１の排気温度と炭化水素濃度Ｃｇｉｎ，ＨＣとの関係は図１５のグラフに示したようであるから、触媒１９に流入するガスの空燃比Ａ／Ｆ及びエンジン１の排気温度と炭化水素濃度Ｃｇｉｎ，ＨＣとの関係を予め実験により求めてマップとして記憶しておき、実際のガスの空燃比Ａ／Ｆ及び実際のエンジン１の排気温度と同マップとから炭化水素濃度Ｃｇｉｎ，ＨＣを求める。
なお、上記炭化水素濃度Ｃｇｉｎ，ＨＣを求めるにあたり、空燃比Ａ／Ｆ及びエンジン１の排気温度の他、点火時期、エンジン１の冷却水温、及び触媒に流入するガス量（例えば、エアフローメータ１３により検出される吸入空気流量と等しい量）等のパラメータの一つ以上と炭化水素濃度Ｃｇｉｎ，ＨＣとの関係を予め実験により求めておき、この関係と実際のパラメータとにも基づいて上記炭化水素濃度Ｃｇｉｎ，ＨＣを更に精度良く求めてもよい。
次に、ＣＰＵはステップ９３５に進み、同ステップ９３５に記述した式（上記（３４）式を参照。）に従ってＣｇｏｕｔ，ＨＣ（ｋ＋１）を求める。即ち、対象としているブロックＩから流出する一酸化炭素濃度Ｃｇｏｕｔ，ＨＣを新たに算出する。次いで、ＣＰＵはステップ９４０に進み、同ステップ９４０に記述した式（上記（３２）式を参照。）に従ってＣｗ，ＨＣ（ｋ＋１）を求める。即ち、ＣＰＵは、ステップ９４０にて対象としているブロックＩのコート層の一酸化炭素濃度Ｃｗ，ＨＣを新たに算出し、ステップ９９５を経由して図１０に示したステップ１０００に進む。このように、図９により示したプログラムは、特定領域Ｉにおける排ガス相の炭化水素濃度推定手段、及びコート層の炭化水素濃度推定手段を構成している。
図１０に示したプログラムは、窒素酸化物（ここでは、窒素酸化物の代表として一酸化窒素ＮＯを選択した。）について、上記図７〜図９に示したプログラムに基く演算と同様の演算を行うためのプログラムである。
簡単に説明すると、ＣＰＵはステップ１０００からステップ１００５に進んで、前回の本プログラムの演算時において後述するステップ１０４０にて算出されたコート層の一酸化窒素Ｃｗ，ＮＯ（ｋ＋１）を今回のコート層の一酸化窒素濃度Ｃｗ，ＮＯの値であるＣｗ，ＮＯ（ｋ＋１）に設定する。
次に、ＣＰＵは、ステップ１０１０にて触媒１９の温度Ｔｅｍｐと同触媒１９の劣化指標値ＲＥＫＫＡと図１２に示したようなマップＭａｐｋｓｔｏｒＮＯとから酸素吸蔵速度係数ｋｓｔｏｒ，ＮＯ（ｋ）を決定し、続く、ステップ１０１５にて同ステップ１０１５内に記載した式（上記（３６）式を参照。）に従って消費速度定数Ｒ＊ｓｔｏｒ，ＮＯ（ｋ）を求め、その後、ステップ１０２０にて見かけの拡散速度ＲＤ，ＮＯ（ｋ）を触媒温度ＴｅｍｐとマップＭａｐＲＤＮＯとから決定する。
続いて、ＣＰＵはステップ１０２５にて一酸化窒素の反応律速因子ＳＰｓｔｏｒ，ＮＯを同ステップ１０２５内に記載した式（上記（２９）式を参照。）により求め、ステップ１０３０にて、このプログラムが対象としているブロックＩよりも前の（即ち、上流の）ブロックＩ−１から流出する一酸化窒素濃度Ｃｇｏｕｔ，ＮＯ（ｋ）を、同対象としているブロックに流入する一酸化窒素濃度Ｃｇｉｎ，ＮＯ（ｋ）として取り込む。
このとき、このプログラムが対象としているブロックＩが触媒１９の最も上流のブロックである場合、前のブロックＩ−１は存在せず、ステップ１０３０における前のブロックのＣｇｏｕｔ，ＮＯ（ｋ）は、同触媒１９に流入するガスの一酸化窒素濃度Ｃｇｉｎ，ＮＯである。この場合、触媒１９に流入するガスの空燃比Ａ／Ｆと一酸化窒素濃度Ｃｇｉｎ，ＮＯとの関係は図１６のグラフに示したようであり、エンジン１の一気筒の一吸気行程あたりの吸入空気流量Ｍｃ（筒内吸入空気量）と一酸化窒素濃度Ｃｇｉｎ，ＮＯとの関係は図１７のグラフに示したようであるから、触媒１９に流入するガスの空燃比Ａ／Ｆ及び筒内吸入空気量と一酸化窒素濃度Ｃｇｉｎ，ＮＯとの関係を予め実験により求めてマップとして記憶しておき、実際のガスの空燃比Ａ／Ｆ及び実際の筒内吸入空気量と同マップとから一酸化窒素濃度Ｃｇｉｎ，ＮＯを求める。
なお、上記一酸化窒素濃度Ｃｇｉｎ、ＮＯを求めるにあたり、触媒に流入するガスの空燃比Ａ／Ｆ及び筒内吸入空気量の他、点火時期、エンジン１の冷却水温、及び触媒に流入するガス量（例えば、エアフローメータ１３により検出される吸入空気流量と等しい量）等のパラメータの一つ以上と一酸化窒素濃度Ｃｇｉｎ，ＮＯとの関係を予め実験により求めておき、この関係と実際のパラメータとにも基づいて上記一酸化窒素濃度Ｃｇｉｎ，ＮＯを更に精度良く求めてもよい。
次に、ＣＰＵはステップ１０３５に進み、同ステップ１０３５に記述した式（上記（３０）式を参照。）に従ってＣｇｏｕｔ，ＮＯ（ｋ＋１）を求める。即ち、対象としているブロックＩから流出する一酸化窒素濃度Ｃｇｏｕｔ，ＮＯを新たに算出する。次いで、ＣＰＵはステップ１０４０に進み、同ステップ１０４０に記述した式（上記（２８）式を参照。）に従ってＣｗ，ＮＯ（ｋ＋１）を求める。即ち、ＣＰＵは、ステップ１０４０にて対象としているブロックＩのコート層の一酸化窒素濃度Ｃｗ，ＮＯを新たに算出し、ステップ１０９５を経由して図１１に示したステップ１１００に進む。このように、図１０により示したプログラムは、特定領域Ｉにおける排ガス相の一酸化窒素濃度推定手段、及びコート層の一酸化窒素濃度推定手段を構成している。
図１１に示したプログラムは、酸素吸蔵密度（酸素吸蔵濃度）Ｏｓｔを算出するためのプログラムであり、具体的に述べると、ＣＰＵはステップ１１０５にて上記（４３）式に基く同ステップ１１０５内に記述した式により係数Ｐを求めるとともに、続くステップ１１２０にて上記（４４）式に基く同ステップ１１２０に記述した式により係数Ｑを求める。次いで、ＣＰＵはステップ１１２５にて上記（４２）式に基く同ステップ１１２５に記述した式により酸素吸蔵密度Ｏｓｔ（ｋ＋１）を求め、ステップ１１９５にて図７〜図１１に示した本プログラムを一旦終了する。なお、ステップ１１２５の次に、上記（４５）式に基づいてこのブロックの酸素吸蔵量ＯＳＡ，Ｉを求めてから、ステップ１１９５に進むように構成してもよい。このように、図１１に示したプログラムは、酸素吸蔵密度算出手段、及び酸素吸蔵量算出手段を構成している。
以上、説明したように、対象としているブロックＩの化学種ｉの濃度Ｃｇｏｕｔ，ｉが求められ、上述した風上法を用いることで、順次隣接するブロックＩの化学種ｉの濃度Ｃｇｏｕｔ，ｉが求められて行く。同様に、各ブロックＩ毎に酸素吸蔵密度Ｏｓｔが求められ、上述した（４５）式を使用することで、同ブロックＩの酸素吸蔵量ＯＳＡが求められる。また、このブロックＩの酸素吸蔵量ＯＳＡを触媒の入口から任意のブロックＫまで積算すれば、同ブロックＫまでの触媒内の積算酸素吸蔵量ＯＳＡ，Ｋが求められ、ブロックＫが触媒の出口のブロックであれば、同触媒の酸素吸蔵量ＯＳＡａｌｌが求められる。
次に、上述した空燃比制御装置を用いた制御の実施形態について、順次説明する。
まず、第一実施形態について、その制御のフローチャートを示した図１８を参照しながら説明する。本実施形態では、排ガス中の酸素量（実際には、触媒１９から排出される酸素の濃度）と一酸化炭素量（実際には触媒１９から排出される一酸化炭素の濃度）を上述した推定値として求める。また、酸素量は空燃比制御において酸素の過不足量として扱う。つまり、酸素が過剰に存在する場合に酸素量は正の値、酸素が不足している場合に酸素量は負の値とする。更に、本実施形態では、触媒１９全体を一つの領域（特定領域）として考えている。
触媒１９での排ガスの浄化反応においては、排ガス中の浄化すべき成分を酸化させるために（即ち、未燃燃料である炭化水素ＨＣや一酸化炭素ＣＯを酸化させるために）酸素が消費される。このため、触媒１９から流出する排ガス中にこれらの酸化すべき成分が含まれているときは、酸素量が不足しているとみなす。即ち、推定値は負の値をとる。なお、ここでは、未燃成分を一酸化炭素ＣＯで代表させる。
これに対し、排ガス中の浄化すべき成分（窒素酸化物ＮＯｘ）が還元されることにより生じる酸素、及び流入する排ガス中に含まれる酸素が、触媒１９の酸素吸蔵作用によって同触媒１９に吸蔵しきれない場合、酸素成分が同触媒１９から流出する。このときは、酸素量が過剰であるとみなす。即ち、推定値は正の値をとる。なお、ここでは、酸素吸蔵作用に係る成分を酸素Ｏ２で代表させる。
本空燃比制御装置は、この酸素に関する推定値を用いて空燃比制御を行う。具体的に述べると、同装置のＣＰＵは、図１８のフローチャートに示したように、ステップ１０にて上流側空燃比センサ２５が検出する触媒１９に流入する排ガスの空燃比（排気空燃比）を取得し、次のステップ３０にて前回の（本プログラムの前回の実行時における後述するステップ５５にて求めた）酸素吸蔵密度Ｏｓｔを用いてＲｏｓｃ（即ちＲ＊ｓｔｏｒ，Ｏ２、Ｒ＊ｒｅｕｄｃ，ＣＯ）及びＲＤ（ＲＤ，Ｏ２、ＲＤ，ＣＯ）を算出する。
このとき、触媒１９に流入する排ガスの空燃比が理論空燃比よりリーンの場合、ＲＤの算出には既に説明した（８）式に基く以下の（５０）式を用い、Ｒｏｓｃの算出には、既に説明した（３６）式に基く以下の（５１）式を用いる。
2002103181.tif 000039
また、触媒１９に流入する排ガスの空燃比が理論空燃比よりリッチの場合、ＲＤの算出には既に説明した（８）式に基く以下の（５２）式を用い、Ｒｏｓｃの算出には、既に説明した（３８）式に基く以下の（５３）式を用いる。
2002103181.tif 000040
2002103181.tif 000041
Ｒｏｓｃについては、例えば温度についての関数となる。ここでは、例えば、ｈＤが温度の関数であり、ｋｓｏｔｒ，Ｏ２、ｋｒｅｌ，ＣＯは図１２に示したように、温度と触媒劣化度の関数である。温度は温度センサ２１によって検出され、検出された温度に基づいてＥＣＵ１８内のＲＯＭに格納された関数式やマップからＲｏｓｃが算出される。
その後、ＣＰＵはステップ４０にて、触媒１９に流入する排ガスの空燃比が理論空燃比よりリーンの場合、上述した（３０）式を用いてＣｇｏｕｔ，Ｏ２（＝ＣｇｏｕｔＯ２）、触媒１９に流入する排ガスの空燃比が理論空燃比よりリッチの場合、上述した（３４）式を用いてＣｇｏｕｔ，ＣＯを算出する。そして、Ｃｇｏｕｔ，ＣＯが求められたときには、Ｃｇｏｕｔ，Ｏ２＝−２・Ｃｇｏｕｔ，ＣＯとして、最終的なＣｇｏｕｔ，Ｏ２を求める。
また、ステップ４０でＣｇｏｕｔ，Ｏ２（Ｃｇｏｕｔ，ＣＯで置換する前のＣｇｏｕｔ，Ｏ２）及びＣｇｏｕｔ，ＣＯを算出するには、Ｃｇｉｎ，Ｏ２及びＣｇｉｎ，ＣＯがそれぞれ必要となる。ステップ４０では、Ｃｇｉｎ，Ｏ２を上述した（４８）式から求めている。このとき、排気空燃比が理論空燃比よりもリッチであり、（４８）式に従って計算したＣｇｉｎ，Ｏ２が正の値であればその値をそのままＣｉｎ，Ｏ２として採用し、（４８）式に従って計算したＣｇｉｎ，Ｏ２が負の値であれば、その値の絶対値の１／２をＣｇｉｎ，ＣＯをとして採用する。
次いで、ＣＰＵはステップ５０にてコート層の各化学種濃度Ｃｗ（Ｃｗ，Ｏ２、Ｃｗ，ＣＯ）を（２８）式及び（３２）式に基づいて求め、ステップ５５にて（４２）式〜（４４）式によりＯｓｔ（今回値）を算出するとともに、ステップ６０にて、空燃比制御用のフィードバック補正量（Ｆ／Ｂ補正量）を、（Ｃｇｏｕｔ，Ｏ２−Ｏ２ｒｅｆ）・Ｇなどから求める。ここで、Ｏ２ｒｅｆは制御目標（目標状態）、Ｇは制御ゲインである。図１９は、このＣｇｏｕｔ，Ｏ２とＦ／Ｂ補正量との関係を示したグラフである。本実施形態では、制御目標は所定の範囲として定められている。決定されたＦ／Ｂ補正量は、空燃比を決定する燃料噴射量の補正係数の一つとして空燃比制御に反映される。
次に、第二実施形態について、その制御のフローチャートを示した図２０を参照しながら説明する。本実施形態では、上述した推定値として、排ガス中のリッチ成分とリーン成分を用いている。また、本実施形態では、触媒１９全体を一つの領域（特定領域）として考えている。
リッチ成分とは、排気空燃比がリッチのときに排ガス中の含有量が増加する成分を総合したもので、触媒１９から流出する排ガスの状態を示す代表値の一つである。具体的には、排ガスに含まれるのＣＯやＨＣの量を一つの指標としてまとめた代表値である。一方、リーン成分とは、排気空燃比がリーンのときに排ガス中の含有量が増加する成分を総合したもので、触媒１９から流出する排ガスの状態を示す代表値の一つである。具体的には、排ガスに含まれるＮＯｘやＯ２の量を一つの指標としてまとめた代表値である。本実施形態では、上述した二つの推定値を用いて空燃比制御を行うので、Ｃｇｏｕｔに関しては、リッチ成分に関するものをＣｇｏｕｔＲとおく。つまり、
2002103181.tif 000042
具体的には、ＣｇｏｕｔＲ＝Ｃｇｏｕｔ，ｒｅｄｕｃ，ＣＯ＋Ｃｇｏｕｔ，ｒｅｄｕｃ，ＨＣ）とする。また、リーン成分に関するものをＣｇｏｕｔＬとおく。つまり、
2002103181.tif 000043
具体的には、ＣｇｏｕｔＬ＝Ｃｇｏｕｔ，ｓｔｏｒ，Ｏ２＋Ｃｇｏｕｔ，ｓｔｏｒ，ＮＯ）とする。本実施形態は、このように定めたＣｇｏｕｔＲとＣｇｏｕｔＬとを用いて以下の演算を行う。
まず、図２０のフローチャートに示されるように、ＣＰＵはステップ７０にてエンジン１の燃焼後の排ガス（触媒１９に流入する排ガス）中のリッチ成分ＣｇｉｎＲとリーン成分ＣｇｉｎＬとを推定する。かかるリッチ成分ＣｇｉｎＲとリーン成分ＣｇｉｎＬの推定においては、触媒１９での酸化・還元反応（三元反応）及び酸素吸蔵放出反応を考慮する。三元反応に関連する化学式を（５４）式に示す。また、酸素吸蔵放出反応に関連する化学式を（５５）式に示す。なお、この酸素吸蔵放出反応における各反応の反応速度係数を、ＫＯ２（＝Ｋｓｔｏｒ，Ｏ２）、ＫＮＯ（＝Ｋｓｔｏｒ，ＮＯ），ＫＣＯ（＝Ｋｒｅｌ，ＣＯ），ＫＨＣ（＝Ｋｒｅｌ，ＨＣ）とする。（５５）式での酸素の吸蔵・放出においては、酸素吸蔵・放出機能を生じせしめる担持金属をセリウム（Ｃｅ）として記載してある。
2002103181.tif 000044
次いで、ＣＰＵは、ステップ１００に進んで上述した第一実施形態と同様に、Ｒｏｓｃ（即ちＲ＊ｓｔｏｒ，Ｏ２、Ｒ＊ｓｔｏｒ，ＮＯ、Ｒ＊ｒｅｄｕｃ，ＣＯ、Ｒ＊ｒｅｕｄｃ，ＨＣ）及びＲＤ（即ちＲＤ，Ｏ２、ＲＤ，ＮＯ、ＲＤ，ＣＯ、ＲＤ，ＨＣ）を算出し、続くステップ１１０にて、上述した（３４）式を用いてＣｇｏｕｔＲ（＝Ｃｇｏｕｔ，ｒｅｄｕｃ，ＣＯ＋Ｃｇｏｕｔ，ｒｅｄｕｃ，ＨＣ）を算出し、（３０）式を用いてＣｇｏｕｔＬ（＝Ｃｇｏｕｔ，ｓｔｏｒ，Ｏ２＋Ｃｇｏｕｔ，ｓｔｏｒ，ＮＯ）を算出する。
さらに、ＣＰＵはステップ１２０にてコート層の各化学種濃度Ｃｗ（即ちＣｗ，Ｏ２、Ｃｗ，ＮＯ、Ｃｗ，ＣＯ、Ｃｗ，ＨＣ）を（２８）式及び（３２）式を用いて求め、ステップ１２５にて（４２）式〜（４４）式によりＯｓｔ（今回値）を算出するとともに、ステップ１３０にて空燃比制御用のフィードバック補正量（Ｆ／Ｂ補正量）を、（ＣｇｏｕｔＲ−Ｒｅｆ）×ＧＲ＋（ＣｇｏｕｔＬ−Ｒｅｆ）×ＧＬから求める。ここで、（ＣｇｏｕｔＲ−Ｒｅｆ）×ＧＲがリッチ成分に対応する部分で、（ＣｇｏｕｔＬ−Ｒｅｆ）×ＧＬがリーン成分に対応する部分である。Ｒｅｆは制御目標（目標状態）、ＧＲ，ＧＬは各成分毎に設定される制御ゲインである。
ここで、ＣｇｏｕｔＲとＣｇｏｕｔＬとが等しくなるように空燃比制御が行われる。即ち、ＣｇｏｕｔＲ及びＣｇｏｕｔＬが何れも目標値Ｒｅｆとなるように、各成分に対応するＦ／Ｂ補正量（ＣｇｏｕｔＲ−Ｒｅｆ）×ＧＲ，（ＣｇｏｕｔＬ−Ｒｅｆ）×ＧＬが決定される。また、本実施形態では、制御目標は所定の範囲として定められている。決定された補正量は、空燃比を決定する燃料噴射量の補正係数の一つとして空燃比制御に反映される。
なお、より具体的には、下記（５６）式によりフィードバック補正量を計算することになる。
2002103181.tif 000045
次に、第三実施形態について、その制御のフローチャートを示した図２１を参照しながら説明する。本実施形態では、上述した推定値として、排ガス中の酸素排出量、一酸化炭素排出量及び一酸化窒素排出量（実際には、それらの各濃度）を用いている。また、本実施形態では、触媒１９全体を一つの領域（特定領域）として考えている。本実施形態では、上述した三つの推定値を用いて空燃比制御を行うので、Ｃｇｏｕｔに関しては、酸素排出量に関するものをＣｇｏｕｔＯ２（Ｃｇｏｕｔ，Ｏ２）とし、一酸化炭素排出量に関するものをＣｇｏｕｔＣＯ（Ｃｇｏｕｔ，ＣＯ）とし、一酸化窒素排出量に関するものをＣｇｏｕｔＮＯ（Ｃｇｏｕｔ，ＮＯ）として説明する。
まず、ＣＰＵは、図２１のフローチャートに示されるように、ステップ１４０にて、エンジン１の燃焼後の排ガス（触媒１９に流入する排ガス）中のリッチ成分ＣｇｉｎＲ（Ｃｇｉｎ，ＣＯ）とリーン成分ＣｇｉｎＬ（Ｃｇｉｎ，Ｏ２，Ｃｇｉｎ，ＮＯ）とを前述したように推定し、ステップ１７０にて、Ｒｏｓｃ（即ちＲ＊ｓｔｏｒ，Ｏ２、Ｒ＊ｓｔｏｒ，ＮＯ、Ｒ＊ｒｅｄｕｃ，ＣＯ）及びＲＤ（即ちＲＤ，Ｏ２、ＲＤ，ＮＯ、ＲＤ，ＣＯ）を算出する。その後、ＣＰＵはステップ１８０にて上述した（３４）式を用いてＣｇｏｕｔＲ（Ｃｇｏｕｔ，ｒｅｄｕｃ，ＣＯ）を算出し、（３０）式を用いてＣｇｏｕｔＬ（Ｃｇｏｕｔ，ｓｔｏｒ，Ｏ２＝ＣｇｏｕｔＯ２とＣｇｏｕｔ，ｓｔｏｒ，ＮＯ＝ＣｇｏｕｔＮＯ）を算出する。
さらに、ＣＰＵはステップ１９０にてコート層における各化学種濃度Ｃｗ（即ちＣｗ，Ｏ２、Ｃｗ，ＮＯ、Ｃｗ，ＣＯ）を（２８）式及び（３２）式を用いて求め、ステップ１９５にて（４２）式〜（４４）式によりＯｓｔ（今回値）を算出する。そして、ＣＰＵは、ステップ２００にて空燃比制御にフィードバックするためのフィードバック補正量（Ｆ／Ｂ補正量）を、（ＣｇｏｕｔＯ２−Ｏ２ｒｅｆ）×ＧＯ２＋（ＣｇｏｕｔＮＯ−ＮＯｒｅｆ）×ＧＮＯ＋（ＣｇｏｕｔＣＯ−ＣＯｒｅｆ）×ＧＣＯから求める。ここで、（ＣｇｏｕｔＯ２−Ｏ２ｒｅｆ）×ＧＯ２が酸素成分に対応する部分で、（ＣｇｏｕｔＮＯ−ＮＯｒｅｆ）×ＧＮＯが一酸化窒素成分に対応する部分で、（ＣｇｏｕｔＣＯ−ＣＯｒｅｆ）×ＧＣＯが一酸化炭素成分に対応する部分である。Ｏ２ｒｅｆ，ＮＯｒｅｆ，ＣＯｒｅｆは各成分毎の制御目標、ＧＯ２，ＧＮＯ，ＧＣＯは各成分毎に設定される制御ゲインである。決定された補正量は、空燃比を決定する燃料噴射量の補正係数の一つとして空燃比制御に反映される。なお、本実施形態においても、制御目標を所定の範囲として定めていてもよい。
次に、第四実施形態について説明する。本実施形態では、第一実施形態と同様に、上述した推定値として排ガス中の酸素量（触媒１９から排出される酸素の濃度）を用いるが、その推定値は所定時間後の推定値（現時点から所定時間先の時点の推定値）である。すなわち、本実施形態においては、いわゆる「先読み」による制御を行う。これに伴って、推定値の推定手法も、第一実施形態とは異なる。ここでの推定値（酸素量）も過不足量として把握され、触媒１９全体が一つの領域（特定領域）として考えられている。
推定値（排出酸素過不足量）の推定には上述した第一実施形態と同様の推定モデル（推定方法）が用いられる。本実施形態ではさらに、吸入空気量や燃焼に寄与する燃料量などもモデルを用いて推定する。吸入空気量に関するモデルを、ここでは空気モデルと言うこととし、燃料量に関するモデルを、ここでは燃料挙動モデルと言うこととする。
第四実施形態における制御のフローチャートを図２２に示す。まず、図２２のフローチャートに示されるように、ＣＰＵは上述した空気モデルを用いて、所定時間後の吸入空気量を推定する（ステップ２１０）。この空気モデルについての詳しい説明はここでは省略するが、一例としては、吸入空気量を検出する吸気管内圧センサやエアフローメータ１３の出力に加えて、スロットルバルブ９の開度の時間変化やその微積分値、エンジン回転数の時間的変化や微積分値などを用いて、所定時間後の筒内吸入空気量を推定する手法などがある。
以下、スロットルバルブ９の開度を用いた吸入空気流量の推定方法の一例について簡単に説明する。
（１）ＣＰＵは、アクセルポジションセンサ１２から現時点のアクセル開度を検出する。
（２）ＣＰＵは、検出した現時点のアクセル開度に基づいて暫定的な目標スロットルバルブ開度を決定する。
（３）ＣＰＵは、決定された暫定的な目標スロットルバルブ開度を所定時間だけ遅延して実際の目標スロットルバルブ開度とする。換言すると、現時点から所定時間前の暫定的な目標スロットルバルブ開度が実際の目標スロットルバルブ開度として設定される。暫定的な目標スロットルバルブ開度は、それが実際の目標スロットルバルブ開度として使用されるまで時系列的にＲＡＭ内に格納される。
（４）ＣＰＵは、設定された実際の目標スロットルバルブ開度とスロットルバルブ９の開度が一致するようにスロットルモータ１１を制御する。
（５）ＣＰＵは、現時点から次に吸気行程を迎える気筒の吸気弁が閉じる時点（吸気弁閉弁時）に至るまでの時間を推定し、その推定した時間と前記ＲＡＭに格納されている暫定的な目標スロットルバルブ開度とに基づいて、同気筒の吸気弁閉弁時における目標スロットルバルブ開度を算出し、同目標スロットルバルブ開度により同吸気弁閉弁時の推定スロットルバルブ開度を算出する。。
（６）ＣＰＵは、次に吸気行程を迎える気筒の吸気弁閉弁時の吸入空気流量（筒内吸入空気量）Ｍｃを、前記推定スロットルバルブ開度とエンジン回転速度とマップとに基づいて推定する。
次いで、ＣＰＵは、ステップ２１０の推定結果を踏まえて、基本燃料噴射量（例えば、エンジン１に吸入される混合気の空燃比を理論空燃比とするために必要な噴射量）を算出する（ステップ２２０）。この基本燃料噴射量が各種補正係数により補正され、最終的な燃料噴射量が決定される。
さらに、この基本燃料噴射量（あるいは基本燃料噴射量に対して補正が加えられた燃料噴射量）と燃料挙動モデルとに基づいて排ガスの空燃比を推定する（ステップ２３０）。この燃料挙動モデルについての詳しい説明もここでは省略するが、一例としては、基本燃料噴射量自体に加えて、吸気ポートやシリンダ内壁等の部材への燃料の付着分や同内壁に付着している燃料の剥離分などをも考慮して、所定時間後の排気空燃比を推定する手法などがある。
例えば、この燃料モデルによれば、ｆｉ（ｋ）だけの燃料量をインジェクタ５から噴射した後の燃料付着量ｆｗ（ｋ＋１）は下記（５７）式により求められる。
2002103181.tif 000046
上記（５７）式において、ｆｗ（ｋ）はｆｉ（ｋ）だけの燃料量を噴射する前の吸気ポート等への燃料付着量、Ｐは吸気ポート等に既に付着していた燃料のうち一吸気行程を経た後に同吸気ポート等に付着したまま残留している燃料の割合（残留率）、Ｒは噴射された燃料のうち吸気ポート等へ直接付着する燃料の割合（付着率）である。
一方、今回の燃料噴射量ｆｉ（ｋ）のうち燃焼室（気筒）内に吸入される燃料量は（１−Ｒ）・ｆｉ（ｋ）となり、既に付着している燃料の量（燃料付着量）ｆｗ（ｋ）のうち燃焼室（気筒）内に吸入される燃料量は（１−Ｐ）・ｆｗ（ｋ）となる。即ち、今回の燃料噴射により、気筒内には下記（５８）式に示した燃料量ｆｃ（ｋ）が吸入されることになる。
2002103181.tif 000047
従って、実際には、基本噴射量の燃料をインジェクタ５から噴射し、上記（５８）式のｆｉ（ｋ）を基本噴射量と等しいとおいて実際に気筒に吸入される燃料量ｆｃ（ｋ）を求め、前記推定した筒内吸入空気量Ｍｃをこの燃料量ｆｃ（ｋ）で除することにより、排気空燃比を予測する。また、次回の計算に備え、（５７）式のｆｉ（ｋ）を基本噴射量と等しいとおいて燃料付着量ｆｗ（ｋ＋１）を求めておく。
次に、ＣＰＵは、ステップ２３５に進み、前記ステップ２３０にて推定された排気空燃比を上記（４８）式のＡＦとおき、同（４８）式からＣｇｉｎＯ２（＝Ｃｇｉｎ，Ｏ２）を推定するとともに、前記ステップ２３０にて推定された排気空燃比、及び触媒に流入するガスの空燃比Ａ／Ｆと一酸化炭素濃度ＣｇｉｎＣＯとの関係を規定した図１３に示したマップに基づいて一酸化炭素濃度ＣｇｉｎＣＯを推定する。その後、ＣＰＵは、第一実施形態で述べた手法と同様にしてステップ２４０にてＣｇｏｕｔＯ２を推定する。このＣｇｏｕｔＯ２は、前記排気空燃比が現時点から所定時間後の空燃比を予測（先読み）したものであり、従って、ＣｇｉｎＯ２及びＣｇｉｎＣＯもそれぞれ現時点から所定時間後のＣｇｉｎＯ２及びＣｇｉｎＣＯとなるから、現時点から所定時間後のＣｇｏｕｔＯ２を予測した値となっている。
次いで、ＣＰＵはステップ２５０にて前記ＣｇｏｕｔＯ２が０より大きいか否かを判定し、同ステップにて「Ｙｅｓ」と判定したときはリッチ制御（ステップ２６０）、「Ｎｏ」と判定したときはリーン制御（ステップ２７０）を実行する。即ち、本実施形態におけるＣｇｏｕｔＯ２の目標状態（目標値）は０（ゼロ）であり、同ＣｇｏｕｔＯ２が０となるように空燃比制御が実行される。
リッチ制御は空燃比（機関の空燃比）をリッチ側に補正する空燃比制御（噴射量を増量する制御）で、リーン制御は空燃比をリーン側に補正する制御（噴射量を減量する制御）である。本実施形態では、その補正量はリッチ制御・リーン制御の各制御毎に一定である。なお、推定したＣｇｏｕｔＯ２とその目標状態との乖離度に応じて補正量を変更してもよい。また、ステップ２６０では空燃比をリッチ側に補正する補正係数を算出し、ステップ２７０では空燃比をリーン側に補正する補正係数を算出し、これらの補正係数を基本噴射量に乗ずるなどの処理を行って燃料噴射制御に反映させるようにしてもよい。
次に、第五実施形態について説明する。本実施形態でも、上述した第四実施形態と同様に、いわゆる「先読み」による制御を行う。また、本実施形態においては、排ガス中の複数の排出成分についての推定値が算出される。ここでは、これら複数の推定値（具体的にはＣｇｏｕｔ，Ｏ２やＣｇｏｕｔ，ＣＯなど）をＣｇｏｕｔ＊＊として記載することとする。同様に、ＣｇｉｎについてはＣｇｉｎ＊＊として記載する。また、ここでも触媒１９全体は、一つの領域（特定領域）として扱われている。
第五実施形態における制御のフローチャートを図２３に示す。まず、図２３のフローチャートに示されるように、ＣＰＵは、上述した空気モデルを用いて、所定時間後の吸入空気量を推定する（ステップ２８０）。次いで、ＣＰＵは、上述した燃料挙動モデルを用いてシリンダ３内に実際に供給されるであろう燃料量を推定し（ステップ２９０）、ステップ２８０及びステップ２９０の結果から空燃比を算出する（ステップ３００）。
そして、ＣＰＵは、算出した空燃比に基づいて触媒１９に流入する各成分毎のＣｇｉｎ＊＊を算出する（ステップ３１０）。さらに、触媒１９内の反応を考慮して、各成分毎のＣｇｏｕｔ＊＊と触媒１９の酸素吸蔵量ＯＳＡとを推定する（ステップ３２０）。Ｃｇｉｎ＊＊とＣｇｏｕｔ＊＊の推定については、上述した実施形態の手法による。また、ＯＳＡは、上述した（４２）〜（４５）式に基づいて推定する。
次に、ＣＰＵは、排気浄化に不利な状況となりそうかどうかを、スロットル駆動要求やその時点でのＯＳＡなどの運転条件から予測する。スロットル駆動要求の有無は、運転者によるアクセルベグルの操作量（アクセル開度）の時間変化（アクセル開度の時間微分値）に基づいて判断され得る。また、排気浄化に不利な状況であるか否かは、たとえば、スロットル開度が急激に変化する過渡状態時であるか否かに基づいて判定され得る。過渡状態時には、触媒１９の酸素吸蔵状態が不安定になりやすく、空燃比制御による補正が間に合わずに排気浄化率が悪化する可能性が高い。このようなとき、ＣＰＵは、スロットルバルブ９の開閉動作を電子制御によって遅延させ（開閉動作速度を小さくし）、これにより浄化すべき成分の触媒１９下流側への流出を抑止しつつ、スロットル動作の遅延による要求トルク未達分を点火時期制御によって補う。
具体的に述べると、ＣＰＵは、スロットル駆動要求があるか否かを判定し（ステップ３３０）、このようなスロットル駆動要求がなければ、排気浄化に不利な状況にはなりにくいと判定して、図２３のフローチャートに示される制御を終了する。一方、スロットル駆動供給がある場合、ＣＰＵは、その時点でのＯＳＡ、算出したＣｇｏｕｔ＊＊、スロットル開度予測値、及びアクセル開度の時間変化量などの運転状態に基づいて、排気浄化率が悪化することが予想されるか否かを判定する（ステップ３４０）。そして、ＣＰＵは排気浄化率が悪化することが予想されないと判定すると、駆動要求通りにスロットルバルブ９を駆動する（ステップ３６０）。
一方、ＣＰＵは、排気浄化率の悪化が予測されるとき、スロットル駆動動作の遅延量および点火時期によるトルク補正量とを決定するとともに、上述した推定値Ｃｇｏｕｔ＊＊を目標状態に一致させるための空燃比制御を行い（ステップ３５０）、スロットル駆動を行う（ステップ３６０）。スロットル駆動動作の遅延量は、例えば、スロットルバルブ開度の急激な変化を抑制するため、上述した実際の目標スロットルバルブ開度に対して一次遅れ処理を施した開度を実際のスロットルバルブ開度として設定し直すために必要な量である。点火時期の補正量は、この実際のスロットルバルブ開度を設定し直したことに伴うエンジントルクの低下分を補うための補正量（進角量）である。また、推定値Ｃｇｏｕｔ＊＊を目標状態とするための空燃比制御は、上述した他の実施形態と同様である。
ここまでに説明した各実施形態は、いずれも触媒１９全体を一つの領域として考えて各推定値を算出するものであった。これに対し、以下の実施形態は、触媒１９を排ガスの流れ方向に複数の領域（ブロック）に分割し、その複数の領域のうちの一つの領域（特定領域Ｊ）についての各推定値に対して目標状態を設定して、同各推定値が目標状態となるように空燃比制御を行う。
まず、触媒１９を複数領域に分割する実施形態のうち、第六実施形態について、その制御のフローチャートを示した図２４を参照しながら説明する。この実施形態は、触媒１９をｎ段に分割して取り扱う。ここで、触媒１９の分割された複数の領域について、上流側からＩ＝１〜ｎの番号を順に付するとともに、各領域Ｉ毎の推定値等にＩ＝１〜ｎの添え字を付する。
また、本実施形態では、排ガス中の酸素量（触媒１９の各領域から排出される酸素の濃度）と一酸化炭素量（触媒１９の各領域から排出される一酸化炭素の濃度）とを上述した推定値として求める。更に、酸素量は空燃比制御において第一実施形態と同様に過不足量として扱う。なお、既に述べたように、上記（２７）式〜（３４）式、（３６）式、及び（３８）式等による各数値は、これらの式に基づいて触媒１９の上流側から順次計算することによって、すべての領域について算出できる。
以下、この実施形態の制御方法について図２４に示したフローチャートを参照しながら具体的に説明すると、まず、ＣＰＵは上流側空燃比センサ２５が検出する触媒１９に流入する排ガスの空燃比を取り込み（ステップ３７０）、上述した特定領域を表す値Ｉを「０」にリセットする（ステップ３８０）。次いで、ＣＰＵは、Ｉ←Ｉ＋１として、Ｉの値を「１」だけインクリメントする（ステップ３９０）。この段階では、Ｉの値は１となる。
次いで、ＣＰＵは、領域Ｉに対するＲｏｓｃＩ（即ちＲ＊ｓｔｏｒ，Ｏ２，Ｉ、Ｒ＊ｒｅｕｄｃ，ＣＯ，Ｉ）及びＲＤＩ（ＲＤ，Ｏ２，Ｉ、ＲＤ，ＣＯ，Ｉ）を算出する（ステップ４１０）。
このとき、触媒１９に流入する排ガスの空燃比が理論空燃比よりリーンの場合、ＲＤ，Ｉの算出には既に説明した（５０）式を用い、Ｒｏｓｃ，Ｉの算出には既に説明した（５１）式を用いる。また、触媒１９に流入する排ガスの空燃比が理論空燃比よりリッチの場合、ＲＤ，Ｉの算出には既に説明した（５２）式を用い、Ｒｏｓｃ，Ｉの算出には既に説明した（５３）式を用いる。
その後、ＣＰＵは上述した第一実施形態の図１８のステップ４０と同様に、（３０）式と（３４）式とを用いてＣｇｏｕｔＩ（Ｃｇｏｕｔ，Ｏ２，ＩとＣｇｏｕｔ，ＣＯ，Ｉ）を算出する（ステップ４２０）。このとき、ＣＰＵは、ステップ４２０の処理を行う際に必要とするＣｉｎ，Ｏ２，Ｉ等をステップ４０と同様に上記（４８）式に基づいて算出する。なお、Ｃｇｏｕｔ，ＣＯ，Ｉが求められたときには、Ｃｇｏｕｔ，Ｏ２，Ｉに−２・Ｃｇｏｕｔ，ＣＯ，Ｉを設定する。
次いで、ＣＰＵはコート層の化学種濃度ＣｗＩ（Ｃｗ，Ｏ２，Ｉ、Ｃｗ，ＣＯ，Ｉ）を（２８）式及び（３２）式に基づいて求め（ステップ４３０）、（４２）式〜（４４）式によりＯｓｔＩ（今回値）を算出するとともに（ステップ４３５）、現在のＩの値がｎ以上であるか否かを判定する（ステップ４４０）。このとき、Ｉの値がｎ未満であれば、ＣＰＵはステップ３９０に戻り、Ｉの値を「１」だけ大きくして次の下流側の領域について同様の算出を行う（ステップ４１０〜４３０，ステップ４３５）。一方、Ｉの値がｎ以上となると、すべての領域についての各種値の算出が終了したことになるので、この場合、ＣＰＵはステップ４４０からステップ４５０に進む。
そして、ＣＰＵはステップ４５０にて空燃比のフィードバック補正量（Ｆ／Ｂ補正量）を、特定領域Ｊ（Ｊはｎより小さいか等しい）についての推定値ＣｇｏｕｔＯ２，Ｊに基づいて、（ＣｇｏｕｔＯ２，Ｊ−Ｏ２ｒｅｆ）×Ｇから求める。ここで、Ｏ２ｒｅｆは制御目標、Ｇは制御ゲインである。決定されたフィードバック補正量は、空燃比を決定する燃料噴射量の補正係数の一つとして空燃比制御に反映される。
このように、本実施形態においては、触媒１９を複数の領域に分割し、特定領域Ｊに関する上述した推定値を求めているので、同特定領域Ｊの推定値に基づいて、触媒１９の状況をより正確に把握できる。また、特定領域Ｊは、最も下流側の領域よりも上流側の領域に設定することができ、その結果、排ガスの浄化性能をより一層向上させることが可能となる。換言すると、特定領域Ｊ（Ｊ＜ｎ）の状態を理想の状態に近づけておけば、予期しない多量の未燃成分や窒素酸化物が触媒１９に流入したとしても、特定領域Ｊ＋１〜ｎの領域にて、これらを浄化する可能性が高まる。即ち、空燃比制御遅れによる弊害（エミッションの悪化）を小さくすることができる。
次に、第七実施形態について、その制御のフローチャートを示した図２５を参照しながら説明する。本実施形態は、各領域毎の各種数値の算出に関する限り、第六実施形態と何ら変わるところがない。このため、同一の制御ステップには同一の符号を付して、その説明を省略する。
本実施形態において、ＣＰＵがステップ４４０にて「Ｙｅｓ」と判定すると（即ち、すべての領域についての各数値の算出が終了すると）、同ＣＰＵは特定領域（制御するべき領域、以下、特定制御領域Ｊとも言う。）を決定するための運転条件を取得し（ステップ４６０）、取得した運転条件に基づいて特定制御領域Ｊを決定する（ステップ４７０）。上述した運転条件としては、様々な条件を設定することができる。また、一つの条件だけでなく、複数の条件に基づいて特定制御領域Ｊを決定することもできる。ここでは、一つの条件に基づいて特定制御領域Ｊを決定する具体例を四つ挙げる。図２６〜図２９は、各例において使用するマップを示している。
図２６は、上述した運転条件として吸入空気量を用いた場合に使用する「吸入空気量と特定領域（特定制御領域）Ｊとの関係」を示すマップである。吸入空気量は、エアフロメータ１３によって検出される。このマップによれば、吸入空気量が多いほど特定領域（特定制御領域）Ｊが上流側（上流段）に設定される。
図２７は、上述した運転条件としてアクセル開度の時間変化量（Δアクセル開度）を用いた場合に使用する「Δアクセル開度と特定領域（特定制御領域）との関係」を示すマップである。Δアクセル開度は、アクセルポジションセンサ１２の検出結果を加工することによって得られる。このマップによれば、Δアクセル開度が大きいほど特定領域（特定制御領域）Ｊが上流側に設定される。
吸入空気量やΔアクセル開度に関しては、その値が大きくなるほど特定領域（特定制御領域）Ｊの位置を上流側に設定し、その値が小さくなるほど特定領域（特定制御領域）Ｊの位置を下流側に設定する。これは、いわゆる「吹き抜け現象」が発生しやすい場合には空燃比制御に用いられる特定領域（特定制御領域）Ｊを上流側に設定し、「吹き抜け現象」が発生しにくい場合には特定領域（特定制御領域）Ｊを下流側に設定するためである。「吹き抜け現象」とは、触媒１９自体は浄化する能力を有しているにもかかわらず、流速が速かったり、流量が多かったりという理由によって、排ガス中の浄化されるべき成分が十分に浄化される前に下流側に流出してしまう現象である。
図２８は、上述した運転条件として触媒１９の活性状態を用いた場合に使用する「触媒の活性状態と特定領域（特定制御領域）Ｊとの関係」を示すマップである。触媒１９の活性状態は、例えば、触媒温度センサ２１によって検出した触媒１９の温度から決定することができる。このマップによれば、触媒１９の活性状態が低い（まだ十分に活性化していない）ほど特定領域（特定制御領域）Ｊが上流側に設定される。これにより、特定領域（特定制御領域）Ｊよりも下流側の領域をバッファ（排気浄化のための予備的な領域）として使用することができるので、排ガス中の浄化すべき成分が十分に浄化され得る。
図２９は、上述した運転条件として空燃比（触媒１９に流入するガスの空燃比、即ち、エンジン１に供給される混合気の空燃比）の時間的変化量（Δ空燃比）を用いた場合に使用する「Δ空燃比と特定領域（特定制御領域）Ｊとの関係」を示すマップである。Δ空燃比は、空燃比制御を司っているＥＣＵ１８によって算出することができる。このマップによれば、Δ空燃比が小さい（空燃比が余り変化していない場合）ほど特定領域（特定制御領域）Ｊが下流側に設定される。
このように、ＣＰＵは図２５に示したステップ４７０にて特定領域（特定制御領域）Ｊを決定すると、ステップ４８０に進んで同決定された特定領域（特定制御領域）Ｊの推定値Ｃｇｏｕｔ，Ｏ２，Ｊに基づいて、空燃比フィードバック補正量（Ｆ／Ｂ補正量）を、（Ｃｇｏｕｔ，Ｏ２，Ｊ−Ｏ２ｒｅｆ）×Ｇに基づいて求める。ここで、Ｏ２ｒｅｆは制御目標、Ｇは制御ゲインである。決定された補正量は、空燃比を決定する燃料噴射量の補正係数の一つとして空燃比制御に反映される。このように、触媒１９を複数の領域に分割し、運転状態に応じて特定領域（特定制御領域）Ｊを変更することによって、排ガスの浄化性能をより一層向上させることが可能となる。
上述した第六実施形態および第七実施形態においては、特定領域（特定制御領域）は一つだけであった。しかし、特定領域（特定制御領域）は一つでなくても良く、複数設定されてもよい。このようにすることによって、排ガスの浄化をより一層効果的に行うことができるようになる場合がある。次に説明する第八実施形態は、特定領域（特定制御領域）を複数設定している。
第八実施形態における制御のフローチャートを図３０に示す。本実施形態は、各領域毎の各種数値の算出に関して、上述した第六実施形態及び第七実施形態と何ら変わるところがない。このため、同一の制御ステップには同一の符号を付して、その説明を省略する。
本実施形態においては、ＣＰＵがステップ４４０にて「Ｙｅｓ」と判定すると（即ち、すべての領域についての各数値の算出が終了すると）、ＣＰＵはステップ４９０に進み、あらかじめ決定されている二つの特定領域（特定制御領域）（領域Ｉ１及び領域Ｉ２）の推定値Ｃｇｏｕｔ，Ｏ２，Ｉ１及びＣｇｏｕｔ，Ｏ２，Ｉ２に基づいて空燃比フィードバック補正量（Ｆ／Ｂ補正量）を［（Ｃｇｏｕｔ，Ｏ２，Ｉ１−Ｏ２ｒｅｆ）×Ｇ１＋（Ｃｇｏｕｆ，Ｏ２，Ｉ２−Ｏ２ｒｅｆ）×Ｇ２］から求める。ここで、Ｏ２ｒｅｆは制御目標であり、本実施形態においては、特定領域（特定制御領域）Ｉ１及び特定領域（特定制御領域）Ｉ２の双方について同一の制御目標が用いられている。このステップ４９０において決定された補正量は、空燃比を決定する燃料噴射量の補正係数の一つとして空燃比制御に反映される。なお、特定領域（特定制御領域）Ｉ１と特定領域（特定制御領域）Ｉ２とで異なる制御目標を設定することもできる。
また、Ｇ１，Ｇ２はそれぞれ特定領域（特定制御領域）Ｉ１，特定領域（特定制御領域）Ｉ２に関しての制御ゲインである。本実施形態では、制御ゲインＧ１，Ｇ２を異ならせて、各特定領域（特定制御領域）の推定値の空燃比制御への影響度についての重み付けをしている。このようにすることによって、特定領域（特定制御領域）を複数設定する場合に、それらの特定領域（特定制御領域）についての状況が空燃比制御に与える影響度を個別に設定でき、排気浄化性能をより向上させることができる場合がある。このように、触媒１９を複数の領域に分割し、複数の特定領域（特定制御領域）を設定することによって、排ガスの浄化性能をより一層向上させることが可能となる。
上述した第八実施形態においては、制御ゲインＧ１，Ｇ２はあらかじめ決定された固定値とされていた。しかし、特定領域（特定制御領域）を複数設定した場合の各特定領域（特定制御領域）に関する制御ゲインはあらかじめ固定値として決定されていなくても良く、運転状況などに応じて変動する変数値として設定されてもよい。次に説明する第九実施形態は、各特定領域（特定制御領域）に対応する制御ゲインを可変としている。
第九実施形態における制御のフローチャートを図３１に示す。本実施形態は、各領域毎の各種数値の算出に関して、上述した第六実施形態〜第八実施形態と何ら変わるところがない。このため、同一の制御ステップには同一の符号を付して、その説明を省略する。
本実施形態においては、ＣＰＵがステップ４４０にて「Ｙｅｓ」と判定すると（即ち、すべての領域についての各数値の算出が終了すると）、ＣＰＵはステップ５００に進んで各特定領域に対応する制御ゲインを決定するための運転状態である吸入空気流量Ｇａをエアフロメータ１３から取得する。そして、ＣＰＵは、ステップ５１０にて、前記取得した吸入空気流量Ｇａと図３２に示したマップと基づいて、各特定領域毎（特定領域Ｉ１及び特定領域Ｉ２）に対する制御ゲイン（Ｇ１、Ｇ２）を決定する。
図３２に示したマップにおいては、横軸が特定領域の位置を示し、縦軸がＧ１，Ｇ２として設定される制御ゲインを示している。また、このマップでは、特定領域Ｉ１は特定領域Ｉ２よりも下流側に位置し、吸入空気量Ｇａの大小に応じた二本の曲線が設定されている。各曲線は、上流側の特定領域Ｉ２の制御ゲインＧ２よりも下流側の特定領域Ｉ１の制御ゲインＧ１の方が大きくなるように設定されている。すなわち、このマップにより制御ゲインを決定すると、下流側の特定領域に関する推定値の空燃比制御に対する影響度が大きくなる。なお、これらの曲線は、適宜定めることができ、例えば、これらの曲線を、上流側に向うに連れて制御ゲインを大きくするように設定すれば、上流側の特定領域の推定値が重視されることになる。
さらに、図３２に示すマップでは、吸入空気量Ｇａが大きい場合に適用する曲線が、吸入空気量Ｇａが小さい場合に適用する曲線よりも上に位置されている。このため、制御ゲインＧ１，Ｇ２は、吸入空気量Ｇａが多いほど大きくなるように設定される。
ＣＰＵは、このようにして制御ゲインを決定すると、空燃比フィードバック補正量（Ｆ／Ｂ補正量）を［（Ｃｇｏｕｔ，Ｏ２，Ｉ１−Ｏ２ｒｅｆ）×Ｇ１＋（Ｃｇｏｕｔ，Ｏ２，Ｉ２−Ｏ２ｒｅｆ）×Ｇ２］なる式に基づいて求める（ステップ５２０）。Ｏ２ｒｅｆは制御目標である。
このように、触媒を複数の領域に分割して複数の特定領域を設定し、各特定領域毎の空燃比制御への影響度をエンジン１の運転状態に応じて変更することによって、排ガスの浄化性能をより一層向上させることが可能となる。
なお、制御ゲインを決定するための上述した運転状態としては、様々な運転状態を採用することができる。また、一つの運転状態だけでなく、複数の運転状態に基づいて各特定領域に対する制御ゲインを決定することもできる。また、本実施形態においては、特定領域Ｉ１及び特定領域Ｉ２の双方について同一の制御目標が用いられていたが、特定領域Ｉ１と特定領域Ｉ２とで異なる制御目標を設定してもよい。
次に、上述した推定値に基づく空燃比制御を実行するとともに、下流側空燃比センサ２６の出力を用いて上述した推定モデルを補正する第十実施形態について説明する。本実施形態における制御のフローチャートを図３３に示す。図３３のフローチャートは、空燃比を制御するためのプログラムを示したものではなく、推定モデルを補正する制御を行うためのプログラムを示したものである。なお、本実施形態においては、第一実施形態と同様に、触媒１９全体を一つの領域として考えて推定値を算出し、排ガス中の酸素量（触媒１９から流出する酸素濃度）を同推定値の一つとして算出する。
具体的に説明すると、ＣＰＵは、ステップ５３０にて、上流側空燃比センサ２５が検出する触媒１９に流入する排ガスの空燃比（排気空燃比）を取得し、ステップ５４０に進んで同取得した排気空燃比に基づいてＣｇｏｕｔ，Ｏ２（＝ＣｇｏｕｔＯ２）等を算出する。これらのステップ５３０，５４０に基く処理は、実際には、図１８に示したステップ１０〜ステップ５０、及びステップ５５に基く処理と同様な処理を実行することで達成される。
次いで、ＣＰＵはステップ５５０に進み、ステップ５４０で算出されたＣｇｏｕｔＯ２に基づいて下流側空燃比センサ２６が出力するであろう出力を推定（予測）し、ステップ５６０にて（下流側空燃比センサ２６の実際の出力）−（ステップ５５０において推定されたセンサ出力推定値）をＥｒｒｏｒＯ２ｍｄｌとして算出する。
そして、ＣＰＵは、続くステップ５７０にて、このＥｒｒｏｒＯ２ｍｄｌの絶対値が、所定のモデル許容誤差Ｅｍｄｌよも大きいか否かを判定する。このとき、下流側空燃比センサ２６の実際の出力とステップ５５０において推定された出力推定値との差が許容範囲内であれば、ＣＰＵはステップ５７０に「Ｎｏ」と判定し、この場合、上述した推定モデルに対して補正を行う必要はないので、図３３に示したフローチャートによる制御を一旦終了する。
これに対し、下流側空燃比センサ２６の実際の出力とステップ５５０において推定された出力推定値との差ＥｒｒｏｒＯ２ｍｄｌが許容範囲（モデル許容誤差Ｅｍｄｌ）を越えていると、ＣＰＵはステップ５７０にて「Ｙｅｓ」と判定し、ステップ５８０に進んで、推定モデルで使用する（上述した（３６）式及び（３８）式等で使用する）ｋｓｔｏｒ（Ｋｓｔｏｒ，ｉ）及びｋｒｅｌ（ｋｒｅｌ，ｉ）を修正する。
このように、上述した推定値を用いた空燃比制御を実行するとともに、この推定値と下流側空燃比センサ２６の出力とを用いて推定モデルを補正することによって、同推定モデルの推定精度をより一層向上させることができる。
上述した第十実施形態では、下流側空燃比センサ２６の出力に基づいて推定モデルを補正したが、次に説明する第十一実施形態においては、推定モデルによる推定結果に基づいて下流側空燃比センサ２６の異常判定（診断）を行う。本実施形態における制御のフローチャートを図３４に示す。図３４のフローチャートは、空燃比を制御するためのプログラムを示したものではなく、センサの診断（異常判定）を行うためのプログラムを示したものである。なお、本制御においては、第一実施形態と同様に、触媒１９全体を一つの領域として考えて推定値を算出し、排ガス中の酸素量（触媒１９からの排出される酸素の濃度）を同推定値の一つとして算出する。
具体的に説明すると、ＣＰＵは、ステップ５３０にて、空燃比センサ２５が検出する触媒１９に流入する排ガスの空燃比を検出取得し、ステップ５４０に進んで同取得した排気空燃比に基づいてＣｇｏｕｔＯ２を算出するとともに、ステップ５５０にて同算出されたＣｇｏｕｔＯ２に基づいて下流側空燃比センサ２６が出力するであろう出力を推定（予測）する。これらのステップ５３０〜５５０は、上述した第十実施形態におけるステップ５３０〜５５０と同一である。
次いで、ＣＰＵはステップ５９０に進み、（下流側空燃比センサ２６の実際の出力）−（ステップ５５０において推定されたセンサ出力推定値）をＥｒｒｏｒＯ２ｓｎｓとして算出する。
そして、ＣＰＵは、続くステップ６００にて、このＥｒｒｏｒＯ２ｓｎｓの絶対値が、所定のセンサ許容誤差Ｅｓｎｓよりも大きいか否かを判定する。このとき、下流側空燃比センサ２６の実際の出力とステップ５５０において推定された出力推定値との差ＥｒｒｏｒＯ２ｓｎｓが許容範囲（センサ許容誤差Ｅｓｎｓ）内であれば、ＣＰＵはステップ６００にて「Ｎｏ」と判定し、この場合、下流側空燃比センサ２６は正常であると判断し、図３４に示したフローチャートによる制御を一旦終了する。
これに対し、下流側空燃比センサ２６の実際の出力とステップ５５０において推定されたセンサ出力推定値との差ＥｒｒｏｒＯ２ｓｎｓが許容範囲（センサ許容誤差Ｅｓｎｓ）を越えていると、ＣＰＵはステップ６００にて「Ｙｅｓ」と判定し、ステップ６１０に進んで、下流側空燃比センサ２６が異常であると判定する。
この実施形態によれば、上述した推定値を用いて空燃比制御が実行されるとともに、この推定値と下流側空燃比センサ２６の出力とに基づいて同空燃比センサ２６の診断が行われ得る。
第十実施形態では、下流側空燃比センサ２６の出力に基づいて推定値を求めるための推定モデルを補正した。これに対し、第十一実施形態では、推定モデルにより算出される推定値に基づいて下流側空燃比センサ２６の診断を行った。これらは、互いに矛盾する考え方ではあるが、推定値と下流側空燃比センサ２６の出力とのうち何れが信頼性が高いかに基づいて選択すればよい。また、エンジン１の運転状態に応じて、信頼できる方が変わるような場合は、エンジン１の運転状態に応じて推定モデル補正制御と下流側空燃比センサ２６の診断制御とが排他的に行われるようにしてもよい。また、第十一実施形態のように、下流側空燃比センサ２６の正常異常を判定するだけでなく、ＥｒｒｏｒＯ２ｓｎｓに応じて下流側空燃比センサ２６の出力を補正するように構成してもよい。
これまで説明してきた実施形態は、図１に示されるような、排気通路７上に一つの触媒１９のみを有するエンジン１に適用されていた。これに対し、以下に説明する第十二実施形態では、全体構成である図３５に示したように、エンジン１がその排気通路７上に複数（以下の実施形態では二つ）の排気浄化触媒１９ａ，１９ｂを有している。なお、図３５において、図１に示した構成と同一の構成には同一の符号を付し、その説明を省略するとともに、以下においては、図１に示した内燃機関と相違している部分についてのみ説明する。
図３５に示されるこの実施形態にかかる内燃機関に関しては、排気通路７上の二ヶ所に排気浄化触媒１９ａ，１９ｂが配設されている。上流側の触媒を上流側排気浄化触媒１９ａ（以下、上流側触媒１９ａとも言う。）、下流側の触媒を下流側排気浄化触媒１９ｂ（以下、下流側触媒１９ｂとも言う。）と称呼して区別する。
上流側触媒１９ａは、例えば、四気筒のエンジンにおいて、ある二気筒の排気管が一つにまとめられた箇所に一つ、残りの二気筒の排気管が一つにまとめられた箇所にもう一つというように、並列に計二つ設けられるような場合もある。なお、この場合、下流側触媒１９ｂは、すべての排気管が一つにまとめられた部分よりも下流の排気管に設けられることが多い。
上流側触媒１９ａは、始動時触媒とも呼ばれ、容量の小さなものがシリンダ３にできるだけ近い位置に配設され、排ガスの熱によって冷間始動後に早期に活性化温度にまで昇温され、早期に排気浄化性能を発揮することを目的として配設されることが多い。
これに対して、下流側触媒１９ｂは、アンダーフロア触媒とも呼ばれ、十分な容量を有するものが車両の床下に配設され、排ガス中の浄化すべき成分を確実に浄化することを目的として配設される場合が多い。そして、上流側触媒１９ａの上流側には、上流側触媒１９ａに流入する排ガスの空燃比を検出する上流側空燃比センサ２５が配設されている。また、下流側触媒１９ｂの下流側には、下流側触媒１９ｂから流出する排ガスの空燃比を検出する下流側空燃比センサ２６が配設されている。さらに、上流側触媒１９ａと下流側触媒１９ｂとの間には、上流側触媒１９ａから流出し、下流側触媒１９ｂに流入する排ガスの空燃比を検出する中間部空燃比センサ２７が配設されている。
これらの空燃比センサ２５，２６，２７は、ＥＣＵ１８に接続されており、その検出結果をＥＣＵ１８に送出すると共に、ＥＣＵ１８から供給される電力によって早期に昇温されるべくヒータが内蔵されている。また、上流側触媒１９ａ及び下流側触媒１９ｂには、それらの温度を検出する温度センサ２１ａ，２１ｂがそれぞれ取り付けられている。
次に、本実施形態の作動について説明すると、この実施形態では、上流側触媒１９ａと下流側触媒１９ｂとの双方で、上述した推定モデルによる推定値の算出が行われ、これらに基づく空燃比制御が行われる。これらの推定値と、中間部空燃比センサ２７の検出結果とに基づいて、上流側触媒１９ａから流出して下流側触媒１９ｂに流入する排ガスの空燃比も制御される。なお、上流側触媒１９ａに適用する推定モデルの基本構成と、下流側触媒１９ｂに適用する推定モデルの基本構成は、それぞれのモデルで使用するパラメータの数値が異なっている点を除き、同一である。
本実施形態における制御のフローチャートを図３６に示す。図３６のフローチャートは、推定値を算出するためのプログラムのみを示している。また、本実施形態においては、上流側触媒１９ａ全体を一つの領域として考えて推定値を算出し、下流側触媒１９ｂ全体を一つの領域として考えて別の推定値を算出する。この実施形態の推定値の一つは、排ガス中の酸素量（触媒１９ａ，１９ｂから流出する酸素の濃度）である。
また、上述したＣｇｉｎ，Ｃｇｏｕｔに関しては、各触媒毎に以下のように表すこととする。即ち、上流側触媒１９ａに流入する化学種（ここでは酸素）濃度はＣｇｉｎＯ２ＳＣ、同触媒１９ａから流出する化学種濃度はＣｇｏｕｔＯ２ＳＣと記述する。同様に、下流側触媒１９ｂに流入する化学種（ここでは酸素）濃度はＣｇｉｎＯ２ＵＦ、同触媒１９ｂから流出する化学種濃度はＣｇｏｕｔＯ２ＵＦと記述する。上流側触媒１９ａから流出した化学種は下流側触媒１９ｂに流入するので、ＣｇｏｕｔＯ２ＳＣ＝ＣｇｉｎＯ２ＵＦである。
具体的に、図３６のフローチャートにより示されたプログラムに従って説明すると、ＣＰＵは、ステップ６５０にて、上流側空燃比センサ２５が検出する上流側触媒１９ａに流入する排ガスの空燃比を取得し、ステップ６５２に進んで、同取得した排気空燃比に基づいて上流側触媒１９ａに関するＣｇｏｕｔＯ２ＳＣを算出する。これらのステップ６５０，６５２に基く処理は、実際には、図１８に示したステップ１０〜ステップ５０、及びステップ５５に基く処理と同様な処理を実行することで達成される。次いで、ＣＰＵは、ステップ６５４にて、前記ステップ６５２で算出されたＣｇｏｕｔＯ２ＳＣから中間部空燃比センサ２７が出力するであろう出力を推定（予測）する。
そして、ＣＰＵは、ステップ６５６に進み、（中間部空燃比センサ２７の実際の出力）−（ステップ６５４において推定された出力推定値）をＥｒｒｏｒＯ２ｍｄｌとして算出し、続くステップ６５８にて、このＥｒｒｏｒＯ２ｍｄｌの絶対値が、所定のモデル許容誤差Ｅｍｄｌよりも大きいか否かを判定する。このとき、中間部空燃比センサ２７の実際の出力とステップ６５４において推定された出力推定値との差が許容範囲を越えていると、ＣＰＵはステップ６５８にて「Ｙｅｓ」と判定してステップ６６０に進み、同ステップ６６０にてＣｇｏｕｔＯ２ＳＣを補正し、ステップ６６２に進む。
このステップ６６０におけるＣｇｏｕｔＯ２ＳＣの補正は、まず推定モデルを補正し、次いで補正した推定モデルに基づいて再度ＣｇｏｕｔＯ２ＳＣを算出することにより達成される。推定モデルの補正は、上述した図３３のフローチャートにおけるステップ５８０での補正と同様に行われる。
一方、中間部空燃比センサ２７の実際の出力とステップ６５４において推定された出力推定値との差が許容範囲内であると、ＣＰＵはステップ６５８にて「Ｎｏ」と判定し、上述した推定モデルに対して補正を行う必要がないので、ステップ６６２に直接進んでＣｇｏｕｔＯ２ＳＣをＣｇｉｎＯ２ＵＦに設定する。なお、ステップ６６０を経由してステップ６６２に到達した場合、ステップ６６０にて補正されたＣｇｏｕｔＯ２ＳＣがＣｇｉｎＯ２ＵＦに設定される。
次いで、ＣＰＵは、ステップ６６４にて、上記算出した下流側触媒に関するＣｇｉｎＯ２ＵＦに基づいてＣｇｏｕｔＯ２ＵＦを、ステップ６５２と同様に算出する。そして、ＣＰＵは図示しないステップにて、このように算出されたＣｇｏｕｔＯ２ＳＣ及びＣｇｏｕｔＯ２ＵＦに基づいて空燃比フィードバック補正量を算出し、空燃比制御に反映する。このように、排気通路７上の複数の触媒１９ａ，１９ｂの双方に関して推定値をそれぞれ算出し、これらの推定値を用いた空燃比制御を行うことによって、排ガスの浄化性能をより一層向上させることが可能となる。
次に、第十三実施形態について説明する。本実施形態は、上述した第十二実施形態と類似しているが、ＣｇｏｕｔＯ２ＳＣの補正は行わなわれない。なお、第十三実施形態の制御を第十二実施形態の制御と組み合わせて行うようにしても構わない。第十三実施形態は、下流側触媒１９ｂの浄化率を高く維持するため、算出した推定値を用いて、下流側触媒１９ｂに流入する排ガスの空燃比を制御する。具体的には、下流側触媒１９ｂの浄化率を高く維持するために、同下流側触媒１９ｂに流入する排ガス中の酸素過不足量の積算値がゼロとなるように、空燃比制御を行う。
上記下流側触媒１９ｂに流入する酸素過不足量の積算値とは、下流側触媒１９ｂの浄化率を高く維持させるために下流側触媒１９ｂに流入する酸素量の収支（総和・平均値）をゼロにする際の余剰・不足状態を示すものである。本実施形態における制御のフローチャートを図３７に示す。
このフローチャートに沿って、本装置の作動を説明すると、ＣＰＵはステップ６５０にて上流側空燃比センサ２５が検出する上流側触媒１９ａに流入する排ガスの空燃比を取得し、ステップ６５２にて前記取得した空燃比に基づいて、上流側触媒１９ａに関するＣｇｏｕｔＯ２ＳＣを算出する。これらのステップ６５０，６５２に基く処理は、実際には、図１８に示したステップ１０〜ステップ５０、及びステップ５５に基く処理と同様な処理を実行することで達成される。次いで、ＣＰＵはステップ６６２に進み、ステップ６５２で算出したＣｇｏｕｔＯ２ＳＣをＣｇｉｎＯ２ＵＦに設定する。
次いで、ＣＰＵはステップ６７０に進み、ステップ６６２において算出されたＣｇｉｎＯ２ＵＦの積算値（ΣＣｇｉｎＯ２ＵＦと表現する）を求める。即ち、ＣＰＵは、これまでの積算値ΣＣｇｉｎＯ２ＵＦ（ｋ−１）をストックしており、これに対して新たにステップ６６２で算出されたＣｇｉｎＯ２ＵＦ（ｋ）を加えることによって、新たな積算値ΣＣｇｉｎＯ２ＵＦ（ｋ）を得る。
そして、ＣＰＵは、ステップ６７２にて、前記算出された積算値ΣＣｇｉｎＯ２ＵＦ（ｋ）がゼロより大きいか否かを判定し、同ステップ６７２にて「Ｙｅｓ」と判定するとき、ステップ６７４に進んで下流側触媒１９ｂに流入する排ガスの空燃比がリッチとなるような制御（リッチ制御）を行う。一方、ステップ６７２の実行時に、前記算出された積算値ΣＣｇｉｎＯ２ＵＦ（ｋ）がゼロ以下であれば、ＣＰＵはステップ６７２にて「Ｎｏ」と判定してステップ６７６に進み、下流側触媒１９ｂに流入する排ガスの空燃比をリーンとするように制御（リーン制御）を行う。
このように、上流側触媒１９ａと下流側触媒１９ｂとの双方に関して推定値を算出し、これらの推定値に基づいて、下流側触媒１９ｂを浄化率の高い状態に維持する空燃比制御を行うことによって、排ガスの浄化性能をより一層向上させることが可能となる。
以上、説明したように、本発明の各実施形態によれば、排気浄化触媒に流入する排ガスの空燃比に基づいて、排気浄化触媒から排出される（同触媒の全部又は同触媒の一部である特定領域の一つから排出される）特定成分の排出量（或いは、排出される排ガスの状態を示す代表値）を推定し、推定した推定値に対する目標状態を設定し、この推定値が目標状態となるように空燃比制御を行う。これにより、排気浄化触媒或いは同触媒を分割した場合の特定領域（特定ブロック）から排出される特定成分の排出量（触媒又は特定領域から排出される排ガスの状態、触媒全体又は同触媒の最上流位置から特定領域までの酸素吸蔵量等で代表される触媒の状態を含む。）を所望の状態に制御でき、排気浄化性能を向上させることができる。
【図面の簡単な説明】
図１は、本発明の制御装置の実施形態を有する内燃機関を示す断面図である。
図２は、図１に示した排気浄化触媒の外観図である。
図３は、図２に示した排気浄化触媒の部分断面図である。
図４は、本発明における推定モデル（触媒モデル）を説明するための模式図である。
図５は、本発明における推定モデルを説明するための模式図である。
図６は、本発明における推定モデルで使用される風上法を説明するための模式図である。
図７は、本発明による推定モデルにしたがって排ガス中の酸素濃度を求めるためのプログラムを示したフローチャートである。
図８は、本発明による推定モデルにしたがって排ガス中の一酸化炭素濃度を求めるためのプログラムを示したフローチャートである。
図９は、本発明による推定モデルにしたがって排ガス中の炭化水素濃度を求めるためのプログラムを示したフローチャートである。
図１０は、本発明による推定モデルにしたがって排ガス中の窒素酸化物（一酸化窒素）濃度を求めるためのプログラムを示したフローチャートである。
図１１は、本発明による推定モデルにしたがって酸素吸蔵密度を求めるためのプログラムを示したフローチャートである。
図１２は、触媒劣化度と触媒温度から係数Ｋｓｔｏｒ，ｉ、Ｋｒｅｌ，ｉを求めるためのマップである。
図１３は、排気浄化触媒に流入する一酸化炭素濃度を決定するために使用される排気空燃比と同一酸化炭素濃度との関係を規定したマップ（テーブル）である。
図１４は、排気浄化触媒に流入する炭化水素濃度と排気空燃比との関係を示したグラフである。
図１５は、排気浄化触媒に流入する炭化水素濃度と排気温度との関係を示したグラフである。
図１６は、排気浄化触媒に流入する一酸化窒素濃度と排気空燃比との関係を示したグラフである。
図１７は、排気浄化触媒に流入する一酸化窒素濃度と筒内吸入空気量との関係を規定したグラフである。
図１８は、本発明の制御装置の第一実施形態における空燃比制御のフローチャートである。
図１９は、ＣｇｏｕｔＯ２とフィードバック補正量との関係を示すマップである。
図２０は、本発明の制御装置の第二実施形態における空燃比制御のフローチャートである。
図２１は、本発明の制御装置の第三実施形態における空燃比制御のフローチャートである。
図２２は、本発明の制御装置の第四実施形態における空燃比制御のフローチャートである。
図２３は、本発明の制御装置の第五実施形態における空燃比制御のフローチャートである。
図２４は、本発明の制御装置の第六実施形態における空燃比制御のフローチャートである。
図２５は、本発明の制御装置の第七実施形態における空燃比制御のフローチャートである。
図２６は、運転状態が吸入空気量である場合の同運転状態と特定領域の位置との関係を示すマップである。
図２７は、運転状態がアクセル開度の変化量（Δアクセル開度）である場合の同運転状態と特定領域の位置との関係を示すマップである。
図２８は、運転状態が触媒の活性状態である場合の同運転状態と特定領域の位置との関係を示すマップである。
図２９は、運転状態が空燃比の変動量（ΔＡ／Ｆ）である場合の同運転状態と特定領域の位置との関係を示すマップである。
図３０は、本発明の制御装置の第八実施形態における空燃比制御のフローチャートである。
図３１は、本発明の制御装置の第九実施形態における空燃比制御のフローチャートである。
図３２は、特定領域の位置と制御ゲインＧ１，Ｇ２との関係を示すマップである。
図３３は、本発明の制御装置の第十実施形態における空燃比制御のフローチャートである。
図３４は、本発明の制御装置の第十一実施形態における空燃比制御のフローチャートである。
図３５は、本発明の第十二実施形態及び第十三実施形態にかかる内燃機関を示す図である。
図３６は、本発明の制御装置の第十二実施形態における空燃比制御のフローチャートである。
図３７は、本発明の制御装置の第十三実施形態における空燃比制御のフローチャートである。
【図１】
2002103181.tif 000048
【図２】
2002103181.tif 000049
【図３】
2002103181.tif 000050
【図４】
2002103181.tif 000051
【図５】
2002103181.tif 000052
【図６】
2002103181.tif 000053
【図７】
2002103181.tif 000054
【図８】
2002103181.tif 000055
【図９】
2002103181.tif 000056
【図１０】
2002103181.tif 000057
【図１１】
2002103181.tif 000058
【図１２】
2002103181.tif 000059
【図１３】
2002103181.tif 000060
【図１４】
2002103181.tif 000061
【図１５】
2002103181.tif 000062
【図１６】
2002103181.tif 000063
【図１７】
2002103181.tif 000064
【図１８】
2002103181.tif 000065
【図１９】
2002103181.tif 000066
【図２０】
2002103181.tif 000067
【図２１】
2002103181.tif 000068
【図２２】
2002103181.tif 000069
【図２３】
2002103181.tif 000070
【図２４】
2002103181.tif 000071
【図２５】
2002103181.tif 000072
【図２６】
2002103181.tif 000073
【図２７】
2002103181.tif 000074
【図２８】
2002103181.tif 000075
【図２９】
2002103181.tif 000076
【図３０】
2002103181.tif 000077
【図３１】
2002103181.tif 000078
【図３２】
2002103181.tif 000079
【図３３】
2002103181.tif 000080
【図３４】
2002103181.tif 000081
【図３５】
2002103181.tif 000082
【図３６】
2002103181.tif 000083
【図３７】
2002103181.tif 000084
【国際調査報告】
2002103181.tif 000085
2002103181.tif 000086
2002103181.tif 000087
2002103181.tif 000088