(57)【特許請求の範囲】
【請求項１】
所定の入力から所定の出力を生成するプラントと、前記プラントの出力を検出する検出手段と、該検出手段の出力を所定の目標値に収束させるように前記プラントへの入力を操作するための操作量を逐次生成する操作量生成手段とを備えたプラントの制御装置において、
前記プラントが有する無駄時間後の前記検出手段の出力の推定値を表すデータを、少なくとも該検出手段の出力のデータを用いて互いに異なるアルゴリズムにより逐次生成する複数の推定手段を備え、
前記操作量生成手段は、前記複数の推定手段がそれぞれ生成したデータのうちのいずれか一つのデータが表す推定値を、前記検出手段の出力の時系列データを変数とする所定の線形関数の値と前記検出手段の出力のデータの現在値とに基づく所定の条件に応じて選択的に用いて、又は該複数の推定手段のデータがそれぞれ表す推定値を、前記検出手段の出力の時系列データを変数とする所定の線形関数の値と前記検出手段の出力のデータの現在値とに基づく所定の条件に応じた形態で合成してなる推定値を用いて前記操作量を生成することを特徴とするプラントの制御装置。
【請求項２】
所定の入力から所定の出力を生成するプラントと、該プラントへの入力を生成するアクチュエータと、前記プラントの出力を検出する検出手段と、該検出手段の出力を所定の目標値に収束させるように前記プラントへの入力を操作するための操作量を逐次生成する操作量生成手段と、該操作量に応じて前記アクチュエータの動作を制御して前記プラントへの入力を操作するアクチュエータ制御手段とを備えたプラントの制御装置において、
前記プラントが有する無駄時間後と前記アクチュエータ制御手段及びアクチュエータから成る入力操作系の無駄時間とを合わせた合計無駄時間後の前記検出手段の出力の推定値を表すデータを、少なくとも該検出手段の出力のデータを用いて互いに異なるアルゴリズムにより逐次生成する複数の推定手段を備え、
前記操作量生成手段は、前記複数の推定手段がそれぞれ生成したデータのうちのいずれか一つのデータが表す推定値を、前記検出手段の出力の時系列データを変数成分とする所定の線形関数の値と前記検出手段の出力のデータの現在値とに基づく所定の条件に応じて選択的に用いて、又は該複数の推定手段のデータがそれぞれ表す推定値を、前記検出手段の出力の時系列データを変数とする所定の線形関数の値と前記検出手段の出力のデータの現在値とに基づく所定の条件に応じた形態で合成してなる推定値を用いて前記操作量を生成することを特徴とするプラントの制御装置。
【請求項３】
前記複数の推定手段は、前記プラントが前記入力から応答遅れ要素及び無駄時間要素を介して前記検出手段の出力を生成する系であるとして該プラントの挙動を表現すべくあらかじめ定めた該プラントのモデルに基づいて構築されたアルゴリズムにより前記推定値を表すデータを生成する第１推定手段と、ファジー推論のアルゴリズムより前記推定値を表すデータを生成する第２推定手段とからなることを特徴とする請求項１記載のプラントの制御装置。
【請求項４】
前記複数の推定手段は、前記プラントが前記入力から応答遅れ要素及び無駄時間要素を介して前記検出手段の出力を生成する系であるとして該プラントの挙動を表現すべくあらかじめ定めた該プラントのモデルと前記入力操作系が前記操作量から無駄時間要素を介して前記プラントへの入力を生成する系であるとして該入力操作系の挙動を表現すべくあらかじめ定めた該入力操作系のモデルとに基づいて構築されたアルゴリズムにより前記推定値を表すデータを生成する第１推定手段と、ファジー推論のアルゴリズムより前記推定値を表すデータを生成する第２推定手段とからなることを特徴とする請求項２記載のプラントの制御装置。
【請求項５】
前記操作量生成手段は、前記複数の推定手段がそれぞれ生成したデータが表す推定値を重み付けして合成してなる合成推定値を求める手段を有し、各推定手段の表す推定値に係る重み係数を、前記所定の条件に応じて可変的に設定することにより、前記各推定手段の推定値を含む前記合成推定値を求め、その求めた合成推定値を用いて前記操作量を生成することを特徴とする請求項１〜４のいずれか１項に記載のプラントの制御装置。
【請求項６】
前記操作量生成手段は、適応制御の処理により前記操作量を生成することを特徴とする請求項１〜５のいずれか１項に記載のプラントの制御装置。
【請求項７】
前記操作量生成手段は、スライディングモード制御の処理により前記操作量を生成することを特徴とする請求項１〜６のいずれか１項に記載のプラントの制御装置。
【請求項８】
前記所定の線形関数は、前記スライディングモード制御の処理に用いる切換関数に応じて定められた線形関数であり、前記所定の条件は、前記所定の線形関数の値と前記検出手段の出力のデータの現在値との組み合わせの条件であることを特徴とする請求項７記載のプラントの制御装置。
【請求項９】
前記切換関数は、前記検出手段の出力と前記目標値との偏差の時系列データを変数成分とする線形な関数であり、前記所定の線形関数は、その変数成分に係る係数値を前記切換関数の変数成分に係る係数値と同一とした線形関数であることを特徴とする請求項８記載のプラントの制御装置。
【請求項１０】
前記組み合わせの条件は、前記線形関数の値及び前記検出手段の出力のデータの現在値の組み合わせが、その両値を座標成分とする座標平面上にあらかじめ定めた所定の領域に存するか否かの条件を含むことを特徴とする請求項８又は９記載のプラントの制御装置。
【請求項１１】
内燃機関の排気通路に設けた触媒装置の下流側に該触媒装置を通過した排ガス中の特定成分の濃度を検出すべく配置した排ガスセンサと、該排ガスセンサの出力を所定の目標値に収束させるように前記触媒装置に進入する排ガスの空燃比を規定する操作量を逐次生成する操作量生成手段とを備えた内燃機関の空燃比制御装置において、
前記触媒装置の上流側から下流側の前記排ガスセンサにかけての該触媒装置を含む排気系が有する無駄時間後の該排ガスセンサの出力の推定値を表すデータを、少なくとも該排ガスセンサの出力のデータを用いて互いに異なるアルゴリズムにより逐次生成する複数の推定手段を備え、
前記操作量生成手段は、前記複数の推定手段がそれぞれ生成したデータのうちのいずれか一つのデータが表す推定値を、前記排ガスセンサの出力の時系列データを変数とする所定の線形関数の値と前記排ガスセンサの出力のデータの現在値とに基づく所定の条件に応じて選択的に用いて、又は該複数の推定手段のデータがそれぞれ表す推定値を、前記排ガスセンサの出力の時系列データを変数とする所定の線形関数の値と前記排ガスセンサの出力のデータの現在値とに基づく所定の条件に応じた形態で合成してなる推定値を用いて前記操作量を生成することを特徴とする内燃機関の空燃比制御装置。
【請求項１２】
前記操作量生成手段は、前記複数の推定手段がそれぞれ生成したデータが表す推定値を重み付けして合成してなる合成推定値を求める手段を有し、各推定手段の推定値に係る重み係数を、前記所定の条件に応じて可変的に設定することにより、前記各推定手段の推定値を含めた前記合成推定値を求め、その求めた合成推定値を用いて前記操作量を生成することを特徴とする請求項１１記載の内燃機関の空燃比制御装置。
【請求項１３】
前記操作量生成手段は、適応制御の処理により前記操作量を生成することを特徴とする請求項１１又は１２記載の内燃機関の空燃比制御装置。
【請求項１４】
前記操作量生成手段は、スライディングモード制御の処理により前記操作量を生成することを特徴とする請求項１１〜１３のいずれか１項に記載の内燃機関の空燃比制御装置。
【請求項１５】
前記所定の線形関数は、前記スライディングモード制御の処理に用いる切換関数に応じて定められた線形関数であり、前記所定の条件は、前記所定の線形関数の値と、前記排ガスセンサの出力のデータの現在値との組み合わせの条件であることを特徴とする請求項１４記載の内燃機関の空燃比制御装置。
【請求項１６】
前記切換関数は、前記排ガスセンサの出力と前記目標値との偏差の時系列データを変数成分とする線形な関数であり、前記所定の線形関数は、その変数成分に係る係数値を前記切換関数の変数成分に係る係数値と同一とした線形関数であることを特徴とする請求項１５記載の内燃機関の空燃比制御装置。
【請求項１７】
前記組み合わせの条件は、前記線形関数の値及び前記排ガスセンサの出力のデータの現在値の組み合わせが、その両値を座標成分とする座標平面上にあらかじめ定めた所定の領域に存するか否かの条件を含むことを特徴とする請求項１５又は１６記載の内燃機関の空燃比制御装置。
【請求項１８】
前記排ガスセンサは酸素濃度センサであり、前記複数の推定手段は、前記排気系が前記触媒装置に進入する排ガスの空燃比から応答遅れ要素及び無駄時間要素を介して前記酸素濃度センサの出力を生成する系であるとして該排気系の挙動を表現すべくあらかじめ定めた該排気系のモデルに基づいて構築されたアルゴリズムにより前記推定値を表すデータを生成する第１推定手段と、ファジー推論のアルゴリズムより前記推定値を表すデータを生成する第２推定手段とからなることを特徴とする請求項１１〜１７のいずれか１項に記載の内燃機関の空燃比制御装置。
【請求項１９】
前記排ガスセンサは酸素濃度センサであり、前記複数の推定手段は、前記排気系が前記触媒装置に進入する排ガスの空燃比から応答遅れ要素及び無駄時間要素を介して前記酸素濃度センサの出力を生成する系であるとして該排気系の挙動を表現すべくあらかじめ定めた該排気系のモデルに基づいて構築されたアルゴリズムにより前記推定値を表すデータを生成する第１推定手段と、ファジー推論のアルゴリズムより前記推定値を表すデータを生成する第２推定手段とからなり、前記第２推定手段のファジー推論のアルゴリズムは、前記酸素濃度センサの出力の時系列データを変数成分とすると共に前記スライディングモード制御の処理に用いる切換関数に応じて定められた所定の線形関数の値と、前記酸素濃度センサの出力のデータ値とを前記ファジー推論の前件部のパラメータとし、前記推定値を表すデータを該ファジー推論の後件部のパラメータとして生成するアルゴリズムであることを特徴とする請求項１４記載の内燃機関の空燃比制御装置。
【請求項２０】
前記排ガスセンサは酸素濃度センサであり、前記複数の推定手段は、前記排気系が前記触媒装置に進入する排ガスの空燃比から応答遅れ要素及び無駄時間要素を介して前記酸素濃度センサの出力を生成する系であるとして該排気系の挙動を表現すべくあらかじめ定めた該排気系のモデルに基づいて構築されたアルゴリズムにより前記推定値を表すデータを生成する第１推定手段と、ファジー推論のアルゴリズムより前記推定値を表すデータを生成する第２推定手段とからなり、前記第２推定手段のファジー推論のアルゴリズムは、前記所定の線形関数の値と、前記酸素濃度センサの出力のデータ値とを前記ファジー推論の前件部のパラメータとし、前記推定値を表すデータを該ファジー推論の後件部のパラメータとして生成するアルゴリズムであることを特徴とする請求項１５〜１７のいずれか１項に記載の内燃機関の空燃比制御装置。
【請求項２１】
前記ファジー推論のアルゴリズムは、前記後件部のパラメータに係わるメンバーシップ関数として複数の棒状関数を用いて、ｍｉｎ−ｍａｘ−重心法に基づき構築されたアルゴリズムであることを特徴とする請求項１９又は２０記載の内燃機関の空燃比制御装置。
【請求項２２】
前記触媒装置に進入する排ガスの空燃比を検出する空燃比センサと、該空燃比センサ及び前記酸素濃度センサの出力のデータを用いて前記排気系のモデルの設定すべきパラメータの値を逐次同定する同定手段とを備え、前記第１推定手段のアルゴリズムは、少なくとも前記酸素濃度センサ及び空燃比センサのそれぞれの出力のデータと前記同定手段により同定された前記排気系のモデルのパラメータとを用いて前記推定値を表すデータを生成するアルゴリズムであることを特徴とする請求項１８〜２１のいずれか１項に記載の内燃機関の空燃比制御装置。
【請求項２３】
内燃機関の排気通路に設けた触媒装置の下流側に該触媒装置を通過した排ガス中の特定成分の濃度を検出すべく配置した排ガスセンサと、該排ガスセンサの出力を所定の目標値に収束させるように前記触媒装置に進入する排ガスの空燃比を規定する操作量を逐次生成する操作量生成手段と、該操作量に応じて前記内燃機関で燃焼させる混合気の空燃比を操作する機関制御手段とを備えた内燃機関の空燃比制御装置において、
前記触媒装置の上流側から下流側の前記排ガスセンサにかけての該触媒装置を含む排気系が有する無駄時間と前記機関制御手段及び内燃機関から成る空燃比操作系が有する無駄時間とを合わせた合計無駄時間後の該排ガスセンサの出力の推定値を表すデータを、少なくとも該排ガスセンサの出力のデータを用いて互いに異なるアルゴリズムにより逐次生成する複数の推定手段を備え、
前記操作量生成手段は、前記複数の推定手段がそれぞれ生成したデータのうちのいずれか一つのデータが表す推定値を、前記排ガスセンサの出力の時系列データを変数とする所定の線形関数の値と前記排ガスセンサの出力のデータの現在値とに基づく所定の条件に応じて選択的に用いて、又は該複数の推定手段のデータがそれぞれ表す推定値を、前記排ガスセンサの出力の時系列データを変数とする所定の線形関数の値と前記排ガスセンサの出力のデータの現在値とに基づく所定の条件に応じた形態で合成してなる推定値を用いて前記操作量を生成することを特徴とする内燃機関の空燃比制御装置。
【請求項２４】
前記操作量生成手段は、前記複数の推定手段がそれぞれ生成したデータが表す推定値を重み付けして合成してなる合成推定値を求める手段を有し、各推定手段の推定値に係る重み係数を、前記所定の条件に応じて可変的に設定することにより、前記各推定手段の推定値を含めた前記合成推定値を求め、その求めた合成推定値を用いて前記操作量を生成することを特徴とする請求項２３記載の内燃機関の空燃比制御装置。
【請求項２５】
前記操作量生成手段は、適応制御の処理により前記操作量を生成することを特徴とする請求項２３又は２４記載の内燃機関の空燃比制御装置。
【請求項２６】
前記操作量生成手段は、スライディングモード制御の処理により前記操作量を生成することを特徴とする請求項２３〜２５のいずれか１項に記載の内燃機関の空燃比制御装置。
【請求項２７】
前記所定の線形関数は、前記スライディングモード制御の処理に用いる切換関数に応じて定められた線形関数であり、前記所定の条件は、前記所定の線形関数の値と、前記排ガスセンサの出力のデータの現在値との組み合わせの条件であることを特徴とする請求項２６記載の内燃機関の空燃比制御装置。
【請求項２８】
前記切換関数は、前記排ガスセンサの出力と前記目標値との偏差の時系列データを変数成分とする線形な関数であり、前記所定の線形関数は、その変数成分に係る係数値を前記切換関数の変数成分に係る係数値と同一とした線形関数であることを特徴とする請求項２７記載の内燃機関の空燃比制御装置。
【請求項２９】
前記組み合わせの条件は、前記線形関数の値及び前記排ガスセンサの出力のデータの現在値の組み合わせが、その両値を座標成分とする座標平面上にあらかじめ定めた所定の領域に存するか否かの条件を含むことを特徴とする請求項２７又は２８記載の内燃機関の空燃比制御装置。
【請求項３０】
前記排ガスセンサは、酸素濃度センサであり、
前記複数の推定手段は、前記排気系が前記触媒装置に進入する排ガスの空燃比から応答遅れ要素及び無駄時間要素を介して前記酸素濃度センサの出力を生成する系であるとして該排気系の挙動を表現すべくあらかじめ定めた該排気系のモデルと前記空燃比操作系が前記操作量から無駄時間要素を介して前記触媒装置に進入する排ガスの空燃比を生成する系であるとして該空燃比操作系の挙動を表現すべくあらかじめ定めた該空燃比操作系のモデルとに基づいて構築されたアルゴリズムにより前記推定値を表すデータを生成する第１推定手段と、ファジー推論のアルゴリズムより前記推定値を表すデータを生成する第２推定手段とからなることを特徴とする請求項２３〜２９のいずれか１項に記載の内燃機関の空燃比制御装置。
【請求項３１】
前記排ガスセンサは、酸素濃度センサであり、
前記複数の推定手段は、前記排気系が前記触媒装置に進入する排ガスの空燃比から応答遅れ要素及び無駄時間要素を介して前記酸素濃度センサの出力を生成する系であるとして該排気系の挙動を表現すべくあらかじめ定めた該排気系のモデルと前記空燃比操作系が前記操作量から無駄時間要素を介して前記触媒装置に進入する排ガスの空燃比を生成する系であるとして該空燃比操作系の挙動を表現すべくあらかじめ定めた該空燃比操作系のモデルとに基づいて構築されたアルゴリズムにより前記推定値を表すデータを生成する第１推定手段と、ファジー推論のアルゴリズムより前記推定値を表すデータを生成する第２推定手段とからなり、
前記第２推定手段のファジー推論のアルゴリズムは、前記酸素濃度センサの出力の時系列データを変数成分とすると共に前記スライディングモード制御の処理に用いる切換関数に応じて定められた所定の線形関数の値と、前記酸素濃度センサの出力のデータ値とを前記ファジー推論の前件部のパラメータとし、前記推定値を表すデータを該ファジー推論の後件部のパラメータとして生成するアルゴリズムであることを特徴とする請求項２６記載の内燃機関の空燃比制御装置。
【請求項３２】
前記排ガスセンサは、酸素濃度センサであり、
前記複数の推定手段は、前記排気系が前記触媒装置に進入する排ガスの空燃比から応答遅れ要素及び無駄時間要素を介して前記酸素濃度センサの出力を生成する系であるとして該排気系の挙動を表現すべくあらかじめ定めた該排気系のモデルと前記空燃比操作系が前記操作量から無駄時間要素を介して前記触媒装置に進入する排ガスの空燃比を生成する系であるとして該空燃比操作系の挙動を表現すべくあらかじめ定めた該空燃比操作系のモデルとに基づいて構築されたアルゴリズムにより前記推定値を表すデータを生成する第１推定手段と、ファジー推論のアルゴリズムより前記推定値を表すデータを生成する第２推定手段とからなり、
前記第２推定手段のファジー推論のアルゴリズムは、前記所定の線形関数の値と、前記酸素濃度センサの出力のデータ値とを前記ファジー推論の前件部のパラメータとし、前記推定値を表すデータを該ファジー推論の後件部のパラメータとして生成するアルゴリズムであることを特徴とする請求項２７〜２９のいずれか１項に記載の内燃機関の空燃比制御装置。
【請求項３３】
前記ファジー推論のアルゴリズムは、前記後件部のパラメータに係わるメンバーシップ関数として複数の棒状関数を用いて、ｍｉｎ−ｍａｘ−重心法に基づき構築されたアルゴリズムであることを特徴とする請求項３１又は３２記載の内燃機関の空燃比制御装置。
【請求項３４】
前記触媒装置に進入する排ガスの空燃比を検出する空燃比センサと、該空燃比センサ及び前記酸素濃度センサの出力のデータを用いて前記排気系のモデルの設定すべきパラメータの値を逐次同定する同定手段とを備え、前記第１推定手段のアルゴリズムは、少なくとも前記酸素濃度センサ及び空燃比センサのそれぞれの出力のデータと前記同定手段により同定された前記排気系のモデルのパラメータとを用いて前記推定値を表すデータを生成するアルゴリズムであることを特徴とする請求項３０〜３３のいずれか１項に記載の内燃機関の空燃比制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、プラントの制御装置及び内燃機関の空燃比制御装置に関する。
【０００２】
【従来の技術】
従来、本願出願人は、内燃機関の排気通路に設けた触媒装置による排ガスの所要の浄化性能を確保するために、触媒装置を通過した排ガス中の特定成分の濃度、例えば酸素濃度を検出する排ガスセンサ（酸素濃度センサ）を触媒装置の下流側に配置し、この酸素濃度センサの出力を所定の目標値（一定値）に収束させるように内燃機関で燃焼させる混合気の空燃比、ひいては、触媒装置に進入する排ガスの空燃比（以下、ここでは触媒上流空燃比という）を制御する技術を特開平１１−９３７４０号公報等に提案している。ここで、上記触媒上流空燃比は、詳しくは、触媒装置に進入する排ガスとなった燃焼混合気の空燃比で、該排ガス中の酸素濃度から把握される空燃比である。
【０００３】
この技術では、触媒装置の上流側から下流側の酸素濃度センサにかけての排気系を制御対象とし、この排気系の出力量としての酸素濃度センサの出力を前記目標値に収束させるように、該排気系の入力量としての触媒上流空燃比を規定する操作量、例えば該排ガスの目標空燃比を逐次生成する。そして、その目標空燃比に応じて内燃機関で燃焼させる混合気の空燃比を操作することで、前記触媒上流空燃比を目標空燃比に操作し、ひいては、酸素濃度センサの出力を前記目標値に収束制御する。
【０００４】
この場合、前記排気系は、これに含まれる触媒装置に起因して一般に比較的長い無駄時間を有する。また、内燃機関の低速回転数域での運転時（例えばアイドリング運転時）等では、前記目標空燃比から触媒上流空燃比を生成する系（この系には内燃機関が含まれる。以下、ここではこの系を空燃比操作系という）が有する無駄時間も比較的長いものとなることがある。そして、このような無駄時間は、酸素濃度センサの出力を前記目標値を安定に収束させる上で悪影響を及ぼしやすい。このため、前記技術では、前記排気系のあらかじめ定めたモデル等に基づいて構築したアルゴリズムによって、前記排気系の無駄時間後、あるいは、その無駄時間と前記空燃比操作系の無駄時間とを合わせた無駄時間後の酸素濃度センサの出力の推定値を表すデータを逐次生成する。そして、その推定値を用いて前記目標空燃比を生成する。また、この場合、目標空燃比の生成は、例えばフィードバック制御の一手法であるスライディングモード制御（詳しくは適応スライディングモード制御）の処理により行われる。
【０００５】
尚、酸素濃度センサの出力が前記目標値に収束している状態での排ガスの空燃比は、理論空燃比近傍の空燃比である。
【０００６】
このような技術によれば、前記排気系や空燃比操作系の無駄時間の影響を補償しつつ、酸素濃度センサの出力の目標値への収束制御を安定して行うことができ、ひいては、触媒装置の良好な浄化性能を該触媒装置の劣化状態等によらずに確保することが可能となる。
【０００７】
尚、上記の技術において、前記排気系をプラントとみなしたとき、前記内燃機関はこのプラントへの入力としての触媒上流空燃比を生成するアクチュエータ、前記酸素濃度センサはプラントの出力としての酸素濃度を検出する検出手段とみなすことができる。
【０００８】
ところで、自動車等に搭載される内燃機関では、一般に、常に理論空燃比近傍の空燃比での内燃機関の運転（以下、ストイキ運転という）を行うわけではなく、運転状況によっては、内燃機関のフュエルカットを行ったり、空燃比のリーン領域での内燃機関の運転（以下、リーン運転という）を行う場合もある。そして、前記酸素濃度センサの出力をその目標値に収束させる制御は、上記ストイキ運転の際に行われるものである。
【０００９】
一方、前記酸素濃度センサの出力は、前記目標値の近傍領域（理論空燃比近傍の空燃比域）では酸素濃度に対してほぼ線形な特性を示すが、その近傍領域をはずれた領域では、非線形なものとなる（図２の実線ａを参照）。このため、内燃機関のフュエルカットやリーン運転の直後のストイキ運転では、酸素濃度センサの出力が非線形な領域の出力となる。
【００１０】
ところが、このように酸素濃度センサの出力が非線形な領域で変化するときには、前記の技術では、推定値の精度が低下しやすく、該出力が線形な領域にあるときと同等の精度を確保することが困難である。また、加えて、触媒の化学反応に基づく還元作用を呈する場合（リーンからリッチへの変化の場合）と、酸化作用を呈する場合（リッチからリーンへの変化の場合）とでは、触媒の応答が異なり、これによっても非線形性は増す。この場合、前記目標空燃比を生成するために制御の安定性が高いスライディングモード制御（特に適応スライディングモード制御）の処理を用いることで、酸素濃度センサの出力の制御の安定性が損なわれることは回避できるが、前記推定値の精度の低下に起因して、酸素濃度センサの出力の収束制御の速応性が損なわれることがある。
【００１１】
【発明が解決しようとする課題】
本発明はかかる背景に鑑みてなされたものであり、プラントの出力を検出する検出手段の出力が非線形性を呈するような場合であっても、該検出手段の出力状態によらずに、該検出手段の出力を所定の目標値に収束させるような制御を高い速応性で良好に行うことができるプラントの制御装置を提供することを目的とする。
【００１２】
また、特に、内燃機関の排気通路の触媒装置の下流に配置した排ガスセンサの出力が非線形性を呈するような場合であっても、該排ガスセンサの出力状態によらずに、該排ガスセンサの出力を所定の目標値に収束させる制御を高い速応性で良好に行うことができ、触媒装置による排ガスの浄化性能を高めることができる内燃機関の空燃比制御装置を提供することを目的とする。
【００１３】
【課題を解決するための手段】
本発明のプラントの制御装置は、前記の目的を達成するために、第１の態様と第２の態様とがあり、その第１の態様は、所定の入力から所定の出力を生成するプラントと、該プラントへの入力を生成するアクチュエータと、前記プラントの出力を検出する検出手段と、該検出手段の出力を所定の目標値に収束させるように前記プラントへの入力を操作するための操作量を逐次生成する操作量生成手段とを基本構成として備えたプラントの制御装置に関するものである。また、第２の態様は、さらに、上記基本構成に加えて、前記操作量に応じて前記アクチュエータの動作を制御して前記プラントへの入力を操作するアクチュエータ制御手段を備えたプラントの制御装置に関するものである。
【００１４】
そして、本発明のプラントの制御装置の第１の態様は、前記プラントが有する無駄時間の影響を補償して、前記検出手段の出力を前記所定の目標値に収束させる制御を行うものであり、前記プラントが有する無駄時間後の前記検出手段の出力の推定値を表すデータを、少なくとも該検出手段の出力のデータを用いて互いに異なるアルゴリズムにより逐次生成する複数の推定手段を備え、前記操作量生成手段は、前記複数の推定手段がそれぞれ生成したデータのうちのいずれか一つのデータが表す推定値を、前記検出手段の出力の時系列データを変数とする所定の線形関数の値と前記検出手段の出力のデータの現在値とに基づく所定の条件に応じて選択的に用いて、又は該複数の推定手段のデータがそれぞれ表す推定値を、前記検出手段の出力の時系列データを変数とする所定の線形関数の値と前記検出手段の出力のデータの現在値とに基づく所定の条件に応じた形態で合成してなる推定値を用いて前記操作量を生成することを特徴とするものである。
【００１５】
また、第２の態様は、前記プラントが有する無駄時間と前記アクチュエータ制御手段及びアクチュエータからなる入力操作系（前記操作量からプラントへの入力を生成する系）が有する無駄時間とを合わせた合計無駄時間の影響を補償して、前記検出手段の出力を前記所定の目標値に収束させる制御を行うものであり、前記合計無駄時間後の前記検出手段の出力の推定値を表すデータを、少なくとも該検出手段の出力のデータを用いて互いに異なるアルゴリズムにより逐次生成する複数の推定手段を備え、前記操作量生成手段は、前記複数の推定手段がそれぞれ生成したデータのうちのいずれか一つのデータが表す推定値を、前記検出手段の出力の時系列データを変数成分とする所定の線形関数の値と前記検出手段の出力のデータの現在値とに基づく所定の条件に応じて選択的に用いて、又は該複数の推定手段のデータがそれぞれ表す推定値を、前記検出手段の出力の時系列データを変数とする所定の線形関数の値と前記検出手段の出力のデータの現在値とに基づく所定の条件に応じた形態で合成してなる推定値を用いて前記操作量を生成することを特徴とするものである。
【００１６】
かかる本発明のプラントの制御装置の第１及び第２の態様によれば、前記複数の推定手段が、それぞれ互いに異なるアルゴリズムにより、前記無駄時間後の前記検出手段の出力の推定値を表すデータを生成するので、前記検出手段の複数種類の出力状態（これはプラントの出力状態に応じたものとなる）にそれぞれ適合するような複数の推定値を表すデータを生成することが可能となる。従って、該検出手段の出力が非線形性を呈する場合であっても、前記複数の推定手段がそれぞれ生成したデータのうちのいずれか一つのデータが表す推定値を所定の条件（前記線形関数の値と前記検出手段の出力のデータの現在値とに基づく条件）に応じて選択し、あるいは、それらの推定値を上記所定の条件に応じた形態で合成してなる推定値を求めたとき、前記第１の態様では、その選択した推定値あるいは合成してなる推定値を、前記プラントの無駄時間後の推定値として精度の良い適正なものとすることができる。同様に、前記第２の態様では、選択した推定値あるいは合成してなる推定値を、前記プラントの無駄時間と前記入力操作系の無駄時間とを合わせた前記合計無駄時間後の推定値として精度の良い適正なものとすることができる。
【００１７】
このため、このように選択した推定値あるいは合成してなる推定値を用いて前記操作量を生成することで、その操作量は、前記検出手段の出力状態あるいはプラントの出力状態によらずに前記プラントの無駄時間や、前記合計無駄時間の影響を補償して、前記検出手段の出力を前記目標値に収束させる上で適正なものとなる。この結果、前記検出手段の出力状態によらずに、該検出手段の出力を所定の目標値に収束させる制御の速応性を高めることができる。
【００１８】
尚、本発明のプラントの制御装置において、前記操作量としては、例えばプラントへの目標入力やアクチュエータの動作量の補正量等が挙げられる。そして、前記操作量を例えばプラントへの目標入力とした場合には、プラントへの入力を検出する検出手段を設け、この検出手段の出力（プラントへの入力の検出値）を上記目標入力に収束させるようにフィードバック制御の処理によりプラントへの入力を操作することが好適である。また、前記推定値を用いて前記操作量を生成する前記操作量生成手段は、例えば、該推定値を前記検出手段の出力の目標値に収束させるようにフィードバック制御の処理により前記操作量を生成することで、前記プラントの無駄時間や前記合計無駄時間の影響を適正に補償し得る操作量を生成することが可能である。
【００１９】
かかる第１および第２の態様の本発明のプラントの制御装置では、前記操作量生成手段は、前記複数の推定手段がそれぞれ生成したデータが表す推定値を重み付けして合成してなる合成推定値を求める手段を有し、各推定手段の表す推定値に係る重み係数を、前記所定の条件に応じて可変的に設定することにより、前記各推定手段の推定値を含む前記合成推定値を求め、その求めた合成推定値を用いて前記操作量を生成することが好ましい。
【００２０】
これによれば、前記重み係数を前記所定の条件に応じて可変的に設定することで、前記複数の推定手段がそれぞれ生成したデータが表す推定値のいずれか一つを前記合成推定値として得ることができる（例えば当該一つの推定値に係る重み係数を「１」とし、他の推定値に係る重み係数を「０」とする）と共に、それらの推定値を複合的に合成した推定値を前記合成推定値として得ることもできる。従って、前記操作量の生成に用いる推定値の選択や合成を前記重み係数の設定によって一括的に行うことができ、その選択や合成のためのアルゴリズムの構築が容易になる。
【００２１】
また、本発明のプラントの制御装置では、前記操作量生成手段は、種々様々のフィードバック制御処理により前記操作量を生成することが可能であるが、適応制御の処理により前記操作量を生成したり、あるいはスライディングモード制御の処理により前記操作量を生成することが好適である。
【００２２】
すなわち、適応制御の処理により前記操作量を生成することで、プラントの挙動状態に則して前記操作量を生成することが可能となって、検出手段の出力の目標値への収束制御の速応性を高めることが可能となる。また、スライディングモード制御は、一般に、外乱や制御対象のモデル化誤差等に対する制御の安定性が高いという特性を有している。従って、このようなスライディングモード制御の処理により、前記操作量を生成するようにすることで、その処理に使用する前記推定値の誤差が外乱等の影響で予想以上に大きくなったとしても、その影響で前記検出手段の出力が不安定となるような状況を最小限に抑えることが可能となり、該検出手段の出力の前記目標値への制御の安定性を高めることができる。
【００２３】
尚、スライディングモード制御の処理で用いる制御対象のモデルのパラメータを例えば制御対象の挙動状態に則して逐次同定するようにすれば、適応制御の処理とスライディングモード制御の処理とを複合させることも可能である。
【００２４】
また、前記スライディングモード制御は、外乱等の影響を極力排除するために、通常のスライディングモード制御に対して、所謂、適応則（適応アルゴリズム）という制御則を加味した適応スライディングモード制御であることが特に好適である。ここで、この適応スライディングモード制御について補足説明をしておくと、スライディングモード制御では、一般に制御量とその目標値の偏差等を用いて構成される切換関数といわれる関数が用いられ、この切換関数の値を「０」に収束させることが重要となる。この場合、通常のスライディングモード制御では、切換関数の値を「０」に収束させるために所謂、到達則という制御則が用いられる。しかるに、外乱等の影響が受けると、この到達則だけでは切換関数の値の収束のの安定性や速応性を十分に確保することが困難となる場合もある。これに対して、適応スライディングモード制御は、外乱等の影響を極力排除して切換関数の値を「０」に収束させるために上記到達則に加えて、適応則（適応アルゴリズム）という制御則をも用いるようにしたものである。
【００２６】
また、本発明のプラントの制御装置では、前記操作量をスライディングモード制御（適応スライディングモード制御を含む）の処理により生成する場合には、前記所定の線形関数は、前記スライディングモード制御の処理に用いる切換関数に応じて定められた線形関数であり、前記所定の条件、換言すれば、操作量を生成するために用いる推定値の選択の仕方や合成の仕方を規定する前記所定の条件は、前記所定の線形関数の値と、前記検出手段の出力のデータの現在値との組み合わせの条件であることが好適である。
【００２７】
すなわち、前記操作量の生成にスライディングモード制御の処理を用いた場合、そのスライディングモード制御用の切換関数に対応して定まるある線形関数で、前記検出手段の出力の時系列データを変数成分とする線形関数の値と、前記検出手段の出力のデータの現在値との組み合わせが、該検出手段の出力状態と高い相関性を有する。従って、この組み合わせの条件を前記所定の条件とすることで、検出手段の出力状態に適合した推定値を選択し、あるいは該検出手段の出力状態に適合した合成の推定値を得ることが可能となる。ひいては、検出手段の出力状態に適した前記操作量を的確に生成することが可能となり、前記検出手段の出力の前記目標値への収束制御の速応性を高めることができる。
【００２８】
この場合、前記切換関数が、例えば前記検出手段の出力と前記目標値との偏差の時系列データを変数成分とする線形な関数である場合には、前記所定の線形関数は、その変数成分に係る係数値を前記切換関数の変数成分に係る係数値と同一とした線形関数であることが好適である。
【００２９】
このような線形関数を用いることで、前記操作量を生成するために用いる前記推定値の選択の仕方や合成の仕方を規定する前記組み合わせの条件を適正に設定することができる。尚、この場合、上記所定の線形関数は、切換関数と同じ形の関数であってもよい。
【００３０】
また、前記組み合わせの条件は、前記線形関数の値及び前記検出手段の出力のデータの現在値の組み合わせが、その両値を座標成分とする座標平面上にあらかじめ定めた所定の領域に存するか否かの条件を含むことが好適である。
【００３１】
これによれば、前記線形関数の値及び前記検出手段の出力のデータの現在値の組み合わせの分類、区別が容易となり、該組み合わせの条件の設定を容易に適正に行うことが可能となる。
【００３２】
また、本発明のプラントの制御装置における各推定手段のアルゴリズムは、前記検出手段の出力特性やプラントの出力の挙動特性等に合わせて構築すればよく、種々様々なアルゴリズムの選択が可能である。
【００３３】
本発明のプラントの制御装置における推定手段の形態としては、例えば次のような形態が好適である。すなわち、本発明の第１の態様のプラントの制御装置では、前記複数の推定手段は、例えば、前記プラントが前記入力から応答遅れ要素及び無駄時間要素を介して前記検出手段の出力を生成する系であるとして該プラントの挙動を表現すべくあらかじめ定めた該プラントのモデルに基づいて構築されたアルゴリズムにより前記推定値を表すデータを生成する第１推定手段と、ファジー推論のアルゴリズムより前記推定値を表すデータを生成する第２推定手段とからなることが好適である。
【００３４】
また、本発明の第２の態様のプラントの制御装置では、前記複数の推定手段は、例えば、前記プラントが前記入力から応答遅れ要素及び無駄時間要素を介して前記検出手段の出力を生成する系であるとして該プラントの挙動を表現すべくあらかじめ定めた該プラントのモデルと前記入力操作系が前記操作量から無駄時間要素を介して前記プラントへの入力を生成する系であるとして該入力操作系の挙動を表現すべくあらかじめ定めた該入力操作系のモデルとに基づいて構築されたアルゴリズムにより前記推定値を表すデータを生成する第１推定手段と、ファジー推論のアルゴリズムより前記推定値を表すデータを生成する第２推定手段とからなることが好適である。
【００３５】
これらの第１推定手段及び第２推定手段により、検出手段の出力状態やプラントの出力状態に適合した推定値を得ることが可能となる。
【００３６】
次に、本発明の内燃機関の空燃比制御装置は、前記プラントの制御装置と同様に前記の目的を達成するために二つの態様があり、その第１の態様は、内燃機関の排気通路に設けた触媒装置の下流側に該触媒装置を通過した排ガス中の特定成分の濃度を検出すべく配置した排ガスセンサと、該排ガスセンサの出力を所定の目標値に収束させるように前記触媒装置に進入する排ガスの空燃比を規定する操作量を逐次生成する操作量生成手段とを基本構成として備えた内燃機関の空燃比制御装置に関するものである。また、第２の態様は、上記の基本構成に加えて、前記操作量に応じて前記内燃機関で燃焼させる混合気の空燃比を操作する機関制御手段を備えた内燃機関の空燃比制御装置に関するものである。
【００３７】
そして、本発明の内燃機関の空燃比制御装置の第１の態様は、前記触媒装置の上流側から下流側の前記排ガスセンサにかけての該触媒装置を含む排気系が有する無駄時間後の該排ガスセンサの出力の推定値を表すデータを、少なくとも該排ガスセンサの出力のデータを用いて互いに異なるアルゴリズムにより逐次生成する複数の推定手段を備え、前記操作量生成手段は、前記複数の推定手段がそれぞれ生成したデータのうちのいずれか一つのデータが表す推定値を、前記排ガスセンサの出力の時系列データを変数とする所定の線形関数の値と前記排ガスセンサの出力のデータの現在値とに基づく所定の条件に応じて選択的に用いて、又は該複数の推定手段のデータがそれぞれ表す推定値を、前記排ガスセンサの出力の時系列データを変数とする所定の線形関数の値と前記排ガスセンサの出力のデータの現在値とに基づく所定の条件に応じた形態で合成してなる推定値を用いて前記操作量を生成することを特徴とするものである。
【００３８】
また、本発明の内燃機関の空燃比制御装置の第２の態様は、前記触媒装置の上流側から下流側の前記排ガスセンサにかけての該触媒装置を含む排気系が有する無駄時間と前記機関制御手段及び内燃機関から成る空燃比操作系が有する無駄時間とを合わせた合計無駄時間後の該排ガスセンサの出力の推定値を表すデータを、少なくとも該排ガスセンサの出力のデータを用いて互いに異なるアルゴリズムにより逐次生成する複数の推定手段を備え、前記操作量生成手段は、前記複数の推定手段がそれぞれ生成したデータのうちのいずれか一つのデータが表す推定値を、前記排ガスセンサの出力の時系列データを変数とする所定の線形関数の値と前記排ガスセンサの出力のデータの現在値とに基づく所定の条件に応じて選択的に用いて、又は該複数の推定手段のデータがそれぞれ表す推定値を、前記排ガスセンサの出力の時系列データを変数とする所定の線形関数の値と前記排ガスセンサの出力のデータの現在値とに基づく所定の条件に応じた形態で合成してなる推定値を用いて前記操作量を生成することを特徴とするものである。
【００３９】
尚、本発明の内燃機関の空燃比制御装置（第１及び第２の態様の両者）は、基本的には、本発明のプラントの制御装置の一形態とみなせるものであり、前記プラントの制御装置に対応づけると、該空燃比制御装置における前記排気系、内燃機関、排ガスセンサ、機関制御手段、操作量生成手段がそれぞれ前記プラントの制御装置における前記プラント、アクチュエータ、検出手段、アクチュエータ制御手段、操作量生成手段に相当するものとなる。また、前記触媒装置に進入する排ガスの空燃比が、プラントしての前記排気系への入力に相当するものとなり、前記排ガスセンサが検出する前記特定成分の濃度が、プラントしての排気系の出力に相当するものとなる。
【００４０】
かかる本発明の内燃機関の空燃比制御装置の第１及び第２の態様によれば、前記複数の推定手段が、それぞれ互いに異なるアルゴリズムにより、前記無駄時間後の前記排ガスセンサの出力の推定値を表すデータを生成するので、前記排ガスセンサの複数種類の出力状態（これは前記排気系の下流端の排ガス状態に応じたものとなる）にそれぞれ適合するような複数の推定値を表すデータを生成することが可能となる。従って、該排ガスセンサの出力が非線形性を呈する場合であっても、前記複数の推定手段がそれぞれ生成したデータのうちのいずれか一つのデータが表す推定値を所定の条件（前記線形関数の値と、前記排ガスセンサの出力のデータの現在値とに基づく条件）に応じて選択し、あるいは、それらの推定値を上記所定の条件に応じた形態で合成してなる推定値を求めたとき、その選択した推定値あるいは合成してなる推定値を、前記排気系の無駄時間後の推定値（第１の態様の場合）、あるいは、前記排気系の無駄時間と前記空燃比操作系の無駄時間とを合わせた合計無駄時間後の推定値（第２の態様の場合）として精度の良い適正なものとすることができる。
【００４１】
このため、このように選択した推定値あるいは合成してなる推定値を用いて前記操作量を生成することで、その操作量は、前記排ガスセンサの出力状態あるいは前記排気系を通過した排ガスの成分状態によらずに前記排気系の無駄時間や、前記合計無駄時間の影響を補償して、前記排ガスセンサの出力を前記目標値に収束させる上で適正なものとなる。この結果、前記排ガスセンサの出力状態によらずに、該排ガスセンサの出力を所定の目標値に収束させる制御の速応性を高めることができ、ひいては、触媒装置の所要の浄化性能を好適に確保することができる。
【００４２】
尚、本発明の内燃機関の空燃比制御装置において、前記操作量としては、例えば触媒装置に進入する排ガスの目標空燃比や内燃機関の燃料供給量の補正量等が挙げられる。そして、前記操作量を例えば目標空燃比とした場合には、触媒装置に進入する排ガスの空燃比を検出する空燃比センサを触媒装置の上流側に設け、この空燃比センサの出力（排ガスの空燃比の検出値）を上記目標空燃比に収束させるようにフィードバック制御の処理により、内燃機関で燃焼させる混合気の空燃比を操作することが好適である。この場合におけるフィードバック制御の処理は、適応制御器等の漸化式形式の制御器により行うことが好適である。また、前記推定値を用いて前記操作量を生成する前記操作量生成手段は、前記プラントの制御装置の場合と同様、例えば、該推定値を前記排ガスセンサの出力の目標値に収束させるようにフィードバック制御の処理により前記操作量を生成することで、前記排気系の無駄時間や前記合計無駄時間の影響を適正に補償し得る操作量を生成することが可能である。
【００４３】
かかる第１及び第２の態様の本発明の内燃機関の空燃比制御装置では、前記プラントの制御装置の場合と同様、前記操作量生成手段は、前記複数の推定手段がそれぞれ生成したデータが表す推定値を重み付けして合成してなる合成推定値を求める手段を有し、各推定手段の表す推定値に係る重み係数を、前記所定の条件に応じて可変的に設定することにより、前記各推定手段の推定値を含む前記合成推定値を求め、その求めた合成推定値を用いて前記操作量を生成することが好ましい。
【００４４】
これによれば、前記重み係数を前記所定の条件に応じて可変的に設定することで、前記複数の推定手段がそれぞれ生成したデータが表す推定値のいずれか一つを前記合成推定値として得ることができると共に、それらの推定値を複合的に合成した推定値を前記合成推定値として得ることもできるため、前記操作量の生成に用いる推定値の選択や合成を前記重み係数の設定によって一括的に行うことができ、その選択や合成のためのアルゴリズムの構築が容易になる。
【００４５】
さらに、本発明の内燃機関の空燃比制御装置では、前記プラントの制御装置の場合と同様、前記操作量生成手段は、適応制御の処理により前記操作量を生成したり、あるいは、スライディングモード制御（好ましくは、適応スライディングモード制御）の処理により前記操作量を生成することが好適である。
【００４６】
このように適応制御の処理により前記操作量を生成することで、前記排気系の挙動状態に則して前記操作量を生成することが可能となって、排ガスセンサの出力の前記目標値への収束制御の速応性を高めることが可能となる。また、スライディングモード制御の処理により前記操作量を生成することで、排ガスセンサの出力の前記目標値への収束制御の安定性を高めることができる。
【００４７】
尚、前記プラントの制御装置で説明したように、適応制御の処理とスライディングモード制御の処理（適応スライディングモード制御を含む）を複合させることも可能である。
【００４８】
また、本発明の内燃機関の空燃比制御装置では、前記プラントの制御装置の場合と同様、前記操作量の生成に使用する前記推定値を規定する前記所定の条件（操作量を生成するために用いる推定値の選択の仕方や合成の仕方を規定する所定の条件）は、スライディングモード制御の処理により前記操作量を生成する場合、前記所定の線形関数は、前記スライディングモード制御の処理に用いる切換関数に応じて定められた線形関数であり、前記所定の条件は、前記所定の線形関数の値と、前記排ガスセンサの出力のデータの現在値との組み合わせの条件であることが好適である。
【００４９】
これにより、前記排ガスセンサの出力状態に適合した推定値を選択し、あるいは該排ガスセンサの出力状態に適合した合成の推定値を得ることが可能となり、排ガスセンサの出力状態に適した前記操作量を的確に生成することが可能となる。この結果、前記排ガスセンサの出力の前記目標値への収束制御の速応性を高め、ひいては前記触媒装置の浄化性能を好適に確保することができる。
【００５０】
さらにこの場合、前記切換関数が、例えば前記排ガスセンサの出力と前記目標値との偏差の時系列データを変数成分とする線形な関数である場合には、前記所定の線形関数は、その変数成分に係る係数値を前記切換関数の変数成分に係る係数値と同一とした線形関数（切換関数と同じ形の関数であってもよい）であることが好適である。
【００５１】
このような線形関数を用いることで、前記操作量を生成するために用いる前記推定値の選択の仕方や合成の仕方を規定する前記組み合わせの条件を適正に設定することができる。
【００５２】
また、前記組み合わせの条件は、前記線形関数の値及び前記排ガスセンサの出力のデータの現在値の組み合わせが、その両値を座標成分とする座標平面上にあらかじめ定めた所定の領域に存するか否かの条件を含むことが好適である。
【００５３】
これによれば、前記線形関数の値及び前記排ガスセンサの出力のデータの現在値の組み合わせの分類、区別が容易となり、該組み合わせの条件の設定を容易に適正に行うことが可能となる。
【００５４】
ところで、本発明の内燃機関の空燃比制御装置では、前記触媒装置の最適な浄化性能を確保する上では、前記排ガスセンサとして酸素濃度センサを用い、その目標値を所定の一定値とすることが好適である。
【００５５】
そして、このように前記排ガスセンサが酸素濃度センサである場合、本発明の第１の態様の内燃機関の空燃比制御装置では、前記複数の推定手段は、例えば前記排気系が前記触媒装置に進入する排ガスの空燃比から応答遅れ要素及び無駄時間要素を介して前記酸素濃度センサの出力を生成する系であるとして該排気系の挙動を表現すべくあらかじめ定めた該排気系のモデルに基づいて構築されたアルゴリズムにより前記推定値を表すデータを生成する第１推定手段と、ファジー推論のアルゴリズムより前記推定値を表すデータを生成する第２推定手段とから構成することが好ましい。
【００５６】
また、本発明の第２の態様の内燃機関の空燃比制御装置では、前記複数の推定手段は、前記排気系が前記触媒装置に進入する排ガスの空燃比から応答遅れ要素及び無駄時間要素を介して前記酸素濃度センサの出力を生成する系であるとして該排気系の挙動を表現すべくあらかじめ定めた該排気系のモデルと前記空燃比操作系が前記操作量から無駄時間要素を介して前記触媒装置に進入する排ガスの空燃比を生成する系であるとして該空燃比操作系の挙動を表現すべくあらかじめ定めた該空燃比操作系のモデルとに基づいて構築されたアルゴリズムにより前記推定値を表すデータを生成する第１推定手段と、ファジー推論のアルゴリズムより前記推定値を表すデータを生成する第２推定手段とから構成することが好ましい。
【００５７】
すなわち、前記第１の態様の内燃機関の空燃比制御装置では、基本的には、前記排気系のモデルに基づいて構築したアルゴリズムにより、酸素濃度センサの出力が、排ガス中の酸素濃度に対してほぼ線形な変化を呈するような領域（前記目標値の近傍領域）で変化するような状態における該排気系の無駄時間後における前記推定値を表すデータを適正に生成することが可能である。
【００５８】
また、前記第２の態様の内燃機関の空燃比制御装置では、基本的には、前記排気系のモデルと前記空燃比操作系のモデル（前記空燃比操作系を単なる無駄時間要素とみなしたモデル）とに基づいて構築したアルゴリズムにより、前記酸素濃度センサの出力が、排ガス中の酸素濃度に対してほぼ線形な変化を呈するような領域（前記目標値の近傍領域）で変化するような状態における前記合計無駄時間後における前記推定値を表すデータを比較的精度よく生成することが可能である。
【００５９】
一方、本願発明者等の知見によれば、第１及び第２の態様の内燃機関の空燃比制御装置のいずれにおいても、酸素濃度センサの出力が、排ガス中の酸素濃度に対して非線形な変化を呈するような領域で変化するような状態における前記排気系の無駄時間後、あるいは、前記合計無駄時間後における前記推定値を表すデータは、例えばファジー推論のアルゴリズムによって比較的精度よく生成することが可能である。
【００６０】
そこで、本発明の内燃機関の空燃比制御装置では、前記推定値のデータを生成するために前記排気系のモデルに基づくアルゴリズム（第１の態様の場合）、あるいは、該排気系のモデル及び前記空燃比操作系のモデルに基づくアルゴリズム（第２の態様の場合）を用いる前記第１推定手段と、ファジー推論のアルゴリズムにより前記推定値のデータを生成する前記第２推定手段とにより前記複数の推定手段を構成する。
【００６１】
このようにすることにより、第１及び第２推定手段により酸素濃度センサの互いに異なる出力状態における前記推定値のデータを適正に生成することが可能となるため、それらの推定値を選択的に用い、あるいは、それらの推定値を合成したものを用いることで、酸素濃度センサの出力状態によらずに、該酸素濃度センサの出力を前記目標値に収束させる上で適正な前記操作量を生成することが可能となる。
【００６２】
このように排ガスセンサを酸素濃度センサとして、前記複数の推定手段を前記第１及び第２推定手段により構成した場合において、特に、前記操作量を前記スライディングモード制御の処理により生成する場合には、前記第２推定手段のファジー推論のアルゴリズムは、前記酸素濃度センサの出力の時系列データを変数成分とすると共に前記スライディングモード制御の処理に用いる切換関数に応じて定められた所定の線形関数の値と、前記酸素濃度センサの出力のデータ値とを前記ファジー推論の前件部のパラメータとし、前記推定値を表すデータを該ファジー推論の後件部のパラメータとして生成するアルゴリズムであることが好ましい。
【００６３】
すなわち、前記操作量の生成にスライディングモード制御の処理を用いた場合、本願発明者等の知見によれば、上記のようにファジー推論の前件部のパラメータと、後件部のパラメータとを設定することで、特に、前記酸素濃度センサの出力が非線形領域で変化する状態における前記推定値を表すデータを比較的精度よく好適に得ることが可能となる。この結果、酸素濃度センサの出力が非線形領域に存するような状態からでも、該酸素濃度センサの出力の前記目標値への収束制御の速応性を高めることができる。
【００６４】
尚、この場合、前述のように、前記所定の条件（操作量を生成するために用いる推定値の選択の仕方や合成の仕方を規定する所定の条件）を、前記スライディングモード制御の処理に用いる切換関数に応じて定められた所定の線形関数の値と、前記検出手段の出力のデータ値との組み合わせの条件としたときには、前記ファジー推論の前件部に係わる線形関数は、この組み合わせ条件に係わる線形関数と同一であることが好適である。
【００６５】
これによれば、排ガスセンサ（酸素濃度センサ）の出力状態が、前記第２推定手段による推定値を選択してもしくは重視して前記操作量を生成した方が良い状態（ファジー推論による推定値がより良好な精度を有するような状態）であるのか、前記第１推定手段による推定値を選択してもしくは重視して前記操作量を生成した方が良い状態（排気系のモデル等に基づく推定値がより良好な精度を有するような状態）であるのかを、上記組み合わせ条件によって適正に区別化することができる。このため、第１及び第２推定手段による推定値の選択あるいは合成を、それぞれの推定値の精度状態に適合させて行うことができ、ひいては、前記操作量の生成をより適正に行うことが可能となる。
【００６６】
また、前記ファジー推論のアルゴリズムは、前記後件部のパラメータに係わるメンバーシップ関数として複数の棒状関数を用いて、ｍｉｎ−ｍａｘ−重心法に基づき構築されたアルゴリズムであることが好ましい。ここで、前記棒状関数は、その変数（パラメータ）の一つの値においてのみ、関数値を持つような関数である。また、ｍｉｎ−ｍａｘ−重心法は、ファジー推論において一般的に用いられている公知の手法である。
【００６７】
これによれば、ファジー推論のアルゴリズムの構築が容易なものとなると共に、前記推定値を表すデータを生成するための演算負荷を軽減することができる。
【００６８】
また、上述のように、排ガスセンサとして酸素濃度センサを用いると共に第１及び第２推定手段を備えた本発明の内燃機関の空燃比制御装置では、前記第１推定手段に関しては、前記触媒装置に進入する排ガスの空燃比を検出する空燃比センサと、該空燃比センサ及び前記酸素濃度センサの出力のデータを用いて前記排気系のモデルの設定すべきパラメータの値を逐次同定する同定手段とを備え、前記第１推定手段のアルゴリズムは、少なくとも前記酸素濃度センサ及び空燃比センサのそれぞれの出力のデータと前記同定手段により同定された前記排気系のモデルのパラメータとを用いて前記推定値を表すデータを生成するアルゴリズムであることが好ましい。
【００６９】
すなわち、前記排気系の入力としての排ガスの空燃比（触媒装置に進入する排ガスの空燃比）を前記空燃比センサにより検出し、この空燃比センサの出力のデータと、前記排気系の出力としての排ガス中の酸素濃度を検出する酸素濃度センサの出力のデータとを用いて前記同定手段により前記排気系のモデルのパラメータを逐次同定することで、該モデルのパラメータが、排気系の時々刻々の実際の挙動状態に則してリアルタイムで同定されることとなる。このため、実際の排気系の挙動に対する該排気系のモデルの誤差を極力低減することができる。この結果、酸素濃度センサの出力がほぼ線形な領域で変化する状態における前記第１推定手段による前記推定値のデータの精度を高めることが可能となり、ひいては、酸素濃度センサの出力の前記目標値への収束制御の速応性を高めることができる。
【００７０】
尚、第１推定手段のアルゴリズムに関しては、前記第１の態様及び第２の態様のいずれの場合であっても、前記空燃比センサの出力のデータと前記操作量のデータとの両者もしくはいずれか一方と、前記酸素濃度センサの出力のデータと、前記排気系のモデルのパラメータとを用いて前記推定値を表すデータを生成することが可能である。
【００７１】
また、前記第１推定手段のアルゴリズムの基礎となる前記排気系のモデルは、基本的には離散時間系で構築しておくことが好ましい。そして、この場合には、該排気系のモデルは、例えば、所定の制御サイクル毎の酸素濃度センサの出力のデータを、その制御サイクルよりも過去の制御サイクルにおける該酸素濃度センサの出力のデータと、前記排気系の無駄時間以前の制御サイクルにおいて前記触媒装置に進入する排ガスの空燃比を表すデータ（前記空燃比センサの出力のデータ、前記操作量のデータ等）とにより表現するモデルであることが好ましい。
【００７２】
【発明の実施の形態】
本発明の第１実施形態を図１〜図１８を参照して説明する。尚、本実施形態は、本発明の内燃機関の空燃比制御装置の第２の態様の実施形態であると同時に、本発明のプラントの制御装置の第２の態様の実施形態でもある。
【００７３】
図１は本実施形態における内燃機関の排ガスの空燃比制御装置の全体的システム構成を示すブロック図であり、図中、１は例えば自動車あるいはハイブリッド車に車両の推進源（図示しない駆動輪の駆動源）として搭載された４気筒のエンジン（内燃機関）である。このエンジン１が各気筒毎に燃料及び空気の混合気の燃焼により生成する排ガスは、エンジン１の近傍で共通の排気管２（排気通路）に集合され、該排気管２を介して大気中に放出される。そして、排気管２には、排ガスを浄化するために、図示しない三元触媒やＮＯx吸収材（窒素酸化物吸収材）を用いて構成された触媒装置３が介装されている。
【００７４】
尚、触媒装置３に含まれるＮＯx吸収材は、酸化バリウム（ＢａＯ）等から構成される吸蔵式のものと、ナトリウム（Ｎａ）、チタン（Ｔｉ）、ストロンチウム（Ｓｒ）等から構成される吸着式のものとがあるが、そのいずれのタイプのものであってもよい。また、本発明のプラントの制御装置に対応させると、エンジン１はアクチュエータに相当するものである。
【００７５】
また、排気管２における触媒装置３の上流側の箇所（詳しくはエンジン１の各気筒毎の排ガスの集合箇所）と触媒装置３の下流側の箇所とにはそれぞれ空燃比センサ４と排ガスセンサとしてのＯ2センサ５（酸素濃度センサ）が設けられている。ここで、本発明のプラントの制御装置に対応させると、触媒装置３の上流側の空燃比センサ４から触媒装置３の下流側のＯ2センサ５にかけての該触媒装置３を含む排気系（図１で参照符号Ｅを付した部分）はプラントに相当し、Ｏ2センサ５はこの排気系Ｅの出力を検出する検出手段に相当するものである。
【００７６】
Ｏ2センサ５は、触媒装置３を通過した排ガス中の酸素濃度に応じたレベルの出力VO2/OUT（酸素濃度の検出値を示す出力）を生成する通常的なＯ2センサである。ここで、排ガス中の酸素濃度は、燃焼によりその排ガスとなった混合気の空燃比に応じたものとなる。そして、このＯ2センサ５の出力VO2/OUTは、図２に実線ａで示す如く、排ガス中の酸素濃度に対応する空燃比が理論空燃比近傍の比較的狭い範囲Δに存するような状態で、該排ガス中の酸素濃度に対してほぼ線形に高感度な変化を生じるものとなる。また、その範囲Δを逸脱した空燃比に対応する酸素濃度では、Ｏ2センサ５の出力VO2/OUTは、酸素濃度の変化に対して非線形なものとなり、ほぼ一定のレベルで飽和する。
【００７７】
空燃比センサ4は、触媒装置３に進入する排ガスの酸素濃度により把握される空燃比の検出値を表す出力KACTを生成するものである。この空燃比センサ4は、例えば本願出願人が特開平４−３６９４７１号公報にて詳細に説明した広域空燃比センサにより構成されたものであり、図２に実線ｂで示す如く、Ｏ2センサ５よりも排ガス中の酸素濃度の広範囲にわたってそれに比例したレベルの出力を生成するものである。換言すれば、該空燃比センサ４（以下、ＬＡＦセンサ４という）は、排ガス中の酸素濃度に対応した空燃比の広範囲にわたって線形な出力特性を示すものである。
【００７８】
本実施形態のシステムでは、エンジン１で燃焼させる混合気の空燃比を制御するために、マイクロコンピュータを用いて構成された制御ユニット６を備えている。この制御ユニット６には、その制御処理を行うために、ＬＡＦセンサ４の出力KACTやＯ2センサ５の出力V O2/OUTが与えられる他、エンジン１の回転数、吸気圧、冷却水温、スロットル弁の開度等、エンジン１の運転状態を検出するための図示しない各種のセンサの出力が与えられる。
【００７９】
この制御ユニット６は、その処理機能を大別すると、触媒装置３の最適な浄化性能を確保するように、触媒装置に進入する排ガスの空燃比（以下、触媒上流空燃比という）の目標値である目標空燃比KCMDを触媒上流空燃比を規定する操作量として求める処理を逐次実行する操作量生成手段７と、この目標空燃比KCMD等に応じてエンジン１の燃料供給量を調整することによって触媒上流空燃比を操作する処理を逐次実行する機関制御手段８とを具備している。
【００８０】
この場合、操作量生成手段７及び機関制御手段８は、それぞれの制御処理を各別の制御サイクルで実行するようにしている。すなわち、操作量生成手段７は、その演算負荷や前記排気系Ｅが有する比較的長い無駄時間を等を考慮し、あらかじめ定めた周期の制御サイクル（例えば３０〜１００ms）としている。また、機関制御手段８の処理を実行する制御サイクルは、エンジン１の燃料供給量の調整処理をエンジン１の燃焼サイクルに同期させて行う必要があることから、エンジン１のクランク角周期（所謂ＴＤＣ）に同期した制御サイクルとしている。そして、操作量生成手段７の制御サイクルの周期は、エンジン１のクランク角周期（ＴＤＣ）よりも長いものとされている。
【００８１】
尚、本実施形態では、エンジン１の運転モードとして、エンジン１で燃焼させる混合気の空燃比、ひいては触媒上流空燃比を理論空燃比近傍の空燃比としてエンジン１の運転を行うストイキ運転モードや、該混合気の空燃比をリーン状態（理論空燃比よりも燃料が少ない状態）の空燃比としてエンジン１の運転を行うリーン運転モード等がある。そして、前記操作量生成手段７が生成する目標空燃比KCMDは、エンジン１の運転モードがストイキ運転モードであるときに、触媒上流空燃比の目標値として前記機関制御手段８が使用するものである。
【００８２】
前記操作量生成手段７及び機関制御手段８をさらに説明する。
【００８３】
まず、操作量生成手段７に関し、触媒装置３の浄化性能（具体的には排ガス中のＮＯx、ＨＣ、ＣＯ等の浄化率）は、該触媒装置３を流れる排ガスの空燃比が理論空燃比近傍の空燃比状態であって、前記Ｏ2センサ５の出力VO2/OUTがある一定値VO2/TARGET（図２参照）に整定するような空燃比状態であるときに触媒装置３が含む三元触媒等の劣化状態によらずに最適な浄化性能が得られる。このため、操作量生成手段７は、上記一定値VO2/TARGETをＯ2センサ５の出力VO2/OUTの目標値とし、その目標値VO2/TARGETにＯ2センサ５の出力VO2/OUTを収束させるように触媒上流空燃比の目標値である前記目標空燃比KCMDを逐次生成する。
【００８４】
そして、この目標空燃比KCMDの生成に際しては、触媒装置３を含む前記排気系Ｅが有する無駄時間や、前記エンジン１及び機関制御手段８からなる系が有する無駄時間、排気系Ｅの挙動変化等を考慮しつつ、フィードバック制御の一手法であるスライディングモード制御（詳しくは適応スライディングモード制御）を用いて目標空燃比KCMDを操作量生成手段７の制御サイクル（所定の周期）で逐次生成する。
【００８５】
このような操作量生成手段７の処理を行うために、本実施形態では、前記排気系Ｅが、ＬＡＦセンサ４の出力KACT（ＬＡＦセンサ４が検出する触媒上流空燃比）から、無駄時間要素及び応答遅れ要素を介してＯ2センサ５の出力VO2/OUTを生成する系であるとして、該排気系Ｅの挙動があらかじめ離散時間系でモデル化されている。さらに、前記エンジン１及び機関側制御手段８からなる系（以下、この系を空燃比操作系という）が、前記目標空燃比KCMDから無駄時間要素を介してＬＡＦセンサ４の出力KACT（ＬＡＦセンサ４が検出する触媒上流空燃比）を生成する系であるとして、該空燃比操作系の挙動がモデル化されている。
【００８６】
この場合、排気系Ｅのモデルに関しては、ＬＡＦセンサ４の出力KACTとそれに対する所定の基準値FLAF/BASEとの偏差（＝KACT−FLAF/BASE。以下、ＬＡＦセンサ４の偏差出力kactという）を排気系Ｅに対する入力量、Ｏ2センサ５の出力VO2/OUTと前記目標値VO2/TARGETとの偏差（＝VO2/OUT−VO2/TARGET。以下、Ｏ2センサ５の偏差出力VO2という）を排気系Ｅの出力量とし、次式（１）の自己回帰モデル（詳しくは、排気系Ｅの入力量としてのＬＡＦセンサ４の偏差出力kactに無駄時間を有する自己回帰モデル）により排気系Ｅの挙動が表現されている。尚、ＬＡＦセンサ４の偏差出力kactに係わる前記基準値FLAF/BASE（以下、空燃比基準値FLAF/BASEという）は本実施形態では「理論空燃比」に設定されている。
【００８７】
【数１】
0003773859.tif 000002
【００８８】
ここで、上式（１）において、「ｋ」は前記操作量生成手段７の離散時間的な制御サイクルの番数を示し（以下、同様）、「d1」は排気系Ｅに存する無駄時間（詳しくはＬＡＦセンサ４が検出する各時点の触媒上流空燃比がＯ2センサ５の出力VO2/OUTに反映されるようになるまでに要する無駄時間）を操作量生成手段７の制御サイクル数で表したものである。この場合、排気系Ｅの無駄時間は、操作量生成手段７の制御サイクルの周期を３０〜１００ｍｓとしたとき、一般的には、３〜１０制御サイクル分の時間（d1＝３〜１０）である。そして、本実施形態では、式（１）により表した排気系Ｅのモデル（以下、排気系モデルという）における無駄時間d1の値として、排気系Ｅの実際の無駄時間と等しいか、もしくはそれよりも若干長いものにあらかじめ設定した所定の一定値（本実施形態では例えばd1＝７）が設定されている。
【００８９】
また、式（１）の右辺第１項及び第２項はそれぞれ排気系Ｅの応答遅れ要素に対応するもので、第１項は１次目の自己回帰項、第２項は２次目の自己回帰項である。そして、「a1」、「a2」はそれぞれ１次目の自己回帰項のゲイン係数、２次目の自己回帰項のゲイン係数である。これらのゲイン係数a1，a2は別の言い方をすれば、排気系Ｅの出力量としてのＯ2センサ５の偏差出力VO2に係る係数である。
【００９０】
さらに、式（１）の右辺第３項は排気系Ｅの入力量としてのＬＡＦセンサ４の偏差出力kactに排気系Ｅの無駄時間d1を含めて表現したものであり、「b1」はその入力量に係るゲイン係数である。これらのゲイン係数a1，a2，b1は排気系モデルの挙動を規定する上である値に設定すべきパラメータであり、本実施形態では後述の同定器によって逐次同定するものである。
【００９１】
このように式（１）により定めた排気系モデルは、それを言葉で表現すれば、操作量生成手段７の制御サイクル毎のＯ2センサ５の偏差出力VO2(k+1)を、その制御サイクルよりも過去の制御サイクルにおけるＯ2センサ５の偏差出力VO2(k)，VO2(k-1)と、排気系Ｅの無駄時間ｄ以前の制御サイクルにおけるＬＡＦセンサ４の偏差出力kact(k-d1)とにより表現するものである。
【００９２】
この場合、排気系モデルは、式（１）から明らかなように線形なモデルであるため、基本的には、Ｏ2センサ５の出力VO2/OUTが、排ガス中の酸素濃度に対してほぼ線形な変化を呈するような領域で変化するような状態、すなわち、排ガスの空燃比が理論空燃比近傍の範囲Δ（図２参照）で変化するような状態での排気系Ｅの挙動をより良く近似するものとなる。
【００９３】
一方、前記空燃比操作系のモデルに関しては、前記目標空燃比KCMDと前記空燃比基準値FLAF/BASEとの偏差kcmd（＝KCMD−FLAF/BASE。以下、目標偏差空燃比kcmdという）を空燃比操作系の入力量、ＬＡＦセンサ５の前記偏差出力kactを空燃比操作系の出力量とし、次式（２）のモデル（以下、空燃比操作系モデルという）により空燃比操作系の挙動が表現されている。
【００９４】
【数２】
0003773859.tif 000003
【００９５】
ここで、式（２）において、「d2」は空燃比操作系が有する無駄時間（詳しくは各時点の目標空燃比KCMDがＬＡＦセンサ５の出力KACTに反映されるようになるまでに要する無駄時間）を操作量生成手段７の制御サイクル数で表したものである。従って、この式（２）により表現した空燃比操作系モデルは、空燃比操作系を、その出力量としてのＬＡＦセンサ５の偏差出力kactが、該空燃比操作系の無駄時間d2前の時点における該空燃比操作系への入力量としての目標偏差空燃比kcmdに一致するような系として該空燃比操作系を離散時間系で表現したものである。
【００９６】
この場合、空燃比操作系の無駄時間は、該空燃比操作系が含むエンジン１の回転数によって変化し、エンジン１の回転数が低くなる程、長くなる。そして、本実施形態では、式（２）により表した空燃比操作系モデルにおける無駄時間d2の値としては、上記のような空燃比操作系の無駄時間の特性を考慮し、例えばエンジン１の低速回転域の回転数であるアイドリング回転数において実際の空燃比操作系が有する無駄時間（これは、エンジン１の任意の回転数において空燃比操作系が採り得る最大側の無駄時間である）と等しいか、もしくはそれよりも若干長いものにあらかじめ設定した所定の一定値（本実施形態では例えばd2＝３）を用いる。
【００９７】
尚、前記空燃比操作系には、実際には、無駄時間要素の他、エンジン１に起因した応答遅れ要素も含まれる。しかるに、目標空燃比KCMDに対する触媒上流空燃比の応答遅れは、基本的には詳細を後述する機関制御手段８のフィードバック制御処理（特に後述する適応制御器２４の処理）によって補償されるため、操作量生成手段７から見た空燃比操作系では、エンジン１に起因する応答遅れ要素を考慮せずとも支障はない。
【００９８】
操作量生成手段７は、式（１），（２）によりそれぞれ表現した排気系モデルや空燃比操作系モデル等に基づいて目標空燃比KCMDの生成処理を行うために、図３に示すような機能的構成を具備している。
【００９９】
すなわち、操作量生成手段７は、前記ＬＡＦセンサ４の出力KACTから前記空燃比基準値FLAF/BASEを減算することによりＬＡＦセンサ４の偏差出力kactを制御サイクル毎に逐次求める減算処理部９と、Ｏ2センサ５の出力VO2/OUTから前記目標値VO2/TARGETを減算することによりＯ2センサ５の偏差出力VO2を制御サイクル毎に逐次求める減算処理部１０とを具備する。
【０１００】
さらに操作量生成手段７は、前記排気系モデル（式（１））の設定すべきパラメータである前記ゲイン係数a1，a2，b1の同定値a1ハット，a2ハット，b1ハット（以下、同定ゲイン係数a1ハット，a2ハット，b1ハットという）を制御サイクル毎に逐次求める同定器１１（同定手段）と、排気系Ｅの無駄時間d1及び空燃比操作系の無駄時間d2を合わせた合計無駄時間ｄ（＝d1＋d2）後のＯ2センサ５の偏差出力VO2の２種類の推定値（予測値）VO2Lバー、VO2Fバー（以下、推定偏差出力VO2Lバー、VO2Fバーという）をそれぞれ互いに異なるアルゴリズムにより制御サイクル毎に逐次求める第１推定器１２（第１推定手段）及び第２推定器１３（第２推定手段）と、これらの両推定器１２，１３がそれぞれ求めた推定偏差出力VO2Lバー、VO2Fバーを合成してなる合成推定偏差出力VO2バーを制御サイクル毎に逐次求める合成器１４と、適応スライディングモード制御の処理により前記目標空燃比KCMDを制御サイクル毎に逐次算出するスライディングモード制御器１５とを具備する。
【０１０１】
前記同定器１１、第１推定器１２、第２推定器１３、合成器１４、及びスライディングモード制御器１５による演算処理のアルゴリズムは以下のように構築されている。
【０１０２】
まず、同定器１１は、前記式（１）により表現した排気系モデルの実際の対象排気系Ｅに対するモデル化誤差を極力小さくするように前記ゲイン係数a1，a2，b1の値をリアルタイムで逐次同定するものであり、その同定処理を次のように行う。
【０１０３】
すなわち、同定器１１は、操作量生成手段７の制御サイクル毎に、まず、今現在設定されている排気系モデルの同定ゲイン係数a1ハット，a2ハット，b1ハット、すなわち前回の制御サイクルで決定した同定ゲイン係数a1(k-1)ハット，a2(k-1)ハット，b1(k-1)ハットの値と、ＬＡＦセンサ４の偏差出力kact及びＯ2センサ５の偏差出力VO2の過去値のデータkact(k-d1-1)，VO2(k-1)，VO2(k-2)とを用いて、次式（３）により排気系モデル上でのＯ2センサ５の偏差出力VO2（排気系モデルの出力）の値VO2(k)ハット（以下、同定偏差出力VO2(k)ハットという）を求める。
【０１０４】
【数３】
0003773859.tif 000004
【０１０５】
この式（３）は、排気系モデルを表す前記式（１）を１制御サイクル分、過去側にシフトし、ゲイン係数a1，a2，b1として同定ゲイン係数a1(k-1)ハット，a2(k-1)ハット，b1(k-1)ハットを用いたものである。また、式（３）の第３項で用いる排気系Ｅの無駄時間d1の値は、前述の如く設定した一定値（本実施形態ではd1＝７）を用いる。
【０１０６】
尚、式（３）中の「Θ」、「ξ」は同式但し書きで定義した通りのベクトルである。また、式（３）で用いている添え時「Ｔ」は転置を意味する（以下同様）。
【０１０７】
さらに同定器１１は、前記式（３）により求められるＯ2センサ５の同定偏差出力VO2(k)ハットと今現在のＯ2センサ５の偏差出力VO2(k)との偏差id/e(k)を排気系モデルの実際の排気系Ｅに対するモデル化誤差を表すものとして次式（４）により求める（以下、偏差id/eを同定誤差id/eという）。
【０１０８】
【数４】
0003773859.tif 000005
【０１０９】
そして、同定器１１は、上記同定誤差id/eを最小にするように新たな同定ゲイン係数a1(k)ハット，a2(k)ハット，b1(k)ハット、換言すれば、これらの同定ゲイン係数を要素とする新たな前記ベクトルΘ(k)（以下、このベクトルを同定ゲイン係数ベクトルΘという）を求めるもので、その算出を、次式（５）により行う。すなわち、同定器１１は、前回の制御サイクルで決定した同定ゲイン係数a1(k-1)ハット，a2(k-1)ハット，b1(k-1)ハットを、同定誤差id/e(k)に比例させた量だけ変化させることで新たな同定ゲイン係数a1(k)ハット，a2(k)ハット，b1(k)ハットを求める。
【０１１０】
【数５】
0003773859.tif 000006
【０１１１】
ここで、式（５）中の「Ｋθ」は次式（６）により決定される三次のベクトル（各同定ゲイン係数a1ハット，a2ハット，b1ハットの同定誤差id/eに応じた変化度合いを規定するゲイン係数ベクトル）である。
【０１１２】
【数６】
0003773859.tif 000007
【０１１３】
また、上式（６）中の「Ｐ」は次式（７）の漸化式により決定される三次の正方行列である。
【０１１４】
【数７】
0003773859.tif 000008
【０１１５】
尚、式（７）中の「λ1」、「λ2」は０＜λ1≦１及び０≦λ2＜２の条件を満たすように設定され、また、「Ｐ」の初期値Ｐ(0)は、その各対角成分を正の数とする対角行列である。
【０１１６】
この場合、式（７）中の「λ1」、「λ2」の設定の仕方によって、固定ゲイン法、漸減ゲイン法、重み付き最小二乗法、最小二乗法、固定トレース法等、各種の具体的な同定アルゴリズムが構成され、本実施形態では、例えば最小二乗法（この場合、λ1＝λ2＝１）を採用している。
【０１１７】
本実施形態における同定器２５は基本的には前述のようなアルゴリズム（演算処理）によって、前記同定誤差id/eを最小化するように排気系モデルの前記同定ゲイン係数a1ハット，a2ハット，b1ハットを制御サイクル毎に逐次求めるものである。このような処理によって、実際の排気系Ｅに適合した同定ゲイン係数a1ハット，a2ハット，b1ハットが逐次、リアルタイムで得られる。
【０１１８】
以上説明したアルゴリズムが同定器１１が実行する基本的なアルゴリズムである。
【０１１９】
次に、前記第１推定器１２は、後に詳細を説明するスライディングモード制御器１５による目標空燃比KCMDの算出処理に際しての排気系Ｅの無駄時間d1及び空燃比操作系の無駄時間d2の影響を補償するために、前記合計無駄時間ｄ（＝d1＋d2）後のＯ2センサ５の偏差出力VO2の推定値である前記推定偏差出力VO2Lバーを制御サイクル毎に逐次求めるものである。その推定処理のアルゴリズムは次のように構築されている。
【０１２０】
まず、排気系モデルを表す前記式（１）に、空燃比操作系モデルを表す式（２）を適用すると、次式（８）が得られる。
【０１２１】
【数８】
0003773859.tif 000009
【０１２２】
この式（８）は、排気系Ｅ及び空燃比操作系を合わせた系を、目標偏差空燃比kcmdから排気系Ｅ及び空燃比操作系の両者の無駄時間要素と排気系Ｅの応答遅れ要素とを介してＯ2センサ５の偏差出力VO2を生成する系であるとして、該系の挙動を離散時間系のモデルで表現したものである。
【０１２３】
そして、この式（８）を用いることで、各制御サイクルにおける前記合計無駄時間ｄ後のＯ2センサ５の偏差出力VO2(k+d)の推定値である前記推定偏差出力VO2L(k+d)バーは、Ｏ2センサ５の偏差出力VO2の現在値及び過去値の時系列データVO2(k)及びVO2(k-1)と、スライディングモード制御器１５が後述のように求める目標偏差空燃比kcmd（＝KCMD−FLAF/BASE）の過去値の時系列データkcmd(k-j)（ｊ＝1，2，…，d）とを用いて次式（９）により表される。
【０１２４】
【数９】
0003773859.tif 000010
【０１２５】
ここで、式（９）において、α1，α2は、それぞれ同式（９）中のただし書きで定義した行列Ａの巾乗Ａd（ｄ：合計無駄時間）の第１行第１列成分、第１行第２列成分である。また、βj（ｊ＝1，2，…，d）は、それぞれ行列Ａの巾乗Ａj-1と同式（９）中のただし書きで定義したベクトルＢとの積Ａj-1・Ｂの第１行成分である。
【０１２６】
さらに、式（９）中の目標偏差空燃比kcmdの過去値の時系列データkcmd(k-j)（ｊ＝1，2，…，d）のうち、空燃比操作系の無駄時間d2以前の目標偏差空燃比kcmdの過去値の時系列データkcmd(k-d2)，kcmd(k-d2-1)，…，kcmd(k-d)は前記式（２）によって、それぞれ、ＬＡＦセンサ４の偏差出力kactの現在以前に得られるデータkact(k)，kact(k-1)，…，kact(k-d+d2)に置き換えることができる。そして、この置き換えを行うことで、次式（１０）が得られる。
【０１２７】
【数１０】
0003773859.tif 000011
【０１２８】
この式（１０）が本実施形態において、第１推定器１２が前記推定偏差出力VO2L(k+d)バーを制御サイクル毎に算出するための基本式である。つまり、第１推定器１２は、制御サイクル毎に、Ｏ2センサ５の偏差出力VO2の現在値及び過去値の時系列データVO2(k)及びVO2(k-1)と、スライディングモード制御器１５が過去に求めた目標偏差空燃比kcmdの過去値の時系列データkcmd(k-j)（ｊ＝1，２，…，d2-1）と、ＬＡＦセンサ４の偏差出力kactの現在値及び過去値の時系列データkact(k-i)（ｉ＝０，１，…，d1）とを用いて式（１０）の演算を行うことによって、Ｏ2センサ５の推定偏差出力VO2L(k+d)バーを求める。
【０１２９】
この場合、本実施形態では、式（１０）により推定偏差出力VO2Lバーを算出するために必要となる係数α1，α2及びβj（ｊ＝1，2，…，d）の値は、基本的には、前記ゲイン係数a1，a2，b1（これらは式（９）のただし書きで定義した行列Ａ及びベクトルＢの成分である）の同定値である前記同定ゲイン係数a1ハット，a2ハット，b1ハットを用いて算出する。また、式（１０）の演算で必要となる無駄時間d1，d2の値は、前述の如くあらかじめ設定した値を用いる。
【０１３０】
このようにして式（１０）により求められる推定偏差出力VO2L(k+d)バーは、該式（１０）や、これの基礎となる排気系モデル等が線形なものであるため、基本的には、Ｏ2センサ５の出力VO2/OUTが、排ガス中の酸素濃度に対してほぼ線形な変化を呈するような領域で変化するような状態（排ガスの空燃比が理論空燃比近傍で変化するような状態）において、比較的精度よく前記合計無駄時間ｄ後のＯ2センサ５の偏差出力VO2(k+d)に合致するものとなる。
【０１３１】
尚、推定偏差出力V O2L(k+d)バーは、ＬＡＦセンサ４の偏差出力kactのデータを使用せずに、式（９）の演算により求めるようにしてもよいが、推定偏差出力VO2L(k+d)バーの信頼性を高める上では、エンジン１等の実際の挙動が反映されるＬＡＦセンサ４の偏差出力kactのデータを用いた式（１０）の演算により推定偏差出力VO2L(k+d)バーを求めることが好ましい。また、空燃比操作系の無駄時間d2を「１」に設定できるような場合には、式（９）中の目標偏差空燃比kcmdの過去値の時系列データkcmd(k-j)（ｊ＝1，2，…，d）の全てをそれぞれ、ＬＡＦセンサ４の偏差出力kactの現在以前に得られる時系列データkact(k)，kact(k-1)，…，kact(k-d+d2)に置き換えることができる。このため、この場合には、制御サイクル毎の推定偏差出力VO2L(k+d)バーは、目標偏差空燃比kcmdのデータを含まない次式（１１）により求めることができる。
【０１３２】
【数１１】
0003773859.tif 000012
【０１３３】
次に、説明の便宜上、前記第２推定器１３や合成器１４を説明する前に、前記スライディングモード制御器１５の処理について説明する。
【０１３４】
本実施形態のスライディングモード制御器１５は、通常的なスライディングモード制御に、外乱等の影響を極力排除するための適応則を加味した適応スライディングモード制御によりＯ2センサ５の出力VO2/OUTをその目標値VO2/TARGETに収束させるように（Ｏ2センサ５の偏差出力VO2を「０」に収束させるように）、制御対象である前記排気系Ｅに与えるべき入力量（詳しくは、触媒上流空燃比と前記空燃比基準値FLAF/BASEとの偏差の目標値で、これは前記目標偏差空燃比kcmdに等しい。以下、この入力量をＳＬＤ操作入力Uslと称する）を決定し、その決定したＳＬＤ操作入力Uslから前記目標空燃比KCMDを決定するものである。そして、その処理のためのアルゴリズムは次のように構築されている。
【０１３５】
まず、スライディングモード制御器１５が実行する適応スライディングモード制御のアルゴリズムに必要な切換関数と、この切換関数により定義される超平面（これはすべり面等とも言われる）とについて説明する。
【０１３６】
本実施形態におけるスライディングモード制御の基本的な考え方としては、制御すべき状態量（制御量）として、例えば各制御サイクルで得られたＯ2センサ５の偏差出力VO2(k)と、その１制御サイクル前に得られた偏差出力VO2(k-1)とを用い、スライディングモード制御用の切換関数σを、次式（１２）のように、これらの偏差出力VO2(k)，VO2(k-1)を変数成分とする線形な関数として定義する。尚、前記偏差出力VO2(k)，VO2(k-1)を成分とするベクトルとして式（１２）中の但し書きで定義したベクトルＸを以下、状態量Ｘという。
【０１３７】
【数１２】
0003773859.tif 000013
【０１３８】
この場合、切換関数σの係数s1，s2は、次式（１３）の条件を満たすように設定される。
【０１３９】
【数１３】
0003773859.tif 000014
【０１４０】
尚、本実施形態では、簡略化のために係数s1＝１とし（この場合、s2／s1＝s2である）、−１＜s2＜１の条件を満たすように係数s2の値を設定している。
【０１４１】
このような切換関数σに対して、スライディングモード制御用の超平面はσ＝０なる式によって定義されるものである。この場合、状態量Ｘは二次系であるので超平面σ＝０は図４に示すように直線となる。該超平面は、位相空間の次数によって、切換線又は切換面とも言われる。
【０１４２】
尚、本実施形態では、スライディングモード制御用の切換関数の変数成分である状態量として、実際には詳細を後述する合成器１４により求められる合成推定偏差出力VO2バーの時系列データを用いるのであるが、これについては後述する。
【０１４３】
本実施形態で用いる適応スライディングモード制御は、状態量Ｘ＝（VO2(k)，VO2(k-1)）を上記の如く設定した超平面σ＝０に収束させるための制御則である到達則と、その超平面σ＝０への収束に際して外乱等の影響を補償するための制御則である適応則（適応アルゴリズム）とにより該状態量Ｘを超平面σ＝０に収束させる（図４のモード１）。そして、該状態量Ｘを所謂、等価制御入力によって超平面σ＝０に拘束しつつ、該状態量Ｘを超平面σ＝０上の平衡点であるVO2(k)＝VO2(k-1)＝０となる点、すなわち、Ｏ2センサ６の出力VO2/OUTの時系列データVO2/OUT(k)，VO2/OUT(k-1)が目標値VO2/TARGETに一致するような点に収束させる（図４のモード２）。
【０１４４】
上記のように状態量Ｘを超平面σ＝０の平衡点に収束させるためにスライディングモード制御器１５が生成する前記ＳＬＤ操作入力Usl（＝目標偏差空燃比kcmd）は、状態量Ｘを超平面σ＝０上に拘束するための制御則に従って排気系Ｅに与えるべき入力成分である等価制御入力Ueqと、前記到達則に従って排気系Ｅに与えるべき入力成分Urch（以下、到達則入力Urchという）と、前記適応則に従って排気系Ｅに与えるべき入力成分Uadp（以下、適応則入力Uadpという）との総和として与えられる（次式（１４））。
【０１４５】
【数１４】
0003773859.tif 000015
【０１４６】
そして、これらの等価制御入力Ueq、到達則入力Urch及び適応則入力Uadpは、本実施形態では、前記式（８）により表される離散時間系のモデル（排気系モデルと空燃比操作系のモデルとを合成したモデル）に基づいて、次のように決定する。
【０１４７】
まず、状態量Ｘを超平面σ＝０に拘束するために排気系Ｅに与えるべき入力成分である前記等価制御入力Ueqは、σ(k+1)＝σ(k)＝０なる条件を満たす目標偏差空燃比kcmdである。そして、このような条件を満たす等価制御入力Ueqは、式（８）と式（１２）とを用いて次式（１５）により与えられる。
【０１４８】
【数１５】
0003773859.tif 000016
【０１４９】
この式（１５）が本実施形態において、制御サイクル毎に等価制御入力Ueq(k)を求めるための基本式である。
【０１５０】
次に、前記到達則入力Urchは、本実施形態では、基本的には次式（１６）により決定するものとする。
【０１５１】
【数１６】
0003773859.tif 000017
【０１５２】
すなわち、到達則入力Urchは、前記合計無駄時間ｄを考慮し、合計無駄時間ｄ後の切換関数σの値σ(k+d)に比例させるように決定する。
【０１５３】
この場合、式（１６）中の係数Ｆ（これは到達則のゲインを規定する）は、次式（１７）の条件を満たすように設定する。
【０１５４】
【数１７】
0003773859.tif 000018
【０１５５】
尚、式（１７）に括弧書きで示した条件は、切換関数σの値が超平面σ＝０に対して振動的な変化（所謂チャタリング）を生じるのを抑制する上で好適な係数Ｆの条件である。
【０１５６】
次に、前記適応則入力Uadpは、本実施形態では、基本的には次式（１８）により決定するものとする（式（１８）中のΔＴは操作量生成手段７の制御サイクルの周期である）。
【０１５７】
【数１８】
0003773859.tif 000019
【０１５８】
すなわち、適応則入力Uadpは、合計無駄時間ｄを考慮し、該合計無駄時間ｄ後までの切換関数σの値と操作量生成手段７の制御サイクルの周期ΔＴとの積の制御サイクル毎の積算値（これは切換関数σの値の積分値に相当する）に比例させるように決定する。
【０１５９】
この場合、式（１８）中の係数Ｇ（これは適応則のゲインを規定する）は、次式（１９）の条件を満たすように設定する。
【０１６０】
【数１９】
0003773859.tif 000020
【０１６１】
尚、前記式（１３）、（１７）、（１９）の設定条件のより具体的な導出の仕方については、本願出願人が既に特開平１１−９３７４１号公報等にて詳細に説明しているので、ここでは詳細な説明を省略する。
【０１６２】
本実施形態におけるスライディングモード制御器１５は、基本的には前記式（１５）、（１６）、（１８）により決定される等価制御入力Ueq、到達則入力Urch及び適応則入力Uadpの総和（Ueq＋Urch＋Uadp）を排気系Ｅに与えるべきＳＬＤ操作入力Uslとして決定するのであるが、前記式（１５）、（１７）、（１９）で使用するＯ2センサ５の偏差出力VO2(k+d)，VO2(k+d-1)や、切換関数σの値σ(k+d)等は未来値であるので直接的には得られない。
【０１６３】
そこで、本実施形態では、スライディングモード制御器１５は、実際には、前記式（１５）により前記等価制御入力Ueqを決定するためのＯ2センサ５の偏差出力VO2(k+d)，VO2(k+d-1)の代わりに、詳細を後述する合成器１４により前記合計無駄時間ｄ後のＯ2センサ５の偏差出力VO2の推定値に相当するものとし制御サイクル毎に求められる合成推定偏差出力VO2バーの今回値VO2(k+d)バー及び前回値VO2(k+d-1)バーを用い、次式（２０）により制御サイクル毎の等価制御入力Ueq(k)を算出する。
【０１６４】
【数２０】
0003773859.tif 000021
【０１６５】
また、本実施形態では、実際には、前記合成器１４により後述のように求められる合成推定値VO2バーの時系列データを制御すべき状態量とし、前記式（１２）の切換関数σに代えて、次式（２１）によりスライディングモード制御用の切換関数σバーを定義する（この切換関数σバーは、前記式（１２）の偏差出力VO2の時系列データを合成推定偏差出力VO2バーの時系列データで置き換えたものに相当する）。
【０１６６】
【数２１】
0003773859.tif 000022
【０１６７】
そして、スライディングモード制御器１５は、前記式（１６）により前記到達則入力Urchを決定するための切換関数σの値の代わりに、前記式（２１）により表される切換関数σバーの値を用いて次式（２２）により制御サイクル毎の到達則入力Urchを算出する。
【０１６８】
【数２２】
0003773859.tif 000023
【０１６９】
同様に、スライディングモード制御器１５は、前記式（１８）により前記適応則入力Uadpを決定するための切換関数σの値の代わりに、前記式（２１）により表される切換関数σバーの値を用いて次式（２３）により制御サイクル毎の適応則入力Uadpを算出する。
【０１７０】
【数２３】
0003773859.tif 000024
【０１７１】
尚、前記式（２０），（２２），（２３）により等価制御入力Ueq、到達則入力Urch及び適応則入力Uadpを算出する際に必要となる前記ゲイン係数a1，a2，b1としては、本実施形態では基本的には前記同定器２５により求められた最新の同定ゲイン係数a1(k)ハット，a2(k)ハット，b1(k)ハットを用いる。
【０１７２】
そして、スライディングモード制御器１５は、前記式（２０），（２２），（２３）によりそれぞれ求められる等価制御入力Ueq、到達則入力Urch及び適応則入力Uadpの総和を排気系Ｅに与えるべき前記ＳＬＤ操作入力Uslとして求める（前記式（１４）を参照）。尚、この場合において、前記式（２０）、（２２）、（２３）中で用いる前記係数s1，s2，Ｆ，Ｇの設定条件は前述の通りである。
【０１７３】
これが、本実施形態において、スライディングモード制御器１５により、排気系Ｅに与えるべきＳＬＤ操作入力Usl（＝目標偏差空燃比kcmd）を制御サイクル毎に決定するための基本的な演算処理（アルゴリズム）である。このようにしてＳＬＤ操作入力Uslを決定することで、該ＳＬＤ操作入力Uslは、Ｏ2センサ５の合成推定偏差出力VO2バーを「０」に収束させるように（結果的にはＯ2センサ５の出力VO2/OUTを目標値VO2/TARGETに収束させるように）決定される。
【０１７４】
ところで、本実施形態におけるスライディングモード制御器１５は最終的には前記目標空燃比KCMDを制御サイクル毎に逐次求めるものあるが、前述のように求められるＳＬＤ操作入力Uslは、ＬＡＦセンサ４で検出される触媒上流空燃比と前記空燃比基準値FLAF/BASEとの偏差の目標値、すなわち前記目標偏差空燃比kcmdである。このため、スライディングモード制御器１５は、最終的には、次式（２４）に示すように、制御サイクル毎に、前述の如く求めたＳＬＤ操作入力Uslに前記空燃比基準値FLAF/BASEを加算することで、目標空燃比KCMDを決定する。
【０１７５】
【数２４】
0003773859.tif 000025
【０１７６】
以上が本実施形態でスライディングモード制御器１５により目標空燃比KCMDを決定するための基本的アルゴリズムである。
【０１７７】
尚、本実施形態では、スライディングモード制御器１５は、その処理において前記同定器１１により求められる同定ゲイン係数a1ハット、a2ハット、b1ハットを用いるため、このスライディングモード制御器１５と同定器１１とを合わせたものの処理は、適応制御の処理の一形態となる。従って、本実施形態では、前記ＳＬＤ操作入力Usl、ひいては操作量としての目標空燃比KCMDは、適応制御
の処理によって生成されるというように言い換えることもできる。
【０１７８】
次に、前記第２推定器１３を説明する。該第２推定器１３は、Ｏ2センサ５の出力VO2/OUTが非線形領域で変化するような状態における前記第１推定器１２の推定偏差出力VO2Lバーの精度の低下を補完するために、第１推定器１２とは別のアルゴリズムによって、前記合計無駄時間ｄ（＝d1＋d2）後のＯ2センサ５の偏差出力VO2の推定値である前記推定偏差出力VO2Fバーを制御サイクル毎に逐次求めるものである。そして、この推定処理のアルゴリズムは次のように構築されている。
【０１７９】
前記スライディングモード制御器１５により目標空燃比KCMDを生成し、この目標空燃比KCMDにＬＡＦセンサ４の出力KACTを収束させるように詳細を後述する機関制御手段８によりエンジン１で燃焼させる混合気の空燃比を操作しているときに、触媒装置３を通過した排ガスの空燃比がリーン側からリッチ側に、あるいはリッチ側からリーン側に比較的大きく変化した場合においては（この変化は、Ｏ2センサ５の出力VO2/OUTの非線形領域を含む変化である）、Ｏ2センサ５の偏差出力VO2の現在値VO2(k)及び過去値VO2(k-1)の時系列データから成る前記状態量Ｘ＝（VO2(k)，VO2(k-1)）は、前記式（１２）の切換関数σに係わる超平面σ＝０に対してある特徴的な変化を呈する。
【０１８０】
すなわち、図５に示すように、Ｏ2センサ５の箇所の排ガスの空燃比がリーン側からリッチ側に大きく変化すると、状態量Ｘ＝（VO2(k)，VO2(k-1)）は、実線ｅで示す如く、超平面σ＝０からその上側（σ＞０となる領域）に離間するような軌跡を描いて変化する。また、排ガスの空燃比がリッチ側からリーン側に大きく変化すると、状態量Ｘ＝（VO2(k)，VO2(k-1)）は、実線ｆで示す如く、超平面σ＝０からその下側（σ＜０となる領域）に離間するような軌跡を描いて変化する。そして、このような状態量Ｘの変化の仕方は、エンジン１の運転状態等によらずに概ね一定となる。
【０１８１】
Ｏ2センサ５の出力VO2/OUTの非線形領域での挙動に係わる上記のような特性に着目し、本実施形態の第２推定器１３では、Ｏ2センサ５の偏差出力VO2の前記合計無駄時間ｄ後の推定値である前記推定偏差出力VO2Fバーをファジー推論により求めることとし、このファジー推論の前件部のパラメータ（入力パラメータ）を、制御サイクル毎の前記式（１２）の切換関数σの値σ(k)とＯ2センサ５の偏差出力VO2の現在値VO2(k)との二つとすると共に、ファジー推論の後件部のパラメータ（出力パラメータ）を制御サイクル毎の推定偏差出力VO2F(k+d)バーとしている。
【０１８２】
尚、本実施形態でスライディングモード制御器１５が実際に用いる切換関数は、前記式（２１）で定義した切換関数σバーであるので、前記式（１２）の切換関数σは、正確にはスライディングモード制御用の切換関数ではない。そこで、以下の説明では、式（１２）の関数σをファジー用線形関数σと称する。このファジー用線形関数σは前述したことから明らかなように、スライディングモード制御用の切換関数σバーと同じ形で、その変数成分のみが相違するものである。
【０１８３】
そして、本実施形態における第２推定器１３のファジー推論では、前件部のパラメータであるファジー用線形関数σの値σ(k)に関しては、図６（ａ）に示すように、Ｎ（負），Ｚ（ゼロ），Ｐ（正）の三つのメンバーシップ関数が設定されている。この場合、メンバーシップ関数Ｎ（負）、Ｐ（正）は台形状の関数であり、メンバーシップ関数Ｚ（ゼロ）は、三角形状の関数である。
【０１８４】
同様に、前件部の他のパラメータである偏差出力VO2の値VO2(k)に関しては、図６（ｂ）に示すように、Ｎ（負），Ｚ（ゼロ），Ｐ（正）の三つのメンバーシップ関数が設定され、それぞれ形状は、台形状、三角形状、台形状である。
【０１８５】
また、ファジー推論の後件部のパラメータである推定偏差出力VO2Fバーの値VO2F(k+d)に関しては、図６（ｃ）に示すように、Ｎ（負），Ｚ（ゼロ），Ｐ（正）の三つのメンバーシップ関数が設定されている。この場合、各メンバーシップ関数Ｎ（負），Ｚ（ゼロ），Ｐ（正）は、それぞれ、推定偏差出力VO2Fバーの単一の特定値VO2FN（＜０）、「０」、VO2FP（＞０）においてのみ適合度（メンバーシップ関数の関数値）が最大（＝１）となるような棒状関数（所謂、シングルトンの棒状関数）である。ここで、メンバーシップ関数Ｎ（負）、Ｐ（正）に係わる上記特定値VO2FN，VO2FPは、それぞれＯ2センサ５の出力VO2/OUTが飽和した状態（図２参照）での該出力VO2/OUT（一定値）に対応する値である。
【０１８６】
さらに、これらの図６（ａ）〜（ｃ）のメンバーシップ関数に対して、ファジー推論のファジールールは、本実施形態では、図７に示すように９種類のルールが設定されている。このファジールールでは、前件部のファジー用線形関数σの値σ(k)が負、ゼロ、正のいずれであるかによって、それぞれ後件部の推定偏差出力VO2F(k+d)が負、ゼロ、正に定まるようになっている。
【０１８７】
上述のようにメンバーシップ関数及びファジールールが設定された本実施形態では、第２推定器１３は、ファジー推論技術で公知のmin−max−重心法のアルゴリズムにより、制御サイクル毎に得られるファジー用線形関数σの値σ(k)及びＯ2センサ５の偏差出力VO2の値VO2(k)から前記推定偏差出力VO2F(k+d)バーを求める。
【０１８８】
すなわち、第２推定器１３は、まず、各ルールナンバーｉ（ｉ＝１，２，…，９）のファジールールにおいて、前件部のパラメータσ(k)，VO2(k)のそれぞれに対する適合度（以下、それぞれの適合度に参照符号Ｗσ(i)、Ｗv(i)を付する）を、各パラメータσ(k)，VO2(k)の値と、各ファジールールの前件部の対応するメンバーシップ関数とから求める。例えば、図７のルールナンバー１において、パラメータσ(k)に対する適合度Ｗσ(1)はそのパラメータσ(k)の値における図６（ａ）のメンバーシップ関数Ｎ（負）の関数値として求められ、パラメータVO2(k)に対する適合度Ｗv(1)はそのパラメータVO2(k)の値における図６（ｂ）のメンバーシップ関数Ｎ（負）の関数値として求められる。他のファジールールについても同様である。
【０１８９】
さらに、第２推定器１３は、各ルールナンバーｉ（ｉ＝１，２，…，９）のファジールールにおいて、前件部の各パラメータσ(k)，VO2(k)のそれぞれに対する適合度Ｗσ(i)、Ｗv(i)のうちの小さい方、すなわち、min（Ｗσ(i)，Ｗv(i)）を該ファジールールにおける前件部の総合的な適合度Wpre(i)として求める。
【０１９０】
そして、第２推定器１３は、各ファジールール毎の上記適合度Wpre(i)（ｉ＝１，２，…，９）を用いて、次式（２５）により、Ｏ2センサ５の偏差出力VO2の前記合計無駄時間ｄ後の推定値としての推定偏差出力VO2F(k+d)を算出する。
【０１９１】
【数２５】
0003773859.tif 000026
【０１９２】
ここで、上式（２５）において、Ｗwpre(i)は、各ルールナンバーｉ（ｉ＝１，２，…，９）のファジールールにおける後件部に対応する図６（ｃ）のメンバーシップ関数（棒状関数）の関数値であり、Ｗppre(i)は、そのメンバーシップ関数に係わる前記特定値VO2FN又は「０」又はVO2FPである。この場合、本実施形態では、後件部のメンバーシップ関数Ｎ（負）、Ｚ（ゼロ）、Ｐ（正）の関数値はいずれも「１」であり、従って、Ｗwpre(i)＝１（ｉ＝１，２，…，９）である。また、図７のファジールールと図６（ｃ）のメンバーシップ関数とから明らかなように、ルールナンバー１〜３の各ファジールールに対してはＷppre(i)＝VO2FNであり、ルールナンバー４〜６の各ファジールールに対しては、Ｗppre(i)＝０であり、ルールナンバー７〜９の各ファジールールに対しては、Ｗppre(i)＝VO2FPである。
【０１９３】
以上説明したアルゴリズムが、第２推定器１３が制御サイクル毎に、推定偏差出力VO2F(k+d)をファジー推論により求めるアルゴリズムである。このようにして第２推定器１３が求める推定偏差出力VO2F(k+d)は、特にＯ2センサ５の出力VO2/OUTが非線形な領域で変動するような場合において、前記合計無駄時間ｄ後のＯ2センサ５の偏差出力VO2(k+d)の推定値として比較的精度の良いものとなる。
【０１９４】
次に、前記合成器１４について説明する。
【０１９５】
まず、本願発明者等の知見によれば、Ｏ2センサ５の出力状態が、第１推定器１２が比較的精度のよい推定偏差出力VO2L(k+d)バーを算出することができる出力状態（前記目標値VO2/TARGETの近傍の線形領域での変動状態）にあるか、第２推定器１３が比較的精度のよい推定偏差出力VO2L(k+d)バーを算出することができる出力状態（前記目標値VO2/TARGETの近傍の線形領域での変動状態）にあるかは、スライディングモード制御用の切換関数（本実施形態では式（２１）のσバー）と密接に関連する。そして、例えば該切換関数σバーと同種の線形関数である前記ファジー用線形関数σ（式（１２）参照）に着目したとき、前記状態量Ｘ＝（VO2(k)，VO2(k-1)）が、該線形関数σに係わる超平面σ＝０に対して、前記図５に斜線を付して示した楕円形状の領域Ａに存するときに、第１推定器１２の推定偏差出力VO2L(k+d)バーの精度が良好となるようなＯ2センサ５の出力状態であり、状態量Ｘ＝（VO2(k)，VO2(k-1)）が、上記領域Ａの外に存するときに、第２推定器１３の推定偏差出力VO2F(k+d)バーの精度が良好となるようなＯ2センサ５の出力状態となる（以下、領域Ａを線形的挙動領域Ａという）。
【０１９６】
従って、基本的には、状態量Ｘ＝（VO2(k)，VO2(k-1)）が上記線形的挙動領域Ａに存するか否かによって、スライディングモード制御器１５で使用すべき推定偏差出力VO2L(k+d)バー又はVO2F(k+d)バーを選択するようにすればよい。但し、線形的挙動領域Ａの境界近傍で状態量Ｘが動くような状態では、両推定器１２，１３の推定偏差出力VO2Lバー、VO2Fバーを二者択一的にスライディングモード制御器１５の演算処理に用いるようにすると、使用する推定偏差出力の値が不連続的に変動する虞れがある。
【０１９７】
また、図８に示すように、ファジー用線形関数σの値σ(k)とＯ2センサ５の偏差出力VO2(k)とを座標成分とする直交座標軸を設定したとき、前記図５の線形的挙動領域Ａは、図８の座標平面上では単純な楕円形状の領域Ｂに変換され、前記状態量Ｘが図５の線形的挙動領域Ａ内に存するということは、図８の座標平面上では、ファジー用線形関数σの値σ(k)とＯ2センサ５の偏差出力VO2(k)との組により定まる該座標平面上の点が領域Ｂ内に存することと等価である。
【０１９８】
そこで、本実施形態では前記合成器１４は、次式（２６）に示すように、制御サイクル毎に各推定器１２，１３が求める推定偏差出力VO2L(k+d)バー，VO2F(k+d)バーにそれぞれ重み係数Cw、（１−Cw）を付して合成する（加算する）ことで、スライディングモード制御器１５で使用する合成推定偏差出力VO2(k+d)バーを制御サイクル毎に逐次算出する。
【０１９９】
【数２６】
0003773859.tif 000027
【０２００】
そして、このとき、合成器１４は、上記重み係数Cwの値を、次式（２７）により定義される楕円関数OVAL(k)の値に応じて、図９のデータテーブルにより設定し、その重み係数Cwの値を用いて式（２６）の演算を行う。
【０２０１】
【数２７】
0003773859.tif 000028
【０２０２】
尚、式（２７）中のａ，ｂは、図８に示すように楕円領域Ｂの境界と各座標軸σ(k)，VO2(k)との交点における正の値である。
【０２０３】
この場合、図９のデータテーブルでは、OVAL(k)≦１であるときには（これは、前記状態量Ｘが図５の線形的挙動領域Ａ（境界を含む）に存することを意味する）、前記重み係数Cwが「１」に設定され、１＜OVAL(k)＜１＋δ（但し、δは小さい正の値）であるときには（これは状態量Ｘが図５の線形的挙動領域Ａ外で該領域Ａの近傍に存することを意味する）、楕円関数OVAL(k)の値が大きくなるに伴って重み係数Cwの値が「１」から「０」に向かって漸減するように該重み係数Cwが設定される。そして、１＋δ≦OVAL(k)であるときには（これは、状態量Ｘが完全に図５の線形的挙動領域Ａの外に存することを意味する）、重み係数Cwが「０」に設定される。
【０２０４】
従って、状態量Ｘが線形的挙動領域Ａ内に存するときには、前記式（２６）によって、VO2(k+d)バー＝VO2L(k+d)バーとなり、合成器１４は、第１推定器１２による推定偏差出力Cがスライディングモード制御器１５の演算処理で用いる合成推定偏差出力VO2バーとして選択的に出力することとなる。また、状態量Ｘが安全に線形的挙動領域Ａの外に存するときには、VO2(k+d)バー＝VO2F(k+d)バーとなり、合成器１４は、第２推定器１３による推定偏差出力VO2F(k+d)バーがスライディングモード制御器１５の演算処理で用いる合成推定偏差出力VO2バーとして選択的に出力することとなる。さらに、状態量Ｘが線形的挙動領域Ａの外で該領域Ａの近傍に存するときには、合成器１４は、両推定器１２，１３による推定偏差出力VO2L(k+d)バー，VO2F(k+d)バーの重み付き平均値を合成推定偏差出力VO2バーとして出力することとなる。
【０２０５】
以上説明した処理が、合成器１４の処理である。
【０２０６】
次に、前記機関制御手段８についてさらに図１０及び図１１を参照して説明する。
【０２０７】
図１０のブロック図を参照して、機関制御手段８は、その機能的構成として、エンジン１で燃焼させる混合気の空燃比を操作するために実際に使用する触媒上流空燃比の目標値としての実使用目標空燃比RKCMDを決定する目標空燃比選択設定部１６を具備する。
【０２０８】
この目標空燃比選択設定部１６は、前記ストイキ運転モードでは、前記操作量生成手段７のスライディングモード制御器１５が前述のように生成する目標空燃比KCMDを実使用目標空燃比RKCMDとして決定する。そして、ストイキ運転モード以外の運転モード、例えばリーン運転モードでは、エンジン１の回転数NEや吸気圧PB等から、マップやデータテーブルを用いて求められるリーン側の空燃比を実使用目標空燃比RKCMDとして決定する。
【０２０９】
さらに、機関制御手段８は、エンジン１への基本燃料噴射量Ｔimを求める基本燃料噴射量算出部１７と、基本燃料噴射量Ｔimを補正するための第１補正係数KTOTAL及び第２補正係数KCMDMをそれぞれ求める第１補正係数算出部１８及び第２補正係数算出部１９とを具備する。
【０２１０】
前記基本燃料噴射量算出部１７は、エンジン１の回転数NEと吸気圧PBとから、それらにより規定されるエンジン１の基準の燃料噴射量（燃料供給量）をあらかじめ設定されたマップを用いて求め、その基準の燃料噴射量をエンジン１の図示しないスロットル弁の有効開口面積に応じて補正することで基本燃料噴射量Ｔimを算出する。この基本燃料噴射量Ｔimは、基本的には、エンジン１で燃焼させる混合気の空燃比が理論空燃比となるような燃料噴射量である。
【０２１１】
また、第１補正係数算出部１８が求める第１補正係数KTOTALは、エンジン１の排気還流率（エンジン１の吸入空気中に含まれる排ガスの割合）や、エンジン１の図示しないキャニスタのパージ時にエンジン１に供給される燃料のパージ量、エンジン１の冷却水温、吸気温等を考慮して前記基本燃料噴射量Ｔimを補正するためのものである。
【０２１２】
また、第２補正係数算出部１９が求める第２補正係数KCMDMは、前記目標空燃比選択設定部１６が決定した実使用目標空燃比R KCMDに対応してエンジン１へ流入する燃料の冷却効果による吸入空気の充填効率を考慮して基本燃料噴射量Ｔimを補正するためのものである。
【０２１３】
これらの第１補正係数KTOTAL及び第２補正係数KCMDMによる基本燃料噴射量Ｔimの補正は、第１補正係数KTOTAL及び第２補正係数KCMDMを基本燃料噴射量Ｔimに乗算することで行われ、この補正によりエンジン１の要求燃料噴射量Ｔcylが得られる。
【０２１４】
尚、前記基本燃料噴射量Ｔimや、第１補正係数KTOTAL、第２補正係数KCMDMのより具体的な算出手法は、特開平５−７９３７４号公報等に本願出願人が開示しているので、ここでは詳細な説明を省略する。
【０２１５】
機関制御手段８は、上記の機能的構成の他、さらに、前記実使用目標空燃比RKCMDにＬＡＦセンサ４の出力KACT（触媒上流空燃比の検出値）を収束させるようにフィードバック制御によりエンジン１の燃料噴射量を調整することでエンジン１で燃焼させる混合気の空燃比を操作するフィードバック制御部２０を備えている。
【０２１６】
このフィードバック制御部２０は、本実施形態では、エンジン１の各気筒の全体的な空燃比をフィードバック制御する大局的フィードバック制御部２１と、エンジン１の各気筒毎の空燃比をフィードバック制御する局所的フィードバック制御部２２とに分別される。
【０２１７】
前記大局的フィードバック制御部２１は、ＬＡＦセンサ４の出力KACTが前記実使用目標空燃比KCMDに収束するように、前記要求燃料噴射量Ｔcylを補正する（要求燃料噴射量Ｔcylに乗算する）フィードバック補正係数KFBを逐次求めるものである。
【０２１８】
この大局的フィードバック制御部２１は、ＬＡＦセンサ４の出力KACTと実使用目標空燃比RKCMDとの偏差に応じて周知のＰＩＤ制御を用いて前記フィードバック補正係数KFBとしてのフィードバック操作量KLAFを生成するＰＩＤ制御器２３と、ＬＡＦセンサ４の出力KACTと実使用目標空燃比RKCMDとからエンジン１の運転状態の変化や特性変化等を考慮して前記フィードバック補正係数KFBを規定するフィードバック操作量KSTRを適応的に求める適応制御器２４（図ではＳＴＲと称している）とをそれぞれ独立的に具備している。
【０２１９】
ここで、本実施形態では、前記ＰＩＤ制御器２３が生成するフィードバック操作量KLAFは、ＬＡＦセンサ４の出力KACT（空燃比の検出値）が実使用目標空燃比RKCMDに一致している状態で「１」となり、該操作量KLAFをそのまま前記フィードバック補正係数KFBとして使用できるようになっている。一方、適応制御器２４が生成するフィードバック操作量KSTRはＬＡＦセンサ４の出力KACTが実使用目標空燃比RKCMDに一致する状態で「実使用目標空燃比RKCMD」となるものである。このため、該フィードバック操作量KSTRを除算処理部２５で実使用目標空燃比RKCMDにより除算してなるフィードバック操作量kstr（＝KSTR／RKCMD）が前記フィードバック補正係数KFBとして使用できるようになっている。
【０２２０】
大局的フィードバック制御部２１は、ＰＩＤ制御器２３により生成されるフィードバック操作量KLAFと、適応制御器２４が生成するフィードバック操作量KSTRを実使用目標空燃比RKCMDにより除算してなるフィードバック操作量kstrとを切換部２６で適宜、択一的に選択する。そして、いずれか一方のフィードバック操作量KLAF又はkstrを前記フィードバック補正係数KFBとして使用し、該補正係数KFBを前記要求燃料噴射量Ｔcylに乗算することにより該要求燃料噴射量Ｔcylを補正する。尚、かかる大局的フィードバック制御部２１（特に適応制御器２４）については後にさらに詳細に説明する。
【０２２１】
前記局所的フィードバック制御部２２は、ＬＡＦセンサ４の出力KACTから各気筒毎の実空燃比#nA/F(ｎ＝１，２，３，４）を推定するオブザーバ２７と、このオブザーバ２７により推定された各気筒毎の実空燃比#nA/Fから各気筒毎の空燃比のばらつきを解消するよう、ＰＩＤ制御を用いて各気筒毎の燃料噴射量のフィードバック補正係数#nKLAFをそれぞれ求める複数（気筒数個）のＰＩＤ制御器２８とを具備する。
【０２２２】
ここで、オブザーバ２７は、それを簡単に説明すると、各気筒毎の実空燃比#nA/Fの推定を次のように行うものである。すなわち、エンジン１からＬＡＦセンサ４の箇所（各気筒毎の排ガスの集合部）にかけての系を、エンジン１の各気筒毎の実空燃比#nA/FからＬＡＦセンサ４で検出される触媒上流空燃比を生成する系と考える。そして、この系を、ＬＡＦセンサ４の検出応答遅れ（例えば一次遅れ）や、ＬＡＦセンサ４で検出される触媒上流空燃比に対するエンジン１の各気筒毎の空燃比の時間的寄与度を考慮してモデル化する。そして、そのモデルの基で、ＬＡＦセンサ４の出力KACTから、逆算的に各気筒毎の実空燃比#nA/Fを推定する。
【０２２３】
尚、このようなオブザーバ２７は、本願出願人が例えば特開平７−８３０９４号公報に詳細に開示しているので、ここでは、さらなる説明を省略する。
【０２２４】
また、局所的フィードバック制御部２２の各ＰＩＤ制御器２８は、ＬＡＦセンサ４の出力KACTを、前回の制御サイクルで各ＰＩＤ制御器２８により求められたフィードバック補正係数#nKLAFの全気筒についての平均値により除算してなる値を各気筒の空燃比の目標値とする。さらに、その目標値とオブザーバ２７により求められた各気筒毎の実空燃比#nA/Fの推定値との偏差が解消するように、今回の制御サイクルにおける、各気筒毎のフィードバック補正係数#nKLAFを求める。
【０２２５】
そして、局所的フィードバック制御部２２は、前記要求燃料噴射量Ｔcylに大局的フィードバック制御部２１のフィードバック補正係数KFBを乗算してなる値に、各気筒毎のフィードバック補正係数#nKLAFを乗算することで、各気筒の出力燃料噴射量#nＴout（ｎ＝１，２，３，４）を求める。
【０２２６】
このようにして求められる各気筒の出力燃料噴射量#nＴoutは、機関制御手段８に備えた各気筒毎の付着補正部２９により吸気管の壁面付着を考慮した補正が各気筒毎になされた後、エンジン１の図示しない燃料噴射装置に与えられる。そして、その付着補正がなされた出力燃料噴射量#nＴoutに従って、エンジン１の各気筒への燃料噴射が行われるようになっている。
【０２２７】
尚、上記付着補正については、本願出願人が例えば特開平８−２１２７３号公報に詳細に開示しているので、ここではさらなる説明を省略する。
【０２２８】
前記大局的フィードバック制御部２１、特に前記適応制御器２４をさらに説明する。
【０２２９】
大局的フィードバック制御部２１は、前述のようにＬＡＦセンサ４の出力KACT（触媒上流空燃比の検出値）を実使用目標空燃比RKCMDに収束させるようにフィードバック制御を行うものであるが、このとき、このようなフィードバック制御を周知のＰＩＤ制御だけで行うようにすると、エンジン１の運転状態の変化や経年的特性変化等、動的な挙動変化に対して、安定した制御性を確保することが困難である。
【０２３０】
前記適応制御器２４は、上記のようなエンジン１の動的な挙動変化を補償したフィードバック制御を可能とする漸化式形式の制御手段であり、Ｉ．Ｄ．ランダウ等により提唱されているパラメータ調整則を用いて、図１１に示すように、複数の適応パラメータを設定するパラメータ調整部３０と、設定された適応パラメータを用いて前記フィードバック操作量KSTRを算出する操作量算出部３１とにより構成されている。
【０２３１】
ここで、パラメータ調整部３０について説明すると、ランダウ等の調整則では、離散系の制御対象の伝達関数Ｂ（Ｚ-1）／Ａ（Ｚ-1）の分母分子の多項式を一般的に下記の式（２８），（２９）のようにおいたとき、パラメータ調整部３０が設定する適応パラメータθハット(j)（ｊは制御サイクルの番数を示す）は、式（３０）のようにベクトル（転置ベクトル）で表される。また、パラメータ調整部３０への入力ζ(j)は、式（３１）のように表される。この場合、本実施形態では、大局的フィードバック制御部２１の制御対象であるエンジン１が一次系で３制御サイクル分の無駄時間ｄp（エンジン１の燃焼サイクルの３サイクル分の時間）を持つプラントと考え、式（２８）〜式（３１）でｍ＝ｎ＝１，ｄp＝３とし、設定する適応パラメータはｓ0，ｒ1，ｒ2，ｒ3，ｂ0の５個とした（図１１参照）。尚、式（３１）の上段式及び中段式におけるｕs，ｙsは、それぞれ、制御対象への入力（操作量）及び制御対象の出力（制御量）を一般的に表したものであるが、本実施形態では、上記入力をフィードバック操作量KSTR、制御対象（エンジン１）の出力を前記ＬＡＦセンサ４の出力KACT（触媒上流空燃比の検出値）とし、パラメータ調整部３９への入力ζ(j)を、式（３１）の下段式により表す（図１１参照）。
【０２３２】
【数２８】
0003773859.tif 000029
【０２３３】
【数２９】
0003773859.tif 000030
【０２３４】
【数３０】
0003773859.tif 000031
【０２３５】
【数３１】
0003773859.tif 000032
【０２３６】
ここで、前記式（３０）に示される適応パラメータθハットは、適応制御器２４のゲインを決定するスカラ量要素ｂ0ハット-1（ｊ）、操作量を用いて表現される制御要素ＢRハット（Ｚ-1，ｊ）、及び制御量を用いて表現される制御要素Ｓ（Ｚ-1，ｊ）からなり、それぞれ、次式（３２）〜（３４）により表現される（図１１の操作量算出部３１のブロック図を参照）。
【０２３７】
【数３２】
0003773859.tif 000033
【０２３８】
【数３３】
0003773859.tif 000034
【０２３９】
【数３４】
0003773859.tif 000035
【０２４０】
パラメータ調整部３０は、これらのスカラ量要素や制御要素の各係数を設定して、それを式（３０）に示す適応パラメータθハットとして操作量算出部３１に与えるもので、現在から過去に渡るフィードバック操作量KSTRの時系列データとＬＡＦセンサ４の出力KACTとを用いて、該出力KACTが前記実使用目標空燃比KCMDに一致するように、適応パラメータθハットを算出する。
【０２４１】
この場合、具体的には、適応パラメータθハットは、次式（３５）により算出する。
【０２４２】
【数３５】
0003773859.tif 000036
【０２４３】
同式（３５）において、Γ(j)は、適応パラメータθハットの設定速度を決定するゲイン行列（この行列の次数はｍ＋ｎ＋ｄp）、ｅ*(j)は、適応パラメータθハットの推定誤差を示すもので、それぞれ式（３６），（３７）のような漸化式で表される。
【０２４４】
【数３６】
0003773859.tif 000037
【０２４５】
【数３７】
0003773859.tif 000038
【０２４６】
ここで、式（３７）中の「Ｄ（Ｚ-1）」は、収束性を調整するための、漸近安定な多項式であり、本実施形態ではＤ（Ｚ-1）＝１としている。
【０２４７】
尚、式（３６）のλ1(j)，λ2(j)の選び方により、漸減ゲインアルゴリズム、可変ゲインアルゴリズム、固定トレースアルゴリズム、固定ゲインアルゴリズム等の種々の具体的なアルゴリズムが得られる。エンジン１の燃料噴射あるいは空燃比等の時変プラントでは、漸減ゲインアルゴリズム、可変ゲインアルゴリズム、固定ゲインアルゴリズム、および固定トレースアルゴリズムのいずれもが適している。
【０２４８】
前述のようにパラメータ調整部３０により設定される適応パラメータθハット（ｓ0，ｒ1，ｒ2，ｒ3，ｂ0）と、前記目標空燃比選択設定部１６により決定される実使用目標空燃比RKCMDとを用いて、操作量算出部３１は、次式（３８）の漸化式により、フィードバック操作量KSTRを求める。図１１の操作量算出部３１は、同式（３８）の演算をブロック図で表したものである。
【０２４９】
【数３８】
0003773859.tif 000039
【０２５０】
尚、式（３８）により求められるフィードバック操作量KSTRは、ＬＡＦセンサ４の出力KACTが実使用目標空燃比RKCMDに一致する状態において、「実使用目標空燃比RKCMD」となる。このために、前述の如く、フィードバック操作量K STRを除算処理部２５によって実使用目標空燃比RKCMDで除算することで、前記フィードバック補正係数KFBとして使用できるフィードバック操作量kstrを求めるようにしている。
【０２５１】
このように構築された適応制御器２４は、前述したことから明らかなように、制御対象であるエンジン１の動的な挙動変化を考慮した漸化式形式の制御器であり、換言すれば、エンジン１の動的な挙動変化を補償するために、漸化式形式で記述された制御器である。そして、より詳しくは、漸化式形式の適応パラメータ調整機構を備えた制御器と定義することができる。
【０２５２】
尚、この種の漸化式形式の制御器は、所謂、最適レギュレータを用いて構築する場合もあるが、この場合には、一般にはパラメータ調整機構は備えられておらず、エンジン１の動的な挙動変化を補償する上では、前述のように構成された適応制御器３１が好適である。
【０２５３】
以上が、本実施形態で採用した適応制御器２４の詳細である。
【０２５４】
尚、適応制御器２４と共に、大局的フィードバック制御部２１に具備したＰＩＤ制御器２３は、一般のＰＩＤ制御と同様に、ＬＡＦセンサ４の出力KACTと、実使用目標空燃比RKCMDとの偏差から、比例項（Ｐ項）、積分項（Ｉ項）及び微分項（Ｄ項）を算出し、それらの各項の総和をフィードバック操作量KLAFとして算出する。この場合、本実施形態では、積分項（Ｉ項）の初期値を「１」とすることで、ＬＡＦセンサ４の出力KACTが実使用目標空燃比RKCMDに一致する状態において、フィードバック操作量KLAFが“１”になるようにし、該フィードバック操作量KLAFをそのまま燃料噴射量を補正するための前記フィードバック補正係数KFBとして使用することができるようしている。また、比例項、積分項及び微分項のゲインは、エンジン１の回転数NEと吸気圧PBとから、あらかじめ定められたマップを用いて決定される。
【０２５５】
また、大局的フィードバック制御部２１の前記切換部２６は、エンジン１の冷却水温の低温時や、高速回転運転時、吸気圧の低圧時等、エンジン１の燃焼が不安定なものとなりやすい場合、空燃比のフィードバック制御の開始直後等、これに応じたＬＡＦセンサ４の出力KACTが、そのＬＡＦセンサ４の応答遅れ等によって、信頼性に欠ける場合には、ＰＩＤ制御器２３により求められるフィードバック操作量KLAFを燃料噴射量を補正するためのフィードバック補正係数KFBとして出力する。そして、上記のような場合以外の状態で、適応制御器２４により求められるフィードバック操作量KSTRを実使用目標空燃比RKCMDで除算してなるフィードバック操作量kstrを燃料噴射量を補正するためのフィードバック補正係数KFBとして出力する。これは、適応制御器２４が、高ゲイン制御で、ＬＡＦセンサ４の出力KACTを急速に実使用目標空燃比RKCMDに収束させるように機能するため、上記のようにエンジン１の燃焼が不安定となったり、ＬＡＦセンサ４の出力KACTの信頼性に欠ける等の場合に、適応制御器２４のフィードバック操作量KSTRを用いると、かえって空燃比の制御が不安定なものとなる虞れがあるからである。
【０２５６】
このような切換部２６の作動は、例えば特開平８−１０５３４５号公報に本願出願人が詳細に開示しているので、ここでは、さらなる説明を省略する。
【０２５７】
次に本実施形態の装置の作動の詳細を説明する。
【０２５８】
まず、図１２のフローチャートを参照して、前記制御ユニット６の機関制御手段８によるエンジン１の空燃比の制御のためのエンジン１の各気筒毎の出力燃料噴射量#nＴout（ｎ＝1，2，3，4）の算出処理について説明する。機関制御手段８は、各気筒毎の出力燃料噴射量#nＴoutの算出処理をエンジン１のクランク角周期（ＴＤＣ）と同期した制御サイクルで次のように行う。
【０２５９】
機関制御手段８は、まず、前記ＬＡＦセンサ４及びＯ2センサ５を含む各種センサの出力を読み込む（ＳＴＥＰａ）。この場合、ＬＡＦセンサ４の出力KACT及びＯ2センサ５の出力VO2/OUTはそれぞれ過去に得られたものを含めて時系列的に図示しないメモリに記憶保持される。
【０２６０】
次いで、基本燃料噴射量算出部１７によって、前述の如くエンジン１の回転数NE及び吸気圧PBに対応する燃料噴射量をスロットル弁の有効開口面積に応じて補正してなる基本燃料噴射量Ｔimが求められる（ＳＴＥＰｂ）。さらに、第１補正係数算出部１８によって、エンジン１の冷却水温やキャニスタのパージ量等に応じた第１補正係数KTOTALが算出される（ＳＴＥＰｃ）。
【０２６１】
次いで、機関制御手段８は、エンジン１の運転モードが前記操作量生成手段７が生成する目標空燃比KCMDを使用して燃料噴射量の調整を行うストイキ運転モードであるか否かの判別処理を行って、該運転モードがストイキ運転モードであるか否かをそれぞれ値「１」，「０」で表すフラグf/prism/onの値を設定する（ＳＴＥＰｄ）。
【０２６２】
上記の判別処理では、図１３に示すように、Ｏ2センサ５及びＬＡＦセンサ４が活性化しているか否かの判別が行われる（ＳＴＥＰｄ−１，ｄ−２）。このとき、いずれかが活性化していない場合には、操作量生成手段７の処理に使用するＯ2センサ５やＬＡＦセンサ４の検出データを精度よく得ることができない。従って、エンジン１の運転モードはストイキ運転モードではなく、フラグf/prism/onの値を「０」にセットする（ＳＴＥＰｄ−１０）。
【０２６３】
また、エンジン１のリーン運転中（希薄燃焼運転中）であるか否か（ＳＴＥＰｄ−３）、エンジン１の始動直後の触媒装置３の早期活性化を図るためにエンジン１の点火時期が遅角側に制御されているか否か（ＳＴＥＰｄ−４）、エンジン１のスロットル弁が略全開であるか否か（ＳＴＥＰｄ−５）、及びエンジン１への燃料供給の停止中（フュエルカット中）であるか否か（ＳＴＥＰｄ−６）の判別が行われる。これらのいずれかの条件が成立している場合には、エンジン１の運転モードはストイキ運転モードではなく、フラグf/prism/onの値を「０」にセットする（ＳＴＥＰｄ−１０）。
【０２６４】
さらに、エンジン１の回転数NE及び吸気圧PBがそれぞれ所定範囲内（正常な範囲内）にあるか否かの判別が行われる（ＳＴＥＰｄ−７，ｄ−８）。このとき、いずれかが所定範囲内にない場合には、エンジン１の運転モードはストイキ運転モードではなく、フラグf/prism/onの値を「０」にセットする（ＳＴＥＰｄ−１０）。
【０２６５】
そして、ＳＴＥＰｄ−１，ｄ−２，ｄ−７，ｄ−８の条件が満たされ、且つ、ＳＴＥＰｄ−３，ｄ−４，ｄ−５，ｄ−６の条件が成立していない場合に、エンジン１の運転モードがストイキ運転モードであるとして、フラグf/prism/onの値を「１」にセットする（ＳＴＥＰｄ−９）。
【０２６６】
図１２の説明に戻って、上記のようにフラグf/prism/onの値を設定した後、機関制御手段８は、目標空燃比選択設定部１６によりフラグf/prism/onの値を判断し（ＳＴＥＰｅ）、このフラグf/prism/onの値に応じて前記実使用目標空燃比RKCMDを設定する。すなわち、機関制御手段８の目標空燃比選択設定部１６は、f/prism/on＝１である場合（エンジン１の運転モードがストイキ運転モードである場合）には、操作量生成手段７で生成された最新の目標空燃比KCMDを読み込み、それを実使用目標空燃比RKCMDとして設定する（ＳＴＥＰｆ）。また、エンジン１の運転モードがリーン運転モードである場合等、f/prism/on＝０である場合には、実使用目標空燃比RKCMDを所定値に設定する（ＳＴＥＰｇ）。この場合、実使用目標空燃比RKCMDとして設定する所定値は、例えばエンジン１の回転数NEや吸気圧PBからあらかじめ定めたマップ等を用いて決定する。
【０２６７】
次いで、機関制御手段８は、前記局所的フィードバック制御部２２において、前述の如くオブザーバ２７によりＬＡＦセンサ４の出力KACTから推定した各気筒毎の実空燃比#nA/F（ｎ＝1，2，3，4）に基づき、ＰＩＤ制御器２８により、各気筒毎のばらつきを解消するようにフィードバック補正係数#nKLAFを算出する（ＳＴＥＰｈ）。さらに、大局的フィードバック制御部２１により、フィードバック補正係数KFBを算出する（ＳＴＥＰｉ）。
【０２６８】
この場合、大局的フィードバック制御部２１は、前述の如く、ＰＩＤ制御器２３により求められるフィードバック操作量KLAFと、適応制御器２４により求められるフィードバック操作量KSTRを目標空燃比KCMDで除算してなるフィードバック操作量kstrとから、切換部２６によってエンジン１の運転状態等に応じていずれか一方のフィードバック操作量KLAF又はkstrを選択する（通常的には適応制御器２４側のフィードバック操作量kstrを選択する）。そして、選択したフィードバック操作量KLAF又はkstrを燃料噴射量を補正するためのフィードバック補正量数KFBとして出力する。
【０２６９】
尚、フィードバック補正係数KFBを、ＰＩＤ制御器２３側のフィードバック操作量KLAFから適応制御器２４側のフィードバック操作量kstrに切り換える際には、該補正係数KFBの急変を回避するために、適応制御器２４は、その切換えの際の制御サイクルに限り、補正係数KFBを前回の補正係数KFB（＝KLAF）に保持するように、フィードバック操作量KSTRを求める。同様に、補正係数KFBを、適応制御器２４側のフィードバック操作量kstrからＰＩＤ制御器２３側のフィードバック操作量KLAFに切り換える際には、ＰＩＤ制御器２３は、自身が前回の制御サイクルで求めたフィードバック操作量KLAFが、前回の補正係数KFB（＝kstr）であったものとして、今回の補正係数KLAFを算出する。
【０２７０】
上記のようにしてフィードバック補正係数KFBが算出された後、さらに、前記ＳＴＥＰｆあるいはＳＴＥＰｇで決定された実使用目標空燃比RKCMDに応じた第２補正係数KCMDMが第２補正係数算出部１９により算出される（ＳＴＥＰｊ）。
【０２７１】
次いで、機関制御手段８は、前述のように求められた基本燃料噴射量Ｔimに、第１補正係数KTOTAL、第２補正係数KCMDM、フィードバック補正係数KFB、及び各気筒毎のフィードバック補正係数#nKLAFを乗算することで、各気筒毎の出力燃料噴射量#nＴoutを求める（ＳＴＥＰｋ）。そして、この各気筒毎の出力燃料噴射量#nＴoutが、付着補正部２９によって、エンジン１の吸気管における燃料の壁面付着を考慮した補正を施された後（ＳＴＥＰｍ）、エンジン１の図示しない燃料噴射装置に出力される（ＳＴＥＰｎ）。
【０２７２】
そして、エンジン１にあっては、各気筒毎の出力燃料噴射量#nＴoutに従って、各気筒への燃料噴射が行われる。
【０２７３】
以上のような各気筒毎の出力燃料噴射量#nＴoutの算出及びそれに応じたエンジン１への燃料噴射がエンジン１のクランク角周期に同期したサイクルタイムで逐次行われ、これによりＬＡＦセンサ４の出力KACT（空燃比の検出値）が、目標空燃比KCMDに収束するように、エンジン１の空燃比が制御される。この場合、特に、フィードバック補正係数KFBとして、適応制御器２４側のフィードバック操作量kstrを使用している状態では、エンジン１の運転状態の変化や特性変化等の挙動変化に対して、高い安定性を有して、ＬＡＦセンサ４の出力KACTが迅速に目標空燃比KCMDに収束制御される。また、エンジン１が有する応答遅れの影響も適正に補償される。
【０２７４】
一方、前述のようなエンジン１の燃料供給の制御と並行して、制御ユニット６の操作量生成手段７は、一定周期の制御サイクルで図１４のフローチャートに示すメインルーチン処理を実行する。
【０２７５】
すなわち、図１４を参照して、操作量生成手段７は、まず、自身の演算処理（目標空燃比KCMDを生成する処理）を実行するか否かの判別処理を行って、その実行の可否を規定するフラグf/prism/calの値を設定する（ＳＴＥＰ１）。尚、フラグf/prism/calの値は、それが「０」のとき、操作量生成手段７の演算処理を行わないことを意味し、「１」のとき、操作量生成手段７の演算処理を行うことを意味する。
【０２７６】
上記の判別処理は、図１５のフローチャートに示すように行われる。
【０２７７】
すなわち、Ｏ2センサ５及びＬＡＦセンサ４が活性化しているか否かの判別が行われる（ＳＴＥＰ１−１，１−２）。このとき、いずれかが活性化していない場合には、操作量生成手段７の処理に使用するＯ2センサ５及びＬＡＦセンサ４の検出データを精度よく得ることができないため、フラグf/prism/calの値を「０」にセットする（ＳＴＥＰ１−６）。さらにこのとき、前記同定器１１の後述する初期化を行うために、その初期化を行うか否かを規定するフラグf/id/resetの値を「１」にセットする（ＳＴＥＰ１−７）。ここで、フラグf/id/resetの値は、それが「１」であるとき、同定器１１の初期化を行うことを意味し、「０」であるとき、初期化を行わないことを意味する。
【０２７８】
また、エンジン１のリーン運転中であるか否か（ＳＴＥＰ１−３）、及びエンジン１の始動直後の触媒装置３の早期活性化を図るためにエンジン１の点火時期が遅角側に制御されているか否か（ＳＴＥＰ１−４）の判別が行われる。これらのいずれかの条件が成立している場合には、Ｏ2センサ５の出力VO2/OUTを目標値VO2/TARGETに収束させる制御は行わないので、フラグf/prism/calの値を「０」にセットする（ＳＴＥＰ１−６）。さらにこのとき、同定器１１の初期化を行うために、フラグf/id/resetの値を「１」にセットする（ＳＴＥＰ１−７）。
【０２７９】
そして、操作量生成手段７は、ＳＴＥＰ１−１，１−２の条件が満たされ、且つ、ＳＴＥＰ１−３，１−４の条件が成立しない場合にのみ、フラグf/prism/calの値を「１」にセットする。
【０２８０】
図１４の説明に戻って、上記のような判別処理を行った後、操作量生成手段７は、さらに、同定器１１による前記ゲイン係数a1，a 2，b1の同定（更新）処理を実行するか否かの判別処理を行って、その実行の可否を規定するフラグf/id/calの値を設定する（ＳＴＥＰ２）。尚、フラグf/id/calの値は、それが「０」のとき、同定器１１による前記ゲイン係数a1，a2，b1の同定（更新）処理を行わないことを意味し、「１」のとき、同定（更新）処理を行うことを意味する。
【０２８１】
このＳＴＥＰ２の判別処理では、エンジン１のスロットル弁が略全開であるか否か、及びエンジン１への燃料供給の停止中（フュエルカット中）であるか否かの判別が行われる。これらのいずれかの条件が成立している場合には、前記ゲイン係数a1，a2，b1を適正に同定することが困難であるため、フラグf/id/calの値を「０」にセットする。そして、上記のいずれの条件も成立していない場合には、同定器１１による前記ゲイン係数a1，a2，b1の同定（更新）処理を実行すべくフラグf/id/calの値を「１」にセットする。
【０２８２】
次いで、操作量生成手段７は、前記減算処理部９，１０によりそれぞれ最新の前記偏差出力kact(k)（＝KACT(k)−FLAF/BASE）及びVO2(k)（＝VO2/OUT(k)−VO2/TARGET）を算出する（ＳＴＥＰ３）。この場合、減算処理部９，１０は、前記図１２のＳＴＥＰａにおいて取り込まれて図示しないメモリに記憶されたＬＡＦセンサ４の出力KACT及びＯ2センサ５の出力VO2/OUTの時系列データの中から、最新のものを選択して前記偏差出力kact(k)及びVO2(k)を算出する。そしてこの偏差出力kact(k)及びVO2(k)は、過去に算出したものを含めて時系列的に図示しないメモリに記憶保持される。
【０２８３】
次いで、操作量生成手段７は、前記ＳＴＥＰ１で設定されたフラグf/prism/calの値を判断する（ＳＴＥＰ４）。このとき、f/prism/cal＝０である場合、すなわち、自身の演算処理を行わない場合には、スライディングモード制御器１５で求めるべき前記ＳＬＤ操作入力Usl（＝目標偏差空燃比kcmd）を強制的に所定値に設定する（ＳＴＥＰ１２）。この場合、該所定値は、例えばあらかじめ定めた固定値（例えば「０」）あるいは前回の制御サイクルで決定したＳＬＤ操作入力Uslの値である。
【０２８４】
尚、このようにＳＬＤ操作入力Uslを所定値とした場合において、操作量生成手段７は、その所定値のＳＬＤ操作入力Uslに前記空燃比基準値FLAF/BASEを加算することで、今回の制御サイクルにおける目標空燃比KCMDを決定し（ＳＴＥＰ１３）、今回の制御サイクルの処理を終了する。
【０２８５】
一方、ＳＴＥＰ４の判断で、f/prism/cal＝１である場合、すなわち、操作量生成手段７の演算処理を行う場合には、操作量生成手段７は、まず、前記同定器１１による演算処理を行う（ＳＴＥＰ５）。
【０２８６】
この同定器１１による演算処理は図１６のフローチャートに示すように行われる。
【０２８７】
すなわち、同定器１１は、まず、前記ＳＴＥＰ２で設定されたフラグf/id/calの値を判断する（ＳＴＥＰ５−１）。このときf/id/cal＝０であれば、同定器１１によるゲイン係数a1，a2，b1の同定処理を行わないので、直ちに図１４のメインルーチンに復帰する。
【０２８８】
一方、f/id/cal＝１であれば、同定器１１は、さらに該同定器１１の初期化に係わる前記フラグf/id/resetの値（これは、前記ＳＴＥＰ１でその値が設定される）を判断し（ＳＴＥＰ５−２）、f/id/reset＝１である場合には、同定器１１の初期化を行う（ＳＴＥＰ５−３）。この初期化では、前記同定ゲイン係数a1ハット，a 2ハット，b1ハットの各値があらかじめ定めた初期値に設定され（式（３）中の同定ゲイン係数ベクトルΘの初期化）、また、前記式（６）で用いる行列Ｐ（対角行列）の各成分があらかじめ定めた初期値に設定される。さらに、フラグf/id/resetの値は「０」にリセットされる。
【０２８９】
次いで、同定器１１は、現在の同定ゲイン係数a1(k-1)ハット，a2(k-1)ハット，b1(k-1)ハットの値と、前記ＳＴＥＰ３で制御サイクル毎に算出される偏差出力VO2及びkactの過去値のデータVO2(k-1)，VO2(k-2)，kact(k-d-1)とを用いて、前記式（３）により前記同定偏差出力VO2(k)ハットを算出する（ＳＴＥＰ５−４）。
【０２９０】
さらに同定器１１は、新たな同定ゲイン係数a1ハット，a2ハット，b1ハットを決定する際に使用する前記ベクトルＫθ(k)を式（６）により算出した後（ＳＴＥＰ５−５）、前記同定誤差id/e(k)（前記同定偏差出力VO2ハットと、実際の偏差出力VO2との偏差。式（４）参照）を算出する（ＳＴＥＰ５−６）。
【０２９１】
ここで、前記同定誤差id/e(k)は、基本的には、前記式（４）に従って算出すればよいのであるが、本実施形態では、前記図１４のＳＴＥＰ３で制御サイクル毎に算出する偏差出力VO2と、前記ＳＴＥＰ５−４で制御サイクル毎に算出する同定偏差出力VO2ハットとから式（４）の演算により得られた値（＝VO2(k)−VO2(k)ハット）に、さらにローパス特性のフィルタリングを施すことで同定誤差id/e(k)を求める。
【０２９２】
これは、触媒装置３を含む排気系Ｅの挙動は一般にローパス特性を有するため、前記排気系モデルのゲイン係数a1，a2，b1を適正に同定する上では、排気系Ｅの低周波数側の挙動を重視することが好ましいからである。
【０２９３】
尚、このようなフィルタリングは、結果的に、偏差出力VO2及び同定偏差出力VO2ハットの両者に同じローパス特性のフィルタリングが施されていればよく、例えば偏差出力VO2及び同定偏差出力VO2ハットにそれぞれ各別にフィルタリングを施した後に式（４）の演算を行って同定誤差id/e(k)を求めるようにしてもよい。また、前記のフィルタリングは、例えばディジタルフィルタの一手法である移動平均処理によって行われる。
【０２９４】
次いで、同定器１１は、ＳＴＥＰ５−６で求めた同定誤差id/e(k)と、前記ＳＴＥＰ５−５で算出したＫθ( k)とを用いて前記式（５）により新たな同定ゲイン係数ベクトルΘ(k)、すなわち、新たな同定ゲイン係数a1(k)ハット，a2(k)ハット，b1(k)ハットを算出する（ＳＴＥＰ５−７）。
【０２９５】
このようにして新たな同定ゲイン係数a1(k)ハット，a2(k)ハット，b1(k)ハットを算出した後、同定器１１は、該同定ゲイン係数a1ハット，a2ハット，b1ハット（同定ゲイン係数ベクトルΘの要素）の値を、所定の条件を満たすように制限する処理を行う（ＳＴＥＰ５−８）。そして、同定器１１は次回の制御サイクルの処理のために前記行列Ｐ(k)を前記式（７）により更新した後（ＳＴＥＰ５−９）、図１４のメインルーチンの処理に復帰する。
【０２９６】
この場合、上記ＳＴＥＰ５−８において同定ゲイン係数a1ハット，a2ハット，b1ハットの値を制限する処理は、同定ゲイン係数a1ハット，a2ハットの値の組み合わせを所定の組み合わせに制限する処理（同定ゲイン係数a1ハット，a2ハットを成分とする座標平面上の所定の領域内に点（a1ハット，a2ハット）を制限する処理）と、同定ゲイン係数b1ハットの値を所定の範囲内に制限する処理とからなる。前者の処理では、ＳＴＥＰ５−７で算出した同定ゲイン係数a1(k)ハット，a2(k)ハットにより定まる上記座標平面上の点（a1(k)ハット，a2(k)ハット）が該座標平面上にあらかじめ定めた所定の領域から逸脱している場合に同定ゲイン係数a1(k)ハット，a2(k)ハットの値を強制的に上記所定の領域内の点の値に制限する。また、後者の処理では、前記ＳＴＥＰ５−７で算出した同定ゲイン係数b1(k)ハットの値が所定の範囲の上限値あるいは下限値を超えている場合に、該同定ゲイン係数b1(k)ハットの値を強制的にその上限値あるいは下限値に制限する。
【０２９７】
このような同定ゲイン係数a1ハット，a2ハット，b1ハットの制限処理は、スライディングモード制御器１５が算出するＳＬＤ操作入力Usl（目標偏差空燃比kcmd）、ひいては目標空燃比KCMDの安定性を確保するためのものである。
【０２９８】
尚、このような同定ゲイン係数a1ハット，a2ハット，b1ハットの制限処理のより具体的な手法については、本願出願人が例えば特開平１１−１５３０５１号公報にて詳細に説明しているので、ここでは詳細な説明を省略する。
【０２９９】
また、図１６のＳＴＥＰ５−７で新たな同定ゲイン係数a1(k)ハット，a 2(k)ハット，b1(k)ハットを求めるために使用する同定ゲイン係数の前回値a1(k-1)ハット，a2(k-1)ハット，b1(k-1)ハットは、前回の制御サイクルにおけるＳＴＥＰ５−８の制限処理を行った後の同定ゲイン係数の値である。
【０３００】
以上が図１４のＳＴＥＰ５における同定器１１の演算処理の詳細である。
【０３０１】
図１４の説明に戻って、上記のように同定器１１の演算処理を行った後、操作量生成手段７は、ゲイン係数a1，a2，b1の値を決定する（ＳＴＥＰ６）。この処理では、前記ＳＴＥＰ２で設定されたフラグf/id/calの値が「１」である場合、すなわち、同定器１１によるゲイン係数a1，a2，b1の同定処理を行った場合には、ゲイン係数a1，a2，b1の値として、それぞれ前記ＳＴＥＰ５で前述の通り同定器１１により求められた最新の同定ゲイン係数a1(k)ハット，a2(k)ハット，b1(k)ハットを設定する。また、f/id/cal＝０である場合、すなわち、同定器１１によるゲイン係数a1，a2，b1の同定処理を行わなかった場合には、ゲイン係数a1，a2，b1の値をそれぞれあらかじめ定めた所定値（例えば前回の制御サイクルで決定された値等）とする。
【０３０２】
次いで、操作量生成手段７は、前記第１及び第２推定器１２，１３、並びに合成器１４による演算処理（前記合成推定偏差出力VO2バーを算出する処理）を行う（ＳＴＥＰ７）。この処理は、図１７のフローチャートに示すように行われる。
【０３０３】
すなわち、操作量生成手段７は、まず、Ｏ2センサ５の偏差出力VO2の今回値VO2(k)及び前回値VO2(k-1)を用いて前記式（１２）のファジー用線形関数σの値σ(k)を算出する（ＳＴＥＰ７−１）。
【０３０４】
さらに操作量生成手段７は、この算出したファジー用線形関数σの値σ(k)と、偏差出力VO2の今回値VO2(k)とを用いて前記式（２７）の楕円関数の値OVAL(k)を算出する（ＳＴＥＰ７−２）。
【０３０５】
次いで、操作量生成手段７は、前記第１推定器１２により、Ｏ2センサ５の推定偏差出力VO2L(k+d)バーを算出する（ＳＴＥＰ７−３）。このとき、第１推定器１２は、まず、前記ＳＴＥＰ６で決定されたゲイン係数a1，a2，b1（これらの値は基本的には、前記同定ゲイン係数a1ハット，a2ハット，b1ハットである）を用いて、前記式（９）で使用する係数値α1，α2，βj（ｊ＝1，…，ｄ）を、同式（９）の但し書きの定義に従って算出する。
【０３０６】
次いで、第１推定器１２は、Ｏ2センサ５の偏差出力VO2の現在の制御サイクル以前の時系列データVO2(k)，VO2(k-1)、並びにＬＡＦセンサ４の偏差出力kactの現在の制御サイクル以前の時系列データkact(k-j)（ｊ＝０，…，d1）と、スライディングモード制御器１５から制御サイクル毎に与えられる前記目標偏差空燃比kcmd（＝ＳＬＤ操作入力Usl）の前回の制御サイクル以前の時系列データkcmd(k-j)（＝Usl(k-j)。ｊ＝１，…，d2−１）と、上記の如く算出した係数値α1，α2，βjとを用いて前記式（９）により、今回の制御サイクルの時点から前記合計無駄時間ｄ後の偏差出力VO2の推定値としての推定偏差出力VO2L(k+d)バー前記を算出する。
【０３０７】
このように第１推定器１２の演算処理を行った後、さらに、操作量生成手段７は、前記第２推定器１３により、Ｏ2センサ５の推定偏差出力VO2F(k+d)を算出する（ＳＴＥＰ７−４）。このとき、第２推定器１３は、Ｏ2センサ５の偏差出力VO2の今回値VO2(k)と、前記ＳＴＥＰ７−１で算出したファジー用線形関数σの今回値σ(k)とを用いて、前述の如く、各ファジールールに前件部に係わる適合度Ｗpre(i)（ｉ＝１，２，…，９）を求め、さらに、前記式（２５）により、今回の制御サイクルの時点から前記合計無駄時間ｄ後の偏差出力VO2の推定値としての推定偏差出力VO2F(k+d)バー前記を算出する。
【０３０８】
次いで、操作量生成手段７は、前記ＳＴＥＰ７−２で求めた楕円関数の値OVAL(k)から前記図９のデータテーブルにより前記重み係数Cwを求めた後（ＳＴＥＰ７−５）、この重み係数Cwを用いた前記式（２６）により、第１及び第２推定器１２，１３がそれぞれＳＴＥＰ７−３，７−４で求めた推定偏差出力VO2L(k+d)バー，VO2F(k+d)バーを合成してなる合成推定偏差出力VO2(k+d)バーを算出する（ＳＴＥＰ７−６）。
【０３０９】
そして、操作量生成手段７は、この合成推定偏差出力VO2(k+d)バーの値にリミット処理（ＳＴＥＰ７−７）を施した後、図１４のメインルーチンの処理に復帰する。ここで、ＳＴＥＰ７−７のリミット処理は、合成推定偏差出力VO2(k+d)バーの値があらかじめ定めた上限値を超え、あるいは下限値を下回っていた場合に、該合成推定偏差出力VO2(k+d)バーの値を強制的にそれぞれ該上限値、下限値に制限する処理である。
【０３１０】
以上説明したＳＴＥＰ７の処理により、制御サイクル毎に、前記合計無駄時間ｄ後の偏差出力VO2の推定値としての合成推定偏差出力VO2(k)バーが算出される。
【０３１１】
図１４の説明に戻って、操作量生成手段７は、次に、スライディングモード制御器１５によって、前記ＳＬＤ操作入力Usl（＝目標偏差空燃比kcmd）を算出する（ＳＴＥＰ８）。
【０３１２】
すなわち、スライディングモード制御器１５は、まず、前記ＳＴＥＰ７で合成器１４により求められた合成推定偏差出力VO2バーの今回値及び前回値の時系列データVO2(k+d)バー，VO2(k+d-1)バーを用いて、前記式（２１）により定義された切換関数σバーの前記合計無駄時間ｄ後の値σ(k+d)バー（これは、式（１２）で定義された線形関数σの合計無駄時間ｄ後の推定値に相当する）を算出する。
【０３１３】
さらに、スライディングモード制御器１５は、上記切換関数σバーの値σ(k+d)バーに、操作量生成手段７の制御サイクルの周期ΔＴ（一定周期）を乗算したものσ(k+d)バー・ΔＴを累積的に加算していく、すなわち、前回の制御サイクルで求められた加算結果に今回の制御サイクルで算出されたσ(k+d)バーと周期ΔＴとの積σ(k+d)バー・ΔＴを加算することで、前記式（２３）のΣ（σバー・ΔＴ）の項の演算結果であるσバーの積算値（以下、この積算値をΣσバーにより表す）を算出する。
【０３１４】
次いで、スライディングモード制御器１５は、前記ＳＴＥＰ７で合成器１４により求められた合成推定偏差出力VO2バーの今回値VO2(k+d)バー及び前回値VO2(k+d-1)バーと、上記の如く求めた切換関数σバーの値σ(k+d)バー及びその積算値Σσバーと、ＳＴＥＰ６で決定したゲイン係数a1，a2，b1（これらの値は基本的には、最新の同定ゲイン係数a1(k)ハット，a2(k)ハット，b1(k)ハットである）とを用いて、前記式（２０），（２２），（２３）に従って、それぞれ等価制御入力Ueq、到達則入力Urch及び適応則入力Uadpを算出する。
【０３１５】
そして、スライディングモード制御器１５は、この等価制御入力Ueq、到達則入力Urch及び適応則入力Uadpを加算することで、前記ＳＬＤ操作入力Usl、すなわち、Ｏ2センサ５の出力VO2/OUTを目標値VO2/TARGETに収束させるために必要な排気系Ｅへの入力量（＝目標偏差空燃比kcmd）を算出する。
【０３１６】
上記のようにＳＬＤ操作入力Uslを算出した後、スライディングモード制御器１５は、適応スライディングモード制御の安定性（より詳しくは、適応スライディングモード制御に基づくＯ2センサ５の出力VO2/OUTの制御状態（以下、ＳＬＤ制御状態という）の安定性）を判別する処理を行って、該ＳＬＤ制御状態が安定であるか否かをそれぞれ値「１」、「０」で表すフラグf/sld/stbの値を設定する（ＳＴＥＰ９）。
【０３１７】
この安定性の判別処理は図１８のフローチャートに示すように行われる。
【０３１８】
すなわち、スライディングモード制御器１５は、まず、前記ＳＴＥＰ８で算出した切換関数σバーの今回値σ(k+d)バーと前回値σ(k+d-1)バーとの偏差Δσバー（これは切換関数σバーの変化速度に相当する）を算出する（ＳＴＥＰ９−１）。
【０３１９】
次いで、スライディングモード制御器１５は、上記偏差Δσバーと切換関数σバーの今回値σ(k+d)バーとの積Δσバー・σ(k+d)バー（これはσバーに関するリアプノフ関数σバー2／２の時間微分関数に相当する）があらかじめ定めた所定値ε（≧０）以下であるか否かを判断する（ＳＴＥＰ９−２）。
【０３２０】
ここで、上記積Δσバー・σ(k+d)バー（以下、これを安定判別パラメータＰstbという）について説明すると、この安定判別パラメータＰstbの値がＰstb＞０となる状態は、基本的には、切換関数σバーの値が「０」から離間しつつある状態である。また、安定判別パラメータＰstbの値がＰstb≦０となる状態は、基本的には、切換関数σバーの値が「０」に収束しているか、もしくは収束しつつある状態である。そして、一般に、スライディングモード制御ではその制御量を目標値に安定に収束させるためには、切換関数の値が安定に「０」に収束する必要がある。従って、基本的には、前記安定判別パラメータＰstbの値が「０」以下であるか否かによって、それぞれ前記ＳＬＤ制御状態が安定、不安定であると判断することができる。
【０３２１】
但し、安定判別パラメータＰstbの値を「０」と比較することでＳＬＤ制御状態の安定性を判断すると、切換関数σバーの値に僅かなノイズが含まれただけで、安定性の判別結果に影響を及ぼしてしまう。このため、本実施形態では、前記ＳＴＥＰ９−２で安定判別パラメータＰstbと比較する所定値εは、「０」よりも若干大きな正の値としている。
【０３２２】
そして、ＳＴＥＰ９−２の判断で、Ｐstb＞εである場合には、ＳＬＤ制御状態が不安定であるとし、前記ＳＴＥＰ８で算出したＳＬＤ操作入力Uslを用いた目標空燃比KCMDの決定を所定時間禁止するためにタイマカウンタｔm（カウントダウンタイマ）の値を所定の初期値ＴMにセットする（タイマカウンタｔmの起動。ＳＴＥＰ９−４）。さらに、前記フラグf/sld/stbの値を「０」に設定した後（ＳＴＥＰ９−５）、図１４のメインルーチンの処理に復帰する。
【０３２３】
一方、前記ＳＴＥＰ９−２の判断で、Ｐstb≦εである場合には、スライディングモード制御器１５は、切換関数σバーの今回値σ(k+d)バーがあらかじめ定めた所定範囲内にあるか否かを判断する（ＳＴＥＰ９−３）。
【０３２４】
この場合、切換関数σバーの今回値σ(k+d)バーが、所定範囲内に無い状態は、該今回値σ(k+d)バーが「０」から大きく離間している状態であるので、ＳＬＤ制御状態が不安定であると考えられる。このため、ＳＴＥＰ９−３の判断で、切換関数σバーの今回値σ(k+d)バーが、所定範囲内に無い場合には、ＳＬＤ制御状態が不安定であるとして、前述の場合と同様に、ＳＴＥＰ９−４及び９−５の処理を行って、タイマカウンタｔmを起動すると共に、フラグf/sld/stbの値を「０」に設定する。
【０３２５】
また、ＳＴＥＰ９−３の判断で、切換関数σバーの今回値σ(k+d)バーが、所定範囲内にある場合には、スライディングモード制御器１５は、前記タイマカウンタｔmを所定時間Δｔm分、カウントダウンする（ＳＴＥＰ９−６）。そして、このタイマカウンタｔmの値が「０」以下であるか否か、すなわち、タイマカウンタｔmを起動してから前記初期値ＴM分の所定時間が経過したか否かを判断する（ＳＴＥＰ９−７）。
【０３２６】
このとき、ｔm＞０である場合、すなわち、タイマカウンタｔmが計時動作中でまだタイムアップしていない場合は、ＳＴＥＰ９−２あるいはＳＴＥＰ９−３の判断でＳＬＤ制御状態が不安定であると判断されてから、さほど時間を経過していないので、ＳＬＤ制御状態が不安定なものとなりやすい。このため、ＳＴＥＰ９−７でｔm＞０である場合には、前記ＳＴＥＰ９−５の処理を行って前記フラグf/sld/stbの値を「０」に設定する。
【０３２７】
そして、ＳＴＥＰ９−７の判断でｔm≦０である場合、すなわち、タイマカウンタｔmがタイムアップしている場合には、ＳＬＤ制御状態が安定であるとして、フラグf/sld/stbの値を「１」に設定する（ＳＴＥＰ９−８）。
【０３２８】
以上のような処理によって、ＳＬＤ制御状態の安定性が判断され、不安定であると判断した場合には、フラグf/sld/stbの値が「０」に設定され、安定であると判断した場合には、フラグf/sld/stbの値が「１」に設定される。
【０３２９】
尚、以上説明したＳＬＤ制御状態の安定性の判断の手法は例示的なもので、この他の手法によって安定性の判断を行うようにすることも可能である。例えば制御サイクルよりも長い所定期間毎に、各所定期間内における前記安定判別パラメータＰstbの値が前記所定値εよりも大きくなる頻度を計数する。そして、その頻度があらかじめ定めた所定値を超えるような場合にＳＬＤ制御状態が不安定であると判断し、逆の場合に、ＳＬＤ制御状態が安定であると判断するようにしてもよい。
【０３３０】
図１４の説明に戻って、上記のようにＳＬＤ制御状態の安定性を示すフラグf/sld/stbの値を設定した後、スライディングモード制御器１５は、フラグf/sld/stbの値を判断する（ＳＴＥＰ１０）。このとき、f/sld/stb＝１である場合、すなわち、ＳＬＤ制御状態が安定であると判断された場合には、前記ＳＴＥＰ８で算出したＳＬＤ操作入力Uslのリミット処理を行う（ＳＴＥＰ１１）。このリミット処理では、ＳＴＥＰ８で算出されたＳＬＤ操作入力Uslの今回値Usl(k)が所定の許容範囲内にあるか否かが判断され、該今回値Uslがその許容範囲の上限値又は下限値を超えている場合には、それぞれ、ＳＬＤ操作入力Uslの今回値Usl(k)が強制的に該上限値又は下限値に制限される。
【０３３１】
尚、ＳＴＥＰ１１のリミット処理を経たＳＬＤ操作入力Usl（＝目標偏差空燃比kcmd）は、図示しないメモリに時系列的に記憶保持され、それが、前記第１推定器１２の前述の演算処理のために使用される。
【０３３２】
次いで、スライディングモード制御器１５は、ＳＴＥＰ１１のリミット処理を経たＳＬＤ操作入力Uslに前記空燃比基準値FLAF/BASEを加算することで、前記目標空燃比KCMDを算出し（ＳＴＥＰ１３）、今回の制御サイクルの処理を終了する。
【０３３３】
また、前記ＳＴＥＰ１０の判断でf/sld/stb＝０である場合、すなわち、ＳＬＤ制御状態が不安定であると判断された場合には、スライディングモード制御器１５は、今回の制御サイクルにおけるＳＬＤ操作入力Uslの値を強制的に所定値（固定値あるいはＳＬＤ操作入力Uslの前回値）に設定した後（ＳＴＥＰ１２）、前記式（２４）に従って前記目標空燃比KCMDを算出し（ＳＴＥＰ１３）、今回の制御サイクルの処理終了する。
【０３３４】
尚、ＳＴＥＰ１４で最終的に決定される目標空燃比KCMDは、制御サイクル毎に図示しないメモリに時系列的に記憶保持される。そして、前記大局的フィードバック制御器２１等が、スライディングモード制御器１５で求められた目標空燃比KCMDを用いるに際しては（図１２のＳＴＥＰｆを参照）、上記のように時系列的に記憶保持された目標空燃比KCMDの中から最新のものが選択される。
【０３３５】
以上説明した本実施形態の装置によれば、制御ユニット６のエンジン１のストイキ運転モードでは操作量生成手段７によって、触媒装置３の下流側のＯ2センサ５の出力VO2/OUTを目標値VO2/TARGETに収束（整定）させるように、適応スライディングモード制御の処理を用いてエンジン１の目標空燃比KCMD（触媒上流空燃比の目標値）が逐次決定される。さらに、制御ユニット６の機関制御手段８が、この目標空燃比KCMDにＬＡＦセンサ４の出力KACTを収束させるようにエンジン１の燃料噴射量を調整することによって、触媒上流空燃比が目標空燃比KCMDにフィードバック制御される。これにより、Ｏ2センサ５の出力VO2/OUTが目標値VO2/TARGETに収束制御され、ひいては触媒装置３の経時劣化等によらずに、触媒装置３の最適な排ガス浄化性能を確保することができる。
【０３３６】
この場合、スライディングモード制御器１５が目標空燃比KCMDを算出するために用いるＯ2センサ５の合成推定偏差出力VO2バーは、Ｏ2センサ５の偏差VO2の状態量Ｘ＝（VO2(k)，VO2(k-1)）が前記図５の線形的挙動領域Ａに存するとき、すなわち、Ｏ2センサ５の出力VO2/OUTが酸素濃度もしくは排ガスの空燃比に対してほぼ線形に変化するような状態では、前記第１推定器１２が排気系モデル等に基づくアルゴリズムによって算出した推定偏差出力VO2Lである。また、状態量Ｘ＝（VO2(k)，VO2(k-1)）が前記線形的挙動領域Ａの外に存するとき、すなわち、Ｏ2センサ５の出力VO2/OUTが酸素濃度もしくは排ガスの空燃比に対して非線形な変化を呈する状態では、基本的には、合成推定偏差出力VO2バーは、前記第２推定器１２がファジー推論のアルゴリズムによって算出した推定偏差出力VO2Fである。
【０３３７】
このため、Ｏ2センサ５の出力状態あるいは排ガスの空燃比状態によらずに、制御サイクル毎の前記合計無駄時間ｄ後のＯ2センサ５の偏差出力VO2の推定値としての前記合成推定偏差出力VO2バーの精度を良好に確保することができる。従って、エンジン１のストイキ運転モードでは、常時、排気系Ｅの無駄時間d1や前記空燃比操作系の無駄時間d2の影響を適正に補償して、Ｏ2センサ５の出力VO2/OUTの目標値VO2/TARGETへの収束制御を高い速応性で且つ安定に行うことができる。例えば、リーン運転モードからストイキ運転モードへの移行の直後や、フュエルカット直後の状態等、Ｏ2センサ５の出力VO2/OUTが目標値VO2/TARGETから大きくずれているような場合であっても、目標値VO2/TARGETへの収束制御を安定且つ迅速に行うことができる。
【０３３８】
また、両推定器１２，１３の推定偏差出力VO2Lバー，VO2Fバーの合成推定偏差出力VO2バーとしての選択の形態、あるいは、両推定偏差出力VO2L，VO2Fの合成値しての合成推定偏差出力VO2バーの生成の形態を規定する条件は、スライディングモード制御器１５の処理に用いる切換関数σバーに対応するファジー用線形関数σに関連して定められた前記線形的挙動領域Ａ（図５参照）に状態量Ｘ＝（VO2(k)，VO2(k-1)）が存するか否か（これは、前記楕円関数の値OVALが「１」以下であるか否かと等価である）によって定められている。このため、各推定器１２，１３の推定偏差出力VO2Lバー，VO2Fバーを、それぞれの精度の特性に適合した最適な条件下で、合成推定偏差出力VO2としてスライディングモード制御器１５の処理（目標空燃比KCMDの算出処理）に使用することができる。この結果、該スライディングモード制御器１５が生成する目標空燃比KCMDがＯ2センサ５の出力VO2/OUTを目標値VO2/TARGETに収束させる上で最適なものとなる。
【０３３９】
さらに、前記合成器１４が求める合成推定偏差出力VO2バーは、基本的には、両推定器１２，１３の推定偏差出力VO2Lバー，VO2Fバーのいずれかの値であるが、前記状態量Ｘが線形的挙動領域Ａの境界近傍に存するときには、前記重み係数Cwを楕円関数の値OVALに応じて可変的に設定しつつ、両推定偏差出力VO2Lバー，VO2Fバーを合成してなる合成値である。このため、状態量Ｘが線形的挙動領域Ａの境界近傍で変化するような場合における合成推定偏差出力VO2バーの値が急変するようなことがなく、ひいては、Ｏ2センサ５の出力VO2/OUTの制御の安定性を高めることができる。
【０３４０】
また、前記第２推定器１３のファジー推論では、min−max−重心法を用いると共に、後件部のパラメータVO2Fバーに係わるメンバーシップ関数を棒状関数により設定しているため、簡単なファジー推論アルゴリズムにより推定偏差出力VO2Fバーを求めることができる。
【０３４１】
さらに、第１推定器１２のアルゴリズムに関しては、排気系モデルのパラメータであるゲイン係数a1，a2，b1を排気系Ｅの挙動状態に則して同定器１１によりリアルタイムで同定し、その同定ゲイン係数a1ハット、a2ハット、b1ハットを用いて推定偏差出力VO2Lバーを算出するため、特に、Ｏ2センサ５の線形領域における推定偏差出力VO2Lバーの精度が高まる。この結果、Ｏ2センサ５の出力VO2/OUTの目標値VO2/TARGETへの収束制御の安定性を高めることができる。
【０３４２】
次に本発明の第２実施形態を説明する。尚、本実施形態は、前記第１実施形態のものとその構成は同一で、前記第１推定器１２の演算処理等の一部の演算処理のみが前記第１実施形態のものと相違するので、前記第１実施形態と同一の参照符号を用いて説明すると共に、同一部分については詳細な説明を省略する。
【０３４３】
前記第１実施形態では、排気系Ｅの無駄時間d1と空燃比操作系（エンジン１及び機関制御手段８から成る系）の無駄時間d2とを合わせた合計無駄時間ｄの影響を補償するために、該合計無駄時間ｄ後のＯ2センサ５の推定偏差出力VOLバー，VO2Fバーをそれぞれ第１推定器１２及び第２推定器１３により算出するようにしている。
【０３４４】
しかるに、排気系Ｅの無駄時間d1に比して空燃比操作系の無駄時間d2が十分に小さい場合には、排気系Ｅの無駄時間d1のみを考慮して、この無駄時間d1後のＯ2センサ５の偏差出力VO2の推定値VO2L(k+d1)バー，VO2F(k+d1)バーを第１及び第２推定器１２，１３によりそれぞれ制御サイクル毎に逐次求め、それらの推定値（以下、第２推定偏差出力という）VO2L(k+d1)バー，VO2F(k+d1)バーを前記第１実施形態と同様に合成器１４により合成してなる合成推定偏差出力VO2(k+d1)バーを用いてスライディングモード制御器１５により目標空燃比KCMDを算出するようにしてもよい。本実施形態は、このような第２推定偏差出力VO2L(k+d1)バー，VO2F(k+d1)バーを求めて、Ｏ2センサ５の出力VO2/OUTの目標値VO2/TARGETへの収束制御を行うものである。
【０３４５】
この場合、前記第１推定器１２は、前記式（９）の「kcmd」及び「ｄ」をそれぞれ「kact」及び「d1」に置き換えた次式（３９）を用いて、前記実施形態と同様にＯ2センサ５の偏差出力VO2の無駄時間d1後の推定値としての第２推定偏差出力VO2L(k+d1)バーを制御サイクル毎に逐次求める。
【０３４６】
【数３９】
0003773859.tif 000040
【０３４７】
尚、この式（３９）は、排気系モデルの式（１）から得ることができる式である。また、この式（３９）の演算に必要なゲイン係数a1，a2，b1としては、前記第１実施形態と同様、前記同定器１１により求めた同定ゲイン係数a1ハット、a2ハット、b1ハットを用いる。
【０３４８】
また、前記第２推定器１３に関しては、そのファジー推論のアルゴリズム（min−max−重心法のアルゴリズム）、ファジールール（図７参照）、並びに後件部に係わるメンバーシップ関数（図６（ｃ）参照）は、前記第１実施形態の場合と同一でよい。但し、この場合、前件部のパラメータσ(k)，VO2(k)にそれぞれ係わるメンバーシップ関数（Ｎ（負）、Ｚ（ゼロ）、Ｐ（正）の三つの関数）については、図示は省略するが、その形状（具体的には、各メンバーシップ関数の位置や、その台形状、三角形状の傾斜部分の傾き）を前記第１実施形態の場合と若干異なるものとしておく。この場合、これらのメンバーシップ関数の具体的な設定は、ファジー推論による第２推定偏差出力VO2F(k+d1)バーが、Ｏ2センサ５の非線形領域での挙動時における無駄時間d1後の実際の偏差出力VO2(k+d1)に精度良く合致するように、実験やシミュレーションに基づいて行うようにすればよい。
【０３４９】
そして、本実施形態では、前記合成器１４は、上述のようなアルゴリズムによって第１及び第２推定器１２，１３がそれぞれ求める第２推定偏差出力VO2L(k+d1)バー、VO2F(k+d1)バーから前記第１実施形態と全く同様に、合成推定偏差出力VO2(k+d1)を算出する。すなわち、合成器１４は、前記式（２６）の「ｄ」を「d1」に置き換えた式により合成推定偏差出力VO2(k+d1)を算出する。
【０３５０】
また、前記スライディングモード制御器１５は、前記式（２０）〜（２３）で「ｄ」を「d1」に置き換えた式によって、等価制御入力Usl、到達則入力Urch及び適応則入力Uadpを制御サイクル毎に求め、それらを加算してなる目標偏差空燃比kcmd（＝ＳＬＤ操作入力Usl）に前記空燃比基準値FLAF/BASEを加算することで、目標空燃比KCMDを求める。これにより、排気系Ｅの無駄時間d1の影響を補償した目標空燃比KCMDを求めることができる。
【０３５１】
以上説明した以外の処理については、前記第１実施形態と全く同一でよい。かかる本実施形態の装置においても、前記第１実施形態と同様の効果を奏することができる。
【０３５２】
尚、本発明は、以上説明した第１及び第２実施形態に限定されるものではなく、各種の変形態様が可能である。
【０３５３】
例えば、前記合計無駄時間d後のＯ2センサ５の出力もしくは偏差出力の推定値、あるいは排気系Ｅの無駄時間d1後のＯ2センサ５の出力もしくは偏差出力の推定値をそれぞれ求める第１及び第２推定器１２，１３は、それぞれ、前記第１及び第２実施形態と異なるアルゴリズムを用いて前記推定値を求めるようにしてもよい。各推定器１２，１３のアルゴリズムは、基本的には、それぞれＯ2センサ５の互いに異なる特定の出力状態において比較的精度の良い推定値を求めることができるものであればよい。
【０３５４】
さらに、前記合計無駄時間ｄあるいは無駄時間d1後の推定値を、さらに多くの推定器（例えば３個、４個等の推定器）を用いて算出し、それらから択一的に選択したもの、あるいはそれらを合成したものを用いて目標空燃比KCMDを求めるようにしてもよい。
【０３５５】
また、合計無駄時間ｄあるいは無駄時間d1後の推定値を用いた目標空燃比KCMDの算出処理は、適応則（適応アルゴリズム）を含まない通常的なスライディングモード制御により行うようにしてもよく、さらには、スライディングモード制御以外のフィードバック制御処理を用いてもよい。
【０３５６】
また、触媒装置３の下流の排ガスセンサは、Ｏ2センサ以外の排ガスセンサ（例えばＮＯｘセンサ、ＨＣセンサ、ＣＯセンサ）であってもよい。この場合、前記合計無駄時間ｄあるいは無駄時間d1後の排ガスセンサの出力の推定値データを求める各推定器のアルゴリズムや、その個数は、該排ガスセンサの出力特性を考慮して選択、設定するようにすればよい。
【０３５７】
また、本発明のプラントの制御装置に関し、前記第１及び第２実施形態では、内燃機関の空燃比制御装置を例にとって説明したが、本発明のプラントの制御装置は、前記実施形態に限定されるものではない。
【０３５８】
以下に本発明のプラントの制御装置の他の実施形態を図１９を参照して説明する。
【０３５９】
図１９において、３２はプラントであり、このプラント３２には、流量制御弁３３（アクチュエータ）により流量を調整可能なアルカリ液が入力される。そして、該プラント３２は、与えられたアルカリ液に酸性液を合流させ、それを攪拌器３４により攪拌してなる混合液を出力するものである。
【０３６０】
本実施形態の制御装置は、このようなプラント３２が出力する混合液（アルカリ液と酸性液との混合液）のｐＨが所望のｐＨ（例えば中性に相当するｐＨ値）になるようにプラント３２に入力されるアルカリ液の流量を制御するもので、その制御のために次のような構成を備えている。
【０３６１】
すなわち、本実施形態の制御装置は、プラント３２の出力側に該プラント３２の出力である前記混合液のｐＨを検出すべく設けられた検出手段としてのｐＨセンサ３５と、プラント３２の入力側に該プラントの入力であるアルカリ液の流量を検出すべく設けられた流量センサ３６と、これらのｐＨセンサ３５及び流量センサ３６のそれぞれの出力V1/OUT，V2/OUTに基づき後述の演算処理を行う制御ユニット３７とを具備する。
【０３６２】
尚、本実施形態におけるｐＨセンサ３５は、例えば前述の第１及び第２実施形態における酸素濃度センサと同様、その出力特性は、目標値とするｐＨ値を含む比較的狭い範囲のｐＨ値に対してほぼ線形に出力V1/OUTが変化し、その狭い範囲を逸脱したｐＨ値では、飽和してほぼ一定の出力となるようなものである。
【０３６３】
制御ユニット３７は、マイクロコンピュータ等により構成されたもので、ｐＨセンサ３５の出力V1/OUTとその目標値V1/TARGET（これは前記混合液の目標ｐＨに相当する）との偏差V1（＝V1/OUT−V1/TARGET）をｐＨセンサ３５の出力を示すデータとして算出する減算処理部３８と（以下、偏差V1をｐＨセンサ３５の偏差出力V1という）、流量センサ３６の出力V2/OUTと所定の基準値V2/REF（これは任意に設定してよい）との偏差V2（＝V2/OUT−V2/REF）を流量センサ３６の出力を示すデータとして算出する減算処理部３９と（以下、偏差V2を流量センサ３６の偏差出力V2という）、上記偏差出力V1，V2に基づいて、ｐＨセンサ３５の出力V1/OUTをその目標値V1/TARGETに収束させるためにプラント３２に与えるべきアルカリ液の目標流量V2CMDをプラント３２への入力を規定する操作量として決定する操作量生成手段４０と、流量センサ３６の出力V2/OUT（検出流量）を目標流量V2CMDに一致させるように前記流量制御弁３３の動作量をフィードバック制御する弁制御手段４１（アクチュエータ制御手段）とを機能的構成として具備している。
【０３６４】
尚、以下の説明において、前記目標流量V2CMDの前記基準値V2/ REFに対する偏差（＝V2CMD−V2/REF）を目標偏差流量v2cmd（これは前述の実施形態における目標偏差空燃比kcmdに対応する）と称する。また、流量制御弁３３及び弁制御手段４１を合わせた系、すなわち、目標流量V2CMDから流量センサ３６が検出する流量のアルカリ液を生成するシステムを流量操作系（これは前述の実施形態における空燃比操作系に対応する）と称する。
【０３６５】
前記操作量生成手段４０は、前述の第１実施形態の操作量生成手段７と同様にその機能的構成として図示を省略する同定器、第１及び第２推定器、合成器、及びスライディングモード制御器を備えている。そして、本実施形態における操作量生成手段４０の同定器、第１推定器は、例えば前記式（１）のVO2，kactをそれぞれ前記偏差出力V1，V2で置き換えて成るプラント３２のモデルと、前記式（２）のkact，kcmdをそれぞれ前記偏差出力V2、目標偏差流量v2cmdで置き換えて成る前記流量操作系のモデルとを用い、前述の第１実施形態における操作量生成手段７の同定器１１及び推定器１２と同様の演算処理を行う。
【０３６６】
すなわち、本実施形態における操作量生成手段４０は、プラント３２のモデルのパラメータの同定値（これは前述の実施形態における同定ゲイン係数a1ハット、a2ハット、b1ハットに対応する）の算出や、プラント３２に存する無駄時間と流量操作系に存する無駄時間とを合わせた合計無駄時間後のｐＨセンサ３５の偏差出力V1の推定値（これは前述の実施形態における推定偏差出力VO2Lバーに対応する）の算出を行う。この場合、プラント３２のモデルにおける無駄時間の設定値は、プラント３２の実際の無駄時間以上となるような時間（例えば一定値）に実験等を通じて定めておけばよい。また、流量操作系のモデルにおける無駄時間の設定値は、流量制御弁３３の動作特性を考慮し、流量操作系の実際の無駄時間以上となるような時間（例えば一定値）に実験等を通じて定めておけばよい。
【０３６７】
また、操作量生成手段４０の第２推定器は、前述の実施形態における第２推定器１３と同様に構築されたファジー推論のアルゴリズム（min−max−重心法のアルゴリズム）により、上記合計無駄時間後のｐＨセンサ３５の偏差出力V1の推定値（これは前述の第１実施形態における推定偏差出力VO2Fバーに対応する）の算出を行う。この場合、ファジー推論のファジールールは、例えば前述の実施形態のものと同一でよく、また、後件部のパラメータ（ｐＨセンサ３５の偏差出力V1の推定値）に係わるメンバーシップ関数は、前述の実施形態と同様にＮ（負）、Ｚ（ゼロ）、Ｐ（正）の三種類の棒状関数により設定することができる。また、前件部のパラメータ（前述の第１実施形態におけるファジー用線形関数σに相当する線形関数の値と、該偏差出力V1の値）に係わるメンバーシップ関数も、基本的には、Ｎ（負）、Ｚ（ゼロ）、Ｐ（正）の三種類の三角形状、あるいは台形状の関数により設定することができる。これらのメンバーシップ関数の具体的な形状は、ｐＨセンサ３５の出力特性を考慮して、実験等を通じて設定すればよい。
【０３６８】
また、操作量生成手段４０の合成器は、前述の実施形態と全く同様に、両推定器による推定値の重み付き合成により該推定値の合成値（これは、前述の実施形態における合成推定偏差出力VO2バーに相当する）を生成する。
【０３６９】
そして、操作量生成手段４０のスライディングモード制御器は、上記合成値を用いて、前述の第１実施形態と全く同様の演算処理（適応スライディングモード制御の処理）を行うことにより、前記目標流量V2CMD（これは前述の実施形態における目標空燃比KCMDに対応する）の算出を行う。
【０３７０】
尚、前記弁制御手段４１は、例えば前述の第１実施形態の大局的フィードバック制御部２１と同様に、図示しないＰＩＤ制御器あるいは適応制御器等により、流量センサ３６の出力V2/OUT（検出流量）が前記目標流量V2CMDに一致するように流量制御弁３３の動作をフィードバック制御する。
【０３７１】
このような本実施形態の装置によれば、プラント３２に与えられるアルカリ液のｐＨや、該アルカリ液にプラント３２内で混合する酸性液のｐＨ、該酸性液の流量を把握せずとも、外乱の影響やプラント３２の無駄時間、流量操作系の無駄時間の影響、さらには、ｐＨセンサ３５の出力状態によらずに、高い速応性で安定にｐＨセンサ３５の出力V1/OUT、すなわちプラント３２が生成する混合液のｐＨを所望のｐＨに制御することができる。
【０３７２】
尚、本実施形態のプラントの制御装置では、プラント３２の無駄時間と流量操作系の無駄時間との両者の無駄時間の影響を補償するようにしたが、後者の無駄時間が前者の無駄時間に比して十分に小さい場合には、前記第２実施形態の場合と同様に、プラント３２の無駄時間後のｐＨセンサ３５の偏差出力V1の推定値を二つの推定器により求めるようにし、それを合成器で合成してなる合成値を用いて前記目標流量V2CMDをスライディングモード制御器により生成するようにしてもよい。
【０３７３】
また、本実施形態のプラントの制御装置では、前記空燃比制御装置の実施形態について説明した変形態様と同様の各種の変形態様が可能である。
【０３７４】
また、本実施形態のプラントの制御装置に関しては、例えばプラント３２と流量制御弁３３とを合わせた系を改めてプラントとみなして、制御システムを構築するようにすることも可能である。
【図面の簡単な説明】
【図１】本発明の実施形態の装置のシステム構成図。
【図２】図１の装置に備えたセンサの出力特性を示す線図。
【図３】図１の装置の操作量生成手段の構成を示すブロック図。
【図４】図３のスライディングモード制御器が実行するスライディングモード制御を説明するための線図。
【図５】図３の第２推定器の処理を説明するための線図。
【図６】図３の第２推定器の処理（ファジー推論処理）に用いるメンバーシップ関数を示す線図。
【図７】図３の第２推定器の処理（ファジー推論処理）に用いるファジールールの説明図。
【図８】図３の合成器の処理を説明するための線図。
【図９】図３の合成器の処理を説明するための線図。
【図１０】図１の機関制御手段の構成を示すブロック図。
【図１１】図１０の要部の構成を示すブロック図。
【図１２】図１の機関制御手段の処理を示すフローチャート。
【図１３】図１２のフローチャートのサブルーチン処理を示すフローチャート。
【図１４】図１の操作量生成手段の処理を示すフローチャート。
【図１５】図１４のフローチャートのサブルーチン処理を示すフローチャート。
【図１６】図１４のフローチャートのサブルーチン処理を示すフローチャート。
【図１７】図１４のフローチャートのサブルーチン処理を示すフローチャート。
【図１８】図１４のフローチャートのサブルーチン処理を示すフローチャート。
【図１９】本発明のプラントの制御装置の他の実施形態の装置のシステム構成図。
【符号の説明】
１…エンジン（内燃機関、アクチュエータ）、２…排気管（排気通路）、３…触媒装置、４…空燃比センサ、５…酸素濃度センサ（排ガスセンサ、検出手段）、７…操作量生成手段、８…機関制御手段（アクチュエータ制御手段）、１１…同定器（同定手段）、１２…第１推定器（第１推定手段）、１３…第２推定器（第２推定手段）、１４…合成器、１５…スライディングモード制御器、Ｅ…排気系（プラント）、３２…プラント、３３…流量制御弁（アクチュエータ）、３５…ｐＨセンサ（検出手段）、４０…操作量生成手段、４１…弁制御手段（アクチュエータ制御手段）。
【図１】
0003773859.tif 000041
【図２】
0003773859.tif 000042
【図３】
0003773859.tif 000043
【図４】
0003773859.tif 000044
【図５】
0003773859.tif 000045
【図６】
0003773859.tif 000046
【図７】
0003773859.tif 000047
【図８】
0003773859.tif 000048
【図９】
0003773859.tif 000049
【図１０】
0003773859.tif 000050
【図１１】
0003773859.tif 000051
【図１２】
0003773859.tif 000052
【図１３】
0003773859.tif 000053
【図１４】
0003773859.tif 000054
【図１５】
0003773859.tif 000055
【図１６】
0003773859.tif 000056
【図１７】
0003773859.tif 000057
【図１８】
0003773859.tif 000058
【図１９】
0003773859.tif 000059