(57)【特許請求の範囲】
【請求項１】
多気筒内燃機関の全気筒をグループ分けしてなる複数の気筒群にそれぞれ対応して設けられ、対応する気筒群から燃料及び空気の混合気の燃焼により生成された排ガスがそれぞれ排出される複数の副排気通路と、該複数の副排気通路をその下流側で合流してなる主排気通路と、該主排気通路を流れる排ガス中の特定成分の濃度を検出すべく該主排気通路に設けられた排ガスセンサと、該排ガスセンサの上流側で前記各副排気通路及び／又は前記主排気通路に設けられた触媒装置とを排気系に備えた多気筒内燃機関に対し、
前記排ガスセンサの出力を所定の目標値に収束させるように各気筒群で燃焼させる混合気の目標空燃比を表す目標空燃比データを逐次生成する目標空燃比デーア生成手段と、
該目標空燃比データに応じて前記各気筒群で燃焼させる混合気の空燃比を操作する空燃比操作手段と、
前記排気系のうちの前記排ガスセンサの上流側の部分であって前記複数の副排気通路及び触媒装置を含む対象排気系と前記空燃比操作手段と多気筒内燃機関とからなる系が、前記各気筒群に対する目標空燃比の値を全ての気筒群について混ざりモデル形式のフィルタリング処理により合成したものとして定めた目標合成空燃比から前記排ガスセンサの出力を生成する系と等価であるとし、当該等価な系を制御対象系として前記排ガスセンサの出力を前記所定の目標値に収束させるために要求される前記目標合成空燃を表す目標合成空燃比データを逐次生成する目標合成空燃比データ生成手段とを具備し、
前記目標空燃比データ生成手段は、前記各気筒群で燃焼させる混合気の目標空燃比を各気筒群について共通として、前記混ざりモデル形式のフィルタリング処理の特性に基づき定まる所定の変換処理により、前記目標合成空燃比データ生成手段が生成した目標合成空燃比データから前記目標空燃比データを逐次生成することを特徴とする多気筒内燃機関の空燃比制御装置。
【請求項２】
前記混ざりモデル形式のフィルタリング処理は、所定の制御サイクル毎の前記目標合成空燃比を、当該制御サイクル以前の制御サイクルにおける前記各気筒群の目標空燃比の複数の時系列値を成分とする線形関数により該複数の時系列値を合成して得るフィルタリング処理であることを特徴とする請求項１記載の多気筒内燃機関の空燃比制御装置。
【請求項３】
前記目標空燃比データ生成手段は、前記線形関数により定まる所定の演算処理により、前記目標合成空燃比データ生成手段が生成した目標合成空燃比データから所定の制御サイクル毎の前記目標空燃比データを生成することを特徴とする請求項２記載の多気筒内燃機関の空燃比制御装置。
【請求項４】
前記空燃比操作手段は、前記目標空燃比データ生成した目標空燃比データに対して、フィードフォワード制御により前記各気筒群で燃焼させる混合気の空燃比を操作することを特徴とする請求項１〜３のいずれか１項に記載の多気筒内燃機関の空燃比制御装置。
【請求項５】
前記目標合成空燃比データ生成手段は、前記制御対象系が前記目標合成空燃比データから少なくとも応答遅れを有して前記排ガスセンサの出力を表すデータを生成する系であるとしてあらかじめ定めた該制御対象系のモデルに基づき構築されたフィードバック制御のアルゴリズムを用いて前記排ガスセンサの出力を前記所定の目標値に収束させるように前記目標合成空燃比データを生成することを特徴とする請求項１〜４のいずれか１項に記載の多気筒内燃機関の空燃比制御装置。
【請求項６】
前記目標合成空燃比データ生成手段が実行する前記フィードバック制御のアルゴリズムはスライディングモード制御のアルゴリズムであることを特徴とする請求項５記載の多気筒内燃機関の空燃比制御装置。
【請求項７】
前記スライディングモード制御は適応スライディングモード制御であることを特徴とする請求項６記載の多気筒内燃機関の空燃比制御装置。
【請求項８】
前記スライディングモード制御のアルゴリズムは、スライディングモード制御用の切換関数として、前記排ガスセンサの出力と前記所定の目標値との偏差の複数の時系列データを成分とする線形関数を用いることを特徴とする請求項６又は７記載の多気筒内燃機関の空燃比制御装置。
【請求項９】
前記モデルは、前記制御対象系の挙動を離散時間系で表現したモデルであることを特徴とする請求項５〜８のいずれか１項に記載の多気筒内燃機関の空燃比制御装置。
【請求項１０】
前記モデルは、所定の制御サイクル毎の前記排ガスセンサの出力を表すデータを、当該制御サイクルよりも過去の制御サイクルにおける排ガスセンサの出力を表すデータと前記目標合成空燃比データとにより表現するモデルであることを特徴とする請求項９記載の多気筒内燃機関の空燃比制御装置。
【請求項１１】
前記目標合成空燃比データ生成手段が過去に生成した目標合成空燃比データと前記排ガスセンサの出力を表すデータとを用いて前記モデルの設定すべきパラメータの値を逐次同定する同定手段とを備え、前記目標合成空燃比データ生成手段が実行する前記フィードバック制御のアルゴリズムは、前記同定手段が同定した前記パラメータの値を用いて新たな前記目標合成空燃比データを生成するアルゴリズムであることを特徴とする請求項９又は１０記載の多気筒内燃機関の空燃比制御装置。
【請求項１２】
前記空燃比操作手段は、前記多気筒内燃機関の運転状態に応じて、前記目標空燃比データ生成手段が生成した前記目標空燃比データにより表される目標空燃比以外の目標空燃比に応じて前記各気筒群で燃焼させる混合気の空燃比を操作する手段を備えており、
該空燃比操作手段が各気筒群における空燃比を操作するために実際に使用した目標空燃比を表すデータに対して前記混ざりモデル形式のフィルタリング処理と同一のフィルタリング処理を施すことにより、当該実際の目標空燃比に対応する目標合成空燃比データとしての実使用目標合成空燃比データを逐次求めるフィルタ手段を備え、
前記同定手段は、前記目標合成空燃比データ生成手段が生成した目標合成空燃比データの代わりに前記フィルタ手段が求めた前記実使用目標合成空燃比データを用いて前記モデルのパラメータの値を同定することを特徴とする請求項１１記載の多気筒内燃機関の空燃比制御装置。
【請求項１３】
前記制御対象系が前記目標合成空燃比データから応答遅れ及び無駄時間を有して前記排ガスセンサの出力を表すデータを生成する系であるとしてあらかじめ定めた該制御対象系のモデルに基づき構築されたアルゴリズムにより前記無駄時間後の前記排ガスセンサの出力の推定値を表すデータを逐次生成する推定手段を備え、
前記目標合成空燃比データ生成手段は、該推定手段により生成されたデータを用いて構築されたフィードバック制御のアルゴリズムにより前記排ガスセンサの出力を前記所定の目標値に収束させるように前記目標合成空燃比データを生成することを特徴とする請求項１〜４のいずれか１項に記載の多気筒内燃機関の空燃比制御装置。
【請求項１４】
前記推定手段が実行するアルゴリズムは、前記排ガスセンサの出力を表すデータと前記目標合成空燃比データ生成手段が過去に生成した前記合成空燃比データとを用いて前記排ガスセンサの出力の推定値を表すデータを生成するアルゴリズムであることを特徴とする請求項１３記載の多気筒内燃機関の空燃比制御装置。
【請求項１５】
前記空燃比操作手段は、前記多気筒内燃機関の運転状態に応じて、前記目標空燃比データ生成手段が生成した前記目標空燃比データにより表される目標空燃比以外の目標空燃比に応じて前記各気筒群で燃焼させる混合気の空燃比を操作する手段を備えており、
該空燃比操作手段が各気筒群における空燃比を操作するために実際に使用した目標空燃比を表すデータに対して前記混ざりモデル形式のフィルタリング処理と同一のフィルタリング処理を施すことにより、当該実際の目標空燃比に対応する目標合成空燃比データとしての実使用目標合成空燃比データを逐次求めるフィルタ手段を備え、
前記推定手段は、前記目標合成空燃比データ生成手段が生成した目標合成空燃比データの代わりに前記フィルタ手段が求めた前記実使用目標合成空燃比データを用いて前記排ガスセンサの出力の推定値を表すデータを生成することを特徴とする請求項１４記載の多気筒内燃機関の空燃比制御装置。
【請求項１６】
前記制御対象系のモデルは、該系の挙動を離散時間系で表現したモデルであることを特徴とする請求項１４記載の多気筒内燃機関の空燃比制御装置。
【請求項１７】
前記制御対象系のモデルは、該系の挙動を離散時間系で表現したモデルであることを特徴とする請求項１５記載の多気筒内燃機関の空燃比制御装置。
【請求項１８】
前記制御対象系のモデルは、所定の制御サイクル毎の前記排ガスセンサの出力を表すデータを、当該制御サイクルよりも過去の制御サイクルにおける排ガスセンサの出力を表すデータと、当該制御サイクルよりも前記制御対象系が有する無駄時間以前の制御サイクルにおける前記目標合成空燃比データとにより表現するモデルであることを特徴とする請求項１６又は１７記載の多気筒内燃機関の空燃比制御装置。
【請求項１９】
前記目標合成空燃比データ生成手段が過去に生成した目標合成空燃比データと前記排ガスセンサの出力を表すデータとを用いて前記制御対象系のモデルの設定すべきパラメータの値を逐次同定する同定手段を備え、前記推定手段が実行するアルゴリズムは前記排ガスセンサの出力の推定値を表すデータを生成するために前記同定手段が同定した前記パラメータの値を用いるアルゴリズムであることを特徴とする請求項１６記載の多気筒内燃機関の空燃比制御装置。
【請求項２０】
前記フィルタ手段が過去に求めた前記実使用合成空燃比データと前記排ガスセンサの出力を表すデータとを用いて前記制御対象系のモデルの設定すべきパラメータの値を逐次同定する同定手段を備え、前記推定手段が実行するアルゴリズムは前記排ガスセンサの出力の推定値を表すデータを生成するために前記同定手段が同定した前記パラメータの値を用いるアルゴリズムであることを特徴とする請求項１７記載の多気筒内燃機関の空燃比制御装置。
【請求項２１】
前記目標合成空燃比データ生成手段が実行する前記フィードバック制御のアルゴリズムは、前記制御対象系のモデルに基づき構築され、前記同定手段が同定した前記パラメータの値を用いて前記目標合成空燃比データを生成するアルゴリズムであることを特徴とする請求項１９又は２０記載の多気筒内燃機関の空燃比制御装置。
【請求項２２】
前記目標合成空燃比データ生成手段が実行する前記フィードバック制御のアルゴリズムは、前記推定手段が生成したデータにより表される前記排ガスセンサの出力の推定値を前記所定の目標値に収束させるように前記目標合成空燃比データを生成するアルゴリズムであることを特徴とする請求項１３〜２１のいずれか１項に記載の多気筒内燃機関の空燃比制御装置。
【請求項２３】
前記目標合成空燃比データ生成手段が実行する前記フィードバック制御のアルゴリズムはスライディングモード制御のアルゴリズムであることを特徴とする請求項１３〜２２のいずれか１項に記載の多気筒内燃機関の空燃比制御装置。
【請求項２４】
前記スライディングモード制御は適応スライディングモード制御であることを特徴とする請求項２３記載の多気筒内燃機関の空燃比制御装置。
【請求項２５】
前記スライディングモード制御のアルゴリズムは、スライディングモード制御用の切換関数として、前記推定手段が生成したデータにより表される前記排ガスセンサの出力の推定値と前記所定の目標値との偏差の複数の時系列データを成分とする線形関数を用いることを特徴とする請求項２３又は２４記載の多気筒内燃機関の空燃比制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、多気筒内燃機関の空燃比を制御する装置に関する。
【０００２】
【従来の技術】
Ｖ型６気筒エンジンや、Ｖ型８気筒エンジン、あるいは直列６気筒エンジンのように多くの気筒を有する内燃機関では、各気筒での混合気の燃焼により生成される排ガスをそれらの気筒の近傍で合流させることが構造的な制約等により困難な場合が多い。このため、この種の多気筒内燃機関の排気系では、一般に、その全気筒が複数組の気筒群にグループ分けされ、各組の気筒群からそれぞれ各別の比較的長い副排気通路が導出される。そして、それらの副排気通路の下流端が全気筒に対して共通の主排気通路に合流される。換言すれば、このような排気系では、各気筒群に属する気筒で生成される排ガスを、まず、その気筒群に対応する副排気通路に該気筒群の近傍で合流させて排出する。そして、それらの副排気通路にそれぞれ排出された各気筒群の排ガスを副排気通路から主排気通路に合流させる。
【０００３】
例えば、図１４〜図１６にそれぞれ示すＶ型エンジン１では、その出力軸２（クランク軸）の両側に二組の気筒群３，４を有しており、各組の気筒群３，４はそれぞれ互いに近接して出力軸２の軸心方向に並設された複数の気筒５（Ｖ型６気筒エンジンでは三個の気筒、Ｖ型８気筒エンジンでは四個の気筒）により構成されている。この場合、各気筒群３，４に属する気筒５の個数は、例えばＶ型６気筒エンジンでは三個、Ｖ型８気筒エンジンでは四個である。そして、このＶ型エンジン１の排気系では、気筒群３に属する気筒５で生成される排ガスをその気筒群の近傍で合流してなる排ガスが排出される副排気管６（副排気通路）が気筒群３から導出されると共に、これと同様に気筒群４に対応する副排気管７（副排気通路）が該気筒群４から導出される。さらに、これらの副排気管６，７の下流端が主排気通路である主排気管８に合流される。
【０００４】
また、例えば図１７に示す直列６気筒エンジン１０１では、その出力軸１０２（クランク軸）の軸心方向に並設された六個の気筒１０３が、図の左半分の互いに近接した三個の気筒１０３からなる気筒群１０４と、右半分の互いに近接した三個の気筒１０３からなる気筒群１０５とにグループ分けされる。そして、このエンジン１０１の排気系では、それらの気筒群１０４，１０５から、前記Ｖ型６気筒エンジン１の場合と同様に、それぞれ副排気管（副排気通路）１０６，１０７が導出される。さらに、これらの副排気管１０６，１０７の下流端が主排気管（主排気通路）１０８に合流される。
【０００５】
また、上記のように複数の気筒群毎の副排気通路と、それらを合流させた主排気通路とを排気系に有する多気筒内燃機関にあっては、三元触媒等により構成される排ガス浄化用の触媒装置は一般に、次のようなレイアウトで設けられている。
【０００６】
すなわち、図１４に例示する如く各副排気管６，７と主排気管８とにそれぞれ触媒装置９，１０，１１を介装する場合や、図１５に例示する如く各副排気管６，７にそれぞれ触媒装置９，１０を介装する場合、図１６に例示する如く主排気管８のみに触媒装置１１を介装する場合がある。
【０００７】
尚、このような触媒装置のレイアウト構成は、図１４〜図１６のＶ型エンジン１の排気系に限らず、図１７の直列６気筒エンジン１０１等の排気系についても同様である。
【０００８】
一方、上記のような多気筒内燃機関に限らず、内燃機関の排ガス浄化システムでは、触媒装置による排ガスの所要の浄化性能を確実に確保することが従来より重要な課題となっている。
【０００９】
そして、このような課題の基で、本願出願人は、触媒装置の所要の浄化性能を該触媒装置の劣化等によらずに確保するために、触媒装置を通過した排ガス中の特定成分の濃度、例えば酸素濃度を検出するＯ2センサを触媒装置の下流側に設け、このＯ2センサの出力（酸素濃度の検出値）を所定の目標値（一定値）に収束させるように内燃機関で燃焼させる燃料及び空気の混合気の空燃比を操作する技術を先に提案している（例えば特開平１１−９３７４１号公報）。
【００１０】
この場合、この技術では、例えば直列４気筒エンジンの排気系のように、全ての気筒の排ガスがエンジンの近傍で単一の排気管に合流され、その単一の排気管にのみ触媒装置が設けられているような排気系に対し、触媒装置の下流側にＯ2センサを配置している。そして、このＯ2センサの出力を前記所定の目標値に収束させるようにエンジンで燃焼させる混合気の目標空燃比（より正確にはエンジンの各気筒の排ガスが合流した箇所での排ガスの酸素濃度により表される空燃比の目標値で、各気筒について共通的なもの）を決定し、その目標空燃比に従ってエンジンの各気筒で燃焼させる混合気の空燃比を操作している。
【００１１】
このような技術的背景から、前述のように複数の気筒群毎に副排気通路を備えた多気筒内燃機関の排気系にあっては、その各副排気通路や主排気通路に設けた触媒装置の所要の浄化性能を確保するために内燃機関の空燃比を制御するシステムとして、例えば次のようなシステムが考えられる。
【００１２】
すなわち、前記図１４のように各副排気管６，７と主排気管８とにそれぞれ触媒装置９，１０，１１を介装した場合にあっては、それらの触媒装置９〜１１のトータル的な浄化性能を確保するために、主排気管８の触媒装置１１の下流側で該主排気管８にＯ2センサ１２を設け、このＯ2センサ１２の出力を前記所定の目標値に収束させるようにエンジン１の各気筒群４，５で燃焼させる混合気の空燃比を操作する。
【００１３】
また、図１５のように各副排気管６，７にそれぞれ触媒装置９，１０を介装した場合にあっては、これらの触媒装置９，１０のトータル的な浄化性能を確保するために、副排気管６，７が合流する主排気管８の上流端近傍にＯ2センサ１２を設け、このＯ2センサ１２の出力を前記所定の目標値に収束させるようにエンジン１の各気筒群４，５で燃焼させる混合気の空燃比を操作する。
【００１４】
さらに、図１６のように主排気管８のみに触媒装置１１を介装した場合にあっては、この触媒装置１１の浄化性能を確保するために、該触媒装置１１の下流側で主排気管８にＯ2センサ１２を設け、このＯ2センサ１２の出力を前記所定の目標値に収束させるようにエンジン１の各気筒群４，５で燃焼させる混合気の空燃比を操作する。
【００１５】
この場合、各気筒群４，５に対応する副排気管７，８の長さや形状の違い、あるいは各副排気管７，８に介装した触媒装置９，１０の特性違い等に起因して、一般には、各気筒群４，５で燃焼する混合気の空燃比の変化に対するＯ2センサ１２の出力の変化の応答特性は、副排気管７側と副排気管８側とでは相違する。
【００１６】
従って、Ｏ2センサ１２の出力の前記所定の目標値への収束制御をできるだけ高い安定性と高い速応性で良好に行なうためには、各気筒群４，５毎に各別の目標空燃比を決定し、その目標空燃比に従って各気筒群４，５で燃焼させる混合気の空燃比を操作することが望ましいと考えられる。
【００１７】
しかるに、このように各気筒群４，５毎に、目標空燃比を決定するためには、副排気管７，８や、これらに介装する触媒装置９，１０を含めたＯ2センサ１２の上流側の排気系を、各気筒群４，５でそれぞれ燃焼させた混合気の空燃比からＯ2センサ１２の出力を生成する２入力１出力の系として把握しなければならない。このため、各気筒群４，５毎の目標空燃比を決定するために、上記の系に対する複雑で煩雑なモデルや演算アルゴリズムが必要となる。また、モデルや演算アルゴリズムが複雑化することで、かえって、モデル化誤差や演算誤差の蓄積も生じやすく、適正な目標空燃比を決定することができなくなる虞れがある。
【００１８】
【発明が解決しようとする課題】
本発明はかかる背景に鑑みてなされたものであり、複雑なモデルやアルゴリズムを必要とせずに比較的簡略な手法で、触媒装置の下流側で主排気通路に設けたＯ2センサ等の排ガスセンサの出力を所定の目標値に収束させるための各気筒群の目標空燃比を適正に決定することができる多気筒内燃機関の空燃比制御装置を提供することを目的とする。
【００１９】
さらに、該排ガスセンサの出力の目標値への収束制御を精度よく安定して行なうことができる多気筒内燃機関の空燃比制御装置を提供することを目的とする。
【００２０】
【課題を解決するための手段】
本発明の多気筒内燃機関の空燃比制御装置は、かかる目的を達成するために、多気筒内燃機関の全気筒をグループ分けしてなる複数の気筒群にそれぞれ対応して設けられ、対応する気筒群から燃料及び空気の混合気の燃焼により生成された排ガスがそれぞれ排出される複数の副排気通路と、該複数の副排気通路をその下流側で合流してなる主排気通路と、該主排気通路を流れる排ガス中の特定成分の濃度を検出すべく該主排気通路に設けられた排ガスセンサと、該排ガスセンサの上流側で前記各副排気通路及び／又は前記主排気通路に設けられた触媒装置とを排気系に備えた多気筒内燃機関に対し、前記排ガスセンサの出力を所定の目標値に収束させるように各気筒群で燃焼させる混合気の目標空燃比を表す目標空燃比データを逐次生成する目標空燃比デーア生成手段と、該目標空燃比データに応じて前記各気筒群で燃焼させる混合気の空燃比を操作する空燃比操作手段と、前記排気系のうちの前記排ガスセンサの上流側の部分であって前記複数の副排気通路及び触媒装置を含む対象排気系と前記空燃比操作手段と多気筒内燃機関とからなる系が、前記各気筒群に対する目標空燃比の値を全ての気筒群について混ざりモデル形式のフィルタリング処理により合成したものとして定めた目標合成空燃比から前記排ガスセンサの出力を生成する系と等価であるとし、当該等価な系を制御対象系として前記排ガスセンサの出力を前記所定の目標値に収束させるために要求される前記目標合成空燃を表す目標合成空燃比データを逐次生成する目標合成空燃比データ生成手段とを具備し、前記目標空燃比データ生成手段は、前記各気筒群で燃焼させる混合気の目標空燃比を各気筒群について共通として、前記混ざりモデル形式のフィルタリング処理の特性に基づき定まる所定の変換処理により、前記目標合成空燃比データ生成手段が生成した目標合成空燃比データから前記目標空燃比データを逐次生成することを特徴とする（請求項１記載の発明）。実施形態実施形態  かかる本発明によれば、前記各気筒群で燃焼させる混合気の目標空燃比の値を全ての気筒群について混ざりモデル形式のフィルタリング処理により合成したものとして定めた目標合成空燃比を導入することで、前記排気系のうちの前記排ガスセンサの上流側の部分であって前記複数の副排気通路及び触媒装置を含む対象排気系と前記空燃比操作手段と多気筒内燃機関とからなる系（以下の本発明の説明では、この系を実対象系という）を、該目標合成空燃比から前記排ガスセンサの出力を生成する系（前記制御対象系）と等価であるとみなすことができる。つまり、前記実対象系は、前記目標合成空燃比のみを入力量とし、且つ、前記排ガスセンサの出力のみを出力量とする１入力１出力の系と等価であるとみなすことができる。
【００２１】
このように前記実対象系と等価な系を導入したとき、その等価な系の出力量である前記排ガスセンサの出力を前記所定の目標値に制御するためには、前記目標合成空燃比を制御対象系に対する制御入力として操作してやればよい。そこで、本発明では、前記目標合成空燃比データ生成手段は、前記実対象系と等価な系を制御対象系として、排ガスセンサの出力を前記所定の目標値に収束させるために要求される前記目標合成空燃比を表す目標合成空燃比データを逐次生成する。
【００２２】
この場合、目標合成空燃比データ生成手段は、前記制御対象系に対する単一の制御入力として、目標合成空燃比データのみを生成すればよい。従って、制御対象系の複雑なモデル等を用いることなく、比較的簡素なフィードバック制御のアルゴリズム（例えばＰＩＤ制御等）を用いて目標合成空燃比データを生成することができる。
【００２３】
尚、目標合成空燃比データ生成手段が生成する目標合成空燃比データは、目標合成空燃比の値そのものでよいことはもちろんであるが、例えば、目標合成空燃比の値と所定の基準空燃比（例えば理論空燃比）との偏差であってもよい。
【００２４】
また、前記のように目標合成空燃比を定義したとき、前記混ざりモデル形式のフィルタリング処理の特性によって、各気筒群に対する目標空燃比を全ての気筒群について共通のものとすることができる。従って、目標合成空燃比の値が定まれば、上記フィルタリング処理の逆変換的な処理によって、該目標合成空燃比から各気筒群に対する目標空燃比を決定することができる。
【００２５】
そこで、本発明では、前記目標空燃比データ生成手段は、前記各気筒群で燃焼させる混合気の目標空燃比を各気筒群について共通として、前記混ざりモデル形式のフィルタリング処理の特性に基づき定まる所定の変換処理（該フィルタリング処理の逆変換的な処理）により、前記目標合成空燃比データ生成手段が生成した目標合成空燃比データから前記目標空燃比データを逐次生成する。
【００２６】
これにより、排ガスセンサの出力を前記所定の目標値に収束させるために要求される各気筒群の目標空燃比を得ることができる。
【００２７】
尚、前記目標空燃比データは、目標合成空燃比データと同様、目標空燃比の値そのものでよいことはもちろんであるが、例えば、目標空燃比の値と所定の基準空燃比（例えば理論空燃比）との偏差であってもよい。
【００２８】
そして、本発明では、前記空燃比操作手段は、上記のように目標空燃比データが生成する目標空燃比データに応じて各気筒群で燃焼させる混合気の空燃比を操作する。これにより、各気筒群で燃焼させる空燃比を排ガスセンサの出力が所定の目標値に収束するように操作することが可能となる。
【００２９】
このように本発明によれば、複雑なモデルやアルゴリズムを必要とせずに比較的簡略な手法で、触媒装置の下流側の排ガスセンサの出力を所定の目標値に収束させるための各気筒群の目標空燃比を適正に決定することができる。そして、その目標空燃比に応じて各気筒群の空燃比を操作することで、排ガスセンサの出力の所定の目標値への収束制御を的確に行なうことができる。その結果、排ガスセンサの上流側で前記各副排気通路や主排気通路に設けた触媒装置による所要の浄化性能を確保することができる。
【００３０】
尚、本発明において、排ガスセンサの上流側の触媒装置の最適な浄化性能を確保する上では、該排ガスセンサをＯ2センサとし、該排ガスセンサの出力の目標値を所定の一定値とすることが好適である。
【００３１】
かかる本発明において、前記混ざりモデル形式のフィルタリング処理は、例えば所定の制御サイクル毎の前記目標合成空燃比を、当該制御サイクル以前の制御サイクルにおける前記各気筒群の目標空燃比の複数の時系列値を成分とする線形関数により該複数の時系列値を合成して得るフィルタリング処理である（請求項２記載の発明）。
【００３２】
このように線形関数を用いたフィルタリング処理によって各気筒群の目標空燃比を決定する上で適正な目標合成空燃比を定義することができる。
【００３３】
尚、前記各気筒群の目標空燃比の複数の時系列値を成分とする線形関数は、例えば該複数の時系列値の線形結合である。この場合、前記フィルタリング処理は、当該複数の時系列値の重み付け平均値を前記目標合成空燃比として得る処理となる。
【００３４】
上記のように混ざりモデル形式のフィルタリング処理を前記線形関数により定めたとき、所定の制御サイクル毎の前記目標合成空燃比データが、前記線形関数の成分として当該制御サイクル以前の前記目標空燃比データの時系列データを用いてなる線形関数により得られることとなるので、前記目標空燃比データ生成手段は、前記線形関数により定まる所定の演算処理により、前記目標合成空燃比データ生成手段が生成した目標合成空燃比データから所定の制御サイクル毎の前記目標空燃比データを生成することができる（請求項３記載の発明）。
【００３５】
この場合、制御サイクル毎の目標空燃比データは、より詳しくは、その制御サイクルにおける目標合成空燃比データと、その制御サイクルよりも過去の制御サイクルにおける目標空燃比データとを用いて求めることができる。
【００３６】
また、このような本発明では、前記空燃比操作手段は、前記目標空燃比データ生成した目標空燃比データに対して、フィードフォワード制御により前記各気筒群で燃焼させる混合気の空燃比を操作する（請求項４）。
【００３７】
これにより各気筒群で燃焼した混合気の空燃比を検出するためのセンサ等を使用することなく、簡単な手法で、排ガスセンサの出力を前記所定の目標値に収束させるように各気筒群で燃焼させる混合気の空燃比を操作することができる。そして、この場合、各気筒群における実際の空燃比と前記目標空燃比データが表す目標空燃比との誤差の影響は、前記目標合成空燃比データ生成手段が生成する目標合成空燃比データによって吸収することができる。
【００３８】
本発明において、前記目標合成空燃比データは、例えばＰＩＤ制御のように制御対象のモデルを必要としないフィードバック制御手法を用いて生成することも可能である。但し、前記実対象系が多気筒内燃機関や触媒装置等を含むために、該実対象系と等価な前記制御対象系の入力量の変化に対して、該制御対象系の出力量としての前記排ガスセンサの出力の変化は、前記多気筒内燃機関や触媒装置等に起因した応答遅れの影響を受け易い。
【００３９】
このため、本発明では、前記制御対象系が前記目標合成空燃比データから少なくとも応答遅れを有して前記排ガスセンサの出力を表すデータを生成する系であるとしてあらかじめ定めた該制御対象系のモデルに基づき構築されたフィードバック制御のアルゴリズムを用いて前記排ガスセンサの出力を前記所定の目標値に収束させるように前記目標合成空燃比データを生成する（請求項５記載の発明）。
【００４０】
このように前記制御対象系の応答遅れ特性を考慮した該制御対象系のモデルに基づき構築したフィードバック制御のアルゴリズムを用いて前記目標合成空燃比データを生成することで、前記実対象系が含む多気筒内燃機関や触媒装置等に起因した応答遅れの影響を適正に補償して、排ガスセンサの出力を前記所定の目標値に収束させる上で的確な目標合成空燃比データを生成することができる。また、このとき、前記制御対象系は１入力１出力の系であるので、この制御対象系のモデルも簡略な構成で構築することができる。
【００４１】
尚、前記モデルにおいて、前記目標合成空燃比データを、例えば実際の目標合成空燃比と所定の基準空燃比との偏差とし、前記排ガスセンサの出力を表すデータを、例えば該排ガスセンサの実際の出力と前記所定の目標値との偏差とすることが、前記フィードバック制御のアルゴリズムの構築の利便性や、そのアルゴリズムを用いて生成する目標合成空燃比データの信頼性の向上の点で好ましい。
【００４２】
上記のように前記目標合成空燃比データ生成手段が目標合成空燃比データを生成するために実行するフィードバック制御のアルゴリズムを制御対象系のモデルに基づき構築したものとするとき、そのフィードバック制御のアルゴリズムは、スライディングモード制御のアルゴリズムであることが好適である（請求項６記載の発明）。
【００４３】
そして、特に、前記スライディングモード制御は、適応スラディングモード制御であることが好適である（請求項７記載の発明）。
【００４４】
すなわち、スライディングモード制御は、一般に外乱等に対する制御の安定性が高いという特性を有している。従って、このようなスライディングモード制御のアルゴリズムを用いて前記目標合成空燃比データを生成することで、該目標合成空燃比データの信頼性を高め、ひいては、排ガスセンサの出力の目標値への収束制御の安定性を高めることができる。
【００４５】
特に、適応スライディングモード制御は、外乱等の影響を極力排除するために、通常のスライディングモード制御に対して、所謂適応則（適応アルゴリズム）といわれる制御則を加味したものである。このため、前記目標合成空燃比データの信頼性をより高めることができる。
【００４６】
さらに詳しくいえば、スライディングモード制御では、制御量（本発明では排ガスセンサの出力）とその目標値との偏差等を用いて構成される切換関数といわれる関数が用いられ、この切換関数の値を「０」に収束させることが重要となる。この場合、通常のスライディングモード制御では、切換関数の値を「０」に収束させるために所謂、到達則という制御則が用いられる。しかるに、外乱等の影響を受けると、この到達則だけでは、切換関数の値の「０」への収束の安定性を十分に確保することが困難となる場合もある。これに対して、適応スライディングモード制御は、外乱等の影響を極力排除して切換関数の値を「０」に収束させるために上記到達則に加えて、適応則（適応アルゴリズム）という制御則をも用いるようにしたものである。このような適応スライディングモード制御のアルゴリズムを用いることで、切換関数の値を高い安定性で「０」に収束させ、ひいては排ガスセンサの出力を前記所定の目標値に高い安定性で収束させ得るように目標合成空燃比データを生成することができる。
【００４７】
このように前記フィードバック制御のアルゴリズムをスライディングモード制御（適応スライディングモード制御を含む）のアルゴリズムとした本発明では、前記スライディングモード制御のアルゴリズムは、スライディングモード制御用の切換関数として、前記排ガスセンサの出力と前記所定の目標値との偏差の複数の時系列データを成分とする線形関数を用いることが好ましい（請求項８記載の発明）。
【００４８】
すなわち、スライディングモード制御では、それに使用する切換関数は、通常、制御量とその変化速度とを用いて構成されるが、該変化速度は一般に直接的に検出することが困難で、制御量の検出値から算出することとなる場合が多い。そして、このとき、該制御量の変化速度の値には、誤差が生じやすい。
【００４９】
これに対して、本発明では、スライディングモード制御用の切換関数を排ガスセンサの出力と前記所定の目標値との偏差の複数の時系列データを成分とする線形関数により構成するため、排ガスセンサの出力の変化速度を必要とすることなく、目標合成空燃比データを生成するためのアルゴリズムを構築することができる。このため、生成する目標合成空燃比データの信頼性を高めることができる。
【００５０】
尚、このように切換関数を構成したとき、スライディングモード制御のアルゴリズムは、排ガスセンサの出力と前記所定の目標値との偏差の複数の時系列データの各値を「０」に収束させるように目標合成空燃比データを生成することとなる。
【００５１】
また、前述のように目標合成空燃比データを生成するために、前記スライディングモード制御のアルゴリズムを含めて前記制御対象系のモデルに基づくフィードバック制御のアルゴリズムを用いる本発明では、前記モデルは、前記制御対象系の挙動を連続時間系で表現するモデルとしてもよいが、前記制御対象系の挙動を離散時間系で表現したモデルであることが好ましい（請求項９記載の発明）。
【００５２】
このようにすることで、前記フィードバック制御のアルゴリズムの構築がより容易になると共に、そのアルゴリズムをコンピュータ処理に適したものとすることができる。
【００５３】
この場合、前記制御対象系の挙動を離散時間系で表現するモデルは、例えば、所定の制御サイクル毎の前記排ガスセンサの出力を表すデータを、当該制御サイクルよりも過去の制御サイクルにおける排ガスセンサの出力を表すデータと前記目標合成空燃比データとにより表現するモデルである（請求項１０記載の発明）。
【００５４】
このように前記モデルを構成することで、前記制御対象系の挙動を該モデルにより適正に表現することができる。
【００５５】
尚、この場合、前記過去の制御サイクルにおける排ガスセンサの出力を表すデータは、所謂、自己回帰項で、前記制御対象系が有する応答遅れに係わるものとなる。
【００５６】
上述のように前記制御対象系のモデルを離散時間系のモデルとした本発明では、前記目標合成空燃比データ生成手段が過去に生成した目標合成空燃比データと前記排ガスセンサの出力を表すデータとを用いて前記モデルの設定すべきパラメータの値を逐次同定する同定手段とを備え、前記目標合成空燃比データ生成手段が実行する前記フィードバック制御のアルゴリズムは、前記同定手段が同定した前記パラメータの値を用いて新たな前記目標合成空燃比データを生成するアルゴリズムであることが好ましい（請求項１１記載の発明）。
【００５７】
すなわち、前記モデルは、その挙動を規定する上である値に設定すべきパラメータを有する。例えば前記モデルが、前述のように所定の制御サイクル毎の前記排ガスセンサの出力を表すデータを、当該制御サイクルよりも過去の制御サイクルにおける排ガスセンサの出力を表すデータと前記目標合成空燃比データとにより表現するモデルとしたときには、前記過去の制御サイクルにおける排ガスセンサの出力を表すデータと前記目標合成空燃比データとにそれぞれ係る係数パラメータを該モデルのパラメータとして含む。
【００５８】
そして、そのモデルに基づき構築される前記フィードバック制御のアルゴリズムでは、該モデルのパラメータを用いて前記目標合成空燃比データを生成すこととなる。このため、該目標合成空燃比データの信頼性をより高める上では、該モデルのパラメータの値を前記制御対象系の実際の挙動（これは前記実対象系の実際の挙動特性に基づくもので、経時的に変化することが多い）に則してリアルタイムで同定することが好ましい。
【００５９】
また、前記制御対象系を離散時間系で表現する前記モデルでは、前記目標合成空燃比データ生成手段が過去に生成した目標合成空燃比データと、前記排ガスセンサの出力を表すデータとを用いることで、前記モデルのパラメータを、制御対象系の実際の挙動に即して逐次同定することができる。
【００６０】
このようなことから、本発明では、前記同定手段を備えて、前記モデルのパラメータの値を逐次同定し、その同定したパラメータの値を用いて目標合成空燃比データを生成する。これにより、前記実対象系の時々刻々の実際の挙動に基づく前記制御対象系の実際の挙動に即して、前記目標合成空燃比データを生成することが可能となる。この結果、該目標合成空燃比データの信頼性をより高め、排ガスセンサの出力の前記所定の目標値への収束制御を精度よく安定して行なうことができる。
【００６１】
尚、前記モデルが、前述のように所定の制御サイクル毎の前記排ガスセンサの出力を表すデータを、当該制御サイクルよりも過去の制御サイクルにおける排ガスセンサの出力を表すデータと前記目標合成空燃比データとにより表現するモデルであるときには、前記同定手段により同定するパラメータは、前記排ガスセンサの出力を表すデータ及び前記目標合成空燃比データにそれぞれ係る係数パラメータのうちの少なくとも一つ（好ましくは全ての係数パラメータ）である。
【００６２】
また、前記同定手段は、前記モデル上での前記排ガスセンサの出力と該排ガスセンサの実際の出力との間の誤差を最小化するように構築されたアルゴリズム（例えば最小二乗法、重み付き最小二乗法、固定ゲイン法、漸減ゲイン法、固定トレース法等の同定アルゴリズム）により前記パラメータの値を逐次同定することができる。
【００６３】
また、上述のような同定手段を有する本発明において、前記空燃比操作手段は、常に前記目標空燃比データ生成手段が目標合成空燃比データから生成する目標空燃比データにより表される目標空燃比に従って、各気筒群における混合気の空燃比を操作しなけらばならないわけではなく、多気筒内燃機関の運転状態（例えば該内燃機関のフュエルカット運転時や大出力が要求される運転時等）によっては、必要に応じて、前記目標空燃比データ生成手段が生成した目標空燃比データ以外の目標空燃比に応じて、各気筒群における空燃比を操作するようにしてもよい。
【００６４】
そして、このように前記空燃比操作手段が、前記多気筒内燃機関の運転状態に応じて、前記目標空燃比データ生成手段が生成した前記目標空燃比データにより表される目標空燃比以外の目標空燃比に応じて前記各気筒群で燃焼させる混合気の空燃比を操作する手段を備えている場合で、前記同定手段を備えた場合においては、該空燃比操作手段が各気筒群における空燃比を操作するために実際に使用した目標空燃比を表すデータに対して前記混ざりモデル形式のフィルタリング処理と同一のフィルタリング処理を施すことにより、当該実際の目標空燃比に対応する目標合成空燃比データとしての実使用目標合成空燃比データを逐次求めるフィルタ手段を備え、前記同定手段は、前記目標合成空燃比データ生成手段が生成した目標合成空燃比データの代わりに前記フィルタ手段が求めた前記実使用目標合成空燃比データを用いて前記モデルのパラメータの値を同定することが好ましい（請求項１２記載の発明）
すなわち、前記空燃比操作手段が実際に使用した目標空燃比を表すデータ（これは前記目標空燃比データが生成した目標空燃比データとは限らない）に対して、前記フィルタ手段により、前記混ざりモデル形式のフィルタリング処理と同一のフィルタリング処理を施すことによって、空燃比操作手段が実際に使用した目標空燃比に対応する目標合成空燃比データとしての、前記実使用目標合成空燃比データが求められる。そして、この実使用目標合成空燃比データを、前記同定手段が前記モデルのパラメータの値を同定するために前記目標合成空燃比データの代わりに用いることで、空燃比操作手段による各気筒群の空燃比の実際の操作状況を考慮した形態で、前記モデルのパラメータの値が同定されることとなる。
【００６５】
従って、同定手段が同定する前記モデルのパラメータの値には、空燃比操作手段による各気筒群の空燃比の実際の操作状況が反映されることとなる。その結果、該モデルのパラメータの同定値の信頼性を高めることができる。
【００６６】
一方、本発明の多気筒内燃機関の空燃比制御装置において、前記実対象系に含まれる前記多気筒内燃機関や触媒装置、各副排気管（これは比較的長い）の影響で、前記制御対象系が比較的長い無駄時間（制御対象系の入力量である目標合成空燃比の各時点における値が排ガスセンサの出力に反映されるようになるまでに要する時間）を有するものとなることがある。そして、このような無駄時間が制御対象系に存する場合には、該無駄時間を考慮せずに、目標合成空燃比データを生成して、各気筒群の空燃比を操作すると、排ガスセンサの出力の所定の目標値への収束制御の安定性が低下しやすい。
【００６７】
そこで、本発明では、前記制御対象系が前記目標合成空燃比データから応答遅れ及び無駄時間を有して前記排ガスセンサの出力を表すデータを生成する系であるとしてあらかじめ定めた該制御対象系のモデルに基づき構築されたアルゴリズムにより前記無駄時間後の前記排ガスセンサの出力の推定値を表すデータを逐次生成する推定手段を備え、前記目標合成空燃比データ生成手段は、該推定手段により生成されたデータを用いて構築されたフィードバック制御のアルゴリズムにより前記排ガスセンサの出力を前記所定の目標値に収束させるように前記目標合成空燃比データを生成する（請求項１３記載の発明）。
【００６８】
すなわち、上記のように前記制御対象系の応答遅れと無駄時間とを考慮した該制御対象系のモデルを定めておくことで、前記推定手段は、該モデルに基づき構築したアルゴリズムによって、前記無駄時間後の排ガスセンサの出力の推定値を表すデータを逐次生成することができる。
【００６９】
そして、前記目標合成空燃比データ生成手段が、その排ガスセンサの出力の推定値を表すデータを用いて構築されたフィードバック制御のアルゴリズムによって、前記目標合成空燃比データを生成することで、前記制御対象系の無駄時間の影響を補償し、排ガスセンサの出力を安定に所定の目標値に収束させる上で適正な目標合成空燃比データを生成することができる。
【００７０】
尚、前記推定手段に関する前記制御対象系のモデルにあっては、前記目標合成空燃比データを、例えば実際の目標合成空燃比と所定の基準空燃比との偏差とし、前記排ガスセンサの出力を表すデータを、例えば該排ガスセンサの実際の出力と前記所定の目標値との偏差とする。このようにすると、前記排ガスセンサの出力の推定値を表すデータを生成するためのアルゴリズムの構築の利便性や、そのアルゴリズムを用いて生成する排ガスセンサの出力の推定値を表すデータの信頼性の向上の点で有利である。また、このようにしたとき、前記排ガスセンサの出力の推定値を表すデータは、該排ガスセンサの出力の推定値と、前記所定の目標値との偏差となる。
【００７１】
上述のように推定手段を備えた本発明にあっては、前記推定手段が実行するアルゴリズムを、前記排ガスセンサの出力を表すデータと前記目標合成空燃比データ生成手段が過去に生成した前記合成空燃比データとを用いて前記排ガスセンサの出力の推定値を表すデータを生成するアルゴリズムとすることで、前記排ガスセンサの出力の推定値を表すデータを逐次生成することができる（請求項１４記載の発明）。
【００７２】
そして、この場合、特に、前記空燃比操作手段が、前記多気筒内燃機関の運転状態に応じて、前記目標空燃比データ生成手段が生成した前記目標空燃比データにより表される目標空燃比以外の目標空燃比に応じて前記各気筒群で燃焼させる混合気の空燃比を操作する手段を備えている場合にあっては、前述した請求項１２記載の発明に関して説明したこととと同様の理由によって、該空燃比操作手段が各気筒群における空燃比を操作するために実際に使用した目標空燃比を表すデータに対して前記混ざりモデル形式のフィルタリング処理と同一のフィルタリング処理を施すことにより、当該実際の目標空燃比に対応する目標合成空燃比データとしての実使用目標合成空燃比データを逐次求めるフィルタ手段を備え、前記推定手段は、前記目標合成空燃比データ生成手段が生成した目標合成空燃比データの代わりに前記フィルタ手段が求めた前記実使用目標合成空燃比データを用いて前記排ガスセンサの出力の推定値を表すデータを生成することが好ましい（請求項１５記載の発明）。
【００７３】
このように空燃比操作手段が実際に使用した目標空燃比を表すデータから前記フィルタ手段によって前記実使用目標合成空燃比データを求め、この実使用目標合成空燃比データを、目標合成空燃比データ生成手段が生成した目標合成空燃比データの代わりに用いて排ガスセンサの出力の推定値を表すデータを生成することで、空燃比操作手段による各気筒群の空燃比の実際の操作状況を考慮した形態で、排ガスセンサの出力の推定値を表すデータが生成されることとなる。
【００７４】
従って、推定手段が生成する排ガスセンサの出力の推定値を表すデータには、空燃比操作手段による各気筒群の空燃比の実際の操作状況が反映されることとなり、該推定値を表すデータの信頼性を高めることができる。
【００７５】
上記のように、推定手段を備えた本発明では、前記制御対象系のモデルを、該系の挙動を連続時間系で表現するモデルとして推定手段のアルゴリズムを構築することも可能であるが、該制御対象系のモデルは、該系の挙動を離散時間系で表現したモデルであることが好ましい（請求項１６、１７記載の発明）。
【００７６】
このようにすることで、前記推定手段が実行するアルゴリズムの構築がより容易になると共に、そのアルゴリズムをコンピュータ処理に適したものとすることができる。
【００７７】
上記のように前記制御対象系の挙動を離散時間系で表現する該制御対象系のモデルは、例えば、所定の制御サイクル毎の前記排ガスセンサの出力を表すデータを、当該制御サイクルよりも過去の制御サイクルにおける排ガスセンサの出力を表すデータと、当該制御サイクルよりも前記制御対象系が有する無駄時間以前の制御サイクルにおける前記目標合成空燃比データとにより表現するモデルである（請求項１８記載の発明）。
【００７８】
このように前記モデルを構成することで、前記制御対象系の挙動をその応答遅れと無駄時間とを含めて該モデルにより適正に表現することができる。
【００７９】
尚、この場合、前記過去の制御サイクルにおける排ガスセンサの出力を表すデータは、所謂、自己回帰項で、前記制御対象系が有する応答遅れに係わるものとなる。また、制御対象系の無駄時間以前の前記目標合成空燃比データによって、制御対象系の無駄時間が表現されることとなる。
【００８０】
このように制御対象系のモデルを離散時間系で表現した場合においては、前記目標合成空燃比データ生成手段が過去に生成した目標合成空燃比データと前記排ガスセンサの出力を表すデータとを用いて前記制御対象系のモデルの設定すべきパラメータの値を逐次同定する同定手段を備え、前記推定手段が実行するアルゴリズムは前記排ガスセンサの出力の推定値を表すデータを生成するために前記同定手段が同定した前記パラメータの値を用いるアルゴリズムであることが好ましい（請求項１９記載の発明）。
【００８１】
そして、特に、前記空燃比操作手段が、前述のように前記目標空燃比データ生成手段が生成した前記目標空燃比データにより表される目標空燃比以外の目標空燃比に応じて前記各気筒群で燃焼させる混合気の空燃比を操作する手段を備えており、前記推定手段のアルゴリズムが前記目標合成空燃比データの代わりに前記フィルタ手段により逐次求める実使用目標合成空燃比データを用いる場合にあっては、前記フィルタ手段が過去に求めた前記実使用合成空燃比データと前記排ガスセンサの出力を表すデータとを用いて前記制御対象系のモデルの設定すべきパラメータの値を逐次同定する同定手段を備え、前記推定手段が実行するアルゴリズムは前記排ガスセンサの出力の推定値を表すデータを生成するために前記同定手段が同定した前記パラメータの値を用いるアルゴリズムであることが好適である（請求項２０記載の発明）。
【００８２】
すなわち、前記制御対象系のモデルは、その挙動を規定する上である値に設定すべきパラメータを有する。例えば該モデルを、前述のように所定の制御サイクル毎の前記排ガスセンサの出力を表すデータを、当該制御サイクルよりも過去の制御サイクルにおける排ガスセンサの出力を表すデータと、当該制御サイクルよりも前記制御対象系が有する無駄時間以前の制御サイクルにおける前記目標合成空燃比データとにより表現するモデルとしたときには、前記過去の制御サイクルにおける排ガスセンサの出力を表すデータと前記無駄時間以前の制御サイクルにおける前記目標合成空燃比データとにそれぞれ係る係数パラメータを該モデルのパラメータとして含む。
【００８３】
そして、前記推定手段のアルゴリズムは、該制御対象系のモデルに基づくものであるので、該モデルのパラメータを用いて前記排ガスセンサの出力の推定値を表すデータを生成すこととなる。このため、該排ガスセンサの出力の推定値を表すデータの信頼性をより高める上では、該モデルのパラメータの値を前記制御対処系の実際の挙動に則してリアルタイムで同定することが好ましい。
【００８４】
また、制御対象系を離散時間系で表現するモデルでは、前記目標合成空燃比データ生成手段が過去に生成した目標合成空燃比データと、前記排ガスセンサの出力を表すデータとを用いることで、該モデルのパラメータを、制御対象系の実際の挙動に即して逐次同定することができる。
【００８５】
さらにこのとき、前記実使用目標合成空燃比データを求める前記フィルタ手段を備えた場合にあっては、前記パラメータの値を同定するために、前記目標合成空燃比データの代わりに実使用目標合成空燃比データを用いることが好ましい。
【００８６】
このようなことから、前記推定手段を備えた本発明では、前記同定手段によって、前記制御対象系のモデルのパラメータの値を逐次同定し、前記推定手段は、その同定されたパラメータの値を用いて排ガスセンサの出力の推定値を表すデータを逐次生成する。これにより、前記実対象系の時々刻々の実際の挙動に基づく前記制御対象系の実際の挙動に即して、排ガスセンサの出力の推定値を表すデータを生成することが可能となる。この結果、該推定値を表すデータの信頼性をより高めることができる。
【００８７】
そして、特に空燃比操作手段が、前記目標空燃比データにより表される目標空燃比以外の目標空燃比に応じて前記各気筒群で燃焼させる混合気の空燃比を操作する手段を備えているときには、同定手段がパラメータの値を同定するために、前記目標合成空燃比データの代わりに前記実使用目標合成空燃比データを用いることで、該パラメータの同定値に、空燃比操作手段による各気筒群の空燃比の実際の操作状況が反映されることとなる。このため、該パラメータの同定値の信頼性が高まり、前記推定手段が生成する排ガスセンサの出力の推定値を表すデータの信頼性をより高めることができる。
【００８８】
この結果、該推定値を表すデータを用いて構築された前記フィードバック制御のアルゴリズムによって、信頼性の高い目標合成空燃比データを生成することができ、排ガスセンサの出力の前記所定の目標値への収束制御を精度よく安定して行なうことができる。
【００８９】
尚、前記制御対象系のモデルが、前述のように所定の制御サイクル毎の前記排ガスセンサの出力を表すデータを、当該制御サイクルよりも過去の制御サイクルにおける排ガスセンサの出力を表すデータと、当該制御サイクルよりも前記制御対処系が有する無駄時間以前の制御サイクルにおける前記目標合成空燃比データとにより表現するモデルであるときには、前記同定手段により同定するパラメータは、前記排ガスセンサの出力を表すデータ及び前記目標合成空燃比データにそれぞれ係る係数パラメータのうちの少なくとも一つ（好ましくは全ての係数パラメータ）である。
【００９０】
また、前記同定手段は、前記制御対象のモデル上での前記排ガスセンサの出力と該排ガスセンサの実際の出力との間の誤差を最小化するように構築されたアルゴリズム（例えば最小二乗法、重み付き最小二乗法、固定ゲイン法、漸減ゲイン法、固定トレース法等の同定アルゴリズム）により前記パラメータの値を逐次同定することができる。
【００９１】
上記のように推定手段に加えて同定手段を備えた本発明では、前記目標合成空燃比データを生成するための前記フィードバック制御のアルゴリズムは、例えば前記推定手段における制御対象系のモデルとは別に定めた制御対象系のモデル等に基づいて構築されたものであってもよい。但し、前記目標合成空燃比データ生成手段が実行する前記フィードバック制御のアルゴリズムは、前記制御対象系のモデルに基づき構築され、前記同定手段が同定した前記パラメータの値を用いて前記目標合成空燃比データを生成するアルゴリズムであることが好ましい（請求項２１記載の発明）。
【００９２】
このように、前記フィードバック制御のアルゴリズムを、前記推定手段のアルゴリズムの構築のために定めた制御対象系のモデルに基づいて構築することで、推定手段が生成する排ガスセンサの出力の推定値を表すデータを用いたフィードバック制御のアルゴリズムの構築が容易となる。同時に、該フィードバック制御のアルゴリズムで、前記同定手段が同定する制御対象系のパラメータの値を用いることで、制御対象系の実際の挙動に即して、前記目標合成空燃比データを生成することができる。すなわち、排ガスセンサの出力を所定の目標値に収束制御する上で、信頼性の高い目標合成空燃比データを生成することができる。
【００９３】
また、推定手段を備えた本発明では、前記目標合成空燃比データ生成手段が実行する前記フィードバック制御のアルゴリズムは、前記推定手段が生成したデータにより表される前記排ガスセンサの出力の推定値を前記所定の目標値に収束させるように前記目標合成空燃比データを生成するアルゴリズムである（請求項２２記載の発明）。
【００９４】
このようなフィードバック制御のアルゴリズムによって、前記制御対象系の無駄時間の影響を適正に補償し、排ガスセンサの出力を所定の目標値に収束させる上で信頼性の高い目標合成空燃比を生成することができる。
【００９５】
また、推定手段を備える本発明では、前述した制御対象系のモデルに基づくフィードバック制御のアルゴリズムに関して説明した場合（請求項６，７に関する説明を参照）と同様、前記目標合成空燃比データ生成手段が実行するフィードバック制御のアルゴリズムはスライディングモード制御のアルゴリズムであることが好適である（請求項２３記載の発明）。
【００９６】
そして、特に、前記スライディングモード制御は、適応スラディングモード制御であることが好適である（請求項２４記載の発明）。
【００９７】
すなわち、適応スライディングモード制御を含めてスライディングモード制御は、前述した通りの特徴を有するものであるので、このようなスライディングモード制御、特に適応スライディングモード制御のアルゴリズムを用いて前記目標合成空燃比データを生成することで、該目標合成空燃比データの信頼性を高め、ひいては、排ガスセンサの出力の目標値への収束制御の安定性を高めることができる。
【００９８】
そして、本発明ではさらに、前記スライディングモード制御のアルゴリズムは、スライディングモード制御用の切換関数として、前記推定手段が生成したデータにより表される前記排ガスセンサの出力の推定値と前記所定の目標値との偏差の複数の時系列データを成分とする線形関数を用いる（請求項２５記載の発明）。
【００９９】
このようにスライディングモード制御用の切換関数を構成することで、排ガスセンサの出力の変化速度のデータ等を必要とせずに、目標合成空燃比データを生成するためのアルゴリズムを構築することができため、生成する目標合成空燃比データの信頼性を高めることができる。
【０１００】
また、このとき、スライディングモード制御のアルゴリズムは、排ガスセンサの出力の推定値と前記所定の目標値との偏差の複数の時系列データの各値を「０」に収束させるように目標合成空燃比データを生成することとなるので、前記制御対象系の無駄時間の影響を適正に補償することができる。
【０１０１】
【発明の実施の形態】
本発明の一実施形態を図１〜図１３を参照して説明する。
【０１０２】
図１を参照して、本実施形態は、例えば前記図１５に示した構成の排気系を有する多気筒内燃機関としてのＶ型エンジン１（以下、単にエンジン１という）の空燃比制御装置に関するものであり、同図１はこの装置の全体的システム構成を示すブロック図である。
【０１０３】
この場合、図１では便宜上、このエンジン１とその排気系とを図１６よりも簡略化して記載している。また、エンジン１は、より具体的には、例えば自動車やハイブリッド車に車両の推進源として搭載されたＶ型６気筒エンジンであり、その二つの気筒群３，４はそれぞれ三個の気筒（図示せず）により構成されている。
【０１０４】
エンジン１の排気系は、前記図１５に関して説明した如く、エンジン１の二つの気筒群３，４にそれぞれ対応する副排気管６，７（副排気通路）と、これらの副排気管６，７を合流させた主排気管８（主排気通路）と、それらの副排気管６，７及び主排気管８にそれぞれ介装された触媒装置９，１０，１１とを具備する。各触媒装置９〜１１は例えば三元触媒により構成されている。
【０１０５】
そして、主排気管８には、触媒装置１１の下流側で、排ガスセンサとしてのＯ2センサ１２が装着されている。
【０１０６】
このＯ2センサ１２は、触媒装置１１を通過して主排気管８を流れる排ガス中の酸素濃度に応じたレベルの出力VO2/OUT（酸素濃度の検出値を表す出力）を生成する通常的なＯ2センサである。ここで、排ガス中の酸素濃度は、その排ガスを燃焼により生成した混合気の空燃比に応じたものとなる。そして、このＯ2センサ１２の出力VO2/OUTは、図２に実線ａで示す如く、排ガス中の酸素濃度に対応する空燃比が理論空燃比近傍の範囲Δに存するような状態で、該排ガスの酸素濃度にほぼ比例した高感度な変化を生じるものとなる。また、その範囲Δを逸脱した空燃比に対応する酸素濃度では、Ｏ2センサ１２の出力VO2/OUTは飽和して、ほぼ一定のレベルとなる。
【０１０７】
本実施形態のシステムは、基本的には、触媒装置９〜１１からなる排ガス浄化装置の全体の最適な浄化性能を確保するようにエンジン１の各気筒群３，４で燃焼させる混合気の空燃比を操作する制御を行なうものである。この場合、前記Ｏ2センサの出力VO2/OUTを、ある一定の目標値VO2/TARGET（図２を参照）に収束（整定）させるように、エンジン１の各気筒群３，４で燃焼させる混合気の空燃比を操作したとき、各触媒装置９〜１１の経時的な劣化等によらずに、これらの触媒装置９〜１１からなる排ガス浄化装置の全体の最適な浄化性能を確保することができる。
【０１０８】
そして、本実施形態のシステムは、このようにＯ2センサの出力VO2/OUTを一定の目標値VO2/TARGETに収束（整定）させる制御を行なうために、次のような制御器を備えている。
【０１０９】
すなわち、前記Ｏ2センサ１２の出力を用いて、各気筒群３，4で燃焼させる混合気の目標空燃比KCMD（詳しくは各気筒群３，４にそれぞれ属する気筒の排ガスを合流してなる排ガスの酸素濃度により把握される各気筒群３，４毎の空燃比の目標値）を所定の制御サイクルで逐次生成する処理を実行する制御器１５（以下、空燃比処理制御器１５という）と、この空燃比処理制御器１５が求めた目標空燃比KCMDに応じて各気筒群３，４に対する燃料供給量（燃料噴射量）を調整する処理を所定の制御サイクルで実行することで、各気筒群３，４で燃焼させる混合気の空燃比を上記目標空燃比KCMDに操作する空燃比操作手段としての制御器１６（以下、燃料供給制御器１６という）とを備えている。
【０１１０】
尚、燃料供給制御器１６には、Ｏ2センサ１２の出力VO2/OUTや、エンジン１の回転数、吸気圧（吸気管内圧）、冷却水温等を検出するための図示しない各種センサの出力も与えられるようになっている。また、空燃比処理制御器１５と燃料供給制御器１６とは、前記目標空燃比KCMDのデータの他、各種の作動状態情報を相互に授受できるようになっている。
【０１１１】
これらの制御器１５，１６はマイクロコンピュータを用いて構成されたもので、それぞれの制御処理を所定の制御サイクルで実行する。ここで、本実施形態では、空燃比処理制御器１５がその制御処理（目標空燃比KCMDの生成処理）を実行する制御サイクルは、触媒装置９〜１１等に起因した後述の無駄時間や、演算負荷等を考慮して、あらかじめ定めた一定周期（例えば３０〜１００ｍｓ）としている。
【０１１２】
また、燃料供給制御器１６が実行する制御処理（燃料噴射量の調整処理）は、エンジン１の回転数（詳しくはエンジン１の燃焼サイクル）に同期させて行なう必要がある。このため、該燃料供給制御器１６がその制御処理を実行する制御サイクルは、エンジン１のクランク角周期（所謂ＴＤＣ）に同期した周期としている。
【０１１３】
尚、空燃比処理制御器１５の制御サイクルの一定周期は、前記クランク角周期（ＴＤＣ）よりも長いものとされている。
【０１１４】
前記空燃比処理制御器１５及び燃料供給制御器１６のそれぞれの制御処理についてさらに説明する。
【０１１５】
まず、前記空燃比処理制御器１５は、エンジン１の排気系のうちの、エンジン１側からＯ2センサ１２にかけての部分（Ｏ2センサ１２よりも上流側の部分で副排気管６，７や触媒装置９〜１１を含む部分）と、エンジン１及び前記燃料供給制御器１６とを合わせた系（図１の参照符号１７を付した系。以下、対象系１７という）の応答遅れ特性や無駄時間等の挙動特性を考慮しつつ、Ｏ2センサ１２の出力VO2/OUTを前記目標値VO2/TARGETに収束させるように、各気筒群３，４に対する目標空燃比KCMDを所定の制御サイクル（一定周期）で逐次求める処理を行なうものである。
【０１１６】
この処理を行なうために、本実施形態では、上記対象系１７が、各気筒群３，４に対する目標空燃比KCMDを、後述するフィルタリング処理によって両気筒群３，４について合成したものとして定めた目標合成空燃比（以下、これに参照符号KCMD/Tを付する）から、応答遅れと無駄時間とを有してＯ2センサ１２の出力VO2/OUTを生成する系と等価であるとみなす。
【０１１７】
つまり、前記対象系１７は、図３に示す如く、目標合成空燃比KCMD/Tを入力量、Ｏ2センサ１２の出力VO2/OUTを出力量とする１入力１出力の系１８と等価であって、その等価な系１８（以下、対象等価系１８という）が応答遅れ要素と無駄時間要素とからなる系であるとする。
【０１１８】
ここで、上記対象等価系１８の応答遅れ要素は、主として、前記対象系１７が有するエンジン１及び触媒装置９〜１１に起因するものである。また、対象等価系１８の無駄時間要素は、主として、対象系１７が有するエンジン１、副排気管６，７及び触媒装置９〜１１に起因するものである。
【０１１９】
前記空燃比処理制御器１５が実行する基本的な制御処理では、この対象等価系１８を制御対象系としたフィードバック制御のアルゴリズムによって、該対象等価系１８の出力量であるＯ2センサ１２の出力VO2/OUTをその目標値VO2/TARGETに収束させるように、該対象等価系１８に対する制御入力としての目標合成空燃比KCMD/Tを制御サイクル毎に逐次求める。さらに、この目標合成空燃比KCMD/Tから、各気筒群３，４に対する目標空燃比KCMDを求める。尚、各気筒群３，４に対する目標空燃比KCMDは本実施形態では、両気筒群３，４について共通であるが、以下の説明では、しばらくの間、それらを区別し、各気筒群３，４に対する目標空燃比をそれぞれ参照符号KCMD/A，KCMD/Bを付して表す。
【０１２０】
本実施形態では、上記のような制御処理を実行するために、前記対象等価系１８の挙動を表現するモデルをあらかじめ構築しておく。この場合、このモデルの構築にあたっては、対象等価系１８の入力量として、前記目標合成空燃比KCMD/Tとあらかじめ定めた所定の基準空燃比FLAF/BASEとの偏差（＝KCMD/T−FLAF/BASE。以下、目標合成偏差空燃比kcmd/tという）を用いる。さらに、対象等価系１８の出力量として、Ｏ2センサ１２の出力VO2/OUTとこれに対する前記目標値VO2/TARGETとの偏差（＝VO2/OUT−VO2/TARGET。以下、偏差出力VO2という）を用いる。
【０１２１】
尚、上記基準空燃比FLAF/BASEは、本実施形態では例えば「理論空燃比」としている。また、本発明の構成に対応させると、前記目標合成偏差空燃比kcmd/tは、目標合成空燃比データに相当するものであり、Ｏ2センサ１２の偏差出力VO2はＯ2センサ１２の出力を表すデータに相当するものである。
【０１２２】
本実施形態では、これらの目標合成偏差空燃比kcmd/tとＯ2センサ１２の偏差出力VO2とにより次のように対象等価系１８のモデルを構築している。
【０１２３】
すなわち、この対象等価系１８のモデルは、次式（１）の如く、該対象等価系１８の挙動を離散時間系で表現するモデル（より詳しくは対象等価系１８の入力量としての目標合成偏差空燃比kcmd/tに無駄時間を有する自己回帰モデル）として構築する。
【０１２４】
【数１】
0003655146.tif 000002
【０１２５】
ここで、上式（１）において、「ｋ」は空燃比処理制御器１５の離散時間的な制御サイクルの番数を表す整数である（以下、同様）。また、「ｄ」は対象等価系１８が有する無駄時間、すなわち、各制御サイクルにおける目標合成空燃比KCMD/Tもしくは目標合成偏差空燃比kcmd/tの値がＯ2センサ１２の出力VO2/OUTもしくは偏差出力VO2に反映されるようになるまでに要する無駄時間を空燃比処理制御器１５の制御サイクル数で表したものである。この無駄時間ｄの値は、後述するようにあらかじめ定めた所定値（固定値）に設定されるものである。
【０１２６】
また、式（１）の右辺第１項及び第２項はそれぞれ対象等価系１８の応答遅れ要素を表す自己回帰項である。そして、「a1」、「a2」はそれぞれ１次目の自己回帰項のゲイン係数、2次目の自己回帰項のゲイン係数である。これらのゲイン係数a1，a2は別の言い方をすれば、対象等価系１８の出力量としてのＯ2センサ１２の偏差出力VO2に係る係数パラメータである。
【０１２７】
さらに、式（１）の右辺第３項は、対象等価系１８の無駄時間要素を表すものであり、より正確には、対象等価系１８の入力量としての目標合成偏差空燃比kcmd/tに対象等価系１８の無駄時間ｄを含めて表現したものである。そして、「b1」はこの要素に係るゲイン係数であり、別の言い方をすれば、対象等価系１８の入力量としての目標合成偏差空燃比kcmdに係る係数パラメータである。
【０１２８】
これらのゲイン係数a1，a2，b1は、対象等価系１８のモデルの挙動を規定する上で、ある値に設定（同定）すべきパラメータであり、本実施形態では後述の同定器によって逐次同定されるものである。
【０１２９】
このように式（１）により離散時間系で表現した対象等価系１８のモデルは、それを言葉で表現すれば、空燃比処理制御器１５の各制御サイクルにおける対象等価系１８の出力量としてのＯ2センサ１２の偏差出力VO2(k+1)を、その制御サイクルよりも過去の制御サイクルにおける複数（本実施形態では二つ）の偏差出力VO2(k)，VO2(k-1)と、対象等価系１８の無駄時間ｄ以前の制御サイクルにおけるおける対象等価系１８の入力量としての目標合成偏差空燃比kcmd/t(k-d)とにより表したものである。
【０１３０】
一方、上記のような対象等価系１８の入力量である目標合成空燃比KCMD/Tは、本実施形態では、各気筒群３，４に対する目標空燃比KCMD/A，KCMD/Bを、以下に説明する混ざりモデル形式のフィルタリング処理によって両気筒群３，４について合成したものとして定義している。この場合、前記対象等価系１８のモデルにおいて目標合成偏差空燃比kcmd/t（＝KCMD/T−FLAF/BASE）を用いることから、この目標合成偏差空燃比kcmd/tを、気筒群３に対する目標空燃比KCMD/Aと前記基準空燃比FLAF/BASEとの偏差kcmd/a（＝KC MD/A−FLAF/BASE。以下、目標偏差空燃比kcmd/aという）と、気筒群４に対する目標空燃比KCMD/Bと基準空燃比との偏差FLAF/BASEとの偏差kcmd/b（＝KCMD/B−FLAF/BASE。以下、目標偏差空燃比kcmd/bという）とを合成したものとして定義する。
【０１３１】
すなわち、本実施形態では、目標合成偏差空燃比kcmd/tは、各気筒群３，４に対する目標偏差空燃比kcmd/a，kcmd/bを、次式（２）により表す混ざりモデル形式のフィルタリング処理によって合成したものとして定義する。
【０１３２】
【数２】
0003655146.tif 000003
【０１３３】
ここで、式（２）の右辺に現れる「dA」は、空燃比処理制御器１５の各制御サイクルにおける気筒群３側の目標空燃比KCMD/Aが気筒群３や副排気管６等を介してＯ2センサ１２の出力VO2/OUTに反映されるようになるまでに要する無駄時間（以下、気筒群３側無駄時間という）を空燃比処理制御器１５の制御サイクル数で表したものである。また、「dB」は、各制御サイクルにおける気筒群４側の目標空燃比KCMD/Bが気筒群４や副排気管７等を介してＯ2センサ１２の出力VO2/OUTに反映されるようになるまでに要する無駄時間（以下、気筒群４側無駄時間という）を空燃比処理制御器１５の制御サイクル数で表したものである。
【０１３４】
これらの無駄時間dA，dBの値は、各気筒群３，４の動作特性、各副排気管６，７の長さや、各副排気管６，７に備えた触媒装置９，１０の容量、主排気管１１の触媒装置１１の容量等に応じたものとなる。そして、本実施形態では、それらの無駄時間dA，dBの値は、各種実験やシミュレーションを通じてあらかじめ定めた所定値（固定値）に設定しておく。
【０１３５】
尚、式（２）の右辺の各項の係数A1，A2，B1，B2は後述するようにあらかじめ設定されるものである。
【０１３６】
つまり、本実施形態では、対象等価系１８の無駄時間ｄ前の目標合成偏差空燃比kcmd/t(k-d)を、気筒群３に対する目標偏差空燃比kcmd/aの前記気筒群３側無駄時間dA以前の複数（本実施形態では二つ）の時系列データkcmd/a(k-dA)，kcmd/a(k-dA-1)と、気筒群４に対する目標偏差空燃比kcmd/bの前記気筒群４側無駄時間dB以前の複数（本実施形態では二つ）の時系列データkcmd/b(k-dB)，kcmd/b(k-dB-1)とを成分とする線形関数（より詳しくはそれらの時系列データの線形結合）により定める。
【０１３７】
この場合、上記各時系列データkcmd/a(k-dA)，kcmd/a(k-dA-1)，kcmd/b(k-dB)，kcmd/b(k-dB-1)にそれぞれ係る係数A1，A2，B1，B2は、A1＋A2＋B1＋B2＝１（好ましくはA1＋A2＝B1＋B2＝0.5）となり、また、A1＞A2、B1＞B2となる値（例えばA1＝B1＝0.4、A2＝B2＝0.1）にあらかじめ設定しておく。
【０１３８】
このようにして目標合成偏差空燃比kcdm/tを定めたとき、該目標合成偏差空燃比kcmd/tは、上記時系列データkcmd/a(k-dA)，kcmd/a(k-dA-1)，kcmd/b(k-dB)，kcmd/b(k-dB-1)の重み付き平均値としての意味を持つ。
【０１３９】
尚、目標合成偏差空燃比kcmd/tを定めるために、各気筒群３，４に対する目標偏差空燃比kcmd/a，kcmd/bのさらに多くの時系列データを用いてもよい。
【０１４０】
上記のように目標合成偏差空燃比kcmd/tを定めたとき、制御サイクル毎の目標合成偏差空燃比kcmd/t(k)は、前記式（２）の右辺の全体を対象等価系１８の無駄時間ｄ分の制御サイクルだけ未来側にシフトした式により与えられることとなる。
【０１４１】
ここで、前記気筒群３側無駄時間dA及び気筒群４側無駄時間dBについて、例えばdA≧dBであるとし、それらの偏差（dA−dB）をdD（≧０）とおく。このとき、前記対象等価系１８の無駄時間ｄが気筒群３側無駄時間dA及び気筒群４側無駄時間dBのうちの短い方、すなわち、気筒群４側無駄時間dBに等しいとする（ｄ＝dBであるとする）と、前記式（２）から、次式（３）が得られる。
【０１４２】
【数３】
0003655146.tif 000004
【０１４３】
従って、制御サイクル毎の目標合成偏差空燃比kcmd/t(k)は、その制御サイクル以前における各気筒群３，４の目標偏差空燃比kcmd/a，kcmd/bの時系列データkcmd/a(k-dD)，kcdm/a(k-dD-1)，kcmd/b(k)，kcmd/b(k-1)に式（３）フィルタリング処理を施したものとして定義されることとなる。
【０１４４】
さらに、本実施形態では、Ｏ2センサ１２の出力VO2/OUTを目標値VO2/TARGETに収束させるように対象等価系１８の制御入力としての上記目標合成偏差空燃比kcmd/tを求めることで、各気筒群３，４に対する目標空燃比KCMD/A，KCMD/Bは、両気筒群３，４について共通のものとすることができる。このとき、各気筒群３，４に対する共通の目標空燃比をあらためてKCMD（＝KCMD/A＝KCMD/B）とおき、この目標空燃比KCMDと前記基準空燃比FLAF/BASEとの偏差である目標偏差空燃比（＝KCMD−FLAF/BASE）をkcmd（＝kcmd/a＝kcmd/b）とおくと、前記式（３）は次式（４）に書き換えられる。
【０１４５】
【数４】
0003655146.tif 000005
【０１４６】
そして、この式（４）を用いると、制御サイクル毎の目標合成空燃比KCMD/Tあるいは、目標合成偏差空燃比kcmd/t(k)を決定すれば、逆算的に、各気筒群３，４に対する制御サイクル毎の目標偏差空燃比kcmd(k)、ひいては目標空燃比KCMD(k)（＝kcmd(k)＋FLAF/BASE）を決定することができることとなる。
【０１４７】
具体的には、前記気筒群３側排気系無駄時間dA及び気筒群４側排気系無駄時間dBの間の偏差dD（＝dA1−dB1。以下、これを気筒群別排気系無駄時間差dDという）が、dD＝０であるかdD＞０であるかに応じて、それぞれ次式（５），（６）により制御サイクル毎の目標偏差空燃比kcmd(k)を決定することができる。
【０１４８】
【数５】
0003655146.tif 000006
【０１４９】
【数６】
0003655146.tif 000007
【０１５０】
つまり、各気筒群３，４に対する制御サイクル毎の目標偏差空燃比kcmd(k)は、その制御サイクルで決定した目標合成偏差空燃比kcmd/t(k)と、過去の制御サイクルにおける目標偏差空燃比kcmd(k-dD),kcmd(k-dD-1),kcmd(k-1)（式（５）の場合）あるいはkcmd(k-1)（式（６）の場合）とから求めることができる。
【０１５１】
尚、本実施形態では、前記気筒群別排気系無駄時間差dDは、dD＞０（例えばdD＝２）であり、この場合には、式（５）によって、目標合成偏差空燃比kcmd/t(k)に対応する各気筒群３，４の目標偏差空燃比kcmd(k)を制御サイクル毎に決定することができる。
【０１５２】
以上のようなことから、本実施形態では、対象等価系１８のモデルにおける無駄時間ｄの値として、気筒群３側無駄時間dA及び気筒群４側無駄時間dBのうちの短い方（本実施形態ではdB）の値とほぼ等しい値を設定する。この場合、対象等価系１８の基礎となる前記対象系１７には、エンジン１が含まれているので、気筒群３側無駄時間及び気筒群４側無駄時間は、エンジン１の回転数が低くなるほど、長くなる。このため、本実施形態で、対象等価系１８のモデルの無駄時間ｄの値として設定する気筒群４側無駄時間dBは、例えばエンジン１のアイドリング回転数における気筒群４側無駄時間dBとほぼ等しい値（本実施形態では例えばｄ＝７）である。
【０１５３】
そして、本実施形態では、各気筒群３，４に対する目標空燃比KCMDを両気筒群３，４について共通とし、前記式（４）を、各気筒群３，４の目標偏差空燃比kcmdに対して目標合成偏差空燃比kcmd/tを定める混ざりモデル形式のフィルタリング処理を表す基本の演算式として用いる。
【０１５４】
尚、このように定めた目標合成偏差空燃比kcmd/tは、各気筒群３，４から排出される排ガスを、仮にそれらの気筒群３，４の近傍で合流させたとした場合に、その合流した排ガスの酸素濃度から把握される空燃比の目標値としての意味をもつものである。
【０１５５】
また、本発明の構成に対応させると、前記目標合成偏差空燃比kcmd/tは、目標合成空燃比データに相当するものであり、前記目標偏差空燃比kcmdは目標空燃比データに相当するものである。
【０１５６】
前記空燃比処理制御器１５は、基本的には上述のように定めた対象等価系１８のモデルや、混ざりモデル形式のフィルタリング処理等を基礎として構築されたアルゴリズムによって、Ｏ2センサ１２の偏差出力VO2を「０」に収束させる（Ｏ2センサ１２の出力VO2/OUTを目標値VO2/TARGETに収束させる）ために要求される目標合成偏差空燃比kcmd/t（対象等価系１８に対する制御入力）を制御サイクル毎に逐次求める。このとき、この目標合成偏差空燃比kcmd/tを求めるに際しては、対象等価系１８の挙動特性の変化や、該対象等価系１８の応答遅れ及び無駄時間ｄの影響を補償する。そして、この求めた目標合成偏差空燃比kcmd/tから、各気筒群３，４に対する目標空燃比kcmd、さらには目標空燃比KCMDを制御サイクル毎に逐次求め、その目標空燃比KCMDを前記燃料供給制御器１６に与える。
【０１５７】
このような処理を行なうために、空燃比処理制御器１５は、図４に示すような機能的構成を具備している。
【０１５８】
すなわち、空燃比処理制御器１５は、前記Ｏ2センサ１２の出力VO2/OUTから前記目標値VO2/TARGETを減算することで前記偏差出力VO2を逐次求める減算処理器２２と、前記対象等価系１８のモデル（式（１））の設定すべきパラメータである前記ゲイン係数a1，a2，b1の同定値a1ハット，a2ハット，b1ハット（以下、同定ゲイン係数a1ハット，a2ハット，b1ハットという）を逐次求める同定器２３（同定手段）とを具備する。
【０１５９】
また、空燃比処理制御器１５は、前記対象等価系１８の無駄時間ｄ後のＯ2センサ１２の出力の推定値を表すデータとして、該無駄時間ｄ後のＯ2センサ１２の偏差出力VO2の推定値VO2バー（以下、推定偏差出力VO2バーという）を逐次求める推定器２４（推定手段）と、フィードバック制御の一手法である適応スライディングモード制御のアルゴリズムにより、Ｏ2センサ１２の出力VO2/OUTを目標値VO2/TARGETに収束させるために要求される前記目標合成偏差空燃比kcmd/tを逐次求めるスライディングモード制御器２５（目標合成空燃比データ生成手段）とを具備する。
【０１６０】
また、空燃比処理制御器１５は、スライディングモード制御器２５が求めた目標合成偏差空燃比kcmd/tに対して前記式（５）の演算処理（変換処理）を行なうことで、各気筒群３，４に対する目標偏差空燃比kcmdを逐次求める目標偏差空燃比算出器２６（目標空燃比データ生成手段）と、その目標偏差空燃比kcmdに前記基準空燃比FLAF/BASEを加算することで各気筒群３，４に対する目標空燃比KCMDを逐次求める加算処理器２７とを具備する。
【０１６１】
さらに、本実施形態では、燃料供給制御器１６は、後述するように、エンジン１の運転状態等によっては、空燃比処理制御器１５が求めた目標空燃比KCMDを使用せずに、それとは別に定めた目標空燃比を使用して各気筒群３，４で実際に燃焼させる混合気の空燃比を操作することがある（以下、この別の目標空燃比を含めて燃料供給制御器１６が各気筒群３，４の空燃比を操作するために実際に使用する目標空燃比を実使用目標空燃比RKCMDという）。そして、詳細は後述するが、この実使用目標空燃比RKCMDを前記同定器２３や推定器２４の演算処理に反映させるために、次のような機能的構成も具備している。
【０１６２】
すなわち、空燃比処理制御器１５は、燃料供給制御器１６から与えられる実使用目標空燃比RKCMDから前記基準空燃比FLAF/BASEを減算することで、燃料供給制御器１６が実際に使用している目標偏差空燃比に相当する実使用目標偏差空燃比rkcmd（＝RKCMD−FLAF/BASE）を逐次求める減算処理器２８と、この実使用目標偏差空燃比rkcmdに対して、前記式（４）の右辺と同じ形のフィルタリング処理を施すことで、燃料供給制御器１６が実際に使用している実使用目標偏差空燃比rkcmdの基礎となる目標合成偏差空燃比としての実使用目標合成偏差空燃比rkcmd/t（実使用目標合成空燃比データ）を逐次生成するフィルタ２９（フィルタ手段）とを具備する。
【０１６３】
この場合、このフィルタ２９のフィルタリング処理は、具体的には、次式（７）により与えられ、この式（７）により、空燃比処理制御器１５の制御サイクル毎に、前記実使用目標合成偏差空燃比rkcmd/t(k)が求められる。
【０１６４】
【数７】
0003655146.tif 000008
【０１６５】
つまり、制御サイクル毎の実使用目標合成偏差空燃比rkcmd/t( k)は、その制御サイクル以前に、燃料供給制御器１６が使用しており、あるいは使用した実使用目標空燃比RKCMDに相当する実使用目標偏差空燃比rkcmdの時系列データrkcmd(k)，rkcmd(k-1)，rkcmd(k-dD)，rkcmd(k-dD-1)から式（７）のフィルタリング処理によって算出される。
【０１６６】
尚、空燃比処理制御器１５の各制御サイクルにおいて燃料供給制御器１６が実際に使用している実使用目標空燃比RKCMD(k)は、通常的には、前回の制御サイクルで空燃比処理制御器１５が最終的に求めた目標空燃比KC MD(k-1)に等しい。つまり、通常的には、rkcmd(k)＝kcmd(k-1)である。従って、前記フィルタ２９が制御サイクル毎に求める実使用目標合成偏差空燃比rkcmd/t(k)は、スライディングモード制御器２５が後述する如く求める目標合成偏差空燃比kcmd/tの前回値kcmd/t(k-1)に対応するものである（通常的には、rkcmd/t(k)＝kcmd/t(k-1)）。
【０１６７】
前記同定器２３、推定器２４及びスライディングモード制御器２５による処理のアルゴリズムは以下のように構築されている。
【０１６８】
まず、同定器２３は、前記対象等価系１８のモデルのモデル化誤差を極力小さくするように前記同定ゲイン係数a1ハット，a2ハット，b1ハットをリアルタイムで逐次更新しつつ算出するものであり、その同定処理を次のように行う。
【０１６９】
すなわち、同定器２３は、空燃比処理制御器１５の制御サイクル毎に、まず、対象等価系１８のモデルを表す前記式（１）を１制御サイクル分、過去側にシフトし、ゲイン係数a1，a2，b1を前回の制御サイクルで決定した同定ゲイン係数a1(k-1)ハット，a2(k-1)ハット，b1(k-1)ハット（同定ゲイン係数の現在値）で置き換えてなる次式（８）を基礎として、対象等価系１８のモデル上での現在の制御サイクルにおけるＯ2センサ１２の偏差出力VO2(k)（以下、同定偏差出力VO2(k)ハットという）の値を求める。
【０１７０】
【数８】
0003655146.tif 000009
【０１７１】
ここで、この式（８）によれば、制御サイクル毎の上記同定偏差出力VO2(k)ハットは、基本的には、前回の制御サイクルで決定した同定ゲイン係数a1(k-1)ハット，a2(k-1)ハット，b1(k-1)ハットと、Ｏ2センサ１２の偏差出力VO2の過去値VO2(k-1)，VO2(k-2)と、目標合成偏差空燃比kcmd /t（これは後述するスライディングモード制御器２５により求められる）の過去値kcmd/t(k-d-1)とを用いて式（１０）の右辺の演算を行うことで、求めることができる。
【０１７２】
しかるに、本実施形態では、先にも述べたように、燃料供給制御器１６は、空燃比処理制御器１５が生成する目標空燃比KCMDを使用せずに、各気筒群３，４における空燃比を操作する場合がある。このため、対象等価系１８の基礎となる前記対象系１７の実際の挙動状態を逐次反映させながら、前記ゲイン係数a1，a2，b1の値を同定する上では、空燃比処理制御器１５が生成する目標空燃比KCMDに対応して定まる目標合成偏差空燃比kcmd/tを用いるよりも、前記フィルタ２９により逐次求められる実使用目標合成偏差空燃比rkcmd/tを用いることが好ましいと考えられる。
【０１７３】
そこで、本実施形態では、前記式（８）の右辺の目標合成偏差空燃比kcmd/tの代わりに、フィルタ２９が求める実使用目標合成偏差空燃比rkcmd/tを用いて、制御サイクル毎の上記同定偏差出力VO2(k)ハットを求めることとする。
【０１７４】
この場合、前述のように、通常的には、rkcmd/t(k)＝kcmd/t(k-1)であることを考慮すると、同定偏差出力VO2(k)ハットは、具体的には、次式（９）により求められる。
【０１７５】
【数９】
0003655146.tif 000010
【０１７６】
つまり、本実施形態では、同定器２３は、まず、前回の制御サイクルで決定した同定ゲイン係数a1(k-1)ハット，a2(k-1)ハット，b1(k-1)ハットの値と、前記減算処理器２２が算出したＯ2センサ１２の偏差出力VO2の過去値のデータ（詳しくは１制御サイクル前の偏差出力VO2(k-1)と２制御サイクル前の偏差出力VO2(k-2)）と、前記フィルタ２９が算出した実使用目標合成偏差空燃比rkcmd/tの過去値のデータ（詳しくは対象等価系１８の無駄時間ｄ前の制御サイクルにおける実使用目標合成偏差空燃比rkcmd/t(k-d)）とを用いて、式（９）の演算を行うことで、制御サイクル毎の同定偏差出力VO2(k)ハットの値を求める。
【０１７７】
尚、式（９）の第３項で用いる対象等価系１８の無駄時間ｄの値は、前述の如く設定した値（一定値。これは本実施形態では、前記気筒群４側無駄時間dBの設定値である）を用いる。また、式（９）中の「Θ」，「ξ」は、同式（９）の但し書きで定義したベクトルである。そして、式（９）やその但し書き中で用いている「Ｔ」は転置を意味する（以下、同様）。
【０１７８】
さらに同定器２３は、上記同定偏差出力VO2(k)ハットと今現在のＯ2センサ１２の実際の偏差出力VO2(k)との偏差ID/E(k)を、対象等価系１８のモデルのモデル化誤差を表すものとして次式（１０）により求める（以下、この偏差ID/Eを同定誤差ID/Eという）。
【０１７９】
【数１０】
0003655146.tif 000011
【０１８０】
同定器２３は、上記同定誤差ID/E（より正確には同定誤差ID/Eの絶対値）を最小化するようなアルゴリズムにより、新たな同定ゲイン係数a1(k)ハット，a2(k)ハット，b1(k)ハット、換言すれば、これらの同定ゲイン係数を成分とする新たな前記ベクトルΘ(k)（以下、このベクトルを同定ゲイン係数ベクトルΘという）を求めるものであり、その算出を、次式（１１）により行う。
【０１８１】
【数１１】
0003655146.tif 000012
【０１８２】
すなわち、同定器２３は、前回の制御サイクルで決定した同定ゲイン係数a1(k-1)ハット，a2(k-1)ハット，b1(k-1)ハットを、同定誤差ID/E(k)に比例させた量だけ変化させることで新たな同定ゲイン係数ar1(k)ハット，ar2(k)ハット，br1(k)ハットを求める。
【０１８３】
ここで、式（１１）中の「Ｋp(k)」は制御サイクル毎に次式（１２）により決定される三次のベクトルで、各同定ゲイン係数a1ハット，a2ハット，b1ハットの同定誤差ID/Eに応じた変化度合い（ゲイン）を規定するものである。
【０１８４】
【数１２】
0003655146.tif 000013
【０１８５】
また、上式（１２）中の「Ｐ(k)」は制御サイクル毎に次式（１３）の漸化式により更新される三次の正方行列である。
【０１８６】
【数１３】
0003655146.tif 000014
【０１８７】
尚、式（１３）中の行列Ｐ(k)の初期値Ｐ(0)は、その各対角成分を正の数とした対角行列である。また、式（１３）中の「λ1」、「λ2」は０＜λ1≦１及び０≦λ2＜２の条件を満たすように設定される。
【０１８８】
この場合、上記λ1，λ2の設定の仕方によって、最小２乗法、重み付き最小２乗法、固定ゲイン法、漸減ゲイン法、固定トレース法等、各種の具体的なアルゴリズムが構成される。本実施形態では、例えば最小２乗法（この場合、λ1＝λ2＝１）を採用している。
【０１８９】
本実施形態における同定器２３は基本的には前述のようなアルゴリズム（詳しくは逐次型最小二乗法の演算処理）によって、前記同定誤差ID/Eを最小化するように前記同定ゲイン係数a1ハット，a2ハット，b1ハットを制御サイクル毎に逐次更新しつつ求める。このような処理によって、実際の対象等価系１８の挙動に適合した同定ゲイン係数a1ハット，a2ハット，b1ハットがリアルタイムで逐次求められる。
【０１９０】
以上説明したアルゴリズムが同定器２３による基本的な処理のアルゴリズムである。
【０１９１】
次に、前記推定器２４は、後に詳細を説明するスライディングモード制御器２５による目標合成偏差空燃比kcmd/tの算出処理に際しての対象等価系１８の無駄時間ｄ（本実施形態ではｄ＝７）の影響を補償するために、その無駄時間ｄ後のＯ2センサ１２の偏差出力VO2の推定値である前記推定偏差出力VO2バーを制御サイクル毎に逐次求めるものである。
【０１９２】
このようなＯ2センサ１２の推定偏差出力VO2バーを求めるアルゴリズムは前記式（１）により表現した対象等価系１８のモデルに基づいて次のように構築されている。
【０１９３】
すなわち、式（１）を用いることで、各制御サイクルにおける前記無駄時間ｄ後のＯ2センサ１２の偏差出力VO2(k+d)の推定値である推定偏差出力VO2(k+d)バーは、Ｏ2センサ１２の偏差出力VO2の時系列データVO2(k)，VO2(k-1)と、前記目標合成偏差空燃比kcmd/tの過去値の時系列データkcmd/t(k-j)（ｊ＝1,2,…,d)とを用いて次式（１４）により表される。
【０１９４】
【数１４】
0003655146.tif 000015
【０１９５】
ここで、式（１４）において、「α1」，「α2」は、それぞれ同式（１４）の但し書きで定義した行列Ａのべき乗Ａd(ｄ：無駄時間）の第１行第１列成分、第１行第２列成分である。また、「βj」（ｊ＝1,2,…,d)は、それぞれ、行列Ａのべき乗Ａj-1（ｊ＝1,2,…,d)と同式（１４）の但し書きで定義したベクトルＢとの積Ａj-1・Ｂの第１行成分である。
【０１９６】
さらに、この式（１７）において、の目標合成偏差空燃比kcmd/tの過去値の時系列データkc md/t(k-1)，…，kcmd/t(k-d2+1)は、基本的には、燃料供給制御器１６がエンジン１の各気筒群３，４の空燃比を操作するために現在使用しており、あるいは過去に使用した実使用目標空燃比RKCMDに対応するものであるが、先に述べたように該燃料供給制御器１６は空燃比処理制御器１５が求める目標空燃比KCMD以外の別の目標空燃比を各気筒群３，４の操作のために使用することがある。従って、前記同定器２３の場合と同様に、対象等価系１８の基礎となる前記対象系１７の実際の挙動状態を逐次反映させながら、前記推定偏差出力VO2(k+d)バーを求めるためには、空燃比処理制御器１５が生成する目標空燃比KCMDに対応して定まる目標合成偏差空燃比kcmd/tを用いるよりも、前記フィルタ２９により逐次求められる実使用目標合成偏差空燃比rkcmd/tを用いることが好ましいと考えられる。
【０１９７】
そこで、本実施形態では、通常的には、rkcmd/t(k)＝kcmd/t(k-1)であることも考慮し、式（１４）の目標合成偏差空燃比kcmd/tの過去値の時系列データkcmd/t(k-j)（ｊ＝1,2，…,d)の代わりに、前記フィルタ２９が逐次求める前記実使用目標合成偏差空燃比rkcmd/tの現在値及び過去値の時系列データrkcmd/t(k-j+1)（ｊ＝1,2，…,d)を用いることとする。そして、次式（１５）により、制御サイクル毎の推定偏差出力VO2(k+d)バーを求めることとする。
【０１９８】
【数１５】
0003655146.tif 000016
【０１９９】
つまり、本実施形態では、推定器２４は、制御サイクル毎に、Ｏ2センサ１２の偏差出力VO2の現在値及び過去値の時系列データVO2(k)，VO2(k-1)と、前記フィルタ２９が求める前記実使用目標合成偏差空燃比rkcmdの現在値及び過去値の時系列データrkcmd (k-j+1)（ｊ＝1,…,d）とを用いて式（１５）の演算を行うことによって、Ｏ2センサ１２の推定偏差出力VO2(k+d)バーを求める。
【０２００】
この場合、式（１５）の演算に必要な係数値α1，α2及びβ(j)（ｊ＝1,2,…,ｄ）は、基本的には、前記同定器２３によって求められた同定ゲイン係数a1ハット，a2ハット，b1ハットの最新値（現在の制御サイクルで求めた値）から、式（１４）の但し書きの定義に従って算出する。また、式（１５）の演算に必要な対象等価系１８の無駄時間ｄは前述の如く設定した値を用いる。
【０２０１】
以上説明した処理が、推定器２４が実行する基本的アルゴリズムである。
【０２０２】
次に、前記スライディングモード制御器２５を説明する。
【０２０３】
スライディングモード制御器２５は、通常的なスライディングモード制御に外乱等の影響を極力排除するための適応則（適応アルゴリズム）を加味した適応スライディングモード制御のアルゴリズムによって、Ｏ2センサ１２の出力VO2/OUTをその目標値VO2/TARGETに収束させる（Ｏ2センサ１２の偏差出力VO2を「０」に収束させる）ために要求される目標合成偏差空燃比kcmd/t（対象等価系１８に与えるべき制御入力）を制御サイクル毎に逐次求めるものである。そして、その処理のためのアルゴリズムは以下に説明するように構築されている。
【０２０４】
まず、スライディングモード制御器２５が実行する適応スライディングモード制御のアルゴリズムに必要な切換関数と、この切換関数により定義される超平面（これはすべり面とも言われる）とについて説明する。
【０２０５】
スライディングモード制御器２５によるスライディングモード制御の基本的な考え方としては、制御すべき状態量（制御量）を、例えばＯ2センサ１２の偏差出力VO2の複数の時系列データとし、スライディングモード制御用の切換関数σを次式（１６）により定義する。
【０２０６】
【数１６】
0003655146.tif 000017
【０２０７】
すなわち、該切換関数σは、Ｏ2センサ１２の偏差出力VO2の現在以前の複数（本実施形態では二つ）の時系列データVO2(k)，VO2(k-1)（詳しくは、現在の制御サイクルと前回の制御サイクルとにおける偏差出力VO2(k)，VO2(k-1)）を成分とする線形関数（時系列データVO2(k)，VO2(k-1)の線形結合）により定義する。尚、偏差出力VO2(k)，VO2(k-1)を成分とするベクトルとして式（１６）中で定義したベクトルＸを以下、状態量Ｘという。
【０２０８】
この場合、切換関数σの成分VO2(k)，VO2(k-1)に係る係数s1，s2は、次式（１７）の条件を満たすような値にあらかじめ設定しておく。この条件は、切換関数σの値が「０」となる状態で、偏差出力VO2が安定に「０」に収束するために係数s1，s2が満たすべき条件である。
【０２０９】
【数１７】
0003655146.tif 000018
【０２１０】
尚、本実施形態では、簡略化のために係数s1をs1＝１とし（この場合、s2／s1＝s2である）、−１＜s2＜１の条件を満たすように係数s2の値（一定値）を設定している。
【０２１１】
このような切換関数σに対して、スライディングモード制御用の超平面はσ＝０なる式によって定義されるものである。この場合、前記状態量Ｘは二次系であるので超平面σ＝０は図５に示すように直線となり、このとき、該超平面σ＝０は切換線とも言われる。
【０２１２】
尚、本実施形態では、切換関数の成分として、実際には前記推定器２４により求められる前記推定偏差出力VO2バーの時系列データを用いるのであるが、これについては後述する。
【０２１３】
スライディングモード制御器２５が用いる適応スライディングモード制御は、状態量Ｘ＝（VO2(k)，VO2(k-1)）を上記の如く設定した超平面σ＝０に収束させる（切換関数σの値を「０」に収束させる）ための制御則である到達則と、その超平面σ＝０への収束に際して外乱等の影響を補償するための制御則である適応則（適応アルゴリズム）とにより該状態量Ｘを超平面σ＝０に収束させる（図５のモード１）。そして、該状態量Ｘを所謂、等価制御入力によって超平面σ＝０に拘束しつつ（切換関数σの値を「０」に保持する）、該状態量Ｘを超平面σ＝０上の平衡点であるVO2(k)＝VO2(k-1)＝０となる点、すなわち、Ｏ2センサ１２の出力VO2/OUTの時系列データVO2/OUT(k )，VO2/OUT(k-1)が目標値VO2/TARGETに一致するような点に収束させる（図５のモード２）。
【０２１４】
尚、通常的なスライディングモード制御では、前記モード１において適応則が省略され、到達則のみによって、状態量Ｘを超平面σ＝０に収束させる。
【０２１５】
上記のように状態量Ｘを超平面σ＝０の平衡点に収束させるためにスライディングモード制御器２５が生成する目標合成偏差空燃比kcmd/tは、状態量Ｘを超平面σ＝０上に拘束するための制御則に従って前記対象等価系１８に与えるべき入力成分である等価制御入力ｕeqと、前記到達則に従って対象等価系１８に与えるべき入力成分ｕrch（以下、到達則入力ｕrchという）と、前記適応則に従って対象等価系１８に与えるべき入力成分ｕadp（以下、適応則入力ｕadpという）との総和により与えられる（次式（１８））。
【０２１６】
【数１８】
0003655146.tif 000019
【０２１７】
これらの等価制御入力ｕeq、到達則入力ｕrch及び適応則入力ｕadpは、本実施形態では、前記式（１）により表した対象等価系１８のモデルに基づいて次のように決定する。
【０２１８】
まず、前記状態量Ｘを超平面σ＝０に拘束する（切換関数σの値を「０」に保持する）ために対象等価系１８に与えるべき入力成分である前記等価制御入力ｕeqは、σ(k+1)＝σ(k)＝０なる条件を満たす目標合成偏差空燃比kcmd/tである。そして、このような条件を満たす等価制御入力ｕeqは、式（１）と式（１６）とを用いて次式（１９）により与えられる。
【０２１９】
【数１９】
0003655146.tif 000020
【０２２０】
この式（１９）が、各制御サイクルにおける等価制御入力ｕeq(k)を求めるための基本式である。
【０２２１】
また、前記到達則入力ｕrchは、本実施形態では、基本的には次式（２０）により決定するものとする。
【０２２２】
【数２０】
0003655146.tif 000021
【０２２３】
すなわち、各制御サイクルにおける到達則入力ｕr ch(k)は、対象等価系１８の無駄時間ｄを考慮し、その無駄時間ｄ後の切換関数σ(k+d)の値に比例させるように決定する。
【０２２４】
この場合、式（２０）中の係数Ｆ（これは到達則のゲインを規定する）は、次式（２１）の条件を満たすように設定する。
【０２２５】
【数２１】
0003655146.tif 000022
【０２２６】
尚、式（２１）に示した係数Ｆの好ましい条件は、切換関数σの値が「０」に対して振動的な変化（所謂チャタリング）を生じるのを抑制する上で好適な条件である。
【０２２７】
また、前記適応則入力ｕadpは、本実施形態では、基本的には次式（２２）により決定するものとする。ここで式（２２）中のΔＴは空燃比処理制御器１５の制御サイクルの周期（一定値）である。
【０２２８】
【数２２】
0003655146.tif 000023
【０２２９】
すなわち、各制御サイクルにおける適応則入力ｕadp(k)は、対象等価系１８の無駄時間ｄを考慮し、該無駄時間ｄ後までにおける切換関数σの値と制御サイクルの周期ΔＴとの積の制御サイクル毎の積算値（これは切換関数σの値の積分値に相当する）に比例させるように決定する。
【０２３０】
この場合、式（２２）中の係数Ｇ（これは適応則のゲインを規定する）は、次式（２３）の条件を満たすように設定する。
【０２３１】
【数２３】
0003655146.tif 000024
【０２３２】
尚、前記式（２１）、（２３）の設定条件のより具体的な導出の仕方については、本願出願人が既に特開平１１−９３７４１号公報等にて詳細に説明しているので、ここでは詳細な説明を省略する。
【０２３３】
前記対象等価系１８に与えるべき制御入力としてスライディングモード制御器２５が生成する目標合成偏差空燃比kcmd/tは、基本的には前記式（１９）、（２０）、（２２）により決定される等価制御入力ｕeq、到達則入力ｕrch及び適応則入力ｕadpの総和（ｕeq＋ｕrch＋ｕadp）として決定すればよい。しかるに、前記式（１９）、（２０）、（２２）で使用するＯ2センサ１２の偏差出力VO2(k+d)，VO2(k+d-1)や、切換関数σの値σ(k+d)等は未来値であるので直接的には得られない。
【０２３４】
そこで、スライディングモード制御器２５は、前記式（１９）の演算に必要な偏差出力VO2(k+d)，VO2(k+d-1)の代わりに、それらの推定値（予測値）として前記推定器２４が前述の如く求める推定偏差出力VO2(k+d)バー，VO2(k+d-1)バーを用い、次式（２４）により制御サイクル毎の等価制御入力ｕeq(k)を算出する。
【０２３５】
【数２４】
0003655146.tif 000025
【０２３６】
また、本実施形態では、実際には、推定器２４により前述の如く逐次求められた推定偏差出力VO2バーの時系列データを制御すべき状態量とし、前記式（１６）により定義した切換関数σに代えて、次式（２５）により切換関数σバーを定義する（この切換関数σバーは、前記式（１６）の偏差出力VO2の時系列データを推定偏差出力VO2バーの時系列データで置き換えたものである）。
【０２３７】
【数２５】
0003655146.tif 000026
【０２３８】
そして、スライディングモード制御器２５は、前記式（２０）により前記到達則入力ｕrchを決定するための切換関数σの値の代わりに、前記式（２５）により表される切換関数σバーの値を用いて次式（２６）により制御サイクル毎の到達則入力ｕrch(k)を算出する。
【０２３９】
【数２６】
0003655146.tif 000027
【０２４０】
同様に、スライディングモード制御器２５は、前記式（２２）により前記適応則入力ｕadpを決定するための切換関数σの値の代わりに、前記式（２０）により表される切換関数σバーの値を用いて次式（２７）により制御サイクル毎の適応則入力ｕadp(k)を算出する。
【０２４１】
【数２７】
0003655146.tif 000028
【０２４２】
尚、前記式（２４），（２６），（２７）により等価制御入力ｕeq、到達則入力ｕrch及び適応則入力ｕadpを算出する際に必要となる前記ゲイン係数a1，a2，b1は、基本的には前記同定器２３により求められた最新の同定ゲイン係数a1(k)ハット，a2(k)ハット，b1(k)ハットを用いる。
【０２４３】
そして、スライディングモード制御器２５は、前記式（２４），（２６），（２７）によりそれぞれ求められる等価制御入力ｕeq、到達則入力ｕrch及び適応則入力ｕadpの総和を目標合成偏差空燃比kcmd/tとして求める（前記式（１８）を参照）。尚、この場合において、前記式（２４），（２６），（２７）中で用いる前記係数s1,s2,Ｆ,Ｇの設定条件は前述の通りである。
【０２４４】
このようにしてスライディングモード制御器２５が求める目標合成偏差空燃比kcmd/tは、Ｏ2センサ１２の推定偏差出力VO2バーを「０」に収束させ、その結果としてＯ2センサ１２の出力VO2/OUTを目標値VO2/TARGETに収束させる上で、対象等価系１８に与えるべき制御入力である。
【０２４５】
以上説明した処理が、スライディングモード制御器２５により目標合成偏差空燃比kcmd/tを制御サイクル毎に生成するための基本的なアルゴリズムである。
【０２４６】
次に、前記燃料供給制御器１６を説明する。
【０２４７】
燃料供給制御器１６は、図６に示すように、その機能的構成として、エンジン１の基本燃料噴射量Ｔimを求める基本燃料噴射量算出部３０と、基本燃料噴射量Ｔimを補正するための第１補正係数KTOTAL及び第２補正係数KCMDMをそれぞれ求める第１補正係数算出部３１及び第２補正係数算出部３２と、これらの第１補正係数KTOTAL及び第2補正係数KCMDMにより基本燃料噴射量Ｔimを補正してなる出力燃料噴射量Ｔoutに、エンジン１の各気筒群３，４の各気筒毎に、図示しない吸気管の壁面への燃料の付着を考慮した補正を施す複数（エンジン１の気筒数と同数）の付着補正部３３とを具備する。
【０２４８】
前記基本燃料噴射量算出部３０は、エンジン１の回転数NEと吸気圧PBとから、それらに応じたエンジン１の基準の燃料噴射量（燃料供給量）をあらかじめ設定されたマップを用いて求め、その基準の燃料噴射量をエンジン１の図示しないスロットル弁の有効開口面積に応じて補正することで基本燃料噴射量Ｔimを算出するものである。この基本燃料噴射量Ｔimは、基本的には、エンジン１のクランク角周期の１周期（１ＴＤＣ）当たりにエンジン１の各気筒に吸入される空気量と基本燃料噴射量Ｔimとの比、すなわち空燃比が理論空燃比となるような燃料噴射量である。尚、この基本燃料噴射量Ｔimはエンジン１の両気筒群３，４について共通である。
【０２４９】
また、第１補正係数算出部３１が求める第１補正係数KTOTALは、エンジン１の排気還流率（エンジン１の吸入空気中に含まれる排ガスの割合）や、エンジン１の図示しないキャニスタのパージ時にエンジン１に供給される燃料のパージ量、エンジン１の冷却水温、吸気温等を考慮して前記基本燃料噴射量Ｔimを補正するためのものである。
【０２５０】
また、第２補正係数算出部３２が求める第２補正係数KCMDMは、エンジン１の各気筒群３，４で燃焼させる混合気の空燃比を前記空燃比処理制御器１５が生成した目標空燃比KCMDに操作するために基本燃料噴射量Ｔimをフィードフォワード的に補正するものであり、目標空燃比KCMDから、あらかじめ定められたデータテーブル（図示しない）を用いて求められる。このデータテーブルにより求められる第２補正係数KCMDMは、目標空燃比KCMDが理論空燃比に一致するとき「１」で、目標空燃比KCMDが理論空燃比よりも燃料のリッチ寄りの値になる程、「１」よりも大きな値とされる。また、目標空燃比KCMDが理論空燃比よりも燃料のリーン寄りの値になる程、第２補正係数KCMDMは「１」よりも小さな値とされる。より詳しくは、第２補正係数KCMDMは、目標空燃比KCMDの理論空燃比に対する比（目標空燃比KCMD／理論空燃比）の逆数値に、エンジン１の燃料噴射時の冷却効果による吸入空気量の充填効率を考慮した補正を施してなるものである。
【０２５１】
尚、これらの基本燃料噴射量Ｔim、第１補正係数KTOTAL、第２補正係数KCMDMは、エンジン１の両気筒群３，４について共通である。
【０２５２】
燃料供給制御器１６は、上記のように求められる第１補正係数KTOTAL及び第２補正係数KCMDMを、基本燃料噴射量Ｔimに乗算することで、該基本燃料噴射量Ｔimを補正し、その補正してなる値を出力燃料噴射量Ｔimとして得る。そして、この出力燃料噴射量Ｔimに、前記付着補正部３３によって、エンジン１の各気筒毎の図示しない吸気管の壁面への燃料の付着を考慮した補正を施したものを、各気筒群３，４の各気筒に対する燃料噴射量の最終的な指令値として決定し、それを図示しない燃料噴射装置に指令する。
【０２５３】
尚、前記基本燃料噴射量Ｔimや、第１補正係数KTOTAL、第２補正係数KCMDMのより具体的な算出手法は、特開平５−７９３７４号公報等に本願出願人が開示しているので、ここでは詳細な説明を省略する。また、前記付着補正部３３が行なう付着補正については、本願出願人が例えば特開平８−２１２７３号公報に詳細に開示してるので、ここでは詳細な説明を省略する。
【０２５４】
また、上述した燃料供給制御器１６の説明では、便宜上、各気筒群３，４における空燃比を制御するために常に空燃比処理制御器１５が生成する目標空燃比KCMDを使用するものとした。具体的には、前記第２補正係数算出部３２が、その処理を行なうために、空燃比処理制御器１５が生成する目標空燃比KCMDを使用するものとした。但し、燃料供給制御器１６は、各気筒群３，４における空燃比を操作するために、後述するエンジン１の特定の運転状況下等（具体的には、エンジン１のフュエルカット中や、スロットル弁の全開時等）では、空燃比処理制御器１５が逐次生成する目標空燃比KCMDとは別に定めた目標空燃比を上記第２補正係数算出部３２で使用する場合がある。そして、この場合には、前述した制御処理に用いる目標空燃比KCMDの値を強制的に当該別の目標空燃比の値に設定して、各気筒群３，４における空燃比を制御する。つまり、前記第２補正係数算出部３２がその処理で使用する目標空燃比KCMDは、実際には、前記した実使用目標空燃比RKCMD（通常的には、RKCMD＝KCMD）である。
図面の説明図面の説明  次に、本実施形態のシステムの全体の作動を詳細に説明する。
【０２５５】
まず、図７及び図８のフローチャートを参照して、燃料供給制御器１６による制御処理について説明する。燃料供給制御器１６は、この処理をエンジン１のクランク角周期（ＴＤＣ）と同期した制御サイクルで次のように行う。
【０２５６】
燃料供給制御器１６は、まず、エンジン１の回転数NE、吸気圧PB等を検出する図示しないセンサやＯ2センサ１２等、各種センサの出力を読み込む（ＳＴＥＰａ）。
【０２５７】
この場合、本実施形態では、前記空燃比処理制御器１５の処理に必要なＯ2センサ１２の出力VO2/OUTは燃料供給制御器１６を介して空燃比処理制御器１５に与えられるようになっている。このため、Ｏ2センサ１２の出力VO2/OUTの読み込まれたデータは、過去の制御サイクルで取得したものを含めて図示しないメモリに時系列的に記憶保持される。
【０２５８】
次いで、基本燃料噴射量算出部３０によって、前述の如くエンジン１の回転数NE及び吸気圧PBに対応する燃料噴射量をスロットル弁の有効開口面積に応じて補正してなる基本燃料噴射量Ｔimが求められる（ＳＴＥＰｂ）。さらに、第１補正係数算出部３１によって、エンジン１の冷却水温やキャニスタのパージ量等に応じた第１補正係数KTOTALが算出される（ＳＴＥＰｃ）。
【０２５９】
次いで、燃料供給制御器１６は、前記空燃比処理制御器１５が求める目標空燃比KCMDをエンジン１の各気筒群３，４における空燃比を実際に操作するために使用するか否か（ここでは、空燃比操作のＯＮ／ＯＦＦという）の判別処理を行って、この空燃比操作のＯＮ／ＯＦＦを規定するフラグf/prism/onの値を設定する（ＳＴＥＰｄ）。このフラグf/prism/onの値は、それが「０」のとき、空燃比処理制御器１５が求める目標空燃比KCMDを使用しないこと（ＯＦＦ）を意味し、「１」のとき、空燃比処理制御器１５が生成する目標空燃比KCMDを使用すること（ＯＮ）を意味する。
【０２６０】
上記の判別処理では、図８に示すように、まず、Ｏ2センサ１２が活性化しているか否かの判別が行われる（ＳＴＥＰｄ−１）。この判別は、例えばＯ2センサ１２の出力電圧に基づいて行われる。
【０２６１】
このとき、Ｏ2センサ１２が活性化していない場合には、空燃比処理制御器１５の処理に使用するＯ2センサ１２の出力データ（検出データ）を精度よく得ることができないため、フラグf/prism/onの値を「０」にセットする（ＳＴＥＰｄ−９）。
【０２６２】
また、エンジン１のリーン運転中（希薄燃焼運転）であるか否か、エンジン１の始動直後の触媒装置３，４の早期活性化を図るためにエンジン１の点火時期が遅角側に制御されているか否か、エンジン１のスロットル弁が全開であるか否か、及びエンジン１のフュエルカット中（燃料供給の停止中）であるか否かの判別が行われる（ＳＴＥＰｄ−２〜ｄ−５）。そして、これらのいずれかの条件が成立している場合には、空燃比処理制御器１５が生成する目標空燃比KCMDを使用してエンジン１の空燃比を操作することは好ましくないか、もしくは操作することができないので、フラグf/prism/onの値を「０」にセットする（ＳＴＥＰｄ−９）。
【０２６３】
さらに、エンジン１の回転数NE及び吸気圧PBがそれぞれ所定範囲内（正常な範囲内）にあるか否かの判別が行われ（ＳＴＥＰｄ−６，ｄ−７）、いずれかが所定範囲内にない場合には、空燃比処理制御器１５が生成する目標空燃比KCMDを使用してエンジン１の空燃比を操作することは好ましくないので、フラグf/prism/onの値を「０」にセットする（ＳＴＥＰｄ−９）。
【０２６４】
そして、ＳＴＥＰｄ−１，ｄ−６，ｄ−７の条件が満たされ、且つ、ＳＴＥＰｄ−２〜ｄ−５の条件が成立していない場合に（このような場合はエンジン１の通常的な運転状態である）、空燃比処理制御器１５が生成する目標空燃比KCMDをエンジン１の空燃比の操作に使用すべく、フラグf/prism/onの値を「１」にセットする（ＳＴＥＰｄ−８）。
【０２６５】
図７に戻って、上記のようにフラグf/prism/onの値を設定した後、燃料供給制御器１６は、フラグf/prism/onの値を判断する。（ＳＴＥＰｅ）。そして、このとき、f/prism/on＝１である場合には、空燃比処理制御器１５が生成した最新の目標空燃比KCMDを今回の制御サイクルにおける実使用目標空燃比RKCMDとして読み込む（ＳＴＥＰｆ）。また、f/prism/on＝０である場合には、例えばエンジン１の回転数NEや吸気圧PBからあらかじめ定めたマップ等を用いて求めた所定値を今回の制御サイクルにおける実使用目標空燃比RKCMDとして設定する（ＳＴＥＰｇ）。
【０２６６】
尚、上記ＳＴＥＰｅ〜ｇの処理で燃料供給制御器１６が決定した実使用目標空燃比RKCMDの値は、該燃料供給制御器１６において、図示しないメモリに時系列的に記憶保持される。
【０２６７】
さらに、燃料供給制御器１６は、上記ＳＴＥＰｆ又はＳＴＥＰｇで決定された実使用目標空燃比RKCMDに応じた前記第２補正係数KCMDMを第２補正係数算出部３２により算出する（ＳＴＥＰｈ）。
【０２６８】
次いで、燃料供給制御器１６は、前述のように求められた基本燃料噴射量Ｔimに、第１補正係数KTOTAL及び第２補正係数KCMDMを乗算することで、各気筒群３，４に対する出力燃料噴射量Ｔoutを求める（ＳＴＥＰｉ）。そして、この出力燃料噴射量Ｔoutが、付着補正部３３によって、各気筒群３，４の各気筒毎に、吸気管の壁面への燃料の付着を考慮した補正が施された後（ＳＴＥＰｊ）、最終的な燃料噴射量の指令値として、エンジン１の図示しない燃料噴射装置に出力される（ＳＴＥＰｋ）。
【０２６９】
そして、エンジン１にあっては、各気筒群３，４の各気筒毎の出力燃料噴射量Ｔoutに従って、各気筒への燃料噴射が行われる。
【０２７０】
以上のようなエンジン１の燃料噴射の制御がエンジン１のクランク角周期（ＴＤＣ）に同期した制御サイクルで逐次行われ、これにより、各気筒群３，４で燃焼させる混合気の空燃比が前記実使用目標空燃比RKCMD（これは通常的には、空燃比処理制御器１５が生成する目標空燃比KCMDである）にフィードフォワード的に操作される。すなわち、各気筒群３，４で燃焼する混合気の空燃比がフィードフォワード制御によって、前記実使用目標空燃比RKCMDに操作される。
【０２７１】
一方、前述のようなエンジン１の空燃比の操作（燃料噴射量の制御）と並行して、前記空燃比処理制御器１５は、一定周期の制御サイクルで図９のフローチャートに示すメインルーチン処理を行う。
【０２７２】
すなわち、図９のフローチャートを参照して、空燃比処理制御器１５は、まず、自身の演算処理（前記同定器２３、推定器２４、スライディングモード制御器２５等の演算処理）を実行するか否かの判別処理を行なって、その実行の可否をそれぞれ値「１」、「０」で示すフラグf/prism/calの値を設定する（ＳＴＥＰ１）。
【０２７３】
この判別処理は、図１０のフローチャートに示すように行なわれる。
【０２７４】
すなわち、前記図７のＳＴＥＰｄの場合と同様に、Ｏ2センサ１２が活性化しているか否かの判別が行われる（ＳＴＥＰ１−１）。このとき、Ｏ2センサ１２が活性化していない場合には、空燃比処理制御器１５の演算処理に使用するＯ2センサ１２の検出データを精度よく得ることができないため、フラグf/prism/calの値を「０」にセットする（ＳＴＥＰ１−５）。
【０２７５】
さらにこのとき、同定器２３の後述する初期化を行うために、その初期化を行うか否かをそれぞれ値「１」、「０」で示すフラグf/id/resetの値を「１」にセットする（ＳＴＥＰ１−６）。
【０２７６】
また、エンジン１のリーン運転中（希薄燃焼運転）であるか否か（ＳＴＥＰ１−２）、及びエンジン１の始動直後の触媒装置９〜１１の早期活性化を図るためにエンジン１の点火時期が遅角側に制御されているか否か（ＳＴＥＰ１−３）の判別が行われる。これらのいずれかの条件が成立している場合には、Ｏ2センサ１２の出力VO2/OUTを目標値VO2/TARGETに収束させるような目標空燃比KCMDを算出しても、それがエンジン１の燃料制御に使用されることはないので、フラグf/prism/calの値を「０」にセットする（ＳＴＥＰ１−５）。さらにこのとき、同定器２３の初期化を行うために、フラグf/id/resetの値を「１」にセットする（ＳＴＥＰ１−６）。
【０２７７】
そして、ＳＴＥＰ１−１の条件が満たされ、且つＳＴＥＰ１−２，１−３の条件が成立していない場合には、フラグf/prism/calの値を「１」にセットする（ＳＴＥＰ１−４）。
【０２７８】
尚、このようにフラグf/prism/calの値を設定することで、空燃比処理制御器１５が生成する目標空燃比KCMDを燃料供給制御器１６が使用しない状況（図８を参照）であっても、例えばエンジン１のフュエルカット中やスロットル弁の全開時には、フラグf/prism/calの値が「１」に設定される。従って、エンジン１のフュエルカット中や、スロットル弁の全開時には、空燃比処理制御器１５は、同定器２３、推定器２４、スライディングモード制御器２５等の演算処理（詳しくは、Ｏ2センサ１２の出力VO2/OUTを目標値VO2/TARGETに収束させるための目標合成偏差空燃比kcmd/tを求める処理）を行なうこととなる。これは、このようなエンジン１の運転状況は基本的には一時的なものであるからである。
【０２７９】
図９に戻って、上記のような判別処理を行った後、空燃比処理制御器１５は、さらに、同定器２３による前記ゲイン係数a1,a2,b1の同定（更新）処理を実行するか否かの判別処理を行って、その実行の可否をそれぞれ値「１」、「０」で示すフラグf/id/calの値を設定する（ＳＴＥＰ２）。
【０２８０】
このＳＴＥＰ２の判別処理では、図示を省略するが、エンジン１のスロットル弁が全開であるか否か、及びエンジン１のフュエルカット中であるか否かの判別が行われる。これらのいずれかの条件が成立している場合には、前記ゲイン係数a1,a2,b1を適正に同定することができないため、フラグf/id/calの値を「０」にセットする。そして、上記のいずれの条件も成立していない場合には、同定器２３による前記ゲイン係数a1,a2,b1の同定（更新）処理を実行すべくフラグf/id/calの値を「１」にセットする。
【０２８１】
次いで、空燃比処理制御器１５は、前記減算処理器２２によりＯ2センサ１２の最新の偏差出力VO2(k)（＝VO2/OUT−VO2/TARGET）を算出する（ＳＴＥＰ３）。
【０２８２】
この場合、減算処理器２２は、前記図７のＳＴＥＰａにおいて前記燃料供給制御器１６が取り込んで図示しないメモリに記憶させたＯ2センサ１２の出力VO2/OUTの時系列データの中から、最新のものを選択して前記偏差出力VO2(k)を算出する。
【０２８３】
さらに、このＳＴＥＰ３では、前記減算処理器２８により、燃料供給制御器１６が各気筒群３，４の空燃比の制御のために現在使用している実使用目標空燃比RKCMDに相当する実使用目標偏差空燃比rkcmd(k)（＝RKCMD−FLAF/BASE）を算出する。
【０２８４】
この場合、減算処理器２８は、前述のように燃料供給制御器１６がその制御サイクル毎に図示しないメモリに記憶保持する実使用目標空燃比RKCMDの時系列データの中から、最新のものを選択して実使用目標偏差空燃比rkcmdを算出する。ここで、燃料供給制御器１６が現在使用している実使用目標空燃比RKCMDは、空燃比処理制御器１５が前回の制御サイクルで求めた目標空燃比KCMD(k-1)に対応するもので、通常的には、該目標空燃比KCMD(k-1)に等しい。
【０２８５】
尚、上述のようにＳＴＥＰ３で算出される偏差出力VO2及び実使用目標偏差空燃比rkcmdは、空燃比処理制御器１５において、過去に算出したものを含めて時系列的に図示しないメモリに記憶保持される。
【０２８６】
次いで、空燃比処理制御器１５は、前記フィルタ２９によって、今回の制御サイクルにおける実使用目標合成偏差空燃比rkcmd/t(k)を算出する（ＳＴＥＰ４）。
【０２８７】
この場合、前述のように記憶保持される実使用目標偏差空燃比rkcmdの時系列データの中から、現在値及び過去値の時系列データrkcmd(k)，rkcmd(k-1)，rkcmd(k-dD)，rkcmd(k-dD-1)が選択され、それらのデータの値を用いて前記式（７）の右辺の演算を行うことで、実使用目標合成偏差空燃比rkcmd/t(k)が算出される。
【０２８８】
尚、上述のようにＳＴＥＰ４で算出される実使用目標合成偏差空燃比rkcmdは、空燃比処理制御器１５において、過去に算出したものを含めて時系列的に図示しないメモリに記憶保持される。
【０２８９】
次いで、空燃比処理制御器１５は、前記ＳＴＥＰ１で設定したフラグf/prism/calの値を判断する（ＳＴＥＰ５）。このとき、f/prism/cal＝０である場合、すなわち、空燃比処理制御器１５の演算処理を行わない場合には、今回の制御サイクルにおける目標偏差空燃比kcmd(k)の値を強制的に所定値に設定する（ＳＴＥＰ１４）。この場合、該所定値は、例えばあらかじめ定めた固定値（例えば「０」）あるいは前回の制御サイクルで決定した目標偏差空燃比kcmdの値kcmd(k- 1)とする。
【０２９０】
尚、このように目標偏差空燃比kcmd(k)を所定値とした場合において、空燃比処理制御器１５は、前記加算処理器２７によって、その所定値の目標偏差空燃比kcmd(k)に前記基準空燃比FLAF/BASEを加算することで、今回の制御サイクルにおける目標空燃比KCMD(k)を決定し（ＳＴＥＰ１３）、今回の制御サイクルの処理を終了する。
【０２９１】
一方、ＳＴＥＰ５の判断で、f/prism/cal＝１である場合、すなわち、空燃比処理制御器１５の演算処理を行う場合には、空燃比処理制御器１５は、まず、前記同定器２３による演算処理を行う（ＳＴＥＰ６）。
【０２９２】
この同定器２３による演算処理は図１１のフローチャートに示すように行われる。
【０２９３】
すなわち、同定器２３は、まず、前記ＳＴＥＰ２で設定されたフラグf/id/calの値を判断する（ＳＴＥＰ６−１）。このときf/id/cal＝０であれば（エンジン１のスロットル弁が全開状態であるか、もしくはエンジン１のフュエルカット中の場合）、前述の通り同定器２３によるゲイン係数a1，a2，b1の同定処理を行わないので、直ちに図９のメインルーチンに復帰する。
【０２９４】
一方、f/id/cal＝１であれば、同定器２３は、さらに該同定器２３の初期化に係わる前記フラグf/id/resetの値（これは、前記ＳＴＥＰ１でその値が設定される）を判断し（ＳＴＥＰ６−２）、f/id/reset＝１である場合には、同定器２３の初期化を行う（ＳＴＥＰ６−３）。この初期化では、前記同定ゲイン係数a1ハット，a2ハット，b1ハットの各値があらかじめ定めた初期値に設定される（前記同定ゲイン係数ベクトルΘが初期化される）。また前記式（１３）の行列Ｐ（対角行列）の各成分があらかじめ定めた初期値に設定される。さらに、フラグf/id/res etの値は「０」にリセットされる。
【０２９５】
次いで、同定器２３は、現在の同定ゲイン係数a1(k-1)ハット，a2(k-1)ハット，b1(k-1)ハット（前回の制御サイクルで求められた同定ゲイン係数）を用いて表される対象等価系１８のモデル（前記式（８）参照）の出力である前記同定偏差出力VO2(k)ハットを前記式（９）によって算出する（ＳＴＥＰ６−４）。すなわち、前記ＳＴＥＰ３で制御サイクル毎に算出される偏差出力VO2の過去値のデータVO2(k-1)，VO2(k-2)と、前記ＳＴＥＰ４で制御サイクル毎に算出される実使用目標合成偏差空燃比rkcmd/tの過去値のデータrkcmd/t(k-d)と、上記同定ゲイン係数a1(k-1)ハット，a2(k-1)ハット，b1(k-1)ハットの値とを用いて前記式（９）により同定偏差出力VO2(k)ハットを算出する。
【０２９６】
さらに同定器２３は、新たな同定ゲイン係数a1ハット，a2ハット，b1ハットを決定する際に使用する前記ベクトルＫp(k)を式（１２）により算出した後（ＳＴＥＰ６−５）、前記同定誤差ID/E(k)（式（１０）参照）を算出する（ＳＴＥＰ６−６）。
【０２９７】
ここで、ＳＴＥＰ６−６で求める同定誤差ID/E(k)は、基本的には、前記式（１０）の演算により算出すればよいのであるが、本実施形態では、前記ＳＴＥＰ３（図９参照）で制御サイクル毎に算出する偏差出力VO2と、前記ＳＴＥＰ６−４で制御サイクル毎に算出する同定偏差出力VO2ハットとから式（１０）の演算により得られた値（＝VO2−VO2ハット）に、さらに所定の周波数通過特性（具体的にはローパス特性）を有するフィルタリング処理を施すことで同定誤差ID/E(k)を求める。
【０２９８】
このようなフィルタリング処理を行うのは次の理由による。すなわち、前記対象等価系１８の入力量である目標合成空燃比KCMD/Tの変化に対する、該対象等価系１８の出力量であるＯ2センサ１２の出力VO2/OUTの変化の周波数特性は、特に対象等価系１８の基礎となる前記対象排気系１７に含まれる触媒装置９〜１１の影響で、一般には低周波数側で高ゲインなものとなる。
【０２９９】
このため、対象等価系１８のモデルのゲイン係数a1，a2，b1対象等価系１８の実際の挙動特性に則して適正に同定する上では、該対象等価系１８の低周波数側の挙動を重視することが好ましい。そこで、本実施形態では、式（１０）の演算により得られた値（＝VO2−VO2ハット）に、ローパス特性のフィルタリング処理を施すことで同定誤差ID/E(k)を求めるようにしている。
【０３００】
尚、本実施形態で上記フィルタリングの周波数通過特性としたローパス特性は例示的なもので、より一般的には、実際の対象系１７の挙動に基づいて、前記対象等価系１８の入力量の変化に対する出力量の変化の周波数特性（これは触媒装置９〜１１だけでなくエンジン１の特性が影響する場合もある）をあらかじめ実験等により確認しておき、その周波数特性が比較的高ゲインとなるような周波数域に通過特性を有するフィルタリングを行なうようにすればよい。
【０３０１】
また、上記のようなフィルタリング処理は、結果的に、偏差出力VO2及び同定偏差出力VO2ハットの両者に同じ周波数通過特性のフィルタリングが施されていればよく、例えば偏差出力VO2及び同定偏差出力VO2ハットにそれぞれ各別にフィルタリングを施した後に式（１０）の演算を行って同定誤差ID/E(k)を求めるようにしてもよい。また、前記のフィルタリング処理は、例えばディジタルフィルタの一手法である移動平均処理によって行われる。
【０３０２】
上記のようにして同定誤差ID/E(k)を求めた後、同定器２３は、この同定誤差ID/E(k)と、前記ＳＴＥＰ５−５で算出したＫp(k)とを用いて前記式（１１）により新たな同定ゲイン係数ベクトルΘ(k)、すなわち、新たな同定ゲイン係数a1(k)ハット，a2(k)ハット，b1(k)ハットを算出する（ＳＴＥＰ６−７）。
【０３０３】
このようにして新たな同定ゲイン係数a1(k)ハット，a2(k)ハット，b1(k)ハットを算出した後、同定器２３は、同定ゲイン係数a1ハット，a2ハット，b1ハットの値を、所定の条件を満たすように制限する処理を行う（ＳＴＥＰ６−８）。そして、同定器２３は、次回の制御サイクルの処理のために前記行列Ｐ(k)を前記式（１３）により更新し（ＳＴＥＰ６−９）、図９のメインルーチンの処理に復帰する。
【０３０４】
この場合、上記ＳＴＥＰ６−８における同定ゲイン係数a1ハット，a2ハット，b1ハットの値を制限する処理は、同定ゲイン係数a1ハット，a2ハットの値の組み合わせを所定の組み合わせに制限する処理（同定ゲイン係数a1ハット，a2ハットを成分とする座標平面上の所定の領域内に点（a1ハット，a2ハット）を制限する処理）と、同定ゲイン係数b1ハットの値を所定の範囲内に制限する処理とからなる。前者の処理では、ＳＴＥＰ６−７で算出された同定ゲイン係数a1(k)ハット，a2(k)ハットにより定まる上記座標平面上の点（a1(k)ハット，a2(k)ハット）が該座標平面上にあらかじめ定めた所定の領域から逸脱している場合に同定ゲイン係数a1(k)ハット，a2(k)ハットの値を強制的に上記所定の領域内の点の値に制限する。また、後者の処理では、ＳＴＥＰ６−７で算出された同定ゲイン係数b1ハットの値が所定の範囲の上限値あるいは下限値を超えている場合に、該同定ゲイン係数b1ハットの値を強制的にその上限値あるいは下限値に制限する。
【０３０５】
このような同定ゲイン係数a1ハット，a2ハット，b1ハットの制限処理は、スライディングモード制御器２５が生成する目標合成偏差出力kcmd/tの安定性を確保するためのものである。
【０３０６】
尚、このような同定ゲイン係数a1ハット，a2ハット，b1ハットの制限処理のより具体的な手法については、本願出願人が例えば特願平１０−１０６７３８号にて詳細に説明しているので、ここでは、詳細な説明を省略する。
【０３０７】
以上が図９のＳＴＥＰ６における同定器２３の演算処理の詳細である。
【０３０８】
図９のメインルーチン処理の説明に戻って、前述の通り同定器２３の演算処理を行った後、空燃比処理制御器１５はゲイン係数a1，a2，b1の値を決定する（ＳＴＥＰ７）。
【０３０９】
この処理では、前記ＳＴＥＰ２で設定されたフラグf/id/calの値が「１」である場合、すなわち、同定器２３によるゲイン係数a1，a2，b1の同定処理を行った場合には、ゲイン係数a1，a2，b1の値として、それぞれ前記ＳＴＥＰ６で前述の通り同定器２３により求められた同定ゲイン係数a1(k)ハット，a2(k)ハット，b1(k)ハット（ＳＴＥＰ６−８の制限処理を施したもの）を設定する。また、f/id/cal＝０である場合、すなわち、同定器２３によるゲイン係数a1，a2，b1の同定処理を行わなかった場合には、ゲイン係数a1，a2，b1の値をそれぞれ所定値に設定する。この場合、f/id/cal＝０である場合（エンジン１のスロットル弁が全開状態であるか、もしくはエンジン１のフュエルカット中の場合）にゲイン係数a1，a2，b1の値として設定する所定値は、あらかじめ定めた固定値としてもよいが、f/id/cal＝０となる状態が一時的であるような場合（同定器２３による同定処理を一時的に中断する場合）には、f/id/cal＝０となる直前に同定器２３が求めた同定ゲイン係数a1ハット，a2ハット，b1ハットにゲイン係数a1，a2，b1の値を保持してもよい。
【０３１０】
次いで、空燃比処理制御器１５は、図９のメインルーチンにおいて、前記推定器２４による演算処理、すなわち現在の制御サイクルから対象等価系１８の無駄時間ｄ後のＯ2センサ１２の偏差出力VO2の推定値である推定偏差出力VO2(k+d)バーを算出する処理を行う（ＳＴＥＰ８）。
【０３１１】
このとき推定器２４は、まず、前記ＳＴＥＰ７で決定されたゲイン係数a1，a2，b1（これらの値は基本的には、前記図１１のＳＴＥＰ５−８の制限処理を経た同定ゲイン係数a1(k)ハット，a2(k)ハット，b1(k)ハットである）を用いて、前記式（１５）で使用する係数値α1，α2，β(j)（ｊ＝1,2,…,d）をそれぞれ式（１４）中の但し書きの定義に従って算出する。
【０３１２】
そして、推定器２４は、前記図９のＳＴＥＰ３で制御サイクル毎に算出されるＯ2センサ１２の偏差出力VO2の現在の制御サイクル以前の二つの時系列データVO2(k)，VO2(k-1)と、ＳＴＥＰ４で制御サイクル毎に算出される前記実使用目標合成偏差空燃比rkcmd/tの現在値及び過去値の時系列データrkcmd/t(j)（ｊ＝1,…,d）と、上記の如く算出した係数値α1，α2，β(j)（ｊ＝1,2,…,d)とを用いて前記式（１５）により、推定偏差出力VO2(k+d)バー（今回の制御サイクルの時点から無駄時間ｄ後の偏差出力VO2の推定値）を算出する。
【０３１３】
尚、上記のように算出された推定偏差出力VO2(k+d)バーは、その値が過大あるいは過小なものになるのを防止するために、その値を所定の許容範囲内に制限するリミット処理が施され、その値が、該許容範囲の上限値あるいは下限値を超えている場合には、強制的に該上限値あるいは下限値に設定される。そして、これにより最終的に推定偏差出力VO2(k+d)バーの値が確定される。但し、通常的には、式（１５）により算出される値がそのまま推定偏差出力VO2(k+d)バーとなる。
【０３１４】
このように推定器２４によりＯ2センサ１２の推定偏差出力VO2(k+d)バーを求めた後、空燃比処理制御器１５は、スライディングモード制御器２５と前記目標偏差空燃比算出器２６とによって、今回の制御サイクルにおける目標偏差空燃比kcmd(k)を算出する（ＳＴＥＰ９）。
【０３１５】
このＳＴＥＰ９の算出処理は、図１２のフローチャートに示すように行われる。
【０３１６】
まず、空燃比処理制御器１０は、スライディングモード制御器２５により前記目標合成偏差空燃比kcmd/t(k)を算出する処理を行なう（ＳＴＥＰ９−１〜ＳＴＥＰ９−４）。
【０３１７】
すなわち、スライディングモード制御器２５は、まず、前記式（２５）により定義した切換関数σバーの今回の制御サイクルから無駄時間d後の値σ(k+d)バー（これは、式（１６）で定義した切換関数σの無駄時間d後の推定値に相当する）を算出する（ＳＴＥＰ９−１）。
【０３１８】
このとき、切換関数σ(k+d)バーの値は、前記ＳＴＥＰ８で推定器２４が求めた推定偏差出力VO2バーの今回値VO2(k+d)バー及び前回値VO2(k+d-1)バー（より正確にはそれらの値に前述のリミット処理を施したもの）を用いて、前記式（２５）に従って算出される。
【０３１９】
尚、この場合、切換関数σ(k+d)バーの値が過大であると、この切換関数σバーの値に応じて定まる前記到達則入力ｕrchの値が過大となると共に、前記適応則入力ｕadpの急変が生じ、スライディングモード制御器２５が求める目標合成偏差空燃比k cmd/t（対象等価系１８に対する制御入力）がＯ2センサ１２の出力VO2/OUTを安定に目標値VO2/TARGETに収束させる上で不適切なものとなる虞れがある。このため、本実施形態では、切換関数σバーの値があらかじめ定めた所定の許容範囲内に収まるようにし、上記の如く式（２５）に基づき求めたσバーの値が、該許容範囲の上限値又は下限値を超えた場合には、それぞれσバーの値を強制的に該上限値又は下限値に設定する。
【０３２０】
次いで、スライディングモード制御器２５は、上記のように制御サイクル毎に算出される切換関数σ(k+d)バーの値に、空燃比処理制御器１５の制御サイクルの周期ΔＴ（一定周期）を乗算したものσ(k+d)バー・ΔＴを累積的に加算していく、すなわち前回の制御サイクルで求められた加算結果に今回の制御サイクルで算出されたσ(k+d)バーと周期ΔＴとの積σ(k+d)バー・ΔＴを加算することで、式（２７）のΣ（σバー・ΔＴ）の項の演算結果であるσバーの積算値（以下、この積算値をΣσバーにより表す）を算出する（ＳＴＥＰ９−２）。
【０３２１】
尚、この場合、上記積算値Σσバーに応じて定まる前記適応則入力ｕadpが過大なものとなるのを回避するため、該積算値Σσバーがあらかじめ定めた所定の許容範囲内に収まるようにし、該積算値Σσバーが該許容範囲の上限値又は下限値を超えた場合には、それぞれ該積算値Σσバーを強制的に該上限値又は下限値に制限する。
【０３２２】
また、この積算値Σσバーは、前記図７のＳＴＥＰｄで設定されるフラグf/prism/onの値が「０」であるとき、すなわち、空燃比処理制御器１５が生成する目標空燃比KCMDを前記燃料供給制御器１５が使用しない状態であるときには、現状の値（前回の制御サイクルで決定された値）に保持される。
【０３２３】
次いで、スライディングモード制御器２５は、前記ＳＴＥＰ８で推定器２４が求めた推定偏差出力VO2バーの今回値VO2(k+d)バー及び前回値VO2(k+d-1)バーと、今回の制御サイクルにおけるＳＴＥＰ９−１及び９−２でそれぞれ求めた切換関数σバーの値σ(k+d)バー及び積算値Σσバーと、ＳＴＥＰ７で決定されたゲイン係数a1，a2，b1（これらの値は基本的には、今回の制御サイクルにおける前記ＳＴＥＰ６で同定器２３が求めた同定ゲイン係数a1(k)ハット，a2(k)ハット，b1(k)ハットである）とを用いて、前記式（２４）、（２６）、（２７）に従って、それぞれ今回の制御サイクルに対応する等価制御入力ｕeq(k)、到達則入力ｕrch(k)及び適応則入力ｕadp(k)を算出する（ＳＴＥＰ９−３）。
【０３２４】
そして、スライディングモード制御器２５は、このＳＴＥＰ９−４で求めた等価制御入力ｕeq(k)、到達則入力ｕrch(k)及び適応則入力ｕadp(k)を式（１８）に従って加算することで、今回の制御サイクルにおける目標合成偏差空燃比kcmd/t(k)、すなわち、Ｏ2センサ１２の出力VO2/OUTを目標値VO2/TARGETに収束させる上で対象等価系１８に与えるべき制御入力を算出する（ＳＴＥＰ９−４）。
【０３２５】
次いで、空燃比処理制御器１５は、目標偏差空燃比算出器２６によって、前記式（５）に従って、今回の制御サイクルにおける目標偏差空燃比kcmd(k)を算出する（ＳＴＥＰ９−５）。
【０３２６】
この場合、目標偏差空燃比算出器２６は、スライディングモード制御器２５がＳＴＥＰ９−４で求めた目標合成偏差空燃比kcmd/t(k)と、自身が過去の制御サイクルで求めた目標偏差空燃比kcmdの過去値の時系列データkcmd(k-1)，kcmd(k-dD)，kcmd(k-dD-1)とから、式（５）の右辺の演算を行うことで、今回の制御サイクルにおける目標偏差空燃比kcmd(k)を求める。
【０３２７】
以上がＳＴＥＰ９における処理内容である。
【０３２８】
図１０に戻って、空燃比処理制御器１５は、スライディングモード制御器２５が行っている適応スライディングモード制御の安定性（より詳しくは、適応スライディングモード制御に基づくＯ2センサ１２の出力VO2/OUTの制御状態（以下、ＳＬＤ制御状態という）の安定性）を判別する処理を行って、該ＳＬＤ制御状態が安定であるか否の示すフラグf/stbの値を設定する（ＳＴＥＰ１０）。
【０３２９】
この判別処理は図１４のフローチャートに示すように行われる。
【０３３０】
すなわち、空燃比処理制御器１５は、まず、前記ＳＴＥＰ９−１でスライディングモード制御器２５が算出する切換関数σバーの今回値σ(k+d)バーと前回値σ(k+d-1)バーとの偏差Δσバー（これは切換関数σバーの変化速度に相当する）を算出する（ＳＴＥＰ１０−１）。
【０３３１】
次いで、空燃比処理制御器１５は、上記偏差Δσバーと切換関数σバーの今回値σ(k+d)バーとの積Δσバー・σ(k+d)バー（これはσバーに関するリアプノフ関数σバー2／２の時間微分関数に相当する）があらかじめ定めた所定値ε（＞０）以下であるか否を判断する（ＳＴＥＰ１０−２）。
【０３３２】
ここで、上記積Δσバー・σ(k+d)バー（以下、これを安定判別パラメータＰstbという）について説明すると、この安定判別パラメータＰstbの値がＰstb＞０となる状態は、基本的には、切換関数σバーの値が「０」から離間しつつある状態である。また、安定判別パラメータＰstbの値がＰstb≦０となる状態は、基本的には、切換関数σバーの値が「０」に収束しているか、もしくは収束しつつある状態である。そして、一般に、スライディングモード制御ではその制御量を目標値に安定に収束させるためには、切換関数の値が安定に「０」に収束する必要がある。従って、基本的には、前記安定判別パラメータＰstbの値が「０」以下であるか否かによって、それぞれ前記ＳＬＤ処理状態が安定、不安定であると判断することができる。
【０３３３】
但し、安定判別パラメータＰstbの値を「０」と比較することでＳＬＤ制御状態の安定性を判断すると、切換関数σバーの値に僅かなノイズが含まれただけで、安定性の判別結果に影響を及ぼしてしまう。
【０３３４】
このため、本実施形態では、前記ＳＴＥＰ１０−２で安定判別パラメータＰstbと比較する所定値εは、「０」より若干大きな正の値としている。
【０３３５】
そして、このＳＴＥＰ１０−２の判断で、Ｐstb＞εである場合には、ＳＬＤ制御状態が不安定であるとし、前記ＳＴＥＰ９で算出された目標偏差空燃比kcmd(k)に対応する目標空燃比KCMD(k)（＝kcmd(k)＋FLAF/BASE）を用いた燃料供給制御器１６の処理を所定時間、禁止するためにタイマカウンタｔm（カウントダウンタイマ）の値を所定の初期値ＴMにセットする（タイマカウンタｔmの起動。ＳＴＥＰ１０−４）。さらに、前記フラグf/stbの値を「０」（f/stb＝０はＳＬＤ処理状態が不安定であることを示す）に設定した後（ＳＴＥＰ１０−５）、図９のメインルーチンの処理に復帰する。
【０３３６】
一方、前記ＳＴＥＰ１０−２の判断で、Ｐstb≦εである場合には、空燃比処理制御器１５は、さらに、スライディングモード制御器２５がＳＴＥＰ９−１で求めた切換関数σバーの今回値σ(k+d)バーがあらかじめ定めた所定範囲内にあるか否かを判断する（ＳＴＥＰ１０−３）。
【０３３７】
この場合、切換関数σバーの今回値σ(k+d)バーが、所定範囲内に無い状態は、切換関数σバーの今回値σ(k+d)バーが「０」から大きく離間しているので、前記ＳＴＥＰ９で求めた目標合成偏差空燃比kcmd/t(k)、ひいては目標偏差空燃比kcmd(k)がＯ2センサ１２の出力VO2/OUTを安定に目標値VO2/TARGETに収束させる上で不適切なものとなっている虞れがある。このため、ＳＴＥＰ１０−３の判断で、切換関数σバーの今回値σ(k+d)バーが、所定範囲内に無い場合には、ＳＬＤ制御状態が不安定であるとして、前述の場合と同様に、ＳＴＥＰ１０−４及びＳＴＥＰ１０−５の処理を行ってタイマカウンタｔmを起動すると共にフラグf/stbの値を「０」に設定する。
【０３３８】
尚、本実施形態では、スライディングモード制御器２５が行う前記ＳＴＥＰ９−１の処理において前述したように切換関数σバーの値を制限するため、ＳＴＥＰ１０−３の判断処理は省略してもよい。
【０３３９】
また、ＳＴＥＰ１０−３の判断で、切換関数σバーの今回値σ(k+d)バーが、所定範囲内にある場合には、スライディングモード制御器２５は、前記タイマカウンタｔmを所定時間Δｔm分、カウントダウンする（ＳＴＥＰ１０−６）。そして、このタイマカウンタｔmの値が「０」以下であるか否か、すなわち、タイマカウンタｔmを起動してから前記初期値ＴM分の所定時間が経過したか否かを判断する（ＳＴＥＰ１０−７）。
【０３４０】
このとき、ｔm＞０である場合、すなわち、タイマカウンタｔrが計時動作中でまだタイムアップしていない場合には、ＳＴＥＰ１０−２あるいはＳＴＥＰ１０−３の判断でＳＬＤ制御状態が不安定であると判断されてから、さほど時間を経過していないので、ＳＬＤ制御状態が不安定なものになりやすい。このため、このような場合（ＳＴＥＰ１０−７でｔm＞０である場合）には、前記ＳＴＥＰ１０−５の処理を行って前記フラグf/stbの値を「０」に設定する。
【０３４１】
そして、ＳＴＥＰ１０−７でｔm≦０である場合、すなわち、タイマカウンタｔmがタイムアップしている場合には、ＳＬＤ制御状態が安定であるとして、フラグf/stbの値を「１」（f/stb＝１はＳＬＤ制御状態が安定であることを示す）に設定する（ＳＴＥＰ１０−８）。
【０３４２】
以上のような処理によって、ＳＬＤ制御状態の安定性が判断され、不安定であると判断した場合には、フラグf/stbの値が「０」に設定され、安定であると判断した場合には、フラグf/stbの値が「１」に設定される。
【０３４３】
尚、以上説明したＳＬＤ制御状態の安定性の判断の手法は例示的なもので、この他の手法によって、安定性の判断を行うことも可能である。例えば、制御サイクルよりも長い所定期間毎に、各所定期間内における前記安定判別パラメータＰrtbの値が前記所定値εよりも大きくなる頻度を計数する。そして、その頻度があらかじめ定めた所定値を超えるような場合にＳＬＤ制御状態が不安定であると判断し、逆の場合には、ＳＬＤ制御状態で安定であると判断するようにしてもよい。
【０３４４】
図９に戻って、上記のようにＳＬＤ制御状態の安定性を示すフラグf/stbの値を設定した後、空燃比処理制御器１５は、このフラグf/stbの値を判断する（ＳＴＥＰ１１）。このとき、f/stb＝１である場合、すなわち、ＳＬＤ制御状態が安定であると判断した場合には、空燃比処理制御器１５は、今回の制御サイクルにおいて前記ＳＴＥＰ９で求めた目標偏差空燃比kcmd(k)にその値を制限するリミット処理を施す（ＳＴＥＰ１２）。
【０３４５】
このリミット処理では、目標偏差空燃比kcmd(k)の値が所定の許容範囲内の値であるか否かが判断され、その値が該許容範囲の上限値又は下限値を超えている場合には、それぞれ、目標偏差空燃比kcmd(k)の値を強制的に許容範囲の上限値、下限値に制限する。
【０３４６】
そして、空燃比処理制御器１５は、このリミット処理を施したkcmd(k)（これは通常的には、ＳＴＥＰ９で求められたkcmd(k)である）に、前記加算処理器２７によって、前記基準空燃比FLAF/BASEを加算することで、今回の制御サイクルにおける目標空燃比KCMD(k)を決定する（ＳＴＥＰ１３）。これにより、今回の制御サイクルにおける空燃比処理制御器１５の処理が終了する。
【０３４７】
一方、前記ＳＴＥＰ１１の判断で、f/stb＝０である場合、すなわち、ＳＴＥＰ１０でＳＬＤ制御状態が不安定であると判断した場合には、空燃比処理制御器１５は、前述したＳＴＥＰ１４の処理を行なって今回の制御サイクルにおける目標偏差空燃比kcmd(k)の値を強制的に所定値（例えば「０」）に設定する。そして、前記ＳＴＥＰ１３で、目標空燃比KCMD(k)を決定した後、今回の制御サイクルの処理を終了する。
【０３４８】
尚、前記ＳＴＥＰ１２あるいはＳＴＥＰ１４で制御サイクル毎に最終的に決定される目標偏差空燃比kcmdは、前記目標偏差空燃比算出器２６が新たな目標偏差空燃比kcmd(k)を制御サイクル毎に求めるために、空燃比処理制御器１５において図示しないメモリに時系列的に記憶保持される。また、前記ＳＴＥＰ１３で求められる目標空燃比KCMDは、燃料供給制御器１６の処理に供するために空燃比処理制御器１５において時系列的に記憶保持される。
【０３４９】
以上説明した内容が本実施形態の装置の作動の詳細である。
【０３５０】
すなわち、その作動を要約すれば、基本的には、空燃比処理制御器１５によって、触媒装置９〜１１の下流側のＯ2センサ１２の出力VO2/OUTを目標値VO2/TARGETに収束（整定）させるように、各気筒群３，４に対する目標空燃比KCMDが逐次求められる。さらに、燃料供給制御器１６によって、この目標空燃比KCMDに応じて、フィードフォワード制御により各気筒群３，４に対する燃料噴射量が調整され、各気筒群３，４で燃焼する混合気の空燃比が目標空燃比KCMDに操作される。これにより、Ｏ2センサ１２の出力VO2/OUTがその目標値VO2/TARGETに収束制御され、ひいては各触媒装置９〜１１の劣化等によらずに、それらの触媒装置９〜１１の全体の最適な浄化性能を確保することができる。
【０３５１】
このとき、空燃比処理制御器１５は、前記対象系１７が１入力１出力の系である前記対象等価系１８（図３参照）と等価であるとし、その対象等価系１８の単一の入力量としての前記合成偏差空燃比kact/t（＝KACT/T−FLAF/BASE）を前記式（３）の混ざりモデル形式のフィルタリング処理によって定義している。そして、各気筒群３，４に対する目標空燃比KCMDを求めるに際しては、上記対象等価系１８を制御対象とし、Ｏ2センサの出力VO2/OUTをその目標値VO2/TARGETに収束させるために要求される対象等価系１８への制御入力としての目標合成偏差空燃比kcmd /tを求める。さらに、上記混ざりモデル形式のフィルタリング処理の特性に基づいて、各気筒群３，４に対する目標空燃比KCMDを共通として、該目標空燃比KCMDと前記目標合成偏差空燃比kcmd/tとの相関関係を前記式（４）により定め、目標合成偏差空燃比kcmd/tから間接的に目標空燃比KCMDを求める。
【０３５２】
この場合、対象等価系１８は、１入力１出力の系であるので、目標合成偏差空燃比kcmd/tを求めるために、該対象等価系１８のモデルを前記式（１）のように比較的簡素な構成とすることができるとともに、そのモデルを使用して目標合成偏差空燃比kcmd/tを求めるアルゴリズムも比較的簡略な構成とすることができる。従って、空燃比処理制御器１５は、気筒群３，４毎に各別に目標空燃比KCMDを求めたりする複雑なアルゴリズムやモデルを必要とすることなく、比較的簡略なモデルやアルゴリズムによって、Ｏ2センサ１２の出力VO2/OUTを目標値VO2/TARGETに収束制御する上で適正な、各気筒群３，４に対する目標値空燃比KCMDを求めることができる。
【０３５３】
また、空燃比処理制御器１５が目標合成偏差空燃比kcmd/tを求めるに際しては、制御対象としての対象等価系１８を、エンジン１や、触媒装置９〜１１、副排気管６，７等に起因する応答遅れ要素と無駄時間要素とによりモデル化しておく。そして、前記推定器２４が、その対象等価系１８のモデルに基づいて構築されたアルゴリズムによって、対象等価系１８の無駄時間ｄ後のＯ2センサ１２の偏差出力VO2の推定値である推定偏差出力VO2バーを制御サイクル毎に逐次求める。
【０３５４】
さらに、空燃比処理制御器１５のスライディングモード制御器２５が、外乱等の影響に対する安定性が極めて高い適応スライディングモード制御のアルゴリズムによって、上記推定偏差出力VO2バーを「０」に収束させ、その結果としてＯ2センサ１２の出力VO2/OUTを目標値VO2/TARGETに収束させるように目標合成偏差空燃比kcmd/tを求める。
【０３５５】
このため、対象等価系１８の無駄時間ｄや外乱等の影響を適正に補償して、Ｏ2センサ１２の出力VO2/OUTを目標値VO2/TARGETに安定に収束させる上で的確な目標合成偏差空燃比kcmd/t、ひいては各気筒群３，４に対する的確な目標空燃比KCMDを求めることができる。その結果、Ｏ2センサ１２の出力VO2/OUTの目標値VO2/TA RGETへの収束制御を高い安定性で行なうことができる。
【０３５６】
さらには、空燃比処理制御器１５の同定器２３は、前記推定器２４やスライディングモード制御器２５がそれらの演算処理で使用する対象等価系１８のモデルのパラメータである前記ゲイン係数a1，a2，b1の同定値、すなわち前記同定ゲイン係数a1ハット，a2ハット，b1ハットを逐次リアルタイムで同定する。
【０３５７】
このため、Ｏ2センサ１２の推定偏差出力VO2バーを、対象等価系１８の基礎となる前記対象排気系１７の実際の挙動状態に則して精度よく求めることができると共に、Ｏ2センサ１２の出力VO2/OUTを目標値VO2/TARGETに収束させる上で要求される前記目標合成偏差空燃比kcmd/tも対象排気系１７の実際の挙動状態に則して適正に求めることができる。
【０３５８】
その結果、Ｏ2センサ１２の出力VO2/OUTを目標値VO2/TARGETへの収束制御を極めて高い安定性と速応性で良好に行なうことができ、ひいては、触媒装置９〜１１の最適な浄化性能を確実に確保することができる。
【０３５９】
また、本実施形態では、推定器２４は、スライディングモード制御器２５が生成する目標合成偏差空燃比kcmd/tの代わりに、燃料供給制御器１６が各気筒群３，４における空燃比を操作するために実際に使用している目標空燃比、すなわち前記実使用目標空燃比RKCMDにより定まる実使用目標合成偏差空燃比rkcmd/tを用いて前記式（１５）により、推定偏差出力VO2バーを求める。このため、該推定偏差出力VO2バーが各気筒群３，４における実際の空燃比の操作状態に則して求められることとなり、該推定偏差出力VO2バーの信頼性を高めることができる。
【０３６０】
同様に、本実施形態では、前記同定器２３は、スライディングモード制御器２５が生成する目標合成偏差空燃比kcmd/tの代わりに、前記実使用目標合成偏差空燃比rkcmd/tを用いた前記式（９）によって、前記同定ゲイン係数a1ハット，a2ハット，b1ハットを求めるために必要な前記同定偏差出力VO2ハットを求める。このため、対象等価系１８のモデルのパラメータである同定ゲイン係数a1ハット，a2ハット，b1ハットを、各気筒群３，４における実際の空燃比の操作状態に則して求めることが可能となり、それらの同定ゲイン係数の信頼性を高めることができる。
さらに、本実施形態では、前記対象等価系１８のモデルは、離散時間系で構築しているため、前記推定器２４や、スライディングモード制御器２５、同定器２６の演算処理のアルゴリズムの構築を容易なものとすることができる。
【０３６１】
尚、本発明は、以上説明した実施形態に限定されるものではなく、例えば次のような各種の変形態様が可能である。
【０３６２】
すなわち、前記実施形態では、エンジン１を、前記図１５に示した排気系構成を有するＶ型６気筒エンジンとして、該エンジン１の空燃比制御装置について説明した。但し、エンジン１は、例えば図１４あるいは図１６に示した排気系構成を有するＶ型エンジンであってもよく、さらには、図１７に示した直列６気筒エンジンであってもよい。また、例えばＶ型８気筒エンジンについても本実施形態と同様に本発明を適用したシステムを構築することができる。この場合には、前記燃料供給制御器１６における付着補正部３３を８気筒分、備えるようにすればよい。
【０３６３】
また、前記実施形態では、前記空燃比処理制御器１５が生成する目標空燃比KCMDを燃料供給制御器１６が各気筒群３，４における空燃比の操作のために使用しない場合があることを考慮し、前記同定器２３は、スライディングモード制御器２５が生成する目標合成偏差空燃比kcmd/tの代わりに、前記実使用目標合成偏差空燃比rkcmd/tを用いた前記式（９）によって、前記同定ゲイン係数a1ハット，a2ハット，b1ハットを求めるために必要な前記同定偏差出力VO2ハットを求めた。しかし、通常的には、実使用目標合成偏差空燃比rkcmd/tは、目標合成偏差空燃比kcmd/tに一致するので、該目標合成偏差空燃比kcmd/tを用いる前記式（８）によって、同定偏差出力VO2ハットを求めるようにしてもよい。但し、同定ゲイン係数a1ハット，a2ハット，b1ハットの信頼性をより高める上では、前記実施形態のように式（９）によって、同定偏差出力VO2ハットを求めることが好ましい。
【０３６４】
同様に、前記実施形態では、推定器２４は、目標合成偏差空燃比kcmd/tの代わりに、実使用目標合成偏差空燃比rkcmd/tを用いた前記式（１５）によりＯ2センサ１２の推定偏差出力VO2バーを求めることとしたが、目標合成偏差空燃比kcmd/tのデータをそのまま用いて、前記式（１４）により推定偏差出力VO2バーを求めるようにしてもよい。式（１４）によれば、推定偏差出力VO2(k+d)バーを、Ｏ2センサ１２の偏差出力VO2の現在値及び過去値の時系列データVO2(k)，VO2(k-1)と、スライディングモード制御器２５が求める目標合成偏差空燃比kcmd/tの過去値の時系列データkcmd/t(k-j)（ｊ＝1,2,…,d）とから求めることができる。但し、推定偏差出力VO2バーの信頼性をより高める上では、前記実施形態のように式（１５）によって、推定偏差出力VO2バーを求めることが好ましい。
【０３６５】
尚、同定器２３及び推定器２４の両者において、スライディングモード制御器２５が求める目標合成偏差空燃比kcmd/tをそのまま用いる場合には、前記実施形態で図４に示した前記フィルタ２９や減算処理器２８は不要となり、それらの演算処理を省略することができる。
【０３６６】
また、推定器２４に関し、対象等価系１８の無駄時間ｄ（前記気筒群３側無駄時間dAと気筒群４側無駄時間dBのうちの短い方）が空燃比処理制御器１５の制御サイクルの周期に比して十分に短いような場合には、前記推定器２４を省略してもよい。この場合には、空燃比処理制御器１５は、前記実施形態における推定器２４の演算処理を省略する（図９のＳＴＥＰ８の処理を省略する）。そして、スライディングモード制御器２５は、前記式（１９），（２０），（２２）において、ｄ＝０とした演算式によって、等価制御入力ｕeq、到達則入力ｕrch、適応則入力ｕadpを求め、それらの総和を目標合成偏差空燃比kcmd/tとして求めればよい。
【０３６７】
また、前記実施形態では、気筒群３側排気系無駄時間dAが気筒群４側排気系無駄時間dBよりも大きく前記気筒群別排気系無駄時間差dD(＝dA−dB）がdD＞０であるとしたため、前記目標偏差空燃比算出器２６は前記式（５）により、目標偏差空燃比kcmdを求めている。但し、上記気筒群別排気系無駄時間差dDがほぼ「０」であるような場合には、式（６）により、目標偏差空燃比kcmdを求めるようにすればよい。
【０３６８】
また、前記実施形態では、スライディングモード制御器２５は、適応スライディングモード制御により、目標合成偏差空燃比kcmd/tを求めるようにしたが、適応アルゴリズムを用いない通常的なスライディングモード制御により目標合成偏差空燃比kcmd/tを求めるようにしてもよい。この場合には、スライディングモード制御器２５は、前記等価制御入力ｕeqと、到達則入力ｕrchとの総和を目標合成偏差空燃比kcmd/tとして算出すればよい。
【０３６９】
また、前記実施形態では、目標合成偏差空燃比kcmd/tを求めるために、スライディングモード制御のアルゴリズムを用いたが、適応制御や、最適制御、あるいはＨ∞制御等、他のフィードバック制御手法を用いてもよい。
【０３７０】
また、前記実施形態では、対象等価系１８のモデルのパラメータである前記ゲイン係数a1，a2，b1の値を同定器２３によりリアルタイムで同定するようにしたが、それらのゲイン係数a1，a2，b1の値をあらかじめ定めた所定値としたり、エンジン１の回転数や吸気圧等からマップ等を用いて適宜設定するようにしてもよい。
【０３７１】
また、前記実施形態では、推定器２４が推定偏差出力VO2バーを求めるための対象等価系１８のモデルと、スライディングモード制御器２５が目標合成偏差空燃比kcmd/tを求めるための対象等価系１８のモデルとを同一としたが、それらを各別のモデルとしてもよい。
【０３７２】
また、前記実施形態では、対象等価系１８のモデルを離散時間系で構築したが、該モデルを連続時間系で構築しておき、そのモデルに基づいて、Ｏ2センサ１２の推定偏差出力VO2バーを求めるアルゴリズムを構築したり、前記目標合成偏差空燃比kcmd/tを求めるフィードバック制御のアルゴリズムを構築するようにすることも可能である。
【０３７３】
また、前記実施形態では、排ガスセンサとしてＯ2センサ１２を用いたが、該排ガスセンサは、触媒装置の下流の制御すべき排ガスの特定成分の濃度を検出できるセンサであれば、他のセンサを用いてもよい。すなわち、例えば触媒装置の下流の排ガス中の一酸化炭素（ＣＯ）を制御する場合はＣＯセンサ、窒素酸化物（ＮＯx）を制御する場合にはＮＯxセンサ、炭化水素（ＨＣ）を制御する場合にはＨＣセンサを用いる。三元触媒により触媒装置を構成した場合には、上記のいずれのガス成分の濃度を検出するようにしても、触媒装置の浄化性能を最大限に発揮させるように制御することができる。また、還元触媒や酸化触媒を用いて触媒装置を構成した場合には、浄化したいガス成分を直接検出することで、浄化性能の向上を図ることができる。
【図面の簡単な説明】
【図１】本発明の一実施形態の多気筒内燃機関の空燃比制御装置の全体的システム構成図。
【図２】図１の装置で用いるＯ2センサ及び空燃比検出用センサの出力特性を示す線図。
【図３】図１の多気筒内燃機関の排気系と等価な系を示すブロック図。
【図４】図１の装置の排気系制御器の基本構成を示すブロック図。
【図５】図４の排気系制御器が用いるスライディングモード制御を説明するための線図。
【図６】図１の装置の燃料供給制御器の基本構成を示すブロック図。
【図７】図１の装置の燃料供給制御器の処理を説明するためのフローチャート。
【図８】図７のフローチャートのサブルーチン処理を説明するためのフローチャート。
【図９】図１の装置の排気系制御器の処理を説明するためのフローチャート。
【図１０】図９のフローチャートのサブルーチン処理を説明するためのフローチャート。
【図１１】図９のフローチャートのサブルーチン処理を説明するためのフローチャート。
【図１２】図９のフローチャートのサブルーチン処理を説明するためのフローチャート。
【図１３】図９のフローチャートのサブルーチン処理を説明するためのフローチャート。
【図１４】多気筒内燃機関としてのＶ型エンジンの排気系構成を例示する説明図。
【図１５】多気筒内燃機関としてのＶ型エンジンの排気系構成を例示する説明図。
【図１６】多気筒内燃機関としてのＶ型エンジンの排気系構成を例示する説明図。
【図１７】多気筒内燃機関としての直列６気筒エンジンの排気系構成を例示する説明図。
【符号の説明】
１…エンジン（多気筒内燃機関）、３，４…気筒群、６，７…副排気管（副排気通路）、８…主排気管（主排気通路）、９〜１１…触媒装置、１２…Ｏ2センサ（排ガスセンサ）、１６…燃料供給制御器（空燃比操作手段）、１８…対象等価系（制御対象系）、２３…同定器（同定手段）、２４…推定器（推定手段）、２５…スライディングモード制御器（目標合成空燃比データ生成手段）、２６…目標偏差空燃比算出器（目標空燃比データ生成手段）、２９…フィルタ（フィルタ手段）。
【図１】
0003655146.tif 000029
【図２】
0003655146.tif 000030
【図３】
0003655146.tif 000031
【図４】
0003655146.tif 000032
【図５】
0003655146.tif 000033
【図６】
0003655146.tif 000034
【図７】
0003655146.tif 000035
【図８】
0003655146.tif 000036
【図９】
0003655146.tif 000037
【図１０】
0003655146.tif 000038
【図１１】
0003655146.tif 000039
【図１２】
0003655146.tif 000040
【図１３】
0003655146.tif 000041
【図１４】
0003655146.tif 000042
【図１５】
0003655146.tif 000043
【図１６】
0003655146.tif 000044
【図１７】
0003655146.tif 000045