(57)【特許請求の範囲】
【請求項１】
内燃機関の運転領域に応じた複数の空燃比学習ゾーンを持ち、空燃比を目標値に一致させるための空燃比フィードバック補正量から求まる空燃比学習値により各学習ゾーン毎に学習補正を実施してインジェクタによる燃料噴射量を制御する内燃機関の空燃比制御装置において、
所定の学習条件が成立するか否かを判別する条件判別手段と、
該学習条件の成立時に前記空燃比学習値の他に、該学習値とその時の空燃比フィードバック補正量との２つによって得られる空燃比のトータルずれ量の最大値と最小値とを逐次算出及び更新し、計３つの値を各学習ゾーン毎に記憶する記憶手段と、
内燃機関の始動に際し、前回の機関運転時に前記記憶手段が記憶した空燃比のトータルずれ量の最大値及び最小値についてその中間値を求め、該求めた中間値を初期学習値とする初期設定手段と
を備えることを特徴とする内燃機関の空燃比制御装置。
【請求項２】
前記初期設定手段は、前記トータルずれ量の最大値及び最小値についてその平均値を求め、該求めた平均値を初期学習値とする請求項１に記載の内燃機関の空燃比制御装置。
【請求項３】
前記初期設定手段により空燃比学習値が初期設定される時、機関負荷が少なくともアイドル状態を含む低中負荷状態であることを条件に、前記記憶手段が記憶したトータルずれ量の最大値及び最小値を平均化して初期学習値を設定する請求項２に記載の内燃機関の空燃比制御装置。
【請求項４】
内燃機関の始動に伴い前記初期設定手段により空燃比学習値が初期設定された後、学習条件が一旦不成立になってから再度条件成立となる場合、同学習条件が不成立になる直前の前記最大値及び最小値を平均化して、その平均値を空燃比学習値としてリセットする請求項２又は請求項３に記載の内燃機関の空燃比制御装置。
【請求項５】
内燃機関の始動に伴い前記初期設定手段により空燃比学習値が初期設定された後、空燃比学習ゾーンが一旦切り換えられてから元のゾーンに戻る場合、同学習ゾーンが切り換えられる直前の前記最大値及び最小値を平均化して、その平均値を空燃比学習値としてリセットする請求項２又は請求項３に記載の内燃機関の空燃比制御装置。
【請求項６】
内燃機関の始動に際し、前記インジェクタの温度特性により生ずる増量補正側の最小空燃比ずれ量にてトータルずれ量の最大値を初期設定し、また、同じくインジェクタの温度特性により生ずる減量補正側の最小空燃比ずれ量にてトータルずれ量の最小値を初期設定する請求項１〜請求項５のいずれかに記載の内燃機関の空燃比制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、内燃機関の空燃比制御装置に関するものである。
【０００２】
【従来の技術】
空燃比を所定の状態にフィードバック（Ｆ／Ｂ）制御することは一般に行われている。その場合、例えば特公昭６２−１２３８２号公報に記載されているように、複数個のＦ／Ｂ制御量をサンプリングし、そのサンプル値の平均値を算出して学習値を設定すると共に、この学習値により学習制御を行い、Ｆ／Ｂ制御の精度を向上させることが知られている。こうした学習制御によれば、内燃機関並びに空燃比制御システムのバラツキや経時変化等により空燃比ずれが生じても、その空燃比ずれが適宜補正される。
【０００３】
しかしながら、空燃比ずれは、上述した通り内燃機関並びに空燃比制御システムのバラツキや経時変化等が原因で生じる他、それ以外の要因によっても生ずる。例えば電磁式インジェクタはコイルを構成部品として持つため、コイル抵抗の温度特性に起因して、同インジェクタの燃料噴射量がインジェクタ温度（コイル温度）により変化する。従って、比較的短期的に空燃比ずれが生じるが、この空燃比ずれに対して上記従来公報の装置では適正な空燃比補正が実施できない。
【０００４】
インジェクタによる燃料噴射量の温度特性の一例を図９に示す。図９から分かるように、インジェクタ温度が低いと、噴射量は増量側に変化し、逆にインジェクタ温度が高いと、噴射量は減量側に変化する。そのため、機関始動後から機関停止までの間に種々の温度環境でインジェクタが使用される場合、燃料噴射量の制御精度が悪化するという問題を招来する。
【０００５】
また一般に、既存技術の学習制御では、内燃機関が運転状態から停止状態になる時にその時の最終の空燃比学習値をメモリに記憶保持し、次回の機関始動時には、前記記憶保持した最終の空燃比学習値を読み出して空燃比学習に使用することとしていた。
【０００６】
ところが、前回の機関運転時と次回の機関運転時とでインジェクタの温度環境が相違すると、当該インジェクタの温度特性の影響を受けて誤った補正が行われ、結果として空燃比ずれが解消できない。つまり、インジェクタの温度特性を主たる要因とする上記問題に対して、既存の装置では誤学習が実施されてしまい空燃比の制御精度が悪化する。
【０００７】
【発明が解決しようとする課題】
本発明は、上記問題に着目してなされたものであって、その目的とするところは、インジェクタの温度特性など短期的な空燃比ずれが生じても適正に空燃比学習を行うことができる内燃機関の空燃比制御装置を提供することである。
【０００８】
【課題を解決するための手段】
本発明はその前提として、内燃機関の運転領域に応じた複数の空燃比学習ゾーンを持ち、空燃比を目標値に一致させるための空燃比フィードバック補正量から求まる空燃比学習値により各学習ゾーン毎に学習補正を実施してインジェクタによる燃料噴射量を制御する。
【０００９】
そして上記目的を達成するために、請求項１に記載の発明では、所定の学習条件が成立するか否かを判別する条件判別手段と、該学習条件の成立時に前記空燃比学習値の他に、該学習値とその時の空燃比フィードバック補正量との２つによって得られる空燃比のトータルずれ量の最大値と最小値とを逐次算出及び更新し、計３つの値を各学習ゾーン毎に記憶する記憶手段と、内燃機関の始動に際し、前回の機関運転時に前記記憶手段が記憶した空燃比のトータルずれ量の最大値及び最小値についてその中間値を求め、該求めた中間値を初期学習値とする初期設定手段とを備える。
【００１０】
要するに、空燃比のトータルずれ量は例えば空燃比フィードバック補正量と空燃比学習値との積により求められる。このとき、同トータルずれ量の最大値及び最小値は、インジェクタの温度特性等による短期的な空燃比ずれの要因を含む値であり、その中間値を機関始動時における空燃比学習値の初期値とすることで、温度特性による空燃比ずれがキャンセルされ、空燃比制御の誤学習が防止できる。その結果、適正に空燃比学習を行い、ひいては空燃比の制御精度を向上させることができる。
【００１１】
上記請求項１の構成において、トータルずれ量の最大値及び最小値の中間値は当該最大値及び最小値の中央付近の値であるとよく、請求項２に記載したように、トータルずれ量の最大値及び最小値についてその平均値を求め、該求めた平均値を初期学習値とするのが望ましい。
【００１２】
また、請求項３に記載の発明では、前記初期設定手段により空燃比学習値が初期設定される時、機関負荷が少なくともアイドル状態を含む低中負荷状態であることを条件に、前記記憶手段が記憶したトータルずれ量の最大値及び最小値を平均化して初期学習値を設定する。
【００１３】
インジェクタの温度特性等により生じる短期的な空燃比ずれは、機関のアイドル運転時など、比較的低負荷の状態で大きくなる。そのため、上述の通り機関負荷が比較的小さいことを条件に、トータルずれ量の最大値及び最小値を平均化して初期学習値を設定することで、より一層効果的に空燃比制御の誤学習が防止できる。
【００１４】
請求項４に記載の発明では、内燃機関の始動に伴い前記初期設定手段により空燃比学習値が初期設定された後、学習条件が一旦不成立になってから再度条件成立となる場合、同学習条件が不成立になる直前の前記最大値及び最小値を平均化して、その平均値を空燃比学習値としてリセット（再設定）する。
【００１５】
上記構成によれば、仮に学習条件が一旦不成立になって次回の条件成立までの間にインジェクタの温度環境が相違しても、当該インジェクタの温度特性による空燃比ずれがキャンセルされ、空燃比制御の誤学習が防止される。
【００１６】
また、請求項５に記載の発明では、内燃機関の始動に伴い前記初期設定手段により空燃比学習値が初期設定された後、空燃比学習ゾーンが一旦切り換えられてから元のゾーンに戻る場合、同学習ゾーンが切り換えられる直前の前記最大値及び最小値を平均化して、その平均値を空燃比学習値としてリセット（再設定）する。
【００１７】
上記構成によれば、仮に空燃比学習ゾーンが一旦切り換えられた後、元のゾーンに戻るまでの間にインジェクタの温度環境が相違しても、当該インジェクタの温度特性による空燃比ずれがキャンセルされ、空燃比制御の誤学習が防止される。
【００１８】
請求項６に記載の発明では、内燃機関の始動に際し、前記インジェクタの温度特性により生ずる増量補正側の最小空燃比ずれ量にてトータルずれ量の最大値を初期設定し、また、同じくインジェクタの温度特性により生ずる減量補正側の最小空燃比ずれ量にてトータルずれ量の最小値を初期設定する。
【００１９】
つまり、トータルずれ量の最大値が、インジェクタ温度特性による増量補正側の最小空燃比ずれ量よりも小さくなることはなく、また、トータルずれ量の最小値が、インジェクタ温度特性による減量補正側の最小空燃比ずれ量よりも大きくなることはない。かかる場合、インジェクタ温度特性による増量補正側の最小空燃比ずれ量にてトータルずれ量の最大値を初期設定することで、前記最大値は必ず増量補正側に更新される。また、インジェクタ温度特性による減量補正側の最小空燃比ずれ量にてトータルずれ量の最小値を初期設定することで、前記最小値は必ず減量補正側に更新される。従って、インジェクタの温度特性を反映させつつ、前記トータルずれ量の最大値及び最小値を適正に初期設定することが可能となる。
【００２０】
【発明の実施の形態】
（第１の実施の形態）
以下、本発明を具体化した第１の実施の形態について説明する。本実施の形態における空燃比制御システムでは、車両用内燃機関に供給する混合気の実空燃比を目標空燃比に一致させるよう空燃比Ｆ／Ｂ制御を実施する。つまり、マイクロコンピュータを主体とする電子制御装置（以下、ＥＣＵという）は、機関排気管に配設されたＯ2 センサによる検出結果を取り込み、そのセンサ検出結果に基づいて空燃比Ｆ／Ｂ制御を実施する。以下、図面を用いてその詳細な構成を説明する。
【００２１】
図１は、本実施の形態における空燃比制御システムの概要を示す全体構成図である。図１において、内燃機関は４気筒４サイクルの火花点火式エンジン（以下、単にエンジン１という）として構成されており、エンジン１には吸気管２と排気管３とが接続されている。吸気管２には、アクセルペダル４に連動するスロットル弁５が設けられており、同スロットル弁５の開度はスロットル開度センサ６により検出される。また、吸気管２のサージタンク７には吸気圧センサ８が配設されている。
【００２２】
エンジン１の気筒を構成するシリンダ９内には図の上下方向に往復動するピストン１０が配設されており、同ピストン１０はコンロッド１１を介して図示しないクランク軸に連結されている。ピストン１０の上方にはシリンダ９及びシリンダヘッド１２にて区画された燃焼室１３が形成されており、燃焼室１３は、吸気弁１４及び排気弁１５を介して前記吸気管２及び排気管３に連通している。排気管３にはＯ2 センサ１６が配設され、同Ｏ2 センサ１６は、排ガスが理論空燃比に対してリーンかリッチかに応じて異なる起電力信号を出力する。
【００２３】
エンジン１の吸気ポート１７には電磁駆動式のインジェクタ１８が設けられており、このインジェクタ１８には図示しない燃料タンクから燃料（ガソリン）が供給される。本実施の形態では、吸気マニホールドの各分岐管毎に１つずつインジェクタ１８を有するマルチポイントインジェクション（ＭＰＩ）システムが構成されている。この場合、吸気管上流から供給される新気とインジェクタ１８による噴射燃料とが吸気ポート１７にて混合され、その混合気が吸気弁１４の開弁動作に伴い燃焼室１３内（シリンダ９内）に流入する。
【００２４】
シリンダヘッド１２に配設された点火プラグ２０は、図示しないイグナイタ及びディストリビュータからの点火用高電圧により発火する。基準位置センサ２１及び回転角センサ２２は図示しないディストリビュータに配設され、基準位置センサ２１はクランク軸の回転状態に応じて７２０°ＣＡ毎にパルス信号を出力し、回転角センサ２２は、より細かなクランク角毎（例えば、３０°ＣＡ毎）にパルス信号を出力する。また、シリンダ９（ウォータジャケット）には、冷却水温を検出するための水温センサ２３が配設されている。
【００２５】
ＥＣＵ３０は、周知のマイクロコンピュータシステムを中心に構成され、ＣＰＵ３１、ＲＯＭ３２、ＲＡＭ３３、バックアップＲＡＭ３４、Ａ／Ｄ変換器３５、入出力インターフェース（Ｉ／Ｏ）３６等を備える。前記スロットル開度センサ６、吸気圧センサ８、Ｏ2 センサ１６及び水温センサ２３の各検出信号は、Ａ／Ｄ変換器３５に入力され、Ａ／Ｄ変換された後にバス３７を介してＣＰＵ３１に取り込まれる。また、前記基準位置センサ２１及び回転角センサ２２のパルス信号は、入出力インターフェース３６及びバス３７を介してＣＰＵ３１に取り込まれる。
【００２６】
その他、ＥＣＵ３０にはイグニッションキー（ＩＧキー）２５が接続され、同ＩＧキー２５がＯＮ位置に操作されたか、或いはＯＦＦ位置に操作されたかを示すキー操作信号が入力される。なお、バックアップＲＡＭ３４にはＩＧキー２５の操作状態に関係なく常に電源が投入され、その記憶内容が常に保持されるようになっている。後述する空燃比学習値等のデータはこのバックアップＲＡＭ３４に記憶保持される。
【００２７】
ＣＰＵ３１は、前記各センサの検出信号に基づいてスロットル開度ＴＨ、吸気圧ＰＭ、空燃比（Ａ／Ｆ）、冷却水温Ｔｗ、基準クランク位置（Ｇ信号）及びエンジン回転数Ｎｅなどのエンジン運転状態を検知する。また、ＣＰＵ３１は、エンジン運転状態に基づいて燃料噴射量や点火時期等の制御信号を演算し、その制御信号をインジェクタ１８やイグナイタに出力する。
【００２８】
次に、上記の如く構成される空燃比制御システムの作用を説明する。
図２は、ＣＰＵ３１により実行される燃料噴射制御のメインルーチンを示すフローチャートである。
【００２９】
図２のルーチンはＩＧキー２５がＯＦＦ位置からＯＮ位置に操作されてＣＰＵ３１に電源が投入されることを受けて起動され、先ずステップ１０１では、処理開始直後において初期化の処置を実施する。ここでは、空燃比の学習補正関係を含む全制御項目の初期化処置が行われる。
【００３０】
その後、ステップ１０２では、予め記憶されている検索マップを用い、その時々のエンジン回転数Ｎｅや吸気圧ＰＭに基づいて基本噴射時間ＴＰを算出する。続くステップ１０３では、エンジン運転状態に応じた各種補正係数ｆｉを算出する。実際には各種補正係数ｆｉとして、水温補正係数、加速時増量補正係数、空燃比補正係数（空燃比フィードバック補正量）ＦＡＦ、空燃比学習値ＦＬＲＮ等が算出される。
【００３１】
ここで、空燃比学習値ＦＬＲＮは、エンジン１の運転領域に応じた複数の空燃比学習ゾーン毎に記憶される。例えば図５に示されるように、空燃比学習ゾーンはエンジン回転数Ｎｅと負荷（吸気圧ＰＭ）とで複数の領域に分割され、各々のゾーン毎に空燃比学習値ＦＬＲＮがマップ形式で記憶される。
【００３２】
さらに、ステップ１０４では、前記算出した各種補正係数ｆｉを基本噴射時間ＴＰに反映して最終噴射時間Ｔｉを算出する。そして、この最終噴射時間Ｔｉに基づいてインジェクタ１８を駆動してエンジン１の各気筒に対して燃料を噴射供給する。
【００３３】
図３は空燃比学習補正ルーチンを示すフローチャートであり、同ルーチンは各気筒の燃料噴射毎（本実施の形態の４気筒エンジンでは１８０°ＣＡ毎）にＣＰＵ３１により実行される。本実施の形態では特に、空燃比補正係数ＦＡＦと空燃比学習値ＦＬＲＮとの積を「空燃比トータルずれ量ＦＴＡＬ」とし（ＦＴＡＬ＝ＦＡＦ・ＦＬＲＮ）、エンジン運転時にはそのＦＴＡＬ値を常にモニタしてその最大値ＭＡＸと最小値ＭＩＮとを随時更新・記憶する。また、エンジン始動時においては、前回運転時（車両走行時）に記憶した空燃比トータルずれ量ＦＴＡＬのＭＡＸ値及びＭＩＮ値から空燃比学習値ＦＬＲＮの初期値を設定することとしている。
【００３４】
なお、前記ＭＡＸ値及びＭＩＮ値は、前記空燃比学習値ＦＬＲＮと同様に、運転領域毎の複数のゾーンに記憶される。例えば図６に示されるようにエンジン回転数Ｎｅと負荷（吸気圧ＰＭ）とで複数の領域に分割された各々のゾーンには、ＭＡＸ値及びＭＩＮ値がマップ形式で記憶される。以下に図３の処理手順を詳細に説明する。
【００３５】
ＩＧキー２５のＯＮ操作に伴う処理開始直後において、先ずステップ２０１では、空燃比トータルずれの平均化処理を実施したことを表す平均化実施フラグＦａと、空燃比トータルずれのＭＡＸ値及びＭＩＮ値を初期設定したことを表す初期設定フラグＦｓとを共に「０」に初期化する。
【００３６】
その後、ステップ２０２では、平均化実施フラグＦａが「０」であるか否かを判別する。エンジン始動当初においてはＦａ＝０であるので、ステップ２０２がＹＥＳとなり、以下のステップ２０３〜２０５で平均化処理と空燃比学習値ＦＬＲＮの初期設定処理とが実施される。
【００３７】
平均化処理においてステップ２０３では、前回のエンジン運転時（車両走行時）に記憶保持した空燃比トータルずれのＭＡＸ値及びＭＩＮ値を取り込む。また、続くステップ２０４では、ＭＡＸ値及びＭＩＮ値の平均値を算出し、その平均値を空燃比学習値ＦＬＲＮの初期値として設定する。ＭＡＸ値及びＭＩＮ値の平均値の算出並びに学習値の初期設定は、運転領域毎の空燃比学習ゾーン毎に実施される。このとき、重心平均又は相加平均にて平均値を算出する。因みに、システム公差のバラツキや経時変化等を反映した真の学習値を基準として、ＭＡＸ値及びＭＩＮ値が各々対称であれば相加平均で平均値を求めればよいが、非対称であれば重心平均で平均値を求めるのが望ましい。
【００３８】
その後、ステップ２０５では、平均化実施フラグＦａに「１」をセットする。これにより、次回の処理以降はステップ２０２がＮＯとなる。つまり、平均化処理はエンジン始動直後に１回のみ限定して行われることとなる。
【００３９】
続いてステップ２０６では、空燃比学習条件が成立するか否かを判別する。ステップ２０６の学習条件としては、例えば空燃比Ｆ／Ｂ制御中であること、高回転・高負荷状態でないこと、過渡状態でないこと（定常状態であること）等、周知の学習条件が適用される。
【００４０】
そして、学習条件が成立すればステップ２０７に進み、空燃比学習値ＦＬＲＮを更新・記憶する。このとき、エンジン始動後、最初の学習条件成立時であれば、前記ステップ２０４で設定した初期値を用いる。また、エンジンの通常運転時においては、周知の通り、空燃比補正係数ＦＡＦがリーン側にあるか又はリッチ側にあるかに応じて空燃比学習値ＦＬＲＮを更新する。実際には、ＦＡＦ＜０．９８であれば、
ＦＬＲＮn ＝ＦＬＲＮn-1 −ΔＦＮ１
とし、ＦＡＦ＞１．０２であれば、
ＦＬＲＮn ＝ＦＬＲＮn-1 ＋ΔＦＮ２
とする。また、ＦＡＦ＝０．９８〜１．０２であれば、
ＦＬＲＮn ＝ＦＬＲＮn-1
とする。但し、添え字ｎ，ｎ−１はそれぞれ今回値、前回値を示す。ΔＦＮ１，ΔＦＮ２は学習値更新量である。かかるステップ２０７で更新・記憶した空燃比学習値ＦＬＲＮは、前記図２のメインルーチンにおいて最終噴射時間Ｔｉの算出に使用される。
【００４１】
その後、ステップ２０８では、初期設定フラグＦｓが「０」であるか否かを判別する。エンジン始動当初においてはＦｓ＝０であるので、ステップ２０８がＹＥＳとなり、ステップ２０９に進む。ステップ２０９では、前回運転時（車両走行時）に記憶保持した空燃比トータルずれのＭＡＸ値及びＭＩＮ値をクリアすると共に、以下の手順にて当該ＭＡＸ値及びＭＩＮ値を初期設定する。
【００４２】
すなわち、学習開始時における空燃比トータルずれ量ＦＴＡＬ（＝ＦＡＦ・ＦＬＲＮ）を求め、このＦＴＡＬ値が増量補正側（ＦＴＡＬ＞１．０）にあるか、減量補正側（ＦＴＡＬ＜１．０）にあるか、又は基準値（ＦＴＡＬ＝１．０）にあるかに応じてＭＡＸ値及びＭＩＮ値を初期設定する。詳細には、
・ＦＴＡＬ＞１．０の場合、その時の空燃比トータルずれ量ＦＴＡＬをＭＡＸ値とすると共に、予め定めた所定値βをＭＩＮ値とする。
・ＦＴＡＬ＜１．０の場合、予め定めた所定値αをＭＡＸ値とすると共に、その時の空燃比トータルずれ量ＦＴＡＬをＭＩＮ値とする。
・ＦＴＡＬ＝１．０の場合、ＭＡＸ値及びＭＩＮ値を共に予め定めた所定値α，βとする。
【００４３】
ここで、ＭＡＸ値を初期設定する時の「所定値α」や、ＭＩＮ値を初期設定する時の「所定値β」は、以下の通り与えられる。
つまり、空燃比ずれの原因としては、制御システム上の公差やインジェクタの温度特性があると想定され、一例として図７のような関係が考えられる。図７において、インジェクタ温度特性が無いとすると、システム公差による空燃比ずれは「−１１〜±１１％」の変化する。また、システム公差が無い（公差＝０）とすると、インジェクタ温度特性による空燃比ずれは増量側で「＋１５％」まで変化し、減量側で「−７％」まで変化する。
【００４４】
さらに図７の関係において、インジェクタの温度特性が増量側で最大となる場合を見ると、空燃比ずれの最大値（プラス側最大値）は「２．４〜２７．７％」の範囲で変化し、この範囲が空燃比トータルずれ量のＭＡＸ値の学習範囲に相当する。また、温度特性が減量側で最大となる場合を見ると、空燃比ずれの最大値（マイナス側最大値）は「−１７．２〜３．２％」の範囲で変化し、この範囲が空燃比トータルずれ量のＭＩＮの学習範囲に相当する。このことから、前記ＭＡＸ値が初期設定される所定値αをＭＡＸ学習範囲の最小値（２．４％）とし、前記ＭＩＮ値が初期設定される所定値βをＭＩＮ学習範囲の最大値（３．２％）とする。但し、図７はアイドル運転時のデータを示す。
【００４５】
その後、ステップ２１０では、初期設定フラグＦｓに「１」をセットする。これにより、次回の処理以降はステップ２０８がＮＯとなる。つまり、ＭＡＸ値及びＭＩＮ値の初期設定はエンジン始動直後に１回のみ限定して行われる。
【００４６】
一方、Ｆｓ＝１であればステップ２１１に進み、以下の手順にてＭＡＸ値及びＭＩＮ値を更新する。すなわち、その時々の空燃比トータルずれ量ＦＴＡＬ（＝ＦＡＦ・ＦＬＲＮ）が最新のＭＡＸ値よりも大きければ、その時のＦＴＡＬ値によりＭＡＸ値を更新する（ＭＡＸ＝ＦＴＡＬとする）。また、その時々の空燃比トータルずれ量ＦＴＡＬ（＝ＦＡＦ・ＦＬＲＮ）が最新のＭＩＮ値よりも小さければ、その時のＦＴＡＬ値によりＭＩＮ値を更新する（ＭＩＮ＝ＦＴＡＬとする）。
【００４７】
最後に、ステップ２１２では、前記ＭＡＸ値及びＭＩＮ値を、空燃比学習ゾーン毎に設定される所定の上限値及び下限値でガードする。
以上の通り、空燃比学習値ＦＬＲＮと空燃比トータルずれ量ＦＴＡＬのＭＡＸ，ＭＩＮ値との初期設定は、エンジン始動後（ＩＧキーのＯＮ操作後）、各々１回ずつ行われ、それ以降、エンジン停止までは（ＩＧキーがＯＦＦ操作されるまでは）、前記３つの値が逐次更新・記憶される。
【００４８】
上記図２の処理を図４のタイムチャートを参照しながらより具体的に説明する。図４では、空燃比補正係数ＦＡＦ、空燃比学習値ＦＬＲＮ、空燃比トータルずれ量ＦＴＡＬ、及びそのＭＡＸ，ＭＩＮ値の時間の経過に伴う挙動を示す。なお図４において、時刻ｔ１では、ＩＧキー２５がＯＮ位置からＯＦＦ位置に操作され、それまで運転状態にあるエンジン１が停止される。そしてその後、時刻ｔ２では、ＩＧキー２５が再びＯＮ位置に操作され、エンジン１が始動される。また、図の時刻ｔ３は、エンジン始動後、周知の空燃比Ｆ／Ｂ制御が開始される時刻を示し、時刻ｔ４は空燃比学習条件が成立する時刻を示す。
【００４９】
さて、時刻ｔ１以前（通常運転時）においては、その時々の実空燃比と目標値（λ＝１）との偏差に応じて空燃比補正係数ＦＡＦが増量側又は減量側に変化する。また、基準値（１．０）に対する空燃比補正係数ＦＡＦのずれ幅に応じて、学習ゾーン毎に空燃比学習値ＦＬＲＮが更新される（前記図３のステップ２０７）。因みに、時刻ｔ１以前は常に学習条件が成立することとしている。
【００５０】
空燃比トータルずれ量ＦＴＡＬは、空燃比補正係数ＦＡＦと空燃比学習値ＦＬＲＮとの積にて随時求められ、図中、同ＦＴＡＬ値を二点鎖線で示す。この空燃比トータルずれ量ＦＴＡＬがそれまでのＭＡＸ値以上となる時、ＭＡＸ値がその時のＦＴＡＬ値にて更新され、また、同ＦＴＡＬ値がそれまでのＭＩＮ値以下となる時、ＭＩＮ値がその時のＦＴＡＬ値にて更新される（前記図３のステップ２１１）。そして、ＩＧキー２５がＯＦＦ位置に操作される時刻ｔ１では、最後のＭＡＸ値及びＭＩＮ値（図のＡ１値，Ａ２値）がバックアップＲＡＭ３４に記憶保持される。
【００５１】
その後、時刻ｔ２でエンジン１が始動されると、前記の時刻ｔ１で記憶保持されたＭＡＸ値及びＭＩＮ値（図のＡ１値，Ａ２値）の平均値が算出され、その平均値が空燃比学習値ＦＬＲＮの初期値として設定される（前記図３のステップ２０３，２０４）。図４では、Ｂ１値が空燃比学習値ＦＬＲＮの初期値として設定される。
【００５２】
その後、時刻ｔ３では空燃比Ｆ／Ｂ条件が成立することで、空燃比補正係数ＦＡＦの算出が開始され、時刻ｔ４では空燃比学習条件が成立することで、空燃比学習値ＦＬＲＮの更新が開始される（前記図３のステップ２０７）。この時刻ｔ４では、前記ＭＡＸ値及びＭＩＮ値が初期設定される（前記図３のステップ２０９）。図４においては、時刻ｔ４での空燃比トータルずれ量ＦＴＡＬが増量補正側にあるため（ＦＴＡＬ＞１．０）、ＭＡＸ値の初期値としてその時の空燃比トータルずれ量ＦＴＡＬがセットされ、ＭＩＮ値の初期値として所定値βがセットされる。
【００５３】
時刻ｔ４以降、空燃比補正係数ＦＡＦの変化に従い空燃比学習値ＦＴＡＬが変化し、同値の更新が開始される。その後、空燃比トータルずれ量ＦＴＡＬのＭＡＸ値及びＭＩＮ値が必要に応じて更新され、その都度バックアップＲＡＭ３４に記憶される。
【００５４】
なお本実施の形態では、前記図３のステップ２０６が請求項記載の条件判別手段に相当し、同ステップ２０７，２１１が記憶手段に相当し、同ステップ２０３，２０４が初期設定手段に相当する。
【００５５】
以上詳述した本実施の形態によれば、以下に示す効果が得られる。
（ａ）所定の空燃比学習条件が成立する時、空燃比学習値ＦＬＲＮの他に、空燃比トータルずれ量ＦＴＡＬのＭＡＸ値（最大値）とＭＩＮ値（最小値）とを逐次算出及び更新して各学習ゾーン毎に記憶すると共に、エンジン始動に際し、前回の運転時に記憶した前記ＭＡＸ値及びＭＩＮ値を平均化してその平均値を空燃比学習値ＦＬＲＮの初期値とした。それにより、インジェクタ温度特性による空燃比ずれがキャンセルされ、空燃比制御の誤学習が防止できる。その結果、適正に空燃比学習を行い、ひいては空燃比の制御精度を向上させることができる。
【００５６】
（ｂ）エンジン始動時に空燃比トータルずれ量のＭＡＸ値又はＭＩＮ値を初期設定する際、インジェクタ温度特性に応じた所定値α，βを使うこととした。この場合、前記ＭＡＸ値を、インジェクタ温度特性による増量補正側の最小空燃比ずれ量（所定値α）にて初期設定することで、当該ＭＡＸ値は必ず増量補正側に更新される。また、前記ＭＩＮ値を、インジェクタ温度特性による減量補正側の最小空燃比ずれ量（所定値β）にて初期設定することで、当該ＭＩＮ値は必ず減量補正側に更新される。従って、インジェクタ温度特性を反映させつつ、トータルずれ量のＭＡＸ値及びＭＩＮ値を初期設定することが可能となる。
【００５７】
（ｃ）前記ＭＡＸ値及びＭＩＮ値を更新する際、各学習ゾーン毎に設けた上限値又は下限値で各々の更新値をガードするようにしたため（図３のステップ２１２）、該更新値が制御領域から外れて制御不良を招くといった問題が回避される。
【００５８】
（第２の実施の形態）
次に、本発明における第２の実施の形態を説明する。但し、第２の実施の形態の構成において、上述した第１の実施の形態と同等であるものについては図面に同一の記号を付すと共にその説明を簡略化する。そして、以下には第１の実施の形態との相違点を中心に説明する。
【００５９】
上記第１の実施の形態では、空燃比学習値ＦＬＲＮについてエンジン始動時（ＩＧキーのオン操作時）にのみ前記ＭＡＸ値及びＭＩＮ値を平均化して初期値を設定したのに対し、本実施の形態ではエンジン始動時のみならず通常運転時にも必要に応じて学習値を初期設定する。実際には、エンジンの通常運転時において、学習条件から一旦外れて同学習条件が再度成立した場合、或いは学習ゾーンが切り換えられた後に元のゾーンに戻った場合に、その時のエンジン運転状態に応じて空燃比学習値ＦＬＲＮを再度初期設定し、その初期設定した学習値から更新を始めていく。
【００６０】
図８は、本実施の形態における空燃比学習補正ルーチンの一部を示すフローチャートであり、同図８の処理は前記図３のルーチンに置き換えて実施される。つまり、図８の処理は、前記図３のステップ２０１〜２０５に代替えられるものであり、同一の処理については同一のステップ数を付して示す。
【００６１】
図８において、エンジン始動直後（ＩＧキーのＯＮ操作直後）には前述の通り、平均化実施フラグＦａが「０」であることを条件に、前回運転時におけるＭＡＸ値及びＭＩＮ値の平均から空燃比学習値ＦＬＲＮの初期値を設定する（ステップ２０３〜２０５）。
【００６２】
また、平均化実施フラグＦａが「１」である時、ステップ３０１に進み、空燃比学習値ＦＬＲＮの初期値を再設定する必要があるか否かを判別する。具体的には、学習条件の成立後に同条件が一旦不成立になり、その条件不成立の状態が所定時間（例えば数分程度）以上継続された後に、学習条件が再度成立した場合に、ステップ３０１がＹＥＳとなる。或いは、所定時間以上の間隔で空燃比学習ゾーンが切り換えられる際にもその都度、空燃比学習値ＦＬＲＮの初期設定が再度必要であるとみなされ、ステップ３０１がＹＥＳとなる。ステップ３０１がＮＯの場合、そのまま前述のステップ２０６に進む。
【００６３】
ステップ３０１がＹＥＳの場合、ステップ３０２に進み、その時のエンジン運転状態を判定する。そして、少なくともアイドル状態を含む低中負荷状態である旨が判定されれば、ステップ３０３に進み、学習条件が不成立になる直前の前記ＭＡＸ値及びＭＩＮ値（最新のＭＡＸ値及びＭＩＮ値）を平均化してその平均値を新たに空燃比学習値ＦＬＲＮの初期値とする。
【００６４】
また、ステップ３０２で高負荷状態である旨が判定されれば、ステップ３０４に進み、空燃比学習値ＦＬＲＮの初期値設定を再度行わず、学習条件が不成立になる直前の値のまま、同値をそれ以降の空燃比学習に適用する。
【００６５】
以上第２の実施の形態によれば、上記第１の実施の形態と同様に、既述の優れた効果が得られる他、次の効果が得られる。
つまり、空燃比学習値ＦＬＲＮが初期設定される時、エンジン負荷が比較的小さいことを条件に、以前に記憶したＭＡＸ値及びＭＩＮ値を平均化して初期学習値を設定するようにしたので（前記図８のステップ３０３）、比較的低負荷の状態下において、インジェクタ温度特性等により生じる短期的な空燃比ずれの要因が大きくなっても、誤学習が防止できる。結果として、より一層効果的に空燃比制御の誤学習が防止できる。
【００６６】
因みに、高負荷状態では、インジェクタ温度特性による空燃比ずれが生じにくくなるため、ＭＡＸ値及びＭＩＮ値の平均化による学習値の初期設定を行わない。これにより、演算負荷が軽減できる。
【００６７】
また、エンジン始動に伴い空燃比学習値ＦＬＲＮが初期設定された後、学習条件が一旦不成立になってから再度条件成立となる場合に、同学習条件が不成立になる直前の前記ＭＡＸ値及びＭＩＮ値を平均化して、その平均値を空燃比学習値としてリセットするようにした。若しくは、エンジン始動に伴い空燃比学習値ＦＬＲＮが初期設定された後、空燃比学習ゾーンが一旦切り換えられてから元のゾーンに戻る場合に、同学習ゾーンが切り換えられる直前の前記ＭＡＸ値及びＭＩＮ値を平均化して、その平均値を空燃比学習値としてリセットするようにした。
【００６８】
上記構成によれば、仮に学習条件が一旦不成立になって次回の条件成立までの間にインジェクタの温度環境が相違しても、或いは仮に空燃比学習ゾーンが一旦切り換えられた後、元のゾーンに戻るまでの間にインジェクタの温度環境が相違しても、当該インジェクタの温度特性による空燃比ずれがキャンセルされ、空燃比制御の誤学習が防止される。
【００６９】
なお、本発明の実施の形態は、上記以外に次の形態にて具体化できる。
上記各実施の形態では、空燃比トータルずれ量ＦＴＡＬのＭＡＸ値及びＭＩＮ値を平均化してその平均値を初期学習値としたが（例えば前記図３のステップ２０４）、他の構成でもよい。前記ＭＡＸ値及びＭＩＮ値の中間値を初期学習値とすればよく、平均値でなくとも、中心値近傍の値を初期学習値とすることで、既述の優れた効果が得られる。
【００７０】
前記ＭＡＸ値及びＭＩＮ値を初期設定する際、最初の学習条件成立時における空燃比トータルずれ量が如何なる領域にあるかに拘わらず、前記の所定値α，βをＭＡＸ値及びＭＩＮ値の初期値としてセットする。或いは、前記ＭＡＸ値及びＭＩＮ値の初期値として、「０」をセットするようにしても良い。
【００７１】
上記各実施の形態では、空燃比補正係数ＦＡＦと空燃比学習値ＦＴＡＬとの積にて空燃比トータルずれ量ＦＴＡＬを算出したが、その算出法の他に、空燃比補正係数ＦＡＦと空燃比学習値ＦＴＡＬとの和にて同ＦＴＡＬ値を算出してもよい。
【００７２】
上記第２の実施の形態では、エンジン始動後に空燃比学習値ＦＬＲＮが初期設定され、その後再び当該学習値ＦＬＲＮを初期設定し直す時に、エンジン負荷状態に応じて前記ＭＡＸ値及びＭＩＮ値の平均値を使うか、又は最終更新値を使うかを選択したが、エンジン始動直後における学習値の初期設定時にもエンジン負荷状態に応じて前記ＭＡＸ値及びＭＩＮ値の平均値を使うか、又は最終更新値を使うかを選択してもよい。
【図面の簡単な説明】
【図１】発明の実施の形態における空燃比制御装置の概要を示す構成図。
【図２】燃料噴射制御のメインルーチンを示すフローチャート。
【図３】空燃比学習補正ルーチンを示すフローチャート。
【図４】図３の処理をより具体的に説明するためのタイムチャート。
【図５】空燃比学習ゾーンを示すマップ。
【図６】ＭＡＸ値及びＭＩＮ値の記憶領域を示すマップ。
【図７】インジェクタの温度特性と、システム公差と、空燃比ずれとの関係を示す図。
【図８】第２の実施の形態において、空燃比学習補正ルーチンの一部を示すフローチャート。
【図９】インジェクタ噴射量の温度特性を示す図。
【符号の説明】
１…エンジン（内燃機関）、１８…インジェクタ、３０…ＥＣＵ、３１…条件判別手段，記憶手段，初期設定手段を構成するＣＰＵ。
【図１】
0004114245.tif 000002
【図２】
0004114245.tif 000003
【図３】
0004114245.tif 000004
【図４】
0004114245.tif 000005
【図５】
0004114245.tif 000006
【図６】
0004114245.tif 000007
【図７】
0004114245.tif 000008
【図８】
0004114245.tif 000009
【図９】
0004114245.tif 000010