以下、本発明を実施するための最良の形態を添付図面に基づいて詳述する。
図1に、本実施形態に関わる内燃機関の制御装置を示す。本実施形態のエンジン(内燃機関)10は、直噴式の多気筒火花点火式エンジンであって、より具体的には4気筒ガソリンエンジンであるが、気筒数や燃料等、エンジンの形態は任意である。このエンジン10は車両用であるが、用途についても特に制限はない。
エンジン10の各気筒11には、燃料を筒内(燃焼室内)に直接噴射する電磁駆動式燃料噴射弁としてのインジェクタ12と、筒内の混合気を点火する点火プラグ13とがそれぞれ設けられている。制御手段としての電子制御ユニット(以下、ECUという)100が設けられ、このECU100がインジェクタ12の開閉を制御すると共に、点火プラグ13による点火を制御する。
インジェクタ12には、燃料供給系20によって燃料が送られる。燃料供給系20は、燃料タンク21と、高圧燃料ポンプ30と、高圧燃料ポンプ30及びインジェクタ12を接続する高圧燃料ライン23とを備える。燃料タンク21内の燃料は例えば電動式のフィードポンプ24によって高圧燃料ポンプ30に送られる。このときの燃圧即ちフィード圧はプレッシャレギュレータ25によって比較的低圧の一定値に保持され、その値は例えば0.3MPa(3気圧)程度である。フィードポンプ24の出口部には燃料フィルタ26が設けられる。
高圧燃料ライン23は、各気筒のインジェクタ12に共通に接続された蓄圧配管としてのデリバリパイプ27と、高圧燃料ポンプ30及びデリバリパイプ27を接続する高圧燃料配管28とから構成される。この高圧燃料ライン23には、インジェクタ12からの燃料噴射圧に相当する高圧の燃料が蓄積されており、その値は例えば5〜13MPa(50〜130気圧)程度である。デリバリパイプ27内に蓄圧された高圧燃料はインジェクタ12の開放時にインジェクタ12から燃焼室内へ直接噴射される。燃焼室内では、その燃料と図示しない吸気通路から送られてきた空気とからなる混合気が生成される。この混合気は、燃焼室内で点火プラグ13によって火花点火され、エンジン10を駆動させる。燃焼室内の排ガスは排気マニホールド50及び排気通路51を順次通過して大気に排出され、排気通路51に設けられた触媒52により浄化される。
高圧燃料ポンプ30は、フィードポンプ24から送られてきた低圧燃料を加圧して高圧燃料配管28に吐出する。高圧燃料ポンプ24は、燃料タンク21からの低圧燃料の吸入通路を機械的に開閉する入口側逆止弁31と、エンジンに駆動されるカムシャフト32によって昇降駆動されプランジャ室33の燃料を加圧するプランジャ34と、高圧燃料配管28に接続する吐出通路を機械的に開閉する出口側逆止弁35と、プランジャ室33から燃料タンク21に至るリターン通路37の入口部を開閉する電磁スピル弁36とを備える。低圧燃料はプランジャ34の下降時に入口側逆止弁31を押し開けてプランジャ室33に流入する。プランジャ上昇時の所定のタイミングにおいて、ECU100により電磁スピル弁36が閉じられると、それ以降のプランジャ34の上昇によりプランジャ室33の燃料が加圧される。この加圧された燃料は出口側逆止弁35を押し開けて高圧燃料配管28に圧送される。これにより高圧燃料ライン23(特にデリバリパイプ27)内の燃料圧力(燃圧)が高められ、高圧燃料ライン23に高圧燃料が蓄積されるようになる。燃料圧送中のフィードポンプ24側への逆流は入口側逆止弁31によって防止される。
図2に示すように、電磁スピル弁36はECU100により、プランジャ34の上昇(リフト)期間(即ち、下死点BDCから上死点TDCまでの間の期間)内に閉及び開作動される。なお電磁スピル弁36はオンのとき開、オフのとき閉である。本実施形態では、電磁スピル弁36の開タイミングVoが上死点TDCに固定され、電磁スピル弁36の閉タイミングVcがECU100により制御されることにより、高圧燃料ポンプ24からの燃料圧送量ひいてはデリバリパイプ27内の燃圧の昇圧度合いが制御されるようになっている。図示例において、プランジャ下死点BDCから電磁スピル弁36の閉タイミングVcまでの間の期間では、電磁スピル弁36が開いているので、プランジャ34の上昇によっても燃料は加圧されずリターン通路37を介して燃料タンク21に戻される。電磁スピル弁36の閉タイミングVcから開タイミングVo(即ちプランジャ上死点TDC)までの間の期間では、電磁スピル弁36が閉じているので、プランジャ34の上昇によって燃料が加圧され、出口側逆止弁35を押し開けて高圧燃料配管28に吐出される。なおプランジャ34の下降中は電磁スピル弁36は開とされる。
燃料圧送量は、電磁スピル弁36の閉タイミングVcが下死点BDCに一致されたとき最大となる。このときをポンプデューティD=100%とする。そしてこの閉タイミングVcが遅れて開タイミングVo(上死点TDC)に近づくにつれ、即ちポンプデューティDが減少するにつれ、燃料圧送量は少なくなる。電磁スピル弁36の閉タイミングVcが開タイミングVo(上死点TDC)に一致されたとき、即ちポンプデューティDが0%のとき、電磁スピル弁36は閉じることなく開きっ放しとなり、燃料圧送量はゼロとなる。このとき高圧燃料ポンプ24による燃料の圧送供給は停止する。
図1に戻って、デリバリパイプ27には、その内部の燃圧を検知するための燃圧センサ38が設けられ、燃圧センサ38はECU100に接続される。またデリバリパイプ27には安全弁としての機械式リリーフ弁39が設けられる。デリバリパイプ27内の燃圧が異常上昇したとき、その内部の燃料はリリーフ弁39を押し開けてリターン通路40を介して燃料タンク21に戻される。このリリーフ弁39はあくまで非常用で、エンジンの通常運転時にデリバリパイプ27内の圧力を制御するためのものではない。本実施形態においてエンジンの通常運転時、リリーフ弁39が開く異常時を除けば、デリバリパイプ27内の燃圧はインジェクタ12からの燃料噴射によって減少される。そしてその燃圧は高圧燃料ポンプ30からの燃料圧送によって増大される。この燃圧の減少と増大とのバランスによってデリバリパイプ27内の平均的な燃圧値が決まり、また、この燃圧の減少と増大とによってデリバリパイプ27内の燃圧に脈動が生じる。
エンジン10には、その運転状態の検出等のために各種のセンサ類が設けられ、これらセンサ類はECU100に接続されている。例えば、エンジン冷却水の温度を検出するための水温センサ、吸気通路を流れる空気量(吸入空気量)を検出するためのエアフロメータ、クランク角度ひいてはエンジン回転速度を検出するためのクランク角センサ、アクセル開度を検出するためのアクセル開度センサ(符号41で示す)、運転者により操作されるイグニッションスイッチがある。ECU100は、CPU、ROM、RAM等を備えた、いわゆるマイクロコンピュータを備える。ECU100は、上記センサ類の出力信号を基に、例えば、燃料噴射量及び燃料噴射時期、点火時期、デリバリパイプ27内の燃圧(電磁スピル弁36の閉時期)をそれぞれ制御する。
次に、本実施形態において実行される制御の内容を説明する。図3には、デリバリパイプ27に関する燃圧値の変化と後述する演算処理の実行タイミングとが示されている。一転鎖線((b)図)は実燃圧P1を示し、これは燃圧センサ38で検知される値そのものである。太い実線((a)図)はなまし燃圧P0を示す。このなまし燃圧とは、デリバリパイプ27内の燃圧値を平均化した値であり、後述の処理によって実燃圧に基づき算出される。
図示例では4回の燃料噴射、即ちエンジンの1サイクル期間(720°CA)中に、高圧ポンプ30による2回の燃料圧送が行われるようになっている。いわゆる4噴射2圧送の構成である。具体的には、図1に示すように、高圧ポンプ30を駆動するカムシャフト32が、エンジンの1回転に対して1/2回転すると共に二つのカム山を有しており、エンジン2回転当たりに2回、カム山によってプランジャ34を押し上げるようになっている。燃料圧送時には実燃圧P1が上昇し、これに伴ってなまし燃圧P0も上昇し、燃料噴射時には実燃圧P1が下降し、これに伴ってなまし燃圧P0も下降する。実燃圧P1は、大凡なまし燃圧P0の値を中心に変動ないし脈動を行う。
(c)図には、なまし燃圧P0と、後述する燃圧補正係数KPとの算出タイミング即ち第1のタイミングが示されている。この第1のタイミングは所定の時間又はクランク角毎であり、例えば20°CA毎である。なお、後述するように、燃圧補正係数KPの算出はマップ検索を含み、比較的長時間を要する処理となる。第1のタイミング同士の間隔は、この燃圧補正係数KPの算出が可能なような間隔に設定されている。
(d)図には、インジェクタ12から噴射されるべき燃料噴射量としての最終燃料噴射量Qfnlの算出タイミング即ち第2のタイミングが示されている。この第2のタイミングは燃料噴射の直前のタイミングに設定されており、より具体的には、燃料噴射タイミングまでに最終燃料噴射量Qfnlの算出が間に合い且つできるだけ燃料噴射タイミングに近いタイミングに設定されている。この第2のタイミング同士の間隔はほぼ180°CAであり、第1のタイミング同士の間隔より長い。
次に、第1のタイミングで実行されるなまし燃圧P0と燃圧補正係数KPとの算出処理の内容を図4に基づいて説明する。図示されるルーチンは、ECU100によって、第1のタイミングが到来する毎に繰り返し実行される。(n)は今回処理時の値、(n−1)は前回処理時の値を意味する。
ECU100は、まずステップS101において、今回処理時に燃圧センサ38によって検知された実燃圧P1(n)の値を取得する。次にECU100は、ステップS102において、この取得した実燃圧P1(n)の値と、前回処理時にステップS104で算出したなまし燃圧P0(n−1)の値とに基づき、これらの差である燃圧変動値ΔP(=P1(n)−P0(n−1))を算出する。
次にECU100は、ステップS103において、その燃圧変動値ΔPが、所定の上限しきい値PHと所定の下限しきい値PLとの間の値であるか否か(PL<ΔP<PH)を判断する。ここで、上限しきい値PHは正の値であり、下限しきい値PLは負の値である。
燃圧変動値ΔPが上限しきい値PHと下限しきい値PLとの間の値である場合(S103:YES)、ECU100はステップS104において、今回処理時のなまし燃圧P0(n)を式:P0(n)=P0(n−1)+A×ΔPにより算出する。他方、燃圧変動値ΔPが上限しきい値PHと下限しきい値PLとの間の値でない場合(S103:NO)、ECU100はステップS105において、今回処理時のなまし燃圧P0(n)を式:P0(n)=P0(n−1)+B×ΔPにより算出する。ここでA,Bは所定のなまし定数であり、A<Bの関係にある。
燃圧変動値ΔPが上限しきい値PHと下限しきい値PLとの間の値である場合(S103:YES)とは、前回処理時のなまし燃圧P0(n−1)に対して今回処理時の実燃圧P1(n)が小さい程度でしか乖離していない場合に相当する。従ってこの場合は、燃圧変動値ΔPに小さい方のなまし定数Aを乗じて、前回処理時のなまし燃圧P0(n−1)に対して小さい程度でしか変動しない今回処理時のなまし燃圧P0(n)を得るようにしている。他方、燃圧変動値ΔPが上限しきい値PHと下限しきい値PLとの間の値でない場合(S103:NO)とは、前回処理時のなまし燃圧P0(n−1)に対して今回処理時の実燃圧P1(n)が比較的大きく乖離した場合に相当する。従ってこの場合は、燃圧変動値ΔPに大きい方のなまし定数Bを乗じて、前回処理時のなまし燃圧P0(n−1)に対して比較的大きく変動する今回処理時のなまし燃圧P0(n)を得るようにしている。
このようにして今回処理時のなまし燃圧P0(n)の算出を終えたら、次にECU100はステップS106において、第1の補正値としての燃圧補正係数KPを算出する。この燃圧補正係数KPは、今回処理時のなまし燃圧P0(n)とエンジン運転状態とに基づいて算出される。具体的には、ECU100は、予め記憶してある図5に示されるような燃圧補正係数マップを参照して燃圧補正係数KPを算出する。この燃圧補正係数マップにおいては、燃圧、燃料負荷率及び燃圧補正係数KPの関係が規定されている。燃料負荷率とは、ある一定のエンジン回転速度における基本燃料噴射量の最大値Qbmaxに対する現在の基本燃料噴射量Qbの比(=Qb/Qbmax)である。基本燃料噴射量Qbは、エンジン回転速度と吸入空気量との相関値としてECU100にマップ形式で記憶されている値である。ECU100は、この基本燃料噴射量マップを用いて現在のエンジン回転速度及び吸入空気量の検出値に基づき基本燃料噴射量Qbを算出し、そのエンジン回転速度に対応する基本燃料噴射量の最大値Qbmaxを読み取り、燃料負荷率を算出する。そしてECU100は、この算出した燃料負荷率と今回処理時のなまし燃圧P0(n)とに基づき、燃圧補正係数マップを用いて燃圧補正係数KPを算出する。以上で本ルーチンを終える。
この説明から分かるように、ステップS106における燃圧補正係数KPの算出は比較的時間を要する処理である。ここで算出されたなまし燃圧P0(n)の値は燃料噴射量だけでなく他の制御量を算出するのにも用いられる。それ故、燃料噴射タイミングとは無関係に、なまし燃圧P0(n)が定期的に比較的短い時間間隔で算出されることとなっている。
次に、前述の第2のタイミングで実行される最終燃料噴射量Qfnlの算出処理について説明する。
まず、本発明に従う最終燃料噴射量Qfnlの算出処理を説明する前に、従来の最終燃料噴射量Qfnlの算出処理を図6に基づき説明する。図示されるルーチンはECU100によって第2のタイミングが到来する毎に繰り返し実行される。
まずECU100はステップS201において基本燃料噴射量Qbを算出する。この基本燃料噴射量Qbの算出方法は前述したのと同様であり、ECU100に予め記憶してある基本燃料噴射量マップ(関数式でもよい)を用い、クランク角センサ及びエアフローメータの出力からそれぞれ得られるエンジン回転速度及び吸入空気量に基づいて算出される。
次にECU100は、ステップS202において、直前の第1のタイミングで計算された燃圧補正係数KPの値を取得する。例えば図3に示すように、現在の第2のタイミングがT2であるとすれば直前の第1のタイミングはT1である。このように、第1のタイミングT1から見て第2のタイミングT2はより遅いタイミングとなる。
この後、ECU100は、ステップS203に進み、最終燃料噴射量Qfnlを式:Qfnl=Qb×KPに基づいて算出する。即ち、基本燃料噴射量Qbは、なまし燃圧P0の関数である燃圧補正係数KPによって補正され、その結果、噴射すべき燃料量に相当する最終燃料噴射量Qfnlが算出される。なお、この補正は、エンジン開発時の適合段階で用いた基準の燃圧値と実際の運転時の燃圧値とのズレを補正し、予め予定されていた量の燃料を噴射するために行われる。
次のステップS204では、算出された最終燃料噴射量Qfnlがインジェクタ12の通電時間τに換算される。こうして本ルーチンが終了される。図示しないが、この後燃料噴射タイミングが到来すると、それと同時にECU100が通電時間τに等しい時間だけインジェクタ12を通電し、インジェクタ12からは燃料が噴射される。これによりインジェクタ12からは、予め予定されていた所望の量の燃料が噴射されるはずである。
しかしながらこの従来例では、図3を参照して、算出された最終燃料噴射量Qfnlが、第1のタイミングT1でのなまし燃圧P0xに基づく燃圧補正係数KPによって補正された値となっている。一方、燃料噴射タイミングTiでは、実燃圧P1zの燃圧値を有する燃料が噴射されており、その実燃圧P1zは第1のタイミングT1でのなまし燃圧P0xに一致せず、ここに燃圧ズレdP(=P1z−P0x)が生じている。従って、結果的に、噴射される燃料量も予め予定されていた量とはならず、ここに燃料噴射量ズレが生じることとなる。他の燃料噴射についても同様のことが言える。
なお、第1のタイミングT1ではなく第2のタイミングT2における実燃圧P1yを用いて燃圧補正係数KPを算出できればこの問題をある程度解消できるが、前述したように燃圧補正係数KPの算出には比較的長い時間を要する。よって、第2のタイミングT2でその時の実燃圧P1yを用いて燃圧補正係数KPを算出しようとすると、ECU100による演算が燃料噴射までに間に合わないか、或いは第2のタイミングT2を燃料噴射タイミングTiよりかなり手前の時期に設定せざるを得ず、満足な結果が得られなくなってしまう。よってこの方法は採用が困難である。
従来は、使用される燃圧が比較的高圧のレンジであることと、デリバリパイプ内容積が比較的大きいことから、燃料噴射量ズレはそれほど大きな問題とならなかった。しかしながら最近では、ダイナミックレンジ拡大のため低燃圧レンジでも燃料噴射を行ったり、始動時のデリバリパイプ内の昇圧を早めて始動時間を短縮するため、デリバリパイプ内容積を縮小したりする試みがなされている。こうなると、実燃圧はなまし燃圧に対して従来より大きくズレることとなり、燃料噴射量ズレが大きくなることが懸念される。
また、図3の例のように4噴射2圧送を行う場合、1回の燃料圧送当たりの2回の燃料噴射間で、実燃圧及びなまし燃圧間の燃圧ズレが異なり、その結果気筒間の噴射量にバラツキが生じる。これに大きな燃料噴射量ズレが加わると気筒間の噴射量バラツキは益々大きくなってしまう。
一方、図7には、燃料噴射と燃料圧送とを変則的に非同期で行う場合、具体的には4回の燃料噴射当たりに3回の燃料圧送を行う場合(4噴射3圧送)の例が示されている。この4噴射3圧送は前述の4噴射2圧送に比べて燃料圧送量を1.5倍に増やせるメリットがある。この場合、3回の燃料圧送当たりの4回の燃料噴射を各々比較すると、実燃圧及びなまし燃圧間の燃圧ズレは4噴射2圧送の場合よりもランダムにバラついている。よってこの結果、気筒間の噴射量もさらにバラつく可能性があり、前述の大きな燃料噴射量ズレと相俟って気筒間噴射量バラツキは増大する可能性がある。
そこで、このような各々の燃料噴射当たりの燃料噴射量ズレや気筒間の燃料噴射量バラツキを抑制するため、本実施形態では次のような最終燃料噴射量Qfnlの算出処理を行うこととしている。
図8は、本実施形態の最終燃料噴射量算出処理に係るルーチンを示す。なお図示されるルーチンはECU100によって第2のタイミングが到来する毎に繰り返し実行される。ここでは理解容易のため、図3にT2で示される第2のタイミングにおける処理を説明するものとする。この第2のタイミングT2の直前の第1のタイミングは図3にT1で示される。
まずECU100は、ステップS301において、前記ステップS201と同様に基本燃料噴射量Qbの算出を行う。次にECU100は、ステップS302において、直前の第1のタイミングT1で計算された燃圧補正係数KPの値と、その直前の第1のタイミングT1で計算されたなまし燃圧P0の値とを取得する。
この後、ECU100は、ステップS303に進み、現時点である第2のタイミングT2において燃圧センサ38により検知される実燃圧P1の値を取得する。
次にECU100は、ステップS304において、取得したなまし燃圧P0及び実燃圧P1に基づき、第2の補正値である燃圧ズレ補正係数KPrを算出する。この燃圧ズレ補正係数KPrは、式:KPr=√(P0/P1)に基づいて算出され、第1のタイミングT1のなまし燃圧P0から第2のタイミングT2の実燃圧P1が大きくずれるほど、1から大きくずれる燃圧ズレ補正係数KPrを得られるようになっている。第2のタイミングT2の実燃圧P1が第1のタイミングT1のなまし燃圧P0より大きくなった場合、1より小さな燃圧ズレ補正係数KPrが得られ、逆に第2のタイミングT2の実燃圧P1が第1のタイミングT1のなまし燃圧P0より小さくなった場合、1より大きな燃圧ズレ補正係数KPrが得られる。これから分かるように燃圧ズレ補正係数KPrは、なまし燃圧P0及び実燃圧P1に基づき算出され、より具体的にはなまし燃圧P0及び実燃圧P1の比(P0/P1)に基づき算出され、さらに具体的にはなまし燃圧P0及び実燃圧P1の比の平方根√(P0/P1)に基づき算出される。
この後ECU100は、ステップS305において、最終燃料噴射量Qfnlを式:Qfnl=Qb×KP×KPrに基づいて算出する。こうして基本燃料噴射量Qbは、第1のタイミングT1のなまし燃圧P0から求まる燃圧補正係数KPのみならず、その第1のタイミングT1のなまし燃圧P0から第2のタイミングT2の実燃圧P1への燃圧ズレ量を反映した値である燃圧ズレ補正係数KPrによっても補正される。
この補正によれば、従来Qb×KPで与えられていた燃料噴射量を、第1のタイミングT1のなまし燃圧P0から第2のタイミングT2の実燃圧P1への燃圧ズレ量を反映させてさらに補正することができる。ここで、第2のタイミングT2における実燃圧P1は、必ずしも燃料噴射タイミングTiにおける実燃圧P1とは一致しないが、それでも、第1のタイミングT1より第2のタイミングT2の方が燃料噴射タイミングTiに近く、第2のタイミングT2の実燃圧P1は第1のタイミングT1のなまし燃圧P0よりも遙かに燃料噴射タイミングTiの実燃圧P1に近い値となる。よって、第1のタイミングT1のなまし燃圧P0と第2のタイミングT2の実燃圧P1とに基づき、好ましくはそれらの比(P0/P1)に基づき、さらに好ましくはそれらの比の平方根√(P0/P1)に基づき、燃料噴射量を補正することにより、燃圧ズレの影響を極力減少し、燃圧ズレに起因する燃料噴射量ズレや気筒間燃料噴射量バラツキを抑制することができる。
ここで特に、本実施形態では、第1のタイミングT1のなまし燃圧P0と第2のタイミングT2の実燃圧P1との比の平方根√(P0/P1)に基づき、燃料噴射量を補正している。これは、流量Qと圧力Pとの間にQ=C√P(但しCは定数)の一般的関係が成立するからである。即ち、なまし燃圧P0と実燃圧P1との比の平方根√(P0/P1)に基づき、燃料噴射量を補正することにより、精度の良い補正を実行して燃料噴射量ズレを著しく抑制することができる。
このように、ステップS305で得られる最終燃料噴射量Qfnlは従来より遙かに、予め予定されていた燃料噴射量に近い値となる。この最終燃料噴射量Qfnlを算出した後は、ステップS306において最終燃料噴射量Qfnlのインジェクタ通電時間τへの換算が行われ、本ルーチンが終了される。この後、燃料噴射タイミングが到来すると、ECU100は通電時間τに等しい時間だけインジェクタ12を通電し、インジェクタ12から燃料を噴射させる。これによりインジェクタ12からは、予め予定されていた量にほぼ等しい量の燃料が噴射されることとなる。
本ルーチンの演算処理は、燃圧補正係数KPの算出を伴わず、且つ基本燃料噴射量Qbの算出ステップ(S301)を除けば単純な四則演算のみであるため、比較的短時間で実行可能である。従って従来と同じ第2のタイミングで実行することができ、十分満足な演算結果を得ることができる。
以上の説明で分かるように、本実施形態によれば、燃圧ズレに起因する燃料噴射量ズレや気筒間燃料噴射量バラツキを抑制することができる。よって、低燃圧レンジでも正確な燃料噴射が行えるようになり、ダイナミックレンジを拡大することができる。また、デリバリパイプ内容積を縮小し、始動時のデリバリパイプ内の昇圧を早めて始動時間を短縮することができる。さらに、高圧燃料ポンプによる変則的な燃料圧送を実行することも可能となる。
なお、ECU100の演算速度がより高速となれば次のような方法で最終燃料噴射量を算出することも可能である。図9はこの場合の最終燃料噴射量算出処理に係るルーチンを示す。このルーチンもECU100によって第2のタイミングが到来する毎に繰り返し実行される。ここでも理解容易のため、図3にT2で示される第2のタイミングにおける処理を説明するものとする。
ECU100は、ステップS401において、前記ステップS201と同様に基本燃料噴射量Qbの算出を行う。次にECU100はステップS402に進み、現時点である第2のタイミングT2において燃圧センサ38により検知される実燃圧P1の値を取得する。
次にECU100は、ステップS403において、ステップS401で算出した基本燃料噴射量QbとステップS402で取得した実燃圧P1とを用い、図5に示す燃圧補正係数マップを参照して燃圧補正係数KPを直接的に算出する。ここではECU100の演算速度が十分高速であるため、第2のタイミングにおいて燃料噴射に間に合うように燃圧補正係数KPを算出可能である。
この後ECU100は、ステップS404において、最終燃料噴射量Qfnlを式:Qfnl=Qb×KPに基づいて算出する。そしてステップS405において最終燃料噴射量Qfnlをインジェクタ通電時間τに換算し、本ルーチンを終了する。この後、燃料噴射タイミングの到来と同時に通電時間τに等しい時間だけインジェクタ12を通電し、燃料噴射させる点は前記同様である。こうしても予め予定されていた量にほぼ等しい量の燃料噴射を実行することができ、燃料噴射量ズレ及び気筒間燃料噴射量バラツキを抑制することができる。
本発明の実施形態は他にも様々なものが考えられる。例えば、前記実施形態ではなまし燃圧及び実燃圧の比に基づき第2の補正値を算出するようにしたが、これに代えて、なまし燃圧及び実燃圧の差に基づき第2の補正値を算出するようにしてもよい。また、なまし燃圧及び実燃圧の比の平方根に基づき第2の補正値を算出する代わりに、なまし燃圧及び実燃圧の差の平方根に基づき第2の補正値を算出するようにしてもよい。第1及び第2の補正値は、基本燃料噴射量に乗算する値に限らず、基本燃料噴射量に加算、減算、除算等する値であってもよい。エンジンは、前記実施形態では火花点火式内燃機関であったが、これに替えて、圧縮着火式内燃機関即ちディーゼルエンジンとしてもよい。例えばコモンレール式ディーゼルエンジンにも本発明は好適に適用可能である。また、エンジンは直噴式のみならず、吸気通路(例えば吸気ポート)に燃料を噴射する吸気通路噴射式であってもよい。この吸気通路噴射式エンジンにおいても高圧噴射を行う場合があるからである。直噴式と吸気通路噴射式との両方の噴射方式を兼ね備えた所謂デュアル噴射式エンジンにも本発明は好適に適用可能である。燃料供給系や高圧燃料ポンプの構成についても種々のものが考えられる。
以上の説明から分かるように、本実施形態においては基本燃料噴射量算出手段、なまし燃圧算出手段及び補正手段がECU100によって構成される。
本発明の実施形態は前述の実施形態のみに限定されず、特許請求の範囲によって規定される本発明の思想に包含されるあらゆる変形例や応用例、均等物が本発明に含まれる。従って本発明は、限定的に解釈されるべきではなく、本発明の思想の範囲内に帰属する他の任意の技術にも適用することが可能である。