(57)【要約】    【課題】  可変吸気バルブリフト装置の応答遅れ時間のばらつきによる制御モード切換時のトルクショックを低減できるようにする。    【解決手段】  エンジン運転中に可変吸気バルブリフト装置の応答遅れ時間を学習し、その応答遅れ時間学習値Ａdpをディレイ時間として設定して、可変吸気バルブリフト装置に制御モード切換指令が出力されてからディレイ時間が経過したときに制御モード切換時のトルク変動が小さくなるように点火時期等を補正するトルク補正を行う。その際、可変吸気バルブリフト装置の応答遅れ時間Ａdpの学習は、可変吸気バルブリフト装置の制御モード切換時の吸入空気量の変動量ΔＧa に応じて応答遅れ時間の変化量ΔＡdpを算出して、それを応答遅れ時間学習値の更新量ΔＡdpとし、前回の応答遅れ時間学習値Ａdp(old) に更新量ΔＡdpを加算して今回の応答遅れ時間学習値Ａdp(new) を求める。    【選択図】  図５
2006177246.tif 000002
【特許請求の範囲】
【請求項１】
内燃機関の吸気バルブ及び／又は排気バルブのリフト特性を切り換える可変バルブリフト装置を備え、内燃機関の運転状態に応じて前記可変バルブリフト装置の制御モードを前記リフト特性が異なる複数の制御モード間で切り換える内燃機関の制御装置において、
内燃機関の運転中に前記可変バルブリフト装置に制御モード切換指令が出力されてから実際に該可変バルブリフト装置の制御モードが切り換わるまでの応答遅れ時間を学習する応答遅れ時間学習手段を備えていることを特徴とする内燃機関の制御装置。
【請求項２】
前記応答遅れ時間学習手段で学習した応答遅れ時間に相当するディレイ時間を設定し、前記可変バルブリフト装置に制御モード切換指令が出力されてから前記ディレイ時間が経過したときに前記可変バルブリフト装置の制御モード切換時のトルク変動が小さくなるように所定の制御パラメータを補正するトルク補正手段を備えていることを特徴とする請求項１に記載の内燃機関の制御装置。
【請求項３】
前記応答遅れ時間学習手段は、前記可変バルブリフト装置の制御モード切換時の吸入空気量、空燃比、推定トルク、実トルクのうちの少なくとも１つの変動量に応じて前記応答遅れ時間の学習値を更新することを特徴とする請求項２に記載の内燃機関の制御装置。
【請求項４】
前記応答遅れ時間学習手段は、内燃機関の温度又はそれに相関する情報に応じて区分された温度領域毎に前記応答遅れ時間を学習することを特徴とする請求項１乃至３のいずれかに記載の内燃機関の制御装置。
【請求項５】
前記応答遅れ時間の学習が実行された温度領域の応答遅れ時間の学習値に基づいて他の温度領域の応答遅れ時間の学習値を補正する学習値補正手段を備えていることを特徴とする請求項４に記載の内燃機関の制御装置。
【請求項６】
前記学習値補正手段は、各温度領域の応答遅れ時間の学習値が初期値にリセットされた後に前記応答遅れ時間の１回目の学習が実行されたときには、該学習が実行された温度領域の応答遅れ時間の学習値に基づいて該学習が実行された温度領域以外の全ての温度領域の応答遅れ時間の学習値を補正する全温度領域補正を行うことを特徴とする請求項５に記載の内燃機関の制御装置。
【請求項７】
前記学習値補正手段は、各温度領域の応答遅れ時間の学習値が初期値にリセットされた後に前記応答遅れ時間の２回目以降の学習が実行されたときには、前記全温度領域補正と、該学習が実行された温度領域に隣接する温度領域の応答遅れ時間の学習値を補正する隣接温度領域補正のうちの一方を選択して実行することを特徴とする請求項６に記載の内燃機関の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内燃機関の運転状態に応じて可変バルブリフト装置の制御モードを切り換える内燃機関の制御装置に関するものである。
【背景技術】
【０００２】
近年、車両に搭載される内燃機関においては、例えば、特許文献１（特許第２８２７７６８号公報）に記載されているように、吸気バルブや排気バルブのリフト量を切り換える可変バルブリフト装置を搭載したものがある。この特許文献１では、内燃機関の運転状態に応じて可変バルブリフト装置の制御モードを第１のリフトモードと第２のリフトモードとの間で切り換え、第１のリフトモードでは、吸気バルブを開閉駆動するカムを第１のカムに切り換えて吸気バルブのリフト量を小さくし、第２のリフトモードでは、吸気バルブを開閉駆動するカムを第２のカムに切り換えて吸気バルブのリフト量を大きくするようにしている。
【特許文献１】特許第２８２７７６８号公報（第１頁〜第３頁等）
【発明の開示】
【発明が解決しようとする課題】
【０００３】
一般に、可変バルブリフト装置に制御モード切換指令が出力されてから実際に可変バルブリフト装置の制御モードが切り換わるまでには応答遅れが存在する。そこで、本発明者らは、可変バルブリフト装置の応答遅れ時間に相当するディレイ時間を設定し、可変バルブリフト装置に制御モード切換指令が出力されてからディレイ時間が経過したときに、点火時期、燃料噴射量等を補正するトルク補正を行うことで、実際に可変バルブリフト装置の制御モードが切り換わるタイミングとトルク補正のタイミングとをほぼ一致させて、可変バルブリフト装置の制御モード切換時のトルクショックを低減するシステムを研究している。
【０００４】
しかし、予め実験データや設計データ等に基づいて可変バルブリフト装置の応答遅れ時間に相当するディレイ時間を設定しておいても、可変バルブリフト装置の個体差（製造ばらつき）や経時変化等によって可変バルブリフト装置の応答遅れ時間にばらつきが生じると、可変バルブリフト装置の応答遅れ時間と予め設定したディレイ時間とに差が生じて、可変バルブリフト装置の制御モードが切り換わるタイミングに対してトルク補正のタイミングがずれてしまい、可変バルブリフト装置の制御モード切換時にトルクショックが発生するという問題が生じる。
【０００５】
本発明は、このような事情を考慮してなされたものであり、従って本発明の目的は、可変バルブリフト装置の応答遅れ時間のばらつきによる制御モード切換時の問題を解決することができる内燃機関の制御装置を提供することにある。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、請求項１に係る発明は、内燃機関の吸気バルブ及び／又は排気バルブのリフト特性を切り換える可変バルブリフト装置を備え、内燃機関の運転状態に応じて可変バルブリフト装置の制御モードをリフト特性が異なる複数の制御モード間で切り換える内燃機関の制御装置において、応答遅れ時間学習手段によって内燃機関の運転中に可変バルブリフト装置に制御モード切換指令が出力されてから実際に可変バルブリフト装置の制御モードが切り換わるまでの応答遅れ時間を学習するようにしたものである。このようにすれば、可変バルブリフト装置の個体差や経時変化等によって可変バルブリフト装置の応答遅れ時間にばらつきが生じても、その応答遅れ時間を学習して可変バルブリフト装置の制御モード切換時の制御に反映させることができるため、可変バルブリフト装置の応答遅れ時間のばらつきによる制御モード切換時の問題を解決することができる。
【０００７】
例えば、請求項２のように、学習した応答遅れ時間に相当するディレイ時間を設定し、可変バルブリフト装置に制御モード切換指令が出力されてからディレイ時間が経過したときに可変バルブリフト装置の制御モード切換時のトルク変動が小さくなるように所定の制御パラメータを補正するトルク補正を行うようにすると良い。このようにすれば、可変バルブリフト装置の応答遅れ時間にばらつきが生じても、その応答遅れ時間に応じてトルク補正のディレイ時間を変化させて、可変バルブリフト装置の制御モードが切り換わるタイミングとトルク補正のタイミングとをほぼ一致させることができ、可変バルブリフト装置の制御モード切換時のトルクショックを低減することができる。
【０００８】
この場合、請求項３のように、可変バルブリフト装置の制御モード切換時の吸入空気量、空燃比、推定トルク、実トルクのうちの少なくとも１つの変動量に応じて応答遅れ時間の学習値を更新するようにすると良い。要するに、可変バルブリフト装置の応答遅れ時間が変化すると、その分、応答遅れ時間とディレイ時間とに差が生じて、可変バルブリフト装置の制御モードが切り換わるタイミングに対してトルク補正のタイミングがずれて、制御モード切換時に吸入空気量、空燃比、推定トルク、実トルク等が変動するため、制御モード切換時の吸入空気量、空燃比、推定トルク、実トルク等の変動量は、応答遅れ時間の変化量を反映した情報となる。従って、可変バルブリフト装置の制御モード切換時の吸入空気量、空燃比、推定トルク、実トルクのうちの少なくとも１つの変動量に応じて応答遅れ時間の学習値を更新すれば、可変バルブリフト装置の応答遅れ時間の変化に応じて応答遅れ時間の学習値を精度良く更新することができる。
【０００９】
一般に、内燃機関の温度に応じて作動油の温度が変化して可変バルブリフト装置の応答遅れ時間が変化するため、請求項４のように、内燃機関の温度又はそれに相関する情報に応じて区分された温度領域毎に応答遅れ時間を学習するようにしても良い。このようにすれば、内燃機関の温度（作動油の温度）に応じて可変バルブリフト装置の応答遅れ時間が変化するのに対応して、各温度領域毎に適正な応答遅れ時間を学習することができ、応答遅れ時間の学習精度を向上させることができる。
【００１０】
ところで、温度環境や走行パターン等によっては応答遅れ時間の学習が実行される温度領域に偏りが生じることがあり、学習頻度が多い温度領域では応答遅れ時間の学習精度が高くなるが、学習頻度が少ない温度領域では応答遅れ時間の学習精度が悪くなることがある。
【００１１】
この対策として、請求項５のように、応答遅れ時間の学習が実行された温度領域の応答遅れ時間の学習値に基づいて他の温度領域の応答遅れ時間の学習値を補正するようにしても良い。内燃機関の温度（作動油の温度）に応じて可変バルブリフト装置の応答遅れ時間が変化するため、各温度領域の応答遅れ時間には相関関係がある。従って、ある温度領域の応答遅れ時間の学習が実行されたときに、その温度領域の応答遅れ時間の学習値に基づいて他の温度領域の応答遅れ時間の学習値を補正すれば、他の温度領域の応答遅れ時間の学習値を精度良く更新することができ、学習頻度が少ない温度領域でも応答遅れ時間の学習精度を高めることができる。
【００１２】
更に、請求項６のように、各温度領域の応答遅れ時間の学習値が初期値にリセットされた後に応答遅れ時間の１回目の学習が実行されたときには、該学習が実行された温度領域の応答遅れ時間の学習値に基づいて該学習が実行された温度領域以外の全ての温度領域の応答遅れ時間の学習値を補正する全温度領域補正を行うようにしても良い。このようにすれば、バッテリ交換等によりバックアップＲＡＭ等に記憶された各温度領域の応答遅れ時間の学習値が全て初期値にリセットされた場合でも、その後、最初に応答遅れ時間の学習が実行されたときに、全ての温度領域の応答遅れ時間の学習値を初期値から更新して学習値の精度を高めることができる。
【００１３】
各温度領域の応答遅れ時間の学習値が初期値にリセットされた後に全温度領域補正を一度行った後は、必ずしも応答遅れ時間の学習が実行される毎に全温度領域補正を行う必要はないため、請求項７のように、各温度領域の応答遅れ時間の学習値が初期値にリセットされた後に応答遅れ時間の２回目以降の学習が実行されたときには、全温度領域補正と、該学習が実行された温度領域に隣接する温度領域の応答遅れ時間の学習値を補正する隣接温度領域補正のうちの一方を選択して実行するようにしても良い。このようにすれば、所定条件が成立した場合だけ全温度領域補正を行って、所定条件が不成立の場合は隣接温度領域補正を行うといった制御が可能となり、学習頻度が少ない温度領域の学習精度を確保しながら、全温度領域補正の回数を適度に減らして制御装置の演算負荷を軽減することができる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明の一実施例を図面に基づいて説明する。
まず、図１に基づいてエンジン制御システム全体の概略構成を説明する。内燃機関であるエンジン１１の吸気管１２の最上流部には、エアクリーナ１３が設けられ、このエアクリーナ１３の下流側に、吸入空気量を検出するエアフローメータ１４が設けられている。このエアフローメータ１４の下流側には、モータ１５によって開度調節されるスロットルバルブ１６と、このスロットルバルブ１６の開度（スロットル開度）を検出するスロットル開度センサ１７とが設けられている。
【００１５】
更に、スロットルバルブ１６の下流側には、サージタンク１８が設けられ、このサージタンク１８には、吸気管圧力を検出する吸気管圧力センサ１９が設けられている。また、サージタンク１８には、エンジン１１の各気筒に空気を導入する吸気マニホールド２０が設けられ、各気筒の吸気マニホールド２０の吸気ポート近傍に、それぞれ燃料を噴射する燃料噴射弁２１が取り付けられている。また、エンジン１１のシリンダヘッドには、各気筒毎に点火プラグ２２が取り付けられ、各点火プラグ２２の火花放電によって筒内の混合気に着火される。
【００１６】
また、エンジン１１の吸気バルブ３２には、該吸気バルブ３２のリフト量を変化させる可変吸気バルブリフト装置３３が設けられている。更に、吸気バルブ３２のバルブタイミングを変化させる可変吸気バルブタイミング装置を設けるようにしても良い。
【００１７】
一方、エンジン１１の排気管２３には、排出ガスの空燃比又はリッチ／リーン等を検出する排出ガスセンサ２４（空燃比センサ、酸素センサ等）が設けられ、この排出ガスセンサ２４の下流側に、排出ガスを浄化する三元触媒等の触媒２５が設けられている。
【００１８】
また、エンジン１１のシリンダブロックには、冷却水温を検出する冷却水温センサ２６や、エンジン１１のクランク軸が所定クランク角回転する毎にパルス信号を出力するクランク角センサ２７が取り付けられている。このクランク角センサ２７の出力信号に基づいてクランク角やエンジン回転速度が検出される。更に、油温（作動油の温度）が油温センサ２８によって検出される。
【００１９】
これら各種センサの出力は、エンジン制御回路（以下「ＥＣＵ」と表記する）２９に入力される。このＥＣＵ２９は、マイクロコンピュータを主体として構成され、内蔵されたＲＯＭ（記憶媒体）に記憶された各種のエンジン制御プログラムを実行することで、エンジン運転状態に応じて燃料噴射弁２１の燃料噴射量や点火プラグ２２の点火時期を制御する。
【００２０】
次に、図２に基づいて可変吸気バルブリフト装置３３の構成について説明する。
図２に示すように、吸気バルブ３２側のカムシャフト３６には、カムプロフィールが異なる低リフト用カム３７と高リフト用カム３８とが一体的に回転可能に設けられている。カムシャフト３６の下方には、ロッカシャフト３９が設けられ、このロッカシャフト３９を支軸としてロッカアーム４０が上下方向に揺動可能に設けられている。このロッカアーム４０の先端部には、吸気バルブ３２の上端部が当接し、ロッカアーム４０の上下方向の揺動によって吸気バルブ３２が上下方向にリフト動作するようになっている。
【００２１】
また、ロッカアーム４０には、低リフト用カム３７に当接して押圧される低リフト用カム押圧部（図示せず）と、高リフト用カム３８に当接して押圧される高リフト用カム押圧部（図示せず）とが設けられている。低リフト用カム３７は、ロッカアーム４０（低リフト用カム押圧部）の押圧量が小さくなると共にその押圧期間が短くなるように外周面形状が形成され、高リフト用カム３８は、ロッカアーム４０（高リフト用カム押圧部）の押圧量が大きくなると共にその押圧期間が長くなるように外周面形状が形成されている。
【００２２】
更に、ロッカアーム４０には、油圧駆動式のカム切換機構４１が設けられている。このカム切換機構４１は、低リフト用カム３７でロッカアーム４０（低リフト用カム押圧部）を押圧して吸気バルブ３２を駆動する低リフト用カム有効状態と、高リフト用カム３８でロッカアーム４０（高リフト用カム押圧部）を押圧して吸気バルブ３２を駆動する高リフト用カム有効状態との間で切り換えられるようになっている。
【００２３】
可変吸気バルブリフト装置３３の制御モードを、吸気バルブ３２のリフト量を小さくする低リフトモードに切り換える場合には、カム切換機構４１を低リフト用カム有効状態に切り換えて、低リフト用カム３７でロッカアーム４０（低リフト用カム押圧部）を押圧して吸気バルブ３２を駆動する。これにより、ロッカアーム４０の押圧量が小さくなって吸気バルブ３２のリフト量が小さくなると共に、ロッカアーム４０の押圧期間が短くなって吸気バルブ３２の開弁期間が短くなる。
【００２４】
一方、可変吸気バルブリフト装置３３の制御モードを、吸気バルブ３２のリフト量を大きくする高リフトモードに切り換える場合には、カム切換機構４１を高リフト用カム有効状態に切り換えて、高リフト用カム３８でロッカアーム４０（高リフト用カム押圧部）を押圧して吸気バルブ３２を駆動する。これにより、ロッカアーム４０の押圧量が大きくなって吸気バルブ３２のリフト量が大きくなると共に、ロッカアーム４０の押圧期間が長くなって吸気バルブ３２の開弁期間が長くなる。
【００２５】
ＥＣＵ２９は、図３の制御モード切換マップに示すように、エンジン運転状態（例えばエンジン回転速度ＮＥ、エンジン負荷等）に応じて要求制御モードフラグを切り換えて可変吸気バルブリフト装置３３の制御モードを低リフトモードと高リフトモードとの間で切り換える。図３の制御モード切換マップは、可変吸気バルブリフト装置３３を低リフトモードに切り換えた状態でエンジン１１を運転したしたときの出力トルクと、可変吸気バルブリフト装置３３を高リフトモードに切り換えた状態でエンジン１１を運転したときの出力トルクとが同一になるエンジン回転速度ＮＥを、制御モードを切り換える切換回転速度ＮＥswとしてエンジン負荷毎（例えば吸気管圧力毎、吸入空気量毎等）に設定したものであり、このエンジン負荷毎の切換回転速度ＮＥswを結ぶ線が切換特性線となっている。
【００２６】
ところが、図４に示すように、一般に、ＥＣＵ２９で要求制御モードフラグが切り換えられることによって可変吸気バルブリフト装置３３に制御モード切換指令が出力されてから実際に可変吸気バルブリフト装置３３の制御モードが切り換わるまでには応答遅れが存在する。
【００２７】
そこで、ＥＣＵ２９は、図示しないトルク補正プログラムを実行することで、図４に示すように、可変吸気バルブリフト装置３３の応答遅れ時間Ａdpをディレイ時間として設定し、可変吸気バルブリフト装置３３に制御モード切換指令が出力されてからディレイ時間が経過したときに、制御モード切換時のトルク変動が小さくなるように点火時期、燃料噴射量、バルブタイミング等の制御パラメータを補正するトルク補正を行うことで、可変吸気バルブリフト装置３３の制御モードが切り換わるタイミングとトルク補正のタイミングとをほぼ一致させて、可変吸気バルブリフト装置３３の制御モード切換時のトルクショックを低減する。
【００２８】
しかし、可変吸気バルブリフト装置３３の個体差や経時変化等によって可変吸気バルブリフト装置３３の応答遅れ時間Ａdpにばらつきが生じるため、ＥＣＵ２９は、後述する図６の応答遅れ時間学習プログラムを実行することで、エンジン運転中に可変吸気バルブリフト装置３３の応答遅れ時間Ａdpを次のようにして学習する。
【００２９】
図５に示すように、応答遅れ時間Ａdp(old) をディレイ時間として設定した後に、応答遅れ時間Ａdpが変化すると、その分、変化後の応答遅れ時間Ａdp(new) とディレイ時間［＝変化前の応答遅れ時間Ａdp(old) ］とに差が生じて、可変吸気バルブリフト装置３３の制御モードが切り換わるタイミングに対してトルク補正のタイミングがずれて、制御モード切換時に吸入空気量Ｇa が変動するため、制御モード切換時の吸入空気量の変動量ΔＧa は、応答遅れ時間の変化量ΔＡdpを反映した情報となる。
【００３０】
そこで、本実施例では、可変吸気バルブリフト装置３３の制御モード切換時の吸入空気量の変動量ΔＧa に応じて応答遅れ時間の変化量ΔＡdpを算出し、それを応答遅れ時間学習値の更新量ΔＡdpとする。そして、前回の応答遅れ時間学習値Ａdp(old) に更新量ΔＡdpを加算して今回の応答遅れ時間学習値Ａdp(new) を求める。
Ａdp(new) ＝Ａdp(old) ＋ΔＡdp
【００３１】
また、本実施例では、油温に応じて区分された温度領域毎に応答遅れ時間を学習してＥＣＵ２９のバックアップＲＡＭ（図示せず）等の書き換え可能な不揮発性メモリに記憶する。従って、現在の油温に対応した温度領域における前回の応答遅れ時間学習値Ａdpを今回の応答遅れ時間学習値Ａdpで更新する。そして、現在の油温に対応した温度領域における応答遅れ時間学習値Ａdpを前述したディレイ時間として設定する。
【００３２】
尚、バッテリ交換等によりバックアップ電源が一時的にオフされたときには、ＥＣＵ２９のバックアップＲＡＭ等に記憶された各温度領域の応答遅れ時間学習値Ａdpがそれぞれ初期値にリセットされるようになっている。
【００３３】
ところで、温度環境や走行パターン等によっては応答遅れ時間の学習が実行される温度領域に偏りが生じることがあり、学習頻度が多い温度領域では応答遅れ時間の学習精度が高くなるが、学習頻度が少ない温度領域では応答遅れ時間の学習精度が悪くなることがある。
【００３４】
この対策として、ＥＣＵ２９は、後述する図７の学習値補正プログラムを実行することで、応答遅れ時間の学習が実行される毎に、その学習実行温度領域（学習が実行された温度領域）の応答遅れ時間学習値Ａdpに基づいて他の温度領域の応答遅れ時間学習値Ａdpを補正する。
【００３５】
その際、バッテリ交換等によりＥＣＵ２９のバックアップＲＡＭ等に記憶された各温度領域の応答遅れ時間学習値Ａdpが初期値にリセットされた後に応答遅れ時間の１回目の学習が実行されたときには、その学習実行温度領域の応答遅れ時間学習値Ａdpに基づいて該学習実行温度領域以外の全ての温度領域の応答遅れ時間学習値Ａdpを補正する“全温度領域補正”を行う。
【００３６】
一方、各温度領域の応答遅れ時間学習値Ａdpが初期値にリセットされた後に応答遅れ時間の２回目以降の学習が実行されたときには、所定の全温度領域補正条件が成立しているか否かを判定し、全温度領域補正条件が成立した場合だけ“全温度領域補正”を行い、全温度領域補正条件が不成立の場合には学習実行温度領域の応答遅れ時間学習値Ａdpに基づいて該学習実行温度領域に隣接する温度領域の応答遅れ時間学習値Ａdpを補正する“隣接温度領域補正”を行う。
【００３７】
以下、ＥＣＵ２９が実行する図６の応答遅れ時間学習プログラム及び図７の学習値補正プログラムの処理内容を説明する。
【００３８】
［応答遅れ時間学習］
図６に示す応答遅れ時間学習プログラムは、ＥＣＵ２９の電源オン中に所定周期で実行され、特許請求の範囲でいう応答遅れ時間学習手段としての役割を果たす。本プログラムが起動されると、まず、ステップ１０１で、要求制御モードフラグが切り換えられたか否かによって、可変吸気バルブリフト装置３３に制御モード切換指令が出力されたか否かを判定する。
【００３９】
このステップ１０１で、要求制御モードフラグが切り換えられた（制御モード切換指令が出力された）と判定されたときに、ステップ１０２に進み、エアフローメータ１４の出力等に基づいて吸入空気量の初期値Ｇa(0)を検出した後、ステップ１０３に進む。
【００４０】
一方、上記ステップ１０１で、要求制御モードフラグが保持されていると判定された場合には、ステップ１０２の処理を飛ばして、ステップ１０３に進む。
このステップ１０３では、要求制御モードフラグが切り換えられてからの吸入空気量のサンプリング回数ｍが所定回数Ｎよりも少ないか否かを判定する。その結果、吸入空気量のサンプリング回数ｍが所定回数Ｎよりも少ないと判定された場合には、次のステップ１０４〜１０６で、所定サンプリング周期でエアフローメータ１４の出力等に基づいて吸入空気量Ｇa(m)を検出（サンプリング）して、その吸入空気量Ｇa(m)と初期値Ｇa(0)との差ΔＧa(m)を算出する処理を、吸入空気量のサンプリング回数ｍが所定回数Ｎに到達するまで繰り返す。
【００４１】
その後、ステップ１０６で、吸入空気量のサンプリング回数ｍが所定回数Ｎに到達したと判定された時点で、ステップ１０７に進み、サンプリングした各吸入空気量Ｇa(m)と初期値Ｇa(0)との差ΔＧa(m)の最大値ΔＧamaxを求め、次のステップ１０８で、サンプリングした各吸入空気量Ｇa(m)と初期値Ｇa(0)との差ΔＧa(m)の最小値ΔＧaminを求める。
【００４２】
この後、ステップ１０９に進み、最大値ΔＧamaxの絶対値が最小値ΔＧaminの絶対値以上であるか否かを判定する。その結果、最大値ΔＧamaxの絶対値が最小値ΔＧaminの絶対値以上であると判定された場合には、ステップ１１０に進み、最大値ΔＧamaxを制御モード切換時の吸入空気量の変動量ΔＧa とする。
【００４３】
一方、上記ステップ１０９で、最大値ΔＧamaxの絶対値が最小値ΔＧaminの絶対値よりも小さいと判定された場合には、ステップ１１１に進み、最小値ΔＧaminを制御モード切換時の吸入空気量の変動量ΔＧa とする。
【００４４】
この後、ステップ１１２に進み、図８に示す応答遅れ時間学習値の更新量ΔＡdpのテーブルを用いて、制御モード切換時の吸入空気量の変動量ΔＧa に応じた応答遅れ時間学習値の更新量ΔＡdp（応答遅れ時間の変化量ΔＡdp）を算出する。
【００４５】
一般に、応答遅れ時間が増加したときには制御モード切換時に吸入空気量Ｇa がマイナス方向に変動し（図５参照）、応答遅れ時間が減少したときには制御モード切換時に吸入空気量Ｇa がプラス方向に変動する。そこで、図８に示す応答遅れ時間学習値の更新量ΔＡdpのテーブルは、図９に示すように、制御モード切換時の吸入空気量の変動量ΔＧa がマイナス値の場合には応答遅れ時間学習値の更新量ΔＡdpがプラス値となって吸入空気量の変動量ΔＧa が小さくなる（絶対値が大きくなる）ほど応答遅れ時間学習値の更新量ΔＡdpが大きくなり、制御モード切換時の吸入空気量の変動量ΔＧa がプラス値の場合には応答遅れ時間学習値の更新量ΔＡdpがマイナス値となって吸入空気量の変動量ΔＧa が大きくなるほど応答遅れ時間学習値の更新量ΔＡdpが小さくなる（絶対値が大きくなる）ように設定されている。
【００４６】
応答遅れ時間学習値の更新量ΔＡdpを算出した後、ステップ１１３に進み、図１０に示す応答遅れ時間学習値Ａdpのテーブルを用いて、現在の油温に対応した温度領域Ｔｎにおける前回の応答遅れ時間学習値Ａdp(Tn)を読み込む。
【００４７】
図１０に示す応答遅れ時間学習値Ａdpのテーブルは、油温に応じて区分された温度領域Ｔｎ毎に応答遅れ時間学習値Ａdp(Tn)が設定され、ＥＣＵ２９のバックアップＲＡＭ等の書き換え可能な不揮発性メモリに記憶されている。一般に、油温が高くなるほど可変吸気バルブリフト装置３３の応答遅れ時間が短くなるため、図１０に示す応答遅れ時間学習値Ａdpのテーブルは、図１１に示すように、油温が高くなるほど応答遅れ時間学習値Ａdpが小さくなるように設定される。
【００４８】
尚、バッテリ交換等によりバックアップ電源が一時的にオフされたときには、ＥＣＵ２９のバックアップＲＡＭ等に記憶された各温度領域Ｔｎの応答遅れ時間学習値Ａdp(Tn)が、それぞれ初期値Ｉnitial(Tn)にリセットされる。
【００４９】
この後、ステップ１１４に進み、現在の油温に対応した温度領域Ｔｎにおける前回の応答遅れ時間学習値Ａdp(Tn)に更新量ΔＡdpを加算して今回の応答遅れ時間学習値Ａdp(Tn)を求める。
Ａdp(Tn)＝Ａdp(Tn)＋ΔＡdp
【００５０】
そして、図１０に示す応答遅れ時間学習値Ａdpのテーブルにおいて、現在の油温に対応した温度領域Ｔｎにおける前回の応答遅れ時間学習値Ａdp(Tn)を今回の応答遅れ時間学習値Ａdp(Tn)で更新する。
【００５１】
［学習値補正］
図７に示す学習値補正プログラムは、前述した図６の応答遅れ時間学習プログラムによって応答遅れ時間の学習が実行される毎に実行され、特許請求の範囲でいう学習値補正手段としての役割を果たす。本プログラムが起動されると、まず、ステップ２０１で、今回実行された応答遅れ時間の学習が、各温度領域Ｔｎの応答遅れ時間学習値Ａdp(Tn)が初期値Ｉnitial(Tn)にリセットされた後の１回目の学習であるか否かを判定する。
【００５２】
このステップ２０１で、今回実行された応答遅れ時間の学習が１回目の学習であると判定された場合には、次のステップ２０２〜２０４の処理を実行して、学習実行温度領域ＴＧの応答遅れ時間学習値Ａdp(TG)に基づいて該学習実行温度領域ＴＧ以外の全ての温度領域Ｔｎの応答遅れ時間学習値Ａdp(Tn)を補正する“全温度領域補正”を行う。
【００５３】
まず、ステップ２０２で、学習実行温度領域ＴＧを読み込んだ後、ステップ２０３に進み、学習実行温度領域ＴＧ以外の各温度領域Ｔｎについて、それぞれ応答遅れ時間学習値の初期値Ｉnitial(Tn)を学習実行温度領域ＴＧの応答遅れ時間学習値の初期値Ｉnitial(TG)で除算して補正係数Ｋ(Tn)を求める。
Ｋ(Tn)＝Ｉnitial(Tn)／Ｉnitial(TG)
【００５４】
この後、ステップ２０４に進み、学習実行温度領域以外の各温度領域Ｔｎについて、それぞれ学習実行温度領域ＴＧの応答遅れ時間学習値の更新量ΔＡdp(TG)に補正係数Ｋ(Tn)を乗算して応答遅れ時間学習値の更新量ΔＡdp(Tn)を求める（図１２参照）。
ΔＡdp(Tn)＝Ｋ(Tn)×ΔＡdp(TG)
【００５５】
この後、ステップ２０５に進み、学習実行温度領域以外の各温度領域Ｔｎについて、それぞれ応答遅れ時間学習値の初期値Ｉnitial(Tn)に補正後の更新量ΔＡdp(Tn)を加算して今回の応答遅れ時間学習値Ａdp(Tn)を求める。
Ａdp(Tn)＝Ｉnitial(Tn)＋ΔＡdp(Tn)
【００５６】
そして、図１０に示す応答遅れ時間学習値Ａdpのテーブルにおいて、学習実行温度領域以外の各温度領域Ｔｎにおける応答遅れ時間学習値の初期値Ｉnitial(Tn)を今回の応答遅れ時間学習値Ａdp(Tn)で更新する。
【００５７】
一方、上記ステップ２０１で、今回実行された応答遅れ時間の学習が２回目以降の学習であると判定された場合には、ステップ２０６に進み、全温度領域補正条件が成立しているか否かを判定する。この全温度領域補正条件は、例えば、前回、全温度領域補正を行ってからの応答遅れ時間の学習回数や走行距離が所定値に到達したこと等である。
【００５８】
このステップ２０６で、全温度領域補正条件が成立していると判定された場合には、ステップ２０７〜２１０の処理を実行して“全温度領域補正”を行う。
まず、ステップ２０７で、学習実行温度領域ＴＧを読み込んだ後、ステップ２０８に進み、学習実行温度領域ＴＧ以外の各温度領域Ｔｎについて、それぞれ応答遅れ時間学習値の初期値Ｉnitial(Tn)を学習実行温度領域ＴＧの応答遅れ時間学習値の初期値Ｉnitial(TG)で除算して補正係数Ｋ(Tn)を求める。
Ｋ(Tn)＝Ｉnitial(Tn)／Ｉnitial(TG)
【００５９】
この後、ステップ２０９に進み、学習実行温度領域以外の各温度領域Ｔｎについて、それぞれ学習実行温度領域ＴＧの応答遅れ時間学習値の更新量ΔＡdp(TG)に補正係数Ｋ(Tn)を乗算して応答遅れ時間学習値の更新量ΔＡdp(Tn)を求める。
ΔＡdp(Tn)＝Ｋ(Tn)×ΔＡdp(TG)
【００６０】
この後、ステップ２１０に進み、学習実行温度領域以外の各温度領域Ｔｎについて、それぞれ前回の応答遅れ時間学習値Ａdp(Tn)に補正後の更新量ΔＡdp(Tn)を加算して今回の応答遅れ時間学習値Ａdp(Tn)を求める。
Ａdp(Tn)＝Ａdp(Tn)＋ΔＡdp(Tn)
【００６１】
そして、図１０に示す応答遅れ時間学習値Ａdpのテーブルにおいて、学習実行温度領域以外の各温度領域Ｔｎにおける前回の応答遅れ時間学習値Ａdp(Tn)を今回の応答遅れ時間学習値Ａdp(Tn)で更新する。
【００６２】
一方、上記ステップ２０６で、全温度領域補正条件が不成立であると判定された場合には、ステップ２１１，２１２の処理を実行して、学習実行温度領域ＴＧの応答遅れ時間学習値Ａdp(TG)に基づいて該学習実行温度領域ＴＧに隣接する温度領域Ｔｎの応答遅れ時間学習値Ａdp(Tn)を補正する“隣接温度領域補正”を行う。
【００６３】
まず、ステップ２１１で、学習実行温度領域ＴＧを読み込んだ後、ステップ２１２に進み、学習実行温度領域ＴＧの低温側に隣接する温度領域（ＴＧ−１）についたは、前回の応答遅れ時間学習値Ａdp(TG-1)に学習実行温度領域ＴＧの応答遅れ時間学習値の更新量ΔＡdp(TG)を加算して今回の応答遅れ時間学習値Ａdp(TG-1)を求める。
【００６４】
Ａdp(TG-1)＝Ａdp(TG-1)＋ΔＡdp(TG)
そして、図１０に示す応答遅れ時間学習値Ａdpのテーブルにおいて、学習実行温度領域ＴＧの低温側に隣接する温度領域（ＴＧ−１）における前回の応答遅れ時間学習値Ａdp(TG-1)を今回の応答遅れ時間学習値Ａdp(TG-1)で更新する。
【００６５】
この後、ステップ２１３に進み、学習実行温度領域ＴＧの高温側に隣接する温度領域（ＴＧ＋１）については、前回の応答遅れ時間学習値Ａdp(TG+1)に学習実行温度領域ＴＧの応答遅れ時間学習値の更新量ΔＡdp(TG)を加算して今回の応答遅れ時間学習値Ａdp(TG+1)を求める。
Ａdp(TG+1)＝Ａdp(TG+1)＋ΔＡdp(TG)
【００６６】
そして、図１０に示す応答遅れ時間学習値Ａdpのテーブルにおいて、学習実行温度領域ＴＧの高温側に隣接する温度領域（ＴＧ＋１）における前回の応答遅れ時間学習値Ａdp(TG+1)を今回の応答遅れ時間学習値Ａdp(TG+1)で更新する。
【００６７】
以上説明した本実施例では、エンジン運転中に可変吸気バルブリフト装置３３の応答遅れ時間を学習し、その応答遅れ時間学習値Ａdpをディレイ時間として設定して、可変吸気バルブリフト装置３３に制御モード切換指令が出力されてからディレイ時間が経過したときにトルク補正を行う。これにより、可変吸気バルブリフト装置３３の個体差や経時変化等によって可変吸気バルブリフト装置３３の応答遅れ時間にばらつきが生じても、その応答遅れ時間を学習して該応答遅れ時間に応じてトルク補正のディレイ時間を変化させることができるため、可変吸気バルブリフト装置３３の制御モードが切り換わるタイミングとトルク補正のタイミングとをほぼ一致させることができ、可変吸気バルブリフト装置３３の制御モード切換時のトルクショックを低減することができる。
【００６８】
また、本実施例では、制御モード切換時の吸入空気量の変動量ΔＧa が応答遅れ時間の変化量ΔＡdpを反映した情報となることに着目して、制御モード切換時の吸入空気量の変動量ΔＧa に応じて応答遅れ時間の変化量ΔＡdpを算出し、それを応答遅れ時間学習値の更新量ΔＡdpとするようにしたので、可変吸気バルブリフト装置３３の応答遅れ時間の変化に応じて応答遅れ時間学習値Ａdpを精度良く更新することができる。
【００６９】
更に、本実施例では、油温に応じて区分された温度領域毎に応答遅れ時間を学習するようにしたので、油温に応じて可変吸気バルブリフト装置３３の応答遅れ時間が変化するのに対応して、各温度領域毎に適正な応答遅れ時間を学習することができ、応答遅れ時間の学習精度を向上させることができる。
【００７０】
また、温度環境や走行パターン等によっては応答遅れ時間の学習が実行される温度領域に偏りが生じることがあるが、本実施例では、応答遅れ時間の学習が実行された学習実行温度領域ＴＧの応答遅れ時間学習値Ａdp(TG)に基づいて他の温度領域Ｔｎの応答遅れ時間学習値Ａdp(Tn)を補正するようにしたので、学習頻度が少ない温度領域でも応答遅れ時間の学習精度を高くすることができる。
【００７１】
その際、本実施例では、バッテリ交換等によりバックアップＲＡＭ等に記憶された各温度領域Ｔｎの応答遅れ時間学習値Ａdp(Tn)が初期値にリセットされた後に応答遅れ時間の１回目の学習が実行されたときには、その学習実行温度領域ＴＧの応答遅れ時間学習値Ａdp(TG)に基づいて該学習実行温度領域ＴＧ以外の全ての温度領域Ｔｎの応答遅れ時間学習値Ａdp(Tn)を補正する全温度領域補正を行うようにしたので、各温度領域Ｔｎの応答遅れ時間学習値Ａdp(Tn)が全て初期値にリセットされた場合でも、その後、最初に応答遅れ時間の学習が実行されたときに、全ての温度領域Ｔｎの応答遅れ時間学習値Ａdp(Tn)を初期値から更新して学習値の精度を高めることができる。
【００７２】
更に、本実施例では、各温度領域Ｔｎの応答遅れ時間学習値Ａdp(Tn)が初期値にリセットされた後に応答遅れ時間の２回目以降の学習が実行されたときには、全温度領域補正条件が成立した場合だけ全温度領域補正を行い、全温度領域補正条件が不成立の場合には学習実行温度領域ＴＧの応答遅れ時間学習値Ａdp(TG)に基づいて該学習実行温度領域ＴＧに隣接する温度領域Ｔｎの応答遅れ時間学習値Ａdp(Tn)を補正する隣接温度領域補正を行うようにしたので、学習頻度が少ない温度領域の学習精度を確保しながら、全温度領域補正の回数を適度に減らしてＥＣＵ２９の演算負荷を軽減することができる。
【００７３】
尚、上記実施例では、可変吸気バルブリフト装置３３の制御モード切換時の吸入空気量の変動量に応じて応答遅れ時間の学習値を更新するようにしたが、制御モード切換時の吸入空気量、空燃比、推定トルク、実トルクのうちの１つ又は２つ以上の変動量に応じて応答遅れ時間の学習値を更新するようにしても良い。
【００７４】
また、上記実施例では、油温に応じて区分された温度領域毎に応答遅れ時間を学習するようにしたが、冷却水温やエンジン温度等に応じて区分された温度領域毎に応答遅れ時間を学習するようにしても良い。
【００７５】
また、上記実施例では、吸気側の可変バルブリフト装置の制御モードを切り換えるシステムに本発明を適用したが、排気側の可変バルブリフト装置の制御モードを切り換えるシステムに本発明を適用しても良い。
【００７６】
また、上記実施例では、２段階の制御モード間（低リフトモードと高リフトモードとの間）で切り換わる可変バルブリフト装置を搭載システムに本発明を適用したが、３段階以上の制御モード間で切り換わる可変バルブリフト装置を搭載システムに本発明を適用しても良い。
【図面の簡単な説明】
【００７７】
【図１】本発明の一実施例におけるエンジン制御システム全体の概略構成図である。
【図２】可変吸気バルブリフト装置の正面図である。
【図３】制御モード切換マップの一例を概念的に示す図である。
【図４】制御モード切換時のトルク補正を説明するためのタイムチャートである。
【図５】応答遅れ時間の学習方法を説明するためのタイムチャートである。
【図６】応答遅れ時間学習プログラムの処理の流れを示すフローチャートである。
【図７】学習値補正プログラムの処理の流れを示すフローチャートである。
【図８】応答遅れ時間学習値の更新量ΔＡdpのテーブルの一例を概念的に示す図である。
【図９】吸入空気量の変動量ΔＧa と応答遅れ時間学習値の更新量ΔＡdpとの関係を説明するための図である。
【図１０】応答遅れ時間学習値Ａdpのテーブルの一例を概念的に示す図である。
【図１１】油温と応答遅れ時間学習値Ａdpとの関係を説明するための図である。
【図１２】学習実行温度領域以外の各温度領域の応答遅れ時間学習値の更新量ΔＡdp(Tn)の算出方法を説明するための図である。
【符号の説明】
【００７８】
１１…エンジン（内燃機関）、１２…吸気管、１６…スロットルバルブ、２１…燃料噴射弁、２２…点火プラグ、２３…排気管、２８…油温センサ、２９…ＥＣＵ（応答遅れ時間学習手段，トルク補正手段，学習値補正手段）、３２…吸気バルブ、３３…可変吸気バルブリフト装置
【図１】
2006177246.tif 000003
【図２】
2006177246.tif 000004
【図３】
2006177246.tif 000005
【図４】
2006177246.tif 000006
【図５】
2006177246.tif 000007
【図６】
2006177246.tif 000008
【図７】
2006177246.tif 000009
【図８】
2006177246.tif 000010
【図９】
2006177246.tif 000011
【図１０】
2006177246.tif 000012
【図１１】
2006177246.tif 000013
【図１２】
2006177246.tif 000014