(57)【特許請求の範囲】
【請求項１】
機関運転状態に応じて燃焼方式が均質燃焼と成層燃焼との間で切り換えられるとともに、アイドル回転数の調整が均質燃焼時には吸入空気量制御によって行われ、成層燃焼運転時には燃料噴射量制御によって行われる内燃機関に適用され、均質燃焼でのアイドル運転時に吸入空気量の適正値からのずれに対応する値を均質用学習値として学習し、成層燃焼でのアイドル運転時に燃料噴射量の適正値からのずれに対応する値を成層用学習値として学習する内燃機関の制御装置において、
均質燃焼運転時に吸入空気量の制御目標値に基づき同吸入空気量の制御を行うものであって、前記均質用学習値を加味して前記吸入空気量の制御目標値を算出することにより、前記吸入空気量の適正値からのずれを補償すべく吸入空気量の制御に前記均質用学習値を反映する吸入空気量制御手段と、
成層燃焼運転時の機関運転状態で均質燃焼運転を実行すると仮定したときの吸入空気量である仮想吸入空気量を前記均質用学習値を加味して算出する仮想吸入空気量算出手段と、
成層燃焼運転時に燃料噴射量の制御目標値に基づき同燃料噴射量の制御を行うものであって、前記仮想吸入空気量に基づき前記成層用学習値を加味して前記燃料噴射量の制御目標値を算出することにより、前記燃料噴射量の適正値からのずれを補償すべく燃料噴射量の制御に前記成層用学習値を反映する燃料噴射量制御手段と、
を備えることを特徴とする内燃機関の制御装置。
【請求項２】
前記燃料噴射量制御手段は、前記仮想吸入空気量に基づき燃料噴射量の制御目標値を算出する際、前記成層用学習値に加えて前記均質用学習値を加味する
請求項１記載の内燃機関の制御装置。
【請求項３】
前記燃料噴射量制御手段は、前記仮想吸入空気量に基づき燃料噴射量の制御目標値を算出する際、更に機関回転数を加味する
請求項１又は２記載の内燃機関の制御装置。
【請求項４】
前記仮想吸入空気量算出手段は、成層燃焼運転時の機関運転状態で均質燃焼運転を実行すると仮定したときの同機関のスロットルバルブの開度である仮想スロットル開度を前記均質用学習値を加味して算出し、この仮想スロットル開度から前記仮想吸入空気量を算出するものである
請求項１〜３のいずれかに記載の内燃機関の制御装置。
【請求項５】
請求項１〜４のいずれかに記載の内燃機関の制御装置において、
均質燃焼と成層燃焼とのうちのいずれかの燃焼方式でのアイドル運転時に同燃焼方式に対応する学習値の学習が行われるとき、この学習値を所定条件のもとで均質燃焼と成層燃焼とのうちの他方の燃焼方式に対応する学習値に反映する学習値反映手段を更に備える
ことを特徴とする内燃機関の制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、機関運転状態に応じて燃焼方式が切り換えられる内燃機関の制御装置に関するものである。
【０００２】
【従来の技術】
近年、自動車用の内燃機関においては、燃費を改善すること及び十分な機関出力を得ることの両立を図るために、機関運転状態に応じて燃焼方式を切り換えるタイプの内燃機関が提案され、実用化されている。こうしたタイプの内燃機関としては、例えば特開平１０−１６９４９０号公報に記載されたものがあげられる。
【０００３】
同公報に記載された内燃機関は、高出力が要求される高回転高負荷時等の所定機関運転時には、空気に対して燃料が均等に混合された均質混合気を理論空燃比の状態で燃焼させる「成層燃焼」を実行し、十分な機関出力を得るようにしている。
【０００４】
また、あまり高出力が要求されない低回転低負荷時には、点火プラグ周りに燃料濃度の高い混合気を分布させて混合気全体の平均空燃比を理論空燃比よりも大幅にリーンにしても的確な混合気への着火が得られる「成層燃焼」が実行される。こうした「成層燃焼」を行う場合、混合気の空燃比を理論空燃比よりもリーンにすべく、内燃機関のスロットルバルブが「均質燃焼」を行う場合に比べて開き側に制御されるため、内燃機関のポンピングロスが低減されて燃費が改善されるようになる。
【０００５】
上記のように内燃機関の燃焼方式を、機関運転状態に応じて「均質燃焼」と「成層燃焼」との間で切り換えることにより、燃費を改善することができるとともに十分な機関出力が得られるようになる。
【０００６】
ところで、内燃機関においては、アイドル回転数を制御するためのアイドルスピードコントロール（ＩＳＣ）が実行されるが、上記燃焼方式が切り換えられる内燃機関にあっては同機関を運転制御するための制御系のうち、燃焼方式毎に異なる制御系を制御して機関出力トルクを調整することによりアイドル回転数が制御される。上記公報に記載された内燃機関にあっては、アイドル回転数が「均質燃焼」時にはスロットル開度を補正することで調整され、「成層燃焼」時には燃料噴射量を補正することで調整される。
【０００７】
即ち、「均質燃焼」時には、実際のアイドル回転数に応じて所定基準値（例えば「０」）を中心に増減するフィードバック補正項に基づきスロットル開度が補正される。このスロットル開度の補正により燃焼室に吸入される空気の量が調整されると、同吸入空気量に基づき決定される燃料噴射量が変化して機関出力トルクが調整され、これによってアイドル回転数が目標値に近づけられる。
【０００８】
一方、「成層燃焼」時には、上記フィードバック補正項に基づき燃料噴射量が直接補正されて機関出力トルクが調整されることにより、アイドル回転数が目標値へと近づけられる。このように「成層燃焼」時に燃料噴射量によってアイドル回転数を制御するのは、「成層燃焼」時には吸入空気量に基づき一義的に燃料噴射量が決定されるのではないため、スロットル開度の補正による吸入空気量の調整に基づいては機関出力トルクが変化しにくく、アイドル回転数を制御しにくいためである。
【０００９】
また、内燃機関においては、吸気系や燃料系での経年変化等に起因して、吸入空気量や燃料噴射量が適正値から外れ、機関出力トルクが不適切なものになってアイドル回転数が目標値からずれることがある。上記吸入空気量や燃料噴射量の適正値からのずれを抑制するために、いわゆるＩＳＣ学習制御が行われ、この学習制御によってアイドル回転数の目標値からのずれを抑制すべく機関出力トルクが適正値へと調整される。
【００１０】
即ち、「均質燃焼」でのアイドル運転時には、上記フィードバック補正項が上記基準値を含む所定範囲内に収束するよう、スロットル開度（吸入空気量）の補正に用いられる均質用学習値が設定される。そして、フィードバック補正項が所定範囲内に収束したときに均質用学習値の学習が完了する。この学習完了後の均質用学習値は、吸入空気量の適正値に対するずれを補償可能なスロットル開度の変化量に対応した値となる。従って、上記学習完了後の均質用学習値によって「均質燃焼」時のスロットル開度を補正し、以後のスロットル開度に均質用学習値を反映することにより、吸入空気量の適正値に対するずれが補償される。その結果、機関出力トルクが適切な値になってアイドル回転数の目標値に対するずれが抑制されるとともに、吸入空気量の適正値に対するずれに伴いアイドル運転時等に内燃機関における燃焼状態が悪化するのを抑制することができる。
【００１１】
また、「成層燃焼」でのアイドル運転時には、上記フィードバック補正項が上記基準値を含む所定範囲内の値に収束するよう、燃料噴射量の補正に用いられる成層用学習値が設定される。そして、フィードバック補正項が所定範囲内に収束したときに成層用学習値の学習が完了する。この学習完了後の成層用学習値は、燃料噴射量の適正値に対するずれを補償可能な燃料噴射量の変化量に対応する値となる。従って、上記学習完了後の成層用学習値によって「成層燃焼」時の燃料噴射量を補正し、以後の燃料噴射量に成層用学習値を反映することにより、燃料噴射量の適正値に対するずれが補償される。その結果、機関出力トルクが適正な値になってアイドル回転数の目標値に対するずれが抑制されるとともに、燃料噴射量の適正値に対するずれに伴いアイドル運転時等に内燃機関における燃焼状態が悪化するのを抑制することができる。
【００１２】
【発明が解決しようとする課題】
上記のように均質用学習値及び成層用学習値の学習を行うことで、「均質燃焼」時には吸入空気量のずれを補償し、「成層燃焼」時には燃料噴射量のずれを補償することが可能にはなるが、燃焼方式間で機関出力トルクを合わせることは困難になる。通常、燃焼方式間で機関出力トルクを合わせるためには、同一の機関運転状態のもとでの均質燃焼運転時の機関出力トルクと成層燃焼運転時の機関出力トルクとを合致させる必要がある。
【００１３】
しかし、上記均質用学習値と成層用学習値とが燃焼方式に応じて切り換えて用いられると、これが燃焼方式を切り換える際の機関出力トルクの段差発生につながることともなる。これは、均質用学習値と成層用学習値とは、吸気系と燃料系といった異なる制御系に対応して、それら制御系の制御量の適正値に対するずれを各々補償するものであることが理由である。
【００１４】
即ち、吸入空気量の適正値に対するずれと、燃料噴射量の適正値に対するずれが異なるものである場合、それらのずれを補償するための成層用学習値と均質用学習値も異なるものとなる。そして、均質用学習値及び成層用学習値による補正に伴う機関出力トルクの調整量も互いに異なるものとなり、燃焼方式の切り換え時に機関出力トルクの段差が生じることとなる。
【００１５】
本発明はこのような実情に鑑みてなされたものであって、その目的は、吸入空気量や燃料噴射量などアイドル回転数を制御する各種制御系の制御量の適正値に対するずれを的確に補償しつつ、燃焼方式間で機関出力トルクを合わせることのできる内燃機関の制御装置を提供することにある。
【００１６】
【課題を解決するための手段】
以下、上記目的を達成するための手段及びその作用効果について記載する。
上記目的を達成するため、請求項１記載の発明では、機関運転状態に応じて燃焼方式が均質燃焼と成層燃焼との間で切り換えられるとともに、アイドル回転数の調整が均質燃焼時には吸入空気量制御によって行われ、成層燃焼運転時には燃料噴射量制御によって行われる内燃機関に適用され、均質燃焼でのアイドル運転時に吸入空気量の適正値からのずれに対応する値を均質用学習値として学習し、成層燃焼でのアイドル運転時に燃料噴射量の適正値からのずれに対応する値を成層用学習値として学習する内燃機関の制御装置において、均質燃焼運転時に吸入空気量の制御目標値に基づき同吸入空気量の制御を行うものであって、前記均質用学習値を加味して前記吸入空気量の制御目標値を算出することにより、前記吸入空気量の適正値からのずれを補償すべく吸入空気量の制御に前記均質用学習値を反映する吸入空気量制御手段と、成層燃焼運転時の機関運転状態で均質燃焼運転を実行すると仮定したときの吸入空気量である仮想吸入空気量を前記均質用学習値を加味して算出する仮想吸入空気量算出手段と、成層燃焼運転時に燃料噴射量の制御目標値に基づき同燃料噴射量の制御を行うものであって、前記仮想吸入空気量に基づき前記成層用学習値を加味して前記燃料噴射量の制御目標値を算出することにより、前記燃料噴射量の適正値からのずれを補償すべく燃料噴射量の制御に前記成層用学習値を反映する燃料噴射量制御手段とを備えた。
【００１７】
同構成によれば、均質燃焼運転時には吸入空気量の制御に均質用学習値が反映され、これにより吸入空気量の適正値に対するずれが補償される。また、成層燃焼運転時には上記均質用学習値を加味して算出される仮想吸入空気量に基づき燃料噴射量の制御目標値が算出され、同制御目標値がこのとき均質燃焼を実行した場合に得られる機関出力トルクに関連づけられることとなる。そして、この制御目標値に基づき燃料噴射量が制御されるため、成層燃焼運転時の機関出力トルクが均質燃焼運転時の機関出力トルクに適切に合致するようになる。更に、成層燃焼運転時の燃料噴射量の制御には、上記仮想吸気量だけでなく成層用学習値も反映され、これにより燃料噴射量の適正値からのずれが補償される。従って、アイドル回転数を制御するための制御量である吸入空気量及び燃料噴射量の適正値に対するずれを補償しつつ、燃焼方式間で機関出力トルクを合わせることができるようになる。
【００１８】
請求項２記載の発明では、請求項１記載の発明において、前記燃料噴射量制御手段は、前記仮想吸入空気量に基づき燃料噴射量の制御目標値を算出する際、前記成層用学習値に加えて前記均質用学習値を加味するものとした。
【００１９】
成層燃焼運転時の燃料噴射量制御には、均質用学習値を加味した仮想吸入空気量が用いられる。仮想吸入空気量に基づき成層燃焼運転時における燃料噴射量の制御目標値を算出する際、成層用学習値に加えて均質用学習値が加味される同構成によれば、上記成層用学習値により燃料噴射量の適正値からのずれを補償する際、これが上記均質用学習値を加味した仮想吸入空気量に起因して過剰なものになるのを抑制することができる。
【００２０】
請求項３記載の発明では、請求項１又は２記載の発明において、前記燃料噴射量制御手段は、前記仮想吸入空気量に基づき燃料噴射量の制御目標値を算出する際、更に機関回転数を加味するものとした。
【００２１】
均質用学習値及び成層用学習値はアイドル運転時に学習されるため、機関回転数が高くなるにつれて、同学習値により成層燃焼運転時の燃料噴射量の適正値からのずれを補償する際、これが過剰になる。しかし、仮想吸入空気量に基づき燃料噴射量の制御目標値を算出する際、更に機関回転数を加味する同構成によれば、上記学習値により成層燃焼運転時の燃料噴射量の適正値からのずれを補償する際、これが過剰になるのを抑制することができる。
【００２２】
請求項４記載の発明では、請求項１〜３のいずれかに記載の発明において、前記仮想吸入空気量算出手段は、成層燃焼運転時の機関運転状態で均質燃焼運転を実行すると仮定したときの同機関のスロットルバルブの開度である仮想スロットル開度を前記均質用学習値を加味して算出し、この仮想スロットル開度から前記仮想吸入空気量を算出するものとした。
【００２３】
同構成によれば、仮想吸入空気量の算出に用いられる仮想スロットル開度を算出する際に均質用学習値が加味されるため、上記仮想吸入空気量を適切な値とすることができる。この仮想吸入空気量に基づき算出される燃料噴射量の制御目標値に基づき成層燃焼運転時の燃料噴射量を制御することで、成層燃焼運転時の機関出力トルクを均質燃焼運転時の機関出力トルクに一層適切に合致させることができる。
【００２８】
請求項５記載の発明では、請求項１〜４のいずれかに記載の発明において、均質燃焼と成層燃焼とのうちのいずれかの燃焼方式でのアイドル運転時に同燃焼方式に対応する学習値の学習が行われるとき、この学習値を所定条件のもとで均質燃焼と成層燃焼とのうちの他方の燃焼方式に対応する学習値に反映する学習値反映手段を更に備えた。
【００２９】
同構成によれば、各燃焼方式に対応する学習値が互いに反映し合うため、それら学習値の学習を早期に完了することができる。
【００３０】
【発明の実施の形態】
以下、本発明を直列４気筒の自動車用直噴ガソリンエンジンに適用した一実施形態を図１〜図１３に従って説明する。
【００３１】
図１に示すように、エンジン１１は、そのシリンダブロック１１ａ内に往復移動可能に設けられた合計四つのピストン１２（図１には一つのみ図示）を各気筒毎に備えている。各ピストン１２は、その頭部に後述する「成層燃焼」を実行するのに必要な窪み１２ａが形成されるとともに、コンロッド１３を介して出力軸であるクランクシャフト１４に連結されている。そして、ピストン１２の往復移動は、上記コンロッド１３によってクランクシャフト１４の回転へと変換されるようになっている。
【００３２】
クランクシャフト１４にはシグナルロータ１４ａが取り付けられている。このシグナルロータ１４ａの外周部には、複数の突起１４ｂがクランクシャフト１４の軸線を中心とする等角度毎に設けられている。また、シグナルロータ１４ａの側方には、クランクポジションセンサ１４ｃが設けられている。そして、クランクシャフト１４が回転して、シグナルロータ１４ａの各突起１４ｂが順次クランクポジションセンサ１４ｃの側方を通過することにより、同センサ１４ｃからはそれら各突起１４ｂの通過に対応したパルス状の検出信号が出力されるようになる。
【００３３】
シリンダブロック１１ａには、エンジン１１の冷却水温を検出するための水温センサ１１ｂが設けられている。また、シリンダブロック１１ａの上端にはシリンダヘッド１５が設けられ、シリンダヘッド１５とピストン１２との間には燃焼室１６が設けられている。この燃焼室１６には吸気通路３２及び排気通路３３が接続されている。そして、燃焼室１６と吸気通路３２とは吸気バルブ１９の開閉動作によって連通・遮断され、燃焼室１６と排気通路３３とは排気バルブ２０の開閉動作によって連通・遮断される。
【００３４】
一方、シリンダヘッド１５には、上記吸気バルブ１９及び排気バルブ２０を開閉駆動するための吸気カムシャフト２１及び排気カムシャフト２２が回転可能に支持されている。これら吸気及び排気カムシャフト２１，２２は、タイミングベルト及びギヤ（共に図示せず）等を介してクランクシャフト１４に連結され、同ベルト及びギヤ等によりクランクシャフト１４の回転が伝達されるようになる。そして、吸気カムシャフト２１が回転すると吸気バルブ１９が開閉動作し、排気カムシャフト２２が回転すると排気バルブ２０が開閉動作する。
【００３５】
シリンダヘッド１５において、吸気カムシャフト２１の側方には、同シャフト２１の外周面に設けられた突起２１ａを検出して検出信号を出力するカムポジションセンサ２１ｂが設けられている。そして、吸気カムシャフト２１が回転すると、同シャフト２１の突起２１ａがカムポジションセンサ２１ｂの側方を通過する。この状態にあっては、カムポジションセンサ２１ｂから上記突起２１ａの通過に対応して所定間隔毎に検出信号が出力されるようになる。
【００３６】
吸気通路３２の上流部分には、エンジン１１の吸入空気量を調整するためのスロットルバルブ２３が設けられている。このスロットルバルブ２３の開度は、アクセルポジションセンサ２６によって検出されるアクセルペダル２５の踏込量（アクセル踏込量）に基づきスロットル用モータ２４を駆動制御することで調節される。こうしたスロットルバルブ２３の開度調節により、エンジン１１の吸入空気量が調整される。なお、スロットルバルブ２３の開度はスロットルポジションセンサ４４によって検出される。
【００３７】
また、吸気通路３２においてスロットルバルブ２３の下流側に位置する部分には、同通路３２内の圧力を検出するバキュームセンサ３６が設けられている。そして、バキュームセンサ３６は検出した吸気通路３２内の圧力に対応した検出信号を出力する。更に、吸気通路３２においてスロットルバルブ２３の上流側に位置する部分には、同通路３２を通過する空気（吸入空気）の温度を検出する吸気温センサ３７が設けられている。この吸気温センサ３７は、検出した吸入空気温（吸気温）に対応した検出信号を出力する。
【００３８】
また、シリンダヘッド１５には、燃焼室１６内に燃料を噴射供給する燃料噴射弁４０と、燃焼室１６内に充填される燃料と空気とからなる混合気に対して点火を行う点火プラグ４１とが設けられている。そして、燃料噴射弁４０から燃焼室１６内へ燃料が噴射されると、同燃料が吸気通路３２を介して燃焼室１６に吸入された空気と混ぜ合わされ、燃焼室１６内で空気と燃料とからなる混合気が形成される。更に、燃焼室１６内の混合気は点火プラグ４１によって点火がなされて燃焼し、燃焼後の混合気は排気として排気通路３３に送り出される。
【００３９】
次に、本実施形態におけるエンジン１１の制御装置の電気的構成を図２に基づいて説明する。
この制御装置は、燃料噴射量制御、燃料噴射時期制御、及びスロットル開度制御など、エンジン１１の運転状態を制御するための電子制御ユニット（以下「ＥＣＵ」という）９２を備えている。このＥＣＵ９２は、ＲＯＭ９３、ＣＰＵ９４、ＲＡＭ９５及びバックアップＲＡＭ９６等を備える算出論理演算回路として構成されている。
【００４０】
ここで、ＲＯＭ９３は各種制御プログラムや、それら各種制御プログラムを実行する際に参照されるマップ等が記憶されたメモリであり、ＣＰＵ９４はＲＯＭ９３に記憶された各種制御プログラムやマップに基づいて演算処理を実行する。また、ＲＡＭ９５はＣＰＵ９４での演算結果や各センサから入力されたデータ等を一時的に記憶するメモリであり、バックアップＲＡＭ９６はエンジン１１の停止時にその記憶されたデータ等を保存する不揮発性のメモリである。そして、ＲＯＭ９３、ＣＰＵ９４、ＲＡＭ９５及びバックアップＲＡＭ９６は、バス９７を介して互いに接続されるとともに、外部入力回路９８及び外部出力回路９９と接続されている。
【００４１】
外部入力回路９８には、水温センサ１１ｂ、クランクポジションセンサ１４ｃ、カムポジションセンサ２１ｂ、アクセルポジションセンサ２６、バキュームセンサ３６、吸気温センサ３７、及びスロットルポジションセンサ４４等が接続されている。一方、外部出力回路９９には、スロットル用モータ２４、及び燃料噴射弁４０等が接続されている。
【００４２】
このように構成されたＥＣＵ９２は、エンジン１１の運転状態に応じて燃焼方式を「均質燃焼」と「成層燃焼」との間で切り換える。
即ち、ＥＣＵ９２は、クランクポジションセンサ１４ｃからの検出信号に基づきエンジン回転数ＮＥを求める。更に、ＥＣＵ９２は、機関負荷に対応した値となる基本燃料噴射量Ｑbse をエンジン１１の吸入空気量に関係したパラメータ等に基づき算出する。こうしたパラメータとしては、現在の燃焼方式が「均質燃焼」であるときには上記吸入空気量に直接的に関係するエンジン１１の吸気圧ＰＭ等が採用され、現在の燃焼方式が「成層燃焼」であるときには同吸入空気量に間接的に関係するアクセル踏込量ＡＣＣＰ等が採用される。なお、上記吸気圧ＰＭはバキュームセンサ３６からの検出信号に基づき求められ、アクセル踏込量ＡＣＣＰはアクセルポジションセンサ２６からの検出信号に基づき求められる。
【００４３】
ＥＣＵ９２は、上記基本燃料噴射量Ｑbse （機関負荷）及びエンジン回転数ＮＥに応じて、現在の運転状態が「成層燃焼」と「均質燃焼」とのうちのいずれの燃焼方式を実行すべき状態であるか判定し、同判定に応じた燃焼方式を実行する。即ち、エンジン１１の運転状態が高回転高負荷領域にあるときに「均質燃焼」を行い、低回転低負荷領域にあるときには「成層燃焼」を行う。このように燃焼方式を変化させるのは、高出力が要求される高回転高負荷時には混合気の空燃比をリッチ側の値にしてエンジン出力を高め、あまり高出力を必要としない低回転低負荷時には空燃比をリーン側の値にして燃費の改善を図るためである。
【００４４】
エンジン１１の燃焼方式を「均質燃焼」とした場合、ＥＣＵ９２は、燃料噴射弁４０を駆動制御してエンジン１１の吸気行程中に、基本燃料噴射量Ｑbse から求められる最終燃料噴射量Ｑfin に対応した量の燃料を燃焼室１６内に噴射供給する。こうした燃料噴射に基づき燃焼室１６内に形成される混合気においては、その空燃比が理論空燃比若しくは理論空燃比よりもリッチになる。更に、ＥＣＵ９２は、スロットルポジションセンサ４４からの検出信号に基づき、実際のスロットル開度ＴＡｒを求める。そして、実際のスロットル開度ＴＡｒが「均質燃焼」時の目標スロットル開度ＴＡｓｊに近づくようスロットル用モータ２４を駆動制御し、エンジン１１のスロットル開度を「均質燃焼」に適したものとする。
【００４５】
エンジン１１の燃焼方式を「成層燃焼」とした場合、ＥＣＵ９２は、燃料噴射弁４０を駆動制御してエンジン１１の圧縮行程中に、基本燃料噴射量Ｑbse から求められる最終燃料噴射量Ｑfin に対応した量の燃料を噴射供給する。こうした燃料噴射により燃焼室１６内に形成される混合気においては、その空燃比が「均質燃焼」時の空燃比よりもリーン側の値とされる。更に、ＥＣＵ９２は、実際のスロットル開度ＴＡｒが「成層燃焼」時の目標スロットル開度ＴＡｔｊに近づくようスロットル用モータを駆動制御し、エンジン１１のスロットル開度を「成層燃焼」に適したものとする。
【００４６】
上記「成層燃焼」時において、エンジン１１の圧縮行程中に燃料噴射弁４０から噴射された燃料は、ピストン１２の頭部に設けられた窪み１２ａ（図１）に入り、ピストン１２の移動によって点火プラグ４１の周りに集められる。このように点火プラグ４１の周りに燃料を集めることによって、燃焼室１６内の混合気全体の平均空燃比を「均質燃焼」時よりリーンにしても、同プラグ４１周りの混合気の空燃比が着火に適したものとされて良好な混合気への着火が行われる。また、燃焼室１６内の混合気全体の平均空燃比を「均質燃焼」時よりリーンにするためにスロットル開度が開き側に制御されて吸入空気量が多くされるため、「成層燃焼」時にはエンジン１１のポンピングロスが低減されるようになる。
【００４７】
ところで、上記エンジン１１においては、機関出力トルクを必要な値に調整する際、同エンジン１１を運転制御するための各種制御系のうち、燃焼方式毎に異なる制御系を用いて上記機関出力トルクの調整を行う。こうした機関出力トルクの調整を必要とするエンジン１１の運転制御としては、同エンジン１１のアイドル回転数を制御するための、いわゆるアイドルスピードコントロール（ＩＳＣ）等があげられる。
【００４８】
上記ＩＳＣでは、「均質燃焼」でのアイドル運転時には、スロットルバルブ２３の開度（スロットル開度）を調節して吸入空気量を変化させる。このように吸入空気量が調整されると、吸入空気量（吸気圧）に応じて決定される燃料噴射量が変化し、これにより機関出力トルクが調整されてアイドル回転数が制御される。また、「成層燃焼」でのアイドル運転時には燃料噴射量を直接調整することにより、機関出力トルクが調整されてアイドル回転数が制御される。これは、「成層燃焼」時には吸入空気量と直接的に関係するパラメータ（吸気圧等）に基づき燃料噴射量が決定されるのではないため、「均質燃焼」時のような吸入空気量の調整を行っても機関出力トルクが変化しにくいことが理由である。
【００４９】
次に、「均質燃焼」時のスロットル開度制御及び燃料噴射制御について説明する。
上記「均質燃焼」時の目標スロットル開度ＴＡｓｊは、後述する集約目標スロットル開度ＴＡｔが代入される。上記集約目標スロットル開度ＴＡｔは、現在実行中の燃焼方式に関係なく、そのときのアクセル踏込量ＡＣＣＰ及びエンジン回転数ＮＥで「均質燃焼」を実行すると仮定した場合での同「均質燃焼」に適したスロットル開度として算出されている。従って、「均質燃焼」が実行されているときには、集約目標スロットル開度ＴＡｔが同「均質燃焼」に適した目標スロットル開度ＴＡｓｊとして用いられる。このように「均質燃焼」時の目標スロットル開度ＴＡｓｊが算出されると、ＥＣＵ９２は、同目標スロットル開度ＴＡｓｊと、実際のスロットル開度ＴＡｒとに基づきスロットル用モータ２４を制御し、スロットルバルブ２３の開度制御を行う。
【００５０】
即ち、ＥＣＵ９２は、下記の式（１）に基づき位相進み補償後スロットル開度ＴＡｈを算出する。
【００５１】
【数１】
0004196494.tif 000002
式（１）からわかるように、位相進み補償後スロットル開度ＴＡｈは、上記実際のスロットル開度ＴＡｒを時間ｔについて微分して更に所定の係数Ｋｄを乗算し、その値を実際のスロットル開度ＴＡｒに加算して算出される値である。こうして算出される位相進み補償後スロットル開度ＴＡｈは、目標スロットル開度ＴＡｓｊの変化中においては、実際のスロットル開度ＴＡｒよりも同目標スロットル開度ＴＡｓｊに近い値になる。
【００５２】
ＥＣＵ９２は、目標スロットル開度ＴＡｓｊと上記位相進み補償後スロットル開度ＴＡｈとの差ｅ２を算出する。そして、ＥＣＵ９２は、その差ｅ２が「０」に近づくように、即ち位相進み補償後スロットル開度ＴＡｈが目標スロットル開度ＴＡｓｊに近づくようにスロットル用モータ２４を駆動制御する。
【００５３】
ここで、時間経過に伴い目標スロットル開度ＴＡｓｊが変化するときにおいて、位相進み補償後スロットル開度ＴＡｈ、及び実際のスロットル開度ＴＡｒがどのように推移するかを図３に示す。
【００５４】
図３に二点鎖線で示すように目標スロットル開度ＴＡｓｊが変化すると、それに応じて位相進み補償後スロットル開度ＴＡｈが細い実線で示すように、その目標スロットル開度ＴＡｓｊの近傍で推移する。このように推移する位相進み補償後スロットル開度ＴＡｈと、目標スロットル開度ＴＡｓｊとの差ｅ２が「０」に近づくようにスロットル用モータ２４を制御すると、実際のスロットル開度ＴＡｒは目標スロットル開度ＴＡｓｊの推移に対して太い実線で示すように所定の応答遅れをもって推移する。こうして実際のスロットル開度ＴＡｒに応答遅れを持たせるのは、そのスロットル開度ＴＡｒのオーバーシュートを防止するためである。
【００５５】
このように「均質燃焼」時のスロットル開度制御が行われると、エンジン１１における実際の吸気圧ＰＭｒ（吸入空気量）がスロットルバルブ２３の開度に対応したものとなる。ＥＣＵ９２は、実際のスロットル開度ＴＡｒ及び実際の吸気圧ＰＭｒ等から予測吸気圧ＰＭＦＷＤを算出する。この予測吸気圧ＰＭＦＷＤは、吸気バルブ１９の閉弁時における吸気圧を予測した値であって、後述する吸気圧算出ルーチンによって算出されるものである。
【００５６】
ＥＣＵ９２は、上記予測吸気圧ＰＭＦＷＤ及びエンジン回転数ＮＥに基づき基本燃料噴射量Ｑbse を算出する。そして、ＥＣＵ９２は、燃料噴射弁４０を駆動制御して、基本燃料噴射量Ｑbse から求められる最終燃料噴射量Ｑfin に対応した量の燃料を吸気行程中に燃焼室１６に噴射供給する。こうした燃料噴射によって「均質燃焼」が実行され、機関出力トルクが必要とされる値へと制御される。
【００５７】
従って、エンジン１１の均質燃焼運転時には、集約目標スロットル開度ＴＡｔが代入される目標スロットル開度ＴＡｓｊに基づきスロットル開度を調節することにより機関出力トルクが制御される。
【００５８】
次に、「成層燃焼」時の燃料噴射制御について説明する。
上記集約目標スロットル開度ＴＡｔは、「成層燃焼」時には、そのときのアクセル踏込量ＡＣＣＰ及びエンジン回転数ＮＥにて「均質燃焼」を実行すると仮定した場合での同「均質燃焼」（以下、「仮想均質燃焼」という）に適した目標スロットル開度として算出される。「成層燃焼」時には、上記「仮想均質燃焼」において上記集約目標スロットル開度ＴＡｔに基づきスロットル開度制御を行うことで得られるはずの実際のスロットル開度ＴＡｒを、同集約目標スロットル開度ＴＡｔに基づき仮想スロットル開度ＴＡｖとして算出する。
【００５９】
即ち、図３に示すように、「均質燃焼」時の目標スロットル開度ＴＡｓｊ（集約目標スロットル開度ＴＡｔ）の推移と、位相進み補償後スロットル開度ＴＡｈの推移とがほぼ等しいことから、まず「ＴＡｈ＝ＴＡｓｊ（ＴＡｈ＝ＴＡｔ）」であると仮定する。この仮定を条件に、上記式（１）と逆の手順により、目標スロットル開度ＴＡｓｊ（集約目標スロットル開度ＴＡｔ）から実際のスロットル開度ＴＡｒを算出し、そのスロットル開度ＴＡｒを仮想スロットル開度ＴＡｖとする。
【００６０】
更に、エンジン１１のスロットル開度が上記仮想スロットル開度ＴＡｖとなる状態での「均質燃焼（仮想均質燃焼）」時の吸気圧（予測吸気圧ＰＭＦＷＤ）である仮想吸気圧ＰＭｖを、上記仮想スロットル開度ＴＡｖ等に基づき算出する。そして、上記仮想吸気圧ＰＭｖ（仮想吸入空気量）及びエンジン回転数ＮＥ等に基づき「成層燃焼」時の基本燃料噴射量Ｑbse を算出する。
【００６１】
ＥＣＵ９２は、燃料噴射弁４０を駆動制御して、基本燃料噴射量Ｑbse から求められる最終燃料噴射量Ｑfin に対応した量の燃料を圧縮行程中に燃焼室１６に噴射供給する。上記最終燃料噴射量Ｑfin は、エンジン１１における燃料噴射量の制御目標値である。こうした最終燃料噴射量Ｑfin に基づく燃料噴射制御によって「成層燃焼」が実行され、機関出力トルクが必要とされる値へと制御される。
【００６２】
従って、エンジン１１の成層燃焼運転時には、集約目標スロットル開度ＴＡｔに基づき、「仮想均質燃焼」に対応する仮想スロットル開度ＴＡｖ及び仮想吸気圧ＰＭｖが算出され、この仮想吸気圧ＰＭｖ等から算出される最終燃料噴射量Ｑfin （基本燃料噴射量Ｑbse ）に基づき燃料噴射量を調節することにより機関出力トルクが制御される。このため、「成層燃焼」時には、上記集約目標スロットル開度ＴＡｔは、そのときの「成層燃焼」時に必要とされる機関出力トルクに対応した値として、後述する集約目標スロットル開度算出ルーチンにより算出される。
【００６３】
上記のように成層燃焼運転時には、「仮想均質燃焼」に対応する仮想スロットル開度ＴＡｖ及び仮想吸気圧ＰＭｖに応じて最終燃料噴射量Ｑfin が算出され、同最終燃料噴射量Ｑfin がこのとき実際に「均質燃焼」を実行した場合に得られる機関出力トルクに関連付けられる。そして、この最終燃料噴射量Ｑfin に基づき燃料噴射量が制御されるため、同最終燃料噴射量Ｑfin に対応した成層燃焼運転時の機関出力トルクが、このとき均質燃焼運転を行った場合での機関出力トルクに合致するようになる。これにより、燃焼方式を「成層燃焼」と「均質燃焼」との間で切り換える際等に、機関出力トルクに段差が生じるのを抑制することができる。
【００６４】
次に、最終燃料噴射量Ｑfin の算出手順について図４を参照して説明する。図４は、成層燃焼運転時及び均質燃焼運転時に仮想吸気圧ＰＭｖ及び予測吸気圧ＰＭＦＷＤに基づき最終燃料噴射量Ｑfin を算出するための燃料噴射量算出ルーチンを示すフローチャートである。この燃料噴射量算出ルーチンは、ＥＣＵ９２を通じて所定時間毎の時間割り込みにて実行される。
【００６５】
燃料噴射量算出ルーチンにおいて、ステップＳ２０１の処理は仮想吸気圧ＰＭｖ若しくは予測吸気圧ＰＭＦＷＤを算出するためのものである。このステップＳ２０１の処理が実行された後、ＥＣＵ９２は、ステップＳ２０２の処理として、仮想吸気圧ＰＭｖ若しくは予測吸気圧ＰＭＦＷＤを吸気圧ＰＭとして用い、下記の式（２）によって基本燃料噴射量Ｑbse を算出する。即ち、吸気圧ＰＭに吸気温補正係数Ｋtha 及び定数Ｋを乗算して基本燃料噴射量Ｑbse を算出する。
【００６６】
【数２】
Ｑbse ＝ＰＭ＊Ｋtha ＊Ｋ          …（２）
なお、上記仮想吸気圧ＰＭｖ及び予測吸気圧ＰＭＦＷＤを算出する際には後述する体積効率ηｖが用いられるが、上記式（２）における吸気温補正係数Ｋtha は吸気温ＴＨＡの変化による体積効率ηｖの変化を補償するためのものである。ＥＣＵ９２は、吸気温センサ３７からの検出信号に基づき吸気温ＴＨＡを求めるとともに、上記吸気温補正係数Ｋtha を吸気温ＴＨＡに基づき図５のマップを参照して算出する。こうして算出される吸気温補正係数Ｋtha は、吸気温ＴＨＡが高くなるほど小さくなって「１．０」に近づくようになる。従って、補正後の基本燃料噴射量Ｑbse は、吸気温ＴＨＡが低くなるほど大きな値になる。
【００６７】
ステップＳ２０２の処理が実行された後、ステップＳ２０３に進む。ステップＳ２０３，Ｓ２０４の処理は、基本燃料噴射量Ｑbse 等から最終燃料噴射量Ｑfin を算出するためのものである。
【００６８】
ＥＣＵ９２は、ステップＳ２０３の処理として、モード補正係数Ｋmodeを算出する。このモード補正係数Ｋmodeは、「均質燃焼」と「成層燃焼」との燃焼効率の差に伴う要求燃料噴射量の差を補償するための補正係数であり、ＥＣＵ９２は、現在の燃焼方式に応じてモード補正係数Ｋmodeを算出する。このモード補正係数Ｋmodeは、燃焼効率が「成層燃焼」よりも低くなる「均質燃焼」時には、「Ｋmode＝１．０」に設定される。なお、「均質燃焼」時に「成層燃焼」時よりも燃焼効率が低くなるのは、「均質燃焼」では「成層燃焼」に比べてポンプ損失や冷却損失が大きくなるためである。
【００６９】
上記のようにステップＳ２０３の処理を実行し、モード補正係数Ｋmodeを算出すると、ＥＣＵ９２は、続くステップＳ２０４で、基本燃料噴射量Ｑbse にモード補正係数Ｋmodeを乗算して最終燃料噴射量Ｑfin を算出する。
【００７０】
上記のように最終燃料噴射量Ｑfin の算出にモード補正係数Ｋmodeを用いることで、燃焼方式毎の燃焼効率の違いに基づき最終燃料噴射量Ｑfin が調整され、燃焼効率の高い「成層燃焼」時には「均質燃焼」時に対して最終燃料噴射量Ｑfin が減量側に調整される。こうした燃焼方式毎の燃焼効率の違いを加味して算出される最終燃料噴射量Ｑfin に基づき燃料噴射制御を行うことで、いずれの燃焼方式を実行したときでも燃料噴射量制御に基づく機関出力トルク制御の精度が向上するようになる。
【００７１】
ＥＣＵ９２は、続くステップＳ２０５の処理として、成層燃焼運転の実行中か否かを判断する。そして、成層燃焼運転中でなければ当該燃料噴射量算出ルーチンを一旦終了し、成層燃焼運転中であればステップＳ２０６の処理を実行した後に同燃料噴射量算出ルーチンを一旦終了する。上記ステップＳ２０６の処理は、「成層燃焼」時に燃料系の経年変化等に伴う燃料噴射量の適正値に対するずれを補償するためのものである。
【００７２】
ＥＣＵ９２は、ステップＳ２０６の処理として、下記の式（３）に基づき最終燃料噴射量Ｑfin を補正する。
【００７３】
【数３】
0004196494.tif 000003
式（３）において、最終燃料噴射量Ｑfin に加算される項、即ち「｛（ｑｇｔｊ／ｑｇｓｊ）−１｝＊Ｃ＊（６００／ＮＥ）」により、「成層燃焼」時の上記燃料噴射量の適正値に対するずれが補償されることとなる。なお、この補償に関しては後で詳しく説明する。式（３）において、成層用学習値ｑｇｔｊは、後述するＩＳＣ学習ルーチンによって上記燃料噴射量の適正値からのずれ量に対応した値として学習されるものである。また、均質用学習値ｑｇｓｊは、上記ＩＳＣ学習ルーチンによって吸気系の経年変化等に伴う吸入空気量の適正値からのずれ量に対応した値として学習されるものである。また、式（３）において、重み係数Ｃ及びエンジン回転数ＮＥによって定まる「Ｃ＊（６００／ＮＥ）」という値は、式（３）に基づく最終燃料噴射量Ｑfin の補正が過剰になるのを抑制し、同補正の適正化を図るためのものである。
【００７４】
次に、燃料噴射量算出ルーチンにおけるステップＳ２０１の処理について図６及び図７を参照して詳しく説明する。図６及び図７は、予測吸気圧ＰＭＦＷＤ及び仮想吸気圧ＰＭｖを算出するための吸気圧算出ルーチンを示すフローチャートである。この吸気圧算出ルーチンは、燃料噴射量算出ルーチンのステップＳ２０１に進む毎にＥＣＵ９２を通じて実行される。
【００７５】
吸気圧算出ルーチンにおいて、ＥＣＵ９２は、ステップＳ３０１（図６）の処理として、成層燃焼運転中であるか否かを判断する。そして、成層燃焼運転中であれば、ステップＳ３０２の処理として、集約目標スロットル開度ＴＡｔと実際のスロットル開度ＴＡｒとに基づき、「仮想均質燃焼」時のスロットル開度ＴＡｔである仮想スロットル開度ＴＡｖを算出する。その後、ステップＳ３０３に進む。また、上記ステップＳ３０１の処理において、成層燃焼運転中でない旨判断されるときには直接ステップＳ３０３に進む。
【００７６】
ＥＣＵ９２は、ステップＳ３０３の処理として、現在の実際のスロットル開度ＴＡｒ若しくは仮想スロットル開度ＴＡｖと、エンジン回転数ＮＥとに基づき定常時吸気圧ＰＭbse を算出する。この定常時吸気圧ＰＭbse は、上記スロットル開度ＴＡｒ，ＴＡｖ及びエンジン回転数ＮＥの状態にあって、エンジン１１を定常運転したときの吸気圧である。なお、定常時吸気圧ＰＭbse は、均質燃焼運転時には実際のスロットル開度ＴＡｒ及びエンジン回転数ＮＥに基づき算出され、成層燃焼運転時には仮想スロットル開度ＴＡｖ及びエンジン回転数ＮＥに基づき算出される。
【００７７】
ＥＣＵ９２は、ステップＳ３０４の処理として、大気圧補正係数Ｋpa１を大気圧ＰＡに基づき図８のマップを参照して算出し、定常時吸気圧ＰＭbse にこの大気圧補正係数Ｋpa１を乗算することにより、補正後吸気圧ＰＭｈを算出する。なお、上記大気圧補正係数Ｋpa１は大気圧ＰＡが高くなるほど大きくなって「１．０」に近づくようになる。従って、補正後吸気圧ＰＭｈは大気圧ＰＡが高くなるほど大きくなる。補正後吸気圧ＰＭｈの算出が行われた後、ステップＳ３０５に進む。
【００７８】
このステップＳ３０５の処理は後のステップＳ３０６，Ｓ３０７の処理と関係している。即ち、ステップＳ３０６の処理では上記補正後吸気圧ＰＭｈを徐変処理することにより徐変値ＰＭＳＭが算出され、ステップＳ３０７の処理では同徐変値ＰＭＳＭが第１の吸気圧記憶値ＰＭＳＭ１として記憶される。そして、上記ステップＳ３０５の処理においては、ＥＣＵ９２が、前回のステップＳ３０７の処理で記憶された第１の吸気圧記憶値ＰＭＳＭ１を前回の徐変値ＰＭＳＭi-1 として設定する。
【００７９】
このように徐変処理（Ｓ３０６）によって算出された徐変値ＰＭＳＭを一旦第１の吸気圧記憶値ＰＭＳＭ１として記憶（Ｓ３０７）するのは、後述するステップＳ３１０の処理で上記徐変値ＰＭＳＭを用いて別の処理を実行し、その処理によって徐変値ＰＭＳＭが変化してしまうためである。この場合でも、上記ステップＳ３０５の処理で第１の吸気圧記憶値ＰＭＳＭ１を前回の徐変値ＰＭＳＭi-1 とすることで、ステップＳ３０６の徐変処理を適切に行うことができるようになる。
【００８０】
上記ステップＳ３０５の処理が実行された後、ＥＣＵ９２は、ステップＳ３０６の処理として、下記の式（４）に基づき今回の徐変値ＰＭＳＭi を算出する。即ち、定常時の補正後吸気圧ＰＭｈから前回の徐変値ＰＭＳＭi-1 を減算して更に所定値ｎで除算し、その除算した値を前回の徐変値ＰＭＳＭiー1 に加算することで今回の徐変値ＰＭＳＭi が算出される。
【００８１】
【数４】
ＰＭＳＭi ＝ＰＭＳＭi-1 ＋（ＰＭｈ−ＰＭＳＭi-1 ）／ｎ    …（４）
ここで、上記補正後吸気圧ＰＭｈの変化に対する徐変値ＰＭＳＭの推移傾向を図９に示す。同図においては補正後吸気圧ＰＭｈの推移を破線で示し、徐変値ＰＭＳＭの推移を太い実線で示す。また、マップ演算等により算出される上記補正後吸気圧ＰＭｈが破線で示すように推移するのに対し、実際の吸気圧ＰＭｒがどのように推移するかを二点鎖線で示す。
【００８２】
この図から明らかなように、例えばアクセル踏込量ＡＣＣＰが変化して上記補正後吸気圧ＰＭｈが破線で示すように変化したとき、その補正後吸気圧ＰＭｈの変化に対して徐変値ＰＭＳＭが太い実線で示すように緩やかに推移するようになる。補正後吸気圧ＰＭｈの変化に対して徐変値ＰＭＳＭがどれほど緩やかに推移するかは、上記式（４）における所定値ｎによって決定される。この所定値ｎは、予め実験等により設定された図示しないマップを参照して上記補正後吸気圧ＰＭｈとエンジン回転数ＮＥとに基づき算出される。
【００８３】
ステップＳ３０６の処理で徐変値ＰＭＳＭが算出され、ステップＳ３０７の処理で第１の吸気圧記憶値ＰＭＳＭ１の記憶が行われると、続いてステップＳ３０８に進む。ステップＳ３０８〜Ｓ３１１の処理は、現時点で吸気バルブ１９の閉弁時における徐変値ＰＭＳＭを予測して算出するためのものである。
【００８４】
ＥＣＵ９２は、ステップＳ３０８の処理として、現時点から吸気バルブ１９の閉弁時までに上記ステップＳ３０６の処理が行われる回数（徐変処理回数）Ｔ／Δｔを算出する。即ち、現時点から吸気バルブ１９の閉弁時までの時間Ｔを求め、その時間Ｔを燃料噴射量算出ルーチンの実行周期Δｔで除算することにより、上記徐変処理回数Ｔ／Δｔを算出する。
【００８５】
続いてＥＣＵ９２は、ステップＳ３０９の処理として現在記憶されている第１の吸気圧記憶値ＰＭＳＭ１、即ち最新の徐変値ＰＭＳＭを前回の徐変値ＰＭＳＭi-1 として設定する。更に、ＥＣＵ９２は、ステップＳ３１０の処理として、上記徐変処理回数Ｔ／Δｔ分だけ上記式（４）による徐変処理を実行し、Ｔ／Δｔ回の徐変処理後の徐変値ＰＭＳＭi 、即ち吸気バルブ１９の閉弁時の徐変値ＰＭＳＭi を算出する。その後、ＥＣＵ９２は、ステップＳ３１１の処理として、徐変値ＰＭＳＭi を第２の吸気圧記憶値ＰＭＳＭ２として記憶する。
【００８６】
今、図９に一点鎖線Ｌ１で示す時点にて上記ステップＳ３０６の処理が行われたとすると、その処理によって算出される今回の徐変値ＰＭＳＭi が第１の吸気圧記憶値ＰＭＳＭ１として記憶される。そして、続いてステップＳ３１０の処理が行われると、二点鎖線Ｌ２で示す吸気バルブ１９の閉弁時における徐変値ＰＭＳＭi が算出され、その徐変値ＰＭＳＭi がほぼ一点鎖線Ｌ１で示す時点にて第２の吸気圧記憶値ＰＭＳＭ２として記憶される。
【００８７】
このように第１及び第２の吸気圧記憶値ＰＭＳＭ１，ＰＭＳＭ２の記憶処理が行われた後には、それら記憶値ＰＭＳＭ１，ＰＭＳＭ２の差ΔＰ１（「ＰＭＳＭ２−ＰＭＳＭ１」）を用いて、吸気バルブ１９の閉弁時における吸気圧を予測して算出することができるようになる。即ち、現時点（一点鎖線Ｌ１）においてバキュームセンサ３６により検出される実際の吸気圧ＰＭｒに、上記第１及び第２の吸気圧記憶値ＰＭＳＭ１，ＰＭＳＭ２の差ΔＰ１を加算することで、吸気バルブ１９の閉弁時における吸気圧が得られるようになる。
【００８８】
ところで、バキュームセンサ３６の出力には吸気通路３２内を流れる空気の脈動による影響が生じるため、その影響を除去するために通常はバキュームセンサ３６の出力をＣＲフィルタ等によってフィルタ処理する。従って、上記吸気圧ＰＭｒは実際にはＣＲフィルタ等によるフィルタ処理の時定数分だけ適正値からずれることになり、そのずれの分だけ上記予測される吸気バルブ１９の閉弁時の吸気圧が不正確になる。
【００８９】
吸気圧算出ルーチンにおけるステップＳ３１２（図７）〜Ｓ３１５の処理は、上記吸気圧ＰＭｒのずれを考慮して第１の吸気圧記憶値ＰＭＳＭ１をフィルタ処理し、そのフィルタ出力ＰＭＳＭ１Ｓi を用いて吸気バルブ１９の閉弁時の吸気圧を正確に予測するためのものである。
【００９０】
ＥＣＵ９２は、上記ステップＳ３１１（図６）の処理を実行した後、ステップＳ３１２（図７）の処理として現在の燃焼方式が均質燃焼であるか否かを判断し、均質燃焼であればステップＳ３１３に進む。ＥＣＵ９２は、ステップＳ３１３の処理として、第１の吸気圧記憶値ＰＭＳＭ１を下記の式（５）に基づきフィルタ処理する。なお、式（５）において、ＰＭＳＭ１Ｓi は第１の吸気圧記憶値ＰＭＳＭ１のフィルタ出力であり、所定値ｍは当該フィルタ処理の時定数が上記ＣＲフィルタによるフィルタ処理の時定数と等しくなるように設定されるものである。
【００９１】
【数５】
ＰＭＳＭ１Ｓi
＝ＰＭＳＭ１Ｓi-1 ＋（ＰＭＳＭ１−ＰＭＳＭ１Ｓi-1 ）／ｍ    …（５）
この式（５）に基づくフィルタ処理のフィルタ出力ＰＭＳＭ１Ｓi は、図９に太い実線で示すように徐変値ＰＭＳＭ（第１の吸気圧記憶値ＰＭＳＭ１）が変化したときには、図中に細い実線で示すように推移することとなる。
【００９２】
続いてＥＣＵ９２は、ステップＳ３１４の処理として、第２の吸気圧記憶値ＰＭＳＭ２から上記フィルタ出力ＰＭＳＭ１Ｓi を減算し、それらの差ΔＰ２を算出する。更に、ＥＣＵ９２は、ステップＳ３１５の処理として、実際の吸気圧ＰＭｒに上記差ΔＰ２加算し、その加算した値に更に体積効率ηｖを乗算した値を、吸気バルブ１９の閉弁時における吸気圧である予測吸気圧ＰＭＦＷＤとして算出する。なお、上記体積効率ηｖは前回の予測吸気圧ＰＭＦＷＤとエンジン回転数ＮＥとに基づきマップを参照して算出されるものである。こうして予測吸気圧ＰＭＦＷＤを算出した後、当該吸気圧算出ルーチンを一旦終了して燃料噴射量算出ルーチン（図４）に戻る。
【００９３】
従って、図９に一点鎖線Ｌ１で示す時点にて第１及び第２の吸気圧記憶値ＰＭＳＭ１，ＰＭＳＭ２の記憶処理が行われた場合、その時点での第１の吸気圧記憶値ＰＭＳＭ１のフィルタ出力ＰＭＳＭ１Ｓi が予測吸気圧ＰＭＦＷＤを算出に用いられる。即ち、一点鎖線Ｌ１で示す時点での第２の吸気圧記憶値ＰＭＳＭ２とフィルタ出力ＰＭＳＭ１Ｓi との差ΔＰ２を実際の吸気圧ＰＭｒに加算することで予測吸気圧ＰＭＦＷＤが算出される。
【００９４】
このように第１の吸気圧記憶値ＰＭＳＭ１に代えてフィルタ出力ＰＭＳＭ１Ｓi を用いて差ΔＰ２を算出し、その差ΔＰ２等から予測吸気圧ＰＭＦＷＤを求めることで、同吸気圧ＰＭｒにＣＲフィルタの時定数に応じたずれが生じても、その予測吸気圧ＰＭＦＷＤを正確な吸気バルブ１９の閉弁時の吸気圧として算出することができるようになる。
【００９５】
一方、上記ステップＳ３１２の処理において、現在の燃焼方式が均質燃焼でなく成層燃焼である旨判断されると、ステップＳ３１６に進む。ＥＣＵ９２は、ステップＳ３１６の処理として、第２の吸気圧記憶値ＰＭＳＭ２に体積効率ηｖを乗算した値を仮想吸気圧ＰＭｖとして算出する。なお、上記体積効率ηｖは前回の仮想吸気圧ＰＭｖとエンジン回転数ＮＥとに基づきマップを参照して算出されるものである。こうして仮想吸気圧ＰＭｖを算出した後、当該吸気圧算出ルーチンを一旦終了して燃料噴射量算出ルーチン（図４）に戻る。
【００９６】
上記算出される仮想吸気圧ＰＭｖは、現在の機関運転状態にて「均質燃焼」を実行したと仮定した場合（「仮想均質燃焼」）での吸気バルブ１９の閉弁時の吸気圧、即ち上記予測吸気圧ＰＭＦＷＤに対応した仮想値ということになる。均質燃焼運転時には、予測吸気圧ＰＭＦＷＤが実際の吸気圧ＰＭｒ等に基づき算出されるため、ステップＳ３１２〜Ｓ３１５の処理を行って同予測吸気圧ＰＭＦＷＤを正確に算出するようにしている。これに対し、成層燃焼運転時には、仮想吸気圧ＰＭｖが実際の吸気圧ＰＭｒに関係なく、第２の吸気圧記憶値ＰＭＳＭ２等にづき算出される。こうして算出される仮想吸気圧ＰＭｖは、ステップＳ３１６の処理によって正確な値として算出されるようになる。
【００９７】
次に、集約目標スロットル開度ＴＡｔの算出手順について図１０を参照して説明する。図１０は、集約目標スロットル開度ＴＡｔを算出するための集約目標スロットル開度ルーチンを示すフローチャートである。この集約目標スロットル開度算出ルーチンは、ＥＣＵ９２を通じて例えば所定時間毎の時間割り込みにて実行される。
【００９８】
集約目標スロットル開度算出ルーチンにおいては、ステップＳ４０５の処理で、基本スロットル開度ＴＡbse 、ＩＳＣ開度補正量ｆ（ｑｃａｌ）、及びその他の補正量Ａを用いて、下記の式（６）に基づき集約目標スロットル開度ＴＡｔが算出される。
【００９９】
【数６】
ＴＡｔ＝ＴＡbse ＋ｆ（ｑｃａｌ）＋Ａ      …（６）
ところで、上記式（６）において、ＩＳＣ開度補正量ｆ（ｑｃａｌ）は、機関出力トルクを調整してアイドル回転数を制御するためのものである。このＩＳＣ開度補正量ｆ（ｑｃａｌ）は、ＩＳＣ補正量ｑｃａｌ及び変換係数Ｋａに基づき下記の式（７）によって算出される。
【０１００】
【数７】
ｆ（ｑｃａｌ）＝ｑｃａｌ＊Ｋａ      …（７）
式（７）において、ＩＳＣ補正量ｑｃａｌは、アイドル回転数の調整量に対応した無次元のパラメータである。そして、変換係数Ｋａは、上記ＩＳＣ補正量ｑｃａｌをアイドル回転数の調整に必要とされる機関出力トルクの変化量、即ちスロットル開度の調整量に変換するためのものである。
【０１０１】
アイドル回転数の調整は、上記ＩＳＣ補正量ｑｃａｌを増減させることによって行われる。このＩＳＣ補正量ｑｃａｌの増減に伴いＩＳＣ開度補正量ｆ（ｑｃａｌ）が変化すると、集約目標スロットル開度ＴＡｔも変化することとなる。この集約目標スロットル開度ＴＡｔは、「均質燃焼」時の機関出力トルクに影響を及ぼすパラメータである目標スロットル開度ＴＡｓｊ、及び「成層燃焼」時の機関出力トルクに影響を及ぼすパラメータである最終燃料噴射量Ｑfin にそれぞれ関係している。そのため、集約目標スロットル開度ＴＡｔをＩＳＣ開度補正量ｆ（ｑｃａｌ）の増減により変化させることで、いずれの燃焼方式であっても機関出力トルクが変化してアイドル回転数が調整される。
【０１０２】
上記ＩＳＣ開度補正量ｆ（ｑｃａｌ）を算出するためのＩＳＣ補正量ｑｃａｌは、フィードバック補正項ｑｉ、計算用学習値ｑｇ、及び水温補正項ｑｔｈｗ等に基づき、下記の式（８）によって算出される。
【０１０３】
【数８】
ｑｃａｌ＝ｑｉ＋ｑｇ＋ｑｔｈｗ      …（８）
式（８）において、フィードバック補正項ｑｉは、アイドル回転数を予め定められた目標値（例えば６００ｒｐｍ）に近づけるべく、アイドル運転時のエンジン回転数ＮＥに応じて所定の基準値（本実施形態では「０」）を中心に増減する値である。
【０１０４】
即ち、フィードバック補正項ｑｉは、アイドル回転数が目標値よりも低ければ大きくされる。その結果、ＩＳＣ補正量ｑｃａｌ及びＩＳＣ開度補正量ｆ（ｑｃａｌ）が大きくなり、ＩＳＣ開度補正量ｆ（ｑｃａｌ）等に基づき算出される集約目標スロットル開度ＴＡｔが開き側の値へと変化する。「均質燃焼」であれ、「成層燃焼」であれ、上記のように集約目標スロットル開度ＴＡｔが開き側の値に変化することにより、機関出力トルクが増大してアイドル回転数が目標値に向けて上昇する。
【０１０５】
「均質燃焼」時には、上記集約目標スロットル開度ＴＡｔが目標スロットル開度ＴＡｓｊに代入されるため、この目標スロットル開度ＴＡｓｊに基づきスロットル開度制御を行うことで予測吸気圧ＰＭＦＷＤ（吸入空気量）が増大する。その結果、予測吸気圧ＰＭＦＷＤ等に基づき決定される最終燃料噴射量Ｑfin が多くなって機関出力トルクが増大し、アイドル回転数が目標値に向かって上昇する。
【０１０６】
上記と異なり、「成層燃焼」時には、上記集約目標スロットル開度ＴＡｔ等に基づき、「仮想均質燃焼」時のスロットル開度である仮想スロットル開度ＴＡｖが算出される。更に、「仮想均質燃焼」時にスロットル開度を上記仮想スロットル開度ＴＡｖとしたときの吸気圧（吸入空気量）である仮想吸気圧ＰＭｖが上記仮想スロットル開度ＴＡｖ等に基づき算出される。そのため、ＩＳＣ開度補正量ｆ（ｑｃａｌ）により集約目標スロットル開度ＴＡｔが開き側の値に変化すると仮想吸気圧ＰＭｖが増大する。その結果、同仮想吸気圧ＰＭｖ等に応じて決定される最終燃料噴射量Ｑfin が多くなり、機関出力トルクが増大してアイドル回転数が目標値に向かって上昇する。
【０１０７】
また、上記フィードバック補正項ｑｉは、アイドル回転数が目標値よりも高ければ小さくされる。その結果、ＩＳＣ補正量ｑｃａｌ及びＩＳＣ開度補正量ｆ（ｑｃａｌ）が小さくなり、ＩＳＣ開度補正量ｆ（ｑｃａｌ）等に基づき算出される集約目標スロットル開度ＴＡｔが閉じ側の値へと変化する。「均質燃焼」であれ、「成層燃焼」であれ、上記のように集約目標スロットル開度ＴＡｔが閉じ側の値に変化することにより、機関出力トルクが減少してアイドル回転数が目標値に向けて下降する。
【０１０８】
「均質燃焼」時には、上記集約目標スロットル開度ＴＡｔが目標スロットル開度ＴＡｓｊに代入されるため、この目標スロットル開度ＴＡｓｊに基づきスロットル開度制御を行うことで予測吸気圧ＰＭＦＷＤ（吸入空気量）が減少する。その結果、予測吸気圧ＰＭＦＷＤ等に基づき決定される最終燃料噴射量Ｑfin が少なくなって機関出力トルクが減少し、アイドル回転数が目標値に向かって下降する。
【０１０９】
上記と異なり、「成層燃焼」時には、上記集約目標スロットル開度ＴＡｔ等に基づき仮想スロットル開度ＴＡｖが算出され、この仮想スロットル開度ＴＡｖ等に基づき仮想吸気圧ＰＭｖが算出される。そのため、ＩＳＣ開度補正量ｆ（ｑｃａｌ）により集約目標スロットル開度ＴＡｔが閉じ側の値に変化すると仮想吸気圧ＰＭｖが減少する。その結果、同仮想吸気圧ＰＭｖ等に応じて決定される最終燃料噴射量Ｑfin が少なくなり、機関出力トルクが減少してアイドル回転数が目標値に向かって下降する。
【０１１０】
上記式（８）中の計算用学習値ｑｇは、アイドル運転時に上記フィードバック補正項ｑｉが基準値「０」を含む所定範囲（本実施形態では「−γ＜ｑｉ＜γ」）内に収束するように、フィードバック補正項ｑｉに基づき基準値「０」を中心に増減する値である。
【０１１１】
即ち、計算用学習値ｑｇは、フィードバック補正項ｑｉが上記所定範囲よりも小さい側に外れていれば小さくされる。その結果、上記式（８）から明らかなように、アイドル回転数が目標値と一致する状態にＩＳＣ補正量ｑｃａｌを維持した条件のもとでは、計算用学習値ｑｇが小さくなるとフィードバック補正項ｑｉが大きくなり、同補正項ｑｉが上記所定範囲内へと収束するようになる。
【０１１２】
また、計算用学習値ｑｇは、フィードバック補正項ｑｉが上記所定範囲よりも大きい側に外れていれば大きくされる。その結果、上記式（８）から明らかなように、アイドル回転数が目標値と一致する状態にＩＳＣ補正量ｑｃａｌを維持した条件のもとでは、計算用ＩＳＣ補正量ｑｃａｌが大きくなるとフィードバック補正項ｑｉが小さくなり、同補正項ｑｉが上記所定範囲内へと収束するようになる。
【０１１３】
なお、上記式（８）中の水温補正項ｑｔｈｗは、エンジン１１の冷却水温ＴＨＷに応じて増減するものである。
このようにＩＳＣ補正量ｑｃａｌはフィードバック補正項ｑｉ、計算用学習値ｑｇ、及び水温補正項ｑｔｈｗ等から算出されるが、このうちの計算用学習値ｑｇは、燃焼方式毎に均質用学習値ｑｇｓｊと成層用学習値ｑｇｔｊとが用意されている。
【０１１４】
そして、「均質燃焼」時には均質用学習値ｑｇｓｊが計算用学習値ｑｇに代入され、同均質用学習値ｑｇｓｊの学習が行われる。即ち、「均質燃焼」でのアイドル運転時にフィードバック補正項ｑｉを所定範囲内に収束させるために上記計算用学習値ｑｇの増減が行われ、その増減後の計算用学習値ｑｇが均質用学習値ｑｇｓｊに代入される。この場合、フィードバック補正項ｑｉが所定範囲内に収束したときに均質用学習値ｑｇｓｊの学習が完了することとなる。
【０１１５】
エンジン１１の吸気系に経年変化等が生じて吸入空気量が適正値から外れると、「均質燃焼」でのアイドル運転時においては機関出力トルクが適正値からずれてアイドル回転数が目標値から外れることとなる。このアイドル回転数を目標値に近づけるべくフィードバック補正項ｑｉが増減され、更にフィードバック補正項ｑｉが所定範囲内に収束するよう計算用学習値ｑｇ（均質用学習値ｑｇｓｊ）が増減される。そして、フィードバック補正項ｑｉが所定範囲内に収束して均質用学習値ｑｇｓｊの学習が完了したとき、その均質用学習値ｑｇｓｊは上記吸入空気量の適正値からのずれ量に対応する値となる。
【０１１６】
従って、この均質用学習値ｑｇｓｊを以降のスロットル開度制御に反映することで、上記吸入空気量の適正値に対するずれを補償することが可能になる。均質用学習値ｑｇｓｊをスロットル開度制御に反映するには、同均質用学習値ｑｇｓｊを計算用学習値ｑｇとしてＩＳＣ補正量ｑｃａｌに反映する。このＩＳＣ補正量ｑｃａｌは、ＩＳＣ開度補正量ｆ（ｑｃａｌ）として集約目標スロットル開度ＴＡｔに反映される。「均質燃焼」時には、この集約目標スロットル開度ＴＡｔが代入される「均質燃焼」時の目標スロットル開度ＴＡｓｊに基づきスロットル開度制御が行われるため、このスロットル開度制御に上記均質用学習値ｑｇｓｊが反映される。
【０１１７】
また、「成層燃焼」時には成層用学習値ｑｇｔｊが計算用学習値ｑｇに代入され、同成層用学習値ｑｇｔｊの学習が行われる。即ち、「成層燃焼」でのアイドル運転時にフィードバック補正項ｑｉを所定範囲内に収束させるために上記計算用学習値ｑｇの増減が行われ、その増減後の計算用学習値ｑｇが成層用学習値ｑｇｔｊに代入される。この場合、フィードバック補正項ｑｉが所定範囲内に収束したときに成層用学習値ｑｇｔｊの学習が完了することとなる。
【０１１８】
エンジン１１の燃料系に経年変化等が生じて燃料噴射量が適正値から外れると、「成層燃焼」でのアイドル運転時においては機関出力トルクが適正値からずれてアイドル回転数が目標値からずれることとなる。このアイドル回転数を目標値に近づけるべくフィードバック補正項ｑｉが増減され、更にフィードバック補正項ｑｉが所定範囲内に収束するよう計算用学習値ｑｇ（成層用学習値ｑｇｔｊ）が増減される。そして、フィードバック補正項ｑｉが所定範囲内に収束して成層用学習値ｑｇｔｊの学習が完了したとき、その成層用学習値ｑｇｔｊは上記燃料噴射量の適正値からのずれ量に対応する値となる。
【０１１９】
従って、この成層用学習値ｑｇｔｊを燃料噴射制御に反映することで、上記燃料噴射量適正値に対するずれを補償することが可能になる。
ところで、成層用学習値ｑｇｔｊを燃料噴射制御に反映させるに際し、同成層用学習値ｑｇｔｊを計算用学習値ｑｇとしてＩＳＣ補正量ｑｃａｌに反映させると、このＩＳＣ補正量ｑｃａｌは、ＩＳＣ開度補正量ｆ（ｑｃａｌ）として集約目標スロットル開度ＴＡｔに反映されることとなり、これに伴い燃焼方式間での機関出力トルクに段差が生じてしまう。
【０１２０】
燃焼方式に応じて計算用学習値ｑｇとして均質用学習値ｑｇｓｊと成層用学習値ｑｇｔｊとを切り換えてＩＳＣ補正量ｑｃａｌに反映させた場合の均質用学習値ｑｇｓｊ及び成層用学習値ｑｇｔｊに対する集約目標スロットル開度ＴＡｔの関係を図１１に示す。なお、図１１（ａ）は、均質用学習値ｑｇｓｊ及び成層用学習値ｑｇｔｊを示すものであり、図１１（ｂ）の実線は、エンジン１１が定常状態であるときに同一機関運転状態のもとでの「均質燃焼」時において算出される集約目標スロットル開度ＴＡｔを示すものである。
【０１２１】
図１１（ａ）に示すように、均質用学習値ｑｇｓｊと成層用学習値ｑｇｔｊとは、吸入空気量と燃料噴射量といった異なる制御系に対応し、それぞれ吸入空気量の適正値からのずれ量、及び燃料噴射量の適正値からのずれ量に対応する値となることから、異なる値になることがある。即ち、吸入空気量の適正値に対するずれと燃料噴射量の適正値に対するずれとが互いに異なるものである場合、それらのずれを補償するための均質用学習値ｑｇｓｊ及び成層用学習値ｑｇｔｊも互いに異なる値になる。その結果、「均質燃焼」と「成層燃焼」とで集約目標スロットル開度ＴＡｔに反映されるＩＳＣ補正量ｑｃａｌも異なる値となり、図１１（ｂ）の実線に示すように、「均質燃焼」時において算出される集約目標スロットル開度ＴＡｔ及び「成層燃焼」時において算出される集約目標スロットル開度ＴＡｔも異なる値となる。
【０１２２】
ところで、集約目標スロットル開度ＴＡｔは、燃焼方式間で機関出力トルクを合致させるために、同一機関運転状態である条件下では図１１（ｂ）に破線で示されるように「均質燃焼」時と「成層燃焼」時とで等しい値とすべきである。
【０１２３】
そこで本実施形態では、集約目標スロットル開度ＴＡｔに対し、「成層燃焼」時に成層用学習値ｑｇｔｊを反映させる代わりに、「成層燃焼」時にも均質用学習値ｑｇｓｊを反映させる。これにより、「成層燃焼」時の集約目標スロットル開度ＴＡｔが図１１（ｂ）に破線で示す値となり、「均質燃焼」時において実線で示す値となる同「均質燃焼」時の集約目標スロットル開度ＴＡｔと合致する。この場合、集約目標スロットル開度ＴＡｔ等に基づき制御される「成層燃焼」時の燃料噴射量が均質用学習値ｑｇｓｊに対応したものとなり、このままでは燃料噴射量の適正値に対するずれを補償できない。そのため、上記式（３）に基づき「成層燃焼」時の最終燃料噴射量Ｑfin を補正することで、均質用学習値ｑｇｓｊと成層用学習値ｑｇｔｊとのずれ量に対応した燃料量を加味して「成層燃焼」時の燃料噴射量を制御する。
【０１２４】
このように集約目標スロットル開度ＴＡｔ及び燃料噴射量に対し、均質用学習値ｑｇｓｊ及び成層用学習値ｑｇｔｊを反映することで、吸入空気量や燃料噴射量の適正値に対するずれを補償しつつ、燃焼方式間で機関出力トルクを合わせることができるようになる。
【０１２５】
さて、説明を集約目標スロットル開度算出ルーチン（図１０）に戻す。
集約目標スロットル開度算出ルーチンにおいて、ＥＣＵ９２は、ステップＳ４０１の処理として、現在の燃焼方式に係わらず現在のアクセル踏込量ＡＣＣＰ及びエンジン回転数ＮＥに基づき「均質燃焼」時の基本スロットル開度ＴＡbse を算出する。その後、ステップＳ４０２に進む。
【０１２６】
ＥＣＵ９２は、ステップＳ４０２の処理として、計算用学習値ｑｇに均質用学習値ｑｇｓｊを代入した後、ステップＳ４０３に進む。
ＥＣＵ９２は、ステップＳ４０３の処理として上記式（８）によりＩＳＣ補正量ｑｃａｌを算出し、ステップＳ４０４の処理として上記式（７）によりＩＳＣ開度補正量ｆ（ｑｃａｌ）を算出する。続いて、ＥＣＵ９２は、ステップＳ４０５の処理として、上記式（６）により集約目標スロットル開度ＴＡｔを算出した後、この集約目標スロットル開度算出ルーチンを一旦終了する。
【０１２７】
次に、均質用学習値ｑｇｓｊ及び成層用学習値ｑｇｔｊの学習手順について図１２及び図１３を参照して説明する。図１２及び図１３は、均質用学習値ｑｇｓｊ及び成層用学習値ｑｇｔｊの学習を行うためのＩＳＣ学習ルーチンを示すフローチャートである。このＩＳＣ学習ルーチンは、ＥＣＵ９２を通じて例えば所定時間毎の時間割り込みにて実行される。
【０１２８】
ＩＳＣ学習ルーチンにおいては、ステップＳ５０１（図１２）の処理で学習値ｑｇｔｊ，ｑｇｓｊの増減（学習）が可能か否か、即ち学習条件が成立しているか否かが判断される。そして、ステップＳ５０２〜Ｓ５０４の処理で、燃焼方式に応じて計算用学習値ｑｇに成層用学習値ｑｇｔｊ、若しくは均質用学習値ｑｇｓｊが代入される。更に、Ｓ５０５〜Ｓ５０８の処理で上記計算用学習値ｑｇがフィードバック補正項ｑｉを所定範囲（本実施形態では「−γ＜ｑｉ＜γ」）内に収束させるべく増減される。また、ステップＳ５０９〜Ｓ５１７（図１３）では、フィードバック補正項ｑｉを所定範囲に収束させるための計算用学習値ｑｇの操作を行った後の同学習値ｑｇが、燃焼方式に応じて成層用学習値ｑｇｔｊ、若しくは均質用学習値ｑｇｓｊに代入される。これにより、燃焼方式毎にそれぞれ別々にＩＳＣ学習値を持つことが可能になる。
【０１２９】
さて、ＩＳＣ学習ルーチンにおいて、ＥＣＵ９２は、ステップＳ５０１の処理として、ＩＳＣ学習条件が成立しているか否か、即ち例えば以下に示す各種条件が全て成立しているか否かを判断する。
【０１３０】
・ＩＳＣフィードバック制御中であること
・エンジン回転数ＮＥの変動が小さいこと
・その他の外乱がないこと
そして、上記各条件の内のいずれか一つでも満たされていなければ、ＥＣＵ９２は、このＩＳＣ学習ルーチンを一旦終了する。上記各条件が全て満たされていれば、ステップＳ５０２に進む。
【０１３１】
ＥＣＵ９２は、ステップＳ５０２の処理として、成層燃焼運転中であるか否かを判断する。そして、成層燃焼運転中であればステップＳ５０３の処理として計算用学習値ｑｇに成層用学習値ｑｇｔｊを代入し、成層燃焼運転中でなく均質燃焼運転中であればステップＳ５０４の処理として計算用学習値ｑｇに均質用学習値ｑｇｓｊを代入する。こうして計算用学習値ｑｇを燃焼方式に対応したものとした後、ステップＳ５０５以降の処理を実行する。
【０１３２】
ＥＣＵ９２は、ステップＳ５０５の処理として、フィードバック補正項ｑｉが所定値γよりも大きいか否かを判断する。そして、「ｑｉ＞γ」であってフィードバック補正項ｑｉが所定範囲「−γ〜γ」に対し大きい側に外れている旨判断されると、ステップＳ５０６の処理として計算用学習値ｑｇに所定値ａを加算する。こうして計算用学習値ｑｇを大きくすると、アイドル回転数が目標値に一致する状態にＩＳＣ補正量ｑｃａｌを維持した条件のもとでは、フィードバック補正項ｑｉが所定範囲「−γ〜γ」内に向かって小さくなる。
【０１３３】
また、上記ステップＳ５０５の処理において「ｑｉ＞γ」でない旨判断されると、ステップＳ５０７に進んでフィードバック補正項ｑｉが所定値−γ未満であるか否かを判断する。そして、「ｑｉ＜−γ」であってフィードバック補正項ｑｉが所定範囲「−γ〜γ」に対し小さい側に外れている旨判断されると、ステップＳ５０８の処理として計算用学習値ｑｇから所定値ａを減算する。こうして計算用学習値ｑｇを小さくすると、アイドル回転数が目標値に一致する状態にＩＳＣ補正量ｑｃａｌを維持した条件のもとでは、フィードバック補正項ｑｉが所定範囲「−γ〜γ」内に向かって大きくなる。
【０１３４】
このようにフィードバック補正項ｑｉを所定範囲「−γ〜γ」内に収束させるための計算用学習値ｑｇの増減を行った後、ステップＳ５０９（図１３）に進む。ＥＣＵ９２は、ステップＳ５０９の処理として、成層燃焼運転中か否かを判断する。そして、成層燃焼運転中であればステップＳ５１０の処理として成層用学習値ｑｇｔｊに現在の計算用学習値ｑｇを代入し、成層燃焼運転中でなく均質燃焼運転中であればステップＳ５１４の処理として均質用学習値ｑｇｓｊに現在の計算用学習値ｑｇを代入する。このように計算用学習値ｑｇの成層用学習値ｑｇｔｊ、若しくは均質用学習値ｑｇｓｊへの代入を行うことで、燃焼方式毎にそれぞれ別々にＩＳＣ学習値を持つことが可能になる。
【０１３５】
なお、成層用学習値ｑｇｔｊ、及び均質用学習値ｑｇｓｊはバックアップＲＡＭ９６に記憶される。そして、「成層燃焼」時にフィードバック補正項ｑｉが上記所定範囲内に収束したときに成層用学習値ｑｇｔｊの学習が完了し、「均質燃焼」時にフィードバック補正項ｑｉが上記所定範囲内に収束したときに均質用学習値ｑｇｓｊの学習が完了する。
【０１３６】
ＩＳＣ学習ルーチンにおいて、上記ステップＳ５１０の処理が行われた後には、ステップＳ５１１〜Ｓ５１３の処理が行われる。これらの処理は、成層用学習値ｑｇｔｊの学習が行われるとき、この成層用学習値ｑｇｔｊを所定条件のもとで均質用学習値ｑｇｓｊに反映し、均質用学習値ｑｇｓｊの学習を早期に完了させるためのものである。
【０１３７】
ＥＣＵ９２は、ステップＳ５１１の処理として、均質用学習値ｑｇｓｊの学習を早期に行う必要があるか否かの判断基準であるスピードアップ条件が成立しているか否かを判断する。こうした条件としては、
・バッテリの交換がなされたとき
・均質用学習値ｑｇｓｊや成層用学習値ｑｇｔｊが過度に基準値「０」から離れた値になるとき
等々があげられる。
【０１３８】
なお、上記のようなスピードアップ条件がいずれか一つでも成立したときは、均質用学習値ｑｇｓｊ及び成層用学習値ｑｇｔｊが初期値に戻されているときである。この初期値は、均質用学習値ｑｇｓｊ及び成層用学習値ｑｇｔｊの基準値「０」よりも大きい値に設定されている。そのため、上記条件の成立時には均質用学習値ｑｇｓｊ及び成層用学習値ｑｇｔｊの学習を素早く行い、早期に均質用学習値ｑｇｓｊ及び成層用学習値ｑｇｔｊを基準値「０」側へ向かって小さくする必要がある。
【０１３９】
ステップＳ５１１の処理において、スピードアップ条件が成立していない旨判断されると当該ＩＳＣ学習ルーチンを一旦終了し、同条件が成立している旨判断されるとステップＳ５１２に進む。ＥＣＵ９２は、ステップＳ５１２の処理として、このとき計算用学習値ｑｇ（成層用学習値ｑｇｔｊ）に所定値αを加算した値（「ｑｇ＋α」）に対し、現在の均質用学習値ｑｇｓｊが大きいか否かを判断する。
【０１４０】
そして、「ｑｇｓｊ＞ｑｇ＋α」でなく均質用学習値ｑｇｓｊが基準値「０」に対して過度に大きい値でない旨判断されると当該ＩＳＣ学習ルーチンを一旦終了し、「ｑｇｓｊ＞ｑｇ＋α」であって均質用学習値ｑｇｓｊが基準値「０」に対して過度に大きい値である旨判断されるとステップＳ５１３に進む。ＥＣＵ９２は、ステップＳ５１３の処理として、現在の均質用学習値ｑｇｓｊに上記「ｑｇ＋α」という値を代入した後、このＩＳＣ学習ルーチンを一旦終了する。このように成層用学習値ｑｇｔｊを均質用学習値ｑｇｓｊに反映させることで、同均質用学習値ｑｇｓｊの学習を早期に完了することができる。
【０１４１】
ＩＳＣ学習ルーチンにおいて、上記ステップＳ５１４の処理が行われた後には、ステップＳ５１５〜Ｓ５１７の処理が行われる。これらの処理は、均質用学習値ｑｇｓｊの学習が行われるとき、この均質用学習値ｑｇｓｊを所定条件のもとで成層用学習値ｑｇｔｊに反映し、成層用学習値ｑｇｔｊの学習を早期に完了させるためのものである。
【０１４２】
ＥＣＵ９２は、ステップＳ５１５の処理として、均質用学習値ｑｇｓｊの学習を早期に行う必要があるか否かの判断基準であるスピードアップ条件が成立しているか否かを判断する。こうした条件としては、ステップＳ５１１の条件と同じものがあげられる。
【０１４３】
ステップＳ５１５の処理において、スピードアップ条件が成立していない旨判断されると当該ＩＳＣ学習ルーチンを一旦終了し、同条件が成立している旨判断されるとステップＳ５１６に進む。ＥＣＵ９２は、ステップＳ５１６の処理として、このとき計算用学習値ｑｇ（均質用学習値ｑｇｓｊ）に所定値αを加算した値（「ｑｇ＋α」）に対し、現在の成層用学習値ｑｇｔｊが大きいか否かを判断する。
【０１４４】
そして、「ｑｇｔｊ＞ｑｇ＋α」でなく成層用学習値ｑｇｔｊが基準値「０」に対して過度に大きい値でない旨判断されると当該ＩＳＣ学習ルーチンを一旦終了し、「ｑｇｔｊ＞ｑｇ＋α」であって成層用学習値ｑｇｔｊが基準値「０」に対して過度に大きい値である旨判断されるとステップＳ５１７に進む。ＥＣＵ９２は、ステップＳ５１７の処理として、現在の成層用学習値ｑｇｔｊに上記「ｑｇ＋α」という値を代入した後、このＩＳＣ学習ルーチンを一旦終了する。このように均質用学習値ｑｇｓｊを成層用学習値ｑｇｔｊに反映させることで、同成層用学習値ｑｇｔｊの学習を早期に完了することができる。
【０１４５】
上記ＩＳＣ学習ルーチンにより学習される成層用学習値ｑｇｔｊ、及び均質用学習値ｑｇｓｊは、最終噴射量算出ルーチンにおけるステップＳ２０６（図５）の処理での上記式（３）に用いられる。
【０１４６】
即ち、式（３）において、最終燃料噴射量Ｑfin に加算される項である「｛（ｑｇｔｊ／ｑｇｓｊ）−１｝＊Ｃ＊（６００／ＮＥ）」にて、成層用学習値ｑｇｔｊ、及び均質用学習値ｑｇｓｊが用いられる。最終燃料噴射量Ｑfin は集約目標スロットル開度ＴＡｔ等に基づき算出されるが、この集約目標スロットル開度ＴＡｔの算出に用いられる計算用学習値ｑｇは、均質用学習値ｑｇｓｊに固定される。
【０１４７】
従って、成層燃焼運転時には「成層燃焼」中であるにもかかわらず、上記集約目標スロットル開度ＴＡｔ等に基づき算出される最終燃料噴射量Ｑfin が均質用学習値ｑｇｓｊに対応したものとなる。そのため、「成層燃焼」時には、上記「｛（ｑｇｔｊ／ｑｇｓｊ）−１｝＊Ｃ＊（６００／ＮＥ）」という項を最終燃料噴射量Ｑfin に加算することで、同最終燃料噴射量Ｑfin を適切なものへと補正する。即ち、上記「｛（ｑｇｔｊ／ｑｇｓｊ）−１｝＊Ｃ＊（６００／ＮＥ）」という項は、均質用学習値ｑｇｓｊと成層用学習値ｑｇｔｊとのずれ量に対応した燃料量の分であって、この項を加味して最終燃料噴射量Ｑfin を算出することにより、燃料噴射量制御に成層用学習値ｑｇｔｊが加味されて燃料噴射量の適正値に対するずれが補償される。
【０１４８】
以上詳述した処理が行われる本実施形態によれば、以下に示す効果が得られるようになる。
（１）「均質燃焼」時には、吸入空気量の適正値からのずれ量に対応する値として学習された均質用学習値ｑｇｓｊを加味して、「均質燃焼」時におけるスロットル開度制御の制御目標値である目標スロットル開度ＴＡｓｊ（集約目標スロットル開度ＴＡｔ）が算出される。そのため、上記目標スロットル開度ＴＡｓｊ等に基づきスロットル開度制御を行うことで、吸入空気量の適正値に対するずれを的確に補償することができる。
【０１４９】
また、「成層燃焼」時において、均質用学習値ｑｇｓｊを加味して「仮想均質燃焼」時の仮想スロットル開度ＴＡｖ及び仮想吸気圧ＰＭｖ（仮想吸入空気量）が算出される。そして、仮想吸気圧ＰＭｖ等に基づき基本燃料噴射量Ｑbse が算出され、この基本燃料噴射量Ｑbse 等に基づき成層用学習値ｑｇｔｊを加味して燃料噴射量の制御目標値である最終燃料噴射量Ｑfin が算出される。
【０１５０】
上記のように均質用学習値ｑｇｓｊの加味された仮想吸気圧ＰＭｖに基づき基本燃料噴射量Ｑbse を算出することで、「成層燃焼」時における燃料噴射量の制御目標値である上記最終燃料噴射量Ｑfin がこのとき「均質燃焼」を実行した場合に得られる機関出力トルクに関連付けられる。そして、この最終燃料噴射量Ｑfin に基づき「成層燃焼」時の燃料噴射量が制御されるため、「成層燃焼」時の機関出力トルクが、このとき「均質燃焼」を行った場合での機関出力トルクに的確に合致するようになる。
【０１５１】
更に、「成層燃焼」時には、最終燃料噴射量Ｑfin が基本燃料噴射量Ｑbse 等に基づき成層用学習値ｑｇｔｊを加味して算出されることで、同最終燃料噴射量Ｑfin に成層用学習値ｑｇｔｊが反映され、これにより燃料噴射量の適正値に対するずれを的確に補償することができる。
【０１５２】
従って、アイドル回転数を制御するための制御量である吸入空気量及び燃料噴射量の適正値に対するずれを補償しつつ、燃焼方式間で機関出力トルクを合わせることができる。こうした燃焼方式間での機関出力トルクが食い違う場合、これによるトルクショックを感じやすいのは自動車の減速中での燃焼方式の切換時などであるが、上記のように燃焼方式間で機関出力トルクを合わせることにより、自動車の減速中での燃焼方式切換時にトルクショックを感じることがなくなる。
【０１５３】
（２）「成層燃焼」時には、均質用学習値ｑｇｓｊが加味された仮想吸気圧ＰＭｖに基づき最終燃料噴射量Ｑfin （基本燃料噴射量Ｑbse ）が算出されるが、最終的には上記式（３）において「ｑｇｔｊ／ｑｇｓｊ」という項により、最終燃料噴射量Ｑfin が成層用学習値ｑｇｔｊと均質用学習値ｑｇｓｊとの両方を加味した値となる。そのため、上記成層用学習値ｑｇｔｊにより燃料噴射量の適正値に対するずれを補償する際、これが上記均質用学習値ｑｇｓｊを加味した仮想吸気圧ＰＭｖに起因して過剰なものになるのを抑制することができる。
【０１５４】
（３）均質用学習値ｑｇｓｊ及び成層用学習値ｑｇｔｊはアイドル運転中に学習されるため、エンジン回転数ＮＥが高くなるにつれて、これら学習値ｑｇｓｊ，ｑｇｔｊにより「成層燃焼」時の燃料噴射量の適正値に対するずれを補償する際、これが過剰になる。しかし、「成層燃焼」時には最終燃料噴射量Ｑfin が上記式（３）において「６００／ＮＥ」という項によりエンジン回転数ＮＥを加味した値となり、上記学習値ｑｇｓｊ，ｑｇｔｊにより燃料噴射量の適正値に対するずれを補償する際、これが過剰になるのを抑制することができる。
【０１５５】
（４）「成層燃焼」時に成層用学習値ｑｇｔｊが学習されるとき、スピードアップ条件が成立していれば、そのときの成層用学習値ｑｇｔｊ（計算用学習値ｑｇ）が均質用学習値ｑｇｓｊに反映される。また、「均質燃焼」時に均質用学習値ｑｇｓｊが学習されるとき、スピードアップ条件が成立していれば、そのときの均質用学習値ｑｇｓｊ（計算用学習値ｑｇ）が成層用学習値ｑｇｔｊに反映される。このように一方の学習値を他方の学習値に反映させることで、成層用学習値ｑｇｔｊ及び均質用学習値ｑｇｓｊが初期値に戻されたときなどに、それら学習値ｑｇｔｊ，ｑｇｓｊの学習を早期に完了することができる。
【０１５６】
なお、本実施形態は、例えば以下のように変更することもできる。
・本実施形態では、均質用学習値ｑｇｓｊと成層用学習値ｑｇｔｊとをスピードアップ条件の成立時に互いに反映し合い、それら学習値ｑｇｓｊ，ｑｇｔｊの学習を早期に完了することを可能としたが、必ずしも学習値ｑｇｓｊ，ｑｇｔｊを互いに反映し合う必要はない。均質用学習値ｑｇｓｊと成層用学習値ｑｇｔｊとを互いに反映しないようにするならば、ＩＳＣ学習ルーチン（図１３）におけるステップＳ５１１〜Ｓ５１３の処理やステップＳ５１５〜Ｓ５１７の処理を省略することができる。
【図面の簡単な説明】
【図１】本実施形態の制御装置が適用されるエンジン全体を示す断面図。
【図２】同制御装置の電気的構成を示すブロック図。
【図３】目標スロットル開度ＴＡｓｊの変化に対する位相進み補償後スロットル開度ＴＡｈ、及び実際のスロットル開度ＴＡｒの推移を示すタイムチャート。
【図４】最終燃料噴射量Ｑfin の算出手順を示すフローチャート。
【図５】吸気温補正係数Ｋtha を算出する際に参照されるマップ。
【図６】予測吸気圧ＰＭＦＷＤ及び仮想吸気圧ＰＭｖの算出手順を示すフローチャート。
【図７】予測吸気圧ＰＭＦＷＤ及び仮想吸気圧ＰＭｖの算出手順を示すフローチャート。
【図８】大気圧補正係数Ｋpa１を算出する際に参照されるマップ。
【図９】補正後吸気圧ＰＭｈ、徐変値ＰＭＳＭ、フィルタ出力ＰＭＳＭ１Ｓi 、及び実際の吸気圧ＰＭｒの推移を示すタイムチャート。
【図１０】集約目標スロットル開度ＴＡｔの算出手順を示すフローチャート。
【図１１】均質用学習値ｑｇｓｊ及び成層用学習値ｑｇｔｊに対する集約目標スロットル開度ＴＡｔの関係を示す図。
【図１２】均質用学習値ｑｇｓｊ及び成層用学習値ｑｇｔｊの学習手順を示すフローチャート。
【図１３】均質用学習値ｑｇｓｊ及び成層用学習値ｑｇｔｊの学習手順を示すフローチャート。
【符号の説明】
１１…エンジン、１１ｂ…水温センサ、１４ｃ…クランクポジションセンサ、２１ｂ…カムポジションセンサ、２３…スロットルバルブ、２４…スロットル用モータ、２５…アクセルペダル、２６…アクセルポジションセンサ、３６…バキュームセンサ、３７…吸気温センサ、４０…燃料噴射弁、４４…スロットルポジションセンサ、９２…電子制御ユニット（ＥＣＵ）。
【図１】
0004196494.tif 000004
【図２】
0004196494.tif 000005
【図３】
0004196494.tif 000006
【図４】
0004196494.tif 000007
【図５】
0004196494.tif 000008
【図６】
0004196494.tif 000009
【図７】
0004196494.tif 000010
【図８】
0004196494.tif 000011
【図９】
0004196494.tif 000012
【図１０】
0004196494.tif 000013
【図１１】
0004196494.tif 000014
【図１２】
0004196494.tif 000015
【図１３】
0004196494.tif 000016