(第1実施形態)
以下、本発明による内燃機関の筒内吸入新気量推定装置(この装置は、筒内吸入空気量推定装置、筒内吸入ガス量推定装置、筒内残留ガス量推定装置と称呼することもできる。)の第1実施形態について図面を参照しつつ説明する。この筒内吸入新気量推定装置は燃料噴射量制御装置の一部である。図1は、係る燃料噴射量制御装置を火花点火式多気筒(4気筒)内燃機関10に適用したシステムの概略構成を示している。なお、図1は、特定気筒の断面のみを示しているが、他の気筒も同様な構成を備えている。
内燃機関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を駆動するインテークカムシャフトを含むとともに同インテークカムシャフトの位相角及び同吸気弁32の吸気弁リフト量(最大吸気弁リフト量)を連続的に変更し得る吸気弁制御装置33、吸気弁制御装置33のアクチュエータ33a、燃焼室25に連通した排気ポート34、排気ポート34を開閉する排気弁35、排気弁35を駆動するエキゾーストカムシャフトを含むとともに同エキゾーストカムシャフトの位相角を連続的に変更し得る排気弁制御装置36、排気弁制御装置36のアクチュエータ36a、点火プラグ37、点火プラグ37に与える高電圧を発生するイグニッションコイルを含むイグナイタ38及び燃料を吸気ポート31内に噴射するインジェクタ(燃料噴射手段)39を備えている。
吸気系統40は、吸気ポート31に連通し同吸気ポート31とともに吸気通路を形成するインテークマニホールドを含む吸気管41、吸気管41の端部に設けられたエアフィルタ42、及び吸気管41内にあって吸気通路の開口断面積を可変とするスロットルバルブ43を備えている。スロットルバルブ43は、DCモータからなるスロットルバルブアクチュエータ43aにより吸気管41内で回転駆動されるようになっている。
排気系統50は、排気ポート34に連通したエキゾーストマニホールド51、エキゾーストマニホールド51に接続された排気管52及び排気管52に介装された触媒コンバータ(三元触媒装置)53を備えている。
一方、このシステムは、熱線式エアフローメータ61、吸気温センサ62、大気圧センサ(スロットルバルブ上流圧力センサ)63、スロットルポジションセンサ64、吸気側カムポジションセンサ65、排気側カムポジションセンサ66、吸気弁リフト量センサ67、クランクポジションセンサ68、水温センサ69、空燃比センサ(O2センサ)70及びアクセル開度センサ71を備えている。
エアフローメータ61は、内燃機関10の吸気通路内を流れる空気の流量(吸入空気流量)を実際に測定し、測定した吸入空気流量AFMを表す信号を出力するようになっている。吸気温センサ62は、エアフローメータ61内に備えられていて、吸入空気の温度を検出し、吸気温度Taを表す信号を出力するようになっている。大気圧センサ63は、スロットルバルブ43の上流の圧力(即ち、大気圧)を検出し、スロットルバルブ上流圧力Paを表す信号を出力するようになっている。スロットルポジションセンサ64は、スロットルバルブ43の開度(スロットルバルブ開度)を検出し、スロットルバルブ開度TAを表す信号を出力するようになっている。
吸気側カムポジションセンサ65は、インテークカムシャフトが90°回転する毎に(即ち、クランク軸24が180°回転する毎に)一つのパルスを有する信号(G2信号)を発生するようになっている。この信号は、吸気弁32の開閉タイミング(吸気弁進角量)VVTinを表す。同様に、排気側カムポジションセンサ66は、エキゾーストカムシャフトが90°回転する毎に一つのパルスを有する信号を発生するようになっていて、この信号は、排気弁35の開閉タイミング(排気弁進角量)VVTexを表す。
吸気弁リフト量センサ67は、吸気弁32のリフト量を検出し、吸気弁32が全閉のとき「0」の値をとる吸気弁リフト量Liを表す信号を出力するようになっている。クランクポジションセンサ(エンジン回転速度センサ)68は、クランク軸24が10°回転する毎に幅狭のパルスを有するとともに同クランク軸24が360°回転する毎に幅広のパルスを有する信号を出力するようになっている。この信号は、エンジン回転速度NEを表す。
水温センサ69は、内燃機関10の冷却水の温度を検出し、冷却水温THWを表す信号を出力するようになっている。O2センサ70は、触媒コンバータ53に流入する排ガス中の酸素濃度に応じた信号(排ガスの空燃比に応じた値)を出力するようになっている。アクセル開度センサ71は、運転者によって操作されるアクセルペダルの操作量Accpを表す信号を出力するようになっている。
電気制御装置80は、互いにバスで接続された、CPU81、ROM82、RAM83、バックアップRAM84、及びインターフェース85等からなるマイクロコンピュータである。ROM82は、テーブル(マップ)及び定数等を予め記憶するようになっている。RAM83は、CPU81の必要に応じてデータを一時的に格納するようになっている。バックアップRAM84は、電源が投入された状態でデータを格納するとともに同格納したデータを電源が遮断されている間も保持するようになっている。インターフェース85は、ADコンバータを含み、前記センサ61〜71と接続され、CPU81にセンサ61〜71からの信号を供給するとともに、CPU81の指示に応じて吸気弁制御装置33のアクチュエータ33a、排気弁制御装置36のアクチュエータ36a、イグナイタ38、インジェクタ39、及びスロットルバルブアクチュエータ43a等に駆動信号を送出するようになっている。
次に、上記のように構成された燃料噴射量制御装置による燃料噴射量の決定方法(筒内吸入新気量Maの推定方法)について説明する。
(燃料噴射量fcの決定方法・筒内吸入新気量Maの推定方法)
燃料噴射量制御装置は、吸気行程にある気筒の吸気弁32が閉じる前に同気筒に対して燃料を噴射しなければならない。このため、燃料噴射量制御装置は、吸気弁32が閉じた時点で(即ち、吸気弁閉弁時に)同気筒内に吸入されているであろう筒内吸入新気量Maを吸気弁32が閉弁する前に予測し、fc=kλ・Maなる式に基づいて燃料噴射量(基本噴射量)fcを決定する。ここで、kλは運転状態に応じて変化する設定空燃比に基づく係数である。そして、燃料噴射量制御装置は、吸気行程にある気筒のインジェクタ39から、その気筒の吸気弁32が閉弁するよりも前の時点で前記決定された燃料噴射量fcの燃料を噴射する。
以下、燃料噴射量制御装置について具体的に説明する。図2は、この燃料噴射量制御装置の機能ブロック図である。燃料噴射量制御装置は、電子制御スロットルモデルM1、スロットルモデルM2、吸気管モデルM3、吸気弁モデルM4、シリンダモデルM5、及び排気弁モデルM6からなるシミュレーションモデルを用いて筒内吸入新気量Maを推定するようになっている。
これらのモデルM1〜M6における計算は、CPU81が所定時間(プログラム実行間隔時間Δt)の経過毎に各モデルに対応するプログラムを実行することにより達成される。また、以下に述べる微分方程式、及び積分方程式は、実際には離散化されることによりその解が求められる。更に、燃料噴射量制御装置は、スロットルバルブ電子制御ロジックA1を備え、スロットルバルブアクチュエータ43aを介してスロットルバルブ43の開度を制御するようになっている。以下、各モデルについて順に説明する。
(電子制御スロットルモデルM1及びスロットルバルブ電子制御ロジックA1)
電子制御スロットルモデルM1は、現時点までのアクセルペダル操作量Accpに基づいて現時点から所定時間T0先の時刻tにおけるスロットルバルブ開度θtを推定するモデルである。
具体的に述べると、スロットルバルブ電子制御ロジックA1は、アクセルペダル操作量Accpと目標スロットルバルブ開度θrとの関係を規定する図3に示したテーブル及びアクセル開度センサ71により検出された実際の(現時点の)アクセルペダル操作量Accpに基づいて暫定的な目標スロットルバルブ開度θr1を所定時間(例えば、2msec)の経過毎に決定する。アクセルペダル操作量Accpと目標スロットルバルブ開度θrとの関係を規定するテーブル(マップ)は、アクセルペダル操作量Accpが増大するとともに目標スロットルバルブ開度θrが増大するようにこれらの関係を規定している。
また、スロットルバルブ電子制御ロジックA1は、暫定的な目標スロットルバルブ開度θr1を所定時間T(例えば、64msec)だけ遅延させた値、即ち、現時点より所定時間Tだけ前の時点にて決定された暫定的な目標スロットルバルブ開度θr1を、現時点での最終的な目標スロットルバルブ開度θrとして決定する。そして、スロットルバルブ電子制御ロジックA1は、実際のスロットルバルブ開度TAが現時点の目標スロットルバルブ開度θrとなるようにスロットルバルブアクチュエータ43aに対して駆動信号を送出する。
このように、目標スロットルバルブ開度θrは、現時点から所定時間Tだけ前の時点におけるアクセルペダル操作量Accpに応じて決定された暫定的な目標スロットルバルブ開度θr1と等しいから、現時点から所定時間T0だけ先の時刻tにおける目標スロットルバルブ開度θrは現時点から時間(T−T0)前における暫定的な目標スロットルバルブ開度θr1と等しい。また、現時点から時間(T−T0)前における暫定的な目標スロットルバルブ開度θr1は、スロットルバルブアクチュエータ43aの作動遅れ時間を無視すれば、時刻tにおけるスロットルバルブ開度θtと等しい。
このような考えに基づき、電子制御スロットルモデルM1は、現時点から所定時間T0だけ先の時刻tにおけるスロットルバルブ開度θtを推定する。即ち、現時点から時間(T−T0)前における暫定的な目標スロットルバルブ開度θr1を現時点から所定時間T0だけ先の時刻tにおけるスロットルバルブ開度θtとして推定する。なお、スロットルバルブアクチュエータ43aの作動遅れ時間を考慮に加えて、スロットルバルブ開度θtを推定してもよい。
(スロットルモデルM2)
スロットルモデルM2は、スロットルバルブ43を通過する空気流量((以下、「スロットル通過空気流量」と称呼する。)mtを、スロットルバルブ43の周囲に形成される空気通路を絞り部(オリフィス)とみなしたときに成立する同絞り部を通過する空気流量を算出する一般的な式である下記(9)式〜(11)式に基づいて推定するモデルである。
上記(9)式〜(11)式において、Ct(θt)はスロットルバルブ開度θtに応じて変化する流量係数、At(θt)はスロットルバルブ開度θtに応じて変化するスロットル開口面積(吸気管41の開口面積)、Paはスロットルバルブ上流圧力(即ち、大気圧)、Pmはスロットルバルブ43の下流の吸気管内空気圧力(吸気管圧力)、Taは吸気温度(大気温度)、Tmはスロットルバルブ43の下流の吸気管内空気温度、Rは気体定数、及びκは比熱比(ここではκを一定値として扱う。)である。
(11)式は、関数Φを定義する式であり、(11)式の上段は流速が音速以下の場合、下段は流速が音速になる場合に使用される。スロットルモデルM2は、スロットルバルブ上流圧力Paが吸気管内空気圧力Pmより大きい順流の場合(Pa≧Pm)に(9)式を使用し、スロットルバルブ上流圧力Paが吸気管内空気圧力Pmより小さい逆流の場合(Pa<Pm)に(10)式を使用する。
上記(9)式及び(10)式において、θtは電子制御スロットルモデルM1により推定された現時点から所定時間T0だけ先の時刻tにおける推定スロットルバルブ開度である。スロットルモデルM2は、スロットルバルブ開度θtと流量係数Ct(θt)との関係を規定した図4に示すテーブル及び前記推定したスロットルバルブ開度θtを用いて流量係数Ct(θt)を求めるとともに、スロットルバルブ開度θtと開口面積At(θt)との関係を規定した図5に示すテーブル及び前記推定したスロットルバルブ開度θtとを用いて開口面積At(θt)を求める。
なお、スロットルモデルM2は、スロットルバルブ開度θtと積値Ct(θt)・At(θt)との関係を規定した図6に示すテーブル及び前記推定したスロットルバルブ開度θtを用いて積値Ct(θt)・At(θt)を一時に求めるように構成してもよい。また、スロットルモデルM2は、スロットルバルブ開度θt及び吸気管内空気圧力Pmと流量係数Ct(θt,Pm)との関係を規定したテーブルMapCt(θt,Pm)と、前記推定したスロットルバルブ開度θt及び後述する吸気管モデルM3から取得される吸気管内空気圧力Pmと、を用いて、流量係数Ct(θt)に代わる流量係数Ct(θt,Pm)を求めるように構成されていてもよい。
スロットルモデルM2は、スロットルバルブ上流圧力Pa及び吸気温度Taを大気圧センサ63及び吸気温センサ62からそれぞれ取得するとともに、吸気管内空気圧力Pmと吸気管内空気温度Tmとを後述する吸気管モデルM3から取得し、これらの値を用いて上記(9)式又は(10)式の計算を行い、時刻tにおけるスロットル通過空気流量mtを推定する。なお、吸気管モデルM3は、後述するように、スロットルモデルM2の出力であるスロットル通過空気流量mtを用いて計算を行う。従って、スロットルモデルM2が吸気管モデルM3から取得する吸気管内空気圧力Pmと吸気管内空気温度Tmは、前回の(現時点からプログラム実行間隔時間Δtだけ前の)計算タイミングにて同吸気管モデルM3が計算していた値である。かかる計算手法は、他のモデルにおいても同様に使用される。
(吸気管モデルM3)
吸気管モデルM3は、質量保存則とエネルギー保存則とにそれぞれ基づいた下記(12)式及び下記(13)式、スロットル通過空気流量mt、スロットル通過空気温度(即ち、吸気温度)Ta及び吸気管から流出する空気流量である吸気弁通過ガス流量miから、吸気管内空気圧力(吸気ガス圧力)Pm及び吸気管内空気温度Tmを求めるモデルである。なお、下記(12)式及び下記(13)式において、Vmはスロットルバルブ43から吸気弁32までの吸気通路(以下、単に「吸気管部」と称呼する。)の容積である。
d(Pm/Tm)/dt=(R/Vm)・(mt−mi) …(12)
dPm/dt=κ・(R/Vm)・(mt・Ta−mi・Tm) …(13)
吸気管モデルM3は、上記(12)式及び上記(13)式におけるスロットル通過空気流量mtをスロットルモデルM2から取得し、吸気弁通過ガス流量miを後述する吸気弁モデルM4から取得する。そして、(12)式及び(13)式に基づく計算を行って、現時点から所定時間T0だけ先の時刻tにおける吸気管内空気圧力Pm及び吸気管内空気温度Tmを求める。なお、上記吸気管モデルM3を記述した(12)式及び(13)式の導出過程については、例えば、上述した特許文献1等に詳細に記載されているから、ここではその詳細な説明を省略する。
(吸気弁モデルM4)
吸気弁モデルM4は、図7に示した吸気弁32の周囲を通過する空気流量である吸気弁通過ガス流量miを、吸気弁32の周囲に形成される空気通路を絞り部(オリフィス)とみなしたときに成立する同絞り部を通過する空気流量を算出する一般的な式である下記(14)式〜(16)式に基づいて推定するモデルである。
(14)式〜(16)式において、Cdi(Li)は吸気弁32のリフト量Liに応じて変化する流量係数、Ai(Li)は同リフト量Liに応じて変化する吸気弁32の周囲に形成される開口の面積、Tiは吸気弁32の上流部のガス温度(吸気弁を通過するガスの温度であり、以下、「吸気弁通過ガス温度Ti」と称呼する。)、Piは吸気弁32の上流部のガス圧力(以下、「吸気弁上流ガス圧力Pi」と称呼する。)、Tcは筒内ガス温度(シリンダ21内のガス温度)、及びPcは筒内ガス圧力(シリンダ21内のガス圧力)である。
(16)式は、(11)式で説明した関数Φを定義する式であり、(16)式の上段は流速が音速以下の場合、下段は流速が音速になる場合に使用される。吸気弁モデルM4は、吸気弁上流ガス圧力Piが筒内ガス圧力Pcより大きい順流の場合に(14)式を使用し、吸気弁上流ガス圧力Piが筒内ガス圧力Pcより小さい逆流の場合に(15)式を使用する。このように、吸気弁通過ガス流量miは、シリンダ21内にガスが吸入されている場合に正、シリンダ21内からガス(既燃ガス)が吸気通路に吹き返されている場合に負の値をとるように規定されている。
吸気弁モデルM4は、現時点から所定時間T0だけ先の時刻tにおける吸気弁リフト量Li(t)を推定する。この推定は、吸気弁リフト量センサ67が検出している現時点のリフト量Liとエンジン回転速度NEとに基づいてなされてもよく、現時点のクランク角とエンジン回転速度NEを含む運転状態に応じて予め設定されるリフト量マップとに基づいてなされてもよい。そして、吸気弁モデルM4は、吸気弁リフト量Liと積値Cdi(Li)・Ai(Li)との関係を規定した図8に示したテーブルと、前記推定した吸気弁リフト量Li(t)とに基づいて、上記(14)式及び上記(15)式にて使用する積値Cdi(Li)・Ai(Li)を求める。
吸気弁モデルM4は、後にフローチャートを参照しながら詳述するように、吸気弁上流ガス圧力Piを吸気管モデルM3から取得される吸気管内空気圧力Pmと等しい値に設定する。吸気弁モデルM4は、上記(14)式における吸気弁通過ガス温度Tiを、シリンダ21が新気を吸入している場合には吸気管モデルM3から取得される吸気管内空気温度Tmと等しい値に設定し、シリンダ21が吸気通路に吹き返された既燃ガスを吸入している場合には後述のように取得される吹き返しガス温度Tpと等しい値に設定する。吸気弁モデルM4は、筒内ガス圧力Pc及び筒内ガス温度Tcを後述するシリンダモデルM5から取得する。吸気弁モデルM4は、これらの変数を用いて上記(14)式〜(16)式に基づく計算を行うことで、時刻tにおける吸気弁通過ガス流量miを推定する。
<吹き返しガス温度Tp>
吸気弁モデルM4は、シリンダ21内から吸気通路(具体的には、吸気ポート31内)へ吹き返されたガス(以下、「吹き返しガス」と称呼する。)がシリンダ21内に吸入されている間において吸気弁通過ガス温度Tiとして使用する温度である上記吹き返しガス温度Tpを、吹き返しガスのエネルギーと、吹き返しガスの量とに基づく下記(17)式に基づいて取得する。
上記(17)式において、tivoは吸気弁32の開弁時(即ち、既燃ガスの吸気通路への吹き返しが開始される時点)である。Trevは吹き返しガスが再びシリンダ21内に吸入開始される時点(即ち、既燃ガスの吸気通路への吹き返しが終了する時点)である。
(17)式の右辺の分子は、時刻trevにおける吹き返しガスのエネルギーである。これは、吸気弁通過ガスにより単位時間あたりに吹き返しガスに与えられるエネルギーが「(−mi)・Cp・Tc」で表されることに基づく。(17)式の右辺の分母は、時刻Trevにおける吹き返しガスの量である。Cpは吹き返しガス(既燃ガス)の定圧比熱であり、ここではCpを一定値として扱う。この(17)式は、「或る時刻におけるガスのエネルギーは、その時刻におけるガスの量と、そのガスの定圧比熱と、その時刻におけるガスの温度との積に等しい」という関係から導出される式である。
このように、吸気弁モデルM4は、(17)式に基づく積分計算(積算)を行って時刻trevにおける吹き返しガスの温度を求め、この温度を吹き返しガス温度Tpとして取得する。吸気弁モデルM4は、このように取得された吹き返しガス温度Tpを、上述したように、吹き返しガスがシリンダ21内へ吸入されている期間(即ち、mi>0、且つmiの吸気弁開弁時からの積算値<0となる期間)において、上記(14)式における吸気弁通過ガス温度Tiとして使用する。
(シリンダモデルM5)
シリンダモデルM5は、シリンダ21(燃焼室25)内の空気についての質量保存則及びエネルギー保存則に基づいた下記(18)式及び下記(19)式にしたがって、筒内ガス圧力Pc及び筒内ガス温度Tcを求めるモデルである。図7に示したように、Vcはシリンダ21(燃焼室25)の容積、Tiは吸気弁通過ガス温度(吸気ガス温度)、miは吸気弁通過ガス流量、meは排気弁通過ガス流量、Teは排気ガス温度(排気弁通過ガス温度)である。
κc,κi及びκeは、それぞれシリンダ21内のガスの比熱比(筒内ガス比熱比)、吸気弁通過ガスの比熱比及び排気ガス(排気弁通過ガス)の比熱比であり、ここでは一定値κとして扱う。Rc,Ri及びReは、それぞれシリンダ21内のガスの気体定数、吸気弁通過ガスの気体定数及び排気ガスの気体定数であり、ここでは一定値Rとして扱う。Qw'はシリンダ21内のガスに同シリンダ21(シリンダ壁面)から伝達される単位時間あたりの熱量(伝達熱流量、熱流)である。なお、シリンダモデルM5を記述した(18)式及び(19)式の導出過程については、例えば、上述した特許文献1等に詳細に記載されているから、ここではその詳細な説明を省略する。
(18)式及び(19)式における時刻tの吸気弁通過ガス流量miは吸気弁モデルM4により与えられ、排気弁通過ガス流量meは後述する排気弁モデルM6により与えられる。時刻tのシリンダ容積Vcはクランクポジションセンサ68が検出している実際のクランク角とエンジン回転速度NEとから求めることができる。時刻tの吸気弁通過ガス温度Tiは前述した吸気弁モデルM4と同様に取得される。排気ガス温度Teは、総べての気筒の排気弁通過ガス流量meを積算(積分、時間積分)して得られる単位時間あたりの排気ガス量Ge(又は、総べての気筒の吸気弁通過ガス流量miを積分(時間積分)して得られる単位時間あたりの吸入ガス量Ga)、総べて気筒の燃料噴射量fcを積分(時間積分)して得られる単位時間あたりの燃料量Gf及びエンジン回転速度NEの関数(マップ値)として求められる。なお、排気ポート34に排気ガス温度センサを設置し、この排気ガス温度センサの出力から排気ガス温度Teを求めてもよい。
伝達熱流量Qw’は比較的小さいので、この例においては無視する。シリンダモデルM5は、これらの変数を用いて上記(18)式、(19)式に基づく計算を行うことで、時刻tにおける筒内ガス圧力Pc及び筒内ガス温度Tcを求める。
(排気弁モデルM6)
排気弁モデルM6は、図7に示した排気弁35の周囲を通過する空気流量(即ち、排気弁通過ガス流量)meを、排気弁35の周囲に形成される空気通路を絞り部(オリフィス)とみなしたときに成立する同絞り部を通過する空気流量を算出する一般的な式である、上記(14)式、及び(15)式にそれぞれ対応する下記(20)式、及び(21)式、並びにΦの定義式である上記(16)式に基づいて推定するモデルである。
(20)式及び(21)式において、Cde(Le)は排気弁35のリフト量Leに応じて変化する流量係数、Ae(Le)は同リフト量Leに応じて変化する排気弁35の周囲に形成される開口の面積、Teは排気ガス温度、Pcは筒内ガス圧力及びPeは排気ガス圧力(排気弁35の下流側のガスの圧力)である。
排気弁モデルM6は、排気ガス圧力Peが筒内ガス圧力Pcより大きい場合に(20)式を使用し、排気ガス圧力Peが筒内ガス圧力Pcより小さい場合に(21)式を使用する。このように、排気弁通過ガス流量meは、排気系からシリンダ21内にガスが吸入されている場合に正、シリンダ21内からガスが排気系に排出されている場合に負の値をとるように規定されている。
排気弁モデルM6は、現時点から所定時間T0だけ先の時刻tにおける排気弁リフト量Le(t)を推定する。この推定は、現時点のクランク角とエンジン回転速度NEとに基づいて行われ得る。そして、排気弁モデルM6は、排気弁リフト量Leと積値Cde(Le)・Ae(Le)との関係を規定した図9に示したテーブルと、前記推定した排気弁リフト量Le(t)とに基づいて、上記(20)式及び上記(21)式にて使用する積値Cde(Le)・Ae(Le)を求める。
排気弁モデルM6は、排気ガス温度Teを、排気弁通過ガス流量meを積算(時間積分)して得られる単位時間あたりの排気ガス量Ge、総べての気筒の燃料噴射量fcを積算(時間積分)して得られる単位時間あたりの燃料量Gf及びエンジン回転速度NEの関数(マップ値)として求める。排気弁モデルM6は、筒内ガス圧力Pc及び筒内ガス温度TcをシリンダモデルM5から取得するとともに、排気ガス圧力Peを後述するように取得する。排気弁モデルM7は、これらの変数を用いて上記(20)式又は上記(21)式を計算することで、時刻tにおける排気弁通過ガス流量meを推定する。
<排気ガス圧力Pe>
一般に、管路の圧力損失は、管路内を流れるガスの流量の2次式で近似され得ることが知られている。従って、排気ガス圧力は、総べての気筒の排気弁通過ガス流量meを積算(時間積分)して得られる単位時間あたりの排気ガス量Ge(又は、総べての気筒の吸気弁通過ガス流量miを積算(時間積分)して得られる単位時間あたりの吸入ガス量Ga)の関数(例えば、基本排気ガス圧力Pe0=a・Ge+b・Ge2: a,bは定数)として求めることができる。
ところで、吸気弁32が開弁して上述した既燃ガスの吸気通路への吹き返しが開始されると、これに起因して筒内ガス圧力Pcが低下する。この結果、吸気弁32の開弁直後から、筒内ガス圧力Pcが排気ガス圧力よりも小さくなって、排気系に排出された既燃ガスが排気弁35の周囲を介してシリンダ21内に逆流する(上記既燃ガスの排気系からの逆流が発生する)。既燃ガスの排気系からの逆流が発生すると、排気ガス圧力は低下する。
既燃ガスの排気系からの逆流は、排気弁35が実質的に閉弁する時点(バルブオーバーラップ期間が終了する時点の直前)まで継続する。従って、この既燃ガスの排気系からの逆流に起因する排気ガス圧力の低下の程度は、バルブオーバーラップ期間が長いほど大きくなる。
ここで、バルブオーバーラップ期間が長い場合、即ち、既燃ガスの排気系からの逆流に起因する排気ガス圧力の低下の程度が大きい場合、排気ガス圧力は、上述した管路の圧力損失を求める2次式から得られる基本排気ガス圧力Pe0よりも小さくなることが判明した。換言すれば、バルブオーバーラップ期間が長い場合、上述した管路の圧力損失を求める2次式では排気ガス圧力を正確に近似できなくなることが判明した。従って、バルブオーバーラップ期間が長い場合をも含めて排気ガス圧力を正確に取得するためには、上述した管路の圧力損失を求める2次式から得られる基本排気ガス圧力Pe0を補正する必要がある。
他方、上述した既燃ガスの排気系からの逆流に起因する排気ガス圧力の低下の程度は、既燃ガスが排気系から逆流する量(総量)が大きいほど大きくなる。この既燃ガスが排気系から逆流する総量は、既燃ガスが吸気通路へ吹き返される量(総量)が大きいほど大きくなる。
既燃ガスが排気系から逆流する総量は、排気弁35の排気弁進角量VVTex、及びエンジン回転速度NEに大きく依存する。加えて、既燃ガスが排気系から逆流する総量は、排気ガス圧力と、吸気管内空気圧力Pm(吸気ガス圧力)の差(Pe0−Pm。吸排気圧力差)にも大きく依存すると考えられる。既燃ガスが吸気通路へ吹き返される総量は、吸気弁32の吸気弁進角量VVTin、最大リフト量Limax、及びエンジン回転速度NEに大きく依存する。
以上のことから、排気弁モデルM6は、圧力補正係数Kp(0<Kp≦1)を導入し、圧力補正係数Kpを、エンジン回転速度NE、吸排気圧力差(Pe0−Pm)、吸気弁進角量VVTin、排気弁進角量VVTex、及び吸気弁32の最大リフト量Limaxを引数とする予め実験等を通して作製されたテーブルに基づいて求める。そして、排気弁モデルM6は、上記基本排気ガス圧力Pe0に圧力補正係数Kpを乗じた値を上記(20)式における排気ガス圧力Peとして取得する。本例では、排気弁モデルM6は、吸気弁32の開弁時点で求められる圧力補正係数Kp、及び基本排気ガス圧力Pe0の積値(一定)を、その後の吸気弁32の開弁期間に亘って上記(20)式における排気ガス圧力Peとして使用し続ける。
本燃料噴射量制御装置は、このような一連の計算により求められる吸気弁通過ガス流量miを吸気弁32が開弁する時刻tivoから同吸気弁32が閉弁する時刻tivcまで時間積分することにより、一吸気行程にてシリンダ21内に吸入される筒内吸入新気量Maを推定し、この値Maに基づいて燃料噴射量fcを決定する。なお、吸気弁通過ガス流量miの積算値Miは、吸気弁32が開弁する時刻tivoにて初期値0を与えれば、吸気通路に吹き返されたガスを総べて再吸入した時点で「0」になるので、結果として、筒内吸入新気量Maを示す値となる。以上が、筒内吸入新気量Ma及び燃料噴射量fcを決定する原理である。
(実際の作動)
次に、本発明の第1実施形態に係る燃料噴射量制御装置の実際の作動について、CPU81が実行するルーチン(プログラム)を示した図10、及び図11のフローチャート、並びに図12のタイムチャートを参照しながら説明する。
CPU81は、図10、及び図11に示した一連のルーチンを所定時間(プログラム実行間隔時間Δt)の経過毎に、且つ、特定の気筒(ある気筒)に対して実行するようになっている。このルーチン上での時刻は現在より所定時間T0だけ先の時刻tである。即ち、例えば、このルーチンの実行により吸気弁32が閉弁状態から開弁状態に移行したと判定された時点から所定時間T0が経過した後に実際に吸気弁32が閉弁状態から開弁状態に移行する。なお、CPU81は、同様のルーチンを他の気筒に対しても独立して実行している。
所定のタイミングになると、CPUはステップ1000から本ルーチンの処理を開始し、ステップ1005に進んで特定の気筒の吸気弁32が閉弁状態から開弁状態へと移行した直後であるか否かを判定する。いま、特定の気筒の吸気弁32が閉弁状態にあるものとして説明を続けると、CPU81はステップ1005にて「No」と判定してステップ1010に進み、その吸気弁32が開弁状態にあるか否かを判定する。
この場合、特定の気筒の吸気弁32は閉弁状態にあるから、CPU81はステップ1010にて「No」と判定してステップ1015に進み、吸気弁32が開弁状態から閉弁状態へと移行した直後であるか否かを判定する。この場合においても、吸気弁32は閉弁状態にあるから、CPU81はステップ1015にて「No」と判定してステップ1095に進み、本ルーチンを一旦終了する。このような処理は、吸気弁32が閉弁状態から開弁状態へと移行する時点まで繰り返し行われる。
その後、吸気弁32は、クランク角が吸気上死点TDCより前の開弁クランク角θ0となると、閉弁状態から開弁状態へと移行する(図12の時刻t0を参照)。この場合、CPU81はステップ1005に進んだとき「Yes」と判定してステップ1020に進み、吸気管モデルM3が推定している吸気管内空気圧力Pm及び吸気管内空気温度Tmを取得する。
次いで、CPU81はステップ1025にて、吸気弁上流ガス圧力Piを前記取得した吸気管内空気圧力Pmと等しい値に設定し、続くステップ1030にて同ステップ1030中に記載した式(Pe0=a・Ge+b・Ge2,
a,bは定数)に従って基本排気ガス圧力Pe0を取得する。ここで、Geは総べての気筒の排気弁通過ガス流量meを積算(時間積分)して得られる単位時間あたりの排気ガス量であり、図示しないルーチンにより別途計算されている。
次に、CPU81はステップ1035に進み、総べての気筒の吸気弁通過ガス流量miを積算(時間積分)して得られる単位時間あたりの吸入ガス量Ga、総べての気筒の燃料噴射量fcを積算(時間積分)して得られる単位時間あたりの燃料量Gf及びエンジン回転速度NEと、これらの値と排気ガス温度Teとの関係を規定したテーブルMapTeとから排気ガス温度Te(=MapTe(Ga,Gf,NE))を求める。
続いて、CPU81はステップ1040に進んで、上記取得した基本排気ガス圧力Pe0から上記取得された吸気管内空気圧力Pmを減じることで吸排気圧力差ΔPを求める。次いで、CPU81はステップ1045に進み、エンジン回転速度NEと、上記吸排気圧力差ΔPと、吸気弁進角量VVTinと、排気弁進角量VVTexと、吸気弁32の最大リフト量Limaxと、これらの値と圧力補正係数Kpとの関係を規定したテーブルMapKpとから圧力補正係数Kpを求め、続くステップ1050にて、この圧力補正係数Kpを上記取得した基本排気ガス圧力Pe0に乗じることで排気ガス圧力Peを求める。
続いて、CPU81はステップ1055にて各値の初期設定を行う。具体的に述べると、CPU81は、筒内ガス圧力Pcに排気ガス圧力Peを設定するとともに、筒内ガス温度Tcに排気ガス温度Teを設定する。これは、吸気弁32が開弁した時刻t0においては排気弁35が開弁しているから(図12の破線LEXにて示した排気弁35のリフト量を参照。)、筒内ガス圧力Pc及び筒内ガス温度Tcが排気ガス圧力Pe及び排気ガス温度Teにそれぞれ近似した値となるであろうとの知見に基づく。
更に、CPU81は、吸気弁通過ガス温度Tiを排気ガス温度Teと等しい値に設定する。これは、吸気弁32と排気弁35が共に開弁しているので、排気ポート34内のガスがシリンダ21を介して圧力の低い吸気ポート31に吹き返されるため、吸気弁通過ガス温度Tiが筒内ガス温度Tc(≒排気ガス温度Te)になるからである。また、CPU81は、吸気弁32が開弁したときからの吸気弁通過ガス流量miの積算値Miを初期値「0」に設定するとともに、吸気弁32が開弁したときからの排気弁通過ガス流量meの積算値Meを初期値「0」に設定する。
次に、CPU81はステップ1060に進み、吹き返しガスのエネルギー積分値SE、及び吹き返しガスの総量SCを共に「0」に設定する。
次いで、CPU81は図11のステップ1105に進み、吸気弁モデルM4によって吸気弁通過ガス流量miを算出する。この場合、吸気弁上流ガス圧力Pi(=吸気管内空気圧力Pm)は筒内ガス圧力Pc(=排気ガス圧力Pe)より小さいから、シリンダ21内から吸気ポート31へと既燃ガスが逆流する。即ち、(15)式が使用されて吸気弁通過ガス流量miが求められる。従って、吸気弁通過ガス流量miは負の値となる。
次に、CPU81はステップ1110に進み、その時点の吸気弁通過ガス流量miの積算値Miにプログラム実行間隔時間Δtと吸気弁通過ガス流量miの積値(Δt・mi)を加えて新たな吸気弁通過ガス流量miの積算値Miを求め、続くステップ1115にて排気弁モデルM6によって排気弁通過ガス流量meを算出する。この場合、排気ガス圧力Peは筒内ガス圧力Pc以上であるから、排気ポート34からシリンダ21へとガスが流れ込む(逆流する)。即ち、(20)式が使用されて排気弁通過ガス流量meが求められる。従って、排気弁通過ガス流量meは正の値となる。このとき、(20)式における排気ガス圧力Peとしては、ステップ1050で取得された基本排気ガス圧力Pe0を圧力補正係数Kpで補正した値(一定)が使用されている。
次いで、CPU81はステップ1120にて吸気弁通過ガス流量miの積算値Miが初期値「0」より大きいか否か(正の値であるか否か)を判定する。この積算値Miが負の値であれば、シリンダ21から吸気通路にガスが吹き返されている段階にあるか、又は、その吹き返されたガス(吹き返しガス)がシリンダ21内に再吸入されている段階にあることを示す。他方、積算値Miが正の値であれば、吹き返しガスが総べてシリンダ21内に再吸入され、新気がシリンダ21内に吸入されている段階にあることを示す。
現時点では、吸気弁通過ガス流量miは負の値であり、従って、吸気弁通過ガス流量miの積算値Miは負の値となっているから、CPU81はステップ1120にて「No」と判定してステップ1125に進み、ステップ1025にて吸気管内空気圧力Pmと等しい値に設定されている吸気弁上流ガス圧力Piが筒内ガス圧力Pcよりも小さいか否かを判定する。即ち、ステップ1125では、吸気通路からシリンダ21内にガスが流れ込んでいるか、シリンダ21から吸気通路にガスが吹き返されているかが判定される。
現時点は、吸気弁32が開弁した直後であるから、吸気弁上流ガス圧力Piは筒内ガス圧力Pcよりも小さいので、CPU81はステップ1125にて「Yes」と判定してステップ1130に進み、その時点の吹き返しガスのエネルギーの積分値SEに、前回の本ルーチン実行時から今回の本ルーチン実行時までの吹き返しガスのエネルギーに相当する値Δt・mi・Cp・Tcを加えて新たな吹き返しガスのエネルギーの積分値SEを得る。
次いで、CPU81は、ステップ1135にてその時点の吹き返しガスの総量SCに、前回の本ルーチン実行時から今回の本ルーチン実行時までの吹き返しガス量に相当する値Δt・miを加えて新たな吹き返しガスの総量SCを得る。そして、CPU81は、続くステップ1140にて同ステップ1140内に示した式(Tp=SE/(Cp・SC))にしたがって吹き返しガス温度Tpを求める。
その後、CPU81はステップ1145にてシリンダモデルM5により筒内ガス圧力Pc及び筒内ガス温度Tcを算出し、ステップ1150にてその時点の排気弁通過ガス流量meの積算値Meにプログラム実行間隔時間Δtと排気弁通過ガス流量meの積値(Δt・me)を加えて新たな排気弁通過ガス流量meの積算値Meを求める。なお、排気弁通過ガス流量meの積算値Meを、以下、「筒内残留ガス量」と称呼する。
そして、CPU81はステップ1155にて吸気弁上流ガス圧力Piをその時点で吸気管モデルM3により求められている吸気管内空気圧力Pmと等しい値に設定し、続くステップ1160にてその時点の吸入ガス量Gaと燃料量Gfとエンジン回転速度NEとテーブルMapTeとからステップ1035と同様に排気ガス温度Te(=MapTe(Ga,Gf,NE))を求め、ステップ1095に進んで一連の本ルーチンを一旦終了する。
その後、プログラム実行間隔時間Δtが経過すると、CPU81は再び図10のステップ1000から本ルーチンの処理を開始する。このとき、吸気弁32は開弁している。従って、CPU81はステップ1005にて「No」と判定するとともに、吸気弁32が開弁状態にあるか否か(開弁しているか否か)を判定するステップ1010にて「Yes」と判定し、図11のステップ1105〜ステップ1120に進む。
この時点では、吸気弁32が開弁してから十分な時間が経過していないから、排気ポート34からシリンダ21へガスが依然として逆流しているとともに(Pc<Pe)、シリンダ21から吸気ポート31へガスが依然として逆流している(Pi<Pc)。従って、ステップ1105にて(15)式が続けて使用されて吸気弁通過ガス流量miが求められ、吸気弁通過ガス流量miは依然として負の値となる。この結果、ステップ1110にて更新される吸気弁通過ガス流量miの積算値Miも依然として負の値となる。
また、ステップ1115にて(20)式が続けて使用されて排気弁通過ガス流量meが求められる。即ち、(20)式における排気ガス圧力Peとしては、ステップ1050で取得された基本排気ガス圧力Pe0を圧力補正係数Kpで補正した値(一定)が使用される。
上述のように、この時点では、吸気弁通過ガス流量miの積算値Miは負であり、且つ、吸気弁上流ガス圧力Piは筒内ガス圧力Pcよりも小さい。従って、CPU81はステップ1120及びステップ1125〜ステップ1140へと進み吹き返しガス温度Tpを更新し、その後、ステップ1145〜1160を実行して本ルーチンを一旦終了する。以降、以上に述べた処理が繰り返し実行される。
このように、吸気弁通過ガス流量miの積算値Miが負の値であり、且つ、吸気弁上流ガス圧力Piが筒内ガス圧力Pcよりも小さいとき、吹き返しガス温度Tpが更新されて行く。なお、この場合の吸気弁通過ガス流量miは、(15)式により求められる。
加えて、筒内ガス圧力Pcが排気ガス圧力Peよりも小さいとき(即ち、排気ポート34からシリンダ21へガスが逆流している間、従って、シリンダ21から吸気ポート31へガスが逆流している間)、(20)式における排気ガス圧力Peとしては、ステップ1050で取得された基本排気ガス圧力Pe0を圧力補正係数Kpで補正した値(一定)が使用され続ける。この結果、排気ガス圧力Peは基本排気ガス圧力Pe0よりも実際の値により近い値となるから、排気弁通過ガス流量meが精度良く計算される。
その後、時間が経過して図12に示した時刻t1(クランク角が吸気上死点TDCよりも僅かだけ後のクランク角θ1となる時刻)になると、排気弁35は実質的に閉弁する。また、この時点では、ピストン22が下降して燃焼室25の容積が増大している。この結果、吸気弁通過ガス圧力Piは筒内ガス圧力Pcよりも大きくなって、吸気ポート31内に吹き返された既燃ガス(吹き返しガス)は吸気弁32の周囲を介してシリンダ21内に吸入され始める。
これにより、CPU81は、ステップ1105にて(14)式を使用して吸気弁通過ガス流量miを求めるようになる。また、CPU81は、吸気弁通過ガス流量miの積算値Miが依然として負の値であるからステップ1120にて依然として「No」と判定する一方で、ステップ1125にて「No」と判定してステップ1165に進み、吸気弁通過ガス温度Tiをステップ1140の計算により求めた吹き返しガス温度Tpと等しい値に設定する。
従って、次回の本ルーチン実行時におけるステップ1105において(14)式における吸気弁通過ガス温度Tiには吹き返しガス温度Tpと等しい値が使用される。この結果、吸気弁通過ガス温度Tiが実際の吸気弁通過ガス温度に極めて近い値となるから、吸気弁通過ガス流量miが精度良く計算される。また、吸気弁通過ガス流量miは正の値となるから、吸気弁通過ガス流量miの積算値Miは時刻t1以降において増大する。
しかしながら、吸気弁通過ガス流量miの積算値Miは依然として負の値であるから、CPU81はステップ1120にて「No」と判定してステップ1125、1165を実行する。従って、次回の本ルーチン実行時においても(14)式における吸気弁通過ガス温度Tiは吹き返しガス温度Tpとなる。
そして、かかる状態が継続すると、吸気弁通過ガス流量miの積算値Miは時刻t3’にて「0」となる。本実施形態では、この時刻t3’が、吹き返しガスの総べてがシリンダ21内に吸入され、新気がシリンダ21内に吸入され始める時点に相当する。
この時刻t3’の直後に本ルーチンが実行されると、CPU81はステップ1120に進んだとき「Yes」と判定してステップ1170に進み、吸気弁通過ガス温度Tiを吸気管モデルM3が推定している吸気管内空気温度Tmと等しい値に設定するようになる。
これにより、CPU81が次回の本ルーチンの実行時にステップ1105に進んだとき、上記(14)式における吸気弁通過ガス温度Tiが吸気管内空気温度Tmとされて吸気弁通過ガス流量miが計算される。このように、時刻t3’以降においては新気がシリンダ21内に吸入されているはずであるから、吸気弁通過ガス温度Tiを吸気管内空気温度Tmと設定することにより吸気弁通過ガス流量miがより精度良く計算される。
その後、吸気弁32は、クランク角が閉弁クランク角θ5となると、開弁状態から閉弁状態へと移行する(図12の時刻t5を参照。)。このとき、CPU81は、ステップ1005及びステップ1010にて「No」と判定し、ステップ1015にて吸気弁32が開弁状態から閉弁状態へと移行したか否かを判定する。この判定結果は「Yes」となるので、CPU81はステップ1015からステップ1065へと進み、その時点までに計算されている吸気弁32が開弁したときからの吸気弁通過ガス流量miの積算値Miを筒内吸入新気量Maとして格納する。
そして、CPU81は、ステップ1070にて燃料噴射量fcを筒内吸入新気量Maに基づいて求め、続くステップ1075にて筒内吸入新気量Ma、筒内残留ガス量Me及びエンジン回転速度NEと点火時期マップMapθigとから、点火時期θig(=Mapθig(Ma,Me,NE))を決定し、ステップ1095に進んで本ルーチンを一旦終了する。このように、本燃料噴射量制御装置は、筒内吸入新気量Ma及び筒内残留ガス量Meに基づいて燃料噴射量fcや点火時期θig等のエンジン制御パラメータを決定する。
以上、説明したように、第1実施形態の筒内吸入新気量推定装置は、吸気弁32が排気行程後半において(クランク角が吸気上死点TDCより前のクランク角θ0となったとき)開弁し、その時点では排気弁35が開弁しているバルブオーバーラップを有する内燃機関10に適用されている。なお、排気弁35は、吸気行程開始直後において(クランク角が吸気上死点TDCの直後のクランク角θ2となったとき)閉弁する。
また、第1実施形態の筒内吸入新気量推定装置は、内燃機関10のシリンダ21内の圧力である筒内ガス圧力Pcを算出する筒内ガス圧力算出手段(ステップ1145)と、内燃機関10の吸気通路(吸気ポート31及び吸気管41)内のガスの圧力である吸気ガス圧力Pmを取得する吸気ガス圧力取得手段(ステップ1020)と、内燃機関10の排気通路(排気ポート34、エキゾーストマニホールド51、及び排気管52)内のガスの圧力である排気ガス圧力Peを算出する排気ガス圧力算出手段(ステップ1030、ステップ1045及びステップ1050)を備えている。
また、この筒内吸入新気量推定装置は、シリンダ21と吸気通路とを連通・遮断する吸気弁32の周囲を通過するガスの流量である吸気弁通過ガス流量miを算出する吸気弁通過ガス流量算出手段(ステップ1170、ステップ1165、ステップ1105及びステップ1145)と、シリンダ21と排気通路とを連通・遮断する排気弁35の周囲を通過するガスの流量である排気弁通過ガス流量meを算出する排気弁通過ガス流量算出手段(ステップ1115及びステップ1145)と、吸気弁通過ガス流量miに基づいてシリンダ21内に吸入される新気の量である筒内吸入新気量Maを推定する筒内吸入新気量推定手段(ステップ1110及びステップ1065)を備えている。
この筒内ガス圧力算出手段は、少なくとも吸気弁通過ガス流量miと、排気弁通過ガス流量meとに基づいて筒内ガス圧力Pcを算出する((18)式、(19)式を参照)。この吸気弁通過ガス流量算出手段は、少なくとも吸気ガス圧力Pmと、筒内ガス圧力Pcとに基づいて吸気弁通過ガス流量miを算出する((14)式、(15)式を参照)。この排気弁通過ガス流量算出手段は、少なくとも排気ガス圧力Peと、筒内ガス圧力Pcとに基づいて排気弁通過ガス流量meを算出する((20)式、(21)式を参照)。
このように、前記排気ガス圧力算出手段は、吸気弁32と排気弁35とが共に開状態となる期間であるバルブオーバーラップ期間中に発生する排気通路からシリンダ21内への既燃ガスの逆流による排気ガス圧力の低下を考慮するために、吸気弁32と排気弁35の開閉状態を表すパラメータ(吸気弁進角量VVTin、吸気弁最大リフト量Limax、排気弁進角量VVTex)を含む内燃機関10の運転状態を表すパラメータ(エンジン回転速度NE、吸排気圧力差ΔP)に基づいて圧力補正係数Kp(0<Kp≦1)を求め、基本排気ガス圧力Pe0(ステップ1030を参照)に圧力補正係数Kpを乗じることで排気ガス圧力Peを算出する。
これにより、バルブオーバーラップ期間中において、排気ガス圧力Peが精度良く算出され得る。従って、排気ガス圧力Peに基づいて算出される排気弁通過ガス流量meが精度良く算出され得るから、排気弁通過ガス流量meに基づいて算出される筒内ガス圧力Pcが精度良く算出され得る。よって、筒内ガス圧力Pcに基づいて算出される吸気弁通過ガス流量miが精度良く算出され得るから、吸気弁通過ガス流量miに基づいて算出される筒内吸入新気量Maも精度良く推定され得る。これにより、バルブオーバーラップ期間が長い場合であっても、筒内吸入新気量Maを精度良く推定することができる。
また、前記吸気弁通過ガス流量算出手段は、吸気通路からシリンダ21内にガスが吸入されているときに正及び負の何れか一方の符号付きガス流量(本例においては、正の符号を有するガス流量)を吸気弁通過ガス流量miとして所定時間Δtの経過毎に算出するように構成されている(ステップ1105、(14)式)。更に、吸気弁通過ガス流量算出手段は、シリンダ21内から吸気通路にガスが吹き返されているときに正及び負の何れか他方の符号付きガス流量(本例においては負の符号を有するガス流量)を、吸気弁通過ガス流量miとして所定時間Δtの経過毎に算出するように構成されている(ステップ1105、(15)式)。
一方、前述したように、筒内吸入新気量推定手段は、算出された吸気弁通過ガス流量miを吸気弁32の開弁時から積算して積算値Miを求める(ステップ1110)。吸気弁32の開弁時において設定される積算値Miの初期値は、本例では0である。従って、吸気弁通過ガス流量miの積算値Miは、吸気通路に吹き返された既燃ガスの総べてがシリンダ21内に吸入された時点で0に復帰するから、その後の吸気弁32の閉弁時点での吸気弁通過ガス流量miの積算値Maは、筒内吸入新気量Maそのものを表す値となる。従って、吸気弁通過ガス流量miの単純な積算を行うだけで筒内吸入新気量Maを推定することができる。
(第2実施形態)
次に、本発明の第2実施形態に係る燃料噴射量制御装置(筒内吸入新気量推定装置)について説明する。この第2実施形態は、バルブオーバーラップ期間に亘ってシリンダ21内から吸気通路へ吹き返される既燃ガスの総量である既燃ガス吹き返し量Grevを算出し、既燃ガス吹き返し量Grevに基づいて圧力補正係数Kpを算出する点で、第1実施形態と相違している。
係る相違に基づき、第2実施形態のCPU81は、第1実施形態のCPU81が実行する図10のルーチンの代わりの図13にフローチャートにより示したルーチンと、第1実施形態のCPU81が実行する図11のルーチンと同じルーチンと、からなる一連のルーチンを実行する。なお、図13に示したルーチンにおいて図10に示したルーチンのステップと同一のステップについては、図10のステップ番号と同一のステップ番号を付している。以下、第2実施形態に特有の図13のルーチンについて説明する。
図13に示したルーチンは、図10のステップ1040、1045をステップ1305、1310、1315に代えた点においてのみ図10に示したルーチンと異なる。吸気弁32が開弁すると、ステップ1305では、バルブオーバーラップ期間に亘る吸気弁32の周囲に形成されるガス通路の通路面積の時間積分値である通路面積時間積分値AOLが、エンジン回転速度NE、吸気弁進角量VVTin、排気弁進角量VVTex、及び吸気弁32の最大リフト量Limaxと、これらの値と通路面積時間積分値AOLとの関係を規定したテーブルMapAOLとから求められる。テーブルMapAOLは、これらの値と、機関10における吸気弁32の周囲に形成されるガス通路の通路面積に係わる設計諸元とから容易に作製することができる。
ステップ1310では、上記既燃ガス吹き返し量Grevが、吸気弁32の周囲に形成される空気通路を絞り部(オリフィス)とみなしたときに成立する同絞り部を通過する空気流量を算出する一般的な式を応用した下記(22)式、並びにΦの定義式である上記(16)式に基づいて求められる。ここで、AOL,Pe0,Te,Pmとしては、ステップ1305、ステップ1030、ステップ1035、ステップ1020にて取得された値がそれぞれ使用される。この(22)式では、筒内ガス圧力Pcは基本排気ガス圧力Pe0と等しいものとの仮定がなされている。
ステップ1315では、圧力補正係数Kp(0<Kp≦1)が、上記既燃ガス吹き返し量Grevと、既燃ガス吹き返し量Grevと圧力補正係数Kpとの関係を規定したテーブルMapKpとから求められる。これは、既燃ガスの排気系からの逆流による排気ガス圧力の低下の程度は、既燃ガス吹き返し量Grevそのものに大きく依存するであろうという知見に基づく。これにより、圧力補正係数Kpは、既燃ガス吹き返し量Grevが大きいほどより小さい値となる。
このようにして求められた圧力補正係数Kpがステップ1050にて基本排気ガス圧力Pe0に乗じられ、この積値(一定)が、吸気弁32が開弁している期間に亘って図11のステップ1115にて使用される(20)式、(21)式の排気ガス圧力Peとして使用される。この第2実施形態では、ステップ1030、ステップ1305、ステップ1310、ステップ1315、及びステップ1050が排気ガス圧力算出手段に対応する。
以上、説明したように、第2実施形態の筒内吸入新気量推定装置は、第1実施形態と同様にバルブオーバーラップを有する内燃機関10に適用されている。第2実施形態の排気ガス圧力算出手段は、吸気弁32と排気弁35の開閉状態を表すパラメータ(吸気弁進角量VVTin、吸気弁最大リフト量Limax、排気弁進角量VVTex)等に基づいてバルブオーバーラップ期間に亘る吸気弁32の周囲に形成されるガス通路の通路面積の時間積分値に相当する値(通路面積時間積分値AOL)を算出し、この通路面積時間積分値AOLに基づいて既燃ガス吹き返し量Grevを求める(ステップ1310、(22)式を参照)。
そして、この排気ガス圧力算出手段は、既燃ガスの排気系からの逆流による排気ガス圧力の低下の程度はこの既燃ガス吹き返し量Grevそのものに大きく依存するであろうという知見に基づき、既燃ガス吹き返し量Grevに基づいて圧力補正係数Kp(0<Kp≦1)を求め、基本排気ガス圧力Pe0(ステップ1030を参照)に圧力補正係数Kpを乗じることで排気ガス圧力Peを算出する。これによっても、第1実施形態と同様、バルブオーバーラップ期間中において排気ガス圧力Peが精度良く算出され得る。従って、バルブオーバーラップ期間が長い場合であっても、筒内吸入新気量Maを精度良く推定することができる。
(第3実施形態)
次に、本発明の第3実施形態に係る燃料噴射量制御装置(筒内吸入新気量推定装置)について説明する。この第3実施形態は、排気通路内に設定した仮想領域内のガスの圧力変化分を吸気弁32の開弁期間中に亘って逐次求め、この圧力変化分により基本排気ガス圧力Pe0を逐次補正して排気ガス圧力Peを逐次算出・変更していく点で、吸気弁32の開弁期間に亘って排気ガス圧力Peを一定とする第1、第2実施形態と相違している。
より具体的に述べると、第3実施形態では、排気弁35近傍の排気通路(具体的には、排気ポート34内)に容積Vの仮想領域が想定される。この容積Vから流出する(或いは、容積Vに流入する)ガスは排気弁35の周囲を通過するガスのみであると仮定する。換言すれば、この容積V内に入ったガスは排気通路の下流(三元触媒装置53側)に向けて流出しないし、三元触媒装置53側からガスが容積V内に流入しないものと仮定する。この仮定によれば、容積Vから流出するガスの流量は排気弁通過ガス流量meと等しくなるから、微小時間dt間の容積V内のガスの減少量は(me・dt)となる。
他方、この容積V内のガスの圧力をガス圧力Pv、同ガスのガス定数をR、同ガスの量(質量)をGvとし、同ガスの温度が上記排気ガス温度Teと等しいものとすると、容積V内のガスについての状態方程式は下記(23)式に従って表される。従って、この場合、微小時間dtの間の容積V内のガス量の減少に起因するガス圧力Pvの低下分(ガス圧力低下量Pdown)は、(23)式に基づく下記(24)式に従って表すことができる。
Pv・V=Gv・R・Te ・・・(23)
Pdown=((R・Te)/V)・(me・dt) ・・・(24)
しかしながら、実際には、容積V内のガス量Gvが減少すると、容積V内のガス圧力Pvは或る遅れをもって低下するものと考えられる。このガス圧力Pvの変化の遅れを上記(24)式のガス圧力低下量Pdownに反映させるためには、(24)式の右辺の「微小時間dt間の容積V内のガスの減少量(me・dt)」に積分処理を施せばよい。以上より、ガス圧力低下量Pdownは、(25)式に従って表すことができる。
第3実施形態は、(25)式に従って計算されるガス圧力低下量Pdownが「既燃ガスの排気系からの逆流」による排気ガス圧力の低下(変化)に等しいと仮定する。第3実施形態は、既燃ガスの排気系からの逆流が発生している間、ガス圧力低下量Pdownを(25)式に従って逐次求め、上記基本排気ガス圧力Pe0(一定)からガス圧力低下量Pdownを減じることで、排気ガス圧力Peを逐次算出・変更していく。
次に、第3実施形態に係る燃料噴射量制御装置の作動について説明する。第3実施形態のCPU81は、第1実施形態のCPU81が実行する図10、及び図11のルーチンの代わりに、図10、及び図11にそれぞれ対応する図14、及び図15にフローチャートにより示した一連のルーチンを実行する。なお、図14、及び図15に示したルーチンにおいて前出のルーチンのステップと同一のステップについては、前出のルーチンのステップ番号と同一のステップ番号を付している。
図14に示したルーチンは、図13のステップ1310、1050をステップ1405、1410に代えた点、図13のステップ1315を削除した点、並びに、図13のステップ1060の次にステップ1415を追加した点においてのみ図13に示したルーチンと異なる。図15に示したルーチンは、図11のステップ1160とステップ1095の間にステップ1505〜1525を追加した点においてのみ図11に示したルーチンと異なる。以下、係る相違点を主として説明する。
第3実施形態のCPU81は、吸気弁32が開弁すると、ステップ1005、1020〜1035、1305を実行した後、ステップ1405にて上記仮想領域の容積Vを、ステップ1305で求めた通路面積時間積分値AOLと、通路面積時間積分値AOLと容積Vとの関係を規定した関数funcVとから求める。
これにより、容積Vは、通路面積時間積分値AOLが大きいほどより小さい値に設定される。これは、通路面積時間積分値AOLが大きいほど、「既燃ガスの排気系からの逆流」による排気ガス圧力Peの低下が大きくなること、並びに、上記(25)式に従って求められるガス圧力低下量Pdownは容積Vが小さいほどより大きい値に計算されることに基づく。即ち、これにより、通路面積時間積分値AOLが大きいほど、ガス圧力低下量Pdownがより大きい値に計算される。
次に、CPU81はステップ1410に進んで、排気ガス圧力Peを、ステップ1030にて算出された基本排気ガス圧力Pe0と等しい値に設定し、続くステップ1055、1060を実行した後、ステップ1415にて、容積V内のガスの減少量積算値SMを「0」に設定する。
次いで、CPU81は図15のルーチンの処理を開始し、ステップ1160の処理を実行した後、ステップ1505に進み、排気ガス圧力Pe(現時点では、基本排気ガス圧力Pe0に等しい)がステップ1145で算出されている筒内ガス圧力Pcよりも大きいか否か(即ち、既燃ガスの排気系からの逆流が発生しているか否か)を判定し、「No」と判定する場合、ステップ1510に進んでガス圧力低下量Pdownを「0」に設定し、ステップ1515に進む。
現時点は、吸気弁32が開弁した直後であり、既燃ガスの吸気通路への吹き返しの開始により筒内ガス圧力Pcが低下して排気ガス圧力Peよりも低くなっている。従って、CPU81はステップ1505にて「Yes」と判定してステップ1520に進み、その時点の容積V内のガスの減少量積算値SMに、前回の本ルーチン実行時から今回の本ルーチン実行時までの容積V内のガスの減少量に相当する値Δt・meを加えて新たな容積V内のガスの減少量積算値SMを取得する(更新する)。
続いて、CPU81はステップ1525に進み、ステップ1160にて取得した排気ガス温度Teと、ステップ1405にて取得した容積Vと、上記更新した容積V内のガスの減少量積算値SMと、上記(25)式に相当するステップ1525内に記載の式とに基づいてガス圧力低下量Pdownを求め、ステップ1515に進む。
CPU81はステップ1515に進むと、排気ガス圧力Peを、ステップ1030にて求めた基本排気ガス圧力Pe0から上記求めたガス圧力低下量Pdownを減じた値に設定・更新し、ステップ1095に進んで本ルーチンを一旦終了する。
その後、プログラム実行間隔時間Δtが経過すると、CPU81は再び図14のルーチンの処理を開始する。このとき、吸気弁32は開弁している。従って、CPU81はステップ1005、1010を経て図15のルーチンの処理を開始する。この場合、CPU81はステップ1115に進むと、(20)式における排気ガス圧力Peとして前回の本ルーチン実行時におけるステップ1515にて設定・更新された値を使用して排気弁通過ガス流量meを求める。
その後、CPU81はステップ1505以降の処理を実行して排気ガス圧力Peを更新する。この時点では、吸気弁32が開弁してから十分な時間が経過していないから、排気ポート34からシリンダ21へガスが依然として逆流している(Pc<Pe)。従って、ステップ1505にて「Yes」と判定されて、ステップ1525にてガス圧力低下量Pdownが算出される。
このように、排気ポート34からシリンダ21へガスが依然として逆流している間(Pc<Pe)(即ち、バルブオーバーラップ期間中)、プログラム実行間隔時間Δtが経過する毎に、ステップ1525にて求められたガス圧力低下量Pdownを使用してステップ1515にて排気ガス圧力Peが逐次設定・更新されていき、このように設定・更新された排気ガス圧力Peの値が次回の本ルーチン実行時におけるステップ1115にて(20)式における排気ガス圧力Peとして逐次使用されていく。この第3実施形態では、ステップ1030、ステップ1305、ステップ1405、ステップ1505〜1525が排気ガス圧力算出手段に対応する。
以上、説明したように、第3実施形態の筒内吸入新気量推定装置は、第1実施形態と同様にバルブオーバーラップを有する内燃機関10に適用されている。第3実施形態の排気ガス圧力算出手段は、排気通路内(排気ポート34内)に所定の容積Vを有する仮想領域を設定し、容積Vに流入・流出するガスの流量が排気弁通過ガス流量meと等しいとの仮定のもと、排気弁通過ガス流量me(の積算値SM)に基づいて得られる容積V内のガスの質量変化から同容積V内のガスの圧力変化(ガス圧力低下量Pdown)を逐次算出し(ステップ1525、1510)、排気ガス圧力Peを、基本排気ガス圧力Pe0からガス圧力低下量Pdownを減じた値に逐次設定・更新する(ステップ1515)。
これによれば、吸気弁32が開弁している期間に亘って(従って、バルブオーバーラップ期間に亘って)排気ガス圧力Peを一定とする第1、第2実施形態に比して、バルブオーバーラップ期間中において排気ガス圧力Peがより一層精度良く算出され得、この結果、バルブオーバーラップ期間が長い場合であっても、筒内吸入新気量Maをより一層精度良く推定することができる。
(第4実施形態)
次に、本発明の第4実施形態に係る燃料噴射量制御装置(筒内吸入新気量推定装置)について説明する。この第4実施形態は、排気弁通過ガス流量meの変化から排気ガス圧力Peの変化分を求め、この排気ガス圧力Peの変化分により基本排気ガス圧力Pe0を逐次補正して排気ガス圧力Peを逐次算出・変更していく点で、第3実施形態と相違している。
第4実施形態では、第3実施形態と同様、基本排気ガス圧力Pe0からガス圧力低下量Pdownを減じることで排気ガス圧力Peが求められる。第4実施形態では、このガス圧力低下量Pdownを求める際に排気通路を流れるガスの慣性が考慮される。
より具体的に述べると、実際の排気ガス圧力の変動は、排気通路を流れるガスの慣性に大きく依存すると考えられる。従って、排気ガス圧力Peの変動は、排気通路を流れるガスの流速の変化に大きく依存し、排気通路を流れるガスの流速の変化が大きいほど大きくなる。
他方、排気通路を流れるガスの流速の変化は、排気弁通過ガス流量meの変化に等しいと考えることができる。に大きく依存する。以上のことから、ガス圧力低下量Pdownは、下記(26)式に従って表すことができる。ここで、Cはゲインであり、これについては、後述する。
第4実施形態は、既燃ガスの排気系からの逆流が発生している間、ガス圧力低下量Pdownを(26)式に従って逐次求め、上記基本排気ガス圧力Pe0(一定)からガス圧力低下量Pdownを減じることで、排気ガス圧力Peを逐次算出・変更していく。
次に、第4実施形態に係る燃料噴射量制御装置の作動について説明する。第4実施形態のCPU81は、第3実施形態のCPU81が実行する図14、及び図15のルーチンの代わりに、図14、及び図15にそれぞれ対応する図16、及び図17にフローチャートにより示した一連のルーチンを実行する。なお、図16、及び図17に示したルーチンにおいて前出のルーチンのステップと同一のステップについては、前出のルーチンのステップ番号と同一のステップ番号を付している。
図16に示したルーチンは、図14のステップ1405をステップ1605に代えた点、及び、図14のステップ1415を削除した点においてのみ図14に示したルーチンと異なる。図17に示したルーチンは、図15のステップ1520、1525をステップ1705、1710に代えた点、及び図15のステップ1515とステップ1095の間にステップ1715を追加した点においてのみ図15に示したルーチンと異なる。以下、係る相違点を主として説明する。
第4実施形態のCPU81は、吸気弁32が開弁すると、ステップ1005、1020〜1035、1305を実行した後、ステップ1605にて上記ゲインCを、ステップ1305で求めた通路面積時間積分値AOLと、通路面積時間積分値AOLとゲインCとの関係を規定した関数funcCとから求める。
これにより、ゲインCは、通路面積時間積分値AOLが大きいほどより大きい値に設定される。これは、通路面積時間積分値AOLが大きいほど、「既燃ガスの排気系からの逆流」による排気ガス圧力Peの低下が大きくなること、並びに、上記(26)式に従って求められるガス圧力低下量PdownはゲインCが大きいほどより大きい値に計算されることに基づく。即ち、これにより、通路面積時間積分値AOLが大きいほど、ガス圧力低下量Pdownがより大きい値に計算される。
次に、CPU81はステップ1410、ステップ1055、1060を実行した後、図17のルーチンの処理を開始し、ステップ1160の処理を実行した後、ステップ1505に進み、「No」と判定する場合、ステップ1510に進んでガス圧力低下量Pdownを「0」に設定し、ステップ1515に進む。
現時点は、吸気弁32が開弁した直後であり、既燃ガスの吸気通路への吹き返しの開始により筒内ガス圧力Pcが低下して排気ガス圧力Peよりも低くなっている。従って、CPU81はステップ1505にて「Yes」と判定してステップ1705に進み、ステップ1115にて取得された排気弁通過ガス流量meと、前回の本ルーチン実行時に後述するステップ1715にて求められている前回の排気弁通過ガス流量mebと、ステップ1705内に記載の式とから、排気弁通過ガス流量の微分値Δmeを取得する。
続いて、CPU81はステップ1710に進み、上記取得した排気弁通過ガス流量の微分値Δmeと、ステップ1605にて取得したゲインCと、上記(26)式に相当するステップ1710内に記載の式とに基づいてガス圧力低下量Pdownを求め、ステップ1515に進む。
CPU81はステップ1515に進むと、排気ガス圧力Peを、ステップ1030にて求めた基本排気ガス圧力Pe0から上記求めたガス圧力低下量Pdownを減じた値に設定・更新し、続くステップ1715にて前回の排気弁通過ガス流量mebの値をステップ1115にて今回取得された排気弁通過ガス流量meの値に設定した後、ステップ1095に進んで本ルーチンを一旦終了する。
その後、プログラム実行間隔時間Δtが経過すると、CPU81は再び図16のルーチンの処理を開始する。このとき、吸気弁32は開弁している。従って、CPU81はステップ1005、1010を経て図17のルーチンの処理を開始する。この場合、CPU81はステップ1115に進むと、(20)式における排気ガス圧力Peとして前回の本ルーチン実行時におけるステップ1515にて設定・更新された値を使用して排気弁通過ガス流量meを求める。
その後、CPU81はステップ1505以降の処理を実行して排気ガス圧力Peを更新する。この時点では、吸気弁32が開弁してから十分な時間が経過していないから、排気ポート34からシリンダ21へガスが依然として逆流している(Pc<Pe)。従って、ステップ1505にて「Yes」と判定されて、ステップ1710にてガス圧力低下量Pdownが算出される。
このように、排気ポート34からシリンダ21へガスが依然として逆流している間(Pc<Pe)(即ち、バルブオーバーラップ期間中)、プログラム実行間隔時間Δtが経過する毎に、ステップ1710にて求められたガス圧力低下量Pdownを使用してステップ1515にて排気ガス圧力Peが逐次設定・更新されていき、このように設定・更新された排気ガス圧力Peの値が次回の本ルーチン実行時におけるステップ1115にて(20)式における排気ガス圧力Peとして逐次使用されていく。この第4実施形態では、ステップ1030、ステップ1305、ステップ1605、ステップ1505、1510、1515、1705、1710、1715が排気ガス圧力算出手段に対応する。
以上、説明したように、第4実施形態の筒内吸入新気量推定装置は、第1実施形態と同様にバルブオーバーラップを有する内燃機関10に適用されている。第4実施形態の排気ガス圧力算出手段は、排気弁通過ガス流量meの変化から排気ガス圧力Peの変化分(ガス圧力低下量Pdown)を逐次算出し(ステップ1710、1510)、排気ガス圧力Peを、基本排気ガス圧力Pe0からガス圧力低下量Pdownを減じた値に逐次設定・更新する(ステップ1515)。
これによれば、第3実施形態と同様、吸気弁32が開弁している期間に亘って排気ガス圧力Peを一定とする第1、第2実施形態に比して、バルブオーバーラップ期間中において排気ガス圧力Peがより一層精度良く算出され得、この結果、バルブオーバーラップ期間が長い場合であっても、筒内吸入新気量Maをより一層精度良く推定することができる。
本発明は上記各実施形態に限定されることはなく、本発明の範囲内において種々の変形例を採用することができる。例えば、上記各実施形態においては、筒内ガス圧力Pc及び筒内ガス温度Tcをシリンダ21内についての質量保存則、及びエネルギー保存則に基づくシリンダモデルM5により求めているが、シリンダモデルM5と異なるモデル(数式)を利用して計算により筒内ガス圧力Pc及び筒内ガス温度Tcを求めてもよい。
また、上記各実施形態においては、吸気ガス温度(吸気管内空気圧力Pm)を吸気管41内の空気についての質量保存則、及びエネルギー保存則に基づく吸気管モデルM3により求めているが、吸気管41内の空気圧力を直接検出する吸気圧力センサにより吸気管内空気圧力Pmを検出してもよい。
また、上記各実施形態においては、排気ガス圧力Peを算出する際に使用する基本排気ガス圧力Pe0を、総べての気筒の排気弁通過ガス流量meを積算(時間積分)して得られる単位時間あたりの排気ガス量Geの関数(Pe0=a・Ge+b・Ge2: a,bは定数)により求めているが、総べての気筒の吸気弁通過ガス流量miを積算(時間積分)して得られる単位時間あたりの吸入ガス量Gaの関数(例えば、Pe0=c・Ga+d・Ga2: c,dは定数)により求めてもよい。
加えて、上記第1、第2実施形態においては、吸気弁32と排気弁35の開閉状態を表すパラメータ(吸気弁進角量VVTin、排気弁進角量VVTex等)に基づいて圧力補正係数Kpを算出し、この圧力補正係数Kpを基本排気ガス圧力Pe0に乗じることで排気ガス圧力Peを求めているが、吸気弁32と排気弁35の開閉状態を表すパラメータに基づいて圧力補正値を算出し、この圧力補正値を基本排気ガス圧力Pe0に加減算することで排気ガス圧力Peを求めてもよい。
10…内燃機関、21…シリンダ、25…燃焼室、31…吸気ポート、32…吸気弁、33…吸気弁制御装置、34…排気ポート、35…排気弁、36…排気弁制御装置、39…インジェクタ、41…吸気管、52…排気管、80…電気制御装置、81…CPU