(57)【要約】【課題】  カム位相およびバルブリフトをいずれも制御することで、吸入空気量を制御する場合において、カム位相制御およびバルブリフト制御が互いに干渉し合うのを回避しながら、吸入空気量制御の応答性および制御精度を向上させることができる内燃機関の吸入空気量制御装置を提供する。【解決手段】  吸入空気量制御装置1のECU2は、目標バルブリフトLiftin_cmdおよび目標カム位相Cain_cmdに応じて吸入空気量を制御し、Liftin_cmd,Cain_cmdは、実吸入空気量Gcylを目標吸入空気量Gcyl_cmdに収束させるためのマスタ値Liftin_cmd_ms,Cain_cmd_msと、Liftin_cmd,Cain_cmdに応じて設定されるスレーブ値Liftin_cmd_sl,Cain_cmd_slとの和として算出され(ステップ56,64)、リフトマスタモードではCain_cmd_ms＝0に(ステップ63)、位相マスタモードではLiftin_cmd_ms＝0にそれぞれ設定される(ステップ55)。【選択図】  図１７
2005120990.tif 000002
【特許請求の範囲】
【請求項１】
吸気弁を開閉するための吸気カムシャフトのクランクシャフトに対するカム位相をカム位相可変機構を介して可変制御するとともに、前記吸気弁のバルブリフトをバルブリフト可変機構を介して可変制御することにより、気筒内に吸入される吸入空気量を制御する内燃機関の吸入空気量制御装置であって、
前記吸入空気量制御の目標となる目標吸入空気量を、前記内燃機関の負荷を表す負荷パラメータに応じて設定する目標吸入空気量設定手段と、
前記吸入空気量を検出する吸入空気量検出手段と、
当該検出された吸入空気量が前記目標吸入空気量に収束するように、前記カム位相および前記バルブリフトの一方を制御するための第１制御値を算出する第１制御値算出手段と、
当該第１制御値算出手段により算出された第１制御値に基づき、前記カム位相および前記バルブリフトの他方を制御するための第２制御値を算出する第２制御値算出手段と、
を備えることを特徴とする内燃機関の吸入空気量制御装置。
【請求項２】
前記第１制御値は、前記吸入空気量を前記目標吸入空気量に収束させるためのフィードバック制御値を含み、
前記第１制御値手段は、当該フィードバック制御値を２自由度制御アルゴリズムにより算出することを特徴とする請求項１に記載の内燃機関の吸入空気量制御装置。
【請求項３】
前記第１制御値に応じて、前記カム位相可変機構および前記バルブリフト可変機構の一方への制御入力を算出するとともに、前記第２制御値に応じて、前記カム位相可変機構および前記バルブリフト可変機構の他方への制御入力を算出する制御入力算出手段をさらに備え、
前記第１制御値算出手段および前記第２制御値算出手段の算出周期は、前記制御入力算出手段の算出周期よりも長く設定されていることを特徴とする請求項１または２に記載の内燃機関の吸入空気量制御装置。
【請求項４】
吸気弁を開閉するための吸気カムシャフトのクランクシャフトに対するカム位相をカム位相可変機構を介して可変制御するとともに、前記吸気弁のバルブリフトをバルブリフト可変機構を介して可変制御することにより、気筒内に吸入される吸入空気量を制御する内燃機関の吸入空気量制御装置であって、
前記吸入空気量制御の目標となる目標吸入空気量を、前記内燃機関の負荷を表す第１負荷パラメータに応じて設定する目標吸入空気量設定手段と、
前記吸入空気量を検出する吸入空気量検出手段と、
当該検出された吸入空気量が前記目標吸入空気量に収束するように、前記バルブリフトを制御するとともに、当該バルブリフト制御を補助するために、前記カム位相を所定の第１制御アルゴリズムで制御する第１制御手段と、
前記検出された吸入空気量が前記目標吸入空気量に収束するように、前記カム位相を制御するとともに、当該カム位相制御を補助するために、前記バルブリフトを所定の第２制御アルゴリズムで制御する第２制御手段と、
前記内燃機関の負荷を表す第２負荷パラメータに応じて、前記第１制御手段および前記第２制御手段の一方を選択するとともに、当該選択した一方による制御を実行させる制御選択手段と、
を備えることを特徴とする内燃機関の吸入空気量制御装置。
【請求項５】
前記第１制御手段の前記所定の第１制御アルゴリズムは、前記バルブリフトの制御状態に応じて前記カム位相を制御するアルゴリズムであり、
前記第２制御手段の前記所定の第２制御アルゴリズムは、前記カム位相の制御状態に応じて前記バルブリフトを制御するアルゴリズムであることを特徴とする請求項４に記載の内燃機関の吸入空気量制御装置。
【請求項６】
前記制御選択手段は、前記第２負荷パラメータにより表される前記内燃機関の負荷が所定の第１負荷域にあるときには、前記第２制御手段を選択し、前記第２負荷パラメータにより表される前記内燃機関の負荷が前記所定の第１負荷域よりも高い所定の第２負荷域にあるときには、前記第１制御手段を選択することを特徴とする請求項４または５に記載の内燃機関の吸入空気量制御装置。
【請求項７】
前記制御選択手段は、
前記内燃機関が加速状態にあるか否かを判定する加速判定手段と、
前記第２負荷パラメータが、所定のしきい値よりも小さいときには、前記内燃機関の負荷が前記所定の第２負荷域にあると判定し、当該所定のしきい値以上のときには、前記所定の第１負荷域にあると判定する負荷域判定手段と、
前記所定のしきい値を、前記加速判定手段により前記内燃機関が加速状態にあると判定されたときには、それ以外のときよりも大きい値に設定するしきい値設定手段と、
を備えることを特徴とする請求項６に記載の内燃機関の吸入空気量制御装置。
【請求項８】
前記制御選択手段は、
前記内燃機関が加速状態にあるか否かを判定する加速判定手段と、
前記第２負荷パラメータを、前記加速判定手段により前記内燃機関が加速状態にあると判定されたときには、それ以外のときよりも大きい値に設定する第２負荷パラメータ設定手段と、
当該設定された第２負荷パラメータが、所定のしきい値以下のときには、前記内燃機関の負荷が前記所定の第１負荷域にあると判定し、当該所定のしきい値よりも大きいときには、前記所定の第２負荷域にあると判定する負荷域判定手段と、
を備えることを特徴とする請求項６に記載の内燃機関の吸入空気量制御装置。
【請求項９】
前記第１制御手段および前記第２制御手段の各々は、
前記カム位相を制御するためのカム位相制御値を算出するカム位相制御値算出手段と、
前記バルブリフトを制御するためのバルブリフト制御値を算出するバルブリフト制御値算出手段と、
を備え、
前記カム位相制御値算出手段は、前記カム位相制御値を、前記吸入空気量を前記目標吸入空気量に収束させるためのカム位相フィードバック制御値と、前記バルブリフト制御値に応じて設定されるカム位相設定値との和として算出し、
前記バルブリフト制御値算出手段は、前記バルブリフト制御値を、前記吸入空気量を前記目標吸入空気量に収束させるためのバルブリフトフィードバック制御値と、前記カム位相制御値に応じて設定されるバルブリフト設定値との和として算出し、
前記第１制御手段の前記カム位相制御値算出手段は、前記制御選択手段により前記第１制御手段が選択されたときに、前記カム位相フィードバック制御値を値０に設定し、
前記第２制御手段の前記バルブリフト制御値算出手段は、前記制御選択手段により前記第２制御手段が選択されたときに、前記バルブリフトフィードバック制御値を値０に設定することを特徴とする請求項４ないし８のいずれかに記載の内燃機関の吸入空気量制御装置。
【請求項１０】
前記カム位相制御値算出手段は、２自由度制御アルゴリズムにより、前記カム位相フィードバック制御値を算出し、
前記バルブリフト制御値算出手段は、２自由度制御アルゴリズムにより、前記バルブリフトフィードバック制御値を算出することを特徴とする請求項９に記載の内燃機関の吸入空気量制御装置。
【請求項１１】
前記カム位相制御値算出手段は、前記バルブリフト制御値が前記バルブリフトをより減少させるような値であるほど、前記カム位相設定値を前記吸気弁の開弁タイミングをより早くするような値に設定し、
前記バルブリフト制御値算出手段は、前記カム位相制御値が前記吸気弁の開弁タイミングをより早くするような値であるほど、前記バルブリフト設定値を前記バルブリフトをより減少させるような値に設定することを特徴とする請求項９または１０に記載の内燃機関の吸入空気量制御装置。
【請求項１２】
前記カム位相制御値に応じて、前記カム位相可変機構への制御入力を算出するとともに、前記バルブリフト制御値に応じて、前記バルブリフト可変機構への制御入力を算出する制御入力算出手段をさらに備え、
前記カム位相制御値算出手段および前記バルブリフト制御値算出手段の算出周期は、前記制御入力算出手段の算出周期よりも長く設定されていることを特徴とする請求項９ないし１１のいずれかに記載の内燃機関の吸入空気量制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、吸気弁のバルブリフトおよびカム位相すなわちバルブタイミングをいずれも可変制御することにより、吸入空気量を制御する内燃機関の吸入空気量制御装置に関する。
【背景技術】
【０００２】
従来、吸入空気量を制御する内燃機関の吸入空気量制御装置として、特許文献１に記載されたものが知られている。この内燃機関には、バルブリフト可変機構およびカム位相可変機構が設けられており、バルブリフト可変機構により、吸気弁のバルブリフトが変更されるとともに、カム位相可変機構により、吸気カムシャフトのクランクシャフトに対するカム位相が変更されることで、吸気弁のバルブタイミングが変更される。
【０００３】
この吸入空気量制御装置では、カム位相可変機構およびバルブリフト可変機構を介して、吸気弁のカム位相およびバルブリフトをいずれも可変制御することにより、吸入空気量が制御される。具体的には、内燃機関の負荷などに応じて、バルブリフトの目標値である目標バルブリフト、およびカム位相の目標値である目標カム位相がそれぞれ設定されるとともに、これらの目標値に基づいて、フィードバック制御が実行される。また、吸気弁とピストンとの干渉を回避するために、目標カム位相または目標バルブリフトが補正される。具体的には、例えば、センサにより検出された検出バルブリフトと目標バルブリフトとの偏差を所定のしきい値と比較し、この偏差がしきい値以上のときには、目標カム位相が所定値分、遅角側に補正される（同文献の図１０に示す例）。
【０００４】
【特許文献１】特開２００２−３３２８７６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上記従来の吸入空気量制御装置のように、バルブリフト可変機構およびカム位相可変式機構を双方とも駆動しながら、吸入空気量を制御した場合、すなわちバルブリフト制御およびカム位相制御を双方とも実行しながら、吸入空気量を制御した場合、２つの可変機構の動作特性の差異に起因して、バルブリフト制御およびカム位相制御が互いに干渉し合うことにより、吸入空気量制御の制御精度および応答性の低下を招くおそれがある。すなわち、バルブリフト可変機構を介してバルブリフトを制御した場合には、カム位相可変機構を介してカム位相を制御した場合よりも、吸入空気量をより迅速に変更することができ、それにより、吸入空気量制御の高い応答性を確保できる。一方、カム位相可変機構を用いた場合の方が、吸入空気量を微小な変化量できめ細かく制御でき、高い制御精度を確保できる。以上のように、バルブリフト制御およびカム位相制御は、互いに異なる吸入空気量の制御特性を有しているので、両制御が互いに干渉した場合には、吸入空気量を適切に制御することができない。例えば、内燃機関が低負荷域にある場合のような、高い制御精度が要求される場合、バルブリフト制御では吸入空気量をきめ細かく制御できないため、バルブリフト制御がカム位相制御に干渉すると、その影響により、制御精度の低下を招いてしまう。
【０００６】
本発明は、上記課題を解決するためになされたもので、カム位相制御およびバルブリフト制御をいずれも実行することで、吸入空気量を制御する場合において、カム位相制御およびバルブリフト制御が互いに干渉し合うのを回避しながら、吸入空気量制御の応答性および制御精度を向上させることができる内燃機関の吸入空気量制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、請求項１に係る発明は、吸気弁４を開閉するための吸気カムシャフト５のクランクシャフト３ｂに対するカム位相Ｃａｉｎをカム位相可変機構７０を介して可変制御するとともに、吸気弁４のバルブリフトＬｉｆｔｉｎをバルブリフト可変機構５０を介して可変制御することにより、気筒内に吸入される吸入空気量を制御する内燃機関３の吸入空気量制御装置１であって、吸入空気量制御の目標となる目標吸入空気量Ｇｃｙｌ＿ｃｍｄを、内燃機関３の負荷を表す負荷パラメータ（エンジン回転数ＮＥ、アクセル開度ＡＰ）に応じて設定する目標吸入空気量設定手段（ＥＣＵ２、目標吸入空気量算出部９０、ステップ２０，２１）と、吸入空気量（実吸入空気量Ｇｃｙｌ）を検出する吸入空気量検出手段（ＥＣＵ２、エアフローセンサ２２、吸気管内絶対圧センサ２３）と、検出された吸入空気量が目標吸入空気量に収束するように、カム位相およびバルブリフトの一方を制御するための第１制御値（目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄ、目標カム位相Ｃａｉｎ＿ｃｍｄ）を算出する第１制御値算出手段（ＥＣＵ２、第１および第２ＡＣＴＡＳＳコントローラ１００，２００、ステップ３７，３８）と、第１制御値算出手段により算出された第１制御値に基づき、カム位相およびバルブリフトの他方を制御するための第２制御値（目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄ、目標カム位相Ｃａｉｎ＿ｃｍｄ、スレーブ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｓｌ，Ｃａｉｎ＿ｃｍｄ＿ｓｌ）を算出する第２制御値算出手段（ＥＣＵ２、第１および第２スレーブ値算出部１１０，２１０、ステップ５１，５２，５６，６０，６４）と、を備えることを特徴とする。
【０００８】
この内燃機関の吸入空気量制御装置によれば、吸入空気量制御の目標となる目標吸入空気量が、内燃機関の負荷を表す負荷パラメータに応じて設定され、検出された吸入空気量が目標吸入空気量に収束するように、カム位相およびバルブリフトの一方を制御するための第１制御値が算出され、第１制御値に基づき、カム位相およびバルブリフトの他方を制御するための第２制御値が算出される。このように、吸入空気量を目標吸入空気量に収束させるための第１制御値に基づき、第２制御値が算出されるので、これを、第１制御値による吸入空気量の目標吸入空気量への収束性を阻害することのない値として算出することができる。その結果、例えば、第１制御値でカム位相を制御し、第２制御値でバルブリフトを制御した場合には、両制御が互いに干渉し合うのを回避しながら、吸入空気量を微小な変化量できめ細かく制御でき、制御精度を向上させることができる。一方、第１制御値でバルブリフトを制御し、第２制御値でカム位相を制御した場合には、両制御が互いに干渉し合うのを回避しながら、吸入空気量制御のむだ時間を小さくでき、応答性を向上させることができる。
【０００９】
請求項２に係る発明は、請求項１に記載の内燃機関３の吸入空気量制御装置１において、第１制御値は、吸入空気量を目標吸入空気量に収束させるためのフィードバック制御値（マスタ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｍｓ，Ｃａｉｎ＿ｃｍｄ＿ｍｓ）を含み、第１制御値手段は、フィードバック制御値を２自由度制御アルゴリズム［式（２）〜（７），（１０）〜（１４），（１６）〜（２１），（２４）〜（２８）］により算出することを特徴とする。
【００１０】
この内燃機関の吸入空気量制御装置によれば、第１制御値に含まれるフィードバック制御値が、２自由度制御アルゴリズムにより算出されるので、２自由度制御アルゴリズムとして、例えば目標値フィルタ型２自由度制御アルゴリズムを用いた場合、目標値フィルタアルゴリズムにより、吸入空気量の目標吸入空気量への収束速度を適切に設定することができるとともに、フィードバック制御アルゴリズムにより、吸入空気量の目標吸入空気量への収束挙動を適切に設定することができる。
【００１１】
請求項３に係る発明は、請求項１または２に記載の内燃機関３の吸入空気量制御装置１において、第１制御値（目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄ、目標カム位相Ｃａｉｎ＿ｃｍｄ）に応じて、カム位相可変機構７０およびバルブリフト可変機構５０の一方への制御入力（位相制御入力Ｕｃａｉｎ、リフト制御入力Ｕｌｉｆｔｉｎ）を算出するとともに、第２制御値に応じて、カム位相可変機構７０およびバルブリフト可変機構５０の他方への制御入力（位相制御入力Ｕｃａｉｎ、リフト制御入力Ｕｌｉｆｔｉｎ）を算出する制御入力算出手段（ＥＣＵ２、バルブリフトコントローラ１２０、カム位相コントローラ２２０、ステップ２，３）をさらに備え、第１制御値算出手段および第２制御値算出手段の算出周期（制御周期ΔＴ１）は、制御入力算出手段の算出周期（制御周期ΔＴ２）よりも長く設定されていることを特徴とする。
【００１２】
この内燃機関の吸入空気量制御装置によれば、カム位相可変機構およびバルブリフト可変機構の一方への制御入力が、第１制御値に応じて算出され、カム位相可変機構およびバルブリフト可変機構の他方への制御入力が、第２制御値に応じて算出されるとともに、第１および第２制御値算出手段の算出周期が、制御入力算出手段の算出周期よりも長く設定されている。吸入空気量を、カム位相可変機構およびバルブリフト可変機構を介して制御する場合、吸入空気量の応答速度は、両可変機構の応答速度に起因して、比較的、遅くなるのが一般的であるので、例えば、そのような応答速度に合致するように、第１および第２制御値算出手段の算出周期を適切に設定することにより、吸入空気量の過渡的変化を精度よく、制御することができる。さらに、制御入力算出手段の算出周期が、第１および第２制御値算出手段の算出周期よりも短いので、カム位相可変機構およびバルブリフト可変機構への制御入力を、第１および第２制御値よりも迅速に算出できることで、吸入空気量制御の安定性を向上させることができるとともに、両可変機構が非線形特性を有している場合でも、吸入空気量制御への影響を抑制することができ、その分、吸入空気量制御の安定性をさらに向上させることができる。
【００１３】
請求項４に係る発明は、吸気弁４を開閉するための吸気カムシャフト５のクランクシャフト３ｂに対するカム位相Ｃａｉｎをカム位相可変機構７０を介して可変制御するとともに、吸気弁４のバルブリフトＬｉｆｔｉｎをバルブリフト可変機構５０を介して可変制御することにより、気筒内に吸入される吸入空気量を制御する内燃機関３の吸入空気量制御装置１であって、吸入空気量制御の目標となる目標吸入空気量Ｇｃｙｌ＿ｃｍｄを、内燃機関の負荷を表す第１負荷パラメータ（エンジン回転数ＮＥ、アクセル開度ＡＰ）に応じて設定する目標吸入空気量設定手段（ＥＣＵ２、目標吸入空気量算出部９０、ステップ２０，２１）と、吸入空気量（実吸入空気量Ｇｃｙｌ）を検出する吸入空気量検出手段（ＥＣＵ２、エアフローセンサ２２、吸気管内絶対圧センサ２３）と、検出された吸入空気量（実吸入空気量Ｇｃｙｌ）が目標吸入空気量Ｇｃｙｌ＿ｃｍｄに収束するように、バルブリフトＬｉｆｔｉｎを制御するとともに、バルブリフト制御を補助するために、カム位相Ｃａｉｎを所定の第１制御アルゴリズムで制御する第１制御手段（ＥＣＵ２、第１ＡＣＴＡＳＳコントローラ１００、第１スレーブ値算出部１１０、ステップ５１，５２，５４，５６，６０，６３，６４）と、検出された吸入空気量が目標吸入空気量に収束するように、カム位相Ｃａｉｎを制御するとともに、カム位相制御を補助するために、バルブリフトＬｉｆｔｉｎを所定の第２制御アルゴリズムで制御する第２制御手段（ＥＣＵ２、第２ＡＣＴＡＳＳコントローラ２００、第２スレーブ値算出部２１０、ステップ５１，５２，５５，５６，６０，６２，６４）と、内燃機関３の負荷を表す第２負荷パラメータ（目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄ、目標カム位相Ｃａｉｎ＿ｃｍｄ）に応じて、第１制御手段および第２制御手段の一方を選択するとともに、選択した一方による制御を実行させる制御選択手段（ＥＣＵ２、マスタ・スレーブ選択部２３０、ステップ３４〜３６，３９）と、を備えることを特徴とする。
【００１４】
この内燃機関の吸入空気量制御装置によれば、目標吸入空気量設定手段により、吸入空気量制御の目標となる目標吸入空気量が、内燃機関の負荷を表す第１負荷パラメータに応じて設定される。また、第１制御手段により、バルブリフトが、検出された吸入空気量が目標吸入空気量に収束するように制御されるとともに、カム位相が、バルブリフト制御を補助するために、所定の第１制御アルゴリズムで制御される。このように、第１制御手段では、バルブリフト制御を主体として吸入空気量が制御されるとともに、カム位相制御はバルブリフト制御の補助用に用いられるので、両制御が互いに干渉し合うのを回避できる。さらに、第２制御手段により、カム位相が、検出された吸入空気量が目標吸入空気量に収束するように制御されるとともに、バルブリフトが、カム位相制御を補助するために、所定の第２制御アルゴリズムで制御される。このように、第２制御手段では、カム位相制御を主体として吸入空気量が制御されるとともに、バルブリフト制御がカム位相制御の補助用に用いられるので、両制御が互いに干渉し合うのを回避できる。さらに、制御選択手段により、内燃機関の負荷を表す第２負荷パラメータに応じて、第１制御手段または第２制御手段の一方が選択され、選択した一方による制御が実行されるので、例えば、内燃機関の負荷が低いときには、第２制御手段を選択するようにすれば、カム位相制御およびバルブリフト制御が互いに干渉し合うのを回避しながら、カム位相制御により、吸入空気量を微小な変化量できめ細かく制御することができ、制御精度を向上させることが可能となる。一方、内燃機関の負荷が高いときには、第１制御手段を選択するようにすれば、カム位相制御およびバルブリフト制御が互いに干渉し合うのを回避しながら、バルブリフト制御により、吸入空気量制御のむだ時間を小さくでき、応答性を向上させることが可能になる。
【００１５】
請求項５に係る発明は、請求項４に記載の内燃機関３の吸入空気量制御装置１において、第１制御手段の所定の第１制御アルゴリズムは、バルブリフトの制御状態（目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄ）に応じてカム位相Ｃａｉｎを制御するアルゴリズムであり（ステップ６０，６４）、第２制御手段の所定の第２制御アルゴリズムは、カム位相の制御状態（目標カム位相Ｃａｉｎ＿ｃｍｄ）に応じてバルブリフトＬｉｆｔｉｎを制御するアルゴリズムである（ステップ５１，５２，５６）ことを特徴とする。
【００１６】
この内燃機関の吸入空気量制御装置によれば、第１制御手段により、カム位相がバルブリフトの制御状態に応じて制御されるので、カム位相を、バルブリフト制御による吸入空気量の目標吸入空気量への収束性を阻害することのないように、制御することができ、それにより、吸入空気量制御の応答性を確実に向上させることができる。また、第２制御手段により、バルブリフトがカム位相の制御状態に応じて制御されるので、バルブリフトを、カム位相制御による吸入空気量の目標吸入空気量への収束性を阻害することのないように、制御することができ、それにより、吸入空気量の制御精度を確実に向上させることができる。
【００１７】
請求項６に係る発明は、請求項４または５に記載の内燃機関３の吸入空気量制御装置１において、制御選択手段は、第２負荷パラメータにより表される内燃機関３の負荷が所定の第１負荷域にあるとき（ステップ３４の判別結果がＮＯ、またはステップ３９の判別結果がＹＥＳのとき）には、第２制御手段を選択し（ステップ３５）、第２負荷パラメータにより表される内燃機関の負荷３が所定の第１負荷域よりも高い所定の第２負荷域にあるとき（ステップ３４の判別結果がＹＥＳ、またはステップ３９の判別結果がＮＯのとき）には、第１制御手段を選択する（ステップ３６）ことを特徴とする。
【００１８】
この内燃機関の吸入空気量制御装置によれば、制御選択手段により、内燃機関の負荷が所定の第１負荷域にあるときには、第２制御手段が選択され、内燃機関の負荷が所定の第１負荷域よりも高い所定の第２負荷域にあるときには、第１制御手段が選択される。したがって、吸入空気量制御において、高い制御精度が要求される低負荷域では、そのような制御精度を適切に確保することができるとともに、高い応答性が要求される高負荷域では、そのような応答性を適切に確保することができる。
【００１９】
請求項７に係る発明は、請求項６に記載の内燃機関３の吸入空気量制御装置１において、制御選択手段は、内燃機関３が加速状態にあるか否かを判定する加速判定手段（ＥＣＵ２、ステップ３１）と、第２負荷パラメータ（目標カム位相Ｃａｉｎ＿ｃｍｄ）が、所定のしきい値Ｃａｉｎ＿ｍｓｓｗ＿ｌｍｔよりも小さいときには、内燃機関３の負荷が所定の第２負荷域にあると判定し、所定のしきい値以上のときには、所定の第１負荷域にあると判定する負荷域判定手段（ＥＣＵ２、ステップ３４〜３６）と、所定のしきい値Ｃａｉｎ＿ｍｓｓｗ＿ｌｍｔを、加速判定手段により内燃機関３が加速状態にあると判定されたとき（ステップ３１の判別結果がＹＥＳのとき）には、それ以外のときよりも大きい値（所定の加速用値Ｃａｉｎ＿ｍｓｓｗ１）に設定するしきい値設定手段（ステップ３２）と、を備えることを特徴とする。
【００２０】
この内燃機関の吸入空気量制御装置によれば、加速判定手段により、内燃機関が加速状態にあるか否かが判定され、負荷域判定手段により、第２負荷パラメータが所定のしきい値よりも小さいときには、内燃機関の負荷が所定の第２負荷域にあると判定され、所定のしきい値以上のときには、所定の第１負荷域にあると判定されるとともに、しきい値設定手段により、所定のしきい値は、内燃機関が加速状態にあると判定されたときには、それ以外のときよりも大きい値に設定される。このように、内燃機関が加速状態にある場合、すなわち吸入空気量制御の高い応答性が要求される場合には、内燃機関の負荷が所定の第２負荷域にあると判定される負荷領域がより拡大されることで、第１制御手段が選択されやすくなり、それにより、吸入空気量制御での高い応答性を迅速かつ適切に確保することができる。
【００２１】
請求項８に係る発明は、請求項６に記載の内燃機関３の吸入空気量制御装置１において、制御選択手段は、内燃機関３が加速状態にあるか否かを判定する加速判定手段（ＥＣＵ２、ステップ５０）と、第２負荷パラメータ（目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄ）を、加速判定手段により内燃機関３が加速状態にあると判定されたとき（ステップ５０の判別結果がＹＥＳのとき）には、それ以外のときよりも大きい値に設定する第２負荷パラメータ設定手段（ＥＣＵ２、ステップ５１）と、設定された第２負荷パラメータ（目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄ）が、所定のしきい値Ｌｉｆｔｉｎ＿ｍｓｓｗ以下のときには、内燃機関３の負荷が所定の第１負荷域にあると判定し、所定のしきい値Ｌｉｆｔｉｎ＿ｍｓｓｗよりも大きいときには、所定の第２負荷域にあると判定する負荷域判定手段（ＥＣＵ２、ステップ３５，３６，３９）と、を備えることを特徴とする。
【００２２】
この内燃機関の吸入空気量制御装置によれば、加速判定手段により、内燃機関が加速状態にあるか否かが判定され、第２負荷パラメータ設定手段により、第２負荷パラメータが、内燃機関が加速状態にあると判定されたときには、それ以外のときよりも大きい値に設定される。また、負荷域判定手段により、第２負荷パラメータが所定のしきい値よりも大きいときには、内燃機関の負荷が所定の第２負荷域にあると判定され、所定のしきい値以下のときには、所定の第１負荷域にあると判定される。このように、内燃機関が加速状態にあるとき、すなわち吸入空気量制御の高い応答性が要求されるときには、内燃機関の負荷が所定の第２負荷域にあると判定される負荷領域がより拡大されることで、第１制御手段が選択されやすくなり、それにより、吸入空気量制御での高い応答性を迅速かつ適切に確保することができる。
【００２３】
請求項９に係る発明は、請求項４ないし８のいずれかに記載の内燃機関３の吸入空気量制御装置１において、第１制御手段および第２制御手段の各々は、カム位相Ｃａｉｎを制御するためのカム位相制御値（目標カム位相Ｃａｉｎ＿ｃｍｄ）を算出するカム位相制御値算出手段（ＥＣＵ２、ステップ３８）と、バルブリフトＬｉｆｔｉｎを制御するためのバルブリフト制御値（目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄ）を算出するバルブリフト制御値算出手段（ＥＣＵ２、ステップ３７）と、を備え、カム位相制御値算出手段は、カム位相制御値（目標カム位相Ｃａｉｎ＿ｃｍｄ）を、吸入空気量を目標吸入空気量に収束させるためのカム位相フィードバック制御値（目標カム位相のマスタ値Ｃａｉｎ＿ｃｍｄ＿ｍｓ）と、バルブリフト制御値に応じて設定されるカム位相設定値（目標カム位相のスレーブ値Ｃａｉｎ＿ｃｍｄ＿ｓｌ）との和として算出し、バルブリフト制御値算出手段は、バルブリフト制御値（目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄ）を、吸入空気量を目標吸入空気量に収束させるためのバルブリフトフィードバック制御値（目標バルブリフトのマスタ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｍｓ）と、カム位相制御値に応じて設定されるバルブリフト設定値（目標バルブリフトのスレーブ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｓｌ）との和として算出し、第１制御手段のカム位相制御値算出手段は、制御選択手段により第１制御手段が選択されたときに、カム位相フィードバック制御値を値０に設定し（ステップ６１，６３）、第２制御手段のバルブリフト制御値算出手段は、制御選択手段により第２制御手段が選択されたときに、バルブリフトフィードバック制御値を値０に設定する（ステップ５３，５５）ことを特徴とする。
【００２４】
この内燃機関の吸入空気量制御装置によれば、カム位相を制御するためのカム位相制御値が、吸入空気量を目標吸入空気量に収束させるためのカム位相フィードバック制御値と、バルブリフト制御値に応じて設定されるカム位相設定値との和として算出され、バルブリフトを制御するためのバルブリフト制御値が、吸入空気量を目標吸入空気量に収束させるためのバルブリフトフィードバック制御値と、カム位相制御値に応じて設定されるバルブリフト設定値との和として算出される。さらに、制御選択手段により第１制御手段が選択されたときには、カム位相フィードバック制御値が値０として算出され、制御選択手段により第２制御手段が選択されたときには、バルブリフトフィードバック制御値が値０として算出される。これにより、例えば、制御選択手段による選択が第１制御手段から第２制御手段に切り換わった際、その切り換え前のカム位相フィードバック制御値が値０として算出されているので、切り換え後、カム位相フィードバック制御値が値０を初期値として算出されることにより、カム位相制御値が急変するのを回避できる。これとは逆に、制御選択手段による選択が第２制御手段から第１制御手段に切り換わった際には、その切り換え前のバルブリフトフィードバック制御値が値０として算出されているので、切り換え後、バルブリフトフィードバック制御値が値０を初期値として算出されることにより、バルブリフト制御値が急変するのを回避できる。以上のように、制御選択手段による選択が第１制御手段および第２制御手段の一方から他方に切り換わる際、カム位相制御値およびバルブリフト制御値の急変を回避できることで、吸入空気量の制御状態の急変を回避できる。その結果、トルク段差などの発生を回避できる。
【００２５】
請求項１０に係る発明は、請求項９に記載の内燃機関３の吸入空気量制御装置１において、カム位相制御値算出手段は、２自由度制御アルゴリズム［式（２）〜（７），（１０）〜（１４）］により、カム位相フィードバック制御値（目標カム位相のマスタ値Ｃａｉｎ＿ｃｍｄ＿ｍｓ）を算出し、バルブリフト制御値算出手段は、２自由度制御アルゴリズム［式（１６）〜（２１），（２４）〜（２８）］により、バルブリフトフィードバック制御値（目標バルブリフトのマスタ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｍｓ）を算出することを特徴とする。
【００２６】
この内燃機関の吸入空気量制御装置によれば、カム位相フィードバック制御値およびバルブリフトフィードバック制御値が、２自由度制御アルゴリズムにより算出されるので、２自由度制御アルゴリズムとして、例えば目標値フィルタ型２自由度制御アルゴリズムを用いた場合、目標値フィルタアルゴリズムにより、吸入空気量の目標吸入空気量への収束速度を適切に設定することができるとともに、フィードバック制御アルゴリズムにより、吸入空気量の目標吸入空気量への収束挙動を適切に設定することができる。
【００２７】
請求項１１に係る発明は、請求項９または１０に記載の内燃機関３の吸入空気量制御装置１において、カム位相制御値算出手段は、バルブリフト制御値（目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄ）がバルブリフトＬｉｆｔｉｎをより減少させるような値であるほど、カム位相設定値（目標カム位相のスレーブ値Ｃａｉｎ＿ｃｍｄ＿ｓｌ）を吸気弁４の開弁タイミングをより早くするような値に設定し（ステップ６０）、バルブリフト制御値算出手段は、カム位相制御値（目標カム位相Ｃａｉｎ＿ｃｍｄ）が吸気弁４の開弁タイミングをより早くするような値であるほど、バルブリフト設定値（目標バルブリフトのスレーブ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｓｌ）をバルブリフトＬｉｆｔｉｎをより減少させるような値に設定する（ステップ５１，５２）ことを特徴とする。
【００２８】
この内燃機関の吸入空気量制御装置によれば、バルブリフト制御値がバルブリフトをより減少させるような値であるほど、カム位相設定値が、カム位相が吸気弁の開弁タイミングをより早くするような値に設定されるので、例えば、カム位相設定値を、吸気弁の開弁タイミングが吸気行程のＴＤＣ位置よりも前側となる値に設定すると、内燃機関の負荷が小さく、目標吸入空気量がより小さいことで、バルブリフトがより小さい値に制御されるほど、それに応じて、吸気弁の開弁タイミングもより早くなるように適切に制御することができる。すなわち、バルブリフト制御による吸入空気量の制御方向に、カム位相制御による吸入空気量の制御方向を同調させることができ、それにより、カム位相制御がバルブリフト制御に干渉するのをより確実に回避できる。また、カム位相制御値が吸気弁の開弁タイミングをより早くするような値であるほど、バルブリフト設定値が、バルブリフトをより減少させるような値に設定されるので、上述したように、カム位相制御値を、吸気弁の開弁タイミングが吸気行程のＴＤＣ位置の前側となる値に制御すれば、内燃機関の負荷が小さく、目標吸入空気量がより小さいことで、吸気弁の開弁タイミングがより早くなるように制御されるほど、それに応じて、バルブリフトもより小さい値に適切に制御することができる。すなわち、カム位相制御による吸入空気量の制御方向に、バルブリフト制御による吸入空気量の制御方向を同調させることができ、それにより、バルブリフト制御がカム位相制御に干渉するのをより確実に回避できる。また、吸気弁の開弁タイミングがより早くなるほど（すなわち進角するほど）、内部ＥＧＲ量が増大し、燃焼速度が低下するけれども、それに伴ってバルブリフトをより小さく制御し、筒内流動を増大させることにより、そのような燃焼速度の低下を補償でき、安定した燃焼状態を実現することができる。さらに、吸気弁の開弁タイミングがより進角すると、バルブリフトが必ず小さくなるように制御されるので、吸気弁および排気弁が同時に開弁状態になると互いに当接するようなレイアウトの内燃機関に適用した場合、そのような当接を確実に回避することができる。
【００２９】
請求項１２に係る発明は、請求項９ないし１１のいずれかに記載の内燃機関３の吸入空気量制御装置１において、カム位相制御値（目標カム位相Ｃａｉｎ＿ｃｍｄ）に応じて、カム位相可変機構７０への制御入力（位相制御入力Ｕｃａｉｎ）を算出するとともに、バルブリフト制御値（目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄ）に応じて、バルブリフト可変機構５０への制御入力（リフト制御入力Ｕｌｉｆｔｉｎ）を算出する制御入力算出手段（ＥＣＵ２、バルブリフトコントローラ１２０、カム位相コントローラ２２０）をさらに備え、カム位相制御値算出手段およびバルブリフト制御値算出手段の算出周期（制御周期ΔＴ１）は、制御入力算出手段の算出周期（制御周期ΔＴ２）よりも長く設定されていることを特徴とする。
【００３０】
この内燃機関の吸入空気量制御装置によれば、カム位相可変機構への制御入力が、カム位相制御値に応じて算出され、バルブリフト可変機構への制御入力が、バルブリフト制御値に応じて算出されるとともに、カム位相制御値算出手段およびバルブリフト制御値算出手段の算出周期が、これらの算出周期よりも長く設定されている。前述したように、吸入空気量を、カム位相可変機構およびバルブリフト可変機構を介して制御する場合、吸入空気量の応答速度は、両可変機構の応答速度に起因して、比較的、遅くなるのが一般的であるので、例えば、そのような応答速度に合致するように、カム位相制御値算出手段およびバルブリフト制御値算出手段の算出周期を適切に設定することにより、吸入空気量の過渡的変化を精度よく、制御することができる。さらに、制御入力算出手段の算出周期が、カム位相制御値算出手段およびバルブリフト制御値算出手段の算出周期よりも短いので、カム位相可変機構およびバルブリフト可変機構への制御入力を、カム位相制御値およびバルブリフト制御値よりも迅速に算出できることで、吸入空気量制御の安定性を向上させることができるとともに、両可変機構が非線形特性を有している場合でも、吸入空気量制御への影響を抑制することができ、その分、吸入空気量制御の安定性をさらに向上させることができる。
【図面の簡単な説明】
【００３１】
【図１】本願発明の一実施形態に係る吸入空気量制御装置が適用された内燃機関の概略構成を示す模式図である。
【図２】吸入空気量制御装置の概略構成を示すブロック図である。
【図３】内燃機関の可変式吸気動弁機構および排気動弁機構の概略構成を示す断面図である。
【図４】可変式吸気動弁機構のバルブリフト可変機構の概略構成を示す断面図である。
【図５】（ａ）リフトアクチュエータの短アームが最大リフト位置にある状態と（ｂ）最小リフト位置にある状態を示す図である。
【図６】バルブリフト可変機構の下リンクが最大リフト位置にあるときに、（ａ）吸気弁が閉弁している状態と（ｂ）最大リフトで開弁している状態を示す図である。
【図７】バルブリフト可変機構の下リンクが最小リフト位置にあるときに、（ａ）吸気弁が閉弁している状態と（ｂ）最大リフトで開弁している状態を示す図である。
【図８】（ａ）バルブリフト可変機構の下リンクが最大リフト位置にあるときの吸気弁のバルブリフト曲線と（ｂ）最小リフト位置にあるときのバルブリフト曲線を示す図である。
【図９】カム位相可変機構の概略構成を模式的に示す断面図である。
【図１０】遊星歯車装置を図９のＡ−Ａ線に沿う方向から見た模式図である。
【図１１】電磁ブレーキを図９のＢ−Ｂ線に沿う方向から見た模式図である。
【図１２】カム位相可変機構の動作特性を示す特性曲線である。
【図１３】カム位相可変機構のソレノイドの動作特性を示す特性曲線である。
【図１４】カム位相可変機構によるカム位相の変更動作例を示す図である。
【図１５】バルブリフトのみを変化させた場合の吸入空気量の変化を説明するための図である。
【図１６】カム位相のみを変化させた場合の吸入空気量の変化を説明するための図である。
【図１７】吸入空気量制御装置の概略構成を示す機能ブロック図である。
【図１８】第１ＡＣＴＡＳＳコントローラの概略構成を示すブロック図である。
【図１９】実吸入空気量Ｇｃｙｌの算出アルゴリズムと、第１ＡＣＴＡＳＳコントローラにおける目標値フィルタおよびスライディングモードコントローラの制御アルゴリズムと、スライディングモードコントローラの制御アルゴリズムの導出に用いたプラントモデルとを示す図である。
【図２０】第１ＡＣＴＡＳＳコントローラの適応外乱オブザーバの制御アルゴリズムを示す図である。
【図２１】第１ＡＣＴＡＳＳコントローラの制御性を説明するためのタイミングチャートである。
【図２２】第２ＡＣＴＡＳＳコントローラの概略構成を示すブロック図である。
【図２３】第２ＡＣＴＡＳＳコントローラにおける目標値フィルタおよびスライディングモードコントローラの制御アルゴリズムと、スライディングモードコントローラの制御アルゴリズムの導出に用いたプラントモデルとを示す図である。
【図２４】第２ＡＣＴＡＳＳコントローラの適応外乱オブザーバの制御アルゴリズムを示す図である。
【図２５】バルブリフトコントローラの概略構成を示すブロック図である。
【図２６】バルブリフトコントローラにおける状態予測器の状態予測アルゴリズムおよびその導出式を示す図である。
【図２７】バルブリフトコントローラにおけるオンボード同定器の同定アルゴリズムを示す図である。
【図２８】バルブリフトコントローラにおける２自由度スライディングモードコントローラの制御アルゴリズムを示す図である。
【図２９】カム位相コントローラの概略構成を示すブロック図である。
【図３０】カム位相コントローラにおける状態予測器の状態予測アルゴリズムおよびその導出式を示す図である。
【図３１】カム位相コントローラにおけるオンボード同定器の同定アルゴリズムを示す図である。
【図３２】カム位相コントローラにおける２自由度スライディングモードコントローラの制御アルゴリズムを示す図である。
【図３３】エンジン制御処理のうちの主要な制御処理を示すフローチャートである。
【図３４】吸入空気量制御処理の内容を示すフローチャートである。
【図３５】目標吸入空気量の始動時用値の算出に用いるテーブルの一例を示す図である。
【図３６】目標吸入空気量の触媒暖機用値の算出に用いるマップの一例を示す図である。
【図３７】目標吸入空気量の通常運転用値の算出に用いるマップの一例を示す図である。
【図３８】リフト＆位相制御処理の内容を示すフローチャートである。
【図３９】目標バルブリフトの算出処理の内容を示すフローチャートである。
【図４０】目標バルブリフトのスレーブ値の算出に用いる加速時用テーブルの一例を示す図である。
【図４１】目標バルブリフトのスレーブ値の算出に用いる非加速時用テーブルの一例を示す図である。
【図４２】目標カム位相の算出処理の内容を示すフローチャートである。
【図４３】目標カム位相のスレーブ値の算出に用いるテーブルの一例を示す図である。
【図４４】リフト制御入力の算出処理の内容を示すフローチャートである。
【図４５】リフト制御入力の算出処理において、目標値フィルタ設定パラメータの算出に用いるテーブルの一例を示す図である。
【図４６】位相制御入力の算出処理の内容を示すフローチャートである。
【図４７】位相制御入力の算出処理において、目標値フィルタ設定パラメータの算出に用いるテーブルの一例を示す図である。
【図４８】点火時期制御処理の内容を示すフローチャートである。
【図４９】点火時期の触媒暖機用値および故障時用値の算出に用いる制御アルゴリズムを示す図である。
【図５０】点火時期の通常運転用値の算出に用いるマップの一例を示す図である。
【図５１】第１ＡＣＴＡＳＳコントローラの制御アルゴリズムの変形例を示す図である。
【図５２】第２ＡＣＴＡＳＳコントローラの制御アルゴリズムの変形例を示す図である。
【図５３】図５１，５２の第１および第２ＡＣＴＡＳＳコントローラの制御アルゴリズムの変形例により、吸入空気量を制御した場合の制御動作例を示すタイミングチャートである。
【発明を実施するための最良の形態】
【００３２】
以下、図面を参照しながら、本発明の一実施形態に係る内燃機関の吸入空気量制御装置について説明する。この吸入空気量制御装置１は、図２に示すように、ＥＣＵ２を備えており、このＥＣＵ２は、後述するように、内燃機関（以下「エンジン」という）３の運転状態に応じて、吸入空気量制御を含む各種の制御処理を実行する。
【００３３】
エンジン３は、図示しない車両に搭載された直列４気筒ガソリンエンジン（１気筒のみ図示）であり、図１および図３に示すように、気筒ごとに設けられ、吸気ポートおよび排気ポートをそれぞれ開閉する吸気弁４および排気弁７と、吸気弁４駆動用の吸気カムシャフト５および吸気カム６と、吸気弁４を開閉駆動する可変式吸気動弁機構４０と、排気弁７駆動用の排気カムシャフト８および排気カム９と、排気弁７を開閉駆動する排気動弁機構８０などを備えている。
【００３４】
吸気弁４は、そのステム４ａがガイド４ｂに摺動自在に嵌合しており、このガイド４ｂは、シリンダヘッド３ａに固定されている。さらに、吸気弁４は、図４に示すように、上下のスプリングシート４ｃ，４ｄと、これらの間に設けられたバルブスプリング４ｅとを備えており、このバルブスプリング４ｅにより、閉弁方向に付勢されている。
【００３５】
また、吸気カムシャフト５および排気カムシャフト８はそれぞれ、図示しないホルダを介して、シリンダヘッド３ａに回動自在に取り付けられている。この吸気カムシャフト５上には、スプロケット５ａ（図９参照）が同軸に配置され、回転自在に設けられている。このスプロケット５ａは、図示しないタイミングベルトを介してクランクシャフト３ｂに連結され、後述するカム位相可変機構７０を介して吸気カムシャフト５に連結されている。以上の構成により、吸気カムシャフト５は、クランクシャフト３ｂが２回転するごとに１回転する。また、吸気カム６は、吸気カムシャフト５上にこれと一体に回転するように気筒ごとに設けられている。
【００３６】
さらに、可変式吸気動弁機構４０は、吸気カムシャフト５の回転に伴って、各気筒の吸気弁４を開閉駆動するとともに、そのバルブリフトおよびバルブタイミングを変更するものであり、その詳細については、後述する。なお、本実施形態では、「吸気弁４のバルブリフト」は、吸気弁４の最大揚程を表すものとする。
【００３７】
一方、排気弁７は、そのステム７ａがガイド７ｂに摺動自在に嵌合しており、このガイド７ｂは、シリンダヘッド３ａに固定されている。さらに、排気弁７は、上下のスプリングシート７ｃ，７ｄと、これらの間に設けられたバルブスプリング７ｅとを備えており、このバルブスプリング７ｅにより、閉弁方向に付勢されている。
【００３８】
また、排気カムシャフト８は、これと一体のスプロケット（図示せず）を備え、このスプロケットおよび図示しないタイミングベルトを介してクランクシャフト３ｂに連結されており、それにより、クランクシャフト３ｂが２回転するごとに１回転する。さらに、排気カム９は、排気カムシャフト８上にこれと一体に回転するように気筒ごとに設けられている。
【００３９】
さらに、排気動弁機構８０は、排気ロッカアーム８１を備えており、この排気ロッカアーム８１が排気カム９の回転に伴って回動することにより、バルブスプリング７ｅの付勢力に抗しながら、排気弁７を開閉駆動する。
【００４０】
一方、エンジン３には、クランク角センサ２０および水温センサ２１がそれぞれ設けられている。このクランク角センサ２０は、クランクシャフト３ｂの回転に伴い、いずれもパルス信号であるＣＲＫ信号およびＴＤＣ信号をＥＣＵ２に出力する。このＣＲＫ信号は、所定のクランク角（例えば３０ｄｅｇ）ごとに１パルスが出力され、ＥＣＵ２は、このＣＲＫ信号に基づき、エンジン３の回転数（以下「エンジン回転数」という）ＮＥを算出する。また、ＴＤＣ信号は、各気筒のピストン３ｃが吸気行程のＴＤＣ位置よりも若干、手前の所定のクランク角位置にあることを表す信号であり、所定クランク角ごとに１パルスが出力される。なお、本実施形態では、エンジン回転数ＮＥが負荷パラメータおよび第１負荷パラメータに相当する。
【００４１】
一方、水温センサ２１は、エンジン本体に取り付けられたサーミスタなどで構成されており、エンジン３のシリンダブロック３ｄ内を循環する冷却水の温度であるエンジン水温ＴＷを検出して、その検出信号をＥＣＵ２に出力する。
【００４２】
また、エンジン３の吸気管１０には、上流側から順に、エアフローセンサ２２、スロットル弁機構１１、吸気管内絶対圧センサ２３および燃料噴射弁１２などが設けられている。
【００４３】
このエアフローセンサ２２（吸入空気量検出手段）は、熱線式エアフローメータで構成されており、後述するスロットル弁１１ａを通過する吸入空気量（以下「ＴＨ通過吸入空気量」という）Ｇｔｈを表す検出信号をＥＣＵ２に出力する。
【００４４】
また、スロットル弁機構１１は、スロットル弁１１ａおよびこれを開閉駆動するＴＨアクチュエータ１１ｂなどを備えている。スロットル弁１１ａは、吸気管１０の途中に回動自在に設けられており、当該回動に伴う開度の変化によりＴＨ通過吸入空気量Ｇｔｈを変化させる。ＴＨアクチュエータ１１ｂは、ＥＣＵ２に接続されたモータにギヤ機構（いずれも図示せず）を組み合わせたものであり、ＥＣＵ２からの制御入力によって駆動されることにより、スロットル弁１１ａの開度を変化させる。
【００４５】
ＥＣＵ２は、通常運転時、スロットル弁１１ａを全開状態に保持するとともに、可変式吸気動弁機構４０の故障時またはマスタバック（図示せず）への負圧供給時には、スロットル弁１１ａの開度を制御する。
【００４６】
また、吸気管１０のスロットル弁１１ａよりも下流側の部分は、サージタンク１０ａになっており、このサージタンク１０ａに、吸気管内絶対圧センサ２３が設けられている。この吸気管内絶対圧センサ２３（吸入空気量検出手段）は、例えば半導体圧力センサなどで構成され、吸気管１０内の絶対圧（以下「吸気管内絶対圧」という）ＰＢＡを表す検出信号をＥＣＵ２に出力する。
【００４７】
さらに、燃料噴射弁１２は、ＥＣＵ２からの、燃料噴射量ＴＯＵＴを表す制御入力によって駆動され、燃料を吸気管１０内に噴射する。
【００４８】
一方、エンジン３の排気管１５には、上流側から順に、第１および第２触媒装置１６ａ，１６ｂが設けられており、これらの触媒装置１６ａ，１６ｂにより、排気ガス中のＮＯｘ、ＨＣおよびＣＯなどが浄化される。
【００４９】
これらの触媒装置１６ａ，１６ｂの間に、酸素濃度センサ（以下「Ｏ２センサ」という）２５が設けられている。このＯ２センサ２５は、ジルコニアおよび白金電極などで構成され、第１触媒装置１６ａの下流側の排気ガス中の酸素濃度に基づく検出信号をＥＣＵ２に出力する。
【００５０】
また、排気管１５の第１触媒装置１６ａよりも上流側に、ＬＡＦセンサ２４が設けられている。このＬＡＦセンサ２４は、Ｏ２センサ２５と同様のセンサとリニアライザなどの検出回路とを組み合わせることによって構成されており、リッチ領域からリーン領域までの広範囲な空燃比の領域において排気ガス中の酸素濃度をリニアに検出して、その酸素濃度に比例する検出信号をＥＣＵ２に出力する。ＥＣＵ２は、これらのＬＡＦセンサ２４およびＯ２センサ２５の検出信号に基づき、空燃比制御を実行する。
【００５１】
さらに、エンジン３のシリンダヘッド３ｅには、点火プラグ１３（図２参照）が取り付けられている。この点火プラグ１３は、ＥＣＵ２に接続されており、ＥＣＵ２から点火時期Ｉｇｌｏｇに応じたタイミングで高電圧が加えられることで放電し、それにより、燃焼室内の混合気を燃焼させる。
【００５２】
次に、前述した可変式吸気動弁機構４０について説明する。この可変式吸気動弁機構４０は、図４に示すように、吸気カムシャフト５、吸気カム６、バルブリフト可変機構５０およびカム位相可変機構７０などで構成されている。
【００５３】
このバルブリフト可変機構５０は、吸気カムシャフト５の回転に伴って吸気弁４を開閉駆動するとともに、吸気弁４のバルブリフトＬｉｆｔｉｎを所定範囲（後述する最大値Ｌｉｆｔｉｎｍａｘと最小値Ｌｉｆｔｉｎｍｉｎとの間の範囲）内で無段階に変更するものであり、気筒ごとに設けられた四節リンク式のロッカアーム機構５１と、これらのロッカアーム機構５１を同時に駆動するリフトアクチュエータ６０などを備えている。
【００５４】
各ロッカアーム機構５１は、ロッカアーム５２および上下のリンク５３，５４などで構成されている。この上リンク５３の一端部は、上ピン５５を介して、ロッカアーム５２の上端部に回動自在に取り付けられており、他端部は、ロッカアームシャフト５６に回動自在に取り付けられている。このロッカアームシャフト５６は、図示しないホルダを介して、シリンダヘッド３ａに取り付けられている。
【００５５】
また、ロッカアーム５２の上ピン５５上には、ローラ５７が回動自在に設けられている。このローラ５７は、吸気カム６のカム面に当接しており、吸気カム６が回転する際、そのカム面に案内されながら吸気カム６上を転動する。これにより、ロッカアーム５２は上下方向に駆動されるとともに、上リンク５３が、ロッカアームシャフト５６を中心として回動する。
【００５６】
さらに、ロッカアーム５２の吸気弁４側の端部には、アジャストボルト５２ａが取り付けられている。このアジャストボルト５２ａは、吸気弁４の閉弁状態では、その下端面と吸気弁４のステム４ａの上端面との間に所定のバルブクリアランスを有しているとともに、吸気カム６の回転に伴ってロッカアーム５２が上下方向に移動すると、バルブスプリング４ｅの付勢力に抗しながら、ステム４ａを上下方向に駆動し、吸気弁４を開閉する。
【００５７】
また、下リンク５４の一端部は、下ピン５８を介して、ロッカアーム５２の下端部に回動自在に取り付けられており、下リンク５４の他端部には、連結ピン５９が回動自在に取り付けられている。下リンク５４は、この連結ピン５９を介して、リフトアクチュエータ６０の後述する短アーム６５に連結されている。
【００５８】
一方、リフトアクチュエータ６０は、図５に示すように、モータ６１、ナット６２、リンク６３、長アーム６４および短アーム６５などを備えている。このモータ６１は、ＥＣＵ２に接続され（図２参照）、エンジン３のヘッドカバー３ｅの外側に配置されている。モータ６１の回転軸は、雄ねじが形成されたねじ軸６１ａになっており、このねじ軸６１ａに、ナット６２が螺合している。このナット６２は、リンク６３を介して、長アーム６４に連結されている。このリンク６３の一端部は、ピン６３ａを介して、ナット６２に回動自在に取り付けられ、他端部は、ピン６３ｂを介して、長アーム６４の一端部に回動自在に取り付けられている。
【００５９】
また、長アーム６４の他端部は、回動軸６６を介して短アーム６５の一端部に取り付けられている。この回動軸６６は、断面円形に形成され、エンジン３のヘッドカバー３ｅを貫通しているとともに、これに回動自在に支持されている。この回動軸６６の回動に伴い、長アーム６４および短アーム６５はこれと一体に回動する。
【００６０】
さらに、短アーム６５の他端部には、前述した連結ピン５９が回動自在に取り付けられており、これにより、短アーム６５は、連結ピン５９を介して、下リンク５４に連結されている。
【００６１】
次に、以上のように構成されたバルブリフト可変機構５０の動作について説明する。このバルブリフト可変機構５０では、ＥＣＵ２からの後述するリフト制御入力Ｕｌｉｆｔｉｎがリフトアクチュエータ６０のモータ６１に入力されると、ねじ軸６１ａが回転し、それに伴うナット６２の移動により、長アーム６４および短アーム６５が回動軸６６を中心として回動するとともに、この短アーム６５の回動に伴って、ロッカアーム機構５１の下リンク５４が、下ピン５８を中心として回動する。すなわち、リフトアクチュエータ６０により、下リンク５４が駆動される。
【００６２】
その際、ＥＣＵ２によるフィードバック制御により、短アーム６５の回動範囲は、図５（ａ）に示す最大リフト位置と図５（ｂ）に示す最小リフト位置との間に規制され、それにより、下リンク５４の回動範囲も、図４に実線で示す最大リフト位置と、図４に２点鎖線で示す最小リフト位置との間に規制される。
【００６３】
下リンク５４が最大リフト位置にある場合、ロッカアームシャフト５６、上下のピン５５，５８および連結ピン５９によって構成される四節リンクでは、上ピン５５および下ピン５８の中心間の距離が、ロッカアームシャフト５６および連結ピン５９の中心間の距離よりも短くなるように構成されており、それにより、図６に示すように、吸気カム６が回転すると、これとローラ５７との当接点の移動量よりも、アジャストボルト５２ａの移動量の方が大きくなる。
【００６４】
一方、下リンク５４が最小リフト位置にある場合、上記四節リンクでは、上ピン５５および下ピン５８の中心間の距離が、ロッカアームシャフト５６および連結ピン５９の中心間の距離よりも長くなるように構成されており、それにより、図７に示すように、吸気カム６が回転すると、これとローラ５７との当接点の移動量よりも、アジャストボルト５２ａの移動量の方が小さくなる。
【００６５】
以上の理由により、吸気弁４は、下リンク５４が最大リフト位置にあるときには、最小リフト位置にあるときよりも大きなバルブリフトＬｉｆｔｉｎで開弁する。具体的には、吸気カム６の回転中、吸気弁４は、下リンク５４が最大リフト位置にあるときには、図８の実線で示すバルブリフト曲線に従って開弁し、バルブリフトＬｉｆｔｉｎは、その最大値Ｌｉｆｔｉｎｍａｘを示す。一方、下リンク５４が最小リフト位置にあるときには、２点鎖線で示すバルブリフト曲線に従って開弁し、バルブリフトＬｉｆｔｉｎは、その最小値Ｌｉｆｔｉｎｍｉｎを示す。なお、図８の横軸は、吸気カムシャフト５の回転角度であるカム角を表している。
【００６６】
したがって、このバルブリフト可変機構５０では、モータ６１を介して、下リンク５４を最大リフト位置と最小リフト位置との間で回動させることにより、吸気弁４のバルブリフトＬｉｆｔｉｎを、最大値Ｌｉｆｔｉｎｍａｘと最小値Ｌｉｆｔｉｎｍｉｎとの間で無段階に変化させることができる。なお、同図に示すように、吸気弁４の開弁タイミングは、バルブリフトＬｉｆｔｉｎが最小値Ｌｉｆｔｉｎｍｉｎを示すときには、最大値Ｌｉｆｔｉｎｍａｘを示すときよりも遅くなる。これは、バルブリフトＬｉｆｔｉｎが小さいほど、バルブリフト曲線の立ち上がりの勾配がより小さくなるので、バルブクリアランスの影響により、吸気弁４の開き始めがより遅くなることに起因する。
【００６７】
また、エンジン３には、回動角センサ２６が設けられおり（図２参照）、この回動角センサ２６は、回動軸６６すなわち短アーム６５の回動角を検出して、その検出信号をＥＣＵ２に出力する。ＥＣＵ２は、この回動角センサ２６の検出信号に基づき、吸気弁４のバルブリフトＬｉｆｔｉｎを算出する。
【００６８】
次に、前述したカム位相可変機構７０について説明する。このカム位相可変機構７０は、電磁式のものであり、以下に述べるように、電磁力Ｆｓｏｌにより、吸気カム６すなわち吸気カムシャフト５のクランクシャフト３ｂに対する位相（以下「カム位相」という）Ｃａｉｎを、所定範囲（後述する最遅角値Ｃａｉｎｒｔと最進角値Ｃａｉｎａｄとの間の範囲）内で無段階に変更することで、吸気弁４のバルブタイミングを無段階に変更するものである。カム位相可変機構７０は、図９〜図１１に示すように、遊星歯車装置７１および電磁ブレーキ７２などを備えている。
【００６９】
この遊星歯車装置７１は、吸気カムシャフト５およびスプロケット５ａの間で回転を伝達するものであり、リングギヤ７１ａ、３つのプラネタリピニオンギヤ７１ｂ、サンギヤ７１ｃおよびプラネタリキャリア７１ｄを備えている。このリングギヤ７１ａは、電磁ブレーキ７２の後述するアウタケーシング７３に連結されており、これと同軸かつ一体に回転する。また、サンギヤ７１ｃは、吸気カムシャフト５の先端部に同軸かつ一体に回転するように取り付けられている。
【００７０】
一方、プラネタリキャリア７１ｄは、その断面がほぼ三角形に形成され、その３つの角部にシャフト７１ｅがそれぞれ突設されている。プラネタリキャリア７１ｄは、これらのシャフト７１ｅを介してスプロケット５ａに連結されており、それにより、スプロケット５ａと同軸かつ一体に回転するように構成されている。
【００７１】
また、各プラネタリピニオンギヤ７１ｂは、プラネタリキャリア７１ｄの各シャフト７１ｅに回転自在に支持され、サンギヤ７１ｃとリングギヤ７１ａの間に配置され、これらと常に噛み合っている。
【００７２】
さらに、前述した電磁ブレーキ７２は、アウタケーシング７３、コア７４、ソレノイド７５およびリターンスプリング７６を備えている。アウタケーシング７３は、中空に形成され、その内部にコア７４が相対的に回動自在に設けられている。コア７４は、断面円形の基部７４ａと、これから放射状に延びる２つのアーム７４ｂ，７４ｂを備えている。コア７４は、その基部７４ａがプラネタリキャリア７１ｄに取り付けられており、それにより、プラネタリキャリア７１ｄと同軸かつ一体に回転する。
【００７３】
一方、アウタケーシング７３の内周面には、最遅角位置および最進角位置の一対のストッパ７３ａ，７３ｂを１組として、計２組のストッパ７３ａ，７３ｂが互いに間隔を存して設けられている。コア７４の各アーム７４ｂは、一対のストッパ７３ａ，７３ｂ間に配置されており、それにより、コア７４は、アーム７４ｂが最遅角位置ストッパ７３ａに当接し、係止される最遅角位置（図１１に実線で示す位置）と、最進角位置ストッパ７３ｂに当接し、係止される最進角位置（図１１に２点鎖線で示す位置）との間で、アウタケーシング７３に対して相対的に回動可能に構成されている。
【００７４】
また、リターンスプリング７６は、圧縮された状態で、最進角位置ストッパ７３ｂの一つと、これと対向するアーム７４ｂとの間に掛け渡されており、このリターンスプリング７６の付勢力により、アーム７４ｂは最遅角位置ストッパ７３ａ側に付勢されている。
【００７５】
一方、ソレノイド７５は、リターンスプリング７６と反対側の最進角位置ストッパ７３ｂに取り付けられており、この最進角位置ストッパ７３ｂの、アーム７４ｂと対向する側の端部に面一の状態で設けられている。このソレノイド７５は、ＥＣＵ２に電気的に接続されており、ＥＣＵ２からの位相制御入力Ｕｃａｉｎ（電圧信号）により励磁されると、その電磁力Ｆｓｏｌにより、対向するアーム７４ｂを、リターンスプリング７６の付勢力に抗しながら吸引し、最進角位置ストッパ７３ｂ側に回動させる。
【００７６】
以上のように構成されたカム位相可変機構７０の動作について説明する。このカム位相可変機構７０では、電磁ブレーキ７２のソレノイド７５が励磁されていないときには、コア７４は、リターンスプリング７６の付勢力により、そのアーム７４ｂが最遅角位置ストッパ７３ａに当接する最遅角位置に保持され、それにより、カム位相Ｃａｉｎは、最遅角値Ｃａｉｎｒｔ（図１２参照）に保持される。
【００７７】
その状態で、スプロケット５ａが図１１の矢印Ｙ１方向に回転すると、プラネタリキャリア７１ｄおよびリングギヤ７１ａが一体に回転することにより、プラネタリピニオンギヤ７１ｂが回転せず、サンギヤ７１ｃがプラネタリキャリア７１ｄおよびリングギヤ７１ａと一体に回転する。すなわち、スプロケット５ａと吸気カムシャフト５が一体に回転する。
【００７８】
また、コア７４が最遅角位置に保持されている状態で、ソレノイド７５がＥＣＵ２からの位相制御入力Ｕｃａｉｎにより励磁されると、ソレノイド７５の電磁力Ｆｓｏｌにより、コア７４のアーム７４ｂが、リターンスプリング７６の付勢力に抗しながら、最進角位置ストッパ７３ｂ側すなわち最進角位置側に吸引され、電磁力Ｆｓｏｌとリターンスプリング７６の付勢力とが釣り合う位置まで回動する。言い換えれば、アウタケーシング７３が、コア７４に対して相対的に矢印Ｙ１と逆方向に回動する。
【００７９】
これにより、リングギヤ７１ａがプラネタリキャリア７１ｄに対して相対的に図１０の矢印Ｙ２方向に回動し、それに伴い、プラネタリピニオンギヤ７１ｂが図１０の矢印Ｙ３方向に回動することで、サンギヤ７１ｃが図１０の矢印Ｙ４方向に回動する。その結果、吸気カムシャフト５が、スプロケット５ａに対して相対的にスプロケットの回転方向（すなわち図１０の矢印Ｙ２と逆方向）に回動することになり、カム位相Ｃａｉｎが進角される。
【００８０】
この場合、アウタケーシング７３の回動がリングギヤ７１ａ、プラネタリピニオンギヤ７１ｂおよびサンギヤ７１ｃを介して、吸気カムシャフト５に伝達されるので、遊星歯車装置７１の増速作用により、吸気カムシャフト５は、スプロケット５ａに対してアウタケーシング７３の回動角度が増幅された角度分、回動することになる。すなわち、吸気カム６のカム位相Ｃａｉｎの進角量は、アウタケーシング７３の回動角度を増幅した値になるように設定されている。これは、ソレノイド７５の電磁力Ｆｓｏｌが作用可能な距離には限界があるので、それを補償し、カム位相Ｃａｉｎをより広範囲で変化させるためである。
【００８１】
以上のカム位相可変機構７０の動作中、図１２に示すように、カム位相Ｃａｉｎは、ソレノイド７５への位相制御入力Ｕｃａｉｎにより、最遅角値Ｃａｉｎｒｔ（０゜）と最進角値Ｃａｉｎａｄ（例えば５５゜）の間で連続的に変化するとともに、位相制御入力Ｕｃａｉｎが増大する方向のときのカム位相Ｃａｉｎの値を示す実線の曲線と、位相制御入力Ｕｃａｉｎが減少する方向のときのカム位相Ｃａｉｎの値を示す破線の曲線とが互いに異なる、いわゆるヒシテリシス特性を示す。これは、図１３に示すように、ソレノイド７５が、位相制御入力Ｕｃａｉｎにより励磁され、電磁力Ｆｓｏｌを発生する際、起動時の電磁力Ｆｓｏｌの立ち上がりが遅いという特性を備えていることに起因する。
【００８２】
また、以上のように、カム位相Ｃａｉｎが最遅角値Ｃａｉｎｒｔと最進角値Ｃａｉｎａｄの間で変更されることにより、吸気弁４のバルブタイミングは、図１４に実線で示す最遅角タイミングと、図１４に２点鎖線で示す最進角タイミングとの間で、無段階に変更される。
【００８３】
なお、本実施形態において、以上のようなカム位相可変機構７０を、従来の油圧駆動式のカム位相可変機構に代えて用いた理由は、以下による。すなわち、従来の油圧駆動式のカム位相可変機構は、油圧ポンプなどの起動により油圧が立ち上がり、カム位相Ｃａｉｎを制御可能になるまでに時間を要するとともに、油温が極低温のときには、応答性が悪化してしまう特性を有し、むだ時間が大きく、応答性が低いという欠点を備えている。これに対して、本実施形態のカム位相可変機構７０は、油圧の立ち上がりを待つ必要がなく、油温の影響を受けることがなく、起動時からカム位相Ｃａｉｎを適切に制御できるとともに、むだ時間がより小さく、より高い応答性を確保できるという利点を備えていることによる。
【００８４】
以上のように、本実施形態の可変式吸気動弁機構４０では、バルブリフト可変機構５０により、吸気弁４のバルブリフトＬｉｆｔｉｎが無段階に変更されるとともに、カム位相可変機構７０により、カム位相Ｃａｉｎすなわち吸気弁４のバルブタイミングが無段階に変更される。また、ＥＣＵ２により、後述するように、バルブリフト可変機構５０およびカム位相可変機構７０を介して、バルブリフトＬｉｆｔｉｎおよびカム位相Ｃａｉｎがそれぞれ制御される。その際、例えば、バルブリフトＬｉｆｔｉｎが最大値Ｌｉｆｔｉｎｍａｘに制御され、かつカム位相Ｃａｉｎが最遅角値Ｃａｉｎｒｔに制御されているときでも、吸気弁４を吸気行程のＴＤＣ位置よりも前のタイミングで開弁させるように、可変式吸気動弁機構４０は構成されている。
【００８５】
一方、吸気カムシャフト５のカム位相可変機構７０と反対側の端部には、カム角センサ２７（図２参照）が設けられている。このカム角センサ２７は、例えばマグネットロータおよびＭＲＥピックアップで構成されており、吸気カムシャフト５の回転に伴い、パルス信号であるＣＡＭ信号を所定のカム角（例えば１゜）ごとにＥＣＵ２に出力する。ＥＣＵ２は、このＣＡＭ信号および前述したＣＲＫ信号に基づき、カム位相Ｃａｉｎを算出する。
【００８６】
さらに、図２に示すように、ＥＣＵ２には、アクセル開度センサ２８およびイグニッション・スイッチ（以下「ＩＧ・ＳＷ」という）２９が接続されている。このアクセル開度センサ２８は、図示しないアクセルペダルの開度（以下「アクセル開度」という）ＡＰを検出して、その検出信号をＥＣＵ２に出力する。また、ＩＧ・ＳＷ２９は、イグニッションキー（図示せず）操作によりＯＮ／ＯＦＦされるとともに、そのＯＮ／ＯＦＦ状態を表す信号をＥＣＵ２に出力する。なお、本実施形態では、アクセル開度ＡＰが負荷パラメータおよび第１負荷パラメータに相当する。
【００８７】
ＥＣＵ２は、Ｉ／Ｏインターフェース、ＣＰＵ、ＲＡＭおよびＲＯＭなどからなるマイクロコンピュータで構成されており、前述した各種のセンサ２０〜２８の検出信号およびＩＧ・ＳＷ２９のＯＮ／ＯＦＦ信号などに応じて、エンジン３の運転状態を判別するとともに、吸入空気量を制御する。具体的には、後述するように、バルブリフト可変機構５０およびカム位相可変機構７０を介して、バルブリフトＬｉｆｔｉｎおよびカム位相Ｃａｉｎをそれぞれ制御することにより、吸入空気量が制御される。
【００８８】
一般に、吸入空気量制御では、バルブリフトＬｉｆｔｉｎを制御したときの方が、カム位相Ｃａｉｎを制御したときよりも、高い応答性を確保できる。言い換えれば、カム位相Ｃａｉｎを制御したときの方が、バルブリフトＬｉｆｔｉｎを制御したときよりも、吸入空気量を微少な変化量できめ細かく制御でき、高い制御精度を確保できる。これは、以下の理由による。
【００８９】
すなわち、図１５（ａ）〜（ｃ）に示すように、バルブリフトＬｉｆｔｉｎのみを変化させると、同図のハッチング部分の面積は、バルブリフトＬｉｆｔｉｎの減少に伴って、２次元的に減少する。その際、吸入空気量は、このハッチング部の面積に比例して変化するので、バルブリフトＬｉｆｔｉｎの増減により、吸入空気量を急激に増減させることができ、高い応答性を確保できることが判る。
【００９０】
一方、図１６（ａ）〜（ｃ）に示すように、カム位相Ｃａｉｎのみを変化させると、同図のハッチング部分の面積は、カム位相Ｃａｉｎの進角に伴って、ほぼ１次元的に変化する。この傾向は、バルブリフトＬｉｆｔｉｎが極めて小さい状態では顕著となる。その際、上述したように、吸入空気量は、同図のハッチング部分の面積に比例して変化するので、カム位相Ｃａｉｎの進角・遅角により、吸入空気量を微少な変化量できめ細かく増減させることができ、高い制御精度を確保できることが判る。
【００９１】
したがって、本実施形態の吸入空気量制御では、上述した理由により、バルブリフト制御およびカム位相制御の一方を、マスタ側とし、他方をスレーブ側とするマスタ・スレーブ制御が後述するように実行される。すなわち、吸入空気量制御において、エンジン３の高負荷運転時などの高い応答性が要求されるときには、バルブリフト制御がマスタ側に、カム位相制御がスレーブ側にそれぞれ設定されるとともに、低負荷運転時などの高い制御精度が要求されるときには、バルブリフト制御がスレーブ側に、カム位相制御がマスタ側にそれぞれ設定される。
【００９２】
なお、以下の説明では、バルブリフト制御がマスタ側で、カム位相制御がスレーブ側に設定されている制御モードを、「リフトマスタモード」と表記し、バルブリフト制御がスレーブ側で、カム位相制御がマスタ側に設定されている制御モードを、「位相マスタモード」と表記する。
【００９３】
また、本実施形態では、ＥＣＵ２により、目標吸入空気量設定手段、吸入空気量検出手段、第１制御値算出手段、第２制御値算出手段、制御入力算出手段、第１制御手段、第２制御手段、制御選択手段、負荷域判定手段、第２負荷パラメータ設定手段、カム位相制御値算出手段およびバルブリフト制御値算出手段が構成されている。
【００９４】
次に、図１７を参照しながら、本実施形態の吸入空気量制御装置１について説明する。同図に示すように、吸入空気量制御装置１は、目標吸入空気量算出部９０、第１ＡＣＴＡＳＳコントローラ１００、第１スレーブ値算出部１１０、目標バルブリフト算出部１１１、バルブリフトコントローラ１２０、第２ＡＣＴＡＳＳコントローラ２００、第２スレーブ値算出部２１０、目標カム位相算出部２１１、カム位相コントローラ２２０、およびマスタ・スレーブ選択部２３０を備えており、これらはいずれも、具体的には、ＥＣＵ２により構成されている。
【００９５】
この吸入空気量制御装置１では、以下に述べるように、リフト制御入力Ｕｌｉｆｔｉｎおよび位相制御入力Ｕｃａｉｎが算出されるとともに、これらの制御入力Ｕｌｉｆｔｉｎ，Ｕｃａｉｎがそれぞれ、バルブリフト可変機構５０およびカム位相可変機構７０に入力されることにより、実吸入空気量Ｇｃｙｌが目標吸入空気量Ｇｃｙｌ＿ｃｍｄに収束するように制御される。
【００９６】
この実吸入空気量Ｇｃｙｌは、気筒内に実際に吸入されたと推定される吸入空気量であり、具体的には、図１９の式（１）により算出される。同式（１）において、ＶＢは吸気管内体積を、Ｒは所定の気体定数をそれぞれ表している。また、同式（１）において、記号（ｋ）付きの各離散データは、所定の制御周期ΔＴ１に同期してサンプリング（または算出）されたデータであることを示しており、記号ｋは各離散データのサンプリングサイクルの順番を表している。例えば、記号ｋは今回の制御タイミングでサンプリングされた値であることを、記号ｋ−１は前回の制御タイミングでサンプリングされた値であることをそれぞれ示している。この点は、以下の離散データにおいても同様である。なお、以下の説明では、各離散データにおける記号（ｋ）などを適宜、省略する。
【００９７】
また、制御周期ΔＴ１は、吸入空気量の動特性を後述するプラントモデル［式（８），（２２）］に適切に反映することができるような所定の値（例えば１０ｍｓｅｃ）に設定されている。さらに、本実施形態では、制御周期ΔＴ１は、第１および第２制御値算出手段の算出周期に相当する。
【００９８】
この吸入空気量制御装置１では、まず、目標吸入空気量算出部９０（目標吸入空気量設定手段）により、アクセル開度ＡＰ、エンジン回転数ＮＥおよびエンジン水温ＴＷなどに応じて、目標吸入空気量Ｇｃｙｌ＿ｃｍｄが算出される。
【００９９】
次に、第１ＡＣＴＡＳＳコントローラ１００（第１制御値算出手段、第１制御手段）において、後述する制御アルゴリズムにより、目標吸入空気量Ｇｃｙｌ＿ｃｍｄに応じて、目標バルブリフトのマスタ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｍｓが算出されるとともに、第１スレーブ値算出部１１０（第２制御値算出手段、第１制御手段）において、後述するテーブル検索により、目標カム位相Ｃａｉｎ＿ｃｍｄに応じて、目標バルブリフトのスレーブ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｓｌが算出される。
【０１００】
さらに、目標バルブリフト算出部１１１により、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄが、そのマスタ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｍｓとスレーブ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｓｌの和として算出される。そして、バルブリフトコントローラ１２０（制御入力算出手段）において、後述する制御アルゴリズムにより、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄおよびバルブリフトＬｉｆｔｉｎに応じて、バルブリフト可変機構５０への制御入力であるリフト制御入力Ｕｌｉｆｔｉｎが算出される。
【０１０１】
一方、第２ＡＣＴＡＳＳコントローラ２００（第１制御値算出手段、第２制御手段）において、後述する制御アルゴリズムにより、目標吸入空気量Ｇｃｙｌ＿ｃｍｄに応じて、目標カム位相のマスタ値Ｃａｉｎ＿ｃｍｄ＿ｍｓが算出されるとともに、第２スレーブ値算出部２１０（第２制御値算出手段、第２制御手段）において、後述するテーブル検索により、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄに応じて、目標カム位相のスレーブ値Ｃａｉｎ＿ｃｍｄ＿ｓｌが算出される。
【０１０２】
さらに、目標カム位相算出部２１１により、目標カム位相Ｃａｉｎ＿ｃｍｄが、そのマスタ値Ｃａｉｎ＿ｃｍｄ＿ｍｓとスレーブ値Ｃａｉｎ＿ｃｍｄ＿ｓｌの和として算出される。そして、カム位相コントローラ２２０（制御入力算出手段）において、後述する制御アルゴリズムにより、目標カム位相Ｃａｉｎ＿ｃｍｄおよびカム位相Ｃａｉｎに応じて、カム位相可変機構７０への制御入力である位相制御入力Ｕｃａｉｎが算出される。
【０１０３】
また、マスタ・スレーブ選択部２３０（制御選択手段）により、後述するように、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄまたは目標カム位相Ｃａｉｎ＿ｃｍｄに基づき、第１ＡＣＴＡＳＳコントローラ１００における目標バルブリフトのマスタ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｍｓの算出アルゴリズムが選択されるとともに、第２ＡＣＴＡＳＳコントローラ２００における目標カム位相のマスタ値Ｃａｉｎ＿ｃｍｄ＿ｍｓの算出アルゴリズムが選択される。
【０１０４】
なお、本実施形態では、目標カム位相Ｃａｉｎ＿ｃｍｄが、第１制御値、第２制御値、第２負荷パラメータ、カム位相制御の状態を表すパラメータおよびカム位相制御値に相当する。また、目標カム位相のマスタ値Ｃａｉｎ＿ｃｍｄ＿ｍｓが、フィードバック制御値およびカム位相フィードバック制御値に相当し、目標カム位相のスレーブ値Ｃａｉｎ＿ｃｍｄ＿ｓｌが、第２制御値およびカム位相設定値に相当する。
【０１０５】
さらに、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄが、第１制御値、第２制御値、第２負荷パラメータ、バルブリフト制御の状態を表すパラメータおよびバルブリフト制御値に相当する。また、目標バルブリフトのマスタ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｍｓが、フィードバック制御値およびバルブリフトフィードバック制御値に相当し、目標バルブリフトのスレーブ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｓｌが、第２制御値およびバルブリフト設定値に相当する。
【０１０６】
次に、図１８を参照しながら、前述した第１ＡＣＴＡＳＳコントローラ１００について説明する。この第１ＡＣＴＡＳＳコントローラ１００は、目標値フィルタ型２自由度スライディングモード制御アルゴリズム［図１９に示す式（２）〜（７）］により、目標バルブリフトのマスタ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｍｓを算出するものであり、目標値フィルタ１０１、スライディングモードコントローラ１０２および適応外乱オブザーバ１０８を備えている。
【０１０７】
この目標値フィルタ１０１では、図１９の式（２）に示す一次遅れフィルタアルゴリズムにより、目標吸入空気量のフィルタ値Ｇｃｙｌ＿ｃｍｄ＿ｆが算出される。同式（２）において、ＰＯＬＥ＿ｆは、目標値フィルタ設定パラメータであり、−１＜ＰＯＬＥ＿ｆ＜０の関係が成立する値に設定される。
【０１０８】
次に、スライディングモードコントローラ１０２について説明する。このスライディングモードコントローラ１０２は、以下に述べるスライディングモード制御アルゴリズムにより、目標バルブリフトのマスタ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｍｓを算出するものであり、等価制御入力算出部１０３、追従誤差算出部１０４、切換関数算出部１０５、到達則入力算出部１０６およびマスタ値算出部１０７を備えている。
【０１０９】
まず、等価制御入力算出部１０３では、図１９の式（４）により、等価制御入力Ｕｅｑが算出される。同式（４）において、ＰＯＬＥは、後述する切換関数設定パラメータであり、ａ１，ａ２，ｂ１，ｂ２は、後述するモデルのモデルパラメータであり、ｃ１は、適応外乱オブザーバ１０８により、後述するように算出される外乱推定値を表している。
【０１１０】
また、追従誤差算出部１０４では、図１９の式（７）により、追従誤差Ｅｇｃが算出され、切換関数算出部１０５では、図１９の式（６）により、切換関数σが算出される。同式（６）において、切換関数設定パラメータＰＯＬＥは、−１＜ＰＯＬＥ＜０の関係が成立する値に設定される。
【０１１１】
さらに、到達則入力算出部１０６では、図１９の式（５）により、到達則入力Ｕｒｃｈが算出される。同式（５）において、Ｋｒｃｈは、到達則ゲインであり、所定値に設定される。そして、マスタ値算出部１０７において、式（３）により、目標バルブリフトのマスタ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｍｓが算出される。
【０１１２】
以上のように、スライディングモードコントローラ１０２では、図１９の式（３）〜（７）のスライディングモード制御アルゴリズムにより、目標バルブリフトのマスタ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｍｓが算出される。なお、これらの式（３）〜（７）は、以下のように導出される。
【０１１３】
まず、プラント１１２（図１８参照）を、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄを入力とし、実吸入空気量Ｇｃｙｌを出力とする系として定義するとともに、離散時間系モデルとしてモデル化すると、図１９に示す式（８）が得られる。同式（８）において、ａ１，ａ２，ｂ１，ｂ２は、モデルパラメータを示しており、これらは所定値に設定されている。
【０１１４】
同式（８）は、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄと実吸入空気量Ｇｃｙｌとの間の動特性の関係を表しているが、両者の動特性の関係と、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄのフィードバック成分であるマスタ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｍｓと、実吸入空気量Ｇｃｙｌとの動特性の関係は、実質的に同じと考えられるので、同式（８）の目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄを、目標バルブリフトのマスタ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｍｓに置き換えると、図１９の式（９）のモデルが導出される。さらに、このモデルに基づき、実吸入空気量Ｇｃｙｌが目標吸入空気量のフィルタ値Ｇｃｙｌ＿ｃｍｄ＿ｆに収束するように、スライディングモード制御アルゴリズムを適用すると、前述した図１９の式（３）〜（７）が導出される。
【０１１５】
一方、適応外乱オブザーバ１０８では、以下に述べるように、外乱推定値ｃ１が算出されるとともに、その算出アルゴリズムが、前述したマスタ・スレーブ選択部２３０により、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄまたは目標カム位相Ｃａｉｎ＿ｃｍｄに基づいて選択される。
【０１１６】
すなわち、前述したように、吸入空気量制御において、リフトマスタモードのときには、外乱推定値ｃ１が、図２０の式（１０）〜（１４）の同定アルゴリズムにより算出される。同式（１０）において、Ｐｄｏｖは所定の同定ゲインを、ｅ＿ｄｏｖは同定誤差をそれぞれ表している。この同定誤差ｅ＿ｄｏｖは、式（１１）により算出される。また、同式（１１）のＧｃｙｌ＿ｈａｔは、実吸入空気量Ｇｃｙｌの同定値であり、式（１２）により算出される。同式（１２）のθは、その転置行列が式（１３）のように表されるベクトルであり、ζは、その転置行列が式（１４）のように表されるベクトルである。
【０１１７】
一方、位相マスタモードのときには、図２０の式（１５）により、外乱推定値ｃ１が算出される。同式（１５）を参照すると明らかなように、この式（１５）で算出された外乱推定値ｃ１を、前述した式（４）に適用すると、Ｕｅｑ＝−Ｕｒｃｈとなり、その結果、バルブリフト制御でのフィードバック成分である目標バルブリフトのマスタ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｍｓが値０となる。すなわち、位相マスタモードのときには、Ｌｉｆｔｉｎ＿ｃｍｄ＝Ｌｉｆｔｉｎ＿ｃｍｄ＿ｓｌとなる。
【０１１８】
以上のように、第１ＡＣＴＡＳＳコントローラ１００では、目標バルブリフトのマスタ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｍｓが、吸入空気量の制御モードがリフトマスタモードのときには、リフトマスタモード用アルゴリズム［式（２）〜（７），（１０）〜（１４）］で算出され、位相マスタモードでは、位相マスタモード用アルゴリズム［式（２）〜（７），（１５）］で算出される。
【０１１９】
このように、目標バルブリフトのマスタ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｍｓがリフトマスタモード用アルゴリズムで算出されたときには、上述したフィルタ型２自由度スライディングモード制御アルゴリズムにより、実吸入空気量Ｇｃｙｌの目標吸入空気量Ｇｃｙｌ＿ｃｍｄへの追従性、および外乱抑制能力をいずれも高いレベルで確保できる。特に、目標値フィルタ設定パラメータＰＯＬＥ＿ｆを、−１＜ＰＯＬＥ＿ｆ＜０の範囲内で任意に設定することにより、追従性を自在に指定することができるとともに、切換関数設定パラメータＰＯＬＥを、−１＜ＰＯＬＥ＜０の範囲内で任意に設定することにより、外乱抑制能力を自在に指定することができる。
【０１２０】
これを図２１を参照しながら具体的に説明すると、同図の実吸入空気量Ｇｃｙｌを表す曲線において、実線で示す曲線は、目標値フィルタ設定パラメータＰＯＬＥ＿ｆおよび切換関数設定パラメータＰＯＬＥをいずれも値０に近い値に設定した場合のものを示しており、２点鎖線で示す曲線は、目標値フィルタ設定パラメータＰＯＬＥ＿ｆおよび切換関数設定パラメータＰＯＬＥをいずれも値−１に近い値に設定した場合のものを示している。
【０１２１】
同図において、目標吸入空気量Ｇｃｙｌ＿ｃｍｄが値０から変化した以降（時刻ｔ１以降）における２つの曲線を比較すると、目標値フィルタ設定パラメータＰＯＬＥ＿ｆを値０に近い値に設定したときの方が、値−１に近い値に設定したときよりも、実吸入空気量Ｇｃｙｌの目標吸入空気量Ｇｃｙｌ＿ｃｍｄへの追従性が向上することが判る。また、外乱が加えられた以降（時刻ｔ２以降）の２つの曲線を比較すると、切換関数設定パラメータＰＯＬＥを値０に近い値に設定したときの方が、値−１に近い値に設定したときよりも、外乱抑制能力が向上することが判る。
【０１２２】
以上のように、目標値フィルタ設定パラメータＰＯＬＥ＿ｆを前述した範囲内で値０に近い値に設定することにより、追従性を向上させることができるとともに、切換関数設定パラメータＰＯＬＥを、前述した範囲内で値０に近い値に設定することにより、外乱抑制能力を向上させることができる。すなわち、エンジン３の要求トルクが急変した際でも、吸入空気量制御でのオーバーシュートおよび振動的な挙動を回避できる。さらに、２自由度スライディングモード制御アルゴリズムを用いているので、目標値フィルタ設定パラメータＰＯＬＥ＿ｆおよび切換関数設定パラメータＰＯＬＥを互いに別個に設定できる。それにより、例えば、オーバーシュートを回避すべく、実吸入空気量Ｇｃｙｌの目標吸入空気量Ｇｃｙｌ＿ｃｍｄへの追従性（収束速度）を緩やかに設定した場合でも、高い外乱抑制能力を確保することができる。
【０１２３】
次に、図２２を参照しながら、前述した第２ＡＣＴＡＳＳコントローラ２００について説明する。この第２ＡＣＴＡＳＳコントローラ２００は、前述した第１ＡＣＴＡＳＳコントローラ１００と同様に、目標値フィルタ型２自由度スライディングモード制御アルゴリズム［図２３に示す式（１６）〜（２１）］により、目標カム位相のマスタ値Ｃａｉｎ＿ｃｍｄ＿ｍｓを算出するものであり、目標値フィルタ２０１、スライディングモードコントローラ２０２および適応外乱オブザーバ２０８を備えている。
【０１２４】
この目標値フィルタ２０１では、図２３の式（１６）により、すなわち前述した式（２）と同じ１次遅れフィルタアルゴリズムにより、目標吸入空気量のフィルタ値Ｇｃｙｌ＿ｃｍｄ＿ｆが算出される。
【０１２５】
次に、スライディングモードコントローラ２０２について説明する。このスライディングモードコントローラ２０２は、前述したスライディングモードコントローラ１０２と同様に、以下に述べるスライディングモード制御アルゴリズムにより、目標カム位相のマスタ値Ｃａｉｎ＿ｃｍｄ＿ｍｓを算出するものであり、等価制御入力算出部２０３、追従誤差算出部２０４、切換関数算出部２０５、到達則入力算出部２０６およびマスタ値算出部２０７を備えている。
【０１２６】
まず、等価制御入力算出部２０３では、図２３の式（１８）により、等価制御入力Ｕｅｑ’が算出される。同式（１８）において、ＰＯＬＥ’は、後述する切換関数設定パラメータであり、ａ１’，ａ２’，ｂ１’，ｂ２’は、後述するモデルのモデルパラメータであり、ｃ１’は、適応外乱オブザーバ２０８により、後述するように算出される外乱推定値を表している。
【０１２７】
また、追従誤差算出部２０４では、図２３の式（２１）すなわち前述した式（７）と同じ式により、追従誤差Ｅｇｃが算出され、切換関数算出部２０５では、図２３の式（２０）により、切換関数σ’が算出される。同式（２０）において、切換関数設定パラメータＰＯＬＥ’は、−１＜ＰＯＬＥ’＜０の関係が成立する値に設定される。
【０１２８】
さらに、到達則入力算出部２０６では、図２３の式（１９）により、到達則入力Ｕｒｃｈ’が算出される。同式（１９）において、Ｋｒｃｈ’は、到達則ゲインを表しており、所定値に設定される。そして、マスタ値算出部２０７において、式（１７）により、目標カム位相のマスタ値Ｃａｉｎ＿ｃｍｄ＿ｍｓが算出される。
【０１２９】
以上のように、スライディングモードコントローラ２０２では、図２３の式（１７）〜（２１）のスライディングモード制御アルゴリズムにより、目標カム位相のマスタ値Ｃａｉｎ＿ｃｍｄ＿ｍｓが算出される。これらの式（１７）〜（２１）は、以下のように導出される。
【０１３０】
まず、プラント２１２（図２２参照）を、目標カム位相Ｃａｉｎ＿ｃｍｄを入力とし、実吸入空気量Ｇｃｙｌを出力とする系として定義するとともに、離散時間系モデルとしてモデル化すると、図２３に示す式（２２）が得られる。同式（２２）において、ａ１’，ａ２’，ｂ１’，ｂ２’は、モデルパラメータを示しており、これらは所定値に設定されている。
【０１３１】
同式（２２）の目標カム位相Ｃａｉｎ＿ｃｍｄを、目標カム位相のマスタ値Ｃａｉｎ＿ｃｍｄ＿ｍｓに置き換えると、図２３の式（２３）のモデルが導出される。さらに、このモデルに基づき、実吸入空気量Ｇｃｙｌが目標吸入空気量のフィルタ値Ｇｃｙｌ＿ｃｍｄ＿ｆに収束するように、スライディングモード制御アルゴリズムを適用すると、前述した式（１７）〜（２１）が導出される。
【０１３２】
一方、適応外乱オブザーバ２０８では、以下に述べるように、外乱推定値ｃ１’が算出されるとともに、その算出アルゴリズムが、前述したマスタ・スレーブ選択部２３０により、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄまたは目標カム位相Ｃａｉｎ＿ｃｍｄに基づいて選択される。
【０１３３】
すなわち、吸入空気量制御において、位相マスタモードのときには、外乱推定値ｃ１’が、図２４の式（２４）〜（２８）の同定アルゴリズムにより算出される。同式（２５）において、Ｐｄｏｖ’は所定の同定ゲインを、ｅ＿ｄｏｖ’は、同定誤差をそれぞれ表している。この同定誤差ｅ＿ｄｏｖ’は、式（２５）により算出される。また、同式（２５）のＧｃｙｌ＿ｈａｔ’は、実吸入空気量Ｇｃｙｌの同定値であり、式（２６）により算出される。同式（２６）のθ’は、その転置行列が式（２７）のように表されるベクトルであり、ζ’は、その転置行列が式（２８）のように表されるベクトルである。
【０１３４】
一方、リフトマスタモードのときには、図２４の式（２９）により、外乱推定値ｃ１’が算出される。同式（２９）を参照すると明らかなように、この式（２９）で算出された外乱推定値ｃ１’を、前述した式（１８）に適用すると、Ｕｅｑ’＝−Ｕｒｃｈ’となり、その結果、カム位相制御でのフィードバック成分である目標カム位相のマスタ値Ｃａｉｎ＿ｃｍｄ＿ｍｓが値０となる。すなわち、リフトマスタモードのときには、Ｃａｉｎ＿ｃｍｄ＝Ｃａｉｎ＿ｃｍｄ＿ｓｌとなる。
【０１３５】
以上のように、第２ＡＣＴＡＳＳコントローラ２００では、目標カム位相のマスタ値Ｃａｉｎ＿ｃｍｄ＿ｍｓが、吸入空気量の制御モードが位相マスタモードのときには、位相マスタモード用アルゴリズム［式（１６）〜（２１），（２４）〜（２８）］で算出され、リフトマスタモードでは、リフトマスタモード用アルゴリズム［式（１６）〜（２１），（２９）］で算出される。
【０１３６】
このように、目標カム位相のマスタ値Ｃａｉｎ＿ｃｍｄ＿ｍｓが、位相マスタモード用アルゴリズムで算出されたときには、上述したフィルタ型２自由度スライディングモード制御アルゴリズムにより、実吸入空気量Ｇｃｙｌの目標吸入空気量Ｇｃｙｌ＿ｃｍｄへの追従性、および外乱抑制能力をいずれも高いレベルで確保できる。特に、前述したように、目標値フィルタ設定パラメータＰＯＬＥ＿ｆを、−１＜ＰＯＬＥ＿ｆ＜０の範囲内で任意に設定することにより、追従性を自在に指定することができるとともに、切換関数設定パラメータＰＯＬＥ’を、−１＜ＰＯＬＥ’＜０の範囲内で任意に設定することにより、外乱抑制能力を自在に指定することができる。
【０１３７】
次に、前述したバルブリフトコントローラ１２０について説明する。このバルブリフトコントローラ１２０は、以下に述べる制御アルゴリズムにより、バルブリフトＬｉｆｔｉｎを目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄに収束させるように、リフト制御入力Ｕｌｉｆｔｉｎを算出するものであり、図２５に示すように、状態予測器１２１、オンボード同定器１２２および２自由度スライディングモードコントローラ１２３で構成されている。
【０１３８】
この状態予測器１２１では、以下に述べる予測アルゴリズムにより、バルブリフトＬｉｆｔｉｎの予測値である予測バルブリフトＰｒｅ＿Ｌｉｆｔｉｎが算出される。
【０１３９】
具体的には、プラントモデルとして、図２６に示す式（３０）を用いる。同式（３０）において、ｄｘはプラントの特性によって決まるむだ時間を表している。また、ａ１''，ａ２''，ｂ１''，ｂ２''はモデルパラメータを表しており、オンボード同定器１２２により、後述するように逐次同定される。さらに、記号ｎは離散化した時間を表し、記号（ｎ）の付いた各離散データは、前述した記号（ｋ）付きの離散データよりも短い所定の制御周期ΔＴ２（例えば２ｍｓｅｃ）に同期してサンプリングされたデータであることを示している。この点は、以下の他の離散データにおいても同様であり、また、以下の説明では、離散データであることを表す記号（ｎ）を適宜、省略する。なお、本実施形態では、制御周期ΔＴ２は、制御入力算出手段の算出周期に相当する。
【０１４０】
次に、マトリクスＡ、Ｂを、モデルパラメータａ１''，ａ２''，ｂ１''，ｂ２''を用いて図２６に示す式（３１），（３２）のように定義するとともに、上記式（３０）を変形することにより、図２６に示す式（３３）が得られる。
【０１４１】
この式（３３）を用いることで、予測バルブリフトＰｒｅ＿Ｌｉｆｔｉｎを算出することは可能であるけれども、モデル次数の不足や制御対象の非線形特性などに起因して、予測バルブリフトＰｒｅ＿Ｌｉｆｔｉｎに定常偏差およびモデル化誤差が生じる可能性がある。
【０１４２】
これを回避するために、本実施形態の状態予測器１２１では、式（３３）に代えて、図２６に示す式（３４）により、予測バルブリフトＰｒｅ＿Ｌｉｆｔｉｎを算出する。この式（３４）は、式（３３）の右辺に、定常偏差およびモデル化誤差を補償するための補償値γ１を加入するとともに、左辺のＬｉｆｔｉｎをＰｒｅ＿Ｌｉｆｔｉｎに置き換えたものである。
【０１４３】
次に、オンボード同定器１２２について説明する。このオンボード同定器１２２は、以下に述べる逐次型同定アルゴリズムにより、前述した式（３４）におけるモデルパラメータの行列成分α１，α２，βｊおよび補償値γ１のベクトルθｘを同定するものである。
【０１４４】
具体的には、図２７に示す式（３５）〜（４０）により、ベクトルθｘを算出する。このベクトルθｘは、その転置行列が同図の式（３９）のように定義される。また、式（３５）において、ＫＰはゲイン係数のベクトルを表しており、このゲイン係数のベクトルＫＰは、式（３６）により算出される。この式（３６）のＰは、式（３７）で定義されるｄｘ＋４次の正方行列であり、ζｘは、その転置行列が式（４０）のように定義されるベクトルである。さらに、式（３５）の同定誤差ｉｄｅは、式（３８）により算出される。
【０１４５】
以上のような同定アルゴリズムでは、式（３７）の重みパラメータλ１、λ２の設定により、以下の４つの同定アルゴリズムのうちの１つが選択される。
すなわち、
λ１＝１，λ２＝０  ；固定ゲインアルゴリズム
λ１＝１，λ２＝１  ；最小２乗法アルゴリズム 
λ１＝１，λ２＝λ  ；漸減ゲインアルゴリズム
λ１＝λ，λ２＝１  ；重み付き最小２乗法アルゴリズム
ただし、λは、０＜λ＜１に設定される所定値。
なお、本実施形態では、同定精度およびベクトルθｘの最適値への収束速度をいずれも最適に確保するために、重み付き最小２乗法アルゴリズムが採用されている。
【０１４６】
次に、２自由度スライディングモードコントローラ（以下「ＴＤＦＳＬＤコントローラ」という）１２３について説明する。このＴＤＦＳＬＤコントローラ１２３では、以下に述べるように、目標値フィルタ型２自由度スライディングモード制御アルゴリズムにより、バルブリフトＬｉｆｔｉｎが目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄに収束するように、リフト制御入力Ｕｌｉｆｔｉｎが算出される。
【０１４７】
具体的には、前述した式（３０）のプラントモデルに基づき、前記第１ＡＣＴＡＳＳコントローラ１００と同様に、目標値フィルタ型２自由度スライディングモード制御アルゴリズムを適用すると、図２８に示す式（４１）〜（４６）が導出される。同図の式（４１）において、Ｌｉｆｔｉｎ＿ｃｍｄ＿ｆは、目標バルブリフトのフィルタ値を表しており、ＰＯＬＥ＿ｆ''は、目標値フィルタ設定パラメータであり、−１＜ＰＯＬＥ＿ｆ''＜０の関係が成立する値に設定される。
【０１４８】
また、等価制御入力Ｕｅｑ''は、式（４３）により算出される。同式（４３）において、ＰＯＬＥ''は、切換関数設定パラメータであり、−１＜ＰＯＬＥ''＜０の関係が成立する値に設定される。
【０１４９】
さらに、到達則入力Ｕｒｃｈ''は、式（４４）により算出される。同式（４４）において、Ｋｒｃｈ''は、所定の到達則ゲインであり、Ｐｒｅ＿σ''は、式（４５）により算出される予測切換関数である。また、同式（４５）のＰｒｅ＿Ｅ＿ｌｆは、追従誤差であり、式（４６）により算出される。
【０１５０】
以上のように、このバルブリフトコントローラ１２０では、状態予測器１２１において、補償値γ１を加えた状態予測アルゴリズムにより、予測バルブリフトＰｒｅ＿Ｌｉｆｔｉｎが算出されるとともに、この補償値γ１がオンボード同定器１２２により逐次同定されるので、前述した定常偏差およびモデル化誤差を補償しながら、予測バルブリフトＰｒｅ＿Ｌｉｆｔｉｎを精度よく算出することができる。
【０１５１】
また、ＴＤＦＳＬＤコントローラ１２３においては、バルブリフトＬｉｆｔｉｎを目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄに収束させることができると同時に、前述したように、その収束挙動および収束速度を、切換関数設定パラメータＰＯＬＥ''の設定により任意に指定することができる。さらに、補償値γ１が等価制御入力Ｕｅｑ''の算出式（４３）に含まれていることにより、外乱抑制能力も向上させることができる。
【０１５２】
なお、第１ＡＣＴＡＳＳコントローラ１００およびバルブリフトコントローラ１２０における切換関数設定パラメータＰＯＬＥ，ＰＯＬＥ''は、−１＜ＰＯＬＥ＜ＰＯＬＥ''＜０の関係が成立する値に設定される。これにより、バルブリフトコントローラ１２０による制御の速応性を、第１ＡＣＴＡＳＳコントローラ１００による制御よりも高めることができ、吸入空気量制御の安定性すなわち制御性を向上させることができる。
【０１５３】
さらに、バルブリフトコントローラ１２０では、前述した制御周期ΔＴ２に同期してサンプリングされたデータを用いることにより、リフト制御入力Ｕｌｉｆｔｉｎが算出される。すなわち、リフト制御入力Ｕｌｉｆｔｉｎは、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄの算出周期（すなわち制御周期ΔＴ１）よりも短い周期ΔＴ２で算出される。これにより、バルブリフトコントローラ１２０の制御による、バルブリフトＬｉｆｔｉｎの目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄへの収束速度を、第１ＡＣＴＡＳＳコントローラ１００の制御による、実吸入空気量Ｇｃｙｌの目標吸入空気量Ｇｃｙｌ＿ｃｍｄへの収束速度よりも早めることができ、その結果、吸入空気量制御の安定性すなわち制御性をさらに向上させることができる。
【０１５４】
次に、前述したカム位相コントローラ２２０について説明する。このカム位相コントローラ２２０は、前述したバルブリフトコントローラ１２０と同様に、以下に述べる制御アルゴリズムにより、カム位相Ｃａｉｎを目標カム位相Ｃａｉｎ＿ｃｍｄに収束させるように、位相制御入力Ｕｃａｉｎを算出するものであり、図２９に示すように、状態予測器２２１、オンボード同定器２２２および２自由度スライディングモードコントローラ２２３で構成されている。
【０１５５】
この状態予測器２２１では、前述した状態予測器１２１と同様の予測アルゴリズム、すなわち図３０の式（５１）により、カム位相Ｃａｉｎの予測値である予測カム位相Ｐｒｅ＿Ｃａｉｎが算出される。この式（５１）は、以下のように導出される。すなわち、プラントモデルとして、図３０に示す式（４７）を用いる。同式（４７）において、ｄｙはプラントの特性によって決まるむだ時間を表している。また、ａ１*，ａ２*，ｂ１*，ｂ２*はモデルパラメータを表しており、オンボード同定器２２２により、後述するように逐次同定される。
【０１５６】
次に、マトリクスＡ、Ｂを、モデルパラメータａ１*，ａ２*，ｂ１*，ｂ２*を用いて図３０に示す式（４８），（４９）のように定義するとともに、上記式（４７）を変形することにより、図３０に示す式（５０）が得られる。さらに、この式（５０）の右辺に、前述したように、定常偏差およびモデル化誤差を補償するための補償値γ１*を加入するとともに、左辺のＣａｉｎをＰｒｅ＿Ｃａｉｎに置き換えることにより、図３０の式（５１）が導出される。
【０１５７】
次に、オンボード同定器２２２について説明する。このオンボード同定器２２２では、前述したオンボード同定器１２２と同様の逐次型同定アルゴリズムにより、上記式（５１）におけるモデルパラメータの行列成分α１*，α２*，βｊ*および補償値γ１*のベクトルθ*が同定される。
【０１５８】
具体的には、図３１に示す式（５２）〜（５７）により、ベクトルθ*を算出する。このベクトルθ*は、その転置行列が同図の式（５６）のように定義される。また、式（５２）において、ＫＰ*はゲイン係数のベクトルを表しており、このゲイン係数のベクトルＫＰ*は、式（５３）により算出される。この式（５３）のＰ*は、式（５４）で定義されるｄｙ＋４次の正方行列であり、ζ*は、その転置行列が式（５７）のように定義されるベクトルである。さらに、式（５２）の同定誤差ｉｄｅ*は、式（５５）により算出される。
【０１５９】
以上のような同定アルゴリズムでは、前述したように、式（５４）の重みパラメータλ１*、λ２*の設定により、固定ゲインアルゴリズム、最小２乗法アルゴリズム、漸減ゲインアルゴリズムおよび重み付き最小２乗法アルゴリズムのいずれかを選択可能であり、本実施形態では、前述した理由により、重み付き最小２乗法アルゴリズムが採用される。
【０１６０】
次に、２自由度スライディングモードコントローラ（以下「ＴＤＦＳＬＤコントローラ」という）２２３について説明する。このＴＤＦＳＬＤコントローラ２２３では、以下に述べるように、目標値フィルタ型２自由度スライディングモード制御アルゴリズムにより、カム位相Ｃａｉｎが目標カム位相Ｃａｉｎ＿ｃｍｄに収束するように、位相制御入力Ｕｃａｉｎが算出される。
【０１６１】
具体的には、前述した式（４７）のプラントモデルに基づき、前記ＴＤＦＳＬＤコントローラ１２３と同様の目標値フィルタ型２自由度スライディングモード制御アルゴリズムを適用すると、図３２に示す式（５８）〜（６３）が導出される。同図の式（５８）において、Ｃａｉｎ＿ｃｍｄ＿ｆは、目標カム位相のフィルタ値を表しており、ＰＯＬＥ＿ｆ*は、目標値フィルタ設定パラメータであり、−１＜ＰＯＬＥ＿ｆ*＜０の関係が成立する値に設定される。
【０１６２】
また、等価制御入力Ｕｅｑ*は、式（６０）により算出される。同式（６０）において、ＰＯＬＥ*は、切換関数設定パラメータであり、−１＜ＰＯＬＥ*＜０の関係が成立する値に設定される。
【０１６３】
さらに、到達則入力Ｕｒｃｈ*は、式（６１）により算出される。同式（６１）において、Ｋｒｃｈ*は、所定の到達則ゲインであり、Ｐｒｅ＿σ*は、式（６２）により算出される予測切換関数である。また、同式（６２）のＰｒｅ＿Ｅ＿ｃａ*は、追従誤差であり、式（６３）により算出される。
【０１６４】
以上のように、このカム位相コントローラ２２０では、状態予測器２２１において、補償値γ１*を加えた状態予測アルゴリズムにより、予測カム位相Ｐｒｅ＿Ｃａｉｎが算出されるとともに、この補償値γ１*がオンボード同定器２２２により逐次同定されるので、前述した定常偏差およびモデル化誤差を補償しながら、予測カム位相Ｐｒｅ＿Ｃａｉｎを精度よく算出することができる。
【０１６５】
また、ＴＤＦＳＬＤコントローラ２２３においては、カム位相Ｃａｉｎを目標カム位相Ｃａｉｎ＿ｃｍｄに収束させることができると同時に、前述したように、その収束挙動および収束速度を、切換関数設定パラメータＰＯＬＥ*の設定により任意に指定することができる。さらに、補償値γ１*が等価制御入力Ｕｅｑ*の算出式（６０）に含まれていることにより、外乱抑制能力も向上させることができる。
【０１６６】
なお、第２ＡＣＴＡＳＳコントローラ２００およびカム位相コントローラ２２０における切換関数設定パラメータＰＯＬＥ’，ＰＯＬＥ*は、−１＜ＰＯＬＥ’＜ＰＯＬＥ*＜０の関係が成立する値に設定される。これにより、カム位相コントローラ２２０による制御の速応性を、第２ＡＣＴＡＳＳコントローラ２００による制御よりも高めることができ、吸入空気量制御の安定性すなわち制御性を向上させることができる。
【０１６７】
さらに、カム位相コントローラ２２０では、前述した制御周期ΔＴ２に同期してサンプリングされたデータを用いることにより、位相制御入力Ｕｃａｉｎが算出される。すなわち、位相制御入力Ｕｃａｉｎが、目標カム位相Ｃａｉｎ＿ｃｍｄの算出周期（すなわち制御周期ΔＴ１）よりも短い周期ΔＴ２で算出される。これにより、カム位相コントローラ２２０の制御による、カム位相Ｃａｉｎの目標カム位相Ｃａｉｎ＿ｃｍｄへの収束速度を、第２ＡＣＴＡＳＳコントローラ２００の制御による、実吸入空気量Ｇｃｙｌの目標吸入空気量Ｇｃｙｌ＿ｃｍｄへの収束速度よりも早めることができ、その結果、吸入空気量制御の安定性すなわち制御性をさらに向上させることができる。
【０１６８】
以下、図３３を参照しながら、ＥＣＵ２により実行されるエンジン制御のうちの主要な制御処理について説明する。同図（ａ）に示すように、ステップ１（図では「Ｓ１」と略す。以下同じ）では、吸入空気量制御処理が、前述した制御周期ΔＴ１で実行される。この処理では、後述するように、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄおよび目標カム位相Ｃａｉｎ＿ｃｍｄなどが算出される。
【０１６９】
また、同図（ｂ）に示すように、ステップ２，３では、リフト制御入力Ｕｌｉｆｔｉｎおよび位相制御入力Ｕｃａｉｎが後述するように算出される。これらの算出処理は、前述した理由により、制御周期ΔＴ１よりも短い制御周期ΔＴ２（＜ΔＴ１）で実行される。
【０１７０】
さらに、同図（ｃ）に示すように、ステップ４，５では、燃料制御処理および点火時期制御処理がＴＤＣ信号の発生タイミングに同期してそれぞれ実行される。この燃料制御処理では、その詳細な説明は省略するが、エンジン３の運転状態に応じて、燃料噴射弁１２の燃料噴射量ＴＯＵＴが算出される。また、点火時期制御処理では、後述するように、点火時期Ｉｇｌｏｇが算出される。
【０１７１】
次に、図３４を参照しながら、前述した吸入空気量制御処理について説明する。同図に示すように、このプログラムでは、まず、ステップ１０で、吸気動弁機構故障フラグＦ＿ＶＬＶＮＧが「１」であるか否かを判別する。この吸気動弁機構故障フラグＦ＿ＶＬＶＮＧは、可変式吸気動弁機構４０が故障しているときには「１」に、正常であるときには「０」にそれぞれ設定されるものである。
【０１７２】
この判別結果がＹＥＳで、可変式吸気動弁機構４０が故障しているときには、そのまま本プログラムを終了する。一方、この判別結果がＮＯで、可変式吸気動弁機構４０が正常であるときには、ステップ１１に進み、エンジン始動フラグＦ＿ＥＮＧＳＴＡＲＴが「１」であるか否かを判別する。このエンジン始動フラグＦ＿ＥＮＧＳＴＡＲＴは、図示しない判定処理において、エンジン回転数ＮＥおよびＩＧ・ＳＷ２９の出力状態に応じて、エンジン始動制御中すなわちクランキング中であるか否かを判定することにより設定されるものであり、具体的には、エンジン始動制御中であるときには「１」に、それ以外のときには「０」にそれぞれ設定される。
【０１７３】
ステップ１１の判別結果がＹＥＳで、エンジン始動制御中であるときには、ステップ１２に進み、エンジン水温ＴＷに応じて、図３５に示すテーブルを検索することにより、目標吸入空気量の始動時用値Ｇｃｙｌ＿ｃｍｄ＿ｃｒｋを算出する。同図に示すように、このテーブルでは、目標吸入空気量の始動時用値Ｇｃｙｌ＿ｃｍｄ＿ｃｒｋは、エンジン水温ＴＷが高いほど、小さい値に設定されている。これは、エンジン水温ＴＷが高いほど、エンジン３が始動しやすいことで、吸入空気量および燃料噴射量をいずれも小さくできることによる。
【０１７４】
次いで、ステップ１３に進み、目標吸入空気量Ｇｃｙｌ＿ｃｍｄを上記始動時用値Ｇｃｙｌ＿ｃｍｄ＿ｃｒｋに設定した後、ステップ１４において、前述した式（１）により、実吸入空気量Ｇｃｙｌを算出する。次に、ステップ１５に進み、後述するように、リフト＆位相制御処理を実行した後、本プログラムを終了する。
【０１７５】
一方、ステップ１１の判別結果がＮＯで、エンジン始動制御中でないときには、ステップ１６に進み、エンジン３の始動終了直後からの経過時間である触媒暖機制御の実行時間Ｔｃａｔが所定値Ｔｃａｔｌｍｔ（例えば、３０ｓｅｃ）より小さいか否かを判別する。この触媒暖機制御は、エンジン始動後に触媒装置１６ａ，１６ｂ内の触媒を急速に活性化させるためのものである。
【０１７６】
このステップ１６の判別結果がＹＥＳで、Ｔｃａｔ＜Ｔｃａｔｌｍｔのときには、ステップ１７に進み、アクセル開度ＡＰが所定値ＡＰＲＥＦより小さいか否かを判別する。この所定値ＡＰＲＥＦは、アクセルペダルが踏まれていないことを判定するためのものであり、アクセルペダルが踏まれていないことを判定可能な値（例えば１゜）に設定されている。
【０１７７】
このステップ１７の判別結果がＹＥＳで、アクセルペダルが踏まれていないときには、触媒暖機制御を実行すべきであるとして、ステップ１８に進み、触媒暖機制御の実行時間Ｔｃａｔおよびエンジン水温ＴＷに応じて、図３６に示すマップを検索することにより、目標吸入空気量の触媒暖機用値Ｇｃｙｌ＿ｃｍｄ＿ａｓｔを算出する。
【０１７８】
同図のマップにおいて、エンジン水温ＴＷの所定値ＴＷ１〜ＴＷ３は、ＴＷ１＜ＴＷ２＜ＴＷ３の関係が成立するように設定されている。このマップでは、目標吸入空気量の触媒暖機用値Ｇｃｙｌ＿ｃｍｄ＿ａｓｔは、エンジン水温ＴＷが低いほど、より大きい値に設定されている。これは、エンジン水温ＴＷが低いほど、触媒の活性化に要する時間が長くなるので、排気ガスボリュームを大きくすることで、触媒の活性化に要する時間を短縮するためである。これに加えて、このマップでは、目標吸入空気量の触媒暖機用値Ｇｃｙｌ＿ｃｍｄ＿ａｓｔは、触媒暖機制御の実行時間Ｔｃａｔが所定時間Ｔｃａｔ１を経過するまでの間は、実行時間Ｔｃａｔが長いほど、より大きな値に設定され、所定時間Ｔｃａｔ１の経過後は、実行時間Ｔｃａｔが長いほど、より小さな値に設定されている。これは、実行時間Ｔｃａｔの経過に伴い、エンジン３の暖機が進むことで、フリクションが低下した場合において、目標吸入空気量Ｇｃｙｌ＿ｃｍｄを低減しないと、エンジン回転数ＮＥを目標値に維持するために点火時期が過剰にリタード制御された状態となり、燃焼状態が不安定になってしまうので、それを回避するためである。
【０１７９】
次いで、ステップ１９に進み、目標吸入空気量Ｇｃｙｌ＿ｃｍｄを上記触媒暖機用値Ｇｃｙｌ＿ｃｍｄ＿ａｓｔに設定する。次に、前述したステップ１４，１５を実行した後、本プログラムを終了する。
【０１８０】
一方、ステップ１６またはステップ１７の判別結果がＮＯのとき、すなわちＴｃａｔ≧Ｔｃａｔｌｍｔであるとき、またはアクセルペダルが踏まれているときには、ステップ２０に進み、目標吸入空気量の通常運転用値Ｇｃｙｌ＿ｃｍｄ＿ｄｒｖを、アクセル開度ＡＰおよびエンジン回転数ＮＥに応じて、図３７に示すマップを検索することにより算出する。
【０１８１】
同図のマップにおいて、アクセル開度ＡＰの所定値ＡＰ１〜ＡＰ３は、ＡＰ１＞ＡＰ２＞ＡＰ３の関係が成立するように設定されており、この関係は以下の説明でも同様である。このマップでは、目標吸入空気量の通常運転用値Ｇｃｙｌ＿ｃｍｄ＿ｄｒｖは、エンジン回転数ＮＥが高いほど、またはアクセル開度ＡＰが大きいほど、より大きな値に設定されている。これは、エンジン回転数ＮＥが高いほど、またはアクセル開度ＡＰが大きいほど、エンジン３が高負荷域にあることで、より大きな吸入空気量が要求されることによる。
【０１８２】
次いで、ステップ２１に進み、目標吸入空気量Ｇｃｙｌ＿ｃｍｄを上記通常運転値Ｇｃｙｌ＿ｃｍｄ＿ｄｒｖに設定する。次に、前述したステップ１４，１５を実行した後、本プログラムを終了する。
【０１８３】
次に、図３８を参照しながら、前述したリフト＆位相制御処理について説明する。このプログラムでは、まず、ステップ３０において、前回のループで設定されたリフトマスタフラグＦ＿ＭＳＬＩＦＴの値が「１」であるか否かを判別する。この判別結果がＮＯで、前回の制御モードが位相マスタモードであったときには、ステップ３１に進み、偏差Δｇｃｙｌ＿ｃｍｄがしきい値Ｇｃｙｌ＿ａｃｃよりも大きいか否かを判別する。
【０１８４】
この偏差Δｇｃｙｌ＿ｃｍｄは、目標吸入空気量の今回値と前回値との偏差［Ｇｃｙｌ＿ｃｍｄ（ｋ）−Ｇｃｙｌ＿ｃｍｄ（ｋ−１）］として算出される。また、しきい値Ｇｃｙｌ＿ａｃｃは、エンジン３が加速運転中であるか否かを判別するための所定値である。
【０１８５】
ステップ３１の判別結果がＹＥＳで、エンジン３が加速運転中であるときには、ステップ３２で、目標カム位相のしきい値Ｃａｉｎ＿ｍｓｓｗ＿ｌｍｔを、所定の加速用値Ｃａｉｎ＿ｍｓｓｗ１に設定する。一方、ステップ３１の判別結果がＮＯで、エンジン３が減速運転中または定速運転中のとき、すなわち非加速運転中のときには、ステップ３３で、目標カム位相のしきい値Ｃａｉｎ＿ｍｓｓｗ＿ｌｍｔを、上記加速用値Ｃａｉｎ＿ｍｓｓｗ１よりも小さい所定の非加速用値Ｃａｉｎ＿ｍｓｓｗ２（＜Ｃａｉｎ＿ｍｓｓｗ１）に設定する。
【０１８６】
これらのステップ３２またはステップ３３に続くステップ３４では、目標カム位相の前回値Ｃａｉｎ＿ｃｍｄ（ｋ−１）が上記しきい値Ｃａｉｎ＿ｍｓｓｗ＿ｌｍｔより小さいか否かを判別する。この判別結果がＮＯで、Ｃａｉｎ＿ｃｍｄ（ｋ−１）≧Ｃａｉｎ＿ｍｓｓｗ＿ｌｍｔのときには、位相マスタモードを実行すべき所定の低負荷域（所定の第１負荷域）にあるとして、ステップ３５に進み、それを表すためにリフトマスタフラグＦ＿ＭＳＬＩＦＴを「０」に設定する。
【０１８７】
一方、ステップ３４の判別結果がＹＥＳで、Ｃａｉｎ＿ｃｍｄ（ｋ−１）＜Ｃａｉｎ＿ｍｓｓｗ＿ｌｍｔのときには、リフトマスタモードを実行すべき所定の高負荷域（所定の第２負荷域）にあるとして、ステップ３６に進み、それを表すためにリフトマスタフラグＦ＿ＭＳＬＩＦＴを「１」に設定する。
【０１８８】
これらのステップ３５またはステップ３６に続くステップ３７では、後述するように、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄの算出処理を実行する。次に、ステップ３８で、後述するように、目標カム位相Ｃａｉｎ＿ｃｍｄの算出処理を実行した後、本プログラムを終了する。
【０１８９】
一方、ステップ３０の判別結果がＹＥＳで、前回の制御モードがリフトマスタモードであったときには、ステップ３９に進み、目標バルブリフトの前回値Ｌｉｆｔｉｎ＿ｃｍｄ（ｋ−１）が所定のしきい値Ｌｉｆｔｉｎ＿ｍｓｓｗ以下であるか否かを判別する。この判別結果がＹＥＳで、Ｌｉｆｔｉｎ＿ｃｍｄ（ｋ−１）≦Ｌｉｆｔｉｎ＿ｍｓｓｗのときには、位相マスタモードを実行すべき所定の低負荷域にあるとして、前述したステップ３５で、リフトマスタフラグＦ＿ＭＳＬＩＦＴを「０」に設定する。次いで、前述したステップ３７，３８を実行した後、本プログラムを終了する。
【０１９０】
一方、ステップ３９の判別結果がＮＯで、Ｌｉｆｔｉｎ＿ｃｍｄ（ｋ−１）＞Ｌｉｆｔｉｎ＿ｍｓｓｗのときには、リフトマスタモードを実行すべき所定の高負荷域にあるとして、前述したステップ３６で、リフトマスタフラグＦ＿ＭＳＬＩＦＴを「１」に設定する。次いで、前述したステップ３７，３８を実行した後、本プログラムを終了する。
【０１９１】
次に、図３９を参照しながら、前述した目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄの算出処理について説明する。このプログラムでは、まず、ステップ５０において、前述したステップ３０と同様に、偏差Δｇｃｙｌ＿ｃｍｄがしきい値Ｇｃｙｌ＿ａｃｃよりも大きいか否かを判別する。
【０１９２】
この判別結果がＹＥＳで、エンジン３が加速運転中であるときには、ステップ５１に進み、目標バルブリフトのスレーブ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｓｌを、目標カム位相Ｃａｉｎ＿ｃｍｄに応じて、図４０に示す加速時用テーブルを検索することにより算出する。なお、この加速時用テーブルの検索では、目標カム位相Ｃａｉｎ＿ｃｍｄとして、その前回値Ｃａｉｎ＿ｃｍｄ（ｋ−１）を用いる。また、同図におけるＬｉｆｔｉｎ＿ｒｅｆ１は、前述した所定のしきい値Ｌｉｆｔｉｎ＿ｍｓｓｗよりも小さい所定値であり、Ｃａｉｎ＿ｒｅｆ１は、Ｃａｉｎ＿ｍｓｓｗ１＜Ｃａｉｎ＿ｒｅｆ１＜Ｃａｉｎａｄの関係が成立するように設定された所定値である。
【０１９３】
同図に示すように、この加速時用テーブルにおいては、スレーブ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｓｌは、Ｃａｉｎ＿ｃｍｄ＜Ｃａｉｎ＿ｍｓｓｗ１の範囲では、前述した所定のしきい値Ｌｉｆｔｉｎ＿ｍｓｓｗに設定され、Ｃａｉｎ＿ｃｍｄ＞Ｃａｉｎ＿ｒｅｆ１の範囲では、所定値Ｌｉｆｔｉｎ＿ｒｅｆ１に設定されているとともに、Ｃａｉｎ＿ｍｓｓｗ１≦Ｃａｉｎ＿ｃｍｄ≦Ｃａｉｎ＿ｒｅｆ１の範囲では、目標カム位相Ｃａｉｎ＿ｃｍｄが進角側の値であるほど、より小さい値に設定されている。これは、前述したように、加速運転中、Ｃａｉｎ＿ｃｍｄ≧Ｃａｉｎ＿ｍｓｓｗ１のときには、制御モードが位相マスタモードに設定されるので、目標カム位相Ｃａｉｎ＿ｃｍｄが進角側の値であるほど、すなわちエンジン負荷が小さいほど、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄをより小さく設定することで、吸入空気量が小さくなるように、可変式吸気動弁機構４０を制御するためである。
【０１９４】
一方、ステップ５０の判別結果がＮＯで、エンジン３が非加速運転中であるときには、ステップ５２に進み、目標バルブリフトのスレーブ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｓｌを、目標カム位相Ｃａｉｎ＿ｃｍｄに応じて、図４１に示す非加速時用テーブルを検索することにより算出する。なお、この非加速時用テーブルの検索でも、目標カム位相Ｃａｉｎ＿ｃｍｄとして、その前回値Ｃａｉｎ＿ｃｍｄ（ｋ−１）を用いる。
【０１９５】
同図に示すように、この非加速時用テーブルにおいては、スレーブ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｓｌは、Ｃａｉｎ＿ｃｍｄ＜Ｃａｉｎ＿ｍｓｓｗ２の範囲では、所定のしきい値Ｌｉｆｔｉｎ＿ｍｓｓｗに設定され、Ｃａｉｎ＿ｃｍｄ＞Ｃａｉｎ＿ｒｅｆ１の範囲では、所定値Ｌｉｆｔｉｎ＿ｒｅｆ１に設定されているとともに、Ｃａｉｎ＿ｍｓｓｗ２≦Ｃａｉｎ＿ｃｍｄ≦Ｃａｉｎ＿ｒｅｆ１の範囲では、目標カム位相Ｃａｉｎ＿ｃｍｄが最進角値Ｃａｉｎａｄ側の値であるほど、より小さい値に設定されている。これは、前述した図４０の加速時用テーブルの説明で述べた理由と同じ理由に起因する。
【０１９６】
さらに、この非加速時用テーブルと、図４０の加速時用テーブルとを比較すると明らかなように、スレーブ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｓｌは、Ｃａｉｎ＿ｍｓｓｗ２≦Ｃａｉｎ＿ｃｍｄ≦Ｃａｉｎ＿ｒｅｆ１の範囲では、加速時用テーブルの方が、非加速時用テーブルよりも大きい値に設定されている。これは、加速運転時には、非加速運転時と比べて、エンジントルク制御の応答性を高める必要性があるので、吸入空気量制御の応答性を高めるべく、制御モードが位相マスタモードのときには、リフトマスタモードへの移行を早めるようにするためである。
【０１９７】
ステップ５１またはステップ５２に続くステップ５３では、リフトマスタフラグＦ＿ＭＳＬＩＦＴが「１」であるか否かを判別する。この判別結果がＹＥＳで、リフトマスタモードであるときには、ステップ５４に進み、前述した式（２）〜（７），（１０）〜（１４）のリフトマスタモード用アルゴリズムにより、目標バルブリフトのマスタ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｍｓを算出する。
【０１９８】
一方、ステップ５３の判別結果がＮＯで、位相マスタモードであるときには、ステップ５５に進み、前述した式（２）〜（７），（１５）の位相マスタモード用アルゴリズムにより、目標バルブリフトのマスタ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｍｓを算出する。すなわち、Ｌｉｆｔｉｎ＿ｃｍｄ＿ｍｓが値０として算出される。
【０１９９】
ステップ５４またはステップ５５に続くステップ５６において、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄを、そのマスタ値とスレーブ値の和（Ｌｉｆｔｉｎ＿ｃｍｄ＿ｍｓ＋Ｌｉｆｔｉｎ＿ｃｍｄ＿ｓｌ）に設定した後、本プログラムを終了する。
【０２００】
次に、図４２を参照しながら、前述した目標カム位相Ｃａｉｎ＿ｃｍｄの算出処理について説明する。このプログラムでは、まず、ステップ６０において、目標カム位相のスレーブ値Ｃａｉｎ＿ｃｍｄ＿ｓｌを、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄに応じて、図４３に示すテーブルを検索することにより算出する。なお、このテーブルの検索では、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄとして、その前回値Ｌｉｆｔｉｎ＿ｃｍｄ（ｋ−１）を用いる。また、同図のＬｉｆｔｉｎ＿ｒｅｆ２は、所定のしきい値Ｌｉｆｔｉｎ＿ｍｓｓｗよりも大きい所定値であり、Ｃａｉｎ＿ｒｅｆ２は、Ｃａｉｎｒｔ＜Ｃａｉｎ＿ｒｅｆ２＜Ｃａｉｎ＿ｍｓｓｗ２の関係が成立するように設定された所定値である。
【０２０１】
同図に示すように、このテーブルにおいては、スレーブ値Ｃａｉｎ＿ｃｍｄ＿ｓｌは、Ｌｉｆｔｉｎ＿ｃｍｄ≦Ｌｉｆｔｉｎ＿ｍｓｓｗの範囲では、所定値Ｃａｉｎ＿ｍｓｓｗ２に設定され、Ｌｉｆｔｉｎ＿ｃｍｄ≧Ｌｉｆｔｉｎ＿ｒｅｆ２の範囲では、所定値Ｃａｉｎ＿ｒｅｆ２に設定されているとともに、Ｌｉｆｔｉｎ＿ｍｓｓｗ＜Ｌｉｆｔｉｎ＿ｃｍｄ＜Ｌｉｆｔｉｎ＿ｒｅｆ２の範囲では、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄが大きいほど、より遅角側の値に設定されている。これは、前述したように、Ｌｉｆｔｉｎ＿ｃｍｄ＞Ｌｉｆｔｉｎ＿ｍｓｓｗのときには、制御モードがリフトマスタモードに設定されるので、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄが大きいほど、すなわちエンジン負荷が大きいほど、目標カム位相Ｃａｉｎ＿ｃｍｄをより遅角側の値に設定することで、吸入空気量が大きくなるように、可変式吸気動弁機構４０を制御するためである。
【０２０２】
次いで、ステップ６１に進み、リフトマスタフラグＦ＿ＭＳＬＩＦＴが「１」であるか否かを判別する。この判別結果がＮＯで、位相マスタモードであるときには、ステップ６２に進み、前述した式（１６）〜（２１），（２４）〜（２８）の位相マスタモード用アルゴリズムにより、目標カム位相のマスタ値Ｃａｉｎ＿ｃｍｄ＿ｍｓを算出する。
【０２０３】
一方、ステップ６１の判別結果がＹＥＳで、リフトマスタモードであるときには、ステップ６３に進み、前述した式（１６）〜（２１），（２９）のリフトマスタモード用アルゴリズムにより、目標カム位相のマスタ値Ｃａｉｎ＿ｃｍｄ＿ｍｓを算出する。すなわち、マスタ値Ｃａｉｎ＿ｃｍｄ＿ｍｓが値０に設定される。
【０２０４】
ステップ６２またはステップ６３に続くステップ６４において、目標カム位相Ｃａｉｎ＿ｃｍｄを、そのマスタ値とスレーブ値の和（Ｃａｉｎ＿ｃｍｄ＿ｍｓ＋Ｃａｉｎ＿ｃｍｄ＿ｓｌ）に設定した後、本プログラムを終了する。
【０２０５】
次に、前述したリフト制御入力Ｕｌｉｆｔｉｎの算出処理について説明する。図４４に示すように、このプログラムでは、まず、ステップ７０で、前述した吸気動弁機構故障フラグＦ＿ＶＬＶＮＧが「１」であるか否かを判別する。この判別結果がＮＯで、可変式吸気動弁機構４０が正常であるときには、ステップ７１に進み、リフト偏差Ｐｏｌｅ＿ｅｌｉｆｔｉｎを、バルブリフトと目標バルブリフトとの偏差（Ｌｉｆｔｉｎ−Ｌｉｆｔｉｎ＿ｃｍｄ）に設定する。
【０２０６】
次いで、ステップ７２に進み、このリフト偏差Ｐｏｌｅ＿ｅｌｉｆｔｉｎに応じて、図４５に示すテーブルを検索することにより、目標値フィルタ設定パラメータＰＯＬＥ＿ｆ''を算出する。同図において、Ｐｏｌｅ＿ｆ''１，Ｐｏｌｅ＿ｆ''２は、−１＜Ｐｏｌｅ＿ｆ''２＜Ｐｏｌｅ＿ｆ''１＜０の関係が成立するように設定された所定値であり、Ｐｏｌｅ＿ｅｌｉｆｔｉｎ１，Ｐｏｌｅ＿ｅｌｉｆｔｉｎ２は、Ｐｏｌｅ＿ｅｌｉｆｔｉｎ１＜Ｐｏｌｅ＿ｅｌｉｆｔｉｎ２の関係が成立するように設定された所定値である。
【０２０７】
同図に示すように、このテーブルにおいては、目標値フィルタ設定パラメータＰＯＬＥ＿ｆ''は、Ｐｏｌｅ＿ｅｌｉｆｔｉｎ＜Ｐｏｌｅ＿ｅｌｉｆｔｉｎ１の範囲では、所定値Ｐｏｌｅ＿ｆ''１に設定され、Ｐｏｌｅ＿ｅｌｉｆｔｉｎ＞Ｐｏｌｅ＿ｅｌｉｆｔｉｎ２の範囲では、所定値Ｐｏｌｅ＿ｆ''２に設定されているとともに、Ｐｏｌｅ＿ｅｌｉｆｔｉｎ１≦Ｐｏｌｅ＿ｅｌｉｆｔｉｎ≦Ｐｏｌｅ＿ｅｌｉｆｔｉｎ２の範囲では、リフト偏差Ｐｏｌｅ＿ｅｌｉｆｔｉｎが大きいほど、より値−１に近い値に設定されている。これは、以下の理由による。
【０２０８】
すなわち、前述したように、目標バルブリフトのスレーブ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｓｌは、加速運転中と非加速運転中とで、互いに異なる２つのテーブルを検索することにより、互いに異なる値として設定されるので、エンジン３の運転状態が加速状態と非加速状態との間で移行すると、その移行前後において、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄが急変することがあり、その場合には、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄに追従するように制御されるバルブリフトＬｉｆｔｉｎも急変し、吸入空気量が急変することで、トルク段差などが発生してしまう。したがって、そのような目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄすなわちバルブリフトＬｉｆｔｉｎの急変を回避するために、目標値フィルタ設定パラメータＰＯＬＥ＿ｆ''は、リフト偏差Ｐｏｌｅ＿ｅｌｉｆｔｉｎが大きいほど、すなわちバルブリフトＬｉｆｔｉｎと目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄとの乖離度合いが大きいほど、より値−１に近い値になるように設定されている。これにより、目標バルブリフトのフィルタ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｆの急変を回避でき、その結果、バルブリフトＬｉｆｔｉｎの急変を回避できる。
【０２０９】
次いで、ステップ７３に進み、前述した式（３４）〜（４６）の制御アルゴリズムにより、リフト制御入力Ｕｌｉｆｔｉｎを算出した後、本プログラムを終了する。
【０２１０】
一方、ステップ７０の判別結果がＹＥＳで、可変式吸気動弁機構４０が故障しているときには、ステップ７４に進み、リフト制御入力Ｕｌｉｆｔｉｎを所定の故障時用値Ｕｌｉｆｔｉｎ＿ｆｓに設定した後、本プログラムを終了する。この故障時用値Ｕｌｉｆｔｉｎ＿ｆｓは、バルブリフトＬｉｆｔｉｎが所定の微小値に制御されるような値（例えば、自動変速機タイプの車両では、クリープ走行可能な値）に設定される。
【０２１１】
次に、前述した位相制御入力Ｕｃａｉｎの算出処理について説明する。図４６に示すように、このプログラムでは、まず、ステップ８０で、前述した吸気動弁機構故障フラグＦ＿ＶＬＶＮＧが「１」であるか否かを判別する。この判別結果がＮＯで、可変式吸気動弁機構４０が正常であるときには、ステップ８１に進み、位相偏差Ｐｏｌｅ＿ｅｃａｉｎを、カム位相と目標カム位相との偏差（Ｃａｉｎ−Ｃａｉｎ＿ｃｍｄ）に設定する。
【０２１２】
次いで、ステップ８２に進み、この位相偏差Ｐｏｌｅ＿ｅｃａｉｎに応じて、図４７に示すテーブルを検索することにより、目標値フィルタ設定パラメータＰＯＬＥ＿ｆ*を算出する。同図において、Ｐｏｌｅ＿ｆ*１，Ｐｏｌｅ＿ｆ*２は、−１＜Ｐｏｌｅ＿ｆ*２＜Ｐｏｌｅ＿ｆ*１＜０の関係が成立するように設定された所定値であり、Ｐｏｌｅ＿ｅｃａｉｎ１，Ｐｏｌｅ＿ｅｃａｉｎ２は、Ｐｏｌｅ＿ｅｃａｉｎ１＜Ｐｏｌｅ＿ｅｃａｉｎ２の関係が成立するように設定された所定値である。
【０２１３】
このテーブルにおいては、目標値フィルタ設定パラメータＰＯＬＥ＿ｆ*は、Ｐｏｌｅ＿ｅｃａｉｎ＜Ｐｏｌｅ＿ｅｃａｉｎ１の範囲では、所定値Ｐｏｌｅ＿ｆ*１に設定され、Ｐｏｌｅ＿ｅｃａｉｎ＞Ｐｏｌｅ＿ｅｃａｉｎ２の範囲では、所定値Ｐｏｌｅ＿ｆ*２に設定されているとともに、Ｐｏｌｅ＿ｅｃａｉｎ１≦Ｐｏｌｅ＿ｅｃａｉｎ≦Ｐｏｌｅ＿ｅｃａｉｎ２の範囲では、位相偏差Ｐｏｌｅ＿ｅｃａｉｎが大きいほど、より値−１に近い値に設定されている。これは、以下の理由による。
【０２１４】
すなわち、前述したように、エンジン３の運転状態が非加速状態から加速状態に移行すると、その移行前後において、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄが急変することがあり、その場合には、目標カム位相のスレーブ値Ｃａｉｎ＿ｃｍｄ＿ｓｌが目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄに応じて設定されるので、目標カム位相Ｃａｉｎ＿ｃｍｄも急変することで、これに追従するように制御されるカム位相Ｃａｉｎも急変する。その結果、吸入空気量が急変することで、トルク段差などが発生することがある。それを回避するために、リフト偏差Ｐｏｌｅ＿ｅｃａｉｎが大きいほど、すなわちカム位相Ｃａｉｎと目標カム位相Ｃａｉｎ＿ｃｍｄとの乖離度合いが大きいほど、目標値フィルタ設定パラメータＰＯＬＥ＿ｆ*が、より値−１に近い値になるように設定される。これにより、非加速状態から加速状態に移行した際、目標カム位相Ｃａｉｎ＿ｃｍｄの急変を回避でき、その結果、カム位相Ｃａｉｎの急変を回避できる。
【０２１５】
次いで、ステップ８３に進み、前述した式（５１）〜（６３）の制御アルゴリズムにより、位相制御入力Ｕｃａｉｎを算出した後、本プログラムを終了する。
【０２１６】
一方、ステップ８０の判別結果がＹＥＳで、可変式吸気動弁機構４０が故障しているときには、ステップ８４に進み、位相制御入力Ｕｃａｉｎを所定の故障時用値Ｕｃａｉｎ＿ｆｓに設定した後、本プログラムを終了する。この故障時用値Ｕｃａｉｎ＿ｆｓは、カム位相Ｃａｉｎが最遅角値Ｃａｉｎｒｔに制御されるような値に設定される。
【０２１７】
次に、図４８を参照しながら、前述した点火時期制御処理について説明する。同図に示すように、このプログラムでは、まず、ステップ９０で、前述したように、吸気動弁機構故障フラグＦ＿ＶＬＶＮＧが「１」であるか否かを判別する。この判別結果がＮＯで、可変式吸気動弁機構４０が正常であるときには、ステップ９１に進み、エンジン始動フラグＦ＿ＥＮＧＳＴＡＲＴが「１」であるか否かを判別する。
【０２１８】
この判別結果がＹＥＳで、エンジン始動制御中であるときには、ステップ９２に進み、点火時期Ｉｇｌｏｇを、所定の始動時用値Ｉｇ＿ｃｒｋ（例えばＢＴＤＣ１０ｄｅｇ）に設定した後、本プログラムを終了する。
【０２１９】
一方、ステップ９１の判別結果がＮＯで、エンジン始動制御中でないときには、ステップ９３に進み、前述したように、触媒暖機制御の実行時間Ｔｃａｔが前述した所定値Ｔｃａｔｌｍｔより小さいか否かを判別する。この判別結果がＹＥＳで、Ｔｃａｔ＜Ｔｃａｔｌｍｔのときには、ステップ９４に進み、前述したように、アクセル開度ＡＰが所定値ＡＰＲＥＦより小さいか否かを判別する。
【０２２０】
この判別結果がＹＥＳで、アクセルペダルが踏まれていないときには、触媒暖機制御を実行すべきであるとして、ステップ９５に進み、触媒暖機用値Ｉｇ＿ａｓｔを算出する。この触媒暖機用値Ｉｇ＿ａｓｔは、具体的には、図４９に示す式（６４）〜（６６）の応答指定型制御アルゴリズム（スライディングモード制御アルゴリズムまたはバックステッピング制御アルゴリズム）により、算出される。
【０２２１】
なお、式（６４）〜（６６）における記号（ｍ）付きの各離散データは、ＴＤＣ信号の入力に同期してサンプリング（または算出）されたデータであることを示しており、記号ｍは各離散データのサンプリングサイクルの順番を表している。なお、以下の説明では、各離散データにおける記号（ｍ）を適宜、省略する。
【０２２２】
同図の式（６４）において、ｉｇ＿ａｓｔ＿ｂａｓｅは、所定の触媒暖機用の基準点火時期（例えばＢＴＤＣ５ｄｅｇ）を表し、Ｋｒｃｈ#，Ｋａｄｐ#は、フィードバックゲインを表している。また、σ#は、式（６５）（６６）により算出される切換関数である。同式（６５）において、ＰＯＬＥ#は、−１＜ＰＯＬＥ#＜０の関係が成立するように設定される応答指定パラメータであり、Ｅｎａｓｔは、式（６６）により算出される追従誤差である。式（６６）において、ＮＥ＿ａｓｔは、所定の触媒暖機用の目標回転数（例えば１８００ｒｐｍ）である。以上の制御アルゴリズムにより、触媒暖機用値Ｉｇ＿ａｓｔは、エンジン回転数ＮＥを上記触媒暖機用の目標回転数ＮＥ＿ａｓｔに収束させる値として、算出される。
【０２２３】
次いで、ステップ９６に進み、点火時期Ｉｇｌｏｇを上記触媒暖機用値Ｉｇ＿ａｓｔに設定した後、本プログラムを終了する。
【０２２４】
一方、ステップ９３またはステップ９４の判別結果がＮＯのとき、すなわちＴｃａｔ≧Ｔｃａｔｌｍｔであるとき、またはアクセルペダルが踏まれているときには、ステップ９７に進み、アクセル開度ＡＰおよびエンジン回転数ＮＥに応じて、図５０に示すマップを検索することにより、通常運転用値Ｉｇ＿ｄｒｖを算出する。
【０２２５】
このマップでは、通常運転用値Ｉｇ＿ｄｒｖは、アクセル開度ＡＰが大きいほど、より進角度合いの小さい値に設定されている。これは、アクセル開度ＡＰが大きいほど、エンジン３が高負荷域にあることで、ノッキングが発生しやすくなるので、それを回避するためである。これに加えて、通常運転用値Ｉｇ＿ｄｒｖは、低回転域では、エンジン回転数ＮＥが高いほど、より進角度合いの大きい値に設定され、高回転域では、エンジン回転数ＮＥが高いほど、より進角度合いの小さい値に設定されている。これは、低回転域では、ノッキングが発生しにくいので、エンジン回転数ＮＥが高いほど、点火時期をより進角度合いの大きい値に設定することで、燃焼ガス温度を高め、燃焼効率を高めるためである。一方、高回転域では、ノッキングが発生しやすくなるので、エンジン回転数ＮＥが高いほど、点火時期をより進角度合いの小さい値に設定することで、ノッキングの発生を回避するためである。
【０２２６】
次いで、ステップ９８に進み、点火時期Ｉｇｌｏｇを上記通常運転用値Ｉｇ＿ｄｒｖに設定した後、本プログラムを終了する。
【０２２７】
一方、ステップ９０の判別結果がＹＥＳで、可変式吸気動弁機構４０が故障しているときには、ステップ９９に進み、故障時用値Ｉｇ＿ｆｓを算出する。この故障時用値Ｉｇ＿ｆｓは、具体的には、図４９に示す式（６７）〜（６９）の応答指定型制御アルゴリズム（スライディングモード制御アルゴリズムまたはバックステッピング制御アルゴリズム）により、算出される。
【０２２８】
同図の式（６７）において、ｉｇ＿ｆｓ＿ｂａｓｅは、所定の故障時用の基準点火時期（例えばＴＤＣ＋０ｄｅｇ）を表し、Ｋｒｃｈ##，Ｋａｄｐ##は、フィードバックゲインを表している。また、σ##は、式（６８）（６９）により算出される切換関数である。同式（６８）において、ＰＯＬＥ##は、−１＜ＰＯＬＥ##＜０の関係が成立するように設定される応答指定パラメータであり、Ｅｎｆｓは、式（６９）により算出される追従誤差である。式（６９）において、ＮＥ＿ｆｓは、所定の故障時用の目標回転数（例えば２０００ｒｐｍ）である。以上の制御アルゴリズムにより、故障時用値Ｉｇ＿ｆｓは、エンジン回転数ＮＥを上記故障時用の目標回転数ＮＥ＿ｆｓに収束させる値として、算出される。
【０２２９】
次いで、ステップ１００に進み、点火時期Ｉｇｌｏｇを上記故障時用値Ｉｇ＿ｆｓに設定した後、本プログラムを終了する。
【０２３０】
以上のような本実施形態の吸入空気量制御装置１によれば、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄを所定のしきい値Ｌｉｆｔｉｎ＿ｍｓｓｗと比較することにより、または目標カム位相Ｃａｉｎ＿ｃｍｄをしきい値Ｃａｉｎ＿ｍｓｓｗ＿ｌｍｔと比較することにより、吸入空気量制御の制御モードとして、リフトマスタモードまたは位相マスタモードが選択される。具体的には、Ｌｉｆｔｉｎ＿ｃｍｄ＞Ｌｉｆｔｉｎ＿ｍｓｓｗのとき、またはＣａｉｎ＿ｃｍｄ≦Ｃａｉｎ＿ｍｓｓｗ＿ｌｍｔのとき、すなわちエンジン３の負荷が所定の高負荷域にあるときには、リフトマスタモードが選択され、それ以外のとき、すなわちエンジン３の負荷が所定の低負荷域にあるときには、位相マスタモードが選択される。
【０２３１】
このリフトマスタモードでは、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄが、リフトマスタモード用アルゴリズム［式（２）〜（７），（１０）〜（１４）］で算出された目標バルブリフトのマスタ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｍｓと、テーブル検索により算出された目標バルブリフトのスレーブ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｓｌとの和として算出され、それにより、実吸入空気量Ｇｃｙｌが目標吸入空気量Ｇｃｙｌ＿ｃｍｄに収束するように制御される。さらに、目標カム位相のマスタ値Ｃａｉｎ＿ｃｍｄ＿ｍｓが値０に設定されるとともに、スレーブ値Ｃａｉｎ＿ｃｍｄ＿ｓｌが、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄに応じて、テーブル検索により算出される。このように、エンジン３の負荷が所定の高負荷域にあることで、リフトマスタモードが選択されたときには、バルブリフト制御により、実吸入空気量Ｇｃｙｌを目標吸入空気量Ｇｃｙｌ＿ｃｍｄに収束するように制御でき、吸入空気量制御のむだ時間を小さくでき、応答性を向上させることができる。これに加えて、目標カム位相Ｃａｉｎ＿ｃｍｄすなわちそのスレーブ値Ｃａｉｎ＿ｃｍｄ＿ｓｌが、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄに応じて設定されるので、そのようなバルブリフト制御に干渉しないように、カム位相Ｃａｉｎを制御することができる。すなわち、吸入空気量制御における高い応答性が要求される高負荷域では、カム位相制御およびバルブリフト制御が互いに干渉し合うのを回避しながら、そのような高い応答性を確保することができる。
【０２３２】
一方、位相マスタモードでは、目標カム位相Ｃａｉｎ＿ｃｍｄが、位相マスタモード用アルゴリズム［式（１６）〜（２１），（２４）〜（２８）］で算出された目標カム位相のマスタ値Ｃａｉｎ＿ｃｍｄ＿ｍｓと、テーブル検索により算出された目標カム位相のスレーブ値Ｃａｉｎ＿ｃｍｄ＿ｓｌとの和として算出され、それにより、実吸入空気量Ｇｃｙｌが目標吸入空気量Ｇｃｙｌ＿ｃｍｄに収束するように制御される。さらに、目標バルブリフトのマスタ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｍｓが値０に設定されるとともに、スレーブ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｓｌが、目標カム位相Ｃａｉｎ＿ｃｍｄに応じて、テーブル検索により算出される。このように、エンジン３の負荷が所定の低負荷域にあることで、位相マスタモードが選択されたときには、カム位相制御により、実吸入空気量Ｇｃｙｌを目標吸入空気量Ｇｃｙｌ＿ｃｍｄに収束するように制御でき、吸入空気量を微小な変化量できめ細かく制御することができ、制御精度を向上させることができる。これに加えて、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄすなわちそのスレーブ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｓｌが、目標カム位相Ｃａｉｎ＿ｃｍｄに応じて設定されるので、そのようなカム位相制御に干渉しないように、バルブリフトＬｉｆｔｉｎを制御することができる。すなわち、吸入空気量制御における高い制御精度が要求される低負荷域では、カム位相制御およびバルブリフト制御が互いに干渉し合うのを回避しながら、そのような高い制御精度を確保することができる。
【０２３３】
また、図４０，４１のテーブルでは、目標バルブリフトのスレーブ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｓｌによる吸入空気量の増減方向が、目標カム位相Ｃａｉｎ＿ｃｍｄによる吸入空気量の増減方向に合致するように、両者の関係が設定されているとともに、図４３のテーブルでは、目標カム位相のスレーブ値Ｃａｉｎ＿ｃｍｄ＿ｓｌによる吸入空気量の増減方向が、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄによる吸入空気量の増減方向に合致するように、両者の関係が設定されている。これにより、カム位相制御およびバルブリフト制御が互いに干渉し合うのをより確実に回避できる。
【０２３４】
さらに、一般に、吸気弁４の開弁タイミングがより早くなると、内部ＥＧＲ量が増大し、燃焼速度が低下する。これに対して、図４０，４１のテーブルでは、目標カム位相Ｃａｉｎ＿ｃｍｄが進角側の値であるほど、すなわち吸気弁４の開弁タイミングがより早くなる値であるほど、目標バルブリフトのスレーブ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｓｌがより小さくなるように設定されているので、開弁タイミングの早期化に伴ってバルブリフトＬｉｆｔｉｎがより小さく制御されることで、筒内流動を増大させることができ、それにより、上記のような燃焼速度の低下を補償でき、安定した燃焼状態を実現することができる。さらに、吸気弁４の開弁タイミングがより進角すると、バルブリフトＬｉｆｔｉｎが必ず小さくなるように制御されるので、例えば、吸気弁４および排気弁７が同時に開弁状態になると互いに当接するようなレイアウトのエンジンに適用した場合、そのような当接を確実に回避することができる。
【０２３５】
また、目標カム位相Ｃａｉｎ＿ｃｍｄと比較されるしきい値Ｃａｉｎ＿ｍｓｓｗ＿ｌｍｔは、エンジン３の加速運転中は、非加速運転中よりも小さな値に設定されるので、Ｃａｉｎ＿ｃｍｄ≦Ｃａｉｎ＿ｍｓｓｗ＿ｌｍｔが成立しやすくなることで、位相マスタモードからリフトマスタモードへの切り換えが迅速に実行される。すなわち、エンジン３の加速運転中にあり、エンジン負荷が高い状態では、それに応じてリフトマスタモードへの移行を迅速に行うことができ、それにより、吸入空気量制御での高い応答性を迅速かつ適切に確保することができる。
【０２３６】
さらに、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄのスレーブ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｓｌが、エンジン３の加速運転中は、非加速運転中よりも大きな値に設定されるので、ステップ３９において、Ｌｉｆｔｉｎ＿ｃｍｄ＞Ｌｉｆｔｉｎ＿ｍｓｓｗが成立しやすくなることで、制御モードがリフトマスタモードにある場合には、リフトマスタモードに維持される領域が拡大される。これにより、エンジン３が加速運転中にあり、エンジン負荷が高い状態では、それに応じてリフトマスタモードを実行する領域を拡大することができ、それにより、吸入空気量制御での高い応答性を迅速かつ適切に確保することができる。また、同じ理由により、ステップ６０で、加速運転中は、目標カム位相のスレーブ値Ｃａｉｎ＿ｃｍｄ＿ｓｌが非加速運転中よりも小さな値に設定されることにより、ステップ３４において、Ｃａｉｎ＿ｃｍｄ≦Ｃａｉｎ＿ｍｓｓｗ＿ｌｍｔが成立しやすくなることで、上述したように、位相マスタモードからリフトマスタモードへの切り換えが迅速に実行される。
【０２３７】
また、吸入空気量の制御モードがリフトマスタモードのときには、目標カム位相のマスタ値Ｃａｉｎ＿ｃｍｄ＿ｍｓが値０に設定され、位相マスタモードのときには、目標バルブリフトのマスタ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｍｓが値０に設定されるので、例えば、制御モードが位相マスタモードからリフトマスタモードに切り換わる際、その切り換え前のバルブリフトのマスタ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｍｓが、値０に設定されていることで、切り換え後にその初期値として値０が用いられることにより、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄが急変するのを回避できる。これとは逆に、制御モードがリフトマスタモードから位相マスタモードに切り換わる際にも、切り換え後、目標カム位相のマスタ値Ｃａｉｎ＿ｃｍｄ＿ｍｓの初期値として値０が用いられることにより、目標カム位相Ｃａｉｎ＿ｃｍｄが急変するのを回避できる。以上のように、制御モードの切り換えの前後における吸入空気量の制御状態の急変を回避でき、それにより、トルク段差などの発生を回避できる。
【０２３８】
さらに、２つのマスタ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｍｓ，Ｃａｉｎ＿ｃｍｄ＿ｍｓがいずれも、前述した目標値フィルタ型２自由度制御アルゴリズムにより算出されるので、目標値フィルタアルゴリズムにより、実吸入空気量Ｇｃｙｌの目標吸入空気量Ｇｃｙｌ＿ｃｍｄへの収束速度を適切に設定することができるとともに、スライディングモード制御アルゴリズムにより、実吸入空気量Ｇｃｙｌの目標吸入空気量Ｇｃｙｌ＿ｃｍｄへの収束挙動を適切に設定することができる。
【０２３９】
また、目標カム位相Ｃａｉｎ＿ｃｍｄおよび目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄの算出周期すなわち制御周期ΔＴ１が、吸入空気量の動特性をプラントモデル［式（８），（２２）］に適切に反映されるような所定の値に設定されているので、目標カム位相Ｃａｉｎ＿ｃｍｄおよび目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄにより、吸入空気量の過渡的変化を精度よく、制御することができる。また、リフト制御入力Ｕｌｉｆｔｉｎおよび位相制御入力Ｕｃａｉｎの算出周期すなわち制御周期ΔＴ２が、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄおよび目標カム位相Ｃａｉｎ＿ｃｍｄの算出周期ΔＴ１よりも短い値に設定されているので、バルブリフトコントローラ１２０の制御によるバルブリフトＬｉｆｔｉｎの目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄへの収束速度、およびカム位相コントローラ２２０の制御によるカム位相Ｃａｉｎの目標カム位相Ｃａｉｎ＿ｃｍｄへの収束速度を、第１および第２ＡＣＴＡＳＳコントローラ１００，２００の制御による、実吸入空気量Ｇｃｙｌの目標吸入空気量Ｇｃｙｌ＿ｃｍｄへの収束速度よりも早めることができ、それにより、吸入空気量制御の安定性すなわち制御性をさらに向上させることができる。
【０２４０】
なお、第１および第２ＡＣＴＡＳＳコントローラ１００，２００において、式（２）〜（７），（１０）〜（１５）および式（１６）〜（２１），（２４）〜（２９）の制御アルゴリズムに代えて、図５１に示す式（７０）〜（７７）および図５２に示す式（７８）〜（８５）の簡易型の目標値フィルタ型２自由度スライディングモード制御アルゴリズムにより、目標バルブリフトおよび目標カム位相のマスタ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｍｓ，Ｃａｉｎ＿ｃｍｄ＿ｍｓを算出してもよい。なお、式（７１）におけるＵａｄｐは、式（７３）により算出される適応則入力であり、式（７３）のＫａｄｐは、フィードバックゲインである。これと同様に、式（７９）におけるＵａｄｐ’は、式（８１）により算出される適応則入力であり、式（８１）のＫａｄｐ’は、フィードバックゲインである。
【０２４１】
この場合、目標バルブリフトのマスタ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｍｓは、リフトマスタモードのときには、式（７０）〜（７４），（７６），（７７）により算出され、位相マスタモードのときには、式（７０）〜（７３），（７５）〜（７７）により値０として算出される。さらに、目標カム位相のマスタ値Ｃａｉｎ＿ｃｍｄ＿ｍｓは、位相マスタモードのときには、式（７８）〜（８２），（８４），（８５）により算出され、リフトマスタモードのときには、式（７８）〜（８１），（８３）〜（８５）により値０として算出される。以上の式（７０）〜（７７）および式（７８）〜（８５）の簡易型の目標値フィルタ型２自由度スライディングモード制御アルゴリズムを用いた場合、前述した外乱推定値ｃ１，ｃ１’を算出する必要がなくなり、適応外乱オブザーバ１０８，２０８が不要になるので、その分、ＥＣＵ２の演算負荷を低減することができる。
【０２４２】
図５３に示すように、式（７０）〜（７７）および式（７８）〜（８５）の簡易型の目標値フィルタ型２自由度スライディングモード制御アルゴリズムを用いた場合でも、実吸入空気量Ｇｃｙｌを目標吸入空気量Ｇｃｙｌ＿ｃｍｄに追従させるように制御できることが判る。特に、目標吸入空気量Ｇｃｙｌ＿ｃｍｄが大きい値に設定されている場合、すなわちエンジン負荷が高い場合、制御モードとしてリフトマスタモードが選択されることにより、目標吸入空気量Ｇｃｙｌ＿ｃｍｄの大きな変化に対して、実吸入空気量Ｇｃｙｌの追従性を高められることが判る。
【０２４３】
一方、目標吸入空気量Ｇｃｙｌ＿ｃｍｄが小さい値に設定されている場合、すなわちエンジン負荷が低い場合、制御モードとして位相マスタモードが選択されることにより、バルブリフトＬｉｆｔｉｎの変化量ΔＬｉｆｔｉｎ［＝Ｌｉｆｔｉｎ（ｋ）−Ｌｉｆｔｉｎ（ｋ−１）］を小さい値に制御することができることが判る。これにより、吸入空気量を微小な値で制御するときでも、バルブリフト可変機構５０の個体間のばらつきや経年変化の影響を回避できることが判る。
【０２４４】
なお、実施形態は、カム位相Ｃａｉｎを制御する所定の第１制御アルゴリズムとして、目標カム位相のスレーブ値Ｃａｉｎ＿ｃｍｄ＿ｓｌを、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄに応じて、テーブル検索することにより算出するアルゴリズムを用いた例であるが、所定の第１制御アルゴリズムはこれに限らず、バルブリフト制御を補助するために、カム位相Ｃａｉｎを制御するものであればよい。例えば、目標カム位相のスレーブ値Ｃａｉｎ＿ｃｍｄ＿ｓｌを、エンジン回転数ＮＥおよびアクセル開度ＡＰなどのエンジン負荷を表すパラメータに応じて、マップ検索またはテーブル検索により算出するアルゴリズムでもよい。
【０２４５】
また、実施形態は、バルブリフトＬｉｆｔｉｎを制御する所定の第２制御アルゴリズムとして、目標バルブリフトのスレーブ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｓｌを、目標カム位相Ｃａｉｎ＿ｃｍｄに応じて、テーブル検索することにより算出するアルゴリズムを用いた例であるが、所定の第２制御アルゴリズムはこれに限らず、カム位相制御を補助するために、バルブリフトＬｉｆｔｉｎを制御するものであればよい。例えば、目標バルブリフトのスレーブ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｓｌを、エンジン回転数ＮＥおよびアクセル開度ＡＰなどのエンジン負荷を表すパラメータに応じて、マップ検索またはテーブル検索により算出するアルゴリズムでもよい。
【０２４６】
さらに、実施形態は、２自由度制御アルゴリズムとして目標値フィルタ型２自由度制御アルゴリズムを用いた例であるが、２自由度制御アルゴリズムはこれに限らず、フィードバック制御アルゴリズムを含むものであればよい。例えば、２自由度制御アルゴリズムとして、フィードバック補償型２自由度制御アルゴリズムを用いてもよい。
【０２４７】
また、実施形態は、カム位相およびバルブリフトの制御状態を表すパラメータとして、目標カム位相Ｃａｉｎ＿ｃｍｄおよび目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄをそれぞれ用いた例であるが、これらに代えて、カム位相ＣａｉｎおよびバルブリフトＬｉｆｔｉｎを用いてもよい。具体的には、目標バルブリフトのスレーブ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｓｌを、図４０，４１のテーブルに代えて、スレーブ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｓｌがカム位相Ｃａｉｎに応じて設定されたテーブルを検索することにより、算出するとともに、目標カム位相のスレーブ値Ｃａｉｎ＿ｃｍｄ＿ｓｌを、図４３のテーブルに代えて、スレーブ値Ｃａｉｎ＿ｃｍｄ＿ｓｌがバルブリフトＬｉｆｔｉｎに応じて設定されたテーブルを検索することにより、算出してもよい。さらに、これらのスレーブ値Ｌｉｆｔｉｎ＿ｃｍｄ＿ｓｌ，Ｃａｉｎ＿ｃｍｄ＿ｓｌを、エンジン回転数ＮＥ、アクセル開度ＡＰ、目標吸入空気量Ｇｃｙｌ＿ｃｍｄおよび実吸入空気量Ｇｃｙｌのうちの１つのパラメータに応じて設定されたテーブル、または２つのパラメータに応じて設定されたマップを検索することにより、算出するようにしてもよい。
【０２４８】
さらに、実施形態は、負荷パラメータおよび第１負荷パラメータとして、エンジン回転数ＮＥおよびアクセル開度ＡＰ（または目標吸入空気量Ｇｃｙｌ＿ｃｍｄ）を用いた例であるが、負荷パラメータおよび第１負荷パラメータはこれに限らず、エンジン３の負荷を表すものであればよい。例えば、負荷パラメータおよび第１負荷パラメータとして、実吸入空気量Ｇｃｙｌなどを用いてもよい。
【０２４９】
また、実施形態は、第２負荷パラメータとして、目標バルブリフトＬｉｆｔｉｎ＿ｃｍｄおよび目標カム位相Ｃａｉｎ＿ｃｍｄを用いた例であるが、第２負荷パラメータはこれに限らず、エンジン３の負荷を表すものであればよい。例えば、第２負荷パラメータとして、バルブリフトＬｉｆｔｉｎおよびカム位相Ｃａｉｎを用いてもよく、さらに、エンジン回転数ＮＥ、アクセル開度ＡＰ、目標吸入空気量Ｇｃｙｌ＿ｃｍｄおよび実吸入空気量Ｇｃｙｌなどを用いてもよい。
【０２５０】
さらに、ステップ３４の判別において、カム位相Ｃａｉｎと所定値Ｃａｉｎ＿ｍｓｓｗ＿ｉｍｔを比較し、ステップ３９の判別において、バルブリフトＬｉｆｔｉｎと所定のしきい値Ｌｉｆｔｉｎ＿ｍｓｓｗを比較するようにしてもよい。
【０２５１】
さらに、エンジン３が加速状態にあるか否かを判定する手法は、偏差Δｇｃｙｌ＿ｃｍｄを所定値Ｇｃｙｌ＿ａｃｃと比較する実施形態の例（ステップ３１）に限らず、エンジン３が加速状態にあるか否かを判定できるものであればよい。例えば、実施形態のステップ３１で、実吸入空気量Ｇｃｙｌの今回値と前回値との偏差を所定値と比較してもよい。
【０２５２】
また、第１および第２ＡＣＴＡＳＳコントローラ１００，２００の制御アルゴリズムにおいて、バルブリフトコントローラ１２０およびカム位相コントローラ２２０と同様に、状態予測器およびオンボード同定器を付加してもよく、また、パラメータスケジューラなどを付加してもよい。
【０２５３】
さらに、実施形態は、バルブリフト可変機構として、バルブリフトを無段階（連続的）に変更可能なものを用いた例であるが、バルブリフト可変機構はこれに限らず、バルブリフトを変更可能なものであればよい。例えば、バルブリフト可変機構として、バルブリフトを複数段階で変更可能なものを用いてもよい。
【０２５４】
また、実施形態は、カム位相可変機構として、カム位相を無段階（連続的）に変更可能なものを用いた例であるが、カム位相可変機構はこれに限らず、カム位相を変更可能なものであればよい。例えば、カム位相可変機構として、カム位相を複数段階で変更可能なものを用いてもよい。
【０２５５】
また、本発明の吸入空気量制御装置は、実施形態の車両用の内燃機関に限らず、船舶などの各種の産業機械用の内燃機関に適用可能であることは言うまでもない。
【符号の説明】
【０２５６】
１    吸入空気量制御装置
２    ＥＣＵ（目標吸入空気量設定手段、吸入空気量検出手段、第１制御値算出手段          、第２制御値算出手段、制御入力算出手段、第１制御手段、第２制御手段、制          御選択手段、負荷域判定手段、第２負荷パラメータ設定手段、カム位相制御値          算出手段、バルブリフト制御値算出手段）
３    内燃機関
３ｂ  クランクシャフト
４    吸気弁
５    吸気カムシャフト
２２    エアフローセンサ（吸入空気量検出手段）
２３    吸気管内絶対圧センサ（吸入空気量検出手段）
５０    バルブリフト可変機構
７０    カム位相可変機構
９０    目標吸入空気量算出部（目標吸入空気量設定手段）
１００    第１ＡＣＴＡＳＳコントローラ（第１制御値算出手段、第１制御手段）
１１０    第１スレーブ値算出部（第２制御値算出手段、第１制御手段）
１２０    バルブリフトコントローラ（制御入力算出手段）
２００    第２ＡＣＴＡＳＳコントローラ（第１制御値算出手段、第２制御手段）
２１０    第２スレーブ値算出部（第２制御値算出手段、第２制御手段）
２２０    カム位相コントローラ（制御入力算出手段）
２３０    マスタ・スレーブ選択部（制御選択手段）
ＮＥ  エンジン回転数（負荷パラメータ、第１負荷パラメータ）
ＡＰ  アクセル開度（負荷パラメータ、第１負荷パラメータ）
Cain  カム位相
Cain_cmd  目標カム位相（第１および第２制御値、第２負荷パラメータ、カム位相
の制御状態を表すパラメータ、カム位相制御値）
Cain_cmd_ms  目標カム位相のマスタ値（フィードバック制御値、カム位相フィードバ
ック制御値）
Cain_cmd_sl  目標カム位相のスレーブ値（第２制御値、カム位相設定値）
Cain_mssw_lmt  しきい値
Cain_mssw1  所定の加速用値（しきい値の設定値）
Ucain  位相制御入力（カム位相可変機構への制御入力）
Liftin  バルブリフト
Liftin_cmd  目標バルブリフト（第１および第２制御値、第２負荷パラメータ、バル
ブリフトの制御状態を表すパラメータ、バルブリフト制御値）
Liftin_cmd_ms  目標バルブリフトのマスタ値（フィードバック制御値、バルブリフトフ
ィードバック制御値）
Liftin_cmd_sl  目標バルブリフトのスレーブ値（第２制御値、バルブリフト設定値）
Liftin_mssw  所定のしきい値
Uliftin  リフト制御入力（バルブリフト可変機構への制御入力）
Gcyl_cmd  目標吸入空気量
Gcyl  実吸入空気量（検出された吸入空気量）
ΔＴ１  制御周期（第１および第２制御値算出手段の算出周期）
ΔＴ２  制御周期（制御入力算出手段の算出周期）
【図１】
2005120990.tif 000003
【図２】
2005120990.tif 000004
【図３】
2005120990.tif 000005
【図４】
2005120990.tif 000006
【図５】
2005120990.tif 000007
【図６】
2005120990.tif 000008
【図７】
2005120990.tif 000009
【図８】
2005120990.tif 000010
【図９】
2005120990.tif 000011
【図１０】
2005120990.tif 000012
【図１１】
2005120990.tif 000013
【図１２】
2005120990.tif 000014
【図１３】
2005120990.tif 000015
【図１４】
2005120990.tif 000016
【図１５】
2005120990.tif 000017
【図１６】
2005120990.tif 000018
【図１７】
2005120990.tif 000019
【図１８】
2005120990.tif 000020
【図１９】
2005120990.tif 000021
【図２０】
2005120990.tif 000022
【図２１】
2005120990.tif 000023
【図２２】
2005120990.tif 000024
【図２３】
2005120990.tif 000025
【図２４】
2005120990.tif 000026
【図２５】
2005120990.tif 000027
【図２６】
2005120990.tif 000028
【図２７】
2005120990.tif 000029
【図２８】
2005120990.tif 000030
【図２９】
2005120990.tif 000031
【図３０】
2005120990.tif 000032
【図３１】
2005120990.tif 000033
【図３２】
2005120990.tif 000034
【図３３】
2005120990.tif 000035
【図３４】
2005120990.tif 000036
【図３５】
2005120990.tif 000037
【図３６】
2005120990.tif 000038
【図３７】
2005120990.tif 000039
【図３８】
2005120990.tif 000040
【図３９】
2005120990.tif 000041
【図４０】
2005120990.tif 000042
【図４１】
2005120990.tif 000043
【図４２】
2005120990.tif 000044
【図４３】
2005120990.tif 000045
【図４４】
2005120990.tif 000046
【図４５】
2005120990.tif 000047
【図４６】
2005120990.tif 000048
【図４７】
2005120990.tif 000049
【図４８】
2005120990.tif 000050
【図４９】
2005120990.tif 000051
【図５０】
2005120990.tif 000052
【図５１】
2005120990.tif 000053
【図５２】
2005120990.tif 000054
【図５３】
2005120990.tif 000055