以下では図面等を参照して本発明を実施するための最良の形態について説明する。
(第1実施形態)
図1は、本発明によるエンジン機構の制御装置の第1実施形態の構成を示す図である。
本実施形態では、エンジン機構としての可変動弁機構(Variable valve Timing Control;以下「VTC」という)を制御する。
本実施形態のエンジン機構の制御装置1は、コントローラ70と、ソレノイドバルブ40とを有し、ソレノイドバルブ40によって油路を切り替えてVTCに供給される作動油量を調整してVTCの変換角度θを制御する。
なおVTC30の構造は公知であるので、ここでは簡単に説明する。
VTC30は、カムシャフト31と、カムシャフト31と同軸であってベルト又はチェーンを介してエンジンのクランクシャフトと同期回転するカムシャフト駆動用スプロケット33と、を有し、油圧によってカムシャフト31とカムシャフト駆動用スプロケット33との相対角度(変換角度)を変更することで、吸気バルブ又は排気バルブの開閉タイミングを進角/遅角制御する。
カムシャフト31は、カムシャフト31と一体回転する複数枚のベーン32を備える。
カムシャフト駆動用スプロケット33には、ベーン32の回転を許容する空間が設けられる。その空間がベーン32によって進角油圧室33a及び遅角油圧室33bになっている。
進角油圧室33aは進角油路43aを介して通路切り換え用のソレノイドバルブ40に接続される。遅角油圧室33bは遅角油路43bを介して通路切り換え用のソレノイドバルブ40に接続される。
またソレノイドバルブ40には、進角油路43a及び遅角油路43bのほかに、途中にオイルパン45の作動油を圧送するオイルポンプ41が設けられたオイル供給路42と、オイルパン45に作動油を戻すドレン通路44と、が接続される。
エンジン機構制御装置1は、ソレノイドバルブ40への通電量を制御して油路を切り替えることで、進角油圧室33a及び遅角油圧室33bへの油圧を適宜変更、保持し、変換角度を変更、保持する。これにより、VTC30は、吸気バルブ又は排気バルブの開閉タイミング(バルブタイミング)を進角/遅角制御する。
具体的には、ソレノイドバルブ40への通電量を増大させると、通路Aに切り替わり、オイルパン45の作動油が、進角油路43aを通って進角油圧室33aに供給される。一方で、遅角油圧室33bの作動油が、遅角油路43b及びドレン通路44を通ってオイルパン45に排出される。これにより、進角油圧室33aの油圧が相対的に高くなり、バルブタイミングが進角する。
また、ソレノイドバルブ40への通電量を減少させると、通路Bに切り替わり、オイルパン45内の作動油が、遅角油路43bを通って進角油圧室33aに供給される。一方で、進角油圧室33aの作動油が、進角油路43a及びドレン通路44を通ってオイルパン45に排出される。これにより、遅角油圧室33bの油圧が相対的に高くなり、バルブタイミングが遅角する。
ソレノイドバルブ40への通電量の制御は、コントローラ70によって実行される。コントローラ70には、クランク角センサ71と、カム角センサ72と、水温センサ73と、が接続される。クランク角センサ71は、クランクシャフトの角度信号を出力するとともに、クランクシャフトの基準回転位置で基準クランク位置信号を出力する。カム角センサ72は、カムシャフト31の基準回転位置で基準カム位置信号を出力する。水温センサ73は、エンジン水温を出力する。
コントローラ70は、クランク角センサ71及びカム角センサ72によって検出されたクランクシャフトとカムシャフト31との基準回転位置のズレ角に基づいてVTC30の現在の変換角度(以下「実変換角度」という)θを検出する。そして、この実変換角度θが、エンジンの運転条件に基づいて設定される目標変換角度θcomに追従するように、ソレノイドバルブ40への通電量を制御する。
図2は、コントローラのエンジン機構制御に関する機能を示すブロック図である。なお各ブロックには後述のフローチャートのステップ番号に対応する番号を、冒頭にBを付加して付番した。各ブロックの具体的な制御内容の詳細はフローチャートに沿って後述する。
コントローラ70は、目標変換角度θcom及びスロットル実開度θに基づいてソレノイドバルブ40を制御するための電流指令値(出力制御信号)Icomを出力する。コントローラ70は、フィードフォワード補償器B3と、フィードバック補償器B4と、を有する。
フィードフォワード補償器B3は、目標変換角度θcomを入力し、規範応答変換角度θsimを出力する。なおフィードフォワード補償器B3の具体的な構成については後述するが、フィードフォワード補償器B3は内部に制限モデルB302を有する。この制限モデルB302は電流制限値算出器B2で計算された制限値を使用する。
電流制限値算出器B2は、エンジンの回転速度及び水温を入力し、角速度上限値ωLMT_H及び角速度下限値ωLMT_Lを出力する。
フィードバック補償器B4は、規範応答変換角度θsim及び実変換角度θを入力し、実変換角度θが規範応答変換角度θsimに一致するように電流指令値Icomを出力する。
図3は、本実施形態のフィードフォワード補償器B3の詳細構成を説明する図である。
本実施形態のフィードフォワード補償器B3は、モデル規範型制御部B31と、制御対象モデルB30とを有する。フィードフォワード補償器B3は、目標変換角度θcom及び規範応答変換角度θsimの前回値を入力して、規範応答変換角度θsimの今回値を出力する。
制御対象モデルB30は、制御ブロックB301と、内部制限ブロックB302と、制御ブロックB303とからなる。
制御ブロックB301は、モデル規範型制御部B31の出力に基づいて変換角速度ω1を算出する。制御ブロックB301の伝達関数をGp1(s)とする。
内部制限ブロックB302は、変換角速度ω1に基づいて限界変換角速度ωlimitedを算出する。VTC30は、上述のように作動油の油圧によって変換角度を制御する。作動油の油圧はエンジンの回転速度によって変わるので、VTC30の変換角速度にはエンジンの回転速度が影響し、エンジンの回転速度によってVTC30の変換角速度が制限される。またエンジン水温によって作動油の温度が変わり、作動油の粘性も変化する。したがってVTC30の変換角速度にはエンジン水温によってVTC30の変換角速度が制限される。このような制限構造を模したものが内部制限ブロックB302である。
制御ブロックB303は、限界変換角速度ωlimitedに基づいて、規範応答変換角度θsimの今回値を出力する。制御ブロックB303の伝達関数をGp2(s)とする。
図4は、モデル規範型制御部B31の一例であるモデルマッチング補償の詳細構成を説明する図である。
モデルマッチング補償は、制御ブロックB311と、制御ブロックB312と、減算器B313と、制御ブロックB314とで構成される。
制御ブロックB311はBmfで構成され、制御ブロックB312はL(z-1)で構成され、制御ブロックB314は1/R(z-1)で構成される。詳細には以下である。
なおこれらについて補足説明する。本件では、電流指令値Icomから実変換角度θまでの制御対象の連続系伝達特性Gp(s)を(K/(as2+bs+c))(以下、0次/2次と表わす)としている。これを離散化した伝達特性はGp(z-1)となり、次式(2)で表わされる。
Gp(z-1)のゼロ点(−bp1/bp0)は、サンプリングタイムを小さくすると−1に収束するので、Gp(z-1)の逆系を補償器に用いると不安定になってしまう。これを避けるために、次のようにモデルマッチング補償部を設計する。
所望の応答特性を連続系規範モデル伝達特性GM0(s)(0次/2次)で与える。これを離散化した規範モデル伝達特性GM0(z-1)とすると、上記制御対象の伝達特性Gp(z-1)と同様に、サンプリングタイムを小さくすると−1に収束するゼロ点を有する。したがって、モデルマッチング補償器の設計の際に両者を相殺させる目的で、規範モデル伝達特性GM0(z-1)のゼロ点を制御対象伝達特性Gp(z-1)のゼロ点で置き換えたGM(z-1)を規範モデル伝達特性として用いる。なお、サンプリングタイムが十分小さければ、GM(z-1)とGM0(z-1)との差はほとんどなく、実用上問題はない。
式(2.1)、式(3)より、モデルマッチング補償の制御ブロックB311、制御ブロックB312、制御ブロックB314が上述のように構成される。
減算器B313は、制御ブロックB311の出力信号値から、制御ブロックB312の出力信号値を減算する。
制御ブロックB314から電流指令値(規範制御信号)Icom0が出力される。
以下ではコントローラ70の具体的な制御ロジックについてフローチャートに沿って説明する。図5はエンジン機構制御のメインルーチンのフローチャートである。なおコントローラ70はこの処理を微少時間(例えば10ミリ秒)サイクルで繰り返し実行する。
ステップS1においてコントローラ70は、エンジンの回転速度及び水温並びに実変換角度θを読み込む。
ステップS2においてコントローラ70は、変換角速度上限値ωLMT_H及び変換角速度下限値ωLMT_Lを算出する。具体的にはあらかじめROMに格納された図8に示す特性のマップに基づいて変換角速度上限値ωLMT_H及び変換角速度下限値ωLMT_Lを求める。図8は変換角速度上限値マップの一例を示したものであるが、同様の変換角速度下限値マップもROMに格納されている。これらのマップはあらかじめ実験を通じて設定される。
ステップS3においてコントローラ70は、フィードフォワード処理を実行する。具体的な処理内容については後述する。
ステップS4においてコントローラ70は、フィードバック処理を実行する。具体的は上述の通り、フィードバック補償器B4にて、規範応答変換角度θsim及び実変換角度θを入力し、実変換角度θが規範応答変換角度θsimに一致するように電流指令値Icomを出力する。
図6は、フィードフォワード処理のサブルーチンを示すフローチャートである。
ステップS31においてコントローラ70は、モデルマッチング処理する。具体的には図4で説明したモデルマッチング補償処理する。
ステップS302においてコントローラ70は、制限処理して限界変換角速度ωlimitedを算出する。具体的な処理ルーチンについては後述する。
ステップS303においてコントローラ70は、制御対象モデルB303において、限界変換角速度ωlimitedを入力してスロットル規範応答開度θsimを算出する。
図7は、制限処理のサブルーチンを示すフローチャートである。
ステップS3021においてコントローラ70は、変換角速度ω1が変換角速度下限値ωLMT_Lよりも小さいか否かを判定する。小さければステップS3022へ処理を移行し、そうでなければステップS3023へ処理を移行する。
ステップS3022においてコントローラ70は、限界変換角速度ωlimitedを変換角速度下限値ωLMT_Lで制限する。
ステップS3023においてコントローラ70は、変換角速度ω1が変換角速度上限値ωLMT_Hよりも大きいか否かを判定する。大きければステップS3025へ処理を移行し、そうでなければステップS3024へ処理を移行する。
ステップS3024においてコントローラ70は、変換角速度ω1を限界変換角速度ωlimitedとしてセットする。
ステップS3025においてコントローラ70は、限界変換角速度ωlimitedを変換角速度上限値ωLMT_Hで制限する。
上述したように、従来は、制御目標値を達成するための電流指令値が、実際に出力可能な電流よりも大きくなってしまい、算出した電流指令値を実際には出力できない場合があった。このような場合には、実際値が制御目標値通りにならず、応答遅れが生じたり、オーバシュートが生じていた(図9(A)参照)。
ところが本実施形態によれば、フィードフォワード補償器B3の内部に、制限モデルB302を有する制御対象モデルB30を構成した。そして制御対象モデルB30から出力される規範応答変換角度θsimをモデル規範型制御部B31にフィードバックするようにした。このように制限モデルB302を構成することで規範応答変換角度θsimが実際の変換角度からの乖離が小さくなり、精度の向上が図れ、応答遅れやオーバシュートがなくなったのである(図9(B)参照)。
(第2実施形態)
図10は、本発明によるエンジン機構の制御装置の第2実施形態の構成を示す図である。なお以下では前述した実施形態と同様の機能を果たす部分には同一の符号を付して重複する説明を適宜省略する。
本実施形態の電流制限値算出器B2は、角速度制限値算出部B201及び時定数算出部B202を備え、エンジンの回転速度及び水温を入力し、角速度上限値ωLMT_H及び角速度下限値ωLMT_Lを算出するとともに、時定数T1を算出する。そして算出された角速度上限値ωLMT_H及び角速度下限値ωLMT_Lは、制限モデルB302に入力され、算出された時定数T1は、モデル規範型制御部B31並びに制御ブロックB301及び制御ブロックB303に入力される。
このようにすることで、VTCの変換角度を一層精度よく制御できるようになる。
(第3実施形態)
図11は、本発明によるエンジン機構の制御装置の第3実施形態の構成を示す図である。
上述の第1実施形態及び第2実施形態では、制限要素を有するエンジン機構としてのVTCを例示して説明した。しかしながら制限要素を有するエンジン機構としては、他にもたとえば電制スロットルがある。すなわち車両状態によってスロットル駆動モータを駆動するための電源電圧VBが制限され、電流も制限されることから、指令値通りにスロットルバルブの開度を制御できない場合がある。このような場合についても、上記と同様に制御することで応答性及び耐外乱性の向上という効果を得ることができる。以下では制限要素を有するエンジン機構としてのスロットルバルブの開度を制御する場合について説明する。
本実施形態では、エンジン機構としての電制スロットルを制御する。
本実施形態のエンジン機構の制御装置1は、コントローラ70と、電流制御アンプ11と、スロットル駆動モータ12とを有し、スロットル駆動モータ12によってスロットルバルブ10の実開度θを調整する。
コントローラ70は、電源電圧VB、スロットル目標開度θcom及びスロットル実開度θを入力し、スロットル実開度θがスロットル目標開度θcomに一致するように、スロットル駆動モータ12を制御するための電流指令値Icomを出力する。なおスロットル目標開度θcomは、運転者のアクセルペダルの踏込量などから算出される。コントローラ70は中央演算装置(CPU)、読み出し専用メモリ(ROM)、ランダムアクセスメモリ(RAM)及び入出力インタフェース(I/Oインタフェース)を備えたマイクロコンピュータで構成される。複数のマイクロコンピュータでコントローラ70を構成してもよい。
電流制御アンプ11は、スロットル駆動モータ12に流れる実際の電流と、コントローラ70からの電流指令値Icomとが一致するようにパワートランジスタのスイッチング時間を制御する。
スロットル駆動モータ12は、たとえば直流モータである。スロットル駆動モータ12は、ギヤ13によって減速され、スロットルバルブ10の軸10aを駆動する。軸10aの一端には、角度センサ14が設置される。
角度センサ14はスロットルバルブ10の実開度θを検出する。角度センサ14は、たとえばアナログ信号を出力するポテンショメータである。なお角度センサ14は、ポテンショメータではなく、光学式エンコーダであってもよい。光学式エンコーダを使用すれば、スロットルバルブ10の実開度θを一層高精度に検出できる。ポテンショメータから出力されたアナログ信号は、増幅器及びA/D変換器で構成されるセンサ信号処理回路で増幅されてディジタル信号に変換されて、コントローラ70に入力される。
スロットルバルブ10には、スロットルバルブ10を閉弁するように作用する閉弁バネと、開弁するように作用する開弁バネと、が設けられる。両バネは、スロットル駆動モータ12による駆動力がないときに、スロットルバルブ10をデフォルト開度に保持する。このように、スロットルバルブ10は、万一、スロットル駆動モータ12に電流が流れない事態が生じても、一定のデフォルト開度に保持され、吸気を確保して走行可能なフェイルセーフ構造となっている。
図12は、コントローラのエンジン機構制御に関する機能を示すブロック図である。なお本実施形態のコントローラの構成は、基本的には図2に示した第1実施形態のものと同様であるが、さらに外乱補償器を付加してある。
本実施形態のコントローラ70は、電流制限値算出器B2、フィードフォワード補償器B3及び外乱補償器B6の詳細構成が第1実施形態と異なるので、以下ではこの点を説明する。
電流制限値算出器B2は、スロットル実開度θ、電源電圧VBなどを入力し、電流制限値ILMTを出力する。
フィードフォワード補償器B3は、スロットル目標開度θcomを入力し、スロットル規範応答開度θsimを出力する。なおフィードフォワード補償器B3の具体的な構成については後述するが、フィードフォワード補償器B3は内部に制限モデルB32を有する。この制限モデルB32は電流制限値算出器B2で計算された制限値を使用する。
外乱補償器B5は、電流指令値Icom及びスロットル実開度θを入力し、両者に基づいて外乱補償値Idisを出力する。外乱補償器B6の具体的な構成については後述する。
減算器B6は、電流指令値Icom1から外乱補償値Idisを減算することで、外乱やパラメータ変動による影響を排除した電流指令値Icomを出力する。そしてこの電流指令値Icomによってスロットル駆動モータ12が作動しスロットルバルブ10の実開度θが調整される。
図13は、フィードフォワード補償器B3の詳細構成を説明する図である。
フィードフォワード補償器B3は、モデル規範型制御部B31と、制限モデルB32と、制御対象モデルB33と、を有する。なお図3に示した第1実施形態のフィードフォワード補償器B3において制御ブロックB301の伝達関数をGp1(s)=1とすれば、本実施形態のフィードフォワード補償器B3になる。フィードフォワード補償器B3は、スロットル目標開度θcomを入力して、スロットル規範応答開度θsimを出力する。
モデル規範型制御部B31は、スロットル目標開度θcom及びスロットル規範応答開度θsimを入力して電流指令値Icom0を出力する。このモデル規範型制御部B31は、たとえば上述の図4に示したモデルマッチング補償を使用すればよい。
制限モデルB32は、制御対象(電流制御アンプ11からスロットルバルブ10にかけての機構)に流す電流を制限する構造を模したモデルである。すなわち、車両状態によってスロットル駆動モータ12を駆動するための電源電圧VBが制限され、電流も制限される。また直流モータには逆起電力が発生し、これによっても電流が制限される。さらに電流駆動回路にはモータの巻線抵抗などの内部抵抗があり、これによっても電流が制限される。このような電流制限構造を模したものが制限モデルB32である。
制御対象モデルB33は、制御対象(電流制御アンプ11からスロットルバルブ10にかけての機構)を伝達関数としたモデルである。制御対象モデルB33は、制限モデルB32の出力を入力してスロットル規範応答開度θsimを出力する。制御ブロックB33の伝達関数をGp(s)とする。
図14は、外乱補償器B5の詳細構成を説明する図である。
外乱補償器B5は、電流指令値Icom及びスロットル実開度θを入力し、両者に基づいて外乱補償値Idisを出力する。外乱補償器B5は、制御ブロックB51と、制御ブロックB52と、制御ブロックB53と、減算器B54とで構成される。
制御ブロックB51は、電流指令値Icomを入力し、電動モータ12に流れる電流の上下限を制限するリミッタである。制御ブロックB51は、モータ電流が飽和したときに外乱補償器B5への入力を制限することで、外乱補償値Idisに誤差が溜まるのを防止して応答性能の悪化を防止する。なお、制限値は、図12に示した電流制限値算出器B2で算出された入力制限値ILMTを用いることによって、入力制限による誤差の蓄積を一層正確に防止できる。
制御ブロックB52は、制御ブロックB51で制限された電流値を入力し、電流指令値Icom2を出力する。制御ブロックB52は、定常ゲインが1であるローパスフィルタH0(z-1)に、Gp(z-1)のゼロ点を有するQ(z-1)を付加したフィルタH(z-1)である。制御ブロックB52は、制御ブロックB51で制限された電流指令値をローパスフィルタ処理して電流指令値Icom2を出力する。
制御ブロックB53は、フィルタH(z-1)/Gp(z-1)である。したがって、−1に収束するゼロ点が相殺されるので、制御ブロックB53は安定なデジタルフィルタとなる。制御ブロックB53は、電流指令値Icomからスロットル開度θまでの制御対象の離散系伝達特性Gp(z-1)と、スロットルバルブ10の実開度θとに基づいて電流指令値Icomを逆演算し、さらにローパスフィルタ処理して電流指令値Icom3を出力する。
減算器B54では、電流指令値Icom3から電流指令値Icom2を減算し、電流アンプからセンサ信号処理回路までの制御対象の外乱やパラメータ変動による電流指令値Icomのズレ量(外乱補償値)Idisを算出する。
外乱補償値Idisは、制御対象に外乱やパラメータ変動がない場合にはゼロとなる。これに対して、制御対象に外乱dやパラメータ変動Δがある場合には、スロットルバルブ開度θは次式(4)で表される。
H(z-1)のゲイン特性が1である周波数帯域では次式(5)で表される。
つまり、外乱dやパラメータ変動△の影響が完全にキャンセルされて、制御対象の動特性がノミナルモデルGp(z-1)に一定化される。H(z-1)のカットオフ周波数を上げると高周波数域まで同様な効果が得られるが、逆にハイゲインフィードバックとなり、安定余裕が減少するのでトレードオフ設計が必要となる。
以下ではコントローラ70の具体的な制御ロジックについてフローチャートに沿って説明する。図15はエンジン機構制御のメインルーチンのフローチャートである。なおコントローラ70はこの処理を微少時間(例えば10ミリ秒)サイクルで繰り返し実行する。
ステップS1においてコントローラ70は、スロットル実開度θ及び電源電圧VBを読み込む。
ステップS2においてコントローラ70は、電流制限値ILMTを算出する。具体的な算出ルーチンについては後述する。
ステップS3においてコントローラ70は、フィードフォワード処理を実行する。具体的な処理内容については後述する。
ステップS4においてコントローラ70は、フィードバック処理を実行する。
ステップS5においてコントローラ70は、外乱補償値Idisを算出する。具体的には前述した図14のブロック図に基づいて演算する。
ステップS6においてコントローラ70は、電流指令値Icom1から外乱補償値Idisを減算して電流指令値Icomを算出する。
図16は、電流制限値算出のサブルーチンを示すフローチャートである。
ステップS21においてコントローラ70は、直流モータの逆起電力VREVを算出する。具体的には、まずスロットル実開度θに次式(6.1)の伝達関数で表される近似微分処理を行いスロットルバルブの角速度ωθを算出する。算出した角速度ωθに減速器のギア比やモータのトルク定数から決まる定数KREVを乗算することによって逆起電力VREVを算出する。近似微分処理は次式(6.1)の伝達関数で表されるが、実際にはタスティン近似などで離散化して得られた漸化式を用いて算出する。
なお本実施形態では、近似微分を用いて逆起電力を推定しているが、スロットル開度θ、前回の電流指令値Icom及び制御対象の数式モデルを用いたオブザーバを用いて角速度ωθを算出して逆起電力VREVを推定してもよい。
ステップS22においてコントローラ70は、電流駆動回路の内部抵抗Rsimを推定する。実際には、スロットル開度θ、電流指令値Icom及び下記の制御対象の数式モデルを用いた適応デジタルフィルタや拡張カルマンフィルタを用いて推定を行う。
これらによって求めた内部抵抗Rを、電流駆動回路の内部抵抗推定値Rsimとする。
ステップS23においてコントローラ70は、電流制限値ILMTを算出する。具体的には次式(8)によって算出する。
図17は、フィードフォワード処理のサブルーチンを示すフローチャートである。
ステップS330においてコントローラ70は、制御対象モデルB33において、フィードフォワード電流指令値Icom00を入力してスロットル規範応答開度θsimを算出する。
ステップS31においてコントローラ70は、モデルマッチング処理する。具体的には図4で説明したモデルマッチング補償処理する。
ステップS32においてコントローラ70は、電流制限処理して電流指令値Icom00を算出する。具体的な処理ルーチンについては後述する。
図18は、電流制限処理のサブルーチンを示すフローチャートである。
ステップS321においてコントローラ70は、制限前電流指令値Icom0が電流制限値ILMTの負値(−ILMT)よりも小さいか否かを判定する。小さければステップS322へ処理を移行し、そうでなければステップS323へ処理を移行する。
ステップS322においてコントローラ70は、電流指令値Icom00を電流制限値ILMTの負値(−ILMT)で制限する。
ステップS323においてコントローラ70は、制限前電流指令値Icom0が電流制限値ILMTよりも大きいか否かを判定する。大きければステップS325へ処理を移行し、そうでなければステップS324へ処理を移行する。
ステップS324においてコントローラ70は、制限前電流指令値Icom0を電流指令値Icom00としてセットする。
ステップS325においてコントローラ70は、電流指令値Icom00を電流制限値ILMTで制限する。
上述したように、従来は、制御目標値を達成するための電流指令値が、実際に出力可能な電流よりも無駄に大きくなってしまう場合があった。このような場合には、実際値が制御目標値通りにならず、応答遅れが生じたり、オーバシュートが生じていた(図19(A)参照)。
ところが本実施形態によれば、フィードフォワード補償器B3の内部に、制限モデルB32を構成した。そして制御対象モデルB33から出力されるスロットル規範応答開度θsimをモデル規範型制御部B31にフィードバックするようにした。このように制限モデルB32を構成することでスロットル規範応答開度θsimと実際の開度との乖離が小さくなり、精度の向上が図れ、応答遅れやオーバシュートがなくなったのである(図19(B)参照)。
(第4実施形態)
電制スロットルバルブは、上述のようにスロットル駆動モータ12に電流が流れていなければ、開弁バネ及び閉弁バネによって所定のデフォルト開度に保持されるが、このような構造ではスロットルバルブがデフォルト開度を通過するときにデフォルト開度で一時的に停止する。
アクチュエータの負荷トルクとスロットル開度との関係は図20のようになる。アクチュエータの負荷トルクは電流に略比例するので、この図はアクチュエータへ流す電流とスロットル開度との関係を示すと考えてよい。この図20から分かるように、スロットルバルブの開度は、デフォルト開度以外であれば電流に比例して増減するが、デフォルト開度のときは電流を増しても減らしても増減しない。このようにデフォルト開度を中心として不連続な段差が存在する。またデフォルト開度において開負荷トルクT_OPの大きさ(絶対値)が、閉負荷トルクT_CLの大きさ(絶対値)と同じとは限らない。
そこで本実施形態では、一層精度を向上させるために、デフォルト開度よりも高開度域であるか低開度域であるかで電流制限値を変更するようにした。
図21は、第4実施形態の電流制限値算出のサブルーチンを示すフローチャートである。
ステップS21、ステップS22は、第3実施形態と同様であるので、詳細な説明は省略する。
ステップS23においてコントローラ70は、上限値ILMT_HIGH_FIN及び下限値ILMT_LOW_FINを算出する。
具体的には、まず次式(9.1)(9.2)によって上限基準値ILMT_HIGH及び下限基準値ILMT_LOWを算出する。
そしてスロットル開度がデフォルト開度を超えているときには、アクチュエータのトルク特性に基づいて次式(10.1)によって開補正値ILMT_OPを算出し、さらに次式(10.2)(10.3)によって上限値ILMT_HIGH_FIN及び下限値ILMT_LOW_FINを算出する。
一方スロットル開度がデフォルト開度を超えていないときには、アクチュエータのトルク特性に基づいて次式(11.1)によって閉補正値ILMT_CLを算出し、さらに次式(11.2)(11.3)によって上限値ILMT_HIGH_FIN及び下限値ILMT_LOW_FINを算出する。
このようにして求めた上限値ILMT_HIGH_FIN及び下限値ILMT_LOW_FINを使用してリミット処理ルーチン(S32)では図22に示したように、電流制限処理して電流指令値Icom00を算出する。
制限前電流指令値Icom0が下限値ILMT_LOW_FINよりも小さければ(ステップS321でYes)、電流指令値Icom00を下限値ILMT_LOW_FINで制限する(ステップS322)。
制限前電流指令値Icom0が上限値ILMT_HIGH_FINよりも大きければ(ステップS323でYes)、電流指令値Icom00を上限値ILMT_HIGH_FINで制限する(ステップS325)。
制限前電流指令値Icom0が下限値ILMT_LOW_FIN以上であって、かつ上限値ILMT_HIGH_FIN以下であれば、制限前電流指令値Icom0を電流指令値Icom00としてセットする(ステップS324)。
以上のようにすることで、スロットルバルブを一層精緻に制御でき、精度が向上できた。すなわち図23(A)に見られるように比較例によればスロットルバルブをステップ的に開くときに、収束性が悪化していた。ところが本実施形態によれば、図23(B)に見られるように収束性が向上したのである。
(第5実施形態)
図24は、本発明によるエンジン機構の制御装置の第5実施形態の構成を示す図である。
本実施形態の電流制限値算出器B2は、図24に示すように、スロットルバルブ定常状態判定部B21と、制限値算出部B22と、を有する。
スロットルバルブ定常状態判定部B21は、スロットルバルブが定常状態であるか否かを判定する。定常状態とはスロットルバルブが一定開度を保持している状態であり、代表的な定常状態は、アイドル状態である。
制限値算出部B22は、外乱補償値Idisを入力し、上限値ILMT_HIGH_FIN及び下限値ILMT_LOW_FINを出力する。
図25は、電流制限値算出のサブルーチンを示すフローチャートである。
ステップS201においてコントローラ70は、外乱補償値IDISに対して次式(12)のローパスフィルタ処理する。ここでTDISはローパスフィルタ時定数であり、スロットル開度が定常状態であるときの外乱補償値変動代を考慮して設定される。実際にはタスティン近似などで離散化して得られた漸化式を用いて算出する。なおsはラプラス演算子である。
ステップS202においてコントローラ70は、スロットル目標開度θcomとスロットル実開度θとの偏差からスロットルバルブが定常状態か否かを判定する。偏差がスロットルサーボ性能の定常特性から決められる所定値よりも小さければ定常状態と判定し、そうでなければ過渡状態と判定する。定常状態のときはステップS203へ処理を移行し、過渡状態のときはステップS204へ処理を移行する。
ステップS203においてコントローラ70は、IDIS_LPFをIDIS_LMTとしてセットする。
ステップS204においてコントローラ70は、スロットルバルブの現在の開度領域を判定する。すなわちスロットル実開度θがデフォルト開度よりも大きければステップS205へ処理を移行し、そうでなければステップS209へ処理を移行する。
ステップS205においてコントローラ70は、IDIS_LMTの絶対値が開補正値ILMT_OPよりも大きいか否かを判定する。大きければステップS206へ処理を移行し、そうでなければステップS207へ処理を移行する。
ステップS206においてコントローラ70は、IDIS_LMTの絶対値をILMT_OP_FINとしてセットする。
ステップS207においてコントローラ70は、開補正値ILMT_OPをILMT_OP_FINとしてセットする。
ステップS208においてコントローラ70は、ILMT_HIGHからILMT_OP_FINを減算してILMT_HIGH_FINとしてセットするとともに、ILMT_LOWからILMT_OP_FINを減算してILMT_LOW_FINとしてセットする。
ステップS209においてコントローラ70は、IDIS_LMTの絶対値の負値(−|IDIS_LMT|)が閉補正値ILMT_CLよりも小さいか否かを判定する。小さければステップS210へ処理を移行し、そうでなければステップS211へ処理を移行する。
ステップS210においてコントローラ70は、IDIS_LMTの絶対値の負値(−|IDIS_LMT|)をILMT_CL_FINとしてセットする。
ステップS211においてコントローラ70は、閉補正値ILMT_CLをILMT_CL_FINとしてセットする。
ステップS212においてコントローラ70は、ILMT_HIGHからILMT_CL_FINを減算してILMT_HIGH_FINとしてセットするとともに、ILMT_LOWからILMT_CL_FINを減算してILMT_LOW_FINとしてセットする。
以上のようにすることで、スロットルバルブを一層精緻に制御でき、精度が向上できた。すなわち図26(A)に見られるように比較例によればスロットルバルブをステップ的に開くときに、収束性が悪化していた。ところが本実施形態によれば、図26(B)に見られるように収束性が向上したのである。
(第6実施形態)
図27は、本発明によるエンジン機構の制御装置の第6実施形態の構成を示す図である。
上述の第5実施形態では、制限値算出部B22は、外乱補償値Idisを入力し、上限値ILMT_HIGH_FIN及び下限値ILMT_LOW_FINを出力したが、本実施形態ではフィードバック電流指令値Icom_FBを入力して、上限値ILMT_HIGH_FIN及び下限値ILMT_LOW_FINを出力するようにした。
このような構成にしても、上記と同様の効果を得ることができる。
以上説明した実施形態に限定されることなく、その技術的思想の範囲内において種々の変形や変更が可能であり、それらも本発明の技術的範囲に含まれることが明白である。