(57)【要約】【課題】ＮＯｘに加えて未燃ガスが排気浄化触媒から流出するのを抑制する。【解決手段】内燃機関は、排気浄化触媒２０と、排気浄化触媒の下流側に配置された下流側空燃比センサ４１と、排気浄化触媒に流入する排気ガスの空燃比を制御する空燃比制御装置３１とを具備する。空燃比制御装置は、排気浄化触媒の酸素吸蔵量ＯＳＡが最大吸蔵可能酸素量Ｃｍａｘよりも少ない上限値Ｃｕｐとゼロよりも多い下限値Ｃｌｏｗとに交互に変化するように排気浄化触媒に流入する排気ガスの空燃比をリーン空燃比とリッチ空燃比との間で交互に繰り返し切り替える基本空燃比制御と、基本空燃比制御により複数回切り替えが繰り返し行われた後の所定の時期に、排気浄化触媒に流入する排気ガスの空燃比を、下流側空燃比センサの出力空燃比ＡＦｄｗｎがリッチ判定空燃比ＡＦｒｉｃｈに到達するまでリッチ空燃比に維持する一時的空燃比制御とを実行する。【選択図】図６
2016217155.tif 000002
【特許請求の範囲】
【請求項１】
内燃機関の排気通路に配置されると共に酸素を吸蔵可能な排気浄化触媒と、該排気浄化触媒の排気流れ方向下流側に配置されると共に前記排気浄化触媒から流出する排気ガスの空燃比を検出する下流側空燃比センサと、前記排気浄化触媒に流入する排気ガスの空燃比を制御する空燃比制御装置とを具備する内燃機関において、
前記空燃比制御装置は、前記排気浄化触媒の酸素吸蔵量が最大吸蔵可能酸素量よりも少ない上限値とゼロよりも多い下限値とに交互に変化するように前記排気浄化触媒に流入する排気ガスの空燃比を理論空燃比よりもリーンなリーン空燃比と理論空燃比よりもリッチなリッチ空燃比との間で交互に繰り返し切り替える基本空燃比制御と、
前記基本空燃比制御により複数回切り替えが繰り返し行われた後の所定の時期に、前記排気浄化触媒に流入する排気ガスの空燃比を、前記排気浄化触媒の酸素吸蔵量が前記下限値よりも低下して前記下流側空燃比センサの出力空燃比が理論空燃比よりもリッチなリッチ判定空燃比に到達するまでリッチ空燃比に維持する一時的空燃比制御とを実行する、内燃機関。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、排気浄化触媒に流入する排気ガスの空燃比を制御する空燃比制御装置を具備する内燃機関に関する。
【背景技術】
【０００２】
従来から、内燃機関の排気通路に空燃比センサを設け、この空燃比センサによって検出された空燃比（以下、「出力空燃比」ともいう）に基づいて、排気通路に設けられた排気浄化触媒に流入する排気ガスの空燃比を制御することが提案されている（例えば、特許文献１）。
【０００３】
特に、特許文献１に記載の内燃機関では、排気浄化触媒に流入する排気ガスの空燃比がリッチ空燃比になっている状態で、排気浄化触媒よりも排気流れ方向下流側に配置された空燃比センサの出力空燃比が理論空燃比よりもリッチなリッチ判定空燃比以下になると排気浄化触媒に流入する排気ガスの空燃比が理論空燃比よりもリーンな空燃比（以下、「リーン空燃比」ともいう）に切り替えられる。加えて、排気浄化触媒に流入する排気ガスの空燃比がリーン空燃比になっている状態で、排気浄化触媒の酸素吸蔵量が所定の吸蔵量に到達すると、排気浄化触媒に流入する排気ガスの空燃比が理論空燃比よりもリッチな空燃比（以下、「リッチ空燃比」ともいう）に切り替えられる。特許文献１では、このような制御を繰り返すことにより、排気浄化触媒からＮＯｘが流出するのを抑制することができるとされている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】国際公開第２０１４／１１８８９２号
【特許文献２】特開２００６−１８３６３７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、特許文献１に記載の内燃機関では、排気浄化触媒に流入する排気ガスの空燃比をリーン空燃比に設定して排気浄化触媒の酸素吸蔵量を増大させ、その後、排気浄化触媒に流入する排気ガスの空燃比をリッチ空燃比に設定して排気浄化触媒の酸素吸蔵量を減少させるというサイクルが繰り返されている。特に、特許文献１に記載の内燃機関では、下流側空燃比センサの出力空燃比がリッチ判定空燃比以下になったときに空燃比をリッチ空燃比からリーン空燃比に切り替えている。このため、この内燃機関では、基本的に１回のサイクル毎に、排気浄化触媒から未燃ガス（未燃ＨＣ、ＣＯ等）が流出することになる。したがって、比較的短い期間ごとに排気浄化触媒から未燃ガスが流出することになる。
【０００６】
また、特許文献１に記載の内燃機関では、排気浄化触媒に流入する排気ガスの空燃比をリッチ空燃比に設定している間に一時的に排気ガスの空燃比をリーン空燃比に設定することも提案されている。しかしながら、この場合であっても、排気浄化触媒の酸素吸蔵量は徐々に減少しており、結果的に比較的短い期間毎に排気浄化触媒から未燃ガスが流出することになる。
【０００７】
そこで、上記課題に鑑みて、本発明の目的は、ＮＯｘに加えて未燃ガスが排気浄化触媒から流出するのを抑制することができる内燃機関を提供することにある。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、第１の発明では、内燃機関の排気通路に配置されると共に酸素を吸蔵可能な排気浄化触媒と、該排気浄化触媒の排気流れ方向下流側に配置されると共に前記排気浄化触媒から流出する排気ガスの空燃比を検出する下流側空燃比センサと、前記排気浄化触媒に流入する排気ガスの空燃比を制御する空燃比制御装置とを具備する内燃機関において、前記空燃比制御装置は、前記排気浄化触媒の酸素吸蔵量が最大吸蔵可能酸素量よりも少ない上限値とゼロよりも多い下限値とに交互に変化するように前記排気浄化触媒に流入する排気ガスの空燃比を理論空燃比よりもリーンなリーン空燃比と理論空燃比よりもリッチなリッチ空燃比との間で交互に繰り返し切り替える基本空燃比制御と、前記基本空燃比制御により複数回切り替えが繰り返し行われた後の所定の時期に、前記排気浄化触媒に流入する排気ガスの空燃比を、前記排気浄化触媒の酸素吸蔵量が前記下限値よりも低下して前記下流側空燃比センサの出力空燃比が理論空燃比よりもリッチなリッチ判定空燃比に到達するまでリッチ空燃比に維持する一時的空燃比制御とを実行する、内燃機関が提供される。
【発明の効果】
【０００９】
本発明によれば、ＮＯｘに加えて未燃ガスが排気浄化触媒から流出するのを抑制することができる内燃機関が提供される。
【図面の簡単な説明】
【００１０】
【図１】図１は、本発明の内燃機関を概略的に示す図である。
【図２】図２は、各排気空燃比におけるセンサ印加電圧と出力電流との関係を示す図である。
【図３】図３は、センサ印加電圧を一定にしたときの排気空燃比と出力電流との関係を示す図である。
【図４】図４は、基本空燃比制御を行った際の空燃比補正量等のタイムチャートである。
【図５】図５は、基本空燃比制御を行った際の空燃比補正量等のタイムチャートである。
【図６】図６は、一時的空燃比制御が実行される場合の空燃比補正量等のタイムチャートである。
【図７】図７は、一時的空燃比制御が実行される場合の空燃比補正量等のタイムチャートである。
【図８】図８は、制御装置の機能ブロック図である。
【図９】図９は、基本空燃比制御の制御ルーチンを示すフローチャートである。
【図１０】図１０は、一時的空燃比制御の制御ルーチンを示すフローチャートである。
【図１１】図１１は、学習制御の制御ルーチンを示すフローチャートである。
【発明を実施するための形態】
【００１１】
以下、図面を参照して本発明の実施形態について詳細に説明する。なお、以下の説明では、同様な構成要素には同一の参照番号を付す。
【００１２】
＜内燃機関全体の説明＞
図１は、本発明の第一実施形態に係る排気浄化装置が用いられる内燃機関を概略的に示す図である。図１を参照すると１は機関本体、２はシリンダブロック、３はシリンダブロック２内で往復動するピストン、４はシリンダブロック２上に固定されたシリンダヘッド、５はピストン３とシリンダヘッド４との間に形成された燃焼室、６は吸気弁、７は吸気ポート、８は排気弁、９は排気ポートをそれぞれ示す。吸気弁６は吸気ポート７を開閉し、排気弁８は排気ポート９を開閉する。
【００１３】
図１に示したようにシリンダヘッド４の内壁面の中央部には点火プラグ１０が配置され、シリンダヘッド４の内壁面周辺部には燃料噴射弁１１が配置される。点火プラグ１０は、点火信号に応じて火花を発生させるように構成される。また、燃料噴射弁１１は、噴射信号に応じて、所定量の燃料を燃焼室５内に噴射する。なお、燃料噴射弁１１は、吸気ポート７内に燃料を噴射するように配置されてもよい。また、本実施形態では、燃料として理論空燃比が１４．６であるガソリンが用いられる。しかしながら、本発明の排気浄化装置が用いられる内燃機関では、ガソリン以外の燃料、或いはガソリンとの混合燃料を用いてもよい。
【００１４】
各気筒の吸気ポート７はそれぞれ対応する吸気枝管１３を介してサージタンク１４に連結され、サージタンク１４は吸気管１５を介してエアクリーナ１６に連結される。吸気ポート７、吸気枝管１３、サージタンク１４、吸気管１５は吸気通路を形成する。また、吸気管１５内にはスロットル弁駆動アクチュエータ１７によって駆動されるスロットル弁１８が配置される。スロットル弁１８は、スロットル弁駆動アクチュエータ１７によって回動せしめられることで、吸気通路の開口面積を変更することができる。
【００１５】
一方、各気筒の排気ポート９は排気マニホルド１９に連結される。排気マニホルド１９は、各排気ポート９に連結される複数の枝部とこれら枝部が集合した集合部とを有する。排気マニホルド１９の集合部は上流側排気浄化触媒２０を内蔵した上流側ケーシング２１に連結される。上流側ケーシング２１は、排気管２２を介して下流側排気浄化触媒２４を内蔵した下流側ケーシング２３に連結される。排気ポート９、排気マニホルド１９、上流側ケーシング２１、排気管２２及び下流側ケーシング２３は、排気通路を形成する。
【００１６】
電子制御ユニット（ＥＣＵ）３１はデジタルコンピュータからなり、双方向性バス３２を介して相互に接続されたＲＡＭ（ランダムアクセスメモリ）３３、ＲＯＭ（リードオンリメモリ）３４、ＣＰＵ（マイクロプロセッサ）３５、入力ポート３６及び出力ポート３７を具備する。吸気管１５には、吸気管１５内を流れる空気流量を検出するためのエアフロメータ３９が配置され、このエアフロメータ３９の出力は対応するＡＤ変換器３８を介して入力ポート３６に入力される。また、排気マニホルド１９の集合部には排気マニホルド１９内を流れる排気ガス（すなわち、上流側排気浄化触媒２０に流入する排気ガス）の空燃比を検出する上流側空燃比センサ４０が配置される。加えて、排気管２２内には排気管２２内を流れる排気ガス（すなわち、上流側排気浄化触媒２０から流出して下流側排気浄化触媒２４に流入する排気ガス）の空燃比を検出する下流側空燃比センサ４１が配置される。これら空燃比センサ４０、４１の出力も対応するＡＤ変換器３８を介して入力ポート３６に入力される。
【００１７】
また、アクセルペダル４２にはアクセルペダル４２の踏込み量に比例した出力電圧を発生する負荷センサ４３が接続され、負荷センサ４３の出力電圧は対応するＡＤ変換器３８を介して入力ポート３６に入力される。クランク角センサ４４は例えばクランクシャフトが１５度回転する毎に出力パルスを発生し、この出力パルスが入力ポート３６に入力される。ＣＰＵ３５ではこのクランク角センサ４４の出力パルスから機関回転数が計算される。一方、出力ポート３７は対応する駆動回路４５を介して点火プラグ１０、燃料噴射弁１１及びスロットル弁駆動アクチュエータ１７に接続される。なお、ＥＣＵ３１は、各種制御を行う制御装置として機能する。
【００１８】
＜排気浄化触媒の説明＞
上流側排気浄化触媒２０及び下流側排気浄化触媒２４は、酸素吸蔵能力を有する三元触媒である。具体的には、排気浄化触媒２０、２４は、セラミックから成る担体に、触媒作用を有する貴金属（例えば、白金（Ｐｔ））及び酸素吸蔵能力を有する物質（例えば、セリア（ＣｅＯ2））を担持させた三元触媒である。三元触媒は、三元触媒に流入する排気ガスの空燃比が理論空燃比に維持されていると、未燃ガス及びＮＯｘを同時に浄化する機能を有する。加えて、排気浄化触媒２０、２４に或る程度の酸素が吸蔵されている場合には、排気浄化触媒２０、２４に流入する排気ガスの空燃比が理論空燃比に対してリッチ側或いはリーン側に若干ずれたとしても未燃ガス及びＮＯｘとが同時に浄化される。
【００１９】
すなわち、排気浄化触媒２０、２４が酸素吸蔵能力を有していると、すなわち排気浄化触媒２０、２４の酸素吸蔵量が最大吸蔵可能酸素量よりも少ないと、排気浄化触媒２０、２４に流入する排気ガスの空燃比が理論空燃比よりも若干リーンになったときには、排気ガス中に含まれる過剰な酸素が排気浄化触媒２０、２４内に吸蔵される。このため、排気浄化触媒２０、２４の表面上が理論空燃比に維持される。その結果、排気浄化触媒２０、２４の表面上において未燃ガス及びＮＯｘが同時に浄化され、このとき排気浄化触媒２０、２４から流出する排気ガスの空燃比は理論空燃比となる。
【００２０】
一方、排気浄化触媒２０、２４が酸素を放出することができる状態にあると、すなわち排気浄化触媒２０、２４の酸素吸蔵量が０よりも多いと、排気浄化触媒２０、２４に流入する排気ガスの空燃比が理論空燃比よりも若干リッチになったときには、排気ガス中に含まれている未燃ガスを還元させるのに不足している酸素が排気浄化触媒２０、２４から放出される。このため、この場合にも排気浄化触媒２０、２４の表面上が理論空燃比に維持される。その結果、排気浄化触媒２０、２４の表面上において未燃ガス及びＮＯｘが同時に浄化され、このとき排気浄化触媒２０、２４から流出する排気ガスの空燃比は理論空燃比となる。
【００２１】
このように、排気浄化触媒２０、２４に或る程度の酸素が吸蔵されている場合には、排気浄化触媒２０、２４に流入する排気ガスの空燃比が理論空燃比に対してリッチ側或いはリーン側に若干ずれたとしても未燃ガス及びＮＯｘとが動じに浄化され、排気浄化触媒２０、２４から流出する排気ガスの空燃比は理論空燃比となる。
【００２２】
＜空燃比センサの説明＞
次に、図２及び図３を参照して、本実施形態における空燃比センサ４０、４１の出力特性について説明する。図２は、本実施形態における空燃比センサ４０、４１の電圧−電流（Ｖ−Ｉ）特性を示す図であり、図３は、印加電圧を一定に維持したときの、空燃比センサ４０、４１周りを流通する排気ガスの空燃比（以下、「排気空燃比」という）と出力電流Ｉとの関係を示す図である。なお、本実施形態では、両空燃比センサ４０、４１として同一構成の空燃比センサが用いられる。
【００２３】
図２からわかるように、本実施形態の空燃比センサ４０、４１では、出力電流Ｉは、排気空燃比が高くなるほど（リーンになるほど）、大きくなる。また、各排気空燃比におけるＶ−Ｉ線には、Ｖ軸にほぼ平行な領域、すなわちセンサ印加電圧が変化しても出力電流がほとんど変化しない領域が存在する。この電圧領域は限界電流領域と称され、このときの電流は限界電流と称される。図２では、排気空燃比が１８であるときの限界電流領域及び限界電流をそれぞれＷ18、Ｉ18で示している。したがって、空燃比センサ４０、４１は限界電流式の空燃比センサであるということができる。
【００２４】
図３は、印加電圧を０．４５Ｖ程度で一定にしたときの、排気空燃比と出力電流Ｉとの関係を示す図である。図３からわかるように、空燃比センサ４０、４１では、排気空燃比が高くなるほど（すなわち、リーンになるほど）、空燃比センサ４０、４１からの出力電流Ｉが大きくなるように、排気空燃比に対して出力電流がリニアに（比例するように）変化する。加えて、空燃比センサ４０、４１は、排気空燃比が理論空燃比であるときに出力電流Ｉが零になるように構成される。また、排気空燃比が一定以上に大きくなったとき、或いは一定以下に小さくなったときには、排気空燃比の変化に対する出力電流の変化の割合が小さくなる。
【００２５】
なお、上記例では、空燃比センサ４０、４１として限界電流式の空燃比センサを用いている。しかしながら、排気空燃比に対して出力電流がリニアに変化するものであれば、空燃比センサ４０、４１として、限界電流式ではない空燃比センサ等、如何なる空燃比センサを用いてもよい。また、両空燃比センサ４０、４１は互いに異なる構造の空燃比センサであってもよい。
【００２６】
＜基本的な空燃比制御＞
次に、本実施形態の内燃機関の制御装置によって行われる空燃比制御について説明する。本実施形態の空燃比制御では、上流側空燃比センサ４０の出力空燃比に基づいて上流側空燃比センサ４０の出力空燃比が目標空燃比となるように燃料噴射弁１１からの燃料噴射量を制御するフィードバック制御が行われる。すなわち、本実施形態の空燃比制御では、上流側空燃比センサ４０の出力空燃比に基づいて、上流側排気浄化触媒２０に流入する排気ガスの空燃比が目標空燃比となるようにフィードバック制御が行われる。なお、「出力空燃比」は、空燃比センサの出力値に相当する空燃比を意味する。
【００２７】
また、本実施形態の基本的な空燃比制御では、目標空燃比がリーン空燃比とリッチ空燃比とに交互に繰り返し設定される。したがって、上流側排気浄化触媒２０に流入する排気ガスの空燃比がリーン空燃比とリッチ空燃比とに交互に繰り返り切り替えられる。
【００２８】
本実施形態の基本的な空燃比制御では、具体的には以下のような制御が行われる。まず、本実施形態では、目標空燃比をリーン空燃比からリッチ空燃比に切り替えてからの酸素過不足量、及び目標空燃比をリッチ空燃比からリーン空燃比に切り替えてからの酸素過不足量が積算される。酸素過不足量は、上流側排気浄化触媒２０に流入する排気ガスの空燃比を理論空燃比にしようとしたときに過剰となる酸素の量又は不足する酸素の量（過剰な未燃ガス等の量）を意味する。
【００２９】
ここで、目標空燃比がリーン空燃比に設定されているときには、上流側排気浄化触媒２０に流入する排気ガス中の酸素は過剰となり、この過剰な酸素は上流側排気浄化触媒２０に吸蔵される。したがって、目標空燃比がリーン空燃比に設定されているとき、すなわち上流側排気浄化触媒２０に流入する排気ガスの空燃比がリーン空燃比になっているときには、酸素過不足量の積算値（以下、「積算酸素過不足量」ともいう）は、上流側排気浄化触媒２０の酸素吸蔵量の推定値であるといえる。
【００３０】
一方、目標空燃比がリッチ空燃比に設定されているときには、上流側排気浄化触媒２０に流入する排気ガス中の酸素が不足し、よって過剰な未燃ガスが上流側排気浄化触媒２０に流入する。この結果、上流側排気浄化触媒２０に吸蔵されていた酸素が放出される。したがって、目標空燃比がリッチ空燃比に設定されているとき、すなわち上流側排気浄化触媒２０に流入する排気ガスの空燃比がリッチ空燃比になっているときには、積算酸素過不足量は上流側排気浄化触媒２０からの酸素放出量であるといえる。
【００３１】
なお、酸素過不足量の算出は、上流側空燃比センサ４０の出力空燃比、及びエアフロメータ３９の出力等に基づいて算出される燃焼室５内への吸入空気量の推定値又は燃料噴射弁１１からの燃料供給量等に基づいて行われる。具体的には、酸素過不足量ＯＥＤは、例えば、下記式（１）により算出される。
ＯＥＤ＝０．２３×Ｑｉ×（ＡＦｕｐ−ＡＦＲ）      …（１）
ここで、０．２３は空気中の酸素濃度、Ｑｉは燃料噴射量、ＡＦｕｐは上流側空燃比センサ４０の出力空燃比、ＡＦＲは制御中心となる空燃比（本実施形態では、理論空燃比の近傍）をそれぞれ表している。
【００３２】
そして、本実施形態の基本的な空燃比制御では、目標空燃比をリッチ空燃比からリーン空燃比に切り替えた時からの積算酸素過不足量が予め定められた切替基準過剰量に到達すると、目標空燃比がリーン空燃比から再びリッチ空燃比に切り替えられる。換言すると、上流側排気浄化触媒２０の酸素吸蔵量が最大吸蔵可能酸素量よりも少ない上限値に到達すると、目標空燃比がリーン空燃比からリッチ空燃比に切り替えられる。
【００３３】
一方、目標空燃比をリーン空燃比からリッチ空燃比に切り替えた時からの積算酸素過不足量が予め定められた切替基準不足量に到達すると、目標空燃比がリッチ空燃比から再びリーン空燃比に切り替えられる。換言すると、上流側排気浄化触媒２０の酸素吸蔵量がゼロよりも多い下限値に到達すると、目標空燃比がリッチ空燃比からリーン空燃比に切り替えられる。
【００３４】
したがって、基本的な空燃比制御では、上流側排気浄化触媒２０の酸素吸蔵量が上限値と下限値とに交互に変化するように上流側排気浄化触媒２０に流入する排気ガスの空燃比がリーン空燃比とリッチ空燃比との間で交互に繰り返し切り替えられる。
【００３５】
＜タイムチャートを用いた基本的な空燃比制御の説明＞
図４を参照して、基本的な空燃比制御について具体的に説明する。図４は、基本的な空燃比制御を行った場合における、空燃比補正量ＡＦＣ、上流側空燃比センサ４０の出力空燃比ＡＦｕｐ、上流側排気浄化触媒２０の酸素吸蔵量ＯＳＡ、積算酸素過不足量ΣＯＥＤ、及び下流側空燃比センサ４１の出力空燃比ＡＦｄｗｎのタイムチャートである。
【００３６】
なお、空燃比補正量ＡＦＣは、上流側排気浄化触媒２０に流入する排気ガスの目標空燃比に関する補正量である。空燃比補正量ＡＦＣが０のときには目標空燃比は制御中心となる空燃比（以下、「制御中心空燃比」という）に等しい空燃比（本実施形態では、理論空燃比近傍）とされ、空燃比補正量ＡＦＣが正の値であるときには目標空燃比は制御中心空燃比よりもリーンな空燃比となり、空燃比補正量ＡＦＣが負の値であるときには目標空燃比は制御中心空燃比よりもリッチな空燃比となる。また、「制御中心空燃比」は、機関運転状態に応じて空燃比補正量ＡＦＣを加算する対象となる空燃比、すなわち空燃比補正量ＡＦＣに応じて目標空燃比を変動させる際に基準となる空燃比を意味する。制御中心空燃比は、後述する学習値がゼロであるときには、理論空燃比に設定される。
【００３７】
図示した例では、空燃比補正量ＡＦＣが、リーン設定補正量ＡＦＣｌｅａｎとリッチ設定補正量ＡＦＣｒｉｃｈとに交互に設定される。リーン設定補正量ＡＦＣｌｅａｎは、正の値の補正量であり、例えば、０．２〜２．０、好ましくは０．４〜１．５程度とされる。したがって、制御中心空燃比が理論空燃比であれば、このときの目標空燃比であるリーン設定空燃比は、例えば１４．６２〜１６．６０、好ましくは、１４．６４〜１６．１０程度とされる。一方、リッチ設定補正量ＡＦＣｒｉｃｈは、負の補正量であり、例えば、−０．２〜−２．０、好ましくは−０．４〜−１．５程度とされる。したがって、制御中心空燃比が理論空燃比であれば、このときの目標空燃比であるリッチ設定空燃比は、例えば１４．５８〜１２．６０、好ましくは、１４．５６〜１３．１０程度とされる。なお、本実施形態では、リーン設定補正量ＡＦＣｌｅａｎの絶対値とリッチ設定補正量ＡＦＣｒｉｃｈの絶対値とは同一とされるが、リーン設定補正量ＡＦＣｌｅａｎの絶対値がリッチ設定補正量ＡＦＣｒｉｃｈの絶対値よりも大きくなるように又は小さくなるように設定されてもよい。
【００３８】
図示した例では、時刻ｔ1以前の状態では、空燃比補正量ＡＦＣがリッチ設定補正量ＡＦＣｒｉｃｈとされている。したがって、目標空燃比はリッチ空燃比とされており、これに伴って上流側空燃比センサ４０の出力空燃比がリッチ空燃比となる。上流側排気浄化触媒２０に流入する排気ガス中に含まれている未燃ガスは、上流側排気浄化触媒２０で浄化され、これに伴って、上流側排気浄化触媒２０の酸素吸蔵量ＯＳＡは徐々に減少していく。したがって、積算酸素過不足量ΣＯＥＤも徐々に減少していく。上流側排気浄化触媒２０における浄化により上流側排気浄化触媒２０から流出する排気ガス中には未燃ガスは含まれていないため、下流側空燃比センサ４１の出力空燃比ＡＦｄｗｎはほぼ理論空燃比となる。上流側排気浄化触媒２０に流入する排気ガスの空燃比はリッチ空燃比となっているため、上流側排気浄化触媒２０からのＮＯｘ排出量はほぼゼロとなる。
【００３９】
上流側排気浄化触媒２０の酸素吸蔵量ＯＳＡが徐々に減少すると、時刻ｔ1において、酸素吸蔵量ＯＳＡは下限値Ｃｌｏｗに到達する。また、このとき積算酸素過不足量ΣＯＥＤが切替基準不足量ＯＥＤｄｅｆに到達する。ここで、下限値Ｃｌｏｗは、ゼロよりも十分に多い量であるため、上流側排気浄化触媒２０の酸素吸蔵量ＯＳＡが下限値Ｃｌｏｗに到達しても、上流側排気浄化触媒２０からは未燃ガスはほとんど流出しない。このため、下流側空燃比センサ４１の出力空燃比ＡＦｄｗｎはほぼ理論空燃比のまま維持される。
【００４０】
本実施形態では、時刻ｔ1において、積算酸素過不足量ΣＯＥＤが切替基準不足量ＯＥＤｄｅｆ以下になると、酸素吸蔵量ＯＳＡを増大させるべく、空燃比補正量ＡＦＣがリーン設定補正量ＡＦＣｌｅａｎに切り替えられる。したがって、目標空燃比がリッチ空燃比からリーン空燃比に切り替えられる。また、このとき、積算酸素過不足量ΣＯＥＤはゼロにリセットされる。
【００４１】
時刻ｔ1において、目標空燃比をリーン空燃比に切り替えると、上流側排気浄化触媒２０に流入する排気ガスの空燃比はリッチ空燃比からリーン空燃比に変化する。また、これに伴って、上流側空燃比センサ４０の出力空燃比ＡＦｕｐがリーン空燃比となる（実際には、目標空燃比を切り替えてから上流側排気浄化触媒２０に流入する排気ガスの空燃比が変化するまでには遅れが生じるが、図示した例では便宜上同時に変化するものとしている）。時刻ｔ1において上流側排気浄化触媒２０に流入する排気ガスの空燃比がリーン空燃比に変化すると、上流側排気浄化触媒２０の酸素吸蔵量ＯＳＡは増大していく。また、これに伴って、積算酸素過不足量ΣＯＥＤも徐々に増大していく。このとき、上流側排気浄化触媒２０に流入した排気ガス中の酸素は上流側排気浄化触媒２０に吸蔵されるため、上流側排気浄化触媒２０から酸素はほとんど流出しない。このため、下流側空燃比センサ４１の出力空燃比ＡＦｄｗｎはほぼ理論空燃比のまま維持される。また、上流側排気浄化触媒２０における酸素の吸蔵により、上流側排気浄化触媒２０に流入する排気ガス中のＮＯｘも浄化される。
【００４２】
上流側排気浄化触媒２０の酸素吸蔵量ＯＳＡが徐々に増大すると、やがて時刻ｔ2において、酸素吸蔵量ＯＳＡは上限値Ｃｕｐに到達する。また、このとき積算酸素過不足量ΣＯＥＤが切替基準過剰量ＯＥＤｅｘに到達する。切替基準過剰量ＯＥＤｅｘの絶対値は切替基準不足量ＯＥＤｄｅｆの絶対値に等しい。ここで、上限値Ｃｕｐは、最大吸蔵可能酸素量Ｃｍａｘよりも十分に少ない量であるため、上流側排気浄化触媒２０の酸素吸蔵量ＯＳＡが上限値Ｃｕｐに到達しても、上流側排気浄化触媒２０からは酸素はほとんど流出しない。このため、下流側空燃比センサ４１の出力空燃比ＡＦｄｗｎはほぼ理論空燃比のまま維持される。また、このとき、上流側排気浄化触媒２０に流入する排気ガス中のＮＯｘも浄化せしめられる。
【００４３】
本実施形態では、時刻ｔ2において、積算酸素過不足量ΣＯＥＤが切替基準過剰量ＯＥＤｅｘ以上になると、酸素吸蔵量ＯＳＡを減少させるべく、空燃比補正量ＡＦＣがリッチ設定補正量ＡＦＣｒｉｃｈに切り替えられる。したがって、目標空燃比がリーン空燃比からリッチ空燃比に切り替えられる。また、このとき、積算酸素過不足量ΣＯＥＤがゼロにリセットされる。
時刻ｔ2において、目標空燃比をリッチ空燃比に切り替えると、上流側排気浄化触媒２０に流入する排気ガスの空燃比はリーン空燃比からリッチ空燃比に変化する。また、これに伴って、上流側空燃比センサ４０の出力空燃比ＡＦｕｐがリッチ空燃比となる（実際には、目標空燃比を切り替えてから上流側排気浄化触媒２０に流入する排気ガスの空燃比が変化するまでには遅れが生じるが、図示した例では便宜上同時に変化するものとしている）。上流側排気浄化触媒２０に流入する排気ガス中には未燃ガスが含まれることになるため、上流側排気浄化触媒２０の酸素吸蔵量ＯＳＡは徐々に減少していく。この間も、上流側排気浄化触媒２０に流入する排気ガスの空燃比はリッチ空燃比となっているため、上流側排気浄化触媒２０からのＮＯｘの排出はほぼゼロされる。
【００４４】
次いで、時刻ｔ3において、時刻ｔ1と同様に、積算酸素過不足量ΣＯＥＤが切替基準不足量ＯＥＤｄｅｆに到達する。これにより、目標空燃比がリーン空燃比に切り替えられる。その後、上述した時刻ｔ1〜ｔ3のサイクルが繰り返される。
【００４５】
以上の説明から分かるように本実施形態によれば、上流側排気浄化触媒２０からのＮＯｘ排出量を常に抑制することができる。すなわち、上述した制御を行っている限り、基本的には上流側排気浄化触媒２０からのＮＯｘ排出量をほぼゼロとすることができる。同様に、上流側排気浄化触媒２０からの未燃ガスの排出量も常に抑制することができる。すなわち、上述した制御を行っている限り、基本的には上流側排気浄化触媒２０からの未燃ガス排出量もほぼゼロとすることができる。
【００４６】
また、一般に、排気浄化触媒の酸素吸蔵量が一定に維持されると、その排気浄化触媒の酸素吸蔵能力が低下する。すなわち、排気浄化触媒の酸素吸蔵能力を高く維持するためには、排気浄化触媒の酸素吸蔵量が変動することが必要になる。これに対して、本実施形態によれば、図４に示したように、上流側排気浄化触媒２０の酸素吸蔵量ＯＳＡは常に上下に変動しているため、酸素吸蔵能力が低下することが抑制される。
【００４７】
＜上流側空燃比センサにおけるずれ＞
ところで、機関本体１が複数の気筒を有する場合、各気筒から排出される排気ガスの空燃比には気筒間でずれが生じる場合がある。一方、上流側空燃比センサ４０は排気マニホルド１９の集合部に配置されるが、その配置位置に応じて各気筒から排出された排気ガスが上流側空燃比センサ４０に曝される程度が気筒間で異なる。この結果、上流側空燃比センサ４０の出力空燃比は、或る特定の気筒から排出された排気ガスの空燃比の影響を強く受けることになる。このため、この或る特定の気筒から排出された排気ガスの空燃比が全気筒から排出される排気ガスの平均空燃比とは異なる空燃比となっている場合、平均空燃比と上流側空燃比センサ４０の出力空燃比との間にはずれが生じる。すなわち、上流側空燃比センサ４０の出力空燃比は実際の排気ガスの平均空燃比よりもリッチ側又はリーン側にずれることになる。
【００４８】
また、未燃ガスのうち水素は空燃比センサの拡散律速層の通過速度が速い。このため、排気ガス中の水素濃度が高いと、上流側空燃比センサ４０の出力空燃比が排気ガスの実際の空燃比よりも低い側（すなわち、リッチ側）にずれてしまう。このように上流側空燃比センサ４０の出力空燃比にずれが生じていると、上述したような制御を適切に行うことができなくなる。以下では、図５を参照して斯かる現象について説明する。
【００４９】
図５は、図４と同様な、空燃比補正量ＡＦＣ等のタイムチャートである。図５は、上流側空燃比センサ４０の出力空燃比がリッチ側にずれている場合を示している。図中、上流側空燃比センサ４０の出力空燃比ＡＦｕｐにおける実線は、上流側空燃比センサ４０の出力空燃比を表しており、破線は、上流側空燃比センサ４０周りを流通する排気ガスの実際の空燃比を示している。
【００５０】
図５に示した例では、時刻ｔ1において、上流側排気浄化触媒２０の酸素吸蔵量ＯＳＡが下限値Ｃｌｏｗになっていると共に、空燃比補正量ＡＦＣがリーン設定補正量ＡＦＣｌｅａｎに切り替えられる。このため、上流側空燃比センサ４０の出力空燃比ＡＦｕｐはリーン設定空燃比に等しい空燃比となる。しかしながら、上述したように、上流側空燃比センサ４０の出力空燃比はリッチ側にずれているため、排気ガスの実際の空燃比はリーン設定空燃比よりもリーンの空燃比となっている。すなわち、上流側空燃比センサ４０の出力空燃比ＡＦｕｐは、実際の空燃比（図中の破線）よりも低く（リッチ側）なっている。
【００５１】
時刻ｔ1において、空燃比補正量ＡＦＣがリーン設定補正量ＡＦＣｌｅａｎに設定されると、上流側排気浄化触媒２０には過剰な酸素が流入し、酸素吸蔵量ＯＳＡが増大せしめられ、よって積算酸素過不足量ΣＯＥＤが増大せしめられる。しかしながら、上流側空燃比センサ４０の出力空燃比ＡＦｕｐが実際の空燃比よりも低いため、積算酸素過不足量ΣＯＥＤの増加速度は酸素吸蔵量ＯＳＡの実際の増加速度よりも遅い。この結果、時刻ｔ2において、時刻ｔ1からの積算酸素過不足量ΣＯＥＤが切替基準過剰量ＯＥＤｅｘに到達したときには、上流側排気浄化触媒２０の酸素吸蔵量ＯＳＡは、時刻ｔ2において上限値Ｃｕｐよりも多くなっている。
【００５２】
その後、時刻ｔ2において空燃比補正量ＡＦＣがリーン設定補正量ＡＦＣｌｅａｎからリッチ設定補正量ＡＦＣｒｉｃｈに切り替えられると、上流側空燃比センサ４０の出力空燃比ＡＦｕｐはリッチ設定空燃比に等しい空燃比となる。しかしながら、上流側空燃比センサ４０の出力空燃比はリッチ側にずれているため、排気ガスの実際の空燃比はリッチ設定空燃比よりもリーンの空燃比となっている。すなわち、このときも、上流側空燃比センサ４０の出力空燃比ＡＦｕｐは実際の空燃比（図中の破線）よりも低く（リッチ側）なっている。
【００５３】
時刻ｔ2において、空燃比補正量ＡＦＣがリッチ設定補正量ＡＦＣｒｉｃｈに設定されると、上流側排気浄化触媒２０には過剰な未燃ガスが流入し、酸素吸蔵量ＯＳＡが減少せしめられ、よって積算酸素過不足量ΣＯＥＤが減少せしめられる。しかしながら、上流側空燃比センサ４０の出力空燃比ＡＦｕｐが実際の空燃比よりも低いため、積算酸素過不足量ΣＯＥＤの減少速度は酸素吸蔵量ＯＳＡの実際の減少速度よりも速い。この結果、時刻ｔ3において、時刻ｔ2からの積算酸素過不足量ΣＯＥＤが切替基準不足量ＯＥＤｄｅｆに到達したとき、酸素吸蔵量ＯＳＡの時刻ｔ2からの減少量は切替基準不足量ＯＥＤｄｅｆに相当する量よりも少なくなっている。
【００５４】
この結果、空燃比補正量ＡＦＣをリーン設定補正量ＡＦＣｌｅａｎ及びリッチ設定補正量ＡＦＣｒｉｃｈに繰り返し交互に設定していくと、時刻ｔ1〜ｔ3に示したようなサイクル毎に、上流側排気浄化触媒２０の酸素吸蔵量ＯＳＡが徐々に増大していく。このため、図５に示した例では、時刻ｔ4及び時刻ｔ6において、上流側排気浄化触媒２０の酸素吸蔵量ＯＳＡが最大吸蔵可能酸素量Ｃｍａｘに到達する。この結果、時刻ｔ4及び時刻ｔ6においては、上流側排気浄化触媒２０から酸素及びＮＯｘを含んだ排気ガスが流出することになる。このため、図５に示した例では、時刻ｔ4及び時刻ｔ6において、下流側空燃比センサ４１の出力空燃比ＡＦｄｗｎが理論空燃比よりもリーンなリーン空燃比となっている。
【００５５】
このように、図４に示したような基本空燃比制御のみを実行していると、例えば、上流側空燃比センサ４０の出力空燃比にずれが生じた場合等に、上流側排気浄化触媒２０からＮＯｘを含んだ排気ガスが流出してしまう場合がある。そこで、本実施形態では、基本空燃比制御に加えて、後述する一時的空燃比制御を行うようにしている。
【００５６】
＜一時的空燃比制御＞
一時的空燃比制御では、上述した基本空燃比制御により複数回繰り返し切り替えが行われた後の所定の時期に、下流側空燃比センサ４１の出力空燃比ＡＦｄｗｎが理論空燃比よりもリッチなリッチ判定空燃比に到達するまで上流側排気浄化触媒２０に流入する排気ガスの空燃比がリッチ空燃比に維持される。すなわち、一時的空燃比制御では、上記所定の時期に、上流側排気浄化触媒２０の酸素吸蔵量ＯＳＡが下限値Ｃｌｏｗよりも低下して出力空燃比ＡＦｄｗｎがリッチ判定空燃比に到達するまで目標空燃比がリッチ空燃比に維持される。
【００５７】
図６は、一時的空燃比制御が実行される場合の空燃比補正量ＡＦＣ等のタイムチャートである。図６に示した例では、基本的に図４に示した基本空燃比制御と同様な空燃比制御が行われている。したがって、上流側排気浄化触媒２０の酸素吸蔵量ＯＳＡが上限値Ｃｕｐと下限値Ｃｌｏｗとの間で繰り返し交互に変化するように、上流側排気浄化触媒２０に流入する排気ガスの空燃比がリッチ空燃比とリーン空燃比とに繰り返し交互に切り替えられる。具体的には、積算酸素過不足量ΣＯＥＤが切替基準過剰量ＯＥＤｅｘと切替基準不足量ＯＥＤｄｅｆとに交互に到達するように、目標空燃比がリーン空燃比とリッチ空燃比とに繰り返し交互に切り替えられる。
【００５８】
したがって、時刻ｔ4において空燃比補正量ＡＦＣがリッチ設定補正量ＡＦＣｒｉｃｈに切り替えられてからの積算酸素過不足量ΣＯＥＤが切替基準不足量ＯＥＤｄｅｆに到達した時刻ｔ5において、空燃比補正量ＡＦＣがリーン設定補正量ＡＦＣｌｅａｎに切り替えられる。同様に、時刻ｔ5において空燃比補正量ＡＦＣがリーン設定補正量ＡＦＣｌｅａｎに切り替えられてからの積算酸素過不足量ΣＯＥＤが切替基準過剰量ＯＥＤｅｘに到達した時刻ｔ6において、空燃比補正量ＡＦＣがリッチ設定補正量ＡＦＣｒｉｃｈに切り替えられる。図６に示した例では、同様な基本空燃比制御が時刻ｔ2以前、時刻ｔ4〜時刻ｔ14、及び時刻ｔ16以降において行われている。
【００５９】
一方、基本空燃比制御により空燃比補正量ＡＦＣがリッチ設定補正量ＡＦＣｒｉｃｈとリーン設定補正量ＡＦＣｌｅａｎとの間で複数回繰り返して切り替えが行われると、すなわち基本空燃比制御により目標空燃比がリッチ空燃比とリーン空燃比との間で複数回繰り返して切り替えられると、一時的空燃比制御が行われる。図６に示した例では、空燃比補正量ＡＦＣをリッチ設定補正量ＡＦＣｒｉｃｈとリーン設定補正量ＡＦＣｌｅａｎとに１回ずつ設定するサイクルを１サイクルとすると、５サイクル毎に一時空燃比制御が行われる。具体的には、図６に示した例では、時刻ｔ2〜時刻ｔ4及び時刻ｔ14〜時刻ｔ16において一時的空燃比制御が行われる。
【００６０】
図６に示したように、一時的空燃比制御が開始される時刻ｔ2においては、空燃比補正量ＡＦＣがリッチ設定補正量ＡＦＣｒｉｃｈよりも小さい強リッチ設定補正量ＡＦＣｓｒｉｃｈに設定される。したがって、時刻ｔ2において目標空燃比が、リッチ設定空燃比よりもリッチな強リッチ設定空燃比に設定される。時刻ｔ2以降、上流側排気浄化触媒２０の酸素吸蔵量ＯＳＡは比較的速い減少速度で減少し、これと同様に、積算酸素過不足量ΣＯＥＤが急速に減少せしめられる。一時的空燃比制御の実行中には、空燃比補正量ＡＦＣが切り替えられたとき（時刻ｔ2）からの積算酸素過不足量ΣＯＥＤが切替基準不足量ＯＥＤｄｅｆに到達しても、空燃比補正量ＡＦＣは強リッチ設定補正量ＡＦＣｓｒｉｃｈのまま維持される。
【００６１】
このように、空燃比補正量ＡＦＣが強リッチ設定空燃比ＡＦＣｓｒｉｃｈに維持された結果、上流側排気浄化触媒２０の酸素吸蔵量ＯＳＡは徐々に減少してほぼゼロに到達する。この結果、上流側排気浄化触媒２０からは未燃ガスを含む排気ガスが流出し、よって下流側空燃比センサ４１の出力空燃比ＡＦｄｗｎがリッチ空燃比となる（時刻ｔ3）。具体的には、本実施形態では、下流側空燃比センサ４１の出力空燃比ＡＦｄｗｎが理論空燃比よりも僅かにリッチなリッチ判定空燃比ＡＦｒｉｃｈ（例えば、１４．５５）以下になると、出力空燃比ＡＦｄｗｎがリッチ空燃比になったと判断される。
【００６２】
このように出力空燃比ＡＦｄｗｎがリッチ判定空燃比ＡＦｒｉｃｈ以下になった時刻ｔ3には、空燃比補正量ＡＦＣが、強リッチ設定補正量ＡＦＣｓｒｉｃｈから、リーン設定補正量ＡＦＣｌｅａｎよりも大きい強リーン設定補正量ＡＦＣｌｅａｎに切り替えられる。したがって、時刻ｔ3において目標空燃比がリーン設定空燃比よりもリーンな強リーン設定空燃比に設定される。時刻ｔ3以降、上流側排気浄化触媒２０の酸素吸蔵量ＯＳＡは比較的速い増加速度で増加し、これと同様に、積算酸素過不足量ΣＯＥＤが急速に増加せしめられる。
【００６３】
空燃比補正量ＡＦＣが強リーン設定空燃比ＡＦＣｓｌｅｎａに維持されると、上流側排気浄化触媒２０の酸素吸蔵量ＯＳＡは徐々に増大して、時刻ｔ4において上限値Ｃｕｐに到達する。このため、時刻ｔ3からの積算酸素過不足量ΣＯＥＤは、時刻ｔ4において上限値Ｃｕｐに対応する回復基準過剰量ＯＥＤｒｅｃに到達する。そこで、本実施形態では、空燃比補正量ＡＦＣを強リーン設定空燃比ＡＦＣｓｌｅａｎに切り替えた時刻ｔ3からの積算酸素過不足量ΣＯＥＤが回復基準過剰量ＯＥＤｒｅｃに到達すると、一時的空燃比制御が終了せしめられ、上述した基本空燃比制御が再開される。具体的には、時刻ｔ4において、空燃比補正量ＡＦＣがリッチ設定補正量ＡＦＣｒｉｃｈに設定される。
【００６４】
＜一時的空燃比制御の効果＞
このように、本実施形態によれば、空燃比補正量ＡＦＣをリッチ設定補正量ＡＦＣｒｉｃｈとリーン設定補正量とに１回ずつ設定するサイクルを所定回数行う毎に一時的空燃比制御が行われる。一時的空燃比制御が行われた直後（例えば、図６における時刻ｔ4や時刻ｔ16）には、上流側排気浄化触媒２０の酸素吸蔵量ＯＳＡはほぼ上限値Ｃｕｐに等しい吸蔵量となる。このとき、上流側空燃比センサ４０の出力空燃比にずれが生じていても、図５のように目標空燃比をリッチ空燃比とリーン空燃比とに交互に切り替えたような場合に比べて、上流側排気浄化触媒２０の酸素吸蔵量ＯＳＡは上限値Ｃｕｐからそれほど大きくずれた値にはならない。したがって、一時的空燃比制御を一定周期で行うことにより、上流側空燃比センサ４０の出力空燃比にずれが生じていて酸素吸蔵量ＯＳＡが図５に示したように全体的に徐々に増大してしまったり全体的に徐々に減少してしまったりしていても、この一定周期で酸素吸蔵量ＯＳＡの全体的な増大又は減少をリセットすることができる。
【００６５】
なお、上記実施形態では、一時的空燃比制御は、上述したサイクルを所定回数行う毎に行われる。しかしながら、一時的空燃比制御は、上述したサイクルが複数回繰り返し行われた後の所定の時期であれば、前回の一時的空燃比制御からの経過時間や総吸入空気量等、他のパラメータに基づいて行われてもよい。
【００６６】
また、上記実施形態では、一時的空燃比制御の実行時には、空燃比補正量ＡＦＣがリッチ設定補正量ＡＦＣｒｉｃｈよりも小さい強リッチ設定補正量ＡＦＣｓｒｉｃｈ及びリーン設定補正量ＡＦＣｌｅａｎよりも大きい強リーン設定補正量ＡＦＣｓｌｅａｎに設定される。これは、上流側空燃比センサ４０の出力空燃比にずれが生じている場合であっても、空燃比補正量ＡＦＣをこれら値に設定しているときに、排気ガスの実際の空燃比がそれぞれ必ずリッチ空燃比及びリーン空燃比になるようにするためである。しかしながら、一時的空燃比制御の実行時における空燃比補正量ＡＦＣは必ずしも強リッチ設定補正量ＡＦＣｓｒｉｃｈ及び強リーン設定補正量ＡＦＣｓｌｅａｎに設定する必要はない。したがって、一時的空燃比制御の実行時における空燃比補正量ＡＦＣは、例えば、基本空燃比制御におけるリッチ設定補正量ＡＦＣｒｉｃｈ及びリーン設定補正量ＦＣｌｅａｎと同一の値に設定されてもよい。
【００６７】
＜第二実施形態＞
次に、図７を参照して、本発明の第二実施形態について説明する。第二実施形態に係る内燃機関の構成及び制御は、以下で説明する点を除いて、基本的に第一実施形態に係る内燃機関の構成及び制御と同様である。本実施形態では、上流側空燃比センサ４０の出力空燃比にずれが生じている場合に、このずれを補償するための学習制御が行われる。
【００６８】
図７は、制御中心空燃比ＡＦＲ、空燃比補正量ＡＦＣ、上流側空燃比センサ４０の出力空燃比ＡＦｕｐ、上流側排気浄化触媒２０の酸素吸蔵量ＯＳＡ、積算酸素過不足量ΣＯＥＤ、下流側空燃比センサ４１の出力空燃比ＡＦｄｗｎ及び学習値ｓｆｂｇのタイムチャートである。図７も、図５と同様に、上流側空燃比センサ４０の出力空燃比がリッチ側にずれている場合を示している。図中、上流側空燃比センサ４０の出力空燃比ＡＦｕｐにおける実線は、上流側空燃比センサ４０の出力空燃比を表しており、破線は、上流側空燃比センサ４０周りを流通する排気ガスの実際の空燃比を示している。
【００６９】
図７に示した例でも、図６に示した例と同様に基本空燃比制御及び一時的空燃比制御が実行されている。したがって、時刻ｔ2〜ｔ4及び時刻ｔ14〜ｔ16において一時的空燃比制御が実行され、一方、その他の期間中には基本空燃比制御が実行されている。
【００７０】
ここで、目標空燃比がリーン空燃比に切り替えられた時（例えば、時刻ｔ3）から目標空燃比が再びリッチ空燃比に切り替えられた時（例えば、時刻ｔ4）までの期間を酸素増大期間Ｔｉｎｃと称すると、本実施形態では酸素増大期間Ｔｉｎｃにおける積算酸素過不足量ΣＯＥＤが算出される。図７では、時刻ｔ3〜時刻ｔ4の酸素増大期間Ｔｉｎｃにおける積算酸素過不足量ΣＯＥＤの絶対値をＲ1で示している。また、これ以降も同様に、時刻ｔ5〜時刻ｔ6、時刻ｔ7〜時刻ｔ8、時刻ｔ9〜時刻ｔ10、時刻ｔ11〜時刻ｔ12、時刻ｔ13〜時刻ｔ14における積算酸素過不足量ΣＯＥＤの絶対値をそれぞれＲ2、Ｒ3、Ｒ4、Ｒ5、Ｒ6で示している。
【００７１】
このようにして算出された酸素増大期間Ｔｉｎｃにおける積算酸素過不足量ΣＯＥＤの絶対値Ｒ1〜Ｒ6の合計は、時刻ｔ3〜時刻ｔ15において、上流側排気浄化触媒２０に流入した総酸素量に相当する。しかしながら、上述したように、酸素過不足量ＯＥＤの算出には上流側空燃比センサ４０の出力空燃比ＡＦｕｐが用いられ、この出力空燃比ＡＦｕｐにはずれが生じている。このため、図７に示した例では、酸素増大期間Ｔｉｎｃにおける積算酸素過不足量ΣＯＥＤの絶対値Ｒ1〜Ｒ6の合計値（以下、「合計絶対値」ともいう）Ｒｓｕｍは、時刻ｔ3〜時刻ｔ15に上流側排気浄化触媒２０に流入した実際の総酸素量よりも少ないものとなっている。
【００７２】
一方、目標空燃比がリッチ空燃比に切り替えられた時（例えば、時刻ｔ4）から目標空燃比が再びリーン空燃比に切り替えられた時（例えば、時刻ｔ5）までの期間を酸素減少期間Ｔｄｅｃと称すると、本実施形態では酸素減少期間Ｔｄｅｃにおける積算酸素過不足量ΣＯＥＤが算出される。図７では、時刻ｔ4〜時刻ｔ5の酸素減少期間Ｔｄｅｃにおける積算酸素過不足量ΣＯＥＤをＦ1で示している。また、これ以降も同様に、時刻ｔ6〜時刻ｔ7、時刻ｔ8〜時刻ｔ9、時刻ｔ10〜時刻ｔ11、時刻ｔ12〜時刻ｔ13、時刻ｔ14〜時刻ｔ15における積算酸素過不足量ΣＯＥＤの絶対値をそれぞれＦ2、Ｆ3、Ｆ4、Ｆ5、Ｆ6で示している。
【００７３】
このようにして算出された積算酸素過不足量ΣＯＥＤの絶対値Ｆ1〜Ｆ6の合計は、時刻ｔ3〜時刻ｔ15において、上流側排気浄化触媒２０に流入した排気ガスにおける酸素の総不足量（或いは、上流側排気浄化触媒２０に流入した総未燃ガス量）に相当する。しかしながら、上述したように、上流側空燃比センサ４０の出力空燃比ＡＦｕｐにはずれが生じている。このため、図７に示した例では、積算酸素過不足量ΣＯＥＤの絶対値Ｆ1〜Ｆ6の合計値（以下、「合計絶対値」ともいう）Ｆｓｕｍは、時刻ｔ3〜時刻ｔ15に上流側排気浄化触媒２０に流入した排気ガスにおける酸素の総不足量よりも多いものとなっている。
【００７４】
ここで、時刻ｔ3と時刻ｔ15では、下流側空燃比センサ４１の出力空燃比ＡＦｄｗｎがリッチ判定空燃比ＡＦｒｉｃｈ以下となっている。したがって、時刻ｔ3及び時刻ｔ15においては、上流側排気浄化触媒２０の酸素吸蔵量ＯＳＡはゼロになっている。このため、時刻ｔ3〜時刻ｔ15における酸素増大期間Ｔｉｎｃの積算酸素過不足量の合計絶対値Ｒｓｕｍと、時刻ｔ3〜時刻ｔ15における酸素減少期間Ｔｄｅｃの積算酸素過不足量の合計絶対値Ｆｓｕｍとは基本的に同一の値になるはずである。ところが、上述したように、上流側空燃比センサ４０の出力空燃比ＡＦｕｐにずれが生じている場合、このずれに応じてこれら合計絶対値の値も変化する。上述したように上流側空燃比センサ４０の出力空燃比ＡＦｕｐがリッチ側にずれている場合、合計絶対値Ｒｓｕｍに対して合計絶対値Ｆｓｕｍの方が多くなる。逆に、上流側空燃比センサ４０の出力空燃比ＡＦｕｐがリーン側にずれている場合、合計絶対値Ｒｓｕｍに対して合計絶対値Ｆｓｕｍの方が少なくなる。加えて、酸素増大期間Ｔｉｎｃにおける積算酸素過不足量ΣＯＥＤの合計絶対値Ｒｓｕｍと酸素減少期間Ｔｄｅｃにおける積算酸素過不足量ΣＯＥＤの合計絶対値Ｆｓｕｍとの差ΔΣＯＥＤ（＝Ｒｓｕｍ−Ｌｓｕｍ。以下、「過不足量誤差」という）は上流側空燃比センサ４０の出力空燃比のけるずれの程度を表している。この過不足量誤差が大きくなるほど、上流側空燃比センサ４０の出力空燃比におけるずれが大きいといえる。
【００７５】
そこで、本実施形態では、本実施形態では、過不足量誤差ΔΣＯＥＤに基づいて、制御中心空燃比ＡＦＲを補正するようにしている。特に、本実施形態では、過不足量誤差ΔΣＯＥＤが小さくなるように制御中心空燃比ＡＦＲを補正するようにしている。
【００７６】
具体的には、本実施形態では、下記式（２）により学習値ｓｆｂｇを算出すると共に、下記式（３）により制御中心空燃比ＡＦＲが補正される。
ｓｆｂｇ（ｎ）＝ｓｆｂｇ（ｎ−１）＋ｋ1・ΔΣＯＥＤ      …（２）
ＡＦＲ＝ＡＦＲｂａｓｅ＋ｓｆｂｇ（ｎ）      …（３）
なお、上記式（２）において、ｎは計算回数又は時間を表している。したがって、ｓｆｂｇ（ｎ）は今回の計算又は現在の学習値である。加えて、上記式（２）におけるｋ1は、過不足量誤差ΔΣＯＥＤを制御中心空燃比ＡＦＲに反映させる程度を表すゲインである。ゲインｋ1の値が大きいほど制御中心空燃比ＡＦＲの補正量が大きくなる。さらに、上記式（３）において、基本制御中心空燃比ＡＦＲｂａｓｅは、基本となる制御中心空燃比であり、本実施形態では理論空燃比である。
【００７７】
図７の時刻ｔ15においては、上述したように、合計絶対値Ｒｓｕｍ、Ｆｓｕｍに基づいて過不足量誤差ΔΣＯＥＤが算出され、これに基づいて学習値ｓｆｂｇが算出される。特に、図７に示した例では、酸素増大期間Ｔｉｎｃにおける積算酸素過不足量の合計絶対値Ｒｓｕｍよりも酸素減少期間Ｔｄｅｃにおける積算酸素過不足量の合計絶対値Ｆｓｕｍの方が大きいことから、時刻ｔ3において学習値ｓｆｂｇは減少せしめられる。
【００７８】
ここで、制御中心空燃比ＡＦＲは、上記式（３）を用いて学習値ｓｆｂｇに基づいて補正される。図７に示した例では、時刻ｔ15において学習値ｓｆｂｇは負の値となっているため、制御中心空燃比ＡＦＲは、基本制御中心空燃比ＡＦＲｂａｓｅ（本実施形態では理論空燃比）よりも小さな値、すなわちリッチ側の値となっている。これにより、上流側排気浄化触媒２０に流入する排気ガスの空燃比がリッチ側に補正されることになる。
【００７９】
この結果、時刻ｔ15以降、上流側排気浄化触媒２０に流入する排気ガスの実際の空燃比の目標空燃比に対するずれは時刻ｔ15以前と比べて小さなものとなる。したがって、時刻ｔ15以降、実際の空燃比を表す破線とリッチ設定空燃比又はリーン設定空燃比を表す一点鎖線との間の差は、時刻ｔ4以前における差よりも小さくなっている。なお、このような操作は、時刻ｔ15以降も同様に繰り返し行われ、学習値ｓｆｂｇの更新が繰り返し行われる。
【００８０】
学習制御によりこのように学習値ｓｆｂｇの更新を行うことにより、上流側空燃比センサ４０の出力空燃比ＡＦｕｐは徐々に目標空燃比から離れていくが、上流側排気浄化触媒２０に流入する排気ガスの実際の空燃比は徐々に目標空燃比に近づいていく。これにより、上流側空燃比センサ４０の出力空燃比におけるずれを補償することができる。
【００８１】
なお、上記実施形態では、学習値ｓｆｂｇに基づいて、制御中心空燃比ＡＦＲを補正することとしている。しかしながら、学習値ｓｆｂｇに基づいて補正するのは、フィードバック制御に関する他のパラメータであってもよい。他のパラメータとしては、例えば、燃焼室５内への燃料供給量や、上流側空燃比センサ４０の出力空燃比、空燃比補正量等が挙げられる。
【００８２】
＜具体的な制御の説明＞
次に、図８〜図１１を参照して、上記第一実施形態及び第二実施形態における制御装置について具体的に説明する。これら実施形態における制御装置は、機能ブロック図である図８に示したように、Ａ１〜Ａ１１の各機能ブロックを含んで構成されている。以下、図８を参照しながら各機能ブロックについて説明する。これら各機能ブロックＡ１〜Ａ１１における操作は、基本的にＥＣＵ３１において実行される。
【００８３】
＜燃料噴射量の算出＞
まず、燃料噴射量の算出について説明する。燃料噴射量の算出に当たっては、筒内吸入空気量算出手段Ａ１、基本燃料噴射量算出手段Ａ２、及び燃料噴射量算出手段Ａ３が用いられる。
【００８４】
筒内吸入空気量算出手段Ａ１は、吸入空気流量Ｇａと、機関回転数ＮＥと、ＥＣＵ３１のＲＯＭ３４に記憶されたマップ又は計算式とに基づいて、各気筒への吸入空気量Ｍｃを算出する。吸入空気流量Ｇａはエアフロメータ３９によって計測され、機関回転数ＮＥはクランク角センサ４４の出力に基づいて算出される。
【００８５】
基本燃料噴射量算出手段Ａ２は、筒内吸入空気量算出手段Ａ１によって算出された筒内吸入空気量Ｍｃを、目標空燃比ＡＦＴで除算することにより、基本燃料噴射量Ｑｂａｓｅを算出する（Ｑｂａｓｅ＝Ｍｃ／ＡＦＴ）。目標空燃比ＡＦＴは、後述する目標空燃比設定手段Ａ８によって算出される。
【００８６】
燃料噴射量算出手段Ａ３は、基本燃料噴射量算出手段Ａ２によって算出された基本燃料噴射量Ｑｂａｓｅに、後述するＦ／Ｂ補正量ＤＱｉを加えることで燃料噴射量Ｑｉを算出する（Ｑｉ＝Ｑｂａｓｅ＋ＤＱｉ）。このようにして算出された燃料噴射量Ｑｉの燃料が燃料噴射弁１１から噴射されるように、燃料噴射弁１１に対して噴射指示が行われる。
【００８７】
＜目標空燃比の算出＞
次に、目標空燃比の算出について説明する。目標空燃比の算出に当たっては、酸素過不足量算出手段Ａ４、空燃比補正量算出手段Ａ５、学習値算出手段Ａ６、制御中心空燃比算出手段Ａ７、目標空燃比設定手段Ａ８が用いられる。
【００８８】
酸素過不足量算出手段Ａ４は、燃料噴射量算出手段Ａ３によって算出された燃料噴射量Ｑｉ及び上流側空燃比センサ４０の出力空燃比ＡＦｕｐに基づいて積算酸素過不足量ΣＯＥＤを算出する。酸素過不足量算出手段Ａ４は、例えば、上流側空燃比センサ４０の出力空燃比と制御中心空燃比との差分に燃料噴射量Ｑｉを乗算すると共に、求めた値を積算することによって積算酸素過不足量ΣＯＥＤを算出する。
【００８９】
空燃比補正量算出手段Ａ５では、酸素過不足量算出手段Ａ４によって算出された積算酸素過不足量ΣＯＥＤと、下流側空燃比センサ４１の出力空燃比ＡＦｄｗｎとに基づいて、目標空燃比の空燃比補正量ＡＦＣが算出される。具体的には、図９及び図１０に示したフローチャートに基づいて空燃比補正量ＡＦＣが算出される。
【００９０】
学習値算出手段Ａ６では、下流側空燃比センサ４１の出力空燃比ＡＦｄｗｎ、酸素過不足量算出手段Ａ４によって算出された積算酸素過不足量ΣＯＥＤ等に基づいて学習値ｓｆｂｇが算出される。具体的には、図１１に示した学習制御のフローチャートに基づいて学習値ｓｆｂｇが算出される。このようにして算出された学習値ｓｆｂｇは、ＥＣＵ３１のＲＡＭ３３のうち、内燃機関を搭載した車両のイグニッションキーがオフにされても消去されない記憶媒体に保存される。
【００９１】
制御中心空燃比算出手段Ａ７では、基本制御中心空燃比ＡＦＲｂａｓｅ（例えば、理論空燃比）と、学習値算出手段Ａ６によって算出された学習値ｓｆｂｇとに基づいて制御中心空燃比ＡＦＲが算出される。具体的には、上述した式（３）に示したように、基本制御中心空燃比ＡＦＲｂａｓｅに学習値ｓｆｂｇを加算することによって制御中心空燃比ＡＦＲが算出される。
【００９２】
目標空燃比設定手段Ａ８は、制御中心空燃比算出手段Ａ７によって算出された制御中心空燃比ＡＦＲに、空燃比補正量算出手段Ａ５で算出された空燃比補正量ＡＦＣを加算することで、目標空燃比ＡＦＴを算出する。このようにして算出された目標空燃比ＡＦＴは、基本燃料噴射量算出手段Ａ２及び後述する空燃比偏差算出手段Ａ９に入力される。
【００９３】
なお、上述した第一実施形態に用いられる制御装置では、学習値算出手段Ａ６及び制御中心空燃比算出手段Ａ７が用いられない。このため、目標空燃比設定手段Ａ８では、制御中心空燃比ＡＦＲとして理論空燃比が用いられる。
【００９４】
＜Ｆ／Ｂ補正量の算出＞
次に、上流側空燃比センサ４０の出力空燃比ＡＦｕｐに基づいたＦ／Ｂ補正量の算出について説明する。Ｆ／Ｂ補正量の算出に当たっては、空燃比偏差算出手段Ａ９、Ｆ／Ｂ補正量算出手段Ａ１０が用いられる。
【００９５】
空燃比偏差算出手段Ａ９は、上流側空燃比センサ４０の出力空燃比ＡＦｕｐから目標空燃比設定手段Ａ８によって算出された目標空燃比ＡＦＴを減算することによって空燃比偏差ＤＡＦを算出する（ＤＡＦ＝ＡＦｕｐ−ＡＦＴ）。この空燃比偏差ＤＡＦは、目標空燃比ＡＦＴに対する燃料供給量の過不足を表す値である。
【００９６】
Ｆ／Ｂ補正量算出手段Ａ１０は、空燃比偏差算出手段Ａ９によって算出された空燃比偏差ＤＡＦを、比例・積分・微分処理（ＰＩＤ処理）することで、下記式（４）に基づいて燃料供給量の過不足を補償するためのＦ／Ｂ補正量ＤＦｉを算出する。このようにして算出されたＦ／Ｂ補正量ＤＦｉは、燃料噴射量算出手段Ａ３に入力される。
ＤＦｉ＝Ｋｐ・ＤＡＦ＋Ｋｉ・ＳＤＡＦ＋Ｋｄ・ＤＤＡＦ      …（４）
【００９７】
なお、上記式（４）において、Ｋｐは予め設定された比例ゲイン（比例定数）、Ｋｉは予め設定された積分ゲイン（積分定数）、Ｋｄは予め設定された微分ゲイン（微分定数）である。また、ＤＤＡＦは、空燃比偏差ＤＡＦの時間微分値であり、今回更新された空燃比偏差ＤＡＦと前回更新されていた空燃比偏差ＤＡＦとの偏差を更新間隔に対応する時間で除算することで算出される。また、ＳＤＡＦは、空燃比偏差ＤＡＦの時間積分値であり、この時間積分値ＤＤＡＦは前回更新された時間積分値ＤＤＡＦに今回更新された空燃比偏差ＤＡＦを加算することで算出される（ＳＤＡＦ＝ＤＤＡＦ＋ＤＡＦ）。
【００９８】
＜基本空燃比制御のフローチャート＞
図９は、基本空燃比制御の制御ルーチンを示すフローチャートである。図示した制御ルーチンは一定時間間隔の割り込みによって行われる。
【００９９】
図９に示したように、まず、ステップＳ１１において空燃比制御の実行条件が成立しているか否かが判定される。空燃比制御の実行条件が成立している場合とは、フィードバック制御が行われる通常制御中であること、例えば燃料カット制御や復帰後リッチ制御中等ではないこと等が挙げられる。ステップＳ１１において空燃比制御の実行条件が成立していると判定された場合には、ステップＳ１２へと進む。ステップＳ１２では、一時制御実行フラグＦｔが０に設定されているか否かが判定される。一時制御実行フラグＦｔは、一時的空燃比制御が実行されているときに１に設定され、それ以外の場合に０に設定されるフラグである。一時的空燃比制御が実行されていないときには、一時制御実行フラグＦｔは０に設定されていると判定され、ステップＳ１３へと進む。
【０１００】
ステップＳ１３では、カウンタＣＮＴが所定回数Ｎ以上であるか否かが判定される。このカウンタＣＮＴは、空燃比補正量ＡＦＣがリーン設定補正量ＡＦＣｌｅａｎからリッチ設定補正量ＡＦＣｒｉｃｈに切り替えられてから、再びリーン設定補正量ＡＦＣｌｅａｎからリッチ設定補正量ＡＦＣｒｉｃｈに切り替えられるまでのサイクル、すなわち図４の時刻ｔ1〜ｔ3のサイクルが繰り返された回数を表す。このサイクルの繰り返し回数が少ないときには、カウンタＣＮＴがＮ未満であると判定され、ステップＳ１４へと進む。
【０１０１】
ステップＳ１４では、リーン設定フラグＦｌｓが０に設定されているか否かが判定される。リーン設定フラグＦｌｓは、空燃比補正量ＡＦＣがリーン設定補正量ＡＦＣｌｅａｎに設定されると１とされ、それ以外の場合には０とされる。ステップＳ１４においてリーン設定フラグＦｌｓが０に設定されている場合には、ステップＳ１５へと進む。ステップＳ１５では、空燃比補正量ＡＦＣがリッチ設定補正量ＡＦＣｒｉｃｈに切り替えられてからの積算酸素過不足量ΣＯＥＤが切替基準不足量ＯＥＤｄｅｆ以下であるか否かが判定される。積算酸素過不足量ΣＯＥＤが切替基準不足量ＯＥＤｄｅｆよりも多いと判定された場合には、ステップＳ１６へと進む。ステップＳ１６では、空燃比補正量ＡＦＣがリッチ設定補正量ＡＦＣｒｉｃｈに設定されたまま維持され、制御ルーチンが終了せしめられる。
【０１０２】
一方、上流側排気浄化触媒２０の酸素吸蔵量ＯＳＡが減少して、積算酸素過不足量ΣＯＥＤが切替基準不足量ＯＥＤｄｅｆ以下になると、次の制御ルーチンではステップＳ１５からステップＳ１７へと進む。ステップＳ１７では、空燃比補正量ＡＦＣがリーン設定補正量ＡＦＣｌｅａｎに切り替えられる。次いで、ステップＳ１８では、リーン設定フラグＦｌｓが１に設定され、制御ルーチンが終了せしめられる。
【０１０３】
次の制御ルーチンにおいては、ステップＳ１４において、リーン設定フラグＦｌｓが０に設定されていないと判定されて、ステップＳ１９へと進む。ステップＳ１９では、空燃比補正量ＡＦＣがリーン設定補正量ＡＦＣｌｅａｎに切り替えられてからの積算酸素過不足量ΣＯＥＤが切替基準過剰量ＯＥＤｅｘ以上であるか否かが判定される。ステップＳ１９において、積算酸素過不足量ΣＯＥＤが切替基準過剰量ＯＥＤｅｘよりも少ないと判定された場合には、ステップＳ２０へと進む。ステップＳ２０では、空燃比補正量ＡＦＣがリーン設定補正量ＡＦＣｌｅａｎに設定されたまま維持され、制御ルーチンが終了せしめられる。
【０１０４】
一方、上流側排気浄化触媒２０の酸素吸蔵量ＯＳＡが増大して、積算酸素過不足量ΣＯＥＤが切替基準過剰量ＯＥＤｅｘ以上になると、次の制御ルーチンではステップＳ１９からステップＳ２１へと進む。ステップＳ２１では、空燃比補正量ＡＦＣがリッチ設定補正量ＡＦＣｒｉｃｈに切り替えられる。次いで、ステップＳ２２では、リーン設定フラグＦｌｓが０にリセットされ、次いで、ステップＳ２３ではカウンタＣＮＴに１が加算され、制御ルーチンが終了せしめられる。
【０１０５】
ステップＳ２３においてカウンタＣＮＴに１が加算された結果、カウンタＣＮＴが所定回数Ｎ以上になると、次の制御ルーチンではステップＳ１３からステップＳ２４へと進む。ステップＳ２４では、一時制御実行フラグＦｔが１に設定される。次いで、ステップＳ２５では、後述する一時的空燃比制御が実行される。ステップＳ２４において、一時制御実行フラグＦｔが１に設定されると、次の制御ルーチンではステップＳ１２において一時制御実行フラグＦｔが０に設定されていないと判定され、ステップＳ１２からステップＳ２５へと進む。
【０１０６】
＜一時的空燃比制御のフローチャート＞
図１０は、一時的空燃比制御の制御ルーチンを示すフローチャートである。図示した制御ルーチンは、図９のステップＳ２５が実行される毎に実行される。
【０１０７】
図１０に示した制御ルーチンでは、まず、ステップＳ３１において、リッチ判定フラグＦｒが０に設定されているか否かが判定される。リッチ判定フラグは、一時的空燃比制御の実行中に上流側排気浄化触媒２０からリッチ空燃比の排気ガスが流出したことが検出されたときに１に設定され、それ以外の場合に０に設定されるフラグである。ステップＳ３１において、リッチ判定フラグＦｒが０に設定されていると判定された場合にはステップＳ３２へと進む。
【０１０８】
ステップＳ３２では、下流側空燃比センサ４１の出力空燃比ＡＦｄｗｎがリッチ判定空燃比ＡＦｒｉｃｈ以下であるか否かが判定される。出力空燃比ＡＦｄｗｎがリッチ判定空燃比ＡＦｒｉｃｈよりも大きいと判定された場合には、ステップＳ３３へと進む。ステップＳ３３では、空燃比補正量ＡＦＣが強リッチ設定空燃比ＡＦＣｓｒｉｈｃに設定され、制御ルーチンが終了せしめられる。
【０１０９】
その後、上流側排気浄化触媒２０の酸素吸蔵量が減少してほぼゼロに到達すると、上流側排気浄化触媒２０からリッチ空燃比の排気ガスが流出する。これにより、その後の制御ルーチンにおいて、ステップＳ３２で下流側空燃比センサ４１の出力空燃比ＡＦｄｗｎがリッチ判定空燃比ＡＦｒｉｃｈ以下であると判定され、この場合、ステップＳ３２からステップＳ３４へと進む。ステップＳ３４では、空燃比補正量ＡＦＣが強リーン設定空燃比ＡＦＣｓｌｅａｎに設定され、次いで、ステップＳ３５ではリッチ判定フラグＦｒが１に設定される。
【０１１０】
リッチ判定フラグＦｒが１に設定されると、次の制御ルーチンでは、ステップＳ３１からステップＳ３６へと進む。ステップＳ３６では、空燃比補正量ＡＦＣが強リーン設定補正量ＡＦＣｓｌｅｎａに切り替えられてからの積算酸素過不足量ΣＯＥＤが回復基準過剰量ＯＥＤｒｅｃ以上であるか否かが判定される。ステップＳ３６において、積算酸素過不足量ΣＯＥＤが回復基準過剰量ＯＥＤｒｅｃ未満であると判定された場合には、ステップＳ３７へと進む。ステップＳ３７では、空燃比補正量ＡＦＣが強リーン設定補正量ＡＦＣｓｌｅａｎに設定されたまま維持されて制御ルーチンが終了せしめられる。
【０１１１】
その後、上流側排気浄化触媒２０の酸素吸蔵量が増大すると、その後の制御ルーチンでは、ステップＳ３６において、積算酸素過不足量ΣＯＥＤが回復基準過剰量ＯＥＤｒｅｃ以上であると判定される。この場合には、ステップＳ３６からステップＳ３８へと進む。ステップＳ３８では、空燃比補正量ＡＦＣがリッチ設定補正量ＡＦＣｒｉｃｈに設定される。次いで、ステップＳ３９では、一時制御実行フラグＦｔが０にリセットされ、次いでステップＳ４０では、リッチ判定フラグＦｒが０にリセットされ、制御ルーチンが終了せしめられる。
【０１１２】
＜学習制御のフローチャート＞
図１１は、学習制御の制御ルーチンを示すフローチャートである。図示した制御ルーチンは一定時間間隔の割り込みによって行われる。
【０１１３】
図１１に示したように、まず、ステップＳ４１において、学習値ｓｆｂｇの更新条件が成立しているか否かが判定される。更新条件が成立している場合とは、例えば、通常制御中であること等が挙げられる。ステップＳ４１において、学習値ｓｆｂｇの更新条件が成立していると判定された場合には、ステップＳ４２へと進む。ステップＳ４２では、リッチ設定フラグＦｒｓが０に設定されているか否かが判定される。リッチ設定フラグＦｒｓは、空燃比補正量ＡＦＣが０未満であると１とされ、それ以外の場合には０とされるフラグである。ステップＳ４２において、リッチ設定フラグＦｒｓが０に設定されていると判定された場合には、ステップＳ４３へと進む。
【０１１４】
ステップＳ４３では、空燃比補正量ＡＦＣが０よりも大きいか否か、すなわち目標空燃比がリーン空燃比であるか否かが判定される。ステップＳ４３において、空燃比補正量ＡＦＣが０よりも大きいと判定された場合には、ステップＳ４４へと進む。ステップＳ４４では、積算酸素過不足量ΣＯＥＤに現在の酸素過不足量ＯＥＤが加算される。
【０１１５】
その後、目標空燃比がリッチ空燃比へと切り替えられると、次の制御ルーチンではステップＳ４３において空燃比補正量ＡＦＣが０以下であると判定され、ステップＳ４５へと進む。ステップＳ４５では、リッチ設定フラグＦｒｓが１にセットされ、次いで、ステップＳ４６ではＲｉが現在の積算酸素過不足量ΣＯＥＤの絶対値とされる。なお、Ｒｉはｉ番目の酸素増大期間における積算酸素過不足量の絶対値を示している。次いで、ステップＳ４７では、積算酸素過不足量ΣＯＥＤが０にリセットされ、制御ルーチンが終了せしめられる。
【０１１６】
一方、リッチ設定フラグＦｒｓが１にセットされると、次の制御ルーチンでは、ステップＳ４２からステップＳ４８へと進む。ステップＳ４８では、空燃比補正量ＡＦＣが０よりも小さいか否か、すなわち目標空燃比がリッチ空燃比であるか否かが判定される。ステップＳ４８において、空燃比補正量ＡＦＣが０よりも小さいと判定された場合にはステップＳ４９へと進む。ステップＳ４９では、積算酸素過不足量ΣＯＥＤに現在の酸素過不足量ＯＥＤが加算される。
【０１１７】
その後、目標空燃比がリーン空燃比へと切り替えられると、次の制御ルーチンではステップＳ４８において空燃比補正量ＡＦＣが０以上であると判定され、ステップＳ５０へと進む。ステップＳ５０では、リッチ設定フラグＦｒｓが０にセットされ、次いで、ステップＳ５１では、Ｆｉが現在の積算酸素過不足量ΣＯＥＤの絶対値とされる。次いで、ステップＳ５２では、積算酸素過不足量ΣＯＥＤが０にリセットされる。次いで、ステップＳ５３では、絶対値の計算回数ｉに１が加算される。
【０１１８】
次いで、ステップＳ５４では、下流側空燃比センサ４１の出力空燃比ＡＦｄｗｎがリッチ判定空燃比ＡＦｒｉｃｈ以下であるか否かが判定される。すなわち、空燃比補正量ＡＦＣの切替が、一時的空燃比制御によるものであるか否かが判定される。下流側空燃比センサ４１の出力空燃比ＡＦｄｗｎがリッチ判定空燃比ＡＦｒｉｃｈよりも大きいと判定された場合には、制御ルーチンが終了せしめられる。一方、ステップＳ５４において、下流側空燃比センサ４１の出力空燃比ＡＦｄｗｎがリッチ判定空燃比ＡＦｒｉｃｈ以下であると判定された場合、すなわち空燃比補正量ＡＦＣの切替が一時的空燃比制御によるものであると判定された場合には、ステップＳ５５へと進む。
【０１１９】
ステップＳ５５では、ステップＳ４６で算出された複数のＲｉの合計値Ｒｓｕｍと、ステップＳ５１で算出された複数のＦｉの合計値Ｆｓｕｍとに基づいて、式（２）により学習値ｓｆｂｇが更新される。次いで、ステップＳ５６では、計算回数ｉが１にリセットされ、Ｒｉ、Ｆｉが０にリセットされ、制御ルーチンが終了せしめられる。
【符号の説明】
【０１２０】
１    機関本体
５    燃焼室
７    吸気ポート
９    排気ポート
１９    排気マニホルド
２０    上流側排気浄化触媒
２４    下流側排気浄化触媒
３１    ＥＣＵ
４０    上流側空燃比センサ
４１    下流側空燃比センサ
【図１】
2016217155.tif 000003
【図２】
2016217155.tif 000004
【図３】
2016217155.tif 000005
【図４】
2016217155.tif 000006
【図５】
2016217155.tif 000007
【図６】
2016217155.tif 000008
【図７】
2016217155.tif 000009
【図８】
2016217155.tif 000010
【図９】
2016217155.tif 000011
【図１０】
2016217155.tif 000012
【図１１】
2016217155.tif 000013