(57)【要約】【課題】可変吸気機構の熱伸縮などに起因する吸入空気量のずれを補償しながら、内燃機関を制御する場合において、制御精度の向上、内燃機関のコンパクト化、設計の自由度の向上および製造コストの削減をいずれも達成することができる内燃機関の制御装置を提供する。【解決手段】内燃機関3の制御装置1のECU2は、可変バルブリフト機構50の熱力学的モデルに基づいて、FF補正値Dliftin_testを算出し、空燃比補正係数KAFDおよび検出空燃比KACTに応じて、FB補正値Dliftin_fbを算出し、リフト補正値Dliftin_compを偏差Dliftin_test-Dliftin_fbまたは値Dliftin_testとして算出するとともに、リフト補正値Dliftin_compでバルブリフトLiftinを補正することにより、補正後バルブリフトLiftin_modを算出し、この補正後バルブリフトLiftin_modに応じて、空燃比制御および点火時期制御を実行する。【選択図】  図１５
2006348882.tif 000002
【特許請求の範囲】
【請求項１】
気筒内に吸入される吸入空気量が可変吸気機構により変更される内燃機関の制御装置であって、
前記可変吸気機構を熱力学的にモデリングした熱力学的モデルに基づき、前記可変吸気機構の温度の推定値を推定機構温度として算出する推定機構温度算出手段と、
前記可変吸気機構の動作状態を表す動作状態パラメータを検出する動作状態パラメータ検出手段と、
当該動作状態パラメータの検出値を前記推定機構温度に応じて補正することにより、補正後パラメータを算出する補正手段と、
当該補正後パラメータに応じて前記内燃機関を制御する制御手段と、
を備えることを特徴とする内燃機関の制御装置。
【請求項２】
前記熱力学的モデルは、前記推定機構温度と、前記内燃機関の温度状態を表す温度パラメータと、大気温と、前記内燃機関の負荷を表す負荷パラメータとの関係を定義したモデルであることを特徴とする請求項１に記載の内燃機関の制御装置。
【請求項３】
前記制御手段は、前記内燃機関の吸入空気量、前記内燃機関の空燃比、前記内燃機関に供給される燃料量および前記内燃機関の点火時期の少なくとも１つを制御することを特徴とする請求項１または２に記載の内燃機関の制御装置。
【請求項４】
気筒内に吸入される吸入空気量が可変吸気機構により変更される内燃機関の制御装置であって、
前記可変吸気機構の動作状態を表す動作状態パラメータを検出する動作状態パラメータ検出手段と、
前記内燃機関の排気通路を流れる排ガスの空燃比を表す空燃比パラメータを検出する空燃比パラメータ検出手段と、
前記内燃機関の混合気の空燃比制御の目標となる目標空燃比を算出する目標空燃比算出手段と、
前記空燃比パラメータに応じて、前記混合気の空燃比を前記目標空燃比になるように制御するための空燃比制御パラメータを算出する空燃比制御パラメータ算出手段と、
当該空燃比制御パラメータおよび前記空燃比パラメータに応じて前記動作状態パラメータの検出値を補正することにより、補正後パラメータを算出する補正手段と、
当該補正後パラメータおよび前記空燃比制御パラメータに応じて、前記内燃機関に供給する燃料量を決定する燃料量決定手段と、
を備えることを特徴とする内燃機関の制御装置。
【請求項５】
気筒内に吸入される吸入空気量が可変吸気機構により変更される内燃機関の制御装置であって、
前記可変吸気機構の動作状態を表す動作状態パラメータを検出する動作状態パラメータ検出手段と、
前記内燃機関の排気通路を流れる排ガスの空燃比を表す空燃比パラメータを検出する空燃比パラメータ検出手段と、
前記内燃機関の混合気の空燃比制御の目標となる目標空燃比を算出する目標空燃比算出手段と、
前記空燃比パラメータに応じて、前記内燃機関の混合気の空燃比を前記目標空燃比になるように制御する空燃比制御手段と、
当該空燃比制御手段による空燃比の制御状態を表す空燃比制御パラメータおよび前記空燃比パラメータに応じて前記動作状態パラメータの検出値を補正することにより、補正後パラメータを算出する補正手段と、
当該補正後パラメータに応じて、前記内燃機関の混合気の点火時期を決定する点火時期決定手段と、
を備えることを特徴とする内燃機関の制御装置。
【請求項６】
前記可変吸気機構を熱力学的にモデリングした熱力学的モデルに基づき、前記可変吸気機構の温度の推定値を推定機構温度として算出する推定機構温度算出手段をさらに備え、
前記補正手段は、当該推定機構温度にさらに応じて、前記補正後パラメータを算出することを特徴とする請求項４または５に記載の内燃機関の制御装置。
【請求項７】
前記熱力学的モデルは、前記推定機構温度と、前記内燃機関の機関本体の温度を表す温度パラメータと、大気温と、前記内燃機関の負荷を表す負荷パラメータとの関係を定義したモデルであることを特徴とする請求項６に記載の内燃機関の制御装置。
【請求項８】
気筒内に吸入される吸入空気量が可変吸気機構により変更される内燃機関の制御装置であって、
前記可変吸気機構の動作状態を表す動作状態パラメータを検出する動作状態パラメータ検出手段と、
前記内燃機関の排気通路を流れる排ガスの空燃比を表す空燃比パラメータを検出する空燃比パラメータ検出手段と、
前記内燃機関の混合気の空燃比制御の目標となる目標空燃比を算出する目標空燃比算出手段と、
前記空燃比パラメータに応じて、前記混合気の空燃比を前記目標空燃比になるように制御するための空燃比制御パラメータを算出する空燃比制御パラメータ算出手段と、
前記空燃比パラメータおよび前記空燃比制御パラメータの少なくとも一方に応じて、前記動作状態パラメータの推定値を算出する動作状態パラメータ推定値算出手段と、
当該動作状態パラメータの推定値および前記動作状態パラメータの検出値に応じて、補正量を算出する補正量算出手段と、
当該補正量により前記動作状態パラメータの検出値を補正することによって、補正後パラメータを算出する補正後パラメータ算出手段と、
当該補正後パラメータおよび前記空燃比制御パラメータに応じて、前記内燃機関に供給する燃料量を決定する燃料量決定手段と、
を備えることを特徴とする内燃機関の制御装置。
【請求項９】
気筒内に吸入される吸入空気量が可変吸気機構により変更される内燃機関の制御装置であって、
前記可変吸気機構の動作状態を表す動作状態パラメータを検出する動作状態パラメータ検出手段と、
前記内燃機関の排気通路を流れる排ガスの空燃比を表す空燃比パラメータを検出する空燃比パラメータ検出手段と、
前記内燃機関の混合気の空燃比制御の目標となる目標空燃比を算出する目標空燃比算出手段と、
前記空燃比パラメータに応じて、前記内燃機関の混合気の空燃比を前記目標空燃比になるように制御する空燃比制御手段と、
当該空燃比制御手段による空燃比の制御状態を表す空燃比制御パラメータおよび前記空燃比パラメータの少なくとも一方に応じて、前記動作状態パラメータの推定値を算出する動作状態パラメータ推定値算出手段と、
当該動作状態パラメータの推定値および前記動作状態パラメータの検出値に応じて、補正量を算出する補正量算出手段と、
当該補正量により前記動作状態パラメータの検出値を補正することによって、補正後パラメータを算出する補正後パラメータ算出手段と、
当該補正後パラメータに応じて、前記内燃機関の混合気の点火時期を決定する点火時期決定手段と、
を備えることを特徴とする内燃機関の制御装置。
【請求項１０】
前記可変吸気機構を熱力学的にモデリングした熱力学的モデルに基づき、前記可変吸気機構の温度の推定値を推定機構温度として算出する推定機構温度算出手段をさらに備え、
前記補正量手段は、当該推定機構温度にさらに応じて前記補正量を算出することを特徴とする請求項８または９に記載の内燃機関の制御装置。
【請求項１１】
前記熱力学的モデルは、前記推定機構温度と、前記内燃機関の機関本体の温度を表す温度パラメータと、大気温と、前記内燃機関の負荷を表す負荷パラメータとの関係を定義したモデルであることを特徴とする請求項１０に記載の内燃機関の制御装置。
【請求項１２】
前記補正量算出手段は、前記動作状態パラメータの推定値および前記動作状態パラメータの検出値の一方と他方との間の偏差を推定誤差として算出するとともに、当該推定誤差が最小となるように、応答指定型制御アルゴリズムを適用した所定のアルゴリズムにより、前記補正量を算出することを特徴とする請求項８ないし１１のいずれかに記載の内燃機関の制御装置。
【請求項１３】
前記補正量算出手段は、前記動作状態パラメータの推定値および前記動作状態パラメータの検出値の一方と他方との間の偏差を推定誤差として算出し、当該推定誤差に所定の逐次型統計処理を施すことにより、当該推定誤差の統計処理値を算出するとともに、当該推定誤差の統計処理値が最小となるように、所定のアルゴリズムにより、前記補正量を算出することを特徴とする請求項８ないし１１のいずれかに記載の内燃機関の制御装置。
【請求項１４】
前記可変吸気機構は、前記内燃機関の吸気弁のリフトを変更することにより、前記吸入空気量を変更する可変バルブリフト機構であり、
前記動作状態パラメータは、前記吸気弁のリフトであり、
前記所定の逐次型統計処理アルゴリズムは、重みゲインにより前記推定誤差に重みを付ける重み付き逐次型統計処理アルゴリズムであり、
当該重みゲインは、前記吸気弁のリフトの検出値が大きいほど、より小さい値に設定されることを特徴とする請求項１３に記載の内燃機関の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、気筒内に吸入される吸入空気量が可変吸気機構により変更される内燃機関の制御装置に関する。
【背景技術】
【０００２】
従来、気筒内に吸入される吸入空気量が可変吸気機構により変更される内燃機関において、燃料噴射量を制御する制御装置として、特許文献１に記載されたものが知られている。この内燃機関は、可変吸気機構としての可変動弁機構を備えており、この可変動弁機構は、アクチュエータと、これにより軸線方向に駆動される制御シャフトと、制御シャフトによりその軸線回りに揺動するように駆動される揺動カムなどで構成されている。この揺動カムは、吸気カムとロッカアームとの間に設けられ、吸気カムおよびロッカアームにそれぞれ当接する入力部および出力部を備えている。この可変動弁機構では、アクチュエータにより、制御シャフトが軸線方向に駆動されると、揺動カムの入力部と出力部が、制御シャフトの軸線回りに互いに異なる方向に揺動し、それにより、吸気弁のリフト（以下「バルブリフト」という）およびバルブタイミングが変更される。
【０００３】
以上のような可変動弁機構では、可変動弁機構の温度変化に伴い、可変動弁機構が熱伸縮すると、バルブリフトおよびバルブタイミングが変化することで、吸入空気量が変化し、その結果、燃料噴射制御の精度が低下してしまう。したがって、そのような可変動弁機構の熱伸縮の影響を補償しながら、燃料噴射制御を行うために、特許文献１の図８〜図１１に示された例では、以下に述べるように、燃料噴射量が決定される。
【０００４】
まず、アクセルペダルの開度に応じて、バルブリフトおよびバルブタイミングの目標値を決定するとともに、これらのバルブリフトおよびバルブタイミングの目標値に応じて、燃料噴射量を決定する。次いで、内燃機関の冷却水温度に応じて、温度補正率を算出し、バルブタイミングの目標値に応じて、タイミング補正率を算出する。この温度補正率は、可変動弁機構の温度変化に伴う、吸入空気量に対する可変動弁機構の熱伸縮の影響を補正するためのものであり、タイミング補正率は、バルブタイミングの変化に伴う、吸入空気量に対する熱伸縮の影響度合の変化を補正するためのものである。そして、これらの２つの補正率を燃料噴射量に乗算することにより、最終的な燃料噴射量が決定される。
【０００５】
【特許文献１】特開２００４−３５３４８０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
前述したような可変動弁機構の場合、その温度は、内燃機関の冷却水温度の影響だけでなく、それ以外の温度パラメータの影響によっても変化してしまうので、内燃機関の冷却水温度は、可変動弁機構の熱伸縮度合を的確に反映するものではない。これに加えて、エンジンが停止された以降、可変動弁機構の温度は、大気放熱などにより急激に低下するのに対して、エンジンの冷却水温度は、その熱容量や比熱の差異に起因して、可変動弁機構の温度よりも低下しにくいので、エンジン停止後の再始動時には、両者は互いに相関性が低いものとなってしまう。これに対して、上記特許文献１の制御装置では、可変動弁機構の温度補正を行う際、温度補正率が内燃機関の冷却水温度のみに応じて算出されているので、可変動弁機構の熱伸縮度合を適切に補正することができず、制御精度が低下してしまう。
【０００７】
このような問題を解決する手法として、例えば特許文献１の段落番号［００２２］の箇所に記載されているように、温度センサまたはひずみセンサなどにより、可変動弁機構の温度または熱伸縮度合を直接的に検出することが考えられる。しかし、そのようにした場合、可変動弁機構の温度または熱伸縮度合を直接的に検出するためのセンサを、内燃機関の可変動弁機構付近に別個に設ける必要が生じるので、内燃機関の大型化、設計の自由度の低下、および製造コストの上昇を招いてしまう。
【０００８】
さらに、可変動弁機構などの可変吸気機構では、上述した熱伸縮以外の事象、例えば可変吸気機構における構成部品の摩耗、汚れの付着および経年変化による遊びなどに起因して、吸入空気量が適正値からずれてしまうことがある。その場合には、上述したようなセンサを用いることにより、可変吸気機構の熱伸縮度合を補正したとしても、熱伸縮以外の事象に起因する吸入空気量のずれを補正できず、制御精度が低下するおそれがある。
【０００９】
本発明は、上記課題を解決するためになされたもので、可変吸気機構の熱伸縮などに起因する吸入空気量のずれを補償しながら、内燃機関を制御する場合において、制御精度の向上、内燃機関のコンパクト化、設計の自由度の向上、および製造コストの削減をいずれも達成することができる内燃機関の制御装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するために、請求項１に係る発明は、気筒内に吸入される吸入空気量Ｇｃｙｌが可変吸気機構（可変バルブリフト機構５０）により変更される内燃機関３の制御装置１，１Ａであって、可変吸気機構を熱力学的にモデリングした熱力学的モデル［式（１３）］に基づき、可変吸気機構の温度の推定値を推定機構温度Ｔｌｉｆｔ＿ｈａｔとして算出する推定機構温度算出手段（ＥＣＵ２、補正後バルブリフト算出部１２０，２２０）と、可変吸気機構の動作状態を表す動作状態パラメータ（吸気弁のリフトＬｉｆｔｉｎ）を検出する動作状態パラメータ検出手段（ＥＣＵ２、回動角センサ２５）と、動作状態パラメータの検出値を推定機構温度Ｔｌｉｆｔ＿ｈａｔに応じて補正することにより、補正後パラメータ（補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄ）を算出する補正手段（ＥＣＵ２、補正後バルブリフト算出部１２０，２２０）と、補正後パラメータに応じて内燃機関３を制御する制御手段（ＥＣＵ２、空燃比コントローラ１００、点火時期コントローラ１８０）と、を備えることを特徴とする。
【００１１】
この内燃機関の制御装置によれば、推定機構温度が、可変吸気機構を熱力学的にモデリングした熱力学的モデルに基づいて算出され、補正後パラメータが、推定機構温度に応じて動作状態パラメータの検出値を補正することにより算出され、この補正後パラメータに応じて、内燃機関が制御される。この場合、可変吸気機構により、気筒内に吸入される吸入空気量が変更されるので、可変吸気機構の動作状態を表す動作状態パラメータは、気筒内に吸入される吸入空気量を表すものに相当し、そのため、可変吸気機構の熱伸縮に起因して、動作状態パラメータの検出値が実際の値に対してずれていると、吸入空気量が適正値からずれてしまう。これに対して、この制御装置では、熱力学的モデルに基づいて算出した補正後パラメータに応じて、内燃機関が制御されるので、可変動弁機構の温度または熱伸縮度合を直接的に検出するための格別のセンサを用いることなく、可変吸気機構の熱伸縮に起因する吸入空気量のずれを補償しながら、内燃機関を制御することができる。それにより、内燃機関のコンパクト化、設計の自由度の向上、および製造コストの削減をいずれも達成することができる。これに加えて、熱力学的モデルを適切に構成することにより、推定機構温度の推定精度を高めることができるので、そのような推定精度の高い推定機構温度に応じて、動作状態パラメータを補正することにより、内燃機関の冷却水温度のみに応じて補正を行う従来の場合と比べて、補正精度を向上させることができる。その結果、制御精度を向上させることができる（なお、本明細書における「パラメータの検出」などの「検出」は、センサなどによりパラメータを直接検出することに限らず、パラメータを算出することも含む）。
【００１２】
請求項２に係る発明は、請求項１に記載の内燃機関３の制御装置１，１Ａにおいて、熱力学的モデルは、推定機構温度Ｔｌｉｆｔ＿ｈａｔと、内燃機関３の温度状態を表す温度パラメータ（エンジン水温ＴＷ、油温Ｔｏｉｌ）と、大気温ＴＡと、内燃機関３の負荷を表す負荷パラメータ（第１推定吸気量Ｇｃｙｌ＿ｖｔ）との関係を定義したモデルであることを特徴とする。
【００１３】
この内燃機関の制御装置によれば、推定機構温度と、内燃機関の温度状態を表す温度パラメータと、大気温と、内燃機関の負荷を表す負荷パラメータとの関係を定義した熱力学的モデルに基づいて、推定機構温度が算出される。この場合、内燃機関の負荷は、内燃機関の運転に伴う発熱状態を反映するものであるので、負荷パラメータは、内燃機関の発熱状態が可変吸気機構の温度に及ぼす影響を表すパラメータに相当し、さらに、温度パラメータおよび大気温は、これら自体が可変吸気機構の温度に影響を及ぼすパラメータに相当する。したがって、以上のような可変吸気機構の温度に影響を及ぼす各種のパラメータと、推定機構温度との関係を定義した熱力学的モデルを用いることにより、推定機構温度の推定精度を確実に向上させることができ、補正後パラメータの算出精度を確実に向上させることができる。
【００１４】
請求項３に係る発明は、請求項１または２に記載の内燃機関３の制御装置１，１Ａにおいて、制御手段は、内燃機関３の吸入空気量Ｇｃｙｌ、内燃機関３の空燃比、内燃機関３に供給される燃料量（燃料噴射量ＴＯＵＴ）および内燃機関３の点火時期Ｉｇｌｏｇの少なくとも１つを制御することを特徴とする。
【００１５】
この内燃機関の制御装置によれば、前述したように算出される補正後パラメータに応じて、内燃機関の吸入空気量、内燃機関の空燃比、内燃機関に供給される燃料量および内燃機関の点火時期の少なくとも１つが制御されるので、それらの制御において、高い制御精度を確保することができる。
【００１６】
請求項４に係る発明は、気筒内に吸入される吸入空気量Ｇｃｙｌが可変吸気機構（可変バルブリフト機構５０）により変更される内燃機関３の制御装置１，１Ｂであって、可変吸気機構の動作状態を表す動作状態パラメータ（吸気弁のリフトＬｉｆｔｉｎ）を検出する動作状態パラメータ検出手段（ＥＣＵ２、回動角センサ２５）と、内燃機関３の排気通路１３ａを流れる排ガスの空燃比を表す空燃比パラメータ（検出空燃比ＫＡＣＴ）を検出する空燃比パラメータ検出手段（ＥＣＵ２、ＬＡＦセンサ２４）と、内燃機関３の混合気の空燃比制御の目標となる目標空燃比ＫＣＭＤを算出する目標空燃比算出手段（ＥＣＵ２、目標空燃比算出部１１１）と、空燃比パラメータ（検出空燃比ＫＡＣＴ）に応じて、混合気の空燃比を目標空燃比ＫＣＭＤになるように制御するための空燃比制御パラメータ（空燃比補正係数ＫＡＦＤ）を算出する空燃比制御パラメータ算出手段（ＥＣＵ２、空燃比補正係数算出部１１２）と、空燃比制御パラメータおよび空燃比パラメータに応じて動作状態パラメータの検出値を補正することにより、補正後パラメータ（補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄ）を算出する補正手段（ＥＣＵ２、補正後バルブリフト算出部１２０，３２０）と、補正後パラメータおよび空燃比パラメータに応じて、内燃機関３に供給する燃料量（燃料噴射量ＴＯＵＴ）を決定する燃料量決定手段（ＥＣＵ２、空燃比コントローラ１００）と、を備えることを特徴とする。
【００１７】
この内燃機関の制御装置によれば、混合気の空燃比を目標空燃比になるように制御するための空燃比制御パラメータが、内燃機関の排気通路を流れる排ガスの空燃比を表す空燃比パラメータに応じて算出され、空燃比制御パラメータおよび空燃比パラメータに応じて、可変吸気機構の動作状態を表す動作状態パラメータの検出値を補正することにより、補正後パラメータが算出されるとともに、補正後パラメータおよび空燃比制御パラメータに応じて、燃焼室内に供給する燃料量が決定される。この場合、可変吸気機構により、気筒内に吸入される吸入空気量が変更されるので、可変吸気機構の動作状態を表す動作状態パラメータは、気筒内に吸入される吸入空気量を表すものに相当し、そのため、空燃比制御の実行中、動作状態パラメータの検出値が実際の値に対してずれていると、吸入空気量が適正値からずれてしまうことで、混合気の実際の空燃比が目標空燃比に対してリーン側またはリッチ側にずれてしまう。一方、空燃比制御パラメータは、空燃比パラメータに応じて混合気の空燃比を目標空燃比になるように制御するための値、すなわち空燃比をリーン側またはリッチ側のいずれの方向に制御しているのかを表す値として算出されるので、上記のような空燃比のずれを反映する。また、空燃比パラメータは、内燃機関の排気通路を流れる排ガスの空燃比を表す値であるので、混合気の空燃比が目標空燃比になるように制御された場合、やはり、上記のような空燃比のずれを反映した値として検出される。
【００１８】
したがって、そのような空燃比制御パラメータおよび空燃比パラメータに応じて、動作状態パラメータを補正することにより、補正後パラメータを、動作状態パラメータの検出値と実際の値との間のずれ、すなわち吸入空気量の適正値に対するずれが適切に補正された値として算出することができる。その結果、可変吸気機構の熱伸縮に加えて、動作状態パラメータ検出手段における検出値のドリフト、可変吸気機構における構成部品の摩耗、汚れの付着および経年変化による遊びなどに起因して、動作状態パラメータの検出値が実際の値に対してずれている場合でも、そのようなずれの影響を補償しながら、燃料量を適切に決定することができる。すなわち、可変動弁機構の温度または熱伸縮度合を直接的に検出するための格別のセンサを用いることなく、可変吸気機構の熱伸縮およびそれ以外の事象に起因する吸入空気量のずれを補償しながら、内燃機関の燃料量および空燃比を適切に制御することができる。その結果、制御精度の向上、内燃機関のコンパクト化、設計の自由度の向上、および製造コストの削減をいずれも達成することができる。
【００１９】
請求項５に係る発明は、気筒内に吸入される吸入空気量Ｇｃｙｌが可変吸気機構（可変バルブリフト機構５０）により変更される内燃機関３の制御装置１，１Ｂであって、可変吸気機構の動作状態を表す動作状態パラメータ（吸気弁のリフトＬｉｆｔｉｎ）を検出する動作状態パラメータ検出手段（ＥＣＵ２、回動角センサ２５）と、内燃機関３の排気通路１３ａを流れる排ガスの空燃比を表す空燃比パラメータ（検出空燃比ＫＡＣＴ）を検出する空燃比パラメータ検出手段（ＥＣＵ２、ＬＡＦセンサ２４）と、内燃機関３の混合気の空燃比制御の目標となる目標空燃比ＫＣＭＤを算出する目標空燃比算出手段（ＥＣＵ２、目標空燃比算出部１１１）と、空燃比パラメータ（検出空燃比ＫＡＣＴ）に応じて、混合気の空燃比を目標空燃比ＫＣＭＤになるように制御する空燃比制御手段（ＥＣＵ２、空燃比コントローラ１００）と、空燃比制御手段による空燃比の制御状態を表す空燃比制御パラメータ（空燃比補正係数ＫＡＦＤ）および空燃比パラメータ（検出空燃比ＫＡＣＴ）に応じて動作状態パラメータの検出値を補正することにより、補正後パラメータ（補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄ）を算出する補正手段（ＥＣＵ２、補正後バルブリフト算出部１２０，３２０）と、補正後パラメータに応じて、内燃機関３の混合気の点火時期Ｉｇｌｏｇを決定する点火時期決定手段（ＥＣＵ２、点火時期コントローラ１８０）と、を備えることを特徴とする。
【００２０】
この内燃機関の制御装置によれば、空燃比制御手段により、内燃機関の排気通路を流れる排ガスの空燃比を表す空燃比パラメータに応じて、混合気の空燃比が目標空燃比になるように制御され、この空燃比制御手段による混合気の空燃比の制御状態を表す空燃比制御パラメータおよび空燃比パラメータに応じて、可変吸気機構の動作状態を表す動作状態パラメータの検出値を補正することにより、補正後パラメータが補正されるとともに、補正後パラメータに応じて、点火時期が決定される。前述したように、可変吸気機構の動作状態を表す動作状態パラメータは、気筒内に吸入される吸入空気量を表すものに相当するので、空燃比制御の実行中、動作状態パラメータの検出値が実際の値に対してずれていると、吸入空気量が適正値からずれてしまうことで、混合気の実際の空燃比が目標空燃比に対してリーン側またはリッチ側にずれてしまう。一方、空燃比制御手段により、空燃比パラメータに応じて混合気の空燃比が目標空燃比になるように制御されるので、その空燃比の制御状態を表す空燃比制御パラメータは、上記のような空燃比のずれを反映する。また、空燃比パラメータは、内燃機関の排気通路を流れる排ガスの空燃比を表す値であるので、混合気の空燃比が目標空燃比になるように制御されている場合、やはり、上記のような空燃比のずれを反映した値として検出される。
【００２１】
したがって、そのような空燃比制御パラメータおよび空燃比パラメータに応じて、動作状態パラメータを補正することにより、補正後パラメータを、動作状態パラメータの検出値と実際の値との間のずれ、すなわち吸入空気量の適正値に対するずれが適切に補正された値として算出することができる。その結果、可変吸気機構の熱伸縮に加えて、動作状態パラメータ検出手段における検出値のドリフト、可変吸気機構における構成部品の摩耗、汚れの付着および経年変化による遊びなどに起因して、動作状態パラメータの検出値が実際の値に対してずれている場合でも、そのようなずれの影響を補償しながら、点火時期を適切に決定することができる。すなわち、可変動弁機構の温度または熱伸縮度合を直接的に検出するための格別のセンサを用いることなく、可変吸気機構の熱伸縮およびそれ以外の事象に起因する吸入空気量のずれを補償しながら、内燃機関の点火時期を適切に制御することができる。その結果、制御精度の向上、内燃機関のコンパクト化、設計の自由度の向上、および製造コストの削減をいずれも達成することができる。
【００２２】
請求項６に係る発明は、請求項４または５に記載の内燃機関３の制御装置１において、可変吸気機構を熱力学的にモデリングした熱力学的モデル［式（１３）］に基づき、可変吸気機構の温度の推定値を推定機構温度Ｔｌｉｆｔ＿ｈａｔとして算出する推定機構温度算出手段（ＥＣＵ２、補正後バルブリフト算出部１２０）をさらに備え、補正手段は、推定機構温度Ｔｌｉｆｔ＿ｈａｔにさらに応じて、補正後パラメータ（補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄ）を算出することを特徴とする。
【００２３】
請求項４または５に記載の内燃機関の制御装置の場合、混合気の空燃比が目標空燃比になるように制御されているときの空燃比パラメータおよび空燃比制御パラメータに応じて、補正後パラメータが算出されるので、空燃比制御の開始時や空燃比パラメータ検出手段が活性化する前などの空燃比の制御精度が低い状態のときには、補正後パラメータの算出精度が低下するおそれがある。これに対して、この内燃機関の制御装置によれば、推定機構温度が、可変吸気機構を熱力学的にモデリングした熱力学的モデルに基づいて算出され、補正後パラメータが、推定機構温度にさらに応じて動作状態パラメータの検出値を補正することにより算出されるので、上述したように空燃比の制御精度が低い状態にあるときでも、補正後パラメータを、可変吸気機構の熱伸縮の影響が適切に補正された動作状態パラメータの値として算出することができる。それにより、制御精度をさらに向上させることができる。
【００２４】
請求項７に係る発明は、請求項６に記載の内燃機関３の制御装置１において、熱力学的モデルは、推定機構温度Ｔｌｉｆｔ＿ｈａｔと、内燃機関３の温度状態を表す温度パラメータ（エンジン水温ＴＷ、油温Ｔｏｉｌ）と、大気温ＴＡと、内燃機関３の負荷を表す負荷パラメータ（第１推定吸気量Ｇｃｙｌ＿ｖｔ）との関係を定義したモデルであることを特徴とする。
【００２５】
この内燃機関の制御装置によれば、前述したように、可変吸気機構の温度に影響を及ぼす各種のパラメータと推定機構温度との関係を定義した熱力学的モデルを用いることにより、推定機構温度が算出されるので、内燃機関の冷却水温度のみを用いる従来の場合と比べて、推定機構温度の推定精度を確実に向上させることができる。その結果、そのような推定精度の高い推定機構温度にさらに応じて、動作状態パラメータの検出値が補正されるので、補正後パラメータを、可変吸気機構の熱伸縮の影響が高い精度で補正された値として算出でき、それにより、高い制御精度を確保することができる。
【００２６】
請求項８に係る発明は、気筒内に吸入される吸入空気量Ｇｃｙｌが可変吸気機構（可変バルブリフト機構５０）により変更される内燃機関３の制御装置１，１Ｂであって、可変吸気機構の動作状態を表す動作状態パラメータ（吸気弁のリフトＬｉｆｔｉｎ）を検出する動作状態パラメータ検出手段（ＥＣＵ２、回動角センサ２５）と、内燃機関３の排気通路１３ａを流れる排ガスの空燃比を表す空燃比パラメータ（検出空燃比ＫＡＣＴ）を検出する空燃比パラメータ検出手段（ＥＣＵ２、ＬＡＦセンサ２４）と、内燃機関３の混合気の空燃比制御の目標となる目標空燃比ＫＣＭＤを算出する目標空燃比算出手段（ＥＣＵ２、目標空燃比算出部１１１）と、空燃比パラメータ（検出空燃比ＫＡＣＴ）に応じて、混合気の空燃比を目標空燃比ＫＣＭＤになるように制御するための空燃比制御パラメータ（空燃比補正係数ＫＡＦＤ）を算出する空燃比制御パラメータ算出手段（ＥＣＵ２、空燃比補正係数算出部１１２）と、空燃比パラメータおよび空燃比制御パラメータの少なくとも一方に応じて、動作状態パラメータの推定値（推定バルブリフトＬｉｆｔｉｎ＿ｈａｔ）を算出する動作状態パラメータ推定値算出手段（ＥＣＵ２、補正後バルブリフト算出部１２０，３２０）と、動作状態パラメータの推定値（推定バルブリフトＬｉｆｔｉｎ＿ｈａｔ）および動作状態パラメータの検出値（吸気弁のリフトＬｉｆｔｉｎ）に応じて、補正量（リフト補正値Ｄｌｉｆｔｉｎ＿ｃｏｍｐ、ＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂ）を算出する補正量算出手段（ＥＣＵ２、補正後バルブリフト算出部１２０，３２０）と、補正量により動作状態パラメータの検出値を補正することによって、補正後パラメータ（補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄ）を算出する補正後パラメータ算出手段（ＥＣＵ２、補正後バルブリフト算出部１２０，３２０）と、補正後パラメータおよび空燃比制御パラメータに応じて、内燃機関３に供給する燃料量（燃料噴射量ＴＯＵＴ）を決定する燃料量決定手段（ＥＣＵ２、空燃比コントローラ１００）と、を備えることを特徴とする。
【００２７】
この内燃機関の制御装置によれば、混合気の空燃比を目標空燃比になるように制御するための空燃比制御パラメータが、内燃機関の排気通路を流れる排ガスの空燃比を表す空燃比パラメータに応じて算出され、空燃比パラメータおよび空燃比制御パラメータの少なくとも一方に応じて、動作状態パラメータの推定値が算出され、動作状態パラメータの推定値および動作状態パラメータの検出値に応じて、補正量が算出され、この補正量により動作状態パラメータの検出値を補正することによって、補正後パラメータが算出され、補正後パラメータおよび空燃比制御パラメータに応じて、内燃機関に供給する燃料量が決定される。この場合、前述したように、空燃比制御の実行中、動作状態パラメータの検出値が実際の値に対してずれていると、吸入空気量が適正値からずれてしまうことで、混合気の実際の空燃比が目標空燃比に対してリーン側またはリッチ側にずれてしまうとともに、空燃比制御パラメータおよび空燃比パラメータは、そのような空燃比のずれを反映する。
【００２８】
したがって、そのような空燃比制御パラメータおよび空燃比パラメータの少なくとも一方に応じて算出された動作状態パラメータの推定値と、動作状態パラメータの検出値に応じて、補正量が算出され、その補正量で動作状態パラメータを補正することにより、補正後パラメータが算出されるので、補正後パラメータを、動作状態パラメータの検出値と実際の値との間のずれ、すなわち吸入空気量のずれが適切に補正された値として算出することができる。その結果、可変吸気機構の熱伸縮に加えて、動作状態パラメータ検出手段における検出値のドリフト、可変吸気機構における構成部品の摩耗、汚れの付着および経年変化による遊びなどに起因して、動作状態パラメータの検出値が実際の値に対してずれている場合でも、そのようなずれの影響を補償しながら、燃料量を適切に決定することができる。すなわち、可変動弁機構の温度または熱伸縮度合を直接的に検出するための格別のセンサなどを用いることなく、可変吸気機構の熱伸縮およびそれ以外の事象に起因する吸入空気量のずれを補償しながら、内燃機関の燃料量および空燃比を適切に制御することができる。その結果、制御精度の向上、内燃機関のコンパクト化、設計の自由度の向上、および製造コストの削減をいずれも達成することができる。
【００２９】
請求項９に係る発明は、気筒内に吸入される吸入空気量Ｇｃｙｌが可変吸気機構（可変バルブリフト機構５０）により変更される内燃機関３の制御装置１，１Ｂであって、可変吸気機構の動作状態を表す動作状態パラメータ（吸気弁のリフトＬｉｆｔｉｎ）を検出する動作状態パラメータ検出手段（ＥＣＵ２、回動角センサ２５）と、内燃機関３の排気通路１３ａを流れる排ガスの空燃比を表す空燃比パラメータ（検出空燃比ＫＡＣＴ）を検出する空燃比パラメータ検出手段（ＥＣＵ２、ＬＡＦセンサ２４）と、内燃機関３の混合気の空燃比制御の目標となる目標空燃比ＫＣＭＤを算出する目標空燃比算出手段（ＥＣＵ２、目標空燃比算出部１１１）と、空燃比パラメータ（検出空燃比ＫＡＣＴ）に応じて、混合気の空燃比を目標空燃比ＫＣＭＤになるように制御する空燃比制御手段（ＥＣＵ２、空燃比コントローラ１００）と、空燃比制御手段による空燃比の制御状態を表す空燃比制御パラメータ（空燃比補正係数ＫＡＦＤ）および空燃比パラメータ（検出空燃比ＫＡＣＴ）の少なくとも一方に応じて、動作状態パラメータの推定値（推定バルブリフトＬｉｆｔｉｎ＿ｈａｔ）を算出する動作状態パラメータ推定値算出手段（ＥＣＵ２、補正後バルブリフト算出部１２０，３２０）と、動作状態パラメータの推定値（推定バルブリフトＬｉｆｔｉｎ＿ｈａｔ）および動作状態パラメータの検出値（吸気弁のリフトＬｉｆｔｉｎ）に応じて、補正量（リフト補正値Ｄｌｉｆｔｉｎ＿ｃｏｍｐ、ＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂ）を算出する補正量算出手段（ＥＣＵ２、補正後バルブリフト算出部１２０，３２０）と、補正量により動作状態パラメータの検出値を補正することによって、補正後パラメータ（補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄ）を算出する補正後パラメータ算出手段（ＥＣＵ２、補正後バルブリフト算出部１２０，３２０）と、内燃機関３の混合気の点火時期Ｉｇｌｏｇを決定する点火時期決定手段（ＥＣＵ２、点火時期コントローラ１８０）と、を備えることを特徴とする。
【００３０】
この内燃機関の制御装置によれば、空燃比の制御状態を表す空燃比制御パラメータおよび空燃比パラメータの少なくとも一方に応じて、動作状態パラメータの推定値が算出され、動作状態パラメータの推定値および動作状態パラメータの検出値に応じて、補正量が算出され、この補正量により動作状態パラメータの検出値を補正することによって、補正後パラメータが算出されるとともに、この補正後パラメータに応じて、内燃機関の点火時期が決定される。この場合、前述したように、空燃比制御の実行中、動作状態パラメータの検出値が実際の値に対してずれていると、吸入空気量が適正値からずれてしまうことで、混合気の実際の空燃比が目標空燃比に対してリーン側またはリッチ側にずれてしまうとともに、空燃比制御パラメータおよび空燃比パラメータは、そのような空燃比のずれを反映する。
【００３１】
したがって、そのような空燃比制御パラメータおよび空燃比パラメータの少なくとも一方に応じて算出された動作状態パラメータの推定値と、動作状態パラメータの検出値に応じて、補正量が算出され、その補正量で動作状態パラメータを補正することにより、補正後パラメータが算出されるので、補正後パラメータを、動作状態パラメータの検出値と実際の値との間のずれ、すなわち吸入空気量のずれが適切に補正された値として算出することができる。その結果、可変吸気機構の熱伸縮に加えて、動作状態パラメータ検出手段における検出値のドリフト、可変吸気機構における構成部品の摩耗、汚れの付着および経年変化による遊びなどに起因して、動作状態パラメータの検出値が実際の値に対してずれている場合でも、そのようなずれの影響を補償しながら、点火時期を適切に決定することができる。すなわち、可変動弁機構の温度または熱伸縮度合を直接的に検出するための格別のセンサを用いることなく、可変吸気機構の熱伸縮およびそれ以外の事象に起因する吸入空気量のずれを補償しながら、内燃機関の点火時期を適切に制御できる。その結果、制御精度の向上、内燃機関のコンパクト化、設計の自由度の向上、および製造コストの削減をいずれも達成することができる。
【００３２】
請求項１０に係る発明は、請求項８または９に記載の内燃機関３の制御装置１において、可変吸気機構を熱力学的にモデリングした熱力学的モデル［式（１３）］に基づき、可変吸気機構の温度の推定値を推定機構温度Ｔｌｉｆｔ＿ｈａｔとして算出する推定機構温度算出手段（ＥＣＵ２、補正後バルブリフト算出部１２０）をさらに備え、補正量手段は、推定機構温度Ｔｌｉｆｔ＿ｈａｔにさらに応じて、補正量（リフト補正値Ｄｌｉｆｔｉｎ＿ｃｏｍｐ）を算出することを特徴とする。
【００３３】
請求項８または９に記載の内燃機関の制御装置の場合、混合気の空燃比が目標空燃比になるように制御されているときの空燃比パラメータおよび空燃比制御パラメータの少なくとも一方に応じて、動作状態パラメータの推定値が算出されるので、空燃比制御の開始時や空燃比パラメータ検出手段が活性化する前などの空燃比の制御精度が低い状態のときには、動作状態パラメータの推定値の算出精度すなわち補正量の算出精度が低下し、その結果、補正後パラメータの算出精度が低下するおそれがある。これに対して、この内燃機関の制御装置によれば、推定機構温度が、可変吸気機構を熱力学的にモデリングした熱力学的モデルに基づいて算出され、補正量が推定機構温度にさらに応じて算出されるので、上述したように空燃比の制御精度が低い状態にあるときでも、補正量により、動作状態パラメータに対する可変吸気機構の熱伸縮の影響を適切に補正することができ、それにより、制御精度をさらに向上させることができる。
【００３４】
請求項１１に係る発明は、請求項１０に記載の内燃機関３の制御装置１において、熱力学的モデルは、推定機構温度Ｔｌｉｆｔ＿ｈａｔと、内燃機関３の温度状態を表す温度パラメータ（エンジン水温ＴＷ、油温Ｔｏｉｌ）と、大気温ＴＡと、内燃機関３の負荷を表す負荷パラメータ（第１推定吸気量Ｇｃｙｌ＿ｖｔ）との関係を定義したモデルであることを特徴とする。
【００３５】
この内燃機関の制御装置によれば、前述したように、可変吸気機構の温度に影響を及ぼす各種のパラメータと推定機構温度との関係を定義した熱力学的モデルを用いることにより、推定機構温度が算出されるので、内燃機関の冷却水温度のみを用いる従来の場合と比べて、推定機構温度の推定精度を確実に向上させることができる。その結果、そのような推定精度の高い推定機構温度にさらに応じて、補正量が算出されるので、補正後パラメータの算出精度すなわち動作状態パラメータの補正精度をさらに向上させることができ、それにより、制御精度をさらに向上させることができる。
【００３６】
請求項１２に係る発明は、請求項８ないし１１のいずれかに記載の内燃機関３の制御装置１において、補正量算出手段は、動作状態パラメータの推定値（推定バルブリフトＬｉｆｔｉｎ＿ｈａｔ）および動作状態パラメータの検出値（吸気弁のリフトＬｉｆｔｉｎ）の一方と他方との間の偏差を推定誤差Ｅｌｉｆｔとして算出するとともに、推定誤差Ｅｌｉｆｔが最小となるように、応答指定型制御アルゴリズムを適用した所定のアルゴリズム［式（２２）〜（２５）］により、補正量（ＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂ）を算出することを特徴とする。
【００３７】
この内燃機関の制御装置によれば、動作状態パラメータの推定値および動作状態パラメータの検出値の一方と他方との間の偏差が、推定誤差として算出されるとともに、推定誤差が最小となるように、応答指定型制御アルゴリズムを適用した所定のアルゴリズムにより、補正量が算出されるので、推定誤差が指数関数的に穏やかに減衰するように、補正量すなわち補正後パラメータが算出される。その結果、外乱や誤推定などに起因して、推定誤差が一時的に過大な値になったとしても、その影響を回避しながら、補正後パラメータを算出することができ、それにより、制御精度をより一層、向上させることができる。
【００３８】
請求項１３に係る発明は、請求項８ないし１１のいずれかに記載の内燃機関３の制御装置１において、補正量算出手段は、動作状態パラメータの推定値（推定バルブリフトＬｉｆｔｉｎ＿ｈａｔ）および動作状態パラメータの検出値（吸気弁のリフトＬｉｆｔｉｎ）の一方と他方との間の偏差を推定誤差Ｅｌｉｆｔとして算出し、推定誤差Ｅｌｉｆｔに所定の逐次型統計処理［式（２２）〜（２３）］を施すことにより、推定誤差の統計処理値Ｅｌｉｆｔ＿ＬＳを算出するとともに、推定誤差の統計処理値Ｅｌｉｆｔ＿ＬＳが最小となるように、所定のアルゴリズム［式（２４）〜（２５）］により、補正量（ＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂ）を算出することを特徴とする。
【００３９】
この内燃機関の制御装置によれば、動作状態パラメータの推定値および動作状態パラメータの検出値の一方と他方との間の偏差が推定誤差として算出され、この推定誤差に所定の逐次型統計処理を施すことにより、推定誤差の統計処理値が算出されるとともに、この推定誤差の統計処理値が最小となるように、所定のアルゴリズムにより補正量が算出される。その結果、外乱や誤推定などに起因して、推定誤差が一時的に過大な値になったとしても、その影響を回避しながら、補正量すなわち補正後パラメータを算出することができ、それにより、制御精度をより一層、向上させることができる。
【００４０】
請求項１４に係る発明は、請求項１３に記載の内燃機関３の制御装置１において、可変吸気機構は、内燃機関３の吸気弁４のリフトＬｉｆｔｉｎを変更することにより、吸入空気量Ｇｃｙｌを変更する可変バルブリフト機構５０であり、動作状態パラメータは、吸気弁のリフトＬｉｆｔｉｎであり、所定の逐次型統計処理アルゴリズムは、重みゲインＰにより推定誤差Ｅｌｉｆｔに重みを付ける重み付き逐次型統計処理アルゴリズムであり、重みゲインＰは、吸気弁のリフトの検出値Ｌｉｆｔｉｎが大きいほど、より小さい値に設定されることを特徴とする。
【００４１】
内燃機関の吸気弁のリフトを変更することにより、吸入空気量を変更する可変バルブリフト機構の場合、吸気弁のリフトが大きいほど、その推定値と検出値との乖離度合すなわち推定誤差が大きくなる傾向にある。これに対して、この内燃機関の制御装置によれば、重みゲインにより推定誤差に重みを付ける所定の逐次型統計処理アルゴリズムにより、推定誤差の統計処理値が算出されるとともに、重みゲインは、吸気弁のリフトの検出値が大きいほど、より小さい値に設定されるので、推定値と検出値との乖離度合が大きくなる可能性が高いほど、推定誤差の重みがより小さい値に設定されることにより、推定誤差の統計処理値の算出精度すなわち補正量の算出精度をさらに高めることができる。それにより、制御精度をさらに向上させることができる。
【発明を実施するための最良の形態】
【００４２】
以下、図面を参照しながら、本発明の第１実施形態に係る内燃機関の制御装置について説明する。この制御装置１は、図２に示すように、ＥＣＵ２を備えており、このＥＣＵ２は、後述するように、内燃機関（以下「エンジン」という）３の運転状態に応じて、空燃比制御、点火時期制御および可変機構制御などの各種の制御処理を実行する。
【００４３】
図１および図３に示すように、エンジン３は、４組の気筒３ａおよびピストン３ｂ（１組のみ図示）を有する直列４気筒ガソリンエンジンであり、図示しない自動変速機付きの車両に搭載されている。エンジン３は、気筒３ａ毎に設けられ、吸気ポートおよび排気ポートをそれぞれ開閉する吸気弁４および排気弁７と、吸気弁４駆動用の吸気カムシャフト５および吸気カム６と、吸気弁４を開閉駆動する可変式吸気動弁機構４０と、排気弁７駆動用の排気カムシャフト８および排気カム９と、排気弁７を開閉駆動する排気動弁機構３０と、燃料噴射弁１０と、点火プラグ１１（図２参照）などを備えている。
【００４４】
吸気弁４は、そのステム４ａがガイド４ｂに摺動自在に嵌合しており、このガイド４ｂは、シリンダヘッド３ｃに固定されている。さらに、吸気弁４は、図４に示すように、上下のスプリングシート４ｃ，４ｄと、これらの間に設けられたバルブスプリング４ｅとを備えており、このバルブスプリング４ｅにより、閉弁方向に付勢されている。
【００４５】
また、吸気カムシャフト５および排気カムシャフト８はそれぞれ、図示しないホルダを介して、シリンダヘッド３ｃに回動自在に取り付けられている。この吸気カムシャフト５の一端部上には、吸気スプロケット（図示せず）が同軸に配置され、回転自在に設けられている。この吸気スプロケットは、図示しないタイミングチェーンを介してクランクシャフト３ｄに連結され、後述する可変カム位相機構７０を介して吸気カムシャフト５に連結されている。以上の構成により、吸気カムシャフト５は、クランクシャフト３ｄが２回転する毎に１回転する。また、吸気カム６は、吸気カムシャフト５上にこれと一体に回転するように気筒３ａ毎に設けられている。
【００４６】
さらに、可変式吸気動弁機構４０は、吸気カムシャフト５の回転に伴って、各気筒３ａの吸気弁４を開閉駆動するとともに、吸気弁４のリフトおよびバルブタイミングを無段階に変更するものであり、その詳細については、後述する。なお、本実施形態では、「吸気弁４のリフト（以下「バルブリフト」という）」は、吸気弁４の最大揚程を表すものとする。
【００４７】
一方、排気弁７は、そのステム７ａがガイド７ｂに摺動自在に嵌合しており、このガイド７ｂは、シリンダヘッド３ｃに固定されている。さらに、排気弁７は、上下のスプリングシート７ｃ，７ｄと、これらの間に設けられたバルブスプリング７ｅとを備えており、このバルブスプリング７ｅにより、閉弁方向に付勢されている。
【００４８】
また、排気カムシャフト８は、これと一体の排気スプロケット（図示せず）を備え、この排気スプロケットおよび図示しないタイミングチェーンを介してクランクシャフト３ｄに連結されており、それにより、クランクシャフト３ｄが２回転する毎に１回転する。さらに、排気カム９は、排気カムシャフト８上にこれと一体に回転するように気筒３ａ毎に設けられている。
【００４９】
さらに、排気動弁機構３０は、ロッカアーム３１を備えており、このロッカアーム３１が排気カム９の回転に伴って回動することにより、バルブスプリング７ｅの付勢力に抗しながら、排気弁７を開閉駆動する。
【００５０】
一方、燃料噴射弁１０は、気筒３ａ毎に設けられ、燃料を燃焼室内に直接噴射するように、傾斜した状態でシリンダヘッド３ｃに取り付けられている。すなわち、エンジン３は直噴エンジンとして構成されている。また、燃料噴射弁１０は、ＥＣＵ２に電気的に接続されており、ＥＣＵ２により、開弁時間および開弁タイミングが制御され、それにより、燃料噴射量が制御される。
【００５１】
また、点火プラグ１１も、気筒３ａ毎に設けられ、シリンダヘッド３ｃに取り付けられている。点火プラグ１１は、ＥＣＵ２に電気的に接続されており、ＥＣＵ２により、後述する点火時期に応じたタイミングで燃焼室内の混合気を燃焼させるように、放電状態が制御される。
【００５２】
一方、エンジン３には、クランク角センサ２０および水温センサ２１が設けられている。このクランク角センサ２０は、マグネットロータおよびＭＲＥピックアップで構成されており、クランクシャフト３ｄの回転に伴い、いずれもパルス信号であるＣＲＫ信号およびＴＤＣ信号をＥＣＵ２に出力する。このＣＲＫ信号は、所定クランク角（例えば１０゜）毎に１パルスが出力され、ＥＣＵ２は、このＣＲＫ信号に基づき、エンジン３の機関回転数（以下「エンジン回転数」という）ＮＥを算出する。また、ＴＤＣ信号は、各気筒３ａのピストン３ｂが吸気行程のＴＤＣ位置よりも若干、手前の所定のクランク角位置にあることを表す信号であり、所定クランク角毎に１パルスが出力される。
【００５３】
また、水温センサ２１は、例えばサーミスタなどで構成されており、エンジン水温ＴＷを表す検出信号をＥＣＵ２に出力する。このエンジン水温ＴＷは、エンジン３のシリンダブロック３ｈ内を循環する冷却水の温度である。なお、本実施形態では、エンジン水温ＴＷが温度パラメータに相当する。
【００５４】
さらに、エンジン３の吸気管１２では、スロットル弁機構が省略されているとともに、その吸気通路１２ａが大口径に形成されており、それにより、流動抵抗が通常のエンジンよりも小さくなるように設定されている。この吸気管１２には、エアフローセンサ２２および大気温センサ２３（図２参照）が設けられている。
【００５５】
このエアフローセンサ２２は、熱線式エアフローメータで構成されており、吸気通路１２ａ内を流れる空気の流量（以下「空気流量」という）Ｇｉｎを表す検出信号をＥＣＵ２に出力する。また、大気温センサ２３は、大気の温度（以下「大気温」という）ＴＡを表す検出信号をＥＣＵ２に出力する。
【００５６】
さらに、エンジン３の排気管１３には、上流側から順に、ＬＡＦセンサ２４および触媒装置１４がそれぞれ設けられている。ＬＡＦセンサ２４は、ジルコニアおよび白金電極などで構成され、理論空燃比よりもリッチなリッチ領域から極リーン領域までの広範囲な空燃比の領域において、排気管１３の排気通路１３ａ内を流れる排ガス中の酸素濃度をリニアに検出し、それを表す検出信号をＥＣＵ２に出力する。
【００５７】
ＥＣＵ２は、このＬＡＦセンサ２４の検出信号の値に基づき、排ガス中の空燃比を表す検出空燃比ＫＡＣＴを算出する。この場合、検出空燃比ＫＡＣＴは、具体的には当量比として算出される。なお、本実施形態では、ＬＡＦセンサ２４が空燃比パラメータ検出手段に相当し、検出空燃比ＫＡＣＴが空燃比パラメータに相当する。
【００５８】
次に、前述した可変式吸気動弁機構４０について説明する。この可変式吸気動弁機構４０は、図４に示すように、吸気カムシャフト５、吸気カム６、可変バルブリフト機構５０および可変カム位相機構７０などで構成されている。なお、本実施形態では、可変バルブリフト機構５０が可変吸気機構に相当する。
【００５９】
この可変バルブリフト機構５０は、吸気カムシャフト５の回転に伴って吸気弁４を開閉駆動するとともに、バルブリフトＬｉｆｔｉｎを所定の最大値Ｌｉｆｔｉｎｍａｘと最小値Ｌｉｆｔｉｎｍｉｎとの間で無段階に変更するものであり、気筒３ａ毎に設けられた四節リンク式のロッカアーム機構５１と、これらのロッカアーム機構５１を同時に駆動するリフトアクチュエータ６０（図５参照）などを備えている。
【００６０】
各ロッカアーム機構５１は、ロッカアーム５２および上下のリンク５３，５４などで構成されている。この上リンク５３の一端部は、上ピン５５を介して、ロッカアーム５２の上端部に回動自在に取り付けられており、他端部は、ロッカアームシャフト５６に回動自在に取り付けられている。このロッカアームシャフト５６は、図示しないホルダを介して、シリンダヘッド３ｃに取り付けられている。
【００６１】
また、ロッカアーム５２の上ピン５５上には、ローラ５７が回動自在に設けられている。このローラ５７は、吸気カム６のカム面に当接しており、吸気カム６が回転する際、そのカム面に案内されながら吸気カム６上を転動する。これにより、ロッカアーム５２は上下方向に駆動されるとともに、上リンク５３が、ロッカアームシャフト５６を中心として回動する。
【００６２】
さらに、ロッカアーム５２の吸気弁４側の端部には、アジャストボルト５２ａが取り付けられている。このアジャストボルト５２ａは、吸気カム６の回転に伴ってロッカアーム５２が上下方向に移動すると、バルブスプリング４ｅの付勢力に抗しながら、ステム４ａを上下方向に駆動し、吸気弁４を開閉する。
【００６３】
また、下リンク５４の一端部は、下ピン５８を介して、ロッカアーム５２の下端部に回動自在に取り付けられており、下リンク５４の他端部には、連結軸５９が回動自在に取り付けられている。下リンク５４は、この連結軸５９を介して、リフトアクチュエータ６０の後述する短アーム６５に連結されている。
【００６４】
一方、リフトアクチュエータ６０は、図５に示すように、モータ６１、ナット６２、リンク６３、長アーム６４および短アーム６５などを備えている。このモータ６１は、ＥＣＵ２に接続され、エンジン３のヘッドカバー３ｇの外側に配置されている。モータ６１の回転軸は、雄ねじが形成されたねじ軸６１ａになっており、このねじ軸６１ａに、ナット６２が螺合している。このナット６２は、リンク６３を介して、長アーム６４に連結されている。このリンク６３の一端部は、ピン６３ａを介して、ナット６２に回動自在に取り付けられ、他端部は、ピン６３ｂを介して、長アーム６４の一端部に回動自在に取り付けられている。
【００６５】
また、長アーム６４の他端部は、回動軸６６を介して短アーム６５の一端部に取り付けられている。この回動軸６６は、断面円形に形成され、エンジン３のヘッドカバー３ｇを貫通しているとともに、これに回動自在に支持されている。この回動軸６６の回動に伴い、長アーム６４および短アーム６５はこれと一体に回動する。
【００６６】
さらに、短アーム６５の他端部には、前述した連結軸５９が回動自在に取り付けられており、これにより、短アーム６５は、連結軸５９を介して、下リンク５４に連結されている。
【００６７】
次に、以上のように構成された可変バルブリフト機構５０の動作について説明する。この可変バルブリフト機構５０では、ＥＣＵ２からの後述するリフト制御入力Ｕ＿Ｌｉｆｔｉｎがリフトアクチュエータ６０に入力されると、ねじ軸６１ａが回転し、それに伴うナット６２の移動により、長アーム６４および短アーム６５が回動軸６６を中心として回動するとともに、この短アーム６５の回動に伴って、ロッカアーム機構５１の下リンク５４が、下ピン５８を中心として回動する。すなわち、リフトアクチュエータ６０により、下リンク５４が駆動される。
【００６８】
その際、図示しないストッパに当接することによって、短アーム６５の回動範囲は、図５（ａ）に示す最大リフト位置と図５（ｂ）に示す最小リフト位置との間に規制され、それにより、下リンク５４の回動範囲も、図４に実線で示す最大リフト位置と、図４に２点鎖線で示す最小リフト位置との間に規制される。
【００６９】
下リンク５４が最大リフト位置にある場合、ロッカアームシャフト５６、上下のピン５５，５８および連結軸５９によって構成される四節リンクでは、上ピン５５および下ピン５８の中心間の距離が、ロッカアームシャフト５６および連結軸５９の中心間の距離よりも長くなるように構成されており、それにより、図６（ａ）に示すように、吸気カム６が回転すると、これとローラ５７との当接点の移動量よりも、アジャストボルト５２ａの移動量の方が大きくなる。
【００７０】
一方、下リンク５４が最小リフト位置にある場合、上記四節リンクでは、上ピン５５および下ピン５８の中心間の距離が、ロッカアームシャフト５６および連結軸５９の中心間の距離よりも短くなるように構成されており、それにより、図６（ｂ）に示すように、吸気カム６が回転すると、これとローラ５７との当接点の移動量よりも、アジャストボルト５２ａの移動量の方が小さくなる。
【００７１】
以上の理由により、吸気弁４は、下リンク５４が最大リフト位置にあるときには、最小リフト位置にあるときよりも大きなバルブリフトＬｉｆｔｉｎで開弁する。具体的には、吸気カム６の回転中、吸気弁４は、下リンク５４が最大リフト位置にあるときには、図７の実線で示すバルブリフト曲線に従って開弁し、バルブリフトＬｉｆｔｉｎは、その最大値Ｌｉｆｔｉｎｍａｘを示す。一方、下リンク５４が最小リフト位置にあるときには、図７の２点鎖線で示すバルブリフト曲線に従って開弁し、バルブリフトＬｉｆｔｉｎは、その最小値Ｌｉｆｔｉｎｍｉｎを示す。
【００７２】
したがって、この可変バルブリフト機構５０では、アクチュエータ６０を介して、下リンク５４を最大リフト位置と最小リフト位置との間で回動させることにより、バルブリフトＬｉｆｔｉｎを、最大値Ｌｉｆｔｉｎｍａｘと最小値Ｌｉｆｔｉｎｍｉｎとの間で無段階に変化させることができる。
【００７３】
なお、この可変バルブリフト機構５０には、図示しないロック機構が設けられており、このロック機構により、リフト制御入力Ｕ＿Ｌｉｆｔｉｎが後述する故障時用値Ｕ＿Ｌｉｆｔｉｎ＿ｆｓに設定されているときや、断線などによりＥＣＵ２からのリフト制御入力Ｕ＿Ｌｉｆｔｉｎがリフトアクチュエータ６０に入力されないときには、可変バルブリフト機構５０の動作がロックされる。すなわち、可変バルブリフト機構５０によるバルブリフトＬｉｆｔｉｎの変更が禁止され、バルブリフトＬｉｆｔｉｎが最小値Ｌｉｆｔｉｎｍｉｎに保持される。なお、この最小値Ｌｉｆｔｉｎｍｉｎは、後述するカム位相Ｃａｉｎがロック値に保持されている場合において、吸入空気量として所定の故障時用値を確保できるような値に設定されている。この所定の故障時用値は、停車中はアイドル運転やエンジン始動を適切に行うことができると同時に、走行中は低速走行状態を維持できるような値に設定されている。
【００７４】
また、エンジン３には、回動角センサ２５が設けられており（図２参照）、この回動角センサ２５は、回動軸６６すなわち短アーム６５の回動角を検出して、その検出信号をＥＣＵ２に出力する。ＥＣＵ２は、この回動角センサ２５の検出信号に基づき、バルブリフトＬｉｆｔｉｎを算出する。なお、本実施形態では、回動角センサ２５が動作状態パラメータ検出手段に相当し、バルブリフトＬｉｆｔｉｎが動作状態パラメータに相当する。
【００７５】
次に、前述した可変カム位相機構７０について説明する。この可変カム位相機構７０は、吸気カムシャフト５のクランクシャフト３ｄに対する相対的な位相（以下「カム位相」という）Ｃａｉｎを無段階に進角側または遅角側に変更するものであり、吸気カムシャフト５の吸気スプロケット側の端部に設けられている。図８に示すように、可変カム位相機構７０は、ハウジング７１、３枚羽根式のベーン７２、油圧ポンプ７３および電磁弁機構７４などを備えている。
【００７６】
このハウジング７１は、吸気カムシャフト５上の吸気スプロケットと一体に構成されており、互いに等間隔に形成された３つの隔壁７１ａを備えている。ベーン７２は、吸気カムシャフト５の吸気スプロケット側の端部に同軸に取り付けられ、吸気カムシャフト５から外方に放射状に延びているとともに、ハウジング７１内に回転可能に収容されている。また、ハウジング７１では、隔壁７１ａとベーン７２との間に、３つの進角室７５および３つの遅角室７６が形成されている。
【００７７】
油圧ポンプ７３は、クランクシャフト３ｄに連結された機械式のものであり、クランクシャフト３ｄが回転すると、それに伴って、エンジン３のオイルパン３ｅに蓄えられた潤滑油（作動油も兼ねる）を、油路７７ｃを介して吸い込むとともに、これを昇圧した状態で、油路７７ｃを介して電磁弁機構７４に供給する。
【００７８】
電磁弁機構７４は、スプール弁機構７４ａおよびソレノイド７４ｂを組み合わせたものであり、進角油路７７ａおよび遅角油路７７ｂを介して、進角室７５および遅角室７６にそれぞれ接続されているとともに、油圧ポンプ７３から供給された油圧を、進角油圧Ｐａｄおよび遅角油圧Ｐｒｔとして、進角室７５および遅角室７６にそれぞれ出力する。電磁弁機構７４のソレノイド７４ｂは、ＥＣＵ２に電気的に接続されており、ＥＣＵ２からの後述する位相制御入力Ｕ＿Ｃａｉｎが入力された際、スプール弁機構７４ａのスプール弁体を、位相制御入力Ｕ＿Ｃａｉｎに応じて所定の移動範囲内で移動させることにより、進角油圧Ｐａｄおよび遅角油圧Ｐｒｔをいずれも変化させる。
【００７９】
以上の可変カム位相機構７０では、油圧ポンプ７３の動作中、電磁弁機構７４が制御入力Ｕ＿Ｃａｉｎに応じて作動することにより、進角油圧Ｐａｄが進角室７５に、遅角油圧Ｐｒｔが遅角室７６にそれぞれ供給され、それにより、ベーン７２とハウジング７１との間の相対的な位相が進角側または遅角側に変更される。その結果、前述したカム位相Ｃａｉｎが、最遅角値Ｃａｉｎｒｔと最進角値Ｃａｉｎａｄの間で連続的に変化し、それにより、吸気弁４のバルブタイミングは、図９に実線で示す最遅角タイミングと、図９に２点鎖線で示す最進角タイミングとの間で、無段階に変更される。なお、後述する制御処理では、最遅角値Ｃａｉｎｒｔが０゜に、最進角値Ｃａｉｎａｄが正の所定角度（例えば１００゜）にそれぞれ設定される。
【００８０】
また、この可変カム位相機構７０には、図示しないロック機構が設けられており、このロック機構により、油圧ポンプ７３からの供給油圧が低いとき、位相制御入力Ｕ＿Ｃａｉｎが後述する故障時用値Ｕ＿Ｃａｉｎ＿ｆｓに設定されているとき、および断線などにより位相制御入力Ｕ＿Ｃａｉｎが電磁弁機構７４に入力されないときには、可変カム位相機構７０の動作がロックされる。すなわち、可変カム位相機構７０によるカム位相Ｃａｉｎの変更が禁止され、カム位相Ｃａｉｎが所定のロック値に保持される。この所定のロック値は、前述したように、バルブリフトＬｉｆｔｉｎが最小値Ｌｉｆｔｉｎｍｉｎに保持されている場合において、吸入空気量として所定の故障時用値を確保できるような値に設定されている。
【００８１】
以上のように、本実施形態の可変式吸気動弁機構４０では、可変バルブリフト機構５０により、バルブリフトＬｉｆｔｉｎが無段階に変更されるとともに、可変カム位相機構７０により、カム位相Ｃａｉｎすなわち吸気弁４のバルブタイミングが前述した最遅角タイミングと最進角タイミングとの間で、無段階に変更される。また、ＥＣＵ２により、後述するように、可変バルブリフト機構５０および可変カム位相機構７０を介して、バルブリフトＬｉｆｔｉｎおよびカム位相Ｃａｉｎがそれぞれ制御され、それにより、吸入空気量が制御される。なお、以下の説明では、可変バルブリフト機構５０および可変カム位相機構７０をまとめて「２つの可変機構」という。
【００８２】
一方、吸気カムシャフト５の可変カム位相機構７０と反対側の端部には、カム角センサ２６（図２参照）が設けられている。このカム角センサ２６は、例えばマグネットロータおよびＭＲＥピックアップで構成されており、吸気カムシャフト５の回転に伴い、パルス信号であるＣＡＭ信号を所定のカム角（例えば１゜）毎にＥＣＵ２に出力する。ＥＣＵ２は、このＣＡＭ信号および前述したＣＲＫ信号に基づき、カム位相Ｃａｉｎを算出する。
【００８３】
さらに、図２に示すように、ＥＣＵ２には、アクセル開度センサ２７、油温センサ２８およびイグニッション・スイッチ（以下「ＩＧ・ＳＷ」という）２９が接続されている。このアクセル開度センサ２７は、車両の図示しないアクセルペダルの踏み込み量（以下「アクセル開度」という）ＡＰを表す検出信号をＥＣＵ２に出力する。
【００８４】
また、油温センサ２８は、サーミスタなどで構成され、エンジン３の潤滑油の温度である油温Ｔｏｉｌを表す検出信号をＥＣＵ２に出力する。なお、本実施形態では、油温Ｔｏｉｌが温度パラメータに相当する。さらに、ＩＧ・ＳＷ２９は、イグニッションキー（図示せず）操作によりＯＮ／ＯＦＦされるとともに、そのＯＮ／ＯＦＦ状態を表す信号をＥＣＵ２に出力する。
【００８５】
ＥＣＵ２は、ＣＰＵ、ＲＡＭ、ＲＯＭおよびＩ／Ｏインターフェース（いずれも図示せず）などからなるマイクロコンピュータで構成されており、前述した各種のセンサ２０〜２８の検出信号およびＩＧ・ＳＷ２９のＯＮ／ＯＦＦ信号などに応じて、エンジン３の運転状態を判別するとともに、運転状態に応じて、後述するように、空燃比制御、点火時期制御および可変機構制御などを実行する。このＥＣＵ２のＲＡＭは、停電補償機能付きのもので構成されており、ＩＧ・ＳＷ２９がＯＦＦされ、エンジン３が停止されているときでも、内部のデータを保持する。
【００８６】
なお、本実施形態では、ＥＣＵ２が、推定機構温度算出手段、動作状態パラメータ検出手段、補正手段、制御手段、空燃比パラメータ検出手段、目標空燃比算出手段、空燃比制御パラメータ算出手段、燃料量決定手段、空燃比制御手段、点火時期決定手段、動作状態パラメータ推定値算出手段、補正量算出手段、および補正後パラメータ算出手段に相当する。
【００８７】
次に、本実施形態の制御装置１について説明する。この制御装置１は、空燃比制御を実行する空燃比コントローラ１００（図１０参照）と、点火時期制御を実行する点火時期コントローラ１８０（図２６参照）とを備えており、これらはいずれも、具体的には、ＥＣＵ２により構成されている。
【００８８】
まず、空燃比コントローラ１００について説明する。なお、本実施形態では、空燃比コントローラ１００が、制御手段、燃料量決定手段および空燃比制御手段に相当する。この空燃比コントローラ１００は、以下に述べるように、燃料噴射量ＴＯＵＴを燃料噴射弁１０毎に算出するものであり、図１０に示すように、吸気量算出部１１０、目標空燃比算出部１１１、空燃比補正係数算出部１１２、空燃比指標値算出部１１３、増幅要素１１４、総補正係数算出部１１５、乗算要素１１６および燃料付着補正部１１７を備えている。
【００８９】
吸気量算出部１１０では、後述するように、エンジン水温ＴＷ、大気温ＴＡ、油温Ｔｏｉｌ、エンジン回転数ＮＥ、空気流量Ｇｉｎ、バルブリフトＬｉｆｔｉｎ、カム位相Ｃａｉｎ、検出空燃比ＫＡＣＴおよび空燃比指標値ＫＡＦに応じて、吸入空気量Ｇｃｙｌが算出される。
【００９０】
また、目標空燃比算出部１１１（目標空燃比算出手段）では、吸入空気量Ｇｃｙｌおよびアクセル開度ＡＰに応じて、図１１に示すマップを検索することにより、目標空燃比ＫＣＭＤが算出される。このマップでは、目標空燃比ＫＣＭＤの値は、当量比として設定されているとともに、基本的には、触媒装置１４の排ガス浄化性能を良好な状態に保持するために、理論空燃比に相当する値（１．０）に設定されている。なお、本実施形態では、目標空燃比算出部１１１が目標空燃比算出手段に相当する。
【００９１】
一方、空燃比補正係数算出部１１２では、検出空燃比ＫＡＣＴおよび目標空燃比ＫＣＭＤに応じて、空燃比補正係数ＫＡＦＤが算出される。具体的には、空燃比補正係数ＫＡＦＤは、混合気の空燃比すなわち検出空燃比ＫＡＣＴを目標空燃比ＫＣＭＤに収束させるように、以下の式（１）〜（５）に示す簡易型の応答指定型制御アルゴリズム（スライディングモード制御アルゴリズムまたはバックステッピング制御アルゴリズム）により算出されるとともに、当量比換算値として算出される。
【００９２】
【数１】
2006348882.tif 000003
【００９３】
これらの式（１）〜（５）における記号（ｎ）付きの各離散データは、ＴＤＣ信号の発生タイミングに同期する制御周期ΔＴｎでサンプリングまたは算出されたデータであることを示しており、記号ｎは各離散データのサンプリングまたは算出サイクルの順番を表している。例えば、記号ｎは今回の制御タイミングでサンプリングまたは算出された値であることを、記号ｎ−１は前回の制御タイミングでサンプリングまたは算出された値であることをそれぞれ示している。この点は、以下の離散データにおいても同様である。なお、以下の説明では、各離散データにおける記号（ｎ）などを適宜、省略する。
【００９４】
上記式（１）に示すように、空燃比補正係数ＫＡＦＤは、到達則入力Ｕｒｃｈと適応則入力Ｕａｄｐの和として算出され、この到達則入力Ｕｒｃｈは、式（２）により算出される。同式（２）において、Ｋｒｃｈ’は、所定の到達則ゲインを表しており、σ’は、式（４）のように定義される切換関数である。同式（４）において、Ｓ’は、−１＜Ｓ’＜０の関係が成立するように設定される切換関数設定パラメータであり、ｅは、式（５）のように定義される追従誤差である。
【００９５】
また、適応則入力Ｕａｄｐは、式（３）により算出され、同式（３）において、Ｋａｄｐ’は、所定の適応則ゲインを表している。なお、この適応則入力Ｕａｄｐの初期値は、値１に設定される。
【００９６】
以上のように、空燃比補正係数算出部１１２では、検出空燃比ＫＡＣＴおよび目標空燃比ＫＣＭＤに応じて、空燃比補正係数ＫＡＦＤが算出される。なお、本実施形態では、空燃比補正係数算出部１１２が空燃比制御パラメータ算出手段に相当し、空燃比補正係数ＫＡＦＤが空燃比制御パラメータに相当する。
【００９７】
一方、空燃比指標値算出部１１３では、空燃比補正係数ＫＡＦＤおよび目標空燃比ＫＣＭＤに基づき、下式（６）により、空燃比指標値ＫＡＦが算出される。
【数２】
2006348882.tif 000004
【００９８】
さらに、増幅要素１１４では、吸入空気量Ｇｃｙｌに基づき、下式（７）により、基本燃料噴射量Ｔｃｙｌ＿ｂｓが算出される。ここで、Ｋｇｔは、燃料噴射弁１０毎に予め設定される換算係数である。
【数３】
2006348882.tif 000005
【００９９】
一方、総補正係数算出部１１５では、エンジン水温ＴＷおよび大気温ＴＡなどの運転状態を表す各種のパラメータに応じて、図示しない各種のマップを検索することにより、各種の補正係数を算出するとともに、これらの各種の補正係数を互いに乗算することにより、総補正係数ＫＴＯＴＡＬが算出される。
【０１００】
また、乗算要素１１６では、下式（８）により、要求燃料噴射量Ｔｃｙｌが算出される。
【数４】
2006348882.tif 000006
【０１０１】
さらに、燃料付着補正部１１７では、以上のように算出された要求燃料噴射量Ｔｃｙｌに、所定の燃料付着補正処理を施すことにより、燃料噴射量ＴＯＵＴ（燃料量）が算出される。そして、この燃料噴射量ＴＯＵＴに基づいて、燃料噴射弁１０の燃料噴射タイミングおよび開弁時間が決定され、燃料噴射弁１０が制御される。
【０１０２】
次に、前述した吸気量算出部１１０について説明する。吸気量算出部１１０は、図１２に示すように、補正後バルブリフト算出部１２０、第１推定吸気量算出部１２１、第２推定吸気量算出部１２２、動作状態判定部１２３および吸気量選択部１２４を備えている。
【０１０３】
補正後バルブリフト算出部１２０では、後述するように、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄが、エンジン水温ＴＷなどの各種のパラメータに応じて、前述した制御周期ΔＴｎと異なる所定の制御周期ΔＴ（例えば１０ｍｓｅｃ）で算出される。なお、本実施形態では、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄが補正後パラメータに相当する。
【０１０４】
また、第１推定吸気量算出部１２１では、下式（９）により、第１推定吸気量Ｇｃｙｌ＿ｖｔが算出される。なお、本実施形態では、第１推定吸気量Ｇｃｙｌ＿ｖｔが負荷パラメータに相当する。
【数５】
2006348882.tif 000007
ここで、Ｇｃｙｌ＿ｖｔ＿ｂａｓｅは第１推定吸気量のマップ値を、Ｋ＿ｇｃｙｌ＿ｖｔは補正係数をそれぞれ表しており、これらは以下のように算出される。
【０１０５】
まず、マップ値Ｇｃｙｌ＿ｖｔ＿ｂａｓｅは、エンジン回転数ＮＥおよび補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄに応じて、図１３に示すマップを検索することにより算出される。この場合、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄは、前述したように、制御周期ΔＴｎと異なる制御周期ΔＴで算出されるので、制御周期ΔＴｎでサンプリングした値Ｌｉｆｔｉｎ＿ｍｏｄ（ｎ）を用いる。なお、図１３において、ＮＥ１〜ＮＥ３は、ＮＥ１＜ＮＥ２＜ＮＥ３の関係が成立するエンジン回転数ＮＥの所定値であり、この点は以下の説明においても同様である。
【０１０６】
このマップでは、マップ値Ｇｃｙｌ＿ｖｔ＿ｂａｓｅは、ＮＥ＝ＮＥ１またはＮＥ２の場合、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄが小さい領域では、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄが大きいほど、より大きい値に設定され、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄが最大値Ｌｉｆｔｉｎｍａｘに近い領域では、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄが大きいほど、より小さい値に設定されている。これは、低・中回転域では、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄが最大値Ｌｉｆｔｉｎｍａｘに近い領域においてより大きな値になるほど、吸気弁４の開弁時間が長くなることで、吸気の吹き戻しにより充填効率が低下するためである。
【０１０７】
また、マップ値Ｇｃｙｌ＿ｖｔ＿ｂａｓｅは、ＮＥ＝ＮＥ３の場合、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄが大きいほど、より大きい値に設定されている。これは、高回転域では、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄが大きい領域でも、吸気の慣性力により上記吸気の吹き戻しが発生しにくくなるため、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄが大きいほど、充填効率がより高くなることによる。
【０１０８】
一方、補正係数Ｋ＿ｇｃｙｌ＿ｖｔは、エンジン回転数ＮＥおよびカム位相Ｃａｉｎに応じて、図１４に示すマップを検索することにより算出される。このマップでは、補正係数Ｋ＿ｇｃｙｌ＿ｖｔは、ＮＥ＝ＮＥ１またはＮＥ２の場合、カム位相Ｃａｉｎが最遅角値Ｃａｉｎｒｔに近い領域では、最遅角値Ｃａｉｎｒｔに近いほど、より小さい値に設定され、それ以外の領域では、カム位相Ｃａｉｎが最進角値Ｃａｉｎａｄ側の値であるほど、より小さな値に設定されている。これは、低・中回転域では、カム位相Ｃａｉｎが最遅角値Ｃａｉｎｒｔに近い領域において、最遅角値Ｃａｉｎｒｔに近いほど、吸気弁４の閉弁タイミングが遅くなることで、吸気の吹き戻しにより充填効率が低下するためであり、それ以外の領域では、カム位相Ｃａｉｎが最進角値Ｃａｉｎａｄに近いほど、バルブオーバーラップの増大に伴う内部ＥＧＲ量の増大により、充填効率が低下するためである。
【０１０９】
また、ＮＥ＝ＮＥ３の場合、補正係数Ｋ＿ｇｃｙｌ＿ｖｔは、カム位相Ｃａｉｎが最遅角値Ｃａｉｎｒｔに近い領域では、一定値（値１）に設定され、それ以外の領域では、カム位相Ｃａｉｎが最進角値Ｃａｉｎａｄ側の値であるほど、より小さな値に設定されている。これは、高回転域では、カム位相Ｃａｉｎが最進角値Ｃａｉｎａｄに近い領域でも、前述した吸気の慣性力により、吸気の吹き戻しが発生しにくくなることによる。
【０１１０】
一方、第２推定吸気量算出部１２２では、空気流量Ｇｉｎおよびエンジン回転数ＮＥに基づき、下式（１０）により、第２推定吸気量Ｇｃｙｌ＿ａｆｍが算出される。
【数６】
2006348882.tif 000008
【０１１１】
また、動作状態判定部１２３では、可変バルブリフト機構５０および可変カム位相機構７０の少なくとも一方が故障しているか否かが判定され、その判定結果に応じて、可変機構故障フラグＦ＿ＶＤＮＧの値が設定される。以下、可変バルブリフト機構５０および可変カム位相機構７０をまとめて「２つの可変機構」という。可変機構故障フラグＦ＿ＶＤＮＧは、具体的には、２つの可変機構の少なくとも一方が故障していると判定されたときには「１」に、いずれも正常であると判定されたときには「０」にそれぞれ設定される。
【０１１２】
この場合、可変バルブリフト機構５０の故障判定は、以下のように実行される。すなわち、バルブリフトＬｉｆｔｉｎと目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄとの偏差の絶対値が所定のしきい値を超える状態が所定時間以上、継続したとき、またはリフト制御入力Ｕ＿Ｌｉｆｔｉｎの絶対値が所定値を超える状態が、所定時間以上、継続したときには、可変バルブリフト機構５０が故障状態にあると判別され、それ以外のときには、可変バルブリフト機構５０が正常であると判別される。
【０１１３】
また、可変カム位相機構７０の故障判定も、上記可変バルブリフト機構５０と同様に実行される。すなわち、カム位相Ｃａｉｎと目標カム位相Ｃａｉｎ＿ｃｍｄとの偏差の絶対値が所定のしきい値を超える状態が所定時間以上、継続したとき、または位相制御入力Ｕ＿Ｃａｉｎの絶対値が所定値を超える状態が、所定時間以上、継続したときには、可変カム位相機構７０が故障状態にあると判別され、それ以外のときには、可変カム位相機構７０が正常であると判別される。
【０１１４】
次いで、吸気量選択部１２４では、動作状態判定部１２３で設定された可変機構故障フラグＦ＿ＶＤＮＧの値に応じて、下式（１１），（１２）により、吸入空気量Ｇｃｙｌが算出される。
【数７】
2006348882.tif 000009
【０１１５】
すなわち、２つの可変機構がいずれも正常であるときには、第１推定吸気量Ｇｃｙｌ＿ｖｔが吸入空気量Ｇｃｙｌとして選択され、それ以外のときには、第２推定吸気量Ｇｃｙｌ＿ａｆｍが吸入空気量Ｇｃｙｌとして選択される。
【０１１６】
次に、前述した補正後バルブリフト算出部１２０について説明する。なお、本実施形態では、補正後バルブリフト算出部１２０が、推定機構温度算出手段、補正手段、動作状態パラメータ推定値算出手段、補正量算出手段および補正後パラメータ算出手段に相当する。
【０１１７】
この補正後バルブリフト算出部１２０は、以下に述べるように、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄを算出するものであり、図１５に示すように、ＦＢ補正値算出部１３０、ＦＦ補正値算出部１３１、減算要素１３２、空燃比制御判定部１３４、補正値選択部１３５および加算要素１３６を備えている。
【０１１８】
まず、ＦＢ補正値算出部１３０では、後述するように、エンジン回転数ＮＥ、バルブリフトＬｉｆｔｉｎ、カム位相Ｃａｉｎ、検出空燃比ＫＡＣＴおよび空燃比指標値ＫＡＦに応じて、ＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂが算出される。
【０１１９】
一方、ＦＦ補正値算出部１３１では、以下に述べる手法により、ＦＦ補正値Ｄｌｉｆｔｉｎ＿ｔｅｓｔが算出される。このＦＦ補正値Ｄｌｉｆｔｉｎ＿ｔｅｓｔは、可変バルブリフト機構５０自体の温度が変化すると、可変バルブリフト機構５０の熱伸縮に起因して、回動角センサ２５の検出信号に基づいて算出されたバルブリフトＬｉｆｔｉｎが実際のバルブリフトの値に対してずれるので、それを補正するための値である。
【０１２０】
まず、可変バルブリフト機構５０を熱力学的にモデリングすると、下式（１３）に示す熱力学的モデルが得られる。
【０１２１】
【数８】
2006348882.tif 000010
【０１２２】
この式（１３）において、記号（ｋ）付きの各離散データは、前述した所定の制御周期ΔＴでサンプリングまたは算出されたデータであることを示している。なお、以下の説明では、各離散データにおける記号（ｋ）を適宜省略する。また、式（１３）において、Ｔｌｉｆｔ＿ｈａｔは可変バルブリフト機構５０の推定温度（以下「推定機構温度」という）であり、α，β，γ，δは、所定のモデルパラメータを表している。
【０１２３】
ここで、式（１３）の右辺第１項α・Ｇｃｙｌ＿ｖｔは、エンジン３の発熱状態が可変バルブリフト機構５０に及ぼす影響を表しており、右辺第２項β・（Ｔｌｉｆｔ＿ｈａｔ−ＴＡ）は、可変バルブリフト機構５０と大気との間の熱伝達状態を表している。また、右辺第３項γ・（Ｔｌｉｆｔ＿ｈａｔ−ＴＷ）は、可変バルブリフト機構５０とエンジン３の冷却水との間の熱伝達状態を表しており、右辺第４項δ・（Ｔｌｉｆｔ＿ｈａｔ−Ｔｏｉｌ）は、可変バルブリフト機構５０と潤滑油との間の熱伝達状態を表している。
【０１２４】
上記式（１３）を、推定機構温度Ｔｌｉｆｔ＿ｈａｔについて整理するとともに、離散時間「１」分、過去側にシフトすると、下式（１４）が得られる。この式（１４）により、推定機構温度Ｔｌｉｆｔ＿ｈａｔが算出される。
【数９】
2006348882.tif 000011
【０１２５】
次いで、上記式（１４）により算出した推定機構温度Ｔｌｉｆｔ＿ｈａｔに応じて、図１６に示すマップを検索することにより、ＦＦ補正値Ｄｌｉｆｔｉｎ＿ｔｅｓｔが算出される。同図において、Ｔｌｉｆｔ１，Ｔｌｉｆｔ２は、Ｔｌｉｆｔ１＜Ｔｌｉｆｔ２の関係が成立する推定機構温度Ｔｌｉｆｔ＿ｈａｔの所定値であり、Ｄｌｉｆｔｉｎ１は、正の所定値である。
【０１２６】
このマップでは、Ｔｌｉｆｔ１＜Ｔｌｉｆｔ＿ｈａｔ＜Ｔｌｉｆｔ２の範囲では、ＦＦ補正値Ｄｌｉｆｔｉｎ＿ｔｅｓｔは、推定機構温度Ｔｌｉｆｔ＿ｈａｔが低いほど、より大きい値に設定されている。これは、以下の理由による。すなわち、可変バルブリフト機構５０は、その構造に起因して、可変バルブリフト機構５０が低温状態にあるときには、バルブリフトＬｉｆｔｉｎが、吸気弁４の実際のリフトに対してより小さい値を示すとともに、実際のリフトとバルブリフトＬｉｆｔｉｎとの偏差は、可変バルブリフト機構５０の温度が低いほど、より大きい値になるという特性を備えている。したがって、それを補正するために、後述するように、ＦＦ補正値Ｄｌｉｆｔｉｎ＿ｔｅｓｔは、バルブリフトＬｉｆｔｉｎの加算補正項として用いられるとともに、上記のような傾向に設定されている。また、Ｔｌｉｆｔ＿ｈａｔ≦Ｔｌｉｆｔ１の範囲では、Ｄｌｉｆｔｉｎ＿ｔｅｓｔ＝Ｄｌｉｆｔｉｎ１に設定されている。これは、吸入空気量Ｇｃｙｌの温度補正が過剰な状態になることで、エンジン３の運転状態が悪化するのを回避するためである。
【０１２７】
さらに、Ｔｌｉｆｔ２≦Ｔｌｉｆｔ＿ｈａｔの範囲では、Ｄｌｉｆｔｉｎ＿ｔｅｓｔ＝０に設定されている。これは、そのような温度領域では、可変バルブリフト機構５０が伸縮することなく、安定した状態になることで、バルブリフトＬｉｆｔｉｎの温度補正が不要になることによる。
【０１２８】
次に、減算要素１３２では、ＦＦ補正値とＦＢ補正値との偏差（Ｄｌｉｆｔｉｎ＿ｔｅｓｔ−Ｄｌｉｆｔｉｎ＿ｆｂ）が算出される。
【０１２９】
一方、空燃比制御判定部１３４では、空燃比フィードバック制御中であるか否かが判定され、その判定結果に応じて、フィードバック制御中フラグＦ＿ＡＦＦＢの値が設定される。具体的には、フィードバック制御中フラグＦ＿ＡＦＦＢは、空燃比フィードバック制御中のときには「１」に、そうでないときには「０」にそれぞれ設定される。
【０１３０】
次いで、補正値選択部１３５では、空燃比制御判定部１３４で設定されたフィードバック制御中フラグＦ＿ＡＦＦＢの値に応じて、下式（１５），（１６）により、リフト補正値Ｄｌｉｆｔｉｎ＿ｃｏｍｐが算出される。
【数１０】
2006348882.tif 000012
【０１３１】
すなわち、空燃比フィードバック制御中であるときには、ＦＦ補正値とＦＢ補正値との偏差（Ｄｌｉｆｔｉｎ＿ｔｅｓｔ−Ｄｌｉｆｔｉｎ＿ｆｂ）がリフト補正値Ｄｌｉｆｔｉｎ＿ｃｏｍｐとして選択され、そうでないときには、ＦＦ補正値Ｄｌｉｆｔｉｎ＿ｔｅｓｔがリフト補正値Ｄｌｉｆｔｉｎ＿ｃｏｍｐとして選択される。なお、本実施形態では、リフト補正値Ｄｌｉｆｔｉｎ＿ｃｏｍｐおよびＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂが補正量に相当する。
【０１３２】
次いで、加算要素１３６で、下式（１７）により、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄが算出される。
【数１１】
2006348882.tif 000013
【０１３３】
次に、前述したＦＢ補正値算出部１３０について説明する。このＦＢ補正値算出部１３０は、図１７に示すように、第３推定吸気量算出部１４０、遅延要素１４１，１４２，１４４、推定バルブリフト算出部１４３、減算要素１４５、重み付き統計処理フィルタ１４６および応答指定型コントローラ１４７を備えている。
【０１３４】
まず、第３推定吸気量算出部１４０について説明する。この第３推定吸気量算出部１４０は、前述した制御周期ΔＴｎで第３推定吸気量Ｇｃｙｌ＿ｈａｔを算出するものであり、具体的には、図１８に示すように、４つの遅延要素１５０〜１５３、基本値算出部１５４、誤差推定係数算出部１５５および乗算要素１５６を備えている。
【０１３５】
４つの遅延要素１５０〜１５３では、エンジン回転数ＮＥ、カム位相Ｃａｉｎ、バルブリフトＬｉｆｔｉｎおよび空燃比指標値ＫＡＦに対してむだ時間ｄを反映させた値ＮＥ（ｎ−ｄ），Ｃａｉｎ（ｎ−ｄ），Ｌｉｆｔｉｎ（ｎ−ｄ），ＫＡＦ（ｎ−ｄ）がそれぞれ算出される。このむだ時間ｄは、混合気の燃焼により燃焼室内で発生した燃焼ガスがＬＡＦセンサ２４に到達するのに要すると推定される時間であり、具体的には、エンジン回転数ＮＥおよび第１推定吸気量Ｇｃｙｌ＿ｖｔに応じて、図１９に示すマップを検索することにより算出される。
【０１３６】
同図において、Ｇｃｙｌ１〜３は、Ｇｃｙｌ１＜Ｇｃｙｌ２＜Ｇｃｙｌ３の関係が成立するように設定される第１推定吸気量Ｇｃｙｌ＿ｖｔの所定値である。このマップでは、エンジン回転数ＮＥが高いほど、または第１推定吸気量Ｇｃｙｌ＿ｖｔが大きいほど（すなわち高負荷であるほど）、むだ時間ｄがより小さい値に設定されている。これは、そのような運転状態では、排ガスの流速が高くなることで、排ガスがＬＡＦセンサ２４に達するまでに要する時間すなわちむだ時間ｄが小さくなることによる。なお、このマップでは、むだ時間ｄは、制御周期ΔＴｎでの演算実行回数を表す値に設定されている。
【０１３７】
次いで、基本値算出部１５４では、下式（１８）により、第３推定吸気量Ｇｃｙｌ＿ｈａｔの算出に用いる基本値Ｇｃｙｌ＿ｈａｔ＿ｂｓが算出される。
【数１２】
2006348882.tif 000014
【０１３８】
ここで、Ｇｃｙｌ＿ｈａｔ＿ｂａｓｅは第３推定吸気量のマップ値を、Ｋ＿ｇｃｙｌ＿ｈａｔは補正係数をそれぞれ表しており、これらは以下のように算出される。
【０１３９】
まず、マップ値Ｇｃｙｌ＿ｈａｔ＿ｂａｓｅは、エンジン回転数ＮＥ（ｎ−ｄ）およびバルブリフトＬｉｆｔｉｎ（ｎ−ｄ）に応じて、図２０に示すマップを検索することにより算出される。このマップでは、マップ値Ｇｃｙｌ＿ｈａｔ＿ｂａｓｅは、前述した図１３におけるマップ値Ｇｃｙｌ＿ｖｔ＿ｂａｓｅと同様の傾向に設定されている。これは、図１３の説明で述べたのと同じ理由による。
【０１４０】
また、補正係数Ｋ＿ｇｃｙｌ＿ｈａｔは、エンジン回転数ＮＥ（ｎ−ｄ）およびカム位相Ｃａｉｎ（ｎ−ｄ）に応じて、図２１に示すマップを検索することにより算出される。このマップでは、補正係数Ｋ＿ｇｃｙｌ＿ｈａｔは、前述した図１４における補正係数Ｋ＿ｇｃｙｌ＿ｖｔと同様の傾向に設定されている。これは、図１４の説明で述べたのと同じ理由による。
【０１４１】
一方、誤差推定係数算出部１５５では、下式（１９）により、誤差推定係数ＫＥＧＣＹＬが算出される。
【数１３】
2006348882.tif 000015
【０１４２】
次いで、乗算要素１５６では、下式（２０）により、第３推定吸気量Ｇｃｙｌ＿ｈａｔが算出される。
【数１４】
2006348882.tif 000016
【０１４３】
以上のように、第３推定吸気量算出部１４０では、エンジン回転数ＮＥ、カム位相Ｃａｉｎ、バルブリフトＬｉｆｔｉｎおよび空燃比指標値ＫＡＦに対してむだ時間ｄを反映させた値ＮＥ（ｎ−ｄ），Ｃａｉｎ（ｎ−ｄ），Ｌｉｆｔｉｎ（ｎ−ｄ），ＫＡＦ（ｎ−ｄ）と、検出空燃比の今回値ＫＡＣＴ（ｎ）とを用いることにより、第３推定吸気量Ｇｃｙｌ＿ｈａｔが算出されるとともに、むだ時間ｄが、エンジン回転数ＮＥおよび第１推定吸気量Ｇｃｙｌ＿ｖｔに応じて設定される。それにより、第３推定吸気量Ｇｃｙｌ＿ｈａｔの算出結果に対して、混合気の燃焼により燃焼室内で発生した燃焼ガスがＬＡＦセンサ２４に到達するまでに要するむだ時間ｄを反映させることができるとともに、エンジン回転数ＮＥおよび第１推定吸気量Ｇｃｙｌ＿ｖｔの変化に伴うむだ時間ｄの変化も反映させることができる。その結果、第３推定吸気量Ｇｃｙｌ＿ｈａｔの算出精度を高めることができる。
【０１４４】
図１７に戻り、前述した遅延要素１４１，１４２では、エンジン回転数ＮＥおよびカム位相Ｃａｉｎに対してむだ時間ｄを反映させた値ＮＥ（ｋ−ｄ），Ｃａｉｎ（ｋ−ｄ）がそれぞれ算出される。この場合、前述したように、むだ時間ｄは、制御周期ΔＴと異なる制御周期ΔＴｎの演算実行回数として算出されるので、エンジン回転数ＮＥに基づき、制御周期ΔＴの実行回数に対応するように変換した値を用いる。
【０１４５】
また、推定バルブリフト算出部１４３では、制御周期ΔＴでの第３推定吸気量のサンプリング値Ｇｃｙｌ＿ｈａｔ（ｋ）、エンジン回転数ＮＥ（ｋ−ｄ）およびカム位相Ｃａｉｎ（ｋ−ｄ）に応じて、マップを検索することにより、推定バルブリフトＬｉｆｔｉｎ＿ｈａｔ（ｋ）が算出される。なお、本実施形態では、推定バルブリフトＬｉｆｔｉｎ＿ｈａｔが動作状態パラメータの推定値に相当する。
【０１４６】
この場合、推定バルブリフトＬｉｆｔｉｎ＿ｈａｔ（ｋ）の算出に用いるマップとしては、図２２に示すＣａｉｎ（ｋ−ｄ）＝Ｃａｉｎｒｔ用のマップと、図２３に示すＣａｉｎ（ｋ−ｄ）＝Ｃａｉｎｍｉ（Ｃａｉｎａｄ／２に相当する値）用のマップと、図２４に示すＣａｉｎ（ｋ−ｄ）＝Ｃａｉｎａｄ用のマップと、カム位相Ｃａｉｎ（ｋ−ｄ）がＣａｉｎｒｔとＣａｉｎｍｉの間、およびＣａｉｎｍｉとＣａｉｎａｄの間にあるときの多数の値にそれぞれ対応して設定された多数のマップ（図示せず）とが設けられている。以上のマップの検索では、エンジン回転数ＮＥ（ｋ−ｄ）、カム位相Ｃａｉｎ（ｋ−ｄ）および第３推定吸気量Ｇｃｙｌ＿ｈａｔ（ｋ）に基づいて複数の値を選択するとともに、当該複数の選択値の補間演算により、推定バルブリフトＬｉｆｔｉｎ＿ｈａｔ（ｋ）が算出される。
【０１４７】
図２２のＣａｉｎ（ｋ−ｄ）＝Ｃａｉｎｒｔ用のマップでは、推定バルブリフトＬｉｆｔｉｎ＿ｈａｔ（ｋ）は、ＮＥ（ｋ−ｄ）＝ＮＥ２の場合、Ｇｃｙｌ＿ｈａｔ（ｋ）が大きいほど、より大きい値に設定されている。また、ＮＥ（ｋ−ｄ）＝ＮＥ１の場合、推定バルブリフトＬｉｆｔｉｎ＿ｈａｔ（ｋ）は、Ｇｃｙｌ＿ｈａｔ（ｋ）が所定値Ｇｃｙｌ４未満の範囲では、ＮＥ（ｋ−ｄ）＝ＮＥ２の場合よりも大きい値で、かつＧｃｙｌ＿ｈａｔ（ｋ）が大きいほど、より大きい値に設定されている。これは、エンジン回転数ＮＥが変化すると、共鳴効果および吸気の慣性効果などによる充填効率が変化するとともに、低回転域では、エンジン回転数ＮＥが低いほど、充填効率が高く、吸入空気量Ｇｃｙｌを得るのに必要なバルブリフトＬｉｆｔｉｎが小さくなるためである。さらに、ＮＥ（ｋ−ｄ）＝ＮＥ１の場合、Ｇｃｙｌ＿ｈａｔ（ｋ）≧Ｇｃｙｌ４の範囲では、Ｌｉｆｔｉｎ＿ｈａｔ（ｋ）は一定値に設定されている。これは、ＮＥ（ｋ−ｄ）＝ＮＥ１の場合、バルブリフトＬｉｆｔｉｎをＧｃｙｌ＿ｈａｔ（ｋ）＝Ｇｃｙｌ４のときの値よりも大きくしても、最大値Ｇｃｙｌ４を上回る吸入空気量Ｇｃｙｌを得られないことによる。
【０１４８】
さらに、ＮＥ（ｋ−ｄ）＝ＮＥ３の場合、推定バルブリフトＬｉｆｔｉｎ＿ｈａｔ（ｋ）は、Ｇｃｙｌ＿ｈａｔ（ｋ）が所定値Ｇｃｙｌ５未満の範囲では、ＮＥ（ｋ−ｄ）＝ＮＥ２の場合よりも大きい値で、かつＧｃｙｌ＿ｈａｔ（ｋ）が大きいほど、より大きい値に設定されている。これは、上述したように、エンジン回転数ＮＥの変化に伴って充填効率が変化するとともに、高回転域では、エンジン回転数ＮＥが高いほど、吸入空気量Ｇｃｙｌを得るのに必要なバルブリフトＬｉｆｔｉｎが大きくなるためである。また、ＮＥ（ｋ−ｄ）＝ＮＥ３の場合、Ｇｃｙｌ＿ｈａｔ（ｋ）≧Ｇｃｙｌ５の範囲では、Ｌｉｆｔｉｎ＿ｈａｔ（ｋ）は一定値に設定されている。これは、ＮＥ（ｋ−ｄ）＝ＮＥ３の場合、バルブリフトＬｉｆｔｉｎをＧｃｙｌ＿ｈａｔ（ｋ）＝Ｇｃｙｌ５のときの値よりも大きくしても、最大値Ｇｃｙｌ５を上回る吸入空気量Ｇｃｙｌを得られないことによる。
【０１４９】
また、図２３のＣａｉｎ（ｋ−ｄ）＝Ｃａｉｎｍｉ用のマップでは、推定バルブリフトＬｉｆｔｉｎ＿ｈａｔ（ｋ）は、ＮＥ（ｋ−ｄ）＝ＮＥ１の場合、Ｇｃｙｌ＿ｈａｔ（ｋ）が前述した所定値Ｇｃｙｌ４よりも大きい所定値Ｇｃｙｌ６未満の範囲では、Ｇｃｙｌ＿ｈａｔ（ｋ）が大きいほど、より大きい値に設定されている。これは、Ｃａｉｎ（ｋ−ｄ）＝Ｃａｉｎｒｔの場合、低回転域では、吸気弁４の遅閉じに起因して吹き戻しが発生するのに対して、Ｃａｉｎ（ｋ−ｄ）＝Ｃａｉｎｍｉの場合、低回転域でもそのような吹き戻しが発生しないことで、吸入空気量Ｇｃｙｌの最大値がより大きくなることによる。
【０１５０】
さらに、このマップでは、推定バルブリフトＬｉｆｔｉｎ＿ｈａｔ（ｋ）は、ＮＥ（ｋ−ｄ）＝ＮＥ３の場合、Ｇｃｙｌ＿ｈａｔ（ｋ）が前述した所定値Ｇｃｙｌ５よりも小さい所定値Ｇｃｙｌ７未満の範囲では、Ｇｃｙｌ＿ｈａｔ（ｋ）が大きいほど、より大きい値に設定されている。これは、Ｃａｉｎ（ｋ−ｄ）＝Ｃａｉｎｍｉの場合、高回転域では、吸気の慣性効果がＣａｉｎ（ｋ−ｄ）＝Ｃａｉｎｒｔの場合よりも小さくなることで、吸入空気量Ｇｃｙｌの最大値がより小さくなることによる。
【０１５１】
一方、図２４のＣａｉｎ（ｋ−ｄ）＝Ｃａｉｎａｄ用のマップでは、推定バルブリフトＬｉｆｔｉｎ＿ｈａｔ（ｋ）は、ＮＥ（ｋ−ｄ）＝ＮＥ１〜３のいずれの場合においても、Ｇｃｙｌ＿ｈａｔ（ｋ）が所定値Ｇｃｙｌ８未満の範囲では、Ｇｃｙｌ＿ｈａｔ（ｋ）が大きいほど、より大きい値に設定されているとともに、全体として、低リフト域の値に設定されている。これは、Ｃａｉｎ（ｋ−ｄ）＝Ｃａｉｎａｄの場合、バルブオーバーラップの増大に伴って、内部ＥＧＲ量が増大することにより、吸入空気量Ｇｃｙｌが低下するので、燃焼の安定性を確保するために、バルブリフトＬｉｆｔｉｎとして低リフト域の値を使用することによる。また、このマップでは、推定バルブリフトＬｉｆｔｉｎ＿ｈａｔ（ｋ）は、エンジン回転数ＮＥが高いほど、より小さい値に設定されている。これは、エンジン回転数ＮＥが高いほど、排ガスの掃気効果が向上し、内部ＥＧＲ量が低下することで、同じ吸入空気量Ｇｃｙｌを得るためのバルブリフトＬｉｆｔｉｎがより小さくなることによる。
【０１５２】
一方、遅延要素１４４では、バルブリフトＬｉｆｔｉｎのむだ時間ｄを反映させた値Ｌｉｆｔｉｎ（ｋ−ｄ）が算出される。そして、減算要素１４５では、下式（２１）により、推定誤差Ｅｌｉｆｔが算出される。
【数１５】
2006348882.tif 000017
【０１５３】
次いで、重み付き統計処理フィルタ１４６では、下式（２２），（２３）に示す重み付き逐次型統計処理アルゴリズムより、推定誤差の統計処理値Ｅｌｉｆｔ＿ＬＳが算出される。
【数１６】
2006348882.tif 000018
【０１５４】
上記式（２２）において、Ｐは重みゲインであり、Ｅ＿ＬＳは式（２３）のように定義される偏差である。この重みゲインＰは、バルブリフトＬｉｆｔｉｎ（ｋ−ｄ）に応じて、図２５に示すマップを検索することにより算出される。このマップでは、重みゲインＰは、バルブリフトＬｉｆｔｉｎ（ｋ−ｄ）が大きいほど、より小さい値に設定されている。これは、以下の理由による。
【０１５５】
すなわち、前述した図２２〜２４に示すように、第３推定吸気量Ｇｃｙｌ＿ｈａｔが大きい領域では、これに対する推定バルブリフトＬｉｆｔｉｎ＿ｈａｔの傾きが大きいことで、吸入空気量に対する推定バルブリフトＬｉｆｔｉｎの感度が高くなるため、第３推定吸気量Ｇｃｙｌ＿ｈａｔの推定誤差が大きいと、推定バルブリフトＬｉｆｔｉｎ＿ｈａｔの推定誤差Ｅｌｉｆｔも大きくなってしまう。その結果、推定バルブリフトＬｉｆｔｉｎ＿ｈａｔの推定誤差Ｅｌｉｆｔの増大に伴って、ＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂの算出精度も低下してしまう。したがって、ＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂの算出精度、すなわち補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄの算出精度を高めるために、重みゲインＰは、上述したように、バルブリフトＬｉｆｔｉｎ（ｋ−ｄ）が大きいほど、より小さい値に設定されている。
【０１５６】
次に、応答指定型コントローラ１４７では、下式（２４），（２５）に示す簡易型の応答指定型制御アルゴリズムにより、ＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂが算出される。
【数１７】
2006348882.tif 000019
【０１５７】
この式（２４）において、Ｋｒｃｈは所定の到達則ゲインを、Ｋａｄｐは所定の適応則ゲインをそれぞれ表している。また、式（２５）のσは、式（２５）のように定義される切換関数であり、同式（２５）のＳは、−１＜Ｓ＜０の関係が成立するように設定される切換関数設定パラメータである。
【０１５８】
このように、応答指定型コントローラ１４７において、ＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂは、簡易型の応答指定型制御アルゴリズムにより算出されるので、推定誤差の統計処理値Ｅｌｉｆｔ＿ＬＳを値０に収束させるように算出される。すなわち、ＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂは、推定誤差の統計処理値Ｅｌｉｆｔ＿ＬＳが最小となるように算出され、結果的に、推定誤差Ｅｌｉｆｔが最小となるように算出される。
【０１５９】
なお、ＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂの算出において、以上のように、エンジン回転数ＮＥ、カム位相ＣａｉｎおよびバルブリフトＬｉｆｔｉｎに対してむだ時間ｄを反映させた値ＮＥ（ｋ−ｄ），Ｃａｉｎ（ｋ−ｄ），Ｌｉｆｔｉｎ（ｋ−ｄ）を用いる理由は、前述した第３推定吸気量Ｇｃｙｌ＿ｈａｔの算出において述べた理由と同じである。
【０１６０】
次に、図２６を参照しながら、点火時期コントローラ１８０について説明する。なお、本実施形態では、点火時期コントローラ１８０が、制御手段および点火時期決定手段に相当する。この点火時期コントローラ１８０は、以下に述べるように、点火時期Ｉｇｌｏｇを算出するものであり、最大推定吸気量算出部１８１、正規化吸気量算出部１８２、基本点火時期算出部１８３、点火補正値算出部１８４および加算要素１８５を備えている。
【０１６１】
最大推定吸気量算出部１８１では、以下に述べるように、エンジン回転数ＮＥおよびカム位相Ｃａｉｎに応じて、最大推定吸気量Ｇｃｙｌ＿ｍａｘが算出される。具体的には、まず、エンジン回転数ＮＥに応じて、図２７に示すマップを検索することにより、最大推定吸気量の基本値Ｇｃｙｌ＿ｍａｘ＿ｂａｓｅを算出する。
【０１６２】
このマップでは、基本値Ｇｃｙｌ＿ｍａｘ＿ｂａｓｅは、低中回転域では、エンジン回転数ＮＥが高いほど、より大きな値に設定され、高回転域では、エンジン回転数ＮＥが高いほど、より小さな値に設定されているとともに、中回転域の所定値のときに、その最大値を示すように設定されている。これは、運転性の観点から、中回転域の所定値のときに充填効率が最も高くなるように吸気系が構成されているためである。
【０１６３】
また、エンジン回転数ＮＥおよびカム位相Ｃａｉｎに応じて、図２８に示すマップを検索することにより、補正係数Ｋ＿ｇｃｙｌ＿ｍａｘを算出する。このマップでは、補正係数Ｋ＿ｇｃｙｌ＿ｍａｘは、ＮＥ＝ＮＥ１またはＮＥ２の場合、カム位相Ｃａｉｎが最遅角値Ｃａｉｎｒｔに近い領域では、最遅角値Ｃａｉｎｒｔに近いほど、より小さい値に設定され、それ以外の領域では、カム位相Ｃａｉｎが最進角値Ｃａｉｎａｄ側の値であるほど、より小さな値に設定されている。さらに、ＮＥ＝ＮＥ３の場合、補正係数Ｋ＿ｇｃｙｌ＿ｍａｘは、カム位相Ｃａｉｎが最遅角値Ｃａｉｎｒｔに近い領域では、一定値（値１）に設定され、それ以外の領域では、カム位相Ｃａｉｎが最進角値Ｃａｉｎａｄ側の値であるほど、より小さな値に設定されている。このように補正係数Ｋ＿ｇｃｙｌ＿ｍａｘが設定されている理由は、前述した補正係数Ｋ＿ｇｃｙｌ＿ｖｔの算出に用いる図１４のマップの説明で述べたのと同じ理由による。
【０１６４】
そして、以上のように算出した最大推定吸気量の基本値Ｇｃｙｌ＿ｍａｘ＿ｂａｓｅおよび補正係数Ｋ＿ｇｃｙｌ＿ｍａｘを用い、下式（２６）により、最大推定吸気量Ｇｃｙｌ＿ｍａｘが算出される。
【数１８】
2006348882.tif 000020
【０１６５】
次いで、正規化吸気量算出部１８２では、正規化吸気量Ｋｇｃｙｌが、下式（２７）により算出される。この場合、吸入空気量Ｇｃｙｌは、前述した吸気量算出部１１０で算出された値を用いる。
【数１９】
2006348882.tif 000021
【０１６６】
さらに、基本点火時期算出部１８３では、以下に述べるように、正規化吸気量Ｋｇｃｙｌ、エンジン回転数ＮＥおよびカム位相Ｃａｉｎに応じて、基本点火時期マップを検索することにより、基本点火時期Ｉｇｌｏｇ＿ｍａｐが算出される。この場合、基本点火時期マップとしては、図２９に示すＣａｉｎ＝Ｃａｉｎｒｔ用のマップと、図３０に示すＣａｉｎ＝Ｃａｉｎａｄ用のマップと、カム位相Ｃａｉｎが最遅角値Ｃａｉｎｒｔと最進角値Ｃａｉｎａｄとの間にあるときの複数段階のカム位相Ｃａｉｎの値にそれぞれ対応して設定された複数のマップ（図示せず）とで構成されている。
【０１６７】
以上の基本点火時期マップの検索では、正規化吸気量Ｋｇｃｙｌ、エンジン回転数ＮＥおよびカム位相Ｃａｉｎに基づいて複数の値を選択するとともに、当該複数の選択値の補間演算により、基本点火時期Ｉｇｌｏｇ＿ｍａｐが算出される。
【０１６８】
また、点火補正値算出部１８４では、大気温ＴＡ、エンジン水温ＴＷおよび目標空燃比ＫＣＭＤなどに応じて、図示しないマップを検索することにより、各種の補正値が算出され、これらの各種の補正値に基づき、点火補正値Ｄｉｇｌｏｇが算出される。
【０１６９】
さらに、加算要素１８５では、点火時期Ｉｇｌｏｇが、下式（２８）により算出される。
【数２０】
2006348882.tif 000022
【０１７０】
そして、点火プラグ１１が、この点火時期Ｉｇｌｏｇに応じた放電タイミングで放電するように制御される。
【０１７１】
次に、図３１を参照しながら、前述した制御周期ΔＴｎでＥＣＵ２により実行される制御処理について説明する。なお、以下の説明において算出される各種の値は、ＥＣＵ２のＲＡＭ内に記憶されるものとする。この処理では、まず、ステップ１（図では「Ｓ１」と略す。以下同じ）で、空燃比制御処理が実行される。この空燃比制御処理は、燃料噴射量ＴＯＵＴを算出するものであり、その詳細については後述する。
【０１７２】
次いで、ステップ２で、点火時期制御処理を実行する。この点火時期制御処理は、点火時期Ｉｇｌｏｇを算出するものであり、その詳細については後述する。
【０１７３】
次に、ステップ３で、空燃比補正係数ＫＡＦＤおよび目標空燃比ＫＣＭＤを用い、前述した式（６）により、空燃比指標値ＫＡＦを算出する。その後、ステップ４で、第１推定吸気量Ｇｃｙｌ＿ｖｔおよびエンジン回転数ＮＥに応じて、前述した図１９のマップを検索することにより、むだ時間ｄを算出する。
【０１７４】
次いで、ステップ５で、基本値Ｇｃｙｌ＿ｈａｔ＿ｂｓを、前述した演算手法により算出する。すなわち、マップ値Ｇｃｙｌ＿ｈａｔ＿ｂａｓｅを、エンジン回転数ＮＥ（ｎ−ｄ）およびバルブリフトＬｉｆｔｉｎ（ｎ−ｄ）に応じて、図２０に示すマップを検索することにより算出し、さらに、補正係数Ｋ＿ｇｃｙｌ＿ｈａｔを、エンジン回転数ＮＥ（ｎ−ｄ）およびカム位相Ｃａｉｎ（ｎ−ｄ）に応じて、図２１に示すマップを検索することにより算出する。そして、これらの値Ｇｃｙｌ＿ｈａｔ＿ｂｓ，Ｋ＿ｇｃｙｌ＿ｈａｔを用い、前述した式（１８）により、基本値Ｇｃｙｌ＿ｈａｔ＿ｂｓを算出する。
【０１７５】
次に、ステップ６に進み、前述した式（１９）により、誤差推定係数ＫＥＧＣＹＬを算出し、ステップ６に続くステップ７で、前述した式（２０）により、第３推定吸気量Ｇｃｙｌ＿ｈａｔを算出する。その後、本処理を終了する。
【０１７６】
以下、図３２を参照しながら、前述したステップ１の空燃比制御処理について説明する。本処理は、燃料噴射量ＴＯＵＴを燃料噴射弁１０毎に算出するものであり、前述した空燃比コントローラ１００での算出処理に相当する。
【０１７７】
この処理では、まず、ステップ２０において、基本燃料噴射量Ｔｃｙｌ＿ｂｓを算出する。この基本燃料噴射量Ｔｃｙｌ＿ｂｓの算出処理は、具体的には、図３３に示すように実行される。すなわち、まず、ステップ３０で、前述した式（１０）により、第２推定吸気量Ｇｃｙｌ＿ａｆｍを算出する。
【０１７８】
次に、ステップ３１で、ＲＡＭ内に記憶されている補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄの値をサンプリングする。なお、この補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄは、後述するように、本処理の制御周期ΔＴｎとは異なる制御周期ΔＴで算出される。
【０１７９】
次いで、ステップ３２〜３４で、前述した手法により、第１推定吸気量Ｇｃｙｌ＿ｖｔを算出する。すなわち、エンジン回転数ＮＥおよび補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄに応じて、前述した図１３のマップを検索することにより、基本推定吸気量Ｇｃｙｌ＿ｖｔ＿ｂａｓｅを算出し（ステップ３２）、エンジン回転数ＮＥおよびカム位相Ｃａｉｎに応じて、前述した図１４のマップを検索することにより、補正係数Ｋ＿ｇｃｙｌ＿ｖｔを算出する（ステップ３３）。そして、前述した式（９）により、第１推定吸気量Ｇｃｙｌ＿ｖｔを算出する（ステップ３４）。
【０１８０】
次に、ステップ３５に進み、前述した可変機構故障フラグＦ＿ＶＤＮＧが「１」であるか否かを判別する。この判別結果がＮＯで、２つの可変機構がいずれも正常であるときには、ステップ３６に進み、吸入空気量Ｇｃｙｌを第１推定吸気量Ｇｃｙｌ＿ｖｔに設定する。
【０１８１】
一方、ステップ３５の判別結果がＹＥＳで、２つの可変機構の少なくとも一方が故障しているときには、ステップ３７に進み、吸入空気量Ｇｃｙｌを第２推定吸気量Ｇｃｙｌ＿ａｆｍに設定する。
【０１８２】
ステップ３６または３７に続くステップ３８では、基本燃料噴射量Ｔｃｙｌ＿ｂｓを、換算係数と吸入空気量の積Ｋｇｔ・Ｇｃｙｌに設定した後、本処理を終了する。
【０１８３】
図３２に戻り、ステップ２０で、以上のように基本燃料噴射量Ｔｃｙｌ＿ｂｓを算出した後、ステップ２１に進み、総補正係数ＫＴＯＴＡＬを算出する。具体的には、前述したように、各種の運転パラメータ（例えば大気温ＴＡや、大気圧ＰＡ、エンジン水温ＴＷ、アクセル開度ＡＰなど）に応じて、各種のマップを検索することで各種の補正係数を算出するとともに、これらの各種の補正係数を互いに乗算することにより、総補正係数ＫＴＯＴＡＬが算出される。
【０１８４】
次いで、ステップ２２に進み、前述したように、アクセル開度ＡＰおよび吸入空気量Ｇｃｙｌに応じて、図１１に示すマップを検索することにより、目標空燃比ＫＣＭＤを算出する。
【０１８５】
次に、ステップ２３に進み、空燃比補正係数ＫＡＦＤを算出する。この空燃比補正係数ＫＡＦＤの算出は、具体的には、図３４に示すように実行される。
【０１８６】
まず、ステップ４０において、実行条件フラグＦ＿ＡＦＦＢＯＫが「１」であるか否かを判別する。この実行条件フラグＦ＿ＡＦＦＢＯＫは、空燃比フィードバック制御の実行条件が成立しているか否かを表すものであり、図示しない処理において、以下の（ｃ１）〜（ｃ４）の実行条件がいずれも成立しているときには、「１」に設定され、（ｃ１）〜（ｃ４）の実行条件のうちの少なくとも１つが不成立のときには、「０」に設定される。
【０１８７】
（ｃ１）ＬＡＦセンサが活性化していること。
（ｃ２）エンジン３がリーンバーン運転中でなくかつフューエルカット運転中でないこと。
（ｃ３）エンジン回転数ＮＥおよびアクセル開度ＡＰがいずれも、所定の範囲囲内の値であること。
（ｃ４）点火時期の遅角制御中でないこと。
【０１８８】
ステップ４０の判別結果がＹＥＳで、空燃比フィードバック制御の実行条件が成立しているときには、ステップ４１に進み、空燃比補正係数ＫＡＦＤを、前述した式（１）〜（５）の簡易型の応答指定型制御アルゴリズムにより算出する。
【０１８９】
次に、ステップ４２に進み、空燃比補正係数ＫＡＦＤを前述した式（１）〜（５）で算出したこと、すなわち空燃比フィードバック制御を実行中であることを表すために、フィードバック制御中フラグＦ＿ＡＦＦＢを「１」に設定した後、本処理を終了する。
【０１９０】
一方、ステップ４０の判別結果がＮＯで、空燃比フィードバック制御の実行条件が不成立であるときには、ステップ４３に進み、空燃比補正係数ＫＡＦＤを目標空燃比ＫＣＭＤに設定する。次いで、ステップ４４で、空燃比フィードバック制御を実行していないことを表すために、フィードバック制御中フラグＦ＿ＡＦＦＢを「０」に設定した後、本処理を終了する。
【０１９１】
図３２に戻り、ステップ２３で以上のように空燃比補正係数ＫＡＦＤを算出した後、ステップ２４に進み、前述した式（８）により、要求燃料噴射量Ｔｃｙｌを算出する。次に、ステップ２５で、前述したように、要求燃料噴射量Ｔｃｙｌに、所定の燃料付着補正処理を施すことにより、燃料噴射量ＴＯＵＴを算出した後、本処理を終了する。そして、ＥＣＵ２により、以上のように算出された燃料噴射量ＴＯＵＴに基づいて、燃料噴射弁１０の燃料噴射タイミングおよび開弁時間が決定され、燃料噴射弁１０が制御される。その結果、混合気の空燃比すなわち検出空燃比ＫＡＣＴが、目標空燃比ＫＣＭＤに収束するようにフィードバック制御される。
【０１９２】
以下、図３５を参照しながら、前述したステップ２の点火時期制御処理について説明する。本処理は、以下に述べるように点火時期Ｉｇｌｏｇを算出するものであり、前述した点火時期コントローラ１８０での算出処理に相当する。
【０１９３】
この処理では、まず、ステップ５０で、前述した可変機構故障フラグＦ＿ＶＤＮＧが「１」であるか否かを判別する。この判別結果がＮＯで、２つの可変機構がいずれも正常であるときには、ステップ５１に進み、エンジン始動フラグＦ＿ＥＮＧＳＴＡＲＴが「１」であるか否かを判別する。
【０１９４】
このエンジン始動フラグＦ＿ＥＮＧＳＴＡＲＴは、図示しない判定処理において、エンジン回転数ＮＥおよびＩＧ・ＳＷ２９のＯＮ／ＯＦＦ信号に応じて、エンジン始動制御中すなわちクランキング中であるか否かを判定することにより設定されるものであり、具体的には、エンジン始動制御中であるときには「１」に、それ以外のときには「０」にそれぞれ設定される。
【０１９５】
ステップ５１の判別結果がＹＥＳで、エンジン始動制御中であるときには、ステップ５２に進み、点火時期Ｉｇｌｏｇを、所定の始動時用値Ｉｇ＿ｃｒｋ（例えばＢＴＤＣ１０゜）に設定した後、本処理を終了する。
【０１９６】
一方、ステップ５１の判別結果がＮＯで、エンジン始動制御中でないときには、ステップ５３に進み、アクセル開度ＡＰが所定値ＡＰＲＥＦより小さいか否かを判別する。この所定値ＡＰＲＥＦは、アクセルペダルが踏まれていないことを判別するためのものであり、アクセルペダルが踏まれていないことを判別可能な値（例えば１゜）に設定されている。
【０１９７】
この判別結果がＹＥＳで、アクセルペダルが踏まれていないときには、ステップ５４に進み、始動後タイマの計時値Ｔａｓｔが所定値Ｔａｓｔｌｍｔより小さいか否かを判別する。この始動後タイマは、エンジン始動制御終了後の経過時間を計時するものであり、アップカウント式のタイマで構成されている。
【０１９８】
この判別結果がＹＥＳで、Ｔａｓｔ＜Ｔａｓｔｌｍｔのときには、触媒暖機制御を実行すべきであるとして、ステップ５５に進み、触媒暖機用値Ｉｇ＿ａｓｔを算出する。この触媒暖機用値Ｉｇ＿ａｓｔは、具体的には、下式（２９）〜（３１）の応答指定型制御アルゴリズムにより算出される。
【０１９９】
【数２１】
2006348882.tif 000023
【０２００】
上記式（２９）において、Ｉｇ＿ａｓｔ＿ｂａｓｅは、所定の触媒暖機用の基準点火時期（例えばＢＴＤＣ５゜）を表し、Ｋｒｃｈ＿ｉｇ，Ｋａｄｐ＿ｉｇは、所定の到達則ゲインおよび適応則ゲインをそれぞれ表している。また、σ＿ｉｇは、式（３０）のように定義される切換関数である。同式（３０）において、ｐｏｌｅ＿ｉｇは、−１＜ｐｏｌｅ＿ｉｇ＜０の関係が成立するように設定される切換関数設定パラメータであり、Ｅｎａｓｔは、式（３１）により算出される追従誤差である。式（３１）において、ＮＥ＿ａｓｔは、所定の触媒暖機用の目標回転数（例えば１８００ｒｐｍ）である。以上の制御アルゴリズムにより、触媒暖機用値Ｉｇ＿ａｓｔは、エンジン回転数ＮＥを上記触媒暖機用の目標回転数ＮＥ＿ａｓｔに収束させる値として算出される。
【０２０１】
次いで、ステップ５６に進み、点火時期Ｉｇｌｏｇを上記触媒暖機用値Ｉｇ＿ａｓｔに設定した後、本処理を終了する。
【０２０２】
一方、ステップ５３または５４の判別結果がＮＯのとき、すなわちＴａｓｔ≧Ｔａｓｔｌｍｔであるとき、またはアクセルペダルが踏まれているときには、ステップ５７に進み、通常点火時期制御処理を実行する。
【０２０３】
この通常点火時期制御処理は、具体的には、図３６に示すように実行される。まず、ステップ７０で、最大推定吸気量Ｇｃｙｌ＿ｍａｘを、前述した手法により算出する。すなわち、エンジン回転数ＮＥに応じて、図２７に示すマップを検索することにより、最大推定吸気量の基本値Ｇｃｙｌ＿ｍａｘ＿ｂａｓｅを算出し、エンジン回転数ＮＥおよびカム位相Ｃａｉｎに応じて、図２８に示すマップを検索することにより、補正係数Ｋ＿ｇｃｙｌ＿ｍａｘを算出する。そして、以上のように算出した２つの値Ｇｃｙｌ＿ｍａｘ＿ｂａｓｅ，Ｋ＿ｇｃｙｌ＿ｍａｘに基づき、前述した式（２６）により、最大推定吸気量Ｇｃｙｌ＿ｍａｘを算出する。
【０２０４】
次いで、ステップ７１で、正規化吸気量Ｋｇｃｙｌを、前述した式（２７）により算出する。この後、ステップ７２で、基本点火時期Ｉｇｌｏｇ＿ｍａｐを前述した手法により算出する。すなわち、正規化吸気量Ｋｇｃｙｌ、エンジン回転数ＮＥおよびカム位相Ｃａｉｎに応じて、図２９，３０などの基本点火時期マップを検索し、複数の値を選択するとともに、当該複数の選択値の補間演算により、基本点火時期Ｉｇｌｏｇ＿ｍａｐを算出する。
【０２０５】
次に、ステップ７３で、点火補正値Ｄｉｇｌｏｇを前述した手法により算出する。すなわち、大気温ＴＡ、エンジン水温ＴＷおよび目標空燃比ＫＣＭＤなどに応じて、図示しないマップを検索することにより、各種の補正値を算出し、これらの各種の補正値に基づき、点火補正値Ｄｉｇｌｏｇを算出する。次いで、ステップ７４で、点火時期Ｉｇｌｏｇを、前述した式（２８）により算出した後、本処理を終了する。
【０２０６】
図２４に戻り、ステップ５７で、以上のように通常点火時期制御処理を実行した後、本処理を終了する。
【０２０７】
一方、ステップ５０の判別結果がＹＥＳで、２つの可変機構の少なくとも一方が故障しているときには、ステップ５８に進み、故障時用値Ｉｇ＿ｆｓを算出する。この故障時用値Ｉｇ＿ｆｓは、具体的には、下式（３２）〜（３４）の応答指定型制御アルゴリズムにより、算出される。
【０２０８】
【数２２】
2006348882.tif 000024
【０２０９】
上記式（３２）において、Ｉｇ＿ｆｓ＿ｂａｓｅは、所定の故障時用の基準点火時期（例えばＴＤＣ±０゜）を表し、Ｋｒｃｈ＿ｉｇ#，Ｋａｄｐ＿ｉｇ#は、所定の到達則ゲインおよび適応則ゲインをそれぞれ表している。また、σ＿ｉｇ#は、式（３３）のように定義される切換関数である。同式（３３）において、ｐｏｌｅ＿ｉｇ#は、−１＜ｐｏｌｅ＿ｉｇ#＜０の関係が成立するように設定される切換関数設定パラメータであり、Ｅｎｆｓは、式（３４）により算出される追従誤差である。式（３４）において、ＮＥ＿ｆｓは、所定の故障時目標回転数（例えば２０００ｒｐｍ）である。以上の制御アルゴリズムにより、故障時用値Ｉｇ＿ｆｓは、エンジン回転数ＮＥを上記故障時目標回転数ＮＥ＿ｆｓに収束させる値として算出される。
【０２１０】
次いで、ステップ５９に進み、点火時期Ｉｇｌｏｇを上記故障時用値Ｉｇ＿ｆｓに設定した後、本処理を終了する。そして、ＥＣＵ２により、点火プラグ１１が、以上のように算出された点火時期Ｉｇｌｏｇに応じた放電タイミングで放電するように制御される。
【０２１１】
以下、図３７を参照しながら、ＥＣＵ２において、タイマ設定により前述した制御周期ΔＴで実行される制御処理について説明する。この処理では、まず、ステップ８０で、ＲＡＭに記憶されている第１推定吸気量Ｇｃｙｌ＿ｖｔおよび第３推定吸気量Ｇｃｙｌ＿ｈａｔの値をサンプリングする。すなわち、Ｇｃｙｌ＿ｖｔ（ｋ）およびＧｃｙｌ＿ｈａｔ（ｋ）をサンプリングする。
【０２１２】
次いで、ステップ８１で、推定機構温度Ｔｌｉｆｔ＿ｈａｔを算出する。この推定機構温度Ｔｌｉｆｔ＿ｈａｔの算出は、具体的には、図３８に示すように実行されるとともに、エンジン停止時も実行される。
【０２１３】
すなわち、まず、ステップ９０で、エンジン停止フラグＦ＿ＥＮＧＳＴＰが「１」であるか否かを判別する。このエンジン停止フラグＦ＿ＥＮＧＳＴＰは、図示しない判定処理において、ＩＧ・ＳＷ２９のＯＮ／ＯＦＦ状態およびエンジン回転数ＮＥに基づき、エンジン３が停止中であるときには「１」に設定され、運転中は「０」に設定される。
【０２１４】
ステップ９０の判別結果がＹＥＳで、エンジン停止中であるときには、ステップ９１に進み、推定終了フラグＦ＿ＥＮＤが「１」であるか否かを判別する。
【０２１５】
この判別結果がＮＯのときには、推定機構温度Ｔｌｉｆｔ＿ｈａｔを算出すべきであるとして、ステップ９２に進み、停止タイマの計時値ＴＭＯＦＦを「１」インクリメントする。この停止タイマは、エンジン３の停止時間を計時するものである。
【０２１６】
次いで、ステップ９３で、停止タイマの計時値ＴＭＯＦＦが所定値ＴＭＲＥＦ以上であるか否かを判別する。この所定値ＴＭＲＥＦは、エンジン３の停止時間が長く、可変バルブリフト機構５０が十分に冷えることで、その温度がほとんど変化しなくなると推定されるような値（例えば６時間に相当する値）に設定されている。
【０２１７】
このステップ９３の判別結果がＮＯのときには、ステップ９４に進み、前述した式（１４）により、推定機構温度Ｔｌｉｆｔ＿ｈａｔを算出する。その後、本処理を終了する。
【０２１８】
一方、ステップ９３の判別結果がＹＥＳのときには、推定機構温度Ｔｌｉｆｔ＿ｈａｔの算出を停止すべきであるとして、ステップ９５で、推定終了フラグＦ＿ＥＮＤを「１」に設定した後、本処理を終了する。これにより、次回以降のループにおいて、ステップ９１の判別結果がＹＥＳとなり、その場合には、推定機構温度Ｔｌｉｆｔ＿ｈａｔを算出することなく、そのまま本処理を終了する。
【０２１９】
一方、前述したステップ９０の判別結果がＮＯで、エンジン運転中のときには、ステップ９６に進み、推定終了フラグＦ＿ＥＮＤが「１」であるか否かを判別する。この判別結果がＹＥＳで、エンジン３の停止時間が長いときには、ステップ９７に進み、大気温ＴＡ（ｋ）を、推定機構温度の前回値Ｔｌｉｆｔ＿ｈａｔ（ｋ−１）として設定する。
【０２２０】
次いで、ステップ９８で、推定終了フラグＦ＿ＥＮＤを「０」に設定した後、ステップ９９で、停止タイマの計時値ＴＭＯＦＦを「０」に設定する。次に、前述したように、ステップ９４を実行した後、本処理を終了する。
【０２２１】
一方、前述したステップ９６の判別結果がＮＯのときには、前述したように、ステップ９９，９４を実行した後、本処理を終了する。
【０２２２】
図３７に戻り、ステップ８１で以上のように推定機構温度Ｔｌｉｆｔ＿ｈａｔを算出した後、ステップ８２に進み、推定機構温度Ｔｌｉｆｔ＿ｈａｔに応じて、前述した図１６のマップを検索することにより、ＦＦ補正値Ｄｌｉｆｔｉｎ＿ｔｅｓｔを算出する。
【０２２３】
次いで、ステップ８３で、フィードバック制御中フラグＦ＿ＡＦＦＢが「１」であるか否かを判別する。この判別結果がＹＥＳで、空燃比フィードバック制御中であるときには、ステップ８４に進み、ＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂを算出する。このＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂの算出は、具体的には、図３９に示すように実行される。
【０２２４】
まず、ステップ１１０で、ＲＡＭに記憶されている第３推定吸気量Ｇｃｙｌ＿ｈａｔの値をサンプリングする。すなわち、Ｇｃｙｌ＿ｈａｔ（ｋ）をサンプリングする。
【０２２５】
次いで、ステップ１１１に進み、ＲＡＭに記憶されているむだ時間ｄの値をサンプリングするとともに、このサンプリング値を、エンジン回転数ＮＥに基づき、制御周期ΔＴの実行回数に相当する値に換算する。
【０２２６】
その後、ステップ１１２で、ステップ１１１で算出したむだ時間ｄに基づき、ＲＡＭに記憶されている、バルブリフトＬｉｆｔｉｎ（ｋ−ｄ）、カム位相Ｃａｉｎ（ｋ−ｄ）およびエンジン回転数ＮＥ（ｋ−ｄ）の値をサンプリングする。
【０２２７】
次いで、ステップ１１３で、第３推定吸気量Ｇｃｙｌ＿ｈａｔ（ｋ）、エンジン回転数ＮＥ（ｋ−ｄ）およびカム位相Ｃａｉｎ（ｋ−ｄ）に応じて、前述した図２２〜２４などのマップを検索することにより、推定バルブリフトＬｉｆｔｉｎ＿ｈａｔ（ｋ）を算出する。次に、ステップ１１４で、前述した式（２１）により、推定誤差Ｅｌｉｆｔを算出する。
【０２２８】
その後、ステップ１１５で、前述した式（２３）により、偏差Ｅ＿ＬＳを算出し、次いで、ステップ１１６で、重みゲインＰを、バルブリフトＬｉｆｔｉｎ（ｋ−ｄ）に応じて、前述した図２５のマップを検索することにより算出する。
【０２２９】
次に、ステップ１１７で、前述した式（２２）により、推定誤差の統計処理値Ｅｌｉｆｔ＿ＬＳを算出する。その後、ステップ１１８で、前述した式（２５）により、切換関数σを算出する。
【０２３０】
次いで、ステップ１１９で、前述した式（２４）により、ＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂを算出した後、本処理を終了する。
【０２３１】
図３７に戻り、ステップ８４で以上のようにＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂを算出した後、後述するステップ８６に進む。
【０２３２】
一方、ステップ８３の判別結果がＮＯで、空燃比フィードバック制御中でないときには、ステップ８５に進み、ＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂを値０に設定する。
【０２３３】
ステップ８４または８５に続くステップ８６では、リフト補正値Ｄｌｉｆｔｉｎ＿ｃｏｍｐを、ＦＦ補正値とＦＢ補正値との偏差（Ｄｌｉｆｔｉｎ＿ｔｅｓｔ−Ｄｌｉｆｔｉｎ＿ｆｂ）に設定する。
【０２３４】
次いで、ステップ８７に進み、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄを、バルブリフトとリフト補正値との和（Ｌｉｆｔｉｎ＋Ｄｌｉｆｔｉｎ＿ｃｏｍｐ）に設定する。
【０２３５】
その後、ステップ８８で、以下に述べるように、可変機構制御処理を実行した後、本処理を終了する。
【０２３６】
以下、図４０を参照しながら、上記ステップ８８の可変機構制御処理について説明する。本処理は、２つの可変機構をそれぞれ制御するための２つの制御入力Ｕ＿Ｌｉｆｔｉｎ，Ｕ＿Ｃａｉｎを算出するものである。
【０２３７】
この処理では、まず、ステップ１３０で、前述した可変機構故障フラグＦ＿ＶＤＮＧが「１」であるか否かを判別する。この判別結果がＮＯで、２つの可変機構がいずれも正常であるときには、ステップ１３１に進み、前述したエンジン始動フラグＦ＿ＥＮＧＳＴＡＲＴが「１」であるか否かを判別する。
【０２３８】
この判別結果がＹＥＳで、エンジン始動制御中であるときには、ステップ１３２に進み、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄを、エンジン水温ＴＷに応じて、図４１に示すマップを検索することにより算出する。
【０２３９】
このマップでは、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄは、エンジン水温ＴＷが所定値ＴＷＲＥＦ１より高い範囲では、エンジン水温ＴＷが低いほど、より大きな値に設定されているとともに、ＴＷ≦ＴＷＲＥＦ１の範囲では、所定値Ｌｉｆｔｉｎｒｅｆに設定されている。これは、エンジン水温ＴＷが低い場合、可変バルブリフト機構５０のフリクションが増大するので、それを補償するためである。
【０２４０】
次いで、ステップ１３３で、目標カム位相Ｃａｉｎ＿ｃｍｄを、エンジン水温ＴＷに応じて、図４２に示すマップを検索することにより算出する。
【０２４１】
このマップでは、目標カム位相Ｃａｉｎ＿ｃｍｄは、エンジン水温ＴＷが所定値ＴＷＲＥＦ２よりも高い範囲では、エンジン水温ＴＷが低いほど、より遅角側の値に設定されているとともに、ＴＷ≦ＴＷＲＥＦ２の範囲では、所定値Ｃａｉｎｒｅｆに設定されている。これは、エンジン水温ＴＷが低い場合、カム位相Ｃａｉｎをエンジン水温ＴＷが高い場合よりも遅角側に制御し、バルブオーバーラップを小さくすることで、吸気流速を上昇させ、燃焼の安定化を図るためである。
【０２４２】
次に、ステップ１３４に進み、下式（３５）〜（３８）に示す目標値フィルタ型の２自由度応答指定型制御アルゴリズムにより、リフト制御入力Ｕ＿Ｌｉｆｔｉｎを算出する。
【０２４３】
【数２３】
2006348882.tif 000025
【０２４４】
同式（３５）において、Ｋｒｃｈ＿ｌｆは所定の到達則ゲインを、Ｋａｄｐ＿ｌｆは所定の適応則ゲインをそれぞれ表しており、さらに、σ＿ｌｆは、式（３６）のように定義される切換関数である。同式（３６）において、ｐｏｌｅ＿ｌｆは、−１＜ｐｏｌｅ＿ｌｆ＜０の関係が成立するように設定される切換関数設定パラメータであり、Ｅ＿ｌｆは、式（３７）により算出される追従誤差である。同式（３７）において、Ｌｉｆｔｉｎ＿ｃｍｄ＿ｆは、目標バルブリフトのフィルタ値であり、式（３８）に示す一次遅れフィルタアルゴリズムにより算出される。同式（３８）において、ｐｏｌｅ＿ｆ＿ｌｆは、−１＜ｐｏｌｅ＿ｆ＿ｌｆ＜０の関係が成立するように設定される目標値フィルタ設定パラメータである。
【０２４５】
次に、ステップ１３５に進み、下式（３９）〜（４２）に示す目標値フィルタ型の２自由度応答指定型制御アルゴリズムにより、位相制御入力Ｕ＿Ｃａｉｎを算出する。
【０２４６】
【数２４】
2006348882.tif 000026
【０２４７】
同式（３９）において、Ｋｒｃｈ＿ｃａは所定の到達則ゲインを、Ｋａｄｐ＿ｃａは所定の適応則ゲインをそれぞれ表しており、さらに、σ＿ｃａは、式（４０）のように定義される切換関数である。同式（４０）において、ｐｏｌｅ＿ｃａは、−１＜ｐｏｌｅ＿ｃａ＜０の関係が成立するように設定される切換関数設定パラメータであり、Ｅ＿ｃａは、式（４１）により算出される追従誤差である。同式（４１）において、Ｃａｉｎ＿ｃｍｄ＿ｆは、目標カム位相のフィルタ値であり、式（４２）に示す一次遅れフィルタアルゴリズムにより算出される。同式（４２）において、ｐｏｌｅ＿ｆ＿ｃａは、−１＜ｐｏｌｅ＿ｆ＿ｃａ＜０の関係が成立するように設定される目標値フィルタ設定パラメータである。
【０２４８】
ステップ１３５で、位相制御入力Ｕ＿Ｃａｉｎを以上のように算出した後、本処理を終了する。
【０２４９】
一方、ステップ１３１の判別結果がＮＯで、エンジン始動制御中でないときには、ステップ１３６に進み、アクセル開度ＡＰが所定値ＡＰＲＥＦより小さいか否かを判別する。この判別結果がＹＥＳで、アクセルペダルが踏まれていないときには、ステップ１３７に進み、始動後タイマの計時値Ｔａｓｔが所定値Ｔａｓｔｌｍｔより小さいか否かを判別する。
【０２５０】
この判別結果がＹＥＳで、Ｔａｓｔ＜Ｔａｓｔｌｍｔのときには、触媒暖機制御を実行すべきであるとして、ステップ１３８に進み、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄを、始動後タイマの計時値Ｔａｓｔおよびエンジン水温ＴＷに応じて、図４３に示すマップを検索することにより算出する。同図において、ＴＷ１〜ＴＷ３は、ＴＷ１＜ＴＷ２＜ＴＷ３の関係が成立するエンジン水温ＴＷの所定値を示しており、この点は以下の説明においても同様である。
【０２５１】
このマップでは、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄは、エンジン水温ＴＷが低いほど、より大きな値に設定されている。これは、エンジン水温ＴＷが低いほど、触媒の活性化に要する時間が長くなるので、排ガスボリュームを大きくすることで、触媒の活性化に要する時間を短縮するためである。これに加えて、このマップでは、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄは、始動後タイマの計時値Ｔａｓｔが小さい間は、計時値Ｔａｓｔが大きいほど、より大きな値に設定され、計時値Ｔａｓｔがある程度よりも大きい領域では、計時値Ｔａｓｔが大きいほど、より小さな値に設定されている。これは、触媒暖機制御の実行時間が経過するのに伴い、エンジン３の暖機が進むことで、フリクションが低下した場合において、吸入空気量を低減しないと、エンジン回転数ＮＥを目標値に維持するために点火時期が過剰にリタード制御された状態となり、燃焼状態が不安定になってしまうので、それを回避するためである。
【０２５２】
次いで、ステップ１３９で、目標カム位相Ｃａｉｎ＿ｃｍｄを、始動後タイマの計時値Ｔａｓｔおよびエンジン水温ＴＷに応じて、図４４に示すマップを検索することにより算出する。
【０２５３】
このマップでは、目標カム位相Ｃａｉｎ＿ｃｍｄは、エンジン水温ＴＷが低いほど、より進角側の値に設定されている。これは、エンジン水温ＴＷが低いほど、上述したように触媒の活性化に要する時間が長くなるので、ポンピングロスを減少させ、吸入空気量を増大させることで、触媒の活性化に要する時間を短縮するためである。これに加えて、このマップでは、目標カム位相Ｃａｉｎ＿ｃｍｄは、始動後タイマの計時値Ｔａｓｔが小さい間は、計時値Ｔａｓｔが大きいほど、より遅角側の値に設定され、計時値Ｔａｓｔがある程度よりも大きい領域では、計時値Ｔａｓｔが大きいほど、より進角側の値に設定されている。これは、図４３の説明で述べたのと同じ理由による。
【０２５４】
次いで、前述したように、ステップ１３４，１３５を実行した後、本処理を終了する。
【０２５５】
一方、ステップ１３６または１３７の判別結果がＮＯのとき、すなわちＴａｓｔ≧Ｔａｓｔｌｍｔであるとき、またはアクセルペダルが踏まれているときには、ステップ１４０に進み、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄを、エンジン回転数ＮＥおよびアクセル開度ＡＰに応じて、図４５に示すマップを検索することにより算出する。同図において、ＡＰ１〜ＡＰ３は、ＡＰ１＜ＡＰ２＜ＡＰ３の関係が成立するアクセル開度ＡＰの所定値を示しており、この点は以下の説明においても同様である。
【０２５６】
このマップでは、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄは、エンジン回転数ＮＥが高いほど、またはアクセル開度ＡＰが大きいほど、より大きな値に設定されている。これは、エンジン回転数ＮＥが高いほど、またはアクセル開度ＡＰが大きいほど、エンジン３に対する要求出力が大きいことで、より大きな吸入空気量が要求されることによる。
【０２５７】
次いで、ステップ１４１で、目標カム位相Ｃａｉｎ＿ｃｍｄを、エンジン回転数ＮＥおよびアクセル開度ＡＰに応じて、図４６に示すマップを検索することにより算出する。このマップでは、目標カム位相Ｃａｉｎ＿ｃｍｄは、アクセル開度ＡＰが小さくかつ中回転域にあるときには、それ以外のときよりも進角側の値に設定されている。これは、そのような運転状態では、ポンピングロスを減少させる必要があるためである。
【０２５８】
ステップ１４１に続いて、前述したように、ステップ１３４，１３５を実行した後、本処理を終了する。
【０２５９】
一方、ステップ１３０の判別結果がＹＥＳで、２つの可変機構の少なくとも一方が故障しているときには、ステップ１４２に進み、リフト制御入力Ｕ＿Ｌｉｆｔｉｎを所定の故障時用値Ｕ＿Ｌｉｆｔｉｎ＿ｆｓに、位相制御入力Ｕ＿Ｃａｉｎを所定の故障時用値Ｕ＿Ｃａｉｎ＿ｆｓにそれぞれ設定した後、本処理を終了する。これにより、前述したように、バルブリフトＬｉｆｔｉｎが最小値Ｌｉｆｔｉｎｍｉｎに、カム位相Ｃａｉｎが所定のロック値にそれぞれ保持され、それにより、停車中はアイドル運転やエンジン始動を適切に実行できると同時に、走行中は低速走行状態を維持できる。
【０２６０】
本処理では、以上のように、リフト制御入力Ｕ＿Ｌｉｆｔｉｎおよび位相制御入力Ｕ＿Ｃａｉｎが算出される。そして、これらの制御入力Ｕ＿Ｌｉｆｔｉｎ，Ｕ＿Ｃａｉｎが可変バルブリフト機構５０および可変カム位相機構７０にそれぞれ入力されることにより、吸入空気量が制御される。
【０２６１】
次に、以上のように構成された第１実施形態の制御装置１による制御（空燃比制御および可変機構制御など）のシミュレーション結果（以下「制御結果」という）について説明する。図４７，４８は、目標空燃比ＫＣＭＤを理論空燃比に相当する値１．０に設定した場合の第１実施形態の制御装置１による制御結果例を示しており、特に、図４７は、前述した式（１４）においてモデル化誤差がないときの制御結果例を示しており、図４８はモデル化誤差があるときの制御結果例を示している。一方、図４９は、比較のために、バルブリフトＬｉｆｔｉｎを補正することなく、そのまま用いた場合の制御結果例を示している。
【０２６２】
これらの図４７〜４９において、Ｌｉｆｔｉｎ＿ａｃｔは、バルブリフトＬｉｆｔｉｎ実際の値（以下「実バルブリフト」という）を表しており、Ｇｃｙｌ＿ａｃｔは、吸入空気量Ｇｃｙｌの実際の値（以下「実吸入空気量」という）を表している。また、Ｄｌｉｆｔｉｎは、実バルブリフトとバルブリフトとの偏差（Ｌｉｆｔｉｎ＿ａｃｔ−Ｌｉｆｔｉｎ）を表しており、Ｔｌｉｆｔは、可変バルブリフト機構５０の実際の温度（以下「実機構温度」という）を表している。なお、図４７，４８では、偏差Ｄｌｉｆｔｉｎとリフト補正値Ｄｌｉｆｔｉｎ＿ｃｏｍｐとの関係を判りやすくするために、リフト補正値としてその負値−Ｄｌｉｆｔｉｎ＿ｃｏｍｐを示す。
【０２６３】
まず、図４９を参照すると、この制御結果では、実バルブリフトＬｉｆｔｉｎ＿ａｃｔとバルブリフトＬｉｆｔｉｎとの間に、大きな偏差Ｄｌｉｆｔｉｎが発生することで、実吸入空気量Ｇｃｙｌ＿ａｃｔと吸入空気量Ｇｃｙｌとの間にも大きな偏差が周期的に発生し、その結果、目標空燃比ＫＣＭＤと検出空燃比ＫＡＣＴ（値１．０）との間にも、大きな偏差が周期的に発生していることが判る。また、制御中に実機構温度Ｔｌｉｆｔが上昇するのに伴って、偏差Ｄｌｉｆｔｉｎが若干、減少し、それにより、目標空燃比ＫＣＭＤと検出空燃比ＫＡＣＴとの間の偏差も若干、減少していることが判る。
【０２６４】
これに対して、図４７に示すように、モデル化誤差がない場合には、推定機構温度Ｔｌｉｆｔ＿ｈａｔが実機構温度Ｔｌｉｆｔに等しい値になることによって、ＦＦ補正値Ｄｌｉｆｔｉｎ＿ｔｅｓｔが偏差Ｄｌｉｆｔｉｎに等しい値となる。それにより、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄは、実質的に、バルブリフトＬｉｆｔｉｎをＦＦ補正値Ｄｌｉｆｔｉｎ＿ｔｅｓｔのみで補正した値となり、ＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂがほぼ値０に近い状態となるとともに、実バルブリフトＬｉｆｔｉｎ＿ａｃｔと補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄとの間の偏差がほぼ値０となる。その結果、実吸入空気量Ｇｃｙｌ＿ａｃｔと吸入空気量Ｇｃｙｌとの間の偏差もほぼ値０になることで、目標空燃比ＫＣＭＤと検出空燃比ＫＡＣＴとの間にも、偏差がほとんど発生せず、空燃比制御において高い制御精度が確保されていることが判る。
【０２６５】
また、図４８に示すように、モデル化誤差がある場合には、前述した図４８のモデル化誤差がない場合と異なり、推定機構温度Ｔｌｉｆｔ＿ｈａｔと実機構温度Ｔｌｉｆｔとの間に若干の偏差が生じることで、ＦＦ補正値Ｄｌｉｆｔｉｎ＿ｔｅｓｔが偏差Ｄｌｉｆｔｉｎとの間に若干の偏差を生じるとともに、ＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂがその偏差を補正するような値となる。すなわち、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄは、バルブリフトＬｉｆｔｉｎを、ＦＦ補正値Ｄｌｉｆｔｉｎ＿ｔｅｓｔおよびＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂの双方で補正した値となり、それにより、実バルブリフトＬｉｆｔｉｎ＿ａｃｔと補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄとの間の偏差がほぼ値０となる。その結果、実吸入空気量Ｇｃｙｌ＿ａｃｔと吸入空気量Ｇｃｙｌとの間の偏差もほぼ値０になることで、目標空燃比ＫＣＭＤと検出空燃比ＫＡＣＴとの間にも、偏差がほとんど発生せず、空燃比制御において高い制御精度を確保できていることが判る。すなわち、モデル化誤差があっても、ＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂによりモデル化誤差を補償できることで、モデル化誤差がない場合と同様の制御精度が確保されていることが判る。
【０２６６】
以上のように、第１実施形態の制御装置１によれば、空燃比フィードバック制御中でないときには、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄが、ＦＦ補正値Ｄｌｉｆｔｉｎ＿ｔｅｓｔに相当するリフト補正値Ｄｌｉｆｔｉｎ＿ｃｏｍｐでバルブリフトＬｉｆｔｉｎを補正することにより算出され、この補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄに応じて、燃料噴射量ＴＯＵＴおよび点火時期Ｉｇｌｏｇが算出される。また、このＦＦ補正値Ｄｌｉｆｔｉｎ＿ｔｅｓｔは、可変バルブリフト機構５０の熱力学的モデルに基づく式（１４）によって推定機構温度Ｔｌｉｆｔ＿ｈａｔを算出し、この推定機構温度Ｔｌｉｆｔ＿ｈａｔに応じて図１６のマップを検索することにより算出される。
【０２６７】
したがって、ＬＡＦセンサ２４が活性化する前などの、空燃比がフィードバック制御されていないことで、空燃比の制御精度が低い状態にあるときでも、可変バルブリフト機構５０の熱伸縮に起因するバルブリフトＬｉｆｔｉｎの実際の値に対するずれを補償しながら、吸入空気量Ｇｃｙｌを算出することができ、吸入空気量Ｇｃｙｌの適正値に対するずれを補正することができるとともに、そのような吸入空気量Ｇｃｙｌを用いながら、燃料噴射量ＴＯＵＴおよび点火時期Ｉｇｌｏｇを算出することができる。その結果、可変バルブリフト機構５０の温度または熱伸縮度合を直接的に検出するための格別のセンサを用いることなく、可変バルブリフト機構５０の熱伸縮に起因する吸入空気量Ｇｃｙｌのずれを補償しながら、空燃比制御および点火時期制御を実行できるので、エンジン３のコンパクト化、設計の自由度の向上、および製造コストの削減をいずれも達成することができる。これに加えて、内燃機関の冷却水温度のみに応じて補正を行う従来の場合と比べて、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄの算出精度を向上させることができ、それにより、制御精度を向上させることができる。
【０２６８】
これに加えて、推定機構温度Ｔｌｉｆｔ＿ｈａｔは、エンジン３の停止後、可変バルブリフト機構５０が十分に冷え、その温度が変化しないと推定される所定時間が経過するまで継続して算出されるので、エンジン停止後、所定時間が経過する前に再始動されたときでも、ＦＦ補正値Ｄｌｉｆｔｉｎ＿ｔｅｓｔを適切に算出することができ、それにより、エンジン再始動時においても、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄの高い算出精度を確保することができる。
【０２６９】
また、空燃比フィードバック制御中のときには、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄが、ＦＦ補正値とＦＢ補正値との偏差（Ｄｌｉｆｔｉｎ＿ｔｅｓｔ−Ｄｌｉｆｔｉｎ＿ｆｂ）に相当するリフト補正値Ｄｌｉｆｔｉｎ＿ｃｏｍｐでバルブリフトＬｉｆｔｉｎを補正することにより算出されるとともに、このＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂが、空燃比補正係数ＫＡＦＤおよび検出空燃比ＫＡＣＴに応じて、推定バルブリフトＬｉｆｔｉｎ＿ｈａｔを算出し、この推定バルブリフトＬｉｆｔｉｎ＿ｈａｔおよびバルブリフトＬｉｆｔｉｎに応じて算出される。
【０２７０】
ここで、空燃比フィードバック制御中、バルブリフトＬｉｆｔｉｎが実際の値に対してずれていると、吸入空気量Ｇｃｙｌが適正値からずれてしまうことで、混合気の実際の空燃比が目標空燃比ＫＣＭＤに対してリーン側またはリッチ側にずれてしまうとともに、空燃比補正係数ＫＡＦＤおよび検出空燃比ＫＡＣＴは、そのような空燃比のずれを反映する。そのため、空燃比補正係数ＫＡＦＤおよび検出空燃比ＫＡＣＴに応じて、上述したようにＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂが算出されるとともに、そのようなＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂを加味したリフト補正値Ｄｌｉｆｔｉｎ＿ｃｏｍｐでバルブリフトＬｉｆｔｉｎを補正することにより、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄが算出されるので、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄを、バルブリフトＬｉｆｔｉｎと実際の値との間のずれ、すなわち吸入空気量Ｇｃｙｌのずれが適切に補正された値として算出することができる。
【０２７１】
その結果、可変バルブリフト機構５０における熱伸縮に加えて、回動角センサ２５における検出信号値のドリフト、可変バルブリフト機構５０における構成部品の摩耗、汚れの付着および経年変化による遊びなどに起因して、回動角センサ２５の検出信号に基づいて算出されたバルブリフトＬｉｆｔｉｎが実際の値に対してずれている場合でも、そのようなずれの影響を補償しながら、吸入空気量Ｇｃｙｌを適切に算出することができる。したがって、空燃比フィードバック制御中、可変バルブリフト機構５０の温度または熱伸縮度合を直接的に検出するための格別のセンサなどを用いることなく、可変バルブリフト機構５０の熱伸縮およびそれ以外の事象に起因する吸入空気量Ｇｃｙｌのずれを補償しながら、空燃比制御および点火時期制御を実行できる。それにより、制御精度の向上、エンジン３のコンパクト化、設計の自由度の向上、および製造コストの削減をいずれも達成することができる。特に、ＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂにより、熱伸縮以外の事象に起因する吸入空気量Ｇｃｙｌのずれを補償できるとともに、熱力学的モデルにおいてモデル化誤差が存在する場合でも、それを補償できることで、制御精度を格別に向上させることができる。
【０２７２】
これに加えて、空燃比フィードバック制御中も、リフト補正値Ｄｌｉｆｔｉｎ＿ｃｏｍｐがＦＦ補正値Ｄｌｉｆｔｉｎ＿ｔｅｓｔを加味した値として算出されるので、空燃比フィードバック制御開始時などの、ＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂによる吸入空気量Ｇｃｙｌのずれ補償能力が低い状態にあるときでも、ＦＦ補正値Ｄｌｉｆｔｉｎ＿ｔｅｓｔにより、熱伸縮に起因する吸入空気量Ｇｃｙｌの適正値に対するずれを補償することができるので、そのような状態においても、高い制御精度を確保することができる。
【０２７３】
さらに、ＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂは、推定誤差Ｅｌｉｆｔを、推定バルブリフトとバルブリフトとの偏差［Ｌｉｆｔｉｎ＿ｈａｔ（ｋ）−Ｌｉｆｔｉｎ（ｋ−ｄ）］として算出し、この推定誤差の統計処理値Ｅｌｉｆｔ＿ＬＳを、式（２２）〜（２３）の逐次型統計処理アルゴリズムにより算出し、この統計処理値Ｅｌｉｆｔ＿ＬＳが最小（すなわち値０）となるように、式（２４）〜（２５）の応答指定型制御アルゴリズムにより算出される。このように、推定誤差の統計処理値Ｅｌｉｆｔ＿ＬＳを用いることにより、外乱や誤推定などに起因して、推定誤差Ｅｌｉｆｔが一時的に過大な値になったとしても、その影響を回避しながら、ＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂを算出することができる。これに加えて、応答指定型制御アルゴリズムを用いることにより、統計処理値Ｅｌｉｆｔ＿ＬＳすなわち推定誤差Ｅｌｉｆｔが指数関数的に穏やかに減衰するように、ＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂが算出される。以上により、制御精度をより一層、向上させることができる。
【０２７４】
また、可変バルブリフト機構５０では、バルブリフトＬｉｆｔｉｎが大きいほど、推定バルブリフトＬｉｆｔｉｎ＿ｈａｔとバルブリフトＬｉｆｔｉｎとの乖離度合、すなわち推定誤差Ｅｌｉｆｔがより大きくなる傾向にある。これに対して、逐次型統計処理アルゴリズムにおいて、推定誤差と統計処理値との偏差Ｅｌｉｆｔ−Ｅｌｉｆｔ＿ＬＳに重み付けするための重みゲインＰは、バルブリフトＬｉｆｔｉｎが大きいほど、より小さい値に設定されるので、推定バルブリフトＬｉｆｔｉｎ＿ｈａｔとバルブリフトＬｉｆｔｉｎとの乖離度合が大きくなる可能性が高いほど、推定誤差Ｅｌｉｆｔの重みがより小さい値に設定されることにより、統計処理値Ｅｌｉｆｔ＿ＬＳの算出精度すなわちＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂの算出精度をさらに高めることができる。それにより、制御精度をさらに向上させることができる。
【０２７５】
さらに、２つの可変機構がいずれも正常であるときには、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄに応じて算出した第１推定吸気量Ｇｃｙｌ＿ｖｔが、吸入空気量Ｇｃｙｌとして選択され、それ以外のときには、エアフローセンサ２２の検出信号に基づいて算出した第２推定吸気量Ｇｃｙｌ＿ａｆｍが、吸入空気量Ｇｃｙｌとして選択されるので、２つの可変機構における故障の有無にかかわらず、空燃比制御および点火時期制御を適切に実行することができる。
【０２７６】
なお、第１実施形態は、内燃機関３の温度状態を表す温度パラメータとして、エンジン水温ＴＷおよび油温Ｔｏｉｌを用いた例であるが、温度パラメータはこれに限らず、内燃機関３の温度状態を表すものであればよい。例えば、温度パラメータとして、シリンダブロック温度や排ガス温度などを用いてもよい。
【０２７７】
また、第１実施形態は、内燃機関３の負荷を表す負荷パラメータとして、第１推定吸気量Ｇｃｙｌ＿ｖｔを用いた例であるが、負荷パラメータはこれに限らず、内燃機関の負荷を表すものであればよい。例えば、負荷パラメータとして、第２推定吸気量Ｇｃｙｌ＿ａｆｍ、内燃機関が発生すると推定される推定トルク、エンジン回転数ＮＥおよび吸気管内圧などを用いてもよい。
【０２７８】
さらに、第１実施形態は、検出空燃比ＫＡＣＴおよび空燃比指標値ＫＡＦの双方に応じて、推定バルブリフトＬｉｆｔｉｎ＿ｈａｔを算出した例であるが、推定バルブリフトＬｉｆｔｉｎ＿ｈａｔを、検出空燃比ＫＡＣＴおよび空燃比指標値ＫＡＦの一方に応じて算出するように構成してもよい。その場合、例えば、誤差推定係数ＫＥＧＣＹＬを、検出空燃比ＫＡＣＴおよび空燃比指標値ＫＡＦの一方に応じて、マップ検索などにより算出するように構成してもよい。
【０２７９】
一方、第１実施形態は、推定誤差Ｅｌｉｆｔを推定バルブリフトとバルブリフトとの偏差［Ｌｉｆｔｉｎ＿ｈａｔ（ｋ）−Ｌｉｆｔｉｎ（ｋ−ｄ）］に設定した例であるが、これとは逆に、推定誤差Ｅｌｉｆｔをバルブリフトと推定バルブリフトとの偏差［Ｌｉｆｔｉｎ（ｋ−ｄ）−Ｌｉｆｔｉｎ＿ｈａｔ（ｋ）］に設定してもよい。
【０２８０】
また、第１実施形態は、本願発明の制御装置を空燃比制御（すなわち燃料噴射制御）および点火時期制御を実行するものに適用した例であるが、本願発明の制御装置はこれに限らず、内燃機関における吸入空気量制御などの各種の制御処理を実行するものにも適用可能である。例えば、吸入空気量制御の場合、可変式吸気動弁機構４０を介して、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄに基づいて算出された吸入空気量Ｇｃｙｌを、その目標値に収束させるように制御してもよい。
【０２８１】
以下、図５０を参照しながら、本発明の第２実施形態に係る制御装置１Ａについて説明する。この制御装置１Ａは、前述した第１実施形態の制御装置１と比べると、前述した空燃比コントローラ１００の補正後バルブリフト算出部１２０に代えて、図５０に示す補正後バルブリフト算出部２２０を備えている点のみが異なっているので、以下、この補正後バルブリフト算出部２２０について説明する。なお、本実施形態では、補正後バルブリフト算出部２２０が推定機構温度算出手段および補正手段に相当する。
【０２８２】
この補正後バルブリフト算出部２２０は、図５０に示すように、前述した補正後バルブリフト算出部１２０において、ＦＢ補正値算出部１３０、空燃比制御判定部１３４および補正値選択部１３５などを省略した構成に相当するものであり、ＦＦ補正値算出部２２１および加算要素２２２を備えている。
【０２８３】
このＦＦ補正値算出部２２１では、前述したＦＦ補正値算出部１３１と同じ手法により、ＦＦ補正値Ｄｌｉｆｔｉｎ＿ｔｅｓｔが算出される。すなわち、前述した式（１４）により、推定機構温度Ｔｌｉｆｔ＿ｈａｔが算出され、これに応じて、図１６のマップを検索することにより、ＦＦ補正値Ｄｌｉｆｔｉｎ＿ｔｅｓｔが算出される。
【０２８４】
次いで、加算要素２２２において、下式（４３）により、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄが算出される。
【数２５】
2006348882.tif 000027
【０２８５】
以上のように、この補正後バルブリフト算出部２２０では、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄは、バルブリフトとＦＦ補正値の和Ｌｉｆｔｉｎ＋Ｄｌｉｆｔｉｎ＿ｔｅｓｔとして算出される。
【０２８６】
次に、以上のように構成された第２実施形態の制御装置１Ａによる制御結果について説明する。図５１，５２は、目標空燃比ＫＣＭＤを理論空燃比に相当する値１．０に設定した場合の第２実施形態の制御装置１Ａによる制御結果例を示しており、特に、図５１は、前述した式（１４）においてモデル化誤差がないときの制御結果例を示しており、図５２はモデル化誤差があるときの制御結果例を示している。
【０２８７】
まず、図５１を参照すると、モデル化誤差がない場合には、前述したように、推定機構温度Ｔｌｉｆｔ＿ｈａｔが実機構温度Ｔｌｉｆｔに等しい値になることによって、ＦＦ補正値Ｄｌｉｆｔｉｎ＿ｔｅｓｔが偏差Ｄｌｉｆｔｉｎに等しい値となる。それにより、実バルブリフトＬｉｆｔｉｎ＿ａｃｔと補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄとの間の偏差がほぼ値０となり、その結果、実吸入空気量Ｇｃｙｌ＿ａｃｔと吸入空気量Ｇｃｙｌとの間の偏差もほぼ値０になることで、目標空燃比ＫＣＭＤと検出空燃比ＫＡＣＴとの間にも、偏差がほとんど発生せず、空燃比制御において高い制御精度が確保されていることが判る。
【０２８８】
一方、図５２に示すように、モデル化誤差がある場合には、上記図５２のモデル化誤差がない場合と異なり、推定機構温度Ｔｌｉｆｔ＿ｈａｔと実機構温度Ｔｌｉｆｔとの間に偏差が生じることで、ＦＦ補正値Ｄｌｉｆｔｉｎ＿ｔｅｓｔと偏差Ｄｌｉｆｔｉｎとの間にも偏差が生じ、それにより、実バルブリフトＬｉｆｔｉｎ＿ａｃｔと補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄとの間にも偏差が生じる。
【０２８９】
その結果、実吸入空気量Ｇｃｙｌ＿ａｃｔと吸入空気量Ｇｃｙｌとの間にもスパイク状の偏差が生じ、目標空燃比ＫＣＭＤと検出空燃比ＫＡＣＴとの間にもスパイク状の偏差が若干、生じることで、空燃比制御の制御精度が、モデル化誤差がない場合よりも若干、低下することが判る。すなわち、モデル化誤差がある場合には、前述した第１実施形態の制御装置１のように、ＦＦ補正値Ｄｌｉｆｔｉｎ＿ｔｅｓｔとＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂの双方を用いる方がより高い制御精度を確保できることが判る。
【０２９０】
また、前述した図４９に示すバルブリフトＬｉｆｔｉｎを補正することなく、そのまま用いる場合と比べると、本実施形態のようにＦＦ補正値Ｄｌｉｆｔｉｎ＿ｔｅｓｔを用いることにより、空燃比制御の制御精度が向上することが判る。
【０２９１】
以上のように、第２実施形態の制御装置１Ａによれば、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄが、ＦＦ補正値Ｄｌｉｆｔｉｎ＿ｔｅｓｔでバルブリフトＬｉｆｔｉｎを補正することにより算出されるので、前述したように、可変バルブリフト機構５０の熱伸縮に起因するバルブリフトＬｉｆｔｉｎの実際の値に対するずれを補償しながら、空燃比制御および点火時期制御を実行することができる。すなわち、可変バルブリフト機構５０の温度または熱伸縮度合を直接的に検出するための格別のセンサを用いることなく、可変バルブリフト機構５０の熱伸縮に起因する吸入空気量Ｇｃｙｌのずれを補償しながら、空燃比制御および点火時期制御を実行できるので、エンジン３のコンパクト化、設計の自由度の向上、および製造コストの削減をいずれも達成することができる。これに加えて、内燃機関の冷却水温度のみに応じて補正を行う従来の場合と比べて、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄの算出精度を向上させることができ、それにより、制御精度を向上させることができる。
【０２９２】
以下、図５３を参照しながら、本発明の第３実施形態に係る制御装置１Ｂについて説明する。この制御装置１Ｂは、前述した第１実施形態の制御装置１と比べると、前述した空燃比コントローラ１００の補正後バルブリフト算出部１２０に代えて、図５３に示す補正後バルブリフト算出部３２０を備えている点のみが異なっているので、以下、この補正後バルブリフト算出部３２０を中心として説明する。なお、本実施形態では、補正後バルブリフト算出部３２０が、補正手段、動作状態パラメータ推定値算出手段、補正量算出手段および補正後パラメータ算出手段に相当する。
【０２９３】
この補正後バルブリフト算出部３２０は、図５３に示すように、前述した第１実施形態の補正後バルブリフト算出部１２０において、ＦＦ補正値算出部１３１、空燃比制御判定部１３４および補正値選択部１３５などを省略した構成に相当するものであり、ＦＢ補正値算出部３２１および減算要素３２２を備えている。
【０２９４】
このＦＢ補正値算出部３２１では、前述したＦＢ補正値算出部１３０と同じ手法により、ＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂが算出される。すなわち、前述したように、エンジン回転数ＮＥ、カム位相Ｃａｉｎ、バルブリフトＬｉｆｔｉｎ、検出空燃比ＫＡＣＴおよび空燃比指標値ＫＡＦに応じて、第３推定吸気量Ｇｃｙｌ＿ｈａｔを算出し、この第３推定吸気量Ｇｃｙｌ＿ｈａｔ、エンジン回転数ＮＥおよびカム位相Ｃａｉｎに応じて、推定バルブリフトＬｉｆｔｉｎ＿ｈａｔを算出する。そして、これとバルブリフトＬｉｆｔｉｎに基づき、前述した式（２１）〜（２５）により、ＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂが算出される。
【０２９５】
次いで、減算要素３２２において、下式（４４）により、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄが算出される。
【数２６】
2006348882.tif 000028
【０２９６】
以上のように、この補正後バルブリフト算出部３２０では、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄは、バルブリフトからＦＢ補正値を減算した値（Ｌｉｆｔｉｎ−Ｄｌｉｆｔｉｎ＿ｆｂ）として算出される。
【０２９７】
次に、以上のように構成された第３実施形態の制御装置１Ｂによる制御結果について説明する。図５４は、目標空燃比ＫＣＭＤを理論空燃比に相当する値１．０に設定した場合の第３実施形態の制御装置１Ｂによる制御結果例を示している。
【０２９８】
図５４を参照すると明らかなように、制御開始直後は、ＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂの絶対値が、偏差Ｄｌｉｆｔｉｎよりも小さい値となることで、実バルブリフトＬｉｆｔｉｎ＿ａｃｔと補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄとの間の偏差が増大する。その結果、実吸入空気量Ｇｃｙｌ＿ａｃｔと吸入空気量Ｇｃｙｌとの間にも若干の偏差が発生し、目標空燃比ＫＣＭＤと検出空燃比ＫＡＣＴとの間にも、スパイク状の偏差が若干、生じることで、空燃比制御の制御精度が若干、低下することが判る。
【０２９９】
一方、制御の進行に伴って、ＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂの絶対値が、偏差Ｄｌｉｆｔｉｎに等しい値となることで、実バルブリフトＬｉｆｔｉｎ＿ａｃｔと補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄとの間の偏差が減少し、その結果、実吸入空気量Ｇｃｙｌ＿ａｃｔと吸入空気量Ｇｃｙｌとの間の偏差も減少することで、目標空燃比ＫＣＭＤと検出空燃比ＫＡＣＴとの間にも、偏差がほとんど発生せず、空燃比制御において高い制御精度を確保できていることが判る。
【０３００】
また、図５４と前述した図４７，４８を比較すると、第１実施形態の制御装置１のように、ＦＦ補正値Ｄｌｉｆｔｉｎ＿ｔｅｓｔとＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂの双方を用いる場合の方が、ＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂのみを用いる場合と比べて、制御開始直後においても、高い制御精度を確保できることが判る。
【０３０１】
以上のように、第３実施形態の制御装置１Ｂによれば、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄが、ＦＢ補正値ｌｉｆｔｉｎ＿ｆｂでバルブリフトＬｉｆｔｉｎを補正することにより算出されるので、前述したように、補正後バルブリフトＬｉｆｔｉｎ＿ｍｏｄを、バルブリフトＬｉｆｔｉｎと実際の値との間のずれ、すなわち吸入空気量Ｇｃｙｌのずれが適切に補正された値として算出することができる。その結果、可変バルブリフト機構５０における熱伸縮に加えて、回動角センサ２５における検出信号値のドリフト、可変バルブリフト機構５０における構成部品の摩耗、汚れの付着および経年変化による遊びなどに起因して、回動角センサ２５の検出信号より算出されたバルブリフトＬｉｆｔｉｎが実際の値に対してずれている場合でも、そのようなずれの影響を補償しながら、吸入空気量Ｇｃｙｌを適切に算出することができる。したがって、空燃比フィードバック制御中、可変バルブリフト機構５０の温度または熱伸縮度合を直接的に検出するための格別のセンサなどを用いることなく、可変バルブリフト機構５０の熱伸縮およびそれ以外の事象に起因する吸入空気量Ｇｃｙｌのずれを補償しながら、空燃比制御および点火時期制御を実行できるので、制御精度の向上、エンジン３のコンパクト化、設計の自由度の向上、および製造コストの削減をいずれも達成することができる。
【図面の簡単な説明】
【０３０２】
【図１】本発明の第１実施形態に係る制御装置が適用された内燃機関の概略構成を示す模式図である。
【図２】制御装置の概略構成を示すブロック図である。
【図３】内燃機関の可変式吸気動弁機構および排気動弁機構の概略構成を示す断面図である。
【図４】可変式吸気動弁機構の可変バルブリフト機構の概略構成を示す断面図である。
【図５】（ａ）リフトアクチュエータの短アームが最大リフト位置にある状態と（ｂ）最小リフト位置にある状態を示す図である。
【図６】（ａ）可変バルブリフト機構の下リンクが最大リフト位置にあるときの吸気弁の開弁状態と（ｂ）最小リフト位置にあるときの吸気弁の開弁状態を示す図である。
【図７】可変バルブリフト機構の下リンクが最大リフト位置にあるときの吸気弁のバルブリフト曲線（実線）と、最小リフト位置にあるときのバルブリフト曲線（２点鎖線）をそれぞれ示す図である。
【図８】可変カム位相機構の概略構成を模式的に示す図である。
【図９】可変カム位相機構により、カム位相が最遅角値に設定されているときの吸気弁のバルブリフト曲線（実線）と、カム位相が最進角値に設定されているときの吸気弁のバルブリフト曲線（２点鎖線）をそれぞれ示す図である。
【図１０】空燃比コントローラの概略構成を示すブロック図である。
【図１１】目標空燃比ＫＣＭＤの算出に用いるマップの一例を示す図である。
【図１２】吸気量算出部の概略構成を示すブロック図である。
【図１３】マップ値Ｇｃｙｌ＿ｖｔ＿ｂａｓｅの算出に用いるマップの一例を示す図である。
【図１４】補正係数Ｋ＿ｇｃｙｌ＿ｖｔの算出に用いるマップの一例を示す図である。
【図１５】補正後バルブリフト算出部の概略構成を示すブロック図である。
【図１６】ＦＦ補正値Ｄｌｉｆｔｉｎ＿ｔｅｓｔの算出に用いるマップの一例を示す図である。
【図１７】ＦＢ補正値算出部の概略構成を示すブロック図である。
【図１８】第３推定吸気量算出部の概略構成を示すブロック図である。
【図１９】むだ時間ｄの算出に用いるマップの一例を示す図である。
【図２０】マップ値Ｇｃｙｌ＿ｈａｔ＿ｂａｓｅの算出に用いるマップの一例を示す図である。
【図２１】補正係数Ｋ＿ｇｃｙｌ＿ｈａｔの算出に用いるマップの一例を示す図である。
【図２２】推定バルブリフトＬｉｆｔｉｎ＿ｈａｔの算出に用いる、Ｃａｉｎ（ｋ−ｄ）＝Ｃａｉｎｒｔ用のマップを示す図である。
【図２３】推定バルブリフトＬｉｆｔｉｎ＿ｈａｔの算出に用いる、Ｃａｉｎ（ｋ−ｄ）＝Ｃａｉｎｍｉ用のマップを示す図である。
【図２４】推定バルブリフトＬｉｆｔｉｎ＿ｈａｔの算出に用いる、Ｃａｉｎ（ｋ−ｄ）＝Ｃａｉｎａｄ用のマップを示す図である。
【図２５】重みゲインＰの算出に用いるマップの一例を示す図である。
【図２６】点火時期コントローラの概略構成を示すブロック図である。
【図２７】最大推定吸気量の基本値Ｇｃｙｌ＿ｍａｘ＿ｂａｓｅの算出に用いるマップの一例を示す図である。
【図２８】補正係数Ｋ＿ｇｃｙｌ＿ｍａｘの算出に用いるマップの一例を示す図である。
【図２９】Ｃａｉｎ＝Ｃａｉｎｒｔ用の基本点火時期マップの一例を示す図である。
【図３０】Ｃａｉｎ＝Ｃａｉｎａｄ用の基本点火時期マップの一例を示す図である。
【図３１】制御周期ΔＴｎで実行される制御処理を示すフローチャートである。
【図３２】空燃比制御処理を示すフローチャートである。
【図３３】基本燃料噴射量Ｔｃｙｌ＿ｂｓの算出処理を示すフローチャートである。
【図３４】空燃比補正係数ＫＡＦＤの算出処理を示すフローチャートである。
【図３５】点火時期制御処理を示すフローチャートである。
【図３６】通常点火時期制御処理を示すフローチャートである。
【図３７】制御周期ΔＴで実行される制御処理を示すフローチャートである。
【図３８】推定機構温度Ｔｌｉｆｔ＿ｈａｔの算出処理を示すフローチャートである。
【図３９】ＦＢ補正値Ｄｌｉｆｔｉｎ＿ｆｂの算出処理を示すフローチャートである。
【図４０】可変機構制御処理を示すフローチャートである。
【図４１】エンジン始動中、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄの算出に用いるマップの一例を示す図である。
【図４２】エンジン始動中、目標カム位相Ｃａｉｎ＿ｃｍｄの算出に用いるマップの一例を示す図である。
【図４３】触媒暖機制御中、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄの算出に用いるマップの一例を示す図である。
【図４４】触媒暖機制御中、目標カム位相Ｃａｉｎ＿ｃｍｄの算出に用いるマップの一例を示す図である。
【図４５】通常運転中、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄの算出に用いるマップの一例を示す図である。
【図４６】通常運転中、目標カム位相Ｃａｉｎ＿ｃｍｄの算出に用いるマップの一例を示す図である。
【図４７】第１実施形態の制御装置による空燃比制御および可変機構制御のシミュレーション結果の一例（モデル化誤差がない場合）を示すタイミングチャートである。
【図４８】第１実施形態の制御装置による空燃比制御および可変機構制御のシミュレーション結果の一例（モデル化誤差がある場合）を示すタイミングチャートである。
【図４９】バルブリフトＬｉｆｔｉｎを補正することなく、そのまま用いながら空燃比制御および可変機構制御を実行した場合のミュレーション結果の一例を示すタイミングチャートである。
【図５０】第２実施形態の補正後バルブリフト算出部の概略構成を示すブロック図である。
【図５１】第２実施形態の制御装置による空燃比制御および可変機構制御のシミュレーション結果の一例（モデル化誤差がない場合）を示すタイミングチャートである。
【図５２】第２実施形態の制御装置による空燃比制御および可変機構制御のシミュレーション結果の一例（モデル化誤差がある場合）を示すタイミングチャートである。
【図５３】第３実施形態の補正後バルブリフト算出部の概略構成を示すブロック図である。
【図５４】第３実施形態の制御装置による空燃比制御および可変機構制御のシミュレーション結果の一例を示すタイミングチャートである。
【符号の説明】
【０３０３】
１  制御装置
１Ａ  制御装置
１Ｂ  制御装置
２  ＥＣＵ（推定機構温度算出手段、動作状態パラメータ検出手段、補正手段、制御
手段、空燃比パラメータ検出手段、目標空燃比算出手段、空燃比制御パラメータ
算出手段、燃料量決定手段、空燃比制御手段、点火時期決定手段、動作状態パラ
メータ推定値算出手段、補正量算出手段、補正後パラメータ算出手段）
３  内燃機関
１３ａ  排気通路  
２４  ＬＡＦセンサ（空燃比パラメータ検出手段）
２５  回動角センサ（動作状態パラメータ検出手段）
５０  可変バルブリフト機構（可変吸気機構）
１００  空燃比コントローラ（制御手段、燃料量決定手段、空燃比制御手段）
１１１  目標空燃比算出部（目標空燃比算出手段）
１１２  空燃比補正係数算出部（空燃比制御パラメータ算出手段）
１２０  補正後バルブリフト算出部（推定機構温度算出手段、補正手段、動作状態パラメ
ータ推定値算出手段、補正量算出手段、補正後パラメータ算出手段）
１８０  点火時期コントローラ（制御手段、点火時期決定手段）
２２０  補正後バルブリフト算出部（推定機構温度算出手段、補正手段）
３２０  補正後バルブリフト算出部（補正手段、動作状態パラメータ推定値算出手段、補
正量算出手段、補正後パラメータ算出手段）
Ｇｃｙｌ  吸入空気量
ＴＷ  エンジン水温（温度パラメータ）
Ｔｏｉｌ  油温（温度パラメータ）
ＴＡ  大気温
Ｇｃｙｌ＿ｖｔ  第１推定吸気量（負荷パラメータ）
Ｔｌｉｆｔ＿ｈａｔ  推定機構温度
Ｌｉｆｔｉｎ  吸気弁のリフト（動作状態パラメータ）
Ｌｉｆｔｉｎ＿ｍｏｄ  補正後バルブリフト（補正後パラメータ）
Ｌｉｆｔｉｎ＿ｈａｔ  推定バルブリフト（動作状態パラメータの推定値）
Ｄｌｉｆｔｉｎ＿ｆｂ  ＦＢ補正値（補正量）
Ｄｌｉｆｔｉｎ＿ｃｏｍｐ  リフト補正値（補正量）
Ｅｌｉｆｔ  推定誤差
Ｅｌｉｆｔ＿ＬＳ  推定誤差の統計処理値
Ｐ  重みゲイン
ＫＡＣＴ  検出空燃比（空燃比パラメータ）
ＫＣＭＤ  目標空燃比
ＫＡＦＤ  空燃比補正係数（空燃比制御パラメータ）
ＴＯＵＴ  燃料噴射量（燃料量）
Ｉｇｌｏｇ  点火時期
【図１】
2006348882.tif 000029
【図２】
2006348882.tif 000030
【図３】
2006348882.tif 000031
【図４】
2006348882.tif 000032
【図５】
2006348882.tif 000033
【図６】
2006348882.tif 000034
【図７】
2006348882.tif 000035
【図８】
2006348882.tif 000036
【図９】
2006348882.tif 000037
【図１０】
2006348882.tif 000038
【図１１】
2006348882.tif 000039
【図１２】
2006348882.tif 000040
【図１３】
2006348882.tif 000041
【図１４】
2006348882.tif 000042
【図１５】
2006348882.tif 000043
【図１６】
2006348882.tif 000044
【図１７】
2006348882.tif 000045
【図１８】
2006348882.tif 000046
【図１９】
2006348882.tif 000047
【図２０】
2006348882.tif 000048
【図２１】
2006348882.tif 000049
【図２２】
2006348882.tif 000050
【図２３】
2006348882.tif 000051
【図２４】
2006348882.tif 000052
【図２５】
2006348882.tif 000053
【図２６】
2006348882.tif 000054
【図２７】
2006348882.tif 000055
【図２８】
2006348882.tif 000056
【図２９】
2006348882.tif 000057
【図３０】
2006348882.tif 000058
【図３１】
2006348882.tif 000059
【図３２】
2006348882.tif 000060
【図３３】
2006348882.tif 000061
【図３４】
2006348882.tif 000062
【図３５】
2006348882.tif 000063
【図３６】
2006348882.tif 000064
【図３７】
2006348882.tif 000065
【図３８】
2006348882.tif 000066
【図３９】
2006348882.tif 000067
【図４０】
2006348882.tif 000068
【図４１】
2006348882.tif 000069
【図４２】
2006348882.tif 000070
【図４３】
2006348882.tif 000071
【図４４】
2006348882.tif 000072
【図４５】
2006348882.tif 000073
【図４６】
2006348882.tif 000074
【図４７】
2006348882.tif 000075
【図４８】
2006348882.tif 000076
【図４９】
2006348882.tif 000077
【図５０】
2006348882.tif 000078
【図５１】
2006348882.tif 000079
【図５２】
2006348882.tif 000080
【図５３】
2006348882.tif 000081
【図５４】
2006348882.tif 000082