(57)【要約】      （修正有）【課題】制御装置は、触媒成分と酸素吸蔵物質とを有する触媒を備えた内燃機関に適用される。【解決手段】制御装置は、触媒の最大酸素吸蔵量Cmaxが所定の閾値Cmaxref以下であるとき、酸素吸蔵量回復運転を行う。酸素吸蔵量回復運転は、触媒導入ガスの酸素濃度を空気と燃料とが理論空燃比にて燃焼したときに生じるガスの酸素濃度である基準酸素濃度よりもリッチ側の酸素濃度とするリッチ運転を、リッチ運転が行われた後の最大酸素吸蔵量がリッチ運転が行われる前の最大酸素吸蔵量よりも小さくないと判定されるまで行うこと、および、触媒導入ガスの酸素濃度を基準酸素濃度よりもリーン側の酸素濃度とするリーン運転を行うこと、を含む。【選択図】図４
2012062774.tif 000002
【特許請求の範囲】
【請求項１】
内燃機関の燃焼室から排出されるガスを浄化する触媒であって、触媒成分と酸素吸蔵物質とを有する触媒、を備えた内燃機関に適用され、
前記触媒に吸蔵され得る酸素の最大量である最大酸素吸蔵量を取得する最大酸素吸蔵量取得手段と、
前記最大酸素吸蔵量が所定の閾値以下であるとき、
前記触媒に導入されるガスである触媒導入ガスの酸素濃度を空気と燃料とが理論空燃比にて燃焼したときに生じるガスの酸素濃度である基準酸素濃度よりもリッチ側の酸素濃度とするリッチ運転を、該リッチ運転が行われる前の前記最大酸素吸蔵量である第１最大酸素吸蔵量と前記リッチ運転が行われた後の前記最大酸素吸蔵量である第２最大酸素吸蔵量とが等しくなるまで又は前記第１最大酸素吸蔵量よりも前記第２最大酸素吸蔵量が大きくなるまで行うこと、および、前記第１最大酸素吸蔵量と前記第２最大酸素吸蔵量とが等しくなったとき又は前記第１最大酸素吸蔵量よりも前記第２最大酸素吸蔵量が大きくなったときに前記触媒導入ガスの酸素濃度を前記基準酸素濃度よりもリーン側の酸素濃度とするリーン運転を行うこと、を含む酸素吸蔵量回復運転を行う酸素吸蔵量回復手段と、
を備えた内燃機関の排気浄化のための制御装置。
【請求項２】
請求項１に記載の制御装置において、
前記酸素吸蔵量回復手段は、
前記リッチ運転を所定の期間だけ行った後に前記第１最大酸素吸蔵量と前記第２最大酸素吸蔵量とを比較することを、前記第１最大酸素吸蔵量と前記第２最大酸素吸蔵量とが等しいと判定されるまで又は前記第１最大酸素吸蔵量よりも前記第２最大酸素吸蔵量が大きいと判定されるまで繰り返すとともに、前記第１最大酸素吸蔵量と前記第２最大酸素吸蔵量とが等しいと判定された後または前記第１最大酸素吸蔵量よりも前記第２最大酸素吸蔵量が大きいと判定された後に前記リーン運転を行うことにより、前記酸素吸蔵量回復運転を行う、内燃機関の排気浄化のための制御装置。
【請求項３】
請求項１または請求項２に記載の制御装置において、
前記酸素吸蔵量回復手段は、
前記酸素吸蔵量回復運転を行う前に前記リーン運転を行う、内燃機関の排気浄化のための制御装置。
【請求項４】
請求項１〜請求項３のうちのいずれか一項に記載の制御装置において、
前記触媒が、
該触媒の温度が第１温度以上第２温度以下であるときに前記触媒導入ガスの酸素濃度が前記基準酸素濃度よりもリッチ側の酸素濃度である場合、前記酸素吸蔵物質に吸蔵された硫黄成分が前記触媒成分に向けて移動し、かつ、
該触媒の温度が前記第１温度と前記第２温度の間の第３温度以上であるときに前記触媒導入ガスの酸素濃度が前記基準酸素濃度よりもリーン側の酸素濃度である場合、前記触媒成分上に存在する前記硫黄成分が前記触媒導入ガス中に放出される、触媒であるとき、
前記酸素吸蔵量回復手段は、
前記触媒の温度が前記第３温度以上であり且つ前記第２温度以下である場合に前記酸素吸蔵量回復運転を行う、内燃機関の排気浄化のための制御装置。
【請求項５】
請求項１〜請求項４のうちのいずれか一項に記載の制御装置において、
前記酸素吸蔵量回復手段は、
前記最大酸素吸蔵量が第１の値であるときに前記リッチ運転を行う場合の前記触媒導入ガスの酸素濃度である第１酸素濃度が、前記最大酸素吸蔵量が前記第１の値よりも大きい第２の値であるときに前記リッチ運転を行う場合の前記触媒導入ガスの酸素濃度である第２酸素濃度と同一または前記第２酸素濃度よりもリッチ側の酸素濃度である、ように構成された内燃機関の排気浄化のための制御装置。
【請求項６】
請求項１〜請求項５のうちのいずれか一項に記載の制御装置において、
前記酸素吸蔵量回復手段は、
前記最大酸素吸蔵量が第３の値であるときに前記リーン運転を行う場合の前記触媒導入ガスの酸素濃度である第３酸素濃度が、前記最大酸素吸蔵量が前記第３の値よりも大きい第４の値であるときに前記リーン運転を行う場合の前記触媒導入ガスの酸素濃度である第４酸素濃度と同一または前記第４酸素濃度よりもリーン側の酸素濃度である、ように構成された内燃機関の排気浄化のための制御装置。
【請求項７】
内燃機関の燃焼室から排出されるガスを浄化する触媒であって、触媒成分と酸素吸蔵物質とを有し、該触媒に導入されるガスである触媒導入ガスの酸素濃度が空気と燃料とが理論空燃比にて燃焼したときに生じるガスの酸素濃度である基準酸素濃度よりもリッチ側の酸素濃度であるときに前記酸素吸蔵物質に吸蔵された硫黄成分が前記触媒成分に向けて移動し、かつ、前記触媒導入ガスの酸素濃度が前記基準酸素濃度よりもリーン側の酸素濃度であるときに前記触媒成分上に存在する前記硫黄成分が前記触媒導入ガス中に放出される触媒、
を備えた内燃機関に適用され、
前記触媒に吸蔵され得る酸素の最大量である最大酸素吸蔵量を取得する最大酸素吸蔵量取得手段と、
前記最大酸素吸蔵量が所定の閾値以下であるとき、
前記触媒導入ガスの酸素濃度を前記基準酸素濃度よりもリッチ側の酸素濃度とするリッチ運転を、前記触媒成分に移動可能な最大の量の硫黄成分が前記酸素吸蔵物質から前記触媒成分に移動するまで行うこと、および、前記触媒成分に移動可能な最大の量の硫黄成分が前記酸素吸蔵物質から前記触媒成分に移動したときに前記触媒導入ガスの酸素濃度を前記基準酸素濃度よりもリーン側の酸素濃度とするリーン運転を行うこと、を含む酸素吸蔵量回復運転を行う酸素吸蔵量回復手段と、
を備えた内燃機関の排気浄化のための制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内燃機関の燃焼室から排出されるガス（排ガス）を浄化するための触媒を備えた内燃機関の制御装置に関する。
【背景技術】
【０００２】
内燃機関の排ガスには種々の成分が含まれている。そのため、触媒が長期間に亘って使用されると、排ガスに含まれるそれら成分に起因して触媒の排ガス浄化性能が低下する場合がある（以下、触媒の排ガス浄化性能が低下することを「触媒が劣化する」とも称呼する。）。
【０００３】
例えば、従来の内燃機関の制御装置の一つ（以下、「従来装置」と称呼する。）は、排ガスに含まれる硫黄成分（SOxなど）が触媒に吸蔵されることによって触媒が劣化した場合、排ガスの酸素濃度を増減することを繰り返すことにより、触媒に吸蔵された硫黄成分を除去するようになっている（例えば、特許文献１を参照。）。このように、従来から、触媒が劣化する原因の一つである硫黄成分を触媒から除去することが望まれている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４−１０８０７６号公報
【発明の概要】
【０００５】
排ガスに含まれる硫黄成分によって触媒が劣化する理由について、以下に説明する。
内燃機関に適用される触媒の例として、三元触媒およびNOx吸蔵還元触媒などが挙げられる。これら触媒は、触媒の温度が所定の活性温度以上であり、かつ、浄化される対象である排ガスの酸素濃度が所定の酸素濃度（理論空燃比の混合気が燃焼した際に生じる排ガスの酸素濃度）であるとき、その排ガスに含まれる未燃物（HCなど）の酸化反応および窒素酸化物（NOx）の還元反応を促進し、これらを高い浄化率にて同時に浄化することができる。以下、便宜上、三元触媒およびNOx吸蔵還元触媒などを単に「触媒」と総称する。
【０００６】
上記触媒は、一般に、酸素吸蔵物質（CeO2−ZrO2など）を含む担体（Al2O3など）と、その担体に担持された触媒成分（PtおよびRhなどの貴金属）と、を有する。この触媒成分によって構成される活性点（触媒活性点）において、上述した未燃物と窒素酸化物との酸化還元反応（すなわち、排ガスの浄化）が促進される。さらに、この触媒活性点において、酸素吸蔵物質による酸素の吸蔵および放出が促進される。具体的に述べると、酸素吸蔵物質は、排ガスの酸素濃度が上記所定の酸素濃度よりも高いとき（すなわち、リーン側の酸素濃度であるとき）排ガスに含まれる過剰な酸素を吸蔵し、排ガスの酸素濃度が上記所定の酸素濃度よりも低いとき（すなわち、リッチ側の酸素濃度であるとき）吸蔵されている酸素を上記酸化反応のために放出する。これにより、触媒成分における酸素濃度が上記所定の酸素濃度に一致するように調節される。
【０００７】
このように、触媒成分は触媒活性点を構成することによって「排ガスの浄化」および「酸素吸蔵物質の働き（酸素の吸蔵および放出）」を促進し、酸素吸蔵物質は触媒成分における酸素濃度を調節することによって「排ガスの浄化」を補助する。
【０００８】
ところが、酸素吸蔵物質には、酸素だけではなく排ガスに含まれる硫黄成分（SOxなど）が吸蔵される場合がある。さらに、触媒成分には、種々の原因によって硫黄成分（Sなど）が吸着する場合がある。酸素吸蔵物質に硫黄成分が吸蔵されると、その硫黄成分によって本来吸蔵されるべき酸素が吸蔵されることが妨げられるので、触媒が吸蔵し得る酸素の量が減少する。さらに、触媒成分に硫黄成分が吸着すると、触媒活性点が硫黄成分によって覆われるので、排ガスの浄化および酸素吸蔵物質の働きを促進することができる触媒活性点（以下、「有効触媒活性点」とも称呼する。）の数が減少する。これらの結果、触媒の排ガス浄化性能が低下する。以上が排ガスに含まれる硫黄成分によって触媒が劣化する理由である。
【０００９】
触媒が劣化すると、その触媒は本来の排ガス浄化性能を発揮することができない。その結果、排ガスに含まれる未燃物および窒素酸化物が十分に低減されない場合があるという問題がある。
【００１０】
本発明の目的は、上記課題に鑑み、触媒に吸着・吸蔵された硫黄成分を適切に除去することにより、触媒の劣化を適切に解消することができる内燃機関の制御装置を提供することにある。
【００１１】
上記課題を解決するための本発明による制御装置は、内燃機関の燃焼室から排出されるガス（排ガス）を浄化する触媒を備えた内燃機関に適用される。この触媒は、触媒成分と酸素吸蔵物質とを有する。
【００１２】
上記触媒は、上述したように排ガスを浄化することができる触媒であればよく、特に制限されない。上記触媒として、例えば、触媒成分と、酸素吸蔵物質を含む担体と、を有する公知の三元触媒が採用され得る。さらに、上記触媒として、例えば、触媒成分と、酸素吸蔵物質およびNOx吸蔵物質を含む担体と、を有する公知のNOx吸蔵還元触媒が採用され得る。上記触媒は、例えば、内燃機関の排気通路に設けられ得る。
【００１３】
なお、上記触媒成分は、排ガスの浄化を促進すること（未燃物と窒素酸化物との酸化還元反応の反応速度を速めること）ができる成分であればよく、特に制限されない。触媒成分として、例えば、白金（Pt）およびロジウム（Rh）などの貴金属が採用され得る。さらに、上記酸素吸蔵物質は、酸素を吸蔵することができる物質であればよく、特に制限されない。酸素吸蔵物質として、例えば、酸化セリウム（セリア。CeO2）および酸化ジルコニウム（ZrO2）などが採用され得る。
【００１４】
なお、上記「ガスを浄化する」とは、ガスに含まれる未燃物および窒素酸化物などの浄化対象物質の少なくとも一部をそのガスから除去することを意味し、必ずしも浄化対象物質の全てをそのガスから除去することを意味しない。
【００１５】
上記触媒を備えた内燃機関に適用される本発明の制御装置は、最大酸素吸蔵量取得手段と、酸素吸蔵量回復手段と、を備える。
【００１６】
より具体的に述べると、上記最大酸素吸蔵量取得手段は、「前記触媒に吸蔵され得る酸素の最大量」である最大酸素吸蔵量を取得するようになっている。
【００１７】
上述したように、触媒に含まれる酸素吸蔵物質は、酸素を吸蔵することができる。この酸素吸蔵物質に吸蔵され得る酸素の量は、酸素吸蔵物質そのものが有する特性などに起因して定まる上限量（以下、便宜上、「内的な上限量」とも称呼する。）を有する。一方、上述したように、酸素吸蔵物質の働き（酸素の吸蔵および放出）は、触媒成分によって促進されている。よって、酸素吸蔵物質に吸蔵され得る酸素の量は、触媒成分が有する特性などに起因して定まる上限量（以下、便宜上、「外的な上限量」とも称呼する。）をも有する。
【００１８】
したがって、酸素吸蔵物質に吸蔵され得る酸素の「実際の」上限量は、上述した「内的な上限量」および「外的な上限量」の双方に基づいて定まる。本発明における「最大酸素吸蔵量」は、この「実際の上限量」に相当する。
【００１９】
この最大酸素吸蔵量を取得する方法は、特に制限されない。例えば、「酸素を全く吸蔵していない（すなわち、酸素吸蔵量がゼロである）触媒の酸素吸蔵量を最大量とするために必要なガスの量と、そのガスの酸素濃度と、に基づいて最大酸素吸蔵量を取得する」公知の方法などが採用され得る。
【００２０】
上記最大酸素吸蔵量は、排ガスに含まれる種々の成分に起因して減少する場合がある。触媒の最大酸素吸蔵量が減少する原因の一つとして、排ガスに含まれる硫黄成分が触媒に吸着・吸蔵することが挙げられる。
【００２１】
より具体的に述べると、硫黄成分（SOxなど）が「酸素吸蔵物質に吸蔵される」と、酸素が酸素吸蔵物質に吸蔵されることが妨げられるので、上記「内的な上限量」が減少する。一方、硫黄成分（Sなど）が「触媒成分に吸着する」と、有効触媒活性点の数が減少するので、上記「外的な上限量」が減少する。すなわち、酸素吸蔵物質に吸蔵された硫黄成分および触媒成分に吸着した硫黄成分の双方により、触媒の最大酸素吸蔵量が減少する。
【００２２】
そのため、触媒の最大酸素吸蔵量が減少したとき、内的な上限量および外的な上限量の双方が回復（増大）されれば、最大酸素吸蔵量が適切に回復（増大）され得る。より具体的に述べると、触媒に硫黄成分が吸着・吸蔵することによって触媒の最大酸素吸蔵量が減少したとき、「硫黄成分が存在する部位（すなわち、酸素吸蔵物質および触媒成分の双方、または、それらのいずれか一方）」が把握されるとともに、「その部位に適した方法」によってその部位から硫黄成分が除去されれば、最大酸素吸蔵量が適切に回復（増大）され得る。本発明の酸素吸蔵量回復手段は、この考え方に基づき、触媒の最大酸素吸蔵量を回復させる。
【００２３】
より具体的に述べると、上記酸素吸蔵量回復手段は、前記最大酸素吸蔵量が所定の閾値以下であるとき、下記（Ａ）に示す運転および下記（Ｂ）に示す運転を含む「酸素吸蔵量回復運転」を行うようになっている。なお、後述するように、下記（Ａ）に示す運転は「酸素吸蔵物質に吸蔵された硫黄成分を除去するための運転」であり、下記（Ｂ）に示す運転は「触媒成分に吸着した硫黄成分を除去するための運転」である。
【００２４】
（Ａ）前記触媒に導入されるガスである触媒導入ガスの酸素濃度を「空気と燃料とが理論空燃比にて燃焼したときに生じるガスの酸素濃度である基準酸素濃度」よりもリッチ側の酸素濃度とする「リッチ運転」。
このリッチ運転は、当該リッチ運転が行われる「前」の前記最大酸素吸蔵量である「第１最大酸素吸蔵量」と当該リッチ運転が行われた「後」の前記最大酸素吸蔵量である「第２最大酸素吸蔵量」とが等しくなるまで、または、前記第１最大酸素吸蔵量よりも前記第２最大酸素吸蔵量が大きくなるまで、行われる。
【００２５】
（Ｂ）前記触媒導入ガスの酸素濃度を前記基準酸素濃度よりもリーン側の酸素濃度とする「リーン運転」。
このリーン運転は、上記（Ａ）に示すリッチ運転によって「前記第１最大酸素吸蔵量と前記第２最大酸素吸蔵量とが等しくなったとき、または、前記第１最大酸素吸蔵量よりも前記第２最大酸素吸蔵量が大きくなったとき」に行われる。
【００２６】
上記「基準酸素濃度よりもリッチ側の酸素濃度」とは、上記基準酸素濃度よりも低い酸素濃度を意味する。一方、上記「基準酸素濃度よりもリーン側の酸素濃度」とは、上記基準酸素濃度よりも高い酸素濃度を意味する。以下、基準酸素濃度よりもリッチ側の酸素濃度を単に「リッチ側酸素濃度」とも称呼し、基準酸素濃度よりもリーン側の酸素濃度を単に「リーン側酸素濃度」とも称呼する。
【００２７】
上記「リッチ運転」は、触媒導入ガスの酸素濃度がリッチ側酸素濃度である運転であればよく、特に制限されない。リッチ運転として、例えば、内燃機関の混合気の空燃比を理論空燃比よりもリッチ側の空燃比とする運転（いわゆる、燃料増量運転）が採用され得る。さらに、リッチ運転として、例えば、燃焼室から排出されるガスに再び燃料を噴射する（いわゆる、排気添加を行う）運転が採用され得る。一方、上記「リーン運転」は、触媒導入ガスの酸素濃度がリーン側酸素濃度である運転であればよく、特に制限されない。リーン運転として、例えば、燃焼室へ燃料を供給しない運転（いわゆる、フューエルカット運転）が採用され得る。
【００２８】
上記「酸素吸蔵量回復運転」によって触媒の最大酸素吸蔵量が適切に回復（増大）される理由について、以下に説明する。
【００２９】
発明者は、触媒に吸着・吸蔵された硫黄成分が触媒から排出されるメカニズムを検討するべく、種々の考察および実験などを行った。発明者によるこれら種々の考察および実験などによれば、「触媒に吸着・吸蔵された硫黄成分の挙動」と「排ガスの酸素濃度」との間には密接な関係があることが確認された。具体的に述べると、まず、酸素吸蔵物質に吸蔵されている硫黄成分は、排ガスの酸素濃度がリッチ側酸素濃度である場合に触媒成分に向けて移動して触媒成分に吸着する、ことが確認された。さらに、触媒成分に吸着している硫黄成分は、排ガスの酸素濃度がリーン側酸素濃度である場合に排ガス中に放出される、ことが確認された。すなわち、酸素吸蔵物質に吸蔵されている硫黄成分は、酸素吸蔵物質から排ガス中に直接には放出されず、触媒成分を経由して排ガス中に放出される、ことが確認された。加えて、上記「内的な上限量」が最大酸素吸蔵量に及ぼす影響よりも上記「外的な上限量」が最大酸素吸蔵量に及ぼす影響が大きい、ことが確認された。
【００３０】
上記確認された事項を考慮し、本発明の酸素吸蔵量回復手段は、酸素吸蔵量回復運転として、まず「リッチ運転」を行う（上記（Ａ））。
【００３１】
リッチ運転が行われると、酸素吸蔵物質に硫黄成分が「吸蔵されている」場合、上述したように硫黄成分は触媒成分に向けて移動して触媒成分に吸着する。すなわち、リッチ運転により、酸素吸蔵物質に吸蔵された硫黄成分が除去される。換言すると、リッチ運転は、「酸素吸蔵物質に吸蔵された硫黄を除去するために適した運転」である。
【００３２】
このとき、「酸素吸蔵物質に吸蔵されている硫黄成分」の量が減少するので、酸素吸蔵物質が吸蔵し得る酸素の量が増大する。よって、「内的な上限量」が増大する。ところが、このとき、酸素吸蔵物質から触媒成分へと移動した硫黄成分の量だけ「触媒成分に吸着している硫黄成分」の量が増大するので、有効触媒活性点の数が減少する。よって、「外的な上限量」が減少する。すなわち、この場合、内的な上限量が増大しても外的な上限量が減少する。上述したように、外的な上限量は、内的な上限量よりも最大酸素吸蔵量に大きな影響を及ぼす。よって、これらの結果、触媒の最大酸素吸蔵量は「減少」する。
【００３３】
これに対し、酸素吸蔵物質に硫黄成分が「吸蔵されていない」場合、または、「硫黄成分が移動し得る領域が触媒成分上に存在しない」場合、リッチ運転が行われても、「内的な上限量」は変化しない。さらに、この場合、「外的な上限量」も変化しない。これらの結果、触媒の最大酸素吸蔵量は実質的に「変化しない」。
【００３４】
したがって、リッチ運転を行う「前」の最大酸素吸蔵量（第１最大酸素吸蔵量）よりもリッチ運転を行った「後」の最大酸素吸蔵量（第２最大酸素吸蔵量）が「小さい」場合、「酸素吸蔵物質に吸蔵されていた硫黄成分の少なくとも一部が酸素吸蔵物質から除去された」と言える。これに対し、第１最大酸素吸蔵量よりも第２最大酸素吸蔵量が「小さくない」場合、「触媒成分に移動可能な最大の量の硫黄成分が酸素吸蔵物質から触媒成分に移動された（すなわち、酸素吸蔵物質に吸蔵されていた全ての硫黄成分が酸素吸蔵物質から除去された、または、硫黄成分が移動し得る領域が触媒成分上に存在しない）」と言える。換言すると、リッチ運転により、「硫黄成分が存在する部位」が把握される。
【００３５】
上述したように、酸素吸蔵物質に吸蔵されている硫黄成分は、触媒成分を経由して排ガス中に放出される。そのため、出来る限り多量の酸素吸蔵物質に吸蔵されている硫黄成分が触媒成分に向けて移動された後に触媒成分上から硫黄成分が除去されると、内的な上限量および外的な上限量が適切に（例えば、短時間にて）回復され得ると考えられる。そこで、上記酸素吸蔵量回復手段は、リッチ運転を「第１最大酸素吸蔵量よりも第２最大酸素吸蔵量が小さくない状態となるまで（換言すると、第１最大酸素吸蔵量と第２最大酸素吸蔵量とが等しくなるまで又は第１最大酸素吸蔵量よりも第２最大酸素吸蔵量が大きくなるまで）」行った後、「リーン運転」を行う（上記（Ｂ））。なお、「第１最大酸素吸蔵量よりも第２最大酸素吸蔵量が大きくなる」場合の例については、後述される。
【００３６】
リーン運転が行われると、上述したように、「触媒成分に吸着している硫黄成分」は排ガス中に放出される。すなわち、リーン運転により、触媒成分に吸着した硫黄成分が除去される。換言すると、リーン運転は、「触媒成分に吸着した硫黄成分を除去するために適した運転」である。
【００３７】
このとき、「触媒成分に吸着している硫黄成分」の量が減少するので、有効触媒活性点の数が増大する。よって、「外的な上限量」が増大する。なお、このとき、「内的な上限量」は実質的に変化しない。これらの結果、触媒の最大酸素吸蔵量は「増大（回復）」する。
【００３８】
このように、本発明の酸素吸蔵量回復手段は、リッチ運転を行うことによって出来る限り多量の「酸素吸蔵物質に吸蔵されている硫黄成分」を触媒成分へと移動させた後、リーン運転を行うことによって「触媒成分に吸着している硫黄成分」を排ガス中に放出させる。すなわち、本発明の酸素吸蔵量回復手段は、硫黄成分が存在する部位を把握するとともに（すなわち、リッチ運転の前後の最大酸素吸蔵量を比較することにより、酸素吸蔵物質および触媒成分のいずれに硫黄成分が存在するかを把握するとともに）、その部位に適した方法（リッチ運転またはリーン運転）によってその部位から硫黄成分を除去することができる。したがって、本発明の制御装置は、触媒に吸着・吸蔵された硫黄成分を適切に除去することができるので、触媒の最大酸素吸蔵量を適切に回復させる（すなわち、触媒の劣化を適切に解消する）ことができる。
【００３９】
本発明の制御装置の一の態様として、
前記酸素吸蔵量回復手段は、上記（Ａ）に示す運転として下記（Ａ’）に示す運転を行い、上記（Ｂ）に示す運転として下記（Ｂ’）に示す運転を行う、ように構成され得る。
【００４０】
（Ａ’）「前記リッチ運転を「所定の期間」だけ行った後に、前記第１最大酸素吸蔵量と前記第２最大酸素吸蔵量とを比較する」ことを、前記第１最大酸素吸蔵量と前記第２最大酸素吸蔵量とが等しいと判定されるまで又は前記第１最大酸素吸蔵量よりも前記第２最大酸素吸蔵量が大きいと判定されるまで「繰り返す」運転。
（Ｂ’）前記第１最大酸素吸蔵量と前記第２最大酸素吸蔵量とが等しいと判定された後または前記第１最大酸素吸蔵量よりも前記第２最大酸素吸蔵量が大きいと判定された後に行われる、前記リーン運転。
【００４１】
上述したように、上記（Ａ）に示す運転により、「触媒成分に移動可能な最大の量」の硫黄成分が酸素吸蔵物質から触媒成分に移動される。その結果、触媒の状態が「第１最大酸素吸蔵量よりも第２最大酸素吸蔵量が小さくない」状態となる。ここで、「触媒成分に移動可能な最大の量」の硫黄成分を酸素吸蔵物質から触媒成分に移動させ得る適度なリッチ運転の程度（リッチ運転が行われる際の触媒導入ガスの酸素濃度、および、リッチ運転が行われる期間など）は、例えば、実験などによって取得されたマップに基づいて定められ得る。
【００４２】
ところが、この「適度なリッチ運転の程度」は、内燃機関の構成、酸素吸蔵物質の種類、触媒成分の種類、および、触媒の構成などによっては容易に定められない場合がある。
【００４３】
そこで、本態様の制御装置は、上記（Ａ’）に示すように「リッチ運転を所定の期間だけ行うことを繰り返す」ようになっている。リッチ運転が行われると、所定の量の硫黄成分が酸素吸蔵物質から触媒成分に向けて移動される。よって、このリッチ運転を繰り返せば、いずれかの時点にて「触媒成分に移動可能な最大の量」の硫黄成分が酸素吸蔵物質から触媒成分に移動される。そして、上記（Ａ’）に示すリッチ運転が行われた後に上記（Ｂ’）に示すリーン運転が行われることにより、上記同様、触媒成分に吸着している硫黄成分が排ガス中に放出される。
【００４４】
このように、本態様の制御装置は、上記「適度なリッチ運転の程度」を容易に定められない場合であっても、簡便に「触媒成分に移動可能な最大の量」の硫黄成分を酸素吸蔵物質から触媒成分に移動させることができる。
【００４５】
さらに、本発明の制御装置の他の態様の一つとして、
前記酸素吸蔵量回復手段は、
「前記酸素吸蔵量回復運転を行う前」に前記リーン運転を行う、ように構成され得る。
【００４６】
上述したように、リーン運転を行うと、触媒成分に吸着している硫黄成分の量が減少するので、「触媒成分に移動可能な硫黄成分の量」が増大する。そこで、本態様の制御装置は、酸素吸蔵量回復運転を行う「前」にリーン運転を行うようになっている。これにより、酸素吸蔵量回復運転におけるリッチ運転が行われるときに「酸素吸蔵物質から触媒成分に向けて移動し得る硫黄成分の量」が、増大する。
【００４７】
これにより、本態様の制御装置は、酸素吸蔵物質に吸蔵されている硫黄成分をより効率良く除去することができるので、触媒の最大酸素吸蔵量をより効率良く回復（増大）させることができる。
【００４８】
ところで、酸素吸蔵量回復運転を行う「前」にリーン運転を行うと、第１最大酸素吸蔵量よりも第２最大酸素吸蔵量が「大きく」なる場合がある。具体的に述べると、例えば、触媒成分および酸素吸蔵物質の「双方」に硫黄成分が存在している触媒の最大酸素吸蔵量が「Ｃ１」である、と仮定する。この最大酸素吸蔵量Ｃ１は、「第１最大酸素吸蔵量（リッチ運転が行われる前の最大酸素吸蔵量）」に相当する。
【００４９】
まず、この触媒に対して酸素吸蔵量回復運転が行われる「前」にリーン運転が行われると、触媒成分から硫黄成分が除去されるので、最大酸素吸蔵量は「Ｃ１以上のＣ２」となる。なお、例えば、酸素吸蔵物質が酸素を全く吸蔵することができない程度に硫黄成分を吸蔵している場合（すなわち、内的な上限量がゼロである場合）、リーン運転が行われても最大酸素吸蔵量は変化しないので、Ｃ１とＣ２とは一致する。次いで、酸素吸蔵量回復運転におけるリッチ運転が行われると、硫黄成分が触媒成分に移動するので、最大酸素吸蔵量は「Ｃ２よりも小さいＣ３」となる。この最大酸素吸蔵量Ｃ３は、「第２最大酸素吸蔵量（リッチ運転が行われた後の最大酸素吸蔵量）」に相当する。
【００５０】
このとき、例えば、リーン運転が行われる前の時点において内的な上限量よりも外的な上限量が過度に小さい場合（例えば、有効触媒活性点の数が極めて少ない場合）、リーン運転が行われることによって外的な上限量が顕著に増大するので（例えば、有効触媒活性点の数が顕著に増加するので）、Ｃ１よりもＣ２が極めて大きくなる。そして、このリーン運転の後にリッチ運転が行われることにより、Ｃ２は減少してＣ３となる。ここで、Ｃ１からＣ２への増大の程度が、Ｃ２からＣ３への減少の程度よりも大きければ、Ｃ１（第１最大酸素吸蔵量）よりもＣ３（第２最大酸素吸蔵量）が大きくなる。
【００５１】
このように、リーン運転が行われる前の時点において酸素吸蔵物質に吸蔵されていた硫黄成分の量と、その時点において触媒成分に吸着していた硫黄成分の量と、の関係（すなわち、内的な上限量と外的な上限量との関係）によっては、第１最大酸素吸蔵量（Ｃ１）よりも第２最大酸素吸蔵量（Ｃ３）が「大きく」なる場合がある。
【００５２】
ところで、上述したように、本発明の制御装置は、「触媒に吸着・吸蔵された硫黄成分の挙動」と「排ガスの酸素濃度」との関係に着目し、触媒に吸着・吸蔵された硫黄成分を除去するようになっている。発明者によるさらなる種々の考察および実験などによれば、触媒に吸着・吸蔵された硫黄成分の挙動は、排ガスの酸素濃度だけではなく「触媒の温度」の影響をも受けることが確認された。
【００５３】
具体的に述べると、触媒の温度が「特定の温度範囲内にある（例えば、第１温度以上第２温度以下である）」ときに排ガスの酸素濃度が「リッチ側酸素濃度」である場合、酸素吸蔵物質に吸蔵された硫黄成分が触媒成分に向けて効率良く移動する、ことが確認された。さらに、触媒の温度が「上記特定の温度範囲内の特定の温度以上である（例えば、第１温度と第２温度の間の第３温度以上である）」ときに排ガスの酸素濃度が「リーン側酸素濃度」である場合、触媒成分上に存在する硫黄成分が効率良く排ガス中に放出される、ことが確認された。
【００５４】
上記確認された事項を考慮し、本態様の制御装置は、酸素吸蔵量回復運転を行う。具体的に述べると、上述した本発明の制御装置の他の態様の一つとして、
前記酸素吸蔵量回復手段は、
触媒が下記（Ｃ−１）および（Ｃ−２）に示す特性を有する触媒であるとき、
前記触媒の温度が「下記第３温度以上であり且つ下記第２温度以下」である場合に前記酸素吸蔵量回復運転を行う、ように構成され得る。
【００５５】
（Ｃ−１）前記触媒の温度が「第１温度以上第２温度以下」であるときに前記触媒導入ガスの酸素濃度が前記基準酸素濃度よりも「リッチ側」の酸素濃度である場合、前記酸素吸蔵物質に吸蔵された硫黄成分が前記触媒成分に向けて移動する。
（Ｃ−２）前記触媒の温度が前記第１温度と前記第２温度の間の「第３温度以上」であるときに前記触媒導入ガスの酸素濃度が前記基準酸素濃度よりも「リーン側」の酸素濃度である場合、前記触媒成分上に存在する前記硫黄成分が前記触媒導入ガス中に放出される。
【００５６】
上記第１温度、上記第２温度および上記第３温度は、触媒を構成する物質などに応じて定まる値であって、あらかじめ実験などによって取得され得る。
【００５７】
なお、上記（Ｃ−１）の特性は、触媒の温度が同特性に示される温度範囲（第１温度以上第２温度以下）に含まれる場合、触媒の温度が同温度範囲に含まれない場合よりも効率良く酸素吸蔵物質に吸蔵された硫黄成分が触媒成分に向けて移動されることを意味する。すなわち、上記（Ｃ−１）の特性は、触媒の温度が同温度範囲に含まれない場合に酸素吸蔵物質に吸蔵された硫黄成分が触媒成分に向けて全く移動しないことを意味するものではない。
【００５８】
上記同様、上記（Ｃ−２）の特性は、触媒の温度が同特性に示される温度範囲（第３温度以上）に含まれる場合、触媒の温度が同温度範囲に含まれない場合よりも効率良く触媒成分上に存在する硫黄成分が排ガス中に放出されることを意味する。すなわち、上記（Ｃ−２）の特性は、触媒の温度が同温度範囲に含まれない場合に触媒成分上に存在する硫黄成分が排ガス中に全く放出されないことを意味するものではない。
【００５９】
上述したように、本発明の酸素吸蔵量回復手段は、酸素吸蔵物質に吸蔵されている硫黄成分を触媒成分を経由して排ガス中に放出させる、ようになっている（上記（Ａ）および上記（Ｂ）を参照。）。ところが、触媒が上記（Ｃ−１）および（Ｃ−２）の特性を有するとき、酸素吸蔵物質に吸蔵された硫黄成分が効率良く触媒成分に移動される触媒の温度範囲（第１温度以上第２温度以下）と、触媒成分上に存在する硫黄成分が効率良く排ガス中に放出される触媒の温度範囲（第３温度以上）と、は一致しない場合がある（図６を参照。）。
【００６０】
そこで、本態様の制御装置は、それら温度範囲が「一致する」場合（すなわち、触媒の温度が第３温度以上であり且つ第２温度以下である場合）、酸素吸蔵量回復運転を行うようになっている。これにより、本態様の制御装置は、触媒に吸着・吸蔵されている硫黄成分をより効率良く除去することができるので、触媒の最大酸素吸蔵量をより効率良く回復することができる。
【００６１】
さらに、本発明の制御装置の他の態様の一つとして、
酸素吸蔵量回復手段は、触媒の最大酸素吸蔵量の大きさに応じて、「リッチ運転を行う際の触媒導入ガスの酸素濃度」を調整するように構成され得る。
【００６２】
例えば、前記酸素吸蔵量回復手段は、
前記最大酸素吸蔵量が「第１の値」であるときに前記リッチ運転を行う場合の前記触媒導入ガスの酸素濃度である「第１酸素濃度」が、前記最大酸素吸蔵量が「前記第１の値よりも大きい第２の値」であるときに前記リッチ運転を行う場合の前記触媒導入ガスの酸素濃度である「第２酸素濃度と同一」または「前記第２酸素濃度よりもリッチ側の酸素濃度」である、ように構成され得る。
【００６３】
このように、触媒の最大酸素吸蔵量が小さいほど「リッチ運転を行う際の触媒導入ガスの酸素濃度」を上記基準酸素濃度からリッチ側に離れる酸素濃度に設定することにより（すなわち、第１酸素濃度を第２酸素濃度よりもリッチ側の酸素濃度とすることにより）、触媒に吸着・吸蔵された硫黄成分をさらに効率良く除去することができる。一方、触媒の最大酸素吸蔵量の大小にかかわらずリッチ運転を行う際の触媒導入ガスの酸素濃度を変化させないことにより（すなわち、第１酸素濃度を第２酸素濃度と同一の酸素濃度とすることにより）、触媒に吸着・吸蔵された硫黄成分を除去する処理をより簡便に行うことができる。
【００６４】
さらに、本発明の制御装置の他の態様の一つとして、
酸素吸蔵量回復手段は、触媒の最大酸素吸蔵量の大きさに応じて、「リーン運転を行う際の触媒導入ガスの酸素濃度」を調整するように構成され得る。
【００６５】
例えば、前記酸素吸蔵量回復手段は、
前記最大酸素吸蔵量が「第３の値」であるときに前記リーン運転を行う場合の前記触媒導入ガスの酸素濃度である「第３酸素濃度」が、前記最大酸素吸蔵量が「前記第３の値よりも大きい第４の値」であるときに前記リーン運転を行う場合の前記触媒導入ガスの酸素濃度である「第４酸素濃度と同一」または「前記第４酸素濃度よりもリーン側の酸素濃度」である、ように構成され得る。
【００６６】
このように、触媒の最大酸素吸蔵量が小さいほど「リーン運転を行う際の触媒導入ガスの酸素濃度」を上記基準酸素濃度からリーン側に離れる酸素濃度に設定することにより（すなわち、第３酸素濃度を第４酸素濃度よりもリーン側の酸素濃度とすることにより）、触媒に吸着・吸蔵された硫黄成分をさらに効率良く除去することができる。一方、触媒の最大酸素吸蔵量の大小にかかわらずリーン運転を行う際の触媒導入ガスの酸素濃度を変化させないことにより（すなわち、第３酸素濃度を第４酸素濃度と同一の酸素濃度とすることにより）、触媒に吸着・吸蔵された硫黄成分を除去する処理をより簡便に行うことができる。
【００６７】
上述したように、本発明の制御装置は、所定の特性を有する触媒を備えた内燃機関において、触媒の最大酸素吸蔵量が減少したとき、出来る限り多量の酸素吸蔵物質に存在する硫黄成分を触媒成分に向けて移動させるとともにその硫黄成分を触媒成分から排ガス中に排出する運転（酸素吸蔵量回復運転）を行うようになっている。
【００６８】
換言すると、本発明による制御装置は、
内燃機関の燃焼室から排出されるガスを浄化する触媒であって、触媒成分と酸素吸蔵物質とを有し、該触媒に導入されるガスである触媒導入ガスの酸素濃度が空気と燃料とが理論空燃比にて燃焼したときに生じるガスの酸素濃度である基準酸素濃度よりもリッチ側の酸素濃度であるときに前記酸素吸蔵物質に吸蔵された硫黄成分が前記触媒成分に向けて移動し、かつ、前記触媒導入ガスの酸素濃度が前記基準酸素濃度よりもリーン側の酸素濃度であるときに前記触媒成分上に存在する前記硫黄成分が前記触媒導入ガス中に放出される触媒、を備えた内燃機関に適用される。
【００６９】
さらに、換言すると、この制御装置は、
前記触媒に吸蔵され得る酸素の最大量である最大酸素吸蔵量を取得する最大酸素吸蔵量取得手段と、
前記最大酸素吸蔵量が所定の閾値以下であるとき、
前記触媒導入ガスの酸素濃度を前記基準酸素濃度よりもリッチ側の酸素濃度とする「リッチ運転」を「前記触媒成分に移動可能な最大の量の硫黄成分が前記酸素吸蔵物質から前記触媒成分に移動するまで」行うこと、および、「前記触媒成分に移動可能な最大の量の硫黄成分が前記酸素吸蔵物質から前記触媒成分に移動したとき」に前記触媒導入ガスの酸素濃度を前記基準酸素濃度よりもリーン側の酸素濃度とする「リーン運転」を行うこと、を含む「酸素吸蔵量回復運転」を行う酸素吸蔵量回復手段と、を備えるように構成される。
【図面の簡単な説明】
【００７０】
【図１】本発明の第１実施形態に係る制御装置が適用される内燃機関の概略図である。
【図２】図１に示した上流側酸素濃度センサの出力値と、空燃比と、の関係を示すグラフである。
【図３】図１に示した下流側酸素濃度センサの出力値と、空燃比と、の関係を示すグラフである。
【図４】本発明の第１の実施形態に係る制御装置の作動を示す概略フローチャートである。
【図５】触媒の最大酸素吸蔵量を取得する際における、触媒上流側空燃比と、下流側酸素濃度センサの出力値と、酸素吸蔵量と、の関係を示すタイムチャートである。
【図６】触媒の温度と、排ガスの空燃比（酸素濃度）と、触媒に吸着・吸蔵された硫黄成分の主な挙動と、の関係を示す概略図である。
【図７】本発明の第１実施形態に係る制御装置のＣＰＵが実行するルーチンを示したフローチャートである。
【図８】本発明の第１実施形態に係る制御装置のＣＰＵが実行するルーチンを示したフローチャートである。
【図９】本発明の第１実施形態に係る制御装置のＣＰＵが実行するルーチンを示したフローチャートである。
【図１０】本発明の第１実施形態に係る制御装置のＣＰＵが実行するルーチンを示したフローチャートである。
【図１１】本発明の第１実施形態に係る制御装置のＣＰＵが実行するルーチンを示したフローチャートである。
【図１２】本発明の第２実施形態に係る制御装置のＣＰＵが実行するルーチンを示したフローチャートである。
【発明を実施するための形態】
【００７１】
以下、本発明による内燃機関の制御装置の各実施形態について、図面を参照しながら説明する。
【００７２】
（第１実施形態）
＜装置の概要＞
図１は、本発明の第１実施形態に係る制御装置（以下、「第１装置」とも称呼する。）を内燃機関１０に適用したシステムの概略構成を示している。内燃機関１０は、４サイクル火花点火式多気筒（４気筒）機関である。図１は、複数の気筒のうちの一の気筒の断面のみを示している。なお、他の気筒もこの一の気筒と同様の構成を備えている。以下、便宜上、「内燃機関１０」を単に「機関１０」とも称呼する。
【００７３】
この機関１０は、シリンダブロック部２０、シリンダブロック部２０の上部に固定されるシリンダヘッド部３０、シリンダブロック部２０に空気と燃料との混合気を導入するための吸気系統４０、および、シリンダブロック部２０から排出されるガス（排ガス）を機関１０の外部に放出するための排気系統５０、を備えている。
【００７４】
シリンダブロック部２０は、シリンダ２１、ピストン２２、コンロッド２３、および、クランクシャフト２４、を有している。ピストン２２はシリンダ２１内を往復動し、ピストン２２の往復動がコンロッド２３を介してクランクシャフト２４に伝達され、これにより同クランクシャフト２４が回転するようになっている。シリンダ２１の内壁面、ピストン２２の上面およびシリンダヘッド部３０の下面は、燃焼室２５を画成している。
【００７５】
シリンダヘッド部３０は、燃焼室２５に連通した吸気ポート３１、吸気ポート３１を開閉する吸気弁３２、吸気弁３２を駆動するインテークカムシャフトを有するとともに同インテークカムシャフトの位相角およびリフト量を連続的に変更する可変吸気タイミング装置３３、可変吸気タイミング装置３３のアクチュエータ３３ａ、燃料を吸気ポート３１内に噴射するインジェクタ３４、燃焼室２５に連通した排気ポート３５、排気ポート３５を開閉する排気弁３６、排気弁３６を駆動するエキゾーストカムシャフト３７、点火プラグ３８、および、点火プラグ３８に与える高電圧を発生するイグニッションコイルを含むイグナイタ３９、を有している。
【００７６】
なお、機関１０は、インジェクタ３４に代えて、または、インジェクタ３４とは別に、燃料を燃焼室２５内に直接噴射する筒内インジェクタ（図示省略。）を備えるように構成され得る。
【００７７】
吸気系統４０は、吸気ポート３１を介してそれぞれの気筒に連通されたインテークマニホールド４１、インテークマニホールド４１の上流側の集合部に接続された吸気管４２、吸気管４２の端部に設けられたエアクリーナ４３、吸気管４２の開口面積（開口断面積）を変更することができるスロットル弁（吸気絞り弁）４４、および、指示信号に応じてスロットル弁４４を回転駆動するスロットル弁アクチュエータ４４ａ、を有している。吸気ポート３１、インテークマニホールド４１および吸気管４２は、吸気通路を構成している。
【００７８】
排気系統５０は、排気ポート３５を介してそれぞれの気筒に連通されたエキゾーストマニホールド５１、エキゾーストマニホールド５１の下流側の集合部に接続された排気管５２、および、排気管５２に設けられた排ガス浄化用触媒５３、を有している。排気ポート３５、エキゾーストマニホールド５１および排気管５２は、排気通路を構成している。以下、排ガス浄化用触媒５３を、単に「触媒５３」とも称呼する。
【００７９】
触媒５３は、酸素吸蔵物質としてセリア・ジルコニア共触媒（CeO2−ZrO2）などを含む担体としてのアルミナなどのセラミクスと、触媒成分としての白金およびロジウムなどの貴金属と、から構成される三元触媒である。この触媒５３は、触媒の温度がその活性温度以上であり、かつ、触媒５３に導入される排ガスの酸素濃度が「理論空燃比の混合気が燃焼した際に生じる排ガスの酸素濃度」である場合、排ガス中の未燃物（HCなど）と窒素酸化物（NOx）との酸化還元反応を促進し、これらを高い浄化率にて同時に浄化することができる。
【００８０】
機関１０の外部には、機関１０に加速要求および要求トルクなどを入力するためのアクセルペダル６１が設けられている。アクセルペダル６１は、機関１０の操作者によって操作される。
【００８１】
さらに、機関１０は、複数のセンサを備えている。
具体的に述べると、第１装置は、吸入空気量センサ７１、スロットル弁開度センサ７２、カムポジションセンサ７３、クランクポジションセンサ７４、水温センサ７５、上流側酸素濃度センサ７６、下流側酸素濃度センサ７７、および、アクセル開度センサ７８、を備えている。
【００８２】
吸入空気量センサ７１は、吸気通路（吸気管４２）に設けられている。吸入空気量センサ７１は、吸気管４２内を流れる空気の質量流量である吸入空気量（すなわち、機関１０に吸入される空気の質量）に応じた信号を出力するようになっている。この信号に基づき、吸入空気量Gaの測定値が取得される。
【００８３】
スロットル弁開度センサ７２は、スロットル弁４４の近傍に設けられている。スロットル弁開度センサ７２は、スロットル弁４４の開度に応じた信号を出力するようになっている。この信号に基づき、スロットル弁開度TAが取得される。
【００８４】
カムポジションセンサ７３は、可変吸気タイミング装置３３の近傍に設けられている。カムポジションセンサ７３は、インテークカムシャフトが９０°回転する毎に（すなわち、クランクシャフト２４が１８０°回転する毎に）一つのパルスを有する信号を出力するようになっている。この信号に基づき、インテークカムシャフトの回転位置（カムポジション）の測定値が取得される。
【００８５】
クランクポジションセンサ７４は、クランクシャフト２４の近傍に設けられている。クランクポジションセンサ７４は、クランクシャフト２４が１０°回転する毎に幅の狭いパルスを有する信号を出力するとともに、クランクシャフト２４が３６０°回転する毎に幅の広いパルスを有する信号を出力するようになっている。これら信号に基づき、クランクシャフト２４の単位時間あたりの回転数の測定値（以下、単に「機関回転速度NE」とも称呼する。）が取得される。
【００８６】
水温センサ７５は、シリンダ２１に設けられている冷却水の通路に設けられている。水温センサ７５は、冷却水の温度に応じた信号を出力するようになっている。この信号に基づき、冷却水の温度THWの測定値が取得される。
【００８７】
上流側酸素濃度センサ７６は、触媒５３の上流側の排気通路（エキゾーストマニホールド５１の集合部の近傍または集合部よりも下流側）に設けられている。上流側酸素濃度センサ７６は、公知の限界電流式の酸素濃度センサである。上流側酸素濃度センサ７６は、触媒５３に導入される排ガスの酸素濃度に応じた信号を出力するようになっている。
【００８８】
以下、排ガスの酸素濃度を「排ガスの空燃比」とも、排ガスの酸素濃度が理論空燃比の混合気が燃焼した際に生じる排ガスの酸素濃度であることを「排ガスの空燃比が理論空燃比である」とも、称呼する。さらに、以下、理論空燃比よりもリッチ側の空燃比を「リッチ空燃比」とも、理論空燃比よりもリーン側の空燃比を「リーン空燃比」とも、称呼する。
【００８９】
より具体的に述べると、排ガスの空燃比が「リッチ空燃比」であるとは、排ガスに「排ガスに含まれる未燃物を全て酸化するために必要な量よりも少ない量の酸素」が含まれている状態を表す。一方、排ガスの空燃比が「リーン空燃比」であるとは、排ガスに「排ガスに含まれる未燃物を全て酸化するために必要な量よりも多い量の酸素」が含まれている状態を表す。さらに、排ガスの空燃比が「理論空燃比」であるとは、排ガスに「排ガスに含まれる未燃物を全て酸化するために必要な量の酸素」が含まれている状態を表す。
【００９０】
この上流側酸素濃度センサ７６は、図２に示すように、測定対象であるガスの空燃比に応じた電圧であるVabyfsを出力するようになっている。出力値Vabyfsは、排ガスの空燃比が理論空燃比であるときに値Vstoichに一致する。さらに、排ガスの空燃比が増大するにつれて（すなわち、空燃比が理論空燃比からリーン側に離れた空燃比になるにつれて）、出力値Vabyfsは増大する。この出力値Vabyfsに基づき、触媒５３に導入される排ガスの空燃比が取得される。以下、触媒５３に導入される排ガスの空燃比を「触媒上流側空燃比abyfs」とも称呼する。さらに、以下、図２に示す出力値Vabyfsと空燃比A/Fとの関係は「テーブルMapabyfs」とも称呼される。
【００９１】
再び図１を参照すると、下流側酸素濃度センサ７７は、触媒５３の下流側の排気通路に設けられている。下流側酸素濃度センサ７７は、公知の起電力式（濃淡電池型）の酸素濃度センサである。下流側酸素濃度センサ７７は、触媒５３から排出される排ガスの酸素濃度（空燃比）に応じた信号を出力するようになっている。
【００９２】
この下流側酸素濃度センサ７７は、図３に示すように、測定対象であるガスの空燃比に応じた電圧であるVoxsを出力するようになっている。出力値Voxsは、排ガスの空燃比がリッチ空燃比であるときに最大値（例えば、約０．９Ｖ）となり、排ガスの空燃比がリーン空燃比であるときに最小値（例えば、約０．１Ｖ）となり、排ガスの空燃比が理論空燃比であるとき最大値と最小値とのほぼ中間の電圧（例えば、約０．５Ｖ）となる。さらに、出力値Voxsは、排ガスの空燃比がリッチ空燃比からリーン空燃比へ変化するときに最大値から最小値へ急変し、排ガスの空燃比がリーン空燃比からリッチ空燃比へ変化するときに最小値から最大値へ急変する。この出力値Voxsに基づき、触媒５３から排出される排ガスの空燃比が取得される。以下、触媒５３から排出される排ガスの空燃比を「触媒下流側空燃比oxs」とも称呼する。
【００９３】
再び図１を参照すると、アクセル開度センサ７８は、アクセルペダル６１に設けられている。アクセル開度センサ７８は、アクセルペダル６１の開度に応じた信号を出力するようになっている。この信号に基づき、アクセルペダル開度Accpが取得される。
【００９４】
さらに、機関１０は、電子制御装置８０を備えている。
電子制御装置８０は、ＣＰＵ８１、ＣＰＵ８１が実行するプログラム、テーブル（マップ）および定数などをあらかじめ記憶したＲＯＭ８２、ＣＰＵ８１が必要に応じて一時的にデータを格納するＲＡＭ８３、電源が投入された状態でデータを格納すると共に格納したデータを電源が遮断されている間も保持するバックアップＲＡＭ８４、ならびに、ＡＤコンバータを含むインターフェース８５を有する。ＣＰＵ８１、ＲＯＭ８２、ＲＡＭ８３、ＲＡＭ８４およびインターフェース８５は、互いにバスで接続されている。
【００９５】
インターフェース８５は、上記各センサと接続され、ＣＰＵ８１にそれらセンサから出力される信号を伝えるようになっている。さらに、インターフェース８５は、可変吸気タイミング装置３３のアクチュエータ３３ａ、インジェクタ３４、イグナイタ３９およびスロットル弁アクチュエータ４４ａなどと接続され、ＣＰＵ８１の指示に応じてそれらに指示信号を送るようになっている。
【００９６】
＜装置の作動の概要＞
以下、機関１０に適用される第１装置の作動の概要について、図４を参照しながら説明する。図４は、第１装置の作動の概要を示す概略フローチャートである。
【００９７】
第１装置は、触媒５３に導入される排ガスの空燃比（触媒上流側空燃比abyfs）を理論空燃比stoichに一致させる「通常運転」が行われているとき、図４のステップ４１０において触媒５３の「最大酸素吸蔵量Cmax」を取得する。そして、第１装置は、その最大酸素吸蔵量Cmaxが所定の参照値Cmaxref以下である場合、ステップ４２０にて「Ｎｏ」と判定する。そして、この場合、第１装置は、「触媒５３の最大酸素吸蔵量を回復させるための運転（酸素吸蔵量回復運転）」を行う。
【００９８】
具体的に述べると、第１装置は、ステップ４３０に進み、触媒上流側空燃比abyfsをリッチ空燃比richとする「リッチ運転」を行う。第１装置は、リッチ運転を所定の期間だけ行った後に「通常運転」を再開するとともに、ステップ４４０において触媒５３の最大酸素吸蔵量Cmaxを再び取得する。そして、第１装置は、ステップ４５０において、リッチ運転を行った「後」の最大酸素吸蔵量Cmaxがリッチ運転を行う「前」の最大酸素吸蔵量Cmaxよりも小さいか否かを判定する。以下、便宜上、リッチ運転を行う前の最大酸素吸蔵量を「第１最大酸素吸蔵量」と、リッチ運転を行った後の最大酸素吸蔵量を「第２最大酸素吸蔵量」とも称呼する。
【００９９】
第２最大酸素吸蔵量が第１最大酸素吸蔵量よりも「小さい」場合、第１装置は、ステップ４５０にて「Ｙｅｓ」と判定し、接続指標Ａを経由してステップ４３０に進み、再びリッチ運転を行う。このように、第１装置は、第２最大酸素吸蔵量が第１最大酸素吸蔵量よりも「小さくない」と判定されるまで、「リッチ運転を所定の期間だけ行った後、第２最大酸素吸蔵量と第１最大酸素吸蔵量とを比較する」ことを繰り返す。
【０１００】
そして、第１装置は、第２最大酸素吸蔵量が第１最大酸素吸蔵量よりも「小さくない」と判定されると（すなわち、第１装置がステップ４５０にて「Ｎｏ」と判定すると）、ステップ４６０に進み、触媒上流側空燃比abyfsをリーン空燃比leanとする「リーン運転」を行う。その後、第１装置は、リーン運転を所定の期間だけ行った後、リーン運転を中止するとともに通常運転を再開する。以上が第１装置の作動の概要である。
【０１０１】
＜触媒の最大酸素吸蔵量の取得方法＞
以下、第１装置における最大酸素吸蔵量Cmaxの取得方法について、より詳細に説明する。
【０１０２】
第１装置は、通常運転が行われているとき、後述する「最大酸素吸蔵量取得条件」が成立すれば、触媒５３の最大酸素吸蔵量Cmaxを取得するための制御（以下、「最大酸素吸蔵量取得制御」とも称呼する。）を行う。この「最大酸素吸蔵量取得制御」について、図５に示すタイムチャートを参照しながら説明する。
【０１０３】
このタイムチャートにおける時刻t1よりも前の期間においては、「通常運転」が行われている。すなわち、この期間において、触媒上流側空燃比abyfsは、理論空燃比stoichに一致するように制御されている。図５に示した例においては、便宜上、この期間において、下流側酸素濃度センサ７７の出力値Voxsはリッチ空燃比richを示す値であり、触媒５３の酸素吸蔵量OSAはゼロ近傍の所定値である、と仮定されている。なお、この所定値は、時刻t1よりも前に行われていた運転に応じて定まる値である。
【０１０４】
時刻t1にて「最大酸素吸蔵量取得条件」が成立すると、「最大酸素吸蔵量取得制御」が開始される。具体的に述べると、第１装置は、時刻t1にて、触媒上流側空燃比abyfsがリーン空燃比leanとなるように機関１０を制御する。例えば、第１装置は、時刻t1において機関１０にフューエルカット運転を行わせる。
【０１０５】
これにより、時刻t1において触媒上流側空燃比abyfsはリーン空燃比leanとなる。このとき、リーン空燃比leanの排ガス（すなわち、理論空燃比stoichの排ガスよりも酸素濃度が高い排ガス）が触媒５３に導入されるので、触媒５３はこの排ガスに含まれる酸素を吸蔵する。そのため、触媒５３の酸素吸蔵量OSAは、時刻t1以降において時間が経過するにつれて増大する。一方、このとき、触媒５３が排ガスに含まれる酸素を吸蔵するので、触媒５３から排出される排ガスには酸素が実質的に含まれない。よって、時刻t1以降においても、下流側酸素濃度センサ７７の出力値Voxsはリッチ空燃比richを示す値に維持される。
【０１０６】
なお、実際には、触媒上流側空燃比abyfsがリーン空燃比leanとなる制御が開始されてから、リーン空燃比leanの排ガスが上流側酸素濃度センサ７６に到達するまで、には所定の時間長さを要する。そのため、実際には、時刻t1からその所定の時間長さが経過した後の時点にて、触媒導入ガスの酸素濃度abyfsがリーン空燃比leanとなる。しかし、本説明においては、理解が容易になるように、触媒導入ガスの酸素濃度abyfsは時刻t1においてリーン空燃比leanとなると仮定されている。以下、同様に、触媒上流側空燃比abyfsを変更する制御が開始されてからその空燃比の排ガスが上流側酸素濃度センサ７６に到達するまでの時間長さはゼロである、と仮定して説明を続ける。
【０１０７】
その後、時刻t2において、触媒５３の酸素吸蔵量OSAは最大酸素吸蔵量Cmaxに到達する。このとき、触媒５３は排ガスに含まれる酸素を吸蔵することができないので、触媒５３から排出される排ガスに酸素が含まれ始める。よって、時刻t2において、下流側酸素濃度センサ７７の出力値Voxsはリーン空燃比leanを表す値となる。
【０１０８】
時刻t2において、第１装置は、触媒上流側空燃比abyfsがリッチ空燃比richとなるように機関１０を制御する。例えば、第１装置は、時刻t2において、燃料噴射量を通常運転が行われる場合の燃料噴射量よりも増大させる運転を機関１０に行わせる。
【０１０９】
これにより、時刻t2において触媒上流側空燃比abyfsはリッチ空燃比richとなる。このとき、リッチ空燃比richの排ガス（すなわち、理論空燃比stoichの排ガスよりも酸素濃度が低い排ガス）が触媒５３に導入されるので、触媒５３は吸蔵されている酸素を排ガスの酸化還元反応のために放出する。そのため、触媒５３の酸素吸蔵量OSAは、時刻t2以降において時間が経過するにつれて減少する。一方、このとき、触媒５３に吸蔵されている酸素によって排ガスの酸化還元反応が行われるので、触媒導入ガスに含まれる酸素（未燃酸素）は、排ガスの酸化還元反応において消費されない。そのため、触媒導入ガスに含まれる酸素（未燃酸素）は、触媒５３から排出される排ガス中に残存する。よって、時刻t2以降においても、下流側酸素濃度センサ７７の出力値Voxsはリーン空燃比leanを示す値に維持される。
【０１１０】
その後、時刻t3において、触媒５３の酸素吸蔵量OSAはゼロに到達する。このとき、触媒５３には酸素が吸蔵されていないので、触媒導入ガスに含まれる酸素（未燃酸素）が排ガスの酸化還元反応において消費される。そのため、触媒導入ガスに含まれる酸素（未燃酸素）は、触媒５３から排出される排ガス中に残存しない。よって、触媒５３から排出される排ガスには実質的に酸素が含まれない。したがって、時刻t3において、排ガスの空燃比はリッチ空燃比richを表す値となる。
【０１１１】
時刻t3以降において、第１装置は、「通常運転」を再開する。これにより、時刻t3以降、触媒上流側空燃比abyfsは理論空燃比stoichに一致するように制御される。なお、時刻t3以降における下流側酸素濃度センサ７７の出力値Voxsおよび触媒５３の酸素吸蔵量OSAは、機関１０の運転状態に応じた値となる。
【０１１２】
上記各運転を行った後、第１装置は、下記（１）式および下記（２）式に従い、触媒５３の最大酸素吸蔵量Cmaxを算出する。下記（１）式において、数値０．２３は標準状態における空気の酸素濃度（重量パーセント濃度）を、Fsumは単位時間Δt内における燃料噴射量Fの積算値を、abyfsaveは触媒上流側空燃比abyfsの単位時間Δt内の平均値を、stoichは理論空燃比を、表す。下記（２）式において、同式の右辺はΔO2を時刻t2から時刻t3までの範囲において時間tについて積分した値の絶対値を表す。なお、公知のように、標準状態とは、温度がゼロ℃（２７３．１５Ｋ）であり且つ圧力が１ｂａｒ（１０５Ｐａ）である状態を意味する。
【０１１３】
ΔO2＝0.23×Fsum×（abyfsave−stoich）    ・・・（１）
Cmax＝｜Σ［t＝t2，t3］（ΔO2）｜    ・・・（２）
【０１１４】
上記（１）式の右辺から明らかなように、上記（１）式により、「単位時間あたりに触媒５３に導入される排ガスに含まれる酸素量ΔO2を、理論空燃比の排ガスに含まれる酸素量を基準として表した値」が算出される。簡便に述べると、ΔO2は、理論空燃比の排ガスに含まれる酸素量を基準とする酸素の過剰量または不足量を表す値である。なお、酸素量が過剰であればΔO2は正の値となり、酸素量が不足していればΔO2は負の値となる。換言すると、ΔO2が正の値であればΔO2は単位時間あたりに触媒５３に「吸蔵」される酸素量を表し、ΔO2が負の値であればΔO2は単位時間あたりに触媒５３から「放出」される（排ガスの酸化還元反応において消費される）酸素量を表す。
【０１１５】
よって、上記（２）式に示すように、時刻t2（酸素吸蔵量OSAが最大値である時点）から時刻t3（酸素吸蔵量OSAがゼロである時点）までの範囲においてΔO2を時間tについて積分することにより、触媒５３の最大酸素吸蔵量Cmaxが算出される。
【０１１６】
なお、上記説明から明らかなように、「酸素吸蔵量OSAがゼロである時点」から「酸素吸蔵量OSAが最大値である時点」までの範囲においてΔO2を時間tについて積分することによっても、触媒５３の最大酸素吸蔵量Cmaxが算出され得る。以上が、第１装置における最大酸素吸蔵量Cmaxの取得方法である。
【０１１７】
＜触媒の最大酸素吸蔵量の回復方法＞
第１装置は、上述したように取得された触媒５３の最大酸素吸蔵量Cmaxが所定の参照値Cmaxref以下である場合、触媒５３の特性に基づいて「最大酸素吸蔵量を回復させるための運転（酸素吸蔵量回復運転）」を行う。以下、触媒５３の特性および酸素吸蔵量回復運転について、より詳細に説明する。
【０１１８】
１．触媒の特性
上述したように、触媒５３の酸素吸蔵物質に排ガスに含まれる硫黄成分（SOxなど）が吸蔵されるとともに、触媒５３の触媒成分に硫黄成分（Sなど）が吸着することにより、触媒５３の最大酸素吸蔵量が減少する場合がある。発明者による種々の考察および実験などによれば、「排ガスの空燃比」と「触媒の温度」と「触媒に吸着・吸蔵された硫黄成分の挙動」との間には、密接な関連があることが確認された。この関連につき、図６を参照しながらより詳細に説明する。
【０１１９】
図６は、排ガスの空燃比と、触媒の温度と、触媒に吸着・吸蔵された硫黄成分の主な挙動と、の関係を示す概略図である。図６に示すように、触媒５３は下記（１）〜（４）に示す特性を有することが確認された。下記特性（１）〜（４）において、活性温度T0、第１温度T1、第２温度T2および第３温度T3は、触媒５３を構成する物質などに応じて定まる値であって、あらかじめ実験などによって取得され得る。
【０１２０】
（１）触媒５３の温度TempCが活性温度T0以上第１温度T1以下であるとき、排ガスの空燃比A/Fがリーン空燃比leanである場合、触媒５３に導入されるガスに含まれる硫黄成分が顕著に酸素吸蔵物質OSMに吸蔵される。
（２）触媒５３の温度TempCが第１温度T1以上第２温度T2以下であるとき、排ガスの空燃比A/Fがリッチ空燃比richである場合、酸素吸蔵物質OSMに吸蔵された硫黄成分が触媒成分CCに向けて効率良く移動する。このとき、触媒成分CCに向けて移動した硫黄成分は、触媒成分CCに硫黄原子（S）の状態にて吸着する。
（３）触媒５３の温度TempCが第１温度T1と第２温度T2の間の第３温度T3以上であるとき、排ガスの空燃比A/Fがリーン空燃比leanである場合、触媒成分CC上に存在する硫黄成分が効率良く排ガス中に放出される。このとき、硫黄成分は、硫黄酸化物（SOx）の状態にて排ガス中に放出される。
（４）触媒５３の温度TempCが第２温度T2よりも高いとき、排ガスの空燃比A/Fがリッチ空燃比richである場合、触媒成分CC上に存在する硫黄成分が効率良く排ガス中に放出される。このとき、硫黄成分は、硫化水素（H2S）の状態にて排ガス中に放出される。
【０１２１】
なお、特性（３）および特性（４）に示す条件（硫黄成分が触媒成分CCから排ガス中に放出される条件）が成立しないとき、排ガス中の硫黄成分は触媒成分CCに硫黄原子（S）の状態にて吸着し得ると考えられる。触媒成分CCに吸着した硫黄成分は、酸素吸蔵物質OSMから触媒成分CCに移動した硫黄成分と同様、特性（３）および特性（４）に示す条件が成立するときに触媒成分CCから排ガス中に放出されると考えられる。
【０１２２】
ところで、特性（１）は、触媒５３の温度TempCが同関係に示される温度範囲（活性温度T0以上第１温度T1以下）に含まれる場合、触媒５３の温度TempCが同温度範囲に含まれない場合よりも顕著に硫黄成分が酸素吸蔵物質OSMに吸蔵されることを意味する。すなわち、特性（１）は、触媒５３の温度TempCが同温度範囲に含まれない場合に硫黄成分が酸素吸蔵物質OSMに全く吸蔵されないことを意味するものではない。
【０１２３】
さらに、特性（２）は、触媒５３の温度TempCが同関係に示される温度範囲（第１温度T1以上第２温度T2以下）に含まれる場合、触媒５３の温度TempCが同温度範囲に含まれない場合よりも効率良く酸素吸蔵物質OSMに吸蔵された硫黄成分が触媒成分CCに向けて移動されることを意味する。すなわち、特性（２）は、触媒５３の温度TempCが同温度範囲に含まれない場合に酸素吸蔵物質OSMに吸蔵された硫黄成分が触媒成分CCに向けて全く移動しないことを意味するものではない。同様に、特性（３）および特性（４）は、触媒５３の温度TempCがそれぞれの関係に示される温度範囲に含まれる場合、触媒５３の温度TempCがそれら温度範囲に含まれない場合よりも効率良く触媒成分CC上に存在する硫黄成分が排ガス中に放出されることを意味する。すなわち、特性（３）および特性（４）は、触媒５３の温度TempCがそれら温度範囲に含まれない場合に硫黄成分が触媒成分CC上から全く放出されないことを意味するものではない。
【０１２４】
２．酸素吸蔵量回復運転
上述したように、触媒５３の担体に含まれる酸素吸蔵物質OSMに吸蔵された硫黄成分は、所定の条件（上記特性（２）を参照。）が成立するとき、酸素吸蔵物質OSMから触媒成分CCに向けて効率良く移動する。そして、触媒成分CC上に存在する硫黄成分は、所定の条件（上記特性（３）および上記特性（４）を参照。）が成立するとき、排ガス中に効率良く放出される。すなわち、酸素吸蔵物質OSMに吸蔵された硫黄成分は、酸素吸蔵物質OSMからガス中に直接には放出されず、触媒成分CCを経由して排ガス中に放出される。
【０１２５】
そこで、第１装置は、上記特性（１）〜（４）のうちの特に「排ガスの空燃比」と「硫黄成分の挙動」との関係に着目し、酸素吸蔵量回復運転を行う。
【０１２６】
具体的に述べると、第１装置は、触媒５３の最大酸素吸蔵量Cmaxが所定の参照値Cmaxref以下である場合、下記（ａ）および下記（ｂ）の運転を行う。
【０１２７】
（ａ）第１装置は、まず、触媒上流側空燃比abyfsをリッチ空燃比richとする「リッチ運転」を行う。第１装置は、このリッチ運転を、リッチ運転が行われる「前」の最大酸素吸蔵量（第１最大酸素吸蔵量）とリッチ運転が行われた「後」の最大酸素吸蔵量（第２最大酸素吸蔵量）とが等しくなるまで、または、第１最大酸素吸蔵量よりも第２最大酸素吸蔵量が大きくなるまで、行う。
より具体的に述べると、第１装置は、「リッチ運転を所定の期間だけ行った後に第１最大酸素吸蔵量と第２最大酸素吸蔵量とを比較する」ことを、第１最大酸素吸蔵量と第２最大酸素吸蔵量とが等しいと判定されるまで、または、第１最大酸素吸蔵量よりも第２最大酸素吸蔵量が大きいと判定されるまで、繰り返す。
【０１２８】
（ｂ）第１装置は、第１最大酸素吸蔵量と第２最大酸素吸蔵量とが等しいと判定された後または第１最大酸素吸蔵量よりも第２最大酸素吸蔵量が大きいと判定された後、触媒上流側空燃比abyfsをリーン空燃比leanとする「リーン運転」を行う。
【０１２９】
上記運転（ａ）における「所定の期間」は、吸入空気量Gaに基づいて定められる。具体的に述べると、第１装置は、リッチ運転が行われている期間における吸入空気量Gaを積算するとともに、その積算量Garsum（以下、「リッチガス積算量Garsum」とも称呼する。）が所定の閾値積算量Garsumth以上となるまでリッチ運転を継続する。この「リッチ運転が開始されてから、リッチガス積算量Garsumが閾値積算量Garsumth以上となるまで、の期間」が上記「所定の期間」に相当する。
【０１３０】
なお、第１装置は、リッチガス積算量Garsumが閾値積算量Garsumth以上となった後、リッチ運転を中止するとともに通常運転を再開する。リッチガス積算量Garsumは、触媒５３に吸着・吸蔵されている硫黄成分の量および機関１０のドライバビリティなどを考慮した適値に設定され得る。
【０１３１】
上記運転（ａ）において、リッチ運転が行われると、酸素吸蔵物質OSMに吸蔵されている硫黄成分は、触媒成分CCに向けて移動するとともに触媒成分CCに吸着する。そのため、酸素吸蔵物質OSMに吸蔵されている硫黄成分の量が減少するとともに、触媒成分CCに吸着する硫黄成分の量が増大する。そのため、酸素吸蔵物質OSMが吸蔵し得る酸素の量（すなわち、内的な上限量）は増大するものの、有効触媒活性点の数（すなわち、外的な上限量）が減少する。その結果、触媒の最大酸素吸蔵量Cmaxは減少する。
【０１３２】
さらに、上記運転（ａ）において、リッチ運転が行われることが繰り返されると、リッチ運転が行われる毎に酸素吸蔵物質OSMに吸蔵されている硫黄成分が触媒成分CCに向けて移動する。そのため、リッチ運転が行われる毎に最大酸素吸蔵量Cmaxは減少する。そして、リッチ運転が行われても最大酸素吸蔵量Cmaxが減少しなくなったとき（すなわち、第１最大酸素吸蔵量と第２最大酸素吸蔵量とが等しくなるとき又は第１最大酸素吸蔵量よりも第２最大酸素吸蔵量が大きくなるとき）、酸素吸蔵物質OSMに吸蔵されていた硫黄成分の全てが既に触媒成分CCに移動している、または、硫黄成分が移動し得る領域が触媒成分CC上に存在しない、と考えられる。
【０１３３】
次いで、リッチ運転が行われても最大酸素吸蔵量Cmaxが減少しなくなるまでリッチ運転が行われた後、上記運転（ｂ）におけるリーン運転が行われる。リーン運転が行われると、触媒成分CCに吸着している硫黄成分が排ガス中に放出される。これにより、有効触媒活性点の数が増大するので、触媒５３の最大酸素吸蔵量Cmaxが回復する。
【０１３４】
第１装置は、上記運転（ｂ）におけるリーン運転が行われている期間における吸入空気量Gaを積算するとともに、その積算量Galsum（以下、「リーンガス積算量Galsum」とも称呼する。）が所定の閾値積算量Galsumth以上となるまでリーン運転を継続する。なお、第１装置は、リーンガス積算量Galsumが閾値積算量Galsumth以上となった後、リーン運転を中止するとともに通常運転を再開する。リーンガス積算量Galsumは、触媒成分CCに吸着していた硫黄成分が十分に除去されたと判断し得る適値に設定され得る。以上が第１装置における酸素吸蔵量回復運転である。
【０１３５】
＜空燃比制御＞
次いで、第１装置の実際の作動について説明する前に、上述した通常運転、リッチ運転およびリーン運転を行うための空燃比制御について説明する。
【０１３６】
第１装置における空燃比制御は、上流側酸素濃度センサ７６の出力値Vabyfsに基づいて得られる上流側空燃比（触媒導入ガスの空燃比）abyfsを上流側目標空燃比abyfrに一致させるための「メインフィードバック制御」、および、下流側酸素濃度センサ７７の出力値Voxsを下流側目標出力値Voxsrefに一致させるための「サブフィードバック制御」から構成される。
【０１３７】
より具体的に述べると、まず、上流側酸素濃度センサ７６の出力値Vabyfsが、「下流側酸素濃度センサ７７の出力値Voxsと下流側目標出力値Voxsrefとの差である出力偏差量DVoxsを小さくするように算出されたサブフィードバック量Vafsfb」により補正される。次いで、この補正によって得られた「フィードバック制御用出力値Vabyfc」がテーブルMapabyfs（図２を参照。）に適用されることにより、「フィードバック制御用空燃比（補正検出空燃比）abyfsc」が算出される。そして、このフィードバック制御用空燃比abyfscと「上流側目標空燃比abyfr」とが一致するように、燃料噴射量Fiが制御される。以下、この空燃比制御をより詳細に説明する。
【０１３８】
なお、この空燃比制御においては、現時点（時点k）における所定のパラメータの値と、現時点よりも過去の時点（時点k−N）における所定のパラメータの値と、が用いられる。以下、特に注釈が付されることなくそれらパラメータの値が記載されている場合、それら値は現時点（時点k）における値を表す。
【０１３９】
１．メインフィードバック制御
まず、第１装置が行うメインフィードバック制御について説明する。
第１装置は、下記（４）式に従い、フィードバック制御用出力値Vabyfcを算出する。下記（４）式において、Vabyfsは上流側酸素濃度センサ７６の出力値を、Vafsfbは下流側酸素濃度センサ７７の出力値Voxsに基づいて算出されるサブフィードバック量を、表す。サブフィードバック量Vafsfbの算出方法は後述される。
【０１４０】
Vabyfc＝Vabyfs＋Vafsfb    ・・・（４）
【０１４１】
次いで、第１装置は、下記（５）式に従い、上記フィードバック制御用出力値VabyfcをテーブルMapabyfs（図２を参照。）に適用することにより、フィードバック制御用空燃比abyfscを決定する。
【０１４２】
abyfsc＝Mapabyfs（Vabyfc）    ・・・（５）
【０１４３】
次いで、第１装置は、下記（６）式に従い、現時点（時点k）にて気筒内に吸入される空気の量である筒内吸入空気量Mc（k）を現時点（時点k）における上流側目標空燃比abyfr（k）によって除算することにより、基本燃料噴射量Fbaseを算出する。上流側目標空燃比abyfr（k）の算出方法は後述される。
【０１４４】
Fbase＝Mc（k）／abyfr（k）    ・・・（６）
【０１４５】
上記筒内吸入空気量Mcは、各気筒において吸気行程が行われる毎に、その時点の吸入空気量Gaと機関回転速度NEとに基づいて算出される。例えば、筒内吸入空気量Mcは、吸入空気量Gaに対して一次遅れ処理を施した値を機関回転速度NEで除算することによって算出される。この筒内吸入空気量Mcは、吸気行程が行われる各時点（時点k−N、・・・、時点k−1、時点k、時点k＋1、・・・）と関連付けられたデータとして、ＲＡＭ８３内に格納される。なお、筒内吸入空気量Mcは、公知の吸入空気量モデル（吸気通路における空気の挙動を模して構築されたモデル）によって算出されてもよい。
【０１４６】
次いで、第１装置は、下記（７）式に従い、上記基本燃料噴射量Fbaseをメインフィードバック量DFiによって補正する（基本燃料噴射量Fbaseにメインフィードバック量DFiを加える）ことにより、最終燃料噴射量Fiを算出する。そして、第１装置は、最終燃料噴射量Fiだけの燃料を吸気行程が行われる気筒のインジェクタ３４から噴射させる。メインフィードバック量DFiの算出方法は後述される。
【０１４７】
Fi＝Fbase＋DFi    ・・・（７）
【０１４８】
上記（７）式におけるメインフィードバック量DFiは、以下のように算出される。
まず、第１装置は、下記（８）式に従い、現時点よりもNサイクル前の時点（時点k−N）における筒内吸入空気量Mc（k−N）を上記フィードバック制御用空燃比（補正検出空燃比）abyfscにて除算することにより、現時点よりもNサイクル前の時点において燃焼室２５に供給された燃料の量である「筒内燃料供給量Fc（k−N）」を算出する。
【０１４９】
Fc（k−N）＝Mc（k−N）／abyfsc    ・・・（８）
【０１５０】
なお、上記（８）式においては、現時点からNサイクル前の筒内吸入空気量Mc（k−N）を（現時点における）フィードバック制御用空燃比abyfscで除算することにより、現時点からNサイクル前の筒内燃料供給量Fc（k−N）を算出している。これは、燃焼室２５内で燃焼された混合気が上流側酸素濃度センサ７６に到達するまでにNサイクルに相当する時間を要するからである。
【０１５１】
次いで、第１装置は、下記（９）式に従い、現時点からNサイクル前の筒内吸入空気量Mc（k−N）を現時点からNサイクル前の上流側目標空燃比abyfr（k−N）で除算することにより、現時点からNサイクル前の「目標筒内燃料供給量Fcr（k−N）」を算出する。
【０１５２】
Fcr（k−N）＝Mc（k−N）／abyfr（k−N）    ・・・（９）
【０１５３】
次いで、第１装置は、下記（１０）式に従い、現時点からNサイクル前の目標筒内燃料供給量Fcr（k−N）から筒内燃料供給量Fc（k−N）を減算することにより、「筒内燃料供給量偏差DFc」を算出する。この筒内燃料供給量偏差DFcは、「Nサイクル前の時点で筒内に供給された燃料の過不足分」を表す。
【０１５４】
DFc＝Fcr（k−N）−Fc（k−N）    ・・・（１０）
【０１５５】
次いで、第１装置は、下記（１１）式に従い、メインフィードバック量DFiを算出する。下記（１１）式において、Gpはあらかじめ設定された比例ゲインを、Giはあらかじめ設定された積分ゲインを、KFBは所定の係数を、SDFcは筒内燃料供給量偏差DFcの積分値を、表す。
【０１５６】
DFi＝（Gp・DFc＋Gi・SDFc）・KFB    ・・・（１１）
【０１５７】
上記（１０）式および上記（１１）式に示すように、第１装置は、フィードバック制御用空燃比abyfscと上流側目標空燃比abyfrとに基づく比例積分制御によってメインフィードバック量DFiを算出する。このメインフィードバック量DFiは、上記（７）式に示すように基本燃料噴射量Fbaseに加算される。これにより、最終燃料噴射量Fiが算出される。以上が第１装置が行うメインフィードバック制御である。
【０１５８】
２．サブフィードバック制御
次いで、第１装置が行うサブフィードバック制御について説明する。
第１装置は、下記（１２）式に従い、下流側目標出力値Voxsrefから現時点の下流側酸素濃度センサ７７の出力値Voxsを減算することにより、出力偏差量DVoxsを算出する。なお、第１装置においては、触媒５３の排ガス浄化性能を考慮し、下流側目標出力値Voxsrefとして「理論空燃比よりもわずかにリッチ側の空燃比に対応する値」が採用される。
【０１５９】
DVoxs＝Voxsref−Voxs    ・・・（１２）
【０１６０】
次いで、第１装置は、下記（１３）式に従い、サブフィードバック量Vafsfbを算出する。下記（１３）式において、Kpはあらかじめ設定された比例ゲイン（比例定数）を、Kiはあらかじめ設定された積分ゲイン（積分定数）を、SDVoxsは出力偏差量DVoxsの積分値を、表す。
【０１６１】
Vafsfb＝Kp・DVoxs＋Ki・SDVoxs    ・・・（１３）
【０１６２】
上記（１２）式および上記（１３）式に示すように、第１装置は、下流側酸素濃度センサ７７の出力値Voxsと下流側目標出力値Voxsrefとに基づく比例積分制御によってサブフィードバック量Vafsfbを算出する。このサブフィードバック量Vafsfbは、上記（４）式に示すように、上流側酸素濃度センサ７６の出力値Vabyfsに加算される。これにより、フィードバック制御用出力値Vabyfcが算出される。以上が第１装置が行うサブフィードバック制御である。
【０１６３】
３．空燃比制御の総括
上述したように、第１装置は、上流側酸素濃度センサ７６の出力値Vabyfsにサブフィードバック量Vafsfbを加算することによって出力値Vabyfsを補正し、この補正によって得られたフィードバック制御用出力値Vabyfc（＝Vabyfs＋Vafsfb）に基づいてフィードバック制御用空燃比abyfscを算出する。そして、第１装置は、算出されたフィードバック制御用空燃比abyfscと、上流側目標空燃比abyfrと、が一致するように、燃料噴射量Fiを算出する。
【０１６４】
その結果、上流側空燃比（触媒導入ガスの空燃比）abyfsが上流側目標空燃比abyfrに近づくとともに、下流側酸素濃度センサ７７の出力値Voxsが下流側目標出力値Voxsrefに近づく。換言すると、触媒５３の上流側の空燃比および下流側の空燃比の双方が、それぞれの目標値に近づけられる。以上が第１装置が行う空燃比制御である。
【０１６５】
＜実際の作動＞
以下、第１装置の実際の作動について説明する。
第１装置において、ＣＰＵ８１は、図７〜図１１にフローチャートによって示した各ルーチンを所定のタイミング毎に繰り返し実行するようになっている。ＣＰＵ８１は、これらルーチンにおいて、リッチ運転フラグXRICH、リーン運転フラグXLEANおよび回復運転実行中フラグXRECを用いる。
【０１６６】
リッチ運転フラグXRICHは、その値が「０」であるとき、触媒５３の状態がリッチ運転を行うべき状態でないことを表す。リッチ運転フラグXRICHは、その値「１」であるとき、触媒５３の状態がリッチ運転を行うべき状態であることを表す。
【０１６７】
リーン運転フラグXLEANは、その値が「０」であるとき、触媒５３の状態がリーン運転を行うべき状態でないことを表す。リーン運転フラグXLEANは、その値「１」であるとき、触媒５３の状態がリーン運転を行うべき状態であることを表す。
【０１６８】
回復運転実行中フラグXRECは、その値が「０」であるとき、酸素吸蔵量回復運転が実行中でないことを表す。回復運転実行中フラグXRECは、その値が「１」であるとき、酸素吸蔵量回復運転が実行中であることを表す。
【０１６９】
リッチ運転フラグXRICHの値、リーン運転フラグXLEANの値および回復運転実行中フラグXRECの値は、機関１０を搭載した車両の工場出荷時およびサービス点検実施時などにおいて触媒５３に異常がないことが確認された際に電子制御装置８０に対して所定の操作がなされたとき、初期値としての「０」に設定されるようになっている。
【０１７０】
以下、ＣＰＵ８１が実行する各ルーチンについて説明する。
まず、現時点において、リッチ運転フラグXRICHの値、リーン運転フラグXLEANの値および回復運転実行中フラグXRECの値の全ては「０」に設定されていると仮定する。以下、便宜上、この仮定を「初期設定仮定」とも称呼する。
【０１７１】
ＣＰＵ８１は、機関１０が始動されると、所定時間が経過する毎に、図７にフローチャートによって示した「触媒温度推定ルーチン」を繰り返し実行するようになっている。ＣＰＵ８１は、このルーチンにより、触媒の温度TempCを取得する。
【０１７２】
具体的に述べると、ＣＰＵ８１は、所定のタイミングにて図７のステップ７００から処理を開始してステップ７１０に進み、現時点が機関１０の始動直後であるか否かを判定する。現時点が機関１０の始動直後であれば、ＣＰＵ８１は、ステップ７１０にて「Ｙｅｓ」と判定してステップ７２０に進む。これに対し、現時点が機関１０の始動直後でなければ、ＣＰＵ８１は、ステップ７１０にて「Ｎｏ」と判定してステップ７３０に進む。ここで、「現時点が機関１０の始動直後である」と仮定して、説明を続ける。
【０１７３】
上記仮定に従うと、ＣＰＵ８１は、ステップ７２０に進む。ＣＰＵ８１は、ステップ７２０にて、「始動時冷却水温THWSと、触媒温度TempCと、の関係」をあらかじめ定めた始動時触媒温度推定関数f（THWS）に、現時点における冷却水温THWSを適用することにより、現時点における触媒の温度TempCを取得（推定）する。
【０１７４】
始動時触媒温度推定関数f（TWS）において、触媒の温度TempCは、始動時冷却水温THWSが増大するにつれて増大するように定められる。
【０１７５】
次いで、ＣＰＵ８１は、ステップ７３０に進む。ＣＰＵ８１は、ステップ７３０にて、「筒内吸入空気量Mcと、機関回転速度NEと、排気温度Texと、の関係」をあらかじめ定めた排気温度テーブルMapTex（Mc，NE）に現時点における筒内吸入空気量Mcおよび機関回転速度NEを適用することにより、現時点における排気温度Texを取得（推定）する。
【０１７６】
次いで、ＣＰＵ８１はステップ７４０に進む。ＣＰＵ８１は、ステップ７４０にて、下記（１４）式に従って触媒の温度TempCを更新・取得する。下記（１４）式において、αは０よりも大きく且つ１よりも小さい定数を、TempC（k）は更新される前の触媒の温度TempCを、TempC（k+1）は更新された後の触媒の温度TempCを、表す。
【０１７７】
TempC（k+1）＝α・TempC（k）＋（1−α）・Tex    ・・・（１４）
【０１７８】
ステップ７４０の処理を実行した後、ＣＰＵ８１は、ステップ７９５に進んで本ルーチンを一旦終了する。
【０１７９】
さらに、ＣＰＵ８１は、所定時間が経過する毎に、図８にフローチャートによって示した「第１最大酸素吸蔵量回復ルーチン」を繰り返し実行するようになっている。ＣＰＵ８１は、このルーチンにより、触媒５３の最大酸素吸蔵量Cmaxを取得するとともに、取得された最大酸素吸蔵量Cmaxが参照値Cmaxref以下である場合、最大酸素吸蔵量を回復させるために如何なる運転を実行するか（すなわち、リッチ運転およびリーン運転のいずれを実行するか）を決定する。
【０１８０】
具体的に述べると、ＣＰＵ８１は、所定のタイミングにて図８のステップ８００から処理を開始してステップ８０５に進み、リーン運転フラグXLEANの値が「０」であるか否かを判定する。上記初期設定仮定に従うと、現時点におけるリーン運転フラグXLEANの値は「０」であるので、ＣＰＵ８１は、ステップ８０５にて「Ｙｅｓ」と判定してステップ８１０に進む。
【０１８１】
ＣＰＵ８１は、ステップ８１０にて、リッチ運転フラグXRICHの値が「０」であるか否かを判定する。上記初期設定仮定に従うと、現時点におけるリッチ運転フラグXRICHの値は「０」であるので、ＣＰＵ８１は、ステップ８１０にて「Ｙｅｓ」と判定してステップ８１５に進む。
【０１８２】
ＣＰＵ８１は、ステップ８１５にて、後述する「最大酸素吸蔵量取得条件」が成立しているとき、上記（１）式および上記（２）式に従って現時点における触媒５３の最大酸素吸蔵量Cmaxを取得する。なお、ＣＰＵ８１は、最大酸素吸蔵量取得条件が成立しないとき、同条件が成立するまで本ステップにて待機する。
【０１８３】
最大酸素吸蔵量取得条件について具体的に述べると、ＣＰＵ８１は、以下の条件ａ−１〜ａ−３の全てが成立したとき、最大酸素吸蔵量取得条件が成立すると判定する。換言すると、ＣＰＵ８１は、条件ａ−１〜ａ−３のうちの少なくとも１つが成立しないとき、最大酸素吸蔵量取得条件が成立しないと判定する。
【０１８４】
（条件ａ−１）冷却水の温度THWが所定の閾値以上である。
（条件ａ−２）スロットル弁開度TAの単位時間あたりの変化量が所定の閾値以下である。
（条件ａ−３）図示しない車速センサによって取得される車速の単位時間あたりの変化量が所定の閾値以下である。
【０１８５】
条件ａ−１に係る所定の閾値は、機関１０の暖機が完了していると判断し得る適値に設定される。条件ａ−２および条件ａ−３に係る所定の閾値は、機関１０が定常運転されていると判断し得る適値に設定される。
【０１８６】
以下、現時点において最大酸素吸蔵量取得条件が「成立している」と仮定して説明を続ける。この仮定に従うと、ＣＰＵ８１は、ステップ８１５にて触媒５３の最大酸素吸蔵量Cmaxを取得して、ステップ８２０に進む。ＣＰＵ８１は、ステップ８２０にて、ステップ８１５にて取得された最大酸素吸蔵量Cmaxを、「現時点の最大酸素吸蔵量Cmaxnow」に格納する。
【０１８７】
次いで、ＣＰＵ８１は、ステップ８２５に進む。ＣＰＵ８１は、ステップ８２５にて、回復運転実行中フラグXRECの値が「０」であるか否かを判定する。上記初期設定仮定に従うと、現時点における回復運転実行中フラグXRECの値は「０」であるので、ＣＰＵ８１は、ステップ８２５にて「Ｙｅｓ」と判定してステップ８３０に進む。
【０１８８】
次いで、ＣＰＵ８１は、ステップ８３０に進む。ＣＰＵ８１は、ステップ８３０にて、現時点の最大酸素吸蔵量Cmaxnowが参照値Cmaxrefよりも大きいか否かを判定する。参照値Cmaxrefは、酸素吸蔵量回復運転を行う必要があると判断し得る適値に設定される。参照値Cmaxrefは、例えば、「新品状態の触媒５３が使用され始めてから現時点までの期間において触媒５３に導入された排ガスの総量と、最大酸素吸蔵量の参照値Cmaxrefと、の関係」をあらかじめ定めたマップなどに基づいて決定され得る。
【０１８９】
ここで、第１装置が実行する運転を以下の２つの場合に場合を分けて説明する。
（場合１）触媒５３の最大酸素吸蔵量Cmaxが参照値Cmaxrefよりも大きい場合
（場合２）触媒５３の最大酸素吸蔵量Cmaxが参照値Cmaxref以下である場合
以下、説明を続ける。
【０１９０】
（場合１）触媒５３の最大酸素吸蔵量Cmaxが参照値Cmaxrefよりも大きい場合
この場合、ＣＰＵ８１は、ステップ８３０にて「Ｙｅｓ」と判定してステップ８９５に進み、本ルーチンを一旦終了する。
【０１９１】
さらに、ＣＰＵ８１は、任意の気筒のクランク角度が吸気行程前の所定クランク角度（例えば、排気上死点前９０度クランク角）θｆに一致する毎に、図９にフローチャートによって示した「燃料噴射制御ルーチン」を繰り返し実行するようになっている。ＣＰＵ８１は、このルーチンにより、最終燃料噴射量Fiを決定するとともに、その最終燃料噴射量Fiだけの燃料をインジェクタ３４から噴射させる。以下、便宜上、クランク角が上記所定クランク角θｆに一致する吸気行程前の気筒を、「燃料噴射気筒」とも称呼する。
【０１９２】
具体的に述べると、ＣＰＵ８１は、所定のタイミングにて図９のステップ９００から処理を開始してステップ９１０に進み、リーン運転フラグXLEANの値が「０」であるか否かを判定する。現時点におけるリーン運転フラグXLEANの値は「０」であるので、ＣＰＵ８１は、ステップ９１０にて「Ｙｅｓ」と判定してステップ９２０に進む。
【０１９３】
ＣＰＵ８１は、ステップ９２０にて、リッチ運転フラグXRICHの値が「０」であるか否かを判定する。現時点におけるリッチ運転フラグXRICHの値は「０」であるので、ＣＰＵ８１は、ステップ９２０にて「Ｙｅｓ」と判定してステップ９３０に進む。
【０１９４】
ＣＰＵ８１は、ステップ９３０にて、上流側目標空燃比abyfr（k）に「理論空燃比stoich」を格納する。次いで、ＣＰＵ８１は、ステップ９３０に続くステップ９４０〜ステップ９７０の処理を順に実行する。ステップ９４０〜ステップ９７０にて実行される処理は、以下の通りである。
【０１９５】
ステップ９４０：ＣＰＵ８１は、吸入空気量Gaと機関回転速度NEとに基づき、燃料噴射気筒に吸入される空気の量である筒内吸入空気量Mc（k）を取得する。
ステップ９５０：ＣＰＵ８１は、上記（６）式に従い、基本燃料噴射量Fbaseを算出する。
ステップ９６０：ＣＰＵ８１は、上記（７）式に従い、基本燃料噴射量Fbaseをメインフィードバック量DFiによって補正することにより、最終燃料噴射量Fiを算出する。
ステップ９７０：ＣＰＵ８１は、最終燃料噴射量Fiの燃料を噴射するよう、燃料噴射気筒に設けられているインジェクタ３４に指示を与える。
【０１９６】
ステップ９７０の処理を実行した後、ＣＰＵ８１は、ステップ９９５に進んで本ルーチンを一旦終了する。
【０１９７】
上述した各処理によって最終燃料噴射量Fiが算出されるとともに、その最終燃料噴射量Fiだけの燃料が燃料噴射気筒に噴射される。これにより、上流側目標空燃比abyfrが理論空燃比stoichに設定された「通常運転」が実行される。
【０１９８】
さらに、ＣＰＵ８１は、任意の気筒のクランク角度が吸気行程前の所定クランク角度θｇに一致する毎に、図１０にフローチャートによって示した「メインフィードバック量算出ルーチン」を繰り返し実行するようになっている。ＣＰＵ８１は、このルーチンにより、メインフィードバック量DFiを算出する。
【０１９９】
具体的に述べると、ＣＰＵ８１は、所定のタイミングにて図１０のステップ１０００から処理を開始してステップ１００５に進み、「触媒上流側空燃比abyfsを上流側目標空燃比abyfrに一致させるフィードバック制御を行い得る条件（メインフィードバック制御条件）」が成立しているか否かを判定する。より具体的に述べると、ＣＰＵ８１は、ステップ１００５にて、下記条件ｂ−１〜ｂ−５の全てが成立したとき、メインフィードバック制御条件が成立すると判定する。換言すると、ＣＰＵ８１は、下記条件ｂ−１〜ｂ−５のうちの少なくとも１つが成立しないとき、メインフィードバック制御条件が成立しないと判定する。
【０２００】
（条件ｂ−１）触媒の温度TempCが所定の閾値以上である。
（条件ｂ−２）冷却水温THWが所定の閾値以上である。
（条件ｂ−３）吸入空気量Gaが所定の閾値以下ある。
（条件ｂ−４）上流側酸素濃度センサ７６が活性化している。
（条件ｂ−５）最終燃料噴射量Fiをゼロとする運転（フューエルカット運転）が実行中ではない。
【０２０１】
条件ｂ−１に係る所定の閾値は、触媒５３が活性化していると判断し得る適値に設定される。条件ｂ−２に係る所定の閾値は、機関１０の暖機が完了していると判断し得る適値に設定される。条件ｂ−３に係る所定の閾値は、機関１０の負荷が過大ではないと判断し得る適値に設定される。条件ｂ−４は、メインフィードバック制御にて上流側酸素濃度センサ７６の出力値Vabyfsが用いられるために設けられている条件である。条件ｂ−５は、フューエルカット運転中は燃料噴射量を変化させることができないために設けられている条件である。よって、例えば、機関１０が暖機運転されている期間中およびフューエルカット運転が実行されている期間中などにおいては、上記メインフィードバック制御条件は成立しない。
【０２０２】
現時点においてメインフィードバック制御条件が「成立しない」場合、ＣＰＵ８１は、ステップ１００５にて「Ｎｏ」と判定してステップ１０１０に進む。ＣＰＵ８１は、ステップ１０１０にて、メインフィードバック量DFiにゼロを格納する。
【０２０３】
次いで、ＣＰＵ８１は、ステップ１０１５に進む。ＣＰＵ８１は、ステップ１０１５にて、筒内燃料供給量偏差DFcの積分値SDFcにゼロを格納する。その後、ＣＰＵ８１は、ステップ１０９５に進んで本ルーチンを一旦終了する。
【０２０４】
このように、メインフィードバック制御条件が成立しない場合、メインフィードバック量DFiはゼロに設定される。そのため、この場合、上述した「メインフィードバック量DFiによる基本燃料噴射量Fbaseの補正」は行われない（図９のステップ９６０を参照。）。
【０２０５】
次いで、ＣＰＵ８１は、任意の気筒のクランク角度が吸気行程前の所定クランク角度θｈに一致する毎に、図１１にフローチャートによって示した「サブフィードバック量算出ルーチン」を繰り返し実行するようになっている。ＣＰＵ８１は、このルーチンにより、サブフィードバック量Vafsfbを算出する。
【０２０６】
具体的に述べると、ＣＰＵ８１は、所定のタイミングにて図１１のステップ１１００から処理を開始してステップ１１１０に進み、「下流側酸素濃度センサ７７の出力値Voxsを下流側目標出力値Voxsrefに一致させるサブフィードバック制御を行い得る条件（サブフィードバック制御条件）」が成立しているか否かを判定する。より具体的に述べると、ＣＰＵ８１は、ステップ１１１０にて、下記条件ｃ−１〜ｃ−３の全てが成立したとき、サブフィードバック制御条件が成立すると判定する。換言すると、ＣＰＵ８１は、下記条件ｃ−１〜ｃ−３のうちの少なくとも１つが成立しないとき、サブフィードバック制御条件が成立しないと判定する。
【０２０７】
（条件ｃ−１）上記メインフィードバック条件が成立している。
（条件ｃ−２）上流側目標空燃比abyfrが理論空燃比stoichに設定されている。
（条件ｃ−３）下流側酸素濃度センサ７７が活性化している。
【０２０８】
条件ｃ−１および条件ｃ−２は、サブフィードバック制御は通常運転が実行されている際に上記メインフィードバック制御と並行して実行される制御であるために設けられている条件である。条件ｃ−３は、サブフィードバック制御にて下流側酸素濃度センサ７７の出力値Voxsが用いられるために設けられている条件である。よって、例えば、機関１０が暖機運転されている期間中、フューエルカット運転が実行されている期間中、ならびに、リッチ運転およびリーン運転が実行されている期間中などにおいては、上記サブフィードバック制御条件は成立しない。
【０２０９】
上述したように現時点においてメインフィードバック制御条件が成立していないので、サブフィードバック制御条件は成立しない（条件ｃ−１を参照。）。そのため、ＣＰＵ８１は、ステップ１１１０にて「Ｎｏ」と判定してステップ１１２０に進む。ＣＰＵ８１は、ステップ１１２０にて、サブフィードバック量Vafsfbにゼロを格納する。
【０２１０】
次いで、ＣＰＵ８１は、ステップ１０２０に進む。ＣＰＵ８１は、ステップ１０２０にて、出力偏差量DVoxsの積分値SDVoxsにゼロを格納する。その後、ＣＰＵ８１は、ステップ１１９５に進んで本ルーチンを一旦終了する。
【０２１１】
このように、サブフィードバック制御条件が成立しない場合、サブフィードバック量Vafsfbはゼロに設定される。そのため、この場合、後述する「サブフィードバック量Vafsfbによる上流側酸素濃度センサ７６の出力値Vabyfsの補正」は行われない（図１０のステップ１０２０を参照。）。
【０２１２】
したがって、現時点においてメインフィードバック制御条件が成立しない場合、メインフィードバック量DFiがゼロに設定されるとともに、サブフィードバック量Vafsfbがゼロに設定される。そのため、吸入空気量Ga、機関回転速度NEおよび上流側目標空燃比abyfrに基づいて定められる基本燃料噴射量Fbaseの燃料が、燃料噴射気筒に噴射される（図９のステップ９４０〜ステップ９７０を参照。）。
【０２１３】
これに対し、現時点においてメインフィードバック制御条件が「成立する」場合、ＣＰＵ８１は、図１０のステップ１０００から処理を開始してステップ１００５に進むと、ステップ１００５にて「Ｙｅｓ」と判定する。次いで、ＣＰＵ８１は、ステップ１００５に続くステップ１０２０〜ステップ１０５０の処理をこの順に実行する。ステップ１０２０〜ステップ１０５０にて実行される処理は、以下の通りである。
【０２１４】
ステップ１０２０：ＣＰＵ８１は、上記（４）式に従い、フィードバック制御用出力値Vabyfcを算出する。なお、上述したように、現時点におけるサブフィードバック量Vafsfbはゼロである。
ステップ１０２５：ＣＰＵ８１は、上記（５）式に従い、フィードバック制御用空燃比abyfscを決定する。
ステップ１０３０：ＣＰＵ８１は、上記（８）式に従い、現時点よりもNサイクル前の時点における筒内燃料供給量Fc（k−N）を算出する。
ステップ１０３５：ＣＰＵ８１は、上記（９）式に従い、現時点よりもNサイクル前の時点における目標筒内燃料供給量Fcr（k−N）を算出する。
ステップ１０４０：ＣＰＵ８１は、上記（１０）式に従い、筒内燃料供給量偏差DFcを算出する。
ステップ１０４５：ＣＰＵ８１は、上記（１１）式に従い、メインフィードバック量DFiを算出する。第１装置において、係数KFBとして「１」が採用される。筒内燃料供給量偏差DFcの積分値SDFcは、現時点までの筒内燃料供給量偏差DFcの値が積算された値である（下記ステップ１０５０を参照。）。
ステップ１０５０：ＣＰＵ８１は、現時点における筒内燃料供給量偏差DFcの積分値SDFcに上記ステップ１０４０にて取得された筒内燃料供給量偏差DFcを加算することにより、新たな筒内燃料供給量偏差の積分値SDFcを算出（更新）する。
【０２１５】
ステップ１０５０の処理を実行した後、ＣＰＵ８１は、ステップ１０９５に進んで本ルーチンを一旦終了する。
【０２１６】
上述した各処理により、メインフィードバック量DFiが比例積分制御により算出される（ステップ１０４５を参照。）。そして、このメインフィードバック量DFiを用いて最終燃料噴射量Fiが補正される（図９のステップ９６０を参照。）。
【０２１７】
さらに、ＣＰＵ８１は、所定のタイミングにて図１１のステップ１１００から処理を開始すると、ステップ１１１０に進む。現時点にてサブフィードバック制御条件が成立しなければ、ＣＰＵ８１は、ステップ１１１０にて「Ｎｏ」と判定し、ステップ１１２０およびステップ１１３０を経由してステップ１１９５に進み、本ルーチンを一旦終了する。この場合、上述したように、サブフィードバック量Vafsfbは算出されない。
【０２１８】
これに対し、現時点にてサブフィードバック制御条件が成立していれば、ＣＰＵ８１は、ステップ１１１０にて「Ｙｅｓ」と判定してステップ１１４０に進む。以下、現時点にてサブフィードバック制御条件が「成立している」と仮定して説明を続ける。
【０２１９】
上記仮定に従うと、ＣＰＵ８１は、ステップ１１１０に続くステップ１１４０〜ステップ１１６０の処理をこの順に実行する。ステップ１１４０〜ステップ１１６０にて実行される処理は、以下の通りである。
【０２２０】
ステップ１１４０：ＣＰＵ８１は、上記（１２）式に従い、出力偏差量DVoxsを算出する。第１装置においては、触媒５３の排ガス浄化性能を考慮し、下流側目標出力値Voxsrefとして理論空燃比よりもわずかにリッチ側の空燃比に対応する値が採用される。
ステップ１１５０：ＣＰＵ８１は、上記（１３）式に従い、サブフィードバック量Vafsfbを算出する。第１装置において、比例ゲインKpおよび積分ゲインKiとして、あらかじめ定められた適値が採用される。
ステップ１１６０：ＣＰＵ８１は、現時点における出力偏差量の積分値SDVoxsに上記ステップ１１４０にて取得した出力偏差量DVoxsを加算することにより、新たな出力偏差量の積分値SDVoxsを算出（更新）する。
【０２２１】
ステップ１１６０の処理を実行した後、ＣＰＵ８１は、ステップ１１９５に進んで本ルーチンを一旦終了する。
【０２２２】
上述した各処理により、サブフィードバック量Vafsfbが比例積分制御によって算出される（ステップ１１５０を参照。）。そして、このサブフィードバック量Vafsfbを用いて上流側酸素濃度センサ７６の出力値Vabyfsが補正される（図１０のステップ１０２０を参照。）。さらに、補正されたフィードバック制御用出力値Vabyfcに基づいてメインフィードバック量DFiが算出されるとともに（図１０のステップ１０４５を参照。）、このメインフィードバック量DFiを用いて最終燃料噴射量Fiが補正される（図９のステップ９６０を参照。）。
【０２２３】
以上、説明したように、触媒５３の最大酸素吸蔵量Cmaxが参照値Cmaxrefよりも小さい場合、触媒上流側空燃比abyfsを理論空燃比stoichに一致させる「通常運転」が行われる。
【０２２４】
（場合２）触媒５３の最大酸素吸蔵量Cmaxが参照値Cmaxref以下である場合
この場合、ＣＰＵ８１は、図８のステップ８３０に進むと、ステップ８３０にて「Ｎｏ」と判定してステップ８３５に進む。
【０２２５】
ＣＰＵ８１は、ステップ８３５にて、回復運転実行中フラグXRECの値に「１」を格納する。
【０２２６】
次いで、ＣＰＵ８１は、ステップ８４０に進む。ＣＰＵ８１は、ステップ８４０にてリッチ運転フラグXRICHの値に「１」を格納する。
【０２２７】
次いで、ＣＰＵ８１は、ステップ８４５に進む。ＣＰＵ８１は、ステップ８４５にて、後述する「リッチ運転」が開始された時点から現時点までに機関１０に導入された吸入空気量Gaの積算量（リッチガス積算量Garsum）が、所定の閾値積算量Garsumth以上であるか否かを判定する。
【０２２８】
上記リッチガス積算量Garsumは、機関１０が始動される際に初期値としてのゼロに設定されるようになっている。さらに、上記リッチガス積算量Garsumは、触媒５３に吸着・吸蔵されている硫黄成分の量および機関１０のドライバビリティなどを考慮した適値に設定されている。
【０２２９】
現時点は未だリッチ運転が行われていないので、リッチガス積算量Garsumは上記初期値（ゼロ）である。そのため、ＣＰＵ８１は、ステップ８４５にて「Ｎｏ」と判定してステップ８９５に進んで本ルーチンを一旦終了する。
【０２３０】
このとき、リッチ運転フラグXRICHの値が「０」から「１」に変更されたので（上記ステップ８４０）、ＣＰＵ８１は、所定のタイミングにて図９のステップ９００から処理を開始すると、ステップ９１０を経由してステップ９２０に進み、ステップ９２０にて「Ｎｏ」と判定してステップ９８０に進む。
【０２３１】
ＣＰＵ８１は、ステップ９８０にて、上流側目標空燃比abyfr（k）にリッチ空燃比richを格納する。
【０２３２】
次いで、ＣＰＵ８１は、ステップ９８０に続くステップ９４０〜ステップ９７０の処理を順に実行し、ステップ９９５に進んで本ルーチンを一旦終了する。これら処理により、最終燃料噴射量Fiの燃料が燃料噴射気筒に噴射される。これにより、上流側目標空燃比abyfrがリッチ空燃比richに設定された「リッチ運転」が開始される。
【０２３３】
さらに、ＣＰＵ８１は、図１０に示すルーチンおよび図１１に示すルーチンを実行し、空燃比のフィードバック制御を行う。ただし、このとき、サブフィードバック制御条件は成立しないので（条件ｃ−２を参照。）、サブフィードバック量Vafsfbはゼロに設定される（図１１のステップ１１１０〜ステップ１１３０を参照。）。そして、図１０に示すルーチンによって算出されるメインフィードバック量DFiにより、最終燃料噴射量Fiが補正される（図９のステップ９６０を参照。）。その結果、触媒上流側空燃比abyfsがリッチ空燃比richに一致する。すなわち、リッチ運転が継続される。
【０２３４】
リッチ運転が継続されると、酸素吸蔵物質OSMに吸蔵されている硫黄成分は、時間が経過するにつれて触媒成分CCに向けて移動する。リッチ運転が実行されている期間、ＣＰＵ８１は、図示しない「リッチガス積算ルーチン」を実行することにより、リッチ運転が開始された時点から現時点までに機関１０に導入された吸入空気量Gaを積算する。これにより、ＣＰＵ８１は、リッチガス積算量Garsumを取得する。
【０２３５】
ＣＰＵ８１は、リッチ運転が実行されている期間中の所定のタイミングにて図８のステップ８００から処理を開始すると、現時点におけるリーン運転フラグXLEANの値は「０」であるので、ステップ８０５を経過してステップ８１０に進む。そして、現時点におけるリッチ運転フラグXRICHの値は「１」であるので、ＣＰＵ８１は、ステップ８１０にて「Ｎｏ」と判定してステップ８４５に進む。
【０２３６】
このとき、現時点におけるリッチガス積算量Garsumが閾値積算量Garsumthよりも小さければ、ＣＰＵ８１は、ステップ８４５にて「Ｎｏ」と判定し、ステップ８９５に進んで本ルーチンを一旦終了する。その結果、上述したように図９〜図１１のルーチンに示す処理が実行され、リッチ運転が継続される。
【０２３７】
これに対し、現時点におけるリッチガス積算量Garsumが閾値積算量Garsumth以上であれば、ＣＰＵ８１は、図８のステップ８４５にて「Ｙｅｓ」と判定してステップ８５０に進む。
【０２３８】
ＣＰＵ８１は、ステップ８５０にて、リッチ運転フラグXRICHの値に「０」を格納してステップ８５５に進む。
【０２３９】
ＣＰＵ８１は、ステップ８５５にて、現時点の最大酸素吸蔵量Cmaxnowを「リッチ運転前の最大酸素吸蔵量Cmaxold」に格納する。その後、ＣＰＵ８１は、ステップ８９５に進んで本ルーチンを一旦終了する。
【０２４０】
このとき、リッチ運転フラグXRICHの値が「１」から「０」に変更されたので（上記ステップ８５０）、ＣＰＵ８１は、所定のタイミングにて図９のステップ９００から処理を開始すると、ステップ９１０を経由してステップ９２０に進み、ステップ９２０にて「Ｙｅｓ」と判定してステップ９３０に進む。ＣＰＵ８１は、ステップ９３０にて上流側目標空燃比abyfr（k）に理論空燃比stoichを設定する。次いで、ＣＰＵ８１は、ステップ９４０〜ステップ９７０の処理を順に実行する。これにより、リッチ運転が中止されるとともに、「通常運転」が再開される。
【０２４１】
このように、「通常運転」が実行されているときに触媒５３の最大酸素吸蔵量Cmaxが参照値Cmaxref以下である場合、「リッチ運転」が開始される。さらに、リッチガス積算量Garsumが閾値積算量Garsumth以上となるまで、リッチ運転が継続される。そして、リッチガス積算量Garsumが閾値積算量Garsumth以上となると（すなわち、閾値積算量Garsumthだけの排ガスが触媒５３に流入すると）、リッチ運転は中止され、通常運転が再開される。これにより、触媒５３の酸素吸蔵物質OSMに吸蔵された硫黄成分の少なくとも一部が触媒成分CCに向けて移動する。
【０２４２】
なお、リッチガス積算量Garsumの値は、リッチ運転が中止されるときに上記「リッチガス積算ルーチン」によってゼロに設定される（リセットされる）ようになっている。
【０２４３】
上述したようにリッチ運転が行われた後に通常運転が再開されたとき、ＣＰＵ８１は、所定のタイミングにて図８のステップ８００から処理を開始すると、リーン運転フラグXLEANの値およびリッチ運転フラグXRICHの値の双方が「０」であるので、ステップ８０５およびステップ８１０を経由してステップ８１５に進む。そして、ＣＰＵ８１は、ステップ８１５にて現時点における（すなわち、リッチ運転が行われた後の）最大酸素吸蔵量Cmaxを取得する。次いで、ＣＰＵ８１は、ステップ８２０にてその最大酸素吸蔵量Cmaxを「現時点の最大酸素吸蔵量Cmaxnow」に格納し、ステップ８２５に進む。現時点における回復運転実行中フラグXRECの値は「１」であるので、ＣＰＵ８１は、ステップ８２５にて「Ｎｏ」と判定し、ステップ８６０に進む。
【０２４４】
ＣＰＵ８１は、ステップ８６０にて、「現時点の（リッチ運転後の）最大酸素吸蔵量Cmaxnow」が「リッチ運転前の最大酸素吸蔵量Cmaxold」よりも小さいか否かを判定する。
【０２４５】
ここで、第１装置が実行する運転を以下の２つの場合に場合を分けて説明する。
（場合２−１）現時点の最大酸素吸蔵量Cmaxnowがリッチ運転前の最大酸素吸蔵量Cmaxoldよりも小さい場合
（場合２−２）現時点の最大酸素吸蔵量Cmaxnowがリッチ運転前の最大酸素吸蔵量Cmaxoldよりも小さくない場合
以下、説明を続ける。
【０２４６】
（場合２−１）現時点の最大酸素吸蔵量Cmaxnowがリッチ運転前の最大酸素吸蔵量Cmaxoldよりも小さい場合
上述したように、リッチ運転が行われると、酸素吸蔵物質OSMに吸蔵されている硫黄成分が触媒成分CCに向けて移動して触媒成分CCに吸着することにより、触媒５３の最大酸素吸蔵量Cmaxが減少する。よって、リッチ運転を行っても最大酸素吸蔵量Cmaxが減少しない場合（すなわち、現時点の最大酸素吸蔵量Cmaxnowがリッチ運転前の最大酸素吸蔵量Cmaxoldよりも「小さくない」場合）、触媒成分CCに移動可能な最大の量の硫黄成分が酸素吸蔵物質OSMから触媒成分CCに移動された、と考えられる。逆に言うと、現時点の最大酸素吸蔵量Cmaxnowがリッチ運転前の最大酸素吸蔵量Cmaxoldよりも「小さい」場合、酸素吸蔵物質OSMから触媒成分CCにさらに硫黄成分が移動可能である、と考えられる。
【０２４７】
そこで、この場合、ＣＰＵ８１は、再び「リッチ運転」を行う。具体的に述べると、ＣＰＵ８１は、ステップ８６０にて「Ｙｅｓ」と判定してステップ８４０に進む。ＣＰＵ８１は、ステップ８４０にてリッチ運転フラグXRICHの値に「１」を格納する。次いで、ＣＰＵ８１は、ステップ８４５に進む。現時点におけるリッチガス積算量Garsumの値は前回のリッチ運転の後にリセットされたゼロであるので、ＣＰＵ８１は、ステップ８４５にて「Ｎｏ」と判定し、ステップ８９５に進んで本ルーチンを一旦終了する。
【０２４８】
このとき、リッチ運転フラグXRICHの値が「０」から「１」に変更されたので（上記ステップ８４０）、ＣＰＵ８１は、所定のタイミングにて図９のステップ９００から処理を開始すると、ステップ９１０およびステップ９２０を経由してステップ９８０に進み、上流側目標空燃比abyfr（k）にリッチ空燃比richを格納する。
【０２４９】
次いで、ＣＰＵ８１は、ステップ９８０に続くステップ９４０〜ステップ９７０の処理を順に実行し、ステップ９９５に進んで本ルーチンを一旦終了する。これにより、「リッチ運転」が開始される。さらに、ＣＰＵ８１は、図１０に示すルーチンおよび図１１に示すルーチンを実行する。これにより、リッチ運転が継続される。
【０２５０】
その後、ＣＰＵ８１は、上記同様、リッチガス積算量Garsumが閾値積算量Garsumth以上となるまでリッチ運転を継続し、リッチガス積算量Garsumが閾値積算量Garsumth以上となるとリッチ運転を中止して通常運転を再開する。
【０２５１】
通常運転が再開されると、ＣＰＵ８１は、所定のタイミングにて図８のステップ８００を実行し、ステップ８６０にて「現時点の（リッチ運転後の）最大酸素吸蔵量Cmaxnow」が「リッチ運転前の最大酸素吸蔵量Cmaxold」よりも小さいか否かを再び判定する。そして、現時点の最大酸素吸蔵量Cmaxnowがリッチ運転前の最大酸素吸蔵量Cmaxoldよりも「小さい」場合、ＣＰＵ８１は、上記同様、再びリッチ運転を行う。
【０２５２】
このように、ＣＰＵ８１は、「リッチ運転を所定の期間（リッチガス積算量Garsumが閾値積算量Garsumth以上となるまでの期間）だけ行った後、現時点の最大酸素吸蔵量Cmaxnowとリッチ運転前の最大酸素吸蔵量Cmaxoldとを比較すること」を繰り返す。
【０２５３】
リッチ運転は、現時点の最大酸素吸蔵量Cmaxnowがリッチ運転前の最大酸素吸蔵量Cmaxoldよりも「小さくない」と判定されるまで（すなわち、図８のステップ８６０にて「Ｎｏ」と判定されるまで）、繰り返される。以下、現時点の最大酸素吸蔵量Cmaxnowがリッチ運転前の最大酸素吸蔵量Cmaxoldよりも「小さくない」と判定された場合（上記場合（２−２）に相当。）について説明する。
【０２５４】
（場合２−２）現時点の最大酸素吸蔵量Cmaxnowがリッチ運転前の最大酸素吸蔵量Cmaxoldよりも小さくない場合
上述したようにリッチ運転が繰り返されると、リッチ運転が行われる毎に酸素吸蔵物質OSMに吸蔵されている硫黄成分が触媒成分CCに向けて移動する。そして、この場合２−２においては、触媒成分CCに移動可能な最大の量の硫黄成分が酸素吸蔵物質OSMから触媒成分CCに移動されている、と考えられる。
【０２５５】
そこで、この場合、ＣＰＵ８１は「リーン運転」を行う。具体的に述べると、ＣＰＵ８１は、図８のステップ８６０に進むと、ステップ８６０にて「Ｎｏ」と判定してステップ８６５に進む。
【０２５６】
ＣＰＵ８１は、ステップ８６５にてリーン運転フラグXLEANの値に「１」を格納する。
【０２５７】
次いで、ＣＰＵ８１は、ステップ８７０に進む。ＣＰＵ８１は、ステップ８７０にて、後述する「リーン運転」が開始された時点から現時点までに機関１０に導入された吸入空気量Gaの積算量（リーンガス積算量Galsum）が、所定の閾値積算量Galsumth以上であるか否かを判定する。
【０２５８】
上記リーンガス積算量Galsumは、機関１０が始動される際に初期値としてのゼロに設定されるようになっている。さらに、上記リーンガス積算量Galsumは、触媒成分CCに吸着していた硫黄成分が十分に除去されたと判断し得る適値に設定されている。
【０２５９】
現時点は未だリーン運転が行われていないので、リーンガス積算量Galsumは上記初期値（ゼロ）である。そのため、ＣＰＵ８１は、ステップ８７０にて「Ｎｏ」と判定してステップ８９５に進んで本ルーチンを一旦終了する。
【０２６０】
このとき、リーン運転フラグXLEANの値が「０」から「１」に変更されたので（上記ステップ８６５）、ＣＰＵ８１は、所定のタイミングにて図９のステップ９００から処理を開始すると、ステップ９１０にて「Ｎｏ」と判定してステップ９９０に進む。
【０２６１】
ＣＰＵ８１は、ステップ９９０にて、上流側目標空燃比abyfr（k）にリーン空燃比leanを格納する。
【０２６２】
次いで、ＣＰＵ８１は、ステップ９９０に続くステップ９４０〜ステップ９７０の処理を順に実行し、ステップ９９５に進んで本ルーチンを一旦終了する。これら処理により、最終燃料噴射量Fiの燃料が燃料噴射気筒に噴射される。これにより、上流側目標空燃比abyfrがリーン空燃比leanに設定された「リーン運転」が開始される。
【０２６３】
さらに、ＣＰＵ８１は、図１０に示すルーチンおよび図１１に示すルーチンを実行し、空燃比のフィードバック制御を行う。ただし、このとき、サブフィードバック制御条件は成立しないので（条件ｃ−２を参照。）、サブフィードバック量Vafsfbはゼロに設定される（図１１のステップ１１１０〜ステップ１１３０を参照。）。そして、図１０に示すルーチンによって算出されるメインフィードバック量DFiにより、最終燃料噴射量Fiが補正される（図９のステップ９６０を参照。）。その結果、触媒上流側空燃比abyfsがリーン空燃比leanに一致する。すなわち、リーン運転が継続される。
【０２６４】
リーン運転が継続されると、触媒成分CC上に存在している硫黄成分が時間が経過するにつれて排ガス中に放出される。リーン運転が実行されている期間、ＣＰＵ８１は、図示しない「リーンガス積算ルーチン」を実行することにより、リーン運転が開始された時点から現時点までに機関１０に導入された吸入空気量Gaを積算する。これにより、ＣＰＵ８１は、リーンガス積算量Galsumを取得する。
【０２６５】
ＣＰＵ８１は、リーン運転が実行されている期間中の所定のタイミングにて図８のステップ８００から処理を開始すると、現時点におけるリーン運転フラグXLEANの値は「１」であるので、ステップ８０５にて「Ｎｏ」と判定してステップ８７０に進む。
【０２６６】
このとき、現時点におけるリーンガス積算量Galsumが閾値積算量Galsumthよりも小さければ、ＣＰＵ８１は、ステップ８７０にて「Ｎｏ」と判定し、ステップ８９５に進んで本ルーチンを一旦終了する。その結果、上述したように図９〜図１１のルーチンに示す各処理が実行されるので、リーン運転が継続される。
【０２６７】
これに対し、現時点におけるリーンガス積算量Galsumが閾値積算量Galsumth以上であれば、ＣＰＵ８１は、図８のステップ８７０にて「Ｙｅｓ」と判定してステップ８７５に進む。
【０２６８】
ＣＰＵ８１は、ステップ８７５にて、リーン運転フラグXLEANの値に「０」を格納してステップ８８０に進む。
【０２６９】
ＣＰＵ８１は、ステップ８８０にて、回復運転実行中フラグXRECの値に「０」を設定する。その後、ＣＰＵ８１は、ステップ８９５に進んで本ルーチンを一旦終了する。
【０２７０】
このとき、リーン運転フラグXLEANの値が「１」から「０」に変更されたので（上記ステップ８７５）、ＣＰＵ８１は、所定のタイミングにて図９のステップ９００から処理を開始すると、ステップ９１０にて「Ｙｅｓ」と判定してステップ９３０に進む。ＣＰＵ８１は、ステップ９３０にて上流側目標空燃比abyfr（k）に理論空燃比stoichを設定する。次いで、ＣＰＵ８１は、ステップ９４０〜ステップ９７０の処理を順に実行する。これにより、リーン運転が中止されるとともに、「通常運転」が再開される。
【０２７１】
このように、リッチ運転が行われた「後」の最大酸素吸蔵量Cmaxnowがリッチ運転が行われる「前」の最大酸素吸蔵量Cmaxoldよりも「小さくない」場合、「リーン運転」が開始される。さらに、リーンガス積算量Galsumが閾値積算量Galsumth以上となるまで、リーン運転が継続される。そして、リーンガス積算量Galsumが閾値積算量Galsumth以上となると（すなわち、閾値積算量Galsumthだけの排ガスが触媒５３に流入すると）、リーン運転は中止され、通常運転が再開される。これにより、触媒５３の触媒成分CCに吸着した硫黄成分が排ガス中に放出される。その結果、触媒５３の最大酸素吸蔵量Cmaxが回復（増大）する。
【０２７２】
なお、リーンガス積算量Galsumの値は、リーン運転が中止されるときに上記「リーンガス積算ルーチン」によってゼロに設定される（リセットされる）ようになっている。
【０２７３】
ところで、リッチ運転が行われた後に通常運転が再開されたとき、ＣＰＵ８１は、所定のタイミングにて図８のステップ８００から処理を開始すると、現時点におけるリーン運転フラグXLEANの値、リッチ運転フラグXRICHの値および回復運転実行中フラグXRECの値の全ては「０」であるので、ＣＰＵ８１は、ステップ８０５〜ステップ８２５を経由してステップ８３０に進む。そして、ＣＰＵ８１は、現時点の最大酸素吸蔵量Cmaxnowが参照値Cmaxrefよりも大きければ「通常運転」を継続し、現時点の最大酸素吸蔵量Cmaxnowが参照値Cmaxref以下であれば再び「酸素吸蔵量回復運転」を行う。このように、ＣＰＵ８１は、触媒５３の最大酸素吸蔵量Cmaxが参照値Cmaxrefよりも大きくなるまで、酸素吸蔵量回復運転を繰り返す。
【０２７４】
以上、場合１と場合２とに場合を分けて説明したように、第１装置は、触媒５３の最大酸素吸蔵量Cmaxが参照値Cmaxrefよりも大きい場合、「通常運転」を行う。一方、第１装置は、触媒５３の最大酸素吸蔵量Cmaxが参照値Cmaxref以下である場合、「酸素吸蔵量回復運転」を行う。具体的に述べると、第１装置は、まず、リッチ運転が行われた後の最大酸素吸蔵量Cmaxnowがリッチ運転が行われる前の最大酸素吸蔵量Cmaxoldよりも「小さくない」と判定されるまで、リッチ運転を行う。次いで、第１装置は、そのリッチ運転が行われた後にリーン運転を行う。
【０２７５】
その結果、リッチ運転によって出来る限り多量の「酸素吸蔵物質OSMに吸蔵されている硫黄成分」が触媒成分CCへと移動された後、リーン運転によって「触媒成分CCに吸着している硫黄成分」が排ガス中に放出されることとなる。換言すると、第１装置は、硫黄成分が存在する部位を把握するとともに（すなわち、リッチ運転の前後の最大酸素吸蔵量を比較することにより、酸素吸蔵物質OSMおよび触媒成分CCのいずれに硫黄成分が存在するかを把握するとともに）、その部位に適した方法（リッチ運転またはリーン運転）によってその部位から硫黄成分を除去することができる。したがって、第１装置は、触媒５３に吸着・吸蔵された硫黄成分を適切に除去することにより、触媒５３の最大酸素吸蔵量Cmaxを適切に回復（増大）させることができる。
【０２７６】
（第２実施形態）
次に、本発明の第２の実施形態に係る制御装置（以下、「第２装置」とも称呼する。）について説明する。
【０２７７】
＜装置の概要＞
第２装置は、第１装置が適用される機関１０と同様の構成を有する機関（図１を参照。以下、便宜上、「機関１０」と称呼する。）に適用される。そこで、第２装置が適用される装置の概要についての説明は、省略される。
【０２７８】
＜装置の作動の概要＞
第２装置は、「触媒の温度TempC」をも考慮して触媒５３の最大酸素吸蔵量を回復させるための運転（酸素吸蔵量回復運転）を行う点において、第１装置と相違する。
【０２７９】
より具体的に述べると、第２装置は、触媒５３に導入される排ガスの空燃比（触媒上流側空燃比abyfs）を理論空燃比stoichに一致させる「通常運転」が行われているとき、触媒５３の「最大酸素吸蔵量Cmax」を取得する。そして、第２装置は、その最大酸素吸蔵量Cmaxが所定の参照値Cmaxref以下であるとき、触媒５３の温度TempCが所定の温度範囲（T3≦TempC≦T2）に「含まれる」場合に限り、第１装置と同様の酸素吸蔵量回復運転を行う。以上が第２装置の作動の概要である。
【０２８０】
＜触媒の最大酸素吸蔵量の取得方法＞
第２装置は、第１装置と同様の方法によって触媒５３の最大酸素吸蔵量Cmaxを取得する。そこで、第２装置における触媒５３の最大酸素吸蔵量Cmaxの取得方法についての説明は、省略される。
【０２８１】
＜触媒の最大酸素吸蔵量の回復方法＞
第２装置は、第１装置と同様の考え方に基づき、リッチ運転とリーン運転とを組み合わせることによって触媒５３の最大酸素吸蔵量Cmaxを回復する。ところが、上述した触媒５３の特性（２）および特性（３）に示すように、酸素吸蔵物質OSMに吸蔵された硫黄成分が触媒成分CCに向けて効率良く移動される温度（第１温度T1以上第２温度T2以下）と、触媒成分CC上に存在する硫黄成分が排ガス中に効率良く放出される温度（第３温度T3以上）と、は一致しない場合がある。
【０２８２】
そこで、第２装置は、触媒５３の温度TempCが「酸素吸蔵物質OSMに吸蔵された硫黄成分が触媒成分CCに向けて効率良く移動される温度であり、かつ、触媒成分CC上に存在する硫黄成分が排ガス中に効率良く放出される温度」である場合において、酸素吸蔵量回復運転を行う。換言すると、第２装置は、上述した触媒５３の特性（１）〜（４）のうちの「排ガスの空燃比」と「触媒の温度」と「硫黄成分の挙動」との関係に着目し、酸素吸蔵量回復運転を行う。
【０２８３】
具体的に述べると、第２装置は、触媒５３の最大酸素吸蔵量Cmaxが所定の参照値Cmaxref以下である場合、触媒の温度TempCが「第３温度T3以上であり且つ第２温度T2以下である温度範囲（T3≦TempC≦T2）」に含まれれば、下記（ａ）または下記（ｂ）の運転を行う。なお、下記運転（ａ）は第１装置における運転（ａ）と同一であり、下記運転（ｂ）は第１装置における運転（ｂ）と同一である。
【０２８４】
（ａ）第２装置は、まず、リッチ運転を、リッチ運転が行われる「前」の最大酸素吸蔵量（第１最大酸素吸蔵量）とリッチ運転が行われた「後」の最大酸素吸蔵量（第２最大酸素吸蔵量）とが等しくなるまで、または、第１最大酸素吸蔵量よりも第２最大酸素吸蔵量が大きくなるまで、行う。
より具体的に述べると、第２装置は、「リッチ運転を所定の期間だけ行った後に第１最大酸素吸蔵量と第２最大酸素吸蔵量とを比較する」ことを、第１最大酸素吸蔵量と第２最大酸素吸蔵量とが等しいと判定されるまで、または、第１最大酸素吸蔵量よりも第２最大酸素吸蔵量が大きいと判定されるまで、繰り返す。
【０２８５】
（ｂ）第２装置は、第１最大酸素吸蔵量と第２最大酸素吸蔵量とが等しいと判定された後または第１最大酸素吸蔵量よりも第２最大酸素吸蔵量が大きいと判定された後、「リーン運転」を行う。
【０２８６】
なお、上記運転（ａ）における「所定の期間」は、第１装置と同様、「リッチ運転が開始されてからリッチガス積算量Garsumが閾値積算量Garsumth以上となるまでの期間」である。さらに、上記運転（ｂ）のリーン運転は、第１装置と同様、リーンガス積算量Galsumが所定の閾値積算量Galsumth以上となるまで、継続される。
【０２８７】
第２装置は、リーンガス積算量Galsumが閾値積算量Galsumth以上となった後、リーン運転を中止するとともに通常運転を再開する。以上が第２装置における触媒５３の最大酸素吸蔵量Cmaxの回復方法である。
【０２８８】
＜空燃比制御＞
第２装置は、第１装置と同様の方法によって排ガスの空燃比を制御し、通常運転、リッチ運転およびリーン運転を行う。そこで、第２装置における空燃比制御についての説明は、省略される。
【０２８９】
＜実際の作動＞
以下、第２装置の実際の作動について説明する。
第２装置において、ＣＰＵ８１は、図７、図９〜図１２にフローチャートによって示した各ルーチンを所定のタイミング毎に繰り返し実行するようになっている。ＣＰＵ８１は、これらルーチンにおいて、第１装置と同様のリッチ運転フラグXRICH、リーン運転フラグXLEANおよび回復運転実行中フラグXRECを用いる。
【０２９０】
以下、ＣＰＵ８１が実行する各ルーチンについて説明する。
第２装置は、ＣＰＵ８１が、図８に示すフローチャートに代えて図１２に示すフローチャートを実行する点についてのみ、第１装置と相違している。そこで、以下、この相違点を中心として説明を加える。
【０２９１】
ＣＰＵ８１は、第１装置と同様、図７のルーチンを所定時間が経過する毎に繰り返し実行する。すなわち、第２装置は、排気温度Texに基づいて触媒の温度TempCの温度を取得（推定）する。
【０２９２】
さらに、ＣＰＵ８１は、所定時間が経過する毎に、図１２にフローチャートによって示した「第２最大酸素吸蔵量回復ルーチン」を繰り返し実行するようになっている。ＣＰＵ８１は、このルーチンにより、触媒５３の最大酸素吸蔵量Cmaxを取得するとともに、取得された最大酸素吸蔵量Cmaxが参照値Cmaxref以下である場合、最大酸素吸蔵量を回復させるために如何なる運転を実行するか（すなわち、リッチ運転およびリーン運転のいずれを実行するか）を決定する。
【０２９３】
図１２に示したルーチンは、「ステップ１２１０が含まれている」点のみにおいて、図８に示したルーチンと相違している。そこで、図１２において図８に示したステップと同一の処理を行うためのステップには、図８のそのようなステップに付された符号と同一の符号が付されている。これらステップについての詳細な説明は、適宜省略される。
【０２９４】
図１２のルーチンについて具体的に述べると、ＣＰＵ８１は、所定のタイミングにて図１２のステップ１２００から処理を開始したとき、上記初期設定仮定に従うと、ステップ８０５〜ステップ８２５を経由してステップ８３０に進む。
【０２９５】
ＣＰＵ８１は、ステップ８３０にて、現時点の最大酸素吸蔵量Cmaxnow（ステップ８１５にて取得された最大酸素吸蔵量Cmax）が参照値Cmaxrefよりも大きい場合、「Ｙｅｓ」と判定してステップ１２９５に進んで本ルーチンを一旦終了する。この場合、第１装置と同様、図９〜図１１のルーチンが実行されることによって「通常運転」が行われる。
【０２９６】
これに対し、現時点の最大酸素吸蔵量Cmaxnowが参照値Cmaxref以下である場合、ＣＰＵ８１は、図８のステップ８３０にて「Ｎｏ」と判定してステップ１２１０に進む。ＣＰＵ８１は、ステップ１２１０にて、触媒５３の温度TempCが「第３温度T3以上であり且つ第２温度T2以下である温度範囲（T3≦TempC≦T2）」に含まれるか否かを判定する。現時点における触媒の温度TempCがこの温度範囲に「含まれない」場合、ＣＰＵ８１は、ステップ１２１０にて「Ｎｏ」と判定し、ステップ１２９５に進んで本ルーチンを一旦終了する。この場合、上記同様、ＣＰＵ８１が図９〜図１１に示すルーチンを実行することによって「通常運転」が行われる。
【０２９７】
このように、触媒５３の最大酸素吸蔵量Cmaxが参照値Cmaxref以下であっても、触媒の温度TempCが上記温度範囲（T3≦TempC≦T2）に「含まれない」場合、酸素吸蔵量回復運転（リッチ運転およりリーン運転）は行われない。
【０２９８】
これに対し、現時点における触媒の温度TempCが上記温度範囲（T3≦TempC≦T2）に「含まれる」場合、ＣＰＵ８１は、図１２のステップ１２１０にて「Ｙｅｓ」と判定する。その後、ＣＰＵ８１は、ステップ８３５〜ステップ８４５を経由してステップ１２９５に進み、本ルーチンを一旦終了する。これにより、リッチ運転フラグXRICHの値が「１」に設定される（ステップ８４０を参照。）。この場合、第１装置と同様、図９〜図１１に示すルーチンが実行されることによって「リッチ運転」が行われる。
【０２９９】
このように、触媒５３の最大酸素吸蔵量Cmaxが参照値Cmaxref以下であり、かつ、触媒の温度TempCが上記温度範囲（T3≦TempC≦T2）に「含まれる」場合、酸素吸蔵量回復運転のうちのリッチ運転が行われる。
【０３００】
その後、ＣＰＵ８１は、第１装置と同様に図１２のステップ８０５、ステップ８１０、ステップ８４５およびステップ１２９５の処理を繰り返すことにより、リッチガス積算量Garsumが閾値積算量Garsumth以上となるまでリッチ運転を継続する。そして、ＣＰＵ８１は、リッチガス積算量Garsumが閾値積算量Garsumth以上となると、リッチ運転を中止して通常運転を再開する。
【０３０１】
次いで、ＣＰＵ８１は、所定のタイミングにて図８のステップ８００から処理を開始すると、リーン運転フラグXLEANの値およびリッチ運転フラグXRICHの値は「０」であり、回復運転実行中フラグXRECの値は「１」であるので、ステップ８０５〜ステップ８２５を経由してステップ８６０に進む。
【０３０２】
ＣＰＵ８１は、ステップ８６０にて、現時点の最大酸素吸蔵量Cmaxnowがリッチ運転前の最大酸素吸蔵量Cmaxoldよりも「小さい」場合、「Ｙｅｓ」と判定する。その後、ＣＰＵ８１は、ステップ８４０およびステップ８４５を経由してステップ１２９５に進み、本ルーチンを一旦終了する。これにより、リッチ運転フラグXRICHの値が「１」に設定されるので（ステップ８４０を参照。）、再び「リッチ運転」が行われる。
【０３０３】
このように、ＣＰＵ８１は、第１装置と同様、「リッチ運転を所定の期間だけ行った後、現時点の最大酸素吸蔵量Cmaxnowとリッチ運転前の最大酸素吸蔵量Cmaxoldとを比較すること」を繰り返す。そして、リッチ運転が繰り返されることによって最大酸素吸蔵量Cmaxが徐々に減少し、現時点の最大酸素吸蔵量Cmaxnowがリッチ運転前の最大酸素吸蔵量Cmaxoldよりも「小さくない」と判定された場合（すなわち、ステップ８６０にて「Ｎｏ」と判定された場合）、ＣＰＵ８１はステップ８６５に進む。その後、ＣＰＵ８１は、ステップ８６５およびステップ８７０を経由してステップ１２９５に進み、本ルーチンを一旦終了する。これにより、リーン運転フラグXLEANの値が「１」に設定される（ステップ８６５を参照。）。この場合、第１装置と同様、図９〜図１１に示すルーチンが実行されることによって「リーン運転」が行われる。
【０３０４】
その後、ＣＰＵ８１は、第１装置と同様に図１２のステップ８０５、ステップ８７０およびステップ１２９５の処理を繰り返すことにより、リーンガス積算量Galsumが閾値積算量Galsumth以上となるまでリーン運転を継続する。そして、ＣＰＵ８１は、リーンガス積算量Galsumが閾値積算量Galsumth以上となると、リーン運転を中止して通常運転を再開する。
【０３０５】
このように、第２装置は、触媒５３の最大酸素吸蔵量Cmaxが参照値Cmaxrefよりも大きい場合、「通常運転」を行う。一方、第２装置は、触媒５３の最大酸素吸蔵量Cmaxが参照値Cmaxref以下であり、かつ、触媒の温度TempCが上記温度範囲（T3≦TempC≦T2）に「含まれる」場合、第１装置と同様の「酸素吸蔵量回復運転」を行う。具体的に述べると、第２装置は、リッチ運転が行われた後の最大酸素吸蔵量Cmaxnowがリッチ運転が行われる前の最大酸素吸蔵量Cmaxoldよりも「小さくない」と判定されるまで、リッチ運転を行う。次いで、第２装置は、そのリッチ運転が行われた後にリーン運転を行う。
【０３０６】
その結果、リッチ運転によって出来る限り多量の「酸素吸蔵物質OSMに吸蔵されている硫黄成分」が効率良く触媒成分CCへと移動された後、リーン運転によって「触媒成分CCに吸着している硫黄成分」が効率良く排ガス中に放出されることとなる。第２装置は、この酸素吸蔵量回復運転を「触媒５３の温度TempCが、酸素吸蔵物質OSMに吸蔵された硫黄成分が効率良く触媒成分CCに移動される温度であり且つ触媒成分CC上に存在する硫黄成分が効率良く排ガス中に放出される温度である場合（すなわち、T3≦TempC≦T2である場合）」に行う。したがって、第２装置は、触媒５３に吸着・吸蔵された硫黄成分を効率良く除去することにより、触媒５３の最大酸素吸蔵量Cmaxを効率良く回復（増大）させることができる。
【０３０７】
ところで、上述した第１装置および第２装置の説明から明らかなように、リーン運転が行われている期間、リーン運転フラグXLEANの値は「１」に維持されている。そのため、第１装置および第２装置のいずれにおいても、ＣＰＵ８１は、その期間中に図８のステップ８００から処理を開始してステップ８０５に進むと、ステップ８０５にて「Ｎｏ」と判定する。よって、リーン運転が行われている期間、触媒５３の最大酸素吸蔵量Cmaxを取得すること（ステップ８１５）は禁止される。
【０３０８】
上記同様、リッチ運転が行われている期間、リッチ運転フラグXRICHの値は「１」に維持されている。そのため、第１装置および第２装置のいずれにおいても、ＣＰＵ８１は、その期間中に図８のステップ８００から処理を開始してステップ８０５を経由してステップ８１０に進むと、ステップ８１０にて「Ｎｏ」と判定する。よって、リッチ運転が行われている期間、触媒５３の最大酸素吸蔵量Cmaxを取得することは禁止される。
【０３０９】
これは、最大酸素吸蔵量Cmaxを取得する際に排ガスの空燃比が変化させられるため（図６を参照。）、最大酸素吸蔵量Cmaxを取得するための空燃比制御によって酸素吸蔵量回復運転（リッチ運転またはリーン運転）が妨げられることを避けるためである。
【０３１０】
なお、酸素吸蔵量回復運転が終了すれば、リッチ運転フラグXRICHの値およびリーン運転フラグXLEANの値は再び「０」に設定されるので（図８のステップ８５０およびステップ８７５、図１２のステップ８５０およびステップ８７５を参照。）、最大酸素吸蔵量Cmaxを取得すること（図８のステップ８１５）が再び可能となる。
【０３１１】
＜実施形態の総括＞
以上、説明したように、本発明の各実施形態に係る制御装置（第１装置および第２装置）は、
触媒成分CCと酸素吸蔵物質OSMとを有する触媒５３を備えた内燃機関１０に適用される。
【０３１２】
この制御装置は、
前記触媒５３に吸蔵され得る酸素の最大量である最大酸素吸蔵量Cmaxを取得する最大酸素吸蔵量取得手段（図８および図１２のステップ８１５）を備える。
【０３１３】
さらに、この制御装置は、
前記最大酸素吸蔵量Cmaxが所定の閾値Cmaxref以下であるとき（図８および図１２のステップ８３０にて「Ｎｏ」と判定されるとき）、
前記触媒５３に導入されるガスである触媒導入ガスの酸素濃度を「空気と燃料とが理論空燃比にて燃焼したときに生じるガスの酸素濃度である基準酸素濃度（理論空燃比stoichに相当。）」よりもリッチ側の酸素濃度richとするリッチ運転を、「該リッチ運転が行われる前の前記最大酸素吸蔵量である第１最大酸素吸蔵量Cmaxoldと前記リッチ運転が行われた後の前記最大酸素吸蔵量である第２最大酸素吸蔵量Cmaxnowとが等しくなるまで」又は「前記第１最大酸素吸蔵量よりも前記第２最大酸素吸蔵量が大きくなるまで」（図８および図１２のステップ８６０にて「Ｎｏ」と判定されるまで）行うこと、
および、
「前記第１最大酸素吸蔵量Cmaxoldと前記第２最大酸素吸蔵量Cmaxnowとが等しくなったとき」又は「前記第１最大酸素吸蔵量Cmaxoldよりも前記第２最大酸素吸蔵量Cmaxnowが大きくなったとき」に前記触媒導入ガスの酸素濃度を前記基準酸素濃度stoichよりもリーン側の酸素濃度leanとするリーン運転を行うこと、
を含む「酸素吸蔵量回復運転」を行う酸素吸蔵量回復手段（図８〜図１２のルーチンを参照。）を備える。
【０３１４】
具体的に述べると、この制御装置において、
前記酸素吸蔵量回復手段は、
「前記リッチ運転を所定の期間だけ（リッチガス積算量Garsumが閾値積算量Garsumth以上となるまで）行った後に前記第１最大酸素吸蔵量Cmaxoldと前記第２最大酸素吸蔵量Cmaxnowとを比較する」ことを、前記第１最大酸素吸蔵量Cmaxoldと前記第２最大酸素吸蔵量Cmaxnowとが等しいと判定されるまで又は前記第１最大酸素吸蔵量Cmaxoldよりも前記第２最大酸素吸蔵量Cmaxnowが大きいと判定されるまで繰り返すとともに（図８および図１２のステップ８０５、ステップ８１０およびステップ８４５の処理を繰り返す。）、
前記第１最大酸素吸蔵量Cmaxoldと前記第２最大酸素吸蔵量Cmaxnowとが等しいと判定された後または前記第１最大酸素吸蔵量Cmaxoldよりも前記第２最大酸素吸蔵量Cmaxnowが大きいと判定された後に（図８および図１２のステップ８６０にて「Ｎｏ」と判定された後に）前記リーン運転を行うことにより、前記酸素吸蔵量回復運転を行う、ようになっている。
【０３１５】
さらに、第２装置において、
前記触媒５３は、
該触媒５３の温度が「第１温度T1以上第２温度T2以下」であるときに前記触媒導入ガスの酸素濃度が前記基準酸素濃度stoichよりもリッチ側の酸素濃度richである場合、前記酸素吸蔵物質OSMに吸蔵された硫黄成分が前記触媒成分CCに向けて移動し（上記特性（２）を参照。）、
かつ、
該触媒５３の温度が「前記第１温度T1と前記第２温度T2の間の第３温度T3以上」であるときに前記触媒導入ガスの酸素濃度が前記基準酸素濃度stoichよりもリーン側の酸素濃度leanである場合、前記触媒成分CC上に存在する前記硫黄成分が前記触媒導入ガス中に放出される（上記特性（３）を参照。）、触媒５３である。
【０３１６】
このとき、前記酸素吸蔵量回復手段は、
前記触媒５３の温度が「前記第３温度T3以上であり且つ前記第２温度T2以下」である場合（図１２のステップ１２１０にて「Ｙｅｓ」と判定される場合）、前記酸素吸蔵量回復運転を行う、ようになっている。
【０３１７】
換言すると、本発明の各実施形態に係る制御装置は、
触媒成分CCと酸素吸蔵物質OSMとを有する触媒５３であって、触媒導入ガスの酸素濃度が基準酸素濃度stoichよりもリッチ側の酸素濃度richであるときに前記酸素吸蔵物質OSMに吸蔵された硫黄成分が前記触媒成分CCに向けて移動し、かつ、前記触媒導入ガスの酸素濃度が前記基準酸素濃度stoichよりもリーン側の酸素濃度leanであるときに前記触媒成分CC上に存在する前記硫黄成分が前記触媒導入ガス中に放出される触媒５３、を備えた内燃機関に適用され、
前記触媒５３に吸蔵され得る酸素の最大量である最大酸素吸蔵量Cmaxを取得する最大酸素吸蔵量取得手段（ステップ８１５）と、
前記最大酸素吸蔵量Cmaxが所定の閾値Cmaxref以下であるとき、
前記触媒導入ガスの酸素濃度を前記基準酸素濃度stoichよりもリッチ側の酸素濃度richとするリッチ運転を、前記触媒成分CCに移動可能な最大の量の硫黄成分が前記酸素吸蔵物質OSMから前記触媒成分CCに移動するまで行うこと、および、前記触媒成分CCに移動可能な最大の量の硫黄成分が前記酸素吸蔵物質OSMから前記触媒成分CCに移動したときに前記触媒導入ガスの酸素濃度を前記基準酸素濃度stoichよりもリーン側の酸素濃度leanとするリーン運転を行うこと、を含む酸素吸蔵量回復運転を行う酸素吸蔵量回復手段と、を備えている。
【０３１８】
本発明は上記各実施形態に限定されることはなく、本発明の範囲内において種々の変形例を採用することができる。
【０３１９】
例えば、第１装置および第２装置は、「リッチ運転を繰り返す」ことにより、触媒成分CCに移動可能な最大の量の硫黄成分を酸素吸蔵物質OSMから触媒成分CCに移動させるようになっている。しかし、本発明の制御装置におけるリッチ運転は、「触媒成分に移動可能な最大の量の硫黄成分を酸素吸蔵物質から触媒成分に移動させる」ことができる運転であればよく、特に制限されない。例えば、本発明の制御装置は、「触媒成分に移動可能な最大の量の硫黄成分を酸素吸蔵物質OSMから触媒成分CCに移動させる」ことができるリッチ運転の程度（リッチ運転を行う期間の長さ、触媒導入ガスの酸素濃度）をあらかじめ確認し、そのリッチ運転を「１回のみ」行うように構成され得る。
【０３２０】
さらに、本発明の制御装置においては、前記酸素吸蔵量回復手段は、「酸素吸蔵量回復運転を行う前」にリーン運転を行う、ように構成され得る。これにより、酸素吸蔵量回復運転が行われる前に触媒成分CC上に存在する硫黄成分が除去されるので、酸素吸蔵量回復運転を行う際により効率良く最大酸素吸蔵量Cmaxが回復され得る。
【０３２１】
さらに、本発明の制御装置において、酸素吸蔵量回復手段は、最大酸素吸蔵量Cmaxの大きさに応じてリッチ空燃比richおよびリーン空燃比leanを調節するように構成され得る。
【０３２２】
例えば、酸素吸蔵量回復手段は、最大酸素吸蔵量Cmaxが小さくなるにつれてリッチ空燃比richが理論空燃比stoichからリッチ側に離れるように（すなわち、排ガスの空燃比が小さくなるように）リッチ空燃比richを調整するように構成され得る。
【０３２３】
具体的に述べると、酸素吸蔵量回復手段は、
前記最大酸素吸蔵量Cmaxが「第１の値」であるときに前記リッチ運転を行う場合の前記触媒導入ガスの酸素濃度である第１酸素濃度が、前記最大酸素吸蔵量Cmaxが前記第１の値よりも大きい第２の値であるときに前記リッチ運転を行う場合の前記触媒導入ガスの酸素濃度である第２酸素濃度と同一または前記第２酸素濃度よりもリッチ側の酸素濃度richである、ように構成され得る。
【０３２４】
また、例えば、酸素吸蔵量回復手段は、最大酸素吸蔵量Cmaxが大きくなるにつれてリーン空燃比leanが理論空燃比stoichからリーン側に離れるように（すなわち、排ガスの空燃比が大きくなるように）リーン空燃比leanを調整するように構成され得る。
【０３２５】
具体的に述べると、酸素吸蔵量回復手段は、
前記最大酸素吸蔵量Cmaxが第３の値であるときに前記リーン運転を行う場合の前記触媒導入ガスの酸素濃度である第３酸素濃度が、前記最大酸素吸蔵量Cmaxが前記第３の値よりも大きい第４の値であるときに前記リーン運転を行う場合の前記触媒導入ガスの酸素濃度である第４酸素濃度と同一または前記第４酸素濃度よりもリーン側の酸素濃度である、ように構成され得る。
【０３２６】
上述したようにリッチ空燃比richまたはリーン空燃比leanが調整されることにより、触媒５３に吸着・吸蔵された硫黄成分がさらに効率良く排除され得る。
【０３２７】
さらに、本発明の制御装置は、触媒５３の温度TempCが活性温度T0よりも低い場合に酸素吸蔵量回復運転を行わない（禁止する）ように構成され得る。これは、触媒５３の温度TempCが活性温度T0よりも低い場合、触媒５３の温度TempCが活性温度T0以上である場合に比べて排ガスの浄化率が小さいためである。
【０３２８】
加えて、本発明の制御装置は、リッチ運転を実行する際にスロットル弁開度TAを減少させるとともに、リーン運転を実行する際にスロットル弁開度TAを増大させる、ように構成され得る。これにより、リッチ運転またはリーン運転が実行される際に出力トルクが大きく変動することが抑制され、ドライバビリティが低下することが防がれる。
【０３２９】
さらに、第１装置および第２装置は、リーンガス積算量Galsumが閾値積算量Galsumth以上となるまでリーン運転を継続するようになっている。しかし、本発明の制御装置は、リーンガス積算量Galsumの大きさにかかわらず、機関１０の運転状態に応じてリーン運転を中止するように構成され得る。例えば、触媒５３の温度TempCが所定温度よりも低い温度となった場合、および、冷却水の温度THWが所定温度よりも低い温度となった場合などにおいて、リーン運転が中止され得る。
【０３３０】
さらに、第１装置および第２装置は、リッチガス積算量Garsumに基づいてリッチ運転を中止するか否かを判断し、リーンガス積算量Galsumに基づいてリーン運転を中止するか否かを判断するようになっている。しかし、本発明の制御装置は、触媒５３に吸着・吸蔵された硫黄成分の量に関連する所定のパラメータに基づき、リッチ運転およびリーン運転を中止するか否かを判断するように構成され得る。
【０３３１】
さらに、第１装置および第２装置は、三元触媒を備えた機関（火花点火式機関）に適用されている。しかし、本発明の制御装置は、NOx吸蔵還元触媒を備えた機関（例えば、ディーゼル機関）に適用され得る。
【０３３２】
さらに、第１装置および第２装置は、１のみの触媒を備えている。しかし、本発明の制御装置は、複数の触媒を備える機関に適用され得る。
【０３３３】
さらに、第１装置および第２装置は、上流側目標空燃比abyfrをリーン空燃比leanに設定することによってリーン運転を行うようになっている。ここで、本発明の制御装置は、リーン運転として「フューエルカット運転」を行うように構成され得る。
【０３３４】
さらに、第１装置および第２装置は、触媒５３の最大酸素吸蔵量Cmaxを上記（１）式および上記（２）式に従って算出している（図５を参照。）。しかし、本発明の制御装置が触媒の最大酸素吸蔵量を取得する方法は、この方法に限定されない。例えば、本発明の制御装置は、触媒に吸着・吸蔵されている硫黄成分の量に基づいて触媒の最大酸素吸蔵量を算出するように構成され得る。
【符号の説明】
【０３３５】
１０…内燃機関、２５…燃焼室、３４…インジェクタ、５２…吸気管、５３…触媒、７６…上流側酸素濃度センサ、７７…下流側酸素濃度センサ、８０…電子制御装置
【図１】
2012062774.tif 000003
【図２】
2012062774.tif 000004
【図３】
2012062774.tif 000005
【図４】
2012062774.tif 000006
【図５】
2012062774.tif 000007
【図６】
2012062774.tif 000008
【図７】
2012062774.tif 000009
【図８】
2012062774.tif 000010
【図９】
2012062774.tif 000011
【図１０】
2012062774.tif 000012
【図１１】
2012062774.tif 000013
【図１２】
2012062774.tif 000014