図1は本発明を火花点火式内燃機関に適用した場合を示している。しかしながら、本発明を圧縮着火式内燃機関に適用することもできる。
図1を参照すると、1は例えば8つの気筒を備えた機関本体、2はシリンダブロック、3はシリンダヘッド、4はピストン、5は燃焼室、6は吸気弁、7は吸気ポート、8は排気弁、9は排気ポート、10は点火栓をそれぞれ示す。吸気ポート7は対応する吸気枝管11を介してサージタンク12に連結され、サージタンク12は吸気ダクト13を介してエアクリーナ14に連結される。各吸気枝管11内には燃料噴射弁15が配置され、吸気ダクト14内にはステップモータ16により駆動されるスロットル弁17が配置される。なお、本明細書では、スロットル弁17下流の吸気ダクト14、サージタンク13、吸気枝管12、及び吸気ポート7を吸気管IMと称している。
一方、排気ポート11は排気マニホルド18及び排気管19を介して触媒コンバータ20に連結され、この触媒コンバータ20は図示しないマフラを介して大気に連通される。なお、図1に示される内燃機関の吸気行程順序は#1−#8−#4−#3−#6−#5−#7−#2である。
電子制御ユニット30はデジタルコンピュータからなり、双方向性バス31によって互いに接続されたROM(リードオンリメモリ)32、RAM(ランダムアクセスメモリ)33、CPU(マイクロプロセッサ)34、入力ポート35及び出力ポート36を具備する。スロットル弁17上流の吸気ダクト13には機関吸気通路内を流通する吸入空気流量を検出するためのエアフローメータ39が取り付けられる。このエアフローメータ39には大気温センサが内蔵されている。また、サージタンク12には吸気管IM内の圧力である吸気圧Pm(kPa)を例えば10ms間隔で逐次検出するための圧力センサ40と、吸気管IM内の空気の温度である吸気温Tm(K)を検出するための温度センサ41とが取り付けられる。更に、アクセルペダル42にはアクセルペダル42の踏み込み量ACCを検出するための負荷センサ43が接続される。これらセンサ39,40,41,43の出力信号はそれぞれ対応するAD変換器37を介して入力ポート35に入力される。更に入力ポート35にはクランクシャフトが例えば30°回転する毎に出力パルスを発生するクランク角センサ44が接続される。CPU34ではクランク角センサ44の出力パルスに基づいて機関回転数NEが算出される。一方、出力ポート36は対応する駆動回路38を介して点火栓10、燃料噴射弁15、ステップモータ16、及び吸気弁リフト量変更装置21にそれぞれ接続され、これらは電子制御ユニット30からの出力信号に基づいて制御される。
各気筒の吸気弁6は吸気弁駆動装置50により開閉弁駆動される。この吸気弁駆動装置50は例えば高リフト量カムと低リフト量カムとを有するカムシャフトと、吸気弁6を駆動すべきカムを高リフト量カムと低リフト量カムとの間で選択的に切り換えるための切換機構とを具備する。吸気弁6が高リフト量カムでもって駆動される高リフト駆動時には図2に実線で示されるように吸気弁6のリフト量である吸気弁リフト量が大きくされ、吸気弁6の開弁期間である吸気弁開弁期間ないしカム作用角が大きくされる。これに対し、吸気弁6が低リフト量カムでもって駆動される低リフト駆動時には図2に破線で示されるように吸気弁リフト量が小さくされ、吸気弁開弁期間ないしカム作用角が小さくされる。即ち、吸気弁6を駆動するカムを変更すると、吸気弁リフト量及び吸気弁開弁期間が変更される。また、吸気弁6の開弁時期も変更される。
本発明による実施例では、通常は高リフト駆動が行われ、機関低負荷運転例えばアイドル運転になると低リフト駆動に切り換えられる。このようにすると、機関低負荷運転時にスロットル弁17の開度を小さくしなくても吸入空気量を低減することができ、従ってポンピングロスを低減することができる。
なお、吸気弁駆動装置50により吸気弁リフト量及び吸気弁開弁期間(作用角)が連続的に変更される場合にも本発明を適用できる。
さて、本発明による実施例ではi番気筒(i=1,2,…,8)の燃料噴射時間TAUiが次式(1)に基づいて算出される。
TAUi=TAUb・kDi・kk (1)
ここでTAUbは基本燃料噴射時間、kDiはi番気筒の空気量バラツキ補正係数、kkはその他の補正係数をそれぞれ表している。
基本燃料噴射時間TAUbは空燃比を目標空燃比に一致させるために必要な燃料噴射時間である。この基本燃料噴射時間TAUbは機関運転状態例えばアクセルペダル42の踏み込み量ACC及び機関回転数NEの関数として予め求められてマップの形でROM32内に記憶されている。
i番気筒において吸気行程完了時に筒内に充填されている空気の量を筒内充填空気量Mci(g)と称すると、空気量バラツキ補正係数kDiは筒内充填空気量Mciの気筒間バラツキを補償するためのものである。また、補正係数kkは空燃比補正係数、加速増量補正係数などをひとまとめにして表したものであり、補正する必要がないときには1.0とされる。
吸気弁リフト量に気筒間バラツキがあると、筒内充填空気量Mciに気筒間バラツキが生じ、その結果出力トルクに気筒間バラツキが生ずることになる。また、吸気管IMの内周面や吸気弁6の外周面上に主として炭素からなるデポジットが形成されたときにも、デポジットの付着量は気筒毎に異なるので、筒内充填空気量Mciに気筒間バラツキが生じるおそれがある。このことは、筒内充填空気量Mciが少ない低リフト駆動時に特に問題となる。
そこで本発明による実施例では、空気量バラツキ補正係数kDiを導入し、筒内充填空気量の気筒間バラツキを補償するようにしている。
i番気筒の空気量バラツキ補正係数kDiは例えば次式(2)に基づいて算出される。
kDi=ΔPmdi/ΔPmdav (2)
ここでΔPmdiはi番気筒の吸気行程が行われることにより生ずる吸気圧Pmの低下量である吸気圧低下量を、ΔPmdavは吸気圧低下量ΔPmdiの平均値(=ΣΔPmdi/Ncyl、ここでNcylは気筒数であり、図1の内燃機関では8である)をそれぞれ表している。
次に、図3から図5を参照しながら吸気圧低下量ΔPmdiについて説明する。
図3は、圧力センサ40により例えば一定時間間隔で720°クランク角にわたって検出された吸気圧Pmを示している。図3において、OPi(i=1,2,…,8)はi番気筒の吸気弁開弁期間を表しており、0°クランク角は1番気筒#1の吸気上死点を表している。図3からわかるように、ある気筒の吸気行程が開始されると、上昇していた吸気圧Pmが低下し始め、斯くして吸気圧Pmに上向きのピークが生ずる。吸気圧Pmは更に低下した後に再び上昇し、斯くして吸気圧Pmに下向きのピークが生ずる。このように、吸気圧Pmには上向きのピークと下向きのピークとが交互に生ずることになる。図3には、i番気筒の吸気行程が行われることにより吸気圧Pmに生ずる上向きのピークがUPiでもって、下向きのピークがDNiでもって、それぞれ示されている。
図4に示されるように、上向きのピークUPiにおける吸気圧Pmを最大値PmMi、下向きのピークDNiにおける吸気圧Pmを最小値Pmmiと称すると、i番気筒の吸気行程が行われることにより吸気圧Pmが最大値PmMiから最小値Pmmiまで低下する。従って、この場合の吸気圧低下量ΔPmdiは次式(3)で表される。
ΔPmdi=PmMi−Pmmi (3)
一方、図4に示されるように、吸気弁6が開弁すると、吸気管IMから流出して筒内CYLに吸入される空気の流量である筒内吸入空気流量mci(g/sec、図5参照)が増大し始める。次いで、筒内吸入空気流量mciが、スロットル弁17を通過して吸気管IM内に流入する空気の流量であるスロットル弁通過空気流量mt(g/sec、図5参照)よりも大きくなると、吸気圧Pmが低下し始める。次いで、筒内吸入空気流量mciが低下してスロットル弁通過空気流量mtよりも小さくなると、吸気圧Pmが増大し始める。
この場合、吸気行程が行われることによって吸気圧Pmがどれだけ低下するか、即ち吸気圧低下量ΔPmdiは筒内吸入空気流量mciに応じて定まる。一方、筒内充填空気量Mciは筒内吸入空気流量mciを時間積分したものである。従って、筒内充填空気量Mciは吸気圧低下量ΔPmdiによって表すことができ、筒内充填空気量Mciの気筒間バラツキは吸気圧低下量ΔPmdiの気筒間バラツキでもって表すことができる。
そこで本発明による実施例では、吸気圧低下量ΔPmdiを検出し、吸気圧低下量ΔPmdiに基づいて空気量バラツキ補正係数kDiを算出するようにしている。具体的には、例えばまず720°クランク角にわたって吸気圧Pmが検出され、検出された吸気圧Pmからi番気筒の最大値PmMi及び最小値Pmmiがそれぞれ検出される。次いで、式(3)を用いて吸気圧低下量ΔPmdiが算出され、式(2)を用いて空気量バラツキ補正係数kDiが算出される。
空気量バラツキ補正係数kDiは筒内充填空気量Mciに基づいて算出することもできる。この場合、空気量バラツキ補正係数kDiは次式(4)に基づいて算出される。
kDi=Mci/Mciav (4)
ここでMciavは筒内充填空気量Mciの平均値(=ΣMci/Ncyl)をそれぞれ表している。
筒内充填空気量Mciは例えば次のようにして求めることができる。上述したように、筒内充填空気量Mciは筒内吸入空気流量mciを時間積分したものである。従って、筒内充填空気量Mciは次式(5)のように表される。
ここで、tMiは吸気圧Pmに上向きのピークが発生する時刻である上向きピーク発生時刻を、tmiは吸気圧Pmに下向きのピークが発生する時刻である下向きピーク発生時刻を、Δtdiは時刻tMiから時刻tmiまでの時間間隔(s)を、Δtopiはi番気筒の吸気弁開弁期間(s)を、それぞれ表している(図4参照)。
式(5)において、右辺第1項は図4にT1で示される部分、即ち筒内吸入空気流量mciとスロットル弁通過空気流量mtとで囲まれた部分の面積を表したものであり、右辺第2項は図4にT2で示される部分、筒内吸入空気流量mciとスロットル弁通過空気流量mtと直線Pm=0とで囲まれた部分の面積を台形で近似して表したものである。
一方、吸気管IMについてのエネルギ保存則は次式(6)により表される。
ここで、Vmは吸気管IMの容積(m3)を、Raは空気ないし吸気ガス1モル当たりの気体定数をそれぞれ表している(図5参照)。
時刻tMiから時刻tmiまでの間に吸気圧Pmが吸気圧低下量ΔPmdiだけ低下することを考えると、式(5)は式(6)を用いて次式(7)のように書き直すことができる。
従って、吸気圧低下量ΔPmdiを上述したように算出し、吸気温Tmを温度センサ41により検出し、スロットル弁通過空気流量mtをエアフローメータ39により検出し、時刻tMi,tmiを吸気圧Pmから検出して時間間隔Δtdi(=tmi−tMi)を算出すれば、式(7)を用いて筒内充填空気量Mciを算出することができる。なお、吸気弁開弁期間Δtopiは吸気弁リフト量に応じて予め求められており、予めROM32内に記憶されている。
このように、式(2)を用い吸気圧低下量ΔPmdiに基づいて空気量バラツキ補正係数kDiを算出することもできるし、式(4)を用い筒内充填空気量Mciに基づいて空気量バラツキ補正係数kDiを算出することもできる。しかしながら、式(2)を用いる場合には、吸気温Tm及びスロットル弁通過空気流量mtを検出する必要がなく、空気量バラツキ補正係数kDiを簡単に求めることができる。なお、筒内充填空気量Mciが吸気圧低下量ΔPmdiから算出されることを考えると、式(2)が用いられる場合には吸気圧低下量ΔPmdiに直接的に基づいて空気量バラツキ補正係数kDiが算出され、式(4)が用いられる場合には吸気圧低下量ΔPmdiに間接的に基づいて空気量バラツキ補正係数kDiが算出されるということになる。
図6は本発明による実施例のi番気筒の吸気圧低下量ΔPmdiの算出ルーチンを示している。このルーチンは予め定められた設定時間毎の割り込みによって実行される。
図6を参照すると、ステップ100ではi番気筒についての最大値PmMi及び最小値Pmmiが検出される(i=1,2,…,8)。続くステップ101では式(3)を用いて吸気圧低下量ΔPmdiが算出される。
図7は本発明による実施例のi番気筒の燃料噴射時間TAUiの算出ルーチンを示している。このルーチンは予め定められた設定クランク角毎の割り込みによって実行される。
図7を参照すると、ステップ110では基本燃料噴射時間TAUbが算出される。続くステップ111では式(2)又は(4)からi番気筒の空気量バラツキ補正係数kDiが算出される(i=1,2,…,8)。続くステップ112では補正係数kkが算出される。続くステップ113では式(1)を用いて燃料噴射時間TAUiが算出される。i番気筒の燃料噴射弁15では燃料噴射時間TAUiだけ燃料が噴射される。
上述したように、式(2)を用いる場合も式(4)を用いる場合も吸気圧低下量ΔPmdiが使用され、従って吸気圧低下量ΔPmdiを正確に求める必要がある。次に、吸気圧低下量ΔPmdiを算出するための本発明による第1から第4変更例を説明する。
まず、本発明による第1変更例を説明する。
図8(A)は低リフト駆動が行われた場合の吸気圧Pmの一例を示している。図8(A)に示される例において、例えば矢印Xで示される部分では、吸気圧Pmが増大し続けている。その結果、吸気圧Pmに上向きのピークUPi及び下向きのピークDNiが発生しないので、最大値PmMi及び最小値Pmmiを検出することができず、吸気圧低下量ΔPmdiを検出することができない。いずれか一つの気筒の吸気圧低下量ΔPmdiを検出できなければ、空気量バラツキ補正係数kDiを算出することができない。吸気圧Pmがこのような挙動をとるのは、筒内充填空気量Mciが他の気筒のMciに比べてかなり少なく、筒内吸入空気流量mciがスロットル弁通過空気流量mtよりも大きくならないからであると考えられる(図4参照)。
一方、図8(B)は、図8(A)の場合と同一の機関運転状態において高リフト駆動が行われた場合の吸気圧Pmを示している。この場合、矢印Yで示されるように吸気圧Pmに上向きのピークUPi及び下向きのピークDNiが明確に発生しており、吸気圧低下量ΔPmdiを検出することが可能となる。
そこで本発明による第1変更例では、各気筒の吸気圧低下量ΔPmdiを検出可能か否かを判断し、少なくとも一つの気筒の吸気圧低下量ΔPmdiを検出不可能と判断されたときには一時的に高リフト駆動に切り換えて吸気圧低下量ΔPmdiを検出するようにしている。このようにすると、吸気圧Pmに上向きのピークUPi及び下向きのピークDNiが確実に発生するので、最大値PmMi及び最小値Pmmiを確実に検出することができ、従って吸気圧低下量ΔPmdiを確実に検出することができる。
この場合、最大値PmMi又は最小値Pmmiを検出可能か否かを判断することにより、吸気圧低下量ΔPmdiを検出可能か否かが判断される。即ち、最大値PmMi又は最小値Pmmiを検出できないときには、吸気圧低下量ΔPmdiを検出できないと判断され、最大値PmMi及び最小値Pmmiを検出できるときには、吸気圧低下量ΔPmdiを検出できると判断される。
吸気圧低下量ΔPmdiの検出が完了すると、通常駆動に戻され、即ち機関運転状態に応じて高リフト駆動又は低リフト駆動が行われる。
図9は本発明の第1変更例によるi番気筒の吸気圧低下量ΔPmdiの算出ルーチンを示している。このルーチンは予め定められた設定時間毎の割り込みによって実行される。
図9を参照すると、ステップ120ではi番気筒についての最大値PmMi及び最小値Pmmiが検出される(i=1,2,…,8)。続くステップ121では、全気筒について最大値PmMi及び最小値Pmmiを検出できたか否かが判別される。少なくとも1つの気筒について最大値PmMi又は最小値Pmmiを検出できなかったときには次いでステップ122に進み、機関運転状態にかかわらず高リフト駆動が行われる。次いでステップ120に戻る。
これに対し、全気筒について最大値PmMi及び最小値Pmmiを検出できたときにはステップ121からステップ123に進み、式(3)を用いて吸気圧低下量ΔPmdiが算出される。続くステップ124では、上述した通常駆動が行われる。
なお、吸気圧低下量ΔPmdiが検出不可能と判断されるのが低リフト駆動時のみであることを考えると、本発明による第1変更例では、低リフト駆動時に吸気圧低下量ΔPmdiを検出するのを禁止していると見ることもできる。
次に、本発明による第2変更例を説明する。
上述した本発明による第1変更例では、低リフト駆動を行うべきときであっても、吸気圧低下量ΔPmdiを検出するために高リフト駆動に切り換えられる。このため、例えばスロットル弁17の開度を一時的に小さくするなど、追加の制御が必要となる。
一方、図10(A)に示されるように、例えばi番気筒の吸気弁開弁開始時期θSiからクランク角が上向きピーク所要クランク角ΔθMiだけ経過すると、i番気筒の吸気行程が行われたことにより吸気圧Pmに上向きのピークUPiが発生し、吸気弁開弁開始時期θSiからクランク角が下向きピーク所要クランク角Δθmiだけ経過すると吸気圧Pmに下向きのピークDNiが発生する。
これら上向きピーク所要クランク角ΔθMi及び下向きピーク所要クランク角Δθmiは、高リフト駆動時であるか低リフト駆動時であるかにかかわらずほぼ一定に維持される。
そうすると、吸気弁開弁開始時期θSiからクランク角が上向きピーク所要クランク角ΔθMiだけ経過したときの吸気圧Pmは最大値PmMiであり、吸気弁開弁開始時期θSiからクランク角が下向きピーク所要クランク角Δθmiだけ経過したときの吸気圧Pmは最小値Pmmiであるということになる。
従って、上向きピーク所要クランク角ΔθMi及び下向きピーク所要クランク角Δθmiを予め求めておけば、吸気圧Pmに上向きピークUPi又は下向きピークDNiが発生しないときにも、上向きピーク所要クランク角ΔθMi及び下向きピーク所要クランク角Δθmiを用いて最大値PmMi及び最小値Pmmiを検出でき、斯くして吸気圧低下量ΔPmdiを検出できることになる。これが本発明による第2変更例の考え方である。
一方、上述したように、高リフト駆動時には吸気圧Pmに上向きピークUPi及び下向きピークDNiが確実に発生し、しかしながら低リフト駆動時には吸気圧Pmに上向きピークUPi又は下向きピークDNiが発生しないおそれがある。
そこで本発明による第2変更例では、高リフト駆動時に上向きピーク所要クランク角ΔθMi及び下向きピーク所要クランク角Δθmiを予め求めて記憶しておき、低リフト駆動時にこれら記憶されている上向きピーク所要クランク角ΔθMi及び下向きピーク所要クランク角Δθmiを用いて吸気圧低下量ΔPmdiを検出するようにしている。
具体的には、高リフト駆動時には上向きピーク所要クランク角ΔθMi及び下向きピーク所要クランク角Δθmiが検出され、記憶される。次いで、低リフト駆動時になると、図10(B)に示されるように、吸気弁開弁開始時期θSiからクランク角が上向きピーク所要クランク角ΔθMiだけ経過したときの吸気圧Pmが検出され、この吸気圧Pmが最大値PmMiとされる。同様に、吸気弁開弁開始時期θSiからクランク角が下向きピーク所要クランク角Δθmiだけ経過したときの吸気圧Pmが検出され、この吸気圧Pmが最小値Pmmiとされる。次いで、式(3)を用いて吸気圧低下量ΔPmdiが算出される。
図11は本発明の第2変更例によるi番気筒の吸気圧低下量ΔPmdiの算出ルーチンを示している。このルーチンは予め定められた設定時間毎の割り込みによって実行される。
図11を参照すると、ステップ130では低リフト駆動時であるか否かが判別される。高リフト駆動時には次いでステップ131に進み、i番気筒についての最大値PmMi及び最小値Pmmiが検出され、上向きピーク所要クランク角ΔθMi及び下向きピーク所要クランク角Δθmiが検出される(i=1,2,…,8)。次いでステップ133に進む。
これに対し、低リフト駆動時にはステップ130からステップ132に進み、記憶されている上向きピーク所要クランク角ΔθMi及び下向きピーク所要クランク角Δθmiが読み込まれ、これら上向きピーク所要クランク角ΔθMi及び下向きピーク所要クランク角Δθmiを用いて最大値PmMi及び最小値Pmmiが検出される。次いでステップ133に進む。
ステップ133では式(3)を用いて吸気圧低下量ΔPmdiが算出される。
なお、低リフト駆動時であっても吸気圧Pmに上向きのピークUPi及び下向きのピークDNiが発生しているときには、このときの上向きピーク所要クランク角ΔθMi及び下向きピーク所要クランク角Δθmiを検出して記憶しておき、吸気圧Pmに上向きのピークUPi又は下向きのピークDNiが発生しないときにこれら記憶されているΔθMi,Δθmiを用いて吸気圧低下量ΔPmdiを算出するようにしてもよい。更に、高リフト駆動時にも、記憶されているΔθMi,Δθmiを用いて吸気圧低下量ΔPmdiを算出することもできる。
従って、包括的にいうと、第1の基準時期から吸気圧に上向きのピークUPiが生ずるまでに要する上向きピーク所要時間と、第2の基準時期から吸気圧Pmに下向きのピークDNiが生ずるまでに要する下向きピーク所要時間とを検出し、第1の基準時期から上向きピーク所要時間だけ経過したときの吸気圧PmMiと、第2の基準時期から下向きピーク所要時間だけ経過したときの吸気圧Pmmiとから吸気圧低下量ΔPmdiを検出しているということになる。この場合、第1の基準時期と第2の基準時期とは互いに同じであってもよいし異なっていてもよい。即ち、第1の基準時期及び第2の基準時期を上述したように吸気弁開弁開始時期θSiに設定することもできるし、第1の基準時期を吸気弁開弁開始時期θSiに設定し第2の基準時期を吸気圧Pmに上向きのピークUPiが発生した時期(=θSi+ΔθMi)に設定することもできる。
次に、本発明による第3変更例を説明する。
図12に示されるように、圧力センサ40により実際に検出される吸気圧Pmにはノイズが含まれており、吸気行程が行われることによる吸気圧Pmに生ずる上向きのピークUPi及び下向きのピークDNiを正確に特定するのが困難な場合がある。
そこで本発明による第3変更例では、検出された吸気圧Pmを平滑化して平滑化吸気圧Pmsmを求め、この平滑化吸気圧Pmsmに上向きのピークUPiが生ずる時期である上向きピーク発生クランク角θMi及び下向きのピークDNiが生ずる時期である下向きピーク発生クランク角θmiをそれぞれ検出するようにしている。このようにすると、図12に矢印Zで示されるようなノイズによるピークの影響をなくすことができる。
次いで、上向きピーク発生クランク角θMiに検出された吸気圧Pmが特定される。この吸気圧Pmは最大値PmMiを表している。同様に、下向きピーク発生クランク角θmiに検出された吸気圧Pmが特定され、この吸気圧Pmは最小値Pmmiを表している。次いで、式(3)を用いて吸気圧低下量ΔPmdiが算出される。
この場合、上向きピーク発生クランク角θMi及び下向きピーク発生クランク角θmiにおける平滑化吸気圧Pmsmをそれぞれ最大値PmMi及び最小値Pmmiとすることも考えられる。しかしながら、平滑化吸気圧Pmsmは平滑化されたものである以上、吸気圧Pmを正確に表していない。そこで本発明による第3変更例では、上向きピーク発生クランク角θMiに検出された吸気圧Pmを最大値PmMiとし、下向きピーク発生クランク角θmiに検出された吸気圧Pmを最小値Pmmiとしている。
図13は本発明の第3変更例によるi番気筒の吸気圧低下量ΔPmdiの算出ルーチンを示している。このルーチンは予め定められた設定時間毎の割り込みによって実行される。
図13を参照すると、ステップ140では例えば720°クランク角にわたって検出された吸気圧Pmが平滑化され、平滑化吸気圧Pmsmが算出される。続くステップ141では、平滑化吸気圧Pmsmから上向きピーク発生クランク角θMi及び下向きピーク発生クランク角θmiが検出される。続くステップ142では、上向きピーク発生クランク角θMi及び下向きピーク発生クランク角θmiにおける最大値PmMi及び最小値Pmmiが検出される。続くステップ143では式(3)を用いて吸気圧低下量ΔPmdiが算出される。
次に、本発明による第4変更例を説明する。
図1の内燃機関では、吸気行程が続けて行われる二つの気筒の吸気弁開弁期間が重複している。即ち、図14(A)にW1で示されるように(i−1)番気筒の吸気弁開弁期間OP(i−1)の末期とi番気筒の吸気弁開弁期間OP(i)の初期とが互いに重複しており、図14(A)にW2で示されるようにi番気筒の吸気弁開弁期間OP(i)の末期と(i+1)番気筒の吸気弁開弁期間OP(i+1)の初期とが互いに重複している(ここでは、iは吸気行程順序を表している)。
ところが、吸気弁開弁期間が重複しているときには二つの気筒内に同時に空気が流入している場合があり、この場合には吸気圧Pmの低下がどちらの気筒に流入した空気に基づくものであるかを特定できない。従って、吸気圧低下量に対する吸気弁開弁期間の重複の影響を無視できない場合には、これまで述べてきた方法では吸気圧低下量ΔPmdiを必ずしも正確に検出することができない。
しかしながら、吸気弁駆動装置50(図1参照)により吸気弁リフト量が変更されると、吸気弁開弁開始時期が変更され、重複期間W1,W2の時期が変更される。図14(B)に示されるように重複期間W2が(i+1)番気筒の吸気上死点TDC(i+1)周りにある場合には、重複期間W2において(i+1)番気筒にはほとんど空気が流入しておらず、この場合の重複期間W2における吸気圧Pmの低下はi番気筒に流入した空気に基づくものであるということがわかる。同様に、図14(C)に示されるように重複期間W1が(i−1)番気筒の吸気下死点BDC(i−1)周りにある場合にも、重複期間W1における吸気圧Pmの低下はi番気筒に流入した空気に基づくものであるといえる。
更に、図14(B)に示されるように重複期間W1がi番気筒の吸気上死点TDC(i)周りにある場合には、重複期間W1における吸気圧Pmの低下は(i−1)番気筒に流入した空気に基づくものであり、図14(C)に示されるように重複期間W2がi番気筒の吸気下死点BDC(i)周りにある場合には、重複期間W2における吸気圧Pmの低下は(i+1)番気筒に流入した空気に基づくものであるということになる。
そこで本発明による第4変更例では、i番気筒の吸気弁開弁時期と(i+1)番気筒の吸気弁開弁時期との重複時期が、i番気筒又は(i+1)番気筒の上死点周り又は下死点周りにないときには吸気圧低下量ΔPmdiの検出を禁止し、この重複時期が、i番気筒又は(i+1)番気筒の上死点周り又は下死点周りにあるときに吸気圧低下量ΔPmdiを検出するようにしている。その結果、吸気弁開弁期間が重複しているときにも、吸気圧低下量ΔPmdiを正確に検出することができる。
なお、吸気弁リフト量及び吸気弁開弁期間が維持されつつ吸気弁開弁時期が変更される場合にも、本発明による第4変更例を適用できる。
図15は本発明の第4変更例によるi番気筒の吸気圧低下量ΔPmdiの算出ルーチンを示している。このルーチンは予め定められた設定時間毎の割り込みによって実行される。
図15を参照すると、ステップ150では、吸気圧低下量ΔPmdiの検出条件が成立しているか否かが判別される。i番気筒の吸気弁開弁時期と(i+1)番気筒の吸気弁開弁時期との重複時期がi番気筒又は(i+1)番気筒の上死点周り又は下死点周りにあるときに検出条件が成立していると判断され、それ以外は検出条件が不成立であると判断される。検出条件が成立していると判断されたときには次いでステップ151に進み、最大値PmMi及び最小値Pmmiが検出される。続くステップ152では式(3)を用いて吸気圧低下量ΔPmdiが算出される。これに対し、検出条件が不成立であると判断されたときには処理サイクルを終了する。従って、吸気圧低下量ΔPmdiの算出が禁止される。