(57)【特許請求の範囲】
【請求項１】
排気還流機構を備えた多気筒内燃機関の排気系集合部に配置され、前記多気筒内燃機関の各気筒から排出される混合気の空燃比を検出する空燃比検出手段と、
前記多気筒内燃機関の排気系における空燃比の挙動を規定するモデルに基づいて、前記空燃比を入力すると共に前記排気系の内部状態を観測するオブザーバを設定して、各気筒の空燃比を推定する空燃比推定手段と、
前記推定された各気筒の空燃比に基づいて各気筒の空燃比のバラツキを減少させるように、前記多気筒内燃機関の各気筒に供給する気筒別燃料噴射量を補正する気筒別空燃比補正係数を算出する空燃比補正係数算出手段とを備えた内燃機関の燃料噴射量制御装置において、
前記多気筒内燃機関の運転状態に応じたサンプリングタイミングで前記空燃比推定手段からの空燃比を入力することによって気筒別の空燃比を推定すると共に、前記サンプリングタイミングを前記排気還流機構の動作の有無に応じて調整するタイミング調整手段を具備することを特徴とする内燃機関の燃料噴射量制御装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、内燃機関の燃料噴射制御装置に関し、特に、排気系の集合部に設置された空燃比センサの検知出力に基づいて各気筒の空燃比を推定すると共に、各気筒の空燃比に基づいて各気筒の空燃比のバラツキを減少させるように、前記多気筒内燃機関の各気筒に供給する気筒別燃料噴射量をフィードバック制御する燃料噴射制御装置に関する。
【０００２】
【従来の技術】
従来、内燃機関の燃料噴射制御装置においては、排気系に設けられた触媒装置による排気ガスの浄化率が理論空燃比で最大になることに着目し、排気系に設けた空燃比センサにより空燃比を検出して、その検出値が理論空燃比となるように燃料噴射量をフィードバック制御している（特開昭５９−１０１５６２号公報）。  また、空燃比センサを多気筒内燃機関の排気系集合部に１個だけ設けて空燃比を検出しても、気筒毎の空燃比を正確に検出することができず、全気筒の空燃比の混合値が検出されるのみであるため、この検出値に基づいて空燃比をフィードバック制御するとエミッション悪化を招来するという問題がある。そこで、かかる課題を解決するために、排気系の理論モデルを構築しておき、１個の空燃比センサの検出出力をこの理論モデルに適用することによって気筒毎の空燃比を推定し、この推定値に基づいて各気筒の空燃比を目標値にフィードバック制御する技術がある（特開平５−１８００４０号公報）。更にこの技術では、エンジン制御ユニット（ＥＣＵ）のシステムクロックに同期して空燃比センサの検出出力を単純にサンプリングしたのでは、真の空燃比（排気系集合部の空燃比）を求めることができないという課題を解決するために、サンプリング動作ブロック（ｓｅｌ−Ｖと呼ばれる）を備えている。即ち、排気系集合部における排気ガスの挙動は機関回転数等に依存して変動するので、この排気ガスの挙動に追従し得るサンプリングタイミングを設定することによって、排気系集合部の空燃比を求めるようにしている。そして、このように求めた空燃比から気筒毎の空燃比を求め、更にこれら気筒毎の空燃比に基づいて上記の気筒別フィードバック制御を行っている。
【０００３】
この技術によれば、気筒毎に空燃比を設定することができると共に、気筒毎に独立して複数個の空燃比センサを設ける必要がないため、簡素な構造を実現している。
【０００４】
【発明が解決しようとする課題】
しかし、前記サンプリング動作ブロックは、排気還流機構（ＥＧＲ機構）の動作の有無に応じて、排気系集合部を通る排気ガスの流速が変化すると共に、機関回転数が変化すると、排気ガスの挙動とサンプリング動作タイミグとの間にズレを生じる、即ち、排気ガスの挙動とサンプリング動作タイミグとが正確に同期しなくなるので、排気系集合部の空燃比を正確に求めることが困難となり、気筒別フィードバック制御の精度の低下を招来して、空燃比応答性の悪化及びエミッションの悪化を招くという問題があった。
【０００５】
本発明は、このような従来技術の課題に鑑みて成されたものであり、排気還流機構の動作の有無によらず、常に排気系集合部の空燃比を正確にサンプリングして、そのサンプリング値に基づいて高精度の気筒別フィードバック制御を行うことができる内燃機関の燃料噴射量制御装置を提供することを目的とする。
【０００６】
【課題を解決するための手段】
このような目的を達成するために本発明は、排気還流機構を備えた多気筒内燃機関の排気系集合部に配置され、前記多気筒内燃機関の各気筒から排出される混合気の空燃比を検出する空燃比検出手段と、前記多気筒内燃機関の排気系における空燃比の挙動を規定するモデルに基づいて、前記空燃比を入力すると共に前記排気系の内部状態を観測するオブザーバを設定して、各気筒の空燃比を推定する空燃比推定手段と、前記推定された各気筒の空燃比に基づいて各気筒の空燃比のバラツキを減少させるように、前記多気筒内燃機関の各気筒に供給する気筒別燃料噴射量を補正する気筒別空燃比補正係数を算出する空燃比補正係数算出手段とを備えた内燃機関の燃料噴射量制御装置において、前記多気筒内燃機関の運転状態に応じたサンプリングタイミングで前記空燃比推定手段からの空燃比を入力することによって気筒別の空燃比を推定すると共に、前記サンプリングタイミングを前記排気還流機構の動作の有無に応じて調整するタイミング調整手段を具備する構成にした。
【０００７】
【作用】
本発明の内燃機関の燃料噴射量制御装置にあっては、タイミング調整手段が、多気筒内燃機関の運転状態に応じたサンプリングタイミングで空燃比推定手段からの空燃比を入力することにより気筒別の空燃比を推定し、排気還流機構の動作により排気還流がなされるときと非動作により排気還流がなされるときとに応じて、該サンプリングタイミングを調整する。
【０００８】
【実施例】
本発明による内燃機関の燃料噴射制御装置の一実施例を図面と共に説明する。尚、典型例として４気筒内燃機関に適用されるものを説明する。
【０００９】
図１は、この燃料噴射制御装置の全体構成を示す概略図である。同図において、吸気管１２の先端に設けられたエアクリーナ１４から導入される吸気が、スロットル弁１６で流量調節されつつサージタンク１８及び吸気マニホールド２０を通り、更に気筒毎の吸気弁（図示せず）を介して、４気筒内燃機関１０の各気筒に流入される。
【００１０】
各気筒の上記吸気弁の近傍には、燃料噴射用のインジェクタ２２が設けられ、吸気と噴射燃料との混合気が、気筒毎に設けられている点火プラグ（図示せず）で点火されて燃焼し、各ピストン（図示せず）を駆動する。
【００１１】
燃焼後の排気ガスは、各気筒の排気弁（図示せず）を介して排気マニホールド２４に排出され、更に排気マニホールド２４の集合部に連結された排気管２６を経て第１の三元触媒装置２８と第２の三元触媒装置３０で清浄化されて機関外に排出される。
【００１２】
スロットル弁１６は、アクセルペダルの踏み込み量等の運転状況に応じて回転するパルスモータＭにより駆動制御され、吸気管１２のスロットル弁１６近傍には、電磁弁３２の開閉量に応じて２次空気量を制御するバイパス路３４が併設されている。尚、スロットル弁１６は一般的に知られている機構と同様に、アクセルペダルと機械的に連動するものであっても良い。
【００１３】
また、内燃機関１０には、電磁弁（図示せず）の開閉量を制御することにより排気ガスの一部を吸気系へ環流させる排気環流機構（ＥＧＲ機構）１００と、燃料タンク３８内で発生する蒸発燃料（パージガス）を電磁弁（図示せず）の開閉量に応じて吸気系へ供給するキャニスタパージ機構２００が設けられている。
【００１４】
更に、内燃機関１０には、特開平２−２７５０４３号公報等に開示されているいわゆる可変バルブタイミング機構３００が備えられており、機関回転数Ｎｅ及び吸気系における吸気圧力Ｐｂ等の運転状態を示すパラメータに応じて、内燃機関１０のバルブタイミングＶ／Ｔが２種類のタイミング特性ＬｏＶ／ＴとＨｉＶ／Ｔの間で可変制御される。
【００１５】
更に、内燃機関１０のディストリビュータ（図示せず）内にはピストン（図示せず）のクランク角度位置を検出するクランク角検出センサ４０が設けられ、スロットル弁１６の近傍にはそのスロットル開度θＴＨを検出するスロットル開度検出センサ４２が設けられ、吸気管１２にはスロットル弁１６の下流側の吸気圧力（絶対圧力）Ｐｂを検出する絶対圧センサ４４とスロットル弁１６の上流側の吸気温度を検出する吸気温度センサ４６とが設けられている。内燃機関１０の適宜の位置には、大気圧Ｐａを検出する大気圧センサ４８と機関冷却水の温度Ｔｗを検出する水温センサ５０が設けられている。尚、図１中には示されていないが、可変バルブタイミング機構３００中には、選択バルブタイミング特性を検出する検出センサ５２が設けられている。そして、これらのセンサ４０〜５２の検出信号は制御ユニット３６に逐一供給される。
【００１６】
排気管２６において、三元触媒装置２８の上流側の部位には、第１の空燃比検出手段としての広域空燃比センサ５４が装着され、三元触媒装置２８，３０の間には、第２の空燃比検出手段としてのＯ２  センサ５６が装着されている。
【００１７】
広域空燃比センサ５４には、本特許出願人が先に行った特開平２−１１８４２号公報等に開示されているＬＡＦセンサが適用され、このＬＡＦセンサ５４は、リーンからリッチにわたる広範囲において排気ガス中の酸素濃度をリニアに検出することができる広域特性を有している。そして、このＬＡＦセンサ５４とＯ２  センサ５６の各検出信号は、それぞれ所定カットオフ周波数に設定されたローパスフィルタ５８，６０を介して制御ユニット３６に供給される。
【００１８】
次に、図２の回路ブロック図に基づいて、制御ユニット３６のシステム構成を説明する。制御ユニット３６は、マイクロプロセッサ６２と各種入出力ポートとを備え、中央制御部（以下、ＣＰＵコアと呼ぶ）６４が、ＲＯＭ７６によりファームウェア化されている種々のアプリケーションプログラムを実行することにより、後述するフィードフォワード制御及びフィードバック制御を行うようになっている。
【００１９】
ＬＡＦセンサ５４の検出信号は上記ローパスフィルタ５８を介して第１の検出回路６６へ入力され、検出回路６６はこの検出信号について所定の線型化処理を行うことにより、リーンからリッチにわたる広範囲における排気ガス中の酸素濃度に比例したリニアな空燃比（Ａ／Ｆ）を求めて、マルチプレクサ６８へ出力する。Ｏ２  センサ５６からの検出信号は上記ローパスフィルタ６０を介して第２の検出回路７０に入力され、検出回路７０はこの検出信号値を図３に示す如き特性曲線に適応することにより、内燃機関１０に供給された混合気の空燃比が理論空燃比（λ＝１）に対してリッチかリーンかを示す信号を発生してマルチプレクサ６８へ出力する。また、前記各センサ４２〜５２からの検出信号もマルチプレクサ６８に供給される。そして、各信号は、所定の切換えタイミングに同期してチャンネル切換えを行うマルチプレクサ６８を介してＡ／Ｄ変換器７２へ時分割転送されてデジタルデータに変換され、ランダムアクセスメモり（ＲＡＭ）７４の所定バッファ領域に格納されたり、ＣＰＵコア６４の演算に供される。尚、この実施例では、Ａ／Ｄ変換器７２は、所定のクランク角度（例えば、１５度）毎に第２の検出回路７０からの検出信号をＡ／Ｄ変換する。
【００２０】
更に、クランク角センサ４０からの検出信号は、波形整形回路７８で２値論理の矩形信号に波形整形された後、カウンタ８０において計数され、その計数値もＲＡＭ７４の所定バッファ領域に格納されたり、ＣＰＵコア６４の演算に供される。
【００２１】
読出し専用メモリ（ＲＯＭ）７６には、上記種々のアプリケーションプログラムや、前述のタイミング特性ＬｏＶ／ＴとＨｉＶ／Ｔのマップデータ、後述する種々の検索用マップデータが予め記憶され、ＣＰＵコア６４が、ＲＡＭ７４とＲＯＭ７６の各種データを適用しつつ上記のアプリケーションプログラムを実行することにより運転状態に応じた最適燃料噴射制御条件を求め、各駆動回路８２〜８８を介してインジェクタ２２、電磁弁３２、排気環流機構（ＥＧＲ機構）１００の前記電磁弁１０２、及びキャニスタパージ機構２００の前記電磁弁２０２を制御する。
【００２２】
図４は本実施例に係わる燃料噴射制御装置の機能を示すブロック線図であり、内燃機関１０に対する吸気系の特性を補償するためのフィードフォワード制御系と、３系統のフィードバック制御系が備えられ、前記の各種アプリケーションプログラムが実行されることによって、かかるブロック線図と等価な制御機能が発揮される。
【００２３】
即ち、図５に示すメインフローチャートの如く、ステップＳ４００において、機関回転数Ｎｅ、吸気圧力Ｐｂ、スロットル開度θＴＨ、冷却水温度Ｔｗ等の最新の各種センサ出力をＲＡＭ７４へ読込み、ステップＳ５００において上記フィードフォワード制御系の演算処理を行うことによって基本燃料噴射量ＴｉＭ−Ｆを決定し、ステップＳ６００において第１のフィードバック系の演算処理を行うことによって、目標空燃比ＫＣＭＤと目標空燃比補正係数ＫＣＭＤＭ  等を求め、ステップＳ７００において第２のフィードバック系の演算処理を行うことによって、適応型フィードバック制御のための補正係数ＫＳＴＲとＫＬＡＦ等を求め、ステップＳ８００において第３のフィードバック系の演算処理を行うことによって気筒別空燃比補正係数＃ｎＫＬＡＦを求め、ステップＳ９００において、基本燃料噴射量ＴｉＭ−Ｆに目標空燃比補正係数ＫＣＭＤＭ  と各補正係数ＫＳＴＲ又はＫＬＡＦと＃ｎＫＬＡＦを乗算等することによって、最終的な気筒別の出力燃料噴射量＃ｎＴｏｕｔ  を決定してインジェクタ２２を駆動するようになっている。尚、添字＃ｎは各気筒を示し、出力燃料噴射量＃ｎＴｏｕｔ  は、各気筒のインジェクタ２２の開弁時間を規定するものである。更に、このメインフローチャートの処理は、ＴＤＣに同期して行われる。
【００２４】
次に、各ブロック毎に機能を説明する。先ず、フィードフォワード制御系（図４中に「ＦＦＣ」と示す）は、本出願人が先に提案した特願平６−１９７２３８号に開示されているので簡単に述べると、吸気系におけるスロットル弁１６の下流から各気筒の吸入ポートまでの全ての実効容積（吸気管１２の該当部分とサージタンク１８等を含むチャンバ）についての流体力学モデル（数学モデル）等を構築し、スロットル開度θＴＨと吸気圧力Ｐｂをこの流体力学モデルに適用することにより、定常運転状態のみならず過渡運転状態をも含めた全ての運転状態における最適な基本燃料噴射量ＴｉＭ−Ｆを決定する。
【００２５】
図６は基本燃料噴射量ＴｉＭ−Ｆの演算ルーチン（図５のステップＳ５００に対応する）を示すフローチャート、図７はこの演算ルーチンを説明するブロック線図であり、更にこれらの図に基いてフィードフォワード制御系の機能を説明する。ステップＳ５０２において機関が始動状態にあるか否か判断し、肯定されるときはステップＳ５０４において始動モードに対応する基本燃料噴射量ＴｉＭ−Ｆを設定し、否定されるときはステップＳ５０６においてフューエルカット状態にあるか否か判断する。ここで肯定されるときはステップＳ５０８において燃料カット用の基本燃料噴射量ＴｉＭ−Ｆ（＝０）を設し、否定されるときは通常の運転状態に対応する基本燃料噴射量を設定すべくステップＳ５１０以降の処理へ移る。
【００２６】
ステップＳ５１０では、機関回転数Ｎｅと吸気圧力ＰｂをパラメータとしてＲＯＭ７６の所定マップを検索することにより、定常運転状態時の燃料噴射量（基準値）ＴｉＭを求める。即ち、予めスピードデンシティ方式に基づいて機関回転数Ｎｅと吸気圧力Ｐｂをパラメータとする燃料噴射量ＴｉＭが求められ、かかる燃料噴射量ＴｉＭがＲＯＭ７６にマップデータとして格納されている。
【００２７】
ステップＳ５１２では、スロットル開度θＴＨの値を一次遅れ伝達関数（１−Ｂ）／（Ｚ−Ｂ）に適応することによって、スロットル開度θＴＨの一次遅れ値θＴＨ−Ｄを演算する。即ち、過渡運転状態時には、スロットル開度θＴＨの変化が直接的に吸気ポートの吸入空気量に対応しないので、一次遅れ値θＴＨ−Ｄをもって近似することにしている。尚、伝達関数中のＢは係数である。
【００２８】
ステップＳ５１４においては、図７に示す如く、予めＲＯＭ７６に格納されているマップを検索することにより、スロットル開度θＴＨに対応するスロットル投影面積（吸気管長手方向へのスロトル投影面積）Ｓと、スロットル開度θＴＨ及び吸気圧力Ｐｂに対応する補正係数（流量係数αと気体の膨張補正係数εの積）Ｃを求め、スロットル投影面積Ｓに補正係数Ｃを乗算することによって、定常運転状態時のスロットル有効開口面積Ａを演算する。
【００２９】
ステップＳ５１６においては、図７に示す如く、予めＲＯＭ７６に格納されているマップを検索することにより、スロットル開度の一次遅れ値θＴＨ−Ｄに対応するスロットル投影面積Ｓと、一次遅れ値θＴＨ−Ｄ及び吸気圧力Ｐｂに対応する補正係数Ｃを求め、このスロットル投影面積Ｓに補正係数Ｃを乗算することによって、過渡運転状態時のスロットル有効開口面積ＡＤＥＬＡＹ  を演算する。
【００３０】
ステップＳ５１８においては、バイパス路３４の開口断面ＡＢＹＰＡＳＳをも考慮して、
【００３１】
【数１】
0003594681.tif 000002
【００３２】
により、定常運転状態時の有効開口面積Ａと過渡運転状態時の有効開口面積ＡＤＥＬＡＹ  との比ＲＡＴＩＯ−Ａ  を演算する。
【００３３】
ステップＳ５２０においては、燃料噴射量ＴｉＭに比ＲＡＴＩＯ−Ａ  を乗算することによって、定常運転状態時及び過渡運転状態時に適応する燃料噴射量ＴｉＭ−Ｆ’を求める。即ち、比ＲＡＴＩＯ−Ａ  の値は、定常運転状態では１となり、過渡運転状態では１を除く或る値になるので、定常運転状態と過渡運転状態との両者に対応するものである。よって、燃料噴射量ＴｉＭに比ＲＡＴＩＯ−Ａ  を乗算することによって、定常運転状態時及び過渡運転状態時に適応する燃料噴射量ＴｉＭ−Ｆ’が求まる。
【００３４】
ステップＳ５２２においては、機関回転数Ｎｅと吸気圧力Ｐｂ、吸気温度及び冷却水温度Ｔｗ、パージガス濃度ＰＵＧ、排気ガスの還流率等のパラメータに基づいて、ＲＯＭ７６の所定マップを検索することにより補正係数ＫＴＯＴＡＬを求め、更に、燃料噴射量ＴｉＭ−Ｆ’に補正係数ＫＴＯＴＡＬを乗算することにより、ＥＧＲ機構１００とキャニスタパージ機構２００の影響を補償した基本燃料噴射量ＴｉＭ−Ｆを決定する。
【００３５】
このように、このフィードフォワード制御系は、運転状態の変化に伴ってシリンダ流入空気量が変動しても、スロットル開度θＴＨと吸気圧力Ｐｂからそのシリンダ流入空気量に対応する最適な基本燃料噴射量ＴｉＭ−Ｆを決定する。
【００３６】
次に、第１のフィードバック系を説明する。このフィードバック系は、図４中の「ＫＣＭＤ」と「ＫＣＭＤ補正」及び「ＫＣＭＤＭ］で示す機能ブロックを備え、図８に示すフローチャート（図５のステップＳ６００に対応する）に従って演算処理を行う。
【００３７】
先ず、図８のステップＳ６０２において、機関回転数Ｎｅと吸気圧力ＰｂをパラメータとしてＲＯＭ７６の所定マップを検索することにより、空燃比の基本値ＫＢＳを求める。即ち、この基本値ＫＢＳは、機関回転数Ｎｅと吸気圧力Ｐｂをパラメータとして、定常運転状態時にＯ２  センサ５６の出力から求めることができる空燃比のデータであり、予めＲＯＭ７６に格納されている。尚、このマップにはアイドル運転状態時に対応する基本値も格納されている。更に、機関の低負荷時にその機関へ供給する空燃比を大きく（当量比で言えば小さく）して燃焼特性を向上させるための所謂リーンバーン機関にあっては、リーンバーン用の基本値も格納されている。
【００３８】
ステップＳ６０４においては、内蔵されているタイマ回路（図示せず）の値を参照することにより、機関始動後のリーンバーン制御が実行されているか否かを判定し、リーンバーン制御期間であれば、リーン補正係数を例えば０．８９、そうでない場合には１．０とする。
【００３９】
かかる判定を行うのは次の理由による。本実施例に係る内燃機関１０には可変バルブタイミング機構３００が設けられており、始動後のクランキング期間（始動期間）では、各気筒の吸気弁の一方の動作を休止させることによって、目標空燃比を理論空燃比よりもややリーン側に設定するリーンバーン制御を行い、この結果、触媒装置が未だ活性化していない始動期間であっても、炭化水素（ＨＣ）の増加を抑制することができるという効果を発揮させるようにしているからである。尚、気筒毎に２個の吸気弁を有している通常の内燃機関（可変バルブタイミング機構を備えない内燃機関）にあっては、機関始動後に目標空燃比をリーン側に設定すると、機関内の燃焼が不安定となって失火を招来することとなるが、かかる可変バルブタイミング機構３００を備えた本実施例の内燃機関にあっては、吸気弁の一方を休止させることに伴って燃焼室内に所謂スワールと呼ばれる渦流ができるので、機関の始動直後にリーン化を行っても安定した燃焼が得られる。ステップＳ６０６において、スロットル開度が全開（ＷＯＴ）であるか否か判定し、この判定結果に応じて全開増量補正値を算出し、更にステップＳ６０８において、冷却水温度Ｔｗが高いか否か判定し、この判定結果に応じて増量補正係数ＫＴＷＯＴ  を演算する。尚、この増量補正係数ＫＴＷＯＴ  には、高水温時の機関保護のための補正係数値も含まれる。
【００４０】
ステップＳ６１０では、補正係数ＫＴＷＯＴ  を基本値ＫＢＳに乗算することによってその基本値ＫＢＳを補正すると共に、数２に示す演算によって目標空燃比ＫＣＭＤを決定する。即ち、図３に示す如く、理論空燃比近傍のＯ２  センサ５６の出力が線形特性を備える範囲内（縦軸に破線で示す）において、空燃比の微小制御を行うためのウインドウ（以下、ＤＫＣＭＤ−ＯＦＦＳＥＴとする）を設定した後、補正後の上記基本値ＫＢＳにこのウインドウ値ＤＫＣＭＤ−ＯＦＦＳＥＴを加算することにより、目標空燃比ＫＣＭＤを求める。
【００４１】
【数２】
0003594681.tif 000003
【００４２】
次に、ステップＳ６１２において、目標空燃比ＫＣＭＤ（ｋ）  （ここで、ｋは時刻）のリミット処理を行った後、ステップＳ６１４において、その目標空燃比ＫＣＭＤ（ｋ）  が１ないしその付近の値にあるか否かを判断し、肯定されるときはステップＳ６１６において、Ｏ２  センサ５４の活性化判断を行う。尚、この活性化判断は、図示しない別ルーチンで実行され、Ｏ２  センサ５６の検出信号の電圧変化を検出することで行う。
【００４３】
次に、ステップＳ６１８において、ＭＩＤＯ２  制御用の値ＤＫＣＭＤ  を演算する。ここで、ＭＩＤＯ２  制御とは、三元触媒装置２８の下流側のＯ２  センサ５６の出力により上流側のＬＡＦセンサ５４の目標空燃比ＫＣＭＤ（ｋ）  を可変とする作業を意味する。詳しくは図３に示す如く、所定の比較電圧ＶｒｅｆＭとＯ２  センサ５６の出力電圧ＶＯ２Ｍの偏差にＰＩＤ制御則を用いて値ＤＫＣＭＤ  を算出することで行う。尚、比較電圧ＶｒｅｆＭは、大気圧Ｐａ、水温Ｔｗ、排気ボリューム（機関回転数Ｎｅおよび吸気圧力Ｐｂより求めることが可能）などに応じて求められる。
【００４４】
更に、上記のウインドウ値ＤＫＣＭＤ−ＯＦＦＳＥＴは、三元触媒装置２８，３０の浄化率を最適状態に維持するために付加されるオフセット値であり、触媒装置固有の特性に起因して相違するので、三元触媒装置２８の特性を勘案して決定される。また、ウインドウ値ＤＫＣＭＤ−ＯＦＦＳＥＴは、触媒装置２８，３０の経年劣化によっても変化することから、値ＤＫＣＭＤ  の毎回の算出値を用いて加重平均により学習する。具体的には、
【００４５】
【数３】
0003594681.tif 000004
【００４６】
の演算式により求められる。ここで、Ｗは重み係数、ｋは時刻であり、より具体的には制御サイクルを示す。即ち、目標空燃比ＫＣＭＤをウインドウ値ＤＫＣＭＤ−ＯＦＦＳＥＴの前回算出値で学習演算することにより、触媒装置２８，３０の経年劣化の影響を受けることなく、それらの浄化率が最適となる空燃比にフィードバック制御するようにしている。
【００４７】
次に、ステップＳ６２０において、上記算出した値ＤＫＣＭＤ（ｋ）に目標空燃比ＫＣＭＤ（ｋ）  を加算して、新たな目標空燃比ＫＣＭＤ（ｋ）  を設定（更新）し、次に、ステップＳ６２２において、更新後の目標空燃比ＫＣＭＤ（ｋ）  に基づいてＲＯＭ７６中の所定テーブルを検索することにより、補正係数ＫＥＴＣを求める。補正係数ＫＥＴＣは、気化熱で吸入空気の充填効率が相違するのを補償するためにある。具体的には、求めた補正係数ＫＥＴＣに目標空燃比ＫＣＭＤ  （ｋ）を乗算することにより、補正された（更新された）目標空燃比補正係数ＫＣＭＤＭ（ｋ）を算出する。即ち、この制御においては目標空燃比を当量比で示すと共に、それに充填効率補正を施した値を目標空燃比補正係数ＫＣＭＤＭ（ｋ）としている。
【００４８】
尚、上記ステップＳ６１４で否定されるときは、制御すべき目標空燃比ＫＣＭＤ（ｋ）  が理論空燃比に対して大きくずれているときであり、例えばリーンバーン運転状態時であることから、直ちにステップＳ６２２へジャンプする。
【００４９】
最後にステップＳ６２４において、目標空燃比補正係数ＫＣＭＤ（ｋ）  のリミット処理を行い、そして、図４に示すように、フィードフォワード制御系からの基本燃料噴射量ＴｉＭ−Ｆに目標空燃比補正係数ＫＣＭＤＭ（ｋ）を乗算することにより、要求燃料噴射量Ｔｃｙｌ  を算出する。
【００５０】
このように、第１のフィードバック系の機能は、定常運転状態における空燃比の基本値ＫＢＳについてＯ２  センサ５６の出力に基づく上記所定の補正処理を行うことによって、目標空燃比ＫＣＭＤと目標空燃比補正係数ＫＣＭＤＭ  を求めると共に、基本燃料噴射量ＴｉＭ−Ｆに目標空燃比補正係数ＫＣＭＤＭ  を乗算することにより、触媒装置に対する理想的な空燃比を設定し得る要求燃料噴射量Ｔｃｙｌ  を算出する。
【００５１】
次に、第２のフィードバック系を説明する。このフィードバック系は、図４中の「ＳＴＲ」で示す適応型制御器と、「ＰＩＤＣ」で示すＰＩＤ制御器と、「切替ＳＷ」で示す切替機構を備え、以下に述べるこれらの機能は、ＣＰＵコア６４による所定アプリケーションプログラムの実行によって実現される。尚、このフィードバック系は、特願平６−３４００２１号に詳細に開示されているので、ここではその概略を説明する。
【００５２】
このフィードバック系は、前記フィードフォワード系で演算された基本燃料噴射量ＴｉＭに目標空燃比補正係数ＫＣＭＤＭ  を乗算することにより要求燃料噴射量Ｔｃｙｌ  を求めただけでは、内燃機関１０の応答遅れ等に起因して目標空燃比ＫＣＭＤが鈍された空燃比となってしまうので、目標空燃比ＫＣＭＤから空燃比の応答を動的に補償する目的で、適応制御器ＳＴＲを用いてフィードバック補正係数ＫＳＴＲを求め、このフィードバック補正係数ＫＳＴＲにより要求燃料噴射量Ｔｃｙｌ  を更に補正するようにしている。更に、適応制御器ＳＴＲは制御の応答性が比較的高いので、運転状態に応じて目標空燃比ＫＣＭＤが大きく変動するような場合には却って制御量が発振して制御の安定性が低下するという問題を招来することから、制御が不安定となるような場合には、ＰＩＤ制御器ＰＩＤＣにより求めたフィードバック補正係数ＫＬＡＦで要求燃料噴射量Ｔｃｙｌ  を補正する。そして、運転状態に応じてこれらのフィードバック補正係数ＫＳＴＲとＫＬＡＦを切換えて適用するために、切換機構が設けられている。更に、異なる制御則に基づいて決定されたフィードバック補正係数を切り換えるときは、それぞれの特性が異なることから、補正係数に段差が生じて操作量が急変し、制御量が不安定となって制御の安定性が低下する恐れがあるので、切換機構は、その切り換えを滑らかに実行することによって、フィードバック補正係数に不連続を生じないようにしている。
【００５３】
先ず、ＰＩＤ制御器ＰＩＤＣは、サンプリング動作ブロック（図中に「ｓｅｌ−Ｖ」と示す）で推定される排気系集合部の空燃比（以下、検出空燃比ＫＡＣＴと呼ぶ）に基づいて目標空燃比ＫＣＭＤを動的に補償する。ここで、サンプリング動作ブロックｓｅｌ−Ｖは、ＬＡＦセンサ５４の検出信号から上記検出空燃比ＫＡＣＴを演算する機能を有しており、後述する第３のフィードバック系においても、この検出空燃比ＫＡＣＴを用いて所定のフィードバック制御を行うようになっている。尚、サンプリング動作ブロックｓｅｌ−Ｖの詳細は第３のフィードバック系と共に説明することとする。
【００５４】
ＰＩＤ制御器ＰＩＤＣの処理を述べると、先ず、目標空燃比ＫＣＭＤと検出空燃比ＫＡＣＴの制御偏差ＤＫＡＦを、
【００５５】
【数４】
0003594681.tif 000005
【００５６】
と求める。尚、ｄ’はＫＣＭＤがＫＡＣＴに反映されるまでの無駄時間を示す。よって、ＫＣＭＤ（ｋ−ｄ’）は無駄時間制御周期前の目標空燃比を示す。ＫＡＣＴ（ｋ）  は今回制御周期の検出空燃比を示す。また、この明細書での空燃比は、目標値ＫＣＭＤも検出値ＫＡＣＴも実際には当量比、即ち、Ｍｓｔ／Ｍ＝１／λで示している（Ｍｓｔは理論空燃比、Ｍは空気消費量Ａと燃料消費量Ｆの比Ａ／Ｆ、λは空気過剰率）。
【００５７】
次いで、それに所定の係数を乗じてＰ項ＫＬＡＦＰ（ｋ）、Ｉ項ＫＬＡＦＩ（ｋ）、及びＤ項ＫＬＡＦＤ（ｋ）を、
【００５８】
【数５】
0003594681.tif 000006
【００５９】
と求める。
【００６０】
このように、Ｐ項は偏差ＤＫＡＦ（ｋ）  に比例ゲインＫＰを乗じて求め、Ｉ項は偏差に積分ゲインＫＩを乗じて得た値をフィードバック補正係数の前回値ＫＬＡＦ（ｋ）  に加算することによって求め、Ｄ項は偏差の今回値ＤＫＡＦ（ｋ）  と前回値ＤＫＡＦ（ｋ−１）  の差に微分ゲインＫＤを乗じることによって求める。尚、各ゲインＫＰ，ＫＩ，ＫＤは、機関回転数Ｎｅと吸気圧力Ｐｂをパラメータとして所定のマップ検索により求められる。更に、数６に示す如く、これらの値を合算し、更にオフセット分１．０を加算することにより、ＰＩＤ制御器ＰＩＤＣのＰＩＤ制御則によるフィードバック補正係数の今回値ＫＬＡＦ（ｋ）  を求める。
【００６１】
【数６】
0003594681.tif 000007
【００６２】
次に、適応制御器ＳＴＲの機能を図９に基づいて説明する。適応制御器ＳＴＲは、ＳＴＲコントローラとパラメータ調整機構とを有し、ＳＴＲコントローラは、第１のフィードバック系からの目標空燃比ＫＣＭＤ（ｋ）  と前記サンプリング動作ブロック（ｓｅｌ−Ｖ）からの検出空燃比ＫＡＣＴ（ｋ）  とを入力すると共に、ランダウらの提案したパラメータ調整則（機構）によって同定された係数ベクトルを受け取って適応デジタル信号処理を行うことにより、フィードバック補正係数ＫＳＴＲ（ｋ）  を算出する。換言すれば、漸化式を用いてフィードバック補正係数ＫＳＴＲ（ｋ）  を算出する。
【００６３】
この手法によれば、いわゆる適応システムを線形ブロックと非線形ブロックとから構成される等価フィードバック系に変換し、非線形ブロックについては入出力に関するポポフの積分不等式が成立し、線形ブロックは強正実となるように調整則を決めることによって、適応システムの安定が保証されることとなる。尚、かかる手法は、例えば、「コンピュートロール」（コロナ社刊）Ｎｏ．２７．２８頁〜４１頁、ないし「自動制御ハンドブック」（オーム社刊）７０３頁〜７０７頁に記載されている。
【００６４】
このランダウらの調整則を用いた適応制御技術を以下説明すると、ランダウらの調整則では、離散系の制御対象の伝達関数Ａ（Ｚ−１）／Ｂ（Ｚ−１）の分母分子の多項式を数７で▲１▼▲２▼のようにおいたとき、適応パラメータθハット  （ｋ）および適応パラメータ調整機構への入力ζ（ｋ）  は、数７で▲３▼▲４▼のように定められる。数７では、ｍ＝１，ｎ＝１，ｄ＝３の場合、即ち、１次系で３制御サイクル分の無駄時間を持つプラントを例にとった。ここでのｋは時刻、より具体的には、制御サイクルを示す。
【００６５】
【数７】
0003594681.tif 000008
【００６６】
ここで適応パラメータθハット  （ｋ）は、数８で表される。また数８中のΓ（ｋ）  およびｅアスタリスク（Ｋ）  は、それぞれゲイン行列および同定誤差信号であり、数９および数１０のような漸化式で表される。
【００６７】
【数８】
0003594681.tif 000009
【００６８】
【数９】
0003594681.tif 000010
【００６９】
【数１０】
0003594681.tif 000011
【００７０】
また数９中のλ１（ｋ），λ２（ｋ）の選び方により、種々の具体的なアルゴリズムが与えられる。λ１（ｋ）＝１，λ２（ｋ）＝λ（０＜λ＜２）とすると漸減ゲインアルゴリズム（λ＝１の場合には最小自乗法）、λ１（ｋ）＝λ１（０＜λ１＜１）、λ２（ｋ）＝λ２（０＜λ２＜λ）  とすると可変ゲインアルゴリズム（λ２＝１の場合には重み付き最小自乗法）、λ１（ｋ）／λ２（ｋ）＝σとおき、λ３が数１１のように表されるとき、λ１（ｋ）＝λ３とおくと固定トレースアルゴリズムとなる。またλ１（ｋ）＝１，λ２（ｋ）＝０のとき固定ゲインアルゴリズムとなる。この場合は数９から明らかな如く、Γ（ｋ）  ＝Γ（ｋ−１）  となり、よってΓ（ｋ）  ＝Γの固定値となる。
【００７１】
【数１１】
0003594681.tif 000012
【００７２】
ここで、図９にあっては、前記したＳＴＲコントローラ（適応制御器）と適応パラメータ調整機構とは燃料噴射量演算系の外におかれ、検出空燃比ＫＡＣＴ（ｋ）が目標空燃比ＫＣＭＤ（ｋ−ｄ’）（ここでｄ’は前述の如くＫＣＭＤがＫＡＣＴに反映されるまでの無駄時間）に適応的に一致するように動作してフィードバック補正係数ＫＳＴＲ（ｋ）  を演算する。即ち、ＳＴＲコントローラは、適応パラメータ調整機構によって適応的に同定された係数ベクトルθハット（ｋ）  を受け取って目標空燃比ＫＣＭＤ（ｋ−ｄ’）に一致するようにフィードバック補償器を形成する。
【００７３】
このように、フィードバック補正係数ＫＳＴＲ（ｋ）  および検出空燃比ＫＡＣＴ（ｋ）  が求められて適応パラメータ調整機構に入力され、そこで適応パラメータθハット（ｋ）  が算出されてＳＴＲコントローラに入力される。ＳＴＲコントローラには入力として目標空燃比ＫＣＭＤ（ｋ）  が与えられ、検出空燃比ＫＡＣＴ（ｋ）  が目標空燃比ＫＣＭＤ（ｋ）  に一致するように漸化式を用いて数１２に示すフィードバック補正係数ＫＳＴＲ（ｋ）  を算出する。
【００７４】
【数１２】
0003594681.tif 000013
【００７５】
演算されたフィードバック補正係数ＫＳＴＲ（ｋ）  は、切換機構を介して要求燃料噴射量Ｔｃｙｌ  に乗算され、その補正された燃料噴射量Ｔｃｙｌ  ’が更に後述する第３のフィードバック制御系の気筒別空燃比補正係数＃ｎＫＬＡＦで補正されることにより、気筒別出力燃料噴射量＃ｎＴｏｕｔ  が求められる。
【００７６】
尚、切換機構は、所定の切換えフラグＦＫＳＴＲ  に同期して切換え処理し、目標空燃比ＫＣＭＤが大きく変動するような運転状態にあっては、フィードバック補正係数ＫＬＡＦ（ｋ）  を切換え選択して要求燃料噴射量Ｔｃｙｌ  に乗算し、目標空燃比ＫＣＭＤが大きく変動しない運転状態にあっては、フィードバック補正係数ＫＳＴＲ（ｋ）  を切換え選択して、要求燃料噴射量Ｔｃｙｌ  に乗算する。即ち、要求燃料噴射量Ｔｃｙｌ  は、フィードバック補正係数ＫＳＴＲ又はＫＬＡＦにより補正される。
【００７７】
次に、第３のフィードバック系を説明する。このフィードバック系は基本的には、サンプリング動作ブロック「ｓｅｌ−Ｖ」が推定する排気系集合部の空燃比、即ち、検出空燃比ＫＡＣＴにオブザーバ（図４中にＯＢＳＶと示す）を適用することにより、気筒別空燃比＃ｎＫＡＣＴを求め、更に、ＰＩＤ制御則（図４中にＰＩＤと示す）により気筒別空燃比＃ｎＫＡＣＴから気筒毎の空燃比補正係数＃ｎＫＬＡＦを算出する。尚、添字＃ｎは各気筒を示す。そして、気筒別空燃比補正係数＃ｎＫＬＡＦを燃料噴射量Ｔｃｙｌ  ’に乗算することによって、各気筒の空燃比を均一化することができる出力燃料噴射量＃ｎＴｏｕｔ  を設定し、ひいては三元触媒２８，３０の排気ガス清浄効率の向上を図るようにしたものである。即ち、この第３のフィードバック系は、空燃比が各気筒でバラツクのをフィードバック補正するものである。まず、このフィードバック系の動作を説明する前に、サンプリング動作ブロック「ｓｅｌ−Ｖ」及びオブザーバについて説明する。
【００７８】
排気ガスは排気行程で排出されることから、多気筒内燃機関１０の排気系集合部において空燃比の挙動をみると、明らかに空燃比はＴＤＣに同期する。従って、排気系の集合部に単一のＬＡＦセンサ５４を設けて空燃比をサンプリングするときもＴＤＣに同期して行う必要があることとなる。しかし、ＬＡＦセンサ５４の検出出力を処理する制御ユニット（ＥＣＵ）３６のサンプルタイミングによっては空燃比の挙動を正確に捉えられない場合が生じる。
【００７９】
即ち、例えば、ＴＤＣに対して排気系集合部の空燃比が図１０のようであるとき、制御ユニット３６で認識する空燃比は図１１に示す如く、サンプリングタイミングによっては全く違った値となってしまう。更に、その空燃比の変化は、排気ガスがＬＡＦセンサ５４に到達するまでの時間やＬＡＦセンサ５４の反応時間によっても相違する。その内、ＬＡＦセンサ５４までの到達時間は排気ガス圧力、排気ガスボリュームなどに依存して変化する。更に、ＴＤＣに同期してサンプリングすることはクランク角度に基づいてサンプリングすることになるので、必然的に機関回転数Ｎｅの影響を受けざるを得ない。このように、空燃比の検出値は機関の運転状態に依存するところが大きい。このような課題を解決するために、サンプリング動作ブロックｓｅｌ−ＶとオブザーバＯＢＳＶが設けられている。
【００８０】
排気系集合部に設けられた単一のＬＡＦセンサ５４の検出信号から各気筒の空燃比を精度良く分離抽出するためには、ＬＡＦセンサ５４の検出応答遅れを正確に解明する必要がある。そこで、図１２に示すように、この遅れを擬似的に１次遅れ系でモデル化すると、その状態方程式は数１３で示すことができる。
【００８１】
【数１３】
0003594681.tif 000014
【００８２】
これを周期ΔＴで離散化すると、数１４で示すようになる。図１３は数１４をブロック線図で表したものである。
【００８３】
【数１４】
0003594681.tif 000015
【００８４】
従って、数１４を用いることによってＬＡＦセンサ５４の検出出力から真の空燃比を求めることができる。即ち、数１４を変形すれば数１５に示すようになるので、時刻ｋのときの値から時刻ｋ−１のときの値を数１６のように逆算することができる。
【００８５】
【数１５】
0003594681.tif 000016
【００８６】
【数１６】
0003594681.tif 000017
【００８７】
具体的には数１５をＺ変換を用いて伝達関数で示せば数１７のようになるので、その逆伝達関数を今回のＬＡＦセンサ５４の検出出力ＬＡＦ（ｋ）  に乗じることによって前回の入力空燃比をリアルタイムに推定することができる。図１４にそのリアルタイムのＡ／Ｆ推定器のブロック線図を示す。
【００８８】
【数１７】
0003594681.tif 000018
【００８９】
続いて、上記の如く求めた真の空燃比に基づいて各気筒の空燃比を分離抽出する手法について説明すると、排気系の集合部の空燃比を各気筒の空燃比の時間的な寄与度を考慮した加重平均であると考え、時刻ｋのときの値を、数１８のように表した。尚、Ｆ（燃料量）を制御量としたため、ここでは『燃空比Ｆ／Ａ』を用いているが、後の説明においては理解の便宜のため、支障ない限り「空燃比」を用いる。尚、空燃比（ないしは燃空比）は、先に数１７で求めた応答遅れを補正した真の値を意味する。
【００９０】
【数１８】
0003594681.tif 000019
【００９１】
即ち、集合部の空燃比は、気筒ごとの過去の燃焼履歴に重みＣ（例えば直近に燃焼した気筒は４０％、その前が３０％．．．など）を乗じたものの合算で表した。このモデルをブロック線図であらわすと、図１５のようになる。
【００９２】
また、その状態方程式は数１９のようになる。
【００９３】
【数１９】
0003594681.tif 000020
【００９４】
また集合部の空燃比をｙ（ｋ）  とおくと、出力方程式は数２０のように表すことができる。
【００９５】
【数２０】
0003594681.tif 000021
【００９６】
上記において、ｕ（ｋ）  は観測不可能のため、この状態方程式からオブザーバを設計してもｘ（ｋ）  は観測することができない。そこで４ＴＤＣ前（即ち、同一気筒）の空燃比は急激に変化しない定常運転状態にあると仮定してｘ（ｋ＋１  ）  ＝ｘ（ｋ−３）  とすると、数２１のようになる。
【００９７】
【数２１】
0003594681.tif 000022
【００９８】
そして、かかるモデルについてシミュレーションすると、モデル出力値がＬＡＦセンサ５４出力の実測値に対して良好に追従するという結果が得られ、上記モデルが多気筒内燃機関の排気系を良くモデル化していることを検証することができた。
【００９９】
よって、数２２で示される状態方程式と出力方程式（数２０）にてｘ（ｋ）  を観察する通常のカルマンフィルタの問題に帰着する。その荷重行列Ｑ，Ｒを数２３のように置いてリカッチの方程式を解くと、ゲイン行列Ｋは数２４のようになる。
【０１００】
【数２２】
0003594681.tif 000023
【０１０１】
【数２３】
0003594681.tif 000024
【０１０２】
【数２４】
0003594681.tif 000025
【０１０３】
これよりＡ−ＫＣを求めると、数２５のようになる。
【０１０４】
【数２５】
0003594681.tif 000026
【０１０５】
ところで、一般的なオブザーバの構成は図１６に示されるようになるが、今回のモデルでは入力ｕ（ｋ）  がないので、図１７に示すようにｙ（ｋ）  のみを入力とする構成となり、これを数式で表すと数２６のようになる。
【０１０６】
【数２６】
0003594681.tif 000027
【０１０７】
ここで、ｙ（ｋ）  を入力するとオブザーバ、即ちカルマンフィルタのシステム行列は数２７のように表される。
【０１０８】
【数２７】
0003594681.tif 000028
【０１０９】
今回のモデルで、リカッチ方程式の荷重配分Ｒの要素：Ｑの要素＝１：１のとき、カルマンフィルタのシステム行列Ｓは、数２８で与えられる。
【０１１０】
【数２８】
0003594681.tif 000029
【０１１１】
図１８に上記したモデルとオブザーバを組み合わせたものを示す。シミュレーションの結果によれば、集合部空燃比より各気筒の空燃比を的確に抽出することができることが検証された。
【０１１２】
このように、オブザーバによって、集合部空燃比Ａ／Ｆ（即ち、Ａ／ＦとはＫＡＣＴと等価である）より各気筒空燃比＃ｎＡ／Ｆを推定することができたことから、ＰＩＤ制御則を用いて空燃比を気筒別に制御するための気筒別空燃比補正係数＃ｎＫＬＡＦを演算することが可能となる。
【０１１３】
具体的には、図１９に示すように、排気系集合部の空燃比（即ち、ＫＡＣＴ）を気筒毎の空燃比補正係数＃ｎ気筒別空燃比の全気筒についての平均値の前回演算値で除算して求めた目標値と、上記オブザーバの気筒毎の推定値＃ｎＡ／Ｆと、の偏差を解消するようにＰＩＤ制御則を用いて求める。即ち、数２９に示す如く、ＰＩＤ制御則に適用する上記目標値ＫＣＭＤＯＢＳＶは、前回ＴＤＣ時に推定された各気筒の空燃比補正係数＃１ＫＬＡＦ〜＃４ＫＬＡＦの平均値で、今回求められた検出空燃比ＫＡＣＴを除算することによって求められる。
【０１１４】
【数２９】
0003594681.tif 000030
【０１１５】
一方、気筒別空燃比補正係数＃ｎＫＬＡＦは、数３０に示すように、各気筒＃ｎ毎に、検出空燃比＃ｎＫＡＣＴ（ｍ）  と目標値ＫＣＭＤＯＢＳＶとの偏差＃ｎＤＫＡＣＴ（ｍ）を求めると共に、今回求められた偏差＃ｎＤＫＡＣＴ（ｍ）と前回求められた偏差＃ｎＤＫＡＣＴ（ｍ−１）との偏差＃ｎＤＤＫＡＣＴを求め、更に、これらの演算結果を適用することによって、各気筒＃ｎに該当するＰＩＤ制御則のＫＰ項とＫＩ項及びＫＤ項を求め、最後に、これらのＫＰ項とＫＩ項及びＫＤ項を適用して、気筒別空燃比補正係数＃ｎＫＬＡＦを求める。尚、＃ｎは各気筒＃１〜＃４を示し、ｍは、４ＴＤＣ毎の時点を示す。即ち、気筒別空燃比補正係数＃ｎＫＬＡＦは、それぞれ４ＴＤＣに１回演算される。尚、次式中、基準ゲインであるＫＰＯＢＳＶ項とＫＩＯＢＳＶ項及びＫＤＯＢＳＶ項は、機関がアイドリング動作のときと、それ以外の動作時とでは、それぞれ異なった値に設定され、ＲＯＭ７６に予めデータマップとして格納されているので、かかる演算の際に運転状態に応じてマップ検索されるようになっている。
【０１１６】
【数３０】
0003594681.tif 000031
【０１１７】
これにより、各気筒の空燃比は集合部空燃比に収束し、集合部空燃比は目標空燃比に収束することとなって、結果的に全ての気筒の空燃比が目標空燃比に収束する。ここで、各気筒の出力燃料噴射量＃ｎＴｏｕｔ  （インジェクタの開弁時間で規定される）は、
【０１１８】
【数３１】
0003594681.tif 000032
【０１１９】
で求められる（ｎは気筒）。
【０１２０】
以上の説明では、サンプリング動作ブロックｓｅｌ−Ｖとオブザーバ及び第３のフィードバック系との基本原理を述べたが、より具体的な動作を図２０及び図２１のフローチャートと共に説明する。
【０１２１】
先ず、図２０のフロー・チャートに基づいて、排気系集合部の空燃比Ａ／Ｆ  （即ち、ＫＡＣＴ）を求めるまでの動作を説明する。尚、この処理は、実際には、図５に示すルーチン中のステップＳ４００の中で予め実行されることにより、ステップ７００及びステップＳ８００の処理で検出空燃比ＫＡＣＴ及び推定値＃ｎＡ／Ｆを用いることができるようになっている。
【０１２２】
図２０において、Ｓ４０２では、機関回転数Ｎｅ、吸気圧力Ｐｂ、バルブタイミングＶ／Ｔ  を読み出し、次にＳ４０４に進んで、ＨｉＶ／ＴとＬｏＶ／Ｔのタイミングに応じて以降の処理を振り分ける。即ち、運転状態がＬｏＶ／Ｔのときは、ステップＳ４０６〜Ｓ４１８の処理が行われ、運転状態がＨｉＶ／Ｔのときは、ステップＳ４２０〜Ｓ４３２の処理が行われる。
【０１２３】
ステップＳ４０６においては、機関回転数Ｎｅが所定の上限値ＮｅＯＢＳＶ（この実施例では、３５００ｒｐｍ）より小さいか否か判断し、肯定されるときはステップＳ４０８ないしＳ４１０の処理へ移行して、吸気圧力Ｐｂが所定の上限値ＰｂＯＢＳＶ１  と下限値ＰｂＯＢＳＶ２  （この実施例では、ＰｂＯＢＳＶ１  ＝１６０ｍｍＨｇ、ＰｂＯＢＳＶ２  ＝６６０ｍｍＨｇ）の範囲内にあるか否か判断し、肯定されるときはステップＳ４１２の処理へ移行する。
【０１２４】
ステップＳ４１２では、ＥＧＲ機構１００が動作領域中にあるか否か判断し、肯定されるときはＳ４１４において、機関回転数Ｎｅと吸気圧力Ｐｂをパラメータとして図２２（ａ）に示す如き所定のタイミングマップを検索することにより、ＬｏＶ／Ｔ時のＥＧＲ用サンプリングタイミングＳＥＬＶＥＬを求める。一方、ステップＳ４１２で否定されるときは、ＥＧＲ無しのＬｏＶ／Ｔ時のサンプリングタイミングＳＥＬＶＦＬを求める。
【０１２５】
図２３は、図２２（ａ）（ｂ）のタイミングマップの特性を示す説明図である。図示の如く特性は、機関回転数Ｎｅが低くないしは吸気圧力（負圧）Ｐｂが高いほど早いクランク角度でサンプリングされた値を選択するように設定する。ここで、「早い」とは前のＴＤＣ位置により近い位置でサンプリングされた値（換言すれば古い値）を意味する。逆に、機関回転数Ｎｅが高くないしは吸気圧力Ｐｂが低いほど遅いクランク角度、即ち、後のＴＤＣ位置に近いクランク角度でサンプリングされた値（換言すれば新しい値）を選択するように設定する。即ち、ＬＡＦセンサ出力は図１１に示したように、実際の空燃比の変局点に可能な限り近い位置でサンプリングするのが最良であるが、その変局点、例えば最初のピーク値は、センサの反応時間を一定と仮定すれば、図２４に示すように、機関回転数Ｎｅが低くなるほど早いクランク角度で生じる。また、負荷が高いほど排気ガス圧力や排気ガスボリュームが増加し、従って排気ガスの流速が増してＬＡＦセンサ５４への到達時間が早まるものと予想される。そういう意味で、ＥＧＲ機構１００が動作領域にある場合と動作領域に無い場合とで、夫々独立に、図２３のタイミングマップの特性に対応する図２２（ａ）と（ｂ）のデータマップを予めＲＯＭ７６に記憶しておき、ＥＧＲ機構１００が動作領域にあるか否かに応じて、いずれか一方のマップを機関回転数Ｎｅと吸気圧力Ｐｂに基づいてサンプリング動作タイミングを求めるようにしている。
【０１２６】
更に、バルブタイミングＶ／Ｔ  に関しては、機関回転数の任意の値Ｎｅ１をＬｏ側についてＮｅ１−Ｌｏ  、Ｈｉ側についてＮｅ１−Ｈｉ  とし、吸気圧力についてもその任意の値をＬｏ側についてＰｂ１−Ｌｏ  、Ｈｉ側についてＰｂ１−Ｈｉ  とすると、マップ特性は、
Ｐｂ１−Ｌｏ  ＞Ｐｂ１−Ｈｉ
Ｎｅ１−Ｌｏ  ＞Ｎｅ１−Ｈｉ
とする。即ち、ＨｉＶ／Ｔにあっては排気弁の開き時点がＬｏＶ／Ｔのそれより早いため、機関回転数ないし吸気圧力の値が同一であれば、早期のサンプリング値を選択するように、マップ特性が設定されている。
【０１２７】
ステップＳ４０６〜Ｓ４１０で否定される場合には、ステップＳ４１８において、サンプリング動作タイミングＳＥＬＶが所定値に固定される。但し、ステップＳ４１８において、このサンプリングタイミングＳＥＬＶには前回周期の（直前の）サンプリングタイミングを用いてもよい。また、ステップＳ４１８においてサンプリング動作タイミングＳＥＬＶが所定値に固定されても、サンプリング動作ブロックｓｅｌ−Ｖによる排気系集合部の空燃比ＫＡＣＴのサンプリングと後述するオブザーバＯＢＳＶによる気筒別空燃比＃Ａ／Ｆの推定処理は継続して行われる。
【０１２８】
このようにして、ステップＳ４１４，Ｓ４１６，Ｓ４１８のいずれかにおいてＬｏＶ／Ｔタイミング時における運転状態に対応したサンプリング動作タイミングＳＥＬＶＥＬ，ＳＥＬＶＦＬ，ＳＥＬＶのいずれかが求まると、次にステップＳ４３４に進み、オブザーバＯＢＳＶが、いずれかのサンプリング動作タイミングに基づいて排気系集合部の空燃比ＫＡＣＴのサンプリング処理を行う。
【０１２９】
次に、前記ステップＳ４０４においてＨｉＶ／Ｔタイミングであると判断され、ステップＳ４２０〜Ｓ４３２の処理が行われる場合にも、ＬｏＶ／Ｔタイミングの場合と同様の処理が行われる。即ち、ステップＳ４２０〜Ｓ４２４において、機関回転数Ｎｅが所定回転数ＮｅＯＢＳＶ未満にあるか、更に、吸気圧力Ｐｂが所定領域内にあるか否かを判断し、かかる条件を満足する場合には、ステップＳ４２６においてＥＧＲ機構１００が動作領域内にあるか否か判断する。そして、ＥＧＲ機構１００の動作の有無に応じて、ステップＳ４２８又はＳ４３０の処理へ移行し、ステップＳ４２８では、機関回転数Ｎｅと吸気圧力Ｐｂをパラメータとして図２２（ｃ）に示す如き所定のタイミングマップを検索することにより、ＨｉＶ／Ｔ時のＥＧＲ用サンプリングタイミングＳＥＬＶＥＨを求める。一方、ステップＳ４３０では、機関回転数Ｎｅと吸気圧力Ｐｂをパラメータとして図２２（ｄ）に示す如き所定のタイミングマップを検索することにより、ＥＧＲ無しのＨｉＶ／Ｔ時のサンプリングタイミングＳＥＬＶＦＨを求める。尚、図２２（ｃ）（ｄ）の各データマップも図２２（ａ）（ｂ）のデータマップと同様に、図２３の特性に基づいて設定されている。但し、ＬｏＶ／ＴタイミングとＨｉＶ／Ｔタイミングとでは、運転状態が相違するので、夫々運転状態に対応した固有のサンプリング動作タイミングのデータとなっている。
【０１３０】
また、ステップＳ４２０〜Ｓ４２４で否定される場合には、ステップＳ４３２において、サンプリング動作タイミングＳＥＬＶが所定値に固定される。但し、ステップＳ４３２において、このサンプリングタイミングＳＥＬＶには前回周期の（直前の）サンプリングタイミングを用いてもよい。また、ステップＳ４３２においてサンプリング動作タイミングＳＥＬＶが所定値に固定されても、サンプリング動作ブロックｓｅｌ−Ｖによる排気系集合部の空燃比ＫＡＣＴのサンプリングと後述するオブザーバＯＢＳＶによる気筒別空燃比＃Ａ／Ｆの推定処理は継続して行われる。
【０１３１】
このようにして、ステップＳ４２８，Ｓ４３０，Ｓ４３２のいずれかにおいてＨｉＶ／Ｔタイミング時における運転状態に対応したサンプリング動作タイミングＳＥＬＶＥＨ，ＳＥＬＶＦＨ，ＳＥＬＶのいずれかが求まると、次にステップＳ４３４に進み、オブザーバＯＢＳＶが、いずれかのサンプリング動作タイミングに基づいて排気系集合部の空燃比ＫＡＣＴのサンプリング処理を行う。
【０１３２】
以上のステップＳ４０２〜Ｓ４３２の処理が、サンプリング動作ブロックｓｅｌ−Ｖに相当する。従って、図２５の下部に示すように、ＣＰＵコア６４はＬＡＦセンサ５４の最大値と最小値を正確に認識することができる。そして、この構成によりオブザーバＯＢＳＶを用いて各気筒の空燃比＃ｎＡ／Ｆを推定するときも、実際の集合部空燃比ＫＡＣＴの挙動に近似する値を使用することができてオブザーバの推定精度が向上し、それに伴って、気筒別フィードバック制御の信頼性を向上させることができる。更に、前述した第２のフィードバック系にあっても、この排気系空燃比ＫＡＣＴに基づいてＰＩＤ制御則と適応制御則による補正係数ＫＬＡＦとＫＳＴＲを求めることができ、制御の信頼性の向上が図られる。
【０１３３】
次に、図５中のステップＳ８００における気筒別フィードバック制御の動作を図２１のフローチャートに基づいて説明する。尚、本実施例の内燃機関１０にはバルブタイミング機構３００が設けられているので、バルブタイミングＨｉＶ／ＴとＬｏＶ／Ｔに応じて気筒別の空燃比＃ｎＡ／Ｆを推定した後、気筒別フィードバック補正係数＃ｎＫＬＡＦを求めるようになっている。
【０１３４】
図２１において、ステップＳ８０２では、図２０中のステップＳ４３４において求められたＨｉＶ／Ｔ用の排気系集合部の空燃比ＫＡＣＴをオブザーバ行列の演算に適用することにより、ＨｉＶ／Ｔ用の気筒別空燃比＃ｎＡ／Ｆを求め、続いてステップＳ８０４に進んで、ＬｏＶ／Ｔ用の排気系集合部の空燃比ＫＡＣＴをオブザーバ行列の演算に適用することによりＬｏＶ／Ｔ用の気筒別空燃比＃ｎＡ／Ｆを求める。
【０１３５】
続いてＳ８０６に進んで現在のバルブタイミングＶ／Ｔ  を判断し、判断結果に応じてステップＳ８０８または８１０に進んで、ＨｉＶ／Ｔ用またはＬｏＶ／Ｔ用のいずれかの気筒別空燃比＃Ａ／Ｆを選択する。このように、ステップＳ８０２〜Ｓ８１０においては、バルブタイミングＶ／Ｔ  に応じた気筒別空燃比＃ｎＡ／Ｆを求めるために、オブザーバＯＢＳＶによる気筒別空燃比推定処理が行われる。次に、ステップＳ８１２において、ＰＩＤ制御則を用いてこれらの気筒別空燃比＃ｎＡ／Ｆから気筒別フィードバック補正係数＃ｎＫＬＡＦを演算し、更に図５中のステップＳ９００に示した気筒別の出力燃料噴射量＃ｎＴｏｕｔ  を求めて、ＴＤＣ周期のフィードバック制御が完了する。
【０１３６】
このように、この実施例によれば、ＥＧＲ機構１００の動作の有無に応じて、機関回転数Ｎｅと吸気圧力Ｐｂをパラメータとして所定のマップを検索することにより、サンプリング動作ブロックｓｅｌ−Ｖのサンプリングタイミングを最適化するので、排気ガスの挙動に良く追従したサンプリングタイミングで集合部空燃比ＫＡＣＴを求めることができる。より具体的には、従来技術においては、ＥＧＲ機構１００が動作していない状態では、サンプリング動作ブロックｓｅｌ−Ｖのサンプリングタイミングが排気系集合部の排気ガスの挙動と良く一致していたとしても、ＥＧＲ機構１００が動作すると、吸気圧力Ｐｂが高負荷側に移る結果、排気ガスの流速が増してＬＡＦセンサ５４への到達時間が早まり、更に機関回転数Ｎｅが下がるので、サンプリング動作ブロックｓｅｌ−Ｖのサンプリングタイミングが、排気系集合部の排気ガスの挙動からずれることになり、集合部空燃比ＫＡＣＴを高精度でサンプリングすることが困難であったが、この実施例によれば、ＥＧＲ機構１００の動作の有無によって変化する機関回転数Ｎｅと吸気圧力Ｐｂのパラメータに基づいて予め設定されている所定データマップを検索することにより、最適なサンプリング動作タイミングを得るので、排気ガスの挙動に良く追従したサンプリングタイミングで集合部空燃比ＫＡＣＴを求めることができる。結果、オブザーバＯＢＳＶによる気筒別空燃比＃ｎＡ／Ｆを高精度で求めることを可能にすると共に、高精度の気筒別フィードバック制御を実現することができ、排気ガスの浄化効率を向上させることができる。
【０１３７】
【発明の効果】
本発明によれば、排気還流機構の動作の有無に応じて排気ガスが挙動しても、それに追従したサンプリングタイミングで排気系集合部の空燃比をサンプリングすることができる。この結果、オブザーバによる気筒別空燃比の推定精度の向上を図ることができると共に、各気筒に供給する気筒別燃料噴射量を高精度でフィードバック制御することができるので、排気ガスの浄化効率の向上を図ることができるという優れた効果を発揮するものである。
【図面の簡単な説明】
【図１】実施例に係わる内燃機関の燃料噴射装置の全体構成を示す概略構成図である。
【図２】図１中の制御ユニットの構成を示すブロック図である。
【図３】図１中の空燃比センサ出力特性を示す説明図である。
【図４】実施例に係わる内燃機関の燃料噴射装置の機能を示すブロック線図である。
【図５】燃料噴射装置の動作を説明するためのフローチャートである。
【図６】フィードフォワード系の動作を説明するためのフローチャートである。
【図７】フィードフォワード系の機能を説明するためのブロック図である。
【図８】第１のフィードバック系の動作を説明するためのフローチャートである。
【図９】第２のフィードバック系の機能を説明するためのブロック図である。
【図１０】多気筒内燃機関のＴＤＣと排気系集合部の空燃比との関係を示す説明図である。
【図１１】実際の空燃比に対するサンプリングタイミングの良否を示す説明図である。
【図１２】ＬＡＦセンサのモデルを示すブロック図である。
【図１３】ＬＡＦセンサのモデルを更に示すブロック図である。
【図１４】ＬＡＦセンサのＺ変換表示モデルを示すブロック図である。
【図１５】空燃比推定器を示すブロック線図である。
【図１６】一般的なオブザーバを示すブロック線図である。
【図１７】実施例に係わるオブザーバの構成を示すブロック線図である。
【図１８】空燃比推定器とオブザーバとを組合わせた構成を示すブロック線図である。
【図１９】第３のフィードバック系の機能を示すブロック線図である。
【図２０】サンプリング動作ブロック（ｓｅｌ−Ｖ）における検出空燃比のサンプリング動作を示すフローチャートである。
【図２１】第３のフィードバック系（気筒別フィードバック系）において気筒別フィードバック補正係数を求めるための動作を説明するフローチャートである。
【図２２】図２０のフローチャートで使用されるタイミングマップを示す説明図である。
【図２３】図２０のフローチャートで使用されるタイミングマップの特性を更に示す説明図である。
【図２４】機関回転数と機関負荷に対する空燃比センサの出力特性を示す説明図である。
【図２５】サンプリング動作ブロック（ｓｅｌ−Ｖ）のサンプリング動作を説明するためのタイミングチャートである。
【符号の説明】
１０…内燃機関、１２…吸気管、１４…エアクリーナ、１６…スロットル弁、
１８…サージタンク、２０…吸気マニホールド、２２…インジェクタ、２４…排気マニホールド、２６…排気管、２８，３０…触媒装置、３２…電磁弁、３４…バイパス路、３６…エンジン制御ユニット、３８…燃料タンク、４０…クランク角検出センサ、４２…スロットル開度検出センサ、４４…絶対圧センサ、４６…吸気温度センサ、４８…大気圧センサ、５０…水温センサ、５２…タイミング検出センサ、５４…空燃比検出センサ（ＬＡＦセンサ）、５６…Ｏ２  センサ、
５８，６０…ローパスフィルタ、６２…マイクロプロセッサ、６４…ＣＰＵコア、６６…検出回路、６８…マルチプレクサ、７０…検出回路、７２…Ａ／Ｄ変換器、７４…ＲＡＭ、７６…ＲＯＭ、７８…波形整形回路、８０…カウンタ、８２〜８８…駆動回路、１００…ＥＧＲ機構、１０２…電磁弁、２００…キャニスタパージ機構、２０２…電磁弁、３００…バルブタイミング機構。
【図１】
0003594681.tif 000033
【図２】
0003594681.tif 000034
【図３】
0003594681.tif 000035
【図４】
0003594681.tif 000036
【図５】
0003594681.tif 000037
【図６】
0003594681.tif 000038
【図７】
0003594681.tif 000039
【図８】
0003594681.tif 000040
【図９】
0003594681.tif 000041
【図１０】
0003594681.tif 000042
【図１１】
0003594681.tif 000043
【図１２】
0003594681.tif 000044
【図１３】
0003594681.tif 000045
【図１４】
0003594681.tif 000046
【図１５】
0003594681.tif 000047
【図１６】
0003594681.tif 000048
【図１７】
0003594681.tif 000049
【図１８】
0003594681.tif 000050
【図１９】
0003594681.tif 000051
【図２０】
0003594681.tif 000052
【図２１】
0003594681.tif 000053
【図２２】
0003594681.tif 000054
【図２３】
0003594681.tif 000055
【図２４】
0003594681.tif 000056
【図２５】
0003594681.tif 000057