JPH04321741A - 内燃機関の空燃比学習制御装置 - Google Patents
内燃機関の空燃比学習制御装置Info
- Publication number
- JPH04321741A JPH04321741A JP8865891A JP8865891A JPH04321741A JP H04321741 A JPH04321741 A JP H04321741A JP 8865891 A JP8865891 A JP 8865891A JP 8865891 A JP8865891 A JP 8865891A JP H04321741 A JPH04321741 A JP H04321741A
- Authority
- JP
- Japan
- Prior art keywords
- air
- fuel ratio
- learning
- correction value
- fuel
- 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
Landscapes
- Electrical Control Of Air Or Fuel Supplied To Internal-Combustion Engine (AREA)
- Combined Controls Of Internal Combustion Engines (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【0001】
【産業上の利用分野】本発明は内燃機関の空燃比学習制
御装置に関し、詳しくは、自動車用内燃機関における吸
入混合気の空燃比が目標空燃比に一致するように燃料供
給量を補正する装置に関する。
御装置に関し、詳しくは、自動車用内燃機関における吸
入混合気の空燃比が目標空燃比に一致するように燃料供
給量を補正する装置に関する。
【0002】
【従来の技術】従来、空燃比フィードバック補正制御機
能をもつ電子制御燃料噴射装置を備えた内燃機関におい
ては、特開昭60−90944号公報,特開昭61−1
90142号公報等に開示されるように、空燃比の学習
制御が採用されているものがある。
能をもつ電子制御燃料噴射装置を備えた内燃機関におい
ては、特開昭60−90944号公報,特開昭61−1
90142号公報等に開示されるように、空燃比の学習
制御が採用されているものがある。
【0003】空燃比フィードバック補正制御は、目標空
燃比(例えば理論空燃比)に対する実際の空燃比のリッ
チ・リーンを機関排気系に設けた酸素センサにより判別
し、該判別結果に基づき空燃比フィードバック補正係数
LMDを比例・積分制御などにより設定し、機関に吸入
される空気量に関与する機関運転状態のパラメータ(例
えば吸入空気流量Qと機関回転速度N)から算出される
基本燃料噴射量Tpを、前記空燃比フィードバック補正
係数LMDで補正することで、実際の空燃比を目標空燃
比にフィードバック制御するものである。
燃比(例えば理論空燃比)に対する実際の空燃比のリッ
チ・リーンを機関排気系に設けた酸素センサにより判別
し、該判別結果に基づき空燃比フィードバック補正係数
LMDを比例・積分制御などにより設定し、機関に吸入
される空気量に関与する機関運転状態のパラメータ(例
えば吸入空気流量Qと機関回転速度N)から算出される
基本燃料噴射量Tpを、前記空燃比フィードバック補正
係数LMDで補正することで、実際の空燃比を目標空燃
比にフィードバック制御するものである。
【0004】ここで、前記空燃比フィードバック補正係
数LMDの基準値(目標収束値)からの偏差を、複数に
区分された運転領域毎に学習して学習補正係数KBLR
C(空燃比学習補正値)を定め、基本燃料噴射量Tpを
前記学習補正係数KBLRC により補正して、補正係
数LMDなしで得られるベース空燃比が略目標空燃比に
一致するようにし、空燃比フィードバック制御中は更に
前記補正係数LMDで補正して燃料噴射量Tiを演算す
るものである。
数LMDの基準値(目標収束値)からの偏差を、複数に
区分された運転領域毎に学習して学習補正係数KBLR
C(空燃比学習補正値)を定め、基本燃料噴射量Tpを
前記学習補正係数KBLRC により補正して、補正係
数LMDなしで得られるベース空燃比が略目標空燃比に
一致するようにし、空燃比フィードバック制御中は更に
前記補正係数LMDで補正して燃料噴射量Tiを演算す
るものである。
【0005】これにより、運転条件毎に異なる補正要求
に対応した燃料補正が行え、空燃比フィードバック補正
係数LMDを基準値付近に安定させて、空燃比制御性を
向上させることができる。ところで、前記運転領域別の
空燃比学習補正係数KBLRC は、前述のように運転
条件の違いによる空燃比補正要求の違いに対応すべく設
定されるものであるから、運転領域を極力細かく区分し
て学習させることが望まれる。しかしながら、運転領域
を細かく区分して狭い運転領域毎に学習補正係数KBL
RC を学習させるようにすると、それぞれの運転領域
における学習機会が減少し、学習の収束性が悪化すると
共に、学習済領域と未学習領域とが混在することになっ
て、運転領域間で大きな空燃比段差が発生してしまう。
に対応した燃料補正が行え、空燃比フィードバック補正
係数LMDを基準値付近に安定させて、空燃比制御性を
向上させることができる。ところで、前記運転領域別の
空燃比学習補正係数KBLRC は、前述のように運転
条件の違いによる空燃比補正要求の違いに対応すべく設
定されるものであるから、運転領域を極力細かく区分し
て学習させることが望まれる。しかしながら、運転領域
を細かく区分して狭い運転領域毎に学習補正係数KBL
RC を学習させるようにすると、それぞれの運転領域
における学習機会が減少し、学習の収束性が悪化すると
共に、学習済領域と未学習領域とが混在することになっ
て、運転領域間で大きな空燃比段差が発生してしまう。
【0006】そこで、本出願人は、運転領域の区分数を
異ならせた複数の学習マップを備えるようにし、これら
複数の学習マップの中でより区分数が少なく学習単位の
運転領域がより広い学習マップから学習を行わせ、学習
進行と共により区分数が多く学習単位の運転領域が狭い
学習マップの学習へと移行させるよう構成した空燃比学
習制御装置を、先に提案した(特願平1−282883
号参照)。
異ならせた複数の学習マップを備えるようにし、これら
複数の学習マップの中でより区分数が少なく学習単位の
運転領域がより広い学習マップから学習を行わせ、学習
進行と共により区分数が多く学習単位の運転領域が狭い
学習マップの学習へと移行させるよう構成した空燃比学
習制御装置を、先に提案した(特願平1−282883
号参照)。
【0007】かかる空燃比学習によれば、学習初期は大
きな単位運転領域別に学習させることで学習収束性が確
保され、学習が進行すればより細かな単位運転領域別の
学習が行われるから、運転条件の違いによる補正要求の
違いに精度良く対応した学習が行えるものである。
きな単位運転領域別に学習させることで学習収束性が確
保され、学習が進行すればより細かな単位運転領域別の
学習が行われるから、運転条件の違いによる補正要求の
違いに精度良く対応した学習が行えるものである。
【0008】
【発明が解決しようとする課題】しかしながら、上記の
ように学習マップを複数備え、空燃比学習させる領域を
学習進行と共に狭めていくことで、細かな運転領域別の
空燃比学習を可能に構成しても、学習補正値は区分され
たそれぞれの運転領域内における代表値として学習され
るものであるから、学習マップ上での該当運転領域が切
り替わるときに学習補正値がステップ的に変化すること
が避けられず、かかる学習補正値のステップ的な変化に
よって空燃比変動が発生し、以て、排気性状が悪化して
しまうことがあった(図15参照)。
ように学習マップを複数備え、空燃比学習させる領域を
学習進行と共に狭めていくことで、細かな運転領域別の
空燃比学習を可能に構成しても、学習補正値は区分され
たそれぞれの運転領域内における代表値として学習され
るものであるから、学習マップ上での該当運転領域が切
り替わるときに学習補正値がステップ的に変化すること
が避けられず、かかる学習補正値のステップ的な変化に
よって空燃比変動が発生し、以て、排気性状が悪化して
しまうことがあった(図15参照)。
【0009】即ち、ベース空燃比のエラーは種々の要因
で発生するが、運転条件の変化に対してステップ的にベ
ース空燃比が変化することはなく、本来的には、空燃比
学習補正値の要求もステップ的に変化するものではない
。ところが、前述のように、ある大きさを持った運転領
域内における代表的な補正レベルとして空燃比学習補正
値は学習されるから、運転領域の境界を跨ぐ運転条件の
変化があったときには、実際の運転条件の変化に対応し
ない学習補正値のステップ的な変化が発生してしまうも
のである。かかるステップ的な学習補正値の変化幅は、
学習領域を狭めることで小さくできるが、極端に運転領
域を細分化することは学習領域を徐々に狭める学習を行
わせる場合であっても実用的ではなく、学習マップ上の
領域間において補正レベルの段差が発生することが避け
られない状況であった。
で発生するが、運転条件の変化に対してステップ的にベ
ース空燃比が変化することはなく、本来的には、空燃比
学習補正値の要求もステップ的に変化するものではない
。ところが、前述のように、ある大きさを持った運転領
域内における代表的な補正レベルとして空燃比学習補正
値は学習されるから、運転領域の境界を跨ぐ運転条件の
変化があったときには、実際の運転条件の変化に対応し
ない学習補正値のステップ的な変化が発生してしまうも
のである。かかるステップ的な学習補正値の変化幅は、
学習領域を狭めることで小さくできるが、極端に運転領
域を細分化することは学習領域を徐々に狭める学習を行
わせる場合であっても実用的ではなく、学習マップ上の
領域間において補正レベルの段差が発生することが避け
られない状況であった。
【0010】本発明は上記問題点に鑑みなされたもので
あり、学習収束性を確保しつつ細かな運転領域別に空燃
比学習を行わせる一方、学習マップ上の運転領域間にお
ける補正レベルの段差によって実際の補正がステップ的
に変化することを回避し、運転条件の変化に対して補正
に用いる空燃比学習補正が精度良く滑らかに変化するよ
う構成することを目的とする。
あり、学習収束性を確保しつつ細かな運転領域別に空燃
比学習を行わせる一方、学習マップ上の運転領域間にお
ける補正レベルの段差によって実際の補正がステップ的
に変化することを回避し、運転条件の変化に対して補正
に用いる空燃比学習補正が精度良く滑らかに変化するよ
う構成することを目的とする。
【0011】
【課題を解決するための手段】そのため本発明にかかる
内燃機関の空燃比学習制御装置は、図1に示すように構
成される。図1において、機関運転条件検出手段は、機
関に吸入される空気量に関与する運転パラメータを少な
くとも含む機関運転条件を検出し、基本燃料供給量設定
手段は、前記検出された機関運転条件に基づいて基本燃
料供給量を設定する。
内燃機関の空燃比学習制御装置は、図1に示すように構
成される。図1において、機関運転条件検出手段は、機
関に吸入される空気量に関与する運転パラメータを少な
くとも含む機関運転条件を検出し、基本燃料供給量設定
手段は、前記検出された機関運転条件に基づいて基本燃
料供給量を設定する。
【0012】また、空燃比フィードバック補正値設定手
段は、空燃比検出手段で検出された機関吸入混合気の空
燃比と目標空燃比とを比較して、実際の空燃比を目標空
燃比に近づけるように基本燃料供給量を補正するための
空燃比フィードバック補正値を設定する。一方、記憶手
段は、機関運転条件に基づき複数に区分された運転領域
毎に基本燃料供給量を補正するための空燃比学習補正値
を書き換え可能に記憶し、空燃比学習手段は、空燃比フ
ィードバック補正値の目標収束値からの偏差を学習し、
記憶手段の該当領運転領域に対応して記憶されている空
燃比学習補正値を前記偏差を減少させる方向に修正して
書き換える空燃比学習を、学習進行と共に該当運転領域
の範囲を段階的に狭めて行う。
段は、空燃比検出手段で検出された機関吸入混合気の空
燃比と目標空燃比とを比較して、実際の空燃比を目標空
燃比に近づけるように基本燃料供給量を補正するための
空燃比フィードバック補正値を設定する。一方、記憶手
段は、機関運転条件に基づき複数に区分された運転領域
毎に基本燃料供給量を補正するための空燃比学習補正値
を書き換え可能に記憶し、空燃比学習手段は、空燃比フ
ィードバック補正値の目標収束値からの偏差を学習し、
記憶手段の該当領運転領域に対応して記憶されている空
燃比学習補正値を前記偏差を減少させる方向に修正して
書き換える空燃比学習を、学習進行と共に該当運転領域
の範囲を段階的に狭めて行う。
【0013】そして、補正値読み出し手段は、実際の運
転条件に対応する空燃比学習補正値の記憶手段からの読
み出しを、空燃比学習手段により学習される最も狭い運
転領域を単位とする補間演算を伴って行い、燃料供給量
設定手段は、前記読み出された空燃比学習補正値,前記
基本燃料供給量及び空燃比フィードバック補正値に基づ
いて最終的な燃料供給量を設定する。
転条件に対応する空燃比学習補正値の記憶手段からの読
み出しを、空燃比学習手段により学習される最も狭い運
転領域を単位とする補間演算を伴って行い、燃料供給量
設定手段は、前記読み出された空燃比学習補正値,前記
基本燃料供給量及び空燃比フィードバック補正値に基づ
いて最終的な燃料供給量を設定する。
【0014】ここで、燃料供給制御手段は、前記設定さ
れた燃料供給量に基づいて燃料供給手段を駆動制御する
。
れた燃料供給量に基づいて燃料供給手段を駆動制御する
。
【0015】
【作用】かかる構成の空燃比学習制御装置によると、空
燃比学習手段が、記憶手段における当該運転領域の空燃
比学習補正値を修正して書き換える空燃比学習を、学習
進行と共に該当運転領域の範囲を狭めて行うから、学習
開始当初は、比較的大きな運転領域を単位として空燃比
学習が行われて学習進行速度が確保され、また、学習進
行と共に当該運転領域として学習補正値が書き換えられ
る領域が段階的に狭くなるから、運転条件の違いによる
補正要求の違いを高精度に学習させることが可能である
。
燃比学習手段が、記憶手段における当該運転領域の空燃
比学習補正値を修正して書き換える空燃比学習を、学習
進行と共に該当運転領域の範囲を狭めて行うから、学習
開始当初は、比較的大きな運転領域を単位として空燃比
学習が行われて学習進行速度が確保され、また、学習進
行と共に当該運転領域として学習補正値が書き換えられ
る領域が段階的に狭くなるから、運転条件の違いによる
補正要求の違いを高精度に学習させることが可能である
。
【0016】一方、かかる運転領域別の空燃比学習補正
値を、記憶手段から読み出して基本燃料供給量の補正に
用いるときに、学習が充分進行してから行われる記憶手
段上の最も狭い運転領域を単位として補間演算が行われ
るから、運転条件に対して離散的なデータである各運転
領域毎の空燃比学習補正値を運転条件変化に対して滑ら
かに変化させて、基本燃料供給量の補正を施すことがで
きる。また、補間演算が、学習領域として最も狭い運転
領域を単位として行われるから、補間の精度を最大限に
確保できる。
値を、記憶手段から読み出して基本燃料供給量の補正に
用いるときに、学習が充分進行してから行われる記憶手
段上の最も狭い運転領域を単位として補間演算が行われ
るから、運転条件に対して離散的なデータである各運転
領域毎の空燃比学習補正値を運転条件変化に対して滑ら
かに変化させて、基本燃料供給量の補正を施すことがで
きる。また、補間演算が、学習領域として最も狭い運転
領域を単位として行われるから、補間の精度を最大限に
確保できる。
【0017】
【実施例】以下に本発明の実施例を説明する。一実施例
を示す図2において、内燃機関1にはエアクリーナ2か
ら吸気ダクト3,スロットル弁4及び吸気マニホールド
5を介して空気が吸入される。吸気マニホールド5の各
ブランチ部には、各気筒別に燃料供給手段としての燃料
噴射弁6が設けられている。この燃料噴射弁6は、ソレ
ノイドに通電されて開弁し、通電停止されて閉弁する電
磁式燃料噴射弁であって、後述するコントロールユニッ
ト12からの駆動パルス信号により通電されて開弁し、
図示しない燃料ポンプから圧送されてプレッシャレギュ
レータにより所定の圧力に調整された燃料を、機関1に
間欠的に噴射供給する。
を示す図2において、内燃機関1にはエアクリーナ2か
ら吸気ダクト3,スロットル弁4及び吸気マニホールド
5を介して空気が吸入される。吸気マニホールド5の各
ブランチ部には、各気筒別に燃料供給手段としての燃料
噴射弁6が設けられている。この燃料噴射弁6は、ソレ
ノイドに通電されて開弁し、通電停止されて閉弁する電
磁式燃料噴射弁であって、後述するコントロールユニッ
ト12からの駆動パルス信号により通電されて開弁し、
図示しない燃料ポンプから圧送されてプレッシャレギュ
レータにより所定の圧力に調整された燃料を、機関1に
間欠的に噴射供給する。
【0018】機関1の各燃焼室には点火栓7が設けられ
ていて、これにより火花点火して混合気を着火燃焼させ
る。そして、機関1からは、排気マニホールド8,排気
ダクト9,三元触媒10及びマフラー11を介して排気
が排出される。コントロールユニット12は、CPU,
ROM,RAM,A/D変換器及び入出力インタフェイ
ス等を含んで構成されるマイクロコンピュータを備え、
各種のセンサからの入力信号を受け、後述の如く演算処
理して、燃料噴射弁6の作動を制御する。
ていて、これにより火花点火して混合気を着火燃焼させ
る。そして、機関1からは、排気マニホールド8,排気
ダクト9,三元触媒10及びマフラー11を介して排気
が排出される。コントロールユニット12は、CPU,
ROM,RAM,A/D変換器及び入出力インタフェイ
ス等を含んで構成されるマイクロコンピュータを備え、
各種のセンサからの入力信号を受け、後述の如く演算処
理して、燃料噴射弁6の作動を制御する。
【0019】前記各種のセンサとしては、吸気ダクト3
中にエアフローメータ13が設けられていて、機関1の
吸入空気流量Qに応じた信号を出力する。また、クラン
ク角センサ14が設けられていて、本実施例の4気筒の
場合、クランク角180 °毎の基準信号REFと、ク
ランク角1°又は2°毎の単位信号POSとを出力する
。ここで、基準信号REFの周期、或いは、所定時間内
における単位信号POSの発生数を計測することにより
、機関回転速度Nを算出できる。
中にエアフローメータ13が設けられていて、機関1の
吸入空気流量Qに応じた信号を出力する。また、クラン
ク角センサ14が設けられていて、本実施例の4気筒の
場合、クランク角180 °毎の基準信号REFと、ク
ランク角1°又は2°毎の単位信号POSとを出力する
。ここで、基準信号REFの周期、或いは、所定時間内
における単位信号POSの発生数を計測することにより
、機関回転速度Nを算出できる。
【0020】また、機関1のウォータジャケットの冷却
水温度Twを検出する水温センサ15が設けられている
。 ここで、上記エアフローメータ13,クランク角センサ
14,水温センサ15等が本実施例における機関運転条
件検出手段に相当し、機関に吸入される空気量に関与す
る運転パラメータとは、本実施例において吸入空気流量
Q及び機関回転速度Nである。
水温度Twを検出する水温センサ15が設けられている
。 ここで、上記エアフローメータ13,クランク角センサ
14,水温センサ15等が本実施例における機関運転条
件検出手段に相当し、機関に吸入される空気量に関与す
る運転パラメータとは、本実施例において吸入空気流量
Q及び機関回転速度Nである。
【0021】また、排気マニホールド8の集合部に空燃
比検出手段としての酸素センサ16が設けられ、排気中
の酸素濃度を介して吸入混合気の空燃比を検出する。前
記酸素センサ16は、排気中の酸素濃度が理論空燃比(
本実施例における目標空燃比)を境に急変することを利
用して、実際の空燃比の理論空燃比に対するリッチ・リ
ーンを検出する公知のものであり、本実施例では、理論
空燃比よりもリッチ空燃比であるときには比較的高い電
圧信号を出力し、逆にリーン空燃比であるときには0V
付近の低い電圧信号を出力するものとする。
比検出手段としての酸素センサ16が設けられ、排気中
の酸素濃度を介して吸入混合気の空燃比を検出する。前
記酸素センサ16は、排気中の酸素濃度が理論空燃比(
本実施例における目標空燃比)を境に急変することを利
用して、実際の空燃比の理論空燃比に対するリッチ・リ
ーンを検出する公知のものであり、本実施例では、理論
空燃比よりもリッチ空燃比であるときには比較的高い電
圧信号を出力し、逆にリーン空燃比であるときには0V
付近の低い電圧信号を出力するものとする。
【0022】ここにおいて、コントロールユニット12
に内蔵されたマイクロコンピュータのCPUは、図3〜
図11のフローチャートにそれぞれ示すROM上のプロ
グラムに従って演算処理を行い、空燃比フィードバック
補正制御及び運転領域毎の空燃比学習補正制御を実行し
つつ燃料噴射量Tiを設定し、機関1への燃料供給を制
御する。
に内蔵されたマイクロコンピュータのCPUは、図3〜
図11のフローチャートにそれぞれ示すROM上のプロ
グラムに従って演算処理を行い、空燃比フィードバック
補正制御及び運転領域毎の空燃比学習補正制御を実行し
つつ燃料噴射量Tiを設定し、機関1への燃料供給を制
御する。
【0023】尚、本実施例において、基本燃料供給量設
定手段,燃料供給量設定手段,燃料供給制御手段,空燃
比フィードバック補正値設定手段,空燃比学習手段,補
正値読み出し手段としての機能は、前記図3〜図11の
フローチャートに示すようにコントロールユニット12
がソフトウェア的に備えており、また、記憶手段として
はコントロールユニット12に内蔵された図示しないマ
イクロコンピュータのバックアップ機能付のRAMが相
当するものとする。
定手段,燃料供給量設定手段,燃料供給制御手段,空燃
比フィードバック補正値設定手段,空燃比学習手段,補
正値読み出し手段としての機能は、前記図3〜図11の
フローチャートに示すようにコントロールユニット12
がソフトウェア的に備えており、また、記憶手段として
はコントロールユニット12に内蔵された図示しないマ
イクロコンピュータのバックアップ機能付のRAMが相
当するものとする。
【0024】図3及び図4のフローチャートに示すプロ
グラムは、基本燃料噴射量(基本燃料供給量)Tpに乗
算される空燃比フィードバック補正係数LMD(空燃比
フィードバック補正値)を、比例・積分制御により設定
するプログラムであり、機関1の1回転(1rev)毎
に実行される。まず、ステップ1(図中ではS1として
ある。以下同様)では、酸素センサ(O2 /S)16
から排気中の酸素濃度に応じて出力される電圧信号を読
み込む。
グラムは、基本燃料噴射量(基本燃料供給量)Tpに乗
算される空燃比フィードバック補正係数LMD(空燃比
フィードバック補正値)を、比例・積分制御により設定
するプログラムであり、機関1の1回転(1rev)毎
に実行される。まず、ステップ1(図中ではS1として
ある。以下同様)では、酸素センサ(O2 /S)16
から排気中の酸素濃度に応じて出力される電圧信号を読
み込む。
【0025】そして、次のステップ2では、ステップ1
で読み込んだ酸素センサ16からの電圧信号と、目標空
燃比(理論空燃比)相当のスライスレベル(例えば50
0mV)とを比較する。酸素センサ16からの電圧信号
がスライスレベルよりも大きく空燃比が理論空燃比より
もリッチであると判別されたときには、ステップ3へ進
み、今回のリッチ判別が初回であるか否かを判別する。
で読み込んだ酸素センサ16からの電圧信号と、目標空
燃比(理論空燃比)相当のスライスレベル(例えば50
0mV)とを比較する。酸素センサ16からの電圧信号
がスライスレベルよりも大きく空燃比が理論空燃比より
もリッチであると判別されたときには、ステップ3へ進
み、今回のリッチ判別が初回であるか否かを判別する。
【0026】リッチ判別が初回であるときには、ステッ
プ4へ進んで前回までに設定されている空燃比フィード
バック補正係数LMDを最大値aにセットする。次のス
テップ5では、前回までの補正係数LMDから所定の比
例定数Pだけ減算して補正係数LMDの減少制御を図る
。また、ステップ6では、比例制御を実行したことを示
すフラグFPに1をセットする。
プ4へ進んで前回までに設定されている空燃比フィード
バック補正係数LMDを最大値aにセットする。次のス
テップ5では、前回までの補正係数LMDから所定の比
例定数Pだけ減算して補正係数LMDの減少制御を図る
。また、ステップ6では、比例制御を実行したことを示
すフラグFPに1をセットする。
【0027】一方、ステップ3で、リッチ判別が初回で
ないと判別されたときには、ステップ7へ進み、積分定
数Iに最新の燃料噴射量Tiを乗算した値を、前回まで
の補正係数LMDから減算して補正係数LMDを更新す
る。また、ステップ2で酸素センサ16からの電圧信号
がスライスレベルよりも小さく空燃比が目標に対してリ
ーンであると判別されたときには、リッチ判別のときと
同様にして、まず、ステップ8で今回のリーン判別が初
回であるか否かを判別し、初回であるときには、ステッ
プ9へ進んで前回までの補正係数LMDを最小値bにセ
ットする。
ないと判別されたときには、ステップ7へ進み、積分定
数Iに最新の燃料噴射量Tiを乗算した値を、前回まで
の補正係数LMDから減算して補正係数LMDを更新す
る。また、ステップ2で酸素センサ16からの電圧信号
がスライスレベルよりも小さく空燃比が目標に対してリ
ーンであると判別されたときには、リッチ判別のときと
同様にして、まず、ステップ8で今回のリーン判別が初
回であるか否かを判別し、初回であるときには、ステッ
プ9へ進んで前回までの補正係数LMDを最小値bにセ
ットする。
【0028】次のステップ10では、前回までの補正係
数LMDに比例定数Pを加算して更新することにより燃
料噴射量Tiの増量補正を図り、ステップ11では、比
例制御が実行されたことを示すフラグFPに1をセット
する。ステップ8でリーン判別が初回でないと判別され
たときには、ステップ12へ進み、積分定数Iに最新の
燃料噴射量Tiを乗算した値を、前回までの補正係数L
MDに加算し、補正係数LMDを徐々に増大させる。
数LMDに比例定数Pを加算して更新することにより燃
料噴射量Tiの増量補正を図り、ステップ11では、比
例制御が実行されたことを示すフラグFPに1をセット
する。ステップ8でリーン判別が初回でないと判別され
たときには、ステップ12へ進み、積分定数Iに最新の
燃料噴射量Tiを乗算した値を、前回までの補正係数L
MDに加算し、補正係数LMDを徐々に増大させる。
【0029】リッチ・リーン判別の初回で補正係数LM
Dの比例制御を実行したときには、更に、空燃比学習補
正制御に関わる後述するような各種処理を行う。尚、本
実施例では、図12に示すように、全運転領域を16の
単位運転領域に区分してそれぞれの単位運転領域別に学
習補正係数KBLRC1を書き換え可能に記憶した16
領域学習マップと、全運転領域を256 の単位運転領
域に区分してそれぞれの単位運転領域別に学習補正係数
KBLRC2を更新可能に記憶する256 領域学習マ
ップとを備えて、空燃比学習制御装置が構成される。ま
た、運転領域を区分しないで全運転条件で適用される学
習補正係数KBLRC φが、別途学習設定されるよう
になっている。
Dの比例制御を実行したときには、更に、空燃比学習補
正制御に関わる後述するような各種処理を行う。尚、本
実施例では、図12に示すように、全運転領域を16の
単位運転領域に区分してそれぞれの単位運転領域別に学
習補正係数KBLRC1を書き換え可能に記憶した16
領域学習マップと、全運転領域を256 の単位運転領
域に区分してそれぞれの単位運転領域別に学習補正係数
KBLRC2を更新可能に記憶する256 領域学習マ
ップとを備えて、空燃比学習制御装置が構成される。ま
た、運転領域を区分しないで全運転条件で適用される学
習補正係数KBLRC φが、別途学習設定されるよう
になっている。
【0030】空燃比フィードバック補正係数LMDの比
例制御が行われたときには、まず、ステップ13で、1
6領域学習マップ上の1つの運転領域に安定して止まっ
ている状態か否かを判別するためのカウント値cntの
判別を行う。後述する図5〜図8のフローチャートに示
すプログラムにおいて、16領域学習マップ上で該当す
る運転領域が所定微小時間毎に変化しているときに、前
記カウント値cntには所定値(例えば4)がセットさ
れるようになっており、ステップ13でカウント値cn
tがゼロでないと判別されると、ステップ14へ進んで
カウント値cntを1ダウンさせる処理を行う。
例制御が行われたときには、まず、ステップ13で、1
6領域学習マップ上の1つの運転領域に安定して止まっ
ている状態か否かを判別するためのカウント値cntの
判別を行う。後述する図5〜図8のフローチャートに示
すプログラムにおいて、16領域学習マップ上で該当す
る運転領域が所定微小時間毎に変化しているときに、前
記カウント値cntには所定値(例えば4)がセットさ
れるようになっており、ステップ13でカウント値cn
tがゼロでないと判別されると、ステップ14へ進んで
カウント値cntを1ダウンさせる処理を行う。
【0031】ステップ15では、前記16領域学習マッ
プ上で殆どの運転領域が学習済であるか否かを、後述す
るように各領域別に設定される学習済フラグF〔B,A
〕に基づいて判断する。16領域学習マップ上の16領
域の殆どが学習済であるときには、ステップ16へ進み
、256 領域学習マップ上での該当運転領域が前回と
同じであるか否かを判別する。そして、該当運転領域の
変化があった場合にのみステップ17へ進む。
プ上で殆どの運転領域が学習済であるか否かを、後述す
るように各領域別に設定される学習済フラグF〔B,A
〕に基づいて判断する。16領域学習マップ上の16領
域の殆どが学習済であるときには、ステップ16へ進み
、256 領域学習マップ上での該当運転領域が前回と
同じであるか否かを判別する。そして、該当運転領域の
変化があった場合にのみステップ17へ進む。
【0032】ステップ17では、最新の補正係数LMD
平均値(a+b)/2の目標収束値Target(=1
.0)に対する偏差の絶対値に基づいて、学習値の不適
切度合いを示すΔストレスのマップを参照し、補正係数
LMDの目標収束値Targetに対する偏差の増大に
応じてΔストレスを増大設定する。そして、前記Δスト
レスの積算値がセットされる「ストレス」に今回求めた
Δストレスを加算する。
平均値(a+b)/2の目標収束値Target(=1
.0)に対する偏差の絶対値に基づいて、学習値の不適
切度合いを示すΔストレスのマップを参照し、補正係数
LMDの目標収束値Targetに対する偏差の増大に
応じてΔストレスを増大設定する。そして、前記Δスト
レスの積算値がセットされる「ストレス」に今回求めた
Δストレスを加算する。
【0033】後述するように、前記ストレスが所定以上
になると、既に学習済の空燃比学習補正係数KBLRC
が不適切であるものと判断し、学習を最初からやり直
させるようになっている。即ち、充分に学習が進行した
状態では、運転条件が変化しても補正係数LMDは略目
標収束値Targetに安定するはずであるが、学習結
果が不適切であると補正係数LMDを変化させてこれを
補償しようとするから、補正係数LMDの目標収束値T
argetに対する偏差に応じて学習結果を良否を判断
し、学習結果が不適切であるときには、最初から学習を
やり直させて適切な学習結果が得られるようにする。
になると、既に学習済の空燃比学習補正係数KBLRC
が不適切であるものと判断し、学習を最初からやり直
させるようになっている。即ち、充分に学習が進行した
状態では、運転条件が変化しても補正係数LMDは略目
標収束値Targetに安定するはずであるが、学習結
果が不適切であると補正係数LMDを変化させてこれを
補償しようとするから、補正係数LMDの目標収束値T
argetに対する偏差に応じて学習結果を良否を判断
し、学習結果が不適切であるときには、最初から学習を
やり直させて適切な学習結果が得られるようにする。
【0034】図5〜図8のフローチャートに示すプログ
ラムは、運転領域別の空燃比学習プログラムであり、所
定微小時間(例えば10ms) 毎に実行される。ステ
ップ21では、前記フラグFPの判別を行い、FPが1
であるときには、ステップ22へ進みFPをゼロリセッ
トした後、本プログラムによる各種処理を行い、ゼロで
あるときにはそのまま本プログラムを終了させる。
ラムは、運転領域別の空燃比学習プログラムであり、所
定微小時間(例えば10ms) 毎に実行される。ステ
ップ21では、前記フラグFPの判別を行い、FPが1
であるときには、ステップ22へ進みFPをゼロリセッ
トした後、本プログラムによる各種処理を行い、ゼロで
あるときにはそのまま本プログラムを終了させる。
【0035】ステップ22でFPをゼロリセットすると
、次のステップ23では、全運転領域に共通の空燃比学
習補正値である学習補正係数KBLRC φ(初期値1
.0 )が学習済であるか否かを示すフラグFφの判別
を行う。ここで、フラグFφがゼロであって学習補正係
数 KBLRCφの学習が済んでいないときには、ステ
ップ24へ進み、前記補正係数LMDの最大・最小値a
,bの平均値(←(a+b)/2)が略1.0 である
か否かを判別する。
、次のステップ23では、全運転領域に共通の空燃比学
習補正値である学習補正係数KBLRC φ(初期値1
.0 )が学習済であるか否かを示すフラグFφの判別
を行う。ここで、フラグFφがゼロであって学習補正係
数 KBLRCφの学習が済んでいないときには、ステ
ップ24へ進み、前記補正係数LMDの最大・最小値a
,bの平均値(←(a+b)/2)が略1.0 である
か否かを判別する。
【0036】(a+b)/2が略1.0 でないときに
は、ステップ26へ進み、(a+b)/2から補正係数
LMDの目標収束値Target(本実施例では1.0
)を減算した値に所定係数Xを掛けた値を前回までの
学習補正係数KBLRC φに加算し、該加算結果を新
たな学習補正係数KBLRC φとして設定する。KB
LRC φ←KBLRC φ+X{(a+b)/2−T
arget}また、ステップ26では、16領域学習マ
ップ及び256 領域学習マップそれぞれの運転領域に
記憶されている学習補正係数KBLRC1,学習補正係
数KBLRC2を全て初期値である1.0 にリセット
する。
は、ステップ26へ進み、(a+b)/2から補正係数
LMDの目標収束値Target(本実施例では1.0
)を減算した値に所定係数Xを掛けた値を前回までの
学習補正係数KBLRC φに加算し、該加算結果を新
たな学習補正係数KBLRC φとして設定する。KB
LRC φ←KBLRC φ+X{(a+b)/2−T
arget}また、ステップ26では、16領域学習マ
ップ及び256 領域学習マップそれぞれの運転領域に
記憶されている学習補正係数KBLRC1,学習補正係
数KBLRC2を全て初期値である1.0 にリセット
する。
【0037】前記ステップ24で(a+b)/2が略1
であると判別されると、ステップ25で前記フラグFφ
に1をセットして、全運転領域に対応する学習補正係数
KBLRCφの学習が済んでいることが判別されるよ
うにする。 一方、ステップ23で前記フラグFφが1であると判別
された場合には、今度は運転領域を基本燃料噴射量Tp
と機関回転速度Nとに基づいて複数に区分した運転領域
別の空燃比学習を行う。
であると判別されると、ステップ25で前記フラグFφ
に1をセットして、全運転領域に対応する学習補正係数
KBLRCφの学習が済んでいることが判別されるよ
うにする。 一方、ステップ23で前記フラグFφが1であると判別
された場合には、今度は運転領域を基本燃料噴射量Tp
と機関回転速度Nとに基づいて複数に区分した運転領域
別の空燃比学習を行う。
【0038】まず、ステップ27では、256 領域学
習マップ上で、現在の運転条件が該当する領域〔K,I
〕を、予め運転領域を256 領域に区切るために設定
されている基本燃料噴射量Tp及び機関回転速度Nの閾
値Tp〔i〕,N〔i〕に基づいて判別する。ここで、
図12に示すように、Kは機関回転速度Nをパラメータ
として区切られる16領域における該当領域の位置を示
し、Iは基本燃料噴射量Tpをパラメータとして区切ら
れる16領域における該当領域の位置を示す。
習マップ上で、現在の運転条件が該当する領域〔K,I
〕を、予め運転領域を256 領域に区切るために設定
されている基本燃料噴射量Tp及び機関回転速度Nの閾
値Tp〔i〕,N〔i〕に基づいて判別する。ここで、
図12に示すように、Kは機関回転速度Nをパラメータ
として区切られる16領域における該当領域の位置を示
し、Iは基本燃料噴射量Tpをパラメータとして区切ら
れる16領域における該当領域の位置を示す。
【0039】次のステップ28では、前記該当領域〔K
,I〕が含まれる16領域学習マップ上の領域として、
16領域学習マップ上での該当領域〔B,A〕を検出す
る。そして、次のステップ29では、16領域学習マッ
プ上での該当領域が前回と同一であるか否かを判別する
。そして、16領域学習マップ上で該当運転領域が変化
したときには、ステップ30へ進んで、前記ステップ1
4で1ダウンされるカウント値cnt に所定値(例え
ば4)をセットする。
,I〕が含まれる16領域学習マップ上の領域として、
16領域学習マップ上での該当領域〔B,A〕を検出す
る。そして、次のステップ29では、16領域学習マッ
プ上での該当領域が前回と同一であるか否かを判別する
。そして、16領域学習マップ上で該当運転領域が変化
したときには、ステップ30へ進んで、前記ステップ1
4で1ダウンされるカウント値cnt に所定値(例え
ば4)をセットする。
【0040】ステップ31では、16領域学習マップに
おいて領域〔B,A〕における学習が終了しているか否
かを示すフラグF〔B,A〕を判別し、このフラグF〔
B,A〕がゼロであって領域〔B,A〕での学習が終了
していないときには、ステップ32へ進む。ステップ3
2では前記カウント値cnt がゼロであるか否かを判
別し、カウント値cnt がゼロでなく16領域学習マ
ップにおける該当領域の変動があるときには、そのまま
本プログラムを終了させ、カウント値cnt がゼロで
あって16領域学習マップ上で該当する運転領域が安定
しているときにのみステップ33へ進む。
おいて領域〔B,A〕における学習が終了しているか否
かを示すフラグF〔B,A〕を判別し、このフラグF〔
B,A〕がゼロであって領域〔B,A〕での学習が終了
していないときには、ステップ32へ進む。ステップ3
2では前記カウント値cnt がゼロであるか否かを判
別し、カウント値cnt がゼロでなく16領域学習マ
ップにおける該当領域の変動があるときには、そのまま
本プログラムを終了させ、カウント値cnt がゼロで
あって16領域学習マップ上で該当する運転領域が安定
しているときにのみステップ33へ進む。
【0041】ステップ33では、前記図3及び図4のフ
ローチャートに示したプログラムでサンプリングされる
空燃比フィードバック補正係数LMDの最大・最小値a
,bの平均値(a+b)/2、即ち、補正係数LMDの
中心値が、目標収束値Targetである初期値(=1
.0)付近であるか否かによって学習の進行を判別する
。ここで、補正係数LMDの平均値が略1.0 である
と認められず学習が済んでいないときにはそのままステ
ップ35へ進み、補正係数LMDの平均値が略1.0
であって学習済であると認められるときには、ステップ
34でフラグF〔B,A〕に1をセットしてからステッ
プ35へ進む。
ローチャートに示したプログラムでサンプリングされる
空燃比フィードバック補正係数LMDの最大・最小値a
,bの平均値(a+b)/2、即ち、補正係数LMDの
中心値が、目標収束値Targetである初期値(=1
.0)付近であるか否かによって学習の進行を判別する
。ここで、補正係数LMDの平均値が略1.0 である
と認められず学習が済んでいないときにはそのままステ
ップ35へ進み、補正係数LMDの平均値が略1.0
であって学習済であると認められるときには、ステップ
34でフラグF〔B,A〕に1をセットしてからステッ
プ35へ進む。
【0042】ステップ35では、16領域学習マップ上
の領域〔B,A〕に対応して記憶されている学習補正係
数KBLRC1に対して、最大・最小値a,bの平均値
から目標収束値Target(本実施例では1.0)を
減算した値に所定係数X1を掛けた値を加算し、その結
果を16領域学習マップ上の今回の運転領域〔B,A〕
に対応する学習補正係数KBLRC1として新たに設定
し、マップデータの更新を行う。
の領域〔B,A〕に対応して記憶されている学習補正係
数KBLRC1に対して、最大・最小値a,bの平均値
から目標収束値Target(本実施例では1.0)を
減算した値に所定係数X1を掛けた値を加算し、その結
果を16領域学習マップ上の今回の運転領域〔B,A〕
に対応する学習補正係数KBLRC1として新たに設定
し、マップデータの更新を行う。
【0043】KBLRC1〔B,A〕←KBLRC1〔
B,A〕+X1 {(a+b)/2−Target}こ
のような16領域学習マップ上の〔B,A〕領域の学習
中においては、256 領域学習マップにおいてこの〔
B,A〕領域に含まれる16領域の学習補正係数KBL
RC2については、ステップ36でこれを全て初期値1
.0 にリセットする。一方、ステップ31で、フラグ
F〔B,A〕が1であると判別されたときには、ステッ
プ37へ進み、16領域学習マップ上の運転領域〔B,
A〕を、更に16領域に細分する256 領域学習マッ
プの学習へ移行する。
B,A〕+X1 {(a+b)/2−Target}こ
のような16領域学習マップ上の〔B,A〕領域の学習
中においては、256 領域学習マップにおいてこの〔
B,A〕領域に含まれる16領域の学習補正係数KBL
RC2については、ステップ36でこれを全て初期値1
.0 にリセットする。一方、ステップ31で、フラグ
F〔B,A〕が1であると判別されたときには、ステッ
プ37へ進み、16領域学習マップ上の運転領域〔B,
A〕を、更に16領域に細分する256 領域学習マッ
プの学習へ移行する。
【0044】ステップ37では、補正係数LMDの平均
値である(a+b)/2が、目標収束値Targetの
1.0 に略一致しているか否かの判別を行い、(a+
b)/2が略1.0でなく空燃比フィードバック補正係
数LMDによる補正を必要としている未学習状態である
ときには、ステップ38へ進む。ステップ38では、(
a+b)/2から目標収束値Target(本実施例で
は1.0 )を減算した値に所定係数X2を掛けた値を
、256 領域学習マップの現在の運転条件が含まれる
運転領域〔K,I〕に対応して記憶されていた学習補正
係数KBLRC2〔K,I〕に加算し、この加算結果を
当該運転領域〔K,I〕における新たな補正係数KBL
RC2〔K,I〕として設定し、マップデータの更新を
行う。
値である(a+b)/2が、目標収束値Targetの
1.0 に略一致しているか否かの判別を行い、(a+
b)/2が略1.0でなく空燃比フィードバック補正係
数LMDによる補正を必要としている未学習状態である
ときには、ステップ38へ進む。ステップ38では、(
a+b)/2から目標収束値Target(本実施例で
は1.0 )を減算した値に所定係数X2を掛けた値を
、256 領域学習マップの現在の運転条件が含まれる
運転領域〔K,I〕に対応して記憶されていた学習補正
係数KBLRC2〔K,I〕に加算し、この加算結果を
当該運転領域〔K,I〕における新たな補正係数KBL
RC2〔K,I〕として設定し、マップデータの更新を
行う。
【0045】KBLRC2〔K, I〕←KBLRC2
〔K, I〕+X2 {(a+b)/2−Target
}一方、ステップ37で、補正係数LMDの平均値であ
る(a+b)/2が目標収束値Targetの1.0
に略一致していると判別されたときには、ステップ39
へ進み、256 領域学習マップの現在の運転条件が含
まれる運転領域〔K,I〕の学習が終了したことが判別
されるようにフラグFF〔K,I〕に1をセットする。
〔K, I〕+X2 {(a+b)/2−Target
}一方、ステップ37で、補正係数LMDの平均値であ
る(a+b)/2が目標収束値Targetの1.0
に略一致していると判別されたときには、ステップ39
へ進み、256 領域学習マップの現在の運転条件が含
まれる運転領域〔K,I〕の学習が終了したことが判別
されるようにフラグFF〔K,I〕に1をセットする。
【0046】そして、ステップ40以降では、今回学習
が終了したと判別された256 領域学習マップ上の所
定運転領域〔K,I〕に対して同一マップ上で隣接する
運転条件の近い複数の運転領域それぞれに対して、該当
領域〔K,I〕における学習補正係数KBLRC2に基
づき推定される適正な学習補正係数KBLRC2を設定
する制御を行う。 ステップ40では、256 領域学習マップにおいて現
在の運転条件が含まれる領域位置を示すK,Iからそれ
ぞれ1を減算した値をm,nにセットし、次のステップ
41ではm=K+2であるか否かを判別する。
が終了したと判別された256 領域学習マップ上の所
定運転領域〔K,I〕に対して同一マップ上で隣接する
運転条件の近い複数の運転領域それぞれに対して、該当
領域〔K,I〕における学習補正係数KBLRC2に基
づき推定される適正な学習補正係数KBLRC2を設定
する制御を行う。 ステップ40では、256 領域学習マップにおいて現
在の運転条件が含まれる領域位置を示すK,Iからそれ
ぞれ1を減算した値をm,nにセットし、次のステップ
41ではm=K+2であるか否かを判別する。
【0047】ステップ40からステップ41へ進んだと
きにはステップ41でNOの判別が下されるから、ステ
ップ42に進んで〔m,n〕で示される256 領域学
習マップ上の運転領域の学習が終了しているか否かを、
フラグFF〔m,n〕が1であるかゼロであるかによっ
て判別する。ここで、フラグFF〔m,n〕がゼロであ
って学習が終了していないときには、ステップ43へ進
む。このステップ43では、前記256 領域学習マッ
プ上における領域位置〔m,n〕を16領域学習マップ
上の領域位置〔m/4,n/4〕に変換することで、領
域〔m,n〕が16領域学習マップ上で含まれる領域を
特定する。そして、256 領域学習マップ上での該当
領域である〔K,I〕に隣接する領域〔m,n〕が、1
6領域学習マップ上で〔K,I〕と同じ〔B,A〕領域
に含まれるか否かを判別する。
きにはステップ41でNOの判別が下されるから、ステ
ップ42に進んで〔m,n〕で示される256 領域学
習マップ上の運転領域の学習が終了しているか否かを、
フラグFF〔m,n〕が1であるかゼロであるかによっ
て判別する。ここで、フラグFF〔m,n〕がゼロであ
って学習が終了していないときには、ステップ43へ進
む。このステップ43では、前記256 領域学習マッ
プ上における領域位置〔m,n〕を16領域学習マップ
上の領域位置〔m/4,n/4〕に変換することで、領
域〔m,n〕が16領域学習マップ上で含まれる領域を
特定する。そして、256 領域学習マップ上での該当
領域である〔K,I〕に隣接する領域〔m,n〕が、1
6領域学習マップ上で〔K,I〕と同じ〔B,A〕領域
に含まれるか否かを判別する。
【0048】即ち、〔K,I〕は〔B,A〕に含まれる
領域であるが、〔K,I〕の隣接領域は、16領域学習
マップ上で〔B,A〕に隣接する別の領域に含まれる場
合があるためであり、該当領域〔K,I〕と隣接領域〔
m,n〕とが同じ〔B,A〕に含まれるときには(〔m
/4,n/4〕=〔B,A〕)、ステップ44へ進み、
今回学習済であると判別された〔K,I〕領域に対応す
る学習補正係数KBLRC2をそのまま隣接領域〔m,
n〕の学習値として記憶させる。
領域であるが、〔K,I〕の隣接領域は、16領域学習
マップ上で〔B,A〕に隣接する別の領域に含まれる場
合があるためであり、該当領域〔K,I〕と隣接領域〔
m,n〕とが同じ〔B,A〕に含まれるときには(〔m
/4,n/4〕=〔B,A〕)、ステップ44へ進み、
今回学習済であると判別された〔K,I〕領域に対応す
る学習補正係数KBLRC2をそのまま隣接領域〔m,
n〕の学習値として記憶させる。
【0049】一方、ステップ43で該当領域〔K,I〕
の隣接領域〔m,n〕が、16領域学習マップ上で異な
る領域に含まれると判別されたときには(〔m/4,n
/4〕≠〔B,A〕)、ステップ45へ進み、隣接領域
〔m,n〕に以下の式で算出される学習補正係数KBL
RC2を格納させる。KBLRC2〔m,n〕←KBL
RC1〔B,A〕+KBLRC2〔K,I〕−KBLR
C1〔m/4,n/4〕上記のようにしてKBLRC2
〔m,n〕を更新設定すると、ステップ46では、前記
mを1アップさせて再びステップ41に戻り、m=K+
2となるまで各運転領域毎に学習済・未学習を判別する
。
の隣接領域〔m,n〕が、16領域学習マップ上で異な
る領域に含まれると判別されたときには(〔m/4,n
/4〕≠〔B,A〕)、ステップ45へ進み、隣接領域
〔m,n〕に以下の式で算出される学習補正係数KBL
RC2を格納させる。KBLRC2〔m,n〕←KBL
RC1〔B,A〕+KBLRC2〔K,I〕−KBLR
C1〔m/4,n/4〕上記のようにしてKBLRC2
〔m,n〕を更新設定すると、ステップ46では、前記
mを1アップさせて再びステップ41に戻り、m=K+
2となるまで各運転領域毎に学習済・未学習を判別する
。
【0050】そして、ステップ46におけるmの1アッ
プ処理の結果ステップ41でm=K+2であると判別さ
れると、今度はステップ47へ進みn=I+2であるか
否かを判別し、n≠I+2であるときには、ステップ4
8で再びmをK−1にセットし、次のステップ49では
nを1アップさせた後、ステップ42へ進む。ステップ
47でn=I+2であると判別されたときには、〔K,
I〕を囲む8つの運転領域全ての判別処理が終わったこ
とになるので、このときには、ステップ38へ進んで、
今回の領域〔K,I〕において既に学習済であると判断
されている学習補正係数KBLRC2の学習更新を行わ
せる。
プ処理の結果ステップ41でm=K+2であると判別さ
れると、今度はステップ47へ進みn=I+2であるか
否かを判別し、n≠I+2であるときには、ステップ4
8で再びmをK−1にセットし、次のステップ49では
nを1アップさせた後、ステップ42へ進む。ステップ
47でn=I+2であると判別されたときには、〔K,
I〕を囲む8つの運転領域全ての判別処理が終わったこ
とになるので、このときには、ステップ38へ進んで、
今回の領域〔K,I〕において既に学習済であると判断
されている学習補正係数KBLRC2の学習更新を行わ
せる。
【0051】前述のように、本実施例では、まず、全運
転領域に対応する学習補正係数KBLRC φを学習し
た後に、16領域学習マップ上での運転領域毎の学習を
行わせ、更に、この16領域学習マップの学習が済んで
いる領域については、その領域を更に16領域に分けて
学習を行わせるようにしたので、大きな運転領域から小
さな運転領域での学習へと段階的に学習される領域の大
きさを狭めて学習が進行することになり、大きな運転領
域別の学習により空燃比の収束性が確保されると共に、
学習が進行すれば細かな運転領域を該当運転領域として
学習が行われるから、運転条件の違いによる要求補正値
の違いに精度良く対応できる。
転領域に対応する学習補正係数KBLRC φを学習し
た後に、16領域学習マップ上での運転領域毎の学習を
行わせ、更に、この16領域学習マップの学習が済んで
いる領域については、その領域を更に16領域に分けて
学習を行わせるようにしたので、大きな運転領域から小
さな運転領域での学習へと段階的に学習される領域の大
きさを狭めて学習が進行することになり、大きな運転領
域別の学習により空燃比の収束性が確保されると共に、
学習が進行すれば細かな運転領域を該当運転領域として
学習が行われるから、運転条件の違いによる要求補正値
の違いに精度良く対応できる。
【0052】上記のようにして学習された結果は、図9
のフローチャートに示すプログラムに従って修正を受け
ると共に、学習結果の中から実際の運転条件に対応する
学習補正係数KBLRC が読み出される。図9のフロ
ーチャートに示されるプログラムの処理内容を簡単に述
べると、学習補正係数KBLRC1の目標収束値Tar
getに対する偏差分を、学習補正係数KBLRC1が
適用される運転領域に含まれる16領域それぞれの学習
補正係数KBLRC2にそれぞれ加算することにより、
学習補正係数KBLRC1による補正負担分を学習補正
係数KBLRC2側に転嫁するものであり、かかる補正
分の転嫁が行われた後は学習補正係数KBLRC1を全
て目標収束値Targetにリセットして、2重の空燃
比補正を回避する。即ち、16領域学習マップと256
領域学習マップとでそれぞれに行われた学習結果を、
256 領域学習マップ上の256 領域別の学習補正
係数KBLRC2に纏めてしまうものである。
のフローチャートに示すプログラムに従って修正を受け
ると共に、学習結果の中から実際の運転条件に対応する
学習補正係数KBLRC が読み出される。図9のフロ
ーチャートに示されるプログラムの処理内容を簡単に述
べると、学習補正係数KBLRC1の目標収束値Tar
getに対する偏差分を、学習補正係数KBLRC1が
適用される運転領域に含まれる16領域それぞれの学習
補正係数KBLRC2にそれぞれ加算することにより、
学習補正係数KBLRC1による補正負担分を学習補正
係数KBLRC2側に転嫁するものであり、かかる補正
分の転嫁が行われた後は学習補正係数KBLRC1を全
て目標収束値Targetにリセットして、2重の空燃
比補正を回避する。即ち、16領域学習マップと256
領域学習マップとでそれぞれに行われた学習結果を、
256 領域学習マップ上の256 領域別の学習補正
係数KBLRC2に纏めてしまうものである。
【0053】図9のフローチャートに示すプログラムは
、バックグラウンド処理されるものであり、まず、ステ
ップ51において256 領域学習マップ上の各領域を
指示するためのカウンタi,jをそれぞれゼロリセット
し、次に、ステップ52でカウンタiが15を越えたか
否かを判別する。そして、カウンタiが15以下である
ときには、ステップ53へ進み、〔j,i〕で指示され
る256 領域学習マップ上の領域に対応する学習補正
係数KBLRC2〔j,i〕をK2にセットし、また、
〔j,i〕が含まれる16領域学習マップ上の領域〔j
/4,i/4〕に対応する学習補正係数KBLRC1〔
j/4,i/4〕をK1にセットする。
、バックグラウンド処理されるものであり、まず、ステ
ップ51において256 領域学習マップ上の各領域を
指示するためのカウンタi,jをそれぞれゼロリセット
し、次に、ステップ52でカウンタiが15を越えたか
否かを判別する。そして、カウンタiが15以下である
ときには、ステップ53へ進み、〔j,i〕で指示され
る256 領域学習マップ上の領域に対応する学習補正
係数KBLRC2〔j,i〕をK2にセットし、また、
〔j,i〕が含まれる16領域学習マップ上の領域〔j
/4,i/4〕に対応する学習補正係数KBLRC1〔
j/4,i/4〕をK1にセットする。
【0054】次にステップ54では、以下の式に従って
学習補正係数KBLRC2〔j,i〕の更新を行う。K
BLRC2〔j,i〕←K2+(K1−Target)
上記の式で256 領域学習マップ上の学習補正係数K
BLRC2〔j,i〕を更新すれば、学習補正係数KB
LRC1による補正負担分が、学習補正係数KBLRC
2側に転嫁されることになる。
学習補正係数KBLRC2〔j,i〕の更新を行う。K
BLRC2〔j,i〕←K2+(K1−Target)
上記の式で256 領域学習マップ上の学習補正係数K
BLRC2〔j,i〕を更新すれば、学習補正係数KB
LRC1による補正負担分が、学習補正係数KBLRC
2側に転嫁されることになる。
【0055】学習補正係数KBLRC2の更新をステッ
プ54で行うと、ステップ55でカウンタiを1アップ
させてステップ52へ戻る。ここで、カウンタiが15
を越えるようになると、今度はステップ52からステッ
プ56へ進み、カウンタjが15を越えたか否かを判別
する。そして、カウンタjが15以下であるときには、
ステップ57でカウンタiをゼロリセットすると共に、
カウンタjを1アップさせてから再びステップ52へ戻
ることにより、256 領域の全てについてステップ5
4における更新を行わせる。
プ54で行うと、ステップ55でカウンタiを1アップ
させてステップ52へ戻る。ここで、カウンタiが15
を越えるようになると、今度はステップ52からステッ
プ56へ進み、カウンタjが15を越えたか否かを判別
する。そして、カウンタjが15以下であるときには、
ステップ57でカウンタiをゼロリセットすると共に、
カウンタjを1アップさせてから再びステップ52へ戻
ることにより、256 領域の全てについてステップ5
4における更新を行わせる。
【0056】256 領域学習マップ上の学習補正係数
KBLRC2の更新が終了して、ステップ56でカウン
タjが15を越えたことが判別されると、学習補正係数
KBLRC1による補正負担分を全て学習補正係数KB
LRC2側に転嫁したので、二重の補正が行われないよ
うに、ステップ58において16領域学習マップ上の1
6領域それぞれに対応する学習補正係数KBLRC1を
全て目標収束値Target(=1.0)、即ち、初期
値にリセットする処理を行う。
KBLRC2の更新が終了して、ステップ56でカウン
タjが15を越えたことが判別されると、学習補正係数
KBLRC1による補正負担分を全て学習補正係数KB
LRC2側に転嫁したので、二重の補正が行われないよ
うに、ステップ58において16領域学習マップ上の1
6領域それぞれに対応する学習補正係数KBLRC1を
全て目標収束値Target(=1.0)、即ち、初期
値にリセットする処理を行う。
【0057】学習補正係数KBLRC1による補正負担
分を、学習補正係数KBLRC2側に転嫁させ、学習補
正係数KBLRC1を全て初期値にリセットする処理が
終了し、各学習マップ別に行われ運転領域別の学習結果
を256 領域学習マップ上の学習補正係数KBLRC
2に纏めると、次のステップ59では、かかる256
領域学習マップから現在の運転条件に対応する学習補正
係数KBLRC2を直線補間を行って読み出す。
分を、学習補正係数KBLRC2側に転嫁させ、学習補
正係数KBLRC1を全て初期値にリセットする処理が
終了し、各学習マップ別に行われ運転領域別の学習結果
を256 領域学習マップ上の学習補正係数KBLRC
2に纏めると、次のステップ59では、かかる256
領域学習マップから現在の運転条件に対応する学習補正
係数KBLRC2を直線補間を行って読み出す。
【0058】ここで、学習補正係数KBLRC2は、本
実施例において最も狭い運転領域毎に学習された空燃比
学習補正値であり、然も、前述のように、16領域学習
マップ上の学習補正係数KBLRC1の負担分が転嫁さ
れて256 領域それぞれでの補正要求レベルを略忠実
に表すものである。 従って、各運転領域間における補正レベルに大きな段差
は生じないが、上記のように直線補間を行って実際の運
転条件に対応するデータを読み出せば、実際の運転条件
の変化に対して学習補正係数KBLRC2を滑らかに変
化させることができ、かつ、最も狭い運転領域を単位と
して補間演算が行われるので高精度の補間演算が可能と
なる。 このため、学習マップ上での該当領域が切り替わっても
、学習補正レベルがステップ的に変化することがなく、
要求補正レベルに従って精度良く学習補正係数KBLR
C を変化させることができるから、運転条件の変化に
伴う空燃比変動を良好に抑止できるようになる。
実施例において最も狭い運転領域毎に学習された空燃比
学習補正値であり、然も、前述のように、16領域学習
マップ上の学習補正係数KBLRC1の負担分が転嫁さ
れて256 領域それぞれでの補正要求レベルを略忠実
に表すものである。 従って、各運転領域間における補正レベルに大きな段差
は生じないが、上記のように直線補間を行って実際の運
転条件に対応するデータを読み出せば、実際の運転条件
の変化に対して学習補正係数KBLRC2を滑らかに変
化させることができ、かつ、最も狭い運転領域を単位と
して補間演算が行われるので高精度の補間演算が可能と
なる。 このため、学習マップ上での該当領域が切り替わっても
、学習補正レベルがステップ的に変化することがなく、
要求補正レベルに従って精度良く学習補正係数KBLR
C を変化させることができるから、運転条件の変化に
伴う空燃比変動を良好に抑止できるようになる。
【0059】尚、前記補間演算においては、256 領
域学習マップの各領域を区切る基本燃料噴射量Tpと機
関回転速度Nの閾値Tp〔i〕,N〔i〕に基づき、図
13及び図14に示すように、各領域毎の基本燃料噴射
量Tp及び機関回転速度Nの幅の中心値(Tp〔i〕−
Tp〔i−1〕)/2,(N〔i〕−N〔i−1〕)/
2を求め、該中心値RTp〔i〕,RN〔i〕がその領
域での学習補正係数KBLRC2が対応する運転条件で
あると見做して補間演算させるようにする。これは、各
運転領域別に学習された学習補正係数KBLRC2は、
その領域での平均的な補正要求を示すものであるから、
領域内における平均的な運転条件に対応するデータであ
ると仮定して、補間演算の精度を更に上げるためである
。前記補間演算に用いる各領域での運転条件の中心値は
、予めROM上に記憶させておいても良いが、ROM上
の閾値Tp〔i〕,N〔i〕データに基づき演算させて
も良い。
域学習マップの各領域を区切る基本燃料噴射量Tpと機
関回転速度Nの閾値Tp〔i〕,N〔i〕に基づき、図
13及び図14に示すように、各領域毎の基本燃料噴射
量Tp及び機関回転速度Nの幅の中心値(Tp〔i〕−
Tp〔i−1〕)/2,(N〔i〕−N〔i−1〕)/
2を求め、該中心値RTp〔i〕,RN〔i〕がその領
域での学習補正係数KBLRC2が対応する運転条件で
あると見做して補間演算させるようにする。これは、各
運転領域別に学習された学習補正係数KBLRC2は、
その領域での平均的な補正要求を示すものであるから、
領域内における平均的な運転条件に対応するデータであ
ると仮定して、補間演算の精度を更に上げるためである
。前記補間演算に用いる各領域での運転条件の中心値は
、予めROM上に記憶させておいても良いが、ROM上
の閾値Tp〔i〕,N〔i〕データに基づき演算させて
も良い。
【0060】上記実施例では、学習補正係数KBLRC
1による補正分を学習補正係数KBLRC2側に負担さ
せるように学習結果の修正を行わせるようにしたが、上
記のような学習補正係数KBLRC1と学習補正係数K
BLRC2との間の補正負担の移動を行わずに、256
領域学習マップ上の領域間における補間演算において
、学習補正係数KBLRC2のデータに対応する学習補
正係数KBLRC1を加算した結果を離散データとして
用いるようにしても良い。
1による補正分を学習補正係数KBLRC2側に負担さ
せるように学習結果の修正を行わせるようにしたが、上
記のような学習補正係数KBLRC1と学習補正係数K
BLRC2との間の補正負担の移動を行わずに、256
領域学習マップ上の領域間における補間演算において
、学習補正係数KBLRC2のデータに対応する学習補
正係数KBLRC1を加算した結果を離散データとして
用いるようにしても良い。
【0061】更に、補間演算として、本実施例では演算
が簡単な直線補間を用いたが、演算負担が許容される場
合には例えば3次の補間演算を用いるようにしても良い
。実際の運転条件に対応する学習補正係数KBLRC2
をマップから直線補間を行って読み出すと、次のステッ
プ60では、以下のようにして最終的な学習補正係数K
BLRC を設定する。
が簡単な直線補間を用いたが、演算負担が許容される場
合には例えば3次の補間演算を用いるようにしても良い
。実際の運転条件に対応する学習補正係数KBLRC2
をマップから直線補間を行って読み出すと、次のステッ
プ60では、以下のようにして最終的な学習補正係数K
BLRC を設定する。
【0062】KBLRC ←KBLRC φ+KBLR
C2−Target学習補正係数KBLRC は基本燃
料噴射量Tpに対して乗算される補正項であり、各学習
補正係数KBLRC φ,KBLRC2は初期値を空燃
比フィードバック補正係数LMDの目標収束値Targ
et(=1.0 )として学習されるので、全運転条件
に対応する学習補正係数KBLRC φと256 領域
学習マップ上の該当領域に対応する学習補正係数KBL
RC2との加算値から、目標収束値Target(=1
.0 )を減算してある。尚、16領域学習マップの学
習補正係数KBLRC1が全て目標収束値Target
にリセットされているので、前記最終的な学習補正係数
KBLRC の設定に学習補正係数KBLRC1を関与
させなかったが、KBLRC ←KBLRC φ+KB
LRC1+KBLRC2−2×Targetとして、学
習補正係数KBLRC1を含めて学習補正係数KBLR
C を設定させても良い。
C2−Target学習補正係数KBLRC は基本燃
料噴射量Tpに対して乗算される補正項であり、各学習
補正係数KBLRC φ,KBLRC2は初期値を空燃
比フィードバック補正係数LMDの目標収束値Targ
et(=1.0 )として学習されるので、全運転条件
に対応する学習補正係数KBLRC φと256 領域
学習マップ上の該当領域に対応する学習補正係数KBL
RC2との加算値から、目標収束値Target(=1
.0 )を減算してある。尚、16領域学習マップの学
習補正係数KBLRC1が全て目標収束値Target
にリセットされているので、前記最終的な学習補正係数
KBLRC の設定に学習補正係数KBLRC1を関与
させなかったが、KBLRC ←KBLRC φ+KB
LRC1+KBLRC2−2×Targetとして、学
習補正係数KBLRC1を含めて学習補正係数KBLR
C を設定させても良い。
【0063】上記図9のフローチャートに示すプログラ
ムで最終設定された学習補正係数KBLRC は、図1
0のフローチャートに示す燃料噴射量設定プログラムに
おいて用いられる。図10のフローチャートに示す燃料
噴射量設定プログラムは、所定微小時間(例えば10m
s) 毎に実行されるものであり、まず、ステップ81
では、エアフローメータ13で検出された吸入空気流量
Q及びクランク角センサ14からの検出信号に基づき算
出した機関回転速度Nを入力する。
ムで最終設定された学習補正係数KBLRC は、図1
0のフローチャートに示す燃料噴射量設定プログラムに
おいて用いられる。図10のフローチャートに示す燃料
噴射量設定プログラムは、所定微小時間(例えば10m
s) 毎に実行されるものであり、まず、ステップ81
では、エアフローメータ13で検出された吸入空気流量
Q及びクランク角センサ14からの検出信号に基づき算
出した機関回転速度Nを入力する。
【0064】そして、次のステップ82では、ステップ
81で入力した吸入空気流量Qと機関回転速度Nとに基
づいて単位回転当たりの吸入空気流量Qに対応する基本
燃料噴射量Tp(←K×Q/N;Kは定数)を演算する
。次のステップ83では、前記ステップ82で演算した
基本燃料噴射量Tpに各種の補正を施して最終的な燃料
噴射量(燃料供給量)Tiを演算する。ここで、基本燃
料噴射量Tpの補正に用いられる補正値は、前記学習補
正係数KBLRC 、空燃比フィードバック補正係数L
MD、及び、水温センサ15で検出される冷却水温度T
wに基づく基本補正係数や始動後増量補正係数等を含ん
で設定される各種補正係数COEF、更に、バッテリ電
圧の変化による燃料噴射弁6の有効噴射時間の変化を補
正するための補正分Tsであり、Ti←Tp×LMD×
KBLRC ×COEF+Tsを演算して最終的な燃料
噴射量Tiが所定時間毎に更新される。
81で入力した吸入空気流量Qと機関回転速度Nとに基
づいて単位回転当たりの吸入空気流量Qに対応する基本
燃料噴射量Tp(←K×Q/N;Kは定数)を演算する
。次のステップ83では、前記ステップ82で演算した
基本燃料噴射量Tpに各種の補正を施して最終的な燃料
噴射量(燃料供給量)Tiを演算する。ここで、基本燃
料噴射量Tpの補正に用いられる補正値は、前記学習補
正係数KBLRC 、空燃比フィードバック補正係数L
MD、及び、水温センサ15で検出される冷却水温度T
wに基づく基本補正係数や始動後増量補正係数等を含ん
で設定される各種補正係数COEF、更に、バッテリ電
圧の変化による燃料噴射弁6の有効噴射時間の変化を補
正するための補正分Tsであり、Ti←Tp×LMD×
KBLRC ×COEF+Tsを演算して最終的な燃料
噴射量Tiが所定時間毎に更新される。
【0065】コントロールユニット12は所定の燃料噴
射タイミングになると、最新に演算された燃料噴射量T
iに相当するパルス巾の駆動パルス信号を燃料噴射弁6
に対して出力し、機関1への燃料供給量を制御する。ま
た、図11のフローチャートに示すプログラムは、前記
図3及び図4のフローチャートに示すプログラムに従っ
てサンプリングされる「ストレス」(空燃比フィードバ
ック補正係数LMDの目標収束値に対する偏差を積算し
た値)に基づく処理を行うプログラムであり、バックグ
ラウンドジョブ(BGJ)として実行される。
射タイミングになると、最新に演算された燃料噴射量T
iに相当するパルス巾の駆動パルス信号を燃料噴射弁6
に対して出力し、機関1への燃料供給量を制御する。ま
た、図11のフローチャートに示すプログラムは、前記
図3及び図4のフローチャートに示すプログラムに従っ
てサンプリングされる「ストレス」(空燃比フィードバ
ック補正係数LMDの目標収束値に対する偏差を積算し
た値)に基づく処理を行うプログラムであり、バックグ
ラウンドジョブ(BGJ)として実行される。
【0066】ステップ91では、空燃比学習補正値の不
適切度合いを示すパラメータとして、前記図3及び図4
のフローチャートに示すプログラムで設定されるストレ
スと、所定値(例えば0.8)とを比較して、学習が殆
ど終了しているときの空燃比フィードバック補正係数L
MDの変動度合い(ベース空燃比の変動度合い)が所定
以上であるか否かを判別する。
適切度合いを示すパラメータとして、前記図3及び図4
のフローチャートに示すプログラムで設定されるストレ
スと、所定値(例えば0.8)とを比較して、学習が殆
ど終了しているときの空燃比フィードバック補正係数L
MDの変動度合い(ベース空燃比の変動度合い)が所定
以上であるか否かを判別する。
【0067】ここで、前記ストレスが所定値を越えると
きには、学習が殆ど終了しているものの、その学習結果
が不適切で空燃比ずれが発生しているものと判断し、学
習補正係数KBLRC φからの学習を再度行わせるた
めにステップ92へ進む。ステップ92では、各運転領
域の空燃比学習が終了しているか否かを判別するための
フラグFφ,F〔0,0〕〜F〔3,3〕,FF〔0,
0〕〜FF〔16,16〕を全てゼロリセットすると共
に、上記のようにして学習が最初からやり直されること
になるから、ストレスについてもこれをゼロリセットす
る。
きには、学習が殆ど終了しているものの、その学習結果
が不適切で空燃比ずれが発生しているものと判断し、学
習補正係数KBLRC φからの学習を再度行わせるた
めにステップ92へ進む。ステップ92では、各運転領
域の空燃比学習が終了しているか否かを判別するための
フラグFφ,F〔0,0〕〜F〔3,3〕,FF〔0,
0〕〜FF〔16,16〕を全てゼロリセットすると共
に、上記のようにして学習が最初からやり直されること
になるから、ストレスについてもこれをゼロリセットす
る。
【0068】このように、空燃比フィードバック補正係
数LMDの基準値に対する偏差の度合いが所定以上に大
きくなったときに、学習をやり直すようにすれば、例え
ば吸気系に穴が開くなどの事故によって空燃比が急激に
変化したときに、大きな運転領域毎の学習が再度行われ
ることになるから、空燃比を速やかに目標空燃比に収束
させることができる。
数LMDの基準値に対する偏差の度合いが所定以上に大
きくなったときに、学習をやり直すようにすれば、例え
ば吸気系に穴が開くなどの事故によって空燃比が急激に
変化したときに、大きな運転領域毎の学習が再度行われ
ることになるから、空燃比を速やかに目標空燃比に収束
させることができる。
【0069】
【発明の効果】以上説明したように本発明によると、学
習の収束速度を確保しつつ運転条件の違いに対応し得る
細かな運転領域毎の学習を行わせることができると共に
、高精度な補間演算によって空燃比学習補正値を運転条
件の変化に対して滑らかに変化させることができ、学習
マップ上での該当運転領域の切り換え時に空燃比変動が
発生して排気性状を悪化させることを防止できるという
効果がある。
習の収束速度を確保しつつ運転条件の違いに対応し得る
細かな運転領域毎の学習を行わせることができると共に
、高精度な補間演算によって空燃比学習補正値を運転条
件の変化に対して滑らかに変化させることができ、学習
マップ上での該当運転領域の切り換え時に空燃比変動が
発生して排気性状を悪化させることを防止できるという
効果がある。
【図1】本発明の構成を示すブロック図。
【図2】本発明の一実施例を示すシステム概略図。
【図3】空燃比フィードバック制御を示すフローチャー
ト。
ト。
【図4】空燃比フィードバック制御を示すフローチャー
ト。
ト。
【図5】空燃比学習制御を示すフローチャート。
【図6】空燃比学習制御を示すフローチャート。
【図7】空燃比学習制御を示すフローチャート。
【図8】空燃比学習制御を示すフローチャート。
【図9】学習結果の修正及び読み出し制御を示すフロー
チャート。
チャート。
【図10】燃料噴射量の設定を示すフローチャート。
【図11】学習の反復制御に関わる内容を示すフローチ
ャート。
ャート。
【図12】実施例における学習マップの様子を示す線図
。
。
【図13】補間演算における運転条件設定の様子を示す
線図。
線図。
【図14】補間演算の特性を示す線図。
【図15】従来の学習制御の問題点を説明するためのタ
イムチャート。
イムチャート。
1 機関
6 燃料噴射弁
12 コントロールユニット
13 エアフローメータ
14 クランク角センサ
15 水温センサ
16 酸素センサ
Claims (2)
- 【請求項1】機関に吸入される空気量に関与する運転パ
ラメータを少なくとも含む機関運転条件を検出する機関
運転条件検出手段と、該機関運転条件検出手段で検出さ
れた機関運転条件に基づいて基本燃料供給量を設定する
基本燃料供給量設定手段と、機関吸入混合気の空燃比を
検出する空燃比検出手段と、該空燃比検出手段で検出さ
れた空燃比と目標空燃比とを比較して実際の空燃比を前
記目標空燃比に近づけるように前記基本燃料供給量を補
正するための空燃比フィードバック補正値を設定する空
燃比フィードバック補正値設定手段と、機関運転条件に
基づき複数に区分された運転領域毎に前記基本燃料供給
量を補正するための空燃比学習補正値を書き換え可能に
記憶する記憶手段と、前記空燃比フィードバック補正値
の目標収束値からの偏差を学習し、前記記憶手段の該当
領運転領域に対応して記憶されている前記空燃比学習補
正値を前記偏差を減少させる方向に修正して書き換える
空燃比学習を、学習進行と共に前記該当運転領域の範囲
を段階的に狭めて行う空燃比学習手段と、実際の運転条
件に対応する空燃比学習補正値の前記記憶手段からの読
み出しを、前記空燃比学習手段により学習される最も狭
い運転領域を単位とする補間演算を伴って行う補正値読
み出し手段と、前記基本燃料供給量,空燃比フィードバ
ック補正値及び前記補正値読み出し手段で読み出された
空燃比学習補正値に基づいて最終的な燃料供給量を設定
する燃料供給量設定手段と、該燃料供給量設定手段で設
定された燃料供給量に基づいて燃料供給手段を駆動制御
する燃料供給制御手段と、を含んで構成されたことを特
徴とする内燃機関の空燃比学習制御装置。 - 【請求項2】前記補正値読み出し手段による補間演算が
、各運転領域の運転条件幅の略中心値を各運転領域にお
ける空燃比学習補正値が対応する運転条件として設定し
て、実際の運転条件に対応する空燃比学習補正値を求め
るよう構成されたことを特徴とする請求項1記載の内燃
機関の空燃比学習制御装置。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8865891A JPH04321741A (ja) | 1991-04-19 | 1991-04-19 | 内燃機関の空燃比学習制御装置 |
| US07/869,341 US5297046A (en) | 1991-04-17 | 1992-04-16 | System and method for learning and controlling air/fuel mixture ratio for internal combustion engine |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8865891A JPH04321741A (ja) | 1991-04-19 | 1991-04-19 | 内燃機関の空燃比学習制御装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH04321741A true JPH04321741A (ja) | 1992-11-11 |
Family
ID=13948924
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP8865891A Pending JPH04321741A (ja) | 1991-04-17 | 1991-04-19 | 内燃機関の空燃比学習制御装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH04321741A (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2007096328A1 (de) | 2006-02-20 | 2007-08-30 | Continental Automotive Gmbh | Verfahren und vorrichtung zur robusten abschätzung für das verhältnis von steuereinspritzparameter zu resultierender eingespritzter kraftstoffmenge |
| US7861693B2 (en) | 2006-02-15 | 2011-01-04 | Continental Automotive Gmbh | Injection system for an internal combustion engine, and internal combustion engine |
-
1991
- 1991-04-19 JP JP8865891A patent/JPH04321741A/ja active Pending
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7861693B2 (en) | 2006-02-15 | 2011-01-04 | Continental Automotive Gmbh | Injection system for an internal combustion engine, and internal combustion engine |
| WO2007096328A1 (de) | 2006-02-20 | 2007-08-30 | Continental Automotive Gmbh | Verfahren und vorrichtung zur robusten abschätzung für das verhältnis von steuereinspritzparameter zu resultierender eingespritzter kraftstoffmenge |
| CN101384811A (zh) * | 2006-02-20 | 2009-03-11 | 欧陆汽车有限责任公司 | 用于稳健估计喷射控制参数与获得的喷射的燃料量的比的方法与装置 |
| US8296039B2 (en) | 2006-02-20 | 2012-10-23 | Continental Automotive Gmbh | Method and device for the robust estimation of the ratio of injection control parameters to resultant injected fuel quantity |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5243951A (en) | Method of and apparatus for learning and controlling air-fuel ratio of internal combustion engine | |
| JP2742431B2 (ja) | エンジンの空燃比制御装置 | |
| JPH03179147A (ja) | 内燃機関の空燃比学習制御装置 | |
| JP2778361B2 (ja) | 内燃機関の燃焼制御装置 | |
| JPH04321741A (ja) | 内燃機関の空燃比学習制御装置 | |
| JP2884469B2 (ja) | 内燃機関の空燃比制御装置 | |
| JP2715208B2 (ja) | 内燃機関の空燃比学習制御装置 | |
| JPH04318246A (ja) | 内燃機関の空燃比学習制御装置 | |
| JP2627825B2 (ja) | 内燃機関の空燃比学習制御装置 | |
| JP2665837B2 (ja) | 内燃機関の燃料供給装置における自己診断装置 | |
| JPH04241756A (ja) | 内燃機関の空燃比学習制御装置 | |
| JPH04237847A (ja) | 内燃機関の空燃比学習制御装置 | |
| JP2631579B2 (ja) | 内燃機関の空燃比学習制御装置 | |
| JPH04318247A (ja) | 内燃機関の空燃比学習制御装置 | |
| JP2640566B2 (ja) | 内燃機関の空燃比学習制御装置 | |
| JP4827710B2 (ja) | 内燃機関の制御装置及び方法 | |
| JPS62195439A (ja) | エンジンの制御装置 | |
| JPH04255544A (ja) | 内燃機関の空燃比学習制御装置 | |
| JPH066213Y2 (ja) | 内燃機関の空燃比の学習制御装置 | |
| JPH04255545A (ja) | 内燃機関の空燃比学習制御装置 | |
| JPH04219440A (ja) | 内燃機関の空燃比学習制御装置 | |
| JPS62165555A (ja) | 内燃機関の空燃比制御方法 | |
| JPH06200809A (ja) | 内燃機関の空燃比制御装置 | |
| JP2750777B2 (ja) | 内燃機関の電子制御燃料供給装置 | |
| JP2940916B2 (ja) | 内燃機関の空燃比制御装置 |