(57)【特許請求の範囲】
【請求項１】
燃料タンク内に連通したエバポ通路とエンジンの吸気系に連通したパージ通路との間には、前記燃料タンクからの蒸発燃料を吸着保持するとともに大気の導入によってこの吸着保持された蒸発燃料をパージさせてパージガスを前記エンジンに供給するキャニスタを設け、前記パージ通路の途中には、前記エンジンの運転状態に応じて開動作及び閉動作されて前記エンジンヘのパージガスの流量であるパージ量を制御するパージバルブを設け、前記エンジンの排気系に空燃比センサを設け、この空燃比センサからの出力信号及び前記エンジンヘのパージガス中の蒸発燃料の濃度として演算されるパージ濃度を反映して空燃比をフィードバック制御し、前記パージバルブが開動作されたパージオン時に前記パージ濃度の演算を学習して空燃比をパージ学習値で補正制御し、前記パージバルブが閉動作されたパージオフ時には空燃比を通常学習値で補正制御するパージ制御装置において、前記パージバルブを開動作させるパージ制御をした後に、前記空燃比センサによって空燃比のリッチ・リーンの反転が検出されず、この空燃比のリッチ・リーンの反転が検出されない状態が所定時間継続される場合には、前記パージ制御の実施を中止し、前記パージ濃度を初期化する制御手段を設けたことを特徴とするパージ制御装置。
【請求項２】
前記制御手段は、パージ率を、前記パージ濃度のパージ濃度変化量がパージ濃度比較値よりも大きく且つパージ率のパージ率変化量がパージ率比較値よりも大きいときに、目標パージ率になるまで数回に分けて一定の割合でゆっくりなまして増加し、前記パージ濃度変化量が前記パージ濃度比較値よりも小さく且つ前記パージ率変化量が前記パージ率比較値よりも小さいときには、なまさない目標パージ率とし、前記パージバルブを開動作させてパージ制御することを特徴とする請求項１に記載のパージ制御装置。
【請求項３】
前記制御手段は、前記パージ濃度の初期化と同時に、前回のパージ学習値及びパージカウンタを、共に初期化する一方、パージ積算値及び通常学習値を、前回のまま継続使用することを特徴とする請求項１に記載のパージ制御装置。
【請求項４】
前記制御手段は、前記空燃比センサによって空燃比のリッチ・リーンの反転が検出されない状態が所定時間継続されない場合には、前記パージ濃度の初期化をせずに通常のパージ制御を行う一方、前記パージ濃度の初期化をした場合には、該パージ濃度の初期化後の初回のみに、パージ濃度学習回数が積算して所定の固定回数終了するまで、パージ割合を一定の割合で変化させてパージ濃度の演算を学習することを特徴とする請求項３に記載のパージ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、パージ制御装置に係り、特にパージオン時にパージ濃度の演算を学習して空燃比をパージ学習値で補正制御するとともに、パージオフ時には空燃比を通常学習値で補正制御するパージ制御装置に関するものである。
【背景技術】
【０００２】
車両のエンジンには、燃料タンク内に連通したエバポ通路とエンジンの吸気系に連通したパージ通路との間に、燃料タンクからの蒸発燃料（燃料蒸気）を吸着保持するとともに大気の導入によってこの吸着保持された蒸発燃料をパージさせてパージガスをエンジンに供給するキャニスタを設け、パージ通路の途中に、エンジンの運転状態に応じて開動作（オン）及び閉動作（オフ）されてエンジンヘのパージガスの流量であるパージ量を制御するパージバルブを設け、エンジンの排気系に、空燃比センサとして、例えば、Ｏ２センサ（酸素濃度センサ）を設け、このＯ２センサからの出力信号及びエンジンヘのパージガス中の蒸発燃料の濃度として演算されるパージ濃度を反映して空燃比をフィードバック制御し、パージバルブが開動作されたパージオン時に、前記パージ濃度の演算を学習して空燃比をパージ学習値で補正制御し、パージバルブが閉動作されたパージオフ時には、空燃比を通常学習値で補正制御するパージ制御装置を備えたものがある。
【０００３】
このパージ制御装置は、燃料系、特に、燃料タンクから発生する蒸発燃料とキャニスタ内に吸着された蒸発燃料とを、パージバルブを介してエンジンに供給させ、蒸発燃料が大気に漏れないように制御している。また、パージ制御装置には、エンジンに供給するパージガスのパージ濃度を演算し、また、パージバルブによってパージガスのパージ量を制御し、且つ、空燃比を目標空燃比に制御することで、運転性能を向上させ、且つ、排ガスの発生を低減して大気汚染を防止しているものがある。
【０００４】
従来、このようなパージ制御装置には、前回のパージ濃度とパージ量とからパージ補正値を算出し、パージオン時と同期させてこのパージ補正値によって空燃比を補正制御するものがある。
また、パージ制御装置には、パージ濃度の演算の学習頻度を変更するように、パージ学習回数と通常学習回数とを、演算されたパージ濃度状態によって設定するものがある。
更に、パージ制御装置には、混合気の空燃比に基づいてフィードバック補正係数を演算し、また、空燃比が、リッチからリーンへ、又は、リーンからリッチへ反転した後の時間を計数とし、この計数が所定時間以上であり、且つ、フィードバック補正係数が第１の所定値以上である場合、及び、フィードバック補正係数が第２の所定値以下である場合に、パージ燃料の影響を相殺するための補正係数を更新し、パージによる燃料補正量を増減制御するものがある。
更にまた、パージ制御装置には、Ｏ２センサからの出力信号がリーンからリッチに反転したときに、パージ量を減少させ、Ｏ２センサからの出力信号がリッチからリーンに反転したときには、パージ量を増大させるものがある。
【特許文献１】特開平１１−２２５６５号公報
【特許文献２】特開２００１−１４０７０７号公報
【特許文献３】特開１９９８−２２７２４７号公報
【特許文献４】特開１９９４−２８０６８７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、従来、パージ制御装置のパージ濃度学習制御において、図２１に示す如く、エンジンの始動後で最初にパージ濃度を求める制御の場合では、エンジンが始動した時に（時間ｔ１）、前回のパージ濃度を、初期化（クリア）して零（０）とし、このパージ濃度が零（０）の状態から制御を開始させ、そして、エンジン回転数が上昇し始め、その後、所定時間の経過時（時間ｔ２）に、車速が上昇し始めるとともに、Ｏ２センサからの出力信号が動き始め、そして、所定時間の経過時（時間ｔ３）には、パージバルブが開き始める（オン）。
【０００６】
このとき、図２１の点線で示すように、パージバルブをゆっくり開動作させたときに求められたパージ濃度により、燃料濃度補正及びパージ濃度補正が実施され、一方、図２１の実線で示すように、パージバルブの開度が、大きくなって設定開度Ａになったときには（時間ｔ４）、正確なパージ濃度の値が求まり、その後、燃料濃度制御が実施される。
【０００７】
そして、このパージオン時には、パージ濃度補正の実施により、パージ濃度分の燃料噴射量を減量し、空燃比を目標空燃比に制御し、その後、パージバルブが閉動作（オフ）してパージオフになると（時間ｔ５）、このパージオフ中は、前回のパージ濃度が保持される。そして、パージバルブのオン・オフを繰り返して、パージ制御が実施される。
【０００８】
このようなパージ濃度学習制御において、図２２に示す如く、車両の減速中では（時間ｔ１）、パージバルブが閉動作（オフ）でパージオフとなり、そして、車速が零（０）となり、エンジン回転数が一定値Ｎまで低くなったときに（時間ｔ２）、パージオフのままであり、また、Ｏ２センサからの出力信号も動き始め、そして、エンジンのアイドリング運転時等でパージオフ時間が長いと、燃料タンク内に蒸発燃料が発生する。この蒸発燃料の発生量は、走行時、外気温度、吸気温度、燃料温度が高く、高地等で多くなるものである。
【０００９】
その後、車速が上昇し始め、所定時間の経過時（時間ｔ３）には、パージバルブが開動作（オン）してパージオンとなる。この場合、車両が走行を開始すると、パージ量を確保するために、前回のパージ濃度の値に従ってパージバルブが開動作され、パージが実施される。このように、パージオフからパージオンにする時には、前回のパージ濃度を使用することにより、パージオン時から大きなパージ量を設定し、また、キャニスタのパージ量を多く確保し、車両の停止時にキャニスタが蒸発燃料を吸着する能力を最大限に発揮させることができ、更に、なるべくパージオン時間を長く確保してパージ量を確保している。
【００１０】
しかしながら、このとき、溜まった蒸発燃料が前回のパージ濃度よりも濃い場合に、空燃比に急激なリッチ状態が発生し、燃料フィードバック（Ｆ／Ｂ）補正制御では、減量しきれずに、限界値（図２２の「制御限界」で示す）となる。
【００１１】
また、このパージオン時には、パージ濃度分の燃料噴射量を減量して空燃比を目標空燃比に制御するが、前回のパージ濃度分での燃料噴射量の減量では足りず、空燃比がリッチ状態となり、これに伴って、Ｏ２センサからの出力信号がリッチ側となり、また、前回のパージ濃度の値に従って、燃料濃度補正を開始し、その後、燃料フィードバック（Ｆ／Ｂ）補正の値によってパージ濃度を更新するが、Ｏ２センサからの出力信号がリッチ・リーンに反転しないため、パージ濃度を更新することができない。
【００１２】
そして、パージバルブが閉動作（オフ）してパージオフになると（時間ｔ４）、燃料フィードバック（Ｆ／Ｂ）補正制御が、蒸発燃料の影響を受けないことから、空燃比を目標空燃比に制御することができるようになる。
【００１３】
この図２１、図２２のパージ濃度学習制御において、パージがオフされた期間で、高温環境下又は高地環境下では、蒸発燃料が急激に変化する場合があり、この場合、前回のパージ濃度の値のままでパージ量及び空燃比を制御すると、空燃比を目標空燃比に制御することができず、運転性能が悪化し、且つ、排ガスが不良になるという不都合があった。 
【００１４】
また、空燃比制御の制御限界の値を使い切ってしまい、Ｏ２センサでの制御の場合には、Ｏ２センサからの出力信号がリッチ又はリーン側に張り付いてしまい、制御不能となり、また、Ｏ２センサの異常又は燃料システムの異常を誤って検出してしまい、部品が不良でないにも関わらず、部品不良を誤まらて運転者に知らせることになり、大きな不利益を与えてしまうことになる。
【００１５】
一方で、従来、パージ濃度学習制御において、エンジンのアイドリング運転時等のパージをオフにしている時間がある程度長くなった場合に（約２分程度）、パージ濃度を初期化（クリア）した場合には、パージ濃度を計測するために、ゆっくりパージバルブをオンにし、排ガスの不良や運転性能の悪化を防止しながらパージ濃度を演算する必要があったため、パージ量が少なくなり、エンジンの停止時の蒸発燃料をキャニスタに吸着できなくなり、蒸発燃料が大気に漏れてしまうという問題が発生することもあり、よって、パージ量の確保と空燃比制御の精度を高く保つことは、相対関係にあり、困難であった。
【００１６】
即ち、従来のパージ濃度学習制御においては、パージ量を確保するため、なるべくパージする時間を長く確保する必要があるので、前回のパージ濃度を使用してパージバルブのオン時間を多く確保できるように制御している。
【００１７】
このため、パージバルブのオフ（パージオフ）の時間が長いと、前回のパージ濃度からの濃度ずれが大きくなり、燃料濃度補正が正確ではなく、蒸発燃料が多く発生すると、図２２に示すように、パージオン時に、空燃比を理論空燃比に制御することができない。また、Ｏ２センサの出力信号がリッチ・リーンに反転しないと、Ｏ２センサが正常にもかかわらず不活性異常と誤検出してしまう。更に、パージバルブのオフの時間が長い場合には、パージ濃度を初期化（クリア）して、最初からパージバルブをゆっくり開動作し、パージ濃度制御を最初から行うことになっているが、その時間は、パージ量の確保の観点から短くすることができず、一般的には、２分程度としている。これを、１分程度に短くしてしまうと、キャニスタのパージ量が少なくなってしまい、エンジンを停止した時の蒸発燃料をキャニスタが吸着できなくなり、蒸発燃料が大気に漏れてしまう。更にまた、パージ濃度の初期化を行うパージバルブのオフの時間を１分以内に短くできないため、パージ制御とパージ濃度による燃料制御の両立ができず、運転性能が悪化し、且つ、排ガスが不良になるという不都合があった。
【課題を解決するための手段】
【００１８】
この発明は、燃料タンク内に連通したエバポ通路とエンジンの吸気系に連通したパージ通路との間には、前記燃料タンクからの蒸発燃料を吸着保持するとともに大気の導入によってこの吸着保持された蒸発燃料をパージさせてパージガスを前記エンジンに供給するキャニスタを設け、前記パージ通路の途中には、前記エンジンの運転状態に応じて開動作及び閉動作されて前記エンジンヘのパージガスの流量であるパージ量を制御するパージバルブを設け、前記エンジンの排気系に空燃比センサを設け、この空燃比センサからの出力信号及び前記エンジンヘのパージガス中の蒸発燃料の濃度として演算されるパージ濃度を反映して空燃比をフィードバック制御し、前記パージバルブが開動作されたパージオン時に前記パージ濃度の演算を学習して空燃比をパージ学習値で補正制御し、前記パージバルブが閉動作されたパージオフ時には空燃比を通常学習値で補正制御するパージ制御装置において、前記パージバルブを開動作させるパージ制御をした後に、前記空燃比センサによって空燃比のリッチ・リーンの反転が検出されず、この空燃比のリッチ・リーンの反転が検出されない状態が所定時間継続される場合には、前記パージ制御の実施を中止し、前記パージ濃度を初期化する制御手段を設けたことを特徴とする。
【発明の効果】
【００１９】
この発明のパージ制御装置は、空燃比を理論空燃比に制御できない時間を短縮することができ、運転性能を向上するとともに、排ガスの不良を防止し、また、パージ量を確保する時間を確保し、空燃比センサの異常／正常の誤判定するのを減らすことができる。
【発明を実施するための最良の形態】
【００２０】
この発明は、空燃比の理論空燃比に制御できない時間を短縮し、また、パージ量を確保する時間を確保するとともに、空燃比センサの異常／正常の誤判定を減らせることを、パージバルブを開動作させるパージ制御をした後に、空燃比センサによって空燃比のリッチ・リーンの反転が検出されず、この空燃比のリッチ・リーンの反転が検出されない状態が所定時間継続される場合には、パージ制御の実施を中止し、パージ濃度を初期化して実現するものである。
以下、図面に基づいてこの発明の実施例を詳細且つ具体的に説明する。
【実施例】
【００２１】
図１〜図２０は、この発明の実施例を示すものである。
【００２２】
図２０において、２は車両のエンジン、４はエンジン２の吸気系の吸気通路、６はエンジン２の排気系の排気通路である。
【００２３】
エンジン２は、一側シリンダバンク８−１と他側シリンダバンク８−２とを、Ｖ字形状に配置して構成されている。
【００２４】
吸気通路４には、上流側から順次に、エアクリーナ１０と、エンジン２の吸入空気温度を検出する吸気温度センサ１２と、エンジン２の吸入空気量を検出するエアフローセンサ１４と、該吸気通路４を流通してエンジン２に供給される吸入空気量を制御するスロットルバルブ１６とが配設されている。この吸気通路４の下流側は、一側分岐吸気通路４−１と他側分岐吸気通路４−２とに分岐されている。また、吸気通路４には、スロットルバルブ１６のスロットル開度を検出するスロットルセンサ１８が設けられている。
【００２５】
また、吸気通路４には、吸入空気量制御装置２０が設けられている。この吸入空気量制御装置２０には、スロットルバルブ１６を迂回して該スロットルバルブ１６の上流側の吸気通路４と下流側の吸気通路４とを連通するバイパス通路２２と、このバイパス通路２２を流通してエンジン２に供給される吸入空気の流量を制御するアイドル制御弁（ＩＳＣバルブ）２４とが設けられている。
【００２６】
排気通路６は、上流側が一側分岐排気通路６−１と他側分岐排気通路６−２とに分岐されている。一側分岐排気通路６−１の途中に一側触媒コンバータ２６−１が設けられるとともに、他側分岐排気通路６−２の途中には他側触媒コンバータ２６−２が設けられている。
【００２７】
一側分岐排気通路６−１の途中の一側触媒コンバータ２６−１よりも上流側部位には、空燃比センサとして、例えば、一側フロントＯ２センサ（酸素濃度センサ）２８−１Ｆが設けられる。この一側フロントＯ２センサ２８−１Ｆは、一側触媒コンバータ２６−１よりも上流側の一側分岐排気通路６−１内の排ガス中の酸素濃度を検出し、リッチ・リーンの出力信号を出力するものである。また、一側分岐排気通路６−１の途中の一側触媒コンバータ２６−１よりも下流側部位には、空燃比センサとして、例えば、一側リアＯ２センサ（酸素濃度センサ）２８−１Ｒが設けられる。この一側リアＯ２センサ２８−１Ｒは、一側触媒コンバータ２６−１よりも下流側の一側分岐排気通路６−１内の排ガス中の酸素濃度を検出し、リッチ・リーンの出力信号を出力するものである。
【００２８】
他側分岐排気通路６−２の途中の他側触媒コンバータ２６−２よりも上流側部位には、空燃比センサとして、例えば、他側フロントＯ２センサ（酸素濃度センサ）２８−２Ｆが設けられる。この他側フロントＯ２センサ２８−２Ｆは、他側触媒コンバータ２６−２よりも上流側の他側分岐排気通路６−２内の排ガス中の酸素濃度を検出し、リッチ・リーンの出力信号を出力するものである。また、他側分岐排気通路６−２の途中の他側触媒コンバータ２６−２よりも下流側部位には、空燃比センサとして、例えば、他側リアＯ２センサ（酸素濃度センサ）２８−２Ｒが設けられる。この他側リアＯ２センサ２８−２Ｒは、他側触媒コンバータ２６−２よりも下流側の他側分岐排気通路６−２内の排ガス中の酸素濃度を検出し、リッチ・リーンの出力信号を出力するものである。
【００２９】
なお、空燃比センサとしては、Ｏ２センサの他に、排気系に取り付けられる各種センサを用いることができる。
【００３０】
一側、他側Ｏ２センサ２８−１Ｒ、２８−２Ｒよりも下流側部位においては、一側、他側分岐排気通路６−１、６−２が合流され、この合流部位よりも下流側の排気通路６の途中には、三元触媒コンバータ３０が配設されている。
【００３１】
エンジン２には、燃料供給装置３２が設けられている。この燃料供給装置３２には、燃料を貯留する燃料タンク３４と、この燃料タンク３４内に設置された燃料ポンプ３６と、この燃料ポンプ３６から圧送された燃料をエンジン２側に導く燃料供給通路３８と、この燃料供給通路３８に連絡してエンジン２内に燃料を噴射する一側、他側燃料噴射弁（インジェクタ）４０−１、４０−２とが設けられている。また、燃料供給通路３８の途中には、燃料中に含有する塵埃を除去する燃料フィルタ４２が設けられている。
【００３２】
また、燃料供給装置３２において、燃料供給通路３８の途中には、燃料の圧力を調整する燃料圧力レギュレータ４４が設けられている。この燃料圧力レギュレータ４４は、吸気通路４に連通する第１導圧通路４６−１から導入される吸気圧力である吸気管圧力によって燃料圧を一定値に調整し、余剰の燃料を燃料戻り通路４８から燃料タンク３４に戻させるものである。この燃料タンク３４には、給油管３４Ａが付設されているとともに、燃料レベルセンサ５０とタンク内圧力センサ５２とが配設されている。
【００３３】
また、エンジン２には、パージ制御装置５４が設けられている。このパージ制御装置５４においては、図１９に示す如く、燃料タンク３４内に連通してタンク圧力制御バルブ５８を備えたエバポ通路５６が設けられ、エンジン２の吸気系としてのスロットルバルブ１６よりも下流側の吸気通路４のサージタンク部４Ａに連通したパージ通路６０が設けられ、エバポ通路５６とパージ通路６０との間に、燃料タンク３４からの蒸発燃料（燃料蒸気）を吸着保持するとともに大気の導入によってこの吸着保持された蒸発燃料をパージさせてパージガスをエンジン２に供給するキャニスタ６２が設けられ、そして、パージ通路６０の途中に、エンジン２の運転状態に応じて開動作（オン）及び閉動作（オフ）されてエンジン２ヘのパージガスの流量であるパージ量を制御するパージバルブ（ＶＳＶ）６４が設けられている。また、キャニスタ６２には、大気開放通路６６が接続している。この大気開放通路６６の途中には、大気のキャニスタ６２への導入時に該大気開放通路６６を開放するように動作される大気開放弁６８が設けられている。タンク圧力制御バルブ５８は、吸気通路４に連通する第２導圧通路４６−２から導入される吸気圧力である吸気管圧力によって作動される。この第２導圧通路４６−２には、タンク圧力制御ソレノイドバルブ６９が設けられている。
【００３４】
更に、エンジン２には、ＥＧＲ装置７０が設けられている。このＥＧＲ装置７０には、排気系から吸気系に還流される排気のＥＧＲ量を調整するＥＧＲバルブ７２が設けられている。このＥＧＲバルブ７２は、排気系の他側フロント側Ｏ２センサ２８−２Ｆよりも上流側の他側分岐排気通路６−２と吸気系の一側、他側分岐吸気通路４−１、４−２の合流部位とを連通するＥＧＲ通路７４に設けられ、電子的に制御されてＥＧＲ量を調整するものである。
【００３５】
エンジン２の他側シリンダバンク８−２には、ＰＣＶバルブ７６が設けられている。
【００３６】
図２０に示す如く、吸気温度センサ１２と、エアフローセンサ１４と、スロットルセンサ１８と、アイドル制御弁２４と、一側フロントＯ２センサ２８−１Ｆと、一側リアＯ２センサ２８−１Ｒと、他側フロントＯ２センサ２８−２Ｆと、他側リアＯ２センサ２８−２Ｒと、燃料ポンプ３６と、一側燃料噴射弁４０−１と、他側燃料噴射弁４０−２と、燃料レベルセンサ５０と、タンク内圧力センサ５２と、パージバルブ６４と、大気開放弁６８と、ＥＧＲバルブ７２とは、制御手段（ＥＣＭ）７８に連絡している。
【００３７】
また、この制御手段７８には、図１８、図２０に示す如く、エンジン２のカム軸（図示せず）の回転角を検出してカム信号を出力するカム角センサ８０と、吸気管圧力を検出する吸気圧センサ８２と、一側イグニションコイルアッセンブリ８４−１と、他側イグニションコイルアッセンブリ８４−２と、エンジン２の冷却水温度をエンジン水温として検出する水温センサ８６と、エンジン２のクランク軸（図示せず）の回転角を検出してクランク信号を出力するクランク角センサ８８と、インジケータランプ９０と、接続端子９２と、パワーステアリング圧力スイッチ９４と、ヒータブロアファンスイッチ９６と、クルーズ・コントロール・モジュール９８と、車速を検出する車速センサ１００と、コンビネーションメータ１０２と、Ａ／Ｄコンデンサファンリレー１０４と、エアコン（Ａ／Ｃ）コントローラ１０６と、データリンクコネクタ１０８と、ＡＢＳコントローラモジュール１１０と、メインリレー１１２と、エンジンキーを回すとオンしてイグニション信号を出力するイグニションスイッチ１１４、Ｐ／Ｎポジションスイッチ１１６と、バッテリ１１８と、スタータが作動するとオンになってスタータ信号を出力するスタータスイッチ１２０と、Ｏ／Ｄオフランプ１２２と、パワーランプ１２４と、ライティングスイッチ１２６と、ストップランプスイッチ１２８と、Ｏ／Ｄカットスイッチ１３０と、パワー／ノーマルチェンジスイッチ１３２と、４ＷＤ・ＬＯＷスイッチ１３４と、トランスミッションレンジスイッチ１３６と、第１ソレノイドバルブ１３８と、第２ソレノイドバルブ１４０と、ＴＣＣソレノイドバルブ１４２と、Ａ／Ｔインプットスピードセンサ１４４と、Ａ／Ｔアウトプットスピードセンサ１４６と、エンジン２がアイドル運転になるとオンになるアイドルスイッチ１４８と、エンジン回転数を検出するエンジン回転数センサ１５０と、大気圧を検出する大気圧センサ１５２とが連絡している。
【００３８】
更に、この制御手段７８は、図１８に示す如く、燃料噴射量を制御する燃料制御手段７８Ａと、パージ量を制御するエバポパージ制御手段７８Ｂと、エバポ濃度を演算するエバポ濃度制御演算手段７８Ｃとを備えている。
【００３９】
そして、この制御手段７８は、各Ｏ２センサ２８からの出力信号及びエンジン２ヘのパージガス中の蒸発燃料の濃度として演算されるパージ濃度を反映して空燃比をフィードバック制御し、パージバルブ６４が開動作したパージオン時に、前記パージ濃度の演算を学習して空燃比をパージ学習値で補正制御し、パージバルブ６４のパージオフ時には、空燃比を通常学習値で補正制御する。
【００４０】
また、図１、図３、図８に示す如く、制御手段７８は、パージバルブ６４を開動作させるパージ制御をした後に、各Ｏ２センサ２８によって空燃比のリッチ・リーンの反転が検出されず、この空燃比のリッチ・リーンの反転が検出されない状態が所定時間（例えば、２０秒）継続される場合には、パージ制御の実施を中止し（パージオフ）、パージ濃度を初期化するものである。つまり、パージオン時に、Ｏ２センサ２８がリッチ又はリーン側に張り付いて反転しなくなった時間が、所定時間（例えば、２０秒）継続した場合に、パージオフとし、そして、前回のパージ濃度を初期化（クリア）し、パージ濃度を計測し直して現在のパージ濃度を正確に計測し、この正確な値のパージ濃度によりパージ制御及び空燃比制御を実施し、精度を高くして空燃比を目標空燃比に制御することができるものである。
【００４１】
更に、制御手段７８は、パージ率（ＰＱＡ）を、パージ濃度（ＰＤＥＮＣ）のパージ濃度変化量がパージ濃度比較値（ＰＤＬＴ）よりも大きく且つパージ率（ＰＱＡ）のパージ率変化量がパージ率比較値（ＰＱＤＬＴ）よりも大きいときに、目標パージ率になるまで数回に分けて一定の割合でゆっくりなまして増加し、パージ濃度変化量がパージ濃度比較値（ＰＤＬＴ）よりも小さく且つパージ率変化量がパージ率比較値（ＰＱＤＬＴ）よりも小さいときには、なまさない目標パージ率とし、パージバルブ６４を開動作させてパージ制御するものである。
【００４２】
更にまた、制御手段７８は、前記パージ濃度（ＰＤＥＮＣ）の初期化と同時に、前回のパージ学習値及びパージカウンタを、共に初期化する一方、パージ積算値及び通常学習値を、前回のまま継続使用するものである。
【００４３】
また、制御手段７８は、Ｏ２センサ２８によって空燃比のリッチ・リーンの反転が検出されない状態が所定時間継続されない場合には、パージ濃度（ＰＤＥＮＣ）の初期化をせずに通常のパージ制御を行う一方、パージ濃度の初期化をした場合には、該パージ濃度（ＰＤＥＮＣ）の初期化後（及びエンジン２の始動後）の初回のみに、パージ濃度学習回数が積算して所定の固定回数（例えば、４０回）終了するまで、パージ割合（ＰＱＡＭＮ）を一定の割合で変化させてパージ濃度（ＰＤＥＮＣ）の演算を学習するものである（図２、１７参照）。
【００４４】
即ち、制御手段７８においては、燃料フィードバック制御を実施するとともに、Ｏ２センサ２８からの出力信号及びエンジン２へのパージガス中の蒸発燃料の濃度として演算されるパージ濃度（ＰＤＥＮＣ）を反映して空燃比をフィードバック制御するものであり、所定のパージ学習制御条件（例えば、水温が７５℃以上）が成立すると、パージオンとパージオフを交互に繰り返し、パージオン時には、パージバルブ６４を開き（オン）、この時のパージ濃度（ＰＤＥＮＣ）を演算して学習するとともにパージ学習値（ＫＬＥＲＮＣ）を演算し、このパージ学習値（ＫＬＥＲＮＣ）をパージ補正値として空燃比を補正制御し、一方、パージオフ時には、パージバルブ６４を閉じ、この時の通常学習値（ＫＬＥＲＮＡ）を演算し、この通常学習値（ＫＬＥＲＮＡ）を通常補正値として空燃比を補正制御する（図１、１７参照）。この通常学習値（ＫＬＥＲＮＡ）は、図１３に示す如く、エンジン回転数とエンジン負荷との通常学習値記憶マップに記憶される。また、パージ学習値（ＫＬＥＲＮＣ）は、直前の値のみ記憶マップに記憶される。
【００４５】
また、制御手段７８においては、演算されたパージ濃度（ＰＤＥＮＣ）状態によってパージ濃度学習回数と通常学習回数とを設定するものである（図９参照）。この図９においては、パージ濃度（ＰＤＥＮＣ）が第１所定値Ｐ１付近までは、通常学習回数がパージ濃度学習の回数よりも少し多いが、パージ濃度（ＰＤＥＮＣ）が第１所定値Ｐ１を越えると、パージ濃度（ＰＤＥＮＣ）が第２所定値Ｐ２になるまで、通常学習回数が漸次少なくなり、パージ濃度（ＰＤＥＮＣ）が第２所定値Ｐ２になると、通常学習回数が所定の回数Ｎ１に設定される一方、パージ濃度学習回数が漸次多くなり、パージ濃度（ＰＤＥＮＣ）が第２所定値Ｐ２になると、パージ濃度学習回数が所定の回数Ｎ２に設定される。
【００４６】
更にまた、制御手段７８においては、エンジン２への吸入空気量に対するパージ量の割合であるパージ率（ＰＱＡ）を、パージ濃度（ＰＤＥＮＣ）によって設定するものである（図１０参照）。
【００４７】
また、制御手段７８においては、エンジン２の低負荷時に、パージ濃度（ＰＤＥＮＣ）の演算において、フィードバック補正値（ＧＡＭＡＳＡ）がパージ濃度（ＰＤＥＮＣ）の演算に対して悪影響を及ぼさないように、エンジン負荷（吸入空気量、スロットル開度、吸気管負圧等）によってパージ濃度補正係数（ｘＤＥＮ）を求め、このパージ濃度補正係数（ｘＤＥＮ）によってパージ濃度（ＰＤＥＮＣ）を補正するものである（図１１参照）。
【００４８】
更に、制御手段７８においては、エンジン負荷の変化時に、パージ濃度（ＰＤＥＮＣ）の演算において、フィードバック補正値（ＧＡＭＡＳＡ）の変動がパージ濃度（ＰＤＥＮＣ）の演算に対して悪影響を及ぼさないように、エンジン負荷変化量によってパージ濃度補正係数（ｙＤＥＮ）を求め、このパージ濃度補正係数（ｙＤＥＮ）によってパージ濃度（ＰＤＥＮＣ）を補正するものである（図１２参照）。
【００４９】
更にまた、制御手段７８においては、パージ濃度（ＰＤＥＮＣ）の演算において、エンジン負荷に応じたパージ濃度補正係数（ｘＤＥＮ）、または、エンジン負荷変化量に応じたパージ濃度補正係数（ｙＤＥＮ）を求め、このパージ濃度補正係数（ｘＤＥＮ、ｙＤＥＮ）によってパージ濃度（ＰＤＥＮＣ）の補正をする場合に、図６に示すように、初回のパージ学習時のみ、パージ濃度（ＰＤＥＮＣ）を補正するものである。
【００５０】
また、制御手段７８においては、燃料フィードバック制御が停止してエンリッチ領域に入った場合に、一定のパージ率、又は、エンジン回転数とエンジン負荷とで設定されたパージ率（図１４参照）、又は、エンジン負荷で設定されたパージ率（図１５参照）でパージバルブ６４を開動作させてパージ制御するものである（図４参照）。このため、制御手段７８には、エンリッチ時に、吸気管圧力によってパージ量とパージバルブ６４の開度（％）が設定されている（図１６参照）。
【００５１】
更にまた、制御手段７８においては、アイドルスイッチ１４８のオン時及び／またはエンリッチ領域以外で燃料フィードバック制御が停止した領域では、一定のパージ率又はエンジン回転数とエンジン負荷とで設定されたパージ率（図１４参照）又はエンジン負荷で設定されたパージ率（図１５参照）でパージバルブ６４を開動作させてパージ制御するものである（図４参照）。
【００５２】
次に、この実施例の作用を説明する。
【００５３】
図１のフローチャートに示す如く、制御手段７８のパージ濃度学習制御においては、イグニションスイッチ１１４のオンによるエンジン２の始動後に、プログラムがスタートすると（ステップ２０２）、先ず、パージ積算値（ＣＰＴＯＴＡＬ）を初期化し（ステップ２０４）、そして、パージ学習値（ＫＬＥＲＮＣ）とパージカウンタ（ＰＣＯＵＮＴ）とパージ濃度（ＰＤＥＮＣ）とを初期化する（ステップ２０６）。
【００５４】
これは、キャニスタ６２からの蒸発燃料のパージは、キャニスタ６２の温度によって大きく変化するので、高温下では燃料タンク３４内の蒸発燃料がキャニスタ６２に吸着保持されても、エンジン２を停止し、エンジン２が冷えてしまえば、次にエンジン２を始動した時には、キャニスタ６２や燃料タンク３４内からの蒸発燃料の発生量が少ないからであり、よって、パージ学習値（ＫＬＥＲＮＣ）及びパージ濃度（ＰＤＥＮＣ）を、前回のエンジン始動時の値で使用することができず、エンジン２を始動する毎に、初期化する。
【００５５】
エンジン２の始動後、燃料フィードバック（Ｆ／Ｂ）制御及びパージ学習制御が始まるまでは、パージオフあるいは制限された低いパージ率でパージ制御され、この場合には、通常学習値記憶マップ（図１３参照）の通常学習値（ＫＬＥＲＮＡ）に従って空燃比補正制御を実施する（ステップ２０８）。
【００５６】
そして、燃料フィードバック制御が開始したか否かを判断する（ステップ２１０）。
【００５７】
このステップ２１０がＹＥＳの場合には、燃料学習制御条件が成立したか否かを判断する（ステップ２１２）。
【００５８】
このステップ２１２がＹＥＳの場合には、第１のパージ制御（パージ制御１）（図２参照）を行う（ステップ２１４）。
【００５９】
一方、前記ステップ２１０がＮＯ、及び、前記ステップ２１２がＮＯの場合には、第２のパージ制御（パージ制御２）（図４参照）を行う（ステップ２１６）。
【００６０】
図１の前記ステップ２１４におけるパージ制御１を、図２のフローチャートに基づいて説明する。
【００６１】
図２に示す如く、パージ制御１のプログラムがスタートすると（ステップ３０２）、パージカウンタ（ＰＣＯＵＮＴ）が、ＰＣＯＵＮＴ＝０か否かを判断する（ステップ３０４）。
【００６２】
このステップ３０４がＹＥＳの場合に、エンジン２の始動時は、キャニスタ６２内及び燃料供給通路３８内の濃度が解らないため、エンジン２の始動後の初回のみ、つまり、パージ濃度の初期化後の初回のみ、パージ濃度学習回数が積算して所定の固定回数（例えば、４０回）になるように、通常のパージ割合値（ＰＱＡＭＮ）まで、パージ濃度の演算を、パージバルブ６４をゆっくり開動作して一定の割合でゆっくり変化させて学習する（ステップ３０６）（図１７参照）。
【００６３】
そして、このパージ濃度学習回数が、所定の固定回数（例えば、４０回）を終了したか否かを判断する（ステップ３０８）。
【００６４】
このステップ３０８がＮＯの場合には、前記ステップ３０４に戻し、パージカウンタ（ＰＣＯＵＮＴ）が、ＰＣＯＵＮＴ＝０か否かを判断する。
【００６５】
このステップ３０８がＹＥＳの場合には、パージカウンタ（ＰＣＯＵＮＴ）を１に、つまり、ＰＣＯＵＮＴ←１とする（ステップ３１０）。
【００６６】
そして、パージバルブ６４を閉動作してパージオフとする（ステップ３１２）。なお、このパージバルブ６４の閉動作時には、後述する通常学習値を演算する通常学習を行っている。
【００６７】
また、前記ステップ３０４でＮＯの場合には、このステップ３１２に直接的に移行させる。
【００６８】
このパージオフしている時間は、通常学習回数により設定される。この通常学習回数は、図９に示すように、直前に演算されたパージ濃度（ＰＤＥＮＣ）によって設定される（ステップ３１４）。
【００６９】
そして、この通常学習回数が、図９で設定された所定回数まで終了し、通常学習が終了したか否かを判断する（ステップ３１６）。
【００７０】
このステップ３１６がＮＯの場合には、前記ステップ３１２に戻し、通常学習回数が、設定された所定回数を終了まで、パージバルブ６４の閉状態を継続する。
【００７１】
前記ステップ３１６がＹＥＳの場合には、パージ濃度によるパージ率の設定を実施する（ステップ３１８）。
【００７２】
そして、パージ濃度学習が終了したか否かを判断し（ステップ３２０）、このステップ３２０がＮＯの場合には、前記ステップ３１８に戻して、パージ濃度によるパージ率の設定を継続し、一方、このステップ３２０がＹＥＳの場合には、前記ステップ３０４に戻して、パージカウンタ（ＰＣＯＵＮＴ）が、ＰＣＯＵＮＴ＝０か否かを判断する。
【００７３】
図２の前記ステップ３１８におけるパージ濃度によるパージ率の設定を、図３のフローチャートに基づいて説明する。
【００７４】
図３に示す如く、パージ濃度によるパージ率の設定のプログラムがスタートすると（ステップ４０２）、先ず、前回求まったパージ濃度（ＰＤＥＮＣ）により、今回のパージ率（ＰＱＡ）を、図１０から求める（ステップ４０４）。
【００７５】
そして、前回求められたパージ濃度（ＰＤＥＮＣ）とパージ濃度比較値（ＰＤＬＴ）とを比較し、ＰＤＥＮＣ≧ＰＤＬＴか否かを判断する（ステップ４０６）。
【００７６】
このステップ４０６がＹＥＳの場合には、蒸発燃料が多量にあるため、さらに、パージ率（ＰＱＡ）とパージ率比較値（ＰＤＬＴ）とを比較し、ＰＱＡ≧ＰＤＬＴか否かを判断する（ステップ４０８）。
【００７７】
前記ステップ４０６がＮＯ、前記ステップ４０８がＮＯの場合には、図１０で求まったパージ率（ＰＱＡ）まで、パージバルブ６４を開動作させ、パージ率（ＰＱＡ）をなまさないで、直接に目標パージ率でパージ制御をする（ステップ４１０）。
【００７８】
前記ステップ４０８がＹＥＳの場合には、図１０で求まったパージ率（ＰＱＡ）まで、パージバルブ６４を、一定の割合でパージバルブ６４をゆっくり開動作させ、パージ率（ＰＱＡ）をゆっくりなまして増加する（ステップ４１２）。こうすることで、低パージ量及び低吸入空気量でエンジン２が始動した後において、最初にパージ濃度を演算することがなく、実際に、キャニスタ６２内やエバポ通路５６内には蒸発燃料が少ない場合に、パージ濃度が濃いとして演算をすることがないので、空燃比のみリーンに誤補正するのを回避させ、よって、運転性能の悪化を防止し、また、排ガスの排出量が多くなるのを防止することができる。
【００７９】
そして、前記ステップ４１０、前記ステップ４１２の処理後には、Ｏ２センサ２８からの出力信号がリッチ・リーンに反転しない状態か否かを判断する（ステップ４１４）。
【００８０】
Ｏ２センサ２８からの出力信号がリッチ・リーンに反転しない状態で、このステップ４１４がＹＥＳの場合には、このＯ２センサ２８からの出力信号がリッチ・リーンに反転しない状態の時間が、所定時間（例えば、２０秒）以上になったか否か、つまり、反転しない時間≧２０秒を判断する（ステップ４１６）。
【００８１】
前記ステップ４１４がＮＯ、及び、前記ステップ４１６がＮＯの場合には、パージ濃度学習が終了したか否かを判断する（ステップ４１８）。
【００８２】
このステップ４１８がＮＯの場合には、前記ステップ４０４に戻す。
【００８３】
このステップ４１８がＹＥＳの場合には、図１の前記ステップ２０８に移行する（Ａで示す）。
【００８４】
前記ステップ４１６がＹＥＳの場合には、図１の前記ステップ２０６に移行する（Ｂで示す）。
【００８５】
図１の前記ステップ２１６におけるパージ制御２を、図４のフローチャートに基づいて説明する。
【００８６】
図４に示す如く、パージ制御２のプログラムがスタートすると（ステップ５０２）、先ず、エンジン水温が、エンジン水温＞設定値（ＰＴＷ：例えば７５℃）か否かを判断する（ステップ５０４）。
【００８７】
このステップ５０４がＹＥＳの場合には、アイドルスイッチ１４８がオフか否かを判断する（ステップ５０６）。
【００８８】
そして、このステップ５０６がＹＥＳの場合には、エンリッチ領域か否かを判断する（ステップ５０８）。
【００８９】
このステップ５０８がＹＥＳの場合には、一定の第１パージ率（例えば、２％）、又は、図１４のエンジン回転数とエンジン負荷とで設定したパージ率、又は、図１５のエンジン負荷としての例えば吸入空気量で設定したパージ率により、パージバルブ６４を開動作させパージ制御を実施する（ステップ５１０）。
【００９０】
前記ステップ５０６でＮＯ、及び、前記ステップ５０８でＮＯの場合には、上述の第１パージ率（例えば、２％）より小さい一定の第２パージ率（例えば０．５％）、又は、図１４のエンジン回転数とエンジン負荷とで設定したパージ率、又は、図１５のエンジン負荷としての例えば吸入空気量で設定したパージ率により、パージバルブ６４を開動作させパージ制御を実施する（ステップ５１２）。こうすることで、パージ制御において、パージ量をパージ濃度によって設定し、燃料フィードバック制御及びパージ濃度を演算するパージ学習制御が行われていない領域では、パージ量の設定ができないことから、パージ制御を停止し、エンリッチ状態の高負荷領域、高回転領域では、燃料フィードバック制御を停止して、パージ制御も停止している場合には、登坂等の運転が長く続き、燃料タンク３４内に蒸発燃料が多く溜まり、特に、高地では、燃料タンク内で蒸発燃料の発生量が多くなるとともに、エンジン出力も低下することから、アクセルペダルの踏み込み量も大きくなり、エンリッチでの走行時間が増加するという不具合が生じようとするが、燃料タンク３４内のタンク内圧力が蒸発燃料によって高くなるのを回避させ、蒸発燃料がキャニスタ６２の大気開口通路６６から外部に洩れる可能性をなくし、また、蒸発燃料により燃料タンク３４内のタンク内圧力が急上昇するのを回避させ、タンク内圧力センサ５２がタンク内圧を誤って診断してしまうのを防止することができる。
【００９１】
一方、前記ステップ５０４でＮＯの場合には、パージバルブ６４を開動作することなく、図１の前記ステップ２０８に移行させ（Ａで示す）、また、前記ステップ５１０及び前記ステップ５１２の処理後は、各パージ率でパージバルブ６４を開動作させている状態で、図１の前記ステップ２０８に移行させる（Ａで示す）。
【００９２】
次に、パージ濃度（ＰＤＥＮＣ）及びパージ学習値（ＫＬＥＲＮＣ）、通常学習値（ＫＬＥＲＮＡ）を演算するためのパージ濃度演算・パージ学習制御について説明する。なお、このパージ濃度演算・パージ学習制御には、図５のフローチャートに示す第１実施例（実施例１）と図６のフローチャートに示す第２実施例（実施例２）とがある。
【００９３】
第１実施例（実施例１）のパージ濃度演算・パージ学習制御を、図５のフローチャートに基づいて説明する。
【００９４】
図５に示す如く、エンジン２の始動後に、プログラムがスタートすると（ステップ６０２）、先ず、パージカウンタ（ＰＣＯＵＮＴ）が、ＰＣＯＵＮＴ＝０か否かを判断する（ステップ６０４）。
【００９５】
このステップ６０４がＹＥＳの場合には、パージバルブ６４をゆっくり開けているため、空燃比のフィードバック補正値（ＧＡＭＡＳＡ）は、空燃比をリーンに補正する方向に制御される。そして、この時のフィードバック補正値の４周期分の平均値（ＧＡＭＡＡＶＥ）を求める（ステップ６０６）（図１７参照）。
【００９６】
そして、この４周期分の平均値（ＧＡＭＡＡＶＥ）の計測時におけるエンジン負荷の平均値及びエンジン負荷変化量を求める（ステップ６０８）。
【００９７】
そして、パージ濃度（ＰＤＥＮＣ）を、図１１のエンジン負荷と図１２のエンジン負荷変化量によって補正して求める（ステップ６１０）。
つまり、パージ濃度（ＰＤＥＮＣ）は、
ＰＤＥＮＣ＝（ＫＬＥＲＮＣ−ＫＬＥＲＮＡ＋ＧＡＭＡＡＶＥ＊ｘＤＥＮ＊ｙＤＥＮ）÷パージ率 …（式１）
で求められる。
ここで、
ＫＬＥＲＮＣ：前回学習したパージ学習値（エンジン始動後、最初は０）
ＫＬＥＲＮＡ：通常学習値（図１３の通常学習値記憶マップに記憶）
ＧＡＭＡＡＶＥ：フィードバック補正値の４周期分の平均値
ｘＤＥＮ：エンジン負荷に対するパージ濃度補正係数（図１１のマップに記憶）
ｙＤＥＮ：エンジン負荷変化量に対するパージ濃度補正係数（図１２のマップに記憶）
である。
この（式１）の結果得られたパージ濃度（ＰＤＥＮＣ）を、記憶する。そして、このパージ濃度（ＰＤＥＮＣ）からパージ学習値を演算する（後に、図７の空燃比補正制御のフローチャートに従って説明する）。
【００９８】
そして、パージ濃度学習回数が、図９で設定された固定回数を終了したか否かを判断する（ステップ６１２）。なお、この固定回数は、初回が、例えば、４０回、その後は、図９に示すように、パージ濃度（ＰＤＥＮＣ）の状態によって設定される。
【００９９】
このステップ６１２がＮＯの場合には、ステップ６０６に戻し、パージ学習を繰り返す。
【０１００】
このステップ６１２がＹＥＳの場合には、パージカウンタ（ＰＣＯＵＮＴ）を１に、つまり、ＰＣＯＵＮＴ←１とする（ステップ６１４）。この場合、少なくとも初回のパージ学習制御が、終了する。
【０１０１】
そして、パージバルブ６４を閉動作してパージオフとする（ステップ６１６）。
【０１０２】
次いで、このパージバルブ６４が閉動作状態での空燃比のフィードバック補正値の４周期分の平均値（ＧＡＭＡＡＶＥ）を測定し、このフィードバック補正値の平均値（ＧＡＭＡＡＶＥ）を、通常学習値（ＫＬＥＲＮＡ）として学習する通常学習を行なう（ステップ６１８）。
【０１０３】
同時に、エンジン負荷およびエンジン回転数を計測し、この通常学習値（ＫＬＥＲＮＡ）を、図１３に示すエンジン負荷およびエンジン回転数毎に区画された通常学習値記憶マップに、記憶する（ステップ６２０）。
【０１０４】
次に、このパージオフ時における通常学習回数が、設定された所定回数だけ終了したか否かを判断する（ステップ６２２）。この通常学習回数は、図９に示すように、パージ濃度（ＰＤＥＮＣ）の状態によって決定される。
【０１０５】
このステップ６２２がＮＯの場合には、前記ステップ６１６に戻し、通常学習を繰り返す。
【０１０６】
このステップ６２２がＹＥＳの場合には、前記ステップ６０４に戻す。
【０１０７】
一方、前記ステップ６０４がＮＯの場合には、パージバルブ６４を開動作した直後の所定時間、つまり学習禁止（ＬＲＮＤＬＹ）の時間では、パージ濃度学習を禁止する（ステップ６２４）（図１７参照）。このパージ濃度学習禁止（ＬＲＮＤＬＹ）の時間の経過後は、ステップ６０６に移行する。こうすることで、パージオン時から実際に蒸発燃料がエンジン２に到達するまでのパージ不安定による制御への悪影響を取り除くことができる。
【０１０８】
第２実施例（実施例２）のパージ濃度演算・パージ学習制御を、図６のフローチャートに基づいて説明する。
【０１０９】
この第２実施例（実施例２）のパージ濃度演算・パージ学習制御においては、エンジン２の始動後の初回のパージ濃度（ＰＤＥＮＣ）演算においてのみ、図１１のエンジン負荷と図１２のエンジン負荷変化量とによって補正し、２回目以降のパージ濃度（ＰＤＥＮＣ）演算では、エンジン負荷とエンジン負荷変化量とによる上述の補正を省くものである。
【０１１０】
即ち、この第２実施例（実施例２）のパージ濃度演算・パージ学習制御においては、図６に示す如く、エンジン２の始動後に、プログラムがスタートすると（ステップ７０２）、先ず、パージカウンタ（ＰＣＯＵＮＴ）が、ＰＣＯＵＮＴ＝０か否かを判断する（ステップ７０４）。
【０１１１】
このステップ７０４がＹＥＳの場合には、パージバルブ６４をゆっくり開けているため空燃比のフィードバック補正値（ＧＡＭＡＳＡ）は、空燃比をリーンに補正する方向に制御される。そして、この時のフィードバック補正値の４周期分の平均値（ＧＡＭＡＡＶＥ）を求める（ステップ７０６）（図１７参照）。
【０１１２】
そして、そのフィードバック補正値の４周期分の平均値（ＧＡＭＡＡＶＥ）の計測時におけるエンジン負荷の平均値及びエンジン負荷変化量を求める（ステップ７０８）。
【０１１３】
そして、パージ濃度（ＰＤＥＮＣ）を、図１１のエンジン負荷と図１２のエンジン負荷変化量とによって補正して求める（ステップ７１０）。
つまり、パージ濃度（ＰＤＥＮＣ）は、
ＰＤＥＮＣ＝（ＫＬＥＲＮＣ−ＫＬＥＲＮＡ＋ＧＡＭＡＡＶＥ＊ｘＤＥＮ＊ｙＤＥＮ）÷パージ率  …（式１）
で求められる。
ここで、
ＫＬＥＲＮＣ：前回学習したパージ学習値（エンジン始動後、最初は０）
ＫＬＥＲＮＡ：通常学習値（図１３の通常学習値記憶マップに記憶）
ＧＡＭＡＡＶＥ：フィードバック補正値の４周期分の平均値
ｘＤＥＮ：エンジン負荷に対するパージ濃度補正係数（図１１に記憶）
ｙＤＥＮ：エンジン負荷変化量に対するパージ濃度補正係数（図１２に記憶）
である。
この（式１）の結果得られたパージ濃度（ＰＤＥＮＣ）を、記憶する。そして、このパージ濃度（ＰＤＥＮＣ）からパージ学習値を演算する（後に、図７の空燃比補正制御のフローチャートに従って説明する）。
【０１１４】
そして、パージ濃度学習回数が、設定された固定回数終了し、パージ濃度学習が終了したか否かを判断する（ステップ７１２）。なお、この固定回数は、初回が４０回、その後は、図９に示すように、パージ濃度（ＰＤＥＮＣ）の状態により設定される。
【０１１５】
このステップ７１２がＮＯの場合には、ステップ７０６に戻し、パージ学習を繰り返す。
【０１１６】
このステップ７１２がＹＥＳの場合には、パージカウンタ（ＰＣＯＵＮＴ）を１に、つまり、ＰＣＯＵＮＴ←１とする（ステップ７１４）。この場合に、少なくとも初回のパージ学習制御が、終了する。
【０１１７】
そして、パージバルブ６４を閉動作し、パージオフとする（ステップ７１６）。
【０１１８】
このパージバルブ６４が閉動作状態での空燃比のフィードバック補正値の４周期分の平均値（ＧＡＭＡＡＶＥ）を測定し、このフィードバック補正値の平均値（ＧＡＭＡＡＶＥ）を通常学習値（ＫＬＥＲＮＡ）として学習する通常学習を行なう（ステップ７１８）。
【０１１９】
同時に、エンジン負荷およびエンジン回転数を計測し、この通常学習値（ＫＬＥＲＮＡ）を、図１３に示すエンジン負荷およびエンジン回転数毎に区画された通常学習値記憶マップに、記憶する（ステップ７２０）。
【０１２０】
次に、このパージオフ時における通常学習回数が設定された所定回数終了して通常学習が終了したか否かを判断する（ステップ７２２）。この通常学習回数は、図９に示すように、パージ濃度（ＰＤＥＮＣ）の状態によって決定される。
【０１２１】
このステップ７２２がＮＯの場合には、前記ステップ７１６に戻し、通常学習を繰り返す。
【０１２２】
このステップ７２２がＹＥＳの場合には、前記ステップ７０４に戻す。
【０１２３】
一方、前記ステップ７０４がＮＯの場合には、パージバルブ６４を開動作した直後の所定時間、つまり、パージ濃度学習禁止（ＬＲＮＤＬＹ）の時間では、パージ濃度学習を禁止する（ステップ７２４）（図１７参照）。
【０１２４】
そして、パージ濃度（ＰＤＥＮＣ）を、
ＰＤＥＮＣ＝（ＫＬＥＲＮＣ−ＫＬＥＲＮＡ＋ＧＡＭＡＡＶＥ）÷パージ率 …（式２）
で求める（ステップ７２６）。
【０１２５】
そして、パージ濃度学習回数が、図９により設定された固定回数終了したか否かを判断する（ステップ７２８）。
【０１２６】
次に、このステップ７２８がＹＥＳの場合には、前記ステップ７１６に移行する。
【０１２７】
一方、このステップ７２８がＮＯの場合には、前記ステップ７２６に戻す。
【０１２８】
次に、空燃比補正制御におけるパージ学習値の演算と補正制御を、図７のフローチャートに基づいて説明する。この場合、パージオン時のパージ学習値（ＫＬＥＲＮＣ）は、図７示すように演算されて補正が行われる。
【０１２９】
即ち、図７に示す如く、この空燃比補正制御においては、プログラムがスタートすると（ステップ８０２）、先ず、パージ濃度補正を行い（ステップ８０４）、そして、パージオフからパージオンへの切り替わり時に、前回のパージ濃度（ＰＤＥＮＣ）によって図１０から今回のパージ率（ＰＱＡ）を求めるとともに、パージオフ時に演算して図１３の通常学習値記憶マップに記憶した通常学習値（ＫＬＥＲＮＡ）を読み出し、
パージ学習値（ＫＬＥＲＮＣ）を、
パージ学習値（ＫＬＥＲＮＣ）＝パージ濃度（ＰＤＥＮＣ）＊パージ率（ＰＱＡ）＋通常学習値（ＫＬＥＲＮＡ） …（式３）
で求める（ステップ８０６）。
【０１３０】
そして、パージ率（ＰＱＡ）の変化と同期して今回補正するパージ学習値（ＫＬＥＲＮＣ）を求め、パージオフからパージオンへの切り替わり時及びパージオン状態であってパージ率（ＰＱＡ）が変化する都度に、その求められたパージ学習値（ＫＬＥＲＮＣ）で空燃比の補正を実施する（ステップ８０８）。
【０１３１】
次いで、パージオフ時には、パージ学習値（ＫＬＥＲＮＣ）を零（０）、つまり、ＫＬＥＲＮＣ←０にするとともに、図１３の通常学習値記憶マップに記憶した通常学習値（ＫＬＥＲＮＡ）を読み出し、この通常学習値（ＫＬＥＲＮＡ）で空燃比の補正を実施する（ステップ８１０）。
【０１３２】
その後、上述の演算および空燃比補正制御を繰り返えす（ステップ８１２）。
【０１３３】
従って、燃料フィードバック制御の停止中又は燃料学習制御の停止中は、図４のパージ制御２によってパージバルブ制御を行っている。これにより、例えば、登坂時、高地等で、アクセルペダルの踏み込み量が大きくなり、燃料タンク３４内のタンク内圧力が高くなっても、蒸発燃料が外部に洩れる可能性がない。また、タンク圧力センサ５２がタンク内圧の誤診断をすることがない。
【０１３４】
次に、パージ濃度学習制御を、図８のタイムチャートに基づいて説明する。
【０１３５】
図８に示す如く、車両の減速中（時間ｔ１）は、パージバルブが閉動作（オフ）でパージオフとなり、パージオフのままであり、そして、車速が零（０）となり、エンジン回転数が一定に低くなったときに（時間ｔ２）、エンジン２がアイドリング運転状態となり、また、Ｏ２センサ２８ｔｏの出力信号が動き始め、燃料タンク３４内に蒸発燃料が発生する。この蒸発燃料の発生量は、走行時、外気温度、吸気温度、燃料温度が高く、高地等で多くなるものである。
【０１３６】
その後、車速が上昇し始め、所定時間が経過時（時間ｔ３）したときには、車両の走行を開始すると、パージ量を確保するために、前回のパージ濃度の値に従ってパージバルブ６４が開動作（オン）され、パージが実施されるとともに、燃料濃度減量補正が実施される。
【０１３７】
このとき、溜まった燃料蒸気が前回のパージ濃度よりも濃い場合に、急激なリッチが発生し、燃料フィードバック（Ｆ／Ｂ）制御では、減量しきれずに、燃料フィードバック（Ｆ／Ｂ）制御が限界値（図８の「制御限界」で示す）となる（時間ｔ４）。
【０１３８】
このパージバルブ６４が開動作（オン）オンされているときに、Ｏ２センサ２８の出力信号がリッチ・リーンに所定時間（例えば、２０秒）以上へばりついていたら、パージバルブ６４を閉動作（オフ）とし、そして、パージ濃度を初期化し（時間ｔ５）、パージ濃度を検出し直す。
【０１３９】
このパージ濃度の初期化後、パージ濃度を求めるために、パージバルブ６４をゆっくり開動作（オン）し、このパージバルブ６４のオンにより、蒸発燃料がエンジン２に供給され、パージ濃度が濃い場合には、燃料フィードバック補正制御により、空燃比を目標空燃比に制御する。
【０１４０】
また、このとき、パージ濃度が正確なので、空燃比は、目標空燃比に制御することができ、Ｏ２センサ２８の出力信号もリッチ・リーン側に偏らなくなる。
【０１４１】
そして、パージバルブ６４が一定の開度になると（時間ｔ６）、今回のパージ濃度が求まり、そして、この今回のパージ濃度の値により燃料濃度減量補正が実施される。
【０１４２】
そして、パージバルブ６４が閉動作（オフ）でパージオフになると（時間ｔ７）、燃料フィードバック（Ｆ／Ｂ）制御が、燃料蒸気の影響を受けないことから、空燃比を目標空燃比に制御することができるようになる。
【０１４３】
そして、パージバルブ６４が開動作（オン）でパージオンになると（時間ｔ８）、通常のパージ制御が実施される。
【０１４４】
この結果、パージバルブ６４を開動作させるパージ制御をした後に、Ｏ２センサ２８によって空燃比のリッチ・リーンの反転が検出されず、この空燃比のリッチ・リーンの反転が検出されない状態が所定時間継続される場合には、パージの実施を中止し、パージ濃度を初期化することから、空燃比を理論空燃比に制御できない時間を短縮することができ、また、パージ量を確保する時間を確保することができ、更に、Ｏ２センサ２８の異常／正常の誤判定も減らすことができる。
【０１４５】
また、パージ率を、前記パージ濃度のパージ濃度変化量がパージ濃度比較値よりも大きく且つパージ率のパージ率変化量がパージ率比較値よりも大きいときに、目標パージ率になるまで数回に分けて一定の割合でゆっくりなまして増加し、前記パージ濃度変化量が前記パージ濃度比較値よりも小さく且つ前記パージ率変化量が前記パージ率比較値よりも小さいときには、なまさない目標パージ率とし、前記パージバルブを開動作させてパージ制御することから、パージ制御の実施を適切に行わせ、パージ濃度を初期化する機会を正しく設定することができる。
【０１４６】
更に、前記パージ濃度の初期化と同時に、前回のパージ学習値及びパージカウンタを、共に初期化する一方、パージ積算値及び通常学習値を、前回のまま継続使用することから、パラメータのうち初期化するものと初期化しないものとを、具体化することができる。
【０１４７】
更にまた、Ｏ２センサ２８によって空燃比のリッチ・リーンの反転が検出されない状態が所定時間継続されない場合には、前記パージ濃度の初期化をせずに通常のパージ制御を行う一方、前記パージ濃度の初期化をした場合には、該パージ濃度の初期化後の初回のみに、パージ濃度学習回数が積算して所定の固定回数終了するまで、パージ割合を一定の割合で変化させてパージ濃度の演算を学習することから、今回のパージ濃度が正しく求まるので、燃料濃度減量補正を正確にすることができ、空燃比の悪化や排ガスの不良を防止することができる。
【０１４８】
即ち、この実施例においては、パージオン時に、Ｏ２センサ２８からの出力信号が、所定時間（例えば、２０秒）リッチ又はリーン側に張り付いた場合にのみ、パージオフとし、そして、パージ濃度を初期化するので、パージオン時に、空燃比を理論空燃比に制御できない時間を短縮することができ、パージ濃度の初期化後は、正常に空燃比を制御することができ、また、パージ量も少なくせずに済み、更に、パージ濃度を初期化するパージオフの時間を長く設定（例えば、５〜１０分）することが可能となるので、パージ量を確保することができ、且つ、空燃比を目標空燃比に精度高く制御することができる。また、Ｏ２センサ２８からの出力信号がリッチ又はリーンに反転できない時間を短縮することができ、パージ濃度の急激な変化等で、Ｏ２センサ２８が正常にもかかわらず誤検出してしまうことを改善することができる。更に、キャニスタ６２のパージ量が少なくなってしまい、エンジン２を停止した時の蒸発燃料をキャニスタ６２が吸着できなくなり、蒸発燃料が大気に漏れてしまう問題を改善できる。更にまた、パージ制御とパージ濃度による燃料制御の両立を図ることができ、運転性能の向上、排ガスの不良等を防止することができる。しかも、パージ量を多く確保することが可能で、キャニスタ６２の蒸発燃料の吸着性能を向上することが可能となり、エンジン２を停止した時の蒸発燃料をキャニスタ６２に吸着できなくなって蒸発燃料が大気に漏れてしまう問題を防止し、また、キャニスタ６２のハード部分の吸着性能を小さくすることが可能となるため、コストダウンを図ることが可能となる。
【０１４９】
なお、この発明においては、パージ制御条件が成立した後、パージバルブを短い時間でオンさせ、この短い時間において、燃料フィードバック補正の値が急激に制御限界に近づく等でＯ２センサのリッチ又はリーンへの張り付きの兆候があると予測した場合には、パージ濃度を直ぐに初期化することにより、空燃比を理論空燃比に制御できない時間をより短縮することができ、また、パージ量を確保する時間を確保することができ、更に、Ｏ２センサ２８の異常／正常の誤判定も減らすことができる。
【産業上の利用可能性】
【０１５０】
パージバルブを開動作させるパージ制御をした後に、空燃比センサによって空燃比のリッチ・リーンの反転が検出されず、この空燃比のリッチ・リーンの反転が検出されない状態が所定時間継続される場合には、パージの実施を中止し、パージ濃度を初期化することを、他のエンジン制御にも適用することができる。
【図面の簡単な説明】
【０１５１】
【図１】パージ濃度学習制御のフローチャートである。
【図２】パージ制御１のフローチャートである。
【図３】パージ濃度によるパージ率設定のフローチャートである。
【図４】パージ制御２のフローチャートである。
【図５】パージ濃度演算・パージ学習制御の実施例１のフローチャートである。
【図６】パージ濃度演算・パージ学習制御の実施例２のフローチャートである。
【図７】空燃比補正制御のフローチャートである。
【図８】パージ濃度学習制御のタイムチャートである。
【図９】パージ濃度による各学習回数を設定する図である。
【図１０】パージ濃度によるパージ率を設定する図である。
【図１１】エンジン負荷によるパージ濃度補正係数を設定する図である。
【図１２】エンジン負荷変化量によるパージ濃度補正係数を設定する図である。
【図１３】エンジン回転数とエンジン負荷とによる通常学習値記憶マップを示す図である。
【図１４】エンジン回転数とエンジン負荷とによるパージ率を設定する図である。
【図１５】吸入空気量によるパージ率を設定する図である。
【図１６】吸気管負圧によるパージ量を設定する図である。
【図１７】各制御のタイムチャートである。
【図１８】パージ制御装置のシステム構成図である。
【図１９】パージ制御装置の構成図である。
【図２０】エンジン制御のシステム構成図である。
【図２１】従来において第１のパージ濃度学習制御のタイムチャートである。
【図２２】従来において第２のパージ濃度学習制御のタイムチャートである。
【符号の説明】
【０１５２】
２  エンジン
４  吸気通路
６  排気通路
２８  Ｏ２センサ
３２  燃料供給装置
３４  燃料タンク
５４  パージ制御装置
５６  エバポ通路
６０  パージ通路
６２  キャニスタ
６４  パージバルブ
７８  制御手段
８６  水温センサ
１１４  イグニションスイッチ
１４８  アイドルスイッチ
１５０  エンジン回転数センサ
１５２  大気圧センサ
【図１】
0004513975.tif 000002
【図２】
0004513975.tif 000003
【図３】
0004513975.tif 000004
【図４】
0004513975.tif 000005
【図５】
0004513975.tif 000006
【図６】
0004513975.tif 000007
【図７】
0004513975.tif 000008
【図８】
0004513975.tif 000009
【図９】
0004513975.tif 000010
【図１０】
0004513975.tif 000011
【図１１】
0004513975.tif 000012
【図１２】
0004513975.tif 000013
【図１３】
0004513975.tif 000014
【図１４】
0004513975.tif 000015
【図１５】
0004513975.tif 000016
【図１６】
0004513975.tif 000017
【図１７】
0004513975.tif 000018
【図１８】
0004513975.tif 000019
【図１９】
0004513975.tif 000020
【図２０】
0004513975.tif 000021
【図２１】
0004513975.tif 000022
【図２２】
0004513975.tif 000023