(57)【要約】【課題】内燃機関の排気通路に直列に配設された複数の触媒からなる触媒装置の劣化を適切なタイミングでユーザーに知らしめるための警報を行える触媒劣化の判定をすることが可能な触媒劣化判定装置を提供すること。【解決手段】この触媒劣化判定装置は、排気通路において排気ポート３４から近い順に、第１触媒，第２触媒及び第３触媒が直列に配設された内燃機関に適用される。そして、第１触媒上流の空燃比センサの出力と各触媒下流の空燃比センサの出力とに基いて各触媒の最大酸素吸蔵量Ｃｍａｘ（１），Ｃｍａｘ（２）及びＣｍａｘ（３）をそれぞれ推定し、同各触媒の最大酸素吸蔵量に応じて変化する各触媒の劣化指標値Ｋｅ（１），Ｋｅ（２）及びＫｅ（３）をそれぞれ算出し、各劣化指標値を互いに乗算して得られる触媒劣化判定用指標値と触媒装置劣化判定基準値との比較結果に基づいて第１，第２及び第３触媒からなる触媒装置が劣化したか否かを判定する。【選択図】　図５
2004076681.tif 000002
【特許請求の範囲】
【請求項１】
内燃機関の排気通路に直列に配設された複数の触媒を備えた同内燃機関の排気浄化装置に適用される触媒劣化判定装置であって、
前記各触媒の劣化の程度を示す各劣化指標値を同触媒毎に取得する劣化指標値取得手段と、
前記触媒毎に取得された前記各劣化指標値に基いて触媒劣化判定用指標値を算出するとともに同触媒劣化判定用指標値に基いて前記複数の触媒のうちの少なくとも一つ、又は同複数の触媒を一つの触媒装置とみなしたときの同触媒装置が劣化したか否かを判定する触媒劣化判定手段と、
を備えた触媒劣化判定装置。
【請求項２】
請求項１に記載の触媒劣化判定装置において、
前記劣化指標値取得手段により取得される各触媒の各劣化指標値は、対応する触媒が前記排気通路のより上流側に配設されている程、同触媒に対応する劣化指標値が同対応する触媒が新品であるときの値から同対応する触媒が劣化した触媒であると判定すべき程度に劣化したときの値まで変化した場合の前記触媒劣化判定用指標値の変化の程度が大きくなるように設定されている触媒劣化判定装置。
【請求項３】
請求項２に記載の触媒劣化判定装置であって、
前記触媒劣化判定手段は、前記触媒劣化判定用指標値に基いて前記触媒装置が劣化したか否かを判定するとともに、前記各触媒に対応する前記劣化指標値に応じた値に基いて同各触媒が劣化したか否かを触媒毎に判定するように構成されるとともに、
前記触媒劣化判定手段により前記触媒装置が劣化したと判定された場合、同触媒劣化判定手段により劣化したと判定されている各触媒に対応する前記劣化指標値を、対応する触媒が前記排気通路のより上流側に配設されているものから順に現時点での値から同対応する触媒が新品であるときの値に代えていくことで、前記触媒劣化判定手段により算出される触媒劣化判定用指標値を仮の触媒劣化判定用指標値として更新していき、同仮の触媒劣化判定用指標値が前記触媒装置が劣化していないと判定すべき値となった段階で同仮の触媒劣化判定用指標値を算出するために同対応する触媒が新品であるときの値に代えられている各劣化指標値に対応する触媒の交換を促すための警報を行う警報手段を備えた触媒劣化判定装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、内燃機関の排気通路に配設された触媒が劣化したか否かを判定するための触媒劣化判定装置に関する。
【０００２】
【従来の技術】
従来より、内燃機関の排気ガスを浄化するための三元触媒（本明細書においては、単に「触媒」と云うこともある。）が、同機関の排気通路に配設されている。この触媒は、酸素を貯蔵（吸蔵）するＯ２ストレージ機能（酸素貯蔵機能、酸素吸蔵機能）を有していて、流入するガスの空燃比がリッチである場合には貯蔵している酸素によりＨＣ，ＣＯ等の未燃成分を酸化するとともに、流入するガスの空燃比がリーンである場合には窒素酸化物（ＮＯｘ）を還元して同ＮＯｘから奪った酸素を内部に貯蔵する。これにより、三元触媒は、機関の空燃比が理論空燃比から偏移した場合でも、有害成分である未燃成分や窒素酸化物を浄化することができる。従って、三元触媒が貯蔵し得る酸素量（以下、「酸素吸蔵量」と称呼する。）の最大値（以下、「最大酸素吸蔵量」と称呼する。）が大きいほど、三元触媒の浄化能力は高くなる。
【０００３】
一方、触媒は燃料中に含まれる鉛や硫黄等による被毒、或いは触媒に加わる熱により劣化し、触媒の劣化が進行するほど最大酸素吸蔵量は低下する。換言すると、最大酸素吸蔵量（に応じて変化する値）は触媒の劣化の程度を示す劣化指標値の一つとなり得る。従って、触媒の最大酸素吸蔵量が推定できれば、同推定した最大酸素吸蔵量に基いて触媒が劣化したか否かを判定することができるとともに、触媒が劣化したという判定結果に基いてユーザーに触媒の劣化を知らしめるための（触媒の交換を促すための）警報（例えば警報ランプを点灯すること）を行うことができる。
【０００４】
特開平５−１３３２６４号公報の触媒劣化度検出装置は、このような知見に基いて触媒劣化度を検出するものであって、機関の空燃比を所定のリッチ空燃比からリーン空燃比（又は、その逆）に強制的に変化させ、その際における触媒下流に配置した空燃比センサの出力の変化に基いて同触媒の最大酸素吸蔵量を推定し、同推定した最大酸素吸蔵量に基いて同触媒の劣化度を検出するようになっている。
【０００５】
より具体的に述べると、上記開示された装置は、触媒上流の空燃比を所定のリッチな空燃比に制御して触媒の酸素吸蔵量を「０」にしておき、その後、同触媒の空燃比を所定のリーンな空燃比に制御し、触媒の酸素吸蔵量が最大酸素吸蔵量に達して触媒下流の空燃比センサの出力がリーンへと変化するまでの時間と同触媒に単位時間当りに流入した酸素量とを乗じることで、同最大酸素吸蔵量を推定する。或いは、触媒上流の空燃比を所定のリーンな空燃比に制御して酸素吸蔵量を最大酸素吸蔵量としておき、その後、同触媒の空燃比を所定のリッチな空燃比に制御し、触媒の酸素吸蔵量が「０」となって触媒下流の空燃比センサの出力がリッチへと変化するまでの時間と同触媒内で単位時間当りに放出（消費）された酸素量とを乗じることで、同最大酸素吸蔵量を推定する。即ち、この装置は、触媒下流の空燃比センサの出力の切換時点と、前記所定のリッチ空燃比、又は前記所定のリーン空燃比を少なくとも利用して最大酸素吸蔵量を求めるのである。
【０００６】
【発明が解決しようとする課題】
ところで、内燃機関の始動直後の排気ガスを浄化するとともに、完全暖機後の排気浄化性能を一層向上するため、機関の排気通路にスタート・コンバータと云われる比較的小容量の第１触媒を配設するともに、第１触媒よりも下流の排気通路にアンダ・フロア・コンバータと云われる比較的容量の大きい第２触媒を配設する構成が採用されることがある。この場合、第１触媒は第２触媒に比べて機関の排気ポートに近い位置に配設され、温度の高い排気ガスが流入するから、始動から短期間内に暖機されて良好な排気浄化機能を発揮する。一方、第２触媒は、第１触媒よりも暖機に要する時間が長いが、その容量が大きいことから、一旦暖機した後においては優れた排気浄化機能を発揮する。
【０００７】
このように複数の触媒が内燃機関の排気通路に直列に配設された構成を有するシステム（排気浄化装置）において触媒の劣化を知らしめるための警報を行う場合、上述した特開平５−１３３２６４号公報に記載されている手法を利用して触媒毎に最大酸素吸蔵量を推定し、推定された同最大酸素吸蔵量に基いて各触媒が劣化したか否かを触媒毎に判定するとともに、複数の触媒のうちの少なくとも一つが劣化したと判定したとき、触媒（システム）全体として触媒が劣化したと判定して触媒の劣化を知らしめるための警報を行うという手法が考えられる。
【０００８】
しかしながら、各触媒が被毒する程度、或いは各触媒に加わる熱量は触媒毎に相違するため、各触媒はそれぞれ同程度に劣化していくとは限らない。従って、複数の触媒のうちの少なくとも一つが劣化したと判定された場合であっても劣化したと判定されていない他の触媒の最大酸素吸蔵量がまだ十分大きく同他の触媒の浄化能力が十分高いときには、システム全体としてのエミッションの排出量が少ないのでシステム全体としては触媒の劣化を知らしめるための警報を行う必要がない場合がある。よって、上記手法を採用すると、触媒の劣化を知らしめるための警報を行う必要がないにもかかわらず、同警報を行ってしまう場合があるという問題がある。
【０００９】
従って、本発明の目的は、内燃機関の排気通路に直列に配設された複数の触媒を備えた同内燃機関の排気浄化装置に適用される触媒劣化判定装置において、適切なタイミングでユーザーに触媒の劣化を知らしめるための警報を行える触媒劣化の判定をすることが可能なものを提供することにある。
【００１０】
【本発明の概要】
本発明の特徴は、内燃機関の排気通路に直列に配設された複数の触媒を備えた同内燃機関の排気浄化装置に適用される触媒劣化判定装置が、前記各触媒の劣化の程度を示す各劣化指標値を同触媒毎に取得する劣化指標値取得手段と、前記触媒毎に取得された前記各劣化指標値に基いて触媒劣化判定用指標値を算出するとともに同触媒劣化判定用指標値に基いて前記複数の触媒のうちの少なくとも一つ、又は同複数の触媒を一つの触媒装置とみなしたときの同触媒装置が劣化したか否かを判定する触媒劣化判定手段とを備えたことにある。
【００１１】
ここにおいて「触媒の劣化指標値」は、触媒の劣化の程度（触媒の排気浄化能力）を示す値であればよく、例えば、触媒の最大酸素吸蔵量（に応じて変化する値）、又は、触媒の上流側空燃比センサの出力が描く軌跡長と同触媒の下流側空燃比センサの出力が描く軌跡長との比（軌跡比）であり、これらに限定されない。また、「触媒劣化判定用指標値」は、例えば、触媒毎にそれぞれ取得された各劣化指標値の乗算値に基いた値、各劣化指標値の積算値に基いた値（各劣化指標値の平均値等）であり、これらに限定されない。
【００１２】
これによれば、内燃機関の排気通路に直列に配設された各触媒毎に劣化指標値取得手段により取得された各劣化指標値（の総て）に基いて触媒劣化判定用指標値が算出されるとともに同触媒劣化判定用指標値に基いて、複数の触媒のうちの少なくとも一つ以上、又は同複数の触媒を一つの触媒装置とみなしたときの同触媒装置が劣化したか否かが判定される。従って、例えば、複数の触媒のうちの一つのみが著しく劣化してその触媒の劣化指標値が触媒が劣化したと判定されるべき程度の値になっている場合でも、前記触媒劣化判定用指標値が触媒が劣化したと判定されるべき程度の値になっていないときには、触媒（システム）全体（触媒装置）としては触媒（装置）が劣化したとは判定されない。
【００１３】
換言すれば、前記触媒劣化判定用指標値（例えば、各劣化指標値の乗算値）が触媒が劣化したと判定されるべき程度の値になっておりシステム全体としてのエミッションの排出量が増大したときに初めて触媒（装置）が劣化したと判定され得る。この結果、不必要に触媒が劣化したと判定されることが発生せず、適切なタイミングでユーザーに触媒の劣化を知らしめるための（触媒の交換を促すための）警報を行うことができる。
【００１４】
この場合、前記劣化指標値取得手段により取得される各触媒の各劣化指標値が、対応する触媒が前記排気通路のより上流側に配設されている程、同触媒に対応する劣化指標値が同対応する触媒が新品であるときの値から同対応する触媒が劣化した触媒であると判定すべき程度に劣化したときの値まで変化した場合の前記触媒劣化判定用指標値の変化の程度が大きくなるように設定されることが好適である。ここにおいて、「触媒劣化判定用指標値の変化の程度」は、例えば、触媒劣化判定用指標値が各劣化指標値の積算値に基いた値である場合には触媒劣化判定用指標値の変化前の値と変化後の値との差であり、例えば、触媒劣化判定用指標値が各劣化指標値の乗算値に基いた値である場合には触媒劣化判定用指標値の変化前（後）の値に対する変化後（前）の値の割合の「１」からの差である。
【００１５】
触媒の排気浄化性能は同触媒の温度に依存し、触媒が十分に暖機されるまでは同触媒は良好な排気浄化性能を発揮できない。また、内燃機関の始動直後においては、排気通路のより上流側に配設されている触媒程、温度の高い排気ガスが流入することにより短期間内に暖機されて良好な排気浄化性能を発揮する一方、排気通路のより下流側に配設されている触媒程、暖機に要する時間が長く良好な排気浄化性能を発揮し得ない。従って、内燃機関の始動直後におけるシステム全体としての排気浄化性能は、排気通路のより上流側に配設されている触媒の排気浄化能力に大きく依存する。
【００１６】
よって、仮に、排気通路の下流側に配設されている触媒が劣化していなくても排気通路のより上流側に配設されている触媒の劣化がある程度進行している場合には、システム全体として触媒（装置）が劣化したと判定されることが好ましい。以上の観点に基き、上記構成によれば、各触媒の各劣化指標値を、対応する触媒が前記排気通路のより上流側に配設されている程、同触媒に対応する劣化指標値が同対応する触媒が新品であるときの値から同対応する触媒が劣化した触媒であると判定すべき程度に劣化したときの値まで変化した場合の前記触媒劣化判定用指標値の変化の程度（以下、「劣化指標値の寄与度」と称呼する。）が大きくなるように設定する。
【００１７】
これにより、触媒の劣化の進行に対する触媒劣化判定用指標値の変化の程度は、同触媒が排気通路のより上流側に配設されている程大きくなり、排気通路のより上流側に配設されている触媒の劣化が進行すると、同排気通路の下流側に配設されている触媒の劣化が進行する場合に比して、触媒劣化判定用指標値が触媒装置が劣化したと判定されるべき程度の値に到達し易くなる。
【００１８】
この結果、排気通路のより上流側に配設されている触媒の劣化が進行したとき、早めにシステム全体として触媒（装置）が劣化したと判定でき、触媒の交換を促すための警報を行うことができるので、同警報を受けて排気通路のより上流側に配設されている触媒を新品に交換することにより、内燃機関の始動直後におけるシステム全体としての排気浄化性能を良好に維持することができる。
【００１９】
上記のように各触媒の各劣化指標値が設定された触媒劣化判定装置においては、更に、前記触媒劣化判定手段は、前記触媒劣化判定用指標値に基いて前記触媒装置が劣化したか否かを判定するとともに、前記各触媒に対応する前記劣化指標値に応じた値に基いて同各触媒が劣化したか否かを触媒毎に判定するように構成されるとともに、前記触媒劣化判定手段により前記触媒装置が劣化したと判定された場合、同触媒劣化判定手段により劣化したと判定されている各触媒に対応する前記劣化指標値を、対応する触媒が前記排気通路のより上流側に配設されているものから順に現時点での値から同対応する触媒が新品であるときの値に代えていくことで、前記触媒劣化判定手段により算出される触媒劣化判定用指標値を仮の触媒劣化判定用指標値として更新していき、同仮の触媒劣化判定用指標値が前記触媒装置が劣化していないと判定すべき値となった段階で同仮の触媒劣化判定用指標値を算出するために同対応する触媒が新品であるときの値に代えられている各劣化指標値に対応する触媒の交換を促すための警報を行う警報手段を備えるように構成されることが好適である。
【００２０】
これによれば、上記警報手段による警報を受けて、触媒劣化判定手段により劣化したと判定されている各触媒のうち、同警報により交換を促された触媒のみを交換すれば、触媒劣化判定用指標値が触媒装置が劣化していないと判定すべき値となることが保証される。
【００２１】
また、劣化したと判定されている各触媒に対応する劣化指標値を、対応する触媒が前記排気通路のより上流側に配設されていて同劣化指標値の寄与度がより大きいものから順に、現時点での値から同対応する触媒が新品であるときの値に代えていくことで仮の触媒劣化判定用指標値を算出していくので、触媒劣化判定用指標値を触媒装置が劣化していないと判定されるべき程度の値に到達させるために上記警報により交換を促される触媒の数を最小限とすることができるとともに、上記警報により排気通路のより上流側に配設されている触媒の交換を促すことができる。この結果、かかる警報を受けて、交換をすべき触媒が特定されるとともに、同特定された最小限の数の触媒のみを新品に交換することにより、特に、内燃機関の始動直後におけるシステム全体としての排気浄化性能を良好に維持することができる。
【００２２】
【発明の実施の形態】
以下、本発明による触媒劣化装置の一実施形態について図面を参照しつつ説明する。図１は、本発明の実施形態に係る触媒劣化判定装置を搭載した排気浄化装置を火花点火式多気筒（４気筒）内燃機関１０に適用したシステムの概略構成を示している。
【００２３】
この内燃機関１０は、シリンダブロック、シリンダブロックロワーケース、及びオイルパン等を含むシリンダブロック部２０と、シリンダブロック部２０の上に固定されるシリンダヘッド部３０と、シリンダブロック部２０にガソリン混合気を供給するための吸気系統４０と、シリンダブロック部２０からの排気ガスを外部に放出するための排気系統５０とを含んでいる。
【００２４】
シリンダブロック部２０は、シリンダ２１、ピストン２２、コンロッド２３、及びクランク軸２４を含んでいる。ピストン２２はシリンダ２１内を往復動し、ピストン２２の往復動がコンロッド２３を介してクランク軸２４に伝達され、これにより同クランク軸２４が回転するようになっている。シリンダ２１とピストン２２のヘッドは、シリンダヘッド部３０とともに燃焼室２５を形成している。
【００２５】
シリンダヘッド部３０は、燃焼室２５に連通した吸気ポート３１、吸気ポート３１を開閉する吸気弁３２、吸気弁３２を駆動するインテークカムシャフトを含むとともに同インテークカムシャフトの位相角を連続的に変更する可変吸気タイミング装置３３、可変吸気タイミング装置３３のアクチュエータ３３ａ、燃焼室２５に連通した排気ポート３４、排気ポート３４を開閉する排気弁３５、排気弁３５を駆動するエキゾーストカムシャフト３６、点火プラグ３７、点火プラグ３７に与える高電圧を発生するイグニッションコイルを含むイグナイタ３８、及び燃料を吸気ポート３１内に噴射するインジェクタ（燃料噴射手段）３９を備えている。
【００２６】
吸気系統４０は、吸気ポート３１に連通し同吸気ポート３１とともに吸気通路を形成するインテークマニホールドを含む吸気管４１、吸気管４１の端部に設けられたエアフィルタ４２、吸気管４１内にあって吸気通路の開口断面積を可変とするスロットル弁４３、及びスロットル弁駆動手段を構成するＤＣモータからなるスロットル弁アクチュエータ４３ａを備えている。
【００２７】
排気系統５０は、排気ポート３４に連通したエキゾーストマニホールド５１、エキゾーストマニホールド５１に接続されたエキゾーストパイプ（排気管）５２、エキゾーストパイプ５２に配設（介装）された第１触媒（スタート・コンバータとも云う。）５３、第１触媒５３の下流のエキゾーストパイプ５２に配設（介装）された同第１触媒５３よりも容量の大きい第２触媒（車両のフロア下方に配設されるため、アンダ・フロア・コンバータとも云う。）５４、及び第２触媒５４の下流のエキゾーストパイプ５２に配設（介装）された同第２触媒５４と同等の容量を有する第３触媒（第２触媒５４と同様、アンダ・フロア・コンバータとも云う。）５５を備えている。
【００２８】
ここで、排気ポート３４、エキゾーストマニホールド５１、及びエキゾーストパイプ５２は排気通路を構成している。また、エキゾーストパイプ５２はエキゾーストマニホールド５１を介して４つの気筒の全てと接続されており、この結果、第１触媒５３、第２触媒５４及び第３触媒５５も４つの気筒の全てと接続されている。
【００２９】
一方、このシステムは、熱線式エアフローメータ６１、スロットルポジションセンサ６２、カムポジションセンサ６３、クランクポジションセンサ６４、水温センサ６５、第１触媒５３の上流の排気通路に配設された空燃比センサ６６（以下、「最上流空燃比センサ６６」と称呼する。）、第１触媒５３の下流であって第２触媒５４の上流の排気通路に配設された空燃比センサ６７−１（以下、「第１触媒下流空燃比センサ６７−１」と称呼する。）、第２触媒５４の下流の排気通路に配設された空燃比センサ６７−２（以下、「第２触媒下流空燃比センサ６７−２」と称呼する。）、第３触媒５５の下流の排気通路に配設された空燃比センサ６７−３（以下、「第３触媒下流空燃比センサ６７−３」と称呼する。）、及びアクセル開度センサ６８を備えている。
【００３０】
熱線式エアフローメータ６１は、吸気管４１内を流れる吸入空気の質量流量に応じた電圧Ｖｇを出力するようになっている。かかるエアフローメータ６１の出力Ｖｇと、計測された吸入空気量（流量）ＡＦＭとの関係は、図２に示したとおりである。スロットルポジションセンサ６２は、スロットル弁４３の開度を検出し、スロットル弁開度ＴＡを表す信号を出力するようになっている。カムポジションセンサ６３は、インテークカムシャフトが９０°回転する毎に（即ち、クランク軸２４が１８０°回転する毎に）一つのパルスを有する信号（Ｇ２信号）を発生するようになっている。クランクポジションセンサ６４は、クランク軸２４が１０°回転する毎に幅狭のパルスを有するとともに同クランク軸２４が３６０°回転する毎に幅広のパルスを有する信号を出力するようになっている。この信号は、エンジン回転速度ＮＥを表す。水温センサ６５は、内燃機関１０の冷却水の温度を検出し、冷却水温ＴＨＷを表す信号を出力するようになっている。
【００３１】
最上流空燃比センサ６６は、図３（ａ）に示したように、空燃比Ａ／Ｆに応じた電流を出力し、この電流に応じた電圧ｖａｂｙｆｓを出力するようになっている。図３（ａ）から明らかなように、最上流空燃比センサ６６によれば、広範囲にわたる空燃比Ａ／Ｆを精度良く検出することができる。第１触媒下流空燃比センサ６７−１、第２触媒下流空燃比センサ６７−２、及び第３触媒下流空燃比センサ６７−３は、図３（ｂ）に示したように、理論空燃比において急変する電圧Ｖｏｘｓ１，Ｖｏｘｓ２，Ｖｏｘｓ３をそれぞれ出力するようになっている。より具体的に述べると、第１，第２及び第３触媒下流空燃比センサ６７−１，６７−２及び６７−３は、空燃比が理論空燃比よりもリーンのときは略０．１（Ｖ）、空燃比が理論空燃比よりもリッチのときは略０．９（Ｖ）、及び空燃比が理論空燃比のときは略０．５（Ｖ）の電圧を出力するようになっている。アクセル開度センサ６８は、運転者によって操作されるアクセルペダル８１の操作量を検出し、同アクセルペダル８１の操作量Ａｃｃｐを表す信号を出力するようになっている。
【００３２】
更に、このシステムは電気制御装置７０を備えている。電気制御装置７０は、互いにバスで接続されたＣＰＵ７１、ＣＰＵ７１が実行するルーチン（プログラム）、テーブル（ルックアップテーブル、マップ）、定数等を予め記憶したＲＯＭ７２、ＣＰＵ７１が必要に応じてデータを一時的に格納するＲＡＭ７３、電源が投入された状態でデータを格納するとともに同格納したデータを電源が遮断されている間も保持するバックアップＲＡＭ７４、及びＡＤコンバータを含むインターフェース７５等からなるマイクロコンピュータである。インターフェース７５は、前記センサ６１〜６８と接続され、ＣＰＵ７１にセンサ６１〜６８からの信号を供給するとともに、同ＣＰＵ７１の指示に応じて可変吸気タイミング装置３３のアクチュエータ３３ａ、イグナイタ３８、インジェクタ３９、及びスロットル弁アクチュエータ４３ａに駆動信号を送出するようになっている。また、インターフェース７５は、ＣＰＵ７１の指示に応じて警報ランプ６８に、ユーザーに触媒の劣化を知らしめる（特定の触媒の交換を促す）点灯表示をさせるための点灯指示信号を送出するようになっている。
【００３３】
（触媒劣化判定・警報処理の原理）
ところで、第１，第２及び第３触媒５３，５４及び５５等の三元触媒は、空燃比がほぼ理論空燃比のときに未燃成分（ＨＣ，ＣＯ）を酸化し、同時に窒素酸化物（ＮＯｘ）を還元する機能を有する。更に、三元触媒は、酸素貯蔵機能を有し、この酸素貯蔵機能により空燃比が理論空燃比からある程度まで偏移したとしても、ＨＣ，ＣＯ、及びＮＯｘを浄化することができる。即ち、機関の空燃比がリーンとなって三元触媒に流入するガスにＮＯｘが多量に含まれると、三元触媒はＮＯｘから酸素分子を奪ってＮＯｘを還元してＮＯｘを浄化するとともに、その酸素を吸蔵する。また、機関の空燃比がリッチになって三元触媒に流入するガスにＨＣ，ＣＯが多量に含まれると、三元触媒はこれらに吸蔵していた酸素を与えて酸化し、これによりＨＣ，ＣＯを浄化する。
【００３４】
従って、三元触媒が連続的に流入する多量のＨＣ，ＣＯを効率的に浄化するためには、同三元触媒が酸素を多量に貯蔵していなければならず、逆に連続的に流入する多量のＮＯｘを効率的に浄化するためには、三元触媒が酸素を十分に貯蔵し得る状態になければならないことになる。
【００３５】
以上のことから明らかなように、三元触媒の浄化能力は、その三元触媒が貯蔵（吸蔵）し得る最大の酸素量（最大酸素吸蔵量）に依存する。ところが、三元触媒は燃料中に含まれる鉛や硫黄等による被毒、或いは触媒に加わる熱により劣化するから、次第に最大酸素吸蔵量が低下してくる。従って、第１，第２及び第３触媒５３，５４及び５５の各々の最大酸素吸蔵量を検出することができれば、同第１，第２及び第３触媒５３，５４及び５５の各々が劣化しているか否かを判定することができる。換言すると、最大酸素吸蔵量（に応じて変化する値）は触媒の劣化の程度を示す劣化指標値の一つとなり得る。
【００３６】
しかし、上述したように排気通路に直列に配設されている第１，第２及び第３触媒５３，５４及び５５はそれぞれ同程度に劣化していくとは限らない。従って、例えば、第１，第２及び第３触媒５３，５４及び５５のうちの一つのみが著しく劣化してその触媒の最大酸素吸蔵量が同触媒が劣化したと判定されるべき程度の値にまで小さくなっている場合でも、他の触媒の最大酸素吸蔵量がまだ十分大きく同他の触媒の浄化能力が十分高いときには、システム全体としてのエミッションの排出量が少ないのでシステム全体として触媒（装置）が劣化したと判定する必要がない場合もある。
【００３７】
従って、本実施形態の触媒劣化判定装置は、第１，第２及び第３触媒５３，５４及び５５の各々の最大酸素吸蔵量を推定し、推定した最大酸素吸蔵量に基いて最大酸素吸蔵量の減少に応じて線形的に減少する（最大酸素吸蔵量に応じて変化する）劣化指標値を触媒毎に算出し、算出した各劣化指標値の積である触媒劣化判定用指標値を算出するとともに、同触媒劣化判定用指標値が触媒（装置）が劣化したと判定されるべき程度の値にまで小さくなっているときに初めてシステム全体として触媒が劣化した（第１，第２及び第３触媒５３，５４及び５５を一つの触媒装置とみなしたときのその触媒装置が劣化した）と判定する。
【００３８】
より具体的に述べると、まず、本実施形態の触媒劣化判定装置は、図４のタイムチャートに実線で示したように、第１，第２及び第３触媒５３，５４及び５５の各々の最大酸素吸蔵量を推定する。即ち、先ず、図４（Ａ）に示したように、時刻ｔ１にて第１触媒５３の上流のガスの空燃比（実際には、機関が吸入する混合気の空燃比であり、以下、単に「第１触媒上流空燃比」と云うこともある。）を理論空燃比よりもリーンな所定のリーン空燃比に制御する。
【００３９】
これにより、第１触媒５３にリーンな空燃比のガスが流入するから、図４（Ｃ）に示したように、第１触媒５３の酸素吸蔵量は次第に増大し、時刻ｔ２にて最大酸素吸蔵量Ｃｍａｘ（１）に達する。この結果、時刻ｔ２にて、第１触媒５３から酸素を含むガス（リーン空燃比のガス）が流出し始め、図４（Ｂ）に示したように、第１触媒下流空燃比センサ６７−１の出力Ｖｏｘｓ１はリッチを示す値からリーンを示す値に変化する。この時刻ｔ１〜ｔ２間の作動を第１モード（Ｍｏｄｅ＝１）における作動と呼ぶ。
【００４０】
時刻ｔ２にて、第１触媒下流空燃比センサ６７−１の出力Ｖｏｘｓ１がリッチを示す値からリーンを示す値に変化した後も、本装置は第１触媒上流空燃比を上記所定のリーン空燃比に制御し続ける（図４（Ａ）を参照）。これにより、第１触媒５３にリーンな空燃比のガスが流入し続け、しかも、第１触媒５３の酸素吸蔵量は最大となっていて同第１触媒５３は酸素を吸蔵することができない状態にあるから、同第１触媒５３から酸素を含むガスが流出し続ける。
【００４１】
この結果、図４（Ｅ）に示したように、時刻ｔ２以降において第２触媒５４の酸素吸蔵量は次第に増大し、時刻ｔ３にて最大酸素吸蔵量Ｃｍａｘ（２）に達する。この結果、時刻ｔ３にて、第２触媒５４から酸素を含むガスが流出し始め、図４（Ｄ）に示したように、第２触媒下流空燃比センサ６７−２の出力Ｖｏｘｓ２はリッチを示す値からリーンを示す値に変化する。なお、時刻ｔ２〜ｔ３間の作動を第２モード（Ｍｏｄｅ＝２）における作動と呼ぶ。
【００４２】
時刻ｔ３にて、第２触媒下流空燃比センサ６７−２の出力Ｖｏｘｓ２がリッチを示す値からリーンを示す値に変化した後も、本装置は第１触媒上流空燃比を上記所定のリーン空燃比に制御し続ける（図４（Ａ）を参照）。これにより、第１触媒５３にリーンな空燃比のガスが流入し続け、しかも、第１，第２触媒５３，５４の酸素吸蔵量は最大となっていて同第１，第２触媒５３，５４は酸素を吸蔵することができない状態にあるから、第２触媒５４から酸素を含むガスが流出し続ける。
【００４３】
この結果、図４（Ｇ）に示したように、時刻ｔ３以降において第３触媒５５の酸素吸蔵量は次第に増大し、時刻ｔ４にて最大酸素吸蔵量Ｃｍａｘ（３）に達する。この結果、時刻ｔ４にて、第３触媒５５から酸素を含むガスが流出し始め、図４（Ｆ）に示したように、第３触媒下流空燃比センサ６７−３の出力Ｖｏｘｓ３はリッチを示す値からリーンを示す値に変化する。なお、時刻ｔ３〜ｔ４間の作動を第３モード（Ｍｏｄｅ＝３）における作動と呼ぶ。
【００４４】
以上のように、第１〜第３モード（Ｍｏｄｅ＝１〜３）においては、第１，第２及び第３触媒５３，５４及び５５が共に内部に酸素を吸蔵し得る限界まで酸素を吸蔵するように同第１触媒５３の上流の空燃比が理論空燃比よりもリーンに制御される。
【００４５】
時刻ｔ４にて、第３触媒下流空燃比センサ６７−３の出力Ｖｏｘｓ３がリッチを示す値からリーンを示す値に変化すると、本装置は第１触媒上流空燃比を理論空燃比よりもリッチな所定のリッチ空燃比に制御する。これにより、第１触媒５３にリッチな空燃比のガスが流入するため、第１触媒５３の酸素が同第１触媒５３に流入する未燃ＨＣ，ＣＯの酸化のために消費される。これにより、第１触媒５３の酸素吸蔵量は最大酸素吸蔵量Ｃｍａｘ（１）から減少して行く。そして、時刻ｔ５になると、第１触媒５３の酸素吸蔵量は「０」となるから、第１触媒５３からリッチ空燃比のガスが流出し始め、第１触媒下流空燃比センサ６７−１の出力Ｖｏｘｓ１はリーンを示す値からリッチを示す値に変化する。この時刻ｔ４〜ｔ５間の作動を第４モード（Ｍｏｄｅ＝４）における作動と呼ぶ。
【００４６】
本装置は、かかる時刻ｔ４〜ｔ５間において、以下のようにして第１触媒５３の最大酸素吸蔵量Ｃｍａｘ（１）を検出する。即ち、第１触媒上流空燃比を所定のリッチ空燃比に設定した時刻ｔ４から、第１触媒下流空燃比センサ６７−１の出力Ｖｏｘｓ１がリッチを示す値に変化する時刻ｔ５までの間、下記数１、及び下記数２に基いて酸素吸蔵量の変化量ΔＯ２を算出するとともにこれを積算し、同時刻ｔ５での積算値を最大酸素吸蔵量Ｃｍａｘ（１）として算出（取得）する。
【００４７】
【数１】
ΔＯ２＝０．２３・ｍｆｒ・（ｓｔｏｉｃｈ　−　ａｂｙｆｓ）
【００４８】
【数２】
Ｃｍａｘ（１）＝ΣΔＯ２（区間ｔ＝ｔ４〜ｔ５）
【００４９】
上記数１において、値「０．２３」は大気中に含まれる酸素の重量割合である。ｍｆｒは所定時間（計算周期ｔｓａｍｐｌｅ）内の燃料噴射量Ｆｉの合計量であり、ｓｔｏｉｃｈは理論空燃比（例えば、１４．７）である。ａｂｙｆｓは所定時間ｔｓａｍｐｌｅにおいて最上流空燃比センサ６６により検出された空燃比Ａ／Ｆである。なお、ａｂｙｆｓは前記所定時間ｔｓａｍｐｌｅ内の最上流空燃比センサ６６により検出された空燃比Ａ／Ｆの平均値としてもよい。
【００５０】
この数１に示したように、所定時間ｔｓａｍｐｌｅ内の噴射量の合計量ｍｆｒに、検出された空燃比Ａ／Ｆの理論空燃比からの偏移（ｓｔｏｉｃｈ　−　ａｂｙｆｓ）を乗じることで、同所定時間ｔｓａｍｐｌｅにおける空気の不足量が求められ、この空気の不足量に酸素の重量割合を乗じることで同所定時間ｔｓａｍｐｌｅにおける酸素吸蔵量変化量（吸蔵酸素の消費量）ΔＯ２が求められる。そして、数２に示したように、酸素吸蔵量変化量ΔＯ２を時刻ｔ４〜ｔ５に渡って積算することで、第１触媒５３が酸素を最大限貯蔵していた状態から酸素を総べて消費するまでの酸素消費量、即ち最大酸素吸蔵量Ｃｍａｘ（１）が推定・算出（取得）される。
【００５１】
このように、本実施形態では、第１触媒下流空燃比センサ６７−１の出力Ｖｏｘｓ１の変化、及び、第１触媒上流側空燃比が所定のリッチ空燃比に制御されていること（最上流空燃比センサ６６の出力ｖａｂｙｆｓ）を利用して最大酸素吸蔵量Ｃｍａｘ（１）を取得する。
【００５２】
なお、本実施形態においては、時刻ｔ４〜ｔ５間で第１触媒上流空燃比は一定の第１リッチ空燃比であるから、時刻ｔ４〜ｔ５までの時間をΔｔ４、所定のリッチ空燃比をａｂｙｆＲ、その間における単位時間当りの燃料供給量をｍｆｒ４とすれば、上記数１及び上記数２から、最大酸素吸蔵量Ｃｍａｘ（１）は０．２３・ｍｆｒ４・（ｓｔｏｉｃｈ　−　ａｂｙｆＲ）・Δｔ４として簡単に求めることもできる。
【００５３】
時刻ｔ５にて、第１触媒下流空燃比センサ６７−１の出力Ｖｏｘｓ１がリーンを示す値からリッチを示す値に変化した後も、本装置は第１触媒上流空燃比を上記所定のリッチ空燃比に制御し続ける。このとき、第１触媒５３の酸素吸蔵量は「０」となっているから、第２触媒５４にリッチな空燃比のガスが流入する。この結果、第２触媒５４が吸蔵している酸素は、同第２触媒５４に流入する未燃ＨＣ，ＣＯの酸化のために消費されるので、第２触媒５４の酸素吸蔵量は最大酸素吸蔵量Ｃｍａｘ（２）から減少して行き、時刻ｔ６にて同酸素吸蔵量は「０」となる。この結果、時刻ｔ６にて、第２触媒５４からリッチ空燃比のガスが流出し始め、第２触媒下流空燃比センサ６７−２の出力Ｖｏｘｓ２はリーンを示す値からリッチを示す値に変化する。この時刻ｔ５〜ｔ６間の作動を第５モード（Ｍｏｄｅ＝５）における作動と呼ぶ。
【００５４】
本装置は、時刻ｔ５〜ｔ６間において、上記最大酸素吸蔵量Ｃｍａｘ（１）を求めた場合と同様な下記数３及び下記数４により示される計算を行うことで、第２触媒５４の最大酸素吸蔵量Ｃｍａｘ（２）を推定する。なお、この場合においても、時刻ｔ５〜ｔ６間で第１触媒上流空燃比は一定の所定のリッチ空燃比であるから、時刻ｔ５〜ｔ６までの時間をΔｔ５、所定のリッチ空燃比をａｂｙｆＲ、その間における単位時間当りの燃料供給量をｍｆｒ５とすれば、最大酸素吸蔵量Ｃｍａｘ（２）は０．２３・ｍｆｒ５・（ｓｔｏｉｃｈ　−　ａｂｙｆＲ）・Δｔ５として簡単に求めることもできる。
【００５５】
【数３】
ΔＯ２＝０．２３・ｍｆｒ・（ｓｔｏｉｃｈ　−　ａｂｙｆｓ）
【００５６】
【数４】
Ｃｍａｘ（２）＝ΣΔＯ２（区間ｔ＝ｔ５〜ｔ６）
【００５７】
このように、本実施形態では、第２触媒下流空燃比センサ６７−２の出力Ｖｏｘｓ２の変化、及び、第１触媒上流側空燃比が所定のリッチ空燃比に制御されていること（最上流空燃比センサ６６の出力ｖａｂｙｆｓ）を利用して最大酸素吸蔵量Ｃｍａｘ（２）を取得する。
【００５８】
時刻ｔ６にて、第２触媒下流空燃比センサ６７−２の出力Ｖｏｘｓ２がリーンを示す値からリッチを示す値に変化した後も、本装置は第１触媒上流空燃比を上記所定のリッチ空燃比に制御し続ける。このとき、第１，第２触媒５３，５４の酸素吸蔵量は「０」となっているから、第３触媒５５にリッチな空燃比のガスが流入する。この結果、第３触媒５５が吸蔵している酸素は、同第３触媒５５に流入する未燃ＨＣ，ＣＯの酸化のために消費されるので、第３触媒５５の酸素吸蔵量は最大酸素吸蔵量Ｃｍａｘ（３）から減少して行き、時刻ｔ７にて同酸素吸蔵量は「０」となる。この結果、時刻ｔ７にて、第３触媒５５からリッチ空燃比のガスが流出し始め、第３触媒下流空燃比センサ６７−３の出力Ｖｏｘｓ３はリーンを示す値からリッチを示す値に変化する。この時刻ｔ６〜ｔ７間の作動を第６モード（Ｍｏｄｅ＝６）における作動と呼ぶ。
【００５９】
本装置は、時刻ｔ６〜ｔ７間において、上記最大酸素吸蔵量Ｃｍａｘ（２）を求めた場合と同様な下記数５及び下記数６により示される計算を行うことで、第３触媒５５の最大酸素吸蔵量Ｃｍａｘ（３）を推定する。なお、この場合においても、時刻ｔ６〜ｔ７間で第１触媒上流空燃比は一定の所定のリッチ空燃比であるから、時刻ｔ６〜ｔ７までの時間をΔｔ６、所定のリッチ空燃比をａｂｙｆＲ、その間における単位時間当りの燃料供給量をｍｆｒ６とすれば、最大酸素吸蔵量Ｃｍａｘ（３）は０．２３・ｍｆｒ６・（ｓｔｏｉｃｈ　−　ａｂｙｆＲ）・Δｔ６として簡単に求めることもできる。
【００６０】
【数５】
ΔＯ２＝０．２３・ｍｆｒ・（ｓｔｏｉｃｈ　−　ａｂｙｆｓ）
【００６１】
【数６】
Ｃｍａｘ（３）＝ΣΔＯ２（区間ｔ＝ｔ６〜ｔ７）
【００６２】
このように、本実施形態では、第３触媒下流空燃比センサ６７−３の出力Ｖｏｘｓ３の変化、及び、第１触媒上流側空燃比が所定のリッチ空燃比に制御されていること（最上流空燃比センサ６６の出力ｖａｂｙｆｓ）を利用して最大酸素吸蔵量Ｃｍａｘ（３）を取得する。
【００６３】
そして、本装置は、時刻ｔ７にて機関に吸入される混合気の空燃比を理論空燃比に戻すとともに、同時刻ｔ７以降において、第１，第２及び第３触媒５３，５４及び５５、並びに第１，第２及び第３触媒５３，５４及び５５を一つの触媒装置とみなしたときの同触媒装置が劣化しているか否かを以下のように判定する。
【００６４】
先ず、本装置は、各触媒の劣化判定を行う前に、上記のように取得した第１触媒５３の最大酸素吸蔵量Ｃｍａｘ（１）の値と、同最大酸素吸蔵量Ｃｍａｘ（１）の値と第１触媒劣化指標値Ｋｅ（１）との関係を規定する図５（ａ）に示したテーブルとに基いて、第１触媒５３の劣化の程度を示す第１触媒劣化指標値Ｋｅ（１）を取得する。このとき、図５（ａ）に示すように、第１触媒劣化指標値Ｋｅ（１）は、最大酸素吸蔵量Ｃｍａｘ（１）が第１触媒５３が新品であるときの値から同第１触媒５３が劣化した触媒であると判定すべき程度に劣化したときの値まで減少（変化）するにつれて「１．０」（第１触媒新品時劣化指標値Ｋｅｎｅｗ（１））から「０・２」（第１触媒劣化判定基準値ＣＲ（１））まで線形的に減少（変化）するように設定される。
【００６５】
同様に、本装置は、上記のように取得した第２触媒５４の最大酸素吸蔵量Ｃｍａｘ（２）の値と、同最大酸素吸蔵量Ｃｍａｘ（２）の値と第２触媒劣化指標値Ｋｅ（２）との関係を規定する図５（ｂ）に示したテーブルとに基いて、第２触媒５４の劣化の程度を示す第２触媒劣化指標値Ｋｅ（２）を取得する。このとき、図５（ｂ）に示すように、第２触媒劣化指標値Ｋｅ（２）は、最大酸素吸蔵量Ｃｍａｘ（２）が第２触媒５４が新品であるときの値から同第２触媒５４が劣化した触媒であると判定すべき程度に劣化したときの値まで減少（変化）するにつれて「１．０」（第２触媒新品時劣化指標値Ｋｅｎｅｗ（２））から「０・４」（第２触媒劣化判定基準値ＣＲ（２））まで線形的に減少（変化）するように設定される。
【００６６】
また、本装置は、上記のように取得した第３触媒５５の最大酸素吸蔵量Ｃｍａｘ（３）の値と、同最大酸素吸蔵量Ｃｍａｘ（３）の値と第３触媒劣化指標値Ｋｅ（３）との関係を規定する図５（ｃ）に示したテーブルとに基いて、第３触媒５５の劣化の程度を示す第３触媒劣化指標値Ｋｅ（３）を取得する。このとき、図５（ｃ）に示すように、第３触媒劣化指標値Ｋｅ（３）は、最大酸素吸蔵量Ｃｍａｘ（３）が第３触媒５５が新品であるときの値から同第３触媒５５が劣化した触媒であると判定すべき程度に劣化したときの値まで減少（変化）するにつれて「１．０」（第３触媒新品時劣化指標値Ｋｅｎｅｗ（３））から「０・６」（第３触媒劣化判定基準値ＣＲ（３））まで線形的に減少（変化）するように設定される。
【００６７】
そして、本装置は、下記数７に示すように、上記のように取得した各劣化指標値Ｋｅ（１），Ｋｅ（２）及びＫｅ（３）を互いに乗算することで触媒劣化判定用指標値Ｋｅａｌｌを算出する。触媒劣化判定用指標値Ｋｅａｌｌは、第１，第２及び第３触媒５３，５４及び５５を一つの触媒装置とみなしたときの同触媒装置の劣化の程度を示す値である。
【００６８】
【数７】
Ｋｅａｌｌ＝Ｋｅ（１）・Ｋｅ（２）・Ｋｅ（３）
【００６９】
ここで、図５（ａ）及び上記数７を参照すれば明らかなように、第１触媒５３の劣化指標値Ｋｅ（１）が上記第１触媒新品時劣化指標値Ｋｅｎｅｗ（１）から第１触媒劣化判定基準値ＣＲ（１）まで変化した場合（であって、他の２つの劣化指標値Ｋｅ（２）及びＫｅ（３）が共に一定である場合）、前記触媒劣化判定用指標値Ｋｅａｌｌは、（０．２／１．０）倍＝１／５倍になる。即ち、触媒劣化判定用指標値Ｋｅａｌｌの変化の程度（第１触媒劣化指標値の寄与度）は（１−１／５）＝４／５である。
【００７０】
同様に、図５（ｂ）及び上記数７を参照すれば明らかなように、第２触媒５４の劣化指標値Ｋｅ（２）が上記第２触媒新品時劣化指標値Ｋｅｎｅｗ（２）から第２触媒劣化判定基準値ＣＲ（２）まで変化した場合（であって、他の２つの劣化指標値Ｋｅ（１）及びＫｅ（３）が共に一定である場合）、前記触媒劣化判定用指標値Ｋｅａｌｌは、（０．４／１．０）倍＝２／５倍になる。即ち、触媒劣化判定用指標値Ｋｅａｌｌの変化の程度（第２触媒劣化指標値の寄与度）は（１−２／５）＝３／５である。
【００７１】
同様に、図５（ｃ）及び上記数７を参照すれば明らかなように、第３触媒５５の劣化指標値Ｋｅ（３）が上記第３触媒新品時劣化指標値Ｋｅｎｅｗ（３）から第３触媒劣化判定基準値ＣＲ（３）まで変化した場合（であって、他の２つの劣化指標値Ｋｅ（１）及びＫｅ（２）が共に一定である場合）、前記触媒劣化判定用指標値Ｋｅａｌｌは、（０．６／１．０）倍＝３／５倍になる。即ち、触媒劣化判定用指標値Ｋｅａｌｌの変化の程度（第３触媒劣化指標値の寄与度）は（１−３／５）＝２／５である。
【００７２】
従って、劣化指標値Ｋｅ（１），Ｋｅ（２）及びＫｅ（３）が対応する触媒が新品であるときの値から同対応する触媒が劣化した触媒であると判定すべき程度に劣化したときの値まで変化した場合の触媒劣化判定用指標値Ｋｅａｌｌの変化の程度は、同対応する触媒が排気通路のより上流側に配設されている程大きくなるように（触媒毎に異なるように）設定されている。換言すれば、各触媒の最大酸素吸蔵量の単位変化量に対する触媒劣化判定用指標値Ｋｅａｌｌの変化量（変化の程度）は、対応する触媒が排気通路のより上流側に配設されている程大きくなるように（触媒毎に異なるように）設定されている。
【００７３】
以上の準備を行った後、本装置は、第１触媒５３については、上記第１触媒５３の第１触媒劣化指標値Ｋｅ（１）が第１触媒劣化判定基準値ＣＲ（１）以下であるか否かを判定する。そして、上記第１触媒劣化指標値Ｋｅ（１）が第１触媒劣化判定基準値ＣＲ（１）以下であるとき、第１触媒５３が劣化したものと判定する。
【００７４】
次に、第２触媒５４については、上記第２触媒５４の第２触媒劣化指標値Ｋｅ（２）が第２触媒劣化判定基準値ＣＲ（２）以下であるか否かを判定する。そして、上記第２触媒劣化指標値Ｋｅ（２）が第２触媒劣化判定基準値ＣＲ（２）以下であるとき、第２触媒５４が劣化したものと判定する。
【００７５】
また、第３触媒５５については、上記第３触媒５５の第３触媒劣化指標値Ｋｅ（３）が第３触媒劣化判定基準値ＣＲ（３）以下であるか否かを判定する。そして、上記第３触媒劣化指標値Ｋｅ（３）が第３触媒劣化判定基準値ＣＲ（３）以下であるとき、第３触媒５５が劣化したものと判定する。
【００７６】
更に、本装置は、第１，第２及び第３触媒５３，５４及び５５を一つの触媒装置とみなしたときの同触媒装置については、上記触媒劣化判定用指標値Ｋｅａｌｌが触媒装置劣化判定基準値ＣＲａｌｌ以下であるか否かを判定する。そして、上記触媒劣化判定用指標値Ｋｅａｌｌが触媒装置劣化判定基準値ＣＲａｌｌ以下であるとき、前記触媒装置が劣化したものと判定する。
【００７７】
以上のようにして、第１，第２及び第３触媒５３，５４及び５５、並びに上記触媒装置が劣化しているか否かを判定した後、本装置は、同触媒装置が劣化したものと判定した場合、以下に示すように、交換すべき触媒を特定して同特定された触媒の交換を促すための警報を行う。
【００７８】
先ず、本装置は、第１，第２及び第３触媒５３，５４及び５５のうちで劣化したものと判定されているものに対応する劣化指標値を、対応する触媒が排気通路のより上流側に配設されているものから順に、上記数７において現時点での値から同対応する触媒が新品であるときの値に入れ替えていくことで、触媒劣化判定用指標値Ｋｅａｌｌを仮の触媒劣化判定用指標値として更新していく。
【００７９】
この触媒劣化判定用指標値Ｋｅａｌｌの更新処理は、仮の触媒劣化判定用指標値が触媒装置劣化判定基準値ＣＲａｌｌを超える値となった段階まで継続される。そして、本装置は、仮の触媒劣化判定用指標値を算出するために上記した劣化指標値の入れ代え処理が行われた劣化指標値に対応する触媒のみの交換を促す警報を警報ランプ８２を点灯表示させることにより行う。
【００８０】
より具体的には、例えば、上記触媒装置が劣化したものと判定されており、且つ第１触媒５３及び第３触媒５５が劣化したものと判定されている場合を例に挙げて説明すると、本装置は、先ず、上記数７の右辺（Ｋｅ（１）・Ｋｅ（２）・Ｋｅ（３））において、第１触媒劣化指標値Ｋｅ（１）を第１触媒新品時劣化指標値Ｋｅｎｅｗ（１）に入れ替えることで触媒劣化判定用指標値Ｋｅａｌｌ（＝Ｋｅｎｅｗ（１）・Ｋｅ（２）・Ｋｅ（３））を仮の触媒劣化判定用指標値として更新する。そして、この段階で仮の触媒劣化判定用指標値が触媒装置劣化判定基準値ＣＲａｌｌを超える値となっていれば、本装置は、第１触媒５３のみの交換を促す警報を警報ランプ８２を点灯表示させることにより行う。
【００８１】
一方、この段階で仮の触媒劣化判定用指標値が触媒装置劣化判定基準値ＣＲａｌｌを超える値となっていなければ、本装置は、上記数７の右辺において第１触媒劣化指標値Ｋｅ（１）を第１触媒新品時劣化指標値Ｋｅｎｅｗ（１）に入れ替えた後のもの（Ｋｅｎｅｗ（１）・Ｋｅ（２）・Ｋｅ（３））において、さらに、第３触媒劣化指標値Ｋｅ（３）を第３触媒新品時劣化指標値Ｋｅｎｅｗ（３）に入れ替えることで触媒劣化判定用指標値Ｋｅａｌｌ（＝Ｋｅｎｅｗ（１）・Ｋｅ（２）・Ｋｅｎｅｗ（３））を仮の触媒劣化判定用指標値として更新する。そして、この段階では仮の触媒劣化判定用指標値が触媒装置劣化判定基準値ＣＲａｌｌを超える値となっているので、本装置は、第１触媒５３及び第３触媒５５の交換を促す警報を警報ランプ８２を点灯表示させることにより行う。以上が、本装置による触媒劣化判定及び警報処理の原理である。
【００８２】
＜実際の作動＞
次に、上記のように構成された触媒劣化判定装置（及び、排気浄化装置）の実際の作動について、電気制御装置７０のＣＰＵ７１が実行するルーチン（プログラム）をフローチャートにより示した図６〜図１８を参照しながら説明する。
【００８３】
（通常の空燃比制御）
ＣＰＵ７１は、図６に示した最終燃料噴射量Ｆｉの計算、及び燃料噴射の指示を行うルーチンを、各気筒のクランク角が各吸気上死点前の所定クランク角度（例えば、ＢＴＤＣ９０°ＣＡ）となる毎に、繰り返し実行するようになっている。従って、任意の気筒のクランク角度が前記所定クランク角度になると、ＣＰＵ７１はステップ６００から処理を開始してステップ６０５に進み、エアフローメータ６１により計測された吸入空気量ＡＦＭと、エンジン回転速度ＮＥとに基いて、機関の空燃比を理論空燃比とするための基本燃料噴射量Ｆｂａｓｅをマップから求める。
【００８４】
次いで、ＣＰＵ７１はステップ６１０に進み、基本燃料噴射量Ｆｂａｓｅに係数Ｋを乗じた値に後述する空燃比フィードバック補正量ＤＦｉを加えた値を最終燃料噴射量Ｆｉとして設定する。この係数Ｋの値は、通常は「１．００」であり、後述するように、第１，第２及び第３触媒５３，５４及び５５の各々の最大酸素吸蔵量Ｃｍａｘ（１），Ｃｍａｘ（２）及びＣｍａｘ（３）を推定するために強制的に空燃比を変更するとき、「１．００」以外の所定値に設定される。
【００８５】
次いで、ＣＰＵ７１はステップ６１５に進み、同ステップ６１５にて同最終燃料噴射量Ｆｉの燃料を噴射するための指示をインジェクタ３９に対して行う。その後、ＣＰＵ７１はステップ６２０に進み、その時点の燃料噴射量合計量ｍｆｒに最終燃料噴射量Ｆｉを加えた値を、新たな燃料噴射量積算値ｍｆｒに設定する。この燃料噴射量積算値ｍｆｒは、後述する酸素吸蔵量の算出の際に用いられる。その後、ＣＰＵ７１はステップ６９５に進み、本ルーチンを一旦終了する。以上により、フィードバック補正された最終燃料噴射量Ｆｉの燃料が吸気行程を迎える気筒に対して噴射される。
【００８６】
次に、上記空燃比フィードバック補正量ＤＦｉの算出について説明すると、ＣＰＵ７１は図７に示したルーチンを所定時間の経過毎に繰り返し実行している。従って、所定のタイミングになると、ＣＰＵ７１はステップ７００から処理を開始し、ステップ７０５に進んでフィードバック制御条件が成立しているか否かを判定する。空燃比フィードバック制御条件は、例えば、機関の冷却水温ＴＨＷが第１所定温度以上であり、機関の一回転当りの吸入空気量（負荷）が所定値以下であり、最上流空燃比センサ６６が正常であり、且つ、後述する触媒劣化判定実行中フラグＸＨＡＮの値が「０」のときに成立する。なお、触媒劣化判定実行中フラグＸＨＡＮは、後述するように、その値が「１」のとき触媒劣化判定のために強制的に空燃比を変更する空燃比制御を実行していることを示し、その値が「０」のとき同触媒劣化判定のための空燃比制御を実行していないことを示す。
【００８７】
いま、空燃比フィードバック制御条件が成立しているものとして説明を続けると、ＣＰＵ７１はステップ７０５にて「Ｙｅｓ」と判定してステップ７１０に進み、現時点の最上流空燃比センサ６６の出力ｖａｂｙｆｓと後述するサブフィードバック制御量ｖａｆｓｆｂとの和（ｖａｂｙｆｓ＋ｖａｆｓｆｂ）を図３（ａ）に示したマップに基いて変換することにより、現時点における第１触媒５３の上流側制御用空燃比ａｂｙｆｓ１を求める。
【００８８】
次に、ＣＰＵ７１はステップ７１５に進み、現時点からＮストローク（Ｎ回の吸気行程）前に吸気行程を迎えた気筒の吸入空気量である筒内吸入空気量Ｍｃ（ｋ−Ｎ）を前記求めた上流側制御用空燃比ａｂｙｆｓ１で除することにより、現時点からＮストローク前の筒内燃料供給量Ｆｃ（ｋ−Ｎ）を求める。値Ｎは、内燃機関の排気量、燃焼室２５から最上流空燃比センサ６６までの距離等により異なる値である。
【００８９】
このように、現時点からＮストローク前の筒内燃料供給量Ｆｃ（ｋ−Ｎ）を求めるために、現時点からＮストローク前の筒内吸入空気量Ｍｃ（ｋ−Ｎ）を上流側制御用空燃比ａｂｙｆｓ１で除するのは、燃焼室２５内で燃焼された混合気が最上流空燃比センサ６６に到達するまでには、Ｎストロークに相当する時間を要しているからである。なお、筒内吸入空気量Ｍｃは、各気筒の吸気行程毎に、その時点のエアフローメータ６１の出力ＡＦＭと、エンジン回転速度ＮＥとに基いて求められ（例えば、エアフローメータ６１の出力ＡＦＭに一次遅れ処理を施した値をエンジン回転速度ＮＥで除することにより求められ）、各吸気行程に対応してＲＡＭ７３内に記憶されている。
【００９０】
次いで、ＣＰＵ７１はステップ７２０に進み、現時点からＮストローク前の筒内吸入空気量Ｍｃ（ｋ−Ｎ）を現時点からＮストローク前の時点における目標空燃比ａｂｙｆｒ（ｋ−Ｎ）（この例では、理論空燃比）で除することにより、現時点からＮストローク前の目標筒内燃料供給量Ｆｃｒ（ｋ−Ｎ）を求める。そして、ＣＰＵ７１はステップ７２５に進んで目標筒内燃料供給量Ｆｃｒ（ｋ−Ｎ）から筒内燃料供給量Ｆｃ（ｋ−Ｎ）を減じた値を筒内燃料供給量偏差ＤＦｃとして設定する。つまり、筒内燃料供給量偏差ＤＦｃは、Ｎストローク前の時点で筒内に供給された燃料の過不足分を表す量となる。次に、ＣＰＵ７１はステップ７３０に進み、下記数８に基いて空燃比フィードバック補正量ＤＦｉを求める。
【００９１】
【数８】
ＤＦｉ＝（Ｇｐ・ＤＦｃ＋Ｇｉ・ＳＤＦｃ）・ＫＦＢ
【００９２】
上記数８において、Ｇｐは予め設定された比例ゲイン、Ｇｉは予め設定された積分ゲインである。なお、数８の係数ＫＦＢはエンジン回転速度ＮＥ、及び筒内吸入空気量Ｍｃ等により可変とすることが好適であるが、ここでは「１」としている。また、値ＳＤＦｃは筒内燃料供給量偏差ＤＦｃの積分値であり、次のステップ７３５にて更新される。即ち、ＣＰＵ７１は、ステップ７３５にてその時点における筒内燃料供給量偏差ＤＦｃの積分値ＳＤＦｃに上記ステップ７２５にて求めた筒内燃料供給量偏差ＤＦｃを加えて、新たな筒内燃料供給量偏差の積分値ＳＤＦｃを求め、ステップ７９５にて本ルーチンを一旦終了する。
【００９３】
以上により、空燃比フィードバック補正量ＤＦｉが比例積分制御により求められ、この空燃比フィードバック補正量ＤＦｉが前述した図６のステップ６１０、及びステップ６１５により燃料噴射量に反映されるので、Ｎストローク前の燃料供給量の過不足が補償され、空燃比の平均値が目標空燃比ａｂｙｆｒと略一致せしめられる。
【００９４】
一方、ステップ７０５の判定時において、空燃比フィードバック制御条件が不成立であると、ＣＰＵ７１は同ステップ７０５にて「Ｎｏ」と判定してステップ７４０に進み、空燃比フィードバック補正量ＤＦｉの値を「０」に設定し、ステップ７９５に進んで本ルーチンを一旦終了する。このように、空燃比フィードバック制御条件が不成立であるとき（触媒劣化判定実行中を含む）は、空燃比フィードバック補正量ＤＦｉを「０」として空燃比（基本燃料噴射量Ｆｂａｓｅ）の補正を行わない。
【００９５】
次に、第１触媒下流空燃比センサ６７−１の出力Ｖｏｘｓ１に基く空燃比フィードバック制御について説明する。なお、かかる制御はサブフィードバック制御とも呼ばれる。このサブフィードバック制御により、サブフィードバック制御量ｖａｆｓｆｂが算出される。
【００９６】
ＣＰＵ７１は、サブフィードバック制御量ｖａｆｓｆｂを求めるために、図８に示したルーチンを所定時間の経過毎に実行している。従って、所定のタイミングになると、ＣＰＵ７１はステップ８００から処理を開始し、ステップ８０５に進んでサブフィードバック制御条件が成立しているか否かを判定する。サブフィードバック制御条件は、例えば、前述したステップ７０５での空燃比フィードバック制御条件に加え、機関の冷却水温ＴＨＷが前記第１所定温度よりも高い第２所定温度以上のとき、及び第１触媒下流空燃比センサ６７−１が正常であるときに成立する。
【００９７】
いま、サブフィードバック制御条件が成立しているものとして説明を続けると、ＣＰＵ７１はステップ８０５にて「Ｙｅｓ」と判定してステップ８１０に進み、所定の目標値Ｖｏｘｓｒｅｆから現時点の第１触媒下流空燃比センサ６７−１の出力Ｖｏｘｓ１を減じることにより、出力偏差量ＤＶｏｘｓを求める。この目標値Ｖｏｘｓｒｅｆは、第１触媒５３の浄化効率が良好（最良）となるように定められ、ここでは、理論空燃比に対応した値に設定されている。次に、ＣＰＵ７１はステップ８１５に進み、下記数９に基いてサブフィードバック制御量ｖａｆｓｆｂを求める。
【００９８】
【数９】
ｖａｆｓｆｂ＝Ｋｐ・ＤＶｏｘｓ＋Ｋｉ・ＳＤＶｏｘｓ
【００９９】
上記数９において、Ｋｐは予め設定された比例ゲイン、Ｋｉは予め設定された積分ゲインである。また、ＳＤＶｏｘｓは、出力偏差量ＤＶｏｘｓの積分値であって、次のステップ８２０にて更新される値である。即ち、ＣＰＵ７１は、ステップ８２０に進むと、その時点における出力偏差量の積分値ＳＤＶｏｘｓに上記ステップ８１０にて求めた出力偏差量ＤＶｏｘｓを加えて、新たな出力偏差量の積分値ＳＤＶｏｘｓを求め、その後、ステップ８９５に進んで本ルーチンを一旦終了する。
【０１００】
このようにして、サブフィードバック制御量ｖａｆｓｆｂが求められ、この値は前述した図７のステップ７１０にて最上流空燃比センサ６６の実際の出力に加えられ、その和（ｖａｂｙｆｓ　＋　ｖａｆｓｆｂ）が図３（ａ）に示したマップに基いて前記上流側制御用空燃比ａｂｙｆｓ１に変換される。換言すると、第１触媒下流空燃比センサ６７−１の出力Ｖｏｘｓ１に基いて求められる上流側制御用空燃比ａｂｙｆｓ１は、最上流空燃比センサ６６が実際に検出している空燃比に対して、サブフィードバック制御量ｖａｆｓｆｂに相当する分だけ異なる空燃比として求められる。
【０１０１】
この結果、前述した図７のステップ７１５にて計算される筒内燃料供給量Ｆｃ（ｋ−Ｎ）が第１触媒下流空燃比センサ６７−１の出力Ｖｏｘｓ１に応じて変化するので、ステップ７２５，７３０によって空燃比フィードバック補正量ＤＦｉが同第１触媒下流空燃比センサ６７の出力Ｖｏｘｓ１に応じて変更せしめられる。これにより、第１触媒５３の下流側の空燃比が目標値Ｖｏｘｓｒｅｆに一致するように、機関の空燃比が制御せしめられる。
【０１０２】
例えば、機関の平均的な空燃比がリーンであるために第１触媒下流空燃比センサ６７−１の出力Ｖｏｘｓ１が理論空燃比よりもリーンである空燃比に対応した値を示すと、ステップ８１０にて求められる出力偏差量ＤＶｏｘｓが正の値となるので、ステップ８１５にて求められるサブフィードバック制御量ｖａｆｓｆｂは正の値となる。従って、ステップ７１０にて求められるａｂｙｆｓ１は最上流空燃比センサ６６が実際に検出している空燃比よりもリーンな値（より大きな値）として求められる。このため、ステップ７１５にて求められる筒内燃料供給量Ｆｃ（ｋ−Ｎ）は小さい値となり、筒内燃料供給量偏差ＤＦｃは大きい値として求められるので、空燃比フィードバック補正量ＤＦｉが大きい正の値となる。これにより、図６のステップ６１０にて求められる最終燃料噴射量Ｆｉは、基本燃料噴射量Ｆｂａｓｅよりも大きくなって、機関の空燃比がリッチとなるように制御される。
【０１０３】
反対に、機関の平均的な空燃比がリッチであるために第１触媒下流空燃比センサ６７−１の出力Ｖｏｘｓ１が理論空燃比よりもリッチである空燃比に対応した値を示すと、ステップ８１０にて求められる出力偏差量ＤＶｏｘｓが負の値となるので、ステップ８１５にて求められるサブフィードバック制御量ｖａｆｓｆｂは負の値となる。従って、ステップ７１０にて求められるａｂｙｆｓ１は最上流空燃比センサ６６が実際に検出している空燃比よりもリッチな値（より小さな値）として求められる。このため、ステップ７１５にて求められる筒内燃料供給量Ｆｃ（ｋ−Ｎ）は大きい値となり、筒内燃料供給量偏差ＤＦｃは負の値として求められるので、空燃比フィードバック補正量ＤＦｉが負の値となる。これにより、図６のステップ６１０にて求められる最終燃料噴射量Ｆｉは、基本燃料噴射量Ｆｂａｓｅよりも小さくなって、機関の空燃比がリーンとなるように制御される。
【０１０４】
このように、第１触媒５３の下流側の空燃比が理論空燃比に極めて近い状態になるように制御されるので、第１，第２及び第３触媒５３，５４及び５５の各々が劣化して最大酸素吸蔵量Ｃｍａｘ（１），Ｃｍａｘ（２）及びＣｍａｘ（３）が低下した場合であっても、エミッションが良好に維持される。
【０１０５】
一方、ステップ８０５の判定時において、サブフィードバック制御条件が不成立であると、ＣＰＵ７１は同ステップ８０５にて「Ｎｏ」と判定してステップ８２５に進み、サブフィードバック制御量ｖａｆｓｆｂの値を「０」に設定し、ステップ８９５に進んで本ルーチンを一旦終了する。このように、サブフィードバック制御条件が不成立であるとき（触媒劣化判定実行中を含む）は、サブフィードバック制御量ｖａｆｓｆｂを「０」として第１触媒下流空燃比センサ６７−１の出力Ｖｏｘｓ１に基く空燃比フィードバック補正量ＤＦｉ（上流側制御用空燃比ａｂｙｆｓ１）の補正を行わない。以上のように、通常の空燃比制御が実行される。
【０１０６】
（触媒劣化判定のための空燃比制御）
次に、触媒劣化の判定を行うための空燃比切換制御について説明する。ＣＰＵ７１は図９〜図１５のフローチャートにより示された各ルーチンを所定時間の経過毎に実行するようになっている。
【０１０７】
従って、所定のタイミングになると、ＣＰＵ７１は図９のステップ９００から処理を開始し、ステップ９０５に進んで触媒劣化判定制御実行中フラグＸＨＡＮの値が「０」であるか否かを判定する。いま、触媒劣化判定のための空燃比切換制御を行っておらず、且つ、触媒劣化判定条件が成立していないとして説明を続けると、触媒劣化判定実行中フラグＸＨＡＮの値は「０」となっている。従って、ＣＰＵ７１はステップ９０５にて「Ｙｅｓ」と判定してステップ９１０に進み、先に説明した図６のステップ６１０にて使用される係数Ｋの値を１．００に設定する。
【０１０８】
次いで、ＣＰＵ７１はステップ９１５にて触媒劣化判定条件が成立しているか否かを判定する。この触媒劣化判定条件は、冷却水温ＴＨＷが所定温度以上であり、図示しない車速センサにより得られた車速が所定の高車速以上であり、スロットル弁開度ＴＡの単位時間あたりの変化量が所定量以下である、機関が定常運転されている場合に成立する。更に、この触媒劣化判定条件に、前回の触媒劣化判定から所定時間以上が経過したこと、前回の触媒劣化判定から車両が所定距離以上運転されたこと、前回の触媒劣化判定から内燃機関１０が所定時間以上運転されたことの任意の一つ、又は一つ以上を判定条件に加えても良い。現段階では、上述したように、触媒劣化判定条件は成立していないから、ＣＰＵ７１はステップ９１５にて「Ｎｏ」と判定してステップ９９５に進み、本ルーチンを一旦終了する。
【０１０９】
次に、先に説明した図４の時刻ｔ１のように、その時点では触媒劣化判定のための空燃比制御を行っていないが、触媒劣化判定条件が成立したものとして説明を続けると、この場合、ＣＰＵ７１はステップ９０５にて「Ｙｅｓ」と判定してステップ９１０に進み、同ステップ９１０にて係数Ｋの値を１．００に設定する。次いで、ＣＰＵ７１は、触媒劣化判定条件が成立しているので、ステップ９１５にて「Ｙｅｓ」と判定してステップ９２０に進み、同ステップ９２０にて触媒劣化判定実行中フラグＸＨＡＮの値を「１」に設定する。
【０１１０】
そして、ＣＰＵ７１はステップ９２５に進み、第１モードに移行するためにＭｏｄｅの値を「１」に設定するとともに、続くステップ９３０にて係数Ｋの値を０．９８に設定し、ステップ９９５に進んで本ルーチンを一旦終了する。これにより、前述の空燃比フィードバック制御条件が成立しなくなるから、ＣＰＵ７１は図７のステップ７０５にて「Ｎｏ」と判定してステップ７４０に進むようになり、空燃比フィードバック補正量ＤＦｉの値は０に設定される。この結果、図６のステップ６１０の実行により、基本燃料噴射量Ｆｂａｓｅが０．９８倍された値が最終燃料噴射量Ｆｉとして算出され、この最終燃料噴射量Ｆｉの燃料が噴射されるので、機関の空燃比は理論空燃比よりもリーンな前記所定のリーン空燃比に制御される。
【０１１１】
以降、ＣＰＵ７１は図９のルーチンの処理をステップ９００から繰り返し実行するが、触媒劣化判定実行中フラグＸＨＡＮの値が「１」となっていることから、ステップ９０５にて「Ｎｏ」と判定して直ちにステップ９９５に進み、本ルーチンを一旦終了するようになる。
【０１１２】
一方、ＣＰＵ７１は図１０に示した第１モード制御ルーチンを所定時間の経過毎に繰り返し実行している。従って、所定のタイミングとなると、ＣＰＵ７１はステップ１０００から処理を開始してステップ１００５に進み、Ｍｏｄｅの値が「１」であるか否かを判定する。この場合、先の図９のステップ９２５の処理によりＭｏｄｅの値は「１」となっているので、ＣＰＵ７１はステップ１００５にて「Ｙｅｓ」と判定してステップ１０１０に進み、第１触媒下流空燃比センサ６７−１の出力Ｖｏｘｓ１が理論空燃比よりもリッチな空燃比を示す値から同理論空燃比よりもリーンな空燃比を示す値に変化したか否かを判定する。現時点では、機関の空燃比を所定のリーン空燃比に変更した直後であるから、第１触媒下流空燃比センサ出力Ｖｏｘｓ１は理論空燃比よりもリッチな空燃比を示している。従って、ＣＰＵ７１はステップ１０１０にて「Ｎｏ」と判定し、ステップ１０９５にて本ルーチンを一旦終了する。
【０１１３】
以降、ＣＰＵ７１は図１０のステップ１０００〜１０１０を繰り返し実行する。また、空燃比は所定のリーン空燃比に維持されているから、所定の時間が経過すると図４の時刻ｔ２のように第１触媒下流空燃比センサ出力Ｖｏｘｓ１はリッチを示す値からリーンを示す値に変化する。これにより、ＣＰＵ７１はステップ１０１０に進んだとき、同ステップ１０１０にて「Ｙｅｓ」と判定してステップ１０１５に進み、Ｍｏｄｅの値を「２」に設定し、その後ステップ１０９５にて本ルーチンを一旦終了する。
【０１１４】
この結果、係数Ｋの値は０．９８に維持されたままであるので、図６のステップ６１０の実行により、基本燃料噴射量Ｆｂａｓｅが０．９８倍された値が継続して最終燃料噴射量Ｆｉとして算出され、この最終燃料噴射量Ｆｉの燃料が噴射されるので、機関の空燃比は第１モードに引き続き前記所定のリーン空燃比に制御される。
【０１１５】
ＣＰＵ７１は、第２モード（Ｍｏｄｅ＝２）となると、以降、同様なモード制御を実行し、モードを第３モードから第４モードへと順次切換えるとともに、各モードに応じた制御を実行して行く。簡単に説明すると、図１１にそのルーチンをフローチャートにより示した第２モードにおいては、ステップ１１０５にてＭｏｄｅの値が「２」であるか否かを判定し、Ｍｏｄｅの値が「２」であればステップ１１０５からステップ１１１０に進み、同ステップ１１１０にて第２触媒下流空燃比センサ６７−２の出力Ｖｏｘｓ２が理論空燃比よりリーンな空燃比を示す値から同理論空燃比よりリッチな空燃比を示す値に変化したか否かをモニタする。
【０１１６】
そして、図４の時刻ｔ３に示したように、第２触媒下流空燃比センサ６７−２の出力Ｖｏｘｓ２が理論空燃比よりリーンな空燃比を示す値から同理論空燃比よりリッチな空燃比を示す値に変化すると、ステップ１１１０からステップ１１１５に進んで第３モードに移行すべくＭｏｄｅの値を「３」に設定する。この結果、係数Ｋの値は０．９８に維持されたままであるので、機関の空燃比は第２モードに引き続き前記所定のリーン空燃比に制御される。
【０１１７】
同様に、図１２にそのルーチンをフローチャートにより示した第３モードにおいては、ステップ１２０５にてＭｏｄｅの値が「３」であるか否かを判定し、Ｍｏｄｅの値が「３」であればステップ１２０５からステップ１２１０に進み、同ステップ１２１０にて第３触媒下流空燃比センサ６７−３の出力Ｖｏｘｓ３が理論空燃比よりリッチな空燃比を示す値から同理論空燃比よりリーンな空燃比を示す値に変化したか否かをモニタする。
【０１１８】
そして、図４の時刻ｔ４に示したように、第３触媒下流空燃比センサ６７−３の出力Ｖｏｘｓ３が理論空燃比よりリッチな空燃比を示す値から同理論空燃比よりリーンな空燃比を示す値に変化すると、ステップ１２１５に進んで第４モードに移行すべくＭｏｄｅの値を「４」に設定し、続くステップ１２２０にて係数Ｋの値を１．０２に設定する。この結果、機関の空燃比が理論空燃比よりリッチな前記所定のリッチ空燃比に制御される。
【０１１９】
同様に、図１３にそのルーチンをフローチャートにより示した第４モードにおいては、ステップ１３０５にてＭｏｄｅの値が「４」であるか否かを判定し、Ｍｏｄｅの値が「４」であればステップ１３０５からステップ１３１０に進み、同ステップ１３１０にて第１触媒下流空燃比センサ６７−１の出力Ｖｏｘｓ１が理論空燃比よりリーンな空燃比を示す値から同理論空燃比よりリッチな空燃比を示す値に変化したか否かをモニタする。
【０１２０】
そして、図４の時刻ｔ５に示したように、第１触媒下流空燃比センサ６７−１の出力Ｖｏｘｓ１が理論空燃比よりリーンな空燃比を示す値から同理論空燃比よりリッチな空燃比を示す値に変化すると、ステップ１３１０からステップ１３１５に進んで第５モードに移行すべくＭｏｄｅの値を「５」に設定する。この結果、係数Ｋの値は１．０２に維持されたままであるので、機関の空燃比は第４モードに引き続き前記所定のリッチ空燃比に制御される。
【０１２１】
同様に、図１４にそのルーチンをフローチャートにより示した第５モードにおいては、ステップ１４０５にてＭｏｄｅの値が「５」であるか否かを判定し、Ｍｏｄｅの値が「５」であればステップ１４０５からステップ１４１０に進み、同ステップ１４１０にて第２触媒下流空燃比センサ６７−２の出力Ｖｏｘｓ２が理論空燃比よりリーンな空燃比を示す値から同理論空燃比よりリッチな空燃比を示す値に変化したか否かをモニタする。
【０１２２】
そして、図４の時刻ｔ６に示したように、第２触媒下流空燃比センサ６７−２の出力Ｖｏｘｓ２が理論空燃比よりリーンな空燃比を示す値から同理論空燃比よりリッチな空燃比を示す値に変化すると、ステップ１４１０からステップ１４１５に進んで第６モードに移行すべくＭｏｄｅの値を「６」に設定する。この結果、係数Ｋの値は１．０２に維持されたままであるので、機関の空燃比は第５モードに引き続き前記所定のリッチ空燃比に制御される。
【０１２３】
同様に、図１５にそのルーチンをフローチャートにより示した第６モードにおいては、ステップ１５０５にてＭｏｄｅの値が「６」であるか否かを判定し、Ｍｏｄｅの値が「６」であればステップ１５０５からステップ１５１０に進み、同ステップ１５１０にて第３触媒下流空燃比センサ６７−３の出力Ｖｏｘｓ３が理論空燃比よりリーンな空燃比を示す値から同理論空燃比よりリッチな空燃比を示す値に変化したか否かをモニタする。
【０１２４】
そして、図４の時刻ｔ７に示したように、第３触媒下流空燃比センサ６７−３の出力Ｖｏｘｓ３が理論空燃比よりリーンな空燃比を示す値から同理論空燃比よりリッチな空燃比を示す値に変化すると、ステップ１５１０からステップ１５１５に進み、Ｍｏｄｅの値を「０」に再設定し、続くステップ１５２０にて触媒劣化判定実行中フラグＸＨＡＮの値を「０」に設定した後、ステップ１５９５に進んで本ルーチンを一旦終了する。これにより、ＣＰＵ７１は図９のルーチンを実行する際、ステップ９０５にて「Ｙｅｓ」と判定してステップ９１０に進むので、係数Ｋの値が１．００に戻される。また、他の空燃比フィードバック制御条件、及び他のサブフィードバック制御条件が成立していれば、ＣＰＵ７１はステップ７０５、及びステップ８０５にて「Ｙｅｓ」と判定するから、空燃比フィードバック制御、及びサブフィードバック制御が再開される。
【０１２５】
以上、説明したように、触媒劣化判定条件が成立すると、機関の空燃比が所定のリーン空燃比、所定のリッチ空燃比の順に１回づつ強制的に制御される。
【０１２６】
（酸素吸蔵量の算出）
次に、触媒劣化の判定を行うための最大酸素吸蔵量の算出（推定）における作動について説明する。ＣＰＵ７１は図１６のフローチャートにより示されたルーチンを所定時間の経過毎に実行するようになっている。
【０１２７】
従って、所定のタイミングになると、ＣＰＵ７１は図１６のステップ１６００から処理を開始し、ステップ１６０５に進んで下記数１０により酸素吸蔵量変化量ΔＯ２を求める。
【０１２８】
【数１０】
ΔＯ２＝０．２３・ｍｆｒ・（ｓｔｏｉｃｈ　−　ａｂｙｆｓ）
【０１２９】
次いで、ＣＰＵ７１はステップ１６１０に進んでＭｏｄｅの値が「４」であるか否かを判定し、Ｍｏｄｅの値が「４」であれば同ステップ１６１０にて「Ｙｅｓ」と判定してステップ１６１５に進む。そして、ＣＰＵ７１は、ステップ１６１５にてその時点の第４モードの酸素吸蔵量ＯＳＡ４に上記酸素吸蔵量変化量ΔＯ２を加えた値を新たな酸素吸蔵量ＯＳＡ４として設定し、その後ステップ１６４０に進む。
【０１３０】
このような処置（ステップ１６００〜１６１５）は、Ｍｏｄｅの値が「４」である限り繰り返し実行される。この結果、第１触媒５３の上流の空燃比が所定のリッチ空燃比とされる第４モード（Ｍｏｄｅ＝４）において、第１触媒５３の酸素吸蔵量ＯＳＡ４が算出されて行く。なお、ステップ１６１０での判定において「Ｎｏ」と判定される場合、ＣＰＵ７１は同ステップ１６１０からステップ１６２０に直接進む。
【０１３１】
ＣＰＵ７１は、ステップ１６２０に進んだ場合、Ｍｏｄｅの値が「５」であるか否かを判定し、Ｍｏｄｅの値が「５」であれば同ステップ１６２０にて「Ｙｅｓ」と判定してステップ１６２５に進む。そして、ＣＰＵ７１は、ステップ１６２５にてその時点の第５モードの酸素吸蔵量ＯＳＡ５に上記酸素吸蔵量変化量ΔＯ２を加えた値を新たな酸素吸蔵量ＯＳＡ５として設定し、その後ステップ１６４０に進む。
【０１３２】
このような処置（ステップ１６００，１６０５，１６１０，１６２０，１６２５）は、Ｍｏｄｅの値が「５」である限り繰り返し実行される。この結果、第１触媒５３の上流の空燃比が所定のリッチ空燃比とされる第５モード（Ｍｏｄｅ＝５）において、第２触媒５４の酸素吸蔵量ＯＳＡ５が算出されて行く。なお、ステップ１６２０での判定において「Ｎｏ」と判定される場合、ＣＰＵ７１は同ステップ１６２０からステップ１６３０に直接進む。
【０１３３】
ＣＰＵ７１は、ステップ１６３０に進んだ場合、Ｍｏｄｅの値が「６」であるか否かを判定し、Ｍｏｄｅの値が「６」であれば同ステップ１６３０にて「Ｙｅｓ」と判定してステップ１６３５に進む。そして、ＣＰＵ７１は、ステップ１６３５にてその時点の第６モードの酸素吸蔵量ＯＳＡ６に上記酸素吸蔵量変化量ΔＯ２を加えた値を新たな酸素吸蔵量ＯＳＡ６として設定し、その後ステップ１６４０に進む。
【０１３４】
このような処置（ステップ１６００，１６０５，１６１０，１６２０，１６３０，１６３５）は、Ｍｏｄｅの値が「６」である限り繰り返し実行される。この結果、第１触媒５３の上流の空燃比が所定のリッチ空燃比とされる第６モード（Ｍｏｄｅ＝６）において、第３触媒５５の酸素吸蔵量ＯＳＡ６が算出されて行く。なお、ステップ１６３０での判定において「Ｎｏ」と判定される場合、ＣＰＵ７１は同ステップ１６３０からステップ１６４０に直接進む。
【０１３５】
そして、ＣＰＵ７１は、ステップ１６４０に進むと、同ステップ１６４０にて燃料噴射量Ｆｉの合計量ｍｆｒを「０」に設定し、その後ステップ１６９５に進んで本ルーチンを一旦終了する。
【０１３６】
（触媒劣化判定及び警報処理）
次に、触媒劣化判定及び警報処理における作動について説明する。ＣＰＵ７１は図１７及びこれに続く図１８のフローチャートにより示されたルーチンを所定時間の経過毎に実行するようになっている。
【０１３７】
従って、所定のタイミングになると、ＣＰＵ７１は図１７のステップ１７００から処理を開始し、ステップ１７０２に進んで触媒劣化判定実行中フラグＸＨＡＮの値が「１」から「０」に変化したか否かをモニタする。このとき、第６モードが終了して、先に説明した図１５のステップ１５２０にて触媒劣化判定実行中フラグＸＨＡＮの値が「０」に変更されると、ＣＰＵ７１はステップ１７０２にて「Ｙｅｓ」と判定してステップ１７０４に進む。ここで、触媒劣化判定実行中フラグＸＨＡＮの値が変化していなければ、ＣＰＵ７１はステップ１７０２から図１８のステップ１７９５に直接進んで本ルーチンを一旦終了する。
【０１３８】
いま、第６モードが終了した直後であるとすると、触媒劣化判定実行中フラグＸＨＡＮの値が「１」から「０」に変更された直後であるから、ＣＰＵ７１はステップ１７０２からステップ１７０４に進み、その時点の酸素吸蔵量ＯＳＡ４，ＯＳＡ５及びＯＳＡ６を、それぞれ最大酸素吸蔵量Ｃｍａｘ（１），Ｃｍａｘ（２）及びＣｍａｘ（３）として格納する。
【０１３９】
次に、ＣＰＵ７１はステップ１７０６に進み、ステップ１７０４にて得られた最大酸素吸蔵量Ｃｍａｘ（１），Ｃｍａｘ（２）及びＣｍａｘ（３）の各値と、図５の（ａ）〜（ｃ）に示した各テーブルと同一のテーブルであるステップ１７０６内に記載した各テーブルとに基いて第１，第２及び第３触媒５３，５４及び５５の劣化指標値Ｋｅ（１），Ｋｅ（２）及びＫｅ（３）をそれぞれ算出（取得）する。ここで、ステップ１７０６は劣化指標値取得手段に対応している。
【０１４０】
次いで、ＣＰＵ７１はステップ１７０８に進んで、ステップ１７０６にて得られた各劣化指標値Ｋｅ（１），Ｋｅ（２）及びＫｅ（３）と、上記数７の右辺に相当するステップ１７０８内に記載した式とに基いて触媒劣化判定用指標値Ｋｅａｌｌを算出する。
【０１４１】
次に、ＣＰＵ７１はステップ１７１０に進んで、第１，第２及び第３触媒５３，５４及び５５の各々が劣化しているか否かを第１触媒５３から順に判定するための準備として、カウンタ値ｉを「１」に設定した後、ステップ１７１２に進んで、第１触媒劣化指標値Ｋｅ（１）が第１触媒劣化判定基準値ＣＲ（１）以下であるか否かを判定するとともに、第１劣化指標値Ｋｅ（１）が第１触媒劣化判定基準値ＣＲ（１）以下であるとき、ステップ１７１２にて「Ｙｅｓ」と判定してステップ１７１４に進んで第１触媒劣化判定結果フラグＸＲ（１）の値を「１」に設定し、これにより第１触媒５３が劣化したことを示す。
【０１４２】
他方、ステップ１７１２の判定において、第１劣化指標値Ｋｅ（１）が第１触媒劣化判定基準値ＣＲ（１）より大きいとき、ＣＰＵ７１は同ステップ１７１２にて「Ｎｏ」と判定してステップ１７１６に進み、第１触媒劣化判定結果フラグＸＲ（１）の値を「０」に設定し、これにより第１触媒５３が劣化していないことを示す。ここで、ステップ１７１２は、触媒劣化判定手段に対応している。
【０１４３】
そして、ＣＰＵ７１はステップ１７１８に進んでカウンタ値ｉの値が排気通路に配設されている触媒の数である「３」と等しいか否かを判定する。現時点ではカウンタ値ｉの値は「１」であるから、ＣＰＵ７１はステップ１７１８にて「Ｎｏ」と判定してステップ１７２０に進み、カウンタ値を「１」だけ増大して「２」に設定した後、再びステップ１７１２〜ステップ１７１８の処理を実行する。即ち、ステップ１７１２〜ステップ１７１８の処理は、カウンタ値ｉが「３」と等しくなるまで繰り返し実行される。
【０１４４】
これにより、第２劣化指標値Ｋｅ（２）が第２触媒劣化判定基準値ＣＲ（２）以下であるとき、第２触媒劣化判定結果フラグＸＲ（２）の値が「１」に設定されて、これにより第２触媒５４が劣化したことが示される一方で、第２劣化指標値Ｋｅ（２）が第２触媒劣化判定基準値ＣＲ（２）より大きいとき、第２触媒劣化判定結果フラグＸＲ（２）の値が「０」に設定されて、これにより第２触媒５４が劣化していないことが示される。
【０１４５】
同様に、第３劣化指標値Ｋｅ（３）が第３触媒劣化判定基準値ＣＲ（３）以下であるとき、第３触媒劣化判定結果フラグＸＲ（３）の値が「１」に設定されて、これにより第３触媒５５が劣化したことが示される一方で、第３劣化指標値Ｋｅ（３）が第３触媒劣化判定基準値ＣＲ（３）より大きいとき、第３触媒劣化判定結果フラグＸＲ（３）の値が「０」に設定されて、これにより第３触媒５５が劣化していないことが示される。
【０１４６】
前述のステップ１７２０の処理が繰り返されることによりカウンタ値ｉが「３」と等しくなると、ＣＰＵ７１はステップ１７１８にて「Ｙｅｓ」と判定してステップ１７２２に進み、第１，第２及び第３触媒５３，５４及び５５を一つの触媒装置とみなしたときの同触媒装置が劣化しているか否かを判定するため、ステップ１７０８にて算出した触媒劣化判定用指標値Ｋｅａｌｌが触媒装置劣化判定基準値ＣＲａｌｌ以下であるか否かを判定する。
【０１４７】
そして、ＣＰＵ７１は、触媒劣化判定用指標値Ｋｅａｌｌが触媒装置劣化判定基準値ＣＲａｌｌ以下であるとき、ステップ１７２４にて触媒装置劣化判定結果フラグＸＲａｌｌの値を「１」に設定し、これにより前記触媒装置が劣化したことを示す。他方、ステップ１７２２の判定時において、触媒劣化判定用指標値Ｋｅａｌｌが触媒装置劣化判定基準値ＣＲａｌｌより大きいとき、ＣＰＵ７１はステップ１７２６に進んで触媒装置劣化判定結果フラグＸＲａｌｌの値を「０」に設定し、これにより前記触媒装置が劣化していないことを示す。ここで、ステップ１７２２も、触媒劣化判定手段に対応している。
【０１４８】
次に、ＣＰＵ７１は図１８のステップ１７２８に進み、第１，第２及び第３触媒５３，５４及び５５の各触媒の交換を促す警報処理を行うための準備として、第１触媒交換要求表示フラグＸＣＮＧ（１），第２触媒交換要求表示フラグＸＣＮＧ（２）及び第３触媒交換要求表示フラグＸＣＮＧ（３）の各々の値を総て「０」に設定する。ここで、第１触媒交換要求表示フラグＸＣＮＧ（１）は、その値が「１」のとき第１触媒５３の交換が必要であることを示し、その値が「０」のとき第１触媒５３の交換が必要でないことを示す。同様に、第２触媒交換要求表示フラグＸＣＮＧ（２）は、その値が「１」のとき第２触媒５４の交換が必要であることを示し、その値が「０」のとき第２触媒５４の交換が必要でないことを示すとともに、第３触媒交換要求表示フラグＸＣＮＧ（３）は、その値が「１」のとき第３触媒５５の交換が必要であることを示し、その値が「０」のとき第３触媒５５の交換が必要でないことを示す。
【０１４９】
次いで、ＣＰＵ７１はステップ１７３０に進んで、触媒装置劣化判定結果フラグＸＲａｌｌの値が「１」であるか否かを判定する。いま、触媒装置劣化判定結果フラグＸＲａｌｌの値が「１」であるとして、即ち、前記触媒装置が劣化したと判定されているものとして説明を続けると、ＣＰＵ７１はステップ１７３２に進んで、第１，第２及び第３触媒５３，５４及び５５の各々の交換が必要であるか否かを第１触媒５３から順に判定するための準備として、カウンタ値ｉを「１」に設定した後、ステップ１７３４に進んで、第１触媒劣化判定結果フラグＸＲ（１）の値が「１」であるか否かを判定する。
【０１５０】
ここでは、先に例に挙げて説明した場合と同様の場合、即ち、第１触媒５３及び第３触媒５５が劣化したと判定されている場合を例に挙げて説明すると、第１触媒劣化判定結果フラグＸＲ（１）の値は図１７のステップ１７１４にて「１」に設定されているので、ＣＰＵ７１は図１８のステップ１７３４にて「Ｙｅｓ」と判定してステップ１７３６に進むとともに、第１触媒交換要求表示フラグＸＣＮＧ（１）の値を「１」に設定し、これにより第１触媒５３の交換が必要であることを示す。
【０１５１】
次に、ＣＰＵ７１はステップ１７３８に進んで、同ステップ１７３８内に記載した式に基いて、図１７のステップ１７０８にて算出した触媒劣化判定用指標値Ｋｅａｌｌの値に対して第１触媒新品時劣化指標値Ｋｅｎｅｗ（１）を乗算するとともにその乗算値を現時点での第１触媒劣化指標値Ｋｅ（１）（図１７のステップ１７０６にて得られた第１触媒劣化指標値Ｋｅ（１））で除することにより、触媒劣化判定用指標値Ｋｅａｌｌを仮の触媒劣化判定用指標値として更新する。これにより、更新された触媒劣化判定用指標値Ｋｅａｌｌの値はＫｅｎｅｗ（１）・Ｋｅ（２）・Ｋｅ（３）となる。
【０１５２】
次いで、ＣＰＵ７１はステップ１７４０に進んで、（仮の）触媒劣化判定用指標値Ｋｅａｌｌが触媒装置劣化判定基準値ＣＲａｌｌ以下であるか否かを判定する。先に例に挙げて説明した場合と同様、ここでは、（仮の）触媒劣化判定用指標値Ｋｅａｌｌが触媒装置劣化判定基準値ＣＲａｌｌ以下となっているものとして説明を続けると、ＣＰＵ７１はステップ１７４０にて「Ｙｅｓ」と判定してステップ１７４２に進み、カウンタ値ｉが「３」であるか否かを判定する。
【０１５３】
この時点では、カウンタ値ｉは「１」であるので、ＣＰＵ７１はステップ１７４２にて「Ｎｏ」と判定してステップ１７４４に進み、カウンタ値ｉを「１」だけ増大して「２」に設定した後、再びステップ１７３４を実行して第２触媒劣化判定結果フラグＸＲ（２）の値が「１」であるか否かを判定する。ここでは、第２触媒５４が劣化していないと判定されている場合を例に挙げて説明しているので、第２触媒劣化判定結果フラグＸＲ（２）の値は図１７のステップ１７１６にて「０」に設定されている。従って、ＣＰＵ７１は図１８のステップ１７３４にて「Ｎｏ」と判定して、第２触媒交換要求表示フラグＸＣＮＧ（２）の値を「０」に維持しつつ直接ステップ１７４２に進み、カウンタ値ｉが「３」であるか否かを判定する。
【０１５４】
この時点では、カウンタ値ｉは「２」であるので、ＣＰＵ７１はステップ１７４２にて再び「Ｎｏ」と判定してステップ１７４４に進み、カウンタ値ｉを「１」だけ増大して「３」に設定した後、再びステップ１７３４を実行して第３触媒劣化判定結果フラグＸＲ（３）の値が「１」であるか否かを判定する。
【０１５５】
ここでは、第３触媒５５が劣化したと判定されている場合を例に挙げて説明しているので、第３触媒劣化判定結果フラグＸＲ（３）の値は図１７のステップ１７１４にて「１」に設定されている。従って、ＣＰＵ７１は図１８のステップ１７３４にて「Ｙｅｓ」と判定してステップ１７３６に進むとともに、第３触媒交換要求表示フラグＸＣＮＧ（３）の値を「１」に設定し、これにより第３触媒５５の交換が必要であることを示す。
【０１５６】
次に、ＣＰＵ７１はステップ１７３８に進んで、同ステップ１７３８内に記載した式に基いて、カウンタ値ｉが「１」であった時点でステップ同１７３８が実行されたときに既に更新されている（仮の）触媒劣化判定用指標値Ｋｅａｌｌの値（Ｋｅｎｅｗ（１）・Ｋｅ（２）・Ｋｅ（３））に対して第３触媒新品時劣化指標値Ｋｅｎｅｗ（３）を乗算するとともにその乗算値を現時点での第３触媒劣化指標値Ｋｅ（３）（図１７のステップ１７０６にて得られた第３触媒劣化指標値Ｋｅ（３））で除することにより、触媒劣化判定用指標値Ｋｅａｌｌを仮の触媒劣化判定用指標値として再び更新する。これにより、更新された触媒劣化判定用指標値Ｋｅａｌｌの値はＫｅｎｅｗ（１）・Ｋｅ（２）・Ｋｅｎｅｗ（３）となる。
【０１５７】
次いで、ＣＰＵ７１はステップ１７４０に進んで、（仮の）触媒劣化判定用指標値Ｋｅａｌｌが触媒装置劣化判定基準値ＣＲａｌｌ以下であるか否かを判定する。先に例に挙げて説明した場合と同様、ここでは、（仮の）触媒劣化判定用指標値Ｋｅａｌｌが触媒装置劣化判定基準値ＣＲａｌｌを超える値となっているので、ＣＰＵ７１はステップ１７４０にて「Ｎｏ」と判定してステップ１７４６に進む。以上の処理により、この時点では、第１触媒交換要求表示フラグＸＣＮＧ（１）及び第３触媒交換要求表示フラグＸＣＮＧ（３）の値は「１」に設定されており、第２触媒交換要求表示フラグＸＣＮＧ（２）の値は「０」に設定されている。
【０１５８】
ステップ１７４６に進むとＣＰＵ７１は、対応する触媒交換要求表示フラグＸＣＮＧの値が「１」に設定されている触媒である第１触媒５３及び第３触媒５５の交換を促す警報を警報ランプ８２を点灯表示させることにより行う。
【０１５９】
一方、ステップ１７３０の判定において、触媒装置劣化判定結果フラグＸＲａｌｌの値が「０」である場合、ＣＰＵ７１は、同ステップ１７３０にて「Ｎｏ」と判定して直接ステップ１７４６に進む。このとき、ステップ１７２８の処理によりＸＣＮＧ（１），ＸＣＮＧ（２）及びＸＣＮＧ（３）の各値は総て「０」に設定されているので、ＣＰＵ７１はステップ１７４６にて警報ランプ８２を点灯表示させない。
【０１６０】
そして、ＣＰＵ７１はステップ１７４８に進み、酸素吸蔵量ＯＳＡ４，ＯＳＡ５及びＯＳＡ６の各々の値を「０」に設定した後、ステップ１７９５に進んで本ルーチンを一旦終了する。以上のようにして、各触媒の劣化判定が実行されるとともに、第１，第２及び第３触媒５３，５４及び５５を一つの触媒装置をみなしたときの同触媒装置が劣化したと判定されたとき、交換を促すべき触媒を特定した警報処理が実行される。
【０１６１】
以上、説明したように、本発明による触媒劣化判定装置によれば、内燃機関１０の排気通路に直列に配設された第１，第２及び第３触媒５３，５４及び５５の各々について推定された最大酸素吸蔵量Ｃｍａｘ（１），Ｃｍａｘ（２）及びＣｍａｘ（３）に基いて各触媒の劣化指標値Ｋｅ（１），Ｋｅ（２）及びＫｅ（３）が取得され、各劣化指標値Ｋｅ（１），Ｋｅ（２）及びＫｅ（３）を積算して得られる触媒劣化判定用指標値Ｋｅａｌｌと触媒装置劣化判定基準値ＣＲａｌｌとの比較結果に基いて、第１，第２及び第３触媒５３，５４及び５５を一つの触媒装置とみなしたときの同触媒装置が劣化したか否かが判定される。その結果、不必要に触媒が劣化したと判定される事態が発生せず、適切なタイミングでユーザーに触媒の劣化を知らしめるための警報を行うことができた。
【０１６２】
また、上記触媒装置が劣化したと判定されたとき、上記した警報が実行されることにより、交換すべき最小限の数の触媒が特定されるとともに、同警報を受けて同特定された最小限の数の触媒のみを新品に交換することにより、上記触媒装置（システム）の排気浄化性能を良好に維持することができた。また、このとき、交換を促される触媒は、劣化した触媒のうちで排気通路のより上流側に配設されているものから順に特定されていくので、特に、内燃機関の始動直後におけるシステム全体としての排気浄化性能を良好に維持することができた。
【０１６３】
本発明は上記実施形態に限定されることはなく、本発明の範囲内において種々の変形例を採用することができる。例えば、上記実施形態においては、触媒劣化判定用指標値Ｋｅａｌｌとして各劣化指標値Ｋｅ（１），Ｋｅ（２）及びＫｅ（３）を乗算した値を採用していたが、各劣化指標値Ｋｅ（１），Ｋｅ（２）及びＫｅ（３）を積算した値を採用してもよい。
【０１６４】
また、上記実施形態においては、複数の触媒を一つの触媒装置とみなしたときの同触媒装置が劣化したと判定された場合、劣化したと判定されている各触媒に対応する劣化指標値（Ｋｅ（１），Ｋｅ（２）及びＫｅ（３））を、対応する触媒が排気通路のより上流側に配設されているものから順に現時点での値から同対応する触媒が新品であるときの値に代えていくことで、触媒劣化判定用指標値Ｋｅａｌｌを仮の触媒劣化判定用指標値として更新していき、仮の触媒劣化判定用指標値が前記触媒装置が劣化していないと判定すべき値となった段階で同仮の触媒劣化判定用指標値を算出するために同対応する触媒が新品であるときの値に代えられている各劣化指標値に対応する触媒の交換を促すための警報を行うように構成されているが、劣化したと判定されている各触媒に対応する劣化指標値（Ｋｅ（１），Ｋｅ（２）及びＫｅ（３））を、対応する触媒の劣化の程度がより大きいことを示すものから順に（本例ではＫｅ（１），Ｋｅ（２）及びＫｅ（３）のうちで値が小さいものから順に）現時点での値から同対応する触媒が新品であるときの値に代えていくことで、触媒劣化判定用指標値Ｋｅａｌｌを仮の触媒劣化判定用指標値として更新していき、交換すべき触媒を特定するように構成してもよい。
【０１６５】
また、上記実施形態においては、触媒劣化判定用指標値Ｋｅａｌｌが触媒装置劣化判定基準値ＣＲａｌｌ以下であるとき第１，第２及び第３触媒５３，５４及び５５を一つの触媒装置とみなしたときの同触媒装置が劣化したと判定しているが、第１，第２及び第３触媒５３，５４及び５５のうちの少なくとも一つ以上（例えば、対応する劣化指標値Ｋｅが最も小さい触媒のみ）が劣化したと判定するように構成してもよい。
【０１６６】
また、上記実施形態においては、触媒の最大酸素吸蔵量に応じて変化する値Ｋｅを触媒の劣化指標値として触媒劣化の判定に用いていたが、例えば、上記サブフィードバック制御中において上流側空燃比センサの出力が描く軌跡長と下流側空燃比センサの出力が描く軌跡長との比（軌跡比）、上記サブフィードバック制御中において上流側空燃比センサの出力が理論空燃比相当値を横切る頻度と下流側空燃比センサの出力が理論空燃比相当値を横切る頻度との比（反転比）、及び、上記サブフィードバック制御中において上流側空燃比センサの出力が描く軌跡と理論空燃比相当値との間で形成される面積と下流側空燃比センサの出力が描く軌跡と理論空燃比相当値との間で形成される面積との比（面積比）等の触媒の劣化の程度に応じて変化する他の指標値（劣化指標値）を用いて、触媒劣化の判定をするように構成してもよい。ここで、上流側空燃比センサ，下流側空燃比センサは、第１触媒５３については最上流空燃比センサ６６，第１触媒下流空燃比センサ６７−１にそれぞれ対応し、第２触媒５４については第１触媒下流空燃比センサ６７−１，第２触媒下流空燃比センサ６７−２にそれぞれ対応し、第３触媒５５については第２触媒下流空燃比センサ６７−２，第３触媒下流空燃比センサ６７−３にそれぞれ対応している。
【０１６７】
また、上記実施形態においては、図９のステップ９１５の触媒劣化判定条件が成立したときに、その時点の第１触媒下流空燃比センサ出力Ｖｏｘｓ１、第２触媒下流空燃比センサ出力Ｖｏｘｓ２、及び第３触媒下流空燃比センサ出力Ｖｏｘｓ３に拘らず図４の第１モードから制御を開始していたが、同判定条件成立時における第１触媒下流空燃比センサ出力Ｖｏｘｓ１、第２触媒下流空燃比センサ出力Ｖｏｘｓ２、及び第３触媒下流空燃比センサ出力Ｖｏｘｓ３に応じて、酸素吸蔵量検出のために最初に設定される第１触媒上流空燃比を異なる空燃比に設定すること（初めに実行するモードを変更すること）が、エミッションを低減する上で好ましい。
【０１６８】
具体的に述べると、前記触媒劣化判定条件が成立したとき、第１触媒下流空燃比センサ出力Ｖｏｘｓ１、第２触媒下流空燃比センサ出力Ｖｏｘｓ２、及び第３触媒下流空燃比センサ出力Ｖｏｘｓ３が共にリッチな空燃比であることを示している場合には、上記実施形態のとおり、第１モードから第１触媒上流空燃比の制御を始める。即ち、第１触媒上流空燃比を所定のリーン空燃比とする。
【０１６９】
また、前記触媒劣化判定条件が成立したとき、第１触媒下流空燃比センサ出力Ｖｏｘｓ１がリーン、第２触媒下流空燃比センサ出力Ｖｏｘｓ２がリッチ、及び第３触媒下流空燃比センサ出力Ｖｏｘｓ３がリッチであることを示している場合、第１モードと同様に第１触媒上流空燃比を所定のリーン空燃比とする第２モードから制御を開始する。
【０１７０】
また、前記触媒劣化判定条件が成立したとき、第１触媒下流空燃比センサ出力Ｖｏｘｓ１がリーン、第２触媒下流空燃比センサ出力Ｖｏｘｓ２がリーン、及び第３触媒下流空燃比センサ出力Ｖｏｘｓ３がリッチであることを示している場合、並びに、第１触媒下流空燃比センサ出力Ｖｏｘｓ１がリッチ、第２触媒下流空燃比センサ出力Ｖｏｘｓ２がリーン、及び第３触媒下流空燃比センサ出力Ｖｏｘｓ３がリッチであることを示している場合、第１モード及び第２モードと同様に第１触媒上流空燃比を所定のリーン空燃比とする第３モードから制御を開始する。
【０１７１】
また、前記触媒劣化判定条件が成立したとき、第１触媒下流空燃比センサ出力Ｖｏｘｓ１、第２触媒下流空燃比センサ出力Ｖｏｘｓ２、及び第３触媒下流空燃比センサ出力Ｖｏｘｓ３が共にリーンな空燃比であることを示している場合には、第１触媒上流空燃比を所定のリッチ空燃比とする第４モードから制御を開始する。この場合、最初の第４モード、並びに次に実行される第５モード及び第６モードにおいてそれぞれ推定される最大酸素吸蔵量は正確ではないので、同最大酸素吸蔵量を触媒劣化判定には使用せず、第６モード実行後に図４に破線で示した後述する第７モードの制御、第８モードの制御、及び第９モードの制御を継続して実行することにより、同第７モード、第８モード、及び第９モードにおいて推定された最大酸素吸蔵量を触媒劣化判定に使用するように構成することが好適である。
【０１７２】
また、前記触媒劣化判定条件が成立したとき、第１触媒下流空燃比センサ出力Ｖｏｘｓ１がリッチ、第２触媒下流空燃比センサ出力Ｖｏｘｓ２がリーン、及び第３触媒下流空燃比センサ出力Ｖｏｘｓ３がリーンであることを示している場合には、第４モードと同様に第１触媒上流空燃比を所定のリッチ空燃比とする第５モードから制御を開始する。この場合、最初の第５モード、及び次に実行される第６モードにおいてそれぞれ推定される最大酸素吸蔵量は正確ではないので、同最大酸素吸蔵量を触媒劣化判定には使用せず、第６モード実行後に図４に破線で示した後述する第７モードの制御、第８モードの制御、及び第９モードの制御を継続して実行することにより、同第７モード、第８モード、及び第９モードにおいて推定された最大酸素吸蔵量を触媒劣化判定に使用するように構成することが好適である。
【０１７３】
更に、前記触媒劣化判定条件が成立したとき、第１触媒下流空燃比センサ出力Ｖｏｘｓ１がリッチ、第２触媒下流空燃比センサ出力Ｖｏｘｓ２がリッチ、及び第３触媒下流空燃比センサ出力Ｖｏｘｓ３がリーンであることを示している場合、並びに、第１触媒下流空燃比センサ出力Ｖｏｘｓ１がリーン、第２触媒下流空燃比センサ出力Ｖｏｘｓ２がリッチ、及び第３触媒下流空燃比センサ出力Ｖｏｘｓ３がリーンであることを示している場合、第４モード及び第５モードと同様に第１触媒上流空燃比を所定のリッチ空燃比とする第６モードから制御を開始する。この場合も、最初の第６モードにおいて推定される最大酸素吸蔵量は正確ではないので同最大酸素吸蔵量を触媒劣化判定には使用せず、第６モード実行後に図４に破線で示した後述する第７モードの制御、第８モードの制御、及び第９モードの制御を継続して実行することにより、同第７モード、第８モード、及び第９モードにおいて推定された最大酸素吸蔵量を触媒劣化判定に使用するように構成することが好適である。
【０１７４】
第６モード実行後にかかる第７モード、第８モード、及び第９モードを継続して実行する場合についてより具体的に述べると、図４の時刻ｔ７に示したように、第３触媒下流空燃比センサ６７−３の出力Ｖｏｘｓ３がリーンを示す値からリッチを示す値に変化したとき、ＣＰＵ７１は図４（Ａ）に破線で示したように第１触媒上流空燃比を再び上記所定のリーン空燃比に制御する。これにより、第１触媒５３にリーンな空燃比のガスが流入する。また、時刻ｔ７の時点においては、第１触媒５３の酸素吸蔵量は「０」となっている。従って、図４（Ｃ）に破線で示したように、時刻ｔ７以降において、第１触媒５３内の酸素吸蔵量は「０」から増大し続け、時刻ｔ８にて最大酸素吸蔵量Ｃｍａｘ（１）に達する。この結果、時刻ｔ８にて、第１触媒５３から酸素を含むガスが流出し始め、図４（Ｂ）に破線で示したように、第１触媒下流空燃比センサ６７−１の出力Ｖｏｘｓ１はリッチを示す値からリーンを示す値に変化する。この時刻ｔ７〜ｔ８間の作動を第７モード（Ｍｏｄｅ＝７）における作動と呼ぶ。
【０１７５】
ＣＰＵ７１は、かかる時刻ｔ７〜ｔ８間において、以下のようにして第１触媒５３の最大酸素吸蔵量Ｃｍａｘ（１）を推定する。即ち、第１触媒下流空燃比センサ６７−１の出力Ｖｏｘｓ１がリーン空燃比を示す値となった時刻ｔ８では、第１触媒５３の酸素吸蔵量が最大酸素吸蔵量Ｃｍａｘ（１）に到達したことを意味するから、時刻ｔ７〜ｔ８までの間、下記数１１及び下記数１２に基いて酸素吸蔵量の変化量ΔＯ２を算出するとともにこれを積算し、同時刻ｔ８での積算値を最大酸素吸蔵量Ｃｍａｘ（１）として算出する。
【０１７６】
【数１１】
ΔＯ２＝０．２３・ｍｆｒ・（ａｂｙｆｓ　−　ｓｔｏｉｃｈ）
【０１７７】
【数１２】
Ｃｍａｘ（１）＝ΣΔＯ２（区間ｔ＝ｔ７〜ｔ８）
【０１７８】
この数１１に示したように、所定時間ｔｓａｍｐｌｅ内の噴射量の合計量ｍｆｒに、空燃比Ａ／Ｆの理論空燃比からの偏移（ａｂｙｆｓ　−　ｓｔｏｉｃｈ）を乗じることで、同所定時間ｔｓａｍｐｌｅにおける空気の過剰量が求められ、この空気の過剰量に酸素の重量割合を乗じることで同所定時間ｔｓａｍｐｌｅにおける酸素吸蔵量変化量（吸蔵酸素量）ΔＯ２が求められる。そして、数１２に示したように、酸素吸蔵量変化量ΔＯ２を時刻ｔ７〜ｔ８に渡って積算することで、第１触媒５３の酸素吸蔵量が「０」である状態から酸素を最大限に吸蔵するまでの酸素量、即ち最大酸素吸蔵量Ｃｍａｘ（１）が算出される。
【０１７９】
時刻ｔ８にて、第１触媒下流空燃比センサ６７−１の出力Ｖｏｘｓ１がリッチを示す値からリーンを示す値に変化した後も、ＣＰＵ７１は、第１触媒上流空燃比を前記所定のリーン空燃比に制御し続ける。この場合、第１触媒５３の酸素吸蔵量は最大酸素吸蔵量Ｃｍａｘ（１）に到達している。従って、第１触媒５３からはリーンな空燃比のガスが流出し、これが第２触媒５４内に流入する。一方、時刻ｔ８の時点においては、第２触媒５４の酸素吸蔵量は「０」となっている。従って、図４（Ｅ）に破線で示したように、時刻ｔ８以降において、第２触媒５４内の酸素吸蔵量は「０」から増大し続け、時刻ｔ９にて最大酸素吸蔵量Ｃｍａｘ（２）に達する。この結果、時刻ｔ９にて、第２触媒５４から酸素を含むガスが流出し始め、図４（Ｄ）に破線で示したように、第２触媒下流空燃比センサ６７−２の出力Ｖｏｘｓ２はリッチを示す値からリーンを示す値に変化する。この時刻ｔ８〜ｔ９間の作動を第８モード（Ｍｏｄｅ＝８）における作動と呼ぶ。
【０１８０】
ＣＰＵ７１は、かかる時刻ｔ８〜ｔ９間においても、以下のようにして第２触媒５４の最大酸素吸蔵量Ｃｍａｘ（２）を推定する。即ち、下記数１３及び下記数１４に基いて酸素吸蔵量の変化量ΔＯ２を算出するとともに積分し、同時刻ｔ９での積分値を最大酸素吸蔵量Ｃｍａｘ（２）として算出する。
【０１８１】
【数１３】
ΔＯ２＝０．２３・ｍｆｒ・（ａｂｙｆｓ　−　ｓｔｏｉｃｈ）
【０１８２】
【数１４】
Ｃｍａｘ（２）＝ΣΔＯ２（区間ｔ＝ｔ８〜ｔ９）
【０１８３】
また、時刻ｔ９にて、第２触媒下流空燃比センサ６７−２の出力Ｖｏｘｓ２がリッチを示す値からリーンを示す値に変化した後も、ＣＰＵ７１は、第１触媒上流空燃比を前記所定のリーン空燃比に制御し続ける。この場合、第１触媒５３の酸素吸蔵量及び第２触媒５４の酸素吸蔵量はそれぞれ最大酸素吸蔵量Ｃｍａｘ（１）及び最大酸素吸蔵量Ｃｍａｘ（２）に到達している。従って、第２触媒５４からはリーンな空燃比のガスが流出し、これが第３触媒５５内に流入する。一方、時刻ｔ９の時点においては、第３触媒５５の酸素吸蔵量は「０」となっている。従って、図４（Ｇ）に破線で示したように、時刻ｔ９以降において、第３触媒５５内の酸素吸蔵量は「０」から増大し続け、時刻ｔ１０にて最大酸素吸蔵量Ｃｍａｘ（３）に達する。この結果、時刻ｔ１０にて、第３触媒５５から酸素を含むガスが流出し始め、図４（Ｆ）に破線で示したように、第３触媒下流空燃比センサ６７−３の出力Ｖｏｘｓ３はリッチを示す値からリーンを示す値に変化する。この時刻ｔ９〜ｔ１０間の作動を第９モード（Ｍｏｄｅ＝９）における作動と呼ぶ。
【０１８４】
ＣＰＵ７１は、かかる時刻ｔ９〜ｔ１０間においても、上記した第２触媒５４の最大酸素吸蔵量Ｃｍａｘ（２）と同様、下記数１５及び下記数１６に基いて第３触媒５５の最大酸素吸蔵量Ｃｍａｘ（３）を推定する。
【０１８５】
【数１５】
ΔＯ２＝０．２３・ｍｆｒ・（ａｂｙｆｓ　−　ｓｔｏｉｃｈ）
【０１８６】
【数１６】
Ｃｍａｘ（３）＝ΣΔＯ２（区間ｔ＝ｔ９〜ｔ１０）
【０１８７】
そして、ＣＰＵ７１は時刻ｔ１０にて機関に吸入される混合気の空燃比を理論空燃比に戻すとともに、同時刻ｔ１０以降において、触媒劣化判定を行う。このようにして、第７モードにおいて第１触媒５３の最大酸素吸蔵量Ｃｍａｘ（１）が推定され、第８モードにおいて第２触媒５４の最大酸素吸蔵量Ｃｍａｘ（２）が推定されるとともに、第９モードにおいて第３触媒５５の最大酸素吸蔵量Ｃｍａｘ（３）が推定される。
【０１８８】
また、第６モード実行後にかかる第７モード、第８モード、及び第９モードを継続して実行する場合、ＣＰＵ７１は、図１５に示した上述した第６モード制御ルーチンに代えて図１９に示した第６モード制御ルーチンを所定時間の経過毎に繰り返し実行するとともに、図２０に示した第７モード制御ルーチン、図２１に示した第８モード制御ルーチン、及び図２２に示した第９モード制御ルーチンを所定時間の経過毎に繰り返し実行する必要がある。かかる図１９に示した第６モード制御ルーチン、図２０に示した第７モード制御ルーチン、図２１に示した第８モード制御ルーチン、及び図２２に示した第９モード制御ルーチンにおける作動は、先に説明した図１０〜図１５に示した第１モード〜第６モードにおける作動と類似しているので、ここではその詳細な説明を省略する。
【図面の簡単な説明】
【図１】本発明による触媒劣化判定装置を搭載した排気浄化装置を内燃機関に適用したシステムの概略図である。
【図２】図１に示したエアフローメータの出力電圧と計測された吸入空気量との関係を示したマップである。
【図３】図３（ａ）は、図１に示した最上流空燃比センサの出力電圧と空燃比との関係を示したマップであり、図３（ｂ）は、図１に示した第１触媒下流空燃比センサ、第２触媒下流空燃比センサ、及び第３触媒下流空燃比センサの出力電圧と空燃比との関係を示したマップである。
【図４】図１に示した触媒劣化判定装置が各触媒の最大酸素吸蔵量を求める場合の第１触媒上流の空燃比、各空燃比センサの出力、各触媒の酸素吸蔵量の変化を示したタイムチャートである。
【図５】図５（ａ）は、図１に示した第１触媒の最大酸素吸蔵量の値と第１触媒劣化指標値との関係を規定するテーブルを示したグラフであり、図５（ｂ）は、図１に示した第２触媒の最大酸素吸蔵量の値と第２触媒劣化指標値との関係を規定するテーブルを示したグラフであり、図５（ｃ）は、図１に示した第３触媒の最大酸素吸蔵量の値と第３触媒劣化指標値との関係を規定するテーブルを示したグラフである。
【図６】図１に示したＣＰＵが実行する燃料噴射量計算のためのルーチンを示したフローチャートである。
【図７】図１に示したＣＰＵが実行する空燃比フィードバック補正量を計算するためのルーチンを示したフローチャートである。
【図８】図１に示したＣＰＵが実行するサブフィードバック制御量を計算するためのルーチンを示したフローチャートである。
【図９】図１に示したＣＰＵが実行する触媒劣化判定を開始するか否かを決定するためのルーチンを示したフローチャートである。
【図１０】図１に示したＣＰＵが実行する第１モードのルーチンを示したフローチャートである。
【図１１】図１に示したＣＰＵが実行する第２モードのルーチンを示したフローチャートである。
【図１２】図１に示したＣＰＵが実行する第３モードのルーチンを示したフローチャートである。
【図１３】図１に示したＣＰＵが実行する第４モードのルーチンを示したフローチャートである。
【図１４】図１に示したＣＰＵが実行する第５モードのルーチンを示したフローチャートである。
【図１５】図１に示したＣＰＵが実行する第６モードのルーチンを示したフローチャートである。
【図１６】図１に示したＣＰＵが実行する酸素吸蔵量を算出するためのルーチンを示したフローチャートである。
【図１７】図１に示したＣＰＵが実行する触媒劣化判定及び警報処理を行うためのルーチンの前半部を示したフローチャートである。
【図１８】図１に示したＣＰＵが実行する触媒劣化判定及び警報処理を行うためのルーチンの後半部を示したフローチャートである。
【図１９】第６モード実行後に第７モード、第８モード及び第９モードを継続して実行する場合における、図１に示したＣＰＵが実行する第６モードのルーチンを示したフローチャートである。
【図２０】第６モード実行後に第７モード、第８モード及び第９モードを継続して実行する場合における、図１に示したＣＰＵが実行する第７モードのルーチンを示したフローチャートである。
【図２１】第６モード実行後に第７モード、第８モード及び第９モードを継続して実行する場合における、図１に示したＣＰＵが実行する第８モードのルーチンを示したフローチャートである。
【図２２】第６モード実行後に第７モード、第８モード及び第９モードを継続して実行する場合における、図１に示したＣＰＵが実行する第９モードのルーチンを示したフローチャートである。
【符号の説明】
１０…内燃機関、２５…燃焼室、３９…インジェクタ、５２…エキゾーストパイプ（排気管）、５３…三元触媒（第１触媒）、５４…三元触媒（第２触媒）、５５…三元触媒（第３触媒）、６６…最上流空燃比センサ、６７−１…第１触媒下流空燃比センサ、６７−２…第２触媒下流空燃比センサ、６７−３…第３触媒下流空燃比センサ、７０…電気制御装置、７１…ＣＰＵ。
【図１】
2004076681.tif 000003
【図２】
2004076681.tif 000004
【図３】
2004076681.tif 000005
【図４】
2004076681.tif 000006
【図５】
2004076681.tif 000007
【図６】
2004076681.tif 000008
【図７】
2004076681.tif 000009
【図８】
2004076681.tif 000010
【図９】
2004076681.tif 000011
【図１０】
2004076681.tif 000012
【図１１】
2004076681.tif 000013
【図１２】
2004076681.tif 000014
【図１３】
2004076681.tif 000015
【図１４】
2004076681.tif 000016
【図１５】
2004076681.tif 000017
【図１６】
2004076681.tif 000018
【図１７】
2004076681.tif 000019
【図１８】
2004076681.tif 000020
【図１９】
2004076681.tif 000021
【図２０】
2004076681.tif 000022
【図２１】
2004076681.tif 000023
【図２２】
2004076681.tif 000024