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