次に図面を参照してこの発明の実施の形態を説明する。図1は、この発明の実施形態に従う、内燃機関(以下、エンジンという)およびその制御装置の全体的な構成図である。
電子制御ユニット(以下、「ECU」)という)10は、入出力インターフェース、中央演算処理装置(CPU)、およびメモリを備えるコンピュータである。メモリには、車両の様々な制御を実現するためのコンピュータ・プログラムおよび該プログラムの実施に必要なデータを格納することができる。本発明に従う様々な制御のためのプログラム、および該プログラムの実行の際に用いるデータおよびマップは、メモリに格納されている。ECU10は、車両の各部から送られてくるデータを入出力インターフェースを介して受け取って演算を行い、制御信号を生成し、これを、該入出力インターフェースを介してエンジンの各部を制御するために送る。
エンジン12は、たとえば4気筒4サイクルのエンジンであり、図には、そのうちの一つの気筒が概略的に示されている。エンジン12は、吸気バルブ14を介して吸気管16に連結され、排気バルブ18を介して排気管20に連結されている。ECU10からの制御信号に従って燃料を噴射する燃料噴射弁22が、吸気管16に設けられている。代替的に、燃料噴射弁22を、燃焼室24に設けてもよい。
エンジン12は、吸気管16から吸入される空気と、燃料噴射弁22から噴射される燃料との混合気を、燃焼室24に吸入する。燃料室24には、ECU10からの点火時期信号に従って火花を飛ばす点火プラグ26が設けられている。点火プラグ26による火花により、混合気は燃焼する。この燃焼により混合気の体積は増大し、ピストン28を下方に押し下げる。ピストン28の往復運動は、クランクシャフト30の回転運動に変換される。4サイクルエンジンでは、エンジンのサイクルは、吸入、圧縮、燃焼、および排気行程からなる。ピストン28は、1サイクルにつき2往復する。
連続可変動弁装置31は、本実施形態では、連続可変動弁装置31は、可変リフト機構32および可変位相機構33から構成される。可変リフト機構32は、ECU10からの制御信号に従って、吸気バルブ14のリフト量を連続的に変更することができる機構である。可変位相機構33は、ECU10からの制御信号に従って、吸気バルブ14の位相を連続的に変更することができる機構である。
エンジン12には、クランクシャフト30の回転角度を検出するクランク角センサ35が設けられている。クランク角センサ35は、クランクシャフト30の回転に従って、所定のクランク角度ごと(たとえば、30度ごと)に、パルス信号であるCRK信号をECU10に出力する。また、ECU10には、エンジン12の吸気バルブ14を駆動するカムが連結された吸気カムシャフトの回転角度を検出するカム角センサ36が接続されており、たとえば、エンジン12の特定の気筒の所定クランク角度位置でパルス(CYL信号)と、各気筒の吸入行程開始時の上死点(TDC)でパルス(TDC信号)を発生する。これらのパルスは、燃料噴射時期、点火時期等の各種の制御タイミングおよびエンジン回転数NEの検出に使用される。また、ECU10は、カム角センサ36により出力されるTDC信号と、クランク角センサ35により出力されるCRK信号との相対関係から、吸気バルブの位相(より具体的には、吸気カムシャフトのクランクシャフトに対する位相)CAINを検出することができる。
連続可変動弁装置31には、吸気バルブ14のリフト量を制御する制御軸の回転角度位置を検出するための制御軸回転角度センサ(CSA)センサ37が設けられている。該センサ37の検出値から、吸気バルブのリフト量を検出することができる。CSAセンサ37は、各気筒の吸気バルブのリフト量を検出するため、気筒毎に設けられることができる。
吸気管16内にはスロットル弁46が配置されている。スロットル弁46は、ECU10からの制御信号に応じてアクチュエータ(図示せず)によって駆動されるドライブバイワイヤ(drive by wire:DBW)式のスロットル弁である。スロットル弁開度センサ48がスロットル弁46に設けられており、スロットル開度に応じた信号をECU10に出力する。
吸気管16のスロットル弁46の上流側に、エアフローメータ(AFM)50が設置されている。エアフローメータ50は、吸入空気量を示す電気信号をECU10に出力する。
吸気管16のスロットル弁46の下流には吸気管内圧力センサ52および吸気温センサ54が備えられ、それぞれ、吸気管内絶対圧PBおよび吸気温度TAを示す電気信号をECU10に出力する。また、大気圧センサ56がエンジン外部の任意の位置に設置されており、大気圧PAを示す電気信号をECU10に出力する。吸気管圧力は、絶対圧およびゲージ圧で表されることができ、ここでゲージ圧は、大気圧PAに対する吸気管内絶対圧PBの差圧を表し、PA−PB(mmHg)である。
排気管20の触媒58の上流側にはLAF(linear air-fuel)センサ59が設置されている。LAFセンサ59は、リーンからリッチにわたる広範囲において排ガス中の酸素濃度に比例する信号をECU10に出力する。
さらに、変速機60が連結されており、この変速機60には、変速ギア段を検出するギアポジションセンサ61と、車速(ディファレンシャルギアの回転速度)を検出する車速センサ62とが設置されている。
図2を参照して、可変リフト機構32のより具体的な構成の一例を説明する。(a)に示すように、カム132が設けられたカム軸131と、シリンダヘッドに軸135aを中心として揺動可能に支持されるコントロールアーム135と、コントロールアーム135を揺動させるコントロールカム137が設けられた制御軸136と、コントロールアーム135に支軸133bを介して揺動可能に支持されると共に、カム132に従動して揺動するサブカム133と、サブカム133に従動し、吸気バルブ14を駆動するロッカーアーム134とを備えている。ロッカーアーム134は、コントロールアーム135内に揺動可能に支持されている。
サブカム133は、カム132に当接するローラ133aを有し、カム軸131の回転により、軸133bを中心として揺動する。ロッカーアーム134は、サブカム133に当接するローラ134aを有し、サブカム133の動きが、ローラ134aを介して、ロッカーアーム134に伝達される。
コントロールアーム135は、コントロールカム137に当接するローラ135bを有し、制御軸136の回転により軸135aを中心として揺動する。(a)に示す状態では、サブカム133の動きはロッカーアーム134にほとんど伝達されないため、吸気バルブ14はほぼ全閉の状態を維持する。(b)に示す状態では、サブカム133の動きがロッカーアーム134を介して吸気バルブ14に伝達され、吸気バルブ14は最大リフト量LFTMAX(たとえば12mm)まで開弁する。
したがって、アクチュエータのモータの出力軸に、ギアを介して制御軸136を接続し、該モータによって制御軸136を回転させることにより、吸気バルブ14のリフト量を連続的に変更することができる。該モータは、ECU10からの制御信号に従って駆動される。
この実施形態では、前述したCSAセンサ37は、制御軸136の回転角度位置を検出するよう設けられており、該検出される回転角度位置CSAが、リフト量を示すパラメータとして使用される。なお、可変リフト機構32のより詳細な構成は、たとえば特開2008−025418号公報に示されている。
図3を参照して、可変位相機構33のより具体的な構成の一例を説明する。
ECU10からの制御信号はソレノイド231に供給される。ソレノイド231が制御信号に従って通電され、該ソレノイド231により、油圧スプール弁232が駆動される。油圧スプール弁232は、タンク233内の作動油を、ポンプ234を介して吸い上げる。
油圧スプール弁232は、進角油路236aおよび遅角油路236bを介して、可変位相機構33のハウジング241に連結されている。進角油路236aに供給される作動油の油圧OP1および遅角油路236bに供給される作動油の油圧OP2は、油圧スプール弁232を介して制御信号に従って制御される。
ハウジング241は、図示しないスプロケットおよびタイミングベルトを介してクランクシャフト30に連結されている。ハウジング241は、クランクシャフト30の回転に伴い同じ方向に回転する。
ベーン242は、ハウジング241内に挿入された吸気カムシャフトから放射状に延びている。ベーン242は、所定の範囲内で、ハウジング241に対して相対的に回転可能なように該ハウジング241に収容されている。ハウジング241内に形成される扇状の空間が、ベーン242によって、3つの進角室243a、243bおよび243cと、3つの遅角室244a、244bおよび244cに区画されている。3つの進角室243a〜243cには、進角経路236aが連結されている。油圧OP1の作動油は、進角経路236aを介して進角室243a〜243cに供給される。3つの遅角室244a〜244cには、遅角経路236bが連結されている。油圧OP2の作動油は、遅角経路236bを介して遅角室244a〜244cに供給される。
油圧OP1と油圧OP2との差がゼロであるときには、ベーン242がハウジング241に対して相対的に回転せず、それにより、位相CAINの値は維持される。ECU10からの制御信号により、油圧OP1が油圧OP2より大きくなったときには、それに応じて、ベーン242がハウジング241に対して相対的に進角側に回転し、位相CAINが進角される。ECU10からの制御信号により、油圧OP2が油圧OP1より大きくなったときには、それに応じて、ベーン242がハウジング241に対して相対的に遅角側に回転し、位相CAINが遅角される。より詳細な構成は、特開2007−100525号公報に示されている。
図2および図3に示す機構は一例であり、他の任意の機構を用いてもよい。また、本願発明は、リフト量および位相を連続的に変更可能なこれら機構に限定されるわけではなく、リフト量および位相を段階状に変更可能な機構にも適用可能である。また、代替的に、可変リフト機構32および可変位相機構33を一体的に構成してもよい。
図4は、連続可変動弁装置31によって制御される吸気バルブ14の挙動を説明するためのグラフである。縦軸はリフト量を示し、横軸はクランク角度を表す。連続可変動弁装置31により、吸気バルブ14の位相を連続的に変化させることができると共に、リフト量を連続的に変化させることができる。
排気バルブ18のクランク角度に対するリフト量(以下、作動特性と呼ぶ)が、符合EX1によって示されている。実線で示されるIN11〜IN15は、吸気バルブの基準位相における作動特性を示している。この実施例では、該基準位相は、TDC(圧縮上死点)に対して最遅角の所に設定されている。IN15からIN11に向けてリフト量は増大しており、エンジンの運転状態に応じて、IN11〜IN15の間で作動特性が切り換えられる。点線で示されるIN21〜IN25は、作動特性IN11〜IN15がそれぞれTDCに対して最進角された状態の作動特性を示している。
ここで、オーバーラップについて説明する。たとえば作動特性IN14に従って吸気バルブが作動されている時には、吸気バルブと排気バルブとが同時に開いている期間すなわちオーバーラップ量はほぼゼロである。しかしながら、該作動特性IN14が進角された作動特性IN24に従って吸気バルブが作動されると、図に示すように、オーバーラップが生じる。このように、吸気バルブの位相の進角量が増大するにつれ、オーバーラップ量が増大する。吸気管圧力が負圧の時にオーバーラップが生じると、内部EGR量を増大させ、これは、燃焼を不安定にするおそれがある。燃焼が不安定になると、ドライバビリティが低下する。したがって、本願発明は、可変動弁装置を用いたリフト量制御および位相制御に関する故障が生じた時に、このような内部EGRに起因する燃焼不安定性を回避しようとするものである。
図5(a)は、本願発明の一実施形態に従う、各種制御の機能ブロックを示す。これらの機能ブロックは、ECU10に実現されることができる。
この実施例では、目標吸入空気量は、吸気バルブ14のリフト量とスロットル弁46の開度を調整することにより実現される。リフト制御部301は、任意のフィードバック制御手法(PI制御、応答指定型制御等)に従い、吸気バルブのリフト量を目標リフト量に収束させるための操作量を算出する。可変リフト機構32は、該操作量に従って、吸気バルブ14のリフト量を変更する。変更されたリフト量は、CSAセンサ37により実リフト量として検出され、リフト制御部301にフィードバックされる。
吸気管圧力制御部302は、任意のフィードバック制御手法(PI制御、応答指定型制御等)に従い、吸気管の実ゲージ圧を目標ゲージ圧にするための目標スロットル開度を算出する。スロットル開度制御部303は、スロットル弁46の実スロットル開度を該目標スロットル開度に収束させるための操作量を算出する。スロットルアクチュエータ(図示せず)305は、該操作量に従って、スロットル弁46の開度を変更する。変更されたスロットル開度により実現される実ゲージ圧は、吸気管圧力センサ52からの吸気管圧力PBおよび大気圧センサ56からの大気圧PAに基づいて検出され、吸気管圧力制御部302にフィードバックされる。
また、位相制御部307は、任意のフィードバック制御手法(PI制御、応答指定型制御等)に従い、吸気バルブ14の位相を目標位相に収束させるための操作量を算出する。可変位相機構33は、該操作量に従って、吸気バルブ14の位相を変更する。変更された位相は、前述したようにCRK信号およびCAM信号等によって実位相として検出され、位相制御部307にフィードバックされる。
図5(b)には、本願発明の一実施形態に従う、通常運転時の吸入空気量制御の一形態が示されている。目標吸入空気量が所定値より低い第1の領域(たとえば、アイドリング運転が実現される領域)では、目標リフト量を一定にしつつ、目標ゲージ圧(図には、目標吸気管圧力として絶対圧で表示されている)を変更することによって目標吸入空気量を達成する。目標リフト量は、エンジンの運転状態に応じて決定されることができる。目標ゲージ圧は、該目標リフト量および目標吸入空気量に基づいて決定されることができる。リフト量制御部301および吸気管圧力制御部302は、該目標リフト量および目標ゲージ圧を実現するよう、実リフト量および実スロットル開度を制御する。目標吸入空気量が該所定値より高い第2の領域では、目標ゲージ圧を、所定のゲージ圧(たとえば、−100mmHg)に一定にしつつ、目標リフト量を変更することによって目標吸入空気量を達成する。目標リフト量は、該所定のゲージ圧および目標吸入空気量に基づいて決定されることができる。リフト量制御部301および吸気管圧力制御部302は、該目標リフト量および目標ゲージ圧を実現するよう、実リフト量および実スロットル開度を制御する。
このように、以下の実施例では、リフト量制御と吸気管圧力制御の両方によって目標吸入空気量を実現する形態を例に説明するが、本願発明は、図5(b)に示すような制御形態には制限されない。
図6は、本願発明の一実施形態に従う、可変動弁装置31を用いたリフト量制御に関する故障が判定されたことに応じたフェイルセーフ制御を実現する制御装置のブロック図を示す。各機能ブロックは、ECU10に実現されることができる。
故障判定部311は、可変動弁装置31を用いたリフト量制御に関する故障を判定する。この故障には、吸気バルブ14のリフト量を制御するのに関連する機械要素(可変リフト機構32内のモータやアクチュエータ等)およびリフト量制御を実施するためのECU10およびそのプログラム等の異常や誤動作などを含むことができる。なお、可変位相機構33は正常に動作しており、吸気バルブ14の位相は変更可能である。
この実施例では、該故障は、ECU10からの制御信号に応じて、各気筒の吸気バルブを目標リフト量に所望の速度で動かすことができないような故障を示す。たとえば、リフト量の変化速度が所定値より遅いとき、またはリフト量の気筒間の偏差が所定値より大きいとき、可変リフト機構32に何らかの異常が生じたと判断することができるので、故障が生じたと判定する。たとえば、可変リフト機構32のモータに何らかの異常が生じたとき、吸気バルブ14のリフト量を変更する能力が低下することがあり、これによって、リフト量の変化速度が低下することがある。また、モータの作動にばらつきが生じることで、気筒間でリフト量の偏差が生じることがある。
また、一形態では、吸気管圧力センサ52、大気圧センサ56、エアフローメータ50および吸気温センサ54のいずれかの故障が検出された時、故障が生じたと判定する。これらのセンサの検出値は、リフト量制御に影響しうるものである。例としてあげると、エアフローメータ50の検出値は、リフト量の偏差を学習するのに用いられることがある。吸気温センサ54の検出値は、吸入空気量に対し、大気圧に応じた密度補正を行うのに用いられることがある。ゲージ圧は、吸気管圧力センサ52の検出値PBおよび大気圧センサ56の検出値PAに基づいて算出されるので、これらのセンサの検出値は、前述した吸気管の実ゲージ圧を目標ゲージ圧にするための制御に使用されることがある。該吸気管圧力の制御に不具合が生じると、リフト量制御が不適切に実施されるおそれがある。たとえば、目標スロットル開度が不適切な値で算出されると、それに従って、目標リフト量が不適切な値で算出されるおそれがある。したがって、このような場合にも、故障が生じたと判定するのが好ましい。
これらのセンサの検出値が用いられる上記形態は一例である。たとえば、吸気管圧力をフィードバック制御しない場合でも、吸気管圧力センサおよび大気圧センサは、たとえばリフト量を算出するのに用いられることがあり、よって、故障が生じたと判定することができる。
故障と判定されたならば、目標位相設定部312は、吸気バルブの目標位相を、最遅角(この実施例では、ゼロ度)にする。図4を参照して説明したように、位相を遅角させることにより、オーバーラップ量を減らすことができる。目標位相は、図5の位相制御部307に渡される。
運転状態判定部313は、エンジンの現在の運転状態を判断する。より具体的には、燃料カット中かどうか、変速機60によるギア段はいくつか、および車速はいくつか、目標吸入空気量はどの程度か、を判断する。これは、エンジンの出力トルクの現在の状態を見極め、ドライバビリティを低下させることなく、現在のリフト量を、故障時用に予め設定された所定値(以下、故障時用所定値と呼ぶ)にまで移行させるためである。
目標リフト設定部314は、上記判定されたエンジンの運転状態に従って、目標リフト量を決定する。目標リフト量は、図5のリフト量制御部301に渡される。ここで、目標リフト量は、上記判定されたエンジンの運転状態に従って、前述した故障時用所定値に到達する速度を調整されるのが好ましい。目標リフト量が該故障時用所定値に達したならば、該故障時用所定値に固定される。こうして、実リフト量も、該故障時用所定値に固定されることとなる。
該故障時用所定値は、車両の走行が可能な値に設定される。たとえば、可変リフト機構が搭載されていないような車両においてはTDC付近から吸気バルブが所定の設定値(たとえば、8mm)まで開かれるが、この設定値と同等の値を採用してよい。
こうして、リフト量制御に関する故障が判定されたならば、位相が最遅角にされると共に、リフト量が所定値に固定されるので、オーバーラップ量が増大して内部EGRが増大するのを回避することができる。よって、このような故障に起因して燃焼が不安定になるのを回避することができ、よって、より安全な走行を確保することができる。
図7は、ECU10によって実行される、より具体的には図6の故障判定部311によって実行される故障判定プロセスのフローを示す。該プロセスは、所定の制御周期(たとえば、TDC信号に同期した周期)で実施されることができる。
ステップS11において、リフト量の変化速度が所定値より小さいかどうかを判断する。変化速度は、今回の制御周期で検出されたリフト量と、前回の制御周期で検出されたリフト量の偏差を、該制御周期の時間長で除算することにより算出されることができる。変化速度が所定値より小さければ、吸気バルブの作動速度が低下していることを示すので、ステップS20において故障と判定する。
ステップS12において、気筒間のリフト量の偏差が所定値より大きいかどうかを判断する。このステップは、気筒間で検出されたリフト量のバラツキを調べるためである。たとえば、4つの気筒がある場合、第1〜第4の気筒について検出された4つのリフト量の平均を計算し、各気筒のリフト量の該平均値からの偏差が所定値より大きいかどうかを調べることによって、気筒間のリフト量の偏差を判断することができる。気筒間のリフト量の偏差が大きければ、吸気バルブの作動について気筒間にばらつきが生じている可能性があるので、ステップS20において故障と判定する。
ステップS13およびS14において、吸気管圧力センサ52および大気圧センサ56が故障しているかどうかを判断する。また、ステップS15およびS16において、エアフローメータ50および吸気温センサ54が故障しているかどうかを判断する。前述したように、これらのセンサの検出値は、リフト量制御に影響するので、これらのセンサのいずれかが故障したならば、ステップS20において故障と判定する。
ステップS13およびS14において、吸気管圧力センサ52および大気圧センサ56のいずれかが故障していれば、前述した図5の吸気管圧力制御部302によって実施される吸気管圧力のフィードバック制御についても適切に実施することはできなくなるので、ステップS17において、該吸気管圧力のフィードバック制御も停止する。
図8は、ECU10によって実行される、より具体的には図6の目標位相設定部312、運転状態判定部313および目標リフト設定部314によって実行されるフェイルセーフ制御プロセスのフローを示す。
ステップS31において、図7に示されるような故障判定プロセスにおいて故障と判定されていなければ、ステップS32およびS33に進み、通常運転時用の目標位相および目標リフト量を算出する。この実施例では、目標リフト量は、図5(b)のような制御形態を実現するよう算出されることができるが、このような形態に制限されなくてもよい。また、目標位相は、任意の適切な手法に従って決定することができる。リフト量制御部301および位相制御部307は、は、該算出された目標リフト量および目標位相に従って、可変動弁装置31を介して吸気バルブを作動させる。
ステップS31において故障判定済みと判断されたならば、ステップS34に進み、目標位相に、最遅角を示す値(この実施例では、ゼロ度)を設定する。ステップS35において、現在燃料カット中かどうかを判断する。燃料カット中は、吸入空気量の変動はエンジンの出力トルクに影響を及ぼさないので、ステップS39に進み、故障時用に予め設定された値(前述した、故障時用所定値)を目標リフト量に設定する。こうして、燃料カット中は、現在のリフト量を、故障時用所定値まで即時に変更して該故障時用所定値に固定する。
ステップS36〜S38は、エンジンの現在の出力トルクの状態を調べるためのステップである。すなわち、ギア段が所定値(たとえば、3速)より大きく、車速が所定値(たとえば、時速20キロメートル)より大きく、目標吸入空気量が所定値(たとえば、0.3g)より大きければ、吸入空気量を変化させても出力トルクの変動を抑制することができる運転状態と判断することができる。したがって、この場合には、ステップS39において、目標リフト量に故障時用所定値を設定し、これにより、現在のリフト量を、故障時用所定値まで即時に変更して該故障時用所定値に固定する。
それに対し、ギア段が所定値以下である場合、車速が所定値以下である場合、もしくは目標吸入空気量が所定値以下である場合には、吸入空気量を一気に変化させると、出力トルクの変動量が大きくなってドライバビリティを低下させるおそれがある。したがって、この場合には、リフト量を、故障時用所定値まで徐々に変化させるようにする。このため、今回の制御周期における目標リフト量(n)は、たとえば以下の式にしたがって、なまし計算(平滑化)によって算出される。Cは、所定の係数である。
目標リフト量(n)=
(1−C)×目標リフト量(n−1)+C×故障時用所定値
こうして、今回の制御周期で算出された目標リフト量および目標位相に従って、リフト量制御部301および位相制御部307は、可変リフト機構32および可変位相機構33を介して吸気バルブを作動させる。
図9は、本願発明の一実施形態に従う、可変位相機構33を用いた吸気バルブの位相制御において、吸気バルブ14の位相が基準位相よりも進角側に固着される故障(以下、進角ロック故障と呼ぶ)が判定されたことに応じたフェイルセーフ制御を実現する制御装置のブロック図を示す。
故障判定部401は、進角ロック故障を判定する。この実施例では、基準位相が最遅角(ゼロ度)であるので、検出される位相は、ゼロ以上の値を持つ。したがって、目標位相と検出された位相の偏差が所定値より大きい状態が、たとえば所定時間以上継続して検出されたならば、進角ロック故障と判定することができる。該偏差をどのくらいの値に設定するかは、任意に決定されることができる。
このような進角ロック故障は、吸気バルブの位相を制御するのに関連する機械要素(可変リフト機構33内のソレノイド等の機械要素)および該制御を実施するためのECU10およびそのプログラム等の異常や誤動作などに起因して起こりうる。該故障により、吸気バルブ14の位相を変更することはできないが、可変リフト機構32は正常に動作しており、よって、ECU10からの制御信号に応じて吸気バルブ14のリフト量を変更することができる。
目標ゲージ圧設定部402は、現在のエンジンの回転数および目標吸入空気量に基づいて、故障時用の目標ゲージ圧を求める。目標スロットル開度算出部403は、前述した図5の吸気管圧力制御部302によって実現される機能ブロックであり、故障時用の目標ゲージ圧および目標吸入空気量に基づいて、目標スロットル開度を算出する。故障時用の目標スロットル開度は、通常運転時用に比べて大きくなるよう設定される。これにより、スロットル開度を通常運転時よりも大きく開けて、吸気管の圧力を大気圧に近くすることができ、よって内部EGR量の増大を防ぐことができる。算出された目標スロットル開度は、図5の吸気管圧力制御部302に渡される。
目標リフト設定部404は、算出された目標スロットル開度に基づいて、目標リフト量を決定する。目標スロットル開度が全開でなければ、目標リフト量を、進角ロック故障時用に予め設定された値(ロック故障時用所定値と呼ぶ)に設定する。ここで、ロック故障時用所定値は、オーバーラップ量を減らす値に設定される。たとえば、図4に示されるように、進角された状態であっても、リフト量を低下するほど、オーバーラップ量を減らすことができる。したがって、たとえば図4の例では、故障時の作動特性がIN23であれば、該作動特性をIN24に変更することにより、オーバーラップ量を減らすことができる。
目標吸入空気量が増大していく場合、目標リフト量をロック故障時用所定値に維持しながら、目標スロットル開度を全開に向けて大きくしていく。目標スロットル開度が全開に達した後は、目標吸入空気量を増大するにつれ、目標リフト量を、ロック故障時用所定値から大きくしていく。図4に示すように、目標リフト量を増大するとオーバーラップが生じるおそれがあるが(たとえば、IN24からIN23にリフト量を変更すると、オーバーラップは増える)、たとえオーバーラップが生じても、スロットル開度が全開であるので吸気管圧力はほぼ大気圧に等しくなっており、よって、内部EGR量が増大するのを回避することができる。したがって、燃焼が不安定になるのが防止される。目標リフト量は、図5のリフト量制御部301に渡される。
図10は、ECU10によって実行される、より具体的には図9に示される目標ゲージ圧設定部402、目標スロットル開度算出部43、目標リフト設定部404により実行されるフェイルセーフ制御プロセスのフローを示す。該プロセスは、所定の制御周期(たとえば、TDC信号に同期した周期)で実行されることができる。
ステップS41において、進角ロック故障が判定されているかどうかを判断する。故障が判定されていなければ、ステップS51およびS52に進み、通常運転時用の目標スロットル開度および目標リフト量を算出する。この実施例では、図5(b)のような制御形態を実現するよう目標ゲージ圧および目標リフト量を決定することができ、該目標ゲージ圧を実現するよう目標スロットル開度を決定することができるが、このような形態に制限されなくてもよい。スロットル開度制御部303およびリフト量制御部301は、該算出された目標スロットル開度および目標リフト量に従って、スロットル弁46および吸気バルブ14を作動させる。
故障と判定されたならば、ステップS42に進み、検出されたエンジン回転数NEおよび目標吸入空気量に基づいてマップを参照し、目標ゲージ圧を求める。該マップの一例を、図11(a)に示す。目標吸入空気量およびエンジン回転数が大きいほど、目標ゲージ圧は大きくされる。
ステップS43において、目標ゲージ圧および目標吸入空気量に基づいて、目標スロットル開度を算出する。該算出手法の一例は、後述される。
ステップS44において、ステップS43で算出された目標スロットル開度が全開かどうかを判断する。全開でなければ、ステップS45において、目標リフト量に、故障時用に予め設定された値(前述した、ロック故障時用所定値)を設定する。前述したように、該ロック故障時用所定値は、オーバーラップしない値に設定される。こうして、目標スロットル開度および目標リフト量に従って、吸気管圧力制御部302およびリフト量制御部301は、スロットルアクチュエータ305および可変リフト機構32を介してスロットル弁および吸気バルブを作動させる。
目標スロットル開度が全開であれば、ステップS46において、目標吸入空気量に基づいてマップを参照し、目標リフト量を算出する。該マップの一例を、図11(b)に示す。L1は、ロック故障時用所定値を示し、オーバーラップしない値である。目標吸入空気量が増大するにつれ、目標リフト量も増大され、この結果、オーバーラップが生じる。しかしながら、スロットル弁の開度が全開であるので、吸気管圧力はほぼ大気圧である。したがって、内部EGR量の増大は回避される。
次に、図12を参照して、目標スロットル開度算出部403によって実現される、ステップS43において実施される目標スロットル開度の算出方法の一例を説明する。
まず概略を説明すると、目標吸入空気量GAIR_CMDに基づいて、現在の大気圧および吸気温下で故障時用の目標ゲージ圧PBGA_CMD(図10のステップS42で算出されており、以下、単に目標ゲージ圧と呼ぶ)を達成するためのスロットル弁46の開口面積A2を推定するフィードフォワード制御の役割をもつ部分(基準スロットル開口面積算出部564、スロットル開口面積補正部566)と、現在の吸気管内の実ゲージ圧が目標ゲージ圧に維持されるように、該スロットル開口面積の補正量ΔAを算出するフィードバック制御の役割をもつ部分(フィードバック補正部568)から構成される。
基準スロットル開口面積算出部564は、ある基準状態、すなわち基準となるゲージ圧、大気圧、および吸気温度における吸入空気量と、スロットル開口面積との関係を表す相関テーブルを参照して、目標吸入空気量GAIR_CMDから、上述の基準状態下におけるスロットル開口面積を表す基準スロットル開口面積Abaseを求める。
図13に、このような相関テーブルの一例を示す。この例では、ゲージ圧が50mmhg(6.666kPa)、大気圧が1気圧(760mmHgすなわち101.32kPa)、吸気温度が25度である基準状態下における有効吸入空気量とスロットル開口面積との関係を表している。ゲージ圧は、吸気管内絶対圧の大気圧に対する差圧を示す。該相関テーブルは、ECU10のメモリに記憶されることができる。
こうして求めた基準スロットル開口面積Abaseは、上記の基準状態下で、目標吸入空気量を達成するためのスロットル開口面積を表している。なお、基準状態は、上記のような数値に限定されず、他の値のゲージ圧、大気圧および吸気温度を持つ状態を基準状態に設定してもよい。
スロットル開口面積補正部566は、目標ゲージ圧PBGA_CMD、現在の吸気温度TA、現在の大気圧PAに基づき基準スロットル開口面積Abaseを補正して、現在の運転条件に合うスロットル開口面積Aを算出する。現在の吸気温度TAは、吸気温センサ54(図1)により検出され、現在の大気圧PAは、大気圧センサ56(図1)により検出される。
この補正は、ベルヌーイの定理から導出された補正式を用いて次式のように行なわれる。
ここで、PBGAbaseは、上記基準状態下の基準目標ゲージ圧であり、Tbaseは、基準状態下の基準吸気温度であり、Pbaseは、基準状態下の基準大気圧であり、前述したように、本実施形態では、それぞれ、50mmHg(6.666kPa)、25℃、および760mmHg(101.32kPa)である。なお、式(4)において、温度の単位としてケルビンを用いるので、TAおよびTbaseに273が加算されている。
ここで、図14を参照して、上記式(1)の導出根拠を説明する。図には、スロットル弁46が配置された吸気管16に関する各種パラメータが表されている。吸気管の流路開口面積およびボア径(内径)は予め決められており、それぞれ、ADおよびDによって表される。スロットル弁46が配置された所の面積すなわちスロットル開口面積は、Aで表される。スロットル弁46の上流の圧力は大気圧PAで表され、下流の圧力は、吸気管内圧力センサ52(図1)により検出され、PBで表される。ゲージ圧PBGAは、PA−PBにより算出される。空気密度は、ρで表される。図では、GAIRの流量の吸入空気量が、スロットル弁を通過している様子を示している。
一般に、圧力(ここでは、大気圧)PAの領域から、断面積Aの経路を介して圧力PBの領域へ、流量GAIRの空気が流入する場合、経路の断面積Aはベルヌーイの定理に基づいて、次式のように表される。
ここで、Cは、流量係数(流出係数と呼ばれることもある)であり、この第1の実施形態では予め決められた一定値を持つ。
同様に、基準目標ゲージ圧PBGAbase、基準吸気温度Tbase、基準大気圧Pbaseの基準状態下において、断面積Abaseの経路を介して流量GAIRの空気が流れるとき、経路の断面積Abaseは次式のように表される。ここで、ρ’は、この状態下における空気密度である。
式(4)を式(2)に代入すると、以下のように展開できる。
ここで、ρ’/ρは空気密度の比であり、既知の気体の状態方程式(PV=nRT)に基づいて次のように表される。
式(6)を式(5)に代入すると、目標ゲージ圧PBGA_CMD、吸気温度TA、大気圧PAにおけるスロットル開口面積Aを求めるための(1)式が導出される。
こうして式(1)で補正されたスロットル開口面積Aは、現在の大気圧PAおよび吸気温TAの下で、目標ゲージ圧PBGA_CMDを達成するためのスロットル開口面積を表している。
図12に戻り、フィードバック補正部568は、吸気管内の実ゲージ圧PBGAおよび目標ゲージ圧PBGA_CMDに基づいて、スロットル開口面積の補正量ΔAを算出する。
上述のように、スロットル開口面積Aは、目標吸入空気量および現在の大気圧PA、気温度TAなどの諸条件下において、目標ゲージ圧PBGA_CMDを達成するためのスロットル開口面積を表すよう算出される。しかしながら、この算出に用いられる相関テーブルや補正式は、経年使用によってスロットルに蓄積するカーボン等の影響については考慮されていない。カーボンの堆積が進行すると、算出されたスロットル開口面積に応じて決められるスロットル開度にスロットル弁が制御されても、実際のスロットル開口面積は、該算出されたスロットル開口面積より小さくなり、よって、実ゲージ圧と目標ゲージ圧との間に偏差が生じるおそれがある。
そこで、カーボン詰まり量などの外乱の影響を考慮して、実ゲージ圧PBGAが目標ゲージ圧PBGA_CMDに収束するようフィードバック制御を行う。
図15は、フィードバック補正部568の詳細な機能ブロック図である。本実施形態のフィードバック補正部568は、制御量の目標値への収束特性を可変に指定可能な応答指定型制御により実現され、この実施例では、該応答指定型制御の一手法であるスライディングモード制御器により実現されることができる。
なお、代替的に、フィードバック補正部568を、他の応答指定型制御(たとえば、バックステッピング制御)を実現するよう構成してもよく、また、PID制御器のような他のフィードバック制御を実現するよう構成してもよい。
フィードバック補正部568には、目標ゲージ圧PBGA_CMDおよび実ゲージ圧PBGAが入力される。切り替え関数算出部572は、目標ゲージ圧PBGA_CMDおよび実ゲージ圧PBGAの偏差Eを、式(7)のように算出する。
E=PBGA―PBGA_CMD (7)
次に、式(8)のように、偏差Eの収束挙動を規定する切り換え関数σを定義する。
σ(今回値)=E(今回値)+pole×E(前回値) (8)
ここで、poleは、偏差Eの収束速度を規定するパラメータである。このパラメータpoleの値を変更することにより、偏差Eを、所望の速度で収束させることができる。
一実施形態では、パラメータpoleは、フィードバック開始後カウンタに応じて設定されることができ、好ましくは−1<pole<0を満たすよう設定される。例えば、パラメータpoleを、時間経過に伴い大きな値をとるよう設定することにより、偏差Eの収束速度を段階的に速くすることができる。
算出された切り替え関数値σは、到達則算出部576および適応則算出部578に送られる。
ゲイン切り替えフラグ決定部574は、所定の条件時にフィードバックゲインを小さくするためのゲイン切り替えフラグを立てるかどうかを決定する。ゲイン切り替えフラグは、低負荷時、燃料カット時、目標ゲージ圧が低いとき、目標ゲージ圧の変動が大きいとき、および高負荷時に設定される(立ち上がる)。
上記の条件のうち、「燃料カット時」の条件は、燃料カットフラグを監視することにより判別する。「目標ゲージ圧が低いとき」および「目標ゲージ圧の変動が大きいとき」の条件は、入力された目標ゲージ圧とその変化量によって判別する。「低負荷時」および「高負荷時」の条件は、エンジン回転数および目標吸入空気量によって判別する。
ゲイン切り替えフラグは、到達則算出部576および適応則算出部578に送られる。
到達則算出部576は、所定のテーブルを参照して、切り替え関数値σに対応するフィードバック制御の比例項ΔArchを求める。テーブルは、通常時用と、フラグが立ち上がった時用の2種類用意されて、ECU10のメモリに記憶されており、ゲイン切り替えフラグが設定されたかどうかに従い、使用するテーブルが選択される。ゲイン切り替えフラグが立ち上がったときに使用するテーブルは、求められるフィードバック制御の比例項ΔArchの値が通常時のものと比べて小さくなるように設定されている。こうして、低負荷時、燃料カット時、目標ゲージ圧が低い時、および目標ゲージ圧の変動が大きい時には、フィードバック制御によるゲージ圧の変化を抑制し、運転状態が不安定になるのを回避する。
また、到達則算出部576は、フィードバック許可フラグが設定されている状態において比例項ΔArchを算出するよう構成されるのが好ましい。具体的には、スロットルが全開でゲージ圧がほぼ0となるとき、可変動弁装置による吸入空気量制御が禁止され吸気バルブのリフト量が固定されているとき、およびエンジン始動時には、フィードバック許可フラグが設定されず、よって、これらの場合には、到達則算出部は0を出力する。
なお、到達則算出部576は、所定のフィードバックゲインを予め設定しておき、切り替え関数値σにこのフィードバックゲインを乗じて比例項ΔArchを算出しても良い。この場合、上述のフィードバック許可フラグが設定されていないときには、フィードバックゲインが0に変更され、到達則算出部576が出力する比例項ΔArchは0となる。
適応則算出部578は、所定のテーブルを参照して、切り替え関数値σに対応するフィードバック制御の積分項ΔAadpを求める。テーブルは、通常時用と、フラグが立ち上がった時用の2種類用意されて、ECU10のメモリに記憶されており、ゲイン切り替えフラグが設定されたかどうかに従い、使用するテーブルが選択される。ゲイン切り替えフラグが設定されたときに使用するテーブルは、求められるフィードバック制御の積分項ΔAadpの値が通常時のものと比べて小さくなるように設定されている。こうして、低負荷時、燃料カット時、目標ゲージ圧が低い時、および目標ゲージ圧の変動が大きい時には、フィードバック制御によるゲージ圧の変化を抑制し、運転状態が不安定になるのを回避する。
また、適応則算出部578は、フィードバック許可フラグが設定されている状態において積分項ΔAadpを算出するよう構成されるのが好ましい。具体的には、スロットルが全開でゲージ圧がほぼ0となるとき、可変動弁装置による吸入空気量制御が禁止され吸気バルブのリフト量が固定されているとき、およびエンジン始動時には、フィードバック許可フラグは設定されず、よって、これらの場合には、適応則算出部は0を出力する。
なお、適応則算出部578は、所定のフィードバックゲインを予め設定しておき、切り替え関数値σにこのフィードバックゲインを乗じて積分項ΔAadpを算出しても良い。この場合、上述のフィードバック許可フラグが立っていないときには、フィードバックゲインが0に変更され、適応則算出部578が出力する積分項ΔAadpは0となる。
到達則算出部576より出力された比例項ΔArchおよび適応則算出部578より算出された積分項ΔAadpが加算され、所定のリミット処理580を施したのち、スロットル開口面積の補正量ΔAとして出力される。
図12に戻ってブロック601〜605について説明するが、まず、これらが設けられている理由を説明する。前述した式(2)および(3)に示されるように、スロットル開口面積補正部566により算出されるスロットル開口面積Aは、流量係数Cが一定であることを前提としている。しかしながら、たとえばJIS等の規格で定められた標準のオリフィス流量計について図16のような関係が周知されているように、流量係数Cは、レイノルズ数および開口面積比に依存して変動しうる。
たとえば、基準状態下すなわち式(3)中の流量係数CをCbaseで表すとする。現在の状態下すなわち式(2)中の流量係数CがCbaseに等しくない場合には、式(4)〜(6)から明らかなように、補正式(1)で求めたスロットル開口面積Aには誤差が含まれるおそれがある。たとえば、CがCbaseより小さいとき、現在の状態は、基準状態に比べて、スロットル弁を介して空気が流れにくくなっていることを示しているので、式(1)で算出されるスロットル開口面積Aを大きくするよう補正するのが好ましい。したがって、流量係数の変動を考慮して、スロットル開口面積Aをさらに補正する手段(601〜605のブロック)を設けるのが好ましい。
粘性係数算出部601は、吸気温センサ54(図1)により検出される吸気温TAに基づいて、吸気の粘性係数μを決定する。より具体的には、粘性係数算出部601は、吸気温TAに基づいて図17に示すようにテーブルを参照することにより、対応する粘性係数μを求める。該テーブルは、ECU10のメモリに記憶されることができる。気体の粘性係数は、温度によって変動する特性を有しており、温度が高くなるほど、粘性係数は大きくなる。
レイノルズ数算出部602は、吸気についてのレイノルズ数ReDを算出する。周知の如く、レイノルズ数は、流体の密度、速度、および長さの積を、流体の粘性係数で除した値であり、流体の粘性および慣性についての指標となる。レイノルズ数が小さいほど、相対的に粘性作用が強い流れを示し、レイノルズ数が大きいほど、相対的に慣性作用が強い流れを示す。
ここで、再び図14を参照し、レイノルズ数の算出について説明する。図において、スロットル開口面積Aは、開口面積補正部566により算出されている。
前述したように、吸気のレイノルズ数ReDは、空気流の密度ρ、速度Vおよび長さと、粘性係数μに基づいて算出されることができる。ここで、管内を流れる流体についての「長さ」には、該管の内径すなわち上記吸気管の内径Dが用いられる。したがって、レイノルズ数ReDは、以下の式(9)に従って算出されることができる。
吸気量GAIRは、単位時間あたりの空気量を表しているので、式(9)中の空気密度ρ(kg/m
3)×速度V(m/s)は、GAIR(kg/s)/A
D(m
2)で置き換えることができる。したがって、目標吸入空気量についてのレイノルズ数Re
Dは、式(10)に示すように、目標吸入空気量GAIR_CMDと、吸気管の開口面積A
Dおよび内径Dと、粘性係数算出部601により求められた粘性係数μとに基づいて算出されることができる。
開口面積比算出部603は、式(11)に従い、吸気管の開口面積ADに対するスロットル開口面積Aの比mを算出する。
m=A/AD (11)
上で述べたように、流量係数は、開口面積比およびレイノルズ数と相関を有しているので、開口面積比およびレイノルズ数に対応する流量係数は、たとえば図16に示すようなテーブルを参照することにより、決定されることができる。こうして決められた流量係数Cに応じて、式(1)で算出されるスロットル開口面積Aを補正する補正係数Kcが決定される。補正係数Kcは、前述したように、上記求めた流量係数Cの、基準状態下の流量係数Cbaseに対するずれを補正するための係数である。こうして、開口面積比およびレイノルズ数に応じた補正係数Kcを、予めテーブルに規定してECU10のメモリに記憶しておくことができる。
このようなテーブルの一例を、図18に示す。該テーブルは、式(1)中で用いられる目標ゲージ圧PBGA_CMDの条件で作成されている。該テーブルには、レイノルズ数がRe1、Re2、およびRe3についての、開口面積比mと補正係数Kcとの関係が表されている。ここで、Re1<Re2<Re3である。
該テーブルにおいて、補正係数Kcが1の状態は、現在のレイノルズ数ReDおよび開口面積比mに基づく流量係数Cが、基準状態下の流量係数Cbaseに等しく、よって、スロットル開口面積Aの補正は行われないことを示す。
開口面積比mが小さくなるほど、補正係数Kcは大きくされる。これは、開口面積比mが小さくなるほど、流量係数Cは小さくなり、空気流がスロットル弁46を通過しにくくなるので、スロットル開口面積Aを大きくするためである。
また、同じ開口面積比の下では、レイノルズ数が大きくなるほど、補正係数Kcは大きくされる。これは、レイノルズ数が大きくなるほど、流量係数Cは小さくなるので、よって、スロットル開口面積Aを大きくするためである。
補正係数算出部604は、レイノルズ数算出部602および開口面積比算出部603により算出されたレイノルズ数ReDおよび開口面積比mに基づいて図18に示すようなテーブルを参照し、対応する補正係数Kcを求める。
なお、図に示すテーブルは一例であり、レイノルズ数について3個の値のみ規定しているが、当然ながらこれに限定されず、さらに多数のレイノルズ数の値について規定してよい。また、レイノルズ数算出部602により算出されたレイノルズ数が、或る値と他の値の間にある場合には、周知の補間計算により、該算出されたレイノルズ数に対応する補正係数Kcを算出することができる。
図12に戻り、補正部605は、こうして算出された補正係数Kcを、開口面積補正部566により算出されたスロットル開口面積Aに乗算することにより、補正済みスロットル開口面積A2を算出する。補正係数Kcは、前述したように、吸気の粘性およびスロットル開口面積比mに基づく値であるので、この補正により、目標ゲージ圧を達成するためのスロットル開口面積Aを、より良好な精度で算出することができる。
補正部605により出力された補正済みスロットル開口面積A2に、フィードバック補正部568より出力されたスロットル開口面積の補正量ΔAが、加算部569により加算される。
切り換え部611は、実ゲージ圧PBGAと目標ゲージ圧PBGA_CMDとの差ΔPBGAを算出し、該差ΔPBGAの絶対値が、所定の閾値以下ならば、スロットル開口面積(A2+ΔA)をスロットル開度算出部570に渡し、該算出部570が、図19のようなテーブルを参照して該スロットル開口面積(A2+ΔA)に対応する目標スロットル角度TH_CMDを求めるようにする。
上記差ΔPBGAが上記所定の閾値より大きければ、フィードバックを停止させるため、切り換え部611は、予め決められたスロットル開口面積値、より具体的にはスロットル弁の全閉を表す面積値を、スロットル弁開度算出部570に渡す。スロットル弁開度算出部570は、図19に示すようなテーブルを参照して、該全閉を表す面積値に対応する目標スロットル角度TH_CMDを求める。こうして、実ゲージ圧と目標ゲージ圧の差が大きい時にフィードバックを停止することにより、運転状態が大きく変動するのを回避することができる。
代替的に、切り換え部611は、上記差ΔPBGAが所定の閾値より大きいとき、その旨を示す信号をスロットル弁開度算出部570に送り、該算出部570が、図19のようなテーブルを参照することなく、予め決められた全閉を示す目標スロットル開度を出力するようにしてもよい。
なお、前述したように、図9の目標スロットル開度算出部403は、図5の吸気管圧力制御部302により実現されるので、図12は、該吸気管圧力制御部302の機能ブロック図とも言える。すなわち、通常運転時では、たとえば図5(b)のような制御を実現するように、第1の領域では目標リフト量に基づいて目標ゲージ圧が決定され、第2の領域では目標ゲージ圧が所定値に設定され、これら目標ゲージ圧が、図12のPBGA_CMDとして用いられる。そして、進角ロック故障が生じた時には、吸気管圧力制御部302は、目標ゲージ圧PBGA_CMDとして、前述した故障時用の目標ゲージ圧を用いる。そして、リフト量制御に関する故障を判定する際に、図7のS17において吸気管圧力のフィードバック制御が停止されるが、これは、図15に示すようなフィードバック許可フラグを設定することにより実現されることができる。
以上、本発明の実施の形態について説明したが、本発明はこのような実施形態に限定されることはなく、本発明の趣旨を逸脱しない範囲において改変して用いることができる。