(57)【要約】【課題】エンジン停止中にリーク診断を行うシステムにおいて、エバポガスの影響によるリーク診断の診断精度の低下を防止できるようにする。【解決手段】エンジン停止中に、負圧ポンプ２３で基準圧力検出部２６内に負圧を導入して圧力センサ２７で基準圧力を検出した後、通路切換弁１９で負圧ポンプ２３の負圧導入経路を切り換えて、燃料タンク１１を含むエバポ系内に負圧を導入して圧力センサ２７でエバポ系内の圧力を検出し、基準圧力とエバポ系内の圧力とを比較してエバポ系のリークの有無を判定するリーク診断を行う。その際、今回のリーク診断において検出した基準圧力を過去の基準圧力（過去にエバポガス量が過多状態ではないと判定されたときのリーク診断において検出した基準圧力）と比較してエバポガス量が過多状態であるか否かを判定し、エバポガス量が過多状態であると判定された場合にはリーク診断を中止する。【選択図】図１
2014156787.tif 000002
【特許請求の範囲】
【請求項１】
燃料タンク（１１）内の燃料が蒸発して生じたエバポガスをキャニスタ（１３）内に吸着し、該キャニスタ（１３）内に吸着されているエバポガスを内燃機関の吸気系（１４）にパージするエバポガスパージシステムに適用され、前記燃料タンク（１１）及び前記キャニスタ（１３）を含むエバポ系内に負圧を導入する負圧ポンプ（２３）と、前記エバポ系内の圧力を検出する圧力検出手段（２７）と、前記内燃機関の停止中に前記負圧ポンプ（２３）により前記エバポ系内に負圧を導入した状態で前記圧力検出手段（２７）により検出した前記エバポ系内の圧力に基づいて前記エバポ系のリークの有無を判定するリーク診断を行うリーク診断手段（３２）とを備えたエバポガスパージシステムのリーク診断装置において、
前記内燃機関の停止中に前記エバポ系内のエバポガス量が過多状態であるか否かを判定するエバポガス過多判定手段（３２）を備え、
前記リーク診断手段（３２）は、前記エバポガス過多判定手段（３２）により前記エバポガス量が過多状態であると判定された場合に前記リーク診断を禁止又は中止することを特徴とするエバポガスパージシステムのリーク診断装置。
【請求項２】
前記エバポガス過多判定手段（３２）は、今回の前記リーク診断において所定時期に前記圧力検出手段（２７）により検出した圧力を、過去に前記エバポガス量が過多状態ではないと判定されたときの前記リーク診断において前記所定時期に前記圧力検出手段（２７）により検出した圧力と比較して、前記エバポガス量が過多状態であるか否かを判定することを特徴とする請求項１に記載のエバポガスパージシステムのリーク診断装置。
【請求項３】
前記エバポガス過多判定手段（３２）は、前記内燃機関の停止中の燃料温度又はこれと相関関係を有する情報（以下これらを「燃料温度情報」と総称する）に基づいて前記エバポガス量又はこれと相関関係を有する情報（以下これらを「エバポガス量情報」と総称する）を推定し、該エバポガス量情報を所定値と比較して、前記エバポガス量が過多状態であるか否かを判定することを特徴とする請求項１又は２に記載のエバポガスパージシステムのリーク診断装置。
【請求項４】
前記エバポガス過多判定手段（３２）は、前記内燃機関の運転中のエバポガスのパージ量と前記内燃機関の停止直後の燃料温度情報とに基づいて前記エバポガス量情報の初期値を算出し、前記内燃機関の停止中に所定時間毎に取得した燃料温度情報に基づいて前記エバポガス量情報を更新することを特徴とする請求項３に記載のエバポガスパージシステムのリーク診断装置。
【請求項５】
前記エバポガス過多判定手段（３２）により前記エバポガス量が過多状態であると判定されて前記リーク診断が禁止又は中止された場合に、次回の前記内燃機関の運転中にエバポガスのパージを積極的に実施するパージ制御手段（３２）を備えていることを特徴とする請求項１乃至４のいずれかに記載のエバポガスパージシステムのリーク診断装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、燃料タンク内の燃料が蒸発して生じたエバポガス（燃料蒸発ガス）を内燃機関の吸気系にパージ（放出）するエバポガスパージシステムのリーク診断を行うエバポガスパージシステムのリーク診断装置に関する発明である。
【背景技術】
【０００２】
従来より、エバポガスパージシステムにおいては、燃料タンク内で発生するエバポガスが大気中に漏れ出すことを防止するために、燃料タンク内で発生したエバポガスをキャニスタ内に吸着し、このキャニスタと内燃機関の吸気系とを連通するパージ通路に設けたパージ制御弁を開弁することで、吸気系の負圧（吸気管負圧）を利用してキャニスタ内に吸着されているエバポガスを吸気系へパージするようにしている。このエバポガスパージシステムから大気中にエバポガスが漏れる状態が放置されるのを防止するために、エバポガスのリーク（漏れ）を早期に検出する必要がある。
【０００３】
そこで、例えば、特許文献１（特開平９−２９６７５３号公報）に記載されているように、内燃機関の運転中にパージ制御弁を開弁して燃料タンク内に吸気管負圧を導入した後、パージ制御弁を閉弁した状態で燃料タンク内の圧力の変化量を測定し、その圧力変化量を判定値と比較してリーク等の異常の有無を判定する異常診断を行うようにしたものがある。この特許文献１では、内燃機関の運転中にキャニスタから吸気管に流れ込むエバポガスの濃度が濃い場合に、異常判定条件を不成立にして異常診断を実施しないようにすることで、異常診断時にキャニスタから吸気管に濃度の濃いエバポガスが流れ込むことを防止して、内燃機関が不調となることを回避するようにしている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平９−２９６７５３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、本出願人は、エバポガスパージシステムのキャニスタに、圧力センサ、負圧ポンプ、基準圧力検出部、通路切換弁等を備えたリークチェックモジュールを接続し、内燃機関の停止中に、負圧ポンプで基準圧力検出部内に負圧を導入して圧力センサで基準圧力を検出した後、通路切換弁で負圧ポンプの負圧導入経路を切り換えて、燃料タンクを含むエバポ系内に負圧を導入して圧力センサでエバポ系内の圧力を検出し、基準圧力とエバポ系内の圧力とを比較してエバポ系のリークの有無を判定するリーク診断を行うシステムを研究しているが、その研究過程で次のような新たな課題が判明した。
【０００６】
内燃機関の停止中に、エバポ系内のエバポガス量が多過ぎてキャニスタのエバポガス吸着量が飽和状態（破過状態）になっていると、負圧ポンプによる負圧導入時にキャニスタで吸着しきれないエバポガスがリークチェックモジュール内に流入する可能性がある。このような状態でリーク診断を行うと、負圧導入による圧力変化だけでなく、エバポガスによる圧力変化の影響を受けるため、リーク診断の診断精度が低下してリークの有無を誤判定する可能性がある。
【０００７】
また、上記特許文献１の技術を利用して、内燃機関の運転中にキャニスタから吸気管に流れ込むエバポガスの濃度が濃い場合に内燃機関の停止中のリーク診断を実施しないようにすることも考えられる。しかし、内燃機関の運転中のエバポガス濃度が薄い場合でも、内燃機関の停止後にエバポガスが発生し易い状況になってエバポガス量が増大して、キャニスタのエバポガス吸着量が飽和状態になることもあるため、内燃機関の運転中のエバポガス濃度が濃い場合に内燃機関の停止中のリーク診断を実施しないようしても、上述した問題を解決できない可能性がある。
【０００８】
そこで、本発明が解決しようとする課題は、内燃機関の停止中にリーク診断を行うシステムにおいて、エバポガスの影響によるリーク診断の診断精度の低下を防止することができるエバポガスパージシステムのリーク診断装置を提供することにある。
【課題を解決するための手段】
【０００９】
上記課題を解決するために、請求項１に係る発明は、燃料タンク（１１）内の燃料が蒸発して生じたエバポガスをキャニスタ（１３）内に吸着し、該キャニスタ（１３）内に吸着されているエバポガスを内燃機関の吸気系（１４）にパージするエバポガスパージシステムに適用され、燃料タンク（１１）及びキャニスタ（１３）を含むエバポ系内に負圧を導入する負圧ポンプ（２３）と、エバポ系内の圧力を検出する圧力検出手段（２７）と、内燃機関の停止中に負圧ポンプ（２３）によりエバポ系内に負圧を導入した状態で圧力検出手段（２７）により検出したエバポ系内の圧力に基づいてエバポ系のリークの有無を判定するリーク診断を行うリーク診断手段（３２）とを備えたエバポガスパージシステムのリーク診断装置において、内燃機関の停止中にエバポ系内のエバポガス量が過多状態であるか否かを判定するエバポガス過多判定手段（３２）を備え、リーク診断手段（３２）は、エバポガス過多判定手段（３２）によりエバポガス量が過多状態であると判定された場合にリーク診断を禁止又は中止するようにしたものである。
【００１０】
この構成では、内燃機関の停止中にエバポ系内のエバポガス量が過多状態（例えばエバポガス量が多過ぎてキャニスタのエバポガス吸着量が飽和状態又はそれに近い状態となるような状態）であるか否かを判定し、エバポガス量が過多状態であると判定された場合に、リーク診断を禁止又は中止することができるため、エバポガスの影響でリーク診断の診断精度が低下することを未然に防止することができる。
【図面の簡単な説明】
【００１１】
【図１】図１は本発明の実施例１におけるエバポガスパージシステムの概略構成を示す図である。
【図２】図２は通常時の状態を示すリークチェックモジュール及びその周辺部の構成図である。
【図３】図３は基準圧力検出時の状態を示すリークチェックモジュール及びその周辺部の構成図である。
【図４】図４はエバポ系内圧力検出時の状態を示すリークチェックモジュール及びその周辺部の構成図である。
【図５】図５はリーク診断の実行例を示すタイムチャートである。
【図６】図６はオリフィス流量特性とポンプ流量特性を示す図である。
【図７】図７は実施例１のリーク診断ルーチンの処理の流れを示すフローチャートである。
【図８】図８はパージ制御ルーチンの処理の流れを示すフローチャートである。
【図９】図９は駆動デューティのマップの一例を概念的に示す図である。
【図１０】図１０は実施例２のリーク診断ルーチンの処理の流れを示すフローチャートである。
【図１１】図１１はエバポガス吸着量算出ルーチンの処理の流れを示すフローチャートである。
【図１２】図１２はエバポガス過多判定ルーチンの処理の流れを示すフローチャートである。
【図１３】図１３は基本エバポガス吸着量のテーブルの一例を概念的に示す図である。
【図１４】図１４は補正係数Ｋ1 のテーブルの一例を概念的に示す図である。
【図１５】図１５は補正係数Ｋ2 のテーブルの一例を概念的に示す図である。
【図１６】図１６は実施例３のリーク診断ルーチンの処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下、本発明を実施するための形態を具体化した幾つかの実施例を説明する。
【実施例１】
【００１３】
本発明の実施例１を図１乃至図９に基づいて説明する。
まず、図１に基づいてエバポガスパージシステムの概略構成を説明する。
燃料タンク１１には、エバポ通路１２を介してキャニスタ１３が接続されている。このキャニスタ１３内には、燃料タンク１１内の燃料が蒸発して生じたエバポガス（燃料蒸発ガス）を吸着する活性炭等の吸着体１３ａが収容されている。
【００１４】
一方、キャニスタ１３とエンジンの吸気管１４（吸気系）との間には、キャニスタ１３内の吸着体１３ａに吸着されているエバポガスをエンジンの吸気管１４にパージ（放出）するためのパージ通路１５が設けられ、このパージ通路１５の途中に、パージ流量を調整するパージ制御弁１６が設けられている。このパージ制御弁１６は、例えば、常閉型の電磁弁により構成され、通電をデューティ制御することで、キャニスタ１３からエンジンの吸気管１４へのエバポガスのパージ量を制御するようになっている。
【００１５】
燃料タンク１１からパージ制御弁１６までのエバポ系のリーク診断を行うために、キャニスタ１３には、リークチェックモジュール１７が取り付けられている。このリークチェックモジュール１７は、キャニスタ１３側に接続されたキャニスタ連通路１８に、通路切換弁１９を介して大気連通路２０と負圧導入路２１とが接続されている。大気連通路２０は、大気側に直接連通するように設けられ、その先端付近にフィルタ２２が設けられている。一方、負圧導入路２１は、電動式の負圧ポンプ２３を介して大気連通路２０の途中に接続されている。負圧ポンプ２３は、モータ２８によって駆動され、負圧導入路２１から大気連通路２０の方向（大気側）へガスを排出するように配置されている。
【００１６】
通路切換弁１９は、キャニスタ連通路１８と大気連通路２０とを接続する大気開放位置（図２及び図３に示す位置）と、キャニスタ連通路１８と負圧導入路２１とを接続する負圧導入位置（図４に示す位置）との間を切換動作可能な電磁弁により構成されている。この通路切換弁１９は、例えば、通電ＯＦＦ（オフ）時には、スプリング等の付勢手段１９ａにより大気開放位置に保持され、通電をＯＮ（オン）すると、ソレノイド１９ｂの電磁駆動力により負圧導入位置に切り換えられるようになっている。
【００１７】
また、キャニスタ連通路１８と負圧導入路２１との間には、通路切換弁１９をバイパスするバイパス通路２４が接続され、このバイパス通路２４の途中に、基準オリフィス２５（基準孔）が設けられている。この基準オリフィス２５は、通路内径がバイパス通路２４の他の部位の通路内径よりも大幅に絞られて基準リーク孔径（例えば直径０．５ｍｍ）になるように形成されている。この基準オリフィス２５と、バイパス通路２４のうちの基準オリフィス２５から負圧導入路２１につながる通路２４ａとによって基準圧力検出部２６が構成され、この基準圧力検出部２６に、圧力センサ２７（圧力検出手段）が設けられている。
【００１８】
図２に示すように、通常時（リーク診断の非実行時）には、負圧ポンプ２３がＯＦＦされていると共に、通路切換弁１９が大気開放位置に切り換えられている。これにより、バイパス通路２４内（基準圧力検出部２６内）が大気連通路２０を介して大気に開放された状態となる。このとき、圧力センサ２７により基準圧力検出部２６内の圧力を検出することで大気圧を検出することができる。
【００１９】
図３に示すように、基準圧力検出時には、パージ制御弁１５が閉弁されると共に、通路切換弁１９が大気開放位置に切り換えられた状態で、負圧ポンプ２３がＯＮされる。これにより、図３中に矢印で示す方向の流れが生じ、基準オリフィス２５の存在により基準圧力検出部２６内が負圧になる。このとき、圧力センサ２７により基準圧力検出部２６内の圧力を検出することで、基準オリフィス２５の基準リーク孔径に対応した基準圧力（リファレンス圧力）を検出することができる。
【００２０】
図４に示すように、エバポ系内圧力検出時には、パージ制御弁１５が閉弁されると共に、通路切換弁１９が負圧導入位置に切り換えられる。これにより、エバポ系が密閉されて、基準圧力検出部２６の圧力センサ２７の周辺部分が負圧導入路２１やキャニスタ連通路１８等を介してエバポ系内に連通した状態となる。このとき、圧力センサ２７により基準圧力検出部２６内の圧力を検出することでエバポ系内の圧力を検出することができる。この状態で、負圧ポンプ２３がＯＮされると、図４中に矢印で示す方向の流れが生じ、エバポ系内のガスがキャニスタ１３を通って大気側に排出されて、エバポ系内に負圧が導入される。
【００２１】
図１に示すように、燃料タンク１１には、燃料温度を検出する燃料温度センサ２９が設けられ、エンジンの吸気管１４には、吸気管圧力を検出する吸気管圧力センサ３０が設けられている。更に、冷却水温を検出する冷却水温センサ３１等の各種のセンサが設けられている。
【００２２】
これら各種センサの出力は、電子制御ユニット（以下「ＥＣＵ」と表記する）３２に入力される。このＥＣＵ３２は、マイクロコンピュータを主体として構成され、内蔵されたＲＯＭ（記憶媒体）に記憶された各種のエンジン制御用のプログラムを実行することで、エンジン運転状態に応じて、燃料噴射量、点火時期、スロットル開度（吸入空気量）等を制御すると共に、パージ制御弁１６を制御してパージ流量を制御するパージ制御を実行する。
【００２３】
また、ＥＣＵ３２は、後述する図７のリーク診断ルーチンを実行することで、エンジン停止中にリークチェックモジュール１７を制御して基準圧力とエバポ系内圧力を検出し、両者を比較してエバポ系のリークの有無を診断するリーク診断を行う。
【００２４】
ここで、ＥＣＵ３２が実行するエバポ系のリーク診断について説明する。図５に示すように、エンジン運転停止から所定時間（例えば３〜５時間）が経過した時点ｔ1 で、基準圧力検出処理を開始する。この基準圧力検出処理では、パージ制御弁１５を閉弁状態に維持すると共に通路切換弁１９を大気開放位置に維持したまま負圧ポンプ２３をＯＮして、基準圧力検出部２６内に負圧を導入する。基準圧力検出部２６内への負圧導入開始から所定時間Ｔ1 が経過した時点ｔ2 （又は基準圧力検出部２６内の圧力が安定した時点）で、基準圧力検出部２６内の負圧が基準オリフィス２５に対応した基準圧力付近で安定したと判断して、圧力センサ２７により検出される基準圧力検出部２６内の圧力を基準圧力Ｐref （リファレンス圧力）として検出する。
【００２５】
基準圧力Ｐref の検出後、エバポ系内圧力検出処理を開始する。このエバポ系内圧力検出処理では、負圧ポンプ２３をＯＮ状態に維持したまま通路切換弁１９を負圧導入位置に切り換えて、負圧ポンプ２３によりエバポ系内に負圧を導入する。エバポ系内への負圧導入開始から所定時間Ｔ2 が経過した時点ｔ3 （又はエバポ系内の圧力が安定した時点）で、圧力センサ２７によりエバポ系内の圧力Ｐevapを検出する。
【００２６】
この後、エバポ系内圧力Ｐevapと基準圧力Ｐref とを比較し、図５に実線で示すように、エバポ系内圧力Ｐevapが基準圧力Ｐref 以下の場合には、リーク無し（基準リーク孔径よりも大きいリーク孔は無い）と判定する。一方、図５に破線で示すように、エバポ系内圧力Ｐevapが基準圧力Ｐref よりも高い場合には、リーク有り（基準リーク孔径よりも大きいリーク孔が有る）と判定する。
【００２７】
ところで、エンジン停止中に、エバポ系内のエバポガス量が多過ぎてキャニスタ１３のエバポガス吸着量が飽和状態（破過状態）になっていると、負圧ポンプ２３による負圧導入時にキャニスタ１３で吸着しきれないエバポガスがリークチェックモジュール１７内に流入する可能性がある。このような場合、空気よりもエバポガスの方が密度が大きいため、作動流体の密度の違いにより基準圧力Ｐref が変化する。
【００２８】
図６にオリフィス流量（基準オリフィス２５を通過する流量）の特性とポンプ流量（負圧ポンプ２３により吸引する流量）の特性を示す。これらのオリフィス流量とポンプ流量は、基準オリフィス２５又は負圧ポンプ２３の前後差圧ΔＰを用いて、それぞれ下記の（１），（２）式で表すことができる。ここで、前後差圧ΔＰは負圧Ｐ1 と大気圧Ｐ0 との差圧（ΔＰ＝Ｐ1 −Ｐ0 ）であり、負の値となる。
【００２９】
【数１】
2014156787.tif 000003
【００３０】
上記（１）式のαは流量係数、Ａは有効断面積、ρは流体密度である。また、上記（２）式のａはポンプ流量特性の傾き（＝ポンプ流量の変化量／前後差圧ΔＰの変化量）、ｂは前後差圧ΔＰ＝０時のポンプ流量である。
【００３１】
基準圧力検出時は、ポンプ流量とオリフィス流量との差分（＝ポンプ流量−オリフィス流量）が実際に負圧ポンプ２３により吸引される流量（以下「持ち去り分」という）となり、この負圧ポンプ２３による持ち去り分が多いほど基準圧力Ｐref が低くなる。
【００３２】
エバポガスがリークチェックモジュール１７内に流入して、空気よりも密度が大きい流体が基準オリフィス２５を通過する場合、つまり上記（１）式の流体密度ρが大きい場合には、オリフィス流量は空気が基準オリフィス２５を通過する場合に比べて少なくなるが、ポンプ流量は変わらない。このため、負圧ポンプ２３による持ち去り分が多くなり、基準圧力Ｐref が低くなる。このような状態でリーク診断を行うと、エバポ系が正常（リーク無し）であるにも拘らず、エバポ系内圧力Ｐevapが基準圧力Ｐref よりも高くなって、リーク有りと誤判定する可能性がある。
【００３３】
この対策として、本実施例１では、ＥＣＵ３２により後述する図７のリーク診断ルーチンを実行することで、エンジン停止中のリーク診断の際にエバポ系内のエバポガス量が過多状態（例えばエバポガス量が多過ぎてキャニスタ１３のエバポガス吸着量が飽和状態又はそれに近い状態となるような状態）であるか否かを判定し、エバポガス量が過多状態であると判定された場合に、リーク診断を中止するようにしている。
【００３４】
また、本実施例１では、今回のリーク診断において所定時期に圧力センサ２７により検出した圧力（例えば基準圧力Ｐref ）を、過去にエバポガス量が過多状態ではないと判定されたときのリーク診断において所定時期に圧力センサ２７により検出した圧力（例えば基準圧力Ｐrefold）と比較して、エバポガス量が過多状態であるか否かを判定するようにしている。
【００３５】
前述したように、エバポガス量が過多状態になっていると、エバポガスの影響でリーク診断において検出する基準圧力Ｐref が通常時（エバポガス量が過多状態ではないとき）よりも低くなるため、今回のリーク診断において検出した基準圧力Ｐref を、過去にエバポガス量が過多状態ではないと判定されたときのリーク診断において検出した基準圧力Ｐrefoldと比較することで、エバポガス量が過多状態であるか否かを精度良く判定することができる。
【００３６】
更に、本実施例１では、ＥＣＵ３２により後述する図８のパージ制御ルーチンを実行することで、エバポガス量が過多状態であると判定されてリーク診断が中止された場合に、次回のエンジン運転中にエバポガスのパージを積極的に実施する強制パージ制御を実行するようにしている。
以下、本実施例１でＥＣＵ３２が実行する図７及び図８の各ルーチンの処理内容を説明する。
【００３７】
［リーク診断ルーチン］
図７に示すリーク診断ルーチンは、例えばタイマ等によってエンジン停止から所定時間が経過した後に所定周期で起動され、特許請求の範囲でいうリーク診断手段としての役割を果たす。本ルーチンが起動されると、まず、ステップ１０１で、リーク診断実行条件が成立しているか否かを、例えば、冷却水温や吸気温等の温度条件や大気圧条件、ＩＧスイッチ（イグニッションスイッチ）のＯＦＦ前のエンジン運転状態等の各種の条件が成立しているか否かによって判定する。このステップ１０１で、リーク診断実行条件が不成立であると判定された場合には、ステップ１０２以降のリーク診断に関する処理を実行することなく、本ルーチンを終了する。
【００３８】
一方、上記ステップ１０１で、リーク診断実行条件が成立していると判定された場合には、ステップ１０２以降のリーク診断に関する処理を次のようにして実行する。まず、ステップ１０２で、基準圧力検出処理を実行する。この基準圧力検出処理では、パージ制御弁１５を閉弁状態に維持すると共に通路切換弁１９を大気開放位置に維持したまま負圧ポンプ２３をＯＮして、基準圧力検出部２６内に負圧を導入する。基準圧力検出部２６内への負圧導入開始から所定時間Ｔ1 が経過した時点（又は基準圧力検出部２６内の圧力が安定した時点）で、基準圧力検出部２６内の負圧が基準オリフィス２５に対応した基準圧力付近で安定したと判断して、圧力センサ２７により検出される基準圧力検出部２６内の圧力を基準圧力Ｐref （リファレンス圧力）として検出する。
【００３９】
この後、ステップ１０３に進み、検出した基準圧力Ｐref が製品公差範囲内であるか否かを判定する。この製品公差範囲は、リークチェックモジュール１７の構成部品（例えば負圧ポンプ２３や基準オリフィス２５等）の製品公差を考慮して予め設定された基準圧力Ｐref の正常範囲である。
【００４０】
このステップ１０３で、基準圧力Ｐref が製品公差範囲内ではない（つまり製品公差範囲外である）と判定された場合には、リークチェックモジュール１７の構成部品が性能規格外であると判断して、ステップ１１１に進み、部品異常フラグを「１」にセットして、本ルーチンを終了する。
【００４１】
一方、上記ステップ１０３で、基準圧力Ｐref が製品公差範囲内であると判定された場合には、ステップ１０４に進み、過去の基準圧力Ｐrefold(i-1) と今回の基準圧力Ｐref との差が所定の判定値βよりも大きいか否かによって、エバポ系内のエバポガス量が過多状態（例えばエバポガス量が多過ぎてキャニスタ１３のエバポガス吸着量が飽和状態又はそれに近い状態となるような状態）であるか否かを判定する。
【００４２】
ここで、過去の基準圧力Ｐrefoldは、過去にエバポガス量が過多状態ではないと判定され且つエバポ系のリーク無しと判定されたときのリーク診断において検出した基準圧力である。また、過去の基準圧力の初期値Ｐrefold(0) は、例えば、基準圧力Ｐref の特性中央値としておく。
【００４３】
このステップ１０４で、過去の基準圧力Ｐrefold(i-1) と今回の基準圧力Ｐref との差が判定値βよりも大きいと判定された場合、つまり、今回の基準圧力Ｐref が過去の基準圧力Ｐrefold(i-1) に対して判定値βだけ低い値よりも更に低いと判定された場合には、エバポガス量が過多状態であると判断して、ステップ１０５に進み、第１のエバポガス過多判定フラグＸevap1 を「１」にセットする。
【００４４】
この場合、リーク診断を続行すると、エバポ系が正常（リーク無し）であるにも拘らず、エバポ系内圧力Ｐevapが基準圧力Ｐref よりも高くなって、リーク有りと誤判定する可能性があるため、この時点でリーク診断を中止する。この後、ステップ１１３に進み、過去の基準圧力の前回値Ｐrefold(i-1) をそのまま今回値Ｐrefold(i) として採用して、本ルーチンを終了する。
Ｐrefold(i) ＝Ｐrefold(i-1)
【００４５】
一方、上記ステップ１０４で、過去の基準圧力Ｐrefold(i-1) と今回の基準圧力Ｐref との差が判定値β以下であると判定された場合には、エバポガス量が過多状態ではないと判断して、ステップ１０６に進み、第１のエバポガス過多判定フラグＸevap1 を「０」にリセットする。この後、ステップ１０７に進み、エバポ系内圧力検出処理を実行する。このエバポ系内圧力検出処理では、負圧ポンプ２３をＯＮ状態に維持したまま通路切換弁１９を負圧導入位置に切り換えて、負圧ポンプ２３によりエバポ系内に負圧を導入する。エバポ系内への負圧導入開始から所定時間Ｔ2 が経過した時点（又はエバポ系内の圧力が安定した時点）で、圧力センサ２７によりエバポ系内の圧力Ｐevapを検出する。
【００４６】
この後、ステップ１０８に進み、エバポ系内圧力Ｐevapが基準圧力Ｐref 以下であるか否かを判定する。このステップ１０８で、エバポ系内圧力Ｐevapが基準圧力Ｐref 以下であると判定された場合には、ステップ１０９に進み、リーク無しと判定して、リーク異常フラグを「０」にリセットする。この後、ステップ１１２に進み、過去の基準圧力の今回値Ｐrefold(i) を今回の基準圧力Ｐref で更新して、本ルーチンを終了する。
Ｐrefold(i) ＝Ｐref
【００４７】
これに対して、上記ステップ１０８で、エバポ系内圧力Ｐevapが基準圧力Ｐref よりも高いと判定された場合には、ステップ１１０に進み、リーク有りと判定して、リーク異常フラグを「１」にセットする。この後、ステップ１１３に進み、過去の基準圧力の前回値Ｐrefold(i-1) をそのまま今回値Ｐrefold(i) として採用して、本ルーチンを終了する。
Ｐrefold(i) ＝Ｐrefold(i-1)
【００４８】
上記ステップ１０４〜１０６の処理等が特許請求の範囲でいうエバポガス過多判定手段としての役割を果たす。尚、上記ステップ１０５，１０６で設定されるエバポガス過多判定フラグＸevap1 、上記ステップ１０９，１１０で設定されるリーク異常フラグ、上記ステップ１１１で設定される部品異常フラグ、上記ステップ１１２，１１３で設定される過去の基準圧力Ｐrefold(i) は、それぞれＥＣＵ３２のバックアップＲＡＭ（図示せず）等の書き換え可能な不揮発性メモリ（ＥＣＵ３２の電源オフ中でも記憶データを保持する書き換え可能なメモリ）に記憶され、次回のエンジン始動後に参照できるようにする。
【００４９】
［パージ制御ルーチン］
図８に示すパージ制御ルーチンは、エンジン運転中に所定周期で実行され、特許請求の範囲でいうパージ制御手段としての役割を果たす。本ルーチンが起動されると、まず、ステップ２０１で、パージ実行条件が成立しているか否かを、例えば、冷却水温やバッテリ電圧、空燃比フィードバック制御状態等に基づいて判定する。このステップ２０１で、パージ実行条件が不成立であると判定された場合には、ステップ２０２以降のパージ制御に関する処理を実行することなく、本ルーチンを終了する。
【００５０】
一方、上記ステップ２０１で、パージ実行条件が成立していると判定された場合には、ステップ２０２以降のパージ制御に関する処理を次のようにして実行する。まず、ステップ２０２で、前記図７のルーチンで設定した第１のエバポガス過多判定フラグＸevap1 が「１」にセットされている（Ｘevap1 ＝１）か否かを判定する。
【００５１】
このステップ２０２で、第１のエバポガス過多判定フラグＸevap1 が「１」ではない（Ｘevap1 ＝０）と判定された場合には、ステップ２０３に進み、通常パージ制御を実行する。この通常パージ制御では、例えば、目標パージ率を実現できるように吸入空気量に応じた目標パージ流量を算出する。この後、図９に示す通常パージ制御用の駆動デューティのマップを参照して、目標パージ流量と吸気管負圧とに応じた通常パージ制御用の駆動デューティを算出する。この通常パージ制御用の駆動デューティでパージ制御弁１６の通電をデューティ制御する。
【００５２】
一方、上記ステップ２０２で、第１のエバポガス過多判定フラグＸevap1 が「１」である（Ｘevap1 ＝１）と判定された場合、つまり、前回のエンジン停止中にエバポガス量が過多状態であると判定されてリーク診断が禁止又は中止された場合には、ステップ２０４に進み、強制パージ制御を実行する。この強制パージ制御では、例えば、通常パージ制御と同じ方法で目標パージ流量を算出した後、強制パージ制御用の駆動デューティのマップ（図示せず）を参照して、強制パージ制御用の駆動デューティを算出する。強制パージ制御用の駆動デューティのマップは、強制パージ制御用の駆動デューティが通常パージ制御用の駆動デューティよりも大きい値（例えば２倍の値）になるように設定されている。この強制パージ制御用の駆動デューティでパージ制御弁１６の通電をデューティ制御する。これにより、前回のエンジン停止中にエバポガス量が過多状態であると判定されてリーク診断が禁止又は中止された場合の次回のエンジン運転中にエバポガスのパージを積極的に実施して、エバポガスのパージ量を通常パージ制御時よりも多くする。
【００５３】
この後、ステップ２０５に進み、今回のエンジン運転中のパージ積算量（エバポガスのパージ量を積算した値）が所定値γ以上であるか否かを判定し、パージ積算量が所定値γよりも小さいと判定された場合には、まだ十分な量のパージが行われていない（キャニスタ１３のエバポガス吸着量が十分に少なくなっていない）と判断して、第１のエバポガス過多判定フラグＸevap1 を「１」にしたまま本ルーチンを終了する。これにより、強制パージ制御が継続して実行される。
【００５４】
その後、上記ステップ２０５で、パージ積算量が所定値γ以上であると判定された場合には、十分な量のパージが行われた（キャニスタ１３のエバポガス吸着量が十分に少なくなった）と判断して、ステップ２０６に進み、第１のエバポガス過多判定フラグＸevap1 を「０」にリセットして、本ルーチンを終了する。これにより、強制パージ制御が終了する。
【００５５】
以上説明した本実施例１では、エンジン停止中のリーク診断の際にエバポ系内のエバポガス量が過多状態（例えばエバポガス量が多過ぎてキャニスタ１３のエバポガス吸着量が飽和状態又はそれに近い状態となるような状態）であるか否かを判定し、エバポガス量が過多状態であると判定された場合に、リーク診断を中止するようにしたので、エバポガスの影響でリーク診断の診断精度が低下することを未然に防止することができる。
【００５６】
また、本実施例１では、エバポガス量が過多状態になっていると、エバポガスの影響でリーク診断において検出する基準圧力Ｐref が通常時（エバポガス量が過多状態ではないとき）よりも低くなることに着目して、今回のリーク診断において検出した基準圧力Ｐref を、過去にエバポガス量が過多状態ではないと判定されたときのリーク診断において検出した基準圧力Ｐrefoldと比較して、エバポガス量が過多状態であるか否かを判定するようにしたので、リーク診断の際に検出する基準圧力Ｐref を利用してエバポガス量が過多状態であるか否かを精度良く判定することができる。
【００５７】
更に、本実施例１では、エンジン停止中にエバポガス量が過多状態であると判定されてリーク診断が中止された場合に、次回のエンジン運転中にエバポガスのパージを積極的に実施する強制パージ制御を実行するようにしたので、次回のエンジン運転中にエバポ系内のエバポガス量を積極的に少なくして、次回のエンジン運転後の停止中にエバポガス量が過多状態であると判定され難くすることができる。これにより、次回のエンジン停止中のリーク診断が禁止又は中止される可能性を低くして、リーク診断の実行頻度を確保することができる。
【００５８】
尚、上記実施例１では、強制パージ制御の際に、パージ制御弁１６の駆動デューティを大きくしてパージ量を多くするようにしたが、これに限定されず、例えば、パージの実行頻度を多くしてパージ量を多くするようにしても良い。
【実施例２】
【００５９】
次に、図１０乃至図１５を用いて本発明の実施例２を説明する。但し、前記実施例１と実質的に同一部分については説明を省略又は簡略化し、主として前記実施例１と異なる部分について説明する。
【００６０】
本実施例２では、ＥＣＵ３２により後述する図１０乃至図１２のリーク診断用の各ルーチンを実行することで、エンジン停止中のリーク診断を開始する前にエンジン停止中の燃料温度に基づいてキャニスタ１３のエバポガス吸着量（エバポガス量情報）を推定し、このエバポガス吸着量を所定値と比較して、エバポガス量が過多状態であるか否かを判定する。そして、エバポガス量が過多状態であると判定された場合に、リーク診断を禁止するようにしている。
【００６１】
エンジン停止中の燃料温度によって燃料タンク１１内のエバポガスの発生状況が変化してエバポガス量が変化し、それに伴ってキャニスタ１３のエバポガス吸着量が変化するため、エンジン停止中の燃料温度を用いれば、キャニスタ１３のエバポガス吸着量を精度良く推定することができ、このエバポガス吸着量を所定値と比較することで、エバポガス量が過多状態であるか否かを精度良く判定することができる。
以下、本実施例２でＥＣＵ３２が実行する図１０及び図１２の各ルーチンの処理内容を説明する。
【００６２】
［リーク診断ルーチン］
図１０に示すリーク診断ルーチンでは、ステップ３０１で、リーク診断実行条件が成立しているか否かを判定し、リーク診断実行条件が成立していると判定された場合には、ステップ３０２に進み、第２のエバポガス過多判定フラグＸevap2 が「１」にセットされているか否かを判定する。この第２のエバポガス過多判定フラグＸevap2 は、後述する図１２のエバポガス過多判定ルーチンで設定される。
【００６３】
このステップ３０２で、第２のエバポガス過多判定フラグＸevap2 が「１」である（Ｘevap2 ＝１）と判定された場合には、エバポガス量が過多状態であると判断して、ステップ３０３以降のリーク診断に関する処理を実行することなく、本ルーチンを終了する。これにより、リーク診断を禁止する。
【００６４】
一方、上記ステップ３０２で、第２のエバポガス過多判定フラグＸevap2 が「１」ではない（Ｘevap2 ＝０）と判定された場合には、ステップ３０３以降のリーク診断に関する処理を次のようにして実行する。まず、ステップ３０３で、基準圧力検出処理を実行して、基準圧力Ｐref を検出する。
【００６５】
この後、ステップ３０４に進み、検出した基準圧力Ｐref が製品公差範囲内であるか否かを判定し、基準圧力Ｐref が製品公差範囲内ではない（つまり製品公差範囲外である）と判定された場合には、ステップ３０９に進み、部品異常フラグを「１」にセットして、本ルーチンを終了する。
【００６６】
一方、上記ステップ３０４で、基準圧力Ｐref が製品公差範囲内であると判定された場合には、ステップ３０５に進み、エバポ系内圧力検出処理を実行して、エバポ系内圧力Ｐevapを検出する。
【００６７】
この後、ステップ３０６に進み、エバポ系内圧力Ｐevapが基準圧力Ｐref 以下であるか否かを判定する。このステップ３０６で、エバポ系内圧力Ｐevapが基準圧力Ｐref 以下であると判定された場合には、ステップ３０７に進み、リーク無しと判定して、リーク異常フラグを「０」にリセットする。
【００６８】
これに対して、上記ステップ３０６で、エバポ系内圧力Ｐevapが基準圧力Ｐref よりも高いと判定された場合には、ステップ３０８に進み、リーク有りと判定して、リーク異常フラグを「１」にセットする。
【００６９】
［エバポガス吸着量算出ルーチン］
図１１に示すエバポガス吸着量算出ルーチンは、エンジン停止時（エンジン停止直後）に実行される。本ルーチンが起動されると、まず、ステップ４０１で、エンジン停止時（エンジン停止直後）に燃料温度センサ２９で検出した燃料温度をエンジン停止時の燃料温度として読み込む。この後、ステップ４０２に進み、エンジン運転中（エンジン運転開始からエンジン停止までの期間）のパージ積算量（エバポガスのパージ量を積算した値）を読み込む。
【００７０】
この後、ステップ４０３に進み、エンジン停止時の燃料温度とエンジン運転中のパージ積算量とに基づいて、エンジン停止時のキャニスタ１３のエバポガス吸着量ｅｖａｐｉｎ（エンジン停止中のエバポガス吸着量の初期値）を次のようにして算出する。
【００７１】
まず、図１３に示す基本エバポガス吸着量のテーブルを参照して、エンジン停止時の燃料温度に応じた基本エバポガス吸着量を算出する。一般に、燃料温度が高いほど燃料タンク１１内のエバポガスの発生量が多くなり、それに伴ってキャニスタ１３のエバポガス吸着量が多くなる。このような特性を考慮して、図１３の基本エバポガス吸着量のテーブルは、エンジン停止時の燃料温度が高いほど基本エバポガス吸着量が多くなるように設定されている。
【００７２】
また、図１４に示す補正係数Ｋ1 のテーブルを参照して、エンジン運転中のパージ積算量に応じた補正係数Ｋ1 を算出する。一般に、エンジン運転中のパージ量が少ない場合は、キャニスタ１３からのエバポガスの脱離量が少ないため、キャニスタ１３のエバポガス吸着量が多くなると考えられる。反対に、エンジン運転中のパージ量が多い場合は、キャニスタ１３からのエバポガスの脱離量が多いため、キャニスタ１３のエバポガス吸着量が少なくなると考えられる。このような特性を考慮して、図１４の補正係数Ｋ1 のテーブルは、エンジン運転中のパージ積算量が多いほど補正係数Ｋ1 が小さくなるように設定されている。
【００７３】
このようにして、基本エバポガス吸着量と補正係数Ｋ1 を算出した後、基本エバポガス吸着量に補正係数Ｋ1 を乗算して、エンジン停止時のキャニスタ１３のエバポガス吸着量ｅｖａｐｉｎを求める。
エバポガス吸着量ｅｖａｐｉｎ＝基本エバポガス吸着量×補正係数Ｋ1
【００７４】
［エバポガス過多判定ルーチン］
図１２に示すエバポガス過多判定ルーチンは、例えばタイマ等によってエンジン停止中（エンジン停止からリーク診断開始までの期間）に所定時間毎（例えば３０分毎）に起動される。本ルーチンが起動されると、まず、ステップ５０１で、本ルーチンの起動時（起動直後）に燃料温度センサ２９で検出した燃料温度をエンジン停止中の燃料温度として読み込む。
【００７５】
この後、ステップ５０２に進み、図１５に示す補正係数Ｋ2 のテーブルを参照して、エンジン停止中の燃料温度に応じた補正係数Ｋ2 を算出する。一般に、燃料温度が高いほど燃料タンク１１内のエバポガスの発生量が多くなり、それに伴ってキャニスタ１３のエバポガス吸着量が多くなる。このような特性を考慮して、図１５の補正係数Ｋ2 のテーブルは、エンジン停止中の燃料温度が高いほど補正係数Ｋ2 が大きくなるように設定されている。
【００７６】
この後、ステップ５０３に進み、前回のエバポガス吸着量ｅｖａｐｉｎ(i-1) に補正係数Ｋ2 を乗算して、今回のエバポガス吸着量ｅｖａｐｉｎ(i) を求める。
ｅｖａｐｉｎ(i) ＝ｅｖａｐｉｎ(i-1) ×補正係数Ｋ2
【００７７】
これにより、エンジン停止中に所定時間毎に取得した燃料温度に基づいてエバポガス吸着量ｅｖａｐｉｎを更新する。但し、燃料温度が低下していく場合は、補正係数Ｋ2 を乗算して求めたエバポガス吸着量ｅｖａｐｉｎも減少することがあるが、実際のエバポガス吸着量が減少していくことはないので、次のステップ５０４〜５０６では、エバポガス吸着量ｅｖａｐｉｎの最大値を算出する。
【００７８】
まず、ステップ５０４で、今回のエバポガス吸着量ｅｖａｐｉｎが前回のエバポガス吸着量の最大値ｅｖａｐｉｎ.max(i-1) よりも大きいか否かを判定する。
このステップ５０４で、今回のエバポガス吸着量ｅｖａｐｉｎが前回のエバポガス吸着量の最大値ｅｖａｐｉｎ.max(i-1) よりも大きいと判定された場合には、ステップ５０５に進み、今回のエバポガス吸着量の最大値ｅｖａｐｉｎ.max(i) を今回のエバポガス吸着量ｅｖａｐｉｎで更新する。
ｅｖａｐｉｎ.max(i) ＝ｅｖａｐｉｎ
【００７９】
一方、上記ステップ５０４で、今回のエバポガス吸着量ｅｖａｐｉｎが前回のエバポガス吸着量の最大値ｅｖａｐｉｎ.max(i-1) 以下であると判定された場合には、ステップ５０６に進み、前回のエバポガス吸着量の最大値ｅｖａｐｉｎ.max(i-1) をそのまま今回のエバポガス吸着量の最大値ｅｖａｐｉｎ.max(i) として採用する。
ｅｖａｐｉｎ.max(i) ＝ｅｖａｐｉｎ.max(i-1)
【００８０】
尚、エバポガス吸着量の初期値ｅｖａｐｉｎ(0) とエバポガス吸着量の最大値の初期値ｅｖａｐｉｎ.max(0) は、前記図１１のルーチンで求めたエンジン停止時のエバポガス吸着量ｅｖａｐｉｎとする。
【００８１】
この後、ステップ５０７に進み、エバポガス吸着量の最大値ｅｖａｐｉｎ.maxが所定の判定値Ｘよりも大きいか否かによって、エバポ系内のエバポガス量が過多状態（例えばエバポガス量が多過ぎてキャニスタ１３のエバポガス吸着量が飽和状態又はそれに近い状態となるような状態）であるか否かを判定する。
【００８２】
このステップ５０７で、エバポガス吸着量の最大値ｅｖａｐｉｎ.maxが判定値Ｘよりも大きいと判定された場合には、エバポガス量が過多状態であると判断して、ステップ５０８に進み、第２のエバポガス過多判定フラグＸevap2 を「１」にセットする。
【００８３】
一方、上記ステップ５０７で、エバポガス吸着量の最大値ｅｖａｐｉｎ.maxが判定値Ｘ以下であると判定された場合には、エバポガス量が過多状態ではないと判断して、ステップ５０９に進み、第２のエバポガス過多判定フラグＸevap2 を「０」にリセットする。
【００８４】
尚、上記ステップ５０８，５０９で設定されるエバポガス過多判定フラグＸevap2 は、ＥＣＵ３２のバックアップＲＡＭ等の書き換え可能な不揮発性メモリに記憶され、次回のエンジン始動後に参照できるようにする。
【００８５】
また、図１０及び図１１のルーチンでは、燃料温度センサ２９で燃料温度を検出するようにしたが、冷却水温や吸気温等の温度情報に基づいて燃料温度を推定するようにしても良い。
【００８６】
また、本実施例２においても、エバポガス量が過多状態であると判定されてリーク診断が禁止された場合（第２のエバポガス過多判定フラグＸevap2 ＝１の場合）に、次回のエンジン運転中にエバポガスのパージを積極的に実施する強制パージ制御を実行するようにしても良い。
【００８７】
以上説明した本実施例２では、エンジン停止中の燃料温度によって燃料タンク１１内のエバポガスの発生状況が変化してエバポガス量が変化し、それに伴ってキャニスタ１３のエバポガス吸着量が変化することに着目して、エンジン停止中の燃料温度に基づいてキャニスタ１３のエバポガス吸着量を推定するようにしたので、エバポガス吸着量を精度良く推定することができる。更に、このエバポガス吸着量を所定の判定値と比較して、エバポガス量が過多状態であるか否かを判定するようにしたので、エバポガス量が過多状態であるか否かを精度良く判定することができる。
【００８８】
また、本実施例２では、エンジン停止時（エンジン停止直後）の燃料温度とエンジン運転中のパージ積算量とに基づいてエンジン停止時のエバポガス吸着量を算出するようにしたので、エンジン停止時のエバポガス吸着量（初期値）を精度良く算出することができる。更に、エンジン停止中に所定時間毎に取得した燃料温度に基づいてエバポガス吸着量を更新するようにしたので、エンジン停止中にリーク診断を実行する時期におけるエバポガス吸着量を精度良く推定することができる。
【００８９】
尚、上記実施例２では、燃料温度に基づいてエバポガス吸着量を推定するようにしたが、これに限定されず、燃料温度と相関関係を有する情報（例えば冷却水温や油温や吸気温等）に基づいてエバポガス吸着量を推定するようにしても良い。また、燃料温度情報（燃料温度又はこれと相関関係を有する情報）に基づいてエバポガス量を推定し、このエバポガス量をを所定値と比較して、エバポガス量が過多状態であるか否かを判定するようにしても良い。
【実施例３】
【００９０】
次に、図１６を用いて本発明の実施例３を説明する。但し、前記実施例１，２と実質的に同一部分については説明を省略又は簡略化し、主として前記実施例１，２と異なる部分について説明する。
【００９１】
本実施例３は、前記実施例１と前記実施例２を組み合わせた実施例であり、ＥＣＵ３２により後述する図１６のリーク診断ルーチンを実行することで、前記実施例１で説明した第１のエバポガス過多判定フラグＸevap1 と前記実施例２で説明した第２のエバポガス過多判定フラグＸevap2 のうちのいずれか一方が「１」の場合に、リーク診断を中止又は禁止するようにしている。
【００９２】
図１６のリーク診断ルーチンでは、まず、ステップ６０１で、リーク診断実行条件が成立しているか否かを判定し、リーク診断実行条件が成立していると判定された場合には、ステップ６０２に進み、第２のエバポガス過多判定フラグＸevap2 が「１」にセットされているか否かを判定する。
【００９３】
このステップ６０２で、第２のエバポガス過多判定フラグＸevap2 が「１」である（Ｘevap2 ＝１）と判定された場合には、エバポガス量が過多状態であると判断して、ステップ６０３以降のリーク診断に関する処理を実行することなく、本ルーチンを終了する。これにより、リーク診断を禁止する。
【００９４】
一方、上記ステップ６０２で、第２のエバポガス過多判定フラグＸevap2 が「１」ではない（Ｘevap2 ＝０）と判定された場合には、ステップ６０３以降のリーク診断に関する処理を次のようにして実行する。まず、ステップ６０３で、基準圧力検出処理を実行して、基準圧力Ｐref を検出する。
【００９５】
この後、ステップ６０４に進み、検出した基準圧力Ｐref が製品公差範囲内であるか否かを判定し、基準圧力Ｐref が製品公差範囲内ではない（つまり製品公差範囲外である）と判定された場合には、ステップ６１２に進み、部品異常フラグを「１」にセットして、本ルーチンを終了する。
【００９６】
一方、上記ステップ６０４で、基準圧力Ｐref が製品公差範囲内であると判定された場合には、ステップ６０５に進み、過去の基準圧力Ｐrefold(i-1) と今回の基準圧力Ｐref との差が判定値βよりも大きいか否かによって、エバポ系内のエバポガス量が過多状態であるか否かを判定する。
【００９７】
このステップ６０５で、過去の基準圧力Ｐrefold(i-1) と今回の基準圧力Ｐref との差が判定値βよりも大きいと判定された場合、エバポガス量が過多状態であると判断して、ステップ６０６に進み、第１のエバポガス過多判定フラグＸevap1 を「１」にセットして、リーク診断を中止する。この後、ステップ６１４に進み、過去の基準圧力の前回値Ｐrefold(i-1) をそのまま今回値Ｐrefold(i) として採用する。
【００９８】
一方、上記ステップ６０５で、過去の基準圧力Ｐrefold(i-1) と今回の基準圧力Ｐref との差が判定値β以下であると判定された場合には、エバポガス量が過多状態ではないと判断して、ステップ６０７に進み、第１のエバポガス過多判定フラグＸevap1 を「０」にリセットする。この後、ステップ６０８に進み、エバポ系内圧力検出処理を実行して、エバポ系内の圧力Ｐevapを検出する。
【００９９】
この後、ステップ６０９に進み、エバポ系内圧力Ｐevapが基準圧力Ｐref 以下であるか否かを判定する。このステップ６０９で、エバポ系内圧力Ｐevapが基準圧力Ｐref 以下であると判定された場合には、ステップ６１０に進み、リーク無しと判定して、リーク異常フラグを「０」にリセットする。この後、ステップ６１３に進み、過去の基準圧力の今回値Ｐrefold(i) を今回の基準圧力Ｐref で更新する。
【０１００】
これに対して、上記ステップ６０９で、エバポ系内圧力Ｐevapが基準圧力Ｐref よりも高いと判定された場合には、ステップ６１１に進み、リーク有りと判定して、リーク異常フラグを「１」にセットする。この後、ステップ６１４に進み、過去の基準圧力の前回値Ｐrefold(i-1) をそのまま今回値Ｐrefold(i) として採用する。
【０１０１】
本実施例３においても、エバポガス量が過多状態であると判定されてリーク診断が中止又は禁止された場合（第１のエバポガス過多判定フラグＸevap1 ＝１又は第２のエバポガス過多判定フラグＸevap2 ＝１の場合）に、次回のエンジン運転中にエバポガスのパージを積極的に実施する強制パージ制御を実行するようにしても良い。
【０１０２】
以上説明した本実施例３では、第１のエバポガス過多判定フラグＸevap1 と第２のエバポガス過多判定フラグＸevap2 のうちのいずれか一方が「１」の場合に、リーク診断を中止又は禁止するようにしたので、エバポガスの影響でリーク診断の診断精度が低下することをより確実に防止することができる。
【０１０３】
尚、本発明は、エバポガスパージシステムやリークチェックモジュール等の構成を適宜変更したり、リーク診断の方法を適宜変更しても良く、要は、エンジン停止中に負圧ポンプでエバポ系内に負圧を導入してリーク診断を行うシステムであれば、本発明を適用して実施できる。
【符号の説明】
【０１０４】
１１…燃料タンク、１３…キャニスタ、１４…吸気管（吸気系）、２３…負圧ポンプ、２７…圧力センサ（圧力検出手段）、３２…ＥＣＵ（リーク診断手段，エバポガス過多判定手段，パージ制御手段）
【図１】
2014156787.tif 000004
【図２】
2014156787.tif 000005
【図３】
2014156787.tif 000006
【図４】
2014156787.tif 000007
【図５】
2014156787.tif 000008
【図６】
2014156787.tif 000009
【図７】
2014156787.tif 000010
【図８】
2014156787.tif 000011
【図９】
2014156787.tif 000012
【図１０】
2014156787.tif 000013
【図１１】
2014156787.tif 000014
【図１２】
2014156787.tif 000015
【図１３】
2014156787.tif 000016
【図１４】
2014156787.tif 000017
【図１５】
2014156787.tif 000018
【図１６】
2014156787.tif 000019