(57)【要約】【課題】触媒の下流側に設けられる酸素センサの異常診断に際して、同酸素センサの異常が判定されるまでの時間を短縮することによりエミッションの悪化を抑制することのできる酸素センサの異常診断装置を提供する。【解決手段】電子制御装置２２は、触媒１８の下流側の空燃比に基づいて触媒１８の上流側の空燃比を強制変更し、そのときに変化する触媒１８の下流側の空燃比に基づいて触媒１８の推定酸素吸蔵量を算出する。そしてこの推定酸素吸蔵量と判定値との比較に基づいて触媒１８の下流側の空燃比を検出する酸素センサ２０の異常の有無を診断する。この診断に際して、電子制御装置２２は、酸素センサ２０の異常の有無を診断するための判定値を推定酸素吸蔵量に基づいて更新する。【選択図】      図１
2006009700.tif 000002
【特許請求の範囲】
【請求項１】
内燃機関の排気通路に配設される排気浄化用の触媒の下流側の空燃比に基づいて同触媒の上流側の空燃比を強制変更し、そのときに変化する前記触媒の下流側の空燃比に基づいて該触媒の推定酸素吸蔵量を算出するとともに、該推定酸素吸蔵量と所定の判定値との比較に基づいて前記下流側の空燃比を検出する酸素センサの異常の有無を診断する診断処理を実行する酸素センサの異常診断装置において、
前記判定値を前記推定酸素吸蔵量に基づいて更新する更新手段を備える
ことを特徴とする酸素センサの異常診断装置。
【請求項２】
前記更新手段は、前記診断処理が実行されたときに算出された前記推定酸素吸蔵量を次回の前記診断処理実行時における前記判定値として設定する
請求項１に記載の酸素センサの異常診断装置。
【請求項３】
前記更新手段は、前記診断処理の実行時に算出された前記推定酸素吸蔵量と前記判定値との乖離度合を同判定値に反映させた値を次回の前記診断処理実行時における前記判定値として設定する
請求項１に記載の酸素センサの異常診断装置。
【請求項４】
請求項１〜３のいずれかに記載の酸素センサの異常診断装置において、
前記触媒の上流側の空燃比が強制変更される前に前記触媒の酸素吸蔵状態を判定するとともに、その判定結果に基づいて前記触媒の酸素吸蔵状態を変化させる吸蔵状態変更手段を備える
ことを特徴とする酸素センサの異常診断装置。
【請求項５】
前記吸蔵状態変更手段は、前記触媒の上流側の空燃比が理論空燃比よりもリーンに強制変更される前に、前記触媒の酸素放出量が不足している旨判定されたときには、前記触媒の上流側の空燃比を理論空燃比よりもリッチに変更する
請求項４に記載の酸素センサの異常診断装置。
【請求項６】
前記吸蔵状態変更手段は、前記触媒の上流側の空燃比が理論空燃比よりもリッチに強制変更される前に、前記触媒での酸素吸蔵量が不足している旨判定されたときには、前記触媒の上流側の空燃比を理論空燃比よりもリーンに変更する
請求項４または５に記載の酸素センサの異常診断装置。
【請求項７】
前記吸蔵状態変更手段は、空燃比制御の実行時に前記酸素センサの出力に基づいて設定されるサブフィードバック補正量に基づき、前記触媒の酸素吸蔵状態を判定する
請求項４〜６のいずれかに記載の酸素センサの異常診断装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内燃機関の排気通路に配設される排気浄化用の触媒の下流側に設けられる酸素センサの異常診断装置に関するものである。
【背景技術】
【０００２】
内燃機関では、排気通路に設けられた排気浄化用の触媒によって排気成分の浄化が行われている。この触媒による排気成分の浄化は、内燃機関で燃焼される混合気の空燃比が所定の範囲内にある場合に効率よく行われる。そこで触媒の上流側に排気の酸素濃度を検出する酸素センサを設け、このセンサの出力信号に基づいて混合気の空燃比を検出し、この検出された空燃比が目標空燃比になるよう燃料噴射量に対する空燃比補正値を求めて燃料噴射量を増減補正する空燃比フィードバック制御が一般的には行われている。
【０００３】
また、触媒による排気成分の浄化状態を把握するために、同触媒の下流側にも上述したような酸素センサを設け、このセンサの出力信号に基づいて触媒を通過した後の排気の空燃比を検出し、上記空燃比補正値に対する修正値を算出する、いわゆる空燃比のサブフィードバック制御も実行される。
【０００４】
ここで、上記サブフィードバック制御では上記酸素センサの出力に基づいてその制御が行われるため、同酸素センサに異常が生じていると正常な制御ができなくなり、ひいては排気の浄化が十分に行われなくなるおそれがある。そこで、この酸素センサの異常の有無を診断する装置が従来、種々提案されており、例えば特許文献１に記載の装置では、以下のようにして酸素センサの異常診断を行うようにしている。
【０００５】
上記触媒は、これを通過する排気の空燃比がリーンの時には排気中の酸素を吸蔵し、同空燃比がリッチのときには吸蔵した酸素を放出する酸素ストレージ作用を有している。そのため、触媒上流側の空燃比をリッチからリーンへ変更した場合、触媒での酸素吸蔵が完了した後に触媒下流側の空燃比はリーンとなり、触媒上流側の空燃比をリーンからリッチへ変更した場合には、触媒からの酸素放出が完了した後に触媒下流側の空燃比はリッチとなる。従って、触媒上流側の空燃比を変更した後の触媒下流側の空燃比の変化を監視することにより触媒の酸素吸蔵量を推定することができる。
【０００６】
ここで、上記酸素センサに異常が生じている場合には触媒下流側の空燃比の変化が同センサの出力に反映されなくなるために、上記酸素吸蔵量を正確に推定することができなくなる。また、触媒の酸素吸蔵量には限界があり、そのような限界量、すなわち最大酸素吸蔵量を超えてまで酸素を吸蔵することはできない。従って、推定された酸素吸蔵量がそのような最大酸素吸蔵量を超えているような場合には同酸素吸蔵量が正確に算出されておらず、これは酸素センサに異常が生じているためであると判断することができる。なお、触媒の最大酸素吸蔵量は、同触媒の経時変化によって減少することはあっても増加することはなく、触媒の使用開始前での限界量が最大値となる。
【０００７】
そこで、特許文献１に記載の装置では上述したような原理に基づき、まず、触媒下流側の空燃比に基づいて触媒上流側の空燃比を強制変更し、そのときの触媒下流側の空燃比の変化を監視することにより触媒の酸素吸蔵量を推定するようにしている。そして、酸素センサに異常ありと診断するための判定値、すなわち上記限界量として工場出荷段階での上記最大酸素吸蔵量を設定し、推定された酸素吸蔵量がこの判定値を超えている場合には、酸素センサに異常ありと診断するようにしている。
【特許文献１】特開２００４−１９５４２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
このように上記特許文献１に記載の装置では、推定された酸素吸蔵量が上記判定値を超えているときに酸素センサに異常ありと診断するようにしているが、その判定値を工場出荷段階での触媒の最大酸素吸蔵量、即ち固定値に設定している。従って、上記装置では触媒の最大酸素吸蔵量が経時変化によって減少している場合であっても、推定される酸素吸蔵量が上記固定値に達するまでは酸素センサの異常を検出することができず、同異常を検出するまでは酸素吸蔵量の算出を継続するべく、空燃比の強制変更も継続される。
【０００９】
このように触媒の最大酸素吸蔵量が経時変化によって減少しているにもかかわらず、上記固定値に達するまで酸素センサの異常が検出されない場合、すなわち酸素センサの異常が検出されるまでの時間が過度に長くなる場合には以下のような不具合の発生が懸念される。
【００１０】
例えば触媒での酸素吸蔵が終了し、それ以上酸素を吸蔵できない状態となっているにもかかわらず、酸素センサの異常が検出されるまでリーン状態の排気が継続して同触媒に導入され、これにより酸素吸蔵時に行われる触媒での排気浄化が滞るようになってエミッションが悪化するおそれがある。
【００１１】
同様に、触媒での酸素放出が終了し、それ以上酸素を放出できない状態となっているにもかかわらず、酸素センサの異常が検出されるまでリッチ状態の排気が継続して同触媒に導入され、これにより酸素放出時に行われる触媒での排気浄化が滞るようになってエミッションが悪化するおそれもある。
【００１２】
この発明は、こうした実情に鑑みてなされたものであり、その目的は、触媒の下流側に設けられる酸素センサの異常診断に際して、同酸素センサの異常が判定されるまでの時間を短縮することによりエミッションの悪化を抑制することのできる酸素センサの異常診断装置を提供することにある。
【課題を解決するための手段】
【００１３】
以下、上記目的を達成するための手段及びその作用効果について記載する。
請求項１に記載の発明は、内燃機関の排気通路に配設される排気浄化用の触媒の下流側の空燃比に基づいて同触媒の上流側の空燃比を強制変更し、そのときに変化する前記触媒の下流側の空燃比に基づいて該触媒の推定酸素吸蔵量を算出するとともに、該推定酸素吸蔵量と所定の判定値との比較に基づいて前記下流側の空燃比を検出する酸素センサの異常の有無を診断する診断処理を実行する酸素センサの異常診断装置において、前記判定値を前記推定酸素吸蔵量に基づいて更新する更新手段を備えることをその要旨とする。
【００１４】
同構成によれば、上記診断処理の実行により算出される推定酸素吸蔵量に基づいて上記判定値が更新されるため、その時の触媒の酸素吸蔵能力に応じた判定値が設定されるようになる。そのため、同判定値を上述したような固定値にする場合と比較して、酸素センサの異常をより早期に判定することができるようになり、同異常が判定されるまでの時間を短縮することができる。従って、酸素センサに異常がある場合には、上記診断処理の実行に際して同時に行われる触媒上流側の空燃比の強制変更もより早い時期に終了されるようになり、もって上述したようなエミッションの悪化を抑制することができるようになる。
【００１５】
ここで、上述したように、触媒の最大酸素吸蔵量は経時変化によって減少することはあっても増加することはない。そのため、上記診断処理の実行により算出された推定酸素吸蔵量が以前に算出された推定酸素吸蔵量よりも大きくなっている場合には、推定酸素吸蔵量が正確に算出されておらず、酸素センサに異常があると診断することができる。そこで、推定酸素吸蔵量に基づく上記判定値の更新については、請求項２に記載の発明によるように、前記更新手段は、前記診断処理が実行されたときに算出された前記推定酸素吸蔵量を次回の前記診断処理実行時における前記判定値として設定する、といった構成を採用することができる。この場合には、以前に算出された推定酸素吸蔵量をその後実行される診断処理での判定値としてそのまま設定するだけで同判定値を更新することができ、簡易な構成で該判定値を更新することができるようになる。
【００１６】
請求項３に記載の発明は、請求項１に記載の酸素センサの異常診断装置において、前記更新手段は、前記診断処理の実行時に算出された前記推定酸素吸蔵量と前記判定値との乖離度合を同判定値に反映させた値を次回の前記診断処理実行時における前記判定値として設定することをその要旨とする。
【００１７】
推定酸素吸蔵量に誤差等が含まれている場合に同推定酸素吸蔵量をそのまま判定値として設定してしまうと、酸素センサの異常判定についてその精度が低下するおそれがある。この点上記構成では、診断処理の実行時に算出された推定酸素吸蔵量とそのときの判定値との乖離度合を同判定値に反映させた値を次回の診断処理実行時における判定値として設定するようにしている。そのため、推定酸素吸蔵量を直接判定値として設定する場合と比較して、そのような誤差等が判定値設定に与える影響を低減することができる。従って、酸素センサの異常判定に際して上記誤差等に起因する判定精度の低下を抑制することができるようになる。
【００１８】
請求項４に記載の発明は、請求項１〜３のいずれかに記載の酸素センサの異常診断装置において、前記触媒の上流側の空燃比が強制変更される前に前記触媒の酸素吸蔵状態を判定するとともに、その判定結果に基づいて前記触媒の酸素吸蔵状態を変化させる吸蔵状態変更手段を備えることをその要旨とする。
【００１９】
上記請求項１〜３のいずれかに記載の異常診断装置では、推定酸素吸蔵量の算出を行うために、触媒下流側の空燃比に基づいて触媒上流側の空燃比を強制的に変更するようにしている。従って、酸素センサに異常があるときでも、その異常が判定される前に触媒上流側の空燃比は同酸素センサの出力に基づいて強制変更されることとなる。そのため、例えば触媒下流側の空燃比がリッチのときには触媒上流側の空燃比をリーンに強制変更する場合にあって、触媒下流側の実際の空燃比がリーンであり、触媒での酸素吸蔵が限界に達していると考えられる場合であっても、酸素センサが触媒下流側の空燃比をリッチと検出してしまうような異常発生時には、触媒上流側の空燃比がリーンに強制変更される。この場合には、触媒での酸素吸蔵がなされないため、リーン化された排気が同触媒で浄化されることなくそのまま排出されてしまうようになり、そのような状態は空燃比の強制変更が中止されるまで、すなわち酸素センサの異常が判定されるまで継続されることとなる。
【００２０】
同様に、例えば触媒下流側の空燃比がリーンのときには触媒上流側の空燃比をリッチに強制変更する場合にあって、触媒下流側の実際の空燃比がリッチであり、触媒に吸蔵されている酸素が無いと考えられる場合であっても、酸素センサが触媒下流側の空燃比をリーンと検出してしまうような異常発生時には、触媒上流側の空燃比がリッチに強制変更される。この場合には、触媒に酸素が吸蔵されていないため、リッチ化された排気が同触媒で浄化されることなくそのまま排出されてしまうようになり、そのような状態は上述したように、酸素センサの異常が判定されるまで継続されることとなる。
【００２１】
そこで上記構成では、触媒上流側の空燃比を強制変更する前に、予め触媒の酸素吸蔵状態を判定し、その判定結果に基づいて同触媒の酸素吸蔵状態を変化させておくようにしている。そのため、触媒上流側の空燃比が強制変更される際には、触媒の酸素吸蔵状態が考慮された状態で同強制変更は実施される。従って、酸素センサに異常が生じている状態で触媒上流側の空燃比が強制変更される場合に生じやすいエミッションの悪化を抑制することができるようになる。
【００２２】
上記吸蔵状態変更手段によって触媒の酸素吸蔵状態を変化させる態様としては、請求項５に記載の発明によるように、前記吸蔵状態変更手段は、前記触媒の上流側の空燃比が理論空燃比よりもリーンに強制変更される前に、前記触媒での酸素放出量が不足している旨判定されたときには、前記触媒の上流側の空燃比を理論空燃比よりもリッチに変更する、といった構成や、請求項６に記載の発明によるように、前記吸蔵状態変更手段は、前記触媒の上流側の空燃比が理論空燃比よりもリッチに強制変更される前に、前記触媒での酸素吸蔵量が不足している旨判定されたときには、前記触媒の上流側の空燃比を理論空燃比よりもリーンに変更する、といった構成を採用することができる。
【００２３】
請求項５に記載の構成によれば、触媒上流側の空燃比が理論空燃比よりもリーンに強制変更されて触媒が酸素を吸蔵する状態になるにもかかわらず、触媒での酸素放出量が不足している旨判定されたとき、換言すれば触媒が既に酸素を十分に吸蔵していると判定されたときには、触媒上流側の空燃比が理論空燃比よりもリッチに変更される。これにより触媒から酸素が放出されるため、触媒上流側の空燃比が理論空燃比よりもリーンに強制変更されても同触媒は酸素を吸蔵することができ、もって触媒上流側の空燃比が強制変更される場合に生じやすいエミッションの悪化を好適に抑制することができるようになる。なお、この場合には、触媒に吸蔵された酸素が全て放出されるまで触媒上流側の空燃比をリッチにしておくことが望ましい。
【００２４】
また、請求項６に記載の構成によれば、触媒上流側の空燃比が理論空燃比よりもリッチに強制変更されて触媒が酸素を放出する状態になるにもかかわらず、触媒での酸素吸蔵量が不足している旨判定されたとき、換言すれば触媒が既に酸素を十分に放出していると判定されたときには、触媒上流側の空燃比が理論空燃比よりもリーンに変更される。これにより酸素が触媒に吸蔵されるため、触媒上流側の空燃比が理論空燃比よりもリッチに強制変更されても同触媒からは酸素を放出することができ、もって触媒上流側の空燃比が強制変更される場合に生じやすいエミッションの悪化を好適に抑制することができるようになる。なお、この場合には、触媒の酸素吸蔵量が最大酸素吸蔵量に達するまで触媒上流側の空燃比をリーンにしておくことが望ましい。
【００２５】
また、上記吸蔵状態変更手段によって行われる触媒の酸素吸蔵状態の判定については、請求項７に記載の発明によるように、前記吸蔵状態変更手段は、空燃比制御の実行時に前記酸素センサの出力に基づいて設定されるサブフィードバック補正量に基づき、前記触媒の酸素吸蔵状態を判定する、といった構成を採用することができる。ちなみに、上記サブフィードバック補正量は周知のように、内燃機関の空燃比制御が実行される際に算出される空燃比フィードバック補正値を修正するための値であって、酸素センサの出力がリーンを示すときには触媒上流側の空燃比をリッチ寄りに変化させる一方、酸素センサの出力がリッチを示すときには触媒上流側の空燃比をリーン寄りに変化させるための値である。従って、このサブフィードバック補正量が触媒上流側の空燃比をリッチ寄りに変化させる側に大きい値となっているときには、触媒が十分に酸素を放出している状態にある、換言すれば触媒での酸素吸蔵量が不足していると判断することができる。一方、同サブフィードバック補正量が触媒上流側の空燃比をリーン寄りに変化させる側に大きい値となっているときには、触媒が十分に酸素を吸蔵している状態にある、換言すれば触媒での酸素放出量が不足していると判断することができる。従って、このようなサブフィードバック補正量に基づいて触媒の酸素吸蔵状態を判定する上記構成によれば、触媒の酸素吸蔵状態を好適に判定することができるようになる。
【発明を実施するための最良の形態】
【００２６】
（第１の実施形態）
以下、この発明にかかる酸素センサの異常診断装置を具体化した第１の実施形態について、図１〜図４を併せ参照して説明する。
【００２７】
図１は、本発明にかかる酸素センサの異常診断装置が適用された車載用の内燃機関と、その周辺構成の概略構成を示している。
同図１に示すように、内燃機関１０の吸気通路１１には、その通路面積を可変とするスロットルバルブ１５が設けられ、その開度制御によりエアクリーナ１４を通じて吸入される空気の量が調整されている。ここで吸入された空気の量（吸入空気量）は、エアフロメータ１６により検出されている。そして吸気通路１１に吸入された空気は、スロットルバルブ１５下流に設けられたインジェクタ１７より噴射された燃料と混合された後、燃焼室１２に送られて、そこで燃焼される。
【００２８】
一方、燃焼室１２での燃焼により生じた排気が送られる排気通路１３には、排気中の成分を浄化する排気浄化用の触媒１８が設けられている。この触媒１８は、理論空燃比近傍での燃焼が行われる状態において、排気中のＨＣやＣＯを酸化するとともに同排気中のＮＯｘを還元して排気を浄化する作用を有している。また、この触媒１８は、これを通過する排気の空燃比が理論空燃比よりもリーンの時には排気中の酸素を吸蔵し、同空燃比が理論空燃比よりもリッチのときには吸蔵した酸素を放出するといった酸素ストレージ作用を有している。
【００２９】
触媒１８の上流側には空燃比センサ１９が設けられている。また、触媒１８の下流側には酸素センサ２０が設けられている。
空燃比センサ１９は、周知の限界電流式酸素センサである。この限界電流式酸素センサは、濃淡電池式酸素センサの検出部に拡散律速層と呼ばれるセラミック層を備えることにより排気中の酸素濃度に応じた出力電流が得られるセンサであり、排気中の酸素濃度と密接な関係にある空燃比が理論空燃比である場合には、その出力電流は「０」になる。また、空燃比がリッチになるにつれて出力電流は負の方向に大きくなり、空燃比がリーンになるにつれて出力電流は正の方向に大きくなる。従って、この空燃比センサ１９の出力に基づき、触媒１８上流側の空燃比についてそのリーン度合いやリッチ度合いを検出することができる。
【００３０】
また、酸素センサ２０は、周知の濃淡電池式の酸素センサである。この濃淡電池式酸素センサの出力特性は、空燃比が理論空燃比よりもリッチのときには約１Ｖ程度の出力が得られ、空燃比が理論空燃比よりもリーンのときには約０Ｖ程度の出力が得られる。また、理論空燃比近傍でその出力電圧が大きく変化するようになっている。従って、この酸素センサ２０の出力に基づき、触媒１８下流側の空燃比がリーンとなっているかリッチとなっているかを検出することができる。なお、この酸素センサ２０は、触媒１８での排気浄化作用の状態を監視するために同触媒１８の下流側に設けられている。すなわち、空燃比センサ１９の出力がリッチを示しているときに酸素センサ２０の出力がリーンとなっているときには、触媒１８から酸素が放出されており、同触媒１８での酸化作用が促進されていることを把握できる。一方、空燃比センサ１９の出力がリーンを示しているときに酸素センサ２０の出力がリッチとなっているときには、触媒１８に酸素が吸蔵されており、同触媒１８での還元作用が促進されていることを把握できる。
【００３１】
上記触媒１８は、燃焼される混合気の空燃比が理論空燃比近傍の狭い範囲（ウインドウ）でのみ、排気中の主要有害成分（ＨＣ、ＣＯ、ＮＯｘ）のすべてを酸化還元反応により効率的に浄化する。そうした触媒１８を有効に機能させるには、混合気の空燃比を上記ウインドウの中心に合わせこむ、厳密な空燃比制御が必要となる。
【００３２】
そうした空燃比の制御は、電子制御装置２２により行われる。電子制御装置２２には、上記エアフロメータ１６や上記空燃比センサ１９、酸素センサ２０、アクセルペダルの踏み込み量を検出するアクセルセンサ、あるいは機関回転速度を検出する回転速度センサを始めとする各種センサ類の検出信号が入力されている。そしてそれらセンサ類の検出信号より把握される内燃機関１０や車両の運転状況に応じて、上記スロットルバルブ１５やインジェクタ１７等を駆動制御して、上記のような空燃比の制御を行っている。そうした電子制御装置２２による空燃比制御の概要は次の通りである。
【００３３】
まず電子制御装置２２は、上記アクセルペダルの踏み込み量や機関回転速度の検出結果に応じて把握される吸入空気量の要求量を求め、それに応じた吸入空気量が得られるようにスロットルバルブ１５の開度を調整する。その一方、エアフロメータ１６により検出される吸入空気量の実測値に対して、理論空燃比が得られるだけの燃料量を求め、それによりインジェクタ１７からの燃料噴射量を調整する。これにより、燃焼室１２で燃焼される混合気の空燃比を、ある程度に理論空燃比に近づけることはできる。ただし、それだけでは上記要求される高精度の空燃比制御には不十分である。
【００３４】
そこで電子制御装置２２は、上記空燃比センサ１９の検出結果により、触媒１８の上流側の空燃比についてその実測値を把握し、この実測値と目標空燃比、すなわち理論空燃比との乖離度合に基づいて算出される空燃比フィードバック補正量に基づいて、インジェクタ１７の燃料噴射量をフィードバック補正している。この空燃比フィードバック制御により、要求される空燃比制御の精度が確保される。
【００３５】
また、電子制御装置２２は、上記酸素センサ２０の検出結果より、触媒１８の酸素吸蔵状態、あるいは酸素放出状態を推定し、この推定に基づいて上記空燃比フィードバック補正量に対する修正を行う。この修正処理では、酸素センサ２０の出力に基づいて算出されるサブフィードバック補正量ＳＦＢが増減補正され、同サブフィードバック補正量ＳＦＢによって上記空燃比フィードバック補正量は修正される。具体的には、酸素センサ２０の出力がリッチを示している間は、触媒１８上流側の空燃比が一定量ずつリーン寄りに変化するように、すなわち触媒１８上流側の空燃比が少しずつリーン側に近づいていくように、サブフィードバック補正量ＳＦＢが一定量ずつマイナス側に増大される。一方、酸素センサ２０の出力がリーンを示している間は、触媒１８上流側の空燃比が一定量ずつリッチ寄りに変化するように、すなわち触媒１８上流側の空燃比が少しずつリッチ側に近づいていくように、サブフィードバック補正量ＳＦＢが一定量ずつプラス側に増大される。このようなサブフィードバック制御により、触媒１８の浄化作用が有効に活用される。
【００３６】
ここで、酸素センサ２０に異常が生じると、その出力信号は実際の排気の空燃比を反映しなくなり、上記サブフィードバック制御を正確に行うことができなくなる。場合によっては、サブフィードバック補正量ＳＦＢによる空燃比フィードバック補正量の修正にも悪影響を与えるおそれもある。そこで、本実施形態では、次のようなアクティブ制御を通じて上記酸素センサ２０の異常の有無を診断するようにしている。このアクティブ制御では、酸素センサ２０の出力が反転する毎に、目標空燃比がリッチ（例えば目標空燃比＝１４．１）とリーン（例えば目標空燃比＝１５．１）との間で反転される。
【００３７】
図２は、上記アクティブ制御が実行されるときの目標空燃比（実線Ｌ１）、空燃比センサ１９により検出された触媒１８上流側の排気の空燃比（実線Ｌ２）、及び酸素センサ２０により検出された触媒１８下流側の排気の空燃比（実線Ｌ３）の変化をそれぞれ示している。
【００３８】
時刻ｔ１において、酸素センサ２０の出力がリーンの状態でアクティブ制御が開始されると、目標空燃比は理論空燃比からリッチに変更される。このように目標空燃比がリッチにされると、空燃比センサ１９の出力が目標とされたリッチ度合を示すまで燃料噴射量は徐々に増量され、その結果時刻ｔ１の後、ある程度遅延して触媒１８上流側の空燃比はリッチになる。
【００３９】
触媒１８上流側の空燃比が理論空燃比よりもリッチになっている間、触媒１８からは酸素が放出される。そのため、酸素センサ２０により検出される触媒１８下流側の空燃比はリーンとなる。そして、吸蔵されていた酸素を触媒１８が全て放出すると、リッチ化されている排気に触媒１８からの酸素が供給されなくなるため、触媒１８下流側の空燃比はリッチに反転する（時刻ｔ２）。このような酸素センサ２０の出力反転によって、触媒１８に吸蔵された酸素が全て放出されたことがわかる。
【００４０】
時刻ｔ２において、酸素センサ２０の出力がリーンからリッチに反転すると、目標空燃比はリッチからリーンに変更される。このように目標空燃比がリーンにされると、空燃比センサ１９の出力が目標とされたリーン度合を示すまで燃料噴射量は徐々に減量され、その結果時刻ｔ２の後、ある程度遅延して触媒１８上流側の空燃比はリーンになる。
【００４１】
触媒１８上流側の空燃比が理論空燃比よりもリーンになっている間、触媒１８は酸素を吸蔵する。そのため、酸素センサ２０により検出される触媒１８下流側の空燃比はリッチとなる。そして、触媒１８による酸素の吸蔵が限界にまで達すると、リーン化されている排気中の酸素が触媒１８に吸蔵されなくなるため、触媒１８下流側の空燃比はリーンに反転する（時刻ｔ３）。このような酸素センサ２０の出力反転によって、触媒１８の酸素吸蔵量が限界量に達したことがわかる。
【００４２】
以後、同様な態様で、酸素センサ２０の出力がリーンからリッチに反転すると、目標空燃比はリッチからリーンに変更され（時刻ｔ４）、酸素センサ２０の出力がリッチからリーンに反転すると、目標空燃比はリーンからリッチに変更される（時刻ｔ５）。
【００４３】
このようにアクティブ制御の実行中では、触媒１８下流側の空燃比に基づいて触媒１８上流側の空燃比を強制変更し、そのときに変化する触媒１８下流側の空燃比に基づいて触媒１８に吸蔵された酸素が全て放出された状態や、触媒１８の酸素吸蔵量が限界量に達した状態を把握することができる。そして、触媒１８上流側の空燃比がリーンであり、かつ触媒１８下流側の空燃比がリッチである期間に触媒１８へ流入した酸素の量を積算すれば、図２に領域Ａで示すような触媒１８の酸素吸蔵量ＣＩＮを推定することができる。一方、触媒１８上流側の空燃比がリッチであり、かつ触媒１８下流側の空燃比がリーンである期間に触媒１８へ流入した排気の酸素不足量を積算すれば、図２に領域Ｂで示すような触媒１８の酸素放出量ＣＯＵＴを推定することができる。なお、触媒１８から放出される酸素は、もともと触媒１８に吸蔵されていた酸素であるため、この酸素放出量ＣＯＵＴは上記酸素吸蔵量ＣＩＮと概ね同じような値となり、実質的には酸素吸蔵量を示す値となる。
【００４４】
ここで、酸素センサ２０に異常が生じてリーン信号やリッチ信号のみを出力するようになると、上記アクティブ制御における同酸素センサ２０の出力反転時期が遅くなる、あるいは反転しなくなる。そのため、上記酸素吸蔵量ＣＩＮや酸素放出量ＣＯＵＴといった推定酸素吸蔵量は、酸素センサ２０が正常である場合と比較して、より大きな値が算出されるようになる。従って過度に大きな酸素吸蔵量ＣＩＮや酸素放出量ＣＯＵＴが算出されるときには、酸素センサ２０に異常が生じていると判断できる。そこで、本実施形態では、酸素センサ２０の異常の有無を診断する診断処理を以下のような態様で実施するようにしている。
【００４５】
図３及び図４は、電子制御装置２２によって所定周期毎に実行される酸素センサの異常診断処理についてその手順を示している。なお、本処理は、適宜設定される異常診断の実行条件が成立しているときに実施される。
【００４６】
本処理が開始されると、まず、酸素センサ２０の異常判定が終了しているか否かが判断される（Ｓ１００）。そして異常判定が終了している旨判断される場合には（Ｓ１００：ＹＥＳ）、本処理は一旦終了される。一方、異常判定が終了していない旨判断される場合には（Ｓ１００：ＮＯ）、次にアクティブ制御の実行条件が成立しているか否かが判断される（Ｓ１１０）。このアクティブ制御の実行条件は適宜設定することができるが、例えば空燃比フィードバック制御が実行されていること、あるいは機関運転状態が安定していることなどをその条件とすることができる。
【００４７】
そして、アクティブ制御の実行条件が成立していない旨判断される場合には（Ｓ１１０：Ｎｏ）、本処理は一旦終了される。一方、アクティブ制御の実行条件が成立している旨判断される場合には（Ｓ１１０：ＹＥＳ）、上述したアクティブ制御が実行される（Ｓ１２０）。
【００４８】
次に、酸素センサ２０の出力が反転したか、すなわちその出力がリッチとリーンとの間で反転したか否かが判断される（Ｓ１３０）。そして、酸素センサ２０の出力が反転している場合には（Ｓ１３０：ＹＥＳ）、酸素センサ２０が正常に機能していると判断することができるため、同酸素センサ２０は正常であると判定され（Ｓ１４０）、本処理は一旦終了される。なお、ステップＳ１４０において、酸素センサ２０は正常であるとの判定がなされると、その時点で酸素センサ２０の異常判定は終了したと認識される。
【００４９】
一方、酸素センサ２０の出力が反転していない旨判断される場合には（Ｓ１３０：ＮＯ）、酸素センサ２０の出力がリッチか否かが判定され（Ｓ１７０）、このステップＳ１７０においてリッチ判定がなされるときには（Ｓ１７０：ＹＥＳ）、空燃比センサ１９の出力がリーンであるか否かが判定される（Ｓ１８０）。
【００５０】
そして、酸素センサ２０の出力がリッチであって（Ｓ１７０：ＹＥＳ）、かつ空燃比センサ１９の出力がリーンではない旨判定されるときには（Ｓ１８０：ＮＯ）、アクティブ制御による触媒１８での酸素吸蔵が未だ行われていないと判断され、酸素吸蔵量ＣＩＮは初期値、すなわち「０」にリセットされて（Ｓ１９０）、本処理は一旦終了される。
【００５１】
一方、酸素センサ２０の出力がリッチであって（Ｓ１７０：ＹＥＳ）、かつ空燃比センサ１９の出力がリーンである旨判定されるときには（Ｓ１８０：ＹＥＳ）、アクティブ制御による触媒１８での酸素吸蔵が行われていると判断される。そこで、次式（１）に基づいて酸素吸蔵量ＣＩＮが積算される（Ｓ２００）。
【００５２】
今回の酸素吸蔵量ＣＩＮ＝前回の酸素吸蔵量ＣＩＮ
＋０．２３×ΔＡ／Ｆ×燃料噴射量Ｑ  …（１）
ここで、「今回の酸素吸蔵量ＣＩＮ」は今回の実行周期で算出される最新の酸素吸蔵量ＣＩＮであり、「前回の酸素吸蔵量ＣＩＮ」は前回の実行周期で算出された過去の酸素吸蔵量ＣＩＮである。また、「０．２３」は空気中の酸素の割合であり、「ΔＡ／Ｆ」は空燃比センサ１９によって検出された空燃比から理論空燃比を減じた値である。また、「燃料噴射量Ｑ」は、本処理とは別に実行される燃料噴射制御において設定される値であり、本処理実行時に内燃機関１０に供給された燃料量である。上記式（１）において、「ΔＡ／Ｆ×燃料噴射量Ｑ」で得られる値は本処理の実行周期の間に触媒１８に流入した未燃焼の空気量に相当する値であり、これに「０．２３」を乗じた値は未燃焼の酸素量に相当する。この未燃焼の酸素が触媒１８に吸蔵されるため、上記式（１）によれば、本処理の実行周期の間に触媒１８が吸蔵した酸素量の積算値が求められる。この酸素吸蔵量ＣＩＮの積算は、後述するステップＳ２１０において否定判定され、その後ステップＳ１３０において肯定判定されるまで、あるいは同ステップＳ２１０において肯定判定されるまで継続される。
【００５３】
こうして今回の処理における酸素吸蔵量ＣＩＮが算出されると、次に酸素吸蔵量ＣＩＮがリッチ異常判定値αを超えているか否かが判定される（Ｓ２１０）。このリッチ異常判定値αは、酸素センサ２０に異常が生じており、その出力がリッチのみを示すようになっていることを判断するための値であり、次式（２）に基づいて設定される。
【００５４】
今回のリッチ異常判定値α＝前回のリッチ異常判定値α＋
｛（前回の積算酸素吸蔵量ＣＩＮＦ−前回のリッチ異常判定値α）／ｎ｝…（２）
ここで、「今回のリッチ異常判定値α」は、今回繰り返し実行される本処理での判定値である。また、「前回のリッチ異常判定値α」は、今回繰り返し実行される本処理の実行時期とは異なる過去の実行時期において実施された異常診断処理、すなわち以前、異常診断の実行条件が成立したときに実施された前回の異常診断処理において用いられていた判定値である。また、「前回の積算酸素吸蔵量ＣＩＮＦ」は、上述した過去の実行時期において実施された異常診断処理、すなわち以前、異常診断の実行条件が成立したときに実施された前回の異常診断処理において積算された最終的な酸素吸蔵量ＣＩＮであり、換言すれば同前回の異常診断処理終了時における最終的な酸素吸蔵量ＣＩＮの値である。従って、上記式（２）において、「（前回の積算酸素吸蔵量ＣＩＮＦ−前回のリッチ異常判定値α）」で得られる値は、上記前回の異常診断処理が実行されたときに算出された推定酸素吸蔵量とそのときの判定値との乖離度合を示すものである。そしてこの乖離度合を上記「前回のリッチ異常判定値α」に加算して、今回繰り返し実行される本処理でのリッチ異常判定値αは設定される。なお、上記「ｎ」は、前回のリッチ異常判定値αに上記乖離度合をどの程度反映させるかについてその程度を決めるための定数であり、本実施形態では「ｎ＝３２」としているが、この値は適宜変更することができる。ちなみに、式（２）に基づいて行われるリッチ異常判定値αの更新処理は上記更新手段を構成している。
【００５５】
そして、酸素吸蔵量ＣＩＮがリッチ異常判定値α以下である旨判定される場合には（Ｓ２１０：ＮＯ）、異常判定が保留され、本処理は一旦終了される。一方、酸素吸蔵量ＣＩＮがリッチ異常判定値αを超えている旨判定される場合には（Ｓ２１０：ＹＥＳ）、酸素吸蔵量ＣＩＮが過度に大きな値として算出されているため、酸素センサ２０がリッチ異常である、即ちその出力がリッチに張り付いており、排気の空燃比についてそのリーンを検出できないという異常が生じていると判定される（Ｓ２２０）。そしてこのような判定がなされると、アクティブ制御が中止され（Ｓ２３０）、本処理は一旦終了される。
【００５６】
また、先のステップＳ１７０において否定判定されたときには、以下のような処理が行われる。
酸素センサ２０の出力がリッチか否かが判定され（Ｓ１７０）、リッチ判定がなされないとき、すなわち酸素センサ２０の出力がリーンであるときには（Ｓ１７０：ＮＯ）、空燃比センサ１９の出力がリッチであるか否かが判定される（Ｓ２４０）。
【００５７】
そして、酸素センサ２０の出力がリーンであって（Ｓ１７０：ＮＯ）、かつ空燃比センサ１９の出力がリッチではない旨判定されるときには（Ｓ２４０：ＮＯ）、アクティブ制御による触媒１８からの酸素放出が未だ行われていないと判断され、酸素放出量ＣＯＵＴは初期値、すなわち「０」にリセットされて（Ｓ２５０）、本処理は一旦終了される。
【００５８】
一方、酸素センサ２０の出力がリーンであって（Ｓ１７０：ＮＯ）、かつ空燃比センサ１９の出力がリッチである旨判定されるときには（Ｓ２４０：ＹＥＳ）、アクティブ制御による触媒１８からの酸素放出が行われていると判断される。そこで、次式（３）に基づいて酸素放出量ＣＯＵＴが積算される（Ｓ２６０）。
【００５９】
今回の酸素放出量ＣＯＵＴ＝前回の酸素放出量ＣＯＵＴ
＋０．２３×ΔＡ／Ｆ×燃料噴射量Ｑ  …（３）
ここで、「今回の酸素放出量ＣＯＵＴ」は今回の実行周期で算出される最新の酸素放出量ＣＯＵＴであり、「前回の酸素放出量ＣＯＵＴ」は前回の実行周期で算出された過去の酸素放出量ＣＯＵＴである。また、「０．２３」は空気中の酸素の割合であり、「ΔＡ／Ｆ」は空燃比センサ１９によって検出された空燃比から理論空燃比を減じた値である。また、「燃料噴射量Ｑ」は、本処理とは別に実行される燃料噴射制御において設定される値であり、本処理実行時に内燃機関１０に供給された燃料量である。上記式（３）において、「ΔＡ／Ｆ×燃料噴射量Ｑ」で得られる値は、本処理の実行周期の間に触媒１８に流入した未燃燃料について、これを燃焼させるために必要な空気量に相当する値であり、排気の空気不足量に相当する。従ってこれに「０．２３」を乗じた値は酸素不足量に相当する。この不足分の酸素が触媒１８から放出されるため、上記式（３）によれば、本処理の実行周期の間に触媒１８から放出された酸素量の積算値が求められる。この酸素放出量ＣＯＵＴの積算は、後述するステップＳ２７０において否定判定され、その後ステップＳ１３０において肯定判定されるまで、あるいは同ステップＳ２７０において肯定判定されるまで継続される。
【００６０】
こうして今回の処理における酸素放出量ＣＯＵＴが算出されると、次に酸素放出量ＣＯＵＴがリーン異常判定値βを超えているか否かが判定される（Ｓ２７０）。このリーン異常判定値βは、酸素センサ２０に異常が生じており、その出力がリーンのみを示すようになっていることを判断するための値であり、次式（４）に基づいて設定される。
【００６１】
今回のリーン異常判定値β＝前回のリーン異常判定値β＋
｛（前回の積算酸素放出量ＣＯＵＴＦ−前回のリーン異常判定値β）／ｎ｝…（４）
ここで、「今回のリーン異常判定値β」は、今回繰り返し実行される本処理での判定値である。また、「前回のリーン異常判定値β」は、今回繰り返し実行される本処理の実行時期とは異なる過去の実行時期において実施された異常診断処理、すなわち以前、異常診断の実行条件が成立したときに実施された前回の異常診断処理において用いられていた判定値である。また、「前回の積算酸素放出量ＣＯＵＴＦ」は、上述した過去の実行時期において実施された異常診断処理、すなわち以前、異常診断の実行条件が成立したときに実施された前回の異常診断処理において積算された最終的な酸素放出量ＣＯＵＴであり、換言すれば同前回の異常診断処理終了時における最終的な酸素放出量ＣＯＵＴの値である。従って、上記式（４）において、「（前回の積算酸素放出量ＣＯＵＴＦ−前回のリーン異常判定値β）」で得られる値は、上記前回の診断処理実行時に算出された推定酸素放出量（推定酸素吸蔵量）とそのときの判定値との乖離度合を示すものである。そしてこの乖離度合を上記「前回のリーン異常判定値β」に加算して、今回繰り返し実行される本処理でのリーン異常判定値βは設定される。なお、上記「ｎ」は、前回のリーン異常判定値βに上記乖離度合をどの程度反映させるかについてその程度を決めるための定数であり、本実施形態では「ｎ＝３２」としているが、この値は適宜変更することができる。ちなみに、式（４）に基づいて行われるリーン異常判定値βの更新処理は上記更新手段を構成している。
【００６２】
そして、酸素放出量ＣＯＵＴがリーン異常判定値β以下である旨判定される場合には（Ｓ２７０：ＮＯ）、異常判定が保留され、本処理は一旦終了される。一方、酸素放出量ＣＯＵＴがリーン異常判定値βを超えている旨判定される場合には（Ｓ２７０：ＹＥＳ）、酸素放出量ＣＯＵＴが過度に大きな値として算出されているため、酸素センサ２０がリーン異常である、即ちその出力がリーンに張り付いており排気の空燃比についてそのリッチを検出できないという異常が生じていると判定される（Ｓ２８０）。そしてこのような判定がなされると、アクティブ制御が中止され（Ｓ２３０）、本処理は一旦終了される。
【００６３】
このように本実施形態では、触媒１８の酸素吸蔵量ＣＩＮや酸素放出量ＣＯＵＴが過度に大きな値となっているかどうかを判定するために、それらの値をリッチ異常判定値αやリーン異常判定値βと比較し、その比較結果に基づいて酸素センサ２０の異常の有無を診断するようにしている。
【００６４】
ここで、上述したような従来の装置では、酸素吸蔵量や酸素放出量が過度に大きな値となっているか否かを判定するための上記判定値を、工場出荷段階での触媒の最大酸素吸蔵量、即ち固定値として設定するようにしている。そのため、触媒１８の最大酸素吸蔵量や最大酸素放出量が経時変化によって減少していたとしても、算出される酸素吸蔵量や酸素放出量が上記固定値に達するまでは酸素センサの異常を検出することができない。
【００６５】
一方、本実施形態では、上記異常診断処理の実行により算出される酸素吸蔵量や酸素放出量に基づき、上記判定値（リッチ異常判定値αやリーン異常判定値β）が更新されるため、その時の触媒１８の酸素吸蔵能力に応じた判定値が設定される。すなわち経時変化による最大酸素吸蔵量や最大酸素放出量の減少に応じて上記判定値は更新される。そのため、同判定値を上述したような固定値にする場合と比較して、酸素センサ２０の異常がより早期に判定され、同異常が判定されるまでの時間も短縮される。従って、酸素センサ２０に異常がある場合には、上記異常診断処理の実行に際して同時に行われる触媒１８上流側の空燃比の強制変更、即ちアクティブ制御もより早い時期に終了されるようになり、もって上述したようなエミッションの悪化は抑制される。
【００６６】
ちなみに、推定された上記「前回の積算酸素吸蔵量ＣＩＮＦ」や上記「前回の積算酸素放出量ＣＯＵＴＦ」に誤差等が含まれている場合、これらの値をそのまま上述したリッチ異常判定値αやリーン異常判定値βとして設定してしまうと、酸素センサ２０の異常判定についてその精度が低下するおそれがある。この点上記実施形態では、上記式（２）や式（４）に示されるように、前回の異常診断処理（以前、異常診断の実行条件が成立したときに実施された前回の異常診断処理）の実行時に算出された推定酸素吸蔵量とそのときの判定値との乖離度合を同判定値に反映させた値を求めるようにしている。そしてこの値を今回の異常診断処理（新たに異常診断の実行条件が成立したことにより実施される今回の異常診断処理）の実行時における判定値として設定するようにしている。換言すれば、今回の異常診断処理（新たに異常診断の実行条件が成立したことにより実施される今回の異常診断処理）の実行時に算出された酸素吸蔵量とそのときの判定値との乖離度合を同判定値に反映させた値を求めるようにしている。そしてその値を次回の異常診断処理（次回、新たに異常診断の実行条件が成立することにより実施される次回の異常診断処理）の実行時における判定値として設定するようにしている。そのため、「前回の積算酸素吸蔵量ＣＩＮＦ」や「前回の積算酸素放出量ＣＯＵＴＦ」を直接リッチ異常判定値αやリーン異常判定値βとして設定する場合と比較して、そのような誤差等がリッチ異常判定値αやリーン異常判定値βの設定に与える影響を低減することができる。従って、酸素センサ２０の異常判定に際して上記誤差等に起因する判定精度の低下も抑制される。
【００６７】
以上説明したように、本実施形態によれば、次のような効果を得ることができる。
（１）内燃機関１０の排気通路１３に配設される触媒１８の下流側の空燃比に基づいて同触媒１８の上流側の空燃比を強制変更し、そのときに変化する触媒１８の下流側の空燃比に基づいて該触媒１８の推定酸素吸蔵量（酸素吸蔵量ＣＩＮや酸素放出量ＣＯＵＴ）を算出するようにしている。そして、該推定酸素吸蔵量と判定値（リッチ異常判定値αやリーン異常判定値β）との比較に基づいて触媒１８の下流側の空燃比を検出する際、その判定値を推定酸素吸蔵量に基づいて更新するようにしている。そのため、その時の触媒１８の酸素吸蔵能力に応じた判定値が設定されるようになり、同判定値を上述したような固定値にする場合と比較して、酸素センサ２０の異常をより早期に判定することができるようになり、同異常が判定されるまでの時間を短縮することができる。従って、酸素センサ２０に異常がある場合には、上記異常診断処理の実行に際して同時に行われる触媒１８上流側の空燃比の強制変更もより早い時期に終了されるようになり、もってエミッションの悪化を抑制することができるようになる。
【００６８】
（２）上記異常診断処理の実行時に算出された推定酸素吸蔵量（酸素吸蔵量ＣＩＮや酸素放出量ＣＯＵＴ）と上記判定値（リッチ異常判定値αやリーン異常判定値β）との乖離度合を同判定値（リッチ異常判定値αやリーン異常判定値β）に反映させた値を、次回の異常診断処理実行時における判定値として設定するようにしている。そのため、酸素センサの異常判定に際して、推定酸素吸蔵量に誤差等が含まれている場合であっても、同誤差等に起因する判定精度の低下を抑制することができるようになる。
（第２の実施形態）
次に、この発明にかかる酸素センサの異常診断装置を具体化した第２の実施形態について、図５を併せ参照して説明する。
【００６９】
上記第１の実施形態における異常診断処理では、推定酸素吸蔵量の算出を行うために、触媒上流側の空燃比を触媒下流側の空燃比に基づいて強制的に変更するようにした。そのため、第１の実施形態では酸素センサ２０に異常があるときでも、その異常が判定される前に触媒上流側の空燃比は同酸素センサ２０の出力に基づいて強制変更されることとなる。
【００７０】
従って、触媒下流側の空燃比がリッチのときには触媒上流側の空燃比がリーンに強制変更されるが、触媒下流側の実際の空燃比がリーンであり、触媒での酸素吸蔵が限界に達していると考えられる場合であっても、酸素センサ２０が触媒下流側の空燃比をリッチと検出してしまうような異常発生時には、触媒上流側の空燃比がリーンに強制変更される。この場合には、触媒１８での酸素吸蔵がなされないため、リーン化された排気が同触媒１８で浄化されることなくそのまま排出されてしまうようになり、そのような状態は空燃比の強制変更が中止されるまで、すなわち酸素センサ２０の異常が判定されるまで継続されることとなる。
【００７１】
同様に、触媒下流側の空燃比がリーンのときには触媒上流側の空燃比をリッチに強制変更されるが、触媒下流側の実際の空燃比がリッチであり、触媒１８に吸蔵されている酸素が無いと考えられる場合であっても、酸素センサ２０が触媒下流側の空燃比をリーンと検出してしまうような異常発生時には、触媒上流側の空燃比がリッチに強制変更される。この場合には、触媒１８に酸素が吸蔵されていないため、リッチ化された排気が同触媒１８で浄化されることなくそのまま排出されてしまうようになり、そのような状態は上述したように、酸素センサ２０の異常が判定されるまで継続されることとなる。
【００７２】
そこで本実施形態では、触媒上流側の空燃比を強制変更する前に、予め触媒１８の酸素吸蔵状態を判定し、その判定結果に基づいて同触媒１８の酸素吸蔵状態を変化させておくといった異常診断前処理を実施するようにしている。そしてこれにより、触媒上流側の空燃比が強制変更される際には、触媒１８の酸素吸蔵状態が考慮された状態でその強制変更が実施されるようにし、もって酸素センサ２０に異常が生じている状態で触媒上流側の空燃比が強制変更される場合に生じやすいエミッションの悪化を抑制するようにしている。
【００７３】
図５は、上記異常診断前処理についてその手順を示しており、本処理は先の図３に示した処理の一部として実施される。すなわち、アクティブ制御の実行条件が成立している旨判断された後（Ｓ１１０：ＹＥＳ）であって、アクティブ制御が実行される（Ｓ１２０）前に実施される。なお、図５に示すステップＳ３００、ステップＳ３２０、及びステップＳ３６０の各処理は、図３のステップＳ１２０の処理、すなわちアクティブ制御の実行処理に相当している。そのため、図５に示す異常診断前処理を実施する場合には、図３に示したステップＳ１２０の処理は省略される。また、この異常診断前処理は上記吸蔵状態変更手段を構成している。
【００７４】
さて、先の図３に示したステップＳ１１０の処理において、アクティブ制御の実行条件が成立している旨判断されると（Ｓ１１０：ＹＥＳ）、図５に示すステップＳ３００の処理が行われ、酸素センサ２０の出力がリッチであるか否かが判定される。ここでは、酸素センサ２０の出力電圧Ｖが「０．４５Ｖ」以上である場合に酸素センサ２０の出力はリッチであると判定される。なお、リッチ判定にかかる電圧である「０．４５Ｖ」はこの値に限定されるものではなく、適宜変更することができる。
【００７５】
そして、酸素センサ２０の出力がリッチである旨判定される場合には（Ｓ３００：ＹＥＳ）、酸素センサ２０の出力が反転した履歴はあるか否かが判断される（Ｓ３１０）。ここでは、その出力がリッチからリーンへ反転した回数とリーンからリッチへ反転した回数とが各１回以上ある場合に肯定判定される。
【００７６】
そして、酸素センサ２０の出力が反転した履歴がある旨判断される場合には（Ｓ３１０：ＹＥＳ）、触媒１８での酸素吸蔵と酸素放出とが正常に行われており、触媒１８上流側の空燃比を強制変更しても同触媒１８の排気浄化作用は得られると判断できる。そのため、アクティブ制御を実施すべく、酸素センサ２０のリッチ出力をもって目標空燃比がリーンに設定される（Ｓ３２０）。そして図３に示したステップＳ１３０以降の処理が実行される。
【００７７】
一方、酸素センサ２０の出力が反転した履歴がない旨判断される場合には（Ｓ３１０：ＮＯ）、酸素センサ２０からリッチ出力しか出力されないといった異常が生じている可能性があり、触媒１８はリーンの排気に曝されていたおそれがある。すなわち触媒１８の酸素吸蔵量が限界にまで達している可能性がある。そこで、次に上記サブフィードバック補正量ＳＦＢの積算値ＴＳＦＢが判定値Ａ未満であるか否かが判定される（Ｓ３３０）。ここでは、例えば過去１０秒間でのサブフィードバック補正量ＳＦＢの積算値ＴＳＦＢが求められ、この積算値ＴＳＦＢが判定値Ａ未満である場合には（Ｓ３３０：ＹＥＳ）、触媒１８上流側の空燃比がかなりリーン寄りとなっており、触媒１８の酸素吸蔵状態は、限界まで酸素を吸蔵している状態であると推定される。すなわち、触媒１８上流側の空燃比が理論空燃比よりもリーンに強制変更された場合、触媒１８からの酸素放出量が不足しているため、同触媒１８は酸素を吸蔵することができないと推定される。
【００７８】
そこで、次に、触媒１８に吸蔵された酸素を所定量だけ放出させる処理が実行される（Ｓ３４０）。ここでは、触媒１８上流側の空燃比が理論空燃比よりもリッチに変更される。より具体的には、上記リーン異常判定値βに「０．８」を乗じた量、すなわち触媒１８の酸素放出能力に相当する値に「０．８」を乗じた量だけ触媒１８から酸素が放出されるまで、目標空燃比は一旦リッチ（例えば目標空燃比＝１４．１）に設定される。このように触媒１８の酸素吸蔵状態を変化させて、触媒１８上流側の空燃比が理論空燃比よりもリーンに強制変更されても同触媒１８が酸素を吸蔵できる状態にした後、目標空燃比はリーンに設定される（Ｓ３２０）。そして図３に示したステップＳ１３０以降の処理が実行される。これらステップＳ３３０及びステップＳ３４０の各処理を行うことにより、触媒１８上流側の空燃比が強制変更される場合に生じやすいエミッションの悪化が抑制される。
【００７９】
ちなみに、本実施形態では、リーン異常判定値βの誤差等を考慮し、この値に「０．８」を乗じた量だけ触媒１８から酸素を放出させるようにしているが、触媒１８に吸蔵された酸素が全て放出されるまで触媒１８上流側の空燃比をリッチにしておく、すなわちリーン異常判定値βに乗算する値を「１．０」とすることが望ましい。
【００８０】
他方、先のステップＳ３３０において、サブフィードバック補正量ＳＦＢの積算値ＴＳＦＢが判定値Ａ以上である旨判定される場合には（Ｓ３３０：ＮＯ）、触媒１８上流側の空燃比がそれほどリーン寄りになっておらず、触媒１８の酸素吸蔵状態は、まだ酸素を吸蔵できる状態であると推定される。すなわち、触媒１８からはある程度酸素が放出されているため、触媒１８上流側の空燃比が理論空燃比よりもリーンに強制変更されても同触媒１８は酸素を吸蔵することができると推定される。そこでこの場合には、触媒１８の酸素吸蔵状態を変化させることなく、目標空燃比はリーンに設定される（Ｓ３２０）。そして図３に示したステップＳ１３０以降の処理が実行される。
【００８１】
また、先のステップＳ３００において否定判定されたときには、以下のような処理が行われる。
酸素センサ２０の出力がリッチか否かが判定され（Ｓ３００）、リッチ判定がなされないとき、すなわち酸素センサ２０の出力がリーンであるときには（Ｓ３００：ＮＯ）、酸素センサ２０の出力が反転した履歴はあるか否かが判断される（Ｓ３５０）。ここでの処理は上記ステップＳ３１０での処理を同一である。
【００８２】
そして、酸素センサ２０の出力が反転した履歴がある旨判断される場合には（Ｓ３５０：ＹＥＳ）、触媒１８での酸素吸蔵と酸素放出とが正常に行われており、触媒１８上流側の空燃比を強制変更しても同触媒１８の排気浄化作用は得られると判断できる。そのため、アクティブ制御を実施すべく、酸素センサ２０のリーン出力をもって目標空燃比がリッチに設定される（Ｓ３６０）。そして図３に示したステップＳ１３０以降の処理が実行される。
【００８３】
一方、酸素センサ２０の出力が反転した履歴がない旨判断される場合には（Ｓ３５０：ＮＯ）、酸素センサ２０からリーン出力しか出力されないといった異常が生じている可能性があり、触媒１８はリッチの排気に曝されていたおそれがある。すなわち触媒１８は吸蔵していた酸素を全て放出している可能性がある。そこで、次に上記サブフィードバック補正量ＳＦＢの積算値ＴＳＦＢが判定値Ｂを超えているか否かが判定される（Ｓ３７０）。ここでは、例えば過去１０秒間でのサブフィードバック補正量ＳＦＢの積算値ＴＳＦＢが求められ、この積算値ＴＳＦＢが判定値Ｂを超えている場合には（Ｓ３７０：ＹＥＳ）、触媒１８上流側の空燃比がかなりリッチ寄りとなっており、触媒１８の酸素吸蔵状態は、限界まで酸素を放出している状態であると推定される。すなわち、触媒１８上流側の空燃比が理論空燃比よりもリッチに強制変更された場合、触媒１８の酸素吸蔵量が不足しているため、同触媒１８は酸素を放出することができないと推定される。
【００８４】
そこで、次に、触媒１８に酸素を所定量だけ吸蔵させる処理が実行される（Ｓ３８０）。ここでは、触媒１８上流側の空燃比が理論空燃比よりもリーンに変更される。より具体的には、上記リッチ異常判定値αに「０．８」を乗じた量、すなわち触媒１８の酸素吸蔵能力に相当する値に「０．８」を乗じた量だけ触媒１８に酸素が吸蔵されるまで、目標空燃比は一旦リーン（例えば目標空燃比＝１５．１）に設定される。こうして触媒１８の酸素吸蔵状態を変化させて、触媒１８上流側の空燃比が理論空燃比よりもリッチに強制変更されても同触媒１８が酸素を放出できる状態にした後、目標空燃比はリッチに設定される（Ｓ３６０）。そして図３に示したステップＳ１３０以降の処理が実行される。これらステップＳ３７０及びステップＳ３８０の各処理を行うことにより、触媒１８上流側の空燃比が強制変更される場合に生じやすいエミッションの悪化が抑制される。
【００８５】
ちなみに、本実施形態では、リッチ異常判定値αの誤差等を考慮し、この値に「０．８」を乗じた量だけ触媒１８に酸素を吸蔵させるようにしているが、触媒１８の酸素吸蔵量が最大酸素吸蔵量に達するまで触媒１８上流側の空燃比をリーンにしておく、すなわちリッチ異常判定値αに乗算する値を「１．０」とすることが望ましい。
【００８６】
他方、先のステップＳ３７０において、サブフィードバック補正量ＳＦＢの積算値ＴＳＦＢが判定値Ａ以下である旨判定される場合には（Ｓ３７０：ＮＯ）、触媒１８上流側の空燃比がそれほどリッチ寄りになっておらず、触媒１８の酸素吸蔵状態は、まだ酸素を放出できる状態であると推定される。すなわち、触媒１８にはある程度酸素が吸蔵されているため、触媒１８上流側の空燃比が理論空燃比よりもリッチに強制変更されても同触媒１８は酸素を放出することができると推定される。そこでこの場合には、触媒１８の酸素吸蔵状態を変化させることなく、目標空燃比はリッチに設定される（Ｓ３６０）。そして図３に示したステップＳ１３０以降の処理が実行される。
【００８７】
このように本実施形態では、触媒１８上流側の空燃比が強制変更される際には、触媒１８の酸素吸蔵状態が考慮された状態で同強制変更は実施される。従って、酸素センサ２０に異常が生じている状態で触媒１８上流側の空燃比が強制変更される場合に生じやすいエミッションの悪化を抑制することができる。
【００８８】
以上説明したように、本実施形態によれば第１の実施形態による効果に加え、さらに次のような効果を得ることができる。
（１）触媒１８の上流側の空燃比が強制変更される前に同触媒１８の酸素吸蔵状態を判定するとともに、その判定結果に基づいて触媒１８の酸素吸蔵状態を変化させるようにしている。そのため、触媒１８上流側の空燃比が強制変更される際には、触媒１８の酸素吸蔵状態が考慮された状態で同強制変更は実施される。従って、酸素センサ２０に異常が生じている状態で触媒１８上流側の空燃比が強制変更される場合に生じやすいエミッションの悪化を抑制することができるようになる。
【００８９】
（２）触媒１８の上流側の空燃比が理論空燃比よりもリーンに強制変更される前に、同触媒１８での酸素放出量が不足している旨判定されたときには、触媒１８の上流側の空燃比を理論空燃比よりもリッチに変更するようにしている。従って、触媒１８上流側の空燃比が理論空燃比よりもリーンに強制変更されて触媒１８が酸素を吸蔵する状態になるにもかかわらず、触媒１８での酸素放出量が不足している旨判定されたとき、換言すれば触媒１８が既に酸素を十分に吸蔵していると判定されたときには、触媒１８上流側の空燃比が理論空燃比よりもリッチに変更される。これにより触媒１８からは酸素が放出され、触媒１８上流側の空燃比が理論空燃比よりもリーンに強制変更されても同触媒１８は酸素を吸蔵することができる。その結果、触媒１８上流側の空燃比が強制変更される場合に生じやすいエミッションの悪化を好適に抑制することができるようになる。
【００９０】
（３）触媒１８の上流側の空燃比が理論空燃比よりもリッチに強制変更される前に、同触媒１８での酸素吸蔵量が不足している旨判定されたときには、触媒１８の上流側の空燃比を理論空燃比よりもリーンに変更するようにしている。従って、触媒１８上流側の空燃比が理論空燃比よりもリッチに強制変更されて触媒１８が酸素を放出する状態になるにもかかわらず、触媒１８での酸素吸蔵量が不足している旨判定されたとき、換言すれば触媒１８が既に酸素を十分に放出していると判定されたときには、触媒１８上流側の空燃比が理論空燃比よりもリーンに変更される。これにより酸素が触媒１８に吸蔵され、触媒１８上流側の空燃比が理論空燃比よりもリッチに強制変更されても同触媒１８は酸素を放出することができる。その結果、触媒１８上流側の空燃比が強制変更される場合に生じやすいエミッションの悪化を好適に抑制することができるようになる。
【００９１】
（４）空燃比制御の実行時に酸素センサ２０の出力に基づいて設定される上記サブフィードバック補正量ＳＦＢが触媒１８上流側の空燃比をリッチ寄りに変化させる側に大きい値となっているときには、触媒１８が十分に酸素を放出している状態にある、換言すれば触媒１８での酸素吸蔵量が不足していると判断することができる。一方、同サブフィードバック補正量ＳＦＢが触媒１８上流側の空燃比をリーン寄りに変化させる側に大きい値となっているときには、触媒１８が十分に酸素を吸蔵している状態にある、換言すれば触媒１８での酸素放出量が不足していると判断することができる。そこで上記実施形態では、このサブフィードバック補正量ＳＦＢに基づき、触媒１８の酸素吸蔵状態を判定するようにしている。従って、触媒１８の酸素吸蔵状態を好適に判定することができるようになる。
【００９２】
なお、上記各実施形態は以下のように変更して実施することもできる。
・上述したように、触媒１８の最大酸素吸蔵量は経時変化によって減少することはあっても増加することはないため、上記異常診断処理の実行により算出された推定酸素吸蔵量が以前に算出された推定酸素吸蔵量よりも大きくなっている場合には、推定酸素吸蔵量が正確に算出されておらず、酸素センサ２０に異常が生じていると診断することができる。そこで、推定酸素吸蔵量に基づく上記判定値の更新を次のような態様で行うようにしてもよい。すなわち、異常診断処理の実行時に算出された推定酸素吸蔵量を次回の異常診断処理（次回、新たに異常診断の実行条件が成立することにより実施される次回の異常診断処理）の実行時における判定値として設定するようにしてもよい。例えば、上記「前回の積算酸素吸蔵量ＣＩＮＦ」をそのまま上記「今回のリッチ異常判定値α」として設定したり、上記「前回の積算酸素放出量ＣＯＵＴＦ」をそのまま上記「今回のリーン異常判定値β」として設定したりするようにしてもよい。この場合には、以前に算出された推定酸素吸蔵量をその後実行される異常診断処理での判定値としてそのまま設定するだけで同判定値を更新することができるため、簡易な構成で該判定値を更新することができるようになる。
【００９３】
ちなみに、この変形例では簡易な構成で該判定値を更新することができるものの、推定酸素吸蔵量に誤差等が含まれているとその誤差等に起因して酸素センサの異常判定にかかる精度が低下してしまうおそれがある。従って、そのような判定精度の低下を抑えるという趣旨では、上記各実施形態で説明したような態様で判定値の更新を行うことが望ましい。
【００９４】
・上記各実施形態では、酸素センサ２０のリッチ異常及びリーン異常について診断するようにしたが、いずれか一方のみの異常を診断するようにしてもよい。
・上記各実施形態において、酸素吸蔵量ＣＩＮと酸素放出量ＣＯＵＴとの平均値ＣＡＶＧを算出するとともに、リッチ異常判定値αとリーン異常判定値βとの平均値γを算出する。そして、平均値ＣＡＶＧが平均値γを超えているときには酸素センサ２０に異常が生じている旨診断されるようにしてもよい。
【００９５】
・上記各実施形態では、上記ΔＡ／Ｆと燃料噴射量Ｑとに基づき、触媒１８に流入した未燃焼の酸素量や排気中の酸素不足量を求めるようにしたが、これら酸素量や酸素不足量をエアフロメータ１６によって検出される吸入空気量と燃料噴射量Ｑとに基づいて求めるようにしてもよい。この場合には、空燃比センサ１９を空燃比のリッチあるいはリーンのみを検出することのできる酸素センサに変更することができる。
【００９６】
・上記第２の実施形態において、サブフィードバック補正量ＳＦＢの積算値ＴＳＦＢに基づき触媒１８の酸素吸蔵不足や酸素放出不足の量を推定し、その不足量が補われるまで触媒１８上流側の空燃比を変更するようにしてもよい。この場合にはより精密に空燃比の変更期間を設定することができ、もって効果的にエミッションの悪化を抑制することができる。
【００９７】
・上記第２の実施形態では、アクティブ制御による空燃比の強制変更に先立って、触媒１８の酸素吸蔵不足及び酸素放出不足を補うようにしたが、いずれか一方のみを補うようにしてもよい。
【００９８】
・本発明は、上記酸素センサ２０が空燃比の度合（リッチ度合やリーン度合）に応じた出力が得られる空燃比センサであっても同様に実施することができる。
【図面の簡単な説明】
【００９９】
【図１】本発明にかかる異常診断装置の第１の実施形態について、これが適用される内燃機関及びその周辺構成を示す概略図。
【図２】酸素吸蔵量の推定態様を説明するための模式図。
【図３】同実施形態における酸素センサの異常診断処理についてその手順を示すフローチャート。
【図４】同実施形態における酸素センサの異常診断処理についてその手順を示すフローチャート。
【図５】第２の実施形態における異常診断前処理についてその手順を示すフローチャート。
【符号の説明】
【０１００】
１０…内燃機関、１１…吸気通路、１２…燃焼室、１３…排気通路、１４…エアクリーナ、１５…スロットルバルブ、１６…エアフロメータ、１７…インジェクタ、１８…触媒  、１９…空燃比センサ、２０…酸素センサ、２２…電子制御装置。
【図１】
2006009700.tif 000003
【図２】
2006009700.tif 000004
【図３】
2006009700.tif 000005
【図４】
2006009700.tif 000006
【図５】
2006009700.tif 000007