(57)【要約】【課題】混合気の燃焼モードが複数の燃焼モードの間で切り換わる場合において、トルク段差や急激な回転変動を抑制できるとともに、燃費を向上させることができる内燃機関の制御装置を提供する。【解決手段】燃焼モードが成層燃焼モードと均一燃焼モードの間で切り換えて運転される内燃機関３の制御装置１は、ＥＣＵ２を備える。ＥＣＵ２は、アイドル回転数制御中、点火操作量Ｕｉｇを、１回目噴射率Ｒｉｎｊが変化したときに、燃焼モードの切換に伴うエンジン回転数ＮＥの変化を相殺するように算出し（ステップ３〜７）、吸気操作量Ｕａｒを、１回目噴射率Ｒｉｎｊが変化したときに、点火操作量Ｕｉｇによるエンジン回転数ＮＥの変化を相殺するように算出する（ステップ３〜６，８）。【選択図】  図１８
2007247476.tif 000002
【特許請求の範囲】
【請求項１】
発生トルクを表す制御量が同一の運転条件下において互いに異なる複数の燃焼モードを有し、所定の切換条件が成立したときに、当該燃焼モードを当該複数の燃焼モードの間で切り換えて運転される内燃機関の制御装置であって、
前記制御量を変更するための第１操作量を、前記所定の切換条件が成立したときに、前記燃焼モードの切換に伴う前記制御量の変化を相殺するように算出する第１操作量算出手段と、
１燃焼サイクルにおける前記制御量の変更可能な幅が前記第１操作量よりも小さい、前記制御量を変更するための第２操作量を、前記所定の切換条件が成立したときに、前記第１操作量による前記制御量の変化を打ち消すように算出する第２操作量算出手段と、
を備えることを特徴とする内燃機関の制御装置。
【請求項２】
前記第１操作量算出手段は、
所定の制御アルゴリズムにより第１基本操作量を算出する第１基本操作量算出手段と、  前記燃焼モードの切換に伴う前記制御量の変化を相殺するための補正値を、所定の忘却処理を施しながら算出する補正値算出手段とを有し、
前記第１基本操作量を前記補正値で補正することにより、前記第１操作量を算出することを特徴とする請求項１に記載の内燃機関の制御装置。
【請求項３】
発生トルクを表す制御量が同一の運転条件下において互いに異なる複数の燃焼モードを有し、所定の切換条件が成立したときに、当該燃焼モードを当該複数の燃焼モードの間で切り換えて運転される内燃機関の制御装置であって、
前記所定の切換条件が成立した場合において、所定の遅延条件が成立しているときに、前記燃焼モードの切換を遅延させる遅延手段と、
前記制御量を変更するための第１操作量を、前記燃焼モードの切換の遅延中、前記燃焼モードの切換に伴う前記制御量の変化を相殺する方向とは逆方向に変化するように算出するとともに、前記燃焼モードの切換の遅延が終了したときに、前記前記燃焼モードの切換に伴う前記制御量の変化を相殺する方向に変化するように算出する第１操作量算出手段と、
１燃焼サイクルにおける前記制御量の変更可能な幅が前記第１操作量よりも小さい、前記制御量を変更するための第２操作量を、前記遅延手段による前記燃焼モードの切換の遅延中、前記第１操作量による前記制御量の変化を打ち消すように算出する第２操作量算出手段と、
を備えることを特徴とする内燃機関の制御装置。
【請求項４】
前記第１操作量算出手段は、
所定の制御アルゴリズムにより第１基本操作量を算出する第１基本操作量算出手段と、  前記燃焼モードの切換に伴う前記制御量の変化を相殺するための補正値を算出する補正値算出手段とを有し、当該補正値で前記第１基本操作量を補正することにより前記第１操作量を算出し、
前記補正値算出手段は、前記燃焼モードの切換の遅延中、前記補正値を、所定の応答指定型のフィルタ処理を施しながら、当該補正値による前記第１基本操作量の補正方向が、前記燃焼モードの切換に伴う前記制御量の変化を相殺する方向とは逆方向になるように算出するとともに、前記燃焼モードの切換の遅延が終了したときに、当該補正値による前記第１基本操作量の補正方向が、前記燃焼モードの切換に伴う前記制御量の変化を相殺する方向になるように算出することを特徴とする請求項３に記載の内燃機関の制御装置。
【請求項５】
前記第１操作量算出手段は、前記第１操作量を、前記複数の燃焼モードと前記制御量との関係を表すモデルを用いて算出することを特徴とする請求項１ないし４のいずれかに記載の内燃機関の制御装置。
【請求項６】
前記補正値算出手段は、前記補正値を、当該補正値と前記制御量との関係を表す動特性モデルに基づいて算出することを特徴とする請求項２または４に記載の内燃機関の制御装置。
【請求項７】
前記制御量の目標となる目標制御量を算出する目標制御量算出手段と、
所定のフィードバック制御アルゴリズムにより、前記制御量が前記目標制御量になるように、前記第１操作量および第２操作量を修正する修正手段と、
をさらに備えることを特徴とする請求項１ないし６のいずれかに記載の内燃機関の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、混合気の燃焼モードを複数の燃焼モードの間で切り換えて運転される内燃機関の制御装置に関する。
【背景技術】
【０００２】
従来、内燃機関の制御装置として、例えば特許文献１に記載されたものが知られている。この内燃機関は、燃料噴射弁により燃料が気筒内に直接噴射される、いわゆる直噴式のものである。この制御装置では、燃料噴射モードが、内燃機関の負荷すなわちアクセルペダルの開度に応じて、燃料を圧縮行程で１回噴射する低負荷時用の第１モードと、燃料を分割して吸気行程および圧縮行程でそれぞれ噴射する中負荷時用の第２モードと、燃料を吸気行程で１回噴射する高負荷時用の第３モードの  いずれかに選択的に切り換られる。それにより、内燃機関は、低負荷域では混合気が成層燃焼するように運転され、中負荷域では混合気の一部が成層燃焼し、残りが均一燃焼するように運転されるとともに、高負荷域では、混合気が均一燃焼するように運転される。
【０００３】
また、この制御装置では、点火時期制御が以下のように実行される。まず、上記燃料噴射モードに基づいて、第１〜第３モード用の３つの点火時期マップのいずれかが選択される。この第１モード用の点火時期マップでは、マップ値が負荷とほぼ無関係に一定に設定されているとともに、第２および第３モード用の点火時期マップでは、マップ値は、負荷が大きいほど、より遅角側の値に設定されている。これに加えて、互いに隣り合う負荷域用の２つの点火時期マップでは、負荷域の境界付近において、マップ値が負荷に対して互いに不連続で、比較的大きなクランク角度差を有するように設定されている。
【０００４】
次いで、点火時期制御では、選択した点火時期マップを負荷に応じて検索することにより、点火時期が算出される。その際、点火時期は、負荷が３つのうちのいずれかのモード域にあるときには、２つのマップ検索値の補間演算により算出されるとともに、負荷が２つのモード域の境界付近にあるときには、２つのマップ検索値の補間演算が禁止され、１つのマップ検索値のみに基づいて算出される。
【０００５】
以上のような制御手法により点火時期が算出される理由は、以下による。一般に、上記第１または第３モードのような、燃料を１燃焼サイクル中に１回のみ噴射する単噴射モードと、上記第２モードのような、燃料を２回に分割して噴射する分割噴射モードを比較した場合、両者では、上述したように混合気の燃焼状態が互いに異なり、熱効率（すなわち燃焼効率）が互いに異なることで、発生トルクの差が大きくなる。その結果、負荷の変化により燃料噴射モードが２つのモード間で変化すると、それに起因して、トルク段差や急激な回転変動が発生し、運転性が低下するおそれがある。したがって、負荷が２つのモード域の境界付近の値であるときには、２つのマップ検索値の補間演算を禁止し、１つのマップ検索値のみに基づいて算出することで、点火時期を迅速に変化させ、それにより、上記トルク段差や急激な回転変動の発生を抑制し、運転性を向上させるようにしている。
【０００６】
【特許文献１】特開平１０−２２７２３９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
上記特許文献１の制御装置では、燃料噴射モードが２つのモード間で変化した際のトルク段差や急激な回転変動を抑制するために、２つのマップ検索値の補間演算を禁止するとともに、点火時期マップとして、負荷域の境界付近において、マップ値が負荷に対して互いに不連続で、比較的大きなクランク角度差を有するものを用いている。しかし、点火時期の進角化によるトルク増大分は、２つのモード間での発生トルクの差と比べてかなり小さく、トルク段差や急激な回転変動を抑制するのには不十分である。その結果、依然として、トルク段差や急激な回転変動が発生することで、運転性が低下するおそれがある。これに加えて、トルク段差や急激な回転変動を抑制するために、境界付近の２つのマップ値を、不連続で比較的大きなクランク角度差を有するように設定しなければならないので、一方のマップ値をかなり遅角側の値に設定する必要性があり、その結果、熱効率の低下を招き、燃費が悪化するおそれがある。
【０００８】
本発明は、上記課題を解決するためになされたもので、混合気の燃焼モードが複数の燃焼モードの間で切り換わる場合において、トルク段差や急激な回転変動を抑制できるとともに、燃費を向上させることができる内燃機関の制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、請求項１に係る発明は、発生トルクを表す制御量（例えば実施形態における（以下、この項において同じ）エンジン回転数ＮＥ、図示平均有効圧Ｐｍｉ）が同一の運転条件下（総燃料噴射量Ｔｃｙｌおよび吸入空気量Ｇｃｙｌが同一の条件下）において互いに異なる複数の燃焼モード（成層燃焼モードおよび均一燃焼モード）を有し、所定の切換条件が成立したとき（１回目噴射率Ｒｉｎｊが異なる値に変化したとき）に、燃焼モードを複数の燃焼モードの間で切り換えて運転される内燃機関３の制御装置１，１Ａであって、制御量を変更するための第１操作量（点火操作量Ｕｉｇ，Ｕｉｇ’）を、所定の切換条件が成立したときに、燃焼モードの切換に伴う制御量の変化を相殺するように算出する第１操作量算出手段（ＥＣＵ２、アイドル回転数コントローラ３０、Ｐｍｉコントローラ１３０、ステップ３〜７）と、１燃焼サイクルにおける制御量の変更可能な幅が第１操作量よりも小さい、制御量を変更するための第２操作量（吸気操作量Ｕａｒ，Ｕａｒ’）を、所定の切換条件が成立したときに、第１操作量による制御量の変化を打ち消すように算出する第２操作量算出手段（ＥＣＵ２、アイドル回転数コントローラ３０、Ｐｍｉコントローラ１３０、ステップ３〜６，８）と、を備えることを特徴とする。
【００１０】
この内燃機関の制御装置によれば、燃焼モードの切換条件が成立したときに、第１操作量が、燃焼モードの切換に伴う制御量の変化を相殺するように算出されるとともに、第２操作量が、第１操作量による制御量の変化を打ち消すように算出される。ここで、第２操作量は、１燃焼サイクルにおける制御量の変更可能な幅が第１操作量よりも小さい。言い換えれば、第１操作量は、１燃焼サイクルにおいて制御量を第２操作量よりも大きい幅で変更可能であるので、そのような第１操作量によって、制御量の変化を迅速に相殺することができるとともに、燃焼モードの切換以降、第１操作量による制御量の変化を第２操作量によって緩やかに打ち消すことができる。その結果、燃焼モードが切り換えられた際、制御量すなわち発生トルクが急激に変化するのを抑制でき、トルク段差や急激な回転変動を抑制することができる。これに加えて、切換以降の燃焼状態を、トルク段差や急激な回転変動とは無関係に、本来の熱効率を確保できる状態に迅速に復帰させることができることで、燃費を向上させることができる。
【００１１】
請求項２に係る発明は、請求項１に記載の内燃機関３の制御装置１，１Ａにおいて、第１操作量算出手段は、所定の制御アルゴリズムにより第１基本操作量（Ｕｒｃｈ＿ｉｇ＋Ｕａｄｐ＿ｉｇ＋Ｕｍａｐ＿ｉｇ、Ｕｒｃｈ＿ｉｇ’＋Ｕａｄｐ＿ｉｇ’＋Ｕｍａｐ＿ｉｇ’）を算出する第１基本操作量算出手段（ＥＣＵ２、協調フィードバックコントローラ５０，１５０、マップ値算出部９０，１９０）と、燃焼モードの切換に伴う制御量の変化を相殺するための補正値（補償値Ｕｍｕｓｉｃ＿ｉｇ，Ｕｍｕｓｉｃ＿ｉｇ’）を、所定の忘却処理［式（３），（３３）］を施しながら算出する補正値算出手段（ＥＣＵ２、分割噴射コントローラ４０，１４０）とを有し、第１基本操作量を補正値で補正することにより、第１操作量（点火操作量Ｕｉｇ，Ｕｉｇ’）を算出することを特徴とする。
【００１２】
この内燃機関の制御装置によれば、第１基本操作量が所定の制御アルゴリズムにより算出され、燃焼モードの切換に伴う制御量の変化を相殺するための補正値が、所定の忘却処理を施しながら算出されるとともに、この補正値で第１基本操作量を補正することにより、第１操作量が算出される。したがって、演算の進行に伴って、補正値による第１基本操作量の補正効果が次第に消滅し、第１操作量による制御量変化の相殺効果がなくなることで、第２操作量も、第１操作量による制御量の変化を相殺する必要がなくなる。その結果、第１操作量および第２操作量が燃焼モードに応じた本来の値として算出されるようになるので、内燃機関の燃焼モードを、本来の熱効率を確保できる状態に確実に復帰させることができ、それにより、燃費を確実に向上させることができる。
【００１３】
請求項３に係る発明は、発生トルクを表す制御量（エンジン回転数ＮＥ、図示平均有効圧Ｐｍｉ）が同一の運転条件下（総燃料噴射量Ｔｃｙｌおよび吸入空気量Ｇｃｙｌが同一の条件下）において互いに異なる複数の燃焼モード（成層燃焼モードおよび均一燃焼モード）を有し、所定の切換条件が成立したとき（１回目噴射率Ｒｉｎｊが異なる値に変化したとき）に、燃焼モードを複数の燃焼モードの間で切り換えて運転される内燃機関３の制御装置１，１Ａであって、所定の切換条件が成立した場合において、所定の遅延条件が成立しているとき（待機フラグＦ＿Ｒｉｎｊ＿Ｗａｉｔ＝１のとき）に、燃焼モードの切換を遅延させる遅延手段（ＥＣＵ２、分割噴射コントローラ４０，１４０、ステップ４５，４６）と、制御量を変更するための第１操作量を、燃焼モードの切換の遅延中、燃焼モードの切換に伴う制御量の変化を相殺する方向とは逆方向に変化するように算出する（ステップ２４，４７，５０，６５）とともに、燃焼モードの切換の遅延が終了したとき（待機フラグＦ＿Ｒｉｎｊ＿Ｗａｉｔが「１」から「０」に変化したとき）に、燃焼モードの切換に伴う制御量の変化を相殺する方向に変化するように算出し（ステップ２４，４９，５０，６５）、第２操作量算出手段は、遅延手段による燃焼モードの切換の遅延中、第２操作量を、第１操作量による制御量の変化を打ち消すように算出することを特徴とする。
【００１４】
この内燃機関の制御装置によれば、燃焼モードの切換条件が成立した場合でも、所定の遅延条件が成立しているときには、遅延手段により燃焼モードの切換が遅延され、その遅延中、第１操作量が、燃焼モードの切換に伴う制御量の変化を相殺する方向とは逆方向に変化するように算出されるとともに、燃焼モードの切換の遅延が終了したときに、燃焼モードの切換に伴う制御量の変化を相殺する方向に変化するように算出される。したがって、燃焼モードの切換遅延中、第１操作量を、本来の相殺方向に変化したときに燃焼モードの切換に伴う制御量の変化を相殺可能な量まで、その相殺方向と逆の方向に変化させることにより、燃焼モードの切換に伴う制御量の変化が実際に発生するタイミングで、そのような制御量の変化を、第１操作量により迅速に相殺することができる。これに加えて、燃焼モードの切換遅延中、第１操作量による制御量の変化を、第２操作量によって適切に打ち消すことができる。その結果、遅延中でも、制御量すなわち発生トルクを安定した状態に保持することができる。
【００１５】
請求項４に係る発明は、請求項３に記載の内燃機関３の制御装置１，１Ａにおいて、第１操作量算出手段は、所定の制御アルゴリズムにより第１基本操作量（Ｕｒｃｈ＿ｉｇ＋Ｕａｄｐ＿ｉｇ＋Ｕｍａｐ＿ｉｇ、Ｕｒｃｈ＿ｉｇ’＋Ｕａｄｐ＿ｉｇ’＋Ｕｍａｐ＿ｉｇ’）を算出する第１基本操作量算出手段（ＥＣＵ２、協調フィードバックコントローラ５０，１５０、マップ値算出部９０，１９０）と、燃焼モードの切換に伴う制御量の変化を相殺するための補正値（補償値Ｕｍｕｓｉｃ＿ｉｇ，Ｕｍｕｓｉｃ＿ｉｇ’）を、所定の忘却処理を施しながら算出する補正値算出手段（ＥＣＵ２、分割噴射コントローラ４０，１４０）とを有し、第１基本操作量を補正値で補正することにより、第１操作量（点火操作量Ｕｉｇ，Ｕｉｇ’）を算出し、補正値算出手段は、燃焼モードの切換の遅延中、補正値（補償値Ｕｍｕｓｉｃ＿ｉｇ，Ｕｍｕｓｉｃ＿ｉｇ’）を、所定の応答指定型のフィルタ処理［式（８），（３８）］を施しながら、補正値による第１基本操作量の補正方向が、燃焼モードの切換に伴う制御量の変化を相殺する方向とは逆方向になるように算出する（ステップ２４，４７，５０，６５）とともに、燃焼モードの切換の遅延が終了したときに、補正値による第１基本操作量の補正方向が、燃焼モードの切換に伴う制御量の変化を相殺する方向になるように算出する（ステップ２４，４９，５０，６５）ことを特徴とする。
【００１６】
この内燃機関の制御装置によれば、第１基本操作量が所定の制御アルゴリズムにより算出され、補正値で第１基本操作量を補正することにより、第１操作量が算出される。この補正値は、燃焼モードの切換に伴う制御量の変化を相殺するためのものであり、燃焼モードの切換の遅延中、所定の応答指定型のフィルタ処理を施されながら、補正値による第１基本操作量の補正方向が、燃焼モードの切換に伴う制御量の変化を相殺する方向とは逆方向になるように算出されるとともに、燃焼モードの切換の遅延が終了したときに、補正値による第１基本操作量の補正方向が、燃焼モードの切換に伴う制御量の変化を相殺する方向になるように算出される。前述したように、第１操作量は、１燃焼サイクルにおいて制御量を第２操作量よりも大きい幅で変更可能であるので、補正値による第１基本操作量の補正度合が不適切であることで、第１操作量の値が不適切になると、燃焼モードの切換が遅延されているにもかかわらず、第１操作量による制御量の変化の度合が、第２操作量によって相殺不可能な値まで大きくなり、その結果、制御量すなわち発生トルクが不適切に変動するおそれがある。これに対して、この制御装置によれば、遅延手段による燃焼モードの切換の遅延中、補正値が所定の応答指定型のフィルタ処理を施しながら算出されるので、このフィルタ処理の応答指定特性を適切に設定することにより、補正値による第１基本操作量の補正度合を適切に設定でき、その結果、第１操作量を、それによる制御量の変化を第２操作量によって適切に相殺可能な値として算出することができる。その結果、燃焼モードの切換の遅延中、制御量すなわち発生トルクを安定した状態により確実に保持することができる。
【００１７】
請求項５に係る発明は、請求項１ないし４のいずれかに記載の内燃機関３の制御装置１，１Ａにおいて、第１操作量算出手段は、第１操作量を、複数の燃焼モードと制御量との関係を表すモデル（図１２，３１，３２）を用いて算出することを特徴とする。
【００１８】
この内燃機関のように、発生トルクを表す制御量が同一の運転条件で互いに異なる複数の燃焼モードの間で切り換えて運転される内燃機関では、複数の燃焼モードでの制御量すなわち発生トルクが、内燃機関の負荷や回転数などの運転状態に応じてさらに変化するので、内燃機関の操作量を、そのような制御量の変化状態に対応するように予め設定されたマップおよびプログラムを用いて演算しようとすると、マップ設定の作業工数、プログラム量および演算負荷がいずれも膨大化してしまい、実質的に困難である。これに対して、この内燃機関の制御装置によれば、第１操作量が、複数の燃焼モードと制御量との関係を表すモデルを用いて算出されるとともに、このモデルを予め設定する作業すなわち同定作業は、上述したマップを設定する作業と比べて容易なものであるので、作業工数を飛躍的に低減できるとともに、そのようなモデルを用いて演算することにより、プログラム量および演算負荷も飛躍的に低減することができる。
【００１９】
請求項６に係る発明は、請求項２または４に記載の内燃機関３の制御装置１，１Ａにおいて、補正値算出手段は、補正値（補償値Ｕｍｕｓｉｃ＿ｉｇ，Ｕｍｕｓｉｃ＿ｉｇ’）を、補正値と制御量との関係を表す動特性モデル［式（１３），（４３）］に基づいて算出することを特徴とする。
【００２０】
一般に、内燃機関における発生トルクを表す制御量とそれを変更する操作量との間には、応答遅れやむだ時間などの動特性が存在するので、第１操作量を算出するための補正値を、静的な算出手法などにより算出しても、上記動特性の影響により、補正値を適切に算出することができず、そのような補正値を用いて算出した第１操作量では、制御量の過渡的な変化を高精度に相殺することができない。また、そのような制御量の過渡的な変化を相殺するような能力を備えた操作量を、トライ＆エラー的な人的チューニング作業により設定しようとすると、設定工数の膨大化を招いてしまう。これに対して、この内燃機関の制御装置によれば、補正値が、補正値と制御量との関係を表す動特性モデルに基づいて算出されるとともに、この動特性モデルを予め設定する作業は、トライ＆エラー的な手法によらず、所定の補正値を制御対象に与えたときの制御量のデータを計測し、補正値と制御量の計測データを用いながら、様々な同定アルゴリズムにより実行できるものであり、上記人的チューニング作業よりも容易なものであるので、作業工数を大幅に低減することができる。
【００２１】
請求項７に係る発明は、請求項１ないし６のいずれかに記載の内燃機関３の制御装置１，１Ａにおいて、制御量の目標となる目標制御量（目標回転数ＮＥ＿ｃｍｄ、目標圧Ｐｍｉ＿ｃｍｄ）を算出する目標制御量算出手段（ＥＣＵ２、目標値算出部３１，１３１）と、所定のフィードバック制御アルゴリズム［式（１５）〜（２３），（４５）〜（５３）］により、制御量が目標制御量になるように、第１操作量および第２操作量を修正する修正手段（ＥＣＵ２、協調フィードバックコントローラ５０，１５０）と、をさらに備えることを特徴とする。
【００２２】
一般に、内燃機関の燃焼モードを複数の燃焼モード間で切り換えた場合、発生トルクの変化度合すなわち制御量の変化度合は、内燃機関の個体間のばらつきや経年変化などに起因して一様ではない。そのため、燃焼モードの切換に伴う制御量の変化を相殺することを目的として、制御量を変化させる操作量の動作状態を予め設定しても、その相殺精度すなわち補償精度が低下するおそれがある。これに対して、この内燃機関の制御装置によれば、所定のフィードバック制御アルゴリズムにより、制御量が目標制御量になるように、第１操作量および第２操作量が修正されるので、上述したような、内燃機関の個体間のばらつきや経年変化などが存在する場合でも、２つの操作量により制御量の変化を適切に相殺することができ、相殺精度すなわち補償精度を向上させることができる。
【発明を実施するための最良の形態】
【００２３】
以下、図面を参照しながら、本発明の第１実施形態に係る内燃機関の制御装置について説明する。この制御装置１は、図１に示す内燃機関（以下「エンジン」という）３を制御するものであり、図２に示すように、ＥＣＵ２を備えている。このＥＣＵ２は、後述するように、エンジン３の運転状態に応じて、アイドル運転中のエンジン回転数制御（以下「アイドル回転数制御」という）処理などの各種の制御処理を実行する。
【００２４】
図１に示すように、エンジン３は、４組の気筒３ａおよびピストン３ｂ（１組のみ図示）を有する直列４気筒ガソリンエンジンであり、自動変速機付きの車両（図示せず）に搭載されている。エンジン３には、気筒３ａ毎に、吸気可変動弁機構４、排気可変動弁機構５、燃料噴射弁６および点火プラグ７（図２に１つのみ図示）が設けられている。この吸気可変動弁機構４は、吸気弁４ａを電磁力で開閉駆動する電磁式のものであり、吸気弁４ａを閉弁方向に付勢するコイルばねと、ＥＣＵ２に電気的に接続された吸気ソレノイド４ｂ（図２に１つのみ図示）などを備えている。
【００２５】
この吸気可変動弁機構４では、吸気弁４ａは、吸気ソレノイド４ｂが非励磁状態のときには、コイルばねの付勢力によって閉弁位置に保持される。また、吸気弁４ａは、吸気ソレノイド４ｂがＥＣＵ２によって励磁されると、その電磁力により、コイルばねの付勢力に抗しながら開弁方向に駆動され、開弁状態に保持されるとともに、吸気ソレノイド４ｂが非励磁状態に戻されると、コイルばねの付勢力によって閉弁状態に戻る。
【００２６】
以上の構成により、吸気弁４ａは、そのバルブタイミング（すなわち開弁および閉弁タイミング）が吸気可変動弁機構４を介して自在に変更されるとともに、図３に示すように、バルブリフト曲線がほぼ台形状になるように構成されている。本実施形態では、ＥＣＵ２により、吸気弁４ａは、その開弁タイミングは一定に保持されるとともに、その閉弁タイミングが図３に実線で示す最遅角側の遅閉じタイミングと、同図に２点鎖線で示す最進角側の早閉じタイミングとの間で自在に制御される。なお、以下の説明では、吸気弁４ａの開弁中、これが最大リフトに保持されるクランク角の期間を「吸気開角Ｌｉｆｔｉｎ」という（図３参照）。すなわち、この吸気可変動弁機構４では、吸気開角Ｌｉｆｔｉｎが増大するほど、吸入空気量Ｇｃｙｌがより増大することになる。
【００２７】
一方、排気可変動弁機構５は、吸気可変動弁機構４と同様に、排気弁５ａを電磁力で開閉駆動する電磁式のものであり、排気弁５ａを閉弁方向に付勢するコイルばねと、ＥＣＵ２に電気的に接続された排気ソレノイド５ｂ（図２に１つのみ図示）などを備えている。
【００２８】
この排気可変動弁機構５では、排気弁５ａは、排気ソレノイド５ｂが非励磁状態のときには、コイルばねの付勢力によって閉弁位置に保持される。また、排気弁５ａは、排気ソレノイド５ｂがＥＣＵ２によって励磁されると、その電磁力により、コイルばねの付勢力に抗しながら開弁方向に駆動され、開弁状態に保持されるとともに、排気ソレノイド５ｂが非励磁状態に戻されると、コイルばねの付勢力によって閉弁状態に戻る。
【００２９】
以上の構成により、排気弁５ａは、そのバルブタイミングが排気可変動弁機構５を介して自在に変更可能であるとともに、図３に破線で示すように、バルブリフト曲線がほぼ台形状になるように構成されている。なお、本実施形態では、後述する制御処理中、排気弁５ａのバルブタイミングは一定に保持される。
【００３０】
一方、燃料噴射弁６は、燃料を燃焼室内に直接噴射するようにシリンダヘッド３ｃに取り付けられている。すなわち、エンジン３は直噴エンジンとして構成されている。この燃料噴射弁６は、ＥＣＵ２に電気的に接続されており、ＥＣＵ２により、開弁時間および開弁タイミングが制御される。すなわち、燃料噴射制御が実行される。
【００３１】
この燃料噴射制御では、後述するように、エンジン３の燃料噴射モードが、その運転状態に応じて、単噴射モードと分割噴射モードに切り換えられる。この単噴射モードでは、混合気が均一燃焼するように、燃料が吸気行程および圧縮行程の間に１回噴射される。一方、分割噴射モードでは、混合気が成層燃焼するように、燃料が吸気行程および圧縮行程の間に分割して２回噴射される。すなわち、燃料噴射モードが単噴射モードと分割噴射モードの間で切り換えられることにより、混合気の燃焼モードが均一燃焼モードと成層燃焼モードの間で切り換えられる。
【００３２】
また、点火プラグ７も、ＥＣＵ２に電気的に接続されており、ＥＣＵ２により、点火時期Ｉｇ＿ｌｏｇに応じたタイミングで燃焼室内の混合気を燃焼させるように、放電状態が制御される。すなわち、点火時期制御が実行される。
【００３３】
さらに、エンジン３には、クランク角センサ２０および水温センサ２１が設けられている。クランク角センサ２０は、マグネットロータおよびＭＲＥピックアップで構成されており、クランクシャフト３ｄの回転に伴い、いずれもパルス信号であるＣＲＫ信号およびＴＤＣ信号をＥＣＵ２に出力する。
【００３４】
このＣＲＫ信号は、所定クランク角（例えば１゜）毎に１パルスが出力され、ＥＣＵ２は、このＣＲＫ信号に基づき、エンジン３の回転数（以下「エンジン回転数」という）ＮＥを算出する。また、ＴＤＣ信号は、各気筒３ａのピストン３ｂが吸気行程のＴＤＣ位置よりも若干、手前の所定のクランク角位置にあることを表す信号であり、本実施形態の４気筒のエンジン３では、クランク角１８０゜毎に１パルスが出力される。
【００３５】
また、水温センサ２１は、エンジン３のシリンダブロック内を循環する冷却水の温度であるエンジン水温ＴＷを検出して、それを表す検出信号をＥＣＵ２に出力する。
【００３６】
一方、エンジン３の吸気通路８には、エアフローセンサ２２が設けられている。このエアフローセンサ２２は、熱線式エアフローメータで構成されており、吸気通路８を流れる空気の流量（以下「空気流量」という）を検出し、それを表す検出信号をＥＣＵ２に出力する。ＥＣＵ２は、後述するように、エアフローセンサ２２の検出信号に基づき、１気筒当たりの吸入空気量Ｇｃｙｌを算出する。
【００３７】
一方、エンジン３の排気通路９には、ＬＡＦセンサ２３が設けられている。ＬＡＦセンサ２３は、ジルコニアおよび白金電極などで構成され、理論空燃比よりもリッチなリッチ領域から極リーン領域までの広範囲な空燃比の領域において、排気通路９内を流れる排ガス中の酸素濃度をリニアに検出して、それを表す検出信号をＥＣＵ２に出力する。ＥＣＵ２は、このＬＡＦセンサ２３の検出信号の値に基づき、排ガス中の空燃比を表す検出空燃比を算出する。
【００３８】
さらに、図２に示すように、ＥＣＵ２には、筒内圧センサ２４、アクセル開度センサ２５、車速センサ２６、エアコン・スイッチ２７、交流発電機・スイッチ２８およびパワーステアリングポンプ・スイッチ２９がそれぞれ接続されている。
【００３９】
この筒内圧センサ２４は、点火プラグ７と一体型の圧電素子タイプのものであり、気筒３ａ毎に設けられている（１つのみ図示）。筒内圧センサ２４は、各気筒３ａ内の圧力すなわち筒内圧Ｐｃｙｌの変化に伴ってたわむことにより、筒内圧Ｐｃｙｌを表す検出信号をＥＣＵ２に出力する。ＥＣＵ２は、この筒内圧センサ２４の検出信号に基づき、図示平均有効圧Ｐｍｉを算出する。
【００４０】
また、アクセル開度センサ２５は、車両の図示しないアクセルペダルの踏み込み量（以下「アクセル開度」という）ＡＰを検出して、それを表す検出信号をＥＣＵ２に出力する。さらに、車速センサ２６は、車両の図示しない車軸に取り付けられており、車両の走行速度（以下「車速」という）ＶＰを検出して、それを表す検出信号をＥＣＵ２に出力する。
【００４１】
一方、エアコン・スイッチ２７は、図示しないエアコンデイショナーが作動中のときにはＯＮ信号をＥＣＵ２に出力し、停止中のときにはＯＦＦ信号を出力する。また、交流発電機・スイッチ２８は、図示しない交流発電機が作動中のときにはＯＮ信号をＥＣＵ２に出力し、停止中のときにはＯＦＦ信号を出力する。さらに、パワーステアリングポンプ・スイッチ２９は、図示しないパワーステアリングポンプが作動中のときにはＯＮ信号をＥＣＵ２に出力し、停止中のときにはＯＦＦ信号を出力する。ＥＣＵ２は、これらのスイッチ２７〜２９のＯＮ／ＯＦＦ信号に基づき、補機負荷Ｌｏａｄを算出する。
【００４２】
ＥＣＵ２は、ＣＰＵ、ＲＡＭ、ＲＯＭおよびＩ／Ｏインターフェース（いずれも図示せず）などからなるマイクロコンピュータで構成されており、前述した各種のセンサ２０〜２６の検出信号および各種のスイッチ２７〜２９のＯＮ／ＯＦＦ信号などに応じて、エンジン３の運転状態を判別するとともに、アイドル回転数制御を含む各種の制御処理を実行する。このアイドル回転数制御では、ＥＣＵ２は、後述するように、アイドル運転中、吸気可変動弁機構４を介して吸気開角Ｌｉｆｔｉｎすなわち吸入空気量Ｇｃｙｌを制御すると同時に、点火プラグ７を介して点火時期Ｉｇ＿ｌｏｇを制御し、それにより、エンジン回転数ＮＥを制御する。すなわち、アイドル回転数制御を実行する。
【００４３】
この場合、点火時期制御は、吸入空気量制御と比べて、応答遅れが小さいことに加えて、１燃焼サイクルにおいて、エンジントルクＴＲＱの変更可能な幅、すなわちアイドル運転中のエンジン回転数ＮＥの変更可能な幅も大きいものの、エンジン３の燃焼状態の観点から、点火時期Ｉｇ＿ｌｏｇの制御幅が限定されてしまうという特徴を備えている。一方、吸入空気量制御は、点火時期制御と比べて、１燃焼サイクル中において、アイドル運転中のエンジン回転数ＮＥの変更可能な幅が小さいとともに、応答遅れが大きいことで、エンジン回転数ＮＥの目標回転数ＮＥ＿ｃｍｄへの収束性が悪いという特徴を備えている。
【００４４】
なお、本実施形態では、ＥＣＵ２が第１操作量算出手段、第２操作量算出手段、第１基本操作量算出手段、補正値算出手段、遅延手段、目標制御量算出手段および修正手段に相当する。
【００４５】
次に、本実施形態のアイドル回転数制御手法の概念について説明する。まず、前述したように、本実施形態のエンジン３では、その燃料噴射モードが、エンジン運転状態に応じて、単噴射モードおよび分割噴射モードの間で切り換えられ、それにより、混合気の燃焼モードが均一燃焼モードおよび成層燃焼モードの間で切り換えられる。以下の説明では、任意の気筒３ａにおいて、１燃焼サイクル中に燃料噴射弁６から噴射される総燃料量を総燃料噴射量Ｔｃｙｌとし、分割噴射モードの１回目に噴射される燃料量を１回目噴射量Ｔｃｙｌ１とし、２回目に噴射される燃料量を２回目噴射量Ｔｃｙｌ２（＝Ｔｃｙｌ−Ｔｃｙｌ１）とするとともに、１回目噴射率ＲｉｎｊをＲｉｎｊ＝Ｔｃｙｌ１／（Ｔｃｙｌ１＋Ｔｃｙｌ２）として定義する。この場合、単噴射モードのときすなわちＴｃｙｌ２＝０のときには、Ｒｉｎｊ＝１となり、分割噴射モードのときには、Ｒｉｎｊ＜１．０となる。
【００４６】
図４は、本実施形態のエンジン３において、吸入空気量Ｇｃｙｌおよび総燃料噴射量Ｔｃｙｌを一定に保持しながら、１回目噴射率Ｒｉｎｊおよび点火時期Ｉｇ＿ｌｏｇを変化させたときの、エンジン３の発生トルク（以下「エンジントルク」という）ＴＲＱの測定結果を表している。同図において、Ｉｇ１〜４は、点火時期Ｉｇ＿ｌｏｇの所定値をそれぞれ示しており、Ｉｇ１＜Ｉｇ２＜Ｉｇ３＜Ｉｇ４の関係が成立するように設定されている。なお、本実施形態では、点火時期Ｉｇ＿ｌｏｇは、所定クランク角位置（例えば圧縮行程のＴＤＣ位置）での点火時期Ｉｇ＿ｌｏｇを値０とするとともに、それよりも進角側の点火時期Ｉｇ＿ｌｏｇは正値に設定され、遅角側の点火時期Ｉｇ＿ｌｏｇは負値に設定される。したがって、上記所定値Ｉｇ１〜４では、値Ｉｇ４が最も進角側の値に設定されている。
【００４７】
同図に示すように、このエンジン３では、吸入空気量Ｇｃｙｌ、総燃料噴射量Ｔｃｙｌおよび点火時期Ｉｇ＿ｌｏｇを一定に保持した場合において、１回目噴射率Ｒｉｎｊを値１．０からそれよりも小さい値に変化させると、エンジントルクＴＲＱが増大することが判る。これは、混合気の燃焼モードが均一燃焼モードから成層燃焼モードに変化することで、熱効率（すなわち燃焼効率）が向上することに起因する。
【００４８】
一方、燃料噴射弁６では、一般的に、高負荷時に要求されるエンジントルクＴＲＱを確保するために、噴射可能な燃料量の最大値をある程度大きな値に設定しなければならないという設計上の理由から、噴射可能な燃料量の最小値Ｔｍｉｎを極小値に設定することはできない。そのため、この最小値Ｔｍｉｎと、分割噴射モードでの１回目の噴射量Ｔｃｙｌ１および２回目の噴射量Ｔｃｙｌ２の関係において、Ｔｃｙｌ１＜ＴｍｉｎまたはＴｃｙｌ２＜Ｔｍｉｎが成立したときには、燃料噴射の制御精度が極度に低下し、燃料噴射が適切に実行されなくなるおそれがある。この場合、本実施形態の燃料噴射弁６では、１回目噴射率Ｒｉｎｊが図４に示すＲｉｎｊ＿ｌｍｔ＜Ｒｉｎｊ＜１．０の範囲にあるときに、Ｔｃｙｌ２＜Ｔｍｉｎが成立するように構成されている。ここで、Ｒｉｎｊ＿ｌｍｔは、１回目噴射率Ｒｉｎｊの所定のしきい値（例えば値０．８）を表している。
【００４９】
燃料噴射弁６が以上のような特性を有していることにより、アイドル回転数制御中、補機負荷Ｌｏａｄなどが変動した場合、エンジントルクＴＲＱを増大方向または減少方向に制御するために、吸入空気量Ｇｃｙｌおよび総燃料噴射量Ｔｃｙｌを一定に保持しながら、点火時期Ｉｇ＿ｌｏｇおよび１回目噴射率Ｒｉｎｊを変更すると、急激なトルク変動すなわち急激なエンジン回転数ＮＥの変動（以下「回転変動」という）が発生する可能性がある。以下、その理由を図５を参照しながら説明する。
【００５０】
この図５は、アイドル回転数制御中、補機負荷Ｌｏａｄの上昇などに起因して、エンジントルクＴＲＱを増大方向に制御すべく、燃焼モードの成層燃焼モードへの切換により熱効率を向上させるために、吸入空気量Ｇｃｙｌおよび総燃料噴射量Ｔｃｙｌを一定に保持しながら、点火時期Ｉｇ＿ｌｏｇおよび１回目噴射率Ｒｉｎｊを状態Ｘ１（Ｒｉｎｊ＝１．０，Ｉｇ＿ｌｏｇ＝Ｉｇ６）から状態Ｘ２（Ｒｉｎｊ＝ＲｉｎｊＸ，Ｉｇ＿ｌｏｇ＝Ｉｇ６）に移行させる場合の例を示している。同図において、ＲｉｎｊＸは、ＲｉｎｊＸ＜Ｒｉｎｊ＿ｌｍｔが成立する１回目噴射率Ｒｉｎｊの所定値を表している。また、Ｉｇ５，６は、Ｉｇ５＜Ｉｇ６が成立する点火時期Ｉｇ＿ｌｏｇの所定値を表している。
【００５１】
同図に示すように、燃焼モードを均一燃焼モードから成層燃焼モードに切り換えるために、点火時期Ｉｇ＿ｌｏｇおよび１回目噴射率Ｒｉｎｊを状態Ｘ１から状態Ｘ２に移行させようとすると、燃料噴射弁６の前述した特性に起因して、１回目噴射率ＲｉｎｊをＲｉｎｊ＿ｌｍｔ＜Ｒｉｎｊ＜１．０の範囲内で徐々に変更することができず、それにより、１回目噴射率Ｒｉｎｊを値１．０からしきい値Ｒｉｎｊ＿ｌｍｔよりも小さい値まで一気に変更しなければならない。その結果、燃料噴射モードの切換に伴う燃焼モードの切換に起因して、熱効率が急変することで、急激な回転変動が発生してしまう。
【００５２】
これを回避すべく、本願発明では、アイドル回転数制御中、熱効率を向上させるために、燃焼モードを均一燃焼モードから成層燃焼モードに切り換える場合、図６に示すように、まず、吸入空気量Ｇｃｙｌおよび総燃料噴射量Ｔｃｙｌを一定に保持しながら、点火時期Ｉｇ＿ｌｏｇおよび１回目噴射率Ｒｉｎｊを、状態Ｘ１（Ｒｉｎｊ＝１．０，Ｉｇ＿ｌｏｇ＝Ｉｇ６）から状態Ｘ２’（Ｒｉｎｊ＝ＲｉｎｊＸ，Ｉｇ＿ｌｏｇ＝Ｉｇ５）に迅速に移行させる。この場合、状態Ｘ１のときのエンジントルクＴＲＱは、状態Ｘ２のときと同じ値であるので、回転変動が発生しない。
【００５３】
次いで、総燃料噴射量Ｔｃｙｌを一定に保持しかつ１回目噴射率Ｒｉｎｊを値ＲｉｎｊＸに保持しながら、後述する補償値Ｕｍｕｓｉｃ＿ｉｇにより、点火時期Ｉｇ＿ｌｏｇを値Ｉｇ５から値Ｉｇ６に移行させる（すなわち状態Ｘ２’から状態Ｘ２に移行させる）と同時に、吸気操作量Ｕａｒを、点火時期Ｉｇ＿ｌｏｇの進角側への変更に伴うエンジン回転数ＮＥの上昇を打ち消すように、後述する協調フィードバック制御アルゴリズムにより算出し、それにより、吸入空気量Ｇｃｙｌを制御する。この場合、吸入空気量制御は、前述したように点火時期制御よりも応答遅れが大きいので、点火時期Ｉｇ＿ｌｏｇの所定値Ｉｇ５から所定値Ｉｇ６への移行速度は、吸入空気量制御が追従できるような値に設定される。以上の制御手法により、アイドル回転数制御中、熱効率を向上させるために、燃焼モードを均一燃焼モードから成層燃焼モードに切り換える場合において、急激な回転変動を抑制することができる。
【００５４】
一方、図５の例とは逆に、補機負荷Ｌｏａｄの減少などに起因して、エンジントルクＴＲＱを減少方向に制御すべく、燃焼モードを成層燃焼モードから均一燃焼モードに切り換える場合、例えば、点火時期Ｉｇ＿ｌｏｇおよび１回目噴射率Ｒｉｎｊを、状態Ｘ２（Ｒｉｎｊ＝ＲｉｎｊＸ，Ｉｇ＿ｌｏｇ＝Ｉｇ６）から状態Ｘ１（Ｒｉｎｊ＝１．０，Ｉｇ＿ｌｏｇ＝Ｉｇ６）に移行させる場合にも、燃料噴射弁６の前述した特性に起因して、１回目噴射率Ｒｉｎｊをしきい値Ｒｉｎｊ＿ｌｍｔよりも小さい値から値１．０まで一気に変更しなければならず、その結果、急激なトルクダウンが発生することで、急激な回転変動が発生してしまう。
【００５５】
これを解消するために、本願発明では、燃焼モードを成層燃焼モードから均一燃焼モードに切り換える場合、図７に示すように、まず、総燃料噴射量Ｔｃｙｌを一定に保持しかつ１回目噴射率Ｒｉｎｊを値ＲｉｎｊＸに保持しながら、前述した補償値Ｕｍｕｓｉｃ＿ｉｇにより、点火時期Ｉｇ＿ｌｏｇを値Ｉｇ６から値Ｉｇ５に移行させると同時に、点火操作量Ｕｉｇを前述した協調フィードバック制御アルゴリズムにより算出することで、吸入空気量Ｇｃｙｌを制御する。その際、前述した理由により、点火時期Ｉｇ＿ｌｏｇの移行速度は、吸入空気量制御が追従できるような値に設定される。以上により、急激な回転変動を抑制することができる。
【００５６】
次いで、吸入空気量Ｇｃｙｌおよび総燃料噴射量Ｔｃｙｌを保持しながら、点火時期Ｉｇ＿ｌｏｇおよび１回目噴射率Ｒｉｎｊを、状態Ｘ２’（Ｒｉｎｊ＝ＲｉｎｊＸ，Ｉｇ＿ｌｏｇ＝Ｉｇ５）から状態Ｘ１（Ｒｉｎｊ＝１．０，Ｉｇ＿ｌｏｇ＝Ｉｇ６）に迅速に移行させる。この場合、状態Ｘ１でのエンジントルクＴＲＱは、状態Ｘ２での値と同じであるので、トルク段差や急激な回転変動は発生しない。以上の制御手法により、アイドル回転数制御中、燃焼モードを成層燃焼モードから均一燃焼モードに切り換える場合でも、急激な回転変動が発生するのを抑制することができる。
【００５７】
次に、図８を参照しながら、本実施形態の制御装置１について説明する。同図に示すように、この制御装置１は、アイドル回転数コントローラ３０を備えており、このアイドル回転数コントローラ３０は、具体的にはＥＣＵ２により構成されている。
【００５８】
アイドル回転数コントローラ３０では、以下に述べる制御アルゴリズムにより、１回目噴射率Ｒｉｎｊ、点火操作量Ｕｉｇおよび吸気操作量Ｕａｒが算出され、これらの３つの値Ｒｉｎｊ，Ｕｉｇ，Ｕａｒを制御対象としてのエンジン３に入力することにより、アイドル運転中、制御量としてのエンジン回転数ＮＥが、エンジン３の急激な回転変動（言い換えればトルク段差）が発生しない状態で、目標回転数ＮＥ＿ｃｍｄに収束するようにフィードバック制御される。この点火操作量Ｕｉｇは、点火時期Ｉｇ＿ｌｏｇであり、吸気操作量Ｕａｒは、後述するように、吸気開角Ｌｉｆｔｉｎをフィードバック制御する際の目標となる目標吸気開角Ｌｉｆｔｉｎ＿ｃｍｄである。なお、本実施形態では、アイドル回転数コントローラ３０が第１操作量算出手段および第２操作量算出手段に相当し、点火操作量Ｕｉｇが第１操作量に相当し、吸気操作量Ｕａｒが第２操作量に相当する。
【００５９】
アイドル回転数コントローラ３０は、同図に示すように、目標値算出部３１、分割噴射コントローラ４０、協調フィードバックコントローラ５０、協調ゲインスケジューラ８０およびマップ値算出部９０を備えている。
【００６０】
この目標値算出部３１では、後述するように、アイドル回転数制御中、エンジン回転数ＮＥの目標となる目標回転数ＮＥ＿ｃｍｄが算出される。なお、本実施形態では、目標値算出部３１が目標制御量算出手段に相当し、目標回転数ＮＥ＿ｃｍｄが目標制御量に相当する。
【００６１】
また、分割噴射コントローラ４０では、後述するように、目標回転数ＮＥ＿ｃｍｄに応じて、補償値Ｕｍｕｓｉｃ＿ｉｇおよび１回目噴射率Ｒｉｎｊが算出される。なお、本実施形態では、分割噴射コントローラ４０が補正値算出手段および遅延手段に相当し、補償値Ｕｍｕｓｉｃ＿ｉｇが補正値に相当する。
【００６２】
さらに、協調フィードバックコントローラ５０では、後述するように、目標回転数ＮＥ＿ｃｍｄ、エンジン回転数ＮＥ、補償値Ｕｍｕｓｉｃ＿ｉｇ、２つのマップ値Ｕｍａｐ＿ｉｇ，Ｕｍａｐ＿ａｒおよび４つのゲインＫｒｃｈ＿ｉｇ，Ｋａｄｐ＿ｉｇ，Ｋｒｃｈ＿ａｒ，Ｋａｄｐ＿ａｒに応じて、点火操作量Ｕｉｇおよび吸気操作量Ｕａｒが算出される。なお、本実施形態では、協調フィードバックコントローラ５０が第１基本操作量算出手段および修正手段に相当する。
【００６３】
一方、協調ゲインスケジューラ８０では、後述するように、協調フィードバックコントローラ５０で算出された切換関数σｎｅに応じて、４つのゲインＫｒｃｈ＿ｉｇ，Ｋａｄｐ＿ｉｇ，Ｋｒｃｈ＿ａｒ，Ｋａｄｐ＿ａｒが算出される。
【００６４】
また、マップ値算出部９０では、後述するように、協調フィードバックコントローラ５０で算出された目標回転数のフィルタ値ＮＥ＿ｃｍｄ＿ｆに応じて、２つのマップ値Ｕｍａｐ＿ｉｇ，Ｕｍａｐ＿ａｒが算出される。なお、本実施形態では、マップ値算出部９０が第１基本操作量算出手段に相当する。
【００６５】
次に、前述した目標値算出部３１について説明する。この目標値算出部３１では、エンジン水温ＴＷおよび補機負荷Ｌｏａｄに応じて、図９に示すマップを検索することにより目標回転数ＮＥ＿ｃｍｄが算出される。同図において、ＴＷ１はエンジン水温ＴＷの所定値（例えば２５゜Ｃ）であり、ＮＥ１は、エンジン回転数ＮＥの所定値（例えば７５０ｒｐｍ）である。また、Ｌｏａｄ１，２は、補機負荷Ｌｏａｄの所定値であり、Ｌｏａｄ１＜Ｌｏａｄ２の関係が成立するように設定される。
【００６６】
このマップでは、目標回転数ＮＥ＿ｃｍｄは、補機負荷Ｌｏａｄが大きいほど、より高い値に設定されている。これは、補機負荷Ｌｏａｄが大きいほど、補機による負荷変動に起因してエンジン回転数ＮＥの変動が発生しやすくなるので、エンジン回転数ＮＥを上昇させ、内燃機関の慣性エネルギを上昇させることによって、アイドル回転数の安定化を図るとともに、補機負荷Ｌｏａｄの上昇をカバーするために、より高い燃焼安定性を確保すべく、アイドル回転数をより高い値に制御するためである。また、目標回転数ＮＥ＿ｃｍｄは、エンジン水温ＴＷが高い領域では、低い領域よりも低い値に設定されている。これは、エンジン水温ＴＷが高い領域では、エンジン３の燃焼状態が安定することで、より低いエンジン回転数ＮＥでアイドル運転を実行可能であることによる。
【００６７】
次に、前述した分割噴射コントローラ４０について説明する。この分割噴射コントローラ４０では、以下に述べるように、目標回転数ＮＥ＿ｃｍｄに応じて、補償値Ｕｍｕｓｉｃ＿ｉｇおよび１回目噴射率Ｒｉｎｊが算出される。この補償値Ｕｍｕｓｉｃ＿ｉｇは、アイドル回転数制御中の急激な回転変動を点火時期制御で補償するためのフィードフォワード項に相当する値であり、そのため、後述する点火時期コントローラ６０での点火操作量Ｕｉｇの算出において、加算項として用いられる。
【００６８】
分割噴射コントローラ４０は、図１０に示すように、Ｒｉｎｊ＿ＳＴＢ算出部４１、ＤＮＥ算出部４２、フィードフォワードコントローラ４３および動的補償器４４を備えている。
【００６９】
このＲｉｎｊ＿ＳＴＢ算出部４１では、目標回転数ＮＥ＿ｃｍｄに応じて、図１１に示すマップを検索することにより、１回目噴射率Ｒｉｎｊの要求値Ｒｉｎｊ＿ＳＴＢが算出される。このマップは、目標回転数ＮＥ＿ｃｍｄと１回目噴射率Ｒｉｎｊの要求値Ｒｉｎｊ＿ＳＴＢの関係、すなわち、制御量としてのエンジン回転数ＮＥと、成層燃焼モードおよび均一燃焼モードとの関係を表す応答曲面モデルに相当するものであり、同図において、ＮＥ２は、ＮＥ１＜ＮＥ２の関係が成立するようなエンジン回転数ＮＥの所定値（例えば９００ｒｐｍ）である。
【００７０】
同図に示すように、要求値Ｒｉｎｊ＿ＳＴＢの算出用マップとしては、実線で示す停車時用マップと、破線で示す発進待機用マップがそれぞれ準備されている。この停車時用マップは、車両が停車中のとき、すなわち自動変速機のシフト位置がＮレンジまたはＰレンジに設定されているときに、要求値Ｒｉｎｊ＿ＳＴＢの算出に用いられるものであり、発進待機用マップは、車両が発進待機状態にあるとき、すなわち自動変速機のシフト位置がＤレンジまたはＲレンジに設定されているときに、要求値Ｒｉｎｊ＿ＳＴＢの算出に用いられるものである。まず、停車時用マップでは、要求値Ｒｉｎｊ＿ＳＴＢのマップ値は、ＮＥ＜ＮＥ１の範囲では、値１．０に設定され、ＮＥ≧ＮＥ１の範囲では、前述したしきい値Ｒｉｎｊ＿ｌｍｔ以下の値である所定値Ｒｉｎｊ１に設定されている。これは、ＮＥ≧ＮＥ１の範囲では、燃費の向上を図るべく、エンジン３を分割噴射モードすなわち成層燃焼モードで運転するである。また、ＮＥ＜ＮＥ１の範囲では、前述した燃料噴射弁６の特性に起因して、Ｔｃｙｌ２＜Ｔｍｉｎが成立することにより、２回目噴射を適切に実行できなくなるので、アイドル回転数制御の安定性および制御精度を確保すべく、エンジン３を単噴射モードすなわち均一燃焼モードで運転するためである。
【００７１】
また、発進待機用マップでは、要求値Ｒｉｎｊ＿ＳＴＢのマップ値は、ＮＥ＜ＮＥ２の範囲では、値１．０に設定され、ＮＥ≧ＮＥ２の範囲では、所定値Ｒｉｎｊ１に設定されている。これは、以下の理由による。分割噴射モードすなわち成層燃焼モードでは、単噴射モードすなわち均一燃焼モードのときと比べて、燃焼変動の度合がより大きくなるため、自動変速機のシフト位置がＤレンジまたはＲレンジに設定されているときには、低回転域において成層燃焼モードで運転すると、シフト位置がＮレンジまたはＰレンジに設定されているときと比べて、そのような燃焼変動が車体に伝わりやすくなることで、商品性の低下を招いてしまう可能性がある。したがって、発進待機用マップでは、所定値ＮＥ１よりも高い所定値ＮＥ２未満の回転数域で、低回転域での商品性の向上を目的として、エンジン３を単噴射モードすなわち均一燃焼モードで運転すべく、要求値Ｒｉｎｊ＿ＳＴＢのマップ値が値１．０に設定されている。また、ＮＥ≧ＮＥ２の範囲では、上述したように、燃費の向上を図るべく、エンジン３を分割噴射モードすなわち成層燃焼モードで運転するために、要求値Ｒｉｎｊ＿ＳＴＢのマップ値が所定値Ｒｉｎｊ１に設定されている。
【００７２】
なお、車両が本実施形態の自動変速機付きのものと異なり、手動変速機付きのものである場合には、要求値Ｒｉｎｊ＿ＳＴＢの算出用マップとして、手動変速機のシフト位置がニュートラル位置にあるときに、停車時用値マップを用い、それ以外のシフト位置（例えばリバース位置や１〜４速位置）にあるときに、発進待機用マップを用いればよい。
【００７３】
次に、ＤＮＥ算出部４２では、１回目噴射率Ｒｉｎｊの要求値Ｒｉｎｊ＿ＳＴＢおよび目標回転数ＮＥ＿ｃｍｄに応じて、変動予測値ＤＮＥが算出される。この変動予測値ＤＮＥは、アイドル回転数制御中に１回目噴射率Ｒｉｎｊを変更したときのエンジン回転数ＮＥの変動量を予測したものであり、具体的には、以下に述べる手法により算出される。
【００７４】
まず、１回目噴射率Ｒｉｎｊの要求値Ｒｉｎｊ＿ＳＴＢおよび目標回転数ＮＥ＿ｃｍｄに応じて、図１２に示すマップを検索することにより、マップ値ＤＮＥ＿ｍａｐを算出する。このマップでは、Ｒｉｎｊ＿ＳＴＢ＝Ｒｉｎｊ１のときには、目標回転数ＮＥ＿ｃｍｄが高いほど、マップ値ＤＮＥ＿ｍａｐが大きい値に設定されている。これは、目標回転数ＮＥ＿ｃｍｄが高いほど、１回目噴射率Ｒｉｎｊの変更に伴う回転変動量がより大きくなりやすいためである。
【００７５】
次いで、下式（１）により、変動予測値ＤＮＥを算出する。
【数１】
2007247476.tif 000003
【００７６】
上式（１）において、記号（ｋ）付きの各離散データは、所定の制御周期でサンプリングまたは算出されたデータであることを示しており、記号ｋは各離散データのサンプリングまたは算出サイクルの順番を表している。例えば、記号ｋは今回の制御タイミングでサンプリングまたは算出された値であることを、記号ｋ−１は前回の制御タイミングでサンプリングまたは算出された値であることをそれぞれ示している。この点は、以下の離散データにおいても同様である。また、以下の説明では、各離散データにおける記号（ｋ）などを適宜、省略する。
【００７７】
また、前述したフィードフォワードコントローラ４３では、以下に述べる手法により、１回目噴射率Ｒｉｎｊおよび補償目標値ＤＮＥ＿ｍｏｄが算出される。この補償目標値ＤＮＥ＿ｍｏｄは、補償値Ｕｍｕｓｉｃ＿ｉｇによって補償すべき回転変動量に相当する値である。
【００７８】
まず、変動方向フラグＦ＿ＤＮＥ＿ｄｉｒの値が以下のように設定される。この変動方向フラグＦ＿ＤＮＥ＿ｄｉｒは、１回目噴射率Ｒｉｎｊを変更したときに、エンジン回転数ＮＥが増大側に変化すると予想されるか否かを表すものである。具体的には、下記の条件（ｅ１）が成立しているとき、または条件（ｅ２），（ｅ３）がいずれも成立しているときには、１回目噴射率Ｒｉｎｊの変更時、エンジン回転数ＮＥが増大側に変化すると予想されるので、それを表すために変動方向フラグＦ＿ＤＮＥ＿ｄｉｒが「１」に設定される。
（ｅ１）ＤＮＥ＞ＤＮＥ＿ＰＳＴＥＰ
（ｅ２）ＤＮＥ＿ＮＳＴＥＰ≦ＤＮＥ≦ＤＮＥ＿ＰＳＴＥＰ
（ｅ３）Ｆ＿ＤＮＥ＿ｄｉｒ（ｋ−１）＝１
【００７９】
ここで、条件（ｅ１），（ｅ２）のＤＮＥ＿ＰＳＴＥＰは、１回目噴射率Ｒｉｎｊの変更時、エンジン回転数ＮＥが増大側に変化するか否かを判定するための増大側しきい値であり、正の所定値（例えば１０ｒｐｍ）に設定される。また、条件（ｅ２）のＤＮＥ＿ＮＳＴＥＰは、１回目噴射率Ｒｉｎｊを変更したときに、エンジン回転数ＮＥが減少側に変化するか否かを判定するための減少側しきい値であり、負の所定値（例えば−１０ｒｐｍ）に設定される。
【００８０】
一方、下記の条件（ｅ４）が成立しているとき、または条件（ｅ５），（ｅ６）がいずれも成立しているときには、１回目噴射率Ｒｉｎｊの変更時、エンジン回転数ＮＥが増大側に変化しないと予想されるので、それを表すために変動方向フラグＦ＿ＤＮＥ＿ｄｉｒが「０」に設定される。
（ｅ４）ＤＮＥ＜ＤＮＥ＿ＮＳＴＥＰ
（ｅ５）ＤＮＥ＿ＮＳＴＥＰ≦ＤＮＥ≦ＤＮＥ＿ＰＳＴＥＰ
（ｅ６）Ｆ＿ＤＮＥ＿ｄｉｒ（ｋ−１）＝１
【００８１】
そして、変動方向フラグＦ＿ＤＮＥ＿ｄｉｒが「１」に設定されたときには、下式（２），（３）により、１回目噴射率Ｒｉｎｊおよび補償目標値の増大側用値ＤＮＥ＿ｍｏｄ＿ｐが算出される。
【数２】
2007247476.tif 000004
【００８２】
上式（３）のλｐは、０＜λｐ＜１が成立するように設定される忘却係数である。式（３）に示すように、忘却係数λｐが増大側用値の前回値ＤＮＥ＿ｍｏｄ＿ｐ（ｋ−１）に乗算されているとともに、１回目噴射率Ｒｉｎｊの変更後は変動予測値ＤＮＥが値０になることにより、演算処理の進行に伴い、増大側用値ＤＮＥ＿ｍｏｄ＿ｐが値０に収束するように算出される。すなわち、増大側用値ＤＮＥ＿ｍｏｄ＿ｐは、忘却演算処理により算出される。それにより、後述するように、増大側用値ＤＮＥ＿ｍｏｄ＿ｐを用いて算出される補償値Ｕｍｕｓｉｃ＿ｉｇも、演算処理の進行に伴い、値０に収束するようになることで、点火操作量Ｕｉｇが補償値Ｕｍｕｓｉｃ＿ｉｇによって遅角側の値に補正された状態から、無補正の状態に変化する。
【００８３】
次いで、下式（４）により、補償目標値ＤＮＥ＿ｍｏｄが算出される。
【数３】
2007247476.tif 000005
【００８４】
一方、変動方向フラグＦ＿ＤＮＥ＿ｄｉｒが「０」に設定されたときには、変動予測値ＤＮＥと減少側しきい値ＤＮＥ＿ＮＳＴＥＰとの比較結果に基づき、以下に述べるように、変動予測値の減少側用値ＤＮＥ＿ｎ＿ｉｎ、１回目噴射率Ｒｉｎｊおよび補償目標値の減少側用値ＤＮＥ＿ｍｏｄ＿ｎを算出するとともに、待機フラグＦ＿Ｒｉｎｊ＿Ｗａｉｔの値を設定する。
【００８５】
まず、変動予測値の減少側用値ＤＮＥ＿ｎ＿ｉｎの算出手法について説明する。この変動予測値の減少側用値ＤＮＥ＿ｎ＿ｉｎは、後述するように、補償目標値の減少側用値ＤＮＥ＿ｍｏｄ＿ｎの算出に用いられるものであり、ＤＮＥ＜ＤＮＥ＿ＮＳＴＥＰが成立しているときには、下式（５）により算出される。
【数４】
2007247476.tif 000006
【００８６】
一方、ＤＮＥ＿ＮＳＴＥＰ≦ＤＮＥ≦ＤＮＥ＿ＰＳＴＥＰが成立しているときには、変動予測値の減少側用値ＤＮＥ＿ｎ＿ｉｎは、下式（６）により算出される。
【数５】
2007247476.tif 000007
【００８７】
次に、待機フラグＦ＿Ｒｉｎｊ＿Ｗａｉｔの設定手法について説明する。この待機フラグＦ＿Ｒｉｎｊ＿Ｗａｉｔは、１回目噴射率Ｒｉｎｊを変更すると、エンジントルクＴＲＱ（すなわちエンジン回転数ＮＥ）が減少側に変化すると予想される場合において、１回目噴射率Ｒｉｎｊの変更を、点火時期Ｉｇ＿ｌｏｇの変更によるエンジントルクＴＲＱの低減が終了するまで待機するか否かを判定するためのものであり、以下に述べるように設定される。
【００８８】
まず、下記の条件（ｆ１）〜（ｆ３）がいずれも成立しているとき、または条件（ｆ４）が成立しているときには、１回目噴射率Ｒｉｎｊおよび点火時期Ｉｇ＿ｌｏｇの変更を同時に行うと回転変動が発生するおそれがあることで、１回目噴射率Ｒｉｎｊの変更待機を実行すべきであるので、それを表すために待機フラグＦ＿Ｒｉｎｊ＿Ｗａｉｔが「１」に設定される。
（ｆ１）ＤＮＥ＿ＮＳＴＥＰ≦ＤＮＥ≦ＤＮＥ＿ＰＳＴＥＰ
（ｆ２）Ｆ＿Ｒｉｎｊ＿Ｗａｉｔ（ｋ−１）＝１
（ｆ３）ＤＮＥ＿ｍｏｄ＿ｎ（ｋ−１）≧ＤＮＥ＿ＮＷＡＩＴ
（ｆ４）ＤＮＥ＜ＤＮＥ＿ＮＳＴＥＰ
【００８９】
ここで、条件（ｆ３）のＤＮＥ＿ＮＷＡＩＴは、１回目噴射率Ｒｉｎｊの変更待機の要・不要を判定するためのしきい値であり、負の所定値（例えば−５ｒｐｍ）に設定されている。
【００９０】
一方、下記の条件（ｆ５）〜（ｆ７）がいずれも成立しているとき、または、条件（ｆ８），（ｆ９）がいずれも成立しているときには、１回目噴射率Ｒｉｎｊを変更すべきであることを表すために、待機フラグＦ＿Ｒｉｎｊ＿Ｗａｉｔが「０」に設定される。
（ｆ５）ＤＮＥ＿ＮＳＴＥＰ≦ＤＮＥ≦ＤＮＥ＿ＰＳＴＥＰ
（ｆ６）Ｆ＿Ｒｉｎｊ＿Ｗａｉｔ（ｋ−１）＝１
（ｆ７）ＤＮＥ＿ｍｏｄ＿ｎ（ｋ−１）＜ＤＮＥ＿ＮＷＡＩＴ
（ｆ８）ＤＮＥ＿ＮＳＴＥＰ≦ＤＮＥ≦ＤＮＥ＿ＰＳＴＥＰ
（ｆ９）Ｆ＿Ｒｉｎｊ＿Ｗａｉｔ（ｋ−１）＝０
【００９１】
次いで、１回目噴射率Ｒｉｎｊおよび補償目標値の減少側用値ＤＮＥ＿ｍｏｄ＿ｎの算出手法について説明する。まず、Ｆ＿Ｒｉｎｊ＿Ｗａｉｔ＝１のときには、これらの値Ｒｉｎｊ，ＤＮＥ＿ｍｏｄ＿ｎは、下式（７），（８）により算出される。下式（８）のλｎは、０＜λｎ＜１が成立するように設定される遅れ係数である。すなわち、補償目標値の減少側用値ＤＮＥ＿ｍｏｄ＿ｎは、応答指定型のフィルタ処理である１次遅れフィルタ処理が施された値として算出されるので、変動予測値ＤＮＥに対して所定の１次遅れ特性を示すように算出される。
【数６】
2007247476.tif 000008
【００９２】
一方、Ｆ＿Ｒｉｎｊ＿Ｗａｉｔ＝０のときには、下式（９），（１０）により、１回目噴射率Ｒｉｎｊおよび補償目標値の減少側用値ＤＮＥ＿ｍｏｄ＿ｎが算出される。
【数７】
2007247476.tif 000009
【００９３】
次いで、下式（１１）により、補償目標値ＤＮＥ＿ｍｏｄが算出される。
【数８】
2007247476.tif 000010
【００９４】
また、前述した動的補償器４４では、下式（１２）により、補償値Ｕｍｕｓｉｃ＿ｉｇが算出される。なお、下式（１２）のａ１，ｂ１は後述する動特性モデルのモデルパラメータである。ここで、前述したように、補償目標値の減少側用値ＤＮＥ＿ｍｏｄ＿ｎは、式（８）により、変動予測値ＤＮＥに対して所定の１次遅れ特性を示すように算出されるので、変動予測値ＤＮＥを相殺するための補償値Ｕｍｕｓｉｃ＿ｉｇも、所定の１次遅れ特性を示すように算出される。
【数９】
2007247476.tif 000011
【００９５】
上記式（１２）は以下のように導出される。まず、補償値Ｕｍｕｓｉｃ＿ｉｇを入力とし、変動予測値ＤＮＥを出力とする系の動特性モデルは、下式（１３）のように定義できる。すなわち、この式（１３）は、補償値Ｕｍｕｓｉｃ＿ｉｇと、制御量としてのエンジン回転数ＮＥとの関係を表す動特性モデルに相当する。また、この式（１３）の逆伝達関数は、下式（１４）のようになる。
【数１０】
2007247476.tif 000012
【００９６】
ここで、補償値Ｕｍｕｓｉｃ＿ｉｇは、変動予測値ＤＮＥを相殺する（すなわち補償する）ための値であるので、補償目標値ＤＮＥ＿ｍｏｄを、ＤＮＥ（ｋ＋１）＝−ＤＮＥ＿ｍｏｄ（ｋ）が成立するように算出すべきである。したがって、ＤＮＥ（ｋ＋１）＝−ＤＮＥ＿ｍｏｄ（ｋ）を上記式（１４）に代入すると、前述した式（１２）が導出される。
【００９７】
以上のように、分割噴射コントローラ４０では、補償値Ｕｍｕｓｉｃ＿ｉｇおよび１回目噴射率Ｒｉｎｊが算出される。
【００９８】
次に、図１３を参照しながら、前述した協調フィードバックコントローラ５０について説明する。同図に示すように、協調フィードバックコントローラ５０は、点火時期コントローラ６０および吸入空気量コントローラ７０を備えている。
【００９９】
まず、点火時期コントローラ６０について説明する。この点火時期コントローラ６０は、以下に述べるように、目標値フィルタ型２自由度スライディングモード制御アルゴリズムを適用した制御アルゴリズムにより、点火操作量Ｕｉｇ（＝Ｉｇ＿ｌｏｇ）を算出するものであり、目標値フィルタ６１、切換関数算出部６２、到達則入力算出部６３および適応則入力算出部６４および加算要素６５で構成されている。
【０１００】
この目標値フィルタ６１では、下式（１５）に示す一次遅れフィルタアルゴリズムにより、目標回転数のフィルタ値ＮＥ＿ｃｍｄ＿ｆが算出される。同式（１５）において、Ｒは、目標値応答指定パラメータであり、−１＜Ｒ＜０の範囲内の値に設定される。これにより、フィルタ値ＮＥ＿ｃｍｄ＿ｆは、目標回転数ＮＥ＿ｃｍｄに対して、目標値応答指定パラメータＲの値により決定された一次遅れの追従応答性を示す値として算出される。
【数１１】
2007247476.tif 000013
【０１０１】
また、切換関数算出部６２では、下式（１６），（１７）により、切換関数σｎｅが算出される。同式（１６）において、Ｓは、切換関数設定パラメータであり、−１＜Ｓ＜０の範囲内の値に設定される。また、Ｅｎｅは、追従誤差であり、式（１７）に示すように、エンジン回転数ＮＥと目標回転数のフィルタ値ＮＥ＿ｃｍｄ＿ｆとの偏差として定義される。
【数１２】
2007247476.tif 000014
【０１０２】
また、到達則入力算出部６３では、切換関数σｎｅと協調ゲインスケジューラ８０で設定された到達則ゲインＫｒｃｈ＿ｉｇを用い、下式（１８）により、到達則入力Ｕｒｃｈ＿ｉｇが算出される。
【数１３】
2007247476.tif 000015
【０１０３】
また、適応則入力算出部６４では、切換関数σｎｅと協調ゲインスケジューラ８０で設定された適応則ゲインＫａｄｐ＿ｉｇを用い、下式（１９）により、適応則入力Ｕａｄｐ＿ｉｇが算出される。
【数１４】
2007247476.tif 000016
【０１０４】
上式（１９）において、λは忘却係数であり、０＜λ＜１の範囲内の値に設定される。この忘却係数λを用いる理由は、適応則入力適応則入力Ｕａｄｐ＿ｉｇは積分項として算出されるため、忘却係数λを用いないと、点火操作量Ｕｉｇが遅角側に補正された状態に必要以上に長く保持される可能性があるので、そのような状態を回避するためである。
【０１０５】
さらに、加算要素６５では、以上のように算出された到達則入力Ｕｒｃｈ＿ｉｇおよび適応則入力Ｕａｄｐ＿ｉｇと、分割噴射コントローラ４０で算出された補償値Ｕｍｕｓｉｃ＿ｉｇと、マップ値算出部９０で算出されたマップ値Ｕｍａｐ＿ｉｇを用い、下式（２０）により、点火操作量Ｕｉｇが算出される。。
【数１５】
2007247476.tif 000017
【０１０６】
以上のように、点火時期コントローラ６０では、式（１５）〜（２０）の目標値フィルタ型２自由度スライディングモード制御アルゴリズムを適用した制御アルゴリズムにより、点火操作量Ｕｉｇが算出される。なお、本実施形態では、値（Ｕｒｃｈ＿ｉｇ＋Ｕａｄｐ＿ｉｇ＋Ｕｍａｐ＿ｉｇ）が第１基本操作量に相当する
【０１０７】
次に、前述した吸入空気量コントローラ７０について説明する。この吸入空気量コントローラ７０は、以下に述べるように、目標値フィルタ型２自由度スライディングモード制御アルゴリズムを適用した制御アルゴリズムにより、吸気操作量Ｕａｒ（＝Ｌｉｆｔｉｎ＿ｃｍｄ）を算出するものであり、前述した目標値フィルタ６１、前述した切換関数算出部６２、到達則入力算出部７３、適応則入力算出部７４および加算要素７５で構成されている。すなわち、この吸入空気量コントローラ７０では、目標値フィルタ６１および切換関数算出部６２を点火時期コントローラ６０と共用することにより、目標回転数のフィルタ値ＮＥ＿ｃｍｄ＿ｆおよび切換関数σｎｅを共用しながら、吸気操作量Ｕａｒが算出される。
【０１０８】
具体的には、まず、到達則入力算出部７３で、切換関数σｎｅと協調ゲインスケジューラ８０で設定された到達則ゲインＫｒｃｈ＿ａｒを用い、下式（２１）により、到達則入力Ｕｒｃｈ＿ａｒが算出される。
【数１６】
2007247476.tif 000018
【０１０９】
また、適応則入力算出部７４では、切換関数σｎｅと協調ゲインスケジューラ８０で設定された適応則ゲインＫａｄｐ＿ａｒを用い、下式（２２）により、適応則入力Ｕａｄｐ＿ａｒが算出される。
【数１７】
2007247476.tif 000019
【０１１０】
さらに、加算要素７５では、以上のように算出された到達則入力Ｕｒｃｈ＿ａｒおよび適応則入力Ｕａｄｐ＿ａｒと、マップ値算出部９０で算出されたマップ値Ｕｍａｐ＿ｉｇを用い、下式（２３）により、吸気操作量Ｕａｒが算出される。
【数１８】
2007247476.tif 000020
【０１１１】
吸入空気量コントローラ７０では、以上のように、式（１５）〜（１７），（２１）〜（２３）に示す目標値フィルタ型２自由度スライディングモード制御アルゴリズムを適用した制御アルゴリズムにより、吸気操作量Ｕａｒが算出される。
【０１１２】
次に、前述した協調ゲインスケジューラ８０について説明する。この協調ゲインスケジューラ８０では、切換関数σｎｅの値に応じて、図１４に示す到達則ゲイン算出用のマップおよび図１５に示す適応則ゲイン算出用のマップを検索することにより、前述した４つのゲインＫｒｃｈ＿ｉｇ，Ｋｒｃｈ＿ａｒ，Ｋａｄｐ＿ｉｇ，Ｋａｄｐ＿ａｒがそれぞれ算出される。なお、両図１４，１５におけるσ１，σ２は、σ１＜σ２の関係が成立する正の所定値である。
【０１１３】
まず、図１４の到達則ゲイン算出用のマップを参照すると、このマップでは、到達則ゲインＫｒｃｈ＿ｉｇは、切換関数σｎｅの正側および負側の値に対して対称に設定されており、値０付近の−σ１＜σｎｅ＜σ１の範囲では、所定の最大値Ｋｒｃｈ＿ｉｇ１に設定されているとともに、σｎｅ＜−σ２，σ２＜σｎｅの範囲では、所定の最小値Ｋｒｃｈ＿ｉｇ２に設定されている。また、−σ２≦σｎｅ≦−σ１，σ１≦σｎｅ≦σ２の範囲では、σｎｅの絶対値が小さくなるほど、より大きな値に設定されている。
【０１１４】
また、到達則ゲインＫｒｃｈ＿ａｒも、切換関数σｎｅの正側および負側の値に対して対称に設定されており、値０付近の−σ１＜σｎｅ＜σ１の範囲では、所定の最小値Ｋｒｃｈ＿ａｒ２に設定されているとともに、σｎｅ＜−σ２，σ２＜σｎｅの範囲では、所定の最大値Ｋｒｃｈ＿ａｒ１に設定されている。また、−σ２≦σｎｅ≦−σ１，σ１≦σｎｅ≦σ２の範囲では、σｎｅの絶対値が小さくなるほど、より小さな値に設定されている。
【０１１５】
一方、図１５の適応則ゲイン算出用のマップを参照すると、このマップでは、適応則ゲインＫａｄｐ＿ｉｇは、切換関数σｎｅの正側および負側の値に対して対称に設定されており、値０付近の−σ１＜σｎｅ＜σ１の範囲では、所定の最大値Ｋａｄｐ＿ｉｇ１に設定されているとともに、σｎｅ＜−σ２，σ２＜σｎｅの範囲では、所定の最小値Ｋａｄｐ＿ｉｇ２に設定されている。また、−σ２≦σｎｅ≦−σ１，σ１≦σｎｅ≦σ２の範囲では、σｎｅの絶対値が小さくなるほど、より大きな値に設定されている。
【０１１６】
また、適応則ゲインＫａｄｐ＿ａｒも、切換関数σｎｅの正側および負側の値に対して対称に設定されており、値０付近の−σ１＜σｎｅ＜σ１の範囲では、所定の最小値Ｋａｄｐ＿ａｒ２に設定されているとともに、σｎｅ＜−σ２，σ２＜σｎｅの範囲では、所定の最大値Ｋａｄｐ＿ａｒ１に設定されている。また、−σ２≦σｎｅ≦−σ１，σ１≦σｎｅ≦σ２の範囲では、σｎｅの絶対値が小さくなるほど、より小さな値に設定されている。
【０１１７】
４つのゲインＫｒｃｈ＿ｉｇ，Ｋａｄｐ＿ｉｇ，Ｋｒｃｈ＿ａｒ，Ｋａｄｐ＿ａｒの値が以上のように設定されている理由は、以下による。すなわち、前述したように、点火時期制御は、吸入空気量制御と比べて、応答遅れが小さく、制御の分解能が高い（最小の点火操作量Ｕｉｇに対するエンジン回転数ＮＥの変化度合いが小さい）ことに加えて、１燃焼サイクル中においてエンジントルクＴＲＱすなわちアイドル運転中のエンジン回転数ＮＥの変更可能な幅も大きいものの、エンジン３の燃焼状態の観点から、点火時期Ｉｇ＿ｌｏｇの制御幅が限定されてしまうという特徴を備えている。一方、吸入空気量制御は、制御の分解能が点火時期制御と比べて低く、目標回転数ＮＥ＿ｃｍｄの大きな変化に対しても対応できる反面、点火時期制御と比べて１燃焼サイクル中においてアイドル運転中のエンジン回転数ＮＥの変更可能な幅が小さいとともに、応答遅れが大きいことで、エンジン回転数ＮＥの目標回転数ＮＥ＿ｃｍｄへの収束性が悪いという特徴を備えている。
【０１１８】
これに加えて、本実施形態の協調フィードバックコントローラ５０では、前述したように目標値フィルタ型２自由度スライディングモード制御アルゴリズムを用いているので、切換関数σｎｅの絶対値が値０に近い場合には、目標値フィルタ６１により設定された、目標回転数ＮＥ＿ｃｍｄに対するエンジン回転数ＮＥの追従挙動と実際の追従挙動との差が小さいとともに、切換関数σｎｅにより指定された追従誤差Ｅｎｅの値０への収束挙動と実際の収束挙動との差が小さい状態にある。
【０１１９】
したがって、切換関数σｎｅの絶対値が値０に近いときには、アイドル回転数制御の分解能および制御精度を高めるべく、アイドル回転数制御への点火時期制御の寄与度合いを高めると同時に、吸入空気量制御の寄与度合いを低くするためである。これとは逆に、切換関数σｎｅの絶対値が大きい場合、目標値フィルタ６１により設定された上記追従挙動と実際の追従挙動との差が大きいとともに、切換関数σｎｅにより指定された上記収束挙動と実際の収束挙動との差が大きい状態にあるので、アイドル回転数制御の応答性を高めるべく、アイドル回転数制御への吸入空気量制御の寄与度合いを高めると同時に、点火時期制御の寄与度合いを低くするためである。
【０１２０】
以上の理由により、本実施形態の協調フィードバックコントローラ５０における点火時期制御および吸入空気量制御の協調制御の場合、切換関数σｎｅの絶対値が比較的小さい領域、すなわち、切換関数σｎｅの値が切換直線に近い領域が点火時期制御がメインの領域となり、それ以外の領域は、吸入空気量制御がメインの領域となる。これと同様に、エンジン回転数ＮＥおよび目標回転数ＮＥ＿ｃｍｄの関係においては、両者の乖離度合いが小さい領域が、点火時期制御がメインの領域となり、それ以外の領域は、吸入空気量制御がメインの領域となる。
【０１２１】
次に、前述したマップ値算出部９０について説明する。このマップ値算出部９０では、以下に述べるように、２つのマップ値Ｕｍａｐ＿ｉｇ，Ｕｍａｐ＿ａｒが算出される。これらのマップ値Ｕｍａｐ＿ｉｇ，Ｕｍａｐ＿ａｒはいずれも、エンジン回転数ＮＥを目標回転数のフィルタ値ＮＥ＿ｃｍｄ＿ｆに制御するための（すなわちエンジン回転数ＮＥを目標回転数ＮＥ＿ｃｍｄに制御するための）フィードフォワード項に相当する値であり、そのため、前述したように、点火操作量Ｕｉｇおよび吸気操作量Ｕａｒの算出において、加算項として用いられる。
【０１２２】
まず、マップ値Ｕｍａｐ＿ｉｇは、目標回転数のフィルタ値ＮＥ＿ｃｍｄ＿ｆに応じて、図１６に示すマップを検索することにより算出される。同図のＮＥ３，４は、ＮＥ３＜ＮＥ４が成立するようなエンジン回転数ＮＥの所定値である。また、Ｕｍａｐ＿ｉｇ１，２は、Ｕｍａｐ＿ｉｇ１＜Ｕｍａｐ＿ｉｇ２が成立するようなマップ値Ｕｍａｐ＿ｉｇの所定値である。
【０１２３】
同図に示すように、マップ値Ｕｍａｐ＿ｉｇは、ＮＥ３≦ＮＥ＿ｃｍｄ＿ｆ≦ＮＥ４の範囲では、目標回転数のフィルタ値ＮＥ＿ｃｍｄ＿ｆが高いほど、より進角側の値に設定されている。これは、エンジン回転数ＮＥを上昇させるには、エンジントルクＴＲＱを増大させる必要があるので、それを達成すべく、点火操作量Ｕｉｇをより進角側に制御するためである。また、マップ値Ｕｍａｐ＿ｉｇは、ＮＥ＿ｃｍｄ＿ｆ＞ＮＥ４の範囲では、所定値Ｕｍａｐ＿ｉｇ２に設定されている。これは、点火時期Ｉｇ＿ｌｏｇをＭＢＴよりも進角させると、逆にエンジントルクＴＲＱが減少するので、点火時期Ｉｇ＿ｌｏｇをＭＢＴに保持するためである。さらに、マップ値Ｕｍａｐ＿ｉｇは、ＮＥ＿ｃｍｄ＿ｆ＜ＮＥ３の範囲では、所定値Ｕｍａｐ＿ｉｇ１に設定されている。これは、点火時期Ｉｇ＿ｌｏｇを遅角させ過ぎると燃焼状態が不安定になり、エンジン３の振動が大きくなるので、それを回避するためである。
【０１２４】
また、マップ値Ｕｍａｐ＿ａｒは、目標回転数のフィルタ値ＮＥ＿ｃｍｄ＿ｆに応じて、図１７に示すマップを検索することにより算出される。同図では、マップ値Ｕｍａｐ＿ｉｇは、目標回転数のフィルタ値ＮＥ＿ｃｍｄ＿ｆが高いほど、より大きい値に設定されている。これは、前述したように、エンジン回転数ＮＥを上昇させるには、エンジントルクＴＲＱをより増大させる必要があるので、それを達成すべく、吸気操作量Ｕａｒをより大きい値に制御することで、吸入空気量Ｇｃｙｌを増大させるためである。
【０１２５】
次に、以上のように構成された本実施形態のアイドル回転数制御のシミュレーション結果（以下「制御結果」という）について説明する。まず、図１８は、本実施形態のアイドル回転数制御の制御結果の一例を示しており、図１９は、比較のために、式（２０）において補償値Ｕｍｕｓｉｃ＿ｉｇ＝０に保持した場合の制御結果の一例を示している。なお、両図１８，１９は、目標回転数ＮＥ＿ｃｍｄをＮＥ１＜ＮＥｒｅｆ＜ＮＥ２が成立するような所定値ＮＥｒｅｆに設定するとともに、シフト位置の変化に伴い、要求値Ｒｉｎｊ＿ＳＴＢの算出用マップが、前述した図１１の停車時用マップと発進待機用マップの間で変更された場合の制御結果例を示している。
【０１２６】
まず、図１９を参照すると、この比較例の制御結果では、時刻ｔ１０で、シフト位置の変更に伴い、要求値Ｒｉｎｊ＿ＳＴＢの算出用マップが発進待機用マップから停車時用マップに変更され、１回目噴射率Ｒｉｎｊが値１．０から所定値Ｒｉｎｊ１に変更されると、燃料噴射モードが単噴射モードから分割噴射モードに切り換えられ、熱効率が上昇することで、エンジン回転数ＮＥが所定値ＮＥｒｅｆに対してオーバーシュートし、大きく乖離する。すなわち、急激な回転変動が発生する。この場合、時刻ｔ１０以降、エンジン回転数ＮＥと目標回転数ＮＥ＿ｃｍｄ（＝ＮＥｒｅｆ）との偏差を解消するように、吸気操作量Ｕａｒが低減されるとともに、点火操作量Ｕｉｇが遅角側の値に変更される。
【０１２７】
また、時刻ｔ１１で、シフト位置の変更に伴い、要求値Ｒｉｎｊ＿ＳＴＢの算出用マップが停車時用マップから発進待機用マップに変更され、１回目噴射率Ｒｉｎｊが所定値Ｒｉｎｊ１から値１．０に変更されると、燃料噴射モードが分割噴射モードから単噴射モードに切り換えられ、熱効率が低下することで、エンジン回転数ＮＥが所定値ＮＥｒｅｆに対してアンダーシュートし、大きく乖離する。すなわち、急激な回転変動が発生する。この場合、時刻ｔ１１以降、エンジン回転数ＮＥと目標回転数ＮＥ＿ｃｍｄとの偏差を解消するように、吸気操作量Ｕａｒが増大されるとともに、点火操作量Ｕｉｇが進角側の値に変更されるものの、上記回転変動を抑制することはできない。
【０１２８】
これに対して、図１８に示す本実施形態の制御結果では、時刻ｔ１で、シフト位置の変更に伴い、要求値Ｒｉｎｊ＿ＳＴＢの算出用マップが発進待機用マップから停車時用マップに変更され、１回目噴射率Ｒｉｎｊが値１．０から所定値Ｒｉｎｊ１に変更されると、変動予測値ＤＮＥが値０からそれよりも大きな値に急変し、それにより、式（３）により算出される補償目標値の増大側値ＤＮＥ＿ｍｏｄ＿ｐ、すなわち補償目標値ＤＮＥ＿ｍｏｄが値０から大きい値に急変することで、補償値Ｕｍｕｓｉｃ＿ｉｇも値０よりもかなり遅角側の値（負値）に急変する。その結果、トルク増大に伴うエンジン回転数ＮＥの上昇が補償値Ｕｍｕｓｉｃ＿ｉｇによって相殺されることで、図１９の制御結果と異なり、エンジン回転数ＮＥが所定値ＮＥｒｅｆからほとんど乖離することなく、安定した状態に保持される。すなわち、補償値Ｕｍｕｓｉｃ＿ｉｇを用いることにより、急激な回転変動を適切に抑制できることが判る。
【０１２９】
また、時刻ｔ１以降、前述した忘却係数λｐによる忘却効果により、補償値Ｕｍｕｓｉｃ＿ｉｇが徐々に進角側に変化すると、それに伴うトルク増大に起因して、エンジン回転数ＮＥが所定回転数ＮＥｒｅｆよりも若干高い値に上昇するものの、それを打ち消すように、吸気操作量Ｕａｒが緩やかに減少し、吸入空気量Ｇｃｙｌも緩やかに減少する。
【０１３０】
このように吸気操作量Ｕａｒが変化するのは以下の理由による。すなわち、トルク増大によりエンジン回転数ＮＥが上昇すると、前述した協調フィードバックコントローラ５０における数式（１７）に示す追従誤差Ｅｎｅが増大し、式（１６）に示す切換関数σｎｅの値が増大する。それにより、式（２１）に示す到達則入力Ｕｒｃｈ＿ａｒおよび式（２２）に示す適応則入力Ｕａｄｐ＿ａｒの絶対値が増大し、その結果、式（２３）により算出される吸気操作量Ｕａｒの値が減少することによる。
【０１３１】
その後、時間が経過し、シフト位置の変更に伴い、要求値Ｒｉｎｊ＿ＳＴＢの算出用マップが停車時用マップから発進待機用マップに変更された時点（時刻ｔ２）で、ＤＮＥ＜ＤＮＥ＿ＮＳＴＥＰが成立することで、Ｆ＿Ｒｉｎｊ＿Ｗａｉｔ＝１が成立する。それにより、１回目噴射率Ｒｉｎｊが要求値Ｒｉｎｊ＿ＳＴＢ（＝１．０）に変化することなく、それ以前の値である所定値Ｒｉｎｊ１に保持される。これと同時に、補償目標値の減少側用値ＤＮＥ＿ｍｏｄ＿ｎが、式（８）の１次遅れフィルタアルゴリズムにより算出されるとともに、補償目標値ＤＮＥ＿ｍｏｄが、その減少側用値の負値−ＤＮＥ＿ｍｏｄ＿ｎとして算出されることで、それ以降、時間の経過に伴って増大する。その結果、補償値Ｕｍｕｓｉｃ＿ｉｇが、値０よりも遅角側の値に徐々に変化するように算出されるとともに、それに伴うエンジン回転数ＮＥの低下を打ち消すように、前述した制御アルゴリズムにより、吸気操作量Ｕａｒが徐々に増大するように算出され、吸入空気量Ｇｃｙｌが徐々に増大する。
【０１３２】
その後、ＤＮＥ＿ｍｏｄ＿ｎ（ｋ−１）＜ＤＮＥ＿ＮＷＡＩＴが成立した時点（時刻ｔ３）で、Ｆ＿Ｒｉｎｊ＿Ｗａｉｔ＝０が成立する。それにより、１回目噴射率Ｒｉｎｊが所定値Ｒｉｎｊ１から値１．０に変更され、燃料噴射モードが分割噴射モードから単噴射モードに変更されると同時に、補償値Ｕｍｕｓｉｃ＿ｉｇが値０゜まで瞬時に進角される。その結果、トルク減少に伴うエンジン回転数ＮＥの低下が補償値Ｕｍｕｓｉｃ＿ｉｇによって相殺されることで、図１９の制御結果と異なり、エンジン回転数ＮＥが所定値ＮＥｒｅｆからほとんど乖離することなく、安定した状態に保持される。すなわち、補償値Ｕｍｕｓｉｃ＿ｉｇを用いることにより、トルク減少に伴う急激な回転変動を適切に抑制できることが判る。
【０１３３】
以上のように、本実施形態のアイドル回転数制御の手法によれば、補償値Ｕｍｕｓｉｃ＿ｉｇを用いることにより、燃料噴射モードを分割噴射モードから単噴射モードに切り換える場合や、その逆に切り換える場合でも、急激な回転変動を適切に抑制でき、エンジン回転数ＮＥを安定した状態に保持することができることが判る。
【０１３４】
次に、図２０を参照しながら、ＥＣＵ２により実行される、アイドル回転数制御処理を含む各種の制御処理について説明する。この処理は、具体的には、所定の制御周期で、点火時期制御処理、吸入空気量制御処理および燃料噴射制御処理を実行するものである。
【０１３５】
この処理では、まず、ステップ１（図では「Ｓ１」と略す。以下同じ）において、動弁正常フラグＦ＿ＶＤＯＫが「１」であるか否かを判別する。この動弁正常フラグＦ＿ＶＤＯＫは、可変吸気動弁機構４および可変排気動弁機構５がいずれも正常であるときには「１」に、それ以外のときには「０」にそれぞれ設定される。
【０１３６】
ステップ１の判別結果がＹＥＳで、可変吸気動弁機構４および可変排気動弁機構５がいずれも正常であるときには、ステップ２に進み、アイドル運転フラグＦ＿ＩＤＬＥが「１」であるか否かを判別する。このアイドル運転フラグＦ＿ＩＤＬＥは、アイドル運転条件が成立しているとき、すなわち、以下の３つの条件（ｇ１）〜（ｇ３）がいずれも成立しているときには「１」に設定され、それ以外のときには「０」に設定される。
（ｇ１）アクセル開度ＡＰが全閉状態を示す値であること。
（ｇ２）車速ＶＰが所定値（例えば３ｋｍ）以下であること。
（ｇ３）エンジン回転数ＮＥが所定値（例えば２００ｒｐｍ）以上であること。
【０１３７】
ステップ２の判別結果がＹＥＳのときには、アイドル回転数制御を実行すべきであると判定して、ステップ３に進み、エンジン水温ＴＷおよび補機負荷Ｌｏａｄに応じて、前述した図９のマップを検索することにより、アイドル運転用の目標回転数ＮＥ＿ｃｍｄを算出する。
【０１３８】
次いで、ステップ４で、目標回転数のフィルタ値ＮＥ＿ｃｍｄ＿ｆを、前述した式（１５）により算出し、その後、ステップ５で、切換関数σｎｅを、前述した式（１６），（１７）により算出する。
【０１３９】
次に、ステップ６に進み、１回目噴射率Ｒｉｎｊおよび補償値Ｕｍｕｓｉｃ＿ｉｇを算出する。この算出処理は、具体的には、図２１に示すように実行される。同図に示すように、まず、ステップ２０で、目標回転数ＮＥ＿ｃｍｄに応じて、前述した図１１のマップを検索することにより、１回目噴射率Ｒｉｎｊの要求値Ｒｉｎｊ＿ＳＴＢを算出する。
【０１４０】
次いで、ステップ２１に進み、１回目噴射率Ｒｉｎｊの要求値Ｒｉｎｊ＿ＳＴＢおよび目標回転数ＮＥ＿ｃｍｄに応じて、前述した図１２のマップを検索することにより、マップ値ＤＮＥ＿ｍａｐを算出する。その後、ステップ２２で、前述した式（１）により、変動予測値ＤＮＥを算出する。
【０１４１】
次いで、ステップ２３で、１回目噴射率Ｒｉｎｊおよび補償目標値ＤＮＥ＿ｍｏｄを算出する。この算出処理は、具体的には、図２２に示すように実行される。同図に示すように、まず、ステップ３０で、変動予測値ＤＮＥが前述した増大側しきい値ＤＮＥ＿ＰＳＴＥＰよりも大きいか否かを判別する。
【０１４２】
この判別結果がＹＥＳのときには、エンジン回転数ＮＥが増大方向に変動することで、補償目標値の増大側用値ＤＮＥ＿ｍｏｄ＿ｐを算出すべきであると判定して、ステップ３１に進み、それを表すために変動方向フラグＦ＿ＤＮＥ＿ｄｉｒを「１」に設定する。次いで、ステップ３２に進み、１回目噴射率Ｒｉｎｊを要求値Ｒｉｎｊ＿ＳＴＢに設定する。
【０１４３】
ステップ３２に続くステップ３３では、前述した式（３）により、補償目標値の増大側用値ＤＮＥ＿ｍｏｄ＿ｐを算出する。次いで、ステップ３４で、補償目標値ＤＮＥ＿ｍｏｄを増大側用値ＤＮＥ＿ｍｏｄ＿ｐに設定した後、本処理を終了する。
【０１４４】
一方、ステップ３０の判別結果がＮＯのときには、ステップ３５に進み、変動予測値ＤＮＥが前述した減少側しきい値ＤＮＥ＿ＮＳＴＥＰよりも小さいか否かを判別する。この判別結果がＹＥＳのときには、エンジン回転数ＮＥが減少方向に変動することで、補償目標値の減少側用値ＤＮＥ＿ｍｏｄ＿ｎを算出すべきであると判定して、ステップ３６に進み、それを表すために変動方向フラグＦ＿ＤＮＥ＿ｄｉｒを「０」に設定する。
【０１４５】
次いで、ステップ３７に進み、変動予測値の減少側用値ＤＮＥ＿ｎ＿ｉｎを、ステップ２２で算出した変動予測値ＤＮＥに設定する。その後、ステップ３８に進み、１回目噴射率Ｒｉｎｊの変更待機が必要であることを表すために、待機フラグＦ＿Ｒｉｎｊ＿Ｗａｉｔを「１」に設定する。
【０１４６】
一方、ステップ３５の判別結果がＮＯで、ＤＮＥ＿ＮＳＴＥＰ≦ＤＮＥ≦ＤＮＥ＿ＰＳＴＥＰが成立しているときには、ステップ３９に進み、変動方向フラグの前回値Ｆ＿ＤＮＥ＿ｄｉｒｚが「１」であるか否かを判別する。
【０１４７】
この判別結果がＹＥＳで、前回のループで補償目標値の増大側用値ＤＮＥ＿ｍｏｄ＿ｐの算出が実行されていたときには、前述したように、ステップ３１〜３４を実行した後、本処理を終了する。
【０１４８】
一方、ステップ３９の判別結果がＮＯで、前回のループで補償目標値の減少側用値ＤＮＥ＿ｍｏｄ＿ｎの算出が実行されていたときには、ステップ４０に進み、補償目標値の減少側用値ＤＮＥ＿ｍｏｄ＿ｎの算出を継続すべきであることを表すために、変動方向フラグＦ＿ＤＮＥ＿ｄｉｒを「０」に設定する。
【０１４９】
ステップ４０に続くステップ４１では、変動予測値の減少側用値ＤＮＥ＿ｎ＿ｉｎを、その前回値ＤＮＥ＿ｎ＿ｉｎｚに設定する。次いで、ステップ４２で、待機フラグの前回値Ｆ＿Ｒｉｎｊ＿Ｗａｉｔｚが「０」であるか否かを判別する。この判別結果がＹＥＳのときには、１回目噴射率Ｒｉｎｊを変更すべきであると判定して、ステップ４４に進み、それを表すために待機フラグＦ＿Ｒｉｎｊ＿Ｗａｉｔを「０」に設定する。
【０１５０】
一方、ステップ４２の判別結果がＮＯで、Ｆ＿Ｒｉｎｊ＿Ｗａｉｔｚ＝１のとき、すなわち前回のループで１回目噴射率Ｒｉｎｊの変更待機が実行されていたときには、ステップ４３に進み、補償目標値の減少側用値の前回値ＤＮＥ＿ｍｏｄ＿ｎｚが前述したしきい値ＤＮＥ＿ＮＷＡＩＴよりも小さいか否かを判別する。
【０１５１】
この判別結果がＮＯで、ＮＥ＿ｍｏｄ＿ｎｚ≧ＤＮＥ＿ＮＷＡＩＴのときには、１回目噴射率Ｒｉｎｊの変更待機が必要であると判定して、前述したステップ３８に進み、待機フラグＦ＿Ｒｉｎｊ＿Ｗａｉｔを「１」に設定する。
【０１５２】
一方、ステップ４３の判別結果がＹＥＳで、ＮＥ＿ｍｏｄ＿ｎｚ＜ＤＮＥ＿ＮＷＡＩＴのときには、１回目噴射率Ｒｉｎｊを変更すべきであると判定して、前述したステップ４４に進み、待機フラグＦ＿Ｒｉｎｊ＿Ｗａｉｔを「０」に設定する。
【０１５３】
ステップ３８または４４に続くステップ４５では、待機フラグＦ＿Ｒｉｎｊ＿Ｗａｉｔが「１」であるか否かを判別する。この判別結果がＹＥＳで、１回目噴射率Ｒｉｎｊの変更待機が必要であるときには、ステップ４６に進み、１回目噴射率Ｒｉｎｊをその前回値Ｒｉｎｊｚに設定する。
【０１５４】
次いで、ステップ４７で、補償目標値の減少側用値ＤＮＥ＿ｍｏｄ＿ｎを、前述した式（８）により算出する。
【０１５５】
一方、ステップ４５の判別結果がＮＯで、１回目噴射率Ｒｉｎｊを変更すべきであるときには、ステップ４８に進み、１回目噴射率Ｒｉｎｊをその要求値Ｒｉｎｊ＿ＳＴＢに設定する。次いで、ステップ４９で、補償目標値の減少側用値ＤＮＥ＿ｍｏｄ＿ｎを値０に設定する。
【０１５６】
ステップ４７または４９に続くステップ５０では、補償目標値ＤＮＥ＿ｍｏｄをその減少側用値の負値−ＤＮＥ＿ｍｏｄ＿ｎに設定する。その後、本処理を終了する。
【０１５７】
図２１に戻り、ステップ２３で、以上のように１回目噴射率Ｒｉｎｊおよび補償目標値ＤＮＥ＿ｍｏｄを算出した後、ステップ２４に進み、前述した式（１２）により、補償値Ｕｍｕｓｉｃ＿ｉｇを算出して、本処理を終了する。
【０１５８】
図２０に戻り、ステップ６で、以上のように１回目噴射率Ｒｉｎｊおよび補償値Ｕｍｕｓｉｃ＿ｉｇを算出した後、ステップ７に進み、点火操作量Ｕｉｇを算出する。この算出処理は、具体的には、図２３に示すように実行される。
【０１５９】
同図に示すように、まず、ステップ６０で、切換関数σｎｅに応じて、前述した図１４のマップを検索することにより、到達則ゲインＫｒｃｈ＿ｉｇを算出する。ステップ６０に続くステップ６１では、前述した式（１８）により、到達則入力Ｕｒｃｈ＿ｉｇを算出する。
【０１６０】
次いで、ステップ６２に進み、切換関数σｎｅに応じて、前述した図１５のマップを検索することにより、適応則ゲインＫａｄｐ＿ｉｇを算出する。ステップ６２に続くステップ６３では、前述した式（１９）により、適応則入力Ｕａｄｐ＿ｉｇを算出する。
【０１６１】
次に、ステップ６４に進み、目標回転数のフィルタ値ＮＥ＿ｃｍｄ＿ｆに応じて、前述した図１６のマップを検索することにより、マップ値Ｕｍａｐ＿ｉｇを算出する。次いで、ステップ６５で、前述した式（２０）により、点火操作量Ｕｉｇを算出した後、本処理を終了する。
【０１６２】
図２０に戻り、ステップ７で以上のように点火操作量Ｕｉｇを算出した後、ステップ８に進み、吸気操作量Ｕａｒを算出する。この算出処理は、具体的には、図２４に示すように実行される。
【０１６３】
同図に示すように、まず、ステップ７０で、切換関数σｎｅに応じて、前述した図１４のマップを検索することにより、到達則ゲインＫｒｃｈ＿ａｒを算出する。ステップ７０に続くステップ７１では、前述した式（２１）により、到達則入力Ｕｒｃｈ＿ａｒを算出する。
【０１６４】
次いで、ステップ７２に進み、切換関数σｎｅに応じて、前述した図１５のマップを検索することにより、適応則ゲインＫａｄｐ＿ａｒを算出する。ステップ７２に続くステップ７３では、前述した式（２２）により、適応則入力Ｕａｄｐ＿ａｒを算出する。
【０１６５】
次に、ステップ７４に進み、目標回転数のフィルタ値ＮＥ＿ｃｍｄ＿ｆに応じて、前述した図１７のマップを検索することにより、マップ値Ｕｍａｐ＿ａｒを算出する。次いで、ステップ７５で、前述した式（２３）により、吸気操作量Ｕａｒを算出した後、本処理を終了する。
【０１６６】
図２０に戻り、ステップ８で以上のように吸気操作量Ｕａｒを算出した後、ステップ９に進み、点火操作量Ｕｉｇを点火時期Ｉｇ＿ｌｏｇとして設定する。その後、ステップ１０に進み、吸気操作量Ｕａｒを目標吸気開角Ｌｉｆｔｉｎ＿ｃｍｄとして設定する。
【０１６７】
次に、ステップ１１で、吸気制御入力Ｕｌｉｆｔｉｎを、吸気開角Ｌｉｆｔｉｎおよび目標吸気開角Ｌｉｆｔｉｎ＿ｃｍｄに応じて、以下の式（１５）〜（３０）の目標値フィルタ型２自由度スライディングモード制御アルゴリズムにより算出する。
【数１９】
2007247476.tif 000021
【０１６８】
【数２０】
2007247476.tif 000022
【０１６９】
【数２１】
2007247476.tif 000023
【０１７０】
これらの式（１５）〜（３０）において、Ｌｉｆｔｉｎ＿ｃｍｄ＿ｆは目標吸気開角Ｌｉｆｔｉｎ＿ｃｍｄのフィルタ値を、σｌｉは切換関数を、Ｅｌｉは追従誤差を、Ｕｅｑ＿ｌｉは等価制御入力を、Ｕｒｃｈ＿ｌｉは到達則入力を、Ｋｒｃｈ＿ｌｉは到達則入力ゲインを、Ｕａｄｐ＿ｌｉは適応則入力を、Ｋａｄｐ＿ｌｉは適応則入力ゲインをそれぞれ表している。また、ＰＯＬＥ＿ｆ''は、−１＜ＰＯＬＥ''＿ｆ＜０の関係が成立するように設定される目標値応答指定パラメータであり、ＰＯＬＥ''は、−１＜ＰＯＬＥ''＜０が成立するように設定される切換関数設定パラメータである。さらに、ａ１''，ａ２''，ｂ１''，ｂ２''は、バルブリフトＬｉｆｔｉｎと吸気制御入力Ｕｌｉｆｔｉｎとの動特性を定義したモデル（図示せず）のモデルパラメータを表している。
【０１７１】
以上のように、アイドル回転数制御用の点火時期Ｉｇ＿ｌｏｇおよび吸気制御入力Ｕｌｉｆｔｉｎが算出されることにより、点火時期Ｉｇ＿ｌｏｇに応じたタイミングで、点火プラグ１３を介して点火時期制御が実行されるとともに、吸気可変動弁機構４を介して、吸気制御入力Ｕｌｉｆｔｉｎに応じた吸気開角Ｌｉｆｔｉｎになるように吸気弁４ａが駆動される。それにより、吸気開角Ｌｉｆｔｉｎが目標吸気開角Ｌｉｆｔｉｎに収束するように制御され、吸入空気量Ｇｃｙｌが制御される。
【０１７２】
ステップ１１に続くステップ１２では、１回目噴射量Ｔｃｙｌ１および２回目噴射量Ｔｃｙｌ２が算出される。この算出処理は、具体的には、図２５に示すように実行される。
【０１７３】
同図に示すように、まず、ステップ８０で、エアフローセンサ２２の検出信号およびエンジン回転数ＮＥなどに基づき、吸入空気量Ｇｃｙｌを算出する。次いで、ステップ８１に進み、換算係数Ｆａｆと吸入空気量Ｇｃｙｌの積Ｆａｆ・Ｇｃｙｌを、燃料換算値Ｇｆｕｅｌとして設定する。この換算係数Ｆａｆは、吸入空気量Ｇｃｙｌを燃料量に換算するための値であり、図示しない算出処理において、混合気の空燃比の目標値となる目標空燃比などを反映した値として算出される。
【０１７４】
ステップ８１に続くステップ８２では、１回目噴射率Ｒｉｎｊと燃料換算値Ｇｆｕｅｌの積Ｒｉｎｊ・Ｇｆｕｅｌを、１回目燃料換算値Ｇｆｕｅｌ１として設定する。次いで、ステップ８３に進み、１回目燃料換算値Ｇｆｕｅｌ１に応じて、図示しないマップを検索することにより、１回目噴射量Ｔｃｙｌ１を算出する。この場合、１回目噴射量Ｔｃｙｌ１は、燃料噴射弁６のバルブタイミング（開弁および閉弁タイミング）として算出される。
【０１７５】
次いで、ステップ８４で、値１から１回目噴射率Ｒｉｎｊを減算した値と燃料換算値Ｇｆｕｅｌの積（１−Ｒｉｎｊ）・Ｇｆｕｅｌを、２回目燃料換算値Ｇｆｕｅｌ２として設定する。ステップ８４に続くステップ８５では、２回目燃料換算値Ｇｆｕｅｌ２に応じて、図示しないマップを検索することにより、２回目噴射量Ｔｃｙｌ２を算出する。この場合、２回目噴射量Ｔｃｙｌ２も、１回目噴射量Ｔｃｙｌ１と同様に、燃料噴射弁６のバルブタイミングとして算出される。その後、本処理を終了する。
【０１７６】
図２０に戻り、ステップ１２で以上のように１回目噴射量Ｔｃｙｌ１および２回目噴射量Ｔｃｙｌ２を算出した後、本処理を終了する。
【０１７７】
一方、ステップ２の判別結果がＮＯで、アイドル運転条件が不成立であるときには、ステップ１３に進み、目標回転数ＮＥ＿ｃｍｄおよびアクセル開度ＡＰに応じて、図２６に示すマップを検索することにより、点火時期Ｉｇ＿ｌｏｇを算出する。同図において、ＡＰ１〜ＡＰ３は、ＡＰ１＜ＡＰ２＜ＡＰ３の関係が成立する所定のアクセル開度ＡＰであり、この点は、以下の説明においても同様である。このマップでは、点火時期Ｉｇ＿ｌｏｇは、アクセル開度ＡＰが大きいほど、遅角側の値に設定されているとともに、高回転域では、エンジン回転数ＮＥが高いほど、遅角側の値に設定されている。これは、エンジン回転数ＮＥまたはエンジン負荷が高いときには、ノッキングが発生しやすくなるので、それを回避すべく、点火時期Ｉｇ＿ｌｏｇを遅角側に制御する必要があることによる。
【０１７８】
次いで、ステップ１４で、目標回転数ＮＥ＿ｃｍｄおよびアクセル開度ＡＰに応じて、図２７に示すマップを検索することにより、目標吸気開角Ｌｉｆｔｉｎ＿ｃｍｄを算出する。このマップでは、目標吸気開角Ｌｉｆｔｉｎ＿ｃｍｄは、アクセル開度ＡＰが大きいほど、またエンジン回転数ＮＥが高いほど、より大きな値に設定されている。これは、エンジン回転数ＮＥまたはエンジン負荷が高いときには、それに応じたエンジントルクＴＲＱを確保すべく、吸気開角Ｌｉｆｔｉｎすなわち吸入空気量Ｇｃｙｌを大きな値に制御するためである。
【０１７９】
次に、前述したように、ステップ１１で吸気制御入力Ｕｌｉｆｔｉｎを算出し、次いで、ステップ１２で、１回目噴射量Ｔｃｙｌ１および２回目噴射量Ｔｃｙｌ２を算出した後、本処理を終了する。
【０１８０】
一方、ステップ１の判別結果がＮＯで、吸気可変動弁機構４および排気可変動弁機構５の少なくとも一方が故障しているときには、ステップ１５に進み、点火時期Ｉｇ＿ｌｏｇを故障時値Ｉｇ＿ｆｓに設定する。この故障時値Ｉｇ＿ｆｓは、エンジン回転数ＮＥが所定の故障時目標回転数ＮＥ＿ｃｍｄ＿ｆｓ（例えば１５００ｒｐｍ）となるように、所定のフィードバック制御アルゴリズムにより算出される。
【０１８１】
次いで、ステップ１６で、吸気制御入力Ｕｌｉｆｔｉｎを値０に設定した後、本処理を終了する。これにより、吸気弁４ａは、吸気可変動弁機構４によって、吸気開角Ｌｉｆｔｉｎが最小値になるように駆動される。
【０１８２】
以上のように、第１実施形態の制御装置１によれば、エンジントルクＴＲＱの増大要求の発生や、１回目噴射率Ｒｉｎｊの要求値Ｒｉｎｊ＿ＳＴＢの算出用マップの切換などに起因して、燃焼モードを均一燃焼モードから成層燃焼モードに切り換える場合、その切換タイミングに同期して、補償値Ｕｍｕｓｉｃ＿ｉｇにより、点火操作量Ｕｉｇすなわち点火時期Ｉｇ＿ｌｏｇが遅角側に迅速に補正されるので、成層燃焼モードへの切換に伴うエンジントルクＴＲＱの増大すなわちエンジン回転数ＮＥの上昇を相殺することができる。
【０１８３】
また、成層燃焼モードへの切換以降、補償目標値の増大側用値ＤＮＥ＿ｍｏｄ＿ｐが、式（３）に示す忘却係数λｐを用いた忘却演算処理により算出されるので、演算処理の進行に伴い、補償値Ｕｍｕｓｉｃ＿ｉｇが値０に向かって変化し、点火操作量Ｕｉｇすなわち点火時期Ｉｇ＿ｌｏｇが進角側に徐々に変化する。それにより、点火時期Ｉｇ＿ｌｏｇが補償値Ｕｍｕｓｉｃ＿ｉｇによって遅角側に補正された状態に長時間保持されることがなくなることで、燃費を向上させることができる。
【０１８４】
さらに、点火時期Ｉｇ＿ｌｏｇが進角側に徐々に変化するのに起因して、エンジン回転数ＮＥが上昇しようとすると、前述したように、協調フィードバックコントローラ５０の式（２３）により、吸気操作量Ｕａｒすなわち目標吸気開角Ｌｉｆｔｉｎ＿ｃｍｄが緩やかに減少するように算出されるので、吸入空気量Ｇｃｙｌが緩やかに減少側に制御される。その結果、成層燃焼モードへの切換以降、点火時期Ｉｇ＿ｌｏｇの進角側への変化に伴うエンジン回転数ＮＥの上昇を抑制することができる。すなわち、吸気操作量Ｕａｒにより、補償値Ｕｍｕｓｉｃ＿ｉｇの影響を打ち消すように、吸入空気量Ｇｃｙｌを制御することができる。
【０１８５】
一方、エンジントルクＴＲＱの減少要求の発生や、１回目噴射率Ｒｉｎｊの要求値Ｒｉｎｊ＿ＳＴＢの算出用マップの切換などに起因して、燃焼モードを成層燃焼モードから均一燃焼モードに切り換える場合、減少要求の発生タイミングや算出用マップの切換タイミングでは、均一燃焼モードへの切換が行われず、それ以降の、補償値Ｕｍｕｓｉｃ＿ｉｇの絶対値がトルクダウンを補償可能な値まで遅角側に変化したタイミングで、均一燃焼モードへの切換が実行されるとともに、補償値Ｕｍｕｓｉｃ＿ｉｇも値０まで進角側に迅速に変更される。それにより、補償値Ｕｍｕｓｉｃ＿ｉｇによって、均一燃焼モードへの切換に伴うエンジントルクＴＲＱの減少、すなわちエンジン回転数ＮＥの低下を相殺することができる。
【０１８６】
また、燃焼モードの切換待機中、補償値Ｕｍｕｓｉｃ＿ｉｇの遅角側への変化によって、エンジン回転数ＮＥが低下しようとすると、前述したように、協調フィードバックコントローラ５０の式（２３）により、吸気操作量Ｕａｒすなわち目標吸気開角Ｌｉｆｔｉｎ＿ｃｍｄが緩やかに増大するように算出され、吸入空気量Ｇｃｙｌが増大側に緩やかに制御される。それにより、エンジン回転数ＮＥの低下を打ち消すことができる。
【０１８７】
さらに、点火操作量Ｕｉｇおよび吸気操作量Ｕａｒがそれぞれ、目標値フィルタ型２自由度スライディングモード制御アルゴリズムを適用した制御アルゴリズムにより、切換関数σｎｅおよび目標回転数のフィルタ値ＮＥ＿ｃｍｄ＿ｆを共用しながら算出されるので、これらの操作量Ｕｉｇ，Ｕａｒが互いに干渉し合うのを回避しながら、エンジン回転数ＮＥを目標回転数ＮＥ＿ｃｍｄに適切に収束させることができる。
【０１８８】
なお、第１実施形態は、補正値としての補償値Ｕｍｕｓｉｃ＿ｉｇを加算項として算出した例であるが、本願発明の第１操作量を補正するための補正値はこれに限らず、燃焼モードの切り換えに伴う制御量の変化を相殺するように、第１操作量を補正するものであればよい。例えば、補正値として、点火操作量Ｕｉｇに乗算される値を用いてもよい。
【０１８９】
また、第１実施形態は、本願発明の制御装置を、混合気の燃焼モードを２つの燃焼モード（すなわち成層燃焼モードと均一燃焼モード）に切り換えて運転される内燃機関に適用した例であるが、本願発明の制御装置はこれに限らず、混合気の燃焼モードを３つ以上の燃焼モードに切り換えて運転される内燃機関に適用してもよい。例えば、本願発明の制御装置を、混合気の燃焼モードが、圧縮着火燃焼モードと均一燃焼モードと成層燃焼モードとの間で切り換えて運転される内燃機関や、２サイクルモードと４サイクルモードとの間切り換えて運転される内燃機関に適用してもよい。
【０１９０】
さらに、第１実施形態は、本願発明の制御装置を、混合気の燃焼モードを成層燃焼モードおよび均一燃焼モードに切り換えて運転される内燃機関に適用した例であるが、本願発明の制御装置はこれに限らず、複数の燃焼モードの間で切り換えて運転される内燃機関に適用可能である。例えば、圧縮着火燃焼モードと均一燃焼モードとに切り換えて運転される内燃機関に適用してもよい。
【０１９１】
一方、第１実施形態は、本願発明の制御装置を車両用の内燃機関に適用した例であるが、本願発明の制御装置はこれに限らず、船舶用や発電用の内燃機関などの様々な内燃機関に適用可能である。
【０１９２】
また、第１実施形態は、第２操作量に相当する吸気操作量Ｕａｒを目標吸気開角Ｌｉｆｔｉｎ＿ｃｍｄとして算出した例であるが、吸気操作量Ｕａｒを吸気制御入力Ｕｌｉｆｔｉｎとして算出し、そのように算出した吸気制御入力Ｕｌｉｆｔｉｎにより、吸気可変動弁機構４を制御するように構成してもよい。また、吸気弁のバルブタイミングを自在に変更する機構として、吸気弁のリフト（最大揚程）を自在に変更する可変バルブリフト機構や、吸気カムのクランクシャフトに対する位相を自在に変更する可変カム位相機構を用いる場合には、吸気操作量Ｕａｒを、これらの機構を制御するための制御入力または値として算出してもよい。すなわち、吸気操作量Ｕａｒは、吸入空気量Ｇｃｙｌを変更可能に算出される値であればよい。
【０１９３】
さらに、第１実施形態は、燃焼モードの切換によりトルクダウンが発生する場合において、待機フラグＦ＿Ｒｉｎｊ＿Ｗａｉｔが「１」から「０」に切り換わったタイミングで、補償値Ｕｍｕｓｉｃ＿ｉｇを瞬時に値０に変化するように算出した例であるが、トルクダウンに伴う回転変動を抑制可能であれば、補償値Ｕｍｕｓｉｃ＿ｉｇを第１実施形態よりも緩やかに値０に変化するように算出してもよい。
【０１９４】
次に、図２８を参照しながら、本願発明の第２実施形態に係る内燃機関の制御装置１Ａについて説明する。この制御装置１Ａは、第１実施形態の制御装置１と比べると、アイドル回転数コントローラ３０に代えて、同図に示すＰｍｉコントローラ１３０を備えている点のみが異なり、それ以外は第１実施形態の制御装置１と同様に構成されているので、以下、このＰｍｉコントローラ１３０について説明する。
【０１９５】
このＰｍｉコントローラ１３０は、以下に述べるように、図示平均有効圧Ｐｍｉを制御するものであり、具体的にはＥＣＵ２により構成されている。この場合、図示平均有効圧Ｐｍｉは、エンジントルクＴＲＱに実質的に相当するものであるので、図示平均有効圧Ｐｍｉを制御することは、エンジントルクＴＲＱを制御することに相当する。なお、本実施形態では、図示平均有効圧Ｐｍｉが発生トルクを表す制御量に相当する。
【０１９６】
このＰｍｉコントローラ１３０では、以下に述べる制御アルゴリズムにより、１回目噴射率Ｒｉｎｊ、点火操作量Ｕｉｇ’および吸気操作量Ｕａｒ’が算出され、これらの３つの値Ｒｉｎｊ，Ｕｉｇ’，Ｕａｒ’を制御対象としてのエンジン３に入力することにより、エンジン３の運転中、制御量としての図示平均有効圧Ｐｍｉが、急激な変動状態を示すことなく（言い換えれば急激なトルク変動が発生することなく）、後述する目標圧Ｐｍｉ＿ｃｍｄに収束するようにフィードバック制御される。この場合、点火操作量Ｕｉｇ’は、点火時期Ｉｇ＿ｌｏｇであり、吸気操作量Ｕａｒ’は、前述した目標吸気開角Ｌｉｆｔｉｎ＿ｃｍｄである。なお、本実施形態では、Ｐｍｉコントローラ１３０が第１操作量算出手段および第２操作量算出手段に相当し、点火操作量Ｕｉｇ’が第１操作量に相当し、吸気操作量Ｕａｒ’が第２操作量に相当する。
【０１９７】
Ｐｍｉコントローラ１３０は、図２８に示すように、目標値算出部１３１、分割噴射コントローラ１４０、協調フィードバックコントローラ１５０、協調ゲインスケジューラ１８０およびマップ値算出部１９０を備えている。
【０１９８】
この目標値算出部１３１では、エンジン３の運転状態を表す運転状態パラメータ（例えばエンジン回転数ＮＥおよびアクセル開度ＡＰ）に応じて、図示しないマップを検索することにより、目標圧Ｐｍｉ＿ｃｍｄが算出される。なお、本実施形態では、目標値算出部１３１が目標制御量算出手段に相当し、目標圧Ｐｍｉ＿ｃｍｄが目標制御量に相当する。
【０１９９】
また、分割噴射コントローラ１４０では、後述するように、エンジン回転数ＮＥおよび目標圧Ｐｍｉ＿ｃｍｄに応じて、補償値Ｕｍｕｓｉｃ＿ｉｇ’および１回目噴射率Ｒｉｎｊが算出される。なお、本実施形態では、分割噴射コントローラ１４０が補正値算出手段および遅延手段に相当し、補償値Ｕｍｕｓｉｃ＿ｉｇ’が補正値に相当する。
【０２００】
さらに、協調フィードバックコントローラ１５０では、後述するように、目標圧Ｐｍｉ＿ｃｍｄ、図示平均有効圧Ｐｍｉ、補償値Ｕｍｕｓｉｃ＿ｉｇ’、２つのマップ値Ｕｍａｐ＿ｉｇ’，Ｕｍａｐ＿ａｒ’および４つのゲインＫｒｃｈ＿ｉｇ’，Ｋａｄｐ＿ｉｇ’，Ｋｒｃｈ＿ａｒ’，Ｋａｄｐ＿ａｒ’に応じて、点火操作量Ｕｉｇ’および吸気操作量Ｕａｒ’が算出される。なお、本実施形態では、協調フィードバックコントローラ１５０が第１基本操作量算出手段および修正手段に相当する。
【０２０１】
一方、協調ゲインスケジューラ１８０では、後述するように、協調フィードバックコントローラ１５０で算出された切換関数σｐｍｉに応じて、４つのゲインＫｒｃｈ＿ｉｇ’，Ｋａｄｐ＿ｉｇ’，Ｋｒｃｈ＿ａｒ’，Ｋａｄｐ＿ａｒ’が算出される。
【０２０２】
また、マップ値算出部１９０では、後述するように、エンジン回転数ＮＥおよび協調フィードバックコントローラ１５０で算出された目標圧のフィルタ値Ｐｍｉ＿ｃｍｄ＿ｆに応じて、２つのマップ値Ｕｍａｐ＿ｉｇ’，Ｕｍａｐ＿ａｒ’が算出される。なお、本実施形態では、マップ値算出部１９０が第１基本操作量算出手段に相当する。
【０２０３】
次に、前述した分割噴射コントローラ１４０について説明する。この分割噴射コントローラ１４０では、以下に述べるように、エンジン回転数ＮＥおよび目標圧Ｐｍｉ＿ｃｍｄに応じて、補償値Ｕｍｕｓｉｃ＿ｉｇ’および１回目噴射率Ｒｉｎｊが算出される。この補償値Ｕｍｕｓｉｃ＿ｉｇ’は、エンジン３の運転中の急激なトルク変動を点火時期制御で補償するためのフィードフォワード項に相当する値であり、そのため、後述する点火時期コントローラ６０での点火操作量Ｕｉｇ’の算出において、加算項として用いられる。
【０２０４】
分割噴射コントローラ１４０は、図２９に示すように、Ｒｉｎｊ＿ＳＴＢ算出部１４１、ＤＰｍｉ算出部１４２、フィードフォワードコントローラ１４３および動的補償器１４４を備えている。
【０２０５】
このＲｉｎｊ＿ＳＴＢ算出部１４１では、エンジン回転数ＮＥおよび目標圧Ｐｍｉ＿ｃｍｄに応じて、図３０に示すマップを検索することにより、１回目噴射率Ｒｉｎｊの要求値Ｒｉｎｊ＿ＳＴＢが算出される。同図において、Ｒｉｎｊ３，４は、Ｒｉｎｊ３＜Ｒｉｎｊ４およびＲｉｎｊ４＝Ｒｉｎｊ＿ｌｍｔが成立するような１回目噴射率Ｒｉｎｊの所定値である。
【０２０６】
同図に示すように、高回転域では、要求値Ｒｉｎｊ＿ＳＴＢは、値１．０に設定されている。これは、高回転域では、１燃焼サイクルの時間が短くなり、２回目噴射量Ｔｃｙｌ２の噴射時間を確保できなくなるので、単噴射モードを選択するためである。また、このマップでは、目標圧Ｐｍｉ＿ｃｍｄおよびエンジン回転数ＮＥが低い領域、すなわち低負荷・低回転域では、要求値Ｒｉｎｊ＿ＳＴＢは、所定値値Ｒｉｎｊ２に設定されている。これは、混合気の弱い成層化を図ることで、熱効率を向上させ、燃費を向上させるためである。さらに、高負荷・低回転域では、要求値Ｒｉｎｊ＿ＳＴＢは、所定値値Ｒｉｎｊ３に設定されている。これは、燃料冷却による充填効率の向上と、混合気の弱い成層化を図ることで、ノックを抑制し、エンジントルクＴＲＱの向上を図るためである。
【０２０７】
次に、ＤＰｍｉ算出部１４２では、１回目噴射率Ｒｉｎｊの要求値Ｒｉｎｊ＿ＳＴＢおよび目標圧Ｐｍｉ＿ｃｍｄに応じて、変動予測値ＤＰｍｉが算出される。この変動予測値ＤＰｍｉは、エンジン３の運転中に１回目噴射率Ｒｉｎｊを変更したときの図示平均有効圧Ｐｍｉの変動量を予測したものであり、具体的には、以下に述べる手法により算出される。
【０２０８】
まず、１回目噴射率Ｒｉｎｊの要求値Ｒｉｎｊ＿ＳＴＢおよび目標圧Ｐｍｉ＿ｃｍｄに応じて、図３１および図３２に示すマップを検索することにより、マップ値ＤＰｍｉ＿ｍａｐを算出する。図３１および図３２はそれぞれ、エンジン回転数ＮＥが所定の低回転域にあるときまたは中回転域にあるときにマップ値ＤＰｍｉ＿ｍａｐの算出に用いられる、低回転域用および中回転域用のマップである。これらのマップは、目標圧Ｐｍｉ＿ｃｍｄと１回目噴射率Ｒｉｎｊの要求値Ｒｉｎｊ＿ＳＴＢとの関係、すなわち制御量としての図示平均有効圧Ｐｍｉと、成層燃焼モードおよび均一燃焼モードとの関係を表す応答曲面モデルに相当するものである。また、エンジン回転数ＮＥが高回転域にあるときには、分割噴射モードを実行しないため、高回転域用のマップは設定されていない。
【０２０９】
両図におけるＲｉｎｊ２は、前述した所定値Ｒｉｎｊ３に対して、Ｒｉｎｊ２＜Ｒｉｎｊ３が成立する１回目噴射率Ｒｉｎｊの所定値である。これらのマップでは、Ｒｉｎｊ＿ＳＴＢ＜Ｒｉｎｊ２の範囲用の目標圧Ｐｍｉ＿ｃｍｄの曲線が設定されていない。これは、Ｒｉｎｊ＿ＳＴＢ＜Ｒｉｎｊ２の範囲では、エンジン３の燃焼状態が不安定になるので、それを回避するためである。また、前述した燃料噴射弁６の特性に起因して、Ｒｉｎｊ４＜Ｒｉｎｊ＿ＳＴＢ＜１．０の範囲用の目標圧Ｐｍｉ＿ｃｍｄの曲線も設定されていない。
【０２１０】
次いで、下式（３１）により、変動予測値ＤＰｍｉを算出する。
【数２２】
2007247476.tif 000024
【０２１１】
また、前述したフィードフォワードコントローラ１４３では、以下に述べる手法により、１回目噴射率Ｒｉｎｊおよび補償目標値ＤＰｍｉ＿ｍｏｄが算出される。この補償目標値ＤＰｍｉ＿ｍｏｄは、補償値Ｕｍｕｓｉｃ＿ｉｇ’によって補償すべき図示平均有効圧Ｐｍｉの変動量に相当する値である。
【０２１２】
まず、変動方向フラグＦ＿ＤＰｍｉ＿ｄｉｒの値が以下のように設定される。この変動方向フラグＦ＿ＤＰｍｉ＿ｄｉｒは、１回目噴射率Ｒｉｎｊを変更したときに、図示平均有効圧Ｐｍｉが増大側に変化すると予想されるか否かを表すものである。具体的には、下記の条件（ｈ１）が成立しているとき、または条件（ｈ２），（ｈ３）がいずれも成立しているときには、１回目噴射率Ｒｉｎｊの変更時、図示平均有効圧Ｐｍｉが増大側に変化すると予想されるので、それを表すために変動方向フラグＦ＿ＤＰｍｉ＿ｄｉｒが「１」に設定される。
（ｈ１）ＤＰｍｉ＞ＤＰｍｉ＿ＰＳＴＥＰ
（ｈ２）ＤＰｍｉ＿ＮＳＴＥＰ≦ＤＰｍｉ≦ＤＰｍｉ＿ＰＳＴＥＰ
（ｈ３）Ｆ＿ＤＰｍｉ＿ｄｉｒ（ｋ−１）＝１
【０２１３】
ここで、条件（ｈ１），（ｈ２）のＤＰｍｉ＿ＰＳＴＥＰは、１回目噴射率Ｒｉｎｊの変更時、図示平均有効圧Ｐｍｉが増大側に変化するか否かを判定するための増大側しきい値であり、正の所定値（例えば５０ｋｐａ）に設定される。また、条件（ｈ２）のＤＰｍｉ＿ＮＳＴＥＰは、１回目噴射率Ｒｉｎｊを変更したときに、図示平均有効圧Ｐｍｉが減少側に変化するか否かを判定するための減少側しきい値であり、負の所定値（例えば−５０ｋｐａ）に設定される。
【０２１４】
一方、下記の条件（ｈ４）が成立しているとき、または条件（ｈ５），（ｈ６）がいずれも成立しているときには、１回目噴射率Ｒｉｎｊの変更時、図示平均有効圧Ｐｍｉが増大側に変化しないと予想されるので、それを表すために変動方向フラグＦ＿ＤＰｍｉ＿ｄｉｒが「０」に設定される。
（ｈ４）ＤＰｍｉ＜ＤＰｍｉ＿ＮＳＴＥＰ
（ｈ５）ＤＰｍｉ＿ＮＳＴＥＰ≦ＤＰｍｉ≦ＤＰｍｉ＿ＰＳＴＥＰ
（ｈ６）Ｆ＿ＤＰｍｉ＿ｄｉｒ（ｋ−１）＝０
【０２１５】
そして、変動方向フラグＦ＿ＤＰｍｉ＿ｄｉｒが「１」に設定されたときには、下式（３２），（３３）により、１回目噴射率Ｒｉｎｊおよび補償目標値の増大側用値ＤＰｍｉ＿ｍｏｄ＿ｐが算出される。
【数２３】
2007247476.tif 000025
【０２１６】
上式（３３）のλｐ’は、０＜λｐ’＜１が成立するように設定される忘却係数である。同式（３３）に示すように、忘却係数λｐ’が増大側用値の前回値ＤＰｍｉ＿ｍｏｄ＿ｐ（ｋ−１）に乗算されているとともに、１回目噴射率Ｒｉｎｊの変更後は変動予測値ＤＰｍｉが値０になることにより、演算処理の進行に伴い、増大側用値ＤＰｍｉ＿ｍｏｄ＿ｐが値０に収束するようになる。それにより、増大側用値ＤＰｍｉ＿ｍｏｄ＿ｐを用いて算出される補償値Ｕｍｕｓｉｃ＿ｉｇ’も値０に収束するようになることで、点火操作量Ｕｉｇが補償値Ｕｍｕｓｉｃ＿ｉｇ’によって遅角側の値に補正された状態から、無補正の状態に変化することになる。
【０２１７】
次いで、下式（３４）により、補償目標値ＤＰｍｉ＿ｍｏｄが算出される。
【数２４】
2007247476.tif 000026
【０２１８】
一方、変動方向フラグＦ＿ＤＰｍｉ＿ｄｉｒが「０」に設定されたときには、変動予測値ＤＰｍｉと減少側しきい値ＤＰｍｉ＿ＮＳＴＥＰとの比較結果に基づき、以下に述べるように、変動予測値の減少側用値ＤＰｍｉ＿ｎ＿ｉｎ、１回目噴射率Ｒｉｎｊおよび補償目標値の減少側用値ＤＰｍｉ＿ｍｏｄ＿ｎを算出するとともに、待機フラグＦ＿Ｒｉｎｊ＿Ｗａｉｔの値を設定する。
【０２１９】
まず、変動予測値の減少側用値ＤＰｍｉ＿ｎ＿ｉｎの算出手法について説明する。この変動予測値の減少側用値ＤＰｍｉ＿ｎ＿ｉｎは、後述するように、補償目標値の減少側用値ＤＰｍｉ＿ｍｏｄ＿ｎの算出に用いられるものであり、ＤＰｍｉ＜ＤＰｍｉ＿ＮＳＴＥＰが成立しているときには、下式（３５）により算出される。
【数２５】
2007247476.tif 000027
【０２２０】
一方、ＤＰｍｉ＿ＮＳＴＥＰ≦ＤＰｍｉ≦ＤＰｍｉ＿ＰＳＴＥＰが成立しているときには、変動予測値の減少側用値ＤＰｍｉ＿ｎ＿ｉｎは、下式（３６）により算出される。
【数２６】
2007247476.tif 000028
【０２２１】
次に、待機フラグＦ＿Ｒｉｎｊ＿Ｗａｉｔの設定手法について説明する。この待機フラグＦ＿Ｒｉｎｊ＿Ｗａｉｔは、１回目噴射率Ｒｉｎｊを変更すると、エンジントルクＴＲＱ（すなわち図示平均有効圧Ｐｍｉ）が減少側に変化すると予想される場合において、１回目噴射率Ｒｉｎｊの変更を、点火時期Ｉｇ＿ｌｏｇの変更によるエンジントルクＴＲＱの低減が終了するまで待機するか否かを判定するためのものであり、以下に述べるように設定される。
【０２２２】
まず、下記の条件（ｊ１）〜（ｊ３）がいずれも成立しているとき、または条件（ｊ４）が成立しているときには、待機フラグＦ＿Ｒｉｎｊ＿Ｗａｉｔが「１」に設定される。この条件（ｊ３）のＤＰｍｉ＿ＮＷＡＩＴは、１回目噴射率Ｒｉｎｊの変更待機の要・不要を判定するためのしきい値であり、負の所定値（例えば−１０ｋＰａ）に設定されている。
（ｊ１）ＤＰｍｉ＿ＮＳＴＥＰ≦ＤＰｍｉ（ｋ）≦ＤＰｍｉ＿ＰＳＴＥＰ
（ｊ２）Ｆ＿Ｒｉｎｊ＿Ｗａｉｔ（ｋ−１）＝１
（ｊ３）ＤＰｍｉ＿ｍｏｄ＿ｎ（ｋ−１）≧ＤＰｍｉ＿ＮＷＡＩＴ
（ｊ４）ＤＰｍｉ＜ＤＰｍｉ＿ＮＳＴＥＰ
【０２２３】
一方、下記の条件（ｊ５）〜（ｊ７）がいずれも成立しているとき、または、条件（ｊ８），（ｊ９）がいずれも成立しているときには、待機フラグＦ＿Ｒｉｎｊ＿Ｗａｉｔが「０」に設定される。
（ｊ５）ＤＰｍｉ＿ＮＳＴＥＰ≦ＤＰｍｉ（ｋ）≦ＤＰｍｉ＿ＰＳＴＥＰ
（ｊ６）Ｆ＿Ｒｉｎｊ＿Ｗａｉｔ（ｋ−１）＝１
（ｊ７）ＤＰｍｉ＿ｍｏｄ＿ｎ（ｋ−１）＜ＤＰｍｉ＿ＮＷＡＩＴ
（ｊ８）ＤＰｍｉ＿ＮＳＴＥＰ≦ＤＰｍｉ（ｋ）≦ＤＰｍｉ＿ＰＳＴＥＰ
（ｊ９）Ｆ＿Ｒｉｎｊ＿Ｗａｉｔ（ｋ−１）＝０
【０２２４】
次いで、１回目噴射率Ｒｉｎｊおよび補償目標値の減少側用値ＤＰｍｉ＿ｍｏｄ＿ｎの算出手法について説明する。まず、Ｆ＿Ｒｉｎｊ＿Ｗａｉｔ＝１のときには、これらの値Ｒｉｎｊ，ＤＰｍｉ＿ｍｏｄ＿ｎは、下式（３７），（３８）により算出される。下式（３８）のλｎ’は、０＜λｎ’＜１が成立するように遅れ係数である。すなわち、補償目標値の減少側用値ＤＰｍｉ＿ｍｏｄ＿ｎは、１次遅れフィルタ処理が施された値として算出される。
【数２７】
2007247476.tif 000029
【０２２５】
一方、Ｆ＿Ｒｉｎｊ＿Ｗａｉｔ＝０のときには、下式（３９），（４０）により、１回目噴射率Ｒｉｎｊおよび補償目標値の減少側用値ＤＰｍｉ＿ｍｏｄ＿ｎが算出される。
【数２８】
2007247476.tif 000030
【０２２６】
そして、最終的に、下式（４１）により、補償目標値ＤＰｍｉ＿ｍｏｄが算出される。
【数２９】
2007247476.tif 000031
【０２２７】
また、前述した動的補償器１４４では、下式（４２）により、補償値Ｕｍｕｓｉｃ＿ｉｇ’が算出される。なお、下式（４２）のａ１’，ｂ１’は後述する動特性モデルのモデルパラメータである。
【数３０】
2007247476.tif 000032
【０２２８】
上記式（４２）は以下のように導出される。まず、補償値Ｕｍｕｓｉｃ＿ｉｇ’を入力とし、変動予測値ＤＰｍｉを出力とする系の動特性モデルは、下式（４３）のように定義できる。すなわち、この式（４３）は、補償値Ｕｍｕｓｉｃ＿ｉｇ’と、制御量としての図示平均有効圧Ｐｍｉとの関係を表す動特性モデルに相当する。また、この式（４３）の逆伝達関数は、下式（４４）のようになる。
【数３１】
2007247476.tif 000033
【０２２９】
ここで、補償値Ｕｍｕｓｉｃ＿ｉｇ’は、変動予測値ＤＰｍｉを相殺する（すなわち補償する）ための値であるので、補償目標値ＤＰｍｉ＿ｍｏｄを、ＤＰｍｉ（ｋ＋１）＝−ＤＰｍｉ＿ｍｏｄ（ｋ）が成立するように算出すべきである。したがって、ＤＰｍｉ（ｋ＋１）＝−ＤＰｍｉ＿ｍｏｄ（ｋ）を上記式（４４）に代入すると、前述した式（４２）が導出される。
【０２３０】
以上のように、分割噴射コントローラ１４０では、補償値Ｕｍｕｓｉｃ＿ｉｇ’および１回目噴射率Ｒｉｎｊが算出される。
【０２３１】
次に、図３３を参照しながら、前述した協調フィードバックコントローラ１５０について説明する。同図に示すように、協調フィードバックコントローラ１５０は、点火時期コントローラ１６０および吸入空気量コントローラ１７０を備えている。
【０２３２】
まず、点火時期コントローラ１６０について説明する。この点火時期コントローラ１６０は、以下に述べるように、目標値フィルタ型２自由度スライディングモード制御アルゴリズムを適用した制御アルゴリズムにより、点火操作量Ｕｉｇ’（＝Ｉｇ＿ｌｏｇ）を算出するものであり、目標値フィルタ１６１、切換関数算出部１６２、到達則入力算出部１６３および適応則入力算出部１６４および加算要素１６５で構成されている。
【０２３３】
この目標値フィルタ１６１では、下式（４５）に示す一次遅れフィルタアルゴリズムにより、目標圧のフィルタ値Ｐｍｉ＿ｃｍｄ＿ｆが算出される。同式（４５）において、Ｒ’は、目標値応答指定パラメータであり、−１＜Ｒ’＜０の範囲内の値に設定される。これにより、フィルタ値Ｐｍｉ＿ｃｍｄ＿ｆは、目標圧Ｐｍｉ＿ｃｍｄに対して、目標値応答指定パラメータＲ’の値により決定された一次遅れの追従応答性を示す値として算出される。
【数３２】
2007247476.tif 000034
【０２３４】
また、切換関数算出部１６２では、下式（４６），（４７）により、切換関数σｐｍｉが算出される。同式（４６）において、Ｓ’は、切換関数設定パラメータであり、−１＜Ｓ’＜０の範囲内の値に設定される。また、Ｅｐｍｉは、追従誤差であり、式（４７）に示すように、図示平均有効圧Ｐｍｉと目標圧のフィルタ値Ｐｍｉ＿ｃｍｄ＿ｆとの偏差として定義される。
【数３３】
2007247476.tif 000035
【０２３５】
また、到達則入力算出部１６３では、切換関数σｐｍｉと協調ゲインスケジューラ１８０で設定された到達則ゲインＫｒｃｈ＿ｉｇ’を用い、下式（４８）により、到達則入力Ｕｒｃｈ＿ｉｇ’が算出される。
【数３４】
2007247476.tif 000036
【０２３６】
また、適応則入力算出部１６４では、切換関数σｐｍｉと協調ゲインスケジューラ１８０で設定された適応則ゲインＫａｄｐ＿ｉｇ’を用い、下式（４９）により、適応則入力Ｕａｄｐ＿ｉｇ’が算出される。同式（４９）において、λ’は忘却係数であり、０＜λ’＜１の範囲内の値に設定される。この忘却係数λ’を用いる理由は、第１実施形態の適応則入力Ｕａｄｐ＿ｉｇの算出で述べた理由と同じである。
【数３５】
2007247476.tif 000037
【０２３７】
さらに、加算要素１６５では、以上のように算出された到達則入力Ｕｒｃｈ＿ｉｇ’および適応則入力Ｕａｄｐ＿ｉｇ’と、分割噴射コントローラ１４０で算出された補償値Ｕｍｕｓｉｃ＿ｉｇ’と、マップ値算出部１９０で算出されたマップ値Ｕｍａｐ＿ｉｇ’を用い、下式（５０）により、点火操作量Ｕｉｇ’が算出される。
【数３６】
2007247476.tif 000038
【０２３８】
以上のように、点火時期コントローラ１６０では、式（４５）〜（５０）の目標値フィルタ型２自由度スライディングモード制御アルゴリズムを適用した制御アルゴリズムにより、点火操作量Ｕｉｇ’が算出される。なお、本実施形態では、値（Ｕｒｃｈ＿ｉｇ’＋Ｕａｄｐ＿ｉｇ’＋Ｕｍａｐ＿ｉｇ’）が第１基本操作量に相当する。
【０２３９】
次に、前述した吸入空気量コントローラ１７０について説明する。この吸入空気量コントローラ１７０は、以下に述べるように、目標値フィルタ型２自由度スライディングモード制御アルゴリズムを適用した制御アルゴリズムにより、吸気操作量Ｕａｒ’（＝Ｌｉｆｔｉｎ＿ｃｍｄ）を算出するものであり、前述した目標値フィルタ１６１、前述した切換関数算出部１６２、到達則入力算出部１７３、適応則入力算出部１７４および加算要素１７５で構成されている。すなわち、この吸入空気量コントローラ１７０では、目標値フィルタ１６１および切換関数算出部１６２を点火時期コントローラ１６０と共用することにより、目標圧のフィルタ値Ｐｍｉ＿ｃｍｄ＿ｆおよび切換関数σｐｍｉを共用しながら、吸気操作量Ｕａｒ’が算出される。
【０２４０】
具体的には、まず、到達則入力算出部１７３で、切換関数σｐｍｉと協調ゲインスケジューラ１８０で設定された到達則ゲインＫｒｃｈ＿ａｒ’を用い、下式（５１）により、到達則入力Ｕｒｃｈ＿ａｒ’が算出される。
【数３７】
2007247476.tif 000039
【０２４１】
さらに、適応則入力算出部１７４では、切換関数σｐｍｉと協調ゲインスケジューラ１８０で設定された適応則ゲインＫａｄｐ＿ａｒ’を用い、下式（５２）により、適応則入力Ｕａｄｐ＿ａｒ’が算出される。
【数３８】
2007247476.tif 000040
【０２４２】
さらに、加算要素１７５では、以上のように算出された到達則入力Ｕｒｃｈ＿ａｒ’および適応則入力Ｕａｄｐ＿ａｒ’と、マップ値算出部１９０で算出されたマップ値Ｕｍａｐ＿ｉｇ’を用い、下式（５３）により、吸気操作量Ｕａｒ’が算出される。
【数３９】
2007247476.tif 000041
【０２４３】
吸入空気量コントローラ１７０では、以上のように、式（４５）〜（４７），（５１）〜（５３）に示す、目標値フィルタ型２自由度スライディングモード制御アルゴリズムを適用した制御アルゴリズムにより、吸気操作量Ｕａｒ’が算出される。
【０２４４】
次に、前述した協調ゲインスケジューラ１８０について説明する。この協調ゲインスケジューラ１８０では、切換関数σｐｍｉの値に応じて、図３４に示す到達則ゲイン算出用のマップおよび図３５に示す適応則ゲイン算出用のマップを検索することにより、前述した４つのゲインＫｒｃｈ＿ｉｇ’，Ｋｒｃｈ＿ａｒ’，Ｋａｄｐ＿ｉｇ’，Ｋａｄｐ＿ａｒ’がそれぞれ算出される。なお、両図３４，３５におけるσ３，σ４は、σ３＜σ４の関係が成立する切換関数σｐｍｉの正の所定値である。
【０２４５】
まず、図３４の到達則ゲイン算出用のマップを参照すると、このマップでは、到達則ゲインＫｒｃｈ＿ｉｇ’は、正側および負側の値に対して対称に設定されており、値０付近の−σ３＜σｐｍｉ＜σ３の範囲では、所定の最大値Ｋｒｃｈ＿ｉｇ３に設定されているとともに、σｐｍｉ＜−σ４，σ４＜σｐｍｉの範囲では、所定の最小値Ｋｒｃｈ＿ｉｇ４に設定されている。また、−σ４≦σｐｍｉ≦−σ３，σ３≦σｐｍｉ≦σ４の範囲では、σｐｍｉの絶対値が小さくなるほど、より大きな値に設定されている。
【０２４６】
また、到達則ゲインＫｒｃｈ＿ａｒ’も、切換関数σｐｍｉの正側および負側の値に対して対称に設定されており、値０付近の−σ３＜σｐｍｉ＜σ３の範囲では、所定の最小値Ｋｒｃｈ＿ａｒ４に設定されているとともに、σｐｍｉ＜−σ４，σ４＜σｐｍｉの範囲では、所定の最大値Ｋｒｃｈ＿ａｒ３に設定されている。また、−σ４≦σｐｍｉ≦−σ３，σ３≦σｐｍｉ≦σ４の範囲では、σｐｍｉの絶対値が小さくなるほど、より小さな値に設定されている。
【０２４７】
一方、図３５の適応則ゲイン算出用のマップを参照すると、このマップでは、適応則ゲインＫａｄｐ＿ｉｇ’は、切換関数σｐｍｉの正側および負側の値に対して対称に設定されており、値０付近の−σ３＜σｐｍｉ＜σ３の範囲では、所定の最大値Ｋａｄｐ＿ｉｇ３に設定されているとともに、σｐｍｉ＜−σ４，σ４＜σｐｍｉの範囲では、所定の最小値Ｋａｄｐ＿ｉｇ４に設定されている。また、−σ４≦σｐｍｉ≦−σ３，σ３≦σｐｍｉ≦σ４の範囲では、σｐｍｉの絶対値が小さくなるほど、より大きな値に設定されている。
【０２４８】
また、適応則ゲインＫａｄｐ＿ａｒ’も、切換関数σｐｍｉの正側および負側の値に対して対称に設定されており、値０付近の−σ３＜σｐｍｉ＜σ３の範囲では、所定の最小値Ｋａｄｐ＿ａｒ４に設定されているとともに、σｐｍｉ＜−σ４，σ４＜σｐｍｉの範囲では、所定の最大値Ｋａｄｐ＿ａｒ３に設定されている。また、−σ４≦σｐｍｉ≦−σ３，σ３≦σｐｍｉ≦σ４の範囲では、σｐｍｉの絶対値が小さくなるほど、より小さな値に設定されている。
【０２４９】
４つのゲインＫｒｃｈ＿ｉｇ’，Ｋａｄｐ＿ｉｇ’，Ｋｒｃｈ＿ａｒ’，Ｋａｄｐ＿ａｒ’の値が以上のように設定されている理由は、第１実施形態の協調ゲインスケジューラ８０の説明で述べた理由と同じである。
【０２５０】
次に、前述したマップ値算出部１９０について説明する。このマップ値算出部１９０では、以下に述べるように、２つのマップ値Ｕｍａｐ＿ｉｇ’，Ｕｍａｐ＿ａｒ’が算出される。これらのマップ値Ｕｍａｐ＿ｉｇ’，Ｕｍａｐ＿ａｒ’はいずれも、図示平均有効圧Ｐｍｉを目標圧のフィルタ値Ｐｍｉ＿ｃｍｄ＿ｆに制御するための（すなわち図示平均有効圧Ｐｍｉを目標圧Ｐｍｉ＿ｃｍｄに制御するための）フィードフォワード項に相当する値であり、そのため、前述したように、点火操作量Ｕｉｇ’および吸気操作量Ｕａｒ’の算出において、加算項として用いられる。
【０２５１】
まず、マップ値Ｕｍａｐ＿ｉｇ’は、エンジン回転数ＮＥおよび目標圧のフィルタ値Ｐｍｉ＿ｃｍｄ＿ｆに応じて、図３６に示すマップを検索することにより算出される。同図のＮＥ４〜６は、ＮＥ４＜ＮＥ５＜ＮＥ６が成立するようなエンジン回転数ＮＥの所定値である。
【０２５２】
同図に示すように、マップ値Ｕｍａｐ＿ｉｇ’は、目標圧のフィルタ値Ｐｍｉ＿ｃｍｄ＿ｆが大きい領域では、目標圧のフィルタ値Ｐｍｉ＿ｃｍｄ＿ｆが大きいほど、遅角側の値に設定されている。これはノッキングの発生を抑制するためである。また、マップ値Ｕｍａｐ＿ｉｇ’は、エンジン回転数ＮＥの低回転域（ＮＥ＝ＮＥ４）では、他の回転域の値と比べて、最も進角側の値に設定されている。これは、低回転域では他の回転域よりもノック余裕が大きいことで、点火時期Ｉｇ＿ｌｏｇを最も進角側の値に設定可能であることによる。さらに、マップ値Ｕｍａｐ＿ｉｇ’は、中回転域（ＮＥ＝ＮＥ５）では、最も遅角側の値に設定され、高回転域（ＮＥ＝ＮＥ６）では、中回転域よりも進角側の値に設定されている。これは、中回転域では、筒内流動が低いことに起因して、燃焼速度が低下し、それにより、ノック余裕が最も低下するためである。
【０２５３】
また、マップ値Ｕｍａｐ＿ａｒ’は、エンジン回転数ＮＥおよび目標圧のフィルタ値Ｐｍｉ＿ｃｍｄ＿ｆに応じて、図３７に示すマップを検索することにより算出される。同図では、マップ値Ｕｍａｐ＿ｉｇ’は、エンジン回転数ＮＥが高いほど、または目標圧のフィルタ値Ｐｍｉ＿ｃｍｄ＿ｆが大きいほど、より大きい値に設定されている。これは、エンジン回転数ＮＥが高いほど、または目標圧のフィルタ値Ｐｍｉ＿ｃｍｄ＿ｆが大きいほど、エンジントルクＴＲＱをより増大させる必要があることで、吸気操作量Ｕａｒ’をより大きい値に制御し、吸入空気量Ｇｃｙｌを増大させるためである。
【０２５４】
以上のように、第２実施形態の制御装置１Ａによれば、前述した第１実施形態の制御装置１によるアイドル回転数制御の手法と同様に、図示平均有効圧Ｐｍｉを制御することができる。すなわち、エンジン回転数ＮＥの変化などに起因して、燃焼モードを均一燃焼モードから成層燃焼モードに切り換える場合、その切換タイミングに同期して、補償値Ｕｍｕｓｉｃ＿ｉｇ’により、点火操作量Ｕｉｇ’すなわち点火時期Ｉｇ＿ｌｏｇが遅角側に迅速に補正されるので、成層燃焼モードへの切換に伴うエンジントルクＴＲＱの増大すなわち図示平均有効圧Ｐｍｉの不要な上昇を相殺することができる。
【０２５５】
また、成層燃焼モードへの切換以降、補償目標値の増大側用値Ｐｍｉ＿ｍｏｄ＿ｐが、式（３３）に示す忘却係数λｐ’を用いた忘却演算処理により算出されるので、演算処理の進行に伴い、補償値Ｕｍｕｓｉｃ＿ｉｇ’が値０に向かって変化し、点火操作量Ｕｉｇ’すなわち点火時期Ｉｇ＿ｌｏｇが進角側に徐々に変化する。それにより、点火時期Ｉｇ＿ｌｏｇが補償値Ｕｍｕｓｉｃ＿ｉｇ’によって遅角側に補正された状態に長時間保持されることがなくなることで、燃費を向上させることができる。
【０２５６】
さらに、点火時期Ｉｇ＿ｌｏｇが進角側に徐々に変化するのに起因して、図示平均有効圧Ｐｍｉが上昇しようとすると、前述したように、協調フィードバックコントローラ１５０の式（５３）により、吸気操作量Ｕａｒ’すなわち目標吸気開角Ｌｉｆｔｉｎ＿ｃｍｄが緩やかに減少するように算出されるので、吸入空気量Ｇｃｙｌが緩やかに減少側に制御される。その結果、成層燃焼モードへの切換以降、点火時期Ｉｇ＿ｌｏｇの進角側への変化に伴う図示平均有効圧Ｐｍｉの上昇を抑制することができる。すなわち、吸気操作量Ｕａｒ’により、補償値Ｕｍｕｓｉｃ＿ｉｇ’の影響を打ち消すように、吸入空気量Ｇｃｙｌを制御することができる。
【０２５７】
一方、エンジン回転数ＮＥの変化などに起因して、燃焼モードを成層燃焼モードから均一燃焼モードに切り換える場合、減少要求が発生したタイミングでは、均一燃焼モードへの切換が行われず、それ以降の、補償値Ｕｍｕｓｉｃ＿ｉｇ’の絶対値がトルクダウンを補償可能な値まで遅角側に変化したタイミングで、均一燃焼モードへの切換が実行されるとともに、補償値Ｕｍｕｓｉｃ＿ｉｇ’も値０まで進角側に迅速に変更される。それにより、補償値Ｕｍｕｓｉｃ＿ｉｇ’によって、均一燃焼モードへの切換に伴うエンジントルクＴＲＱの減少、すなわち図示平均有効圧Ｐｍｉの不要な低下を相殺することができる。
【０２５８】
また、燃焼モードの切換待機中、補償値Ｕｍｕｓｉｃ＿ｉｇ’の遅角側への変化によって、図示平均有効圧Ｐｍｉが低下しようとすると、前述したように、協調フィードバックコントローラ１５０の式（５３）により、吸気操作量Ｕａｒ’すなわち目標吸気開角Ｌｉｆｔｉｎ＿ｃｍｄが緩やかに増大するように算出され、吸入空気量Ｇｃｙｌが増大側に緩やかに制御されることによって、図示平均有効圧Ｐｍｉの低下を打ち消すことができる。
【０２５９】
さらに、点火操作量Ｕｉｇ’および吸気操作量Ｕａｒ’がそれぞれ、目標値フィルタ型２自由度スライディングモード制御アルゴリズムを適用した制御アルゴリズムにより、切換関数σｐｍｉおよび目標圧のフィルタ値Ｐｍｉ＿ｃｍｄ＿ｆを共用しながら算出されるので、これらの操作量Ｕｉｇ’，Ｕａｒ’が互いに干渉し合うのを回避しながら、図示平均有効圧Ｐｍｉを目標圧Ｐｍｉ＿ｃｍｄに適切に収束させることができる。
【０２６０】
なお、第１および第２実施形態はそれぞれ、内燃機関の発生トルクを表す制御量として、アイドル運転中のエンジン回転数ＮＥおよび図示平均有効圧Ｐｍｉを用いた例であるが、本願発明の制御量はこれに限らず、内燃機関の発生トルクを表すものであればよい。例えば、第２実施形態の図示平均有効圧Ｐｍｉに代えて、正味平均有効圧Ｐｍｅを用いてもよい。
【０２６１】
また、第１および第２実施形態は、本願発明の制御装置を車両用の内燃機関に適用した例であるが、本願発明の制御装置はこれに限らず、船舶用や発電用の内燃機関などの様々な内燃機関に適用可能である。
【図面の簡単な説明】
【０２６２】
【図１】本願発明の第１実施形態に係る制御装置を適用した内燃機関の概略構成を示す図である。
【図２】第１実施形態の制御装置の概略構成を示すブロック図である。
【図３】吸気可変動弁機構および排気可変動弁機構による吸気弁および排気弁の開弁動作を説明するためのバルブリフト曲線である。
【図４】１回目噴射率Ｒｉｎｊおよび点火時期Ｉｇ＿ｌｏｇを変化させたときの内燃機関の発生トルクＴＲＱの測定結果を示す図である。
【図５】第１実施形態のアイドル回転数制御の制御手法を説明するための図である。
【図６】第１実施形態のアイドル回転数制御において、発生トルクＴＲＱを増大方向に制御するときの制御手法を説明するための図である。
【図７】第１実施形態のアイドル回転数制御において、発生トルクＴＲＱを減少方向に制御するときの制御手法を説明するための図である。
【図８】アイドル回転数コントローラの構成を示すブロック図である。
【図９】目標回転数ＮＥ＿ｃｍｄの算出に用いるマップの一例を示す図である。
【図１０】分割噴射コントローラの構成を示すブロック図である。
【図１１】１回目噴射率の要求値Ｒｉｎｊ＿ＳＴＢの算出に用いるマップの一例を示す図である。
【図１２】マップ値ＤＮＥ＿ｍａｐの算出に用いるマップの一例を示す図である。
【図１３】協調フィードバックコントローラの構成を示すブロック図である。
【図１４】到達則ゲインＫｒｃｈ＿ｉｇ，Ｋｒｃｈ＿ａｒの算出に用いるマップの一例を示す図である。
【図１５】適応則ゲインＫａｄｐ＿ｉｇ，Ｋａｄｐ＿ａｒの算出に用いるマップの一例を示す図である。
【図１６】マップ値Ｕｍａｐ＿ｉｇの算出に用いるマップの一例を示す図である。
【図１７】マップ値Ｕｍａｐ＿ａｒの算出に用いるマップの一例を示す図である。
【図１８】本実施形態のアイドル回転数制御のシミュレーション結果の一例を示すタイミングチャートである。
【図１９】比較のために、補償値Ｕｍｕｓｉｃ＿ｉｇ＝０に保持したときのアイドル回転数制御のシミュレーション結果の一例を示すタイミングチャートである。
【図２０】アイドル回転数制御処理を含む各種の制御処理を示すフローチャートである。
【図２１】１回目噴射率Ｒｉｎｊおよび補償値Ｕｍｕｓｉｃ＿ｉｇの算出処理を示すフローチャートである。
【図２２】１回目噴射率Ｒｉｎｊおよび補償目標値ＤＮＥ＿ｍｏｄの算出処理を示すフローチャートである。
【図２３】点火操作量Ｕｉｇの算出処理を示すフローチャートである。
【図２４】吸気操作量Ｕａｒの算出処理を示すフローチャートである。
【図２５】１回目噴射量Ｔｃｙｌ１および２回目噴射量Ｔｃｙｌ２の算出処理を示すフローチャートである。
【図２６】点火時期Ｉｇ＿ｌｏｇの算出に用いるマップの一例を示す図である。
【図２７】目標吸気開角Ｌｉｆｔｉｎ＿ｃｍｄの算出に用いるマップの一例を示す図である。
【図２８】本願発明の第２実施形態に係る制御装置のＰｍｉコントローラの概略構成を示すブロック図である。
【図２９】第２実施形態の分割噴射コントローラの概略構成を示すブロック図である。
【図３０】１回目噴射率の要求値Ｒｉｎｊ＿ＳＴＢの算出に用いるマップの一例を示す図である。
【図３１】マップ値ＤＰｍｉ＿ｍａｐの算出に用いる低回転域用のマップの一例を示す図である。
【図３２】マップ値ＤＰｍｉ＿ｍａｐの算出に用いる中回転域用のマップの一例を示す図である。
【図３３】第２実施形態の協調フィードバックコントローラの概略構成を示すブロック図である。
【図３４】到達則ゲインＫｒｃｈ＿ｉｇ’，Ｋｒｃｈ＿ａｒ’の算出に用いるマップの一例を示す図である。
【図３５】適応則ゲインＫａｄｐ＿ｉｇ’，Ｋａｄｐ＿ａｒ’の算出に用いるマップの一例を示す図である。
【図３６】マップ値Ｕｍａｐ＿ｉｇ’の算出に用いるマップの一例を示す図である。
【図３７】マップ値Ｕｍａｐ＿ａｒ’の算出に用いるマップの一例を示す図である。
【符号の説明】
【０２６３】
１，１Ａ  制御装置
２  ＥＣＵ（第１操作量算出手段、第２操作量算出手段、第１基本操作量算出手段
、補正値算出手段、遅延手段、目標制御量算出手段、修正手段）
３  内燃機関
３０  アイドル回転数コントローラ（第１操作量算出手段、第２操作量算出手段）
３１  目標値算出部（目標制御量算出手段）
４０  分割噴射コントローラ（補正値算出手段、遅延手段）
５０  協調フィードバックコントローラ（第１基本操作量算出手段、修正手段）
９０  マップ値算出部（第１基本操作量算出手段）
１３０  Ｐｍｉコントローラ（第１操作量算出手段、第２操作量算出手段）
１３１  目標値算出部（目標制御量算出手段）
１４０  分割噴射コントローラ（補正値算出手段、遅延手段）
１５０  協調フィードバックコントローラ（第１基本操作量算出手段、修正手段）
１９０  マップ値算出部（第１基本操作量算出手段）
ＮＥ  エンジン回転数（制御量）
ＮＥ＿ｃｍｄ  目標回転数（目標制御量）
Ｕｉｇ  点火操作量（第１操作量）
Ｕｒｃｈ＿ｉｇ  到達則入力（第１基本操作量の成分）
Ｕａｄｐ＿ｉｇ  適応則入力（第１基本操作量の成分）
Ｕｍａｐ＿ｉｇ  マップ値（第１基本操作量の成分）
Ｕｍｕｓｉｃ＿ｉｇ  補償値（補正値）
Ｕａｒ  吸気操作量（第２操作量）
Ｐｍｉ  図示平均有効圧（制御量）
Ｐｍｉ＿ｃｍｄ  目標圧（目標制御量）
Ｕｉｇ’  点火操作量（第１操作量）
Ｕｒｃｈ＿ｉｇ’  到達則入力（第１基本操作量の成分）
Ｕａｄｐ＿ｉｇ’  適応則入力（第１基本操作量の成分）
Ｕｍａｐ＿ｉｇ’  マップ値（第１基本操作量の成分）
Ｕｍｕｓｉｃ＿ｉｇ’  補償値（補正値）
Ｕａｒ’  吸気操作量（第２操作量）
【図１】
2007247476.tif 000042
【図２】
2007247476.tif 000043
【図３】
2007247476.tif 000044
【図４】
2007247476.tif 000045
【図５】
2007247476.tif 000046
【図６】
2007247476.tif 000047
【図７】
2007247476.tif 000048
【図８】
2007247476.tif 000049
【図９】
2007247476.tif 000050
【図１０】
2007247476.tif 000051
【図１１】
2007247476.tif 000052
【図１２】
2007247476.tif 000053
【図１３】
2007247476.tif 000054
【図１４】
2007247476.tif 000055
【図１５】
2007247476.tif 000056
【図１６】
2007247476.tif 000057
【図１７】
2007247476.tif 000058
【図１８】
2007247476.tif 000059
【図１９】
2007247476.tif 000060
【図２０】
2007247476.tif 000061
【図２１】
2007247476.tif 000062
【図２２】
2007247476.tif 000063
【図２３】
2007247476.tif 000064
【図２４】
2007247476.tif 000065
【図２５】
2007247476.tif 000066
【図２６】
2007247476.tif 000067
【図２７】
2007247476.tif 000068
【図２８】
2007247476.tif 000069
【図２９】
2007247476.tif 000070
【図３０】
2007247476.tif 000071
【図３１】
2007247476.tif 000072
【図３２】
2007247476.tif 000073
【図３３】
2007247476.tif 000074
【図３４】
2007247476.tif 000075
【図３５】
2007247476.tif 000076
【図３６】
2007247476.tif 000077
【図３７】
2007247476.tif 000078