ここではまず、エンジン制御装置の第1実施形態の元となったエンジン制御装置について説明する。第1実施形態のエンジン制御装置は、その元となったエンジン制御装置(以下、前提構成のエンジン制御装置と記載する)に改良を加えたものとなっている。
図1に示すように、前提構成のエンジン制御装置が適用されるエンジン10の吸気通路11の最上流部には、吸気中の塵等をろ過するエアクリーナ12が設けられている。吸気通路11におけるエアクリーナ12よりも下流側の部分には、吸気流量を検出するエアフローメータ13が設けられている。さらに吸気通路11におけるエアフローメータ13よりも下流側の部分には、吸気通路11の吸気流量を調整するための弁であるスロットルバルブ14が設けられている。スロットルバルブ14の近傍には、同スロットルバルブ14を開閉駆動するためのスロットルモータ15と、スロットルバルブ14の開度(スロットル開度TA)を検出するためのスロットルセンサ16と、が設けられている。
吸気通路11におけるスロットルバルブ14よりも下流側の部分には、エンジン10の各気筒に吸気を分配するための分枝管であるインテークマニホールド(以下、インマニ17と記載する)が設けられている。インマニ17の各分枝管は、気筒別の吸気ポート18を介して各気筒の燃焼室19にそれぞれ接続されている。各気筒の吸気ポート18には、同吸気ポート18を通って燃焼室19に流入する吸気中に燃料を噴射するインジェクタ20がそれぞれ設けられている。また、各気筒の燃焼室19には、内部に流入した燃料と吸気との混合気を放電により点火する点火装置21がそれぞれ設けられている。なお、各気筒には、エンジン10の出力軸であるクランクシャフト22の回転に連動して開閉する吸気弁23、及び排気弁24がそれぞれ設けられている。そして、吸気弁23の開弁に応じて吸気ポート18から燃焼室19に吸気が流入し、排気弁24の開弁に応じて燃焼室19から排気が排出される。
エンジン10は、エンジン制御装置としての電子制御ユニット25により制御されている。電子制御ユニット25は、エンジン制御に係る各種の演算処理を行う演算処理回路26と、制御用のプログラムやデータを記憶したメモリ27とを備えている。そして、電子制御ユニット25には、上述のエアフローメータ13、スロットルセンサ16に加え、吸気温度THAを検出する吸気温度センサ28、大気圧PAを検出する大気圧センサ29、及びクランクシャフト22の回転角(クランク角CRNK)を検出するクランク角センサ30などの各種センサの検出信号が入力されている。そして、電子制御ユニット25は、それらセンサの検出信号に基づき、スロットルモータ15、インジェクタ20、点火装置21などのアクチュエータを制御することで、エンジン10の各種制御を行っている。なお、電子制御ユニット25は、クランク角センサ30によるクランク角CRNKの検出結果からエンジン回転数NEを演算している。
図2に、インジェクタ20の燃料噴射量の制御に係る電子制御ユニット25の処理の流れを示す。燃料噴射量の制御に際して電子制御ユニット25はまず、吸気量演算処理P1において、エアフローメータ13の吸気流量の検出値であるAFM検出吸気量GA、スロットル開度TA、エンジン回転数NEに基づき、エンジン10の吸気量を演算する。この吸気量演算処理P1で演算する吸気量(以下、吸気量演算値MCと記載する)は、燃焼室19での燃焼に供される空気の質量の推定値を表している。続いて、電子制御ユニット25は、噴射量決定処理P2において、吸気量演算処理P1で演算した吸気量演算値MCに基づき、燃焼室19で燃焼する混合気の空燃比が目標とする値となるように燃料噴射量QINJを決定する。そして、電子制御ユニット25は、インジェクタ駆動処理P3において、燃料噴射量QINJ分の燃料噴射を行うように各気筒のインジェクタ20を駆動する。
図3に、吸気量演算処理P1に係る電子制御ユニット25の処理の流れを示す。吸気量演算処理P1は、第1吸気量演算処理P4、第2吸気量演算処理P5、判定処理P6、偏差量演算処理P7、及び演算方式切替処理P8の各処理を通じて実行されている。なお、吸気量演算処理P1による吸気量の演算値は、燃料噴射量の制御の他、点火時期の制御等の各種エンジン制御に用いられる。
第1吸気量演算処理P4では、エアフローメータ13の吸気流量の検出値であるAFM検出吸気量GAとエンジン回転数NEとに基づく吸気量の演算が行われる。具体的には、第1吸気量演算処理P4では、AFM検出吸気量GAをエンジン回転数NEで割った商に規定の係数Kを掛けた積(=K×GA/NE)を定常運転時の吸気量の値として求めている。そして、その定常運転時の吸気量に追従しつつ緩変化する値として吸気量を演算している。すなわち、第1吸気量演算処理P4では、エアフローメータ13の吸気流量の検出値を用いた、いわゆるマスフロー方式による吸気量の演算が行われる。以下の説明では、第1吸気量演算処理P4による吸気量の演算値を第1吸気量MC1と記載する。
第2吸気量演算処理P5では、スロットル開度TAとエンジン回転数NEとに基づく吸気量の演算が行われる。具体的には、第2吸気量演算処理P5では、スロットル開度TAとエンジン回転数NEとに基づき吸気流量を推定するとともに、その吸気流量の推定値(推定吸気流量GA*)をエンジン回転数NEで割った商に上記係数Kを掛けた積(=K×GA*/NE)を定常運転時の吸気量の値として求めている。そして、その定常運転時の吸気量に追従しつつ緩変化する値として吸気量を演算している。すなわち、第2吸気量演算処理P5では、エアフローメータ13の吸気流量の検出値の代わりに、スロットル開度TA及びエンジン回転数NEに基づく吸気流量の推定値を用いた、いわゆるスロットルスピード方式による吸気量の演算が行われる。以下の説明では、第2吸気量演算処理P5による吸気量の演算値を第2吸気量MC2と記載する。
判定処理P6では、吸気通路11内の吸気脈動が大きい状態にあるか否かの判定が行われる。判定処理P6の詳細については後述する。
偏差量演算処理P7では、判定処理P6において吸気脈動が大きい状態にないとの判定(以下、脈動小判定と記載する)がなされているときに、第1吸気量MC1に対する第2吸気量MC2の偏差量DEVを演算する。具体的には、偏差量演算処理P7では、脈動小判定時に、第1吸気量MC1から第2吸気量MC2を引いた差を求めるとともに、その差が偏差量DEVの更新後の値となるように偏差量DEVの値を更新する。なお、判定処理P6において吸気脈動が大きい状態にあるとの判定(以下、脈動大判定と記載する)がなされているときには、偏差量演算処理P7は実施されず、偏差量DEVの値が保持される。
演算方式切替処理P8では、脈動小判定時には、第1吸気量MC1を吸気量演算値MCの値として設定する。また、演算方式切替処理P8では、脈動大判定時には、第2吸気量MC2に偏差量DEVを加えた和である補正後第2吸気量MC3(=MC2+DEV)を吸気量演算値MCの値として設定する。
続いて、判定処理P6の詳細を説明する。判定処理P6には、図4に示すような、規定の期間TにおけるAFM検出吸気量GAの最大値GMAX、最小値GMIN、及び平均値GAVEが用いられる。なお、期間Tは、吸気脈動の周期よりも長い時間となるように設定されている。
図5に、判定処理P6において実行される脈動判定ルーチンのフローチャートを示す。本ルーチンの処理は、エンジン10の運転中、吸気量の演算周期毎に電子制御ユニット25により繰り返し実行される。
本ルーチンの処理が開始されると、まずステップS100において、脈動率RTEの演算が行われる。脈動率RTEの値は、上述したAFM検出吸気量GAの最大値GMAXから最小値GMINを引いた差を平均値GAVEで割った商(=(GMAX-GMIN)/GAVE)として演算されている。続いて、ステップS110において、脈動率RTEの値が規定の脈動大判定値α以上であるか否かが判定される。
脈動率RTEの値が脈動判定値α以上の場合(S110:YES)、ステップS120に処理が進められ、そのステップS120において、脈動大フラグFがセットされる。さらにこの場合には、ステップS130においてカウンタCOUNTの値が0にリセットされた後、今回の本ルーチンの処理が終了される。脈動大フラグFは、判定処理P6の判定結果を示すフラグであり、脈動大判定時にはセットされ、脈動小判定時にはクリアされる。上述の偏差量演算処理P7、及び演算方式切替処理P8では、こうした脈動大フラグFがセットされているか否かにより、判定処理P6の判定結果を確認している。
一方、脈動率RTEの値が脈動大判定値α未満の場合(S110:NO)、ステップS140に処理が進められる。そして、ステップS140において、脈動大フラグFがセットされているか否かが判定される。ここで、脈動大フラグFがセットされていなければ(S140:NO)、上述のステップS130に処理が進められ、そのステップS130においてカウンタCOUNTの値が0にリセットされた後、今回の本ルーチンの処理が終了される。一方、脈動大フラグFがセットされている場合には(S140:YES)、ステップS150に処理が進められる。
ステップS150に処理が進められると、そのステップS150においてカウンタCOUNTの値のインクリメントが行われる。そして、続くステップS160において、インクリメント後のカウンタCOUNTの値が規定の脈動オフ判定値β以上であるか否かが判定される。このときのカウンタCOUNTの値が脈動オフ判定値β未満である場合には(S160:NO)、そのまま今回の本ルーチンの処理が終了される。これに対してカウンタCOUNTの値が脈動オフ判定値β以上である場合には(S160:YES)、ステップS170において脈動大フラグFがクリアされた後、今回の本ルーチンの処理が終了される。
以上の脈動判定ルーチンにおいて脈動大フラグFは、脈動大判定値α未満の値から同脈動大判定値α以上の値へと脈動率RTEの値が増加したときに、クリアされた状態からセットされた状態へと切り替えられる。また、脈動大フラグFは、脈動率RTEが脈動大判定値α未満であり、且つカウンタCOUNTの値が脈動判定値β以上となったときにセットされた状態からクリアされた状態に切り替えられる。一方、カウンタCOUNTの値は、脈動率RTEが脈動大判定値α未満であり、且つ脈動大フラグFがセットされている場合にインクリメントされ、それ以外の場合には0にリセットされる。すなわち、カウンタCOUNTの値のインクリメントは、脈動率RTEが脈動大判定値α以上の値から脈動大判定値α未満の値に低下したときに開始され、その後、脈動率RTEが脈動大判定値α以上となるか、脈動大フラグFがクリアされるか、のいずれかとなるまで継続される。そして、このときのカウンタCOUNTの値のインクリメントは脈動判定ルーチンの実行毎に行われ、さらに脈動判定ルーチンは吸気量の演算周期毎に実行される。よって、脈動大フラグFのセットからクリアへの切り替えは、脈動率RTEが脈動大判定値α以上の値から脈動大判定値α未満の値に低下し、且つその後、脈動率RTEが脈動大判定値α未満の値となっている状態が一定の時間継続したときに行われる。
続いて、以上説明したエンジン制御装置の作用効果を説明する。
図6に、このエンジン制御装置における吸気量演算処理P1の実施態様の一例を示す。
エンジン10の吸気通路11では、吸気弁23の間欠的な開弁により、吸気の脈動が発生する。エンジン10の高負荷運転時等には、こうした吸気脈動が大きくなり、その影響がエアフローメータ13の検出結果に表れる。そのため、吸気脈動が大きい状態にあるときには、エアフローメータ13の検出精度が低下する。
一方、マスフロー方式による吸気量の演算は、エアフローメータ13の吸気流量の検出値(AFM検出吸気量GA)に基づいて行われる。そのため、吸気脈動が大きい状態にあってエアフローメータ13の検出精度が低下すると、マスフロー方式による吸気量の演算精度も低下する。
これに対して、このエンジン制御装置では、判定処理P6において吸気脈動が大きい状態にあるか否かを判定している。そして、脈動小判定時にはマスフロー方式により吸気量を演算する一方、脈動大判定時にはスロットルスピード方式により吸気量を演算するようにしている。
図6の場合、時刻t1までは判定処理P6により脈動小判定がなされており、脈動大フラグFはクリアされている。そして、時刻t1に判定処理P6の判定結果が脈動小判定から脈動大判定に切り替わり、その時刻t1以降は脈動大フラグFがセットされた状態となっている。脈動小判定中は、エアフローメータ13の検出精度は低下しておらず、第1吸気量演算処理P4での第1吸気量MC1の演算精度も高いと考えられる。そこで、前提構成のエンジン制御装置では、脈動小判定中は、第1吸気量MC1を吸気量演算値MCの値として演算するようにしている。
また、脈動小判定中の第1吸気量MC1が正確な値であるとすると、このときの第1吸気量MC1に対する第2吸気量MC2の偏差量DEV分の誤差が、第2吸気量MC2の演算値に生じていることになる。前提構成のエンジン制御装置では、偏差量演算処理P7において、脈動小判定中にそうした偏差量DEVの演算を行っている。
一方、脈動小判定から脈動大判定に切り替わると、エアフローメータ13の検出精度が低下して、第1吸気量演算処理P4による第1吸気量MC1の演算精度も低下する。このときの上記エンジン制御装置では、脈動小判定時に演算した偏差量DEVを第2吸気量MC2に加算した和である補正後第2吸気量MC3を、吸気量演算値MCの値として演算している。すなわち、脈動小判定時の偏差量DEVの演算結果から確認された第2吸気量MC2の誤差を補償した値が、脈動大判定時の吸気量演算値MCの値として演算されている。そのため、吸気脈動が大きい状態にあるときにも、吸気量演算値MCを精度良く演算できる。
また、第1吸気量MC1に対する第2吸気量MC2の偏差が偏差量DEVの値として適切に設定されていれば、時刻t1における第1吸気量MC1と、第2吸気量MC2に偏差量DEVを加えた和である補正後第2吸気量MC3とは同値となる。そのため、上記エンジン制御装置によれば、演算方式の切り替え前後の吸気量演算値MCの値に段差が生じることを抑えられる。
(第1実施形態)
続いて、上記前提構成に対する第1実施形態のエンジン制御装置の相違点を説明する。
エンジンの吸気量の制御は、スロットル開度TAの変更を通じて行われる。一方、エンジンには、スロットルバルブの他にも、吸気量に変化を生じさせる機構が設けられている場合がある。こうしたエンジンでは、そうした機構の制御状態が第1吸気量MC1、第2吸気量MC2の演算結果に影響を与えることがある。
図7に、そうしたエンジン100の一例の構成を示す。同図に示すように、エンジン100は、排気の一部を吸気中に再循環する排気再循環機構を備えている。排気再循環機構は、排気通路31と吸気通路11におけるスロットルバルブ14よりも下流側の部分(例えば吸気マニホールド17)とを連通するEGR(Exhaust Gas Recirculation)通路32を備えている。EGR通路32には、同EGR通路32を通って吸気中に再循環される排気(EGRガス)を冷却するEGRクーラ33と、EGRガスの流量を調整するための流量調整弁であるEGRバルブ34とが設けられている。また、エンジン10には、吸気弁23のバルブタイミング(開閉弁時期)を可変とする可変動弁機構35が設けられている。
こうしたエンジン100においてスロットルバルブ14は、吸気通路11を通って燃焼室19に導入される吸気の流量を調整することで直接的に吸気量を可変とする機構となっている。一方、排気再循環機構による排気の再循環が行われると、燃焼室19内に流入するガスの量が一定でも、そのガス中の空気量(吸気量)は再循環された排気の量分少なくなる。また、可変動弁機構35による吸気弁23のバルブタイミングの変更によっても吸気量は変化する。このように排気再循環機構及び可変動弁機構35は、エンジン100の吸気量を間接的に可変とする機構(間接吸気可変機構)となっている。
同エンジン100では、運転席に設けられたスイッチの操作により、エンジン100の制御モードとして、燃費モードとパワーモードとを選択できるようになっている。燃費モードは、大量の排気再循環を実施することで、エンジン100の燃費を向上する制御モードとなっている。これに対して、パワーモードは、燃費モード時よりも排気再循環を減量して、その分、燃焼室19に導入する空気量を増やすことで、エンジン100の最大出力を増大する制御モードとなっている。
なお、パワーモードでは、高負荷運転時に、吸気弁23の閉弁時期が吸気下死点よりも遅い時期となるように可変動弁機構35を制御している。吸気弁23の閉弁時期を吸気下死点よりも遅い時期とすると、吸気下死点から吸気弁23の閉弁までの期間に燃焼室19に導入された吸気の一部が吸気通路11に押し戻されて、その分、吸気管圧力PMが高くなる。一方、EGRシステムでは、吸気負圧を利用して吸気中に排気の一部を再循環しており、吸気弁23の閉弁時期の遅角により吸気管圧力PMが高まる(吸気負圧が小さくなる)と、吸気中に再循環可能な排気の量は減少する。そのため、大量の排気再循環を行う燃費モードでは、吸気弁23の閉弁時期がパワーモードの場合よりも早い時期となるように、吸気弁23の閉弁時期の進角制御を行っている。ちなみに、燃費モードにおいても、大量の排気再循環、及び吸気弁23の閉弁時期の進角制御は、高負荷運転領域などの限られた運転領域でのみ行われる。なお、燃費モードにおいて大量の排気再循環を実施する運転領域と同燃費モードにおいて吸気弁23の閉弁時期の進角制御が実施する運転領域とは、完全に重なっておらず、いずれか一方のみが実施される場合がある。
本実施形態のエンジン制御装置でも、吸気量演算処理P1の基本的な流れは、上記前提構成のものと同様となっている。すなわち、第1吸気量演算処理P4においてエアフローメータ13の吸気流量の検出値を用いたマスフロー方式により第1吸気量MC1を演算するとともに、第2吸気量演算処理P5においてスロットル開度TA及びエンジン回転数NEに基づく吸気流量の推定値を用いたスロットルスピード方式により第2吸気量MC2を演算する。また、判定処理P6において吸気通路11内の吸気脈動が大きい状態にあるか否かを判定するとともに、偏差量演算処理P7において判定処理P6による脈動小判定時に第1吸気量MC1に対する第2吸気量MC2の偏差量DEVを演算する。そして、演算方式切替処理P8において、脈動小判定時には第1吸気量MC1を吸気量演算値MCとして、脈動大判定時には第2吸気量MC2に偏差量DEVを加えた和である補正後第2吸気量MC3を吸気量演算値MCとして設定することで、吸気量演算処理P1を行っている。
本実施形態のエンジン制御装置では、偏差量演算処理P7において、エンジン回転数NEに応じて区分けされた複数の偏差量学習領域毎に偏差量DEVの学習値である偏差量学習値の学習を行っている。偏差量学習値の学習は、脈動小判定時に、エンジン100が現在運転中の偏差量学習領域(以下、現学習領域と記載する)の偏差量学習値の値を、第1吸気量MC1に対する第2吸気量MC2の偏差量に応じて更新することで行われる。以下、本実施形態のエンジン制御装置における偏差量学習値の学習について詳細に説明する。
図8に、偏差量学習領域の設定態様の一例を示す。同図に示すように本実施形態では、エンジン回転数NEにより区分けされた複数(同図の例では5つ)の偏差量学習領域が設定されている。なお、同図の線Lは、エンジン100の運転領域におけるエンジン回転数毎の吸気管圧力の最高値を示している。また、同図にハッチングで示される脈動領域は、エアフローメータ13の検出精度の低下を招く程度の大きい吸気脈動が発生するエンジン10の運転領域を示している。脈動領域は、吸気管圧力が高い運転領域に限定されている。
以下の説明では、5つの偏差量学習領域を、エンジン回転数NEの小さい側から順に、偏差量学習領域R[1]、偏差量学習領域R[2]、偏差量学習領域R[3]、偏差量学習領域R[4]、偏差量学習領域R[5]とそれぞれ記載する。また、「i」を1、2、3、4、5のいずれかとしたときの偏差量学習領域R[i]の偏差量DEVの学習値を偏差量学習値DEV[i]と記載する。
図9に、偏差量学習値DEV[i]の更新に係る処理の流れを示す。電子制御ユニット25は、偏差量演算処理P7において脈動小判定時に、同図に示す態様で偏差量学習値DEV[i]の更新を行っている。
偏差量学習値更新処理ではまず、現学習領域の偏差量学習値DEV[i]の更新前の値に第2吸気量MC2を加えた和を第1吸気量MC1から引いた差(=MC1-MC2-DEV[i])が求められる。そしてその差から後述するシフト補正量演算処理P20により演算されたシフト補正量SFTを更に引いた差がずれ量DI(=MC1-MC2-DEV[i]-SFT)の値として求められる。さらに、ずれ量DIに応じて更新量ΔDEVの値が求められる。図10に示すように、更新量ΔDEVの値は、ずれ量DIと正負が同じであり、ずれ量DIの絶対値よりも絶対値が小さい値となるように設定される。また、更新量ΔDEVの値は、ずれ量DIの絶対値が大きいときには同ずれ量DIの絶対値が小さいときよりも絶対値が大きくなるように設定される。そして、その更新量ΔDEVを更新前に加えた和が更新後の値となるように、現学習領域の偏差量学習値DEV[i]の値が更新される。こうして偏差量学習値DEV[i]の値は、第1吸気量MC1に対する第2吸気量MC2の差からシフト補正量SFTを引いた値に近づくように更新される。ちなみに、偏差量学習値DEV[i]の学習は、偏差量学習値DEV[i]の絶対値が規定の学習完了判定値以下の状態となっている場合に完了したと判定される。こうした学習完了の判定は、偏差量学習領域毎にそれぞれ個別に行われている。
図11に、本実施形態での補正後第2吸気量MC3の演算に係る処理の流れを示す。同図に示すように、本実施形態では、シフト補正量演算処理P20において演算されたシフト補正量SFTを現学習領域の偏差量学習値DEV[i]に加えた和が偏差量DEVの値として求められる。そして、第2吸気量MC2にその偏差量DEVを加えた和(=MC2+DEV=MC2+DEV[i]+SFT)が補正後第2吸気量MC3の値として演算される。
図12に、シフト補正量演算処理P20の処理の流れを示す。同図に示すように、本実施形態では、シフト補正量SFTの演算マップとして、4つの演算マップM20~M23が用意されている。各演算マップM20~M23にはそれぞれ、エンジン回転数NE、吸気管圧力PM、及び大気圧PAとシフト補正量SFTとの関係が予め記憶されている。シフト補正量演算処理P20では、吸気弁進角フラグVVTAD及び大量EGR実施フラグEGREXに応じて、今回のシフト補正量SFTの演算に使用する演算マップが演算マップM20~M23の中から選択される。そして、選択された演算マップを用いて、エンジン回転数NE、吸気管圧力PM、及び大気圧PAからシフト補正量SFTの値が演算されている。
なお、吸気弁進角フラグVVTADは、吸気弁23のバルブタイミング進角量が規定の進角判定値以上の場合にオン(ON)とされ、進角判定値未満の場合にオフ(OFF)とされるフラグである。バルブタイミング進角量は、可変動弁機構35による吸気弁23のバルブタイミングの変更範囲のうちの最も遅い時期を最遅角時期としたときの、現在の吸気弁23のバルブタイミングの最遅角時期からの進角量を表している。こうした吸気弁進角フラグVVTADは、燃費モードでの吸気弁23の閉弁時期の進角制御が実施されているときにオンとなる。一方、大量EGR実施フラグEGREXは、排気再循環機構による排気の再循環量(以下、EGR量と記載する)が規定の大EGR判定値以上の場合にオン(ON)とされ、大EGR判定値未満の場合にオフとされるフラグである。こうした大量EGR実施フラグEGREXは、燃費モードでの大量の排気再循環が実施されているときにオンとなる。なお、演算マップM20は吸気弁進角フラグVVTAD及び大量EGR実施フラグEGREXが共にオンの場合の、演算マップM21は吸気弁進角フラグVVTADがオン且つ大量EGR実施フラグEGREXがオフの場合の、演算マップM22は吸気弁進角フラグVVTADがオフ且つ大量EGR実施フラグEGREXがオンの場合の、演算マップM23は吸気弁進角フラグVVTAD及び大量EGR実施フラグEGREXが共にオフの場合の、シフト補正量SFTの演算にそれぞれ使用されるマップとなっている。
ここで、平均的な吸気特性を有したエンジン100の機体を標準機体とする。標準機体での各運転状態、各環境条件における偏差量DEVの値は予め求めておくことができる。例えば、複数の機体において偏差量DEVの値を運転状態毎、環境条件毎にそれぞれ測定する。そして、各機体の運転状態毎、環境条件毎の偏差量DEVの測定値の平均を取ることで、標準機体の運転状態毎、環境条件毎の偏差量DEVを求めることができる。
各演算マップは、こうした標準機体での偏差量DEVの測定結果に基づき作成されている。すなわち、演算マップM20には、吸気弁進角フラグVVTAD及び大量EGR実施フラグEGREXが共にオンの状態の標準機体におけるエンジン回転数NE、吸気管圧力PM、及び大気圧PAと偏差量DEVとの関係が予め記憶されている。同様に、演算マップM21には吸気弁進角フラグVVTADがオン且つ大量EGR実施フラグEGREXがオフの状態の、演算マップM22には吸気弁進角フラグVVTADがオフ且つ大量EGR実施フラグEGREXがオンの状態の、演算マップM23には吸気弁進角フラグVVTAD及び大量EGR実施フラグEGREXが共にオフの状態の、各状態における標準機体のエンジン回転数NE、吸気管圧力PM、及び大気圧PAと偏差量DEVとの関係がそれぞれ記憶されている。
本実施形態の作用及び効果について説明する。
以上のように構成された本実施形態では、脈動小判定時には、偏差量演算処理P7において、第1吸気量MC1から第2吸気量MC2を引いた差からシフト補正量SFTを引いた値に近づくように値を更新していくことで、偏差量学習値DEV[i]の学習が行われる。そして、偏差量学習値DEV[i]にシフト補正量SFTを加えた和を偏差量DEVの値として演算し、その偏差量DEVを第2吸気量MC2に加えた和である補正後第2吸気量MC3を、脈動大判定時の吸気量演算値MCの値として設定している。
図13に、エンジン回転数NE、及び吸気弁23のバルブタイミングを固定し、EGRバルブ34を全閉とした状態で吸気管圧力PMを変化させていったときの第1吸気量MC1及び第2吸気量MC2の演算値、並びにそれらの偏差量DEVと吸気管圧力PMとの関係を示す。同図に示すように、吸気管圧力PM以外のエンジン100の制御状態に変化がなくても、吸気管圧力PMが変われば、偏差量DEVは異なった値となる。また、エンジン回転数NEも、吸気管圧力PMと同様に、偏差量DEVに変化をもたらす因子となっている。
図14には、EGRバルブ34の全開時(EGRオン時)、及び同EGRバルブ34の全閉時(EGRオフ時)のそれぞれにおいて、エンジン回転数NE、及び吸気弁23のバルブタイミングを固定した状態で吸気管圧力PMを変化させていったときの吸気管圧力PMと第1吸気量MC1及び第2吸気量MC2の演算値との関係を示す。同図に示すように、大量排気再循環の実施の有無によっても、偏差量DEVは変化する。
他にも、吸気弁23の閉弁時期の進角制御の実施の有無によっても、偏差量DEVは変化する。なお、排気再循環や吸気弁23の閉弁時期の進角制御は、制御モードにより実施の有無が切り替えられる。上記のようにエンジン100では、制御モードに応じて排気再循環や吸気弁23の閉弁時期の進角制御の実施の有無が切り替えられる。こうしたエンジン100では、排気再循環機構や可変動弁機構35は、スロットル開度TAとは非連動に制御されて吸気量に変化を生じさせる機構(間接吸気可変機構)となっている。そのため、エンジン100では、エンジン回転数NE及び吸気管圧力PMに加えて間接吸気可変機構の制御状態が偏差量DEVを決める因子となっている。
これら以外にも、エンジン100の運転が行われている環境条件も、偏差量DEVに変化をもたらす因子となっている。例えば大気圧PAが高いときには、エンジン回転数NEやスロットル開度TAが同じでも、吸気量は多くなる。大気圧PAによる吸気量の変化は、エアフローメータ13の吸気流量の検出値に表れる。そのため、吸気量への大気圧PAの影響は、エアフローメータ13の吸気流量の検出値を用いたマスフロー方式により演算された第1吸気量MC1にはある程度正確に反映される。これに対して、スロットル開度TA及びエンジン回転数NEに基づく吸気流量の推定値を用いたスロットルスピード方式により演算された第2吸気量MC2には、第1吸気量MC1ほど正確には反映されないことになる。偏差量DEVに影響を与える環境条件の状態量としては、上記大気圧PA、サージタンク圧、過給エンジンにおける過給圧などの圧力状態量や、吸気温度THA、外気温、エンジン水温、エンジン油温、吸気ポート18の壁面温度などの温度状態量がある。
これに対して本実施形態では、エンジン100の運転状態(エンジン回転数NE、吸気管圧力PM、排気再循環機構及び可変動弁機構35の制御状態)、及び環境条件(大気圧PA)による偏差量DEVの変化分をシフト補正量SFTの値として演算している。そして、脈動小判定時の第1吸気量MC1に対する第2吸気量MC2の偏差からシフト補正量SFTを引いた差を偏差量学習値DEV[i]の値として学習している。そのため、偏差量学習値DEV[i]には、第1吸気量MC1と第2吸気量MC2との偏差から、エンジン100の運転状態や環境条件による変化分を予め除外した値が、すなわちエンジン100の吸気特性の個体差や経時変化による上記偏差の変化分が、学習されることになる。そして、偏差量学習値DEV[i]にシフト補正量SFTを加えた和を偏差量DEVの値として演算するとともに、その偏差量DEVを第2吸気量MC2に加えた和を、脈動大判定時の吸気量演算値MCとして設定する補正後第2吸気量MC3の値として求めている。そのため、偏差量学習値DEV[i]の学習時と吸気量演算値MCへの同偏差量学習値DEV[i]の反映時とでエンジン100の運転状態や環境条件が異なっていても、脈動大判定時に適切に吸気量を演算することが可能となる。そしてその結果、偏差量学習値DEV[i]の学習を実施するエンジン100の運転状態や環境条件の範囲を拡大できるようになり、学習の実施機会を増加することが、ひいては学習を完了するまでに要する時間を短縮することが可能となる。
本実施形態は、以下のように変更して実施することができる。本実施形態及び以下の変更例は、技術的に矛盾しない範囲で互いに組み合わせて実施することができる。
・上記実施形態では、エンジン回転数NEにより区分けされた複数の偏差量学習領域毎に偏差量学習値DEV[i]をそれぞれ個別に学習していたが、偏差量学習領域の区分けを行わずに、エンジンの運転領域全体で単独の偏差量学習値を学習するようにしてもよい。
・上記実施形態では、排気再循環機構及び可変動弁機構35の制御状態に応じてシフト補正量SFTの演算マップを切り替えるようにしていたが、これ以外の態様で排気再循環機構及び可変動弁機構35の制御状態をシフト補正量SFTに反映するようにしてもよい。例えばエンジン回転数NE、吸気管圧力PM、大気圧PA、排気再循環量又はEGRバルブ34の開度、及び吸気弁23のバルブタイミング進角量を引値とし、シフト補正量SFTを返値とする単一の演算マップを用いてシフト補正量SFTを演算することも可能である。
・上記実施形態では、排気再循環機構の制御状態と可変動弁機構の制御状態との2つの制御状態を、シフト補正量SFTの演算に用いる間接吸気可変機構の制御状態として採用していた。排気再循環機構及び可変動弁機構のうちのいずれか一方がエンジンに設けられていない場合や、それらのうちのいずれか一方がスロットル開度TAに連動して制御されている場合などには、排気再循環機構及び可変動弁機構のいずれか一方の制御状態のみを、シフト補正量SFTの演算に用いる間接吸気可変機構の制御状態とするようにしてもよい。また、それら以外にも、スロットル開度TAとは非連動に制御されて吸気量に変化を生じさせる機構がエンジンに設けられている場合には、その機構の制御状態を、シフト補正量SFTの演算に用いる間接吸気可変機構の制御状態として採用するようにしてもよい。排気再循環機構及び可変動弁機構以外の間接吸気可変機構としては、例えば次のものがある。
可変動弁機構の一種に、吸気弁23のバルブリフト量を可変とする機構(リフト量可変機構)がある。こうしたリフト量可変機構がスロットル開度TAとは非連動に制御される場合には、エンジン回転数NE及び吸気管圧力PMと偏差量DEVとの関係がリフト量可変機構の制御状態(吸気弁23のバルブリフト量)に応じて変化する。こうした場合のリフト量可変機構は、エンジンに設けられた機構であってスロットル開度TAとは非連動に制御されてエンジンの吸気量に変化を生じさせる間接吸気可変機構に該当する。そうした場合、シフト補正量SFTの演算に際して参照する間接吸気可変機構の制御状態の一つとしてリフト量可変機構の制御状態を用いるようにするとよい。
複数のターボチャージャを備えるエンジンにおいて、稼働するターボチャージャの数を変更する可変過給機構が設けられたものがある。こうした過変過給機構がスロットル開度TAとは非連動に制御される場合には、エンジン回転数NE及び吸気管圧力PMと偏差量DEVとの関係が可変過給機構の制御状態(ターボチャージャの稼働数)に応じて変化する。こうした場合の可変過給機構は、エンジンに設けられた機構であってスロットル開度TAとは非連動に制御されてエンジンの吸気量に変化を生じさせる間接吸気可変機構に該当する。そうした場合、シフト補正量SFTの演算に際して参照する間接吸気可変機構の制御状態の一つとして可変過給機構の制御状態を用いるようにするとよい。
吸気ポート18内に燃料を噴射するポート噴射弁と燃焼室19内に燃料を噴射する筒内噴射弁との2種の燃料噴射弁を備えており、エンジンの運転状況に応じて燃料を噴射する燃料噴射弁を切り替える噴射切替機構を備えるエンジンがある。こうしたエンジンでは、筒内噴射弁による燃料噴射が行われる場合には、噴射した燃料の気化熱で燃焼室19内が冷却されて、燃焼室19内に導入された吸気の密度が高まることから、ポート噴射弁のみにより燃料噴射が行われる場合よりも吸気量、すなわち燃焼室19内に導入される吸気の質量が増加する。こうした噴射切替機構がスロットル開度TAとは非連動に制御される場合には、エンジン回転数NE及び吸気管圧力PMと偏差量DEVとの関係が噴射切替機構の制御状態(燃料噴射を行う燃料噴射弁の切替)に応じて変化する。こうした場合の噴射切替機構は、エンジンに設けられた機構であってスロットル開度TAとは非連動に制御されてエンジンの吸気量に変化を生じさせる間接吸気可変機構に該当する。そうした場合、シフト補正量SFTの演算に際して参照する間接吸気可変機構の制御状態の一つとして噴射切替機構の制御状態を用いるようにするとよい。
・大気圧PAの代わりに、或いは大気圧PAに加えて、大気圧PA以外のエンジンの環境条件の状態量に基づいてシフト補正量SFTを演算するようにしてもよい。そうした状態量としては、例えばサージタンク圧、過給エンジンにおける過給圧などの圧力状態量や、吸気温度THA、外気温、エンジン水温、エンジン油温、吸気ポート18の壁面温度などの温度状態量がある。
・環境条件が偏差量に与える影響が小さい場合には、環境条件の状態量を用いずに、エンジン回転数NE、吸気管圧力PM、及び間接吸気可変機構の制御状態に基づいてシフト補正量SFTを演算するようにしてもよい。
・吸気管圧力PMの代わりに第2吸気量MC2を用いてシフト補正量SFTを演算するようにしてもよい。
・上記実施形態では、第2吸気量演算処理P5における第2吸気量MC2の演算を、スロットル開度TA及びエンジン回転数NEに基づく吸気流量の推定値を用いた、いわゆるスロットルスピード方式により行っていた。こうした第2吸気量MC2の演算を、吸気管圧力PM及びエンジン回転数NEの検出結果に基づく吸気流量の推定値を用いた、いわゆるスピードデンシティ方式により行うようにしてもよい。
(第2実施形態)
続いてエンジン制御装置の第2実施形態を、図15~図20を併せ参照して説明する。本実施形態にあって、上記実施形態と共通する構成については、同一の符号を付してその詳細な説明は省略する。
本実施形態のエンジン制御装置も、排気再循環機構と可変動弁機構35とを間接吸気可変機構として備えるエンジン100に適用されている。なお、可変動弁機構35の具体的な構成は、下記の通りである。
可変動弁機構35は、エンジン100のクランクシャフトに対する吸気カムシャフトの相対回転位相を変更することで、吸気弁23のバルブタイミングを可変とする機構として構成されている。より詳細には、可変動弁機構35は、クランクシャフトと同期回転するケースと、そのケース内に相対回動可能に収容されて吸気カムシャフトと同期回転するベーンロータと、を備えている。ケース内には、ベーンロータのベーンを収容する収容室が設けられており、収容室の内部はベーンによって進角油圧室と遅角油圧室とに区画されている。そして、進角油圧室及び遅角油圧室の油圧を制御することで、ケースに対するベーンロータの相対回転位相を変更することで、クランクシャフトに対する吸気カムシャフトの相対回転位相が、ひいては吸気弁23のバルブタイミングが変更されるようになっている。
なお、可変動弁機構35の作動油としては、エンジン100の潤滑油が用いられている。また、可変動弁機構35には、油圧が不足するエンジン100の始動直後などに、ケースに対するベーンロータの相対回動を既定の中間ロック位相にロックするロック機構が設けられている。ロック機構による上記相対回動のロックは、可変動弁機構35への油圧供給により解除される。そして、そうしたロックの解除に応じて中間ロック位相よりも吸気弁23のバルブタイミングを進角させる側、及び遅角させる側の双方への上記相対回転位相の変更が許容されるようになっている。
続いて、本実施形態のエンジン制御装置によるエンジン100の間接吸気可変機構の制御について説明する。以下の説明では、可変動弁機構35の作動油でもあるエンジン100の潤滑油の温度をエンジン油温THOと記載する。図15に示すように、本実施形態のエンジン制御装置では、エンジン水温THWやエンジン油温THO、アクセルペダルの踏込みによる運転者の加速要求の有無により、間接吸気可変機構である排気再循環機構、及び可変動弁機構35の制御内容が切り替えられている。
エンジン水温THWが既定のEGR開始温度Ta未満の場合の可変動弁機構35では、ロック機構をロックした状態に保持するVTロック制御が実施される。また、この場合の排気再循環機構では、EGRバルブ34を完全に閉じて排気の再循環を停止するEGR停止制御が実施される。
なお、エンジン油温THOが一定の限度を超えて高まると、作動油の粘度低下により、可変動弁機構35への供給油圧が、ロック機構のロック解除の維持に必要な値を下回ってしまう場合がある。そうした場合、ケースに対するベーンロータの相対回転位相の変更中にロック機構が不用意に作動して、吸気弁23のバルブタイミングが変更できない状態となることがある。そしてその結果、吸気弁23のバルブタイミングが、排気再循環機構の制御等の他のエンジン制御と整合しなくなり、エンジン100の燃焼状態やエミッション等の悪化を招くことがある。そのため、高油温時には、可変動弁機構35のVTロック制御を実施するとともに、排気再循環機構のEGR停止制御を実施して、意図せぬロック機構の作動による燃焼状態やエミッションの悪化を予防している。
加速要求が無く、エンジン水温THWがEGR開始温度Ta以上、かつ同エンジン水温THWが既定の暖機完了温度Tb未満の場合の可変動弁機構35では、VT通常制御が実施される。また、この場合の排気再循環機構では、低水温EGR制御が実施される。なお、暖機完了温度Tbには、エンジン100の暖機が完了したことを示すエンジン水温THWが値として設定されている。
VT通常制御では、エンジン回転数NE及びエンジン負荷KLに基づき決定された目標バルブタイミングに、吸気弁23のバルブタイミングを調整すべく可変動弁機構35の駆動制御が行われる。VT通常制御での目標バルブタイミングは、基本的には、エンジン100の燃費性能が高くなるタイミングに設定される。例えば、吸気弁23の閉弁時期を吸気下死点よりも遅くしてアトキンソンサイクルを実現するバルブタイミングが、VT通常制御時の目標バルブタイミングとして設定される。
また、低水温EGR制御ではまず、エンジン回転数NE及びエンジン負荷KLに基づきEGR率の目標値である目標EGR率が決定される。なお、EGR率は、燃焼室19内に導入される新気の量と再循環排気の量との合計に対する同再循環排気の量の比率を示している。続いて、目標EGR率の実現に必要なEGRバルブ34の目標開度が求められ、その目標開度が得られるようにEGRバルブ34の開度制御が行われる。なお、低水温EGR制御での目標EGR率は、暖機完了前の低水温の条件下でも良好な燃焼を維持可能な範囲の限られた量の排気再循環が行われるように設定されている。
一方、加速要求が無く、エンジン水温THWが暖機完了温度Tb以上の場合の可変動弁機構35では、上記VT通常制御が行われる。これに対してこの場合の排気再循環機構では、高水温EGR制御が実施される。高水温EGR制御でも、低水温EGR制御の場合と同様に、エンジン回転数NEやエンジン負荷KLに基づいて目標EGR率が決定され、その目標EGR率を実現すべくEGRバルブ34の開度制御が行われる。ただし、高水温EGR制御では、暖機完了後の燃焼状態が改善された条件下で燃焼が悪化しない範囲で大量の排気再循環を行うべく目標EGR率が設定される。
さらに、加速要求が有り、かつエンジン水温THWがEGR開始温度Ta以上の場合の可変動弁機構35ではVT進角制御が実施される。また、この場合の排気再循環機構では、排気の再循環を止めて、その分多くの吸気を燃焼室19に充填するため、EGR停止制御が実施される。VT進角制御でも、VT通常制御と同様に、エンジン回転数NE及びエンジン負荷KLに基づき決定された目標バルブタイミングに吸気弁23のバルブタイミングを調整すべく可変動弁機構35の駆動制御が行われる。ただし、VT進角制御では、燃費性能の向上よりも出力性能の向上を優先した目標バルブタイミングの設定が行われる。上述のアトキンソンサイクルの実現時には、吸気下死点以降の吸気弁23の開弁期間に、それまでに燃焼室19に導入された吸気の一部が吸気通路11に押し戻されるため、その分、燃焼室19の吸気の充填率が低くなる。そのため、VT進角制御では、VT通常制御の場合よりも進角側のタイミングを目標バルブタイミングとして設定して、吸気下死点以降の吸気弁23の開弁期間を減らすことで、燃焼室19の吸気の充填率を高めている。
ところで、吸気弁23のバルブタイミングを進角して吸排気弁のバルブオーバーラップ量を大きくすると、排気通路から燃焼室19に吹き戻される排気、すなわち内部EGRが増加する。そのため、燃焼室19内やその周辺部の温度が低い冷間運転時に、吸気弁23のバルブタイミングを進角し過ぎると、燃焼が悪化してしまう。これに対して本実施形態では、エンジン100の冷間運転時に吸気弁23のバルブタイミングの進角を制限する進角制限制御を行っている。進角制限制御に際してはまず、エンジン始動時のエンジン油温THOである始動時油温とエンジン水温THWとに基づき、進角制限量ADRSTが求められる。続いて、可変動弁機構35による吸気弁23のバルブタイミングの変更範囲における進角側の限界値から進角制限量ADRSTの値の分遅角したバルブタイミングを最大進角タイミングの値として設定する。そして、VT通常制御やVT進角制御に際しては、最大進角タイミングよりも進角側の値とならないように目標バルブタイミングの進角ガードを行っている。
図16に、エンジン水温THW、及び始動時油温と、進角制限量ADRSTと、の関係を示す。同図における「MAX」は、進角制限量ADRSTが取りうる最大の値である最大制限量を示している。同図に示すように、エンジン水温THWが温度T1未満の場合には、始動時油温に関わらず、進角制限量ADRSTの値として最大制限量MAXが設定される。一方、エンジン水温THWが温度T2以上の場合には、始動時油温に関わらず、進角制限量ADRSTの値として「0」が設定される。そして、エンジン水温THWが温度T1以上、かつ温度T2未満の場合には、エンジン水温THWが温度T1のときの値「MAX」から温度T2のときの値「0」へと、エンジン水温THWの上昇とともに減少していく値として進角制限量ADRSTが設定される。さらに、この場合において始動時油温が高いときには、進角制限量ADRSTの値が0まで減少するエンジン水温THWが、始動時油温が低いときよりも低い温度となっている。なお、通常VT制御では、最大制限量MAXが進角制限量ADRSTとして設定されている場合にも、進角ガードが適用されない程度の遅角側のタイミングが目標バルブタイミングとして設定される。そのため、進角制限制御により目標バルブタイミングの進角ガードが実際に適用されるのは、進角VT制御の実施時に限られる。
こうした本実施形態のエンジン制御装置でも、吸気量演算処理P1の基本的な流れは、上述の前提構成及び第1実施形態の場合と同様となっている。すなわち、第1吸気量演算処理P4においてエアフローメータ13の吸気流量の検出値を用いたマスフロー方式により第1吸気量MC1を演算するとともに、第2吸気量演算処理P5においてスロットル開度TA及びエンジン回転数NEに基づく吸気流量の推定値を用いたスロットルスピード方式により第2吸気量MC2を演算する。また、判定処理P6において吸気通路11内の吸気脈動が大きい状態にあるか否かを判定するとともに、偏差量演算処理P7において判定処理P6による脈動小判定時に第1吸気量MC1に対する第2吸気量MC2の偏差量DEVを演算する。そして、演算方式切替処理P8において、脈動小判定時には第1吸気量MC1を吸気量演算値MCとして、脈動大判定時には第2吸気量MC2に偏差量DEVを加えた和である補正後第2吸気量MC3を吸気量演算値MCとして設定することで、吸気量演算処理P1を行っている。
また、本実施形態のエンジン制御装置においても、第1実施形態と同様に、偏差量演算処理P7において、エンジン回転数NEに応じて区分けされた複数の偏差量学習領域毎に偏差量学習値DEV[i]の学習を行っている。本実施形態においても、第1実施形態の場合と同様に、偏差量学習値DEV[i]の学習は、第1吸気量MC1に対する第2吸気量MC2のずれ量DIに基づき行われており、かつずれ量DIの算出に際してシフト補正量SFTによる補正が行われている。さらに本実施形態でも、シフト補正量SFTを現学習領域の偏差量学習値DEV[i]に加えた和を偏差量DEVの値として求めるとともに、第2吸気量MC2にその偏差量DEVを加えた和を補正後第2吸気量MC3の値として演算している。
ただし、本実施形態のエンジン制御装置では、第1実施形態の場合とは異なる態様でシフト補正量SFTの演算を行っている。以下、本実施形態のエンジン制御装置がシフト補正量SFTの演算に係る処理について説明する。
図17に、本実施形態のエンジン制御装置におけるシフト補正量演算処理P20Aの処理の流れを示す。シフト補正量演算処理P20Aでは、エンジン100の間接吸気可変機構の制御状態を判定する制御状態判定処理P30と、各々が特定の制御状態に対応したシフト補正量SFTの演算を行う4つの演算処理(P31~P34)と、を通じてシフト補正量SFTの演算が行われる。
なお、上述した間接吸気可変機構の制御では、吸気量演算値MCから求められた燃焼室19の吸気充填率をエンジン負荷KLとして用いている。吸気量演算値MCの演算過程で実施されるシフト補正量演算処理P20Aでは、吸気量演算値MCから求めた吸気充填率をエンジン負荷KLとして用いることはできない。そのため、シフト補正量演算処理P20Aでは、エンジン負荷KLとして第2吸気量MC2から求められた燃焼室19の吸気充填率を用いている。なお、吸気充填率は、燃焼室19の吸気量に比例した値となる。よって、シフト補正量演算処理P20Aでは、第2吸気量MC2を用いてシフト補正量SFTを演算していることになる。
本実施形態のエンジン制御装置における間接吸気可変機構の制御状態は大きくは、次の4つの制御状態に分けられる。すなわち、第1の制御状態は、可変動弁機構35においてVTロック制御が行われており、かつ排気再循環機構においてEGR停止制御が行われている状態である。第2の制御状態は、可変動弁機構35においてVT通常制御が行われており、かつ排気再循環機構において高水温EGR制御が行われている状態である。第3の制御状態は、可変動弁機構35においてVT通常制御が行われており、かつ排気再循環機構において低水温EGR制御が行われている状態である。第4の制御状態は、可変動弁機構35においてVT進角制御が行われており、かつ排気再循環機構においてEGR停止制御が行われている状態である。上述の4つの演算処理(P31~P34)は、上記4つの制御状態にそれぞれ対応したシフト補正量SFTの演算を行う処理となっている。すなわち、第1演算処理P31は上記第1の制御状態に、第2演算処理P32は上記第2の制御状態に、第3演算処理P33は上記第3の制御状態に、第4演算処理P34は上記第4の制御状態に、それぞれ対応したシフト補正量SFTの演算を行う処理となっている。シフト補正量演算処理P20Aでは、シフト補正量SFTの演算周期毎に、制御状態判定処理P30により現在のエンジン100での間接吸気可変機構の制御状態が第1~第4のいずれの制御状態にあるかを判定している。そして、その判定結果に応じて、今回の演算周期でのシフト補正量SFTの演算に用いる演算処理を切り替えている。
第1演算処理P31では、VTロック時用の演算マップM30を用いてシフト補正量SFTの値が演算される。演算マップM30には、VTロック制御及びEGR停止制御の双方が実行された状態の標準機体におけるエンジン回転数NE、エンジン負荷KL、及び大気圧PAと、偏差量DEVとの関係が予め記憶されている。そして、第1演算処理P31では、現在のエンジン回転数NE、エンジン負荷KL、及び大気圧PAにおける演算マップM30での標準機体の偏差量DEVの値がシフト補正量SFTの値として演算される。
第3演算処理P33では、低水温EGR制御時用の演算マップM33を用いてシフト補正量SFTの値が演算される。演算マップM33には、VT通常制御及び低水温EGR制御の双方が実行された状態の標準機体におけるエンジン回転数NE、エンジン負荷KL、及び大気圧PAと、偏差量DEVとの関係が予め記憶されている。そして、第3演算処理P33では、現在のエンジン回転数NE、エンジン負荷KL、及び大気圧PAにおける演算マップM33での標準機体の偏差量DEVの値がシフト補正量SFTの値として演算される。なお、演算マップM33は、低水温EGR制御での目標EGR率とEGR率の実値とが一致した状態にあることを前提に設定されている。
このように、第1演算処理P31、及び第3演算処理P33ではそれぞれ、単一の演算マップM31、M33を用いてシフト補正量SFTを演算している。これに対して、第2演算処理P32及び第4演算処理P34では、それぞれ2つの演算マップを用いてシフト補正量SFTの演算が行われている。
図18には、第2演算処理P32におけるシフト補正量SFTの演算に係る処理の流れが示されている。第2演算処理P32でのシフト補正量SFTの演算には、EGRオン時用の演算マップM31と、EGRオフ時用の演算マップM32と、の2つの演算マップが用いられる。EGRオン時用の演算マップM31には、VT通常制御及び高水温EGR制御の双方が実行された状態の標準機体におけるエンジン回転数NE、エンジン負荷KL及び大気圧PAと、偏差量DEVと、の関係が予め記憶されている。一方、EGRオフ時用の演算マップM32には、排気再循環を停止、かつVT通常制御を実施した状態の標準機体におけるエンジン回転数NE、エンジン負荷KL、及び大気圧PAと、偏差量DEVとの関係が予め記憶されている。なお、演算マップM31は、高水温EGR制御での目標EGR率とEGR率の実値とが一致した状態にあることを前提に設定されている。
第2演算処理P32では、現在のエンジン回転数NE、エンジン負荷KL、及び大気圧PAにおける演算マップM31での標準機体の偏差量DEVの値がシフト補正量の第1マップ値SFT1の値として求められる。また、第2演算処理P32では、現在のエンジン回転数NE、エンジン負荷KL、及び大気圧PAにおける演算マップM32での標準機体の偏差量DEVの値がシフト補正量の第2マップ値SFT2の値として求められる。そして、第2演算処理P32では、式(3)の関係を満たす値がシフト補正量SFTの値として演算される。なお、式(3)における「EGRR」は、補間係数であり、その値は、現在のエンジン回転数NE及びエンジン負荷KLにおける高水温EGR制御の目標EGR率に対するEGR率の現在値の比を表している。ちなみに、本実施形態では、上記目標EGR率に対するEGR率の現在値の比に対して、「0」を下限値とする下限ガード処理、及び「1」を上限値とする上限ガード処理を施した値を補間係数EGRRの値として用いている。
図19には、第4演算処理P34におけるシフト補正量SFTの演算に係る処理の流れが示されている。第4演算処理P34でのシフト補正量SFTの演算には、ゼロ制限時用の演算マップM34と、最大制限時用の演算マップM35と、の2つの演算マップが用いられる。ゼロ制限時用の演算マップM34には、EGR停止制御が実行され、かつ進角制限量ADRSTの値として「0」が設定された条件のもとでVT進角制御が実行された状態の標準機体におけるエンジン回転数NE、エンジン負荷KL及び大気圧PAと、偏差量DEVと、の関係が予め記憶されている。一方、最大制限時用の演算マップM35には、EGR停止制御が実行され、かつ進角制限量ADRSTの値として最大制限量MAXが設定された条件のもとでVT進角制御が実行された状態の標準機体におけるエンジン回転数NE、エンジン負荷KL及び大気圧PAと、偏差量DEVと、の関係が予め記憶されている。そして、第4演算処理P34では、現在のエンジン回転数NE、エンジン負荷KL、及び大気圧PAにおける演算マップM34での標準機体の偏差量DEVの値がシフト補正量の第3マップ値SFT3の値として求められる。また、第4演算処理P34では、現在のエンジン回転数NE、エンジン負荷KL、及び大気圧PAにおける演算マップM35での標準機体の偏差量DEVの値がシフト補正量の第4マップ値SFT4の値として求められる。
さらに第4演算処理P34では、エンジン水温THWに基づき、演算マップM36を用いて補間係数KRSTの値が演算されている。そして、第4演算処理P34では、式(4)の関係を満たす値がシフト補正量SFTの値として演算される。
図20には、演算マップM36におけるエンジン水温THWと補間係数KRSTの値との関係が示されている。下記のように演算マップM36は、図16に示したエンジン水温THWと進角制限量ADRSTとの関係を反映するかたちで設定されている。上述のように進角制限量ADRSTは、エンジン水温THWと始動時油温とに基づき設定されており、進角制限量ADRSTの値がエンジン水温THWだけでは一義に定まらない場合がある。ここで、エンジン水温THWが「t」のときに進角制限量ADRSTが取り得る最大の値を「Y[t]」とし、エンジン水温THWが「t」のときの補間係数KRSTの値を「KRST[t]」とする。演算マップM36には、このときのY[t]を最大制限量MAXで割った商を、1から引いた差(=1-T[t]/MAX)が補間係数KRST[t]の値として設定されている。よって、エンジン水温THWが温度T1未満であって進角制限量ADRSTの値として最大制限量MAXが設定される場合には「0」が補間係数KRSTの値として設定される。また、エンジン水温THWが温度T2以上であって進角制限量ADRSTの値として「0」が設定される場合には「1」が補間係数KRSTの値として設定される。そして、エンジン水温THWが温度T1以上、かつ温度T2未満の場合の補間係数KRSTは、エンジン水温THWが温度T1のときの値「0」から温度T2のときの値「1」へと、エンジン水温THWの上昇とともに増加していく値として設定される。
以上のように構成された本実施形態の作用を説明する。
上述のように、マスフロー方式により演算された第1吸気量MC1とスロットルスピード方式により演算された第2吸気量MC2との偏差量DEVは、エンジン100の運転状態により変化する。また、スロットル開度TAとは非連動に制御されて吸気量に変化を生じさせる間接吸気可変機構である排気再循環機構や可変動弁機構35の制御状態によっても偏差量DEVは変化する。そのため、本実施形態では、間接吸気可変機構の制御状態に応じてシフト補正量SFTの演算処理を切り替えている。
なお、高水温EGR制御、及び低水温EGR制御の実施時には、エンジン100の運転状態に応じて設定された目標EGR率を実現すべく、排気再循環機構の制御が行われる。こうした高水温EGR制御時、及び低水温EGR制御時のシフト補正量SFTの演算に用いられる演算マップM31、M33は、目標EGR率とEGR率の実値とが一致した状態にあることを前提として設定されている。
しかしながら、目標EGR率の値が大きく変更された直後には、目標EGR率とEGR率の実値とが乖離することがある。また、排気浄化用の触媒の温度が一定の限度を超える高い温度となった場合には、燃料噴射量を増量して燃料の気化熱による排気冷却を促進することで触媒の温度上昇を抑えている。こうした触媒冷却のための燃料噴射量の増量時には、燃料噴射量の空燃比フィードバックが停止される。空燃比フィードバックの停止中には、排気再循環の影響で燃焼状態が悪化して空燃比が目標から大きく逸脱してもその逸脱を補償できないため、排気再循環を停止している。このような臨機の要求によりEGR率が変更された場合にも、目標EGR率とEGR率の実値とが乖離する。このような目標EGR率とEGR率の実値との乖離が生じた状態では、演算マップM31、M33によるシフト補正量SFTの演算値も適正な値からずれてしまう。排気再循環の量が少ない低水温EGR制御時には、目標EGR率とEGR率の実値とが乖離してもその絶対量が小さいため、シフト補正量SFTのずれは許容可能な範囲に留まる。これに対して多量の排気再循環が行われる高水温EGR制御時には、そうしたEGR率の乖離により生じるシフト補正量SFTのずれは許容可能な範囲を超える虞がある。
これに対して高水温EGR制御時のシフト補正量SFTの演算を行う第2演算処理P32では、EGRオン時用の演算マップM31より、EGR率が高水温制御での目標EGR率となった状態にあるときのシフト補正量SFTの値を第1マップ値SFT1の値として求めている。また、EGRオフ時用の演算マップM32より、排気再循環を停止した状態にあるときの、すなわちEGR率が「0」のときのシフト補正量SFTの値を第2マップ値SFT2の値として求めている。そして、EGR率についての第1マップ値SFT1及び第2マップ値SFT2の線形補間により、EGR率の現在値に対応するシフト補正量SFTの値を求めている。そのため、高水温制御中に、目標EGR率とEGR率の現在値とが一時的に乖離した状態となった場合にも、EGR率の現在値に対応した適切な値がシフト補正量SFTの値として演算される。
一方、進角VT制御時及び通常VT制御時には、エンジン100の運転状態に応じて設定された目標バルブタイミングを実現すべく、可変動弁機構35の制御が行われる。ただし、進角VT制御時には、進角制限制御により、目標バルブタイミングが当初の値よりも遅角側の値に変更されることがあり、その結果、第1吸気量MC1と第2吸気量MC2との偏差量DEVに変化が生じることがある。
これに対して進角VT制御時のシフト補正量SFTの演算を行う第4演算処理P34では、ゼロ制限時用の演算マップM34より、進角制限制御での進角制限量ADRSTが「0」の状態にあるときのシフト補正量SFTの値を第3マップ値SFT3の値として求めている。また、最大制限時用の演算マップM35より、進角制限量ADRSTが最大制限量MAXの状態にあるときのシフト補正量SFTの値を第4マップ値SFT4の値として求めている。さらに第4演算処理P34では、エンジン水温THWに応じて設定された補間係数KRSTに応じた第3マップ値SFT3と第4マップ値SFT4との補間により、現在の進角制限量ADRSTに対応するシフト補正量SFTの値を求めている。そのため、進角制限制御により目標バルブタイミングが本来の値よりも遅角側の値に変更されている場合にも、現状の目標バルブタイミングに応じた適切な値がシフト補正量SFTの値として演算される。
本実施形態のエンジン制御装置によれば、次の効果を奏することができる。
(1)排気再循環機構の目標EGR率とEGR率の現在値とが乖離した状態にあるときも、EGR率の現在値に対応した適切な値をシフト補正量SFTの値として演算できる。
(2)可変動弁機構35の目標バルブタイミングが進角制限制御により本来の値よりも遅角側の値に変更された場合にも、変更された目標バルブタイミングに対応した適切な値をシフト補正量SFTの値として演算できる。
本実施形態は、以下のように変更して実施することができる。本実施形態及び以下の変更例は、技術的に矛盾しない範囲で互いに組み合わせて実施することができる。
・上記実施形態のシフト補正量演算処理P20Aでは、エンジン100の運転状態を示すパラメータとして、第2吸気量MC2から求めたエンジン負荷KLと、エンジン回転数NEと、を用いていたが、第1実施形態と同様に、吸気管圧力PMとエンジン回転数NEとをエンジン100の運転状態を示すパラメータとして用いるようにしてもよい。
・上記実施形態では、第2演算処理P32でのシフト補正量SFTの演算に用いる補間係数EGRRとして、目標EGR率に対するEGR率の現在値の比を用いていたが、EGRバルブ34の目標開度に対する同開度の現在値の比や排気再循環量の目標値に対する同排気循環量の現在値の比を、補間係数EGRRの値として用いるようにしてもよい。
・上記実施形態では、進角制限制御での進角制限量ADRSTを、エンジン水温THWと始動時油温とに基づいて演算していた。これに対して第4演算処理P34でのシフト補正量SFTの演算に用いる補間係数KRSTは、エンジン水温THWのみに基づいて演算している。より精密なシフト補正量SFTの演算が求められる場合には、進角制限量ADRSTと同様に補間係数KRSTも、エンジン水温THWと始動時油温とに基づいて演算するとよい。
・進角制限量ADRSTの演算を、エンジン水温THWのみに基づき行うようにしたり、エンジン油温THO、エンジン始動時のエンジン水温THWである始動時水温に基づき行うようにしたり、してもよい。そうした場合の補間係数KRSTの演算は、進角制限量ADRSTの演算に用いたパラメータのすべて、又はその一部を用いて行うことになる。
・大気圧PAの代わりに、或いは大気圧PAに加えて、大気圧PA以外のエンジンの環境条件の状態量に基づいてシフト補正量SFTを演算するようにしてもよい。そうした状態量としては、例えばサージタンク圧、過給エンジンにおける過給圧などの圧力状態量や、吸気温度THA、外気温、エンジン水温、エンジン油温、吸気ポート18の壁面温度などの温度状態量がある。
・環境条件が偏差量に与える影響が小さい場合には、環境条件の状態量を用いずに、吸気管圧力PM又は第2吸気量MC2と、エンジン回転数NEと、間接吸気可変機構の制御状態と、に基づきシフト補正量SFTを演算するようにしてもよい。
・上記実施形態では、第2吸気量演算処理P5における第2吸気量MC2の演算を、スロットル開度TA及びエンジン回転数NEに基づく吸気流量の推定値を用いた、いわゆるスロットルスピード方式により行っていた。こうした第2吸気量MC2の演算を、吸気管圧力PM及びエンジン回転数NEの検出結果に基づく吸気流量の推定値を用いた、いわゆるスピードデンシティ方式により行うようにしてもよい。