JPH0821280A - エンジンの空燃比学習制御装置 - Google Patents
エンジンの空燃比学習制御装置Info
- Publication number
- JPH0821280A JPH0821280A JP15490094A JP15490094A JPH0821280A JP H0821280 A JPH0821280 A JP H0821280A JP 15490094 A JP15490094 A JP 15490094A JP 15490094 A JP15490094 A JP 15490094A JP H0821280 A JPH0821280 A JP H0821280A
- Authority
- JP
- Japan
- Prior art keywords
- value
- area map
- learning value
- fuel ratio
- air
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 239000000446 fuel Substances 0.000 title claims description 181
- 230000015654 memory Effects 0.000 claims abstract description 23
- 238000002347 injection Methods 0.000 claims description 38
- 239000007924 injection Substances 0.000 claims description 38
- QVGXLLKOCUKJST-UHFFFAOYSA-N atomic oxygen Chemical compound [O] QVGXLLKOCUKJST-UHFFFAOYSA-N 0.000 claims description 9
- 239000001301 oxygen Substances 0.000 claims description 9
- 229910052760 oxygen Inorganic materials 0.000 claims description 9
- 239000007789 gas Substances 0.000 claims description 8
- 230000007423 decrease Effects 0.000 claims description 5
- 230000004044 response Effects 0.000 abstract description 6
- 238000005259 measurement Methods 0.000 abstract 1
- 238000000034 method Methods 0.000 description 12
- 230000007613 environmental effect Effects 0.000 description 10
- 101000821827 Homo sapiens Sodium/nucleoside cotransporter 2 Proteins 0.000 description 6
- 102100021541 Sodium/nucleoside cotransporter 2 Human genes 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 5
- 101000685663 Homo sapiens Sodium/nucleoside cotransporter 1 Proteins 0.000 description 4
- 102100023116 Sodium/nucleoside cotransporter 1 Human genes 0.000 description 4
- 239000007921 spray Substances 0.000 description 4
- 239000007858 starting material Substances 0.000 description 3
- 239000000498 cooling water Substances 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 101100400452 Caenorhabditis elegans map-2 gene Proteins 0.000 description 1
- 101150064138 MAP1 gene Proteins 0.000 description 1
- 239000003054 catalyst Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000010792 warming Methods 0.000 description 1
Landscapes
- Electrical Control Of Air Or Fuel Supplied To Internal-Combustion Engine (AREA)
- Combined Controls Of Internal Combustion Engines (AREA)
Abstract
(57)【要約】
【目的】 エンジン停止中に学習値が要求補正量からず
れることがあっても、要求補正量からのずれを応答よく
補正する。 【構成】 更新手段41はメモリー34に格納される大
領域マップ上での学習値Lα1を、メモリー35に格納
される小領域マップ上での学習値Lα2に優先して更新
し、この大領域マップ上での学習値Lα1の更新回数の
測定値が所定値以上になったとき更新手段44が大領域
マップ上での学習値Lα1を固定した状態で小領域マッ
プ上での学習値Lα2を更新する。判定手段45でエン
ジンの始動からの経過時間が所定値以下であるかどうか
を判定し、この判定結果より始動からの経過時間が所定
値以下のとき必ず更新手段46が大領域マップ上での学
習値Lα1を更新する。
れることがあっても、要求補正量からのずれを応答よく
補正する。 【構成】 更新手段41はメモリー34に格納される大
領域マップ上での学習値Lα1を、メモリー35に格納
される小領域マップ上での学習値Lα2に優先して更新
し、この大領域マップ上での学習値Lα1の更新回数の
測定値が所定値以上になったとき更新手段44が大領域
マップ上での学習値Lα1を固定した状態で小領域マッ
プ上での学習値Lα2を更新する。判定手段45でエン
ジンの始動からの経過時間が所定値以下であるかどうか
を判定し、この判定結果より始動からの経過時間が所定
値以下のとき必ず更新手段46が大領域マップ上での学
習値Lα1を更新する。
Description
【0001】
【産業上の利用分野】この発明はエンジンの空燃比学習
制御装置に関する。
制御装置に関する。
【0002】
【従来の技術】ベース空燃比を定める基本パルス幅Tp
ではすべての運転条件で空燃比を理論空燃比に精度良く
落ち着けることができないので、その理論空燃比からの
ずれを無くすための補正量が要求されるが、この要求補
正量は運転条件により大きく異なる。このため、学習マ
ップ上の全運転領域を複数に区分けし、区分けされた各
領域ごとに要求補正量を与える学習値を独立に格納して
いる。
ではすべての運転条件で空燃比を理論空燃比に精度良く
落ち着けることができないので、その理論空燃比からの
ずれを無くすための補正量が要求されるが、この要求補
正量は運転条件により大きく異なる。このため、学習マ
ップ上の全運転領域を複数に区分けし、区分けされた各
領域ごとに要求補正量を与える学習値を独立に格納して
いる。
【0003】この場合に、マップ上での領域を大きくす
ると、学習値が速く収束するが、その一方で同一の領域
内における要求補正量と学習値との誤差により学習値の
精度はあまりよくない。これに対して、マップ上での領
域を小さくしたときは、同一の領域内において要求補正
量との誤差が小さくなるものの、学習値の更新の機会が
少ない領域では学習が進まないことになり、マップ上で
学習値のむらができる。
ると、学習値が速く収束するが、その一方で同一の領域
内における要求補正量と学習値との誤差により学習値の
精度はあまりよくない。これに対して、マップ上での領
域を小さくしたときは、同一の領域内において要求補正
量との誤差が小さくなるものの、学習値の更新の機会が
少ない領域では学習が進まないことになり、マップ上で
学習値のむらができる。
【0004】そこで、特開平4−321741号公報で
は、運転領域を大きく区分したマップ上の領域(たとえ
ば16の領域)ごとに格納し、更新割合の相対的に大き
な学習値と、前記区分された各領域をさらに細分したマ
ップ上の領域(たとえば16に区分された各領域をさら
に16に細分すれば、領域数は16×16=256にな
る)ごとに格納し、更新割合の相対的に小さな学習値と
の2種類の学習値を用意し、これら2つの学習値(大領
域マップ上での学習値Lα1と小領域マップ上での学習
値Lα2)の和を全体の学習値Lαとして、空燃比フィ
ードバック補正係数αとともに、基本パルス幅Tpを補
正する一方で、学習値の更新については、大領域マップ
上での学習値Lα1のほうを優先させ、その優先させた
ほうの学習値Lα1の更新回数が所定値以上になると、
その優先させたほうの学習値Lα1を保持したまま、そ
の学習値Lα1が属するマップ上での領域と重なる小領
域マップ上で、小領域マップ上での学習値Lα2の更新
に移行させるようにしている。まず大領域マップ上での
学習を進行させることで、精度はほどほどにしても学習
値Lα1を速やかに収束させ、その後は小領域マップ上
での学習値Lα2の更新に移行させることにより、大領
域マップ上における同一領域内での要求補正量とのずれ
を解消させるわけである。
は、運転領域を大きく区分したマップ上の領域(たとえ
ば16の領域)ごとに格納し、更新割合の相対的に大き
な学習値と、前記区分された各領域をさらに細分したマ
ップ上の領域(たとえば16に区分された各領域をさら
に16に細分すれば、領域数は16×16=256にな
る)ごとに格納し、更新割合の相対的に小さな学習値と
の2種類の学習値を用意し、これら2つの学習値(大領
域マップ上での学習値Lα1と小領域マップ上での学習
値Lα2)の和を全体の学習値Lαとして、空燃比フィ
ードバック補正係数αとともに、基本パルス幅Tpを補
正する一方で、学習値の更新については、大領域マップ
上での学習値Lα1のほうを優先させ、その優先させた
ほうの学習値Lα1の更新回数が所定値以上になると、
その優先させたほうの学習値Lα1を保持したまま、そ
の学習値Lα1が属するマップ上での領域と重なる小領
域マップ上で、小領域マップ上での学習値Lα2の更新
に移行させるようにしている。まず大領域マップ上での
学習を進行させることで、精度はほどほどにしても学習
値Lα1を速やかに収束させ、その後は小領域マップ上
での学習値Lα2の更新に移行させることにより、大領
域マップ上における同一領域内での要求補正量とのずれ
を解消させるわけである。
【0005】
【発明が解決しようとする課題】ところで、エンジン停
止時に給油が行われ、燃料性状が変化したときは、保持
されている学習値Lα1,Lα2が実際の燃料性状と合
わなくなり、再始動後に空燃比がリッチ側やリーン側に
ずれる。学習値Lα1,Lα2が実際のエンジン状態と
合わなくなるのは、給油に伴う燃料性状の変化によるだ
けなく、エンジン停止時にエアフローメーターや燃料イ
ンジェクターなど、空燃比に影響するエンジン部品を交
換し、その部品交換によって交換前の部品の性能と異な
ることになる場合や、部品交換をしなくとも大気圧や大
気温度などの環境条件そのものが前回の運転時と異なる
ことになる場合も同様である。
止時に給油が行われ、燃料性状が変化したときは、保持
されている学習値Lα1,Lα2が実際の燃料性状と合
わなくなり、再始動後に空燃比がリッチ側やリーン側に
ずれる。学習値Lα1,Lα2が実際のエンジン状態と
合わなくなるのは、給油に伴う燃料性状の変化によるだ
けなく、エンジン停止時にエアフローメーターや燃料イ
ンジェクターなど、空燃比に影響するエンジン部品を交
換し、その部品交換によって交換前の部品の性能と異な
ることになる場合や、部品交換をしなくとも大気圧や大
気温度などの環境条件そのものが前回の運転時と異なる
ことになる場合も同様である。
【0006】このようにして理論空燃比からはずれた空
燃比は、再始動後に空燃比のフィードバック制御が開始
されると、比例定数と積分定数により定まる一定のスピ
ードで理論空燃比へと収束するのであるが、その後でさ
らに、運転領域を区分したマップ上の領域ごとに学習条
件が成立して学習値が更新され出すと、そのマップ上の
領域ごとにその更新割合に応じてスピードが増し、収束
が早まる。
燃比は、再始動後に空燃比のフィードバック制御が開始
されると、比例定数と積分定数により定まる一定のスピ
ードで理論空燃比へと収束するのであるが、その後でさ
らに、運転領域を区分したマップ上の領域ごとに学習条
件が成立して学習値が更新され出すと、そのマップ上の
領域ごとにその更新割合に応じてスピードが増し、収束
が早まる。
【0007】しかしながら、上記の装置によれば、小領
域マップ上での学習値Lα2の更新に移行した後にエン
ジンが停止され、そのエンジン停止中に学習値と要求補
正量がずれたときでも、その後の運転時に小領域マップ
上での学習値Lα2の更新が継続されるだけで、大領域
マップ上での学習値Lα1の更新が再開されることはな
い。エンジン停止時の給油に伴う燃料性状の変化による
空燃比のずれやエンジン停止前後における環境条件の変
化に伴う空燃比のずれは、すべての運転領域で生じるの
であるから、大領域マップ上での学習値Lα1の更新に
より、一度の更新で広い運転領域をカバーしたほうが運
転領域全体として学習値のむらが生じにくくかつ学習値
の収束も早いのに、小領域マップ上での学習値の更新に
より対処するのでは、一度の更新で狭い運転領域しかカ
バーできないために運転領域全体として学習値のむらが
生じやすく、かつ学習値の収束も遅いのである。
域マップ上での学習値Lα2の更新に移行した後にエン
ジンが停止され、そのエンジン停止中に学習値と要求補
正量がずれたときでも、その後の運転時に小領域マップ
上での学習値Lα2の更新が継続されるだけで、大領域
マップ上での学習値Lα1の更新が再開されることはな
い。エンジン停止時の給油に伴う燃料性状の変化による
空燃比のずれやエンジン停止前後における環境条件の変
化に伴う空燃比のずれは、すべての運転領域で生じるの
であるから、大領域マップ上での学習値Lα1の更新に
より、一度の更新で広い運転領域をカバーしたほうが運
転領域全体として学習値のむらが生じにくくかつ学習値
の収束も早いのに、小領域マップ上での学習値の更新に
より対処するのでは、一度の更新で狭い運転領域しかカ
バーできないために運転領域全体として学習値のむらが
生じやすく、かつ学習値の収束も遅いのである。
【0008】一方、小領域マップ上での学習値Lα2の
更新に移行した後に、空燃比フィードバック補正係数α
と基準値を比較し、両者の差が所定値以上に増大したと
き小領域マップ上での学習値Lα2の更新を中断し、大
領域マップ上での学習値Lα1の更新を再開させること
により、エアクリーナーが使用しているうちに劣化し、
リークによって空燃比が大きくリーン側に外れるなど、
ある程度大きな空燃比のずれが突発的に生ずる場合に対
処するものがある(特開平4−145539号公報参
照)。
更新に移行した後に、空燃比フィードバック補正係数α
と基準値を比較し、両者の差が所定値以上に増大したと
き小領域マップ上での学習値Lα2の更新を中断し、大
領域マップ上での学習値Lα1の更新を再開させること
により、エアクリーナーが使用しているうちに劣化し、
リークによって空燃比が大きくリーン側に外れるなど、
ある程度大きな空燃比のずれが突発的に生ずる場合に対
処するものがある(特開平4−145539号公報参
照)。
【0009】このものでは、給油に伴う燃料性状の変化
による空燃比のずれや環境条件の変化に伴う空燃比のず
れと相違して、これよりかなり大きい場合の空燃比のず
れを想定していると考えられるので、このものにおい
て、給油に伴う燃料性状の変化による空燃比のずれや環
境条件の変化に伴う空燃比のずれが生じたときは、空燃
比フィードバック補正係数αが基準値以上になることが
なく、したがって、小領域マップ上での学習値Lα2の
更新に移行した後に大領域マップ上での学習値Lα1が
更新されることはない。
による空燃比のずれや環境条件の変化に伴う空燃比のず
れと相違して、これよりかなり大きい場合の空燃比のず
れを想定していると考えられるので、このものにおい
て、給油に伴う燃料性状の変化による空燃比のずれや環
境条件の変化に伴う空燃比のずれが生じたときは、空燃
比フィードバック補正係数αが基準値以上になることが
なく、したがって、小領域マップ上での学習値Lα2の
更新に移行した後に大領域マップ上での学習値Lα1が
更新されることはない。
【0010】そこでこの発明は、大領域マップ上での学
習値の更新回数が所定値以上になると小領域マップ上で
の学習値の更新に移行させる一方で、始動時には必ず所
定期間のあいだ大領域マップ上での学習値の更新を再開
させることにより、エンジン停止中に学習値が要求補正
量からずれることがあっても、要求補正量からのずれを
応答よく補正することを目的とする。
習値の更新回数が所定値以上になると小領域マップ上で
の学習値の更新に移行させる一方で、始動時には必ず所
定期間のあいだ大領域マップ上での学習値の更新を再開
させることにより、エンジン停止中に学習値が要求補正
量からずれることがあっても、要求補正量からのずれを
応答よく補正することを目的とする。
【0011】
【課題を解決するための手段】第1の発明は、図12に
示すように、運転条件に応じた基本噴射量Tpを算出す
る手段31と、排気中の酸素濃度を検出するセンサー3
2と、このセンサー出力にもとづいて空燃比が理論空燃
比の近くに制御されるように空燃比フィードバック補正
量αを算出する手段33と、運転領域を大きく区分した
マップ上の領域ごとに学習値Lα1を格納するメモリー
34と、運転領域を小さく区分したマップ上の領域ごと
に学習値Lα2を格納するメモリー35と、これらのメ
モリー34,35の値がエンジンの停止後も消失しない
ように保持する手段36と、現在の運転条件が前記大領
域マップ上におけるいずれの領域におよび前記小領域マ
ップ上におけるいずれの領域に属するかを判定する手段
37と、この判定結果より現在の運転条件の属する領域
に格納されている学習値を前記大領域マップおよび小領
域マップからそれぞれ読み出す手段38と、この読み出
された2つの学習値Lα1、Lα2と前記空燃比フィー
ドバック補正量αで前記基本噴射量Tpを補正して燃料
噴射量を算出する手段39と、この噴射量の燃料を吸気
管に供給する手段40と、前記大領域マップ上での学習
値Lα1を前記小領域マップ上での学習値Lα2に優先
して前記空燃比フィードバック補正量αにもとづいて更
新する手段41と、この大領域マップ上での学習値Lα
1の更新回数を計測する手段42と、この計測値が所定
値以上になったかどうかを判定する手段43と、この判
定結果より計測値が所定値以上になったとき前記大領域
マップ上での学習値Lα1を固定した状態で前記小領域
マップ上での学習値Lα2を前記空燃比フィードバック
補正量αにもとづいて更新する手段44と、エンジンの
始動からの経過時間が所定値以下であるかどうかを判定
する手段45と、この判定結果より始動からの経過時間
が所定値以下のとき必ず前記大領域マップ上での学習値
Lα1を前記空燃比フィードバック補正量αにもとづい
て更新する手段46とを設けた。
示すように、運転条件に応じた基本噴射量Tpを算出す
る手段31と、排気中の酸素濃度を検出するセンサー3
2と、このセンサー出力にもとづいて空燃比が理論空燃
比の近くに制御されるように空燃比フィードバック補正
量αを算出する手段33と、運転領域を大きく区分した
マップ上の領域ごとに学習値Lα1を格納するメモリー
34と、運転領域を小さく区分したマップ上の領域ごと
に学習値Lα2を格納するメモリー35と、これらのメ
モリー34,35の値がエンジンの停止後も消失しない
ように保持する手段36と、現在の運転条件が前記大領
域マップ上におけるいずれの領域におよび前記小領域マ
ップ上におけるいずれの領域に属するかを判定する手段
37と、この判定結果より現在の運転条件の属する領域
に格納されている学習値を前記大領域マップおよび小領
域マップからそれぞれ読み出す手段38と、この読み出
された2つの学習値Lα1、Lα2と前記空燃比フィー
ドバック補正量αで前記基本噴射量Tpを補正して燃料
噴射量を算出する手段39と、この噴射量の燃料を吸気
管に供給する手段40と、前記大領域マップ上での学習
値Lα1を前記小領域マップ上での学習値Lα2に優先
して前記空燃比フィードバック補正量αにもとづいて更
新する手段41と、この大領域マップ上での学習値Lα
1の更新回数を計測する手段42と、この計測値が所定
値以上になったかどうかを判定する手段43と、この判
定結果より計測値が所定値以上になったとき前記大領域
マップ上での学習値Lα1を固定した状態で前記小領域
マップ上での学習値Lα2を前記空燃比フィードバック
補正量αにもとづいて更新する手段44と、エンジンの
始動からの経過時間が所定値以下であるかどうかを判定
する手段45と、この判定結果より始動からの経過時間
が所定値以下のとき必ず前記大領域マップ上での学習値
Lα1を前記空燃比フィードバック補正量αにもとづい
て更新する手段46とを設けた。
【0012】第2の発明は、図13に示すように、運転
条件に応じた基本噴射量Tpを算出する手段31と、排
気中の酸素濃度を検出するセンサー32と、このセンサ
ー出力にもとづいて空燃比が理論空燃比の近くに制御さ
れるように空燃比フィードバック補正量αを算出する手
段33と、運転領域を大きく区分したマップ上の領域ご
とに学習値Lα1を格納するメモリー34と、運転領域
を小さく区分したマップ上の領域ごとに学習値Lα2を
格納するメモリー35と、これらのメモリー34,35
の値がエンジンの停止後も消失しないように保持する手
段36と、現在の運転条件が前記大領域マップ上におけ
るいずれの領域におよび前記小領域マップ上におけるい
ずれの領域に属するかを判定する手段37と、この判定
結果より現在の運転条件の属する領域に格納されている
学習値を前記大領域マップおよび小領域マップからそれ
ぞれ読み出す手段38と、この読み出された2つの学習
値Lα1、Lα2と前記空燃比フィードバック補正量α
で前記基本噴射量Tpを補正して燃料噴射量を算出する
手段39と、この噴射量の燃料を吸気管に供給する手段
40と、前記大領域マップ上での学習値Lα1を前記小
領域マップ上での学習値Lα2に優先して前記空燃比フ
ィードバック補正量αにもとづいて更新する手段41
と、この大領域マップ上での学習値Lα1の更新回数を
計測する手段42と、この計測値が所定値以上になった
かどうかを判定する手段43と、この判定結果より計測
値が所定値以上になったとき前記大領域マップ上での学
習値Lα1を固定した状態で前記小領域マップ上での学
習値Lα2を前記空燃比フィードバック補正量αにもと
づいて更新する手段44と、エンジンの始動からの総サ
イクル数またはエンジン回転数の積算値が所定値以下で
あるかどうかを判定する手段51と、この判定結果より
始動からの総サイクル数(4気筒エンジンでは720°
区間で4サイクル)またはエンジン回転数の積算値が所
定値以下のとき必ず前記大領域マップ上での学習値Lα
1を前記空燃比フィードバック補正量αにもとづいて更
新する手段52とを設けた。
条件に応じた基本噴射量Tpを算出する手段31と、排
気中の酸素濃度を検出するセンサー32と、このセンサ
ー出力にもとづいて空燃比が理論空燃比の近くに制御さ
れるように空燃比フィードバック補正量αを算出する手
段33と、運転領域を大きく区分したマップ上の領域ご
とに学習値Lα1を格納するメモリー34と、運転領域
を小さく区分したマップ上の領域ごとに学習値Lα2を
格納するメモリー35と、これらのメモリー34,35
の値がエンジンの停止後も消失しないように保持する手
段36と、現在の運転条件が前記大領域マップ上におけ
るいずれの領域におよび前記小領域マップ上におけるい
ずれの領域に属するかを判定する手段37と、この判定
結果より現在の運転条件の属する領域に格納されている
学習値を前記大領域マップおよび小領域マップからそれ
ぞれ読み出す手段38と、この読み出された2つの学習
値Lα1、Lα2と前記空燃比フィードバック補正量α
で前記基本噴射量Tpを補正して燃料噴射量を算出する
手段39と、この噴射量の燃料を吸気管に供給する手段
40と、前記大領域マップ上での学習値Lα1を前記小
領域マップ上での学習値Lα2に優先して前記空燃比フ
ィードバック補正量αにもとづいて更新する手段41
と、この大領域マップ上での学習値Lα1の更新回数を
計測する手段42と、この計測値が所定値以上になった
かどうかを判定する手段43と、この判定結果より計測
値が所定値以上になったとき前記大領域マップ上での学
習値Lα1を固定した状態で前記小領域マップ上での学
習値Lα2を前記空燃比フィードバック補正量αにもと
づいて更新する手段44と、エンジンの始動からの総サ
イクル数またはエンジン回転数の積算値が所定値以下で
あるかどうかを判定する手段51と、この判定結果より
始動からの総サイクル数(4気筒エンジンでは720°
区間で4サイクル)またはエンジン回転数の積算値が所
定値以下のとき必ず前記大領域マップ上での学習値Lα
1を前記空燃比フィードバック補正量αにもとづいて更
新する手段52とを設けた。
【0013】第3の発明は、第1の発明または第2の発
明において、始動からの経過時間または始動からの総サ
イクル数もしくは回転数の積算値と比較する前記所定値
がエンジン温度(始動時の水温、始動時の油温、始動時
の吸気管の壁温、始動時の燃料温度)に応じ、エンジン
温度が低いほど大きくなる値である。
明において、始動からの経過時間または始動からの総サ
イクル数もしくは回転数の積算値と比較する前記所定値
がエンジン温度(始動時の水温、始動時の油温、始動時
の吸気管の壁温、始動時の燃料温度)に応じ、エンジン
温度が低いほど大きくなる値である。
【0014】第4の発明は、第1の発明から第3の発明
までのいずれか一つにおいて、小領域マップ上での学習
値Lα2の更新に移行した後で、小領域マップ上での少
なくとも2つ領域での学習値Lα2の更新代が一律であ
り、かつ小領域マップ上におけるその少なくとも2つの
領域が大領域マップ上でみて同一の領域にないとき、大
領域マップ上での学習値Lα1の更新に所定期間移行さ
せる。
までのいずれか一つにおいて、小領域マップ上での学習
値Lα2の更新に移行した後で、小領域マップ上での少
なくとも2つ領域での学習値Lα2の更新代が一律であ
り、かつ小領域マップ上におけるその少なくとも2つの
領域が大領域マップ上でみて同一の領域にないとき、大
領域マップ上での学習値Lα1の更新に所定期間移行さ
せる。
【0015】第5の発明は、第1の発明から第3の発明
までのいずれか一つにおいて、小領域マップ上での学習
値Lα2の更新に移行した後で、小領域マップ上での少
なくとも2つの領域の各学習値とその各領域が含まれる
大領域マップ上での領域の各学習値との和が一定の割合
で更新され、かつ小領域マップ上におけるその少なくと
も2つの領域が大領域マップ上でみて同一の領域にない
とき、大領域マップ上での学習値Lα1の更新に所定期
間移行させる。
までのいずれか一つにおいて、小領域マップ上での学習
値Lα2の更新に移行した後で、小領域マップ上での少
なくとも2つの領域の各学習値とその各領域が含まれる
大領域マップ上での領域の各学習値との和が一定の割合
で更新され、かつ小領域マップ上におけるその少なくと
も2つの領域が大領域マップ上でみて同一の領域にない
とき、大領域マップ上での学習値Lα1の更新に所定期
間移行させる。
【0016】
【作用】第1の発明では、前回運転時の大領域マップ上
での学習値Lα1の更新状況に関係なく、始動時には必
ず所定期間のあいだ大領域マップ上での学習値Lα1の
更新が再開されるので、小領域マップ上での学習値の更
新に移行した後でエンジンを停止して給油し、その給油
によりエンジン停止前と燃料性状が変化したり、エンジ
ンの停止の前後で大気圧、大気温度などの環境条件が変
化することがあっても、これらの変化に伴う要求補正量
からのずれを応答よく補正することができ、またマップ
上における領域間での学習値のむらを生じさせることも
ない。
での学習値Lα1の更新状況に関係なく、始動時には必
ず所定期間のあいだ大領域マップ上での学習値Lα1の
更新が再開されるので、小領域マップ上での学習値の更
新に移行した後でエンジンを停止して給油し、その給油
によりエンジン停止前と燃料性状が変化したり、エンジ
ンの停止の前後で大気圧、大気温度などの環境条件が変
化することがあっても、これらの変化に伴う要求補正量
からのずれを応答よく補正することができ、またマップ
上における領域間での学習値のむらを生じさせることも
ない。
【0017】始動からの総サイクル数またはエンジン回
転数の積算値に大領域マップ上での学習値Lα1の更新
回数がほぼ比例することから、第2の発明では、始動か
ら実際に学習値Lα1を更新した回数を推測できること
になり、大領域マップ上での学習値Lα1の更新を確実
に行わせた後で、従来の学習値の更新に戻すことができ
る。
転数の積算値に大領域マップ上での学習値Lα1の更新
回数がほぼ比例することから、第2の発明では、始動か
ら実際に学習値Lα1を更新した回数を推測できること
になり、大領域マップ上での学習値Lα1の更新を確実
に行わせた後で、従来の学習値の更新に戻すことができ
る。
【0018】エンジン温度が低いと学習値が安定するの
に時間がかかるのに合わせて、第3の発明では、始動か
らの経過時間または始動からの総サイクル数もしくは回
転数の積算値と比較する所定値が、エンジン温度が低い
ほど大きくなる値になるので、エンジン温度が相違して
も適切な所定値を設定でき、学習値の精度が向上する。
に時間がかかるのに合わせて、第3の発明では、始動か
らの経過時間または始動からの総サイクル数もしくは回
転数の積算値と比較する所定値が、エンジン温度が低い
ほど大きくなる値になるので、エンジン温度が相違して
も適切な所定値を設定でき、学習値の精度が向上する。
【0019】第4の発明では、小領域マップ上での学習
値Lα2の更新に移行後の運転中に、エンジンを停止し
ないまま給油し、燃料性状が変化した場合のほか、運転
中の燃料インジェクターの突然の目詰まりによる流量の
低下や噴霧状態の変化が起こった場合など、突発的な要
求補正量の変化が運転中に起こったときでも、すみやか
に空燃比を理論空燃比へと戻すことができる。
値Lα2の更新に移行後の運転中に、エンジンを停止し
ないまま給油し、燃料性状が変化した場合のほか、運転
中の燃料インジェクターの突然の目詰まりによる流量の
低下や噴霧状態の変化が起こった場合など、突発的な要
求補正量の変化が運転中に起こったときでも、すみやか
に空燃比を理論空燃比へと戻すことができる。
【0020】第5の発明では、小領域マップ上での少な
くとも2つの領域として低速低負荷領域と高速高負荷域
が選択されるときでも、小領域マップ上での学習値Lα
2の更新に移行した後での運転中における突発的な要求
補正量の変化に精度良く対応できる。
くとも2つの領域として低速低負荷領域と高速高負荷域
が選択されるときでも、小領域マップ上での学習値Lα
2の更新に移行した後での運転中における突発的な要求
補正量の変化に精度良く対応できる。
【0021】
【実施例】図1において、エンジンにはエアクリーナー
2から吸気ダクト3、スロットルチャンバー4および吸
気マニホールド5を介して空気が吸入される。
2から吸気ダクト3、スロットルチャンバー4および吸
気マニホールド5を介して空気が吸入される。
【0022】吸気マニホールド5の各ブランチ部には、
ソレノイドへの通電で開弁し、通電の停止で閉弁する電
磁式の開閉弁からなる燃料インジェクター6が設けら
れ、後述するECU11からのパルス信号がハイレベル
にあるあいだだけ、プレッシャーレギュレーター7によ
り吸気管との差圧が一定となるように調整された燃料
を、エンジンの回転に同期して間欠的に噴射供給する。
ソレノイドへの通電で開弁し、通電の停止で閉弁する電
磁式の開閉弁からなる燃料インジェクター6が設けら
れ、後述するECU11からのパルス信号がハイレベル
にあるあいだだけ、プレッシャーレギュレーター7によ
り吸気管との差圧が一定となるように調整された燃料
を、エンジンの回転に同期して間欠的に噴射供給する。
【0023】この噴射燃料は空気とともに混合気を形成
してシリンダー内で火花点火により着火燃焼したあと、
排気マニホールド8から三元触媒9を介して排出され
る。
してシリンダー内で火花点火により着火燃焼したあと、
排気マニホールド8から三元触媒9を介して排出され
る。
【0024】12はエアクリーナー2のすぐ下流に設け
られる熱線式のエアフローメーターで、吸入空気流量Q
に応じた信号を出力する。13はクランク角度センサー
でRef信号(4気筒の場合、クランク角度で180°
ごとの信号のこと)と、Pos信号(クランク角度で1
°または2°ごとの単位信号のこと)を出力する。14
はエンジンのウォータージャケットの冷却水温Twを検
出する水温センサーである。
られる熱線式のエアフローメーターで、吸入空気流量Q
に応じた信号を出力する。13はクランク角度センサー
でRef信号(4気筒の場合、クランク角度で180°
ごとの信号のこと)と、Pos信号(クランク角度で1
°または2°ごとの単位信号のこと)を出力する。14
はエンジンのウォータージャケットの冷却水温Twを検
出する水温センサーである。
【0025】これらセンサーからの信号が、排気中の酸
素濃度に応じた信号を出力するO2センサー15やイグ
ニッションスイッチ16からの信号とともに、主にマイ
クロコンピューターからなるECU(エレクトロニック
コントロールユニットの略である)11に入力され、E
CU11では、空燃比のフィードバック制御および空燃
比の学習制御を実行しつつエンジンへの燃料供給を制御
する。
素濃度に応じた信号を出力するO2センサー15やイグ
ニッションスイッチ16からの信号とともに、主にマイ
クロコンピューターからなるECU(エレクトロニック
コントロールユニットの略である)11に入力され、E
CU11では、空燃比のフィードバック制御および空燃
比の学習制御を実行しつつエンジンへの燃料供給を制御
する。
【0026】ECU11での空燃比制御は次の通りであ
る。
る。
【0027】燃料インジェクター6はRef信号に同期
して駆動される。たとえばシーケンシャル噴射方式では
エンジン2回転ごとに1回、各気筒ごとに Ti=2×Te+Ts …(1) ただし、Te:有効パルス幅 Ts:バッテリー電圧に応じた無効パルス幅 の式で与えられる噴射パルス幅Tiでインジェクター6
が作動される。Tsはインジェクターの作動に伴う実際
の噴射量との誤差を補償するための補正値である。な
お、同時噴射方式のときはエンジン1回転ごとに1回、
全気筒同時に Ti=Te+Ts …(2) の式で与えられる噴射パルス幅Tiでインジェクター6
が作動される。
して駆動される。たとえばシーケンシャル噴射方式では
エンジン2回転ごとに1回、各気筒ごとに Ti=2×Te+Ts …(1) ただし、Te:有効パルス幅 Ts:バッテリー電圧に応じた無効パルス幅 の式で与えられる噴射パルス幅Tiでインジェクター6
が作動される。Tsはインジェクターの作動に伴う実際
の噴射量との誤差を補償するための補正値である。な
お、同時噴射方式のときはエンジン1回転ごとに1回、
全気筒同時に Ti=Te+Ts …(2) の式で与えられる噴射パルス幅Tiでインジェクター6
が作動される。
【0028】図2は上記(1)式の有効パルス幅Teを
算出するための流れ図で、一定周期(たとえば10ms
ec)で実行する。
算出するための流れ図で、一定周期(たとえば10ms
ec)で実行する。
【0029】ステップ1ではエアフローメーター12で
検出した空気流量Qとクランク角度センサ13で検出し
たエンジン回転数Nから基本パルス幅Tpを、 Tp=(Q/N)×K …(3) ただし、K:定数 の式で計算する。このTpで決まる空燃比がベース空燃
比といわれている。
検出した空気流量Qとクランク角度センサ13で検出し
たエンジン回転数Nから基本パルス幅Tpを、 Tp=(Q/N)×K …(3) ただし、K:定数 の式で計算する。このTpで決まる空燃比がベース空燃
比といわれている。
【0030】ステップ2では基本パルス幅Tpを用いて
有効パルス幅Teを、 Te=Tp×Co×{(α+Lα−100)/100} …(4) ただし、Co:各種補正係数 α:空燃比フィードバック補正係数〔%〕 Lα:空燃比学習値〔%〕 の式で計算する。
有効パルス幅Teを、 Te=Tp×Co×{(α+Lα−100)/100} …(4) ただし、Co:各種補正係数 α:空燃比フィードバック補正係数〔%〕 Lα:空燃比学習値〔%〕 の式で計算する。
【0031】(4)式の各種補正係数Coはいろいろな
条件下で円滑な運転を確保するための値である。たとえ
ば始動時、暖機時、高負荷時などで水温センサー15な
どの各センサーからの信号にもとづいて基本パルス幅T
pを補正する。このとき、後述する空燃比フィードバッ
ク補正係数αの値は100%にクランプされている(図
4のステップ21,22)。
条件下で円滑な運転を確保するための値である。たとえ
ば始動時、暖機時、高負荷時などで水温センサー15な
どの各センサーからの信号にもとづいて基本パルス幅T
pを補正する。このとき、後述する空燃比フィードバッ
ク補正係数αの値は100%にクランプされている(図
4のステップ21,22)。
【0032】図3は燃料噴射パルス幅Tiの算出と噴射
実行の流れ図で、Ref信号に同期して実行する。
実行の流れ図で、Ref信号に同期して実行する。
【0033】シーケンシャル噴射のときはステップ11
で上記(1)式の燃料噴射パルス幅Tiを計算し、これ
をステップ12でCPU(マイクロコンピューターの構
成要素の一つ)の出力レジスターに転送する。4気筒エ
ンジンにおける点火順序を#1−#3−#4−#2とし
て、今回のRef信号の入力で、たとえば1番気筒にT
iに対応する燃料が供給されたとすれば、次回(つまり
1回後)のRef信号の入力で3番気筒に、2回後のR
ef信号の入力で4番気筒に、3回後のRef信号の入
力で2番気筒にTiの燃料が供給されるわけである。
で上記(1)式の燃料噴射パルス幅Tiを計算し、これ
をステップ12でCPU(マイクロコンピューターの構
成要素の一つ)の出力レジスターに転送する。4気筒エ
ンジンにおける点火順序を#1−#3−#4−#2とし
て、今回のRef信号の入力で、たとえば1番気筒にT
iに対応する燃料が供給されたとすれば、次回(つまり
1回後)のRef信号の入力で3番気筒に、2回後のR
ef信号の入力で4番気筒に、3回後のRef信号の入
力で2番気筒にTiの燃料が供給されるわけである。
【0034】(4)式の空燃比フィードバック補正係数
αはO2センサー15の出力にもとづく比例積分制御
(フィードバック制御の一種)によってRef信号に同
期して求められる値で、αの値が100%を越えると
(4)式より空燃比がリッチ側へ、100%を下回ると
空燃比がリーン側へと戻される。
αはO2センサー15の出力にもとづく比例積分制御
(フィードバック制御の一種)によってRef信号に同
期して求められる値で、αの値が100%を越えると
(4)式より空燃比がリッチ側へ、100%を下回ると
空燃比がリーン側へと戻される。
【0035】図4は空燃比フィードック補正係数αを算
出するための流れ図で、Ref信号に同期して実行す
る。
出するための流れ図で、Ref信号に同期して実行す
る。
【0036】ステップ21でフィードバック条件(図で
はF/B条件で略記)が成立したときは、ステップ23
でO2センサー出力(図ではO2/Sで略記)を読み込
む。このO2センサー出力は、理論空燃比よりリッチ側
でハイレベル(1V程度)、リーン側でローレベル(ほ
ぼ0V)となるので、ほぼ0.5V当たりに設けたスラ
イスレベルを越えていると、実際の空燃比がリッチ側
に、またスライスレベルより小さいときリーン側にある
ことになる。
はF/B条件で略記)が成立したときは、ステップ23
でO2センサー出力(図ではO2/Sで略記)を読み込
む。このO2センサー出力は、理論空燃比よりリッチ側
でハイレベル(1V程度)、リーン側でローレベル(ほ
ぼ0V)となるので、ほぼ0.5V当たりに設けたスラ
イスレベルを越えていると、実際の空燃比がリッチ側
に、またスライスレベルより小さいときリーン側にある
ことになる。
【0037】ステップ24では、O2センサー出力とス
ライスレベル(ほぼ0.5V)とを比較し、O2センサ
ー出力がスライスレベルよりも大きいときは空燃比が理
論空燃比よりもリッチ側にあると判断し、ステップ25
に進む。
ライスレベル(ほぼ0.5V)とを比較し、O2センサ
ー出力がスライスレベルよりも大きいときは空燃比が理
論空燃比よりもリッチ側にあると判断し、ステップ25
に進む。
【0038】ステップ25ではリッチ側にあるとの判断
が初回であるかどうかみて、初回であればステップ26
に進み、変数aに変数(空燃比フィードバック補正係数
を表す)αに入っていた値を移す。初めてリッチ側にあ
ると判断されるタイミングで変数αに入っている値は、
そのタイミングを起点として過去の空燃比フィードバッ
ク補正係数(α)の半周期における最大値であり、これ
を変数aにサンプリングするわけである。
が初回であるかどうかみて、初回であればステップ26
に進み、変数aに変数(空燃比フィードバック補正係数
を表す)αに入っていた値を移す。初めてリッチ側にあ
ると判断されるタイミングで変数αに入っている値は、
そのタイミングを起点として過去の空燃比フィードバッ
ク補正係数(α)の半周期における最大値であり、これ
を変数aにサンプリングするわけである。
【0039】ステップ27では、 α←α−P …(5) ただし、P:比例定数 の式で変数αの値を更新し、ステップ28でフラグFP
を“1”にセットする。ステップ25で初回と判断され
たということは、今回初めてリッチ側に反転したことで
あるので、(5)式により比例分であるPを与えている
わけである。また、FP=1によって反転時であること
を示している。このフラグFPが必要となるわけは、後
述する空燃比学習値の更新のタイミングを反転時にして
いるからである。
を“1”にセットする。ステップ25で初回と判断され
たということは、今回初めてリッチ側に反転したことで
あるので、(5)式により比例分であるPを与えている
わけである。また、FP=1によって反転時であること
を示している。このフラグFPが必要となるわけは、後
述する空燃比学習値の更新のタイミングを反転時にして
いるからである。
【0040】また、ステップ24でO2センサー出力が
スライスレベルよりも小さくてステップ32に進んだと
きも、リーン側にあるとの判断が初回であるかどうかみ
て、初回であるときは反転時であると判断し、ステップ
33で変数bに変数αの値を移す。初めてリーンと判断
されるタイミングで変数αに入っている値はそのタイミ
ングを起点として過去のαの半周期における最小値であ
り、これを変数bにサンプリングするわけである。
スライスレベルよりも小さくてステップ32に進んだと
きも、リーン側にあるとの判断が初回であるかどうかみ
て、初回であるときは反転時であると判断し、ステップ
33で変数bに変数αの値を移す。初めてリーンと判断
されるタイミングで変数αに入っている値はそのタイミ
ングを起点として過去のαの半周期における最小値であ
り、これを変数bにサンプリングするわけである。
【0041】ステップ34と35では、ステップ27,
28と同様にして α←α+P …(6) の式で変数αの値を更新し、フラグFPを“1”にセッ
トする。
28と同様にして α←α+P …(6) の式で変数αの値を更新し、フラグFPを“1”にセッ
トする。
【0042】ステップ29では、カウント値cntを0
と比較し、cnt≠0のときは、ステップ30でカウン
ト値cntを1だけデクリメントして、図4のルーチン
を終了する。また、cnt=0のときは、そのまま図4
のルーチンを終了する。
と比較し、cnt≠0のときは、ステップ30でカウン
ト値cntを1だけデクリメントして、図4のルーチン
を終了する。また、cnt=0のときは、そのまま図4
のルーチンを終了する。
【0043】カウント値cntは後述するように、16
領域マップ上でみて前回と同じ領域にないとき所定値
(たとえば4)にセットされる値で、このセット直後で
あればステップ29,30での操作により、反転時ごと
に1ずつ減少してやがて0となる。カウント値cntが
0でないことで、16領域マップ上の1つの領域に安定
して止まっていないことを判断しているわけで、cnt
=0であることを16領域マップ上での学習条件として
いるのである。
領域マップ上でみて前回と同じ領域にないとき所定値
(たとえば4)にセットされる値で、このセット直後で
あればステップ29,30での操作により、反転時ごと
に1ずつ減少してやがて0となる。カウント値cntが
0でないことで、16領域マップ上の1つの領域に安定
して止まっていないことを判断しているわけで、cnt
=0であることを16領域マップ上での学習条件として
いるのである。
【0044】一方、ステップ25でリッチ側にあると判
断されるのが初回でないときは、ステップ31に進み、 α←α−I×Ti …(7) ただし、I:積分定数 Ti:燃料噴射パルス幅 の式で変数αの値を更新して、図4のルーチンを終了す
る。同様にしてステップ32でリーン側にあると判断さ
れるのが初回でないときも、ステップ36において、 α←α+I×Ti …(8) の式で変数αの値を更新して、図4のルーチンを終了す
る。
断されるのが初回でないときは、ステップ31に進み、 α←α−I×Ti …(7) ただし、I:積分定数 Ti:燃料噴射パルス幅 の式で変数αの値を更新して、図4のルーチンを終了す
る。同様にしてステップ32でリーン側にあると判断さ
れるのが初回でないときも、ステップ36において、 α←α+I×Ti …(8) の式で変数αの値を更新して、図4のルーチンを終了す
る。
【0045】なお、(7)、(8)式においてTiは基
本的にはなくてもよい。
本的にはなくてもよい。
【0046】このようにして、上記の(5)式、(7)
式、また(6)式、(8)式による変数αについての更
新の一連の繰り返しによって、実際の空燃比がほぼ1〜
2Hzの周期で変化することになり、平均の空燃比がウ
インドウ(理論空燃比を中心とする所定の空燃比範囲)
内に維持されるわけである。
式、また(6)式、(8)式による変数αについての更
新の一連の繰り返しによって、実際の空燃比がほぼ1〜
2Hzの周期で変化することになり、平均の空燃比がウ
インドウ(理論空燃比を中心とする所定の空燃比範囲)
内に維持されるわけである。
【0047】学習値のマップは2種類のマップからな
り、その一つは図5の上段に示すように、回転数Nと基
本パルス幅Tpとをパラメータとして全運転領域を16
のほぼ等分な領域に区分したマップであって、各領域ご
とに更新割合の相対的に大きな学習値Lα1が、書き換
え可能に記憶されるマップ(以下16領域マップとい
う)、他の一つは、図5の下段に示したように16領域
マップの中の各領域を、さらに16の等分な領域に区分
し(したがって区分の総数は16×16=256)たマ
ップであって、その各領域ごとに更新割合の相対的に小
さな学習値Lα2が、書き換え可能に記憶されるマップ
(以下256領域マップ)である。
り、その一つは図5の上段に示すように、回転数Nと基
本パルス幅Tpとをパラメータとして全運転領域を16
のほぼ等分な領域に区分したマップであって、各領域ご
とに更新割合の相対的に大きな学習値Lα1が、書き換
え可能に記憶されるマップ(以下16領域マップとい
う)、他の一つは、図5の下段に示したように16領域
マップの中の各領域を、さらに16の等分な領域に区分
し(したがって区分の総数は16×16=256)たマ
ップであって、その各領域ごとに更新割合の相対的に小
さな学習値Lα2が、書き換え可能に記憶されるマップ
(以下256領域マップ)である。
【0048】マップ値はさらに、エンジン停止後もその
値が消失しないようにバッテリーバックアップなどによ
り保持している。
値が消失しないようにバッテリーバックアップなどによ
り保持している。
【0049】なお、図5において、16領域マップ上に
おける領域を〔B,A〕、256領域マップ上における
領域を〔K,I〕として区別する。また、領域〔B,
A〕に入っている学習値をLα1〔B,A〕で、領域
〔K,I〕に入っている学習値をLα2〔K,I〕で表
す。Lα1、Lα2とも初期値はすべての領域において
100[%]である。
おける領域を〔B,A〕、256領域マップ上における
領域を〔K,I〕として区別する。また、領域〔B,
A〕に入っている学習値をLα1〔B,A〕で、領域
〔K,I〕に入っている学習値をLα2〔K,I〕で表
す。Lα1、Lα2とも初期値はすべての領域において
100[%]である。
【0050】ここで、16領域マップ上における領域
〔B,A〕は、回転数帯N〔B〕と基本パルス幅帯Tp
〔A〕から定められる。BとAは0から3までの整数で
あり、回転数帯N
〔B,A〕は、回転数帯N〔B〕と基本パルス幅帯Tp
〔A〕から定められる。BとAは0から3までの整数で
あり、回転数帯N
〔0〕、N〔1〕、N〔2〕、N
〔3〕は次の各回転数領域を、またTp
〔3〕は次の各回転数領域を、またTp
〔0〕、Tp
〔1〕、Tp〔2〕、Tp〔3〕は次の各基本パルス幅
領域を表す。
〔1〕、Tp〔2〕、Tp〔3〕は次の各基本パルス幅
領域を表す。
【0051】 N
〔0〕:N0≦N<N1 …(9) N〔1〕:N1≦N<N2 …(10) N〔2〕:N2≦N<N3 …(11) N〔3〕:N3≦N<N4 …(12) Tp
〔0〕:Tp0≦Tp<Tp1 …(13) Tp〔1〕:Tp1≦Tp<Tp2 …(14) Tp〔2〕:Tp2≦Tp<Tp3 …(16) Tp〔3〕:Tp3≦Tp<Tp4 …(17) ただし、N0、N1、N2、N3、N4とTp0、Tp
1、Tp2、Tp3、Tp4は境界値(一定値)で、N
0<N1<N2<N3<N4、Tp0<Tp1<Tp2
<Tp3<Tp4である。
1、Tp2、Tp3、Tp4は境界値(一定値)で、N
0<N1<N2<N3<N4、Tp0<Tp1<Tp2
<Tp3<Tp4である。
【0052】たとえば現在の回転数Nと基本パルス幅T
pについてN1≦N<N2、Tp2≦Tp<Tp3であ
れば、現在の回転数NがN〔1〕の回転数幅に、現在の
基本パルス幅TpがTp〔2〕の基本パルス幅帯に含ま
れることになり、N〔1〕とTp〔2〕から定まる16
領域マップ上における領域は、〔1,2〕となるわけで
ある。
pについてN1≦N<N2、Tp2≦Tp<Tp3であ
れば、現在の回転数NがN〔1〕の回転数幅に、現在の
基本パルス幅TpがTp〔2〕の基本パルス幅帯に含ま
れることになり、N〔1〕とTp〔2〕から定まる16
領域マップ上における領域は、〔1,2〕となるわけで
ある。
【0053】同様にして、256領域マップにおける領
域〔K,I〕のIとKは0から15までの整数であり、
回転数帯N〔K〕(N
域〔K,I〕のIとKは0から15までの整数であり、
回転数帯N〔K〕(N
〔0〕〜N〔15〕)と基本パル
ス幅帯Tp〔I〕(Tp
ス幅帯Tp〔I〕(Tp
〔0〕〜Tp〔15〕)とから
256領域マップ上における領域〔K,I〕が個別に定
まる。
256領域マップ上における領域〔K,I〕が個別に定
まる。
【0054】図6は空燃比学習値Lα(L×αのことで
はない。Lα全体で1つの記号である。)を算出するた
めの流れ図で、一定周期(たとえば10ms)で実行す
る。
はない。Lα全体で1つの記号である。)を算出するた
めの流れ図で、一定周期(たとえば10ms)で実行す
る。
【0055】ステップ41では、そのときのエンジン回
転数Nと基本パルス幅(エンジン負荷相当量)Tpから
16領域マップ上における領域〔B,A〕を、またステ
ップ42ではそのときのエンジン回転数Nと基本パルス
幅Tpから256領域マップ上の領域〔K,I〕を判定
する。
転数Nと基本パルス幅(エンジン負荷相当量)Tpから
16領域マップ上における領域〔B,A〕を、またステ
ップ42ではそのときのエンジン回転数Nと基本パルス
幅Tpから256領域マップ上の領域〔K,I〕を判定
する。
【0056】ステップ43では領域〔B,A〕に入って
いる学習値Lα1〔B,A〕[%]と領域〔K,I〕に
入っている学習値Lα2〔K,I〕[%]を読み出し、
空燃比学習値Lαを、 Lα←Lα1〔B,A〕+Lα2〔K,I〕−100 …(18) の式で計算する。
いる学習値Lα1〔B,A〕[%]と領域〔K,I〕に
入っている学習値Lα2〔K,I〕[%]を読み出し、
空燃比学習値Lαを、 Lα←Lα1〔B,A〕+Lα2〔K,I〕−100 …(18) の式で計算する。
【0057】(18)式において100[%]は単位合
わせのために必要となる値である。
わせのために必要となる値である。
【0058】次に、2種類の学習値Lα1とLα2をど
のような順番で更新するかについては、16領域マップ
上での学習値Lα1のほうを優先する。
のような順番で更新するかについては、16領域マップ
上での学習値Lα1のほうを優先する。
【0059】これを図7で簡単に説明すると、図7の上
段は、横軸に基本パルス幅帯Tp〔A〕、縦軸に学習値
Lα1を、また下段は横軸に基本パルス幅帯Tp
〔I〕、縦軸に学習値Lα2をとったときの特性で、新
車時のように学習がまったく行なわれてないとき(つま
りLα1、Lα2とも初期値の100%である)、要求
補正量が左上の太線で示したようにかりに100%を外
れた階段状の値だったとする。つまり、要求補正量が1
00%より多いということは、空燃比がリーン側にずれ
ている場合で考えるわけである。
段は、横軸に基本パルス幅帯Tp〔A〕、縦軸に学習値
Lα1を、また下段は横軸に基本パルス幅帯Tp
〔I〕、縦軸に学習値Lα2をとったときの特性で、新
車時のように学習がまったく行なわれてないとき(つま
りLα1、Lα2とも初期値の100%である)、要求
補正量が左上の太線で示したようにかりに100%を外
れた階段状の値だったとする。つまり、要求補正量が1
00%より多いということは、空燃比がリーン側にずれ
ている場合で考えるわけである。
【0060】この場合に、学習値Lα2を固定(新車時
は100%でありこの100%に固定する)した状態で
(図7の左下参照)、学習値Lα1を更新すると、空燃
比をリッチ側に戻そうとして100%よりも大きい側の
値に学習値Lα1が変化する。ここでは簡単のため、所
定回の更新で256領域マップ上におけるTp〔1〕、
Tp〔2〕での要求補正量に一致したとする(図7の右
上参照)。
は100%でありこの100%に固定する)した状態で
(図7の左下参照)、学習値Lα1を更新すると、空燃
比をリッチ側に戻そうとして100%よりも大きい側の
値に学習値Lα1が変化する。ここでは簡単のため、所
定回の更新で256領域マップ上におけるTp〔1〕、
Tp〔2〕での要求補正量に一致したとする(図7の右
上参照)。
【0061】ただし、このままの状態では256領域マ
ップ上での領域の相違による要求補正量とのずれ(つま
り256領域マップ上におけるTp
ップ上での領域の相違による要求補正量とのずれ(つま
り256領域マップ上におけるTp
〔0〕、Tp〔3〕
での要求補正量とのずれ)を補えない。256領域マッ
プ上におけるTp〔3〕では、学習値Lα1による補正
が足りずに空燃比リーン側にずれ、また256領域マッ
プ上におけるTp
での要求補正量とのずれ)を補えない。256領域マッ
プ上におけるTp〔3〕では、学習値Lα1による補正
が足りずに空燃比リーン側にずれ、また256領域マッ
プ上におけるTp
〔0〕では、学習値Lα1の値が過多
となり空燃比が逆にリッチ側にずれるのである。
となり空燃比が逆にリッチ側にずれるのである。
【0062】そこで、今度はその状態に学習値Lα1を
固定した状態で、256領域マップ上での学習に移行
し、学習値Lα2を右下のように収束させると、256
領域マップ上におけるTp〔3〕では空燃比をリッチ側
に戻そうと学習値Lα2が大きい側に変化し、また25
6領域マップ上におけるTp
固定した状態で、256領域マップ上での学習に移行
し、学習値Lα2を右下のように収束させると、256
領域マップ上におけるTp〔3〕では空燃比をリッチ側
に戻そうと学習値Lα2が大きい側に変化し、また25
6領域マップ上におけるTp
〔0〕では空燃比をリーン
側に戻そうと学習値Lα2が小さい側に変化するので、
2つの学習値の和Lα1+Lα2が要求補正量に一致す
る。
側に戻そうと学習値Lα2が小さい側に変化するので、
2つの学習値の和Lα1+Lα2が要求補正量に一致す
る。
【0063】こうして、16領域マップ上での学習値L
α1の更新をまず行うことで学習値の収束のスピードを
速めつつ、この更新回数が所定値以上になったとき16
領域マップ上での同一領域内の要求補正量とのずれを解
消するため、今度は256領域マップ上での学習値Lα
2の更新に移行することで学習値の精度をも高めうるの
である。
α1の更新をまず行うことで学習値の収束のスピードを
速めつつ、この更新回数が所定値以上になったとき16
領域マップ上での同一領域内の要求補正量とのずれを解
消するため、今度は256領域マップ上での学習値Lα
2の更新に移行することで学習値の精度をも高めうるの
である。
【0064】図8は学習値Lα1とLα2の更新のため
の流れ図であり、一定周期(たとえば10ms)で実行
する。
の流れ図であり、一定周期(たとえば10ms)で実行
する。
【0065】ステップ51では、フラグFPの値をみて
これが“0”であるときはそのまま図8のルーチンを終
了し、フラグFPの値が“1”であるときは、O2セン
サー出力の反転時(あるいは空燃比の反転時)であると
判断し、ステップ52でFPの値を“0”に戻して、ス
テップ53以降の学習値の更新に進む。
これが“0”であるときはそのまま図8のルーチンを終
了し、フラグFPの値が“1”であるときは、O2セン
サー出力の反転時(あるいは空燃比の反転時)であると
判断し、ステップ52でFPの値を“0”に戻して、ス
テップ53以降の学習値の更新に進む。
【0066】ステップ53と54では、そのときの回転
数Nと基本パルス幅Tpから定まる運転条件が16領域
マップ上ではどの領域に、また256領域マップ上では
どの領域に属するかをそれぞれ判定する。
数Nと基本パルス幅Tpから定まる運転条件が16領域
マップ上ではどの領域に、また256領域マップ上では
どの領域に属するかをそれぞれ判定する。
【0067】ステップ55では、判定した16領域マッ
プ上での領域〔B,A〕が前回と同一であるかどうかを
みて、同一でないときにはステップ56でカウント値c
ntに所定値(たとえば4)をセットする。
プ上での領域〔B,A〕が前回と同一であるかどうかを
みて、同一でないときにはステップ56でカウント値c
ntに所定値(たとえば4)をセットする。
【0068】ステップ57では、フラグF〔B,A〕の
値をみる。フラグF〔B,A〕=1は、16領域マップ
上での領域〔B,A〕における学習値Lα1の更新が所
定回行われたことを、またF〔B,A〕=0は更新回数
が所定回未満であることを表す。このため、F〔B,
A〕の値が“0”であるときは、領域〔B,A〕での学
習値Lα1の更新回数が所定値に達していないと判断
し、ステップ58に進む。ステップ58ではカウント値
cntをみて、これがゼロでないときは、学習値Lα1
〔B,A〕の更新条件でないと判断し、図8のルーチン
を終了する。カウント値cntは、16領域マップ上で
の領域〔B,A〕が前回と同一でないとき4にセットさ
れ、それからO2センサー出力の反転のたびに1づつ減
少して0になる値であり、運転条件が16領域マップ上
における同一の領域から外れたときにも、学習値Lα1
〔B,A〕の更新を行わせると、学習値Lα1〔B,
A〕の精度が落ちるので、16領域マップ上における同
一の領域から外れたときは所定時間の経過後でないと、
学習値Lα1〔B,A〕の更新をさせないようにしてい
るわけである。
値をみる。フラグF〔B,A〕=1は、16領域マップ
上での領域〔B,A〕における学習値Lα1の更新が所
定回行われたことを、またF〔B,A〕=0は更新回数
が所定回未満であることを表す。このため、F〔B,
A〕の値が“0”であるときは、領域〔B,A〕での学
習値Lα1の更新回数が所定値に達していないと判断
し、ステップ58に進む。ステップ58ではカウント値
cntをみて、これがゼロでないときは、学習値Lα1
〔B,A〕の更新条件でないと判断し、図8のルーチン
を終了する。カウント値cntは、16領域マップ上で
の領域〔B,A〕が前回と同一でないとき4にセットさ
れ、それからO2センサー出力の反転のたびに1づつ減
少して0になる値であり、運転条件が16領域マップ上
における同一の領域から外れたときにも、学習値Lα1
〔B,A〕の更新を行わせると、学習値Lα1〔B,
A〕の精度が落ちるので、16領域マップ上における同
一の領域から外れたときは所定時間の経過後でないと、
学習値Lα1〔B,A〕の更新をさせないようにしてい
るわけである。
【0069】ステップ59では、カウント値CNT1
〔B,A〕と所定値(1以上の整数)C1を比較する。
初めてステップ59に進んだのであれば、CNT1
〔B,A〕<C1であり、ステップ60において、領域
〔B,A〕に入っている学習値Lα1を Lα1〔B,A〕←Lα1〔B,A〕 +X1・{(a+b)/2−100}…(19) ただし、X1:更新割合(0<X1<1) の式で更新し、更新後の値を同じ領域〔B,A〕に再ス
トアする。(19)式において(a+b)/2[%]は
過去半周期の空燃比フィードバック補正係数αの平均値
であり、これと100[%]との差は理論空燃比からの
ずれを表すので、このずれの何割かを上乗せすること
で、学習値Lα1〔B,A〕を書き換えるわけである。
〔B,A〕と所定値(1以上の整数)C1を比較する。
初めてステップ59に進んだのであれば、CNT1
〔B,A〕<C1であり、ステップ60において、領域
〔B,A〕に入っている学習値Lα1を Lα1〔B,A〕←Lα1〔B,A〕 +X1・{(a+b)/2−100}…(19) ただし、X1:更新割合(0<X1<1) の式で更新し、更新後の値を同じ領域〔B,A〕に再ス
トアする。(19)式において(a+b)/2[%]は
過去半周期の空燃比フィードバック補正係数αの平均値
であり、これと100[%]との差は理論空燃比からの
ずれを表すので、このずれの何割かを上乗せすること
で、学習値Lα1〔B,A〕を書き換えるわけである。
【0070】ステップ61ではカウント値CNT1
〔B,A〕を1だけインクリメントする。カウント値C
NT1〔B,A〕は領域〔B,A〕における学習値Lα
1の更新回数をカウントするもので、初期値は0であ
る。
〔B,A〕を1だけインクリメントする。カウント値C
NT1〔B,A〕は領域〔B,A〕における学習値Lα
1の更新回数をカウントするもので、初期値は0であ
る。
【0071】このカウントにより、やがてCNT1
〔B,A〕≧C1になると、16領域マップ上での領域
〔B,A〕における学習が十分に進行したと判断し、ス
テップ59からステップ62に進んでフラグF〔B,
A〕を“1”にセットする。なお、F〔B,A〕の初期
値は“0”である。
〔B,A〕≧C1になると、16領域マップ上での領域
〔B,A〕における学習が十分に進行したと判断し、ス
テップ59からステップ62に進んでフラグF〔B,
A〕を“1”にセットする。なお、F〔B,A〕の初期
値は“0”である。
【0072】このフラグF〔B,A〕の“1”へのセッ
トで次にはステップ57からステップ63へと進む。
トで次にはステップ57からステップ63へと進む。
【0073】ステップ63では空燃比フィードバック補
正係数αの半周期平均値(a+b)/2と100を比較
し、この半周期平均値が100にほぼ一致していないと
きは、ステップ64で領域〔K,I〕での学習値Lα2
を、 Lα2〔K,I〕←Lα2〔K,I〕 +X2・{(a+b)/2−100}…(20) ただし、X2:更新割合(0<X2<1) の式で更新し、更新後の値を同じ領域〔K,I〕に再ス
トアする。
正係数αの半周期平均値(a+b)/2と100を比較
し、この半周期平均値が100にほぼ一致していないと
きは、ステップ64で領域〔K,I〕での学習値Lα2
を、 Lα2〔K,I〕←Lα2〔K,I〕 +X2・{(a+b)/2−100}…(20) ただし、X2:更新割合(0<X2<1) の式で更新し、更新後の値を同じ領域〔K,I〕に再ス
トアする。
【0074】(20)式を(19)式と比べればわかる
ように、256領域マップ上での学習値Lα2の更新手
法そのものは、16領域マップ上での学習値Lα1の更
新と同じである。異なるのは、更新割合X2の値を上記
の更新割合X1より相対的に小さくしている点である。
16領域マップ上では学習値Lα1が早く収束するよう
にX1をある程度大きな値にするのに対し、256領域
マップ上では、全体の学習値Lαの精度がよくなるよう
にX2をある程度小さな値とする必要があるからであ
る。
ように、256領域マップ上での学習値Lα2の更新手
法そのものは、16領域マップ上での学習値Lα1の更
新と同じである。異なるのは、更新割合X2の値を上記
の更新割合X1より相対的に小さくしている点である。
16領域マップ上では学習値Lα1が早く収束するよう
にX1をある程度大きな値にするのに対し、256領域
マップ上では、全体の学習値Lαの精度がよくなるよう
にX2をある程度小さな値とする必要があるからであ
る。
【0075】なお、256領域マップ上でのこの領域
〔K,I〕は、フラグFが“1”にセットされている領
域〔B,A〕に含まれていることはいうまでもない。
〔K,I〕は、フラグFが“1”にセットされている領
域〔B,A〕に含まれていることはいうまでもない。
【0076】ステップ63で空燃比フィードバック補正
係数αの半周期平均値が100にほぼ一致しているとき
は、領域〔K,I〕での学習値Lα2が収束していると
判断し、ステップ65でフラグFF〔K,I〕を“1”
にセットする。FF〔K,I〕=1で領域〔K,I〕で
の学習値Lα2が収束したことを、FF〔K,I〕=0
で学習値Lα2〔K,I〕がまだ収束してないことを表
すわけである。フラグFF〔K,I〕の初期値も“0”
である。
係数αの半周期平均値が100にほぼ一致しているとき
は、領域〔K,I〕での学習値Lα2が収束していると
判断し、ステップ65でフラグFF〔K,I〕を“1”
にセットする。FF〔K,I〕=1で領域〔K,I〕で
の学習値Lα2が収束したことを、FF〔K,I〕=0
で学習値Lα2〔K,I〕がまだ収束してないことを表
すわけである。フラグFF〔K,I〕の初期値も“0”
である。
【0077】このようにして、まず16領域マップ上で
の領域ごとの学習を行い、16領域マップ上での学習値
Lα1が収束した領域については、その領域をさらに1
6領域にわけた領域ごとの学習値Lα2を更新すること
で、平均空燃比を早期に理論空燃比に収束させつつ学習
値Lαの精度を高めることができる。
の領域ごとの学習を行い、16領域マップ上での学習値
Lα1が収束した領域については、その領域をさらに1
6領域にわけた領域ごとの学習値Lα2を更新すること
で、平均空燃比を早期に理論空燃比に収束させつつ学習
値Lαの精度を高めることができる。
【0078】なお、16領域マップ上でのすべての学習
値Lα1の更新回数が所定値以上になるまでは16領域
マップ上での学習値Lα1の更新と、256領域マップ
上での学習値Lα2の更新とが混在することになる。
値Lα1の更新回数が所定値以上になるまでは16領域
マップ上での学習値Lα1の更新と、256領域マップ
上での学習値Lα2の更新とが混在することになる。
【0079】ここまでの制御は、従来と同様である。
【0080】さて、256領域マップ上での学習値Lα
2の更新に移行した後にエンジンが停止され、給油に伴
い燃料性状が変化した後で再始動されたときや、エンジ
ン停止中に大気温度や大気圧などの環境条件が大きく変
化した後で再始動されたときにも、その後に256領域
マップ上での学習値Lα2の更新を継続するのでは、保
持されている学習値が実際の燃料性状や環境条件での要
求補正量と合わなくなり、空燃比がふたたびリッチ側や
リーン側にずれる。
2の更新に移行した後にエンジンが停止され、給油に伴
い燃料性状が変化した後で再始動されたときや、エンジ
ン停止中に大気温度や大気圧などの環境条件が大きく変
化した後で再始動されたときにも、その後に256領域
マップ上での学習値Lα2の更新を継続するのでは、保
持されている学習値が実際の燃料性状や環境条件での要
求補正量と合わなくなり、空燃比がふたたびリッチ側や
リーン側にずれる。
【0081】これに対処するため、ECU11では、始
動時には必ず所定期間のあいだ16領域マップ上での学
習を進行させる。
動時には必ず所定期間のあいだ16領域マップ上での学
習を進行させる。
【0082】図9は学習値Lα1とLα2の更新のため
の流れ図で、一定周期(たとえば10ms)で実行す
る。
の流れ図で、一定周期(たとえば10ms)で実行す
る。
【0083】なお、従来例に相当する図8のルーチン
は、図9のルーチンの一部として構成する。ただし、図
9との関係で重複することになるステップ(図8のステ
ップ53)は不要である。
は、図9のルーチンの一部として構成する。ただし、図
9との関係で重複することになるステップ(図8のステ
ップ53)は不要である。
【0084】図9において、ステップ71ではスタータ
ースイッチをみてこれがON状態であればステップ72
ですべてのフラグF(F〔0,0〕〜F〔3,3〕)を
“0”にセットする。前回の運転時の学習値Lα1の進
行状態に関係なく、まず16領域マップ上での学習値L
α1の更新を開始させるためである。
ースイッチをみてこれがON状態であればステップ72
ですべてのフラグF(F〔0,0〕〜F〔3,3〕)を
“0”にセットする。前回の運転時の学習値Lα1の進
行状態に関係なく、まず16領域マップ上での学習値L
α1の更新を開始させるためである。
【0085】スタータースイッチがOFF状態であると
きはステップ73でイグニッションスイッチをみてこれ
がOFF状態であれば、エンジンの停止と判断して、図
9のルーチンを終了する。
きはステップ73でイグニッションスイッチをみてこれ
がOFF状態であれば、エンジンの停止と判断して、図
9のルーチンを終了する。
【0086】スタータースイッチがOFF状態でかつイ
グニッションスイッチがON状態であれば、運転継続で
あると判断し、ステップ74でエンジン回転数Nと基本
パルス幅Tpが16領域上でのどの領域〔B,A〕に属
するかを判定し、その領域〔B,A〕に対応して設けた
カウント値CNT2〔B,A〕と所定値C2をステップ
74で比較する。カウント値CNT2〔B,A〕の初期
値は0である。
グニッションスイッチがON状態であれば、運転継続で
あると判断し、ステップ74でエンジン回転数Nと基本
パルス幅Tpが16領域上でのどの領域〔B,A〕に属
するかを判定し、その領域〔B,A〕に対応して設けた
カウント値CNT2〔B,A〕と所定値C2をステップ
74で比較する。カウント値CNT2〔B,A〕の初期
値は0である。
【0087】始動直後であればCNT2〔B,A〕<C
2であり、ステップ76以降に進む。
2であり、ステップ76以降に進む。
【0088】ステップ76,77,78,79,80,
81は、図8のステップ51,52,55,56,5
8,60,61と同じであり、〈1〉FP=1であるこ
と(ステップ76)、〈2〉領域〔B,A〕が前回と同
じであること(ステップ78)、〈3〉cnt=0であ
ること(ステップ80)、のすべてを満たした場合に、
ステップ81に進んで、16領域マップ上での学習値L
α1を更新し、ステップ82でカウント値CNT2
〔B,A〕を1だけインクリメントする。
81は、図8のステップ51,52,55,56,5
8,60,61と同じであり、〈1〉FP=1であるこ
と(ステップ76)、〈2〉領域〔B,A〕が前回と同
じであること(ステップ78)、〈3〉cnt=0であ
ること(ステップ80)、のすべてを満たした場合に、
ステップ81に進んで、16領域マップ上での学習値L
α1を更新し、ステップ82でカウント値CNT2
〔B,A〕を1だけインクリメントする。
【0089】カウント値CNT2〔B,A〕は16領域
マップ上での領域〔B,A〕における始動からの学習値
Lα1の更新回数を表し、領域〔B,A〕での学習が進
行してCNT2〔B,A〕≧C2になると、ステップ7
5からステップ83に進んで、従来と同様に図8のルー
チンを実行する。
マップ上での領域〔B,A〕における始動からの学習値
Lα1の更新回数を表し、領域〔B,A〕での学習が進
行してCNT2〔B,A〕≧C2になると、ステップ7
5からステップ83に進んで、従来と同様に図8のルー
チンを実行する。
【0090】このようにして、16領域マップ上でのい
ずれか1つの領域での学習値についてその始動からの更
新回数が所定値以上になるまでは、16領域マップ上で
の学習値の更新を再開するわけである。したがって、理
論的上最も早期にステップ83に進むのは、16領域マ
ップ上においていずれか1つの領域での学習値が連続し
て所定回更新される場合である。また、最も遅くステッ
プ83に進むのは、16領域マップ上において、すべて
の領域における学習値が(C2−1)回更新されたあ
と、いずれか1つの領域で学習値が更新される場合であ
る。
ずれか1つの領域での学習値についてその始動からの更
新回数が所定値以上になるまでは、16領域マップ上で
の学習値の更新を再開するわけである。したがって、理
論的上最も早期にステップ83に進むのは、16領域マ
ップ上においていずれか1つの領域での学習値が連続し
て所定回更新される場合である。また、最も遅くステッ
プ83に進むのは、16領域マップ上において、すべて
の領域における学習値が(C2−1)回更新されたあ
と、いずれか1つの領域で学習値が更新される場合であ
る。
【0091】ここで、この例の作用を説明する。
【0092】2つの学習値Lα1とLα2が、エンジン
の停止後にその値が消失しないように保持されることは
従来と変わりなく、したがって、重質ガソリンを使用し
てのエンジンの停止前に、図10においてたとえば16
領域マップ上の領域〔0,0〕での学習値の更新回数が
所定値C1以上となり、さらにその16領域マップ上で
の領域〔0,0〕を細分した、256領域マップ上にお
ける領域のすべてで256領域マップ上での学習値Lα
2の更新が行われているときは、学習値Lα1〔0,
0〕ならびに16領域マップ上での領域〔0,0〕と重
なる256領域マップ上における領域でのすべての学習
値Lα2が保持される。
の停止後にその値が消失しないように保持されることは
従来と変わりなく、したがって、重質ガソリンを使用し
てのエンジンの停止前に、図10においてたとえば16
領域マップ上の領域〔0,0〕での学習値の更新回数が
所定値C1以上となり、さらにその16領域マップ上で
の領域〔0,0〕を細分した、256領域マップ上にお
ける領域のすべてで256領域マップ上での学習値Lα
2の更新が行われているときは、学習値Lα1〔0,
0〕ならびに16領域マップ上での領域〔0,0〕と重
なる256領域マップ上における領域でのすべての学習
値Lα2が保持される。
【0093】このエンジンの停止後に再始動するとき
は、エンジン停止前と燃料性状や環境条件などが変わら
ないかぎり、16領域マップ上における領域〔0,0〕
で運転されると、再始動後においても空燃比が理論空燃
比へと精度良く制御される。
は、エンジン停止前と燃料性状や環境条件などが変わら
ないかぎり、16領域マップ上における領域〔0,0〕
で運転されると、再始動後においても空燃比が理論空燃
比へと精度良く制御される。
【0094】しかしながら、エンジンの停止時に、燃料
性状の異なる軽質ガソリンが給油されると、再始動後
に、16領域マップ上における領域〔0,0〕のすべて
で学習値Lαが軽質ガソリンに対する要求補正量と合わ
なくなり、空燃比がリッチ側にずれてしまう。
性状の異なる軽質ガソリンが給油されると、再始動後
に、16領域マップ上における領域〔0,0〕のすべて
で学習値Lαが軽質ガソリンに対する要求補正量と合わ
なくなり、空燃比がリッチ側にずれてしまう。
【0095】この場合に、この例では、始動後すぐは前
回運転時の16領域マップ上での学習値Lα1の更新状
況に関係なく、必ず16領域マップ上での学習値Lα1
の更新が再開されるので、エンジン停止後の再始動後に
空燃比フィードバック条件の成立で空燃比フィードバッ
ク制御が開始され、その後に図10においてC点で学習
条件が成立すると、学習値Lα1〔0,0〕が、小さく
なる側(空燃比をリーン側に戻す向き)に更新割合X1
で更新される。このあと運転条件がD点やE点に移って
学習条件が成立したときは、同じ更新割合X1で学習値
Lα1〔0,0〕の更新が継続されることになり、学習
値Lα1〔0,0〕が軽質ガソリン使用時の要求補正量
へと応答よく収束してゆく。
回運転時の16領域マップ上での学習値Lα1の更新状
況に関係なく、必ず16領域マップ上での学習値Lα1
の更新が再開されるので、エンジン停止後の再始動後に
空燃比フィードバック条件の成立で空燃比フィードバッ
ク制御が開始され、その後に図10においてC点で学習
条件が成立すると、学習値Lα1〔0,0〕が、小さく
なる側(空燃比をリーン側に戻す向き)に更新割合X1
で更新される。このあと運転条件がD点やE点に移って
学習条件が成立したときは、同じ更新割合X1で学習値
Lα1〔0,0〕の更新が継続されることになり、学習
値Lα1〔0,0〕が軽質ガソリン使用時の要求補正量
へと応答よく収束してゆく。
【0096】同じ条件のとき、従来例においてC点、D
点、E点で学習条件が成立したときは、256領域マッ
プ上での学習値Lα2の更新が継続されるため、学習値
Lα2〔1,1〕、Lα2〔2,1〕、Lα2〔1,
0〕が更新割合X2で更新されるだけで、16領域マッ
プ上での領域〔0,0〕のうち256領域マップ上での
領域〔1,1〕、〔2,1〕、〔1,0〕を除いた領域
(斜線部分)では、学習値が軽質ガソリン使用時の要求
補正量からずれたままに残されてしまうのである。
点、E点で学習条件が成立したときは、256領域マッ
プ上での学習値Lα2の更新が継続されるため、学習値
Lα2〔1,1〕、Lα2〔2,1〕、Lα2〔1,
0〕が更新割合X2で更新されるだけで、16領域マッ
プ上での領域〔0,0〕のうち256領域マップ上での
領域〔1,1〕、〔2,1〕、〔1,0〕を除いた領域
(斜線部分)では、学習値が軽質ガソリン使用時の要求
補正量からずれたままに残されてしまうのである。
【0097】このように、従来例によれば、すでに25
6領域マップ上での学習値Lα2の更新に移行した後
で、その学習値Lα2の入っている領域と重なる16領
域マップ上での領域における学習値Lα1の更新が再開
されることはないのであるが、この例では、前回運転時
の16領域マップ上での学習値Lα1の更新状況には関
係なく、あらためて16領域マップ上での学習値Lα1
の更新が再開されるわけで、これによって、256領域
マップ上での学習値の更新に移行した後でエンジンを停
止して給油し、その給油によりエンジン停止前と燃料性
状が変化したり、エンジンの停止の前後で環境条件が変
化することがあっても、これらの変化に伴う要求補正量
からのずれを応答よく補正することができ、またマップ
上における領域間での学習値のむらを生じさせることも
ない。
6領域マップ上での学習値Lα2の更新に移行した後
で、その学習値Lα2の入っている領域と重なる16領
域マップ上での領域における学習値Lα1の更新が再開
されることはないのであるが、この例では、前回運転時
の16領域マップ上での学習値Lα1の更新状況には関
係なく、あらためて16領域マップ上での学習値Lα1
の更新が再開されるわけで、これによって、256領域
マップ上での学習値の更新に移行した後でエンジンを停
止して給油し、その給油によりエンジン停止前と燃料性
状が変化したり、エンジンの停止の前後で環境条件が変
化することがあっても、これらの変化に伴う要求補正量
からのずれを応答よく補正することができ、またマップ
上における領域間での学習値のむらを生じさせることも
ない。
【0098】図11は第2実施例である。
【0099】256領域マップ上での学習値Lα2の更
新に移行した後の運転時に、エンジンを停止することな
く給油を行うことにより燃料性状が変化したり、運転中
の燃料インジェクターの突然の目詰まりによる流量の低
下や噴霧状態の変化が起こったりしたときも、学習値L
αと要求補正量とが合わなくなり、空燃比がリッチ側や
リーン側にずれる。この突発的な要求補正量の変化に対
して256領域マップ上での学習値Lα2の更新では応
答よく対応できないので、この例は、256領域マップ
上での学習値Lα2の更新に移行した後の運転中でも、
要求補正量が変化したときは、256領域マップ上での
学習値Lα2の更新をいったん中断し、16領域マップ
上での学習値Lα1の更新を再開させるようにしたもの
である。
新に移行した後の運転時に、エンジンを停止することな
く給油を行うことにより燃料性状が変化したり、運転中
の燃料インジェクターの突然の目詰まりによる流量の低
下や噴霧状態の変化が起こったりしたときも、学習値L
αと要求補正量とが合わなくなり、空燃比がリッチ側や
リーン側にずれる。この突発的な要求補正量の変化に対
して256領域マップ上での学習値Lα2の更新では応
答よく対応できないので、この例は、256領域マップ
上での学習値Lα2の更新に移行した後の運転中でも、
要求補正量が変化したときは、256領域マップ上での
学習値Lα2の更新をいったん中断し、16領域マップ
上での学習値Lα1の更新を再開させるようにしたもの
である。
【0100】なお、エンジンを停止しないまま給油する
必要性は次のような場合に考えられる。海外特に米国な
どでのセルフサービスのガスステーションでは、エンジ
ンをかけたまま給油されることがあり、また人里離れた
ところでガソリンが心細くなり、予備のポリタンクに入
っていた燃料を入れるときにはエンジンを停止するとも
かぎらない。海外はもちろん日本でも、古くなった車で
エンジンのかかりが悪くなってしまったときは、エンジ
ンを切らずに給油されることがある。
必要性は次のような場合に考えられる。海外特に米国な
どでのセルフサービスのガスステーションでは、エンジ
ンをかけたまま給油されることがあり、また人里離れた
ところでガソリンが心細くなり、予備のポリタンクに入
っていた燃料を入れるときにはエンジンを停止するとも
かぎらない。海外はもちろん日本でも、古くなった車で
エンジンのかかりが悪くなってしまったときは、エンジ
ンを切らずに給油されることがある。
【0101】図11において、ステップ91、92では
次の条件が成立するかどうかみて、2つの条件とも満足
するときは、ステップ93以降に進んで、16領域マッ
プ上での学習値Lα2の更新を再開する。
次の条件が成立するかどうかみて、2つの条件とも満足
するときは、ステップ93以降に進んで、16領域マッ
プ上での学習値Lα2の更新を再開する。
【0102】〈1〉256領域マップ上での少なくとも
2つ領域での学習値Lα2の更新代が一律であること。
たとえば、256領域マップ上での2つの領域での各学
習値をLα2aとLα2bとすれば、ΔLα2a(Lα
2aの更新代のこと)、ΔLα2b(Lα2bの更新代
のこと)は、 ΔLα2a=新Lα2a−旧Lα2a …(21) ただし、新Lα2a:現在のLα2a 旧Lα2a:前回のLα2a ΔLα2b=新Lα2b−旧Lα2b …(22) ただし、新Lα2b:現在のLα2b 旧Lα2b:前回のLα2b であり、ΔLα2a≒ΔLα2bを満たすことである
(ステップ91)。
2つ領域での学習値Lα2の更新代が一律であること。
たとえば、256領域マップ上での2つの領域での各学
習値をLα2aとLα2bとすれば、ΔLα2a(Lα
2aの更新代のこと)、ΔLα2b(Lα2bの更新代
のこと)は、 ΔLα2a=新Lα2a−旧Lα2a …(21) ただし、新Lα2a:現在のLα2a 旧Lα2a:前回のLα2a ΔLα2b=新Lα2b−旧Lα2b …(22) ただし、新Lα2b:現在のLα2b 旧Lα2b:前回のLα2b であり、ΔLα2a≒ΔLα2bを満たすことである
(ステップ91)。
【0103】〈2〉256領域マップ上での上記少なく
とも2つの領域が16領域マップ上でみて同一の領域に
ないこと。上記2つの学習値Lα2aとLα2bでいえ
ば、一方の学習値Lα2aが属する16領域マップ上で
の領域をARALα2a、もう1つの学習値Lα2bが
属する16領域マップ上での領域をARALα2bとし
て、ARALα2a≠ARALα2bを満たすことであ
る(ステップ92)。ARALα2aとARALα2b
とが16領域マップ上でみて同一の領域にあるときは、
2つの学習値Lα2aとLα2bの一律の更新が通常の
ものなのか、それとも突発的な要求補正量の変化に伴う
ものなのか判断できないからである。
とも2つの領域が16領域マップ上でみて同一の領域に
ないこと。上記2つの学習値Lα2aとLα2bでいえ
ば、一方の学習値Lα2aが属する16領域マップ上で
の領域をARALα2a、もう1つの学習値Lα2bが
属する16領域マップ上での領域をARALα2bとし
て、ARALα2a≠ARALα2bを満たすことであ
る(ステップ92)。ARALα2aとARALα2b
とが16領域マップ上でみて同一の領域にあるときは、
2つの学習値Lα2aとLα2bの一律の更新が通常の
ものなのか、それとも突発的な要求補正量の変化に伴う
ものなのか判断できないからである。
【0104】ステップ93では、ステップ93に進んで
きたのが初めてかどうかみて、初めてのときは、ステッ
プ94ですべてのフラグFを“0”にする。16領域マ
ップ上でのそれまでの学習値Lα1の更新状況に関係な
く、16領域マップ上での学習値Lα1の更新を再開さ
せるためである。
きたのが初めてかどうかみて、初めてのときは、ステッ
プ94ですべてのフラグFを“0”にする。16領域マ
ップ上でのそれまでの学習値Lα1の更新状況に関係な
く、16領域マップ上での学習値Lα1の更新を再開さ
せるためである。
【0105】次回はステップ93から95に進むが、ス
テップ95から103までは図9のステップ75から8
3までと同様である。
テップ95から103までは図9のステップ75から8
3までと同様である。
【0106】この例では、256領域マップ上での学習
値Lα2の更新への移行後に、エンジンを停止しないま
ま給油し、燃料性状が変化した場合のほか、運転中の燃
料インジェクターの突然の目詰まりによる流量の低下や
噴霧状態の変化が起こった場合など、突発的な要求補正
量の変化が運転中に起こったときでも、すみやかに空燃
比を理論空燃比へと戻すことができる。
値Lα2の更新への移行後に、エンジンを停止しないま
ま給油し、燃料性状が変化した場合のほか、運転中の燃
料インジェクターの突然の目詰まりによる流量の低下や
噴霧状態の変化が起こった場合など、突発的な要求補正
量の変化が運転中に起こったときでも、すみやかに空燃
比を理論空燃比へと戻すことができる。
【0107】上記の〈1〉の条件(図11のステップ9
1の条件)は、256領域マップ上での少なくとも2つ
の領域の各学習値とその各領域が含まれる16領域マッ
プ上での領域の各学習値との和が一定の割合で更新され
ていることとしてもよい。
1の条件)は、256領域マップ上での少なくとも2つ
の領域の各学習値とその各領域が含まれる16領域マッ
プ上での領域の各学習値との和が一定の割合で更新され
ていることとしてもよい。
【0108】たとえば、上記の学習値Lα2aとLα2
bでいうと、一方の学習値Lα2aが入っている領域と
同じ16領域マップ上での領域での学習値をLα1A、
もう1つの学習値Lα2bが入っている領域と同じ16
領域マップ上での領域での学習値をLα1Bとすると、
和(Lα2a+Lα1A)と和(Lα2b+Lα1B)
が同じ割合で更新されることである。このとき、和(L
α2a+Lα1A)と和(Lα2b+Lα1B)の各更
新割合は (Lα2a+Lα1A)の更新割合 =ΔLα2a/旧(Lα2a+Lα1A) =ΔLα2a/(旧Lα2a−旧Lα1A) …(23) (Lα2b+Lα1B)の更新割合 =ΔLα2b/旧(Lα2b+Lα1B) =ΔLα2b/(旧Lα2b+旧Lα1B) …(24) である。
bでいうと、一方の学習値Lα2aが入っている領域と
同じ16領域マップ上での領域での学習値をLα1A、
もう1つの学習値Lα2bが入っている領域と同じ16
領域マップ上での領域での学習値をLα1Bとすると、
和(Lα2a+Lα1A)と和(Lα2b+Lα1B)
が同じ割合で更新されることである。このとき、和(L
α2a+Lα1A)と和(Lα2b+Lα1B)の各更
新割合は (Lα2a+Lα1A)の更新割合 =ΔLα2a/旧(Lα2a+Lα1A) =ΔLα2a/(旧Lα2a−旧Lα1A) …(23) (Lα2b+Lα1B)の更新割合 =ΔLα2b/旧(Lα2b+Lα1B) =ΔLα2b/(旧Lα2b+旧Lα1B) …(24) である。
【0109】ここで、16領域マップ上での学習値Lα
1Aは256領域マップ上での学習値Lα2aの更新の
前後で、また16領域マップ上での学習値Lα1Bは2
56領域マップ上での学習値Lα2bの更新の前後でそ
の値が変わらないから、旧Lα1A、旧Lα1Bを単に
Lα1A、Lα1Bとおくと、(23)式、(24)式
は、 (Lα2a+Lα1A)の更新割合=ΔLα2a/(旧Lα2a−Lα1A) …(25) (Lα2b+Lα1B)の更新割合=ΔLα2b/(旧Lα2b+Lα1B) …(26) となる。(25)式の(Lα2a+Lα1A)の更新割
合と(26)式の(Lα2b+Lα1B)の更新割合と
がほぼ一致するときは、(Lα2a+Lα1A)と(L
α2b+Lα1B)が一定の割合で更新されたと判断す
る。
1Aは256領域マップ上での学習値Lα2aの更新の
前後で、また16領域マップ上での学習値Lα1Bは2
56領域マップ上での学習値Lα2bの更新の前後でそ
の値が変わらないから、旧Lα1A、旧Lα1Bを単に
Lα1A、Lα1Bとおくと、(23)式、(24)式
は、 (Lα2a+Lα1A)の更新割合=ΔLα2a/(旧Lα2a−Lα1A) …(25) (Lα2b+Lα1B)の更新割合=ΔLα2b/(旧Lα2b+Lα1B) …(26) となる。(25)式の(Lα2a+Lα1A)の更新割
合と(26)式の(Lα2b+Lα1B)の更新割合と
がほぼ一致するときは、(Lα2a+Lα1A)と(L
α2b+Lα1B)が一定の割合で更新されたと判断す
る。
【0110】いずれの学習値Lα1,Lα2とも高速高
負荷になるほど大きくなる傾向をもつことから、同じ2
56領域マップ上での学習値であっても、たとえば25
6領域マップ上での1つの領域を低速低負荷領域、他の
領域を高速高負荷領域に選択したときは、その選択した
2つの領域での学習値の更新代が一律といえなくなり、
図11においてステップ92へと進むことができなくな
るのであるが、256領域マップ上での少なくとも2つ
の領域の各学習値とその各領域が含まれる16領域マッ
プ上での領域の各学習値との和が一定の割合で更新さ
れ、かつ256領域マップ上での上記少なくとも2つの
領域が16領域マップ上でみて同一の領域にないとき、
16領域マップ上での学習値の更新に移行させること
で、256領域マップ上での少なくとも2つの領域とし
て低速低負荷領域と高速高負荷域が選択されるときで
も、256領域マップ上での学習値の更新に移行した後
での運転中における突発的な要求補正量の変化に精度良
く対応できるのである。
負荷になるほど大きくなる傾向をもつことから、同じ2
56領域マップ上での学習値であっても、たとえば25
6領域マップ上での1つの領域を低速低負荷領域、他の
領域を高速高負荷領域に選択したときは、その選択した
2つの領域での学習値の更新代が一律といえなくなり、
図11においてステップ92へと進むことができなくな
るのであるが、256領域マップ上での少なくとも2つ
の領域の各学習値とその各領域が含まれる16領域マッ
プ上での領域の各学習値との和が一定の割合で更新さ
れ、かつ256領域マップ上での上記少なくとも2つの
領域が16領域マップ上でみて同一の領域にないとき、
16領域マップ上での学習値の更新に移行させること
で、256領域マップ上での少なくとも2つの領域とし
て低速低負荷領域と高速高負荷域が選択されるときで
も、256領域マップ上での学習値の更新に移行した後
での運転中における突発的な要求補正量の変化に精度良
く対応できるのである。
【0111】図9のステップ75では、始動からの経過
時間が所定値t1未満のときステップ76に、また始動
からの経過時間が所定値t1以上になると、ステップ8
3に進ませるようにしてもかまわない。さらに、始動か
らのサイクル数や始動からのエンジン回転数の積算値が
所定値S1未満のときステップ76に、また始動からの
サイクル数や始動からのエンジン回転数の積算値が所定
値S1以上になると、ステップ83に進ませるようにす
ることもできる。
時間が所定値t1未満のときステップ76に、また始動
からの経過時間が所定値t1以上になると、ステップ8
3に進ませるようにしてもかまわない。さらに、始動か
らのサイクル数や始動からのエンジン回転数の積算値が
所定値S1未満のときステップ76に、また始動からの
サイクル数や始動からのエンジン回転数の積算値が所定
値S1以上になると、ステップ83に進ませるようにす
ることもできる。
【0112】また、この場合の所定値t1やS1は、エ
ンジン状態を表すパラメータにより異なる値を設定する
こともできる。たとえば、エンジン温度(たとえば冷却
水温、油温、壁温、燃料温度など)が低いほどエンジン
状態が不安定となり、学習値が安定するのに時間がかか
るのであるから、所定値t1やS1をエンジン温度が低
いほど大きく設定しておくことで、エンジン状態が相違
しても適切な所定値を設定でき、学習値の精度を高める
ことができる。
ンジン状態を表すパラメータにより異なる値を設定する
こともできる。たとえば、エンジン温度(たとえば冷却
水温、油温、壁温、燃料温度など)が低いほどエンジン
状態が不安定となり、学習値が安定するのに時間がかか
るのであるから、所定値t1やS1をエンジン温度が低
いほど大きく設定しておくことで、エンジン状態が相違
しても適切な所定値を設定でき、学習値の精度を高める
ことができる。
【0113】
【発明の効果】第1の発明は、運転条件に応じた基本噴
射量を算出する手段と、排気中の酸素濃度を検出するセ
ンサーと、このセンサー出力にもとづいて空燃比が理論
空燃比の近くに制御されるように空燃比フィードバック
補正量を算出する手段と、運転領域を大きく区分したマ
ップ上の領域ごとに学習値を格納するメモリーと、運転
領域を小さく区分したマップ上の領域ごとに学習値を格
納するメモリーと、これらのメモリーの値がエンジンの
停止後も消失しないように保持する手段と、現在の運転
条件が前記大領域マップ上におけるいずれの領域におよ
び前記小領域マップ上におけるいずれの領域に属するか
を判定する手段と、この判定結果より現在の運転条件の
属する領域に格納されている学習値を前記大領域マップ
および小領域マップからそれぞれ読み出す手段と、この
読み出された2つの学習値と前記空燃比フィードバック
補正量で前記基本噴射量を補正して燃料噴射量を算出す
る手段と、この噴射量の燃料を吸気管に供給する手段
と、前記大領域マップ上での学習値を前記小領域マップ
上での学習値に優先して前記空燃比フィードバック補正
量にもとづいて更新する手段と、この大領域マップ上で
の学習値の更新回数を計測する手段と、この計測値が所
定値以上になったかどうかを判定する手段と、この判定
結果より計測値が所定値以上になったとき前記大領域マ
ップ上での学習値を固定した状態で前記小領域マップ上
での学習値を前記空燃比フィードバック補正量にもとづ
いて更新する手段と、エンジンの始動からの経過時間が
所定値以下であるかどうかを判定する手段と、この判定
結果より始動からの経過時間が所定値以下のとき必ず前
記大領域マップ上での学習値を前記空燃比フィードバッ
ク補正量にもとづいて更新する手段とを設けたので、小
領域マップ上での学習値の更新に移行した後でエンジン
を停止して給油し、その給油によりエンジン停止前と燃
料性状が変化したり、エンジンの停止の前後で大気圧、
大気温度などの環境条件が変化することがあっても、こ
れらの変化に伴う要求補正量からのずれを応答よく補正
することができ、またマップ上における領域間での学習
値のむらを生じさせることもない。
射量を算出する手段と、排気中の酸素濃度を検出するセ
ンサーと、このセンサー出力にもとづいて空燃比が理論
空燃比の近くに制御されるように空燃比フィードバック
補正量を算出する手段と、運転領域を大きく区分したマ
ップ上の領域ごとに学習値を格納するメモリーと、運転
領域を小さく区分したマップ上の領域ごとに学習値を格
納するメモリーと、これらのメモリーの値がエンジンの
停止後も消失しないように保持する手段と、現在の運転
条件が前記大領域マップ上におけるいずれの領域におよ
び前記小領域マップ上におけるいずれの領域に属するか
を判定する手段と、この判定結果より現在の運転条件の
属する領域に格納されている学習値を前記大領域マップ
および小領域マップからそれぞれ読み出す手段と、この
読み出された2つの学習値と前記空燃比フィードバック
補正量で前記基本噴射量を補正して燃料噴射量を算出す
る手段と、この噴射量の燃料を吸気管に供給する手段
と、前記大領域マップ上での学習値を前記小領域マップ
上での学習値に優先して前記空燃比フィードバック補正
量にもとづいて更新する手段と、この大領域マップ上で
の学習値の更新回数を計測する手段と、この計測値が所
定値以上になったかどうかを判定する手段と、この判定
結果より計測値が所定値以上になったとき前記大領域マ
ップ上での学習値を固定した状態で前記小領域マップ上
での学習値を前記空燃比フィードバック補正量にもとづ
いて更新する手段と、エンジンの始動からの経過時間が
所定値以下であるかどうかを判定する手段と、この判定
結果より始動からの経過時間が所定値以下のとき必ず前
記大領域マップ上での学習値を前記空燃比フィードバッ
ク補正量にもとづいて更新する手段とを設けたので、小
領域マップ上での学習値の更新に移行した後でエンジン
を停止して給油し、その給油によりエンジン停止前と燃
料性状が変化したり、エンジンの停止の前後で大気圧、
大気温度などの環境条件が変化することがあっても、こ
れらの変化に伴う要求補正量からのずれを応答よく補正
することができ、またマップ上における領域間での学習
値のむらを生じさせることもない。
【0114】第2の発明は、運転条件に応じた基本噴射
量を算出する手段と、排気中の酸素濃度を検出するセン
サーと、このセンサー出力にもとづいて空燃比が理論空
燃比の近くに制御されるように空燃比フィードバック補
正量を算出する手段と、運転領域を大きく区分したマッ
プ上の領域ごとに学習値を格納するメモリーと、運転領
域を小さく区分したマップ上の領域ごとに学習値を格納
するメモリーと、これらのメモリーの値がエンジンの停
止後も消失しないように保持する手段と、現在の運転条
件が前記大領域マップ上におけるいずれの領域におよび
前記小領域マップ上におけるいずれの領域に属するかを
判定する手段と、この判定結果より現在の運転条件の属
する領域に格納されている学習値を前記大領域マップお
よび小領域マップからそれぞれ読み出す手段と、この読
み出された2つの学習値と前記空燃比フィードバック補
正量で前記基本噴射量を補正して燃料噴射量を算出する
手段と、この噴射量の燃料を吸気管に供給する手段と、
前記大領域マップ上での学習値を前記小領域マップ上で
の学習値に優先して前記空燃比フィードバック補正量に
もとづいて更新する手段と、この大領域マップ上での学
習値の更新回数を計測する手段と、この計測値が所定値
以上になったかどうかを判定する手段と、この判定結果
より計測値が所定値以上になったとき前記大領域マップ
上での学習値を固定した状態で前記小領域マップ上での
学習値を前記空燃比フィードバック補正量にもとづいて
更新する手段と、エンジンの始動からの総サイクル数ま
たはエンジン回転数の積算値が所定値以下であるかどう
かを判定する手段と、この判定結果より始動からの総サ
イクル数またはエンジン回転数の積算値が所定値以下の
とき必ず前記大領域マップ上での学習値を前記空燃比フ
ィードバック補正量にもとづいて更新する手段とを設け
たので、始動から実際に大領域マップ上での学習値を更
新した回数をカウントできることになり、大領域マップ
上での学習値の更新を確実に行わせた後で、従来の学習
値の更新に戻すことができる。
量を算出する手段と、排気中の酸素濃度を検出するセン
サーと、このセンサー出力にもとづいて空燃比が理論空
燃比の近くに制御されるように空燃比フィードバック補
正量を算出する手段と、運転領域を大きく区分したマッ
プ上の領域ごとに学習値を格納するメモリーと、運転領
域を小さく区分したマップ上の領域ごとに学習値を格納
するメモリーと、これらのメモリーの値がエンジンの停
止後も消失しないように保持する手段と、現在の運転条
件が前記大領域マップ上におけるいずれの領域におよび
前記小領域マップ上におけるいずれの領域に属するかを
判定する手段と、この判定結果より現在の運転条件の属
する領域に格納されている学習値を前記大領域マップお
よび小領域マップからそれぞれ読み出す手段と、この読
み出された2つの学習値と前記空燃比フィードバック補
正量で前記基本噴射量を補正して燃料噴射量を算出する
手段と、この噴射量の燃料を吸気管に供給する手段と、
前記大領域マップ上での学習値を前記小領域マップ上で
の学習値に優先して前記空燃比フィードバック補正量に
もとづいて更新する手段と、この大領域マップ上での学
習値の更新回数を計測する手段と、この計測値が所定値
以上になったかどうかを判定する手段と、この判定結果
より計測値が所定値以上になったとき前記大領域マップ
上での学習値を固定した状態で前記小領域マップ上での
学習値を前記空燃比フィードバック補正量にもとづいて
更新する手段と、エンジンの始動からの総サイクル数ま
たはエンジン回転数の積算値が所定値以下であるかどう
かを判定する手段と、この判定結果より始動からの総サ
イクル数またはエンジン回転数の積算値が所定値以下の
とき必ず前記大領域マップ上での学習値を前記空燃比フ
ィードバック補正量にもとづいて更新する手段とを設け
たので、始動から実際に大領域マップ上での学習値を更
新した回数をカウントできることになり、大領域マップ
上での学習値の更新を確実に行わせた後で、従来の学習
値の更新に戻すことができる。
【0115】第3の発明は、第1の発明または第2の発
明において、始動からの経過時間または始動からの総サ
イクル数もしくは回転数の積算値と比較する前記所定値
がエンジン温度に応じ、エンジン温度が低いほど大きく
なる値であるので、エンジン温度が相違しても適切な所
定値を設定でき、学習値の精度が向上する。
明において、始動からの経過時間または始動からの総サ
イクル数もしくは回転数の積算値と比較する前記所定値
がエンジン温度に応じ、エンジン温度が低いほど大きく
なる値であるので、エンジン温度が相違しても適切な所
定値を設定でき、学習値の精度が向上する。
【0116】第4の発明は、第1の発明から第3の発明
までのいずれか一つにおいて、小領域マップ上での学習
値の更新に移行した後で、小領域マップ上での少なくと
も2つ領域での学習値の更新代が一律であり、かつ小領
域マップ上におけるその少なくとも2つの領域が大領域
マップ上でみて同一の領域にないとき、大領域マップ上
での学習値の更新に所定期間移行させるので、小領域マ
ップ上での学習値の更新に移行後の運転中に、エンジン
を停止しないまま給油し、燃料性状が変化した場合のほ
か、運転中の燃料インジェクターの突然の目詰まりによ
る流量の低下や噴霧状態の変化が起こった場合など、突
発的な要求補正量の変化が運転中に起こったときでも、
すみやかに空燃比を理論空燃比へと戻すことができる。
までのいずれか一つにおいて、小領域マップ上での学習
値の更新に移行した後で、小領域マップ上での少なくと
も2つ領域での学習値の更新代が一律であり、かつ小領
域マップ上におけるその少なくとも2つの領域が大領域
マップ上でみて同一の領域にないとき、大領域マップ上
での学習値の更新に所定期間移行させるので、小領域マ
ップ上での学習値の更新に移行後の運転中に、エンジン
を停止しないまま給油し、燃料性状が変化した場合のほ
か、運転中の燃料インジェクターの突然の目詰まりによ
る流量の低下や噴霧状態の変化が起こった場合など、突
発的な要求補正量の変化が運転中に起こったときでも、
すみやかに空燃比を理論空燃比へと戻すことができる。
【0117】第5の発明は、第1の発明から第3の発明
までのいずれか一つにおいて、小領域マップ上での学習
値の更新に移行した後で、小領域マップ上での少なくと
も2つの領域の各学習値とその各領域が含まれる大領域
マップ上での領域の各学習値との和が一定の割合で更新
され、かつ小領域マップ上におけるその少なくとも2つ
の領域が大領域マップ上でみて同一の領域にないとき、
大領域マップ上での学習値の更新に所定期間移行させる
ので、小領域マップ上での少なくとも2つの領域として
低速低負荷領域と高速高負荷域が選択されるときでも、
小領域マップ上での学習値の更新に移行した後での運転
中における突発的な要求補正量の変化に精度良く対応で
きる。
までのいずれか一つにおいて、小領域マップ上での学習
値の更新に移行した後で、小領域マップ上での少なくと
も2つの領域の各学習値とその各領域が含まれる大領域
マップ上での領域の各学習値との和が一定の割合で更新
され、かつ小領域マップ上におけるその少なくとも2つ
の領域が大領域マップ上でみて同一の領域にないとき、
大領域マップ上での学習値の更新に所定期間移行させる
ので、小領域マップ上での少なくとも2つの領域として
低速低負荷領域と高速高負荷域が選択されるときでも、
小領域マップ上での学習値の更新に移行した後での運転
中における突発的な要求補正量の変化に精度良く対応で
きる。
【図1】一実施例のシステム図である。
【図2】有効パルス幅Teの算出を説明するための流れ
図である。
図である。
【図3】燃料噴射パルス幅Tiの算出と燃料噴射を説明
するための流れ図である。
するための流れ図である。
【図4】空燃比フィードバック補正係数αの算出を説明
するための流れ図である。
するための流れ図である。
【図5】2種類の学習値Lα1とLα2の入る領域を示
す特性図ある。
す特性図ある。
【図6】学習値の読みだしを説明するための流れ図であ
る。
る。
【図7】2種類の学習値Lα1とLα2の更新の様子を
示す説明図である。
示す説明図である。
【図8】学習値Lα1とLα2の更新を説明するための
流れ図である。
流れ図である。
【図9】始動からの学習値の更新を説明するための流れ
図である。
図である。
【図10】第1実施例の作用を説明するための領域図で
ある。
ある。
【図11】第2実施例の学習値Lα1とLα2の更新を
説明するための流れ図である。
説明するための流れ図である。
【図12】第1の発明のクレーム対応図である。
【図13】第2の発明のクレーム対応図である。
6 燃料インジェクター(燃料供給手段) 11 ECU 12 エアフローメーター 13 クランク角度センサー 14 水温センサー 15 O2センサー(酸素濃度センサー) 31 基本噴射量算出手段 32 酸素濃度センサー 33 空燃比フィードバック補正量算出手段 34 大領域マップ上学習値メモリー 35 小領域マップ上学習値メモリー 36 メモリー値保持手段 37 領域判定手段 38 学習値読出手段 39 燃料噴射量算出手段 40 燃料供給手段 41 大領域マップ上学習値優先更新手段 42 更新回数計測手段 43 判定手段 44 小領域マップ上学習値更新手段 45 判定手段 46 大領域マップ上学習値更新手段 51 判定手段 52 大領域マップ上学習値更新手段
Claims (5)
- 【請求項1】運転条件に応じた基本噴射量を算出する手
段と、 排気中の酸素濃度を検出するセンサーと、 このセンサー出力にもとづいて空燃比が理論空燃比の近
くに制御されるように空燃比フィードバック補正量を算
出する手段と、 運転領域を大きく区分したマップ上の領域ごとに学習値
を格納するメモリーと、 運転領域を小さく区分したマップ上の領域ごとに学習値
を格納するメモリーと、 これらのメモリーの値がエンジンの停止後も消失しない
ように保持する手段と、 現在の運転条件が前記大領域マップ上におけるいずれの
領域におよび前記小領域マップ上におけるいずれの領域
に属するかを判定する手段と、 この判定結果より現在の運転条件の属する領域に格納さ
れている学習値を前記大領域マップおよび小領域マップ
からそれぞれ読み出す手段と、 この読み出された2つの学習値と前記空燃比フィードバ
ック補正量で前記基本噴射量を補正して燃料噴射量を算
出する手段と、 この噴射量の燃料を吸気管に供給する手段と、 前記大領域マップ上での学習値を前記小領域マップ上で
の学習値に優先して前記空燃比フィードバック補正量に
もとづいて更新する手段と、 この大領域マップ上での学習値の更新回数を計測する手
段と、 この計測値が所定値以上になったかどうかを判定する手
段と、 この判定結果より計測値が所定値以上になったとき前記
大領域マップ上での学習値を固定した状態で前記小領域
マップ上での学習値を前記空燃比フィードバック補正量
にもとづいて更新する手段と、 エンジンの始動からの経過時間が所定値以下であるかど
うかを判定する手段と、 この判定結果より始動からの経過時間が所定値以下のと
き必ず前記大領域マップ上での学習値を前記空燃比フィ
ードバック補正量にもとづいて更新する手段とを設けた
ことを特徴とするエンジンの空燃比学習制御装置。 - 【請求項2】運転条件に応じた基本噴射量を算出する手
段と、 排気中の酸素濃度を検出するセンサーと、 このセンサー出力にもとづいて空燃比が理論空燃比の近
くに制御されるように空燃比フィードバック補正量を算
出する手段と、 運転領域を大きく区分したマップ上の領域ごとに学習値
を格納するメモリーと、 運転領域を小さく区分したマップ上の領域ごとに学習値
を格納するメモリーと、 これらのメモリーの値がエンジンの停止後も消失しない
ように保持する手段と、 現在の運転条件が前記大領域マップ上におけるいずれの
領域におよび前記小領域マップ上におけるいずれの領域
に属するかを判定する手段と、 この判定結果より現在の運転条件の属する領域に格納さ
れている学習値を前記大領域マップおよび小領域マップ
からそれぞれ読み出す手段と、 この読み出された2つの学習値と前記空燃比フィードバ
ック補正量で前記基本噴射量を補正して燃料噴射量を算
出する手段と、 この噴射量の燃料を吸気管に供給する手段と、 前記大領域マップ上での学習値を前記小領域マップ上で
の学習値に優先して前記空燃比フィードバック補正量に
もとづいて更新する手段と、 この大領域マップ上での学習値の更新回数を計測する手
段と、 この計測値が所定値以上になったかどうかを判定する手
段と、 この判定結果より計測値が所定値以上になったとき前記
大領域マップ上での学習値を固定した状態で前記小領域
マップ上での学習値を前記空燃比フィードバック補正量
にもとづいて更新する手段と、 エンジンの始動からの総サイクル数またはエンジン回転
数の積算値が所定値以下であるかどうかを判定する手段
と、 この判定結果より始動からの総サイクル数またはエンジ
ン回転数の積算値が所定値以下のとき必ず前記大領域マ
ップ上での学習値を前記空燃比フィードバック補正量に
もとづいて更新する手段とを設けたことを特徴とするエ
ンジンの空燃比学習制御装置。 - 【請求項3】始動からの経過時間または始動からの総サ
イクル数もしくは回転数の積算値と比較する前記所定値
がエンジン温度に応じ、エンジン温度が低いほど大きく
なる値であることを特徴とする請求項1または2に記載
のエンジンの空燃比学習制御装置。 - 【請求項4】小領域マップ上での学習値の更新に移行し
た後で、小領域マップ上での少なくとも2つ領域での学
習値の更新代が一律であり、かつ小領域マップ上におけ
るその少なくとも2つの領域が大領域マップ上でみて同
一の領域にないとき、大領域マップ上での学習値の更新
に所定期間移行させることを特徴とする請求項1から3
までのいずれか一つに記載のエンジンの空燃比学習制御
装置。 - 【請求項5】小領域マップ上での学習値の更新に移行し
た後で、小領域マップ上での少なくとも2つの領域の各
学習値とその各領域が含まれる大領域マップ上での領域
の各学習値との和が一定の割合で更新され、かつ小領域
マップ上におけるその少なくとも2つの領域が大領域マ
ップ上でみて同一の領域にないとき、大領域マップ上で
の学習値の更新に所定期間移行させることを特徴とする
請求項1から3までのいずれか一つに記載のエンジンの
空燃比学習制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP15490094A JPH0821280A (ja) | 1994-07-06 | 1994-07-06 | エンジンの空燃比学習制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP15490094A JPH0821280A (ja) | 1994-07-06 | 1994-07-06 | エンジンの空燃比学習制御装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0821280A true JPH0821280A (ja) | 1996-01-23 |
Family
ID=15594422
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP15490094A Pending JPH0821280A (ja) | 1994-07-06 | 1994-07-06 | エンジンの空燃比学習制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0821280A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6522247B2 (en) | 2000-05-23 | 2003-02-18 | Kabushiki Kaisha Toshiba | Apparatus monitoring system and apparatus monitoring method |
-
1994
- 1994-07-06 JP JP15490094A patent/JPH0821280A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6522247B2 (en) | 2000-05-23 | 2003-02-18 | Kabushiki Kaisha Toshiba | Apparatus monitoring system and apparatus monitoring method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7209826B2 (en) | Fuel properties estimation for internal combustion engine | |
US6234156B1 (en) | Method and apparatus for controlling air-fuel ratio in engines | |
JP3577770B2 (ja) | エンジンの空燃比制御装置 | |
JP2003206805A (ja) | エンジンの空燃比制御装置 | |
JP3644172B2 (ja) | エンジンの空燃比制御装置 | |
JP3903925B2 (ja) | 内燃機関の燃料性状推定装置 | |
JPH0821280A (ja) | エンジンの空燃比学習制御装置 | |
JP2532205B2 (ja) | エンジンの空燃比学習制御方法 | |
JP3006304B2 (ja) | 多種燃料エンジンの空燃比制御装置 | |
JP3404911B2 (ja) | エンジンの空燃比制御装置 | |
JP2524698B2 (ja) | 自動車用エンジンの学習制御方法 | |
JPH04279746A (ja) | 内燃機関の燃料性状検出装置 | |
JPH07107376B2 (ja) | 自動車用エンジンの学習制御方法 | |
JPH07180580A (ja) | エンジンの空燃比制御装置 | |
JP3003488B2 (ja) | エンジンの蒸発燃料処理装置 | |
JP3183068B2 (ja) | 内燃機関の燃料供給量制御装置 | |
JP2757064B2 (ja) | 内燃機関の空燃比制御装置 | |
JPH0734931A (ja) | エンジンの安定度制御装置 | |
JP3622396B2 (ja) | エンジンの空燃比制御装置 | |
JP2757065B2 (ja) | 内燃機関の空燃比制御装置 | |
JPH02191839A (ja) | エンジンの空燃比制御装置 | |
JPH08261037A (ja) | エンジンの空燃比制御装置 | |
JP2861034B2 (ja) | Lpgエンジンの空燃比制御装置 | |
JP3446421B2 (ja) | エンジンの空燃比制御装置 | |
JP2750777B2 (ja) | 内燃機関の電子制御燃料供給装置 |