以下、本発明による内燃機関の燃料噴射量制御装置の実施形態について図面を参照しつつ説明する。
図1は、本発明の実施形態に係る燃料噴射量制御装置を備えた火花点火式多気筒(4気筒)内燃機関10に適用したシステムの概略構成を示している。
この内燃機関10は、シリンダブロック、シリンダブロックロワーケース、及びオイルパン等を含むシリンダブロック部20と、シリンダブロック部20の上に固定されるシリンダヘッド部30と、シリンダブロック部20にガソリン混合気を供給するための吸気系統40と、シリンダブロック部20からの排気ガスを外部に放出するための排気系統50とを含んでいる。
シリンダブロック部20は、シリンダ21、ピストン22、コンロッド23、及びクランク軸24を含んでいる。ピストン22はシリンダ21内を往復動し、ピストン22の往復動がコンロッド23を介してクランク軸24に伝達され、これにより同クランク軸24が回転するようになっている。シリンダ21とピストン22のヘッドは、シリンダヘッド部30とともに燃焼室25を形成している。
シリンダヘッド部30は、燃焼室25に連通した吸気ポート31、吸気ポート31を開閉する吸気弁32、吸気弁32を駆動するインテークカムシャフトを含むとともに同インテークカムシャフトの位相角を連続的に変更する可変吸気タイミング装置33、可変吸気タイミング装置33のアクチュエータ33a、燃焼室25に連通した排気ポート34、排気ポート34を開閉する排気弁35、排気弁35を駆動するエキゾーストカムシャフト36、点火プラグ37、点火プラグ37に与える高電圧を発生するイグニッションコイルを含むイグナイタ38、燃料を吸気ポート31に噴射する燃料噴射弁39を備えている。
燃料噴射弁39は、電動ポンプPの吐出側に接続されている。電動ポンプPは、図示しない燃料タンク内の燃料を吸い込み、同吸い込んだ燃料を燃料噴射弁39に供給するようになっている。電動ポンプPの吐出圧は、通常、設定圧P0に維持・調整されるようになっていて、これにより、燃料噴射弁39から噴射される燃料の噴射圧Pfも同設定圧P0に維持・調整され得るようになっている。
吸気系統40は、吸気ポート31に連通し同吸気ポート31とともに吸気通路を形成するインテークマニホールドを含む吸気管41、吸気管41の端部に設けられたエアフィルタ42、吸気管41内にあって吸気通路の開口断面積を可変とするスロットル弁43、及びスロットル弁駆動手段を構成するDCモータからなるスロットル弁アクチュエータ43aを備えている。
排気系統50は、排気ポート34に連通したエキゾーストマニホールド51、エキゾーストマニホールド51(実際には、各排気ポート34に連通したそれぞれのエキゾーストマニホールド51が集合した集合部)に接続されたエキゾーストパイプ(排気管)52、エキゾーストパイプ52に配設(介装)された三元触媒53を備えている。排気ポート34、エキゾーストマニホールド51、及びエキゾーストパイプ52は、排気通路を構成している。
一方、このシステムは、熱線式エアフローメータ61、吸気温度センサ62、スロットルポジションセンサ63、カムポジションセンサ64、クランクポジションセンサ65、水温センサ66、三元触媒53の上流の排気通路(本例では、上記各々のエキゾーストマニホールド51が集合した集合部)に配設された空燃比センサ67、及び吸気管圧力センサ68を備えている。
熱線式エアフローメータ61は、吸気管41を流れる吸入空気の単位時間あたりの質量流量(吸入空気流量Ga)を表す信号を出力するようになっている。吸気温度センサ62は、吸入空気の温度を検出し、吸気温度(即ち、大気温度Ta)を表す信号を出力するようになっている。スロットルポジションセンサ63は、スロットル弁43の開度を検出し、スロットル弁開度TAを表す信号を出力するようになっている。
カムポジションセンサ64は、インテークカムシャフトが90°回転する毎に(即ち、クランク軸24が180°回転する毎に)一つのパルスを有する信号(G2信号)を発生するようになっている。この信号は、吸気弁32の開閉タイミングVTをも表す。
クランクポジションセンサ65は、クランク軸24が10°回転する毎に幅狭のパルスを有するとともに同クランク軸24が360°回転する毎に幅広のパルスを有する信号を出力するようになっている。この信号は、エンジン回転速度NEを表す。水温センサ66は、内燃機関10の冷却水の温度を検出し、冷却水温THWを表す信号を出力するようになっている。
空燃比センサ67は、排ガスの空燃比に応じた電流を出力し、この電流に応じた信号を出力するようになっている。吸気管圧力センサ68は、吸気管41内の空気圧力を検出し、吸気管圧力Pmを表す信号を出力するようになっている。
電気制御装置70は、互いにバスで接続されたCPU71、CPU71が実行するルーチン(プログラム)、テーブル(ルックアップテーブル、マップ)、及び定数等を予め記憶したROM72、CPU71が必要に応じてデータを一時的に格納するRAM73、電源が投入された状態でデータを格納するとともに同格納したデータを電源が遮断されている間も保持するバックアップRAM74、並びにADコンバータを含むインターフェース75等からなるマイクロコンピュータである。インターフェース75は、前記センサ61〜68に接続され、CPU71にセンサ61〜68からの信号を供給するとともに、同CPU71の指示に応じて可変吸気タイミング装置33のアクチュエータ33a、イグナイタ38、燃料噴射弁39、スロットル弁アクチュエータ43a、及び電動ポンプPに駆動信号を送出するようになっている。
(指令燃料噴射量の決定方法の概要)
次に、上記のように構成された燃料噴射量制御装置(以下、「本装置」と云うこともある。)による、燃料噴射弁39に噴射指示される指令燃料噴射量fiの決定方法について説明する。
本装置は、始動性向上等のため、始動により開始された燃料噴射の回数が所定の規定回数Nref(例えば、Nref=8。即ち、内燃機関10が4気筒であることを鑑みると、各気筒について2回)に達するまでの短期間(以下、「始動期間」と称呼する。)において、指令燃料噴射量fiを機関の空燃比とは無関係に始動専用の特定の値に強制的に決定する。即ち、本装置は、始動後の始動期間においてのみ規定回数Nrefだけ非同期噴射を行う。
以下、係るNref回の非同期噴射に対応するそれぞれの指令燃料噴射量fiを、「指令非同期噴射量fnsd(N)」とも称呼する。ここで、Nは延べ噴射回数であって、N=1,2,・・・,Nrefである。係るそれぞれの指令非同期噴射量fnsd(N)
(N=1,2,・・・,Nref)は、後述するように、始動後の1回目の燃料噴射開始時点の直前での冷却水温THW等に基づいて決定される。
一方、本装置は、始動期間終了後(即ち、始動後の(Nref+1)回目の燃料噴射から)、同期噴射を開始する。具体的には、本装置は、燃焼室25内に吸入される空気量(筒内吸入空気量Mc)と目標空燃比abyfr(原則的に、理論空燃比stoich)とから、機関の空燃比を目標空燃比abyfrに一致させるために筒内に流入すべき燃料量である要求流入燃料量Fcを求める。
そして、本装置は、上記求めた要求流入燃料量Fcと、後述する吸気通路構成部材へ付着する燃料についての燃料挙動モデル(の逆モデル)に基づいて、機関の空燃比が目標空燃比abyfrに一致するように同期噴射に対応する指令燃料噴射量fiを決定していく。
このように、本装置は、始動期間中においてNref回の非同期噴射を行い、始動期間終了後において燃料挙動モデルを利用した同期噴射を開始・実行する。以上が、指令燃料噴射量fiの決定方法の概要である。以下、始動期間終了後における同期噴射に対応する指令燃料噴射量fiの具体的な決定方法を説明する前に、同期噴射に対応する指令燃料噴射量fiを決定するために本装置が使用する燃料挙動モデルについて説明する。
(同期噴射に対応する指令燃料噴射量を決定するために使用される燃料挙動モデル)
図2に概念的に示したように、燃料が噴射される気筒(燃料噴射気筒)の燃料噴射弁39から噴射された燃料は、その一部が吸気管41の壁面部(吸気管41の内壁面)、及び吸気弁32の傘部(即ち、上記吸気通路構成部材)に付着する。以下、吸気通路構成部材に付着している燃料の量を燃料付着量fwと称呼する。
より具体的に述べると、燃料噴射気筒に着目した図3に示したように、fiを燃料噴射弁39から今回の吸気行程に対して噴射される燃料の量(指令燃料噴射量)、fw(k-1)を前回の吸気行程後であって今回の吸気行程直前における燃料付着量、Pを上記燃料付着量fw(k-1)の燃料のうち吸気通路構成部材に付着したまま残留する燃料の割合(残留率)、Rを上記指令燃料噴射量fiの燃料のうち吸気通路構成部材へ付着する燃料の割合(付着率)とすると、上記燃料付着量fw(k-1)のうち吸気通路構成部材に残留する燃料の量はP・fw(k-1)となり、指令燃料噴射量fiの燃料のうち吸気通路構成部材に新たに付着する燃料の量はR・fiとなる。
従って、今回の吸気行程後であって次回の吸気行程直前における燃料付着量fw(k)について下記(1)式が成立する。漸化式である下記(1)式は、吸気通路構成部材に付着する燃料についての燃料挙動モデルを記述したものである。
fw(k)=P・fw(k-1)+R・fi ・・・(1)
また、上記(1)式にて使用される上記残留率P、及び付着率Rは、筒内吸入空気量Mc、エンジン回転速度NE、吸気管圧力Pm、及び冷却水温THWに強く依存するから、これらの値を引数とする予め作製されている所定のテーブルに従って決定される。
この上記(1)式で記述される燃料挙動モデルに、始動期間終了時点(正確には、各気筒の1回目の同期噴射に対応する吸気行程の直前)での燃料付着量fwの値を初期値(以下、「燃料付着量の初期値fwini」と称呼する。)として気筒毎に与えることで、本装置は始動期間終了後において、同燃料挙動モデルを使用して燃料付着量fwを吸気行程毎、且つ気筒毎に更新していく。燃料付着量の初期値fwiniの取得方法については後述する。以上が、同期噴射に対応する指令燃料噴射量fiを決定するために使用される燃料挙動モデルの概要である。
(同期噴射に対応する指令燃料噴射量fiの具体的な決定方法)
次に、同期噴射に対応する指令噴射量fiの具体的な決定方法について説明する。本装置は、上記(1)式で記述される燃料挙動モデルの逆モデルを使用して同期噴射に対応する指令噴射量fiを決定する。以下、この燃料挙動モデルの逆モデルについて説明する。
この燃料挙動モデルの逆モデルは、燃料噴射弁39から噴射された燃料のうち吸気通路構成部材に付着することなく筒内に流入する燃料の量、及び吸気通路構成部材に付着していた燃料のうち筒内に流入する燃料の量を考慮して、上述した要求流入燃料量Fcの燃料を筒内に流入させるために必要とされる指令燃料噴射量fiを算出するモデルである。
上記(1)式により既に求められている、燃料噴射気筒の前回の吸気行程後であって今回の吸気行程直前における燃料付着量fwp(k-1)、並びに、上述した残留率P、及び付着率Rを使用すると、今回の吸気行程に対して指令燃料噴射量fiの燃料を噴射したと仮定した場合に筒内に流入する燃料量Finは、下記(2)式で表される(図3を参照)。
Fin=(1−R)・fi+(1−P)・fw(k−1) ・・・(2)
従って、今回の吸気行程において上記要求流入燃料量Fcの燃料が筒内に流入するために必要な指令燃料噴射量fiは、上記(2)式において上記燃料量Finを同要求流入燃料量Fcと置き換えた式を指令燃料噴射量fiについて解くことで求めることができる。その計算結果は(3)式の通りとなる。この(3)式が、燃料挙動モデルの逆モデルを記述したものである。
fi=(Fc−(1−P)・fw(k−1))/(1−R) ・・・(3)
本装置は始動期間終了後において、上記(3)式を使用して同期噴射に対応する指令燃料噴射量fiを吸気行程毎、且つ気筒毎に求めていく。これにより、筒内に流入する燃料の量が要求流入燃料量Fcと一致し得、この結果、空燃比を目標空燃比abyfrに一致させることができる。以上が、同期噴射に対応する指令燃料噴射量fiの具体的な決定方法の概要である。
(燃料付着量の初期値fwiniの取得方法)
次に、上述した同期噴射に対応する指令燃料噴射量fiを決定するために使用される燃料挙動モデル(上記(1)式を参照)に与えられる「燃料付着量の初期値fwini」の取得方法について説明する。
始動期間終了後において上記(1)式で記述される燃料挙動モデルを利用して燃料付着量fwを精度良く推定し機関の空燃比を目標空燃比abyfrに精度良く一致させるためには、上記燃料付着量の初期値fwiniを気筒毎に正確に求める必要がある。このそれぞれの燃料付着量の初期値fwiniは、始動期間中において実行される非同期噴射(各気筒について2回)に対応するそれぞれの実際の燃料噴射量に依存する。
ここで、上記Nref回の非同期噴射において実際の燃料噴射量が指令燃料噴射量と一致するとの仮定のもと、上記(1)式と同様の下記(4)式で記述される非同期噴射に対応する燃料挙動モデルを使用して上記燃料付着量の初期値fwiniを取得する方法が考えられる。下記(4)式において、fnsd(N)は上述したN回目(N=1,・・・,Nref)の非同期噴射についての指令燃料噴射量(指令非同期噴射量)である。Pns,Rnsはそれぞれ、非同期噴射に対応する残留率、付着率であり、fwnsは非同期噴射により吸気通路構成部材に付着している燃料の量(燃料付着量)である。
fwns(k)=Pns・fwns(k-1)+Rns・fnsd(N) ・・・(4)
具体的には、上記(4)式で記述される燃料挙動モデルに機関始動時の燃料付着量を初期値(以下、「始動時燃料付着量初期値fwnsini」と称呼する。)として与え、非同期噴射についての吸気行程毎、且つ気筒毎に上記(4)式を利用して燃料付着量fwns(k)を更新していくことで、始動期間終了時点(正確には、各気筒について最後の(2回目の)非同期噴射後、1回目の同期噴射に対応する吸気行程の直前)での燃料付着量fwns(k)、即ち、上記「燃料付着量の初期値fwini」を気筒毎に取得することができる。
しかしながら、始動期間中(即ち、上記Nref回の非同期噴射が実行されている間)は、上述したように、燃料噴射弁39から噴射される燃料の噴射圧Pfに大きな変動が発生し得ることに起因して実際の燃料噴射量が指令非同期噴射量fnsd(N)から乖離し得る。以下、図4を参照しながら実際の燃料噴射量の指令非同期噴射量fnsd(N)からの乖離について説明する。
図4は、機関始動後に実行されるNref回の非同期噴射のうち始めの3回の非同期噴射についての燃料の噴射圧Pfの変化を示したタイムチャートである。図4においてT(N) (N=1,2,・・・,Nref)は、N回目の非同期噴射についての噴射期間(燃料が噴射されている期間)である。この噴射期間T(N)は、噴射圧Pfが設定圧P0に略維持されている状態で燃料噴射弁39から指令非同期噴射量fnsd(N)と等しい量の燃料を噴射するための同燃料噴射弁39の開弁時間である。
図4に示したように、機関始動後の非同期噴射に対応する噴射期間中(例えば、図4における1,2,3回目の非同期噴射期間である、時刻t1〜t2、時刻t3〜t4、時刻t5〜t6)は、燃料の噴射(放出)により噴射圧Pfが大きく減少していく。一方、非同期噴射がなされていない期間中(例えば、図4における時刻t2〜t3、時刻t4〜t5)は、電動ポンプPによる燃料の供給により、設定圧P0から低下している噴射圧Pfが同設定圧P0に向けて増加(復帰)していく。このように、始動期間中は噴射圧Pfに比較的大きな変動が生じる。
ここで、燃料噴射弁39から単位時間あたりに噴射される燃料の量(噴射速度)は、噴射圧Pfに応じて変化する。従って、図4における1,2,3回目の非同期噴射に対応するそれぞれの実際の燃料噴射量は、斜線で示した領域の面積に相当する分だけ対応する指令非同期噴射量fnsd(N) (N=1,2,3)よりも小さい。このように、上記「始動期間中における噴射圧Pfの比較的大きな変動」に起因して、始動期間中における実際の燃料噴射量は指令非同期噴射量fnsd(N)から乖離する(よりも小さくなる)。
以上のことから、上記(4)式に示すように指令非同期噴射量fnsd(N)を利用して「燃料付着量の初期値fwini」を求めると、「燃料付着量の初期値fwini」の値に大きな推定誤差が含まれることになる。換言すれば、上記「燃料付着量の初期値fwini」を精度良く取得するためには、始動期間中における規定回数Nref回の非同期噴射に対応するそれぞれの実際の燃料噴射量を精度良く求める必要がある。
ここで、上記非同期噴射におけるそれぞれの噴射開始時点(例えば、図4における時刻t1,t3,t5)での噴射圧Pfは、対応するそれぞれの実際の燃料噴射量に大きく影響を与える。換言すれば、非同期噴射に対応するそれぞれの噴射開始時点での噴射圧Pfを精度良く推定できれば、対応するそれぞれの実際の燃料噴射量を精度良く求めることができる。
以下、上記それぞれの噴射開始時点での噴射圧Pfの推定方法について説明するため、N回目(N=1,2,・・・,Nref)の非同期噴射に対応する噴射開始時点での噴射圧PfをPf(N)と呼び、Pf(N)のPf(N-1)に対する噴射圧低下量をΔP(N)と呼ぶことにする(図4を参照)。そうすると、下記(5)式が成立する。
Pf(N)=Pf(N-1)−ΔP(N) (N=2,3,・・・,Nref) ・・・(5)
この(5)式から理解できるように、Pf(1)と、ΔP(N) (N=2,3,・・・,Nref)が取得できれば、始動期間中におけるそれぞれの噴射開始時点での噴射圧Pf(N) (N=1,2,・・・,Nref)を推定することができる。本例では、図4に示すように、Pf(1)は設定圧P0に等しいものとして扱う。以下、図5〜図9を参照しながら、ΔP(N) (N=2,3,・・・,Nref)について説明する。
図5は、図4に示した場合(実線を参照)でのΔP(2)と、図4に示した場合に比して1回目の指令非同期噴射量fnsd(1)が大きい(即ち、噴射期間T(1)が長い)場合(破線を参照)でのΔP(2)’とを比較するためのタイムチャートである。図5から理解できるように、噴射期間T(1)中における噴射圧Pfの低下量は同噴射期間T(1)が長いほど大きくなることに起因して、ΔP(2)’はΔP(2)よりも大きくなる。即ち、ΔP(N) (N=2,3,・・・,Nref)は、噴射期間T(N−1)に依存し、噴射期間T(N−1)が長いほど(即ち、指令非同期噴射量fnsd(N−1)が大きいほど)大きくなる。
図6は、図4に示した場合(実線を参照)でのΔP(2)と、図4に示した場合に比してエンジン回転速度NEが小さい場合(破線を参照)でのΔP(2)’とを比較するためのタイムチャートである。図6から理解できるように、1回目の非同期噴射終了時点(時刻t2)から2回目の非同期噴射開始時点(時刻t3、t3’)までの噴射圧Pfの増加量は2回目の噴射開始時期(時刻t3、t3’)が遅いほど、即ち、エンジン回転速度NEが小さいほど大きくなる。これにより、ΔP(2)’はΔP(2)よりも小さくなる。即ち、ΔP(N) (N=2,3,・・・,Nref)は、エンジン回転速度NEに依存し、エンジン回転速度NEが小さいほど小さくなる。
図7は、図4に示した場合(実線を参照)でのΔP(2)と、図4に示した場合に比して大気温度Taが高い場合(破線を参照)でのΔP(2)’とを比較するためのタイムチャートである。図7から理解できるように、大気温度Ta(即ち、始動時の燃料の温度)が高いほど燃料の粘度が小さくなるに起因して、ΔP(2)’はΔP(2)よりも大きくなる。即ち、ΔP(N) (N=2,3,・・・,Nref)は、大気温度Taに依存し、大気温度Taが高いほど大きくなる。
以上のことから、噴射圧低下量ΔP(N) (N=2,3,・・・,Nref)は、指令非同期噴射量fnsd(N−1)(即ち、前回の噴射期間に対応する値)、エンジン回転速度NE、及び大気温度Taに依存するから、例えば、これらを引数とする低下量ΔP(N)を求めるためのテーブルを作製することで取得することができる。
図8は、大気温度Taを或る値に固定した場合においてこの噴射圧低下量ΔP(N)を求めるためのテーブルから得られる、指令非同期噴射量fnsd(N−1)及びエンジン回転速度NEと、噴射圧低下量ΔP(N)との関係の一例を示したグラフである。図8から理解できるように、噴射圧低下量ΔP(N)は、指令非同期噴射量fnsd(N−1)が大きいほど大きくなり、エンジン回転速度NEが小さいほど小さくなっている。
図9は、エンジン回転速度NEを或る値に固定した場合において上記噴射圧低下量ΔP(N)を求めるためのテーブルから得られる、指令非同期噴射量fnsd(N−1)及び大気温度Taと、噴射圧低下量ΔP(N)との関係の一例を示したグラフである。図9から理解できるように、噴射圧低下量ΔP(N)は、指令非同期噴射量fnsd(N−1)が大きいほど大きくなり、大気温度Taが高いほど大きくなっている。
このようにして、噴射圧低下量ΔP(N) (N=2,3,・・・,Nref)が取得できる。これにより、上記(5)式を利用して、始動期間中におけるそれぞれの噴射開始時点での噴射圧Pf(N) (N=1,2,・・・,Nref)を推定することができる。即ち、始動期間中におけるそれぞれの噴射開始時点での噴射圧Pf(N) (N=1,2,・・・,Nref)は、前回の噴射開始時点での噴射圧Pf(N−1)と前回の噴射期間に対応する値(指令非同期噴射量fnsd(N−1))とから今回の噴射開始時点での噴射圧Pf(N)を決定するという規則を利用して(即ち、「始動期間中における噴射圧Pfの比較的大きな変動」を考慮して)、エンジン回転速度NEにより決定される非同期噴射開始時期と、大気温度Taとを更に考慮して取得され得る。
本装置は係る方法により、始動期間中におけるそれぞれの噴射開始時点での噴射圧Pf(N) (N=1,2,・・・,Nref)を取得する。加えて、本装置は、今回の指令非同期噴射量fnsd(N)と、今回の噴射圧力比Pdratio(=Pf(N)/P0)とから今回の指令非同期噴射量fnsd(N)を補正するための補正係数K(0<K<1)を求め、今回の指令非同期噴射量fnsd(N)に補正係数Kを乗じることで今回の実際の燃料噴射量(以下、「実非同期噴射量fnsact」と称呼する。)を推定する。
図10は、今回の指令非同期噴射量fnsd(N)、及び今回の噴射圧力比Pdratio(=Pf(N)/P0)と、補正係数Kとの関係を示したグラフである。図10から理解できるように、補正係数Kは、今回の指令非同期噴射量fnsd(N)が大きいほど、今回の噴射圧力比Pdratioが小さいほど、より小さい値に決定される。これは、今回の指令非同期噴射量fnsd(N)が大きいほど、今回の噴射圧力比Pdratioが小さいほど、今回の実際の燃料噴射量fnsactが、今回の指令非同期噴射量fnsd(N)から乖離する程度(小さくなる程度)が大きくなることに基づく。
そして、本装置は、上記(4)式においてfnsd(N)をfnsactに置き換えて得られる下記(6)式で記述される燃料挙動モデルを使用して、非同期噴射についての吸気行程毎、且つ気筒毎に燃料付着量fwns(k)を更新していくことで、始動期間終了時点での燃料付着量fwns(k)、即ち、上記「燃料付着量の初期値fwini」を気筒毎に取得する。
fwns(k)=Pns・fwns(k-1)+Rns・fnsact ・・・(6)
このように、本装置は、非同期噴射に対応するそれぞれの噴射開始時点での噴射圧Pf(N)に基づいて(具体的には、噴射圧力比Pdratioに基づいて)対応する指令非同期噴射量fnsd(N)を補正することでそれぞれの実非同期噴射量fnsactを推定し、それぞれの実非同期噴射量fnsactに基づいて上記「燃料付着量の初期値fwini」を取得する。以上が、本装置による「燃料付着量の初期値fwini」の取得方法の概要である。
(実際の作動)
次に、電気制御装置70の実際の作動について、図11〜図13に示したフローチャートを参照しながら説明する。
CPU71は、図11にフローチャートにより示した指令非同期噴射量fnsd(N)の決定、及び実非同期噴射量fnsactの算出を行うルーチンを、機関始動後における所定のクランキング期間経過後において、各気筒のクランク角が吸気上死点前の所定クランク角度(例えば、BTDC90°CA)となる毎に繰り返し実行するようになっている。
従って、所定のクランキング期間経過後、任意の気筒(燃料噴射気筒)のクランク角度が前記所定クランク角度になると、CPU71はステップ1100から処理を開始してステップ1105に進み、延べ噴射回数N(今回の噴射が何回目の噴射であるかを示す値)の値を「1」だけインクリメントする。
ここで、延べ噴射回数Nの値は図示しないイグニッションがONされた時点で「0」に初期化されている。延べ噴射回数N=1〜Nref(本例では、「8」)であることは非同期噴射が実行されることを意味し、N≧Nref+1 であることは同期噴射が実行されることを意味する。この延べ噴射回数Nは本ルーチンが実行される毎に(即ち、燃料噴射が実行される毎に)インクリメントされていく。
いま、所定のクランキング期間経過後において初めて本ルーチンが実行されたものとして説明を続ける。この場合、ステップ1105の処理により延べ噴射回数Nが「1」になる。次に、CPU71はステップ1110に進み、延べ噴射回数Nが規定回数Nref以下であるか否か(即ち、非同期噴射が実行されるか否か)を判定し、「Yes」と判定してステップ1115に進んで延べ噴射回数Nが「1」であるか否かを判定する。
現時点では、CPU71はこのステップ1115でも「Yes」と判定してステップ1120に進み、水温センサ66から得られる現時点での冷却水温THWと、吸気温度センサ62から得られる現時点での大気温度Taとから指令非同期噴射量fnsd(N) (N=1,2,・・・,Nref)をそれぞれ決定する。
次いで、CPU71はステップ1125に進んで、1回目の非同期噴射に対応する噴射開始時点での噴射圧Pf(1)を上記設定圧P0と等しい値に設定し、続くステップ1130にて今回の(現時点では、1回目の)非同期噴射に対応する実非同期噴射量fnsactを指令非同期噴射量fnsd(1)と等しい値に設定する。このステップ1125は噴射圧力推定手段の一部を構成し、このステップ1130は実燃料噴射量推定手段の一部を構成する。
そして、CPU71はステップ1135に進み、後述する図12の非同期噴射の実行ルーチンの処理を開始する準備として、全ての気筒について、非同期噴射による燃料付着量fwns(k-1)の初期値を上記始動時燃料付着量初期値fwnsini(例えば、「0」)と等しい値に設定した後、ステップ1195に進んで本ルーチンの1回目の実行を一旦終了する。
また、CPU71は、図12にフローチャートにより示した非同期噴射の実行を行うルーチンを、気筒毎に、繰り返し実行するようになっている。CPU71は、上述した図11に示したルーチンの実行が一旦終了する毎に、今回の燃料噴射気筒についての図12に示したルーチンを続けて実行するようになっている。
いま、図11に示したルーチンの1回目の実行が終了した直後(即ち、延べ噴射回数N=1)であるものとすると、CPU71は、今回の燃料噴射気筒についての本ルーチンのステップ1200から処理を開始してステップ1205に進み、延べ噴射回数Nが規定回数Nref以下であるか否か(即ち、非同期噴射が実行されるか否か)を判定し、「Yes」と判定してステップ1210に進んで、指令燃料噴射量fiの値を先のステップ1120の実行により既に決定されている指令非同期噴射量fnsd(N)(現時点では、fnsd(1))に設定する。
続いて、CPU71はステップ1215に進んで、今回の燃料噴射気筒についての燃料噴射弁39に対して上記設定された指令燃料噴射量fiの燃料の噴射指示を行う。これにより、燃料噴射気筒のクランク角度が吸気上死点前の所定クランク角度(例えば、BTDC75°CA)となる時点で、指令燃料噴射量fi(=fnsd(N))に対応する噴射期間T(N)だけ燃料が今回の燃料噴射気筒に対して噴射される。即ち、今回の燃料噴射気筒に対して1回目の非同期噴射がなされる。
この結果、実際には、図11のルーチンで取得されている最新の実非同期噴射量fnsactの燃料が噴射されることになる。この「最新の実非同期噴射量fnsact」は、現時点(即ち、機関始動後において(気筒にかかわらず)本ルーチンの1回目の実行がなされている場合)では先のステップ1130で取得されている値となり、次回以降における本ルーチン実行時では、後述するステップ1170で取得されている値となる。
次に、CPU71はステップ1220に進み、水温センサ66、吸気温度センサ62、及び吸気管圧力センサ68からそれぞれ得られる現時点での冷却水温THW、大気温度Ta、及び吸気管圧力Pmと、THW,Ta,Pmを引数とするテーブルMapRns,MapPnsとに基づいて、非同期噴射に対応する付着率Rns、及び残留率Pnsをそれぞれ決定する。
次いで、CPU71はステップ1225に進んで、上記決定された付着率Rns及び残留率Pnsと、燃料付着量fwns(k-1)と、図11のルーチンで取得されている上述した「最新の実非同期噴射量fnsact」と、上記(6)式とに基づいて今回の燃料噴射気筒についての燃料付着量fwを更新して燃料付着量fwns(k)を求める。
ここで、fwns(k-1)としては、例えば、現時点のように、今回の燃料噴射気筒に対して本ルーチンの1回目の実行がなされている場合、先のステップ1135にて既に設定されている値(上記初期値)が使用され、今回の燃料噴射気筒に対して本ルーチンの2回目の実行がなされている場合、次のステップ1230にて既に設定・更新されている値が使用される。即ち、CPU71はステップ1230に進むと、燃料付着量fwns(k-1)の値をステップ1225にて求めた燃料付着量fwns(k)の値に設定・更新する。
次に、CPU71はステップ1235に進み、延べ噴射回数Nが「規定回数Nref−3」以上(即ち、「5」以上)となっているか否かを判定する。ここで、内燃機関10が4気筒内燃機関であることを鑑みると、延べ噴射回数N=1〜4であることは、今回の燃料噴射気筒に対して1回目の非同期噴射がなされたことを意味していて、延べ噴射回数N=5〜8であることは、今回の燃料噴射気筒に対して2回目の非同期噴射がなされたことを意味している。即ち、ステップ1235では、今回なされた噴射が今回の燃料噴射気筒に対する2回目の非同期噴射であるか否かが判定される。
現時点では延べ噴射回数Nは「1」である(即ち、今回なされた噴射が今回の燃料噴射気筒に対する1回目の非同期噴射である。)。従って、CPU71はステップ1235にて「No」と判定してステップ1295に直ちに進んで今回の燃料噴射気筒についての1回目の本ルーチンの実行を一旦終了する。
その後、次の任意の気筒(新たな燃料噴射気筒)のクランク角度が前記所定クランク角度になると、CPU71は図11のステップ1100から処理を開始してステップ1105に進み、延べ噴射回数Nを「1」から「2」にインクリメントする。続いて、CPU71はステップ1110にて「Yes」と判定してステップ1115に進むと「No」と判定してステップ1140に進むようになる。
CPU71はステップ1140に進むと、噴射圧低下量ΔP(N)(現時点では、ΔP(2))を、指令非同期噴射量fnsd(N−1)(現時点では、fnsd(1))と、現時点でのエンジン回転速度NEと、現時点での大気温度Taと、fnsd(N-1),NE,Taを引数とするテーブルMapΔP(図8、及び図9を参照)とに基づいて求める。
続いて、CPU71はステップ1145に進み、噴射圧Pf(N-1)(現時点では、ステップ1125にて既に設定されたPf(1))と、上記求めた噴射圧低下量ΔP(N)と、上記(5)式とに基づいて噴射圧Pf(N)(現時点では、Pf(2))を求める。このステップ1145は噴射圧力推定手段の一部を構成する。
次いで、CPU71はステップ1150に進んで、上記求めた噴射圧Pf(N)が上記設定圧P0よりも大きいか否かを判定し、「Yes」と判定する場合、ステップ1155に進んで噴射圧Pf(N)の値を同設定圧P0に再設定してステップ1160に進む。「No」と判定する場合、CPU71はステップ1150からステップ1160に直ちに進む。これにより、噴射圧Pf(N) (N=2,3,・・・,Nref)が設定圧P0を超える値に設定されることが防止される。
CPU71はステップ1160に進むと、上記求めた噴射圧Pf(N)(≦P0)を設定圧P0で除することで噴射圧力比Pdratioを求め、続くステップ1165にて、同噴射圧力比Pdratioと、指令非同期噴射量fnsd(N)(現時点では、fnsd(2))と、Pdratio,fnsd(N)を引数とするテーブルMapK(図10を参照)とに基づいて補正係数Kを求める。
そして、CPU71はステップ1170に進んで、指令非同期噴射量fnsd(N)に上記求めた補正係数Kを乗じることで実非同期噴射量fnsactを求め(更新し)、ステップ1195に進んで本ルーチンの2回目の実行を一旦終了する。このステップ1170は実燃料噴射量推定手段の一部を構成する。
以降、CPU71は、延べ噴射回数N=2の状態で、今回の燃料噴射気筒(即ち、上記新たな燃料噴射気筒)についての図12のルーチンの1回目の実行を続けて行う。これにより、ステップ1215の実行により、指令燃料噴射量fi(=fnsd(2))に対応する噴射期間T(2)だけ上記新たな燃料噴射気筒に対して1回目の非同期噴射がなされる。この結果、実際には、図11のルーチンの先のステップ1170にて取得されている最新の実非同期噴射量fnsact(=K・fnsd(N))の燃料が噴射されることになる。
また、ステップ1225の実行により、今回の燃料噴射気筒(即ち、新たな燃料噴射気筒)についての燃料付着量fwが上記「最新の実非同期噴射量fnsact(=K・fnsd(N))」を使用して更新される。現時点では、今回の燃料噴射気筒(即ち、新たな燃料噴射気筒)に対して本ルーチンの1回目の実行がなされているから、fwns(k-1)としては、先のステップ1135にて既に設定されている値(上記初期値)が使用される。また、現時点では、N=2であるから、ステップ1235にて「No」と判定される。
以降も、上記N=2の場合と同様、次の任意の気筒(新たな燃料噴射気筒)のクランク角度が前記所定クランク角度になる毎に、CPU71は図11のステップ1105〜1115、1140〜1170の処理を実行し(N≧3)、続けて図12のステップ1205〜1235の処理を実行する。
これにより、延べ噴射回数N≦4の段階では、指令燃料噴射量fi(=fnsd(N))に対応する噴射期間T(N)だけ新たなそれぞれの燃料噴射気筒に対して1回目の非同期噴射が順になされる。この結果、実際には、図11のルーチンの先のステップ1170にて取得されている最新の実非同期噴射量fnsact(=K・fnsd(N))の燃料が噴射されることになる。
また、上記N=2の場合と同様、ステップ1225の実行により、上記新たなそれぞれの燃料噴射気筒についての燃料付着量fwが上記「最新の実非同期噴射量fnsact(=K・fnsd(N))」を使用して順に更新される。また、延べ噴射回数N≦4の段階ではステップ1235にて「No」と判定される。
また、延べ噴射回数N≧5の段階では、指令燃料噴射量fi(=fnsd(N))に対応する噴射期間T(N)だけ新たなそれぞれの燃料噴射気筒に対して2回目の非同期噴射が順になされる。この結果、実際には、図11のルーチンの先のステップ1170にて取得されている最新の実非同期噴射量fnsact(=K・fnsd(N))の燃料が噴射されることになる。
また、ステップ1225の実行により、上記新たなそれぞれの燃料噴射気筒についての燃料付着量fwが上記「最新の実非同期噴射量fnsact(=K・fnsd(N))」を使用して順に更新される。この場合、fwns(k-1)としては、今回の燃料噴射気筒についての本ルーチンの前回の実行時においてステップ1230にて既に設定されている値が使用される。
また、延べ噴射回数N≧5の段階では、CPU51はステップ1235にて「Yes」と判定し、ステップ1240に進み、今回の燃料噴射気筒についての「燃料噴射量の初期値fwini」の値をステップ1225にて更新されている燃料付着量fwns(k)の値に設定する。
続いて、CPU71はステップ1245に進んで、後述する図13の同期噴射の実行ルーチンの処理を開始する準備のため、今回の燃料噴射気筒についての同期噴射による燃料付着量fw(k-1)の初期値を上記「燃料噴射量の初期値fwini」と等しい値に設定した後、ステップ1295に進んで今回の燃料噴射気筒についての本ルーチンの2回目の実行を一旦終了する。このステップ1245が燃料付着量初期値決定手段の一部を構成する。
このようにして、延べ噴射回数N=5〜8では、それぞれの気筒についての同期噴射による燃料付着量fw(k-1)の初期値が、対応する「燃料噴射量の初期値fwini」と等しい値に順に設定されていく。
そして、延べ噴射回数N≧Nref+1(即ち、N≧9)になると、CPU51は図11のステップ1110に進んだとき「No」と判定してステップ1195に直ちに進むようになる。これにより、以降、図11のルーチンの繰り返し実行により、延べ噴射回数Nがインクリメントされる処理のみが実行されていく。
加えて、CPU51は図12のステップ1205に進んだとき「No」と判定してステップ1295に直ちに進んで一旦終了するようになる。これにより、図12のルーチンによるNref回(8回)(各気筒2回ずつ)の非同期噴射の実行が終了する。
また、CPU71は、図13にフローチャートにより示した同期噴射の実行を行うルーチンを、気筒毎に、繰り返し実行するようになっている。CPU71は、上述した図12に示したルーチンの実行が一旦終了する毎に、今回の燃料噴射気筒についての図13に示したルーチンを続けて実行するようになっている。
いま、延べ回数N≦Nref(N≦8)の状態で図12に示したルーチンの実行が終了した直後であるもの(即ち、ステップ1215にて今回の燃料噴射気筒についての非同期噴射指示がなされた直後であるもの)とすると、CPU71は、今回の燃料噴射気筒についての本ルーチンのステップ1300から処理を開始してステップ1305に進み、延べ噴射回数Nが規定回数Nrefより大きいか否か(即ち、同期噴射が実行されるか否か)を判定し、「No」と判定してステップ1395に直ちに進んで本ルーチンを一旦終了する。これにより、今回の燃料噴射気筒についての同期噴射指示がなされない。
一方、延べ回数N≧Nref+1(N≧9)の状態で図12に示したルーチンの実行が終了した直後であるもの(即ち、ステップ1205にて「No」と判定された直後であるもの)とすると、CPU71はステップ1305にて「Yes」と判定してステップ1310に進み、エンジン回転速度NEと、エアフローメータ61が計測している吸入空気流量Gaと、NE,Gaを引数とするテーブルMapMcとに基づいて今回の燃料噴射気筒の吸入空気量である筒内吸入空気量Mcを求める。
次に、CPU71はステップ1315に進み、上記求めた筒内吸入空気流量Mcを現時点での目標空燃比abyfr(=stoich)で除することで基本燃料噴射量Fbaseを求め、続くステップ1320にて同基本燃料噴射量Fbaseに係数αを乗じることで上記要求流入燃料量Fcを求める。係数αは、空燃比センサ67の出力に基づく空燃比フィードバック制御等により適宜変更される係数である。
次いで、CPU71はステップ1325に進んで、冷却水温THWと、エンジン回転速度NEと、上記求めた筒内吸入空気量Mcと、吸気管圧力Pmと、THW,NE,Mc,Pmを引数とするテーブルMapR,MapPとに基づいて、付着率R、及び残留率Pをそれぞれ決定する。
続いて、CPU71はステップ1330に進み、上記求めた要求流入燃料量Fcと、上記求めた付着率R、及び残留率Pと、燃料付着量fw(k-1)と、上記(3)式とに基づいて同期噴射に対応する指令燃料噴射量fiを求める。このステップ1330が指令燃料噴射量決定手段の一部を構成する。
燃料付着量fw(k-1)としては、今回の燃料噴射気筒についてのステップ1330の1回目の実行がなされている場合(即ち、N=9〜12)、先のステップ1245にて設定されている対応する値(即ち、対応する初期値fwini)が使用され、今回の燃料噴射気筒についてのステップ1330の2回目以降の実行がなされている場合(即ち、N≧13)、今回の燃料噴射気筒についての本ルーチンの前回実行時において後述するステップ1345にて既に更新されている値が使用される。
続いて、CPU71はステップ1335に進んで、今回の燃料噴射気筒についての燃料噴射弁39に対して上記求めた指令燃料噴射量fiの燃料の噴射指示を行う。これにより、燃料噴射気筒のクランク角度が吸気上死点前の所定クランク角度(例えば、BTDC75°CA)となる時点で、指令燃料噴射量fiに対応する噴射期間だけ燃料が今回の燃料噴射気筒に対して噴射される。即ち、今回の燃料噴射気筒に対して同期噴射がなされる。
続いて、CPU71はステップ1340に進み、上記求めた付着率R、及び残留率Pと、燃料付着量fw(k-1)と、上記(1)式とに基づいて燃料付着量fw(k)を更新する。燃料付着量fw(k-1)としては、上記ステップ1330にて使用されたものと同じ値が使用される。そして、CPU71はステップ1345に進み、燃料付着量fw(k-1)の値をステップ1340にて更新した燃料付着量fw(k)の値に設定した後、ステップ1395に進んで本ルーチンを一旦終了する。このステップ1340が燃料付着量推定手段の一部を構成する。
このようにして、延べ噴射回数N≧9では、図13のルーチンにより、対応する上記「燃料付着量の初期値fwini」を初期値として利用して更新されていく各気筒についての燃料付着量fwに基づいて対応する指令燃料噴射量fiが決定され、同指令燃料噴射量fiの燃料が対応する気筒に対して同期噴射されていく。
以上、説明したように、本発明による内燃機関の燃料噴射量制御装置の実施形態は、機関始動後における燃料噴射の回数が所定の規定回数Nref(例えば、Nref=8。即ち、各気筒について2回)に達するまでの始動期間においてのみ非同期噴射を行い、始動期間終了後、燃料挙動モデル(上記(1)式を参照)により推定される吸気通路構成部材への燃料付着量fwが考慮されて決定される指令燃料噴射量fiに基づく同期噴射を行う。
この実施形態は、始動期間中での非同期噴射により発生する噴射圧Pfの変動を考慮して推定されるそれぞれの非同期噴射開始時点での噴射圧Pf(N) (N=1,2,・・・,Nref)を利用して非同期噴射に基づくそれぞれの実際の燃料噴射量fnsactを推定し、これらの実際の燃料噴射量に基づいて、上記燃料挙動モデルが使用する始動期間終了時点での「燃料付着量fwの初期値fwini」を決定する。
これにより、「燃料付着量の初期値fwini」が「始動期間中における噴射圧Pfの変動」に起因する「実際の燃料噴射量の指令燃料噴射量からの乖離」が考慮されて決定される。従って、「燃料付着量の初期値fwini」が精度良く決定され得、この結果、始動期間終了後において、同期噴射に対応する燃料付着量fwを精度良く推定して機関の空燃比を狙いとする空燃比に精度良く一致させることができる。
本発明は上記実施形態に限定されることはなく、本発明の範囲内において種々の変形例を採用することができる。例えば、上記実施形態においては、始動期間中におけるそれぞれの噴射開始時点での噴射圧Pf(N) (N=1,2,・・・,Nref)は、前回の噴射開始時点での噴射圧Pf(N−1)と前回の噴射期間に対応する値(指令非同期噴射量fnsd(N−1))とから今回の噴射開始時点での噴射圧Pf(N)を決定するという規則を利用して、エンジン回転速度NEにより決定される非同期噴射開始時期と、大気温度Taとが更に考慮されて取得されているが、噴射圧Pf(N)は、エンジン回転速度NE、及び大気温度Taに代えて、或いはこれらに加えて、燃料の性状(例えば、粘度等)が考慮されて取得されてもよい。燃料の性状は、噴射圧低下量ΔP(N)に影響を与える因子となり得るからである。
また、噴射圧Pf(N)は、始動期間中の所定の時点(例えば、クランクキング期間中の或る時点)での電動ポンプPに供給される電圧(即ち、バッテリー電圧)が考慮されて取得されてもよい。係る電圧は、電動ポンプPの初期の燃料吐出性能に大きく影響を与え、噴射圧Pf(N)(特に、1回目の非同期噴射開始時点での噴射圧Pf(1))は、電動ポンプPの初期の燃料吐出性能に大きく依存するからである。
また、上記実施形態においては、始動後の燃料噴射回数Nが所定の規定回数Nrefに達したことが非同期噴射の終了条件(始動期間の終了条件。即ち、「所定の条件」。)となっているが、「所定の条件」として、エンジン回転速度NEが所定値(例えば、400r.p.m.)を超えることを採用してもよい。
加えて、上記実施形態においては、始動期間中において上記(6)式にて記述される燃料モデルを用いて燃料付着量fwnsを非同期噴射毎に更新していくことで「燃料付着量fwの初期値fwini」を決定するように構成されているが、燃料モデルを使用することなく、始動期間中におけるそれぞれの指令非同期噴射量fnsd(N) (N=1,2,・・・,Nref)を少なくとも引数として「始動期間中における噴射圧Pfの変動」に起因する「実際の燃料噴射量の指令燃料噴射量からの乖離」を考慮して「燃料付着量fwの初期値fwini」を求めるテーブル(マップ)等を使用して「燃料付着量fwの初期値fwini」を決定するように構成してもよい。
10…火花点火式多気筒内燃機関、20…シリンダブロック部(エンジン本体部)、25…燃焼室、31…吸気ポート、32…吸気弁、39…燃料噴射弁、41…吸気管、62…吸気温度センサ、65…クランクポジションセンサ、66…水温センサ、68…吸気管圧力センサ、70…電気制御装置、71…CPU