JPH04203235A - 内燃機関の空燃比学習制御装置 - Google Patents

内燃機関の空燃比学習制御装置

Info

Publication number
JPH04203235A
JPH04203235A JP32560790A JP32560790A JPH04203235A JP H04203235 A JPH04203235 A JP H04203235A JP 32560790 A JP32560790 A JP 32560790A JP 32560790 A JP32560790 A JP 32560790A JP H04203235 A JPH04203235 A JP H04203235A
Authority
JP
Japan
Prior art keywords
air
fuel ratio
learning
region
area
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.)
Granted
Application number
JP32560790A
Other languages
English (en)
Other versions
JP2640566B2 (ja
Inventor
Shinpei Nakaniwa
伸平 中庭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Unisia Automotive Ltd
Original Assignee
Japan Electronic Control Systems Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Japan Electronic Control Systems Co Ltd filed Critical Japan Electronic Control Systems Co Ltd
Priority to JP32560790A priority Critical patent/JP2640566B2/ja
Publication of JPH04203235A publication Critical patent/JPH04203235A/ja
Application granted granted Critical
Publication of JP2640566B2 publication Critical patent/JP2640566B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Electrical Control Of Air Or Fuel Supplied To Internal-Combustion Engine (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〈産業上の利用分野〉 本発明は内燃機関の空燃比学習制御装置に関し、詳しく
は、メモリ容量を節約しつつより細かな運転領域別の空
燃比補正要求に対応することを可能とした装置に関する
〈従来の技術〉 従来、空燃比フィードバック補正制御機能をもつ電子制
御燃料噴射装置を備えた内燃機関においては、特開昭6
0−90944号公報、特開昭61−1901.42号
公報等に開示されるように、空燃比の学習制御か採用さ
れているものかある。
空燃比フィードバック補正制御は、機関に吸入される空
気量に関与する機関運転状態のパラメータ(例えは吸入
空気流量Qと機関回転速度N)から算出される基本燃料
噴射量Tpを、機関排気系に設けた酸素センサにより判
別される目標空燃比(例えは理論空燃比)に対するリッ
チ・リーンに基づいて比例・積分制御などにより設定さ
れる空燃比フィードバック補正係数LMDにより補正す
ることで、実際の空燃比を目標空燃比にフィードバック
制御するものである。
ここで、前記空燃比フィードバック補正係数LMDの基
準値(実質的に燃料量を補正しない値であり目標収束値
となる)からの偏差を、予め定めた複数に区分された運
転領域毎に学習して学習補正係数KBLRCを定め、基
本燃料噴射量Tpを前記学習補正係数KBLRCにより
補正して、補正係数LMDなしで得られるベース空燃比
か略目標空燃比に一致するようにし、空燃比フィードバ
ック制御中は更に前記補正係数LMDで補正して燃料噴
射量Tiを演算するものである。
これにより、運転条件毎に異なる空燃比補止の要求値に
対応した補正が行え、空燃比フィードバック補正係数L
MDを基準値付近に安定させて、特に過渡時の空燃比制
御性を向上させることができる。
〈発明が解決しようとする課題〉 ところで、前述のように運転領域毎に学習補正係数KB
LRCを設定して、運転条件による補正要求の違いに対
応した空燃比補正か行えるようにする場合には、学習マ
ツプにおける区分運転領域を極力細かくして、1つの学
習補正係数KBLRCでカバーする運転領域を狭くする
ことが望まれる。しかしなから、運転領域を細かく区分
してそれぞれの領域毎に学習補正係数KB[、RCを学
習記憶させるよう構成すると、学習補正係数KBLRC
を記憶しておくための必要メモリ容量が大きくなってし
まうと共に、各運転領域毎の学習機会が減少して学習の
進行が遅くなってしまうという問題がある。
そこで、従来では、メモリ容量の節約及び学習進行速度
の確保に対してより重点か置かれ、運転領域を充分に細
かく区分して学習を行わせることは困難て゛あった。
ここで、学習領域を比較的大きく区分した場合に発生す
る問題点の具体例を説明すると、例えは第13図に示す
ように回転速度が高くなるに従って空燃比がリッチ化す
るような空燃比変化の特性を有する部品劣化か発生した
場合で、第12図に示すようにブースト一定で回転速度
がゆっくりと」二昇する場合に、以下のような問題が発
生することがあった。
即ち、第12図に示すようにブースト(基本燃料噴射量
)一定で回転速度かゆっくり変化する場合には、第13
図に示すような空燃比変化の特性であるから、回転上昇
に伴ってリーン化補正量を増大させていく必要がある。
ところが、例えば基本燃料噴射量Tpと機関回転速度N
とに基づいて複数に区分した運転領域毎に学習補正係数
K B LRCを学習させる場合、1つの運転領域には
回転速度の1]かあるから、該当する領域を抜ける寸前
の高回転側の最も大きなリーン化要求補正量かそれぞれ
の学習領域に対応して学習記憶されることになる。
従って、このような学習かなされた後、再び同じ領域に
低回転側から入った場合には、第12図に示すように、
学習補正係数K B L RCによるリーン化補正が過
大となってベース空燃比かリーン化してしまい、全体的
なベース空燃比傾向としてリーン化し、また、逆に回転
がゆっくり減少する状態で学習かなされると、各学習領
域には、該学習領域内での最も小さなリーン化補正量が
学習記憶されることになるので、同じような運転を再度
繰り返すと今度は平均的なベース空燃比か逆にリッチ化
することになってしまう。
即ち、学習補正係数KBLRCを学習させる区分運転領
域はある大きさを有するから、特にゆっくりと運転条件
か変化するときには、該当する領域を抜は出る寸前の運
転条件に見合った学習値が、その領域全体に適用される
学習値として記憶されることになってしまうので、1つ
の学習領域の中ての要求補正量の段差が大きいときほど
、空燃比制御性を悪化させることになっていたものであ
る。
かかる問題は、運転領域を充分に細かく区分し、1つの
区分領域の中ての要求補正値の変化を少なくすれは良い
か、前述のようにメモリ容量や学習進行速度の点を考慮
すると、充分に運転領域を細かく区分しての学習を行わ
せることかできなかったものである。
本発明は」1記問題点に鑑みなされたものであり、運転
条件の違いによる補正要求の違いに充分に細かく対応し
て、精度の良い空燃比制御が行え、然も、メモリ容量を
節約でき、かつ、学習進行速度も確保てきる空燃比学習
制御装置を提供することを目的とする。
〈課題を解決するための手段〉 そのため本発明にかかる内燃機関の空燃比学習制御装置
は、第1図に示すように構成される。
第1図において、運転条件検出手段は、機関に吸入され
る空気量に関与する運転パラメータを少なくとも含む機
関運転条件を検出し、基本燃料供給量設定手段は、前記
機関運転条件に基づいて基本燃料供給量を設定する。
また、空燃比検出手段は、機関吸入混合気の空燃比を検
出し、空燃比フィードバック補正値設定手段は、前記検
出された実際の空燃比と目標空燃比とを比較して実際の
空燃比を前記目標空燃比に近づけるように基本燃料供給
量を補正するための空燃比フィードバック補正値を設定
する。
一方、学習補正値領域別記憶手段は、機関運転条件に基
づき複数に区分される運転領域別に前記基本燃料供給量
を補正するための空燃比学習補正値をそれぞれ書き換え
可能に記憶するものてあり、学習修正手段は、空燃比フ
ィードバック補正値の目標収束値からの偏差を学習し、
前記偏差を減少させる方向に前記学習補正値領域別記憶
手段に記憶されている該当する運転領域の空燃比学習補
正値を修正して書き換える。
また、細分領域別記憶手段は、学習補正値領域別記憶手
段における区分運転領域を更に複数に区分する各運転領
域それぞれに対応させて前記室yl’#修正手段により
学習修正された空燃比学習補正値を記憶する。
そして、平均値による修正手段は、学習補正値領域別記
憶手段における複数の区分運転領域の中の該当する区分
運転領域か変化するときに、前記細分領域別記憶手段に
記憶されている学習補正値領域別記憶手段の1つの区分
運転領域に対応する複数の空燃比学習補正値の平均値を
求め、該平均値に基づいて学習補正値領域別記憶手段の
該当する区分運転領域の空燃比学習補正値を書き換え修
正する。
ここで、燃料供給量設定手段は、基本燃料供給量、空燃
比フィードバック補正値、及び、学習補正値領域別記憶
手段に記憶されている該当する区分運転領域の空燃比学
習補正値に基づいて最終的な燃料供給量を設定し、燃料
供給制御手段は、前記設定された燃料供給量に基づいて
燃料供給手段を駆動制御する。
〈作用〉 かかる構成によると、学習補正値領域別記憶手段の1つ
の区分領域に、現在の運転条件が該当するときに、前記
学習補正値領域別記憶手段の該当領域に記憶されている
空燃比学習補正値か修正書き換えられると共に、前記1
つの区分領域を更に複数に区分する領域毎に前記空燃比
学習補正値が細分領域別記憶手段によって記憶される。
即ち、学習補正値領域別記憶手段の1つの区分領域に該
当する状態であっても、該1つの区分領域の中で運転条
件か変化すると、より細分化された領域毎にそのときの
空燃比学習補正値が記憶され、前記1つの区分領域を更
に細分した領域毎の学習が行才つれる。
ここて、学習補正値領域別記憶手段における区分運転領
域の中で該当する領域が変化するときに、前記細分領域
別記憶手段に記憶されている複数の空燃比学習補正値の
平均値に基づいて学習補正値領域別記憶手段の該当する
区分運転領域の空燃比学習補正値か書き換え修正される
ので、学習補正値領域別記憶手段における該当領域の中
ての平均的な補正要求に対応した学習かなされる。
更に、前記平均値に基づく書き換え修正後は細分領域別
記憶手段の記憶内容は不要となるので、細分領域別記憶
手段は、学習補正値領域別記憶手段の1つの区分領域を
更に複数に区分する区分数相当の空燃比学習補正値を記
憶する容量かあれは充分てあり、記憶容量の増大を抑止
できる。
〈実施例〉 以下に本発明の詳細な説明する。
一実施例を示す第2図において、内燃機関lにはエアク
リーナ2から吸気ダクト3.スロットル弁4及び吸気マ
ニホールド5を介して空気か吸入される。吸気マニホー
ルド5のブランチ部には各気筒別に燃料供給手段として
の燃料噴射弁6か設けられている。この燃料噴射弁6は
、ソレノイドに通電されて開弁し、通電停止されて閉弁
する常閉型の電磁式燃料噴射弁であって、後述するコン
トロールユニット 通電されて開弁し、図示しない燃料ポンプから圧送され
てプレッシャレギュレータにより所定の圧力に調整され
た燃料を噴射供給する。
機関1の各燃焼室には点火栓7か設けられていて、これ
により火花点火して混合気を着火燃焼させる。そして、
機関1からは、排気マニホールド8、排気ダクI〜9,
三元触媒IO及びマフラー11を介して排気か排出され
る。
尚、前記三元触媒10は、NOx,CO,HCを酸化・
還元して無害な成分に転換するものであり、酸化・還元
の両方で高い転化率を得るには、機関吸入混合気の空燃
比を理論空燃比に制御する必要かあるため、後述する空
燃比のフィードバック制御では、前記理論空燃比を目標
空燃比とした制御か行われるようにしである。
コントロールユニット〜12は、CPU,ROM。
RAM,A/D変換器及び入出力インタフェイスを含ん
で構成されるマイクロコンピュータを備え、各種のセン
サからの入力信号を受け、後述の如く演算処理して、燃
料噴射弁6の作動を制御する。
前記各種のセンサとしては、吸気ダクト3中にエアフロ
ーメータ13か設けられていて、機関1の吸入空気流量
Qに応じた信号を出力する。
また、クランク角センサ14が設けられていて、4気筒
の場合、クランク角180°毎の基準信号REFと、ク
ランク角10又は2°毎の単位信号POSとを出力する
。ここで、基準信号REFの周期、或いは、所定時間内
における単位信号POSの発生数を計測することにより
、機関回転速度Nを算出できる。
また、機関1のウォータジャケットの冷却水温度Twを
検出する水温センサ15が設けられている。
また、排気マニホールド8の集合部に空燃比検出手段と
しての酸素センサ16が設けられ、排気中の酸素濃度を
介して吸入混合気の空燃比を検出する。前記酸素センサ
16は、排気中の酸素濃度が理論空燃比を境に急変する
ことを利用して、実際の空燃比の理論空燃比に対するリ
ッチ・リーンを検出する公知のものである。
ここにおいて、コン)・ロールユニッ1〜12に内蔵さ
れたマイクロコンピュータのCPUは、第3図〜第8図
のフローチャートにそれぞれ示すROM上のプログラム
に従って演算処理を行い、空燃比フィードバック補正制
御及び運転領域毎の空燃比学習補正制御を実行しつつ燃
料噴射量Tiを設定し、機関1への燃料供給を制御する
ようになっている。
尚、本実施例において、基本燃料供給量設定手段、空燃
比フィードバック補正値設定手段、燃料供給量設定手段
、燃料供給制御手段、学習修正手段、平均値による修正
手段としての機能は、前記第3図〜第8図のフローチャ
ー1〜に示すようにコン1〜ロールユニツI・12かソ
フI〜ウェア的に備えている。また、学習補正値領域別
記憶手段、細分領域別記憶手段は、本実施例においてコ
ンI・ロールユニット12に内蔵されたマイクロコンピ
ュータのバックアップされたRAMが相当するものとす
る。
更に、本実施例における運転条件検出手段は、エアフロ
ーメータ13.クランク角センザ14等か相当する。
まず、第3図のフローチャー1〜に従って、本実施例に
おける空燃比制画の概略を説明し、後に第4図〜第8図
のフローチャー1・に従って詳細な制御5 御内容を説明する。
第3図のフローチャートにおいて、まず、実際の空燃比
を目標空燃比(本実施例では理論空燃比)に近つけるよ
うに基本燃料噴射量Tp(←K X Q/N;には定数
)を補正するための空燃比フィードバック補正係数LM
Dか設定される(ステップA)。
次に、上記の空燃比フィードバック補正係数LMDの目
標収束値(初期値)からの偏差を学習し、基本燃料噴射
量Tpと機関回転速度Nとによって複数に区分された学
習マツプ上の該当領域の学習補正係数K B LRCを
、前記偏差を減少させる方向に修正して書き換える(ス
テップB)。
そして、次には前記学習補正係数KBLRCか前述のよ
うにして運転領域別に記憶される学習マツプ上で、該当
する運転領域が前回と同じであるか否かを判別しくステ
ップC)、該当する領域か前回と同しであるときには、
前記学習マツプの該当領域を更に複数に区分する細分領
域毎に前記学習補正係数K B L RCを記憶させる
(ステップD)。
即ぢ、学習マツプ上の1つの区分領域に止まっている状
態であっても、その中で運転条件(基本燃料噴射量Tp
又は機関回転速度N)が変化し、前記1つの区分領域を
更に区分する複数の細分領域における該当領域が変化す
ると、それぞれに学習補正係数KBLRCが記憶される
ものである。従って、例えは学習マツプ」二の1つの区
分領域を機関回転速度Nに基づいて更に2つに区分した
場合で、回転速度の変動に伴って前記2つの細分領域を
それぞれに通過するような状態のときには、2つの細分
領域それぞれに適合した学習補正係数KBLRCか記憶
されることになる。
一方、学習マツプ上で該当する領域が変化した場合には
、変化前に該当していた学習マツプ上の1つの領域を更
に複数に区分した細分領域毎に記憶されている学習補正
係数KBLRCの平均値に基づいて、変化前の該当領域
に対応する学習補正係数KBLRCを更新設定する(ス
テップE)。
即ち、学習マツプ」二の1つの運転領域に止まっている
ときには、該運転領域を更に複数に区分してそれぞれに
学習させておき、学習マツプ上における該当領域か変化
したときには、変化前の該当領域に対応して記憶されて
いる複数の細分領域毎の学習補正係数KBLRCの平均
値に基づいてマツプ値を更新させるものである。
これにより、学習マツプの1つの区分運転領域の中ての
平均的な補正要求値か学習されることになると共に(第
12図参照)、学習マツプ上の該当領域が変化したとき
に前述のような平均値に基づく処理を行った後は、変化
前の該当領域に対応する細分領域毎の学習補正係数K 
B L RCの記憶データは不要となるため、学習マツ
プのそれぞれの区分領域に対応して細分領域のデータを
記憶保持しておく必要がなく、メモリ容量の節約か図ら
れる。
ここで、上記第3図のフローチャー1・に示した空燃比
学習制御の詳細な実施例を、第4図〜第8図のフローチ
ャーI〜に従って説明する。
第4図のフローチャートに示すプロクラムは、基本燃料
噴射量Tp (←KXQ/N;には定数)に乗算される
空燃比フィードバック補正係数LMD(空燃比フィード
バック補正値)を、比例・積分制御により設定するプロ
グラムであり、機関1の1回転(]、 rev)毎に実
行される。尚、前記空燃比フィードバック補正係数LM
Dの初期値は1てあって、基本燃料噴射量Tpに乗算さ
れる補正項であり、実際の空燃比が目標空燃比である理
論空燃比に近づくように前記基本燃料噴射量Tpを増減
補正して、実際の空燃比を目標空燃比を中心に変動させ
るものである。
まず、ステップ1(図中ではSlとしである。
以下同様)では、酸素センサ(0□/5)16から排気
中の酸素濃度に応じて出力される電圧信号を読み込む。
そして、次のステップ2ては、ステップlで読み込んだ
酸素センサ16からの電圧信号と、目標空燃比(理論空
燃比)相当のスライスレベル(例えば500mV)とを
比較して、機関吸入混合気の空燃比か目標空燃比に対し
てリッチであるかリーンであるかを判別する。
酸素センサ16からの電圧信号がスライスレベルよりも
大きく空燃比がリッチであると判別されたときには、ス
テップ3へ進み、今回のリッチ判別が初回であるか否か
を判別する。
リッチ判別が初回であるときには、ステップ4へ進んで
前回までに設定されている空燃比フィードバック補正係
数LMDを最大値aにセットする。
リッチ判別か初回であるということは、前回まではリー
ン判別がなされており、これによって空燃比フィードバ
ック補正係数LMDの増大制御(−燃料噴射量Tiの増
大補正)が行われていたちのであり、リッチ判別される
と今度は補正係数LMDを減少制御するから、リッチ判
別初回の減少制御前の値が補正係数LMDの最大値とい
うことになる。
次のステップ5ては、前回までの補正係数LMDから所
定の比例定数Pだけ減算して補正係数LMDの減少制i
卸を行い、空燃比がリーン化して目標空燃比に近づくよ
うにする。また、次のステップ6では、比例制御を実行
したことを示すフラグである「P分付加」に1をセット
する。
一方、ステップ3て、リッチ判別か初回てないと判別さ
れたときには、ステップ7へ進み、積分定数1に最新の
燃料噴射量Tiを乗算した値を、前回までの補正係数L
MDから減算して補正係数LMDを更新し、空燃比のリ
ッチ状態が解消されてリーンに反転するまての間、本プ
ログラムが実行される毎にこのステップ7てlXTiず
つの減少制御用を繰り返す。
また、ステップ2て実際の空燃比か1」標空燃比(理論
空燃比)に対してリーンであると判別されたときには、
リッチ判別のときと同様にして、まず、ステップ8て今
回のリーン判別が初回であるか否かを判別し、初回であ
るときには、ステップ9へ進んで前回までの補正係数L
MD、即ち、リッチ判別時に徐々に減少側tKIされて
いた補正係数LMDを最小値すにセットシ、次のステッ
プ10ては、前回までの補正係数LMDに比例定数Pを
加算して更新することにより燃料噴射量Tiの増量補正
を図り、更に、ステップIIては、前記ステップ6と同
様にして比例制御か実行されたことを示すフラグである
前記「P分付加」に1をセットする。
一方、ステップ8でリーン判別か初回でないと判別され
たときには、ステップ12へ進み、積分定数丁に最新の
燃料噴射量Tiを乗算した値を、前回までの補正係数L
MDに加算し、補正係数LMDを徐々に増大させる。
リッチ・リーン判別の初回で補正係数LMDの比例制御
を実行したときには、更に、ステップ13以降の空燃比
学習制御に関わる各種処理を行う。
尚、本実施例では、第9図に示すように、全運転領域を
基本燃料噴射量Tpと機関回転速度Nとをパラメータと
して複数に区分して、該区分領域毎に空燃比学習補正値
を書き換え可能に記憶保持する学習マツプを2つ備えて
おり、一方の学習マツプは4×4格子で全運転領域を1
6の単位領域に区分し、また、他方の学習マツプは、1
6X16格子で全運転領域を256の単位運転領域に区
分するようにしてあり、4×4格子マツプの1つの区分
運転領域か16X1.6格子の学習マツプにより更に4
×4−16領域に細分化されるようにしである。また、
上記のように運転領域を区分しない全運転領域に適合さ
れる空燃比学習補正値も別途学習設定されるようにしで
ある。
ステップI3ては、4×4格子で分けられる16運転領
域の中の1つの領域に安定して止まっているか否かを判
別するためのカラン1〜値cntかゼロであるか否かを
判別する。
後述する第5図のフローチャー1〜において、4×4格
子で分けられる運転領域の中で該当する運転領域か所定
微小時間毎に変化しているときに、前記カウント値cn
tには所定値(例えば4)かセラ1〜されるようになっ
ており、ステップ13てカウント値antがゼロてない
と判別されると、ステップ14へ進んてカラン1〜値c
ntを1タウンさせる処理を行うから、4×4格子の中
の1つの運転領域に止まるようになってからカウント値
cntは補正係数LMDの比例制御毎に1ダウンされる
ことになり、カウント値cntかゼロであるときには4
×4格子の中の1つ領域に安定して止まっている状態で
あると見做すことかできるようにしである。
尚、前記カウント値cntかセロであるか否かを判別す
ることて、後述するように学習更新を行うか否かを判別
し、運転領域が変化した初期には学習か行われないよう
にしである。
ステップ15では、前記4×4格子の学習マツプのそれ
ぞれの区分運転領域に対応する空燃比学習補正値か殆ど
学習済であるか否かを判別する。
ここで、4×4格子の学習マツプ上て殆との領域か学習
済であると判別されるときには、基本的に全運転領域て
略ベース空燃比か目標空燃比に学習制御されるものと推
定され、この場合には、次のステップ16へ進み、1.
6X16格子の学習マツプ上で該当する運転領域が前回
と同しであるか又は変化したかを、フラグfzに基づい
て判別する。
前記フラグfzは、後述する第5図のフローチャー1・
において設定されるものであり、フラグfZに1かセッ
トされているときには、16X16格子の学習マツプ上
で該当する運転領域が変化したことを示し、ゼロかセラ
I・されているときには、該当領域か前回と同じである
ことを示す。
ここで、フラグfzにゼロかセラI・されているときに
は、そのまま本プログラムを終了させるが、フラグfz
に1かセットされているときには、ステップ17へ進む
ステップ17ては、最新の補正係数LMD平均値の目標
収束値(−1,0)に対する偏差の絶対値と、前回にお
ける前記偏差の絶対値との差を求め、がかる値に基づい
て学習値の不適切度合いを示す△ストレスのマツプを参
照し、Δストレスを補正係数LN・IDの平均値変動が
大きいときほど増大設定する。
即ち、4×4格子の学習マツプの学習は略終了している
状態であるから、運転条件が変化しても、学習か精度良
く進行していれは、かがる運転条件の変化による要求補
正量の違いに対応してベース空燃比の変化は小さいレベ
ルに抑止されるはずである。ここで、運転条件の変化に
よるベース空燃比の変化が大きく、空燃比フィードバッ
ク補正量数LMDが目標収束値から大きく変化してこれ
を補償した場合には、学習値か不適切であることを間接
的に示すので、前記補正係数LMDの変動レベルに応じ
て学習値の不適切度合いを示すΔストレスを設定するも
のである。
更に、ステップ18では、前記△ストレスを積算し、該
積算結果をス1〜レスとして記憶するようにしである。
後述するようにこのスI・レスか所定以上になると、既
に学習済の空燃比学習補正係数か不適切であるものと判
断し、学習を最初からやり直すようになっている。
次のステップ19ては、前記フラグfzをゼロリセット
シ、16X16格子の学習マツプ上での該当領域が変化
したときに改めてlかセラI・されるようにする。
そして、ステップ20ては、16X 16格子の学習マ
ツプ上で該当する区分運転領域を、第10図に示すよう
に、機関回転速度Nに基づいて更に2つに区分してなる
細分領域の経験状態を示す領域カウンタAcntの判別
を行う。
即ち、16X16格子の学習マツプ上の1つの区分運転
領域に止まっている状態において、後述するように、該
区分運転領域を更に2つに区分してなる細分領域の低回
転側のみを経験したときには前記領域カウンタAcnt
に1かセットされ、高回転側のみを経験したときには前
記領域カウンタAcntに2がセットされ、両方の領域
を経験したときには前記領域カウンタA、 c n、 
tに3がセットされるようになっている(第5図のフロ
ーチャート参照)。
ここで、前記領域カウンタA、 c n tに1かセッ
トされていると判別され、16X 16格子の学習マツ
プ上の1つの区分運転領域に止まっている状態で、該区
分領域の中の低回転側のみを経験したときには、前記低
回転側の細分領域に対応して記憶されている学習補正係
数KBLRC2としてのrelを、ステップ21でre
gにセットする。同様に、領域カウンタAcntに2か
セットされていて、高回転側の細分領域のみを経験した
場合には、前記高回転側の細分領域に対応して記憶され
ている学習補正係数K B L RC2としてのre2
をステップ22でregにセットする。更に、領域カウ
ンタA c n、 tに3かセラ1〜されていて、低回
転側と高回転側との両方を経験した場合には、両方の細
分領域それぞれに対応して記憶されているrel、、r
e2の平均値をステップ23てregにセットする。
そして、次のステップ24では、前記regにセットさ
れた学習補正係数K B L RC2を、16X1.6
格子の学習マツプで前回まで該当していた領域(s、t
)の学習補正係数KBLRC2としてマツプ値の更新を
行う。
即ち、16X16格子の学習マツプの各運転領域それぞ
れには、学習補正係数KBLRC2が書き換え可能に記
憶されており、後述するように該当する運転領域の前記
学習補正係数KBLRC2が、前記空燃比フィードバッ
ク補正係数LMDの目標収束値に対する偏差に基づいて
学習・更新されるが、かかる学習マツプの書き換え修正
とは別に、該当する運転領域を機関回転速度Nに基づい
て更に2つに区分した2つの細分領域を設定し、それぞ
れの細分領域に含まれているときに学習更新された前記
学習補正係数KBLRC2を、それぞれの細分領域に対
応させて逐次更新記憶するようになっている。
そして、16X 16格子の学習マツプ」二で該当する
領域が変化した場合には、前回までに該当していた領域
に対応する細分領域毎の学習補正係数KBLRC2デー
タに基づいて16X 16格子の学習マツプの書き換え
を行うものである。
ここて、16X16格子の学習マツプの該当領域で低回
転側又は高回転側のいずれか一方のみを経験した場合に
は、16X 16格子の学習マツプの該当領域に対応し
て学習記憶されている学習補正係数KBLRC2は、細
分領域に対応するデータrel又はre2と同じになっ
て、実質的にステップ24における更新設定は効力を発
揮しないが、低回転側と高回転側との両方を経験した場
合には、16X16格子の学習マツプの該当領域の中に
おいて、低回転側と高回転側とての平均的な補正要求値
か学習補正係数K B L RC2として設定されるこ
とになる。
例えは、16X 16格子の学習マツプ上のある学習領
域に低回転側から入って、高回転側に移行してから別の
領域に移ったとすると、同じ学習領域内であっても回転
速度の違いによって補正要求に違いがあれば、relと
re2とのデータは前記補正要求の違いに対応した異な
るデータとなり、これらの平均値を学習マツプにおける
更新データとすれば、1.6X16格子の学習マツプの
1つの区分領域内における低回転側と高回転側とでの平
均的な補正要求に対応した学習がなされるものである。
上記のような処理を行わない場合に、例えば回転速度が
ゆっくり上昇すると、16X16格子の学習マツプ上の
該当領域の学習は、該領域を抜ける直前の高回転側に対
応した学習となり、このような学習がなされた領域に次
に低回転側から入ると、高回転側の要求に対応した補正
値が学習されているので、回転による補正要求に大きな
差異かある場合には、大きな空燃比段差が発生すること
になってしまう。
かかる問題を解消するには、16X16格子の学習マツ
プよりも更に細かく運転領域を区分する学習マツプを設
けるようにすれは良いが、この場合、学習マツプのため
のメモリ容量が大幅に増大してしまう。これに対し、本
実施例の場合では、16×16格子の学習マツプのメモ
リ容量(256個の学習補正係数KBLRC2)に加え
、1.6X16格子マツプの1つの領域を2つに細分す
るそれぞれの細分領域に対応する2つの学習補正係数K
B LRC2を記憶できるメモリ容量があれば、16X
 16X 2 =51.2領域に分けて学習させた場合
と路間等な空燃比制i卸性か得られるものであり、メモ
リ容量を節約しつつ、より細かな領域毎の補正要求に対
応できる。
また、前記512領域を全て経験しなくても、16×1
6格子の256学習領域の学習は進行するので、細かな
運転領域別の補正要求に答えるために、学習進行か妨げ
られることもない。
次のステップ25ては、前記領域カウンタAcntをゼ
ロリセットし、また、次のステップ26では、16X1
6格子の学習マツプ上の該当領域を2つに区分する細分
領域のいずれに該当しているかを示す領域ナンバーAn
oをゼロリセッl−L、16X1.6格子の学習マツプ
において新たに該当するようになった領域での学習に備
える。
第5図のフローチャー1・に示すプロクラムは、運転領
域別の空燃比学習プログラムてあり、所定微小時間(例
えはtoms)毎に実行される。
ステップ31ては、前記第4図のフローチャートて空燃
比フィードバック補正係数LMDの比例制御を行ったと
きに1がセットされるフラグであるP分付加の判別を行
い、P分付加が1であるときには、ステップ32へ進み
P分付加をゼロリセットした後、本プログラムによる各
種処理を行い、ゼロであるときにはそのまま本プログラ
ムを終了させる。即ち、第5図のフローチャートに示す
プログラムは、空燃比フィードバック補正係数LMDを
比例制御する毎に1回実行されるようになっている。
ステップ32てP分付加をゼロリセットすると、次のス
テップ33ては、全運転領域に共通の空燃比□学習補正
値である学習補正係数KBLRCφ(初期値1)が学習
済であるか否かを示すフラグFφの判別を行う。
ここで、フラグFφかゼロてあって学習補正係数KBL
RCφの学習か済んでいないときには、ステップ34へ
進み、前記補正係数LMDの最大・最小値a、bの平均
値(←(a+1つ)/2)が略1であるか否かを判別す
る。
(a+b)/2が略1でないときには、ステップ36へ
進み、(a十b)/2から補正係数LMDの目標収束値
Target (本実施例では初期値である1、0)を
減算した値に所定係数Xを掛けた値を前回までの学習補
正係数KBLRCφに加算し、該加算結果を新たな学習
補正係数KBLRCφとして設定する。
また、ステップ36では、4×4格子マツプ及び16X
16格子マツプのそれぞれの区分運転領域毎に記憶され
る学習補正係数KBLRCI及び学習補正係数KBLR
C2に全て初期値である1、0をセラl−して、初期状
態に戻しておく。従って、上記学習補正係数KBLRC
φを新たに学習更新するときには、たとえそれまでに4
×4格子マツプ及び16X]、6格子マツプに学習値が
記憶されていても、そのデータをリセットした上で学習
補正係数KBLRCφからの学習を行わせるものである
一方、前記ステップ34で(a+b)/2が略1である
と判別されると、ステップ35で前記フラグFφに1を
セットシて、全運転領域に対応する学習補正係数KBL
RCφの学習か済んでいること、換言すれば、学習補正
係数K B L RCφを学習更新させた結果空燃比フ
ィードバック補正係数LMDか略Iに収束したことが判
別できるようにする。
また、ステップ33て前記フラグFφカ月であると判別
された場合には、全運転領域に対応する学習補正係数K
BLRCφの学習が済んでいることを示すから、今度は
運転領域を基本燃料噴射量Tpと機関回転速度Nとに基
づいて複数に区分した各領域毎の空燃比学習を行う。
まず、最初に、1.6X16格子の学習マツプ上で現在
の運転条件か該当する領域の特定を行う。
ステップ37では、現在の基本燃料噴射量Tpか16X
1.6格子学習マツプ上の16格子の何番目に含まれる
かを判別するためのカウンタ値iにゼロをセットシ、次
のステップ38ては、前記カウンタ値iが15を越える
か否かを判別し、15を越えていないときには、ステッ
プ39でカウント値iに対応する基本燃料噴射量Tpの
しきい値Tp (:i)と最新に演算された基本燃料噴
射量Tpとを比較する。
ステップ39でしきい値Tp (i)よりも最新の基本
燃料噴射量Tpか小さいと判別されたときには、そのと
きのカウント値iか、最新の基本燃料噴射量Tpが16
格子上で該当する領域位置を示すものとしてステップ4
2以降へ進む。即ち、各区分領域の最大基本燃料噴射量
Tpを予めしきい値Tp (i)として設定しておき、
最新の基本燃料噴射量Tpと前記しきい値Tp Ci:
l とを、しきい値の小さい側から順に比較していって
初めてTp(ill >’l’pとなった時点の1が、
現在のTpか該当するTp領領域位置を示すものとして
設定する。
また、ステップ39てTp (i:l ≦Tpであると
判別されたときには、ステップ40へ進んで前記カウン
ト値iを1アツプし、更に1段階大きいTp(i)と最
新のTpとが比較されるようにする。
そして、ステップ40でカウント値iが16にカウンI
〜アップされたときには、0〜15までの16格子(1
6領域)に分けた基本燃料噴射量Tp範囲の初期設定し
た最大値よりも大きな基本燃料噴射量Tpか演算された
状態であり、このときには、ステップ41てiに15を
セットしてからステップ42へ進むようにし、初期設定
されたTp領領域最大Tp領領域現在のTpか含まれる
ものと仮定する。
現在のTpか含まれる領域が上記のようにして特定され
てステップ42へ進むと、前回までのTp該当領域を示
すIと、最新の領域iとを比較する。
ここで、■≠iであると判別された場合には、基本燃料
噴射量Tpか変化して該当領域か変化したときであり、
このときには、ステップ43て前記フラグfzに1をセ
ラ1〜して、1.6X16格子マツプ上における該当領
域の変化が判別されるようにし、次のステップ44では
、変化前の該当領域を示す■をtにセラ1〜し、領域位
置■か最新該当領域を示すデータに更新されても、変化
前の該当領域が前記tによって判別できるようにしてお
く。
更に、ステップ45ては、16X16格子マツプのある
該当領域を、更に2つの細分領域に分けたときに、前記
細分領域のいずれに含まれる状態であるかを示す領域ナ
ンバーをゼロリセットし、次のステップ46では、前記
領域カウンタAcntをゼロリセットシて、変化後の該
当領域での学習が新規に行われるようにする。
ステップ47では、今回新たに求められたTpの該当領
域位置iを、最終的に■にセットする。
次は、機関回転速度Nによる16ブロツク分けのため、
前記基本燃料噴射量Tpのブロック判別と同様にして、
最新の機関回転速度Nか含まれるブロック位置をカラン
I・値にで決定する。
まず、ステップ48ては、前記カランI・値kにゼロを
初期設定し、ステップ49でこのカウント値1(か15
を越えたと判別されるまでは、ステップ50におけるし
きい値N (k)との比較を行い、N (k:]≦Nで
あるときにはステップ51においてカウント値1(を1
アツプさせ、初めてN(k)>Nとなるカウント値kを
求める。また、カウンI〜値1(か15を越えたときに
は、ステップ52へ進んでカウント値kに最大値15を
セラ1〜してステップ53へ進む。
最新の機関回転速度Nか該当する領域位置かkとして求
められると、ステップ53ては、前記ステップ42と同
様゛にして該当領域か変化したか否かを前回までの該当
領域位置にと最新の該当領域位置を示すkとを比較して
判別し、該当領域が変化したときには、ステップ54で
前記フラグfzに1をセットすると共に、ステップ55
て前回までの領域位置KをSにセラ1〜して、Sによっ
て前回の該当領域が判別できるようにする。
そして、ステップ56では、最新の機関回転速度Nか含
まれると判別された16X16格子マツプ上の1つの区
分領域において、最新の機関回転速度Nか当該領域の中
で低回転側に含まれるか高回転側に含まれるか、換言す
れば、16X16格子学習マツプの1つの区分領域を、
更に2つに分ける細分領域のいずれに該当するかを判別
する。かかる判別は、該当運転領域の回転速度範囲NC
k−1)〜N (k)の中心値N [:k)−N Ck
−1)/2十N(k−1:lに対する大小比較によって
行う。
ここで、該当領域の低回転側に含まれると判別されたと
きには、ステップ57で領域カウンタAcntか2又は
3であるかを判別する。
領域カウンタA c n、 tか、2又は3てない場合
には、ステップ58へ進み、該当領域の低回転側を経験
したことを示す1をA c n、 tにセットする。
後述するように該当領域の高回転側を経験したときには
前記A、 c n tに2かセットされるので、該当領
域の中で高回転側から低回転側へ移行したときには、前
記ステップ57てAcntか2であると判別されること
になり、この場合には、ステップ59へ進み、前記A 
c n、 tに3をセラ1〜することで、該当領域内で
の回転速度の変動により、低回転側と高回転側との両方
領域を経験したことか判別されるようにする。
また、ステップ57でACntに3かセットされている
と判別されたときには、該当領域で既に低回転側と高回
転側との両方の細分領域を経験していることを示すので
、Acn tにはそのまま3をセラ1−する。
そして、ステップ60ては、現在の運転条件が、16X
16格子マツプ上での該当領域の中の低回転側の細分領
域に含まれていることを示すために、領域ナンバーAn
oに1をセットする。
一方、ステップ56で、機関回転速度Nが該当領域の中
の高回転側に含まれると判別されると、ステップ61で
領域カウンタA、 c n tが1又は3であるかを判
別し、1又は3のいずれでもない場合(高回転側から該
当領域に入った場合)には、ステップ62てAcntに
2をセットする。また、ステップ61てA c n、 
tに1又は3がセットされていると判別されたときには
、該当領域の低回転側と高回転側との両方の細分領域を
経験していることを示すためにステップ63で前記Ac
ntに3をセラ1〜する。
そして、ステップ64では、現在の運転条件か、1.6
X16格子マツプ」−ての該当領域の中の高回転側の細
分領域に含まれていることを示すために、領域ナンバー
A、noに2をセラ1〜する。
ステップ60又はステップ64て領域ナンバーAnOの
設定を行った後は、ステップ65で最新の機関回転速度
Nが含まれる領域位置として求められたkを最終的にK
にセットする。このようにして、基本燃料噴射量Tpと
機関回転速度Nとをパラメータとして16X16の25
6運転領域に分割される学習マツプのどの運転領域に現
在の運転条件が含まれるかが、Tpの領域位置■とNの
領域位置にとによって表される座標(K、I)で示され
るようにする。
1.6X16格子の該当する位置か上記のようにして判
明すれば、第9図に示すように4×4格子の運転領域マ
ツプにおける1つの運転領域は、1.6X16格子の運
転領域における4X4=16領域を1ブロツクとして区
切ったものであるから、前記I、Kに基ういて4×4格
子の学習マツプにおいて現在の運転条件が該当する位置
を特定できる。
即ち、ステップ66では、前記Tpのブロック番号Iを
4で除算して、その結果の少数点以下を切り捨てた整数
値をAにセットシ、また、ステップ67では、Nのブロ
ック番号Kを同様にして4で除算して、その結果の少数
点以下を切り捨てた整数値をBにセットする。これによ
り、現在の運転条件が該当する4×4格子マツプ上の領
域位置は〔B、A、)の座標で表される。
次のステップ68ては、4×4格子マツプ上の該当する
領域位置を示すCB、 A)を用い、4×4格子上で該
当する運転領域か変化したか否かを判別するために、前
記Aに16を乗算した値とBとを加算してその結果をA
Bにセットする。
そして、ステップ69では前回演算されたA、 Bであ
るABoLDと最新のABとを比較することにより、4
×4格子マツプ上で今回が該当する領域と前回とか同じ
であるか否かを判別する。A、 B≠AB o 1. 
oであって、4×4格子マツプ上で該当する領域が前回
と異なるときには、ステップ70てカウント値cntに
所定値(例えば4)をセットする。
ステップ71では、次回におけるステップ69ての判別
のために、今回ステップ68で演算したABを前回値と
してABol、DにセラI・する。
ステップ72では、4×4格子マツプにおいて〔B、 
A)を座標として指示される現在の運転条件か含まれる
運転領域て空燃比学習が終了しているか否かを示すフラ
グF [B、 A)を判別し、このフラグF (B、 
A)かゼロであって現在の運転条件か含まれる4×4格
子マツプの1つの運転領域で学習が終了していないとき
には、ステップ73へ進む。
ステップ73では前記カランI・値cntがゼロである
か否かを判別し、ゼロでなく4×4格子マツプにおける
該当領域の変動があるときには、そのまま本プログラム
を終了させ、カウント値cntがゼロであって4×4格
子マツプ上で該当する運転領域に安定して止まっている
ときにのみステップ74へ進む。
ステップ74では、前記第4図のフローチャー1・でサ
ンプリングされる空燃比フィードバック補正係数LMD
の最大・最小値a、  bの平均値(a+b)/2、即
ち、補正係数LMDの中心値か、補正係数LMDの目標
収束値である初期値(−1)付近であるか否かによって
学習の進行を判別し、略1であると認められず、学習が
済んでいないときにはステップ76へ進む。
ステップ76では、4×4格子マツプにおいて今回のC
B、 A)領域に対応して記憶されている学習補正係数
KBLRCIに対して、最大・最小値a、  bの平均
値から目標収束値Target(本実施例では1.0)
を減算した値に所定係数X1を掛けた値を加算し、その
結果を4×4格子マツプ」二の今回の運転領域CB、A
、)に対応する学習補正係数KBLRCIとして新たに
更新設定する。
ス テップ7 判別されれは、現状の運転条件が含まれる4×4格子マ
ツプの運転領域での学習が終了したことになるから、ス
テップ75でフラグF (B, A:]に1をセットし
、フラグF (B,’A:]が1である領域については
学習か終了していることが判別されるようにする。
このような4×4格子マツプ上の領域CB, A)での
学習中においては、更に細かい16X 16格子マツプ
において前記CB, A)に含まれる4×4=16領域
それぞれにおける学習補正係数KBLRC2については
、ステップ77てこれを全て初期値1.0にリセットす
る。
このように、4×4格子マツプで学習が終了していない
領域かあるときには、その運転領域で安定したときに(
a+b)/2の目標値Targetからの偏差の所定割
合を、それまでに記憶されていた学習補正係数KBLR
CIに加算して更新することにより、空燃比フィードバ
ック補正係数LMDの代わりに学習補正係数KBLRC
Iによる補正で目標空燃比が得られるようにし、空燃比
フィードバック補正係数LMDか目標収束値である初期
値1に略収束した時点でその運転領域の学習が終了した
ものとする。
一方、ステップ72で、フラグF (B, A)力月で
あると判別され、4×4格子マツプの今回該当する運転
領域に学習済の学習補正係数KBLRCIが記憶されて
いるときには、学習補正係数KBLRCIが記憶されて
いる今回の4×4格子マツプ上の運転領域(B,A)を
、更に16領域に細分する16X16格子学習マツプの
該当領域における学習へ移行する。
ステップ78では、補正係数LMDの平均値である(a
十b)/2か、目標収束値の1に略一致しているか否か
の判別を行い、(a十b)/2が略1でなく空燃比フィ
ードバック補正係数LMDによる補正を必要としている
未学習状態であるときには、ステップ79へ進む。
ステップ79では、(a十b)/2から目標収束値Ta
rget (本実施例では1.0)を減算した値に所定
係数X2を掛けた値を、1.6X16格子学習マツプの
現在の運転条件が含まれる運転領域[、に、I)に対応
してそれまでに記憶されていた学習補正係数KBLRC
2 ( K 、  I )に加算し、この加算結果を当
該運転領域(K、  I)における新たな補正係数KB
しRC2CI<、  I)として更新設定する。
そして、次のステップ80では、前記領域ナンバーAn
oを判別することで、該当領域(K、  I)を回転速
度Nに基づいて更に2つに細分する領域のいずれに含ま
れる状態で氏るかを判別し、領域ナンバーAnoが1で
あって該当領域(K、I)の低回転側であるときには、
ステップ81でrelに前記ステップ79て新tに求め
た学習補正係数KBLRC2をセットし、領域ナンバー
Anoが2てあって該当領域(K、  I:]の高回転
側であるときには、ステップ82てre2に前記ステッ
プ79で新たに求めた学習補正係数KBLRC2をセッ
トする。
即ち、該当領域(K、I)に対応する学習補正係数KB
LRC2を更新設定すると、該当領域D<、I)の中で
低回転側であるか又は高回転側であるかによって区別し
て学習補正係数KBLRC2を別途記憶させるものてあ
り、該当領域(K、I)の中で回転速度が変動して、低
回転側と高回転側との両方を経験したときには、該当領
域(K、I)の低回転側に適合する学習補正係数KBL
RC2がrelとして記憶され、高回転側に適合する学
習補正係数K B LP01がre2として記憶される
そして、前述のように16X16格子の学習マツプにお
ける該当領域か変化したときには、前記細分領域毎の記
憶データrel、re2に基づいて変化前に該当してい
た学習領域の学習補正係数KBLRC2が書き換え修正
され、16X16格子の学習マツプの1つの区分領域内
での低回転側と高回転側との補正要求の平均レベルとし
てマツプ学習か行われる。
一方、ステップ78で、補正係数LMDの平均値である
(a+b)/2か目標収束値Targetの1に略一致
していると判別されたときには、ステップ83へ進み、
16X 16格子マツプの現在の運転条件が含まれる運
転領域(K、I)の学習か終了したことが判別されるよ
うにフラグFF(K、I)に1をセラ1〜する。
そして、ステップ84以降では、今回学習か終了したと
判別され対応するフラグFF(K、I:lに1かセラ1
〜された1、6X16格子マツプ上の所定運転領域(K
、I)に基づき、この領域(K、I)に隣接する運転領
域(第11図参照)で学習が終了していない運転領域か
ある場合に、その運転領域に今回の運転領域(K、  
I)に対応して記憶されている学習補正係数KBLRC
2と同じ値を更新記憶させる制御を行う。
ステップ84ては、16X 16格子マツプにおいて現
在の運転条件が含まれる領域位置を示す(K、I)から
それぞれlを減算した値をm、nにセットシ、次のステ
ップ85ではm=に+2であるか否かを判別する。
ステップ84からステップ85へ進んだときには、ステ
ップ85てNOの判別か下されるから、ステップ86に
進んで〔m、n、)て示される16X16格子のうちの
1つの運転領域の学習が終了しているか否かを、フラグ
FF(m、n)が1であるかゼロであるかによって判別
する。
ここて、フラグFF(m、n)かゼロであって学習か終
了していないときには、ステップ87へ進む。
このステップ87では、前記16X16格子」二におけ
る領域番地(m、  n)を4×4格子」二の領域番地
〔m/ 4 、  n、/ 4. )に変換し、これが
現在該当すると判別されている4×4格子マツプ」二の
領域CB。
A〕と一致するか否かを判別する。
即ち、(K、I)はCB、 A)に含まれる領域である
が、(K、  I)の周囲の領域は、4×4格子マツプ
上でCB、 A)に隣接する別の領域に含まれる場合が
あるためであり、同じI:B、 A)に含まれる領域で
あるときには((m/4.n/4)−(B、A))、ス
テップ88へ進み、今回学習済であると判別された(K
、I)領域に対応する学習補正係数KBLRC2をその
まま(m、n、)領域の学習値とする。
一方、ステップ87で(K、I)に隣接する(m。
n〕が、4×4格子マツプ上で異なる領域に含まれると
判別されたときには、ステップ89へ進み、かかる領域
(m、n、)に以下の式で算出される学留袖正係数KB
LRC2を格納させる。
KBLRC2(m、  n) ← KBLRCI (B、A:] 十KBLRC2(:に、
 I)−KBLRIj (m/4.n/4〕 上記のKBLRC2(m、  n:]を求める演算式は
、〔K、I)と(m、nilとは1.6X16格子上で
隣接する領域であるから、最終的な補正要求としては近
似しているはずであるという推測に基づくものであり、
それぞれか含まれる4×4格子マツプの学習補正係数K
BLRCIが異なるので、それぞれ異なるKBLRCl
、 CB、 A) 、 KBLRCI (m/ 4 、
 n/ 4 )との合計か、以下の式にように近似する
ものとして設定されている。
KFiLRC4(B、  A)  −1413Lfi’
C2[:に、   I)  =KBLRCI (m/ 
4 、  n/ 4〕十KBLRC2(m、  nE上
記のようにして(m、n)領域が学習済であるときには
、その学習値を更新することなく、また、未学習である
ときには、KBLRC21: K 、  T )に基づ
きKBLRC2(111,n)を更新設定すると、ステ
ップ90では、前記mを1アツプさせて再びステラプ8
5に戻り、m=に+2となるまで、即ち、nを一定とし
てmをKを中心とする±1の範囲で動かし、各運転領域
毎に学習済・未学習を判別する。
そして、ステップ90におけるmの1アツプ処理の結果
ステップ85でm = K +2であると判別されると
、今度はステップ91へ進みn=I+2であるか否かを
判別し、n≠I+2であるときには、ステップ92て再
びmをに−1にセラl−t、、次のステップ93てnを
1アツプさせた後、ステップ86へ進む。
従って、最初はn−l−1としてmをKを中心とする±
1の範囲で動かして隣接する領域の判別を行わせたのに
対し、次はn=IとしてmをKを中心とする±1の範囲
で動かし、更に、次にはn=1+1としてmをKを中心
とする±1の範囲で動かし、結果、(K、  I)を囲
む8つの運転領域(第11図参照)について未学習であ
るときには、学習補正係数KBLRC2(K、  I 
)に基づく値をその運転領域の学習補正係数KBLRC
2Cm、  n)として記憶させるものである。
このように学習済の領域の学習結果を回りの未学習領域
にも適用させるようにすれば、16X16格子の学習マ
ツプのように運転領域を細分化しであるために各運転領
域の学習機会か少ない場合であっても、運転領域間て空
燃比制御性に大きな段差か発生することを防止できる。
ステップ91でn=I+2であると判別されたときには
、(K、[〕を囲む8つの運転領域全ての判別処理が終
わったことになるので、このときには、ステップ79へ
進んで、今回の領域(K、  I)において既に学習済
であると判断されている学習補正係数KBLRC2の学
習更新を行わせ、更に学習精度の向上を図る。
このように、本実施例では、まず、全運転領域に対応す
る学習補正係数KBLRCφを学習した後に、4×4格
子の学習マツプで区分される運転領域毎の学習を行わせ
、更に、この4×4格子の学習マツプで学習が済んでい
る領域についてはその領域を更に4×4格子に分けて学
習(16X1.6格子学習マツプの学習)を行わせるよ
うにしたので、大きな運転領域から小さな運転領域での
学習へと進行することになり、大きな運転領域での学習
により空燃比の収束性か確保されると共に、学習か進行
すればより細かな運転領域毎の学習か行われるから、運
転領域の違いによる要求補正値の違いに精度良く対応で
きる。
然も、前述のように16X16格子の学習マツプにおけ
る1つの学習領域を更に2つに分けて、それぞれの細分
領域毎に適合する学習補正値を記憶させ、前記1つの学
習領域を抜けるときに前記細分領域毎の学習補正値の平
均値に基づいて当該学習領域の学習補正値を更新させる
ようにしたので、メモリ容量を大幅に増大させることな
く、16XI6格子の学習マツプよりも更に細かな運転
領域別の補正要求に略対応した学習を行わせることがで
きる。
上記のようにして学習される3つの学習補正係数KBL
RCφ、 KBLRCI、 KBLRC2に基つく最終
的な空燃比学習補正係数KBLRCの設定は、第6図の
フローチャートに従って行われる。
第6図のフローチャートは、バックグラウンドジョブと
して処理されるものであり、ます、ステップ101ては
、4×4格子マツプの領域CB、A)に記憶されている
学習補正係数KBLRCIを読み出し、次のステップ1
02ては、16X]、、6格子マツプの領域(K、I)
に記憶されている学習補正係数KBLRC2を読み出す
。尚、フローチャー1〜中に示すBX4→−A及びKX
16+Iは、それぞれの格子位置を示す番地をメモリ上
の番地に換算するものである。
ステップ103ては、KBLRCφ+KBLRC]、 
+ KBLRC2−2,0→KBLRCとして最終的な
学習補正係数KBLRCを設定する。
上記第6図のフローチャー1・で設定される学習補正係
数KBLRCは、第7図のフローチャートに示すプログ
ラムにおける燃料噴射量Tiの演算設定に用いられる。
第7図のフローチャー1へに示すプログラムは、所定微
小時間(例えはtoms)毎に実行されるものであり、
まず、ステップ111ては、エアフローメータ13で検
出された吸入空気流量Q及びクランク角センサ14から
の検出信号に基つき算出した機関回転速度Nを入力する
そして、次のステップ112では、ステップ111で入
力した吸入空気流量Qと機関回転速度Nとに基づいて単
位回転当たりの吸入空気流量Qに対応する基本燃料噴射
量Tp (←KXQ/N;には定数)を演算する。
次のステップ113ては、前記ステップ112で演算し
た基本燃料噴射量Tpに各種の補正を施して最終的な燃
料噴射量(燃料供給量)Tiを演算する。ここで、基本
燃料噴射量Tpの補正に用いられる補正値は、第5図の
フローチャー1・に従って領域別に学習設定され第6図
のフローチャーI・て最終設定された学習補正係数KB
LRC、第4図のフローチャートに従って演算された空
燃比フィードバック補正係数LMD、水温センサ15で
検出される冷却水温度Twに基ろく基本補正係数や始動
後増量補正係数等を含んで設定される各種補正係数C0
FF、バッテリ電圧の変化による燃料噴射弁6の有効噴
射時間の変化を補正するための補正骨Tsてあり、T 
i =T p X LMD xKBLRCX COEF
十Tsとして最終的な燃料噴射量Tiか所定時間毎に更
新される。
コン1〜ロールユニツト12は所定の燃料噴射タイミン
グになると、上記第7図のフローチャー1・に示すプロ
グラムに従って最新に演算された燃料噴射量Tiに相当
するパルス巾の駆動パルス信号を燃料噴射弁6に対して
出力し、機関1への燃料供給量を制御油する。
また、第8図のフローチャートに示すプログラムは、前
記第4図のフローチャートに従ってサンプリングされる
学習補正値の不適切度合いを示す「ストレス」に基づく
処理を行うプログラムであり、バックグラウンドジョブ
(BGJ)として実行される。
ステップ121ては、第4図のフローチャー1・のステ
ップ18で積算されるストレス(空燃比ずれ度合い)と
、所定値(例えば0.8)とを比較して、学習が殆ど終
了しているときの空燃比ずれ度合いか所定以上であるか
否かを判別する。
ここで、前記ス1〜レスが所定値を越えるときには、学
習が殆ど終了しているものの、その学習結果か不適切で
空燃比ずれか発生しているものと判断し、再度の学習(
学習反復)を行わせるためにステップ122へ進む。
ステップ122では、各運転領域の空燃比学習が終了し
ているか否かを判別するためのフラグFφ。
F C0,0)〜F (3,3) 、 FF[:O,O
)〜FF[16,]、、6)を全てゼロリセッl−L、
全運転領域に対応する学習補正係数KBLRCφからの
学習が行われるようにすると共に、ス1〜レスをゼロリ
セットする。
このように、空燃比フィードバック補正係数LIViD
の基準値に対する偏差の度合い(ストレス)が所定以上
に大きくなったときに、学習をやり直すようにすれば、
例えば吸気系に穴が開くなどの事故によって空燃比か急
激に変化したときに、大きな運転領域毎の学習か再度行
われることになるから、空燃比を速やかに収束さぜるこ
とがてきる。
尚、本実施例では、4×4格子の学習マツプと1.6X
16格子の学習マツプとを備えるようにしたか、例えは
4×4格子の学習マツプのみを備える構成であっても良
く、この場合には、4×4格子の学習マツプの1の学習
領域を複数に区分させて、本実施例と同様に各細分領域
毎に適合する空燃比学習補正値を記憶させ、該当領域が
変化するときに前記各細分領域毎の空燃比学習補正値の
平均値として、変化前の学習領域における空燃比学習補
正値を更新させれば良い。
また、本実施例では、学習マツプにおける1つの学習領
域を機関回転速度Nに基づいて2つに区分したが、区分
数を2つに限定するものではなく、例えば、機関回転速
度Nと基本燃料噴射量Tpとに基づいて1つの学習領域
を4つ以上に細分しても良い。
更に、本実施例では、運転領域別の学習マツプにおいて
、運転領域を区分するパラメータどして基本燃料噴射量
Tpと機関回転速度Nとを用いたか、これらに限定する
ものではなく、ブース1〜等の運転条件を用いても良い
ことは明らかである。
また、運転条件のパラメータとして1つのみを用いて運
転領域を区分して学習マツプを設けても良く、また、3
つ以上の運転条件パラメータによって運転領域を区分し
ても良い。
〈発明の効果〉 以上説明したように本発明によると、複数に区分された
運転領域別に空燃比学習を行わせるときに、前記複数の
区分運転領域の中の該当領域を更に複数の細分領域に区
分し、それぞれの細分領域毎に空燃比学習補正値を学習
記憶させ、当該学習領域から抜けるときに、前記細分領
域毎の空燃比学習補正値の平均値に基づいて当該学習領
域に対応する空燃比学習補正値を書き換え修正するよう
にしたので、複数に区分された運転領域別の学習におい
て、区分運転領域内における運転条件の違いによる要求
補正の違いに対応した空燃比学習を、大幅な記憶容量の
増大を招くことなく実現できるようになるという効果か
ある。
【図面の簡単な説明】
第1図は本発明の構成を示すブロック図、第2図は本発
明の一実施例を示すシステム概略図、第3図〜第8図は
それぞれ同上実施例における制御内容を示すフローチャ
ート、第9図〜第11図はそれぞれ同上実施例における
学習マツプの様子を示す線図、第12図は機関回転速度
がゆっくり上昇する状況における学習の様子を従来学習
の場合と同1・・・機関  6・・・燃料噴射弁  1
2・・・コントロールユニット13・・・エアフローメ
ータ14・・・クランク角センサ  15・・・水温セ
ンサ  エ6・・・酸素センサ 特許出願人 日本電子機器株式会社 代理人 弁理士 笹 島 富二雄 第5図その1 10mS Q。 ヒ T習領鐵 320036004000(rpm)

Claims (1)

  1. 【特許請求の範囲】 機関に吸入される空気量に関与する運転パラメータを少
    なくとも含む機関運転条件を検出する運転条件検出手段
    と、 該運転条件検出手段で検出した機関運転条件に基づいて
    基本燃料供給量を設定する基本燃料供給量設定手段と、 機関吸入混合気の空燃比を検出する空燃比検出手段と、 該空燃比検出手段で検出された空燃比と目標空燃比とを
    比較して実際の空燃比を前記目標空燃比に近づけるよう
    に前記基本燃料供給量を補正するための空燃比フィード
    バック補正値を設定する空燃比フィードバック補正値設
    定手段と、 機関運転条件に基づき複数に区分される運転領域別に前
    記基本燃料供給量を補正するための空燃比学習補正値を
    それぞれ書き換え可能に記憶した学習補正値領域別記憶
    手段と、 前記空燃比フィードバック補正値の目標収束値からの偏
    差を学習し、前記偏差を減少させる方向に前記学習補正
    値領域別記憶手段に記憶されている該当する運転領域の
    空燃比学習補正値を修正して書き換える学習修正手段と
    、 前記学習補正値領域別記憶手段における区分運転領域を
    更に複数に区分する各運転領域それぞれに対応させて前
    記学習修正手段により学習修正された空燃比学習補正値
    を記憶する細分領域別記憶手段と、 前記学習補正値領域別記憶手段における複数の区分運転
    領域の中の該当する区分運転領域が変化するときに、前
    記細分領域別記憶手段に記憶されている学習補正値領域
    別記憶手段の1つの区分運転領域に対応する複数の空燃
    比学習補正値の平均値を求め、該平均値に基づいて前記
    学習補正値領域別記憶手段の該当する区分運転領域の空
    燃比学習補正値を書き換え修正する平均値による修正手
    段と、 前記基本燃料供給量、空燃比フィードバック補正値、及
    び、学習補正値領域別記憶手段に記憶されている該当す
    る区分運転領域の空燃比学習補正値に基づいて最終的な
    燃料供給量を設定する燃料供給量設定手段と、 該燃料供給量設定手段で設定された燃料供給量に基づい
    て燃料供給手段を駆動制御する燃料供給制御手段と、 を含んで構成されたことを特徴とする内燃機関の空燃比
    学習制御装置。
JP32560790A 1990-11-29 1990-11-29 内燃機関の空燃比学習制御装置 Expired - Lifetime JP2640566B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP32560790A JP2640566B2 (ja) 1990-11-29 1990-11-29 内燃機関の空燃比学習制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP32560790A JP2640566B2 (ja) 1990-11-29 1990-11-29 内燃機関の空燃比学習制御装置

Publications (2)

Publication Number Publication Date
JPH04203235A true JPH04203235A (ja) 1992-07-23
JP2640566B2 JP2640566B2 (ja) 1997-08-13

Family

ID=18178764

Family Applications (1)

Application Number Title Priority Date Filing Date
JP32560790A Expired - Lifetime JP2640566B2 (ja) 1990-11-29 1990-11-29 内燃機関の空燃比学習制御装置

Country Status (1)

Country Link
JP (1) JP2640566B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102841848A (zh) * 2011-06-20 2012-12-26 现代自动车株式会社 在存储器中存储数据的方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102841848A (zh) * 2011-06-20 2012-12-26 现代自动车株式会社 在存储器中存储数据的方法
US8738551B2 (en) 2011-06-20 2014-05-27 Hyundai Motor Company Method for storing data in memory
CN102841848B (zh) * 2011-06-20 2017-07-07 现代自动车株式会社 在存储器中存储数据的方法

Also Published As

Publication number Publication date
JP2640566B2 (ja) 1997-08-13

Similar Documents

Publication Publication Date Title
JPH0826805B2 (ja) 内燃機関の空燃比学習制御装置
JPH03179147A (ja) 内燃機関の空燃比学習制御装置
JPH0689690B2 (ja) 内燃機関の空燃比の学習制御装置
JPH04203235A (ja) 内燃機関の空燃比学習制御装置
JP2631579B2 (ja) 内燃機関の空燃比学習制御装置
JPH04241756A (ja) 内燃機関の空燃比学習制御装置
JPH0979072A (ja) 内燃機関の空燃比学習制御装置
JP2715208B2 (ja) 内燃機関の空燃比学習制御装置
JP2627825B2 (ja) 内燃機関の空燃比学習制御装置
JPH04175434A (ja) 内燃機関の空燃比学習制御装置
JPH01106954A (ja) 内燃機関の学習制御装置
JP3397087B2 (ja) エンジンの燃焼変動制御装置
JPH0656122B2 (ja) 内燃機関の学習制御装置
JPH04318246A (ja) 内燃機関の空燃比学習制御装置
JPH0656116B2 (ja) 内燃機関の学習制御装置
JPH04237847A (ja) 内燃機関の空燃比学習制御装置
JPH0656120B2 (ja) 内燃機関の学習制御装置
JPS6270641A (ja) 内燃機関の学習制御装置
JPH06272595A (ja) 内燃機関の空燃比学習制御装置
JPH04219440A (ja) 内燃機関の空燃比学習制御装置
JPH0658082B2 (ja) 内燃機関の学習制御装置
JPH04255544A (ja) 内燃機関の空燃比学習制御装置
JPH04318247A (ja) 内燃機関の空燃比学習制御装置
JPH0656126B2 (ja) 内燃機関の学習制御装置
JPH01106942A (ja) 内燃機関の学習制御装置