(57)【特許請求の範囲】
【請求項１】
内燃機関の排気系集合部に設けられた空燃比検出手段と、前記機関の排気系の挙動を記述するモデルに基づいてその内部状態を観測するオブザーバを設定し、前記空燃比検出手段の出力に基づいて各気筒の空燃比を推定する気筒別空燃比推定手段とを備えた内燃機関の気筒別空燃比推定装置において、
前記気筒別空燃比推定手段は、過去に推定された前記各気筒の空燃比を用いて前記空燃比検出手段の応答遅れを含めて前記排気系集合部における空燃比を推定する集合部空燃比推定手段を有すると共に、前記過去に推定された前記各気筒の空燃比、前記排気系集合部における前記応答遅れを含む検出空燃比、及び前記排気系集合部における前記応答遅れを含む推定空燃比に基づいて前記各気筒の空燃比を推定し、該集合部空燃比推定手段は、さらに前記推定した各気筒の空燃比を用いて前記応答遅れを含めて前記排気系集合部における空燃比の推定を行うことを特徴とする内燃機関の気筒別空燃比推定装置。
【請求項２】
前記気筒別空燃比推定手段は、前記排気系集合部における前記応答遅れを含む検出空燃比と前記排気系集合部における前記応答遅れを含む推定空燃比との偏差に応じて前記各気筒の空燃比を推定することを特徴とする請求項１記載の内燃機関の気筒別空燃比推定装置。
【請求項３】
前記気筒別空燃比推定手段は、前記排気系集合部における前記応答遅れを含む推定空燃比を前記オブザーバの観測対象に含め、（前記排気系集合部に対応する気筒数＋１）次のオブザーバとしたことを特徴とする請求項１記載の内燃機関の気筒別空燃比推定装置。
【請求項４】
前記集合部空燃比推定手段は、少なくとも前記機関の回転数に応じて設定される遅れ時定数を用いて前記排気系集合部における空燃比を推定することを特徴とする請求項１から３のいずれか１項に内燃機関の気筒別空燃比推定装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、現代制御理論に基づくオブザーバを応用して、内燃機関の気筒別の空燃比を推定する気筒別空燃比推定装置に関する。
【０００２】
【従来の技術】
内燃機関の排気系の挙動を記述するモデルに基づいてその内部状態を観測するオブザーバを設定し、機関の排気系集合部に設けられ、空燃比に比例する出力を発生する空燃比センサの出力に基づいて、機関の気筒別の空燃比を推定するようにした気筒別空燃比推定方法が、従来より知られている（特開平５−１８００５９号公報）。
【０００３】
一般に空燃比センサは応答遅れを有しているため、この応答遅れを補償せずに上記推定を行うと、推定の精度が低下する。このため上記方法では、空燃比センサを１次遅れ系で近似してモデル化し、そのモデルの伝達関数から逆伝達関数を求めて、センサ出力に乗算することにより、センサの応答遅れを補償している。
【０００４】
【発明が解決しようとする課題】
しかしながら、上記従来の方法では、ノイズの影響を受けやすく、改善の余地が残されていた。
【０００５】
本発明はこの問題を解決するためになされたものであり、空燃比センサの応答遅れを適切に補償して各気筒の空燃比を精度よく推定し、その上、ノイズによる影響を受け難くした気筒別空燃比推定装置を提供することを目的とする。
【０００６】
【課題を解決するための手段】
上記目的を達成するため請求項１に記載の発明は、内燃機関の排気系集合部に設けられた空燃比検出手段と、前記機関の排気系の挙動を記述するモデルに基づいてその内部状態を観測するオブザーバを設定し、前記空燃比検出手段の出力に基づいて各気筒の空燃比を推定する気筒別空燃比推定手段とを備えた内燃機関の気筒別空燃比推定装置において、前記気筒別空燃比推定手段は、過去に推定された前記各気筒の空燃比を用いて前記空燃比検出手段の応答遅れを含めて前記排気系集合部における空燃比を推定する集合部空燃比推定手段を有すると共に、前記過去に推定された前記各気筒の空燃比、前記排気系集合部における前記応答遅れを含む検出空燃比、及び前記排気系集合部における前記応答遅れを含む推定空燃比に基づいて前記各気筒の空燃比を推定し、該集合部空燃比推定手段は、さらに前記推定した各気筒の空燃比を用いて前記応答遅れを含めて前記排気系集合部における空燃比の推定を行うことを特徴とする。
【０００７】
請求項２に記載の発明は、請求項１記載の気筒別空燃比推定装置において、前記気筒別空燃比推定手段は、前記排気系集合部における前記応答遅れを含む検出空燃比と前記排気系集合部における前記応答遅れを含む推定空燃比との偏差に応じて前記各気筒の空燃比を推定することを特徴とする。
【０００８】
請求項３に記載の発明は、請求項１記載の気筒別空燃比推定装置において、前記気筒別空燃比推定手段は、前記排気系集合部における前記応答遅れを含む推定空燃比を前記オブザーバの観測対象に含め、（前記排気系集合部に対応する気筒数＋１）次のオブザーバとしたことを特徴とする。
【０００９】
請求項４に記載の発明は、請求項１から３のいずれか１項に記載の気筒別空燃比推定装置において、前記集合部空燃比推定手段は、少なくとも前記機関の回転数に応じて設定される遅れ時定数を用いて前記排気系集合部における空燃比を推定することを特徴とする。
【００１０】
請求項１記載の気筒別空燃比推定装置によれば、過去に推定した気筒別の空燃比を用いて空燃比検出手段の応答遅れを含めて、排気系集合部の空燃比が推定され、過去に推定された各気筒の空燃比、排気系集合部における応答遅れを含む検出空燃比、及び排気系集合部における応答遅れを含む推定空燃比に基づいて気筒別空燃比が推定される。
【００１１】
【発明の実施の形態】
以下本発明の実施の形態を図面を参照して説明する。
【００１２】
（第１の実施形態）
図１は本発明の実施の一形態にかかる内燃機関（以下「エンジン」という）及びその制御装置の構成を示す図である。同図中、１は各気筒に吸気弁及び排気弁（図示せず）を各１対ずつ設けた４気筒のエンジンである。
【００１３】
エンジン１の吸気管２は分岐部（吸気マニホルド）１１を介してエンジン１の各気筒の燃焼室に連通する。吸気管２の途中にはスロットル弁３が配されている。スロットル弁３にはスロットル弁開度（θＴＨ）センサ４が連結されており、スロットル弁開度θＴＨに応じた電気信号を出力して電子コントロールユニット（以下「ＥＣＵ」という）５に供給する。吸気管２には、スロットル弁３をバイパスする補助空気通路６が設けられており、該通路６の途中には補助空気量制御弁７が配されている。補助空気量制御弁７は、ＥＣＵ５に接続されており、ＥＣＵ５によりその開弁量が制御される。
【００１４】
吸気管２のスロットル弁３の上流側には吸気温（ＴＡ）センサ８が装着されており、その検出信号がＥＣＵ５に供給される。吸気管２のスロットル弁３と吸気マニホルド１１の間には、チャンバ９が設けられており、チャンバ９には吸気管内絶対圧（ＰＢＡ）センサ１０が取り付けられている。ＰＢＡセンサ１０の検出信号はＥＣＵ５に供給される。
【００１５】
エンジン１の本体にはエンジン水温（ＴＷ）センサ１３が装着されており、その検出信号がＥＣＵ５に供給される。ＥＣＵ５には、エンジン１のクランク軸（図示せず）の回転角度を検出するクランク角度位置センサ１４が接続されており、クランク軸の回転角度に応じた信号がＥＣＵ５に供給される。クランク角度位置センサ１４は、エンジン１の特定の気筒の所定クランク角度位置で信号パルス（以下「ＣＹＬ信号パルス」という）を出力する気筒判別センサ、各気筒の吸入行程開始時の上死点（ＴＤＣ）に関し所定クランク角度前のクランク角度位置で（４気筒エンジンではクランク角１８０度毎に）ＴＤＣ信号パルスを出力するＴＤＣセンサ及びＴＤＣ信号パルスより短い一定クランク角周期（例えば３０度周期）で１パルス（以下「ＣＲＫ信号パルス」という）を発生するＣＲＫセンサから成り、ＣＹＬ信号パルス、ＴＤＣ信号パルス及びＣＲＫ信号パルスがＥＣＵ５に供給される。これらの信号パルスは、燃料噴射時期、点火時期等の各種タイミング制御及びエンジン回転数ＮＥの検出に使用される。
【００１６】
吸気マニホルド１１の吸気弁の少し上流側には、各気筒毎に燃料噴射弁１２が設けられており、各噴射弁は図示しない燃料ポンプに接続されているとともにＥＣＵ５に電気的に接続されて、ＥＣＵ５からの信号により燃料噴射時期及び燃料噴射時間（開弁時間）が制御される。エンジン１の点火プラグ（図示せず）もＥＣＵ５に電気的に接続されており、ＥＣＵ５により点火時期θＩＧが制御される。
【００１７】
排気管１６は分岐部（排気マニホルド）１５を介してエンジン１の燃焼室に接続されている。排気管１６には分岐部１５が集合する部分の直ぐ下流側に、広域空燃比センサ（以下「ＬＡＦセンサ」という）１７が設けられている。直、本実施形態においては、４気筒のエンジンにて説明するが、例えばＶ型エンジンのようにバンク毎に設けられた排気系集合部のそれぞれにＬＡＦセンサ１７を設けてもよい。さらにＬＡＦセンサ１７の下流側には直下三元触媒１９及び床下三元触媒２０が配されており、またこれらの三元触媒１９及び２０の間には酸素濃度センサ（以下「Ｏ２センサ」という）１８が装着されている。三元触媒１９、２０は、排気ガス中のＨＣ，ＣＯ，ＮＯｘ等の浄化を行う。
【００１８】
ＬＡＦセンサ１７は、ローパスフィルタ２２を介してＥＣＵ５に接続されており、排気ガス中の酸素濃度（空燃比）に略比例した電気信号を出力し、その電気信号をＥＣＵ５に供給する。Ｏ２センサ１８は、その出力が理論空燃比の前後において急激に変化する特性を有し、その出力は理論空燃比よりリッチ側で高レベルとなり、リーン側で低レベルとなる。Ｏ２センサ１８は、ローパスフィルタ２３を介してＥＣＵ５に接続されており、その検出信号はＥＣＵ５に供給される。
【００１９】
排気還流機構３０は、吸気管２のチャンバ９と排気管１６とを接続する排気還流路３１と、排気還流路３１の途中に設けられ、排気還流量を制御する排気還流弁（ＥＧＲ弁）３２と、ＥＧＲ弁３２の弁開度を検出し、その検出信号をＥＣＵ５に供給するリフトセンサ３３とから成る。ＥＧＲ弁３２は、ソレノイドを有する電磁弁であり、ソレノイドはＥＣＵ５に接続され、その弁開度がＥＣＵ５からの制御信号により変化させることができるように構成されている。
【００２０】
エンジン１は、吸気弁及び排気弁のバルブタイミングを、エンジンの高速回転領域に適した高速バルブタイミングと、低速回転領域に適した低速バルブタイミングとの２段階に切換可能なバルブタイミング切換機構６０を有する。このバルブタイミングの切換は、弁リフト量の切換も含み、さらに低速バルブタイミング選択時は２つの吸気弁のうちの一方を休止させて、空燃比を理論空燃比よりリーン化する場合においても安定した燃焼を確保するようにしている。
【００２１】
バルブタイミング切換機構６０は、バルブタイミングの切換を油圧を介して行うものであり、この油圧切換を行う電磁弁及び油圧センサがＥＣＵ５接続されている。油圧センサの検出信号はＥＣＵ５に供給され、ＥＣＵ５は電磁弁を制御してバルブタイミングの切換制御を行う。
【００２２】
また、ＥＣＵ５には、大気圧を検出する大気圧（ＰＡ）センサ２１が接続されており、その検出信号がＥＣＵ５に供給される。
【００２３】
ＥＣＵ５は、上述した各種センサからの入力信号波形を整形して電圧レベルを所定レベルに修正し、アナログ信号値をデジタル信号値に変化する等の機能を有する入力回路と、中央処理回路（ＣＰＵ）と、該ＣＰＵで実行される各種演算プログラムや後述する各種マップ及び演算結果等を記憶するＲＯＭ及びＲＡＭからなる記憶回路と、燃料噴射弁１２等の各種電磁弁や点火プラグに駆動信号を出力する出力回路とを備えている。
【００２４】
ＥＣＵ５は、上述の各種エンジン運転パラメータ信号に基づいて、ＬＡＦセンサ１７及びＯ２センサ１８の出力に応じたフィードバック制御運転領域やオープン制御運転領域等の種々のエンジン運転状態を判別するとともに、エンジン運転状態に応じ、下記数式１により燃料噴射弁１２の燃料噴射時間ＴＯＵＴを演算し、この演算結果に基づいて燃料噴射弁１２を駆動する信号を出力する。
【００２５】
【数１】
ＴＯＵＴ（Ｎ）＝ＴＩＭＦ×ＫＴＯＴＡＬ×ＫＣＭＤＭ×ＫＬＡＦ
×ＫＯＢＳＶ＃Ｎ
図２は上記数式１による燃料噴射時間ＴＯＵＴ（Ｎ）の算出手法を説明するための機能ブロック図であり、これを参照して本実施形態における燃料噴射時間ＴＯＵＴ（Ｎ）の算出手法の概要を説明する。ここでＮは、気筒番号を表し、これを付したパラメータは気筒毎に算出される。なお、本実施形態ではエンジンへの燃料供給量は燃料噴射時間として算出されるが、これは噴射される燃料量に対応するので、ＴＯＵＴを燃料噴射量若しくは燃料量とも呼んでいる。
【００２６】
図２においてブロックＢ１は、吸入空気量に対応した基本燃料量ＴＩＭＦを算出する。この基本燃料量ＴＩＭＦは、基本的にはエンジン回転数ＮＥ及び吸気管内絶対圧ＰＢＡに応じて設定されるが、スロットル弁３からエンジン１の燃焼室に至る吸気系をモデル化し、その吸気系モデルに基づいて吸入空気の遅れを考慮した補正を行うことが望ましい。その場合には、検出パラメータとしてスロットル弁開度θＴＨ及び大気圧ＰＡをさらに用いる。
【００２７】
ブロックＢ２〜Ｂ８は乗算ブロックであり、ブロックの入力パラメータを乗算して出力する。これらのブロックにより、上記数式１の演算が行われ、ブロックＢ５〜Ｂ８の出力として、気筒毎の燃料噴射量ＴＯＵＴ（Ｎ）が得られる。
【００２８】
ブロックＢ９は、エンジン水温ＴＷに応じて設定されるエンジン水温補正係数ＫＴＷ，排気還流実行中に排気還流量に応じて設定されるＥＧＲ補正係数ＫＥＧＲ等のフィードフォワード系補正係数をすべて乗算することにより、補正係数ＫＴＯＴＡＬを算出し、ブロックＢ２に入力する。
【００２９】
ブロックＢ２１は、エンジン回転数ＮＥ、吸気管内絶対圧ＰＢＡ等に応じて目標空燃比係数ＫＣＭＤを決定し、ブロックＢ２２に入力する。目標空燃比係数ＫＣＭＤは、空燃比Ａ／Ｆの逆数、すなわち燃空比Ｆ／Ａに比例し、理論空燃比のとき値１．０をとるので、目標当量比ともいう。ブロックＢ２２は、ローパスフィルタ２３を介して入力されるＯ２センサ出力ＶＭＯ２に基づいて目標空燃比係数ＫＣＭＤを修正し、ブロックＢ１８及びＢ２３に入力する。ブロックＢ２３は、ＫＣＭＤ値に応じて燃料冷却補正を行い最終目標空燃比係数ＫＣＭＤＭを算出し、ブロックＢ３に入力する。
【００３０】
ブロックＢ１０は、ローパスフィルタ２２を介して入力されるＬＡＦセンサ出力値を、ＣＲＫ信号パルスの発生毎にサンプリングし、そのサンプル値をリングバッファメモリに順次記憶し、エンジン運転状態に応じて最適のタイミングでサンプリングしたサンプル値を選択し（ＬＡＦセンサ出力選択処理）、ブロックＢ１１並びにローパスフィルタブロックＢ１６を介してブロックＢ１８に入力する。このＬＡＦセンサ出力選択処理は、サンプリングのタイミングによっては変化する空燃比を正確に検出できないこと、燃焼室から排出される排気ガスがＬＡＦセンサ１７に到達するまでの時間やＬＡＦセンサ自体の反応時間がエンジン運転状態によって変化することを考慮したものである。
【００３１】
ブロックＢ１８は、検出空燃比と目標空燃比との偏差に応じてＰＩＤ制御によりＰＩＤ補正係数ＫＬＡＦを算出してブロックＢ４に入力する。
【００３２】
ブロックＢ１１は、いわゆるオブザーバとしての機能を有し、ＬＡＦセンサ１７によって検出される集合部（各気筒から排出された排気ガスの混合ガス）の空燃比に基づいて、各気筒毎の空燃比を推定し、４つの気筒に対応しているブロックＢ１２〜Ｂ１５に入力する。図２においては、ブロックＢ１２が気筒＃１に対応し、ブロックＢ１３が気筒＃２に対応し、ブロックＢ１４が気筒＃３に対応し、ブロックＢ１５が気筒＃４に対応する。ブロックＢ１２〜Ｂ１５は、各気筒の空燃比（オブザーバブロックＢ１１が推定した空燃比）が、集合部空燃比に一致するようにＰＩＤ制御により気筒別補正係数ＫＯＢＳＶ＃Ｎ（Ｎ＝１〜４）を算出し、それぞれブロックＢ５〜Ｂ８に入力する。
【００３３】
以上のように本実施形態では、ＬＡＦセンサ１７の出力に応じて通常のＰＩＤ制御により算出したＰＩＤ補正係数ＫＬＡＦを上記数式１に適用するとともに、ＬＡＦセンサ出力に基づいて推定した各気筒の空燃比に応じて設定される気筒別補正係数ＫＯＢＳＶ＃Ｎをさらに上記数式１に適用して、気筒毎の燃料噴射量ＴＯＵＴ（Ｎ）を算出している。気筒別補正係数ＫＯＢＳＶ＃Ｎにより気筒毎の空燃比のばらつきを解消して、触媒の浄化率を向上させ、種々のエンジン運転状態において良好な排気ガス特性を得ることができる。
【００３４】
本実施形態では、上述した図２の各ブロックの機能は、ＥＣＵ５のＣＰＵによる演算処理により実現されるので、この処理のフローチャートを参照して処理の内容を具体的に説明する。
【００３５】
図３は、ＬＡＦセンサ１７の出力に応じてＰＩＤ補正係数ＫＬＡＦ及び気筒別補正係数ＫＯＢＳＶ＃Ｎを算出する処理のフローチャートである。本処理はＴＤＣ信号パルスの発生毎に実行される。
【００３６】
ステップＳ１では、始動モードか否か、すなわちクランキング中か否かを判別し、始動モードのときは始動モードの処理へ移行する。始動モードでなければ、エンジン運転状態に応じて目標空燃比係数（目標当量比）ＫＣＭＤ及び最終目標空燃比係数ＫＣＭＤＭの算出（ステップＳ２）及びＬＡＦセンサ出力選択処理を行う（ステップＳ３）とともにＬＡＦセンサ出力に応じた検出当量比ＫＡＣＴの演算を行う（ステップＳ４）。検出当量比ＫＡＣＴは、ＬＡＦセンサ１７の出力を当量比に変換したものである。
【００３７】
次いでＬＡＦセンサ１７の活性化が完了したか否かの活性判別を行う（ステップＳ５）。これは、例えばＬＡＦセンサ１７の出力電圧とその中心電圧との差を所定値（例えば０．４Ｖ）と比較し、該差が所定値より小さいとき活性化が完了したと判別するものである。
【００３８】
次にエンジン運転状態がＬＡＦセンサ１７の出力に基づくフィードバック制御を実行する運転領域（以下「ＬＡＦフィードバック領域」という）にあるか否かの判別を行う（ステップＳ６）。これは、例えばＬＡＦセンサ１７の活性化が完了し、且つフュエルカット中やスロットル全開運転中でないとき、ＬＡＦフィードバック領域と判定するものである。この判別の結果、ＬＡＦフィードバック領域にないときはリセットフラグＦＫＬＡＦＲＥＳＥＴを「１」に設定し、ＬＡＦフィードバック領域にあるときは「０」とする。
【００３９】
続くステップＳ７では、リセットフラグＦＫＬＡＦＲＥＳＥＴが「１」か否かを判別し、ＦＫＬＡＦＲＥＳＥＴ＝１のときは、ステップＳ８に進んでＰＩＤ補正係数ＫＬＡＦを「１．０」、気筒別補正係数ＫＯＢＳＶ＃Ｎを後述する気筒別補正係数学習値ＫＯＢＳＶ＃Ｎｓｔｙに設定するとともに、ＰＩＤ制御の積分項ＫＬＡＦＩを「０」に設定して、本処理を終了する。ここで、気筒別補正係数ＫＯＢＳＶ＃Ｎを気筒別補正係数学習値ＫＯＢＳＶ＃Ｎｓｔｙに設定することにより、フィードフォワード制御時に経年変化等による燃料供給状態の変化に起因する内燃機関の失火や、機関回転変動に対する機関の安定性を確保できる。
【００４０】
また、ＦＫＬＡＦＲＥＳＥＴ＝０のときは、気筒別補正係数ＫＯＢＳＶ＃Ｎ及びＰＩＤ補正係数ＫＬＡＦの演算を行って（ステップＳ９、Ｓ１０）、本処理を終了する。
【００４１】
ＰＩＤ補正係数ＫＬＡＦは、ステップＳ１０において検出当量比ＫＡＣＴと目標空燃比係数（目標当量比）ＫＣＭＤとの偏差に応じて、周知のＰＩＤ制御手法を用いて算出される。
【００４２】
次に図３のステップＳ３におけるＬＡＦセンサ出力選択処理について説明する。
【００４３】
エンジンの排気ガスは排気行程で排出されることから、多気筒エンジンの排気系集合部において空燃比の挙動を見ると、明らかにＴＤＣ信号パルスに同期している。したがって、ＬＡＦセンサ１７により空燃比を検出するときもＴＤＣ信号パルスに同期して行う必要がある。ところが、センサ出力のサンプルタイミングによっては空燃比の挙動を正確に把握できない場合が生じる。例えば、ＴＤＣ信号パルスに対して排気系集合部の空燃比が図４のようであるとき、ＥＣＵ５が認識する空燃比は図５に示すように、サンプルタイミングによって全く異なる値となる。この場合、実際のＬＡＦセンサの出力変化を可能な限り正確に把握できるタイミングでサンプリングすることが望ましい。
【００４４】
さらに、空燃比の変化は排気ガスのセンサまでの到達時間やセンサの反応時間によっても相違する。そのうち、センサまでの到達時間は排気ガス圧力、排気ガスボリューム等に依存して変化する。さらに、ＴＤＣ信号パルスに同期してサンプリングすることはクランク角度に基づいてサンプリングすることになるので、必然的にエンジン回転数ＮＥの影響を受ける。このように、空燃比の検出の最適なタイミングは、エンジン運転状態に大きく依存する。
【００４５】
そこで、本実施形態では図６に示すように、ＣＲＫ信号パルス（クランク角度３０度毎に発生する）の発生毎にサンプリングしたＬＡＦセンサ出力をリングバッファ（本実施形態では１８個の格納場所を有する）に順次格納し、最適タイミングの出力値（１７回前の値から今回値までの中の最適の値）を検出当量比ＫＡＣＴに変換してフィードバック制御に使用するようにしている。
【００４６】
図７は、図３のステップＳ３におけるＬＡＦセンサ出力選択処理のフローチャートある。
【００４７】
先ずステップＳ８１では、エンジン回転数ＮＥ及び吸気管内絶対圧ＰＢＡを読み出し、次いで現在のバルブタイミングが高速バルブタイミングか否かを判別する（ステップＳ８２）。その結果高速バルブタイミングのときは高速バルブタイミング用のタイミングマップを検索し（ステップＳ８３）、低速バルブタイミングのときは低速バルブタイミング用のタイミングマップを検索し（ステップＳ８４）、その検索結果に応じてリングバッファに格納したＬＡＦセンサ出力ＶＬＡＦを選択して（ステップＳ８５）、本処理を終了する。
【００４８】
上記タイミングマップは、図８に示すように、エンジン回転数ＮＥ及び吸気管内絶対圧ＰＢＡに応じて、エンジン回転数ＮＥが低いほど、あるいは吸気管内絶対圧ＰＢＡが高いほど早いクランク角度位置でサンプリングした値を選択するように設定されている。ここで、「早い」とは、前のＴＤＣ位置により近い位置でサンプリングした値（換言すれば古い値）を意味する。このように設定したのは、ＬＡＦセンサ出力は、図５に示したように、実際の空燃比の極大値又は極小値（以下「極値」という）に可能な限り近い位置でサンプリングするのが最良であるが、その極値、例えば最初のピーク値は、センサの反応時間（応答遅れ）を一定と仮定すれば、図９に示すように、エンジン回転数ＮＥが低下するほど早いクランク角度位置で生じ、また、負荷が高いほど排気ガス圧力や排気ガスボリュームが増加し、排気ガスの流速が増してセンサへの到達時間が早まるからである。
【００４９】
以上のように、図７の処理によれば、エンジン運転状態に応じて最適なタイミングでサンプリングしたセンサ出力ＶＬＡＦが選択されるので、空燃比の検出精度を向上させることができる。その結果、オブザーバによる気筒毎の空燃比の推定精度が向上し、気筒毎の空燃比フィードバック制御の精度を向上させることができる。
【００５０】
なお、量産したＬＡＦセンサの反応時間のばらつきが予想される場合には、予めＬＡＦセンサの反応時間をＬＡＦセンサ毎に計測してｍ個のランクに分けておき、上記タイミングマップより読み出された値に対して加減算する補正項を複数（ｍ個）、あるいは上記タイミングマップを各バルブタイミング毎に複数（ｍ個）設けるとともに、ＥＣＵの基板上にそのタイミングマップに対応したｍ個のジャンパ線を予め設けておき、そのＥＣＵと組み合わされるＬＡＦセンサの反応特性に応じてジャンパ線を選択することにより、ＬＡＦセンサの反応時間にあわせたタイミングを選択できるようにしてもよい。
【００５１】
次に図３のステップＳ９における気筒別補正係数ＫＯＢＳＶ＃Ｎの算出処理について説明する。
【００５２】
最初にオブザーバによる気筒別空燃比の推定手法について説明し、次に推定した気筒別空燃比に応じた気筒別補正係数ＫＯＢＳＶ＃Ｎの算出手法を説明する。
【００５３】
排気系集合部の空燃比を各気筒の空燃比の時間的な寄与度を考慮した加重平均であると考え、時刻ｋのときの値を数式２のように表した。なお、燃料量（Ｆ）を操作量としたため、数式２では燃空比Ｆ／Ａを用いている。
【００５４】
【数２】
0003683355.tif 000002
すなわち、集合部の燃空比は、気筒毎の過去の燃焼履歴に重みＣ（例えば直前に燃焼した気筒は４０％、その前が３０％、…など）を乗算したものの合計で表した。このモデルをブロック線図で表すと、図１０のようになり、その状態方程式は数式３のようになる。
【００５５】
【数３】
0003683355.tif 000003
また、集合部の燃空比をｙ（ｋ）とおくと、出力方程式は数式４のように表すことができる。
【００５６】
【数４】
0003683355.tif 000004
数式４において、ｕ（ｋ）は観測不可能であるため、この状態方程式からオブザーバを設計してもｘ（ｋ）は観測することができない。そこで、４ＴＤＣ前（すなわち、同一気筒）の空燃比は急激に変化しない定常運転状態にあると仮定してｘ（ｋ＋１）＝ｘ（ｋ−３）とすると、数式４は数式５のようになる。
【００５７】
【数５】
0003683355.tif 000005
このように設定したモデルが４気筒エンジンの排気系をよくモデル化していることは実験的に確認されている。従って、集合部Ａ／Ｆから気筒別空燃比を推定する問題は、数式６で示される状態方程式と出力方程式にてｘ（ｋ）を観察する通常のカルマンフィルタの問題に帰着する。その荷重行列Ｑ，Ｒを数式７のようにおいてリカッチの方程式を解くと、ゲイン行列Ｋは数式８のようになる。
【００５８】
【数６】
0003683355.tif 000006
【００５９】
【数７】
0003683355.tif 000007
【００６０】
【数８】
0003683355.tif 000008
本実施形態のモデルでは、一般的なオブザーバの構成における入力ｕ（ｋ）がないので、図１１に示すようにｙ（ｋ）のみを入力とする構成となり、これを数式で表すと数式９のようになる。
【００６１】
【数９】
0003683355.tif 000009
したがって、集合部燃空比ｙ（ｋ）及び過去の気筒別燃空比の推定値Ｘハット（ｋ）から、今回の気筒別燃空比の推定値Ｘハット（ｋ）を算出することができる。
【００６２】
上記数式９を用いて気筒別燃空比Ｘハット（ｋ＋１）を算出する場合、集合部燃空比ｙ（ｋ）として、検出当量比ＫＡＣＴ（ｋ）が適用されるが、この検出当量比ＫＡＣＴ（ｋ）は、ＬＡＦセンサ１７の応答遅れを含んでいるのに対し、ＣＸハット（ｋ）（４つの気筒別燃空比の重み付け加算値）は、遅れを含んでいない。そのため、数式９を用いたのでは、ＬＡＦセンサ１７の応答遅れの影響で、気筒別燃空比を正確に推定することはできない。特にエンジン回転数ＮＥが高いときは、ＴＤＣ信号パルスの発生間隔が短くなるので応答遅れの影響が大きくなる。
【００６３】
そこで本実施形態では、数式１０により集合部燃空比の推定値ｙハット（ｋ）を算出し、これを数式１１に適用することにより、気筒別燃空比の推定値Ｘハット（ｋ＋１）を算出するようにした。
【００６４】
【数１０】
0003683355.tif 000010
【００６５】
【数１１】
0003683355.tif 000011
上記数式１０において、ＤＬはＬＡＦセンサ１７の応答遅れの時定数に相当するパラメータであり、本実施形態では図１２に示すＤＬテーブルを用いて算出される。ＤＬテーブルは、ＤＬ値がエンジン回転数ＮＥ及び吸気管内絶対圧ＰＢＡに応じて０から１．０の間の値となるように設定されている。同図において、ＰＢＡ１〜３はそれぞれ例えば、６６０ｍｍＨｇ，４６０ｍｍＨｇ，２６０ｍｍＨｇであり、適宜補間演算を行って、検出したエンジン回転数ＮＥ及び吸気管内絶対圧ＰＢＡに応じた時定数ＤＬの算出を行う。なお、時定数ＤＬの値は、実際の応答遅れ時間に相当する値より２０％程度遅い時間に相当する値が最適であることが実験的に確認されている。
【００６６】
なお、数式１０及び１１において、Ｘハット（ｋ）の初期ベクトルは、例えば構成要素（ｘハット（ｋ−３），ｘハット（ｋ−２），ｘハット（ｋ−１），ｘハット（ｋ））の値が全て「１．０」のベクトルとし、数式１０においてｙハット（ｋ−１）の初期値は「１．０」とする。
【００６７】
このように、数式９におけるＣＸハット（ｋ）を、ＬＡＦセンサの応答遅れを含んだ集合部燃空比の推定値ｙハット（ｋ）に置き換えた数式１１を用いることにより、ＬＡＦセンサの応答遅れを適切に補償して正確な気筒別空燃比の推定を行うことができる。特に従来技術に比してノイズの影響を受け難くすることができる。なお、以下の説明における各気筒の推定当量比ＫＡＣＴ＃１（ｋ）〜ＫＡＣＴ＃４（ｋ）が、それぞれｘハット（ｋ）に相当する。
【００６８】
次に推定した気筒別空燃比に基づいて気筒別補正係数ＫＯＢＳＶ＃Ｎを算出する手法を、図１３を参照して説明する。
【００６９】
先ず、数式１２に示すように、集合部Ａ／Ｆに対応する検出当量比ＫＡＣＴを全気筒の気筒別補正係数ＫＯＢＳＶ＃Ｎの平均値の前回演算値で除算して目標Ａ／Ｆに対応する当量比としての目標値ＫＣＭＤＯＢＳＶ（ｋ）を算出し、＃１気筒の気筒別補正係数ＫＯＢＳＶ＃１は、その目標値ＫＣＭＤＯＢＳＶ（ｋ）と＃１気筒の推定当量比ＫＡＣＴ＃１（ｋ）との偏差ＤＫＡＣＴ＃１（ｋ）（＝ＫＡＣＴ＃１（ｋ）−ＫＣＭＤＯＢＳＶ（ｋ））が０となるように、ＰＩＤ制御により求める。
【００７０】
【数１２】
0003683355.tif 000012
より具体的には、数式１３により比例項ＫＯＢＳＶＰ＃１、積分項ＫＯＢＳＶＩ＃１及び微分項ＫＯＢＳＶＤ＃１を求め、さらに数式１４により気筒別補正係数ＫＯＢＳＶ＃１を算出する。
【００７１】
【数１３】
0003683355.tif 000013
【００７２】
【数１４】
0003683355.tif 000014
＃２〜＃４気筒についても同様の演算を行い、ＫＯＢＳＶ＃２〜＃４を算出する。
【００７３】
これにより、各気筒の空燃比は集合部空燃比に収束し、集合部空燃比はＰＩＤ補正係数ＫＬＡＦにより、目標空燃比に収束するので、結果的にすべての気筒の空燃比を目標空燃比に収束させることができる。
【００７４】
さらに、この気筒別補正係数ＫＯＢＳＶ＃Ｎの学習値である気筒別補正係数学習値ＫＯＢＳＶ＃Ｎｓｔｙを以下の式により算出し記憶する。
【００７５】
0003683355.tif 000015
ここで、Ｃｓｔｙは重み係数、右辺のＫＯＢＳＶ＃Ｎｓｔｙは前回学習値である。
【００７６】
図１４は、図３のステップＳ９における気筒別補正係数ＫＯＢＳＶ＃Ｎ算出処理のフローチャートである。
【００７７】
先ずステップＳ３３１では、ＬＡＦセンサ１７のリーン劣化を検出しているか否かを判別し、検出していないときは、直ちにステップＳ３３６に進む一方、検出しているときは、目標当量比ＫＣＭＤが１．０であるか否か、即ち目標空燃比が理論空燃比か否かを判別する（ステップＳ３３２）。ここで、ＬＡＦセンサのリーン劣化とは、理論空燃比よりリーン側の空燃比に対応する出力のずれが所定以上となった状態をいう。そして、ＫＣＭＤ＝１．０であるときは、ステップＳ３３６に進む一方、ＫＣＭＤ≠１．０であるときは、すべての気筒の気筒別補正係数ＫＯＢＳＶ＃Ｎを１．０に設定して（ステップＳ３４４）、即ち気筒別空燃比フィードバック制御は行わずに本処理を終了する。ステップＳ３３６では、上述したオブザーバによる気筒別空燃比の推定処理を行い、次いでＰＩＤ補正係数ＫＬＡＦを現在値に維持すべきことを「１」で示すホールドフラグＦＫＬＡＦＨＯＬＤが「１」か否かを判別し、ＦＫＬＡＦＨＯＤ＝１であるときは、直ちに本処理を終了する。
【００７８】
続くステップＳ３３８では、リセットフラグＦＫＬＡＦＲＥＳＥＴが「１」か否かを判別し、ＦＫＬＡＦＲＥＳＥＴ＝０であるときは、エンジン回転数ＮＥが所定回転数ＮＯＢＳＶ（例えば３５００ｒｐｍ）より高いか否かを判別し（ステップＳ３３９）、ＮＥ≦ＮＯＢＳＶであるときは、吸気管内絶対圧ＰＢＡが所定上限圧ＰＢＯＢＳＶＨ（例えば６５０ｍｍＨｇ）より高いか否かを判別し（ステップＳ３４０）、ＰＢＡ≦ＰＢＯＢＳＶＨであるときは、エンジン回転数ＮＥに応じて図１６に示すように設定されたＰＢＯＢＳＶＬテーブルを検索して、下限圧ＰＢＯＢＳＶＬを決定し（ステップＳ３４１）、吸気管内絶対圧ＰＢＡが下限圧ＰＢＯＢＳＶＬより低いか否かを判別する（ステップＳ３４２）。
【００７９】
以上の判別の結果、ステップＳ３３８〜Ｓ３４０またはＳ３４２のいずれかの答が肯定（ＹＥＳ）のときは、前記ステップＳ３４４に進み、気筒別空燃比フィードバック制御は行わない。一方、ステップＳ３３８〜Ｓ３４０及びＳ３４２の答がすべて否定（ＮＯ）のときは、エンジン運転状態が図１６に斜線で示す領域にあり、気筒別空燃比フィードバック制御が実行可能と判定して、上述した手法により気筒別補正係数ＫＯＢＳＶ＃Ｎの演算を行って（ステップＳ３４３）、本処理を終了する。
【００８０】
図１５は、図１４のステップＳ３３６における気筒別空燃比の推定処理のフローチャートである。
【００８１】
同図において、ステップＳ３６１では、高速バルブタイミング用のオブザーバ演算（即ち気筒別空燃比の推定演算）を行い、続くステップＳ３６２では、低速バルブタイミング用のオブザーバ演算を行う。そして、現在のバルブタイミングが高速バルブタイミングか否かを判別し（ステップＳ３６３）、高速バルブタイミングのときは、高速バルブタイミング用のオブザーバ演算結果を選択し（ステップＳ３６４）、低速バルブタイミングのときは、低速バルブタイミング用のオブザーバ演算結果を選択する（ステップＳ３６５）。
【００８２】
このように、現在のバルブタイミングに拘わらず、高速及び低速バルブタイミング用のオブザーバ演算をともに行い、現在のバルブタイミングに応じて、演算結果を選択するようにしたのは、気筒別空燃比の推定演算は、収束するまでに数回の演算を要するからである。これにより、バルブタイミング切換直後の気筒別空燃比の推定精度を向上させることができる。
【００８３】
（第２の実施形態）
本実施形態では、第１の実施形態における数式１０及び１１を、下記数式１５に代えて気筒別燃空比の演算を行う。すなわち、第１の実施形態では４次の（４つの気筒の燃空比を観測対象とする）オブザーバにおいて、ＬＡＦセンサの応答遅れを含めた集合部燃空比の推定値ｙハット（ｋ）を導入したが、本実施形態では集合部燃空比の推定値ｙハット（ｋ）をオブザーバに含めた５次の（４つの気筒の燃空比＋集合部燃空比を観測対象とする）オブザーバにより、気筒別燃空比を推定するようにしたものである。
【００８４】
【数１５】
0003683355.tif 000016
上記数式１５において、ＤＬは第１の実施形態と同様に、ＬＡＦセンサ１７の応答遅れの時定数であり、エンジン回転数ＮＥ及び吸気管内絶対圧ＰＢＡに応じて設定される。また本実施形態では、ゲインベクトルＫ’も少なくともエンジン回転数ＮＥに応じて設定される。なお、この場合エンジン回転数ＮＥを複数の領域に分割し、分割した複数の領域毎に時定数ＤＬ及びゲインベクトルＫ’が異なるオブザーバを構成し、検出したエンジン回転数ＮＥの応じて、使用するオブザーバを選択することが望ましい。
【００８５】
以上の点以外は第１の実施形態と同様である。
【００８６】
本実施形態においても、ＬＡＦセンサ１７の応答遅れを含めて集合部燃空比を推定し、該推定した集合部燃空比を用いて気筒別空燃比が推定されるので、より正確な推定を行うことができる。さらに、本実施形態によれば、ゲインベクトルＫ’を適切に設定することにより、４次のオブザーバ（第１の実施形態）より安定且つ高速に収束させることが可能であり、オブザーバの応答性を向上させることができる。
【００８７】
なお、例えばＶ型６気筒エンジンでバンク毎に排気系集合部を設けて、それぞれＬＡＦセンサを配置する場合には、１つのＬＡＦセンサ出力に基づいて空燃比を推定する気筒の数は３個となるので、４（排気系集合部に対応する気筒数＋１）次のオブザーバとする。
【００８８】
【発明の効果】
以上詳述したように請求項１記載の気筒別空燃比推定装置によれば、過去に推定した気筒別の空燃比を用いて空燃比検出手段の応答遅れを含めて、排気系集合部の空燃比が推定され、過去に推定された各気筒の空燃比、排気系集合部における応答遅れを含む検出空燃比、及び排気系集合部における応答遅れを含む推定空燃比に基づいて気筒別空燃比が推定されるので、空燃比検出手段の応答遅れを適切に補償して各気筒の空燃比を精度よく推定し、しかもノイズの影響を受け難くすることができる。
【００８９】
請求項３記載の気筒別空燃比推定装置によれば、（排気系集合部に対応する気筒数＋１）次のオブザーバにより、排気系集合部における応答遅れを含む推定空燃比をオブザーバの観測対象に含めて気筒別空燃比の推定が行われるので、オブザーバの推定精度を向上できるとともに、高次のオブザーバによる安定性の向上により、ゲインを大きくできるため、安定且つ高速に収束させることが可能となり、オブザーバの応答性を向上させることができる。
【図面の簡単な説明】
【図１】本発明の一実施例にかかる内燃機関及びその制御装置の構成を示す図である。
【図２】本実施形態における空燃比制御手法を説明するための機能ブロック図である。
【図３】ＬＡＦセンサ出力に基づいて空燃比補正係数を算出する処理のフローチャートである。
【図４】ＴＤＣ信号パルスとＬＡＦセンサ出力との関係を示す図である。
【図５】ＬＡＦセンサ出力の最適なサンプリング時期を説明するための図である。
【図６】ＬＡＦセンサ出力選択処理を説明するための図である。
【図７】ＬＡＦセンサ出力選択処理のフローチャートである。
【図８】ＬＡＦセンサ出力選択用タイミングマップを示す図である。
【図９】図８のマップの設定傾向説明するための図である。
【図１０】内燃機関の排気系の挙動を示すモデルのブロック図である。
【図１１】本実施形態におけるオブザーバの構成を示すブロック図である。
【図１２】ＬＡＦセンサの応答遅れ時定数（ＤＬ）を設定するためのテーブルを示す図である。
【図１３】気筒別空燃比フィードバック制御を説明するためのブロック図である。
【図１４】気筒別補正係数（ＫＯＢＳＶ＃Ｎ）を算出する処理のフローチャートである。
【図１５】気筒別空燃比推定処理のフローチャートである。
【図１６】気筒別空燃比フィードバック制御を実行する運転領域を示す図である。
【符号の説明】
１  内燃機関（本体）
２  吸気管
５  電子コントロールユニット（ＥＣＵ）
１２  燃料噴射弁
１６  排気管
１７  広域空燃比センサ
１８  酸素濃度センサ
【図１】
0003683355.tif 000017
【図２】
0003683355.tif 000018
【図３】
0003683355.tif 000019
【図４】
0003683355.tif 000020
【図５】
0003683355.tif 000021
【図６】
0003683355.tif 000022
【図７】
0003683355.tif 000023
【図８】
0003683355.tif 000024
【図９】
0003683355.tif 000025
【図１０】
0003683355.tif 000026
【図１１】
0003683355.tif 000027
【図１２】
0003683355.tif 000028
【図１３】
0003683355.tif 000029
【図１４】
0003683355.tif 000030
【図１５】
0003683355.tif 000031
【図１６】
0003683355.tif 000032