(57)【要約】【課題】  燃焼モードを均一燃焼モードと成層燃焼モードとの間で切り換える際に、安定した燃焼を確保することができる内燃機関の制御装置を提供する。【解決手段】制御装置１のＥＣＵ２は、均一燃焼モードと成層燃焼モードとに燃焼モードを切り換えるとともに、両燃焼モードの切換えの際の移行中に、２回燃料噴射を実行する。また、ＥＣＵ２は、内燃機関３の運転状態に応じて、２回燃料噴射時に吸気行程中および圧縮行程中にそれぞれ噴射すべき第１および第２燃料噴射量（ＴＯＵＴ−ＴＩＭＤＳＣ、ＴＩＭＤＳＣ）を算出し、移行中において、第１および第２燃料噴射量のいずれかが所定値ＴＯＵＴＤＩＭＩＮよりも小さい場合に、第１および第２燃料噴射量を合計した量ＴＯＵＴの燃料を、燃焼モードの切換えが均一燃焼モードへの切換えであるときには圧縮行程中に噴射し、成層燃焼モードへの切換えであるときには吸気行程中に噴射する。【選択図】  図１２
2005155481.tif 000002
【特許請求の範囲】
【請求項１】
気筒内への燃料噴射を吸気行程中に行う均一燃焼モードと、燃料噴射を圧縮行程中に行う成層燃焼モードとに燃焼モードを切り換えて運転するとともに、前記均一燃焼モードと前記成層燃焼モードとの間の燃焼モードの切換えの際の移行中に、燃料を１燃焼サイクル内の吸気行程中および圧縮行程中にそれぞれ噴射する２回燃料噴射を実行する筒内噴射式の内燃機関の制御装置であって、
前記内燃機関の運転状態を検出する運転状態検出手段と、
当該検出された内燃機関の運転状態に応じて、当該内燃機関の要求トルクを算出する要求トルク算出手段と、
当該算出された要求トルクに応じて、前記燃焼モードを、前記均一燃焼モードおよび前記成層燃焼モードのいずれかに決定する燃焼モード決定手段と、
前記検出された内燃機関の運転状態に応じて、前記２回燃料噴射時に吸気行程中および圧縮行程中にそれぞれ噴射すべき燃料量を、第１および第２燃料噴射量として算出する燃料噴射量算出手段と、
前記移行中において、前記第１および第２燃料噴射量のいずれかが所定値よりも小さい場合に、前記第１および第２燃料噴射量を合計した量の燃料を、当該燃焼モードの切換えが前記均一燃焼モードへの切換えであるときには圧縮行程中に噴射し、前記成層燃焼モードへの切換えであるときには吸気行程中に噴射する燃料噴射手段と、
を備えていることを特徴とする内燃機関の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内燃機関の燃焼モードを、均一燃焼モードと成層燃焼モードとの間で切り換えるとともに、両燃焼モード間の切換えの際の移行中に、２回燃料噴射を実行する筒内噴射式の内燃機関の制御装置に関する。
【背景技術】
【０００２】
従来、この種の制御装置として、例えば特許文献１に記載のものが知られている。この制御装置では、内燃機関の燃焼モードとして、燃料噴射を吸気行程中に行う均一燃焼モードと、圧縮行程中に行う成層燃焼モードと、燃料噴射を１燃焼サイクル内の吸気行程中および圧縮行程中にそれぞれ行う２回噴射燃焼モードとを有している。これら３つの燃焼モードから、エンジン回転数および目標トルクに応じて、いずれか１つの燃焼モードが選択され、２回噴射燃焼モードは、成層燃焼モードと均一燃焼モードとの間の切換え時に発生するトルク段差を抑制するために、両燃焼モードの移行中に実行される。
【０００３】
また、上記２回噴射燃焼モードでは、次のように燃料噴射制御が実行される。すなわち、まず、吸入空気量およびエンジン回転数に基づき、２回噴射分の総燃料噴射量を算出する。次いで、例えば、圧縮行程中に噴射すべき燃料噴射量を所定の一定値に設定するとともに、その燃料噴射量を総燃料噴射量から差し引いた値を、吸気行程中に噴射すべき燃料噴射量として設定する。そして、以上のように設定された圧縮行程噴射用および吸気行程噴射用の燃料噴射量に基づいて、燃料噴射制御を実行する。
【０００４】
また、上記制御装置では、算出された圧縮行程噴射用および吸気行程噴射用の燃料噴射量の一方が、燃料を噴射するインジェクタの噴射可能な最小燃料量を下回っているときには、一方の燃料噴射量をこの最小燃料量に設定し、その燃料噴射量を総燃料噴射量から差し引いた値を、他方の燃料噴射量として設定する。
【０００５】
しかし、２回噴射燃焼モード中に、圧縮行程噴射用および吸気行程噴射用の燃料噴射量の一方が、最小燃料量を下回っている場合に、上記のように両行程の燃料噴射量を設定すると、２回噴射燃焼モード中の燃焼が不安定になることがある。すなわち、本来、一方の行程では、最小燃料量よりも少ない燃料量を噴射すべきときに、その燃料量よりも多い燃料を噴射することになり、他方の行程では、総燃料噴射量に近い燃料量を噴射すべきときに、その燃料量よりも少ない燃料を噴射することになる。２回噴射燃焼モードでは、均一燃焼モードや成層燃焼モードに比べて、燃焼が不安定になりやすく、特に２回噴射燃焼モードの圧縮行程中に噴射すべき燃料量が、本来の適正な量からずれてしまうと、燃焼状態が不安定になってしまう。
【０００６】
本発明は、以上のような課題を解決するためになされたものであり、燃焼モードを均一燃焼モードと成層燃焼モードとの間で切り換える際に、安定した燃焼を確保することができる内燃機関の制御装置を提供することを目的とする。
【０００７】
【特許文献１】特開平１１−８２１３５号公報
【発明の開示】
【課題を解決するための手段】
【０００８】
本発明の請求項１に係る内燃機関の制御装置は、気筒１０内への燃料噴射を吸気行程中に行う均一燃焼モードと、燃料噴射を圧縮行程中に行う成層燃焼モードとに燃焼モードを切り換えて運転するとともに、均一燃焼モードと成層燃焼モードとの間の燃焼モードの切換えの際の移行中に、燃料を１燃焼サイクル内の吸気行程中および圧縮行程中にそれぞれ噴射する２回燃料噴射を実行する筒内噴射式の内燃機関３の制御装置１であって、内燃機関３の運転状態を検出する運転状態検出手段（実施形態における（以下、本項において同じ）ＥＣＵ２、クランク角センサ２２、エアフローセンサ２４、吸気管内絶対圧センサ２６、アクセル開度センサ３０）と、検出された内燃機関３の運転状態に応じて、内燃機関３の要求トルクを算出する要求トルク算出手段（ＥＣＵ２、図２のステップ１）と、算出された要求トルクに応じて、燃焼モードを、均一燃焼モードおよび成層燃焼モードのいずれかに決定する燃焼モード決定手段（ＥＣＵ２、図２のステップ２）と、検出された内燃機関３の運転状態に応じて、２回燃料噴射時に吸気行程中および圧縮行程中にそれぞれ噴射すべき燃料量を、第１および第２燃料噴射量（ＴＯＵＴ−ＴＩＭＤＳＣ、ＴＩＭＤＳＣ）として算出する燃料噴射量算出手段（ＥＣＵ２）と、移行中において、第１および第２燃料噴射量のいずれかが所定値（噴射可能下限値ＴＯＵＴＤＩＭＩＮ）よりも小さい場合に、第１および第２燃料噴射量を合計した量の燃料（最終燃料噴射量ＴＯＵＴ）を、燃焼モードの切換えが均一燃焼モードへの切換えであるときには圧縮行程中に噴射し、成層燃焼モードへの切換えであるときには吸気行程中に噴射する燃料噴射手段（燃料噴射弁４、ＥＣＵ２）と、を備えていることを特徴とする。
【０００９】
この構成によれば、内燃機関の運転状態に応じて要求トルクを算出し、この要求トルクに応じて、燃焼モードを均一燃焼モードまたは成層燃焼モードに決定する。均一燃焼モードでは、燃料を吸気行程中に噴射し、成層燃焼モードでは、燃料を圧縮行程中に噴射する。また、内燃機関の運転状態に応じて、第１および第２燃料噴射量を算出し、両燃焼モードの切換えの際の移行中に、１燃焼サイクル内の吸気行程中および圧縮行程中にそれぞれ第１および第２燃料噴射量を噴射する２回燃料噴射を実行する。また、上記移行中において、第１および第２燃料噴射量のいずれかが所定値よりも小さい場合には、第１および第２燃料噴射量を合計した量の燃料（以下、本欄において「総燃料」という）を、燃焼モードの切換えが均一燃焼モードへの切換えであるときに圧縮行程中に噴射し、成層燃焼モードへの切換えであるときに吸気行程中に噴射する。つまり、第１および第２燃料噴射量のいずれかが所定値よりも小さい場合には、２回燃料噴射を実行せずに、切換え前の燃焼モードでの噴射タイミングで、総燃料を噴射する。
【００１０】
このような噴射タイミングで燃料噴射を実行するのは、以下の理由による。すなわち、前述したように、均一燃焼モードと成層燃焼モードとの間の切換えの際の移行中に実行される２回燃料噴射では、燃焼が不安定になりやすく、そのため、燃焼の安定を確保するために、吸気行程中および圧縮行程中にそれぞれ噴射すべき燃料を、いずれも適正な量で噴射することが要求される。しかし、第１および第２燃料噴射量のいずれかが所定値よりも小さい場合、例えば第１および第２燃料噴射量のいずれかが、燃料噴射手段の噴射可能な最小燃料量を下回っている場合などに、従来のように、本来の適正な量からずれた燃料量で、２回燃料噴射を実行すると、燃焼が不安定になる。第１および第２燃料噴射量のいずれかが所定値よりも小さくなる状況は、特に、両燃焼モードの切換えの際の移行開始直後に生じる傾向がある。したがって、上記のような状況が生じた場合に、本発明の制御装置では、２回燃料噴射を実行せずに、移行開始直前、すなわち切換え前の燃焼モードでの噴射タイミングで、総燃料を噴射するので、燃焼モードの切換えの際に安定した燃焼を確保することができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の一実施形態による制御装置およびこれを適用した内燃機関の概略構成を示す図である。
【図２】燃料噴射制御処理のメインルーチンを示すフローチャートである。
【図３】要求燃料噴射量ＴＣＹＬを算出するためのサブルーチンを示すフローチャートである。
【図４】吸気行程噴射用の要求燃料噴射量ＴＣＹＬ１ＳＴＴを算出するためのサブルーチンを示すフローチャートである。
【図５】圧縮行程噴射用の要求燃料噴射量ＴＣＹＬ２ＮＤＴを算出するためのサブルーチンを示すフローチャートである。
【図６】暫定要求燃料噴射量ＴＣＹＬＬＭＴを算出するためのサブルーチンの一部を示すフローチャートである。
【図７】図６のサブルーチンに続くフローチャートである。
【図８】仮想目標空燃比ＫＣＭＤＩＭＧを算出するためのサブルーチンを示すフローチャートである。
【図９】燃料噴射を実行するためのサブルーチンを示すフローチャートである。
【図１０】燃焼移行モードフラグＦ＿ＤＳＣＭＯＤを設定するためのサブルーチンの一部を示すフローチャートである。
【図１１】図１０のサブルーチンに続くフローチャートである。
【図１２】２回噴射フラグＦ＿ＤＢＬＩＮＪを設定するためのサブルーチンを示すフローチャートである。
【図１３】圧縮行程噴射用の燃料量ＴＩＭＤＳＣを算出するためのＴＩＭＤＳＣテーブルの一例を示す図である。
【図１４】要求トルクＰＭＣＭＤを算出するためのマップの一例を示す図である。
【図１５】成層燃焼許可フラグＦ＿ＤＩＳＣＯＫを設定するためのマップの一例を示す図である。
【発明を実施するための最良の形態】
【００１２】
以下、図面を参照しながら、本発明の好ましい実施形態を詳細に説明する。図１は、本発明の一実施形態による制御装置１およびこれを適用した内燃機関（以下「エンジン」という）３の概略構成を示している。同図に示すように、制御装置１はＥＣＵ２を備えており、このＥＣＵ２は、後述するように、内燃機関３の燃料噴射制御処理などを行う。
【００１３】
エンジン３は、図示しない車両に搭載された直列４気筒（１つのみ図示）タイプのガソリンエンジンであり、各気筒１０のピストン３ａとシリンダヘッド３ｂとの間に燃焼室３ｃが形成されている。ピストン３ａの上面の中央部には、凹部３ｄが形成されている。また、シリンダヘッド３ｂには、燃焼室３ｃに臨むように燃料噴射弁（以下「インジェクタ」という）４（燃料噴射手段）および点火プラグ５が取り付けられており、燃料が燃焼室３ｃ内に直接噴射される。すなわちこのエンジン３は、筒内噴射式のものである。
【００１４】
インジェクタ４は、燃焼室３ｃの天壁中央部に配置されており、燃料パイプ４ｂを介して高圧ポンプ４ａに接続されている。燃料は、図示しない燃料タンクから高圧ポンプ４ａで昇圧された後、レギュレータ（図示せず）で調圧された状態でインジェクタ４に供給されるとともに、このインジェクタ４を介して、ピストン３ａの凹部３ｄに向かって噴射される。これにより、燃料は、凹部３ｄを含むピストン３ａの上面に衝突して燃料噴流を形成する。特に、後述する成層燃焼のときには、噴射された燃料の大部分が、凹部３ｄに衝突して燃料噴流を形成する。また、インジェクタ４は、ＥＣＵ２に電気的に接続されており、後述するように、ＥＣＵ２からの駆動信号により、その開弁時間である燃料噴射時間および燃料噴射タイミング（開弁タイミングおよび閉弁タイミング）が制御される。なお、このインジェクタ４の燃料噴射時間は、気筒１０内に噴射される燃料量、すなわち燃料噴射量に相当するものであり、以下の説明では、インジェクタ４の燃料噴射時間を燃料噴射量という。
【００１５】
また、燃料パイプ４ｂのインジェクタ４の付近には、燃料圧センサ２０が取り付けられている。この燃料圧センサ２０は、インジェクタ４が噴射する燃料の燃料圧ＰＦを検出して、その検出信号をＥＣＵ２に出力する。また、ＥＣＵ２には、燃料温センサ２１が電気的に接続されており、この燃料温センサ２１は、燃料温ＴＦを検出して、その検出信号をＥＣＵ２に出力する。
【００１６】
さらに、上記点火プラグ５もＥＣＵ２に電気的に接続されており、ＥＣＵ２により、点火時期に応じたタイミングで高電圧が加えられることによって放電し、それにより、燃焼室３ｃ内の混合気が燃焼する。
【００１７】
また、エンジン３は、ＤＯＨＣ型のものであり、吸気カムシャフト６および排気カムシャフト７を備えている。これらの吸気および排気カムシャフト６、７はそれぞれ、吸気弁８および排気弁９を開閉駆動する吸気カム６ａおよび排気カム７ａを有している。吸気および排気カムシャフト６、７は、図示しないタイミングベルトを介してクランクシャフト３ｅに連結されており、クランクシャフト３ｅの回転に従い、これが２回転するごとに１回転する。
【００１８】
クランクシャフト３ｅには、マグネットロータ２２ａが取り付けられている。このマグネットロータ２２ａは、ＭＲＥピックアップ２２ｂとともに、クランク角センサ２２（運転状態検出手段）を構成している。クランク角センサ２２は、クランクシャフト３ｅの回転に伴い、いずれもパルス信号であるＣＲＫ信号およびＴＤＣ信号をＥＣＵ２に出力する。ＣＲＫ信号は、所定のクランク角（例えば３０゜）ごとに１パルスが出力される。ＥＣＵ２は、このＣＲＫ信号に基づき、エンジン３の回転数（以下「エンジン回転数」という）ＮＥを算出する。一方、ＴＤＣ信号は、各気筒１０のピストン３ａが吸気行程開始時のＴＤＣ（上死点）付近の所定クランク角度位置にあることを表す信号であり、４気筒タイプの本例では、クランク角１８０゜ごとに１パルスが出力される。
【００１９】
また、エンジン３の本体には、水温センサ２３が取り付けられている。水温センサ２３は、サーミスタで構成されており、エンジン３の本体内を循環する冷却水の温度であるエンジン水温ＴＷを検出して、その検出信号をＥＣＵ２に出力する。
【００２０】
また、エンジン３の吸気管１２には、上流側から順に、エアフローセンサ２４、スロットル弁機構１３、スロットル弁開度センサ２５および吸気管内絶対圧センサ２６などが設けられている。
【００２１】
エアフローセンサ２４は、熱線式エアフローメータで構成されており、後述するスロットル弁１３ａを通過する吸入空気量（以下「ＴＨ通過吸入空気量」という）ＧＴＨを表す検出信号をＥＣＵ２に出力する。
【００２２】
また、スロットル弁機構１３は、スロットル弁１３ａおよびこれを開閉駆動するアクチュエータ１３ｂなどを有している。スロットル弁１３ａは、吸気管１２の途中に回動自在に設けられており、その回動に伴う開度変化によって、ＴＨ通過吸入空気量ＧＴＨが変化する。アクチュエータ１３ｂは、モータおよびギヤ機構（いずれも図示せず）を組み合わせて構成されており、ＥＣＵ２からの制御信号でモータが駆動されることにより、スロットル弁１３ａの開度（以下「スロットル弁開度」という）ＴＨが変化する。
【００２３】
さらに、スロットル弁開度センサ２５（運転状態検出手段）は、例えばポテンショメータなどで構成され、スロットル弁開度ＴＨを検出し、その検出信号をＥＣＵ２に出力する。また、吸気管内絶対圧センサ２６は、半導体圧力センサなどで構成されており、吸気管１２内の絶対圧である吸気管内絶対圧ＰＢＡを検出し、その検出信号をＥＣＵ２に出力する。吸気管１２には、吸気温センサ２７が設けられている。この吸気温センサ２７は、サーミスタで構成されており、吸気管１２内の吸気温ＴＡを検出し、その検出信号をＥＣＵ２に出力する。
【００２４】
また、吸気管１２のスロットル弁機構１３よりも下流側と、排気管１４の触媒装置１７よりも上流側との間には、ＥＧＲ管１５が接続されている。このＥＧＲ管１５は、エンジン３の排気ガスを吸気側に再循環することにより、前記燃焼室３ｃ内の燃焼温度を下げ、これにより、排気ガス中のＮＯｘを低減させるＥＧＲ動作を実行するためのものである。このＥＧＲ管１５には、ＥＧＲ制御弁１６が取り付けられている。ＥＧＲ制御弁１６は、リニア電磁弁であり、ＥＣＵ２からの駆動信号に応じて、そのバルブリフト量がリニアに変化し、これによってＥＧＲ管１５を開閉する。ＥＣＵ２は、エンジン３の運転状態に応じてＥＧＲ制御弁１６のバルブリフト量を制御することにより、ＥＧＲ量を制御する。
【００２５】
また、排気管１４には、触媒装置１７が設けられている。この触媒装置１７は、３元触媒とＮＯｘ吸着触媒を組み合わせたものである。このＮＯｘ吸着触媒は、イリジウム触媒（イリジウムを担持した炭化ケイ素ウイスカ粉末とシリカの焼成体）をハニカム構造の基材の表面に被覆し、その上にペロブスカイト型複酸化物（ＬａＣｏＯ３粉末とシリカの焼成体）をさらに被覆したものである。触媒装置１７は、３元触媒の酸化還元作用により、運転時の排気ガス中のＣＯ、ＨＣおよびＮＯｘを浄化するとともに、ＮＯｘ吸着触媒による吸着作用および還元作用により、後述する成層燃焼モードでの運転時およびリーンバーン運転時の排気ガス中のＮＯｘを浄化する。
【００２６】
さらに、排気管１４の触媒装置１７よりも上流側および下流側にはそれぞれ、ＬＡＦセンサ２８およびＯ２センサ（図示せず）が設けられている。ＬＡＦセンサ２８は、ジルコニアおよび白金電極などで構成され、理論空燃比よりもリッチなリッチ領域から極リーン領域までの広範囲な空燃比の領域において、排気ガス中の酸素濃度をリニアに検出し、それを表す検出信号をＥＣＵ２に出力する。ＥＣＵ２は、このＬＡＦセンサ２８の検出信号に基づき、排気ガス中の空燃比を表す検出空燃比ＫＡＣＴを算出する。なお、この検出空燃比ＫＡＣＴは、具体的には当量比として算出される。一方、Ｏ２センサは、排気ガス中の酸素濃度を表す検出信号をＥＣＵ２に出力する。
【００２７】
さらに、ＥＣＵ２には、大気圧センサ２９、アクセル開度センサ３０および車速センサ３１が電気的に接続されている。大気圧センサ２９は、半導体圧力センサで構成されており、大気圧ＰＡを検出し、その検出信号をＥＣＵ２に出力する。また、アクセル開度センサ３０（運転状態検出手段）は、図示しないアクセルペダルの操作量であるアクセル開度ＡＰを検出し、その検出信号をＥＣＵ２に出力する。さらに、車速センサ３１は、図示しない車両の速度（以下「車速」という）ＶＰを検出し、検出信号をＥＣＵ２に出力する。
【００２８】
ＥＣＵ２は、本実施形態において、本発明の運転状態検出手段、要求トルク算出手段、燃焼モード決定手段、燃料噴射量算出手段、および燃料噴射手段を構成するものであり、ＣＰＵ２ａ、ＲＡＭ２ｂおよびＲＯＭ２ｃなどからなるマイクロコンピュータで構成されている。ＥＣＵ２は、前述した各種のセンサ２０〜３１の検出信号に応じ、ＲＯＭ２ｃに記憶された制御プログラムなどに基づいて各種の演算処理を実行する。
【００２９】
具体的には、上記各種の検出信号からエンジン３の運転状態を判定し、その判定結果に基づいて、エンジン３の燃焼モードを、極低負荷運転時には成層燃焼モードに、極低負荷運転時以外の運転時には均一燃焼モードにそれぞれ切り換えるとともに、均一燃焼モードおよび成層燃焼モードの一方から他方への切換えの際の移行中の状態（以下「燃焼移行モード」という）では、原則として２回噴射燃焼モード（２回燃料噴射）を実行する。また、燃焼モードに従って、インジェクタ４の最終燃料噴射量ＴＯＵＴおよび噴射タイミングを制御することにより、燃料噴射制御処理を実行するとともに、点火プラグ５の点火時期などを制御する。
【００３０】
上記の成層燃焼モードでは、燃料をインジェクタ４から圧縮行程中に燃焼室３ｃ内に噴射し、噴射燃料の大部分を凹部３ｄに衝突させることにより燃料噴流が形成される。この燃料噴流と、吸気管１２からの流入空気の流動とによって混合気が生成されるとともに、ピストン３ａが圧縮行程の上死点に近い位置にあることで、混合気を点火プラグ５の付近に偏在させながら、成層燃焼が行われる。また、成層燃焼モードでの混合気の空燃比は、スロットル弁１３ａをほぼ全開状態に制御することにより、理論空燃比よりも極めて燃料リーンな空燃比（例えば２７〜６０）に制御される。
【００３１】
均一燃焼モードでは、燃料を吸気行程中に燃焼室３ｃ内に噴射し、燃料噴流と空気の流動とによって生成した混合気を燃焼室３ｃ内に均一に分散させながら、均一燃焼が行われる。また、均一燃焼モードでの空燃比は、成層燃焼モード中のときと比較して、スロットル弁１３ａを小さな開度に制御することにより吸入空気量を小さくすることで、成層燃焼モードよりもリッチな空燃比（例えば１２〜２２）に制御される。さらに、均一燃焼モードでのＥＧＲ制御弁１６の目標バルブリフト量は、成層燃焼モードの場合よりも小さな値に設定される。
【００３２】
さらに、２回噴射燃焼モードでは、１燃焼サイクル内の吸気行程中および圧縮行程中に燃料をそれぞれ噴射し、成層燃焼モードよりもリッチな空燃比（例えば１４．７〜２７）で、燃焼が行われる。
【００３３】
なお、均一燃焼モードは、ストイキ燃焼モードとリーン燃焼モードに区分される。ストイキ燃焼モードでは、空燃比が理論空燃比またはこれよりもリッチ側に制御され、リーン燃焼モードでは、空燃比がストイキ燃焼モードの場合よりもリーン側に制御される。
【００３４】
次に、図２〜図１５を参照しながら、ＥＣＵ２により実行される空燃比フィードバック制御処理を含む燃料噴射制御処理について説明する。図２は、この制御処理のメインルーチンを示しており、本処理は、ＴＤＣ信号の入力に同期して割り込み実行される。本処理ではまず、ステップ１（「Ｓ１」と図示。以下同じ）において、エンジン回転数ＮＥおよびアクセル開度ＡＰに応じて、図１４に示すマップを検索することにより、要求トルクＰＭＣＭＤを算出する。このマップでは、要求トルクＰＭＣＭＤは、エンジン回転数ＮＥが高く、アクセル開度ＡＰが大きいほど、より大きな値に設定されている。これは、エンジン回転数ＮＥが高く、アクセル開度ＡＰが大きいほど、エンジン負荷がより大きい状態になるので、それに対応するためである。なお、この要求トルクＰＭＣＭＤは、混合気燃焼時の図示平均有効圧力である。
【００３５】
次いで、ステップ２に進み、成層燃焼許可フラグＦ＿ＤＩＳＣＯＫの設定処理を実行する。この成層燃焼許可フラグＦ＿ＤＩＳＣＯＫは、エンジン３が、成層燃焼モードおよび均一燃焼モードのいずれを実行すべき運転状態にあるかを表すものであり、要求トルクＰＭＣＭＤとエンジン回転数ＮＥに応じて、図１５に示すマップを検索することにより設定される。具体的には、このマップにおいて、要求トルクＰＭＣＭＤおよびエンジン回転数ＮＥがともに低い成層燃焼域では、エンジン３が成層燃焼モードを実行すべき運転状態であるとして、成層燃焼許可フラグＦ＿ＤＩＳＣＯＫが「１」に設定される。一方、要求トルクＰＭＣＭＤおよびエンジン回転数ＮＥが成層燃焼域よりも高い均一燃焼域、具体的にはリーン燃焼域およびストイキ燃焼域ではそれぞれ、エンジン３が均一燃焼モードのうちのリーン燃焼モードおよびストイキ燃焼モードを実行すべき運転状態であるとして、成層燃焼許可フラグＦ＿ＤＩＳＣＯＫが「０」に設定される。なお、このマップにおけるストイキ燃焼域は、混合気を主として理論空燃比で燃焼させる領域に加えて、混合気を理論空燃比よりもリッチな空燃比で燃焼させるリッチ領域も含むように設定されている。
【００３６】
次いで、ステップ３に進み、後述の各種算出処理で用いる各種の補正係数を、例えばエンジン３の始動経過時間、車速ＶＰ、吸気温ＴＡ、大気圧ＰＡまたはエンジン水温ＴＷなどに応じて、それぞれ算出する。
【００３７】
次に、ステップ４で、吸気行程噴射用の目標空燃比ＫＣＭＤ１ＳＴおよび圧縮行程噴射用の目標空燃比ＫＣＭＤ２ＮＤを算出する。燃焼モードが均一燃焼モードのときには、前者が用いられる一方、成層燃焼モードのときには、後者が用いられ、燃焼移行モードのときには、ＫＣＭＤ１ＳＴおよびＫＣＭＤ２ＮＤの一方が、適宜、用いられる。また、これらの目標空燃比ＫＣＭＤ１ＳＴ、ＫＣＭＤ２ＮＤは、エンジン回転数ＮＥおよび要求トルクＰＭＣＭＤなどに応じて算出される。
【００３８】
次に、ステップ５に進み、空燃比フィードバック補正係数ＫＡＦを算出する。この空燃比フィードバック補正係数ＫＡＦは、燃焼モードに応じて算出されるものであり、具体的には、検出空燃比ＫＡＣＴ、および吸気行程噴射用の目標空燃比ＫＣＭＤ１ＳＴまたは圧縮行程噴射用の目標空燃比ＫＣＭＤ２ＮＤなどに応じて、所定のフィードバック制御アルゴリズムにより算出される。
【００３９】
次いで、ステップ６および７でそれぞれ、吸気行程噴射用の基本燃料噴射量ＴＩＭ１ＳＴおよび圧縮行程噴射用の基本燃料噴射量ＴＩＭ２ＮＤを算出する。具体的には、吸気行程噴射用の基本燃料噴射量ＴＩＭ１ＳＴの算出ではまず、実吸入空気量ＧＣＹＬ（気筒１０内に実際に吸入されたと推定される空気量）を、ＴＨ通過吸入空気量ＧＴＨおよび吸気管内絶対圧ＰＢＡに応じて算出する。そして、この実吸入空気量ＧＣＹＬに応じて、図示しない基本燃料噴射量のテーブルを検索することにより、そのテーブル値を算出し、これを補正することにより、吸気行程噴射用の基本燃料噴射量ＴＩＭ１ＳＴを算出する。以上と同様に、圧縮行程噴射用の基本燃料噴射量ＴＩＭ２ＮＤも算出する。
【００４０】
次に、ステップ８に進み、要求燃料噴射量ＴＣＹＬを算出する。このＴＣＹＬの算出ではまず、図３に示すように、ステップ１１で、吸気行程噴射用の要求燃料噴射量ＴＣＹＬ１ＳＴＴ（吸気行程用燃料噴射量）を算出する。このＴＣＹＬ１ＳＴＴの算出ではまず、図４に示すように、図２のステップ３で算出した各種補正係数のうちの始動時補正係数ＫＡＳＴ、減速時補正係数ＫＤＥＣおよび加速時補正係数ＫＡＣＣを乗算した値を、第１総補正係数ＫＴＯＴＡＬＴＭＰとして設定する（ステップ２１）。
【００４１】
始動時補正係数ＫＡＳＴは、エンジン３の始動時における燃料噴射量の増大補正を行うためのものであり、始動時からの経過時間に応じて、図示しないテーブルを検索することにより算出される。また、減速時補正係数ＫＤＥＣは、図示しない車両の減速時における燃料噴射量の減量補正を行うためのものであり、車速ＶＰの前回値と今回値との偏差に応じて、図示しないテーブルを検索することにより算出される。さらに、加速時補正係数ＫＡＣＣは、車両の加速時における燃料噴射量の増量補正を行うためのものであり、車速ＶＰの前回値と今回値との偏差に応じて、図示しないテーブルを検索することにより算出される。
【００４２】
次いで、ステップ２２に進み、図２のステップ３で算出した各種補正係数のうちの吸気温補正係数ＫＴＡ、大気圧補正係数ＫＰＡおよびエンジン水温補正係数ＫＴＷを乗算した値を、第２総補正係数ＫＴＡＴＷＰＡとして設定する。これらの補正係数ＫＴＡ、ＫＰＡおよびＫＴＷはそれぞれ、吸気温ＴＡ、大気圧ＰＡおよびエンジン水温ＴＷに応じて、図示しないそれぞれのテーブルを検索することにより算出される。
【００４３】
次いで、ステップ２３に進み、上記ステップ２１および２２でそれぞれ設定した第１総補正係数ＫＴＯＴＡＬＴＭＰおよび第２総補正係数ＫＴＡＴＷＰＡを乗算した値を、吸気行程噴射用の総補正係数ＫＴＴＬ１ＳＴとして設定する。そして、図２のステップ６で算出した吸気行程噴射用の基本燃料噴射量ＴＩＭ１ＳＴに、図２のステップ５および４でそれぞれ算出した空燃比フィードバック補正係数ＫＡＦおよび吸気行程噴射用の目標空燃比ＫＣＭＤ１ＳＴ、ならびに上記ステップ２３で設定した吸気行程噴射用の総補正係数ＫＴＴＬ１ＳＴを乗算することにより、気筒１０ごとの吸気行程噴射用の要求燃料噴射量ＴＣＹＬ１ＳＴＴを算出し（ステップ２４）、本処理を終了する。
【００４４】
図３に戻り、ステップ１２では、圧縮行程噴射用の要求燃料噴射量ＴＣＹＬ２ＮＤＴを算出する。このＴＣＹＬ２ＮＤＴの算出ではまず、図５に示すように、図２のステップ３で算出した補正係数のうちの吸気温補正係数ＫＴＡ、大気圧補正係数ＫＰＡおよびエンジン水温補正係数ＫＴＷを乗算した値を、圧縮行程噴射用の総補正係数ＫＴＴＬ２ＮＤとして設定する（ステップ３１）。そして、図２のステップ７で算出した圧縮行程噴射用の基本燃料噴射量ＴＩＭ２ＮＤに、図２のステップ５および４でそれぞれ算出した空燃比フィードバック補正係数ＫＡＦおよび圧縮行程噴射用の目標空燃比ＫＣＭＤ２ＮＤ、ならびに上記ステップ３１で設定した圧縮行程噴射用の総補正係数ＫＴＴＬ２ＮＤを乗算することにより、気筒１０ごとの圧縮行程噴射用の要求燃料噴射量ＴＣＹＬ２ＮＤＴを算出し、本処理を終了する。
【００４５】
図３に戻り、ステップ１３では、暫定要求燃料噴射量ＴＣＹＬＬＭＴ（移行時用燃料噴射量）を算出する。図６および７は、暫定要求燃料噴射量ＴＣＹＬＬＭＴの算出処理を示している。本処理では、暫定要求燃料噴射量ＴＣＹＬＬＭＴは、均一燃焼モード中には吸気行程噴射用の要求燃料噴射量ＴＣＹＬ１ＳＴＴに設定され、成層燃焼モード中には圧縮行程噴射用の要求燃料噴射量ＴＣＹＬ２ＮＤＴに設定されるのに対し、両燃焼モード間の切換えの際の燃焼移行モード中には、後述する第１〜第４のリミット値ＴＣＹＬＤＳ、ＴＣＹＬＤＬ、ＴＣＹＬＳＤ、ＴＣＹＬＬＤのいずれかに設定される。
【００４６】
このように燃焼モードの切換え時に通常時とは異なる切換え時要求燃料量を用いるのは、次の理由による。すなわち、前述したように、成層燃焼モードと均一燃焼モードでは、設定される吸入空気量が大きく異なり、成層燃焼モードの方が大きいとともに、燃焼モードの切換えの際の燃焼移行モード中には、吸入空気量は、スロットル弁の動作に対して応答遅れを伴って変化する。一方、吸気・圧縮行程噴射用の要求燃料噴射量ＴＣＹＬ１ＳＴＴ、ＴＣＹＬ２ＮＤＴは、気筒１０内に実際に吸入される吸入空気量に応じて設定される。このため、均一燃焼モードへの切換え時に、吸気行程噴射用の要求燃料噴射量ＴＣＹＬ１ＳＴＴは、応答遅れを伴って減少する吸気空気量に応じて設定される結果、過大になりやすい。同じ理由から、成層燃焼モードへの切換え時には、圧縮行程噴射用の要求燃料噴射量ＴＣＹＬ２ＮＤＴが過小になりやすい。
【００４７】
上記の切換え時要求燃料量は、燃焼移行モード中に吸入空気量が安定するまでの間、このような要求燃料噴射量ＴＣＹＬ１ＳＴＴ／２ＮＤＴの過大化・過小化を防止すべく、これらを制限するために用いられる。このため、均一燃焼モードへの切換え時に適用される第１リミット値ＴＣＹＬＤＳなどは、吸気行程噴射用の要求燃料噴射量ＴＣＹＬ１ＳＴＴを上限側で制限するように設定される一方、成層燃焼モードへの切換え時に適用される第３リミット値ＴＣＹＬＳＤなどは、圧縮行程噴射用の要求燃料噴射量ＴＣＹＬ２ＮＤＴを下限側で制限するように設定される。以下、このような第１リミット値ＴＣＹＬＤＳなどの切換え時要求燃料量による制限を、「リミット処理」という。
【００４８】
まず、図６のステップ４１では、暫定要求燃料噴射量ＴＣＹＬＬＭＴの算出に必要な各種のパラメータを算出する。図示はしないが、この算出処理では、まず、成層燃焼許可フラグＦ＿ＤＩＳＣＯＫに応じ、均一燃焼モードのときには吸気行程噴射用の要求燃料噴射量ＴＣＹＬ１ＳＴＴを、成層燃焼モードのときには圧縮行程噴射用の要求燃料噴射量ＴＣＹＬ２ＮＤＴを、それぞれ通常時要求燃料噴射量ＴＣＹＬＴとして設定する。また、燃焼モードの切換えの有無および切換えパターンを判別し、その判別結果に応じて、切換えステータスＥＭＯＤ＿ＳＴＳを次のように設定する。
（ａ）成層燃焼モード→ストイキ燃焼モードの切換え時：「１」
（ｂ）成層燃焼モード→リーン燃焼モードの切換え時  ：「２」
（ｃ）ストイキ燃焼モード→成層燃焼モードの切換え時：「３」
（ｄ）リーン燃焼モード→成層燃焼モードの切換え時  ：「４」
（ｅ）（ａ）から（ｄ）以外のとき                  ：「０」
【００４９】
また、この処理では、燃焼移行モードが開始したときに、その直前に得られた暫定要求燃料噴射量ＴＣＹＬＬＭＴを切換え直前要求燃料噴射量ＴＣＹＬＭＩＮＩとして設定する。さらに、燃焼移行モード中、燃焼モードの切換え直前からの要求トルクＰＭＣＭＤの変化量を求めるとともに、求めた変化量を燃料量に換算することによって、トルク変化補正項ＴＣＹＬＤＰＭを算出する。
【００５０】
前記ステップ４１に続くステップ４２では、要求トルクＰＭＣＭＤが値０よりも大きいか否かを判別する。この答えがＮＯで、エンジン３にトルクが要求されていないときには、アップカウント式の切換え後経過時間タイマのタイマ値ＴＴＣＹＬＭＣを所定時間ＴＴＣＹＬＲＥＦ（例えば５ｓｅｃ）にセットし（ステップ４３）、暫定要求燃料噴射量ＴＣＹＬＬＭＴを通常時要求燃料噴射量ＴＣＹＬＴに設定する（ステップ４４）。また、リミット実行フラグＦ＿ＴＣＹＬＬＭＴを「０」にセットし（ステップ４５）、リミット処理を禁止する。
【００５１】
一方、ステップ４２の答えがＹＥＳで、ＰＭＣＭＤ＞０のときには、切換えステータスＥＭＯＤ＿ＳＴＳが「０」であるか否かを判別する（ステップ４６）。この答えがＹＥＳで、燃焼モードが切り換えられていないときには、前記ステップ４３〜４５を実行する。一方、ステップ４６の答えがＮＯで、ＥＭＯＤ＿ＳＴＳ≠０のときには、切換えステータスＥＭＯＤ＿ＳＴＳが、その前回値ＥＭＯＤ＿ＳＴＳＺと等しいか否かを判別する（ステップ４７）。この答えがＹＥＳで、切換えステータスＥＭＯＤ＿ＳＴＳが変化しておらず、今回のループが燃焼移行モードの開始直後でないときには、リミット実行フラグＦ＿ＴＣＹＬＬＭＴが「１」であるか否かを判別する（ステップ４９）。この答えがＮＯで、リミット処理を実行していないときには、前記ステップ４３〜４５を実行する。一方、ステップ４９の答えがＹＥＳで、リミット処理を実行しているときには、ステップ５０に進む。
【００５２】
一方、上記ステップ４７の答えがＮＯで、ＥＭＯＤ＿ＳＴＳ≠ＥＭＯＤ＿ＳＴＳＺのとき、すなわち、今回のループが燃焼移行モードの開始直後であるときには、前記ステップ４３でセットした切換え後経過時間タイマのタイマ値ＴＴＣＹＬＭＣを値０にリセットし（ステップ４８）、ステップ５０に進む。
【００５３】
このステップ５０では、切換え後経過時間タイマのタイマ値ＴＴＣＹＬＭＣが、リミット時間ＴＭＴＣＹＬＭＴよりも小さいか否かを判別する。なお、このリミット時間ＴＭＴＣＹＬＭＴは、前記切換えステータスＥＭＯＤ＿ＳＴＳの設定と同様の条件で設定されるものであり、前記（ａ）〜（ｅ）の燃焼モードの切換えパターンごとに所定のリミット時間がセットされる。上記ステップ５０の答えがＹＥＳ、すなわち、燃焼移行モードの開始後、リミット時間ＴＭＴＣＹＬＭＴが経過していないときには、切換えステータスＥＭＯＤ＿ＳＴＳが「１」であるか否かを判別する（ステップ５１）。この答えがＹＥＳで、切換えパターンが成層燃焼モード→ストイキ燃焼モードのときには、この切換えパターン用の第１リミット値ＴＣＹＬＤＳを算出する（ステップ５２）。次いで、算出した第１リミット値ＴＣＹＬＤＳを暫定要求燃料噴射量ＴＣＹＬＬＭＴとして設定し（ステップ５３）、リミット実行フラグＦ＿ＴＣＹＬＬＭＴを第１リミット値算出フラグＦ＿ＴＣＹＬＤＳの値にセットする（ステップ５４）。
【００５４】
一方、ステップ５１の答えがＮＯのときには、上記ステップ５１〜５４と同様に、ステップ５５〜６５を実行する。まず、ステップ５５および５９では、切換えステータスＥＭＯＤ＿ＳＴＳが「２」および「３」であるか否かをそれぞれ判別する。そして、ステップ５５の答えがＹＥＳ（ＥＭＯＤ＿ＳＴＳ＝２）で、切換えパターンが成層燃焼モード→リーン燃焼モードのときには、この切換えパターン用の第２リミット値ＴＣＹＬＤＬを算出し（ステップ５６）、この第２リミット値ＴＣＹＬＤＬを暫定要求燃料噴射量ＴＣＹＬＬＭＴとして設定し（ステップ５７）、リミット実行フラグＦ＿ＴＣＹＬＬＭＴを第２リミット値算出フラグＦ＿ＴＣＹＬＤＬの値にセットする（ステップ５８）。
【００５５】
また、上記ステップ５９の答えがＹＥＳ（ＥＭＯＤ＿ＳＴＳ＝３）で、切換えパターンがストイキ燃焼モード→成層燃焼モードのときには、この切換えパターン用の第３リミット値ＴＣＹＬＳＤを算出し（ステップ６０）、この第３リミット値ＴＣＹＬＳＤを暫定要求燃料噴射量ＴＣＹＬＬＭＴとして設定し（ステップ６１）、リミット実行フラグＦ＿ＴＣＹＬＬＭＴを第３リミット値算出フラグＦ＿ＴＣＹＬＳＤの値にセットする（ステップ６２）。さらに、上記ステップ５９の答えがＮＯ（ＥＭＯＤ＿ＳＴＳ＝４）で、切換えパターンがリーン燃焼モード→成層燃焼モードのときには、この切換えパターン用の第４リミット値ＴＣＹＬＬＤを算出し（ステップ６３）、この第４リミット値ＴＣＹＬＬＤを暫定要求燃料噴射量ＴＣＹＬＬＭＴとして設定し（ステップ６４）、リミット実行フラグＦ＿ＴＣＹＬＬＭＴを第４リミット値算出フラグＦ＿ＴＣＹＬＬＤの値にセットする（ステップ６５）。
【００５６】
一方、前記ステップ５０の答えがＮＯで、ＴＴＣＹＬＭＣ≧ＴＭＴＣＹＬＭＴのとき、すなわち、燃焼移行モードの開始後、リミット時間ＴＭＴＣＹＬＭＴが経過したときには、リミット処理の実行期間が終了したとして、前記ステップ４４および４５を実行し、リミット処理を終了する。
【００５７】
前記ステップ４５、５４、５８、６２または６５に続くステップ６６では、リミット実行フラグＦ＿ＴＣＹＬＬＭＴが「１」であるか否かを判別する。この答えがＹＥＳで、リミット処理を実行しているときには、成層燃焼許可フラグＦ＿ＤＩＳＣＯＫが「０」であるか否かを判別する（ステップ６７）。この答えがＹＥＳで、成層燃焼の実行条件が成立していないときには、ダウンカウント式のディレイタイマのタイマ値ＴＡＦＤＴＯＳを所定の待機時間ＴＭＡＦＤＴＯＳ（例えば３ｓｅｃ）にセットし（ステップ６８）、ステップ６９に進む。一方、ステップ６６の答えがＮＯで、Ｆ＿ＴＣＹＬＬＭＴ＝０のとき、またはステップ６７の答えがＮＯで、Ｆ＿ＤＩＳＣＯＫ＝１のときには、ステップ６８をスキップし、ステップ６９に進む。
【００５８】
このステップ６９では、上記ステップ６８でセットしたディレイタイマのタイマ値ＴＡＦＤＴＯＳが値０であるか否かを判別する。この答えがＮＯのときには、成層燃焼モードを禁止するために、成層燃焼モードフラグＦ＿ＴＡＦＤＴＯＳ０を「０」にセットし（ステップ７０）、本処理を終了する。一方、この答えがＹＥＳで、ＴＡＦＤＴＯＳ＝０のときには、成層燃焼モードフラグＦ＿ＴＡＦＤＴＯＳ０を「１」にセットし（ステップ７１）、本処理を終了する。
【００５９】
上記ステップ６６〜７０から明らかなように、成層燃焼モードから均一燃焼モードへの切換え時にリミット処理が実行されている状態から、このリミット処理が終了した後、または成層燃焼の実行条件が成立した後、待機時間ＴＭＡＦＤＴＯＳが経過するまでは、成層燃焼モードが禁止される。これにより、成層燃焼モードから均一燃焼モードへの切換え時に、成層燃焼の実行条件の成立あるいはリミット処理の終了に応じて、燃焼モードが成層燃焼モードにすぐに復帰するのを防止することができる。
【００６０】
また、燃焼モードの切換え時（前記ステップ４６：ＮＯ）には、前記ステップ５１〜６５により、そのときの切換えパターンに応じて、第１〜第４リミット値ＴＣＹＬＤＳ、ＴＣＹＬＤＬ、ＴＣＹＬＳＤ、ＴＣＹＬＬＤのいずれかが算出される。具体的には、これらの第１〜第４リミット値ＴＣＹＬＤＳ、ＴＣＹＬＤＬ、ＴＣＹＬＳＤ、ＴＣＹＬＬＤの算出処理（ステップ５２、５６、６０、６３）は、燃焼移行モードの開始直前の要求燃料噴射量に相当する直前要求燃料噴射量ＴＣＹＬＭＩＮＩと、燃焼移行モード中における要求トルクＰＭＣＭＤの変化量に応じたトルク変化補正項ＴＣＹＬＤＰＭ、および燃焼移行モード中における燃焼効率を表す燃焼効率パラメータに応じて算出される。そして、算出されたリミット値によるリミット処理が実行され、燃焼移行モード中に、リミット時間ＴＭＴＣＹＬＭＴが経過すると（前記ステップ５０：ＮＯ）、前記ステップ４４および４５により、リミット処理が終了される。
【００６１】
図３に戻り、ステップ１４では、膨張行程噴射用の要求燃料噴射量ＴＣＹＬ３ＲＤを算出する。このＴＣＹＬ３ＲＤの算出処理では、１燃焼サイクル内の膨張行程中に噴射すべき要求燃料噴射量を算出する。このＴＣＹＬ３ＲＤを算出し、これに基づき膨張行程中に燃料を噴射するのは、以下の理由による。すなわち、前記触媒装置１７の一部を構成するＮＯｘ吸着触媒では、排気ガス中のＮＯｘとともに硫黄分も吸着される。硫黄分の残留量が多くなると、ＮＯｘ吸着触媒の吸着および還元性能が低下してしまう。このため、膨張行程中に燃料を噴射することによって、ＮＯｘ吸着触媒の温度を上昇させるともに、排気ガスをリッチな還元雰囲気にし、これにより、ＮＯｘ吸着触媒に吸着されていた硫黄分を脱離し、外部に放出するためである。なお、膨張行程中に燃料を噴射すべき条件が成立したときには、膨張行程噴射フラグＦ＿ＤＩＢＣが「１」にセットされる。
【００６２】
次いで、ステップ１５に進み、仮想目標空燃比ＫＣＭＤＩＭＧを算出する。図８に示すように、このＫＣＭＤＩＭＧの算出処理では、図２のステップ４で算出した吸気行程噴射用の目標空燃比ＫＣＭＤ１ＳＴ、図３のステップ１３で算出した暫定要求燃料噴射量ＴＣＹＬＬＭＴ、および図３のステップ１１で算出した吸気行程噴射用の要求燃料噴射量ＴＣＹＬ１ＳＴＴを用いて、次の式（１）により算出し（ステップ８１）、本処理を終了する。
ＫＣＭＤＩＭＧ＝ＫＣＭＤ１ＳＴ・ＴＣＹＬＬＭＴ／ＴＣＹＬ１ＳＴＴ  …（１）
【００６３】
この仮想目標空燃比ＫＣＭＤＩＭＧは、均一燃焼モードで用いられる吸気行程噴射用の目標空燃比ＫＣＭＤ１ＳＴに、ＴＣＹＬＬＭＴ／ＴＣＹＬ１ＳＴＴを乗算した値であり、後述する燃焼移行モードフラグＦ＿ＤＳＣＭＯＤの設定処理で用いられるものである。
【００６４】
図３に戻り、ステップ１６で、成層燃焼許可フラグＦ＿ＤＩＳＣＯＫが「１」であるか否かを判別する。この答えがＹＥＳで、エンジン３が成層燃焼モードを実行すべき運転状態であるときには、要求燃料量ＴＣＹＬを前記ステップ１３で算出した暫定要求燃料噴射量ＴＣＹＬＬＭＴに設定し（ステップ１７）、本処理を終了する。一方、上記ステップ１６の答えがＮＯのときには、ステップ１８に進み、膨張行程噴射フラグＦ＿ＤＩＢＣが「１」であるか否かを判別する。この答えがＹＥＳのときには、１燃焼サイクル内の膨張行程中に燃料を噴射すべき条件が成立しているとして、暫定要求燃料噴射量ＴＣＹＬＬＭＴに前記ステップ１４で算出した膨張行程噴射用の要求燃料噴射量ＴＣＹＬ３ＲＤを加算した値を、要求燃料量ＴＣＹＬとして設定し（ステップ１９）、本処理を終了する。一方、ステップ１８の答えがＮＯのときには、上記ステップ１７を実行して、本処理を終了する。
【００６５】
図２に戻り、ステップ９では、最終燃料噴射量ＴＯＵＴを算出する。この最終燃料噴射量ＴＯＵＴは、前記ステップ８で算出した要求燃料噴射量ＴＣＹＬを、燃料圧ＰＦおよび燃料温ＴＦに応じて補正することにより算出される。
【００６６】
次いで、ステップ１０に進み、上記ステップ９で算出した最終燃料噴射量ＴＯＵＴに基づき、燃料噴射を実行して、本処理を終了する。図９は、この燃料噴射の実行処理を示している。同図に示すように、この燃料噴射ではまず、燃焼移行モードフラグＦ＿ＤＳＣＭＯＤを設定する（ステップ９１）。この設定処理では、図１０に示すように、まずステップ１０１で、フューエルカット中フラグＦ＿ＦＣが「１」であるか否かを判別する。このＦ＿ＦＣは、エンジン３がフューエルカット運転中であるときに、「１」にセットされるフラグであり、ステップ１０１の答えがＹＥＳで、フューエルカット運転中であるときには、燃焼移行モード実行タイマのタイマ値ＴＭＤＳＣＭＯＤを値０にセットする（ステップ１０２）とともに、燃焼移行モード中でないことを表すために、燃焼移行モードフラグＦ＿ＤＳＣＭＯＤを「０」にセットし（ステップ１０３）、本処理を終了する。
【００６７】
一方、ステップ１０１の答えがＮＯで、フューエルカット運転中でないときには、ＲＡＭ２ｂに記憶されている燃焼移行モードフラグＦ＿ＤＳＣＭＯＤが「１」であるか否かを判別する（ステップ１０４）。この答えがＮＯのときには、燃焼移行モード中でないとして、ステップ１０５に進み、成層燃焼許可フラグの今回値Ｆ＿ＤＩＳＣＯＫが、その前回値Ｆ＿ＤＩＳＣＯＫＺと同じであるか否かを判別する。この答えがＹＥＳのときには、エンジン３が、燃焼モードを切り換えるべき運転状態でないとして、前記ステップ１０２、１０３を実行して、本処理を終了する。一方、ステップ１０５の答えがＮＯで、Ｆ＿ＤＩＳＣＯＫＺ≠Ｆ＿ＤＩＳＣＯＫのときには、エンジン３が燃焼モードを切り換えるべき運転状態になったとして、ステップ１０６に進む。
【００６８】
このステップ１０６では、成層燃焼許可フラグＦ＿ＤＩＳＣＯＫが「１」であるか否かを判別する。この答えがＹＥＳのとき、すなわち今回の燃焼モードの切換えパターンが、均一燃焼モード→成層燃焼モードのときには、図１１のステップ１０７に進む。
【００６９】
このステップ１０７では、図２のステップ４で算出した吸気行程噴射用の目標空燃比ＫＣＭＤ１ＳＴが、所定値ＫＣＭＤＤＳＣＭＤ（例えば０．８５）以上であるか否かを判別する。この答えがＮＯで、ＫＣＭＤ１ＳＴ＜ＫＣＭＤＤＳＣＭＤのときには、今回の燃焼モードの切換えパターンが、リーン燃焼モード→成層燃焼モードであるとして、ダウンカウント式の燃焼移行モード実行タイマのタイマ値ＴＭＤＳＣＭＯＤを第１タイマ値ＴＭＤＳＣＭＬＤにセットし（ステップ１０８）、後述するステップ１０９に進む。一方、上記ステップ１０７の答えがＹＥＳで、ＫＣＭＤ１ＳＴ≧ＫＣＭＤＤＳＣＭＤのときには、今回の燃焼モードの切換えパターンが、ストイキ燃焼モード→成層燃焼モードであるとして、ステップ１１０に進む。
【００７０】
このステップ１１０では、エンジン状態判定値ＮＫＥＮＧＣＭＤが「１」であるか否かを判別する。このエンジン状態判定値ＮＫＥＮＧＣＭＤは、エンジン３が燃焼モードを切り換えるべき運転状態であるときに、その運転状態に応じてセットされるものであり、具体的には、エンジン３が、アイドル運転中のときには「１」に、高負荷の運転状態のときには「２」に、低負荷の運転状態のときには「３」にセットされる。
【００７１】
したがって、ステップ１１０の答えがＹＥＳで、ＮＫＥＮＧＣＭＤ＝１のときには、燃焼移行モード実行タイマのタイマ値ＴＭＤＳＣＭＯＤを第２タイマ値ＴＭＤＳＣＭＳＤにセットし（ステップ１１１）、ステップ１１０の答えがＮＯで、ＮＫＥＮＧＣＭＤ＝２のときには（ステップ１１２：ＹＥＳ）、燃焼移行モード実行タイマのタイマ値ＴＭＤＳＣＭＯＤを第３タイマ値ＴＭＤＳＣＭＳＤ２にセットし（ステップ１１３）、ステップ１１２の答えがＮＯで、ＮＫＥＮＧＣＭＤ＝３のときには、燃焼移行モード実行タイマのタイマ値ＴＭＤＳＣＭＯＤを第４タイマ値ＴＭＤＳＣＭＳＤ３にセットする（ステップ１１４）。
【００７２】
前記ステップ１０８、１１１、１１３または１１４に続くステップ１０９では、今回の燃焼モードの切換えパターンが成層燃焼モード→均一燃焼モードでないとして、そのことを表すために、均一燃焼切換えフラグＦ＿ＤＳＣＭＤＳを「０」にセットする。
【００７３】
次いで、ステップ１１５に進み、燃焼移行モード実行タイマのタイマ値ＴＭＤＳＣＭＯＤが値０であるか否かを判別する。この答えがＮＯで、燃焼移行モード中であるときには、そのことを表すために、燃焼移行モードフラグＦ＿ＤＳＣＭＯＤを「１」にセットし（ステップ１１６）、本処理を終了する。一方、ステップ１１５の答えがＹＥＳで、燃焼移行モード実行タイマのタイマ値ＴＭＤＳＣＭＯＤが値０であるときには、燃焼移行モード中でないとして、そのことを表すために、燃焼移行モードフラグＦ＿ＤＳＣＭＯＤを「０」にセットし（ステップ１１７）、本処理を終了する。
【００７４】
前記ステップ１０６の答えがＮＯで、Ｆ＿ＤＩＳＣＯＫ＝１のときには、今回の燃焼モードの切換えパターンが成層燃焼モード→均一燃焼モードであるとして、ダウンカウント式の燃焼移行モード継続タイマのタイマ値ＴＭＤＳＣＭＩＮを、所定時間ＴＭＤＳＣＭＤＳ１（例えば０．５ｓｅｃ）にセットする（ステップ１１８）。この所定時間ＴＭＤＳＣＭＤＳ１は、ＥＧＲ制御弁１６の応答性を表す値に応じて設定されており、例えば、ＥＧＲ制御弁１６の応答遅れを補償するために、ＥＧＲ制御弁１６を閉鎖する際に、その実際のバルブリフト量が１００％から５％まで変化するのに要する閉鎖時間として設定される。
【００７５】
上記ステップ１１８に続くステップ１１９および１２０ではそれぞれ、今回の燃焼モードの切換えパターンが、成層燃焼モード→均一燃焼モードであること、および燃焼移行モード中であることを表すために、均一燃焼切換えフラグＦ＿ＤＳＣＭＤＳおよび燃焼移行モードフラグＦ＿ＤＳＣＭＯＤをいずれも「１」にセットし、本処理を終了する。
【００７６】
上記ステップ１２０または前記ステップ１１６で、燃焼移行モードフラグＦ＿ＤＳＣＭＯＤが「１」にセットされることにより、次回のループでは、前記ステップ１０４の答えがＹＥＳとなり、そのときには、ステップ１２１に進む。このステップ１２１では、上記ステップ１１９または前記ステップ１０９でセットされた均一燃焼切換えフラグＦ＿ＤＳＣＭＤＳが「１」であるか否かを判別する。この答えがＹＥＳで、今回の燃焼モードの切換えパターンが、成層燃焼モード→均一燃焼モードであるときには、ステップ１２３に進む。
【００７７】
このステップ１２３では、燃焼移行モード継続タイマのタイマ値ＴＭＤＳＣＭＩＮが値０であるか否かを判別する。この答えがＮＯのときには、均一燃焼モードへの切換え時の燃焼移行モードを継続すべきであるとして、そのまま本処理を終了する。一方、ステップ１２３の答えがＹＥＳで、ＴＭＤＳＣＭＩＮ＝０のときには、燃焼移行モードにおける燃焼噴射、すなわち２回噴射燃焼モードによる燃料噴射が所定時間ＴＭＤＳＣＭＤＳ１、継続して実行されたときには、ステップ１２４に進み、図３のステップ１５で算出した仮想目標空燃比ＫＣＭＤＩＭＧが、燃焼移行モード終了判定値ＫＣＭＤＤＳＣ（例えば０．７（空燃比２１相当値））よりも大きいか否かを判別する。
【００７８】
このステップ１２４の答えがＮＯで、ＫＣＭＤＩＭＧ≦ＫＣＭＤＤＳＣのときには、燃焼移行モード中の空燃比が均一燃焼モードに適した値に対してリーン側の値を示しており、燃焼移行モードを継続すべきであるとして、そのまま本処理を終了する。一方、ステップ１２４の答えがＹＥＳで、ＫＣＭＤＩＭＧ＞ＫＣＭＤＤＳＣのときには、空燃比が均一燃焼モードの実行に適した値になり、燃焼移行モードを終了し、均一燃焼モードを実行すべきであるとして、前記ステップ１０２、１０３を実行し、本処理を終了する。
【００７９】
このような燃焼移行モードの終了判定を行うのは、以下の理由による。すなわち、前述したように、成層燃焼モードと均一燃焼モードでは、設定される吸入空気量が大きく異なり、成層燃焼モードの方が大きいとともに、燃焼モードの切換え時、吸入空気量は、スロットル弁１３ａの動作に対して応答遅れを伴って変化する。一方、仮想目標空燃比ＫＣＭＤＩＭＧは、前記式（１）で説明したように、均一燃焼モードで用いられる吸気行程噴射用の目標空燃比ＫＣＭＤ１ＳＴに、暫定要求燃料噴射量ＴＣＹＬＬＭＴと吸気行程噴射用の要求燃料噴射量ＴＣＹＬ１ＳＴＴとの比を乗算した値である。
【００８０】
この暫定要求燃料噴射量ＴＣＹＬＬＭＴは、燃焼モードの切換えパターンが成層燃焼モード→ストイキ燃焼モードのときの燃焼移行モード中には、図６のステップ５２で算出した第１リミット値ＴＣＹＬＤＳに設定される一方、成層燃焼モード→リーン燃焼モードのときの燃焼移行モード中には、図６のステップ５６で算出した第２リミット値ＴＣＹＬＤＬに設定される。一方、吸気行程噴射用の要求燃料噴射量ＴＣＹＬ１ＳＴＴは、前述したように、気筒１０内に実際に吸入される吸入空気量に応じて設定されるため、均一燃焼モードへの切換え時の燃焼移行モードの開始直後には、値が暫定要求燃料噴射量ＴＣＹＬＬＭＴよりも大きく、吸入空気量の減少に伴って減少し、暫定要求燃料噴射量ＴＣＹＬＬＭＴに近づく。このように、吸気行程噴射用の要求燃料噴射量ＴＣＹＬ１ＳＴＴが暫定要求燃料噴射量ＴＣＹＬＬＭＴに近づき、その結果、仮想目標空燃比ＫＣＭＤＩＭＧは、成層燃焼モードから均一燃焼モードへの切換え時の燃焼移行モード中の空燃比を良好に反映する。したがって、このような仮想目標空燃比ＫＣＭＤＩＭＧを用い、空燃比が成層燃焼モード時よりも、よりリッチで、均一燃焼モードの実行を開始してもよい程度、すなわち、トルク段差が発生せず、均一燃焼モードでの安定した燃焼を確保できるようになったことを、適切に判定することが可能となる。
【００８１】
前記ステップ１２１の答えがＮＯのとき、すなわち前記ステップ１０９でセットされた均一燃焼切換えフラグＦ＿ＤＳＣＭＤＳが「０」であるときには、今回の燃焼モードの切換えが、均一燃焼モードから成層燃焼モードへの切換えであるとして、ステップ１２２に進み、前記ステップ１０８、１１１、１１３または１１４でセットした燃焼移行モード実行タイマのタイマ値ＴＭＤＳＣＭＯＤが値０であるか否かを判別する。この答えがＮＯのときには、成層燃焼モードへの切換え時の燃焼移行モードを継続すべきであるとして、そのまま本処理を終了する。一方、ステップ１２２の答えがＹＥＳのときには、燃焼移行モードを終了し、成層燃焼モードへの切換えを完了すべきであるとして、前記ステップ１０２、１０３を実行し、本処理を終了する。
【００８２】
図９に戻り、ステップ９２では、２回噴射フラグＦ＿ＤＢＬＩＮＪを設定する。このＦ＿ＤＢＬＩＮＪ設定処理では、図１２に示すように、まずステップ１３１で、図９の前記ステップ９１で設定した燃焼移行モードフラグＦ＿ＤＳＣＭＯＤが「１」であるか否かを判別する。この答えがＮＯで、燃焼移行モード中でないとき、すなわち現在の燃焼モードが成層燃焼モードまたは均一燃焼モードであるときには、ステップ１３２に進み、成層燃焼許可フラグＦ＿ＤＩＳＣＯＫが「１」であるか否かを判別する。この答えがＹＥＳで、現在の燃焼モードが成層燃焼モードであるときには、圧縮行程中にのみ燃料を噴射すべきであるとして、それを表すために、吸気行程噴射フラグＦ＿ＤＩＨＣを「０」にセットする（ステップ１３３）とともに、圧縮行程噴射フラグＦ＿ＤＩＳＣを「１」にセットする（ステップ１３４）。次いで、ステップ１３５に進み、燃料を２回噴射すべきでないとして、それを表すために、２回噴射フラグＦ＿ＤＢＬＩＮＪを「０」にセットし、本処理を終了する。
【００８３】
一方、上記ステップ１３２の答えがＮＯで、現在の燃焼モードが均一燃焼モードであるときには、吸気行程中にのみ燃料を噴射すべきであるとして、それを表すために、上記ステップ１３３、１３４とは逆に、吸気行程噴射フラグＦ＿ＤＩＨＣを「１」にセットする（ステップ１３６）とともに、圧縮行程噴射フラグＦ＿ＤＩＳＣを「０」にセットし（ステップ１３７）、上記ステップ１３５を実行して、本処理を終了する。
【００８４】
前記ステップ１３１の答えがＹＥＳのとき、すなわち燃焼移行モード中であるときには、ステップ１３８に進み、図２のステップ９で算出した最終燃料噴射量ＴＯＵＴと、２回噴射燃焼モードにおける２回燃料噴射時の圧縮行程噴射用の燃料量ＴＩＭＤＳＣとの偏差（ＴＯＵＴ−ＴＩＭＤＳＣ）、すなわち２回燃料噴射時の吸気行程中に噴射すべき燃料量が、所定の噴射可能下限値ＴＯＵＴＤＩＭＩＮ（例えば０．４ｍｓｅｃ）よりも小さいか否かを判別する。この噴射可能下限値ＴＯＵＴＤＩＭＩＮは、インジェクタ４の噴射可能な最小燃料量を表している。また、２回燃料噴射時の圧縮行程噴射用の燃料量ＴＩＭＤＳＣは、エンジン回転数ＮＥに応じて、例えば図１３に示すＴＩＭＤＳＣテーブルを検索することにより算出される。このＴＩＭＤＳＣテーブルでは、２回燃料噴射時の圧縮行程噴射用の燃料量ＴＩＭＤＳＣは、エンジン回転数ＮＥが高いほど、少なくなるように設定されている。これは、エンジン回転数ＮＥが高いほど、筒内流動の関係上、混合気が燃焼しやすくなることで、圧縮行程での着火可能な最小燃料噴射量を少なくできるからである。なお、このＴＩＭＤＳＣテーブルでは、ＴＩＭＤＳＣの値は、インジェクタ４の噴射可能下限値ＴＯＵＴＤＩＭＩＮ以上に設定されている。
【００８５】
前記ステップ１３８の答えがＮＯで、ＴＯＵＴ−ＴＩＭＤＳＣ≧ＴＯＵＴＤＩＭＩＮのときには、２回燃料噴射時の圧縮行程噴射用の燃料量ＴＩＭＤＳＣに加えて、２回燃料噴射時の吸気行程中に噴射すべき燃料量（ＴＯＵＴ−ＴＩＭＤＳＣ）も、インジェクタ４から噴射可能であり、吸気行程中および圧縮行程中にそれぞれ燃料を噴射すべきであるとして、それを表すために、吸気行程噴射フラグＦ＿ＤＩＨＣおよび圧縮行程噴射フラグＦ＿ＤＩＳＣをいずれも「１」にセットする（ステップ１３９、１４０）。そして、２回燃料噴射を実行すべきであることを表すために、２回噴射フラグＦ＿ＤＢＬＩＮＪを「１」にセットし（ステップ１４１）、本処理を終了する。
【００８６】
一方、ステップ１３８の答えがＹＥＳのとき、すなわち２回燃料噴射時の吸気行程中に噴射すべき燃料量（ＴＯＵＴ−ＴＩＭＤＳＣ）が噴射可能下限値ＴＯＵＴＤＩＭＩＮを下回り、その燃料量を噴射できないとき、つまり２回燃料噴射を実行することができないときには、ステップ１４２に進み、成層燃焼許可フラグＦ＿ＤＩＳＣＯＫが「１」であるか否かを判別する。この答えがＹＥＳで、今回の燃焼モードの切換えが成層燃焼モードへの切換えであるとき、すなわち燃焼移行モードの開始前（燃焼モードの切換え前）の燃焼モードが均一燃焼モードであるときには、均一燃焼モードでの噴射タイミングと同様に、吸気行程中にのみ燃料を噴射すべきであるとして、それを表すために、吸気行程噴射フラグＦ＿ＤＩＨＣを「１」にセットする（ステップ１４３）とともに、圧縮行程噴射フラグＦ＿ＤＩＳＣを「０」にセットする（ステップ１４４）。そして、今回のループでは２回燃料噴射を実行することができないとして、それを表すために、前記ステップ１３５を実行して、本処理を終了する。
【００８７】
一方、上記ステップ１４２の答えがＮＯのとき、すなわちＦ＿ＤＩＳＣＯＫ＝０で、今回の燃焼モードの切換えが均一燃焼モードへの切換えであり、燃焼移行モードの開始前の燃焼モードが成層燃焼モードであるときには、成層燃焼モードでの噴射タイミングと同様に、圧縮行程中にのみ燃料を噴射すべきであるとして、それを表すために、吸気行程噴射フラグＦ＿ＤＩＨＣを「０」にセットする（ステップ１４５）とともに、圧縮行程噴射フラグＦ＿ＤＩＳＣを「１」にセットし（ステップ１４６）、前記ステップ１３５を実行して、本処理を終了する。
【００８８】
以上のように、燃焼移行モード中に上記のような噴射タイミングで燃料噴射を実行するのは、以下の理由による。すなわち、均一燃焼モードと成層燃焼モードとの間の切換えの際の燃焼移行モード中に実行される２回燃料噴射では、燃焼が不安定になりやすく、そのため、燃焼の安定を確保するために、吸気行程中および圧縮行程中にそれぞれ噴射すべき燃料を、いずれも適正な量で噴射することが要求される。しかし、２回燃料噴射を実行する際の吸気行程中または圧縮行程中に噴射すべき燃料が、インジェクタ４の噴射可能な最小燃料量を下回っている場合、本来の適正な量からずれた燃料量で、２回燃料噴射を実行すると、燃焼が不安定になる。このような吸気行程中または圧縮行程中に噴射すべき燃料が、上記の最小燃料量を下回る状況は、特に、燃焼移行モードの開始直後に生じる傾向がある。したがって、上記のような状況が生じた場合に、２回燃料噴射を実行せずに、燃焼移行モードの開始直前、すなわち切換え前の燃焼モードの噴射タイミングで、最終燃料噴射量ＴＯＵＴを噴射することにより、燃焼モードの切換えの際に安定した燃焼を確保することができる。
【００８９】
図９に戻り、ステップ９２に続くステップ９３では、ステップ９２で設定した２回噴射フラグＦ＿ＤＢＬＩＮＪが「１」であるか否かを判別する。この答えがＹＥＳで、２回燃料噴射を実行すべきであるときには、ステップ９４に進み、２回噴射制御を実行して、本処理を終了する。前述したように、この２回噴射制御では、最終燃料噴射量ＴＯＵＴを分割し、１燃焼サイクル内の吸気行程中に吸気行程噴射用の燃料量（ＴＯＵＴ−ＴＩＭＤＳＣ）を噴射するとともに、圧縮行程中に圧縮行程噴射用の燃料量ＴＩＭＤＳＣを噴射する。
【００９０】
一方、ステップ９３の答えがＮＯのときには、ステップ９５に進み、吸気行程噴射フラグＦ＿ＤＩＨＣが「１」であるか否かを判別する。この答えがＹＥＳで、吸気行程中に燃料を噴射すべきであるときには、ステップ９６に進み、吸気行程噴射制御を実行し、本処理を終了する。前述したように、この吸気行程噴射制御では、１燃焼サイクル内の吸気行程中にのみ、最終燃料噴射量ＴＯＵＴを噴射する。なお、図示しないが、前述した膨張行程噴射フラグＦ＿ＤＩＢＣが「１」であるときには、吸気行程噴射制御において、最終燃料噴射量ＴＯＵＴから膨張行程中に噴射すべき燃料量ＴＯＵＴＢを差し引いた燃料量を吸気行程中に噴射するとともに、燃料量ＴＯＵＴＢを膨張行程中に噴射する。
【００９１】
上記ステップ９５の答えがＮＯのときには、ステップ９７に進み、圧縮行程噴射フラグＦ＿ＤＩＳＣが「１」であるか否かを判別する。この答えがＹＥＳで、圧縮行程中に燃料を噴射すべきであるときには、ステップ９８に進み、圧縮行程噴射制御を実行し、本処理を終了する。前述したように、この圧縮行程噴射制御では、１燃焼サイクル内の圧縮行程中にのみ、最終燃料噴射量ＴＯＵＴを噴射する。一方、ステップ９７の答えがＮＯのとき、すなわちステップ９３、９５および９７がいずれもＮＯで、２回噴射フラグＦ＿ＤＢＬＩＮＪ、吸気行程噴射フラグＦ＿ＤＩＨＣ、および圧縮行程噴射フラグＦ＿ＤＩＳＣがいずれも「０」のときには、フューエルカット運転をすべきであるとして、燃料噴射を実行することなく、そのまま本処理を終了する。
【００９２】
以上詳述したように、本実施形態によれば、インジェクタ４の構造上、燃焼移行モード中に２回燃料噴射を実行することができない場合には、２回燃料噴射を実行せずに、切換え前の燃焼モードの噴射タイミングで、最終燃料噴射量ＴＯＵＴを噴射するので、燃焼移行モード中の安定した燃焼を確保することができる。
【００９３】
また、本実施形態によれば、成層燃焼モードから均一燃焼モードへの切換え時における燃焼移行モード中において、暫定要求燃料噴射量ＴＣＹＬＬＭＴと、吸気行程噴射用の要求燃料噴射量ＴＣＹＬ１ＳＴＴとの比に基づき、燃焼移行モード中の空燃比を良好に反映した仮想目標空燃比ＫＣＭＤＩＭＧを算出し、これを用いて、燃焼移行モードの終了タイミングを適切に判定できるので、必要以上に２回燃料噴射を実行することがなくなり、したがって、良好な運転性を確保しながら、ＮＯｘの排出を最小限に抑制することができる。また、均一燃焼モードへの切換え時の燃焼移行モード中には、２回噴射燃焼モードを少なくとも所定時間ＴＭＤＳＣＭＤＳ１継続させるので、２回燃料噴射の実行による効果、すなわち安定した燃焼およびトルク段差の抑制を確保することができる。
【００９４】
なお、本発明は、説明した上記実施形態に限定されることなく、種々の態様で実施することができる。実施形態では、２回噴射燃焼モード中の燃料噴射、すなわち２回燃料噴射の実行の可否を、吸気行程中に噴射すべき燃料量（ＴＯＵＴ−ＴＩＭＤＳＣ）とインジェクタ４の噴射可能下限値ＴＯＵＴＤＩＭＩＮとの比較結果に基づいて判定したが（ステップ１３８）、例えば、圧縮行程噴射用の燃料量ＴＩＭＤＳＣが噴射可能下限値ＴＯＵＴＤＩＭＩＮを下回ることがある場合には、両者の比較結果に基づいて、２回燃料噴射の実行の可否を判定してもよい。また、噴射可能下限値ＴＯＵＴＤＩＭＩＮに代えて、これよりも大きな適当な値を採用することも可能である。
【００９５】
また、実施形態では、燃焼移行モードの終了タイミングを判定するために、暫定要求燃料噴射量ＴＣＹＬＬＭＴと、吸気行程噴射用の要求燃料噴射量ＴＣＹＬ１ＳＴＴとの比に基づいて算出した仮想目標空燃比ＫＣＭＤＩＭＧと、燃焼移行モード終了判定値ＫＣＭＤＤＳＣとを比較したが、判定値として、燃焼移行モード射終了判定値ＫＣＭＤＤＳＣを吸気行程噴射用の目標空燃比ＫＣＭＤ１ＳＴで除算した値（ＫＣＭＤＤＳＣ／ＫＣＭＤ１ＳＴ）を採用し、この判定値と、ＴＣＹＬＬＭＴ／ＴＣＹＬ１ＳＴＴとを比較し、
ＴＣＹＬＬＭＴ／ＴＣＹＬ１ＳＴＴ＞ＫＣＭＤＤＳＣＭＤ／ＫＣＭＤ１ＳＴ
のときに、燃焼移行モードを終了させるようにしてもよい。また、暫定要求燃料噴射量ＴＣＹＬＬＭＴと、吸気行程噴射用の要求燃料噴射量ＴＣＹＬ１ＳＴＴとの比に代えて、両者の偏差（ＴＣＹＬＬＭＴ−ＴＣＹＬ１ＳＴＴ）などに基づいて算出した値を用い、それを適当な判定値と比較することによって、燃焼移行モードを終了させるようにしてもよい。その他、本発明の趣旨の範囲内で、細部の構成を適宜、変更することが可能である。
【符号の説明】
【００９６】
１  制御装置
２  ＥＣＵ（運転状態検出手段、要求トルク算出手段、
燃焼モード決定手段、燃料噴射量算出手段、および
燃料噴射手段）
３  内燃機関
４  燃料噴射弁（燃料噴射手段）
１０  気筒
２２  クランク角センサ（運転状態検出手段）
２５  スロットル弁開度センサ（運転状態検出手段）
３０  アクセル開度センサ（運転状態検出手段）
ＰＭＣＭＤ  要求トルク
ＴＯＵＴ  最終燃料噴射量（第１および第２燃料噴射量の合計した量の
燃料）
ＴＯＵＴ−ＴＩＭＤＳＣ  吸気行程噴射用の燃料量（第１燃料噴射量）
ＴＩＭＤＳＣ  圧縮行程噴射用の燃料量（第２燃料噴射量）
ＴＯＵＴＤＩＭＩＮ  噴射可能下限値（所定値）
【図１】
2005155481.tif 000003
【図２】
2005155481.tif 000004
【図３】
2005155481.tif 000005
【図４】
2005155481.tif 000006
【図５】
2005155481.tif 000007
【図６】
2005155481.tif 000008
【図７】
2005155481.tif 000009
【図８】
2005155481.tif 000010
【図９】
2005155481.tif 000011
【図１０】
2005155481.tif 000012
【図１１】
2005155481.tif 000013
【図１２】
2005155481.tif 000014
【図１３】
2005155481.tif 000015
【図１４】
2005155481.tif 000016
【図１５】
2005155481.tif 000017