(57)【特許請求の範囲】
【請求項１】
内燃機関の燃料を収容する燃料収容手段から発生する蒸発燃料を内燃機関の吸気系にパージするパージ通路と、
前記パージ通路から前記吸気系に導入される蒸発燃料量を、内燃機関の運転状態に応じて制御するパージ制御手段と、
希薄燃焼状態のアイドル時に、前記内燃機関の機関回転数が目標回転数に一致するように蒸発燃料量を補正する第１の補正手段と、を備え、
前記パージ制御手段は、希薄燃焼状態のアイドル時には、前記第１の補正手段が補正した補正値に基づいてパージ制御するとともに、
希薄燃焼状態のアイドル時に、この第１の補正手段による補正結果に応じて燃料の供給量を調整する燃料供給量制御手段を備え、
さらに、蒸発燃料の濃度を検出する濃度検出手段を備え、蒸発燃料の濃度に応じてパージ制御弁の開度を補正する第５の補正手段を備えたことを特徴とする希薄燃焼内燃機関の蒸発燃料供給制御装置。
【請求項２】
内燃機関の燃料を収容する燃料収容手段から発生する蒸発燃料を内燃機関の吸気系にパージするパージ通路と、
前記パージ通路から前記吸気系に導入される蒸発燃料量を、内燃機関の運転状態に応じて制御するパージ制御手段と、
前記内燃機関の機関回転数に応じて蒸発燃料量を補正する第２の補正手段と、を備え、
前記パージ制御手段は、この第２の補正手段が補正した補正値に基づいてパージ制御するとともに、
蒸発燃料の濃度を検出する濃度検出手段を備え、蒸発燃料の濃度に応じてパージ制御弁の開度を補正する第５の補正手段を備えたことを特徴とする希薄燃焼内燃機関の蒸発燃料供給制御装置。
【請求項３】
内燃機関の燃料を収容する燃料収容手段から発生する蒸発燃料を内燃機関の吸気系にパージするパージ通路と、
前記パージ通路から前記吸気系に導入される蒸発燃料量を、内燃機関の運転状態に応じて制御するパージ制御手段と、
前記内燃機関の出力変動に応じて蒸発燃料量を補正する第３の補正手段と、を備え、
前記パージ制御手段は、この第３の補正手段が補正した補正値に基づいてパージ制御するとともに、
蒸発燃料の濃度を検出する濃度検出手段を備え、蒸発燃料の濃度に応じてパージ制御弁の開度を補正する第５の補正手段を備えたことを特徴とする希薄燃焼内燃機関の蒸発燃料供給制御装置。
【請求項４】
内燃機関の燃料を収容する燃料収容手段から発生する蒸発燃料を内燃機関の吸気系にパージするパージ通路と、
前記パージ通路から前記吸気系に導入される蒸発燃料量を、内燃機関の運転状態に応じて制御するパージ制御手段と、
前記内燃機関の燃焼状態が成層燃焼である場合に、蒸発燃料量を補正する第４の補正手段と、を備え、
前記パージ制御手段は、前記内燃機関の燃焼状態が成層燃焼である場合、前記第４の補正手段が補正した補正値に基づいてパージ制御するとともに、
蒸発燃料の濃度を検出する濃度検出手段を備え、蒸発燃料の濃度に応じてパージ制御弁の開度を補正する第５の補正手段を備えたことを特徴とする希薄燃焼内燃機関の蒸発燃料供給制御装置。
【請求項５】
内燃機関の燃料を収容する燃料収容手段から発生する蒸発燃料を内燃機関の吸気系にパージするパージ通路と、
前記パージ通路から前記吸気系に導入される蒸発燃料量を、内燃機関の運転状態に応じて制御するパージ制御手段と、
前記内燃機関の燃焼状態が成層燃焼である場合に、蒸発燃料量を補正する第４の補正手段と、を備え、
前記パージ制御手段は、前記内燃機関の燃焼状態が成層燃焼である場合、前記第４の補正手段が補正した補正値に基づいてパージ制御するとともに、
燃焼状態の切換え時にパージ制御弁の開度変更を開始するまでの時間を遅延させる制御遅延手段を備えたことを特徴とする希薄燃焼内燃機関の蒸発燃料供給制御装置。
【請求項６】
内燃機関の燃料を収容する燃料収容手段から発生する蒸発燃料を内燃機関の吸気系にパージするパージ通路と、
前記パージ通路から前記吸気系に導入される蒸発燃料量を、内燃機関の運転状態に応じて制御するパージ制御手段と、
前記内燃機関の燃焼状態が成層燃焼である場合に、蒸発燃料量を補正する第４の補正手段と、を備え、
前記パージ制御手段は、前記内燃機関の燃焼状態が成層燃焼である場合、前記第４の補正手段が補正した補正値に基づいてパージ制御するとともに、
燃焼状態に応じてパージ制御弁の開度変化速度を制御する変化速度制御手段を備えたことを特徴とする希薄燃焼内燃機関の蒸発燃料供給制御装置。
【請求項７】
前記開度変化速度は燃焼状態切換毎に異ならせることを特徴とする請求項６記載の希薄燃焼内燃機関の蒸発燃料供給制御装置。
【請求項８】
内燃機関の燃料を収容する燃料収容手段から発生する蒸発燃料を内燃機関の吸気系にパージするパージ通路と、
前記パージ通路から前記吸気系に導入される蒸発燃料量を、内燃機関の運転状態に応じて制御するパージ制御手段と、
蒸発燃料量を補正する蒸発燃料量補正手段と、を備え、
前記パージ制御手段は、前記蒸発燃料量補正手段が補正した補正値に基づいてパージ制
御する装置であって、且つ、
蒸発燃料の濃度を検出する濃度検出手段と、
蒸発燃料の濃度に応じてパージ制御弁の開度を補正するパージ制御弁開度補正手段と、
を備えたことを特徴とする希薄燃焼内燃機関の蒸発燃料供給制御装置。
【請求項９】
内燃機関の燃料を収容する燃料収容手段から発生する蒸発燃料を内燃機関の吸気系にパージするパージ通路と、
前記パージ通路から前記吸気系に導入される蒸発燃料量を、内燃機関の運転状態に応じて制御するパージ制御手段と、
蒸発燃料量を補正する蒸発燃料量補正手段と、を備え、
前記パージ制御手段は、前記蒸発燃料量補正手段が補正した補正値に基づいてパージ制御する装置であって、且つ、
燃焼状態の切換え時にパージ制御弁の開度変更を開始するまでの時間を遅延させる制御遅延手段を備えたことを特徴とする希薄燃焼内燃機関の蒸発燃料供給制御装置。
【請求項１０】
内燃機関の燃料を収容する燃料収容手段から発生する蒸発燃料を内燃機関の吸気系にパージするパージ通路と、
前記パージ通路から前記吸気系に導入される蒸発燃料量を、内燃機関の運転状態に応じて制御するパージ制御手段と、
蒸発燃料量を補正する蒸発燃料量補正手段と、を備え、
前記パージ制御手段は、前記蒸発燃料量補正手段が補正した補正値に基づいてパージ制御する装置であって、且つ、
燃焼状態に応じてパージ制御弁の開度変化速度を制御する変化速度制御手段を備えたことを特徴とする希薄燃焼内燃機関の蒸発燃料供給制御装置。
【請求項１１】
内燃機関の燃料を収容する燃料収容手段から発生する蒸発燃料を内燃機関の吸気系にパージするパージ通路と、
前記パージ通路から前記吸気系に導入される蒸発燃料量を、内燃機関の運転状態に応じて制御するパージ制御手段と、
蒸発燃料量を補正する蒸発燃料量補正手段と、を備え、
前記パージ制御手段は、前記蒸発燃料量補正手段が補正した補正値に基づいてパージ制御する装置であって、且つ、
前記内燃機関の燃焼状態は、少なくとも成層燃焼と、均質リーン燃焼と、均質燃焼との間で切り換わることを特徴とする希薄燃焼内燃機関の蒸発燃料供給制御装置。
【請求項１２】
内燃機関の燃料を収容する燃料収容手段から発生する蒸発燃料を内燃機関の吸気系にパージするパージ通路と、
前記パージ通路から前記吸気系に導入される蒸発燃料量を、内燃機関の運転状態に応じて制御するパージ制御手段と、
蒸発燃料量を補正する蒸発燃料量補正手段と、を備え、
前記パージ制御手段は、前記蒸発燃料量補正手段が補正した補正値に基づいてパージ制御する装置であって、且つ、
前記内燃機関の燃焼状態は、少なくとも成層燃焼と、弱成層燃焼と、均質リーン燃焼と、均質燃焼との間で切り換わることを特徴とする希薄燃焼内燃機関の蒸発燃料供給制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えば燃料タンク等で発生する蒸発燃料（ベーパ）を希薄燃焼内燃機関の運転状態に応じて吸気系に供給する希薄燃焼内燃機関の蒸発燃料供給制御装置に関するものである。
【０００２】
【従来の技術】
従来、一般的に使用されているエンジンにおいては、燃料噴射弁からの燃料は吸気ポートに噴射され、燃焼室には予め燃料と空気との均質混合気が供給される。かかるエンジンでは、アクセル操作に連動するスロットル弁によって吸気通路が開閉される。
【０００３】
このスロットル弁の開閉により、エンジンの燃焼室に供給される吸入空気量（結果的には燃料と空気とが均質に混合された気体の量）が調整され、もってエンジン出力が制御される。
【０００４】
しかし、上記のいわゆる均質燃焼による技術では、スロットル弁の絞り動作に伴って大きな吸気負圧が発生し、ポンピングロスが大きくなって効率は低くなる。これに対し、スロットル弁の絞りを小とし、燃焼室に直接燃料を供給することにより、点火プラグの近傍に可燃混合気を存在させ、当該部分の空燃比を高めて、着火性を向上するようにしたいわゆる「成層燃焼」という技術が知られている。かかる技術においては、エンジンの低負荷時には、噴射された燃料が、点火プラグ周りに偏在供給されるとともに、スロットル弁がほぼ全開に開かれて成層燃焼が実行される。これにより、ポンピングロスの低減が図られ、燃費の向上が図られる。
【０００５】
上記のような「成層燃焼」を行うことができる内燃機関は、例えば、低負荷から高負荷に変化した時には、成層燃焼、弱成層燃焼、均質リーン、均質燃焼というような燃焼状態を順次とる。
【０００６】
成層燃焼とは先に説明したように、空燃比の高い混合気層が点火プラグの近傍に存在させて、他の部位のガスとの間で層をなす。
弱成層燃焼は、成層燃焼に比較して成層度合いが小さい場合である。
【０００７】
均質リーンは、燃料と空気が均質ではあるが燃料の比率が小さい場合である。
均質燃焼は、燃料と空気が均質でかつ燃料の比率が高い場合である。
【０００８】
また、このような「成層燃焼」が行われる場合や、希薄燃焼が行われる場合には、噴射された燃料の混合気に渦流が形成される場合がある。すなわち、吸気ポートにはスワールコントロールバルブ（ＳＣＶ）が設けられ、該ＳＣＶの開度が調整されることにより、渦流（スワール）の強度が制御される。その結果、少ない燃料供給量でもって燃焼性の向上が図られるのである。
【０００９】
ところで、燃料タンク等からの蒸発燃料（ベーパ）をキャニスタに一時的に蓄え、内燃機関の運転状態に応じて蓄えられていたベーパを吸気系に供給する希薄燃焼内燃機関の蒸発燃料供給制御装置が知られている（特開平４−１９４３５４号公報）。
【００１０】
この技術においては、蒸発燃料吸着用のキャニスタと吸気通路とを連結する蒸発燃料用のパージ通路内には、パージ制御弁が設けられている。そして、エンジンの運転状態に応じて、適切な燃料パージ量（ベーパの吸気通路内への導入量、以下、パージ量という）が得られるように（例えば、機関負荷が大きい場合には、ベーパを供給するように）パージ制御弁が制御される。
【００１１】
【発明が解決しようとする課題】
しかしながら、希薄燃焼領域では、空燃比を検出する装置を備えていないため、燃料パージ量を制御する指標がないのが実状である。
【００１２】
すなわち、従来の内燃機関では、通常排気通路には酸素センサ等の空燃比センサが配設されており、その出力信号に基づいて実際の空燃比が検出され、混合気の空燃比が別途算出された目標空燃比となるよう適宜に燃料噴射量等がフィードバック制御される。ところが、上記の酸素センサは、目標空燃比（Ａ／Ｆ）が例えば１４．５近辺での検出を行うものであり、空燃比がこれよりも大きい希薄燃焼の場合には、パージ量の検出はできない。
【００１３】
このため、このような希薄燃焼領域において、蒸発燃料供給量を制御する際に、空燃比を検出していない場合や、検出された空燃比の精度が良くない場合には、パージ量の算出の精度が悪化する。そして、蒸発燃料供給制御装置を負圧から決定されるパージ量で制御すると、ベーパが濃い時に失火やサージが発生する虞がある。
【００１４】
又、機関負荷が高負荷から低負荷に移行した場合、これは、燃焼状態が均質燃焼または均質リーン燃焼から成層燃焼又は弱成層燃焼等に移行したのと同義であるが、このような場合には、パージ禁止の設定となり、燃焼状態の切り換わり時、吸気管中でのパージ輸送遅れで、遅れて燃焼室に供給されるパージガスによって、燃焼状態が不安定となり、リッチ失火及びサージが発生する虞がある。
【００１５】
本発明は、前述した事情に鑑みてなされたものであって、その第１の目的は、希薄燃焼内燃機関において、蒸発燃料を希薄燃焼内燃機関に供給するに当たり、空燃比を検出していない場合や、検出された空燃比の精度が良くない場合においても、蒸発燃料の供給量の算出が悪化することがなく、リッチ失火やサージを抑制することができる希薄燃焼内燃機関の蒸発燃料供給制御装置を提供することにある。
【００１６】
そして、第２の目的は、希薄燃焼内燃機関の蒸発燃料供給制御装置において、アイドル時において、ベース燃料を効果的に減量でき、又、ベーパが濃い薄いに限らずアイドル回転数の安定性を確保できる希薄燃焼内燃機関の蒸発燃料供給制御装置を提供することにある。
【００１７】
第３の目的は、パージによる失火、サージが発生した場合においても、効果的に燃料減量ができ、ドライバビリティを確保でき、燃費の向上を図ることができる希薄燃焼内燃機関の蒸発燃料供給制御装置を提供することにある。
【００１８】
第４の目的は、燃焼モードの切り換わり時において、燃焼の悪化を防止することができる希薄燃焼内燃機関の蒸発燃料供給制御装置を提供することにある。
【００１９】
【課題を解決するための手段】
（１）  上記目的を達成するために、本発明の第１の特徴は、内燃機関の燃料を収容する燃料収容手段から発生する蒸発燃料を内燃機関の吸気系にパージするパージ通路と、前記パージ通路から前記吸気系に導入される蒸発燃料量を、内燃機関の運転状態に応じて制御するパージ制御手段と、前記内燃機関の機関回転数が目標回転数に一致するように蒸発燃料量を補正する第１の補正手段とを備え、前記パージ制御手段は、この第１の補正手段が補正した補正値に基づいてパージ制御することを特徴とする希薄燃焼内燃機関の蒸発燃料供給制御装置である。
【００２０】
ここで、前記パージ通路から前記吸気系に導入される蒸発燃料量を、内燃機関の運転状態に応じて制御するパージ制御手段は、例えば、前記パージ通路に設けられ、前記吸気系に導入される蒸発燃料の蒸発燃料量を制御するためのパージ制御弁と、前記内燃機関の運転状態を検出する運転状態検出手段と、前記運転状態検出手段で検出した運転状態に応じて前記パージ制御弁の開度を制御するパージ制御弁制御手段とで構成することができる。パージ制御はパージ制御弁の開度調整が最も簡単であるが、この例に限るものではない。これは、以下の各特徴点において共通である。ただし、説明を理解しやすくするため、以下、パージ制御をパージ制御弁の開度調整という例で説明する。
【００２１】
燃料収容手段から発生する蒸発燃料は、パージ通路を通って内燃機関の吸気系に供給される。ここで、パージ通路に設けたパージ制御弁が制御されることで、吸気系に導入される蒸発燃料の蒸発燃料量が制御される。すなわち、内燃機関の運転状態が運転状態検出手段により検出され、その運転状態に応じてパージ制御弁がパージ制御弁制御手段により制御される。その際、第１の補正手段は、前記内燃機関の機関回転数が目標回転数に一致するように蒸発燃料量を補正する。前記パージ制御弁制御手段は、この第１の補正手段が補正した補正値に基づいてパージ制御弁を制御する。このため補正値に応じたパージ量になり、機関回転数が目標回転数に一致する方向に適切に制御される。
（１−１）  ここで、前記第１の補正手段で参照すべき内燃機関の目標回転数が、アイドル回転数である場合に本発明を好適に適用できる。
【００２２】
すなわち、希薄燃焼状態のアイドル時に本発明による制御を適用すると、アイドル時の適切な希薄燃焼を確保できる。
（１−２）  さらに、希薄燃焼状態のアイドル時に、第１の補正手段による補正結果に応じて燃料供給量を調整する燃料供給量制御手段を設けることができる。このようにすると、希薄燃焼状態のアイドル時に適切な燃料供給量となり、良好なアイドル運転が可能となる。
【００２３】
（２）また、本発明の第２の特徴点は、内燃機関の駆動用の燃料を収容する燃料収容手段から発生する蒸発燃料を内燃機関の吸気系にパージするパージ通路と、前記パージ通路から前記吸気系に導入される蒸発燃料量を、内燃機関の運転状態に応じて制御するパージ制御手段と、前記内燃機関の機関回転数に応じて蒸発燃料量を補正する第２の補正手段とを備え、前記パージ制御手段は、この第２の補正手段が補正した補正値に基づいてパージ制御することを特徴とする。
【００２４】
第２の特徴点は、希薄燃焼内燃機関、特に吸気管負圧が運転状態の全域にわたって変化の少ない（略一定）、あるいは単位回転当たりの吸入空気量が略一定の希薄燃焼機関（例えば、筒内直接噴射型の内燃機関）に適用することが好ましい。第２の特徴点において、具体的には、運転状態に応じてパージ弁の開度を制御するが、その際、第２の補正手段で、機関回転数に応じて蒸発燃料量を補正し、その補正値に従ってパージ弁開度を補正制御する。
【００２５】
筒内直噴型の希薄燃焼内燃機関は、通常の運転状態において、スロットル弁をほぼ全開にして運転されることが多い。これは、筒内に燃料を直接噴射するので、吸気をコントロールして混合気状態を制御する必要がないからである。
【００２６】
例えば、運転状態のほぼ全域にわたってスロットル弁が全開であると、吸入空気量すなわち負圧が一定であり、このため、空気吸入量、負荷（＝空気量／機関回転数）、吸気管負圧の少なくとも一つの値に応じてパージ量を制御しようとすると、低回転数の成層燃焼と、高回転数の均質燃焼とで同じ量のパージを実行する場合、低回転側で燃焼不安定となったり失火が生じたりする。そこで、吸気管負圧がほぼ一定な希薄燃焼内燃機関において、機関回転数に応じてパージ量を制御することとした。
【００２７】
（３）また、本発明の第３の特徴点は、内燃機関の燃料を収容する燃料収容手段から発生する蒸発燃料を前記内燃機関の吸気系にパージするするパージ通路と、前記パージ通路から前記吸気系に導入される蒸発燃料量を、内燃機関の運転状態に応じて制御するパージ制御手段と、前記内燃機関の出力変動に応じて蒸発燃料量を補正する第３の補正手段と、を備え、前記パージ制御手段は、この第３の補正手段が補正した補正値に基づいてパージ制御することを特徴とする希薄燃焼内燃機関の蒸発燃料供給制御装置である。
【００２８】
ここでは、内燃機関の出力変動に応じて蒸発燃料量を補正し、その補正値に従ってパージ制御されるので、出力変動が生じても内燃機関の円滑な運転を確保できる。
（３−１）  ここで、内燃機関の出力変動に応じて燃料の供給量を調整する燃料供給量制御手段を備えることもできる。これによれば、内燃機関の出力変動に応じて燃料が供給されるので、さらに最適燃料量とすることが可能となる。
【００２９】
（４）本発明の第４の特徴点は、内燃機関の駆動用の燃料を収容する燃料収容手段から発生する蒸発燃料を前記内燃機関の吸気系にパージするパージ通路と、前記パージ通路から前記吸気系に導入される蒸発燃料量を、内燃機関の運転状態に応じて制御するパージ制御手段と、前記内燃機関の燃焼状態に応じて蒸発燃料量を補正する第４の補正手段とを備え、前記パージ制御手段は、この第４の補正手段が補正した補正値に基づいてパージ制御することを特徴とする希薄燃焼内燃機関の蒸発燃料供給制御装置である。
【００３０】
ここでは混合気の燃焼状態に応じて蒸発燃料量を補正する。燃焼状態とは、燃焼室内における混合気の燃焼状況、例えば成層燃焼の度合い、成層燃焼・弱成層燃焼・均質リーン燃焼・均質燃焼間での燃焼切換状態をいう。これらの各状態に応じて蒸発燃料量を補正することで、各状態に応じた最適燃料量となる。
【００３１】
（４−１）  第４の特徴点について、燃焼状態の切換え時にパージ制御弁の開度変更または燃料噴射状態変更を開始するまでの時間を遅延させる制御遅延手段を備えることが可能である。遅延させることで、切換時のハンチングを防止できる。
【００３２】
（４−２） さらには、燃焼状態に応じてパージ制御弁の開度変化速度を制御する変化速度制御手段を備えることも可能である。または燃料噴射状態変化速度を制御することも可能である。このように、燃焼状態切換時にパージ弁開度、燃料噴射状態を徐々に変化させるので燃焼が安定する。
【００３３】
（４−３） ここで、前記燃焼状態変化速度、前記開度変化速度は燃焼状態切換毎に異ならせることができる。このように、燃焼状態切換時のパージ弁開度等の変化速度を、切換時毎に異なるようにすると、（４−３）のように単に変化させる場合に増してさらに燃焼安定性が向上する。
【００３４】
（４−４）  さらに、内燃機関の燃焼状態の切り換り時に、切換態様に応じて燃料の供給量を調整する燃料供給量制御手段を備えた蒸発燃料供給制御装置とすることができる。燃焼状態切換時に燃料の供給量を変えることで、燃焼安定性をより高くすることができる。
【００３５】
（５） 本発明のすべての特徴点において、蒸発燃料量の補正に応じて、燃料噴射状態を変更する噴射状態変更手段を備えることができる。蒸発燃料量の補正に応じて、燃料噴射量、燃料噴射時期、燃料噴射方向等の燃料噴射状態を変更すると、より安定的な燃焼を確保できる。
（５−１） また、蒸発燃料の濃度を検出する濃度検出手段を備え、蒸発燃料の濃度に応じてパージ制御弁の開度を補正する第５の補正手段を備えることができる。この場合、濃度に応じてパージ制御弁の開度を補正するので制御精度が向上する。
【００３６】
（５−２）  さらに、前記噴射状態変更手段は燃料噴射状態として噴射量補正量を変更するものであり、この噴射量補正量の変更をガード値で制限するようにするとよい。
ガード値で制限することで、必要以上の補正量の変更が抑えられ、補正の行き過ぎによる燃焼不安定、失火等を防止することができる。
【００３７】
（５−３）なお、従来より、通常の車両においては、内燃機関の駆動用の燃料を収容する燃料収容手段から発生する蒸発燃料を蓄えるためのキャニスタを備えている。そこで、本発明においては、前記パージ通路は前記内燃機関の吸気系と前記キャニスタとを連通するように接続してもよい。
（６）また、本発明の他の特徴点は、内燃機関の燃料を収容する燃料収容手段から発生する蒸発燃料を内燃機関の吸気系にパージするパージ通路と、前記パージ通路から前記吸気系に導入される蒸発燃料量を、内燃機関の運転状態に応じて制御するパージ制御手段と、前記内燃機関の燃焼状態が成層燃焼である場合に、蒸発燃料量を補正する蒸発燃料量補正手段と、を備え、前記パージ制御手段は、前記内燃機関の燃焼状態が成層燃焼である場合、前記蒸発燃料量補正手段が補正した補正値に基づいてパージ制御することを特徴とする希薄燃焼内燃機関の蒸発燃料供給制御装置である。
（６−１）蒸発燃料の濃度を検出する濃度検出手段と、蒸発燃料の濃度に応じてパージ制御弁の開度を補正するパージ制御弁開度補正手段と、を備えることも可能である。
（６−２）燃焼状態の切換え時にパージ制御弁の開度変更または燃料噴射状態変更を開始するまでの時間を遅延させる制御遅延手段を備えることも可能である。
（６−３）燃焼状態に応じてパージ制御弁の開度変化速度を制御する変化速度制御手段を備えることも可能である。
（７）また、本発明の他の特徴点は、内燃機関の燃料を収容する燃料収容手段から発生する蒸発燃料を内燃機関の吸気系にパージするパージ通路と、前記パージ通路から前記吸気系に導入される蒸発燃料量を、内燃機関の運転状態に応じて制御するパージ制御手段と、蒸発燃料量を補正する蒸発燃料量補正手段と、を備え、前記パージ制御手段は、前記蒸発燃料量補正手段が補正した補正値に基づいてパージ制御する装置であって、且つ、前記内燃機関の燃焼状態は、少なくとも成層燃焼と、弱成層燃焼と、均質燃焼との間で切り換わることを特徴とする希薄燃焼内燃機関の蒸発燃料供給制御装置である。
（８）また、本発明の他の特徴点は、内燃機関の燃料を収容する燃料収容手段から発生する蒸発燃料を内燃機関の吸気系にパージするパージ通路と、前記パージ通路から前記吸気系に導入される蒸発燃料量を、内燃機関の運転状態に応じて制御するパージ制御手段と、蒸発燃料量を補正する蒸発燃料量補正手段と、を備え、前記パージ制御手段は、前記蒸発燃料量補正手段が補正した補正値に基づいてパージ制御する装置であって、且つ、前記内燃機関の燃焼状態は、少なくとも成層燃焼と、均質リーン燃焼と、均質燃焼との間で切り換わることを特徴とする希薄燃焼内燃機関の蒸発燃料供給制御装置である。
（９）また、本発明の他の特徴点は、内燃機関の燃料を収容する燃料収容手段から発生する蒸発燃料を内燃機関の吸気系にパージするパージ通路と、前記パージ通路から前記吸気系に導入される蒸発燃料量を、内燃機関の運転状態に応じて制御するパージ制御手段と、蒸発燃料量を補正する蒸発燃料量補正手段と、を備え、前記パージ制御手段は、前記蒸発燃料量補正手段が補正した補正値に基づいてパージ制御する装置であって、且つ、前記内燃機関の燃焼状態は、少なくとも成層燃焼と、弱成層燃焼と、均質リーン燃焼と、均質燃焼との間で切り換わることを特徴とする希薄燃焼内燃機関の蒸発燃料供給制御装置である。
なお、本発明は、前記（２）の特徴点を除き、筒内直接燃料噴射型の希薄燃焼内燃機関のみならず、吸気管噴射型も含めた、広範囲の希薄燃焼内燃機関に適用可能である。
【００３８】
【発明の実施の形態】
以下、本発明の実施の形態を、図面に基づいて詳細に説明する。
【００３９】
図１は、本発明の装置の概要を示した図である。図１においてＭ１は希薄燃焼内燃機関であり、図示しない車両本体にこの希薄燃焼内燃機関Ｍ１の駆動用燃料を収容する燃料収容手段Ｍ２が設けられている。この燃料収容手段Ｍ２には燃料収容手段Ｍ２から発生する蒸発燃料を蓄えるためのキャニスタＭ３が接続されている。
【００４０】
さらに、このキャニスタＭ３と内燃機関Ｍ１の吸気系Ｍ４とを連通するパージ通路Ｍ５が設けられている。このパージ通路Ｍ５から前記吸気系に導入される蒸発燃料量を、内燃機関の運転状態に応じて制御するパージ制御手段として、このパージ通路Ｍ５の途中には、前記吸気系Ｍ４に導入される蒸発燃料の蒸発燃料量を制御するためのパージ制御弁Ｍ６が設けられている。また、パージ制御手段として、前記内燃機関の運転状態を検出する運転状態検出手段Ｍ７が設けられ、さらに、この運転状態検出手段Ｍ７で検出した運転状態に応じて前記パージ制御弁の開度を制御するパージ制御弁制御手段Ｍ８が設けられている。
【００４１】
さらに、パージ制御弁制御手段Ｍ８に蒸発燃料量を補正する補正手段Ｍ９が接続され、この補正手段Ｍ９で補正した蒸発燃料量の補正値に基づいて前記パージ制御弁制御手段Ｍ８がパージ制御弁Ｍ６を補正制御する。
ここで、補正手段Ｍ９の実施形態としては、以下のような補正手段を提供できる。
【００４２】
（１）第１の補正手段
第１の補正手段は、前記内燃機関の機関回転数が目標回転数に一致するように蒸発燃料量を補正する補正手段である。
【００４３】
（２）第２の補正手段
第２の補正手段は、前記内燃機関の機関回転数に応じて蒸発燃料量を補正する補正手段である。
【００４４】
（３）第３の補正手段
第３の補正手段は、内燃機関の出力変動に応じて蒸発燃料量を補正する補正手段である。
【００４５】
（４）第４の補正手段
第４の補正手段は、前記内燃機関の燃焼状態に応じて蒸発燃料量を補正する補正手段である。
【００４６】
（５）第５の補正手段
第５の補正手段は、図２で示したように、前提として蒸発燃料の濃度を検出する濃度検出手段Ｍ２１を備えおく必要がある。そして、第５の補正手段は、この濃度検出手段で検出した蒸発燃料の濃度に応じてパージ制御弁の開度を補正する。
【００４７】
（６）補正手段の組み合わせ
前記第１から第４の補正手段はそれぞれ単独であるいは任意に組み合わせて本発明に適用される。第５の補正手段は、第１から第４の補正手段と併せて本発明に適用される。
【００４８】
図３は車両に搭載された筒内噴射式エンジンの蒸発燃料供給制御装置を示す概略構成図である。内燃機関としてのエンジン１は、例えば４つのシリンダ１ａを具備する。これら各シリンダ１ａの燃焼室構造は図４に示される。これら図３、図４に示すように、エンジン１はシリンダブロック２内にピストンを備えており、当該ピストンはシリンダブロック２内で往復運動する。シリンダブロック２の上部にはシリンダヘッド４が設けられ、前記ピストンとシリンダヘッド４との間には燃焼室５が形成されている。
【００４９】
また、本実施の形態では、図４のように、ｌつのシリンダ１ａあたり、４つの弁が配置されている。より詳細には第１吸気弁６ａ、第２吸気弁６ｂ、第１吸気ポート７ａ、第２吸気ポート７ｂ、一対の排気弁８，８、一対の排気ポート９，９がそれぞれ設けられている。
【００５０】
図４に示すように、第１の吸気ポート７ａはヘリカル型吸気ポートであり、第２の吸気ポート７ｂはほぼ真っ直ぐに延びるストレートポートである。また、シリンダヘッド４の内壁面の中央部には、点火プラグ１０が配設されている。さらに、第１吸気弁６ａ及び第２吸気弁６ｂ近傍のシリンダヘッド４内壁面周辺部には燃料供給手段としての燃料噴射弁１１が配置されている。すなわち、本実施形態においては、燃料噴射弁１１からの燃料は、直接的に気筒１ａ内に噴射されるようになっている。
【００５１】
図３に示すように、各気筒１ａの第１吸気ポート７ａ及び第２吸気ポート７ｂは、それぞれ各吸気マニホルド１５内に形成された第１吸気路１５ａ及び第２吸気路１５ｂを介してサージタンク１６に連結されている。各第２吸気通路１５ｂ内にはそれぞれスワールコントロールバルブ（ＳＣＶ）１７が配置されている。これらのＳＣＶ１７は共通のシャフト１８を介して、ステップモータ１９に連結されている。このステップモータ１９は、後述する電子制御装置（以下単に「ＥＣＵ」という）３０からの出力信号に基づいて制御される。
【００５２】
前記サージタンク１６は、吸気ダクト２０を介してエアクリーナ２１に連結され、吸気ダクト２０内には、別途のステップモータ２２によって開閉されるスロットル弁２３が配設されている。つまり、本実施の形態のスロットル弁２３はいわゆる電子制御式のものであり、基本的には、ステップモータ２２が前記ＥＣＵ３０からの出力信号に基づいて駆動されることにより、スロットル弁２３が開閉制御される。そして、このスロットル弁２３の開閉により、吸気ダクト２０を通過して燃焼室５内に導入される吸入空気量が調節されるようになっている。本実施の形態では、吸気ダクト２０、サージタンク１６並びに第１吸気路１５ａ及び第２吸気路１５ｂ等により、吸気系としての吸気通路が構成されている。また、スロットル弁２３の近傍には、その開度（スロットル開度ＴＡ）を検出するためのスロットルセンサ２５が設けられている。
【００５３】
この実施形態の筒内噴射型内燃機関では、吸気管内噴射型の内燃機関に比べ、極く低負荷運転時を除いてスロットル弁２３がより全開側に近い状態に保持される。その状態でスロットル弁が開閉制御される。
【００５４】
また、スロットル弁２３を開閉駆動することにより、内燃機関のアイドル回転数制御（ＩＳＣ）、すなわち吸入空気量を制御している。なお、均質燃焼時は電子スロットル弁２３の開閉で回転数を制御し、成層燃焼時は燃料噴射量で制御するとともに、スロットル弁の開閉、点火時期、ＥＧＲ量で回転数を制御している。
【００５５】
また、前記各気筒の排気ポート９には排気マニホルド１４が接続され、燃焼後の排気ガスは当該排気マニホルド１４を介して図示しない排気浄化触媒、例えば三元触媒、ＮＯx 浄化触媒などで浄化され、排気ダクトへ排出されるようになっている。なお、触媒の上流、下流に空燃比センサを設けて燃料噴射制御をしてもよい。
【００５６】
さらに、本実施の形態では、公知の排気ガス循環（ＥＧＲ）装置５１が設けられている。このＥＧＲ装置５１は、排気ガス循環通路としてのＥＧＲ通路５２と、同通路５２の途中に設けられた排気ガス循環弁としてのＥＧＲバルブ５３とを含んでいる。ＥＧＲ通路５２は、スロットル弁２３の下流側の吸気ダクト２０と、排気ダクトとの間を連通するよう設けられている。
【００５７】
また、ＥＧＲバルブ５３は、弁座、弁体及びステップモータ（いずれも図示せず）を内蔵しており、これらによりＥＧＲ機構が構成されている。ＥＧＲバルブ５３の開度は、ステップモータが弁体を弁座に対して断続的に変位させることにより、変動する。そして、ＥＧＲバルブ５３が開くことにより、排気ダクトへ排出された排気ガスの一部がＥＧＲ通路５２へと流れる。その排気ガスは、ＥＧＲバルブ５３を介して吸気ダクト２０へ流れる。すなわち、排気ガスの一部がＥＧＲ装置５１によって吸入混合気中に再循環する。このとき、ＥＧＲバルブ５３の開度が調節されることにより、排気ガスの再循環量が調整されるのである。
【００５８】
図３に示すように、吸気ダクト２０には吸気ダクト２０内に蒸発燃料を供給するためのパージ制御装置７２が取り付けられている。このパージ制御装置７２は活性炭層７３を有するキャニスタ７４を具備し、キャニスタ７４内において活性炭層７３両側にはそれぞれ蒸発燃料室７５と空気室７６とが形成されている。蒸発燃料室７５は、並列配置されるとともにかつそれぞれ逆方向に流通可能な一対の逆止弁７７，７８を介して燃料収容手段としての燃料タンク７９に接続されている。
【００５９】
又、蒸発燃料室７５とスロットル弁２３下流の吸気ダクト２０間にはパージ通路としての接続パイプ７１が接続されており、同接続パイプ７１には蒸発燃料室７５から吸気ダクト２０内に向けてのみ流通可能に逆止弁８０及び第１電磁弁８１が設けられている。前記電磁弁８１は後記ＥＣＵ３０によりデューティ制御が可能な制御弁であって、パージ制御弁を構成している。
【００６０】
デューティ制御とは、入力パルス信号のデューティ比に応じた開度調整を行う制御である。なお、電磁弁８１はリニア弁であってもよい。
【００６１】
空気室７６は大気から空気室７６側への流通のみが可能な逆止弁８２を介して大気に連通されている。
吸気ダクト２０内への蒸発燃料の供給を停止すべきときは、後記ＥＣＵ３０の制御により、電磁弁８１が閉弁される。このとき、燃料タンク７９内で発生した蒸発燃料は逆止弁７８を介して蒸発燃料室７５内に流入し、次いでこの蒸発燃料は活性炭層７３内の活性炭に吸着される。
【００６２】
燃料タンク７９内の圧力が低下したときには、逆止弁７７が開弁する。従って、この逆止弁７７により、燃料タンク７９内の圧力低下によって燃料タンク７９が変形するのが阻止される。
【００６３】
これに対して吸気ダクト２０内に蒸発燃料を供給すべきときには、ＥＣＵ３０により電磁弁８１が開弁制御される。すると、逆止弁８２を介して空気室７６内に空気が吐出され、この空気が活性炭層１３内に送り込まれる。このとき活性炭に吸着されていた燃料が離脱し、かくして燃料成分を含んだ空気（蒸発燃料）が蒸発燃料室７５内に流出する。次いで、この蒸発燃料が逆止弁８０及び電磁弁８１を介して吸気ダクト２０内に供給される。
【００６４】
さて、図５で示したように、上述したＥＣＵ３０は、デジタルコンピュータからなっており、双方向性バス３１を介して相互に接続されたＲＡＭ（ランダムアクセスメモリ）３２、ＲＯＭ（リードオンリメモリ）３３、マイクロプロセッサからなるＣＰＵ（中央処理装置）３４、入力ポート３５及び出力ポート３６を具備している。本実施の形態においては、当該ＥＣＵ３０により、燃料供給量制御手段、パージ制御弁制御手段、第１の補正手段、第２の補正手段、第３の補正手段、第４の補正手段、第５の補正手段が構成されている。これらは、ハードウェア、ソフトウェアの組み合わせからなるが、ソフトウェアはＲＯＭに書き込まれており、ＣＰＵにロードされることで各手段が実現される。
【００６５】
車両のアクセルペダル２４には、当該アクセルペダル２４の踏込み量に比例した出力電圧を発生するアクセルセンサ２６Ａが接続され、該アクセルセンサ２６Ａによりアクセル開度ＡＣＣＰが検出される。当該アクセルセンサ２６Ａの出力電圧は、ＡＤ変換器３７を介して入力ポート３５に入力される。
【００６６】
また、同じくアクセルペダル２４には、アクセルペダル２４の踏込み量が「０」であることを検出するための全閉スイッチ２６Ｂが設けられている。すなわち、この全閉スイッチ２６Ｂは、アクセルぺダル２４の踏込み量が「０」である場合に全閉信号ＸＩＤＬとして「１」の信号を、そうでない場合には「０」の信号を発生する。そして、該全閉スイッチ２６Ｂの出力電圧も入力ポート３５に入力されるようになっている。
【００６７】
また、上死点センサ２７は例えば１番シリンダ１ａのピストンが吸気上死点に達したときに出力パルスを発生し、この出力パルスが入力ポート３５に入力される。クランク角センサ２８は例えばクランクシャフトが３０°ＣＡ回転する毎に出力パルスを発生し、この出力パルスが入力ポートに入力される。ＣＰＵ３４では上死点センサ２７の出力パルスとクランク角センサ２８の出力パルスからエンジン回転数ＮＥが算出される（読み込まれる）。
【００６８】
さらに、前記シャフト１８の回転角度は、スワールコントロールバルブセンサ２９により検出され、これによりスワールコントロールバルブ｛ＳＣＶ）１７の開度が検出されるようになっている。そして、スワールコントロールバルブセンサ２９の出力はＡ／Ｄ変換器３７を介して入力ポート３５に入力される。
【００６９】
併せて、前記スロットルセンサ２５により、スロットル開度ＴＡが検出される。このスロットルセンサ２５の出力はＡ／Ｄ変換器３７を介して入力ポート３５に入力される。
【００７０】
加えて、本実施の形態では、サージタンク１６内の圧力（吸気圧ＰＩＭ）を検出する吸気圧センサ６１が設けられている。さらに、エンジン１の冷却水の温度（冷却水温ＴＨＷ）を検出する水温センサ６２が設けられている。これら両センサ６１，６２の出力もＡ／Ｄ変換器３７を介して入力ポート３５に入力されるようになっている。
【００７１】
さらにまた、エンジン１のシリンダブロック２には、該エンジン１のノッキングを検出するためのノック検出手段としてのノックセンサ６３が取付けられている。このノックセンサ６３は、一種の振動ピックアップであって、例えば、ノッキングで発生する振動数と、検出素子の固有振動数とが合致し共振することによって検出能力が最高となるようチューニングされた特性を持っている。このノックセンサ６３の出力もＡ／Ｄ変換器３７を介して入力ポート３５に入力されるようになっている。なお、トルク変動を検出するために、燃焼圧を検出する燃焼圧センサを追加してもよい。
【００７２】
また、ＥＣＵ３０は、ゲート信号発生器を有しており、該発生器は、ＣＰＵ３４からの信号に基づきオープン・クローズの信号を入力ポート３５に出力するようになっている。つまり、ノックセンサ６３からの検出信号は、ＣＰＵ３４からのオープンゲート信号により入力ポート３５に入力され、クローズゲート信号により遮断される。このため、ノッキングの検出（判定）には、一定の期間が設けられていることとなる。
【００７３】
一方、出力ポート３６は、対応する駆動回路３８を介して各燃料噴射弁１１、各ステップモータ１９，２２、イグナイタ１２、ＥＧＲバルブ５３（ステップモータ）及び電磁弁８１に接続されている。そして、ＥＣＵ３０は各センサ等２５〜２９，６１〜６３からの信号に基づき、ＲＯＭ３３内に格納された制御プログラムに従い、燃料噴射弁１１、ステップモータ１９，２２、イグナイタ１２、ＥＧＲバルブ５３、電磁弁８１等を好適に制御する。
前記各センサ等２５〜２９，６１〜６３は、運転状態検出手段を構成している。
【００７４】
次に、上記構成を備えたエンジンの蒸発燃料供給制御装置における本実施の形態に係る各種制御に関するプログラムについて、フローチャートを参照して説明する。
【００７５】
（アイドル時における停車中の制御）
＜第１の補正手段による制御＞
図６は、本実施の形態におけるアイドル時における停車中の「パージ制御ルーチン」を示すフローチャートであって、ＥＣＵ３０（ＣＰＵ）が所定時間毎の割り込みで実行する。なお、この例は、前記（１）及び（１−１）の特徴点を実施して、機関回転数を目標回転数に一致するよう蒸発燃料量を補正する場合の例である。
【００７６】
すなわち、まず、図示しない、エンジン回転数及びアクセル開度と基本燃料噴射量との相関関係を定めたマップから、当該エンジン回転数とアクセル開度に対応する基本燃料噴射量を補間的に計算する。なお、噴射量マップとして、運転条件あるいは燃焼状態に応じた複数のマップが用意されており、その中から適宜選択されて使用される。
【００７７】
ステップ８では、パージ中であるか否かを判定し、パージ中であれば、ステップ９において、アクセル開度ＡＣＡから現在の燃焼状態を判断する。ステップ１０では、各燃焼状態に対応したパージ制御における各種補正係数の値をＲＯＭ３３から読み込む。各種補正係数とは、例えば、パージデューティ更新量ＫＤＰＧＵ及びＫＤＰＧＤなどである。
【００７８】
なお、エンジン１はＥＣＵ３０の制御により、成層燃焼、弱成層燃焼、均質リーン燃焼、及び均質燃焼の各燃焼状態をとることができる。そして、エンジン回転数ＮＥ及びアクセル開度ＡＣＣＰに基づいて燃焼状態が成層燃焼である場合には燃焼モードＦＭＯＤＥが「０」に設定され、弱成層燃焼である場合には、燃焼モードＦＭＯＤＥが「１」に設定され、均質リーン燃焼である場合には、燃焼モードＦＭＯＤＥが「２」に設定され、均質燃焼が実行されている場合には燃焼モードＦＭＯＤＥが「３」に設定される。
【００７９】
そして、現在の燃焼状態が成層燃焼でない場合には、この判定を「ＮＯ」として、この制御ルーチンを一旦終了する。現在の燃焼状態が成層燃焼である場合には、この判定を「ＹＥＳ」とし、ステップ２０へ移行する。
【００８０】
ステップ２０においては、アイドルスピードコントロール（ＩＳＣ）のフィードバック制御中か否かを判定する。ここでは、別途のＩＳＣ制御ルーチンが実行されているか否かを判定するのである。ＩＳＣ制御ルーチンが実行されていなければ、エンジン回転数ＮＥが安定していないとしてこの判定を「ＮＯ」とし、ステップ６３に移行する。ＩＳＣ制御ルーチンが行われていれば、エンジン回転数ＮＥが安定しているとしてこの判定を「ＹＥＳ」とし、ステップ３０に移行する。
【００８１】
ステップ３０では、第１の補正手段として、エンジンの目標回転数ＮＴと実際のエンジン回転数ＮＥとの偏差ＤＬＮＴを算出する。次いでステップ４０において、偏差ＤＬＮＴが第１の判定値Ａ《ｒｐｍ》よりも小さいか否かを判定する。ステップ４０において、偏差ＤＬＮＴが第１の判定値Ａ未満であると判定された場合、すなわちエンジンが安定して回転しているときには、ステップ５０に移行し、仮要求パージデューティ値ｔＤＰＧを算出する。仮要求パージデューティ値ｔＤＰＧは、前回値（前回の制御ルーチンで得られた最終要求デューティ値）ＤＰＧi-1 に対しパージデューティ更新量ＫＤＰＧＵを加算したものとする。
【００８２】
このパージデューティ更新量ＫＤＰＧＵは、予め実験等により求められたものであり、ＲＯＭ３３に格納されている。次にステップ６０において、最終要求デューティ値ＤＰＧとして前記ステップ５０において算出された仮要求パージデューティ値ｔＤＰＧをセットし、この制御ルーチンを終了する。
【００８３】
又、前記ステップ４０において、偏差ＤＬＮＴが第１の判定値Ａ以上であれば、エンジン回転に変動がありとされ、ステップ７０において、偏差ＤＬＮＴが第２の判定値Ｂ（ｒｐｍ）よりも小さいか否かを判定する。なお、Ａ＜Ｂである。同ステップ７０において、偏差ＤＬＮＴが第２の判定値Ｂを越えていると判定した場合には、ステップ８０に移行し、仮要求パージデューティ値ｔＤＰＧを算出する。仮要求パージデューティ値ｔＤＰＧは、前回値（前回の制御ルーチンで得られた最終要求デューティ値）ＤＰＧi-1 からパージデューティ更新量ＫＤＰＧＤを減算したものとする。このパージデューティ更新量ＫＤＰＧＤは、予め実験等により求められたものであり、ＲＯＭ３３に格納されている。
【００８４】
なお、前記パージデューティ更新量ＫＤＰＧＵ及びＫＤＰＧＤの値は、機関の運転状態あるいは燃焼状態によって異なる値としてもよい。例えば均質燃焼のときは値を大きくし、成層燃焼のときは小さな値とする。これによって、均質燃焼時は大量のパージを導入することが可能となるとともに、成層燃焼時はパージの変化が小さいので燃焼を安定させることができる。また、燃焼の切換時には、パージデューティ更新量ＫＤＰＧＵ及びＫＤＰＧＤをスキップ的に変化させて切換後の燃焼に対応した更新量に変更すれば、切換後の燃焼を安定させることができる。
【００８５】
次にステップ６０において、最終要求デューティ値ＤＰＧとして前記ステップ８０において算出された仮要求パージデューティ値ｔＤＰＧをセットする。
【００８６】
又、前記ステップ７０において、偏差ＤＬＮＴが第２の判定値Ｂ以下であると判定した場合には、ステップ９０に移行し、仮要求パージデューティ値ｔＤＰＧを算出する。仮要求パージデューティ値ｔＤＰＧは、前回値の最終要求デューティ値ＤＰＧi-1 とする。
【００８７】
次いで、ステップ６０に移行して、最終要求デューティ値ＤＰＧとして前記ステップ９０において得られた仮要求パージデューティ値ｔＤＰＧをセットする。なお、ステップ２０で、ＩＳＣ制御ルーチンが実行されていないとされた場合、すなわち、ＩＳＣがＦ／Ｂでなく安定していなければ、ＤＰＧとして前回の安定時に一時記憶されたデューティ値ＤＰＧＯを最終要求デューティ値ＤＰＧに代入する（ステップ６３）。
【００８８】
従って、ＥＣＵ３０は、ステップ６０あるいは６３で得た最終要求デューティ値ＤＰＧに基づいて、電磁弁８１をデューティ制御する。
なお、デューティ制御によるパージ制御弁の制御は、後述するパージ実行条件が成立すると図７のグラフ図に示したように、パージ開始時にデューティ比０から立ち上がり、所定の制御に従って、デューティ比の大小制御がなされ、パージ禁止指令が入った時点で、デューティ比が０とされる。
【００８９】
ステップ６０でデューティ比が決定されると、その後、デューティ比から蒸発燃料量補正量が換算される。すなわち、デューティ比により決定されるパージ制御弁の開度と、吸気管負圧等でパージ量が決定するので、パージガス中の蒸発燃量濃度が判明すれば、蒸発燃料量が判明する（ステップ６１）。この蒸発燃料量が内燃機関に供給されるので、ステップ６４では、
最終燃料噴射量ＱＡＬＬＩＮＪ＝基本燃料噴射量ＱＡＬＬ−蒸発燃料量補正量ＦＰＧ ・・・式（１）
に従って、予め得た基本燃料噴射量から蒸発燃料量を補正量として差し引くことで、最終的に内燃機関に供給される燃料噴射量を補正する。
【００９０】
なお、ステップ８で、パージ中でないとされた場合、ステップ６２で蒸発燃料量補正量を０とし、予め得た基本燃料噴射量をそのまま最終燃料噴射量（ＱＡＬＬＩＮＪ）とする。
【００９１】
その後、別途定めた燃料噴射プログラムに従って燃料噴射を行う。
図６の「パージ制御ルーチン」においては、ステップ４０において、エンジンの目標回転数ＮＴと実機関回転数であるエンジン回転数ＮＥとの偏差ＤＬＮＴが第１の判定値Ａ未満であれば、目標エンジン回転数ＮＴよりも実回転数ＮＥが小さいため、パージ量を増やすべく、仮要求パージデューティ値ｔＤＰＧを、前回値（前回の制御ルーチンで得られた最終要求デューティ値）ＤＰＧi-1 に対しパージデューティ更新量ＫＤＰＧＵを加算し、仮要求パージデューティ値ｔＤＰＧとする。この仮要求パージデューティ値ｔＤＰＧを最終要求デューティ値ＤＰＧとして、電磁弁８１を制御することになる。この結果、蒸発燃料のパージ量が多くなり、エンジン回転数が上昇する。
【００９２】
又、図６の「パージ制御ルーチン」においては、ステップ７０において、エンジンの目標回転数ＮＴと実回転数であるエンジン回転数ＮＥとの偏差ＤＬＮＴが第２の判定値Ｂを越えていれば、目標エンジン回転数ＮＴよりも実回転数ＮＥが大きいため、パージ量を減らすべく、要求デューティ値ｔＤＰＧを、前回値（前回の制御ルーチンで得られた最終要求デューティ値）ＤＰＧi-1 からパージデューティ更新量ＫＤＰＧＵを減算した値とする（ステップ８０）。そして、この仮要求パージデューティ値ｔＤＰＧを最終要求デューティ値ＤＰＧとする。この結果、蒸発燃料のパージ量が少なくなる。このため、エンジン回転数は減少する。
【００９３】
さらに、図６の「パージ制御ルーチン」においては、エンジンの目標回転数ＮＴと実回転数であるエンジン回転数ＮＥとの偏差ＤＬＮＴが第１の判定値Ａ以上であって、第２の判定値Ｂ以下であれば、ステップ９０において、仮要求パージデューティ値ｔＤＰＧを前回値の最終要求デューティ値ＤＰＧとする。そして、この仮要求パージデューティ値ｔＤＰＧを最終要求デューティ値ＤＰＧとする。この結果、偏差ＤＬＮＴが上記範囲内にある場合には、蒸発燃料のパージ量は一定値とされる。
【００９４】
なお、筒内直接噴射型の内燃機関において、パージ実行条件は、暖機完了、すなわち冷却水温が所定温度以上に上がった後の他、クランキングが完了して所定時間、例えば３０秒が経過した後である。
【００９５】
次に、図８は、本実施の形態におけるアイドル時における停車中の「燃料噴射量の補正値算出ルーチン」を示すフローチャートであって、ＥＣＵ３０が所定時間毎の割り込みで実行する。本例は、（１−１）の特徴点による制御に加え、（１−２）で示した燃料供給量の調整を行うもので、燃料供給量制御手段による。
【００９６】
ここでは、デューティ比に代えて蒸発燃料量補正量ＦＰＧを制御パラメータとしており、最終的に供給される最終燃料噴射量（ＱＡＬＬＩＮＪ）は、前記（１）と同様、
最終燃料噴射量＝基本燃料噴射量−蒸発燃料量補正量
で与えられる。
【００９７】
従って、蒸発燃料量補正量ＦＰＧが大きくなると、最終燃料噴射量（ＱＡＬＬＩＮＪ）は少なくなって、リーン混合気となり、蒸発燃料量補正量ＦＰＧが小さくなると、最終燃料噴射量（ＱＡＬＬＩＮＪ）は多くなって、リッチ混合気となる。
【００９８】
処理がこのルーチンへ移行すると、ＥＣＵ３０は、先ず、ステップ１１０において、現在の燃焼状態が成層燃焼であるか否かを判断する。ここで、成層燃焼が行われているか否かは、そのときどきのエンジン回転数ＮＥ及びアクセル開度ＡＣＣＰに基づいて判断される。そして、現在の燃焼状態が成層燃焼でない場合には、この判定を「ＮＯ」として、この制御ルーチンを一旦終了する。現在の燃焼状態が成層燃焼である場合には、この判定を「ＹＥＳ」とし、ステップ１２０へ移行する。
【００９９】
ステップ１２０においては、アイドルスピードコントロール（ＩＳＣ）のフィードバック制御中か否かを判定する。ここでは、別途のＩＳＣ制御ルーチンが実行されているか否かを判定するのである。ＩＳＣ制御ルーチンが実行されていなければ、エンジン回転数ＮＥが安定していないとしてこの判定を「ＮＯ」とし、さらに、ステップ１２１で前回の安定時に一時記憶されたＦＰＧをＦＰＧＯとして、今回のＦＰＧ値に代入し、この制御ルーチンを一旦終了する。ＩＳＣ制御ルーチンが行われていれば、エンジン回転数ＮＥが安定しているとしてこの判定を「ＹＥＳ」とし、ステップ１３０に移行する。
【０１００】
ステップ１３０では、第１の補正手段として、エンジンの目標回転数ＮＴと実際のエンジン回転数ＮＥとの偏差ＤＬＮＴを算出する。次いでステップ１４０において、偏差ＤＬＮＴが第３の判定値Ｃ（ｒｐｍ）よりも小さいか否かを判定する。ステップ１４０において、偏差ＤＬＮＴが第３の判定値Ｃ未満であると判定された場合には、ステップ１５０に移行し、仮蒸発燃料量補正量ｔＦＰＧを算出する。仮蒸発燃料量補正量ｔＦＰＧは、前回値（前回の制御ルーチンで得られた最終蒸発燃料量補正量）ＦＰＧi-1 に対し燃料補正更新量ＫＦＰＧＤを減算したものとする。
【０１０１】
この燃料補正更新量ＫＦＰＧＤは、予め実験等により求められたものであり、ＲＯＭ３３に格納されている。次にステップ１６０において、最終蒸発燃料量補正量ＦＰＧとして、前記ステップ１５０において算出された仮蒸発燃料量補正量ｔＦＰＧをセットし、この制御ルーチンを終了する。
【０１０２】
又、前記ステップ１４０において、偏差ＤＬＮＴが第３の判定値Ｃ以上であればステップ１７０において、偏差ＤＬＮＴが第４の判定値Ｄ（ｒｐｍ）よりも大であるか否かを判定する。なお、Ｃ＜Ｄである。同ステップ１７０において、偏差ＤＬＮＴが第４の判定値Ｄを越えていると判定した場合には、ステップ１８０に移行し、仮蒸発燃料量補正量ｔＦＰＧを算出する。仮蒸発燃料量補正量ｔＦＰＧは、前回値（前回の制御ルーチンで得た最終蒸発燃料量補正量）ＦＰＧi-1 から燃料補正更新量ＫＦＰＧＵを加算したものとする。この燃料補正更新量ＫＦＰＧＵは、予め実験等により求められたものであり、ＲＯＭ３３に格納されている。
【０１０３】
次にステップ１６０において、最終蒸発燃料量補正量ＦＰＧとして前記ステップ１８０において算出された仮蒸発燃料量補正量ｔＦＰＧをセットし、この制御ルーチンを終了する。
【０１０４】
又、前記ステップ１７０において、偏差ＤＬＮＴが第４の判定値Ｄ未満であると判定した場合には、エンジンの回転がある領域で安定しているとし、ステップ１９０に移行して、仮蒸発燃料量補正量ｔＦＰＧを算出する。仮蒸発燃料量補正量ｔＦＰＧは、前回値ＦＰＧi-1 とする。次いで、ステップ１６０に移行して、最終蒸発燃料量補正量ＦＰＧとして前記ステップ１９０において得られた前回値である最終蒸発燃料量補正量ＦＰＧi-1 をセットじ、この制御ルーチンを終了する。
【０１０５】
以上のルーチンは、図６のステップ１０から６１及び６３に相当するものであり、ＥＣＵ３０は、図６のステップ６４と同様の手段で、前記（１）式に従って最終燃料噴射量（ＱＡＬＬＩＮＪ）を算出する。
【０１０６】
そして、ＥＣＵ３０は、基本燃料噴射量にこの補正量が反映された最終噴射量にて燃料噴射弁１１を噴射制御する。
【０１０７】
図８の「燃料噴射量の補正値算出ルーチン」においては、偏差ＤＬＮＴが第３の判定値Ｃ未満であれば、ステップ１５０において、燃料補正更新量ＫＦＰＧＤが前回値の最終蒸発燃料量補正量ＦＰＧi-1 から減算されたものが仮蒸発燃料量補正量ｔＦＰＧとなり、この値を最終蒸発燃料量補正量ＦＰＧとする。
【０１０８】
得られた、最終の蒸発燃料量補正量ＦＰＧは、前回のＦＰＧより小さい値である。ＤＬＮＴがＣ未満で、エンジン回転数が低いということであるから、ＦＰＧの値を小さくし、前記式（１）から得られる最終燃料噴射量（ＱＡＬＬＩＮＪ）をリッチ化し、エンジン回転数を上昇させるのである。
【０１０９】
又、図８の「燃料噴射量の補正値算出ルーチン」においては、ステップ１７０において、偏差ＤＬＮＴが第４の判定値Ｄを越えていれば、ステップ１８０において、仮蒸発燃料量補正量ｔＦＰＧとして、前回値の最終蒸発燃料量補正量ＦＰＧi-1 に対して燃料補正更新量ＫＦＰＧＤを加算した値とする。そして、この仮蒸発燃料量補正量ｔＦＰＧを、最終蒸発燃料量補正量ＦＰＧとする。
【０１１０】
この最終蒸発燃料量補正量ＦＰＧが別途のルーチンで実行される最終燃料噴射量（ＱＡＬＬＩＮＪ）の算出に際し、式（１）に代入される。その結果、ＦＰＧが大きくなった分、最終燃料噴射量（ＱＡＬＬＩＮＪ）がリーン化し、エンジン回転数が減少する。
【０１１１】
又、図８の「燃料噴射量の補正値算出ルーチン」においては、偏差ＤＬＮＴが第３の判定値Ｃ以上であって、第４の判定値Ｄ以下であれば、ステップ１９０において、仮蒸発燃料量補正量ｔＦＰＧとして、前回値の最終蒸発燃料量補正量ＦＰＧi-1 とする。そして、この仮蒸発燃料量補正量ｔＦＰＧを、最終蒸発燃料量補正量ＦＰＧとする。この結果、偏差ＤＬＮＴが上記範囲内にある場合には、蒸発燃料量補正量は一定値とされる。
【０１１２】
図６と図８の例では、上記のように、目標回転数ＮＴと実回転数ＮＥとの偏差ＤＬＮＴに応じて、蒸発燃料のパージ量を増減し、又、偏差ＤＬＮＴに応じて燃料噴射量を増減して、アイドル目標回転数ＮＴに収束するようにした。
【０１１３】
すなわち、目標回転数ＮＴと実回転数との偏差ＤＬＮＴに応じて、最終要求デューティ値ＤＰＧを求め、この値に基づいて電磁弁８１を制御するようにし、かつ、最終蒸発燃料量補正量ＦＰＧを算出し、この値に基づいて、燃料噴射量を補正し、減量するようにした。
【０１１４】
この結果、成層燃焼が行われているアイドル状態において、ベース燃料を効果的に減量できる。さらに、蒸発燃料が濃い薄いに限らず、アイドル回転数の安定性を確保でき、燃費の向上も図ることができる。
【０１１５】
（アイドルオフ時の走行中の制御）
＜第３の補正手段による制御＞
図９は、本実施の形態におけるアイドルオフ時の走行中の「パージ制御ルーチン」を示すフローチャートであって、ＥＣＵ３０が所定時間毎の割り込みで実行する。この場合の制御は、トルク変動（出力変動）に応じて蒸発燃料量を補正する（３）の特徴点の適用例である。
【０１１６】
処理がこのルーチンへ移行すると、ＥＣＵ３０は、先ず、ステップ２１０において、現在の燃焼状態が、均質リーン燃焼状態以下、すなわち、成層燃焼状態、弱成層燃焼状態、或いは均質リーン燃焼状態か、或いは均質燃焼状態であるか否かを判断する。すなわち、燃焼モードＦＭＯＤＥが「０」，「１」，「２」か「３」否かを判定する。ここで、ＦＭＯＤＥが「０」，「１」，「２」でない場合には、リーン運転でないとして、この制御ルーチンを一旦終了する。ステップ２１０において、ＦＭＯＤＥが「０」，「１」或いは「２」の場合には、リーン運転がされているとして、この判定を「ＹＥＳ」とし、ステップ２２０へ移行する。ステップ２２０においては、アイドルがオフとされているか否かを全閉信号ＸＩＤＬに基づいて判定する。全閉信号ＸＩＤＬが「１」の場合には、アイドルがオフされていないとして、ステップ２２１で前回の安定時に一時記憶されたＤＰＧをＤＰＧＯとして、今回のＤＰＧ値に代入し、この制御ルーチンを一旦終了する。全閉信号ＸＩＤＬが「０」の場合には、この判定を「ＹＥＳ」とし、ステップ２３０に移行する。
【０１１７】
ステップ２３０において、トルク変動値ＤＬＮＩＳＭＸの算出条件成立しているか否かを判定する。ここでは、別のルーチンにおいて、トルク変動値ＤＬＮＩＳＭＸが算出されていれば、算出条件が成立されているとされ、同別のルーチンにおいて、トルク変動値ＤＬＮＩＳＭＸが算出されていなければ、算出条件が成立していないとされる。すなわち、トルク変動値ＤＬＮＩＳＭＸはエンジン回転数が所定回転毎に計算されており、その周期毎に算出された直後にこの制御ルーチンが処理されるようにされている。従って、通常は、このステップ２３０においては、「ＹＥＳ」と判定される。なお：回転変動が大きな状態等のように、トルク変動値ＤＬＮＩＳＭＸが算出されない場合には、算出条件は成立していないとされ、ステップ３００に移行する。
【０１１８】
なお、トルクは、ある所定のクランク角度間における角速度の差で表される。従って、この実施の形態では同一気筒における７２０°ＣＡ（クランク角度）後のトルクとの差をトルク変動として算出されている。又、この実施の形態では、４気筒であるため、それらの気筒のトルク変動の平均値をトルク変動値ＤＬＮＩＳＭＸとしている。トルク変動はトルクセンサで直接検出してもよいが、エンジン回転数や燃焼圧等を代用してもよい。
【０１１９】
前記ステップ２３０において、算出条件が設立されていると判定すると、ステップ２４０において、トルク変動値ＤＬＮＩＳＭＸを読み込む。次のステップ２５０において、トルク変動値ＤＬＮＩＳＭＸが第５の判定値としての目標トルク変動値ＬＶＬＤＬＮ以上か否かを判定する。トルク変動値ＤＬＮＩＳＭＸが目標トルク変動値ＬＶＬＤＬＮ以上であれば、ステップ２６０において、仮要求パージデューティ値ｔＤＰＧとして前回値の最終要求デューティ値ＤＰＧi-1  にパージデューティ更新量Ｅを加算する。このパージデューティ更新量Ｅは、予め実験等により求められたものであり、ＲＯＭ３３に格納されている。
【０１２０】
次にステップ２７０において、最終要求デューティ値ＤＰＧとして前記ステップ２６０において算出された仮要求パージデューティ値ｔＤＰＧをセットし、この制御ルーチンを終了する。
【０１２１】
又、前記ステップ２５０において、トルク変動値ＤＬＮＩＳＭＸが目標トルク変動値ＬＶＬＤＬＮ未満であれば、ステップ２８０において、トルク変動値ＤＬＮＩＳＭＸが目標トルク変動値ＬＶＬＤＬＮから所定値α減算した値よりも小さいか否かを判定する。トルク変動値ＤＬＮＩＳＭＸが目標トルク変動値ＬＶＬＤＬＮから所定値α減算した値よりも小さいければ、ステップ２９０において、前回値の最終要求デューティ値ＤＰＧi-1 からパージデューティ更新量Ｆを減算する。このパージデューテー更新量Ｆは、予め実験等により求められたものであり、ＲＯＭ３３に格納されている。
【０１２２】
次にステップ２７０において、最終要求デューティ値ＤＰＧとして前記ステップ２９０において算出された仮要求パージデューティ値ｔＤＰＧをセットし、この制御ルーチンを終了する。
【０１２３】
又、前記ステップ２８０において、トルク変動値ＤＬＮＩＳＭＸが目標トルク変動値ＬＶＬＤＬＮから所定値α減算した値以上の場合にはステップ３００に移行する。前記ステップ２３０或いは、ステップ２８０からステップ３００に移行した場合には、仮要求パージデューティ値ｔＤＰＧは、前回値の最終要求デューティ値ＤＰＧi-1 とする。次いで、ステップ２７０に移行して、最終要求デューティ値ＤＰＧとして前記ステップ３００において得られた仮要求パージデューティ値ｔＤＰＧをセットし、この制御ルーチンを終了する。
【０１２４】
従って、ＥＣＵ３０は、この最終要求デューティ値ＤＰＧに基づいて、電磁弁８１をデューティ制御する。
【０１２５】
このルーチンは、図６のステップ１０から６０及び６３に相当するものであり、ＥＣＵ３０は、図６のステップ６１でＤＰＧをＦＰＧに換算し、ステップ６４と同様にして、前記（１）式に従って最終燃料噴射量（ＱＡＬＬＩＮＪ）を算出する。
【０１２６】
図９の「パージ制御ルーチン」においては、トルク変動値ＤＬＮＩＳＭＸが目標トルク変動値ＬＶＬＤＬＮ以上であれば、パージ量を増加させるべく、仮要求パージデューティ値ｔＤＰＧを、前回値（前回の制御ルーチンで得られた最終要求デューティ値）ＤＰＧi-1 に対しパージデューティ更新量Ｅを加算する（ステップ２６０）。この結果、蒸発燃料のパージ量が多くなり、エンジン回転数が上昇する。
【０１２７】
また、図９の「パージ制御ルーチン」においては、トルク変動値ＤＬＮＩＳＭＸが目標トルク変動値ＬＶＬＤＬＮよりも所定値αを減算した値未満であれば、パージ量を減少させるべく、仮要求パージデューティ値ｔＤＰＧを、前回値（前回の制御ルーチンで得られた最終要求デューティ値）ＤＰＧi-1 からパージデューティ更新量Ｆを減算する（ステップ２９０）。この結果、蒸発燃料のパージ量が少なくなり、エンジン回転数が下降する。
【０１２８】
さらに、図９の「パージ制御ルーチン」においては、トルク変動値ＤＬＮＩＳＭＸが目標トルク変動値ＬＶＬＤＬＮ未満であって、目標トルク変動値ＬＶＬＤＬＮから所定値αを減算した値以上である場合には、ステップ３００において、仮要求パージデューティ値ｔＤＰＧを前回値の最終要求デューティ値ＤＰＧとする。そして、この仮要求パージデューティ値ｔＤＰＧを最終要求デューティ値ＤＰＧとする。この結果、トルク変動値ＤＬＮＩＳＭＸが上記範囲内にある場合には、蒸発燃料のパージ量は一定値とされる。
【０１２９】
次に、図１０は、本実施の形態におけるアイドルオフ時の走行中の「燃料噴射量の補正値算出ルーチン」を示すフローチャートであって、ＥＣＵ３０が所定時間毎の割り込みで実行する。これは、（３）の特徴点を適用し、第３の補正手段で内燃機関の出力変動に伴い燃料供給量を調整する場合の例である。
【０１３０】
処理がこのルーチンへ移行すると、ＥＣＵ３０は、先ず、ステップ３１０において、現在の燃焼状態が、均質リーン燃焼状態以下、すなわち、成層燃焼状態、弱成層燃焼状態、或いは均質リーン燃焼状態か、或いは均質燃焼状態であるか否かを判断する。すなわち、燃焼モードＦＭＯＤＥが「０」，「１」，「２」か「３」否かを判定する。ここで、ＦＭＯＤＥが「０」，「１」，「２」でない場合には、リーン運転でないとして、この制御ルーチンを一旦終了する。ステップ３１０において、ＦＭＯＤＥが「０」，「１」或いは「２」の場合には、リーン運転がされているとして、この判定を「ＹＥＳ」とし、ステップ３２０へ移行する。
【０１３１】
ステップ３２０においては、アイドルがオフとされているか否かを全閉信号ＸＩＤＬに基づいて判定する。全閉信号ＸＩＤＬが「１」の場合には、アイドルがオフされていないとして、ステップ３２１で前回の安定時に一時記憶されたＦＰＧをＦＰＧＯとして、今回のＦＰＧ値に代入し、この制御ルーチンを一旦終了する。全閉信号ＸＩＤＬが「０」の場合には、この判定を「ＹＥＳ」とし、ステップ３３０に移行する。
【０１３２】
ステップ３３０において、トルク変動値ＤＬＮＩＳＭＸの算出条件成立しているか否かを判定する。このステップ３３０の判定は、前記図９の制御ルーチンのステップ２３０と同様にして行われる。
【０１３３】
前記ステップ３３０において、算出条件が設立されていると判定すると、ステップ３４０において、トルク変動値ＤＬＮＩＳＭＸを読み込む。次のステップ３５０において、トルク変動値ＤＬＮＩＳＭＸが第６の判定値としての目標トルク変動値ＬＶＬＤＬＮ未満か否かを判定する。トルク変動値ＤＬＮＩＳＭＸが目標トルク変動値ＬＶＬＤＬＮ未満であれば、ステップ３６０において、仮蒸発燃料量補正量ｔＦＰＧとして前回値の最終蒸発燃料量補正量ＦＰＧi-1 に燃料補正更新量Ｇを加算する。この燃料補正更新量Ｇは、予め実験等により求められたものであり、ＲＯＭ３３に格納されている。
【０１３４】
次にステップ３７０において、最終蒸発燃料量補正量ＦＰＧとして前記ステップ３６０において算出された仮蒸発燃料量補正量ｔＦＰＧをセットし、この制御ルーチンを終了する。
【０１３５】
又、前記ステップ３５０において、トルク変動値ＤＬＮＩＳＭＸが目標トルク変動値ＬＶＬＤＬＮ以上であれば、ステップ３８０において、トルク変動値ＤＬＮＩＳＭＸが目標トルク変動値ＬＶＬＤＬＮに対して所定値β加算した値以上か否かを判定する。トルク変動値ＤＬＮＩＳＭＸが目標トルク変動値ＬＶＬＤＬＮに対して所定値β加算した値以上であれば、ステップ３９０において、前回値の最終蒸発燃料量補正量ＦＰＧi-1 から燃料補正更新量Ｈを減算する。この燃料補正更新量Ｈは、予め実験等により求められたものであり、ＲＯＭ３３に格納されている。
【０１３６】
次にステップ３７０において、最終蒸発燃料量補正量ＦＰＧとして前記ステップ３９０において算出された仮蒸発燃料量補正量ｔＦＰＧをセットし、この制御ルーチンを終了する。
【０１３７】
又、前記ステップ３８０において、トルク変動値ＤＬＮＩＳＭＸが目標トルク変動値ＬＶＬＤＬＮに対して所定値β加算した値未満の場合にはステップ４００に移行する。前記ステップ３３０或いは、ステップ３８０からステップ４００に移行した場合には、仮蒸発燃料量補正量ｔＦＰＧは、前回値の最終蒸発燃料量補正量ＦＰＧi-1 とする。次いで、ステップ３７０に移行して、最終蒸発燃料量補正量ＦＰＧとして前記ステップ４００において得られた仮蒸発燃料量補正量ｔＦＰＧをセットし、この制御ルーチンを終了する。
【０１３８】
以上のルーチンは、図６のステップ１０から６１及び６３に相当するものであり、ＥＣＵ３０は、図６のステップ６４と同様の手段で、前記（１）式に従って最終燃料噴射量（ＱＡＬＬＩＮＪ）を算出する。
【０１３９】
そして、ＥＣＵ３０は、基本燃料噴射量にこの蒸発燃料量補正量が反映された最終燃料噴射量（ＱＡＬＬＩＮＪ）にて燃料噴射弁１１を噴射制御する。
【０１４０】
図１０の「燃料噴射量の補正値算出ルーチン」においては、ステップ３８０において、トルク変動値ＤＬＮＩＳＭＸが目標トルク変動値ＬＶＬＤＬＮに対して所定値βを加算した値以上であれば、ステップ３９０において、前回値の最終蒸発燃料量補正量ＦＰＧi-1 から燃料補正更新量Ｈが減算された値が仮蒸発燃料量補正量ｔＦＰＧとなる。そして、この仮蒸発燃料量補正量ｔＦＰＧを最終蒸発燃料量補正量ＦＰＧとし、別途のルーチンで実行される最終燃料噴射量（ＱＡＬＬＩＮＪ）の算出に際し、アイドル回転数制御用のパラメータとして基本燃料噴射量から減算される。
ＦＰＧは前回より小さくなっているので、最終燃料噴射量（ＱＡＬＬＩＮＪ）は多くなり、空燃比はリッチとなりトルク変動は小さくなる。
【０１４１】
また、図１０の「燃料噴射量の補正値算出ルーチン」のステップ３５０において、トルク変動値ＤＬＮＩＳＭＸが目標トルク変動値ＬＶＬＤＬＮに未満であれば、ステップ３６０において、前回値の最終蒸発燃料量補正量ＦＰＧi-1 に対して燃料補正更新量Ｇを加算した値が仮蒸発燃料量補正量ｔＦＰＧとなる。そして、この仮蒸発燃料量補正量ｔＦＰＧを最終蒸発燃料量補正量ＦＰＧとし、式（１）で決定する最終燃料噴射量（ＱＡＬＬＩＮＪ）の算出に際し、アイドル回転数制御用のパラメータとして減算される。この場合、ＦＰＧは前回より大きな値であり、その結果、リーンとなる。この場合は、ベーパ濃度が濃いのでパージ量を減らすのであって、トルク変動を大きくするのではない。
【０１４２】
さらに、図１０の「燃料噴射量の補正値算出ルーチン」においては、トルク変動値ＤＬＮＩＳＭＸが、目標トルク変動値ＬＶＬＤＬＮ以上であって、目標トルク変動値ＬＶＬＤＬＮに対して所定値βを減算した値未満である場合には、ステップ４００において、仮蒸発燃料量補正量ｔＦＰＧを前回値の最終蒸発燃料量補正量ＦＰＧとする。このｉ結果、トルク変動値ＤＬＮＩＳＭＸが上記範囲内にある場合には、蒸発燃料量補正量ＦＰＧは一定値とされる。
【０１４３】
上記のように、図９、図１０の実施の形態では、目標トルク変動値ＬＶＬＤＬＮにフィードバック制御を行っているため、パージよる失火、サージが発生した場合でも、効果的に燃料の減量ができ、しかも目標トルク変動値に収束するように制御を行っているため、ドライバビリティを確保でき、燃費の向上を行うことができる。
【０１４４】
なお、図１１は、トルク変動量と燃料量の特性を表しているグラフである。同図において、燃料量を少しリッチにすると、トルク変動は向上し、さらにリッチにすると悪化する傾向となる。従って、この実施の形態では、目標トルク変動値ＬＶＬＤＬＮを図１１のトルク変動量が最も良いところ付近に設定しておけば、ａからｂにするために、上記の制御によりパージ量を増加させるとともに、燃料量補正を行い、燃料過多によりｃに移行することがないように制御することにより、目標トルク変動値ＬＶＬＤＬＮを中心として所定範囲内に収束することができる。
【０１４５】
＜運転状態に関係なく内燃機関の機関回転数に応じて第２の補正手段で蒸発燃料量を補正する例＞
次に、図１２に、（２）の特徴点を適用し、機関回転数のみを参照して第２の補正手段によりパージ制御をする「パージ制御ルーチン」を示す。このルーチンもまたＥＣＵ３０が所定時間毎の割り込みで実行する。
【０１４６】
処理がこのルーチンへ移行すると、ＥＣＵ３０は、先ず、ステップ４１０において、前回のルーチン実行時のエンジン回転数ＮＥＯと、現在のエンジン回転数ＮＥとの偏差ＤＬＮＥを算出する。次いでステップ４２０において、偏差ＤＬＮＥが０より大きいか否かが判定される。ステップ４２０において、偏差ＤＬＮＥが０より大きいと判定されたとき、エンジン回転数が増加傾向にあるので、ステップ４３０に移行し、仮要求パージデューティ値ｔＤＰＧは、前回値（前回の制御ルーチンで得られた最終要求デューティ値）ＤＰＧi-1 に対しパージデューティ更新量ＫＤＰＧＵを加算したものとする。このパージデューティ更新量ＫＤＰＧＵは、予め実験等により求められたものであり、ＲＯＭ３３に格納されている。次にステップ４４０において、最終要求デューティ値ＤＰＧとして前記ステップ４３０において算出された仮要求パージデューティ値ｔＤＰＧをセットし、この制御ルーチンを終了する。
【０１４７】
又、前記ステップ４２０において、偏差ＤＬＮＥが０より大きくなければ、ステップ４５０に移行し、偏差ＤＬＮＥが０よりも小さいか否かを判定する。ステップ４５０において、偏差ＤＬＮＥが０より小さいと判定した場合には、ステップ４６０に移行し、仮要求パージデューティ値ｔＤＰＧは、前回値（前回の制御ルーチンで得られた最終要求デューティ値）ＤＰＧi-1 からパージデューティ更新量ＫＤＰＧＤを減算したものとする。このパージデューティ更新量ＫＤＰＧＤは、予め実験等により求められたものであり、ＲＯＭ３３に格納されている。
【０１４８】
次にステップ４４０において、最終要求デューティ値ＤＰＧとして前記ステップ４６０において算出された仮要求パージデューティ値ｔＤＰＧをセットし、この制御ルーチンを終了する。
【０１４９】
ステップ４５０において、偏差ＤＬＮＥが０より小さいと判定されない場合、偏差ＤＬＮＥは０であり、エンジン回転数に変化はないとされる。この場合、ステップ４８０に移行し、仮要求パージデューティ値ｔＤＰＧは、前回値（前回の制御ルーチンで得られた最終要求デューティ値）ＤＰＧi-1 と同一の値をとる。
【０１５０】
次にステップ４４０において、最終要求デューティ値ＤＰＧとして前記ステップ４８０において算出された仮要求パージデューティ値ｔＤＰＧをセットし、この制御ルーチンを終了する。
【０１５１】
従って、ＥＣＵ３０は、この最終要求デューティ値ＤＰＧに基づいて、電磁弁８１をデューティ制御する。
以上のルーチンは、図６のステップ１０から６１に相当するものであり、ＥＣＵ３０は、図６のステップ６１、６４と同様の手段で、前記（１）式に従って最終燃料噴射量（ＱＡＬＬＩＮＪ）を算出する。
【０１５２】
通常スロットル弁がほぼ全開に近い状態で運転されることが多い筒内噴射型内燃機関では、吸入空気量すなわち負圧が一定であるため、空気吸入量、負荷（＝空気量／機関回転数）、吸気管負圧の少なくとも一つの値に応じてパージ量を制御しようとすると、低回転数の成層燃焼と、高回転数の均質燃焼とで同じ量のパージを実行する場合、低回転側で燃焼不安定となったり失火が生じたりする。この例では、吸気管負圧に依存せず、機関回転数のみを制御パラメータとして利用し、機関回転数に応じてパージ量を制御することとしたので、安定した燃焼を得ることができる。
【０１５３】
（第４の補正手段による燃焼モード切り換り時の制御）
次に、図１３から図１８は、本実施の形態における燃焼モード切り換り時の「ＤＰＧ，ＦＰＧの補正算出ルーチン」を示すフローチャートであって、ＥＣＵ３０が所定時間毎の割り込みで実行する。
【０１５４】
＜前回均質リーン燃焼からのモード切換時制御＞
処理がこのルーチンへ移行すると、図１３のステップ６１０において、現在の運転モード（燃焼モード）及び前回の制御時の運転モード（燃焼モード）を読み込む、ステップ６２０において、前回の燃焼モードＦＭＯＤＥが「２」（均質リーン燃焼）であったか、否かを判定する。同ステップ６２０において、燃焼モードＦＭＯＤＥが「２」である場合には、図１４で示したステップ６２１に移行する。
【０１５５】
ステップ６２１では、今回の燃焼モードＦＭＯＤＥが「１」（弱成層燃焼）である場合には、ステップ６２４に移行して、補正係数ｔＫＤＰＧＣＨにＫ１をセットする。この係数Ｋ１（＜１．０）は無次元数であって、前回燃焼モードＦＭＯＤＥ（均質リーン燃焼）から今回燃焼モードＦＭＯＤＥ（弱成層燃焼）に変ったときに蒸発燃料のパージ量、及び燃料噴射量が最適値となるように、すなわち、モード切り換り時に、燃焼が悪化しないような値となるよう、予め実験等により求められており、ＲＯＭ３３に格納されている。この後、図１８のステップ６６０に移行する。
【０１５６】
又、前記ステップ６２１において、今回の燃焼モードＦＭＯＤＥが「１」（弱成層燃焼）でない場合には、ステップ６２２に移行する。ステップ６２２では、今回の燃焼モードＦＭＯＤＥが「０」（成層燃焼）であるか否かを判定する。同ステップ６２２において今回の燃焼モードＦＭＯＤＥが「０」（成層燃焼）でない場合には、ステップ６２３に移行し、今回の燃焼モードＦＭＯＤＥが「３」（均質燃焼）であるか否かを判定し、今回の燃焼モードが「３」でない場合は、燃焼モードＦＭＯＤＥの変化がないとしてステップ６２７に移行し、補正係数ｔＫＤＰＧＣＨとして１．０をセットする。この係数１．０は、予めＲＯＭ３３に格納されている。この後、図１８のステップ６６０に移行する。
【０１５７】
又、前記ステップ６２２において、今回の燃焼モードＦＭＯＤＥが「０」（成層燃焼）である場合には、ステップ６２５に移行し、補正係数ｔＫＤＰＧＣＨとしてＫ２（＜１．０）をセットする。この係数Ｋ２（Ｋ２＜Ｋ１）は無次元数であって、前回燃焼モードＦＭＯＤＥ（均質リーン燃焼）から今回燃焼モード（成層燃焼）に変わったときに蒸発燃焼のパージ量、及び燃料噴射量が最適値となるように、すなわち、モード切り換り時に、燃焼が悪化しないような値となるよう、予め実験等により求められており、Ｒ０Ｍ３３に格納されている。この後、図１８のステップ６６０に移行する。
【０１５８】
前記ステップ６２３において、今回の燃焼モードＦＭＯＤＥが「３」（均質燃焼）であると判断された場合には、補正係数ｔＫＤＰＧＣＨとしてＫ３（＜１．０）をセットする。この係数Ｋ３（Ｋ２＜Ｋ１＜Ｋ３）は無次元数であって、前回燃焼モードＦＭＯＤＥ（均質リーン燃焼）から今回燃焼モード（均質燃焼）に変わったときに蒸発燃焼のパージ量、及び燃料噴射量が最適値となるように、すなわち、モード切り換り時に、燃焼が悪化しないような値となるよう、予め実験等により求められており、Ｒ０Ｍ３３に格納されている。この後、図１８のステップ６６０に移行する。
【０１５９】
＜前回弱成層燃焼からのモード切換時制御＞
図１３のステップ６２０において、前回の燃焼モードＦＭＯＤＥが「２」（均質リーン燃焼）でない場合には、ステップ６３０に移行し、前回燃焼モードＦＭＯＤＥが「１」（弱成層燃焼）であるか否かを判定する。前回燃焼モードＦＭＯＤＥが「１」であれば、図１５で示したステップ６３１に移行し、今回燃焼モードＦＭＯＤＥが「２」（均質リーン燃焼）であるか否かを判定する。
【０１６０】
ステップ６３１において、前回の燃焼モードＦＭＯＤＥが「２」（均質リーン燃焼）である場合には、ステップ６３４に移行する。
【０１６１】
ステップ６３４では、補正係数ｔＫＤＰＧＣＨにＫ４をセットする。この係数Ｋ４（＜１．０）は無次元数であって、前回燃焼モードＦＭＯＤＥ（弱成層燃焼）から今回燃焼モードＦＭＯＤＥ（均質リーン燃焼）に変ったときに蒸発燃料のパージ量、及び燃料噴射量が最適値となるように、すなわち、モード切り換り時に、燃焼が悪化しないような値となるよう、予め実験等により求められており、ＲＯＭ３３に格納されている。この後、図１８のステップ６６０に移行する。
【０１６２】
又、前記ステップ６３１において、今回の燃焼モードＦＭＯＤＥが「２」（均質リーン燃焼）でない場合には、ステップ６３２に移行する。ステップ６３２では、今回の燃焼モードＦＭＯＤＥが「０」（成層燃焼）であるか否かを判定する。同ステップ６３２において今回の燃焼モードＦＭＯＤＥが「０」（成層燃焼）でない場合には、ステップ６３３に移行し、今回の燃焼モードＦＭＯＤＥが「３」（均質燃焼）であるか否かを判定し、今回の燃焼モードが「３」でない場合は、燃焼モードＦＭＯＤＥの変化がないとしてステップ６３７に移行し、補正係数ｔＫＤＰＧＣＨとして１．０をセットする。この係数１．０は、予めＲＯＭ３３に格納されている。この後、図１８のステップ６６０に移行する。
【０１６３】
又、前記ステップ６３２において、今回の燃焼モードＦＭＯＤＥが「０」（成層燃焼）である場合には、ステップ６３５に移行し、補正係数ｔＫＤＰＧＣＨとしてＫ５（＜１．０）をセットする。この係数Ｋ５（＜１．０，Ｋ４＞Ｋ５）は無次元数であって、前回燃焼モードＦＭＯＤＥ（弱成層燃焼）から今回燃焼モード（成層燃焼）に変わったときに蒸発燃焼のパージ量、及び燃料噴射量が最適値となるように、すなわち、モード切り換り時に、燃焼が悪化しないような値となるよう、予め実験等により求められており、Ｒ０Ｍ３３に格納されている。この後、ステップ６６０に移行する。
【０１６４】
前記ステップ６３３において、今回の燃焼モードＦＭＯＤＥが「３」（均質燃焼）であると判断された場合には、補正係数ｔＫＤＰＧＣＨとしてＫ６（＜１．０）をセットする。この係数Ｋ６（＜１．０，Ｋ５＜Ｋ４＜Ｋ６）は無次元数であって、前回燃焼モードＦＭＯＤＥ（弱成層燃焼）から今回燃焼モード（均質燃焼）に変わったときに蒸発燃焼のパージ量、及び燃料噴射量が最適値となるように、すなわち、モード切り換り時に、燃焼が悪化しないような値となるよう、予め実験等により求められており、Ｒ０Ｍ３３に格納されている。この後、図１８のステップ６６０に移行する。
【０１６５】
＜前回成層燃焼からのモード切換時制御＞
図１３のステップ６３０において、前回の燃焼モードＦＭＯＤＥが「１」（弱成層燃焼）でない場合には、ステップ６４０に移行し、前回燃焼モードＦＭＯＤＥが「０」（成層燃焼）であるか否かを判定する。前回燃焼モードＦＭＯＤＥが「０」であれば、図１６のステップ６４１に移行し、今回燃焼モードＦＭＯＤＥが「１」（弱成層燃焼）であるか否かを判定する。
【０１６６】
ステップ６４１において、前回の燃焼モードＦＭＯＤＥが「１」（弱成層燃焼）である場合には、ステップ６４４に移行する。
【０１６７】
ステップ６４４では、補正係数ｔＫＤＰＧＣＨにＫ７をセットする。この係数Ｋ７（＜１．０）は無次元数であって、前回燃焼モードＦＭＯＤＥ（成層燃焼）から今回燃焼モードＦＭＯＤＥ（弱成層燃焼）に変ったときに蒸発燃料のパージ量、及び燃料噴射量が最適値となるように、すなわち、モード切り換り時に、燃焼が悪化しないような値となるよう、予め実験等により求められており、ＲＯＭ３３に格納されている。この後、図１８のステップ６６０に移行する。
【０１６８】
又、前記ステップ６４１において、今回の燃焼モードＦＭＯＤＥが「１」（弱成層燃焼）でない場合には、ステップ６４２に移行する。ステップ６４２では、今回の燃焼モードＦＭＯＤＥが「２」（均質リーン燃焼）であるか否かを判定する。同ステップ６４２において今回の燃焼モードＦＭＯＤＥが「２」（均質リーン燃焼）でない場合には、ステップ６４３に移行し、今回の燃焼モードＦＭＯＤＥが「３」（均質燃焼）であるか否かを判定し、今回の燃焼モードが「３」でない場合は、燃焼モードＦＭＯＤＥの変化がないとしてステップ６４７に移行し、補正係数ｔＫＤＰＧＣＨとして１．０をセットする。この係数１．０は、予めＲＯＭ３３に格納されている。この後、図１８のステップ６６０に移行する。
【０１６９】
又、前記ステップ６４２において、今回の燃焼モードＦＭＯＤＥが「２」（均質リーン燃焼）である場合には、ステップ６４５に移行し、補正係数ｔＫＤＰＧＣＨとしてＫ８（＜１．０）をセットする。この係数Ｋ８（Ｋ７＜Ｋ８）は無次元数であって、前回燃焼モードＦＭＯＤＥ（成層燃焼）から今回燃焼モード（均質リーン燃焼）に変わったときに蒸発燃焼のパージ量、及び燃料噴射量が最適値となるように、すなわち、モード切り換り時に、燃焼が悪化しないような値となるよう、予め実験等により求められており、Ｒ０Ｍ３３に格納されている。この後、図１８のステップ６６０に移行する。
【０１７０】
前記ステップ６４３において、今回の燃焼モードＦＭＯＤＥが「３」（均質燃焼）であると判断された場合には、補正係数ｔＫＤＰＧＣＨとしてＫ９（＜１．０）をセットする。この係数Ｋ９（Ｋ７＜Ｋ８＜Ｋ９）は無次元数であって、前回燃焼モードＦＭＯＤＥ（成層燃焼）から今回燃焼モード（均質燃焼）に変わったときに蒸発燃焼のパージ量、及び燃料噴射量が最適値となるように、すなわち、モード切り換り時に、燃焼が悪化しないような値となるよう、予め実験等により求められており、Ｒ０Ｍ３３に格納されている。この後、図１８のステップ６６０に移行する。
【０１７１】
＜前回均質燃焼からのモード切換時制御＞
図１３のステップ６４０において、前回の燃焼モードＦＭＯＤＥが「３」（成層燃焼）でない場合には、図１７のステップ６５１に移行し、前回燃焼モードＦＭＯＤＥが「１」（弱成層燃焼）であるか否かを判定する。前回燃焼モードＦＭＯＤＥが「１」であれば、ステップ６５４に移行する。
【０１７２】
ステップ６５４では、補正係数ｔＫＤＰＧＣＨにＫ１０をセットする。この係数Ｋ１０（＜１．０）は無次元数であって、前回燃焼モードＦＭＯＤＥ（均質燃焼）から今回燃焼モードＦＭＯＤＥ（弱成層燃焼）に変ったときに蒸発燃料のパージ量、及び燃料噴射量が最適値となるように、すなわち、モード切り換り時に、燃焼が悪化しないような値となるよう、予め実験等により求められており、ＲＯＭ３３に格納されている。この後、図１８のステップ６６０に移行する。
【０１７３】
又、前記ステップ６５１において、今回の燃焼モードＦＭＯＤＥが「１」（弱成層燃焼）でない場合には、ステップ６５２に移行する。ステップ６５２では、今回の燃焼モードＦＭＯＤＥが「０」（成層燃焼）であるか否かを判定する。同ステップ６５２において今回の燃焼モードＦＭＯＤＥが「０」（成層燃焼）でない場合には、ステップ６５３に移行し、今回の燃焼モードＦＭＯＤＥが「２」（均質リーン燃焼）であるか否かを判定し、今回の燃焼モードが「２」でない場合は、燃焼モードＦＭＯＤＥの変化がないとしてステップ６５７に移行し、補正係数ｔＫＤＰＧＣＨとして１．０をセットする。この係数１．０は、予めＲＯＭ３３に格納されている。この後、ステップ６６０に移行する。
【０１７４】
又、前記ステップ６５２において、今回の燃焼モードＦＭＯＤＥが「０」（成層燃焼）である場合には、ステップ６５５に移行し、補正係数ｔＫＤＰＧＣＨとしてＫ１１（＜１．０）をセットする。この係数Ｋ１１（Ｋ１１＜Ｋ１０）は無次元数であって、前回燃焼モードＦＭＯＤＥ（均質燃焼）から今回燃焼モード（成層燃焼）に変わったときに蒸発燃焼のパージ量、及び燃料噴射量が最適値となるように、すなわち、モード切り換り時に、燃焼が悪化しないような値となるよう、予め実験等により求められており、Ｒ０Ｍ３３に格納されている。この後、図１８のステップ６６０に移行する。
【０１７５】
前記ステップ６５３において、今回の燃焼モードＦＭＯＤＥが「２」（均質リーン燃焼）であると判断された場合には、補正係数ｔＫＤＰＧＣＨとしてＫ１２（＜１．０）をセットする。この係数Ｋ１２（Ｋ１１＜Ｋ１０＜Ｋ１２）は無次元数であって、前回燃焼モードＦＭＯＤＥ（均質燃焼）から今回燃焼モード（均質リーン燃焼）に変わったときに蒸発燃焼のパージ量、及び燃料噴射量が最適値となるように、すなわち、モード切り換り時に、燃焼が悪化しないような値となるよう、予め実験等により求められており、Ｒ０Ｍ３３に格納されている。この後、図１８のステップ６６０に移行する。
【０１７６】
上記各ステップから図１８のステップ６６０に移行すると、ステップ６６０では、最終補正係数ＫＤＰＧＣＨとして、上記各ステップにおいてセットされた補正係数ｔＫＤＰＧＣＨをセットする。次のステップ６７０では、前回制御周期において算出された最終要求デューティ値ＤＰＧi-1 に最終補正係数ＫＤＰＧＣＨを乗算した値を終要求デューティ値ＤＰＧとする。又、次のステップ６８０では、前回制御周期において算出された最終蒸発燃料量補正量ＦＰＧi-1 に最終補正係数ＫＤＰＧＣＨを乗算した値を最終蒸発燃料量補正量ＦＰＧとし、この算出ルーチンを一旦終了する。
【０１７７】
従って、ＥＣＵ３０は、この燃焼モード切り換り時の「ＤＰＧ、ＦＰＧの補正算出ルーチン」にて算出された最終要求デューティ値ＤＰＧ及び最終蒸発燃料量補正量ＦＰＧに基づいて、電磁弁８１をデューティ制御するとともに、燃料噴射弁１１を噴射制御する。
【０１７８】
このように、燃焼状態の切換に従って、蒸発燃料量を補正し、パージ制御弁を制御し、燃料噴射量を制御するので、燃焼状態に応じた最適な燃焼を確保できる。これは、（４−４）でいう、内燃機関の燃焼状態の切り換り時に、切換態様に応じて燃料の供給量を調整する燃料供給量制御手段を備えたものであるともいえる。
【０１７９】
＜蒸発燃料の濃度に応じた制御＞
次に、上記した各補正係数とベーパ濃度との関係を説明する。これは、（５−１）の特徴点を適用したもので第５の補正手段によるパージ制御弁等の制御の例である。
【０１８０】
図１９に上記各補正係数（Ｋ１からＫ１２）と、ベーパ濃度との関係を示す。
この図１９で、Ｃ１（低濃度）＜Ｃ２＜Ｃ３・・・・（高濃度）であり、Ｋ’＞Ｋ''＞Ｋ'''＞Ｋ''''である。
【０１８１】
この図１９の関係は、マップの形で予めＲＯＭに記憶されている。第５の補正手段は、濃度検出手段で検出したベーパ濃度に対応する補正係数をＲＯＭの対応関係から計算し、最適補正係数を得る。なお、濃度検出手段としては、例えば、パージ通路または吸気管中に設けられたＨＣセンサ（ハイドロカーボンセンサ）を利用できるが、酸素センサにより、パージガス中の酸素濃度を検出し酸素濃度から燃料濃度を逆算するようにしてもよい。
【０１８２】
図１３から図１８にあってはモード切換に関連して細かく補正係数をＫ１からＫ１２まで細かく変えたことで、最適な蒸発燃料量の供給を行え、燃焼悪化防止、十分なパージ量確保の両立が可能となった。
【０１８３】
すなわち、図１３から図１８の燃焼モード切り換り時の「ＤＰＧ、ＦＰＧの補正算出ルーチン」において、燃焼モードが変化したときに、その燃焼モードＦＭＯＤＥが切り換つた状憲に応じて補正係数を選択した。選択された補正係数は、そのモード切り換り時に燃焼が不安定とならないように最適な補正係数とされているため、パージ量、燃料噴射量とも最適な値となるように、電磁弁８１及び燃料噴射弁１１が制御される。この結果、燃焼モード切り換り時において、燃焼の悪化を防止することができる  尚、上記実施の形態に限定されるものではなく、例えば次の如く構成してもよい。
【０１８４】
（Ａ）  前記実施の形態において、図１３の燃焼モード切り換り時の「ＤＰＧ，ＦＰＧの補正算出ルーチン」においては、補正係数Ｋ１，Ｋ２を予め実験値として求められた値としたが、Ｋ１とＫ２とを前回燃焼モードのときの燃料噴射量と今回燃焼モードのときの燃料噴射量との比で算出するようにしてもよい。
【０１８５】
（Ｂ）  上記実施の形態では、筒内噴射式のエンジン１に本発明を具体化するようにしたが、いわゆる一般的な成層燃焼、或いは弱成層燃焼を行うタイプのものに具体化してもよい。例えば吸気ポート７ａ，７ｂの吸気弁６ａ，６ｂの傘部の裏側に向かって噴射するタイプのものも含まれる。また、吸気弁６ａ，６ｂ側に燃料噴射弁が設けられてはいるが、直接シリンダボア（燃焼室５）内に噴射するタイプのものも含まれる。さらに、ＳＣＶ１７を有する希薄燃焼（リーンバーン）を行いうるエンジンにも具体化できる。
【０１８６】
従って、この明細書では、希薄燃焼とは、これらの意味を含む趣旨である。（Ｃ）さらに、上記実施の形態では、内燃機関としてガソリンエンジン１の場合に木発明を具体化したが、その外にもディーゼルエンジン等の場合等にも具体化できる。
【０１８７】
上記実施の形態において、第４の補正手段による蒸発燃料量の補正にあたって、内燃機関の燃焼状態の切り換り時を判定する判定手段を設け、同判定手段に基づいて、第４の補正手段が、蒸発燃料量を補正するようにする。この場合、ＥＣＵ３０が判定手段を構成し、ステップ４２０、４３０、４８０、５１０、５２０がその判定手段に相当する。判定手段によって、燃焼状態の切り換り時を判定する。
【０１８８】
＜制御遅延手段（４−１）による制御＞
ところで、上記した燃焼モードの切換にあたっては、燃焼状態の切換時にパージ制御弁の開度変更または燃料噴射状態変更を開始するまでの時間を制御遅延手段により遅延させることも可能である。具体的には、図２０に示したように、燃焼モードＡから燃焼モードＢに移行するにあたり、所定の遅延時間を経過した後にモード切換、すなわちＤＰＧ、ＦＰＧの変更をするのが好ましい。これは短時間の間にモードＡからＢ、からＡへと移行するいわゆるハンチングを防止するためである。この制御遅延手段は、プログラムによりＣＰＵ上に実現される。
なお、所定の遅延時間は吸気の流速、回転数等によって可変される値でもよい。
【０１８９】
＜変化速度制御手段（４−２）（４−３）による制御＞
さらに、燃焼状態に応じてパージ制御弁の開度変化速度、あるいは燃料噴射状態変化速度を変化速度制御手段で、燃焼モード切換時に、前回ＤＰＧから今回ＤＰＧに移行するまでの変化度合い：λを図２１に示したように、なだらかに変化させると、移行時に安定した燃焼を得ることができる。
【０１９０】
さらには、（４−３）の特徴点に従って、図２１で示した変化度合いを、燃焼モード切換の態様に従って、異なるようにする。燃焼モード間における変化度合い：λを図２２に示す。
【０１９１】
この図２２から、リーンに行くとき緩やかに変化し、均質に近くなるとき、変化が大きくなることがわかる。均質燃焼は燃焼の安定度が高いので、均質に向かうほど変化を大きくしても問題ない。リーンの場合は燃焼が不安定になりがちである。そこで、リーンに向かう場合は、緩やかに変化させて大きな変動に伴う不安定な燃焼を避けるようにした。
＜機関回転数に応じて蒸発燃料量を補正する例＞
次に、機関回転数に応じて蒸発燃料量を補正する（２）の特徴点に関する実施の形態を図２３に従って説明する。
【０１９２】
まず、エンジン回転数ＮＥとアクセル開度ＡＣＡが入力される（ステップ６８１）。次いで、入力されたエンジン回転数とアクセル開度に従って基本的な基本燃料噴射量（ＱＡＬＬ）を計算する（ステップ６８２）。
【０１９３】
すなわち、まず、図示しないエンジン回転数及びアクセル開度と、基本燃料噴射量との相関関係を定めたマップから、当該エンジン回転数とアクセル開度に対応する基本燃料噴射量を補間的に計算する。
【０１９４】
ステップ６８３では、パージ中であるか否かを判定し、パージ中であれば、スロットル開度ＴＡとエンジン回転数ＮＥを取り込む（ステップ６８４）。
次いで、蒸発燃料量補正量（ＦＰＧ）を算出する（ステップ６８５）。この算出は、予めマップとしてＲＯＭに記憶したスロットル開度ＴＡエンジン回転数ＮＥと、蒸発燃料量補正量（ＦＰＧ）との相関関係（図２４参照）から行う。なお、図２４において、高中小とは、エンジン回転数である。エンジン回転数が少ないど、蒸発燃料量補正量は増える。
【０１９５】
ステップ６８３でパージ中でないとされた場合、ステップ６８７で蒸発燃料量補正量＝０とする。
ステップ６８５、６８７で蒸発燃料量補正量（ＦＰＧ）が決定された後、ステップ６８６に移行し、最終燃料噴射量（ＱＡＬＬＩＮＪ）が決定される。ここでは、ステップ６８２で予め計算された基本燃料噴射量（ＱＡＬＬ）から蒸発燃料量補正量（ＦＰＧ）を減ずることで最終燃料噴射量（ＱＡＬＬＩＮＪ）を決定する
その後、別途定めた燃料噴射プログラムに従って燃料噴射を行う。
【０１９６】
なお、蒸発燃料量補正量（ＦＰＧ）の別の計算方法としては、図２５に示したように、パージガス量Ｑｐから求める方法、図２６に示したようにインテークマニホールドの圧力から求める方法とが例示できる。
【０１９７】
なお、図２３に示したルーチンは所定時間間隔で繰返し実行される。
このような補正ルーチン、特にステップ６８４，６８５によって蒸発燃料量補正量を検出して補正するので、ドライバビリティやエミッションに影響することなく大量の蒸発燃料を処理できる。
＜蒸発燃料量の補正に伴う燃料噴射状態の変更＞
以上、蒸発燃料量を種々のパラメータに従って補正する例を紹介したが、これら蒸発燃料量の補正に伴い燃料噴射状態を変更する制御例を以下に説明する。これは（５）及び（５−１）の特徴点によるものである。
【０１９８】
図２７に従って、ＦＰＧ（蒸発燃料量補正量）に応じて燃料噴射時期を補正する例を説明する。
まず、エンジン回転数ＮＥとアクセル開度ＡＣＡが入力される（ステップ７０１）。次いで、入力されたエンジン回転数とアクセル開度に従って基本的な基本燃料噴射量（ＱＡＬＬ）を計算する（ステップ７０２）。
【０１９９】
ステップ７０３では、パージ中であるか否かを判定し、パージ中であれば、エアーと蒸発燃料からなるパージガス量Ｑｐを算出する（ステップ７０４）。この算出は、予めマップとしてＲＯＭに記憶したスロットル開度ＴＡとパージガス量との相関関係（図２８参照）から行う。なお、図２８において、高中小とは、エンジン回転数である。エンジン回転数が高いほど、パージガス量は増える。
【０２００】
次いで、パージガス通路等に設けたハイドロカーボンセンサ（ＨＣセンサ）で検出した蒸発燃料濃度（ＦＧｐｒｇ）を取り込む（ステップ７０５）。
その後、ステップ７０６で蒸発燃料量補正量（ＦＰＧ）を計算する。すなわちパージガス量（ＱＰ）に蒸発燃料濃度（ＦＧｐｒｇ）を乗じ、その積をエンジン回転数（ＮＥ）×（ｎ／２）で除して得た商を蒸発燃料量とする。なお、式中、ｎは気筒数であり、１／２で除するのは、４サイクルエンジンにおける吸気は４サイクル中２回だからである。
【０２０１】
ステップ７０３でパージ中でないとされた場合、ステップ７０７で蒸発燃料量補正量＝０とする。
ステップ７０６、７０７で蒸発燃料量補正量（ＦＰＧ）が決定された後、ステップ７０８に移行し、最終燃料噴射量（ＱＡＬＬＩＮＪ）が決定される。ここでは、ステップ７０２で計算された最終燃料噴射量（ＱＡＬＬＩＮＪ）を前回噴射量（ＱＡＬＬＯ）とし、この前回噴射量から蒸発燃料量補正量（ＦＰＧ）を減ずることで最終燃料噴射量（ＱＡＬＬＩＮＪ）を決定する。さらに、ステップ７０９で、燃料噴射時期を決定する。燃料噴射時期（ＡＩＮＪ）の決定に当たっては、図２９に示したマップを参照する。このマップは蒸発燃料量補正量（ＦＰＧ）と燃料噴射時期の変化量（△ＡＩＮＪ）との相関関係を予め定めたもので、ＲＰＭに記憶されている。図２９において、グラフと横軸との交差部分は理論空燃比を示す。この交差部分より左の部分は空気のみをパージしていることを意味する。すなわち、前回の燃料噴射時期（ＡＩＮＪＯ）から、蒸発燃料量補正量（ＦＰＧ）に対応する燃料噴射時期の変化量（△ＡＩＮＪ）を減ずることで、今回の燃料噴射時期を算出する。こうして得た燃料噴射時期をもって、別途定めた燃料噴射プログラムに従って燃料噴射を行う。
【０２０２】
なお、図２７に示したルーチンは所定時間間隔で繰返し実行される。
このような補正ルーチン、特にステップ７０４，７０５，７０６によって蒸発燃料量の検出精度が向上するので、ドライバビリティやエミッションに影響することなく大量の蒸発燃料を処理できる。
【０２０３】
また、蒸発燃料濃度の他の検出方法として、図３０に示したようなマップから検出する方法も使用できる。すなわち、吸気管中の酸素濃度と、蒸発燃料濃度（ＦＧｐｒｇ）との相関関係を予めマップとしてＲＯＭに記憶しておき、吸気管中の酸素濃度を酸素センサで検出し、マップから対応する蒸発燃料濃度を導く。
【０２０４】
＜蒸発燃料量の補正と成層燃焼の度合い（噴射時期と噴射量）＞
次に、蒸発燃料量補正量（ＦＰＧ）をパージガス量（Ｑｐ）及びパージガス中の蒸発燃料濃度ＦＧｐｒｇによって算出するにあたり、成層燃焼の度合いすなわち成層燃焼における噴射時期及び噴射量を参照して蒸発燃料量を補正する例を図３１に示す。すなわち、前記した（４）第４の補正手段による制御の例である。
【０２０５】
まず、エンジン回転数ＮＥとアクセル開度ＡＣＡが入力される（ステップ８０１）。次いで、入力されたエンジン回転数とアクセル開度に従って基本的な基本燃料噴射量（ＱＡＬＬ）を計算する（ステップ８０２）。ステップ８０３では、パージ中であるか否かを判定し、パージ中であれば、エアーと蒸発燃料からなるパージガス量Ｑｐを算出する（ステップ８０４）。この算出は、先の例と同様、予めマップとしてＲＯＭに記憶したスロットル開度ＴＡとパージガス量との相関関係（図２８参照）から行う。
【０２０６】
次いで、パージガス通路等に設けたハイドロカーボンセンサ（ＨＣセンサ）で検出した蒸発燃料濃度（ＦＧｐｒｇ）を取り込む（ステップ８０５）。ステップ８０６では、燃焼状態である成層度Ｒを検出し、取り込む成層度Ｒは図３２に示したように、アクセル開度あるいは燃料噴射量との関係で決定されるが、さらにエンジン回転数の大小にも依存する。グラフ図から明かなように、アクセル開度が大きいほど成層度が１．０に近い値となる。またエンジン回転数が大きいほど成層度は高くなる。
【０２０７】
その後、ステップ８０７で補正係数Ｋｃを算出する。補正係数Ｋｃは、図３３に示したマップから算出する。図３３では、成層度Ｒと補正係数Ｋｃとの関係を予め相関関係としてＲＯＭに記憶したもので、成層度Ｒは噴射時期×噴射量で決定される。
【０２０８】
ステップ８０８では、パージガス量（ＱＰ）と補正係数Ｋｃと蒸発燃料濃度（ＦＧｐｒｇ）を乗じ、その積をエンジン回転数（ＮＥ）×（ｎ／２）で除して得た商を蒸発燃料量とする。なお、式中、ｎは気筒数であり、１／２で除するのは、４サイクルエンジンにおける吸気は４サイクル中２回だからである。
【０２０９】
ステップ８０３でパージ中でないとされた場合、ステップ８０９で蒸発燃料量補正量＝０とする。
ステップ８０８、８０９で蒸発燃料量補正量（ＦＰＧ）が決定された後、ステップ８１０に移行し、最終燃料噴射量（ＱＡＬＬＩＮＪ）が決定される。ここでは、ステップ８０２で計算された基本燃料噴射量（ＱＡＬＬ）から蒸発燃料量補正量（ＦＰＧ）を減ずることで最終燃料噴射量（ＱＡＬＬＩＮＪ）を決定する。さらに、ステップ８１１で、燃料噴射時期を決定する。燃料噴射時期（ＡＩＮＪ）の決定に当たっては、先の例と同様に図２９に示したマップを参照する。すなわち、前回の燃料噴射時期（ＡＩＮＪＯ）から、蒸発燃料量補正量（ＦＰＧ）に対応する燃料噴射時期の変化量（△ＡＩＮＪ）を減ずることで、今回の燃料噴射時期を算出する。こうして得た燃料噴射時期をもって、別途定めた燃料噴射プログラムに従って燃料噴射を行う。
【０２１０】
なお、図３１に示したルーチンは所定時間間隔で繰返し実行される。
このような補正ルーチン、特にステップ８０４から８０８によって成層度に応じて蒸発燃料量を補正しているので、蒸発燃料量の内で、燃焼に寄与する部分の燃料噴射量を適正に減らすことができ、失火を防止することができる。
＜パージガス量及び蒸発燃料量の補正とトルク変動＞
次に、トルク変動に応じてパージガス量Ｑｐを補正し、さらに、Ｑｐとの関連で定まる蒸発燃料量補正量（ＦＰＧ）を補正する例を図３４に従って説明する。これは（３）第３の補正手段を適用した例である。
【０２１１】
まず、エンジン回転数ＮＥとアクセル開度ＡＣＡが入力される（ステップ９０１）。次いで、入力されたエンジン回転数とアクセル開度に従って基本的な基本燃料噴射量（ＱＡＬＬ）を計算する（ステップ９０２）。ステップ９０３では、パージ中であるか否かを判定し、パージ中であれば、エアーと蒸発燃料からなるパージガス量Ｑｐを算出する（ステップ９０４）。この算出は、先の例と同様、予めマップとしてＲＯＭに記憶したスロットル開度ＴＡとパージガス量との相関関係（図２８参照）から行う。
【０２１２】
次いで、ステップ９０５で蒸発燃料量を補間計算する。蒸発燃料量の計算は、図示しないが、マップとしてＲＯＭに記憶した、エンジン回転数ＮＥ及びスロットル開度ＴＡと蒸発燃料量との相関関係から算出する。
【０２１３】
ステップ９０６では、トルク変動ＤＬＮを取り込む。トルク変動は所定時間前の旧トルクと現在のトルクとの差を数値化したものである。次いで、ステップ９０７ではトルク変動に応じたパージガス補正量△Ｑｐｒｇを算出する。パージガス補正量△Ｑｐｒｇの算出には、図３５のマップを参照する。図３５のマップは、トルク変動の大きさを横軸とし、トルク変動の大きさに対応するパージガス補正量△Ｑｐｒｇを縦軸として両者の相関関係を定めたものである。このマップから明かなように、トルク変動が大きいとき、補正量が正の値となり、トルク変動が小さいときは補正量が負となる。
【０２１４】
パージガス補正量を得た後、ステップ９０８では、前回パージガス変動量（△Ｑｐ）にパージガス補正量△Ｑｐｒｇを加え、新しいパージガス変動量（△Ｑｐ）とする。そして、ステップ９０４で得たパージガス量Ｑｐにステップ９０８で得た△Ｑｐを加え、補正したパージガス量Ｑｐを得る（ステップ９０９）。
【０２１５】
前記ステップ９０３で、パージ中でないとされた場合、蒸発燃料量補正量ＦＰＧ＝０とし（ステップ９１０）、さらに、パージガス量Ｑｐ＝０とする（ステップ９１１）。
【０２１６】
ステップ９１２では、ステップ９０９、９１１で得たパージガス量Ｑｐの値から、パージ制御弁の開度を制御する。この制御は図３６で示した、パージガス量Ｑｐとパージ制御弁の開度Ｖ（Ｑｐ）との相関関係を参照して行われる。図３６のマップはＲＯＭに予め記憶されている。
【０２１７】
次いで、ステップ９１３において、最終燃料噴射量（ＱＡＬＬＩＮＪ）が決定される。ここでは、ステップ９０２で計算された基本燃料噴射量（ＱＡＬＬ）から蒸発燃料量補正量（ＦＰＧ）を減ずることで最終燃料噴射量（ＱＡＬＬＩＮＪ）を決定する。
【０２１８】
このような補正ルーチン、特にステップ９０４から９０９によってトルク変動に応じてパージガス量を補正しているので、トルク変動が大きくなってパージガス濃度が薄くなる場合に、最適な蒸発燃料量補正量（ＦＰＧ）となるように、パージガス量を増やすので、パージ量を増やすことができる。
【０２１９】
＜トルク変動に応じて蒸発燃料量の補正する例＞
先の例では、トルク変動に応じてパージガス量Ｑｐすることで蒸発燃料量補正量（ＦＰＧ）を補正したが、図３７から図４０ではトルク変動に応じて直接蒸発燃料量を補正する場合を示している。この例も（３）第３の補正手段を適用した例である。
【０２２０】
まず、エンジン回転数ＮＥとアクセル開度ＡＣＡが入力される（ステップ１００１）。次いで、入力されたエンジン回転数とアクセル開度に従って基本的な基本燃料噴射量（ＱＡＬＬ）を計算する（ステップ１００２）。ステップ１００３では、パージ中であるか否かを判定し、パージ中であれば、エンジン回転数ＮＥ及びスロットル開度を読み込み、蒸発燃料量補正量ＦＰＧを算出する（ステップ１００４）。この算出は、エンジン回転数ＮＥ及びスロットル開度ＴＡと蒸発燃料量補正量ＦＰＧとの関係を予め定めたマップを参照して行う。
【０２２１】
次いで、ステップ１００５でトルク変動ＤＬＮを取り込む。その後、ステップ１００６ではトルク変動に応じた蒸発燃料量補正量ＦＰＧの補正量△ＦＰＧＨを算出する。蒸発燃料量補正量ＦＰＧの補正量△ＦＰＧＨの算出には、図３８のマップを参照する。図３８のマップは、トルク変動の大きさを横軸とし、トルク変動の大きさに対応する蒸発燃料量補正量ＦＰＧの補正量△ＦＰＧＨを縦軸として両者の相関関係を定めたものである。このマップから明かなように、トルク変動が大きいとき、補正量が負の値となり、トルク変動が小さいときは補正量が正となる。
【０２２２】
蒸発燃料量補正量ＦＰＧの補正量△ＦＰＧＨを得た後、ステップ１００７では、前回求めた蒸発燃料量補正量ＦＰＧの補正量ＦＰＧＨに、ステップ１００６で得た蒸発燃料量補正量ＦＰＧの補正量△ＦＰＧＨを加え、新しい蒸発燃料量補正量ＦＰＧの補正量ＦＰＧＨとする。次いで、ステップ１００４で得た蒸発燃料量補正量ＦＰＧにステップ１００７で得た蒸発燃料量補正量ＦＰＧの補正量ＦＰＧＨを加え、補正後の蒸発燃料量補正量ＦＰＧを得る（ステップ１００８）。
【０２２３】
前記ステップ１００３で、パージ中でないとされた場合、蒸発燃料量補正量ＦＰＧ＝０とする（ステップ１００９）。
次いで、ステップ１０１０において、最終燃料噴射量（ＱＡＬＬＩＮＪ）が決定される。ここでは、ステップ１００２で計算された基本燃料噴射量（ＱＡＬＬ）から蒸発燃料量補正量（ＦＰＧ）を減ずることで最終燃料噴射量（ＱＡＬＬＩＮＪ）を決定する。
【０２２４】
このような補正ルーチン、特にステップ１００４から１００８によってトルク変動に応じて蒸発燃料量を補正しているので、トルク変動に応じた正確な蒸発燃料量補正量ＦＰＧを求めることができ、大量パージが可能となる。
なお、蒸発燃料量補正量△ＦＰＧＨの算出に当たっては、以下のことを考慮に入れている。
【０２２５】
図３９に示したように、出力変動が小さいことは燃料量が多すぎることを意味する。これは、蒸発燃料量を少なく見積もっているためであるから蒸発燃料量を多い方に補正する。出力変動が大きい場合は、筒内燃料が不足している場合であるから、蒸発燃料量補正量ＦＰＧを減らす方向に補正する。
なお、図３８で示したように蒸発燃料量の補正量△ＦＰＧＨを出力変動に応じてなだらかに変化するようにしてもよい。
【０２２６】
＜蒸発燃料量補正量にガードをかけた場合の例＞
次に、蒸発燃料量の補正を基準出力変動からのずれ△ＤＬＮに応じて補正するとともに、蒸発燃料量補正量△ＦＰＧＨにガードをかけ、異常補正を行わないようにした例を図４１から図４３に従い説明する。なお、この例は（５−２）の特徴点を実現するものである。
【０２２７】
まず、エンジン回転数ＮＥとアクセル開度ＡＣＡが入力される（ステップ１０１１）。次いで、入力されたエンジン回転数とアクセル開度に従って基本的な基本燃料噴射量（ＱＡＬＬ）を計算する（ステップ１０１２）。ステップ１０１３では、パージ中であるか否かを判定し、パージ中であれば、エンジン回転数ＮＥ及びスロットル開度を読み込み、基準蒸発燃料量補正量ＦＰＧ０を算出する（ステップ１０１４）。この算出は、エンジン回転数ＮＥ及びスロットル開度ＴＡと基準蒸発燃料量補正量ＦＰＧ０との関係を予め定めたマップを参照して行う。
【０２２８】
次いで、ステップ１０１５でトルク変動ＤＬＮを取り込む。その後、ステップ１０１６では基準トルク変動ＤＬＮ０を算出する。基準トルク変動ＤＬＮ０の算出には、図４２のマップを参照する。図４２のマップは、アクセル開度（スロットル開度）を横軸とし、アクセル開度に対応する基準トルク変動ＤＬＮ０を縦軸とし、て両者の相関関係をエンジン回転数の大小毎に定めたものである。このマップから明かなように、アクセル開度が大きいほど、また、エンジン回転数が大きいほど基準トルク変動が小さくなる。
【０２２９】
基準トルク変動ＤＬＮ０を算出した後、ステップ１０１７では、ステップ１０１５で得たトルク変動ＤＬＮから基準トルク変動を減じ、トルク変動の変動量△ＤＬＮを得る。次いで、この変動量△ＤＬＮを参照して、図４３のマップから蒸発燃料量補正量△ＦＰＧＨを算出する（ステップ１０１８）。蒸発燃料量補正量△ＦＰＧＨの算出は、図４３で示した蒸発燃料量補正量△ＦＰＧＨと△ＤＬＮとの相関関係マップから算出する。なお、図４３において
Ｃｐｐ：パージ量を増加させる量
Ｃｐｍ：パージ量を減少させる量
Ｃｆｐ：パージガス中の濃度見積もり値を増加させる量
Ｃｆｍ：パージガス中の濃度見積もり値を減少させる量
である。
【０２３０】
△ＤＬＮが基準０より大きいとき、蒸発燃料量補正量△ＦＰＧＨは負となり、△ＤＬＮが基準０より小さいとき、蒸発燃料量補正量△ＦＰＧＨは正となる。
次いで、前回求めた蒸発燃料量補正量ＦＰＧの補正量ＦＰＧＨに、ステップ１０１８で得た蒸発燃料量補正量ＦＰＧの補正量△ＦＰＧＨを加え、新しい蒸発燃料量補正量ＦＰＧの補正量ＦＰＧＨとする。さらに、ステップ１０１４で得た蒸発燃料量補正量ＦＰＧ０にステップ１０１９で得た蒸発燃料量補正量ＦＰＧの補正量ＦＰＧＨを加え、補正後の蒸発燃料量補正量ＦＰＧを得る（ステップ１０２０）。
【０２３１】
その後、ステップ１０２１では、蒸発燃料量補正量ＦＰＧの最大値ｍａｘＦＰＧと最小値ｍｉｎＦＰＧを算出する。なお、
最大値ｍａｘＦＰＧ＝基準蒸発燃料量補正量ＦＰＧ０−所定値、
最小値ｍｉｎＦＰＧ＝基準蒸発燃料量補正量ＦＰＧ０＋所定値
であり、ここでいう所定値とは経験的に定まる値である。
【０２３２】
その後、ステップ１０２２で蒸発燃料量補正量ＦＰＧが最大値ｍａｘＦＰＧ以上か否か判定され、最大値以上であれば、ステップ１０２３において、蒸発燃料量補正量ＦＰＧを最大値ｍａｘＦＰＧとする。すなわち最大値でガードをかけたのである。
【０２３３】
その後、ステップ１０２１で、蒸発燃料量補正量ＦＰＧが最小値ｍｉｎＦＰＧ以下か否か判定される。最小値以下であれば、ステップ１０２５で、最小値ｍｉｎＦＰＧを蒸発燃料量補正量ＦＰＧとする。すなわち最小値でガードをかけたのである。
【０２３４】
ステップ１０１３でパージ中でないと判定された場合、蒸発燃料量補正量ＦＰＧ＝０とし、また、ステップ１０２２、１０２５で、否定の場合も、蒸発燃料量補正量ＦＰＧは０のまま維持される。
【０２３５】
蒸発燃料量補正量ＦＰＧが決定された後は、ステップ１０２７で最終燃料噴射量（ＱＡＬＬＩＮＪ）が決定される。ここでは、ステップ１０１２で計算された基本燃料噴射量（ＱＡＬＬ）から蒸発燃料量補正量（ＦＰＧ）を減ずることで最終燃料噴射量（ＱＡＬＬＩＮＪ）を決定する。
【０２３６】
このような補正ルーチンでは、ステップ１０１６から１０１８によってトルク変動の変動幅△ＤＬＮに蒸発燃料量補正量△ＦＰＧＨを補正しているので、トルク変動に応じた正確な蒸発燃料量補正量ＦＰＧを求めることができる。
【０２３７】
さらに、ステップ１０２２から１０２５で、求めた蒸発燃料量補正量ＦＰＧにガードをかけるため、異常補正がカットされ、燃焼安定性を確保できる。
特に、エンジン回転数が高いときは、トルク変動が小さくなり、このようなときに蒸発燃料量補正量ＦＰＧを増加させてしまう誤補正が生じ、また、エンジン回転数が低いときは、トルク変動が小さ大きく、このようなときに蒸発燃料量補正量ＦＰＧを減少させてしまう誤補正が生じるが、本例では、このような誤補正をガード処理で回避できる。
【０２３８】
なお、以上説明した、種々の実施形態は、必要に応じ可能な限り組み合わせて実施できる。
【０２３９】
【発明の効果】
以上詳述したように、本発明によれば、蒸発燃料を希薄燃焼内燃機関に供給するに当たり、空燃比を検出していない場合や、検出された空燃比の精度が良くない場合においても、蒸発燃料の供給量の算出が悪化することがなく、リッチ失火やサージを抑制することができる。
【０２４０】
又、希薄燃焼内燃機関の蒸発燃料供給制御装置において、アイドル時において、本発明を適用することで、ベース燃料を効果的に減量でき、又、ベーパが濃い薄いに限らずアイドル回転数の安定性を確保できる。
【０２４１】
さらに、出力変動に応じて、蒸発燃料量を補正することで、パージによる失火、サージが発生した場合においても、効果的に燃料減量ができ、ドライバビリティを確保でき、燃費の向上を図ることができる。
【０２４２】
さらに、燃焼状態に応じて蒸発燃料量を補正することで、燃焼状態の切り換わり時などにおいて、燃焼の悪化を防止することができる。
【図面の簡単な説明】
【図１】本発明の基本的な概念を示す概念構成図
【図２】本発明において濃度検出手段を備えた場合の基本的概念図
【図３】実施の形態におけるエンジンの蒸発燃料供給制御装置を示す概略構成図
【図４】エンジンの気筒部分を拡大して示す断面図
【図５】ＥＣＵの概略を示す電機ブロック回路図
【図６】ＥＣＵにより実行されるアイドル時における停車中の「パージ制御ルーチン」を示すフローチャート
【図７】デューティ制御の状態を示したグラフ図
【図８】ＥＣＵにより実行されるアイドル時における停車中の「燃料噴射量補正値算出ルーチン」を示すフローチャート
【図９】ＥＣＵにより実行されるアイドルオフ時における「パージ制御ルーチン」を示すフローチャート
【図１０】ＥＣＵ３０により実行されるアイドルオフ時における「燃料噴射量補正値算出ルーチン」を示すフローチャート
【図１１】トルク変動量と燃料量の特性を表しているグラフ
【図１２】燃焼モード切り換り時の「ＤＰＧ、ＦＰＧの補正算出ルーチン」を示すフローチャート（１）
【図１３】燃焼モード切り換り時の「ＤＰＧ、ＦＰＧの補正算出ルーチン」を示すフローチャート（２）
【図１４】燃焼モード切り換り時の「ＤＰＧ、ＦＰＧの補正算出ルーチン」を示すフローチャート（３）
【図１５】燃焼モード切り換り時の「ＤＰＧ、ＦＰＧの補正算出ルーチン」を示すフローチャート（４）
【図１６】燃焼モード切り換り時の「ＤＰＧ、ＦＰＧの補正算出ルーチン」を示すフローチャート（５）
【図１７】燃焼モード切り換り時の「ＤＰＧ、ＦＰＧの補正算出ルーチン」を示すフローチャート（６）
【図１８】燃焼モード切り換り時の「ＤＰＧ、ＦＰＧの補正算出ルーチン」を示すフローチャート（７）
【図１９】図１２から図１８における制御で使用する補正係数とベーパ濃度との関係を示す図
【図２０】モード切換時の制御遅延手段による遅延制御を示すタイミングチャート図
【図２１】図２０における遅延制御による変化をなだらかにした状態を示すタイミングチャート図
【図２２】遅延制御の変化度合いを、切換パターンによって変化させることを示す概念図
【図２３】蒸発燃料量の補正制御例を示したフローチャート図
【図２４】スロットル開度ＴＡと蒸発燃料量補正量ＦＰＧとエンジン回転数ＮＡとの相関関係を定めたマップ
【図２５】蒸発燃料量補正量ＦＰＧとパージガス量Ｑｐとの関係を定めたマップ
【図２６】蒸発燃料量補正量ＦＰＧと、大気圧・インテークマニホールド圧間の差圧との間の相関関係を定めたマップ
【図２７】蒸発燃料量補正量ＦＰＧに応じて燃料噴射時期を制御する例を示したフローチャート図
【図２８】パージガス量Ｑｐとスロットル開度ＴＡ及び機関回転数との関係を示したマップ
【図２９】燃料噴射時期の変化量△ＡＩＮＪと蒸発燃料量との関係を示すマップ
【図３０】蒸発燃料の濃度を検出するためのマップ
【図３１】燃焼状態（成層燃焼の度合い）に応じて蒸発燃料量を補正する例を示したフローチャート図
【図３２】成層度とアクセル開度（ｏｒ燃料噴射量）と機関回転数との関係を定めたマップ
【図３３】成層度と補正係数との関係を示したマップ
【図３４】出力変動に応じてパージガス量Ｑｐを制御する例を示したフローチャート図
【図３５】出力変動とパージガス補正量Ｑｐｒｇとの関係を示したマップ
【図３６】パージガス量Ｑｐとパージ制御弁制御出力Ｖ（Ｑｐ）との関係を示したマップ
【図３７】出力変動に応じて蒸発燃料量を補正する例を示したフローチャート図
【図３８】出力変動と蒸発燃料量補正量△ＦＰＧＨとの関係を示したマップ
【図３９】出力変動と燃料量との関係を示したマップ
【図４０】出力変動と蒸発燃料量補正量△ＦＰＧＨとの関係を示したマップの他の例
【図４１】出力変動に応じて蒸発燃料量を補正するとともにガード処理を施した例を示したフローチャート図
【図４２】基準出力変動ＤＬＮ０とアクセル開度と機関回転数との関係を示したマップ
【図４３】出力変動の変化量△ＤＬＮと蒸発燃料量補正量△ＦＰＧＨとの関係を示したマップ
【符号の説明】
１…希薄燃焼内燃機関としてのエンジン
１１…燃料噴射手段としての燃料噴射弁
２０…吸気ダクト
２２…ステップモータ
２３…スロットル弁
２５…運転状態検出手段を構成するスロットルセンサ
２６Ａ…運転状態検出手段を構成するアクセルセンサ
２６Ｂ…運転状態検出手段を構成する全閉スイッチ
２７…運転状態検出手段を構成する上死点センサ
２８…運転状態検出手段を構成するクランク角センサ
２９…運転状態検出手段を構成するスワールコントロールバルブセンサ
３０…燃料供給量制御手段、パージ制御弁制御手段及び第１から第５の補正手段を構成するＥＣＵ
【図１】
0003707217.tif 000002
【図２】
0003707217.tif 000003
【図３】
0003707217.tif 000004
【図４】
0003707217.tif 000005
【図５】
0003707217.tif 000006
【図６】
0003707217.tif 000007
【図７】
0003707217.tif 000008
【図８】
0003707217.tif 000009
【図９】
0003707217.tif 000010
【図１０】
0003707217.tif 000011
【図１１】
0003707217.tif 000012
【図１２】
0003707217.tif 000013
【図１３】
0003707217.tif 000014
【図１４】
0003707217.tif 000015
【図１５】
0003707217.tif 000016
【図１６】
0003707217.tif 000017
【図１７】
0003707217.tif 000018
【図１８】
0003707217.tif 000019
【図１９】
0003707217.tif 000020
【図２０】
0003707217.tif 000021
【図２１】
0003707217.tif 000022
【図２２】
0003707217.tif 000023
【図２３】
0003707217.tif 000024
【図２４】
0003707217.tif 000025
【図２５】
0003707217.tif 000026
【図２６】
0003707217.tif 000027
【図２７】
0003707217.tif 000028
【図２８】
0003707217.tif 000029
【図２９】
0003707217.tif 000030
【図３０】
0003707217.tif 000031
【図３１】
0003707217.tif 000032
【図３２】
0003707217.tif 000033
【図３３】
0003707217.tif 000034
【図３４】
0003707217.tif 000035
【図３５】
0003707217.tif 000036
【図３６】
0003707217.tif 000037
【図３７】
0003707217.tif 000038
【図３８】
0003707217.tif 000039
【図３９】
0003707217.tif 000040
【図４０】
0003707217.tif 000041
【図４１】
0003707217.tif 000042
【図４２】
0003707217.tif 000043
【図４３】
0003707217.tif 000044