(第1の実施の形態)
以下、この発明を具体化した第1の実施の形態を図面に従って説明する。本実施の形態における空燃比制御システムでは、フィードバック制御の目標空燃比を理論空燃比又はそれよりもリーン側に設定し、その目標空燃比に基づいて車両用内燃機関の燃焼を制御する。同システムの主たる構成として、内燃機関の排気系通路には空燃比センサ(A/Fセンサ又はO2センサ)が配設され、マイクロコンピュータを主体とする電子制御装置(以下、ECUという)は空燃比センサによる検出結果を取り込み、その検出結果に基づいて空燃比フィードバック制御を実施する。以下、図面を用いてその詳細な構成を説明する。
図1は、本実施の形態における空燃比制御システムの概略構成図である。図1に示されるように、内燃機関は4気筒4サイクルの火花点火式エンジン(以下、エンジンという)1として構成されている。その吸入空気は上流よりエアクリーナ2、吸気管3、スロットル弁4、サージタンク5及びインテークマニホールド6を通過して、インテークマニホールド6内で各気筒毎の燃料噴射弁7から噴射された燃料と混合される。そして、所定空燃比の混合気として各気筒に供給される。
エンジン1の各気筒に設けられた点火プラグ8には、点火回路9から供給される高電圧がディストリビュータ10を介して分配供給され、点火プラグ8は前記各気筒の混合気を所定タイミングで点火する。燃焼後に各気筒から排出される排ガスは、エキゾーストマニホールド11及び排気管12を経て、排気管12に設けられた、いわゆるNOx吸蔵還元型触媒からなるリーンNOx触媒(以下、単にNOx触媒という)13を通過した後、大気に排出される。このNOx触媒13は、リーン空燃比での燃焼時に排ガス中のNOxを吸蔵し、リッチ空燃比での燃焼時に前記吸蔵したNOxをリッチ成分(CO,HCなど)で還元し放出する。
吸気管3には吸気温センサ21及び吸気圧センサ22が設けられ、吸気温センサ21は吸入空気の温度(吸気温Tam)を、吸気圧センサ22はスロットル弁4の下流側の吸気管内負圧(吸気圧PM)をそれぞれ検出する。スロットル弁4には同弁4の開度(スロットル開度TH)を検出するためのスロットルセンサ23が設けられ、このスロットルセンサ23はスロットル開度THに応じたアナログ信号を出力する。またこのスロットルセンサ23はアイドルスイッチをも内蔵しており、スロットル弁4が略全閉である旨の検出信号を出力する。
エンジン1のシリンダブロックには水温センサ24が設けられ、この水温センサ24はエンジン1内を循環する冷却水の温度(冷却水温Thw)を検出する。ディストリビュータ10にはエンジン1の回転数(エンジン回転数Ne)を検出するための回転数センサ25が設けられ、この回転数センサ25はエンジン1の2回転、すなわち720°CA毎に等間隔で24個のパルス信号を出力する。
さらに、排気管12においてNOx触媒13の上流側には、限界電流式のA/Fセンサ26が配設されており、同センサ26はエンジン1から排出される排ガスの酸素濃度(或いは、未燃ガス中のCO濃度)に比例して広域で且つリニアな空燃比信号を出力する。また、NOx触媒13の下流側にはO2センサ27が配設されており、同センサ27は排ガスが空燃比がリッチかリーンかに応じて異なる起電力信号を出力する。
一方、ECU30は、CPU31、ROM32、RAM33、バックアップRAM34等を中心に論理演算回路として構成され、前記各センサの検出信号を入力する入力ポート35及び各アクチュエータ等に制御信号を出力する出力ポート36に対しバス37を介して接続されている。ECU30は、前記した各種センサの検出信号(吸気温Tam、吸気圧PM、スロットル開度TH、冷却水温Thw、エンジン回転数Ne、空燃比信号等)を入力ポート35を介して入力する。そして、それらの各値に基づいて燃料噴射量TAU、点火時期Ig等の制御信号を算出し、さらにそれら制御信号を出力ポート36を介して燃料噴射弁7及び点火回路9等にそれぞれ出力する。
次に、上記の如く構成される空燃比制御システムの作用を説明する。図2は、燃料噴射制御処理を示すフローチャートであり、同処理は各気筒の燃料噴射毎(本実施の形態では180°CA毎)にCPU31により実行される。本実施の形態では基本的に、
・A/Fセンサ26により検出される実空燃比λrに関係なく、空燃比を理論空燃比に制御するオープンループ制御、
・理論空燃比を目標空燃比λTGとし、実空燃比λrを目標空燃比λTGに制御する理論空燃比フィードバック制御(以下、理論空燃比F/B制御という)、
・リーン空燃比域で目標空燃比λTGを設定し、実空燃比λrを目標空燃比λTGに制御するリーンフィードバック制御(以下、リーンF/B制御という)、といった各制御モードをエンジン運転状態に応じて選択的に実施するようにしている。
また、上記リーンF/B制御に際し、リーン燃焼の途中に一時的にリッチ燃焼を行わせ、NOx触媒13に吸蔵されたNOxを放出する、いわゆるリッチパージを実施する。例えばNOx触媒13のNOx吸着量が所定レベルを越えた時、或いは前回のリッチパージ時から所定時間(所定のリーン燃焼回数)が経過した時に、所定のリッチパージ条件が成立し、極短時間だけリッチ燃焼が行われる。これにより、リーン燃焼とリッチ燃焼とが所定周期で交互に実施されるようになる。
図2において、先ずステップ101では、エンジン運転状態を表すセンサ検出結果(エンジン回転数Ne、吸気圧PM、冷却水温Thw等)を読み込み、続くステップ102では、ROM32内に予め格納されている基本噴射量マップを用いてその時々のエンジン回転数Ne及び吸気圧PMに応じた基本噴射量Tpを算出する。
また、ステップ103では、周知の空燃比F/B条件が成立しているか否かを判別する。ここで、空燃比F/B条件とは、冷却水温Thwが所定温度以上であること、高回転・高負荷状態でないこと、A/Fセンサ26が活性状態にあることなどを含む。ステップ103がNOであれば(F/B条件不成立の場合)、オープンループ制御を実施することとし、ステップ104に進んでリーン補正値FLEAN、リッチ補正値FRICH及びフィードバック補正値FAFを何れも「1.0」とする。
また、ステップ103がYESであれば(F/B条件成立の場合)、理論空燃比F/B制御又はリーンF/B制御を実施することとし、ステップ200に進んで目標空燃比λTGの設定処理を実施する。また、ステップ300では、リーン補正値FLEAN及びリッチ補正値FRICHを設定する。続くステップ400では、フィードバック補正値FAFを設定する。
因みに、FLEAN,FRICHは各々、理論空燃比からの目標空燃比λTGのズレ量(リーン又はリッチの度合)に応じて設定され、基本的にズレ量が大きいほど大きな値となる。また、FAFは、その時々の実空燃比λr(A/Fセンサ26の計測値)と目標空燃比λTGとの偏差に応じて設定される。但し、上記ステップ200,300,400の各処理の詳細は後述する。
FLEAN,FRICH,FAFの各値の設定後、ステップ105では、基本噴射量Tp、各種補正係数FALL(水温、エアコン負荷等の各種補正係数)及び補正値FAF,FLEAN,FRICHに基づき最終の燃料噴射量TAUを算出する。
TAU=Tp・FALL・FAF・FLEAN・FRICH
燃料噴射量TAUの算出後、そのTAU値に相当する制御信号を燃料噴射弁7に出力して本処理を一旦終了する。
次に、上記ステップ200の処理を詳細に示す図3及び図4のフローチャートを用い、空燃比F/B制御時における目標空燃比の設定手順を説明する。この図3,4の処理では、「目標空燃比λTG」の設定を行うのは勿論のこと、その他に、F/B開始カウンタC
1及び目標空燃比変更カウンタC2の操作や、F/B制御の開始直後にのみ使用される「目標空燃比λTGST」の設定を行う。ここで、F/B開始カウンタC1は、オープンループ制御から空燃比F/B制御に切り換えられた直後にのみ操作され、そのカウンタ値に基づきF/B開始直後である旨が判別される。また、目標空燃比変更カウンタC2は、例えば理論空燃比F/B制御からリーンF/B制御への切り換え時など、目標空燃比λTGが大きく変更された時にのみ操作され、そのカウント値に基づきλTG変更時である旨が判別される。但し、カウンタC1,C2共、初期値は「0」である。
先ず図3のステップ201では、図示しない設定マップを用い、その時のエンジン運転状態(例えばエンジン回転数Ne、吸気圧PM)に応じて目標空燃比λTGを設定する。ここで、目標空燃比λTGはその時々の制御モードに見合うよう設定され、例えばエンジン運転状態が理論空燃比F/B制御の実施領域にあればλTG値としてA/F=14.7に相当する値が、エンジン運転状態がリーンF/B制御の実施領域にあればλTG値としてA/F=20〜23に相当する値が、それぞれ設定される。
その後、ステップ202では、前回の処理時にも空燃比F/B条件が成立していたか否かを判別する。仮にオープンループ制御から空燃比F/B制御に切り換えられた直後(F/B開始直後)であれば、ステップ202がNOとなり、ステップ240に進む。ステップ240では、F/B開始直後における目標空燃比λTGSTを設定する。なお、ステップ202がYESとなる場合にも、続くステップ203でF/B開始カウンタC1が「0」でなければ、ステップ240に進む。F/B開始カウンタC1は、後述するステップ240の処理にて操作され、C1>0であることは同ステップ240の処理が優先的に実施されていることを表す。
ここで、ステップ240の処理を図5を用いて説明する。図5では、ステップ241においてF/B開始カウンタC1が「0」であるか否かを判別する。当初はC1=0(初期値)であるため、ステップ242に進んで当該カウンタC1に所定値KC1をセットする。所定値KC1は、例えば図8の関係に従い設定される。図8では、A/Fセンサ26にて検出した今現在の実空燃比λrと、前記ステップ201で設定した目標空燃比λTGとの偏差に応じて所定値KC1が設定され、空燃比の偏差(|λr−λTG|)が大きいほどKC1に大きい値が設定される。但し、所定値KC1を予め決められた固定値としてもよい。
その後、ステップ243では、F/B開始直後の目標空燃比λTGSTとして、今現在の実空燃比λrを設定し、その後本処理を終了する。すなわち、実空燃比λrが目標空燃比λTGSTの初期値となる。
C1=KC1がセットされるとそれ以降、ステップ241がNOとなり、ステップ244に進んでF/B開始カウンタC1を「1」デクリメントする。また、ステップ245では、その時点でのλTGST,λTGを比較し、λTGST<λTGであるか否か、すなわちλTGよりもλTGSTの方がリッチであるか否かを判別する。
ステップ245がYESの場合(λTGST<λTGの場合)、ステップ246に進み、現時点の目標空燃比λTGSTに所定値Δλ1を加算する。また、ステップ245がNOの場合(λTGST≧λTGの場合)、ステップ247に進み、現時点の目標空燃比λTGSTから所定値Δλ2を減算する。ステップ246,247の処理によれば、目標空燃比λTGに近づくようF/B開始直後の目標空燃比λTGSTが徐々に増減される。
ここで、目標空燃比λTGSTを変化させるための所定値Δλ1,Δλ2は、Δλ1<Δλ2とするのが望ましい。これにより、λTGSTがリーン側からλTGに近づく場合(例えば燃料カットからのF/B開始時)には、リッチ側から近づく場合(例えば始動増量からのF/B開始時)よりもその変化速度が大きくなる。
その後、ステップ248では、λTGST,λTGの偏差の絶対値が所定値KAF1(例えば0.3)以下であるか否かを判別する。すなわち、
|λTGST−λTG|≦KAF1
が満たされるか否かを判別する。
そして、|λTGST−λTG|>KAF1であれば、そのまま本処理を終了し、|λTGST−λTG|≦KAF1であれば、ステップ249に進んでF/B開始カウンタC1を「0」にクリアし、その後本処理を終了する。C1=0の処理に伴い、本図5の一連の処理が終結される。すなわち、次回の処理では図3のステップ203がYESとなる。
なお、上記ステップ248では、F/B開始直後の目標空燃比λTGSTがリーン側から目標空燃比λTGに近づくのか、或いはリッチ側から近づくのかに応じて所定値KAF1を変更するとよい。例えば目標空燃比λTGSTがリーン側から近づく場合には、リッチ側から近づく場合に比べて所定値KAF1を大きくする。所定値KAF1が大きいことは、λTGST,λTGの偏差が比較的大きくても早々にステップ248が肯定判別されることを意味する。
一方図3において、ステップ202,203が共にYESの場合、すなわちF/B制御の開始直後にステップ240(図5の処理)が実施され、それ以降空燃比F/B制御が継続されている場合、ステップ204に進み、目標空燃比変更カウンタC2を「1」デクリメントする。但し、目標空燃比変更カウンタC2は初期値(0)で下限がガードされ、後述する所定値KC2の設定前には「0」で保持される。
その後、ステップ205ではリーンF/B条件が成立するか否かを判別する。そして、ステップ205がYESの場合には、前回もリーンF/B条件が成立したか否かを判別し(ステップ206)、ステップ205がNOの場合には、前回もリーンF/B条件が不成立であったか否かを判別する(ステップ207)。なお、リーンF/B条件とは、前記ステップ202における空燃比F/B条件よりも限定された条件を言う。基本的には、リーンF/B条件が成立すればリーンF/B制御が実施され、リーンF/B条件が不成立であれば理論空燃比F/B制御が実施される。
そして、前回及び今回でリーンF/B条件が「不成立→成立」と変化した場合(ステップ205がYES,ステップ206がNO)、或いは前回及び今回でリーンF/B条件が「成立→不成立」と変化した場合(ステップ205,207が共にNO)、ステップ208に進み、目標空燃比変更カウンタC2に所定値KC2を設定する。所定値KC2は、例えば図9の関係に従い設定される。図9では、今現在の実空燃比λrと目標空燃比λTGとの偏差に応じて所定値KC2が設定され、空燃比の偏差(|λr−λTG|)が大きいほどKC2に大きい値が設定される。但し、所定値KC2を予め決められた固定値としてもよい。
また、前回及び今回でリーンF/B条件が成立する場合(ステップ205,206が共にYES)、或いは前回及び今回でリーンF/B条件が成立しない場合(ステップ205がNO,ステップ207がYES)、ステップ208を読み飛ばし、そのまま後続のステップ209に進む。
その後、図4のステップ209では、リッチパージ条件が成立するか否かを判別する。ここで、例えばNOx触媒13のNOx吸着量が所定レベルを越えた時、或いは前回のリッチパージ時から所定時間(所定の燃焼回数)が経過した時に、リッチパージ条件が成立し、リッチ空燃比でのF/B制御が実施される。
リッチパージ条件の成立時に限り、ステップ210では、目標空燃比λTGとしてリッチ制御値(例えば、A/F=13に相当する値)を設定する。その後、ステップ211では、前回もリッチパージ条件が成立したか否かを判別する。また、ステップ209がNOの場合においてステップ212では、前回もリッチパージ条件が不成立であったか否かを判別する。
そして、前回及び今回でリッチパージ条件が「不成立→成立」と変化した場合(ステップ209がYES,ステップ211がNO)、或いは前回及び今回でリッチパージ条件が「成立→不成立」と変化した場合(ステップ209,212が共にNO)、ステップ213に進み、目標空燃比変更カウンタC2に所定値KC2を設定する。所定値KC2は、前記ステップ208と同様、例えば図9の関係に従い設定される。
また、前回及び今回でリッチパージ条件が成立する場合(ステップ209,211が共にYES)、或いは前回及び今回でリッチパージ条件が成立しない場合(ステップ209がNO,ステップ212がYES)、ステップ213を読み飛ばし、そのまま後続のステップ214に進む。
ステップ214では、目標空燃比変更カウンタC2が「0」よりも大きいか否かを判別し、C2≦0であればそのまま本処理を終了する。目標空燃比変更カウンタC2が初期値(=0)のまま保持される場合や、前記ステップ204でC2=0まで減算される場合、ステップ214を否定判別してそのまま本処理を終了する。
また、C2>0の場合にはステップ215に進み、今現在の実空燃比λrと目標空燃比λTGとの偏差の絶対値が所定値KAF2(例えば0.3)未満であるか否かを判別する。すなわち、
|λr−λTG|≦KAF2
が満たされるか否かを判別する。そして、|λr−λTG|>KAF2であれば、そのまま本処理を終了する。また、|λr−λTG|≦KAF2であれば、ステップ216で目標空燃比変更カウンタC2を「0」にクリアし、その後本処理を終了する。
次に、前記図2のステップ300の処理を詳細に示す図6のフローチャートを用い、リーン補正値FLEAN及びリッチ補正値FRICHの設定手順を説明する。
図6において、ステップ301では、リーンF/B条件が成立するか否かを判別し、ステップ302では、リッチパージ条件が成立するか否かを判別する。リーンF/B条件が不成立となる場合(ステップ301がNOの場合)、ステップ303,304に進み、リーン補正値FLEAN及びリッチ補正値FRICHを何れも「1.0」とする。
また、リーンF/B条件が成立し、且つリッチパージ条件が不成立となる場合(ステップ301がYES、ステップ302がNOの場合)、ステップ305に進んでその時の目標空燃比λTGに応じてリーン補正値FLEAN(<1.0)を設定し、続くステップ306では、リッチ補正値FRICHを「1.0」とする。
また、リーンF/B条件、リッチパージ条件が共に成立する場合(ステップ301,302が共にYESの場合)、ステップ307に進んでリーン補正値FLEANを「1.0」とし、続くステップ308では、その時の目標空燃比λTGに応じてリッチ補正値FRICH(>1.0)を設定する。
次に、前記図2のステップ400の処理を詳細に示す図7のフローチャートを用い、フィードバック補正値FAFの設定手順を説明する。ステップ401では、F/B開始カウンタC1が「0」よりも大きいか否かを判別し、ステップ402では、目標空燃比変更カウンタC12が「0」よりも大きいか否かを判別する。
そして、C1>0であればステップ403に進み、F/B開始直後における目標空燃比λTGST(前記図5の設定値)に基づいてフィードバック補正値FAFを設定する。また、C1=0,C2>0であればステップ404に進み、フィードバック補正値FAFを「1.0」とする。また、C2=0,C1=0であればステップ405に進み、目標空燃比λTGSTに基づいてフィードバック補正値FAFを設定する。
ステップ403,405では、その時々の実空燃比λrと目標空燃比λTGとの偏差に基づいてフィードバック補正値FAFを設定する。本実施の形態では、現代制御理論に基づく空燃比F/B制御を実施することとしており、そのF/B制御に際し、実空燃比λr(A/Fセンサ26の出力)を目標空燃比λTGに一致させるためのフィードバック補正値FAFを次式を用いて算出する。なお、このFAF値の設定手順については特開平1−110853号公報に詳細に開示されている。
FAF=K1・λr+K2・FAF1+・・・+Kn+1・FAFn+ZI
ZI=ZI1+Ka・(λTG−λr)
上記数式において、K1〜Kn+1はF/B定数を、ZIは積分項を、Kaは積分定数をそれぞれ表す。また、添字1〜n+1はサンプリング開始からの制御回数を示す変数である。
次に、図10及び図11のタイムチャートを用い、CPU31による前記各処理をより具体的に説明する。なお、図10はF/B開始直後における動作を示し、図11はリーンF/B制御の途中にリッチパージ(リッチF/B制御)が実施される時の動作を示す。
図10において、時刻t1は空燃比F/B条件が成立するタイミングを示し、そのt1以前はオープンループ制御が実施され、t1以降、理論空燃比F/B制御が実施される。因みに、エンジンの始動当初であれば、時刻t1以前には始動時増量のため、実空燃比λrがリッチ値となっている。
時刻t1では、空燃比F/B条件が前回=不成立、今回=成立となるため(図3のステップ202がNO)、F/B開始カウンタC1に所定値KC1が設定されると共に、その時の実空燃比λrがF/B開始直後の目標空燃比λTGSTとして設定される(図5のステップ242,243)。時刻t1以降、理論空燃比F/B制御が実施されるため、目標空燃比λTGとしては理論空燃比が設定される。
また、時刻t1以降、F/B開始カウンタC1が徐々に減算されると共に、目標空燃比λTGに近づくようF/B開始直後の目標空燃比λTGSTが徐々に増加される(図5のステップ244,246)。そして、|λTGST−λTG|≦KAF1となる時刻t2では、F/B開始カウンタC1が「0」にクリアされる(図5のステップ249)。
フィードバック補正値FAFは、時刻t1〜t2の期間においてF/B開始直後の目標空燃比λTGSTに応じて設定され(図7のステップ403)、時刻t2以降、通常制御での目標空燃比λTG(理論空燃比)に応じて設定される(図7のステップ405)。なお、リーン補正値FLEAN及びリッチ補正値FRICHは図10を通して「1.0」に保持される。
図10によれば、F/B制御の開始当初において、λr,λTGの偏差に関係なく直ちにλTGによる制御が開始されるのではなく、F/B開始直後に使われるλTGSTがλrからλTG側に徐々に変更されるので、F/B制御への移行時に空燃比の急変が原因でトルクショックが発生するといった従来の問題が解消される。
図10では、|λTGST−λTG|≦KAF1となる時刻t2で、F/B制御の目標空燃比をλTGSTからλTGに切り換えたが、仮に、|λTGST−λTG|≦KAF1となる前にKC1時間が経過しC1=0になると、その時点で、F/B制御の目標空燃比がλTGSTからλTGに切り換えられることとなる。
因みに、燃料カットが実施されて空燃比F/B制御が中断されたり、エンジンが高負荷域で運転されて空燃比F/B制御が中断されたりする場合にも、上記図10の時刻t1〜t2と同様に、中断後のF/B制御の再開に際し、F/B開始直後における目標空燃比λTGSTが設定され、そのλTGSTに基づいてF/B制御が実施される。そして、λTGST,λTGの偏差が十分に小さくなると、目標空燃比がλTGSTからλTGに切り換えられる。
一方、図11において、時刻t3〜t5は、リーンF/B制御の途中に一時的にリッチパージが実施される期間を示す。時刻t3以前、その時々の目標空燃比λTGに応じてフィードバック補正値FAFとリーン補正値FLEANとが各自設定される(但し、リッチ補正値FRICHは1.0)。
時刻t3では、リッチパージ条件が前回=不成立、今回=成立となるため、目標空燃比λTGとしてリッチ制御値が設定されると共に、目標空燃比変更カウンタC2に所定値KC2が設定される(図4のステップ210,213)。
また、時刻t3では、リッチパージの開始に伴い、リーン補正値LEANがそれまでの1.0未満の値から「1.0」に変更されると共に、リッチ補正値FRICHがそれまでの「1.0」から1.0を超える値に変更される。
時刻t3以降、目標空燃比変更カウンタC2が徐々に減算されると共に、実空燃比λrが目標空燃比λTG(リッチ制御値)に近づく。そして、|λr−λTG|≦KAF2となる時刻t4では、目標空燃比変更カウンタC2が「0」にクリアされる(図4のステップ216)。
時刻t3〜t4の期間では、フィードバック補正値FAFが「1.0」となり(図7のステップ404)、一時的に空燃比F/B制御が中断される。そして、時刻t4でC2=0になると、それ以降、目標空燃比λTG(リッチ制御値)に応じてフィードバック補正値FAFが設定され(図7のステップ405)、リッチF/B制御が開始される。
その後、時刻t5では、リッチパージ条件が前回=成立、今回=不成立となるため、目標空燃比変更カウンタC2に所定値KC2が再び設定される(図4のステップ213)。時刻t5以降、制御モードがリーンF/B制御に切り換えられるため、目標空燃比λTGがリーン制御値に戻る。また、時刻t5では、リーン補正値LEANがそれまでの「1.0」から1.0未満の値に変更されると共に、リッチ補正値FRICHがそれまでの1.0を超える値から「1.0」に変更される。
時刻t5以降、目標空燃比変更カウンタC2が徐々に減算されると共に、実空燃比λrが目標空燃比λTGに近づく。そして、|λr−λTG|≦KAF2となる時刻t6では、目標空燃比変更カウンタC2が「0」にクリアされる(図4のステップ216)。
時刻t5〜t6の期間では、時刻t3〜t4の期間と同様、フィードバック補正値FAFが「1.0」となり(図7のステップ404)、一時的に空燃比F/B制御が中断される。そして、時刻t6でC2=0になると、それ以降、目標空燃比λTGに応じてフィードバック補正値FAFが設定され(図7のステップ405)、リーンF/B制御が開始される。
上記の通り、F/B制御が一時的に中断されることで、過渡期における制御のハンチングが防止される。また、λr,λTGの偏差が所定値以下となった時にF/B制御が再開されることで、目標空燃比λTGの変化時に空燃比が過補正されるといった不具合が解消される。
図11では、|λr−λTG|≦KAF2となる時刻t4,t6で、F/B制御を再開したが、仮に、|λr−λTG|≦KAF2となる前にKC2時間が経過しC2=0になると、その時点で、F/B制御が再開されることとなる。
また図示は省略するが、空燃比F/B制御の実施中に、その実施条件がリーンF/B条件とそれ以外の条件とで変更された場合(図3のステップ206又は207がNOの場合)、すなわち理論空燃比F/B制御とリーンF/B制御とで制御モードが切り換えられた場合にも、前記図11の時刻t3〜t4又はt5〜t6と同様に、制御切り換えの直後においてF/B制御が一時的に中断される。そして、λr,λTGの偏差が所定値以下になると、F/B制御が再開されるようになっている。
なお本実施の形態では、図3,4のステップ205〜207,209,211,212により本発明の判定手段が構成され、図4のステップ214〜216及び図7により制御変更手段が構成される。また、図3のステップ201により第1の目標設定手段が構成され、図5のステップ243,245〜247により第2の目標設定手段が構成され、図5及び図7の処理により制御切換手段が構成される。またこのとき、通常時の目標空燃比λTGが「第1の目標値」に相当し、F/B開始直後の目標空燃比λTGSTが「第2の目標値」に相当する。
以上詳述した本実施の形態によれば、以下に示す効果が得られる。
(a)理論空燃比F/B制御⇔リーンF/B制御の切り換え時や、リッチパージの実行/非実行の切り換え時など、目標空燃比λTGが大幅に変化する場合、一時的にF/B制御を中断し、実空燃比λrと目標空燃比λTGとの偏差が所定値KAF2以下となった時にF/B制御を再開するようにした。本構成によれば、過渡期における制御のハンチングや空燃比の過補正といった不具合が解消される。このとき、制御モードの切り換え後において、F/B制御の開始以前に実空燃比λrが目標空燃比λTGから大きく外れるといった問題が生じることはない。その結果、目標空燃比の変化時にも空燃比の乱れが抑制され、ドライバビリティ、エミッションの悪化やトルクショックを招くことなく空燃比制御を継続することができる。
(b)F/B制御の中断後、λr,λTGの偏差が所定値KAF2以下となった時点、或いはF/B制御の中断から所定時間KC2が経過した時点のうち、早いタイミングでF/B制御を再開するようにした。この場合、仮に偏差の収束が予想外に長引いても、KC2時間が経過した時点でF/B制御が再開される。従って、当該F/B制御の再開が意図に反して遅れるといった不都合が未然に回避できる。
(c)オープンループ制御からF/B制御に移行する場合、F/B制御の開始当初には目標空燃比λTGSTを、開始直後の実空燃比λrからその時々の制御モードに見合う目標空燃比λTGに対して徐々に近づけるよう変更し、λTGST,λTGの偏差が所定値KAF1以下となった時に、それ以降、目標空燃比をλTGSTからλTGに切り換えるようにした。この場合、F/B制御の開始当初において空燃比の急変が原因でトルクショックが発生するといった従来の問題が解消され、F/B制御への切り換えが円滑に行われるようになる。
(d)λTGST,λTGの偏差が所定値KAF1以下となった時点、或いはF/B制御の開始から所定時間KC1が経過した時点のうち、早いタイミングでF/B制御の目標空燃比をλTGSTからλTGに切り換えるようにした。この場合、仮に偏差の収束が予想外に長引いても、KC1時間が経過した時点で目標空燃比が変更される(λTGST→λTG)。従って、目標空燃比λTGによる本来のF/B制御の開始が意図に反して遅れるといった不都合が未然に回避できる。
(e)カウンタC1,C2にセットする所定値KC1,KC2を、λr,λTGの偏差に応じて設定したので、偏差が異なる場合にはその時々で異なる所定値KC1,KC2が付与され、細かな制御が実現できる。
(f)F/B制御の開始に際し、F/B開始直後の目標空燃比λTGSTが、目標空燃比λTGに対してリッチ側から近づくのか或いはリーン側から近づくのかに応じてしきい値(所定値KAF1)を可変に設定するようにしたため、F/B制御の開始が最適時期となる。
次に、本発明における第2,第3の実施の形態を説明する。但し、以下の各実施の形態の構成において、上述した第1の実施の形態と同等であるものについては図面に同一の記号を付すと共にその説明を簡略化する。そして、以下には第1の実施の形態との相違点を中心に説明する。
(第2の実施の形態)図12は、目標空燃比λTGの設定処理の一部を示すフローチャートであり、同処理は前記図3,4のステップ205〜213に置き換えて実施される。
図12のステップ501では、目標空燃比の今回値λTGiと前回値λTGi−1とからその変化量λDVを算出する(λDV=|λTGi−λTGi−1|)。また、続くステップ502では、目標空燃比の変化量λDVが所定値KDVよりも大きいか否かを判別し、λDV>KDVであることを条件に、ステップ503で目標空燃比変更カウンタC2に所定値KC2を設定する。ここで、所定値KC2は、前記図9の関係に従い設定してもよいし、或いは固定値としてもよい。
上記処理によれば、目標空燃比λTGが大きく変更された時、C2=KC2がセットされ、それに伴い、当初はF/B制御が中断され(FAF=1.0とし)、実空燃比λrと目標空燃比λTGとの偏差が所定値以下になるか、或いは目標空燃比変更カウンタC2が徐々に減じられてC2=0になるか、の何れか早いタイミングでF/B制御が再開される。
このとき、第1の実施の形態で説明した通り、理論空燃比F/B制御とリーンF/B制御とで制御モードが切り換えられた時や、リッチパージが実行/非実行で切り換えられた時にも、図12のステップ502がYESとなり、F/B制御が中断されるなどの処理が実施される。なお本実施の形態では、ステップ502が本発明の判定手段に相当する。
以上第2の実施の形態によれば、既述の第1の実施の形態と同様に、過渡期における制御のハンチングや空燃比の過補正といった不具合が解消される。その結果、目標空燃比の変化時にも空燃比の乱れが抑制され、ドライバビリティ、エミッションの悪化やトルクショックを招くことなく空燃比制御を継続することができる。
また本実施の形態によれば、A/F=約20〜23を目標空燃比λTGとする通常のリーンF/B制御からA/F=約45〜50を目標空燃比λTGとする超リーンF/B制御に移行する際にも、その制御の切り換えを円滑に行わせることが可能となる。
(第3の実施の形態)上記各実施の形態では、
・オープンループ制御から空燃比F/B制御に切り換えられた時、
・理論空燃比F/B制御とリーンF/B制御とが切り換えられた時、
・リッチパージが実行/非実行で切り換えられた時、
・目標空燃比λTGの変化量が所定値を超える時、
の各々において、カウンタC1,C2に所定値KC1,KC2をセットし、そのカウンタC1,C2を徐々に減算したが、この構成を変更する。例えばカウンタC1,C2に代えてフラグF1,F2を用い、F/B開始直後にはF1=1とすると共に、目標空燃比λTGが大きく変更された時にはF2=1とする。
実際には、前記図3のステップ202がNOとなる時に、フラグF1に「1」をセットし、その後のF1=1の期間においては、図5に示す通り目標空燃比λTGSTを設定すると共に、|λTGST−λTG|≦KAF1となる時に同フラグF1をクリアする。そして、前記図7の一部を変更した図13の処理において、F1=1の期間では目標空燃比λTGSTに応じてFAF値を設定し(ステップ601→403)、F1=0になるとそれ以降、目標空燃比λTGに応じてFAF値を設定する(ステップ601→602→405)。
一方、前記図3,4の206,207,211,212の何れかがNOの場合、又は前記図12のステップ502がYESの場合、フラグF2に「1」をセットし、その後のF2=1の期間においては、図4のステップ215の通り|λr−λTG|≦KAF2となるか否かを判別し、同ステップがYESになると同フラグF2をクリアする。そして、図13の処理において、F2=1の期間ではFAF=1.0としてF/B制御を中断し(ステップ602→404)、F2=0になるとそれ以降、目標空燃比λTGに応じてFAF値を設定する(ステップ602→405)。
以上第3の実施の形態によれば、既述の実施の形態と同様に、目標空燃比の変化時にも空燃比の乱れが抑制され、ドライバビリティ、エミッションの悪化やトルクショックを招くことなく空燃比制御を継続することができる。また、目標空燃比の偏差でしか制御切換のタイミングが得られないものの、カウンタC1,C2の設定処理やカウンタ処理等が省略でき、構成の簡素化を図ることができる。
なお、本発明の実施の形態は、上記以外に次の形態にて具体化できる。上記第1の実施の形態では、オープンループ制御からF/B制御への移行時に限り、
(イ)実空燃比λrを目標空燃比λTGST(第2の目標値)として初期設定すると共に、制御モードに見合う目標空燃比λTG(第1の目標値)に近づくようλTGSTを徐々に変更する。
(ロ)λTGSTを目標空燃比として新たなフィードバック制御を開始する。
(ハ)λTGST,λTGの偏差が所定値以下になると、目標空燃比をλTGSTからλTGに切り換える。
といった、図5及び図7に示す一連の処理を実施したが、この処理をF/B制御の実施途中における目標空燃比λTGの変更時に実施するようにしてもよい。
すなわち、理論空燃比F/B制御⇔リーンF/B制御の切り換え時や、リッチパージの実行/非実行の切り換え時などにおいて、
・一時的にF/B制御を中断し、λr,λTGの偏差が所定値KAF2以下となった時にF/B制御を再開する、といった既述の処理(図3,4の処理)に代えて、上記(イ)〜(ハ)の処理を実施する。
また、上記第2の実施の形態の如く、目標空燃比の変化量λDV(=|λTGi−λTGi−1|)が所定値KDVよりも大きい場合にも同様に、上記(イ)〜(ハ)の処理を実施するようにしてもよい。これら何れの構成においても、既述した通り、目標空燃比の変化時にも空燃比の乱れが抑制され、ドライバビリティ、エミッションの悪化やトルクショックを招くことなく空燃比制御を継続することができる。
上記実施の形態では、例えばオープンループ制御からF/B制御への移行時において、実空燃比λrを目標空燃比λTGST(第2の目標値)として初期設定したが、この際、λTGSTの初期値は必ずしも実空燃比λrそのものでなくてもよく、その時の実空燃比λrや目標空燃比λTGに応じて適宜設定される値でよい。例えば、制御モードに見合う目標空燃比λTGに対し、所定値αだけ実空燃比λrから近づけた値を、目標空燃比λTGST(第2の目標値)として初期設定する。所定値αはλr,λTGの偏差に応じて決定される
とよい。実際には、
・実空燃比λrが目標空燃比λTGよりもリッチ側にあれば、「λr+α」をλTGSTの初期値とし、
・実空燃比λrが目標空燃比λTGよりもリーン側にあれば、「λr−α」をλTGSTの初期値とする。
この場合、目標空燃比λTGに対して実空燃比λrがいち早く収束し、F/B制御の開始を早めることが可能となる。
上記第1の実施の形態では、リッチパージに際し、リッチF/B制御を実施することとしたが、これをオープンループ制御としてもよい。この場合、リッチパージからリーンF/B制御に切り換えられる時には、その当初において図5の手順に従い、F/B開始直後における目標空燃比λTGSTを設定してF/B制御を開始するとよい。
上記第2の実施の形態では、図3,4のステップ205〜213に置き換えて図12の処理を実施する旨を記載したが、これを変更する。例えば図3,4のステップ205〜213の処理と図12の処理とを併せて実施してもよく、この場合には、図3,4のステップ205〜213に引き続き、図12の処理を実施すればよい。
オープンループ制御及び理論空燃比F/B制御のみを実施する装置(リーンF/B制御を実施しない装置)に本発明を適用してもよい。この場合、オープンループ制御→理論空燃比F/B制御の切り換え時に既述の図5の処理が実施される。但し、触媒による有害成分(CO,HC,NOx)の吸着能力を回復させるべく、理論空燃比F/B制御の途中に有害成分の触媒吸着量に応じてリッチパージを実施する場合には(例えば本願出願人による特開平6−74072号公報、特開平8−200128号公報を参照)、リッチパージの実行/非実行に応じてF/B制御の一時中断、並びに空燃比偏差に応じたF/B制御の復帰などの処理(図3,4,7の処理)を適宜行うとよい。これによりやはり、エミッションやドライバビリティの悪化等の問題が解消される。
また、一形態として、F/B開始直後の制御(図5の処理)を省略し、目標空燃比λTGの変化量が大きい時の制御(図3,4においてステップ202,203,240以外の処理)だけを実施する装置としてもよい。
1…エンジン(内燃機関)、12…排気管、13…NOx触媒、26…A/Fセンサ、30…ECU、31…判定手段,制御変更手段,モード切換制御手段,第1の目標設定手段,第2の目標設定手段,制御切換手段を構成するCPU。