(57)【特許請求の範囲】
【請求項１】
機関の排気系に設けられたリニア型の空燃比センサと、該機関の運転状態に基づき該機関に供給する基本噴射量を算出する基本噴射量算出手段と、該空燃比センサにより検出される実空燃比と該機関に供給する混合気の目標空燃比との差に基づきＰＩ制御によりフィードバック補正量を算出するフィードバック補正量算出手段と、該基本噴射量と学習補正係数とを乗算した値に該フィードバック補正量を加算して該機関に供給する燃料噴射量を算出する燃料噴射量算出手段と、を備えた内燃機関の空燃比制御装置において、
前記基本噴射量と前記フィードバック補正量との比であるフィードバック補正率を算出するフィードバック補正率算出手段と、
前記フィードバック補正率とそのスレッショールドとの比較に基づき前記学習補正係数を更新する学習手段と、
を備えたことを特徴とする内燃機関の空燃比制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は内燃機関の空燃比制御装置に関し、特に、リニア型の空燃比センサの出力値を用いて燃料供給系の経時変化による誤差を学習し燃料供給量に反映させるように制御する内燃機関の空燃比制御装置に関する。
【０００２】
【従来の技術】
機関の排気系にリニア型の空燃比センサを備えその空燃比センサにより機関の気筒内に供給された混合気の空気量と燃料量の比すなわち空燃比を検出し、その空燃比が目標空燃比となるように機関の運転状態に応じた燃料噴射量を機関へ供給する内燃機関の空燃比制御装置が知られている。このような空燃比制御装置として本願出願人により提案されたものがある（特願平７−５９４５３参照）。この空燃比制御装置は、機関へ供給する燃料噴射量（ｔａｕ）を次式に基づき算出している。
ｔａｕ  ＝  ｆｉｎ  ＊  ＦＫＧ  ＋  Δｆｉ  ＋  α
ここで、ｆｉｎは機関の運転状態に応じて決定される基本噴射量、ＦＫＧは機関の固体差や経時変化による空燃比のずれを学習して補正する初期値１．０の学習補正係数、Δｆｉは空燃比センサの出力から求められる実空燃比と目標空燃比との差が０に収束するように補正するフィードバック補正量、αはその他の例えば過渡時の補正量ｆｍｗである。
【０００３】
ところで上記空燃比制御装置は、空燃比センサの出力から求められる実空燃比ＶＡ／Ｆ  と目標空燃比ＶＡ／ＦＳとの差ΔＶＡ／Ｆ  の積分値ｓｕｍΔＶＡ／Ｆ  に応じて学習補正係数ＦＫＧの更新を行うとともに、その積分値をフィードバック補正量Δｆｉに反映させて燃料噴射量ｔａｕを算出している。すなわち、積分値ｓｕｍΔＶＡ／Ｆ  が所定のスレッショールドを越えたときに学習補正係数ＦＫＧを更新するとともに、積分値ｓｕｍΔＶＡ／Ｆ  に応じてフィードバック補正量Δｆｉを算出した後、上式に基づき燃料噴射量ｔａｕを算出している。
【０００４】
【発明が解決しようとする課題】
しかしながら、上記特願平７−５９４５３の空燃比制御装置は、例えばＰＩＤ制御において比例ゲインＰ、積分ゲインＩおよび微分ゲインＤや機関の負荷状態に応じて予め設定される負荷補正係数ｅｋｌｄを所望の値に変えると、積分値が同じ値であってもフィードバック補正量が変化してしまう。これは、上記空燃比制御装置が積分値に応じて学習補正係数を更新しているので、フィードバック補正量が異なるにも関わらず同量の学習補正係数の更新を行っていることになる。すなわち、学習制御は基本的に目標空燃比に対する実空燃比のずれ量が大きいときに即座に目標空燃比となるように学習補正係数を更新するものであり、異なるフィードバック補正量に対して同量の学習補正係数の更新を行うことは正確な学習とならず問題である。
【０００５】
また、上記空燃比制御装置は、機関運転中に積算される積分値がその積分値に対するスレッショールドを越えたときに限りその積分値に基づいて学習補正係数を更新するものであり、そのスレッショールドを越えないときは学習補正係数を更新しないものであるが、前記同様にＰＩＤの各ゲインや負荷補正係数ｅｋｌｄを所望の値に変える度にフィードバック補正量Δｆｉが変化するので、上記積分値のスレッショールドに対応するフィードバック補正量のスレッショールドもその度に変化する。このフィードバック補正量のスレッショールドが広がる方向、すなわち空燃比フィードバック制御系のゲインが下がる方向に変化すると、学習補正係数を更新すべきときに学習補正係数を更新できない場合が生じ、その結果、機関の空燃比がフィードバック補正により目標空燃比近傍に到達するまでの間、機関の排気浄化が遅れる。一方、このフィードバック補正量のスレッショールドが狭まる方向、すなわち空燃比フィードバック制御系のゲインが上がる方向に変化すると、学習補正係数が更新され過ぎとなり、すなわち外乱やノイズのときまで学習補正係数を更新し、あるいは空燃比フィードバック制御がハンチングする虞がある。
【０００６】
それゆえ、本発明はこれらの問題を解決し、すなわちフィードバック補正量に対応して学習補正係数を更新するとともに、ＰＩＤの各ゲインや負荷補正係数を変えてもフィードバック補正量に対するスレッショールドを変えずに良好な空燃比制御ができる内燃機関の空燃比制御装置の提供を目的とする。
【０００７】
【課題を解決するための手段】
図１は本発明による空燃比制御装置の基本構成図である。前記問題を解決する本発明の内燃機関の空燃比制御装置は、機関１０の排気系に設けられたリニア型の空燃比センサ１１と、機関１０の運転状態に基づき機関１０に供給する基本噴射量ｆｉｎを算出する基本噴射量算出手段１３と、空燃比センサ１１により検出される実空燃比ＶＡ／Ｆ  と機関１０に供給する混合気の目標空燃比ＶＡ／ＦＳの差に基づきＰＩ制御によりフィードバック補正量Δｆｉを算出するフィードバック（Ｆ／Ｂ）補正量算出手段１４と、基本噴射量ｆｉｎと学習補正係数ＦＫＧとを乗算した値ｆｉｎ＊ＦＫＧにフィードバック補正量Δｆｉを加算して機関１０に供給する燃料噴射量ｔａｕ（＝ｆｉｎ＊ＦＫＧ＋Δｆｉ）を算出する燃料噴射量算出手段１５と、を備えた内燃機関の空燃比制御装置において、基本噴射量ｆｉｎとフィードバック補正量Δｆｉとの比であるフィードバック補正率ｄｆｉｒｔを算出するフィードバック補正率算出手段１６と、フィードバック補正率ｄｆｉｒｔとそのスレッショールドとの比較に基づき、すなわちフィードバック補正率ｄｆｉｒｔがそのスレッショールドを越えたとき学習補正係数ＦＫＧを更新する学習手段１７と、を備えたことを特徴とする。
【０００８】
本発明による空燃比制御装置は、フィードバック補正量Δｆｉと基本噴射量ｆｉｎとの比として算出したフィードバック補正率ｄｆｉｒｔをパラメータとするので、フィードバック補正量に対応して学習補正係数が更新される。その結果、正確な空燃比の学習制御を行うことができる。
【０００９】
また、フィードバック補正率ｄｆｉｒｔをパラメータとしてフィードバック補正率ｄｆｉｒｔがそのスレッショールドを越えたときに学習補正係数ＦＫＧを更新するので、フィードバック補正量Δｆｉを決定する比例ゲイン、積分ゲイン、または負荷に応じてフィードバック補正量Δｆｉを補正する負荷補正係数ｅｋｌｄの値の変更によらず、フィードバック補正率ｄｆｉｒｔに対する同一スレッショールドを境界にして学習補正係数ＦＫＧが更新される。その結果、機関の排気浄化の遅れや空燃比フィードバック制御のハンチングの発生を防止することができる。
【００１０】
【発明の実施の形態】
図２は本発明による空燃比制御装置をＶ型６気筒機関に適用した場合の実施例を示す全体概略図である。なお、本発明はＶ型機関以外の直列気筒機関にも当然に適用可能であることはいうまでもない。図２において、２１はそれぞれ３つのシリンダがＶ字型に２列に配置された構成のＶ型６気筒機関の本体を示す。機関本体２１の吸気通路２２にはエアフローメータ２３が設けられている。エアフローメータ２３は吸入空気量を直接計測するものであって、たとえばポテンショメータを内蔵した可動ベーン式エアフローメータ等が使用され、吸入空気量に比例したアナログ電圧の出力信号を発生する。この出力信号は制御回路３０のマルチプレクサ内蔵Ａ／Ｄ変換器１０１に入力されている。ディストリビュータ２４には、その軸がたとえばクランク角に換算して７２０°毎に基準位置検出用パルス信号を発生するクランク角センサ２５Ａおよびクランク角に換算して３０°毎にクランク各検出用パルス信号を発生するクランク角センサ２５Ｂがそれぞれ設けられている。これらクランク角センサ２５Ａ、２５Ｂのパルス信号は制御回路３０の入出力インターフェイス１０２に供給され、このうちクランク角センサ２５Ｂの出力はＣＰＵ１０３の割込み端子に供給されている。
【００１１】
また機関２１の吸気管内には吸気管内の圧力を検出する吸気圧センサ２６が設けられ、吸気圧センサ２６はこの吸気圧に比例したアナログ電圧の電気信号を発生し、この出力もＡ／Ｄ変換器１０１に供給されている。
さらに、吸気通路２２には各気筒毎に燃料供給系から加圧燃料を吸気ポートへ供給するための燃料噴射弁２７Ａ、２７Ｂが設けられている。
また、機関本体２１のシリンダブロックのウォータジャケット（図示せず）には、冷却水の温度を検出するための水温センサ２９が設けられている。水温センサ２９は冷却水の温度に応じたアナログ電圧の電気信号を発生する。この出力もＡ／Ｄ変換器１０１に供給されている。
【００１２】
機関２１の右バンク（以下、Ａバンクという）及び左バンク（以下Ｂバンクという）の排気マニホールド３１Ａ、３１Ｂより下流の排気系には、それぞれ排気ガス中の３つの有害成分ＨＣ、ＣＯ、ＮＯＸ  を同時に浄化する三元触媒を収容する触媒コンバータ３２Ａ、３２Ｂが設けられている。この触媒コンバータ（スタートキャタリスト）３２Ａ、３２Ｂは機関始動時の触媒暖機を短時間で行えるように、比較的小容量とされ、エンジンルーム内に設けられている。
【００１３】
Ａバンクの排気マニホールド３１Ａには、すなわち触媒コンバータ３２Ａの上流側の排気管３１ＡにはＡバンク用の空燃比センサ３３Ａが設けられ、またＢバンクの排気マニホールド３１Ｂには、すなわち触媒コンバータ３２Ｂの上流側の排気管３１Ｂには同様にＢバンク用の空燃比センサ３３Ｂが設けられている。
【００１４】
さらに、２つの排気管３４Ａ、３４Ｂはその下流において集合部３５ａにおいて合流しており、この集合部３５ａ下流側の排気管には三元触媒を収容する触媒コンバータ（メインキャタリスト）３６が配置されている。この触媒コンバータ３６は比較的容量が大きく、車体の床下に設置されている。触媒コンバータ３６の下流側には集合排気管３５が連結されている。
【００１５】
本実施例では、空燃比センサ３３Ａ、３３Ｂとしては、排気中の酸素成分濃度と広い空燃比範囲で一対一に対応する、つまり排気空燃比と一対一に対応する出力信号を発生するリニア型の全域空燃比センサ（Ａ／Ｆセンサ）が使用されている。空燃比センサ３３Ａ、３３Ｂは、機関２１の排気ガスに含まれる酸素濃度と略比例する出力電圧を発生し、この出力電圧は制御回路３０のＡ／Ｄ変換器１０１に供給されている。
【００１６】
本実施例では、制御回路３０は、たとえばマイクロコンピュータとして構成され、Ａ／Ｄ変換器１０１、入出力インターフェイス１０２、ＣＰＵ１０３の他に、ＲＯＭ１０４、ＲＡＭ１０５、バックアップＲＡＭ１０６、クロック発生回路１０７等が設けられている。制御回路３０は、機関２１の燃料噴射制御、点火時期制御等の基本制御を行う他、図１を用いて説明した基本噴射量算出手段１３、フィードバック（Ｆ／Ｂ）補正量算出手段１４、燃料噴射量算出手段１５、フィードバック（Ｆ／Ｂ）補正率算出手段１６、学習手段１７としての機能を有し、機関２１の空燃比制御を行う。
【００１７】
また、吸気通路２２のスロットル弁３８には、スロットル弁３８が全閉状態か否かを示す信号、すなわちＸＩＤＬ信号を発生するアイドルスイッチ３９が設けられている。このアイドル状態出力信号ＸＩＤＬは制御回路３０の入出力インターフェイス１０２に供給される。
【００１８】
さらに４０Ａ、４０Ｂは２次空気導入制御弁であって、減速時あるいはアイドル時に図示しないエアポンプ等の空気源から２次空気を排気マニホルド３１Ａ、３１Ｂに供給して、ＨＣ、ＣＯエミッションを低減するためのものである。
【００１９】
さらに、制御回路３０において、ダウンカウンタ１０８Ａ、フリップフロップ１０９Ａ、および駆動回路１１０ＡはＡバンクの燃料噴射弁２７Ａを制御するためのものであり、ダウンカウンタ１０８Ｂ、フリップフロップ１０９Ｂ、駆動回路１１０ＢはＢバンクの燃料噴射弁７Ｂを制御するためのものである。すなわち、後述のルーチンにおいて、燃料噴射量（噴射時間）ｔａｕ（Ａ）  （ｔａｕ（Ｂ）  ）が演算されると、噴射時間ｔａｕ（Ａ）  （ｔａｕ（Ｂ）  ）がダウンカウンタ１０８Ａ（１０８Ｂ）にプリセットされると共にフリップフロップ１０９Ａ（１０９Ｂ）もセットされる。この結果、駆動回路１１０Ａ（１１０Ｂ）が燃料噴射弁２７Ａ（２７Ｂ）の付勢を開始する。他方、ダウンカウンタ１０８Ａ（１０８Ｂ）がクロック信号（図示せず）を計数して最後にその出力端子が“１”レベルとなったときに、フリップフロップ１０９Ａ（１０９Ｂ）がセットされて駆動回路１１０Ａ（１１０Ｂ）は燃料噴射弁２７Ａ（２７Ｂ）の付勢を停止する。つまり、上述の燃料噴射時間ｔａｕ（Ａ）  （ｔａｕ（Ｂ）  ）だけ燃料噴射弁２７Ａ（２７Ｂ）は付勢され、時間ｔａｕ（Ａ）  （ｔａｕ（Ｂ）  ）に応じた量の燃料が機関２１のＡバンク（Ｂバンク）燃焼室に送り込まれることになる。なお、ＣＰＵ１０３の割込みは、Ａ／Ｄ変換器１０１のＡ／Ｄ変換終了後、入出力インターフェイス１０２がクランク角センサ２５Ｂのパルス信号を受信した時、等に発生する。
【００２０】
エアフローメータ２３の吸入空気量データ、吸気圧センサ２６の吸気圧データおよび水温センサ２９の冷却水温データは所定時間もしくは所定クランク角毎に実行されるＡ／Ｄ変換ルーチンによって取込まれてＲＡＭ１０５の所定領域に格納される。つまり、ＲＡＭ１０５における吸入空気量データ、吸気圧データおよび冷却水温データは所定時間毎に更新されている。また、回転速度データはクランク角センサ２５Ｂの３０°ＣＡ（クランク角）毎の割込みによって演算されてＲＡＭ１０５の所定領域に格納される。
【００２１】
次に、図１と図２を相互に参照しつつＰＩＤ制御に基づく本発明による空燃比制御装置の実施例について説明する。本発明による空燃比制御装置の実施例として、リニア型空燃比センサ出力によるＰＩＤ（比例積分微分）項を用いた古典制御方式の空燃比フィードバック制御に、フィードバック補正率に基づく学習制御を加えた例を採用した。実施例における制御回路３０では、空燃比センサ３３Ａまたは３３Ｂの出力ＶＡ／Ｆ  と機関２１の混合気の空燃比が理論空燃比となるように設定された目標空燃比すなわちストイキ相当の基準値ＶＡ／ＦＳとの偏差（ＶＡ／Ｆ  −ＶＡ／ＦＳ＝ΔＶＡ／ＦＳ）を用いて、燃料噴射量の空燃比フィードバック補正量Δｆｉ＝ΔＶＡ／Ｆ  ＊ｅｋｌｆを以下のように算出する。
0003581762.tif 000002
ここで、ＫＰは一定の比例係数、ＳＵＭ（ΔＶＡ／ＦＳ）は後述する方法で求める偏差ΔＶＡ／ＦＳの積分値（ＳＵＭΔＶＡ／ＦＳ＝ΣΔＶＡ／ＦＳ）、ＫＩは一定の積分係数、ｄ（ΔＶＡ／ＦＳ）は後述する方法で求めるΔＶＡ／ＦＳの変化率（微分値）、ＫＤは一定の微分係数をそれぞれ示し、ｅｋｌｆは機関の負荷状態に応じて予め設定される負荷補正係数を示す。
【００２２】
すなわち、燃料噴射量の空燃比フィードバック補正量Δｆｉ＝ΔＶＡ／Ｆ  ＊ｅｋｌｆは、先ず空燃比センサ出力ＶＡ／Ｆ  と機関の混合気が理論空燃比となるときの空燃比センサの出力に相当する基準値ＶＡ／ＦＳとの偏差ΔＶＡ／ＦＳに基づいてＰＩＤ（比例、積分、微分）処理して決定される。ここで、ＫＰ、ＫＩ、ＫＤはフィードバックのゲイン定数であり、実験等により決定される。
【００２３】
ここで、比例項ＫＰ＊ΔＶＡ／ＦＳ、及び微分項ＫＤ＊（ｄΔＶＡ／ＦＳ）は、空燃比の過渡的な変動を補正するためのものであり、積分項ＫＩ＊（ＳＵＭΔＶＡ／ＦＳ）は、空燃比の定常的なずれ、例えば基準出力の経年的変化により生じる定常偏差を補正するためのものである。
【００２４】
次いで、制御回路３０は上記算出した補正量ΔＶＡ／Ｆ  に機関の負荷状態に応じて予め設定される負荷補正係数ｅｋｌｄを乗算して燃料噴射量補正項Δｆｉを換算して求める。そして、機関の燃料噴射量ｔａｕを、ｔａｕ＝ｆｉｎ＊ＦＫＧ＋Δｆｉ＋αとして算出する。次に、燃料噴射量ｔａｕの算出方法について以下に説明する。
【００２５】
図３は実施例の空燃比制御ルーチンのフローチャートである。本ルーチンは、ＰＩＤ制御に基づき制御回路３０によりクランク軸一定回転毎（例えば、３６０度毎）に実行される。本ルーチンがスタートすると、ステップ３０１〜３０３では、フラグｉの値が前回ルーチン実行時の値から変更される。ここで、フラグｉの値はこれから燃料噴射量を演算する気筒バンクを表し、ｉ＝０はＡバンクを、ｉ＝１はＢバンクを表す。ステップ３０１〜３０３でフラグｉの値が設定されると、以下の計算では設定されたフラグｉの値に応じてＲＡＭ１０５のアドレスセットが行われ、それぞれのバンクに応じて演算が行われる。すなわち、ｉ＝０の場合にはＡバンク用にＲＡＭ１０５のアドレスセットが行われ、Ａバンク用の空燃比センサ３３Ａを用いて燃料噴射量の演算が行われる（この場合ステップ３０７、３０９、３１０に記した添字“（ｉ）  ”はｉ＝０のとき“Ａ”を意味するものとする）。また、ｉ＝１の場合には同様にＢバンク用にＲＡＭ１０５のアドレスセットが行われ、Ｂバンク用の空燃比センサ３３Ｂを用いて燃料噴射量の演算が行われる（この場合ステップ３０７、３０９、３１０に記した添字“（ｉ）  ”はｉ＝１のとき“Ｂ”を意味する）。これにより、機関１サイクル（クランク軸７２０度回転）の間に、ＡバンクとＢバンクの燃料噴射弁がそれぞれ一回ずつ交互に計算されることになる。
【００２６】
なお、空燃比センサ３３Ａ、３３Ｂの出力による空燃比フィードバック制御の実行条件は、例えば、▲１▼冷却水温が所定値以上であること、▲２▼機関の始動が完了していること、▲３▼始動後増量、暖機増量、パワー増量、触媒過熱防止のためのＯＴＰ増量などの燃料増量が実行中でなく、かつ上記燃料増量が終了してから所定時間が経過したこと、▲４▼燃料カットが実行中でなく、かつ燃料カットが終了してから所定時間が経過したこと、▲５▼機関始動後、空燃比センサ３３Ａ、３３Ｂが活性化したと判断されたこと等であり、これらの条件が全部成立したときにのみ空燃比フィードバック制御が実行される。
【００２７】
ステップ３０４では空燃比センサ出力ＶＡ／Ｆ  の基準出力ＶＡ／ＦＳからの偏差、ΔＶＡ／ＦＳを、
ΔＶＡ／ＦＳ＝ＶＡ／Ｆ  −ＶＡ／ＦＳ
として計算する。なお、Ａ、Ｂ両バンクの上流側Ａ／Ｆセンサ出力ＶＡ／Ｆ（ｉ）は、別途制御回路３０により実行される図示しないルーチンにより、一定時間毎（例えば８ｍｓ毎）にＡＤ変換して読み込まれ、ＲＡＭ１０５に常に最新のデータが格納される。次いでステップ３０５では、上記ΔＶＡ／ＦＳの値を用いて、ΔＶＡ／ＦＳの積分値ＳＵＭΔＶＡ／ＦＳが演算される。
【００２８】
次に、ステップ３０６に進み、前回ルーチン実行時から今回ルーチン実行時のΔＶＡ／ＦＳの変化量、すなわちΔＶＡ／ＦＳの微分値ｄΔＶＡ／ＦＳを、
ｄΔＶＡ／ＦＳ＝ΔＶＡ／ＦＳ（Ｋ）  −ΔＶＡ／ＦＳ（Ｋ−１）  
として算出する。ここで、ΔＶＡ／ＦＳ（Ｋ）  は今回ルーチン実行時の偏差ΔＶＡ／ＦＳを、ΔＶＡ／ＦＳ（Ｋ−１）  は前回ルーチン実行時のΔＶＡ／ＦＳ（Ｋ）  を示す。
【００２９】
また、ステップ３０７では、上記により計算したΔＶＡ／ＦＳ、ＳＵＭΔＶＡ／ＦＳ、ｄΔＶＡ／ＦＳの値を用いて、燃料噴射量の空燃比フィードバック補正量Δｆｉ（ｉ）  を、
0003581762.tif 000003
を計算した後、さらに
Δｆｉ（ｉ）  ＝  ΔＶＡ／Ｆ（ｉ）＊ｅｋｌｄ
を計算して求める。
【００３０】
次に、ステップ３０８では、後述する学習ルーチンへ飛び学習補正係数ＦＫＧを算出する。ステップ３０９では、前記Δｆｉと後述する学習値ＫＧから算出される学習補正係数ＦＫＧとを用いて燃料噴射量ｔａｕ（ｉ）  を、
ｔａｕ（ｉ）    ＝  ｆｉｎ（ｉ）  ＊ＦＫＧ  ＋  Δｆｉ（ｉ）  ＋  α
として演算する。ここで、ｆｉｎ（ｉ）  は基本噴射量、ＦＫＧは学習補正係数、Δｆｉ（ｉ）  は空燃比フィードバック補正量、αはその他の補正量、例えば過渡時の補正量ｆｍｗである。ステップ３１０では、別途実行される燃料噴射ルーチン（図示せず）により、制御回路３０のダウンカウンタ１０８（ｉ）  に時間ｔａｕ（ｉ）  がセットされる。これにより、駆動回路１１０（ｉ）  により燃料噴射弁２７（ｉ）  からｔａｕ（ｉ）  に相当する時間、燃料が噴射される。
【００３１】
図４〜図６は積分値の学習ルーチンのフローチャートである。本ルーチンは、制御回路３０により、クランク軸一定回転毎（例えば、３６０度毎）または所定時間毎に実行される。先ず、図４と図５に示す機関２１の８つの運転領域（ｊ＝０〜７）を判別するルーチンを説明する。ステップ４０１では機関２１の回転数ＮＥ、吸気圧ＰＭ、アイドルスイッチ３９のアイドル状態信号ＸＩＤＬを取り込む。ステップ４０２ではアイドル状態信号ＸＩＤＬがオンか否かを判別してオンのときはアイドル状態とみなしステップ４０３へ進み、オフのときはアイドル状態でないとみなしステップ４０６へ進む。ステップ４０３では機関２１の回転数ＮＥが５００≦ＮＥ＜１０００（ＲＰＭ）であるか否かを判別し、ＹＥＳのときはステップ４０４へ進み、ＮＯのときはステップ４２１へ進む。ステップ４０４では機関２１の吸気圧ＰＭが１７３（ｍｍＨｇ）≦ＰＭであるか否かを判別し、ＹＥＳのときはステップ４０５へ進み、運転領域をｊ＝０と設定してステップ４２２へ進み、ＮＯのときはステップ４２１へ進む。
【００３２】
次いでステップ４０６では機関２１の回転数ＮＥが１０００≦ＮＥ≦３２００（ＲＰＭ）であるか否かを判別し、ＹＥＳのときはステップ４０７へ進み、ＮＯのときはステップ４２１へ進む。ステップ４０７では機関２１の吸気圧ＰＭがＰＭ＜１７３（ｍｍＨｇ）であるか否かを判別し、ＹＥＳのときはステップ４２１へ進み、ＮＯのときはステップ４０８へ進む。次いでステップ４０８では機関２１の吸気圧ＰＭが１７３≦ＰＭ＜２５１（ｍｍＨｇ）であるか否かを判別し、ＹＥＳのときはステップ４０９へ進み、運転領域をｊ＝１と設定してステップ４２２へ進み、ＮＯのときはステップ４１０へ進む。ステップ４１０からステップ４２０では同様に機関２１の吸気圧ＰＭに応じて２５１≦ＰＭ＜３２９のときはｊ＝２、３２９≦ＰＭ＜４０７のときはｊ＝３、４０７≦ＰＭ＜４８５のときはｊ＝４、４８５≦ＰＭ＜５６３のときはｊ＝５、５６３≦ＰＭ＜６４１のときはｊ＝６、６４１≦ＰＭのときはｊ＝７とそれぞれ運転領域を設定する。ステップ４０３、４０４、４０６またはステップ４０７で判別結果がＮＯのときは学習条件不成立とみなし、ステップ４２１へ進み運転領域をｊ＝ＦＦ（１６進数）と設定する。
【００３３】
図６はステップ４０１〜４２１で判別され設定された運転領域毎の学習値ＫＧ〔ｊ〕を学習するルーチンを示すフローチャートである。先ず、ステップ４２２ではｊがＦＦか否かを判別しＹＥＳのときはこのルーチンを終了し、ＮＯのときはステップ４２３へ進む。次にステップ４２３ではフィードバック（Ｆ／Ｂ）補正率ｄｆｉｒｔ〔ｊ〕（％）を、次式から算出する。
ｄｆｉｒｔ〔ｊ〕＝Δｆｉ（ｉ）  ／ｆｉｎ（ｉ）  
ここで、ｊは機関２１の運転領域に対応する０〜７の整数、Δｆｉ（ｉ）  は空燃比フィードバック補正量、ｆｉｎ（ｉ）  は基本噴射量である。したがって、フィードバック（Ｆ／Ｂ）補正率ｄｆｉｒｔ〔ｊ〕（％）は、今回処理周期の基本噴射量とフィードバック補正量との比で表されることが判る。
【００３４】
次いで、ステップ４２４では予めＲＡＭ１０５に格納された機関２１の運転領域毎のフィードバック補正率ｄｆｉｒｔ〔ｊ〕（％）に対する学習更新量Δｋｇ〔ｊ〕（％）のマップから学習更新量Δｋｇ〔ｊ〕（％）を読み取る。ステップ４２４に示すマップから、フィードバック補正率ｄｆｉｒｔ〔ｊ〕はそのスレッショールドＴＨＲを越えると、すなわち不感帯を外れると与えられ、スレッショールドＴＨＲを越えた後はリニアに比例することが示されている。他の実施例として学習更新量Δｋｇ〔ｊ〕をフィードバック補正率ｄｆｉｒｔ〔ｊ〕に対しリニアに比例する代わりに階段状に増減させるようにしてもよい。また、この学習更新量Δｋｇ〔ｊ〕を可変できるようにしておくことにより学習速度を調節することができる。次いで、ステップ４２５では学習値ＫＧ〔ｊ〕を、
ＫＧ〔ｊ〕＝ＫＧ〔ｊ〕＋Δｋｇ〔ｊ〕
として算出して更新する。
【００３５】
次にアイドル状態信号ＸＩＤＬのオンオフ状態を判別してＸＩＤＬ＝１のときはステップ４２７へ進みＫＧＸ＝ＫＧ〔０〕と設定してステップ４３３へ進み、ＸＩＤＬ＝０のときはステップ４２８へ進む。ステップ４２８ではｊ≦１を判別し、ＹＥＳのときはステップ４２９へ進みＫＧＸ＝ＫＧ〔１〕と設定してステップ４３３へ進み、ＮＯのときはステップ４３０へ進む。ステップ４３０では７≦ｊを判別し、ＹＥＳのときはステップ４３１へ進みＫＧＸ＝ＫＧ〔７〕と設定してステップ４３３へ進み、ＮＯのときはステップ４３２へ進む。ステップ４３２では１＜ｊ＜７のＫＧＸをＫＧ〔ｊ〕とＫＧ〔ｊ−１〕の間で補間演算して求める。ステップ４３３では、ＫＧＸを下限ガード値ＫＫＧＭＮと比較し、ＫＫＧＭＮ≦ＫＧＸのときはステップ４３５へ進み、ＫＫＧＭＮ＞ＫＧＸのときはステップ４３４へ進みＫＧＸにＫＫＧＭＮを設定してステップ４３７へ進む。ステップ４３５ではＫＧＸを上限ガード値ＫＫＧＭＸと比較し、ＫＧＸ≦ＫＫＧＭＸのときはステップ４３７へ進み、ＫＸＧ＞ＫＫＧＭＸのときはステップ４３６へ進みＫＧＸにＫＫＧＭＸを設定してステップ４３７へ進む。ステップ４３７では学習値ＫＧＸに１を加算して学習補正係数ＦＫＧを算出してＲＡＭ１０５に記憶し、この学習ルーチンを終了する。
【００３６】
【発明の効果】
以上説明したように本発明によれば、フィードバック補正量と基本噴射量との比として算出したフィードバック補正率をパラメータとするので、フィードバック補正量に対応して学習補正係数が更新され、正確な空燃比の学習制御を行うことができる。
【００３７】
また、本発明によれば、フィードバック補正率をパラメータとしてフィードバック補正率がそのスレッショールドを越えたときに学習補正係数を更新するので、フィードバック補正量を決定する比例ゲイン、積分ゲイン、または負荷に応じてフィードバック補正量を補正する負荷補正係数の値の変更によらず、フィードバック補正率に対する同一スレッショールドを境界にして学習補正係数が更新されるので、機関の排気浄化の遅れや空燃比フィードバック制御のハンチングの発生を防止することができる。
【図面の簡単な説明】
【図１】本発明による空燃比制御装置の基本構成図である。
【図２】本発明による空燃比制御装置をＶ型６気筒機関に適用した場合の実施例を示す全体概略図である。
【図３】本発明による実施例の空燃比制御方法のフローチャートである。
【図４】積分値の学習ルーチンの前段フローチャートである。
【図５】積分値の学習ルーチンの中段フローチャートである。
【図６】積分値の学習ルーチンの後段フローチャートである。
【符号の説明】
１０…内燃機関
１１…空燃比センサ
１３…基本噴射量算出手段
１４…フィードバック（Ｆ／Ｂ）補正量算出手段
１５…燃料噴射量算出手段
１６…フィードバック（Ｆ／Ｂ）補正率算出手段
１７…学習手段
２１…機関本体
２２…吸気通路
２３…エアフローメータ
２７Ａ、２７Ｂ…燃料噴射弁
３０…制御回路、
３２Ａ、３２Ｂ…触媒コンバータ
３３Ａ、３３Ｂ…空燃比センサ
【図１】
0003581762.tif 000004
【図２】
0003581762.tif 000005
【図３】
0003581762.tif 000006
【図４】
0003581762.tif 000007
【図５】
0003581762.tif 000008
【図６】
0003581762.tif 000009