(57)【要約】【課題】  触媒下流の濃淡電池型の酸素濃度センサ出力に基づいて空燃比を制御する内燃機関の空燃比制御装置において、酸素濃度センサ内部での漏れによる空気の進入に起因して未燃ＨＣ，ＣＯの排出量が増大する事態の発生を抑制することができるものの提供。【解決手段】  この装置は、高負荷時（Ga＞A）では、触媒下流の酸素濃度センサ内部での漏れによる空気進入が発生し得ないから同酸素濃度センサ出力Voxsに基づく理論空燃比を目標とする空燃比制御（サブフィードバック制御）を行う（SUB=1）。低負荷時(Ga≦A)では、所定期間に亘る触媒上流の空燃比センサによる検出空燃比abyfの経緯から得られる同所定期間中に亘る触媒への余剰酸素の流入量OSAが所定値C以下で、且つ、同所定期間経過時点での酸素濃度センサ出力Voxsがリーンを示していることを条件に、「漏れによる空気進入の程度が大きい」と判定して上記サブフィードバック制御を中断する(SUB=0)。【選択図】  図７
2006200364.tif 000002
【特許請求の範囲】
【請求項１】
内燃機関の排気通路に配設された触媒と、
前記触媒の上流の排気通路に配設されて同触媒に流入するガスの空燃比に応じた値を出力する空燃比センサと、
前記触媒の下流の排気通路に配設されて同触媒から流出するガス中の酸素濃度に応じた値を出力する濃淡電池型の酸素濃度センサと、
を備えた内燃機関に適用され、
前記酸素濃度センサの出力を理論空燃比に相当する所定の目標値と一致させるための空燃比制御量を演算する空燃比制御量演算手段と、
前記演算された空燃比制御量に基づいて前記触媒に流入するガスの空燃比を制御する空燃比制御手段と、
を備えた内燃機関の空燃比制御装置であって、
前記空燃比センサの出力と、前記酸素濃度センサの出力とに基づいて同酸素濃度センサ内部での漏れによる空気の大気側から排気通路側への進入の程度を判定する空気進入判定手段と、
前記空気進入判定手段による判定結果に基づいて前記空燃比制御を中断する、或いは、前記空燃比制御量を所定の範囲内に制限する空燃比制御制限手段と、
を備えた内燃機関の空燃比制御装置。
【請求項２】
請求項１に記載の内燃機関の空燃比制御装置であって、
前記内燃機関が所定の低負荷状態にあるか否かを判定する低負荷状態判定手段を更に備え、
前記空気進入判定手段は、
前記内燃機関が前記所定の低負荷状態にある場合にのみ、前記空燃比センサの出力と、前記酸素濃度センサの出力とに基づいて前記漏れによる空気進入の程度を判定するように構成された内燃機関の空燃比制御装置。
【請求項３】
請求項１又は請求項２に記載の内燃機関の空燃比制御装置において、
前記空気進入判定手段は、
所定の期間に亘る前記空燃比センサ出力の経緯と、同所定の期間経過後における前記酸素濃度センサ出力とに基づいて前記漏れによる空気進入の程度を判定するように構成された内燃機関の空燃比制御装置。
【請求項４】
請求項３に記載の内燃機関の空燃比制御装置において、
前記空気進入判定手段は、
前記所定の期間に亘る前記空燃比センサ出力の経緯から得られる前記触媒への余剰酸素の流入量が所定値以下であって、且つ、同所定の期間経過後における前記酸素濃度センサ出力がリーンを示す値となっている場合、前記漏れによる空気進入の程度が大きいと判定するように構成され、
前記空燃比制御制限手段は、
前記空気進入判定手段により前記漏れによる空気進入の程度が大きいと判定されている場合に前記空燃比制御を中断する、或いは、前記空燃比制御量を所定の範囲内に制限するように構成された内燃機関の空燃比制御装置。
【請求項５】
請求項３又は請求項４に記載の内燃機関の空燃比制御装置において、
前記空燃比制御制限手段は、
前記所定の期間に亘って前記空燃比制御を中断するように構成された内燃機関の空燃比制御装置。
【請求項６】
請求項１乃至請求項５の何れか一項に記載の内燃機関の空燃比制御装置において、
前記空気進入判定手段は、
前記漏れによる空気進入の程度の判定を完了した後、再判定を行わないように構成された内燃機関の空燃比制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内燃機関の排気通路に配設された触媒の下流に設けられた濃淡電池型の酸素濃度センサの出力に基づいて同触媒に流入するガスの空燃比を制御する内燃機関の空燃比制御装置に関する。
【背景技術】
【０００２】
従来より、内燃機関の排気通路に配設された触媒（三元触媒）の下流に濃淡電池型の酸素濃度センサを設け、この酸素濃度センサの出力が理論空燃比に相当する値となるように同内燃機関に供給する混合気の空燃比（従って、触媒に流入するガスの空燃比）をフィードバック制御する空燃比制御装置が広く知られている（例えば、特許文献１を参照。）。
【特許文献１】特開平９−６０５４４号公報（第５頁、図３）
【０００３】
このような空燃比制御装置に使用される濃淡電池型の酸素濃度センサは、一般に、ジルコニア等のセラミックからなる固体電解質と同固体電解質を挟んだ両側にそれぞれ配設された検出電極及び基準電極とからなる検出素子部と、同検出素子部を保持する金属からなるハウジング（センサ本体）とから構成されている。係る酸素濃度センサは、検出電極と基準電極との間の酸素濃度（酸素分圧）の差に基づいて出力が変化するセンサであり、その検出電極は排気通路内の排ガスに曝され、その基準電極は大気に曝されている。
【０００４】
従って、酸素濃度センサの検出電極に到達したガス（以下、単に「酸素濃度センサ到達ガス」とも称呼する。）の空燃比が理論空燃比より僅かでもリッチであると、検出電極と基準電極の間の酸素濃度の差が大きくなるので、その出力は最大出力値となる。これに対し、酸素濃度センサ到達ガスの空燃比が理論空燃比より僅かでもリーンであると、検出電極と基準電極の間の酸素濃度の差が小さくなるので、その出力は最小出力値となる。
【０００５】
よって、酸素濃度センサの出力が最大出力値と最小出力値の略中間の値（以下、「中央値」と称呼する。）であるとき、酸素濃度センサ到達ガスの空燃比は理論空燃比であると考えられる。このため、上記従来の空燃比制御装置は、触媒下流側の酸素濃度センサの出力が上記中央値となるように、内燃機関に供給する混合気の空燃比をフィードバック制御している。
【０００６】
ところで、係る濃淡電池型の酸素濃度センサを使用する場合、基準電極が曝されている大気（空気）と検出電極が曝されている排ガスとが混ざり合ってしまうと、検出電極と基準電極の間の酸素濃度差が大気（空気）と酸素濃度センサ到達ガスの間の実際の酸素濃度差と異なる値（具体的には、より小さい値）となる。
【０００７】
この結果、酸素濃度センサは酸素濃度センサ到達ガスの空燃比を実際の空燃比よりもリーンの空燃比に検出してしまうことになる。このため、係る酸素濃度センサでは、基準電極が曝されている大気（空気）と検出電極が曝されている排ガスとが気密的に確実に分離・区画されることが望ましい。
【０００８】
しかしながら、上記検出素子部を構成するセラミック等と、上記ハウジングを構成する金属等とでは熱膨張係数が異なるから、検出素子部とハウジングとの接合部位等にて隙間が不可避的に発生し得る。この結果、酸素濃度センサ内部での漏れによる空気の大気側（基準電極側）から排気通路側（検出電極側）への進入を完全に防止することは実際には困難である。
【０００９】
以上のことから、係る濃淡電池型の酸素濃度センサを使用して空燃比フィードバック制御を行う場合、上記「酸素濃度センサ内部での漏れによる空気の進入」に起因して酸素濃度センサ到達ガスの空燃比が実際の空燃比よりもリーンの空燃比に検出される場合がある。この結果、機関に供給される混合気の空燃比（従って、触媒に流入するガスの空燃比）が理論空燃比よりもリッチの空燃比に空燃比フィードバック制御されて未燃ＨＣ，ＣＯの排出量が増大する場合があるという問題がある。
【発明の開示】
【００１０】
本発明は上記問題に対処するためになされたものであって、その目的は、触媒下流に設けられた濃淡電池型の酸素濃度センサの出力に基づいて同触媒に流入するガスの空燃比を制御する内燃機関の空燃比制御装置において、上記「酸素濃度センサ内部での漏れによる空気の進入」に起因して未燃ＨＣ，ＣＯの排出量が増大する事態の発生を抑制することができるものを提供することにある。
【００１１】
本発明による空燃比制御装置は、内燃機関の排気通路に配設された触媒（三元触媒）と、前記触媒の上流の排気通路に配設されて同触媒に流入するガスの空燃比に応じた値を出力する空燃比センサと、前記触媒の下流の排気通路に配設されて同触媒から流出するガス中の酸素濃度に応じた値を出力する濃淡電池型の酸素濃度センサとを備えた内燃機関に適用される。ここにおいて、前記空燃比センサとしては、例えば、限界電流式の酸素濃度センサが使用される。
【００１２】
本発明の特徴は、前記酸素濃度センサの出力を理論空燃比に相当する所定の目標値と一致させるための空燃比制御量を演算する空燃比制御量演算手段と、前記演算された空燃比制御量に基づいて前記触媒に流入するガスの空燃比を制御する空燃比制御手段とを備えた内燃機関の空燃比制御装置が、前記空燃比センサの出力と、前記酸素濃度センサの出力とに基づいて同酸素濃度センサ内部での漏れによる空気の大気側から排気通路側への進入の程度を判定する空気進入判定手段と、前記空気進入判定手段による判定結果に基づいて前記空燃比制御を中断する、或いは、前記空燃比制御量を所定の範囲内に制限する空燃比制御制限手段とを備えたことにある。以下、上記酸素濃度センサ内部での漏れによる空気の大気側から排気通路側への進入を、単に、「漏れによる空気進入」と称呼する。
【００１３】
漏れによる空気進入が発生すると、上述したように、酸素濃度センサ出力は、酸素濃度センサ到達ガスの実際の空燃比よりもリーン空燃比を示す値になる。一方、触媒上流の空燃比センサ出力は、触媒に流入するガスの空燃比を精度良く表す値に維持され得る。従って、漏れによる空気進入が発生すると、酸素濃度センサ出力が空燃比センサ出力よりもよりリーン空燃比を表す値となる傾向が発生する。この傾向は、漏れによる空気進入の程度が大きいほど顕著になる。
【００１４】
換言すれば、係る傾向の程度を判定することで漏れによる空気進入の程度を判定することができる。係る知見に基づき、空気進入判定手段は、空燃比センサの出力と酸素濃度センサの出力とに基づいて漏れによる空気進入の程度を判定する。
【００１５】
そして、上記空気進入判定手段による判定結果に基づいて前記空燃比制御が中断される、或いは、前記空燃比制御量が所定の範囲内に制限される（以下、単に「空燃比制御が制限される」と称呼する。）。具体的には、例えば、漏れによる空気進入の程度が小さいと判定されている場合、空燃比制御が制限されない一方、漏れによる空気進入の程度が大きいと判定されている場合、空燃比制御が制限される。
【００１６】
これにより、漏れによる空気進入に起因して機関に供給される混合気の空燃比（従って、触媒に流入するガスの空燃比）が理論空燃比よりもリッチの空燃比に空燃比フィードバック制御されることが抑制される。従って、上記未燃ＨＣ，ＣＯの排出量が増大する事態の発生を抑制することができる。
【００１７】
なお、「空燃比制御量を所定の範囲内に制限する」とは、例えば、漏れによる空気進入の程度が大きいと判定された場合にのみ空燃比制御量を所定の範囲内に制限することのみならず、漏れによる空気進入の程度が小さいと判定された場合に空燃比制御量を所定の第１範囲内に制限するとともに漏れによる空気進入の程度が大きいと判定された場合に同空燃比制御量を同所定の第１範囲内よりも狭い所定の第２範囲内に制限することを含む。
【００１８】
上記本発明による空燃比制御装置においては、前記内燃機関が所定の低負荷状態にあるか否かを判定する低負荷状態判定手段を更に備え、前記空気進入判定手段は、前記内燃機関が前記所定の低負荷状態にある場合にのみ、前記空燃比センサの出力と、前記酸素濃度センサの出力とに基づいて前記漏れによる空気進入の程度を判定するように構成されることが好適である。
【００１９】
上記漏れによる空気進入は、内燃機関が低負荷状態にあって排気通路内の排気圧力が低いほど発生し易くなる。換言すれば、内燃機関が高負荷状態にあって排気圧力が高い場合（例えば、酸素濃度センサ近傍の排気圧力が大気圧よりも高い場合）、漏れによる空気進入が殆ど発生し得ないから漏れによる空気進入の程度の判定を行う必要がない。
【００２０】
従って、上記のように、内燃機関が所定の低負荷状態にある場合にのみ漏れによる空気進入の程度を判定するように構成すれば、不必要に上記漏れによる空気進入の程度の判定を行うことが防止され得る。なお、内燃機関が所定の低負荷状態にあるか否かは、例えば、吸気系に配設されたエアフローメータにより計測される吸入空気流量が所定値以下であるか否か、排気圧力センサにより検出される排気圧力が所定値以下であるか否か等により判定され得る。
【００２１】
また、上記本発明による空燃比制御装置においては、前記空気進入判定手段は、所定の期間に亘る前記空燃比センサ出力の経緯と、同所定の期間経過後における前記酸素濃度センサ出力とに基づいて前記漏れによる空気進入の程度を判定するように構成されることが好適である。
【００２２】
一般に、三元触媒は、触媒に流入するガス（以下、単に「触媒流入ガス」とも称呼する。）中に酸素が過剰に含まれているとき（即ち、触媒流入ガスの空燃比がリーンであるとき）、そのガス中の余剰酸素を内部に吸蔵するとともに、触媒流入ガス中にＣＯ，Ｈ２等の未燃ガス（未燃成分）が多量に含まれていて同未燃ガスを酸化するための酸素が不足しているとき（即ち、触媒流入ガスの空燃比がリッチであるとき）、内部に吸蔵しておいた酸素により同未燃ガスを酸化する機能を備えている。この触媒の機能は、「酸素吸蔵機能」或いは「Ｏ２ストレージ効果」などと称呼される。
【００２３】
この酸素吸蔵機能により、酸素が吸蔵されている状態の触媒に空燃比がリッチであるガスが流入しても、触媒に吸蔵されている酸素が総て消費されるまでの期間、触媒下流のガスの空燃比はリッチとはならず（略）理論空燃比となる。これに対し、酸素を吸蔵し得る余力が残されている状態の触媒に空燃比がリーンであるガスが流入しても、触媒が酸素を吸蔵しきれなくなるまでの期間（従って、触媒の酸素吸蔵量が吸蔵し得る最大量（最大酸素吸蔵量）に達するまでの期間）、触媒下流のガスの空燃比はリーンとはならず（略）理論空燃比となる。
【００２４】
換言すれば、上記漏れによる空気進入が発生していない場合（即ち、酸素濃度センサ出力が酸素濃度センサ到達ガスの空燃比を精度良く表す値に維持され得る場合）、或る時点での酸素濃度センサ出力は、触媒の酸素吸蔵機能により、同或る時点での触媒流入ガスの空燃比（従って、同或る時点での空燃比センサ出力）ではなく同或る時点に至るまでの所定の期間に亘る触媒流入ガスの空燃比の経緯（従って、空燃比センサ出力の経緯）に大きく依存して決定される特性を有する。
【００２５】
従って、上記のように、所定の期間に亘る空燃比センサ出力の経緯と、同所定の期間経過後における酸素濃度センサ出力とに基づいて漏れによる空気進入の程度を判定するように構成すれば、触媒の酸素吸蔵機能に起因する酸素濃度センサ出力の上記特性が考慮されて、漏れによる空気進入の程度をより一層精度良く判定することができる。なお、この所定の期間は、例えば、エアフローメータにより計測される吸入空気流量の積算値（従って、触媒に流入するガスの量）が所定値以上となる期間として決定される。
【００２６】
この場合、より具体的には、前記空気進入判定手段は、前記所定の期間に亘る前記空燃比センサ出力の経緯から得られる前記触媒への余剰酸素の流入量が所定値以下であって、且つ、同所定の期間経過後における前記酸素濃度センサ出力がリーンを示す値となっている場合、前記漏れによる空気進入の程度が大きいと判定するように構成され、前記空燃比制御制限手段は、前記空気進入判定手段により前記漏れによる空気進入の程度が大きいと判定されている場合に前記空燃比制御を中断する、或いは、前記空燃比制御量を所定の範囲内に制限するように構成されることが好適である。
【００２７】
上記所定の期間に亘る触媒への余剰酸素の流入量が少ない場合、同所定の期間の経過時点にて触媒の酸素吸蔵量が最大酸素吸蔵量に達していない場合が多い。従って、この場合、所定の期間経過後において酸素濃度センサ到達ガスの空燃比はリーンにならない場合が多いと考えられる。即ち、上記漏れによる空気進入が発生しておらず、従って、酸素濃度センサ出力が酸素濃度センサ到達ガスの空燃比を精度良く表す値に維持されていれば、所定の期間経過後における酸素濃度センサ出力はリーンを示す値にならないと考えられる。
【００２８】
換言すれば、上記所定の期間に亘る触媒への余剰酸素の流入量が少ない場合において、同所定の期間経過後における酸素濃度センサ出力がリーンを示す値となることは、上記漏れによる空気進入が発生している（漏れによる空気進入の程度が無視できない程度に大きい）ことを意味すると考えることができる。他方、上記所定の期間に亘る触媒への余剰酸素の流入量は、触媒上流に配設されている空燃比センサの出力の同所定の期間に亘る経緯に基づいて算出することができる（詳細は後述する。）。
【００２９】
上記構成は、係る知見に基づくものである。これによれば、漏れによる空気進入の程度が大きいことが簡易、且つ確実に判定され得、且つ、漏れによる空気進入の程度が大きいと判定されている場合に空燃比制御が制限される。従って、漏れによる空気進入の程度が大きい場合に確実に空燃比制御が制限され得るから、上述した未燃ＨＣ，ＣＯの排出量が増大する事態の発生を確実に抑制することができる。
【００３０】
上述したように、所定の期間に亘る空燃比センサ出力の経緯と、同所定の期間経過後における酸素濃度センサ出力とに基づいて漏れによる空気進入の程度を判定するように構成される場合、前記空燃比制御制限手段は、前記所定の期間に亘って前記空燃比制御を中断するように構成されると好適である。
【００３１】
いま、上記所定の期間に亘って空燃比制御が継続される場合であって、且つ、同所定の期間中において漏れによる空気進入により酸素濃度センサ出力がリーンを示す値になっている場合について考える。この場合、機関に供給される混合気の空燃比（従って、触媒に流入するガスの空燃比）が理論空燃比よりもリッチの空燃比に直ちに空燃比フィードバック制御され得る。
【００３２】
この結果、触媒の酸素吸蔵量が減少して「０」に達することで酸素濃度センサ到達ガスの空燃比がリッチとなる場合も考えられる。これにより、上記所定の期間の経過後における酸素濃度センサ出力がリーンを示す値ではなくリッチを示す値に変更されている場合も考えられる。
【００３３】
この場合、例えば、漏れによる空気進入の程度が大きいと判定されるべき場合であっても漏れによる空気進入の程度が小さいと誤判定される場合が発生し得る。このような誤判定は、所定の期間に亘って空燃比制御が継続されることに起因して発生する。
【００３４】
以上のことから、上記のように、上記所定の期間に亘って空燃比制御を中断するように構成すれば、上述したような誤判定がなされることが防止され得、漏れによる空気進入の程度がより正確に判定され得る。
【００３５】
また、本発明による空燃比制御装置においては、前記空気進入判定手段は、前記漏れによる空気進入の程度の判定を完了した後、再判定を行わないように構成されることが好適である。
【００３６】
酸素濃度センサ内部での上記漏れの発生傾向は、或る程度の期間内（例えば、ワントリップ期間内（イグニッションをオンした時点から同イグニッションをオフする時点までの期間内））においては大きく変化することはないということができる。換言すれば、漏れによる空気進入の程度の判定が一旦完了すれば、以降、或る程度の期間が経過しない限りにおいて再判定を行う必要性は低いということができる。
【００３７】
上記構成は係る知見に基づくものである。これによると、例えば、漏れによる空気進入の程度の判定が一旦完了されると、以降、イグニッションがオンに維持されている期間中において再判定が実行されなくなり、この結果、不必要に上記漏れによる空気進入の程度の判定を行うことが防止され得る。
【００３８】
なお、この場合、上記イグニッションがオンに維持されている期間中においては、上記既に完了されている漏れによる空気進入の程度の判定結果に基づいて空燃比制御が制限されることになる。
【発明を実施するための最良の形態】
【００３９】
以下、本発明による内燃機関の空燃比制御装置の各実施形態について図面を参照しつつ説明する。この空燃比制御装置は、機関の燃料噴射量を制御する燃料噴射量制御装置でもある。
【００４０】
（第１実施形態）
図１は、本発明の第１実施形態に係る空燃比制御装置を４サイクル火花点火式多気筒内燃機関１０に適用したシステムの概略構成を示している。なお、図１は、特定気筒の断面のみを示しているが、他の気筒も同様な構成を備えている。
【００４１】
この内燃機関１０は、シリンダブロック、シリンダブロックロワーケース及びオイルパン等を含むシリンダブロック部２０と、シリンダブロック部２０の上に固定されるシリンダヘッド部３０と、シリンダブロック部２０にガソリン混合気を供給するための吸気系統４０と、シリンダブロック部２０からの排ガスを外部に放出するための排気系統５０とを含んでいる。
【００４２】
シリンダブロック部２０は、シリンダ２１、ピストン２２、コンロッド２３及びクランク軸２４を含んでいる。ピストン２２はシリンダ２１内を往復動し、ピストン２２の往復動がコンロッド２３を介してクランク軸２４に伝達され、これにより同クランク軸２４が回転するようになっている。シリンダ２１とピストン２２のヘッドは、シリンダヘッド部３０とともに燃焼室２５を形成している。
【００４３】
シリンダヘッド部３０は、燃焼室２５に連通した吸気ポート３１、吸気ポート３１を開閉する吸気弁３２、吸気弁３２を駆動するインテークカムシャフトを含むとともに同インテークカムシャフトの位相角及びリフト量を連続的に変更する可変吸気タイミング装置３３、可変吸気タイミング装置３３のアクチュエータ３３ａ、燃焼室２５に連通した排気ポート３４、排気ポート３４を開閉する排気弁３５、排気弁３５を駆動するエキゾーストカムシャフト３６、点火プラグ３７、点火プラグ３７に与える高電圧を発生するイグニッションコイルを含むイグナイタ３８及び燃料を吸気ポート３１内に噴射するインジェクタ（燃料噴射手段）３９を備えている。
【００４４】
吸気系統４０は、吸気ポート３１に連通し同吸気ポート３１とともに吸気通路を形成するインテークマニホールドを含む吸気管４１、吸気管４１の端部に設けられたエアフィルタ４２、吸気管４１内にあって吸気通路の開口断面積を可変とするスロットルバルブ４３及びスワールコントロールバルブ（以下、「ＳＣＶ」と称呼する。）４４を備えている。
【００４５】
スロットルバルブ４３は、ＤＣモータからなるスロットルバルブアクチュエータ４３ａにより吸気管４１内で回転駆動されるようになっている。ＳＣＶ４４は、ＤＣモータからなるＳＣＶアクチュエータ４４ａにより回転駆動されるようになっている。
【００４６】
排気系統５０は、排気ポート３４に連通したエキゾーストマニホールド５１、エキゾーストマニホールド５１に接続されたエキゾーストパイプ５２、エキゾーストパイプ５２に配設された上流側触媒５３、上流側触媒５３よりも下流のエキゾーストパイプ５２に配設された下流側触媒５４を備えている。排気ポート３４、エキゾーストマニホールド５１及びエキゾーストパイプ５２は、排気通路を構成している。
【００４７】
上流側触媒５３及び下流側触媒５４のそれぞれは、所謂、白金等の貴金属からなる活性成分を担持する三元触媒装置である。各触媒は、触媒流入ガスがほぼ理論空燃比であるとき、ＨＣ，ＣＯなどの未燃ガスを酸化するとともに、窒素酸化物（ＮＯｘ）を還元する機能を有する。更に、各触媒は、酸素を吸蔵（貯蔵）する上述した酸素吸蔵機能を有し、この酸素吸蔵機能により空燃比が理論空燃比から偏移したとしても未燃ガス及び窒素酸化物を浄化することができる。この酸素吸蔵機能は、触媒に担持されているセリア(CeO2)によってもたらされる。
【００４８】
一方、このシステムは、熱線式エアフローメータ６１、吸気温センサ６２、スロットルポジションセンサ６３、カムポジションセンサ６４、クランクポジションセンサ６５、水温センサ６６、空燃比センサ６７、酸素濃度センサ６８、及びアクセル開度センサ６９を備えている。
【００４９】
エアフローメータ６１は、吸気管４１内を流れる吸入空気の質量流量（吸入空気流量）Gaに応じた信号を出力するようになっている。吸気温センサ６２は、吸入空気の温度を検出し、吸気温度THAを表す信号を出力するようになっている。スロットルポジションセンサ６３は、スロットルバルブ４３の開度（スロットルバルブ開度）を検出し、スロットルバルブ開度TAを表す信号を出力するようになっている。
【００５０】
カムポジションセンサ６４は、インテークカムシャフトが９０°回転する毎に（即ち、クランク軸２４が１８０°回転する毎に）一つのパルスを有する信号（Ｇ２信号）を発生するようになっている。クランクポジションセンサ６５は、クランク軸２４が１０°回転する毎に幅狭のパルスを有するとともに同クランク軸２４が３６０°回転する毎に幅広のパルスを有する信号を出力するようになっている。この信号は、エンジン回転速度NEを表す。水温センサ６６は、内燃機関１０の冷却水の温度を検出し、冷却水温THWを表す信号を出力するようになっている。
【００５１】
空燃比センサ６７は、排気通路であって上流側触媒５３よりも上流側に配設されている。空燃比センサ６７は、所謂「限界電流式酸素濃度センサ」であって、上流側触媒５３に流入する排ガス中の空燃比を検出し、図２に示したように、検出した空燃比（検出空燃比abyf）に応じた信号vabyfsを出力するようになっている。
【００５２】
酸素濃度センサ６８は、排気通路であって上流側触媒５３よりも下流側であり下流側触媒５４よりも上流側に配設されている。酸素濃度センサ６８は、固体電解質型センサ（安定化ジルコニアを用いた周知の濃淡電池型の酸素センサ）であり、安定化ジルコニア（セラミック）からなる固体電解質と同固体電解質を挟んだ両側にそれぞれ配設された白金からなる基準電極及び検出電極とからなる検出素子部と、同検出素子部を気密的に保持する金属製のハウジングとから構成されている。
【００５３】
このハウジングがエキゾーストパイプ５２に気密的に固定されることで酸素濃度センサ６８がエキゾーストパイプ５２に気密的に固定されるようになっている。また、基準電極は大気に曝され、検出電極は上流側触媒５３から流出したガス（上流側触媒５３と下流側触媒５４との間の排気通路内のガス）に曝されている。
【００５４】
この酸素濃度センサ６８の出力Voxsの静的な特性は、基準電極と検出電極の間の酸素濃度（酸素分圧）の差に基づいて変化する特性となる。具体的に述べると、図３に示したように、酸素濃度センサ６８は、検出対象のガス（酸素濃度センサ到達ガス）の空燃比が理論空燃比よりもリッチ及びリーンのとき最大出力値max及び最小出力値minをそれぞれ出力し、検出対象のガスの空燃比が理論空燃比であるとき最大出力値maxと最小出力値minの略中間の値（中央値）ａを出力するようになっている。
【００５５】
アクセル開度センサ６９は、運転者によって操作されるアクセルペダル７１の操作量Accpを表す信号を出力するようになっている。
【００５６】
電気制御装置８０は、互いにバスで接続されたＣＰＵ８１、ＣＰＵ８１が実行するプログラム、テーブル（マップ、関数）及び定数等を予め記憶したＲＯＭ８２、ＣＰＵ８１が必要に応じてデータを一時的に格納するＲＡＭ８３、電源が投入された状態でデータを格納するとともに同格納したデータを電源が遮断されている間も保持するバックアップＲＡＭ８４並びにＡＤコンバータを含むインターフェース８５等からなるマイクロコンピュータである。
【００５７】
インターフェース８５は、前記センサ６１〜６９と接続され、ＣＰＵ８１にセンサ６１〜６９からの信号を供給するとともに、ＣＰＵ８１の指示に応じて可変吸気タイミング装置３３のアクチュエータ３３ａ、イグナイタ３８、インジェクタ３９、スロットルバルブアクチュエータ４３ａ及びＳＣＶアクチュエータ４４ａに駆動信号を送出するようになっている。
【００５８】
（空燃比フィードバック制御の概要）
次に、上記のように構成された空燃比制御装置（以下、「本装置」と称呼することもある。）による空燃比フィードバック制御の概要について説明する。本装置は、上流側触媒５３から流出しているガス（従って、酸素濃度センサ到達ガス）の空燃比が理論空燃比となるように機関に供給する混合気の空燃比（従って、上流側触媒５３に流入するガスの空燃比。以下、「機関の空燃比」とも称呼する。）を制御する。
【００５９】
具体的には、上流側触媒５３の下流に配設された酸素濃度センサ６８の出力Voxsが理論空燃比に相当する目標値Voxsref（本例では、上記中央値ａ）となるように、同出力Voxsに基づいて（実際には、空燃比センサ６７の出力vabyfsにも基づいて）機関の空燃比をフィードバック制御する。なお、酸素濃度センサ６８の出力Voxsに基づく空燃比フィードバック制御を「サブフィードバック制御」と呼ぶこともある。
【００６０】
また、本装置は、後述する「漏れ判定」により「漏れによる空気進入の程度が大きい」と判定した場合、酸素濃度センサ出力Voxs（及び空燃比センサ出力vabyfs）に基づくサブフィードバック制御を中断し、空燃比センサ出力vabyfsにのみ基づく空燃比フィードバック制御を行う。以上が、空燃比フィードバック制御の概要である。
【００６１】
（漏れ判定と、サブフィードバック制御の中断）
上述したように、上流側触媒５３の下流に配設されている酸素濃度センサ６８はエキゾーストパイプ５２に気密的に固定されている。しかしながら、上記検出素子部を構成するセラミック等と、上記ハウジングを構成する金属等とでは熱膨張係数が異なるから、実際の継続的な使用を通して検出素子部とハウジングとの接合部位等にて隙間が不可避的に発生し得る。従って、実際には、酸素濃度センサ６８内部での漏れによる空気の大気側（基準電極側）から排気通路側（検出電極側）への進入（即ち、上記漏れによる空気進入）が不可避的に発生し得る。
【００６２】
係る漏れによる空気進入の程度が無視できない程度に大きいと、検出電極近傍のガスの酸素濃度が増加することで検出電極と基準電極の間の酸素濃度差が減少し、酸素濃度センサ６８は、酸素濃度センサ到達ガスの実際の空燃比よりもリーンの空燃比に相当する値を出力することになる。この結果、サブフィードバック制御が正確に実行され得なくなる。
【００６３】
従って、漏れによる空気進入の程度が大きい場合、サブフィードバック制御を中断することが好ましい。このためには、漏れによる空気進入の程度が大きいか否かを判定する必要がある。以下、「漏れによる空気進入の程度が大きいか否か」を判定する手法について説明する。
【００６４】
一般に、上流側触媒５３に流入する排ガスの延べ量（従って、吸入空気流量Gaの積算値sumGa）が所定値となる或る期間内に亘る上流側触媒５３への排ガス中の余剰酸素の流入量が少ない場合、同期間の経過時点における上流側触媒５３の酸素吸蔵量は最大酸素吸蔵量に達していない場合が多い。従って、この場合、上記期間経過後において酸素濃度センサ到達ガスの空燃比は略理論空燃比、或いはリッチになっている場合が多い（従って、リーンにならない場合が多い）と考えられる。
【００６５】
よって、酸素濃度センサ６８内部にて上記漏れによる空気進入が発生しておらず、或いは、同空気進入の程度が小さくて、酸素濃度センサ出力Voxsが酸素濃度センサ到達ガスの空燃比を精度良く表す値に維持されていれば、上記期間経過後における酸素濃度センサ出力Voxsはリーンを示す値minにならないと考えられる。
【００６６】
即ち、上記期間に亘る上流側触媒５３への余剰酸素の流入量が少なく、且つ、同期間経過後における酸素濃度センサ出力Voxsがリーンを示す値minとなることは、上記漏れによる空気進入の程度が無視できない程度に大きいことを意味すると考えることができる。
【００６７】
他方、或る期間に亘る上流側触媒５３への余剰酸素の流入量（余剰酸素量OSA）は、空燃比センサ出力vabyfsにより得られる検出空燃比abyfの同期間に亘る経緯に基づいて、下記(1)、及び下記(2)式に従って算出することができる。
【００６８】
ΔO2＝０．２３・(Ga/abyf)・（abyf − stoich）  ・・・(1)
【００６９】
OSA＝ΣΔO2  ・・・(2)
【００７０】
上記(1)式において、値「０．２３」は大気中に含まれる酸素の重量割合である。(Ga/abyf)は単位時間あたりの燃料噴射量である。値stoichは理論空燃比（例えば、１４．６）である。
【００７１】
この(1)式に示したように、単位時間あたりの燃料噴射量(Ga/abyf)に、上流側触媒５３上流の空燃比センサ６７による検出空燃比abyfの理論空燃比stoichからの偏移(abyf
− stoich)を乗じることで、上流側触媒５３に流入する単位時間あたりの余剰空気量が求められ、この単位時間あたりの余剰空気量に酸素の重量割合を乗じることで上流側触媒５３に流入する単位時間あたりの余剰酸素量ΔO2が求められる。なお、上記(1)式から明らかなように、値ΔO2は、検出空燃比abyfがリーンのときに正、リッチのときに負の値となる。
【００７２】
そして、(2)式に示したように、単位時間あたりの余剰酸素量ΔO2を上記或る期間の開始時点から終了時点まで積算していくことで、同或る期間に亘る上流側触媒５３への余剰酸素の流入量である余剰酸素量OSAが算出され得る。
【００７３】
加えて、上記漏れによる空気進入は、排気通路中の排気圧力が大気圧以下の場合にのみ発生する。従って、「漏れによる空気進入の程度が大きいか否か」の判定は、排気圧力が大気圧以下に維持されている場合にのみ実行されることが好ましい。更には、排気圧力は吸入空気量Gaに比例する。
【００７４】
以上のことから、本装置は、吸入空気量Gaが「排気圧力が大気圧と等しくなる場合」に相当する値（後述する値A）以下に維持されている場合に係る判定を行う。そして、本装置は、或る時点から現時点までの吸入空気流量の積算値sumGaが所定値（後述する値B）以上となる場合において、同或る時点から現時点までの期間に対応する上記余剰酸素量OSAが所定値（後述する値C）以下となり、且つ、現時点での酸素濃度センサ出力Voxsがリーンを示す値minとなっている場合、「漏れによる空気進入の程度が大きい」と判定する。ここで、値Cは、例えば、上流側触媒５３の最大酸素吸蔵量Cmaxと等しい値であっても、同最大酸素吸蔵量Cmaxより小さい値であってもよい。最大酸素吸蔵量Cmaxの取得方法は周知であるから、ここではその詳細な説明を省略する。
【００７５】
このように、本装置は、所定の期間（sumGa≧Bとなる期間）に亘る空燃比センサ出力vabyfsの経緯から得られる上記余剰酸素量OSAが値C以下であって、且つ、同所定の期間経過後（現時点）での酸素濃度センサ出力Voxsがリーンを示す値minとなっている場合、「漏れによる空気進入の程度が大きい」と判定する。そして、「漏れによる空気進入の程度が大きい」と判定されている間、本装置は、上記サブフィードバック制御を中断する。以上が、漏れ判定と、サブフィードバック制御の中断についての概要である。
【００７６】
（実際の作動）
次に、上記のように構成された空燃比制御装置の実際の作動について、電気制御装置８０のＣＰＵ８１が実行するルーチン（プログラム）をフローチャートにより示した図４〜図７を参照しながら説明する。なお、図４に示したルーチンは、演算された空燃比制御量（後述するサブフィードバック制御量vafsfb）に基づいて上流側触媒５３に流入するガスの空燃比を制御する空燃比制御手段に対応し、図６に示したルーチンは、酸素濃度センサ６８の出力Voxsを理論空燃比に相当する所定の目標値Voxsrefと一致させるためのサブフィードバック制御量vafsfbを演算する空燃比制御量演算手段に対応している。
【００７７】
また、図７に示したルーチンは、上記漏れによる空気進入の程度を判定する空気進入判定手段、及びその判定結果に基づいてサブフィードバック制御を中断する空燃比制御制限手段に対応している。
【００７８】
ＣＰＵ８１は、図４に示した最終燃料噴射量Fiの計算及び燃料噴射の指示を行うルーチンを、所定の気筒のクランク角が吸気上死点前の所定クランク角度（例えば、ＢＴＤＣ９０°ＣＡ）となる毎に、繰り返し実行するようになっている。従って、所定の気筒のクランク角度が前記所定クランク角度になると、ＣＰＵ８１はステップ４００から処理を開始してステップ４０５に進み、エアフローメータ６１により計測されている吸入空気流量Gaとエンジン回転速度NEとに基づいて、機関の空燃比を理論空燃比とするための基本燃料噴射量Fbaseをマップfから求める。このマップfは、ＲＯＭ８２に予め記憶されている。
【００７９】
次いで、ＣＰＵ８１はステップ４１０に進み、上記求めた基本燃料噴射量Fbaseに後述する空燃比フィードバック補正量ＤＦｉを加えた値を最終燃料噴射量Fiとして設定する。
【００８０】
そして、ＣＰＵ８１はステップ４１５に進んで最終燃料噴射量Fiの燃料を噴射するための指示を前記所定の気筒に対応するインジェクタ３９に対して行い、ステップ４９５に進んで本ルーチンを一旦終了する。これにより、フィードバック補正された最終燃料噴射量Fiの燃料が吸気行程を迎える気筒に対して噴射される。なお、このルーチンは、他の気筒に対しても上記と同様に実行される。
【００８１】
次に、上記空燃比フィードバック補正量ＤＦｉの算出について説明する。ＣＰＵ８１は図５に示したルーチンを所定時間の経過毎に繰り返し実行している。従って、所定のタイミングになると、ＣＰＵ８１はステップ５００から処理を開始し、ステップ５０５に進んでフィードバック制御条件が成立しているか否かを判定する。空燃比フィードバック制御条件は、例えば、水温センサ６６により検出される機関の冷却水温THWが第１所定温度以上であり、機関の一回転当りの吸入空気量（負荷）が所定値以下であり、且つ、空燃比センサ６７が活性状態にあるときに成立する。
【００８２】
いま、空燃比フィードバック制御条件が成立しているものとして説明を続けると、ＣＰＵ８１はステップ５０５にて「Ｙｅｓ」と判定してステップ５１０に進み、現時点の空燃比センサ６７の出力vabyfsと後述するサブフィードバック制御量vafsfbとの和（vabyfs＋vafsfb）及び図２に示したマップに基づいて現時点における上流側触媒５３の上流の空燃比を求める。この空燃比は、上流側触媒５３の上流におけるガスの「みかけの空燃比」であり、以下、「上流側制御用空燃比abyfs」と称呼される。
【００８３】
次に、ＣＰＵ８１はステップ５１５に進み、現時点からＮストローク（Ｎ回の吸気行程）前に吸気行程を迎えた気筒の吸入空気量である筒内吸入空気量Ｍｃ（ｋ−Ｎ）を前記求めた上流側制御用空燃比abyfsで除することにより、現時点からＮストローク前の筒内燃料供給量Ｆｃ（ｋ−Ｎ）を求める。値Ｎは、内燃機関の排気量及び燃焼室２５から空燃比センサ６７までの距離等により異なる値である。
【００８４】
このように、現時点からＮストローク前の筒内燃料供給量Ｆｃ（ｋ−Ｎ）を求めるために、現時点からＮストローク前の筒内吸入空気量Ｍｃ（ｋ−Ｎ）を上流側制御用空燃比abyfsで除するのは、燃焼室２５内で燃焼された混合気が空燃比センサ６７に到達するまでには、Ｎストロークに相当する時間を要しているからである。なお、筒内吸入空気量Ｍｃは、各気筒の吸気行程毎に、その時点のエアフローメータ６１の出力Gaとエンジン回転速度NEとに基づいて求められ（例えば、エアフローメータ６１の出力Gaに一次遅れ処理を施した値をエンジン回転速度NEで除することにより求められ）、各吸気行程に対応してＲＡＭ８３内に記憶されている。
【００８５】
次いで、ＣＰＵ８１はステップ５２０に進み、現時点からＮストローク前の筒内吸入空気量Ｍｃ（ｋ−Ｎ）を現時点からＮストローク前の時点における目標空燃比abyfr（ｋ−Ｎ）（この例では、理論空燃比）で除することにより、現時点からＮストローク前の目標筒内燃料供給量Ｆｃｒ（ｋ−Ｎ）を求める。
【００８６】
そして、ＣＰＵ８１はステップ５２５に進んで目標筒内燃料供給量Ｆｃｒ（ｋ−Ｎ）から筒内燃料供給量Ｆｃ（ｋ−Ｎ）を減じた値を筒内燃料供給量偏差ＤＦｃとして設定する。つまり、筒内燃料供給量偏差ＤＦｃは、Ｎストローク前の時点で筒内に供給された燃料の過不足分を表す量となる。次に、ＣＰＵ８１はステップ５３０に進み、(3)式に基づいて空燃比フィードバック補正量ＤＦｉを求める。
【００８７】
ＤＦｉ＝（Ｇｐ・ＤＦｃ＋Ｇｉ・ＳＤＦｃ）・ＫＦＢ  …(3)
【００８８】
上記(3)式において、Ｇｐは予め設定された比例ゲイン、Ｇｉは予め設定された積分ゲインである。なお、(3)式の係数ＫＦＢはエンジン回転速度NE及び筒内吸入空気量Ｍｃ等により可変とすることが好適であるが、ここでは「１」としている。また、値ＳＤＦｃは筒内燃料供給量偏差ＤＦｃの積分値であり、次のステップ５３５にて更新される。
【００８９】
即ち、ＣＰＵ８１は、ステップ５３５にてその時点における筒内燃料供給量偏差ＤＦｃの積分値ＳＤＦｃに上記ステップ５２５にて求めた筒内燃料供給量偏差ＤＦｃを加えて、新たな筒内燃料供給量偏差の積分値ＳＤＦｃを求め、ステップ５９５にて本ルーチンを一旦終了する。
【００９０】
以上により、空燃比フィードバック補正量ＤＦｉが比例積分制御により求められ、この空燃比フィードバック補正量ＤＦｉが前述した図４のステップ４１０及びステップ４１５により最終燃料噴射量Fiに反映される。この結果、現時点からＮストローク前の燃料供給量の過不足が補償されるので、機関の空燃比（従って、上流側触媒５３に流入するガスの空燃比）の平均値が目標空燃比abyfr（理論空燃比）と略一致せしめられる。
【００９１】
一方、ステップ５０５の判定時において、空燃比フィードバック制御条件が不成立であると、ＣＰＵ８１は同ステップ５０５にて「Ｎｏ」と判定してステップ５４０に進み、空燃比フィードバック補正量ＤＦｉの値を「０」に設定し、続くステップ５４５にて、その後に空燃比フィードバック制御を再開するための準備として筒内燃料供給量偏差の積分値ＳＤＦｃを「０」に初期化した後、ステップ５９５に進んで本ルーチンを一旦終了する。このように、空燃比フィードバック制御条件が不成立であるときは、空燃比フィードバック補正量ＤＦｉを「０」として空燃比（基本燃料噴射量Ｆbase）の補正を行わない。
【００９２】
次に、酸素濃度センサ６８の出力Voxsに基づく空燃比フィードバック制御（即ち、サブフィードバック制御）について説明する。このサブフィードバック制御により、上述したサブフィードバック制御量vafsfbが算出される。
【００９３】
ＣＰＵ８１は、サブフィードバック制御量vafsfbを求めるために、図６に示したルーチンを所定時間の経過毎に実行している。従って、所定のタイミングになると、ＣＰＵ８１はステップ６００から処理を開始し、ステップ６０５に進み、フラグＳＵＢの値が「１」であるか否かを判定する。ここで、フラグＳＵＢは、その値が「１」のとき後述するルーチンにより「漏れによる空気進入の程度が小さい」と判定されていることを示し、その値が「０」のとき後述するルーチンにより「漏れによる空気進入の程度が大きい」と判定されていることを示す。
【００９４】
このステップ６０５にて「Ｙｅｓ」と判定される場合、ＣＰＵ８１はステップ６１０に進んでサブフィードバック制御条件が成立しているか否かを判定する。サブフィードバック制御条件は、例えば、前述したステップ５０５での空燃比フィードバック制御条件が成立し、機関の冷却水温THWが前記第１所定温度よりも高い第２所定温度以上であり、且つ、酸素濃度センサ６８が活性状態にあるときに成立する。
【００９５】
いま、後述するルーチンにより「漏れによる空気進入の程度が小さい」と判定されていて（ＳＵＢ＝１）、且つ、サブフィードバック制御条件が成立しているものとして説明を続けると、ＣＰＵ８１はステップ６０５、６１０にて共に「Ｙｅｓ」と判定してステップ６１５に進み、現時点での前記理論空燃比相当目標値Voxsrefから現時点の酸素濃度センサ６８の出力Voxsを減じることにより、出力偏差量ＤＶoxsを求める。次に、ＣＰＵ８１はステップ６２０に進み、下記(4)式に基づいてサブフィードバック制御量vafsfbを求める。
【００９６】
vafsfb＝Ｋｐ・ＤＶoxs＋Ｋｉ・ＳＤＶoxs  …(4)
【００９７】
上記(4)式において、Ｋｐは予め設定された比例ゲイン、Ｋｉは予め設定された積分ゲインである。また、ＳＤＶoxsは、出力偏差量ＤＶoxsの積分値であって、次のステップ６２５にて更新される値である。即ち、ＣＰＵ８１は、ステップ６２５に進むと、その時点における出力偏差量の積分値ＳＤＶoxsに上記ステップ６１５にて求めた出力偏差量ＤＶoxsを加えて、新たな出力偏差量の積分値ＳＤＶoxsを求め、その後、ステップ６９５に進んで本ルーチンを一旦終了する。
【００９８】
このようにして、サブフィードバック制御量vafsfbが求められ、この値は前述した図５のステップ５１０にて空燃比センサ６７の実際の出力に加えられ、その和（vabyfs
+ vafsfb）が図２に示したマップに基づいて前記上流側制御用空燃比abyfsに変換される。換言すると、上流側制御用空燃比abyfsは、空燃比センサ６７が実際に検出している空燃比に対して、酸素濃度センサ６８の出力Voxsに基づいて求められるサブフィードバック制御量vafsfbに相当する分だけ異なる空燃比として求められる。
【００９９】
この結果、前述した図５のステップ５１５にて計算される筒内燃料供給量Ｆｃ（ｋ−Ｎ）が酸素濃度センサ６８の出力Voxsに応じて変化するので、ステップ５２５，５３０によって空燃比フィードバック補正量ＤＦｉが同酸素濃度センサ６８の出力Voxsに応じて変更せしめられる。これにより、上流側触媒５３の下流側の空燃比が理論空燃比に一致するように、機関の空燃比が制御せしめられる。
【０１００】
例えば、酸素濃度センサ６８の出力Voxsが理論空燃比相当値Voxsrefよりも小さい値（即ち、リーン側に偏移した値）となっていると、ステップ６１５にて求められる出力偏差量ＤＶoxsが正の値となるので、ステップ６２０にて求められるサブフィードバック制御量vafsfbは正の値となる。従って、ステップ５１０にて求められるabyfsは空燃比センサ６７が実際に検出している空燃比よりもリーンな値（より大きな値）として求められる。
【０１０１】
このため、ステップ５１５にて求められる筒内燃料供給量Ｆｃ（ｋ−Ｎ）は小さい値となり、ステップ５２５にて求められる筒内燃料供給量偏差ＤＦｃは大きい値となる。従って、空燃比フィードバック補正量ＤＦｉが大きい正の値となる。この結果、図４のステップ４１０にて求められる最終燃料噴射量Fiは、基本燃料噴射量Fbaseよりも大きくなって、機関の空燃比がリッチ側の値となるように制御される。
【０１０２】
反対に、機関の平均的な空燃比がリッチであるために酸素濃度センサ６８の出力Voxsが理論空燃比相当値Voxsrefよりも大きい値（即ち、リッチ側に偏移した値）となっていると、出力偏差量ＤＶoxsが負の値となるので、サブフィードバック制御量vafsfbは負の値となる。従って、ステップ５１０にて求められるabyfsは空燃比センサ６７が実際に検出している空燃比よりもリッチな値（より小さな値）として求められる。
【０１０３】
従って、筒内燃料供給量Ｆｃ（ｋ−Ｎ）は大きい値となるので、筒内燃料供給量偏差ＤＦｃは負の値として求められる。その結果、空燃比フィードバック補正量ＤＦｉが負の値となる。これにより、最終燃料噴射量Fiは、基本燃料噴射量Fbaseよりも小さくなって、機関の空燃比がリーン側の値となるように制御される。
【０１０４】
一方、後述するルーチンにより「漏れによる空気進入の程度が大きい」と判定されている場合（ＳＵＢ＝０）、或いは、サブフィードバック制御条件が不成立であると、ＣＰＵ８１はステップ６０５、或いはステップ６１０にて「Ｎｏ」と判定してステップ６３０に進み、サブフィードバック制御量vafsfbの値を「０」に設定し、続くステップ６３５にて、その後にサブフィードバック制御を再開するための準備として出力偏差量の積分値ＳＤＶoxsを「０」に初期化した後、ステップ６９５に進んで本ルーチンを一旦終了する。
【０１０５】
このように、後述するルーチンにより「漏れによる空気進入の程度が大きい」と判定されている場合（ＳＵＢ＝０）、或いは、サブフィードバック制御条件が不成立であるとき、サブフィードバック制御量vafsfbを「０」として、酸素濃度センサ６８の出力Voxsに応じた空燃比センサ６７の出力vabyfsの補正（従って、空燃比フィードバック補正量ＤＦｉの補正。即ち、サブフィードバック制御）を行わない。
【０１０６】
次に、漏れ判定、及びサブフィードバックの許可・禁止について説明する。ＣＰＵ８１は、図７にフローチャートにより示したルーチンを所定時間（プログラム実行周期Δｔ）の経過毎に実行している。従って、所定のタイミングになると、ＣＰＵ８１はステップ７００から処理を開始し、ステップ７０５に進んで、エアフローメータ６１により計測されている現時点での吸入空気流量Gaが所定値A以下であるか否か（従って、排気圧力が大気圧以下であるか否か）を判定する。このステップ７０５は低負荷状態判定手段に相当する。
【０１０７】
いま、機関が高負荷状態にあって吸入空気流量Gaが所定値Aを超えているものとすると、ＣＰＵ８１はステップ７０５にて「Ｎｏ」と判定してステップ７１０に進み、余剰酸素量OSAを「０」に初期化し、続くステップ７１５にて吸入空気流量の積算値sumGaを「０」に初期化する。
【０１０８】
次に、ＣＰＵ８１はステップ７２０に進んで、フラグＳＵＢの値を「１」に設定し、その後、ステップ７９５に進んで本ルーチンを一旦終了する。以降、吸入空気流量Gaが所定値Aを超えている（高負荷状態にある）限りにおいて、ＣＰＵ８１はステップ７０５に進む毎に「Ｎｏ」と判定する。
【０１０９】
この結果、フラグＳＵＢの値が「１」に維持されるから、ＣＰＵ８１は図６のステップ６０５に進む毎に「Ｙｅｓ」と判定する。従って、上述したサブフィードバック制御条件（ステップ６１０）が成立する限りにおいてサブフィードバック制御が継続されることになる。これは、吸入空気流量Gaが所定値Aを超えている場合（即ち、排気圧力が大気圧を超える高負荷状態にある場合）、上記漏れによる空気進入が発生し得ないことに対応する。
【０１１０】
次に、この状態（吸入空気流量Gaが所定値Aを超えている状態）から、機関が低負荷状態に移行して吸入空気流量Gaが所定値A以下になった（所定の低負荷状態になった）場合について説明する。この場合、ＣＰＵ８１は、ステップ７０５に進んだとき「Ｙｅｓ」と判定してステップ７２５に進み、現時点の空燃比センサ６７の出力vabyfs及び図２に示したマップに基づいて現時点における上流側触媒５３上流の検出空燃比abyfを求める。
【０１１１】
続いて、ＣＰＵ８１はステップ７３０に進み、上記求めた検出空燃比abyfと、現時点での吸入空気流量Gaと、上記(1)式に相当するステップ７３０内に記載の式に従ってプログラム実行周期Δｔあたりの余剰酸素量ΔO2を求め、続くステップ７３５にて上記(2)式に相当するステップ７３５内に記載の式にて、その時点での余剰酸素量OSA（現時点では「０」）に上記求めた余剰酸素量ΔO2を加えることで余剰酸素量OSAの値（即ち、ΔO2の積算値）を更新する。
【０１１２】
続いて、ＣＰＵ８１はステップ７４０に進んでその時点での吸入空気流量の積算値sumGa（現時点では「０」）にプログラム実行周期Δｔあたりの吸入空気量「Ga・Δｔ」を加えることで吸入空気流量の積算値sumGaを更新する。このように、余剰酸素量OSA、及び吸入空気流量の積算値sumGaは、吸入空気流量Gaが所定値Aを超えている状態から同所定値A以下に移行した時点以降の積算値となる。
【０１１３】
次いで、ＣＰＵ８１はステップ７４５に進み、上記吸入空気流量の積算値sumGaが所定値B以上となっているか否かを判定する。現時点では、吸入空気流量Gaが所定値Aを超えている状態から同所定値A以下に移行した直後であって積算値sumGaは所定値Bよりも小さい。従って、ＣＰＵ８１はステップ７４５にて「Ｎｏ」と判定して上述したステップ７２０に進み、フラグＳＵＢの値を「１」に設定する。
【０１１４】
以降、吸入空気流量Gaが所定値A以下に（低負荷状態に）維持されていて、且つ、吸入空気流量の積算値sumGaが所定値Bに達しない限りにおいて、ＣＰＵ８１はステップ７４５に進む毎に「Ｎｏ」と判定してステップ７２０に進む。この結果、余剰酸素量OSA、及び吸入空気流量の積算値sumGaが更新されていく（ステップ７３５、７４０）。また、フラグＳＵＢの値が「１」に維持されるから、上述した「吸入空気流量Gaが所定値Aを超えている場合（高負荷の場合）」と同様、上述したサブフィードバック制御条件（ステップ６１０）が成立する限りにおいてサブフィードバック制御が継続されることになる。
【０１１５】
そして、吸入空気流量Gaが所定値A以下に維持されたまま所定時間が経過して、吸入空気流量の積算値sumGaが所定値Bに達したものとすると、ＣＰＵ８１はステップ７４５に進んだとき「Ｙｅｓ」と判定してステップ７５０に進み、現時点での酸素濃度センサ出力Voxsがリーンを示す値minとなっていて、且つ、ステップ７３５にて更新されている現時点での余剰酸素量OSAが所定値C以下となっているか否かを（初めて）判定する。
【０１１６】
ＣＰＵ８１はこのステップ７５０の判定にて「Ｎｏ」と判定する場合、上述したステップ７２０に進んでフラグＳＵＢの値を「１」に設定する（維持する）。これは、「漏れによる空気進入の程度が小さい」と判定することに対応する。一方、ＣＰＵ８１はステップ７５０の判定にて「Ｙｅｓ」と判定する場合、ステップ７５５に進んでフラグＳＵＢの値を「０」に設定する。これは、「漏れによる空気進入の程度が大きい」と判定することに対応する。
【０１１７】
以降、吸入空気流量Gaが所定値A以下に維持されている限りにおいて、ＣＰＵ８１は（ステップ７０５、７４５にて「Ｙｅｓ」と判定して）ステップ７５０の判定を繰り返し行い、判定結果に応じてフラグＳＵＢの値を「０」と「１」の何れかに逐次設定・変更していく。
【０１１８】
この結果、フラグＳＵＢの値が「１」となっている間（漏れによる空気進入の程度が小さいと判定されている間）、上述したサブフィードバック制御条件（ステップ６１０）が成立する限りにおいてサブフィードバック制御が継続されることになる。一方、フラグＳＵＢの値が「０」となっている間（漏れによる空気進入の程度が大きいと判定されている間）、ＣＰＵ８１は図６のステップ６０５に進む毎に「Ｎｏ」と判定する。従って、上述したサブフィードバック制御条件（ステップ６１０）が成立するか否かにかかわらずサブフィードバック制御が中断される。
【０１１９】
以上、説明したように、本発明の第１実施形態に係る空燃比制御装置によれば、機関が高負荷状態（排気圧力が大気圧を越える状態。吸入空気流量Ga＞A）にある場合、上流側触媒５３の下流の酸素濃度センサ６８内部での漏れによる空気進入が発生し得ないから同酸素濃度センサ出力Voxsに基づく理論空燃比を目標とする空燃比制御（サブフィードバック制御）を行う（ＳＵＢ＝１）。機関が低負荷状態（排気圧力が大気圧以下となる状態。Ga≦A）にある場合、所定期間（吸入空気流量の積算値sumGa≧Bとなる期間）に亘る上流側触媒５３の上流の空燃比センサ６７の出力vabyfsの経緯（上記(1)式、(2)式を参照）から得られる上流側触媒５３への同所定期間中に亘る余剰酸素の流入量（余剰酸素量OSA）が所定値C以下であって、且つ、同所定期間経過時点での酸素濃度センサ出力Voxsがリーンを示す値minとなっていることを条件に、「酸素濃度センサ６８内部での漏れによる空気進入の程度が大きい」と判定（ステップ７５０）して上記サブフィードバックを中断する（ＳＵＢ＝０）。
【０１２０】
これにより、「酸素濃度センサ６８内部での漏れによる空気進入の程度が大きい」ことが簡易、且つ確実に判定され得、酸素濃度センサ内部での漏れによる空気進入に起因してサブフィードバック制御により機関に供給される混合気の空燃比（従って、触媒に流入するガスの空燃比）が理論空燃比よりもリッチの空燃比に空燃比フィードバック制御されることが抑制される。従って、上記未燃ＨＣ，ＣＯの排出量が増大する事態の発生を抑制することができる。
【０１２１】
また、酸素濃度センサ６８内部での漏れによる空気進入が発生し得ない上記高負荷状態では、「酸素濃度センサ６８内部での漏れによる空気進入の程度が大きい」か否かの判定が行われない。従って、不必要な判定を行うことが防止され得る。
【０１２２】
（第２実施形態）
次に、本発明の第２実施形態に係る空燃比制御装置について説明する。この空燃比制御装置は、「酸素濃度センサ６８内部での漏れによる空気進入の程度が大きい」か否かの判定をワントリップ中において１回のみ行う点、並びに、低負荷状態（Ga≦A）に維持されていて同判定が未完了の段階（所定の期間。以下、この場合を「判定処理実行中」と称呼する。）においてサブフィードバックを中断する点においてのみ上記第１実施形態と異なっている。従って、以下、係る相違点を中心に説明する。
【０１２３】
上記第１実施形態では、低負荷状態（Ga≦A）に維持されていて、且つ、「酸素濃度センサ６８内部での漏れによる空気進入の程度が大きい」か否かの判定（図７のステップ７５０）が未完了（未実施）の段階（図７のステップ７４５にて「Ｎｏ」と判定し続けている段階。上記判定処理実行中）では、上述したように、サブフィードバック制御が継続されるようになっている。
【０１２４】
このように、判定処理実行中においてサブフィードバック制御が行われると、同判定処理実行中において当初、漏れによる空気進入により酸素濃度センサ出力Voxsがリーンを示す値になっている場合、サブフィードバック制御により機関の空燃比がリッチ空燃比に制御されることになる。
【０１２５】
この結果、上流側触媒５３の酸素吸蔵量が減少して「０」に達することで酸素濃度センサ到達ガスの空燃比がリッチとなり、判定処理実行中において酸素濃度センサ出力Voxsがリーンを示す値からリッチを示す値に変化する場合も考えられる。
【０１２６】
この状態で上記判定が実行されると（即ち、図７のステップ７４５にて「Ｙｅｓ」と判定してステップ７５０の判定が行われると、）、「漏れによる空気進入の程度が大きい」と判定されるべき場合であるにもかかわらず「漏れによる空気進入の程度が小さい」と誤判定されることになる。このような誤判定は、判定処理実行中に亘ってサブフィードバック制御が継続されることに起因する。従って、第２実施形態では、判定処理実行中においてはサブフィードバックが中断されるようになっている。
【０１２７】
また、酸素濃度センサ６８内部での上記漏れの発生傾向は、例えば、ワントリップ期間程度の比較的短い期間内においては大きく変化することはないということができる。従って、ワントリップ期間内において「漏れによる空気進入の程度の判定」（即ち、図７のステップ７５０の判定）が一旦完了すれば、以降、同一のワントリップ期間中においては再判定を行う必要性は低いということができる。従って、第２実施形態では、ワントリップ期間中において上記判定が１回のみ実行されるようになっている。
【０１２８】
（第２実施形態の実際の作動）
以下、第２実施形態に係る空燃比制御装置の実際の作動について説明する。この装置のＣＰＵ８１は、第２実施形態のＣＰＵ８１が実行する図４〜図６に示したルーチンをそのまま実行する。一方、この装置のＣＰＵ８１は、第１実施形態のＣＰＵ８１が実行する図７に示したルーチンに代えて図８にフローチャートにより示したルーチンを実行する。以下、第２実施形態に特有の図８に示したルーチンについて説明する。
【０１２９】
この装置のＣＰＵ８１は、図８に示した漏れ判定、及びサブフィードバックの許可・禁止を行うルーチンを、所定時間（プログラム実行周期Δｔ）の経過毎に実行している。なお、図８に示したルーチンにおいて、図７のステップと同一のステップについては図７のステップ番号と同一の番号を付すことでそれらの説明に代える。
【０１３０】
従って、所定のタイミングになると、ＣＰＵ８１はステップ８００から処理を開始し、ステップ８０５に進んで、フラグＸＨＡＮの値が「０」であるか否かを判定する。フラグＸＨＡＮは、その値が「１」のとき上記判定（ステップ７５０）が完了されている状態を示し、その値が「０」のとき同判定が完了されていない状態を示す。
【０１３１】
いま、図示しないイグニッションがオンされた時点以降、上記判定（ステップ７５０）が未だ完了（実行）されていないものとすると、フラグＸＨＡＮの値は「０」になっている。従って、ＣＰＵ８１はステップ８０５にて「Ｙｅｓ」と判定してステップ７０５に進む。
【０１３２】
ステップ７０５の判定にて「Ｎｏ」と判定する場合（即ち、高負荷状態の場合）、ＣＰＵ８１はステップ８１０に進んでフラグＳＵＢを「１」に設定し、その後、ステップ７１０、７１５の処理を行う。即ち、上記ステップ７５０の判定が未完了で高負荷状態の場合、第１実施形態と同様、フラグＳＵＢの値が「１」に維持されるから、上述したサブフィードバック制御条件（ステップ６１０）が成立する限りにおいてサブフィードバック制御が継続される。
【０１３３】
一方、ステップ７０５の判定にて「Ｙｅｓ」と判定する場合（即ち、低負荷状態の場合）、ＣＰＵ８１はステップ８１５に進み、フラグＳＵＢを「０」に設定し、その後、ステップ７２５〜７４５の処理を行う。ステップ７４５にて「Ｎｏ」と判定される限りにおいて、ＣＰＵ８１はステップ８０５、７０５、８１５、７２５〜７４５の処理を繰り返し実行する。即ち、判定処理実行中はフラグＳＵＢの値が「０」に維持されるから、サブフィードバック制御が常に中断させられる。
【０１３４】
そして、所定時間が経過し、ステップ７４５にて「Ｙｅｓ」と判定する場合、ＣＰＵ８１はステップ８２０に進んでフラグＸＨＡＮの値を「０」から「１」に変更し、続いて、ステップ７５０の判定を行う。そして、「Ｙｅｓ」と判定する場合（即ち、「漏れによる空気進入の程度が大きい」と判定される場合）、ＣＰＵ８１はステップ８２５に進んでフラグＬＥＡＫの値を「１」に設定する。
【０１３５】
一方、「Ｎｏ」と判定する場合（即ち、「漏れによる空気進入の程度が小さい」と判定される場合）、ＣＰＵ８１はステップ８３０に進んでフラグＬＥＡＫの値を「０」に設定する。ここで、フラグＬＥＡＫは、その値が「１」のとき「漏れによる空気進入の程度が大きい」と判定されていることを示し、その値が「０」のとき「漏れによる空気進入の程度が小さい」と判定されていることを示す。
【０１３６】
以降、フラグＸＨＡＮの値が「１」になっているから、ＣＰＵ８１はステップ８０５に進んだとき「Ｎｏ」と判定してステップ８３５に進み、フラグＬＥＡＫの値が「０」であるか否かを判定する。そして、「Ｙｅｓ」と判定する場合（即ち、「漏れによる空気進入の程度が小さい」と判定されている場合）、ステップ８４０に進んでフラグＳＵＢの値を「１」に設定する。一方、「Ｎｏ」と判定する場合（即ち、「漏れによる空気進入の程度が大きい」と判定されている場合）、ステップ８４５に進んでフラグＳＵＢの値を「０」に設定する。以降、同一のワントリップ期間中では、フラグＸＨＡＮの値、及びフラグＬＥＡＫの値が維持される。
【０１３７】
即ち、ステップ７５０の判定が1回実行されると、以降、同一のワントリップ期間中において、その判定結果が維持されるとともにステップ７５０の判定は実行されない。そして、「漏れによる空気進入の程度が小さい」と判定されている場合、機関の負荷状態にかかわらず上述したサブフィードバック制御条件（ステップ６１０）が成立する限りにおいてサブフィードバック制御が継続される。一方、「漏れによる空気進入の程度が大きい」と判定されている場合、機関の負荷状態にかかわらずサブフィードバック制御が中断させられる。
【０１３８】
以上、説明したように、本発明の第２実施形態に係る空燃比制御装置によれば、判定処理実行中においてサブフィードバック制御が中断させられるから、判定処理実行中に亘ってサブフィードバック制御が継続されることに起因する上述した誤判定がなされることが防止され得る。
【０１３９】
更には、ワントリップ期間中においては、「酸素濃度センサ６８内部での漏れによる空気進入の程度が大きい」か否かの判定（ステップ７５０の判定）が一旦実行されると、以降、再判定は行われない。従って、不必要に判定が行われることが防止される。
【０１４０】
本発明は上記各実施形態に限定されることはなく、本発明の範囲内において種々の変形例を採用することができる。例えば、上記各実施形態では、「酸素濃度センサ６８内部での漏れによる空気進入の程度が大きい」との判定がなされた場合、サブフィードバック制御が中断させられるように構成されているが、同判定がなされた場合、図６のステップ６２０で計算されるサブフィードバック制御量vafsfb（空燃比制御量）を制限してもよい。
【０１４１】
具体的には、「酸素濃度センサ６８内部での漏れによる空気進入の程度が大きい」との判定がなされた場合、サブフィードバック制御量vafsfbの値を、ステップ６２０にて計算された値vafsfbに所定の係数Ｋ（０＜Ｋ＜１）を乗じた値に設定してもよい。或いは、「酸素濃度センサ６８内部での漏れによる空気進入の程度が大きい」との判定がなされた場合、サブフィードバック制御量vafsfbの値を、ステップ６２０にて計算された値vafsfbを所定の範囲内（-Z≦vafsfb≦Z：  値Zは正の定数）に制限した値に設定してもよい。
【０１４２】
更には、「酸素濃度センサ６８内部での漏れによる空気進入の程度が小さい」との判定がなされた場合、サブフィードバック制御量vafsfbの値を、ステップ６２０にて計算された値vafsfbを第１の範囲内（-Z1≦vafsfb≦Z1：  値Z1は正の定数）に制限した値に設定するとともに、「酸素濃度センサ６８内部での漏れによる空気進入の程度が大きい」との判定がなされた場合、サブフィードバック制御量vafsfbの値を、ステップ６２０にて計算された値vafsfbを同第１の範囲よりも狭い第２の範囲内（-Z2≦vafsfb≦Z2：  値Z2は正の定数であって、Z2＜Z1）に制限した値に設定してもよい。
【０１４３】
また、上記第２実施形態においては、ステップ７５０の判定が一旦実行されると、以降、「漏れによる空気進入の程度が大きい」と判定されている場合（ＬＥＡＫ＝１）、機関の負荷状態にかかわらずサブフィードバック制御が中断させられるように構成されているが、機関が高負荷状態にある場合（Ga＞A）、「漏れによる空気進入の程度が大きい」と判定されている場合であってもサブフィードバックを継続するように構成してもよい。
【図面の簡単な説明】
【０１４４】
【図１】内燃機関に適用した本発明の第１実施形態に係る空燃比制御装置（燃料噴射量制御装置）の概略を示した図である。
【図２】図１に示した空燃比センサの出力と空燃比の関係を示したグラフである。
【図３】図１に示した酸素濃度センサの出力と空燃比の関係を示したグラフである。
【図４】図１に示したＣＰＵが実行する燃料噴射制御ルーチンを示したフローチャートである。
【図５】図１に示したＣＰＵが空燃比フィードバック補正量を算出するために実行するルーチンを示したフローチャートである。
【図６】図１に示したＣＰＵがサブフィードバック制御量を算出するために実行するルーチンを示したフローチャートである。
【図７】図１に示したＣＰＵが漏れ判定、及びサブフィードバックの許可・禁止を行うために実行するルーチンを示したフローチャートである。
【図８】本発明の第２実施形態に係る空燃比制御装置のＣＰＵが漏れ判定、及びサブフィードバックの許可・禁止を行うために実行するルーチンを示したフローチャートである。
【符号の説明】
【０１４５】
２５…燃焼室、３９…インジェクタ、５３…上流側触媒、６１…エアフローメータ、６７…空燃比センサ、６８…酸素濃度センサ、８０…電気制御装置、８１…ＣＰＵ
【図１】
2006200364.tif 000003
【図２】
2006200364.tif 000004
【図３】
2006200364.tif 000005
【図４】
2006200364.tif 000006
【図５】
2006200364.tif 000007
【図６】
2006200364.tif 000008
【図７】
2006200364.tif 000009
【図８】
2006200364.tif 000010