(57)【特許請求の範囲】
【請求項１】
内燃機関のスロットル弁と、該スロットル弁を駆動する駆動手段とを備えるスロットル弁駆動装置を制御する制御装置において、
前記スロットル弁駆動装置をモデル化した制御対象モデルのモデルパラメータを同定する同定手段と、
該同定手段により同定されたモデルパラメータに基づいて、前記スロットル弁の開度を目標開度に制御する制御手段とを備え、
前記同定手段は、前記モデルパラメータの同定誤差を算出する同定誤差算出手段と、該同定誤差が所定の範囲内にあるときは、前記同定誤差をゼロに修正する同定誤差修正手段とを有し、該同定誤差修正手段により修正された同定誤差を用いて前記モデルパラメータを算出し、前記所定範囲を前記スロットル弁の開度または前記目標開度に応じた値に基づいて設定し、
前記制御手段は、前記同定手段により同定されたモデルパラメータを用いて、スライディングモード制御により前記スロットル弁駆動装置を制御し、前記制御手段による前記スロットル弁駆動装置への制御入力は、適応則入力を含むことを特徴とするスロットル弁駆動装置の制御装置。
【請求項２】
前記同定手段により同定されたモデルパラメータを用いて、未来のスロットル弁開度の予測値を算出する予測手段をさらに備えることを特徴とする請求項１に記載のスロットル弁駆動装置の制御装置。
【請求項３】
前記所定範囲は、前記スロットル弁の開度の変化量に応じて設定されることを特徴とする請求項１または２に記載のスロットル弁駆動装置の制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、内燃機関のスロットル弁と、該スロットル弁を駆動する駆動手段とを備えるスロットル弁駆動装置の制御装置に関する。
【０００２】
【従来の技術】
モータにより駆動されるスロット弁の開度を、ＰＩＤ（比例、積分、微分）制御により制御するスロットル弁開度制御装置において、ＰＩＤ制御定数を車両の運転状態に応じて設定する手法は従来より知られている（特開平８−２６１０５０号公報）。
【０００３】
【発明が解決しようとする課題】
制御対象であるスロットル弁駆動装置は、非線形特性を有するため、通常のＰＩＤ制御では、スロットル弁開度の目標値への追従特性や制御精度、及び制御の安定性の面で十分な制御性能が得られなかった。
【０００４】
そこでより高い制御性能を実現するために、スロットル弁駆動装置をモデル化した制御対象モデルに基づいて、制御を行うことが考えられる。制御対象モデルに基づく制御を行う場合には、制御対象モデルの特性を表すモデルパラメータが用いられる。モデルパラメータとしては、予め定めた一定値を使用することもできるが、通常経年変化や外乱により、モデルパラメータの値は変化する。したがって、モデルパラメータをリアルタイムで同定する同定器を導入し、同定器により同定されたモデルパラメータを用いて制御を実行することが望ましい。
【０００５】
しかし、モデルパラメータの同定器は、同定したモデルパラメータを用いて算出されるスロットル弁開度と、実際のスロットル弁開度との偏差を同定誤差として検出し、同定誤差が０となるようにモデルパラメータを修正することにより同定するものであるため、以下のような問題が発生する。
【０００６】
すなわち、スロットル弁駆動装置が有する非線形特性や平均値が０でない外乱が加わることなどに起因して、実際にはほぼ最適なモデルパラメータが得られているにも関わらず、同定誤差が０とならず、本来は不要なモデルパラメータの修正を行う場合がある。その結果、モデルパラメータが最適値から徐々にずれていってしまうドリフトが発生し、制御が不安定となる場合があった。
【０００７】
本発明はこの点に着目してなされたものであり、制御対象であるスロットル弁駆動装置をモデル化してモデルパラメータの同定を行い、同定したモデルパラメータを用いてスロットル弁開度の制御を行う場合に、制御をより安定化することができるスロットル弁駆動装置の制御装置を提供することを目的とする。
【０００８】
【課題を解決するための手段】
上記目的を達成するため請求項１に記載の発明は、内燃機関のスロットル弁と、該スロットル弁を駆動する駆動手段とを備えるスロットル弁駆動装置を制御する制御装置において、前記スロットル弁駆動装置をモデル化した制御対象モデルのモデルパラメータを同定する同定手段と、該同定手段により同定されたモデルパラメータに基づいて、前記スロットル弁の開度を目標開度に制御する制御手段とを備え、前記同定手段は、前記モデルパラメータの同定誤差（ｉｄｅ）を算出する同定誤差算出手段と、該同定誤差が所定の範囲内（−ＥＩＤＮＲＬＭＴ≦ｉｄｅ≦ＥＩＤＮＲＬＭＴ）にあるときは、前記同定誤差をゼロに修正する同定誤差修正手段とを有し、該同定誤差修正手段により修正された同定誤差を用いて前記モデルパラメータを算出し、前記所定範囲を前記スロットル弁の開度（ＴＨ）または前記目標開度（ＴＨＲ）に応じた値（ＤＤＴＨＲＳＱＡ）に基づいて設定し、前記制御手段は、前記同定手段により同定されたモデルパラメータを用いて、スライディングモード制御により前記スロットル弁駆動装置を制御し、前記制御手段による前記スロットル弁駆動装置への制御入力（Ｕｓｌ）は、適応則入力（Ｕａｄｐ）を含むことを特徴とする。
【０００９】
この構成によれば、モデルパラメータの同定誤差が所定の範囲内にあるときは、同定誤差がゼロに修正され、該修正された同定誤差を用いてモデルパラメータが算出されるので、同定誤差がモデルパラメータに蓄積することが抑制され、モデルパラメータのドリフトを防止することができ、制御の安定性を向上させることができる。さらに、前記所定範囲が、スロットル弁開度または目標開度に応じた値に基づいて設定されるので、寄与度合を低減すべき同定誤差の範囲が適切なものとなり、モデルパラメータの値に反映させるべき同定誤差を、不要な誤差として無視してしまうことを防止することができる。またロバスト性の高いスライディングモード制御によりスロットル弁駆動装置が制御されるので、モデル化誤差（実際のスロットル弁駆動装置の特性と、モデル化した制御対象モデルの特性との差）があっても、スロットル弁開度の目標開度への制御性を向上させ、しかも安定した制御を実現することができる。さらにスロットル弁駆動装置への制御入力は適応則入力を含むので、外乱やモデル化誤差があっても、良好な制御性を実現することができる。
【００１０】
請求項２に記載の発明は、請求項１に記載のスロットル弁駆動装置の制御装置において、前記同定手段により同定されたモデルパラメータを用いて、未来のスロットル弁開度の予測値（ＰＲＥＤＴＨ）を算出する予測手段をさらに備えることを特徴とする。
【００１１】
この構成によれば、同定手段により同定されたモデルパラメータを用いてスロットル弁開度の予測値の算出が行われるので、スロットル弁駆動装置の動特性が経時変化した場合や環境条件などによって変化した場合でも精度のよい予測値を算出することができる。
【００１２】
請求項３に記載の発明は、請求項１または２に記載のスロットル弁駆動装置の制御装置において、前記所定範囲は、前記スロットル弁の開度の変化量に応じて設定されることを特徴とする。
【００１３】
この構成によれば、同定誤差をゼロに修正する所定範囲が、スロットル弁開度の変化量に応じて設定されるので、モデルパラメータに反映させるべき同定誤差を、残留同定誤差として無視してしまうことを防止できる。
【００１５】
【発明の実施の形態】
以下本発明の実施の形態を図面を参照して説明する。
図１は本発明の一実施形態にかかるスロットル弁制御装置の構成を示す図である。内燃機関（以下「エンジン」という）１の吸気通路２には、スロットル弁３が設けられている。スロットル弁３には、該スロットル弁３を閉弁方向に付勢する第１付勢手段としてのリターンスプリング４と、該スロットル弁３を開弁方向に付勢する第２付勢手段としての弾性部材５とが取り付けられている。またスロットル弁３は、駆動手段としてのモータ６（例えばＤＣ（直流）モータ）によりギヤ（図示せず）を介して駆動できるように構成されている。モータ６による駆動力がスロットル弁３に加えられない状態では、スロットル弁３の開度ＴＨは、リターンスプリング４の付勢力と、弾性部材５の付勢力とが釣り合うデフォルト開度ＴＨＤＥＦ（例えば５度）に保持される。
【００１６】
モータ６は、電子制御ユニット（以下「ＥＣＵ」という）７に接続されており、その作動がＥＣＵ７により制御される。スロットル弁３には、スロットル弁開度ＴＨを検出するスロットル弁開度センサ８が設けられており、その検出信号は、ＥＣＵ７に供給される。
【００１７】
またＥＣＵ７には、エンジン１が搭載された車両の運転者の要求出力を検出するアクセルペダルの踏み込み量ＡＣＣを検出するアクセルセンサ９が接続されており、その検出信号がＥＣＵ７に供給される。
ＥＣＵ７は、スロットル弁開度センサ８及びアクセルセンサ９の検出信号が供給される入力回路、入力信号をディジタル信号に変換するＡＤ変換回路、各種演算処理を実行する中央演算ユニット（ＣＰＵ）、ＣＰＵが実行するプログラムやプログラムで参照されるマップやテーブルなどを格納するメモリ、及びモータ６に駆動電流を供給する出力回路を備えている。ＥＣＵ７は、アクセルペダルの踏み込み量ＡＣＣに応じてスロットル弁３の目標開度ＴＨＲを決定し、検出したスロットル弁開度ＴＨが目標開度ＴＨＲと一致するようにモータ６の制御量ＤＵＴを決定し、制御量ＤＵＴに応じた電気信号をモータ６に供給する。
【００１８】
本実施形態では、スロットル弁３、リターンスプリング４、弾性部材５及びモータ６からなるスロットル弁駆動装置１０を制御対象とし、該制御対象に対する入力をモータ６に印加する電気信号のデューティ比ＤＵＴとし、制御対象の出力をスロットル弁開度センサ８により検出されるスロットル弁開度ＴＨとする。
【００１９】
スロットル弁駆動装置１０の応答周波数特性を実測すると、図２に実線で示すゲイン特性及び位相特性が得られる。そこで、下記式（１）で定義されるモデルを制御対象モデルとして設定した。このモデルの応答周波数特性は、図２に破線で示すようになり、スロットル弁駆動装置１０の特性に近似していることが確認されている。
0003819259.tif 000002
ここで、ｋは離散化された時間を表すパラメータであり、ＤＴＨ(k)は下記式（２）により定義されるスロットル弁開度偏差量である。
ＤＴＨ(k)＝ＴＨ(k)−ＴＨＤＥＦ      （２）
ここで、ＴＨは検出したスロットル弁開度、ＴＨＤＥＦは前記デフォルト開度である。
また式（１）のａ１，ａ２，ｂ１，ｃ１は、制御対象モデルの特性を決めるモデルパラメータであり、ｄはむだ時間である。
【００２０】
上記式（１）で定義されるモデルは、適応制御の適用を容易にするために採用した、離散時間系のＤＡＲＸモデル（delayed autoregressive model with exogeneous input:外部入力を持つ自己回帰モデル）である。
式（１）においては、出力の偏差量ＤＴＨに関わるモデルパラメータａ１，ａ２、入力のデューティ比ＤＵＴに関わるモデルパラメータｂ１の他に、入出力に関わらないモデルパラメータｃ１が設定されている。このモデルパラメータｃ１は、デフォルト開度ＴＨＤＥＦのずれやスロットル弁駆動装置に加わる外乱を示すパラメータである。すなわち、モデルパラメータ同定器により、モデルパラメータａ１，ａ２，ｂ１と同時にモデルパラメータｃ１を同定することにより、デフォルト開度ずれや外乱を同定できるようにしている。
【００２１】
図３は、ＥＣＵ７により実現されるスロットル弁制御装置の機能ブロック図であり、この制御装置は、適応スライディングモードコントローラ２１と、モデルパラメータ同定器２２と、むだ時間ｄが経過した後の予測スロットル弁開度偏差量（以下「予測偏差量」という）ＰＲＥＤＴＨ(k)（＝ＤＴＨ(k+d)）を算出する状態予測器２３と、アクセルペダル踏み込み量ＡＣＣに応じてスロットル弁３の目標開度ＴＨＲを設定する目標開度設定部２４とからなる。
【００２２】
適応スライディングモードコントローラ２１は、検出したスロットル弁開度ＴＨが目標開度ＴＨＲと一致するように、適応スライディングモード制御によりデューティ比ＤＵＴを算出し、該算出したデューティ比ＤＵＴを出力する。
適応スライディングモードコントローラ２１を用いることにより、スロットル弁開度ＴＨの目標開度ＴＨＲへの追従応答特性を、所定のパラメータ（ＶＰＯＬＥ）を用いて適宜変更することが可能となり、その結果スロットル弁３を開弁位置から全閉位置に移動させる際の衝撃（スロットル全閉ストッパへの衝突）の回避、及びアクセル操作に対するエンジンレスポンスの可変化が可能となる。また、モデルパラメータの誤差に対する安定性を確保することが可能となる。
【００２３】
モデルパラメータ同定器２２は、修正モデルパラメータベクトルθＬ（θＬT＝［ａ１，ａ２，ｂ１，ｃ１］）を算出し、適応スライディングモードコントローラ２１に供給する。より具体的には、モデルパラメータ同定器２２は、スロットル弁開度ＴＨ及びデューティ比ＤＵＴに基づいて、モデルパラメータベクトルθを算出する。さらに、そのモデルパラメータベクトルθに対してリミット処理を行うことにより修正モデルパラメータベクトルθＬを算出し、該修正モデルパラメータベクトルθＬを適応スライディングモードコントローラ２１に供給する。このようにしてスロットル弁開度ＴＨを目標開度ＴＨＲに追従させるために最適なモデルパラメータａ１，ａ２，ｂ１が得られ、さらに外乱及びデフォルト開度ＴＨＤＥＦのずれを示すモデルパラメータｃ１が得られる。
【００２４】
リアルタイムでモデルパラメータを同定するモデルパラメータ同定器２２を用いることにより、エンジン運転条件の変化への適応、ハードウエアの特性ばらつきの補償、電源電圧変動の補償、及びハードウエア特性の経年変化への適応が可能となる。
【００２５】
状態予測器２３は、スロットル弁開度ＴＨ及びデューティ比ＤＵＴに基づいて、むだ時間ｄ後のスロットル弁開度ＴＨ（予測値）、より具体的には予測偏差量ＰＲＥＤＴＨを算出し、適応スライディングモードコントローラ２１に供給する。予測偏差量ＰＲＥＤＴＨを用いることにより、制御対象のむだ時間に対する制御系のロバスト性を確保し、特にむだ時間が大きいデフォルト開度ＴＨＤＥＦ近傍での制御性を向上させることができる。
【００２６】
次に適応スライディングモードコントローラ２１の動作原理を説明する。
先ず下記式（３）により、目標値ＤＴＨＲ(k)を目標開度ＴＨＲ(k)とデフォルト開度ＴＨＤＥＦとの偏差量として定義する。
ＤＴＨＲ(k)＝ＴＨＲ(k)−ＴＨＤＥＦ       （３）
ここで、スロットル弁開度偏差量ＤＴＨと、目標値ＤＴＨＲとの偏差ｅ(k)を下記式（４）で定義すると、適応スライディングモードコントローラの切換関数値σ(k)は、下記式（５）にように設定される。
0003819259.tif 000003
ここで、ＶＰＯＬＥは、−１より大きく１より小さい値に設定される切換関数設定パラメータである。
【００２７】
縦軸を偏差ｅ(k)とし、横軸を前回偏差ｅ(k-1)として定義される位相平面上では、σ(k)＝０を満たす偏差ｅ(k)と、前回偏差ｅ(k-1)との組み合わせは、直線となるので、この直線は一般に切換直線と呼ばれる。スライディングモード制御は、この切換直線上の偏差ｅ(k)の振る舞いに着目した制御であり、切換関数値σ(k)が０となるように、すなわち偏差ｅ(k)と前回偏差ｅ(k-1)の組み合わせが位相平面上の切換直線上に載るように制御を行い、外乱やモデル化誤差（実際のプラントの特性と、モデル化した制御対象モデルの特性との差）に対してロバストな制御を実現し、スロットル弁開度偏差量ＤＴＨを目標値ＤＴＨＲに追従させるものである。
【００２８】
また式（５）の切換関数設定パラメータＶＰＯＬＥの値を変更することにより、図４に示すように、偏差ｅ(k)の減衰特性、すなわちスロットル弁開度偏差量ＤＴＨの目標値ＤＴＨＲへの追従特性を変更することができる。具体的には、ＶＰＯＬＥ＝−１とすると、全く追従しない特性となり、切換関数設定パラメータＶＰＯＬＥの絶対値を小さくするほど、追従速度を速めることができる。
【００２９】
スロットル弁制御装置においては、下記要求Ａ１及びＡ２が満たされることが求められる。
Ａ１）スロットル弁３を全閉位置に移動させる際にスロットル全閉ストッパへの衝突を回避すること
Ａ２）デフォルト開度ＴＨＤＥＦ近傍における非線形特性（リターンスプリング４の付勢力と弾性部材５の付勢力とが釣り合うことに起因する弾性特性の変化、モータ６とスロットル弁３と間に介装されたギヤのバックラッシ、デューティ比ＤＵＴの変化してもスロットル弁開度が変化しない不感帯）に対する制御性を向上させること
そのため、スロットル弁の全閉位置近傍では、偏差ｅ(k)の収束速度を低下させ、またデフォルト開度ＴＨＤＥＦの近傍では、収束速度を高める必要がある。
【００３０】
スライディングモード制御によれば、切換関数設定パラメータＶＰＯＬＥを変更することにより、容易に収束速度を変更できるので、本実施形態では、スロットル弁開度ＴＨ及び目標値ＤＴＨＲの変化量ＤＤＴＨＲ（＝ＤＴＨＲ(k)−ＤＴＨＲ(k-1)）に応じて、切換関数設定パラメータＶＰＯＬＥを設定するようにした。これにより、上記要求Ａ１及びＡ２を満たすことができる。
【００３１】
上述したようにスライディングモード制御では、偏差ｅ(k)と前回偏差ｅ(k-1)の組み合わせ（以下「偏差状態量」という）を切換直線上に拘束することにより、偏差ｅ(k)を指定した収束速度で、かつ外乱やモデル化誤差に対してロバストに、０に収束させる。したがって、スライディングモード制御では、如何にして偏差状態量を切換直線に載せ、そこに拘束するかが重要となる。
【００３２】
そのような観点から、制御対象への入力（コントローラの出力）ＤＵＴ(k)（Ｕｓｌ(k)とも表記する）は、下記式（６）に示すように、等価制御入力Ｕｅｑ(k)、到達則入力Ｕｒｃｈ(k)及び適応則入力Ｕａｄｐ(k)の和として構成される。
0003819259.tif 000004
【００３３】
等価制御入力Ｕｅｑ(k)は、偏差状態量を切換直線上に拘束するための入力であり、到達則入力Ｕｒｃｈ(k)は、偏差状態量を切換直線上へ載せるための入力であり、適応則入力Ｕａｄｐ(k)は、モデル化誤差や外乱の影響を抑制し、偏差状態量を切換直線へ載せるための入力である。以下各入力Ｕｅｑ(k)，Ｕｒｃｈ(k)及びＵａｄｐ(k)の算出方法を説明する。
【００３４】
等価制御入力Ｕｅｑ(k)は、偏差状態量を切換直線上に拘束するための入力であるから、満たすべき条件は下記式（７）で与えられる。
σ(k)＝σ(k+1)        （７）
式（１）並びに式（４）及び（５）を用いて式（７）を満たすデューティ比ＤＵＴ(k)を求めると、下記式（９）が得られ、これが等価制御入力Ｕｅｑ(k)となる。さらに、到達則入力Ｕｒｃｈ(k)及び適応則入力Ｕａｄｐ(k)を、それぞれ下記式（１０）及び（１１）により定義する。
【数１】
0003819259.tif 000005
【００３５】
ここで、Ｆ及びＧは、それぞれ到達則制御ゲイン及び適応則制御ゲインであり、以下に述べるように設定される。またΔＴは、制御周期である。
上記式（９）の演算には、むだ時間ｄ経過後のスロットル弁開度偏差量ＤＴＨ(k+d)及び対応する目標値ＤＴＨＲ(k+d+1)が必要である。そこで、むだ時間ｄ経過後のスロットル弁開度偏差量ＤＴＨ(k+d)として、状態予測器２３により算出される予測偏差量ＰＲＥＤＴＨ(k)を用い、目標値ＤＴＨＲ(k+d+1)として、最新の目標値ＤＴＨＲを用いることとする。
【００３６】
次に到達則入力Ｕｒｃｈ及び適応則入力Ｕａｄｐにより、偏差状態量が安定に切換直線上に載せられるように、到達則制御ゲインＦ及び適応則制御ゲインＧの決定を行う。
具体的には外乱Ｖ(k)を想定し、外乱Ｖ(k)に対して切換関数値σ(k)が安定であるための条件を求めることにより、ゲインＦ及びＧの設定条件を求める。その結果、ゲインＦ及びＧの組み合わせが、下記式（１２）〜（１４）を満たすこと、換言すれば図５にハッチングを付して示す領域内にあることが安定条件として得られた。
【００３７】
Ｆ＞０                          （１２）
Ｇ＞０                          （１３）
Ｆ＜２−（ΔＴ／２）Ｇ          （１４）
以上のように、式（９）〜（１１）により、等価制御入力Ｕｅｑ(k)、到達則入力Ｕｒｃｈ(k)及び適応則入力Ｕａｄｐ(k)を算出し、それらの入力の総和として、デューティ比ＤＵＴ(k)を算出することができる。
【００３８】
モデルパラメータ同定器２２は、前述したように制御対象の入力（ＤＵＴ(k)）及び出力（ＴＨ(k)）に基づいて、制御対象モデルのモデルパラメータベクトルを算出する。具体的には、モデルパラメータ同定器２２は、下記式（１５）による逐次型同定アルゴリズム（一般化逐次型最小２乗法アルゴリズム）により、モデルパラメータベクトルθ(k)を算出する。
θ(k)＝θ(k-1)＋ＫＰ(k)ｉｄｅ(k)                 （１５）
θ(k)T＝［ａ１’，ａ２’，ｂ１’，ｃ１’］        （１６）
【００３９】
ここで、ａ１’，ａ２’，ｂ１’及びＣ１’は、後述するリミット処理を実施する前のモデルパラメータである。またｉｄｅ(k)は、下記式（１７）、（１８）及び（１９）により定義される同定誤差である。ＤＴＨＨＡＴ(k)は、最新のモデルパラメータベクトルθ(k-1)を用いて算出される、スロットル弁開度偏差量ＤＴＨ(k)の推定値（以下「推定スロットル弁開度偏差量」という）である。ＫＰ(k)は、下記式（２０）により定義されるゲイン係数ベクトルである。また、式（２０）のＰ(k)は、下記式（２１）により算出される４次の正方行列である。
【数２】
0003819259.tif 000006
【数３】
0003819259.tif 000007
【００４０】
式（２１）の係数λ１，λ２の設定により、式（１５）〜（２１）による同定アルゴリズムは、以下のような４つの同定アルゴリズムのいずれかになる。
λ１＝１，λ２＝０  固定ゲインアルゴリズム
λ１＝１，λ２＝１  最小２乗法アルゴリズム
λ１＝１，λ２＝λ  漸減ゲインアルゴリズム（λは０，１以外の所定値）
λ１＝λ，λ２＝１  重み付き最小２乗法アルゴリズム（λは０，１以外の所定値）
【００４１】
一方本実施形態では、下記Ｂ１）、Ｂ２）、Ｂ３）の要求を満たすことが求められる。
Ｂ１）準静的動特性変化及びハードウエアの特性ばらつきに対する適応
「準静的動特性変化」とは、例えば電源電圧の変動やハードウエアの経年劣化といった変化速度の遅い特性変化を意味する。
Ｂ２）動的な動特性変化への適応
具体的には、スロットル弁開度ＴＨの変化に対応する動特性変化への適応を意味する。
Ｂ３）モデルパラメータのドリフト防止
モデルパラメータに反映すべきでない制御対象の非線形特性などに起因する同定誤差の影響によって、モデルパラメータの絶対値が増大するような不具合を防止する。
【００４２】
先ず上記Ｂ１）及びＢ２）の要求を満たすために、係数λ１及びλ２をそれぞれ所定値λ及び「０」に設定することにより、重み付き最小２乗法アルゴリズムを採用する。
次にモデルパラメータのドリフトについて説明する。図６に示すように、モデルパラメータがある程度収束した後に、スロットル弁の摩擦特性などの非線形特性によって生じる残留同定誤差が存在したり、平均値がゼロでない外乱が定常的に加わるような場合には、残留同定誤差が蓄積し、モデルパラメータのドリフトを引き起こす。
【００４３】
このような残留同定誤差は、モデルパラメータの値に反映すべきものではないので、図７（ａ）に示すような不感帯関数Ｆｎｌを用いて不感帯処理を行う。具体的には、下記式（２３）により、修正同定誤差ｉｄｅｎｌ(k)を算出し、この修正同定誤差ｉｄｅｎｌ(k)を用いてモデルパラメータベクトルθ(k)の算出を行う。すなわち、上記式（１５）に代えて下記式（１５ａ）を用いる。これにより、上記要求Ｂ３）を満たすことができる。
ｉｄｅｎｌ(k)＝Ｆｎｌ（ｉｄｅ(k)）          （２３）
θ(k)＝θ(k-1)＋ＫＰ(k)ｉｄｅｎｌ(k)        （１５ａ）
【００４４】
なお、不感帯関数Ｆｎｌは、図７（ａ）に示すものに限るものではなく、例えば同図（ｂ）に示すような不連続不感帯関数、または同図（ｃ）に示すような不完全不感帯関数を用いてもよい。ただし、不完全不感帯関数を用いた場合には、ドリフトを完全に防止することはできない。
【００４５】
また、残留同定誤差は、スロットル弁開度ＴＨの変動量に応じてその振幅が変化する。そこで、本実施形態では、図７に示す不感帯の幅を定義する不感帯幅パラメータＥＩＤＮＲＬＭＴを、下記式（２４）により算出される、目標スロットル弁開度ＴＨＲの変化量の二乗平均値ＤＤＴＨＲＳＱＡに応じて設定する（具体的には、二乗平均値ＤＤＴＨＲＳＱＡが増加するほど、不感帯幅パラメータＥＩＤＮＲＬＭＴが増加するように設定する）ようにしている。これにより、モデルパラメータの値に反映させるべき同定誤差を、残留同定誤差として無視してしまうことを防止することができる。式（２４）のＤＤＴＨＲは、目標スロットル弁開度ＴＨＲの変化量であり、下記式（２５）により算出される。
【数４】
0003819259.tif 000008
【００４６】
ここで、スロットル弁開度偏差量ＤＴＨは目標値ＤＴＨＲへ適応スライディングモードコントローラ２１により制御されているため、同様に式（２５）の目標値ＤＴＨＲをスロットル弁開度偏差量ＤＴＨへ変更し、スロットル弁開度偏差量ＤＴＨの変化量ＤＤＴＨを算出し、式（２４）のＤＤＴＨＲをＤＤＴＨに代えて得られる二乗平均値ＤＤＴＨＲＳＱＡにより不感帯幅パラメータＥＩＤＮＲＬＭＴを変更することもできる。
【００４７】
また制御系のロバスト性をさらに高めるためには、適応スライディングモードコントローラ２１をより安定化させることが有効である。そこで本実施形態では、前記式（１５）により算出されたモデルパラメータベクトルθ(k)の各要素ａ１’，ａ２’，ｂ１’及びｃ１’についてリミット処理を施し、修正モデルパラメータベクトルθＬ(k)（θＬ(k)T＝［ａ１，ａ２，ｂ１，ｃ１］）を算出する。そして、適応スライディングモードコントローラ２１は、修正モデルパラメータベクトルθＬ(k)を用いて、スライディングモード制御を実行する。なおリミット処理の詳細については、フローチャートを参照して後述する。
【００４８】
次に状態予測器２３による予測偏差量ＰＲＥＤＴＨの算出方法を説明する。
先ず下記式（２６）〜（２９）により、マトリクスＡ及びＢと、ベクトルＸ(k)及びＵ(k)を定義する。
【数５】
0003819259.tif 000009
これらのマトリクスＡ，Ｂと、ベクトルＸ(k)，Ｕ(k)を用いて、制御対象モデルを定義する前記式（１）を書き直すと、下記式（３０）が得られる。
Ｘ(k+1)＝ＡＸ(k)＋ＢＵ(k-d)              （３０）
【００４９】
式（３０）からＸ(k+d)を求めると、下記式（３１）が得られる。
【数６】
0003819259.tif 000010
ここで、リミット処理前のモデルパラメータａ１’，ａ２’，ｂ１’及びｃ１’を用いてマトリクスＡ’及びＢ’を下記式（３２）及び（３３）により定義すると、予測ベクトルＸＨＡＴ(k+d)は、下記式（３４）で与えられる。
【数７】
0003819259.tif 000011
【００５０】
予測ベクトルＸＨＡＴ(k+d)の第１行の要素であるＤＴＨＨＡＴ(k+d)が、予測偏差量ＰＲＥＤＴＨ(k)であり、下記式（３５）で与えられる。
0003819259.tif 000012
ここで、α１はマトリクスＡ’dの１行１列要素、α２はマトリクスＡ’dの１行２列要素、βiはマトリクスＡ’d-iＢ’の１行１列要素、γiはマトリクスＡ’d-iＢ’の１行２列要素である。
【００５１】
式（３５）により算出される予測偏差量ＰＲＥＤＴＨ(k)を、前記式（９）に適用し、さらに目標値ＤＴＨＲ(k+d+1)，ＤＴＨＲ(k+d)，及びＤＴＨＲ(k+d-1)をそれぞれＤＴＨＲ(k)，ＤＴＨＲ(k-1)，及びＤＴＨＲ(k-2)に置き換えることにより、下記式（９ａ）が得られる。式（９ａ）により、等価制御入力Ｕｅｑ(k)を算出する。
【数８】
0003819259.tif 000013
【００５２】
また、式（３５）により算出される予測偏差量ＰＲＥＤＴＨ(k)を用いて、下記式（３６）により予測切替関数値σｐｒｅ(k)を定義し、到達則入力Ｕｒｃｈ(k)及び適応則入力Ｕａｄｐ(k)を、それぞれ下記式（１０ａ）及び（１１ａ）により算出する。
0003819259.tif 000014
【数９】
0003819259.tif 000015
【００５３】
次にモデルパラメータｃ１’は、前述したように、デフォルト開度ＴＨＤＥＦのずれ及び外乱を示すパラメータである。したがって、図８に示すように、外乱によって変動するが、デフォルト開度ずれは比較的短い期間内でみればほぼ一定とみなせる。そこで、本実施形態では、モデルパラメータｃ１’を統計処理し、その変動の中心値をデフォルト開度ずれｔｈｄｅｆａｄｐとして算出し、スロットル弁開度偏差量ＤＴＨ及び目標値ＤＴＨＲの算出に用いることとした。
【００５４】
統計処理の手法には、一般に最小２乗法が知られているが、この最小２乗法による統計処理は、通常、ある一定期間内のデータ、すなわち同定されたモデルパラメータｃ１’をすべてメモリに格納しておき、ある時点で一括演算を行うことによって実行される。ところが、この一括演算法では、すべてのデータを格納するために膨大な容量のメモリが必要となり、さらに逆行列演算が必要となって演算量の増大を招く。
【００５５】
そこで本実施形態では、前記式（１５）〜（２１）で示される適応制御の逐次型最小２乗法アルゴリズムを、統計処理に応用し、モデルパラメータｃ１の最小２乗中心値を、デフォルト開度ずれｔｈｄｅｆａｄｐとして算出するようにしている。
【００５６】
具体的には、前記式（１５）〜（２１）のθ(k)及びθ(k)Tをｔｈｄｅｆａｄｐに置換し、ζ(k)及びζ(k)Tを「１」に置換し、ｉｄｅ(k)をｅｃ１(k)に置換し、ＫＰ(k)をＫＰＴＨ(k)に置換し、Ｐ(k)をＰＴＨ(k)に置換し、λ１及びλ２をそれぞれλ１’及びλ２’に置換することにより、下記式（３７）〜（４０）を得る。
【数１０】
0003819259.tif 000016
【００５７】
係数λ１’及びλ２’の設定により、前述した４つのアルゴリズムの何れかを選択可能であるが、式（３９）においては、係数λ１’を０または１以外の所定値に設定し、係数λ２’を１に設定することにより、重み付き最小２乗法を採用した。
【００５８】
上記式（３７）〜（４０）の演算においては、記憶すべき値はｔｈｄｅｆａｄｐ(k+1)及びＰＴＨ(k+1)のみであり、また逆行列演算は不要である。したがって、逐次型最小２乗法アルゴリズムを採用することにより、一般的な最小２乗法の欠点を克服しつつ、最小２乗法によるモデルパラメータｃ１の統計処理を行うことができる。
【００５９】
統計処理の結果得られるデフォルト開度ずれｔｈｄｅｆａｄｐは、前記式（２）及び（３）に適用され、式（２）及び（３）に代えて下記式（４１）及び（４２）により、スロットル弁開度偏差量ＤＴＨ(k)及び目標値ＤＴＨＲ(k)が算出される。
ＤＴＨ(k)＝ＴＨ(k)−ＴＨＤＥＦ＋ｔｈｄｅｆａｄｐ          （４１）
ＤＴＨＲ(k)＝ＴＨＲ(k)−ＴＨＤＥＦ＋ｔｈｄｅｆａｄｐ      （４２）
【００６０】
式（４１）及び（４２）を使用することにより、デフォルト開度ＴＨＤＥＦが、ハードウエアの特性ばらつき、あるいは経時変化により、設計値からずれた場合でも、そのずれを補償して正確な制御を行うことができる。
【００６１】
次に上述した適応スライディングモードコントローラ２１、モデルパラメータ同定器２２及び状態予測器２３の機能を実現するための、ＥＣＵ７のＣＰＵにおける演算処理を説明する。
【００６２】
図９は、スロットル弁開度制御の全体フローチャートであり、この処理は所定時間（例えば２ｍｓｅｃ）毎にＥＣＵ７のＣＰＵで実行される。
ステップＳ１１では、図１０に示す状態変数設定処理を実行する。すなわち、式（４１）及び（４２）の演算を実行し、スロットル弁開度偏差量ＤＴＨ(k)及び目標値ＤＴＨＲ(k)を算出する（図１０，ステップＳ２１及びＳ２２）。なお、今回値であることを示す(k)は、省略して示す場合がある。
【００６３】
ステップＳ１２では、図１１に示すモデルパラメータ同定器の演算、すなわち前記式（１５ａ）によるモデルパラメータベクトルθ(k)の算出処理を実行し、さらにリミット処理を実行して修正モデルパラメータベクトルθＬ(k)を算出する。
【００６４】
続くステップＳ１３では、図２１に示す状態予測器の演算を実行し、予測偏差量ＰＲＥＤＴＨ(k)を算出する。
次いでステップＳ１２で算出した修正モデルパラメータベクトルθＬ(k)を用いて、図２２に示す制御入力Ｕｓｌ(k)の演算処理を実行する（ステップＳ１４）。すなわち、等価制御入力Ｕｅｑ、到達則入力Ｕｒｃｈ(k)及び適応則入力Ｕａｄｐ(k)を算出し、それらの入力の総和として、制御入力Ｕｓｌ(k)（＝デューティ比ＤＵＴ(k)）を算出する。
【００６５】
続くステップＳ１６では、図２９に示すスライディングモードコントローラの安定判別処理を実行する。すなわち、リアプノフ関数の微分値に基づく安定判別を行い、安定判別フラグＦＳＭＣＳＴＡＢの設定を行う。この安定判別フラグＦＳＭＣＳＴＡＢは、「１」に設定されると適応スライディングモードコントローラ２１が不安定となっていることを示す。安定判別フラグＦＳＭＣＳＴＡＢが「１」に設定され、適応スライディングモードコントローラ２１が不安定となったときは、切換関数設定パラメータＶＰＯＬＥを安定化所定値ＸＰＯＬＥＳＴＢに設定する（図２４、ステップＳ２３１，Ｓ２３２参照）とともに、等価制御入力Ｕｅｑを「０」とし、到達則入力Ｕｒｃｈ及び適応則入力Ｕａｄｐのみによる制御に切り換えることにより、制御の安定化を図る（図２２、ステップＳ２０６，Ｓ２０８参照）。適応スライディングモードコントローラ２１が不安定となったときは、さらに到達則入力Ｕｒｃｈ及び適応則入力Ｕａｄｐの算出式を変更する。すなわち、到達則制御ゲインＦ及び適応則制御ゲインＧの値を、コントローラ２１を安定化させる値に変更するとともに、モデルパラメータｂ１を使用しないで、到達則入力Ｕｒｃｈ及び適応則入力Ｕａｄｐを算出する（図２７，２８参照）。以上のような安定化処理により、適応スライディングモードコントローラ２１の不安定状態を早期に終息させ、安定な状態に戻すことができる。
【００６６】
ステップＳ１７では、図３０に示すｔｈｄｅｆａｄｐ算出処理を実行し、デフォルト開度ずれｔｈｄｅｆａｄｐを算出する。
【００６７】
図１１は、モデルパラメータ同定器２２の演算処理のフローチャートである。ステップＳ３１では、式（２０）によりゲイン係数ベクトルＫＰ(k)を算出し、次いで式（１８）により推定スロットル弁開度偏差量ＤＴＨＨＡＴ(k)を算出する（ステップＳ３２）。ステップＳ３３では、図１２に示すｉｄｅｎｌ(k)の演算処理を実行し、ステップＳ３２で算出した推定スロットル弁開度偏差量ＤＴＨＨＡＴ(k)を、式（１７）に適用して同定誤差ｉｄｅ(k)を算出するとともに、図７（ａ）に示す関数を用いた不感帯処理を行い、修正同定誤差ｉｄｅｎｌを算出する。
【００６８】
続くステップＳ３４では、式（１５ａ）により、モデルパラメータベクトルθ(k)を算出し、次いでモデルパラメータベクトルθ(k)の安定化処理を実行する（ステップＳ３５）。すなわち各モデルパラメータのリミット処理を行って修正モデルパラメータベクトルθＬ(k)を算出する。
【００６９】
図１２は、図１１のステップＳ３３で実行されるｉｄｅｎｌ(k)演算処理のフローチャートである。
ステップＳ５１では、式（１７）により同定誤差ｉｄｅ(k)を算出する。次いで、ステップＳ５３でインクリメントされるカウンタＣＮＴＩＤＳＴの値が、制御対象のむだ時間ｄに応じて設定される所定値ＸＣＮＴＩＤＳＴ（例えば、むだ時間ｄ＝２に対応して、「３」に設定される）より大きいか否かを判別する（ステップＳ５２）。カウンタＣＮＴＩＤＳＴの初期値は「０」であるので、最初はステップＳ５３に進み、カウンタＣＮＴＩＤＳＴを「１」だけインクリメントし、同定誤差ｉｄｅ(k)を「０」に設定して（ステップＳ５４）、ステップＳ５５に進む。モデルパラメータベクトルθ(k)の同定を開始した直後は、式（１７）による演算で正しい同定誤差が得られないので、ステップＳ５２〜Ｓ５４により、式（１７）による演算結果を用いずに同定誤差ｉｄｅ(k)を「０」に設定するようにしている。
【００７０】
ステップＳ５２の答が肯定（ＹＥＳ）となると、直ちにステップＳ５５に進む。
ステップＳ５５では、同定誤差ｉｄｅ(k)のローパスフィルタ処理を行う。具体的には、ローパス特性を有する制御対象のモデルパラメータを同定する場合、最小２乗同定アルゴリズムの同定誤差ｉｄｅ(k)に対する同定重みは、図１３（ａ）に実線Ｌ１で示すような周波数特性を有するが、これをローパスフィルタ処理により、破線Ｌ２で示すように高周波成分を減衰させた特性とする。これは、以下の理由による。
【００７１】
実際の制御対象及びこれをモデル化した制御対象モデルの周波数特性は、それぞれ図１３（ｂ）に実線Ｌ３及びＬ４で示すようになる。すなわち、ローパス特性（高周波成分が減衰する特性）を有する制御対象について、モデルパラメータ同定器２２によりモデルパラメータを同定すると、同定されたモデルパラメータは高周波域阻止特性に大きく影響されたものとなるため、低周波域での制御対象モデルのゲインが実際の特性より低くなる。その結果、スライディングモードコントローラ２１による制御入力の補正が過補正となる。
【００７２】
そこで、ローパスフィルタ処理により同定アルゴリズムの重みの周波数特性を、図１３（ａ）に破線Ｌ２で示すような特性とすることにより、制御対象モデルの周波数特性を、同図（ｂ）に破線Ｌ５で示すような特性とし、実際の周波数特性と一致させ、あるいは制御対象モデルのゲインが実際のゲインよりやや高くなるように修正することとした。これにより、コントローラ２１による過補正を防止し、制御系のロバスト性を高めて制御系をより安定化させることができる。
【００７３】
なお、ローパスフィルタ処理は、同定誤差の過去値ｉｄｅ(k-i)（例えばi＝１〜１０に対応する１０個の過去値）をリングバッファに記憶し、それらの過去値に重み係数を乗算して加算することにより実行する。
さらに、同定誤差ｉｄｅ(k)は、前記式（１７）、（１８）及び（１９）を用いて算出しているため、スロットル弁開度偏差量ＤＴＨ(k)と、推定スロットル弁開度偏差量ＤＴＨＨＡＴ(k)とに同様のローパスフィルタ処理を行うこと、あるいは、スロットル弁開度偏差量ＤＴＨ（k-1）及びＤＴＨ(k-2)と、デューティ比ＤＵＴ(k-d-1)とに同様のローパスフィルタ処理を行うことによっても同様の効果が得られる。
【００７４】
図１２に戻り、続くステップＳ５６では、図１４に示す不感帯処理を実行する。図１４のステップＳ６１では、前記式（２４）において例えばｎ＝５として、目標スロットル弁開度ＴＨＲの変化量の二乗平均値ＤＤＴＨＲＳＱＡを算出し、次いで二乗平均値ＤＤＴＨＲＳＱＡに応じて図１５に示すＥＩＤＮＲＬＭＴテーブルを検索し、不感帯幅パラメータＥＩＤＮＲＬＭＴを算出する（ステップＳ６２）。
【００７５】
ステップＳ６３では、同定誤差ｉｄｅ(k)が不感帯幅パラメータＥＩＤＮＲＬＭＴより大きいか否かを判別し、ｉｄｅ(k)＞ＥＩＤＮＲＬＭＴであるときは、下記式（４３）により、修正同定誤差ｉｄｅｎｌ(k)算出する（ステップＳ６７）。
ｉｄｅｎｌ(k)＝ｉｄｅ(k)−ＥＩＤＮＲＬＭＴ      （４３）
【００７６】
ステップＳ６３の答が否定（ＮＯ）であるときは、さらに同定誤差ｉｄｅ(k)が不感帯幅パラメータＥＩＤＮＲＬＭＴに負号を付した値より小さいか否かを判別し（ステップＳ６４）、ｉｄｅ(k)＜−ＥＩＤＮＲＬＭＴであるときは、下記式（４４）により、修正同定誤差ｉｄｅｎｌ(k)算出する（ステップＳ６５）。
ｉｄｅｎｌ(k)＝ｉｄｅ(k)＋ＥＩＤＮＲＬＭＴ      （４４）
また同定誤差ｉｄｅ(k)が±ＥＩＤＮＲＬＭＴの範囲内にあるときは、修正同定誤差ｉｄｅｎｌ(k)を「０」とする（ステップＳ６６）。
【００７７】
図１６は、図１１のステップＳ３５で実行されるθ(k)の安定化処理のフローチャートである。
ステップＳ７１では、この処理で使用されるフラグＦＡ１ＳＴＡＢ，ＦＡ２ＳＴＡＢ，ＦＢ１ＬＭＴ及びＦＣ１ＬＭＴをそれぞれ「０」に設定することにより、初期化を行う。そして、ステップＳ７２では、図１７に示すａ１’及びａ２’のリミット処理を実行し、ステップＳ７３では、図１９に示すｂ１’のリミット処理を実行し、ステップＳ７４では、図２０に示すｃ１’のリミット処理を実行する。
【００７８】
図１７は、図１６のステップＳ７２で実行されるａ１’及びａ２’のリミット処理のフローチャートである。図１８は、図１７の処理を説明するための図であり、図１７とともに参照する。
図１８においては、リミット処理が必要なモデルパラメータａ１’とａ２’の組み合わせが「×」で示され、また安定なモデルパラメータａ１’及びａ２’の組み合わせの範囲がハッチングを付した領域（以下「安定領域」という）で示されている。図１７の処理は、安定領域外にあるモデルパラメータａ１’及びａ２’の組み合わせを、安定領域内（「○」で示す位置）に移動させる処理である。
【００７９】
ステップＳ８１では、モデルパラメータａ２’が、所定ａ２下限値ＸＩＤＡ２Ｌ以上か否かを判別する。所定ａ２下限値ＸＩＤＡ２Ｌは、「−１」より大きい負の値に設定される。所定ａ２下限値ＸＩＤＡ２Ｌは、「−１」に設定しても、安定な修正モデルパラメータａ１，ａ２が得られるが、前記式（２６）で定義される行列Ａのｎ乗が不安定となる（これは、ａ１’及びａ２’が発散はしないが振動することを意味する）場合があるので、「−１」より大きな値に設定される。
【００８０】
ステップＳ８１でａ２’＜ＸＩＤＡ２Ｌであるときは、修正モデルパラメータａ２を、この下限値ＸＩＤＡ２Ｌに設定するとともに、ａ２安定化フラグＦＡ２ＳＴＡＢを「１」に設定する。ａ２安定化フラグＦＡ２ＳＴＡＢは「１」に設定されると、修正モデルパラメータａ２を下限値ＸＩＤＡ２Ｌに設定したことを示す。図１８においては、ステップＳ８１及びＳ８２のリミット処理Ｐ１によるモデルパラメータの修正が、「Ｐ１」を付した矢線（矢印を付した線）で示されている。
【００８１】
ステップＳ８１の答が肯定（ＹＥＳ）、すなわちａ２’≧ＸＩＤＡ２Ｌであるときは、修正モデルパラメータａ２はモデルパラメータａ２’に設定される（ステップＳ８３）。
ステップＳ８４及びステップＳ８５では、モデルパラメータａ１’が、所定ａ１下限値ＸＩＤＡ１Ｌと所定ａ１上限値ＸＩＤＡ１Ｈできまる範囲内にあるか否かを判別する。所定ａ１下限値ＸＩＤＡ１Ｌは、−２以上且つ０より小さい値に設定され、所定ａ１上限値ＸＩＤＡ１Ｈは、例えば２に設定される。
【００８２】
ステップＳ８４及びＳ８５の答がいずれも肯定（ＹＥＳ）であるとき、すなわちＸＩＤＡ１Ｌ≦ａ１’≦ＸＩＤＡ１Ｈであるときは、修正モデルパラメータａ１はモデルパラメータａ１’に設定される（ステップＳ８８）。
一方ａ１’＜ＸＩＤＡ１Ｌであるときは、修正モデルパラメータａ１を下限値ＸＩＤＡ１Ｌに設定するとともに、ａ１安定化フラグＦＡ１ＳＴＡＢを「１」に設定する（ステップＳ８４，Ｓ８６）。またａ１’＞ＸＩＤＡ１Ｈであるときは、修正モデルパラメータａ１を上限値ＸＩＤＡ１Ｈに設定するとともに、ａ１安定化フラグＦＡ１ＳＴＡＢを「１」に設定する（ステップＳ８５，Ｓ８７）。ａ１安定化フラグＦＡ１ＳＴＡＢは、「１」に設定されると、修正モデルパラメータａ１を下限値ＸＩＤＡ１Ｌまたは上限値ＸＩＤＡ１Ｈに設定したことを示す。図１８においては、ステップＳ８４〜Ｓ８７のリミット処理Ｐ２によるモデルパラメータの修正が、「Ｐ２」を付した矢線で示されている。
【００８３】
ステップＳ９０では、修正モデルパラメータａ１の絶対値と修正モデルパラメータａ２の和が、所定安定判定値ＸＡ２ＳＴＡＢ以下であるか否かを判別する。所定安定判定値ＸＡ２ＳＴＡＢは、「１」に近く「１」より小さい値（例えば０．９９）に設定される。
【００８４】
図１８に示す直線Ｌ１及びＬ２は、下記式（４５）を満たす直線である。
ａ２＋｜ａ１｜＝ＸＡ２ＳＴＡＢ        （４５）
したがって、ステップＳ９０は、修正モデルパラメータａ１及びａ２の組み合わせが、図１８に示す直線Ｌ１及びＬ２の線上またはその下側にあるか否かを判別している。ステップＳ９０の答が肯定（ＹＥＳ）であるときは、修正モデルパラメータａ１及びａ２の組み合わせは、図１８の安定領域内にあるので、直ちに本処理を終了する。
【００８５】
一方ステップＳ９０の答が否定（ＮＯ）であるときは、修正モデルパラメータａ１が、所定安定判定値ＸＡ２ＳＴＡＢから所定ａ２下限値ＸＩＤＡ２Ｌを減算した値（ＸＩＤＡ２Ｌ＜０であるので、ＸＡ２ＳＴＡＢ−ＸＩＤＡ２Ｌ＞ＸＡ２ＳＴＡＢが成立する）以下か否かを判別する（ステップＳ９１）。そして修正モデルパラメータａ１が（ＸＡ２ＳＴＡＢ−ＸＩＤＡ２Ｌ）以下であるときは、修正モデルパラメータａ２を（ＸＡ２ＳＴＡＢ−｜ａ１｜）に設定するとともに、ａ２安定化フラグＦＡ２ＳＴＡＢを「１」に設定する（ステップＳ９２）。
【００８６】
ステップＳ９１で修正モデルパラメータａ１が（ＸＡ２ＳＴＡＢ−ＸＩＤＡ２Ｌ）より大きいときは、修正モデルパラメータａ１を（ＸＡ２ＳＴＡＢ−ＸＩＤＡ２Ｌ）に設定し、修正モデルパラメータａ２を所定ａ２下限値ＸＩＤＡ２Ｌに設定するとともに、ａ１安定化フラグＦＡ１ＳＴＡＢ及びａ２安定化フラグＦＡ２ＳＴＡＢをともに「１」に設定する（ステップＳ９３）。
【００８７】
図１８においては、ステップＳ９１及びＳ９２のリミット処理Ｐ３によるモデルパラメータの修正が、「Ｐ３」を付した矢線で示されており、またステップＳ９１及びＳ９３のリミット処理Ｐ４によるモデルパラメータの修正が、「Ｐ４」を付した矢線で示されている。
【００８８】
以上のように図１７の処理により、モデルパラメータａ１’及びａ２’が図１８に示す安定領域内に入るようにリミット処理が実行され、修正モデルパラメータａ１及びａ２が算出される。
【００８９】
図１９は、図１６のステップＳ７３で実行されるｂ１’のリミット処理のフローチャートである。
ステップＳ１０１及びＳ１０２では、モデルパラメータｂ１’が、所定ｂ１下限値ＸＩＤＢ１Ｌと所定ｂ１上限値ＸＩＤＢ１Ｈできまる範囲内にあるか否かを判別する。所定ｂ１下限値ＸＩＤＢ１Ｌは、正の所定値（例えば０．１）に設定され、所定ｂ１上限値ＸＩＤＢ１Ｈは、例えば「１」に設定される。
【００９０】
ステップＳ１０１及びＳ１０２の答がいずれも肯定（ＹＥＳ）であるとき、すなわちＸＩＤＢ１Ｌ≦ｂ１’≦ＸＩＤＢ１Ｈであるときは、修正モデルパラメータｂ１はモデルパラメータｂ１’に設定される（ステップＳ１０５）。
一方ｂ１’＜ＸＩＤＢ１Ｌであるときは、修正モデルパラメータｂ１を下限値ＸＩＤＢ１Ｌに設定するとともに、ｂ１リミットフラグＦＢ１ＬＭＴを「１」に設定する（ステップＳ１０１，Ｓ１０４）。またｂ１’＞ＸＩＤＢ１Ｈであるときは、修正モデルパラメータｂ１を上限値ＸＩＤＢ１Ｈに設定するとともに、ｂ１リミットフラグＦＢ１ＬＭＴを「１」に設定する（ステップＳ１０２，Ｓ１０３）。ｂ１リミットフラグＦＢ１ＬＭＴは、「１」に設定されると、修正モデルパラメータｂ１を下限値ＸＩＤＢ１Ｌまたは上限値ＸＩＤＢ１Ｈに設定したことを示す。
【００９１】
図２０は、図１６のステップＳ７４で実行されるモデルパラメータｃ１’のリミット処理のフローチャートである。
ステップＳ１１１及びＳ１１２では、モデルパラメータｃ１’が、所定ｃ１下限値ＸＩＤＣ１Ｌと所定ｃ１上限値ＸＩＤＣ１Ｈできまる範囲内にあるか否かを判別する。所定ｃ１下限値ＸＩＤＣ１Ｌは、例えば−６０に設定され、所定ｃ１上限値ＸＩＤＣ１Ｈは、例えば６０に設定される。
【００９２】
ステップＳ１１１及びＳ１１２の答がいずれも肯定（ＹＥＳ）であるとき、すなわちＸＩＤＣ１Ｌ≦ｃ１’≦ＸＩＤＣ１Ｈであるときは、修正モデルパラメータｃ１はモデルパラメータｃ１’に設定される（ステップＳ１１５）。
一方ｃ１’＜ＸＩＤＣ１Ｌであるときは、修正モデルパラメータｃ１を下限値ＸＩＤＣ１Ｌに設定するとともに、ｃ１リミットフラグＦＣ１ＬＭＴを「１」に設定する（ステップＳ１１１，Ｓ１１４）。またｃ１’＞ＸＩＤＣ１Ｈであるときは、修正モデルパラメータｃ１を上限値ＸＩＤＣ１Ｈに設定するとともに、ｃ１リミットフラグＦＣ１ＬＭＴを「１」に設定する（ステップＳ１１２，Ｓ１１３）。ｃ１リミットフラグＦＣ１ＬＭＴは、「１」に設定されると、修正モデルパラメータｃ１を下限値ＸＩＤＣ１Ｌまたは上限値ＸＩＤＣ１Ｈに設定したことを示す。
【００９３】
図２１は、図９のステップＳ１３で実行される状態予測器の演算処理のフローチャートである。
ステップＳ１２１では、マトリクス演算を実行して前記式（３５）の行列要素α１，α２，β１〜β２、及びγ１〜γｄを算出する。
ステップＳ１２２では、式（３５）により、予測偏差量ＰＲＥＤＴＨ(k)を算出する。
【００９４】
図２２は、図９のステップＳ１４で実行される、スロットル弁駆動装置１０への制御入力Ｕｓｌ（＝ＤＵＴ）を算出する処理のフローチャートである。
ステップＳ２０１では、図２３に示す予測切換関数値σｐｒｅの演算処理を実行し、ステップＳ２０２では、図２６に示す予測切換関数値σｐｒｅの積算値の演算処理を実行する。ステップＳ２０３では、前記式（９）により、等価制御入力Ｕｅｑを算出する。ステップＳ２０４では、図２７に示す到達則入力Ｕｒｃｈの演算処理を実行し、ステップＳ２０５では、図２８に示す適応則入力Ｕａｄｐの演算処理を実行する。
【００９５】
ステップＳ２０６では、後述する図２９の処理で設定される安定判別フラグＦＳＭＣＳＴＡＢが「１」であるか否かを判別する。安定判別フラグＦＳＭＣＳＴＡＢは、「１」に設定されると、適応スライディングモードコントローラ２１が不安定となっていることを示す。
【００９６】
ステップＳ２０６でＦＳＭＣＳＴＡＢ＝０であって適応スライディングモードコントローラ２１が安定であるときは、ステップＳ２０３〜Ｓ２０５で算出された制御入力Ｕｅｑ，Ｕｒｃｈ及びＵａｄｐを加算することにより、制御入力Ｕｓｌを算出する（ステップＳ２０７）。
【００９７】
一方ＦＳＭＣＳＴＡＢ＝１であって適応スライディングモードコントローラ２１が不安定となっているときは、到達則入力Ｕｒｃｈ及び適応則入力Ｕａｄｐの和を、制御入力Ｕｓｌとして算出する。すなわち、等価制御入力Ｕｅｑを、制御入力Ｕｓｌの算出に使用しないようにする。これにより、制御系が不安定化することを防止することができる。
【００９８】
続くステップＳ２０９及びＳ２１０では、算出した制御入力Ｕｓｌが所定上下限値ＸＵＳＬＨ及びＸＵＳＬＬの範囲内にあるか否かを判別し、制御入力Ｕｓｌが所定上下限値の範囲内にあるときは、直ちに本処理を終了する。一方、制御入力Ｕｓｌが所定下限値ＸＵＳＬＬ以下であるときは、制御入力Ｕｓｌを所定下限値ＸＵＳＬＬに設定し（ステップＳ２０９，Ｓ２１２）、制御入力Ｕｓｌが所定上限値ＸＵＳＬＨ以上であるときは、制御入力Ｕｓｌを所定上限値ＸＵＳＬＨに設定する（ステップＳ２１０，Ｓ２１１）。
【００９９】
図２３は、図２２のステップＳ２０１で実行される予測切換関数値σｐｒｅの演算処理のフローチャートである。
ステップＳ２２１では、図２４に示す切換関数設定パラメータＶＰＯＬＥの演算処理を実行し、次いで前記式（３６）により、予測切換関数値σｐｒｅ(k)の演算を実行する（ステップＳ２２２）。
【０１００】
続くステップＳ２２３及びＳ２２４では、算出した予測切換関数値σｐｒｅ(k)が所定上下限値ＸＳＧＭＨ及びＸＳＧＭＬの範囲内にあるか否かを判別し、予測切換関数値σｐｒｅ(k)が所定上下限値の範囲内にあるときは、直ちに本処理を終了する。一方、予測切換関数値σｐｒｅ(k)が所定下限値ＸＳＧＭＬ以下であるときは、予測切換関数値σｐｒｅ(k)を所定下限値ＸＳＧＭＬに設定し（ステップＳ２２３，Ｓ２２５）、予測切換関数値σｐｒｅ(k)が所定上限値ＸＳＧＭＨ以上であるときは、予測切換関数値σｐｒｅ(k)を所定上限値ＸＳＧＭＨに設定する（ステップＳ２２４，Ｓ２２６）。
【０１０１】
図２４は、図２３のステップＳ２２１で実行される切換関数設定パラメータＶＰＯＬＥの演算処理のフローチャートである。
ステップＳ２３１では、安定判別フラグＦＳＭＣＳＴＡＢが「１」であるか否かを判別し、ＦＳＭＣＳＴＡＢ＝１であって適応スライディングモードコントローラ２１が不安定となっているときは、切換関数設定パラメータＶＰＯＬＥを安定化所定値ＸＰＯＬＥＳＴＢに設定する（ステップＳ２３２）。安定化所定値ＸＰＯＬＥＳＴＢは、「−１」より大きく「−１」に非常に近い値（例えば−０．９９９）に設定される。
【０１０２】
ＦＳＭＣＳＴＡＢ＝０であって適応スライディングモードコントローラ２１が安定であるときは、下記式（４６）により目標値ＤＴＨＲ(k)の変化量ＤＤＴＨＲ(k)を算出する（ステップＳ２３３）。
ＤＤＴＨＲ(k)＝ＤＴＨＲ(k)−ＤＴＨＲ(k-1)      （４６）
ステップＳ２３４では、スロットル弁開度偏差量ＤＴＨ及びステップＳ２３３で算出される目標値の変化量ＤＤＴＨＲに応じてＶＰＯＬＥマップを検索し、切換関数設定パラメータＶＰＯＬＥを算出する。ＶＰＯＬＥマップは、図２５（ａ）に示すように、スロットル弁開度偏差量ＤＴＨが０近傍の値をとるとき（スロットル弁開度ＴＨがデフォルト開度ＴＨＤＥＦ近傍の値をとるとき）増加し、０近傍以外の値ではスロットル弁開度偏差量ＤＴＨの変化に対してはほぼ一定の値となるように設定されている。またＶＰＯＬＥマップは、同図（ｂ）に実線で示すように、目標値の変化量ＤＤＴＨＲが増加するほど、ＶＰＯＬＥ値が増加するように設定されているが、スロットル弁開度偏差量ＤＴＨが０近傍の値をとるときには、同図に破線で示すように目標値の変化量ＤＤＴＨＲが０近傍の値をとるときに増加するように設定されている。
【０１０３】
すなわち、スロットル弁開度の目標値ＤＴＨＲが減少方向の変化が大きいときには、切換関数設定パラメータＶＰＯＬＥは比較的小さな値に設定される。これにより、スロットル弁３がスロットル全閉ストッパに衝突することを防止することができる。また、デフォルト開度ＴＨＤＥＦ近傍においては、切換関数設定パラメータＶＰＯＬＥが比較的大きな値に設定され、デフォルト開度ＴＨＤＥＦ近傍における制御性を向上させることができる。
【０１０４】
なお、同図（ｃ）に示すように、スロットル弁開度ＴＨが全閉開度近傍または全開開度近傍にあるときは、切換関数設定パラメータＶＰＯＬＥを減少させるように設定してもよい。これにより、スロットル弁開度ＴＨが全閉開度近傍または全開開度近傍にあるときは、目標開度ＴＨＲに対する追従速度が遅くなり、スロットル弁３の全閉ストッパ（全開開度でもストッパとして機能する）への衝突防止をより確実にすることができる。
【０１０５】
続くステップＳ２３５及びＳ２３６では、算出した切換関数設定パラメータＶＰＯＬＥが所定上下限値ＸＰＯＬＥＨ及びＸＰＯＬＥＬの範囲内にあるか否かを判別し、切換関数設定パラメータＶＰＯＬＥが所定上下限値の範囲内にあるときは、直ちに本処理を終了する。一方、切換関数設定パラメータＶＰＯＬＥが所定下限値ＸＰＯＬＥＬ以下であるときは、切換関数設定パラメータＶＰＯＬＥを所定下限値ＸＰＯＬＥＬに設定し（ステップＳ２３６，Ｓ２３８）、切換関数設定パラメータＶＰＯＬＥが所定上限値ＸＰＯＬＥＨ以上であるときは、切換関数設定パラメータＶＰＯＬＥを所定上限値ＸＰＯＬＥＨに設定する（ステップＳ２３５，Ｓ２３７）。
【０１０６】
図２６は、図２２のステップＳ２０２で実行される、予測切換関数値σｐｒｅの積算値ＳＵＭＳＩＧＭＡを算出する処理のフローチャートである。積算値ＳＵＭＳＩＧＭＡは、後述する図２８の処理で適応則入力Ｕａｄｐの算出に使用される（前記式（１１ａ）参照）。
【０１０７】
ステップＳ２４１では、下記式（４７）により、積算値ＳＵＭＳＩＧＭＡを算出する。下記式のΔＴは、演算の実行周期である。
ＳＵＭＳＩＧＭＡ(k)＝ＳＵＭＳＩＧＭＡ(k-1)＋σｐｒｅ×ΔＴ  （４７）
続くステップＳ２４２及びＳ２４３では、算出した積算値ＳＵＭＳＩＧＭＡが所定上下限値ＸＳＵＭＳＨ及びＸＳＵＭＳＬの範囲内にあるか否かを判別し、積算値ＳＵＭＳＩＧＭＡが所定上下限値の範囲内にあるときは、直ちに本処理を終了する。一方、積算値ＳＵＭＳＩＧＭＡが所定下限値ＸＳＵＭＳＬ以下であるときは、積算値ＳＵＭＳＩＧＭＡを所定下限値ＸＳＵＭＳＬに設定し（ステップＳ２４２，Ｓ２４４）、積算値ＳＵＭＳＩＧＭＡが所定上限値ＸＳＵＭＳＨ以上であるときは、積算値ＳＵＭＳＩＧＭＡを所定上限値ＸＳＵＭＳＨに設定する（ステップＳ２４３，Ｓ２４５）。
【０１０８】
図２７は、図２２のステップＳ２０４で実行される到達則入力Ｕｒｃｈの演算処理のフローチャートである。
ステップＳ２６１では、安定判別フラグＦＳＭＣＳＴＡＢが「１」であるか否かを判別する。安定判別フラグＦＳＭＣＳＴＡＢが「０」であって適応スライディングモードコントローラ２１が安定であるときは、制御ゲインＦを所定通常ゲインＸＫＲＣＨに設定し（ステップＳ２６２）、下記式（４８）（前記式（１０ａ）と同一の式）により、到達則入力Ｕｒｃｈを算出する（ステップＳ２６３）。
Ｕｒｃｈ＝−Ｆ×σｐｒｅ／ｂ１        （４８）
【０１０９】
一方安定判別フラグＦＳＭＣＳＴＡＢが「１」であって適応スライディングモードコントローラ２１が不安定となったときは、制御ゲインＦを、所定安定化ゲインＸＫＲＣＨＳＴＢに設定し（ステップＳ２６４）、モデルパラメータｂ１を使わない下記式（４９）により到達則入力Ｕｒｃｈを算出する（ステップＳ２６５）。
Ｕｒｃｈ＝−Ｆ×σｐｒｅ              （４９）
【０１１０】
続くステップＳ２６６及びＳ２６７では、算出した到達則入力Ｕｒｃｈが所定上下限値ＸＵＲＣＨＨ及びＸＵＲＣＨＬの範囲内にあるか否かを判別し、到達則入力Ｕｒｃｈが所定上下限値の範囲内にあるときは、直ちに本処理を終了する。一方、到達則入力Ｕｒｃｈが所定下限値ＸＵＲＣＨＬ以下であるときは、到達則入力Ｕｒｃｈを所定下限値ＸＵＲＣＨＬに設定し（ステップＳ２６６，Ｓ２６８）、到達則入力Ｕｒｃｈが所定上限値ＸＵＲＣＨＨ以上であるときは、到達則入力Ｕｒｃｈを所定上限値ＸＵＲＣＨＨに設定する（ステップＳ２６７，Ｓ２６９）。
【０１１１】
このように適応スライディングモードコントローラ２１が不安定となったときは、制御ゲインＦを所定安定化ゲインＸＫＲＣＨＳＴＢに設定するとともに、モデルパラメータｂ１を使用しないで到達則入力Ｕｒｃｈを算出することにより、適応スライディングモードコントローラ２１を安定な状態に戻すことができる。モデルパラメータ同定器２２による同定が不安定となった場合に、適応スライディングモードコントローラ２１が不安定となるので、不安定となったモデルパラメータｂ１を使わないことによって、適応スライディングモードコントローラ２１を安定化することができる。
【０１１２】
図２８は、図２２のステップＳ２０５で実行される適応則入力Ｕａｄｐの演算処理のフローチャートである。
ステップＳ２７１では、安定判別フラグＦＳＭＣＳＴＡＢが「１」であるか否かを判別する。安定判別フラグＦＳＭＣＳＴＡＢが「０」であって適応スライディングモードコントローラ２１が安定であるときは、制御ゲインＧを所定通常ゲインＸＫＡＤＰに設定し（ステップＳ２７２）、下記式（５０）（前記式（１１ａ）に対応する式）により、適応則入力Ｕａｄｐを算出する（ステップＳ２７３）。
Ｕａｄｐ＝−Ｇ×ＳＵＭＳＩＧＭＡ／ｂ１        （５０）
【０１１３】
一方安定判別フラグＦＳＭＣＳＴＡＢが「１」であって適応スライディングモードコントローラ２１が不安定となったときは、制御ゲインＧを、所定安定化ゲインＸＫＡＤＰＳＴＢに設定し（ステップＳ２７４）、モデルパラメータｂ１を使わない下記式（５１）により適応則入力Ｕａｄｐを算出する（ステップＳ２７５）。
Ｕａｄｐ＝−Ｇ×ＳＵＭＳＩＧＭＡ              （５１）
【０１１４】
このように適応スライディングモードコントローラ２１が不安定となったときは、制御ゲインＧを所定安定化ゲインＸＫＡＤＰＳＴＢに設定するとともに、モデルパラメータｂ１を使用しないで適応則入力Ｕａｄｐを算出することにより、適応スライディングモードコントローラ２１を安定な状態に戻すことができる。
【０１１５】
図２９は、図９のステップＳ１６で実行されるスライディングモードコントローラの安定判別処理のフローチャートである。この処理では、リアプノフ関数の微分項に基づく安定判別を行い、安定判別フラグＦＳＭＣＳＴＡＢの設定を行う。
【０１１６】
ステップＳ２８１では下記式（５２）により、切換関数変化量Ｄσｐｒｅを算出し、次いで下記式（５３）により、安定性判別パラメータＳＧＭＳＴＡＢを算出する（ステップＳ２８２）。
Ｄσｐｒｅ＝σｐｒｅ(k)−σｐｒｅ(k-1)                  （５２）
ＳＧＭＳＴＡＢ＝Ｄσｐｒｅ×σｐｒｅ(k)                 （５３）
ステップＳ２８３では、安定性判別パラメータＳＧＭＳＴＡＢが安定性判定閾値ＸＳＧＭＳＴＡＢ以下か否かを判別し、ＳＧＭＳＴＡＢ＞ＸＳＧＭＳＴＡＢであるときは、コントローラ２１が不安定である可能性があると判定して不安定検知カウンタＣＮＴＳＭＣＳＴを「１」だけインクリメントする（ステップＳ２８５）。また、ＳＧＭＳＴＡＢ≦ＸＳＧＭＳＴＡＢであるときは、コントローラ２１が安定であると判定して不安定検知カウンタＣＮＴＳＭＣＳＴのカウント値をインクリメントすることなく保持する（ステップＳ２８４）。
【０１１７】
ステップＳ２８６では、不安定検知カウンタＣＮＴＳＭＣＳＴの値が所定カウント値ＸＳＳＴＡＢ以下か否かを判別する。ＣＮＴＳＭＣＳＴ≦ＸＳＳＴＡＢであるときは、コントローラ２１は安定していると判定し、第１判定フラグＦＳＭＣＳＴＡＢ１を「０」に設定する（ステップＳ２８７）。一方ＣＮＴＳＭＣＳＴ＞ＸＳＳＴＡＢであるときは、コントローラ２１は不安定となっていると判定し、第１判定フラグＦＳＭＣＳＴＡＢ１を「１」に設定する（ステップＳ２８８）。なお、不安定検知カウンタＣＮＴＳＭＣＳＴは、イグニッションスイッチオン時にそのカウント値が「０」に初期化される。
【０１１８】
続くステップＳ２８９では、安定判別期間カウンタＣＮＴＪＵＤＳＴを「１」だけデクリメントし、次いでその安定判別期間カウンタＣＮＴＪＵＤＳＴの値が「０」であるか否かを判別する（ステップＳ２９０）。安定判別期間カウンタＣＮＴＪＵＤＳＴは、イグニッションスイッチオン時に所定判別カウント値ＸＣＪＵＤＳＴに初期化される。したがって、最初はステップＳ２９０の答は否定（ＮＯ）となり、直ちにステップＳ２９５に進む。
【０１１９】
その後安定判別期間カウンタＣＮＴＪＵＤＳＴが「０」となると、ステップＳ２９０からステップＳ２９１に進み、第１判定フラグＦＳＭＣＳＴＡＢ１が「１」であるか否かを判別する。そして、第１判定フラグＦＳＭＣＳＴＡＢ１が「０」であるときは、第２判定フラグＦＳＭＣＳＴＡＢ２を「０」に設定し（ステップＳ２９３）、第１判定フラグＦＳＭＣＳＴＡＢ１が「１」であるときは、第２判定フラグＦＳＭＣＳＴＡＢ２を「１」に設定する（ステップＳ２９２）。
【０１２０】
続くステップＳ２９４では、安定判別期間カウンタＣＮＴＪＵＤＳＴの値を所定判別カウント値ＸＣＪＵＤＳＴに設定するとともに、不安定検知カウンタＣＮＴＳＭＣＳＴの値を「０」に設定し、ステップＳ２９５に進む。
ステップＳ２９５では、安定判別フラグＦＳＭＣＳＴＡＢを、第１判定フラグＦＳＭＣＳＴＡＢ１と第２判定フラグＦＳＭＣＳＴＡＢ２の論理和に設定する。第２判定フラグＦＳＭＣＳＴＡＢ２は、ステップＳ２８６の答が肯定（ＹＥＳ）となり、第１判定フラグＦＳＭＣＳＴＡＢ１が「０」に設定されても、安定判別期間カウンタＣＮＴＪＵＤＳＴの値が「０」となるまでは、「１」に維持される。したがって、安定判別フラグＦＳＭＣＳＴＡＢも、安定判別期間カウンタＣＮＴＪＵＤＳＴの値が「０」となるまでは、「１」に維持される。
【０１２１】
図３０は、図９のステップＳ１７で実行されるデフォルト開度ずれｔｈｄｅｆａｄｐの算出処理のフローチャートである。
ステップＳ２５１では、下記式（５４）により、ゲイン係数ＫＰＴＨ(k)を算出する。
ＫＰＴＨ(k)＝ＰＴＨ(k-1)／（１＋ＰＴＨ(k-1)）      （５４）
【０１２２】
ここでＰＴＨ(k-1)は、本処理の前回実行時にステップＳ２５３で算出されたゲインパラメータである。
ステップＳ２５２では、図１１に示すモデルパラメータ同定器演算処理で算出されるモデルパラメータｃ１’及びステップＳ２５１で算出したゲイン係数ＫＰＴＨ(k)を下記式（５５）に適用し、デフォルト開度ずれｔｈｄｅｆａｄｐ(k)を算出する。
ｔｈｄｅｆａｄｐ(k)＝ｔｈｄｅｆａｄｐ(k-1)
＋ＫＰＴＨ(k)×（ｃ１’−ｔｈｄｅｆａｄｐ(k-1)）
（５５）
【０１２３】
ステップＳ２５３では、下記式（５６）によりゲインパラメータＰＴＨ(k)を算出する。
0003819259.tif 000017
式（５６）は、前記式（３９）においてλ１’及びλ２’を、それぞれ所定値ＸＤＥＦＡＤＰＷ及び「１」に設定したものである。
【０１２４】
図３０の処理により、モデルパラメータｃ１’が逐次型重み付き最小２乗法により統計処理され、デフォルト開度ずれｔｈｄｅｆａｄｐが算出される。
本実施形態では、図２２の処理が制御手段に相当し、図１１の処理が同定手段に相当し、図１２の処理が同定誤差算出手段に相当し、図１４の処理が同定誤差修正手段に相当し、図２１の処理が予測手段に相当する。
【０１２５】
【発明の効果】
以上詳述したように請求項１に記載の発明によれば、モデルパラメータの同定誤差が所定の範囲内にあるときは、同定誤差がゼロに修正され、該修正された同定誤差を用いてモデルパラメータが算出されるので、同定誤差がモデルパラメータに蓄積することが抑制され、モデルパラメータのドリフトを防止することができ、制御の安定性を向上させることができる。さらに、前記所定範囲が、スロットル弁開度または目標開度に応じた値に基づいて設定されるので、寄与度合を低減すべき同定誤差の範囲が適切なものとなり、モデルパラメータの値に反映させるべき同定誤差を、不要な誤差として無視してしまうことを防止することができる。またロバスト性の高いスライディングモード制御によりスロットル弁駆動装置が制御されるので、モデル化誤差（実際のスロットル弁駆動装置の特性と、モデル化した制御対象モデルの特性との差）があっても、スロットル弁開度の目標開度への制御性を向上させ、しかも安定した制御を実現することができる。さらにスロットル弁駆動装置への制御入力は適応則入力を含むので、外乱やモデル化誤差があっても、良好な制御性を実現することができる。
【０１２６】
請求項２に記載の発明によれば、同定手段により同定されたモデルパラメータを用いてスロットル弁開度の予測値の算出が行われるので、スロットル弁駆動装置の動特性が経時変化した場合や環境条件などによって変化した場合でも精度のよい予測値を算出することができる。
【０１２７】
請求項３に記載の発明によれば、同定誤差をゼロに修正する所定範囲が、スロットル弁開度の変化量に応じて設定されるので、モデルパラメータに反映させるべき同定誤差を、残留同定誤差として無視してしまうことを防止できる。
【図面の簡単な説明】
【図１】本発明の一実施形態にかかる内燃機関のスロットル弁駆動装置と、その制御装置を示す図である。
【図２】図１に示すスロットル弁駆動装置の周波数特性を示す図である。
【図３】図１の電子制御ユニット（ＥＣＵ）により実現される機能を示す機能ブロック図である。
【図４】スライディングモードコントローラの制御特性と、切換関数設定パラメータ（ＶＰＯＬＥ）の値との関係を示す図である。
【図５】スライディングモードコントローラの制御ゲイン（Ｆ，Ｇ）の設定範囲を示す図である。
【図６】モデルパラメータのドリフトを説明するための図である。
【図７】同定誤差を修正する関数を示す図である。
【図８】スロットル弁のデフォルト開度ずれがモデルパラメータ（ｃ１’）に反映されることを説明するための図である。
【図９】スロットル弁開度制御処理のフローチャートである。
【図１０】図９の処理において状態変数の設定を行う処理のフローチャートである。
【図１１】図９の処理においてモデルパラメータ同定器の演算を実行する処理のフローチャートである。
【図１２】図１１の処理において同定誤差（ｉｄｅ）の演算を実行する処理のフローチャートである。
【図１３】同定誤差（ｉｄｅ）のローパスフィルタ処理を説明するための図である。
【図１４】図１２の処理における不感帯処理のフローチャートである。
【図１５】図１４の処理で使用されるテーブルを示す図である。
【図１６】図１１の処理におけるモデルパラメータベクトル（θ）の安定化処理のフローチャートである。
【図１７】図１６の処理におけるモデルパラメータ（ａ１’，ａ２’）のリミット処理のフローチャートである。
【図１８】図１６の処理によるモデルパラメータの値の変化を説明するための図である。
【図１９】図１６の処理におけるモデルパラメータ（ｂ１’）のリミット処理のフローチャートである。
【図２０】図１６の処理におけるモデルパラメータ（ｃ１’）のリミット処理のフローチャートである。
【図２１】図９の処理において状態予測器の演算を実行する処理のフローチャートである。
【図２２】図９の処理において制御入力（Ｕｓｌ）の演算を実行する処理のフローチャートである。
【図２３】図２２の処理において予測切換関数値（σｐｒｅ）の演算を実行する処理のフローチャートである。
【図２４】図２３の処理において切換関数設定パラメータ（ＶＰＯＬＥ）の演算を実行する処理のフローチャートである。
【図２５】図２４の処理で使用するマップを示す図である。
【図２６】図２２の処理において予測切換関数値（σｐｒｅ）の積算値の演算を実行する処理のフローチャートである。
【図２７】図２２の処理において到達則入力（Ｕｒｃｈ）の演算を実行する処理のフローチャートである。
【図２８】図２２の処理において適応則入力（Ｕａｄｐ）の演算を実行する処理のフローチャートである。
【図２９】図９の処理においてスライディングモードコントローラの安定判別を実行する処理のフローチャートである。
【図３０】図９の処理においてデフォルト開度ずれ（ｔｈｄｅｆａｄｐ）の演算を実行する処理のフローチャートである。
【符号の説明】
１  内燃機関
３  スロットル弁
７  電子制御ユニット
１０  スロットル弁駆動装置
２１  適応スライディングモードコントローラ（制御手段）
２２  モデルパラメータ同定器（同定手段、同定誤差算出手段、同定誤差修正手段）
２３  状態予測器（予測手段）
２４  目標開度設定部
【図１】
0003819259.tif 000018
【図２】
0003819259.tif 000019
【図３】
0003819259.tif 000020
【図４】
0003819259.tif 000021
【図５】
0003819259.tif 000022
【図６】
0003819259.tif 000023
【図７】
0003819259.tif 000024
【図８】
0003819259.tif 000025
【図９】
0003819259.tif 000026
【図１０】
0003819259.tif 000027
【図１１】
0003819259.tif 000028
【図１２】
0003819259.tif 000029
【図１３】
0003819259.tif 000030
【図１４】
0003819259.tif 000031
【図１５】
0003819259.tif 000032
【図１６】
0003819259.tif 000033
【図１７】
0003819259.tif 000034
【図１８】
0003819259.tif 000035
【図１９】
0003819259.tif 000036
【図２０】
0003819259.tif 000037
【図２１】
0003819259.tif 000038
【図２２】
0003819259.tif 000039
【図２３】
0003819259.tif 000040
【図２４】
0003819259.tif 000041
【図２５】
0003819259.tif 000042
【図２６】
0003819259.tif 000043
【図２７】
0003819259.tif 000044
【図２８】
0003819259.tif 000045
【図２９】
0003819259.tif 000046
【図３０】
0003819259.tif 000047