(57)【特許請求の範囲】
【請求項１】
内燃機関の排気通路に配置された三元触媒における貯蔵酸素脱離量を算出する三元触媒貯蔵酸素脱離量算出装置であって、
三元触媒に流入する排気状態に基づいて前記三元触媒における貯蔵酸素脱離量を積算する貯蔵酸素脱離量積算手段と、
三元触媒における最大貯蔵酸素脱離量と最小貯蔵酸素脱離量との間において、最大貯蔵酸素脱離量と最小貯蔵酸素脱離量との間の領域よりも小さい領域であってかつ三元触媒の貯蔵酸素脱離量が位置する可能性が高い貯蔵酸素脱離量存在領域を内燃機関の運転状態に応じて設定する貯蔵酸素脱離量存在領域設定手段と、
前記貯蔵酸素脱離量積算手段にて積算された貯蔵酸素脱離量が前記貯蔵酸素脱離量存在領域設定手段にて設定されている貯蔵酸素脱離量存在領域から外れている場合には、前記貯蔵酸素脱離量積算手段にて積算された貯蔵酸素脱離量の値を、前記貯蔵酸素脱離量存在領域に近づけるように、あるいは前記貯蔵酸素脱離量存在領域以内とするように修正する貯蔵酸素脱離量修正手段とを備え、
前記貯蔵酸素脱離量存在領域設定手段は、内燃機関の運転状態を表す状態量として、三元触媒の下流で検出される空燃比を用いることにより空燃比領域を判断し、該空燃比領域に対応する貯蔵酸素脱離量存在領域を設定することを特徴とする三元触媒貯蔵酸素脱離量算出装置。
【請求項２】
内燃機関の排気通路に配置された三元触媒における貯蔵酸素脱離量を算出する三元触媒貯蔵酸素脱離量算出装置であって、
三元触媒に流入する排気状態に基づいて前記三元触媒における貯蔵酸素脱離量を積算する貯蔵酸素脱離量積算手段と、
三元触媒における最大貯蔵酸素脱離量と最小貯蔵酸素脱離量との間において、最大貯蔵酸素脱離量と最小貯蔵酸素脱離量との間の領域よりも小さい領域であってかつ三元触媒の貯蔵酸素脱離量が位置する可能性が高い貯蔵酸素脱離量存在領域を内燃機関の運転状態に応じて設定する貯蔵酸素脱離量存在領域設定手段と、
前記貯蔵酸素脱離量積算手段にて積算された貯蔵酸素脱離量が前記貯蔵酸素脱離量存在領域設定手段にて設定されている貯蔵酸素脱離量存在領域から外れている場合には、前記貯蔵酸素脱離量積算手段にて積算された貯蔵酸素脱離量の値を、前記貯蔵酸素脱離量存在領域に近づけるように、あるいは前記貯蔵酸素脱離量存在領域以内とするように修正する貯蔵酸素脱離量修正手段とを備え、
前記貯蔵酸素脱離量存在領域設定手段は、内燃機関の運転状態を表す状態量として、内燃機関の運転中に内燃機関への燃料供給を停止する燃料カット処理の有無を用いることにより、燃料カット処理有無に対応する貯蔵酸素脱離量存在領域を設定することを特徴とする三元触媒貯蔵酸素脱離量算出装置。
【請求項３】
内燃機関の排気通路に配置された三元触媒における貯蔵酸素脱離量を算出する三元触媒貯蔵酸素脱離量算出装置であって、
三元触媒に流入する排気状態に基づいて前記三元触媒における貯蔵酸素脱離量を積算する貯蔵酸素脱離量積算手段と、
三元触媒における最大貯蔵酸素脱離量と最小貯蔵酸素脱離量との間において、最大貯蔵酸素脱離量と最小貯蔵酸素脱離量との間の領域よりも小さい領域であってかつ三元触媒の貯蔵酸素脱離量が位置する可能性が高い貯蔵酸素脱離量存在領域を内燃機関の運転状態に応じて設定する貯蔵酸素脱離量存在領域設定手段と、
前記貯蔵酸素脱離量積算手段にて積算された貯蔵酸素脱離量が前記貯蔵酸素脱離量存在領域設定手段にて設定されている貯蔵酸素脱離量存在領域から外れている場合には、前記貯蔵酸素脱離量積算手段にて積算された貯蔵酸素脱離量の値を、前記貯蔵酸素脱離量存在領域に近づけるように、あるいは前記貯蔵酸素脱離量存在領域以内とするように修正する貯蔵酸素脱離量修正手段とを備え、
前記貯蔵酸素脱離量存在領域設定手段は、内燃機関の運転状態を表す状態量として、内燃機関の運転中に内燃機関への燃料供給を停止する燃料カット処理の有無と、三元触媒の下流で検出される空燃比とを用いることにより、燃料カット処理有無および三元触媒の下流で検出される空燃比に対応する貯蔵酸素脱離量存在領域を設定することを特徴とする三元触媒貯蔵酸素脱離量算出装置。
【請求項４】
内燃機関の排気通路に配置された三元触媒における貯蔵酸素脱離量を算出する三元触媒貯蔵酸素脱離量算出装置であって、
三元触媒に流入する排気状態に基づいて前記三元触媒における貯蔵酸素脱離量を積算する貯蔵酸素脱離量積算手段と、
三元触媒における最大貯蔵酸素脱離量と最小貯蔵酸素脱離量との間において、最大貯蔵酸素脱離量と最小貯蔵酸素脱離量との間の領域よりも小さい領域であってかつ三元触媒の貯蔵酸素脱離量が位置する可能性が高い貯蔵酸素脱離量存在領域を内燃機関の運転状態に応じて設定する貯蔵酸素脱離量存在領域設定手段と、
前記貯蔵酸素脱離量積算手段にて積算された貯蔵酸素脱離量が前記貯蔵酸素脱離量存在領域設定手段にて設定されている貯蔵酸素脱離量存在領域から外れている場合には、前記貯蔵酸素脱離量積算手段にて積算された貯蔵酸素脱離量の値を、前記貯蔵酸素脱離量存在領域に近づけるように、あるいは前記貯蔵酸素脱離量存在領域以内とするように修正する貯蔵酸素脱離量修正手段とを備え、
前記貯蔵酸素脱離量存在領域設定手段は、内燃機関の運転状態を表す状態量として、三元触媒の温度を用いるとともに、三元触媒の下流で検出される空燃比を用いることにより空燃比領域を判断し、三元触媒の温度および前記空燃比領域に対応する貯蔵酸素脱離量存在領域を設定することを特徴とする三元触媒貯蔵酸素脱離量算出装置。
【請求項５】
内燃機関の排気通路に配置された三元触媒における貯蔵酸素脱離量を算出する三元触媒貯蔵酸素脱離量算出装置であって、
三元触媒に流入する排気状態に基づいて前記三元触媒における貯蔵酸素脱離量を積算する貯蔵酸素脱離量積算手段と、
三元触媒における最大貯蔵酸素脱離量と最小貯蔵酸素脱離量との間において、最大貯蔵酸素脱離量と最小貯蔵酸素脱離量との間の領域よりも小さい領域であってかつ三元触媒の貯蔵酸素脱離量が位置する可能性が高い貯蔵酸素脱離量存在領域を内燃機関の運転状態に応じて設定する貯蔵酸素脱離量存在領域設定手段と、
前記貯蔵酸素脱離量積算手段にて積算された貯蔵酸素脱離量が前記貯蔵酸素脱離量存在領域設定手段にて設定されている貯蔵酸素脱離量存在領域から外れている場合には、前記貯蔵酸素脱離量積算手段にて積算された貯蔵酸素脱離量の値を、前記貯蔵酸素脱離量存在領域に近づけるように、あるいは前記貯蔵酸素脱離量存在領域以内とするように修正する貯蔵酸素脱離量修正手段とを備え、
前記貯蔵酸素脱離量存在領域設定手段は、内燃機関の運転状態を表す状態量として、三元触媒の温度と、内燃機関の運転中に内燃機関への燃料供給を停止する燃料カット処理の有無とを用いることにより、三元触媒の温度および燃料カット処理有無に対応する貯蔵酸素脱離量存在領域を設定することを特徴とする三元触媒貯蔵酸素脱離量算出装置。
【請求項６】
内燃機関の排気通路に配置された三元触媒における貯蔵酸素脱離量を算出する三元触媒貯蔵酸素脱離量算出装置であって、
三元触媒に流入する排気状態に基づいて前記三元触媒における貯蔵酸素脱離量を積算する貯蔵酸素脱離量積算手段と、
三元触媒における最大貯蔵酸素脱離量と最小貯蔵酸素脱離量との間において、最大貯蔵酸素脱離量と最小貯蔵酸素脱離量との間の領域よりも小さい領域であってかつ三元触媒の貯蔵酸素脱離量が位置する可能性が高い貯蔵酸素脱離量存在領域を内燃機関の運転状態に応じて設定する貯蔵酸素脱離量存在領域設定手段と、
前記貯蔵酸素脱離量積算手段にて積算された貯蔵酸素脱離量が前記貯蔵酸素脱離量存在領域設定手段にて設定されている貯蔵酸素脱離量存在領域から外れている場合には、前記貯蔵酸素脱離量積算手段にて積算された貯蔵酸素脱離量の値を、前記貯蔵酸素脱離量存在領域に近づけるように、あるいは前記貯蔵酸素脱離量存在領域以内とするように修正する貯蔵酸素脱離量修正手段とを備え、
前記貯蔵酸素脱離量存在領域設定手段は、内燃機関の運転状態を表す状態量として、三元触媒の温度と、内燃機関の運転中に内燃機関への燃料供給を停止する燃料カット処理の有無と、三元触媒の下流で検出される空燃比とを用いることにより、三元触媒の温度、燃料カット処理有無および三元触媒の下流で検出される空燃比に対応する貯蔵酸素脱離量存在領域を設定することを特徴とする三元触媒貯蔵酸素脱離量算出装置。
【請求項７】
前記貯蔵酸素脱離量存在領域設定手段は、内燃機関の運転中に内燃機関への燃料供給を停止する燃料カット処理の終了直後において、三元触媒の下流において理論空燃比よりも燃料濃度が低い空燃比が継続している場合は、燃料カット処理有りに対応する貯蔵酸素脱離量存在領域を設定することを特徴とする請求項２、３、５または６記載の三元触媒貯蔵酸素脱離量算出装置。
【請求項８】
請求項１〜７のいずれか記載の構成に加えて、
三元触媒の酸素吸着能力を推定する三元触媒吸着能力推定手段を備え、
前記貯蔵酸素脱離量存在領域設定手段は、内燃機関の運転状態および前記三元触媒吸着能力推定手段にて推定された三元触媒の酸素吸着能力に応じて、三元触媒における貯蔵酸素脱離量存在領域を設定することを特徴とする三元触媒貯蔵酸素脱離量算出装置。
【請求項９】
前記三元触媒吸着能力推定手段は、三元触媒の累積使用時間に応じて、三元触媒の酸素吸着能力を推定することを特徴とする請求項８記載の三元触媒貯蔵酸素脱離量算出装置。
【請求項１０】
請求項１〜７のいずれか記載の構成に加えて、
三元触媒の酸素吸着能力を検出する三元触媒吸着能力検出手段を備え、
前記貯蔵酸素脱離量存在領域設定手段は、内燃機関の運転状態および前記三元触媒吸着能力検出手段にて検出された三元触媒の酸素吸着能力に応じて、三元触媒における貯蔵酸素脱離量存在領域を設定することを特徴とする三元触媒貯蔵酸素脱離量算出装置。
【請求項１１】
前記三元触媒吸着能力検出手段は、三元触媒において酸素が飽和状態である時から、三元触媒の下流で検出される空燃比が理論空燃比よりも燃料濃度が濃い状態になった時までにおける三元触媒に流入する排気状態に基づいて算出される燃料濃度の過不足量の積算値に応じて、三元触媒の酸素吸着能力を検出することを特徴とする請求項１０記載の三元触媒貯蔵酸素脱離量算出装置。
【請求項１２】
前記三元触媒吸着能力検出手段は、内燃機関の運転中に内燃機関への燃料供給を停止する燃料カット処理が基準時間以上継続した場合に、三元触媒において酸素が飽和状態であるとして三元触媒に流入する排気状態に基づいて算出される燃料濃度の過不足量の積算を開始することを特徴とする請求項１１記載の三元触媒貯蔵酸素脱離量算出装置。
【請求項１３】
前記貯蔵酸素脱離量積算手段は、三元触媒に流入する排気状態を表す状態量として、内燃機関への吸入空気量と三元触媒の上流で検出される空燃比とを用いることにより、三元触媒での酸素の吸着量と離脱量との収支を積算して三元触媒における貯蔵酸素脱離量を求めることを特徴とする請求項１〜１２のいずれか記載の三元触媒貯蔵酸素脱離量算出装置。
【請求項１４】
請求項１〜１３のいずれか記載の三元触媒貯蔵酸素脱離量算出装置を備え、該三元触媒貯蔵酸素脱離量算出装置にて算出される三元触媒の貯蔵酸素脱離量が、目標貯蔵酸素脱離量となるように、内燃機関の燃焼室に供給される混合気の空燃比を制御することを特徴とする内燃機関の空燃比制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、三元触媒貯蔵酸素脱離量算出装置およびこの三元触媒貯蔵酸素脱離量算出装置を用いた内燃機関の空燃比制御装置に関する。
【０００２】
【従来の技術】
三元触媒は空燃比がほぼ理論空燃比のときにＨＣ，ＣＯを酸化しかつＮＯｘを還元する機能を有する。したがって空燃比をほぼ理論空燃比に維持することができれば三元触媒を用いてＨＣ，ＣＯ，ＮＯｘを同時に浄化することができる。ところが空燃比をほぼ理論空燃比に維持することは困難であり、実際には空燃比が理論空燃比からずれてしまう場合がある。しかしながら空燃比が理論空燃比からずれたとしても三元触媒の酸素貯蔵機能によってＨＣ，ＣＯ，ＮＯｘを浄化することができる。
【０００３】
すなわち、三元触媒は空燃比が理論空燃比よりも燃料濃度が低い状態（以下、「リーン」と称する）のときに排気中の過剰酸素を取り込んで貯蔵する機能を有し、この機能によってＮＯｘを還元することができる。一方、空燃比が理論空燃比よりも燃料濃度が高い状態（以下、「リッチ」と称する）になると排気中の未燃ＨＣ，ＣＯが三元触媒内に貯蔵されている酸素を奪い、これにより未燃ＨＣ，ＣＯを酸化することができる。
【０００４】
したがって空燃比が理論空燃比からずれたときにＮＯｘを還元するには三元触媒が酸素を貯蔵できる状態しておく必要がある。すなわち三元触媒の貯蔵酸素量が最大貯蔵酸素量に対して余裕がある状態でなければならない。更に未燃ＨＣ，ＣＯを酸化させるには三元触媒がある程度の酸素を貯蔵した状態にしておく必要がある。すなわち、空燃比が理論空燃比からリーン側にずれたときにＮＯｘを還元でき、空燃比が理論空燃比に対してリッチ側にずれたときに未燃ＨＣ，ＣＯを酸化できるようにするためには、三元触媒の貯蔵酸素量を最大貯蔵酸素量と貯蔵酸素量０との中間の状態にしておく必要がある。
【０００５】
三元触媒に吸着される酸素量および三元触媒から脱離される酸素量は吸入空気量と理論空燃比に対する空燃比のずれ量とに基づいて算出することができる。したがって、これら吸入空気量および空燃比のずれ量から三元触媒の貯蔵酸素量を算出することができる。
【０００６】
そこで三元触媒に貯蔵しておくべき目標貯蔵酸素量を最大貯蔵酸素量と貯蔵酸素量０との中間に予め定めておき、算出された三元触媒の貯蔵酸素量がこの目標貯蔵酸素量となるように燃料噴射量を制御するようにした内燃機関の空燃比制御装置が提案されている（特開昭６−２４９０２８号公報）。
【０００７】
このように算出された貯蔵酸素量に基づいて三元触媒に貯蔵しておくべき酸素量を制御するためには三元触媒の貯蔵酸素量を正確に算出しなければならない。しかし、上述のように吸入空気量および空燃比のずれ量から貯蔵酸素量を算出していると、算出を繰り返している間に実際の貯蔵酸素量に対してずれを生じる場合がある。したがって、貯蔵酸素量を正確に算出するためにはこのずれ量を修正する必要がある。
【０００８】
上述した従来技術では、算出される貯蔵酸素量が最大貯蔵酸素量より大きくならないように、また最小貯蔵酸素量（貯蔵酸素量＝０）よりも小さくならないようにガードをかけている。しかしながら、このようなガードのみでは、実際の貯蔵酸素量に対する計算上の貯蔵酸素量のずれ量自体の修正は行われない。このためずれ量が適切に修正されないまま蓄積し、計算上の貯蔵酸素量が実際の貯蔵酸素量から大きく外れる場合が発生する。このことにより三元触媒において酸素が飽和してＮＯｘを還元できなくなったり、貯蔵酸素量が０となって未燃ＨＣ，ＣＯを酸化できなくなったりして、エミッションの悪化を招くおそれがある。
【０００９】
この問題を解決するため、特開平１０−１８４４２４号公報記載の技術では、三元触媒の上流と下流とにそれぞれ空燃比センサを設けている。そして、上流側の空燃比および吸入空気量等に基づいて、最大貯蔵酸素量状態にある三元触媒からの酸素の脱離量を示す値である貯蔵酸素脱離量を算出している。そして、この計算上の貯蔵酸素脱離量が最大脱離量に達していないにもかかわらずに下流側の空燃比センサにより検出された空燃比がリッチ以外の状態からリッチに切り替わった時には、計算上の貯蔵酸素脱離量を最大脱離量に修正している。また、計算上の貯蔵酸素脱離量が０に達していないにもかかわらずに下流側の空燃比センサにより検出された空燃比がリーン以外の状態からリーンに切り替わった時には、計算上の貯蔵酸素脱離量を０に修正している。
【００１０】
このように下流側の空燃比センサの状態変化により、実際の貯蔵酸素脱離量が最大貯蔵酸素脱離量である状態と実際の貯蔵酸素脱離量が０である状態とを検出し、この時に計算上の貯蔵酸素脱離量を最大脱離量あるいは０に再設定している。
【００１１】
【発明が解決しようとする課題】
しかし、後者の従来例では、計算上の貯蔵酸素脱離量の適切さを判断するためには、三元触媒下流側の空燃比センサが、リッチ以外の状態からリッチ状態に切り替わったり、あるいはリーン以外の状態からリーン状態に切り替わったりする必要がある。このように後者の従来例では比較的大きな状態変化が必須であり、計算上の貯蔵酸素脱離量を修正する機会が少なくなる。このため、計算上の貯蔵酸素脱離量が不適切である状態が長期間継続することがあり、その間に、エミッションの悪化を招くおそれがある。
【００１２】
更に、計算上の貯蔵酸素脱離量に対する修正が、最大貯蔵酸素脱離量あるいは最小貯蔵酸素脱離量への極端な修正であるので、修正時の貯蔵酸素脱離量の変動が激しい。このため、修正後において実際の貯蔵酸素脱離量との誤差が大きい状態が発生し易くなる。そして、この誤差が後まで影響することにより計算上の貯蔵酸素脱離量が不適切である状態が長期間継続し、その間に、エミッションの悪化を招くおそれがある。
【００１３】
本発明は、三元触媒における貯蔵酸素脱離量の算出に際して、計算上の貯蔵酸素脱離量を修正する機会を増加させ、修正自体も激しい変動を抑制することにより、計算上の貯蔵酸素脱離量が不適切である状態が長期間継続することを防止し、エミッションの悪化防止に寄与することを目的とするものである。
【００１４】
【課題を解決するための手段】
以下、上記目的を達成するための手段およびその作用効果について記載する。
請求項１記載の三元触媒貯蔵酸素脱離量算出装置は、内燃機関の排気通路に配置された三元触媒における貯蔵酸素脱離量を算出する三元触媒貯蔵酸素脱離量算出装置であって、三元触媒に流入する排気状態に基づいて前記三元触媒における貯蔵酸素脱離量を積算する貯蔵酸素脱離量積算手段と、三元触媒における最大貯蔵酸素脱離量と最小貯蔵酸素脱離量との間において、最大貯蔵酸素脱離量と最小貯蔵酸素脱離量との間の領域よりも小さい領域であってかつ三元触媒の貯蔵酸素脱離量が位置する可能性が高い貯蔵酸素脱離量存在領域を内燃機関の運転状態に応じて設定する貯蔵酸素脱離量存在領域設定手段と、前記貯蔵酸素脱離量積算手段にて積算された貯蔵酸素脱離量が前記貯蔵酸素脱離量存在領域設定手段にて設定されている貯蔵酸素脱離量存在領域から外れている場合には、前記貯蔵酸素脱離量積算手段にて積算された貯蔵酸素脱離量の値を、前記貯蔵酸素脱離量存在領域に近づけるように、あるいは前記貯蔵酸素脱離量存在領域以内とするように修正する貯蔵酸素脱離量修正手段とを備え、前記貯蔵酸素脱離量存在領域設定手段は、内燃機関の運転状態を表す状態量として、三元触媒の下流で検出される空燃比を用いることにより空燃比領域を判断し、該空燃比領域に対応する貯蔵酸素脱離量存在領域を設定することを特徴とする。
【００１５】
ここで、貯蔵酸素脱離量存在領域設定手段は、最大貯蔵酸素脱離量と最小貯蔵酸素脱離量との間において、最大貯蔵酸素脱離量と最小貯蔵酸素脱離量との間の領域よりも小さい領域であってかつ三元触媒の貯蔵酸素脱離量が位置する可能性が高い貯蔵酸素脱離量存在領域を内燃機関の運転状態に応じて設定している。すなわち、この貯蔵酸素脱離量存在領域は、その時の内燃機関の運転状態に応じることにより実際の貯蔵酸素脱離量を反映したものとなっている。
【００１６】
そして、貯蔵酸素脱離量修正手段は、この貯蔵酸素脱離量存在領域を参照して、前記貯蔵酸素脱離量積算手段にて積算された貯蔵酸素脱離量が、前記貯蔵酸素脱離量存在領域設定手段にて設定されている貯蔵酸素脱離量存在領域から外れている場合には、前記貯蔵酸素脱離量積算手段にて積算された貯蔵酸素脱離量の値を前記貯蔵酸素脱離量存在領域に近づけるように、あるいは貯蔵酸素脱離量存在領域以内とするように修正している。
【００１７】
このことにより、従来技術のごとく、三元触媒下流側の空燃比センサの比較的大きな状態変化を必須とすることなく、貯蔵酸素脱離量が貯蔵酸素脱離量存在領域から外れている場合には、貯蔵酸素脱離量存在領域に近づくようにあるいは貯蔵酸素脱離量存在領域以内とするように貯蔵酸素脱離量の値を修正することにより、より適切な状態に修正できる。
【００１８】
このため、計算上の貯蔵酸素脱離量を修正する機会が増加する。しかも、極端な値への修正が抑制されるので、修正後において実際の貯蔵酸素脱離量との誤差が大きい状態が発生し難くなる。こうして、計算上の貯蔵酸素脱離量が不適切である状態が長期間継続することが無くなる。したがって、エミッションの悪化し易くなる前に計算上の貯蔵酸素脱離量を適切な値に修正することが可能となり、エミッションの悪化防止が確実となる。
【００２２】
さらに、内燃機関の運転状態を表す状態量としては、例えば、三元触媒の下流で検出される空燃比を用いる。したがって、例えば、三元触媒の下流での空燃比がリッチ状態であれば、このリッチ状態での貯蔵酸素脱離量存在領域を設定することができ、リーン状態では、リーン状態での貯蔵酸素脱離量存在領域を設定することができる。このように、空燃比の変化によらず空燃比の状態（空燃比領域）により、貯蔵酸素脱離量存在領域を設定することができるので、計算上の貯蔵酸素脱離量を適切に修正する機会が増加して、計算上の貯蔵酸素脱離量が不適切な状態が長期間継続することが無くなる。
【００２３】
請求項２記載の三元触媒貯蔵酸素脱離量算出装置は、内燃機関の排気通路に配置された三元触媒における貯蔵酸素脱離量を算出する三元触媒貯蔵酸素脱離量算出装置であって、三元触媒に流入する排気状態に基づいて前記三元触媒における貯蔵酸素脱離量を積算する貯蔵酸素脱離量積算手段と、三元触媒における最大貯蔵酸素脱離量と最小貯蔵酸素脱離量との間において、最大貯蔵酸素脱離量と最小貯蔵酸素脱離量との間の領域よりも小さい領域であってかつ三元触媒の貯蔵酸素脱離量が位置する可能性が高い貯蔵酸素脱離量存在領域を内燃機関の運転状態に応じて設定する貯蔵酸素脱離量存在領域設定手段と、前記貯蔵酸素脱離量積算手段にて積算された貯蔵酸素脱離量が前記貯蔵酸素脱離量存在領域設定手段にて設定されている貯蔵酸素脱離量存在領域から外れている場合には、前記貯蔵酸素脱離量積算手段にて積算された貯蔵酸素脱離量の値を、前記貯蔵酸素脱離量存在領域に近づけるように、あるいは前記貯蔵酸素脱離量存在領域以内とするように修正する貯蔵酸素脱離量修正手段とを備え、前記貯蔵酸素脱離量存在領域設定手段は、内燃機関の運転状態を表す状態量として、内燃機関の運転中に内燃機関への燃料供給を停止する燃料カット処理の有無を用いることにより、燃料カット処理有無に対応する貯蔵酸素脱離量存在領域を設定することを特徴とする。
【００２４】
内燃機関の運転状態を表す状態量としては、例えば、燃料カット処理の有無を用いる。したがって、例えば、燃料カット処理が行われていれば、三元触媒への酸素量の供給が大量であることを考慮した貯蔵酸素脱離量存在領域を設定することができる。このように、空燃比の変化によらず燃料カット処理有無の状態により、貯蔵酸素脱離量存在領域を設定することができるので、計算上の貯蔵酸素脱離量を適切に修正する機会が増加して、計算上の貯蔵酸素脱離量が不適切な状態が長期間継続することが無くなる。
【００２５】
請求項３記載の三元触媒貯蔵酸素脱離量算出装置は、内燃機関の排気通路に配置された三元触媒における貯蔵酸素脱離量を算出する三元触媒貯蔵酸素脱離量算出装置であって、三元触媒に流入する排気状態に基づいて前記三元触媒における貯蔵酸素脱離量を積算する貯蔵酸素脱離量積算手段と、三元触媒における最大貯蔵酸素脱離量と最小貯蔵酸素脱離量との間において、最大貯蔵酸素脱離量と最小貯蔵酸素脱離量との間の領域よりも小さい領域であってかつ三元触媒の貯蔵酸素脱離量が位置する可能性が高い貯蔵酸素脱離量存在領域を内燃機関の運転状態に応じて設定する貯蔵酸素脱離量存在領域設定手段と、前記貯蔵酸素脱離量積算手段にて積算された貯蔵酸素脱離量が前記貯蔵酸素脱離量存在領域設定手段にて設定されている貯蔵酸素脱離量存在領域から外れている場合には、前記貯蔵酸素脱離量積算手段にて積算された貯蔵酸素脱離量の値を、前記貯蔵酸素脱離量存在領域に近づけるように、あるいは前記貯蔵酸素脱離量存在領域以内とするように修正する貯蔵酸素脱離量修正手段とを備え、前記貯蔵酸素脱離量存在領域設定手段は、内燃機関の運転状態を表す状態量として、内燃機関の運転中に内燃機関への燃料供給を停止する燃料カット処理の有無と、三元触媒の下流で検出される空燃比とを用いることにより、燃料カット処理有無および三元触媒の下流で検出される空燃比に対応する貯蔵酸素脱離量存在領域を設定することを特徴とする。
【００２６】
内燃機関の運転状態を表す状態量としては、例えば、内燃機関の運転中に内燃機関への燃料供給を停止する燃料カット処理の有無と、三元触媒の下流で検出される空燃比とを用いる。したがって、例えば、燃料カット処理がなされている状態では、三元触媒への酸素量の供給が大量であることを考慮した貯蔵酸素脱離量存在領域を設定することができる。また、燃料カット処理がなされていない状態では、三元触媒の下流で検出される空燃比を用いて、前記請求項１で述べたごとく貯蔵酸素脱離量存在領域を設定することができる。このように、空燃比の変化によらず、燃料カット処理の有無や三元触媒下流の空燃比の状態により、貯蔵酸素脱離量存在領域を設定することができるので、計算上の貯蔵酸素脱離量を適切に修正する機会が増加して、計算上の貯蔵酸素脱離量が不適切である状態が長期間継続することが無くなる。
【００２７】
請求項４記載の三元触媒貯蔵酸素脱離量算出装置は、内燃機関の排気通路に配置された三元触媒における貯蔵酸素脱離量を算出する三元触媒貯蔵酸素脱離量算出装置であって、三元触媒に流入する排気状態に基づいて前記三元触媒における貯蔵酸素脱離量を積算する貯蔵酸素脱離量積算手段と、三元触媒における最大貯蔵酸素脱離量と最小貯蔵酸素脱離量との間において、最大貯蔵酸素脱離量と最小貯蔵酸素脱離量との間の領域よりも小さい領域であってかつ三元触媒の貯蔵酸素脱離量が位置する可能性が高い貯蔵酸素脱離量存在領域を内燃機関の運転状態に応じて設定する貯蔵酸素脱離量存在領域設定手段と、前記貯蔵酸素脱離量積算手段にて積算された貯蔵酸素脱離量が前記貯蔵酸素脱離量存在領域設定手段にて設定されている貯蔵酸素脱離量存在領域から外れている場合には、前記貯蔵酸素脱離量積算手段にて積算された貯蔵酸素脱離量の値を、前記貯蔵酸素脱離量存在領域に近づけるように、あるいは前記貯蔵酸素脱離量存在領域以内とするように修正する貯蔵酸素脱離量修正手段とを備え、前記貯蔵酸素脱離量存在領域設定手段は、内燃機関の運転状態を表す状態量として、三元触媒の温度を用いるとともに、三元触媒の下流で検出される空燃比を用いることにより空燃比領域を判断し、三元触媒の温度および前記空燃比領域に対応する貯蔵酸素脱離量存在領域を設定することを特徴とする。
【００２８】
内燃機関の運転状態を表す状態量としては、例えば、三元触媒の温度を用いるとともに、三元触媒の下流で検出される空燃比を用いることにより空燃比領域を判断する。三元触媒は、温度に応じてその最大貯蔵酸素量が変化する。このため、三元触媒の下流での空燃比領域に応じて貯蔵酸素脱離量存在領域を設定する場合にも、温度に応じて貯蔵酸素脱離量存在領域の範囲を変化させることにより、適切な貯蔵酸素脱離量存在領域を設定することができる。したがって、計算上の貯蔵酸素脱離量の修正をより適切なものとでき、請求項１の効果をより顕著なものとできる。
【００２９】
請求項５記載の三元触媒貯蔵酸素脱離量算出装置は、内燃機関の排気通路に配置された三元触媒における貯蔵酸素脱離量を算出する三元触媒貯蔵酸素脱離量算出装置であって、三元触媒に流入する排気状態に基づいて前記三元触媒における貯蔵酸素脱離量を積算する貯蔵酸素脱離量積算手段と、三元触媒における最大貯蔵酸素脱離量と最小貯蔵酸素脱離量との間において、最大貯蔵酸素脱離量と最小貯蔵酸素脱離量との間の領域よりも小さい領域であってかつ三元触媒の貯蔵酸素脱離量が位置する可能性が高い貯蔵酸素脱離量存在領域を内燃機関の運転状態に応じて設定する貯蔵酸素脱離量存在領域設定手段と、前記貯蔵酸素脱離量積算手段にて積算された貯蔵酸素脱離量が前記貯蔵酸素脱離量存在領域設定手段にて設定されている貯蔵酸素脱離量存在領域から外れている場合には、前記貯蔵酸素脱離量積算手段にて積算された貯蔵酸素脱離量の値を、前記貯蔵酸素脱離量存在領域に近づけるように、あるいは前記貯蔵酸素脱離量存在領域以内とするように修正する貯蔵酸素脱離量修正手段とを備え、前記貯蔵酸素脱離量存在領域設定手段は、内燃機関の運転状態を表す状態量として、三元触媒の温度と、内燃機関の運転中に内燃機関への燃料供給を停止する燃料カット処理の有無とを用いることにより、三元触媒の温度および燃料カット処理有無に対応する貯蔵酸素脱離量存在領域を設定することを特徴とする。
【００３０】
内燃機関の運転状態を表す状態量としては、例えば、三元触媒の温度と、燃料カット処理の有無とを用いる。したがって、例えば、燃料カット処理が行われていれば、三元触媒への酸素量の供給が大量であることを考慮した貯蔵酸素脱離量存在領域を設定することができるが、温度に応じて燃料カット処理に伴う三元触媒への酸素量の吸着程度も変化する。このため、燃料カット処理の実行に応じて貯蔵酸素脱離量存在領域を設定する場合にも、温度に応じて貯蔵酸素脱離量存在領域の範囲を変化させることにより、適切な貯蔵酸素脱離量存在領域を設定することができる。したがって、計算上の貯蔵酸素脱離量の修正をより適切なものとできる。
【００３１】
請求項６記載の三元触媒貯蔵酸素脱離量算出装置は、内燃機関の排気通路に配置された三元触媒における貯蔵酸素脱離量を算出する三元触媒貯蔵酸素脱離量算出装置であって、三元触媒に流入する排気状態に基づいて前記三元触媒における貯蔵酸素脱離量を積算する貯蔵酸素脱離量積算手段と、三元触媒における最大貯蔵酸素脱離量と最小貯蔵酸素脱離量との間において、最大貯蔵酸素脱離量と最小貯蔵酸素脱離量との間の領域よりも小さい領域であってかつ三元触媒の貯蔵酸素脱離量が位置する可能性が高い貯蔵酸素脱離量存在領域を内燃機関の運転状態に応じて設定する貯蔵酸素脱離量存在領域設定手段と、前記貯蔵酸素脱離量積算手段にて積算された貯蔵酸素脱離量が前記貯蔵酸素脱離量存在領域設定手段にて設定されている貯蔵酸素脱離量存在領域から外れている場合には、前記貯蔵酸素脱離量積算手段にて積算された貯蔵酸素脱離量の値を、前記貯蔵酸素脱離量存在領域に近づけるように、あるいは前記貯蔵酸素脱離量存在領域以内とするように修正する貯蔵酸素脱離量修正手段とを備え、前記貯蔵酸素脱離量存在領域設定手段は、内燃機関の運転状態を表す状態量として、三元触媒の温度と、内燃機関の運転中に内燃機関への燃料供給を停止する燃料カット処理の有無と、三元触媒の下流で検出される空燃比とを用いることにより、三元触媒の温度、燃料カット処理有無および三元触媒の下流で検出される空燃比に対応する貯蔵酸素脱離量存在領域を設定することを特徴とする。
【００３２】
したがって、例えば、燃料カット処理がなされている状態では、三元触媒への酸素量の供給が大量であることを考慮した貯蔵酸素脱離量存在領域を設定することができるが、この時に温度に応じて貯蔵酸素脱離量存在領域の範囲を変化させることにより、適切な貯蔵酸素脱離量存在領域を設定することができる。
【００３３】
また、燃料カット処理がなされていない状態では、三元触媒の下流で検出される空燃比を用いて、前記請求項１で述べたごとく貯蔵酸素脱離量存在領域を設定することができるが、この時に温度に応じて貯蔵酸素脱離量存在領域の範囲を変化させることにより、適切な貯蔵酸素脱離量存在領域を設定することができる。
【００３４】
このように、温度に応じて貯蔵酸素脱離量存在領域の範囲を変化させることにより、適切な貯蔵酸素脱離量存在領域を設定することができる。したがって、計算上の貯蔵酸素脱離量の修正をより適切なものとできる。
【００３５】
請求項７記載の三元触媒貯蔵酸素脱離量算出装置は、請求項２、３、５または６記載の構成において、前記貯蔵酸素脱離量存在領域設定手段は、内燃機関の運転中に内燃機関への燃料供給を停止する燃料カット処理の終了直後において、三元触媒の下流において理論空燃比よりも燃料濃度が低い空燃比が継続している場合は、燃料カット処理有りに対応する貯蔵酸素脱離量存在領域を設定することを特徴とする。
【００３６】
燃料カットが終了した直後においては、貯蔵酸素脱離量の上昇が予想よりも鈍い場合がある。したがって、このような場合に対応して、燃料カット処理の終了直後において、三元触媒の下流において理論空燃比よりも燃料濃度が低い空燃比が継続している場合は、燃料カット処理有りに対応する貯蔵酸素脱離量存在領域を設定している。このことにより、計算上の貯蔵酸素脱離量の修正をより適切なものとでき、請求項２、３、５または６の効果をより顕著なものとできる。
【００３７】
請求項８記載の三元触媒貯蔵酸素脱離量算出装置は、請求項１〜７のいずれか記載の構成に加えて、三元触媒の酸素吸着能力を推定する三元触媒吸着能力推定手段を備え、前記貯蔵酸素脱離量存在領域設定手段は、内燃機関の運転状態および前記三元触媒吸着能力推定手段にて推定された三元触媒の酸素吸着能力に応じて、三元触媒における貯蔵酸素脱離量存在領域を設定することを特徴とする。
【００３８】
三元触媒の酸素吸着能力は経時により劣化する。このため、三元触媒吸着能力推定手段により三元触媒の酸素吸着能力を推定し、三元触媒における貯蔵酸素脱離量存在領域の設定に反映させる。このことにより、適切な貯蔵酸素脱離量存在領域を設定することができる。したがって、計算上の貯蔵酸素脱離量の修正をより適切なものとでき、請求項１〜７のいずれか記載の効果をより顕著なものとできる。
【００３９】
請求項９記載の三元触媒貯蔵酸素脱離量算出装置は、請求項８記載の構成において、前記三元触媒吸着能力推定手段は、三元触媒の累積使用時間に応じて、三元触媒の酸素吸着能力を推定することを特徴とする。
【００４０】
三元触媒の酸素吸着能力は経時により劣化するため、三元触媒の累積使用時間に応じて、三元触媒の酸素吸着能力を推定することができる。このようにして推定された三元触媒の酸素吸着能力を用いることで、計算上の貯蔵酸素脱離量の修正をより適切なものとでき、請求項１〜７のいずれか記載の効果をより顕著なものとできる。
【００４１】
請求項１０記載の三元触媒貯蔵酸素脱離量算出装置は、請求項１〜７のいずれか記載の構成に加えて、三元触媒の酸素吸着能力を検出する三元触媒吸着能力検出手段を備え、前記貯蔵酸素脱離量存在領域設定手段は、内燃機関の運転状態および前記三元触媒吸着能力検出手段にて検出された三元触媒の酸素吸着能力に応じて、三元触媒における貯蔵酸素脱離量存在領域を設定することを特徴とする。
【００４２】
三元触媒の酸素吸着能力は経時により劣化する。またこの劣化の程度は他の要因も作用する場合がある。このため、三元触媒吸着能力検出手段により三元触媒の酸素吸着能力を検出し、三元触媒における貯蔵酸素脱離量存在領域の設定に反映させる。このことにより、適切な貯蔵酸素脱離量存在領域を設定することができる。したがって、計算上の貯蔵酸素脱離量の修正をより適切なものとでき、請求項１〜７のいずれか記載の効果をより顕著なものとできる。
【００４３】
請求項１１記載の三元触媒貯蔵酸素脱離量算出装置は、請求項１０記載の構成において、前記三元触媒吸着能力検出手段は、三元触媒において酸素が飽和状態である時から、三元触媒の下流で検出される空燃比が理論空燃比よりも燃料濃度が濃い状態になった時までにおける三元触媒に流入する排気状態に基づいて算出される燃料濃度の過不足量の積算値に応じて、三元触媒の酸素吸着能力を検出することを特徴とする。
【００４４】
三元触媒の下流で検出される空燃比が理論空燃比よりも燃料濃度が濃い状態になった時は、三元触媒において貯蔵されている酸素量がほぼ０となったと考えられる。このため、三元触媒において酸素が飽和状態である時から、三元触媒の下流で検出される空燃比が理論空燃比よりも燃料濃度が濃い状態になった時までの期間に、三元触媒に流入する排気状態に基づいて算出される燃料濃度の過不足量の積算値は、三元触媒の最大貯蔵酸素量を示すことになる。この最大貯蔵酸素量のレベルが三元触媒の酸素吸着能力の程度、すなわち三元触媒の劣化の程度を表すことになる。
【００４５】
したがって、このように検出された三元触媒の酸素吸着能力を用いて、適切な貯蔵酸素脱離量存在領域を設定することができる。このため、計算上の貯蔵酸素脱離量の修正をより適切なものとでき、請求項１〜７のいずれか記載の効果をより顕著なものとできる。
【００４６】
請求項１２記載の三元触媒貯蔵酸素脱離量算出装置は、請求項１１記載の構成において、前記三元触媒吸着能力検出手段は、内燃機関の運転中に内燃機関への燃料供給を停止する燃料カット処理が基準時間以上継続した場合に、三元触媒において酸素が飽和状態であるとして三元触媒に流入する排気状態に基づいて算出される燃料濃度の過不足量の積算を開始することを特徴とする。
【００４７】
このように燃料カット処理が基準時間以上継続した場合には、三元触媒において酸素が飽和状態であると考えることができる。したがって、三元触媒に流入する排気状態に基づいて算出される燃料濃度の過不足量の積算を開始して、三元触媒の下流で検出される空燃比が理論空燃比よりも燃料濃度が濃い状態になった時まで燃料濃度の過不足量の積算を行えば良い。
【００４８】
このように燃料カット処理を利用して検出された三元触媒の酸素吸着能力を用いて、適切な貯蔵酸素脱離量存在領域を設定することができる。したがって、内燃機関の運転中においても、三元触媒の劣化状態を求めて、計算上の貯蔵酸素脱離量の修正をより適切なものとでき、請求項１〜７のいずれか記載の効果をより顕著なものとできる。
請求項１３記載の三元触媒貯蔵酸素脱離量算出装置は、請求項１〜１２のいずれか記載の構成において、前記貯蔵酸素脱離量積算手段は、三元触媒に流入する排気状態を表す状態量として、内燃機関への吸入空気量と三元触媒の上流で検出される空燃比とを用いることにより、三元触媒での酸素の吸着量と離脱量との収支を積算して三元触媒における貯蔵酸素脱離量を求めることを特徴とする。
ここで、貯蔵酸素脱離量を求める手法としては、例えば、内燃機関への吸入空気量と三元触媒の上流で検出される空燃比とを、三元触媒に流入する排気状態を表す状態量として用いることにより行うことができる。吸入空気量と三元触媒上流での空燃比とにより、三元触媒へ供給される酸素量や還元剤としての燃料量を求めることができる。したがって、酸素の供給による三元触媒での酸素の吸着量と、燃料による三元触媒での酸素の離脱量との収支を積算して、計算上の貯蔵酸素脱離量を求めることができ、請求項１〜１２で述べた作用効果を生じさせることができる。
【００４９】
請求項１４記載の内燃機関の空燃比制御装置は、請求項１〜１３のいずれか記載の三元触媒貯蔵酸素脱離量算出装置を備え、該三元触媒貯蔵酸素脱離量算出装置にて算出される三元触媒の貯蔵酸素脱離量が、目標貯蔵酸素脱離量となるように、内燃機関の燃焼室に供給される混合気の空燃比を制御することを特徴とする。
【００５０】
このように内燃機関の空燃比制御装置は、請求項１〜１３のいずれか記載の三元触媒貯蔵酸素脱離量算出装置を用いることで、計算上の貯蔵酸素脱離量と実際の貯蔵酸素脱離量とのずれが問題なくなる。したがって、ＨＣ，ＣＯの酸化もＮＯｘの還元も常に好適に行われるようになり、内燃機関のエミッションを良好に維持することができる。
【００５１】
【発明の実施の形態】
［実施の形態１］
図１は、上述した発明が適用されたガソリンエンジン（以下、「エンジン」と略す）４およびその空燃比制御装置の概略構成を表すブロック図である。
【００５２】
エンジン４のシリンダブロック６には燃焼室を含む第１気筒８、第２気筒１０、第３気筒１２および第４気筒１４が形成されている。各気筒８〜１４にはインテークマニホールド１６、サージタンク１８を介して吸気通路２０が接続されている。この吸気通路２０の上流側にはエアクリーナ２２が設けられており、このエアクリーナ２２を介して吸気通路２０内に外気が導入される。
【００５３】
インテークマニホールド１６には、各気筒８〜１４に対応してインジェクタ２４，２６，２８，３０がそれぞれ設けられている。このインジェクタ２４〜３０は通電制御により開閉駆動されて燃料を噴射する電磁弁であって、燃料タンク（図示略）内の燃料が燃料ポンプ（図示略）から圧送されてくる。インジェクタ２４〜３０から噴射された燃料はインテークマニホールド１６内の吸入空気と混合されて混合気となる。そしてこの混合気は、各気筒８〜１４毎に設けられた吸気バルブ（図示略）が開弁することによって開かれた吸気ポート（図示略）から各気筒８〜１４の燃焼室内へ導入される。空燃比フィードバック制御時においては、このインジェクタ２４〜３０による燃料噴射時間の長さが空燃比フィードバック補正係数ＦＡＦに基づいて調整される。また、後述する三元触媒の貯蔵酸素脱離量のフィードバック制御においても、燃料噴射時間の長さ調整により貯蔵酸素脱離量の制御が行われる。
【００５４】
吸気通路２０には吸入空気量を調節するスロットルバルブ３２がサージタンク１８の上流側に位置して設けられている。このスロットルバルブ３２は、吸気通路２０に設けられたスロットルモータ３４により開閉駆動されることにより、その開度、すなわちスロットル開度ＴＡが調節される。スロットルバルブ３２の近傍にはスロットル開度センサ３６が設けられている。このスロットル開度センサ３６はスロットル開度ＴＡを検出し、そのスロットル開度ＴＡに応じた信号を出力する。
【００５５】
また、自動車の運転室内にはアクセルペダル３８が設けられており、このアクセルペダル３８の踏込量、すなわちアクセル開度ＡＣＣＰがアクセル開度センサ４０によって検出される。そして、後述する電子制御装置（以下、「ＥＣＵ」と称する）５０はこのアクセル開度ＡＣＣＰ等に基づいてスロットルモータ３４を制御することによりスロットル開度ＴＡを運転状態に応じた開度に調節する。
【００５６】
各気筒８〜１４にはエグゾーストマニホールド６０を介して排気通路６２が接続されている。この排気通路６２には、三元触媒６３が収納された触媒コンバータ６４およびマフラ６６がそれぞれ設けられている。排気通路６２を流れる排気はこれら触媒コンバータ６４およびマフラ６６を通過して外部に排出される。なお、触媒温度センサ６７は、触媒コンバータ６４内部の三元触媒６３の温度を検出し、触媒温度Ｔｃに応じた信号を出力する。
【００５７】
本実施の形態１における三元触媒６３は混合気の空燃比がほぼ理論空燃比のときに、排気中のＨＣ，ＣＯを酸化しかつＮＯｘを還元する機能、すなわちＨＣ，ＣＯおよびＮＯｘを同時に浄化する機能を有する。更に、本実施の形態１の三元触媒６３は内部に酸素を貯蔵する機能を有し、この酸素貯蔵機能によって、例え空燃比が理論空燃比からずれたとしても排気中のＨＣ，ＣＯおよびＮＯｘを浄化することができる。この酸素の貯蔵作用は三元触媒６３内に含まれる、例えばセリウムＣｅによって行われる。
【００５８】
吸気通路２０においてエアクリーナ２２とスロットルバルブ３２との間にはエアフローメータ６８が設けられている。このエアフローメータ６８は各気筒８〜１４の燃焼室に導入される吸入空気量ＧＡを検出し、この吸入空気量ＧＡに応じた信号を出力する。
【００５９】
また、エンジン４のシリンダヘッド６ａには各気筒８〜１４に対応してそれぞれ点火プラグ７０，７２，７４，７６が設けられている。各点火プラグ７０〜７６は、イグニッションコイル７０ａ，７２ａ，７４ａ，７６ａが付属することにより、ディストリビュータを用いないダイレクトイグニッションシステムとして構成されている。各イグニッションコイル７０ａ〜７６ａは、点火時期にＥＣＵ５０内の点火駆動回路から供給される一次側電流の遮断に基づいて発生する高電圧を、直接点火プラグ７０〜７６に与えている。
【００６０】
また、触媒コンバータ６４より上流側の排気通路６２には、空燃比センサ８０が設けられている。この空燃比センサ８０は、排気の成分に現れる混合気の空燃比に応じた信号Ｖｏｘを出力する。空燃比フィードバック制御時には、この信号Ｖｏｘに基づいて空燃比の制御がなされ、燃料噴射量の増減処理により、空燃比が理論空燃比に調整される。
【００６１】
また、触媒コンバータ６４の下流側の排気通路６２には、酸素センサ８２が設けられている。この酸素センサ８２は、排気中の酸素濃度（三元触媒６３の下流の空燃比に相当する）に応じた信号Ｖｚを出力する。
【００６２】
なお、回転数センサ９０は、エンジン４のクランク軸（図示略）の回転に基づいてエンジン４の回転数ＮＥに応じた数のパルス信号を出力し、気筒判別センサ９２は気筒８〜１４を判別するためにクランク軸の回転に基づいて所定のクランク角度毎に基準信号となるパルス信号を出力する。ＥＣＵ５０はこれら回転数センサ９０および気筒判別センサ９２からの出力信号に基づいて回転数ＮＥ、気筒判別およびクランク角度の算出を行う。
【００６３】
また、シリンダブロック６にはエンジン冷却水温を検出するための水温センサ９４が設けられて、冷却水温ＴＨＷに応じた信号を出力する。また図示していない変速機にはシフトポジションセンサ９６や車速センサ９７が設けられて、シフト位置ＳＨＦＴＰあるいは車速Ｖｔに応じた信号を出力する。
【００６４】
次に本実施の形態１において空燃比制御装置の機能を果たしている制御系統の電気的構成について図２のブロック図を参照して説明する。
ＥＣＵ５０は、中央処理装置（ＣＰＵ）５０ａ、読み出し専用メモリ（以下「ＲＯＭ」と称する）５０ｂ、ランダムアクセスメモリ（以下、「ＲＡＭ」と称する）５０ｃ、およびバックアップＲＡＭ５０ｄ等を備え、これら各部５０ａ〜５０ｄと、入力回路５０ｅおよび出力回路５０ｆ等とを双方向バス５０ｇにより接続してなる論理演算回路として構成されている。ＲＯＭ５０ｂには後述する空燃比フィードバック制御や貯蔵酸素脱離量ＯＳＣ制御等の各種制御プログラムや各種データが予め記憶されている。ＲＡＭ５０ｃには各種制御処理におけるＣＰＵ５０ａの演算結果等が一時的に記憶される。
【００６５】
また、入力回路５０ｅはバッファ、波形整形回路およびＡ／Ｄ変換器等を含んだ入力インターフェースとして構成されており、前記スロットル開度センサ３６、アクセル開度センサ４０、触媒温度センサ６７、エアフローメータ６８、空燃比センサ８０、酸素センサ８２、回転数センサ９０、気筒判別センサ９２、水温センサ９４、シフトポジションセンサ９６、車速センサ９７、各イグニッションコイル７０ａ〜７６ａの点火確認信号ＩＧｆのライン等がそれぞれ接続されている。各種センサ３６，４０，６７，６８，８０，８２，９０，９２，９４，９６，９７等の出力信号は、デジタル信号として入力回路５０ｅから双方向バス５０ｇを介してＣＰＵ５０ａに読み込まれる。
【００６６】
一方、出力回路５０ｆは各種駆動回路等を有しており、前記インジェクタ２４〜３０、イグニッションコイル７０ａ〜７６ａ、スロットルモータ３４等がそれぞれ接続されている。ＥＣＵ５０は各種センサ３６，４０，６７，６８，８０，８２，９０，９２，９４，９６，９７等からの出力信号に基づいて演算処理を行い、インジェクタ２４〜３０、イグニッションコイル７０ａ〜７６ａ、スロットルモータ３４等を制御する。
【００６７】
例えば、ＥＣＵ５０はエアフローメータ６８により検出される吸入空気量ＧＡ、回転数センサ９０により検出される回転数ＮＥ等に基づいて、インジェクタ２４〜３０による燃料噴射量や燃料噴射時期、あるいはイグニッションコイル７０ａ〜７６ａによる点火時期を制御している。そして空燃比センサ８０により検出される空燃比に基づいて、後述するごとく、インジェクタ２４〜３０による燃料噴射量の補正を実行して混合気の空燃比を精密に制御している。更に、触媒コンバータ６４内の三元触媒６３における貯蔵酸素脱離量ＯＳＣを目標貯蔵酸素脱離量ＯＳＣＴＧとするために、空燃比センサ８０や酸素センサ８２の検出値、その他のエンジン運転状態に応じて、インジェクタ２４〜３０による燃料噴射量の補正を実行している。
【００６８】
ここで、三元触媒６３の上流側の空燃比センサ８０は、図３（Ａ）に示すごとく空燃比Ａ／Ｆに応じた電流Ｉを発生する。この電流Ｉは電圧信号Ｖｏｘに変換されて入力回路５０ｅ内のＡＤ変換器を介してＥＣＵ５０に入力される。したがって空燃比センサ８０の出力信号から三元触媒６３の上流における空燃比Ａ／Ｆを知ることができる。
【００６９】
これに対して触媒コンバータ６４の下流側の酸素センサ８２は、図３（Ｂ）に示されるように理論空燃比において急変する出力電圧信号Ｖｚを発生する。すなわち、酸素センサ８２は空燃比Ａ／Ｆがリーン側では０．１Ｖ程度の出力電圧Ｖを発生し、空燃比Ａ／Ｆがリッチ側では０．９Ｖ程度の出力電圧を発生する。したがって、この出力電圧信号Ｖｚの程度により、三元触媒６３の下流の空燃比Ａ／Ｆの状態が判定できる。なお、本実施の形態１では、酸素センサ８２の電圧信号Ｖｚが電圧判定値ＶＳよりも低いときには、三元触媒６３の下流側の空燃比Ａ／Ｆはリーンであると判断し、酸素センサ８２の電圧信号Ｖｚが電圧判定値ＶＳ以上のときに三元触媒６３の下流側の空燃比はリッチであると判断する。
【００７０】
次に、本実施の形態１においてＥＣＵ５０により実行される燃料噴射量制御処理について、図４のフローチャートに基づいて説明する。本処理は予め設定されているクランク角毎に周期的に実行される処理である。フローチャートにおける各処理に対応するステップを「Ｓ〜」で表す。
【００７１】
燃料噴射量制御処理が開始されると、まず、アクセル開度センサ４０から得られているアクセル開度ＡＣＣＰ、回転数センサ９０から得られているエンジン回転数ＮＥ、エアフローメータ６８から得られている吸入空気量ＧＡ、水温センサ９４の信号から得られている冷却水温度ＴＨＷ、空燃比センサ８０から得られている出力電圧値Ｖｏｘ等の必要なデータをＲＡＭ５０ｃの作業領域に読み込む（Ｓ１１０）。
【００７２】
次に、燃料カット実行フラグＦｃａが「ＯＦＦ」に設定されているか否かが判定される（Ｓ１２０）。
ここで、燃料カット実行フラグＦｃａの設定を行う燃料カット処理は図５のフローチャートに示すごとくであり、一定時間周期で実行されている。すなわち、燃料カット処理では、まず、燃料カット条件が成立したか否かが判定される（Ｓ２１０）。燃料カット条件が成立していれば（Ｓ２１０で「ＹＥＳ」）、燃料カット実行フラグＦｃａに「ＯＮ」が設定され（Ｓ２２０）、成立していなければ（Ｓ２１０で「ＮＯ」）、燃料カット実行フラグＦｃａに「ＯＦＦ」が設定される（Ｓ２３０）。
【００７３】
ここで燃料カット条件とは、例えば、アクセル開度センサ４０から検出されるアクセル開度ＡＣＣＰや車速センサ９７から検出される車速Ｖｔに基づいて車両が燃料カットが必要な減速状態となった状態、回転数センサ９０から検出されるエンジン回転数ＮＥが燃料カット回転数より高くなった状態、あるいは車速Ｖｔが規制最高速度より高くなった状態等である。
【００７４】
図４の説明に戻り、このように設定されている燃料カット実行フラグＦｃａが「ＯＮ」であった場合には（Ｓ１２０で「ＮＯ」）、燃料噴射量Ｑとして「０」を設定して（Ｓ１３０）、一旦燃料噴射量制御処理を終了する。したがって、各インジェクタ２４〜３０からの燃料噴射は停止する。同時に、図示していない点火制御処理においても点火プラグ７０〜７６に対する高電圧の給電が停止する。
【００７５】
一方、Ｆｃａ＝「ＯＦＦ」である場合（Ｓ１２０で「ＹＥＳ」）、次に、予めＲＯＭ５０ｂに設定されている図６のマップを用いて、吸入空気量ＧＡとエンジン回転数ＮＥとから、理論空燃比基本燃料噴射量ＱＢＳが算出される（Ｓ１４０）。
【００７６】
次に、高負荷増量ＯＴＰ算出処理（Ｓ１５０）が行われる。この高負荷増量ＯＴＰ算出処理について図７のフローチャートに基づいて説明する。高負荷増量ＯＴＰ算出処理では、まずアクセル開度ＡＣＣＰが高負荷増量判定値ＫＯＴＰＡＣを越えているか否かが判定される（Ｓ３１０）。
【００７７】
ＡＣＣＰ≦ＫＯＴＰＡＣであれば（Ｓ３１０で「ＮＯ」）、高負荷増量ＯＴＰには「０」が設定される（Ｓ３２０）。すなわち燃料の増量補正は行われない。こうして、高負荷増量ＯＴＰ算出処理を一旦出る。
【００７８】
また、ＡＣＣＰ＞ＫＯＴＰＡＣであれば（Ｓ３１０で「ＹＥＳ」）、高負荷増量ＯＴＰには値Ｍ（例えば、１＞Ｍ＞０）が設定される（Ｓ３３０）。すなわち燃料の増量補正の実行が設定される。この増量補正は、高負荷時に触媒コンバータ６４が過熱するのを防止するためになされる。
【００７９】
図４に戻り、ステップＳ１５０にて高負荷増量ＯＴＰが算出された後に、次に、空燃比フィードバック条件が成立しているか否かが判定される（Ｓ１６０）。例えば、「（１）始動時でない。（２）空燃比センサ８０は活性化が完了している。（３）高負荷増量ＯＴＰの値が０である。（４）その他の必要な条件」のすべてが成立しているか否かが判定される。
【００８０】
空燃比フィードバック条件が成立していれば（Ｓ１６０で「ＹＥＳ」）、空燃比フィードバック係数ＦＡＦとその学習値ＫＧの算出が行われる（Ｓ１７０）。空燃比フィードバック係数ＦＡＦは空燃比センサ８０の出力に基づいて算出される。また、学習値ＫＧは空燃比フィードバック係数ＦＡＦの平均値における、中心値１．０からのずれを記憶するものである。これらの値を用いた空燃比フィードバック制御技術は特開平６−１０７３６号公報などに示されているごとく種々の手法が知られている。
【００８１】
一方、空燃比フィードバック条件が成立していなければ（Ｓ１６０で「ＮＯ」）、空燃比フィードバック係数ＦＡＦには１．０が設定される（Ｓ１８０）。
ステップＳ１７０またはＳ１８０の次に、燃料噴射量Ｑが次式１のごとく求められる（Ｓ１９０）。
【００８２】
【数１】
Ｑ  ←  ＱＢＳ{1+ＯＴＰ+(ＦＡＦ-１.０)+(ＫＧ-１.０)+ＫＣ}α + β…  ［式１］
ここで、α，βはエンジン４の種類や制御の内容に応じて適宜設定される係数である。また、貯蔵酸素脱離量フィードバック係数ＫＣは後述する貯蔵酸素脱離量フィードバック係数ＫＣ算出処理により算出される係数である。
【００８３】
こうして一旦燃料噴射量制御処理を終了する。
次に貯蔵酸素脱離量算出処理を図８に示す。本処理は予め設定されている時間周期で繰り返し実行される。
【００８４】
貯蔵酸素脱離量算出処理が開始されると、まず、エアフローメータ６８にて検出されている吸入空気量ＧＡをＲＡＭ５０ｃの作業領域に読み込む（Ｓ４００）。次に三元触媒６３の上流側の空燃比センサ８０にて検出されている上流側空燃比Ａ／ＦをＲＡＭ５０ｃの作業領域に読み込む（Ｓ４１０）。次に触媒コンバータ６４の下流側の酸素センサ８２にて検出されている下流側空燃比ｓｕｂＡ／ＦをＲＡＭ５０ｃの作業領域に読み込む（Ｓ４２０）。次に触媒温度センサ６７にて検出されている触媒温度ＴｃをＲＡＭ５０ｃの作業領域に読み込む（Ｓ４３０）。
【００８５】
そして、三元触媒６３の累積使用時間を求めるためのカウント値ＴＤが１だけインクリメントされる（Ｓ４４０）。なお、カウント値ＴＤは、ＥＣＵ５０に対する電源オフ時においてもバックアップＲＡＭ５０ｄに記憶されていることにより、その値が維持されている。
【００８６】
次に、今回のエンジン４の始動後一定時間経過したか否かが判定される（Ｓ４５０）。エンジン４の始動後一定時間経過していない場合は（Ｓ４５０で「ＮＯ」）、ＲＡＭ５０ｃの作業領域に設定されている計算上の貯蔵酸素脱離量ＯＳＣがクリアされて（Ｓ４６０）、一旦、貯蔵酸素脱離量算出処理を終了する。
【００８７】
エンジン４の始動後一定時間経過するまでは、上述した処理（Ｓ４００〜Ｓ４６０）が繰り返される。
そして、エンジン４の始動後一定時間経過すると（Ｓ４５０で「ＹＥＳ」）、次に触媒温度Ｔｃが使用最低温度Ｔｃｏ（例えば１００℃）より高くなったか否かが判定される（Ｓ４７０）。Ｔｃ≦Ｔｃｏであれば（Ｓ４７０で「ＮＯ」）、三元触媒６３はまだ十分に活性化していないので、貯蔵酸素脱離量ＯＳＣがクリアされて（Ｓ４６０）、一旦、貯蔵酸素脱離量算出処理を終了する。
【００８８】
エンジン４の排気により、Ｔｃ＞Ｔｃｏとなれば（Ｓ４７０で「ＹＥＳ」）、三元触媒６３は活性化しているので、次に貯蔵酸素脱離量ＯＳＣの積算処理（Ｓ５００）が実行される。
【００８９】
貯蔵酸素脱離量ＯＳＣの積算処理の詳細を図９のフローチャートに示す。本処理が開始されると、まず上流側空燃比Ａ／Ｆが理論空燃比であるか否かが判定される（Ｓ５１０）。上流側空燃比Ａ／Ｆが理論空燃比である場合は（Ｓ５１０で「ＹＥＳ」）、このまま積算処理を出る。
【００９０】
上流側空燃比Ａ／Ｆが理論空燃比でない場合は（Ｓ５１０で「ＮＯ」）、次に上流側空燃比Ａ／Ｆがリーンであるか否かが判定される（Ｓ５２０）。上流側空燃比Ａ／Ｆがリーンであるときには（Ｓ５２０で「ＹＥＳ」）、次式２から貯蔵酸素脱離量ＯＳＣが算出される（Ｓ５３０）。
【００９１】
【数２】
ＯＳＣ  ←  ＯＳＣ−｛ＫＯ２・ＧＡ・（ΔＡ／Ｆ）／（Ａ／Ｆ）｝・Δｔ…  ［式２］
ここで、右辺のＯＳＣは前回の制御周期における貯蔵酸素脱離量ＯＳＣを、ＫＯ２は空気中の酸素濃度を、ΔＡ／Ｆは空燃比偏差（＝上流側空燃比Ａ／Ｆ−理論空燃比）を、Δｔは本積算処理の制御周期を表している。
【００９２】
上記式２の右辺の内で、次式３で示す項は、時間Δｔ当たりの酸素吸着量を表している。
【００９３】
【数３】
｛ＫＯ２・ＧＡ・（ΔＡ／Ｆ）／（Ａ／Ｆ）｝・Δｔ      …  ［式３］
上流側空燃比Ａ／Ｆがリーンのときには三元触媒６３には酸素が吸着されるのでこのときには上記式３が用いられる。この式においてＫＯ２・ＧＡはエンジン４に単位時間当りに供給される酸素量を示しており、（ΔＡ／Ｆ）／（Ａ／Ｆ）は燃焼した際に余剰となる酸素の割合を示している。したがって｛ＫＯ２・ＧＡ・（ΔＡ／Ｆ）／（Ａ／Ｆ）｝・Δｔは、時間Δｔ当りの余剰酸素量を表している。ここでリーンであるのでΔＡ／Ｆは正である。このような余剰酸素が存在すると、この余剰酸素は直ちに三元触媒６３に吸着されるものと考えられる。したがって、時間Δｔ当りの吸着量は余剰酸素量と同一量となり、時間Δｔ当りの吸着量は上記式３のごとく表されることになる。
【００９４】
このように上流側空燃比Ａ／Ｆがリーンのときには時間Δｔ当りに上記式３の余剰酸素量が貯蔵されることになる。このため、最大貯蔵酸素量状態にある三元触媒からの酸素の脱離量を示す値である貯蔵酸素脱離量ＯＳＣは逆に時間Δｔ当り、上記式３の余剰酸素量だけ減少することになる。したがって貯蔵酸素脱離量ＯＳＣの積算は前記式２のごとく表されることになる。
【００９５】
一方、ステップＳ５２０にて、上流側空燃比Ａ／Ｆがリーンでない、すなわちここではリッチであると判定されたときには（Ｓ５２０で「ＮＯ」）、次式４から貯蔵酸素脱離量ＯＳＣが算出される（Ｓ５４０）。
【００９６】
【数４】
ＯＳＣ
←  ＯＳＣ−｛ＫＯ２・ＧＡ・ｋ・（ΔＡ／Ｆ）／（Ａ／Ｆ）｝・Δｔ…  ［式４］
ここでｋは三元触媒６３への酸素の離脱速度と吸着速度との比（離脱速度／吸着速度）を表している。他の記号は前記式２にて説明したごとくである。
【００９７】
また、上記式４の右辺の内で、次式５で示す項は、時間Δｔ当たりの酸素脱離量を表している。
【００９８】
【数５】
｛ＫＯ２・ＧＡ・ｋ・（ΔＡ／Ｆ）／（Ａ／Ｆ）｝・Δｔ  …  ［式５］
上流側空燃比Ａ／Ｆがリッチのときには三元触媒６３から酸素が脱離するのでこのときには上記式５が用いられる。この式５においてもＫＯ２・ＧＡはエンジン４に単位時間当りに供給される酸素量を示している。これに対しこの式５において（ΔＡ／Ｆ）／（Ａ／Ｆ）は燃焼した際に不足する酸素の割合を示す。このため｛ＫＯ２・ＧＡ・（ΔＡ／Ｆ）／（Ａ／Ｆ）｝・Δｔは時間Δｔ当りの不足酸素量を表している。ここでΔＡ／Ｆは負である。
【００９９】
燃焼する際に酸素が不足するとこの不足酸素量分だけ未燃ＨＣ，ＣＯが発生し、この未燃ＨＣ，ＣＯの発生量に比例した量の酸素、すなわち不足酸素量に比例した量の酸素が三元触媒６３から脱離される。ところが三元触媒６３からの酸素の脱離速度は三元触媒６３への酸素の吸着速度よりも遅い。このため三元触媒６３から脱離する酸素量は吸着速度に対して脱離速度が遅い分だけ、｛ＫＯ２・ＧＡ・（ΔＡ／Ｆ）／（Ａ／Ｆ）｝・Δｔで示した不足酸素量よりも少なくなる。したがって脱離速度と吸着速度との速度比をｋとすると時間Δｔ当りの脱離量は不足酸素量に速度比ｋを乗算した量となる。したがって、時間Δｔ当りの脱離量は前記式５のごとく表されることになる。
【０１００】
このように上流側空燃比Ａ／Ｆがリッチのときには、時間Δｔ当り不足酸素量・速度比ｋが脱離することになり貯蔵酸素脱離量ＯＳＣは時間Δｔ当り不足酸素量・速度比ｋだけ増大することになる。したがってΔＡ／Ｆ＜０であることを考えると貯蔵酸素脱離量ＯＳＣは前記式４で表されることになる。
【０１０１】
こうして、貯蔵酸素脱離量ＯＳＣの積算（Ｓ５３０，Ｓ５４０）が実行された後は積算処理を出る。
図８に戻り、ステップＳ５００の貯蔵酸素脱離量ＯＳＣ積算処理が終了すると、次に貯蔵酸素脱離量ＯＳＣ修正処理（Ｓ６００）が実行される。貯蔵酸素脱離量ＯＳＣ修正処理の詳細を図１０のフローチャートに示す。
【０１０２】
貯蔵酸素脱離量ＯＳＣ修正処理が開始されると、まず、長時間（例えば、３秒以上）、燃料カット実行フラグＦｃａ＝「ＯＮ」となっているか否かが判定される（Ｓ６１０）。
【０１０３】
このＦｃａ＝「ＯＮ」の継続時間は、例えば、Ｆｃａ＝「ＯＮ」である場合にカウントアップされ、Ｆｃａ＝「ＯＦＦ」である場合にクリアされる経時カウンタにより測定される計時データを用いる。これ以外に、Ｆｃａ＝「ＯＮ」が継続している間の吸入空気量ＧＡの積算値が基準積算値よりも大きい場合を、燃料カット実行フラグＦｃａ＝「ＯＮ」となっている時間が長時間継続していると判断しても良い。
【０１０４】
長時間、Ｆｃａ＝「ＯＮ」である場合（Ｓ６１０で「ＹＥＳ」）には、貯蔵酸素脱離量存在領域上限値ＯＳＣＵＬと貯蔵酸素脱離量存在領域下限値ＯＳＣＤＬとを、ＲＯＭ５０ｂ内に格納されている図１３に示すマップＣから触媒温度Ｔｃに基づいて算出する（Ｓ６３０）。このマップＣは、Ｆｃａ＝「ＯＮ」の状態が長時間継続した場合に、貯蔵酸素脱離量存在領域、すなわち三元触媒６３の貯蔵酸素脱離量ＯＳＣが位置する可能性の高い領域を実験的に求めて表したものである。貯蔵酸素脱離量存在領域上限値ＯＳＣＵＬは貯蔵酸素脱離量存在領域の上限の位置を示し、貯蔵酸素脱離量存在領域下限値ＯＳＣＤＬは貯蔵酸素脱離量存在領域の下限の位置を示す。
【０１０５】
なお、図１３で示すごとく、貯蔵酸素脱離量存在領域上限値ＯＳＣＵＬと貯蔵酸素脱離量存在領域下限値ＯＳＣＤＬとの大きさは、目標貯蔵酸素脱離量ＯＳＣＴＧと貯蔵酸素脱離量ＯＳＣとの差分（ＯＳＣＴＧ−ＯＳＣ）、すなわち目標貯蔵酸素脱離量ＯＳＣＴＧからの差で表されている。このため、図１３のグラフでは、貯蔵酸素脱離量存在領域上限値ＯＳＣＵＬは貯蔵酸素脱離量存在領域下限値ＯＳＣＤＬよりも下に存在する。図１２に示すマップＡ，Ｂも同じである。
【０１０６】
このマップＣでは、貯蔵酸素脱離量存在領域上限値ＯＳＣＵＬおよび貯蔵酸素脱離量存在領域下限値ＯＳＣＤＬは共に正の値であり、触媒温度Ｔｃが高くなるほど共に大きくなる傾向にある。これは、燃料カットの状態が長時間継続した場合には、三元触媒６３は酸素量の飽和あるいは飽和に近づいており、貯蔵酸素脱離量ＯＳＣは非常に小さくなっているからである。
【０１０７】
なお、マップＣにおいて、貯蔵酸素脱離量存在領域上限値ＯＳＣＵＬと貯蔵酸素脱離量存在領域下限値ＯＳＣＤＬとの間の貯蔵酸素脱離量存在領域は、最大貯蔵酸素脱離量（ＯＳＣ＝ＯＳＣｍａｘ）と最小貯蔵酸素脱離量（ＯＳＣ＝０）との間の領域よりも小さくかつその領域の内側に設定されている。マップＣでは、貯蔵酸素脱離量存在領域下限値ＯＳＣＤＬは最小貯蔵酸素脱離量（ＯＳＣ＝０）の位置に一致するように設定されている。これ以外の貯蔵酸素脱離量存在領域下限値ＯＳＣＤＬの位置として、最小貯蔵酸素脱離量（ＯＳＣ＝０）の位置よりも内側に、すなわち図１３においては最小貯蔵酸素脱離量（ＯＳＣ＝０）の位置より下に設定しても良い。
【０１０８】
一方、Ｆｃａ＝「ＯＦＦ」の場合も含めて長時間、Ｆｃａ＝「ＯＮ」でない場合（Ｓ６１０で「ＮＯ」）には、下流側空燃比ｓｕｂＡ／Ｆがリッチか否かが判定される（Ｓ６２０）。ｓｕｂＡ／Ｆ＝リッチであれば（Ｓ６２０で「ＹＥＳ」）、貯蔵酸素脱離量存在領域上限値ＯＳＣＵＬと貯蔵酸素脱離量存在領域下限値ＯＳＣＤＬとを、ＲＯＭ５０ｂ内に格納されている図１２に示すマップＡから触媒温度Ｔｃに基づいて算出する（Ｓ６４０）。このマップＡは、Ｆｃａ＝「ＯＦＦ」の場合も含めた長時間、Ｆｃａ＝「ＯＮ」でない場合で、かつ三元触媒６３の下流がリッチである場合の貯蔵酸素脱離量存在領域を実験的に求めて表したものである。マップＡでは、貯蔵酸素脱離量存在領域上限値ＯＳＣＵＬは負の値であり、貯蔵酸素脱離量存在領域下限値ＯＳＣＤＬは正の値である。そして、触媒温度Ｔｃが高くなるほど、貯蔵酸素脱離量存在領域上限値ＯＳＣＵＬは小さくなり、貯蔵酸素脱離量存在領域下限値ＯＳＣＤＬは大きくなる傾向にある。
【０１０９】
また、貯蔵酸素脱離量存在領域上限値ＯＳＣＵＬは最大貯蔵酸素脱離量（ＯＳＣ＝ＯＳＣｍａｘ）に一致しているが、貯蔵酸素脱離量存在領域下限値ＯＳＣＤＬは０に近い。これは、長時間の燃料カットがなされていない状態で下流側空燃比ｓｕｂＡ／Ｆがリッチである場合には、三元触媒６３は酸素量の飽和状態からかなり離れており、貯蔵酸素脱離量ＯＳＣはかなり大きくなっているからである。
【０１１０】
なお、マップＡにおいて、貯蔵酸素脱離量存在領域上限値ＯＳＣＵＬと貯蔵酸素脱離量存在領域下限値ＯＳＣＤＬとの間の貯蔵酸素脱離量存在領域は、最大貯蔵酸素脱離量（ＯＳＣ＝ＯＳＣｍａｘ）と最小貯蔵酸素脱離量（ＯＳＣ＝０）との間の領域よりも小さくかつその領域の内側に設定されている。マップＡでは、上述したごとく貯蔵酸素脱離量存在領域上限値ＯＳＣＵＬの位置は最大貯蔵酸素脱離量（ＯＳＣ＝ＯＳＣｍａｘ）の位置に一致している。これ以外の貯蔵酸素脱離量存在領域上限値ＯＳＣＵＬの位置としては、最大貯蔵酸素脱離量（ＯＳＣ＝ＯＳＣｍａｘ）の内側、すなわち図１２では、最大貯蔵酸素脱離量（ＯＳＣ＝ＯＳＣｍａｘ）より上に配置しても良い。
【０１１１】
また、ｓｕｂＡ／Ｆ＝リーンであれば（Ｓ６２０で「ＮＯ」）、貯蔵酸素脱離量存在領域上限値ＯＳＣＵＬと貯蔵酸素脱離量存在領域下限値ＯＳＣＤＬとを、ＲＯＭ５０ｂ内に格納されている図１２に示すマップＢから触媒温度Ｔｃに基づいて算出する（Ｓ６５０）。このマップＢは、Ｆｃａ＝「ＯＦＦ」の場合も含めた長時間、Ｆｃａ＝「ＯＮ」でない場合で、かつ三元触媒６３の下流がリーンである場合の貯蔵酸素脱離量存在領域を実験的に求めて表したものである。マップＢでは、貯蔵酸素脱離量存在領域上限値ＯＳＣＵＬは負の値であり、貯蔵酸素脱離量存在領域下限値ＯＳＣＤＬは正の値である。そして、マップＡに比較して全体的に貯蔵酸素脱離量存在領域上限値ＯＳＣＵＬおよび貯蔵酸素脱離量存在領域下限値ＯＳＣＤＬは共に大きく設定されている。そして、触媒温度Ｔｃが高くなるほど、貯蔵酸素脱離量存在領域上限値ＯＳＣＵＬは小さくなり、貯蔵酸素脱離量存在領域下限値ＯＳＣＤＬは大きくなる傾向にある。
【０１１２】
また、貯蔵酸素脱離量存在領域上限値ＯＳＣＵＬは０に近いが、貯蔵酸素脱離量存在領域下限値ＯＳＣＤＬは最小貯蔵酸素脱離量（ＯＳＣ＝０）に一致している。これは、長時間の燃料カットがなされていない状態で下流側空燃比ｓｕｂＡ／Ｆがリーンである場合には、三元触媒６３は酸素量の飽和状態の方に近づいており、貯蔵酸素脱離量ＯＳＣはかなり小さくなっているからである。
【０１１３】
なお、マップＢにおいて、貯蔵酸素脱離量存在領域上限値ＯＳＣＵＬと貯蔵酸素脱離量存在領域下限値ＯＳＣＤＬとの間の貯蔵酸素脱離量存在領域は、最大貯蔵酸素脱離量（ＯＳＣ＝ＯＳＣｍａｘ）と最小貯蔵酸素脱離量（ＯＳＣ＝０）との間の領域よりも小さくかつその領域の内側に設定されている。マップＢでは、上述したごとく貯蔵酸素脱離量存在領域下限値ＯＳＣＤＬの位置は最小貯蔵酸素脱離量（ＯＳＣ＝０）の位置に一致している。これ以外の貯蔵酸素脱離量存在領域下限値ＯＳＣＤＬの位置としては、最小貯蔵酸素脱離量（ＯＳＣ＝０）の内側、図１２では最小貯蔵酸素脱離量（ＯＳＣ＝０）の位置よりも下側に配置しても良い。
【０１１４】
ステップＳ６３０〜Ｓ６５０のいずれかの処理の次に、ＲＯＭ５０ｂに記憶された図１５に示すマップから、前述したカウント値ＴＤに基づいて、劣化係数ＤＫを算出する（Ｓ６５２）。この劣化係数ＤＫは、三元触媒６３の劣化の程度を表す値である。図１５から判るように、劣化係数ＤＫは、時間の経過とともに１．０から次第に０側に減少して行く値である。なお図１５のマップは実験的に求められているものである。
【０１１５】
次に、貯蔵酸素脱離量存在領域上限値ＯＳＣＵＬを劣化係数ＤＫにて次式６に示すごとく補正する（Ｓ６５４）。
【０１１６】
【数６】
ＯＳＣＵＬ  ←  ＯＳＣＵＬ・ＤＫ      …  ［式６］
同じく、貯蔵酸素脱離量存在領域下限値ＯＳＣＤＬを劣化係数ＤＫにて次式７に示すごとく補正する（Ｓ６５６）。
【０１１７】
【数７】
ＯＳＣＤＬ  ←  ＯＳＣＤＬ・ＤＫ      …  ［式７］
次に、目標貯蔵酸素脱離量ＯＳＣＴＧの算出処理（Ｓ６６０）が行われる。この目標貯蔵酸素脱離量ＯＳＣＴＧ算出処理の詳細を図１１のフローチャートに示す。
【０１１８】
目標貯蔵酸素脱離量ＯＳＣＴＧ算出処理が開始されると、まず最大貯蔵酸素脱離量ＯＳＣｍａｘが次式８に示すごとく算出される（Ｓ６６２）。
【０１１９】
【数８】
ＯＳＣｍａｘ  ←  Ｇ（Ｔｃ）・ＤＫ    …  ［式８］
ここで、Ｇ（Ｔｃ）は、三元触媒６３が未使用の状態の時の最大貯蔵酸素脱離量を表し、ＲＯＭ５０ｂに記憶されている図１４のマップにより触媒温度Ｔｃに基づいて設定される。このマップは実験的に求められており、触媒温度Ｔｃが高くなるほど最大貯蔵酸素脱離量Ｇ（Ｔｃ）が高くなる傾向にある。
【０１２０】
前記式８では、この最大貯蔵酸素脱離量Ｇ（Ｔｃ）と前述した図１５に表した劣化係数ＤＫとの積を求めることにより、現在の最大貯蔵酸素脱離量ＯＳＣｍａｘを求めている。
【０１２１】
そして、次に次式９に示すごとく、目標貯蔵酸素脱離量ＯＳＣＴＧが算出される（Ｓ６６４）。
【０１２２】
【数９】
ＯＳＣＴＧ  ←  ＯＳＣｍａｘ／２      …  ［式９］
このように、最大貯蔵酸素脱離量ＯＳＣｍａｘの半分の値を目標貯蔵酸素脱離量ＯＳＣＴＧとして設定することにより、上流側空燃比Ａ／Ｆが理論空燃比に対してリーン側とリッチ側とのいずれに振れても、排気中の有害成分を十分に浄化できるようにしている。
【０１２３】
図１０に戻り、次に、ステップＳ６５４，Ｓ６５６，Ｓ６６０にて求めた貯蔵酸素脱離量存在領域上限値ＯＳＣＵＬ、貯蔵酸素脱離量存在領域下限値ＯＳＣＤＬおよび目標貯蔵酸素脱離量ＯＳＣＴＧを用いて、貯蔵酸素脱離量ＯＳＣの修正処理が行われる。
【０１２４】
すなわち、まず、次式１０に示す関係が満足されているか否かが判定される（Ｓ６７０）。
【０１２５】
【数１０】
ＯＳＣ  ≦  ＯＳＣＴＧ  −  ＯＳＣＵＬ    …  ［式１０］
本関係は、貯蔵酸素脱離量ＯＳＣ積算処理（Ｓ５００）にて算出された貯蔵酸素脱離量ＯＳＣが貯蔵酸素脱離量存在領域の上限位置以内に存在する状態を表している。
【０１２６】
前記式１０の関係が満足されている場合（Ｓ６７０で「ＹＥＳ」）には、次に、次式１１に示す関係が満足されているか否かが判定される（Ｓ６８０）。
【０１２７】
【数１１】
ＯＳＣ  ≧  ＯＳＣＴＧ  −  ＯＳＣＤＬ    …  ［式１１］
本関係は、貯蔵酸素脱離量ＯＳＣ積算処理（Ｓ５００）にて算出された貯蔵酸素脱離量ＯＳＣが貯蔵酸素脱離量存在領域の下限位置以内に存在する状態を表している。
【０１２８】
前記式１１の関係が満足されている場合（Ｓ６８０で「ＹＥＳ」）には、貯蔵酸素脱離量ＯＳＣは貯蔵酸素脱離量存在領域以内に存在すると判断できるため、このまま、貯蔵酸素脱離量ＯＳＣ修正処理を出る。
【０１２９】
前記式１０の関係が満足されていない場合（Ｓ６７０で「ＮＯ」）には、次式１２に示すごとく、貯蔵酸素脱離量ＯＳＣが修正される（Ｓ６９０）。
【０１３０】
【数１２】
ＯＳＣ  ←  ＯＳＣＴＧ  −  ＯＳＣＵＬ    …  ［式１２］
すなわち、貯蔵酸素脱離量ＯＳＣが貯蔵酸素脱離量存在領域よりも上方へ外れている場合には、貯蔵酸素脱離量ＯＳＣには貯蔵酸素脱離量存在領域の上限の値が設定される。そして貯蔵酸素脱離量ＯＳＣ修正処理を出る。
【０１３１】
また、前記式１１の関係が満足されていない場合（Ｓ６８０で「ＮＯ」）には、次式１３に示すごとく、貯蔵酸素脱離量ＯＳＣが修正される（Ｓ７００）。
【０１３２】
【数１３】
ＯＳＣ  ←  ＯＳＣＴＧ  −  ＯＳＣＤＬ    …  ［式１３］
すなわち、貯蔵酸素脱離量ＯＳＣが貯蔵酸素脱離量存在領域よりも下方へ外れている場合には、貯蔵酸素脱離量ＯＳＣには貯蔵酸素脱離量存在領域の下限の値が設定される。そして貯蔵酸素脱離量ＯＳＣ修正処理を出る。
【０１３３】
このようにして貯蔵酸素脱離量ＯＳＣ修正処理が終了すると、貯蔵酸素脱離量算出処理は一旦終了する。
このようにして、算出される貯蔵酸素脱離量ＯＳＣの値に基づいて行われる貯蔵酸素脱離量ＯＳＣのフィードバック制御を、図１６のフローチャートに基づいて説明する。図１６は、燃料噴射量Ｑを求めるための前記式１において用いられる貯蔵酸素脱離量フィードバック係数ＫＣを算出する処理のフローチャートを示している。本処理は予め設定されているクランク角毎に周期的に実行される処理である。
【０１３４】
貯蔵酸素脱離量フィードバック係数ＫＣ算出処理が開始されると、まず、図８の貯蔵酸素脱離量算出処理にて得られている貯蔵酸素脱離量ＯＳＣが図１１の処理にて得られている目標貯蔵酸素脱離量ＯＳＣＴＧより小さいか否かが判定される（Ｓ８１０）。ＯＳＣ≧ＯＳＣＴＧであれば（Ｓ８１０で「ＮＯ」）、次に貯蔵酸素脱離量ＯＳＣが目標貯蔵酸素脱離量ＯＳＣＴＧより大きいか否かが判定される（Ｓ８２０）。ＯＳＣ≦ＯＳＣＴＧであれば（Ｓ８２０で「ＮＯ」）、ＯＳＣ＝ＯＳＣＴＧであるので、貯蔵酸素脱離量フィードバック係数ＫＣには０が設定されて（Ｓ８３０）、一旦処理を終了する。
【０１３５】
ＯＳＣ＜ＯＳＣＴＧであれば（Ｓ８１０で「ＹＥＳ」）、貯蔵酸素脱離量フィードバック係数ＫＣには定数ＫＲ（例えば、１＞ＫＲ＞０）が設定されて（Ｓ８４０）、一旦処理を終了する。このことより、図４のステップＳ１９０では燃料噴射量Ｑが増量されて、上流側空燃比Ａ／Ｆは小さくなる方向、すなわちリッチ方向へ補正され、三元触媒６３の貯蔵酸素脱離量ＯＳＣが増加する方向へ調整される。
【０１３６】
ＯＳＣ＞ＯＳＣＴＧであれば（Ｓ８２０で「ＹＥＳ」）、貯蔵酸素脱離量フィードバック係数ＫＣには定数ＫＬ（例えば、０＞ＫＬ＞−１）が設定されて（Ｓ８５０）、一旦処理を終了する。このことより、図４のステップＳ１９０では燃料噴射量Ｑが減量されて、上流側空燃比Ａ／Ｆは大きくなる方向、すなわちリーン方向へ補正され、三元触媒６３の貯蔵酸素脱離量ＯＳＣが減少する方向へ調整される。
【０１３７】
このような処理が繰り返されて、上流側空燃比Ａ／Ｆが調整されることで、貯蔵酸素脱離量ＯＳＣが目標貯蔵酸素脱離量ＯＳＣＴＧとなるようにフィードバック制御が実行される。
【０１３８】
上述した構成の内、図９の貯蔵酸素脱離量ＯＳＣ積算処理が貯蔵酸素脱離量積算手段としての処理に、図１０のステップＳ６１０〜Ｓ６５０，Ｓ６５４，Ｓ６５６が貯蔵酸素脱離量存在領域設定手段としての処理に、図１０のステップＳ６７０〜Ｓ７００が貯蔵酸素脱離量修正手段としての処理に、図８のステップＳ４４０および図１０のステップＳ６５２が三元触媒吸着能力推定手段に相当する。
【０１３９】
以上説明した本実施の形態１によれば、以下の効果が得られる。
（イ）．図１０に示した貯蔵酸素脱離量ＯＳＣ修正処理では、ＯＳＣ＝最大貯蔵酸素脱離量ＯＳＣｍａｘとＯＳＣ＝０（最小貯蔵酸素脱離量）との間において、エンジン４の運転状態（燃料カット実行フラグＦｃａ、下流側空燃比ｓｕｂＡ／Ｆおよび触媒温度Ｔｃ）に応じて貯蔵酸素脱離量存在領域を設定している。このように、エンジン４の運転状態に対応させることで設定される貯蔵酸素脱離量存在領域は実際の貯蔵酸素脱離量を反映したものとなっている。
【０１４０】
そして、この貯蔵酸素脱離量存在領域を参照して、ステップＳ６７０〜Ｓ７００の処理により、貯蔵酸素脱離量ＯＳＣが、貯蔵酸素脱離量存在領域（目標貯蔵酸素脱離量ＯＳＣＴＧ−貯蔵酸素脱離量存在領域下限値ＯＳＣＤＬ〜目標貯蔵酸素脱離量ＯＳＣＴＧ−貯蔵酸素脱離量存在領域上限値ＯＳＣＵＬ）から外れている場合には、貯蔵酸素脱離量ＯＳＣの値を貯蔵酸素脱離量存在領域以内とするように修正している。実際には、目標貯蔵酸素脱離量ＯＳＣＴＧ−貯蔵酸素脱離量存在領域下限値ＯＳＣＤＬか、目標貯蔵酸素脱離量ＯＳＣＴＧ−貯蔵酸素脱離量存在領域上限値ＯＳＣＵＬに修正している。
【０１４１】
このことにより、従来技術のごとく、触媒コンバータ６４の下流側の酸素センサ８２における比較的大きな状態変化を必須とすることなく、貯蔵酸素脱離量ＯＳＣが、貯蔵酸素脱離量存在領域から外れている場合には、貯蔵酸素脱離量ＯＳＣを適切な状態に修正できる。このため、計算上の貯蔵酸素脱離量ＯＳＣを修正する機会が増加して、貯蔵酸素脱離量ＯＳＣが不適切である状態が長期間継続することが無くなる。
【０１４２】
次に具体例にて効果を説明する。図１７（Ａ）に示すタイミングチャートは、何らかの原因で上流側空燃比Ａ／Ｆがリッチである状態が継続して、一点鎖線で示す実際の貯蔵酸素脱離量ＬＯが最大貯蔵酸素脱離量ＯＳＣｍａｘまで変化した状態を示している。このような状態では、触媒コンバータ６４の下流側の酸素センサ８２の電圧信号Ｖｚは図１７（Ｂ）に示すごとく変化する。そして時刻ｔ１以後に、実際の貯蔵酸素脱離量ＬＯが最大貯蔵酸素脱離量ＯＳＣｍａｘ状態から減少し始めたものとする。そしてこの時、実線に示すごとく本実施の形態１で算出される貯蔵酸素脱離量ＬＳにおいて何らかの原因で実際の貯蔵酸素脱離量ＬＯとの間にずれを生じたとする。
【０１４３】
しかし計算上の貯蔵酸素脱離量ＬＳは、時刻ｔ２において、電圧信号Ｖｚのリッチ状態に対応する貯蔵酸素脱離量存在領域ＡＲの下限に到達する（Ｓ６８０で「ＮＯ」）ことから、これ以上、計算上の貯蔵酸素脱離量ＬＳは減少することはない（Ｓ７００）。したがって、電圧信号Ｖｚがリーン状態に切り替わって貯蔵酸素脱離量存在領域ＡＬが設定されるまでの間、計算上の貯蔵酸素脱離量ＬＳは実際の貯蔵酸素脱離量ＬＯに近づくように修正されることになる。このようにして計算上の貯蔵酸素脱離量ＬＳを適切な状態に修正できる。
【０１４４】
一方、前述した後者の従来例では、時刻ｔ１以後、電圧信号Ｖｚが０．７Ｖ以上あるいは０．２Ｖ以下となるような大きな変化を生じていないので、二点鎖線ＬＢで示すごとく、何らの適切な修正は行われることがない。
【０１４５】
図１８（Ａ）に示すタイミングチャートは、何らかの原因で上流側空燃比Ａ／Ｆがリーンである状態が継続して、一点鎖線で示す実際の貯蔵酸素脱離量ＬＯが最小貯蔵酸素脱離量（ＯＳＣ＝０）まで変化した状態を示している。このような状態では、酸素センサ８２の電圧信号Ｖｚは図１８（Ｂ）に示すごとく変化する。そして時刻ｔ１１以後に、実際の貯蔵酸素脱離量ＬＯが最小貯蔵酸素脱離量の状態から増加し始めたものとする。そしてこの時、実線に示すごとく本実施の形態１で算出される貯蔵酸素脱離量ＬＳにおいて何らかの原因で実際の貯蔵酸素脱離量ＬＯとの間にずれを生じたとする。
【０１４６】
しかし計算上の貯蔵酸素脱離量ＬＳは、時刻ｔ１２において、電圧信号Ｖｚのリーン状態に対応する貯蔵酸素脱離量存在領域ＡＬの上限に到達する（Ｓ６７０で「ＮＯ」）ことから、これ以上、計算上の貯蔵酸素脱離量ＬＳは増加することはない（Ｓ６９０）。したがって、電圧信号Ｖｚがリッチ状態に切り替わって貯蔵酸素脱離量存在領域ＡＲが設定されるまでの間、計算上の貯蔵酸素脱離量ＬＳは実際の貯蔵酸素脱離量ＬＯに近づくように修正されることになる。このようにして計算上の貯蔵酸素脱離量ＬＳを適切な状態に修正できる。
【０１４７】
一方、前述した後者の従来例では、時刻ｔ１１以後、電圧信号Ｖｚが０．７Ｖ以上あるいは０．２Ｖ以下となるような大きな変化を生じていないので、二点鎖線ＬＢで示すごとく、何らの適切な修正は行われることがない。
【０１４８】
図１９（Ａ），（Ｂ）に示すタイミングチャートは、何らかの原因で上流側空燃比Ａ／Ｆがリッチである状態が継続して、実際の貯蔵酸素脱離量ＬＯが最大貯蔵酸素脱離量ＯＳＣｍａｘまで変化し、酸素センサ８２の電圧信号Ｖｚが０．７Ｖを越えた状態を示している。
【０１４９】
前述した後者の従来例では、貯蔵酸素脱離量ＯＳＣの値が最大貯蔵酸素脱離量ＯＳＣｍａｘに至るまでは正確に実際の貯蔵酸素脱離量を表していても、電圧信号Ｖｚが０．７Ｖ以上である限り（時刻ｔ２１まで）はＯＳＣ＝ＯＳＣｍａｘに固定されてしまう。このため、二点鎖線ＬＢで示すごとく実際の貯蔵酸素脱離量ＬＯとは大きなずれを生じてしまう。
【０１５０】
しかし、本実施の形態１では、電圧信号Ｖｚが図１９（Ｂ）に示すごとくリッチ状態である場合には、貯蔵酸素脱離量存在領域ＡＲが設定されるので、この貯蔵酸素脱離量存在領域ＡＲ内で上流側の空燃比に基づく計算通りに貯蔵酸素脱離量が算出される。このため、計算上の貯蔵酸素脱離量が減少する場合も実際の貯蔵酸素脱離量ＬＯとほぼ同じ様に変化する。
【０１５１】
例え、本実施の形態１において何らかの原因で計算上の貯蔵酸素脱離量の減少の際に、実線ＬＳに示すごとく実際の貯蔵酸素脱離量ＬＯとずれを生じたとしても、時刻ｔ２２にて電圧信号Ｖｚがリーン状態に切り替わると貯蔵酸素脱離量存在領域ＡＬが設定される。この時に計算上の貯蔵酸素脱離量ＬＳが貯蔵酸素脱離量存在領域ＡＬの上限から外れていれば（Ｓ６７０で「ＮＯ」）、図示するごとく修正されて（Ｓ６９０）、実際の貯蔵酸素脱離量ＬＯに近づく。このようにして計算上の貯蔵酸素脱離量ＬＳを適切な状態に修正できる。
【０１５２】
図２０（Ａ），（Ｂ）に示すごとく、逆の場合も同様であり、前述した後者の従来例では、貯蔵酸素脱離量ＯＳＣの値が最小貯蔵酸素脱離量（ＯＳＣ＝０）に至るまでは正確に実際の貯蔵酸素脱離量を表していても、電圧信号Ｖｚが０．２Ｖ以下である限り（時刻ｔ３１まで）はＯＳＣ＝０に固定されてしまう。このため、二点鎖線ＬＢで示すごとく実際の貯蔵酸素脱離量ＬＯとは大きなずれを生じてしまう。
【０１５３】
しかし、本実施の形態１では、電圧信号Ｖｚが図２０（Ｂ）に示すごとくリーン状態である場合には、貯蔵酸素脱離量存在領域ＡＬが設定されるので、この貯蔵酸素脱離量存在領域ＡＬ内で上流側の空燃比に基づく計算通りに貯蔵酸素脱離量が算出される。このため、計算上の貯蔵酸素脱離量が増加する場合も実際の貯蔵酸素脱離量ＬＯとほぼ同じ様に変化する。
【０１５４】
例え、本実施の形態１の計算において何らかの原因で貯蔵酸素脱離量ＯＳＣの増加の際に、実線ＬＳに示すごとく実際の貯蔵酸素脱離量ＬＯとずれを生じたとしても、時刻ｔ３２にて電圧信号Ｖｚがリッチ状態に切り替わると貯蔵酸素脱離量存在領域ＡＲが設定される。この時に計算上の貯蔵酸素脱離量ＬＳが貯蔵酸素脱離量存在領域ＡＲの下限から外れていれば（Ｓ６８０で「ＮＯ」）、図示するごとく修正されて（Ｓ７００）、実際の貯蔵酸素脱離量ＬＯに近づく。このようにして計算上の貯蔵酸素脱離量ＬＳを適切な状態に修正できる。
【０１５５】
図２１のタイミングチャートは、燃料カットが生じた場合を示している。前述した後者の従来例では、燃料カットになると（時刻ｔ４１）、計算上の貯蔵酸素脱離量を直ちに０に設定する。このため、実際の貯蔵酸素脱離量ＬＯが０にならない内に燃料カットが終了すると（時刻ｔ４３）、二点鎖線ＬＢで示す計算上の貯蔵酸素脱離量は実際の貯蔵酸素脱離量ＬＯとは大きなずれを生じてしまう。
【０１５６】
しかし、本実施の形態１では、燃料カットが長時間経過した後に燃料カット用の貯蔵酸素脱離量存在領域ＡＣが設定されるので、この貯蔵酸素脱離量存在領域ＡＣ内で計算通りに貯蔵酸素脱離量ＯＳＣが算出される。このため実際の貯蔵酸素脱離量ＬＯとほぼ同じ様に変化する。
【０１５７】
例え、本実施の形態１の計算において何らかの原因で、燃料カットの開始時に実線ＬＳに示すごとく実際の貯蔵酸素脱離量ＬＯとずれを生じたとしても、時刻ｔ４２にて貯蔵酸素脱離量存在領域ＡＣが設定される。このことにより上限よりも外れていると判定されて（Ｓ６７０で「ＮＯ」）、図示するごとく修正されて（Ｓ６９０）、実際の貯蔵酸素脱離量ＬＯに近づく。このようにして計算上の貯蔵酸素脱離量ＬＳを適切な状態に修正できる。
【０１５８】
（ロ）．更に、図１２および図１３に示したごとく、貯蔵酸素脱離量存在領域は、最大貯蔵酸素脱離量と最小貯蔵酸素脱離量との間において最大貯蔵酸素脱離量と最小貯蔵酸素脱離量との間の領域よりも小さい領域として設定されている。
【０１５９】
このため、図１７〜図２１に示したごとく、計算上の貯蔵酸素脱離量の修正は、最大貯蔵酸素脱離量あるいは最小貯蔵酸素脱離量のような極端な値へと急激に変化することはない。
【０１６０】
このように極端な値への修正が抑制されるので、図１７〜図２１にも表れているように、修正後において実際の貯蔵酸素脱離量との誤差が大きい状態が発生し難くなり、計算上の貯蔵酸素脱離量が不適切である状態が長期間継続することが無くなる。したがって、エミッションの悪化し易くなる前に計算上の貯蔵酸素脱離量を適切な値に修正することが可能となり、エミッションの悪化防止が一層確実となる。
【０１６１】
（ハ）．上述したごとく貯蔵酸素脱離量存在領域は、三元触媒６３の温度と、燃料カット処理の有無と、三元触媒６３の下流の酸素センサ８２で検出される下流側空燃比ｓｕｂＡ／Ｆとを用いている。
【０１６２】
そして、長時間の燃料カット処理がなされている状態（Ｓ６１０で「ＹＥＳ」）では、三元触媒６３への酸素量の供給が大量であることを考慮したマップＣから貯蔵酸素脱離量存在領域を設定することができる。更に、この時に触媒温度Ｔｃに応じて貯蔵酸素脱離量存在領域の範囲を変化させることにより、適切な貯蔵酸素脱離量存在領域を設定することができる。
【０１６３】
また、長時間の燃料カット処理がなされていない状態（Ｓ６１０で「ＮＯ」）では、下流側空燃比ｓｕｂＡ／Ｆがリッチ状態であれば、このリッチ状態を考慮した貯蔵酸素脱離量存在領域を設定することができる。また、下流側空燃比ｓｕｂＡ／Ｆがリーン状態では、このリーン状態を考慮した貯蔵酸素脱離量存在領域を設定することができる。更に、この時に温度に応じて貯蔵酸素脱離量存在領域の範囲を変化させるている。このことにより、適切な貯蔵酸素脱離量存在領域を設定することができる。
【０１６４】
このように、計算上の貯蔵酸素脱離量ＯＳＣの修正をより適切なものとでき、上記（イ）、（ロ）に述べた効果をより顕著なものとできる。
（ニ）．三元触媒６３の酸素吸着能力は経時により劣化する。このため、ステップＳ４４０にてカウントアップするカウント値ＴＤを用いて、図１５のマップから劣化係数ＤＫを算出している（Ｓ６５２）。このことにより三元触媒６３の酸素吸着能力を推定し、三元触媒６３における貯蔵酸素脱離量存在領域の設定に反映させている（Ｓ６５４，Ｓ６５６）。このことにより、適切な貯蔵酸素脱離量存在領域を設定することができる。したがって、計算上の貯蔵酸素脱離量ＯＳＣの修正をより適切なものとでき、上記（イ）、（ロ）、（ハ）に述べた効果をより顕著なものとできる。
【０１６５】
［実施の形態２］
前記実施の形態１では、三元触媒６３の劣化を考慮した現在の最大貯蔵酸素脱離量ＯＳＣｍａｘおよび貯蔵酸素脱離量存在領域を求めるために、カウント値ＴＤにより三元触媒６３の累積使用時間を求めていた。
【０１６６】
本実施の形態２では、このように三元触媒６３の累積使用時間ではなく、図２４および図２５のフローチャートに示す劣化係数ＤＫ学習処理にて、実測により最大貯蔵酸素量を求め、この最大貯蔵酸素量から劣化係数ＤＫを算出するものである。
【０１６７】
このため、本実施の形態２では、前記図８の貯蔵酸素脱離量算出処理の代わりに図２２の貯蔵酸素脱離量算出処理を実行し、前記図１０の貯蔵酸素脱離量ＯＳＣ修正処理の代わりに図２３の貯蔵酸素脱離量ＯＳＣ修正処理を実行する。この図２２の処理では、図８におけるステップＳ４４０の処理を行わないのみの違いであり、図２３の処理では、図１０におけるステップＳ６５２の処理を行わないのみの違いである。したがって、図２２の処理内容は、ステップＳ４４０を除いて実施の形態１にて説明したごとくであり、図２３の処理内容は、ステップＳ６５２を除いて実施の形態１にて説明したごとくである。ただし図２２および図２３では、図８および図１０での同一の処理に用いたステップ番号に１０００を加えたステップ番号で示している。
【０１６８】
なお、本実施の形態２の他の構成については、特に説明しない限り基本的には前記実施の形態１と同じである。
ここで、図２４に示した劣化係数ＤＫ学習処理について説明する。本処理は時間Δｔの周期で繰り返し実行される処理である。本処理が開始されると、まず、触媒温度ＴｃがＲＡＭ５０ｃの作業領域に読み込まれる（Ｓ１０１０）。
【０１６９】
次に触媒温度Ｔｃに応じて温度領域ｉを選定する（Ｓ１０２０）。ここで、触媒温度Ｔｃの温度領域は図２６に破線で示すごとく分割されて設定されているものとする。この内でいずれの温度領域に触媒温度Ｔｃが属するかを算出することにより温度領域ｉの選定がなされる。
【０１７０】
次に、上述のごとく求められた温度領域ｉが前回の制御周期に求められた温度領域と同じか否かが判定される（Ｓ１０３０）。同じ温度領域でなければ（Ｓ１０３０で「ＮＯ」）、次に劣化係数学習実行フラグＸＣＡＴＧが「ＯＦＦ」に設定され（Ｓ１０４０）、燃料カット復帰後空燃比偏差積算値ＳＵＭＦＣがクリアされる（Ｓ１０５０）。
【０１７１】
ステップＳ１０５０の後、あるいは温度領域ｉが前回と同じであると判定された（Ｓ１０３０で「ＹＥＳ」）場合は、次に長時間、燃料カット実行フラグＦｃａが「ＯＮ」か否かが判定される（Ｓ１０６０）。長時間か否かは例えば判定のための基準時間を設けて、この基準時間以上、Ｆｃａ＝「ＯＮ」が継続しているか否かを判断すれば良い。
【０１７２】
長時間、燃料カット実行フラグＦｃａが「ＯＮ」であれば（Ｓ１０６０で「ＹＥＳ」）、劣化係数学習実行フラグＸＣＡＴＧが「ＯＮ」に設定される（Ｓ１０７０）。
【０１７３】
ステップＳ１０７０の後、あるいは燃料カット実行フラグＦｃａが「ＯＦＦ」である（Ｓ１０６０で「ＮＯ」）場合は、次に、劣化係数学習実行フラグＸＣＡＴＧが「ＯＮ」か否かが判定される（Ｓ１０８０）。ＸＣＡＴＧ＝「ＯＦＦ」であれば（Ｓ１０８０で「ＮＯ」）、このまま劣化係数ＤＫ学習処理を一旦終了する。
【０１７４】
ＸＣＡＴＧ＝「ＯＮ」であれば（Ｓ１０８０で「ＹＥＳ」）、次に燃料カット復帰後空燃比偏差積算値ＳＵＭＦＣの積算処理（Ｓ１０９０）が実行される。この燃料カット復帰後空燃比偏差積算値ＳＵＭＦＣ積算処理の詳細を図２５に示す。
【０１７５】
燃料カット復帰後空燃比偏差積算値ＳＵＭＦＣ積算処理が開始されると、まず、上流側空燃比Ａ／Ｆが理論空燃比であるか否かが判定される（Ｓ１７１０）。上流側空燃比Ａ／Ｆが理論空燃比である場合は（Ｓ１７１０で「ＹＥＳ」）、このまま積算処理を出る。
【０１７６】
上流側空燃比Ａ／Ｆが理論空燃比でない場合は（Ｓ１７１０で「ＮＯ」）、次に上流側空燃比Ａ／Ｆがリーンであるか否かが判定される（Ｓ１７２０）。上流側空燃比Ａ／Ｆがリーンであるときには（Ｓ１７２０で「ＹＥＳ」）、次式１４から燃料カット復帰後空燃比偏差積算値ＳＵＭＦＣが算出される（Ｓ１７３０）。
【０１７７】
【数１４】
ＳＵＭＦＣ
←  ＳＵＭＦＣ−｛ＫＯ２・ＧＡ・（ΔＡ／Ｆ）／（Ａ／Ｆ）｝・Δｔ…  ［式１４］
ここで、右辺のＳＵＭＦＣは前回の制御周期における燃料カット復帰後空燃比偏差積算値ＳＵＭＦＣを表している。他の記号の意味や式の内容は前記式２で述べたごとくである。
【０１７８】
一方、ステップＳ１７２０にて、上流側空燃比Ａ／Ｆがリーンでない、すなわちリッチであると判定されたときには（Ｓ１７２０で「ＮＯ」）、次式１５から燃料カット復帰後空燃比偏差積算値ＳＵＭＦＣが算出される（Ｓ１７４０）。
【０１７９】
【数１５】
ＳＵＭＦＣ
←  ＳＵＭＦＣ−｛ＫＯ２・ＧＡ・ｋ・（ΔＡ／Ｆ）／（Ａ／Ｆ）｝・Δｔ…  ［式１５］
ここで、記号の意味や式の内容は前記式４、式１４で述べたごとくである。
【０１８０】
こうして、燃料カット復帰後空燃比偏差積算値ＳＵＭＦＣの積算（Ｓ１７３０，Ｓ１７４０）が実行された後は積算処理を出る。
図２４に戻り、ステップＳ１０９０の次には、下流側空燃比ｓｕｂＡ／Ｆがリッチか否かが判定される（Ｓ１１００）。ｓｕｂＡ／Ｆ＝リッチでなければ（Ｓ１１００で「ＮＯ」）、このまま劣化係数ＤＫ学習処理を一旦終了する。
【０１８１】
ｓｕｂＡ／Ｆ＝リッチであれば（Ｓ１１００で「ＹＥＳ」）、三元触媒６３の貯蔵酸素量がほぼ０、すなわち貯蔵酸素脱離量ＯＳＣがほぼ最大貯蔵酸素脱離量ＯＳＣｍａｘになったと考えられる。このため、この時点で求められている燃料カット復帰後空燃比偏差積算値ＳＵＭＦＣは、最大貯蔵酸素脱離量ＯＳＣｍａｘを実測した値とみなすことができる。
【０１８２】
したがって、ステップＳ１１００で「ＹＥＳ」と判定されると、次に、次式１６に示すごとく、燃料カット復帰後空燃比偏差積算値ＳＵＭＦＣと、触媒温度Ｔｃに基づいて図２６に示した三元触媒６３の未使用時の最大貯蔵酸素脱離量のマップから求めた最大貯蔵酸素脱離量Ｇ（Ｔｃ）との比を、温度領域ｉの劣化係数ＤＫ（ｉ）として設定する（Ｓ１１１０）。
【０１８３】
【数１６】
ＤＫ（ｉ）  ←  ＳＵＭＦＣ／Ｇ（Ｔｃ）    …  ［式１６］
なお、このＤＫ（ｉ）の値は、温度領域ｉの劣化係数としてバックアップＲＡＭ５０ｄ内に記憶される。
【０１８４】
次に、劣化係数学習実行フラグＸＣＡＴＧが「ＯＦＦ」に設定され（Ｓ１１２０）、燃料カット復帰後空燃比偏差積算値ＳＵＭＦＣがクリアされる（Ｓ１１３０）。こうして、一旦、劣化係数ＤＫ学習処理を終了する。
【０１８５】
このようにして求められた温度領域ｉ毎の劣化係数ＤＫ（ｉ）は、図２３のステップＳ１６５４，Ｓ１６５６および図１１のステップＳ６６２において、劣化係数ＤＫの代わりに、触媒温度Ｔｃに対応した温度領域ｉの劣化係数ＤＫ（ｉ）が用いられる。なお、劣化係数ＤＫの学習が完了していない温度領域ｉの劣化係数ＤＫ（ｉ）については、初期値としての「１．０」の値が用いられる。
【０１８６】
上述した実施の形態２の構成においては、図９の貯蔵酸素脱離量ＯＳＣ積算処理が貯蔵酸素脱離量積算手段としての処理に、図２３のステップＳ１６１０〜Ｓ１６５０，Ｓ１６５４，Ｓ１６５６が貯蔵酸素脱離量存在領域設定手段としての処理に、図２３のステップＳ１６７０〜Ｓ１７００が貯蔵酸素脱離量修正手段としての処理に、図２４，２５の劣化係数ＤＫ学習処理が三元触媒吸着能力検出手段としての処理に相当する。
【０１８７】
以上説明した本実施の形態２によれば、以下の効果が得られる。
（イ）．前記実施の形態１の（イ）、（ロ）、（ハ）の効果を生じる。
（ロ）．三元触媒６３の酸素吸着能力は、経時により劣化したり、あるいは温度領域によってもその劣化の程度が異なる。このため、本実施の形態２では、図２４，２５の劣化係数ＤＫ学習処理により三元触媒６３の酸素吸着能力を検出し、三元触媒６３における貯蔵酸素脱離量存在領域の設定に反映させている。
【０１８８】
このことにより、適切な貯蔵酸素脱離量存在領域を設定することができる。したがって、計算上の貯蔵酸素脱離量ＯＳＣの修正をより適切なものとでき、前述した実施の形態１の効果をより顕著なものとできる。
【０１８９】
（ハ）．更に、三元触媒６３の酸素吸着能力を検出するに際しては、三元触媒６３において酸素が飽和状態である時から開始する。そして、三元触媒６３の下流で検出される下流側空燃比ｓｕｂＡ／Ｆがリッチになった時に終了する。そして、この期間に、三元触媒６３に流入する排気状態に基づいて算出される燃料濃度の過不足量の積算値である燃料カット復帰後空燃比偏差積算値ＳＵＭＦＣを求めることで、三元触媒６３の酸素吸着能力を検出している。
【０１９０】
下流側空燃比ｓｕｂＡ／Ｆがリッチになった時は、三元触媒６３において貯蔵されている酸素量がほぼ０となったと考えられる。このため、燃料カット復帰後空燃比偏差積算値ＳＵＭＦＣは、三元触媒６３の最大貯蔵酸素量を示すことになる。この最大貯蔵酸素量のレベルが、その時の三元触媒６３の酸素吸着能力の程度、すなわち三元触媒の劣化の程度を表すことになる。
【０１９１】
したがって、このように検出された燃料カット復帰後空燃比偏差積算値ＳＵＭＦＣと、三元触媒６３の未使用時の最大貯蔵酸素脱離量Ｇ（Ｔｃ）とを用いて劣化係数ＤＫを求めることで、この劣化係数ＤＫにより適切な貯蔵酸素脱離量存在領域を設定することができる。このため、計算上の貯蔵酸素脱離量ＯＳＣの修正をより適切なものとできる。
【０１９２】
（ニ）．本実施の形態２では、燃料カット処理が基準時間以上継続した場合に、三元触媒６３において酸素が飽和状態であるとして燃料カット復帰後空燃比偏差積算値ＳＵＭＦＣの積算を開始している。
【０１９３】
このように燃料カット処理が基準時間以上継続した場合には、三元触媒６３において酸素が飽和状態であると考えることができ、このタイミングで、燃料カット復帰後空燃比偏差積算値ＳＵＭＦＣの積算を開始することが可能となる。
【０１９４】
このように燃料カットを利用して検出された三元触媒６３の酸素吸着能力を用いて、適切な貯蔵酸素脱離量存在領域を設定することができる。したがって、エンジン４の運転中においても、三元触媒６３の劣化状態を求めて、計算上の貯蔵酸素脱離量ＯＳＣの修正をより適切なものとできる。
【０１９５】
［実施の形態３］
本実施の形態３が前記実施の形態１と異なるのは、図１０に示した貯蔵酸素脱離量ＯＳＣ修正処理におけるステップＳ６１０〜Ｓ６５０の代わりに、図２７に示す処理を実行する点である。図１０のステップＳ６５２以降の処理については同じである。また、これ以外の構成については、特に説明しない限り前記実施の形態１と同じである。
【０１９６】
図２７の処理について説明する。貯蔵酸素脱離量ＯＳＣ修正処理が開始されると、まず、長時間、燃料カット実行フラグＦｃａ＝「ＯＮ」となっているか否かが判定される（Ｓ２６１０）。この判定処理は図１０のステップＳ６１０と同じである。
【０１９７】
長時間、Ｆｃａ＝「ＯＮ」である場合（Ｓ２６１０で「ＹＥＳ」）には、マップＣ使用継続フラグＦｃｃを「ＯＮ」に設定する（Ｓ２６１２）。次に、貯蔵酸素脱離量存在領域上限値ＯＳＣＵＬと貯蔵酸素脱離量存在領域下限値ＯＳＣＤＬとを、ＲＯＭ５０ｂ内に格納されている前出の図１３に示すマップＣから触媒温度Ｔｃに基づいて算出する（Ｓ２６３０）。
【０１９８】
一方、Ｆｃａ＝「ＯＦＦ」の場合も含めて長時間、Ｆｃａ＝「ＯＮ」でない場合（Ｓ２６１０で「ＮＯ」）には、下流側空燃比ｓｕｂＡ／Ｆがリッチか否かが判定される（Ｓ２６２０）。ｓｕｂＡ／Ｆ＝リッチであれば（Ｓ２６２０で「ＹＥＳ」）、マップＣ使用継続フラグＦｃｃを「ＯＦＦ」に設定する（Ｓ２６２２）。次に、貯蔵酸素脱離量存在領域上限値ＯＳＣＵＬと貯蔵酸素脱離量存在領域下限値ＯＳＣＤＬとを、ＲＯＭ５０ｂ内に格納されている前出の図１２に示すマップＡから触媒温度Ｔｃに基づいて算出する（Ｓ２６４０）。
【０１９９】
また、ｓｕｂＡ／Ｆ＝リーンであれば（Ｓ２６２０で「ＮＯ」）、マップＣ使用継続フラグＦｃｃが「ＯＦＦ」か否かが判定される（Ｓ２６２４）。ここで、Ｆｃｃ＝「ＯＮ」であれば（Ｓ２６２４で「ＮＯ」）、前述したステップＳ２６３０が実行され、貯蔵酸素脱離量存在領域上限値ＯＳＣＵＬと貯蔵酸素脱離量存在領域下限値ＯＳＣＤＬとをマップＣから触媒温度Ｔｃに基づいて算出する。
【０２００】
Ｆｃｃ＝「ＯＦＦ」であれば（Ｓ２６２４で「ＹＥＳ」）、次に貯蔵酸素脱離量存在領域上限値ＯＳＣＵＬと貯蔵酸素脱離量存在領域下限値ＯＳＣＤＬとを、ＲＯＭ５０ｂ内に格納されている前出の図１２に示すマップＢから触媒温度Ｔｃに基づいて算出する（Ｓ２６５０）。
【０２０１】
ステップＳ２６３０〜Ｓ２６５０のいずれかの処理の次に、図１０に示したステップＳ６５２以降の処理に移る。
ここでは、図２７のステップＳ２６１０〜Ｓ２６５０および図１０のステップＳ６５４，Ｓ６５６が貯蔵酸素脱離量存在領域設定手段としての処理に相当する。
【０２０２】
以上説明した本実施の形態３によれば、以下の効果が得られる。
（イ）．実施の形態１の効果が生じる。
（ロ）．燃料カットが終了した直後においては、実際の貯蔵酸素脱離量の上昇が予想よりも鈍い場合がある。したがって、このような場合に対応して、燃料カット処理の終了直後であることを、マップＣ使用継続フラグＦｃｃが「ＯＮ」であることで判定している。そして、Ｆｃｃ＝「ＯＮ」であって、三元触媒６３の下流の酸素センサ８２による電圧信号Ｖｚがリーン状態を継続して検出している限り（Ｓ２６２０で「ＮＯ」かつＳ２６２４で「ＮＯ」）、マップＣを用いて貯蔵酸素脱離量存在領域を設定している（Ｓ２６３０）。このことにより、計算上の貯蔵酸素脱離量の修正をより適切なものとできる。
【０２０３】
この効果を具体例にて説明する。図２８（Ａ）に示すタイミングチャートは、燃料カット前後の貯蔵酸素脱離量の状態を示している。このような状態では、酸素センサ８２の電圧信号Ｖｚは図２８（Ｂ）に示すごとく変化する。そして時刻ｔ５１にて燃料カットが終了したものとする。この時、実線に示すごとく本実施の形態３で算出される貯蔵酸素脱離量ＬＳの方が速く値が上昇することにより実際の貯蔵酸素脱離量ＬＯとの間にずれを生じたものとする。
【０２０４】
上述したごとく、燃料カット直後は、酸素センサ８２の電圧信号Ｖｚがリーン状態を継続する限り、燃料カット時用の貯蔵酸素脱離量存在領域ＡＣが継続して設定されている。このため、計算上の貯蔵酸素脱離量ＬＳは、時刻ｔ５２において、貯蔵酸素脱離量存在領域ＡＣの上限に到達する（Ｓ６７０で「ＮＯ」）ことから、これ以上、計算上の貯蔵酸素脱離量ＬＳは増加することはない（Ｓ６９０）。したがって、電圧信号Ｖｚがリッチ状態に切り替わってリッチ用の貯蔵酸素脱離量存在領域ＡＲが設定されるまでの間、計算上の貯蔵酸素脱離量ＬＳは一定値となる。
【０２０５】
そして、時刻ｔ５３にて、電圧信号Ｖｚがリッチ状態に切り替わってリッチ用の貯蔵酸素脱離量存在領域ＡＲが設定されると、計算上の貯蔵酸素脱離量ＬＳは貯蔵酸素脱離量存在領域ＡＲの下限位置までステップ的に増加する。この時刻ｔ５１〜ｔ５３における計算上の貯蔵酸素脱離量ＬＳの値は、実際の貯蔵酸素脱離量ＬＯの上下付近で変化し、最終的に実際の貯蔵酸素脱離量ＬＯに対して大きなずれを生じない。このようにして計算上の貯蔵酸素脱離量ＬＳを適切な状態に修正できる。
【０２０６】
一方、前述した後者の従来例では、電圧信号Ｖｚが０．２Ｖを越えた後には二点鎖線ＬＢで示すごとく何らの適切な修正は行われることがなく、実際の貯蔵酸素脱離量ＬＯとのずれは十分に修正されない。
【０２０７】
［その他の実施の形態］
・前記各実施の形態において、三元触媒の貯蔵酸素脱離量ＯＳＣを目標貯蔵酸素脱離量ＯＳＣＴＧとするフィードバック制御は、空燃比フィードバック制御にて算出される燃料噴射量への補正により行っていた。これ以外に、空燃比フィードバック制御における目標空燃比自体を補正することにより、貯蔵酸素脱離量のフィードバック制御を実行しても良い。
【０２０８】
・前記各実施の形態において、三元触媒６３の温度を触媒温度センサ６７にて検出したが、触媒温度センサ６７を用いずに、エアフローメータ６８から得られる吸入空気量などのエンジン負荷に応じて三元触媒６３の温度を推定しても良い。
【０２０９】
・前記各実施の形態において、貯蔵酸素脱離量存在領域から外れている場合の貯蔵酸素脱離量ＯＳＣの修正は、貯蔵酸素脱離量存在領域の上下限位置に修正していた。これ以外に、上下限位置よりも更に貯蔵酸素脱離量存在領域内に修正しても良い。また、貯蔵酸素脱離量存在領域外において、貯蔵酸素脱離量存在領域に近づけるようにしても良い。
【０２１０】
・前記各実施の形態では、酸素センサ８２の電圧信号Ｖｚが電圧判定値ＶＳよりも低いときに三元触媒６３の下流側の空燃比Ａ／Ｆはリーンであると判断し、酸素センサ８２の電圧信号Ｖｚが電圧判定値ＶＳ以上のときに三元触媒６３の下流側の空燃比はリッチであると判断して、それぞれに対応して貯蔵酸素脱離量存在領域を設定した。これ以外に、酸素センサ８２の電圧信号Ｖｚに対する電圧判定値を複数設けて、３つ以上の空燃比領域を判断し、各空燃比領域に対応した貯蔵酸素脱離量存在領域を設けることで、更に精密に貯蔵酸素脱離量ＯＳＣを修正するようにしても良い。
【０２１１】
・前記実施の形態３の図２７の構成は、前記実施の形態２の図２３のステップＳ１６１０〜Ｓ１６５０の代わりに用いることにより、前記実施の形態２に適用することもでき、前記実施の形態３で述べた（ロ）の効果を生じさせることができる。
【０２１２】
以上、本発明の実施の形態について説明したが、本発明の実施の形態には、次のような形態（１）〜（１５）を含むものであることを付記しておく。すなわち、貯蔵酸素脱離量は、最大貯蔵酸素量状態にある三元触媒からの酸素の脱離量を示す値であり、「最大貯蔵酸素量−貯蔵酸素量」と等価であることから、貯蔵酸素脱離量の代わりに貯蔵酸素量を用いても、同等の制御が可能である。このことから、前述した各実施の形態は次のような形態（１）〜（１５）を含むものである。
【０２１３】
（１）．内燃機関の排気通路に配置された三元触媒における貯蔵酸素量を算出する三元触媒貯蔵酸素量算出装置であって、
三元触媒に流入する排気状態に基づいて前記三元触媒における貯蔵酸素量を積算する貯蔵酸素量積算手段と、
三元触媒における最大貯蔵酸素量と最小貯蔵酸素量との間において、内燃機関の運転状態に応じて、最大貯蔵酸素量と最小貯蔵酸素量との間の領域よりも小さい領域であってかつ三元触媒の貯蔵酸素量が位置する可能性が高い貯蔵酸素量存在領域を設定する貯蔵酸素量存在領域設定手段と、
前記貯蔵酸素量積算手段にて積算された貯蔵酸素量が前記貯蔵酸素量存在領域設定手段にて設定されている貯蔵酸素量存在領域から外れている場合には、前記貯蔵酸素量積算手段にて積算された貯蔵酸素量を、前記貯蔵酸素量存在領域に近づけるように、あるいは前記貯蔵酸素量存在領域以内となるように修正する貯蔵酸素量修正手段と、
を備えたことを特徴とする三元触媒貯蔵酸素量算出装置。
【０２１４】
（２）．前記貯蔵酸素量積算手段は、三元触媒に流入する排気状態を表す状態量として、内燃機関への吸入空気量と三元触媒の上流で検出される空燃比とを用いることにより、三元触媒での酸素の吸着量と離脱量との収支を積算して三元触媒における貯蔵酸素量を求めることを特徴とする（１）記載の三元触媒貯蔵酸素量算出装置。
【０２１５】
（３）．前記貯蔵酸素量存在領域設定手段は、内燃機関の運転状態を表す状態量として、三元触媒の下流で検出される空燃比を用いることにより、該空燃比に対応する貯蔵酸素量存在領域を設定することを特徴とする（１）または（２）記載の三元触媒貯蔵酸素量算出装置。
【０２１６】
（４）．前記貯蔵酸素量存在領域設定手段は、内燃機関の運転状態を表す状態量として、内燃機関の運転中に内燃機関への燃料供給を停止する燃料カット処理の有無を用いることにより、燃料カット処理有無に対応する貯蔵酸素量存在領域を設定することを特徴とする（１）または（２）記載の三元触媒貯蔵酸素量算出装置。
【０２１７】
（５）．前記貯蔵酸素量存在領域設定手段は、内燃機関の運転状態を表す状態量として、内燃機関の運転中に内燃機関への燃料供給を停止する燃料カット処理の有無と、三元触媒の下流で検出される空燃比とを用いることにより、燃料カット処理有無および三元触媒の下流で検出される空燃比に対応する貯蔵酸素量存在領域を設定することを特徴とする（１）または（２）記載の三元触媒貯蔵酸素量算出装置。
【０２１８】
（６）．前記貯蔵酸素量存在領域設定手段は、内燃機関の運転状態を表す状態量として、三元触媒の温度と、三元触媒の下流で検出される空燃比とを用いることにより、三元触媒の温度および三元触媒の下流で検出される空燃比に対応する貯蔵酸素量存在領域を設定することを特徴とする（１）または（２）記載の三元触媒貯蔵酸素量算出装置。
【０２１９】
（７）．前記貯蔵酸素量存在領域設定手段は、内燃機関の運転状態を表す状態量として、三元触媒の温度と、内燃機関の運転中に内燃機関への燃料供給を停止する燃料カット処理の有無とを用いることにより、三元触媒の温度および燃料カット処理有無に対応する貯蔵酸素量存在領域を設定することを特徴とする（１）または（２）記載の三元触媒貯蔵酸素量算出装置。
【０２２０】
（８）．前記貯蔵酸素量存在領域設定手段は、内燃機関の運転状態を表す状態量として、三元触媒の温度と、内燃機関の運転中に内燃機関への燃料供給を停止する燃料カット処理の有無と、三元触媒の下流で検出される空燃比とを用いることにより、三元触媒の温度、燃料カット処理有無および三元触媒の下流で検出される空燃比に対応する貯蔵酸素量存在領域を設定することを特徴とする（１）または（２）記載の三元触媒貯蔵酸素量算出装置。
【０２２１】
（９）．前記貯蔵酸素量存在領域設定手段は、内燃機関の運転中に内燃機関への燃料供給を停止する燃料カット処理の終了直後において、三元触媒の下流において理論空燃比よりも燃料濃度が低い空燃比が継続している場合は、燃料カット処理有りに対応する貯蔵酸素量存在領域を設定することを特徴とする（４）、（５）、（７）または（８）記載の三元触媒貯蔵酸素量算出装置。
【０２２２】
（１０）．（１）〜（９）のいずれか記載の構成に加えて、
三元触媒の酸素吸着能力を推定する三元触媒吸着能力推定手段を備え、
前記貯蔵酸素量存在領域設定手段は、内燃機関の運転状態および前記三元触媒吸着能力推定手段にて推定された三元触媒の酸素吸着能力に応じて、三元触媒における貯蔵酸素量存在領域を設定することを特徴とする三元触媒貯蔵酸素量算出装置。
【０２２３】
（１１）．前記三元触媒吸着能力推定手段は、三元触媒の累積使用時間に応じて、三元触媒の酸素吸着能力を推定することを特徴とする（１０）記載の三元触媒貯蔵酸素量算出装置。
【０２２４】
（１２）．（１）〜（９）のいずれか記載の構成に加えて、
三元触媒の酸素吸着能力を検出する三元触媒吸着能力検出手段を備え、
前記貯蔵酸素量存在領域設定手段は、内燃機関の運転状態および前記三元触媒吸着能力検出手段にて検出された三元触媒の酸素吸着能力に応じて、三元触媒における貯蔵酸素量存在領域を設定することを特徴とする三元触媒貯蔵酸素量算出装置。
【０２２５】
（１３）．前記三元触媒吸着能力検出手段は、三元触媒において酸素が飽和状態である時から、三元触媒の下流で検出される空燃比が理論空燃比よりも燃料濃度が濃い状態になった時までにおける三元触媒に流入する排気状態に基づいて算出される燃料濃度の過不足量の積算値に応じて、三元触媒の酸素吸着能力を検出することを特徴とする（１２）記載の三元触媒貯蔵酸素量算出装置。
【０２２６】
（１４）．前記三元触媒吸着能力検出手段は、内燃機関の運転中に内燃機関への燃料供給を停止する燃料カット処理が基準時間以上継続した場合に、三元触媒において酸素が飽和状態であるとして三元触媒に流入する排気状態に基づいて算出される燃料濃度の過不足量の積算を開始することを特徴とする（１３）記載の三元触媒貯蔵酸素量算出装置。
【０２２７】
（１５）．（１）〜（１４）のいずれか記載の三元触媒貯蔵酸素量算出装置を備え、該三元触媒貯蔵酸素量算出装置にて算出される三元触媒の貯蔵酸素量が、目標貯蔵酸素量となるように、内燃機関の燃焼室に供給される混合気の空燃比を制御することを特徴とする内燃機関の空燃比制御装置。
【図面の簡単な説明】
【図１】実施の形態１としてのガソリンエンジンおよび空燃比制御装置の概略構成を表すブロック図。
【図２】実施の形態１における制御系統のブロック図。
【図３】実施の形態１における空燃比センサおよび酸素センサの出力説明図。
【図４】実施の形態１における燃料噴射量制御処理のフローチャート。
【図５】実施の形態１における燃料カット処理のフローチャート。
【図６】実施の形態１における理論空燃比基本燃料噴射量ＱＢＳ算出用マップの構成説明図。
【図７】実施の形態１における高負荷増量算出処理のフローチャート。
【図８】実施の形態１における貯蔵酸素脱離量算出処理のフローチャート。
【図９】実施の形態１における貯蔵酸素脱離量積算処理のフローチャート。
【図１０】実施の形態１における貯蔵酸素脱離量修正処理のフローチャート。
【図１１】実施の形態１における目標貯蔵酸素脱離量算出処理のフローチャート。
【図１２】実施の形態１において貯蔵酸素脱離量存在領域を設定するためのマップＡおよびマップＢの構成説明図。
【図１３】実施の形態１において貯蔵酸素脱離量存在領域を設定するためのマップＣの構成説明図。
【図１４】実施の形態１において三元触媒が未使用状態の時に触媒温度Ｔｃに基づいて最大貯蔵酸素脱離量Ｇ（Ｔｃ）を求めるためのマップの構成説明図。
【図１５】実施の形態１においてカウント値ＴＤに基づいて劣化係数ＤＫを求めるためのマップの構成説明図。
【図１６】実施の形態１における貯蔵酸素脱離量フィードバック係数ＫＣ算出処理のフローチャート。
【図１７】実施の形態１の効果を説明するためのタイミングチャート。
【図１８】実施の形態１の効果を説明するためのタイミングチャート。
【図１９】実施の形態１の効果を説明するためのタイミングチャート。
【図２０】実施の形態１の効果を説明するためのタイミングチャート。
【図２１】実施の形態１の効果を説明するためのタイミングチャート。
【図２２】実施の形態２における貯蔵酸素脱離量算出処理のフローチャート。
【図２３】実施の形態２における貯蔵酸素脱離量修正処理のフローチャート。
【図２４】実施の形態２における劣化係数学習処理のフローチャート。
【図２５】実施の形態２における燃料カット復帰後空燃比偏差積算値積算処理のフローチャート。
【図２６】実施の形態２における触媒温度Ｔｃの温度領域の説明図。
【図２７】実施の形態３における貯蔵酸素脱離量修正処理のフローチャート。
【図２８】実施の形態３の効果を説明するためのタイミングチャート。
【符号の説明】
４…エンジン、６…シリンダブロック、６ａ…シリンダヘッド、８〜１４…気筒、１６…インテークマニホールド、１８…サージタンク、２０…吸気通路、２２…エアクリーナ、２４〜３０…インジェクタ、３２…スロットルバルブ、３４…スロットルモータ、３６…スロットル開度センサ、３８…アクセルペダル、４０… アクセル開度センサ、５０…ＥＣＵ、５０ａ…ＣＰＵ、５０ｂ…ＲＯＭ、５０ｃ…ＲＡＭ、５０ｄ…バックアップＲＡＭ、５０ｅ…入力回路、５０ｆ…出力回路、５０ｇ…双方向バス、６０…エグゾーストマニホールド、６２…排気通路、６３…三元触媒、６４…触媒コンバータ、６６…マフラ、６７…触媒温度センサ、６８…エアフローメータ、７０〜７６…点火プラグ、７０ａ〜７６ａ…イグニッションコイル、８０…空燃比センサ、８２…酸素センサ、９０…回転数センサ、９２…気筒判別センサ、９４…水温センサ、９６…シフトポジションセンサ、９７…車速センサ。
【図１】
0003721897.tif 000002
【図２】
0003721897.tif 000003
【図３】
0003721897.tif 000004
【図４】
0003721897.tif 000005
【図５】
0003721897.tif 000006
【図６】
0003721897.tif 000007
【図７】
0003721897.tif 000008
【図８】
0003721897.tif 000009
【図９】
0003721897.tif 000010
【図１０】
0003721897.tif 000011
【図１１】
0003721897.tif 000012
【図１２】
0003721897.tif 000013
【図１３】
0003721897.tif 000014
【図１４】
0003721897.tif 000015
【図１５】
0003721897.tif 000016
【図１６】
0003721897.tif 000017
【図１７】
0003721897.tif 000018
【図１８】
0003721897.tif 000019
【図１９】
0003721897.tif 000020
【図２０】
0003721897.tif 000021
【図２１】
0003721897.tif 000022
【図２２】
0003721897.tif 000023
【図２３】
0003721897.tif 000024
【図２４】
0003721897.tif 000025
【図２５】
0003721897.tif 000026
【図２６】
0003721897.tif 000027
【図２７】
0003721897.tif 000028
【図２８】
0003721897.tif 000029