(57)【要約】【課題】誤検知を回避して判定精度を向上させることができる蒸発燃料処理系のリーク判定装置を提供すること。【解決手段】本発明によるリーク判定装置は、前記蒸発燃料処理装置内の圧力を検出する圧力検出手段と、前記内燃機関の停止を検出する機関停止検出手段と、前記内燃機関の停止が検出されたときに、前記パージ制御弁およびベントシャット弁を閉弁し、該閉弁後の所定の判定期間において検出した圧力の２階微分値に基づいて、前記蒸発燃料処理装置のリークを判定する第１判定手段と、前記内燃機関から前記燃料タンクに与えられた熱量を表す熱量パラメータを算出する熱量パラメータ算出手段と、前記内燃機関の停止が検出され、前記熱量パラメータが所定の判定値未満のときに、前記第１判定手段によるリーク判定を禁止する禁止手段と、を備える。【選択図】図２
2006077616.tif 000002
【特許請求の範囲】
【請求項１】
燃料タンクと、前記燃料タンク内で発生する蒸発燃料を吸着する吸着剤を有するキャニスタと、該キャニスタを大気に連通させる空気通路と、前記キャニスタと前記燃料タンクとを接続する第１の通路と、前記キャニスタを内燃機関の吸気系に接続する第２の通路と、前記キャニスタの空気通路を開閉するベントシャット弁と、前記第２の通路に設けられたパージ制御弁とを備えた蒸発燃料処理装置のリークを判定するリーク判定装置において、
前記蒸発燃料処理装置内の圧力を検出する圧力検出手段と、
前記内燃機関の停止を検出する機関停止検出手段と、
前記内燃機関の停止が検出されたときに、前記パージ制御弁およびベントシャット弁を閉弁し、該閉弁後の所定の判定期間において検出した圧力の２階微分値に基づいて、前記蒸発燃料処理装置のリークを判定する第１判定手段と、
前記内燃機関から前記燃料タンクに与えられた熱量を表す熱量パラメータを算出する熱量パラメータ算出手段と、
前記内燃機関の停止が検出され、前記熱量パラメータが所定の判定値未満のときに、前記第１判定手段によるリーク判定を禁止する禁止手段と、
を備えるリーク判定装置。
【請求項２】
前記内燃機関は車両に搭載され、
前記熱量パラメータは、前記車両の所定の車速以上における運転継続時間である、請求項１記載のリーク判定装置。
【請求項３】
前記所定の判定期間後のさらなる期間における前記蒸発燃料処理装置内の圧力と該圧力の停滞時間との関係に基づいて、前記蒸発燃料処理装置のリークを判定する第２判定手段をさらに備え、前記第１判定手段によるリーク判定が禁止されたとき、前記第２判定手段によるリーク判定を行う、請求項１に記載のリーク判定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内燃機関が停止した後に、該内燃機関の蒸発燃料処理系にリークがあるか否かを判定する装置に関する。
【背景技術】
【０００２】
内燃機関停止後において、該内燃機関の蒸発燃料処理系のリーク（漏れ）の有無を判定する手法が提案されている。たとえば、特許文献１には、内燃機関の停止後において蒸発燃料処理系のバルブを閉じて閉回路とし、このときのタンク内圧の上昇勾配の変化および下降勾配の変化に基づいて、蒸発燃料処理系からのリークの有無を判定する方法が開示されている。
【０００３】
また、リークの検知手法において、タンク内圧の推移の２階微分値を求め、これに基づいてリークの有無を判定する手法（タンク内圧Ｐの２階微分値に基づいて判定するため、ΔΔＰ法と呼ぶ）が存在する。これは、リークのない蒸発燃料処理系においてベーパーが発生しているとき、閉回路のタンク内圧は時間に比例して直線的に増加することに基づく。すなわち、蒸発燃料処理系にリークがないとき、タンク内圧の時間による２階微分値がゼロになることに基づいて、リークの有無を判定することができる。
【特許文献１】特開２０００−３２８８６６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
リークの検知において上述のΔΔＰ法を利用するには、タンク内圧を直線的に増加させるだけの所定量のベーパー発生が必要である。ベーパーは、内燃機関などの熱源によりタンク内が熱せられることによって発生する。よって、リークの検知は、内燃機関が熱源となるべく内燃機関の運転後に行われる。しかしながら、車両の走行後に長時間アイドリング状態で放置された場合や、低速走行が継続された後では、燃料タンクの受熱量より放熱量が多いため燃料温度が低い。このように、燃料温度が低いときにエンジンを停止した場合、所定量のベーパーが発生しないことから、ΔΔＰ法で蒸発燃料処理系のリーク判定を行うと誤判定を起こす可能性がある。
【０００５】
本発明は、以上のような事情に基づいてなされたものであり、誤判定を回避して判定精度を向上させることができる蒸発燃料処理系のリーク判定装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明のリーク判定装置は、発明の一形態（請求項１）によると、燃料タンクと、前記燃料タンク内で発生する蒸発燃料を吸着する吸着剤を有するキャニスタと、該キャニスタを大気に連通させる空気通路と、前記キャニスタと前記燃料タンクとを接続する第１の通路と、前記キャニスタを内燃機関の吸気系に接続する第２の通路と、前記キャニスタの空気通路を開閉するベントシャット弁と、前記第２の通路に設けられたパージ制御弁とを備えた蒸発燃料処理装置のリークを判定するリーク判定装置である。そして、このリーク判定装置は、前記蒸発燃料処理装置内の圧力を検出する圧力検出手段と、前記内燃機関の停止を検出する機関停止検出手段と、前記内燃機関の停止が検出されたときに、前記パージ制御弁およびベントシャット弁を閉弁し、該閉弁後の所定の判定期間において検出した圧力の２階微分値に基づいて、前記蒸発燃料処理装置のリークを判定する第１判定手段と、前記内燃機関から前記燃料タンクに与えられた熱量を表す熱量パラメータを算出する熱量パラメータ算出手段と、前記内燃機関の停止が検出され、前記熱量パラメータが所定の判定値未満のときに、前記第１判定手段によるリーク判定を禁止する禁止手段と、を備える。
【０００７】
これによると、内燃機関の停止時までに内燃機関から燃料タンクに与えられた熱量が小さく、燃料タンク内の燃料温度が十分に上昇していない可能性があるときには、蒸発燃料処理系の第１の故障判定が禁止される。これにより、誤判定を回避でき、判定精度を向上させることができる。
【０００８】
また、この発明のもう一つの形態（請求項２）によるリーク判定装置において、前記内燃機関は車両に搭載され、前記熱量パラメータは、前記車両の所定の車速以上における運転継続時間である。
【０００９】
また、この発明のもう一つの形態（請求項３）によるリーク判定装置において、前記所定の判定期間後のさらなる期間における前記蒸発燃料処理装置内の圧力と該圧力の停滞時間との関係に基づいて、前記蒸発燃料処理装置のリークの有無を判定する第２判定手段をさらに備え、前記第１判定手段によるリーク判定が禁止されたとき、前記第２判定手段によるリーク判定を行う。
【発明を実施するための最良の形態】
【００１０】
次に図面を参照してこの発明の実施の形態を説明する。図１は、この発明の実施形態に従う、内燃機関およびその制御装置の全体構成図である。
【００１１】
電子制御ユニット（以下、「ＥＣＵ」）という）100は、車両の各部から送られてくるデータを受け入れる入力インターフェース100a、車両の各部の制御を行うための演算を実行するＣＰＵ100b、読み取り専用メモリ（ＲＯＭ）およびランダムアクセスメモリ（ＲＡＭ）を有するメモリ100ｃ、および車両の各部に制御信号を送る出力インターフェース100dを備えている。メモリ100cのＲＯＭには、車両の各部の制御を行うためのプログラムおよびテーブルなどの各種のデータが格納されている。この発明に従うリーク判定を実施するためのプログラム、および該プログラムの実行の際に用いるデータは、このＲＯＭに格納されている。よって、ＥＣＵ100が、これらのプログラムを実行することにより、後述の機関停止検出手段、第１判定手段、第２判定手段、熱量パラメータ算出手段、および故障判定禁止手段が実現される。ＲＯＭは、ＥＰＲＯＭのような書き換え可能なＲＯＭでもよい。ＲＡＭには、ＣＰＵ100bによる演算のための作業領域が設けられる。車両の各部から送られてくるデータおよび車両の各部に送り出す制御信号は、ＲＡＭに一時的に記憶される。
【００１２】
エンジン101は、例えば４気筒を備えるエンジンであり、吸気管102が連結されている。吸気管102の上流側にはスロットル弁103が配されており、スロットル弁103に連結されたスロットル弁開度センサ（θＴＨ）104は、スロットル弁103の開度に応じた電気信号を出力してＥＣＵ100に供給する。
【００１３】
燃料噴射弁106は、エンジン101とスロットル弁103の間に気筒毎に設けられ、ＥＣＵ100からの制御信号によって開弁時間が制御される。燃料供給管107は、燃料噴射弁106および燃料タンク109を接続し、その途中に設けられた燃料ポンプ108が、燃料を燃料タンク109から燃料噴射弁106に供給する。図示しないレギュレータが、ポンプ108と燃料噴射弁106の間に設けられ、吸気管102から取り込まれる空気の圧力と、燃料供給管107を介して供給される燃料の圧力との間の差圧を一定にするよう動作して、燃料の圧力が高すぎるときは図示しないリターン管を通して余分な燃料を燃料タンク109に戻す。こうして、スロットル弁103を介して取り込まれた空気は、吸気管102を通り、燃料噴射弁106から噴射される燃料と混合してエンジン101のシリンダ（図示せず）に供給される。
【００１４】
吸気管圧力（ＰＢ）センサ113および吸気温（ＴＡ）センサ114は、スロットル弁103の下流側に装着されており、それぞれ吸気管圧力ＰＢおよび吸気温ＴＡを検出し、それをＥＣＵ100に送る。
【００１５】
エンジン101には、クランク角センサ117が設けられている。クランク角センサ117は、クランクシャフト（図示せず）の回転に伴い、パルス信号であるＣＲＫ信号およびＴＤＣ信号をＥＣＵ100に出力する。
【００１６】
ＣＲＫ信号は、所定のクランク角（たとえば、３０度）で出力されるパルス信号である。ＥＣＵ100は、該ＣＲＫ信号に応じ、エンジン101の回転数ＮＥを算出する。ＴＤＣ信号は、ピストン（図示せず）のＴＤＣ位置に関連したクランク角度で出力されるパルス信号である。
【００１７】
エンジン水温（ＴＷ）センサ118は、エンジン101のシリンダブロックの冷却水が充満した気筒周壁（図示せず）に取り付けられ、エンジン冷却水の温度ＴＷを検出し、それをＥＣＵ100に送る。
【００１８】
エンジン100には排気管112が接続され、排気管112の途中に設けられた排気ガス浄化装置である三元触媒（図示せず）を介して排気する。三元触媒の上流に設けられたＬＡＦセンサ119は広域空燃比センサであり、リーンからリッチにわたる範囲において排気ガス中の酸素濃度すなわち実空燃比を検出し、それをＥＣＵ100に送る。
【００１９】
イグニッションスイッチ121がＥＣＵ100に接続されている。イグニッションスイッチ121の切換信号は、ＥＣＵ100に送られる。
【００２０】
車速（ＶＰ）センサ122および大気圧（ＰＡ）センサ123がＥＣＵ100に接続されており、それぞれ、車両の速度VPおよび大気圧PAを検出し、それをＥＣＵ100に送る。
【００２１】
エンジン101には、たとえば４速の変速機（図示せず）が連結されており、該変速機は、選択された変速比に従い、エンジン101の駆動力を車両の駆動輪に伝達する。
【００２２】
次に、蒸発燃料処理系150について説明する。燃料タンク109は、チャージ通路131を介してキャニスタ133に接続され、燃料タンク109からの蒸発燃料が、キャニスタ133に移動できるようになっている。チャージ通路131には、機械式の二方向弁135が設けられている。二方向弁135は、タンク内圧が大気圧より第１の所定圧（たとえば、２．７ｋＰａ）以上高いときに開く正圧弁と、タンク内圧がキャニスタ133の圧力より第２の所定圧以上低いとき開く負圧弁を備える。
【００２３】
二方向弁をバイパスするバイパス通路131aが設けられている。バイパス通路131aには、電磁弁であるバイパス弁136が設けられる。バイパス弁136は、通常は閉弁状態にあり、ＥＣＵ100からの制御信号に従って開弁する。
【００２４】
圧力センサ115は、二方向弁135と燃料タンク109との間に設けられており、その検出信号はＥＣＵ100に送られる。圧力センサ115の出力PTANKは、キャニスタ133および燃料タンク109内の圧力が安定している定常状態では、燃料タンク内の圧力に等しくなる。一方、圧力センサ115の出力PTANKは、キャニスタ133または燃料タンク109内の圧力が変化しているときは、実際のタンク内圧とは異なる圧力を示す。圧力センサ115の出力を、以下「タンク内圧PTANK」と呼ぶ。
【００２５】
キャニスタ133は、燃料蒸気を吸着する活性炭を内蔵し、通路137を介して大気に連通する吸気口（図示せず）を持つ。通路137の途中には、ベントシャット弁138が設けられる。ベントシャット弁138は、通常は開弁状態にあり、ＥＣＵ100からの制御信号に従って閉弁する。
【００２６】
キャニスタ133は、パージ通路132を介して吸気管102のスロットル弁103の下流側に接続される。パージ通路132の途中には電磁弁であるパージ制御弁134が設けられ、キャニスタ133に吸着された燃料が、パージ制御弁134を介してエンジンの吸気系に適宜パージされる。パージ制御弁134は、ＥＣＵ100からの制御信号に基づいて、オン−オフデューティ比を変更することにより、パージ流量を連続的に制御する。
【００２７】
この実施形態によると、イグニッションスイッチ121がオフされても、リーク判定を実施する期間中は、ＥＣＵ100、バイパス弁136およびベントシャット弁138には電気が供給される。パージ制御弁134は、イグニッションスイッチ121がオフされると電気が供給されなくなり、閉弁状態を維持する。よって、イグニッションスイッチ121のオフ後は、ベントシャット弁138に信号を送り、強制的に閉弁することにより蒸発燃料処理系150を閉じた状態にすることができる。
【００２８】
各種センサからの入力信号はＥＣＵ100の入力インターフェース100aに渡される。入力インターフェース100aは、受け取ったアナログ信号をデジタル信号に変換する。ＣＰＵ100bは、変換されたデジタル信号を処理し、メモリ100cに格納されているプログラムに従って演算を実行し、車の各部のアクチュエータに送る制御信号を作り出す。この制御信号は出力インターフェース100dに送られ、出力インターフェース100dは、燃料噴射弁106、パージ制御弁134、バイパス弁136およびベントシャット弁138に制御信号を送る。
【００２９】
図２は、本願発明の一実施形態に従う、蒸発燃料処理系150のリークを判定する装置のブロック図である。各機能ブロックは、メモリ100cに記憶されたコンピュータプログラムを実行することにより実現される。
【００３０】
機関停止検出部200は、ＣＲＣ信号を検出してエンジン回転数を算出し、エンジン回転数が所定のエンジン回転数以下になったときに機関が停止したとする信号をバルブ制御部207に送出する機能を有する。車速検出部205は、車速センサ122から車速を検出して、熱量パラメータ算出部204に送出する機能を有する。
【００３１】
熱量パラメータ算出部204は、車速およびタンク内圧を受け取り、これらに基づいて燃料タンクに与えられた熱量を表す熱量パラメータを算出する機能を有する。具体的には、本実施形態において、所定の車速以上で走行した時間をタイマでカウントアップする。そして、このカウント値を熱量パラメータとして、後述の故障判定禁止部201に送出する。
【００３２】
バルブ制御部207は、リーク判定を実行するための条件が成立（ここでは、エンジン回転数が所定回転数まで下がり、エンジンが停止しているとみなされたとき）したことに応じて、ベントシャット弁138およびバイパス弁136を開き、蒸発燃料処理系150を大気に開放する。該大気開放処理は、所定時間にわたって実行される。その後、ベントシャット弁138およびバイパス弁136を閉じ、ベントシャット弁を閉じたことを示すフラグを立てる機能を有する。
【００３３】
故障判定禁止部201は、前述の熱量パラメータに基づいて、後述する第１のリーク判定部202によるリーク判定を禁止するか否かを判定する機能を有する。具体的には、受け取ったタイマのカウント値（ここでは、所定の車速以上で走行した時間）が所定の判定値未満のときは、タンクの受熱量が少ないものとして、第１のリーク判定を禁止する。
【００３４】
リーク判定は、任意の既知の手法で行うことができる。本願発明の一実施形態によると、第１の判定部202は、タンク内圧PTANKの２階微分値に基づいて、蒸発燃料処理系150にリークがあるか否かを判定する。第２の判定部203は、タンク内圧PTANKと、該タンク内圧PTANKの停滞時間との関係に基づいて、リークがあるかどうかを判定する。
【００３５】
図３〜図６を参照して、第１のリーク判定を説明する。
【００３６】
図３は、タンク内圧PTANKの推移を示すタイムチャートの一例である。具体的には、図３は、大気開放処理の後にベントシャット弁138を閉じた時刻t0からのタンク内圧PTANKの推移を示す。図３(a)は、蒸発燃料処理系150が正常な（すなわちリーク無しの）場合を示し、図３(b)は、蒸発燃料処理系150にリークがある場合を示す。蒸発燃料処理系150が正常なときは、タンク内圧PTANKはほぼ直線的に増加する。蒸発燃料処理系150にリークがあるときは、タンク内圧PTANKは、比較的大きな変化率で上昇した後、徐々に変化率が減少する。したがって、タンク内圧PTANKの変化率の推移を観測することにより、リークがあるかどうかを判定することができる。
【００３７】
この発明の一実施形態では、リークがあるか否かを判定するための判定パラメータの算出に、タンク内圧PTANKの２階微分値を用いる。蒸発燃料処理系150が正常ならば、該タンク内圧PTANKの２階微分値はほぼゼロとなる。蒸発燃料処理系150にリークがあれば、該２階微分値は負の値となる。
【００３８】
図４(a)は、一定時間毎にサンプリングされたタンク内圧PTANKの実測値の一例を示す。今回のサンプリングサイクルで検出されたタンク内圧をPTANK(k)で表すと、タンク内圧の変化量DPは、式（１）で表される。
【００３９】
DP=PTANK(k)-PTANK（K-1）      （１）
図４(b)は、変化量DPの推移を示すタイムチャートである。変化量DPが徐々に減少する傾向があることが、示されている。本願発明の一実施形態では、最小二乗法により、変化量DPの推移を示す回帰直線Ｌ１を求め、この傾きEDDPLSQA（第１の傾きパラメータと呼ぶ）を算出する。第１の傾きパラメータは、タンク内圧PTANKの２階微分値を表している。
【００４０】
燃料タンク109内で発生する蒸発燃料の量が多く、かつベントシャット弁138を閉じた後の圧力変化率が大きいときは、蒸発燃料処理系150が正常であっても、変化量DPは徐々に減少する傾向を示すことが、実験的に確認されている。このような状態においてもリークがあるかどうかをより正確に判定するため、本願発明の一実施形態では、図５に示すように、ベントシャット弁138を閉じた時刻t0から、第１の判定時間TMDDPTLが経過するまでの期間における、タンク内圧の最大値DPEOMAXを検出する。蒸発燃料処理系150にリークがあれば、最大値DPEOMAXに対する傾きEDDPLSQAの割合が大きくなる。該割合を調べることにより、リークがあるかどうかを判定することができる。該割合は式（２）により算出され、これを判定パラメータEODDPJUDとする。
【００４１】
EODDPJUD=|EDDPLSQA|/DPEOMAX      （２）
図６は、判定パラメータEODDPJUDを縦軸とし、最大圧力DPEOMAXを横軸とした座標平面上に、蒸発燃料処理系150にリークが無い（すなわち、正常）場合のデータを黒丸としてプロットし、リークがある場合のデータを白丸としてプロットしている。この図から明らかなように、しきい値DDPJUDを適切な値に設定することにより、リークがあるかどうかを正確に判定することができる。
【００４２】
次に、図７を参照して、第２のリーク判定について説明する。後述するように、第１のリーク判定が禁止されたときには、第２のリーク判定が行われる。また、蒸発燃料処理系150に小さな孔（たとえば、直径が０．５ミリメートルのような孔）があり、タンク内圧PTANKの変化速度が非常に小さいときには、第１の判定によりリークを検出することが困難なことがあるが、第２の判定によれば、このような小さな孔によるリークを検出することができる。
【００４３】
図７(a)は、正常な場合のタンク内圧PTANK（後述するように、より正確には、タンク内圧PTANKを平滑化した（ローパスフィルタを適用した）タンク内圧PEONVAVE）の推移を示し、図７(b)は、リークがある場合のタンク内圧PTANK（後述するように、より正確には、タンク内圧PTANKを平滑化した（ローパスフィルタを適用した）タンク内圧PEONVAVE）の推移を示す。検出された圧力PTANKが変化しない持続時間を、停滞時間TSTYと定義する。図に示すＴ１、Ｔ２およびＴ３が、停滞時間TSTYに相当する。停滞時間TSTYとタンク内圧PTANKとの間の関係をプロットすると、正常な場合については図７(c)に示されるような相関特性が得られ、リークがある場合については図７(d)に示されるような相関特性が得られる。それぞれの図における回帰直線Ｌ１１およびＬ１２の傾きに着目すると、回帰直線Ｌ１１の傾きＡＬ１１は、正の比較的小さな値であり、回帰直線Ｌ１２の傾きＡＬ１２は、絶対値が大きな負の値となることがわかる。本願発明の一実施形態では、タンク内圧PTANKと停滞時間TSTYとの相関特性を表す回帰直線の傾き（第２の傾きパラメータEODTMJUDと呼ぶ）により、リークを判定する。
【００４４】
次に、本発明の一実施形態における実行プロセスについて説明する。
【００４５】
図８は、熱量パラメータ判定のプロセスのフローチャートである。本実施形態において、以下のプロセスの演算周期は１０(msec)の周期で実行される。
【００４６】
メインプログラムより熱量パラメータ判定のプロセスが呼び出されると、S801においてＥＣＵ100は、始動モードフラグF_STMODが１であるか否かを判定する。始動モードフラグF_STMODは、エンジンスタート時において１がセットされるフラグである。始動モードフラグF_STMODに１がセットされているときは、機関停止状態であることはないため、ＥＣＵ100は、熱量パラメータ判定プロセスを終了する。
【００４７】
一方、S801において、始動モードフラグF_STMODが１のときは、運転時間カウンタCDCTIMEに１を加算する（S802）。そして、次にＥＣＵ100は、車速センサ122から車速VPを取得し、車速VPが所定の車速VPEONVLよりも速いか否かを判定する。車速VPが所定の車速VPEONVL以上（本実施形態では２０ｋｍ／ｈとする）のとき、ＥＣＵ100は高速走行カウンタCVPEOTM2に１を加算する（S804）。そして、ＥＣＵ100は、低速走行時間カウンタCIDLEOTMに０をセットする（S805）。
【００４８】
S803において、車速VPが所定の車速VPEONVLよりも低いときは、ＥＣＵ100は、低速走行時間カウンタCIFLEOTMに１を加算する（S810）。
【００４９】
上述のプロセスによって、車速VPが所定の車速VPEONVLよりも速いときは高速走行カウンタCVPEOTM2の値が増加し、車速VPが遅いときは低速走行時間カウンタCIFLEOTMが増加することとなる。
【００５０】
次に、S806において、ＥＣＵ100は、低速走行時間カウンタCIDLEOTMが所定の低速走行時間CTIDLEOTM以上か否かについて判定する。ここで、低速走行時間カウンタCIDLEOTMが所定の低速走行時間CTIDLEOTM以上であるときは、高速走行カウンタCVPEOTM2に０をセットする（S811）。そして、ＥＣＵ100は、検知禁止フラグF_EOLNGIDLに１をセットして（S812）熱量パラメータ判定を終了する。
【００５１】
一方、S806において、低速走行時間カウンタCIDLEOTMが所定の低速走行時間CTIDLEOTMよりも小さいときは、プロセスをS807へと進める。そして、検知禁止フラグF_EOLNGIDLに１がセットされているか否かを判定し、１がセットされていないときは熱量パラメータ判定プロセスを終了する。検知禁止フラグF_EOLNGIDLに１がセットされているとき、ＥＣＵ100は、高速走行カウンタCVPEOTM2が所定のカウンタ値CTVPEOTM以上であるか否かについて判定する（S808）。ここで、高速走行カウンタCVPEOTM2が所定のカウンタ値CTVPEOTM以上で無いとき、ＥＣＵ100は熱量パラメータ判定プロセスを終了する。一方、高速走行カウンタCVPEOTM2が所定のカウンタ値CTVPEOTM以上のとき、ＥＣＵ100は、プロセスをS809へと進め、検知禁止フラグF_EOLNGIDLに０をセットして熱量パラメータ判定プロセスを終了する。
【００５２】
上述のプロセスによって、所定の車速（２０ｋｍ／ｈ）以上である時間が所定時間継続したときは、燃料タンクの受熱量が大きいとして、検知禁止フラグF_EOLNGIDLに０がセットされ、小さいときは１がセットされる。
【００５３】
図９および図１０は、第１のリーク判定のプロセスのフローチャートである。
【００５４】
メインプログラムから第１のリーク判定プロセスが呼び出されると、S901において、ＥＣＵ100は、検知禁止フラグF_EOLNGIDLの値が１であるか否かを判定する。前述したように、該フラグは、エンジンオフ前に長時間の低速走行を行ったときに値１を持つ。
【００５５】
S901において、検知禁止フラグF_EOLNGIDLの値が１でないときは、プロセスをS906へと進める。S906においてＥＣＵ100は、第１の傾きパラメータEDDPLSQAを算出する際に使用されるパラメータCEDDPCAL、ESIGMAX、ESIGMAX2、ESIGMAXY、ESIGMAY、およびTDDPTLにゼロをセットする。そしてさらにステップをS907へと進め、ＥＣＵ100は、カウンタCEOPSMPに10を、平滑化したタンク内圧の前回値PEONVAVEZに平滑化したタンク内圧PEONVAVEを、そしてタンク内圧の最大値DPEOMAXに平滑化したタンク内圧PEONVAVEをセットする。
【００５６】
一方、S901において検知禁止フラグF_EOLNGIDLが１のとき、エンジンオフ前に長時間の低速走行を行っている。このとき、ＥＣＵ100は、圧力急降下フラグF_QICKPDWNが１であるか否かを判定する。圧力急降下フラグF_QICKDWNは、タンク内圧の推移が他のルーチンによって監視され、圧力降下幅が所定の値よりも大きいときに１がセットされるフラグである。ここで、圧力急降下フラグに１がセットされているとき、ＥＣＵ100は、プロセスをS906へと進める。一方、圧力急降下フラグに１がセットされていないときは、ＥＣＵ100は、プロセスをS903へと進める。
【００５７】
S903において、タイマTDDPTLの値が、第１の判定時間TMDDPTL以下か否かを判定する。最初にこのステップを実行するとき、所定の時間まで経過しておらず、答えがＹｅｓであるので、ＥＣＵ100は、S904においてカウンタCEOPSMPが１以下か否かについて判定する。ここでカウンタCEOPSMPが１以下でないときは、S905においてカウンタCEOPSMPを減算する。一方、カウンタCEOPSMPが１以下であるときは、ステップS1001〜S1011を実行する（図１０）。
【００５８】
S1001において、時間パラメータCEDDPCALを１だけ増分する。S1002において、タンク内圧PEONVAVEからPEONVAVEの前回値PEONVAVEZを減算することにより、単位時間あたりの圧力変化量DPEONVを算出する。
【００５９】
S1003において、式（３）により、時間パラメータCEDDPCALの積算値ESIGMAXを算出する。
【００６０】
ESIGMAXの今回値=ESIGMAXの前回値+CEDDPCAL      （３）
S1004において、式（４）により、時間パラメータCEDDPCALを２乗した値の積算値ESIGMAX2を算出する。
【００６１】
ESIGMAX2の今回値=ESIGMAX2の前回値+CEDDPCAL×CEDDPCAL      （４）
S1005において、式（５）により、時間パラメータCEDDPCALと、圧力変化量DPEONVの積の積算値ESIGMAXYを算出する。
【００６２】
ESIGMAXYの今回値=ESIGMAXYの前回値+CEDDPCAL×DPEONV          （５）
S1006において、式（６）により、圧力変化量DPEONVの積算値ESIGMAYを算出する。
【００６３】
ESIGMAYの今回値=ESIGMAYの前回値+DPEONV              （６）
S1007において、S1001、S1003〜S1006で算出される時間パラメータCEDDPCAL、積算値ESIGMAX、ESIGMAX2、ESIGMAXY、およびESIGMAYを用い、式（７）に従って第１の傾きパラメータEDDPLSQAを算出する。
【数１】
2006077616.tif 000003
【００６４】
S1008において、最大圧力DPEOMAXと、タンク内圧PEONVAVEの大きい方を選択し、選択した大きい方を最大圧力DPEOMAXに代入する。
【００６５】
そして、S1009において、平滑化したタンク内圧PEONVAVEを平滑化したタンク内圧の前回値としてPEONVAVEZに代入する。そして、カウンタCEOPSMPに１０をセットして（S1010）第１の判定プロセスを終了する。
【００６６】
S903においてタイマTDDPTLの値が第１の判定時間TMDDPTLに達すると、ＥＣＵ100は、プロセスをS1101（図１１）へと進め、最大圧力DPEOMAXが、所定圧PDDPMIN以上であるか否かを判定する。その答えがＮｏであるならば、タンク内圧PTANKの上昇が不十分であることを示す。この場合、正確な判定はできないので、第１の判定終了フラグFEONVDDPJUDをゼロに設定する（S1112）。
【００６７】
S1101においてDPEOMAX≧PDDPMINならば、前述した式（２）により判定パラメータEODDPJUDを算出する（S1102）。
【００６８】
S1103において、大気圧PAに基づいて図１２に示すKEOP1JDXテーブルを参照し、補正係数KEOP1JDXを算出する。KEOP1JDXテーブルは、大気圧PAが低下するほど、補正係数KEOP1JDXが減少するように設定されている。図のPA1、PA2およびPA3は、たとえば、７７ｋＰａ（５８０ｍｍＨｇ）、８４ｋＰａ（６３０ｍｍＨｇ）、および９９ｋＰａ（７４０ｍｍＨｇ）に設定され、KX1およびKX2は、たとえば、それぞれ０．７５および０．８４に設定される。
【００６９】
S1104およびS1105において、補正係数KEOP1JDXを用い、式（８）および式（９）に従ってＯＫ判定用しきい値DDPJUDOKおよびＮＧ判定用しきい値DDPJUDNGを算出する。
【００７０】
DDPJUDOK=EODDPJDOK×KEOP1JDX      （８）
DDPJUDNG=EODDPJDNG×KEOP1JDX      （９）
ここで、EODDPJDOKおよびEODDPJDNGは、それぞれ、ＯＫ判定用のしきい値およびＮＧ判定用の所定のしきい値であり、前者は、後者より小さい値に設定される。
【００７１】
S1106において、判定パラメータEODDPJUDが、ＯＫ判定用しきい値DDPJUDOK以下かどうかを判断する。その答えがＹｅｓならば、蒸発燃料処理系150は正常であると判定し、第１の漏れ判定フラグFDDPLKをゼロに設定する（S1108）。
【００７２】
S1106においてEODDPJUD>DDPJUDOKならば、判定パラメータEODDPJUDがＮＧ判定用のしきい値DDPJUDNGより大きいかどうかを判断する（S1107）。この答えがＹｅｓならば、蒸発燃料処理系150にリークがあると判定し、第１の漏れ判定フラグFDDPLKを値１に設定する（S1109）。S1107において答えがＮｏならば、すなわちDDPJUDOK＜EODDPJUD≦DDPJUDNGならば、判定を保留し、保留フラグFDDPJDHDを値１に設定する（S1110）。
【００７３】
ステップS1111において、第１の判定終了フラグFEONVDDPJUDを値１に設定し、第１の判定が終了したことを示す。
【００７４】
第１の判定手法に従えば、タンク内圧PEONVAVEの時間についての２回微分値に相当する第１の傾きパラメータEDDPLSQAが算出される。さらに、第１の傾きパラメータEDDPLSQAを最大圧力DPEOMAXで除算することにより、判定パラメータEODDJUDが算出される。判定パラメータがＯＫ判定用しきい値DDPJUDOK以下ならば、蒸発燃料処理系150は正常と判定され、ＮＧ判定用しきい値DDPJUDNGより大きければ、リークがあると判定される。こうして、図６を参照して説明した第１の判定が実現される。
【００７５】
図１３および図１４は、第２のリーク判定実行プロセスのフローチャートである。
【００７６】
メインプログラムから第２のリーク判定実行プロセスが呼び出されると、S1301において、ベントシャット弁138が閉じている時に値１が設定されるフラグFVSVCPTCLを調べる。本実施形態において、エンジン回転数が所定の回転数を下回ったとき、エンジンが停止したものとみなされ、ベントシャット弁138は閉弁される。そして、他のルーチンによってフラグFVSVCPTCLは１に設定される構成となっている。フラグFVSVCPTCLが１ではないとき、ＥＣＵ100は、プロセスをS1401（図１４）へと進め、最小圧力の今回値DPEOMINおよび前回値DPEOMINZを、現在の停滞タンク内圧PEOAVDTMに設定する。そして、S1402において、タンク内圧の停滞時間を計測するアップカウントタイマTDTMSTYの値をゼロに設定する。
【００７７】
S1403において、図７(c)および(d)に示す回帰直線Ｌ１１およびＬ１２の傾きに相当する第２の傾きパラメータEODTMJUDを算出するための各種パラメータを初期化する。
【００７８】
S1404では、第２の漏れ判定フラグFDTMLK、判定不可フラグFDTMDISBL、第２の判定終了フラグFEONVDTMJUD、および圧力変化フラグFCHGのすべてをゼロに設定する。第２の判定フラグFDTMLKは、リークがあると判定されたときに値１に設定されるフラグである。
【００７９】
S1301においてフラグFVSVCPTCLが１のとき、ベントシャット弁138が閉じていることを示す。次にＥＣＵ100は、S1302において、中止フラグFEONVTMUPの値が１か否かを調べる。中止フラグFEONVTMUPが１のとき、判定不可フラグFDTMDISBLに値１を設定し（S1303）、該プロセスを終了する。
【００８０】
S1302において中止フラグFEONVTMUPが１ではないとき、ＥＣＵ100は、プロセスをS1304へと進め、許可フラグFEODTMEXの値が１かどうかを調べる。この答えがＮｏであるならば、S1401に進め、第２のリーク判定の実施を禁止する。
【００８１】
S1304においてFEODTMEXが１であるとき、ＥＣＵ100はプロセスをS1305へと進め、最小圧力の前回値DPEOMINZに、今回値DPEOMINを設定する。S1306において、最小圧力DPEOMINと、停滞タンク内圧PEOAVDTMのうちの小さい方を選択し、最小圧力DPEOMINに設定する。
【００８２】
S1307において、ＥＣＵ100は、最小圧力の今回値DPEOMINが前回値DPEOMINZと等しいか否かを判定する。今回値DPEOMINが前回値DPEOMINZと等しいとき、ＥＣＵ100は、タイマTDTMSTYの値が、所定値TDTMLK以上かどうかを判定する（S1308）。最初にこのステップを実行する時は答えがＮｏであるので、ＥＣＵ100はプロセスをS1309へと進め、停滞時間パラメータCTMSTYを１だけ増分する。停滞時間パラメータCTMSTYは、停滞時間TSTY（図７）に対応するパラメータである。次に、S1310において、圧力変化フラグFCHGが１かどうかを判断する。最初にこのステップを実行する時は答えがＮｏであるので、ＥＣＵ100は、プロセスをS1406（図１４）へと進める。
【００８３】
最小圧力DPEOMINが変化すると（すなわち停滞タンク内圧PEOAVDTMが低下すると）、S1307からS1314に進み、圧力変化フラグFCHGを値１に設定する。S1315において、圧力パラメータCDTMPCHGを１だけ増分する。圧力パラメータCDTMPCHGは、図６(c)または(d)の横軸に示すタンク内圧PTANKに対応するパラメータであるが、タンク内圧PTANKが低下するほど、圧力パラメータCDTMPCHGは増加する。したがって、第２の傾きパラメータEODTMJUDは、図７(c)の直線Ｌ１１に対応する値は負の値となり、図６(d)の直線Ｌ１２に対応する値は正の値となる。
【００８４】
S1316において、式（１０）により、圧力パラメータCDTMPCHGの積算値DTMSIGXを算出する。
【００８５】
DTMSIGXの今回値＝DTMSIGXの前回値＋CDTMPCHG      （１０）
S1317において、式（１１）により、圧力パラメータCDTMPCHGを２乗した値の積算値DTMSIGX2を算出する。
【００８６】
DTMSIGX2の今回値＝DTMSIGX2の前回値＋CDTMPCHG×CDTMPCHG      （１１）
次に、S1318において、ＥＣＵ100は、タイマTDTMSTYの値をゼロに戻し、プロセスをS1406へと進める。
【００８７】
圧力変化フラグFCHGが値１に設定された後に、S1307の答えがＹｅｓとなり、S1309を経てS1310に進む。このとき、S1310における答えがＹｅｓとなるので、S1311に進み、式（１２）により、停滞時間パラメータCTMSTYの積算値DTMSIGYを算出する。
【００８８】
DTMSIGYの今回値＝DTMSIGYの前回値＋CTMSTY      （１２）
S1312において、式（１３）により、圧力パラメータCDTMPCHGと停滞時間パラメータCTMSTYとの積の積算値DTMSIGXYを算出する。
【００８９】
DTMSIGXYの今回値＝DTMSIGXYの前回値＋CDTMPCHG×CTMSTY      （１３）
S1313において、圧力変化フラグFCHGをゼロに戻し、停滞時間パラメータCTMSTYをゼロに戻す。その後、S1406に進む。
【００９０】
S1406において、圧力パラメータCDTMPCHGが１より大きいかどうかを判断する。その答えがＮｏであるときは、回帰直線の傾きを求めることはできないので、該プロセスを終了する。CDTMPCHG>1ならば、圧力パラメータCDTMPCHG、積算値DTMSIGX、DTMSIGX2、DTMSIGYおよびDTMSIGXYを用い、式（１４）に従って第２の傾きパラメータEODTMJUDを算出する（S1407）。この実施形態では、最小圧力DPEOMINが変化する毎に圧力パラメータCDTMPCHGが１だけ増分されるので、圧力パラメータCDTMPCHGはサンプリングデータ数を示すパラメータでもあることに注意されたい。
【数２】
2006077616.tif 000004
【００９１】
S1408において、ＥＣＵ100は、第２の傾きパラメータEODTMJUDが、判定しきい値EODTMJDOKより大きいか否かを判定する。その答えがＹｅｓであるならば、リークがあると判定し、第２の漏れ判定フラグFDTMLKを値１に設定する。判定終了フラグFEONVDTMJUDを値１に設定し（S1411）、第２のリーク判定が終了したことを示す。
【００９２】
第２の傾きパラメータEODTMJUDが判定しきい値EODTMJDOK以下であるとき、ＥＣＵ100は、圧力パラメータCDTMPCHGが所定値DTMENBIT以上であるかどうかを判定する（S1409）。CDTMPCHG<DTMENBITであるならば、該プロセスを終了する。圧力パラメータCDTMPCHGが所定値DTMENBITに達すると、S1410に進み、第２の漏れ判定フラグFDTMLKをゼロに設定し、第２のリーク判定でリークが検出されなかったことを示す。さらに、第２の判定終了フラグFEONVDTMJUDに値１を設定する（S1410）。
【００９３】
また、S1308において、停滞時間を計測するタイマTDTMSTYの値が所定時間TDTMLK以上になったときは、リークがあると判定し、第２の漏れ判定フラグFDTMLKを１に設定し、第２の判定終了フラグFEONVDTMJUDを値１に設定する（S1405）。
【００９４】
このようにすることで、熱量パラメータである所定車速以上の走行時間が所定時間未満のときは、第１のリーク判定を禁止し、第２のリーク判定を行うことができる。
【００９５】
上述の構成により、内燃機関の停止時までに内燃機関から燃料タンクに与えられた熱量が小さく、燃料タンク内の燃料温度が十分に上昇していない可能性があるときは、蒸発燃料処理系の第１のリーク判定を禁止する。これにより、誤判定を回避でき、リーク判定精度を向上させることができる。
【図面の簡単な説明】
【００９６】
【図１】この発明の一実施形態に従う、エンジンおよびその制御装置の概略図。
【図２】この発明の一実施形態に従う、リーク判定装置の機能ブロック図。
【図３】この発明の一実施形態に従う、リーク判定を実行しているときのタンク内圧の推移を示す図。
【図４】この発明の一実施例に従う、タンク内圧の実測データを示すタイムチャート、および該実測データに基づいて算出される回帰直線を示す図。
【図５】この発明の一実施例に従う、リーク判定を実行する期間における最大圧力を説明するための図。
【図６】この発明の一実施例に従う、第１のリーク判定手法を説明するための図。
【図７】この発明の一実施例に従う、第２のリーク判定手法を説明するための図。
【図８】この発明の一実施例に従う、熱量パラメータ判定のプロセスのフローチャート。
【図９】この発明の一実施例に従う、第１のリーク判定を実行するプロセスのフローチャート。
【図１０】この発明の一実施例に従う、第１のリーク判定を実行するプロセスのフローチャート。
【図１１】この発明の一実施例に従う、第１のリーク判定を実行するプロセスのフローチャート。
【図１２】この発明の一実施例に従う、図１１において使用されるテーブルの一例を示す図。
【図１３】この発明の一実施例に従う、第２のリーク判定を実行するフローチャート。
【図１４】この発明の一実施例に従う、第２のリーク判定を実行するフローチャート。
【符号の説明】
【００９７】
１００  内燃機関
１０１  ＥＣＵ
１５０  蒸発燃料処理系
【図１】
2006077616.tif 000005
【図２】
2006077616.tif 000006
【図３】
2006077616.tif 000007
【図４】
2006077616.tif 000008
【図５】
2006077616.tif 000009
【図６】
2006077616.tif 000010
【図７】
2006077616.tif 000011
【図８】
2006077616.tif 000012
【図９】
2006077616.tif 000013
【図１０】
2006077616.tif 000014
【図１１】
2006077616.tif 000015
【図１２】
2006077616.tif 000016
【図１３】
2006077616.tif 000017
【図１４】
2006077616.tif 000018