(57)【特許請求の範囲】
【請求項１】
内燃機関の気筒から排出された排ガスを低温ガスとして当該気筒内に還流させるとともに、当該低温ガスの還流量を変更可能な低温ガス還流装置と、
前記気筒内で発生した既燃ガスを前記低温ガスよりも高温のガスとして当該気筒内に残留させる動作および当該気筒内に還流させる動作の少なくとも一方を、高温ガスの還流動作として実行するとともに、当該高温ガスの還流量を変更可能な高温ガス還流装置と、
前記内燃機関の運転状態を表す第１の運転状態パラメータに応じて、前記気筒内に還流した前記低温ガス量および前記高温ガス量の和である総還流ガス量と、当該総還流ガス量および前記気筒内に吸入された新気量の和である総ガス量との比率を表すＥＧＲ率パラメータを算出するＥＧＲ率パラメータ算出手段と、
当該ＥＧＲ率パラメータの目標値を、前記内燃機関の運転状態を表す第２の運転状態パラメータに応じて設定する目標値設定手段と、
前記ＥＧＲ率パラメータを当該設定された目標値に収束させるためのフィードバック補正値を、所定のフィードバック制御アルゴリズムにより算出するフィードバック補正値算出手段と、
前記内燃機関の運転状態を表す第３の運転状態パラメータに応じて、前記低温ガス還流装置により還流すべき低温ガス量の前記総還流ガス量に対する割合を低温ガス割合として、前記高温ガス還流装置により還流すべき高温ガス量の前記総還流ガス量に対する割合を高温ガス割合としてそれぞれ設定するガス量割合設定手段と、
前記設定された低温ガス割合が前記設定された高温ガス割合よりも大きいときには、当該低温ガス割合および前記フィードバック補正値に応じて、前記低温ガス還流装置を制御するとともに、当該高温ガス割合が当該低温ガス割合よりも大きいときには、当該高温ガス割合および前記フィードバック補正値に応じて、前記高温ガス還流装置を制御する制御手段と、
を備えることを特徴とする内燃機関のＥＧＲ制御装置。
【請求項２】
前記低温ガス割合が前記高温ガス割合よりも大きくかつ第１の所定値以上であるときに、低温ガス用の前記フィードバック補正値の学習値を低温ガス用学習値として算出するとともに、前記高温ガス割合が前記低温ガス割合よりも大きくかつ第２の所定値以上であるときに、高温ガス用の前記フィードバック補正値の学習値を高温ガス用学習値として算出する学習値算出手段をさらに備え、
前記制御手段は、前記低温ガス割合が前記高温ガス割合よりも大きいときには、当該高温ガス割合および前記高温ガス用学習値に応じて、前記高温ガス還流装置を制御するとともに、前記高温ガス割合が前記低温ガス割合よりも大きいときには、当該低温ガス割合および前記低温ガス用学習値に応じて、前記低温ガス還流装置を制御することを特徴とする請求項１に記載の内燃機関のＥＧＲ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、高温および低温の還流ガスを制御する内燃機関のＥＧＲ制御装置に関する。
【背景技術】
【０００２】
従来、内燃機関のＥＧＲ制御装置として、特許文献１に記載されたものが知られている。この内燃機関は、火花点火式のものであり、低温ＥＧＲ装置および高温ＥＧＲ装置を備えている。この低温ＥＧＲ装置は、排気通路内を流れる比較的、低温の排ガスを吸気通路側に還流するものであり、低温ＥＧＲ路および低温ＥＧＲ制御弁などを備えている。この低温ＥＧＲ路は、吸気通路と排気通路との間に接続されており、その途中には、低温ＥＧＲ制御弁が設けられている。この低温ＥＧＲ制御弁により、低温ＥＧＲ路の開度が自在に変更され、それにより、低温ＥＧＲ路を介して還流される排ガス量（以下「低温ＥＧＲ量」という）が変更される。
【０００３】
また、高温ＥＧＲ装置は、低温ＥＧＲ装置により還流される排ガスよりも高温の排ガスを気筒内に還流するものであり、高温ＥＧＲ路および高温ＥＧＲ制御弁などを備えている。この高温ＥＧＲ路は、内燃機関のシリンダヘッド内に形成され、一端が燃焼室に臨んで開口し、他端が排気ポートに臨んで開口しているとともに、その途中には、高温ＥＧＲ制御弁が設けられている。この高温ＥＧＲ制御弁により、高温ＥＧＲ路の開度が自在に変更され、それにより、高温ＥＧＲ路を介して還流される排ガス量（以下「高温ＥＧＲ量」という）が変更される。
【０００４】
このＥＧＲ制御装置では、内燃機関の負荷に応じて、マップを検索することにより、総ＥＧＲ量における高温ＥＧＲ量および低温ＥＧＲ量の割合がそれぞれ決定される。そして、これらの割合に基づき、高温ＥＧＲ制御弁および低温ＥＧＲ制御弁をデューティ制御することにより、低温ＥＧＲ量および高温ＥＧＲ量が制御される。
【０００５】
【特許文献１】特許第３３０５４１６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上記従来のＥＧＲ制御装置によれば、高温ＥＧＲ量および低温ＥＧＲ量の割合をマップ検索により決定し、これらの割合に基づき、高温ＥＧＲ制御弁および低温ＥＧＲ制御弁をデューティ制御することにより、低温ＥＧＲ量および高温ＥＧＲ量を制御しているものに過ぎないので、ＥＧＲ制御の制御精度が比較的低く、それに起因して、筒内温度の制御精度も低いという問題がある。そのため、燃費、運転性および排ガス特性がいずれも悪化するおそれがあるとともに、例えば圧縮自着火により混合気を燃焼させる圧縮着火燃焼式の内燃機関のような、混合気の燃焼に際して筒内温度を高精度で制御する必要がある内燃機関には適用することができない。
【０００７】
本発明は、上記課題を解決するためになされたもので、高温および低温の還流ガスを制御する場合において、これらのガスの還流量を高精度に制御することができ、それにより、筒内温度の制御精度を向上させることができる内燃機関のＥＧＲ制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、請求項１に係る内燃機関３のＥＧＲ制御装置１は、内燃機関３の気筒３ａから排出された排ガスを低温ガスとして気筒３ａ内に還流させるとともに、低温ガスの還流量を変更可能な低温ガス還流装置（排気還流機構１６）と、気筒３ａ内で発生した既燃ガスを低温ガスよりも高温のガスとして気筒３ａ内に残留させる動作および気筒３ａ内に還流させる動作の少なくとも一方を、高温ガスの還流動作として実行するとともに、高温ガスの還流量を変更可能な高温ガス還流装置（吸気カム位相可変機構５０、排気リフト可変機構７０、排気カム位相可変機構９０）と、内燃機関３の運転状態を表す第１の運転状態パラメータ（アクセル開度ＡＰ、エンジン回転数ＮＥ、新気流量ＧＩＮ、吸気管内圧ＰＢＡ）に応じて、気筒３ａ内に還流した低温ガス量および高温ガス量の和である総還流ガス量と、総還流ガス量および気筒３ａ内に吸入された新気量の和である総ガス量との比率を表すＥＧＲ率パラメータ（実新気率ＫＥＧＲ）を算出するＥＧＲ率パラメータ算出手段（ＥＣＵ２、ステップ１２）と、ＥＧＲ率パラメータの目標値（実新気率の目標値ＫＥＧＲＣＭＤ）を、内燃機関３の運転状態を表す第２の運転状態パラメータ（アクセル開度ＡＰ、エンジン回転数ＮＥ）に応じて設定する目標値設定手段（ＥＣＵ２、ステップ６０）と、ＥＧＲ率パラメータを設定された目標値に収束させるためのフィードバック補正値（フィードバック補正係数ＫＥＧＲＦＢ）を、所定のフィードバック制御アルゴリズム（Ｉ−ＰＤ制御アルゴリズム）により算出するフィードバック補正値算出手段（ＥＣＵ２、ステップ８０）と、内燃機関３の運転状態を表す第３の運転状態パラメータ（アクセル開度ＡＰ、エンジン回転数ＮＥ）に応じて、低温ガス還流装置により還流すべき低温ガス量の総還流ガス量に対する割合を低温ガス割合（外部ＥＧＲ割合ＥＧＲＤＩＶＥＸ）として、高温ガス還流装置により還流すべき高温ガス量の総還流ガス量に対する割合を高温ガス割合（内部ＥＧＲ割合ＥＧＲＤＩＶＩＮ）としてそれぞれ設定するガス量割合設定手段（ＥＣＵ２、ステップ６１，６２）と、設定された低温ガス割合が設定された高温ガス割合よりも大きいときには、低温ガス割合およびフィードバック補正値に応じて、低温ガス還流装置を制御するとともに、高温ガス割合が低温ガス割合よりも大きいときには、高温ガス割合およびフィードバック補正値に応じて、高温ガス還流装置を制御する制御手段（ＥＣＵ２、ステップ８１〜９４）と、を備えることを特徴とする。
【０００９】
この内燃機関のＥＧＲ制御装置によれば、低温ガス還流装置により、内燃機関の気筒から排出された排ガスが低温ガスとして気筒内に還流され、その還流量が変更されるとともに、高温ガス還流装置により、気筒内で発生した既燃ガスを低温ガスよりも高温のガスとして気筒内に残留させる動作および／または気筒内に還流させる動作が実行され、その還流量が変更される。さらに、低温ガス割合が高温ガス割合よりも大きいときには、低温ガス割合およびフィードバック補正値に応じて、低温ガス還流装置が制御されるとともに、高温ガス割合が低温ガス割合よりも大きいときには、高温ガス割合およびフィードバック補正値に応じて、高温ガス還流装置が制御される。このフィードバック補正値は、総還流ガス量と総ガス量との比率を表すＥＧＲ率パラメータをその目標値に収束させるための値であり、所定のフィードバック制御アルゴリズムにより算出されるので、そのように算出されたフィードバック補正値と、低温ガス割合および高温ガス割合のうちの大きい方とに応じて、多量のガスを還流する方の還流装置を制御することにより、ＥＧＲ率パラメータがその目標値に収束するように、低温ガス量および高温ガス量のうちの大きい方をフィードバック制御することができる。すなわち、実際の総還流ガス量を、適切な値に迅速に収束するようにフィードバック制御することができる。その結果、低温ガス量および高温ガス量をいずれもデューティ制御する従来のＥＧＲ制御と比べて、ＥＧＲ制御の制御精度を向上させることができ、筒内温度の制御精度を向上させることができる。
【００１０】
また、ＥＧＲ率パラメータは、内燃機関の運転状態を表す第１の運転状態パラメータに応じて算出され、ＥＧＲ率パラメータの目標値は、内燃機関の運転状態を表す第２運転状態パラメータに応じて設定され、低温ガス還流装置および高温ガス還流装置によりそれぞれ還流される低温ガス量および高温ガス量の総還流ガス量に対する割合、すなわち低温ガス割合および高温ガス割合が、内燃機関の運転状態を表す第３の運転状態パラメータに応じて設定されるので、これらの値を、内燃機関の運転状態が変化したときでも、それに応じて適切な値として算出できる。その結果、ＥＧＲ制御の精度をさらに向上させることができ、筒内温度の制御精度をさらに向上させることができる。以上により、燃費、運転性および排ガス特性をいずれも向上させることができるとともに、このＥＧＲ制御装置を、例えば圧縮自着火により混合気を燃焼させる圧縮着火燃焼式の内燃機関のように、筒内温度を高精度で制御する必要がある内燃機関にも適用することができる。
【００１１】
請求項２に係る発明は、請求項１に記載の内燃機関３のＥＧＲ制御装置１において、低温ガス割合が高温ガス割合よりも大きくかつ第１の所定値（値１．０）以上であるときに、低温ガス用のフィードバック補正値の学習値を低温ガス用学習値（外部ＥＧＲ用学習値ＫＥＧＲＲＥＦＥＸ）として算出するとともに、高温ガス割合が低温ガス割合よりも大きくかつ第２の所定値（値１．０）以上であるときに、高温ガス用のフィードバック補正値の学習値を高温ガス用学習値（内部ＥＧＲ用学習値ＫＥＧＲＲＥＦＩＮ）として算出する学習値算出手段（ＥＣＵ２、ステップ１２１，１２９）をさらに備え、制御手段は、低温ガス割合が高温ガス割合よりも大きいときには、高温ガス割合および高温ガス用学習値に応じて、高温ガス還流装置を制御するとともに、高温ガス割合が低温ガス割合よりも大きいときには、低温ガス割合および低温ガス用学習値に応じて、低温ガス還流装置を制御することを特徴とする。
【００１２】
この内燃機関のＥＧＲ制御装置によれば、低温ガス割合が高温ガス割合よりも大きくかつ第１の所定値以上であるときに、低温ガス用のフィードバック補正値の学習値が低温ガス用学習値として算出され、一方、高温ガス割合が低温ガス割合よりも大きくかつ第２の所定値以上であるときに、高温ガス用のフィードバック補正値の学習値が高温ガス用学習値としてされる。さらに、低温ガス割合が高温ガス割合よりも大きいとき、すなわち高温ガス割合が低温ガス割合よりも小さいときには、高温ガス割合および高温ガス用学習値に応じて、高温ガス還流装置が制御されるとともに、高温ガス割合が低温ガス割合よりも大きいとき、すなわち低温ガス割合が高温ガス割合よりも小さいときには、低温ガス割合および低温ガス用学習値に応じて、低温ガス還流装置が制御される。このように、低温ガス割合が高温ガス割合よりも小さいときには、低温ガスを還流する低温ガス還流装置が、低温ガス用学習値を用いながら、フィードフォワード的に制御されるとともに、この低温ガス用学習値は、低温ガス割合が高温ガス割合よりも大きくかつ第１の所定値以上であったときに算出されるので、低温ガス還流装置により還流される低温ガス量が不適切な値になるのを回避できる。一方、高温ガス割合が低温ガス割合よりも小さいときには、高温ガスを還流する高温ガス還流装置が、高温ガス用学習値を用いながら、フィードフォワード的に制御されるとともに、この高温ガス用学習値は、高温ガス割合が低温ガス割合よりも大きくかつ第２の所定値以上であったときに算出されるので、高温ガス還流装置により還流される高温ガス量が不適切な値になるのを回避できる。その結果、ガス割合の小さい方のガスを還流するガス還流装置の制御が、ガス割合の大きい方のガスを還流するガス還流装置のフィードバック制御に干渉するのを回避しながら、ＥＧＲ率パラメータをその目標値により迅速に収束させることができる。それにより、ＥＧＲ制御の制御精度をより一層、向上させることができる。
【発明を実施するための最良の形態】
【００１３】
以下、図面を参照しながら、本発明の一実施形態に係る内燃機関のＥＧＲ制御装置について説明する。図２に示すように、このＥＧＲ制御装置１は、ＥＣＵ２を備えており、このＥＣＵ２は、後述するように、内燃機関（以下「エンジン」という）３の運転状態に応じて、ＥＧＲ制御処理などの各種の制御処理を実行する。
【００１４】
図１および図３に示すように、エンジン３は、４組の気筒３ａおよびピストン３ｂ（１組のみ図示）を有する直列４気筒ガソリンエンジンであり、図示しない車両に搭載されているとともに、各気筒３ａのピストン３ｂとシリンダヘッド３ｃとの間に燃焼室３ｇが形成されている。
【００１５】
エンジン３は、気筒３ａ毎に設けられた一対の吸気弁４，４（１つのみ図示）および一対の排気弁７，７（図９参照）と、吸気カムシャフト５および吸気カム６を有するとともに各吸気弁４を開閉駆動する吸気側動弁機構４０と、排気カムシャフト８および排気カム９を有するとともに各排気弁７を開閉駆動する排気側動弁機構６０と、燃料噴射弁１０（図２参照）と、点火プラグ１１（図２参照）などを備えている。
【００１６】
吸気弁４は、そのステム４ａがガイド４ｂに摺動自在に嵌合しており、このガイド４ｂは、シリンダヘッド３ｃに固定されている。さらに、吸気弁４は、上下のスプリングシート４ｃ，４ｄと、これらの間に設けられたバルブスプリング４ｅとにより、閉弁方向に付勢されている。
【００１７】
また、吸気カムシャフト５および排気カムシャフト８はそれぞれ、図示しないホルダを介して、シリンダヘッド３ｃに回動自在に取り付けられているとともに、気筒３ａの配列方向に沿って延びている。この吸気カムシャフト５の一端部上には、吸気スプロケット（図示せず）が同軸に配置され、回転自在に設けられている。この吸気スプロケットは、図示しないタイミングチェーンを介してクランクシャフト３ｄに連結され、後述する吸気カム位相可変機構５０を介して吸気カムシャフト５に連結されている。以上の構成により、吸気カムシャフト５は、クランクシャフト３ｄが２回転する毎に１回転する。
【００１８】
また、吸気カム６は、吸気カムシャフト５上にこれと一体に回転するように設けられており、図示しないが、気筒３ａ毎に設けられた２つの低速カムと、気筒３ａ毎に設けられ、低速カムよりも高いカムノーズを有する１つの高速カムで構成されている。
【００１９】
さらに、吸気側動弁機構４０は、クランクシャフト３ｄの回転に伴う吸気カムシャフト５の回転により、各気筒３ａの吸気弁４を開閉駆動するものであり、後述するように、吸気弁４のリフトを２段階に切り換えるとともに、吸気弁４のバルブタイミングを無段階に変更する可変式の動弁機構で構成されている。なお、本実施形態では、「吸気弁４のリフト（以下「吸気リフト」という）」は、吸気弁４の最大揚程を表すものとする。
【００２０】
一方、排気弁７は、そのステム７ａがガイド７ｂに摺動自在に嵌合しており、このガイド７ｂは、シリンダヘッド３ｃに固定されている。さらに、排気弁７は、上下のスプリングシート７ｃ，７ｄと、これらの間に設けられたバルブスプリング７ｅとにより、閉弁方向に付勢されている。
【００２１】
また、排気カムシャフト８の一端部上には、排気スプロケット（図示せず）が同軸に配置され、回転自在に設けられている。この排気スプロケットは、図示しないタイミングチェーンを介してクランクシャフト３ｄに連結され、後述する排気カム位相可変機構９０を介して排気カムシャフト８に連結されている。以上の構成により、排気カムシャフト８は、クランクシャフト３ｄが２回転する毎に１回転する。さらに、排気カム９は、排気カムシャフト８上にこれと一体に回転するように気筒３ａ毎に設けられている。
【００２２】
さらに、排気側動弁機構６０は、クランクシャフト３ｄの回転に伴う排気カムシャフト８の回転により、各気筒３ａの排気弁７を開閉駆動するものであり、後述するように、排気弁７のリフトおよびバルブタイミングを無段階に変更する可変式の動弁機構で構成されている。なお、本実施形態では、「排気弁７のリフト（以下「排気リフト」という）」は、排気弁７の最大揚程を表すものとする。
【００２３】
一方、燃料噴射弁１０は、気筒３ａ毎に設けられ、燃料を燃焼室３ｇ内に直接噴射するようにシリンダヘッド３ｃに取り付けられている。すなわち、エンジン３は直噴エンジンとして構成されている。また、燃料噴射弁１０は、ＥＣＵ２に電気的に接続されており、ＥＣＵ２により、後述する燃料噴射量ＴＯＵＴに基づいて、開弁時間および開弁タイミングが制御される。
【００２４】
また、点火プラグ１１も、気筒３ａ毎に設けられ、シリンダヘッド３ｃに取り付けられている。点火プラグ１１は、ＥＣＵ２に電気的に接続されており、ＥＣＵ２により、点火時期に応じたタイミングで燃焼室３ｇ内の混合気を燃焼させるように、放電状態が制御される。
【００２５】
一方、エンジン３には、クランク角センサ２０および水温センサ２１が設けられている。このクランク角センサ２０は、マグネットロータおよびＭＲＥピックアップで構成されており、クランクシャフト３ｄの回転に伴い、いずれもパルス信号であるＣＲＫ信号およびＴＤＣ信号をＥＣＵ２に出力する。
【００２６】
このＣＲＫ信号は、所定クランク角（例えば１０゜）毎に１パルスが出力され、ＥＣＵ２は、このＣＲＫ信号に基づき、エンジン３の回転数（以下「エンジン回転数」という）ＮＥを算出する。なお、本実施形態では、エンジン回転数ＮＥが第１、第２および第３の運転状態パラメータに相当する。また、ＴＤＣ信号は、各気筒３ａのピストン３ｂが吸気行程のＴＤＣ位置よりも若干、手前の所定のクランク角位置にあることを表す信号であり、所定クランク角毎に１パルスが出力される。
【００２７】
さらに、水温センサ２１は、エンジン３のシリンダブロック３ｅ内を循環する冷却水の温度であるエンジン水温ＴＷを検出して、それを表す検出信号を、ＥＣＵ２に出力する。
【００２８】
一方、エンジン３の吸気管１２には、上流側から順に、エアフローセンサ２２およびスロットル弁機構１３がそれぞれ設けられている。このエアフローセンサ２２は、熱線式エアフローメータで構成されており、吸気管１２内を流れる新気の流量（以下「新気流量」という）ＧＩＮを検出して、それを表す検出信号をＥＣＵ２に出力する。なお、本実施形態では、新気流量が第１の運転状態パラメータに相当する。
【００２９】
さらに、スロットル弁機構１３は、スロットル弁１３ａおよびこれを開閉駆動するＴＨアクチュエータ１３ｂなどを備えている。スロットル弁１３ａは、吸気管１２の途中に回動自在に設けられており、回動に伴う開度の変化により吸気管１２内の新気流量を変化させる。ＴＨアクチュエータ１３ｂは、ＥＣＵ２に接続されたモータにギヤ機構（いずれも図示せず）を組み合わせたものであり、ＥＣＵ２からの後述するＴＨ制御入力Ｕ＿ＴＨによって駆動されることにより、スロットル弁１３ａの開度を変化させる。
【００３０】
また、スロットル弁１３ａには、これを開弁方向および閉弁方向にそれぞれ付勢する２つのばね（いずれも図示せず）が取り付けられている。これら２つのばねの付勢力により、スロットル弁１３ａは、後述するように、ＴＨ制御入力Ｕ＿ＴＨが値０に設定されているときや、ＴＨ制御入力Ｕ＿ＴＨがＴＨアクチュエータ１３ｂに入力されていないときには、所定の初期開度に保持される。この初期開度は、全閉状態に近い値であって、停車中はアイドル運転やエンジン始動を適切に行うことができると同時に、走行中は低速走行状態を維持できるような吸入空気量を確保できる値（例えば６゜）に設定されている。
【００３１】
また、吸気管１２のスロットル弁機構１３よりも下流側には、吸気温センサ２３および吸気管内圧センサ２４（いずれも図２参照）が設けられている。この吸気温センサ２３は、吸気管１２内を流れる空気の温度（以下「吸気温」という）ＴＡを検出して、それを表す検出信号をＥＣＵ２に出力する。
【００３２】
吸気管内圧センサ２４は、例えば半導体圧力センサなどで構成され、吸気管１２内の圧力（以下「吸気管内圧」という）ＰＢＡを検出して、それを表す検出信号をＥＣＵ２に出力する。この吸気管内圧ＰＢＡは、絶対圧として検出される。なお、本実施形態では、吸気管内圧ＰＢＡが第１の運転状態パラメータに相当する。
【００３３】
一方、エンジン３の排気管１４には、上流側から順に、ＬＡＦセンサ２５および触媒装置１５がそれぞれ設けられている。ＬＡＦセンサ２５は、ジルコニアおよび白金電極などで構成され、理論空燃比よりもリッチなリッチ領域から極リーン領域までの広範囲な空燃比の領域において、排気管１４内を流れる排ガス中の酸素濃度をリニアに検出して、それを表す検出信号をＥＣＵ２に出力する。ＥＣＵ２は、このＬＡＦセンサ２５の検出信号の値に基づき、排ガス中の空燃比を表す検出空燃比ＫＡＣＴを算出する。この場合、検出空燃比ＫＡＣＴは、具体的には当量比として算出される。
【００３４】
また、エンジン３には、排気還流機構１６が設けられている。この排気還流機構１６は、排気管１４内の排ガスを吸気管１２側に還流させるものであり、吸気管１２および排気管１４の間に接続されたＥＧＲ管１６ａと、このＥＧＲ管１６ａを開閉するＥＧＲ制御弁１６ｂなどで構成されている。ＥＧＲ管１６ａの一端は、排気管１４の触媒装置１５よりも上流側の部分に開口し、他端は、吸気管１２のスロットル弁機構１３よりも下流側の部分に開口している。
【００３５】
また、ＥＧＲ制御弁１６ｂは、リニア電磁弁タイプのもので、ＥＣＵ２からの後述するＥＧＲリフト制御入力Ｕ＿ＬＩＦＴに応じて、そのリフト（以下「ＥＧＲリフト」という）が最大値と最小値との間でリニアに変化するように構成されており、それにより、ＥＧＲ管１６ａの開度すなわち排気還流量（以下「外部ＥＧＲ量」という）を変化させる。
【００３６】
このＥＧＲ制御弁１６ｂには、ＥＧＲリフトセンサ２６が取り付けられており、ＥＧＲリフトセンサ２６は、ＥＧＲ制御弁１６ｂの実際のＥＧＲリフトＬＡＣＴを検出して、それを表す検出信号をＥＣＵ２に出力する。ＥＣＵ２は、後述するように、ＥＧＲ制御弁１６ｂを介して、ＥＧＲリフトＬＡＣＴが目標ＥＧＲリフトＬＣＭＤに収束するように、外部ＥＧＲ量を制御する。なお、以下の説明では、排気還流機構１６により排気を還流させることを「外部ＥＧＲ」という。
【００３７】
なお、本実施形態では、排気還流機構１６が低温ガス還流装置に相当し、この排気還流機構１６により還流される排ガスが低温ガスに相当する。
【００３８】
次に、前述した吸気側動弁機構４０について説明する。この吸気側動弁機構４０は、図４に示すように、吸気カムシャフト５、吸気カム６、吸気リフト切換機構４１および吸気カム位相可変機構５０などを備えている。
【００３９】
吸気リフト切換機構４１は、本出願人が特開２０００−２２７０１３号公報などで既に提案したものと同様に構成されているので、その詳細な説明は省略するが、ロッカアームシャフト４２と、これに回動自在に取り付けられた２つの低速ロッカアーム４３，４３（１つのみ図示）および高速ロッカアーム（図示せず）と、ＥＣＵ２に接続された吸気リフト電磁弁４４（図２参照）などを備えている。
【００４０】
この吸気リフト切換機構４１では、ＥＣＵ２からの吸気リフト制御入力Ｕ＿ＶＴＥＣにより吸気リフト電磁弁４４が制御されることによって、吸気リフト切換機構４１の動作モードが低リフトモードまたは高リフトモードに切り換えられる。この低リフトモードでは、吸気カムシャフト５が回転すると、低速カムにより低速ロッカアーム４３が駆動され、高速カムにより高速ロッカアームが駆動されるものの、高速ロッカアームは、吸気弁４とは無関係にロッカアームシャフト４２の回りを回動する。それにより、吸気弁４は、低速ロッカアーム４３によって開閉駆動され、所定のリフトでかつ所定の開弁時間で開閉する。
【００４１】
一方、高リフトモードでは、吸気カムシャフト５が回転すると、高速カムにより駆動されることで、高速ロッカアームが回動するとともに、これと一体に低速ロッカアーム４３が回動する。その結果、吸気弁４は、低速ロッカアーム４３を介して高速ロッカアームにより開閉駆動され、それによって、低リフトモードと比べて、より高いリフトでかつより長い開弁時間で開閉する。なお、エンジン３が後述する圧縮着火燃焼モードで運転されるときには、吸気リフト切換機構４１の動作モードが低リフトモードに設定される。
【００４２】
次に、吸気カム位相可変機構５０について説明する。この吸気カム位相可変機構５０は、吸気カムシャフト５のクランクシャフト３ｄに対する相対的な位相（以下「吸気カム位相」という）ＣＡＩＮを無段階に進角側または遅角側に変更するものであり、吸気カムシャフト５の吸気スプロケット側の端部に設けられている。図５に示すように、吸気カム位相可変機構５０は、ハウジング５１、３枚羽根式のベーン５２、油圧ポンプ５３および吸気カム位相電磁弁５４などを備えている。
【００４３】
このハウジング５１は、吸気カムシャフト５上の吸気スプロケットと一体に構成されており、互いに等間隔に形成された３つの隔壁５１ａを備えている。ベーン５２は、吸気カムシャフト５の吸気スプロケット側の端部に同軸に取り付けられ、吸気カムシャフト５から外方に放射状に延びているとともに、ハウジング５１内に回転可能に収容されている。また、ハウジング５１では、隔壁５１ａとベーン５２との間に、３つの進角室５５および３つの遅角室５６が形成されている。
【００４４】
油圧ポンプ５３は、クランクシャフト３ｄに連結された機械式のものであり、クランクシャフト３ｄが回転すると、それに伴って、エンジン３のオイルパン３ｅに蓄えられた潤滑用のオイルを、油路５７ｃを介して吸い込むとともに、これを昇圧した状態で、油路５７ｃを介して吸気カム位相電磁弁５４に供給する。
【００４５】
吸気カム位相電磁弁５４は、スプール弁機構５４ａおよびソレノイド５４ｂを組み合わせたものであり、進角油路５７ａおよび遅角油路５７ｂを介して、進角室５５および遅角室５６にそれぞれ接続されているとともに、油圧ポンプ５３から供給された油圧Ｐｏｉｌを、進角油圧Ｐａｄおよび遅角油圧Ｐｒｔとして、進角室５５および遅角室５６にそれぞれ出力する。吸気カム位相電磁弁５４のソレノイド５４ｂは、ＥＣＵ２に電気的に接続されており、ＥＣＵ２からの後述する吸気位相制御入力Ｕ＿ＣＡＩＮにより、スプール弁機構５４ａのスプール弁体を所定の移動範囲内で移動させることで、進角油圧Ｐａｄおよび遅角油圧Ｐｒｔをいずれも変化させる。
【００４６】
以上の吸気カム位相可変機構５０では、油圧ポンプ５３の動作中、吸気カム位相電磁弁５４が吸気位相制御入力Ｕ＿ＣＡＩＮに応じて作動することにより、進角油圧Ｐａｄが進角室５５に、遅角油圧Ｐｒｔが遅角室５６にそれぞれ供給され、それにより、ベーン５２とハウジング５１との間の相対的な位相が進角側または遅角側に変更される。その結果、前述した吸気カム位相ＣＡＩＮが、所定の最遅角値と所定の最進角値との間で連続的に変化し、それにより、吸気弁４のバルブタイミングは、図６に実線で示す最遅角タイミングと、図６に２点鎖線で示す最進角タイミングとの間で無段階に変更される。
【００４７】
なお、この吸気カム位相可変機構５０には、図示しないロック機構が設けられており、このロック機構により、吸気カム位相ＣＡＩＮが吸気位相制御入力Ｕ＿ＣＡＩＮに対応する値に保持される。さらに、油圧ポンプ５３からの供給油圧が低いとき、吸気位相制御入力Ｕ＿ＣＡＩＮが後述するように値０に設定されているとき、または断線などによりＵ＿ＣＡＩＮが吸気カム位相電磁弁５４に入力されないときには、ロック機構により、吸気カム位相可変機構５０による吸気カム位相ＣＡＩＮの変更が禁止され、吸気カム位相ＣＡＩＮが所定の故障時用値に保持される。
【００４８】
一方、吸気カムシャフト５の吸気カム位相可変機構５０と反対側の端部には、吸気カム角センサ２７（図２参照）が設けられている。この吸気カム角センサ２７は、例えばマグネットロータおよびＭＲＥピックアップで構成されており、吸気カムシャフト５の回転に伴い、パルス信号であるＩＮＣＡＭ信号を所定のカム角（例えば１゜）ごとにＥＣＵ２に出力する。ＥＣＵ２は、このＩＮＣＡＭ信号および前述したＣＲＫ信号に基づき、吸気カム位相ＣＡＩＮを算出する。
【００４９】
次に、前述した排気側動弁機構６０について説明する。この排気側動弁機構６０は、図７に示すように、排気カムシャフト８、排気カム９、排気リフト可変機構７０および排気カム位相可変機構９０などを備えている。
【００５０】
この排気リフト可変機構７０は、クランクシャフト３ｄの回転に伴う排気カムシャフト８の回転により排気弁７を開閉駆動するとともに、排気リフトを値０と所定の最大値ＬＥＸＭＡＸ（図１０参照）との間で無段階に変更するものであり、図８〜９に示すように、コントロールシャフト７１およびロッカアームシャフト７２と、これらのシャフト７１，７２上に気筒３ａ毎に設けられたロッカアーム機構７３と、これらのロッカアーム機構７３を同時に駆動する排気リフトアクチュエータ８０などを備えている。
【００５１】
コントロールシャフト７１は、回動軸部７１ａ、ホルダ部７１ｂおよび偏心軸部７１ｃを一体に組み立てたものであり、排気カムシャフト８に沿って延び、回動軸部７１ａがシリンダヘッド３ｃに回動自在に取り付けられているとともに、その一端部が排気リフトアクチュエータ８０に連結されている。
【００５２】
一方、各ロッカアーム機構７３は、上下のロッカアーム７４，７５を組み合わせたものであり、この上ロッカアーム７４は、一対のリンク７４ａ，７４ａ、ローラ軸７４ｂ、ローラ７４ｃおよび一対のコイルばね７４ｄ，７４ｄを備えている。ローラ軸７４ｂは、その両端部がリンク７４ａ，７４ａの一端部にそれぞれ取り付けられているとともに、リンク７４ａ，７４ａにより回転自在に支持されている。また、ローラ７４ｃは、このローラ軸７４ｂ上に回転自在に設けられている。
【００５３】
また、各リンク７４ａの他端部は、コントロールシャフト７１の偏心軸部７１ｃに回動自在に取り付けられているとともに、コイルばね７４ｄを介してホルダ部７１ｂに連結されている。リンク７４ａでは、このコイルばね７４ｄの付勢力により、ローラ７４ｃが排気カム９のカム面に当接するとともに、ローラ７４ｃが排気カム９のカム面のベース円部に当接しているときには、ローラ軸７４ｂは、その軸心が回動軸部７１ａの軸線上に位置するような原点位置（図７に示す位置）に保持される。
【００５４】
一方、下ロッカアーム７５は、その一端部がロッカアームシャフト７２に回動自在に支持され、他端部にはアジャストボルト７５ａ，７５ａが取り付けられている。各アジャストボルト７５ａは、下ロッカアーム７５が図７に示す閉弁位置にある場合には、排気弁７を閉弁状態に保持するとともに、下ロッカアーム７５がロッカアームシャフト７２を中心として閉弁位置から下方に回動すると、バルブスプリング７ｅの付勢力に抗しながら、ステム７ａを下方に駆動し、排気弁７を開放する。
【００５５】
また、下ロッカアーム７５は、上方に突出する一対の案内部７５ｂ，７５ｂを備えている。各案内部７５ｂは、その上面が上ロッカアーム７４のローラ軸７４ｂを案内する案内面７５ｃになっており、バルブスプリング７ｅの付勢力により、この案内面７５ｃを介してローラ軸７４ｂに当接している。この案内面７５ｃは、リンク７４ａが図７に実線で示す閉弁位置にある場合の偏心軸部７１ｃを中心とする円弧と一致するような、下方に凸の円弧形状を有している。また、案内部７５ｂとローラ軸７４ｂが互いに当接している状態では、ローラ７４ｃは、案内部７５ｂ，７５ｂ間に位置するとともに、下ロッカアーム７５に当接することなく、排気カム９のみに当接する。
【００５６】
一方、排気リフトアクチュエータ８０は、モータおよび減速ギヤ機構（いずれも図示せず）などを組み合わせたものであり、ＥＣＵ２に電気的に接続されているとともに、後述するように、ＥＣＵ２により駆動されると、コントロールシャフト７１をその回動軸部７１ａを中心として回動させる。このコントロールシャフト７１の回動に伴い、リンク７４ａもローラ軸７４ｂを中心として回動する。
【００５７】
次に、以上のように構成された排気リフト可変機構７０の動作について説明する。この排気リフト可変機構７０では、ＥＣＵ２からの後述する排気リフト制御入力Ｕ＿ＳＡＡＥＸにより、排気リフトアクチュエータ８０が駆動されると、コントロールシャフト７１が回動する。その際、図示しないストッパにより、コントロールシャフト７１の回動角ＳＡＡＥＸは所定範囲内に規制され、それにより、リンク７４ａの回動範囲も、例えばローラ軸７４ｂが前述した原点位置にある場合、図７に実線で示すゼロリフト位置と図７に２点鎖線で示す最大リフト位置との間に規制される。
【００５８】
このようにリンク７４ａがゼロリフト位置にある場合、排気カム９が回転し、そのカムノーズによりローラ７４ｃがロッカアームシャフト７２側に押されると、リンク７４ａは偏心軸部７１ｃを中心として、図７の時計回りに回動する。その際、前述したように、下ロッカアーム７５の案内面７５ｃが偏心軸部７１ｃを中心とする円弧と一致するような形状を有しているので、バルブスプリング７ｅの付勢力により、下ロッカアーム７５は図７に示す閉弁位置に保持される。それにより、排気リフトは値０に保持され、排気弁７は閉弁状態に保持される。
【００５９】
一方、リンク７４ａがゼロリフト位置から最大リフト位置側の位置まで回動し、その位置に保持されている状態では、排気カム９の回転により、リンク７４ａが偏心軸部７１ｃを中心として図７の時計回りに回動すると、下ロッカアーム７５は、バルブスプリング７ｅの付勢力に抗しながら、図７に示す閉弁位置から下方に回動し、排気弁７を開放する。その際、下ロッカアーム７５の回動量すなわち排気リフトは、リンク７４ａが最大リフト位置側に近い位置にあるほど、より大きくなる。
【００６０】
以上の理由により、排気弁７は、リンク７４ａが最大リフト位置側に近い位置にあるほど、より大きなリフトで開弁し、具体的には、排気カム９の回転中、排気弁７は、リンク７４ａが最大リフト位置にあるときには、図１０に実線で示すバルブリフト曲線に従って開弁し、排気リフトは、その最大値ＬＥＸＭＡＸを示す。したがって、この排気リフト可変機構７０では、排気リフトアクチュエータ８０を介して、リンク７４ａをゼロリフト位置と最大リフト位置との間で回動させることにより、排気リフトを値０と所定の最大値ＬＥＸＭＡＸとの間で無段階に変化させることができる。
【００６１】
なお、この排気リフト可変機構７０には、図示しないロック機構が設けられており、このロック機構により、排気リフト制御入力Ｕ＿ＳＡＡＥＸが後述するように値０に設定されているとき、または断線などにより排気リフト制御入力Ｕ＿ＳＡＡＥＸが排気リフトアクチュエータ８０に入力されないときには、コントロールシャフト７１の回動角すなわち排気リフトが所定の故障時用値に保持される。
【００６２】
また、排気リフト可変機構７０には、回動角センサ２８が設けられており（図２参照）、この回動角センサ２８は、コントロールシャフト７１の回動角ＳＡＡＥＸを検出して、それを表す検出信号をＥＣＵ２に出力する。
【００６３】
次に、排気カム位相可変機構９０について説明する。この排気カム位相可変機構９０は、排気カムシャフト８のクランクシャフト３ｄに対する相対的な位相（以下「排気カム位相」という）ＣＡＥＸを無段階に進角側または遅角側に変更するものであり、排気カムシャフト８の排気スプロケット側の端部に設けられている。
【００６４】
この排気カム位相可変機構９０は、前述した吸気カム位相可変機構５０と同様に構成されているので、その詳細な説明は省略するが、排気カム位相電磁弁９１などを備えており、ＥＣＵ２からの後述する排気位相制御入力Ｕ＿ＣＡＥＸにより排気カム位相電磁弁９１が駆動されると、排気カム位相ＣＡＥＸを、所定の最遅角値と所定の最進角値との間で連続的に変化させる。それにより、排気弁７のバルブタイミングは、図６に実線で示す最遅角タイミングと、図６に２点鎖線で示す最進角タイミングとの間で無段階に変更される。
【００６５】
なお、この排気カム位相可変機構９０には、図示しないロック機構が設けられており、このロック機構により、排気カム位相ＣＡＥＸが排気位相制御入力Ｕ＿ＣＡＥＸに対応する値に保持される。さらに、排気位相制御入力Ｕ＿ＣＡＥＸが後述するように値０に設定されているとき、または断線などにより排気位相制御入力Ｕ＿ＣＡＥＸが排気カム位相電磁弁９１に入力されないときには、ロック機構により、排気カム位相可変機構９０による排気カム位相ＣＡＥＸの変更が禁止され、排気カム位相ＣＡＥＸが所定の故障時用値に保持される。
【００６６】
一方、排気カムシャフト８の排気カム位相可変機構９０と反対側の端部には、排気カム角センサ２９（図２参照）が設けられている。この排気カム角センサ２９は、例えばマグネットロータおよびＭＲＥピックアップで構成されており、排気カムシャフト８の回転に伴い、パルス信号であるＥＸＣＡＭ信号を所定のカム角（例えば１゜）ごとにＥＣＵ２に出力する。ＥＣＵ２は、このＥＸＣＡＭ信号および前述したＣＲＫ信号に基づき、排気カム位相ＣＡＥＸを算出する。
【００６７】
以上のように、このエンジン３では、吸気側動弁機構４０により、吸気弁４のバルブタイミングを無段階に変更できるとともに、排気側動弁機構６０により、排気弁７のリフトおよびバルブタイミングを無段階に変更でき、それにより、燃焼行程後も気筒３ａ内に残留する既燃ガスの量（以下「内部ＥＧＲ量」という）を、２つの動弁機構４０，６０により自在に変更できるように構成されている。この既燃ガスは、排気還流機構１６により還流される排ガスよりも高い温度を示す。なお、以下の説明では、２つの動弁機構４０，６０により既燃ガスを気筒３ａ内に残留させることを「内部ＥＧＲ」という。
【００６８】
なお、本実施形態では、吸気カム位相可変機構５０、排気リフト可変機構７０および排気カム位相可変機構９０が高温ガス還流装置に相当し、気筒３ａ内に残留する既燃ガスが高温ガスに相当する。
【００６９】
さらに、ＥＣＵ２には、大気圧センサ３０、アクセル開度センサ３１およびスロットル弁開度センサ３２が接続されている。この大気圧センサ３０は、半導体圧力センサで構成されており、大気圧ＰＡを検出して、それを表す検出信号をＥＣＵ２に出力する。
【００７０】
また、アクセル開度センサ３１は、図示しないアクセルペダルの操作量であるアクセル開度ＡＰを検出して、それを表す検出信号をＥＣＵ２に出力する。なお、本実施形態では、アクセル開度ＡＰが第１、第２および第３の運転状態パラメータに相当する。さらに、スロットル弁開度センサ３２は、ポテンショメータで構成され、スロットル弁１３ｂの開度（以下「スロットル弁開度」という）ＴＨを検出して、それを表す検出信号をＥＣＵ２に出力する。
【００７１】
一方、ＥＣＵ２は、ＣＰＵ、ＲＡＭ、ＲＯＭおよびＩ／Ｏインターフェース（いずれも図示せず）などからなるマイクロコンピュータで構成されており、前述した各種のセンサ２０〜３２の検出信号などに応じて、エンジン３の運転状態を判別するとともに、各種の制御処理を実行する。
【００７２】
具体的には、ＥＣＵ２は、エンジン３の運転状態に応じて、後述するように、燃料噴射制御処理、ＥＧＲ制御処理、点火時期制御処理および可変機構制御処理などを実行する。これらの制御処理により、エンジン３は、所定の圧縮着火燃焼領域では、混合気を火花点火することなく圧縮自着火により燃焼させる圧縮着火燃焼モードで運転され、それ以外の火花点火燃焼領域では、混合気を火花点火により燃焼させる火花点火燃焼モードで運転される。
【００７３】
なお、本実施形態では、ＥＣＵ２がＥＧＲ率パラメータ算出手段、目標値設定手段、フィードバック補正値算出手段、ガス量割合設定手段、制御手段および学習値算出手段に相当する。
【００７４】
以下、図１１を参照しながら、ＥＣＵ２により、ＴＤＣ信号の発生に同期する制御周期で実行される制御処理について説明する。この処理では、まず、ステップ１（図では「Ｓ１」と略す。以下同じ）で、燃料噴射制御処理を実行する。この燃料噴射制御処理は、燃料噴射弁１０を介して気筒３ａ内に噴射すべき燃料量（以下「燃料噴射量」という）ＴＯＵＴを算出するものであり、その詳細については後述する。なお、以下の説明において算出される各種の値は、ＥＣＵ２のＲＡＭ内に記憶されるものとする。
【００７５】
次いで、ステップ２で、ＥＧＲ制御処理を実行する。このＥＧＲ制御処理は、排気還流機構１６を介して外部ＥＧＲ量を制御するための、目標ＥＧＲリフトＬＣＭＤを算出するとともに、排気側動弁機構６０および吸気側動弁機構４０を介して内部ＥＧＲ量を制御するための、目標回動角ＳＡＡＥＸＣＭＤ、目標排気カム位相ＣＡＥＸＣＭＤおよび目標吸気カム位相ＣＡＩＮＣＭＤを算出するものであり、その詳細については後述する。
【００７６】
次に、ステップ３で、点火時期制御処理を実行した後、本処理を終了する。この点火時期制御処理では、その詳細についてはここでは省略するが、火花点火燃焼モードでは、点火時期がエンジン負荷などに応じて算出され、圧縮着火燃焼モードでは、点火時期の算出が中止される。その結果、火花点火燃焼モードでは、点火プラグ１１による点火が実行される一方、圧縮着火燃焼モードでは、点火プラグ１１による点火が停止される。
【００７７】
以下、図１２を参照しながら、前述した燃料噴射制御処理について説明する。この処理では、まず、ステップ１０で、エンジン回転数ＮＥおよびアクセル開度ＡＰに応じて、図１３に示すマップを検索することにより、要求トルクＰＭＣＭＤを算出する。同図の記号ｉ，ｊは、正の整数を示しており、この点は以下の説明においても同様である。このマップでは、要求トルクＰＭＣＭＤは、エンジン回転数ＮＥが高いほど、またはアクセル開度ＡＰが大きいほど、より大きな値に設定されている。これは、エンジン回転数ＮＥが高いほど、またはアクセル開度ＡＰが大きいほど、エンジン負荷がより大きい状態になるので、それに対応するためである。
【００７８】
次いで、ステップ１１に進み、基本燃料噴射量ＴＩＭを算出する。この基本燃料噴射量ＴＩＭは、具体的には図１４に示すように算出される。
【００７９】
すなわち、まず、ステップ３０において、吸入新気量ＧＡＩＲＣＹＬを算出する。この吸入新気量ＧＡＩＲＣＹＬは、気筒３ａ内に吸入されたと推定される新気量であり、エアフローセンサ２２により検出された新気流量ＧＩＮおよびエンジン回転数ＮＥなどに基づいて算出される。
【００８０】
次いで、ステップ３１に進み、上記ステップ３０で算出した吸入新気量ＧＡＩＲＣＹＬに応じて、図１５に示すマップを検索することにより、第１基本燃料噴射量ＴＩＭＡＦＭＸを算出する。このマップでは、吸入新気量ＧＡＩＲＣＹＬが大きいほど、第１基本燃料噴射量ＴＩＭＡＦＭＸがより大きい値に設定されている。これは、吸入新気量ＧＡＩＲＣＹＬが大きいほど、エンジン３に要求される出力がより大きくなることによる。
【００８１】
次に、ステップ３２に進み、吸気リフトフラグＦ＿ＶＴＥＣが「１」であるか否かを判別する。この吸気リフトフラグＦ＿ＶＴＥＣは、エンジン３の運転領域が吸気リフト切換機構４１の動作モードを前述した高リフトモードに設定すべき領域にあるときには「１」に設定され、低リフトモードに設定すべき領域にあるときには「０」に設定される。なお、図中では、低リフトモードを「ＬＯ．ＭＤ」と表記し、高リフトモードを「ＨＩ．ＭＤ」と表記する。
【００８２】
ステップ３２の判別結果がＮＯで、吸気リフト切換機構４１の動作モードを低リフトモードに設定すべき運転領域であるときには、ステップ３３に進み、エンジン回転数ＮＥおよび吸気カム位相ＣＡＩＮに応じて、図示しないマップを検索することにより、低リフトモード用の燃料補正係数ＡＴＩを算出する。
【００８３】
次いで、ステップ３４で、エンジン回転数ＮＥおよび吸気カム位相ＣＡＩＮに応じて、図示しないマップを検索することにより、低リフトモード用の燃料補正項ＢＴＩを算出する。
【００８４】
一方、ステップ３２の判別結果がＹＥＳで、吸気リフト切換機構４１の動作モードを高リフトモードに設定すべき運転領域であるときには、ステップ３５に進み、エンジン回転数ＮＥおよび吸気カム位相ＣＡＩＮに応じて、図示しないマップを検索することにより、高リフトモード用の燃料補正係数ＡＴＩを算出する。
【００８５】
次いで、ステップ３６で、エンジン回転数ＮＥおよび吸気カム位相ＣＡＩＮに応じて、図示しないマップを検索することにより、高リフトモード用の燃料補正項ＢＴＩを算出する。
【００８６】
ステップ３４または３６に続くステップ３７では、吸気管内圧および燃料補正係数の積と燃料補正項との和（ＰＢＡ・ＡＴＩ＋ＢＴＩ）を、第２基本燃料噴射量ＴＩＭＢＳＸとして設定する。
【００８７】
次いで、ステップ３８に進み、エンジン始動フラグＦ＿ＥＮＧＳＴＡＲＴが「１」であるか否かを判別する。このエンジン始動フラグＦ＿ＥＮＧＳＴＡＲＴは、エンジン始動制御中すなわちクランキング中であるときには「１」に、それ以外のときには「０」にそれぞれ設定される。この判別結果がＮＯで、エンジン始動済みであるときには、ステップ３９に進み、基本燃料噴射量ＴＩＭを第２基本燃料噴射量ＴＩＭＢＳＸに設定した後、本処理を終了する。
【００８８】
一方、ステップ３８の判別結果がＹＥＳで、エンジン始動制御中であるときには、ステップ４０で、エンジン水温ＴＷに応じて、図示しないマップを検索することにより、始動時用の基本燃料噴射量ＴＩＭＳＴＸを算出する。次いで、ステップ４１で、基本燃料噴射量ＴＩＭを始動時用の基本燃料噴射量ＴＩＭＳＴＸに設定した後、本処理を終了する。
【００８９】
図１２に戻り、ステップ１１で以上のように基本燃料噴射量ＴＩＭを算出した後、ステップ１２に進み、実新気率ＫＥＧＲを算出する。この実新気率ＫＥＧＲは、気筒３ａ内に吸入された新気量と総ガス量（新気量＋内部ＥＧＲ量＋外部ＥＧＲ量）との比率に相当するとともに、値１．０からこの実新気率ＫＥＧＲを減算した値（１．０−ＫＥＧＲ）が、総還流ガス量（内部ＥＧＲ量＋外部ＥＧＲ量）と総ガス量との比率すなわちＥＧＲ率に相当する。すなわち、実新気率ＫＥＧＲは、ＥＧＲ率も表すものであり、本実施形態では、ＥＧＲ率パラメータに相当する。この実新気率ＫＥＧＲは、具体的には図１６に示すように算出される。
【００９０】
すなわち、まず、ステップ５０で、下式（１）により、実新気率ＫＥＧＲの今回算出値ＫＥＧＲＯＲＧを算出する。ここで、ＫＴＡは、吸気温補正係数であり、吸気温ＴＡに応じて、図示しないマップを検索することにより算出される。
【数１】
0004463179.tif 000002
【００９１】
次いで、ステップ５１に進み、今回算出値ＫＥＧＲＯＲＧが値１．０以上であるか否かを判別する。この判別結果がＮＯのときには、後述するステップ５３に進む。一方、この判別結果がＹＥＳのときには、ステップ５２で、今回算出値ＫＥＧＲＯＲＧを値１．０に設定した後、ステップ５３に進む。
【００９２】
ステップ５１または５２に続くステップ５３では、ＲＡＭ内に記憶されているｍ（ｍは正の整数）個の今回算出値ＫＥＧＲＯＲＧのバッファ値ＫＥＧＲ＿ＴＭＰｎ（ｎ＝１〜ｍ）を更新する。具体的には、ＲＡＭ内のバッファ値の各々を、燃料噴射制御における１制御サイクル分、前の演算値としてセットする（例えば、バッファ値の今回値ＫＥＧＲ＿ＴＭＰ１を前回値ＫＥＧＲ＿ＴＭＰ２にシフトさせ、前回値ＫＥＧＲ＿ＴＭＰ２を前々回値ＫＥＧＲ＿ＴＭＰ３にシフトさせる）とともに、ステップ５１または５２で算出した今回算出値ＫＥＧＲＯＲＧをバッファ値の今回値ＫＥＧＲ＿ＴＭＰ１としてセットする。
【００９３】
次いで、ステップ５４に進み、下式（２）により、バッファ値ＫＥＧＲ＿ＴＭＰｎの移動平均値ＫＥＧＲ＿ＡＶＥを算出する。
【数２】
0004463179.tif 000003
【００９４】
次に、ステップ５５で、実新気率ＫＥＧＲを上記ステップ５４で算出した移動平均値ＫＥＧＲ＿ＡＶＥに設定した後、本処理を終了する。
【００９５】
図１２に戻り、ステップ１２で以上のように実新気率ＫＥＧＲを算出した後、ステップ１３に進み、内部ＥＧＲ目標値ＫＥＧＲＣＭＤＩＮおよび外部ＥＧＲ目標値ＫＥＧＲＣＭＤＥＸを算出する。これらの値ＫＥＧＲＣＭＤＩＮ，ＫＥＧＲＣＭＤＥＸは、具体的には図１７に示すように算出される。
【００９６】
すなわち、まず、ステップ６０で、要求トルクＰＭＣＭＤおよびエンジン回転数ＮＥに応じて、図１８に示すマップを検索することにより、実新気率ＫＥＧＲの目標値ＫＥＧＲＣＭＤを算出する。なお、本実施形態では、実新気率ＫＥＧＲの目標値ＫＥＧＲＣＭＤがＥＧＲ率パラメータの目標値に相当する。
【００９７】
次いで、ステップ６１に進み、要求トルクＰＭＣＭＤおよびエンジン回転数ＮＥに応じて、図１９に示すマップを検索することにより、内部ＥＧＲ割合ＥＧＲＤＩＶＩＮを算出する。その後、ステップ６２で、外部ＥＧＲ割合ＥＧＲＤＩＶＥＸを、値１から内部ＥＧＲ割合ＥＧＲＤＩＶＩＮを減算した値に設定する。なお、本実施形態では、内部ＥＧＲ割合ＥＧＲＤＩＶＩＮが高温ガス量の総還流ガス量に対する割合に相当し、外部ＥＧＲ割合ＥＧＲＤＩＶＥＸが低温ガス量の総還流ガス量に対する割合に相当する。
【００９８】
次に、ステップ６３で、内部ＥＧＲ割合ＥＧＲＤＩＶＩＮおよび目標値ＫＥＧＲＣＭＤに基づき、下式（３）により、内部ＥＧＲ目標値ＫＥＧＲＣＭＤＩＮを算出する。
【数３】
0004463179.tif 000004
【００９９】
この内部ＥＧＲ目標値ＫＥＧＲＣＭＤＩＮは、値１から、総ＥＧＲ量における内部ＥＧＲ量の割合の目標値を減算した値に相当し、言い換えれば、外部ＥＧＲ量が値０に制御されていると仮定した場合において、内部ＥＧＲ量の制御により、気筒３ａ内に吸入すべき新気量の割合の目標値に相当する。
【０１００】
次いで、ステップ６４で、外部ＥＧＲ割合ＥＧＲＤＩＶＥＸおよび目標値ＫＥＧＲＣＭＤに基づき、下式（４）により、外部ＥＧＲ目標値ＫＥＧＲＣＭＤＥＸを算出した後、本処理を終了する。
【数４】
0004463179.tif 000005
【０１０１】
この外部ＥＧＲ目標値ＫＥＧＲＣＭＤＥＸは、値１から、総ＥＧＲ量における外部ＥＧＲ量の割合の目標値を減算した値に相当し、言い換えれば、内部ＥＧＲ量が値０に制御されていると仮定した場合において、外部ＥＧＲ量の制御により、気筒３ａ内に吸入すべき新気量の割合の目標値に相当する。
【０１０２】
図１２に戻り、ステップ１３で以上のように２つの目標値ＫＥＧＲＣＭＤＩＮ，ＫＥＧＲＣＭＤＥＸを算出した後、ステップ１４に進み、目標空燃比ＫＣＭＤを算出する。この目標空燃比ＫＣＭＤは、具体的には図２０に示すように算出される。
【０１０３】
すなわち、まず、ステップ７０で、要求トルクＰＭＣＭＤおよびエンジン回転数ＮＥに応じて、図２１に示すマップを検索することにより、目標空燃比のマップ値ＫＣＭＤＭＡＰを算出する。
【０１０４】
次いで、ステップ７１に進み、外部ＥＧＲ過小故障フラグＦＳ＿ＥＸＥＧＲＤＮが「１」であるか否かを判別する。この判別結果がＹＥＳで、ＥＧＲ制御弁１６ｂの故障により外部ＥＧＲ量が過小な状態にあるときには、ステップ７２に進み、目標空燃比ＫＣＭＤを、マップ値と実新気率の目標値との積ＫＣＭＤＭＡＰ・ＫＥＧＲＣＭＤに設定した後、本処理を終了する。
【０１０５】
一方、ステップ７１の判別結果がＮＯのときには、ステップ７３に進み、目標空燃比ＫＣＭＤをマップ値ＫＣＭＤＭＡＰに設定した後、本処理を終了する。
【０１０６】
図１２に戻り、ステップ１４で以上のように目標空燃比ＫＣＭＤを算出した後、ステップ１５に進み、空燃比補正係数ＫＡＦを算出する。この空燃比補正係数ＫＡＦは、具体的には、以下に述べるように算出される。
【０１０７】
すなわち、空燃比フィードバック制御の実行条件が成立しているときには、空燃比補正係数ＫＡＦは、検出空燃比ＫＡＣＴを目標空燃比ＫＣＭＤに収束させるように、図示しない所定のフィードバック制御アルゴリズム（例えば、ＰＩＤ制御アルゴリズムや応答指定型制御アルゴリズムなど）により算出される。一方、空燃比フィードバック制御の実行条件が不成立であるときには、空燃比補正係数ＫＡＦは、値１に設定される。
【０１０８】
次いで、ステップ１６に進み、総補正係数ＫＴＯＴＡＬおよびバッテリ電圧補正項ＴＩＶＢを算出する。この総補正係数ＫＴＯＴＡＬは、各種の運転パラメータ（例えば、吸気温ＴＡ、エンジン水温ＴＷおよび大気圧ＰＡなど）に応じて各種のマップを検索することで、各種の補正係数を算出するとともに、これらの各種の補正係数を互いに乗算することにより算出される。また、バッテリ電圧補正項ＴＩＶＢは、バッテリ電圧に応じて、図示しないマップを検索することにより、算出される。
【０１０９】
次に、ステップ１７で、以上のように算出した各種の値に基づき、下式（５）により、燃料噴射量ＴＯＵＴを算出した後、本処理を終了する。それにより、燃料噴射量ＴＯＵＴに応じた開弁タイミングおよび開弁時間で、燃料噴射弁１０が制御される。
【数５】
0004463179.tif 000006
【０１１０】
以下、図２２を参照しながら、前述したＥＧＲ制御処理について説明する。本処理では、まず、ステップ８０において、フィードバック補正係数（以下「ＦＢ補正係数」という）ＫＥＧＲＦＢの算出処理を実行する。このＦＢ補正係数ＫＥＧＲＦＢは、実新気率ＫＥＧＲを目標値ＫＥＧＲＣＭＤに収束させるための値であり、その具体的な内容については後述するが、この処理では、ＦＢ補正係数ＫＥＧＲＦＢに加えて、その内部ＥＧＲ用学習値ＫＥＧＲＲＥＦＩＮおよび外部ＥＧＲ用学習値ＫＥＧＲＲＥＦＥＸが算出される。なお、本実施形態では、ＦＢ補正係数ＫＥＧＲＦＢがフィードバック補正値に相当し、内部ＥＧＲ用学習値ＫＥＧＲＲＥＦＩＮが高温ガス用のフィードバック補正値の学習値に相当し、外部ＥＧＲ用学習値ＫＥＧＲＲＥＦＥＸが低温ガス用のフィードバック補正値の学習値に相当する。
【０１１１】
次に、ステップ８１で、前述した内部ＥＧＲ割合ＥＧＲＤＩＶＩＮが値０．５以上であるか否かを判別する。この判別結果がＹＥＳのとき、すなわち内部ＥＧＲ量が外部ＥＧＲ量以上のときには、ステップ８２で、前述した内部ＥＧＲ目標値とＦＢ補正係数の積ＫＥＧＲＣＭＤＩＮ・ＫＥＧＲＦＢを、補正後内部ＥＧＲ率ＫＥＧＲＭＡＰＩＮとして設定する。
【０１１２】
一方、ステップ８１の判別結果がＮＯで、内部ＥＧＲ量が外部ＥＧＲ量よりも小さいときには、ステップ８３で、内部ＥＧＲ目標値とＦＢ補正係数の内部ＥＧＲ用学習値との積ＫＥＧＲＣＭＤＩＮ・ＫＥＧＲＲＥＦＩＮを、補正後内部ＥＧＲ率ＫＥＧＲＭＡＰＩＮとして設定する。
【０１１３】
ステップ８２または８３に続くステップ８４では、前述した吸気リフトフラグＦ＿ＶＴＥＣが「１」であるか否かを判別する。この判別結果がＮＯで、吸気リフト切換機構４１が低リフトモードに設定されているときには、ステップ８５で、上記ステップ８２または８３で算出した補正後内部ＥＧＲ率ＫＥＧＲＭＡＰＩＮとエンジン回転数ＮＥに応じて、図２３に示すマップを検索することにより、低リフトモード用の目標回動角ＳＡＡＥＸＣＭＤを算出する。この目標回動角ＳＡＡＥＸＣＭＤは、後述するように、回動角ＳＡＡＥＸの目標値として用いられる。
【０１１４】
次いで、ステップ８６に進み、補正後内部ＥＧＲ率ＫＥＧＲＭＡＰＩＮおよびエンジン回転数ＮＥに応じて、図２４に示すマップを検索することにより、低リフトモード用の目標排気カム位相ＣＡＥＸＣＭＤを算出する。この目標排気カム位相ＣＡＥＸＣＭＤは、後述するように、排気カム位相ＣＡＥＸの目標値として用いられる。
【０１１５】
次に、ステップ８７で、補正後内部ＥＧＲ率ＫＥＧＲＭＡＰＩＮおよびエンジン回転数ＮＥに応じて、図２５に示すマップを検索することにより、低リフトモード用の目標吸気カム位相ＣＡＩＮＣＭＤを算出する。この目標吸気カム位相ＣＡＩＮＣＭＤは、後述するように、吸気カム位相ＣＡＩＮの目標値として用いられる。
【０１１６】
一方、前述したステップ８４の判別結果がＹＥＳで、吸気リフト切換機構４１が高リフトモードに設定されているときには、ステップ８８〜９０において、要求トルクＰＭＣＭＤおよびエンジン回転数ＮＥに応じて、それぞれの所定のマップ（図示せず）を検索することにより、高リフトモード用の目標回動角ＳＡＡＥＸＣＭＤ、目標排気カム位相ＣＡＥＸＣＭＤおよび目標吸気カム位相ＣＡＩＮＣＭＤを算出する。
【０１１７】
前述したステップ８７または９０に続くステップ９１では、外部ＥＧＲ割合ＥＧＲＤＩＶＥＸが値０．５よりも大きいか否かを判別する。この判別結果がＹＥＳで、外部ＥＧＲ量が内部ＥＧＲ量よりも大きいときには、ステップ９２に進み、前述した外部ＥＧＲ目標値とＦＢ補正係数の積ＫＥＧＲＣＭＤＥＸ・ＫＥＧＲＦＢを、補正後外部ＥＧＲ率ＫＥＧＲＭＡＰＥＸとして設定する。
【０１１８】
一方、上記ステップ９１の判別結果がＮＯで、外部ＥＧＲ量が内部ＥＧＲ量以下のときには、ステップ９３で、外部ＥＧＲ目標値とＦＢ補正係数の外部ＥＧＲ用学習値との積ＫＥＧＲＣＭＤＥＸ・ＫＥＧＲＲＥＦＥＸを、補正後外部ＥＧＲ率ＫＥＧＲＭＡＰＥＸとして設定する。
【０１１９】
次いで、ステップ９４において、ステップ９２または９３で算出した補正後外部ＥＧＲ率ＫＥＧＲＭＡＰＥＸと吸気管内ゲージ圧ＨＰＢＧＡに応じて、図２６に示すマップを検索することにより、目標ＥＧＲリフトＬＣＭＤを算出した後、本処理を終了する。この吸気管内ゲージ圧ＨＰＢＧＡは、吸気管内圧ＰＢＡおよび大気圧ＰＡに基づいて算出される。また、目標ＥＧＲリフトＬＣＭＤは、後述するように、ＥＧＲリフトＬＡＣＴの目標値として用いられる。
【０１２０】
以下、図２７および図２８を参照しながら、前述した図２２のステップ８０のＦＢ補正係数ＫＥＧＲＦＢの算出処理について説明する。本処理では、まず、ステップ１００において、空燃比フィードバックフラグＦ＿ＬＡＦＦＢ＝０、または、実新気率ＫＥＧＲの目標値ＫＥＧＲＣＭＤ＝１．０が成立しているか否かを判別する。
【０１２１】
この判別結果がＹＥＳのとき、すなわち、Ｆ＿ＬＡＦＦＢ＝０で、ＬＡＦセンサ２５の検出空燃比ＫＡＣＴに基づく空燃比フィードバック制御が実行されていないとき、またはＫＥＧＲＣＭＤ＝１．０で、内部ＥＧＲおよび外部ＥＧＲがともに停止中のときには、実新気率ＫＥＧＲのフィードバック制御領域にないとして、ステップ１１３に進み、ＦＢ補正係数ＫＥＧＲＦＢを値１．０に設定した後、本処理を終了する。
【０１２２】
一方、ステップ１００の判別結果がＮＯのとき、すなわち、空燃比フィードバック制御の実行中で、かつ内部ＥＧＲおよび外部ＥＧＲの少なくとも一方の実行中であるときには、以下のステップ１０１〜１０６において、ＦＢ補正係数ＫＥＧＲＦＢをＩ−ＰＤ制御アルゴリズムによって算出する。
【０１２３】
すなわち、まず、ステップ１０１で、エンジン回転数ＮＥおよび要求トルクＰＭＣＭＤに応じて、それぞれのマップ（図示せず）を検索することにより、Ｐ項ゲインＫＥＩＰＤＰ、Ｉ項ゲインＫＥＩＰＤＩおよびＤ項ゲインＫＥＩＰＤＤを算出する。
【０１２４】
次いで、ステップ１０２〜１０４において、ステップ１０１で算出したＰ項ゲインＫＥＩＰＤＰ、Ｉ項ゲインＫＥＩＰＤＩおよびＤ項ゲインＫＥＩＰＤＤを用い、下式（６）〜（８）により、Ｐ項ＫＥＧＲＦＢ＿Ｐ、Ｉ項ＫＥＧＲＦＢ＿ＩおよびＤ項ＫＥＧＲＦＢ＿Ｄをそれぞれ算出する。なお、下式（６）および下式（８）のＫＥＧＲＺ１は、ＦＢ補正係数の前回値を表しており、下式（８）のＫＥＧＲＺ２は、ＦＢ補正係数の前々回値を表している。
【数６】
0004463179.tif 000007
【数７】
0004463179.tif 000008
【数８】
0004463179.tif 000009
【０１２５】
次に、ステップ１０５で、ステップ１０２〜１０４で算出したＰ項ＫＥＧＲＦＢ＿Ｐ、Ｉ項ＫＥＧＲＦＢ＿ＩおよびＤ項ＫＥＧＲＦＢ＿Ｄを用い、下式（９）によって、Ｉ−ＰＤ項ＫＥＧＲＦＢ＿Ｓを算出する。
【数９】
0004463179.tif 000010
【０１２６】
次いで、ステップ１０６で、Ｉ−ＰＤ項とＦＢ補正係数の前回値との和ＫＥＧＲＦＢ＿Ｓ＋ＫＥＧＲＦＢ＿Ｚを、ＦＢ補正係数ＫＥＧＲＦＢとして設定する。
【０１２７】
その後、ステップ１０７，１０８において、ＦＢ補正係数ＫＥＧＲＦＢの内部ＥＧＲ用学習値ＫＥＧＲＲＥＦＩＮおよび外部ＥＧＲ用学習値ＫＥＧＲＲＥＦＥＸを算出するとともに、ＦＢ補正係数ＫＥＧＲＦＢのリミットチェック処理を行う。これらの具体的な処理については後述する。
【０１２８】
次に、図２８のステップ１０９に進み、上記ステップ１０７または１０８の処理で後述するようにして設定される、外部ＥＧＲ故障フラグＦＳ＿ＥＸＥＧＲＦＡＩＬ、内部ＥＧＲ故障フラグＦＳ＿ＩＮＥＧＲＦＡＩＬ、内部ＥＧＲ過大故障フラグＦＳ＿ＩＮＥＧＲＯおよび内部ＥＧＲ過小フラグＦＳ＿ＩＮＥＧＲＤＮのいずれかが「１」であるか否かを判別する。
【０１２９】
この判別結果がＮＯで、上記４つのフラグがいずれも「０」のときには、内部ＥＧＲおよび外部ＥＧＲがいずれも正常に行われているとして、ステップ１１０で、それを表すためにＥＧＲ正常フラグＦ＿ＥＧＲＯＫを「１」にセットする。
【０１３０】
一方、ステップ１０９の判別結果がＹＥＳで、上記４つのフラグのいずれかが「１」のときには、内部ＥＧＲおよび／または外部ＥＧＲが正常に行われていないとして、ステップ１１１で、それを表すためにＥＧＲ正常フラグＦ＿ＥＧＲＯＫを「０」にセットする。
【０１３１】
ステップ１１０または１１１に続くステップ１１２では、実新気率の前回値ＫＥＧＲＺ１を前々回値ＫＥＧＲＺ２に、実新気率ＫＥＧＲを前回値ＫＥＧＲＺ１に、ＦＢ補正係数ＫＥＧＲＦＢを前回値ＫＥＧＲＦＢ＿Ｚにそれぞれシフトする。その後、本処理を終了する。
【０１３２】
以下、図２９を参照しながら、前述した図２７のステップ１０７におけるＦＢ補正係数ＫＥＧＲＦＢの内部ＥＧＲ用学習値ＫＥＧＲＲＥＦＩＮおよび外部ＥＧＲ用学習値ＫＥＧＲＲＥＦＥＸの算出処理について説明する。
【０１３３】
この処理では、まず、ステップ１２０において、内部ＥＧＲ割合ＥＧＲＤＩＶＩＮが値１．０（第２の所定値）であるか否かを判別する。この判別結果がＹＥＳのとき、すなわち内部ＥＧＲのみが実行されているときには、ステップ１２１で、内部ＥＧＲ用学習値ＫＥＧＲＲＥＦＩＮを、下式（１０）の加重平均演算により算出する。
【数１０】
0004463179.tif 000011
ここで、ＫＥＧＲＲＥＦＩＮＺは、内部ＥＧＲ用学習値ＫＥＧＲＲＥＦＩＮの前回値、ＣＲＥＦＥＧＲＩＮは、値０と値１．０の間に設定される所定の重み係数である。
【０１３４】
次に、以下のステップ１２２〜１２７において、ステップ１２１で算出した内部ＥＧＲ用学習値ＫＥＧＲＲＥＦＩＮのリミットチェック処理を行う。すなわち、まず、ステップ１２２で、内部ＥＧＲ用学習値ＫＥＧＲＲＥＦＩＮが所定の下限値ＫＥＧＲＲＥＦＩＮＬＬ以下であるか否かを判別する。この判別結果がＮＯのときには、ステップ１２３に進み、内部ＥＧＲ用学習値ＫＥＧＲＲＥＦＩＮが所定の上限値ＫＥＧＲＲＥＦＩＮＬＨ以上であるか否かを判別する。
【０１３５】
この判別結果がＮＯのとき、すなわちＫＥＧＲＲＥＦＩＮＬＬ＜ＫＥＧＲＲＥＦＩＮ＜ＫＥＧＲＲＥＦＩＮＬＨが成立しているときには、内部ＥＧＲが正常に行われているとして、ステップ１２４で、それを表すために内部ＥＧＲ故障フラグＦＳ＿ＩＮＥＧＲＦＡＩＬを「０」にセットする。その後、本処理を終了する。
【０１３６】
一方、前述したステップ１２３の判別結果がＹＥＳで、ＫＥＧＲＲＥＦＩＮ≧ＫＥＧＲＲＥＦＩＮＬＨのときには、ステップ１２５で、内部ＥＧＲ用学習値ＫＥＧＲＲＥＦＩＮをこの上限値ＫＥＧＲＲＥＦＩＮＬＨに設定する。
【０１３７】
次いで、内部ＥＧＲが正常に行われていないとして、ステップ１２６に進み、それを表すために内部ＥＧＲ故障フラグＦＳ＿ＩＮＥＧＲＦＡＩＬを「１」にセットする。その後、本処理を終了する。
【０１３８】
一方、前述したステップ１２２の判別結果がＹＥＳで、ＫＥＧＲＲＥＦＩＮ≦ＫＥＧＲＲＥＦＩＮＬＬのときには、ステップ１２７で、内部ＥＧＲ用学習値ＫＥＧＲＲＥＦＩＮをこの下限値ＫＥＧＲＲＥＦＩＮＬＬに設定する。
【０１３９】
次いで、内部ＥＧＲが正常に行われていないとして、前述したステップ１２６で、それを表すために内部ＥＧＲ故障フラグＦＳ＿ＩＮＥＧＲＦＡＩＬを「１」にセットした後、本処理を終了する。
【０１４０】
一方、前述したステップ１２０の判別結果がＮＯのときには、ステップ１２８で、外部ＥＧＲ割合ＥＧＲＤＩＶＥＸが値１．０（第１の所定値）であるか否かを判別する。この判別結果がＹＥＳで、外部ＥＧＲのみが実行されているときには、ステップ１２９に進み、外部ＥＧＲ用学習値ＫＥＧＲＲＥＦＥＸを、下式（１１）の加重平均演算により算出する。
【数１１】
0004463179.tif 000012
ここで、ＫＥＧＲＲＥＦＥＸＺは、外部ＥＧＲ用学習値ＫＥＧＲＲＥＦＥＸの前回値であり、ＣＲＥＦＥＧＲＥＸは、値０と値１．０の間に設定される所定の重み係数である。
【０１４１】
次に、ステップ１３０〜１３５において、前述したステップ１２２〜１２７と同様の手法により、外部ＥＧＲ用学習値ＫＥＧＲＲＥＦＥＸのリミットチェック処理を行う。まず、ステップ１３０で、外部ＥＧＲ用学習値ＫＥＧＲＲＥＦＥＸが所定の下限値ＫＥＧＲＲＥＦＥＸＬＬ以下であるか否かを判別する。この判別結果がＮＯのときには、ステップ１３１に進み、外部ＥＧＲ用学習値ＫＥＧＲＲＥＦＥＸが所定の上限値ＫＥＧＲＲＥＦＥＸＬＨ以上であるか否かを判別する。
【０１４２】
この判別結果がＮＯで、ＫＥＧＲＲＥＦＥＸＬＬ＜ＫＥＧＲＲＥＦＥＸ＜ＫＥＧＲＲＥＦＥＸＬＨが成立しているときには、外部ＥＧＲが正常に行われているとして、ステップ１３２に進み、それを表すために外部ＥＧＲ故障フラグＦＳ＿ＥＸＥＧＲＦＡＩＬを「０」にセットする。その後、本処理を終了する。
【０１４３】
一方、前述したステップ１３１の判別結果がＹＥＳで、ＫＥＧＲＲＥＦＥＸ≧ＫＥＧＲＲＥＦＥＸＬＨのときには、ステップ１３３で、外部ＥＧＲ用学習値ＫＥＧＲＲＥＦＥＸをこの上限値ＫＥＧＲＲＥＦＥＸＬＨに設定する。次いで、外部ＥＧＲが正常に行われていないとして、ステップ１３４に進み、それを表すために外部ＥＧＲ故障フラグＦＳ＿ＥＸＥＧＲＦＡＩＬを「１」にセットする。その後、本処理を終了する。
【０１４４】
一方、前述したステップ１３０の判別結果がＹＥＳで、ＫＥＧＲＲＥＦＥＸ≦ＫＥＧＲＲＥＦＥＸＬＬのときには、ステップ１３５に進み、外部ＥＧＲ用学習値ＫＥＧＲＲＥＦＥＸをこの下限値ＫＥＧＲＲＥＦＥＸＬＬに設定する。次いで、外部ＥＧＲが正常に行われていないとして、前述したステップ１３４に進み、それを表すために外部ＥＧＲ故障フラグＦＳ＿ＥＸＥＧＲＦＡＩＬを「１」にセットした後、本処理を終了する。
【０１４５】
一方、前述したステップ１２８の判別結果がＮＯで、内部ＥＧＲおよび外部ＥＧＲの双方が実行されているときには、そのまま本処理を終了する。すなわち、この場合には、内部ＥＧＲ用および外部ＥＧＲ用学習値ＫＥＧＲＲＥＦＩＮ，ＫＥＧＲＲＥＦＥＸの算出は行われない。
【０１４６】
以下、図３０を参照しながら、前述した図２７のステップ１０８におけるＦＢ補正係数ＫＥＧＲＦＢのリミットチェック処理について説明する。本処理では、まず、ステップ１５０において、ＦＢ補正係数ＫＥＧＲＦＢが所定の上限値ＫＳＴＥＰＥＩＰＤＬＨ以上であるか否かを判別する。この判別結果がＹＥＳのときには、ステップ１５１に進み、ＦＢ補正係数ＫＥＧＲＦＢをこの上限値ＫＳＴＥＰＥＩＰＤＬＨに設定する。その後、ステップ１５２で、過大故障判定用のカウンタ値Ｃ＿ＳＴＥＰＥＰＣをインクリメントする。
【０１４７】
次に、ステップ１５３に進み、このカウンタ値Ｃ＿ＳＴＥＰＥＰＣが所定値ＳＴＥＰＥＰＣＣＯＮＴを超えたか否かを判別する。この判別結果がＮＯのときには、そのまま本処理を終了する。一方、この判別結果がＹＥＳのとき、すなわち、ＦＢ補正係数ＫＥＧＲＦＢが上限値ＫＳＴＥＰＥＩＰＤＬＨ以上になった回数が、所定回数を超えたときには、ＥＧＲ量が過大な状態で張り付いた過大故障が生じていると判定し、次いで、ステップ１５４に進み、内部ＥＧＲ割合ＥＧＲＤＩＶＩＮが値０．５よりも大きいか否かを判別する。
【０１４８】
この判別結果がＹＥＳで、内部ＥＧＲ量が外部ＥＧＲ量よりも大きいときには、内部ＥＧＲ側の故障であると判定して、ステップ１５５に進み、それを表すために内部ＥＧＲ過大故障フラグＦＳ＿ＩＮＥＧＲＯを「１」にセットした後、本処理を終了する。
【０１４９】
一方、ステップ１５４の判別結果がＮＯで、外部ＥＧＲ量が内部ＥＧＲ量以上であるときには、外部ＥＧＲ側の故障であると判定して、ステップ１５６に進み、それを表すために外部ＥＧＲ過大故障フラグＦＳ＿ＥＸＥＧＲＯを「１」にセットした後、本処理を終了する。
【０１５０】
一方、前述したステップ１５０の判別結果がＮＯのときには、ステップ１５７で、ＦＢ補正係数ＫＥＧＲＦＢが所定の下限値ＫＳＴＥＰＥＩＰＤＬＬ以下であるか否かを判別する。この判別結果がＹＥＳのときには、ステップ１５８に進み、ＦＢ補正係数ＫＥＧＲＦＢをこの下限値ＫＳＴＥＰＥＩＰＤＬＬに設定する。次いで、ステップ１５９で、過小故障判定用のカウンタ値Ｃ＿ＳＴＥＰＥＶＯをインクリメントする。
【０１５１】
次に、ステップ１６０に進み、このカウンタ値Ｃ＿ＳＴＥＰＥＶＯが所定値ＳＴＥＰＥＶＯＣＯＮＴを超えたか否かを判別する。この判別結果がＮＯのときには、そのまま本処理を終了する。一方、この判別結果がＹＥＳのときには、すなわちＦＢ補正係数ＫＥＧＲＦＢが下限値ＫＳＴＥＰＥＩＰＤＬＬ以下になった回数が所定回数を超えたときには、ＥＧＲ量が過小な状態で張り付いた過小故障が生じていると判定し、次いで、ステップ１６１に進み、内部ＥＧＲ割合ＥＧＲＤＩＶＩＮが値０．５よりも大きいか否かを判別する。
【０１５２】
この判別結果がＹＥＳで、内部ＥＧＲ量が外部ＥＧＲ量よりも大きいときには、内部ＥＧＲ側の故障であると判定して、ステップ１６２で、それを表すために内部ＥＧＲ過小故障フラグＦＳ＿ＩＮＥＧＲＤＮを「１」にセットする。その後、本処理を終了する。
【０１５３】
一方、ステップ１６１の判別結果がＮＯで、外部ＥＧＲ量が内部ＥＧＲ量以上であるときには、外部ＥＧＲ側の故障であると判定して、ステップ１６３に進み、それを表すために外部ＥＧＲ過小故障フラグＦＳ＿ＥＸＥＧＲＤＮを「１」にセットした後、本処理を終了する。
【０１５４】
一方、前述したステップ１５７の判別結果がＮＯのとき、すなわちＫＳＴＥＰＥＩＰＤＬＬ＜ＫＥＧＲＦＢ＜ＫＳＴＥＰＥＩＰＤＬＨが成立しているときには、ステップ１６４に進み、過大・過小故障判定用のカウンタ値Ｃ＿ＳＴＥＰＥＰＣ，Ｃ＿ＳＴＥＰＥＶＯを、それぞれ値０にリセットした後、本処理を終了する。
【０１５５】
以下、図３１を参照しながら、本実施形態の６つの可変機構、すなわちスロットル弁機構１３、排気還流機構１６、吸気リフト切換機構４１、吸気カム位相可変機構５０、排気リフト可変機構７０および排気カム位相可変機構９０をそれぞれ制御する処理について説明する。この処理は、具体的には、以下に述べるように、６つの可変機構をそれぞれ制御するための６つの制御入力Ｕ＿ＶＴＥＣ，Ｕ＿ＳＡＡＥＸ，Ｕ＿ＣＡＥＸ，Ｕ＿ＣＡＩＮ，Ｕ＿ＬＩＦＴ，Ｕ＿ＴＨを算出するものであり、タイマ設定により所定周期（例えば１０ｍｓｅｃ）で実行される。
【０１５６】
この処理では、まず、ステップ１８０において、可変機構故障フラグＦ＿ＶＤＮＧが「１」であるか否かを判別する。この可変機構故障フラグＦ＿ＶＤＮＧは、前述した各種の故障フラグの値などに基づき、上記の６つの可変機構１３，１６，４１，５０，７０，９０の少なくとも１つが故障していると判定されたときに、「１」にセットされるものである。
【０１５７】
このステップ１８０の判別結果がＮＯで、これらの可変機構がいずれも正常なときには、ステップ１８１に進み、吸気リフトフラグＦ＿ＶＴＥＣが「１」であるか否かを判別する。この判別結果がＮＯで、吸気リフト切換機構４１が低リフトモードに設定されているときには、ステップ１８２に進み、吸気リフト制御入力Ｕ＿ＶＴＥＣを値０に設定する。
【０１５８】
一方、ステップ１８１の判別結果がＹＥＳで、吸気リフト切換機構４１が高リフトモードに設定されているときには、ステップ１８３に進み、吸気リフト制御入力Ｕ＿ＶＴＥＣを高リフトモード用の所定値Ｕ＿ＨＩＶＴに設定する。
【０１５９】
以上のステップ１８２または１８３に続くステップ１８４では、前述した図２２のステップ８５または８８で算出された目標回動角ＳＡＡＥＸＣＭＤをサンプリングする。その後、ステップ１８５に進み、この目標回動角ＳＡＡＥＸＣＭＤおよび回動角ＳＡＡＥＸに基づいて、排気リフト可変機構７０を制御するための排気リフト制御入力Ｕ＿ＳＡＡＥＸを算出する。具体的には、排気リフト制御入力Ｕ＿ＳＡＡＥＸは、回動角ＳＡＡＥＸが目標回動角ＳＡＡＥＸＣＭＤに収束するように、所定のフィードバック制御アルゴリズム（例えばＰＩＤ制御アルゴリズムや応答指定型制御アルゴリズム）により算出される。
【０１６０】
次に、ステップ１８６で、図２２のステップ８６または８９で算出した目標排気カム位相ＣＡＥＸＣＭＤをサンプリングする。その後、ステップ１８７に進み、上記ステップ１８５と同様の手法により、排気カム位相可変機構９０を制御するための排気位相制御入力Ｕ＿ＣＡＥＸを算出する。すなわち、排気位相制御入力Ｕ＿ＣＡＥＸは、排気カム位相ＣＡＥＸが目標排気カム位相ＣＡＥＸＣＭＤに収束するように、所定のフィードバック制御アルゴリズムにより算出される。
【０１６１】
ステップ１８７に続くステップ１８８では、図２２のステップ８７または９０で算出した目標吸気カム位相ＣＡＩＮＣＭＤをサンプリングする。その後、ステップ１８９に進み、上記ステップ１８５，１８７と同様の手法により、吸気カム位相可変機構５０を制御するための吸気位相制御入力Ｕ＿ＣＡＩＮを算出する。すなわち、吸気位相制御入力Ｕ＿ＣＡＩＮは、吸気カム位相ＣＡＩＮが目標吸気カム位相ＣＡＩＮＣＭＤに収束するように、所定のフィードバック制御アルゴリズムにより算出される。
【０１６２】
次いで、ステップ１９０に進み、図２２のステップ９４で算出した目標ＥＧＲリフトＬＣＭＤをサンプリングする。その後、ステップ１９１で、前述したステップ１８５，１８７，１８９と同様の手法により、排気還流機構１６を制御するためのＥＧＲリフト制御入力Ｕ＿ＬＩＦＴを算出する。すなわち、ＥＧＲリフト制御入力Ｕ＿ＬＩＦＴは、ＥＧＲリフトＬＡＣＴが目標ＥＧＲリフトＬＣＭＤに収束するように、所定のフィードバック制御アルゴリズムにより算出される。
【０１６３】
次に、ステップ１９２に進み、スロットル弁機構１３を制御するためのＴＨ制御入力Ｕ＿ＴＨを、前述したステップ１８５，１８７，１８９，１９１と同様の手法により算出する。すなわち、要求トルクＰＭＣＭＤおよびエンジン回転数ＮＥに応じて、図示しないマップ検索により、目標スロットル弁開度ＴＨＣＭＤを算出し、スロットル弁開度ＴＨが目標スロットル弁開度ＴＨＣＭＤに収束するように、所定のフィードバック制御アルゴリズムにより、ＴＨ制御入力Ｕ＿ＴＨを算出する。ステップ１９２で以上のようにＴＨ制御入力Ｕ＿ＴＨを算出した後、本処理を終了する。
【０１６４】
一方、前述したステップ１８０の判別結果がＹＥＳで、前述した６つの可変機構の少なくとも１つが故障しているときには、ステップ１９３に進み、６つの制御入力Ｕ＿ＶＴＥＣ，Ｕ＿ＳＡＡＥＸ，Ｕ＿ＣＡＥＸ，Ｕ＿ＣＡＩＮ，Ｕ＿ＬＩＦＴおよびＵ＿ＴＨを、いずれも値０に設定した後、本処理を終了する。このように６つの制御入力がいずれも値０に設定された場合、所定の吸入空気量および排気状態が確保され、それにより、停車中は、アイドル運転およびエンジン始動が可能となるとともに、走行中は低速走行を継続することが可能となる。
【０１６５】
なお、以上の可変機構制御処理では、ステップ１８５において、回動角制御入力Ｕ＿ＳＡＡＥＸをフィードバック制御アルゴリズムにより算出したが、これを目標回動角ＳＡＡＥＸＣＭＤに応じて、マップ検索により算出してもよい。さらに、これと同様の手法により、他の制御入力Ｕ＿ＣＡＥＸ，Ｕ＿ＣＡＩＮ，Ｕ＿ＬＩＦＴ，Ｕ＿ＴＨを算出してもよい。
【０１６６】
以上のように、本実施形態のＥＧＲ制御装置１によれば、エンジン回転数ＮＥおよび要求トルクＰＭＣＭＤに応じて、内部ＥＧＲ割合ＥＧＲＤＩＶＩＮが算出され、値１から内部ＥＧＲ割合ＥＧＲＤＩＶＩＮを減算することにより、外部ＥＧＲ割合ＥＧＲＤＩＶＥＸが算出される。そして、内部ＥＧＲ割合ＥＧＲＤＩＶＩＮが外部ＥＧＲ割合ＥＧＲＤＩＶＥＸよりも大きいときには、内部ＥＧＲ割合ＥＧＲＤＩＶＩＮ、目標値ＫＥＧＲＣＭＤおよびＦＢ補正係数ＫＥＧＲＦＢに応じて、吸気カム位相可変機構５０、排気リフト可変機構７０および排気カム位相可変機構９０を制御するための３つの目標値ＳＡＡＥＸＣＭＤ，ＣＡＥＸＣＭＤ，ＣＡＩＮＣＭＤが算出されることにより、実新気率ＫＥＧＲがその目標値ＫＥＧＲＣＭＤに収束するように、内部ＥＧＲ量がフィードバック制御される。これと同時に、外部ＥＧＲ割合ＥＧＲＤＩＶＥＸ、目標値ＫＥＧＲＣＭＤおよびＦＢ補正係数の外部ＥＧＲ用学習値ＫＥＧＲＲＥＦＥＸに応じて、排気還流機構１６を制御するための目標ＥＧＲリフトＬＣＭＤが算出されることにより、外部ＥＧＲ量がフィードフォワード制御される。この外部ＥＧＲ用学習値ＫＥＧＲＲＥＦＥＸは、内部ＥＧＲが停止されかつ外部ＥＧＲのみが実行されているときのＦＢ補正係数ＫＥＧＲＦＢを用い、その加重平均演算により算出される。
【０１６７】
一方、上記とは逆に、外部ＥＧＲ割合ＥＧＲＤＩＶＥＸが内部ＥＧＲ割合ＥＧＲＤＩＶＩＮよりも大きいときには、外部ＥＧＲ割合ＥＧＲＤＩＶＥＸ、目標値ＫＥＧＲＣＭＤおよびＦＢ補正係数ＫＥＧＲＦＢに応じて、目標ＥＧＲリフトＬＣＭＤが算出されることにより、実新気率ＫＥＧＲがその目標値ＫＥＧＲＣＭＤに収束するように、外部ＥＧＲ量がフィードバック制御される。これと同時に、内部ＥＧＲ割合ＥＧＲＤＩＶＩＮ、目標値ＫＥＧＲＣＭＤおよびＦＢ補正係数の内部ＥＧＲ用学習値ＫＥＧＲＲＥＦＩＮに応じて、３つの目標値ＳＡＡＥＸＣＭＤ，ＣＡＥＸＣＭＤ，ＣＡＩＮＣＭＤが算出されることにより、内部ＥＧＲ量がフィードフォワード制御される。この内部ＥＧＲ用学習値ＫＥＧＲＲＥＦＩＮは、外部ＥＧＲが停止されかつ内部ＥＧＲのみが実行されていたときのＦＢ補正係数ＫＥＧＲＦＢを用い、その加重平均演算により算出される。
【０１６８】
このように、内部ＥＧＲ量および外部ＥＧＲ量のうちの大きい方がフィードバック制御されるので、実新気率ＫＥＧＲを目標値ＫＥＧＲＣＭＤに収束させることができる。言い換えれば、実際の総還流ガス量を、適切な値に収束させることができる。これに加えて、内部ＥＧＲ量および外部ＥＧＲ量のうちの小さい方が、小さい方のＥＧＲ用の学習値（ＫＥＧＲＲＥＦＩＮまたはＫＥＧＲＲＥＦＥＸ）に応じて、フィードフォワード制御されるとともに、この学習値（ＫＥＧＲＲＥＦＩＮまたはＫＥＧＲＲＥＦＥＸ）は、この小さい方のＥＧＲのみが実行されていたときのＦＢ補正係数ＫＥＧＲＦＢの加重平均演算値であることにより、小さい方のＥＧＲ量が不適切な値になるのを回避できる。したがって、割合の小さい方のＥＧＲ量の制御が、割合の大きい方のＥＧＲ量のフィードバック制御に干渉するのを回避しながら、実新気率ＫＥＧＲをその目標値ＫＥＧＲＣＭＤに迅速に収束させることができる。
【０１６９】
これに加えて、実新気率ＫＥＧＲ、目標値ＫＥＧＲＣＭＤ、内部ＥＧＲ割合ＥＧＲＤＩＶＩＮおよび外部ＥＧＲ割合ＥＧＲＤＩＶＥＸがいずれも、エンジン回転数ＮＥおよび要求トルクＰＭＣＭＤに応じて算出されるので、エンジン３の運転状態が変化したときでも、それに応じて、内部ＥＧＲ量および外部ＥＧＲ量を適切に制御することができる。
【０１７０】
以上の理由により、低温ガス量および高温ガス量をいずれもデューティ制御する従来のＥＧＲ制御と比べて、ＥＧＲ制御の制御精度を向上させることができ、筒内温度の制御精度を向上させることができる。その結果、燃費、運転性および排ガス特性をいずれも向上させることができるとともに、本実施形態の圧縮着火燃焼式のエンジン３のような、筒内温度を高精度で制御する必要があるエンジンにも適用することができる。
【０１７１】
なお、実施形態は、高温ガス還流装置として、内部ＥＧＲ量を調整するための吸気カム位相可変機構５０、排気リフト可変機構７０および排気カム位相可変機構９０を用いた例であるが、本願発明の高温ガス還流装置はこれに限らず、外部ＥＧＲよりも高温の排ガスを気筒内に還流する量を調整可能なものや、既燃ガスを気筒内に残留させる量を調整可能なものであればよい。
【０１７２】
また、実施形態は、フィードバック補正値としてのフィードバック補正係数ＫＥＧＲＦＢを算出する所定のフィードバック制御アルゴリズムとして、Ｉ−ＰＤ制御アルゴリズムを用いた例であるが、本願発明のフィードバック制御アルゴリズムはこれに限らず、その他のフィードバック制御アルゴリズムを用いてもよい。例えば、ＰＩＤ制御アルゴリズムや応答指定型制御アルゴリズム（スライディングモード制御アルゴリズムまたはバックステッピング制御アルゴリズム）などを用いてもよい。
【０１７３】
さらに、実施形態は、外部ＥＧＲ割合ＥＧＲＤＩＶＥＸと比較する第１の所定値として、値１．０を用いた例であるが、本願発明の低温ガス量の割合と比較する第１の所定値はこれに限らず、値０．５より大きくかつ値１．０未満の範囲内の値であればよい。また、実施形態は、内部ＥＧＲ割合ＥＧＲＤＩＶＩＮと比較する第２の所定値として、値１．０を用いた例であるが、本願発明の低温ガス量の割合と比較する第２の所定値はこれに限らず、値０．５より大きくかつ値１．０未満の範囲内の値であればよい。
【０１７４】
また、実施形態は、第１の運転状態パラメータとして、アクセル開度ＡＰ、エンジン回転数ＮＥ、新気流量ＧＩＮおよび吸気管内圧ＰＢＡなどを用いた例であるが、第１の運転状態パラメータはこれに限らず、エンジン３の運転状態を表すものであればよい。例えば、エンジン水温ＴＷなどを用いてもよい。
【０１７５】
さらに、実施形態は、第２および第３の運転状態パラメータとして、アクセル開度ＡＰおよびエンジン回転数ＮＥを用いた例であるが、第２および第３の運転状態パラメータはこれに限らず、エンジン３の運転状態を表すものであればよい。例えば、吸入新気量ＧＡＩＲＣＹＬや吸気管内圧ＰＢＡなどを用いてもよい。
【０１７６】
また、実施形態は、ＥＧＲ率パラメータとして実新気率ＫＥＧＲを用いた例であるが、ＥＧＲ率パラメータはこれに限らず、総還流ガス量と総ガス量との比率を表すものであればよい。例えば、ＥＧＲ率パラメータとして、値１から実新気率ＫＥＧＲを減算した値であるＥＧＲ率を用いてもよい。
【図面の簡単な説明】
【０１７７】
【図１】本発明の一実施形態に係るＥＧＲ制御装置が適用された内燃機関の概略構成を示す模式図である。
【図２】ＥＧＲ制御装置の概略構成を示すブロック図である。
【図３】内燃機関の吸気側動弁機構および排気側動弁機構の概略構成を示す断面図である。
【図４】吸気側動弁機構の概略構成を示す模式図である。
【図５】吸気カム位相可変機構の概略構成を示す模式図である。
【図６】吸気カム位相可変機構により吸気カム位相が最遅角値（実線）および最進角値（２点鎖線）に設定されているときの吸気弁のバルブリフト曲線と、排気カム位相可変機構により排気カム位相が最遅角値（実線）および最進角値（２点鎖線）に設定されているときの排気弁のバルブリフト曲線をそれぞれ示す図である。
【図７】排気側動弁機構の概略構成を示す模式図である。
【図８】排気リフト可変機構の概略構成を示す斜視図である。
【図９】排気リフト可変機構のリンク機構の概略構成を示す斜視図である。
【図１０】排気リフト可変機構による排気リフトの変更状態を示す図である。
【図１１】ＴＤＣ信号の発生に同期する制御周期で実行される制御処理を示すフローチャートである。
【図１２】燃料噴射制御処理を示すフローチャートである。
【図１３】要求トルクＰＭＣＭＤの算出に用いるマップの一例を示す図である。
【図１４】基本燃料噴射量ＴＩＭの算出処理を示すフローチャートである。
【図１５】第１基本燃料噴射量ＴＩＭＡＦＭＸの算出に用いるマップの一例を示す図である。
【図１６】実新気率ＫＥＧＲの算出処理を示すフローチャートである。
【図１７】内部および外部ＥＧＲ目標値ＫＥＧＲＣＭＤＩＮ，ＫＥＧＲＣＭＤＥＸの算出処理を示すフローチャートである。
【図１８】目標値ＫＥＧＲＣＭＤの算出に用いるマップの一例を示す図である。
【図１９】内部ＥＧＲ割合ＥＧＲＤＩＶＩＮの算出に用いるマップの一例を示す図である。
【図２０】目標空燃比ＫＣＭＤの算出処理を示すフローチャートである。
【図２１】目標空燃比のマップ値ＫＣＭＤＭＡＰの算出に用いるマップの一例を示す図である。
【図２２】ＥＧＲ制御処理を示すフローチャートである。
【図２３】低リフトモード用の目標回動角ＳＡＡＥＸＣＭＤの算出に用いるマップの一例を示す図である。
【図２４】低リフトモード用の目標排気カム位相ＣＡＥＸＣＭＤの算出に用いるマップの一例を示す図である。
【図２５】低リフトモード用の目標吸気カム位相ＣＡＩＮＣＭＤの算出に用いるマップの一例を示す図である。
【図２６】目標ＥＧＲリフトＬＣＭＤの算出に用いるマップの一例を示す図である。
【図２７】フィードバック補正係数ＫＥＧＲＦＢの算出処理を示すフローチャートである。
【図２８】図２７の続きを示すフローチャートである。
【図２９】内部および外部ＥＧＲ用学習値ＫＥＧＲＲＥＦＩＮ，ＫＥＧＲＲＥＦＥＸの算出処理を示すフローチャートである。
【図３０】フィードバック補正係数ＫＥＧＲＦＢのリミットチェック処理を示すフローチャートである。
【図３１】可変機構制御処理を示すフローチャートである。
【符号の説明】
【０１７８】
１  ＥＧＲ制御装置
２  ＥＣＵ（ＥＧＲ率パラメータ算出手段、目標値設定手段、フィードバック補正値        算出手段、ガス量割合設定手段、制御手段、学習値算出手段）
３  内燃機関
３ａ  気筒
１６  排気還流機構（低温ガス還流装置）
５０  吸気カム位相可変機構（高温ガス還流装置）
７０  排気リフト可変機構（高温ガス還流装置）
９０  排気カム位相可変機構（高温ガス還流装置）
ＮＥ  エンジン回転数（第１、第２および第３の運転状態パラメータ）
ＡＰ  アクセル開度（第１、第２および第３の運転状態パラメータ）
ＧＩＮ  新気流量（第１の運転状態パラメータ）
ＰＢＡ  吸気管内圧（第１の運転状態パラメータ）
ＫＥＧＲ  実新気率（ＥＧＲ率パラメータ）
ＫＥＧＲＣＭＤ  実新気率の目標値（ＥＧＲ率パラメータの目標値）
ＫＥＧＲＦＢ  フィードバック補正係数（フィードバック補正値）
ＥＧＲＤＩＶＥＸ  外部ＥＧＲ割合（低温ガス割合）
ＥＧＲＤＩＶＩＮ  内部ＥＧＲ割合（高温ガス割合）
ＫＥＧＲＲＥＦＥＸ  外部ＥＧＲ用学習値（低温ガス用学習値）
ＫＥＧＲＲＥＦＩＮ  内部ＥＧＲ用学習値（高温ガス用学習値）
【図１】
0004463179.tif 000013
【図２】
0004463179.tif 000014
【図３】
0004463179.tif 000015
【図４】
0004463179.tif 000016
【図５】
0004463179.tif 000017
【図６】
0004463179.tif 000018
【図７】
0004463179.tif 000019
【図８】
0004463179.tif 000020
【図９】
0004463179.tif 000021
【図１０】
0004463179.tif 000022
【図１１】
0004463179.tif 000023
【図１２】
0004463179.tif 000024
【図１３】
0004463179.tif 000025
【図１４】
0004463179.tif 000026
【図１５】
0004463179.tif 000027
【図１６】
0004463179.tif 000028
【図１７】
0004463179.tif 000029
【図１８】
0004463179.tif 000030
【図１９】
0004463179.tif 000031
【図２０】
0004463179.tif 000032
【図２１】
0004463179.tif 000033
【図２２】
0004463179.tif 000034
【図２３】
0004463179.tif 000035
【図２４】
0004463179.tif 000036
【図２５】
0004463179.tif 000037
【図２６】
0004463179.tif 000038
【図２７】
0004463179.tif 000039
【図２８】
0004463179.tif 000040
【図２９】
0004463179.tif 000041
【図３０】
0004463179.tif 000042
【図３１】
0004463179.tif 000043