(57)【要約】【課題】複数気筒のバルブ可変量を一括して１つの可変バルブ機構で制御する場合に、気筒間の実吸入空気量のばらつきを精度良く補正する。【解決手段】気筒間の実吸入空気量（実バルブリフト量）のばらつきが小さくなるように各気筒毎に目標リフト量ＶＶＬＭを設定し、全気筒の吸気バルブが閉弁している全吸気バルブ閉弁期間になる毎に、可変バルブリフト機構のモータを次の吸気気筒の目標リフト量ＶＶＬＭに相当する位置まで高速駆動する。また、可変バルブリフト機構のモータを次の吸気気筒の目標リフト量ＶＶＬＭに相当する位置まで駆動するのに要するモータ駆動期間ＴＡＣＴが全吸気バルブ閉弁期間ＴＣＬＯＳＥよりも長くなったときには、各気筒の目標リフト量ＶＶＬＭを小さくして各気筒の吸気バルブ開弁期間ＴＯＰＥＮを短くすることで、全吸気バルブ閉弁期間ＴＣＬＯＳＥの長さをモータ駆動期間ＴＡＣＴ以上にする。【選択図】  図１５
2004316453.tif 000002
【特許請求の範囲】
【請求項１】
内燃機関の複数気筒の吸気バルブ又は排気バルブ（以下単に「バルブ」という）のバルブ可変量を一括して１つの可変バルブ機構で制御する内燃機関の可変バルブ制御装置において、
気筒間の実バルブ可変量又は実吸入空気量のばらつきの情報（以下「気筒間ばらつき情報」という）を算出する気筒間ばらつき算出手段と、
前記気筒間ばらつき情報を考慮して各気筒毎に目標バルブ可変量を設定する気筒別目標バルブ可変量設定手段と、
前記複数気筒の全てのバルブが閉じている全バルブ閉弁期間に、前記可変バルブ機構を次にバルブが開かれる気筒の目標バルブ可変量に相当する位置まで駆動することでバルブ可変量を気筒別に制御する気筒別可変バルブ制御手段と、
前記可変バルブ機構を次にバルブが開かれる気筒の目標バルブ可変量に相当する位置まで駆動する駆動期間（以下単に「可変バルブ機構の駆動期間」という）に応じて各気筒の目標バルブ可変量を修正するバルブ可変量修正手段と
を備えていることを特徴とする内燃機関の可変バルブ制御装置。
【請求項２】
前記バルブ可変量修正手段は、前記全バルブ閉弁期間の長さが前記可変バルブ機構の駆動期間以上になるように各気筒の目標バルブ可変量を修正することを特徴とする請求項１に記載の内燃機関の可変バルブ制御装置。
【請求項３】
前記バルブ可変量修正手段は、前記可変バルブ機構の駆動期間が前記全バルブ閉弁期間よりも長くなったときに、該全バルブ閉弁期間が長くなる方向に各気筒の目標バルブ可変量を修正することを特徴とする請求項１又は２に記載の内燃機関の可変バルブ制御装置。
【請求項４】
前記バルブ可変量修正手段は、各気筒の目標バルブ可変量を修正する際に、その修正の前後でトルクがほぼ同等になるように各気筒の目標バルブタイミングを修正することを特徴とする請求項１乃至３のいずれかに記載の内燃機関の可変バルブ制御装置。
【請求項５】
前記バルブ可変量修正手段は、各気筒の目標バルブ可変量を修正する際に、各気筒のバルブ開弁期間が短くなる場合には各気筒の目標バルブタイミングを遅角補正し、各気筒のバルブ開弁期間が長くなる場合には各気筒の目標バルブタイミングを進角補正することを特徴とする請求項４に記載の内燃機関の可変バルブ制御装置。
【請求項６】
前記バルブ可変量修正手段は、前記可変バルブ機構の駆動期間に応じて各気筒の目標バルブ可変量を修正する際に、修正後の目標バルブ開弁期間が調整可能な最小開弁期間よりも短くなるか又は修正後の目標バルブ閉弁時期が下死点よりも遅角側になる場合には、各気筒の目標バルブリフト量を増加させることを特徴とする請求項１乃至５のいずれかに記載の内燃機関の可変バルブ制御装置。
【請求項７】
前記バルブ可変量修正手段は、前記可変バルブ機構の駆動期間が前記全バルブ閉弁期間よりも長くなったときに、各気筒の目標バルブリフト量を増加させることを特徴とする請求項１に記載の内燃機関の可変バルブ制御装置。
【請求項８】
前記バルブ可変量修正手段により各気筒の目標バルブリフト量を増加させたときに、内燃機関のスロットルバルブを制御して吸入空気量を制御するスロットル制御手段を備えていることを特徴とする請求項６又は７に記載の内燃機関の可変バルブ制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、内燃機関の吸気バルブ又は排気バルブのバルブ可変量（リフト量、作用角、バルブタイミング等）を制御する内燃機関の可変バルブ制御装置に関するものである。
【０００２】
【従来の技術】
一般に、内燃機関の吸入空気量の制御はスロットルバルブによって行われるが、最近では、吸気バルブのリフト量を可変する可変バルブ機構を設け、アクセル開度やエンジン運転状態等に応じて吸気バルブのリフト量を可変することで吸入空気量を制御する技術が開発されている。この可変吸気バルブ制御による吸入空気量制御は、吸気バルブのリフト量を小さくすることによって、吸気通路をスロットルバルブで絞ることなく吸入空気量を少なくすることができるので、ポンピングロスを低減することができると共に、吸気バルブのリフト量を小さくすることによって、カム軸の駆動力も低減することができて、燃費を向上させることができるという利点がある。
【０００３】
このような可変バルブリフト制御システムにおいては、特許文献１（特開２００１−２６３１１０号公報）に示すように、各気筒毎に吸気バルブを駆動する電磁アクチュエータを設けたものがあるが、この構成では、気筒数と同数の電磁アクチュエータが必要になるため、システム構成が複雑化して高コストになる欠点がある。
そこで、複数気筒の吸気バルブのリフト量を一括して１つの可変バルブ機構で制御するシステムが開発されている。
【０００４】
しかし、この可変吸気バルブ制御による吸入空気量制御では、低負荷時に吸気バルブのリフト量が小さくなるため、各気筒で目標リフト量に対する実リフト量のばらつき（各気筒の部品公差や組付公差によるばらつき）の割合が大きくなって、気筒間の吸入空気量ばらつきが大きくなる傾向がある。このため、気筒間の吸入空気量ばらつきの影響を受けて各気筒のトルクや空燃比が変動し易く、気筒間のトルクばらつきや空燃比ばらつきが大きくなる傾向がある。
【０００５】
このような気筒間のトルクばらつきや空燃比ばらつきを補正する方法が幾つか提案されている。例えば、特許文献２（特開昭６２−１７３４２号公報）に示すように、クランク軸に設けたトルクセンサで各気筒毎にトルクを検出して、各気筒のトルクが全気筒の平均トルクになるように各気筒毎に燃料噴射量を補正するようにしたものがある。
【０００６】
或は、特許文献３（特開２０００−２２０４８９号公報）に示すように、排気管に設置した空燃比センサの出力に基づいて各気筒の空燃比を推定し、気筒間の空燃比ばらつきが小さくなるように各気筒毎に燃料噴射量を補正するようにしたものがある。
【０００７】
【特許文献１】
特開２００１−２６３１１０号公報（第３頁〜第６頁等）
【特許文献２】
特開昭６２−１７３４２号公報（第２頁等）
【特許文献３】
特開２０００−２２０４８９号公報（第２頁〜第３頁等）
【０００８】
【発明が解決しようとする課題】
ところで、上記特許文献２、３では、各気筒毎にトルクや空燃比を検出して、その検出結果に基づいて各気筒毎に燃料噴射量を補正することで、各気筒のトルクばらつきや空燃比ばらつきを補正するようにしている。しかし、気筒間の吸入空気量ばらつきが大きくなると、単に燃料噴射量を補正するだけでは、各気筒のトルクばらつきや空燃比ばらつきを十分な精度で補正することは困難である。しかも、気筒間の吸入空気量ばらつきや吸入燃料量ばらつき等の複数の要因が絡み合って気筒間のトルクばらつきや空燃比ばらつきが発生している場合も、十分な精度で補正することは困難である。
【０００９】
この対策として、各気筒の部品公差や組付公差を小さくして（つまり気筒間の吸気バルブリフト量のばらつきを小さくして）、気筒間の吸入空気量のばらつきを小さくすることが考えられるが、これを実現するには、部品の加工精度を向上させたり、部品を選択して組み付けたりする必要があり、部品コストや製造コストが高くなってしまうという欠点がある。
【００１０】
そこで、本発明者らは、複数気筒の吸気バルブのリフト量を一括して１つの可変バルブ機構で制御するシステムにおいて、各気筒の吸気行程毎（４気筒エンジンであれば１８０℃Ａ毎）に可変バルブ機構を高速駆動することで、気筒間の吸気バルブリフト量のばらつき（又は吸入空気量のばらつき）を補正する“気筒別可変バルブ制御”を研究している。
【００１１】
しかし、可変バルブ機構を高速駆動するにしても限界があり、可変バルブ機構の駆動時間を無視できないため、各気筒の吸気行程毎に可変バルブ機構を駆動する方式では、可変バルブ機構の駆動途中（リフト可変動作の途中）で吸気バルブの開弁タイミングを迎えてしまい、バルブプロフィール（バルブリフトカーブ）が過渡状態となってしまう。このため、目標リフト量に対応した適正なバルブプロフィールで吸気バルブを開弁することができなくなり、気筒別可変バルブ制御の制御精度が低下して、気筒間の吸気バルブリフト量のばらつき（又は吸入空気量のばらつき）を精度良く補正することができないという問題がある。
【００１２】
本発明はこのような事情を考慮してなされたものであり、従ってその目的は、複数気筒のバルブ可変量を一括して１つの可変バルブ機構で制御するシステムにおいて、気筒別可変バルブ制御の制御精度を向上させることができる内燃機関の可変バルブ制御装置を提供することにある。
【００１３】
【課題を解決するための手段】
上記目的を達成するために、請求項１に係る発明は、複数気筒の吸気バルブ又は排気バルブ（以下単に「バルブ」という）のバルブ可変量を一括して１つの可変バルブ機構で制御するシステムにおいて、気筒間ばらつき算出手段により気筒間の実バルブ可変量又は実吸入空気量のばらつきの情報（以下「気筒間ばらつき情報」という）を算出し、この気筒間ばらつき情報を考慮して気筒別目標バルブ可変量設定手段により各気筒毎に目標バルブ可変量を設定し、気筒別可変バルブ制御手段により、複数気筒の全てのバルブが閉じている全バルブ閉弁期間に、可変バルブ機構を次にバルブが開かれる気筒の目標バルブ可変量に相当する位置まで駆動することでバルブ可変量を気筒別に制御することを第１の特徴とし、更に、可変バルブ機構を次にバルブが開かれる気筒の目標バルブ可変量に相当する位置まで駆動する駆動期間（以下単に「可変バルブ機構の駆動期間」という）に応じて各気筒の目標バルブ可変量をバルブ可変量修正手段により修正することを第２の特徴とするものである。
【００１４】
上記請求項１に係る発明の第１の特徴によれば、可変バルブ機構を次にバルブが開かれる気筒の目標バルブ可変量に相当する位置まで駆動する駆動期間が、全バルブ閉弁期間よりも短い場合には、全バルブ閉弁期間内に可変バルブ機構の駆動を終了することができるので、可変バルブ機構の駆動の途中でバルブが開弁する事態を回避することができて、各気筒のバルブプロフィールが過渡状態となることを回避することができる。これにより、気筒間ばらつき情報を考慮して設定した目標バルブ可変量に対応した適正なバルブプロフィールでバルブを開くことができ、気筒別可変バルブ制御を精度良く行うことができる。
【００１５】
ところが、可変バルブ機構の故障やバッテリ電圧の低下等によって可変バルブ機構の駆動時間が長くなったり、或は、エンジン回転速度が上昇して全バルブ閉弁期間の時間が短くなって、可変バルブ機構を次にバルブが開かれる気筒の目標バルブ可変量に相当する位置まで駆動する駆動期間が、全バルブ閉弁期間よりも長くなると、全バルブ閉弁期間内に可変バルブ機構の駆動を終了することができなくなって、各気筒のバルブプロフィールが過渡状態となってしまい、気筒別可変バルブ制御の制御精度が低下してしまう。
【００１６】
この対策として、請求項１に係る発明は、可変バルブ機構を次にバルブが開かれる気筒の目標バルブ可変量に相当する位置まで駆動する駆動期間（以下単に「可変バルブ機構の駆動期間」という）に応じて各気筒の目標バルブ可変量をバルブ可変量修正手段により修正することを第２の特徴としている。
【００１７】
このように、各気筒の目標バルブ可変量を修正すれば、各気筒のバルブ開弁期間を変化させることができ、それに伴って全バルブ閉弁期間を変化させることができる。従って、可変バルブ機構の駆動期間に応じて各気筒の目標バルブ可変量を修正すれば、可変バルブ機構の駆動期間の長さに応じて全バルブ閉弁期間の長さを調整することができる。これにより、修正前の目標バルブ可変量では可変バルブ機構の駆動期間が全バルブ閉弁期間よりも長くなってしまう条件下でも、全バルブ閉弁期間の長さを可変バルブ機構の駆動期間以上に拡大して、各気筒のバルブプロフィールが過渡状態となることを回避することができ（或は全バルブ閉弁期間に対する可変バルブ機構の駆動期間の超過分を減少させて、各気筒のバルブプロフィールが過渡状態となる期間を短くすることができ）、気筒別可変バルブ制御の制御精度の低下を抑えることができる。
【００１８】
この場合、請求項２のように、全バルブ閉弁期間の長さが可変バルブ機構の駆動期間以上になるように各気筒の目標バルブ可変量を修正するようにすると良い。このようにすれば、全バルブ閉弁期間内に可変バルブ機構の駆動を確実に終了することができ、各気筒のバルブプロフィールが過渡状態となることを確実に回避することができる。
【００１９】
更に、請求項３のように、可変バルブ機構の駆動期間が全バルブ閉弁期間よりも長くなったときに、該全バルブ閉弁期間が長くなる方向に各気筒の目標バルブ可変量を修正するようにすると良い。このようにすれば、可変バルブ機構の駆動期間が全バルブ閉弁期間よりも長くなって、全バルブ閉弁期間を長くする必要が生じたときのみ目標バルブ可変量を修正する機能が働くようになるため、気筒間ばらつき情報を考慮して設定した目標バルブ可変量を必要以上に修正してしまうことを防止することができる。
【００２０】
ところで、各気筒の目標バルブ可変量を修正してバルブ開弁期間を変化させると、それに伴って各気筒の吸入空気量が変化してトルクが変化してしまう。
この対策として、請求項４のように、各気筒の目標バルブ可変量を修正する際に、その修正の前後でトルクがほぼ同等になるように各気筒の目標バルブタイミングを修正すると良い。このようにすれば、各気筒の目標バルブ可変量を修正する際に、各気筒のバルブ開弁期間の変化による吸入空気量の変化分を、各気筒のバルブタイミング（バルブ開閉時期）の修正による吸入空気量の変化分で打ち消して、トルクをほぼ同等にすることができる。
【００２１】
具体的には、請求項５のように、各気筒のバルブ開弁期間が短くなる場合には各気筒の目標バルブタイミングを遅角補正し、各気筒のバルブ開弁期間が長くなる場合には各気筒の目標バルブタイミングを進角補正するようにすると良い。一般に、各気筒の吸気バルブタイミングを遅角すると、バルブ開弁時のピストン位置が下がってバルブ開弁時の筒内圧が低下するため、各気筒の吸気流速が速くなって吸入空気量が増加する。一方、各気筒の吸気バルブタイミングを進角すると、各気筒の吸気流速が遅くなって吸入空気量が減少する。
【００２２】
従って、各気筒のバルブ開弁期間が短くなる場合に、各気筒の目標バルブタイミングを遅角補正すれば、バルブ開弁期間の減少による吸入空気量の減少分を、バルブタイミングの遅角補正による吸入空気量の増加分で打ち消して、トルクをほぼ同等に維持することができる。一方、各気筒のバルブ開弁期間が長くなる場合に、各気筒の目標バルブタイミングを進角補正すれば、バルブ開弁期間の増加による吸入空気量の増加分を、バルブタイミングの進角補正による吸入空気量の減少分で打ち消して、トルクをほぼ同等に維持することができる。
【００２３】
ところで、可変バルブ機構の可変範囲はストッパ機構等よって所定範囲内に制限されているため、各気筒の目標バルブ開弁期間が調整可能な最小開弁期間よりも短い期間に設定されると、各気筒のバルブ開弁期間を目標バルブ開弁期間に制御することができなくなる。
【００２４】
また、各気筒の目標バルブ可変量の修正による吸入空気量の減少分を、各気筒の目標バルブタイミングの遅角補正による吸入空気量の増加分で打ち消してトルクをほぼ同等に維持する際に、目標バルブ閉弁時期が下死点よりも遅角側に設定されると、ピストンの上昇による筒内ガスの吸気ポートへの吹き返しが発生するため、バルブタイミングの遅角補正による吸入空気量の増加効果が低下して、トルクをほぼ同等に維持することができなくなる。
【００２５】
これらの事情を考慮に入れて、請求項６のように、可変バルブ機構の駆動期間に応じて各気筒の目標バルブ可変量を修正する際に、修正後の目標バルブ開弁期間が所定の最小開弁期間よりも短くなるか又は修正後の目標バルブ閉弁時期が下死点よりも遅角側になる場合には、上述したような不具合が発生するため、可変バルブ機構の駆動期間に応じて修正した目標バルブ可変量をそのまま採用することを中止して、各気筒の目標バルブリフト量を増加させるようにすると良い。このようにすれば、各気筒の目標バルブリフト量を増加させることで、目標バルブリフト量に対する実バルブリフト量のばらつき（各気筒の部品公差や組付公差によるばらつき）の割合を小さくすることができ、気筒間のバルブリフト量のばらつき（又は吸入空気量のばらつき）を許容範囲内に抑えることができる。
【００２６】
また、可変バルブ機構の駆動期間が全バルブ閉弁期間よりも長くなると、各気筒のバルブプロフィールが過渡状態となってしまい、気筒間のバルブリフト量のばらつき（又は吸入空気量のばらつき）を精度良く補正することができなくなるため、請求項７のように、可変バルブ機構の駆動期間が全バルブ閉弁期間よりも長くなったときに、各気筒の目標バルブリフト量を増加させて、気筒間のバルブリフト量のばらつき（又は吸入空気量のばらつき）を許容範囲内に抑えるようにしても良い。
【００２７】
更に、請求項８のように、各気筒の目標バルブリフト量を増加させたときに、内燃機関のスロットルバルブを制御して吸入空気量を制御するようにしても良い。このようにすれば、各気筒の目標バルブリフト量の増加による吸入空気量の増加分を、スロットルバルブ制御による吸入空気量制御によって減少させることができるので、各気筒の目標バルブリフト量を増加させても、各気筒のトルクをほぼ一定に保つことができる。
【００２８】
【発明の実施の形態】
以下、本発明の一実施形態を図面に基づいて説明する。まず、図１に基づいてエンジン制御システム全体の概略構成を説明する。内燃機関である例えば直列４気筒のエンジン１１は、第１気筒＃１〜第４気筒＃４の４つの気筒を有し、このエンジン１１の吸気管１２の最上流部には、エアクリーナ１３が設けられ、このエアクリーナ１３の下流側に、吸入空気量を検出するエアフローメータ１４が設けられている。このエアフローメータ１４の下流側には、ＤＣモータ等によって開度調節されるスロットルバルブ１５とスロットル開度を検出するスロットル開度センサ１６とが設けられている。
【００２９】
更に、スロットルバルブ１５の下流側には、サージタンク１７が設けられ、このサージタンク１７には、吸気管圧力を検出する吸気管圧力センサ１８が設けられている。また、サージタンク１７には、エンジン１１の各気筒に空気を導入する吸気マニホールド１９が設けられ、各気筒の吸気マニホールド１９の吸気ポート近傍に、それぞれ燃料を噴射する燃料噴射弁２０が取り付けられている。また、エンジン１１のシリンダヘッドには、各気筒毎に点火プラグ２１が取り付けられ、各点火プラグ２１の火花放電によって筒内の混合気に着火される。
【００３０】
また、エンジン１１の吸気バルブ２８と排気バルブ２９には、それぞれリフト量を可変する可変バルブリフト機構３０，３１（可変バルブ機構）が設けられている。更に、吸気バルブ２８と排気バルブ２９に、それぞれバルブタイミング（開閉タイミング）を可変する可変バルブタイミング機構を設けるようにしても良い。
【００３１】
一方、エンジン１１の排気管２２には、排出ガス中のＣＯ，ＨＣ，ＮＯｘ等を浄化する三元触媒等の触媒２３が設けられ、この触媒２３の上流側に、排出ガスの空燃比又はリッチ／リーン等を検出する排出ガスセンサ２４（空燃比センサ、酸素センサ等）が設けられている。また、エンジン１１のシリンダブロックには、冷却水温を検出する冷却水温センサ２５や、エンジン１１のクランク軸が一定クランク角（例えば３０℃Ａ）回転する毎にパルス信号を出力するクランク角センサ２６が取り付けられている。このクランク角センサ２６の出力信号に基づいてクランク角やエンジン回転速度が検出される。
【００３２】
これら各種センサの出力は、エンジン制御回路（以下「ＥＣＵ」と表記する）２７に入力される。このＥＣＵ２７は、マイクロコンピュータを主体として構成され、内蔵されたＲＯＭ（記憶媒体）に記憶された各種のエンジン制御プログラムを実行することで、エンジン運転状態に応じて燃料噴射弁２０の燃料噴射量や点火プラグ２１の点火時期を制御する。
【００３３】
次に、図２に基づいて吸気バルブ２８の可変バルブリフト機構３０の構成を説明する。尚、排気バルブ２９の可変バルブリフト機構３１は、吸気バルブ２８の可変バルブリフト機構３０と実質的に同一構成であるため、説明を省略する。
【００３４】
図２に示すように、吸気バルブ２８を駆動するためのカムシャフト３２とロッカーアーム３３との間に、リンクアーム３４が設けられ、このリンクアーム３４の上方に、ステッピングモータ等のモータ４１で回動駆動されるコントロールシャフト３５が設けられている。モータ４１の回動軸４１ａに連結されたウォーム４２と、コントロールシャフト３５と一体的に回動するように設けられたウォームホイール４３とが噛み合うことで、モータ４１の回転力がコントロールシャフト３５に伝達されるようになっている。また、モータ４１には、モータ４１の回転角度（回動軸４１ａの回転角度）を検出するエンコーダ等のモータ回転角度センサ４４（図１参照）が設けられている。
【００３５】
コントロールシャフト３５には、偏心カム３６が一体的に回動可能に設けられ、この偏心カム３６の軸心に対して偏心した位置に、リンクアーム３４が支持軸（図示せず）を介して揺動可能に支持されている。このリンクアーム３４の中央部には、揺動カム３８が設けられ、この揺動カム３８の側面が、カムシャフト３２に設けられたカム３７の外周面に当接している。また、リンクアーム３４の下端部には、押圧カム３９が設けられ、この押圧カム３９の下端面が、ロッカーアーム３３の中央部に設けられたローラ４０の上端面に当接している。
【００３６】
これにより、カムシャフト３２の回転によってカム３７が回転すると、そのカム３７の外周面形状に追従してリンクアーム３４の揺動カム３８が左右に移動して、リンクアーム３４が左右に揺動する。リンクアーム３４が左右に揺動すると、押圧カム３９が左右に移動するため、押圧カム３９の下端面形状に応じてロッカーアーム３３のローラ４０が上下に移動して、ロッカーアーム３３が上下に揺動する。このロッカーアーム３３の上下動によって吸気バブル２８が上下動するようになっている。
【００３７】
一方、コントロールシャフト３５の回転によって偏心カム３６が回転すると、リンクアーム３４の支持軸の位置が移動して、リンクアーム３４の押圧カム３９とロッカーアーム３３のローラ４０との初期の接触点位置が変化する。また、リンクアーム３４の押圧カム３９の下端面は、左側部分にロッカーアーム３３の押圧量が０（吸気バルブ２８のリフト量が０）となるような曲率でベース曲面３９ａが形成され、このベース曲面３９ａから右方に向かうに従ってロッカーアーム３３の押圧量が大きくなる（吸気バルブ２８のリフト量が大きくなる）ような曲率で押圧曲面３９ｂが形成されている。
【００３８】
吸気バルブ２８の最大リフト量を大きくする高リフトモードの場合には、コントロールシャフト３５の回転によってリンクアーム３４の押圧カム３９とロッカーアーム３３のローラ４０との初期の接触点位置を右方に移動させる。これにより、カム３７の回転によって押圧カム３９が左右に移動したときに押圧カム３９の下端面のうちローラ４０に接触する区間が右方に移動するため、ロッカーアーム３３の最大押圧量が大きくなって吸気バルブ２８の最大リフト量が大きくなると共に、ロッカーアーム３３が押圧される期間が長くなって吸気バブル２８の開弁期間が長くなる。
【００３９】
一方、吸気バルブ２８の最大リフト量を小さくする低リフトモードの場合には、コントロールシャフト３５の回転によってリンクアーム３４の押圧カム３９とロッカーアーム３３のローラ４０との初期の接触点位置を左方に移動させる。これにより、カム３７の回転によって押圧カム３９が左右に移動したときに押圧カム３９の下端面のうちローラ４０に接触する区間が左方に移動するため、ロッカーアーム３３の最大押圧量が小さくなって吸気バルブ２８の最大リフト量が小さくなると共に、ロッカーアーム３３が押圧される期間が短くなって吸気バブル２８の開弁期間が短くなる。
【００４０】
以上説明した可変バルブリフト機構３０では、モータ４１でコントロールシャフト３５を回転させてリンクアーム３４の押圧カム３９とロッカーアーム３３のローラ４０との初期の接触点位置を連続的に移動させれば、例えば図３に示すように、直列４気筒エンジン１１の全ての気筒（＃１〜＃４）の吸気バルブ２８の最大リフト量と開弁期間（以下単に「リフト量」という）を一括して連続的に可変することができる。
【００４１】
ＥＣＵ２７は、ＲＯＭに記憶された可変バルブ制御ルーチン（図示せず）を実行することで、アクセル開度やエンジン運転状態等に基づいて吸気バルブ２８の可変バルブリフト機構３０を制御して、吸気バルブ２８のリフト量を連続的に可変して吸入空気量を制御する。尚、可変バルブリフト機構３０と可変バルブタイミング機構を併用したシステムの場合には、リフト量とバルブタイミングの両方を連続的に可変して吸入空気量を制御するようにしても良い。
【００４２】
また、ＥＣＵ２７は、後述する気筒間ばらつき補正用の各ルーチンを実行することで、エアフローメータ１４の出力に基づいて各気筒の気筒間吸入空気量ばらつき率ＤＥＶを算出し、この気筒間吸入空気量ばらつき率ＤＥＶに基づいて気筒間の実吸入空気量のばらつきが小さくなるように各気筒毎に吸気バルブ２８の目標リフト量ＶＶＬＭを設定する。そして、図１４に示すように、全気筒の吸気バルブ２８が閉弁している全吸気バルブ閉弁期間になる毎に、可変バルブリフト機構３０のモータ４１を次の吸気気筒の目標リフト量ＶＶＬＭに相当する位置まで高速駆動することで、吸入空気量を気筒別に制御して気筒間の吸入空気量ばらつきを補正する。
【００４３】
更に、ＥＣＵ２７は、可変バルブリフト機構３０のモータ４１を次の吸気気筒の目標リフト量ＶＶＬＭに相当する位置まで駆動するのに要するモータ駆動期間ＴＡＣＴを算出し、このモータ駆動期間ＴＡＣＴが全吸気バルブ閉弁期間ＴＣＬＯＳＥよりも長くなったときには、図１５に示すように、各気筒の目標リフト量ＶＶＬＭを小さくして各気筒の吸気バルブ開弁期間ＴＯＰＥＮを短くすることで、全吸気バルブ閉弁期間ＴＣＬＯＳＥの長さを可変バルブリフト機構３０のモータ駆動期間ＴＡＣＴ以上にする。これにより、全吸気バルブ閉弁期間ＴＣＬＯＳＥ内に可変バルブリフト機構３０の駆動を終了して、各気筒のバルブプロフィールが過渡状態となることを回避する。
【００４４】
このように各気筒の吸気バルブ２８の目標リフト量ＶＶＬＭを小さくして吸気バルブ開弁期間ＴＯＰＥＮを短くすると、それに伴って各気筒の吸入空気量が減少してトルクが低下してしまう。
【００４５】
そこで、ＥＣＵ２７は、図１２に示すように、各気筒の吸気バルブ２８の目標リフト量を小さくして吸気バルブ開弁期間を短くする場合には、各気筒の吸気バルブ２８の目標バルブタイミングを遅角補正する。一般に、各気筒の吸気バルブタイミングを遅角すると、バルブ開弁時のピストン位置が下がってバルブ開弁時の筒内圧が低下するため、各気筒の吸気流速が速くなって吸入空気量が増加する。従って、各気筒の吸気バルブ２８の目標リフト量を小さくして吸気バルブ開弁期間を短くする場合に、各気筒の吸気バルブ２８の目標バルブタイミングを遅角補正すれば、吸気バルブ開弁期間の減少による吸入空気量の減少分を、吸気バルブタイミングの遅角補正による吸入空気量の増加分で打ち消して、トルクをほぼ同等に維持することができる。
【００４６】
以下、本実施形態でＥＣＵ２７が実行する気筒間ばらつき補正用の各ルーチンの処理内容を説明する。
【００４７】
［気筒間ばらつき補正ルーチン］
図４に示す気筒間ばらつき補正ルーチンは、エアフローメータ１４の出力電圧のＡ／Ｄ変換タイミング（例えば４ｍｓ周期）で起動される。本ルーチンが起動されると、まず、ステップ１０１で、気筒間ばらつき補正実行条件が成立しているか否かを判定する。ここで、気筒間ばらつき補正実行条件は、例えば、次の２つの条件▲１▼、▲２▼を両方とも満たすことである。
▲１▼始動後所定時間以上が経過していること（つまり始動直後の不安定な運転状態でないこと）
▲２▼過渡運転状態でないこと（つまり定常運転状態であること）
【００４８】
これら２つの条件▲１▼、▲２▼を両方とも満たせば、気筒間ばらつき補正実行条件が成立するが、いずれか一方でも満たさない条件があれば、気筒間ばらつき補正実行条件が不成立となる。もし、気筒間ばらつき補正実行条件が不成立と判定されれば、ステップ１０２以降の気筒間ばらつき補正に関する処理を実行することなく、本ルーチンを終了する。
【００４９】
一方、上記ステップ１０１で、気筒間ばらつき補正実行条件が成立していると判定された場合には、ステップ１０２以降の気筒間ばらつき補正に関する処理を次のようにして実行する。まず、ステップ１０２で、後述する図６の気筒間吸入空気量ばらつき率算出ルーチンを実行して、各気筒のエアフローメータ１４の出力に基づいて各気筒の気筒間吸入空気量ばらつき率ＤＥＶ（＃ｉ）を算出する。ここで、（＃ｉ）は気筒番号であり、（＃１）〜（＃４）のいずれかを意味する。
【００５０】
この後、ステップ１０３に進み、各気筒毎に気筒間吸入空気量ばらつき率ＤＥＶ（＃ｉ）に応じたリフト補正量ＦＶＶＬ（＃ｉ）を図５のマップを用いて算出する。図５のマップは、気筒間吸入空気量ばらつき率ＤＥＶ（＃ｉ）が１よりも大きい領域では、リフト補正量ＦＶＶＬ（＃ｉ）が減量値（マイナス値）となり、気筒間吸入空気量ばらつき率ＤＥＶ（＃ｉ）が１よりも小さい領域では、リフト補正量ＦＶＶＬ（＃ｉ）が増量値（プラス値）となる。つまり、ある気筒の吸入空気量が全気筒の平均吸入空気量よりも多くなるほど、リフト補正量ＦＶＶＬ（＃ｉ）による減量補正量が大きくなり、反対に、ある気筒の吸入空気量が全気筒の平均吸入空気量よりも少なくなるほど、リフト補正量ＦＶＶＬ（＃ｉ）による増量補正量が大きくなって、気筒間の実吸入空気量のばらつきが小さくなるようにしている。尚、気筒間吸入空気量ばらつき率ＤＥＶ（＃ｉ）が１付近の所定領域では、リフト補正量ＦＶＶＬ（＃ｉ）＝０に設定され、吸気バルブリフト量ＶＶＬが補正されない。
【００５１】
リフト補正量ＦＶＶＬ（＃ｉ）の算出後、ステップ１０４に進み、後述する図７のバルブ開閉状態推定ルーチンを実行して、全気筒の吸気バルブ２８が閉弁している全吸気バルブ閉弁期間を推定し、バルブ開閉状態フラグＸＬＩＦＴ０を、全気筒の吸気バルブ２８が閉弁していることを意味する「ＯＮ」にセットするか又は少なくとも１つの吸気バルブ２８が開弁していることを意味する「ＯＦＦ」にリセットする。
【００５２】
この後、ステップ１０５に進み、全気筒の吸気バルブ２８が閉弁しているか否か（バルブ開閉状態フラグＸＬＩＦＴ０＝ＯＮか否か）を判定し、少なくとも１つの吸気バルブ２８が開弁していると判定されれば、そのまま本ルーチンを終了する。
【００５３】
その後、ステップ１０５で、全気筒の吸気バルブ２８が閉弁していると判定されたときに、ステップ１０６に進み、補正前の全気筒の平均リフト量ＶＶＬに次の吸気気筒のリフト補正量ＦＶＶＬ（＃ｉ）を加算して、気筒別目標リフト量ＶＶＬＭを求める。
【００５４】
次の吸気気筒が第１気筒＃１のとき（つまり第１気筒＃１の吸気行程前）には、第１気筒＃１のリフト補正量ＦＶＶＬ（＃１）を全気筒の平均リフト量ＶＶＬに加算して気筒別目標リフト量ＶＶＬＭを求める。
ＶＶＬＭ＝ＶＶＬ＋ＦＶＶＬ（＃１）
【００５５】
次の吸気気筒が第２気筒＃２のとき（つまり第２気筒＃２の吸気行程前）には、第２気筒＃２のリフト補正量ＦＶＶＬ（＃２）を全気筒の平均リフト量ＶＶＬに加算して気筒別目標リフト量ＶＶＬＭを求める。
ＶＶＬＭ＝ＶＶＬ＋ＦＶＶＬ（＃２）
【００５６】
次の吸気気筒が第３気筒＃３のとき（つまり第３気筒＃３の吸気行程前）には、第３気筒＃３のリフト補正量ＦＶＶＬ（＃３）を全気筒の平均リフト量ＶＶＬに加算して気筒別目標リフト量ＶＶＬＭを求める。
ＶＶＬＭ＝ＶＶＬ＋ＦＶＶＬ（＃３）
【００５７】
次の吸気気筒が第４気筒＃４のとき（つまり第４気筒＃４の吸気行程前）には、第４気筒＃４のリフト補正量ＦＶＶＬ（＃４）を全気筒の平均リフト量ＶＶＬに加算して気筒別目標リフト量ＶＶＬＭを求める。
ＶＶＬＭ＝ＶＶＬ＋ＦＶＶＬ（＃４）
【００５８】
このようにして、全気筒の吸気バルブ２８が閉弁している全吸気バルブ閉弁期間になる毎に、次の吸気気筒のリフト補正量ＦＶＶＬ（＃ｉ）を用いて、次の吸気気筒の目標リフト量ＶＶＬＭを設定する。このステップ１０６の処理が特許請求の範囲でいう気筒別目標バルブ可変量設定手段としての役割を果たす。
【００５９】
この後、ステップ１０７に進み、全吸気バルブ閉弁期間になる毎に、気筒別目標リフト量ＶＶＬＭに応じて可変バルブリフト機構３０のモータ４１を高速駆動して、全吸気バルブ閉弁期間内に可変バルブリフト機構３０のモータ４１を次の吸気気筒の目標リフト量ＶＶＬＭに相当する位置まで駆動する。このようにして、各気筒の吸気バルブ２８のリフト量を気筒別に制御する“気筒別可変バルブ制御”を実行することで、各気筒の吸入空気量を気筒別に制御して、気筒間の吸入空気量ばらつきを補正する。このステップ１０７の処理が特許請求の範囲でいう気筒別可変バルブ制御手段としての役割を果たす。
【００６０】
［気筒間吸入空気量ばらつき率算出ルーチン］
図４のステップ１０２で、図６に示す気筒間吸入空気量ばらつき率算出ルーチンが起動されると、まず、ステップ２０１で、エアフローメータ１４で検出した瞬時空気流量ＧＡを読み込んだ後、ステップ２０２に進み、クランク角カウンタＣＣＲＮＫのカウント値を読み込む。このクランク角カウンタＣＣＲＮＫは、クランク角センサ２６の出力信号に基づいて例えば３０℃Ａ毎に「１」ずつインクリメントされるため、クランク角カウンタＣＣＲＮＫの２４カウントが１サイクル（７２０℃Ａ）に相当する。尚、クランク角カウンタＣＣＲＮＫは、「２４」になった時点で「０」にリセットされる。また、クランク角カウンタＣＣＲＮＫ＝０のクランク回転位置が、第１気筒＃１の圧縮上死点（圧縮ＴＤＣ）に相当し、クランク角カウンタＣＣＲＮＫ＝６、１２、１８のクランク回転位置が、それぞれ第３気筒＃３、第４気筒＃４、第２気筒＃２の圧縮ＴＤＣに相当するように設定されている。
【００６１】
この後、ステップ２０３に進み、各気筒の吸入空気量平均値ＧＡａｖｅ（＃ｉ）  を算出する。
この場合、クランク角カウンタＣＣＲＮＫ＝１２〜１７の期間（つまり第１気筒＃１の吸気行程に対応する期間）は、その期間の瞬時空気流量ＧＡの平均値を第１気筒＃１の吸入空気流量平均値ＧＡａｖｅ（＃１）  とする。
【００６２】
クランク角カウンタＣＣＲＮＫ＝６〜１１の期間（つまり第２気筒＃２の吸気行程に対応する期間）は、その期間の瞬時空気流量ＧＡの平均値を、第２気筒＃２の吸入空気流量平均値ＧＡａｖｅ（＃２）  とする。
【００６３】
クランク角カウンタＣＣＲＮＫ＝１８〜２３の期間（つまり第３気筒＃３の吸気行程に対応する期間）は、その期間の瞬時空気流量ＧＡの平均値を、第３気筒＃３の吸入空気流量平均値ＧＡａｖｅ（＃３）  とする。
【００６４】
クランク角カウンタＣＣＲＮＫ＝０〜５の期間（つまり第４気筒＃４の吸気行程に対応する期間）は、その期間の瞬時空気流量ＧＡの平均値を、第４気筒＃４の吸入空気流量平均値ＧＡａｖｅ（＃４）  とする。
この後、ステップ２０４で、各気筒の気筒間吸入空気量ばらつき率ＤＥＶ（＃ｉ）を次式により算出する。
【００６５】
【数１】
2004316453.tif 000003
【００６６】
上式の分母は、全気筒の吸入空気流量平均値ＧＡａｖｅ（＃１）  〜ＧＡａｖｅ（＃４）  の平均値である。
尚、図６の気筒間吸入空気量ばらつき率算出ルーチンでは、各気筒の吸入空気流量平均値ＧＡａｖｅ（＃ｉ）  を用いて気筒間吸入空気量ばらつき率ＤＥＶ（＃ｉ）を算出したが、各気筒の吸入空気流量極大値や吸入空気量積算値を用いて気筒間吸入空気量ばらつき率ＤＥＶ（＃ｉ）を算出するようにしても良い。また、各気筒の吸入空気量に応じて発生する吸気脈動がエアフローメータ１４で検出されるまでの時間遅れ等を考慮して、各気筒の吸入空気流量平均値の算出期間を適宜変更しても良い。
【００６７】
また、吸気管圧力センサ１８の出力に基づいて気筒間吸入空気量ばらつき率ＤＥＶ（＃ｉ）を算出するようにしても良い。また、各気筒の筒内圧を検出する筒内圧センサや各気筒のバルブリフト量を検出するリフトセンサを備えたシステムでは、筒内圧センサの出力やリフトセンサの出力に基づいて気筒間吸入空気量ばらつき率ＤＥＶ（＃ｉ）を算出するようにしても良い。
【００６８】
［バルブ開閉状態推定ルーチン］
図４のステップ１０４で、図７に示すバルブ開閉状態推定ルーチンが起動されると、まず、ステップ３０１で、図４のステップ１０７で算出した目標リフト量ＶＶＬＭを読み込んだ後、ステップ３０２に進み、図８のマップを用いて、目標リフト量ＶＶＬＭに応じて全吸気バルブ閉弁期間（全気筒の吸気バルブ２８が閉弁しているクランク角範囲）を求める。
【００６９】
一般に、吸気バルブ２８のリフト量が小さくなるほど、全吸気バルブ閉弁期間が長くなるため、図８のマップは、吸気バルブ２８の目標リフト量ＶＶＬＭが小さくなるほど、全吸気バルブ閉弁期間が長くなるように設定されている。図８のマップは、予め、設計値、実験、シミュレーション等によって設定され、ＥＣＵ２７のＲＯＭに記憶されている。
【００７０】
この後、ステップ３０３に進み、現在のクランク角ＣＣＲＮＫが全吸気バルブ閉弁期間内であるか否かを判定する。その結果、現在のクランク角ＣＣＲＮＫが全吸気バルブ閉弁期間内であると判定された場合には、ステップ３０４に進み、バルブ開閉状態フラグＸＬＩＦＴ０を、全気筒の吸気バルブ２８が閉弁していることを意味する「ＯＮ」にセットする。
【００７１】
一方、現在のクランク角ＣＣＲＮＫが全吸気バルブ閉弁期間ではないと判定された場合には、ステップ３０５に進み、バルブ開閉状態フラグＸＬＩＦＴ０を、少なくとも１つの吸気バルブ２８が開弁していることを意味する「ＯＦＦ」にリセットする。
【００７２】
［バルブ可変量修正ルーチン］
図９及び図１０に示すバルブ可変量修正ルーチンは、気筒別可変バルブ制御の実行中に所定周期で実行され、特許請求の範囲でいうバルブ可変量修正手段としての役割を果たす。本ルーチンが起動されると、まず、ステップ４０１で、モータ回転角度センサ４４の出力信号に基づいて、可変バルブリフト機構３０のモータ４１を現在の位置から次の吸気気筒の目標リフト量ＶＶＬＭに相当する位置まで駆動するのに要するモータ駆動期間ＴＡＣＴ（℃Ａ）を算出する。
【００７３】
この後、ステップ４０２に進み、図７のステップ３０２で推定した全吸気バルブ閉弁期間（クランク角範囲）に基づいて全吸気バルブ閉弁期間ＴＣＬＯＳＥ（℃Ａ）を算出する。
【００７４】
この後、ステップ４０３に進み、可変バルブリフト機構３０のモータ駆動期間ＴＡＣＴが全吸気バルブ閉弁期間ＴＣＬＯＳＥよりも長いか否かを判定する。その結果、モータ駆動期間ＴＡＣＴが全吸気バルブ閉弁期間ＴＣＬＯＳＥ以下であると判定された場合には、全吸気バルブ閉弁期間内に可変バルブリフト機構３０の駆動を終了することができると判断して、ステップ１０４以降の目標バルブ可変量修正処理を実行することなく、本ルーチンを終了する。
【００７５】
一方、上記ステップ４０３で、モータ駆動期間ＴＡＣＴが全吸気バルブ閉弁期間ＴＣＬＯＳＥよりも長いと判定された場合には、全吸気バルブ閉弁期間内に可変バルブリフト機構３０の駆動を終了することができないと判断して、ステップ１０４以降の目標バルブ可変量修正処理を次のようにして実行する。
【００７６】
まず、ステップ４０４で、モータ駆動期間ＴＡＣＴと全吸気バルブ閉弁期間ＴＣＬＯＳＥとの差（つまり全吸気バルブ閉弁期間ＴＣＬＯＳＥに対するモータ駆動期間ＴＡＣＴの超過分）を求め、その値をバルブ開弁期間変更量ΔＴＯＰＥＮ（℃Ａ）とする。
ΔＴＯＰＥＮ＝ＴＡＣＴ−ＴＣＬＯＳＥ
【００７７】
このバルブ開弁期間変更量ΔＴＯＰＥＮだけ吸気バルブ開弁期間ＴＯＰＥＮを短くすれば、全吸気バルブ閉弁期間ＴＣＬＯＳＥがバルブ開弁期間変更量ΔＴＯＰＥＮだけ長くなるため、全吸気バルブ閉弁期間ＴＣＬＯＳＥの長さがモータ駆動期間ＴＡＣＴ以上（実際にはＴＣＬＯＳＥ＝ＴＡＣＴ）になる。
【００７８】
この後、ステップ４０５に進み、バルブ開弁期間変更量ΔＴＯＰＥＮだけ吸気バルブ開弁期間ＴＯＰＥＮを短くするように平均リフト量ＶＶＬを次のようにして変更する。まず、可変バルブリフト機構３０のバルブリフト特性（図４参照）に基づいて前回の平均リフト量ＶＶＬに対応した前回の目標吸気バルブ開弁期間ＴＯＰＥＮＭを算出する。
ＴＯＰＥＮＭ←ＶＶＬ
【００７９】
次に、この前回の目標吸気バルブ開弁期間ＴＯＰＥＮＭからバルブ開弁期間変更量ΔＴＯＰＥＮを減算して目標吸気バルブ開弁期間ＴＯＰＥＮを変更する。
ＴＯＰＥＮＭ＝ＴＯＰＥＮＭ−ΔＴＯＰＥＮ
【００８０】
そして、再び可変バルブリフト機構３０のバルブリフト特性（図４参照）に基づいて変更後の目標吸気バルブ開弁期間ＴＯＰＥＮＭに対応した平均リフト量ＶＶＬを算出する。
ＶＶＬ←ＴＯＰＥＮＭ
このようにして平均リフト量ＶＶＬを変更することで、図４のステップ１０６で算出する各気筒の目標リフト量ＶＶＬＭが変更される。
【００８１】
この後、ステップ４０６に進み、バルブ開弁期間変更量ΔＴＯＰＥＮに応じたバルブタイミング変更量ΔＶＶＴを図１１のマップを用いて算出する。図１１のマップは、バルブ開弁期間変更量ΔＴＯＰＥＮが大きくなるほどバルブタイミング変更量ΔＶＶＴが大きくなるように設定されている。これにより、バルブ開弁期間変更量ΔＴＯＰＥＮを増加させて目標吸気バルブ開弁期間ＴＯＰＥＮＭを減少させる場合には、バルブタイミング変更量ΔＶＶＴを増加させて目標バルブタイミングＶＶＴＭを遅角補正することで、吸気バルブ開弁期間ＴＯＰＥＮの減少による吸入空気量の減少分を、バルブタイミングＶＶＴの遅角補正による吸入空気量の増加分で打ち消して、トルクをほぼ同等に維持する。これとは反対に、バルブ開弁期間変更量ΔＴＯＰＥＮを減少させて目標吸気バルブ開弁期間ＴＯＰＥＮＭを増加させる場合には、バルブタイミング変更量ΔＶＶＴを減少させて目標バルブタイミングＶＶＴＭを進角補正することで、吸気バルブ開弁期間ＴＯＰＥＮの増加による吸入空気量の増加分を、バルブタイミングＶＶＴの進角補正による吸入空気量の減少分で打ち消して、トルクをほぼ同等に維持する。
【００８２】
この後、ステップ４０７に進み、前回の目標バルブタイミングＶＶＴＭからバルブタイミング変更量ΔＶＶＴを減算して目標バルブタイミングＶＶＴＭを変更する。
ＶＶＴＭ＝ＶＶＴＭ−ΔＶＶＴ
【００８３】
この後、図１０のステップ４０８に進み、▲１▼変更後の平均リフト量ＶＶＬが下限リフト量よりも小さいか否かによって変更後の目標吸気バルブ開弁期間ＴＯＰＥＮＭが下限値よりも短いか否かを判定すると共に、▲２▼変更後の目標バルブタイミングＶＶＴＭに応じた変更後の目標バルブ閉弁時期が下死点（ＢＤＣ）よりも遅角側であるか否かを判定する。
【００８４】
その結果、変更後の平均リフト量ＶＶＬが下限リフト量以上（変更後の目標吸気バルブ開弁期間ＴＯＰＥＮＭが最小開弁期間以上）であると判定され、且つ、目標バルブ閉弁時期が下死点よりも進角側であると判定された場合には、変更後の平均リフト量ＶＶＬと変更後の目標バルブタイミングＶＶＴＭをそのまま採用して、本ルーチンを終了する。
【００８５】
これに対して、ステップ４０８で、変更後の平均リフト量ＶＶＬが下限リフト量よりも小さい（つまり変更後の目標吸気バルブ開弁期間ＴＯＰＥＮＭが最小開弁期間よりも短い）と判定された場合、又は、目標バルブ閉弁時期が下死点よりも遅角側であると判定された場合には、変更後の平均リフト量ＶＶＬをそのまま採用することを中止して、ステップ４０９に進み、平均リフト量ＶＶＬを所定リフト量ＫＶＶＬに設定して各気筒の目標リフト量ＶＶＬＭを増加させる。この所定リフト量ＫＶＶＬは、目標リフト量ＶＶＬＭに対する実リフト量のばらつき（各気筒の部品公差や組付公差によるばらつき）の割合を所定のばらつき許容値（例えば５％）以下にするリフト量である。
【００８６】
この場合、変更後の目標バルブタイミングＶＶＴＭをそのまま採用しても良いが、目標バルブタイミングＶＶＴＭを変更前の値に戻すようにしても良い。
【００８７】
この後、ステップ４１０に進み、各気筒の目標リフト量ＶＶＬＭの増加による吸入空気量の増加分を、スロットルバルブ制御による吸入空気量制御によって減少させて、各気筒のトルクをほぼ一定にする。このステップ４１０の処理が特許請求の範囲でいうスロットル制御手段としての役割を果たす。
【００８８】
以上説明した本実施形態の実行例を図１３乃至図１５に示すタイムチャートを用いて説明する。図１３に示すように、気筒間ばらつき補正実行条件が成立して気筒間ばらつき補正実行フラグがＯＮされている期間は、エアフローメータ１４の出力に基づいて各気筒の気筒間吸入空気量ばらつき率ＤＥＶ（＃ｉ）を算出し、この気筒間吸入空気量ばらつき率ＤＥＶ（＃ｉ）に基づいて、気筒間の実吸入空気量のばらつきが小さくなるように各気筒のリフト補正量ＦＶＶＬ（＃ｉ）を算出する。
【００８９】
そして、図１４に示すように、全気筒の吸気バルブ２８が閉弁している全吸気バルブ閉弁期間になる毎に、次の吸気気筒のリフト補正量ＦＶＶＬ（＃ｉ）を全気筒の平均リフト量ＶＶＬに加算して、次の吸気気筒の目標リフト量ＶＶＬＭを設定し、可変バルブリフト機構３０のモータ４１を次の吸気気筒の目標リフト量ＶＶＬＭに相当する位置まで高速駆動することで、吸入空気量を気筒別に制御して気筒間の吸入空気量ばらつきを補正する。
【００９０】
これにより、可変バルブリフト機構３０のモータ駆動期間ＴＡＣＴが、全吸気バルブ閉弁期間ＴＣＬＯＳＥよりも短くなる場合には、全吸気バルブ閉弁期間ＴＣＬＯＳＥ内に可変バルブリフト機構３０の駆動を終了することができるので、可変バルブリフト機構３０の駆動の途中で吸気バルブ２８が開弁する事態を回避することができて、各気筒のバルブプロフィールが過渡状態となることを回避することができる。その結果、各気筒の実吸入空気量ばらつきを考慮して設定した目標リフト量ＶＶＬＭに対応した適正なバルブプロフィールで吸気バルブ２８を開くことができ、気筒別可変バルブ制御を精度良く行うことができる。
【００９１】
更に、気筒別可変バルブ制御の実行中は、可変バルブリフト機構３０のモータ駆動期間ＴＡＣＴを算出し、このモータ駆動期間ＴＡＣＴが全吸気バルブ閉弁期間ＴＣＬＯＳＥよりも長くなる場合には、図１３に示すように、目標吸気バルブ開弁期間ＴＯＰＥＮＭを短くし、それに対応して各気筒の目標リフト量ＶＶＬＭ（平均リフト量ＶＶＬ）を小さくすることで、図１５に示すように、各気筒の吸気バルブ開弁期間ＴＯＰＥＮを短くして、全吸気バルブ閉弁期間ＴＣＬＯＳＥの長さをモータ駆動期間ＴＡＣＴ以上に修正する。
【００９２】
これにより、変更前の目標リフト量ＶＶＬＭでは可変バルブリフト機構３０のモータ駆動期間ＴＡＣＴが全吸気バルブ閉弁期間ＴＣＬＯＳＥよりも長くなってしまう条件下（例えばバッテリ電圧低下時やエンジン高回転時）でも、全吸気バルブ閉弁期間ＴＣＬＯＳＥの長さを可変バルブリフト機構３０のモータ駆動期間ＴＡＣＴ以上に維持して、各気筒のバルブプロフィールが過渡状態となることを回避することができ、気筒別可変バルブ制御の制御精度の低下を少なくすることができる。
【００９３】
しかも、本実施形態では、可変バルブリフト機構３０のモータ駆動期間ＴＡＣＴが全吸気バルブ閉弁期間ＴＣＬＯＳＥよりも長くなって、全吸気バルブ閉弁期間ＴＣＬＯＳＥを長くする必要が生じたときのみ目標リフト量ＶＶＬＭ（平均リフト量ＶＶＬ）を変更するようにしたので、各気筒の実吸入空気量ばらつきを考慮して設定した目標リフト量ＶＶＬＭを必要以上に変更してしまうことを防止することができる。
【００９４】
また、本実施形態では、各気筒の目標リフト量ＶＶＬＭ（平均リフト量ＶＶＬ）を変更する際に、各気筒の目標吸気バルブ開弁期間ＴＯＰＥＮＭの減少／増加に応じて目標バルブタイミングＶＶＴを遅角／進角するようにしたので、吸気バルブ開弁期間ＴＯＰＥＮの変化による吸入空気量の変化分を、バルブタイミングＶＶＴの補正による吸入空気量の変化分で打ち消して、トルクをほぼ同等に維持することができ、ドライバビリティの悪化を防止することができる。
【００９５】
ところで、可変バルブリフト機構３０の可変範囲はストッパ機構等よって所定範囲内に制限されているため、各気筒の目標吸気バルブ開弁期間ＴＯＰＥＮＭが所定下限値よりも短い値に設定されると、各気筒の吸気バルブ開弁期間ＴＯＰＥＮを目標バルブ開弁期間ＴＯＰＥＮＭに制御することができなくなる。
【００９６】
また、各気筒の目標吸気バルブ開弁期間ＴＯＰＥＮＭの減少による吸入空気量の減少分を、各気筒の目標バルブタイミングＶＶＴＭの遅角補正による吸入空気量の増加分で打ち消してトルクを同等にする際に、目標バルブ閉弁時期が下死点よりも遅角側に設定されると、ピストンの上昇による筒内ガスの吸気ポートへの吹き返しが発生するため、バルブタイミングの遅角補正による吸入空気量の増加効果が低下して、トルクを同等にすることができなくなる。
【００９７】
これらの事情を考慮に入れて、本実施形態では、図１３に示すように、変更後の目標吸気バルブ開弁期間ＴＯＰＥＮＭが調整可能な最小開弁期間よりも短くなった場合（又は目標バルブ閉弁時期が下死点よりも遅角側になった場合）には、上述したような不具合が発生するため、その時点ｔ１  で、各気筒の目標リフト量ＶＶＬＭを所定リフト量ＫＶＶＬまで増加させる。これにより、目標リフト量ＶＶＬＭに対する実バルブリフト量のばらつき（各気筒の部品公差や組付公差によるばらつき）の割合を小さくすることができ、気筒間のバルブリフト量のばらつき（又は吸入空気量のばらつき）を許容範囲内に抑えることができる。
【００９８】
更に、本実施形態では、各気筒の目標リフト量ＶＶＬＭを増加させたときに、目標リフト量ＶＶＬＭの増加による吸入空気量の増加分を、スロットルバルブ制御による吸入空気量制御によって減少させるようにしたので、各気筒の目標リフト量ＶＶＬＭを増加させても、各気筒のトルクをほぼ一定に保つことができ、ドライバビリティの悪化を防止することができる。
【００９９】
尚、上記実施形態では、可変バルブリフト機構３０のモータ駆動期間ＴＡＣＴが全吸気バルブ閉弁期間ＴＣＬＯＳＥよりも長くなったときに、各気筒の目標リフト量ＶＶＬＭを変更して、全吸気バルブ閉弁期間ＴＣＬＯＳＥの長さをモータ駆動期間ＴＡＣＴ以上にするようにしたが、全吸気バルブ閉弁期間ＴＣＬＯＳＥに対するモータ駆動期間ＴＡＣＴの超過分を減少させて、各気筒のバルブプロフィールが過渡状態となる期間を短くするようにしても良い。
【０１００】
また、可変バルブリフト機構３０のモータ駆動期間ＴＡＣＴが全吸気バルブ閉弁期間ＴＣＬＯＳＥよりも長くなったときに、各気筒の目標リフト量ＶＶＬＭを増加させて、気筒間のバルブリフト量のばらつき（又は吸入空気量のばらつき）を許容範囲内に抑えるようにしても良い。
【０１０１】
また、本発明の適用範囲は、吸気バルブのリフト量を可変する可変バルブ制御システムに限定されず、吸気バルブのリフト量、作用角、バルブタイミングの少なくとも１つを可変する可変バルブ制御システムに広く適用することができる。また、排気バルブについても、本発明を適用して実施できる。
【０１０２】
更に、本発明は、気筒間の吸入空気量ばらつきに基づいて気筒別可変バルブ制御を行うシステムに限定されず、気筒間のバルブ可変量ばらつきに基づいて気筒別可変バルブ制御を行うシステムに適用しても良い。
【０１０３】
その他、本発明は、直列エンジンに限定されず、Ｖ型エンジン、水平対向エンジン等、種々の複数気筒エンジンに適用でき、気筒数も適宜変更しても良いことは言うまでもない。
【図面の簡単な説明】
【図１】本発明の一実施形態におけるエンジン制御システム全体の概略構成図
【図２】可変バルブリフト機構の正面図
【図３】可変バルブリフト機構によるバルブリフト量の連続可変動作を説明するためのバルブリフト特性図
【図４】気筒間ばらつき補正ルーチンの処理の流れを示すフローチャート
【図５】リフト補正量ＦＶＶＬのマップを概念的に示す図
【図６】気筒間吸入空気量ばらつき率算出ルーチンの処理の流れを示すフローチャート
【図７】バルブ開閉状態推定ルーチンの処理の流れを示すフローチャート
【図８】全吸気バルブ閉弁期間のマップを概念的に示す図
【図９】バルブ可変量修正ルーチンの処理の流れを示すフローチャート（その１）
【図１０】バルブ可変量修正ルーチンの処理の流れを示すフローチャート（その２）
【図１１】バルブ開弁期間変更量ΔＴＯＰＥＮに応じたバルブタイミング変更量ΔＶＶＴのマップを概念的に示す図
【図１２】バルブ可変量の変更前後でトルクを同等する方法を説明するためのバルブリフト特性図
【図１３】気筒間ばらつき補正の実行例を示すタイムチャート
【図１４】モータ駆動期間が短い時の気筒別可変バルブ制御の実行例を示すタイムチャート
【図１５】モータ駆動期間が長い時の気筒別可変バルブ制御の実行例を示すタイムチャート
【符号の説明】
１１…エンジン（内燃機関）、１２…吸気管、１４…エアフローメータ、１５…スロットルバルブ、２０…燃料噴射弁、２１…点火プラグ、２２…排気管、２６…クランク角センサ、２７…ＥＣＵ（気筒間ばらつき算出手段，気筒別目標バルブ可変量設定手段，気筒別可変バルブ制御手段，バルブ可変量修正手段，スロットル制御手段）、２８…吸気バルブ、２９…排気バルブ、３０，３１…可変バルブリフト機構（可変バルブ機構）、４１…モータ、４４…モータ回転角度センサ。
【図１】
2004316453.tif 000004
【図２】
2004316453.tif 000005
【図３】
2004316453.tif 000006
【図４】
2004316453.tif 000007
【図５】
2004316453.tif 000008
【図６】
2004316453.tif 000009
【図７】
2004316453.tif 000010
【図８】
2004316453.tif 000011
【図９】
2004316453.tif 000012
【図１０】
2004316453.tif 000013
【図１１】
2004316453.tif 000014
【図１２】
2004316453.tif 000015
【図１３】
2004316453.tif 000016
【図１４】
2004316453.tif 000017
【図１５】
2004316453.tif 000018