(57)【特許請求の範囲】
【請求項１】
機関運転状態に基づいて基本燃料供給量を演算する基本燃料供給量演算手段と、
機関吸入混合気の空燃比を理論空燃比に対するリッチ・リーン信号として検出する空燃比検出手段と、
前記空燃比検出手段が検出する検出結果に基づいて、実際の空燃比を理論空燃比近傍に近づけるように、前記基本燃料供給量を補正するための空燃比フィードバック補正値を設定する空燃比フィードバック補正値設定手段と、
機関運転領域を複数の運転領域に分割し、運転領域毎に、前記基本燃料供給量を補正するための空燃比学習補正値を書き換え可能に記憶する空燃比学習補正値記憶手段と、
前記空燃比学習補正値記憶手段の記憶する空燃比学習補正値を、該当運転領域毎に、前記空燃比フィードバック補正値の基準値からの偏差を減少させる方向に更新設定する空燃比学習手段と、
を備え、
該当運転領域に基づいて検索された今回の空燃比学習補正値と、前回最終的な燃料供給量の設定に用いられた空燃比学習補正値と、を平均化処理し、該平均化処理後の空燃比学習補正値を用いて最終的な燃料供給量を設定すると共に、該設定された燃料供給量に基づいて燃料供給装置を駆動制御するようにし、
前回の燃料供給量の設定に用いられた空燃比学習補正値と、今回の燃料供給量の設定に用いられた空燃比学習補正値と、が、一致しない間は、前記空燃比学習手段による空燃比学習補正値の更新設定を禁止するようにしたことを特徴とする内燃機関の空燃比制御装置。
【請求項２】
機関運転状態に基づいて基本燃料供給量を演算する基本燃料供給量演算手段と、
機関吸入混合気の空燃比を理論空燃比に対するリッチ・リーン信号として検出する空燃比検出手段と、
前記空燃比検出手段が検出する検出結果に基づいて、実際の空燃比を理論空燃比近傍に近づけるように、前記基本燃料供給量を補正するための空燃比フィードバック補正値を設定する空燃比フィードバック補正値設定手段と、
機関運転領域を複数の運転領域に分割し、運転領域毎に、前記基本燃料供給量を補正するための空燃比学習補正値を書き換え可能に記憶する空燃比学習補正値記憶手段と、
前記空燃比学習補正値記憶手段の記憶する空燃比学習補正値を、該当運転領域毎に、前記空燃比フィードバック補正値の基準値からの偏差を減少させる方向に更新設定する空燃比学習手段と、
前記空燃比学習補正値を用いて最終的な燃料供給量を設定する燃料供給量設定手段と、
前記燃料供給量設定手段により設定された燃料供給量に基づいて燃料供給装置を駆動制御する駆動手段と、
を含んで構成された内燃機関の空燃比制御装置であって、
運転領域が遷移し、前記燃料供給量設定手段で用いる空燃比学習補正値を切り換える場合に、切り換え前の空燃比学習補正値を、切り換え後の空燃比学習補正値へ、徐々に近づけながら切り換えるようにし、
運転領域の遷移後、前回の燃料供給量の設定に用いられた空燃比学習補正値と、今回の燃料供給量の設定に用いられた空燃比学習補正値と、が、一致するまでの間は、前記空燃比学習手段による空燃比学習補正値の更新設定を禁止するようにしたことを特徴とする内燃機関の空燃比制御装置。
【請求項３】
機関運転状態に基づいて基本燃料供給量を演算する基本燃料供給量演算手段と、
機関吸入混合気の空燃比を理論空燃比に対するリッチ・リーン信号として検出する空燃比検出手段と、
前記空燃比検出手段が検出する検出結果に基づいて、実際の空燃比を理論空燃比近傍に近づけるように、前記基本燃料供給量を補正するための空燃比フィードバック補正値を設定する空燃比フィードバック補正値設定手段と、
機関運転領域を複数の運転領域に分割し、運転領域毎に、前記基本燃料供給量を補正するための空燃比学習補正値を書き換え可能に記憶する空燃比学習補正値記憶手段と、
前記空燃比学習補正値記憶手段の記憶する空燃比学習補正値を、該当運転領域毎に、前記空燃比フィードバック補正値の基準値からの偏差を減少させる方向に更新設定する空燃比学習手段と、
前記空燃比学習補正値を用いて最終的な燃料供給量を設定する燃料供給量設定手段と、
前記燃料供給量設定手段により設定された燃料供給量に基づいて燃料供給装置を駆動制御する駆動手段と、
を含んで構成された内燃機関の空燃比制御装置であって、
燃焼形態の切り換えに応じ、前記燃料供給量設定手段で用いる空燃比学習補正値を切り換える場合に、切り換え前の空燃比学習補正値を、切り換え後の空燃比学習補正値へ、徐々に近づけながら切り換えるようにし、
燃焼形態の切り換え後、前回の燃料供給量の設定に用いられた空燃比学習補正値と、今回の燃料供給量の設定に用いられた空燃比学習補正値と、が、一致するまでの間は、前記空燃比学習手段による空燃比学習補正値の更新設定を禁止するようにしたことを特徴とする内燃機関の空燃比制御装置。
【請求項４】
前記内燃機関が、燃料を気筒内へ直接噴射供給する形式の内燃機関であることを特徴とする請求項１〜請求項３の何れか１つに記載の内燃機関の空燃比制御装置。
【請求項５】
前記空燃比学習補正値記憶手段は、機関運転領域を燃料供給量に対応させて複数の運転領域に分割した構成であることを特徴とする請求項１〜請求項４の何れか１つに記載の内燃機関の空燃比制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、内燃機関の吸入混合気の空燃比を制御する装置、特に学習機能を備えるものに関する。
【０００２】
【従来の技術】
従来、学習機能を備えた空燃比フィードバック制御装置としては、特開平５−１５６９９４号公報等に開示されるようなものがある。
ここで、空燃比フィードバック制御は、目標空燃比（例えば、理論空燃比）に対する実際の空燃比のリッチ・リーンを機関排気系に設けた酸素センサの出力値とスライスレベル（目標空燃比相当値）とを比較することで判別し、該判定結果に基づき空燃比フィードバック補正係数αを比例・積分制御などにより増減設定し、エアフローメータで検出された吸入空気流量と機関回転速度とから算出される基本燃料噴射量Ｔｐを、前記空燃比フィードバック補正係数αで補正することにより、部品誤差・経時劣化、或いは環境変化等に起因する実際の空燃比の目標空燃比からの偏差をなくすようにするものである。
【０００３】
また、学習機能は、前記空燃比フィードバック補正係数αの基準値（目標収束値）からの偏差を、学習値ＰＨＯＳとして、これを機関運転領域（即ち、学習領域）毎に複数に区分された学習マップに更新記憶し、前記基本燃料噴射量Ｔｐを当該学習値（空燃比学習補正値）ＰＨＯＳにより補正することで、空燃比フィードバック補正係数αなしで得られるベース空燃比を略目標値に一致させるようにするもので、これにより空燃比フィードバック制御における実際の空燃比の目標空燃比への収束を早めることができるようにするものである。
【０００４】
すなわち、空燃比フィードバック制御と学習機能とを組み合わせることで、運転条件毎に異なる燃料噴射量の補正要求に応答性よく対応し、実際の空燃比を目標空燃比近傍に良好に制御可能とするものである。
【０００５】
【発明が解決しようとする課題】
しかし、上記のような従来の空燃比制御装置においては、学習マップに記憶されている学習値ＰＨＯＳの検索は、回転速度Ｎｅと負荷Ｔｐとによる補間なしの面検索であり、運転領域が遷移して参照領域が変わると、学習値ＰＨＯＳがステップ的に変化する。
【０００６】
このような学習値ＰＨＯＳのステップ的な変化は、燃料供給量をステップ的に変化させることになるため、機関の発生トルクを変化させ、以って運転性を低下させる惧れがある。
特に、燃料を気筒内（シリンダ内）に直接噴射供給する所謂気筒内直接燃料噴射式内燃機関にあっては、直接気筒内へ燃料を供給するので燃料の輸送遅れが小さく燃料供給量の変化に敏感であると共に、またリーン運転時には空燃比（燃料供給量）と発生トルクとの関係がリニアであるため、上記燃料供給量のステップ的な変化に対して敏感に発生トルクが変化し、運転性への影響が比較的大きくなる。
【０００７】
なお、吸気ポート内に燃料を供給する所謂吸気ポート内燃料噴射式内燃機関にあっては、燃料の輸送遅れが比較的大きく、また理論空燃比近傍で運転中は空燃比（燃料供給量）変化に対するトルク感度が低いため、気筒内直接燃料噴射式内燃機関に比べれば、運転性への影響は小さいものの、このような燃料供給量のステップ的な変化を抑制して、一層の運転性の改善を図ることは望ましいことである。
【０００８】
本発明は、かかる実情に鑑みなされたもので、運転領域が遷移して学習値の参照領域が変化などした場合における学習値のステップ的な変化に起因する機関発生トルクの変化を抑制して、以って運転性を良好に維持できるようにした内燃機関の空燃比制御装置を提供することを目的とする。
【０００９】
【課題を解決するための手段】
このため、請求項１に記載の発明に係る内燃機関の空燃比制御装置は、図１に示すように、
機関運転状態に基づいて基本燃料供給量を演算する基本燃料供給量演算手段と、
機関吸入混合気の空燃比を理論空燃比に対するリッチ・リーン信号として検出する空燃比検出手段と、
前記空燃比検出手段が検出する検出結果に基づいて、実際の空燃比を理論空燃比近傍に近づけるように、前記基本燃料供給量を補正するための空燃比フィードバック補正値を設定する空燃比フィードバック補正値設定手段と、
機関運転領域を複数の運転領域に分割し、運転領域毎に、前記基本燃料供給量を補正するための空燃比学習補正値を書き換え可能に記憶する空燃比学習補正値記憶手段と、
前記空燃比学習補正値記憶手段の記憶する空燃比学習補正値を、該当運転領域毎に、前記空燃比フィードバック補正値の基準値からの偏差を減少させる方向に更新設定する空燃比学習手段と、
を備え、
該当運転領域に基づいて検索された今回の空燃比学習補正値と、前回最終的な燃料供給量の設定に用いられた空燃比学習補正値と、を平均化処理し、該平均化処理後の空燃比学習補正値を用いて最終的な燃料供給量を設定すると共に、該設定された燃料供給量に基づいて燃料供給装置を駆動制御し、
前回の燃料供給量の設定に用いられた空燃比学習補正値と、今回の燃料供給量の設定に用いられた空燃比学習補正値と、が一致しない間は、前記空燃比学習手段による空燃比学習補正値の更新設定を禁止するように構成した。
【００１０】
かかる構成とすれば、該当運転領域に基づいて検索された今回の空燃比学習補正値と、前回最終的な燃料供給の設定に用いられた空燃比学習補正値と、を平均化処理（例えば加重平均）し、該平均化処理後の空燃比学習補正値を用いて最終的な燃料供給量を設定するようにしたので、最終的な燃料供給量の設定に用いられる空燃比学習補正値がステップ的に変化することを抑制できる。従って、例えば、運転領域が遷移して空燃比学習補正値の参照領域が変化した場合は勿論、運転領域が遷移しなくても、成層燃焼と均質燃焼との間で燃焼形態の切り換えなどがあっても、空燃比学習補正値がステップ的に変化することを抑制できるので、空燃比（燃料供給量）のステップ的な変化延いては機関の発生トルクの変化を抑制でき、以って運転性を良好に維持することができる。
また、参照される（燃料供給量の設定に用いる）空燃比学習補正値のステップ的な変化を抑制するための処理を行っている間は、空燃比学習補正値が不安定であるため、本来空燃比学習補正値が安定していることを前提に行われる空燃比学習手段による更新学習に誤差が生じ、誤った値に空燃比学習補正値が更新されてしまう惧れがあるが、これを防止することができる。
【００１１】
請求項２に記載の発明では、
機関運転状態に基づいて基本燃料供給量を演算する基本燃料供給量演算手段と、
機関吸入混合気の空燃比を理論空燃比に対するリッチ・リーン信号として検出する空燃比検出手段と、
前記空燃比検出手段が検出する検出結果に基づいて、実際の空燃比を理論空燃比近傍に近づけるように、前記基本燃料供給量を補正するための空燃比フィードバック補正値を設定する空燃比フィードバック補正値設定手段と、
機関運転領域を複数の運転領域に分割し、運転領域毎に、前記基本燃料供給量を補正するための空燃比学習補正値を書き換え可能に記憶する空燃比学習補正値記憶手段と、
前記空燃比学習補正値記憶手段の記憶する空燃比学習補正値を、該当運転領域毎に、前記空燃比フィードバック補正値の基準値からの偏差を減少させる方向に更新設定する空燃比学習手段と、
前記空燃比学習補正値を用いて最終的な燃料供給量を設定する燃料供給量設定手段と、
前記燃料供給量設定手段により設定された燃料供給量に基づいて燃料供給装置を駆動制御する駆動手段と、
を含んで構成された内燃機関の空燃比制御装置であって、
運転領域が遷移し、前記燃料供給量設定手段で用いる空燃比学習補正値を切り換える場合に、切り換え前の空燃比学習補正値を、切り換え後の空燃比学習補正値へ、徐々に近づけながら切り換え、
運転領域の遷移後、前回の燃料供給量の設定に用いられた空燃比学習補正値と、今回の燃料供給量の設定に用いられた空燃比学習補正値と、が一致するまでの間は、前記空燃比学習手段による空燃比学習補正値の更新設定を禁止するように構成した。
【００１２】
かかる構成によれば、運転領域が遷移して空燃比学習補正値の参照領域が変化した場合には、新たな空燃比学習補正値に直ちに切り換えることなく、一次なまし処理（平均化処理）等を行って、徐々に、新たな空燃比学習補正値へ移行させるようにしたので、運転領域が遷移して空燃比学習補正値の参照領域が変化した場合でも空燃比学習補正値のステップ的な変化が抑制され、空燃比（燃料供給量）のステップ的な変化延いては機関の発生トルクの変化を抑制することができ、以って運転性を良好に維持することができる。
また、参照される（燃料供給量の設定に用いる）空燃比学習補正値のステップ的な変化を抑制するための処理を行っている間は、空燃比学習補正値が不安定であるため、本来空燃比学習補正値が安定していることを前提に行われる空燃比学習手段による更新学習に誤差が生じ、誤った値に空燃比学習補正値が更新されてしまう惧れがあるが、これを防止することができる。
【００１３】
請求項３に記載の発明では、
機関運転状態に基づいて基本燃料供給量を演算する基本燃料供給量演算手段と、
機関吸入混合気の空燃比を理論空燃比に対するリッチ・リーン信号として検出する空燃比検出手段と、
前記空燃比検出手段が検出する検出結果に基づいて、実際の空燃比を理論空燃比近傍に近づけるように、前記基本燃料供給量を補正するための空燃比フィードバック補正値を設定する空燃比フィードバック補正値設定手段と、
機関運転領域を複数の運転領域に分割し、運転領域毎に、前記基本燃料供給量を補正するための空燃比学習補正値を書き換え可能に記憶する空燃比学習補正値記憶手段と、
前記空燃比学習補正値記憶手段の記憶する空燃比学習補正値を、該当運転領域毎に、前記空燃比フィードバック補正値の基準値からの偏差を減少させる方向に更新設定する空燃比学習手段と、
前記空燃比学習補正値を用いて最終的な燃料供給量を設定する燃料供給量設定手段と、
前記燃料供給量設定手段により設定された燃料供給量に基づいて燃料供給装置を駆動制御する駆動手段と、
を含んで構成された内燃機関の空燃比制御装置であって、
燃焼形態の切り換えに応じ、前記燃料供給量設定手段で用いる空燃比学習補正値を切り換える場合に、切り換え前の空燃比学習補正値を、切り換え後の空燃比学習補正値へ、徐々に近づけながら切り換え、
燃焼形態の切り換え後、前回の燃料供給量の設定に用いられた空燃比学習補正値と、今回の燃料供給量の設定に用いられた空燃比学習補正値と、が一致するまでの間は、前記空燃比学習手段による空燃比学習補正値の更新設定を禁止するように構成した。
【００１４】
かかる構成によれば、例えば成層燃焼と均質燃焼との間で燃焼形態の切り換えがあり、空燃比学習補正値がステップ的に変化するような場合には、新たな空燃比学習補正値に直ちに切り換えることなく、一次なまし処理（平均化処理）等を行って、徐々に、新たな空燃比学習補正値へ移行させるようにしたので、空燃比学習補正値のステップ的な変化が抑制され、空燃比（燃料供給量）のステップ的な変化延いては機関の発生トルクの変化を抑制することができ、以って運転性を良好に維持することができる。
また、参照される（燃料供給量の設定に用いる）空燃比学習補正値のステップ的な変化を抑制するための処理を行っている間は、空燃比学習補正値が不安定であるため、本来空燃比学習補正値が安定していることを前提に行われる空燃比学習手段による更新学習に誤差が生じ、誤った値に空燃比学習補正値が更新されてしまう惧れがあるが、これを防止することができる。
【００１６】
請求項４に記載の発明では、前記内燃機関が、燃料を気筒内へ直接噴射供給する形式の内燃機関であることを特徴とする。
特に、燃料を気筒内（シリンダ内）に直接噴射供給する所謂気筒内直接燃料噴射式内燃機関にあっては、直接気筒内へ燃料を供給するので燃料の輸送遅れが小さく燃料供給量の変化に敏感であると共に、またリーン運転時には空燃比（燃料供給量）と発生トルクとの関係がリニアであるため、吸気ポート内燃料噴射式内燃機関に比べて、参照される（燃料供給量の設定に用いる）空燃比学習補正値のステップ的な変化延いては燃料供給量のステップ的な変化に対して敏感に発生トルクが変化し、運転性への影響が大きくなるが、本発明の適用により、確実にかかる惧れを抑制できるので、以って気筒内直接燃料噴射式内燃機関の運転性を、吸気ポート内燃料噴射式内燃機関の運転性と同等にすることができ、以って気筒内直接燃料噴射式内燃機関の商品性を向上させることができる。
【００１７】
請求項５に記載の発明では、前記空燃比学習補正値記憶手段を、機関運転領域を燃料供給量に対応させて複数の運転領域に分割するようにした。
かかる構成とすれば、空燃比学習補正値を空燃比学習補正値記憶手段（学習マップ）に更新記憶・検索などする際に、シリンダ充填吸入空気流量をパラメータとせずに、マップ検索値Ｔｉｂ（燃料供給量）をパラメータとするようにしたので、目標空燃比（目標当量比）がストイキに設定されていてもリーンに設定されていても、何れの場合も燃料噴射弁４の作動状態（実際の燃料供給量）に応じた学習領域を参照することができることになる。従って、簡単な構成でありながら、ストイキ運転時の学習領域とリーン運転時に参照（検索）すべき領域とを一致させることなどが可能となる。このため、例えば、リーン運転時に空燃比学習補正値を参照して行われる空燃比のオープン制御精度を向上させることが可能となる。
【００１８】
【発明の効果】
請求項１に記載の発明によれば、該当運転領域に基づいて検索された今回の空燃比学習補正値と、前回最終的な燃料供給の設定に用いられた空燃比学習補正値と、を平均化処理（例えば加重平均）し、該平均化処理後の空燃比学習補正値を用いて最終的な燃料供給量を設定するようにしたので、最終的な燃料供給量の設定に用いられる空燃比学習補正値がステップ的に変化することを抑制できる。従って、例えば、運転領域が遷移して空燃比学習補正値の参照領域が変化した場合は勿論、運転領域が遷移しなくても、成層燃焼と均質燃焼との間で燃焼形態の切り換えなどがあっても、空燃比学習補正値がステップ的に変化することを抑制できるので、空燃比（燃料供給量）のステップ的な変化延いては機関の発生トルクの変化を抑制でき、以って運転性を良好に維持することができる。
【００１９】
請求項２に記載の発明によれば、運転領域が遷移して空燃比学習補正値の参照領域が変化した場合には、新たな空燃比学習補正値に直ちに切り換えることなく、一次なまし処理（平均化処理）等を行って、徐々に、新たな空燃比学習補正値へ移行させるようにしたので、運転領域が遷移して空燃比学習補正値の参照領域が変化した場合でも空燃比学習補正値のステップ的な変化が抑制され、空燃比（燃料供給量）のステップ的な変化延いては機関の発生トルクの変化を抑制することができ、以って運転性を良好に維持することができる。
【００２０】
請求項３に記載の発明によれば、例えば成層燃焼と均質燃焼との間で燃焼形態の切り換えがあり、空燃比学習補正値がステップ的に変化するような場合には、新たな空燃比学習補正値に直ちに切り換えることなく、一次なまし処理（平均化処理）等を行って、徐々に、新たな空燃比学習補正値へ移行させるようにしたので、空燃比学習補正値のステップ的な変化が抑制され、空燃比（燃料供給量）のステップ的な変化延いては機関の発生トルクの変化を抑制することができ、以って運転性を良好に維持することができる。
【００２１】
ここで、請求項１〜３に記載の各発明によれば、参照される（燃料供給量の設定に用いる）空燃比学習補正値のステップ的な変化を抑制するための処理を行っている間は、空燃比学習補正値が不安定であるため、本来空燃比学習補正値が安定していることを前提に行われる空燃比学習手段による更新学習に誤差が生じ、誤った値に空燃比学習補正値が更新されてしまう惧れがあるが、これを防止することができるので、空燃比学習手段による更新学習精度を高く維持することができる。
【００２２】
請求項４に記載の発明によれば、気筒内直接燃料噴射式内燃機関の運転性を、吸気ポート内燃料噴射式内燃機関の運転性と同等にすることができ、以って気筒内直接燃料噴射式内燃機関の商品性を向上させることができる。
請求項５に記載の発明によれば、空燃比学習補正値のステップ的な変化が抑制され、空燃比（燃料供給量）のステップ的な変化延いては機関の発生トルクの変化を抑制することができ、以って運転性を良好に維持することができると共に、ストイキ運転とリーン運転（成層燃焼・均質燃焼の双方を含む）とを切り換えるようにしたものにおいても、簡単な構成で、学習機会を維持しつつ、運転領域全域で高精度な学習延いては空燃比フィードバック制御が行えると共に、この学習結果を用いた高精度な空燃比のオープン制御を行うことができる。
【００２３】
【発明の実施の形態】
以下に、本発明の一実施形態を、添付の図面に基づいて説明する。
本発明の第１の実施形態を示す図２において、吸入空気はエアクリーナから吸気管３を通り、アクセルペダルと連動するスロットル弁８によってその流量が制御され、シリンダ内（気筒内）に流入する。燃料は、噴射信号に基づき各気筒に設けたインジェクタ（燃料噴射弁）４から、気筒内に直接燃料を噴射供給するようになっている。なお、本実施形態においては、ストイキ（理論空燃比）運転時に、後述するように、酸素センサの出力に基づいて空燃比フィードバック制御を行いつつ学習値ＰＨＯＳを更新記憶する一方、リーン（希薄空燃比）運転時（均質燃焼と成層燃焼の双方のリーン運転時を含む）には、ストイキ運転時に更新記憶した学習値ＰＨＯＳを参照（検索）して基本燃料噴射量Ｔｐを補正し、オープン制御を行うようになっている。
【００２４】
そして、噴射燃料とシリンダ内に流入する空気との混合気はシリンダ内で点火火花の助けをかりて燃焼し、燃焼したガスはピストンを押し下げる仕事を行う。その後、燃焼ガスは、排気管５を通して三元触媒６に排出され、ここで有害三成分（ＣＯ，ＨＣ，ＮＯｘ）が清浄化されて大気中に排出される。
７は吸入空気流量Ｑａを検出するエアフローメータ、９はスロットル弁８の開度ＴＶＯを検出するセンサ、１０はエンジンの回転速度Ｎｅを検出するクランク角度センサ、１１はウォータジャケットの冷却水温Ｔｗを検出する水温センサ、１３は、スロットル弁８をバイパスさせて空気をシリンダへ送るためのＩＳＣ（アイドル回転制御等のための補助空気量制御装置。なお、リーン運転時などに吸入空気量増大のためにも利用される）であり、１４は車速センサである。
【００２５】
１２Ａ，１２Ｂは三元触媒６の前と後の排気管にそれぞれ設けられるＯ2 （酸素）センサで、理論空燃比を境にリッチ・リーン反転する特性を有し、理論空燃比（λ＝１）よりもリッチ側であるかリーン側であるかのいわゆる２値を出力するものである。Ｏ2 （酸素）センサが、本発明にかかる空燃比検出手段である。この２つのＯ2 センサからの出力が、上記のエアフローメータ７，クランク角度センサ１０、水温センサ１１などからの出力とともに入力されるコントロールユニット２１では、インジェクタ４に対して燃料噴射信号を出力し、また以下に示すように、学習機能つきの空燃比フイードバック制御を行う。
【００２６】
即ち、本発明にかかる空燃比制御装置の基本燃料供給量演算手段、空燃比フィードバック補正値設定手段、空燃比学習補正値記憶手段、空燃比学習手段、燃料供給量設定手段、駆動手段としての機能は、コントロールユニット２１がソフトウェア的に備えるものである。
図３は、前Ｏ2 センサ出力に基づく空燃比フイードバック制御の基本ルーチンで、回転同期で実行される。
【００２７】
まず前Ｏ2 センサ出力と理論空燃比相当のスライスレべルの比較により空燃比がこのスライスレべルを境にしてリッチあるいはリーンのいずれの側に反転したかを判定し（ステップ５２〜５４）、判定結果に応じてマップを参照（検索）することにより、比例分と積分分を読み出し、これをＣＰＵ内のレジスタに格納する（ステップ５５，６０，６３，６８）。
【００２８】
比例分と積分分の各マップ値ＰR ，ＰL ，ｉR ，ｉL はあらかじめ与えられる値であり、空燃比フイードバック制御の基本制御定数である。
比例分ＰR 、ＰL のマップ値の特性を図７に示す。図７のマップ特性は、マップ検索値Ｔｉｂとエンジン回転速度Ｎｅをパラメータにしているが、さらにＮｅの変化量をもパラメータとすることができる。
【００２９】
なお、上記マップ検索値Ｔｉｂについては、後述する。
ところで、図７において斜線で囲った領域は、車両に生ずるサージングを避けるため、他の領域よりも格段に小さな値を入れている特殊なゾーンである。
なお、積分分については、マップ値ｉR ，ｉL にマップ検索値Ｔｉｂを乗じた値を最終的な積分分ＩＲ，ＩＬとして求めこともできる（ステップ６１，６９）。こうした負荷補正が必要となるのは、αの制御周期が長くなる運転域ではαの振幅が大きくなって、三元触媒の排気浄化性能が落ちることがあるので、αの振幅をαの制御周期によらずほぼ一定とするためである。
【００３０】
次に、比例分のマップ値ＰR 、ＰL についてはこれを学習値ＰＨＯＳ（空燃比学習補正値）により修正する（ステップ５８，６６）。
この学習値ＰＨＯＳは、図６でも示したように、学習値のマップを検索して、現在の運転条件の属する学習領域に格納されている値を読み出すものである（ステップ５７，１１２，１１３、ステップ６５，１１２，１１３）。なお、後Ｏ2 センサに故障が生じている場合は、学習値に信頼性がなくなるので、ＰＨＯＳ＝０として学習機能を外すようにすることができる（ステップ１１１，１１４）。
【００３１】
一方、学習値ＰＨＯＳは、図４，図５で示したように、所定の学習条件が成立したとき、後Ｏ2 センサ出力に基づいて更新する（ステップ５６，６４）。なお、図４，図５は前Ｏ2 センサ出力が反転する周期を演算周期として実行される。図４，図５において、ステップ８１〜９１で、次の（１）から（７）の学習条件が成立しているかどうかを確かめる。
【００３２】
（１）後Ｏ2 センサが活性状態にあること（ステップ８１）。
（２）後Ｏ2 センサが故障していない（図では「ＯＫ」で略記する。）こと（ステップ８２）。
（３）三元触媒が活性状態にあること（ステップ８３）。
（４）運転条件が特殊ゾーン以外の領域にあること（ステップ８４）。
【００３３】
マップ値ＰR ，ＰL の数値情報のうち一部に数値として使われずに”０”のまま残るビットが存在するため、このビット（この例ではビット７）に、図７で示した特殊ゾーンに格納する数値に関してだけ“１”を入れている。こうすることで、ビット７の値をみて、これが  ”０”であれば特殊ゾーン以外であると判断するのである。
【００３４】
（５）特殊ゾーン以外の領域で所定の回数だけ空燃比制御が行われたこと（ステップ８５，８６）。
ステップ８５のカウンタ値ｊは特殊ゾーンにないと判断されてからの空燃比反転回数を表すので、このカウンタ値ｊと一定値ｎ（たとえば１２回）とを比較し、ｊ≧ｎであれば特殊ゾーン以外の領域で所定の回数だけ空燃比制御が行なわれたと判断することができる。これを条件とするのは、空燃比制御が安定してから学習値の更新を行わせるためである。
【００３５】
（６）アイドル状態でないこと（ステップ８７）。
アイドル状態ではエンジンの安定性等が優先されるため、空燃比のフイードバック制御を停止するのが好ましいからである。
（７）運転条件が同じ学習領域に所定回数継続して滞在したこと（ステップ８８〜９１）。
【００３６】
学習領域を図８に示すと、エンジン回転速度Ｎｅとマップ検索値Ｔｉｂ（図１０のフローチャートから求まる）から定まる領域がほぼ等分に複数に区分けされ、各領域ごとに学習値ＰＨＯＳが格納されている。
ここで、本実施形態に係る『マップ検索値Ｔｉｂ』の演算ルーチンについて、図１０のフローチャートに従って説明する。
【００３７】
ステップ１では、現在の運転状態（目標当量比、各種補正係数など）に応じて演算された燃料噴射パルス幅Ｔｉを読み込む。
ステップ２では、マップ検索値Ｔｉｂ（希薄空燃比運転用燃料供給量）を演算する。なお、マップ検索値Ｔｉｂは、燃料噴射制御とは別のマップ検索専用のパラメータである。
【００３８】
Ｔｉｂ＝Ｔｉ−Ｔｓ
Ｔｓ；無効噴射パルス幅
ところで、このマップ検索値Ｔｉｂは、Ｔｉ｛≒Ｔｐ×ＴＦＢＹＡ（目標当量比）−Ｔｓ｝であるので、実際の燃料噴射量延いてはエンジンの目標トルクに相関する値となる。このため、目標空燃比（目標当量比）がストイキに設定されていてもリーンに設定されていても略同じ値となる。従って、従来のような『ストイキ運転時の基本燃料噴射量Ｔｐにより区分けされた学習領域と、リーン運転時に参照すべき領域と、が、空燃比のリーン化に伴う基本燃料噴射量Ｔｐの増加により、必ずしも一致しなくなる』と言った惧れを確実に回避することができることとなる。このため、例えばリーン運転時の空燃比のオープン制御精度を向上させることが可能となる。なお、ストイキ運転中のエンジントルクは基本燃料噴射量Ｔｐに相関し（ストイキ運転中にあっては、目標当量比”λ＝１”となるから、このＴｐが実際の燃料噴射量に相関する値となる）、リーン運転中のエンジントルクは吸入空気流量が十分ある状態なので、ストイキ用の基本燃料噴射量（即ち、シリンダ充填吸入空気流量）Ｔｐには相関せず、実際の燃料噴射量に相関する。
【００３９】
そして、現在の運転条件がいずれの学習領域に属するかをみて、前回と同じ学習領域にあれば、カウンタ値ｊR を１だけインクリメントする（ステップ８８〜９０）。このカウンタ値ｊR と一定値ｎR （たとえば６回）を比較し、ｊR ≧ｎR であれば（ステップ９１）、運転条件が同じ学習領域に一定回数継続して滞在したと判断することができる。
【００４０】
上記の（１）から（７）のすべてを満たした場合に学習条件が成立したと判断し、現在の運転条件の属する学習領域（エンジン回転速度Ｎｅとマップ検索値Ｔｉｂから定まる領域）に格納されている学習値ＰＨＯＳを読み出してＣＰＵ内のレジスタに格納する（ステップ９２）。
学習値の更新幅ＤＰＨＯＳには、後Ｏ2 センサにより検出される空燃比がリッチ側で負の値を与え、リーン側で正の値を与える。これは、後述するステップ９４で更新幅ＤＰＨＯＳを学習値ＰＨＯＳに加算する形で補正しているため、リッチ側で更新幅ＤＰＨＯＳに負の値を与えることによって学習値ＰＨＯＳを小さくすると、一方の比例分ＰＲが大きくかつ他方の比例分ＰＬが小さくなり、空燃比がリーン側に戻るからである。同様に、リーン側で学習値ＤＰＨＯＳに正の値を与えることによって、空燃比をリッチ側に戻すことができる。なお、比例分ＰR とＰL の両方を変更しなくとも片方だけでもかまわない。
【００４１】
さて、学習値の更新幅ＤＰＨＯＳの値（絶対値）を定めるについては、後Ｏ2 センサ出力とスライスレべルとの比較結果に応じた一定値として定めるのではなく、後Ｏ2 センサ出力の中間値を中心にしてこれから大きくずれるはど大きく、中間値の近くでは小さくなるように、後Ｏ2 センサ出力に応じて設定する（ステップ９３）。
【００４２】
図９のように、後Ｏ2 センサの出力波形は、最小値を０Ｖ、最大値を１Ｖとし、かつ中間値の０．５Ｖを中心とするほぼ回転対象の形をしているので、後Ｏ2 センサ出力を縦軸、学習値の更新幅ＤＰＨＯＳを横軸とする右下がりの一次関数を用意し、後Ｏ2 センサ出力の中間値である０．５Ｖで更新幅ＤＰＨＯＳが０となるように定めれば、後Ｏ2 センサ出力が中間値から外れるほど更新幅ＤＰＨＯＳの絶対値が大きくなっていくのである。
【００４３】
たとえば、図９でＡ点とＢ点とを比べれば、より中間値から離れたＢ点に対するほうが更新幅ＤＰＨＯＳの絶対値が大きくなっている。
こうして求めた更新幅ＤＰＨＯＳはレジスタに格納している学習値ＰＨＯＳに加算することによって学習値を更新し、更新された学習値ＰＨＯＳを同じ学習領域に格納する（ステップ９４，９５）。
【００４４】
このように、学習値の更新幅を後Ｏ2 センサ出力に応じた可変値とすることにより、ウインドウへの空燃比の収束性を高めつつ、空燃比のオーバーシュートやアンダーシュートを防止することが可能となる。なお、本実施形態では、学習値の更新幅を後Ｏ2 センサ出力に応じた可変値とする構成として説明したが、本発明はこれに限られるものではなく、学習値の更新幅を所定値とする場合にも適用できるものである。
【００４５】
最後にＣＰＵ内のレジスタに格納されているマップ値ＰL ，ＰR の数値情報のうちビット７の値を  ”０”に戻して入れなおす（ステップ９６）。これは、数値情報ビットはもともと数値を表示するものであるから、そのままではビット７の”１”も数値の一部として扱われることになってしまうからである。
図３に戻り、空燃比フイードバック制御定数（比例分ＰR ，ＰL と積分分ＩＲ，ＩＬ）に基づいて空燃比フイードバック補正係数（空燃比フィードバック補正値）αを算出する（ステップ５９，６２，６７，７０）。こうして求めた補正係数αに基づき、図１１のルーチンを実行して燃料噴射パルス幅Ｔｉを算出する。
【００４６】
つまり、図１１に示すように、吸入空気流量Ｑａと回転速度Ｎｅから基本噴射パルス幅Ｔｐ（＝Ｋ・Ｑａ／Ｎｅ、ただし、Ｋは定数。ストイキ時のシリンダ充填吸入空気流量に相関する値）を算出し、これを目標当量比ＴＦＢＹＡ（ストイキ運転やリーン運転に応じて設定される）や上記の空燃比フイードバック補正係数α（ストイキ運転中はαを用いるが、リーン運転中はこのαを例えば『１．０＋学習値ＰＨＯＳ』に置き換えて演算する）で補正した値をインジェクタに与える燃料噴射パルス幅Ｔｉとして算出する。なお、Ｃｏは１と水温増量補正係数ＫＴｗなどとの和であり、Ｔｓは無効噴射パルス幅である。
【００４７】
このように、図１０のフローチャートによれば、学習値をマップに更新記憶・検索などする際に、従来のようにストイキ用の基本燃料噴射量（即ち、シリンダ充填吸入空気流量）Ｔｐをパラメータとせずに、マップ検索値Ｔｉｂ（実際の燃料噴射量延いては目標トルク相当値）をパラメータとするようにしたので、目標空燃比（目標当量比）がストイキに設定されていてもリーンに設定されていても、何れの場合も燃料噴射弁４の作動状態（実際の燃料噴射量）に応じた学習領域を参照することができることになる。従って、簡単な構成でありながら、ストイキ運転時の学習領域とリーン運転時に参照（検索）すべき領域とを一致させることが可能となる。このため、例えば、リーン運転時の空燃比のオープン制御精度を向上させることが可能となる。
【００４８】
また、例えばリーン運転に対応させた学習領域を別個新たに増設するようにした場合に生じる惧れ、即ち、ストイキ運転時には当該学習領域で学習が行われる可能性が低いので、ストイキ運転からリーン運転への移行条件である『学習値ＫL が始動後取得（更新記憶）されたこと』をクリアすることができず、ストイキ運転からリーン運転へ移行させることができなくなってしまうと言った惧れも回避することもできる。
【００４９】
しかも、ストイキ運転時の学習領域（一単位）をリーン運転に対応した領域まで含めるように拡張した場合に生じる惧れ、即ち、学習精度自体が低下する惧れ延いては該精度の低い学習結果を参照して行われるリーン運転中のオープン制御の精度低下を招くと言った惧れも確実に回避することができるものである。
つまり、本実施形態によれば、ストイキ運転とリーン運転（成層燃焼・均質燃焼の双方を含む）とを切り換えるようにしたものにおいても、簡単な構成で、学習機会を維持しつつ、運転領域全域で高精度な学習延いては空燃比フィードバック制御が行えると共に、この学習結果を用いた高精度な空燃比のオープン制御が行えるようになる。
【００５０】
ところで、図１０のフローチャートでは、マップ検索値Ｔｉｂを『Ｔｉ−Ｔｓ』として、実際の燃料噴射量としたが、学習値ＰＨＯＳ延いては空燃比フイードバック補正係数αが基準値（例えば１．０）から大きく偏差した場合などを考えると、その影響でＴｉ自体が変化してしまい、本来参照すべき学習領域と異なる学習領域が参照されるようになってしまう惧れがある。
【００５１】
そこで、マップ検索値Ｔｉｂを演算する際のＴｉは、学習値ＰＨＯＳ延いては空燃比フイードバック補正係数α、Ｃｏ（水温増量補正係数ＫＴｗなど）による変化を抑制するために、これらで除算する構成とすることもできる。
即ち、図１０のフローチャートのステップ２において、
Ｔｉｂ＝（Ｔｉ−Ｔｓ）／α／Ｃｏ
なる演算を行うようにしても良い。
【００５２】
このようにすれば、学習値ＰＨＯＳ延いては空燃比フイードバック補正係数αが、例えば経時と共に基準値（例えば１．０）から偏差したような場合であっても、本来参照すべき学習領域と異なる学習領域が参照されるようになってしまう惧れを確実に回避できるので、一層学習精度延いては空燃比フィードバック制御精度を向上できると共に、この学習結果を用いた空燃比のオープン制御の制御精度を一層高めることが可能となる。
【００５３】
なお、マップ検索値Ｔｉｂを演算するルーチンは、図１２のフローチャートにより実行することもできる。
即ち、
ステップ１１では、ＴＦＢＹＡ，Ｔｐを読み込む。
ステップ１２では、マップ検索値Ｔｉｂを演算する。
【００５４】
Ｔｉｂ＝Ｔｐ×ＴＦＢＹＡ
そして、このようにして求めたマップ検索値Ｔｉｂ（学習補正値検索用燃料供給量）を用いて、学習値の更新記憶、検索、参照等を行わせるようにする。
かかる図１２のフローチャートによれば、図１０のフローチャートと同様に、ストイキ運転時の学習領域とリーン運転時に参照すべき領域とを一致させることなどが可能であるが、更に、図１２のフローチャートによれば、燃料噴射パルス幅Ｔｉを逆算してマップ検索値Ｔｉｂ（目標エンジントルク相当値）を算出するのではなく、吸入空気流量Ｑａ（シリンダ内充填吸入空気流量Ｔｐ≒Ｑａ／Ｎｅ）と目標当量比とを乗算することで算出するようにしたので、より一層、演算量を低減でき、制御ロジックの簡略化を図ることができる。
【００５５】
また、図１２のフローチャートによるマップ検索値Ｔｉｂは、学習値ＰＨＯＳ延いては空燃比フイードバック補正係数αなどの影響も受けないので、かかる点においても、一層高精度な学習制御延いては空燃比フィードバック制御を実現できると共に、この学習結果を用いた空燃比のオープン制御の一層の高精度化を実現できることとなる。
【００５６】
ところで、本実施形態では、運転領域が遷移して学習値の参照領域が変化した場合における学習値のステップ的な変化に起因する機関発生トルクの変化を抑制するために、以下のような処理（ダンパ制御）を行う。
即ち、図１３に示すフローチャート（ダンパ制御）を実行する。なお、本ルーチンは、運転領域が遷移して学習値の参照領域が変化した場合に行われるルーチンである。
【００５７】
まず、ステップ２１では、現在の回転速度Ｎｅ，現在のマップ検索値Ｔｉｂを読み込む。
ステップ２２では、ステップ２１で読み込まれた回転速度Ｎｅ，マップ検索値Ｔｉｂにより学習マップ（図８参照）を検索し、該当する領域に記憶されている学習値ＰＨＯＳを読み込み、これをＰＨＯＳ０にセットする（ＰＨＯＳ０←ＰＨＯＳ）。
【００５８】
ステップ２３では、学習値ＰＨＯＳの一次なまし処理（演算）を、以下のようにして行う。
ＰＨＯＳ(new) ＝ＷＴ×ＰＨＯＳ０＋（１−ＷＴ）×ＰＨＯＳ(old) 
ＷＴ；重み付け係数（０＜ＷＴ＜１）
ステップ２４では、ＦＬＲＮＤＰ（ダンパ制御実行中フラグ）が１であるか否かを判定する。１であれば、ダンパ制御実行中（一次なまし処理実行中）であるとして、ステップ２５へ進む。一方、０であれば、ダンパ制御実行中でないとして、ステップ２７へ進む。なお、ＦＬＲＮＤＰは、運転領域が遷移して学習値の参照領域が変化した直後に、１にセットされるようになっている。
【００５９】
ステップ２５では、｜ＰＨＯＳ０−ＰＨＯＳ(new) ｜＜所定値ＫＳＬ（ダンパ制御完了判定値）か否かを判断する。ＹＥＳであれば、ステップ２６へ進む。
ステップ２６では、現在の運転領域に対応する学習領域に記憶されているＰＨＯＳ０と、一次なまし処理後の学習値ＰＨＯＳ(new) と、が近づいており、ＰＨＯＳ０により燃料噴射量を補正しても空燃比段差は生じないと判断し、ＦＬＲＮＤＰを０にセットして、一次なまし処理を停止する。なお、同時に、ＰＨＯＳ０を、図３のフローチャートにおけるステップ５８、６６の処理や、図１１の燃料噴射量の演算（リーン運転中は、α＝1.0 ±ＰＨＯＳ）に用いるようにすべく、ＰＨＯＳ０→ＰＨＯＳとして、本フローを終了する。即ち、ステップ２２で検索された学習値ＰＨＯＳにより燃料噴射量の補正を行わせるようにする。
【００６０】
一方、｜ＰＨＯＳ０−ＰＨＯＳ(new) ｜≧所定値ＫＳＬであれば、ステップ２８へ進むが、この場合は、現在の運転領域に対応する学習領域に記憶されているＰＨＯＳ０と、一次なまし処理後の学習値ＰＨＯＳ(new) とは未だ偏差が大きく、ＰＨＯＳ０により燃料噴射量を補正してしまうと、空燃比段差が生じトルク段差が生じる惧れがあるとして、ＦＬＲＮＤＰを１に維持すると同時にＰＨＯＳ(new) →ＰＨＯＳ(old) とし、｜ＰＨＯＳ０−ＰＨＯＳ(new) ｜＜所定値ＫＳＬとなるまで、ステップ２３における一次まなし処理を継続させると共に、ＰＨＯＳ(new) を用いて、図３のフローチャートにおけるステップ５８、６６の処理や、図１１の燃料噴射量の演算処理（リーン運転中は、α＝1.0 ±ＰＨＯＳ(new) ）を行わせる。
【００６１】
ところで、ステップ２４において、ＦＬＲＮＤＰ（ダンパ制御実行中フラグ）が０と判定された場合は、学習値の参照領域が変化していないか、ダンパ処理が完了した場合であるので、ステップ２７へ進む。
ステップ２７では、ステップ２２において検索した学習値ＰＨＯＳをそのまま燃料噴射量の補正に用いることができるので、ＰＨＯＳ０→ＰＨＯＳとして、図３のフローチャートにおけるステップ５８、６６の処理や、図１１の燃料噴射量の演算（リーン運転中は、α＝1.0 ±ＰＨＯＳ）を行わせると共に、ストイキ運転中であれば、図５のフローチャートを実行して、学習値ＰＨＯＳの更新処理などを行わせるべく、本フローを終了する。
【００６２】
このように、本実施形態によれば、運転領域が遷移して学習値の参照領域が変化した場合には、現在の学習値ＰＨＯＳを、新たな学習値ＰＨＯＳに直ちに切り換えることなく、一次なまし処理を行った値（ＰＨＯＳ(new) ）により燃料噴射量を補正し、徐々に、現在の学習値ＰＨＯＳを新たな学習値ＰＨＯＳへ近づけて行くようにしたので、運転領域が遷移して学習値の参照領域が変化した場合でも学習値のステップ的な変化が抑制され、以って燃料供給量のステップ的な変化延いては機関の発生トルクの変化を抑制することができる。従って、運転性を良好に維持することができる。
【００６３】
次に、本発明の第２の実施形態について説明する。
第２の実施形態のシステム構成は、第１の実施形態と同様であるので説明を省略し、図１４のフローチャートについてのみ説明する。
即ち、第２の実施形態では、運転領域が遷移して学習値の参照領域が変化した場合における学習値のステップ的な変化に起因する機関発生トルクの変化を抑制するために、図１４に示すような処理（ダンパ制御）を行う。なお、本ルーチンも、運転領域が遷移して学習値の参照領域が変化した場合に行われるルーチンである。
【００６４】
まず、ステップ３１では、現在の回転速度Ｎｅ，現在のマップ検索値Ｔｉｂを読み込む。
ステップ３２では、ステップ３１で読み込まれた回転速度Ｎｅ，マップ検索値Ｔｉｂにより学習マップ（図８参照）を検索し、該当する領域に記憶されている学習値ＰＨＯＳを読み込み、これをＰＨＯＳ０にセットする（ＰＨＯＳ０←ＰＨＯＳ）。
【００６５】
ステップ３３では、ＦＳＴＲ（成層燃焼切換フラグ）を読み込む。
ステップ３４では、ＦＬＲＮＤＰ（ダンパ制御実行中フラグ）が１であるか否かを判定する。１であれば、ダンパ制御（一次なまし処理）を実行すべきであるとして、ステップ３５へ進む。一方、０であれば、ダンパ制御実行中でないとして、ステップ３９へ進む。
【００６６】
なお、ＦＬＲＮＤＰは、運転領域が遷移して学習値の参照領域が変化した直後に、１にセットされるようになっているが、成層燃焼時と均質燃焼時とで、学習マップを別に持っている場合には、運転領域が遷移しなくても、成層燃焼と均質燃焼との間の燃焼形態の切り換えによって、学習値ＰＨＯＳがステップ的に変化する惧れもある。
【００６７】
そこで、本実施形態では、ステップ３９において、ＦＳＴＲ（成層燃焼切換フラグ）が、ＦＳＴＲ０（前回のＦＳＴＲの値）と一致しないか否かを判断する。そして、一致していなければ（ＦＳＴＲ≠ＦＳＴＲ０）、燃焼形態の切り換え延いては学習マップの切り換えがあったとして、ステップ３５へ進む。一致していれば（ＦＳＴＲ＝ＦＳＴＲ０）、燃焼形態の切り換え延いては学習マップの切り換えはないとして、ステップ４０へ進む。
【００６８】
ステップ３５では、ＦＬＲＮＤＰ（ダンパ制御実行中フラグ）を１にセットして、ステップ３６へ進む。
ステップ３６では、学習値ＰＨＯＳの一次なまし処理（演算）を、以下のようにして行う。
ＰＨＯＳ(new) ＝ＷＴ×ＰＨＯＳ０＋（１−ＷＴ）×ＰＨＯＳ(old) 
ＷＴ；重み付け係数（０＜ＷＴ＜１）
ステップ３７では、｜ＰＨＯＳ０−ＰＨＯＳ(new) ｜＜所定値ＫＳＬ（ダンパ制御完了判定値）か否かを判断する。ＹＥＳであれば、ステップ３８へ進む。
【００６９】
ステップ３８では、現在の運転領域に対応する学習領域に記憶されているＰＨＯＳ０と、一次なまし処理後の学習値ＰＨＯＳ(new) と、が近づいており、ＰＨＯＳ０により燃料噴射量を補正しても空燃比段差は生じないと判断し、ＦＬＲＮＤＰを０にセットして、一次なまし処理を停止する。なお、同時に、ステップ３２において検索した学習値ＰＨＯＳを、図３のフローチャートにおけるステップ５８、６６の処理や、図１１の燃料噴射量の演算（リーン運転中は、α＝1.0 ±ＰＨＯＳ）に用いるようにすべく、ＰＨＯＳ０→ＰＨＯＳとして、本フローを終了する。即ち、ステップ３２で検索された学習値ＰＨＯＳにより燃料噴射量の補正を行わせるようにする。
【００７０】
一方、｜ＰＨＯＳ０−ＰＨＯＳ(new) ｜≧所定値ＫＳＬであれば、現在の運転領域に対応する学習領域に記憶されているＰＨＯＳ０と、一次なまし処理後の学習値ＰＨＯＳ(new) とは未だ偏差が大きく、ＰＨＯＳ０により燃料噴射量を補正してしまうと、空燃比段差が生じトルク段差が生じる惧れがあるとして、ＰＨＯＳ(new) を用いて、図３のフローチャートにおけるステップ５８、６６の処理や、図１１の燃料噴射量の演算処理（リーン運転中は、α＝1.0 ±ＰＨＯＳ(new) ）を行わせつつ、｜ＰＨＯＳ０−ＰＨＯＳ(new) ｜＜所定値ＫＳＬとなるまで、ステップ３６における一次まなし処理を継続させる（この際、ＰＨＯＳ(new) →ＰＨＯＳ(old) として一次なまし処理は継続される）。
【００７１】
ところで、ステップ３４において、運転領域が遷移していない或いはダンパ制御が完了した状態であると判断され、かつ、ステップ３９において、ＦＳＴＲ＝ＦＳＴＲ０と判断された場合は、学習値ＰＨＯＳのステップ的な変化はないとして、ダンパ制御（一次なまし処理）を行うことなく、ステップ４０へ進むが、当該ステップ４０では、以下のような処理を行う。
【００７２】
ステップ４０では、ステップ３２で検索した学習値ＰＨＯＳ０をそのまま燃料噴射量の補正に用いることができるので、ＰＨＯＳ０→ＰＨＯＳとして、図３のフローチャートにおけるステップ５８、６６の処理や、図１１の燃料噴射量の演算（リーン運転中は、α＝1.0 ±ＰＨＯＳ）を行わせると共に、ストイキ運転中であれば、図５のフローチャートを実行して、学習値ＰＨＯＳの更新処理などを行わせるべく、本フローを終了する。
【００７３】
このように、第２の実施形態によれば、運転領域が遷移して学習値の参照領域が変化した場合は勿論、運転領域が遷移しなくても、成層燃焼と均質燃焼との間で燃焼形態の切り換えがあり、学習値ＰＨＯＳがステップ的に変化するような場合にも、現在の学習値ＰＨＯＳを、新たな学習値ＰＨＯＳに直ちに切り換えることなく、一次なまし処理を行った値（ＰＨＯＳ(new) ）により燃料噴射量を補正し、徐々に、現在の学習値ＰＨＯＳを新たな学習値ＰＨＯＳへ近づけて行くことができるので、学習値のステップ的な変化が抑制され、以って燃料供給量のステップ的な変化延いては機関の発生トルクの変化を抑制することができる。従って、運転性を良好に維持することができる。
【００７４】
ところで、上記各実施形態では、ストイキ運転とリーン運転とを切り換える内燃機関について説明したが、本発明は、これに限られるものではなく、例えばストイキ運転のみを行わせる内燃機関にも適用できるものである。
即ち、運転領域の遷移や、空燃比の切り換え、燃焼形態の切り換え（成層燃焼⇔均質燃焼など）、その他の要因（例えば、エバポ処理中⇔非処理等）によって、参照すべき学習値ＰＨＯＳが切り換わる場合に、切り換え前の値を、切り換え後の値へ、徐々に近づけるように切り換えることは、本発明の範囲に含まれるものである。また、上記各実施形態では、一次なまし処理として、加重平均処理を行わせるようにしたが、これに限られるものではなく、切り換え前の値を、切り換え後の値へ、徐々に近づけるように切り換える処理であれば、他の手法（単なる平均処理など）とすることもできるものである。
【００７５】
更に、本発明は、運転領域の遷移や、空燃比や燃焼形態の切り換えなどの有無に拘わらず、該当運転領域に基づいて検索された今回の学習値ＰＨＯＳと、前回最終的な燃料供給量の設定に用いた学習値ＰＨＯＳと、を常に平均化処理する構成とし、該平均化処理後の学習値ＰＨＯＳを用いて今回の最終的な燃料供給量を設定するように構成することもできるものである。この場合は、常に平均化処理を行うものの、運転領域の遷移や、空燃比や燃焼形態の切り換えなどを検出しなくて良いので、制御ロジックの簡略化を図ることができる。
【００７６】
また、前回の燃料供給量の設定に用いられた学習値ＰＨＯＳと、今回の燃料供給量の設定に用いられた学習値ＰＨＯＳと、が一致しない間は、空燃比学習手段による学習値ＰＨＯＳの更新設定を禁止するようにする。つまり、参照される（燃料供給量の設定に用いる）学習値ＰＨＯＳのステップ的な変化を抑制するための一次なまし処理等の処理を行っている間は、学習値ＰＨＯＳが不安定であるため、本来学習値ＰＨＯＳが安定していることを前提に行われる空燃比学習手段による更新学習（図５のフローチャートの制御結果）に誤差が生じ、誤った値に学習値ＰＨＯＳが更新されてしまう惧れがあるが、かかる惧れを確実に防止することができるからである。
【００７７】
なお、上記各実施形態では、三元触媒６の前後に酸素センサを備える構成として説明したが、本発明は、これに限られるものではなく、例えば何れか１つの酸素センサを備え、該酸素センサの出力結果に基づいて比例・積分制御（Ｐ分、Ｉ分）により空燃比フィードバック補正係数αを与える一方、該αと基準値との偏差を学習値として更新記憶し、空燃比制御に、この学習結果を反映させるようにしたもの全てに適用できるものである。
【図面の簡単な説明】
【図１】本発明のブロック図である。
【図２】本発明の第１の実施形態のシステム構成図である。
【図３】空燃比フイードバック補正係数αの算出を説明するフローチャートである。
【図４】学習値ＰＨＯＳの更新を説明するフローチャートである。
【図５】学習値ＰＨＯＳの更新を説明するフローチャートである。
【図６】学習値ＰＨＯＳの読みだしを説明するフローチャートである。
【図７】比例分Ｐ01，ＰL のマップ特性図である。
【図８】学習領域を説明する図（テーブル、マップ）である。
【図９】後Ｏ2 センサ出力に対する更新幅ＤＰＨＯＳの関係を説明する特性図である。
【図１０】マップ検索値Ｔｉｂの演算を説明するフローチャートである。
【図１１】燃料噴射パルス幅Ｔｉの演算を説明するフローチャートである。
【図１２】マップ検索値Ｔｉｂの演算の他の一例を説明するフローチャートである。
【図１３】学習値ＰＨＯＳの一次なまし処理（ダンパ制御）を説明するフローチ
【図１４】本発明の第２の実施形態にかかる学習値ＰＨＯＳの一次なまし処理（ダンパ制御）を説明するフローチャートである。
【符号の説明】
４  インジェクタ（燃料供給装置）
５  排気管
６  三元触媒
７  エアフローメータ（エンジン負荷センサ）
１０  クランク角度センサ（エンジン回転数センサ）
１１  水温センサ
１２Ａ  前Ｏ2 センサ
１２Ｂ  後Ｏ2 センサ
２１  コントロールユニット
【図１】
0003680501.tif 000002
【図２】
0003680501.tif 000003
【図３】
0003680501.tif 000004
【図４】
0003680501.tif 000005
【図５】
0003680501.tif 000006
【図６】
0003680501.tif 000007
【図７】
0003680501.tif 000008
【図８】
0003680501.tif 000009
【図９】
0003680501.tif 000010
【図１０】
0003680501.tif 000011
【図１１】
0003680501.tif 000012
【図１２】
0003680501.tif 000013
【図１３】
0003680501.tif 000014
【図１４】
0003680501.tif 000015