(57)【特許請求の範囲】
【請求項１】
内燃機関の排気通路に設けられ、排ガスの空燃比を検出するとともに、混合気の理論空燃比に相当する排ガスの空燃比である理論排ガス空燃比を中心とするリーン側空燃比とリッチ側空燃比との間で次第に変化する出力特性を有する空燃比センサの異常を判定する空燃比センサの異常判定装置であって、
前記空燃比センサの出力値の微分値を算出する微分値算出手段と、
当該算出された空燃比センサの出力値の微分値が所定値になったときの前記空燃比センサの出力値と所定のしきい値との比較結果に基づいて、前記空燃比センサの異常を判定する異常判定手段と、
を備えることを特徴とする空燃比センサの異常判定装置。
【請求項２】
前記空燃比センサは、前記理論排ガス空燃比付近において変化度合が最大になる出力特性を有し、
前記所定値は前記微分値の極値であり、前記しきい値には所定の第１しきい値および第２しきい値が含まれ、
前記異常判定手段は、前記微分値が前記所定値になったときの前記空燃比センサの出力値が前記第１しきい値と前記第２しきい値の間にあるか否かに応じて、前記空燃比センサの異常を判定することを特徴とする、請求項１に記載の空燃比センサの異常判定装置。
【請求項３】
前記空燃比センサは、前記理論排ガス空燃比付近において変化度合が最大になる出力特性を有し、
前記所定値は０と前記微分値の極値との間の値であり、前記しきい値には所定の第３しきい値および第４しきい値が含まれ、
前記異常判定手段は、前記微分値が前記所定値になったときの前記空燃比センサの出力値が前記第３しきい値と前記第４しきい値の間にあるか否かに応じて、前記空燃比センサの異常を判定することを特徴とする、請求項１または２に記載の空燃比センサの異常判定装置。
【請求項４】
前記しきい値には、前記空燃比センサの出力範囲の上限付近および下限付近の少なくとも一方に設定された第５しきい値が含まれ、
前記異常判定手段は、前記空燃比センサの出力値が前記第５しきい値をまたいで変化したか否かに応じて、前記空燃比センサの異常を判定することを特徴とする、請求項１ないし３のいずれかに記載の空燃比センサの異常判定装置。
【請求項５】
前記異常判定手段は、前記内燃機関への燃料の供給を停止するフューエルカット運転の開始に伴い、排ガスの空燃比が前記理論排ガス空燃比のリッチ側から当該理論排ガス空燃比を経てリーン側に変化するとき、および／または前記フューエルカット運転の終了に伴い、排ガスの空燃比が前記理論排ガス空燃比のリーン側から当該理論排ガス空燃比を経てリッチ側に変化するときに、前記空燃比センサの異常判定を実行することを特徴とする、請求項１ないし４のいずれかに記載の空燃比センサの異常判定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内燃機関の排気通路に設けられ、排ガスの空燃比を検出する空燃比センサの異常を判定する空燃比センサの異常判定装置に関する。
【背景技術】
【０００２】
従来のこの種の空燃比センサの異常判定装置として、例えば特許文献１に開示されたものが知られている。この空燃比センサは、混合気の理論空燃比に相当する排ガス空燃比の前後において出力値が急激に変化する出力特性を有する、いわゆる反転タイプのものである。この異常判定装置では、空燃比センサの出力値の微分値を算出し、微分値が所定値以上になった回数をカウントする。そして、所定期間におけるカウント数が所定値を下回っているときに、出力値が停滞している（適切に動いていない）として、空燃比センサに異常が発生していると判定する。
【０００３】
また、従来の他の異常判定装置として、特許文献２に開示されたものが知られている。この空燃比センサは、排ガス空燃比が大きいほど、すなわちリーン側にあるほど、出力値がより大きくなる出力特性を有する。この異常判定装置では、内燃機関への燃料の供給を停止するフューエルカット運転が終了し、通常の運転を再開するときに、空燃比センサの出力値の微分値の最大値を算出し、その最大値が所定値よりも小さい状態が２回連続して発生したときに、出力値が停滞しているとして、空燃比センサに異常が発生していると判定する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第２８１２２５２号公報
【特許文献２】特開２００３−２０９８９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
前述したように、特許文献１および２の異常判定装置はいずれも、空燃比センサの出力値が停滞しているときに、空燃比センサに異常が発生していると判定するものである。このため、それ以外のパターンの空燃比センサの異常が発生したときに、その異常を判定することができない。例えば、空燃比センサの出力値の微分値を空燃比センサの異常判定に用いているので、出力値の全体的なオフセットによる空燃比センサの出力特性のずれの異常が発生しても、微分値は正常時と変わらないため、空燃比センサの異常を判定することができない。
【０００６】
本発明は、以上のような課題を解決するためになされたものであり、空燃比センサの停滞以外の様々なパターンの異常を適切に判定することができる空燃比センサの異常判定装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記の目的を達成するために、請求項１に係る発明は、内燃機関３の排気通路（排気管５）に設けられ、排ガスの空燃比（排ガス空燃比Ａ／ＦＥＸ）を検出するとともに、混合気の理論空燃比に相当する排ガスの空燃比である理論排ガス空燃比Ａ／ＦＴＨＥＸを中心とするリーン側空燃比とリッチ側空燃比との間で次第に変化する出力特性を有する空燃比センサ（酸素濃度センサ２１）の異常を判定する空燃比センサの異常判定装置１であって、空燃比センサの出力値（Ｏ２出力値ＳＶＯ２）の微分値（Ｏ２微分値ＤＳＶＯ２）を算出する微分値算出手段（ＥＣＵ２、図３のステップ３）と、算出された空燃比センサの出力値の微分値が所定値（開始時ピーク微分値ＤＩＮＰ、開始時基本微分値ＤＩＮＢＡＳＥ、終了時ピーク微分値ＤＯＵＴＰ、終了時基本微分値ＤＯＵＴＢＡＳＥ）になったときの空燃比センサの出力値と所定のしきい値（第１上限値ＶＨ１、第２上限値ＶＨ２、第１下限値ＶＬ１、第２下限値ＶＬ２）との比較結果に基づいて、空燃比センサの異常を判定する異常判定手段（ＥＣＵ２、図５、図９）と、を備えることを特徴とする。
【０００８】
本発明の異常判定装置によれば、空燃比センサの出力値の微分値を算出するとともに、算出された微分値が所定値になったときの空燃比センサの出力値と所定のしきい値との比較結果に基づいて、空燃比センサの異常を判定する。空燃比センサは、理論排ガス空燃比を中心とするリーン側空燃比とリッチ側空燃比との間で次第に変化する出力特性を有する。このため、排ガスの空燃比が理論排ガス空燃比を中心として変化する際、空燃比センサが正常であれば、空燃比センサの出力値およびその微分値は、互いに空燃比センサの出力特性に応じた所定の関係を保ちながら変化する。
【０００９】
このような関係から、微分値が所定値になったときの空燃比センサの出力値（以下「基準時出力値」という）が上記の所定の関係に基づく所定のしきい値に対してずれていることは、例えば出力値の全体的または部分的なオフセットなどによる空燃比センサの出力特性のずれの異常が発生していることを示す。したがって、空燃比センサの基準出力値と所定のしきい値を比較し、その比較結果に基づいて空燃比センサの異常を判定することによって、様々なパターンの異常に対応しながら、空燃比センサの異常を適切に判定することができる。また、例えば、そのような空燃比センサの異常判定の結果に応じて、内燃機関の空燃比制御を適切に行うことが可能になり、それにより、内燃機関の排ガス特性を向上させることができる。
【００１０】
請求項２に係る発明は、請求項１に記載の空燃比センサの異常判定装置１において、空燃比センサは、理論排ガス空燃比Ａ／ＦＴＨＥＸ付近において変化度合が最大になる出力特性を有し、所定値は微分値の極値（開始時ピーク微分値ＤＩＮＰ、終了時ピーク微分値ＤＯＵＴＰ）であり、しきい値には所定の第１しきい値（第１上限値ＶＨ１）および第２しきい値（第１下限値ＶＬ１）が含まれ、異常判定手段は、微分値が所定値になったときの空燃比センサの出力値（開始時ピーク出力値ＶＩＮＰ、終了時ピーク出力値ＶＯＵＴＰ）が第１しきい値と第２しきい値の間にあるか否かに応じて、空燃比センサの異常を判定する（図６のステップ４３、図１０のステップ８３）ことを特徴とする。
【００１１】
この構成によれば、空燃比センサの出力値の微分値が極値になったときの空燃比センサの出力値を基準時出力値とするとともに、この基準時出力値が第１しきい値と第２しきい値の間にあるか否かに応じて、空燃比センサの異常を判定する。この空燃比センサは、理論排ガス空燃比付近において変化度合が最大になる出力特性を有するため、出力値の微分値は、理論排ガス空燃比付近において極値になる。このため、基準時出力値が第１しきい値と第２しきい値の間にないことは、理論排ガス空燃比付近において、空燃比センサの出力特性のずれが発生していることを示す。したがって、基準時出力値が第１しきい値と第２しきい値の間にあるか否かに応じて、理論排ガス空燃比付近における空燃比センサの異常を適切に判定することができる。さらに、基準時出力値を定める所定値が微分値の極値であるため、所定値が極値以外である場合と比較して、異常判定を行うべき基準点がより明確に現れるので、空燃比センサの異常判定を適切に行うことができる。
【００１２】
請求項３に係る発明は、請求項１または２に記載の空燃比センサの異常判定装置１において、空燃比センサは、理論排ガス空燃比Ａ／ＦＴＨＥＸ付近において変化度合が最大になる出力特性を有し、所定値は０と微分値の極値との間の値（開始時基本微分値ＤＩＮＢＡＳＥ、終了時基本微分値ＤＯＵＴＢＡＳＥ）であり、しきい値には所定の第３しきい値（第２上限値ＶＨ２）および第４しきい値（第２下限値ＶＬ２）が含まれ、異常判定手段は、微分値が所定値になったときの空燃比センサの出力値（開始時リッチ出力値ＶＩＮＲ、開始時リーン出力値ＶＩＮＬ、終了時リーン出力値ＶＯＵＴＬ、終了時リッチ出力値ＶＯＵＴＲ）が第３しきい値と第４しきい値の間にあるか否かに応じて、空燃比センサの異常を判定する（図７のステップ５４、図８のステップ６２、図１１のステップ９４、図１２のステップ１０２）ことを特徴とする。
【００１３】
この構成によれば、上述した請求項２と同様、空燃比センサは、理論排ガス空燃比付近において変化度合が最大になる出力特性を有するため、出力値の微分値は、理論排ガス空燃比付近において極値になる。また、微分値が０と微分値の極値との間にある所定値になったときの空燃比センサの出力値を基準時出力値とするとともに、この基準時出力値が第３しきい値と第４しきい値の間にあるか否かに応じて、空燃比センサの異常を判定する。このため、基準時出力値が第３しきい値と第４しきい値の間から外れていることは、理論排ガス空燃比付近以外の排ガスの空燃比の領域において空燃比センサの出力特性のずれが発生していることを示す。したがって、基準時出力値が第３しきい値と第４しきい値の間にあるか否かに応じて、上記の排ガスの空燃比の領域における空燃比センサの異常を適切に判定することができる。
【００１４】
また、所定値が０と微分値の極値との間の値であるため、排ガスの空燃比が理論排ガス空燃比を経て変化する際、微分値は、理論排ガス空燃比のリッチ側およびリーン側のいずれにおいても所定値になる。したがって、基準時出力値が第３しきい値と第４しきい値の間にあるか否かに応じて、理論排ガス空燃比付近よりもリッチ側およびリーン側の領域における空燃比センサの異常を適切に判定することができる。また、上述した請求項２の異常判定と併せて異常判定を行う場合には、理論排ガス空燃比付近を含む、排ガスの空燃比のより広い領域を対象として、空燃比センサの異常を総合的にかつきめ細かく適切に判定することができる。
【００１５】
請求項４に係る発明は、請求項１ないし３のいずれかに記載の空燃比センサの異常判定装置１において、しきい値には、空燃比センサの出力範囲の上限付近および下限付近の少なくとも一方に設定された第５しきい値（第２上限値ＶＨ２、第２下限値ＶＬ２）が含まれ、異常判定手段は、空燃比センサの出力値が第５しきい値をまたいで変化したか否かに応じて、空燃比センサの異常を判定する（図７のステップ５２、図８のステップ６４、図１１のステップ９２、図１２のステップ１０４）ことを特徴とする。
【００１６】
この構成によれば、異常判定手段は、空燃比センサの出力値が第５しきい値をまたいで変化したか否かに応じて、空燃比センサの異常を判定する。第５しきい値は、空燃比センサの出力範囲の上限付近および／または下限付近に設定されている。このため、例えば、この第５しきい値を空燃比センサの本来の出力範囲の上限よりも小さな値に設定した場合において、空燃比センサの出力値が第５しきい値をまたいでいないときには、空燃比センサの出力値が出力範囲の上限に達しないようなずれが発生していると判定できる。また、第５しきい値を空燃比センサの本来の出力範囲の上限よりも大きな値に設定した場合において、空燃比センサの出力値が第５しきい値をまたいでいるときには、空燃比センサの出力値が出力範囲の上限を超えるようなずれが発生していると判定できる。
【００１７】
したがって、空燃比センサの出力値が第５しきい値をまたいで変化したか否かに応じて、空燃比センサの出力範囲の上限付近および／または下限付近に相当する排ガスの空燃比の領域における空燃比センサの異常を適切に判定することができる。また、上述した請求項２および３の異常判定と併せて異常判定を行う場合には、排ガスの空燃比のさらに広い領域を対象として、空燃比センサの異常をさらに総合的にかつきめ細かく適切に判定することができる。
【００１８】
請求項５に係る発明は、請求項１ないし４のいずれかに記載の空燃比センサの異常判定装置１において、異常判定手段は、内燃機関３への燃料の供給を停止するフューエルカット運転の開始に伴い、排ガスの空燃比が理論排ガス空燃比Ａ／ＦＴＨＥＸのリッチ側から理論排ガス空燃比Ａ／ＦＴＨＥＸを経てリーン側に変化するとき、および／またはフューエルカット運転の終了に伴い、排ガスの空燃比が理論排ガス空燃比Ａ／ＦＴＨＥＸのリーン側から理論排ガス空燃比Ａ／ＦＴＨＥＸを経てリッチ側に変化するときに、空燃比センサの異常判定を実行する（図３のステップ９，１０，１３，１４）ことを特徴とする。
【００１９】
この構成によれば、フューエルカット運転の開始および／または終了に伴い、排ガスの空燃比が理論排ガス空燃比を経て変化するときに、空燃比センサの異常判定を実行する。このように、フューエルカット運転の開始および／または終了に伴い、排ガスの空燃比が確実にかつ大きく変化するときに空燃比センサの異常判定を実行するので、この異常判定を適切に行うことができる。また、上述したように排ガスの空燃比の様々な領域において異常判定を行う場合には、それらの異常判定を一括して行うことができる。
【００２０】
また、フューエルカット運転の開始時および終了時のいずれにおいても、空燃比センサの異常判定を実行する場合には、空燃比センサの出力特性がフューエルカット運転の開始時と終了時で互いに異なるときでも、それらの異常を個別に判定することができる。
【図面の簡単な説明】
【００２１】
【図１】本発明の実施形態による空燃比センサの異常判定装置を、内燃機関とともに示す図である。
【図２】酸素濃度センサの出力特性を示す図である。
【図３】酸素濃度センサの異常判定処理を示すフローチャートである。
【図４】モニタ条件判定処理を示すフローチャートである。
【図５】フューエルカット運転開始時の酸素濃度センサの異常判定処理を示すフローチャートである。
【図６】フューエルカット運転開始時のピーク異常判定処理を示すフローチャートである。
【図７】フューエルカット運転開始時のリッチ側異常判定処理を示すフローチャートである。
【図８】フューエルカット運転開始時のリーン側異常判定処理を示すフローチャートである。
【図９】フューエルカット運転終了時の酸素濃度センサの異常判定処理を示すフローチャートである。
【図１０】フューエルカット運転終了時のピーク異常判定処理を示すフローチャートである。
【図１１】フューエルカット運転終了時のリッチ側異常判定処理を示すフローチャートである。
【図１２】フューエルカット運転終了時のリーン側異常判定処理を示すフローチャートである。
【図１３】総合判定処理を示すフローチャートである。
【図１４】酸素濃度センサの出力特性を、異常パターンごとに示す図である。
【図１５】フューエルカット運転の開始に伴う各種パラメータの変化を、酸素濃度センサが正常な場合について示す図である。
【図１６】フューエルカット運転の開始に伴う各種パラメータの変化を、酸素濃度センサにリッチ側／リーン側オフセット異常が発生している場合について示す図である。
【図１７】フューエルカット運転の開始に伴う各種パラメータの変化を、酸素濃度センサにリッチ片側／リーン片側オフセット異常が発生している場合について示す図である。
【図１８】フューエルカット運転の開始に伴う各種パラメータの変化を、酸素濃度センサにリッチ側／リーン側つぶれ異常が発生している場合について示す図である。
【図１９】酸素濃度センサの異常パターンとフラグの値の組み合わせとの関係を示すテーブルである。
【発明を実施するための形態】
【００２２】
以下、図面を参照しながら、本発明の好ましい実施形態について説明する。図１に示すように、本発明を適用した異常判定装置１は、ＥＣＵ２を備えており、このＥＣＵ２は、内燃機関（以下「エンジン」という）３の空燃比制御を含む各種の制御処理を行う。エンジン３は、車両（図示せず）に搭載された、例えば４気筒のガソリンエンジンである。エンジン３の吸気管４には、スロットル弁６が設けられ、その下流側の吸気マニホールド（図示せず）には、燃料噴射弁（以下「インジェクタ」という）７が気筒ごとに設けられている。各インジェクタ７の開弁時間および開閉タイミングは、ＥＣＵ２によって制御され、それにより、燃料噴射量ＱＩＮＪおよび燃料噴射時期が制御される。一方、排気管５の下流側には、触媒８が設けられている。この触媒８は、三元触媒で構成されており、酸化還元作用によって、排ガス中のＣＯ、ＨＣおよびＮＯｘを浄化する。
【００２３】
また、排気管５の触媒８よりも下流側には、酸素濃度センサ（以下「Ｏ２センサ」という）２１が設けられている。Ｏ２センサ２１は、触媒８の下流側における排ガス中の酸素濃度を検出し、混合気の空燃比に応じて変化する排ガスの空燃比（以下「排ガス空燃比」という）Ａ／ＦＥＸに応じた電圧を有する信号をＥＣＵ２に出力する。図２に示すように、Ｏ２センサ２１は、混合気の理論空燃比に相当する排ガスの空燃比（以下「理論排ガス空燃比」という）Ａ／ＦＴＨＥＸのときに、Ｏ２センサ２１の出力信号の電圧値（以下「Ｏ２出力値」という）ＳＶＯ２がストイキ出力値ＶＴＨＥＸ（例えば４５０ｍＶ）を示すとともに、理論排ガス空燃比Ａ／ＦＴＨＥＸの前後において急激に変化する出力特性を有する。
【００２４】
具体的には、Ｏ２出力値ＳＶＯ２は、排ガス空燃比Ａ／ＦＥＸがリッチなときには、高い値（例えば６００ｍＶ）を示し、排ガス空燃比Ａ／ＦＥＸがリーンなときには、低い値（例えば１５０ｍＶ）を示すとともに、その間では急激に変化する。また、その変化度合は、排ガス空燃比Ａ／ＦＥＸに応じて変化し、排ガス空燃比Ａ／ＦＥＸが理論排ガス空燃比Ａ／ＦＴＨＥＸ付近のときに、この例では、排ガス空燃比Ａ／ＦＥＸが、Ｏ２出力値ＳＶＯ２がストイキ出力値ＶＴＨＥＸよりも５０ｍＶだけ小さい値（＝４００ｍＶ）に相当するときに、最大になる。また、Ｏ２センサ２１の検出部（図示せず）には、温度センサ２２が設けられている。温度センサ２２は、検出部の温度ＴＳＯ２を検出し、その検出信号をＥＣＵ２に出力する。
【００２５】
また、吸気管４のスロットル弁６よりも上流側には、エアフローメータ２３が設けられている。エアフローメータ２３は、吸気管４を流れる空気の質量（以下「吸気量」という）ＧＡＩＲを検出し、その検出信号をＥＣＵ２に出力する。
【００２６】
また、ＥＣＵ２は、ＣＰＵ、ＲＡＭ、ＲＯＭおよび入出力インターフェース（いずれも図示せず）などから成るマイクロコンピュータ（図示せず）で構成されている。ＥＣＵ２は、上述したセンサ２１〜２３の検出信号に応じ、ＲＯＭに記憶された制御プログラムなどに基づいて、空燃比制御などのための各種の演算処理を実行する。なお、本実施形態では、ＥＣＵ２は、微分値算出手段および異常判定手段に相当する。
【００２７】
次に、図３〜図１３を参照しながら、ＥＣＵ２で実行されるＯ２センサ２１の異常判定処理について説明する。この異常判定処理は、Ｏ２センサ２１の出力特性の変化に伴う出力値ＳＶＯ２の異常を判定するものであり、図３がメインルーチン、図４〜図１３がサブルーチンに相当する。各処理は、所定時間ごとに実行される。
【００２８】
図３のメインルーチンではまず、ステップ１（「Ｓ１」と図示。以下同じ）において、モニタ条件判定処理を実行する。このモニタ条件判定処理は、Ｏ２センサ２１の異常判定処理の実行条件が整っているか否かを判定するものであり、図４はそのサブルーチンを示す。
【００２９】
本処理ではまず、ステップ２１〜２３において、以下の（１）〜（３）の条件が成立しているか否かをそれぞれ判別する。
（１）Ｏ２センサ２１の検出部の温度ＴＳＯ２が所定温度ＴＲＥＦ以上であること
（２）Ｏ２センサ異常フラグＦ＿ＳＯ２ＥＲＲが「０」であること（Ｏ２センサ２１の異常が確定していないこと）
（３）Ｏ２センサ２１に断線や出力値の停滞・振動などの他の異常が発生していないこと
【００３０】
これらの（１）〜（３）の条件がすべて成立しているときには、モニタ条件が成立していると判定し、そのことを表すために、ステップ２４において、モニタ条件フラグＦ＿ＭＯＮを「１」にセットし、本処理を終了する。一方、（１）〜（３）の条件のいずれかが成立していないときには、モニタ条件が成立していないと判定し、そのことを表すために、ステップ２５において、モニタ条件フラグＦ＿ＭＯＮを「０」にセットし、本処理を終了する。
【００３１】
図３に戻り、前記ステップ１に続くステップ２では、モニタ条件フラグＦ＿ＭＯＮが「１」であるか否かを判別する。この答がＮＯで、モニタ条件が成立していないときには、そのまま本処理を終了する。一方、上記ステップ２の答がＹＥＳで、モニタ条件が成立しているときには、Ｏ２出力値ＳＶＯ２の今回値と前回値との差を、Ｏ２微分値ＤＳＶＯ２として算出する（ステップ３）とともに、算出されたＯ２微分値ＤＳＶＯ２を、Ｏ２出力値ＳＶＯ２の今回値とともに記憶する（ステップ４）。
【００３２】
次に、ステップ５において、フューエルカットフラグＦ＿ＦＣが「１」であるか否かを判別する。この答がＹＥＳで、エンジン３がフューエルカット（Ｆ／Ｃ）運転中のときには、ステップ６において、Ｆ／Ｃ開始時異常判定終了フラグＦ＿ＩＮＥＮＤが「１」であるか否かを判別する。この答がＹＥＳで、フューエルカット運転開始時の異常判定がすでに終了しているときには、そのまま本処理を終了する。
【００３３】
一方、上記ステップ６の答がＮＯで、フューエルカット運転開始時の異常判定がまだ終了していないときには、ステップ７において、フューエルカット運転の終了時からの吸気量ＧＡＩＲの積算値（以下「終了時吸気量積算値」という）ΣＧＯＵＴを０にリセットし、ステップ８において、フューエルカット運転の開始時から前回時までの吸気量ＧＡＩＲの積算値ΣＧＩＮに吸気量ＧＡＩＲを加算することによって、今回時までの吸気量ＧＡＩＲの積算値（以下「開始時吸気量積算値」という）ΣＧＩＮを算出する。
【００３４】
次に、ステップ９において、算出した開始時吸気量積算値ΣＧＩＮが第１所定量ＧＲＥＦ１以上であるか否かを判別する。この答がＮＯのときには、そのまま本処理を終了する。一方、上記ステップ９の答がＹＥＳのときには、フューエルカット運転を開始してから十分な量の空気がエンジン３に供給され、フューエルカット運転の実行に伴って排ガス空燃比Ａ／ＦＥＸがリッチ側からリーン側に変化したとして、ステップ１０において、フューエルカット運転開始時の異常判定処理を実行し、ステップ１５に進む。このフューエルカット運転開始時の異常判定処理は、フューエルカット運転の開始後に前記ステップ４で記憶されたＯ２出力値ＳＶＯ２およびＯ２微分値ＤＳＶＯ２を用いて、Ｏ２センサ２１の異常を判定するものであり、図５はそのサブルーチンを示す。
【００３５】
本処理ではまず、ステップ３１において、開始時ピーク異常判定終了フラグＦ＿ＩＮＰＥＮＤが「１」であるか否かを判別する。この答がＮＯのときには、ステップ３２において、フューエルカット運転開始時のピーク異常判定処理を実行し、図５の処理を終了する。このピーク異常判定処理は、理論排ガス空燃比Ａ／ＦＴＨＥＸ付近におけるＯ２センサ２１の出力特性のずれの異常を判定するものであり、図６はそのサブルーチンを示す。
【００３６】
本処理ではまず、ステップ４０において、開始時ピーク微分値ＤＩＮＰを算出する。この開始時ピーク微分値ＤＩＮＰは、Ｏ２微分値ＤＳＶＯ２が極小値を示すとき（ピーク時）の値であり、次のようにして算出される。まず、フューエルカット運転を開始してから開始時吸気量積算値ΣＧＩＮが第１所定量ＧＲＥＦ１以上になるまでの間（以下、この期間を「開始時移行期間」という）に記憶されたＯ２微分値ＤＳＶＯ２のうち、Ｏ２微分値ＤＳＶＯ２が極小値になったタイミングをピーク時と判定する。このタイミングは、Ｏ２微分値ＤＳＶＯ２をさらに微分した値（Ｏ２微分値の増加量）が３回以上連続して正の値になったときの１回目の制御サイクルの開始タイミングに定められる。次に、ピーク時のＯ２微分値ＤＳＶＯ２を開始時ピーク微分値ＤＩＮＰとして算出する。
【００３７】
次に、ステップ４１において、開始時ピーク微分値ＤＩＮＰに対応するＯ２出力値ＳＶＯ２を開始時ピーク出力値ＶＩＮＰとして算出する。
【００３８】
なお、前述したように、Ｏ２センサ２１は、理論排ガス空燃比Ａ／ＦＴＨＥＸ付近において出力値の変化度合が最大になる出力特性を有するため、Ｏ２センサ２１が正常なときには、開始時ピーク微分値ＤＩＮＰおよび開始時ピーク出力値ＶＩＮＰは、理論排ガス空燃比Ａ／ＦＴＨＥＸ付近において得られる。
【００３９】
次に、ステップ４２において、開始時ピーク微分値ＤＩＮＰの１／２（＝ＤＩＮＰ／２）を、開始時基本微分値ＤＩＮＢＡＳＥとして算出する。この開始時基本微分値ＤＩＮＢＡＳＥは、後述するリッチ側異常判定およびリーン側異常判定に用いられる。
【００４０】
次に、ステップ４３において、算出した開始時ピーク出力値ＶＩＮＰが第１下限電圧ＶＬ１以上で、かつ第１上限電圧ＶＨ１以下であるか否かを判別する。この第１下限電圧ＶＬ１は、ストイキ出力値ＶＴＨＥＸよりも１５０ｍＶだけ小さな値（＝３００ｍＶ）に、第１上限電圧ＶＨ１は、ストイキ出力値ＶＴＨＥＸよりも５０ｍＶだけ大きな値（＝５００ｍＶ）に、それぞれ設定されている。ステップ４３の答がＹＥＳで、ＶＬ１≦ＶＩＮＰ≦ＶＨ１のときには、理論排ガス空燃比Ａ／ＦＴＨＥＸ付近におけるＯ２センサ２１の出力特性は正常であると判定し、そのことを表すために、ステップ４４において、開始時ピーク異常フラグＦ＿ＩＮＰＥＲＲを「０」にセットし、ステップ４６に進む。
【００４１】
一方、前記ステップ４３の答がＮＯで、ＶＩＮＰ＜ＶＬ１またはＶＩＮＰ＞ＶＨ１のときには、理論排ガス空燃比Ａ／ＦＴＨＥＸ付近におけるＯ２センサ２１の出力特性のずれの異常が発生していると判定し、そのことを表すために、ステップ４５において、開始時ピーク異常フラグＦ＿ＩＮＰＥＲＲを「１」にセットし、ステップ４６に進む。
【００４２】
ステップ４４またはステップ４５に続くステップ４６では、フューエルカット運転開始時のピーク異常判定処理が終了したことを表すために、開始時ピーク異常判定終了フラグＦ＿ＩＮＰＥＮＤを「１」にセットし、本処理を終了する。
【００４３】
図５に戻り、前記ステップ３１の答がＹＥＳで、開始時ピーク異常判定終了フラグＦ＿ＩＮＰＥＮＤが「１」のときには、ステップ３３において、開始時リッチ異常判定終了フラグＦ＿ＩＮＲＥＮＤが「１」であるか否かを判別する。この答がＮＯのときには、ステップ３４において、フューエルカット運転開始時のリッチ側異常判定処理を実行し、図５の処理を終了する。このリッチ側異常判定処理は、理論排ガス空燃比Ａ／ＦＴＨＥＸ付近よりもリッチ側の領域におけるＯ２センサ２１の出力特性のずれの異常を判定するものであり、図７はそのサブルーチンを示す。
【００４４】
本処理ではまず、ステップ５１において、開始時上限通過フラグＦ＿ＩＮＶＨ２を設定する。図示しないが、この開始時上限通過フラグＦ＿ＩＮＶＨ２は、開始時移行期間の始点からピーク時までの間に記憶されたＯ２出力値ＳＶＯ２が、第２上限電圧ＶＨ２よりも大きい側から第２上限電圧ＶＨ２をまたいで小さい側に変化したときに「０」にセットされ、それ以外のときに「１」にセットされる。第２上限電圧ＶＨ２は、前記第１上限電圧ＶＨ１よりも大きく、Ｏ２センサ２１の出力範囲の上限よりも５０ｍＶだけ小さな値（＝５５０ｍＶ）に設定されている。
【００４５】
次に、ステップ５２において、開始時上限通過フラグＦ＿ＩＮＶＨ２が「０」であるか否かを判別する。この答がＮＯで、Ｏ２出力値ＳＶＯ２が、第２上限電圧ＶＨ２をまたいで大きい側から小さい側に変化していないときには、Ｏ２出力値ＳＶＯ２が出力範囲の上限に達しない異常が発生しているとして、ステップ５６において、開始時リッチ異常フラグＦ＿ＩＮＲＥＲＲを「１」にセットし、ステップ５７に進む。
【００４６】
一方、上記ステップ５２の答がＹＥＳで、Ｏ２出力値ＳＶＯ２が、第２上限電圧ＶＨ２をまたいで変化しているときには、Ｏ２出力値ＳＶＯ２が出力範囲の上限に達していると判定し、ステップ５３において、開始時リッチ出力値ＶＩＮＲを算出する。この開始時リッチ出力値ＶＩＮＲは、開始時移行期間の始点からピーク時までの間において、Ｏ２微分値ＤＳＶＯがステップ４２で算出された開始時基本微分値ＤＩＮＢＡＳＥに最も近い値を示すときのＯ２出力値ＳＶＯ２である。具体的には、開始時移行期間の始点からピーク時までの間に前記ステップ４で記憶されたＯ２微分値ＤＳＶＯの中から、開始時基本微分値ＤＩＮＢＡＳＥとの差の絶対値（＝｜ＤＩＮＢＡＳＥ−ＤＳＶＯ２｜）が最も小さいＯ２微分値ＤＳＶＯを求め、それに対応するＯ２出力値ＳＶＯ２を開始時リッチ出力値ＶＩＮＲとして算出する。
【００４７】
次に、ステップ５４において、算出した開始時リッチ出力値ＶＩＮＲが、第２下限電圧ＶＬ２以上で、かつ前記第２上限電圧ＶＨ２以下であるか否かを判別する。この第２下限電圧ＶＬ２は、前記第１下限電圧ＶＬ１よりも小さく、かつＯ２センサ２１の出力範囲の下限よりも５０ｍＶだけ大きな値（＝２００ｍＶ）に設定されている。ステップ５４の答がＮＯで、ＶＩＮＲ＜ＶＬ２またはＶＩＮＲ＞ＶＨ２のときには、第２上限電圧ＶＨ２に相当する排ガス空燃比Ａ／ＦＥＸと理論排ガス空燃比Ａ／ＦＴＨＥＸ付近の間の領域において、Ｏ２センサ２１の出力特性のずれの異常が発生していると判定し、前記ステップ５６に進み、開始時リッチ異常フラグＦ＿ＩＮＲＥＲＲを「１」にセットする。
【００４８】
一方、上記ステップ５４の答がＹＥＳで、ＶＬ２≦ＶＩＮＲ≦ＶＨ２のときには、上記の領域におけるＯ２センサ２１の出力特性は正常であると判定するとともに、前記ステップ５２の答もＹＥＳであることから、理論排ガス空燃比Ａ／ＦＴＨＥＸ付近よりもリッチ側の領域におけるＯ２センサ２１の出力特性は正常であると判定し、そのことを表すために、ステップ５５において、開始時リッチ異常フラグＦ＿ＩＮＲＥＲＲを「０」にセットし、ステップ５７に進む。
【００４９】
ステップ５５またはステップ５６に続くステップ５７では、フューエルカット運転開始時のリッチ側異常判定処理が終了したことを表すために、開始時リッチ異常判定終了フラグＦ＿ＩＮＲＥＮＤを「１」にセットし、本処理を終了する。
【００５０】
図５に戻り、前記ステップ３３の答がＹＥＳで、開始時リッチ異常判定終了フラグＦ＿ＩＮＲＥＮＤが「１」のときには、ステップ３５において、開始時リーン異常判定終了フラグＦ＿ＩＮＲＥＮＤが「１」であるか否かを判別する。この答がＮＯのときには、ステップ３６において、フューエルカット運転開始時のリーン側異常判定処理を実行し、図５の処理を終了する。このリーン側異常判定処理は、理論排ガス空燃比Ａ／ＦＴＨＥＸ付近よりもリーン側の領域におけるＯ２センサ２１の出力特性のずれの異常を判定するものであり、図８はそのサブルーチンを示す。
【００５１】
本処理ではまず、ステップ６１において、開始時リーン出力値ＶＩＮＬを算出する。この開始時リーン出力値ＶＩＮＬは、ピーク時から開始時移行期間の終点までの間において、Ｏ２微分値ＤＳＶＯが開始時基本微分値ＤＩＮＢＡＳＥに最も近い値を示すときのＯ２出力値ＳＶＯ２である。具体的には、ピーク時から開始時移行期間の終点までの間に記憶されたＯ２微分値ＤＳＶＯの中から、開始時基本微分値ＤＩＮＢＡＳＥとの差の絶対値が最も小さいＯ２微分値ＤＳＶＯを求め、それに対応するＯ２出力値ＳＶＯ２を開始時リーン出力値ＶＩＮＬとして算出する。
【００５２】
次に、ステップ６２において、算出した開始時リーン出力値ＶＩＮＬが、前記第２下限電圧ＶＬ２以上で、かつ前記第２上限電圧ＶＨ２以下であるか否かを判別する。この答がＮＯで、ＶＩＮＬ＜ＶＬ２またはＶＩＮＬ＞ＶＨ２のときには、第２下限電圧ＶＬ２に相当する排ガス空燃比Ａ／ＦＥＸと理論排ガス空燃比Ａ／ＦＴＨＥＸ付近の間の領域において、Ｏ２センサ２１の出力特性のずれの異常が発生していると判定し、ステップ６６において、開始時リーン異常フラグＦ＿ＩＮＬＥＲＲを「１」にセットし、ステップ６７に進む。
【００５３】
一方、上記ステップ６２の答がＹＥＳで、ＶＬ２≦ＶＩＮＬ≦ＶＨ２のときには、上記の領域におけるＯ２センサ２１の出力特性は正常であると判定し、ステップ６３において、開始時下限通過フラグＦ＿ＩＮＶＬ２を設定する。図示しないが、この開始時下限通過フラグＦ＿ＩＮＶＬ２は、ピーク時から開始時移行期間の終点までの間に記憶されたＯ２出力値ＳＶＯ２が、第２下限電圧ＶＬ２よりも大きい側から第２下限電圧ＶＬ２をまたいで小さい側に変化したときに「０」にセットされ、それ以外のときに「１」にセットされる。
【００５４】
次に、ステップ６４において、開始時下限通過フラグＦ＿ＩＮＶＬ２が「０」であるか否かを判別する。この答がＮＯで、Ｏ２出力値ＳＶＯ２が、第２下限電圧ＶＬ２をまたいで大きい側から小さい側に変化していないときには、Ｏ２出力値ＳＶＯ２が出力範囲の下限に達しない異常が発生しているとして、前記ステップ６６に進み、開始時リーン異常フラグＦ＿ＩＮＬＥＲＲを「１」にセットする。
【００５５】
一方、上記ステップ６４の答がＹＥＳで、Ｏ２出力値ＳＶＯ２が、第２下限電圧ＶＬ２をまたいで変化しているときには、Ｏ２出力値ＳＶＯ２が出力範囲の下限に達していると判定するとともに、前記ステップ６２の答もＹＥＳであることから、理論排ガス空燃比Ａ／ＦＴＨＥＸ付近よりもリーン側の領域におけるＯ２センサ２１の出力特性は正常であると判定し、そのことを表すために、ステップ６５において、開始時リーン異常フラグＦ＿ＩＮＬＥＲＲを「０」にセットし、ステップ６７に進む。
【００５６】
ステップ６５またはステップ６６に続くステップ６７では、フューエルカット運転開始時のリーン側異常判定処理が終了したことを表すために、開始時リーン異常判定終了フラグＦ＿ＩＮＬＥＮＤを「１」にセットし、本処理を終了する。
【００５７】
図５に戻り、前記ステップ３５の答がＹＥＳで、開始時リーン異常判定終了フラグＦ＿ＩＮＬＥＮＤが「１」のときには、フューエルカット運転開始時の一連の異常判定処理が終了しているため、そのことを表すために、ステップ３７において、開始時異常判定終了フラグＦ＿ＩＮＥＮＤを「１」にセットし、本処理を終了する。
【００５８】
図３に戻り、前記ステップ５の答がＮＯで、フューエルカットフラグＦ＿ＦＣが「０」であり、エンジン３のフューエルカット運転が終了しているときには、ステップ１１において、開始時吸気量積算値ΣＧＩＮを０にリセットし、ステップ１２において、前回時までの終了時吸気量積算値ΣＧＯＵＴに吸気量ＧＡＩＲを加算することによって、今回時までの終了時吸気量積算値ΣＧＯＵＴを算出する。
【００５９】
次に、ステップ１３において、算出した終了時吸気量積算値ΣＧＯＵＴが第２所定量ＧＲＥＦ２以上であるか否かを判別する。この答がＮＯのときには、そのまま本処理を終了する。一方、上記ステップ１３の答がＹＥＳのときには、フューエルカット運転の終了に伴って排ガス空燃比Ａ／ＦＥＸがリーン側からリッチ側に変化したとして、ステップ１４において、フューエルカット運転終了時の異常判定処理を実行し、ステップ１５に進む。このフューエルカット運転終了時の異常判定処理は、前述したフューエルカット運転開始時の異常判定処理と同様のものであり、図９はそのサブルーチンを示す。
【００６０】
本処理ではまず、ステップ７１において、終了時ピーク異常判定終了フラグＦ＿ＯＵＴＰＥＮＤが「１」であるか否かを判別する。この答がＮＯのときには、ステップ７２において、フューエルカット運転終了時のピーク異常判定処理を実行し、図９の処理を終了する。図１０はそのサブルーチンを示す。
【００６１】
本処理ではまず、ステップ８０において、終了時ピーク微分値ＤＯＵＴＰを算出する。この終了時ピーク微分値ＤＯＵＴＰは、Ｏ２微分値ＤＳＶＯ２が極大値を示すとき（ピーク時）の値であり、フューエルカット運転を終了してから終了時吸気量積算値ΣＧＯＵＴが第２所定量ＧＲＥＦ２以上になるまでの間（以下、この期間を「終了時移行期間」という）に記憶されたＯ２微分値ＤＳＶＯ２に基づき、前述した開始時ピーク微分値ＤＩＮＰと同様にして算出される。
【００６２】
次に、ステップ８１において、終了時ピーク微分値ＤＯＵＴＰに対応するＯ２出力値ＳＶＯ２を終了時ピーク出力値ＶＯＵＴＰとして算出する。
【００６３】
次に、ステップ８２において、終了時ピーク微分値ＤＯＵＴＰの１／２（＝ＤＯＵＴＰ／２）を、終了時基本微分値ＤＯＵＴＢＡＳＥとして算出する。この終了時基本微分値ＤＯＵＴＢＡＳＥは、後述するリッチ側異常判定およびリーン側異常判定に用いられる。
【００６４】
次に、ステップ８３において、算出した終了時ピーク出力値ＶＯＵＴＰが前記第１下限電圧ＶＬ１以上で、かつ前記第１上限電圧ＶＨ１以下であるか否かを判別する。この答がＹＥＳで、ＶＬ１≦ＶＯＵＴＰ≦ＶＨ１のときには、理論排ガス空燃比Ａ／ＦＴＨＥＸ付近におけるＯ２センサ２１の出力特性は正常であると判定し、そのことを表すために、ステップ８４において、終了時ピーク異常フラグＦ＿ＯＵＴＰＥＲＲを「０」にセットし、ステップ８６に進む。
【００６５】
一方、前記ステップ８３の答がＮＯで、ＶＯＵＴＰ＜ＶＬ１またはＶＯＵＴＰ＞ＶＨ１のときには、理論排ガス空燃比Ａ／ＦＴＨＥＸ付近におけるＯ２センサ２１の出力特性のずれの異常が発生していると判定し、そのことを表すために、ステップ８５において、終了時ピーク異常フラグＦ＿ＯＵＴＰＥＲＲを「１」にセットし、ステップ８６に進む。
【００６６】
ステップ８４またはステップ８５に続くステップ８６では、フューエルカット運転終了時のピーク異常判定処理が終了したことを表すために、終了時ピーク異常判定終了フラグＦ＿ＯＵＴＰＥＮＤを「１」にセットし、本処理を終了する。
【００６７】
図９に戻り、前記ステップ７１の答がＹＥＳで、終了時ピーク異常判定終了フラグＦ＿ＯＵＴＰＥＮＤが「１」のときには、ステップ７３において、終了時リーン異常判定終了フラグＦ＿ＯＵＴＬＥＮＤが「１」であるか否かを判別する。この答がＮＯのときには、ステップ７４において、フューエルカット運転終了時のリーン側異常判定処理を実行し、図９の処理を終了する。図１１はそのサブルーチンを示す。
【００６８】
本処理ではまず、ステップ９１において、終了時下限通過フラグＦ＿ＯＵＴＶＬ２を設定する。図示しないが、この終了時下限通過フラグＦ＿ＯＵＴＶＬ２は、フューエルカット運転を終了してからピーク時までの間に、Ｏ２出力値ＳＶＯ２が第２下限電圧ＶＬ２よりも小さい側から第２下限電圧ＶＬ２をまたいで大きい側に変化したときに「０」にセットされ、それ以外のときに「１」にセットされる。
【００６９】
次に、ステップ９２において、終了時下限通過フラグＦ＿ＯＵＴＶＬ２が「０」であるか否かを判別する。この答がＮＯで、Ｏ２出力値ＳＶＯ２が、第２下限電圧ＶＬ２をまたいで小さい側から大きい側に変化していないときには、Ｏ２出力値ＳＶＯ２が出力範囲の下限に達しない異常が発生しているとして、ステップ９６において、終了時リーン異常フラグＦ＿ＯＵＴＬＥＲＲを「１」にセットし、ステップ５７に進む。
【００７０】
一方、上記ステップ９２の答がＹＥＳで、Ｏ２出力値ＳＶＯ２が、第２下限電圧ＶＨ２をまたいで変化しているときには、Ｏ２出力値ＳＶＯ２が出力範囲の下限に達していると判定し、ステップ９３において、終了時リーン出力値ＶＯＵＴＬを算出する。この終了時リーン出力値ＶＯＵＴＬは、終了時移行期間の始点からピーク時までの間において、Ｏ２微分値ＤＳＶＯがステップ８２で算出された終了時基本微分値ＤＯＵＴＢＡＳＥに最も近い値を示すときのＯ２出力値ＳＶＯ２であり、前述した開始時リッチ出力値ＶＩＮＲと同様の方法で算出される。
【００７１】
次に、ステップ９４において、算出した終了時リーン出力値ＶＯＵＴＬが前記第２下限電圧ＶＬ２以上で、かつ前記第２上限電圧ＶＨ２以下であるか否かを判別する。この答がＮＯで、ＶＯＵＴＬ＜ＶＬ２またはＶＯＵＴＬ＞ＶＨ２のときには、第２下限電圧ＶＬ２に相当する排ガス空燃比Ａ／ＦＥＸと理論排ガス空燃比Ａ／ＦＴＨＥＸ付近の間の領域において、Ｏ２センサ２１の出力特性のずれの異常が発生していると判定し、前記ステップ９６に進み、終了時リーン異常フラグＦ＿ＯＵＴＬＥＲＲを「１」にセットする。
【００７２】
一方、上記ステップ９４の答がＹＥＳで、ＶＬ２≦ＶＯＵＴＬ≦ＶＨ２のときには、上記の領域におけるＯ２センサ２１の出力特性は正常であると判定するとともに、前記ステップ９２の答もＹＥＳであることから、理論排ガス空燃比Ａ／ＦＴＨＥＸ付近よりもリーン側の領域におけるＯ２センサ２１の出力特性は正常であると判定し、そのことを表すために、ステップ９５において、終了時リーン異常フラグＦ＿ＯＵＴＬＥＲＲを「０」にセットし、ステップ９７に進む。
【００７３】
ステップ９５またはステップ９６に続くステップ９７では、フューエルカット運転終了時のリーン側異常判定処理が終了したことを表すために、終了時リーン異常判定終了フラグＦ＿ＯＵＴＬＥＮＤを「１」にセットし、本処理を終了する。
【００７４】
図９に戻り、前記ステップ７３の答がＹＥＳで、終了時リーン異常判定終了フラグＦ＿ＯＵＴＬＥＮＤが「１」のときには、ステップ７５において、終了時リッチ異常判定終了フラグＦ＿ＯＵＴＲＥＮＤが「１」であるか否かを判別する。この答がＮＯのときには、ステップ７６において、フューエルカット運転終了時のリッチ側異常判定処理を実行し、図９の処理を終了する。図１２はそのサブルーチンを示す。
【００７５】
本処理ではまず、ステップ１０１において、終了時リッチ出力値ＶＯＵＴＲを算出する。この終了時リッチ出力値ＶＯＵＴＲは、ピーク時から終了時移行期間の終点までの間において、Ｏ２微分値ＤＳＶＯが終了時基本微分値ＤＯＵＴＢＡＳＥに最も近い値を示すときのＯ２出力値ＳＶＯ２であり、前述した開始時リーン出力値ＶＩＮＬと同様の方法で算出される。
【００７６】
次に、ステップ１０２において、算出した終了時リッチ出力値ＶＯＵＴＲが、前記第２下限電圧ＶＬ２以上で、かつ前記第２上限電圧ＶＨ２以下であるか否かを判別する。この答がＮＯで、ＶＯＵＴＲ＜ＶＬ２またはＶＯＵＴＲ＞ＶＨ２のときには、第２上限電圧ＶＨ２に相当する排ガス空燃比Ａ／ＦＥＸと理論排ガス空燃比Ａ／ＦＴＨＥＸ付近の間の領域において、Ｏ２センサ２１の出力特性のずれの異常が発生していると判定し、ステップ１０６において、終了時リッチ異常フラグＦ＿ＯＵＴＲＥＲＲを「１」にセットし、ステップ１０７に進む。
【００７７】
一方、前記ステップ１０２の答がＹＥＳで、ＶＬ２≦ＶＯＵＴＲ≦ＶＨ２のときには、ステップ１０３において、終了時上限通過フラグＦ＿ＯＵＴＶＨ２を設定する。図示しないが、この終了時上限通過フラグＦ＿ＯＵＴＶＨ２は、ピーク時から終了時移行期間の終点までの間に記憶されたＯ２出力値ＳＶＯ２が、第２上限電圧ＶＨ２よりも小さい側から第２上限電圧ＶＨ２をまたいで大きい側に変化したときに「０」にセットされ、それ以外のときに「１」にセットされる。
【００７８】
次に、ステップ１０４において、終了時上限通過フラグＦ＿ＯＵＴＶＨ２が「０」であるか否かを判別する。この答がＮＯで、Ｏ２出力値ＳＶＯ２が、第２上限電圧ＶＨ２をまたいで小さい側から大きい側に変化していないときには、Ｏ２出力値ＳＶＯ２が出力範囲の上限に達しない異常が発生しているとして、前記ステップ１０６に進み、終了時リッチ異常フラグＦ＿ＯＵＴＲＥＲＲを「１」にセットする。
【００７９】
一方、上記ステップ１０４の答がＹＥＳで、Ｏ２出力値ＳＶＯ２が、第２上限電圧ＶＨ２をまたいで変化しているときには、Ｏ２出力値ＳＶＯ２が出力範囲の上限に達していると判定するとともに、前記ステップ１０２の答もＹＥＳであることから、理論排ガス空燃比Ａ／ＦＴＨＥＸ付近よりもリッチ側の領域におけるＯ２センサ２１の出力特性は正常であると判定し、そのことを表すために、ステップ１０５において、終了時リッチ異常フラグＦ＿ＯＵＴＲＥＲＲを「０」にセットし、ステップ１０７に進む。
【００８０】
ステップ１０５またはステップ１０６に続くステップ１０７では、フューエルカット運転終了時のリッチ側異常判定処理が終了したことを表すために、終了時リッチ異常判定終了フラグＦ＿ＯＵＴＲＥＮＤを「１」にセットし、本処理を終了する。
【００８１】
図９に戻り、前記ステップ７５の答がＹＥＳで、終了時リッチ異常判定終了フラグＦ＿ＯＵＴＲＥＮＤが「１」のときには、フューエルカット運転終了時の一連の異常判定処理が終了しているため、そのことを表すために、ステップ７７において、終了時異常判定終了フラグＦ＿ＯＵＴＥＮＤを「１」にセットし、本処理を終了する。
【００８２】
図３に戻り、前記ステップ１０またはステップ１４に続くステップ１５では、終了時異常判定終了フラグＦ＿ＯＵＴＥＮＤが「１」であるか否かを判別する。この答がＮＯのときには、そのまま本処理を終了する。一方、上記ステップ１５の答がＹＥＳで、フューエルカット運転終了時の異常判定処理が終了しているときには、ステップ１６において、総合判定処理を実行し、図３の処理を終了する。この総合判定処理は、上述した各種の異常判定においてセットされた異常フラグを用いて、Ｏ２センサ２１の異常を総合的に判定するものであり、図１３はそのサブルーチンを示す。
【００８３】
本処理ではまず、ステップ１１１〜１１６において、以下の（１）〜（６）の条件が成立しているか否かをそれぞれ判別する。
（１）開始時ピーク異常フラグＦ＿ＩＮＰＥＲＲ＝０
（２）開始時リッチ異常フラグＦ＿ＩＮＲＥＲＲ＝０
（３）開始時リーン異常フラグＦ＿ＩＮＬＥＲＲ＝０
（４）終了時ピーク異常フラグＦ＿ＯＵＴＰＥＲＲ＝０
（５）終了時リーン異常フラグＦ＿ＯＵＴＬＥＲＲ＝０
（６）終了時リッチ異常フラグＦ＿ＯＵＴＲＥＲＲ＝０
【００８４】
これらの（１）〜（６）の条件がすべて成立しているときには、Ｏ２センサ２１は正常であると判定し、そのことを表すために、ステップ１１７において、Ｏ２センサ異常フラグＦ＿ＳＯ２ＥＲＲを「０」にセットし、ステップ１１９に進む。一方、（１）〜（６）の条件のいずれかが成立していないときには、Ｏ２センサ２１の異常が発生していると判定し、そのことを表すために、ステップ１１８において、Ｏ２センサ異常フラグＦ＿ＳＯ２ＥＲＲを「１」にセットし、ステップ１１９に進む。
【００８５】
ステップ１１７またはステップ１１８に続くステップ１１９およびステップ１２０では、開始時異常判定終了フラグＦ＿ＩＮＥＮＤおよび終了時異常判定終了フラグＦ＿ＯＵＴＥＮＤをいずれも「０」にセットし、本処理を終了する。
【００８６】
次に、図１４〜図１８を参照しながら、これまでに説明した異常判定処理による判定例を、フューエルカット運転開始時の異常判定処理の場合を例にとり説明する。図１４（ａ）〜（ｆ）は、異常発生時のＯ２センサ２１の出力特性（細線）を、正常時の出力特性（太線）とともに、異常パターンごとに示し、図１５〜１８は、フューエルカット運転の開始に伴う各種パラメータの変化を示す。
【００８７】
図１５に示すように、Ｏ２センサ２１が正常な場合には、フューエルカット運転を開始する前に（Ｆ＿ＦＣ＝０）、Ｏ２出力値ＳＶＯ２は第２上限値ＶＨ２よりも大きなほぼ一定の値になっており、したがって、Ｏ２微分値ＤＳＶＯ２は０である。フューエルカットフラグＦ＿ＦＣが「１」にセットされ、フューエルカット運転が開始されると、Ｏ２出力値ＳＶＯ２は、Ｏ２センサ２１の出力特性に従って減少し、最終的に第２下限値ＶＬ２よりも小さなほぼ一定の値になる。その間、Ｏ２微分値ＤＳＶＯ２は、Ｏ２センサ２１の出力特性に従って、理論排ガス空燃比Ａ／ＦＴＨＥＸ付近において開始時ピーク微分値ＤＩＮＰまで減少した後、増加に転じ、０に戻る。
【００８８】
同図に示すように、Ｏ２出力値ＳＶＯ２は、第２上限値ＶＨ２および第２下限値ＶＬ２をまたいで変化しており、開始時ピーク出力値ＶＩＮＰは、第１上限値ＶＨ１と第１下限値ＶＬ１の間にあり、開始時リッチ出力値ＶＩＮＲおよび開始時リーン出力値ＶＩＮＬはいずれも、第２上限値ＶＨ２と第２下限値ＶＬ２の間にある。
【００８９】
したがって、Ｏ２センサ２１が正常なときには、図１９に示すように、開始時上限通過フラグＦ＿ＩＮＶＨ２、開始時ピーク異常フラグＦ＿ＩＮＰＥＲＲ、開始時リッチ異常フラグＦ＿ＩＮＲＥＲＲ、開始時リーン異常フラグＦ＿ＩＮＬＥＲＲおよび開始時下限通過フラグＦ＿ＩＮＶＬ２がすべて「０」にセットされる。その結果、図１３に示す総合判定において、Ｏ２センサ２１は正常と判定される。
【００９０】
これに対し、図１４（ａ）の細線に示すように、Ｏ２出力値ＳＶＯ２が全体的に増加側にオフセットする異常（以下「リッチ側オフセット」という）が発生している場合には、図１６の１点鎖線に示すように、Ｏ２微分値ＤＳＶＯ２は、Ｏ２センサ２１が正常なときと同じであり、したがって、開始時ピーク微分値ＤＩＮＰおよび開始時基本微分値ＤＩＮＢＡＳＥも同じである。
【００９１】
一方、Ｏ２出力値ＳＶＯ２は、第２上限値ＶＨ２をまたいで変化するものの、第２下限値ＶＬ２はまたがず、その上側（大きい側）に留まる。また、開始時リーン出力値ＶＩＮＬは第２上限値ＶＨ２と第２下限値ＶＬ２の間にあるものの、開始時ピーク出力値ＶＩＮＰは第１上限値ＶＨ１よりも上側（大きい側）にあり、開始時リッチ出力値ＶＩＮＲは第２上限値ＶＨ２よりも上側にある。
【００９２】
したがって、リッチ側オフセットが発生しているときには、図１９に示すように、開始時上限通過フラグＦ＿ＩＮＶＨ２は「０」にセットされ、開始時ピーク異常フラグＦ＿ＩＮＰＥＲＲ、開始時リッチ異常フラグＦ＿ＩＮＲＥＲＲ、開始時リーン異常フラグＦ＿ＩＮＬＥＲＲおよび開始時下限通過フラグＦ＿ＩＮＶＬ２はいずれも「１」にセットされる。その結果、図１３に示す総合判定において、Ｏ２センサ２１は異常と判定される。
【００９３】
また、図１４（ｂ）の細線に示すように、Ｏ２出力値ＳＶＯ２が全体的に減少側にオフセットする異常（以下「リーン側オフセット」という）が発生している場合には、図１６の２点鎖線に示すように、Ｏ２微分値ＤＳＶＯ２は、Ｏ２センサ２１が正常なときと同じであり、したがって、開始時ピーク微分値ＤＩＮＰおよび開始時基本微分値ＤＩＮＢＡＳＥも同じである。
【００９４】
一方、Ｏ２出力値ＳＶＯ２は、第２下限値ＶＬ２をまたいで変化するものの、第２上限値ＶＨ２はまたがず、その下側（小さい側）に留まる。また、開始時リッチ出力値ＶＩＮＲは第２上限値ＶＨ２と第２下限値ＶＬ２の間にあるものの、開始時ピーク出力値ＶＩＮＰは第１上限値ＶＨ１よりも下側（小さい側）にあり、開始時リーン出力値ＶＩＮＬは第２下限値ＶＬ２よりも下側にある。
【００９５】
したがって、リーン側オフセットが発生しているときには、図１９に示すように、開始時下限通過フラグＦ＿ＩＮＶＬ２は「０」にセットされ、開始時上限通過フラグＦ＿ＩＮＶＨ２、開始時ピーク異常フラグＦ＿ＩＮＰＥＲＲ、開始時リッチ異常フラグＦ＿ＩＮＲＥＲＲおよび開始時リーン異常フラグＦ＿ＩＮＬＥＲＲはいずれも「１」にセットされる。その結果、図１３に示す総合判定において、Ｏ２センサ２１は異常と判定される。
【００９６】
また、図１４（ｃ）の細線に示すように、Ｏ２出力値ＳＶＯ２が理論排ガス空燃比Ａ／ＦＴＨＥＸ付近よりもリッチ側の出力範囲において増加側にオフセットする異常（以下「リッチ片側オフセット」という）が発生している場合には、図１７の１点鎖線に示すように、Ｏ２センサ２１の正常時と比較し、Ｏ２微分値ＤＳＶＯ２のピーク位置はリッチ側にずれ、そのときの開始時ピーク微分値ＤＩＮＰはより小さく（Ｏ２微分値ＤＳＶＯ２の変化量が大きく）なり、したがって、開始時基本微分値ＤＩＮＢＡＳＥもより小さくなっている。
【００９７】
一方、Ｏ２出力値ＳＶＯ２は、第２上限値ＶＨ２および第２下限値ＶＬ２をまたいで変化する。しかし、開始時リーン出力値ＶＩＮＬは第２上限値ＶＨ２と第２下限値ＶＬ２の間にあるものの、開始時ピーク出力値ＶＩＮＰは第１上限値ＶＨ１よりも上側にあり、開始時リッチ出力値ＶＩＮＲは第２上限値ＶＨ２よりも上側にある。
【００９８】
したがって、リッチ片側オフセットが発生しているときには、図１９に示すように、開始時上限通過フラグＦ＿ＩＮＶＨ２、開始時リーン異常フラグＦ＿ＩＮＬＥＲＲおよび開始時下限通過フラグＦ＿ＩＮＶＬ２はいずれも「０」にセットされ、開始時リッチ異常フラグＦ＿ＩＮＲＥＲＲおよび開始時ピーク異常フラグＦ＿ＩＮＰＥＲＲはいずれも「１」にセットされる。その結果、図１３に示す総合判定において、Ｏ２センサ２１は異常と判定される。
【００９９】
また、図１４（ｄ）の細線に示すように、Ｏ２出力値ＳＶＯ２が理論排ガス空燃比Ａ／ＦＴＨＥＸ付近よりもリーン側の出力範囲において減少側にオフセットする異常（以下「リーン片側オフセット」という）が発生している場合には、図１７の２点鎖線に示すように、Ｏ２センサ２１の正常時と比較し、Ｏ２微分値ＤＳＶＯ２のピーク位置はリーン側にずれ、そのときの開始時ピーク微分値ＤＩＮＰはより小さく（Ｏ２微分値ＤＳＶＯ２の変化量が大きく）なり、したがって、開始時基本微分値ＤＩＮＢＡＳＥもより小さくなっている。
【０１００】
一方、Ｏ２出力値ＳＶＯ２は、第２上限値ＶＨ２および第２下限値ＶＬ２をまたいで変化する。しかし、開始時リッチ出力値ＶＩＮＲは第２上限値ＶＨ２と第２下限値ＶＬ２の間にあるものの、開始時ピーク出力値ＶＩＮＰは第１下限値ＶＬ１よりも下側にあり、開始時リーン出力値ＶＩＮＬは第２下限値ＶＬ２よりも下側にある。
【０１０１】
したがって、リーン片側オフセットが発生しているときには、図１９に示すように、開始時上限通過フラグＦ＿ＩＮＶＨ２、開始時リッチ異常フラグＦ＿ＩＮＲＥＲＲおよび開始時下限通過フラグＦ＿ＩＮＶＬ２はいずれも「０」にセットされ、開始時ピーク異常フラグＦ＿ＩＮＰＥＲＲおよび開始時リーン異常フラグＦ＿ＩＮＬＥＲＲはいずれも「１」にセットされる。その結果、図１３に示す総合判定において、Ｏ２センサ２１は異常と判定される。
【０１０２】
また、図１４（ｅ）の細線に示すように、Ｏ２出力値ＳＶＯ２が理論排ガス空燃比Ａ／ＦＴＨＥＸ付近よりもリッチ側の出力範囲において減少側にオフセットする異常（以下「リッチ側つぶれ」という）が発生している場合には、図１８の１点鎖線に示すように、Ｏ２センサ２１の正常時と比較し、Ｏ２微分値ＤＳＶＯ２のピーク位置はリーン側にずれ、そのときの開始時ピーク微分値ＤＩＮＰはより大きく（Ｏ２微分値ＤＳＶＯ２の変化量が小さく）なり、したがって、開始時基本微分値ＤＩＮＢＡＳＥもより大きくなっている。
【０１０３】
一方、Ｏ２出力値ＳＶＯ２は、第２下限値ＶＬ２をまたいで変化するものの、第２上限値ＶＨ２はまたがず、その下側（小さい側）に留まる。また、開始時リッチ出力値ＶＩＮＲおよび開始時リーン出力値ＶＩＮＬは第２上限値ＶＨ２と第２下限値ＶＬ２の間にあるものの、開始時ピーク出力値ＶＩＮＰは第１下限値ＶＬ１よりも下側にある。
【０１０４】
したがって、リッチ側つぶれが発生しているときにＯ２センサ２１の異常判定処理を実行すると、図１９に示すように、開始時リーン異常フラグＦ＿ＩＮＬＥＲＲおよび開始時下限通過フラグＦ＿ＩＮＶＬ２はいずれも「０」にセットされ、開始時上限通過フラグＦ＿ＩＮＶＨ２、開始時リッチ異常フラグＦ＿ＩＮＲＥＲＲおよび開始時ピーク異常フラグＦ＿ＩＮＰＥＲＲはいずれも「１」にセットされる。その結果、図１３に示す総合判定において、Ｏ２センサ２１は異常と判定される。
【０１０５】
また、図１４（ｆ）の細線に示すように、Ｏ２出力値ＳＶＯ２が理論排ガス空燃比Ａ／ＦＴＨＥＸ付近よりもリーン側の出力範囲において増加側にオフセットする異常（以下「リーン側つぶれ」という）が発生している場合には、図１８の２点鎖線に示すように、Ｏ２センサ２１の正常時と比較し、Ｏ２微分値ＤＳＶＯ２のピーク位置はリッチ側にずれ、そのときの開始時ピーク微分値ＤＩＮＰはより大きく（Ｏ２微分値ＤＳＶＯ２の変化量が小さく）なり、したがって、開始時基本微分値ＤＩＮＢＡＳＥもより大きくなっている。
【０１０６】
一方、Ｏ２出力値ＳＶＯ２は、第２上限値ＶＨ２をまたいで変化するものの、第２下限値ＶＬ２はまたがず、その上側（大きい側）に留まる。また、開始時リッチ出力値ＶＩＮＲおよび開始時リーン出力値ＶＩＮＬは第２上限値ＶＨ２と第２下限値ＶＬ２の間にあるものの、開始時ピーク出力値ＶＩＮＰは第１上限値ＶＨ１よりも下側にある。
【０１０７】
したがって、リーン側つぶれが発生しているときには、図１９に示すように、開始時上限通過フラグＦ＿ＩＮＶＨ２および開始時リッチ異常フラグＦ＿ＩＮＲＥＲＲはいずれも「０」にセットされ、開始時ピーク異常フラグＦ＿ＩＮＰＥＲＲ、開始時リーン異常フラグＦ＿ＩＮＬＥＲＲおよび開始時下限通過フラグＦ＿ＩＮＶＬ２はいずれも「１」にセットされる。その結果、図１３に示す総合判定において、Ｏ２センサ２１は異常と判定される。
【０１０８】
以上の結果から、図１９に示すように、５つのフラグの値の組み合わせが、Ｏ２センサ２１の異常パターンに応じて異なるので、それらの組み合わせに基づいて、異常パターンを特定することも可能である。
【０１０９】
以上のように、本実施形態によれば、Ｏ２微分値ＤＳＶＯ２が所定値（開始時ピーク微分値ＤＩＮＰ、開始時基本微分値ＤＩＮＢＡＳＥ、終了時ピーク微分値ＤＯＵＴＰ、終了時基本微分値ＤＯＵＴＢＡＳＥ）になったときのＯ２出力値ＳＶＯ２を用いてＯ２センサ２１の異常を判定するので、Ｏ２センサ２１にリッチ側オフセットやリーン側オフセットなどのＯ２微分値ＤＳＶＯ２に変化が現れない異常が発生しているときでも、出力特性のずれが発生しているとして、Ｏ２センサ２１の異常を適切に判定することができる。
【０１１０】
また、開始時ピーク出力値ＶＩＮＰおよび終了時ピーク出力値ＶＯＵＴＰがそれぞれ第１上限値ＶＨ１と第１下限値ＶＬ１の間にあるか否かに応じて、Ｏ２センサ２１の異常を判定するので、理論排ガス空燃比Ａ／ＦＴＨＥＸ付近におけるＯ２センサ２１の出力特性のずれの異常を適切に判定することができる。さらに、開始時ピーク微分値ＤＩＮＰはＯ２微分値ＤＳＶＯ２の極小値であり、終了時ピーク微分値ＤＯＵＴＰはＯ２微分値ＤＳＶＯ２の極大値であるため、異常判定を行うべき基準点がより明確に現れることで、Ｏ２センサ２１の異常判定を適切に行うことができる。
【０１１１】
また、開始時リッチ出力値ＶＩＮＲ、開始時リーン出力値ＶＩＮＬ、終了時リーン出力値ＶＯＵＴＬおよび終了時リッチ出力値ＶＯＵＴＲがそれぞれ第１上限値ＶＨ１と第１下限値ＶＬ１の間にあるか否かに応じてＯ２センサ２１の異常を判定するので、理論排ガス空燃比Ａ／ＦＴＨＥＸ付近よりもリッチ側およびリーン側の領域におけるＯ２センサ２１の異常を適切に判定することができる。
【０１１２】
また、Ｏ２出力値ＳＶＯ２が第２上限値ＶＨ２および第２下限値ＶＬ２をそれぞれまたいで変化したか否かに基づいてＯ２センサ２１の異常を判定するので、Ｏ２センサ２１の出力範囲の上限付近および下限付近に相当する排ガス空燃比Ａ／ＦＥＸの領域におけるＯ２センサ２１の異常を適切に判定することができる。
【０１１３】
また、上述したように排ガス空燃比Ａ／ＦＥＸの様々な領域において異常判定を行うので、排ガス空燃比Ａ／ＦＥＸの広い領域を対象として、Ｏ２センサ２１の異常を総合的にかつきめ細かく適切に判定することができる。
【０１１４】
また、フューエルカット運転の開始時および終了時のいずれにおいても、Ｏ２センサ２１の異常判定を実行するので、Ｏ２センサ２１の出力特性がフューエルカット運転の開始時と終了時で互いに異なるときでも、Ｏ２センサ２１の異常を判定することができる。
【０１１５】
なお、本発明は、説明した実施形態に限定されることなく、種々の態様で実施することができる。例えば、実施形態では、開始時基本微分値ＤＩＮＢＡＳＥとして、開始時ピーク微分値ＤＩＮＰの１／２を用いているが、０と開始時ピーク微分値ＤＩＮＰの間の値であればよく、開始時ピーク微分値ＤＩＮＰに相関しない値や固定値でもよい。このことは、終了時基本微分値ＤＯＵＴＢＡＳＥについても同様である。
【０１１６】
また、実施形態では、Ｏ２センサ２１の異常判定を、Ｆ／Ｃ開始（終了）時移行期間が経過し、フューエルカット運転の開始（終了）に伴う排ガス空燃比Ａ／ＦＥＸの変化が終了してから行っているが、これに限らず、フューエルカット運転の開始（終了）時から、Ｏ２出力値ＳＶＯ２およびＯ２微分値ＤＳＶＯ２のその時点の値を用いて、リアルタイムにＯ２センサ２１の異常判定を行ってもよく、あるいは、フューエルカット運転の終了後に、フューエルカット運転の開始時および終了時の異常判定処理をまとめて行ってもよい。
【０１１７】
また、実施形態では、第１上限値ＶＨ１、第２上限値ＶＨ２、第１下限値ＶＬ１および第２下限値ＶＬ２は、フューエルカット運転開始時と終了時とで同じであるが、異なる値にしてもよい。
【０１１８】
また、リッチ側異常判定およびリーン側異常判定を行う場合の第２上限値および第２下限値と、上限（下限）通過フラグを設定する場合の第２上限値および第２下限値を、それぞれ互いに同じ値（第２上限値ＶＨ２、第２下限値ＶＬ２）に設定し、共通に用いているが、互いに異なる値に設定してもよい。例えば、開始時上限通過フラグＦ＿ＩＮＶＨ２および終了時上限通過フラグＦ＿ＯＵＴＶＨ２の設定に用いる第２上限値を、Ｏ２センサ２１の出力範囲の上限よりも大きな値に設定し、および／または、開始時下限通過フラグＦ＿ＩＮＶＬ２および終了時下限通過フラグＦ＿ＯＵＴＶＬ２の設定に用いる第２下限値を、Ｏ２センサ２１の出力範囲の下限よりも小さな値に設定するとともに、Ｏ２出力値ＳＶＯ２が第２上限値および／または第２下限値を通過したときに異常と判定してもよい。
【０１１９】
また、実施形態では、Ｏ２センサ２１の異常判定を、フューエルカット運転の開始時および終了時の双方において実行しているが、いずれか一方において実行してもよい。また、実施形態では、Ｏ２センサ２１は、触媒８の下流側に設けられているが、上流側に設けられていてもよい。
【０１２０】
また、実施形態は、本発明を車両に搭載されたガソリンエンジンに適用した例であるが、本発明は、これに限らず、ガソリンエンジン以外のディーゼルエンジンなどの各種のエンジンに適用してもよく、また、車両用以外のエンジン、例えば、クランク軸を鉛直に配置した船外機などのような船舶推進機用エンジンにも適用可能である。その他、本発明の趣旨の範囲内で、細部の構成を適宜、変更することが可能である。
【符号の説明】
【０１２１】
１  異常判定装置
２  ＥＣＵ（微分値算出手段、異常判定手段）
３  内燃機関
５  排気管（排気通路）
２１  酸素濃度センサ（空燃比センサ）
Ａ／ＦＥＸ  排ガス空燃比（排ガスの空燃比）
Ａ／ＦＴＨＥＸ  理論排ガス空燃比
ＳＶＯ２  Ｏ２出力値（空燃比センサの出力値）
ＤＳＶＯ２  Ｏ２微分値（空燃比センサの出力値の微分値）
ＤＩＮＰ  開始時ピーク微分値（所定値）
ＤＩＮＢＡＳＥ  開始時基本微分値（所定値）
ＤＯＵＴＰ  終了時ピーク微分値（所定値）
ＤＯＵＴＢＡＳＥ  終了時基本微分値（所定値）
ＶＨ１  第１上限値（第１しきい値）
ＶＬ１  第１下限値（第２しきい値）
ＶＨ２  第２上限値（第３しきい値、第５しきい値）
ＶＬ２  第２下限値（第４しきい値、第５しきい値）
ＶＩＮＰ  開始時ピーク出力値（微分値が所定値になったときの空燃比センサの                  出力値）
ＶＯＵＴＰ  終了時ピーク出力値（微分値が所定値になったときの空燃比センサの                  出力値）
ＶＩＮＲ  開始時リッチ出力値（微分値が所定値になったときの空燃比センサの                  出力値）
ＶＩＮＬ  開始時リーン出力値（微分値が所定値になったときの空燃比センサの                  出力値）
ＶＯＵＴＬ  終了時リーン出力値（微分値が所定値になったときの空燃比センサの                  出力値）
ＶＯＵＴＲ  終了時リッチ出力値（微分値が所定値になったときの空燃比センサの                  出力値）
【図１】
0005220139.tif 000002
【図２】
0005220139.tif 000003
【図３】
0005220139.tif 000004
【図４】
0005220139.tif 000005
【図５】
0005220139.tif 000006
【図６】
0005220139.tif 000007
【図７】
0005220139.tif 000008
【図８】
0005220139.tif 000009
【図９】
0005220139.tif 000010
【図１０】
0005220139.tif 000011
【図１１】
0005220139.tif 000012
【図１２】
0005220139.tif 000013
【図１３】
0005220139.tif 000014
【図１４】
0005220139.tif 000015
【図１５】
0005220139.tif 000016
【図１６】
0005220139.tif 000017
【図１７】
0005220139.tif 000018
【図１８】
0005220139.tif 000019
【図１９】
0005220139.tif 000020