(57)【特許請求の範囲】
【請求項１】
燃料タンク、内部を大気に開放する開放口を有し前記燃料タンク内に発生した蒸発燃料を吸着するキャニスタ、前記燃料タンクと前記キャニスタを連通するチャージ通路、前記キャニスタと内燃機関の吸気管を連通するパージ通路、前記チャージ通路に設けられた圧力調整弁、前記圧力調整弁をバイパスする通路に設けられたバイパス弁、前記パージ通路に設けられたパージ制御弁、前記開放口を開閉可能なベントシャット弁、前記燃料タンクの内圧を検出するための内圧センサ、前記燃料タンクを負圧にした後に閉鎖したときの前記燃料タンクの内圧の変化度合いを検出する漏れチェック手段、前記漏れチェック手段による検出結果に基づいて前記燃料タンクの漏れの有無を判定する判定手段を有する蒸発燃料処理装置において、
前記燃料タンクの圧力の変化度合いを検出した後に、前記燃料タンクを大気に開放して、前記燃料タンクの圧力が低下したかどうか判断する圧力変化チェック手段と、
前記圧力変化チェック手段が圧力の低下を判断することに応答して、前記判定手段による漏れの有無の判定を禁止する判定禁止手段と、
を備えることを特徴とする内燃機関の蒸発燃料処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、燃料タンク内で発生する蒸発燃料を内燃機関の吸気系に放出する内燃機関の蒸発燃料処理装置に関し、より具体的には、燃料タンクからエンジン吸気系に至る蒸発燃料排出抑止系の漏れの有無を判定することができる内燃機関の蒸発燃料処理装置に関する。
【０００２】
【従来の技術】
特開平７−８３１２５には、タンク系の漏れの有無を判定する手法が記載されている。蒸発燃料排出抑止系を所定圧力まで減圧し、次に燃料タンクの圧力の減圧目標値を上限値および下限値に交互に設定して燃料タンクの圧力を除々に減圧目標値に収束させるフィードバック減圧を行い、燃料タンクの単位時間あたりの圧力変動量を算出する（リークダウンチェックモード）。判定結果に対するベーパの影響を取り除くため、補正値として蒸発燃料による単位時間あたりの圧力変動量を算出する。タンク系の漏れの有無の判定は、上記のリークダウンチェックモードで算出された圧力変動量から、補正チェックモードで算出された圧力変動量に係数を掛けた値を引いた値に基づいて行われる。この値が所定値以下であれば、タンク系に漏れがなく正常と判定し、この値が所定値より大きければ、タンク系に漏れがあると判定する。
【０００３】
【発明が解決しようとする課題】
しかし、上記で述べたリークチェック中にベーパの発生量が非常に多い場合には、燃料タンクの内圧が負圧から正圧まで変動してしまうことがある。この発明の発明者は、リークチェックモード中の燃料タンクの内圧の変動パターンを細かく考察して、負圧ほど単位時間あたりの圧力変動量が多く、大気圧に近づくほど圧力変動量が減少し、さらに正圧では圧力変動量が小さくなる傾向があるということを見いだした。したがって、リークチェック中に正圧まで燃料タンクの内圧が変動する場合には、全体の燃料タンクの内圧の変動量が非常に小さくなり、その結果、漏れがあったとしても正常と誤って判断されることがある。また、０．５ｍｍ径の穴のような微小な穴による漏れを検出するには、漏れの検出に３０秒から６０秒という長い時間を必要とするため、この間にベーパの発生量が多くなる場合が生じやすくなる。
【０００４】
このような場合に、漏れがないにかかわらず漏れがあると検出されて、警告灯が点灯するということが頻繁に生じると車の実用性を低下させることになり、逆に漏れがあるにもかかわらず検出されなければ、環境に悪影響を及ぼす。
【０００５】
この発明は、これらの問題を解決し、判定の信頼性を向上させることを目的とする。
【０００６】
【課題を解決するための手段】
上記の課題を解決するため、請求項１の発明は、燃料タンク、内部を大気に開放する開放口を有し前記燃料タンク内に発生した蒸発燃料を吸着するキャニスタ、前記燃料タンクと前記キャニスタを連通するチャージ通路、前記キャニスタと内燃機関の吸気管を連通するパージ通路、前記チャージ通路に設けられた圧力調整弁、前記圧力調整弁をバイパスする通路に設けられたバイパス弁、前記パージ通路に設けられたパージ制御弁、前記開放口を開閉可能なベントシャット弁、前記燃料タンクの内圧を検出するための内圧センサ、前記燃料タンクを負圧にした後に閉鎖したときの前記燃料タンクの内圧の変化度合いを検出する漏れチェック手段、前記漏れチェック手段による検出結果に基づいて前記燃料タンクの漏れの有無を判定する判定手段を有する蒸発燃料処理装置において、前記燃料タンクの圧力の変化度合いを検出した後に、前記燃料タンクを大気に開放して、前記燃料タンクの圧力が低下したかどうか判断する圧力変化チェック手段と、前記圧力変化チェック手段が圧力の低下を判断することに応答して、前記判定手段による漏れの有無の判定を禁止する判定禁止手段とを備えるという構成をとる。
【０００７】
請求項１の発明によれば、タンクリークチェック後に燃料タンクを大気に開放して、燃料タンクの内圧が正圧から大気圧に変動したならば、正確なタンク系の漏れの有無の判定を行うことができないので、判定を禁止する。これにより、タンク系の漏れの有無の判定において誤った判定が発生する条件の下では判定を回避することができ、判定の信頼性を向上させることができる。
【０００８】
【発明の実施の形態】
次に図面を参照してこの発明の実施の形態を説明する。図１は、この発明の実施形態による内燃機関の蒸発燃料処理装置の全体構成図である。この装置は、内燃機関（以下、「エンジン」という）１、蒸発燃料排出抑止装置３１および電子制御ユニット（以下、「ＥＣＵ」という）５を備える。
【０００９】
ＥＣＵ５は、エンジン１の各部の制御を行うための演算を実行するＣＰＵ９１、エンジン各部の制御を行うためのプログラムおよび各種のデータを格納する読み取り専用メモリ（ＲＯＭ）９２、ＣＰＵ９１による演算の作業領域を提供し、エンジン各部から送られてくるデータおよびエンジン各部に送り出す制御信号を一時記憶するランダムアクセスメモリ（ＲＡＭ）９３、エンジン各部から送られてくるデータを受け入れる入力回路９４、エンジン各部に制御信号を送る出力回路９５を備えている。
【００１０】
図１では、プログラムは、モジュール１、モジュール２、モジュール３等で示されており、この発明による漏れの有無を検出するプログラムは、たとえばモジュール３、４、５に含まれている。また、演算に用いる各種のデータはテーブル１、テーブル２等の形でＲＯＭ９２に格納されている。ＲＯＭ９２は、ＥＥＰＲＯＭのような書き換え可能なＲＯＭであってもよく、この場合、ある運転サイクルにおいてＥＣＵ５が演算した結果をＲＯＭに格納しておき、次の運転サイクルで利用することができる。また、種々の処理でセットされた多くのフラグ情報をＥＥＰＲＯＭに記録しておくことにより、故障診断に利用することができる。
【００１１】
エンジン１は、例えば４気筒を備えるエンジンであり、吸気管２が連結されている。吸気管２の上流側にはスロットル弁３が配されており、スロットル弁３に連結されたスロットル弁開度センサ（θＴＨ）４は、スロットル弁３の開度に応じた電気信号を出力してＥＣＵに供給する。
【００１２】
燃料噴射弁６は、吸気管２の途中であって、エンジン１とスロットル弁３の間に各気筒毎に設けられ、ＥＣＵからの制御信号により開弁時間が制御される。燃料供給管７は、燃料噴射弁６および燃料タンク９を接続し、その途中に設けられた燃料ポンプ８が燃料を燃料タンク９から燃料噴射弁６に供給する。図示しないレギュレータが、ポンプ８と燃料噴射弁６の間に設けられ、吸気管２から取り込まれる空気の圧力と、燃料供給管７を介して供給される燃料の圧力との間の差圧を一定にするよう動作して、燃料の圧力が高すぎるときは図示しないリターン管を通して余分な燃料を燃料タンク９に戻す。こうして、スロットル弁３を介して取り込まれた空気は、吸気管２を通り、燃料噴射弁６から噴射される燃料と混合してエンジン１のシリンダに供給される。
【００１３】
吸気管圧力（ＰＢＡ）センサ１３および吸気温（ＴＡ）センサ１４は、吸気管２のスロットル弁３の下流側に装着されており、それぞれ吸気管圧力および吸気温を検出して電気信号に変換し、それをＥＣＵ５に送る。
【００１４】
エンジン水温（ＴＷ）センサ１５は、エンジン１のシリンダブロックの冷却水が充満した気筒周壁に取り付けられ、エンジン冷却水の温度を検出し、電気信号に変換して結果をＥＣＵ５に送る。エンジン回転数（ＮＥ）センサ１６がエンジン１のカム軸周囲またはクランク軸周囲に取り付けられ、エンジン１のクランク軸の１８０度回転毎に所定のクランク角度位置で信号パルス（ＴＤＣ信号パルス）を出力し、それをＥＣＵ５に送る。
【００１５】
エンジン１は排気管１２を持ち、排気管１２の途中に設けられた排気ガス浄化装置である三元触媒３３を介して排気する。Ｏ２センサ３２は排気濃度センサであり、排気管１２の途中に装着され、排気ガス中の酸素濃度を検出し、検出値に応じた信号をＥＣＵ５に送る。
【００１６】
車速（ＶＰ）センサ１７、バッテリ電圧（ＶＢ）センサ１８および大気圧（ＰＡ）センサ１９は、ＥＣＵ５に接続されており、それぞれ車両の走行速度、バッテリ電圧および大気圧を検出し、それをＥＣＵ５に送る。
【００１７】
各種センサからの入力信号は入力回路９４に渡される。入力回路９４は、入力信号波形を整形して電圧レベルを所定レベルに修正し、アナログ信号値をデジタル信号値に変換する。ＣＰＵ９１は、変換されたデジタル信号を処理し、ＲＯＭ９２に格納されているプログラムに従って演算を実行し、車の各部のアクチュエータに送る制御信号を作り出す。この制御信号は出力回路９５に送られ、出力回路９５は、燃料噴射弁６、バイパス弁２４、ベントシャット弁２６およびパージ制御弁３０その他のアクチュエータに制御信号を送る。
【００１８】
次に、蒸発燃料排出抑止系（以下、「排出抑止系」という）３１について説明する。排出抑止系３１は、燃料タンク９、チャージ通路２０、キャニスタ２５、パージ通路２７およびいくつかの制御弁を備え、燃料タンク９からの蒸発燃料の排出を制御する。排出抑止系３１は、チャージ通路２０にあるバイパス弁２４を境に、便宜上２つに分けて考えることができ、燃料タンク９を含む側をタンク系、キャニスタ２５を含む側をキャニスタ系と呼ぶ。
【００１９】
燃料タンク９は、チャージ通路２０を介してキャニスタ２５に接続され、燃料タンク９からの蒸発燃料が、キャニスタ２５に移動できるようになっている。チャージ通路２０は、第１の分岐２０ａおよび第２の分岐２０ｂを持ち、これらはエンジンルーム内に設けられている。内圧センサ１１は、チャージ通路２０の燃料タンク側に取り付けられており、チャージ通路２０内の内圧と大気圧との差圧を検出する。定常状態においては、チャージ通路２０内の圧力が燃料タンク９内の圧力とがほぼ等しいので、内圧センサ１１により検出された内圧を、燃料タンク９の圧力（以下、「タンク内圧」という）とみなすことができる。
【００２０】
第１の分岐２０ａには二方向弁２３が設けられ、二方向弁２３は２つの機械式の弁２３ａおよび２３ｂを備える。弁２３ａは、タンク内圧が大気圧より１５ｍｍＨｇ程度高くなったときに開く正圧弁であり、これが開弁状態にあると、蒸発燃料がキャニスタ２５に流れ、そこで吸着される。弁２３ｂは、タンク内圧がキャニスタ２５側の圧力より１０ｍｍＨｇから１５ｍｍＨｇ程度低くなったとき開く負圧弁であり、これが開弁状態にあると、キャニスタ２５に吸着された蒸発燃料が燃料タンク９に戻る。
【００２１】
第２の分岐２０ｂには電磁弁であるバイパス弁２４が設けられる。バイパス弁２４は、通常は閉弁状態にあり、この発明による排出抑止系３１の漏れを検出する際に、ＥＣＵ５からの制御信号により開閉を制御される。
【００２２】
キャニスタ２５は、燃料蒸気を吸着する活性炭を内蔵し、通路２６ａを介して大気に連通する吸気口（図示せず）を持つ。通路２６ａの途中に、電磁弁であるベントシャット弁２６が設けられる。ベントシャット弁２６は、通常は開弁状態にあり、この発明による排出抑止系３１の漏れを検出する際に、ＥＣＵ５からの制御信号により開閉を制御される。
【００２３】
キャニスタ２５は、パージ通路２７を介して吸気管２のスロットル弁３の下流側に接続される。パージ通路２７の途中には電磁弁であるパージ制御弁３０が設けられ、キャニスタ２５に吸着された燃料が、パージ制御弁３０を介してエンジンの吸気系に適宜パージされる。パージ制御弁３０は、ＥＣＵ５からの制御信号に基づいて、オン−オフデューティ比を変更することにより、流量を連続的に制御する。
【００２４】
図２は、この発明の実施形態に関連するＥＣＵ５を機能ブロックで示してあり、これらは図１に示されるＥＣＵ５のハードウェア構成およびＲＯＭ９２に格納されているプログラムにより実現される。ＥＣＵ５内の機能ブロックによるデータの受け渡しは、主にＲＡＭ９３（図１）を介して行われる。ＥＣＵ５は、弁制御部５０、タンク減圧モード実行部６０、燃料消費量算出部８０および燃料噴射弁制御部８１を備える。
【００２５】
弁制御部５０は、バイパス弁２４の開閉を制御するバイパス弁制御部５１、ベントシャット弁２６の開閉を制御するベントシャット弁制御部５２およびパージ制御弁３０の開弁量を制御するパージ制御弁制御部５３を備え、タンク減圧実行モード部６０からの制御信号に応じて、それぞれの弁に駆動信号を送る。
【００２６】
タンク減圧モード実行部６０は、大気開放部６１、補正チェック部６２、減圧部６３、タンクリークチェック部６５およびベーパチェック部６６を備え、後で図４を参照して述べるタンク減圧モニターを実行する。補正チェック部６２およびタンクリークチェック部６５は、それぞれ圧力変動量算出部７１および７２を備え、これらは、内圧センサ１１により検出された圧力値に基づいて、補正チェック中およびタンクリークチェック中の単位時間あたりの圧力変動量をそれぞれ算出する。算出された値は、ベーパチェック部６６の判定部７６に渡される。
【００２７】
燃料噴射弁制御部８１は、図示しない各種センサからの信号に基づいて、噴射信号を燃料噴射弁６に送り、燃料噴射弁６の開弁時間を制御する。燃料噴射弁６の開弁時間は、燃料消費量算出部８０に渡される。燃料消費量算出部８０は、大気開放部６１がプロセスの終了時に１に設定するフラグに基づいて、現在補正チェック中であることを検出し、燃料噴射弁制御部８１から受け取った燃料噴射弁６の開弁時間に基づいて、燃料消費量を算出する。また、燃料消費量算出部８０は、減圧部６３がプロセス終了時に１に設定するフラグに基づいてタンクリークチェック中であることを検出し、燃料噴射弁制御部８１から受け取った燃料噴射弁６の開弁時間に基づいて燃料消費量を算出する。それぞれ算出された値は、ベーパチェック部６６の判定実行チェック部７３に渡される。
【００２８】
ベーパチェック部６６は、判定実行チェック部７３、圧力変化チェック部７４、判定禁止部７５および判定部７６を備える。判定実行チェック部７３は、燃料消費量算出部８０により算出された補正チェック中の燃料消費量およびタンクリークチェック中の燃料消費量に基づいて、タンク系の漏れの有無の判定を行うかどうか判断する。圧力変化チェック部７４は、タンクリークチェック部６５が処理を終了した時のタンク内圧が正圧だったかどうかに基づいて、漏れの有無の判定を行うかどうか判断する。判定実行チェック部７３および圧力変化チェック部７４による判断結果に応じて、判定禁止部７５または判定禁止部７６が動作する。判定禁止部７５は判定を禁止し、判定部７６は、圧力変動量算出部７１および７２により算出された補正チェック中およびタンクリークチェック中の単位時間あたりの圧力変動量に基づいて、タンク系の漏れの有無の判定を行う。
【００２９】
次に、排出抑止系３１の漏れの有無の判定の概要を説明する。図３は、エンジンの始動から停止までの１運転サイクルにおける、漏れの有無の判定におけるタンク系の圧力の遷移の例を示したものである。漏れの有無の判定プロセスは、４つの段階、すなわち、始動後オープン処理、タンク内圧監視モニター、キャニスタモニターおよびタンク減圧モニターを有する。タンク減圧モニターについては、図４を参照して説明するので、ここでは始動後オープン処理、タンク内圧監視モニターおよびキャニスタモニターの概要を述べる。
【００３０】
始動後オープン処理、内圧監視モニター
始動後オープン処理は、エンジン始動直後に、バイパス弁２４およびベントシャット弁２６を開き、パージ制御弁３０を閉じて、排出抑止系３１の圧力を大気圧に開放し、この時に、タンク内圧が大気開放前の値から所定値以上変動すれば、タンク系の漏れがなく正常と判定する。この所定値は、０．５および１ｍｍ径の穴に対応して異なる値が設定される。漏れがあるならば、始動前のタンク系はほぼ大気圧であるので、圧力の変動が小さい。
【００３１】
始動後オープン処理後は、タンク内圧監視モニターを実行する。これは、バイパス弁２４を閉じた状態で内圧センサ１１の出力レベルを連続的にチェックし、そのレベルが正圧または負圧に所定値以上変動する場合には漏れがないと判定する。
【００３２】
キャニスターモニター
キャニスタモニターは、大気開放、減圧、内圧安定待ち、リークチェックおよび圧力復帰モードを含む。キャニスタモニターは、キャニスタを負圧にし、負圧の保持状態を検出することにより漏れの有無を判定するものである。
【００３３】
タンク減圧モニター
図４は、図３のタンク減圧モニターの部分を詳細に示した図である。タンク減圧モニターは、内圧監視モニター後に実施され、始動後オープン処理および内圧監視モニターで検出されなかった漏れを検出することができる。例えば、始動後オープン処理または内圧監視モニターで１ｍｍ径以上の穴による漏れについてだけ正常判定とされた場合には、このタンク減圧モニターを実行して、０．５ｍｍ径の穴による漏れの有無について判定することができる。また、始動後オープン処理および内圧監視モニターで１ｍｍ径基準および０．５ｍｍ径基準のどちらについても漏れがなく正常と判定されれば、タンク減圧モニターを実施しないこともできる。
【００３４】
タンク減圧モニターは、大気開放、補正チェック、減圧、タンクリークチェックおよびベーパチェック（圧力復帰）モードを含む。実線４５は、内圧センサ１１の示す圧力値を示したものである。通常モードは、バイパス弁２４のみ閉じられ、ベントシャット弁２６およびパージ制御弁３０は開いている。
【００３５】
補正チェックモードに先だって、バイパス弁２４を開き、パージ制御弁３０を閉じて、大気開放モードに移行する。タンク内圧は、実線４５に示すように、大気圧へと変化する。大気開放モードに要する時間は、例えば１５秒である。
【００３６】
タンク内圧が大気圧になった時、バイパス弁２４を閉じ、ベントシャット弁２６を開き、パージ制御弁３０を閉じて、補正チェックモードに移行する。燃料タンク９ではベーパが発生しており、この量に依存してタンク内圧が上昇する。したがって、この圧力上昇分を、後のタンク系の漏れの判定の際に考慮する必要がある。補正チェックモードでは、補正値として、大気圧から正圧に上昇する単位時間あたりの圧力変動量を測定する。補正チェックモードに要する時間は、例えば３０秒である。
【００３７】
次に、バイパス弁２４を開き、ベントシャット弁２６を閉じて、減圧モードに移行し、パージ制御弁を制御しながら、タンク内圧を所定の圧力、例えば−１５ｍｍＨｇにまで安定的に減圧する。内圧センサ１１は、すぐに負圧状態になる細いチャージ通路２０に設けられており、それに対して燃料タンク９は容量が大きいため、センサ１１が負圧を示す時でも、タンク９が負圧でない場合が生じる。したがって、安定した負圧状態にするため、オープン減圧をした後に、フィードバック減圧を行う。
【００３８】
最初に行われるオープン減圧は、オープン減圧目標流量テーブルを検索して、現在のタンク内圧に応じたパージ流量を算出し、そのパージ流量に対応するデューティ比を設定し、パージ制御弁３０の開弁量を制御する。その後、ベントシャット弁２６を閉じ、バイパス弁２４およびパージ制御弁３０を開いて、タンク系を減圧する。この減圧を所定時間継続することで、ある圧力までタンク系を減圧する。
【００３９】
オープン減圧を実行した後、フィードバック減圧を実行する。オープン減圧により、減圧目標値の下限値付近にタンク内圧があるので、次の減圧目標値を、その上限値に変更する。現在のタンク内圧および減圧目標値に基づいて、タンク内圧が減圧目標値に達するようパージ流量を減少させる。減少されたパージ流量に対応する開弁量に、パージ制御弁３０を設定する。その結果、それに応じてタンク内圧は上昇する。タンク内圧のセンサ出力が上限値に達すると、タンク内圧の減圧目標値をその下限値に変更し、現在のタンク内圧および減圧目標値に基づいて、タンク内圧が減圧目標値に達するようパージ流量を増大させる。増大されたパージ流量に対応する開弁量に、パージ制御弁３０を設定する。その結果、それに応じてタンク内圧は減少する。タンク内圧のセンサ出力が下限値に達すると、タンク内圧の減圧目標値をその上限値に変更する。
【００４０】
このように、減圧目標値の上限値および下限値の間で、パージ流量を増減しながら復圧および減圧を繰り返すと、パージ流量がその下限値にはりつく。すなわち、パージ流量を減少させても、タンク内圧が目標上限値まで上がらなくなる。または、パージ流量がその上限値にはりつき、パージ流量を増加させても、タンク内圧が目標下限値まで下がらなくなる。これは、タンク内圧が上限値と下限値の間の負圧状態であって、パージ流量を変えてもタンク内圧が変わらない安定点に達したことを示すので、このような状態に達した時、フィードバック減圧を終える。
【００４１】
この減圧により、内圧センサ１１により示される圧力および実際のタンク内圧の差圧がほぼゼロになる。減圧モードに要する時間は、例えば３０秒〜４０秒である。
【００４２】
タンク系が所定の負圧状態になった後、すべての弁２４、２６および３０を閉じ、タンクリークチェックモードに移行する。タンク系に漏れがなければ、負圧はほぼ保持されたままとなり、復帰する圧力量（これは、ベーパの影響による）が小さい。タンク系に漏れがあれば、復帰する圧力量が大きい。０．５ｍｍという非常に小さい穴を検出する必要があるので、タンクリークチェックモードに要する時間は、例えば３０秒である。
【００４３】
次に、バイパス弁２４およびベントシャット弁２６を開き、ベーパチェックモード（圧力復帰モード）に移行し、タンク系を大気圧に戻す。ここで、正圧から大気圧に向けてタンク内圧が変動した場合には、タンクリークチェックの間にベーパの発生等により正圧にまで変動しており、タンクリークチェック中に正確な圧力変動量が算出されていないことを示すので、漏れの有無の判定を禁止する。反対に、負圧から大気圧に変動した場合には、リークチェック中の単位時間あたりの圧力変動量から、補正チェック中の単位時間あたりの圧力変動量に係数を掛けた値を引いた値に基づいて、タンク系の漏れの有無を判断する。ベーパチェックモードに要する時間は、たとえば３秒である。
【００４４】
このように、タンク系の漏れの有無の判定は、負圧状態からの復圧量に基づいて行われる。しかし、例えばタンクリークチェックモード中にベーパが大量に発生し、タンク内圧が負圧から正圧にまで変化した場合には、正圧へいくほど圧力変動量が小さくなるため、結果として全体のタンク内圧変動量が著しく減少し、たとえ燃料タンクに穴があったとしても漏れがなく正常と判断されることがある。さらに、０．５ｍｍ径の穴のような微小な穴による漏れを検出するために、十分長い時間（３０秒〜６０秒）のタンクリークチェックモードを必要とする。したがって、タンクリークチェック中にタンク内圧が正圧にまで上昇した場合には、タンク系の漏れの有無の判定を正確に行うことができない。
【００４５】
この発明は、タンクリークチェック終了時のタンク内圧と、ベーパチェック開始時のタンク内圧とを比較して、タンク内圧が正圧から大気圧へと低下したかどうか判断し、この判断に基づいて、タンク系の漏れの有無の判定を行うかどうか判断する。
【００４６】
燃料消費量算出
図５は、補正チェックモードおよびタンクリークチェックモードにおける燃料消費量を算出する処理を示す流れ図であり、図２に示される燃料消費量算出部８０により実行される。このプロセスは、タンク減圧モニターのプロセスのバックグラウンドで適宜実行される。
【００４７】
ステップ７０１では、車両が始動モードかどうか判断し、始動モードであればステップ７０６に進み、燃料噴射時間合計ＴＴＯＵＴＬおよび燃料消費量ＵＳＥＤＧＡＳを、それぞれゼロに初期化する。始動モードでなければ、燃料消費量算出プロセスを開始する。
【００４８】
ステップ７０２では、現在タンク減圧モニター中かどうか判断する。タンク減圧モニター中でなければ、ステップ７０４に進み、算出されるべき補正チェック中の燃料消費量ＲＧＡＳおよびタンクリークチェック中の燃料消費量ＬＧＡＳを、それぞれゼロに初期化する。タンク減圧モニター中であれば、ステップ７０３で、補正チェック中であれば１に設定されている補正チェック許可フラグに基づいて、現在補正チェック中かどうか判断する。現在補正チェック中でなければ、ステップ７０５で、タンクリークチェック中であれば１に設定されているタンクリークチェック許可フラグに基づいて、現在タンクリークチェック中かどうか判断する。現在補正チェック中でもタンクリークチェック中でもなければ、ステップ７０６に進み、燃料噴射時間合計ＴＴＯＵＴＬおよび燃料消費量ＵＳＥＤＧＡＳを、それぞれゼロに初期化する。
【００４９】
現在補正チェック中またはタンクリークチェック中ならば、ステップ７０７に進む。現在キャニスタモニター中でなければステップ７０８に進み、さらに燃料がエンジンに供給されないフュエルカット中でなければ、ステップ７０９に進む。現在キャニスタモニター中またはフュエルカット中はここでの燃料消費に関係ないので、ステップ７１０に跳ぶ。
【００５０】
ステップ７０９では、燃料噴射時間合計ＴＴＯＵＴＬに、燃料噴射時間ＴＣＹＬを加算する。ここで、燃料噴射時間ＴＣＹＬは、図２に示される燃料噴射弁制御部８１により制御される燃料噴射弁６の開弁時間であり、これは、燃料噴射弁制御部８１から燃料消費量算出部８０に渡される。図５に示されるプロセスは所定時間ごとに繰り返し実行されるので、補正チェック中またはタンクリークチェック中の燃料噴射時間が、ステップ７０９でＴＴＯＵＴＬに合計される。
【００５１】
ステップ７１０に進み、ステップ７０９で算出された燃料噴射時間合計ＴＴＯＵＴＬを、燃料消費量ＵＳＥＤＧＡＳに変換する。変換は、以下の式に従う。ここで、０．１ｃｃあたりの噴射時間は予め決められた値である。
【００５２】
【数１】
ＵＳＥＤＧＡＳ  ＝  ＴＴＯＵＴＬ  ／  燃料０．１ｃｃあたりの噴射時間
【００５３】
ステップ７１１に進み、補正チェック許可フラグに基づいて、現在なお補正チェック中かどうか判断し、補正チェック中であればステップ７１２に進み、補正チェック燃料消費量ＲＧＡＳに、ステップ７１０で算出された燃料消費量ＵＳＥＤＧＡＳを設定し、ＲＧＡＳをＲＡＭ９３に保管する。ステップ７１３に進み、タンクリークチェック許可フラグに基づいて、現在なおタンクリークチェック中かどうか判断し、タンクリークチェック中であればステップ７１４に進み、タンクリークチェック燃料消費量ＬＧＡＳに、ステップ７１０で算出された燃料消費量ＵＳＥＤＧＡＳを設定し、ＬＧＡＳをＲＡＭ９３に記憶する。保管されたＲＧＡＳおよびＬＧＡＳは、ベーパチェックモードで使用される。
【００５４】
次に説明する補正チェック、タンクリークチェックおよびベーパチェックの流れ図を実行するプログラムは、例えば８０ミリ秒ごとに呼び出される前述したタンク減圧モニタープロセスを実行するプログラムの一部である。
【００５５】
補正チェックモード
図６は、補正チェックモードにおいて補正値を算出する流れ図であり、図２に示される補正チェック部６２およびその圧力変動量算出部７１により実行される。ステップ８０１で、大気開放モードのプロセス完了時に大気開放部６１（図２）により設定される補正チェック許可フラグが１ならばステップ８０２に進み、補正チェックのプロセスを開始する。ステップ８０２で、バイパス弁２４およびパージ制御弁３０を閉じ、ベントシャット弁２６を開く。
【００５６】
ステップ８０３に進み、タンク内圧読み込みタイマーがゼロでなければステップ８０４に進み、内圧センサ１１の出力を検出して、タンク内圧の初期値Ｐ１としてＲＡＭ９３に保管する。タンク内圧読み込みタイマーを設けたのは、バイパス弁２４を開いた状態から閉じるとタンク内圧が変動するため、所定時間経過して圧力がある程度落ち着いた時のタンク内圧を読み込むためである。
【００５７】
ステップ８０３でタンク内圧読み込みタイマーがゼロであれば、すなわち所定時間経過したならば、ステップ８０５に進み、補正チェックモードタイマーがゼロかどうか判断する。補正チェックタイマーは、補正値算出に必要な時間が経過したかどうかを判断するためのものであり、上記のタンク内圧読み込みタイマーより大きい値に設定される。補正チェックタイマーがゼロであれば、ステップ８０６に進む。
【００５８】
ステップ８０６では、現在のタンク内圧Ｐ２と、ステップ８０４で保管されたタンク内圧の初期値Ｐ１とを比較し、タンク内圧が負圧側へ所定値以上変動しているかどうかを判断する。負圧側へ変動していれば、燃料タンク内の温度が低下することにより蒸発燃料が液化している状態であり、適切な補正値を得ることができない。したがって、ステップ８１０に進み、タンク減圧モニター完了フラグに１を設定し、この運転サイクルにおけるタンク減圧モニターを禁止する。
【００５９】
ステップ８０６で負圧側への変動がなければ、ステップ８０７に進み、単位時間あたりのタンク内圧の変動量を示す補正値ＲＶＡＲを、以下の式に従って算出する。
【００６０】
【数２】
補正値ＲＶＡＲ  ＝（Ｐ２−Ｐ１）／  補正チェックタイマー経過時間
【００６１】
ステップ８０８に進み、算出された補正値ＲＶＡＲが所定値以上であれば、ベーパが大量に発生して、二方向弁２３の正圧側コントロール圧にタンク内圧がはりついている可能性があり、そのような状態で算出された値は適切な補正値でないので、ステップ８１０に進み、タンク減圧モニター完了フラグに１を設定してタンク減圧モニターを禁止する。補正値ＲＶＡＲが所定値より小さければ、ステップ８０９に進み、補正チェック許可フラグにゼロを設定し、次の減圧モードを実行するため減圧許可フラグに１を設定する。得られた補正値ＲＶＡＲは、ＲＡＭ９３に保管され、ベーパチェックモードで使用される。
【００６２】
タンクリークチェックモード
図７は、タンクリークチェックモードにおいて燃料タンク内を負圧にしたときの単位時間あたりの圧力変動量を算出する流れ図であり、図２に示されるタンクリークチェック部６５およびその圧力変動量算出部７２により実行される。ステップ９０１で、減圧モードのプロセス完了時に減圧モード部６３（図２）により１に設定されるタンクリークチェック許可フラグが１ならば、ステップ９０２に進み、タンクリークチェックのプロセスを開始する。
【００６３】
ステップ９０２では、バイパス弁２４、ベントシャット弁２６およびパージ制御弁３０をすべて閉じる。ステップ９０３に進み、タンク内圧読み込みタイマーがゼロかどうか判断する。タンク内圧読み込みタイマーがゼロでなければ、ステップ９０４に進み、内圧センサ１１により検出された値を、タンク内圧の初期値Ｐ３としてＲＡＭ９３に保管する。タンク内圧読み込みタイマーを設けたのは、補正チェックモードの場合と同様に、所定時間経過させて圧力をある程度落ち着かせてからタンク内圧を読み込むためである。
【００６４】
ステップ９０３でタンク内圧読み込みタイマーがゼロならば、ステップ９０５に進み、復圧履歴監視タイマーがゼロかどうか判断し、ゼロであれば復圧履歴監視（ステップ９０６から９０８）を行う。復圧履歴監視は、タンクリークチェックモード中に所定時間ごとに実行され、その度にステップ９０８でタンク内圧を読み込んで時系列にＲＡＭ９３に保管し（すなわち、前回のタンク内圧をＰ４（ｎ）、前々回のタンク内圧をＰ４（ｎ−１）．．．と保管する）、圧力変動量を監視する。
【００６５】
ステップ９０６では、現在のタンク内圧Ｐ４と、前回のタンク内圧Ｐ４（ｎ）との差の絶対値が予め決められた値以上ならば、液面の揺れなどによる圧力の急変と判断し、適切な圧力変動量を算出できないので、タンク減圧モニターを中断し、圧力を復帰させて通常モードに移行する。ここで禁止でなく中断とするのは、今回のタンクリークチェックでは急激な圧力変動量があったけれども、次回のタンクリークチェックでは、そのような圧力変化が起きないことがあるからである。
【００６６】
ステップ９０７に進み、現在のタンク内圧Ｐ４および前回のタンク内圧Ｐ４（ｎ）の差Ｐ４−Ｐ４（ｎ）（これを、△Ｐｘとする）と、前回のタンク内圧Ｐ４（ｎ）および前々回のタンク内圧Ｐ４（ｎ−１）の差Ｐ４（ｎ）−Ｐ４（ｎ−１）（これを、△Ｐｙとする）を算出し、△Ｐｘと△Ｐｙとの差の絶対値｜△Ｐｘ−△Ｐｙ｜が予め決められた値以上ならば、燃料タンクが満タン時のカットオフ弁作動中と判断し、このような状態では適切な圧力変動量を算出できないので、ステップ９１５に進み、タンク減圧モニター完了フラグに１を設定して、この運転サイクルのタンク減圧モニターを禁止する。
【００６７】
復圧履歴監視を終えた後、ステップ９０９に進み、タンクリークチェックタイマーがゼロかどうか判断する。ゼロであれば、ステップ９１０に進み、現在のタンク内圧Ｐ４およびステップ９０４で記憶されたタンク内圧の初期値Ｐ３に基づいて、以下の式に従い、タンクリークチェックモードの単位時間あたりの圧力変動量ＬＶＡＲを算出する。算出されたＬＶＡＲは、ＲＡＭ９３に記憶され、ベーパチェックモードで使用される。
【００６８】
【数３】
単位時間あたりの圧力変動量ＬＶＡＲ  ＝（Ｐ４−Ｐ３）／  タンクリークチェックタイマー経過時間
【００６９】
ステップ９１１に進み、内圧センサ１１により検出された圧力値を、タンクリークチェック終了時のタンク内圧Ｐ５として、ＲＡＭ９３に記憶する。これは、後のベーパチェックモードで使用するためである。ステップ９１２に進み、タンクリークチェック許可フラグにゼロを設定し、次のベーパチェックモードを実行するため、ベーパチェック許可フラグに１を設定する。
【００７０】
ステップ９０９でタンクリークチェックタイマーがゼロでなければ、ステップ９１６に進み、現在のタンク内圧Ｐ４が、大気圧近傍の所定範囲内にあるかどうか判断する。所定範囲内にあるならばステップ９１７に進み、現在のタンク内圧Ｐ４と、前回のタンク内圧Ｐ４（ｎ）との差の絶対値｜Ｐ４−Ｐ４（ｎ）｜が、予め決められた値以上かどうか判断する。この値より小さければ、圧力がほぼ落ち着いてきており、タンクリークチェックタイマーによる時間経過を待つ必要がないので、ステップ９１０に進み、単位時間あたりの圧力変動量を算出する。この場合の算出は、以下の式に従う。
【００７１】
【数４】
0003561650.tif 000002
【００７２】
ベーパチェックモード
図８は、ベーパチェックモードにおいて、タンクリークチェックモード終了時のタンク内圧の状況を判断し、タンク系の漏れの有無を判定する流れ図であり、図２に示されるベーパチェック部６６と、それに含まれる判定実行チェック部７３、圧力変化チェック部７４、判定禁止部７５および判定部７６により実行される。ステップ１００１で、タンクリークチェックのプロセス終了時に設定されるベーパチェック許可フラグが１ならば、ステップ１００２に進み、ベーパチェックのプロセスを開始する。
【００７３】
ステップ１００２で、ステップ７１２（図５）で得られた補正チェック燃料消費量ＲＧＡＳと、ステップ７１４で得られたタンクリークチェック燃料消費量ＬＧＡＳとの差の絶対値が、所定値（たとえば、１０ｃｃ）以上かどうか判断する。所定値以上ならば、両モードの運転状態が大きく異なるため正確な判定を行うことができないと判断し、ステップ１０１０に進み、タンク減圧モニター完了フラグに１を設定し、この運転サイクルのタンク減圧モニターを禁止する。これにより、タンク系の漏れの有無の判定は行われない。この所定値は、微小な穴による漏れ検出に対し、補正チェックモードとリークチェックモードとで運転状態が異なることによる影響を示すデータを実験およびシミュレーションで蓄積し、その結果に基づいて決定する。
【００７４】
この実施形態では、燃料消費量ＲＧＡＳは補正チェックモードの全期間にわたる総燃料消費量であり、燃料消費量ＬＧＡＳはタンクリークチェックの全期間にわたる総燃料消費量であり、それぞれの総燃料消費量を比較するので（ステップ１００２）、それぞれの燃料消費量の測定時間に対応した所定値が使用される。または、補正チェックモードおよびタンクリークチェックモードのそれぞれの単位時間あたりの燃料消費量を算出して、それに対応した所定値を用いて比較することもできる。
【００７５】
ステップ１００２で、ＲＧＡＳとＬＧＡＳとの差の絶対値がこうして決められた値より小さければ、ステップ１００３に進み、バイパス弁２４およびベントシャット弁２６を開き、パージ制御弁３０を閉じて、タンク系を大気圧に開放する。ステップ１００４に進み、現在のタンク内圧と、タンクリークチェックのステップ９１１（図７）で保管されたタンクリークチェック終了時のタンク内圧Ｐ５とを比較して、タンク内圧が正圧から大気圧に向けて低下したかどうか判断する。すなわち、タンク内圧が正圧になっていたかどうか判定する。
【００７６】
正圧から大気圧に向けて所定値（たとえば、１．０ｍｍＨｇ）以上低下したならば、ベーパが大量に発生してタンクリークチェックモード終了時にタンク内圧が正圧にまで変動していたことを示し、判定を正確に行うことができないので、ステップ１０１０に進み、タンク減圧モニター完了フラグに１を設定してモニターを禁止し、タンク系の漏れの有無の判定を行わない。正圧から大気圧に所定値以上低下したのでなければ、ステップ１００５に進み、判定を行うための最終計測値を、以下の式に従って算出する。
【００７７】
【数５】
最終計測値＝ＬＶＡＲ−（補正係数＊ＲＶＡＲ）
【００７８】
ここで、ＬＶＡＲはステップ９１０（図７）で得られたタンクリークチェック中の単位時間あたりの圧力変動量であり、ＲＶＡＲはステップ８０７（図６）で得られた補正チェック中の単位時間あたりの圧力変動量である。補正係数は、補正チェックモードにおける大気圧からの圧力上昇量と、タンクリークチェックモードにおける負圧からの圧力上昇量とは条件が異なるので、それを補正するための係数であり、例えば１．５〜２．０である。
【００７９】
ステップ１００６に進み、算出された最終計測値が判定値１（たとえば、８ｍｍＨｇ）以上ならば、タンクリークチェックモードの圧力上昇はタンク系の漏れによるものと考えられるので、ステップ１００８に進み、タンク系に漏れがあり異常と判定（ＮＧ判定）し、ＯＫフラグに「０」を設定する。算出された最終計測値が判定値１より小さければ、ステップ１００７に進む。ステップ１００７において、算出された最終計測値が判定値２（たとえば、３ｍｍＨｇ）以下ならば、タンクリークチェックモードの圧力上昇はベーパの発生によるものと考えられるので、ステップ１００９に進み、タンク系に漏れがなく正常と判定（ＯＫ判定）し、ＯＫフラグに「１」を設定する。
【００８０】
ステップ１００７で、最終計測値が判定値２より大きければ、すなわち、最終計測値が判定値２より大きく判定値１より小さい場合には、漏れのある／なしを正確に判定することができないので、ステップ１０１０に進み、タンク減圧モニター完了フラグに１を設定し、タンク減圧モニターを禁止する。これらの関係を以下の表に示す。
【００８１】
【表１】
0003561650.tif 000003
【００８２】
【発明の効果】
この発明によれば、タンク系の漏れの有無の判定の信頼性を向上させることができる。
【図面の簡単な説明】
【図１】この発明による蒸発燃料処理装置を示す図。
【図２】この発明に関連するＥＣＵの機能ブロック図。
【図３】この発明による蒸発燃料処理装置の排出抑止系の漏れの有無を判定する際の圧力の変化を示す図。
【図４】図３におけるタンク減圧モニターの部分であって、タンク系の漏れを判定する際のタンク内圧の変化を示す図。
【図５】補正チェックモードおよびタンクリークチェックモードにおける燃料消費量を算出する流れ図。
【図６】補正チェックモードの単位時間あたりの圧力変動量を算出する流れ図。
【図７】タンクリークチェックモードの単位時間あたりの圧力変動量を算出する流れ図。
【図８】ベーパチェックモードにおいてタンク系の漏れの有無の判定を行う流れ図。
【符号の説明】
１    エンジン（内燃機関）              ６０  タンク減圧モード実行部
２    吸気管                            ６２  補正チェック部
６    燃料噴射弁                        ６４  減圧部
９    燃料タンク                        ６５  タンクリークチェック部
１１  内圧センサ                        ６６  ベーパチェック部
２０  チャージ通路                      ７１、７２  圧力変動量算出部
２４  バイパス弁                        ７３  判定実行チェック部
２５  キャニスタ                        ７４  圧力変化チェック部
２６  ベントシャット弁                  ７５  判定禁止部
２７  パージ通路                        ７６  判定部
３０  パージ制御弁                      ８０  燃料消費量算出部
５０  弁制御部                          ８１  燃料噴射弁制御部
【図１】
0003561650.tif 000004
【図２】
0003561650.tif 000005
【図３】
0003561650.tif 000006
【図４】
0003561650.tif 000007
【図５】
0003561650.tif 000008
【図６】
0003561650.tif 000009
【図７】
0003561650.tif 000010
【図８】
0003561650.tif 000011