以下、内燃機関の制御装置の一実施形態を、図面を参照して詳細に説明する。先ず、内燃機関の概略構成について説明する。
内燃機関Eは、いわゆるV型の内燃機関Eである。図1に示すように、内燃機関Eにおける機関本体23には、3つの気筒25が一列に並んだ第1バンク100が設けられている。また、機関本体23には、3つの気筒25が一列に並んだ第2バンク200が設けられている。
内燃機関Eは、外部から吸気を導入するための第1吸気通路111を備えている。第1吸気通路111は、機関本体23における第1バンク100の気筒25に繋がっている。気筒25内では、燃料と吸気との混合気の燃焼が行われる。第1バンク100の気筒25には、排気を外部に排出するための第1排気通路121が接続されている。
第1吸気通路111には、当該第1吸気通路111に導入される空気を濾過する第1エアクリーナ112が設けられている。第1吸気通路111における第1エアクリーナ112の吸気下流側には、吸入空気量を検出する第1エアフロメータ113が設けられている。第1吸気通路111における第1エアフロメータ113の吸気下流側には、吸気の温度を検出する第1温度センサ114が設けられている。
第1吸気通路111における第1温度センサ114の吸気下流側には、第1過給機115が設けられている。第1過給機115は、第1吸気通路111と第1排気通路121とに跨って設けられている。第1過給機115における第1排気通路121側にはタービン115aが配置されている。タービン115aは排気の流れを利用して回転する。第1過給機115における第1吸気通路111側にはコンプレッサ115bが配置されている。コンプレッサ115bは、タービン115aの回転に伴って回転し、吸気を機関本体23側へと送り出す。
第1吸気通路111における第1過給機115の吸気下流側には、吸気の圧力を測定する第1圧力センサ116が設けられている。第1吸気通路111における第1圧力センサ116よりも吸気下流側には、流路面積を可変とする第1スロットルバルブ117が設けられている。第1吸気通路111における第1スロットルバルブ117よりも吸気下流側には、吸気を冷却する第1インタークーラ118が設けられている。
第1排気通路121には、第1過給機115のタービン115aを迂回するようにして第1バイパス通路122が設けられている。第1バイパス通路122は、第1排気通路121における第1過給機115のタービン115aの排気上流側と排気下流側とを接続している。第1バイパス通路122には、第1ウェイストゲートバルブ123が設けられている。第1ウェイストゲートバルブ123は、スイングバルブであり、第1バイパス通路122の流路を開閉する。この開閉に伴い、第1バイパス通路122を通じて第1過給機115のタービン115aを迂回する排気の量が増減し、過給圧が増減する。本実施形態では、第1ウェイストゲートバルブ123が第1バイパス通路122の流路を最大限に開いた状態を開度100%とし、第1ウェイストゲートバルブ123が第1バイパス通路122の流路を閉鎖した状態を開度0%とする。
第1ウェイストゲートバルブ123は、第1電動アクチュエータ124によって駆動される。第1電動アクチュエータ124は、モータ駆動式である。第1電動アクチュエータ124は、モータの駆動力に応じて動作するロッドを備えている。ロッドは、図示しない連結機構を介して第1ウェイストゲートバルブ123と連結されている。また、第1電動アクチュエータ124には、内燃機関Eの制御装置である電子制御ユニット10(以下、ECU10と略記する。)から第1駆動電流D1が供給される。第1電動アクチュエータ124に正の第1駆動電流D1が供給されると、第1ウェイストゲートバルブ123には、当該第1ウェイストゲートバルブ123の開度が小さくなる方向(閉じ側)へ第1ウェイストゲートバルブ123を動作させる付勢力が与えられる。一方、第1電動アクチュエータ124に負の第1駆動電流D1が供給されると、第1ウェイストゲートバルブ123には、当該第1ウェイストゲートバルブ123の開度が大きくなる方向(開き側)へ第1ウェイストゲートバルブ123を動作させる付勢力が与えられる。ここで、第1ウェイストゲートバルブ123は、排気の圧力によって、開度が大きくなる方向(開き側)へ押されている。第1ウェイストゲートバルブ123は、排気の圧力と、第1電動アクチュエータ124に供給される第1駆動電流D1の大きさとの兼ね合いで、開度が決定される。第1ウェイストゲートバルブ123に排気の圧力がかかっていない場合、第1駆動電流が0であれば、第1ウェイストゲートバルブ123の開度に拘らず当該第1ウェイストゲートバルブ123はその開度に保持される(静止する)。なお、第1電動アクチュエータ124は、排気の熱影響を回避する目的で、第1過給機115におけるタービン115aの側ではなく、第1過給機115におけるコンプレッサ115bの側に配置されている。
第1電動アクチュエータ124には、第1ウェイストゲートバルブ123の開度を検出する第1開度センサ127が取付けられている。第1開度センサ127は、排気の熱影響を回避する目的で、第1ウェイストゲートバルブ123の直近ではなく、第1電動アクチュエータ124に配置されている。第1開度センサ127は、第1電動アクチュエータ124のロッドの位置に基づいて、第1ウェイストゲートバルブ123の開度を検出する。
内燃機関Eにおける第1バンク100側の構成は、以上のようになっている。
つぎに、内燃機関Eにおける第2バンク200側の構成について説明する。内燃機関Eにおける第2バンク200側の構成は、第1バンク100側の構成と対称になっている。そのため、第2バンク200側の構成については、その概略のみを説明し、詳細については重複した説明を省略する。内燃機関Eは、機関本体23における第2バンク200の気筒25に接続された第2吸気通路211及び第2排気通路221を備えている。第2吸気通路211には、吸気上流側から吸気下流側に向けて、第2エアクリーナ212、第2エアフロメータ213、第2温度センサ214、第2過給機215のコンプレッサ215b、第2圧力センサ216、第2スロットルバルブ217、第2インタークーラ218がこの順番で設けられている。また、第2排気通路221には、第2過給機215のタービン215aが設けられている。第2排気通路221には、第2過給機215のタービン215aを迂回するようにして第2バイパス通路222が設けられている。第2バイパス通路222には、当該第2バイパス通路222の流路を開閉する第2ウェイストゲートバルブ223が設けられている。第2ウェイストゲートバルブ223は、第2電動アクチュエータ224で駆動される。第2電動アクチュエータ224には、ECU10から第2駆動電流D2が供給される。第2駆動電流D2の大きさと排気の圧力との兼ね合いで、第2ウェイストゲートバルブ223の開度が決定される。第2電動アクチュエータ224には、第2開度センサ227が取付けられている。第2開度センサ227は、第2電動アクチュエータ224のロッドの位置に基づいて、第2ウェイストゲートバルブ223の開度を検出する。なお、第2バンク200を構成している各部の機能は、第1バンク100を構成している各部の機能と同一である。
上記のように構成された内燃機関Eは、ECU10によって制御される。ECU10には、内燃機関E及び当該内燃機関Eが搭載された車両に設置されている各種センサからの検出値が入力される。具体的には、ECU10には、第1エアフロメータ113が検出する第1吸入空気量AS1、第1温度センサ114が検出する第1吸気温AT1、第1圧力センサ116が検出する第1吸気圧AP1、第1開度センサ127が検出する第1開度AN1の信号が入力される。また、ECU10には、第2エアフロメータ213が検出する第2吸入空気量AS2、第2温度センサ214が検出する第2吸気温AT2、第2圧力センサ216が検出する第2吸気圧AP2、第2開度センサ227が検出する第2開度AN2の信号が入力される。また、ECU10には、エンジン回転数ENを検出する回転センサ31、内燃機関Eが搭載された車両の車速SPを検出する車速センサ32、機関本体23のウォータージャケットの水温WTを検出する水温センサ33等の各種センサの信号が入力される。
ECU10は、第1電動アクチュエータ124及び第2電動アクチュエータ224を制御する出力部10aを備えている。出力部10aは、第1電動アクチュエータ124に対する駆動電流である第1駆動電流D1を第1電動アクチュエータ124出力し、第2電動アクチュエータ224に対する駆動電流である第2駆動電流D2を第2電動アクチュエータ224に出力する。
ECU10は、出力部10aが出力した第1駆動電流D1及び第2駆動電流D2の大きさを検出する電流検出部10eを備えている。
ECU10は、第1ウェイストゲートバルブ123及び第2ウェイストゲートバルブ223を目標開度まで動作させるための駆動電流を算出する算出部10bを備えている。算出部10bは、第1バンク100で要求される過給圧に応じて、第1ウェイストゲートバルブ123を目標開度まで動作させるための駆動電流である第1要求駆動電流D1Wを算出する算出処理を行う。この算出処理において、算出部10bは、先ず、第1吸入空気量AS1やエンジン回転数EN等に基づいて、第1排気通路121における排気の圧力を推定する。そして、算出部10bは、第1排気通路121の排気の圧力に応じて第1ウェイストゲートバルブ123を目標開度まで動作させるのに必要となる駆動電流を第1要求駆動電流D1Wとして算出する。なお、算出部10bは、静止している第1ウェイストゲートバルブ123に対して第1駆動電流D1を供給した時に第1駆動電流D1に対して第1ウェイストゲートバルブ123が応答しない電流値の領域(不感帯)がないものとして第1要求駆動電流D1Wを算出する。
また、算出部10bは、第2バンク200で要求される過給圧に応じて、第2ウェイストゲートバルブ223を目標開度まで動作させるための駆動電流である第2要求駆動電流D2Wを算出する算出処理を行う。具体的には、算出部10bは、先ず、第2吸入空気量AS2やエンジン回転数EN等に基づいて、第2排気通路221における排気の圧力を推定する。そして、算出部10bは、第2排気通路221の排気の圧力に応じて第2ウェイストゲートバルブ223を目標開度まで動作させるのに必要となる駆動電流を第2要求駆動電流D2Wとして算出する。なお、算出部10bは、静止している第2ウェイストゲートバルブ223に対して第2駆動電流D2を供給した時に第2駆動電流D2に対して第2ウェイストゲートバルブ223が応答しない電流値の領域(不感帯)がないものとして第2要求駆動電流D2Wを算出する。
ECU10は、第1ウェイストゲートバルブ123及び第2ウェイストゲートバルブ223の応答性を学習するための学習処理部10cを備えている。学習処理部10cは、第1ウェイストゲートバルブ123が所定の静止位置で静止している状態から第1駆動電流D1を段階的に変化させていき、第1ウェイストゲートバルブ123が動いたと判定されるまでの第1駆動電流D1の変化量を学習値として学習する第1学習処理を行う。つまり、学習処理部10cは、静止している状態の第1ウェイストゲートバルブ123が動き出す際に必要となる電流値を学習する。この電流値は、第1ウェイストゲートバルブ123や第1電動アクチュエータ124が静止している状態から動き出そうとしたときに生じる摩擦(静摩擦)に打ち勝つために必要な駆動電流の大きさである。第1学習処理には、第1ウェイストゲートバルブ123の開度が大きくなるように第1駆動電流D1を変化させて第1開側学習値を学習する開側学習処理と、第1ウェイストゲートバルブ123の開度が小さくなるように第1駆動電流D1を変化させて第1閉側学習値を学習する閉側学習処理とがある。
学習処理部10cは、第1学習処理の処理内容に応じて、出力部10aから出力している第1駆動電流D1を段階的に変化させる。学習処理部10cが第1駆動電流D1を一段階変化させた時点から、学習処理部10cが次に第1駆動電流D1を変化させるまでの期間を1ステップと称する。この1ステップの長さは予め設定されており、例えば数msである。そして、この1ステップのうちの始めの3分の1の期間は、第1ウェイストゲートバルブ123が動いたことを判定しない遅延期間に設定されている。残りの期間は、第1ウェイストゲートバルブ123が動いたことを判定する算出期間に設定されている。
学習処理部10cは、第1ウェイストゲートバルブ123が算出期間において所定開度以上動いた場合に、第1ウェイストゲートバルブ123が動いたと判定する。そして、学習処理部10cは、第1ウェイストゲートバルブ123が動いたと判定された場合、電流検出部10eが検出した電流値に基づいて、算出期間における第1駆動電流D1の平均値と、静止している状態における第1駆動電流D1との差を学習値として学習する。
学習処理部10cは、開側学習処理の完了を表すフラグである開側学習完了フラグを記憶している。また、学習処理部10cは、閉側学習処理の完了を表すフラグである閉側学習完了フラグを記憶している。イグニッションスイッチがオフにされている場合、開側学習完了フラグ及び閉側学習完了フラグはともにOFFになっている。学習処理部10cは、イグニッションスイッチがオンとされた後、開側学習処理を実行して当該開側学習処理が完了すると、開側学習完了フラグをOFFからONに変更する。また、学習処理部10cは、イグニッションスイッチがオンとされた後、閉側学習処理を実行して当該閉側学習処理が完了すると、閉側学習完了フラグをOFFからONに変更する。イグニッションスイッチがオンからオフになると、学習処理部10cは、開側学習完了フラグと閉側学習完了フラグとの両方をOFFに戻す。
イグニッションスイッチがオンにされてからオフにされるまでの間を1トリップと称する。学習処理部10cは、1トリップの間に開側学習処理及び開側学習完了処理の両方が完了したことを表すフラグである両側完了フラグを記憶している。イグニッションスイッチがオフにされている場合、両側完了フラグは0になっている。学習処理部10cは、1トリップの間に開側学習完了フラグがOFFからONに変更され、かつ、閉側学習完了フラグがOFFからONに変更されると、両側完了フラグを0から1に変更する。イグニッションスイッチがオンからオフになると、学習処理部10cは、両側完了フラグを0に戻す。
学習処理部10cは、第2ウェイストゲートバルブ223が所定の静止位置で静止している状態から第2駆動電流D2を段階的に変化させていき、第2ウェイストゲートバルブ223が動いたと判定されるまでの第2駆動電流D2の変化量を学習値として学習する第2学習処理を行う。第2学習処理には、第2ウェイストゲートバルブ223の開度が大きくなるように第2駆動電流D2を変化させて第2開側学習値を学習する開側学習処理と、第2ウェイストゲートバルブ223の開度が小さくなるように第2駆動電流D2を変化させて第2閉側学習値を学習する閉側学習処理とがある。学習処理部10cは、第1学習処理の場合と同様にして、第2学習処理に対応する開側学習完了フラグ、閉側学習完了フラグ、及び両側完了フラグを記憶する。また、学習処理部10cは、第1学習処理の場合と同様、第2学習処理の処理内容に応じて、出力部10aから出力している第2駆動電流D2を段階的に変化させる。そして、学習処理部10cは、第1学習処理の場合と同様に定義される1ステップのうちの算出期間にて、第2ウェイストゲートバルブ223が動いたことを判定する。学習処理部10cは、第2ウェイストゲートバルブ223が動いたと判定された場合、その算出期間における第2駆動電流D2の平均値と、静止している状態における第2駆動電流D2との差を学習値として学習する。
学習処理部10cは、第1開度センサ127の検出値と、第1ウェイストゲートバルブ123の実際の開度とを対応付けるための第1基準位置設定処理を行う。また、学習処理部10cは、第2開度センサ227の検出値と、第2ウェイストゲートバルブ223の実際の開度とを対応付けるための第2基準位置設定処理を行う。
ECU10は、学習値に基づいて、第1ウェイストゲートバルブ123及び第2ウェイストゲートバルブ223に対する要求駆動電流の値を補正する補正処理部10dを備えている。補正処理部10dは、第1開側学習値及び第1閉側学習値に基づいて、第1要求駆動電流D1Wを補正する補正処理を行う。具体的には、補正処理部10dは、第1要求駆動電流D1Wを、静止している状態の第1ウェイストゲートバルブ123が動き出す際に必要となる電流値を加味した値に補正する。また、補正処理部10dは、第2開側学習値及び第2閉側学習値に基づいて、第2要求駆動電流D2Wを補正する補正処理を行う。具体的には、補正処理部10dは、第2要求駆動電流D2Wを、静止している状態の第2ウェイストゲートバルブ223が動き出す際に必要となる電流値を加味した値に補正する。
つぎに、学習処理部10cが実行する基準位置設定処理及び学習処理について説明する。学習処理部10cは、イグニッションスイッチがオンにされると、基準位置設定処理及び学習処理を実行する。イグニッションスイッチがオンにされると、学習処理部10cは、先ず、基準位置設定処理を実行する。その後、学習処理部10cは、学習処理を実行する。
学習処理部10cは、第1バンク100に対する基準位置設定処理である第1基準位置設定処理と、第2バンク200に対する基準位置設定処理である第2基準位置設定処理と、を並行して行う。また、学習処理部10cは、第1バンク100に対する学習処理である第1学習処理と第2バンク200に対する学習処理である第2学習処理とを並行して行う。第1基準位置設定処理と第2基準位置設定処理とは、処理対象となるバンクが異なるのみであり、これらの処理内容は実質的に同一である。同様に、第1学習処理と第2学習処理とは、処理対象となるバンクが異なるのみであり、これらの処理内容は実質的に同一である。そのため、以下では第1基準位置設定処理及び第1学習処理について説明し、第2基準位置設定処理及び第2学習処理については説明を省略する。
図2に示すように、学習処理部10cは、第1基準位置設定処理を開始するとステップS20に処理を進める。ステップS20にて、学習処理部10cは、第1ウェイストゲートバルブ123が開度0%の位置へ押し付けられた状態となるように、出力部10aから出力する第1駆動電流D1を調整する。この後、学習処理部10cは、ステップS22に処理を進める。
ステップS22にて、学習処理部10cは、第1ウェイストゲートバルブ123が、移動を停止した状態で所定時間(例えば1秒)経過したか否かを判定する。第1ウェイストゲートバルブ123が移動を停止した状態で所定時間経過していない場合(ステップS22:NO)、学習処理部10cは、再度ステップS22の処理を実行する。第1ウェイストゲートバルブ123が移動を停止した状態で所定時間経過するまで、学習処理部10cはステップS22の処理を繰り返す。第1ウェイストゲートバルブ123が移動を停止した状態で所定時間経過すると(ステップS22:YES)、学習処理部10cはステップS24に処理を進める。
ステップS24にて、学習処理部10cは、第1ウェイストゲートバルブ123が停止している位置における第1開度センサ127の検出値を全閉検出値として記憶する。この後、学習処理部10cは、第1基準位置設定処理を終了する。なお、ECU10は、これ以降の処理において、全閉検出値が第1ウェイストゲートバルブ123の開度0%の位置と対応しているものとして、第1開度センサ127の検出値に基づいて第1ウェイストゲートバルブ123の開度を算出する。
イグニッションスイッチがオンにされている間、学習処理部10cは、次の3つの実行条件(イ)〜(ハ)が全て成立すると、第1学習処理を実行する。
(イ)第1基準位置設定処理が終了していること。
(ロ)学習条件が成立していること。
(ハ)両側完了フラグが0であること。
学習条件は、つぎの(A)〜(D)の4つである。
(A)第1ウェイストゲートバルブ123が中間開度(開度25%〜75%)の範囲内で一定の目標開度に制御されていること。
(B)第1ウェイストゲートバルブ123にかかる排気の圧力が小さいこと。具体的には、第1吸入空気量AS1が所定値以下であること。
(C)第1ウェイストゲートバルブ123及び第1電動アクチュエータ124が振動し難い状況であること。具体的には、エンジン回転数ENが所定値以下であり、かつ、車速SPが所定値以下であり、かつ、第1吸入空気量AS1が所定値以下であること。例えば停止アイドル中などの運転状態が、条件(C)が満たされた状態に相当する。
(D)第1ウェイストゲートバルブ123及び第1電動アクチュエータ124の温度がある程度高いこと。具体的には、機関本体23内の水温WTが所定値以上であり、かつ、イグニッションスイッチをオンにしてからの第1吸入空気量AS1の積算量が所定値以上であり、かつ、第1吸気温AT1が所定値以上であること。
上記(A)の条件と学習処理との関連について説明する。図7は、本実施形態で採用しているウェイストゲートバルブに関して、ウェイストゲートバルブの各開度と、ウェイストゲートバルブに排気の圧力がかかっていない状態でウェイストゲートバルブが各開度で静止している状態から所定開度動くまでに必要となる力の大きさと、の関係を示している。上記力は、具体的には、電動アクチュエータにおけるモータの出力トルクである。この関係は、ウェイストゲートバルブと電動アクチュエータとの間の連結機構の特性によって決まっている。同一の連結機構を採用している場合、上記関係はほぼ変化しない。ただし、上記力の大きさそのものは、図7の二点鎖線で示すように、ウェイストゲートバルブや電動アクチュエータの経年劣化等に伴う静摩擦の変化や、各ウェイストゲートバルブの個々の静摩擦の違いに応じて変化する。
図7に示すように、第1ウェイストゲートバルブ123が開度25%〜75%の範囲内で静止している場合、第1ウェイストゲートバルブ123の動き出しに必要となる力の大きさは、第1ウェイストゲートバルブ123の開度に拘らずほぼ一定である。第1ウェイストゲートバルブ123が開度0%〜25%の範囲内で静止している場合、当該第1ウェイストゲートバルブ123の動き出しに必要となる力の大きさは、第1ウェイストゲートバルブ123が開度25%〜75%の範囲内で静止している場合の上記力の大きさとほぼ同じである。なお、第1ウェイストゲートバルブ123が開度0%〜25%の範囲内で静止している場合、当該第1ウェイストゲートバルブ123の動き出しに必要となる力の大きさは、開度が小さくなるにしたがって微増する。第1ウェイストゲートバルブ123が開度75%〜100%の範囲内で静止している場合、当該第1ウェイストゲートバルブ123の動き出しに必要となる力の大きさは、開度が大きくなるにしたがって増大する。
ここで、第1ウェイストゲートバルブ123の動き出しに必要となる力の大きさは、第1ウェイストゲートバルブ123の動き出しに必要となる第1駆動電流D1の変化量、つまり、学習値と対応している。第1ウェイストゲートバルブ123の開度が25%〜75%である場合のように、第1ウェイストゲートバルブ123の動き出しに必要となる力の大きさが第1ウェイストゲートバルブ123の開度に拘らず一定である場合、その開度の範囲内の任意の位置で学習処理を行って得られる学習値は、当該範囲内の他の位置における学習値としても適用できる。したがって、第1ウェイストゲートバルブ123が開度25%〜75%で静止している場合に学習処理を行った場合、当該学習処理にて学習値が一旦得られれば、その学習値を、第1ウェイストゲートバルブ123の開度25%〜75%の全ての範囲に亘って適用できる。
ここで、第1ウェイストゲートバルブ123の開度が0%〜25%である場合に第1ウェイストゲートバルブ123の動き出しに必要となる力は、第1ウェイストゲートバルブ123の開度が25%〜75%である場合の上記力よりもやや大きい。しかし、両者の差及びそれに応じた第1駆動電流D1の差は、第1要求駆動電流D1Wの補正に係る電流値を得る上では、誤差の範囲内である。つまり、第1ウェイストゲートバルブ123の開度が25%〜75%である場合に得られる学習値を、第1ウェイストゲートバルブ123の開度が0%〜25%である場合の学習値として採用したとしても、第1要求駆動電流D1Wを補正する上で、特に問題はない。
第1ウェイストゲートバルブ123の開度が75%〜100%である場合に第1ウェイストゲートバルブ123の動き出しに必要となる力は、第1ウェイストゲートバルブ123の開度とともに増大する。そのため、特に第1ウェイストゲートバルブ123の開度が100%に近い位置では、第1ウェイストゲートバルブ123の開度が25%〜75%である場合に比べて、第1ウェイストゲートバルブ123の動き出しに必要となる力が大きい。そのため、第1ウェイストゲートバルブ123の開度が25%〜75%である場合の学習値を、第1ウェイストゲートバルブ123の開度が75%〜100%である場合の学習値として採用することは妥当ではないように思える。しかし、図8に示すように、第1ウェイストゲートバルブ123の開度が75%〜100%である場合の過給圧は小さく、開度による変化も小さい。したがって、学習値の値が正確に静摩擦の大きさに対応していないとしても、過給圧のコントロールを考える上では、特に問題はない。そのため、第1ウェイストゲートバルブ123の開度が25%〜75%である場合に得られた学習値を、第1ウェイストゲートバルブ123の開度が75%〜100%である場合の学習値として採用しても、特に問題はない。
このように、第1ウェイストゲートバルブ123が開度25%〜75%の範囲で静止している場合に学習処理を行うことで、第1ウェイストゲートバルブ123の全ての開度範囲に亘って適用可能な学習値を得ることができる。
上記(B)の条件と学習処理との関連について説明する。排気の圧力が大きい場合、第1ウェイストゲートバルブ123を開度の大きくなる方向へ押す力が強くなる。そのため、第1駆動電流D1に応じて開き側へ動き出そうとした第1ウェイストゲートバルブ123の動作が加速されたり、閉じ側へ動き出そうとした第1ウェイストゲートバルブ123の動作が抑制されたりするおそれがある。上記(B)の条件を満たすときに学習値の学習を行うことで、排気の圧力に応じた第1ウェイストゲートバルブ123の動作の影響をできるだけ排除した学習値を学習できる。
上記(C)の条件と学習処理との関連について説明する。ここで、学習処理では、静止している状態の第1ウェイストゲートバルブ123が動き出す際に必要となる電流値を学習する。この電流値は、第1ウェイストゲートバルブ123や第1電動アクチュエータ124が静摩擦に打ち勝つために必要な駆動電流の大きさである。第1学習処理の実行中に第1ウェイストゲートバルブ123や第1電動アクチュエータ124が振動してしまうと、当該学習処理で得られる学習値は、第1ウェイストゲートバルブ123や第1電動アクチュエータ124の動摩擦に応じたものとなってしまう。動摩擦は静摩擦よりも小さいのが一般的である。そのため、第1学習処理の実行中に第1ウェイストゲートバルブ123や第1電動アクチュエータ124が振動してしまうと、本来得るべき学習値である静摩擦に応じた学習値よりも小さな値を学習してしまうおそれがある。上記(C)の条件を満たすときに学習値の学習を行うことで、静摩擦に応じた適切な学習値を得ることができる。
上記(D)の条件と学習処理との関連について説明する。機関本体23内の水温WTが高ければ、機関本体23の温度も高い状態にあり、その周辺に配置されている第1ウェイストゲートバルブ123や、第1電動アクチュエータ124の温度も高くなっていると推定できる。第1吸入空気量AS1の積算量が多ければ、燃焼によって発生した熱の積算量も多く、第1ウェイストゲートバルブ123及び第1電動アクチュエータ124の温度が高いと推定できる。また、第1吸気温AT1が所定値以上であれば、外気温が高いということなので第1ウェイストゲートバルブ123及び第1電動アクチュエータ124の温度も高いと推定できる。このように、これらの各パラメータは、第1ウェイストゲートバルブ123及び第1電動アクチュエータ124の温度を反映し得るものである。そして、第1ウェイストゲートバルブ123及び第1電動アクチュエータ124の温度がある程度高いときに学習値の学習を行うことで、潤滑用のグリースの粘度が高くて適切な学習値を得られないといった事態が発生することを抑制できる。
学習処理部10cは、上記(イ)〜(ハ)の実行条件が成立すると、図3に示す第1学習処理を開始する。学習処理部10cは、第1学習処理を開始すると、ステップS28に処理を進める。ステップS28にて、学習処理部10cは、閉側学習完了フラグがONであるか否かを判定する。学習処理部10cは、閉側学習完了フラグがOFFである場合(ステップS28:NO)、ステップS32に処理を進め、閉側学習処理を実行する。一方、学習処理部10cは、閉側完了フラグがONである場合(ステップS28:YES)、ステップS30に処理を進め、開側学習処理を実行する。ステップS28の処理から明らかなように、学習処理部10cは、先ず閉側学習処理を実行する。つまり、学習処理部10cは、閉側学習処理を開側学習処理に対して優先して行う。
学習処理部10cは、ステップS32またはステップS30の処理の後、ステップS34に処理を進める。ステップS34にて、学習処理部10cは、1トリップの間に閉側学習完了フラグ及び開側学習完了フラグが共にOFFからONに変更されたか否かを判定する。学習処理部は、この判定がNOの場合、第1学習処理を終了する。一方、学習処理部10cは、この判定がYESの場合、ステップS36に処理を進める。そして、ステップS36にて、学習処理部10cは、両側完了フラグを0から1に変更する。この後、学習処理部は、第1学習処理を終了する。なお、第1学習処理を実行している途中で、上記(A)〜(D)の学習条件のうちのいずれかが満たされなくなった場合、学習処理部10cは、第1学習処理を途中で終了する。
学習処理部10cは、上記(イ)〜(ハ)の実行条件が成立する度に、第1学習処理を実行する。上記(ハ)の条件から明らかなように、学習処理部10cは、1トリップの間に閉側学習処理と開側学習処理との両方が完了するまで第1学習処理を繰り返す。なお、学習処理部10cは、第1学習処理の実行途中でイグニッションスイッチがオフにされた場合、第1学習処理を途中で終了する。
つぎに、閉側学習処理について図4を用いて説明する。概略的には、閉側学習処理では、第1ウェイストゲートバルブ123が静止している状態から第1駆動電流を段階的に増加させていき、第1ウェイストゲートバルブ123が所定開度以上閉じ側に動いたと判定されるまでの第1駆動電流D1の変化量を第1閉側学習値として学習する。第1閉側学習値は、正の値として算出される。なお、第1ウェイストゲートバルブ123が静止している位置を以下では静止位置と称する。また、第1ウェイストゲートバルブ123が静止位置に静止しているときにECU10の出力部10aが第1電動アクチュエータ124に出力している電流値を以下では静止電流値と称する。静止電流値は、条件(B)が成立している状況下では0である。第1学習処理を開始した時点からの一定期間であって第1ウェイストゲートバルブ123が静止位置にしている静止期間において、電流検出部10eが検出した電流値の平均値を平均静止電流値と称する。静止期間は、例えば数msであり、開側学習処理(図3のステップS30)の開始前に終了する。
学習処理部10cは、閉側学習処理を開始すると、ステップS201に処理を進める。ステップS201にて、学習処理部10cは、予め定められた設定期間(例えば1日)内に第1閉側学習値の更新があったか否かを判定する。学習処理部10cは、設定期間内に第1閉側学習値の更新が無い場合(ステップS201:NO)、処理をステップS203に進める。一方、学習処理部10cは、設定期間内に第1閉側学習値の更新があった場合(ステップS201:YES)、処理をステップS207に進める。
学習処理部10cは、ステップS203に処理を進めた場合、第1駆動電流D1を段階的に変化させていく際の第1駆動電流D1の変化幅に相当する更新値を、予め定められている第1更新値に設定する。第1更新値は、正の値である。この後、学習処理部10cは、ステップS205に処理を進める。ステップS205にて、学習処理部10cは、第1駆動電流D1を段階的に変化させていく際の初期値となる変化開始電流値を設定する。具体的には、学習処理部10cは、静止電流値を変化開始電流値に設定する。
一方、学習処理部10cは、ステップS207に処理を進めた場合、第1駆動電流D1を段階的に変化させていく際の第1駆動電流D1の変化幅に相当する更新値を、第2更新値に設定する。第2更新値は、第1更新値よりも小さい正の値である。この後、学習処理部10cは、ステップS209に処理を進める。ステップS209にて、学習処理部10cは、第1駆動電流D1を段階的に変化させていく際の初期値となる変化開始電流値を設定する。具体的には、学習処理部10cは、つぎの式(1)を用いて変化開始電流値を設定する。
変化開始電流値=静止電流値+前回の第1閉側学習値×A ・・・(1)
ここで、係数Aは1より小さい正の値であり、例えば0.8である。式(1)から明らかなように、変化開始電流値には、係数Aに応じた重みで前回の第1閉側学習値が反映される。
学習処理部10cは、ステップS205またはステップS209の処理の後、ステップS211に処理を進める。ステップS211にて、学習処理部10cは、第1駆動電流D1を段階的に増加させていく際の上限値となる閉側規定電流値を設定する。ここで、本実施形態では、第1閉側学習値の最大値として、所定の閉側限界電流値が予め設定されている。閉側規定電流値は、この閉側限界電流値を反映させた値となる。学習処理部10cは、つぎの式(2)を用いて閉側規定電流値を設定する。
閉側規定電流値=平均静止電流値+閉側限界電流値 ・・・(2)
学習処理部10cは、ステップS211の後、ステップS213に処理を進める。ステップS213にて、学習処理部10cは、出力部10aから出力している第1駆動電流D1を変化開始電流値に変更する。ここで、学習処理部10cがステップS205の処理を経てステップS213に至った場合、第1駆動電流D1は静止電流値のままである。一方、学習処理部10cがステップS209の処理を経てステップS213に至った場合、第1駆動電流D1は、静止電流値から、前回の閉側学習値を加味した変化開始電流値へと一段階で変化することになる。ステップS213の処理の後、学習処理部10cは、ステップS215に処理を進める。
ステップS215にて、学習処理部10cは、出力部10aから出力している第1駆動電流D1を、更新値に基づいて変化させる。具体的には、学習処理部10cは、現在の第1駆動電流D1に更新値を加えた値を、新たな第1駆動電流D1Nに設定する。そして、出力部10aは、新たな第1駆動電流D1Nを出力する。ステップS215の処理の後、学習処理部10cは、ステップS217に処理を進める。
ステップS217にて、学習処理部10cは、第1駆動電流D1を更新した時点から、遅延期間が経過したか否かを判定する。学習処理部10cは、遅延期間が経過していない場合(ステップS217:NO)、再度ステップS217の処理を実行する。学習処理部10cは、遅延期間が経過するまで、ステップS217の処理を繰り返す。学習処理部10cは、遅延期間が経過した場合(ステップS217:YES)、ステップS219に処理を進める。
ステップS219にて、学習処理部10cは、遅延期間の終了時点から算出期間が経過したか否かを判定する。学習処理部10cは、算出期間が経過していない場合(ステップS219:NO)、再度ステップS219の処理を実行する。学習処理部10cは、算出期間が経過するまで、ステップS219の処理を繰り返す。学習処理部10cは、算出期間が経過した場合(ステップS219:YES)、ステップS221に処理を進める。
ステップS221にて、学習処理部10cは、電流検出部10eが検出した電流値に基づいて、算出期間における第1駆動電流D1の平均値である平均第1駆動電流D1Vを算出する。この後、学習処理部10cは、ステップS223に処理を進める。
ステップS223にて、学習処理部10cは、平均第1駆動電流D1Vが閉側規定電流値以下であるか否かを判定する。学習処理部10cは、平均第1駆動電流D1Vが閉側規定電流値以下である場合(ステップS223:YES)、ステップS225に処理を進める。
ステップS225にて、学習処理部10cは、第1ウェイストゲートバルブ123が閉じ側へ動いたか否かを判定する。学習処理部10cは、第1開度センサ127の検出値に基づいてこの判定を行う。具体的には、学習処理部10cは、算出期間の開始時と終了時とにおける第1ウェイストゲートバルブ123の開度差が、予め定められた所定開度以上であるか否かを判定する。学習処理部10cは、算出期間の開始時と終了時とにおける第1ウェイストゲートバルブ123の開度差が所定開度以上である場合には第1ウェイストゲートバルブ123が閉じ側へ動いたと判定し、そうでない場合には第1ウェイストゲートバルブ123が動いていないと判定する。学習処理部10cは、第1ウェイストゲートバルブ123が閉じ側へ動いていない(ステップS225:NO)と判定した場合、ステップS215に戻る。
この後、学習処理部10cは、ステップS215〜ステップS225までの処理を繰り返す。ステップS215〜ステップS225までの処理を繰り返すことで、新たな第1駆動電流D1Nは、段階的に大きくなっていく。学習処理部10cは、ステップS215〜ステップS225の処理を繰り返している間に、ステップS223にて平均第1駆動電流D1Vが閉側規定電流値を上回った、換言すれば、平均第1駆動電流D1Vが閉側規定電流値を高電流側に越えた(ステップS223:NO)と判定された場合、ステップS229に処理を進める。一方、学習処理部10cは、平均第1駆動電流D1Vが閉側規定電流値を上回る前に、ステップS225にて第1ウェイストゲートバルブ123が閉じ側へ動いたと判定した場合、ステップS227に処理を進める。
ステップS229に進んだ場合、学習処理部10cは、第1閉側学習値として閉側限界電流値を設定する。つまり、第1閉側学習値は、当該第1閉側学習値の上限値になる。一方、学習処理部10cは、ステップS227に進んだ場合、平均第1駆動電流D1Vから平均静止電流値を引いた値を第1閉側学習値に設定する。この後、学習処理部10cは、ステップS231にて、閉側学習完了フラグをONにする。そして、学習処理部10cは、閉側学習処理の一連の処理を終了する。
つぎに、開側学習処理について図5を用いて説明する。開側学習処理の基本的な原理は、閉側学習処理と同一である。開側学習処理では、第1駆動電流D1を段階的に減少させていき、第1ウェイストゲートバルブ123が開き側に動いたと判定されるまでの第1駆動電流D1の変化量を第1開側学習値として学習する。第1開側学習値は、負の値として算出される。
学習処理部10cは、開側学習処理を開始すると、ステップS301に処理を進める。ステップS301にて、学習処理部10cは、設定期間(例えば1日)内に第1開側学習値の更新があったか否かを判定する。設定期間内に第1開側学習値の更新が無い場合(ステップS301:NO)、学習処理部10cは、処理をステップS303に進める。一方、設定期間内に第1開側学習値の更新があった場合(ステップS301:YES)、学習処理部10cは、処理をステップS307に進める。
ステップS303に処理を進めた場合、学習処理部10cは、第1駆動電流D1の更新値を、第1更新値に設定する。第1更新値は、閉側学習処理の場合と同じ値に設定されている。この後、学習処理部10cは、ステップS305にて、静止電流値を変化開始電流値に設定する。
一方、学習処理部10cは、ステップS307に処理を進めた場合、第1駆動電流D1の更新値を、第2更新値に設定する。第2更新値は、閉側学習処理の場合と同じ値に設定されており、第1更新値よりも小さな正の値である。この後、学習処理部10cは、ステップS309にて、変化開始電流値を設定する。学習処理部10cは、つぎの式(3)を用いて変化開始電流値を設定する。
変化開始電流値=静止電流値+前回の第1開側学習値×B ・・・(3)
ここで、係数Bは1より小さい正の値である。本実施形態においては、係数Bは係数Aと同一の0.8に設定されている。
学習処理部10cは、ステップS305またはステップS309の処理の後、ステップS311に処理を進める。ステップS311にて、学習処理部10cは、第1駆動電流D1を段階的に減少させていく際の下限値となる開側規定電流値を設定する。ここで、本実施形態では、第1開側学習値の最小値として、所定の開側限界電流値が予め設定されている。開側限界電流値は、負の値である。開側限界電流値の絶対値は、閉側限界電流値と同一である。学習処理部10cは、開側規定電流値を、つぎの式(4)を用いて設定する。
開側規定電流値=平均静止電流値+開側限界電流値 ・・・(4)
学習処理部10cは、ステップS311の後、ステップS313にて、出力部10aから出力している第1駆動電流D1を変化開始電流値に変更する。この後、学習処理部10cは、ステップS315に処理を進める。
ステップS315にて、学習処理部10cは、現在の第1駆動電流D1から更新値を引いた値を、新たな第1駆動電流D1Nに設定する。そして、出力部10aは、新たな第1駆動電流D1Nを出力する。この後、学習処理部10cは、ステップS317に処理を進める。この後、学習処理部10cは、遅延期間が経過するまでステップS317の処理を繰り返す。学習処理部10cは、遅延期間が経過すると(ステップS317:YES)、ステップS319に処理を進める。この後、学習処理部10cは、算出期間が経過するまでステップS319の処理を繰り返す。学習処理部10cは、算出期間が経過すると(ステップS319:YES)、ステップS321に処理を進める。
ステップS321にて、学習処理部10cは、電流検出部10eの検出した電流値に基づいて、平均第1駆動電流D1Vを算出する。この後、学習処理部10cは、ステップS323にて、平均第1駆動電流D1Vが開側規定電流値以上であるか否か判定する。学習処理部10cは、平均第1駆動電流D1Vが開側規定電流値以上である場合(ステップS323:YES)には、ステップS325に処理を進める。そして、学習処理部10cは、ステップS325にて、第1ウェイストゲートバルブ123が開き側へ動いたか否かを判定する。学習処理部10cは、算出期間の開始時と終了時とにおける第1ウェイストゲートバルブ123の開度差が、予め定められた所定開度以上である場合には第1ウェイストゲートバルブ123が開き側へ動いたと判定し、そうでない場合には第1ウェイストゲートバルブ123が動いていないと判定する。学習処理部10cは、第1ウェイストゲートバルブ123が開き側へ動いていないと判定した場合(ステップS325:NO)、学習処理部10cは、ステップS315に戻る。この後、学習処理部10cは、ステップS315〜ステップS325までの処理を繰り返す。ステップS315〜ステップS325までの処理を繰り返すことで、新たな第1駆動電流D1Nは、段階的に小さくなっていく。
学習処理部10cは、ステップS315〜ステップS325の処理を繰り返している間に、ステップS323にて新たな平均第1駆動電流D1Vが開側規定電流値を下回った、換言すれば、平均第1駆動電流D1Vが開側規定電流値を低電流側に越えた(ステップS323:NO)と判定された場合、ステップS329に処理を進める。一方、学習処理部10cは、平均第1駆動電流D1Vが閉側規定電流値を下回る前に、ステップS325にて第1ウェイストゲートバルブ123が開き側に動いたと判定した場合、ステップS327に進む。
学習処理部10cは、ステップS329に進んだ場合、第1開側学習値として開側限界電流値を設定する。一方、学習処理部10cは、ステップS327に進んだ場合、平均第1駆動電流D1Vから平均静止電流値を引いた値を第1開側学習値に設定する。第1開側学習値は、負の値である。この後、学習処理部10cは、ステップS331にて、開側学習処理完了フラグをONにする。そして、学習処理部10cは、開側学習処理の一連の処理を終了する。
つぎに、ECU10の算出部10bが行う算出処理、及び補正処理部10dが行う補正処理について図6を用いて説明する。ECU10は、第1圧力センサ116及び第2圧力センサ216の検出値に基づいて第1バンク100及び第2バンク200における過給圧を把握する。そして、ECU10は、適宜のタイミングで過給圧の要求指令を算出部10bに送る。算出部10bは、過給圧の要求指令が来る度に算出処理を実行する。
算出部10bは、処理を開始すると、ステップS401に処理を進める。ステップS401にて、算出部10bは、第1バンク100で要求される過給圧に応じた第1要求駆動電流D1Wを算出する。具体的には、算出部10bは、先ず、第1排気通路121における排気の圧力を推定する。そして、算出部10bは、この排気の圧力に応じて第1ウェイストゲートバルブ123を目標開度まで動作させるのに必要となる駆動電流を第1要求駆動電流D1Wとして算出する。この後、算出部10bは、ステップS402に処理を進める。ステップS402にて、算出部10bは、第2バンク200で要求される過給圧に応じた第2要求駆動電流D2Wを算出する。具体的には、算出部10bは、先ず、第2排気通路221における排気の圧力を推定する。そして、算出部10bは、この排気の圧力に応じて第2ウェイストゲートバルブ223を目標開度まで動作させるのに必要となる駆動電流を第2要求駆動電流D2Wとして算出する。本実施形態において、第2ウェイストゲートバルブ223の目標開度は、第1ウェイストゲートバルブ123の目標開度と同一である。以上のステップS401及びステップS402の処理が算出処理である。
算出部10bがステップS402の処理を終了すると、補正処理部10dが補正処理を開始する。具体的には、補正処理部10dは、ステップS501の処理を開始する。ステップS501にて、補正処理部10dは、過給圧の要求指令が、第1ウェイストゲートバルブ123及び第2ウェイストゲートバルブ223を開き側へ動作させるものか否かを判定する。この判定がYESの場合、補正処理部10dは、ステップS503に処理を進める。この場合、開き側に関する補正処理を行うことになる。一方、上記判定がNOの場合、補正処理部10dは、ステップS507に処理を進める。この場合、閉じ側に関する補正処理を行うことになる。
補正処理部10dは、ステップS503に処理を進めた場合、第1要求駆動電流D1Wの補正処理を行う。具体的には、補正処理部10dは、ステップS401で算出された第1要求駆動電流D1Wに、負の値である第1開側学習値を加えた値を最終第1要求駆動電流D1Waに設定する。この後、補正処理部10dは、ステップS505に処理を進める。
ステップS505にて、補正処理部10dは、第2要求駆動電流D2Wの補正処理を行う。具体的には、補正処理部10dは、ステップS402で算出した第2要求駆動電流D2Wに、負の値である第2開側学習値を加えた値を最終第2要求駆動電流D2Waに設定する。
補正処理部10dは、ステップS501からステップS507へと処理を進めた場合、第1要求駆動電流D1Wの補正処理を行う。具体的には、補正処理部10dは、ステップS401で算出された第1要求駆動電流D1Wに第1閉側学習値を加えた値を最終第1要求駆動電流D1Waに設定する。この後、補正処理部10dは、ステップS509に処理を進める。
ステップS509にて、補正処理部10dは、第2要求駆動電流D2Wの補正処理を行う。具体的には、補正処理部10dは、ステップS402で算出した第2要求駆動電流D2Wに第2閉側学習値を加えた値を最終第2要求駆動電流D2Waに設定する。この後、補正処理部10dは、処理を終了する。以上のステップS501〜ステップS509の処理が補正処理である。
ECU10の出力部10aは、補正処理部10dが処理を終了した後、出力する第1駆動電流D1及び第2駆動電流D2を、補正処理を通じて更新された最終第1要求駆動電流D1Wa及び最終第2要求駆動電流D2Waに見合った駆動電流に同時に変更する。
つぎに、本実施形態の作用及び効果を説明する。
(1)排気の圧力が不変だとした場合に、静止している第1ウェイストゲートバルブ123に対する第1駆動電流D1を変更したときには、第1ウェイストゲートバルブ123が応答しない電流値の領域である不感帯が存在し得る。図9は、排気の圧力が不変の状況下における、第1駆動電流D1と第1ウェイストゲートバルブ123の開度との関係性の例を示している。図9の一点鎖線は、第1ウェイストゲートバルブ123が不感帯をもたない場合の例を示している。ここで、第1ウェイストゲートバルブ123を開度100%の位置から開度を小さくする方向へ動作させることを考える。第1ウェイストゲートバルブ123が不感帯をもたない場合、第1ウェイストゲートバルブ123は、第1駆動電流D1が出力されると、当該第1駆動電流D1の大きさに応じた分だけ動作する。図9の実線D1Xは、第1ウェイストゲートバルブ123が不感帯をもつ場合の例を示している。この場合、出力される第1駆動電流D1が電流値D1aよりも小さい値であるときには、第1ウェイストゲートバルブ123は開度100%の位置から動かない。一方、出力される第1駆動電流D1が電流値D1aよりも大きい値であれば、第1ウェイストゲートバルブ123は開度が小さくなる方向へ動作する。つまり、第1ウェイストゲートバルブ123は、その動き出しに際して、電流値D1aよりも大きい第1駆動電流D1を要する。
上記のような不感帯は、第1ウェイストゲートバルブ123や第1電動アクチュエータ124が静止している状態から動き出そうとしたときの摩擦(静摩擦)や、デポジットの付着等に起因して生じる。こうした不感帯がある場合に、第1ウェイストゲートバルブ123を静止状態から動作させる上では、不感帯の原因となっている例えば静摩擦を超えた分の力、つまり、第1駆動電流D1における電流値D1aを超えた分の電流量が、第1ウェイストゲートバルブ123を動作させるための有効な電流の大きさとなる。静摩擦の大きさやそれに対応する電流値D1aを考慮せずに第1要求駆動電流D1Wを決定すると、つまり、第1駆動電流D1に対する第1ウェイストゲートバルブ123の応答性を考慮せずに第1要求駆動電流D1Wを決定すると、第1ウェイストゲートバルブ123の動作のスピードが遅くなったり、最終到達開度が目標開度からずれたりするおそれがある。この結果、過給圧を正確にコントロールできなくなる。
こうした問題に対処するため、本実施形態では、ECU10の学習処理部10cが、静止状態にある第1ウェイストゲートバルブ123の動き出しに必要となる第1駆動電流D1の変化量を学習値として学習する。そして、補正処理部10dは、学習値を用いて第1要求駆動電流D1Wを補正する。例えば、第1閉側学習値が上記電流値D1aだとする。この場合、補正処理部10dは、第1要求駆動電流D1Wに電流値D1aを加えた値を最終第1要求駆動電流D1Waに設定する。つまり、最終第1要求駆動電流D1Waは、第1駆動電流D1に対する第1ウェイストゲートバルブ123の応答性を考慮した値となっている。そして、この最終第1要求駆動電流D1Waに見合った第1駆動電流D1を出力部10aが第1電動アクチュエータ124に出力する。したがって、本実施形態によれば、目標どおりの動作のスピードで第1ウェイストゲートバルブ123を動作させることができ、かつ、目標開度まで第1ウェイストゲートバルブ123を動作させることができる。そのため、第1バンク100における過給圧を正確にコントロールできる。
(2)第1駆動電流D1に対する第1ウェイストゲートバルブ123の応答性と、第2駆動電流D2に対する第2ウェイストゲートバルブ223の応答性とは異なる場合がある。図9の実線D2Xは、第2ウェイストゲートバルブ223が不感帯をもつ場合における、第2駆動電流D2と第2ウェイストゲートバルブ223の開度との関係性の例を示している。第2ウェイストゲートバルブ223を開度100%の位置から開度を小さくする方向へ動作させる場合、第2駆動電流D2は電流値D2aよりも大きい値にする必要がある。ここで、電流値D2aは電流値D1aよりも大きい。つまり、第1ウェイストゲートバルブ123と第2ウェイストゲートバルブ223とでは、それぞれの駆動電流に対する応答性が異なる。そのため、第1要求駆動電流D1Wと第2要求駆動電流D2Wとを同一の値に設定すると、第1ウェイストゲートバルブ123と第2ウェイストゲートバルブ223とで最終的な開度が異なってしまう。この場合、第1バンク100と第2バンク200とで、それぞれのタービン115a,215aに流れる排気の流量に差が生じ、両バンク100,200間で過給圧に違いが生じる。
本実施形態では、第1ウェイストゲートバルブ123と第2ウェイストゲートバルブ223とのそれぞれに関して、動き出しに必要となる駆動電流の変化量を個別に学習している。そして、それによって得られた学習値に基づいて、第1要求駆動電流D1W及び第2要求駆動電流D2Wを補正している。そして、これら補正した第1要求駆動電流D1W及び第2要求駆動電流D2Wに見合った第1駆動電流D1及び第2駆動電流D2を出力部10aから出力している。したがって、第1ウェイストゲートバルブ123と第2ウェイストゲートバルブ223の動作のスピード及び最終的な開度を揃えることができる。したがって、本実施形態によれば、第1バンク100及び第2バンク200間での過給圧の差を抑制できる。
(3)例えば設定期間内に学習値が更新された状態で学習処理を行う場合、当該学習処理にて得られる学習値は、前回の学習値とそれほど大きく変わらない可能性が高い。したがって、こうした場合には、前回の学習値に対応する駆動電流にある程度近い電流値から学習処理を開始すれば、学習処理に要する時間を短縮できて好ましい。これに対して、学習値が設定期間更新されていない状態で学習処理を行う場合、当該学習処理で得られる学習値は、前回の学習値とは大きく異なる可能性がある。この場合、前回の学習値を今回の学習処理の初期値に反映させると、例えば学習処理の開始の段階での駆動電流が、今回の学習処理で本来得られるはずの学習値を越えていしまっている等、適切な学習値を得られない可能性があり好ましくない。したがって、こうした場合には学習値を一から決めなおす必要がある。この場合、学習処理に要する時間を短縮する上では、学習処理に際する更新量を大きくすることが好ましい。
そこで、本実施形態では、つぎのような構成を採用している。図10に示すように、学習処理部10cは、第1閉側学習値が設定期間更新されていない状態で閉側学習処理を行う場合、第1駆動電流D1の更新値を、第2更新値DSよりも大きい第1更新値DLに設定する。そして、学習処理部10cは、第1駆動電流D1を、静止電流値D1zから第1更新値DLずつ増加させていく。図10に示すように、更新値を第1更新値DLに設定した場合には、更新値を第2更新値DSに設定した場合に比べて、学習処理における第1駆動電流D1の一段階あたりの変化量が大きくなる。したがって、学習処理において第1駆動電流D1を段階的に変化させていくのに際して、その変化に回数をかけずに、第1駆動電流D1を学習値Dmに対応する電流値D1bに近づけることができる。そのため、第1更新値DLを用いて学習処理を行う場合に要する時間t1は、第2更新値DSを用いて学習処理を行う場合に要する時間t2に比べて短くなる。開側学習処理についても同様である。
なお、閉側学習処理及び開側学習処理は、学習条件(A)〜(D)の全てが成立したときに実行される。1トリップにおいて学習条件(A)〜(D)が全て成立する機会はかなり限られる。したがって、上述のようにして学習処理に要する時間を短縮することで、限られた期間の中で第1閉側学習値及び第1開側学習値を更新していくことが可能となる。
(4)学習処理部10cは、第1閉側学習値が設定期間内に更新された状態で閉側学習処理を行う場合、学習済みの学習値を変化開始電流値に反映させている。そして、学習処理部10cは、図11に示すように、学習の初期値となる第1駆動電流D1を静止電流値D1zから変化開始電流値D1sへと一段階で変化させている。つまり、学習値Dmに対応する電流値D1bにある程度近い値まで一気に第1駆動電流D1を変化させている。したがって、その後、最終的な学習値を得るまでの時間を短縮できる。つまり、この場合に学習処理に要する時間t1は、静止電流値D1zを学習の初期値として学習を行う場合に学習処理に要する時間t2に比べて短くなる。開側学習処理についても同様である。
なお、学習処理部10cは、第1閉側学習値または第1開側学習値が設定期間内に更新された状態で学習処理を行う場合、第1駆動電流D1の更新値を第2更新値DSに設定する。上述のとおり、第2更新値DSは、第1更新値DLよりも小さい。こうして更新量を細かく刻んでいくことで、学習値の精度が向上する。
(5)第1ウェイストゲートバルブ123が静止している状態では、第1電動アクチュエータ124と連結機構との連結に係る部品間や、連結機構の各部品間や、連結機構と第1ウェイストゲートバルブ123との連結に係る部品間に僅かな隙間がある。第1ウェイストゲートバルブ123が静止している状態で第1電動アクチュエータ124に第1駆動電流D1が供給された場合、まず、上記各部品が互いの間の隙間を詰める位置まで順に動く。この動作に応じて第1開度センサ127の検出値は変化する。このとき、第1ウェイストゲートバルブ123は未だ静止している。つまり、学習処理に際して第1駆動電流D1を一段階変化させた直後は、第1ウェイストゲートバルブ123が静止している状態の下、上記各部品が互いの間の隙間を詰めることに応じて第1開度センサ127の検出値が変化し得る。そのため、上記各部品が互いの間の隙間を詰めている期間は、第1ウェイストゲートバルブ123が動き始めたことを判定する期間から除くことが好ましい。
この点、上記構成では、第1ウェイストゲートバルブ123が動いたことを判定する算出期間の前に遅延期間をおいている。遅延期間をおくことにより、第1ウェイストゲートバルブ123が動いたことを判定する前に上記各部品が互いの間の隙間を詰める期間を確保できるようになる。そして、遅延期間の後の算出期間にて第1ウェイストゲートバルブ123が動いたことを判定することで、上記各部品が互いの間の隙間を詰めている間の第1開度センサ127の検出値の変化に応じて第1ウェイストゲートバルブ123が動いたと誤判定してしまうことを抑制できる。
(6)第1駆動電流D1を変化させた直後は、電流検出部10eで検出する電流値が安定し難い。そのため、学習処理に際して、第1駆動電流D1を一段階変化させた後、電流値が安定するまでには僅かなラグがある。
上記構成では、算出期間の前に遅延期間をおくことで、電流値が安定する期間を確保できる。そして、遅延期間の後の算出期間にて第1ウェイストゲートバルブ123が動いたことを判定することで、電流値が比較的安定した状況の下、第1ウェイストゲートバルブ123が動いたことを判定できる。
(7)遅延期間後である算出期間においては、電流検出部10eで検出する第1駆動電流D1が比較的安定しているものの、当該第1駆動電流D1はノイズ等により変動し得る。そのため、例えば算出期間のある特定のタイミングで電流検出部10eが検出した第1駆動電流D1を用いて第1駆動電流D1の変化量を算出した場合、上記変動に応じて、学習値となる第1駆動電流D1の変化量が過度に大きくなったり、小さくなったりする可能性がある。したがって、学習値の誤差が大きくなる。この点、上記構成では、算出期間における第1駆動電流D1の平均値を用いて、学習値となる第1駆動電流D1の変化量を算出している。こうして平均値を用いれば、ノイズ等による第1駆動電流D1の変動に応じた誤差の影響を抑えた学習値を得ることができる。
(8)異物の噛み込み等によって、第1ウェイストゲートバルブ123が正常に動作しない場合がある。こうした場合には、学習処理を行って第1駆動電流D1を段階的に変化させていった際、本来第1ウェイストゲートバルブ123が動作を開始するはずの電流値を越えても第1ウェイストゲートバルブ123が動作しない可能性がある。そして、学習値が異常な値になったり、学習値が恒久的に定まらなかったりするおそれがある。この点、本実施形態では、平均第1駆動電流D1Vが予め定められた閉側規定電流値を越えた場合には、閉側限界電流値を学習値としている。また、平均第1駆動電流D1Vが予め定められた開側規定電流値を低電流側に越えた場合には、開側限界電流値を学習値としている。したがって、第1ウェイストゲートバルブ123の動作異常に起因して、学習値が異常な値になったり、学習値が恒久的に定まらなかったりするといった事態が防止される。
(9)イグニッションスイッチがオンにされた後の過給圧の立ち上げに際しては、第1ウェイストゲートバルブ123の開度が小さくなるように第1ウェイストゲートバルブ123を動作させて第1バイパス通路122の流路を閉鎖する。そして、タービン115aに向かう排気の流量を増加させて、過給圧を上昇させる。図8に示すように、第1ウェイストゲートバルブ123によって第1バイパス通路122の流路を閉鎖するときには、特にその閉じ際近傍において、タービン115aに向かう排気の流量が急増し、過給圧が急増する。したがって、第1ウェイストゲートバルブ123の開度が小さくなるように第1ウェイストゲートバルブ123を動作させて第1バイパス通路122の流路を閉鎖する際の第1ウェイストゲートバルブ123の開度にずれがあると、過給圧の立ち上げにおいて当該過給圧を正確にコントロールすることが困難となる。そこで、上記構成では、イグニッションスイッチがオンにされたときには、閉側学習処理を開側学習処理よりも優先し、まずは閉側学習値を更新するようにしている。これにより、過給圧の立ち上げに際して第1ウェイストゲートバルブ123の開度を小さくする動作に関して、極力最新の学習値を適用できるようになる。そして、第1ウェイストゲートバルブ123の開度のずれを抑制できるようになる。
(10)学習処理部10cは、閉側学習処理と開側学習処理との両方を行う。そのため、第1ウェイストゲートバルブ123の開度を小さくする場合と、第1ウェイストゲートバルブ123の開度を大きくする場合との両方に関して、第1駆動電流D1に対する第1ウェイストゲートバルブ123の応答性を考慮した要求駆動電流を算出できる。したがって、第1ウェイストゲートバルブ123の開度を小さくする場合と、第1ウェイストゲートバルブ123の開度を大きくする場合との両方に関して、第1ウェイストゲートバルブ123の開度を正確にコントロールできる。
(11)学習処理部10cは、第1ウェイストゲートバルブ123が開度25%〜75%の範囲内に位置しているときに、閉側学習処理及び開側学習処理を行う。第1ウェイストゲートバルブ123が開度25%〜75%の範囲内に位置しているときには、第1ウェイストゲートバルブ123の動き出しに必要となる力の大きさ(第1ウェイストゲートバルブ123の動き出しに必要となる第1駆動電流D1)が、第1ウェイストゲートバルブ123の開度に拘らずほぼ一定となる(図7参照)。したがって、第1ウェイストゲートバルブ123が開度25%〜75%の範囲内に位置しているときに学習処理を行い、当該学習処理にて学習値を一旦得ることができれば、その学習値を、第1ウェイストゲートバルブ123の開度25%〜75%の全ての範囲に亘って適用できる。ここで、第1ウェイストゲートバルブ123が開度25%〜75%の範囲内に位置しているときと、第1ウェイストゲートバルブ123が開度0%〜25%の範囲内に位置しているときとでは、第1ウェイストゲートバルブ123の動き出しに必要となる力の大きさにそれほど差異がない。したがって、第1ウェイストゲートバルブ123の開度が25%〜75%である場合に学習処理を行って得られた学習値を、第1ウェイストゲートバルブ123の開度が0%〜25%である場合の学習値として採用することができる。また、第1ウェイストゲートバルブ123の開度が75%〜100%である場合の過給圧は小さく、開度による変化も小さい。したがって、過給圧をコントロールする上では、学習値の値が正確に静摩擦の大きさに対応していなくても特に問題はない。そのため、第1ウェイストゲートバルブ123の開度が25%〜75%である場合に学習処理を行って得られた学習値を、第1ウェイストゲートバルブ123の開度が75%〜100%である場合の学習値として採用することができる。
このように、第1ウェイストゲートバルブ123が開度25%〜75%の範囲で静止している場合に学習処理を行った場合、第1ウェイストゲートバルブ123の全ての開度範囲に亘って適用可能な学習値を得ることができる。したがって、開度毎に学習値を記憶しなくてもよくなる。
(12)学習処理部10cは、第1ウェイストゲートバルブ123にかかる排気の圧力が小さい状況で閉側学習処理及び開側学習処理を行う。ここで、第1ウェイストゲートバルブ123にかかる排気の圧力が大きい場合、第1ウェイストゲートバルブ123を開度の大きくなる方向へ押す力が強くなる。そのため、第1駆動電流D1に応じて開き側へ動き出そうとした第1ウェイストゲートバルブ123の動作が加速されたり、閉じ側へ動き出そうとした第1ウェイストゲートバルブ123の動作が抑制されたりするおそれがある。この点、本実施形態によれば、排気の圧力に応じた第1ウェイストゲートバルブ123の動作の影響をできるだけ排除した学習値を得ることができる。
(13)学習処理部10cは、第1ウェイストゲートバルブ123及び第1電動アクチュエータ124が振動し難い状況で閉側学習処理及び開側学習処理を行う。ここで、第1ウェイストゲートバルブ123や第1電動アクチュエータ124が振動し易い状況下で学習処理を行った場合、当該学習処理で得られる学習値は、第1ウェイストゲートバルブ123や第1電動アクチュエータ124の動摩擦に応じたものとなってしまう。動摩擦は静摩擦よりも小さいのが一般的である。そのため、第1学習処理の実行中に第1ウェイストゲートバルブ123や第1電動アクチュエータ124が振動してしまうと、本来得るべき学習値である静摩擦に応じた学習値よりも小さな値を学習してしまうおそれがある。この点、本実施形態によれば、静摩擦に応じた適切な学習値を得ることができる。
(14)学習処理部10cは、第1ウェイストゲートバルブ123及び第1電動アクチュエータ124の温度がある程度高い状況で閉側学習処理及び開側学習処理を行う。ここで、第1ウェイストゲートバルブ123及び第1電動アクチュエータ124の温度が低いと、これら第1ウェイストゲートバルブ123及び第1電動アクチュエータ124のロッドの動作を円滑にするためのグリースの粘性が高くなり、第1ウェイストゲートバルブ123及び第1電動アクチュエータ124のロッドが動作し難くなる。この点、本実施形態によれば、第1ウェイストゲートバルブ123及び第1電動アクチュエータ124のロッドが動作し易い状態での学習値を得ることができる。
なお、上記実施形態は、以下のように変更して実施することも可能である。また、各変更例は技術的に矛盾しない範囲で組み合わせて適用することも可能である。
・内燃機関Eの構成は、適宜変更可能である。ただし、過給機、バイパス通路、ウェイストゲートバルブ、電動アクチュエータ、ECUを備えているとともに、学習処理、算出処理、補正処理を実行可能であることが条件である。
・内燃機関Eは、第1バンク100及び第2バンク200に分かれていなくてもよい。例えば、内燃機関Eは、V型の内燃機関でなくても、直列型でバイパス通路及びウェイストゲートバルブを1組のみ備えた内燃機関であってもよい。そして、そうした内燃機関を対象として、学習処理、算出処理、補正処理を行ってもよい。
・イグニッションスイッチがオンにされた後、開側学習処理を閉側学習処理に対して優先して行うようにしてもよい。この場合、図3に示した第1学習処理のステップS28にて、開側学習完了フラグがONであるか否かを判定するようにする。そして、この判定がNOであれば開側学習処理を行う。一方、この判定がYESであれば閉側学習処理を行う。
・複数のトリップに亘って閉側学習処理と開側学習処理とを交互に行うようにしてもよい。ここで、閉側学習処理と開側学習処理とを交互に行うとは、閉側学習処理の実行開始から完了までと、開側学習処理の実行開始から完了までと、を交互に行うことをさす。すなわち、前回実施した学習処理が開側学習処理であり、その開側学習処理が完了している場合には、閉側学習処理を実行する。また、前回実施した学習処理が閉側学習処理であり、その閉側学習処理が完了している場合には、開側学習処理を実行する。一方で、前回実施した学習処理がその完了前に途中で終了している場合には、前回実施していた学習処理を実施する。要するに、一方の学習処理が完了すると、実施する学習処理を他方の学習処理に切り替える。閉側学習処理と開側学習処理とを交互に行う場合、閉側学習完了フラグと開側学習完了フラグとをつぎのように設定すればよい。ECU10の初期状態(内燃機関Eを搭載した車両が初めて走行を行う場合)では、開側学習完了フラグ及び閉側学習完了フラグをともにOFFに設定しておく。その上で、学習処理部10cは、開側学習完了フラグ及び閉側学習完了フラグをつぎのように変更する。すなわち、学習処理部10cは、開側学習処理を完了すると、開側学習完了フラグをOFFからONに変更する。また、学習処理部10cは、閉側学習処理を完了すると、閉側学習完了フラグをOFFからONに変更する。開側学習完了フラグと閉側学習完了フラグがともにONになった場合、学習処理部10cは、開側学習完了フラグと閉側学習完了フラグとの両方をOFFに戻す。イグニッションスイッチがオンからオフになった場合、学習処理部10cは、イグニッションスイッチがオンの状態で記憶している開側学習完了フラグと閉側学習完了フラグを保持し続ける。そして、学習処理部10cは、保持している開側学習完了フラグと閉側学習完了フラグの情報を、つぎにイグニッションスイッチがオンになったときに利用する。上記のように閉側学習完了フラグと開側学習完了フラグとを設定した上で、上記実行条件(A)〜(D)が成立した場合に、図3に示した第1学習処理を行うことで、閉側学習処理と開側学習処理とを交互に行うことができる。
・イグニッションスイッチがオンにされたときに閉側学習処理を優先する構成と、閉側学習処理と開側学習処理とを交互に行う構成とを組み合わせてもよい。例えば、第1閉側学習値及び第1開側学習値が共に所定期間更新されていない場合には、イグニッションスイッチがオンにされたときに閉側学習処理を優先し、第1閉側学習値及び第1開側学習値が共に所定期間内に更新されている場合には、閉側学習処理と開側学習処理とを交互に行ってもよい。なお、上記所定期間は、例えば閉側学習処理のステップS201及び開側学習処理のステップS301の判定に用いられる設定期間と同程度の期間とすることが考えられる。同様に、イグニッションスイッチがオンにされたときに開側学習処理を優先する構成と、閉側学習処理と開側学習処理とを交互に行う構成とを組み合わせてもよい。
・閉側学習処理の実行開始から完了までと、開側学習処理の実行開始から完了までとを1トリップの間に複数回行ってもよい。この場合、実行条件は、(イ)及び(ロ)の2つになる。
・閉側学習処理と開側学習処理とのいずれか一方のみを行い、他方を廃止してもよい。学習処理の機会が限られているため、いずれか一方の学習処理の重要性が高い場合には、こうした構成を採用することが、学習頻度を高める上で有益である。
・閉側学習処理のステップS201の判定に用いられる設定期間は、1日に限定されるものではなく、適宜変更可能である。ただし、上記の(3)及び(4)の効果を最大限享受するためには、この設定期間は、当該期間内であれば第1閉側学習値が大きく変化していないことをある程度高い確率で保証することのできる範囲で最大限長い期間にすることが好ましい。なお、1日から1ヶ月程度の期間であれば、第1閉側学習値が大きく変化するとは考え難い。開側学習処理のステップS301の判定に用いられる設定期間についても同様である。
・設定期間内に第1閉側学習値が更新されている場合(ステップS201:YES)に設定する変化開始電流値(ステップS209)を、静止電流値に設定してもよい。この場合、学習処理に要する時間の短縮のため、更新値を第1更新値に設定することが好ましい。開側学習処理のステップS309についても同様である。
・例えば、設定期間内に第1閉側学習値は更新されているが、第1開側学習値は更新されていないような場合がある。こうした場合には、前回の第1閉側学習値を開側学習処理における変化開始電流値に反映させてもよい。閉側学習処理についても同様である。
上記のような場合の開側学習処理の例のフローチャートを図12に示す。なお、図12に示すフローチャートでは、図5で示したフローチャートに対して、ステップS395、ステップS397、及びステップS399の3つのステップが追加されている。以下、この追加されたステップを中心に、図12に示す処理の流れを説明する。
学習処理部10cは、ステップS301にて設定期間内に第1開側学習値が更新されていない(ステップS301:NO)と判定した場合、ステップS395に処理を進める。ステップS395にて、学習処理部10cは、設定期間内に第1閉側学習値が更新されたか否かを判定する。学習処理部10cは、設定期間内に第1閉側学習値が更新されたと判定した場合(ステップS395:YES)、ステップS397に処理を進める。一方、学習処理部10cは、設定期間内に第1閉側学習値が更新されていないと判定した場合(ステップS395:NO)、ステップS303に処理を進める。この場合、学習処理部10cは、既に説明したステップS303及びステップS305の処理を行う。
学習処理部10cは、ステップS397に処理を進めた場合、更新値を第3更新値に設定する。第3更新値は、第1更新値よりも小さく第2更新値よりも大きい値である。この後、学習処理部10cは、ステップS399に処理を進める。ステップS399にて、学習処理部10cは、変化開始電流値をつぎの式(5)のように設定する。
変化開始電流値=静止電流値−前回の第1閉側学習値×C ・・・(5)
係数Cは、係数Bよりも小さい正の値である。式(5)から明らかなように、変化開始電流値には、係数Cに応じた重みで前回の第1閉側学習値が反映される。この後、学習処理部10cは、ステップS311に処理を進める。この後の処理の流れは、図5で説明した処理の流れと同一である。
・係数A、係数B、係数Cは、正の値であることを前提としてそれぞれの値を適宜変更可能である。係数A、係数B、係数Cは、これらを全て同一の値に設定してもよいし、互いに異なる値にしてもよい。ただし、変化開始電流値が、最終的な学習値に対応する第1駆動電流D1を越えてしまうことを避けるため、各係数の値は1よりも小さい正の値であることが好ましい。また、上記変更例のように、第1閉側学習値を開側学習処理の変化開始電流値に反映させる場合に用いる係数Cに関しては、係数A及び係数Bよりも小さい値を設定することが好ましい。第1閉側学習値と第1開側学習値は、似通った値になる可能性が高いが、必ずしも同一の値になるとは限らない。そのため、第1閉側学習値を開側学習処理の変化開始電流値に反映させる場合には、第1閉側学習値の重みを減らすことが好ましい。第1開側学習値を閉側学習処理の変化開始電流値に反映させる場合も同様である。
・第1更新値、第2更新値、第3更新値は、正の値であることを前提としてそれぞれの値を適宜変更可能である。第1更新値、第2更新値、第3更新値は、これらを全て同じ値にしてもよい。また、第1更新値と第2更新値と第3更新値の大小関係を変更してもよい。なお、これらの更新値は、その値が大きければ、学習処理に要する時間は短くなる。また、これらの更新値は、その値が小さければ、学習値の精度が上がる。つまり、更新値の値は、学習処理に要する時間と学習値の精度との兼ね合いから決定すればよい。
・開側学習処理における更新値を負の値に設定し、ステップS315における演算式の右辺を足し算にする構成も可能である。
・閉側学習処理と開側学習処理とで第1更新値を異なる値に設定してもよい。第2更新値についても同様である。第3更新値と、それに相当する閉側学習処理における更新値との関係についても同様である。
・閉側学習処理や開側学習処理の実行中に、第1更新値、第2更新値、第3更新値の値を変更してもよい。例えば、閉側学習処理の実行中に更新値の値を徐々に小さくしていってもよい。
・複数回の閉側学習処理で連続して、平均第1駆動電流D1Vが閉側規定電流値を越えるような場合には、第1ウェイストゲートバルブ123や第1電動アクチュエータ124が故障している可能性が考えられる。そこで、例えば2回の閉側学習処理で連続して平均第1駆動電流D1Vが閉側規定電流値を越えた場合には、第1ウェイストゲートバルブ123や第1電動アクチュエータ124が故障していると判定して、車両の運転者に報知してもよい。開側学習処理についても同様である。また、閉側学習処理と開側学習処理とで連続して平均第1駆動電流D1Vがそれぞれの規定電流値を越えた場合に、第1ウェイストゲートバルブ123や第1電動アクチュエータ124が故障していると判定して、車両の運転者に報知してもよい。
・閉側規定電流値及び開側規定電流値を設定せずに学習処理を行ってもよい。例えば、第1駆動電流D1に対する第1ウェイストゲートバルブ123の応答が異常であることを監視する他の機構が内燃機関Eに搭載されていれば、そうした機構からの信号に基づいて、学習処理を途中で中止したり、学習値を閉側限界電流値や開側限界電流値に設定する構成も可能である。
・閉側規定電流値の算出に際して、平均静止電流値ではなく、静止電流値に閉側限界電流値を加えてもよい。開側規定電流値についても同様である。
・閉側限界電流値と開側限界電流値の絶対値を互いに異なる値に設定してもよい。
・学習条件(A)に関して、第1ウェイストゲートバルブ123の開度と、第1ウェイストゲートバルブ123に排気の圧力がかかっていない状態で第1ウェイストゲートバルブ123の動き出しに必要となる力の大きさとの関係は、連結機構の特性次第で変わり得る。連結機構のタイプに応じて上記関係が変化した場合、その関係に応じて学習条件(A)の開度範囲を変更する必要がある。上記実施形態のように、所定の開度範囲内の任意の開度で得られた学習値を、他の全ての開度範囲(開度0%〜100%)に適用できる場合には、その所定の開度範囲を条件(A)に採用すればよい。上記関係によっては、一つの開度範囲で得られた学習値のみでは、全ての開度範囲に対応できない場合があり得る。この場合、第1ウェイストゲートバルブの開度0%〜100%の間で複数の開度範囲を設定し、設定した開度範囲ごとにそれぞれの範囲で汎用性のある学習値を学習するようにしてもよい。つまり、複数の開度範囲に対応させて学習条件(A)を設定し直しつつ、設定した開度範囲の数の分だけ学習処理を行う。
・学習条件(C)に関して、エンジン回転数EN、車速SP、第1吸入空気量AS1のうちのいずれか一つまたは二つのパラメータのみを、当該学習条件(C)の成立を判定するパラメータとしてもよい。ただし、第1ウェイストゲートバルブ123及び第1電動アクチュエータ124が振動し難い状況となっていることは必須である。
・学習条件(D)に関して、機関本体23内の水温WT、第1吸入空気量AS1の積算量、第1吸気温AT1のうちのいずれか一つまたは二つのパラメータのみを、当該学習条件(D)の成立を判定するパラメータとしなくてもよい。ただし、第1ウェイストゲートバルブ123及び第1電動アクチュエータ124の温度がある程度高い状況となっていることは必須である。
・学習条件(A)〜(D)のうちのいくつかが成立しない状態で閉側学習処理を行ってもよい。また、学習条件(A)〜(D)が全て成立しない状態で閉側学習処理を行ってもよい。開側学習処理についても同様である。学習条件(A)〜(D)が全て成立した状態で学習処理を実行しようとすると、その実行機会がかなり限定される。したがって、上述のようにして学習処理の実行条件を緩和することで、学習機会を増やすことができる。ただし、条件(A)が成立しない状態で学習処理を行うことに関しては、過給圧をコントロールする上で支障がないことを条件とする。
・閉側学習処理の実行途中に学習条件(A)〜(D)のいずれか、または全てが成立しなくなった場合に、閉側学習処理を継続するようにしてもよい。すなわち、一旦閉側学習処理が開始されたら、学習条件(A)〜(D)が満たされているか否かにかかわらず、当該閉側学習処理を完了させてもよい。開側学習処理についても同様である。
・学習処理において駆動電流を段階的に変化させていく際、その1ステップにおいて、遅延期間と算出期間のそれぞれが占める割合を、上記実施形態のものから変更してもよい。例えば、1ステップにおける初めの4分の1の期間を遅延期間、残りの期間を算出期間としても良い。遅延期間を長くとれば、上記の(5)及び(6)の効果をより一層享受できる。また、算出期間を長くとれば、上記(7)の効果をより一層享受できる。両者の兼ね合いから、最適な割合を決定すればよい。
・遅延期間を廃止してもよい。例えば、第1電動アクチュエータ124と第1ウェイストゲートバルブ123との連結に係る各部材が互いの間の隙間を詰めることに対応する第1開度センサ127の検出値の変化量が予め推定できれば、遅延期間をおかなくても、第1開度センサ127の検出値から上記変化量を差し引くことで、第1ウェイストゲートバルブ123の動きに対応した第1開度センサ127の検出値の変化を抽出できる。
・電流検出部10eの検出値に基づいて算出期間における第1駆動電流D1の変化量を算出する際、必ずしも算出期間における第1駆動電流D1の平均値を用いなくてもよい。例えば、算出期間における第1駆動電流D1の最大値と最小値の中間値を用いてもよい。つまり、第1ウェイストゲートバルブ123が静止している状態から当該第1ウェイストゲートバルブ123が所定開度以上動いたと判定されるまでの第1駆動電流D1の変化量を算出することができれば、その算出に際する第1駆動電流D1の取り扱い方は、適宜変更可能である。なお、第1駆動電流D1の変化量を算出する際の基準値となる、第1ウェイストゲートバルブ123が静止している状態での第1駆動電流D1は、当該静止している状態での第1駆動電流D1を代表する値であればよく、平均静止電流値でなくてもよい。
・電流検出部10eの検出値に基づいて、算出期間における第1駆動電流が閉側規定電流値又は開側規定電流値を超えたか否かを判定する際、必ずしも算出期間における第1駆動電流D1の平均値を用いなくてもよい。例えば、算出期間における第1駆動電流D1の最大値と最小値の中間値を用いてもよい。つまり、算出期間における第1駆動電流D1が、学習値の上下限のガードの範囲内にあるか否かを客観的に判定できれば、その判定に際する第1駆動電流D1の取り扱い方は、適宜変更可能である。
・第1駆動電流D1を段階的に変化させていく際の1ステップの間隔は、適宜変更可能である。この間隔を短くすれば、学習処理に要する時間を短縮できる。ただし、この間隔は、第1ウェイストゲートバルブ123が所定開度動いたことを捉えることが可能な長さ以上である必要がある。
・第1駆動電流D1を段階的に変化させていく際、当該第1駆動電流D1の変化がパルス状となるように当該第1駆動電流D1を段階的に変化させていってもよい。具体的には、各ステップの間で第1駆動電流D1を例えば変化開始電流値に戻すことを毎回繰り返しながら第1駆動電流D1を段階的に変化させることが考えられる。
・電動アクチュエータの構成として、バネ等によりウェイストゲートバルブを一方向に付勢しているタイプのものがある。こうしたタイプの電動アクチュエータを内燃機関に採用し、閉側学習処理及び開側学習処理を行ってもよい。
ここで、上記のようなタイプの電動アクチュエータを採用した場合、ウェイストゲートバルブに排気の圧力がかかっていない状況でウェイストゲートバルブを所定開度に静止させる上では、上記付勢力に抗してウェイストゲートバルブを所定開度に静止させるための駆動電流が必要であり、その駆動電流が静止電流値となる。この場合、静止電流値は0よりも大きい。こうした電動アクチュエータを採用した場合、駆動電流は、ウェイストゲートバルブを閉側へ動作させる場合も、開側へ動作させる場合も常に正の値となる。上記実施形態で示した閉側学習処理及び開側学習処理は、こうした電動アクチュエータを採用した場合でも適用可能である。
なお、駆動電流が常に正の値となる上述のような電動アクチュエータを採用した場合、第1開側学習値を正の値として算出することも可能である。つまり、ステップS327にて、平均静止電流値から平均第1駆動電流D1Vを引いた値を第1開側学習値としてもよい。この場合、開側限界電流値も正の値に設定する。第1開側学習値を正の値に設定した場合には、開側学習処理における変化開始電流値の演算式や開側規定電流値の演算式、第1要求駆動電流D1Wの補正処理に係る演算式の正負の符号を、第1開側学習値の符号に合わせて入れ替る必要がある。
・第1ウェイストゲートバルブ123に排気の圧力がかかっている場合でも、第1ウェイストゲートバルブ123が一定の目標開度に制御されている状況下であれば、上記実施形態で示した閉側学習処理及び開側学習処理は適用可能である。この場合、排気の圧力に抗して第1ウェイストゲートバルブ123を所定の開度に静止させる第1駆動電流D1が静止電流値となる。そして、この静止電流値を基準として、第1駆動電流D1を段階的に変化させて学習値を学習することになる。ただし、排気の圧力が大きい場合、上記(12)の効果が享受できなくなる。そのため、第1ウェイストゲートバルブ123に排気の圧力がかかっている場合に閉側学習処理及び開側学習処理を行うとしても、排気の圧力が過度に大きくない状況下であることが好ましい。
・第1ウェイストゲートバルブ123が動いたことの判定方法は、算出期間内に第1ウェイストゲートバルブ123が所定開度動いたことを検出できる方法であれば、どのような方法でもよい。例えば、算出期間の開始時と、算出期間の途中の時点での第1ウェイストゲートバルブ123の開度の差を判定の基準としてもよい。算出期間の開始時点での第1ウェイストゲートバルブ123の開度と、算出期間の各時点での第1ウェイストゲートバルブ123の開度との差を、算出期間の開始から継続して検出し続け、算出期間の各時点で、第1ウェイストゲートバルブ123が所定開度動いたか否かを判定してもよい。
・1度の学習処理で得られた学習値をそのまま補正処理に使うのではなく、複数回分の学習処理の学習値を用いて平滑化した学習値である平滑化学習値を補正処理に使用してもよい。平滑化学習値は、例えば、次の式(6)を用いて算出できる。
平滑化学習値=(今回の学習値−前回の学習値)×F+前回の学習値 ・・・(6)
ここで、係数Fは、1以下の正の値であり、例えば0.8である。
・第1開度センサ127の基準位置設定処理で用いる所定時間(ステップS22)は、適宜変更可能である。この所定時間は、第1ウェイストゲートバルブ123が開度0%の位置である程度留まっていることを確認できる長さであればよい。
・第1開度センサ127は、第1ウェイストゲートバルブ123の開度を検出できることを条件として、当該第1開度センサ127の検出対象を適宜変更可能である。第1開度センサ127は、例えば、連結機構の構成部品の位置に基づいて第1ウェイストゲートバルブの開度を検出してもよい。
・上記の各変更例のうち、第1バンク100に関する変更例は、第2バンク200に対しても同様に適用可能である。