(57)【特許請求の範囲】
【請求項１】
燃料タンク内で発生した蒸発燃料を、貯蔵部に一時的に貯蔵し、内燃機関の吸気系に供給する蒸発燃料処理系のリークを含む故障の有無を判定する蒸発燃料処理系の故障判定装置であって、
前記蒸発燃料処理系内の圧力を検出する圧力検出手段と、
前記内燃機関の停止を検出する機関停止検出手段と、
当該機関停止検出手段により前記内燃機関の停止が検出された後に前記圧力検出手段により検出された前記蒸発燃料処理系内の圧力に応じて、前記蒸発燃料処理系のリークを含む故障の有無を判定する故障判定手段と、
前記内燃機関から前記燃料タンクに与えられた熱量を表す熱量パラメータを検出する熱量パラメータ検出手段と、
前記機関停止検出手段により前記内燃機関の停止が検出された場合において、当該内燃機関の当該停止前の運転期間中に前記熱量パラメータ検出手段により検出された熱量パラメータが所定の判定値未満のときに、前記故障判定手段による判定を禁止する故障判定禁止手段と、
を備え、
前記熱量パラメータは、前記内燃機関の燃料消費量を含み、
前記故障判定禁止手段は、前記内燃機関の停止が検出された場合において、当該内燃機関の当該停止前の運転期間中に検出された前記内燃機関の前記燃料消費量が前記所定の判定値未満のときに、前記故障判定手段による判定を禁止し、
当該所定の判定値は、外気温が低いほどまたは前記燃料タンク内の燃料レベルが高いほど、より大きい値に設定されていることを特徴とする蒸発燃料処理系の故障判定装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、燃料タンク内に発生した蒸発燃料を、キャニスタに一時的に吸着し、吸気系に適宜供給する内燃機関の蒸発燃料処理系におけるリークを含む故障の有無を判定する蒸発燃料処理系の故障判定装置に関する。
【０００２】
【従来の技術】
従来、この種の故障判定装置として、例えば特開平１１−３３６６２６号公報に記載されたものが知られている。この故障判定装置は、自動車に搭載された内燃機関の蒸発燃料処理系に適用されたものである。この故障判定装置では、内燃機関の停止後、蒸発燃料処理系の故障の有無が判定される。具体的には、内燃機関の停止後、蒸発燃料処理系内が負圧状態で閉鎖されるとともに、その状態での蒸発燃料処理系内の圧力と大気圧との差圧の時間的な推移に基づき、この差圧の減少速度が大きいときに、蒸発燃料処理系にリークがあると判定される。
【０００３】
【発明が解決しようとする課題】
上記従来の故障判定装置では、蒸発燃料処理系内の圧力と大気圧との差圧の時間的な推移のみに基づいて、リークの有無が判定されるに過ぎない。これに対して、内燃機関の停止直後における燃料タンク内の燃料温度は、内燃機関の停止前の運転条件によって異なり、そのため、上記差圧の時間的な推移は、たとえリークがない場合でも一定ではなく、具体的には、停止直後の燃料温度が高いほど、上記差圧の減少速度が大きくなり、燃料温度が低いほど、上記差圧の減少速度が小さくなる。したがって、この従来の故障判定装置によれば、内燃機関の停止直後の燃料温度がリーク判定に反映されないため、例えば燃料温度が低い場合には、リークがあるときでも差圧の減少速度が小さくなることで、リークがないと誤判定されるおそれがある。
【０００４】
本発明は、上記課題を解決するためになされたもので、内燃機関の停止後、蒸発燃料処理系のリークを含む故障の判定を行う場合において、誤判定を回避でき、判定精度を向上させることができる蒸発燃料処理系の故障判定装置を提供することを目的とする。
【０００５】
【課題を解決するための手段】
この目的を達成するために、請求項１に係る発明は、燃料タンク２１内で発生した蒸発燃料を、貯蔵部（キャニスタ２４）に一時的に貯蔵し、内燃機関３の吸気系（吸気管５）に供給する蒸発燃料処理系２０のリークを含む故障の有無を判定する蒸発燃料処理系２０の故障判定装置１であって、蒸発燃料処理系２０内の圧力（タンク内圧ＰＴＡＮＫ）を検出する圧力検出手段（圧力センサ１３）と、内燃機関３の停止を検出する機関停止検出手段（ＥＣＵ２、クランク角センサ１１）と、機関停止検出手段により内燃機関３の停止が検出された後に圧力検出手段により検出された蒸発燃料処理系２０内の圧力に応じて、蒸発燃料処理系２０のリークを含む故障の有無を判定する故障判定手段（ＥＣＵ２、ステップ３１〜５７）と、内燃機関３から燃料タンク２１に与えられた熱量を表す熱量パラメータ（燃料消費量ＵＳＥＤＧＡＳ）を検出する熱量パラメータ検出手段（ＥＣＵ２）と、機関停止検出手段により内燃機関３の停止が検出された場合において、内燃機関３の停止前の運転期間中に熱量パラメータ検出手段により検出された熱量パラメータが所定の判定値ＧＡＳＪＤＥＯＸ未満のとき（ステップ１４の判別結果がＮＯのとき）に、故障判定手段による判定を禁止する故障判定禁止手段（ＥＣＵ２、ステップ１９，３２）と、を備え、熱量パラメータは、内燃機関３の燃料消費量ＵＳＥＤＧＡＳを含み、故障判定禁止手段は、内燃機関３の停止が検出された場合において、内燃機関３の停止前の運転期間中に検出された内燃機関３の燃料消費量ＵＳＥＤＧＡＳが所定の判定値ＧＡＳＪＤＥＯＸ未満のとき（ステップ１４の判別結果がＮＯのとき）に、故障判定手段による判定を禁止し（ステップ１９，３２）、所定の判定値ＧＡＳＪＤＥＯＸは、外気温ＴＡが低いほどまたは燃料タンク内の燃料レベルＦＬＥＶＥＬが高いほど、より大きい値に設定されていることを特徴とする。
【０００６】
この蒸発燃料処理系の故障判定装置によれば、内燃機関の停止が検出された後に圧力検出手段により検出された蒸発燃料処理系内の圧力に応じて、蒸発燃料処理系のリークを含む故障の有無が判定されるとともに、内燃機関の停止が検出された場合において内燃機関の停止前の運転期間中に熱量パラメータ検出手段により検出された熱量パラメータが所定の判定値未満のときに、故障判定手段による判定が禁止される。すなわち、内燃機関の停止時までに内燃機関から燃料タンクに与えられた熱量が小さく、燃料タンク内の燃料温度が十分に上昇していない可能性があるときには、蒸発燃料処理系の故障判定が禁止され、それにより、誤判定を回避でき、判定精度を向上させることができる。これに加えて、内燃機関の停止後に不要な故障判定が行われるのを確実に回避することができる（なお、本明細書では、「熱量パラメータの検出」、「圧力の検出」および「内燃機関の停止の検出」は、熱量パラメータ、圧力および内燃機関の停止をセンサなどで直接検出することに限らず、演算により推定することを含む）。また、熱量パラメータは、内燃機関の燃料消費量を含み、内燃機関の停止が検出された場合において、内燃機関の停止前の運転期間中に検出された内燃機関の燃料消費量が所定の判定値未満のときに、故障判定手段による判定が禁止される。この燃料消費量は、内燃機関が運転期間中に実際に発生した熱量を適切に反映するものである。したがって、この蒸発燃料処理系の故障判定装置によれば、燃料消費量を熱量パラメータとして用いることにより、燃料タンク内の燃料温度の実際の上昇度合に応じて、故障判定を適切に禁止できる。さらに、所定の判定値は、外気温が低いほどまたは燃料タンク内の燃料レベルが高いほど、より大きい値に設定されているので、故障判定をより適切に禁止できる。
【００１１】
【発明の実施の形態】
以下、図面を参照しながら、本発明の一実施形態に係る蒸発燃料処理系の故障判定装置について説明する。図１は、本実施形態の故障判定装置、およびこれを適用した内燃機関の蒸発燃料処理系の概略構成を示している。この故障判定装置１は、内燃機関（以下「エンジン」という）３の蒸発燃料処理系２０における故障の有無、より具体的にはリークの有無を判定するものであり、ＥＣＵ２を備えている。これらの蒸発燃料処理系２０およびＥＣＵ２の詳細については後述する。
【００１２】
このエンジン３は、ガソリンエンジンであり、図示しない車両に搭載されている。エンジン３の吸気管５（吸気系）には、スロットルバルブ６が設けられ、その下流側には、吸気温センサ１０が取り付けられている。この吸気温センサ１０は、吸気管５内の吸気温ＴＡを検出し、その検出信号をＥＣＵ２に出力する。
【００１３】
さらに、吸気管５の吸気温センサ１０よりも下流側の部分には、インジェクタ７が、図示しない吸気ポートに臨むように取り付けられている。このインジェクタ７の開弁時間である燃料噴射時間ＴＯＵＴは、ＥＣＵ２によって制御される。また、インジェクタ７は、燃料供給管８を介して燃料タンク２１に接続されている。この燃料供給管８の途中には、インジェクタ７に燃料を圧送する燃料ポンプ９が設けられている。
【００１４】
また、エンジン３には、マグネットロータおよびＭＲＥピックアップで構成されたクランク角センサ１１が設けられている。このクランク角センサ１１（機関停止検出手段）は、図示しないクランクシャフトの回転に伴い、ともにパルス信号であるＣＲＫ信号およびＴＤＣ信号をＥＣＵ２に出力する。ＣＲＫ信号は、クランクシャフトの回転角度位置を示す信号であり、所定のクランク角（例えば、３０゜）ごとに１パルスが出力される。ＥＣＵ２は、このＣＲＫ信号に基づき、エンジン３のエンジン回転数ＮＥを算出する。また、ＴＤＣ信号は、各気筒におけるピストン（いずれも図示せず）の吸気行程開始時の上死点位置付近の所定タイミングで、１パルスが出力される。
【００１５】
さらに、エンジン３の本体には、水温センサ１２が取り付けられており、水温センサ１２は、そのシリンダブロック内を循環する冷却水の温度であるエンジン水温ＴＷを検出し、その検出信号をＥＣＵ２に出力する。
【００１６】
一方、前記蒸発燃料処理系２０は、燃料タンク２１内で発生した蒸発燃料を、キャニスタ２４に一時的に貯留し、吸気管５内に適宜放出するものであり、チャージ通路２２、バイパス通路２３、キャニスタ２４およびパージ通路２５などで構成されている。
【００１７】
キャニスタ２４（貯蔵部）は、チャージ通路２２を介して、燃料タンク２１に接続されており、燃料タンク２１内で発生した蒸発燃料は、チャージ通路２２を介してキャニスタ２４に送られる。チャージ通路２２の燃料タンク２１に近い部分には、圧力センサ１３が配置されている。この圧力センサ１３（圧力検出手段）は、例えば圧電素子で構成され、チャージ通路２２内の圧力を検出し、その検出信号をＥＣＵ２に出力する。このチャージ通路２２内の圧力は、通常は燃料タンク２１内の圧力にほぼ等しいので、以下、タンク内圧ＰＴＡＮＫという。
【００１８】
また、チャージ通路２２の圧力センサ１３とキャニスタ２４との間には、２方向弁２７が設けられている。この２方向弁２７は、いずれもダイアフラム式の正圧弁および負圧弁を組み合わせた機械式弁で構成されている。この正圧弁は、タンク内圧ＰＴＡＮＫが大気圧よりも所定圧分、高くなったときに開弁するように構成されており、その開弁により、燃料タンク２１内の蒸発燃料がキャニスタ２４に送られる。また、負圧弁は、タンク内圧ＰＴＡＮＫがキャニスタ２４側の圧力よりも所定圧分、低くなったときに開弁するように構成されており、その開弁により、キャニスタ２４に貯えられていた蒸発燃料が燃料タンク２１に戻される。
【００１９】
さらに、バイパス通路２３は、２方向弁２７をバイパスするものであり、チャージ通路２２の２方向弁２７よりもキャニスタ２４側の部分と圧力センサ１３側の部分とに、接続されている。このバイパス通路２３の途中には、バイパス弁３０が設けられている。このバイパス弁３０は、常閉タイプの電磁弁で構成されており、通常はバイパス通路２３を閉鎖し、ＥＣＵ２の制御によって励磁されたときに開弁することにより、バイパス通路２３を開放する。
【００２０】
また、燃料タンク２１は、給油用の給油口２１ａと、これに取り付けられたフィラーキャップ２１ｂとを備えている。ＥＣＵ２には、フィラーキャップスイッチ１８が接続されており、このフィラーキャップスイッチ１８は、フィラーキャップ２１ｂの給油口２１ａへの取り付け・取り外し状態を表す信号を、ＥＣＵ２に出力する。
【００２１】
さらに、燃料タンク２１には、油面レベルセンサ１４が設けられている。この燃料レベルセンサ１４は、燃料タンク２１内の液位すなわち燃料レベルＦＬＥＶＥＬを検出して、その検出信号をＥＣＵ２に出力する。また、エンジン３の排気管４の一部は、燃料タンク２１に近接しており、これにより、燃料タンク２１およびその内部の燃料は、エンジン３の運転中、排気管４内を流れる排気ガスによって加熱される。
【００２２】
一方、キャニスタ２４は、活性炭を内蔵しており、この活性炭によって蒸発燃料が吸着される。また、キャニスタ２４には、大気側に開口する大気通路２９が接続されており、この大気通路２９には、これを開閉するベントシャット弁３１が設けられている。このベントシャット弁３１は、常開タイプの電磁弁で構成されており、通常は大気通路２９を開放状態に保持するとともに、ＥＣＵ２の制御によって励磁されたときに大気通路２９を閉鎖する。
【００２３】
また、前述したパージ通路２５の途中には、これを開閉するパージ制御弁３２が設けられている。このパージ制御弁３２は、その開度がＥＣＵ２からの駆動信号のデューティ比に応じて連続的に変化する電磁弁で構成されている。上記ベントシャット弁３１が開弁状態のときに、このパージ制御弁３２が開弁することにより、キャニスタ２４により吸着された蒸発燃料が、吸気管５内の負圧によって吸気管５に送り込まれる。ＥＣＵ２は、このパージ制御弁３２の開度をエンジン３の運転状態に応じてデューティ制御することにより、キャニスタ２４から吸気管５に送り込まれる蒸発燃料の流量、すなわちパージ流量を制御するとともに、後述するイグニッション・スイッチ１７がＯＦＦされたときには、パージ制御弁３２を閉弁状態に保持する。
【００２４】
さらに、ＥＣＵ２には、外気温センサ１５、車輪回転数センサ１６およびイグニッション・スイッチ（以下「ＩＧ・ＳＷ」という）１７が接続されている。外気温センサ１５は、外気温ＴＡＴを検出し、その検出信号をＥＣＵ２に出力する。
【００２５】
また、車輪回転数センサ１６は、車両の複数の車輪（図示せず）に対応してそれぞれ設けられており（１つのみ図示）、各車輪回転数センサ１６は、対応する車輪の回転数を表す検出信号をＥＣＵ２に出力する。ＥＣＵ２は、これらの車輪回転数センサ１６の検出信号に基づき、車速ＶＰ、ＩＧ・ＳＷ１７がＯＮされた以降の車両の走行距離ＤＩＳＴ、および総走行距離などを算出する。さらに、ＩＧ・ＳＷ１７は、イグニッションキー（図示せず）操作によりＯＮ／ＯＦＦされるとともに、そのＯＮ／ＯＦＦ状態を表す信号をＥＣＵ２に出力する。
【００２６】
一方、ＥＣＵ２（機関停止検出手段、故障判定手段、熱量パラメータ検出手段、故障判定禁止手段）は、Ｉ／Ｏインターフェース、ＣＰＵ、ＲＡＭおよびＲＯＭなどからなるマイクロコンピュータで構成されている。前述した各種のセンサ１０〜１６の検出信号およびスイッチ１７，１８の信号はそれぞれ、Ｉ／ＯインターフェースでＡ／Ｄ変換や整形がなされた後、ＣＰＵに入力される。ＣＰＵは、これらの入力信号に応じて、エンジン３の運転状態を判別し、ＲＯＭに予め記憶された制御プログラムやＲＡＭに記憶されたデータなどに従い、前述した各種の弁３０〜３２を駆動するとともに、以下に述べるように、故障判定の実行条件の成立・不成立の判定処理、および蒸発燃料処理系２０の故障判定処理を実行する。
【００２７】
以下、図２および図３を参照しながら、蒸発燃料処理系２０の故障判定処理（図４および図５参照）の実行条件が成立しているか否かを判定する処理について説明する。この処理は、タイマ設定により所定時間（例えば１００ｍｓｅｃ）ごとに実行される。
【００２８】
本処理では、まず、ステップ１（図では「Ｓ１」と略す。以下、同様）において、今回ＩＧ・ＳＷ１７がＯＦＦされたか否かを判別し、この判別結果がＮＯのときには、本処理を終了する。一方、この判別結果がＹＥＳで、今回ＩＧ・ＳＷ１７がＯＦＦされたときには、ステップ２に進み、異常検出フラグＦ＿ＣＳが「１」であるか否かを判別する。この異常検出フラグＦ＿ＣＳは、図示しない異常検出処理によりその値が設定されるものであり、具体的には、圧力センサ１３、バイパス弁３０またはベントシャット弁３１の故障などが検出されたときには「１」に、それ以外のときには「０」にそれぞれ設定される。
【００２９】
ステップ２の判別結果がＹＥＳで、圧力センサ１３、バイパス弁３０およびベントシャット弁３１のいずれかが故障したときには、蒸発燃料処理系２０の故障判定処理の実行条件が不成立であることで、誤判定のおそれがあるとして、図３のステップ１９に進み、それを表すために故障判定許可フラグＦ＿ＤＥＴを「０」にセットした後、本処理を終了する。これにより、後述するように、蒸発燃料処理系２０の故障判定が禁止される。
【００３０】
一方、ステップ２の判別結果がＮＯで、圧力センサ１３、バイパス弁３０およびベントシャット弁３１がいずれも正常であるときには、ステップ３に進み、ホットスタートフラグＦ＿ＤＬＫＳＯＡＫＨが「１」であるか否かを判別する。このホットスタートフラグＦ＿ＤＬＫＳＯＡＫＨは、エンジン３がホットスタートされたときには「１」に、コールドスタートされたときには「０」にそれぞれセットされる。
【００３１】
このステップ３の判別結果がＹＥＳで、エンジン３のホットスタート後にＩＧ・ＳＷ１７が今回ＯＦＦされたときには、誤判定のおそれがあるとして、図３の前記ステップ１９を実行した後、本処理を終了する。
【００３２】
一方、ステップ３の判別結果がＮＯで、エンジン３のコールドスタート後にＩＧ・ＳＷ１７が今回ＯＦＦされたときには、ステップ４に進み、判定間隔フラグＦ＿ＢＴＷＮＯＫが「１」であるか否かを判別する。この判定間隔フラグＦ＿ＢＴＷＮＯＫは、前回の故障判定処理の実行後の経過時間が所定値以上のときには「１」に、それ以外のときには「０」にそれぞれセットされる。
【００３３】
このステップ４の判別結果がＮＯで、前回の故障判定処理の実行後の経過時間が不十分であるときには、バッテリ残量が過少レベルまで低下するおそれがあるとして、図３の前記ステップ１９を実行した後、本処理を終了する。
【００３４】
一方、ステップ４の判別結果がＹＥＳで、前回の故障判定処理の実行後の経過時間が十分であるときには、ステップ５に進み、外気温センサフラグＦ＿ＯＫＦＢが「１」である否かを判別する。この外気温センサフラグＦ＿ＯＫＦＢは、図示しない外気温センサ１５の故障判定処理において、外気温センサ１５が正常であると判定されたときには「１」に、これが故障していると判定されたときには「０」にそれぞれセットされる。
【００３５】
このステップ５の判別結果がＮＯで、外気温センサ１５が故障しているときには、誤判定のおそれがあるとして、図３の前記ステップ１９を実行した後、本処理を終了する。一方、ステップ５の判別結果がＹＥＳで、外気温センサ１５が正常であるときには、ステップ６に進み、運転中正常判定フラグＦ＿ＯＫＦが「１」である否かを判別する。この運転中正常判定フラグＦ＿ＯＫＦは、エンジン運転中に実行される蒸発燃料処理系２０の故障判定処理（図示せず）において、蒸発燃料処理系２０が正常である（リークがない）と判定されたときに「１」に、故障している（リークがある）と判定されたときに「０」にそれぞれセットされる。
【００３６】
このステップ６の判別結果がＮＯで、ＩＧ・ＳＷ１７のＯＦＦ前のエンジン運転中、蒸発燃料処理系２０が故障していると判定されていたときには、エンジン停止後の故障判定を行う必要がないとして、図３の前記ステップ１９を実行した後、本処理を終了する。一方、ステップ６の判別結果がＹＥＳで、ＩＧ・ＳＷ１７のＯＦＦ前のエンジン運転中、蒸発燃料処理系２０が正常であると判定されていたときには、ステップ７に進み、給油フラグＦ＿ＲＦＵＥＬＤＣが「１」であるか否かを判別する。
【００３７】
この給油フラグＦ＿ＲＦＵＥＬＤＣは、エンジン運転中に実行される給油判定処理（図示せず）において、燃料タンク２１への給油が行われたと判定されたときに「１」に、それ以外のときに「０」にそれぞれセットされる。なお、この給油判定は、フィラーキャップスイッチ１８の出力、または燃料レベルセンサ１４の出力に基づいて行われる。
【００３８】
ステップ７の判別結果がＹＥＳで、ＩＧ・ＳＷ１７のＯＦＦ前のエンジン運転中に給油が行われたときには、誤判定のおそれがあるとして、図３の前記ステップ１９を実行した後、本処理を終了する。一方、ステップ７の判別結果がＮＯで、ＩＧ・ＳＷ１７のＯＦＦ前のエンジン運転中に給油が行われなかったときには、ステップ８に進み、前回の本処理実行時において、エンジン３が運転中であったか否かを判別する。
【００３９】
この判別結果がＮＯで、エンジン３が停止されていたときには、そのまま本処理を終了する。一方、この判別結果がＹＥＳで、エンジン３が運転中であったときには、ステップ９に進み、水温センサ１２により検出されたエンジン水温ＴＷが所定下限値ＴＷＥＯＮＶＬ以上であるか否かを判別する。
【００４０】
この判別結果がＮＯで、エンジン３の暖機が不十分であるときには、誤判定のおそれがあるとして、図３の前記ステップ１９を実行した後、本処理を終了する。一方、この判別結果がＹＥＳで、エンジン３が十分に暖機されているときには、図３のステップ１０に進み、車速ＶＰが所定上限値ＶＰＥＯＮＶＨ以下であるか否かを判別する。
【００４１】
この判別結果がＮＯで、走行中であるときには、誤判定のおそれがあるとして、前記ステップ１９を実行した後、本処理を終了する。一方、この判別結果がＹＥＳで、停車中のときには、ステップ１１に進み、外気温センサ１５により検出された外気温ＴＡＴが、所定の範囲（所定下限値ＴＡＴＥＯＮＶＬ以上かつ所定上限値ＴＡＴＥＯＮＶＨ以下の範囲）内にあるか否かを判別する。
【００４２】
この判別結果がＮＯで、外気温ＴＡＴが高過ぎるかまたは低過ぎるときには、誤判定のおそれがあるとして、前記ステップ１９を実行した後、本処理を終了する。一方、この判別結果がＹＥＳで、ＴＡＴＥＯＮＶＬ≦ＴＡＴ≦ＴＡＴＥＯＮＶＨであるときには、ステップ１２に進み、燃料レベルセンサ１４により検出された燃料レベルＦＬＥＶＥＬが、所定の範囲（所定下限値ＦＬＶＬＥＯＬ以上かつ所定上限値ＦＬＶＬＥＯＨ以下の範囲）内にあるか否かを判別する。
【００４３】
この判別結果がＮＯで、燃料レベルＦＬＥＶＥＬが高過ぎるかまたは低過ぎるときには、誤判定のおそれがあるとして、前記ステップ１９を実行した後、本処理を終了する。一方、この判別結果がＹＥＳで、ＦＬＶＬＥＯＬ≦ＦＬＥＶＥＬ≦ＦＬＶＬＥＯＨのときには、ステップ１３に進み、後述するステップ１４で用いる判定値ＧＡＳＪＤＥＯＸを算出する。
【００４４】
この判定値ＧＡＳＪＤＥＯＸは、具体的には、外気温ＴＡＴおよび燃料レベルＦＬＥＶＥＬに応じて図示しないマップを検索することにより、算出される。なお、このマップでは、判定値ＧＡＳＪＤＥＯＸは、外気温ＴＡＴが低いほど、または燃料レベルＦＬＥＶＥＬが高いほど、より大きい値に設定されている。これは、外気温ＴＡＴが低いほど、または燃料レベルＦＬＥＶＥＬが高いほど、燃料タンク２１内の燃料温度が高い状態になりにくいことによる。
【００４５】
次に、ステップ１４に進み、燃料消費量ＵＳＥＤＧＡＳが上記判定値ＧＡＳＪＤＥＯＸ以上であるか否かを判別する。この燃料消費量ＵＳＥＤＧＡＳは、エンジン３の運転状態に応じて決定された燃料噴射時間ＴＯＵＴに基づいて、算出される。この判別結果がＮＯで、ＵＳＥＤＧＡＳ＜ＧＡＳＪＤＥＯＸのときには、前記ステップ１９を実行した後、本処理を終了する。これにより、後述するように、蒸発燃料処理系２０の故障判定が禁止される。このように、燃料消費量ＵＳＥＤＧＡＳが少ない場合に故障判定が禁止されるのは、燃料タンク２１内の燃料温度が低い状態にあることにより、故障判定の際、リークがないときでもタンク内圧ＰＴＡＮＫの変化速度および変化量が小さいことで、リークがあると誤判定されるおそれがあることによる。
【００４６】
一方、ステップ１４の判別結果がＹＥＳで、ＵＳＥＤＧＡＳ≧ＧＡＳＪＤＥＯＸのときには、ステップ１５に進み、後述するステップ１６で用いる判定値ＴＩＭＪＤＥＯＸを算出する。
【００４７】
この判定値ＴＩＭＪＤＥＯＸは、具体的には、外気温ＴＡＴおよび燃料レベルＦＬＥＶＥＬに応じて図示しないマップを検索することにより、算出される。なお、このマップでは、判定値ＴＩＭＪＤＥＯＸは、上記判定値ＧＡＳＪＤＥＯＸと同じ理由により、外気温ＴＡＴが低いほど、または燃料レベルＦＬＥＶＥＬが高いほど、より大きい値に設定されている。
【００４８】
次に、ステップ１６に進み、ＩＧ・ＳＷ１７のＯＦＦ前におけるエンジン３の運転時間ＣＤＣＴＩＭＥが、上記判定値ＴＩＭＪＤＥＯＸ以上であるか否かを判別する。この運転時間ＣＤＣＴＩＭＥは、ＩＧ・ＳＷ１７がＯＮされてからＯＦＦされるまでの時間として計時される。この判別結果がＮＯで、ＣＤＣＴＩＭＥ＜ＴＩＭＪＤＥＯＸのときには、前記ステップ１９を実行した後、本処理を終了する。これにより、蒸発燃料処理系２０の故障判定が禁止される。このように、運転時間ＣＤＣＴＩＭＥが短い場合に故障判定が禁止されるのは、燃料消費量ＵＳＥＤＧＡＳが少ない場合と同じ理由による。
【００４９】
一方、ステップ１６の判別結果がＹＥＳで、ＣＤＣＴＩＭＥ≧ＴＩＭＪＤＥＯＸのときには、ステップ１７に進み、ＩＧ・ＳＷ１７のＯＦＦ前における走行距離ＤＩＳＴが所定の判定値ＤＩＳＴＪＤ（一定値）以上であるか否かを判別する。この判別結果がＮＯで、ＤＩＳＴ＜ＤＩＳＴＪＤのときには、前記ステップ１９を実行した後、本処理を終了する。これにより、蒸発燃料処理系２０の故障判定が禁止される。このように、走行距離ＤＩＳＴが短い場合に故障判定が禁止されるのは、燃料消費量ＵＳＥＤＧＡＳが少ない場合、または運転時間ＣＤＣＴＩＭＥが短い場合と同じ理由による。
【００５０】
一方、ステップ１７の判別結果がＹＥＳで、ＤＩＳＴ≧ＤＩＳＴＪＤのときには、蒸発燃料処理系２０の故障判定処理の実行条件が成立しているとして、ステップ１８に進み、それを表すために故障判定許可フラグＦ＿ＤＥＴを「１」にセットした後、本処理を終了する。これにより、後述するように、蒸発燃料処理系２０の故障判定が実行される。
【００５１】
次に、図４および図５を参照しながら、蒸発燃料処理系２０の故障判定処理、より具体的には、エンジン３の停止後、蒸発燃料処理系２０でリークが発生したか否かを判定する処理について説明する。
【００５２】
この処理では、まず、ステップ３０において、判定実行済みフラグＦ＿ＤＯＮＥが「１」であるか否かを判別する。この判定実行済みフラグＦ＿ＤＯＮＥは、エンジン３の始動時に「０」にセットされ、後述するように、本処理による蒸発燃料処理系２０の故障判定を実行したときに「１」にセットされる（後述するステップ３９，５０，５６，５７参照）。この判別結果がＹＥＳで、蒸発燃料処理系２０の故障判定を実行済みであるときには、そのまま本処理を終了する。
【００５３】
一方、ステップ３０の判別結果がＮＯで、蒸発燃料処理系２０の故障判定を実行していないときには、ステップ３１に進み、エンジン３が停止されているか否かを判別する。この判別では、クランク角センサ１１からのＣＲＫ信号に基づいて算出されたエンジン回転数ＮＥが所定値（例えば値０）以下であるときに、エンジン３が停止されていると判別される。
【００５４】
この判別結果がＮＯで、エンジン３が運転中であるときには、ステップ４６に進み、アップカウント式の第１タイマの計数値ＴＭ１を値０にセットした後、本処理を終了する。一方、ステップ３１の判別結果がＹＥＳで、エンジン３が停止されているときには、ステップ３２に進み、故障判定許可フラグＦ＿ＤＥＴが「１」であるか否かを判別する。
【００５５】
この判別結果がＮＯで、本処理の実行条件が成立していないときには、上記ステップ４６を実行した後、本処理を終了する。一方、ステップ３２の判別結果がＹＥＳで、本処理の実行条件が成立しているときには、ステップ３３に進み、第１タイマの計数値ＴＭ１が所定の第１大気開放時間ＴＯＴＡ１より大きいか否かを判別する。
【００５６】
この判別結果がＮＯで、エンジン停止後の経過時間が第１大気開放時間ＴＯＴＡ１を上回っていないときには、ステップ３４に進み、バイパス弁（図では「ＢＰＶ」と記す）３０およびベントシャット弁（図では「ＶＳＶ」と記す）３１を開弁する（後述する第１大気開放モード）。次に、ステップ３５に進み、アップカウント式の第２タイマの計数値ＴＭ２を値０にセットした後、本処理を終了する。
【００５７】
一方、ステップ３３の判別結果がＹＥＳで、エンジン停止後の経過時間が第１大気開放時間ＴＯＴＡ１を上回ったときには、ステップ３６に進み、第２タイマの計数値ＴＭ２が所定の第１判定時間ＴＰＨＡＳＥ１（例えば９００ｓｅｃ）より大きいか否かを判別する。この判別結果がＮＯで、ＴＭ２≦ＴＰＨＡＳＥ１のときには、ステップ３７に進み、ベントシャット弁３１を閉弁する（後述する第１判定モード）。
【００５８】
次いで、ステップ３８に進み、タンク内圧ＰＴＡＮＫが所定の第１判定圧ＰＴＡＮＫ１（例えば１．０１３ａｔｍ）より高いか否かを判別する。この判別結果がＹＥＳで、タンク内圧ＰＴＡＮＫの上昇度合が大きいときには、蒸発燃料処理系２０が正常である（すなわちリークがない）として、ステップ３９に進み、それを表すために正常判定フラグＦ＿ＯＫを「１」にセットすると同時に、故障判定を実行済みであることを表すために、判定実行済みフラグＦ＿ＤＯＮＥを「１」にセットした後、本処理を終了する。
【００５９】
一方、ステップ３８の判別結果がＮＯで、ＰＴＡＮＫ≦ＰＴＡＮＫ１のときには、ステップ４０に進み、アップカウント式の第３タイマの計数値ＴＭ３を値０にセットする。
【００６０】
次に、ステップ４１に進み、タンク内圧ＰＴＡＮＫがＲＡＭに記憶されているタンク内圧の最大値ＰＴＡＮＫＭＡＸよりも高いか否かを判別する。この判別結果がＮＯで、ＰＴＡＮＫ≦ＰＴＡＮＫＭＡＸのときには、本処理を終了する。一方、この判別結果がＹＥＳで、ＰＴＡＮＫ＞ＰＴＡＮＫＭＡＸのときには、ステップ４２に進み、タンク内圧ＰＴＡＮＫを最大値ＰＴＡＮＫＭＡＸとして設定した後、本処理を終了する。
【００６１】
一方、ステップ３６の判別結果がＹＥＳで、ＴＭ２＞ＴＰＨＡＳＥ１のときには、ステップ４３に進み、アップカウント式の第３タイマの計数値ＴＭ３が所定の第２大気開放時間ＴＯＴＡ２より大きいか否かを判別する。この判別結果がＮＯで、ＴＭ３≦ＴＯＴＡ２のときには、ステップ４４に進み、ベントシャット弁３１を開弁する（後述する第２大気開放モード）。次に、ステップ４５に進み、アップカウント式の第４タイマの計数値ＴＭ４を値０に設定した後、本処理を終了する。
【００６２】
一方、ステップ４３の判別結果がＹＥＳで、ＴＭ３＞ＴＯＴＡ２のときには、図５のステップ４７に進み、第４タイマの計数値ＴＭ４が所定の第２判定時間ＴＰＨＡＳＥ２（例えば２４００ｓｅｃ）より大きいか否かを判別する。この判別結果がＮＯで、ＴＭ４≦ＴＰＨＡＳＥ２のときには、ステップ４８に進み、ベントシャット弁３１を閉弁する（後述する第２判定モード）。
【００６３】
次いで、ステップ４９に進み、タンク内圧ＰＴＡＮＫが所定の第２判定圧ＰＴＡＮＫ２（例えば０．９８６ａｔｍ）より低いか否かを判別する。この判別結果がＹＥＳで、タンク内圧ＰＴＡＮＫの下降度合が大きいときには、蒸発燃料処理系２０が正常であるとして、ステップ５０に進み、前記ステップ３９と同様に、正常判定フラグＦ＿ＯＫを「１」にセットすると同時に、判定実行済みフラグＦ＿ＤＯＮＥを「１」にセットした後、本処理を終了する。
【００６４】
一方、ステップ４９の判別結果がＮＯで、ＰＴＡＮＫ≧ＰＴＡＮＫ２のときには、ステップ５１に進み、タンク内圧ＰＴＡＮＫがＲＡＭに記憶されているタンク内圧の最小値ＰＴＡＮＫＭＩＮより低いか否かを判別する。
【００６５】
この判別結果がＮＯで、ＰＴＡＮＫ≧ＰＴＡＮＫＭＩＮのときには、本処理を終了する。一方、この判別結果がＹＥＳで、ＰＴＡＮＫ＜ＰＴＡＮＫＭＩＮのときには、ステップ５２に進み、タンク内圧ＰＴＡＮＫを最小値ＰＴＡＮＫＭＩＮとして設定した後、本処理を終了する。
【００６６】
一方、ステップ４７の判別結果がＹＥＳで、ＴＭ４＞ＴＰＨＡＳＥ２のときには、ステップ５３に進み、バイパス弁３０を閉弁すると同時に、ベントシャット弁３１を開弁する。
【００６７】
次に、ステップ５４に進み、タンク内圧の最大値ＰＴＡＮＫＭＡＸと最小値ＰＴＡＮＫＭＩＮとの偏差（ＰＴＡＮＫＭＡＸ−ＰＴＡＮＫＭＩＮ）を、圧力偏差ΔＰとして設定する。
【００６８】
次いで、ステップ５５に進み、圧力偏差ΔＰが所定のしきい値ΔＰＴＨより大きいか否かを判別する。この判別結果がＹＥＳで、ΔＰ＞ΔＰＴＨのときには、蒸発燃料処理系２０が正常であるとして、ステップ５６に進み、前記ステップ３９，５０と同様に、正常判定フラグＦ＿ＯＫを「１」にセットすると同時に、判定実行済みフラグＦ＿ＤＯＮＥを「１」にセットした後、本処理を終了する。
【００６９】
一方、ステップ５５の判別結果がＮＯで、ΔＰ≦ΔＰＴＨのときには、蒸発燃料処理系２０が故障している（すなわちリークがある）として、ステップ５７に進み、それを表すために故障判定フラグＦ＿ＮＧを「１」にセットすると同時に、故障判定を実行済みであることを表すために、判定実行済みフラグＦ＿ＤＯＮＥを「１」にセットした後、本処理を終了する。これは、蒸発燃料処理系２０内にリークがあるときには、タンク内圧ＰＴＡＮＫが大気圧に対して変化する度合が小さくなることによる。
【００７０】
次に、以上の故障判定処理を実行した場合に得られるタンク内圧ＰＴＡＮＫの推移の一例を、図６に示すタイミングチャートを参照しながら説明する。同図に示すように、まず、バイパス弁３０およびベントシャット弁３１がいずれも開弁され、第１大気開放モードに移行すると（時刻ｔ１）、タンク内圧ＰＴＡＮＫが低下する。その後、タンク内圧ＰＴＡＮＫが大気圧（１ａｔｍ）まで低下し、第１大気開放時間ＴＯＴＡ１が経過した時点（時刻ｔ２）で、ベントシャット弁３１が閉弁され、蒸発燃料処理系２０が閉鎖され、第１判定モードに移行する。
【００７１】
この第１判定モード中、タンク内圧ＰＴＡＮＫは上昇し、その際、同図に破線Ｌ１で示すように、タンク内圧ＰＴＡＮＫが第１判定圧ＰＴＡＮＫ１を超えると（時刻ｔ３）、蒸発燃料処理系２０が正常であると判定される。
【００７２】
一方、第１判定モード中、タンク内圧ＰＴＡＮＫが実線Ｌ２に示すように変化した場合、第１判定時間ＴＰＨＡＳＥ１が経過した時点（時刻ｔ４）で、タンク内圧の最大値ＰＴＡＮＫＭＡＸがＲＡＭに記憶されると同時に、ベントシャット弁３１が開弁され、第２大気開放モードに移行する。これにより、タンク内圧ＰＴＡＮＫが再度、低下する。その後、タンク内圧ＰＴＡＮＫが大気圧（１ａｔｍ）まで低下し、第２大気開放時間ＴＯＴＡ２が経過した時点（時刻ｔ５）で、ベントシャット弁３１が閉弁され、蒸発燃料処理系２０が閉鎖され、第２判定モードに移行する。
【００７３】
この第２判定モード中、タンク内圧ＰＴＡＮＫは低下し、その際、同図に破線Ｌ３で示すように、タンク内圧ＰＴＡＮＫが第２判定圧ＰＴＡＮＫ１を下回ると（時刻ｔ６）、蒸発燃料処理系２０が正常であると判定される。
【００７４】
一方、第２判定モード中、タンク内圧ＰＴＡＮＫが実線Ｌ４に示すように変化した場合、第２判定時間ＴＰＨＡＳＥ２が経過した時点（時刻ｔ７）で、タンク内圧の最小値ＰＴＡＮＫＭＩＮがＲＡＭに記憶される。これと同時に、バイパス弁３０が閉弁され、かつベントシャット弁３１が開弁される。この時点で、前述したように、最大値ＰＴＡＮＫＭＡＸと最小値ＰＴＡＮＫＭＩＮとの圧力偏差ΔＰとしきい値ΔＰＴＨとを比較することにより、故障判定が実行される。すなわち、圧力偏差ΔＰがしきい値ΔＰＴＨよりも大きいときには、蒸発燃料処理系２０が正常であると判定され、そうでないときには、蒸発燃料処理系２０が故障していると判定される。
【００７５】
以上のように、本実施形態の故障判定装置１によれば、エンジン停止後、タンク内圧ＰＴＡＮＫに基づいて、蒸発燃料処理系２０の故障の有無が判定されるとともに、故障判定実行前のエンジン運転中における燃料消費量ＵＳＥＤＧＡＳが少ない場合、または走行距離ＤＩＳＴが短い場合には、故障判定が禁止される。すなわち、燃料消費量ＵＳＥＤＧＡＳが少ないこと、または走行距離ＤＩＳＴが短いことで、エンジン停止直後の燃料タンク２１の燃料温度が低い状態にあると推定される場合には、故障判定中のタンク内圧ＰＴＡＮＫの変化速度が小さいことで、誤判定を招くおそれがあるため、故障判定が禁止される。その結果、誤判定を回避でき、判定精度を向上させることができる。また、そのような給油の有無の判定が、エンジン停止前に予め実行されるので、エンジン停止後に不要な故障判定が行われるのを確実に回避できる。
【００７６】
さらに、燃料消費量ＵＳＥＤＧＡＳの判定値ＧＡＳＪＤＥＯＸが、外気温ＴＡＴに応じて設定されるので、外気温ＴＡＴの影響を反映させながら、燃料タンク２１の燃料温度を推定することができ、その結果、故障判定をより適切に禁止できる。
【００７７】
なお、本発明の故障判定装置１は、蒸発燃料処理系２０の故障としてリークの有無を判定する実施形態の例に限らず、エンジン停止後に蒸発燃料処理系２０の故障を判定するものであれば適用可能であることはいうまでもない。例えば、バイパス弁３０、ベントシャット弁３１およびパージ制御弁３２の故障の判定を、エンジン停止後に行うものにも適用可能である。
【００７８】
また、実施形態は、燃料消費量ＵＳＥＤＧＡＳおよび車両の走行距離ＤＩＳＴを熱量パラメータとして用いた例であるが、熱量パラメータはこれに限らず、エンジン３から燃料タンク２１に与えられた熱量を表すものであればよい。さらに、実施形態は、走行距離ＤＩＳＴの判定値ＤＩＳＴＪＤを一定値とした例であるが、これを、燃料消費量ＵＳＥＤＧＡＳの判定値ＧＡＳＪＤＥＯＸと同様に、外気温ＴＡＴに応じて設定してもよい。
【００７９】
さらに、実施形態では、吸気温センサ１０とは別個の外気温センサ１５により外気温ＴＡＴを検出したが、外気温センサ１５を省略し、吸気温センサ１０および水温センサ１２によりそれぞれ検出された吸気温ＴＡおよびエンジン水温ＴＷに基づいて、外気温ＴＡＴを推定するようにしてもよい。また、実施形態は、圧力センサ１３をチャージ通路２２に設けた例であるが、圧力センサ１３を設ける位置は、これに限らず、蒸発燃料処理系２０内の圧力を検出可能な場所であればよい。例えば、圧力センサ１３を燃料タンク２１に設けてもよい。
【００８０】
【発明の効果】
以上のように、本発明の蒸発燃料処理系の故障判定装置によれば、内燃機関の停止後、蒸発燃料処理系のリークを含む故障の判定を行う場合において、誤判定を回避でき、判定精度を向上させることができる。
【図面の簡単な説明】
【図１】本発明の一実施形態に係る故障判定装置、これを適用した内燃機関の蒸発燃料処理系の概略構成を示す図である。
【図２】蒸発燃料処理系の故障判定処理の実行条件が成立しているか否かを判定する処理の一部を示すフローチャートである。
【図３】図２の続きを示すフローチャートである。
【図４】蒸発燃料処理系の故障判定処理の一部を示すフローチャートである。
【図５】図４の続きを示すフローチャートである。
【図６】図４および図５の処理を実行した際の各弁の動作およびタンク内圧の推移の一例を示すタイミングチャートである。
【符号の説明】
１    故障判定装置
２    ＥＣＵ（機関停止検出手段、故障判定手段、熱量パラメータ検出手段、故障判          定禁止手段）
３    内燃機関
５    吸気管（吸気系）
１１    クランク角センサ（機関停止検出手段）
１３    圧力センサ（圧力検出手段）
２０    蒸発燃料処理系
２１    燃料タンク
２４    キャニスタ（貯蔵部）
ＰＴＡＮＫ  タンク内圧（蒸発燃料処理系内の圧力）
ＵＳＥＤＧＡＳ  燃料消費量（熱量パラメータ）
ＧＡＳＪＤＥＯＸ  判定値
【図１】
0003825364.tif 000002
【図２】
0003825364.tif 000003
【図３】
0003825364.tif 000004
【図４】
0003825364.tif 000005
【図５】
0003825364.tif 000006
【図６】
0003825364.tif 000007