(57)【特許請求の範囲】
【請求項１】
プラントへの入力を生成するアクチュエータと、前記プラントの出力を検出する第１検出手段と、前記第１検出手段の出力を所定の目標値に収束させるように前記プラントへの入力を操作するための操作量を逐次生成する操作量生成手段と、該操作量に基づき前記アクチュエータの動作を制御して前記プラントへの入力を操作するアクチュエータ制御手段と、前記プラントを、該プラントへの入力と該入力に対する所定の基準値との偏差から応答遅れ及び無駄時間を有して前記第１検出手段の出力と前記目標値との偏差を生成する系として該プラントの挙動をあらかじめモデル化しておき、そのプラントのモデルに基づいて構築された所定のアルゴリズムにより前記プラントが有する前記無駄時間後の前記第１検出手段の出力の推定値を表すデータを逐次生成する推定手段と備え、前記操作量生成手段が該推定手段により生成された前記第１検出手段の出力の推定値を表すデータを用いて前記操作量を生成するプラントの制御装置において、
前記所定の基準値を前記操作量生成手段が生成する操作量に応じて可変的に設定する基準値可変設定手段を備えたことを特徴とするプラントの制御装置。
【請求項２】
前記プラントへの入力を検出する第２検出手段を具備し、前記推定手段が実行する前記アルゴリズムは、前記第１検出手段の出力と前記目標値との偏差のデータと、前記第２検出手段の出力と前記基準値との偏差のデータと、前記プラントのモデルの挙動を規定する該モデルのパラメータとを用いて前記無駄時間後の前記第１検出手段の出力の推定値を表すデータを生成するアルゴリズムであることを特徴とする請求項１記載のプラントの制御装置。
【請求項３】
プラントへの入力を生成するアクチュエータと、前記プラントの出力を検出する第１検出手段と、該第１検出手段の出力を所定の目標値に収束させるように前記プラントへの入力を操作するための操作量を逐次生成する操作量生成手段と、該操作量に基づき前記アクチュエータの動作を制御して前記プラントへの入力を操作するアクチュエータ制御手段と、前記プラントを、該プラントへの入力と該入力に対する所定の基準値との偏差から応答遅れ及び第１無駄時間を介して前記第１検出手段の出力と前記目標値との偏差を生成する系として該プラントの挙動をあらかじめモデル化しておくと共に前記アクチュエータ制御手段及び前記アクチュエータからなる系を前記操作量から第２無駄時間を存して前記プラントへの入力を生成する入力操作系として該入力操作系の挙動をあらかじめモデル化しておき、該プラントのモデルと入力操作系のモデルとに基づいて構築された所定のアルゴリズムにより該プラントが有する前記第１無駄時間と該入力操作系が有する前記第２無駄時間とを合わせた合計無駄時間後における前記第１検出手段の出力の推定値を表すデータを生成する推定手段とを備え、前記操作量生成手段が該推定手段により生成された該第１検出手段の出力の推定値を表すデータを用いて前記操作量を生成するプラントの制御装置において、
前記所定の基準値を前記操作量生成手段が生成する操作量に応じて可変的に設定する基準値可変設定手段を備えたことを特徴とするプラントの制御装置。
【請求項４】
前記推定手段が実行する前記アルゴリズムは、前記第１検出手段の出力と前記目標値との偏差のデータと、前記操作量のデータと、前記プラントのモデルの挙動を規定する該モデルのパラメータとを用いて前記合計無駄時間後の前記第１検出手段の出力の推定値を表すデータを生成するアルゴリズムであることを特徴とする請求項３記載のプラントの制御装置。
【請求項５】
前記プラントへの入力を検出する第２検出手段を具備すると共に、前記推定手段が前記第１検出手段の出力の推定値を表すデータを生成するために用いる前記操作量のデータには、前記入力操作系の第２無駄時間以前の少なくとも一つの該操作量の過去値が含まれており、該推定手段が実行する前記アルゴリズムは、当該第２無駄時間以前の前記操作量の過去値の全部又は一部の代わりに、該過去値を前記入力操作系のモデルに基づき前記第２検出手段の出力により表してなるデータを用いて前記第１検出手段の出力の推定値を表すデータを生成するアルゴリズムであることを特徴とする請求項４記載のプラントの制御装置。
【請求項６】
前記プラントのモデルのパラメータを前記第１検出手段の出力と前記目標値との偏差のデータと、前記第２検出手段の出力と前記基準値との偏差のデータとを用いて逐次同定する同定手段を備えたことを特徴とする請求項２又は５記載のプラントの制御装置。
【請求項７】
前記プラントのモデルは離散系で表したモデルであることを特徴とする請求項１〜６のいずれか１項に記載のプラントの制御装置。
【請求項８】
前記操作量生成手段は、前記プラントのモデルに基づいて構築されたフィードバック制御処理により前記第１検出手段の出力を前記目標値に収束させるように前記操作量を生成することを特徴とする請求項１〜７のいずれか１項に記載のプラントの制御装置。
【請求項９】
前記操作量は、前記プラントへの入力と前記基準値との偏差の目標値であり、前記アクチュエータ制御手段は、前記偏差の目標値と前記基準値とにより定まる目標入力に前記プラントへの入力を操作するよう前記アクチュエータの動作を制御することを特徴とする請求項８記載のプラントの制御装置。
【請求項１０】
前記操作量生成手段が行う前記フィードバック制御処理は、前記推定手段が生成したデータにより表される前記第１検出手段の出力の推定値と前記目標値との偏差のデータと、前記モデルの挙動を規定する該モデルのパラメータとを用いて前記操作量を生成する処理であることを特徴とする請求項８又は９記載のプラントの制御装置。
【請求項１１】
前記フィードバック制御処理は、スライディングモード制御の制御処理であることを特徴とする請求項８〜１０のいずれか１項に記載のプラントの制御装置。
【請求項１２】
前記スライディングモード制御は適応スライディングモード制御であることを特徴とする請求項１１記載のプラントの制御装置。
【請求項１３】
前記操作量生成手段が前記適応スライディングモード制御の制御処理により生成する前記操作量は、該適応スライディングモード制御の適応則に基づく適応則成分を含み、前記基準値可変設定手段は、該操作量の適応則成分の値に応じて前記基準値を可変的に設定することを特徴とする請求項１２記載のプラントの制御装置。
【請求項１４】
前記基準値可変設定手段は、あらかじめ定めた所定値又は該所定値を含む該所定値の近傍範囲に対する前記操作量の適応則成分の値の大小関係に応じて前記基準値を増減させることにより該基準値を可変的に設定することを特徴とする請求項１３記載のプラントの制御装置。
【請求項１５】
前記基準値可変設定手段は、前記第１検出手段の出力が安定であるか否かを逐次判断する手段を具備し、該第１検出手段の出力が不安定であると判断したとき、前記基準値を前記操作量によらずに所定値に保持することを特徴とする請求項１１〜１４のいずれか１項に記載のプラントの制御装置。
【請求項１６】
前記基準値可変設定手段は、前記スライディングモード制御の制御処理に用いる切換関数の値に基づき、前記第１検出手段の出力が安定であるか否かの判断を行うことを特徴とする請求項１５記載のプラントの制御装置。
【請求項１７】
前記基準値可変設定手段は、前記第１検出手段の出力が前記目標値に略収束しているか否を判断する手段を具備し、該第１検出手段の出力が前記目標値へ未収束状態であると判断したとき、前記基準値を前記操作量によらずに所定値に保持することを特徴とする請求項１〜１６のいずれか１項に記載のプラントの制御装置。
【請求項１８】
前記プラントは、内燃機関の排気通路に設けた触媒装置の上流側から下流側にかけての該触媒装置を含む排気系であり、前記プラントへの入力は、前記触媒装置に進入する排ガスを生成する前記アクチュエータとしての前記内燃機関で燃焼した混合気の空燃比であり、前記プラントの出力は、前記触媒装置を通過した排ガス中の特定成分の濃度であることを特徴とする請求項１〜１７のいずれか１項に記載のプラントの制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、プラントの制御装置に関する。
【０００２】
【従来の技術】
従来、本願出願人は、内燃機関の排気通路に設けた三元触媒等からなる触媒装置を通過した排ガス中の特定成分の濃度を検出する排ガスセンサ、例えば酸素濃度を検出するＯ２  センサを触媒装置の下流側に配置し、そのＯ２  センサの出力（酸素濃度の検出値）を所定の目標値に収束させるように内燃機関の空燃比（より正確には内燃機関で燃焼させる混合気の空燃比。以下、同様）を操作することで、触媒装置の経時劣化等によらずに該触媒装置の所要の浄化性能を確保する技術を提案している（例えば、特願平１０−１３０８６４号、特願平１０−１０６７３８号、特願平９−２５１１４０号等）。
【０００３】
この技術では、フィードバック制御処理によりＯ２  センサの出力をその目標値に収束させるように内燃機関の空燃比を操作するための操作量（具体的には目標空燃比あるいはこれを規定するもの等）を所定の制御サイクルで逐次生成する。また、触媒装置に進入する排ガスの空燃比、詳しくは内燃機関で燃焼した混合気の空燃比を検出する排ガスセンサ（以下、ここでは空燃比センサという）を触媒装置の上流側に配置する。そして、この空燃比センサの出力（空燃比の検出値）を、上記操作量により規定される目標空燃比に収束させるようにフィードバック制御により内燃機関の燃料供給量を調整することで内燃機関の空燃比を目標空燃比に操作するようにしている。
【０００４】
このような内燃機関の空燃比制御によって、触媒装置の下流側のＯ２  センサの出力を目標値に収束させ、ひいては触媒装置の所要の浄化性能を確保することが可能となる。
【０００５】
尚、上記の技術では内燃機関の空燃比を目標空燃比に操作するために、触媒装置の上流側の空燃比センサの出力を用いたフィードバック制御を行っているが、該目標空燃比からマップ等を用いて内燃機関の燃料供給量を決定したりすることで、フィードフォワード的に空燃比を目標空燃比に操作することも可能である。
【０００６】
また、上記の技術では、触媒装置の下流側の排ガスセンサとしてＯ２  センサを用いているが、制御したい排ガス中の成分によっては、ＮＯｘ  センサ、ＣＯセンサ、ＨＣセンサ等、他の排ガスセンサを用い、その排ガスセンサの出力を適当な目標値に収束させるように内燃機関の空燃比を操作することで、触媒装置の所要の浄化性能を確保するようにすることも可能である。
【０００７】
また、上記の技術において、触媒装置の上流側から下流側のＯ２  センサにかけての該触媒装置を含む排気系に着目したとき、該排気系は、内燃機関の空燃比（前記空燃比センサにより検出する空燃比）から、Ｏ２  センサの出力を生成するプラントと考えられる。さらに、内燃機関は、該プラントに与える空燃比を有する排ガスを生成するアクチュエータと考えられる。このように考えたとき、上記の技術は、プラントの出力としてのＯ２  センサの出力を所定の目標値に収束させるようにプラントへの入力（空燃比）を操作するための操作量を生成し、その操作量に基づいてアクチュエータとしての内燃機関の動作を制御してプラントへの入力（＝アクチュエータの出力）を操作する技術として表現することができる。
【０００８】
ところで、触媒装置には一般に比較的長い無駄時間が存在し、この無駄時間は、前記のようなＯ２  センサの出力の目標値への収束制御に悪影響を及ぼす虞がある。このため、前記の技術では、触媒装置の上流側から下流側のＯ２  センサにかけての触媒装置を含む排気系の挙動をモデル化しておき、その排気系のモデルに基づいて構築したアルゴリズムにより該排気系が有する無駄時間後のＯ２  センサの出力を逐次推定する。そして、このＯ２  センサの出力の推定値を用いて前記操作量を生成する（具体的にはＯ２  センサの出力の推定値を前記目標値に収束させるように操作量を生成する）ことで、上記無駄時間の影響を補償するようにしている。
【０００９】
この場合、前記触媒装置を含む排気系のモデル化にあたっては、該排気系を、内燃機関で燃焼した混合気の空燃比、すなわち前記空燃比センサで検出する空燃比と該空燃比に対する所定の基準値（一定値）との偏差（以下、ここでは偏差空燃比という）から、応答遅れ及び無駄時間を有してＯ２  センサの出力とその目標値との偏差を生成する系と見なして該排気系をモデル化している。そして、前記排気系が有する無駄時間後のＯ２  センサの出力を推定するためのアルゴリズムは、上記のように構成した排気系のモデルに基づいて構築されている。
【００１０】
このようにモデル化する排気系の入力（偏差空燃比）や出力（Ｏ２  センサの出力とその目標値との偏差）を偏差によって表現することで、排気系の無駄時間後のＯ２  センサの出力を推定するためのアルゴリズムを簡易なものとすることができる。
【００１１】
またさらに、本願出願人は、前記排気系の無駄時間だけでなく、内燃機関や、該内燃機関の動作を前記操作量に基づき制御する制御器（以下、機関側制御器という）が有する無駄時間の影響をも補償する技術を特願平１０−１３０８６４号にて先に提案している。これは、前記Ｏ２  センサの出力の目標値への収束制御を行う内燃機関の運転状態（より詳しくは回転数の状態）によっては、上記内燃機関や機関制御器が有する無駄時間がＯ２  センサの出力の目標値への収束制御に悪影響を及ぼすことがあるからである。
【００１２】
この技術では、前記排気系を前述の如くモデル化すると共に、前記内燃機関及び機関側制御器からなる系（以下、ここでは空燃比操作系という）を、前記操作量から該空燃比操作系の無駄時間のみを有して前記排気系に与える空燃比を生成する系（排気系に与える空燃比が無駄時間前の操作量によって一義的に規定される系）と見なしてモデル化しておく。そして、これらのモデルに基づいて構築したアルゴリズムにより、前記排気系の無駄時間と空燃比操作系の無駄時間とを合わせた合計無駄時間後の前記Ｏ２  センサの出力を逐次推定する。さらに、この推定値を用いて前記操作量を生成することで、排気系の無駄時間だけでなく、空燃比操作系の無駄時間の影響をも補償してＯ２  センサの出力の目標値への収束制御をより良好に行うことを可能としている。
【００１３】
このように前記合計無駄時間後の前記Ｏ２  センサの出力を推定する場合においても、特に前記排気系の入力（偏差空燃比）や出力（Ｏ２  センサの出力とその目標値との偏差）を偏差によって表現することで、Ｏ２  センサの出力を推定するためのアルゴリズムを簡易なものとすることができる。
【００１４】
尚、前述した技術では、前記排気系のモデルの挙動を規定するパラメータを前記空燃比センサやＯ２  センサの出力のデータを用いて逐次同定するようにしており、前記排気系の無駄時間後のＯ２  センサの出力、あるいは、前記排気系の無駄時間と空燃比操作系の無駄時間とを合わせた合計無駄時間後のＯ２  センサの出力を推定するアルゴリズムでは、その同定された排気系のモデルのパラメータを用いている。さらに、前述した技術では、前記操作量を生成するフィードバック制御の処理として、前記排気系のモデルに基づいて構築したスライディングモード制御の処理を用いている。
【００１５】
しかるに、本願発明者等のさらなる検討によって、例えば空燃比センサの出力が該空燃比センサの劣化等に起因して本来あるべき正常な出力に対して定常的なオフセットが生じたような状況や、内燃機関の経年的な特性変化等に起因して実際の空燃比が目標空燃比に対して定常的な誤差を生じるような状況では、前記排気系の無駄時間後のＯ２  センサの出力の推定値、あるいは前記排気系の無駄時間と空燃比操作系の無駄時間とを合わせた合計無駄時間後のＯ２  センサの出力の推定値が真値に対して定常的な誤差を生じやすいことが判明した。そして、このようにＯ２  センサの出力の推定値の誤差が生じると、この推定値を用いて生成する前記操作量に基づき内燃機関の空燃比を操作したとき、Ｏ２  センサの出力の目標値への収束精度が低下するという不都合を生じる。
【００１６】
また、Ｏ２  センサの出力の推定のために用いる前記排気系モデルのパラメータの同定においても、空燃比センサの出力のオフセット等が生じている状況では、該パラメータの同定値の誤差も生じ易く、これも一つの要因となって、Ｏ２  センサの出力の推定値の誤差が生じることがある。
【００１７】
さらに、前記排気系のモデルに基づいて構築したフィードバック制御の処理により前記操作量を生成する前記の技術では、空燃比センサの出力のオフセット等が生じている状況では、Ｏ２  センサの出力の目標値への収束制御の速応性が低下するという不都合を生じることがあった。
【００１８】
このため、このような不都合を解消することが望まれていた。
【００１９】
尚、このような不都合は、任意のプラントの出力の検出値を所定の目標値に収束させるように該プラントへの入力を操作するための操作量を生成し、その操作量に基づいてプラントへの入力を生成するアクチュエータの動作を制御する場合において、プラントの無駄時間や、アクチュエータ及びこれの制御器が有する無駄時間の影響を補償するために前記の技術と同様に構成したプラントのモデル等に基づいてＯ２  センサの出力を推定し、その推定値を用いて前記操作量を生成する場合に同様に生じる不都合である。
【００２０】
【発明が解決しようとする課題】
本発明はかかる背景に鑑みなされたものであり、触媒装置の下流側に設けたＯ２センサ等の排ガスセンサの出力を所定の目標値に収束させるように内燃機関で燃焼させる混合気の空燃比を操作するシステムにおいて、触媒装置を含む排気系等が有する無駄時間の影響を補償しつつ、排ガスセンサの出力の目標値への収束制御の精度や速応性をより高めることができるプラントの制御装置を提供することを目的とする。
【００２１】
また、本発明はより一般的に、プラントの出力を検出する検出手段の出力を所定の目標値に収束させるようにプラントへの入力を操作するシステムにおいて、プラント等が有する無駄時間の影響を補償しつつ、上記検出手段の出力の目標値への収束制御の精度や速応性を高めることができるプラントの制御装置を提供することを目的とする。
【００２２】
本発明のプラントの制御装置の第１の態様は、前記の目的を達成するために、プラントへの入力を生成するアクチュエータと、前記プラントの出力を検出する第１検出手段と、前記第１検出手段の出力を所定の目標値に収束させるように前記プラントへの入力を操作するための操作量を逐次生成する操作量生成手段と、該操作量に基づき前記アクチュエータの動作を制御して前記プラントへの入力を操作するアクチュエータ制御手段と、前記プラントを、該プラントへの入力と該入力に対する所定の基準値との偏差から応答遅れ及び無駄時間を有して前記第１検出手段の出力と前記目標値との偏差を生成する系として該プラントの挙動をあらかじめモデル化しておき、そのプラントのモデルに基づいて構築された所定のアルゴリズムにより前記プラントが有する前記無駄時間後の前記第１検出手段の出力の推定値を表すデータを逐次生成する推定手段と備え、前記操作量生成手段が該推定手段により生成された前記第１検出手段の出力の推定値を表すデータを用いて前記操作量を生成するプラントの制御装置において、前記所定の基準値を前記操作量生成手段が生成する操作量に応じて可変的に設定する基準値可変設定手段を備えたことを特徴とする。そして、前記プラントは、内燃機関の排気通路に設けた触媒装置の上流側から下流側にかけての該触媒装置を含む排気系であり、前記プラントへの入力は、前記触媒装置に進入する排ガスを生成する前記アクチュエータとしての前記内燃機関で燃焼した混合気の空燃比であり、前記プラントの出力は、前記触媒装置を通過した排ガス中の特定成分の濃度であることを特徴とする。（第１発明）
【００２３】
すなわち、前記排気系がプラントである本発明の制御装置の第１の態様においては、上記の如く構成した前記排気系のモデルに基づいて構築されたアルゴリズムにより、該排気系が有する無駄時間後の前記第１検出手段の出力の推定値を表すデータを逐次生成する。そして、その第１検出手段の出力の推定値を表すデータを用いて第１検出手段の出力を前記目標値に収束させるように前記混合気の空燃比を操作するための操作量を逐次生成し、その操作量に基づき前記アクチュエータである内燃機関の動作を制御（例えば内燃機関の燃料供給量の調整）することで内燃機関で燃焼させる混合気の空燃比を操作する。
【００２４】
この場合、本願発明者等の知見によれば、上記モデルにより表した排気系の入力としての前記空燃比と所定の基準値との偏差（以下の本発明の説明では、この偏差を排気系偏差入力ということがある）に関する該基準値の値を従来のように一定値としていると、前記操作量に基づき操作する空燃比に定常的な外乱が含まれている場合等にあっては、前記推定手段が生成するデータにより表される前記第１検出手段の出力の前記無駄時間後の推定値が真値に対して定常的な誤差が生じ易くなる。ひいては、この推定値を用いて前記操作量を生成して前記混合気の空燃比を操作したとき、第１検出手段の出力も目標値に対して定常的な誤差を生じ易くなる。そして、このような状況にあっては、前記基準値を前記操作量生成手段が生成する操作量に応じて適宜変更してやることで、第１検出手段の出力の推定値の精度を高めることができる。
【００２５】
そこで、本発明では上記の如く前記基準値を前記操作量生成手段が生成する操作量に応じて適宜、可変的に設定する。これにより、前記排気系の無駄時間後の第１検出手段の出力の推定値の精度を高めることが可能となる。ひいては、前記排気系の無駄時間（排気系に与えられる各時点の前記排気系偏差入力もしくは空燃比が第１検出手段の出力もしくはその目標値との偏差に反映されるようになるまでに要する時間）の影響を適正に補償しつつ、第１検出手段の出力の目標値への収束制御の精度を高めることが可能となる。そして、この結果、触媒装置の所要の浄化性能をより確実に確保することができる。
【００２６】
尚、前記操作量生成手段により生成する操作量としては、内燃機関で燃焼させる混合気の目標空燃比、該混合気の空燃比と前記基準値との偏差である前記排気系偏差入力の目標値、あるいは内燃機関の燃料供給量の補正量等が挙げられる。また、この操作量を、前記第１検出手段の出力の推定値を表すデータを用いて生成するに際しては、例えば該データにより表される第１検出手段の出力の推定値を前記目標値に収束させるように（結果的に第１検出手段の出力を目標値に収束させるように）フィードバック制御処理により生成すればよい。
【００２７】
このような、前記排気系がプラントである本発明の制御装置の第１の態様では、より具体的には、前記内燃機関で燃焼した混合気の空燃比を検出すべく前記触媒装置の上流側に配置した第２検出手段を具備し、前記推定手段が実行する前記アルゴリズムは、前記第１検出手段の出力と前記目標値との偏差のデータと、前記第２検出手段の出力と前記基準値との偏差（これは前記排気系偏差入力の検出値に相当する）のデータと、前記排気系のモデルの挙動を規定する該モデルのパラメータとを用いて前記無駄時間後の前記第１検出手段の出力の推定値を表すデータを生成するアルゴリズムである（第２発明）。
【００２８】
すなわち、前記第２検出手段を触媒装置の上流側に配置して前記混合気の空燃比を検出したとき、前記第１検出手段の出力と前記目標値との偏差（以下の本発明の説明では、この偏差を排気系偏差出力ということがある）のデータと、前記排気系偏差入力の検出値のデータと、前記排気系のモデルの挙動を規定する該モデルのパラメータとを用いることで、前記排気系の無駄時間後の前記第１検出手段の出力の推定値を表すデータ（具体的には第１検出手段の出力そのものの推定値、あるいは前記排気系偏差出力の推定値）を生成することができる。
【００２９】
尚、前記モデルのパラメータは、該モデルの挙動を規定する上で、ある値に設定すべきパラメータである。また、前記操作量を例えば目標空燃比あるいは前記排気系偏差入力の目標値としたとき、該操作量に対応して定まる目標空燃比と実際の空燃比との誤差が十分に小さいような場合には、前記第１検出手段の出力の推定値を表すデータを生成するために、前記排気系偏差入力に対応する前記第２検出手段の出力の代わりに前記操作量を用いることも可能である。
【００３０】
また、本発明のプラントの制御装置（プラントが排気系である制御装置）の第２の態様は、前記の目的を達成するために、プラントへの入力を生成するアクチュエータと、前記プラントの出力を検出する第１検出手段と、該第１検出手段の出力を所定の目標値に収束させるように前記プラントへの入力を操作するための操作量を逐次生成する操作量生成手段と、該操作量に基づき前記アクチュエータの動作を制御して前記プラントへの入力を操作するアクチュエータ制御手段と、前記プラントを、該プラントへの入力と該入力に対する所定の基準値との偏差から応答遅れ及び第１無駄時間を介して前記第１検出手段の出力と前記目標値との偏差を生成する系として該プラントの挙動をあらかじめモデル化しておくと共に前記アクチュエータ制御手段及び前記アクチュエータからなる系を前記操作量から第２無駄時間を存して前記プラントへの入力を生成する入力操作系として該入力操作系の挙動をあらかじめモデル化しておき、該プラントのモデルと入力操作系のモデルとに基づいて構築された所定のアルゴリズムにより該プラントが有する前記第１無駄時間と該入力操作系が有する前記第２無駄時間とを合わせた合計無駄時間後における前記第１検出手段の出力の推定値を表すデータを生成する推定手段とを備え、前記操作量生成手段が該推定手段により生成された該第１検出手段の出力の推定値を表すデータを用いて前記操作量を生成するプラントの制御装置において、前記所定の基準値を前記操作量生成手段が生成する操作量に応じて可変的に設定する基準値可変設定手段を備えたことを特徴とする。そして、前記プラントは、内燃機関の排気通路に設けた触媒装置の上流側から下流側にかけての該触媒装置を含む排気系であり、前記プラントへの入力は、前記触媒装置に進入する排ガスを生成する前記アクチュエータとしての前記内燃機関で燃焼した混合気の空燃比であり、前記プラントの出力は、前記触媒装置を通過した排ガス中の特定成分の濃度であることを特徴とする。（第３発明）
【００３１】
すなわち、前記排気系がプラントである本発明の制御装置の第２の態様においては、上記の如く構成した前記排気系のモデルと前記空燃比操作系（内燃機関及び機関制御手段からなる系）のモデルとに基づいて構築されたアルゴリズムにより、該排気系が有する第１無駄時間と空燃比操作系が有する第２無駄時間とを合わせた合計無駄時間後の前記第１検出手段の出力の推定値を表すデータを逐次生成する。そして、その第１検出手段の出力の推定値を表すデータを用いて第１検出手段の出力を前記目標値に収束させるように前記混合気の空燃比を操作するための操作量を逐次生成し、その操作量に基づき前記アクチュエータである内燃機関の動作を制御（例えば内燃機関の燃料供給量の調整）することで内燃機関で燃焼させる混合気の空燃比を操作する。
【００３２】
この場合、前記第１の態様の発明の場合と同様に、上記のようにモデル化した排気系の前記排気系偏差入力に関する該基準値の値を従来のように一定値としていると、前記操作量に基づき操作する空燃比に定常的な外乱が含まれている場合等にあっては、前記推定手段が生成するデータにより表される前記第１検出手段の出力の前記合計無駄時間後の推定値が真値に対して定常的な誤差が生じ易くなる。そして、このような状況にあっては、前記基準値を前記操作量生成手段が生成する操作量に応じて適宜変更してやることで、第１検出手段の出力の推定値の精度を高めることができる。
【００３３】
そこで、本発明の第２の態様にあっても上記の如く前記基準値を前記操作量生成手段が生成する操作量に応じて適宜、可変的に設定する。これにより、前記排気系の第１無駄時間と空燃比操作系の第２無駄時間とを合わせた合計無駄時間後の第１検出手段の出力の推定値の精度を高めることが可能となる。ひいては、前記排気系の第１無駄時間（排気系に与えられる各時点の前記排気系偏差入力もしくは空燃比が第１検出手段の出力もしくはその目標値との偏差に反映されるようになるまでに要する時間）と、空燃比操作系の第２無駄時間（空燃比操作系に与えられる各時点の前記操作量が前記排気系に与えられる実際の空燃比に反映させるようになるまでに要する時間）との両者の無駄時間の影響を適正に補償しつつ、第１検出手段の出力の目標値への収束制御の精度を高めることが可能となる。そして、この結果、触媒装置の所要の浄化性能をより確実に確保することができる。
【００３４】
尚、前記排気系がプラントである本発明の制御装置の第２の態様においても、前記操作量生成手段により生成する操作量としては、前記第１の態様の発明と同様、内燃機関で燃焼させる混合気の目標空燃比、該混合気の空燃比と前記基準値との偏差である前記排気系偏差入力の目標値、あるいは内燃機関の燃料供給量の補正量等が挙げられる。また、この操作量を、前記第１検出手段の出力の推定値を表すデータを用いて生成するに際しては、例えば該データにより表される第１検出手段の出力の推定値を前記目標値に収束させるようにフィードバック制御処理により生成すればよい。また、前記空燃比操作系の内燃機関には、一般に無駄時間だけでなく応答遅れも存するが、この応答遅れは前記機関制御手段によって補償することが可能である。このため、前記推定手段及び操作量生成手段にとっては、前記空燃比操作系のモデルに応答遅れを考慮せずとも支障はない。
【００３５】
このような、前記排気系がプラントである本発明の制御装置の第２の態様にあっては、より具体的には、前記推定手段が実行する前記アルゴリズムは、前記第１検出手段の出力と前記目標値との偏差（前記排気系偏差出力）のデータと、前記操作量のデータと、前記排気系のモデルの挙動を規定する該モデルのパラメータとを用いて前記合計無駄時間後の前記第１検出手段の出力の推定値を表すデータを生成するアルゴリズムである（第４発明）。
【００３６】
すなわち、前記排気系のモデルと空燃比操作系のモデルとを組み合わせれば、該排気系及び空燃比操作系を合わせた系は、前記操作量から、前記合計無駄時間と前記排気系の応答遅れを有して前記排気系偏差出力を生成する系として、前記排気系のモデルのパラメータを含むモデルにより表現することができる。従って、前記合計無駄時間後の前記第１検出手段の出力の推定値を表すデータ（具体的には第１検出手段の出力そのものの推定値、あるいは前記排気系偏差出力の推定値）は、前記排気系偏差出力のデータと、前記操作量のデータと、前記排気系のモデルのパラメータ（排気系のモデルの挙動を規定する上で、ある値に設定すべきパラメータ）とを用いて生成することができる。
【００３７】
この場合、前記合計無駄時間後の第１検出手段の出力の推定値を生成する上で必要となる前記操作量のデータには、基本的には前記第２無駄時間以前の一つもしくは複数の該操作量の過去値のデータが含まれる。また、内燃機関で燃焼する混合気の空燃比を検出するようにすれば、前記第２無駄時間以前の各時点の前記操作量は、前記空燃比操作系のモデルに基づいて該混合気の空燃比の現在以前の検出値によって表すことができる。
【００３８】
そこで、前記排気系がプラントである本発明の制御装置の第２の態様の前記第４発明においては、前記内燃機関で燃焼した混合気の空燃比を検出すべく前記触媒装置の上流側に配置した第２検出手段を具備すると共に、前記推定手段が前記第１検出手段の出力の推定値を表すデータを生成するために用いる前記操作量のデータには、前記空燃比操作系の第２無駄時間以前の少なくとも一つの該操作量の過去値が含まれており、該推定手段が実行する前記アルゴリズムは、当該第２無駄時間以前の前記操作量の過去値の全部又は一部の代わりに、該過去値を前記空燃比操作系のモデルに基づき前記第２検出手段の出力により表してなるデータを用いて前記第１検出手段の出力の推定値を表すデータを生成するアルゴリズムとする（第５発明）。
【００３９】
このように前記合計無駄時間後の第１検出手段の出力の推定値を表すデータを生成する上で要する前記操作量のデータのうち、前記第２無駄時間以前の過去値の全部又は一部の代わりに（好ましくは全部の代わりに）、第２検出手段の出力（これは該操作量に対応して内燃機関で燃焼した混合気の実際の空燃比の検出値に相当する）により表してなるデータを用いて前記第１検出手段の出力の推定値を表すデータを生成することによって、内燃機関の実動状態に即して該推定値を生成することができる。この結果、該推定値のデータの信頼性を高めることができ、ひいては、第１検出手段の出力の目標値への収束制御の精度をより高めることができる。
【００４０】
尚、前記第２無駄時間の長さ等によっては、前記第１検出手段の出力の推定値を表すデータを生成するために必要な前記操作量のデータの全てが前記第２無駄時間以前のものとなる場合もある。そして、この場合に、該操作量のデータの全てを前記第２検出手段の出力により表したデータに置き換えた場合には、前記推定手段が実行するアルゴリズムは、前記操作量のデータを用いることなく、前記排気系偏差出力のデータと、前記第２検出手段の出力により表したデータと、前記モデルのパラメータとを用いて前記合計無駄時間後の第１検出手段の出力の推定値を表すデータを生成することとなる。本願の前記第５発明は、このような態様をも含むものである。
【００４１】
前述したように第１排ガスセンサの出力の推定値を表すデータを生成するために前記モデルのパラメータを用いる本発明のプラントの制御装置（前記排気系がプラントである制御装置の第２、第４、第５発明）にあっては、前記排気系のモデルのパラメータを前記第１検出手段の出力と前記目標値との偏差（排気系偏差出力）のデータと、前記第２検出手段の出力と前記基準値との偏差（排気系偏差入力の検出値）のデータとを用いて逐次同定する同定手段を備えることが好ましい（第６発明）。
【００４２】
すなわち、前記排気系のモデルのパラメータはあらかじめ定めた一定値（固定値）としておくことも可能であるが、該モデルを排気系の実際の挙動に整合したものとする上では、該モデルのパラメータを逐次リアルタイムで同定することが好ましい。そして、該排気系のモデルのパラメータは前記排気系偏差出力のデータと、前記排気系偏差入力の検出値のデータとを用いることで同定することができる。
【００４３】
一方、この場合、本願発明者等の知見によれば、第２検出手段の出力が定常的なオフセットを生じていたり、前記操作量に基づいて操作する空燃比に定常的な外乱が含まれているような状況では、前記基準値を従来のように一定値としておくと、前記排気系のモデルのパラメータの同定値が真値に対して定常的な誤差が生じ易く、ひいては、第１検出手段の出力もその目標値に対して定常的な誤差を生じることがある。しかるに、本発明のように前記操作量に応じて前記基準値を適宜、可変的に設定するようにすることで、前記排気系のモデルのパラメータの同定値の精度を高めることが可能となり、ひいては、前記排気系の種々様々の挙動状態において、第１検出手段の出力の目標値への収束制御の精度を高めることができる。この結果、触媒装置の所要の浄化性能をより確実に確保することができる。
【００４４】
また、前記排気系がプラントである本発明の第１及び第２の態様の制御装置では、前記排気系のモデルは連続系（詳しくは連続時間系）で表現することも可能であるが、前記操作量の生成をコンピュータ等により所定の制御サイクルで行う上では、該排気系のモデルは離散系（詳しくは離散時間系）で表したモデルであることが好ましい（第７発明）。この場合、該排気系のモデルは、例えば各制御サイクルにおける前記排気系偏差出力を、その制御サイクルよりも過去の制御サイクルにおける排気系偏差入力、及び前記排気系偏差出力により表現したモデル（自己回帰モデル）とする。
【００４５】
尚、このように排気系のモデルを離散系の自己回帰モデルで表したとき、このモデルの前記パラメータは、該モデル中の排気系偏差入力や排気系偏差出力の項に係る係数である。
【００４６】
また、本発明の第２の態様に係わる前記空燃比操作系のモデルは、該空燃比操作系を前記第２無駄時間のみを有する系として表現すればよいので、該モデルを連続系及び離散系のいずれで表現しても実質的な差異はない。
【００４７】
また、前記排気系がプラントである本発明の第１及び第２の態様の制御装置では、前記操作量生成手段は、前記排気系のモデルに基づいて構築されたフィードバック制御処理により前記第１検出手段の出力を前記目標値に収束させるように前記操作量を生成することが好ましい（第８発明）。
【００４８】
すなわち、前記推定手段が生成する前記第１検出手段の出力の推定値を用いて前記操作量を生成することは、種々様々の制御手法により行うことが可能であるが、前記操作量の生成を、例えばスライディングモード制御等、制御対象のモデルを必要とするフィードバック制御処理により行う場合、そのフィードバック制御処理は前記排気系のモデルに基づいて構築することができる。
【００４９】
この場合、本願発明者等の各種検討によれば、前記排気系の入力としての前記排気系偏差入力に関する前記基準値の値を従来のように一定値としていると、前記操作量に基づき操作する空燃比に定常的な外乱が含まれている場合や、前記触媒装置の上流側の第２検出手段の出力が定常的なオフセットを生じているような場合にあっては、第１検出手段の出力の目標値への収束の速応性が低下することがある。しかるに、本発明のように前記操作量に応じて前記基準値を適宜、可変的に設定するようにすることで、第１検出手段の出力の目標値への収束の速応性を高めることができ、ひいては、触媒装置の所要の浄化性能の確保を円滑に行うことができる。
【００５０】
このように前記排気系のモデルに基づくフィードバック制御処理により前記操作量を生成する本発明のプラントの制御装置（排気系がプラントである制御装置）にあっては、より具体的には、前記操作量は、例えば前記混合気の空燃比と前記基準値との偏差（排気系偏差入力）の目標値であり、前記アクチュエータ制御手段は、前記偏差の目標値と前記基準値とにより定まる目標空燃比に前記混合気の空燃比を操作するよう前記内燃機関の動作を制御する（第９発明）。
【００５１】
このように前記操作量を前記排気系偏差入力の目標値とし、この排気系偏差入力の目標値と前記基準値とにより定まる目標空燃比に前記混合気の空燃比（実空燃比）を操作するよう内燃機関の動作を制御する（例えば内燃機関の燃料供給量を調整する）ことで、前記排気系のモデルに基づく前記フィードバック制御処理の構築が容易になると共に、前記操作量（排気系偏差入力の目標値）に基づく内燃機関の動作制御を的確に行うことが可能となる。
【００５２】
尚、このように前記アクチュエータ制御手段により前記混合気の空燃比を目標空燃比に操作するに際しては、前述のように前記混合気の空燃比を検出する前記第２検出手段を触媒装置の上流側に配置した場合にあっては、該第２検出手段の出力（空燃比の検出値）を目標空燃比に収束させるようにフィードバック制御により内燃機関の動作を制御することが好ましい。また、前記第２検出手段を必ずしも必要としない場合（前記第２、第５、第６等の発明）あっては、前記第２検出手段を触媒装置の上流側に配置した上で、上記と同様にフィードバック制御により内燃機関の動作を制御することが好ましい。このようにすることで前記混合気の空燃比を的確に目標空燃比に制御することができる。
【００５３】
但し、前記目標空燃比から例えばマップ等を用いて燃料供給量もしくはその補正量を決定する等することで、前記混合気の空燃比（実空燃比）をフィードフォワード的に目標空燃比に操作することも可能である。
【００５４】
また、上記のように前記排気系のモデルに基づくフィードバック制御処理により前記操作量を生成する本発明の内燃機関の空燃比制御装置にあっては、前記操作量生成手段が行う前記フィードバック制御処理は、前記推定手段が生成したデータにより表される前記第１検出手段の出力の推定値と前記目標値との偏差のデータと、前記モデルの挙動を規定する該モデルのパラメータとを用いて前記操作量を生成する処理である（第１０発明）。
【００５５】
つまり、第１検出手段の出力の推定値と前記目標値との偏差（これは前記排気系がプラントである本発明の第１の態様では前記排気系の無駄時間後の前記排気系偏差出力の推定値に相当し、第２の態様では前記合計無駄時間後の排気系偏差出力の推定値に相当する）のデータと、前記モデルの挙動を規定する該モデルのパラメータとを用いることで、排気系の無駄時間、あるいは該排気系及び前記空燃比操作系の両者の前記合計無駄時間の影響を補償しつつ第１検出手段の出力をその目標値に収束させるために要求される的確な前記操作量を生成することができる。特に、前記同定手段によって前記排気系のモデルのパラメータを同定する場合にあっては、前記排気系の種々様々の挙動状態において前記操作量を適正なものとすることができる。そして、前述したように前記基準値を可変的に設定することで、前記第１検出手段の出力の推定値の精度、前記排気系のモデルのパラメータの同定値の精度を高め、また、第１検出手段の出力の目標値への収束制御の速応性を高めることができる。このため、第１検出手段の出力の目標値への収束制御を高精度で、且つ高い速応性で良好に行うことができ、ひいては触媒装置の所要の浄化性能をより確実且つ円滑に確保することができる。
【００５６】
尚、前記操作量生成手段が前記操作量を生成するために実行する前記フィードバック制御処理（例えばスライディングモード制御の処理）にあっては、簡易的に前記モデルのパラメータを用いないようなアルゴリズムを構築することも可能である。
【００５７】
また、本発明のプラントの制御装置の第１の態様は、前記排気系がプラントである制御装置の第１の態様をより一般化して、前記の目的を達成するために、プラントへの入力を生成するアクチュエータと、前記プラントの出力を検出する第１検出手段と、前記第１検出手段の出力を所定の目標値に収束させるように前記プラントへの入力を操作するための操作量を逐次生成する操作量生成手段と、該操作量に基づき前記アクチュエータの動作を制御して前記プラントへの入力を操作するアクチュエータ制御手段と、前記プラントを、該プラントへの入力と該入力に対する所定の基準値との偏差から応答遅れ及び無駄時間を有して前記第１検出手段の出力と前記目標値との偏差を生成する系として該プラントの挙動をあらかじめモデル化しておき、そのプラントのモデルに基づいて構築された所定のアルゴリズムにより前記プラントが有する前記無駄時間後の前記第１検出手段の出力の推定値を表すデータを逐次生成する推定手段と備え、前記操作量生成手段が該推定手段により生成された前記第１検出手段の出力の推定値を表すデータを用いて前記操作量を生成するプラントの制御装置において、前記所定の基準値を前記操作量生成手段が生成する操作量に応じて可変的に設定する基準値可変設定手段を備えたことを特徴とする（第１８発明）。
【００５８】
すなわち、本発明のプラントの制御装置の第１の態様においては、上記の如く構成した前記プラントのモデルに基づいて構築されたアルゴリズムにより、該プラントが有する無駄時間後の前記第１検出手段の出力（プラントの出力の検出値）の推定値を表すデータを逐次生成する。そして、その第１検出手段の出力の推定値を表すデータを用いて第１検出手段の出力を前記目標値に収束させるように前記プラントへの入力を操作するための操作量を逐次生成し、その操作量に基づき前記アクチュエータの動作を制御することでプラントへの入力であるアクチュエータの出力を操作する。
【００５９】
この場合、上記モデルにより表したプラントの入力と所定の基準値との偏差（以下の本発明の説明では、この偏差をプラント偏差入力ということがある）に関する該基準値の値を一定値としていると、前記操作量に基づき操作するプラントへの入力（＝アクチュエータの出力）に定常的な外乱が含まれている場合等にあっては、前記推定手段が生成するデータにより表される前記第１検出手段の出力の前記無駄時間後の推定値が真値に対して定常的な誤差が生じ易くなる。ひいては、この推定値を用いて前記操作量を生成して前記プラントへの入力を操作したとき、第１検出手段の出力も目標値に対して定常的な誤差を生じ易くなる。そして、このような状況にあっては、前記基準値を前記操作量生成手段が生成する操作量に応じて適宜変更してやることで、第１検出手段の出力の推定値の精度を高めることができる。
【００６０】
そこで、本発明では上記の如く前記基準値を前記操作量生成手段が生成する操作量に応じて適宜、可変的に設定する。これにより、前記プラントの無駄時間後の第１検出手段の出力の推定値の精度を高めることが可能となる。ひいては、前記プラントの無駄時間（プラントに与えられる各時点の入力もしくは前記プラント偏差入力が第１検出手段の出力もしくはその目標値との偏差に反映されるようになるまでに要する時間）の影響を適正に補償しつつ、第１検出手段の出力の目標値への収束制御の精度を高めることが可能となる。
【００６１】
尚、前記操作量生成手段により生成する操作量としては、プラントの目標入力、前記プラント偏差入力の目標値、あるいは前記アクチュエータの動作量の補正量等が挙げられる。また、この操作量を、前記第１検出手段の出力の推定値を表すデータを用いて生成するに際しては、例えば該データにより表される第１検出手段の出力の推定値を前記目標値に収束させるように（結果的に第１検出手段の出力を目標値に収束させるように）フィードバック制御処理により生成すればよい。
【００６２】
かかる本発明のプラントの制御装置の第１の態様では、より具体的には、前記プラントへの入力を検出する第２検出手段を具備し、前記推定手段が実行する前記アルゴリズムは、前記第１検出手段の出力と前記目標値との偏差のデータと、前記第２検出手段の出力と前記基準値との偏差（これは前記プラント偏差入力の検出値に相当する）のデータと、前記プラントのモデルの挙動を規定する該モデルのパラメータとを用いて前記無駄時間後の前記第１検出手段の出力の推定値を表すデータを生成するアルゴリズムである（第１９発明）。
【００６３】
すなわち、前記第２検出手段により前記プラントへの入力を検出したとき、前記第１検出手段の出力と前記目標値との偏差（以下の本発明の説明では、この偏差をプラント偏差出力ということがある）のデータと、前記プラント偏差入力の検出値のデータと、前記プラントのモデルの挙動を規定する該モデルのパラメータとを用いることで、前記プラントの無駄時間後の前記第１検出手段の出力の推定値を表すデータ（具体的には第１検出手段の出力そのものの推定値、あるいは前記プラント偏差出力の推定値）を生成することができる。
【００６４】
尚、前記モデルのパラメータは、該モデルの挙動を規定する上で、ある値に設定すべきパラメータである。また、前記操作量を例えばプラントの目標入力あるいは前記プラント偏差入力の目標値としたとき、該操作量に対応して定まるプラントの目標入力と実際の入力との誤差が十分に小さいような場合には、前記第１検出手段の出力の推定値を表すデータを生成するために、前記プラント偏差入力に対応する前記第２検出手段の出力の代わりに前記操作量を用いることも可能である。
【００６５】
また、本発明のプラントの制御装置の第２の態様は、前記の目的を達成するために、プラントへの入力を生成するアクチュエータと、前記プラントの出力を検出する第１検出手段と、該第１検出手段の出力を所定の目標値に収束させるように前記プラントへの入力を操作するための操作量を逐次生成する操作量生成手段と、該操作量に基づき前記アクチュエータの動作を制御して前記プラントへの入力を操作するアクチュエータ制御手段と、前記プラントを、該プラントへの入力と該入力に対する所定の基準値との偏差から応答遅れ及び第１無駄時間を介して前記第１検出手段の出力と前記目標値との偏差を生成する系として該プラントの挙動をあらかじめモデル化しておくと共に前記アクチュエータ制御手段及び前記アクチュエータからなる系を前記操作量から第２無駄時間を存して前記プラントへの入力を生成する入力操作系として該入力操作系の挙動をあらかじめモデル化しておき、該プラントのモデルと入力操作系のモデルとに基づいて構築された所定のアルゴリズムにより該プラントが有する前記第１無駄時間と該入力操作系が有する前記第２無駄時間とを合わせた合計無駄時間後における前記第１検出手段の出力の推定値を表すデータを生成する推定手段とを備え、前記操作量生成手段が該推定手段により生成された該第１検出手段の出力の推定値を表すデータを用いて前記操作量を生成するプラントの制御装置において、前記所定の基準値を前記操作量生成手段が生成する操作量に応じて可変的に設定する基準値可変設定手段を備えたことを特徴とする（第２０発明）。
【００６６】
すなわち、本発明のプラントの制御装置の第２の態様においては、上記の如く構成した前記プラントのモデルと前記入力操作系（アクチュエータ及びアクチュエータ制御手段からなる系）のモデルとに基づいて構築されたアルゴリズムにより、該プラントが有する第１無駄時間と入力操作系が有する第２無駄時間とを合わせた合計無駄時間後の前記第１検出手段の出力の推定値を表すデータを逐次生成する。そして、その第１検出手段の出力の推定値を表すデータを用いて第１検出手段の出力を前記目標値に収束させるように前記プラントへの入力を操作するための操作量を逐次生成し、その操作量に基づき前記アクチュエータの動作を制御することでプラントへの入力であるアクチュエータの出力を操作する。
【００６７】
この場合、前記第１の態様の発明の場合と同様に、上記のようにモデル化したプラントの前記プラント偏差入力に関する該基準値の値を一定値としていると、前記操作量に基づき操作するプラントへの入力（＝アクチュエータの出力）に定常的な外乱が含まれている場合等にあっては、前記推定手段が生成するデータにより表される前記第１検出手段の出力の前記合計無駄時間後の推定値が真値に対して定常的な誤差が生じ易くなる。そして、このような状況にあっては、前記基準値を前記操作量生成手段が生成する操作量に応じて適宜変更してやることで、第１検出手段の出力の推定値の精度を高めることができる。
【００６８】
そこで、本発明の第２の態様にあっても上記の如く前記基準値を前記操作量生成手段が生成する操作量に応じて適宜、可変的に設定する。これにより、前記プラントの第１無駄時間と入力操作系の第２無駄時間とを合わせた合計無駄時間後の第１検出手段の出力の推定値の精度を高めることが可能となる。ひいては、前記プラントの第１無駄時間（プラントに与えられる各時点の入力もしくは前記プラント偏差入力が第１検出手段の出力もしくはその目標値との偏差に反映されるようになるまでに要する時間）と、入力操作系の第２無駄時間（入力操作系に与えられる各時点の前記操作量がプラントに与えられる前記アクチュエータの実際の出力に反映させるようになるまでに要する時間）との両者の無駄時間の影響を適正に補償しつつ、第１検出手段の出力の目標値への収束制御の精度を高めることが可能となる。
【００６９】
尚、本発明のプラントの制御装置の第２の態様においても、前記操作量生成手段により生成する操作量としては、前記第１の態様の発明と同様、プラントの目標入力、前記プラント偏差入力の目標値、あるいはアクチュエータの動作量の補正量等が挙げられる。また、この操作量を、前記第１検出手段の出力の推定値を表すデータを用いて生成するに際しては、例えば該データにより表される第１検出手段の出力の推定値を前記目標値に収束させるようにフィードバック制御処理により生成すればよい。また、前記入力操作系のアクチュエータには、一般に無駄時間だけでなく応答遅れも存するが、この応答遅れは前記アクチュエータ制御手段によって補償することが可能である。このため、前記推定手段及び操作量生成手段にとっては、前記入力操作系のモデルに応答遅れを考慮せずとも支障はない。
【００７０】
かかる本発明のプラントの制御装置の第２の態様にあっては、より具体的には、前記推定手段が実行する前記アルゴリズムは、前記第１検出手段の出力と前記目標値との偏差のデータと、前記操作量のデータと、前記プラントのモデルの挙動を規定する該モデルのパラメータとを用いて前記合計無駄時間後の前記第１検出手段の出力の推定値を表すデータを生成するアルゴリズムである（第２１発明）。
【００７１】
すなわち、前記プラントのモデルと入力操作系のモデルとを組み合わせれば、該プラント及び入力操作系を合わせた系は、前記操作量から、前記合計無駄時間と前記プラントの応答遅れを有して前記プラント偏差出力を生成する系として、前記プラントのモデルのパラメータを含むモデルにより表現することができる。従って、前記合計無駄時間後の前記第１検出手段の出力の推定値を表すデータ（具体的には第１検出手段の出力そのものの推定値、あるいは前記プラント偏差出力の推定値）は、前記プラント偏差出力のデータと、前記操作量のデータと、前記プラントのモデルのパラメータ（プラントのモデルの挙動を規定する上で、ある値に設定すべきパラメータ）とを用いて生成することができる。
【００７２】
この場合、前記合計無駄時間後の第１検出手段の出力の推定値を生成する上で必要となる前記操作量のデータには、基本的には前記第２無駄時間以前の一つもしくは複数の該操作量の過去値のデータが含まれる。また、プラントへの入力（＝アクチュエータの出力）を検出するようにすれば、前記第２無駄時間以前の各時点の前記操作量は、前記入力操作系のモデルに基づいて該プラントへの入力の現在以前の検出値によって表すことができる。
【００７３】
そこで、本発明のプラントの制御装置の第２の態様の前記第２１発明においては、前記プラントへの入力を検出する第２検出手段を具備すると共に、前記推定手段が前記第１検出手段の出力の推定値を表すデータを生成するために用いる前記操作量のデータには、前記入力操作系の第２無駄時間以前の少なくとも一つの該操作量の過去値が含まれており、該推定手段が実行する前記アルゴリズムは、当該第２無駄時間以前の前記操作量の過去値の全部又は一部の代わりに、該過去値を前記入力操作系のモデルに基づき前記第２検出手段の出力により表してなるデータを用いて前記第１検出手段の出力の推定値を表すデータを生成するアルゴリズムとする（第２２発明）。
【００７４】
このように前記合計無駄時間後の第１検出手段の出力の推定値を表すデータを生成する上で要する前記操作量のデータのうち、前記第２無駄時間以前の過去値の全部又は一部の代わりに（好ましくは全部の代わりに）、第２検出手段の出力（これは該操作量に対応してアクチュエータが生成するプラントへの実際の入力の検出値に相当する）により表してなるデータを用いて前記第１検出手段の出力の推定値を表すデータを生成することによって、アクチュエータの実動状態に即して該推定値を生成することができる。この結果、該推定値のデータの信頼性を高めることができ、ひいては、第１検出手段の出力の目標値への収束制御の精度をより高めることができる。
【００７５】
尚、前記第２無駄時間の長さ等によっては、前記第１検出手段の出力の推定値を表すデータを生成するために必要な前記操作量のデータの全てが前記第２無駄時間以前のものとなる場合もある。そして、この場合に、該操作量のデータの全てを前記第２検出手段の出力により表したデータに置き換えた場合には、前記推定手段が実行するアルゴリズムは、前記操作量のデータを用いることなく、前記プラント偏差出力のデータと、前記第２検出手段の出力により表したデータと、前記モデルのパラメータとを用いて前記合計無駄時間後の第１検出手段の出力の推定値を表すデータを生成することとなる。本願の第２２発明は、このような態様をも含むものである。
【００７６】
前述したように第１検出手段の出力の推定値を表すデータを生成するために前記モデルのパラメータを用いる本発明のプラントの制御装置（第１９、第２１、第２２発明）にあっては、前記プラントのモデルのパラメータを前記第１検出手段の出力と前記目標値との偏差（プラント偏差出力）のデータと、前記第２検出手段の出力と前記基準値との偏差（プラント偏差入力の検出値）のデータとを用いて逐次同定する同定手段を備えることが好ましい（第２３発明）。
【００７７】
すなわち、前記プラントのモデルのパラメータはあらかじめ定めた一定値（固定値）としておくことも可能であるが、該モデルをプラントの実際の挙動に整合したものとする上では、該モデルのパラメータを逐次リアルタイムで同定することが好ましい。そして、該プラントのモデルのパラメータは前記プラント偏差出力のデータと、前記プラント偏差入力の検出値のデータとを用いることで同定することができる。
【００７８】
一方、この場合、本願発明者等の知見によれば、第２検出手段の出力が定常的なオフセットを生じていたり、前記操作量に基づいて操作するプラントへの入力（＝アクチュエータの出力）に定常的な外乱が含まれているような状況では、前記基準値を一定値としておくと、前記プラントのモデルのパラメータの同定値が真値に対して定常的な誤差が生じ易く、ひいては、第１検出手段の出力もその目標値に対して定常的な誤差を生じることがある。しかるに、本発明のように前記操作量に応じて前記基準値を適宜、可変的に設定するようにすることで、前記プラントのモデルのパラメータの同定値の精度を高めることが可能となり、ひいては、前記プラントの種々様々の挙動状態において、第１検出手段の出力の目標値への収束制御の精度を高めることができる。
【００７９】
また、本発明の第１及び第２の態様のプラントの制御装置では、前記プラントのモデルは連続系（詳しくは連続時間系）で表現することも可能であるが、前記操作量の生成をコンピュータ等により所定の制御サイクルで行う上では、該プラントのモデルは離散系（詳しくは離散時間系）で表したモデルであることが好ましい（第２４発明）。この場合、該プラントのモデルは、例えば各制御サイクルにおける前記プラント偏差出力を、その制御サイクルよりも過去の制御サイクルにおけるプラント偏差入力、及び前記プラント偏差出力により表現したモデル（自己回帰モデル）とする。
【００８０】
尚、このように排気系のモデルを離散系の自己回帰モデルで表したとき、このモデルの前記パラメータは、該モデル中のプラント偏差入力やプラント偏差出力の項に係る係数である。
【００８１】
また、本発明の第２の態様に係わる前記入力操作系のモデルは、該入力操作系を前記第２無駄時間のみを有する系として表現すればよいので、該モデルを連続系及び離散系のいずれで表現しても実質的な差異はない。
【００８２】
また、本発明の第１及び第２の態様のプラントの制御装置では、前記操作量生成手段は、前記プラントのモデルに基づいて構築されたフィードバック制御処理により前記第１検出手段の出力を前記目標値に収束させるように前記操作量を生成する（第２５発明）。
【００８３】
すなわち、前記推定手段が生成する前記第１検出手段の出力の推定値を用いて前記操作量を生成することは、種々様々の制御手法により行うことが可能であるが、前記操作量の生成を、例えばスライディングモード制御等、制御対象のモデルを必要とするフィードバック制御処理により行う場合、そのフィードバック制御処理は前記プラントのモデルに基づいて構築することができる。
【００８４】
この場合、本願発明者等の各種検討によれば、前記プラントの入力としての前記プラント偏差入力に関する前記基準値の値を一定値としていると、前記操作量に基づき操作するプラントへの入力（＝アクチュエータの出力）に定常的な外乱が含まれている場合や、前記第２検出手段の出力が定常的なオフセットを生じているような場合にあっては、第１排検出手段の出力の目標値への収束の速応性が低下することがある。しかるに、本発明のように前記操作量に応じて前記基準値を適宜、可変的に設定するようにすることで、第１検出手段の出力の目標値への収束の速応性を高めることができる。
【００８５】
このように前記プラントのモデルに基づくフィードバック制御処理により前記操作量を生成する本発明のプラントの制御装置にあっては、より具体的には、前記操作量は、例えば前記プラントへの入力と前記基準値との偏差の目標値であり、前記アクチュエータ制御手段は、前記偏差の目標値と前記基準値とにより定まる目標入力に前記プラントへの入力を操作するよう前記アクチュエータの動作を制御する（第２６発明）。
【００８６】
このように前記操作量を前記プラント偏差入力の目標値とし、このプラント偏差入力の目標値と前記基準値とにより定まる目標入力にプラントへの実入力を操作するようアクチュエータの動作を制御することで、前記プラントのモデルに基づく前記フィードバック制御処理の構築が容易になると共に、前記操作量（プラント偏差入力の目標値）に基づくアクチュエータの動作制御を的確に行うことが可能となる。
【００８７】
尚、このように前記アクチュエータ制御手段によりプラントへの入力を目標入力に操作するに際しては、前述のようにプラントへの入力を検出する前記第２検出手段を具備した場合（前記第１９、第２２、第２３等の発明）にあっては、該第２検出手段の出力（プラントへの入力の検出値）を目標入力に収束させるようにフィードバック制御によりアクチュエータの動作を制御することが好ましい。また、前記第２検出手段を必ずしも必要としない場合（第１８、第２０、第２１等の発明）にあっては、前記第２検出手段を具備した上で、上記と同様にフィードバック制御によりアクチュエータの動作を制御することが好ましい。このようにすることでプラントへの入力を的確に目標空燃比に制御することができる。
【００８８】
但し、前記目標入力から例えばマップ等を用いてアクチュエータの動作量もしくはその補正量を決定する等することで、プラントへの入力であるアクチュエータの出力をフィードフォワード的に目標入力に操作することも可能である。
【００８９】
また、上記のように前記プラントのモデルに基づくフィードバック制御処理により前記操作量を生成する本発明のプラントの制御装置にあっては、前記操作量生成手段が行う前記フィードバック制御処理は、前記推定手段が生成したデータにより表される前記第１検出手段の出力の推定値と前記目標値との偏差のデータと、前記モデルの挙動を規定する該モデルのパラメータとを用いて前記操作量を生成する処理である（第２７発明）。
【００９０】
つまり、第１検出手段の出力の推定値と前記目標値との偏差（これは本発明のプラントの制御装置の第１の態様では前記プラントの無駄時間後の前記プラント偏差出力の推定値に相当し、第２の態様では前記合計無駄時間後のプラント偏差出力の推定値に相当する）のデータと、前記モデルの挙動を規定する該モデルのパラメータとを用いることで、プラントの無駄時間、あるいは該プラント及び前記入力操作系の両者の前記合計無駄時間の影響を補償しつつ第１検出手段の出力をその目標値に収束させるために要求される的確な前記操作量を生成することができる。特に、前記同定手段によって前記プラントのモデルのパラメータを同定する場合にあっては、前記プラントの種々様々の挙動状態において前記操作量を適正なものとすることができる。そして、前述したように前記基準値を可変的に設定することで、前記第１検出手段の出力の推定値の精度、前記プラントのモデルのパラメータの同定値の精度を高め、また、第１検出手段の出力の目標値への収束制御の速応性を高めることができる。このため、第１検出手段の出力の目標値への収束制御を高精度で、且つ高い速応性で良好に行うことができる。
【００９１】
尚、前記操作量生成手段が前記操作量を生成するために実行する前記フィードバック制御処理（例えばスライディングモード制御の処理）にあっては、簡易的に前記モデルのパラメータを用いないようなアルゴリズムを構築することも可能である。
【００９２】
前述の如く前記排気系のモデルあるいは前記プラントのモデルに基づくフィードバック制御処理により前記操作量を生成する本発明のプラントの制御装置に（第８〜第１０発明あるいは第２５〜第２７発明）あっては、前記フィードバック制御処理は、スライディングモード制御の制御処理であることが好ましい（第１１、第２８発明）。そして、特にスライディングモード制御は適応スライディングモード制御であることが好ましい（第１２、第２９発明）。
【００９３】
すなわち、スライディングモード制御は、一般に周知のＰＩＤ制御等に比して外乱等に対する制御の安定性が高いという特性を有する可変構造型のフィードバック制御手法である。そして、適応スライディングモード制御は、外乱等の影響を極力排除するための適応則（適応アルゴリズム）という制御則を通常のスライディングモード制御に加味したものである。従って、このようなスライディングモード制御、特に好ましくは、適応スライディングモード制御により前記操作量を生成することで、第１検出手段の出力の目標値への収束制御の安定性を高めることができる。
【００９４】
尚、前記フィードバック制御処理をスライディングモード制御により行う場合、該スライディングモード制御の処理は、前記排気系偏差入力（前記排気系がプラントである本発明の制御装置）あるいは前記プラント偏差入力（本発明のプラントの制御装置）の目標値を前記操作量として生成することとなる。
【００９５】
上記のように前記フィードバック制御処理を適応スライディングモード制御の処理により行う場合、前記操作量生成手段が前記適応スライディングモード制御の制御処理により生成する前記操作量は、該適応スライディングモード制御の適応則（適応アルゴリズム）に基づく適応則成分を含んでいる。そして、この場合、前記基準値可変設定手段は、該操作量の適応則成分の値に応じて前記基準値を可変的に設定することが特に好適である（第１３、第３０発明）。
【００９６】
すなわち、適応スライディングモード制御の制御処理により生成する前記操作量は、基本的には該適応スライディングモード制御の処理で用いる切換関数といわれる関数の値を「０」に保持する（拘束する）ための制御則に基づく成分（所謂、等価制御入力）と、切換関数の値を「０」に収束させるための到達則に基づく成分と、切換関数の値を「０」に収束させるに際しての外乱等の影響を極力排除するための適応則に基づく成分との総和として表される。
【００９７】
尚、切換関数は、例えば制御量（これは第１検出手段の出力である）と目標値との偏差の時系列データを成分とする線形関数等により表されるものである。また、前記適応則成分は、例えば切換関数の値の積算値（積分値）に比例させた値とする。
【００９８】
そして、本願発明者等の知見によれば、前記排気系がプラントである本発明のの制御装置にあっては、上記適応則に基づく成分（適応則成分）の値に応じて前記基準値を可変的に設定することで、操作する空燃比に定常的に含まれる外乱等の影響（より一般的には操作量を生成する上で要する各種データの真値に対する誤差の影響）を好適に補償し、第１検出手段の出力の目標値への収束制御の精度や速応性の向上を的確に図ることができる。
【００９９】
同様に、本発明のプラントの制御装置にあっては、適応則に基づく成分（適応則成分）の値に応じて前記基準値を可変的に設定することで、前記プラントへの入力である前記アクチュエータの出力に定常的に含まれる外乱等の影響（より一般的には操作量を生成する上で要する各種データの真値に対する誤差の影響）を好適に補償し、第１検出手段の出力の目標値への収束制御の精度や速応性の向上を的確に図ることができる。
【０１００】
この場合、より具体的には、前記基準値可変設定手段は、あらかじめ定めた所定値又は該所定値を含む該所定値の近傍範囲に対する前記操作量の適応則成分の値の大小関係に応じて前記基準値を増減させることにより該基準値を可変的に設定する（第１４、第３１発明）。
【０１０１】
これにより前記適応則成分の値に応じた前記基準値の可変的な設定を適正に行うことができる。尚、前記基準値は、適応スライディングモード制御がその制御処理の基礎とする前記排気系のモデルの入力としての前記排気系偏差入力（前記排気系がプラントである本発明の制御装置）、あるいは前記プラントのモデルの入力としての前記プラント偏差入力（本発明のプラントの制御装置）の基準となるものである。このため、該基準値をあまり頻繁に変化させると、適応スライディングモード制御により生成する前記操作量に悪影響を及ぼし、第１検出手段の出力の安定性を損なう虞がある。従って、前記適応則成分の値に応じた基準値の可変的な設定に際しては、前記所定値を含む該所定値の近傍範囲に対する適応則成分の値の大小関係に応じて該基準値を増減させる（適応則成分の値が上記近傍範囲内に存するときには基準値を変化させない）ことが好ましい。
【０１０２】
前述の如く、前記操作量を生成するフィードバック制御処理をスライディングモード制御（適応スライディングモード制御を含む）により行うとき、前記基準値可変設定手段は、前記第１検出手段の出力が安定であるか否かを逐次判断する手段を具備し、該第１検出手段の出力が不安定であると判断したとき、前記基準値を前記操作量によらずに所定値に保持するが好ましい（第１５、第３２発明）。
【０１０３】
すなわち、前記基準値は前記スライディングモード制御の処理により生成される前記操作量、ひいては前記第１検出手段の出力に影響を及ぼすため、該第１検出手段の出力が不安定であると判断される状況では、該基準値の可変的な設定を行わず、該基準値を所定値（例えば現状の値や、あらかじめ定めた固定値）に保持する。これにより、第１検出手段の出力がさらに不安定となるような不適性な操作量が生成されるような事態を回避することができる。
【０１０４】
このように前記第１検出手段の出力の安定性を判断するとき、前記基準値可変設定手段は、前記スライディングモード制御の制御処理に用いる切換関数の値に基づき、前記第１検出手段の出力が安定であるか否かの判断を行う（第１６、第３３発明）。
【０１０５】
すなわち、スライディングモード制御では、その処理に用いる切換関数の値を安定に「０」に収束させることが、制御量（これは第１検出手段の出力である）を安定に目標値に収束させる上で重要な処理となる。従って、この切換関数の値に基づいて前記第１検出手段の出力の安定性を判断することができる。
【０１０６】
例えば切換関数の値とその変化速度との積（これは切換関数に関するリアプノフ関数の時間微分値に相当する）を求めた場合、この積が正側の値であるとき切換関数の値が「０」から離間しつつある状態であり、また、負側の値であるとき切換関数の値が「０」に接近しつつある状態である。従って、基本的には上記積の値が正側の値であるか、負側の値であるかによって、それぞれ前記第１検出手段の出力が不安定、安定と判断することが可能である。尚、この他にも、切換関数の値の大きさや、その変速速度の大きさを適当な所定値と比較する等して、前記第１検出手段の出力の安定性を判断することも可能である。
【０１０７】
またさらに、プラントが前記排気系である本発明の制御装置では、前記基準値可変設定手段は、前記第１排ガスセンサの出力が前記目標値に略収束しているか否を判断する手段を具備し、該第１排ガスセンサの出力が前記目標値へ未収束状態であると判断したとき、前記基準値を前記操作量によらずに所定値に保持する（第１７発明）。
【０１０８】
同様に、本発明のプラントの制御装置では、前記基準値可変設定手段は、前記第１検出手段の出力が前記目標値に略収束しているか否を判断する手段を具備し、該第１検出手段の出力が前記目標値へ未収束状態であると判断したとき、前記基準値を前記操作量によらずに所定値に保持する（第３４発明）。すなわち、前記第１検出手段の出力が目標値に未収束状態であると判断される状況では、前記操作量の生成状態が不安定なものとなり易いので、前記第１５あるいは第３２発明の場合と同様に、前記基準値の可変的な設定を行わず、該基準値を所定値に保持する。
【０１０９】
これにより、前記排気系がプラントである本発明の制御装置にあっては、前記操作量の生成状態の安定性をできるだけ確保し、第１検出手段の出力の目標値への収束制御を安定に行うことができ、ひいては触媒装置の所要の浄化性能を安定して確保することができる。同様に、本発明のプラントの制御装置にあっては、前記操作量の生成状態の安定性をできるだけ確保し、第１検出手段の出力の目標値への収束制御を安定に行うことができる。
【０１１０】
尚、本発明のプラントの制御装置に係わる第１検出手段の出力が、目標値に略収束しているか否かの判断は、例えば、その出力と目標値との偏差（排気系偏差出力あるいはプラント偏差出力）の大きさを適当な所定値と比較することで行うことができる。より具体的には、該偏差の大きさが所定値以下であるときには略収束していると判断し、該偏差の大きさが所定値よりも大きいときには未収束状態であると判断すればよい。
【０１１１】
また、前記排気系がプラントである本発明のプラントの制御装置に関しては、前記触媒装置の最適な浄化性能を確保する上では、前記第１検出手段としてＯ２センサ（酸素濃度センサ）を用い、その出力の目標値を所定の一定値とすることが好適である。
【０１１２】
本発明の一実施形態を図１乃至図２６を参照して説明する。尚、本実施形態は、プラントが排気系である本発明の制御装置の一実施形態である。
【０１１３】
図１は本実施形態の装置の全体的システム構成を示すブロック図であり、図中、１は例えば自動車あるいはハイブリッド車に車両の推進源（図示しない駆動輪の駆動源）として搭載された４気筒のエンジン（内燃機関）である。このエンジン１が各気筒毎に燃料及び空気の混合気の燃焼により生成する排ガスは、エンジン１の近傍で共通の排気管２（排気通路）に集合され、該排気管２を介して大気中に放出される。そして、排気管２には、排ガスを浄化するために、三元触媒を用いて構成された二つの触媒装置３，４が該排気管２の上流側から順に介装されている。尚、下流側の触媒装置４はこれを省略してもよい。また、本発明のプラントの制御装置に対応させると、エンジン１はアクチュエータに相当するものである。
【０１１４】
本実施形態のシステムでは、触媒装置３の最適な浄化性能を確保するようにエンジン１の空燃比（より正確にはエンジン１で燃焼させる燃料及び空気の混合気の空燃比。以下、同様）を制御する。そして、この制御を行うために、触媒装置３の上流側（より詳しくはエンジン１の各気筒毎の排ガスの集合箇所）で排気管２に設けられた第２排ガスセンサ（第２検出手段）としての広域空燃比センサ５と、触媒装置３の下流側（触媒装置４の上流側）で排気管２に設けられた第１排ガスセンサ（第１検出手段）としてのＯ２  センサ（酸素濃度センサ）６と、これらのセンサ５，６の出力（検出値）等に基づき後述の制御処理を行う制御ユニット７とを具備している。尚、制御ユニット７には、前記広域空燃比センサ５やＯ２  センサ６の出力の他に、エンジン１の運転状態を検出するための図示しない回転数センサや吸気圧センサ、冷却水温センサ等、各種のセンサの出力が与えられる。
【０１１５】
広域空燃比センサ５は、Ｏ２  センサを用いて構成されたものであり、触媒装置３に進入する排ガスをエンジン１での燃焼により生成した混合気の空燃比（これは触媒装置３に進入する排ガス中の酸素濃度により把握される）に応じたレベルの出力を生成する。この場合、広域空燃比センサ５（以下、ＬＡＦセンサ５と称する）は、該センサ５を構成するＯ２  センサの出力から図示しないリニアライザ等の検出回路によって、エンジン１で燃焼した混合気の空燃比の広範囲にわたって、それに比例したレベルの出力ＫＡＣＴ、すなわち、該空燃比の検出値を表す出力ＫＡＣＴを生成するものである。このようなＬＡＦセンサ５は本願出願人が特開平４−３６９４７１号公報にて詳細に開示しているので、ここではさらなる説明を省略する。
【０１１６】
また、触媒装置３の下流側のＯ２  センサ６は、触媒装置３を通過した排ガス中の酸素濃度に応じたレベルの出力ＶＯ２／ＯＵＴ  、すなわち、該排ガス中の酸素濃度の検出値を表す出力ＶＯ２／ＯＵＴ  を通常的なＯ２  センサと同様に生成する。このＯ２  センサ６の出力ＶＯ２／ＯＵＴ  は、図２に示すように、触媒装置３を通過した排ガスの酸素濃度により把握される空燃比が理論空燃比近傍の範囲Δに存するような状態で、該排ガスの酸素濃度にほぼ比例した高感度な変化を生じるものとなる。
【０１１７】
制御ユニット７はマイクロコンピュータを用いて構成されたものであり、エンジン１の目標空燃比ＫＣＭＤ（これはＬＡＦセンサ５の出力ＫＡＣＴの目標値でもある）を逐次生成するための処理を所定の制御サイクルで実行する制御ユニット７ａ（以下、排気側制御ユニット７ａという）と、上記目標空燃比ＫＣＭＤにエンジン１の空燃比を操作するための処理を所定の制御サイクルで実行する制御ユニット７ｂ（以下、機関側制御ユニット７ｂという）とに大別される。この場合、機関側制御ユニット７ｂは、本発明のプラントの制御装置に対応させると、アクチュエータ制御手段に相当するものである。
【０１１８】
この場合、排気側制御ユニット７ａで生成する目標空燃比ＫＣＭＤは、基本的には前記Ｏ２  センサ６の出力（酸素濃度の検出値）を所定の目標値（一定値）に整定させるために要求されるエンジン１の空燃比である。そして、排気側制御ユニット７ａがこの目標空燃比ＫＣＭＤを生成するために実行する処理の制御サイクルは、本実施形態では触媒装置３を含む後述の排気系Ｅが有する比較的長い無駄時間や演算負荷等を考慮し、一定周期（例えば３０〜１００ｍｓ）としている。
【０１１９】
一方、機関側制御ユニット７ｂによるエンジン１の空燃比の操作処理（より具体的にはエンジン１の燃料供給量を調整する処理）は、エンジン１の回転数に同期させる必要があることから、該機関側制御ユニット７ｂが実行する処理の制御サイクルは、エンジン１のクランク角周期（所謂ＴＤＣ）に同期した周期とされている。そして、機関側制御ユニット７ｂは、ＬＡＦセンサ５やＯ２  センサ６等の各種センサの出力データの読み込みもクランク角周期（ＴＤＣ）に同期した制御サイクルで行うようにしている。
【０１２０】
尚、排気側制御ユニット７ａの制御サイクルである前記一定周期は、前記クランク角周期（ＴＤＣ）よりも長いものとされている。
【０１２１】
前記機関側制御ユニット７ｂは、その機能的構成として、エンジン１への基本燃料噴射量Ｔｉｍを求める基本燃料噴射量算出部８と、基本燃料噴射量Ｔｉｍを補正するための第１補正係数ＫＴＯＴＡＬ及び第２補正係数ＫＣＭＤＭ  をそれぞれ求める第１補正係数算出部９及び第２補正係数算出部１０とを具備する。
【０１２２】
前記基本燃料噴射量算出部８は、エンジン１の回転数ＮＥと吸気圧ＰＢとから、それらに応じたエンジン１の基準の燃料噴射量（燃料供給量）をあらかじめ設定されたマップを用いて求め、その基準の燃料噴射量をエンジン１の図示しないスロットル弁の有効開口面積に応じて補正することで基本燃料噴射量Ｔｉｍを算出するものである。
【０１２３】
また、第１補正係数算出部９が求める第１補正係数ＫＴＯＴＡＬは、エンジン１の排気還流率（エンジン１の吸入空気中に含まれる排ガスの割合）や、エンジン１の図示しないキャニスタのパージ時にエンジン１に供給される燃料のパージ量、エンジン１の冷却水温、吸気温等を考慮して前記基本燃料噴射量Ｔｉｍを補正するためのものである。
【０１２４】
また、第２補正係数算出部１０が求める第２補正係数ＫＣＭＤＭ  は、排気側制御ユニット７ａが後述の如く生成する目標空燃比ＫＣＭＤに対応してエンジン１へ流入する燃料の冷却効果による吸入空気の充填効率を考慮して基本燃料噴射量Ｔｉｍを補正するためのものである。
【０１２５】
これらの第１補正係数ＫＴＯＴＡＬ及び第２補正係数ＫＣＭＤＭ  による基本燃料噴射量Ｔｉｍの補正は、第１補正係数ＫＴＯＴＡＬ及び第２補正係数ＫＣＭＤＭ  を基本燃料噴射量Ｔｉｍに乗算することで行われ、この補正によりエンジン１の要求燃料噴射量Ｔｃｙｌ  が得られる。
【０１２６】
尚、前記基本燃料噴射量Ｔｉｍや、第１補正係数ＫＴＯＴＡＬ、第２補正係数ＫＣＭＤＭ  のより具体的な算出手法は、特開平５−７９３７４号公報等に本願出願人が開示しているので、ここでは詳細な説明を省略する。
【０１２７】
機関側制御ユニット７ｂは、上記の機能的構成の他、さらに、排気側制御ユニット７ａが逐次生成する目標空燃比ＫＣＭＤにＬＡＦセンサ５の出力ＫＡＣＴ（空燃比の検出値）を収束させるようにフィードバック制御によりエンジン１の燃料噴射量を調整するフィードバック制御部１４を備えている。
【０１２８】
このフィードバック制御部１４は、本実施形態では、エンジン１の各気筒の全体的な空燃比をフィードバック制御する大局的フィードバック制御部１５と、エンジン１の各気筒毎の空燃比をフィードバック制御する局所的フィードバック制御部１６とに分別される。
【０１２９】
前記大局的フィードバック制御部１５は、ＬＡＦセンサ５の出力ＫＡＣＴを前記目標空燃比ＫＣＭＤに収束させるように前記要求燃料噴射量Ｔｃｙｌ  を補正する（要求燃料噴射量Ｔｃｙｌ  に乗算する）フィードバック補正係数ＫＦＢ  を逐次求めるものである。
【０１３０】
この大局的フィードバック制御部１５は、ＬＡＦセンサ５の出力ＫＡＣＴと目標空燃比ＫＣＭＤとの偏差に応じて周知のＰＩＤ制御を用いて前記フィードバック補正係数ＫＦＢ  としてのフィードバック操作量ＫＬＡＦを生成するＰＩＤ制御器１７と、ＬＡＦセンサ５の出力ＫＡＣＴと目標空燃比ＫＣＭＤとからエンジン１の運転状態の変化や特性変化等を考慮して前記フィードバック補正係数ＫＦＢ  を規定するフィードバック操作量ＫＳＴＲを適応的に求める適応制御器１８（図ではＳＴＲと称している）とをそれぞれ独立的に具備している。
【０１３１】
ここで、本実施形態では、前記ＰＩＤ制御器１７が生成するフィードバック操作量ＫＬＡＦは、ＬＡＦセンサ５の出力ＫＡＣＴ（空燃比の検出値）が目標空燃比ＫＣＭＤに一致している状態で「１」となり、該操作量ＫＬＡＦをそのまま前記フィードバック補正係数ＫＦＢ  として使用できるようになっている。一方、適応制御器１８が生成するフィードバック操作量ＫＳＴＲはＬＡＦセンサ５の出力ＫＡＣＴが目標空燃比ＫＣＭＤに一致する状態で「目標空燃比ＫＣＭＤ」となるものである。このため、該フィードバック操作量ＫＳＴＲを除算処理部１９で目標空燃比ＫＣＭＤにより除算してなるフィードバック操作量ｋｓｔｒ（＝ＫＳＴＲ／ＫＣＭＤ）が前記フィードバック補正係数ＫＦＢ  として使用できるようになっている。
【０１３２】
そして、大局的フィードバック制御部１５は、ＰＩＤ制御器１７により生成されるフィードバック操作量ＫＬＡＦと、適応制御器１８が生成するフィードバック操作量ＫＳＴＲを目標空燃比ＫＣＭＤにより除算してなるフィードバック操作量ｋｓｔｒとを切換部２０で適宜、択一的に選択する。さらに、その選択したいずれか一方のフィードバック操作量ＫＬＡＦ又はｋｓｔｒを前記フィードバック補正係数ＫＦＢ  として使用し、該補正係数ＫＦＢ  を前記要求燃料噴射量Ｔｃｙｌ  に乗算することにより該要求燃料噴射量Ｔｃｙｌ  を補正する。尚、かかる大局的フィードバック制御部１５（特に適応制御器１８）については後にさらに詳細に説明する。
【０１３３】
前記局所的フィードバック制御部１６は、ＬＡＦセンサ５の出力ＫＡＣＴから各気筒毎の実空燃比＃ｎＡ／Ｆ  （ｎ＝１，２，３，４）  を推定するオブザーバ２１と、このオブザーバ２１により推定された各気筒毎の実空燃比＃ｎＡ／Ｆ  から各気筒毎の空燃比のばらつきを解消するよう、ＰＩＤ制御を用いて各気筒毎の燃料噴射量のフィードバック補正係数＃ｎＫＬＡＦをそれぞれ求める複数（気筒数個）のＰＩＤ制御器２２とを具備する。
【０１３４】
ここで、オブザーバ２１は、それを簡単に説明すると、各気筒毎の実空燃比＃ｎＡ／Ｆ  の推定を次のように行うものである。すなわち、エンジン１からＬＡＦセンサ５の箇所（各気筒毎の排ガスの集合部）にかけての系を、エンジン１の各気筒毎の実空燃比＃ｎＡ／Ｆ  からＬＡＦセンサ５で検出される空燃比を生成する系と考え、これを、ＬＡＦセンサ５の検出応答遅れ（例えば一次遅れ）や、ＬＡＦセンサ５で検出される空燃比に対するエンジン１の各気筒毎の空燃比の時間的寄与度を考慮してモデル化する。そして、そのモデルの基で、ＬＡＦセンサ５の出力ＫＡＣＴから、逆算的に各気筒毎の実空燃比＃ｎＡ／Ｆ  を推定する。
【０１３５】
尚、このようなオブザーバ２１は、本願出願人が例えば特開平７−８３０９４号公報に詳細に開示しているので、ここでは、さらなる説明を省略する。
【０１３６】
また、局所的フィードバック制御部１６の各ＰＩＤ制御器２２は、ＬＡＦセンサ５の出力ＫＡＣＴを、機関側制御ユニット７ｂにおける前回の制御サイクルで各ＰＩＤ制御器２２により求められたフィードバック補正係数＃ｎＫＬＡＦの全気筒についての平均値により除算してなる値を各気筒の空燃比の目標値とする。そして、その目標値とオブザーバ２１により求められた各気筒毎の実空燃比＃ｎＡ／Ｆ  の推定値との偏差が解消するように、今回の制御サイクルにおける、各気筒毎のフィードバック補正係数＃ｎＫＬＡＦを求める。
【０１３７】
さらに、局所的フィードバック制御部１６は、前記要求燃料噴射量Ｔｃｙｌ  に大局的フィードバック制御部１５のフィードバック補正係数ＫＦＢ  を乗算してなる値に、各気筒毎のフィードバック補正係数＃ｎＫＬＡＦを乗算することで、各気筒の出力燃料噴射量＃ｎＴｏｕｔ（ｎ＝１，２，３，４）を求める。
【０１３８】
このようにして求められる各気筒の出力燃料噴射量＃ｎＴｏｕｔ  は、機関側制御ユニット７ｂに備えた各気筒毎の付着補正部２３により吸気管の壁面付着を考慮した補正が各気筒毎になされた後、エンジン１の図示しない燃料噴射装置に与えられ、その付着補正がなされた出力燃料噴射量＃ｎＴｏｕｔ  で、エンジン１の各気筒への燃料噴射が行われるようになっている。
【０１３９】
尚、上記付着補正については、本願出願人が例えば特開平８−２１２７３号公報に詳細に開示しているので、ここではさらなる説明を省略する。また、図１において、参照符号２４を付したセンサ出力選択処理部は、前記オブザーバ２１による各気筒毎の実空燃比＃ｎＡ／Ｆ  の推定に適したＬＡＦセンサ５の出力ＫＡＣＴをエンジン１の運転状態に応じて選択するもので、これについては、本願出願人が特開平７−２５９４８８号公報にて詳細に開示しているので、ここではさらなる説明を省略する。
【０１４０】
一方、前記排気側制御ユニット７ａは、その主たる機能的構成として、機関側制御ユニット７ｂを介して与えられるＬＡＦセンサ５の出力ＫＡＣＴのデータ及びＯ２  センサ６の出力ＶＯ２／ＯＵＴ  のデータを用いて目標空燃比ＫＣＭＤを排気側制御ユニット７ａの制御サイクルで逐次生成する目標空燃比生成処理部２８を具備する。
【０１４１】
この目標空燃比生成処理部２８は、図３に示す如く、エンジン１の空燃比に対する基準値ＦＬＡＦ／ＢＡＳＥ  （以下、空燃比基準値ＦＬＡＦ／ＢＡＳＥ  という。これは前記ＬＡＦセンサ５の出力ＫＡＣＴに対する基準値でもある）を逐次可変的に設定する基準値設定部１１（基準値可変設定手段）と、ＬＡＦセンサ５の出力ＫＡＣＴ（空燃比の検出値）と該空燃比基準値ＦＬＡＦ／ＢＡＳＥ  との偏差ｋａｃｔ（＝ＫＡＣＴ−ＦＬＡＦ／ＢＡＳＥ  ）を求める減算処理部１２と、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  とこれに対する目標値ＶＯ２／ＴＡＲＧＥＴとの偏差ＶＯ２  （＝ＶＯ２／ＯＵＴ  −ＶＯ２／ＴＡＲＧＥＴ）を求める減算処理部１３とを備えている。この場合、本実施形態ではＯ２  センサ６の出力ＶＯ２／ＯＵＴ  がある所定の一定値に整定するような状態で、触媒装置３の経時劣化等によらずに該触媒装置３の最適な浄化性能が得られることから、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  の目標値ＶＯ２／ＴＡＲＧＥＴは上記所定の一定値（固定値）とされている（図２参照）。
【０１４２】
尚、以下の説明において、前記減算処理部１２，１３がそれぞれ求める偏差ｋａｃｔ，ＶＯ２  をそれぞれＬＡＦセンサ５の偏差出力ｋａｃｔ及びＯ２  センサ６の偏差出力ＶＯ２  と称する。
【０１４３】
排気側制御ユニット７ａの目標空燃比生成処理部２８はさらに、前記ＬＡＦセンサ５の偏差出力ｋａｃｔ及びＯ２  センサ６の偏差出力ＶＯ２  のデータを用いて、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  をその目標値ＶＯ２／ＴＡＲＧＥＴに収束させる（偏差出力ＶＯ２  を「０」に収束させる）ようにエンジン１の空燃比を操作するための操作量ｕｓｌを逐次生成する操作量生成部２９（操作量生成手段）と、この操作量ｕｓｌを所定の許容範囲内の値に制限するリミット処理を該操作量ｕｓｌに施してなる操作量ｋｃｍｄを生成するリミッタ３０（リミット処理手段）と、該リミッタ３０が生成した操作量ｋｃｍｄに前記基準値設定部１１で設定された前記空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を加算する加算処理部３１とを備えている。
【０１４４】
この場合、本実施形態では、前記操作量生成部２９が後述の如く生成する操作量ｕｓｌは、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  をその目標値ＶＯ２／ＴＡＲＧＥＴに収束させる上で要求されるエンジン１の実際の空燃比（ＬＡＦセンサ５で検出される空燃比）と前記空燃比基準値ＦＬＡＦ／ＢＡＳＥ  との偏差の目標値を表すものである。従って、基本的には、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  をその目標値ＶＯ２／ＴＡＲＧＥＴに収束させるためには、この操作量ｕｓｌ（以下、要求偏差空燃比ｕｓｌという）に前記空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を加算したものを前記目標空燃比ＫＣＭＤとして生成すればよい。
【０１４５】
しかるに、操作量生成部２９が生成する要求偏差空燃比ｕｓｌは、外乱等の影響で比較的大きな変動を生じることもある。そして、このような要求偏差空燃比ｕｓｌに対応して定まる目標空燃比（＝ｕｓｌ＋ＦＬＡＦ／ＢＡＳＥ  ）にエンジン１の実際の空燃比（ＬＡＦセンサ５の出力）を操作すると、エンジン１の運転状態が不安定になる虞がある。
【０１４６】
このような不都合を回避するため、目標空燃比生成処理部２８は、前記リミッタ３０によって前記要求偏差空燃比ｕｓｌにリミット処理を施すことで、その値を所定の許容範囲内に制限してなる前記操作量ｋｃｍｄを生成するようにしている。
【０１４７】
ここで、リミッタ３０が行うリミット処理は、前記要求偏差空燃比ｕｓｌの値が所定の許容範囲内に存する状態（通常的な状態）では、該要求偏差空燃比ｕｓｌをそのまま前記操作量ｋｃｍｄとして設定し、また、要求偏差空燃比ｕｓｌの値が許容範囲から該許容範囲の上限値側あるいは下限値側に逸脱したときには、それぞれ前記操作量ｋｃｍｄを強制的に該許容範囲の上限値、下限値に設定する処理である。
【０１４８】
そして、目標空燃比生成処理部２８は、このように要求偏差空燃比ｕｓｌにリミット処理を施してなる操作量ｋｃｍｄ（以下、指令偏差空燃比ｋｃｍｄという）に、前記加算処理部３１で前記空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を加算することで前記目標空燃比ＫＣＭＤ、すなわち、前記機関側制御ユニット７ａにエンジン１の空燃比の指令値として与える目標空燃比ＫＣＭＤ（＝ｋｃｍｄ＋ＦＬＡＦ／ＢＡＳＥ  ）を生成するようにしている。
【０１４９】
前記操作量生成部２９をさらに説明する。この操作量生成部２９は、排気管２のＬＡＦセンサ５の箇所（触媒装置３の上流側）からＯ２  センサ６の箇所（触媒装置３の下流側）にかけての触媒装置３を含む排気系（図１で参照符号Ｅを付した部分。以下、対象排気系Ｅという）が有する無駄時間や、前記エンジン１及び機関側制御ユニット７ｂが有する無駄時間、前記対象排気系Ｅの挙動変化等を考慮しつつ、フィードバック制御の一手法である適応スライディングモード制御を用いて、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  をその目標値ＶＯ２／ＴＡＲＧＥＴに収束させる（Ｏ２  センサ６の偏差出力ＶＯ２  を「０」に収束させる）ために対象排気系Ｅに与えるべき制御入力としての前記要求偏差空燃比ｕｓｌを排気側制御ユニット７ａの制御サイクルで逐次生成するものである。尚、前記対象排気系Ｅは、本発明のプラントの制御装置に対応させると、プラントに相当するものである。
【０１５０】
このような要求偏差空燃比ｕｓｌの生成処理を行うために、本実施形態では、前記対象排気系Ｅを、エンジン１で燃焼した混合気（触媒装置３に進入する排ガスを燃焼により生成した混合気）の実際の空燃比と前記空燃比基準値ＦＬＡＦ／ＢＡＳＥ  との偏差に相当する前記ＬＡＦセンサ５の偏差出力ｋａｃｔから無駄時間及び応答遅れを有してＯ２  センサ６の偏差出力ＶＯ２  を生成する系と見なし、その挙動をあらかじめモデル化する。またさらに、本実施形態では前記エンジン１及び機関側制御ユニット７ｂから成る系（以下、この系を空燃比操作系と称する）を、前記目標空燃比ＫＣＭＤと前記空燃比基準値ＦＬＡＦ／ＢＡＳＥ  との偏差（＝ＫＣＭＤ−ＦＬＡＦ／ＢＡＳＥ  ）である前記指令偏差空燃比ｋｃｍｄ（これは通常的には前記要求偏差空燃比ｕｓｌに一致する）から無駄時間を有してＬＡＦセンサ５の偏差出力ｋａｃｔを生成する系、すなわち各時点のＬＡＦセンサ５の偏差出力ｋａｃｔが空燃比操作系の無駄時間前の指令偏差空燃比ｋｃｍｄに一致する系と見なし、その挙動をあらかじめモデル化する。
【０１５１】
この場合、本実施形態では、対象排気系Ｅの挙動を表現するモデル（以下、排気系モデルという）は、次式（１）の如く離散時間系のモデル（より詳しくは対象排気系Ｅの入力である偏差出力ｋａｃｔに無駄時間を有する自己回帰モデル）により表現する。
【０１５２】
【数１】
0003621839.tif 000002
【０１５３】
ここで、上式（１）において、「ｋ」は排気側制御ユニット７ａの離散時間的な制御サイクルの番数を示し（以下、同様）、「ｄ１」は対象排気系Ｅに存する無駄時間を制御サイクル数で表したものである。この場合、対象排気系Ｅの無駄時間（ＬＡＦセンサ５が検出する各時点の空燃比がＯ２  センサ６の出力ＶＯ２／ＯＵＴ  に反映されるようになるまでに要する時間）は、排気側制御ユニット７ａの制御サイクルの周期（一定周期）を３０〜１００ｍｓとしたとき、一般的には、３〜１０制御サイクル分の時間（ｄ１＝３〜１０）である。そして、本実施形態では、式（１）により表した排気系モデルにおける無駄時間ｄ１の値として、対象排気系Ｅの実際の無駄時間と等しいか、もしくはそれよりも若干長いものにあらかじめ設定した所定の一定値（本実施形態では例えばｄ１＝７）を用いる。
【０１５４】
また、式（１）の右辺第１項及び第２項はそれぞれ対象排気系Ｅの応答遅れに対応するもので、第１項は１次目の自己回帰項、第２項は２次目の自己回帰項である。そして、「ａ１」、「ａ２」はそれぞれ１次目の自己回帰項のゲイン係数、２次目の自己回帰項のゲイン係数である。これらのゲイン係数ａ１，ａ２は別の言い方をすれば、排気系モデルにおけるＯ２  センサ６の偏差出力ＶＯ２  に係る係数である。
【０１５５】
さらに、式（１）の右辺第３項は対象排気系Ｅの入力としてのＬＡＦセンサ５の偏差出力ｋａｃｔを対象排気系Ｅの無駄時間ｄ１を含めて表現するものであり、「ｂ１」はその入力（＝ＬＡＦセンサ５の偏差出力ｋａｃｔ）に係るゲイン係数である。これらのゲイン係数ａ１，ａ２，ｂ１は排気系モデルの挙動を規定する上である値に設定（同定）すべきパラメータであり、本実施形態では後述の同定器によって逐次同定するものである。
【０１５６】
このように式（１）により離散時間系で表現した排気系モデルは、それを言葉で表現すれば、排気側制御ユニット７ａの各制御サイクルにおける対象排気系Ｅの出力としての前記Ｏ２  センサ６の偏差出力ＶＯ２（ｋ＋１）を、該制御サイクルよりも過去の制御サイクルにおける複数（本実施形態では二つ）の偏差出力ＶＯ２（ｋ），ＶＯ２（ｋ−１）とＬＡＦセンサ５の偏差出力ｋａｃｔ（ｋ−ｄ１）とにより表したものである。
【０１５７】
一方、エンジン１及び機関側制御ユニット７ｂからなる前記空燃比操作系のモデル（以下、空燃比操作系モデルという）は、次式（２）の如く離散時間系のモデルにより表現する。
【０１５８】
【数２】
0003621839.tif 000003
【０１５９】
ここで、式（２）において、「ｄ２」は空燃比操作系の無駄時間を排気側制御ユニット７ａの制御サイクル数で表したものである。この場合、空燃比操作系の無駄時間（各時点の目標空燃比ＫＣＭＤもしくは指令偏差空燃比ｋｃｍｄがＬＡＦセンサ５の出力ＫＡＣＴもしくは偏差出力ｋａｃｔに反映されるようになるまでに要する時間）は、エンジン１の回転数ＮＥによって変化し、エンジン１の回転数が低くなる程、長くなる。そして、本実施形態では、式（２）により表した空燃比操作系モデルにおける無駄時間ｄ２の値としては、上記のような空燃比操作系の無駄時間の特性を考慮し、例えばエンジン１のアイドリング回転数において実際の空燃比操作系が有する無駄時間（これは、エンジン１の任意の回転数において空燃比操作系が採り得る最大側の無駄時間である）と等しいか、もしくはそれよりも若干長いものにあらかじめ設定した所定の一定値（本実施形態では例えばｄ２＝３）を用いる。
【０１６０】
このように式（２）により表現した空燃比操作系モデルは、排気側制御ユニット７ａの各制御サイクルにおけるＬＡＦセンサ５の偏差出力ｋａｃｔ（ｋ）  が空燃比操作系の無駄時間ｄ２前の前記指令偏差空燃比ｋｃｍｄ（ｋ−ｄ２）に一致するとして、該偏差出力ｋａｃｔ（ｋ）  を指令偏差空燃比ｋｃｍｄ（ｋ−ｄ２）により表したものである。
【０１６１】
尚、空燃比操作系には、実際には、無駄時間の他、エンジン１の応答遅れも含まれるのであるが、目標空燃比ＫＣＭＤもしくは指令偏差空燃比ｋｃｍｄに対するＬＡＦセンサ５の出力ＫＡＣＴもしくは偏差出力ｋａｃｔの応答遅れは、基本的には前記機関側制御ユニット７ｂのフィードバック制御部１４（特に適応制御器１８）によって補償されるため、排気側制御ユニット７ａの操作量生成部２９から見た空燃比操作系では、エンジン１の応答遅れを考慮せずとも支障はない。
【０１６２】
前記操作量生成部２９は、式（１）及び式（２）によりそれぞれ表現した排気系モデル及び空燃比操作系モデルに基づいて構築された処理を排気側制御ユニット７ａの制御サイクルで行って、前記Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  をその目標値ＶＯ２／ＴＡＲＧＥＴに収束させるために対象排気系Ｅに与えるべき入力としての前記要求操作量ｕｓｌを逐次生成するものである。そして、この要求操作量ｕｓｌを生成するために図３に示したような機能的構成を具備している。
【０１６３】
すなわち、操作量生成部２９は、ＬＡＦセンサ５の偏差出力ｋａｃｔ及びＯ２  センサ６の偏差出力ＶＯ２  のデータを用いて、前記排気系モデル（式（１））の設定すべきパラメータである前記ゲイン係数ａ１，ａ２，ｂ１の値を制御サイクル毎に逐次同定する同定器２５（同定手段）を備える。また、該操作量生成部２９は、ＬＡＦセンサ５の偏差出力ｋａｃｔのデータと、Ｏ２  センサ６の偏差出力ＶＯ２  のデータと、以下に述べるスライディングモード制御器２７が過去に求めた要求偏差空燃比ｕｓｌに前記リミッタ３０でリミット処理を施してなる前記指令偏差空燃比ｋｃｍｄ（通常的にはｋｃｍｄ＝ｕｓｌである）のデータと、前記同定器２５により算出された前記ゲイン係数ａ１，ａ２，ｂ１の同定値ａ１ハット，ａ２ハット，ｂ１ハット（以下、同定ゲイン係数ａ１ハット，ａ２ハット，ｂ１ハットという）とを用いて、対象排気系Ｅの無駄時間ｄ１及び空燃比操作系の無駄時間ｄ２を合わせた合計無駄時間ｄ（＝ｄ１＋ｄ２）後のＯ２  センサ６の偏差出力ＶＯ２  の推定値ＶＯ２  バー（以下、推定偏差出力ＶＯ２  バーという）を制御サイクル毎に逐次求める推定器２６（推定手段）を備える。さらに操作量生成部２９は、推定器２６により求められたＯ２  センサ６の推定偏差出力ＶＯ２  バーのデータと、前記同定ゲイン係数ａ１ハット，ａ２ハット，ｂ１ハットとを用いて適応スライディングモード制御により前記要求偏差空燃比ｕｓｌを制御サイクル毎に逐次算出するスライディングモード制御器２７を備える。
【０１６４】
これらの同定器２５、推定器２６及びスライディングモード制御器２７による演算処理のアルゴリズムは以下のように構築されている。
【０１６５】
まず、前記同定器２５は、前記式（１）により表現した排気系モデルの実際の対象排気系Ｅに対するモデル化誤差を極力小さくするように前記ゲイン係数ａ１，ａ２，ｂ１の値をリアルタイムで逐次同定するものであり、その同定処理を次のように行う。
【０１６６】
すなわち、同定器２５は、排気側制御ユニット７ａの制御サイクル毎に、まず、今現在設定されている排気系モデルの同定ゲイン係数ａ１ハット，ａ２ハット，ｂ１ハット、すなわち前回の制御サイクルで決定した同定ゲイン係数ａ１（ｋ−１）  ハット，ａ２（ｋ−１）  ハット，ｂ１（ｋ−１）  ハットの値と、ＬＡＦセンサ５の偏差出力ｋａｃｔ及びＯ２  センサ６の偏差出力ＶＯ２  の過去に得られたデータとを用いて、次式（３）により排気系モデル上でのＯ２  センサ６の偏差出力ＶＯ２  （排気系モデルの出力）の値ＶＯ２（ｋ）ハット（以下、同定偏差出力ＶＯ２（ｋ）ハットという）を求める。
【０１６７】
【数３】
0003621839.tif 000004
【０１６８】
この式（３）は、排気系モデルを表す前記式（１）を１制御サイクル分、過去側にシフトし、ゲイン係数ａ１，ａ２，ｂ１を同定ゲイン係数ａ１ハット（ｋ−１）  ，ａ２ハット（ｋ−１）  ，ｂ１ハット（ｋ−１）  で置き換えたものである。また、式（３）の第３項で用いる対象排気系Ｅの無駄時間ｄ１の値は、前述の如く設定した一定値（本実施形態ではｄ１＝７）を用いる。
【０１６９】
ここで、次式（４），（５）で定義されるベクトルΘ及びξを導入すると（式（４），（５）中の添え字「Ｔ」は転置を意味する。以下同様。）、
【０１７０】
【数４】
0003621839.tif 000005
【０１７１】
【数５】
0003621839.tif 000006
【０１７２】
前記式（３）は、次式（６）により表される。
【０１７３】
【数６】
0003621839.tif 000007
【０１７４】
さらに同定器２５は、前記式（３）あるいは式（６）により求められるＯ２  センサ６の同定偏差出力ＶＯ２  ハットと今現在のＯ２  センサ６の偏差出力ＶＯ２  との偏差ｉｄ／ｅを排気系モデルの実際の対象排気系Ｅに対するモデル化誤差を表すものとして次式（７）により求める（以下、偏差ｉｄ／ｅを同定誤差ｉｄ／ｅという）。
【０１７５】
【数７】
0003621839.tif 000008
【０１７６】
そして、同定器２５は、上記同定誤差ｉｄ／ｅを最小にするように新たな同定ゲイン係数ａ１（ｋ）  ハット，ａ２（ｋ）  ハット，ｂ１（ｋ）  ハット、換言すれば、これらの同定ゲイン係数を要素とする新たな前記ベクトルΘ（ｋ）  （以下、このベクトルを同定ゲイン係数ベクトルΘという）を求めるもので、その算出を、次式（８）により行う。すなわち、同定器２５は、前回の制御サイクルで決定した同定ゲイン係数ａ１ハット（ｋ−１）  ，ａ２ハット（ｋ−１）  ，ｂ１ハット（ｋ−１）  を、同定誤差ｉｄ／ｅに比例させた量だけ変化させることで新たな同定ゲイン係数ａ１（ｋ）  ハット，ａ２（ｋ）  ハット，ｂ１（ｋ）  ハットを求める。
【０１７７】
【数８】
0003621839.tif 000009
【０１７８】
ここで、式（８）中の「Ｋθ」は次式（９）により決定される三次のベクトル（各同定ゲイン係数ａ１ハット，ａ２ハット，ｂ１ハットの同定誤差ｉｄ／ｅに応じた変化度合いを規定するゲイン係数ベクトル）である。
【０１７９】
【数９】
0003621839.tif 000010
【０１８０】
また、上式（９）中の「Ｐ」は次式（１０）の漸化式により決定される三次の正方行列である。
【０１８１】
【数１０】
0003621839.tif 000011
【０１８２】
尚、式（１０）中の「λ１  」、「λ２  」は０＜λ１  ≦１及び０≦λ２  ＜２の条件を満たすように設定され、また、「Ｐ」の初期値Ｐ（０）  は、その各対角成分を正の数とする対角行列である。
【０１８３】
この場合、式（１０）中の「λ１  」、「λ２  」の設定の仕方によって、固定ゲイン法、漸減ゲイン法、重み付き最小二乗法、最小二乗法、固定トレース法等、各種の具体的なアルゴリズムが構成され、本実施形態では、例えば最小二乗法（この場合、λ１  ＝λ２  ＝１）を採用している。
【０１８４】
本実施形態における同定器２５は基本的には前述のようなアルゴリズム（演算処理）によって、前記同定誤差ｉｄ／ｅを最小化するように排気系モデルの前記同定ゲイン係数ａ１ハット，ａ２ハット，ｂ１ハットを制御サイクル毎に逐次求める。このような処理によって、実際の対象排気系Ｅに適合した同定ゲイン係数ａ１ハット，ａ２ハット，ｂ１ハットが逐次得られる。
【０１８５】
以上説明した演算処理が同定器２５による基本的な処理内容である。尚、本実施形態では、同定器２５は、同定ゲイン係数ａ１ハット，ａ２ハット，ｂ１ハットを求めるに際して、それらの値の制限処理等、付加的な処理も行うのであるが、これらについては後述する。
【０１８６】
次に、前記推定器２６は、後に詳細を説明するスライディングモード制御器２７による要求偏差空燃比ｕｓｌの算出処理に際しての対象排気系Ｅの無駄時間ｄ１及び前記空燃比操作系の無駄時間ｄ２の影響を補償するために、前記合計無駄時間ｄ（＝ｄ１＋ｄ２）後のＯ２  センサ６の偏差出力ＶＯ２  の推定値である前記推定偏差出力ＶＯ２  バーを制御サイクル毎に逐次求めるものである。その推定処理のアルゴリズムは次のように構築されている。尚、この推定器２６の詳細は特願平１０−１３０８６４号にて本願出願人が説明しているので、ここでは、概略を説明する。
【０１８７】
まず、排気系モデルを表す前記式（１）に、空燃比操作系モデルを表す式（２）を適用すると、式（１）は次式（１１）に書き換えることができる。
【０１８８】
【数１１】
0003621839.tif 000012
【０１８９】
この式（１１）は、対象排気系Ｅ及び空燃比操作系を合わせた系を、前記指令偏差空燃比ｋｃｍｄから対象排気系Ｅ及び空燃比操作系の両者の無駄時間と対象排気系Ｅの応答遅れとを有してＯ２  センサ６の偏差出力ＶＯ２  を生成する系と見なして、離散時間系のモデルで表現したものである。
【０１９０】
そして、この式（１１）を用いることで、各制御サイクルにおける前記合計無駄時間ｄ後のＯ２  センサ６の偏差出力ＶＯ２（ｋ＋ｄ）の推定値である前記推定偏差出力ＶＯ２（ｋ＋ｄ）バーは、Ｏ２  センサ６の偏差出力ＶＯ２  の時系列データＶＯ２（ｋ）及びＶＯ２（ｋ−１）と、前記指令偏差空燃比ｋｃｍｄ（＝ＫＣＭＤ−ＦＬＡＦ／ＢＡＳＥ  ）の過去値の時系列データｋｃｍｄ（ｋ−ｊ）  （ｊ＝１，２，…，ｄ）とを用いて次式（１２）により表される。
【０１９１】
【数１２】
0003621839.tif 000013
【０１９２】
ここで、式（１２）において、α１  ，α２  は、それぞれ同式（１２）中のただし書きで定義した行列Ａの巾乗Ａｄ  （ｄ：合計無駄時間）の第１行第１列成分、第１行第２列成分である。また、βｊ  （ｊ＝１，２，…，ｄ）は、それぞれ行列Ａの巾乗Ａｊ−１  （ｊ＝１，２，…，ｄ）と同式（１２）中のただし書きで定義したベクトルＢとの積Ａｊ−１  ・Ｂの第１行成分である。
【０１９３】
さらに、式（１２）中の指令偏差空燃比ｋｃｍｄの過去値の時系列データｋｃｍｄ（ｋ−ｊ）  （ｊ＝１，２，…，ｄ）のうち、現在から空燃比操作系の無駄時間ｄ２以前の指令偏差空燃比ｋｃｍｄの過去値の時系列データｋｃｍｄ（ｋ−ｄ２），ｋｃｍｄ（ｋ−ｄ２−１），…，ｋｃｍｄ（ｋ−ｄ）  は前記式（２）（空燃比操作系のモデル）に基づいて、それぞれ、ＬＡＦセンサ５の偏差出力ｋａｃｔの現在以前に得られるデータｋａｃｔ（ｋ）  ，ｋａｃｔ（ｋ−１）  ，…，ｋａｃｔ（ｋ−ｄ＋ｄ２）に置き換えることができる。そして、この置き換えを行うことで、次式（１３）が得られる。
【０１９４】
【数１３】
0003621839.tif 000014
【０１９５】
この式（１３）が本実施形態において、推定器２６が前記推定偏差出力ＶＯ２（ｋ＋ｄ）バーを算出するための基本式である。つまり、本実施形態では、推定器２６は、制御サイクル毎に、Ｏ２  センサ６の偏差出力ＶＯ２  の時系列データＶＯ２（ｋ）及びＶＯ２（ｋ−１）と、後述するスライディングモード制御器２７が生成する要求偏差空燃比ｕｓｌにリミット処理を施してなる指令偏差空燃比ｋｃｍｄの過去値のデータｋｃｍｄ（ｋ−ｊ）  （ｊ＝１，…，ｄ２−１  ）と、ＬＡＦセンサ５の偏差出力ｋａｃｔの時系列データｋａｃｔ（ｋ−ｉ）  （ｉ  ＝０，…，ｄ１）とを用いて式（１３）の演算を行うことによって、Ｏ２  センサ６の推定偏差出力ＶＯ２（ｋ＋ｄ）バーを求める。
【０１９６】
この場合、本実施形態では、式（１３）により推定偏差出力ＶＯ２（ｋ＋ｄ）バーを算出するために必要となる係数α１  ，α２  及びβｊ  （ｊ＝１，２，…，ｄ）の値は、基本的には、前記ゲイン係数ａ１，ａ２，ｂ１（これらは式（１２）のただし書きで定義した行列Ａ及びベクトルＢの成分である）の同定値である前記同定ゲイン係数ａ１ハット，ａ２ハット，ｂ１ハットを用いて算出する。また、式（１３）の演算で必要となる無駄時間ｄ１，ｄ２の値は、前述の如く設定した値を用いる。
【０１９７】
尚、推定偏差出力ＶＯ２（ｋ＋ｄ）バーは、ＬＡＦセンサ５の偏差出力ｋａｃｔのデータを使用せずに、式（１２）の演算により求めるようにしてもよい。この場合には、Ｏ２  センサ６の推定偏差出力ＶＯ２（ｋ＋ｄ）バーは、Ｏ２  センサ６の偏差出力ＶＯ２  の時系列データＶＯ２（ｋ）及びＶＯ２（ｋ−１）と、指令偏差空燃比ｋｃｍｄの時系列データｋｃｍｄ（ｋ−ｊ）  （ｊ＝１，２，…，ｄ）と、前記同定ゲイン係数ａ１ハット，ａ２ハット，ｂ１ハットにより定まる係数α１  ，α２  及びβｊ  （ｊ＝１，２，…，ｄ）の値とを用いて推定偏差出力ＶＯ２（ｋ＋ｄ）バーを求めることとなる。但し、推定偏差出力ＶＯ２（ｋ＋ｄ）バーの信頼性を高める上では、エンジン１等の実際の挙動が反映されるＬＡＦセンサ５の偏差出力ｋａｃｔのデータを用いた式（１３）の演算により推定偏差出力ＶＯ２（ｋ＋ｄ）バーを求めることが好ましい。
【０１９８】
また、空燃比操作系の無駄時間ｄ２を「１」に設定できるような場合には、式（１２）中の指令偏差空燃比ｋｃｍｄの過去値の時系列データｋｃｍｄ（ｋ−ｊ）  （ｊ＝１，２，…，ｄ）の全てをそれぞれ、ＬＡＦセンサ５の偏差出力ｋａｃｔの現在以前に得られる時系列データｋａｃｔ（ｋ）  ，ｋａｃｔ（ｋ−１）  ，…，ｋａｃｔ（ｋ−ｄ＋ｄ２）に置き換えることができる。このため、この場合には、推定偏差出力ＶＯ２（ｋ＋ｄ）バーは、指令偏差空燃比ｋｃｍｄのデータを含まない次式（１４）により求めることができる。
【０１９９】
【数１４】
0003621839.tif 000015
【０２００】
また、本記実施形態では、Ｏ２  センサ６の推定偏差出力ＶＯ２  バーを推定器２６により制御サイクル毎に求めるに際しては、式（１２）中の目標偏差空燃比ｋｃｍｄの時系列データのうち、空燃比操作系の無駄時間ｄ２以前のものについては全て、ＬＡＦセンサ５の偏差出力ｋａｃｔに置き換えた式（１３）により推定偏差出力ＶＯ２  バーを求めるようにしたが、式（１２）中の無駄時間ｄ２以前の目標偏差空燃比ｋｃｍｄの時系列データのうちの一部のみをＬＡＦセンサ５の偏差出力ｋａｃｔに置き換えた式によって推定偏差出力ＶＯ２  バーを求めるようにしてもよい。
【０２０１】
以上説明した演算処理が推定器２６により制御サイクル毎にＯ２  センサ６の偏差出力ＶＯ２  の前記合計無駄時間ｄ後の推定値である推定偏差出力ＶＯ２（ｋ＋ｄ）バーを求めるための基本的な処理内容である。
【０２０２】
次に、前記スライディングモード制御器２７を説明する。尚、このスライディングモード制御器２７の詳細は、特願平１０−１３０８６４号にて本願出願人が説明しているので、ここでは、概略を説明する。
【０２０３】
本実施形態のスライディングモード制御器２７は、通常的なスライディングモード制御に外乱等の影響を極力排除するための適応則を加味した適応スライディングモード制御により、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  をその目標値ＶＯ２／ＴＡＲＧＥＴに収束させるように（Ｏ２  センサ６の偏差出力ＶＯ２  を「０」に収束させるように）エンジン１の空燃比を操作するための操作量として前記要求偏差空燃比ｕｓｌを逐次求めるものである。そして、その処理のためのアルゴリズムは次のように構築されている。
【０２０４】
まず、スライディングモード制御器２７の適応スライディングモード制御に必要な切換関数とこの切換関数により定義される超平面（これはすべり面とも言われる）とについて説明する。
【０２０５】
本実施形態におけるスライディングモード制御の基本的な考え方としては、制御すべき状態量として、例えば各制御サイクルで得られたＯ２  センサ６の偏差出力ＶＯ２（ｋ）と、その１制御サイクル前に得られた偏差出力ＶＯ２（ｋ−１）とを用い、スライディングモード制御用の切換関数σを次式（１５）により定義する。すなわち、該切換関数σは、Ｏ２  センサ６の偏差出力ＶＯ２  の時系列データＶＯ２（ｋ），ＶＯ２（ｋ−１）を成分とする線形関数により定義する。尚、前記偏差出力ＶＯ２（ｋ），ＶＯ２（ｋ−１）を成分とするベクトルとして式（１５）中で定義したベクトルＸを以下、状態量Ｘという。
【０２０６】
【数１５】
0003621839.tif 000016
【０２０７】
この場合、切換関数σの成分ＶＯ２（ｋ），ＶＯ２（ｋ−１）に係る係数ｓ１，ｓ２は、次式（１６）の条件を満たすように設定する。
【０２０８】
【数１６】
0003621839.tif 000017
【０２０９】
尚、本実施形態では、簡略化のために係数ｓ１をｓ１＝１とし（この場合、ｓ２／ｓ１＝ｓ２である）、−１＜ｓ２＜１の条件を満たすように係数ｓ２の値を設定している。
【０２１０】
このように切換関数σを定義したとき、スライディングモード制御用の超平面はσ＝０なる式によって定義されるものである。この場合、状態量Ｘは二次元系であるので超平面σ＝０は図４に示すように直線となり、このとき、該超平面は切換線とも言われる。
【０２１１】
尚、本実施形態では、切換関数の成分として、実際には前記推定器２６により求められる前記推定偏差出力ＶＯ２  バーの時系列データを用いるのであるが、これについては後述する。
【０２１２】
本実施形態で用いる適応スライディングモード制御は、状態量Ｘ＝（ＶＯ２（ｋ），ＶＯ２（ｋ−１））を上記の如く設定した超平面σ＝０に収束させる（切換関数σの値を「０」に収束させる）ための制御則である到達則と、その超平面σ＝０への収束に際して外乱等の影響を補償するための制御則である適応則とにより該状態量Ｘを超平面σ＝０に収束させる（図４のモード１）。そして、該状態量Ｘを所謂、等価制御入力によって超平面σ＝０に拘束しつつ（切換関数σの値を「０」に保持する）、該状態量Ｘを超平面σ＝０上の平衡点であるＶＯ２（ｋ）＝ＶＯ２（ｋ−１）＝０となる点、すなわち、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  の時系列データＶＯ２／ＯＵＴ（ｋ），ＶＯ２／ＯＵＴ（ｋ−１）が目標値ＶＯ２／ＴＡＲＧＥＴに一致するような点に収束させる（図４のモード２）。
【０２１３】
上記のように状態量Ｘを超平面σ＝０の平衡点に収束させるために本実施形態のスライディングモード制御器２７が生成する前記要求偏差空燃比ｕｓｌは、状態量Ｘを超平面σ＝０上に拘束するための制御則に従って対象排気系Ｅに与えるべき入力の成分である等価制御入力ｕｅｑと、前記到達則に従って対象排気系Ｅに与えるべき入力の成分ｕｒｃｈ  （以下、到達則入力ｕｒｃｈ  という）と、前記適応則に従って対象排気系Ｅに与えるべき入力の成分ｕａｄｐ  （以下、適応則入力ｕａｄｐ  という）との総和により表される（次式（１７））。
【０２１４】
【数１７】
0003621839.tif 000018
【０２１５】
そして、これらの等価制御入力ｕｅｑ、到達則入力ｕｒｃｈ  及び適応則入力ｕａｄｐ  は、本実施形態では、前記式（１１）により表される離散時間系のモデル（式（１）中のＬＡＦセンサ５の偏差出力ｋａｃｔ（ｋ−ｄ１）を合計無駄時間ｄを用いた指令偏差空燃比ｋｃｍｄ（ｋ−ｄ）  で置き換えたモデル）に基づいて、次のように決定する。
【０２１６】
まず、状態量Ｘを超平面σ＝０に拘束するために対象排気系Ｅに与えるべき入力成分である前記等価制御入力ｕｅｑは、σ（ｋ＋１）  ＝σ（ｋ）  ＝０なる条件を満たす指令偏差空燃比ｋｃｍｄである。そして、このような条件を満たす等価制御入力ｕｅｑは、式（１１）と式（１５）とを用いて次式（１８）により与えられる。
【０２１７】
【数１８】
0003621839.tif 000019
【０２１８】
この式（１８）が本実施形態において、制御サイクル毎に等価制御入力ｕｅｑ（ｋ）  を求めるための基本式である。
【０２１９】
次に、前記到達則入力ｕｒｃｈ  は、本実施形態では、基本的には次式（１９）により決定するものとする。
【０２２０】
【数１９】
0003621839.tif 000020
【０２２１】
すなわち、到達則入力ｕｒｃｈ  は、前記合計無駄時間ｄを考慮し、合計無駄時間ｄ後の切換関数σの値σ（ｋ＋ｄ）  に比例させるように決定する。
【０２２２】
この場合、式（１９）中の係数Ｆ（これは到達則のゲインを規定する）は、次式（２０）の条件を満たすように設定する。
【０２２３】
【数２０】
0003621839.tif 000021
【０２２４】
尚、切換関数σの値の挙動に関しては、該切換関数σの値が「０」に対して振動的な変化（所謂チャタリング）を生じる虞れがあり、このチャタリングを抑制するためには、到達則入力ｕｒｃｈ  に係わる係数Ｆは、さらに次式（２１）の条件を満たすように設定することが好ましい。
【０２２５】
【数２１】
0003621839.tif 000022
【０２２６】
次に、前記適応則入力ｕａｄｐ  は、本実施形態では、基本的には次式（２２）により決定するものとする。ここで式（２２）中のΔＴは排気側制御ユニット７ａの制御サイクルの周期である。
【０２２７】
【数２２】
0003621839.tif 000023
【０２２８】
すなわち、適応則入力ｕａｄｐ  は、合計無駄時間ｄを考慮し、該合計無駄時間ｄ後までの切換関数σの値の制御サイクル毎の積算値（これは切換関数σの値の積分値に相当する）に比例させるように決定する。
【０２２９】
この場合、式（２２）中の係数Ｇ（これは適応則のゲインを規定する）は、次式（２３）の条件を満たすように設定する。
【０２３０】
【数２３】
0003621839.tif 000024
【０２３１】
尚、前記式（１６）、（２０）、（２１）、（２３）の設定条件のより具体的な導出の仕方については、本願出願人が既に特願平９−２５１１４２号等にて詳細に説明しているので、ここでは詳細な説明を省略する。
【０２３２】
前記Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  をその目標値ＶＯ２／ＴＡＲＧＥＴに収束させる（Ｏ２  センサ６の偏差出力ＶＯ２  を「０」に収束させる）上で対象排気系Ｅに与えるべき入力としての前記要求偏差空燃比ｕｓｌは、基本的には前記式（１８）、（１９）、（２２）により決定される等価制御入力ｕｅｑ、到達則入力ｕｒｃｈ  及び適応則入力ｕａｄｐ  の総和（ｕｅｑ＋ｕｒｃｈ  ＋ｕａｄｐ  ）として決定すればよい。しかるに、前記式（１８）、（１９）、（２２）で使用するＯ２  センサ６の偏差出力ＶＯ２（ｋ＋ｄ），ＶＯ２（ｋ＋ｄ−１）や、切換関数σの値σ（ｋ＋ｄ）  等は未来値であるので直接的には得られない。
【０２３３】
そこで、本実施形態では、スライディングモード制御器２７は、前記式（１８）により前記等価制御入力ｕｅｑを決定するためのＯ２  センサ６の偏差出力ＶＯ２（ｋ＋ｄ），ＶＯ２（ｋ＋ｄ−１）の代わりに、前記推定器２６で求められる推定偏差出力ＶＯ２（ｋ＋ｄ）バー，ＶＯ２（ｋ＋ｄ−１）バーを用い、次式（２４）により制御サイクル毎の等価制御入力ｕｅｑを算出する。
【０２３４】
【数２４】
0003621839.tif 000025
【０２３５】
また、本実施形態では、実際には、推定器２６により前述の如く逐次求められた推定偏差出力ＶＯ２  バーの時系列データを制御すべき状態量とし、前記式（１５）により設定された切換関数σに代えて、次式（２５）により切換関数σバーを定義する（この切換関数σバーは、前記式（１５）の偏差出力ＶＯ２  の時系列データを推定偏差出力ＶＯ２  バーの時系列データで置き換えたものに相当する）。
【０２３６】
【数２５】
0003621839.tif 000026
【０２３７】
そして、スライディングモード制御器２７は、前記式（１９）により前記到達則入力ｕｒｃｈ  を決定するための切換関数σの値の代わりに、前記式（２５）により表される切換関数σバーの値を用いて次式（２６）により制御サイクル毎の到達則入力ｕｒｃｈ  を算出する。
【０２３８】
【数２６】
0003621839.tif 000027
【０２３９】
同様に、スライディングモード制御器２７は、前記式（２２）により前記適応則入力ｕａｄｐ  を決定するための切換関数σの値の代わりに、前記式（２５）により表される切換関数σバーの値を用いて次式（２７）により制御サイクル毎の適応則入力ｕａｄｐ  を算出する。
【０２４０】
【数２７】
0003621839.tif 000028
【０２４１】
尚、前記式（２４），（２６），（２７）により等価制御入力ｕｅｑ、到達則入力ｕｒｃｈ  及び適応則入力ｕａｄｐ  を算出する際に必要となる前記ゲイン係数ａ１，ａ２，ｂ１としては、本実施形態では基本的には前記同定器２５により求められた最新の同定ゲイン係数ａ１（ｋ）  ハット，ａ２（ｋ）  ハット，ｂ１（ｋ）  ハットを用いる。
【０２４２】
そして、スライディングモード制御器２７は、前記式（２４）、（２６）、（２７）によりそれぞれ求められる等価制御入力ｕｅｑ、到達則入力ｕｒｃｈ  及び適応則入力ｕａｄｐ  の総和を前記要求偏差空燃比ｕｓｌとして求める（前記式（１７）を参照）。尚、この場合において、前記式（２４）、（２６）、（２７）中で用いる前記係数ｓ１，ｓ２，Ｆ，  Ｇの設定条件は前述の通りである。
【０２４３】
このようにしてスライディングモード制御器２７が求める要求偏差空燃比ｕｓｌは、Ｏ２  センサ６の推定偏差出力ＶＯ２  バーを「０」に収束させ、その結果としてＯ２  センサ６の出力ＶＯ２／ＯＵＴ  を目標値ＶＯ２／ＴＡＲＧＥＴに収束させる上で、対象排気系Ｅに与えるべき入力、すなわちエンジン１の空燃比と前記基準値ＦＬＡＦ／ＢＡＳＥ  との偏差の目標値である。
【０２４４】
以上説明した処理が、本実施形態において、スライディングモード制御器２７により前記要求偏差空燃比ｕｓｌを制御サイクル毎に生成するための演算処理（アルゴリズム）である。
【０２４５】
尚、前述した如く、排気側制御ユニット７ａの目標空燃比生成処理部２８は、上記のようにスライディングモード制御器２７が生成した要求偏差空燃比ｕｓｌに前記リミッタ３０（図３参照）でリミット処理を施して前記指令偏差空燃比ｋｃｍｄ（通常的にはｋｃｍｄ＝ｕｓｌ）を求める。そして、この指令偏差空燃比ｋｃｍｄに、次式（２８）のように前記加算処理部３１で前記空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を加算することで機関側制御ユニット７ｂに与える目標空燃比ＫＣＭＤ（＝ｋｃｍｄ＋ＦＬＡＦ／ＢＡＳＥ  ）を確定するようにしている。
【０２４６】
【数２８】
0003621839.tif 000029
【０２４７】
また、本実施形態では、リミッタ３０は前記要求偏差空燃比ｕｓｌにリミット処理を施すための許容範囲を要求偏差空燃比ｕｓｌやエンジン１の運転状態等に応じて逐次可変的に設定するのであるが、これについては後述する。
【０２４８】
さらに、本実施形態では、要求偏差空燃比ｕｓｌや指令偏差空燃比ｋｃｍｄの基準としている前記空燃比基準値ＦＬＡＦ／ＢＡＳＥ  は、前記基準値設定部１１によって、スライディングモード制御器２７が生成する要求偏差空燃比ｕｓｌの適応則成分である前記適応則入力ｕａｄｐ  に応じて逐次可変的に設定されるのであるが、これについても後述する。
【０２４９】
次に、前記機関側制御ユニット７ｂの大局的フィードバック制御部１５、特に前記適応制御器１８をさらに説明する。
【０２５０】
前記図１を参照して、大局的フィードバック制御部１５は、前述のようにＬＡＦセンサ５の出力ＫＡＣＴ（空燃比の検出値）を目標空燃比ＫＣＭＤに収束させるようにフィードバック制御を行うものであるが、このとき、このようなフィードバック制御を周知のＰＩＤ制御だけで行うようにすると、エンジン１の運転状態の変化や経年的特性変化等、動的な挙動変化に対して、安定した制御性を確保することが困難である。
【０２５１】
前記適応制御器１８は、上記のようなエンジン１の動的な挙動変化を補償したフィードバック制御を可能とする漸化式形式の制御器であり、Ｉ．Ｄ．ランダウ等により提唱されているパラメータ調整則を用いて、図５に示すように、複数の適応パラメータを設定するパラメータ調整部３２と、設定された適応パラメータを用いて前記フィードバック操作量ＫＳＴＲを算出する操作量算出部３３とにより構成されている。
【０２５２】
ここで、パラメータ調整部３０について説明すると、ランダウ等の調整則では、離散系の制御対象の伝達関数Ｂ（Ｚ−１）／Ａ（Ｚ−１）の分母分子の多項式を一般的に下記の式（２９），（３０）のようにおいたとき、パラメータ調整部３０が設定する適応パラメータθハット（ｊ）  （ｊは制御サイクルの番数を示す）は、式（３１）のようにベクトル（転置ベクトル）で表される。また、パラメータ調整部３０への入力ζ（ｊ）  は、式（３２）のように表される。この場合、本実施形態では、大局的フィードバック制御部１５の制御対象であるエンジン１が一次系で３制御サイクル分の無駄時間ｄｐ  （エンジン１の燃焼サイクルの３サイクル分の時間）を持つプラントと考え、式（２９）〜式（３２）でｍ＝ｎ＝１，ｄｐ  ＝３とし、設定する適応パラメータはｓ０  ，ｒ１  ，ｒ２  ，ｒ３  ，ｂ０  の５個とした（図５参照）。尚、式（３２）の上段式及び中段式におけるｕｓ  ，ｙｓ  は、それぞれ、制御対象への入力（操作量）及び制御対象の出力（制御量）を一般的に表したものであるが、本実施形態では、上記入力をフィードバック操作量ＫＳＴＲ、制御対象（エンジン１）の出力を前記ＬＡＦセンサ５の出力ＫＡＣＴ（空燃比の検出値）とし、パラメータ調整部３２への入力ζ（ｊ）  を、式（３２）の下段式により表す（図５参照）。
【０２５３】
【数２９】
0003621839.tif 000030
【０２５４】
【数３０】
0003621839.tif 000031
【０２５５】
【数３１】
0003621839.tif 000032
【０２５６】
【数３２】
0003621839.tif 000033
【０２５７】
ここで、前記式（３１）に示される適応パラメータθハットは、適応制御器１８のゲインを決定するスカラ量要素ｂ０  ハット−１（Ｚ−１，ｊ）、操作量を用いて表現される制御要素ＢＲ  ハット（Ｚ−１，ｊ）、及び制御量を用いて表現される制御要素Ｓ（Ｚ−１，ｊ）からなり、それぞれ、次式（３３）〜（３５）により表現される（図５の操作量算出部３３のブロック図を参照）。
【０２５８】
【数３３】
0003621839.tif 000034
【０２５９】
【数３４】
0003621839.tif 000035
【０２６０】
【数３５】
0003621839.tif 000036
【０２６１】
パラメータ調整部３２は、これらのスカラ量要素や制御要素の各係数を設定して、それを式（３１）に示す適応パラメータθハットとして操作量算出部３３に与えるもので、現在から過去に渡るフィードバック操作量ＫＳＴＲの時系列データとＬＡＦセンサ５の出力ＫＡＣＴとを用いて、該出力ＫＡＣＴが前記目標空燃比ＫＣＭＤに一致するように、適応パラメータθハットを算出する。
【０２６２】
この場合、具体的には、適応パラメータθハットは、次式（３６）により算出する。
【０２６３】
【数３６】
0003621839.tif 000037
【０２６４】
同式（３６）において、Γ（ｊ）  は、適応パラメータθハットの設定速度を決定するゲイン行列（この行列の次数はｍ＋ｎ＋ｄｐ  ）、ｅアスタリスク（ｊ）  は、適応パラメータθハットの推定誤差を示すもので、それぞれ式（３７），（３８）のような漸化式で表される。
【０２６５】
【数３７】
0003621839.tif 000038
【０２６６】
【数３８】
0003621839.tif 000039
【０２６７】
ここで、式（３８）中の「Ｄ（Ｚ−１）」は、収束性を調整するための、漸近安定な多項式であり、本実施形態ではＤ（Ｚ−１）＝１としている。
【０２６８】
尚、式（３７）のλ１（ｊ），λ２（ｊ）の選び方により、漸減ゲインアルゴリズム、可変ゲインアルゴリズム、固定トレースアルゴリズム、固定ゲインアルゴリズム等の種々の具体的なアルゴリズムが得られる。エンジン１の燃料噴射あるいは空燃比等の時変プラントでは、漸減ゲインアルゴリズム、可変ゲインアルゴリズム、固定ゲインアルゴリズム、および固定トレースアルゴリズムのいずれもが適している。
【０２６９】
前述のようにパラメータ調整部３２により設定される適応パラメータθハット（ｓ０  ，ｒ１  ，ｒ２  ，ｒ３  ，ｂ０  ）と、前記排気側主演算処理部１３により決定される目標空燃比ＫＣＭＤとを用いて、操作量算出部３３は、次式（３９）の漸化
式により、フィードバック操作量ＫＳＴＲを求める。図５の操作量算出部３３は、同式（３９）の演算をブロック図で表したものである。
【０２７０】
【数３９】
0003621839.tif 000040
【０２７１】
尚、式（３９）により求められるフィードバック操作量ＫＳＴＲは、ＬＡＦセンサ５の出力ＫＡＣＴが目標空燃比ＫＣＭＤに一致する状態において、「目標空燃比ＫＣＭＤ」となる。このために、前述の如く、フィードバック操作量ＫＳＴＲを除算処理部１９によって目標空燃比ＫＣＭＤで除算することで、前記フィードバック補正係数ＫＦＢ  として使用できるフィードバック操作量ｋｓｔｒを求めるようにしている。
このように構築された適応制御器１８は、前述したことから明らかなように、制御対象であるエンジン１の動的な挙動変化を考慮した漸化式形式の制御器であり、換言すれば、エンジン１の動的な挙動変化を補償するために、漸化式形式で記述された制御器である。そして、より詳しくは、漸化式形式の適応パラメータ調整機構を備えた制御器と定義することができる。
【０２７２】
尚、この種の漸化式形式の制御器は、所謂、最適レギュレータを用いて構築する場合もあるが、この場合には、一般にはパラメータ調整機構は備えられておらず、エンジン１の動的な挙動変化を補償する上では、前述のように構成された適応制御器１８が好適である。
【０２７３】
以上が、本実施形態で採用した適応制御器１８の詳細である。
【０２７４】
尚、適応制御器１８と共に、大局的フィードバック制御部１５に具備したＰＩＤ制御器１７は、一般のＰＩＤ制御と同様に、ＬＡＦセンサ５の出力ＫＡＣＴと、その目標空燃比ＫＣＭＤとの偏差から、比例項（Ｐ項）、積分項（Ｉ項）及び微分項（Ｄ項）を算出し、それらの各項の総和をフィードバック操作量ＫＬＡＦとして算出する。この場合、本実施形態では、積分項（Ｉ項）の初期値を“１”とすることで、ＬＡＦセンサ５の出力ＫＡＣＴが目標空燃比ＫＣＭＤに一致する状態において、フィードバック操作量ＫＬＡＦが“１”になるようにし、該フィードバック操作量ＫＬＡＦをそのまま燃料噴射量を補正するための前記フィードバック補正係数ＫＦＢ  として使用することができるようしている。また、比例項、積分項及び微分項のゲインは、エンジン１の回転数と吸気圧とから、あらかじめ定められたマップを用いて決定される。
【０２７５】
また、大局的フィードバック制御部１５の前記切換部２０は、エンジン１の冷却水温の低温時や、高速回転運転時、吸気圧の低圧時等、エンジン１の燃焼が不安定なものとなりやすい場合、あるいは、目標空燃比ＫＣＭＤの変化が大きい時や、空燃比のフィードバック制御の開始直後等、これに応じたＬＡＦセンサ６の出力ＫＡＣＴが、そのＬＡＦセンサ５の応答遅れ等によって、信頼性に欠ける場合、あるいは、エンジン１のアイドル運転時のようエンジン１の運転状態が極めて安定していて、適応制御器１８による高ゲイン制御を必要としない場合には、ＰＩＤ制御器１７により求められるフィードバック操作量ＫＬＡＦを燃料噴射量を補正するためのフィードバック補正量数ＫＦＢ  として出力する。そして、上記のような場合以外の状態で、適応制御器１８により求められるフィードバック操作量ＫＳＴＲを目標空燃比ＫＣＭＤで除算してなるフィードバック操作量ｋｓｔｒを燃料噴射量を補正するためのフィードバック補正係数ＫＦＢ  として出力する。これは、適応制御器１８が、高ゲイン制御で、ＬＡＦセンサ５の出力ＫＡＣＴを急速に目標空燃比ＫＣＭＤに収束させるように機能するため、上記のようにエンジン１の燃焼が不安定となったり、ＬＡＦセンサ５の出力ＫＡＣＴの信頼性に欠ける等の場合に、適応制御器１８のフィードバック操作量ＫＳＴＲを用いると、かえって空燃比の制御が不安定なものとなる虞れがあるからである。
【０２７６】
このような切換部２０の作動は、例えば特開平８−１０５３４５号公報に本願出願人が詳細に開示しているので、ここでは、さらなる説明を省略する。
【０２７７】
次に本実施形態の装置の作動の詳細を説明する。
【０２７８】
まず、図６のフローチャートを参照して、前記機関側制御ユニット７ｂによるエンジン１の空燃比の操作のためのエンジン１の各気筒毎の出力燃料噴射量＃ｎＴｏｕｔ（ｎ＝１，２，３，４）の算出処理について説明する。機関側制御ユニット７ｂは、各気筒毎の出力燃料噴射量＃ｎＴｏｕｔ  の算出処理をエンジン１のクランク角周期と同期した制御サイクルで次のように行う。
【０２７９】
機関側制御ユニット７ｂは、まず、前記ＬＡＦセンサ５及びＯ２  センサ６を含む各種センサの出力を読み込む（ＳＴＥＰａ）。この場合、ＬＡＦセンサ５の出力ＫＡＣＴ及びＯ２  センサ６の出力ＶＯ２／ＯＵＴ  はそれぞれ過去に得られたものを含めて時系列的に図示しないメモリに記憶保持される。
【０２８０】
次いで、基本燃料噴射量算出部８によって、前述の如くエンジン１の回転数ＮＥ及び吸気圧ＰＢに対応する燃料噴射量をスロットル弁の有効開口面積に応じて補正してなる基本燃料噴射量Ｔｉｍが求められ（ＳＴＥＰｂ）、さらに、第１補正係数算出部９によって、エンジン１の冷却水温やキャニスタのパージ量等に応じた第１補正係数ＫＴＯＴＡＬが算出される（ＳＴＥＰｃ）。
【０２８１】
次いで、機関側制御ユニット７ｂは、排気側制御ユニット７ａの目標空燃比生成処理部２８で生成される目標空燃比ＫＣＭＤをエンジン１の空燃比を操作するために使用するか否か（ここでは、目標空燃比生成処理部２８のＯＮ／ＯＦＦという）の判別処理を行って、目標空燃比生成処理部２８のＯＮ／ＯＦＦを規定するフラグｆ／ｐｒｉｓｍ／ｏｎの値を設定する（ＳＴＥＰｄ）。このフラグｆ／ｐｒｉｓｍ／ｏｎの値は、それが「０」のとき、目標空燃比生成処理部２８で生成される目標空燃比ＫＣＭＤを使用しないこと（ＯＦＦ）を意味し、「１」のとき、目標空燃比生成処理部２８で生成される目標空燃比ＫＣＭＤを使用すること（ＯＮ）を意味する。
【０２８２】
上記の判別処理では、図７に示すように、Ｏ２  センサ６及びＬＡＦセンサ５が活性化しているか否かの判別が行われる（ＳＴＥＰｄ−１，ｄ−２）。このとき、いずれかが活性化していない場合には、目標空燃比生成処理部２８の処理に使用するＯ２  センサ６及びＬＡＦセンサ５の検出データを精度よく得ることができないため、フラグｆ／ｐｒｉｓｍ／ｏｎの値を「０」にセットする（ＳＴＥＰｄ−１０）。
【０２８３】
また、エンジン１のリーン運転中（希薄燃焼運転）であるか否か（ＳＴＥＰｄ−３）、エンジン１の始動直後の触媒装置３の早期活性化を図るためにエンジン１の点火時期が遅角側に制御されているか否か、エンジン１のスロットル弁が全開であるか否か、及びエンジン１のフュエルカット中（燃料供給の停止中）であるか否かの判別が行われる（ＳＴＥＰｄ−４〜ｄ−６）。そして、これらのいずれかの条件が成立している場合には、目標空燃比生成処理部２８で生成される目標空燃比ＫＣＭＤを使用してエンジン１の空燃比を操作することは好ましくないので、フラグｆ／ｐｒｉｓｍ／ｏｎの値を「０」にセットする（ＳＴＥＰｄ−１０）。
【０２８４】
さらに、エンジン１の回転数ＮＥ及び吸気圧ＰＢがそれぞれ所定範囲内（正常な範囲内）にあるか否かの判別が行われ（ＳＴＥＰｄ−７，ｄ−８）、いずれかが所定範囲内にない場合には、目標空燃比生成処理部２８で生成される目標空燃比ＫＣＭＤを使用してエンジン１の空燃比を操作することは好ましくないので、フラグｆ／ｐｒｉｓｍ／ｏｎの値を「０」にセットする（ＳＴＥＰｄ−１０）。
【０２８５】
そして、ＳＴＥＰｄ−１，ｄ−２，ｄ−７，ｄ−８の条件が満たされ、且つ、ＳＴＥＰｄ−３，ｄ−４，ｄ−５，ｄ−６の条件が成立していない場合に、目標空燃比生成処理部２８で生成される目標空燃比ＫＣＭＤをエンジン１の空燃比の操作に使用すべく、フラグｆ／ｐｒｉｓｍ／ｏｎの値を「１」にセットする（ＳＴＥＰｄ−９）。
【０２８６】
尚、ＳＴＥＰｄ−１０でフラグｆ／ｐｒｉｓｍ／ｏｎの値を「０」にセットしたときには、フラグｆ／ｐｒｉｓｍ／ｏｎの値が「０」から「１」に切り替わる時点からの経過時間、すなわち、目標空燃比生成処理部２８で生成される目標空燃比ＫＣＭＤによるエンジン１の空燃比の操作（Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  の目標値ＶＯ２／ＴＡＲＧＥＴへの収束制御）を開始してからの経過時間を計時するタイマカウンタｔｍ／ｓｔｂ（カントダウンタイマ）の値を所定の初期値ＴＭＳＴＢ  に設定して該タイマカウンタｔｍ／ｓｔｂを起動する（ＳＴＥＰｄ−１１）。このタイマｔｍ／ｓｔｂは、その値が一定周期（排気側制御ユニット７ａの制御サイクルの周期よりも長い周期）でカウントダウンされていくものである。そして、上記初期値ＴＭＳＴＢ  は、後述するスライディングモード制御器２７の安定性の判断を禁止する期間に相当するものである。
【０２８７】
図７に戻って、上記のようにフラグｆ／ｐｒｉｓｍ／ｏｎの値を設定した後、機関側制御ユニット７ｂは、フラグｆ／ｐｒｉｓｍ／ｏｎの値を判断し（ＳＴＥＰｅ）、ｆ／ｐｒｉｓｍ／ｏｎ＝１である場合には、目標空燃比生成処理部２８で生成された最新の目標空燃比ＫＣＭＤを読み込む（ＳＴＥＰｆ）。また、ｆ／ｐｒｉｓｍ／ｏｎ＝０である場合には、目標空燃比ＫＣＭＤを所定値に設定する（ＳＴＥＰｇ）。この場合、目標空燃比ＫＣＭＤとして設定する所定値は、例えばエンジン１の回転数ＮＥや吸気圧ＰＢからあらかじめ定めたマップ等を用いて決定する。
【０２８８】
次いで、機関側制御ユニット７ｂは、前記局所的フィードバック制御部１６において、前述の如くオブザーバ２１によりＬＡＦセンサ５の出力ＫＡＣＴから推定した各気筒毎の実空燃比＃ｎＡ／Ｆ  に基づき、ＰＩＤ制御器２２により、各気筒毎のばらつきを解消するようにフィードバック補正係数＃ｎＫＬＡＦを算出する（ＳＴＥＰｈ）。さらに、大局的フィードバック制御部１５により、フィードバック補正係数ＫＦＢ  を算出する（ＳＴＥＰｉ）。
【０２８９】
この場合、大局的フィードバック制御部１５は、前述の如く、ＰＩＤ制御器１７により求められるフィードバック操作量ＫＬＡＦと、適応制御器１８により求められるフィードバック操作量ＫＳＴＲを目標空燃比ＫＣＭＤで除算してなるフィードバック操作量ｋｓｔｒとから、切換部２０によってエンジン１の運転状態等に応じていずれか一方のフィードバック操作量ＫＬＡＦ又はｋｓｔｒを選択し（通常的には適応制御器１８側のフィードバック操作量ｋｓｔｒを選択する）、それを燃料噴射量を補正するためのフィードバック補正量数ＫＦＢ  として出力する。
【０２９０】
尚、フィードバック補正係数ＫＦＢ  を、ＰＩＤ制御器１７側のフィードバック操作量ＫＬＡＦから適応制御器１８側のフィードバック操作量ｋｓｔｒに切り換える際には、該補正係数ＫＦＢ  の急変を回避するために、適応制御器１８は、その切換えの際の制御サイクルに限り、補正係数ＫＦＢ  を前回の補正係数ＫＦＢ  （＝ＫＬＡＦ）に保持するように、フィードバック操作量ＫＳＴＲを求める。同様に、補正係数ＫＦＢ  を、適応制御器１８側のフィードバック操作量ｋｓｔｒからＰＩＤ制御器１７側のフィードバック操作量ＫＬＡＦに切り換える際には、ＰＩＤ制御器１７は、自身が前回の制御サイクルで求めたフィードバック操作量ＫＬＡＦが、前回の補正係数ＫＦＢ  （＝ｋｓｔｒ）であったものとして、今回の補正係数ＫＬＡＦを算出する。
【０２９１】
上記のようにしてフィードバック補正係数ＫＦＢ  が算出された後、さらに、前記ＳＴＥＰｆあるいはＳＴＥＰｇで決定された目標空燃比ＫＣＭＤに応じた第２補正係数ＫＣＭＤＭ  が第２補正係数算出部１０により算出される（ＳＴＥＰｊ）。
【０２９２】
次いで、機関側制御ユニット７ｂは、前述のように求められた基本燃料噴射量Ｔｉｍに、第１補正係数ＫＴＯＴＡＬ、第２補正係数ＫＣＭＤＭ  、フィードバック補正係数ＫＦＢ  、及び各気筒毎のフィードバック補正係数＃ｎＫＬＡＦを乗算することで、各気筒毎の出力燃料噴射量＃ｎＴｏｕｔ  を求める（ＳＴＥＰｋ）。そして、この各気筒毎の出力燃料噴射量＃ｎＴｏｕｔ  が、付着補正部２３によって、エンジン１の吸気管の壁面付着を考慮した補正を施された後（ＳＴＥＰｍ）、エンジン１の図示しない燃料噴射装置に出力される（ＳＴＥＰｎ）。
【０２９３】
そして、エンジン１にあっては、各気筒毎の出力燃料噴射量＃ｎＴｏｕｔ  に従って、各気筒への燃料噴射が行われる。
【０２９４】
以上のような各気筒毎の出力燃料噴射量＃ｎＴｏｕｔ  の算出及びそれに応じたエンジン１への燃料噴射がエンジン１のクランク角周期に同期した制御サイクルで逐次行われ、これによりＬＡＦセンサ５の出力ＫＡＣＴ（空燃比の検出値）が、目標空燃比ＫＣＭＤに収束するように、エンジン１の空燃比が操作される。この場合、特に、フィードバック補正係数ＫＦＢ  として、適応制御器１８側のフィードバック操作量ｋｓｔｒを使用している状態では、エンジン１の運転状態の変化や特性変化等の挙動変化に対して、高い安定性を有して、ＬＡＦセンサ５の出力ＫＡＣＴが迅速に目標空燃比ＫＣＭＤに収束制御される。また、エンジン１が有する応答遅れの影響も適正に補償される。
【０２９５】
一方、前述のようなエンジン１の空燃比の操作と並行して、前記排気側制御ユニット７ａの目標空燃比生成処理部２８は、一定周期の制御サイクルで図８のフローチャートに示すメインルーチン処理を行う。
【０２９６】
すなわち、図８のフローチャートを参照して、目標空燃比生成処理部２８は、まず、自身の演算処理（前記同定器２５、推定器２６、及びスライディングモード制御器２７の演算処理）を実行するか否かの判別処理を行って、その実行の可否を規定するフラグｆ／ｐｒｉｓｍ／ｃａｌ  の値を設定する（ＳＴＥＰ１）。このフラグｆ／ｐｒｉｓｍ／ｃａｌ  の値は、それが「０」のとき、目標空燃比生成処理部２８における演算処理を行わないことを意味し、「１」のとき、目標空燃比生成処理部２８における演算処理を行うことを意味する。
【０２９７】
上記の判別処理は、図９のフローチャートに示すように行われる。
【０２９８】
すなわち、Ｏ２  センサ６及びＬＡＦセンサ５が活性化しているか否かの判別が行われる（ＳＴＥＰ１−１，１−２）。このとき、いずれかが活性化していない場合には、目標空燃比生成処理部２８の演算処理に使用するＯ２  センサ６及びＬＡＦセンサ５の検出データを精度よく得ることができないため、フラグｆ／ｐｒｉｓｍ／ｃａｌ  の値を「０」にセットする（ＳＴＥＰ１−６）。さらにこのとき、同定器２５の後述する初期化を行うために、その初期化を行うか否かをそれぞれ「１」、「０」で表すフラグｆ／ｉｄ／ｒｅｓｅｔの値を「１」にセットする（ＳＴＥＰ１−７）。
【０２９９】
また、エンジン１のリーン運転中（希薄燃焼運転）であるか否か、及びエンジン１の始動直後の触媒装置３の早期活性化を図るためにエンジン１の点火時期が遅角側に制御されているか否かの判別が行われる（ＳＴＥＰ１−３，１−４）。これらのいずれかの条件が成立している場合には、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  を目標値ＶＯ２／ＴＡＲＧＥＴに収束させるような目標空燃比ＫＣＭＤを生成しても、それをエンジン１の燃料制御に使用することはないので、フラグｆ／ｐｒｉｓｍ／ｃａｌ  の値を「０」にセットする（ＳＴＥＰ１−６）。さらに同定器２５の初期化を行うために、フラグｆ／ｉｄ／ｒｅｓｅｔの値を「１」にセットする（ＳＴＥＰ１−７）。
【０３００】
そして、ＳＴＥＰ１−１，１−２の条件が満たされ、且つＳＴＥＰ１−３，１−４の条件が成立していない場合には、フラグｆ／ｐｒｉｓｍ／ｃａｌ  の値を「１」にセットする（ＳＴＥＰ１−５）。
【０３０１】
図８に戻って、上記のような判別処理を行った後、目標空燃比生成処理部２８は、さらに、同定器２５による前記ゲイン係数ａ１，ａ２，ｂ１の同定処理（同定値の更新処理）を実行するか否かの判別処理を行って、その実行の可否をそれぞれ「１」、「０」で表すフラグｆ／ｉｄ／ｃａｌの値を設定する（ＳＴＥＰ２）。
【０３０２】
このＳＴＥＰ２の判別処理では、エンジン１のスロットル弁が全開であるか否か、及びエンジン１のフュエルカット中であるか否かの判別が行われる。これらのいずれかの条件が成立している場合には、前記ゲイン係数ａ１，ａ２，ｂ１を適正に同定することが困難であるため、フラグｆ／ｉｄ／ｃａｌの値を「０」にセットする。そして、上記のいずれの条件も成立していない場合には、同定器２５による前記ゲイン係数ａ１，ａ２，ｂ１の同定処理（同定値の更新処理）を実行すべくフラグｆ／ｉｄ／ｃａｌの値を「１」にセットする。
【０３０３】
図８に戻って、目標空燃比生成処理部２８は、次に、前記減算処理部１２，１３により、それぞれ最新の前記偏差出力ｋａｃｔ（ｋ）  （＝ＫＡＣＴ−ＦＬＡＦ／ＢＡＳＥ  ）及びＶＯ２（ｋ）（＝ＶＯ２／ＯＵＴ  −ＶＯ２／ＴＡＲＧＥＴ）を算出する（ＳＴＥＰ３）。この場合、減算処理部１２，１３は、前記図８のＳＴＥＰａにおいて取り込まれて図示しないメモリに記憶されたＬＡＦセンサ５の出力ＫＡＣＴ及びＯ２  センサ６の出力ＶＯ２／ＯＵＴ  の時系列データの中から、最新のものを選択して前記偏差出力ｋａｃｔ（ｋ）  及びＶＯ２（ｋ）を算出する。また、偏差出力ｋａｃｔ（ｋ）  の算出に必要な空燃比基準値ＦＬＡＦ／ＢＡＳＥ  は、基準値設定部１１によって後述の如く設定される最新のものを用いる。そして、これらの偏差出力ｋａｃｔ（ｋ）  及びＶＯ２（ｋ）のデータは、排気側制御ユニット７ａ内において、過去に算出したものを含めて時系列的に図示しないメモリに記憶保持される。
【０３０４】
次いで、目標空燃比生成処理部２８は、前記ＳＴＥＰ１で設定されたフラグｆ／ｐｒｉｓｍ／ｃａｌ  の値を判断する（ＳＴＥＰ４）。このとき、ｆ／ｐｒｉｓｍ／ｃａｌ  ＝０である場合、すなわち、目標空燃比生成処理部２８の演算処理を行わない場合には、目標空燃比ＫＣＭＤを決定するための前記指令偏差空燃比ｋｃｍｄの値を強制的に所定値に設定する（ＳＴＥＰ１３）。この場合、該所定値は、例えばあらかじめ定めた固定値（例えば「０」）あるいは前回の制御サイクルで決定した指令偏差空燃比ｋｃｍｄの値とする。尚、このように指令偏差空燃比ｋｃｍｄを所定値とした場合において、目標空燃比生成処理部２８は、その所定値の指令偏差空燃比ｋｃｍｄに、前記加算処理部３１で前記空燃比基準値ＦＬＡＦ／ＢＡＳＥ  （基準値設定部１１で設定された最新のもの）を加算することで、今回の制御サイクルにおける目標空燃比ＫＣＭＤを決定する（ＳＴＥＰ１１）。さらに、基準値設定部１１により空燃比基準値ＦＬＡＦ／ＢＡＳＥ  の後述する設定処理を行った後（ＳＴＥＰ１２）、今回の制御サイクルの処理を終了する。
【０３０５】
一方、ＳＴＥＰ４の判断で、ｆ／ｐｒｉｓｍ／ｃａｌ  ＝１である場合、すなわち、目標空燃比生成処理部２８の演算処理を行う場合には、目標空燃比生成処理部２８は、まず、前記同定器２５による演算処理を行う（ＳＴＥＰ５）。
【０３０６】
この同定器２５による演算処理は図１０のフローチャートに示すように行われる。
【０３０７】
すなわち、同定器２５は、まず、前記ＳＴＥＰ２で設定されたフラグｆ／ｉｄ／ｃａｌの値を判断する（ＳＴＥＰ５−１）。このときｆ／ｉｄ／ｃａｌ＝０であれば（エンジン１のスロットル弁が全開状態であるか、もしくはエンジン１のフュエルカット中の場合）、前述の通り同定器２５によるゲイン係数ａ１，ａ２，ｂ１の同定処理を行わないので、直ちに図９のメインルーチンに復帰する。
【０３０８】
一方、ｆ／ｉｄ／ｃａｌ＝１であれば、同定器２５は、さらに該同定器２５の初期化に係わる前記フラグｆ／ｉｄ／ｒｅｓｅｔの値（これは、前記ＳＴＥＰ１でその値が設定される）を判断し（ＳＴＥＰ５−２）、ｆ／ｉｄ／ｒｅｓｅｔ＝１である場合には、同定器２５の初期化を行う（ＳＴＥＰ５−３）。この初期化では、前記同定ゲイン係数ａ１ハット，ａ２ハット，ｂ１ハットの各値があらかじめ定めた初期値に設定され（式（４）の同定ゲイン係数ベクトルΘの初期化）、また、前記式（９）の行列Ｐ（対角行列）の各成分があらかじめ定めた初期値に設定される。さらに、フラグｆ／ｉｄ／ｒｅｓｅｔの値は「０」にリセットされる。
【０３０９】
次いで、同定器２５は、現在の同定ゲイン係数ａ１（ｋ−１）  ハット，ａ２（ｋ−１）  ハット，ｂ１（ｋ−１）  ハットを用いて表される排気系モデル（前記式（３）参照）の出力である前記同定偏差出力ＶＯ２（ｋ）ハットを、前記ＳＴＥＰ３で制御サイクル毎に算出される偏差出力ＶＯ２  及びｋａｃｔの過去のデータＶＯ２（ｋ−１），ＶＯ２（ｋ−２），ｋａｃｔ（ｋ−ｄ−１）  と、上記同定ゲイン係数ａ１（ｋ−１）  ハット，ａ２（ｋ−１）  ハット，ｂ１（ｋ−１）  ハットの値とを用いて前記式（３）あるいはこれと等価の前記式（６）により算出する（ＳＴＥＰ５−４）。
【０３１０】
さらに同定器２５は、新たな同定ゲイン係数ａ１ハット，ａ２ハット，ｂ１ハットを決定する際に使用する前記ベクトルＫθ（ｋ）  を式（９）により算出した後（ＳＴＥＰ５−５）、前記同定誤差ｉｄ／ｅ（排気系モデル上でのＯ２  センサ６の同定偏差出力ＶＯ２  ハットと、実際の偏差出力ＶＯ２  との偏差。式（７）参照）を算出する（ＳＴＥＰ５−６）。
【０３１１】
ここで、ＳＴＥＰ５−６で求める同定誤差ｉｄ／ｅは、基本的には、前記式（７）の演算により算出すればよいのであるが、本実施形態では、前記ＳＴＥＰ３（図８参照）で制御サイクル毎に算出する偏差出力ＶＯ２  と、前記ＳＴＥＰ５−４で制御サイクル毎に算出する同定偏差出力ＶＯ２  ハットとから式（７）の演算により得られた値（＝ＶＯ２  −ＶＯ２  ハット）に、さらにローパス特性のフィルタリングを施すことで同定誤差ｉｄ／ｅを求める。
【０３１２】
これは、触媒装置３を含む対象排気系Ｅは一般にローパス特性を有するため、前記排気系モデルのゲイン係数ａ１，ａ２，ｂ１を適正に同定する上では、対象排気系Ｅの低周波数側の挙動を重視することが好ましいからである。
【０３１３】
尚、このようなフィルタリングは、結果的に、偏差出力ＶＯ２  及び同定偏差出力ＶＯ２  ハットの両者に同じローパス特性のフィルタリングが施されていればよく、例えば偏差出力ＶＯ２  及び同定偏差出力ＶＯ２  ハットにそれぞれ各別にフィルタリングを施した後に式（７）の演算を行って同定誤差ｉｄ／ｅを求めるようにしてもよい。また、前記のフィルタリングは、例えばディジタルフィルタの一手法である移動平均処理によって行われる。
【０３１４】
上記のようにして同定誤差ｉｄ／ｅを求めた後、同定器２５は、この同定誤差ｉｄ／ｅと、前記ＳＴＥＰ５−５で算出したＫθとを用いて前記式（８）により新たな同定ゲイン係数ベクトルΘ（ｋ）  、すなわち、新たな同定ゲイン係数ａ１（ｋ）  ハット，ａ２（ｋ）  ハット，ｂ１（ｋ）  ハットを算出する（ＳＴＥＰ５−７）。
【０３１５】
このようにして新たな同定ゲイン係数ａ１（ｋ）  ハット，ａ２（ｋ）  ハット，ｂ１（ｋ）  ハットを算出した後、同定器２５は、以下に説明する如く、同定ゲイン係数ａ１ハット，ａ２ハット，ｂ１ハット（同定ゲイン係数ベクトルΘの要素）の値を、所定の条件を満たすように制限する処理を行う（ＳＴＥＰ５−８）。
【０３１６】
この場合、同定ゲイン係数ａ１ハット、ａ２ハット、ｂ１ハットの値を制限するための前記所定の条件は、同定ゲイン係数ａ１ハット、ａ２ハットの値の組み合わせを所定の組み合わせに制限するための条件（以下、第１制限条件という）と、同定ゲイン係数ｂ１ハットの値を制限するための条件（以下、第２制限条件という）とがある。
【０３１７】
ここで、これらの第１及び第２制限条件、並びにＳＴＥＰ５−８の具体的な処理内容を説明する前に、同定ゲイン係数ａ１ハット、ａ２ハット、ｂ１ハットの値を制限する理由を説明しておく。
【０３１８】
本願発明者等の知見によれば、本実施形態の装置において、同定ゲイン係数ａ１ハット、ａ２ハット、ｂ１ハットの値を特に制限しない場合には、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  がその目標値ＶＯ２／ＴＡＲＧＥＴに安定して制御されている状態で、スライディングモード制御器２７により求められる前記要求偏差空燃比ｕｓｌ、ひいては目標空燃比ＫＣＭＤが平滑的な時間変化を呈する状況と、高周波振動的な時間変化を呈する状況との二種類の状況が生じることが判明した。この場合、いずれの状況においても、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  をその目標値ＶＯ２／ＴＡＲＧＥＴに制御する上では支障がないものの、目標空燃比ＫＣＭＤが高周波振動的な時間変化を呈する状況は、エンジン１の円滑な運転を行う上では、あまり好ましくない。
【０３１９】
そして、上記の現象について本願発明者等が検討したところ、前記要求偏差空燃比ｕｓｌあるいは目標空燃比ＫＣＭＤが平滑的なものとなるか高周波振動的なものとなるかは、同定器２５により同定するゲイン係数ａ１，ａ２の値の組み合わせや、ゲイン係数ｂ１の値の影響を受けることが判明した。
【０３２０】
このために、本実施形態では、前記第１制限条件と第２制限条件とを適切に設定し、これらの条件により、同定ゲイン係数ａ１ハット、ａ２ハットの値の組み合わせや、同定ゲイン係数ｂ１ハットの値を適切に制限することで、目標空燃比ＫＣＭＤが高周波振動的なものとなるような状況を排除する。
【０３２１】
この場合、本実施形態では前記第１制限条件及び第２制限条件は次のように設定する。
【０３２２】
まず、同定ゲイン係数ａ１ハット、ａ２ハットの値の組み合わせを制限するための第１制限条件に関し、本願発明者等の検討によれば、平滑的で安定した要求偏差空燃比ｕｓｌや目標空燃比ＫＣＭＤを得るためには、ゲイン係数ａ１，ａ２の値により定まる前記式（１２）〜（１４）の係数値α１  ，α２  、すなわち、前記推定器２６が前記推定偏差出力ＶＯ２（ｋ＋ｄ）バーを求めるために使用する前記係数値α１  ，α２  （これらの係数値α１  ，α２  は前記式（１２）中で定義した行列Ａの巾乗Ａｄ  の第１行第１列成分及び第１行第２列成分である）の組み合わせが密接に関連している。
【０３２３】
具体的には、図１１に示すように係数値α１  ，α２  をそれぞれ成分とする座標平面を設定したとき、係数値α１  ，α２  の組により定まる該座標平面上の点が図１１の斜線を付した領域（三角形Ｑ１  Ｑ２  Ｑ３  で囲まれた領域（境界を含む）。以下、この領域を推定係数安定領域という）に存するとき、要求偏差空燃比ｕｓｌや目標空燃比ＫＣＭＤが平滑的で安定したものとなりやすい。
【０３２４】
従って、同定器２５により同定するゲイン係数ａ１  ，ａ２  の値、すなわち同定ゲイン係数ａ１ハット、ａ２ハットの値の組み合わせは、これらの値により定まる係数値α１  ，α２  の組に対応する図１１の座標平面上の点が上記推定係数安定領域内に存するように制限することが好ましい。
【０３２５】
尚、図１１において、上記推定係数安定領域を含んで座標平面上に表した三角形領域Ｑ１  Ｑ４  Ｑ３  は、次式（４０）により定義される系、すなわち、前記式（１２）の右辺のＶＯ２（ｋ）及びＶＯ２（ｋ−１）をそれぞれＶＯ２（ｋ）バー及びＶＯ２（ｋ−１）バー（これらのＶＯ２（ｋ）バー及びＶＯ２（ｋ−１）バーは、それぞれ、推定器２６により制御サイクル毎に求められる推定偏差出力及びその１制御サイクル前に求められる推定偏差出力を意味する）により置き換えてなる式により定義される系が、理論上、安定となるような係数値α１  ，α２  の組み合わせを規定する領域である。
【０３２６】
【数４０】
0003621839.tif 000041
【０３２７】
すなわち、式（４０）により表される系が安定となる条件は、その系の極（これは、次式（４１）により与えられる）が複素平面上の単位円内に存在することである。
【０３２８】
【数４１】
0003621839.tif 000042
【０３２９】
そして、図１１の三角形領域Ｑ１  Ｑ４  Ｑ３  は、上記の条件を満たす係数値α１  ，α２  の組み合わせを規定する領域である。従って、前記推定係数安定領域は、前記式（４０）により表される系が安定となるような係数値α１  ，α２  の組み合わせのうち、α１  ≧０となる組み合わせとなる領域である。
【０３３０】
一方、係数値α１  ，α２  は、ゲイン係数ａ１  ，ａ２  の値の組み合わせにより定まるので、逆算的に、係数値α１  ，α２  の組み合わせからゲイン係数ａ１  ，ａ２  の値の組み合わせも定まる。従って、係数値α１  ，α２  の好ましい組み合わせを規定する図１１の推定係数安定領域は、ゲイン係数ａ１，ａ２を座標成分とする図１２の座標平面上に変換することができる。この変換を行うと、該推定係数安定領域は、図１２の座標平面上では、例えば図１２の仮想線で囲まれた領域（下部に凹凸を有する大略三角形状の領域。以下、同定係数安定領域という）に変換される。すなわち、ゲイン係数ａ１，ａ２の値の組により定まる図１２の座標平面上の点が、同図の仮想線で囲まれた同定係数安定領域に存するとき、それらのゲイン係数ａ１，ａ２の値により定まる係数値α１  ，α２  の組に対応する図１１の座標平面上の点が前記推定係数安定領域内に存することとなる。
【０３３１】
従って、同定器２５により求める同定ゲイン係数ａ１ハット、ａ２ハットの値を制限するための前記第１制限条件は、基本的には、それらの値により定まる図１２の座標平面上の点が前記同定係数安定領域に存することとして設定することが好ましい。
【０３３２】
但し、図１２に仮想線で示した同定係数安定領域の境界の一部（図の下部）は凹凸を有する複雑な形状を呈しているため、実用上、同定ゲイン係数ａ１ハット、ａ２ハットの値により定まる図１２の座標平面上の点を同定係数安定領域内に制限するための処理が煩雑なものとなりやすい。
【０３３３】
そこで、本実施形態では、同定係数安定領域を、例えば図１２の実線で囲まれた四角形Ｑ５  Ｑ６  Ｑ７  Ｑ８  の領域（境界を直線状に形成した領域。以下、同定係数制限領域という）により大略近似する。この場合、この同定係数制限領域は、図示の如く、｜ａ１｜＋ａ２＝１なる関数式により表される折れ線（線分Ｑ５  Ｑ６  及び線分Ｑ５  Ｑ８  を含む線）と、ａ１＝Ａ１Ｌ  （Ａ１Ｌ  ：定数）なる定値関数式により表される直線（線分Ｑ６  Ｑ７  を含む直線）と、ａ２＝Ａ２Ｌ  （Ａ２Ｌ  ：定数）なる定値関数式により表される直線（線分Ｑ７  Ｑ８  を含む直線）とにより囲まれた領域である。そして、同定ゲイン係数ａ１ハット、ａ２ハットの値を制限するための前記第１制限条件を、それらの値により定まる図１２の座標平面上の点が上記同定係数制限領域に存することとして設定する。この場合、同定係数制限領域の下辺部の一部は、前記同定係数安定領域を逸脱しているものの、現実には同定器２５が求める同定ゲイン係数ａ１ハット、ａ２ハットの値により定まる点は上記の逸脱領域には入らないことを実験的に確認している。従って、上記の逸脱領域があっても、実用上は支障がない。
【０３３４】
尚、このような同定係数制限領域の設定の仕方は例示的なもので、該同定係数制限領域は、基本的には、前記同定係数安定領域に等しいか、もしくは該同定係数安定領域を大略近似し、あるいは、同定係数制限領域の大部分もしくは全部が同定係数安定領域に属するように設定すれば、どのような形状のものに設定してもよい。つまり、同定係数制限領域は、同定ゲイン係数ａ１ハット、ａ２ハットの値の制限処理の容易さ、実際上の制御性等を考慮して種々の設定が可能である。例えば本実施形態では、同定係数制限領域の上半部の境界を｜ａ１｜＋ａ２＝１なる関数式により規定しているが、この関数式を満たすゲイン係数ａ１，ａ２の値の組み合わせは、前記式（４１）により与えられる系の極が複素平面上の単位円周上に存するような理論上の安定限界の組み合わせである。従って、同定係数制限領域の上半部の境界を例えば｜ａ１｜＋ａ２＝ｒ（但し、ｒは上記の安定限界に対応する「１」よりも若干小さい値で、例えば０．９９）なる関数式により規定し、制御の安定性をより高めるようにしてもよい。
【０３３５】
また、前記同定係数制限領域の基礎となる図１２の同定係数安定領域も例示的なものであり、図１１の推定係数安定領域に対応する同定係数安定領域は、係数値α１  ，α２  の定義から明らかなように（式（１２）を参照）、前記合計無駄時間ｄ（より正確にはその設定値）の影響も受け、該合計無駄時間ｄの値によって、同定係数安定領域の形状が変化する。この場合、同定係数安定領域がどのような形状のものであっても、前記同定係数制限領域は、同定係数安定領域の形状に合わせて前述の如く設定すればよい。
【０３３６】
次に、同定器２５が同定する前記ゲイン係数ｂ１  の値、すなわち同定ゲイン係数ｂ１  ハットの値を制限するための前記第２制限条件は本実施形態では次のように設定する。
【０３３７】
すなわち、本願発明者等の知見によれば、前記目標空燃比ＫＣＭＤの時間的変化が高周波振動的なものとなる状況は、同定ゲイン係数ｂ１  ハットの値が過大もしくは過小となるような場合にも生じ易い。そこで、本実施形態では、同定ゲイン係数ｂ１  ハットの値の上限値Ｂ１Ｈ  及び下限値Ｂ１Ｌ  （Ｂ１Ｈ  ＞Ｂ１Ｌ  ＞０）をあらかじめ実験やシミュレーションを通じて定めておく。そして、前記第２制限条件を、同定ゲイン係数ｂ１  ハットの値が上限値Ｂ１Ｈ  以下で且つ下限値Ｂ１Ｌ  以上の値になること（Ｂ１Ｌ  ≦ｂ１  ハット≦Ｂ１Ｈ  の不等式を満たすこと）として設定する。
【０３３８】
以上説明した如く設定した第１制限条件及び第２制限条件により同定ゲイン係数ａ１ハット、ａ２ハット、ｂ１ハットの値を制限するための前記ＳＴＥＰ５−８の処理は、具体的には次のように行われる。
【０３３９】
すなわち、図１３のフローチャートを参照して、同定器２５は、前記図１０のＳＴＥＰ５−７で前述の如く求めた同定ゲイン係数ａ１（ｋ）  ハット、ａ２（ｋ）  ハット、ｂ１（ｋ）  ハットについて、まず、同定ゲイン係数ａ１（ｋ）  ハット、ａ２（ｋ）  ハットの値の組み合わせを前記第１制限条件により制限するための処理をＳＴＥＰ５−８−１〜５−８−８で行う。
【０３４０】
具体的には、同定器２５は、まず、ＳＴＥＰ５−８で求めた同定ゲイン係数ａ２（ｋ）  ハットの値が、前記同定係数制限領域におけるゲイン係数ａ２の下限値Ａ２Ｌ  （図１２参照）以上の値であるか否かを判断する（ＳＴＥＰ５−８−１）。
【０３４１】
このとき、ａ２（ｋ）  ハット＜Ａ２Ｌ  であれば、同定ゲイン係数ａ１（ｋ）  ハット、ａ２（ｋ）  ハットの値の組により定まる図１２の座標平面上の点（以下、この点を（ａ１（ｋ）  ハット，ａ２（ｋ）  ハット）で表す）が同定係数制限領域から逸脱しているので、ａ２（ｋ）  ハットの値を強制的に上記下限値Ａ２Ｌ  に変更する（ＳＴＥＰ５−８−２）。この処理により、図１２の座標平面上の点（ａ１（ｋ）  ハット，ａ２（ｋ）  ハット）は、少なくともａ２＝Ａ２Ｌ  により表される直線（線分Ｑ７  Ｑ８  を含む直線）の上側（該直線上を含む）の点に制限される。
【０３４２】
次いで、同定器２５は、ＳＴＥＰ５−７で求めた同定ゲイン係数ａ１（ｋ）  ハットの値が、前記同定係数制限領域におけるゲイン係数ａ１の下限値Ａ１Ｌ  （図１２参照）以上の値であるか否か、並びに、同定係数制限領域におけるゲイン係数ａ１の上限値Ａ１Ｈ  （図１２参照）以下の値であるか否かを順次判断する（ＳＴＥＰ５−８−３、５−８−５）。尚、同定係数制限領域におけるゲイン係数ａ１の上限値Ａ１Ｈ  は、図１２から明らかなように折れ線｜ａ１｜＋ａ２＝１（但しａ１＞０）と、直線ａ２＝Ａ２Ｌ  との交点Ｑ８  のａ１座標成分であるので、Ａ１Ｈ  ＝１−Ａ２Ｌ  である。
【０３４３】
このとき、ａ１（ｋ）  ハット＜Ａ１Ｌ  である場合、あるいは、ａ１（ｋ）  ハット＞Ａ１Ｈ  である場合には、図１２の座標平面上の点（ａ１（ｋ）  ハット，ａ２（ｋ）  ハット）が同定係数制限領域から逸脱しているので、ａ１（ｋ）  ハットの値をそれぞれの場合に応じて、強制的に上記下限値Ａ１Ｌ  あるいは上限値Ａ１Ｈ  に変更する（ＳＴＥＰ５−８−４、５−８−６）。
【０３４４】
この処理により、図１２の座標平面上の点（ａ１（ｋ）  ハット，ａ２（ｋ）  ハット）は、ａ１＝Ａ１Ｌ  により表される直線（線分Ｑ６  Ｑ７  を含む直線）と、ａ１＝Ａ１Ｈ  により表される直線（点Ｑ８  を通ってａ１軸に直行する直線）との間の領域（両直線上を含む）に制限される。
【０３４５】
尚、ＳＴＥＰ５−８−３及び５−８−４の処理と、ＳＴＥＰ５−８−５及び５−８−６の処理とは順番を入れ換えてもよい。また、前記ＳＴＥＰ５−８−１及び５−８−２の処理は、ＳＴＥＰ５−８−３〜５−８−６の処理の後に行うようにしてもよい。
【０３４６】
次いで、同定器２５は、前記ＳＴＥＰ５−８−１〜５−８−６の処理を経た今現在のａ１（ｋ）  ハット，ａ２（ｋ）  ハットの値が｜ａ１｜＋ａ２≦１なる不等式を満たすか否か、すなわち、点（ａ１（ｋ）  ハット，ａ２（ｋ）  ハット）が｜ａ１｜＋ａ２＝１なる関数式により表される折れ線（線分Ｑ５  Ｑ６  及び線分Ｑ５  Ｑ８  を含む線）の下側（折れ線上を含む）にあるか上側にあるかを判断する（ＳＴＥＰ５−８−７）。
【０３４７】
このとき、｜ａ１｜＋ａ２≦１なる不等式が成立しておれば、前記ＳＴＥＰ５−８−１〜５−８−６の処理を経たａ１（ｋ）  ハット，ａ２（ｋ）  ハットの値により定まる点（ａ１（ｋ）  ハット，ａ２（ｋ）  ハット）は、同定係数制限領域（その境界を含む）に存している。
【０３４８】
一方、｜ａ１｜＋ａ２＞１である場合は、点（ａ１（ｋ）  ハット，ａ２（ｋ）  ハット）が、同定係数制限領域からその上方側に逸脱している場合であり、この場合には、ａ２（ｋ）  ハットの値を強制的に、ａ１（ｋ）  ハットの値に応じた値（１−｜ａ１（ｋ）  ハット｜）に変更する（ＳＴＥＰ５−８−８）。換言すれば、ａ１（ｋ）  ハットの値を現状に保持したまま、点（ａ１（ｋ）  ハット，ａ２（ｋ）  ハット）を｜ａ１｜＋ａ２＝１なる関数式により表される折れ線上（同定係数制限領域の境界である線分Ｑ５  Ｑ６  上、もしくは線分Ｑ５  Ｑ８  上）に移動させる。
【０３４９】
以上のようなＳＴＥＰ５−８−１〜５−８−８の処理によって、同定ゲイン係数ａ１（ｋ）  ハット，ａ２（ｋ）  ハットの値は、それらの値により定まる点（ａ１（ｋ）  ハット，ａ２（ｋ）  ハット）が同定係数制限領域内に存するように制限される。尚、前記ＳＴＥＰ５−７で求められた同定ゲイン係数ａ１（ｋ）  ハット，ａ２（ｋ）  ハットの値に対応する点（ａ１（ｋ）  ハット，ａ２（ｋ）  ハット）が同定係数制限領域内に存する場合は、それらの値は保持される。
【０３５０】
この場合、前述の処理によって、前記排気系モデルの１次目の自己回帰項に係る同定ゲイン係数ａ１（ｋ）  ハットに関しては、その値が、同定係数制限領域における下限値Ａ１Ｌ  及び上限値Ａ１Ｈ  の間の値となっている限り、その値が強制的に変更されることはない。また、ａ１（ｋ）  ハット＜Ａ１Ｌ  である場合、あるいは、ａ１（ｋ）  ハット＞Ａ１Ｈ  である場合には、それぞれ、同定ゲイン係数ａ１（ｋ）  ハットの値は、同定係数制限領域においてゲイン係数ａ１が採りうる最小値である下限値Ａ１Ｌ  と、同定係数制限領域においてゲイン係数ａ１が採りうる最大値である下限値Ａ１Ｈ  とに強制的に変更されるので、これらの場合における同定ゲイン係数ａ１（ｋ）  ハットの値の変更量は最小なものとなる。つまり、ＳＴＥＰ５−７で求められた同定ゲイン係数ａ１（ｋ）  ハット，ａ２（ｋ）  ハットの値に対応する点（ａ１（ｋ）  ハット，ａ２（ｋ）  ハット）が同定係数制限領域から逸脱している場合には、同定ゲイン係数ａ１（ｋ）  ハットの値の強制的な変更は最小限に留められる。
【０３５１】
このようにして、同定ゲイン係数ａ１（ｋ）  ハット，ａ２（ｋ）  ハットの値を制限したのち、同定器２５は、同定ゲイン係数ｂ１（ｋ）  ハットの値を前記第２制限条件に従って制限する処理をＳＴＥＰ５−８−９〜５−８−１２で行う。
【０３５２】
すなわち、同定器２５は、前記ＳＴＥＰ５−７で求めた同定ゲイン係数ｂ１（ｋ）  ハットの値が、前記下限値Ｂ１Ｌ  以上であるか否かを判断し（ＳＴＥＰ５−８−９）、Ｂ１Ｌ  ＞ｂ１（ｋ）  ハットである場合には、ｂ１（ｋ）  ハットの値を強制的に上記下限値Ｂ１Ｌ  に変更する（ＳＴＥＰ５−８−１０）。
【０３５３】
さらに、同定器２５は、同定ゲイン係数ｂ１（ｋ）  ハットの値が、前記上限値Ｂ１Ｈ  以上であるか否かを判断し（ＳＴＥＰ５−８−１１）、Ｂ１Ｈ  ＜ｂ１（ｋ）  ハットである場合には、ｂ１（ｋ）  ハットの値を強制的に上記上限値Ｂ１Ｈ  に変更する（ＳＴＥＰ５−８−１２）。
【０３５４】
このようなＳＴＥＰ５−８−９〜５−８−１２の処理によって、同定ゲイン係数ｂ１（ｋ）  ハットの値は、下限値Ｂ１Ｌ  及び上限値Ｂ１Ｈ  の間の範囲の値に制限される。
【０３５５】
このようにして、同定ゲイン係数ａ１（ｋ）  ハット，ａ２（ｋ）  ハットの値の組み合わせと同定ゲイン係数ｂ１（ｋ）  ハットの値とを制限した後には、同定器２５の処理は図１０のフローチャートの処理に復帰する。
【０３５６】
尚、図１０のＳＴＥＰ５−７で同定ゲイン係数ａ１（ｋ）  ハット，ａ２（ｋ）  ハット，ｂ１（ｋ）  ハットを求めるために使用する同定ゲイン係数の前回値ａ１（ｋ−１）  ハット，ａ２（ｋ−１）  ハット，ｂ１（ｋ−１）  ハットは、前回の制御サイクルにおけるＳＴＥＰ５−１０の処理で前述の如く第１及び第２制限条件により制限を行った同定ゲイン係数の値である。
【０３５７】
図１０の説明に戻って、前述のように同定ゲイン係数ａ１（ｋ）  ハット，ａ２（ｋ）  ハット，ｂ１（ｋ）  ハットのリミット処理を行った後、同定器２５は、次回の制御サイクルの処理のために前記行列Ｐ（ｋ）  を前記式（１０）により更新し（ＳＴＥＰ５−９）、図８のメインルーチンの処理に復帰する。
【０３５８】
以上が図８のＳＴＥＰ５における同定器２５の演算処理である。
【０３５９】
図８のメインルーチン処理の説明に戻って、前述の通り同定器２５の演算処理を行った後、目標空燃比生成処理部２８はゲイン係数ａ１，ａ２，ｂ１の値を決定する（ＳＴＥＰ６）。
【０３６０】
この処理では、前記ＳＴＥＰ２で設定されたフラグｆ／ｉｄ／ｃａｌの値が「１」である場合、すなわち、同定器２５によるゲイン係数ａ１，ａ２，ｂ１の同定処理を行った場合には、ゲイン係数ａ１，ａ２，ｂ１の値として、それぞれ前記ＳＴＥＰ５で前述の通り同定器２５により求められた同定ゲイン係数ａ１ハット，ａ２ハット，ｂ１ハット（ＳＴＥＰ５−８の制限処理を施したもの）を設定する。また、ｆ／ｉｄ／ｃａｌ＝０である場合、すなわち、同定器２５によるゲイン係数ａ１，ａ２，ｂ１の同定処理を行わなかった場合には、ゲイン係数ａ１，ａ２，ｂ１の値をそれぞれあらかじめ定めた所定値とする。
【０３６１】
次いで、目標空燃比生成処理部２８は、図８のメインルーチンにおいて、前記推定器２６による演算処理（推定偏差出力ＶＯ２  バーの算出処理）を行う（ＳＴＥＰ７）。
【０３６２】
この推定器２６の演算処理は図１４のフローチャートに示すように行われる。すなわち、推定器２６は、前記図８のＳＴＥＰ６で決定されたゲイン係数ａ１，ａ２，ｂ１（これらの値は基本的には、前記図１０のＳＴＥＰ５−８の制限処理を経た同定ゲイン係数ａ１ハット，ａ２ハット，ｂ１ハットである）を用いて、前記式（１３）で使用する係数値α１  ，α２  ，βｊ  （ｊ＝１  〜ｄ）を前述したように算出する（ＳＴＥＰ７−１）。
【０３６３】
次いで、推定器２６は、前記図８のＳＴＥＰ３で制御サイクル毎に算出されるＯ２  センサの偏差出力ＶＯ２  の現在の制御サイクル以前の時系列データＶＯ２（ｋ），ＶＯ２（ｋ−１）、並びにＬＡＦセンサ５の偏差出力ｋａｃｔの現在の制御サイクル以前の時系列データｋａｃｔ（ｋ−ｊ）  （ｊ＝０〜ｄ１）と、後述の如く前記リミッタ３０によって制御サイクル毎に決定される前記指令偏差空燃比ｋｃｍｄ（要求偏差空燃比ｕｓｌにリミット処理を施したもの）の前回の制御サイクル以前の時系列データｋｃｍｄ（ｋ−ｊ）  （＝ｕｓｌ（ｋ−ｊ）  。ｊ＝１〜ｄ２−１）と、上記の如く算出した係数α１  ，α２  ，βｊ  とを用いて前記式（１３）により、推定偏差出力ＶＯ２（ｋ＋ｄ）バー（今回の制御サイクルの時点から前記合計無駄時間ｄ後の偏差出力ＶＯ２  の推定値）を算出する（ＳＴＥＰ７−２）。
【０３６４】
図８の説明に戻って、目標空燃比生成処理部２８は、次に、スライディングモード制御器２７によって、前記要求偏差空燃比ｕｓｌを算出する（ＳＴＥＰ８）。
【０３６５】
この要求偏差空燃比ｕｓｌの算出は、図１５のフローチャートに示すように行われる。
【０３６６】
すなわち、スライディングモード制御器２７は、まず、前記ＳＴＥＰ７で推定器２６により求められた推定偏差出力ＶＯ２  バーの時系列データＶＯ２（ｋ＋ｄ）バー，ＶＯ２（ｋ＋ｄ−１）バーを用いて、前記式（２５）により定義された切換関数σバーの今回の制御サイクルから前記合計無駄時間ｄ後の値σ（ｋ＋ｄ）  バー（これは、式（１５）で定義された切換関数σの合計無駄時間ｄ後の推定値に相当する）を算出する（ＳＴＥＰ８−１）。
【０３６７】
尚、この場合、切換関数σバーが過大であると、この切換関数σバーの値に応じて定まる前記到達則入力ｕｒｃｈ  の値が過大となり、また、前記適応則入力ｕａｄｐ  の急変が生じてスライディングモード制御器２７の制御処理が不安定なものとなる虞がある。このため、本実施形態では、切換関数σバーの値があらかじめ定めた所定範囲内に収まるようにし、上記のように式（２５）により求めたσバーの値が、該所定範囲の上限値又は下限値を超えた場合には、それぞれσバーの値を強制的に該上限値又は下限値に設定する。
【０３６８】
次いで、スライディングモード制御器２７は、上記ＳＴＥＰ８−１で制御サイクル毎に算出される切換関数σバーの値（より正確にはσバーの値に排気側制御ユニット７ａの制御サイクルの周期（一定周期）を乗算したもの）を累積的に加算していく（前回の制御サイクルで求められた加算結果に今回の制御サイクルで算出されたσバーの値を加算する）ことで、σバーの積算値（これは式（２７）の右端の項に相当する）を算出する（ＳＴＥＰ８−２）。
【０３６９】
尚、この場合、σバーの積算値に応じて定まる前記適応則入力ｕａｄｐ  が過大なものとなるのを回避するため、前記ＳＴＥＰ８−１の場合と同様、σバーの積算値があらかじめ定めた所定範囲内に収まるようにし、上記の累積加算により求まるσ（ｋ＋ｄ）  バーの積算値が該所定範囲の上限値又は下限値を超えた場合には、それぞれσ（ｋ＋ｄ）  バーの積算値を強制的に該上限値又は下限値に制限する。
【０３７０】
次いで、スライディングモード制御器２７は、前記ＳＴＥＰ７で推定器２６により求められた推定偏差出力ＶＯ２  バーの時系列データＶＯ２（ｋ＋ｄ）バー，ＶＯ２（ｋ＋ｄ−１）バーと、ＳＴＥＰ８−１及び８−２でそれぞれ求められた切換関数の値σ（ｋ＋ｄ）  バー及びその積算値と、ＳＴＥＰ６で決定したゲイン係数ａ１，ａ２，ｂ１（これらの値は基本的には、前記図１０のＳＴＥＰ５−８の制限処理を経た同定ゲイン係数ａ１ハット，ａ２ハット，ｂ１ハットである）とを用いて、前記式（２４）、（２６）、（２７）に従って、それぞれ等価制御入力ｕｅｑ、到達則入力ｕｒｃｈ  及び適応則入力ｕａｄｐ  を算出する（ＳＴＥＰ８−３）。
【０３７１】
さらにスライディングモード制御器２７は、ＳＴＥＰ８−３で求めた等価制御入力ｕｅｑ、到達則入力ｕｒｃｈ  及び適応則入力ｕａｄｐ  を加算することで、前記要求偏差空燃比ｕｓｌ、すなわち、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  を目標値ＶＯ２／ＴＡＲＧＥＴに収束させる上で対象排気系Ｅに与えるべき入力を算出する（ＳＴＥＰ８−４）。
【０３７２】
これがＳＴＥＰ８におけるスライディングモード制御器２７の処理内容である。
【０３７３】
図８に戻って、目標空燃比生成処理部２８は、次に、前記リミッタ３０による処理を行う。この場合、該リミッタ３０は、前述の如くスライディングモード制御器２７が算出する要求偏差空燃比ｕｓｌにリミット処理を施すに先立って、スライディングモード制御器２７による適応スライディングモード制御を用いて制御するＯ２  センサ６の出力ＶＯ２／ＯＵＴ  の状態（対象排気系Ｅの出力状態。以下、これをＳＬＤ制御状態という）の安定性を判別する処理を行う（ＳＴＥＰ９）。
【０３７４】
ここで、この安定性の判別処理の詳細を具体的に説明する前に、該判別処理の概要を説明しておく。
【０３７５】
本実施形態では、排気側制御ユニット７の各制御サイクルにおいてスライディングモード制御器２７が前述の如く前記ＳＴＥＰ８−１で求める切換関数σバーの値（今回値）σ（ｋ＋ｄ）  バーとその１制御サイクル前の値（前回値）σ（ｋ＋ｄ−１）  バーとの偏差Δσバー（これは切換関数σバーの値の変化速度に相当する）と、切換関数σバーの今回値σ（ｋ＋ｄ）  バーとの積σ（ｋ＋ｄ）  バー・Δσバーを前記ＳＬＤ制御状態の安定性を判別するための基本パラメータとして用いる（以下、σ（ｋ＋ｄ）  バー・Δσバーを安定性判別基本パラメータＰｓｔｂ  という）。
【０３７６】
この安定性判別基本パラメータＰｓｔｂ  （＝σ（ｋ＋ｄ）  バー・Δσバー）は、切換関数σバーに関する所謂リアプノフ関数σバー２  ／２の時間微分値に相当するものであり、基本的には、Ｐｓｔｂ  ≦０となる状態は、切換関数σバーの値が「０」に収束しているかもしくは収束しつつある状態（前記推定偏差出力ＶＯ２  バーの時系列データＶＯ２（ｋ＋ｄ）バー，ＶＯ２（ｋ＋ｄ−１）バーからなる状態量が超平面σバー＝０に収束しているかもしくは収束しつつある状態）である。また、Ｐｓｔｂ  ＞０となる状態は、基本的には、切換関数σバーの値が「０」から離間しつつある状態（前記推定偏差出力ＶＯ２  バーの時系列データＶＯ２（ｋ＋ｄ）バー，ＶＯ２（ｋ＋ｄ−１）バーからなる状態量が超平面σバー＝０から離間しつつある状態）である。
【０３７７】
従って、上記安定性判別基本パラメータＰｓｔｂ  の値が「０」以下であるか否かによって前記ＳＬＤ制御状態が安定であるか否かを判断することができる。
【０３７８】
但し、安定性判別基本パラメータＰｓｔｂ  の値を「０」と比較することでＳＬＤ制御状態の安定性を判断すると、σバーの値に僅かなノイズが含まれただけで、安定性の判別結果に影響を及ぼしてしまう。また、制御サイクル毎に安定性判別基本パラメータＰｓｔｂ  の値によって、安定性の判別結果を確定すると、その判断結果が頻繁に変わり過ぎる虞がある。
【０３７９】
このため、本実施形態では、制御サイクル毎に安定性判別基本パラメータＰｓｔｂ  の値が「０」よりも若干大きな正の値に定めた所定値ε以下であるか否かによってＳＬＤ制御状態が安定であるか否を暫定的に判断する。また、制御サイクルよりも長い所定期間づつ、ＳＬＤ制御状態が安定性判別基本パラメータＰｓｔｂ  の値によって暫定的に不安定と判断される頻度ｃｎｔ／ｊｕｄｓｔ  （より詳しくは所定期間内においてＰｓｔｂ  ＞εとなる制御サイクルの回数。以下、暫定不安定判断頻度ｃｎｔ／ｊｕｄｓｔ  という）を計測し、その暫定不安定判断頻度ｃｎｔ／ｊｕｄｓｔ  をあらかじめ定めた所定の閾値と比較することでＳＬＤ制御状態が安定であるか否かを判断するようにしている。
【０３８０】
この場合、本実施形態では、前記暫定不安定判断頻度ｃｎｔ／ｊｕｄｓｔ  と比較する前記閾値は、第１閾値ＳＳＴＢ１  と第２閾値ＳＳＴＢ２  との二種類（ＳＳＴＢ１  ＜ＳＳＴＢ２  ）があり、暫定不安定判断頻度ｃｎｔ／ｊｕｄｓｔ  が第１閾値ＳＳＴＢ１  以下（ｃｎｔ／ｊｕｄｓｔ  ≦ＳＳＴＢ１  ）であるときにはＳＬＤ制御状態が安定であると判断する。また、ｃｎｔ／ｊｕｄｓｔ  ＞ＳＳＴＢ１  であるときには、ＳＬＤ制御状態が不安定であると判断する。さらにＳＬＤ制御状態が不安定であると判断する場合（ｃｎｔ／ｊｕｄｓｔ  ＞ＳＳＴＢ１  の場合）にあっては、暫定不安定判断頻度ｃｎｔ／ｊｕｄｓｔ  が第２閾値ＳＳＴＢ２  以下（ｃｎｔ／ｊｕｄｓｔ  ≦ＳＳＴＢ２  ）であるときにはＳＬＤ制御状態の不安定さの度合いが低い（以下、この状態を低レベル不安定状態という）と判断し、ｃｎｔ／ｊｕｄｓｔ  ＞ＳＳＴＢ２  であるときには、ＳＬＤ制御状態の不安定さの度合いが高い（以下、この状態を高レベル不安定状態という）と判断する。つまり、本実施形態にあっては、ＳＬＤ制御状態が不安定であると判断する場合には、さらに暫定不安定判断頻度ｃｎｔ／ｊｕｄｓｔ  の値によって、不安定さの度合い（程度）も分別して判断するようにしている。
【０３８１】
以上説明したことを考慮しつつ前記ＳＴＥＰ９における安定性の判別処理をより詳細に説明する。
【０３８２】
この判別処理は図１６のフローチャートに示すように行われる。
【０３８３】
すなわち、リミッタ３０は、まず、スライディングモード制御器２７が前記ＳＴＥＰ８−１で求めた切換関数σバーの今回値σ（ｋ＋ｄ）  バーと前回値σ（ｋ＋ｄ−１）  バーとから、前述の如く定義した前記安定性判別基本パラメータＰｓｔｂ  （＝σ（ｋ＋ｄ）  バー・Δσバー）を算出する（ＳＴＥＰ９−１）。
【０３８４】
次いで、リミッタ３０は、前記図７のＳＴＥＰｄ−１１において初期化された前記タイマカウンタｔｍ／ｓｔｂ（カウントダウンタイマ）の値が「０」になったか否か、すなわち、目標空燃比生成処理部２８が生成する目標空燃比ＫＣＭＤによるエンジン１の空燃比の操作（Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  の目標値ＶＯ２／ＴＡＲＧＥＴへの収束制御。以下、これを空燃比操作排気系出力制御ということがある）を開始してからの経過時間がタイマカウンタｔｍ／ｓｔｂの初期値ＴＭＳＴＢ  により表される所定時間に達したか否かを判断する（ＳＴＥＰ９−２）。
【０３８５】
このとき、ｔｍ／ｓｔｂ≠０で前記空燃比操作排気系出力制御を開始してからの経過時間が所定時間（：ＴＭＳＴＢ  ）に満たない場合（空燃比操作排気系出力制御の開始直後の状態）には、前記暫定不安定判断頻度ｃｎｔ／ｊｕｄｓｔ  の計測等、ＳＬＤ制御状態の安定性の判別を行うことなく、ＳＴＥＰ９−３の処理を行って、図８のメインルーチンに復帰する。
【０３８６】
上記ＳＴＥＰ９−３では、前記暫定不安定判断頻度ｃｎｔ／ｊｕｄｓｔ  の計測を行う前記所定期間を計時するタイマカウンタｔｍ／ｊｕｄｓｔ（カウントダウンタイマ）の値を該所定期間の時間に相当する所定の初期値ＴＭＪＵＤＳＴ  に設定する。また、このＳＴＥＰ９−４では、暫定不安定判断頻度ｃｎｔ／ｊｕｄｓｔ  の値を「０」に初期化する。さらに、該ＳＴＥＰ９−４では、ＳＬＤ制御状態が安定であるか否かをそれぞれ値「０」、「１」で表すフラグｆ／ｓｔｂ１の値を「０」に初期化すると共に、ＳＬＤ制御状態が前記低レベル不安定状態であるか高レベル不安定状態であるかをそれぞれ値「０」、「１」で表すフラグｆ／ｓｔｂ２の値を「０」に初期化する。
【０３８７】
一方、前記ＳＴＥＰ９−２で、タイマｔｍ／ｓｔｂの値が「０」である場合、すなわち前記空燃比操作排気系出力制御を開始してからの経過時間がタイマｔｍ／ｓｔｂの初期値ＴＭＳＴＢ  により表される所定時間に達した場合には、リミッタ３０は、前記安定性判別基本パラメータＰｓｔｂ  を所定値ε（＞０）と比較する（ＳＴＥＰ９−４）。このとき、Ｐｓｔｂ  ≦εである場合には、ＳＬＤ制御状態が暫定的に安定であるとして、前記暫定不安定判断頻度ｃｎｔ／ｊｕｄｓｔ  の値を現状の値（前回値）に保持する（ＳＴＥＰ９−５）。また、Ｐｓｔｂ  ＞εである場合には、ＳＬＤ制御状態が暫定的に不安定であるとして、前記暫定不安定判断頻度ｃｎｔ／ｊｕｄｓｔ  の値を現状の値（前回値）に「１」を加算した値に増加させる（ＳＴＥＰ９−６）。
【０３８８】
次いで、リミッタ３０は、ＳＴＥＰ９−５又は９−６で決定した今回の制御サイクルにおける暫定不安定判断頻度ｃｎｔ／ｊｕｄｓｔ  の値を前記第１閾値ＳＳＴＢ１  と比較する（ＳＴＥＰ９−７）。このとき、ｃｎｔ／ｊｕｄｓｔ  ≦ＳＳＴＢ１  である場合には、ＳＬＤ制御状態が安定であるとして、前記フラグｆ／ｓｔｂ１（以下、安定判別フラグｆ／ｓｔｂ１）の値を「０」に設定する（ＳＴＥＰ９−８）。
【０３８９】
また、ｃｎｔ／ｊｕｄｓｔ  ＞ＳＳＴＢ１  である場合（ＳＬＤ制御状態が不安定である場合）には、リミッタ３０はさらに暫定不安定判断頻度ｃｎｔ／ｊｕｄｓｔ  の値を前記第２閾値ＳＳＴＢ２  と比較する（ＳＴＥＰ９−９）。このとき、ｃｎｔ／ｊｕｄｓｔ  ≦ＳＳＴＢ２  である場合には、ＳＬＤ制御状態が低レベル不安定状態であるとして、前記安定判別フラグｆ／ｓｔｂ１の値を「１」に設定する（ＳＴＥＰ９−１０）。また、ｃｎｔ／ｊｕｄｓｔ  ＞ＳＳＴＢ２  である場合には、ＳＬＤ制御状態が高レベル不安定状態であるとして、前記安定判別フラグｆ／ｓｔｂ１の値を「１」に設定すると共に前記フラグｆ／ｓｔｂ２（以下、不安定レベル判別フラグｆ／ｓｔｂ２という）の値を「１」に設定する（ＳＴＥＰ９−１１）。
【０３９０】
次いで、リミッタ３０は、前記タイマカウンタｔｍ／ｊｕｄｓｔの値を現在値（前回値）から「１」だけ減少させた値に更新した後（ＳＴＥＰ９−１２）、この更新後のタイマカウンタｔｍ／ｊｕｄｓｔの値が「０」になったか否か、すなわち、タイマカウンタｔｍ／ｊｕｄｓｔの初期値ＴＭＪＵＤＳＴ  により表される所定期間を経過したか否を判断する（ＳＴＥＰ９−１３）。
【０３９１】
このとき、ｔｍ／ｊｕｄｓｔ≠０でまだ所定期間（：ＴＭＪＵＤＳＴ  ）を経過していない場合（タイマカウンタｔｍ／ｊｕｄｓｔが未だタイムアップしていない場合）には、図８のメインルーチンの処理に復帰する。
【０３９２】
一方、ｔｍ／ｊｕｄｓｔ＝０で、所定期間（：ＴＭＪＵＤＳＴ  ）を経過した場合（タイマカウンタｔｍ／ｊｕｄｓｔがタイムアップした場合）には、リミッタ３０はさらに、前記安定判別フラグｆ／ｓｔｂ１の値を判断する（ＳＴＥＰ９−１４）。このとき、ｆ／ｓｔｂ１＝１である場合には、前記タイマカウンタｔｍ／ｊｕｄｓｔの値をその初期値ＴＭＪＵＤＳＴ  にリセットすると共に、暫定不安定判断頻度ｃｎｔ／ｊｕｄｓｔ  の値を「０」にリセットした後（ＳＴＥＰ９−１６）、図８のメインルーチンの処理に復帰する。
【０３９３】
また、ＳＴＥＰ９−１４でｆ／ｓｔｂ１＝０である場合、すなわち、今回の制御サイクルでＳＬＤ制御状態が安定であると判断した場合には、前記不安定レベル判別フラグｆ／ｓｔｂ２の値を「０」にリセットした後（ＳＴＥＰ９−１５）、前記ＳＴＥＰ９−１６の処理を経てメインルーチンの処理に復帰する。
【０３９４】
以上説明したＳＬＤ制御状態の安定性の判別処理における安定性判別基本パラメータＰｓｔｂ  、暫定不安定判断頻度ｃｎｔ／ｊｕｄｓｔ  、安定判別フラグｆ／ｓｔｂ１、及び不安定レベル判別フラグｆ／ｓｔｂ２の値の変化の様子の様子をそれぞれ図１７の第１〜４段に例示的に示す。尚、図１７の第１段では、安定性判別基本パラメータＰｓｔｂ  の値は、説明の便宜上、「０」以上の値のみ採るようになっているが、実際には負の値も採り得る。
【０３９５】
同図１７のように、暫定不安定判断頻度ｃｎｔ／ｊｕｄｓｔ  、すなわち、安定性判別基本パラメータＰｓｔｂ  の値がＰｓｔｂ  ＞εとなる頻度（回数）は、所定期間（：ＴＭＪＵＤＳＴ  ）づつ計測され、該所定期間（：ＴＭＪＵＤＳＴ  ）が経過する毎に「０」にリセットされる（前記ＳＴＥＰ９−１６を参照）。そして、図中の期間Ｔ１あるいはＴ２に示すように、所定期間内で暫定不安定判断頻度ｃｎｔ／ｊｕｄｓｔ  の値が第１閾値ＳＳＴＢ１  に達しないような場合、すなわち、安定性判別基本パラメータＰｓｔｂ  の値が所定値εを超えるような状況が生じないか、もしくは、そのような状況が一時的にしか生じない場合には、ＳＬＤ制御状態が安定であると判断され、安定判別フラグｆ／ｓｔｂ１の値が「０」に設定される（前記ＳＴＥＰ９−７，９−８を参照）。
【０３９６】
また、図中の期間Ｔ３に示すように、所定期間内で安定性判別基本パラメータＰｓｔｂ  の値が所定値εを超えるような状況がある程度継続したり、あるいはそのような状況がある程度頻繁に発生し、暫定不安定判断頻度ｃｎｔ／ｊｕｄｓｔ  の値が第１閾値ＳＳＴＢ１  を超えたような場合には、ＳＬＤ制御状態が低レベル不安定状態であると判断され、安定判別フラグｆ／ｓｔｂ１の値が「１」に設定される（前記ＳＴＥＰ９−９，９−１０を参照）。但し、この場合、暫定不安定判断頻度ｃｎｔ／ｊｕｄｓｔ  の値が所定期間毎にリセットされることに伴い、安定判別フラグｆ／ｓｔｂ１の値も所定期間毎に「０」にリセットされることとなる。
【０３９７】
また、図中の期間Ｔ４に示すように、所定期間内で安定性判別基本パラメータＰｓｔｂ  の値が所定値εを超えるような状況が比較的長い時間継続したり、あるいはそのような状況が頻繁に発生し、暫定不安定判断頻度ｃｎｔ／ｊｕｄｓｔ  の値が第２閾値ＳＳＴＢ２  を超えたような場合には、ＳＬＤ制御状態が高レベル不安定状態であると判断され、安定判別フラグｆ／ｓｔｂ１の値が「１」に設定されると共に不安定レベル判別フラグｆ／ｓｔｂ２の値が「１」に設定される（前記ＳＴＥＰ９−１１を参照）。この場合にあっては、不安定レベル判別フラグｆ／ｓｔｂ２の値は、次回の所定期間（期間Ｔ５）の間中、暫定不安定判断頻度ｃｎｔ／ｊｕｄｓｔ  の値にかかわらず「１」に維持される。そして、この次回の所定期間（期間Ｔ５）の間中、継続して暫定不安定判断頻度ｃｎｔ／ｊｕｄｓｔ  の値が第１閾値ＳＳＴＢ１  以下に維持され、安定判別フラグｆ／ｓｔｂ１の値が「０」に維持された場合にのみ、この期間Ｔ５の終了時に不安定レベル判別フラグｆ／ｓｔｂ２の値が「０」にリセットされる（前記ＳＴＥＰ９−１４，９−１５を参照）。つまり、ある所定期間内でＳＬＤ制御状態が高レベル不安定状態であると判断された場合には、その次の所定期間の間中、継続して暫定不安定判断頻度ｃｎｔ／ｊｕｄｓｔ  の値が第１閾値ＳＳＴＢ１  以下に維持されない限り、不安定レベル判別フラグｆ／ｓｔｂ２の値は高レベル不安定状態を表す「１」に維持され、実質的に高レベル不安定状態であるとの判断が継続することとなる。
【０３９８】
図８に戻って、目標空燃比生成処理部２８のリミッタ３０は、前述の如くＳＬＤ制御状態の安定性の判別処理を行った後、前記ＳＴＥＰ８でスライディングモード制御器２７が算出した要求偏差空燃比ｕｓｌにリミット処理を施して前記指令偏差空燃比ｋｃｍｄを決定する（ＳＴＥＰ１０）。
【０３９９】
ここで、上記リミット処理の詳細を具体的に説明する前に、該リミット処理で用いる許容範囲について説明しておく。
【０４００】
リミッタ３０が行うリミット処理は、最終的に機関側制御ユニット７ａに与えるべき目標空燃比ＫＣＭＤを規定する指令偏差空燃比ｋｃｍｄを所定の許容範囲内に収めるために、要求偏差空燃比ｕｓｌがその許容範囲の上限値あるいは下限値を超えて該許容範囲を逸脱している場合にそれぞれ指令偏差空燃比ｋｃｍｄを強制的に該許容範囲の上限値、下限値に設定する処理である。そして、要求偏差空燃比ｕｓｌが許容範囲内に収まっている場合には、該要求偏差空燃比ｕｓｌをそのまま指令偏差空燃比ｋｃｍｄとして設定する処理である。
【０４０１】
この場合、本実施形態では、このリミット処理に用いる許容範囲には、図１８に示す如く複数種類のものがあり、前記ＳＴＥＰ８におけるＳＬＤ制御状態の安定性の判別結果が低レベル不安定状態（ｆ／ｓｔｂ１＝１且つｆ／ｓｔｂ２＝０の場合）であるときに（但しエンジン１のアイドリング状態である場合を除く）、要求偏差空燃比ｕｓｌのリミット処理に用いる低不安定用許容範囲と、ＳＬＤ制御状態の安定性の判別結果が高レベル不安定状態（ｆ／ｓｔｂ２＝１の場合）であるときに、要求偏差空燃比ｕｓｌのリミット処理に用いる高不安定用許容範囲とがある。
【０４０２】
さらに、このリミット処理用の許容範囲には、上記のようにＳＬＤ制御状態の安定性の判別結果が低レベル不安定状態又は高レベル不安定状態となる場合を除いて、エンジン１のフュエルカットを行った直後の状態（詳しくは、エンジン１のフュエルカットの終了後、所定時間が経過するまでの状態）で要求偏差空燃比ｕｓｌのリミット処理に用いるＦＣ後許容範囲と、エンジン１の始動直後の状態（詳しくはエンジン１の始動後、所定時間が経過するまでの状態）で要求偏差空燃比ｕｓｌのリミット処理に用いる始動後許容範囲とがある。尚、本実施形態では、ＦＣ後許容範囲と始動後許容範囲とは同一形態の許容範囲であり、以下の説明ではこれらを合わせてＦＣ／始動後許容範囲という。
【０４０３】
また、要求偏差空燃比ｕｓｌのリミット処理用の許容範囲には、ＳＬＤ制御状態の安定性の判別結果が低レベルもしくは高レベル不安定状態となる場合、並びに、エンジン１のフュエルカット直後の状態もしくは始動直後の状態である場合を除いて、エンジン１を搭載した車両の発進直後の状態（詳しくは、エンジン１がその負荷である車両の駆動輪の駆動を開始した後、所定時間が経過するまでの状態）であるときに、要求偏差空燃比ｕｓｌのリミット処理に用いる負荷駆動後許容範囲と、ＳＬＤ制御状態の安定性の判別結果が高レベル不安定状態となる場合、並びに、エンジン１のフュエルカット直後の状態もしくは始動直後の状態である場合を除いて、エンジン１のアイドリング状態であるときに、要求偏差空燃比ｕｓｌのリミット処理に用いるアイドル許容範囲とがある。
【０４０４】
さらには、要求偏差空燃比ｕｓｌのリミット処理用の許容範囲には、上記の各許容範囲に対応する状態を除く通常的な状態において、要求偏差空燃比ｕｓｌのリミット処理に用いる適応許容範囲とがある。
【０４０５】
ここで、前記低不安定用許容範囲は、その上限値及び下限値を、それぞれあらかじめ定めた固定的な所定値Ｈ，Ｌ（以下、所定値Ｈを上限側第３所定値Ｈ、所定値Ｌを下限側第４所定値という）とした固定的な許容範囲である。この低不安定用許容範囲は、その上限側及び下限側の両者について、前述の各許容範囲の中では、標準的（中間的）な広さを有するものとされている。
【０４０６】
また、前記高不安定用許容範囲は、その上限値及び下限値を、それぞれあらかじめ定めた固定的な所定値ＳＴＢＨ，ＳＴＢＬ（以下、所定値ＳＴＢＨを上限側第１所定値ＳＴＡＢＨ  、所定値ＳＴＢＬを前記下限側第１所定値ＳＴＡＢＬ  ）とした固定的な許容範囲である。この高不安定用許容範囲は、その上限側及び下限側の両者について、前述の各許容範囲の中では最も狭いものとされている。
【０４０７】
また、前記アイドル許容範囲は、その上限値及び下限値を、それぞれ固定的な所定値ＨＩ，ＬＩ（以下、所定値ＨＩを上限側第２所定値ＨＩ、所定値ＬＩを下限側第３所定値という）とした固定的な許容範囲である。このアイドル許容範囲は、その上限側及び下限側の両者について、比較的狭い（本実施形態では低不安定用許容範囲よりも狭い）ものとされている。
【０４０８】
また、前記ＦＣ／始動後許容範囲は、その上限値を固定的な所定値ＡＦＣＨ（以下、上限側第５所定値という）とすると共に、下限値を、前記下限側第１所定値ＳＴＡＢＬ  とこれよりも小さな所定値ＬＬ（以下、下限側第５所定値ＬＬという）との間で該許容範囲に対する前記要求偏差空燃比ｕｓｌの逸脱状況に応じて逐次（制御サイクル毎に）可変的に設定するようにした許容範囲である。この場合、該ＦＣ／始動後許容範囲の上限側は、前述の各許容範囲の中では最も広いものとされている。尚、ＦＣ／始動後許容範囲の下限値については、エンジン１のアイドリング状態では、可変的な設定は行われず、前記アイドル許容範囲の下限値である下限側第３所定値ＬＩに設定される。
【０４０９】
また、前記負荷駆動後許容範囲は、その下限値を固定的な所定値ＶＳＴＬ（以下、下限側第２所定値という）とすると共に、上限値を、前記上限側第１所定値ＳＴＡＢＨ  とこれよりも大きい所定値ＨＨ（以下、上限側第４所定値ＨＨという）との間で該許容範囲に対する前記要求偏差空燃比ｕｓｌの逸脱状況に応じて逐次（制御サイクル毎に）可変的に設定するようにした許容範囲である。この場合、該負荷駆動後許容範囲の下限側は、比較的狭い（本実施形態ではアイドル許容範囲の下限側よりも狭い）ものとされている。
【０４１０】
さらに前記適応許容範囲は、その上限値を、前記上限側第１所定値ＳＴＡＢＨ  と上限側第４所定値ＨＨとの間で該許容範囲に対する前記要求偏差空燃比ｕｓｌの逸脱状況に応じて逐次（制御サイクル毎に）可変的に設定すると共に、下限値も、前記下限側第１所定値ＳＴＡＢＬ  と下限側第５所定値ＬＬというとの間で該許容範囲に対する前記要求偏差空燃比ｕｓｌの逸脱状況に応じて逐次（制御サイクル毎に）可変的に設定するようにした許容範囲である。
【０４１１】
尚、本実施形態において前記各許容範囲によるリミット処理の対象とする前記要求偏差空燃比ｕｓｌはエンジン１の空燃比と前記空燃比基準値ＦＬＡＦ／ＢＡＳＥ  との偏差であるので、前記各許容範囲の上限値及び下限値は該空燃比基準値ＦＬＡＦ／ＢＡＳＥ  に対する偏差量（空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を「０」として表した正負の値）である。また、前記上限側第１〜第５所定値ＳＴＡＢＨ  ，ＨＩ，Ｈ，ＨＨ，ＡＦＣＨの大小関係は、本実施形態では、図示のように０＜ＳＴＡＢＨ  ＜ＨＩ＜Ｈ＜ＨＨ＜ＡＦＣＨである。同様に、前記下限側第１〜第５所定値ＳＴＡＢＬ  ，ＶＳＴＬ，ＬＩ，Ｌ，ＬＬの大小関係は、本実施形態では０＞ＳＴＡＢＬ  ＞ＶＳＴＬ＞ＬＩ＞Ｌ＞ＬＬである。
【０４１２】
以上説明したことを考慮しつつ、前記ＳＴＥＰ１０におけるリミット処理の詳細を具体的に説明する。このリミット処理は図１９のフロチャートに示すように行われる。尚、以下の説明においては、エンジン１のアイドリング状態で設定されるリミット処理用の許容範囲（これは前記アイドル許容範囲とは限らない）の上限値及び下限値にそれぞれ参照符号ＡＨＦＩ，ＡＬＦＩを付し、それらをアイドル用上限値ＡＨＦＩ、アイドル用下限値ＡＬＦＩと称する。また、アイドリング状態以外のエンジン１の運転状態で設定されるリミット処理用の許容範囲の上限値及び下限値にそれぞれ参照符号ＡＨＦ  ，ＡＬＦ  を付し、それらをアイドル外上限値ＡＨＦ  、アイドル外下限値ＡＬＦ  と称する。さらに、前記適応許容範囲の可変的な上限値及び下限値にそれぞれ参照符号ａｈ，ａｌを付し、それらを適応上限値ａｈ、適応下限値ａｌと称する。
【０４１３】
図１９を参照して、目標空燃比生成処理部２８のリミッタ３０は、まず、今回の制御サイクルにおけるリミット処理用の許容範囲を決定する処理を行う（ＳＴＥＰ１０−１）。
【０４１４】
この処理は、図２０のフローチャートに示すように行われる。
【０４１５】
すなわち、リミッタ３０は、まず、前述したＳＬＤ制御状態の安定性の判別処理で設定した前記不安定レベル判別フラグｆ／ｓｔｂ２の値を判断する（ＳＴＥＰ１０−１−１）。このとき、ｆ／ｓｔｂ２＝１の場合、すなわちＳＬＤ制御状態が高レベル不安定状態であると判断した場合には、前記アイドル用上限値ＡＨＦＩ、アイドル外上限値ＡＨＦ  及び適応上限値ａｈ（より詳しくは適応上限値ａｈの現在値ａｈ（ｋ−１）  ）をいずれも前記高不安定用許容範囲（図１８参照）の上限値である上限側第１所定値ＳＴＡＢＨ  に設定すると共に、前記アイドル用下限値ＡＬＦＩ、アイドル外下限値ＡＬＦ  及び適応下限値ａｌ（より詳しくは適応下限値ａｌの現在値ａｌ（ｋ−１）  ）をいずれも該高不安定用許容範囲の下限値である下限側第１所定値ＳＴＡＢＬ  に設定する（ＳＴＥＰ１０−１−２）。そして、このＳＴＥＰ１０−１−２の処理の後、図１９のルーチン処理に復帰する。
【０４１６】
このＳＴＥＰ１０−１−２の処理により、前記要求偏差空燃比ｕｓｌにリミット処理を施すための許容範囲は、エンジン１のどのような運転状態であっても、前記高不安定用許容範囲、すなわち、最も範囲の狭い固定的な許容範囲に設定される。また、後述の如く可変化される適応許容範囲は、高不安定用許容範囲に初期化される。
【０４１７】
前記ＳＴＥＰ１０−１−１でｆ／ｓｔｂ２＝０の場合には、リミッタ３０はさらに、ＳＬＤ制御状態の安定性の判別処理で設定した前記安定性判別フラグｆ／ｓｔｂ１の値を判断する（ＳＴＥＰ１０−１−３）。このとき、ｆ／ｓｔｂ１＝１の場合、すなわちＳＬＤ制御状態が低レベル不安定状態である場合には、前記アイドル用上限値ＡＨＦＩを前記アイドル許容範囲（図１８参照）の上限値である上限側第２所定値ＨＩに設定すると共に、アイドル用下限値ＡＬＦＩを該アイドル許容範囲の下限値である下限側第３所定値ＬＩに設定する（ＳＴＥＰ１０−１−４）。さらにこのＳＴＥＰ１０−１−４では、前記アイドル外上限値ＡＨＦ  及び適応上限値ａｈの現在値ａｈ（ｋ−１）  をいずれも前記低不安定用許容範囲（図１８参照）の固定的な上限値である上限側第３所定値Ｈに設定すると共に、アイドル外下限値ＡＬＦ  及び適応下限値ａｌ（ａｌ（ｋ−１）  ）をいずれも該低不安定用許容範囲の下限値である下限側第４所定値Ｌに設定する。そして、このＳＴＥＰ１０−１−４の処理の後、図１９のルーチン処理に復帰する。
【０４１８】
このＳＴＥＰ１０−１−４の処理により、前記要求偏差空燃比ｕｓｌにリミット処理を施すための許容範囲は、エンジン１のアイドリング状態以外の運転状態であれば、前記低不安定用許容範囲（固定的な標準的範囲）に設定され、エンジン１のアイドリング状態であれば、該低不安定用許容範囲よりも狭い前記アイドル許容範囲（固定的な狭めの範囲）に設定される。また、適応許容範囲は、低不安定用許容範囲に初期化される。
【０４１９】
前記ＳＴＥＰ１０−１−３でｆ／ｓｔｂ１＝０の場合、すなわち、前記ＳＴＥＰ９でＳＬＤ制御状態が安定であると判断した場合には、リミッタ３０は、エンジン１のフュエルカット直後の状態であるか否か、すなわち、エンジン１のフュエルカットが終了してからの経過時間が所定時間に満たない状態であるか否かを判断する（ＳＴＥＰ１０−１−５）。
【０４２０】
この判断は次のように行われる。すなわち、本実施形態では、エンジン１のフュエルカットを行っているか否を表すデータが前記機関側制御ユニット７ｂから排気側制御ユニット７ａに与えるられるようになっている。そして、前記リミッタ３０は、このデータによりエンジン１のフュエルカットが終了したことを把握した時点から図示しないタイマを起動して該終了時点からの経過時間を計時し、この経過時間があらかじめ定めた所定時間（固定値）に達するまでの期間をフュエルカットの直後の状態であると判断する。
【０４２１】
尚、本実施形態では、フュエルカット中は、目標空燃比生成処理部２８が生成する目標空燃比ＫＣＭＤによる空燃比の操作（Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  の目標値ＶＯ２／ＴＡＲＧＥＴへの収束制御）は行わないが（図６のＳＴＥＰｄの処理に関する図７を参照）、目標空燃比生成処理部２８における演算処理（要求偏差空燃比ｕｓｌ、目標空燃比ＫＣＭＤの算出処理等）は行われる。そして、本実施形態では、便宜上、エンジン１のフュエルカット中の状態も、フュエルカット直後の状態であると判断するようにしている。
【０４２２】
上記ＳＴＥＰ１０−１−５の判断結果がフュエルカット直後の状態（フュエルカット中を含む）である場合には、リミッタ３０は、前記アイドル用上限値ＡＨＦＩ及びアイドル外上限値ＡＨＦ  をいずれも前記ＦＣ／始動後許容範囲（図８参照）の上限値である上限側第５所定値ＡＦＣＨに設定する（ＳＴＥＰ１０−１−６）。さらにこのＳＴＥＰ１０−１−６では、アイドル用下限値ＡＬＦＩを前記アイドル許容範囲の下限値である下限側第３所定値に設定すると共に、アイドル外下限値ＡＬＦ  の値を現在の適応下限値ａｌ（前回の制御サイクルで決定された適応下限値ａｌｆ（ｋ−１））の値に設定する。そして、このＳＴＥＰ１０−１−６の処理の後、図１９のルーチン処理に復帰する。
【０４２３】
このＳＴＥＰ１０−１−６の処理により、前記要求偏差空燃比ｕｓｌにリミット処理を施すための許容範囲は、エンジン１のアイドリング状態であれば、下限値を前記アイドル許容範囲の下限値である下限側第３所定値ＬＩに固定した前記ＦＣ／始動後許容範囲に設定される。また、エンジン１のアイドリング状態以外の運転状態では、下限値を逐次可変化する適応下限値ａｈとしたＦＣ／始動後許容範囲に設定される。いずれにしても、前記要求偏差空燃比ｕｓｌのリミット処理用の許容範囲は、特に上限側において最も広くなるような範囲（より一般的には上限値が前記上限側第５所定値ＡＦＣＨを下回らないような範囲）に設定されることとなる。
【０４２４】
また、上記ＳＴＥＰ１０−１−５の判断結果がフュエルカットの直後の状態でない場合には、リミッタ３０は、次にエンジン１の始動直後の状態であるか否、すなわち、エンジン１を始動してから（より詳しくはエンジン１の所謂完爆が確認されてから）の経過時間が所定時間に満たない状態であるか否かを判断する（ＳＴＥＰ１０−１−７）。
【０４２５】
この場合、エンジン１が始動したか否（エンジン１の完爆が確認されたか否か）を表すデータが機関側制御ユニット７ｂから排気側制御ユニット７ａに与えられるようになっている。そして、リミッタ３０は、このデータによりエンジン１が始動したことを把握した時点から図示しないタイマを起動して該始動時からの経過時間を計時し、この経過時間があらかじめ定めた所定時間（固定値）に達するまでの期間を始動直後の状態であると判断する。
【０４２６】
上記ＳＴＥＰ１０−１−７の判断結果が、エンジン１の始動直後の状態である場合には、リミッタ３０は、フュエルカットの直後の場合と同様に前記ＳＴＥＰ１０−１−６の処理を行って、前記アイドル用上限値ＡＨＦＩ、アイドル外上限値ＡＨＦ  、アイドル用下限値ＡＬＦＩ及びアイドル外下限値ＡＬＦ  を前述の通り設定した後、図１９のルーチン処理に復帰する。
【０４２７】
ＳＴＥＰ１０−１−７の判断結果が、エンジン１の始動直後の状態でない場合には、リミッタ３０は、次にエンジン１のアイドリング状態であるか否かを判断する（ＳＴＥＰ１０−１−８）。
【０４２８】
この場合、エンジン１のアイドリング状態であるか否かを表すデータが機関側制御ユニット７ｂから排気側制御ユニット７ａに与えられるようになっており、リミッタ３０は、このデータによりエンジン１のアイドリング状態であるか否かを判断する。
【０４２９】
そして、このときエンジン１のアイドリング状態である場合には（このときＳＬＤ制御状態の低レベル不安定状態もしくは高レベル不安定状態、あるいはエンジン１のフュエルカット直後の状態、始動直後の状態のいずれでもない）、リミッタ３０は、前記アイドル用上限値ＡＨＦＩを前記アイドル許容範囲の上限値である前記上限側第２所定値ＨＩに設定すると共に、アイドル用下限値ＡＬＦＩをアイドル許容範囲の下限値である前記下限側第３所定値ＬＩに設定した後（ＳＴＥＰ１０−１−９）、図１９のリーチン処理に復帰する。
【０４３０】
このＳＴＥＰ１０−１−９の処理により、前記要求偏差空燃比ｕｓｌにリミット処理を施すための許容範囲は、固定的なアイドル許容範囲に設定されることとなる。
【０４３１】
前記ＳＴＥＰ１０−１−８でエンジン１のアイドリング状態でない場合（この場合、ＳＬＤ制御状態の低レベル不安定状態もしくは高レベル不安定状態、あるいはエンジン１のフュエルカット直後の状態、始動直後の状態、アイドリング状態のいずれでもない）には、リミッタ３０は、以下に説明するＳＴＥＰ１０−１−１０〜１０−１−１３で前記適応上限値ａｈの現在値ａｈ（ｋ−１）  （前回の制御サイクルで決定された値）を前記上限側第１所定値ＳＴＡＢＨ  と上限側第４所定値ＨＨ（図１８参照）との間の範囲内の値に制限する処理（適応上限値ａｈのリミット処理）を行う。
【０４３２】
すなわち、適応上限値ａｈの現在値ａｈ（ｋ−１）  が上限側第１所定値ＳＴＡＢＨ  よりも小さければ、この現在値ａｈ（ｋ−１）  を強制的に該上限側第１所定値ＳＴＡＢＨ  に設定し直す（ＳＴＥＰ１０−１−１０，１０−１０−１１）。また、適応上限値ａｈの現在値ａｈ（ｋ−１）  が上限側第４所定値ＨＨよりも大きければ、この現在値ａｈ（ｋ−１）  を強制的に該上限側第４所定値ＨＨに設定し直す（ＳＴＥＰ１０−１−１２，１０−１−１３）。そして、これら以外の場合には、適応上限値ａｈの現在値ａｈ（ｋ−１）  を現状のままに保持する。
【０４３３】
さらに、リミッタ３０は、適応下限値ａｌの現在値ａｌ（ｋ−１）  についても、適応上限値ａｈの場合と同様に、該現在値ａｌ（ｋ−１）  を前記下限側第１所定値ＳＴＡＢＬ  と下限側第４所定値ＬＬ（図１８参照）との間の範囲内の値に制限する処理（適応下限値ａｌのリミット処理）を行う（ＳＴＥＰ１０−１−１４〜１０−１−１７。ａｈ，ＳＴＡＢＬ  ，ＬＬは負の値であることに注意）。
【０４３４】
このように現在の適応上限値ａｈ（ｋ−１）  及び適応下限値ａｌ（ｋ−１）  の値の範囲を制限した後、リミッタ３０は、前記アイドル外上限値ＡＨＦ  及びアイドル外下限値ＡＬＦ  を、それぞれ適応上限値ａｈ（ｋ−１）  、適応下限値ａｌ（ｋ−１）  の値に設定する（ＳＴＥＰ１０−１−１８）。
【０４３５】
さらに、リミッタ３０は、車両の発進直後の状態であるか否か、すなわち、エンジン１がその負荷である車両の駆動輪の駆動を開始してからの経過時間が所定時間に満たない状態であるか否かを判断する（ＳＴＥＰ１０−１−１９）。
【０４３６】
この判断は、例えば次のように行われる。すなわち、本実施形態では、エンジン１のアイドリング状態であるか否を表すデータと共に、車両の車速を表すデータが機関側制御ユニット７ｂから排気側制御ユニット７ａに与えられるようになっている。そして、リミッタ３０は、これらのデータにより、エンジン１のアイドリング状態で且つ車速が略「０」である状態（車両の駐停車状態）を把握し、その状態から車速が所定値（十分に小さい値）を超えた時を車両の発進開始時として認識する。さらにその認識した車両の発進時から図示しないタイマにより経過時間を計時し、その経過時間が所定時間に達するまでの期間を発進直後の状態として判断する。
【０４３７】
上記ＳＴＥＰ１０−１−１９の判断結果が車両の発進直後の状態である場合には、リミッタ３０は、前記アイドル外下限値ＡＬＦ  を前記負荷駆動後許容範囲（図１８参照）の下限値である前記下限側第２所定値ＶＳＴＬに設定し直した後（ＳＴＥＰ１０−１−２０）、図１９のルーチン処理に復帰する。
【０４３８】
また、車両の発進直後の状態でない場合には、前記ＳＴＥＰ１０−１−１８で設定したアイドリング外上限値ＡＨＦ  及びアイドリング外下限値ＡＬＦ  の値を維持したまま図１９のルーチン処理に復帰する。
【０４３９】
このＳＴＥＰ１０−１−１８〜１０−１−２０の処理によって、ＳＬＤ制御状態の低レベル不安定状態もしくは高レベル不安定状態、あるいはフュエルカットの直後の状態、始動直後の状態、アイドリング状態のいずれでもない場合においては、車両の発進直後の状態でもない場合に、前記要求偏差空燃比ｕｓｌにリミット処理を施すための許容範囲は、後に説明するように上限値（適応上限値ａｈ）及び下限値（適応下限値ａｌ）を逐次変化させる適応許容範囲に設定される。また、車両の発進直後の状態である場合には、要求偏差空燃比ｕｓｌにリミット処理を施すための許容範囲は、前記負荷駆動後許容範囲、すなわち、特に、下限側において比較的狭くなるような範囲（より一般的には下限値が前記下限側第２所定値ＶＳＴＬよりも大きくならないような範囲）に設定されることとなる。
【０４４０】
図１９に戻って、前述の如く要求偏差空燃比ｕｓｌにリミット処理を施すための許容範囲を決定した後、リミッタ３０は、エンジン１のアイドリング状態であるか否かを前記ＳＴＥＰ１０−１−８の場合と同様に判断する（ＳＴＥＰ１０−２）。
【０４４１】
このとき、エンジン１のアイドリング状態であれば、リミッタ３０は、前記ＳＴＥＰ１０−１−２，１０−１−４，１０−１−６，１０−１−９のいずれか（通常的にはＳＴＥＰ１０−１−９）で設定されたアイドル用上限値ＡＨＦＩ及びアイドル用下限値ＡＬＦＩにより定まる許容範囲（通常的には前記アイドル許容範囲）によって、前記要求偏差空燃比ｕｓｌにリミット処理を施して前記指令偏差空燃比ｋｃｍｄを決定する（ＳＴＥＰ１０−３〜１０−７）。
【０４４２】
すなわち、前記ＳＴＥＰ８（図８参照）でスライディングモード制御器２７が生成した要求偏差空燃比ｕｓｌがアイドル用下限値ＡＬＦＩを超えて許容範囲の下限側（負側）に逸脱している（ｕｓｌ＜ＡＬＦＩ）場合には、指令偏差空燃比ｋｃｍｄの値を強制的に該アイドル用下限値ＡＬＦＩに制限する（ＳＴＥＰ１０−３，１０−４）。また、要求偏差空燃比ｕｓｌがアイドル用上限値ＡＨＦＩを超えて許容範囲の上限側（正側）に逸脱している（ｕｓｌ＞ＡＨＦＩ）場合には、指令偏差空燃比ｋｃｍｄの値を強制的に該アイドル用上限値ＡＨＦＩに制限する（ＳＴＥＰ１０−５，１０−６）。そして、要求偏差空燃比ｕｓｌが許容範囲内にある（ＡＬＦＩ≦ｕｓｌ≦ＡＨＦＩ）ときには、該要求偏差空燃比ｕｓｌをそのまま指令偏差空燃比ｋｃｍｄとして設定する（ＳＴＥＰ１０−７）。
【０４４３】
尚、前記ＳＴＥＰ１０−３又は１０−５で前記要求偏差空燃比ｕｓｌがアイドル用上限値ＡＨＦＩ及びアイドル用下限値ＡＬＦＩ間の許容範囲を逸脱していた場合には、前記スライディングモード制御器２７が要求偏差空燃比ｕｓｌを生成する過程で求める適応則入力ｕａｄｐ  の値が必要以上に大きくなるのを防止するため、前記切換関数σバーの積算値（図１５のＳＴＥＰ８−２を参照）を強制的に前回の制御サイクルで求めた該積算値の値に設定し直す（ＳＴＥＰ１０−８）。また、前述の如くエンジン１のアイドリング状態での要求偏差空燃比ｕｓｌのリミット処理を行った場合には、前記適応上限値ａｈ及び適応下限値ａｌの値は現状の値に保持される（ＳＴＥＰ１０−９）。そして、前記ＳＴＥＰ１０−３〜１０−９の処理が終了した後には、図８のメインルーチンの処理に復帰する。
【０４４４】
一方、前記ＳＴＥＰ１０−２でエンジン１のアイドリング状態でない場合には、リミッタ３０は、前記ＳＴＥＰ１０−１−２，１０−１−４，１０−１−６，１０−１−１８，１０−１−２０のいずれか（通常的にはＳＴＥＰ１０−１−１８）で設定されたアイドル外上限値ＡＨＦ  及びアイドル外下限値ＡＬＦ  により定まる許容範囲（通常的には前記適応許容範囲）によって、前記要求偏差空燃比ｕｓｌにリミット処理を施して前記指令偏差空燃比ｋｃｍｄを決定する（ＳＴＥＰ１０−１０〜１０−１４）。
【０４４５】
すなわち、前記ＳＴＥＰ８（図８参照）でスライディングモード制御器２７が生成した要求偏差空燃比ｕｓｌがアイドル外下限値ＡＬＦ  を超えて許容範囲の下限側（負側）に逸脱している（ｕｓｌ＜ＡＬＦ  ）場合には、指令偏差空燃比ｋｃｍｄの値を強制的に該アイドル外下限値ＡＬＦ  に制限する（ＳＴＥＰ１０−１０，１０−１１）。また、要求偏差空燃比ｕｓｌがアイドル外上限値ＡＨＦ  を超えて許容範囲の上限側（正側）に逸脱している（ｕｓｌ＞ＡＨＦ  ）場合には、指令偏差空燃比ｋｃｍｄの値を強制的に該アイドル外上限値ＡＨＦ  に制限する（ＳＴＥＰ１０−１２，１０−１３）。そして、要求偏差空燃比ｕｓｌが許容範囲内にある（ＡＬＦ  ≦ｕｓｌ≦ＡＨＦ  ）ときには、該要求偏差空燃比ｕｓｌをそのまま指令偏差空燃比ｋｃｍｄとして設定する（ＳＴＥＰ１０−１４）。
【０４４６】
このようにしてアイドル外上限値ＡＨＦ  及びアイドル外下限値ＡＬＦ  により定まる許容範囲により要求偏差空燃比ｕｓｌのリミット処理を行った場合には、次に、リミッタ３０は、前記適応許容範囲に係わる適応上限値ａｈ及び適応下限値ａｌの値を更新する（変化させる）ための処理を行う（ＳＴＥＰ１０−１５〜１０−１９）。
【０４４７】
すなわち、前記ＳＴＥＰ１０−１４で前記要求偏差空燃比ｕｓｌが許容範囲内に収まっていた場合には、リミッタ３０は、前記適応下限値ａｌの現在値ａｌ（ｋ−１）  にあらかじめ定めた所定の変化量ΔＤＥＣ  （＞０。以下、縮小側単位変化量ΔＤＥＣ  という）だけ加算することで、新たな適応下限値ａｌ（ｋ）  を求める（ＳＴＥＰ１０−１５）。さらに、このＳＴＥＰ１０−１５では、前記適応上限値ａｈの現在値ａｈ（ｋ−１）  から上記縮小側単位変化量ΔＤＥＣ  を減算することで、新たな適応上限値ａｈ（ｋ）  を求める。
【０４４８】
また、前記ＳＴＥＰ１０−１０で前記要求偏差空燃比ｕｓｌがアイドル外下限値ＡＬＦ  を超えて許容範囲の下限側（負側）に逸脱していた場合には、リミッタ３０は、前記図２０のＳＴＥＰ１０−１−１９の場合と同様に、車両の発進直後の状態であるか否かを判断する（ＳＴＥＰ１０−１６）。このとき、車両の発進直後の状態でない場合には、前記適応下限値ａｌの現在値ａｌ（ｋ−１）  からあらかじめ定めた所定の変化量ΔＩＮＣ  （＞０。以下、拡大側単位変化量ΔＩＮＣ  という）を減算することで、新たな適応下限値ａｌ（ｋ）  を求める（ＳＴＥＰ１０−１７）。さらに、このＳＴＥＰ１０−１７では、適応上限値ａｈの現在値ａｈ（ｋ−１）  から前記縮小側単位変化量ΔＤＥＣ  だけ減算することで、新たな適応上限値ａｈ（ｋ）  を求める。
【０４４９】
尚、ＳＴＥＰ１０−１６で、車両の発進直後の状態である場合には、前記適応上限値ａｈ及び適応下限値ａｌの値は現状の値に保持される（ＳＴＥＰ１０−１８）。
【０４５０】
また、本実施形態では、前記縮小側単位変化量ΔＤＥＣ  と拡大側単位変化量ΔＩＮＣ  とに関しては、ΔＤＥＣ  ＜ΔＩＮＣ  とされている。
【０４５１】
また、前記ＳＴＥＰ１０−１２で前記要求偏差空燃比ｕｓｌがアイドル外上限値ＡＨＦ  を超えて許容範囲の下限側（正側）に逸脱していた場合には、リミッタ３０は、前記図２０のＳＴＥＰ１０−１−５、１０−１−７の場合と同様に、エンジン１のフュエルカット直後の状態（フュエルカット中を含む）及び始動開始直後の状態のいずれかの状態であるか否かを判断する（ＳＴＥＰ１０−１９）。このとき、いずれの状態でもない場合には、前記適応上限値ａｈの現在値ａｈ（ｋ−１）  に前記拡大側単位変化量ΔＩＮＣ  を加算することで、新たな適応上限値ａｈ（ｋ）  を求める（ＳＴＥＰ１０−２０）。さらに、このＳＴＥＰ１０−２０では、適応下限値ａｌの現在値ａｌ（ｋ−１）  に前記縮小側単位変化量ΔＤＥＣ  を加算することで、新たな適応下限値ａｌ（ｋ）  を求める。
【０４５２】
尚、ＳＴＥＰ１０−１９で、フュエルカット直後の状態及び始動開始直後の状態のいずれかの状態である場合には、前記適応上限値ａｈ及び適応下限値ａｌの値は現状の値に保持される（ＳＴＥＰ１０−２１）。
【０４５３】
また、前記ＳＴＥＰ１０−１０又は１０−１２で前記要求偏差空燃比ｕｓｌがアイドル外上限値ＡＨＦ  及びアイドル外下限値ＡＬＦ  により定まる許容範囲を逸脱していた場合には、前記ＳＴＥＰ１０−８の場合と同様に、前記切換関数σバーの積算値（図１５のＳＴＥＰ８−２）を強制的に前回の制御サイクルで求めた該積算値の値に設定し直す（ＳＴＥＰ１０−２２）。そして、前記ＳＴＥＰ１０−１０〜１０−２２の処理が終了した後には、図８のメインルーチンの処理に復帰する。
【０４５４】
また、本実施形態では、排気側制御ユニット７ａの起動時（車両の運転開始時）における前記適応下限値ａｌ及び適応上限値ａｈの初期値はそれぞれ前記下限側第４所定値Ｌ及び上限側第３所定値Ｈである。つまり適応許容範囲の初期範囲は、前記低安定用許容範囲と同じである。
【０４５５】
また、本実施形態では、エンジン１のアイドリング状態以外の運転状態において、ＳＬＤ制御状態が低レベルもしくは高レベル不安定状態であるときに、ＳＴＥＰ１０−１５，１０−１７，１０−２０による適応上限値ａｈ及び適応下限値ａｌの更新処理が行われるようになっているが、上記不安定状態では、次回の制御サイクルにおける前記ＳＴＥＰ１０−１−２あるいは１０−１−４の処理（図２０を参照）によって、適応上限値ａｈ及び適応下限値ａｌは低不安定用許容範囲や高不安定用許容範囲に対応した固定的な所定値（前記上限側第１所定値ＳＴＡＢＨ  等）に強制的に設定し直される。従って、ＳＬＤ制御状態が低レベルもしくは高レベル不安定状態であるときには、ＳＴＥＰ１０−１５，１０−１７，１０−２０の処理を省略してもよい。
【０４５６】
また、以上説明したＳＴＥＰ１０のリミット処理によって制御サイクル毎に決定される前記指令偏差空燃比ｋｃｍｄは、図示しないメモリに時系列的に記憶保持され、それが、推定器２６の前述の演算処理のために使用される。
【０４５７】
以上説明したＳＴＥＰ１０のリミット処理によって、エンジン１のアイドリング状態では、前記低安定用許容範囲、高安定用許容範囲、ＦＣ／始動後許容範囲（詳しくは下限値を前記下限側第３所定値ＬＩ（図１８参照）に固定したＦＣ／始動後許容範囲）、並びにアイドル許容範囲のいずれかの固定的な許容範囲が、ＳＬＤ制御状態やエンジン１の運転状態に応じて、要求偏差空燃比ｕｓｌに対するリミット処理用の許容範囲として設定される（通常的にはアイドル許容範囲が設定される）。そして、この設定された許容範囲により、要求偏差空燃比ｕｓｌに対するリミット処理が施され、該要求偏差空燃比ｕｓｌを該許容範囲内に制限してなる前記指令偏差空燃比ｋｃｍｄが決定される。
【０４５８】
また、エンジン１のアイドリング状態以外の運転状態では、前記低安定用許容範囲、高安定用許容範囲、ＦＣ／始動後許容範囲（詳しくは下限値を可変的な適応下限値ａｌとしたＦＣ／始動後許容範囲）、負荷駆動後許容範囲、並びに適応許容範囲のいずれかの許容範囲が、ＳＬＤ制御状態やエンジン１の運転状態に応じて、要求偏差空燃比ｕｓｌに対するリミット処理用の許容範囲として設定される（通常的には適応許容範囲が設定される）。そして、この設定された許容範囲により、要求偏差空燃比ｕｓｌに対するリミット処理が施され、該要求偏差空燃比ｕｓｌを該許容範囲内に制限してなる前記指令偏差空燃比ｋｃｍｄが決定される。
【０４５９】
この場合、エンジン１のアイドリング状態及びそれ以外の運転状態のいずれの運転状態であっても、前記ＳＴＥＰ９におけるＳＬＤ制御状態の安定性の判断結果が高レベル不安定状態であるときには、リミット処理用の許容範囲は、その上限値ＡＨＦ  又はＡＨＦＩ、及び下限値ＡＬＦ  又はＡＬＦＩをそれぞれ固定的な前記上限側第１所定値ＳＴＡＢＨ  、下限側第１所定値ＳＴＡＢＬ  とした最も範囲の狭い前記高不安定用許容範囲に設定される（前記ＳＴＥＰ１０−１−２）。
【０４６０】
また、ＳＬＤ制御状態の安定性の判断結果が低レベル不安定状態であって、且つエンジン１のアイドリング状態以外の運転状態であるときには、リミット処理用の許容範囲は、その上限値ＡＨＦ  及び下限値ＡＬＦ  をそれぞれ固定的な前記上限側第３所定値Ｈ、下限側第４所定値Ｌとした標準的な広さを有する低不安定用許容範囲に設定される（前記ＳＴＥＰ１０−１−４）。
【０４６１】
また、ＳＬＤ制御状態の低レベル不安定状態もしくは高レベル不安定状態、あるいはエンジン１のフュエルカットの直後の状態、始動直後の状態、車両の発進直後の状態のいずれでもなく、且つエンジン１のアイドリング状態であるときには、リミット処理用の許容範囲は、その上限値ＡＨＦＩ及び下限値ＡＬＦＩをそれぞれ固定的な前記上限側第２所定値ＨＩ、下限側第３所定値ＬＩとした比較的範囲の狭いアイドル許容範囲に設定される（前記ＳＴＥＰ１０−１−４、１０−１−９）。
【０４６２】
また、ＳＬＤ制御状態の低レベル不安定状態もしくは高レベル不安定状態、あるいはエンジン１のフュエルカットの直後の状態、始動直後の状態、アイドリング状態、車両の発進直後の状態のいずれでもない通常的な状態では、リミット処理に用いる許容範囲は、その上限値ＡＨＦ  及び下限値ＡＬＦ  をそれぞれ適応上限値ａｈ、適応下限値ａｌとした適応許容範囲に設定される（前記ＳＴＥＰ１０−１−１８）。
【０４６３】
そして、この適応許容範囲にあっては、要求偏差空燃比ｕｓｌが該適応許容範囲内に存する状態では（このときｋｃｍｄ＝ｕｓｌとなる）、リミット処理の後に、該適応許容範囲の適応上限値ａｈ及び適応下限値ａｌが、それぞれ前記上限側第１所定値ＳＴＡＢＨ  及び下限側第１所定値ＳＴＡＢＬ  を限界として、該適応許容範囲の上限側及び下限側の両者が縮小する方向で制御サイクル毎に前記縮小側単位変化量ΔＤＥＣ  づつ更新されていくこととなる（前記ＳＴＥＰ１０−１５）。
【０４６４】
また、要求偏差空燃比ｕｓｌが適応許容範囲から例えば上限側に逸脱した状況では（このときｋｃｍｄ＝ａｈ（ｋ−１）  となる）、リミット処理の後に、適応上限値ａｈが前記上限側第４所定値ＨＨを限界として、適応許容範囲の上限側（逸脱を生じた側）が拡大する方向で制御サイクル毎に前記拡大側単位変化量ΔＩＮＣ  づつ更新されると共に、適応下限値ａｌが前記下限側第１所定値ＳＴＡＢＬ  を限界として、  適応許容範囲の下限側（逸脱を生じた側と反対側）が縮小する方向で制御サイクル毎に前記縮小側単位変化量ΔＤＥＣ  づつ更新されることとなる（前記ＳＴＥＰ１０−２０）。
【０４６５】
同様に、要求偏差空燃比ｕｓｌが適応許容範囲から例えば下限側に逸脱した状況では（このときｋｃｍｄ＝ａｌ（ｋ−１）  となる）、リミット処理の後に、適応下限値ａｌが前記下限側第５所定値ＬＬを限界として、適応許容範囲の下限側（逸脱を生じた側）が拡大する方向で制御サイクル毎に前記拡大側単位変化量ΔＩＮＣ  づつ更新されると共に、適応上限値ａｈが前記上限側第１所定値ＳＴＡＢＨ  を限界として、  適応許容範囲の上限側（逸脱を生じた側と反対側）が縮小する方向で制御サイクル毎に前記縮小側単位変化量ΔＤＥＣ  づつ更新されることとなる（前記ＳＴＥＰ１０−１７）。
【０４６６】
このような適応許容範囲の時間的変化の様子を、要求偏差空燃比ｕｓｌの時間的変化の様子と併せて図２１に例示的に示す。図示の如く、適応許容範囲は、要求偏差空燃比ｕｓｌが該適応許容範囲内に存する（ａｌ＜ｕｓｌ＜ａｈ）ときには適応上限値ａｈ及び適応下限値ａｌの両者が適応許容範囲の縮小方向に更新されていくことで、該適応許容範囲の上限側及び下限側が漸次縮小されていく。
【０４６７】
さらに、要求偏差空燃比ｕｓｌが適応上限値ａｈ及び適応下限値ａｌのいずれか一方の限界値ａｈ又はａｌ側に適応許容範囲から逸脱したときには（ｕｓｌ＞ａｈ又はｕｓｌ＜ａｌ）、その一方（逸脱側）の限界値ａｈ又はａｌが適応許容範囲の拡大方向に更新されていくことで、適応許容範囲の当該一方の限界値ａｈ又はａｌ側が漸次拡大されていく。同時に、他方（逸脱側と反対側）の限界値ａｌ又はａｈが適応許容範囲の縮小方向に更新されていくことで、適応許容範囲の当該他方の限界値ａｌ又はａｈ側が漸次縮小されていく。
【０４６８】
また、ＳＬＤ制御状態が低レベルもしくは高レベル不安定状態である場合を除き、エンジン１のフュエルカット直後もしくは始動直後の状態であるときには、リミット処理用の許容範囲は、その上限値ＡＨＦ  又はＡＨＦＩを固定的な前記上限側第５所定値ＡＦＣＨとした前記ＦＣ／始動後許容範囲（上限側が最も広い許容範囲）に設定され、該上限値ＡＨＦ  又はＡＨＦＩが上限側第５所定値ＡＦＣＨよりも許容範囲の縮小方向の値になるのが禁止される（前記ＳＴＥＰ１０−１−６）。
【０４６９】
この場合、このＦＣ／始動後許容範囲にあっては、エンジン１のアイドリング状態では、下限値ＡＬＦＩが、前記アイドル許容範囲の下限値である固定的な前記下限側第３所定値ＬＩに設定される。また、エンジン１のアイドリング状態以外の運転状態では、ＦＣ／始動後許容範囲の下限値ＡＬＦ  は、可変的な適応下限値ａｌに設定される。そして、この下限値ＡＬＦ  （＝ａｌ）は、要求偏差空燃比ｕｓｌがＦＣ／始動後許容範囲の上限側に逸脱した場合を除いて、該要求偏差空燃比ｕｓｌのＦＣ／始動後許容範囲からの逸脱状況に応じて前記適応許容範囲の適応下限値ａｌと全く同様に制御サイクル毎に更新されることとなる（前記ＳＴＥＰ１０−１５，１０−１７，１０−２１）。
【０４７０】
このようなＦＣ／始動後許容範囲のうち、ＦＣ後許容範囲が許容範囲として設定される場合における該許容範囲の時間的変化の様子を要求偏差空燃比ｕｓｌの時間的変化の様子と併せて図２２に例示的に示す。同様に、始動後許容範囲が許容範囲として設定される場合における該許容範囲の時間的変化の様子を図２３に例示的に示す。
【０４７１】
図２２に示す如く、エンジン１のフュエルカットが開始すると、該フュエルカットの終了後、所定時間が経過するまでの間は（フュエルカットの直後の状態）、ＦＣ後許容範囲が要求偏差空燃比ｕｓｌのリミット処理用の許容範囲として設定され、その上限値ＡＨＦ  が前記上限側第５所定値ＡＨＦＣに固定的に維持される。従って、許容範囲（ＦＣ後許容範囲）の上限側は広いものとされる。この場合、図示の例では、エンジン１の運転状態はアイドリング状態以外の運転状態であり、ＦＣ後許容範囲の下限値ＡＬＦ  は適応下限値ａｌに設定される。そして、このＦＣ後許容範囲の下限値ＡＬＦ  は基本的には、前記適応許容範囲の場合と同様に逐次更新されていく。但し、フュエルカット直後の状態（フュエルカット中を含む）で、要求偏差空燃比ｕｓｌが、ＦＣ後許容範囲の上限値ＡＨＦ  （＝ＡＨＦＣ）を超えている状態では、該ＦＣ後許容範囲の下限値ＡＬＦ  （＝ａｌ）  は一定に保持される（更新されない）。
【０４７２】
尚、同図２２では、フュエルカットの開始前と、フュエルカットの終了後、所定時間が経過した後における許容範囲が、適応許容範囲に設定される場合（通常的な動作状態）を例示している。また、本実施形態では、フュエルカット中もフュエルカット直後の状態に含めているため、該フュエルカットの開始時から許容範囲をＦＣ後許容範囲とし、その上限値ＡＨＦ  を前記上限側第５所定値ＡＨＦＣに設定するようにしているが、フュエルカット中は、目標空燃比生成処理部２８が生成する目標空燃比ＫＣＭＤによる空燃比の操作を行わない。従って、該フュエルカット中の許容範囲は任意でよく、必ずしもＦＣ後許容範囲に設定する必要はない。あるいは、フュエルカット中は、要求偏差空燃比ｕｓｌのリミット処理を行わないようにしてもよい。
【０４７３】
一方、始動後許容範囲の設定に関しては、図２３に示す如く、エンジン１の始動後、目標空燃比生成処理部２８の演算処理が開始すると（この開始タイミングは、基本的にはＯ２  センサ６及びＬＡＦセンサ５の両者の活性化が確認された時点である。図９を参照）、要求偏差空燃比ｕｓｌの算出が開始されると共に、これにリミット処理を施す許容範囲は、始動後許容範囲に設定され、その上限値ＡＨＦＩ（図示の例ではエンジン１の始動後の運転状態はアイドリング状態である）が、エンジン１の始動時から所定時間が経過するまでは、前記上限側第５所定値ＡＨＦＣに固定的に維持される（許容範囲の上限側が広いものとされる）。この場合、エンジン１のアイドリング状態であるので、始動後許容範囲の下限値ＡＬＦＩは、前記下限側第３所定値ＬＩに設定される。
【０４７４】
尚、エンジン１の始動後の運転状態がアイドリング状態に維持されれば、エンジン１の始動後、所定時間が経過した後における許容範囲は基本的には、図示の如く前記アイドル許容範囲（ＡＨＦＩ＝ＨＩ、ＡＨＬＩ＝ＬＩ）に設定される。
【０４７５】
また、ＳＬＤ制御状態の低レベルもしくは高レベル不安定状態、あるいはエンジン１のフュエルカット直後もしくは始動直後の状態のいずれでもなく、エンジン１を搭載した車両の発進直後の状態であるときには（このときエンジン１のアイドリング状態ではない）、リミット処理用の許容範囲は、その下限値ＡＬＦ  を固定的な前記下限側第２所定値ＶＳＴＬとした前記負荷駆動後許容範囲（下限側が狭い許容範囲）に設定され、該下限値ＡＬＦ  が下限側第２所定値ＶＳＴＬよりも許容範囲の拡大方向の値になるのが禁止される（前記ＳＴＥＰ１０−１−２０）。
【０４７６】
この場合、この負荷駆動後許容範囲にあっては、その上限値ＡＨＦ  は、可変的な適応上限値ａｈに設定される（前記ＳＴＥＰ１０−１−１８）。そして、この上限値ＡＨＦ  （＝ａｈ）は、要求偏差空燃比ｕｓｌが負荷駆動後許容範囲の下限側に逸脱した場合を除いて、該要求偏差空燃比ｕｓｌの負荷駆動後許容範囲からの逸脱状況に応じて前記適応許容範囲の適応上限値ａｈと全く同様に制御サイクル毎に更新されることとなる（前記ＳＴＥＰ１０−１５，１０−１８，１０−２０）。
【０４７７】
このような負荷駆動後許容範囲が許容範囲として設定される場合における該許容範囲の時間的変化の様子を要求偏差空燃比ｕｓｌの時間的変化の様子と併せて図２４に例示的に示す。
【０４７８】
図２４に示す如く、エンジン１のアイドリング状態から車両の発進を開始する（エンジン１がその負荷の駆動を開始する）と、その発進開始後、所定時間が経過するまでの間は（発進直後の状態）、許容範囲は、負荷駆動後許容範囲とされ、その下限値ＡＬＦ  は、前記下限側第２所定値ＶＳＴＬに固定的に維持される。従ってて、許容範囲（負荷駆動後許容範囲）の下限側は比較的狭いものとされる。この場合、該負荷駆動後許容範囲の上限値ＡＨＦ  は、適応上限値ａｈに設定され、前記適応許容範囲の場合と同様に逐次更新されていく。
【０４７９】
尚、車両の発進前のエンジン１のアイドリング状態では、許容範囲は図示の如く、通常的にはアイドル許容範囲（ＡＨＦＩ＝ＨＩ、ＡＨＬＩ＝ＬＩ）に設定される。また、図２４では、車両の発進後、所定時間が経過した後における許容範囲が、適応許容範囲に設定される場合（通常的な状態）を例示している。
【０４８０】
以上説明した内容が前記ＳＴＥＰ１０におけるリミット処理の詳細である。
【０４８１】
図８に戻って、目標空燃比生成処理部２８は、前述のようにリミッタ３０で求めた指令偏差空燃比ｋｃｍｄに前記空燃比基準値ＦＬＡＦ／ＢＡＳＥ  （より詳しくは前回の制御サイクルにおける後述のＳＴＥＰ１２で基準値設定部１１が求めた空燃比基準値ＦＬＡＦ／ＢＡＳＥ  ）を前記加算処理部３１で加算することで、今回の制御サイクルにおける目標空燃比ＫＣＭＤを算出する（ＳＴＥＰ１１）。
【０４８２】
このようにして求められた目標空燃比ＫＣＭＤは、制御サイクル毎に図示しないメモリに時系列的に記憶保持される。そして、前記機関側制御ユニット７ｂが、排気側主演算処理部１３で決定された目標空燃比ＫＣＭＤを用いるに際しては（図８のＳＴＥＰｆを参照）、上記のように時系列的に記憶保持された目標空燃比ＫＣＭＤの中から最新のものが選択される。
【０４８３】
次いで、目標空燃比生成処理部２８は、前記基準値設定部１１により空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を設定する処理（更新処理）を行った後（ＳＴＥＰ１２）、今回の制御サイクルの処理を終了する。
【０４８４】
この場合、本実施形態では、空燃比基準値ＦＬＡＦ／ＢＡＳＥ  は、あらかじめ定めた一定値とした固定的な成分ｆｌａｆ／ｂａｓｅ  （以下、基準値固定成分ｆｌａｆ／ｂａｓｅ  という）と、可変的な成分ｆｌａｆ／ａｄｐ（以下、基準値可変成分ｆｌａｆ／ａｄｐという）との和、すなわち、ＦＬＡＦ／ＢＡＳＥ  ＝ｆｌａｆ／ｂａｓｅ  ＋ｆｌａｆ／ａｄｐとして定義している。そして、空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を可変的に設定するに際しては、上記基準値可変成分ｆｌａｆ／ａｄｐの値を調整するようにしている。尚、上記基準値固定成分ｆｌａｆ／ｂａｓｅ  は、本実施形態では、例えば「１」（空燃比換算値）としている。
【０４８５】
ＳＴＥＰ１２の処理は図２５のフローチャートに示すように行われる。
【０４８６】
すなわち、基準値設定部１１は、まず、前記Ｏ２  センサ６の偏差出力ＶＯ２  が「０」近傍にあらかじめ定めた所定範囲（下限値及び上限値をそれぞれ所定値（固定値）ＡＤＬ  （＜０）、ＡＤＨ  （＞０）とした範囲。以下、収束判別範囲という）内の値であるか否を判断することで、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  がその目標値ＶＯ２／ＴＡＲＧＥＴにほぼ収束している状態であるか否かを判断する（ＳＴＥＰ１２−１）。尚、本実施形態では、上記収束判別範囲の上限値ＡＤＨ  及び下限値ＡＤＬ  の絶対値は同一とされている（｜ＡＤＨ  ｜＝｜ＡＤＬ  ｜）
このとき、偏差出力ＶＯ２  が収束判別範囲内にあり（ＡＤＬ  ＜ＶＯ２  ＜ＡＤＨ  の条件が成立）、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  が目標値ＶＯ２／ＴＡＲＧＥＴにほぼ収束している場合には、基準値設定部１１はさらに、前記リミッタ３０が前記ＳＴＥＰ９の処理（ＳＬＤ制御状態の安定性の判別処理）で求めた前記安定性判別基本パラメータＰｓｔｂ  （図１６のＳＴＥＰ９−１を参照）の値をあらかじめ定めた所定値δ（＞０）と比較することで、前記図１６のＳＴＥＰ９−４の場合と同様に、前記ＳＬＤ制御状態の安定性を判別する（ＳＴＥＰ１２−２）。
【０４８７】
尚、このＳＴＥＰ１２−２で安定性判別基本パラメータＰｓｔｂ  と比較する所定値δは、図１６のＳＴＥＰ９−１で用いた所定値εよりも小さな値とされ、ＳＬＤ制御状態を安定であると判断するための条件をより厳しいものとしている。
【０４８８】
この安定性の判別においてＰｓｔｂ  ＜δであって、ＳＬＤ制御状態が安定であると判断される場合には、基準値設定部１１は、前記図１５のＳＴＥＰ８−３でスライディングモード制御器２７が求めた適応則入力ｕａｄｐ  （要求偏差空燃比ｕｓｌの適応則成分）の値に応じて前記基準値可変成分ｆｌａｆ／ａｄｐを調整する処理を行う（ＳＴＥＰ１２−３〜１２−７）。
【０４８９】
さらに詳細には、基準値設定部１１は、適応則入力ｕａｄｐ  の値を、「０」近傍にあらかじめ定めた所定範囲（下限値及び上限値をそれぞれ所定値（固定値）ＮＲＬ  （＜０）、ＮＲＨ  （＞０）とした範囲。以下、基準値調整用不感帯という）と比較する（ＳＴＥＰ１２−３，１２−５）。尚、本実施形態では、上記基準値調整用不感帯の上限値ＦＡＤＰ／ＮＲＨ及び下限値ＦＡＤＰ／ＮＲＬの絶対値は同一とされている（｜ＮＲＬ  ｜＝｜ＮＲＨ  ｜）。
【０４９０】
そして、基準値設定部１１は適応則入力ｕａｄｐ  が該基準値調整用不感帯の下限値ＮＲＬ  よりも小さい場合（ｕａｄｐ  ＜ＮＲＬ  である場合）には、前記基準値可変成分ｆｌａｆ／ａｄｐの現在値ｆｌａｆ／ａｄｐ（ｋ−１）  （前回の制御サイクルで決定された値）から、あらかじめ定めた所定の（一定の）変化量Δｆｌａｆ（＞０。以下、基準値単位変化量Δｆｌａｆ）を減算することで新たな基準値可変成分ｆｌａｆ／ａｄｐ（ｋ）  を求める（ＳＴＥＰ１２−４）。つまり、基準値可変成分ｆｌａｆ／ａｄｐの値を基準値単位変化量Δｆｌａｆだけ減少させる。
【０４９１】
また、適応則入力ｕａｄｐ  が上記基準値調整用不感帯の上限値ＦＡＤＰ／ＮＲＨよりも大きい場合（ｕａｄｐ  ＞ＮＲＨ  である場合）には、前記基準値可変成分ｆｌａｆ／ａｄｐの現在値ｆｌａｆ／ａｄｐ（ｋ−１）  に、基準値単位変化量Δｆｌａｆを加算することで新たな基準値可変成分ｆｌａｆ／ａｄｐ（ｋ）  を求める（ＳＴＥＰ１２−６）。つまり、基準値可変成分ｆｌａｆ／ａｄｐの値を基準値単位変化量Δｆｌａｆだけ増加させる。
【０４９２】
そして、適応則入力ｕａｄｐ  が上記基準値調整用不感帯に収まっている場合（ＮＲＬ  ＜ｕａｄｐ  ＜ＮＲＨ  の場合）には、基準値可変成分ｆｌａｆ／ａｄｐの値を変化させることなく、現在値ｆｌａｆ／ａｄｐ（ｋ−１）  に保持する（ＳＴＥＰ１２−７）。
【０４９３】
次いで、基準値設定部１１は、このようにＳＴＥＰ１２−４，１２−６，１２−７のいずれかで決定した基準値可変成分ｆｌａｆ／ａｄｐの値を前記基準値固定成分ｆｌａｆ／ｂａｓｅ  に加算することで、次回の制御サイクルにおける前記ＳＴＥＰ１１で目標空燃比ＫＣＭＤを求めるために使用する空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を決定し（ＳＴＥＰ１２−８）、図８のメインールチンの処理に復帰する。
【０４９４】
また、前記ＳＴＥＰ１２−１の判断において、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  が目標値ＶＯ２／ＴＡＲＧＥＴに未収束状態である場合（ＶＯ２  ≦ＡＤＬ  又はＶＯ２  ≧ＡＤＨ  の場合）、あるいは、ＳＴＥＰ１２−２の判断において、ＳＬＤ制御状態が不安定である場合（Ｐｓｔｂ  ≧δの場合）には、基準値可変成分ｆｌａｆ／ａｄｐの値を変更することなく前記ＳＴＥＰ１２−７の処理を行って基準値可変成分ｆｌａｆ／ａｄｐの値を現在値ｆｌａｆ／ａｄｐ（ｋ−１）  に保持する。そして、前記ＳＴＥＰ１２−８の処理（空燃比基準値ＦＬＡＦ／ＢＡＳＥ  の決定）を経て図８のメインルーチンの処理に復帰する。
【０４９５】
尚、上記のようにして適応則入力ｕａｄｐ  に応じて適宜変更する前記基準値可変成分ｆｌａｆ／ａｄｐの値は、エンジン１の運転を停止し、排気側制御ユニット７ａ等をＯＦＦ状態としても失われることの無いように図示しない不揮発性メモリ（例えばＥＥＰＲＯＭ）に記憶保持する。そして、その記憶保持した基準値可変成分ｆｌａｆ／ａｄｐの値は、次回のエンジン１の運転時における基準値可変成分ｆｌａｆ／ａｄｐの初期値として用いる。また、エンジン１の運転を最初に行ったときの基準値可変成分ｆｌａｆ／ａｄｐの初期値は「０」である。
【０４９６】
以上説明したＳＴＥＰ１２の処理における適応則入力ｕａｄｐ  の変化の様子と、これに応じた前記基準値可変成分ｆｌａｆ／ａｄｐ及び空燃比基準値ＦＬＡＦ／ＢＡＳＥ  の変化の様子とをそれぞれ図２６の第１段及び第２段に例示的に示す。
【０４９７】
図示の如く、適応則入力ｕａｄｐ  が前記基準値調整用不感帯内に存するときには（図２１のＴ１，Ｔ３，Ｔ５期間）、基準値可変成分ｆｌａｆ／ａｄｐ及び空燃比基準値ＦＬＡＦ／ＢＡＳＥ  は、変更されず、一定に保持されるが、適応則入力ｕａｄｐ  が基準値調整用不感帯の上限値ＦＡＤＰ／ＮＲＨよりも大きい状態では（図２１のＴ２期間）、基準値可変成分ｆｌａｆ／ａｄｐ及び空燃比基準値ＦＬＡＦ／ＢＡＳＥ  は、基準値単位変化量Δｆｌａｆづつ制御サイクル毎に増加されていく。また、適応則入力ｕａｄｐ  が基準値調整用不感帯の下限値ＦＡＤＰ／ＮＲＬよりも小さい状態では（図２１のＴ４期間）、基準値可変成分ｆｌａｆ／ａｄｐ及び空燃比基準値ＦＬＡＦ／ＢＡＳＥ  は、基準値単位変化量Δｆｌａｆづつ制御サイクル毎に減少されていく。このようにして、最終的には、基準値可変成分ｆｌａｆ／ａｄｐ及び空燃比基準値ＦＬＡＦ／ＢＡＳＥ  は、適応則入力ｕａｄｐ  が基準値調整用不感帯内に収まるような値に収束していく。
【０４９８】
以上説明した内容が本実施形態の装置の詳細な作動である。
【０４９９】
すなわち、その作動を要約すれば、基本的には目標空燃比生成処理部１３の操作量生成部２９（スライディングモード制御器２７、推定器２６、同定器２５）によって、触媒装置３の下流側のＯ２  センサ６の出力ＶＯ２／ＯＵＴ  を目標値ＶＯ２／ＴＡＲＧＥＴに収束させるために対象排気系Ｅに与えるべき入力としての要求偏差空燃比ｕｓｌ（上記収束のために要求されるエンジン１の空燃比と空燃比基準値ＦＬＡＦ／ＢＡＳＥ  との偏差）が逐次生成される。そして、この要求偏差空燃比ｕｓｌにリミット処理を施してなる指令偏差空燃比ｋｃｍｄ（基本的にはｋｃｍｄ＝ｕｓｌ）に空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を加算することで目標空燃比ＫＣＭＤが逐次決定される。さらに、機関側制御ユニット７ｂによって、この目標空燃比ＫＣＭＤにＬＡＦセンサ５の出力（空燃比の検出値）を収束させるようにエンジン１の燃料噴射量を調整することで、エンジン１の空燃比が目標空燃比ＫＣＭＤにフィードバック制御される。これにより、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  を目標値ＶＯ２／ＴＡＲＧＥＴに収束制御し、ひいては触媒装置３の経時劣化等によらずに、触媒装置３の最適な排ガス浄化性能を確保することができる。
【０５００】
この場合、本実施形態では、操作量生成部２９は、スライディングモード制御器２７によって、外乱等の影響に対する安定性の高い適応スライディングモード制御の処理を実行することで要求偏差空燃比ｕｓｌを算出する。そして、この要求偏差空燃比ｕｓｌの算出に際しては、触媒装置３を含む対象排気系Ｅの無駄時間ｄ１と空燃比操作系（エンジン１及び機関側制御ユニット７ｂからなる系）の無駄時間ｄ２とを合わせた合計無駄時間ｄ後のＯ２  センサ６の偏差出力ＶＯ２  の推定値である推定偏差出力ＶＯ２  バーを推定器２６により逐次求める。そして、この推定偏差出力ＶＯ２  バーを用いて構築した適応スライディングモード制御の処理（より詳しくは推定偏差出力ＶＯ２  バーを「０」に収束させるように構築した適応スライディングモード制御の処理）をスライディングモード制御器２７に実行させることで要求偏差空燃比ｕｓｌを求める。
【０５０１】
これにより、対象排気系Ｅ及び空燃比操作系の両者の無駄時間ｄ１，ｄ２の影響を補償しつつ、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  を目標値ＶＯ２／ＴＡＲＧＥＴに収束制御する上で適正な要求偏差空燃比ｕｓｌを生成することができる。
【０５０２】
さらに、スライディングモード制御器２７による適応スライディングモード制御の処理や、推定器２６による推定偏差出力ＶＯ２  バーの算出処理に必要となる前記排気系モデル（対象排気系Ｅの挙動を表現するモデル）のパラメータとしての前記ゲイン係数ａ１，ａ２，ｂ１を同定器２５によってリアルタイムで逐次同定する。そして、スライディングモード制御器２７や推定器２６は、それぞれ、このゲイン係数ａ１，ａ２，ｂ１の同定値である前記同定ゲイン係数ａ１ハット，ａ２ハット，ｂ１ハットを用いて前記要求偏差空燃比ｕｓｌ、推定偏差出力ＶＯ２  バーを求める。
【０５０３】
これにより、同定ゲイン係数ａ１ハット，ａ２ハット，ｂ１ハットの値を対象排気系Ｅの挙動状態に則したものとして、その信頼性を高めることができ、ひいては、要求偏差空燃比ｕｓｌや推定偏差出力ＶＯ２  バーの信頼性を高めることができる。
【０５０４】
さらに、エンジン１の空燃比を操作する機関側制御ユニット７ｂにあっては、エンジン１の挙動変化等の影響を的確に補償し得る漸化式形式の制御器としての適応制御器１８を主体として、エンジン１の空燃比を目標空燃比ＫＣＭＤに操作する。このため、エンジン１の空燃比を目標空燃比ＫＣＭＤに安定して精度よく操作することができ、ひいてはＯ２  センサ６の出力ＶＯ２／ＯＵＴ  の目標値ＶＯ２／ＴＡＲＧＥＴへの収束制御を安定して精度よく行うことができる。
【０５０５】
また、本実施形態では、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  を目標値ＶＯ２／ＴＡＲＧＥＴに収束制御すべく操作量生成部２９が生成する要求偏差空燃比ｕｓｌにリミット処理を施して許容範囲内に制限してなる指令偏差空燃比ｋｃｍｄによって最終的に目標空燃比ＫＣＭＤを決定することで、要求偏差空燃比ｕｓｌがスパイク的に大きな変動を生じた場合等に、目標空燃比ＫＣＭＤ、ひいてはエンジン１の実際の空燃比の過大な変動を回避し、エンジン１の運転状態の安定性を確保することができる。
【０５０６】
この場合、本実施形態では、要求偏差空燃比ｕｓｌのリミット処理用の許容範囲として、通常的には、前記適応許容範囲が設定され、その適応上限値ａｈ及び適応下限値ａｌは、前述の如く要求偏差空燃比ｕｓｌの該許容範囲からの逸脱状況に応じて（詳しくは、上限値及び下限値に対する要求偏差空燃比ｕｓｌの大小関係に応じて）逐次可変的に更新されていく（図２１を参照）。
【０５０７】
このため、適応許容範囲を、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  を目標値ＶＯ２／ＴＡＲＧＥＴに収束させるために対象排気系Ｅに与えるべき入力として生成される要求偏差空燃比ｕｓｌの値の範囲に過不足なく整合したものとすることができる。
【０５０８】
例えば、定常的に生成される要求偏差空燃比ｕｓｌの値の範囲が比較的狭いものとなるような状況（要求偏差空燃比ｕｓｌが定常的に適応許容範囲内に収まるような状況）では、それに合わせて適応許容範囲を狭めることができる。逆に、要求偏差空燃比ｕｓｌの値の範囲が比較的広いものとなるような状況（要求偏差空燃比ｕｓｌが頻繁に適応許容範囲から逸脱するような状況）では、それに合わせて適応許容範囲を広げることができる。また、例えば要求偏差空燃比ｕｓｌの値の範囲が適応許容範囲の上限側（正側）に偏りを生じたような状況（要求偏差空燃比ｕｓｌが頻繁に適応許容範囲の上限側に逸脱するような状況）では、それに合わせて適応許容範囲も正側に偏らせることができる。
【０５０９】
これにより、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  を目標値ＶＯ２／ＴＡＲＧＥＴに収束させる上で適正な要求偏差空燃比ｕｓｌが許容範囲（適応許容範囲）内に収まりやすくなって、該要求偏差空燃比ｕｓｌをそのまま指令偏差空燃比ｋｃｍｄとして目標空燃比ＫＣＭＤが決定される（ＫＣＭＤ＝ｕｓｌ＋ＦＬＡＦ／ＢＡＳＥ  となる）機会が多くなる。そして、特に本実施形態では要求偏差空燃比ｕｓｌを適応スライディングモード制御の処理を用いて生成するので、該要求偏差空燃比ｕｓｌの安定性や信頼性が高い。この結果、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  の目標値ＶＯ２／ＴＡＲＧＥＴへの収束制御を安定して行うことができる。
【０５１０】
同時に、要求偏差空燃比ｕｓｌが外乱等の影響で一時的に大きく変動してスパイク状のものとなり、許容範囲（適応許容範囲）を逸脱したような状況では、前記指令偏差空燃比ｋｃｍｄを該許容範囲内の値に制限して、目標空燃比ＫＣＭＤの大きな変動を避け、エンジン１の安定した運転状態を確保することができる。そして、この場合、要求偏差空燃比ｕｓｌに対するリミット処理を行った後に適応許容範囲を更新するので、上記のような不適正な要求偏差空燃比ｕｓｌをそのまま用いた目標空燃比ＫＣＭＤの決定、及びこれに応じたエンジン１の空燃比の操作を確実に排除することができる。
【０５１１】
また、適応許容範囲の更新に際しては、その上限側あるいは下限側の拡大方向での適応上限値ａｈあるいは適応下限値ａｌの１制御サイクル当たりの変化量を規定する前記拡大側単位変化量ΔＩＮＣ  を、縮小方向での適応上限値ａｈあるいは適応下限値ａｌの１制御サイクル当たりの変化量を規定する前記縮小側単位変化量ΔＤＥＣ  よりも大きいものとしている。このため、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  を目標値ＶＯ２／ＴＡＲＧＥＴに収束させる上で適正な要求偏差空燃比ｕｓｌが適応許容範囲から逸脱するような状況では、速やかに、該要求偏差空燃比ｕｓｌが内部に収まるような許容範囲に該適応許容範囲を変化させることができる。
【０５１２】
さらに、前記適応許容範囲は、その適応上限値ａｈが前記上限側第１所定値ＳＴＡＢＨ  と上限側第４所定値ＨＨとの間の範囲に制限されると共に、適応下限値ａｌが前記下限側第１所定値ＳＴＡＢＬ  と下限側第５所定値ＬＬとの間の範囲に制限される（前記図２０のＳＴＥＰ１０−１−１０〜１０−１−１７を参照）。これにより、目標空燃比ＫＣＭＤが、過剰にリーン側あるいはリッチ側の値になって、エンジン１の円滑な運転を行う上で不適正なものとなってしまうような事態を回避することができる。
【０５１３】
また、本実施形態では、上記のように要求偏差空燃比ｕｓｌのリミット処理用の許容範囲を可変的な適応許容範囲に設定する他、ＳＬＤ制御状態が不安定であると判断される場合や、エンジン１の特定の運転状態（フュエルカット直後の状態やアイドリング状態等）においては、それぞれに応じた許容範囲を前述の如く設定することで次のような効果がある。
【０５１４】
すなわち、ＳＬＤ制御状態が不安定であるような場合には、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  が不安定となって、変動を生じ易いが、本実施形態では、このような状況では、比較的狭めの前記低不安定用許容範囲もしくは高不安定用許容範囲がリミット処理用の許容範囲として設定される。このため、前記指令偏差空燃比ｋｃｍｄ、ひいては目標空燃比ＫＣＭＤの変動が抑えられ、この結果、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  を安定化することができる
しかも、ＳＬＤ制御状態が不安定であると判断されるときに設定する許容範囲は、低レベル不安定状態である場合よりも高レベル不安定状態である場合の方が狭い（図１８参照）。つまり、ＳＬＤ制御状態の不安定さの度合いが高い程、許容範囲を狭くしている。このため、高レベル不安定状態では、指令偏差空燃比ｋｃｍｄ、ひいては目標空燃比ＫＣＭＤの変動をできるだけ積極的に抑えて、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  の安定性を確実に確保することができる。また、低レベル不安定状態では、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  の安定化を図りつつ、該出力ＶＯ２／ＯＵＴ  の目標値ＶＯ２／ＴＡＲＧＥＴへの収束性もある程度確保することができる。
【０５１５】
さらに、本実施形態では、目標空燃比生成処理部２８が生成する目標空燃比ＫＣＭＤによるエンジン１の空燃比の操作（Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  の目標値ＶＯ２／ＴＡＲＧＥＴへの収束制御）を開始してから所定時間（：ＴＭＳＴＢ  ）は、ＳＬＤ制御状態の安定性の判断を行わなず（ＳＬＤ処理処理状態が安定であると見なす。図７のＳＴＥＰｄ−１１、図１６のＳＴＥＰ９−２，９−３を参照）、前記低不安定用許容範囲や高不安定用許容範囲が要求偏差空燃比ｕｓｌのリミット処理用の許容範囲として設定されるのを排除する。つまり、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  の収束制御の開始直後は、該出力ＶＯ２／ＯＵＴ  が目標値ＶＯ２／ＴＡＲＧＥＴに収束していないため、その収束を促進するために、できるだけ、指令偏差空燃比ｋｃｍｄが許容範囲の上限値あるいは下限値に制限されるのを避け、要求偏差空燃比ｕｓｌがそのまま指令偏差空燃比ｋｃｍｄとなるような頻度を高める。これにより、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  を速やかに目標値ＶＯ２／ＴＡＲＧＥＴに近づけていくことができる。
【０５１６】
また、エンジン１のフュエルカット直後の状態では、前記図２２に示した如く、リミット処理用の許容範囲をＦＣ後許容範囲とし、その上限側を広いものとする。すなわち、フュエルカット中は触媒装置３に大量の酸素が貯えられるため、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  は、その目標値ＶＯ２／ＴＡＲＧＥＴよりも空燃比のリーン側（Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  が小さくなる側。図２を参照）に離間する。従って、このフュエルカットの直後は、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  を目標値ＶＯ２／ＴＡＲＧＥＴに収束させるための要求偏差空燃比ｕｓｌは、図２２に示した如く、空燃比をリッチ側に変化させる方向（本実施形態では、これは要求偏差空燃比ｕｓｌの正方向で、許容範囲の上限側である）で大きなものとなる。このため、本実施形態では、ＦＣ後許容範囲の上限値を前記上限側第５所定値ＡＦＣＨとして、該許容範囲を上限側に広いものとする。これにより、フュエルカット直後における指令偏差空燃比ｋｃｍｄが要求偏差空燃比ｕｓｌに合わせて許容範囲の上限側に大きな値を採ることが可能となり、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  を目標値ＶＯ２／ＴＡＲＧＥＴへの収束を迅速に行うことができる。
【０５１７】
また、エンジン１の始動直後の状態においては、前記図２３に示した如く、リミット処理用の許容範囲を始動後許容範囲とし、その上限側をフュエルカット直後の場合と同様に、広いものとする。すなわち、エンジン１の始動時のクランキング動作中に触媒装置３へ送り込まれる酸素が触媒装置３に貯えられるため、エンジン１の始動直後は、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  が、目標値ＶＯ２／ＴＡＲＧＥＴよりも空燃比のリーン側に離間した状態となり易い。このため、本実施形態では、フュエルカット直後の場合と同様に、始動後許容範囲の上限側（空燃比のリッチ側に対応する側）を広いものとする。これにより、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  を目標値ＶＯ２／ＴＡＲＧＥＴへの収束を迅速に行うことができる。
【０５１８】
また、車両の発進直後の状態、すなわち、エンジン１がその負荷の駆動を開始した直後の状態では、前記図２４に示した如く、リミット処理用の許容範囲を負荷駆動後許容範囲とし、その下限側を狭いものとする。すなわち、エンジン１がその負荷の駆動を開始した直後は、エンジン１の空燃比がリーン側に変移しやすい。そして、このような状況が、要求偏差空燃比ｕｓｌにより空燃比をリーン方向（本実施形態では、これは要求偏差空燃比ｕｓｌの負方向で、許容範囲の下限側である）に変化させようとしているときに生じると、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  が目標値ＶＯ２／ＴＡＲＧＥＴに対して過大に空燃比のリーン方向に変化してしまいやすい。このため、本実施形態では、負荷駆動後許容範囲の下限値を前記下限側第２所定値ＶＳＴＬとして、該許容範囲を下限側に狭いものとする。これにより、車両の発進直後（エンジン１がその負荷の駆動を開始した直後）における指令偏差空燃比ｋｃｍｄが許容範囲の下限側で採り得る値の大きさ（絶対値）を小さめの値に制限し、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  の安定性を確保することができる。
【０５１９】
尚、本実施形態では、要求偏差空燃比ｕｓｌを、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  を目標値ＶＯ２／ＴＡＲＧＥＴに収束させる上で対象排気系Ｅに与えるべき空燃比から空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を減算したものとして定義しているため、許容範囲の上限側（正側）が空燃比のリッチ側に対応し、下限側（負側）が空燃比のリーン側に対応するものとなっている。但し、要求偏差空燃比ｕｓｌを、空燃比基準値ＦＬＡＦ／ＢＡＳＥ  から、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  を目標値ＶＯ２／ＴＡＲＧＥＴに収束させる上で対象排気系Ｅに与えるべき空燃比を減算したものとして定義することも可能である。この場合には、要求偏差空燃比ｕｓｌの符号が本実施形態と逆になるため、許容範囲の上限側（正側）が空燃比のリーン側に対応し、下限側（負側）が空燃比のリッチ側に対応するものとなる。
【０５２０】
また、エンジン１のアイドリング状態では、リミット処理用の許容範囲を基本的には前記アイドル許容範囲に設定し、その上限側と下限側との両者を、比較的狭めのものとする。すなわち、エンジンのアイドリング状態では、エンジン１の空燃比をあまり変化させると、該アイドリング状態の安定性が損なわれやすい。このため、本実施形態では、エンジン１のアイドリング状態では、狭めのアイドル許容範囲を要求偏差空燃比ｕｓｌのリミット処理用の許容範囲として設定する。これにより、エンジン１のアイドリング状態の安定性を確保しつつ、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  の目標値ＶＯ２／ＴＡＲＧＥＴへの収束制御を行うことができる。
【０５２１】
さらに、本実施形態では、前記空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を、スライディングモード制御器２７が生成する要求偏差空燃比ｕｓｌの適応則に基づく成分である適応則入力ｕａｄｐ  に応じて前述の如く可変的に設定することで、該空燃比基準値ＦＬＡＦ／ＢＡＳＥ  が、これに要求偏差空燃比ｕｓｌを加算してなる空燃比（＝ｕｓｌ＋ＦＬＡＦ／ＢＡＳＥ  ）、すなわち、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  を目標値ＶＯ２／ＴＡＲＧＥＴに収束させる上で要求される空燃比（これは基本的には前記目標空燃比ＫＣＭＤに等しい）の値の範囲の中心的な値になるようにすることができる。そして、この結果、スライディングモード制御器２７が逐次生成する要求偏差空燃比ｕｓｌの値を正負にバランスさせ、ひいては、該要求偏差空燃比ｕｓｌに応じて可変化させる適応許容範囲をその上限側（正側）と下限側（負側）とでバランスさせることができる。
【０５２２】
すなわち、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  が目標値ＶＯ２／ＴＡＲＧＥＴに定常的に収束した状態では、前記式（２４）〜（２６）を参照して明らかなように、前記要求偏差空燃比ｕｓｌの適応則入力ｕａｄｐ  以外の成分である前記等価制御入力ｕｅｑ及び到達則入力ｕｒｃｈ  は、それぞれ「０」となり、ｕｓｌ＝ｕａｄｐ  となる。つまり、この適応則入力ｕａｄｐ  は、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  が目標値ＶＯ２／ＴＡＲＧＥＴに定常的に収束した状態における要求偏差空燃比ｕｓｌの値の範囲の中心的な値としての意味を持つものである。そして、この場合、該適応則入力ｕａｄｐ  に空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を加算したものが、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  を目標値ＶＯ２／ＴＡＲＧＥＴに収束させる上で要求される空燃比、あるいは前記目標空燃比ＫＣＭＤの中心的な値としての意味を持つこととなる。
【０５２３】
従って、上記適応則入力ｕａｄｐ  が「０」近傍の値になるように空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を調整すれば、該空燃比基準値ＦＬＡＦ／ＢＡＳＥ  をＯ２  センサ６の出力ＶＯ２／ＯＵＴ  を目標値ＶＯ２／ＴＡＲＧＥＴに収束させる上で要求される空燃比、あるいは前記目標空燃比ＫＣＭＤの中心的な値にすることができる。このために、本実施形態では、前述の如く適応則入力ｕａｄｐ  の値に応じて空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を適宜変化させることで、適応則入力ｕａｄｐ  の値が前記基準値調整用不感帯内の収まるように空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を調整する。これにより、該空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  を目標値ＶＯ２／ＴＡＲＧＥＴに収束させる上で要求される空燃比、あるいは前記目標空燃比ＫＣＭＤの中心的な値に調整することができる。そして、この結果、要求偏差空燃比ｕｓｌの値を正負にバランスさせ、特に、該要求偏差空燃比ｕｓｌに応じて可変化させる適応許容範囲をその上限側（正側）と下限側（負側）とでバランスさせることができる。さらに、このように適応許容範囲をその上限側（正側）と下限側（負側）とでバランスさせることで、該上限側と下限側との両者での要求偏差空燃比ｕｓｌのリミット処理をバランスよく適正に行うことができる。
【０５２４】
この場合、本実施形態では、空燃比基準値ＦＬＡＦ／ＢＡＳＥ  の調整（更新）処理は、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  が目標値ＶＯ２／ＴＡＲＧＥＴにほぼ収束し、且つ、前記安定性判別基本パラメータＰｓｔｂ  によりＳＬＤ制御状態が安定であると判断される場合にのみ行う。このため、前記適応則入力ｕａｄｐ  の値が安定した段階で空燃比基準値ＦＬＡＦ／ＢＡＳＥ  の調整が行われることとなり、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  を目標値ＶＯ２／ＴＡＲＧＥＴに収束させる上で要求される空燃比、あるいは前記目標空燃比ＫＣＭＤの中心的な値としての空燃比基準値ＦＬＡＦ／ＢＡＳＥ  の信頼性を高めることができる。
【０５２５】
また、本実施形態では、空燃比基準値ＦＬＡＦ／ＢＡＳＥ  の調整処理に際しては、適応則入力ｕａｄｐ  が前記基準値調整用不感帯内に存する状態では該空燃比基準値ＦＬＡＦ／ＢＡＳＥ  の値を変更しない。これにより、空燃比基準値ＦＬＡＦ／ＢＡＳＥ  の頻繁な変動を避け、ＳＬＤ制御状態等が不安定となるような事態を回避することができる。
【０５２６】
さらに、本実施形態では、上記のように空燃比基準値ＦＬＡＦ／ＢＡＳＥ  の調整を行うことで次のような効果もある。
【０５２７】
すなわち、空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を前記適応則成分ｕａｄｐ  に応じて変化させることで、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  の目標値ＶＯ２／ＴＡＲＧＥＴへの収束制御の速応性を高めることができる。この理由は次のように考えられる。すなわち、仮に空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を一定とした場合（例えばＦＬＡＦ／ＢＡＳＥ  ＝ｆｌａｆ／ｂａｓｅ  とした場合）、エンジン１の実際の空燃比と目標空燃比ＫＣＭＤとの間に定常的な誤差が含まれるような場合には、スライディングモード制御器２７が求める適応則入力ｕａｄｐ  は、最終的にはその誤差分の学習値に相当するものとなる。そして、この誤差分が比較的大きいような場合には、適応則入力ｕａｄｐ  は、最終的にはその誤差分の学習値に相当するものとなるまでに時間を要する。ところが、本実施形態のように空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を前記適応則成分ｕａｄｐ  に応じて変化させることで、前述の如く適応則成分ｕａｄｐ  を「０」近傍の十分に小さな値にすることができる。つまり、上記の誤差分を空燃比基準値ＦＬＡＦ／ＢＡＳＥ  側で吸収することができ、この結果、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  の目標値ＶＯ２／ＴＡＲＧＥＴへの収束制御の速応性を高めることができると考えられる。
【０５２８】
また、空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を前記適応則成分ｕａｄｐ  に応じて変化させることで、前記推定器２６が求める前記推定偏差出力ＶＯ２  バーや、前記同定器２５が求める同定ゲイン係数ａ１ハット，ａ２ハット，ｂ１ハットの精度を高めることができる。この理由は次のように考えられる。すなわち、前記空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を対象排気系Ｅの入力の基準として式（１）で表した排気系モデルは、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  が目標値ＶＯ２／ＴＡＲＧＥＴに定常的に収束した状態において、ＬＡＦセンサ５の出力ＫＡＣＴ（空燃比の検出値）が空燃比基準値ＦＬＡＦ／ＢＡＳＥ  になるようなモデルである。従って、該空燃比基準値ＦＬＡＦ／ＢＡＳＥ  は、排気系モデルにおいて、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  が目標値ＶＯ２／ＴＡＲＧＥＴに定常的に収束した状態におけるエンジン１の空燃比の中心的な値となるべきものである。そして、本実施形態では、空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を前記適応則成分ｕａｄｐ  に応じて変化させることで、前述のように、空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  を目標値ＶＯ２／ＴＡＲＧＥＴに収束させる上で要求される空燃比の中心的な値に調整することができる。この結果、排気系モデルの挙動を実際の対象排気系の挙動により整合したものとすることができる。このため、この排気系モデルに基づいて推定器２６が求める前記推定偏差出力ＶＯ２  バーの精度を高めることができると共に、該排気系モデルのパラメータの同定値として同定器２５が求める同定ゲイン係数ａ１ハット，ａ２ハット，ｂ１ハットの精度を高めることができると考えられる。そして、このように推定偏差出力ＶＯ２  バーや同定ゲイン係数ａ１ハット，ａ２ハット，ｂ１ハットの精度を高めることで、これらのデータを用いてスライディングモード制御器２７が求める要求偏差空燃比ｕｓｌを、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  を目標値ＶＯ２／ＴＡＲＧＥＴに収束させる上で最適なものとすることができ、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  の目標値ＶＯ２／ＴＡＲＧＥＴへの収束制御の精度を高めることができる。
【０５２９】
次に、プラントが排気系である本発明の制御装置の他の実施形態を説明する。尚、本実施形態は、基本的には前記推定器２６による演算処理のみが前述の実施形態と相違するものであるので、説明に際しての参照符号は前述の実施形態と同一のものを用いる。
【０５３０】
前述の実施形態では、対象排気系Ｅの無駄時間ｄ１と空燃比操作系（エンジン１及び機関側制御ユニット７ｂ）の無駄時間ｄ２とを合わせた合計無駄時間ｄの影響を補償するために、該合計無駄時間ｄ後のＯ２  センサ６の偏差出力ＶＯ２  の推定値（推定偏差出力ＶＯ２  ）を求めるようにしている。しかるに、対象排気系Ｅの無駄時間ｄ１に比して空燃比操作系の無駄時間ｄ２が十分に小さいような場合には、対象排気系Ｅの無駄時間ｄ１後のＯ２  センサ６の偏差出力ＶＯ２  の推定値ＶＯ２（ｋ＋ｄ１）  バー（以下の説明ではこれを第２推定偏差出力ＶＯ２  バーと称する）を求め、その第２推定偏差出力ＶＯ２  バーを用いて、要求偏差空燃比ｕｓｌを求めるようにしてもよい。本実施形態は、このような第２推定偏差出力ＶＯ２  バーを求めて、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  の目標値ＶＯ２／ＴＡＲＧＥＴへの収束制御を行うものである。
【０５３１】
この場合、推定器２６は次のようにして第２推定偏差出力ＶＯ２  バーを求める。すなわち、対象排気系Ｅの排気系モデルを表す前記式（１）を用いることで、各制御サイクルにおける対象排気系Ｅの無駄時間ｄ１後のＯ２  センサ６の偏差出力ＶＯ２  の推定値である前記第２推定偏差出力ＶＯ２（ｋ＋ｄ１）  バーは、Ｏ２  センサ６の偏差出力ＶＯ２  の時系列データＶＯ２（ｋ）及びＶＯ２（ｋ−１）と、ＬＡＦセンサ５の偏差出力ｋａｃｔ（＝ＫＡＣＴ−ＦＬＡＦ／ＢＡＳＥ  ）の過去値の時系列データｋａｃｔ（ｋ−ｊ）  （ｊ＝１，２，…，ｄ１  ）とを用いて次式（４２）により表される。
【０５３２】
【数４２】
0003621839.tif 000043
【０５３３】
ここで、式（４２）において、α３  ，α４  は、それぞれ前記式（１２）中のただし書きで定義した行列Ａの巾乗Ａｄ１（ｄ１：対象排気系Ｅの無駄時間）の第１行第１列成分、第１行第２列成分である。また、γｊ  （ｊ＝１，２，…，ｄ１  ）は、それぞれ行列Ａの巾乗Ａｊ−１  （ｊ＝１，２，…，ｄ１  ）と前記式（１２）中のただし書きで定義したベクトルＢとの積Ａｊ−１  ・Ｂの第１行成分である。
【０５３４】
この式（４２）が本実施形態において、推定器２６が前記第２推定偏差出力ＶＯ２（ｋ＋ｄ１）  バーを算出するための式であり、この式（４２）は、前記式（１２）中の「ｋｃｍｄ」を「ｋａｃｔ」に置き換えると共に、式（１２）中の「ｄ」を「ｄ１」に置き換えた式である。つまり、本実施形態では、推定器２６は、制御サイクル毎に、Ｏ２  センサ６の偏差出力ＶＯ２  の時系列データＶＯ２（ｋ）及びＶＯ２（ｋ−１）と、ＬＡＦセンサ５の偏差出力ｋａｃｔの過去値の時系列データｋａｃｔ（ｋ−ｊ）  （ｊ＝１，…，ｄ１）とを用いて式（４２）の演算を行うことによって、Ｏ２  センサ６の第２推定偏差出力ＶＯ２（ｋ＋ｄ１）  バーを求める。
【０５３５】
この場合、式（４２）により第２推定偏差出力ＶＯ２（ｋ＋ｄ１）  バーを算出するために必要となる係数α３  ，α４  及びγｊ  （ｊ＝１，２，…，ｄ１）の値は、前述の実施形態の場合と同様、前記ゲイン係数ａ１，ａ２，ｂ１の同定値である前記同定ゲイン係数ａ１ハット，ａ２ハット，ｂ１ハットを用いて算出する。また、式（４２）の演算で必要となる無駄時間ｄ１の値は、前述の実施形態と同様に設定した値を用いる。
【０５３６】
以上説明した以外の他の処理については前述の実施形態と基本的には同一である。但し、この場合において、スライディングモード制御器２７は、要求偏差空燃比ｕｓｌの成分である等価制御入力ｕｅｑと到達則入力ｕｒｃｈ  と適応則入力ｕａｄｐ  とを、それぞれ前記式（２４）、（２６）、（２７）の「ｄ」を「ｄ１」で置き換えた式により求めることとなる。また、同定器２５が行う同定ゲイン係数ａ１ハット，ａ２ハットの組み合わせの制限処理に関しては、対象排気系Ｅの無駄時間ｄ１の値によっては、該組み合わせを制限するための領域（これは前記図１２に示した前記同定係数安定領域あるいは同定係数制限領域に相当する）が前述の実施形態のものと異なるものとなる場合があるが、前述の実施形態と同様に設定すればよい。
【０５３７】
このような本実施形態の制御装置にあっても、特に、要求偏差空燃比ｕｓｌのリミット処理や空燃比基準値ＦＬＡＦ／ＢＡＳＥの可変的な設定に関して、前述の実施形態と同一の作用効果を奏することができる。
【０５３８】
尚、本発明、特にプラントが排気系である本発明の制御装置は、前述した実施形態に限定されるものではなく、例えば次のような変形態様も可能である。
【０５３９】
すなわち、前記実施形態では、第２排ガスセンサとして、ＬＡＦセンサ（広域空燃比センサ）５を用いたが、第２排気ガスセンサは排ガスの空燃比を検出できるものであれば、通常のＯ２  センサ等、他の形式のセンサを用いてもよい。
【０５４０】
また、前記実施形態では、第１排ガスセンサとしてＯ２  センサ６を用いたが、第１排ガスセンサは、制御すべき触媒装置下流の排ガスの特定成分の濃度を検出できるセンサであれば、他のセンサを用いてもよい。すなわち、例えば触媒装置下流の排ガス中の一酸化炭素（ＣＯ）を制御する場合はＣＯセンサ、窒素酸化物（ＮＯＸ  ）を制御する場合にはＮＯＸ  センサ、炭化水素（ＨＣ）を制御する場合にはＨＣセンサを用いる。三元触媒装置を使用した場合には、上記のいずれのガス成分の濃度を検出するようにしても、触媒装置の浄化性能を最大限に発揮させるように制御することができる。また、還元触媒装置や酸化触媒装置を用いた場合には、浄化したいガス成分を直接検出することで、浄化性能の向上を図ることができる。
【０５４１】
また、前記実施形態では、排気系モデルのパラメータであるゲイン係数ａ１，ａ２，ｂ１を同定器２５により同定するようにしたが、該ゲイン係数ａ１，ａ２，ｂ１をあらかじめ定めた固定値に設定したり、あるいは、エンジン１の運転状態や触媒装置３の劣化状態等に応じてマップ等を用いて適宜設定するようにしてもよい。
【０５４２】
また、前記実施形態では、推定器２６とスライディングモード制御器２７とで対象排気系Ｅの共通の排気系モデルを使用したが、各別のモデルを使用してもよい。そして、この場合、スライディングモード制御器２７の処理に用いる排気系モデルの入力は、必ずしも空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を用いて表す必要はない。
【０５４３】
また、前記実施形態では、排気系モデルを離散系（離散時間系）で表現したが、連続系（連続時間系）で表現し、そのモデルに基づいて推定器２６やスライディングモード制御器２７の処理のアルゴリズムを構築することも可能である。
【０５４４】
また、前記実施形態では、Ｏ２  センサ６の出力ＶＯ２／ＯＵＴ  を目標値ＶＯ２／ＴＡＲＧＥＴに収束させるようにエンジン１の空燃比を操作するための操作量（前記実施形態では要求偏差空燃比ｕｓｌ）を前記推定偏差出力ＶＯ２  バーを用いて生成するフィードバック制御処理として適応スライディングモード制御を用いたが、他の形式のフィードバック制御処理（好ましくは、前記適応則入力ｕａｄｐ  に相当する操作量成分を生成するもの）を用いてもよい。
【０５４５】
また、前記実施形態では、エンジン１の空燃比をＬＡＦセンサ５の出力を用いて目標空燃比ＫＣＭＤにフィードバック制御するようにしたが、目標空燃比ＫＣＭＤからマップ等を用いてフィードフォワード的にエンジン１の燃料供給量を調整することで、エンジン１の空燃比を目標空燃比ＫＣＭＤに操作することも可能である。
【０５４６】
また、本実施形態では、前記空燃比基準値ＦＬＡＦ／ＢＡＳＥ  の設定に際しては、適応則入力ｕａｄｐ  が「０」近傍の基準値調整用不感帯内に存する状態では、空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を変更しないようにしたが、例えば適応則入力ｕａｄｐ  が「０」より大きいときには、空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を前記基準値単位変化量Δｆｌａｆづつ制御サイクル毎に増加させ、また、適応則入力ｕａｄｐ  が「０」より小さいときには、空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を前記基準値単位変化量Δｆｌａｆづつ制御サイクル毎に減少させる、というようにして該空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を変化させるようにしてもよい。このようにしても、適応則入力ｕａｄｐ  が略「０」となるように空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を調整することができる。
【０５４７】
さらに、前記実施形態では、前記空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を適応スライディングモード制御による適応則入力ｕａｄｐ  に応じて変化させるようにしたが、例えば該適応則入力ｕａｄｐ  を含まない通常のスライディングモード制御を用いて前記要求偏差空燃比ｕｓｌを生成したような場合にも、前記実施形態と同様に空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を可変的に設定することが可能である。すなわち、例えば要求偏差空燃比ｕｓｌを、適応則を用いない通常のスライディングモード制御の処理によって前記等価制御入力ｕｅｑと到達則入力ｕｒｃｈ  との和として求めた場合（ｕｓｌ＝ｕｅｑ＋ｕｒｃｈ  として求める）には、前記安定性判別基本パラメータＰｓｔｂ  （＝σバー・Δσバー）の値、あるいは切換関数σバーの変化速度の値が定常的に略「０」となるような状態における前記到達則入力ｕｒｃｈ  が前記実施形態における適応則入力ｕａｄｐ  に相当するものとなる。従って、上記のような状態における到達則入力ｕｒｃｈ  に応じて前記実施形態と同様に空燃比基準値ＦＬＡＦ／ＢＡＳＥ  を変化させることで、前記実施形態と同様の効果を奏することができる。
【０５４８】
また、前記実施形態では、車両に搭載したエンジン１の空燃比制御装置を例にとって説明したが、車両以外のもの（例えば発電機等）を駆動するエンジンについても本発明を適用することができる。
【０５４９】
また、前記実施形態では、プラントが排気系である制御装置を例にとって説明したが、本発明のプラントの制御装置は前記実施形態に限られるものではない。
【０５５０】
以下に本発明のプラントの制御装置の他の一実施形態を図２７を参照して説明する。
【０５５１】
図２７において、４０はプラントであり、このプラント４０には、流量制御器４１（アクチュエータ）により流量を調整可能なアルカリ液が入力される。そして、該プラント４０は、与えられたアルカリ液に酸性液を合流させ、それを攪拌器４２により攪拌してなる混合液を出力するものである。
【０５５２】
本実施形態の制御装置は、このようなプラント４０が出力する混合液（アルカリ液と酸性液との混合液）のｐＨが所望のｐＨ（例えば中性に相当するｐＨ値）になるようにプラント４０に入力されるアルカリ液の流量を制御するもので、その制御のために次のような構成を備えている。
【０５５３】
すなわち、本実施形態の制御装置は、プラント４０の出力側に前記混合液のｐＨを検出すべく設けられたｐＨセンサ４３（第１検出手段）と、プラント４０の入力側にアルカリ液の流量を検出すべく設けられた流量センサ４４（第２検出手段）と、これらのｐＨセンサ４３及び流量センサ４４のそれぞれの出力Ｖ１／ＯＵＴ，Ｖ２／ＯＵＴに基づき後述の演算処理を行う制御ユニット４５とを具備する。
【０５５４】
制御ユニット４５は、マイクロコンピュータ等により構成されたもので、ｐＨセンサ４３の出力Ｖ１／ＯＵＴとその目標値Ｖ１／ＴＡＲＧＥＴ  （これは前記混合液の目標ｐＨに相当する）との偏差Ｖ１（＝Ｖ１／ＯＵＴ−Ｖ１／ＴＡＲＧＥＴ  ）を算出する減算処理部４６と（以下、偏差Ｖ１をｐＨセンサ４３の偏差出力Ｖ１という）、プラント４０に与えるアルカリ液の流量の基準値Ｖ２／ＲＥＦ（これは流量センサ４４の出力の基準値でもある）を逐次生成する基準値設定部４７（基準値可変設定手段）と、流量センサ４４の出力Ｖ２／ＯＵＴと上記基準値Ｖ２／ＲＥＦとの偏差Ｖ２（＝Ｖ２／ＯＵＴ−Ｖ２／ＲＥＦ）を算出する減算処理部４８と（以下、偏差Ｖ２を流量センサ４４の偏差出力Ｖ２という）、ｐＨセンサ４３の出力Ｖ１／ＯＵＴをその目標値Ｖ１／ＴＡＲＧＥＴ  に収束させるためにプラント４０に与えるべきアルカリ液の流量の前記基準値Ｖ２／ＲＥＦに対する偏差ｗｓｌ（これは前述の実施形態における要求偏差空燃比ｋｃｍｄに対応する。以下、要求偏差流量ｗｓｌという）を流量制御器４１の出力を操作するための操作量として逐次生成する操作量生成部４９と、前記要求偏差流量ｗｓｌに基準値Ｖ２／ＲＥＦを加算することでプラント４０に与えるべきアルカリ液の目標流量Ｖ２ＣＭＤ  を求める加算処理部５０と、流量センサ４４の出力Ｖ２／ＯＵＴ（検出流量）を目標流量Ｖ２ＣＭＤ  に収束させるようにフィードバック制御により前記流量制御器４１の動作量（例えば弁の開度）を調整するフィードバック制御部５１（アクチュエータ制御手段）とを具備する。
【０５５５】
尚、以下の説明において、流量制御器３１及びフィードバック制御部３９を合わせた系、すなわち、目標流量Ｖ２ＣＭＤ  から流量センサ４１の出力Ｖ２／ＯＵＴを生成するシステムを流量操作系（これは前述の実施形態における空燃比操作系に対応する）と称する。
【０５５６】
前記操作量生成部４９は、前述の実施形態の操作量生成部２９（図３参照）と同様に同定器、推定器及びスライディングモード制御器（図示しない）を備えている。そして、操作量生成部４９は、例えば前記式（１）のＶＯ２  ，ｋａｃｔをそれぞれ前記偏差出力Ｖ１，Ｖ２で置き換えて成るプラント４０の離散系モデルと、前記式（２）のｋａｃｔ，ｋｃｍｄをそれぞれ前記偏差出力Ｖ２、要求偏差流量ｗｓｌで置き換えて成る前記流量操作系の離散系モデルとを用い、操作量生成部２９の同定器２５、推定器２６及びスライディングモード制御器２７と同様の演算処理を行う。
【０５５７】
すなわち、操作量生成部４９は、プラント４０のモデルのパラメータの同定値（これは前述の実施形態における同定ゲイン係数ａ１ハット、ａ２ハット、ｂ１ハットに対応する）を前記偏差出力Ｖ１，Ｖ２  のデータを用いて算出する。また、操作量生成部４９は、プラント４０に存する無駄時間と流量操作系に存する無駄時間とを合わせた合計無駄時間後のｐＨセンサ４３の偏差出力Ｖ１の推定値（これは前述の実施形態における推定偏差出力ＶＯ２  バーに対応する）を前記偏差出力Ｖ１，Ｖ２  のデータとプラント４０のモデルのパラメータの同定値のデータとを用いて算出する。さらに、操作量生成部４９は、前記偏差出力Ｖ１，Ｖ２  のデータと、偏差出力Ｖ１の推定値のデータと、プラント４０のモデルのパラメータの同定値のデータとを用いて適応スライディングモード制御の処理により前記要求偏差流量ｗｓｌを算出する。
【０５５８】
この場合、プラント４０のモデルにおける無駄時間（第１無駄時間）の設定値は、プラント３０の実際の無駄時間以上となるような時間（例えば一定値）に実験等を通じて定めておけばよい。また、流量操作系のモデルにおける無駄時間（第２無駄時間）の設定値は、流量制御器４１の動作特性を考慮し、流量操作系の実際の無駄時間以上となるような時間（例えば一定値）に実験等を通じて定めておけばよい。
【０５５９】
また、前述した実施形態のように、同定器による同定を行うプラント３０のパラメータの値を制限するに際しては、ｐＨセンサ４３の出力Ｖ１／ＯＵＴの目標値Ｖ１／ＴＡＲＧＥＴ  への制御性や、前記要求偏差流量ｗｓｌの安定性もしくはそれに応じた流量制御器４１の動作の安定性等を考慮して、実験やシミュレーションを通じて上記パラメータの値もしくはその組み合わせを制限するための条件を前述の実施形態と同様に設定すればよい。
【０５６０】
また、前記基準値設定部４７は、前述の実施形態における基準値設定部１１と同様に、操作量生成部４９のスライディングモード制御器が適応スライディングモード制御の処理によって要求偏差流量ｗｓｌの適応則に基づく成分として求める適応則入力ｗｓｌに応じて基準値Ｖ２／ＲＥＦを逐次可変的に設定する。
【０５６１】
この場合、上記適応則入力ｗｓｌは、前記式（２５）のＶＯ２  バーを偏差出力Ｖ１の推定値で置き換えてなる切換関数σバーを用いて式（２７）の右辺と同じ形の演算式により求めることができる。
【０５６２】
尚、前記フィードバック制御部５１は、例えば前述の実施形態の大局的フィードバック制御部１５と同様に、図示しないＰＩＤ制御器あるいは適応制御器等により、流量センサ４４の出力Ｖ２／ＯＵＴ（検出流量）が前記目標流量Ｖ２ＣＭＤ  に一致するように流量制御器４１の動作をフィードバック制御する。
【０５６３】
このような本実施形態の装置によれば、プラント４０に与えられるアルカリ液のｐＨや、該アルカリ液にプラント４０内で混合する酸性液のｐＨ、該酸性液の流量を把握せずとも、外乱の影響やプラント４０に存する無駄時間の影響によらずに、適応スライディングモード制御を用いて精度よくｐＨセンサ４３の出力Ｖ１／ＯＵＴ、すなわちプラント４０が出力する混合液のｐＨを所望のｐＨ（目標値Ｖ１／ＴＡＲＧＥＴ  ）に収束制御することができる。
【０５６４】
そして、この場合、プラント４０のモデルに係わる基準値Ｖ２／ＲＥＦを適応スライディングモード制御に係わる適応則入力ｗｓｌに応じて可変的に設定することで、ｐＨセンサ４３の出力Ｖ１／ＯＵＴの目標値Ｖ１／ＴＡＲＧＥＴ  への収束制御の速応性を高めることができると共に、偏差出力Ｖ１の推定値やプラント４０のモデルのパラメータの同定値の精度を高めることができ、ひいては、ｐＨセンサ４３の出力Ｖ１／ＯＵＴの目標値Ｖ１／ＴＡＲＧＥＴ  への収束制御の精度を高めることができる。
【０５６５】
尚、本実施形態では、要求偏差流量ｗｓｌのリミット処理を省略したが、該要求偏差流量ｗｓｌを所要の許容範囲内の値に制限した上で、前記基準値Ｖ２／ＲＥＦを加算することで、目標流量Ｖ２ＣＭＤ  を決定するようにしてもよい。そして、この場合、前述の実施形態の場合と同様、該許容範囲を、該範囲からの要求偏差流量ｗｓｌの逸脱状況に応じて可変的に設定したり、流量制御器４１の動作状態等に応じて設定形態を変更したりするようにすることも可能である。
【０５６６】
また、本実施形態のプラントの制御装置は、前記内燃機関の空燃比制御装置の実施形態について説明した変形態様と同様の各種の変形態様が可能である。
【図面の簡単な説明】
【図１】本発明のプラントの制御装置の一実施形態のシステムの全体的構成図。
【図２】図１のシステムで使用するＯ２  センサの出力特性図。
【図３】図１のシステムの要部の基本構成を示すブロック図。
【図４】図１のシステムで用いるスライディングモード制御を説明するための説明図。
【図５】図１のシステムで用いる適応制御器を説明するためのブロック図。
【図６】図１のシステムのエンジンの動作制御に係わる処理を説明するためのフローチャート。
【図７】図６のフローチャートのサブルーチン処理を説明するためのフローチャート。
【図８】図１のシステムの目標空燃比生成処理部の全体的処理を説明するためのフローチャート。
【図９】図８のフローチャートのサブルーチン処理を説明するためのフローチャート。
【図１０】図８のフローチャートのサブルーチン処理を説明するためのフローチャート。
【図１１】図１０のフローチャートの部分的処理を説明するための説明図。
【図１２】図１０のフローチャートの部分的処理を説明するための説明図。
【図１３】図１０のフローチャートのサブルーチン処理を説明するためのフローチャート。
【図１４】図８のフローチャートのサブルーチン処理を説明するための説明図。
【図１５】図８のフローチャートのサブルーチン処理を説明するためのフローチャート。
【図１６】図８のフローチャートのサブルーチン処理を説明するためのフローチャート。
【図１７】図１６のフローチャートの処理を説明するための説明図。
【図１８】図８のフローチャトのサブルーチン処理で行うリミット処理用の許容範囲を説明するための説明図。
【図１９】図８のフローチャートのサブルーチン処理を説明するためのフローチャート。
【図２０】図１９のフローチャートのサブルーチン処理を説明するためのフローチャート。
【図２１】図１９のフローチャートの処理を説明するための説明図。
【図２２】図１９のフローチャートの処理を説明するための説明図。
【図２３】図１９のフローチャートの処理を説明するための説明図。
【図２４】図１９のフローチャートの処理を説明するための説明図。
【図２５】図８のフローチャートのサブルーチン処理を説明するためのフローチャート。
【図２６】図２５のフローチャートの処理を説明するための説明図。
【図２７】本発明のプラントの制御装置の他の実施形態のシステムの全体的システム構成図。
【符号の説明】
１…エンジン（内燃機関、アクチュエータ）、２…排気管（排気通路）、３…触媒装置、Ｅ…排気系（プラント）、５…広域空燃比センサ（第２排ガスセンサ、第２検出手段）、６…Ｏ２  センサ（第１排ガスセンサ、第１検出手段）、７ｂ…機関側制御ユニット（機関制御手段、アクチュエータ制御手段）、１１…基準値設定部（基準値可変設定手段）、２５…同定器（同定手段）、２６…推定器（推定手段）、２９…操作量生成部（操作量生成手段）、４０…プラント、４１…流量制御器（アクチュエータ）、４３…ｐＨセンサ（第１検出手段）、４４…流量センサ（第２検出手段）、４７…基準値設定部（基準値可変設定手段）、４９…操作量生成部（操作量生成手段）、５１…フィードバック制御部（アクチュエータ制御手段）。
【図１】
0003621839.tif 000044
【図２】
0003621839.tif 000045
【図３】
0003621839.tif 000046
【図４】
0003621839.tif 000047
【図５】
0003621839.tif 000048
【図６】
0003621839.tif 000049
【図７】
0003621839.tif 000050
【図８】
0003621839.tif 000051
【図９】
0003621839.tif 000052
【図１０】
0003621839.tif 000053
【図１１】
0003621839.tif 000054
【図１２】
0003621839.tif 000055
【図１３】
0003621839.tif 000056
【図１４】
0003621839.tif 000057
【図１５】
0003621839.tif 000058
【図１６】
0003621839.tif 000059
【図１７】
0003621839.tif 000060
【図１８】
0003621839.tif 000061
【図１９】
0003621839.tif 000062
【図２０】
0003621839.tif 000063
【図２１】
0003621839.tif 000064
【図２２】
0003621839.tif 000065
【図２３】
0003621839.tif 000066
【図２４】
0003621839.tif 000067
【図２５】
0003621839.tif 000068
【図２６】
0003621839.tif 000069
【図２７】
0003621839.tif 000070