(57)【要約】【課題】良好なるドライバビリティを維持しつつ触媒の早期活性化を図ること。【解決手段】エンジン１０の排気管２４には排ガス浄化のための触媒３１が設けられている。ＥＣＵ４０は、空燃比ディザ制御の実施に際し、運転者が操作したアクセル開度等に基づいてエンジン１０の燃焼によって発生すべき要求トルクを算出する。また、その都度のＭＢＴ（最適点火時期）に対応するＭＢＴ推定トルクを算出すると共に、その都度の遅角限界点火時期に対応する遅角限界推定トルクを算出する。そして、前記算出した要求トルク、ＭＢＴ推定トルク及び遅角限界推定トルクに基づいて空燃比ディザ制御における空燃比振幅量を算出する。【選択図】      図１
2005171979.tif 000002
【特許請求の範囲】
【請求項１】
目標ベース空燃比を設定し、該目標ベース空燃比に対してリーン側及びリッチ側に空燃比を振幅させて空燃比ディザ制御を実施する内燃機関の制御装置において、
運転者が操作したアクセル開度等に基づいて内燃機関の燃焼によって発生すべき要求トルクを算出する要求トルク算出手段と、
その都度の最適点火時期（ＭＢＴ；Minimum advance for the Best Torque）に対応するＭＢＴ推定トルクを算出するＭＢＴ推定トルク算出手段と、
その都度の遅角限界点火時期に対応する遅角限界推定トルクを算出する遅角限界推定トルク算出手段と、
前記算出した要求トルク、ＭＢＴ推定トルク及び遅角限界推定トルクに基づいて前記空燃比ディザ制御における空燃比振幅量を算出する空燃比振幅量算出手段と、
を備えたことを特徴とする内燃機関の制御装置。
【請求項２】
前記空燃比振幅量算出手段は、要求トルクとＭＢＴ推定トルクとのトルク比、及び要求トルクと遅角限界推定トルクとのトルク比に基づいて、リーン側及びリッチ側の空燃比振幅量をそれぞれ算出する請求項１記載の内燃機関の制御装置。
【請求項３】
要求トルクとＭＢＴ推定トルクとのトルク比に基づいてＭＢＴ時対応のＭＢＴリーン空燃比を算出する手段と、要求トルクと遅角限界推定トルクとのトルク比に基づいて遅角限界時対応の遅角限界リッチ空燃比を算出する手段とを備え、前記空燃比振幅量算出手段は、前記算出したＭＢＴリーン空燃比と遅角限界リッチ空燃比とに基づいてリーン側及びリッチ側の空燃比振幅量をそれぞれ算出する請求項１又は２記載の内燃機関の制御装置。
【請求項４】
空燃比とトルク効率との関係を予め規定したトルク効率特性を用い、前記ＭＢＴリーン空燃比と前記遅角限界リッチ空燃比とを算出する請求項３記載の内燃機関の制御装置。
【請求項５】
内燃機関の燃焼状態等に適合させてリーン限界値とリッチ限界値とを予め規定しておき、前記空燃比振幅量算出手段は、前記ＭＢＴリーン空燃比を前記リーン限界値にてガードすると共に、前記遅角限界リッチ空燃比を前記リッチ限界値にてガードする請求項３又は４記載の内燃機関の制御装置。
【請求項６】
前記空燃比振幅量算出手段は、前記ＭＢＴリーン空燃比と前記遅角限界リッチ空燃比とのうち目標ベース空燃比に近い方に基づいてリーン側及びリッチ側共通の空燃比振幅量を算出する請求項３乃至５の何れかに記載の内燃機関の制御装置。
【請求項７】
空燃比とトルク効率との関係を予め規定したトルク効率特性を用い要求トルク、ＭＢＴ推定トルク及び遅角限界推定トルクを算出するよう構成した制御装置であって、前記空燃比ディザ制御における目標ベース空燃比を理論空燃比又はその近傍とする際に、当該目標ベース空燃比をリーン側に予め移行させる手段を備えた請求項１乃至６の何れかに記載の内燃機関の制御装置。
【請求項８】
前記内燃機関に吸入される空気量を、運転者が要求する要求空気量に基づいて制御する空気量制御手段と、その都度の実空気量に基づいて算出された実トルクと前記要求トルクとにより点火時期を進角側又は遅角側に制御する点火時期制御手段と、を備えた制御装置に適用され、
前記要求空気量を増減補正する空気量補正手段を更に備え、該増減補正後の要求空気量に基づいて空気量制御を実施する構成とした請求項１乃至７の何れかに記載の内燃機関の制御装置。
【請求項９】
前記空気量補正手段は、ベース点火時期を最適点火時期又はその近傍とする際に前記要求空気量を増量補正する請求項８記載の内燃機関の制御装置。
【請求項１０】
前記空気量制御手段は、その都度の要求トルクに基づいて要求空気量を算出するものであり、前記空気量補正手段は、要求トルクを増減させることにより要求空気量を増減補正する請求項８又は９記載の内燃機関の制御装置。
【請求項１１】
その都度の実トルクを推定する実トルク推定手段を備え、該推定した実トルクと前記要求トルクとに基づいてトルク制御を実施する制御装置であって、
前記空燃比ディザ制御時における実空燃比の挙動を推測する実空燃比推測手段と、該推測した実空燃比に基づいて前記実トルクを補正する実トルク補正手段とを備えた請求項１乃至１０の何れかに記載の内燃機関の制御装置。
【請求項１２】
前記実空燃比推測手段は、前記目標ベース空燃比を前記空燃比振幅量で補正した後の最終目標空燃比をなまし演算することで実空燃比を推測する請求項１１記載の内燃機関の制御装置。
【請求項１３】
多気筒内燃機関の各気筒に通じる排気通路の集合部に配設された空燃比センサを備え、該空燃比センサのセンサ検出値を目標値に一致させるよう空燃比フィードバック制御を実施する制御装置において、
前記空燃比センサのセンサ検出値に基づいて気筒別空燃比を算出する気筒別空燃比算出手段と、
前記算出した気筒別空燃比に基づいて、気筒間の空燃比ばらつき量を反映して気筒毎に気筒別補正量を算出し、該気筒別補正量により気筒毎の空燃比を制御する気筒別空燃比制御手段と、
気筒別空燃比制御が実施されていることを条件に前記空燃比ディザ制御の実施を許可するディザ制御許可手段と、
を更に備えた請求項１乃至１２の何れかに記載の内燃機関の制御装置。
【請求項１４】
前記気筒別空燃比制御手段は、前記空燃比センサの検出対象となる全気筒について前記気筒別空燃比の平均値を算出してこの平均値と気筒別空燃比との差から気筒間の空燃比ばらつき量を算出し、この空燃比ばらつき量に応じて前記気筒別補正量を算出する請求項１３記載の内燃機関の制御装置。
【請求項１５】
前記気筒別空燃比制御手段は、前記気筒別補正量の全気筒平均値を算出し、この全気筒平均値により各気筒毎の気筒別補正量を減算補正する請求項１３又は１４記載の内燃機関の制御装置。
【請求項１６】
前記気筒別空燃比制御手段による気筒別空燃比制御を実施した状態下において、前記気筒別補正量に応じて気筒毎の空燃比学習値を算出すると共に、該空燃比学習値をバックアップ用メモリに記憶する学習手段を更に備え、
前記ディザ制御許可手段は、前記空燃比学習値の学習が完了していることを条件に前記空燃比ディザ制御の実施を許可する請求項１３乃至１５の何れかに記載の内燃機関の制御装置。
【請求項１７】
前記学習手段は、内燃機関の運転領域を複数領域に区分しておき、該区分した領域毎に前記空燃比学習値を算出すると共に前記バックアップ用メモリに記憶する請求項１６記載の内燃機関の制御装置。
【請求項１８】
前記学習手段は、前記気筒別補正量が所定値以上である場合にのみ前記空燃比学習値を更新する請求項１６又は１７記載の内燃機関の制御装置。
【請求項１９】
前記空燃比センサの検出対象となる全気筒について前記推定した気筒別空燃比の平均値と気筒別空燃比との差が空気過剰率（λ）で０．０１以上となる場合の相当値を、前記所定値とする請求項１８記載の内燃機関の制御装置。
【請求項２０】
前記学習手段は、その都度の気筒別補正量に応じて前記空燃比学習値の１回当たりの更新幅を決定し、該更新幅だけ前記空燃比学習値を更新する請求項１８又は１９の何れかに記載の内燃機関の制御装置。
【請求項２１】
前記空燃比学習値の更新周期を、前記気筒別補正量の算出周期よりも長くした請求項１６乃至２０の何れかに記載の内燃機関の制御装置。
【請求項２２】
各気筒に対する燃料噴射の都度、前記バックアップ用メモリに記憶した空燃比学習値を気筒別空燃比制御に反映させる手段を更に備えた請求項１６乃至２１の何れかに記載の内燃機関の制御装置。
【請求項２３】
前記気筒別空燃比算出手段は、前記空燃比センサのセンサ検出値を、排気集合部における流入ガスの気筒別空燃比の履歴と前記センサ検出値の履歴とにそれぞれ所定の重みを乗じて加算したものとしてモデル化し、該モデルをもとに気筒別空燃比を推定する請求項１３乃至２２の何れかに記載の内燃機関の制御装置。
【請求項２４】
前記モデルを、排気集合部におけるガス流入及び混合の一次遅れ要素と、空燃比センサの応答による一次遅れ要素とを考慮したものとして構築した請求項２３の内燃機関の制御装置。
【請求項２５】
カルマンフィルタ型のオブザーバを用い、該オブザーバにより前記気筒別空燃比の推定を実施する請求項２３又は２４記載の内燃機関の制御装置。
【請求項２６】
前記空燃比センサの状態又は内燃機関の運転状態に基づいて前記気筒別空燃比の算出条件を判定し、該算出条件の成立時に前記気筒別空燃比の算出を実施する請求項１３乃至２５の何れかに記載の内燃機関の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内燃機関の制御装置に関するものである。
【背景技術】
【０００２】
従来より、内燃機関の排気管には排ガス浄化のための触媒が設置されており、内燃機関の始動直後において触媒の早期活性化を図るべく燃料噴射量を燃焼毎に増減させ、空燃比を理論空燃比に対してリッチ側とリーン側とに振幅させるようにした技術が開示されている（例えば特許文献１参照）。つまり、空燃比をリッチ側とリーン側とに振幅させることによりリッチ燃焼とリーン燃焼とが繰り返され、その際発生する酸化反応熱により触媒温度が上昇し触媒の早期活性化が促される。
【０００３】
この場合、空燃比の振幅量は、運転環境の変化や内燃機関に付随する補機類の作動状態変化に伴うドライバビリティの変動等を考慮し、内燃機関の適合時において試行錯誤により決定していた。
【０００４】
しかしながら、既存の装置では、適合により予め決定した振幅量で空燃比を振幅させるため、内燃機関の運転状態によっては空燃比振幅に余裕がある場合であっても、空燃比振幅が一義的に制御される。これは、触媒の早期活性化を図る上で支障となるものであった。
【０００５】
また、触媒活性化を目的とする以外に、空燃比センサの応答性を検出し、該検出した応答性から劣化判定等を実施する場合などにおいても空燃比をリッチ側とリーン側とに振幅させることが行われる。かかる場合、ドライバビリティの悪化等を招くことなく、空燃比を良好に振幅させることが望まれている。
【特許文献１】特開平４−３０８３１１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明は、良好なるドライバビリティを維持しつつ触媒の早期活性化などを図ることができる内燃機関の制御装置を提供することを主たる目的とするものである。
【課題を解決するための手段】
【０００７】
請求項１に記載の発明では、運転者が操作したアクセル開度等に基づいて内燃機関の燃焼によって発生すべき要求トルクが算出される一方、その都度の最適点火時期（ＭＢＴ；Minimum advance for the Best Torque）に対応するＭＢＴ推定トルクと、その都度の遅角限界点火時期に対応する遅角限界推定トルクとが算出される。また、要求トルク、ＭＢＴ推定トルク及び遅角限界推定トルクに基づいて空燃比ディザ制御における空燃比振幅量が算出される。この場合、空燃比ディザ制御に際しては、制御空燃比が、目標ベース空燃比に対して前記算出された空燃比振幅量によりリーン側及びリッチ側に振幅され、その際リーン燃焼とリッチ燃焼とが繰り返されることにより触媒の活性化などが図られる。
【０００８】
本構成によれば、その都度の要求トルク、ＭＢＴ推定トルク及び遅角限界推定トルクに基づいて空燃比ディザ制御における空燃比振幅量が算出されるため、その都度点火時期の進角及び遅角が可能となる範囲内、すなわちトルク操作可能な範囲内を最大限利用して空燃比ディザ制御を実現することが可能となる。従って、例えば触媒活性化に際してはその活性化性能を最大限に発揮することができるようになる。その結果、良好なるドライバビリティを維持しつつ触媒の早期活性化などを図ることができる。この場合、予め定めた振幅量で空燃比ディザ制御を実施する従来技術と比べて、触媒活性化性能が向上する。また、内燃機関の運転状態が変化してもそれに追従できるため、様々な条件を想定して空燃比振幅量を適合する必要が無く、適合工数の低減を図ることができる。
【０００９】
請求項２に記載の発明では、要求トルクとＭＢＴ推定トルクとのトルク比に基づいてリーン側の空燃比振幅量が算出され、要求トルクと遅角限界推定トルクとのトルク比に基づいてリッチ側の空燃比振幅量が算出される。この場合、リーン側及びリッチ側についてそれぞれ適正な空燃比振幅量が算出できる。
【００１０】
請求項３に記載の発明では、要求トルクとＭＢＴ推定トルクとのトルク比に基づいてＭＢＴ時対応のＭＢＴリーン空燃比が算出され、要求トルクと遅角限界推定トルクとのトルク比に基づいて遅角限界時対応の遅角限界リッチ空燃比が算出される。そして、これらＭＢＴリーン空燃比と遅角限界リッチ空燃比とに基づいてリーン側及びリッチ側の空燃比振幅量がそれぞれ算出される。この場合、リーン側及びリッチ側についてそれぞれ適正な空燃比振幅量が算出できる。このとき、ＭＢＴリーン空燃比から遅角限界リッチ空燃比の範囲内となるよう空燃比振幅量が算出される。
【００１１】
前記請求項３の発明においては、請求項４に記載したように、空燃比とトルク効率との関係を予め規定したトルク効率特性を用い、ＭＢＴリーン空燃比と遅角限界リッチ空燃比とが算出されると良い。これにより、ＭＢＴリーン空燃比と遅角限界リッチ空燃比とが簡単に算出できる。
【００１２】
請求項５に記載の発明では、ＭＢＴリーン空燃比が、予め定めたリーン限界値にてガードされると共に、遅角限界リッチ空燃比が、予め定めたリッチ限界値にてガードされる。この場合、リーン限界値又はリッチ限界値を超えて空燃比が振幅されることがないため、燃焼状態の悪化や排気エミッションの悪化等を招くことなく空燃比ディザ制御が実施できる。ドライバビリティの悪化も抑制できる。
【００１３】
請求項６に記載の発明では、ＭＢＴリーン空燃比と遅角限界リッチ空燃比とのうち目標ベース空燃比に近い方に基づいてリーン側及びリッチ側共通の空燃比振幅量が算出される。この場合、空燃比振幅量がリーン側及びリッチ側共通とされるため、目標ベース空燃比に対してリーン側及びリッチ側に等幅で空燃比が振幅される。それ故に、排気エミッションの悪化を抑制することができる。またこのとき、空燃比振幅量は、ＭＢＴリーン空燃比と遅角限界リッチ空燃比とのうち目標ベース空燃比に近い方に基づいて算出されるため、リーン側及びリッチ側の何れかにおいて限界値を超えるような空燃比の振幅制御が実施されることはなく、その制御性も維持できる。なお、請求項５，６の組み合わせにおいては、リーン限界値又はリッチ限界値でのガード後のＭＢＴリーン空燃比、遅角限界リッチ空燃比について目標ベース空燃比に近い方からリーン側及びリッチ側共通の空燃比振幅量が算出される。
【００１４】
空燃比とトルク効率との関係を予め規定したトルク効率特性上、理論空燃比よりもリーン側ではトルク特性がリニアとなるが、リッチ側ではリニアとなる領域が僅かしかない。請求項７に記載の発明では、空燃比ディザ制御における目標ベース空燃比を理論空燃比又はその近傍とする際に、当該目標ベース空燃比がリーン側に予め移行されるため、トルク効率特性上のリニア領域を確実に用いることができ、各トルクの算出等が精度良く実施できる。よって、制御性の向上を図ることができる。
【００１５】
請求項８に記載の発明では、要求空気量の増減補正によって実空気量が増量又は減量され、それに伴い実トルクと要求トルクとに差が生じる。これにより、点火時期が進角側又は遅角側に制御される。この場合、要求空気量を増量補正すれば点火時期が遅角側に補正されるため、要求に反したトルク変動を招くことなく点火時期の調整が可能となる。要求空気量を減量補正する場合も同等である。要するに、点火時期の操作代が確保できるようになる。従って、空燃比ディザ制御に際し、点火時期の調整によりトルクを要求通りに維持することが可能となり、ドライバビリティを良好に保つことができる。
【００１６】
請求項９に記載の発明では、ベース点火時期を最適点火時期（ＭＢＴ）又はその近傍とする際において前記要求空気量が増量補正される。ベース点火時期が最適点火時期又はその近傍とされる場合には、空燃比ディザ制御に際して進角側への点火時期操作が困難になるが、上記のとおり要求空気量が増量補正されることで、ベース点火時期が遅角側に移行し、進角側への点火時期操作が可能となる。従って、前述のとおり空燃比ディザ制御に際し、点火時期の調整によりトルクを要求通りに維持することが可能となり、ドライバビリティを良好に保つことができる。
【００１７】
請求項１０に記載の発明では、その都度の要求トルクに基づいて要求空気量が算出される。また、要求トルクを増減させることにより要求空気量が増減補正される。つまり、増減補正用トルク（リザーブトルク）の加算又は減算により、前述のとおり点火時期の操作代が確保できる。
【００１８】
請求項１１に記載の発明では、空燃比ディザ制御時における実空燃比の挙動が推測され、該推測された実空燃比に基づいて実トルクが補正される。これにより、目標空燃比と実空燃比とのズレが解消でき、高精度なトルク制御が実現できる。例えば、ポートウエットにより目標空燃比と実空燃比とにズレが生じる場合にも、その空燃比ズレを反映したトルク制御が実現可能となる。
【００１９】
前記請求項１１の発明では請求項１２に記載したように、目標ベース空燃比を空燃比振幅量で補正した後の最終目標空燃比をなまし演算することで実空燃比を推測すると良い。なお、なまし演算に用いるなまし係数はその都度の機関運転条件に基づいて設定されると良い。
【００２０】
上述した空燃比ディザの制御手法によれば、ドライバビリティの改善や触媒の早期活性化などが実現できるが、より高精度な制御を可能とするには、多気筒内燃機関において気筒間の空燃比を均一に揃えた状態で空燃比ディザ制御を実施するのが望ましい。そこで、請求項１３を提案する。請求項１３に記載の発明では、空燃比センサのセンサ検出値に基づいて気筒別空燃比が算出される。そして、該算出された気筒別空燃比に基づいて、気筒間の空燃比ばらつき量を反映して気筒毎に気筒別補正量が算出され、該気筒別補正量により気筒毎の空燃比が制御される。また、気筒別空燃比制御が実施されていることを条件に空燃比ディザ制御の実施が許可される。本構成によれば、各気筒の空燃比を均一に揃えることができるため、確実に狙い通りの空燃比に振幅させることができるようになる。従って、ドライバビリティの改善や触媒の早期活性化などがより一層好適に実現できる。
【００２１】
請求項１４に記載の発明では、空燃比センサの検出対象となる全気筒について気筒別空燃比の平均値が算出されてこの平均値と気筒別空燃比との差から気筒間の空燃比ばらつき量が算出され、この空燃比ばらつき量に応じて気筒別補正量が算出される。これにより、気筒別空燃比の全気筒平均値を基準にリッチ／リーン何れの方向に空燃比がばらついているかに応じて気筒別の空燃比補正が実施できる。
【００２２】
請求項１５に記載の発明では、前記気筒別補正量の全気筒平均値が算出され、この全気筒平均値により各気筒毎の気筒別補正量が減算補正される。これにより、通常の空燃比フィードバック制御との干渉が回避できる。つまり、通常の空燃比フィードバック制御では、排気集合部における空燃比検出値が目標値に一致するよう空燃比制御が実施されるのに対し、本請求項１５による気筒別空燃比制御では気筒間の空燃比ばらつきを吸収するよう空燃比制御が実施される。
【００２３】
前記請求項１３等に記載したように、気筒別空燃比の算出値を基に気筒別空燃比制御を実施することで各気筒の空燃比を均一に揃えることができるが、機関運転状態等によっては気筒別空燃比が算出できない、又は算出が困難となる場合もあると考えられる。そこで、請求項１６に記載の発明では、気筒別空燃比制御を実施した状態下において、気筒別補正量に応じて気筒毎の空燃比学習値を算出すると共に、該空燃比学習値をバックアップ用メモリに記憶する。そして、空燃比学習値の学習が完了していることを条件に前記空燃比ディザ制御の実施を許可する。本構成によれば、気筒別空燃比の算出値が得られない場合であっても、気筒別空燃比制御が可能となり、気筒間の空燃比を均一に揃えた状態で空燃比ディザ制御が実施できる。
【００２４】
請求項１７に記載したように、内燃機関の運転領域を複数領域に区分しておき、該区分した領域毎に前記空燃比学習値を算出すると共にバックアップ用メモリに記憶すれば、高精度な気筒別空燃比制御の実現が可能となる。運転領域のパラメータとしては、機関回転数、負荷、水温、吸入空気量、要求噴射量の何れかを用いることが考えられる。
【００２５】
請求項１８に記載の発明では、前記気筒別補正量が所定値以上である場合にのみ前記空燃比学習値が更新される。つまり、空燃比学習値の更新に不感帯を設け、気筒別補正量が所定値未満であれば、空燃比学習値が更新されないようにした。これにより、空燃比学習値の誤学習の防止を図ることができる。
【００２６】
前記請求項１８の発明では請求項１９に記載したように、空燃比センサの検出対象となる全気筒について前記推定した気筒別空燃比の平均値と気筒別空燃比との差が空気過剰率（λ）で０．０１以上となる場合の相当値を、前記所定値とすると良い。すなわち本請求項１９によれば、λ偏差が０．０１以上となる場合にのみ、空燃比学習値の更新が行われる。
【００２７】
請求項２０に記載の発明では、その都度の気筒別補正量に応じて前記空燃比学習値の１回当たりの更新幅が決定され、該更新幅だけ前記空燃比学習値が更新される。具体的には、気筒別補正量が大きいほど、空燃比学習値の更新幅を大きくすると良い。これにより、気筒別補正量が大きい（すなわち気筒間における空燃比ばらつきが大きい）場合であっても、比較的短時間で学習を完了することができる。また、気筒間における空燃比ばらつきが解消され、気筒別補正量が小さくなる場合には、小刻みにすなわち慎重に空燃比学習値を更新することができるため、学習の精度を高めることができる。
【００２８】
請求項２１に記載の発明では、前記空燃比学習値の更新周期を、前記気筒別補正量の算出周期よりも長くしている。これにより、急な空燃比学習値の更新による誤学習を抑制することができる。
【００２９】
請求項２２に記載の発明では、各気筒に対する燃料噴射の都度、前記バックアップ用メモリに記憶した空燃比学習値が気筒別空燃比制御に反映される。これにより、気筒間ばらつきのない高精度な空燃比フィードバック制御が実現できる。
【００３０】
請求項２３に記載の発明では、空燃比センサのセンサ検出値を、排気集合部における流入ガスの気筒別空燃比の履歴と前記センサ検出値の履歴とにそれぞれ所定の重みを乗じて加算したものとしてモデル化し、該モデルをもとに気筒別空燃比を推定することとしている。かかる構成によれば、排気集合部におけるガスの流入及び混合に着目したモデルを用いることになるため、当該排気集合部のガス交換挙動を反映して気筒別空燃比が算出できる。また、センサ検出値をその過去の値から予測するモデル（自己回帰モデル）を用いることから、有限の燃焼履歴（燃焼空燃比）を用いる構成とは異なり、精度向上を図る上で履歴を増やすことを要しない。その結果、簡単なモデルを用いることでモデリングの複雑さを解消し、しかも気筒別空燃比を精度良く算出することができるようになる。
【００３１】
排気集合部におけるガスの流入及び混合といったガス交換では、排気集合部におけるガス流入及び混合の一次遅れ要素と空燃比センサの応答による一次遅れ要素とが存在する。そこで、請求項２４に記載したように、前記モデルを、排気集合部におけるガス流入及び混合の一次遅れ要素と、空燃比センサの応答による一次遅れ要素とを考慮したものとして構築することで、良好なるモデル化が可能となる。
【００３２】
請求項２５に記載の発明では、カルマンフィルタ型のオブザーバを用い、該オブザーバにより前記気筒別空燃比の推定を実施することとしている。カルマンフィルタを用いることにより対ノイズ性能が向上し、気筒別空燃比の推定精度が向上する。
【００３３】
請求項２６に記載の発明では、前記空燃比センサの状態又は内燃機関の運転状態に基づいて前記気筒別空燃比の算出条件を判定し、該算出条件の成立時に前記気筒別空燃比の算出を実施する。具体的には、空燃比センサがフェイルしていないこと、内燃機関が高回転又は低負荷の運転状態にないことなどを条件に気筒別空燃比の算出を実施する。本構成によれば、気筒別空燃比の算出が困難である、又は推定値の信頼性が低い場合に気筒別空燃比の推定が禁じられる。従って、気筒別空燃比の算出精度が向上する。
【発明を実施するための最良の形態】
【００３４】
（第１の実施の形態）
以下、本発明を具体化した第１の実施の形態を図面に従って説明する。本実施の形態は、内燃機関である車載多気筒ガソリンエンジンを対象にエンジン制御システムを構築するものとしており、当該制御システムにおいては電子制御ユニット（以下、ＥＣＵという）を中枢として燃料噴射量の制御や点火時期の制御等を実施することとしている。先ずは、図１を用いてエンジン制御システムの全体概略構成図を説明する。
【００３５】
図１に示すエンジン１０において、吸気管１１の最上流部にはエアクリーナ１２が設けられ、このエアクリーナ１２の下流側には吸入空気量を検出するためのエアフローメータ１３が設けられている。エアフローメータ１３の下流側には、ＤＣモータ等のスロットルアクチュエータ１５によって開度調節されるスロットルバルブ１４が設けられている。スロットルバルブ１４の開度（スロットル開度）は、スロットルアクチュエータ１５に内蔵されたスロットル開度センサにより検出されるようになっている。スロットルバルブ１４の下流側にはサージタンク１６が設けられ、このサージタンク１６には吸気管圧力を検出するための吸気管圧力センサ１７が設けられている。また、サージタンク１６には、エンジン１０の各気筒に空気を導入する吸気マニホールド１８が接続されており、吸気マニホールド１８において各気筒の吸気ポート近傍には燃料を噴射供給する電磁駆動式の燃料噴射弁１９が取り付けられている。
【００３６】
エンジン１０の吸気ポート及び排気ポートにはそれぞれ吸気バルブ２１及び排気バルブ２２が設けられており、吸気バルブ２１の開動作により空気と燃料との混合気が燃焼室２３内に導入され、排気バルブ２２の開動作により燃焼後の排ガスが排気管２４に排出される。エンジン１０のシリンダヘッドには各気筒毎に点火プラグ２７が取り付けられており、点火プラグ２７には、点火コイル等よりなる図示しない点火装置（イグナイタ）を通じて、所望とする点火時期において高電圧が印加される。この高電圧の印加により、各点火プラグ２７の対向電極間に火花放電が発生し、燃焼室２３内に導入した混合気が着火され燃焼に供される。
【００３７】
排気管２４には、排出ガス中のＣＯ，ＨＣ，ＮＯｘ等を浄化するための三元触媒等の触媒３１が設けられ、この触媒３１の上流側には排ガスを検出対象として混合気の空燃比を検出するための空燃比センサ３２（Ｏ2センサ、リニアＡ／Ｆセンサ等）が設けられている。また、エンジン１０のシリンダブロックには、冷却水温を検出する冷却水温センサ３３や、エンジン１０の所定クランク角毎に（例えば３０°ＣＡ周期で）矩形状のクランク角信号を出力するクランク角度センサ３４が取り付けられている。その他に、アクセルペダルの踏み込み量（アクセル開度）を検出するアクセルセンサ３５が設けられている。
【００３８】
上述した各種センサの出力は、エンジン制御を司るＥＣＵ４０に入力される。ＥＣＵ４０は、ＣＰＵ、ＲＯＭ、ＲＡＭ等よりなる周知のマイクロコンピュータを主体として構成され、ＲＯＭに記憶された各種の制御プログラムを実行することで、エンジン運転状態に応じて燃料噴射量制御、点火時期制御、空気量制御等を実施する。特にエンジン始動直後においては、触媒３１の早期活性化を図るべく、目標空燃比をリーン側及びリッチ側に振幅させる空燃比ディザ制御を実施することとしている。
【００３９】
図２は、ＥＣＵ４０により実現される各種演算を機能毎に示した機能ブロック図であり、各機能ブロックを順に説明する。なお以下の説明では、空燃比をλ（空気過剰率）で記載する。
【００４０】
図２において、要求図示トルク算出手段Ｍ１は、アクセル操作等により運転者が要求する要求図示トルクを算出する。詳しくは、要求図示トルク算出手段Ｍ１は、アクセルセンサ３５の出力（アクセル開度）、エンジン回転速度Ｎｅ等に基づいてマップ又は数式等によって運転者の要求する要求軸トルクのベース値を算出すると共に、例えばＩＳＣ補正トルク等を加算して最終的な要求軸トルクを算出する。そして、この要求軸トルクに損失トルクを加算して要求図示トルクを算出する。ここで、損失トルクには、機械摩擦損失とポンピング損失による内部損失トルクが含まれる。
【００４１】
点火時期効率算出手段Ｍ２は、ＭＢＴ（最適点火時期）に対するベース点火時期の点火時期効率を算出する。点火時期効率は、点火時期がトルクに及ぼす影響を表したトルク効率に相当する。このとき、図５に示す点火時期効率特性を用いて点火時期効率を算出する。図５によれば、ＭＢＴ＝ベース点火時期（すなわち遅角量＝０）となる場合に点火時期効率＝１．０とされ、ＭＢＴに対してベース点火時期が遅角されるほど、点火時期効率として小さい値が算出される。なお、ベース点火時期は、その都度のエンジン運転条件（エンジン回転数Ｎｅ、負荷等）に基づいて適宜算出される。
【００４２】
目標ベースλ算出手段Ｍ３は、その都度のエンジン運転条件に基づいて目標ベースλ（目標ベース空燃比）を算出する。詳しくは図３に示すように、目標ベースλマップを用い（数式でも可）、その都度のエンジン回転数Ｎｅや負荷に基づいて目標ベースλを算出する。但しこのとき、必要に応じて目標ベースλに対してリーン化補正を実施し、リーン化補正を実施する場合には補正後のものを最終的に目標ベースλとする。例えばエンジン始動直後において空燃比ディザ制御の開始時には、目標ベースλリーン化フラグを１とし、このフラグ操作に伴いリーン化補正値を目標ベースλに加算する。リーン化補正値は、例えばリーン化補正値マップを用い（数式でも可）、その都度のエンジン回転数Ｎｅ、負荷、エンジン水温に基づいて算出される。なお、目標ベースλリーン化フラグが０であれば、リーン化補正値＝０となりリーン化補正は実施されない。これにより、例えば目標ベースλ（マップ値）が理論空燃比（λ＝１．０）又はその近傍の値とされる場合において該目標ベースλがリーン側に補正される。
【００４３】
λ効率算出手段Ｍ４は、その都度の目標ベースλに応じてλ効率を算出する。λ効率は、λがトルクに及ぼす影響を表したトルク効率に相当する。このとき、図６に示すλ効率特性を用いてλ効率を算出する。図６によれば、λ＝１．０となる場合にλ効率＝１．０とされ、λ＝１．０に対してリッチ側になるとλ効率は一旦上昇して下降し、リーン側になるとλ効率はほぼリニアな特性にて下降する。
【００４４】
トルク増量補正手段Ｍ５は、前記要求図示トルク算出手段Ｍ１により算出した要求図示トルクにリザーブトルクを加算する。このトルク増量補正手段Ｍ５により、実際に運転者が要求するよりも大きな要求図示トルクが設定される。効率補正手段Ｍ６は、リザーブトルク加算後の要求図示トルクに対して点火時期効率やλ効率による補正を実施する。この効率補正により、その都度の点火時期やλに応じた適正な要求図示トルクが算出できるようになる。
【００４５】
要求空気量算出手段Ｍ７は、前記効率補正手段Ｍ６による効率補正後の要求図示トルクとエンジン回転数Ｎｅとをパラメータとして要求空気量を算出する。要求スロットル開度算出手段Ｍ８は、要求空気量とエンジン回転数Ｎｅと大気圧とをパラメータとして要求スロットル開度を算出する。ここで、イグニッションスイッチＯＦＦ→ＯＮ切替時やスロットル全開時等において吸気管圧力が吸気管圧力センサ１７により計測され、その計測値により大気圧が更新されるようになっている。要求スロットル開度によりスロットルアクチュエータ１５の駆動が制御され、吸入空気量を要求空気量に一致させるようにした空気量制御が実現される。
【００４６】
また、λ補正量算出手段Ｍ９は、エンジン始動直後における空燃比ディザ制御に際し、目標ベースλをリッチ側及びリーン側にそれぞれ振幅させるためのλ補正量（空燃比振幅量）を算出する。但しその詳細は後述する。λ補正量算出手段Ｍ９により算出したλ補正量を目標ベースλに加算することによって最終目標λが算出される。
【００４７】
要求噴射量算出手段Ｍ１０は、前記算出した最終目標λとエアフローメータ１３の出力より算出した実空気量とに基づいて要求噴射量を算出する。この要求噴射量により燃料噴射弁１９の駆動が制御される。
【００４８】
また、推定図示トルク算出手段Ｍ１１は、実空気量とエンジン回転数Ｎｅとに基づいてマップ又は数式等によって推定図示トルク（実トルク）を算出する。このとき、ＭＢＴをベース点火時期とした推定図示トルクが算出される。
【００４９】
λ効率補正手段Ｍ１２は、前記推定図示トルク算出手段Ｍ１１により算出した推定図示トルクを、その都度の最終目標λに基づくλ効率により補正する。ここで、最終目標λに基づくλ効率の算出について詳しく説明すると、なまし定数設定手段Ｍ１３は、その都度の吸気管圧力ＰＭとエンジン回転数Ｎｅとに基づいてマップ又は数式等によってなまし定数Ｋを設定する。目標λなまし手段Ｍ１４は下記のなまし演算式を用い、最終目標λになまし処理を施す。なお、ＩＮは目標λなまし手段Ｍ１４の入力（最終目標λ）、ＯＵＴは目標λなまし手段Ｍ１４の出力である。
ＯＵＴ(i)＝ＩＮ(i)＋Ｋ＊（ＯＵＴ(i-1)−ＩＮ(i)）
上記のなまし演算により、最終目標λに対する実λの挙動が推測できる。
【００５０】
λ効率算出手段Ｍ１５は、上記なまし演算後の最終目標λ（推測実λ）をパラメータとしてλ効率を算出する。そのλ効率算出には、前記同様、図６のλ効率特性を用いる。そして、λ効率補正手段Ｍ１２は、前記算出したλ効率を用い、前記推定図示トルク算出手段Ｍ１１により算出した推定図示トルクを補正する。
【００５１】
トルク比算出手段Ｍ１６は、λ効率補正後の推定図示トルクと前記要求図示トルク算出手段Ｍ１により算出した要求図示トルクとのトルク比を算出する（トルク比＝要求図示トルク／推定図示トルク）。
【００５２】
要求遅角量算出手段Ｍ１７は、前記図５の点火時期効率特性を用い、前記算出したトルク比（＝要求図示トルク／推定図示トルク）に基づいて要求遅角量を算出する。つまり、トルク比はトルク効率と同意であり、要求図示トルク＜推定図示トルクである場合に、トルク低減を図るべく前記トルク比に基づいて要求遅角量を算出する。要求点火時期算出手段Ｍ１８は、ＭＢＴに要求遅角量を加算することにより要求点火時期を算出する。この要求点火時期により図示しない点火装置が駆動され、混合気に対する火花放電が行われる。
【００５３】
なお図２の構成において、要求図示トルク算出手段Ｍ１が「要求トルク算出手段」に、トルク増量補正手段Ｍ５が「空気量補正手段」に、要求空気量算出手段Ｍ７及び要求スロットル開度算出手段Ｍ８が「空気量制御手段」に、推定図示トルク算出手段Ｍ１１が「実トルク推定手段」に、λ効率補正手段Ｍ１２が「実トルク補正手段」に、目標λなまし手段Ｍ１４が「実空燃比推測手段」に、要求遅角量算出手段Ｍ１７及び要求点火時期算出手段Ｍ１８が「点火時期制御手段」に、それぞれ相当する。
【００５４】
次に、λ補正量算出手段Ｍ９の詳細を図４の機能ブロック図に基づいて説明する。
【００５５】
ＭＢＴ時トルク算出手段Ｍ２１は、ＭＢＴ運転時における推定図示トルク（以下、これをＭＢＴ時トルクという）を算出する。具体的には、前記推定図示トルク算出手段Ｍ１１で算出した推定図示トルク（ＭＢＴをベース点火時期とした推定図示トルク）に対してλ効率補正を実施し、該λ効率補正後の推定図示トルクをＭＢＴ時トルクとする。λ効率補正は、その都度の目標ベースλに応じて算出したλ効率（前記図６参照）を推定図示トルクに掛け合わせることで行われる。
【００５６】
また、最遅角時トルク算出手段Ｍ２２は、最遅角運転時における推定図示トルク（以下、これを最遅角時トルクという）を算出する。具体的には、前記ＭＢＴ時トルク算出手段Ｍ２１により算出したＭＢＴ時トルクに対して最遅角時の点火時期効率補正を実施し、該点火時期効率補正後の推定図示トルクを最遅角時トルクとする。最遅角時の点火時期効率補正は、ＭＢＴに対して最遅角させた時の点火時期効率（前記図５参照）をＭＢＴ時トルクに掛け合わせることで行われる。
【００５７】
ＭＢＴ時トルク比算出手段Ｍ２３は、ＭＢＴ時トルクと要求図示トルクとのトルク比（以下、これをＭＢＴ時トルク比という）を算出する（ＭＢＴ時トルク比＝要求図示トルク／ＭＢＴ時トルク）。また、最遅角時トルク比算出手段Ｍ２４は、最遅角時トルクと要求図示トルクとのトルク比（以下、これを最遅角時トルク比という）を算出する（最遅角時トルク比＝要求図示トルク／最遅角時トルク）。
【００５８】
ＭＢＴ時リーンλ算出手段Ｍ２５は、前記図６のλ効率特性を用い、前記算出したＭＢＴ時トルク比（＝要求図示トルク／ＭＢＴ時トルク）に基づいてＭＢＴ時リーンλを算出する。つまり、図６において、ＭＢＴ時トルク比をλ効率とし、そのＭＢＴ時トルク比に対応するλ値をＭＢＴ時リーンλとする。
【００５９】
最遅角時リッチλ算出手段Ｍ２６は、前記図６のλ効率特性を用い、前記算出した最遅角時トルク比（＝要求図示トルク／最遅角時トルク）に基づいて最遅角時リッチλを算出する。つまり、図６において、最遅角時トルク比をλ効率とし、その最遅角時トルク比に対応するλ値を最遅角時リッチλとする。
【００６０】
λ振幅値算出手段Ｍ２７は、前記算出したＭＢＴ時リーンλと最遅角時リッチλとからλ振幅値を算出する。詳しくは、ＭＢＴ時リーンλと目標ベースλとの差（ＭＢＴ時リーンλ−目標ベースλ）を算出すると共に、リーン限界値と目標ベースλとの差（リーン限界値−目標ベースλ）を算出し、その両者のうち小さい方を選択してそれをリーン側振幅値とする。また、最遅角時リッチλと目標ベースλとの差（目標ベースλ−最遅角時リッチλ）を算出すると共に、リッチ限界値と目標ベースλとの差（目標ベースλ−リッチ限界値）を算出し、その両者のうち小さい方を選択してそれをリッチ側振幅値とする。そして更に、リーン側振幅値とリッチ側振幅値とを比較し、そのうち小さい方を選択してそれをλ振幅値とする。なお、リーン限界値、リッチ限界値は、エンジン１０の燃焼状態等に適合させて予め規定されるようになっている。
【００６１】
λ振幅値の算出の過程を図７を用いてより具体的に説明する。一例として、ＭＢＴ時リーンλ、最遅角時リッチλ、リーン限界値及びリッチ限界値が目標ベースλに対して図示のような関係にある場合を想定する。かかる場合、ＭＢＴ時リーンλと目標ベースλとの差Δλ１（＝ＭＢＴ時リーンλ−目標ベースλ）、リーン限界値と目標ベースλとの差Δλ２（＝リーン限界値−目標ベースλ）は、Δλ１＞Δλ２の関係となる。故に、Δλ２がリーン側振幅値とされる。また、最遅角時リッチλと目標ベースλとの差Δλ３（＝目標ベースλ−最遅角時リッチλ）、リッチ限界値と目標ベースλとの差Δλ４（＝目標ベースλ−リッチ限界値）は、Δλ３＞Δλ４の関係となる。故に、Δλ４がリッチ側振幅値とされる。そして更に、リーン側振幅値（Δλ２）＜リッチ側振幅値（Δλ４）であるため、リーン側振幅値（Δλ２）がλ振幅値とされる。
【００６２】
図４の説明に戻り、振幅操作手段Ｍ２８は、前記算出したλ振幅値に基づいて、目標ベースλに対して加算されることになるλ補正量を算出する。詳しくは、前記算出したλ振幅値と該λ振幅値を符号反転させた値とを周期信号に合わせて択一的に切り替える。このとき、周期信号は１燃焼毎に０，１で切り替えられる２値信号である。こうして周期信号に合わせて切り替えられたλ振幅値（同λ振幅値の符号＋値、符号−値）は、ディザ制御実行条件フラグが１であることを条件に、λ補正量として出力される。
【００６３】
なお図４の構成において、ＭＢＴ時トルク算出手段Ｍ２１が「ＭＢＴ推定トルク算出手段」に、最遅角時トルク算出手段Ｍ２２が「遅角限界推定トルク算出手段」に、λ振幅値算出手段Ｍ２７が「空燃比振幅量算出手段」に、それぞれ相当する。また、本実施の形態でいうＭＢＴ時トルクが「ＭＢＴ推定トルク」に、最遅角時トルクが「遅角限界推定トルク」に、ＭＢＴ時リーンλが「ＭＢＴリーン空燃比」に、最遅角時リッチλが「遅角限界リッチ空燃比」に、それぞれ相当する。
【００６４】
図８は、空燃比ディザ制御の挙動を示すタイムチャートである。この空燃比ディザ制御は、エンジン１０の始動後において所定期間（例えば１５〜２０秒程度）実施される。図８において、（ａ）はリザーブトルクの推移を、（ｂ）は要求図示トルクに対するＭＢＴ時トルク及び最遅角時トルクの推移を、（ｃ）は最終目標λの推移を、（ｄ）は要求図示トルクに対するλ効率補正後の推定図示トルクの推移を、（ｅ）は要求点火時期の推移を、それぞれ示す。なお（ｃ）において、点線はなまし演算後の最終目標λの推移を示す。
【００６５】
さて、エンジン始動直後のｔ１において、先ずリザーブトルクがセットされ、このリザーブトルクが要求図示トルクに加算される。これにより、要求空気量が増加されると共に要求スロットル開度が増加され（図示は省略）、それに伴い実空気量が増えるために（ｄ）に示す推定図示トルクが要求図示トルクよりも増量される。このとき、（ｂ）に示すＭＢＴ時トルク、最遅角時トルクも増量される。（ｄ）の推定図示トルクの増量に伴い推定図示トルクと要求図示トルクとの差分が増えるため、そのトルク差を無くすべくトルク比（＝要求図示トルク／推定図示トルク）に基づいて点火時期がＭＢＴに対して遅角される。
【００６６】
その後、ｔ２では、空燃比ディザ制御が開始される。このとき、要求図示トルク、ＭＢＴ時トルク及び最遅角時トルクに基づいてλ補正量が算出され、そのλ補正量により目標ベースλが補正される。よって、（ｃ）に示す如く燃焼毎に最終目標λがリーン側及びリッチ側に振幅する。このとき、最終目標λのなまし演算により、実λは点線の如く推移すると推測され、この実λの挙動に基づいて（ｄ）のように推定図示トルクが補正される。そして、（ｄ）に示す推定図示トルクの推移に合わせて、（ｅ）に示す如く要求点火時期がＭＢＴと遅角限界との間で制御される。
【００６７】
図９は、前記図２の機能ブロックを実現するためのＥＣＵ４０による演算処理手順を示すフローチャートである。なお各ステップにおける処理内容については図２〜図４で説明済みであるため、詳細については省略する。
【００６８】
図９において、先ずステップＳ１０１では、アクセル開度やエンジン回転速度Ｎｅ等に基づいて運転者の要求する要求図示トルクを算出する。ステップＳ１０２では、図５に示す点火時期効率特性を用い、ＭＢＴに対するベース点火時期の点火時期効率を算出する。ステップＳ１０３では、その都度のエンジン回転数Ｎｅや負荷等に基づいて目標ベースλを算出する。ステップＳ１０４では、図６に示すλ効率特性を用い、その都度の目標ベースλに応じてλ効率を算出する。
【００６９】
ステップＳ１０５では、要求図示トルクにリザーブトルクを加算する。ステップＳ１０６では、リザーブトルク加算後の要求図示トルクに対して点火時期効率やλ効率による補正を実施する。ステップＳ１０７では、前記効率補正後の要求図示トルクとエンジン回転数Ｎｅとに基づいて要求空気量を算出すると共に、該要求空気量とエンジン回転数Ｎｅと大気圧とに基づいて要求スロットル開度を算出する。
【００７０】
また、ステップＳ１０８〜Ｓ１１３は、空燃比ディザ制御時のλ補正量を算出するための処理に相当する。すなわち、ステップＳ１０８では、ＭＢＴ運転時における推定図示トルク（ＭＢＴ時トルク）を算出し、ステップＳ１０９では、最遅角運転時における推定図示トルク（最遅角時トルク）を算出する。その後、ステップＳ１１０では、ＭＢＴ時トルクと要求図示トルクとからＭＢＴ時トルク比を算出すると共に、最遅角時トルクと要求図示トルクとから最遅角時トルク比を算出する。ステップＳ１１１では、ＭＢＴ時トルク比に基づいてＭＢＴ時リーンλ（目標リーンλ）を算出すると共に、最遅角時トルク比に基づいて最遅角時リッチλ（目標リッチλ）を算出する。
【００７１】
また、ステップＳ１１２では、ＭＢＴ時リーンλをリーン限界値でガードすると共に、最遅角時リッチλをリッチ限界値でガードする。これにより、リーン側振幅値とリッチ側振幅値とが算出される。ステップＳ１１３では、リーン側振幅値とリッチ側振幅値とを比較し、そのうち小さい方を選択してそれをλ振幅値とする。
【００７２】
その後、ステップＳ１１４では、空燃比ディザ制御の実行条件が成立しているか否かを判別する。例えば、エンジン始動時においてエンジン水温が所定温度（例えば４０℃以下）である場合や触媒３１が未活性状態にあると推測される場合に、実行条件成立とされる。実行条件成立時において、ステップＳ１１５では、目標ベースλをλ振幅値（λ補正量）で補正することにより最終目標λを算出する。また、ステップＳ１１６では、その都度のエンジン運転状態に基づいて設定したなまし定数Ｋを用い、最終目標λになまし処理を施す。
【００７３】
ステップＳ１１７では、実空気量とエンジン回転数Ｎｅとに基づいて推定図示トルク（実トルク）を算出し、続くステップＳ１１８では、推定図示トルクをその都度の最終目標λに基づくλ効率により補正する。ステップＳ１１９では、λ効率補正後の推定図示トルクと要求図示トルクとのトルク比を算出する。ステップＳ１２０では、図５の点火時期効率特性を用い、前記ステップＳ１１９で算出したトルク比に基づいて要求遅角量を算出する。
【００７４】
ステップＳ１２１では、最終目標λと実空気量とに基づいて要求噴射量を算出する。ステップＳ１２２では、要求遅角量とＭＢＴとの加算により要求点火時期を算出する。
【００７５】
以上詳述した本実施の形態によれば、以下の優れた効果が得られる。
【００７６】
エンジン始動時における空燃比ディザ制御に際し、その都度の要求図示トルク、ＭＢＴ時トルク及び最遅角時トルクに基づいてλ補正量（空燃比振幅量）を算出したため、その都度点火時期の進角及び遅角が可能となる範囲内、すなわちトルク操作可能な範囲内を最大限利用して空燃比ディザ制御を実現することが可能となる。従って、触媒活性化性能を最大限に発揮することができるようになる。その結果、良好なるドライバビリティを維持しつつ触媒３１の早期活性化を図ることができる。この場合、予め定めた振幅量で空燃比ディザ制御を実施する従来技術と比べて、触媒活性化性能が向上する。また、エンジン運転状態が変化してもそれに追従できるため、様々な条件を想定して空燃比振幅量を適合する必要が無く、適合工数の低減を図ることができる。
【００７７】
要求図示トルクとＭＢＴ時トルクとの比に基づいて算出したＭＢＴ時リーンλをリーン限界値でガードすることによりリーン側振幅値を算出する一方、要求図示トルクと最遅角時トルクとのトルク比に基づいて算出した最遅角時リッチλをリッチ限界値でガードすることによりリッチ側振幅値を算出したため、リーン限界値又はリッチ限界値を超えてλ振幅が行われることはない。従って、燃焼状態の悪化や排気エミッションの悪化等を招くことなく空燃比ディザ制御が実施できる。ドライバビリティの悪化も抑制できる。
【００７８】
リーン側振幅値とリッチ側振幅値とのうち目標ベースλに近い方に基づいてリーン側及びリッチ側共通のλ振幅値を算出したため、目標ベースλに対してリーン側及びリッチ側に等幅でλ振幅が行われる。それ故に、排気エミッションの悪化を抑制することができる。
【００７９】
リザーブトルクを加算して要求図示トルクを増加させることにより要求空気量を強制的に増量し結果的に点火時期を遅角させる構成としたため、要求に反したトルク変動を招くことなく点火時期の調整が可能となる。つまり、点火時期の操作代が確保できるようになる。従って、空燃比ディザ制御に際し、点火時期の調整によりトルクを要求通りに維持することが可能となり、ドライバビリティを良好に保つことができる。
【００８０】
その都度のエンジン運転状態に応じて最終目標λをなますことにより空燃比ディザ制御時における実λの挙動を推測し、該推測した実λに基づいて推定図示トルクを補正する構成としたため、最終目標λと実λとのズレが解消でき、高精度なトルク制御が実現できる。例えば、ポートウエットにより最終目標λと実λとにズレが生じる場合にも、エンジン運転状態からそのポートウエット分のλズレを予測することで、λズレを反映したトルク制御が実現可能となる。
【００８１】
（第２の実施の形態）
本実施の形態では、空燃比ディザ制御の制御性を向上させるべく、気筒別空燃比が均一化されていること、すなわち気筒間の空燃比ばらつきが解消されていることを条件に空燃比ディザ制御の実施を許可する構成としている。以下には、前記第１の実施の形態との相違点を中心に説明を進めることとし、各部材について共通となるものには同一の番号を付し、説明を簡略化する。
【００８２】
図１０は、本実施の形態における主要な構成を示す概略図である。図１０において、エンジン１０は４気筒エンジンとしている。排気管２４は各気筒に各々接続されるマニホールド部２４ａとそれら各マニホールド部２４ａを集合させた排気集合部２４ｂとよりなり、排気集合部２４ｂに空燃比センサ（Ａ／Ｆセンサ）３２が設けられている。
【００８３】
また、図１０には、空燃比Ｆ／Ｂ（フィードバック）制御に関する構成を機能ブロック毎に図示しており、空燃比Ｆ／Ｂ制御の概要を説明すれば、空燃比偏差算出部Ｍ３１は、空燃比センサ３２の検出信号から算出した検出空燃比と別途設定した目標空燃比との偏差を算出する。空燃比Ｆ／Ｂ制御部Ｍ３２は、その偏差に基づいて空燃比補正係数を算出する。噴射量算出部Ｍ３３は、エンジン回転数やエンジン負荷（例えば吸気管負圧）等に基づいて算出したベース噴射量や前記空燃比補正係数などから最終噴射量を算出する。基本的には、噴射量算出部Ｍ３３の最終噴射量により燃料噴射弁１１が制御される。この制御の流れは従来の空燃比Ｆ／Ｂ制御と同様である。
【００８４】
上述した空燃比Ｆ／Ｂ制御は、排気管２４の排気集合部２４ｂで検出した空燃比情報に基づいて各気筒の燃料噴射量（空燃比）を制御するものであるが、現実には気筒毎に空燃比がばらつくため、本実施の形態では、空燃比センサ３２の検出値から気筒別空燃比を求め、その気筒別空燃比に基づいて気筒別空燃比制御を実施することとする。その詳細を以下に説明する。
【００８５】
空燃比偏差算出部Ｍ３１で算出した空燃比偏差は気筒別空燃比推定部Ｍ３４に入力され、気筒別空燃比推定部Ｍ３４が気筒別空燃比を推定する。このとき、気筒別空燃比推定部Ｍ３４は、排気集合部２４ｂにおけるガス交換に着目して、空燃比センサ３２の検出値を、排気集合部２４ｂにおける流入ガスの気筒別空燃比の履歴と空燃比センサ３２の検出値の履歴とにそれぞれ所定の重みを乗じて加算したものとしてモデル化し、該モデルをもとに気筒別空燃比を推定することとしている。また、オブザーバとしてはカルマンフィルタを用いている。
【００８６】
より具体的には、排気集合部２４ｂにおけるガス交換のモデルを次の（１）式にて近似する。（１）式中、ｙｓは空燃比センサ３２の検出値、ｕは排気集合部２４ｂに流入するガスの空燃比、ｋ１〜ｋ４は定数である。
【００８７】
【数１】
2005171979.tif 000003
排気系では、排気集合部２４ｂにおけるガス流入及び混合の一次遅れ要素と、空燃比センサ３２の応答による一次遅れ要素とが存在する。そこで、上記（１）式では、これらの遅れ要素を考慮して過去２回分の履歴を参照することとしている。
【００８８】
上記（１）式を状態空間モデルに変換すると、次の（２）式が得られる。（２）式中、Ａ，Ｂ，Ｃ，Ｄはモデルのパラメータ、Ｙは空燃比センサ３２の検出値、Ｘは状態変数としての気筒別空燃比、Ｗはノイズである。
【００８９】
【数２】
2005171979.tif 000004
更に、上記（２）式によりカルマンフィルタを設計すると、次の（３）式が得られる。（３）式中、Ｘ＾（エックスハット）は推定値としての気筒別空燃比、Ｋはカルマンゲインである。Ｘ＾（ｋ＋１｜ｋ）の表記は時間ｋの推定値により時間ｋ＋１の推定値を求めることを表す。
【００９０】
【数３】
2005171979.tif 000005
以上のように、気筒別空燃比推定部Ｍ３４をカルマンフィルタ型オブザーバにて構成することにより、燃焼サイクルの進行に伴い気筒別空燃比が順次推定できる。なお、図１０の構成では、空燃比偏差を気筒別空燃比推定部Ｍ３４の入力としており、上記（３）式において出力Ｙが空燃比偏差に置き換えられる。
【００９１】
また、基準空燃比算出部Ｍ３５は、前記気筒別空燃比推定部Ｍ３４で推定した気筒別空燃比に基づいて基準空燃比を算出する。ここでは、気筒別空燃比の全気筒平均（本実施の形態では第１〜第４気筒の平均値）を基準空燃比としており、新たに気筒別空燃比が算出される度に基準空燃比が更新される。気筒別空燃比偏差算出部Ｍ３６は、気筒別空燃比と基準空燃比との偏差（気筒別空燃比偏差）を算出する。
【００９２】
気筒別空燃比制御部Ｍ３７は、気筒別空燃比偏差算出部Ｍ３６で算出した偏差に基づいて気筒別補正量を算出し、その気筒別補正量により各気筒の最終噴射量を補正する。気筒別空燃比制御部Ｍ３７のより詳しい構成を図１１で説明する。
【００９３】
図１１において、気筒毎に算出された気筒別空燃比偏差（図１０の気筒別空燃比偏差算出部Ｍ３６の出力）は、第１〜第４の各気筒毎の補正量算出部Ｍ４１，Ｍ４２，Ｍ４３，Ｍ４４にそれぞれ入力される。各補正量算出部Ｍ４１〜Ｍ４４は、気筒間の空燃比ばらつきが解消されるように、すなわち該当する気筒の気筒別空燃比が基準空燃比に一致するようにして気筒別空燃比偏差に基づいて気筒別補正量を算出する。このとき、各気筒の補正量算出部Ｍ４１〜Ｍ４４で算出した気筒別補正量は全て補正量平均値算出部Ｍ４５に取り込まれ、第１気筒〜第４気筒の各気筒別補正量の平均値が算出される。そして、その補正量平均値により第１気筒〜第４気筒の各気筒別補正量が減量補正される。結果この補正後の気筒別補正量により各気筒の最終噴射量が補正される。
【００９４】
上述した空燃比偏差算出部Ｍ３１、空燃比Ｆ／Ｂ制御部Ｍ３２、噴射量算出部Ｍ３３、気筒別空燃比推定部Ｍ３４、基準空燃比算出部Ｍ３５、気筒別空燃比偏差算出部Ｍ３６及び気筒別空燃比制御部Ｍ３７は、ＥＣＵ４０内のマイクロコンピュータにより実現されれば良く、次に、ＥＣＵ４０による気筒別空燃比制御の一連の流れをフローチャートに基づいて説明する。図１２は、所定のクランク角度毎（本実施の形態では３０°ＣＡ毎）に実行されるクランク角同期ルーチンを示すフローチャートである。
【００９５】
図１２において、先ずステップＳ２１０では、気筒別空燃比制御を許可又は禁止するための実行条件判定処理を実施する。実行条件判定処理を図１３に基づいて詳しく説明すれば、ステップＳ２１１では、空燃比センサ３２が使用可能な状態であるか否かを判別する。具体的には、空燃比センサ３２が活性化していること、フェイルしていないこと等を判別する。そして、ステップＳ２１１がＹＥＳであれば、ステップＳ２１２に進む。なお、エンジン水温が所定温度（例えばマイナス１０℃）以上であることを条件（ステップＳ２１２に進む条件）に加えることも可能である。
【００９６】
ステップＳ２１２では、回転速度とエンジン負荷（例えば吸気管負圧）とをパラメータとする運転領域マップを参照し、今現在のエンジン運転状態が所定の実行領域にあるかどうかを判定する。このとき、高回転域又は低負荷域では気筒別空燃比の推定が困難である、又は推定値の信頼性が低いと考えられるため、かかる運転領域で気筒別空燃比制御が禁止されるようにして、図示の如く実行領域が設定されている。
【００９７】
今現在のエンジン運転状態が実行領域にあれば、ステップＳ２１３を肯定判別し、ステップＳ２１４で実行フラグをＯＮする。実行領域になければ、ステップＳ２１３を否定判別し、ステップＳ２１５で実行フラグをＯＦＦする。その後本処理を終了する。
【００９８】
図１２の説明に戻り、ステップＳ２２０では、実行フラグがＯＮであるか否かを判別し、実行フラグがＯＮであることを条件にステップＳ２３０に進む。ステップＳ２３０では、気筒別空燃比の制御タイミングを決定する。このとき、エンジン負荷（例えば吸気管負圧）をパラメータとするマップを参照し、その時のエンジン負荷に応じて基準クランク角度を決定する。当該マップでは、低負荷域で基準クランク角度が遅角側にシフトされるようになっている。つまり、低負荷域では排気流速が遅くなることが考えられ、故にその遅延分に合わせて基準クランク角度が設定され、その基準クランク角度に基づいて制御タイミングが決定されるようになっている。
【００９９】
ここで、基準クランク角度は、気筒別空燃比の推定に用いる空燃比センサ値を取得するための基準角度位置であり、これはエンジン負荷に応じて変動する。図１７で説明すれば、空燃比センサ値は気筒間の個体差等により変動し、クランク角に同期した所定パターンとなる。この変動パターンはエンジン負荷が小さい場合に遅角側にシフトする。例えば図１７のａ，ｂ，ｃ，ｄの各タイミングで空燃比センサ値を取得したい場合に、負荷変動が生じると空燃比センサ値が本来欲しい値からずれるが、上記の通り基準クランク角度が可変設定されることにより最適なタイミングで空燃比センサ値が取得できる。但し、空燃比センサ値を取り込むこと（例えばＡ／Ｄ変換すること）自体は、必ずしも上記基準クランク角度のタイミングに限定されず、この基準クランク角度よりも短い間隔で実施される構成であっても良い。
【０１００】
その後、気筒別空燃比の制御タイミング（ステップＳ２４０がＹＥＳ）であることを条件にステップＳ２５０に進み、気筒別空燃比制御を実行する。気筒別空燃比制御を図１４に基づいて説明する。
【０１０１】
図１４において、ステップＳ２５１では、空燃比センサ３２の検出信号から算出された空燃比を読み込み、続くステップＳ２５２では、前記読み込んだ空燃比に基づいて気筒別空燃比を推定する。気筒別空燃比の推定手法については既述の通りである。
【０１０２】
その後、ステップＳ２５３では、前記推定した気筒別空燃比の全気筒分（本実施の形態では過去４気筒分）の平均値を算出し、その平均値を基準空燃比とする。ステップＳ２５４では、気筒別空燃比と基準空燃比との差に応じて気筒毎に気筒別補正量を算出する。なおこのとき、前記図１１で説明したように、全気筒の気筒別補正量が各々算出されると共に全気筒平均値が算出され、気筒別補正量から全気筒平均値を減算した値が、最終的に気筒別補正量とされるようになっている。
【０１０３】
その後、ステップＳ２６０では、気筒別学習値の更新処理を実施する。ここで、気筒別学習値は、気筒間の空燃比ばらつきを学習することで得られる空燃比学習値であり、この気筒別学習値が、イグニッションＯＦＦ後にも記憶内容を保持するスタンバイＲＡＭ等のバックアップ用メモリに格納されるようになっている。なお、バックアップ用メモリとしてＥＥＰＲＯＭ等の不揮発性メモリを用いることも可能である。但し、ステップＳ２６０の詳細については後述する。続くステップＳ２７０では、気筒別学習値を反映させるなどして気筒毎に最終な燃料噴射量を算出する。ステップＳ２７０の詳細についても後述する。
【０１０４】
図１５は、前記ステップＳ２６０における気筒別学習値の更新処理を示すフローチャートである。図１５において、ステップＳ２６１では、学習の実行条件が成立しているか否かを判別する。具体的には、
（イ）今現在、気筒別空燃比制御が実行されていること、
（ロ）エンジン水温が所定温度以上（例えばマイナス１０℃以上）であること、
（ハ）空燃比変動量が所定値以下であり、空燃比安定条件が成立していること、
を学習実行条件とし、上記（イ）〜（ハ）が何れも満たされる場合に、学習実行条件が成立したとされる。学習実行条件が成立した場合には学習値更新が許可され、学習実行条件が成立しない場合に学習値更新が禁止される。
【０１０５】
上記（イ）の条件が満たされるには、気筒別空燃比制御の実行条件が成立していることが前提であり、前記図１３の実行条件判定処理にて説明したように、空燃比センサ３２が活性化していること、フェイル（故障）していないこと等が上記（イ）の条件に含まれる。
【０１０６】
上記（ハ）の条件を図１８により説明する。つまり、検出空燃比（Ａ／Ｆ）の今回値と前回値との差ΔＡ／Ｆ１（絶対値）が所定値ＴＨ１未満であり、且つ検出空燃比の今回値と７２０°ＣＡ前値との差ΔＡ／Ｆ２（絶対値）が所定値ＴＨ２未満である場合に、上記（ハ）の空燃比安定条件が成立した判定することとしている。例えば、検出空燃比が図１８の（ａ）のように変化する時、ΔＡ／Ｆ１，ΔＡ／Ｆ２は（ｂ），（ｃ）となり、その結果、ｔ１１〜ｔ１２以外の期間で空燃比安定条件が成立した旨判定される。
【０１０７】
上記（イ）〜（ハ）以外にも、高回転時や低負荷時など、気筒別空燃比の推定精度が低下すると考えられる条件を設定し、かかる条件下で学習値更新を禁止するようにしても良い。以上のように学習実行条件を規定することで、気筒別学習値の誤学習の防止が可能となる。
【０１０８】
学習実行条件が成立している場合、ステップＳ２６２に進み、例えばエンジン回転数や負荷をパラメータとして今回学習を実施する学習領域を決定する。その後、ステップＳ２６３では、気筒毎に気筒別補正量のなまし値を算出する。具体的には、次式を用いて補正量なまし値を算出する。但し、Ｋはなまし係数であり、例えばＫ＝０．２５である。
補正量なまし値＝前回のなまし値＋Ｋ×（今回の補正量−前回のなまし値）
その後、ステップＳ２６４では、今回の処理が気筒別学習値の更新タイミングであるか否かを判別する。この更新タイミングは、気筒別学習値の更新周期が少なくとも気筒別補正量の算出周期よりも長くなるよう設定されるものであれば良く、例えば、タイマ等に設定された所定時間が経過した時に更新タイミングである旨判別される。気筒別学習値の更新タイミングであれば、後続のステップＳ２６５に進み、更新タイミングでなければ、そのまま本処理を終了する。
【０１０９】
ステップＳ２６５では、前記算出した気筒毎の補正量なまし値の絶対値が所定値ＴＨＡ以上であるか否かを判別する。本実施の形態では、所定値ＴＨＡは、気筒別空燃比（推定値）の全気筒平均値と気筒別空燃比との差が空気過剰率λで０．０１以上となる場合の相当値としている。
【０１１０】
補正量なまし値（絶対値）≧ＴＨＡであれば、ステップＳ２６６に進み、学習値更新量を算出する。このとき、学習値更新量は、例えば図１９の関係を用い、その時の補正量なまし値に基づいて算出され、基本的に補正量なまし値が大きいほど学習値更新量が大きい値とされる。なお、図１９の関係では、補正量なまし値＜ａでは学習値更新量が０とされ、このａは前記ステップＳ２６５の所定値ＴＨＡに相当する。その後、ステップＳ２６７では、気筒別学習値の更新処理を実施する。すなわち、気筒別学習値の前回値に学習値更新量を加算し、その結果を新たな気筒別学習値とする。
【０１１１】
また、補正量なまし値（絶対値）＜ＴＨＡであれば、ステップＳ２６８に進み、学習完了フラグをＯＮする。
【０１１２】
最後に、ステップＳ２６９では、気筒別学習値、学習完了フラグをスタンバイＲＡＭに記憶する。このとき、気筒別学習値及び学習完了フラグは、複数に区分された運転領域毎に記憶される。その概要を図２０に表す。図２０では、エンジン運転領域を負荷レベル（例えば吸気管圧力ＰＭ）毎に領域０，領域１，領域２，領域３，領域４に区分しており、各領域０〜４毎に気筒別学習値及び学習完了ラグが記憶されることを表している。領域０は学習未完了、領域１〜４は学習完了の状態であり、領域１〜４の気筒別学習値をそれぞれＬＲＮ１，ＬＲＮ２，ＬＲＮ３，ＬＲＮ４としている。また、各領域０〜４の領域中心負荷、すなわち領域を代表する負荷を、それぞれＰＭ０，ＰＭ１，ＰＭ２，ＰＭ３，ＰＭ４としている。領域区分には、負荷以外にも、エンジン回転数、水温、吸入空気量、要求噴射量等を適宜用いることができる。
【０１１３】
また、図１６は、前記図１４のステップＳ２７０における気筒別学習値の反映処理を示すフローチャートである。図１６において、ステップＳ２７１では、その時のエンジン運転状態に基づいて学習反映値を算出する。このとき、学習反映値は、前記図２０のように運転領域毎に記憶保持された気筒別学習値を用い、それら領域間の気筒別学習値の線形補間により求められる。学習反映値の求め方を図２０を用いて説明する。
【０１１４】
一例として、その時の負荷が「ＰＭａ」である場合、領域２，３の気筒別学習値ＬＲＮ２，ＬＲＮ３と、領域２，３の中心負荷であるＰＭ２，ＰＭ３とを用い、次の（４）式により学習反映値ＦＬＲＮを算出する。
【０１１５】
【数４】
2005171979.tif 000006
なお、予め設定された領域外（学習非実行領域）では、領域境界部に相当する気筒別学習値を用いて学習反映値が算出されると良い。例えば、図２０において、領域０〜４が学習実行領域であり、その外側が学習非実行領域であれば、領域０，４の気筒別学習値を用いて学習非実行領域の学習反映値を算出する。これにより、例えば高回転・高負荷領域等の学習非実行領域であっても気筒別学習値の反映が可能となる。
【０１１６】
ステップＳ２７２では、前記算出した学習反映値を最終の燃料噴射量ＴＡＵに反映させる。具体的には、基本噴射量ＴＰ、空燃比補正係数ＦＡＦ、気筒別補正量ＦＫ、学習反映値ＦＬＲＮ、その他の補正係数ＦＡＬＬを用い、燃料噴射量ＴＡＵを算出する（ＴＡＵ＝ＴＰ×ＦＡＦ×ＦＫ×ＦＬＲＮ×ＦＡＬＬ）。なおこのとき、ＦＡＦ補正と学習補正とが干渉しないように、空燃比補正係数ＦＡＦを学習反映値ＦＬＲＮ分だけ減補正すると良い。
【０１１７】
図２１は、気筒別学習値が更新される過程を説明するためのタイムチャートである。図２１では、全４気筒のうち第１気筒の気筒別空燃比だけが明らかに他の気筒と相違しており、図面ではこれを「＃１」、他を「＃２〜＃４」としている。
【０１１８】
図２１において、タイミングｔ２１以降、気筒別補正量が算出され、それに伴い気筒間の空燃比ばらつきに応じた気筒別補正量が図示の如く算出される。そして、タイミングｔ２２では、気筒間の空燃比ばらつきが解消され、気筒別空燃比がほぼ均一化される。
【０１１９】
その後、タイミングｔ２３では、学習実行条件が成立し、それ以降気筒別学習値の算出及び更新処理が実施される。図中、タイミングｔ２３，ｔ２４，ｔ２５，ｔ２６が学習更新タイミングである。学習更新周期は、気筒別補正量の算出周期よりも長いため、急な気筒別学習値の更新による誤学習が抑制される。ｔ２３〜ｔ２６の各タイミングでは、その都度の各気筒の補正量なまし値の大きさに応じた分だけ気筒別学習値が更新される。そして、各気筒の補正量なまし値が所定値ＴＨＡ未満になると、学習完了とされ学習完了フラグがセットされる（図示は省略）。このとき、気筒別学習値が所定時間を隔てて更新されるため、気筒別学習値は気筒間ばらつきに逐次対応できないことも考えられるが、この気筒間ばらつきは現実には空燃比補正係数ＦＡＦ等により解消される。
【０１２０】
以上のように、気筒別空燃比制御が実施され、それにより気筒間の空燃比ばらつきが解消された状態で（すなわち、各気筒の空燃比が均一に揃えられた状態で）、空燃比ディザ制御が実施される。図２２は、空燃比ディザ制御にかかる本実施の形態の演算処理手順を示すフローチャートであり、本処理は前記図９に置き換えて実施される。但し、図２２では、前記図９と重複する処理については図示を省略している。
【０１２１】
図２２において、ステップＳ１１４の空燃比ディザ制御の実行条件判定は前記図９の通り実施され、その実行条件が成立した場合、ステップＳ３０１に進む。ステップＳ３０１では、今現在の運転領域について気筒別学習値による気筒別空燃比制御が実施されているかを判別する。また、ステップＳ３０１がＮＯの場合、ステップＳ３０２では、気筒別空燃比が推定され、気筒別空燃比の推定値に基づいて気筒別空燃比制御が実施されているかを判別する。要するに、ステップＳ３０１，Ｓ３０２は、エンジン始動直後等において、気筒別空燃比制御が実施されることにより気筒間の空燃比ばらつきが解消された状態であるか否かを判別するものである。
【０１２２】
そして、ステップＳ３０１，Ｓ３０２の何れかがＹＥＳであることを条件に、ステップＳ１１５以降の処理を実行する。すなわち、目標λをリーン側及びリッチ側に振幅させることで、空燃比ディザを実施する。本実施の形態では、ステップＳ３０１，Ｓ３０２の処理が「ディザ制御許可手段」に相当する。
【０１２３】
以上第２の実施の形態によれば、気筒間の空燃比を均一に揃えた状態で空燃比ディザ制御が実施されるため、狙い通りに空燃比を振幅させることができ、ドライバビリティの改善や触媒３１の早期活性化がより一層好適に実現できる。
【０１２４】
また、気筒毎の気筒別補正量に応じて気筒別学習値（空燃比学習値）を適宜算出し、スタンバイＲＡＭ等に記憶保持する構成としたため、気筒別空燃比の推定値が得られない場合であっても、気筒別空燃比制御が可能となり、気筒間の空燃比ばらつきが解消できる。例えば、空燃比センサ３２の活性前であっても、気筒間の空燃比の均一化が可能となり、空燃比ディザ制御が早期に開始できる。
【０１２５】
気筒別学習値の１回当たりの更新幅（学習値更新量）がその都度の気筒別補正量に応じて可変設定されるため、気筒別補正量が大きい（すなわち気筒間における空燃比ばらつきが大きい）場合であっても、比較的短時間で学習を完了することができる。また、気筒間における空燃比ばらつきが解消され、気筒別補正量が小さくなる場合には、小刻みにすなわち慎重に気筒別学習値を更新することができるため、学習の精度を高めることができる。
【０１２６】
排気集合部２４ｂにおけるガス流入及び混合に基づき構築したモデルを用いて気筒別空燃比を推定するようにしたため、当該排気集合部２４ｂのガス交換挙動を反映して気筒別空燃比が算出できる。また、当該モデルは、空燃比センサ３２の検出値をその過去の値から予測するモデル（自己回帰モデル）であることから、有限の燃焼履歴（燃焼空燃比）を用いる構成とは異なり、精度向上を図る上で履歴を増やすことを要しない。その結果、簡単なモデルを用いることでモデリングの複雑さを解消し、しかも気筒別空燃比を精度良く算出することができるようになる。その結果、ひいては空燃比制御の制御性が向上する。
【０１２７】
気筒別空燃比の推定にカルマンフィルタ型のオブザーバを用いたため、対ノイズ性能が向上し、気筒別空燃比の推定精度が向上する。
【０１２８】
気筒別空燃比の制御タイミングをエンジン負荷に応じて可変設定する構成としたため、最適なタイミングで空燃比センサ３２の検出値が取得でき、気筒別空燃比の推定精度が向上する。
【０１２９】
なお、本発明は上記実施の形態の記載内容に限定されず、例えば次のように実施しても良い。
【０１３０】
上記実施の形態では、ＭＢＴ時リーンλをリーン限界値でガードしてリーン側振幅値を算出すると共に、最遅角時リッチλをリッチ限界値でガードしてリッチ側振幅値を算出したが、リーン限界値、リッチ限界値によるガードを行わずに、ＭＢＴ時リーンλ、最遅角時リッチλをそのままリーン側振幅値、リッチ側振幅値とすることも可能である。リーン限界値、リッチ限界値が余裕がある場合にこの構成が可能となる。
【０１３１】
上記実施の形態では、要求点火時期をＭＢＴに対して遅角させるべく、リザーブトルクを加算して要求図示トルクを増加させることにより要求空気量を強制的に増量したが、これを変更し、要求空気量を強制的に増量したり、要求スロットル開度を強制的に増加させたりする構成であっても良い。この場合、要求空気量の増量手段、要求スロットル開度の増加手段が「空気量補正手段」に相当する。要は、実空気量を増量させる構成であれば良い。
【０１３２】
また、ベース点火時期をＭＢＴとすることを前提に、リザーブトルクの加算により要求図示トルクを増加補正し結果的に点火時期を遅角させたが、ベース点火時期をＭＢＴ以外とする場合、例えば遅角限界とする場合には、要求図示トルクを減少補正し結果的に点火時期を進角させる構成であっても良い。要は、空燃比ディザ制御時における点火時期の遅角側及び進角側の操作代が確保できる構成であれば良い。
【０１３３】
上記実施の形態では、空燃比ディザ制御として、各気筒の１燃焼毎に空燃比をリーン・リッチで振幅させる構成としたが、複数燃焼毎に空燃比をリーン・リッチで振幅させる構成であっても良い。また、１サイクル（７２０°ＣＡ）毎に空燃比をリーン・リッチで振幅させる構成でも良い。
【０１３４】
上記第２の実施の形態では、（１）気筒別学習値による気筒別空燃比制御が実施されているか、又は（２）気筒別空燃比の推定値に基づいて気筒別空燃比制御が実施されているかを判別し、何れか一方満たされる場合に、気筒間の空燃比ばらつきが解消された状態であることを判断したが、これを上記（１）のみ、又は（２）のみで判断するようにしても良い。具体的には、前記図２２におけるステップＳ３０１，Ｓ３０２の何れか一方を省略する。
【０１３５】
上記第２の実施の形態では、排気集合部２４ｂにおけるガス流入及び混合に基づき構築したモデルを用いて気筒別空燃比を推定したが、気筒別空燃比の算出手法を他に変更しても良い。要は、吸気マニホールド形状や吸気バルブの動作、燃料噴射装置の個体差などによる気筒間のばらつきを反映して気筒別空燃比が算出できる手法であれば、任意の手法が適用できる。
【０１３６】
エンジン始動時等において触媒活性化を目的とする以外に、空燃比センサ３２の応答性を検出し該検出した応答性から劣化判定等を実施する場合などにおいて、本発明の空燃比ディザ制御を実施しても良い。具体的には、空燃比ディザ制御により目標λを所定量ずつリッチ側及びリーン側に振幅させ、その時のセンサ検出値の応答量などに基づいて空燃比センサの劣化の有無や、劣化度合等を判定する。かかる場合にも、ドライバビリティの悪化等を招くことなく、空燃比を良好に振幅させることができる。
【図面の簡単な説明】
【０１３７】
【図１】発明の実施の形態におけるエンジン制御システムの概略を示す構成図である。
【図２】ＥＣＵの機能ブロック図である。
【図３】目標ベースλ算出手段の詳細を示す機能ブロック図である。
【図４】λ補正量算出手段の詳細を示す機能ブロック図である。
【図５】点火時期効率特性を示す図である。
【図６】λ効率特性を示す図である。
【図７】λ振幅値の算出の過程を示す説明図である。
【図８】空燃比ディザ制御における挙動を示すタイムチャートである。
【図９】ＥＣＵの演算処理手順を示すフローチャートである。
【図１０】第２の実施の形態において空燃比Ｆ／Ｂ制御にかかる構成を示す概略図である。
【図１１】気筒別空燃比制御部の構成を示すブロック図である。
【図１２】クランク角同期ルーチンを示すフローチャートである。
【図１３】実行条件判定処理を示すフローチャートである。
【図１４】気筒別空燃比制御処理を示すフローチャートである。
【図１５】気筒別学習値の更新処理を示すフローチャートである。
【図１６】気筒別学習値の反映処理を示すフローチャートである。
【図１７】空燃比センサ値とクランク角との関係を示すタイムチャートである。
【図１８】空燃比安定条件の判断基準を説明するためのタイムチャートである。
【図１９】補正量なまし値と学習値更新量との関係を示す図である。
【図２０】気筒別学習値及び学習完了フラグの記憶形態を説明するための図である。
【図２１】気筒別学習値が更新される過程を説明するためのタイムチャートである。
【図２２】空燃比ディザ制御にかかる演算処理の一部を示すフローチャートである。
【符号の説明】
【０１３８】
１０…エンジン、２４…排気管、２４ｂ…排気集合部、３１…触媒、３２…空燃比センサ、４０…ＥＣＵ、Ｍ１…要求図示トルク算出手段、Ｍ３…目標ベースλ算出手段、Ｍ５…トルク増量補正手段、Ｍ７…要求空気量算出手段、Ｍ８…要求スロットル開度算出手段、Ｍ９…λ補正量算出手段、Ｍ１１…推定図示トルク算出手段、Ｍ１２…λ効率補正手段、Ｍ１４…目標λなまし手段、Ｍ１７…要求遅角量算出手段、Ｍ１８…要求点火時期算出手段、Ｍ２１…ＭＢＴ時トルク算出手段、Ｍ２２…最遅角時トルク算出手段、Ｍ２７…λ振幅値算出手段、Ｍ３２…空燃比Ｆ／Ｂ制御部、Ｍ３４…気筒別空燃比推定部、Ｍ３５…基準空燃比算出部、Ｍ３７…気筒別空燃比制御部。
【図１】
2005171979.tif 000007
【図２】
2005171979.tif 000008
【図３】
2005171979.tif 000009
【図４】
2005171979.tif 000010
【図５】
2005171979.tif 000011
【図６】
2005171979.tif 000012
【図７】
2005171979.tif 000013
【図８】
2005171979.tif 000014
【図９】
2005171979.tif 000015
【図１０】
2005171979.tif 000016
【図１１】
2005171979.tif 000017
【図１２】
2005171979.tif 000018
【図１３】
2005171979.tif 000019
【図１４】
2005171979.tif 000020
【図１５】
2005171979.tif 000021
【図１６】
2005171979.tif 000022
【図１７】
2005171979.tif 000023
【図１８】
2005171979.tif 000024
【図１９】
2005171979.tif 000025
【図２０】
2005171979.tif 000026
【図２１】
2005171979.tif 000027
【図２２】
2005171979.tif 000028