(57)【要約】【課題】　密閉状態での蒸発燃料圧力のモニター装置においてスロッシングが発生したときにもこれらに影響されない真の圧力上昇分を求める。【解決手段】　燃料タンク（１）よりエンジンの吸気管（８）に至るパージ通路（２、４、６）の密閉状態での圧力を検出する手段（１３）と、この圧力に基づいて前記パージ通路の密閉状態での第１の圧力から時間的に後の第２の圧力までの圧力上昇分を計測する手段（２１）と、前記圧力から前記パージ通路の密閉状態での圧力変化速度を計算する手段（２１）と、このパージ通路の密閉状態での圧力変化速度に基づいて前記燃料タンク（１）内に発生するスロッシングによる前記第１の圧力から前記第２の圧力までの圧力変化量を推定する手段（２１）と、このスロッシングによる圧力変化量で前記第１の圧力から前記第２の圧力までの圧力上昇分を補正して補正圧力上昇分を求める手段（２１）とを備える。【選択図】　　　　図１
2004138052.tif 000002
【特許請求の範囲】
【請求項１】
　燃料タンクよりエンジンの吸気管に至るパージ通路の密閉状態での圧力を検出する圧力検出手段と、
　この圧力に基づいて前記パージ通路の密閉状態での第１の圧力から時間的に後の第２の圧力までの圧力上昇分を計測する圧力上昇分計測手段と、
　前記圧力から前記パージ通路の密閉状態での圧力変化速度を計算する圧力変化速度計算手段と、
　このパージ通路の密閉状態での圧力変化速度に基づいて前記燃料タンク内に発生するスロッシングによる前記第１の圧力から前記第２の圧力までの圧力変化量を推定するスロッシュ分圧力変化量推定手段と、
　このスロッシングによる圧力変化量で前記第１の圧力から前記第２の圧力までの圧力上昇分を補正して補正圧力上昇分を求める圧力上昇分補正手段と
　を備えることを特徴とする蒸発燃料圧力のモニター装置。
【請求項２】
　燃料タンクからエンジンの吸気通路に至る蒸発燃料のパージ通路と、
　このパージ通路の密閉状態での圧力を検出する圧力検出手段と、
　この圧力に基づいて前記パージ通路の密閉状態での第１の圧力から時間的に後の第２の圧力までの圧力上昇分を計測する圧力上昇分計測手段と、
　前記圧力から前記パージ通路の密閉状態での圧力変化速度を計算する圧力変化速度計算手段と、
　このパージ通路の密閉状態での圧力変化速度に基づいて前記燃料タンク内に発生するスロッシングによる前記第１の圧力から前記第２の圧力までの圧力変化量を推定するスロッシュ分圧力変化量推定手段と、
　このスロッシングによる圧力変化量で前記第１の圧力から前記第２の圧力までの圧力上昇分の計測値を補正して補正圧力上昇分を求める圧力上昇分補正手段と、
　この補正圧力上昇分に基づいてリークがあるか否かの判定を行うリーク判定手段と
　を備えることを特徴とする蒸発燃料処理装置の診断装置。
【請求項３】
　前記パージ通路の密閉状態での圧力変化速度は前記第１の圧力から前記第２の圧力までの圧力上昇中に減少することを特徴とする請求項２に記載の蒸発燃料処理装置の診断装置。
【請求項４】
　前記パージ通路は前記燃料タンクのベーパをキャニスタに導く第１通路と、このキャニスタとスロットルバルブ下流の吸気管とを連通する第２通路とからなり、この第２通路を開閉するパージコントロールバルブと、前記キャニスタの大気開放口を開閉するドレンカットバルブとを備え、これらパージコントロールバルブ、ドレンカットバルブを全閉とすることで前記パージ通路を密閉状態とすることを特徴とする請求項２または３に記載の蒸発燃料処理装置の診断装置。
【請求項５】
　前記スロッシュ分圧力変化量推定手段は、
　前記パージ通路の密閉状態での圧力変化速度を所定期間毎に計算する圧力変化速度計算手段と、
　このパージ通路の密閉状態での圧力変化速度を用いて前記パージ通路の密閉状態での圧力変化速度の最小値を更新する圧力変化速度最小値更新手段と、
　これら所定期間毎の圧力変化速度とその最小値との差をスロッシュ分圧力変化速度として計算するスロッシュ分圧力変化速度計算手段と、
　このスロッシュ分圧力変化速度を前記第１の圧力を計測するタイミングから前記第２の圧力を計測するタイミングまでのあいだ積算した値を前記スロッシュ分圧力変化量として計算するスロッシュ分圧力変化速度積算手段と
　からなることを特徴とする請求項２から４までのいずれか一つに記載の蒸発燃料処理装置の診断装置。
【請求項６】
　前記第１の圧力は前記パージ通路に前記スロットルバルブ下流の負圧を用いて調整される第１の負圧であり、前記第２の圧力はこの第１の負圧より所定の圧力上昇した時点での前記パージ通路の圧力であることを特徴とする請求項２から５までのいずれか一つに記載の蒸発燃料処理装置の診断装置。
【請求項７】
　初期圧力と前記パージ通路の密閉状態での圧力との差の絶対値が、前記第１の負圧の絶対値から前記スロッシングによる圧力変化量と前記所定の圧力とを差し引いた値に等しくなったときにリークダウン期間が経過したと判定することを特徴とする請求項６に記載の蒸発燃料処理装置の診断装置。
【請求項８】
　前記補正圧力上昇分を前記リークダウン期間で割った値をリーク診断係数として計算し、このリーク診断係数が所定値より大きい場合にリークがあると判定することを特徴とする請求項７に記載の蒸発燃料処理装置の診断装置。
【請求項９】
　前記スロッシングによる圧力変化量が所定量を上回る場合に前記リークがあるか否かの判定を中止することを特徴とする請求項２から８までのいずれか一つに記載の蒸発燃料処理装置の診断装置。
【請求項１０】
　燃料タンクからエンジンの吸気管に至る蒸発燃料のパージ通路と、
　このパージ通路の密閉状態での圧力を検出する圧力検出手段と、
　この圧力に基づいて前記パージ通路の密閉状態での第１の圧力から時間的に後の第２の圧力までの圧力上昇分を計測する圧力上昇分計測手段と、
　前記圧力上昇分の計測区間とは異なる区間において前記圧力に基づいて前記パージ通路の密閉状態での第３の圧力から時間的に後の第４の圧力までの圧力上昇分を温度上昇補正量として計測する温度上昇補正量計測手段と、
　前記圧力から前記パージ通路の密閉状態での圧力変化速度を計算する圧力変化速度計算手段と、
　このパージ通路の密閉状態での圧力変化速度に基づいて前記燃料タンク内に発生するスロッシングによる前記第３の圧力から前記第４の圧力までの圧力変化量を推定するスロッシュ分圧力変化量推定手段と、
　このスロッシングによる圧力変化量で前記温度上昇補正量を修正して修正温度上昇補正量を求める温度上昇補正量修正手段と、
　この修正温度上昇補正量で前記第１の圧力から前記第２の圧力までの圧力上昇分の計測値を補正して補正圧力上昇分を求める圧力上昇分補正手段と、
　この補正圧力上昇分に基づいてリークがあるか否かの判定を行うリーク判定手段と
　を備えることを特徴とする蒸発燃料処理装置の診断装置。
【請求項１１】
　前記パージ通路の密閉状態での圧力変化速度は前記第３の圧力から前記第４の圧力までの圧力上昇中に減少することを特徴とする請求項１０に記載の蒸発燃料処理装置の診断装置。
【請求項１２】
　前記スロッシュ分圧力変化量推定手段は、
　前記パージ通路の密閉状態での圧力変化速度を所定期間毎に計算する圧力変化速度計算手段と、
　このパージ通路の密閉状態での圧力変化速度を用いて前記パージ通路の密閉状態での圧力変化速度の最小値を更新する圧力変化速度最小値更新手段と、
　これら所定期間毎の圧力変化速度とその最小値との差をスロッシュ分圧力変化速度として計算するスロッシュ分圧力変化速度計算手段と、
　このスロッシュ分圧力変化速度を前記第３の圧力を計測するタイミングから前記第４の圧力を計測するタイミングまでのあいだ積算した値を前記スロッシュ分圧力変化量として計算するスロッシュ分圧力変化速度積算手段と
　からなることを特徴とする請求項１０または１１に記載の蒸発燃料処理装置の診断装置。
【請求項１３】
　前記第１の圧力は前記パージ通路に前記スロットルバルブ下流の負圧を用いて調整される第１の負圧であり、前記第２の圧力はこの第１の負圧より所定の圧力上昇した時点での前記パージ通路の圧力であることを特徴とする請求項１０から１２までのいずれか一つに記載の蒸発燃料処理装置の診断装置。
【請求項１４】
　初期圧力と前記パージ通路の密閉状態での圧力との差の絶対値が、前記第１の負圧の絶対値から前記所定の圧力を差し引いた値に等しくなったときにリークダウン期間が経過したと判定することを特徴とする請求項１３に記載の蒸発燃料処理装置の診断装置。
【請求項１５】
　前記補正圧力上昇分を前記リークダウン期間で割った値をリーク診断係数として計算し、このリーク診断係数が所定値より大きい場合にリークがあると判定することを特徴とする請求項１４に記載の蒸発燃料処理装置の診断装置。
【請求項１６】
　前記スロッシングによる圧力変化量が所定量を上回る場合に前記リークがあるか否かの判定を中止することを特徴とする請求項１０から１５までのいずれか一つに記載の蒸発燃料処理装置の診断装置。
【請求項１７】
　前記第３の圧力は大気圧であり、前記第４の圧力はこの第３の圧力より所定の期間が経過した時点での前記パージ通路圧力であることを特徴とする請求項１４または１５に記載の蒸発燃料処理装置の診断装置。
【請求項１８】
　前記リークダウン期間が経過した後に前記所定の期間を設けることを特徴とする請求項１７に記載の蒸発燃料処理装置の診断装置。
【請求項１９】
　前記修正温度上昇補正量に前記リークダウン期間と前記所定の期間との比を乗じることを特徴とする請求項１７または１８に記載の蒸発燃料処理装置の診断装置。
【請求項２０】
　流路圧力をデジタル値で扱う場合に、スロッシングによる圧力変化量の推定値より、量子化誤差分を差し引くことを特徴とする請求項２から１９までのいずれか一つに記載の蒸発燃料処理装置の診断装置。
【発明の詳細な説明】
【技術分野】
【０００１】
　この発明は蒸発燃料圧力のモニター装置及び蒸発燃料処理装置の診断装置に関する。
【背景技術】
【０００２】
　燃料タンク内で発生する燃料蒸気が大気中に放出されるのを防止するため、燃料タンクとキャニスタを連通する第１通路を介して、その燃料蒸気を空気と共にキャニスタに導いて（この燃料蒸気と空気の交じったガスはベーパといわれる。）燃料粒子だけをキャニスタ内の活性炭に吸着させ、残りの空気はキャニスタの大気開放口から放出する一方で、所定の運転条件になるとパージ通路（キャニスタに連通しスロットルバルブ下流の吸気管に開口する通路）に設けたパージコントロールバルブを開き、スロットルバルブ下流で大気圧よりも低くなる吸気管圧力（この大気圧より低い圧力を以下「負圧」という。）を利用して、大気開放口よりキャニスタに入ってくる新気で燃料粒子を、活性炭から離脱させてスロットルバルブ下流の吸気管に導いて燃焼させるようにした蒸発燃料処理装置を設けている。
【０００３】
　この場合に、燃料タンクより吸気管までのパージ通路の途中にリーク孔があいたり、パイプの接合部のシールが不良になると、燃料蒸気が大気中に放出されるので、リーク診断が行われている。すなわち、燃料タンクより吸気管までのパージ通路を閉空間とし、かつその閉空間を大気圧に対して相対的に圧力差のある状態とした後の圧力変化をみればリークの有無がわかることから、燃料タンクより吸気管までのパージ通路を閉空間とするためキャニスタの大気開放口にこの開放口を開閉するドレンカットバルブを、また閉空間に閉じ込められた気体の圧力変化をみるため圧力センサをそれぞれ設け、吸気管圧力（負圧）を利用して燃料タンクより吸気管までのパージ通路を一定圧まで減圧するプルダウン処理と、その処理後に燃料タンクより吸気管までのパージ通路を閉空間として減圧した状態で保持するリークダウン処理とを続けて行い、リークダウン処理時に圧力センサを用いて燃料タンクより吸気管までのパージ通路の圧力をサンプリングし、この圧力サンプリング値に基づいてリークがあるか否かの判定を行うようにしている。
【０００４】
　こうした蒸発燃料処理装置を備えるエンジンが車載された場合に、スラローム走行などにより燃料タンク内で燃料の跳び跳ねや液面の揺動（これらの現象を「スロッシング」あるいは「スロッシュ」という。）が生じると、ベーパが急激に発生し、燃料タンクより吸気管までのパージ通路の内圧が上昇する。このスロッシングが発生したときにまで負圧を用いてのリーク診断を行ったのでは、リークがあるとの誤判定が生じることがあるので、圧力センサによりスロッシングが発生したか否かを判定し、スロッシングが発生したときにリーク診断を一時的に中断するものがある（特許文献１参照）。
【特許文献１】特開平６−１５９１５７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
　ところで、スロッシングがリーク診断の精度を落とす理由は、スロッシングによる圧力変化量が誤差として生じるためである。この観点より、本発明の発明者が実験を行い、スロッシングの発生したリークダウン時の圧力波形を検討したところ、リークダウン期間中のスロッシングによる圧力変化量を知ることができれば、この分を圧力サンプリング値より差し引く（補正）ことによって真のリークダウン期間の圧力変化分を知ることができる、つまり圧力サンプリング値より誤差を無くすことができるという知見を初めて得た。
【０００６】
　これについて図５を参照しながら説明すると、同図の左半分にはスロッシングの発生していないリークダウン時（通常リークダウン時）の、また右半分にはリークダウンの途中にスロッシングが発生したときの
　１）流路圧力（燃料タンクより吸気管までのパージ通路の圧力）、
　２）その流路圧力の所定時間当たりの変化量（圧力変化速度）、
　３）スロッシュ分圧力変化速度（スロッシュだけによる圧力変化速度）
の各波形をモデル的に示す。
【０００７】
　左側に示す通常リークダウン時には圧力変化速度は常に減少し（図５左側中段参照）、リーク孔があるときにもこの変化速度が速くなることはない。また、スロッシングが生じていないので、スロッシュ分圧力変化速度が増加することもない（図５左側下段参照）。
【０００８】
　一方、リークダウンの途中にスロッシングが発生したときには燃料タンク内の燃料蒸気の発生速度が過渡的に速くなり、スロッシングが収まると、元に戻る。こうしたスロッシングよる燃料タンク内燃料蒸気の発生速度の一時的な増加に伴って、圧力変化速度の波形の中に上向きの突起が現れている（図５右側中段参照）。
【０００９】
　この場合に、スロッシングが発生する以前に測定されていた圧力変化速度とその値を超えた圧力変化速度との差がスロッシングによる影響で圧力変化速度が大きくなったもの、つまりその差の圧力変化速度はスロッシュ分圧力変化速度であると考えることができる（図５右側中段参照）。そして、このスロッシュ分圧力変化速度を積算すればその積算値はスロッシングによる圧力変化量そのものを表すことになる（図６最下段参照）。
【００１０】
　一方、燃料タンク１の温度が上昇すると、燃料の蒸発量が増大し、燃料タンク１からパージコントロールバルブ１１までのパージ通路の圧力が上昇する。リークダウン処理によるリーク診断をこのような状態で行なうことは、診断結果に誤差をもたらす。そこで、リーク診断に用いるリークダウン時の圧力変化分より温度上昇の影響を排除するために、リークダウン処理の終了後に図１４に示すようなベーパモニタリング処理を行なっている。ここで、ベーパモニタリング処理とは、バージコントロールバルブを閉じた状態でドレンカットバルブを開いて燃料タンクからバージコントロールバルブまでのパージ通路に大気を導入した後、ドレンカットバルブを、ｔ３の期間（ベーパモニタリング期間）続けて閉じて燃料タンクからバージコントロールバルブまでのパージ通路を密閉し、この密閉状態におけるｔ３の期間での圧力変化分を温度上昇補正量（ＤＶＰ８）として計測する処理のことである。そして、計測したリークダウンでの圧力変化分（ＤＶＰ４−ＤＶＰ５）からこの温度上昇補正量（ＤＶＰ８）を差し引くことによってリークダウンでの圧力変化分を補正する。
【００１１】
　こうしたベーパモニタリング期間ｔ３中にスロッシングが発生するときには、計測されるベーパモニタリング期間での圧力変化分がスロッシングが発生していないときより大きくなり、結果的にリーク診断に誤診が生じる。
【００１２】
　そこで本発明は、リークダウン期間やベーパモニタリング期間といった密閉状態での蒸発燃料圧力のモニター装置においてスロッシングが発生したときにもこれらに影響されない真の圧力上昇分を求めることが可能な装置を提供することを目的とする。
【００１３】
　また、得られた真の圧力上昇分に基づいてリーク診断を行うことにより、スロッシングが発生してもリーク診断期間を延ばすことなくリーク診断を行い得る装置を提供することをも目的とする。
【００１４】
　これに対して、上記の従来装置は流路圧力が低下していくプルダウン処理時にスロッシングが生じたときの対策を行っているに過ぎないので、リークダウン処理時のスロッシングに対しては、従来装置をそのまま適用することができない。すなわち、流路圧力が低下していくプルダウン処理時にスロッシングが生じると流路圧力が大きくなり、スロッシングが無くなると流路圧力はピークを採ったあとに小さくなりスロッシングが発生する前の値へと戻り、その値から更に小さくなってゆく。従って、従来装置では、それまで低下していた流路圧力が途中で上昇したとき、その上昇タイミングを起点として、流路圧力がスロッシング発生前の値へと戻るまでの期間をスロッシング発生期間であるとみなしている。
【００１５】
　しかしながら、リークダウン処理時にスロッシングが発生したときには図５右側、図６に示したように流路圧力は上昇していくばかりであり、スロッシングがやんだ後にスロッシング発生前の値へと戻るということがあり得ないので、従来装置によるスロッシング判定方法では、リークダウン処理時のスロッシングそのものを判定することができない。
【００１６】
　また、本発明は、スロッシングが発生したときそのスロッシングによる圧力変化量を推定することによってリーク診断期間を延ばすことなくリーク診断を行うことを可能としたものであり、スロッシングが発生したときそのスロッシングによる圧力変化量を推定することをしていないためにスロッシングが発生した期間だけリーク診断期間を延ばすようにした従来装置とは技術的思想が異なる。
【課題を解決するための手段】
【００１７】
　本発明は、燃料タンク（１）よりエンジンの吸気管（８）に至るパージ通路（２、４、６）の密閉状態での圧力（Ｐ）を検出する圧力検出手段（１３）を備え、この圧力（Ｐ）に基づいて前記パージ通路の密閉状態での第１の圧力から時間的に後の第２の圧力までの圧力上昇分（ＤＶＰ４−ＤＶＰ５、ＤＶＰ８）を計測し、前記圧力（Ｐ）から前記パージ通路の密閉状態での圧力変化速度（ＤＥＶＰＲＳ２）を計算し、このパージ通路の密閉状態での圧力変化速度（ＤＥＶＰＲＳ２）に基づいて前記燃料タンク（１）内に発生するスロッシングによる前記第１の圧力から前記第２の圧力までの圧力変化量（ＤＶＰＩＧＬ２）を推定し、このスロッシングによる圧力変化量（ＤＶＰＩＧＬ２）で前記第１の圧力から前記第２の圧力までの圧力上昇分（ＤＶＰ４−ＤＶＰ５、ＤＶＰ８）を補正して補正圧力上昇分（ＤＶＰ４−ＤＶＰ５Ａ、ＤＶＰ８Ａ）を求めるように構成する。
【００１８】
　また本発明は、燃料タンク（１）からエンジンの吸気通路（８）に至る蒸発燃料のパージ通路（２、４、６）と、このパージ通路（２、４、６）の密閉状態での圧力（Ｐ）を検出する圧力検出手段（１３）とを備え、この圧力（Ｐ）に基づいて前記パージ通路の密閉状態での第１の圧力（ＤＶＰ４）から時間的に後の第２の圧力（ＤＶＰ５）までの圧力上昇分を計測し、前記圧力（Ｐ）から前記パージ通路の密閉状態での圧力変化速度（ＤＥＶＰＲＳ２）を計算し、このパージ通路の密閉状態での圧力変化速度（ＤＥＶＰＲＳ２）に基づいて前記燃料タンク（１）内に発生するスロッシングによる前記第１の圧力から前記第２の圧力までの圧力変化量（ＤＶＰＩＧＬ２）を推定し、このスロッシングによる圧力変化量（ＤＶＰＩＧＬ２）で前記第１の圧力（ＤＶＰ４）から前記第２の圧力（ＤＶＰ５）までの圧力上昇分の計測値（ＤＶＰ４−ＤＶＰ５）を補正して補正圧力上昇分（ＤＶＰ４−ＤＶＰ５Ａ）を求め、この補正圧力上昇分（ＤＶＰ４−ＤＶＰ５Ａ）に基づいてリークがあるか否かの判定を行うように構成する。
【００１９】
　さらに本発明は、燃料タンク（１）からエンジンの吸気管（８）に至る蒸発燃料のパージ通路（２、４、６）と、このパージ通路（２、４、６）の密閉状態での圧力（Ｐ）を検出する圧力検出手段（１３）とを備え、この圧力（Ｐ）に基づいて前記パージ通路の密閉状態での第１の圧力（ＤＶＰ４）から時間的に後の第２の圧力（ＤＶＰ５）までの圧力上昇分を計測し、前記圧力上昇分の計測区間とは異なる区間において前記圧力（Ｐ）に基づいて前記パージ通路の密閉状態での第３の圧力から時間的に後の第４の圧力までの圧力上昇分を温度上昇補正量（ＤＶＰ８）として計測し、前記圧力（Ｐ）から前記パージ通路の密閉状態での圧力変化速度（ＤＥＶＰＲＳ２）を計算し、このパージ通路の密閉状態での圧力変化速度（ＤＥＶＰＲＳ２）に基づいて前記燃料タンク（１）内に発生するスロッシングによる前記第３の圧力から前記第４の圧力までの圧力変化量（ＤＶＰＩＧＬ２）を推定し、このスロッシングによる圧力変化量（ＤＶＰＩＧＬ２）で前記温度上昇補正量（ＤＶＰ８）を修正して修正温度上昇補正量（ＤＶＰ８Ａ）を求め、この修正温度上昇補正量（ＤＶＰ８Ａ）で前記第１の圧力（ＤＶＰ４）から前記第２の圧力（ＤＶＰ５）までの圧力上昇分の計測値（ＤＶＰ４−ＤＶＰ５）を補正して補正圧力上昇分（ＤＶＰ４−ＤＶＰ５−ＤＶＰ８Ａ）を求め、この補正圧力上昇分（ＤＶＰ４−ＤＶＰ５−ＤＶＰ８Ａ）に基づいてリークがあるか否かの判定を行うように構成する。
【発明の効果】
【００２０】
　本発明によれば、燃料タンクよりエンジンの吸気管に至るパージ通路の密閉状態での第１の圧力から時間的に後の第２の圧力までの圧力上昇分（ＤＶＰ４−ＤＶＰ５、ＤＶＰ８）を計測する一方で、スロッシングによる第１の圧力から第２の圧力までの圧力変化量（ＤＶＰＩＧＬ２）を推定し、このスロッシングによる圧力変化量（ＤＶＰＩＧＬ２）で第１の圧力から第２の圧力までの圧力上昇分（ＤＶＰ４−ＤＶＰ５、ＤＶＰ８）を補正して補正圧力上昇分（ＤＶＰ４−ＤＶＰ５Ａ、ＤＶＰ８Ａ）を求めるようにしたので、リークダウン処理中やベーパモニタリング処理中にスロッシングが発生してもリークダウン期間やベーパモニタリング期間の圧力上昇分を精度よく求めることができる。
【００２１】
　また本発明によれば、リークダウン時のスロッシングの影響を受けない圧力上昇分（ＤＶＰ４−ＤＶＰ５Ａ）を用いてリークがあるか否かの判定を行うことで、リークが存在していない状態でスロッシングの影響を受けてリークが存在するという誤診断を回避できる。またスロッシングが発生している場合でもリークがあるか否かの判定を行うことが可能になりリーク診断頻度を向上できる。
【００２２】
　さらに本発明によれば、ベーパモニタリング時のスロッシングの影響を受けない圧力上昇分を温度上昇補正量（ＤＶＰ８Ａ）として求め、この補正量でリークダウン時の圧力上昇分の計測値（ＤＶＰ４−ＤＶＰ５）を補正した値を用いてリークがあるか否かの判定を行うことで、さらに燃料タンクの温度上昇中にスロッシングの影響を受けてリークが存在するという誤診断を回避できる。
【発明を実施するための最良の形態】
【００２３】
　以下、本発明の実施形態を添付図面に基づいて説明する。
【００２４】
　図１はエンジンの制御システム図で、当該エンジンは図示しない車両に搭載されている。
【００２５】
　図１において、１は燃料タンク、４はキャニスタで、燃料タンク１上部のベーパは、通路（第１通路）２を介してキャニスタ４に導かれ、燃料粒子だけがキャニスタ４内の活性炭４ａに吸着され、残りの空気はキャニスタ４の鉛直下部（図ではキャニスタ４の上部に示している）に設けた大気開放口５より外部に放出される。
【００２６】
　キャニスタ４は、スロットルバルブ７下流の吸気管８とも通路（第２通路）６で連通され、この通路６にステップモータで駆動される常閉のパージコントロールバルブ１１が設けられる。一定の条件（たとえば暖機後の低負荷域）で、エンジンコントローラ２１からの信号を受けてパージコントロールバルブ１１が開かれると、スロットルバルブ７下流に大きく発達する負圧によりキャニスタ４の大気開放口５から新気がキャニスタ４内に導かれる。この新気で活性炭４ａから燃料粒子が新気とともにパージ通路６を介して吸気管８内に導入され、燃焼室で燃やされる。
【００２７】
　一方、キャニスタ４の大気開放口５に常開のドレンカットバルブ１２が設けられる。このドレンカットバルブ１２は、後述するリーク診断時に閉じて、パージコントロールバルブ１１より燃料タンク１までの流路（パージ通路２、４、６）を閉空間とするために必要となるものである。
【００２８】
　また、キャニスタ４とパージコントロールバルブ１１のあいだの通路６に圧力センサ１３が設けられ、この圧力センサ１３はリーク診断時に閉空間とされた流路の圧力（絶対圧）に比例した電圧を図２に示したように出力する。
【００２９】
　マイコンからなるエンジンコントローラ２１では、上記２つのバルブ（パージコントロールバルブ１１とドレンカットバルブ１２）を開閉制御することで、燃料タンク１よりパージコントロールバルブ１１までの流路にリークがあるか否かの診断をエンジンの運転中に行う。リーク診断の頻度は、１回の運転で１回程度が目安である。
【００３０】
　ここで、プルダウン処理とリークダウン処理とからリーク診断の概要を図３と図４を参照ながら説明する。
【００３１】
　図３と図４は負圧を用いてのリーク診断時に流路圧力の変化がどうなるかを示したもので、図３がリークなしのときの、また図４がリークありのときの波形である。
〈１〉プルダウン処理
　ａ）吸気管８内の負圧が十分ある状態（たとえば大気圧を基準として−３９．９ｋＰａより小さい値の状態）になると診断条件が成立したと判断し、パージコントロールバルブ１１を閉じて一時パージを停止し、燃料タンク１からパージコントロールバルブ１１までの流路をキャニスタ４の大気開放口５を介して大気開放状態とし、そのときの流路圧力Ｐつまり大気圧を初期圧力Ｐ0として記憶しておく。
【００３２】
　ｂ）大気開放口５を閉じると共にパージコントロールバルブ１１を開いて、スロットルバルブ７下流の吸気管８内の負圧を導き、燃料タンク１からパージコントロールバルブ１１までの流路を減圧する。
【００３３】
　ｃ）初期圧力Ｐ0と流路圧力Ｐの差（この差を、以下単に「圧力差」という。）Ｐ0−Ｐをみてこれが所定値ｐ２（たとえばｐ２は＋２〜３ｋＰａ）以上になったときに、パージコントロールバルブ１１を閉じる。これでプルダウン処理を終了する。なお、プルダウン処理中は継続してスロットルバルブ７下流の吸気管８内に所定値以上の負圧がなければならない。
〈２〉リークダウン処理
　ａ）パージコントロールバルブ１１の閉弁後にガス流動が停止して圧力損失がなくなる時間（遅延時間）ｔ５（たとえば３〜５秒）が経過したときの圧力差Ｐ0−Ｐをリークダウン処理開始時圧力ＤＶＰ４［ｋＰａ］としてサンプリング（計測）する。ＤＶＰ４は実際に引けた圧力を表す。
【００３４】
　ｂ）圧力差Ｐ0−Ｐがリークダウン処理開始時圧力ＤＶＰ４から所定値ｐ３（たとえば＋０．５〜２．０ｋＰａ）差し引いた値まで減少したときに圧力差Ｐ0−Ｐをリークダウン処理終了時圧力ＤＶＰ５［ｋＰａ］として、また圧力差Ｐ0−Ｐがリークダウン処理開始時圧力ＤＶＰ４からリークダウン処理終了時圧力ＤＶＰ５に変化するまでの所要期間をリークダウン期間ＤＴＩＭＥ［ｓｅｃ］としてサンプリング（計測）する。
【００３５】
　ｃ）リークダウン処理開始時圧力ＤＶＰ４とリークダウン処理終了時圧力ＤＶＰとの差（リークダウン期間の圧力変化分）、すなわちｐ３をリークダウン期間ＤＴＩＭＥで除した値をリーク診断指標ＤＶＢＴとして求め、このリーク診断指標ＤＶＢＴとスライスレベルＳＬ２を比較する。リーク診断指標ＤＶＢＴがスライスレベルＳＬ２（０．８〜１．１ｋＰａ）を超えていればリークがあると、これに対してリーク診断指標ＤＶＢＴがスライスレベルＳＬ２以下であればリークなしと判定する。
【００３６】
　本発明では、このようなリーク診断を前提として、さらにリークダウン時に発生するスロッシングを考慮する。これを図５を参照しながら説明すると、同図の左側は通常リークダウン時の、また右側はリークダウンの途中にスロッシングが発生したときの
　１）流路圧力、
　２）その流路圧力の所定時間当たりの変化量（圧力変化速度）、
　３）スロッシュ分圧力変化速度（スロッシュだけによる圧力変化速度）
の各波形をモデル的に示している。
【００３７】
　通常リークダウン時には圧力変化速度は常に減少し（図５左側中段参照）、リーク孔があるときにもこの変化速度が速くなることはない。また、スロッシングが発生していないためため、スロッシュ分圧力変化速度が増加することはない（図５左側下段参照）。
【００３８】
　これに対して、リークダウンの途中にスロッシングが発生したときには燃料タンク内燃料蒸気の発生速度が過渡的に速くなり、スロッシングが収まると、元に戻る。こうしたスロッシングによる燃料タンク内燃料蒸気の発生速度の一時的な増加に伴って、圧力変化速度の波形の中に突起が現れている（図５右側中段参照）。このため、スロッシュ分圧力変化速度に一時的な増加がみられる（図５右側下段参照）。
【００３９】
　この結果、図５右側上段に示す流路圧力の波形に、通常リークダウン時の流路圧力（一点鎖線参照）を重ねてみると、リークダウンの途中にスロッシングが発生したときの流路圧力（実線参照）のほうが、通常リークダウン時の流路圧力よりも上方へ大きく戻っている。従って、スロッシングが発生したときの流路圧力をそのまま用いてリーク診断を行ったのでは、実線と一点鎖線との差の流路圧力分の誤差が流路圧力のサンプリング値に生じてリーク診断の精度が低下する。
【００４０】
　このため本発明では、リークダウン処理中にスロッシングによる圧力変化量を推定する。すなわち、リークダウン処理中に流路圧力の所定期間（たとえば２秒）当たりの変化量を圧力変化速度ＤＥＶＰＲＳ２として所定期間毎（たとえば１００ｍｓ毎）に計測し、この圧力変化速度の最小値ＥＶＬＫＭＮ２を所定期間毎に更新し、リークダウン処理中の圧力変化速度ＤＥＶＰＲＳ２と圧力変化速度の最小値ＥＶＬＫＭＮ２との差をスロッシュ分圧力変化速度ＤＬＴＰ２として算出し（図６下から２段目参照）、そのスロッシュ分圧力変化速度ＤＬＴＰ２をリークダウン処理中に積分してスロッシュ分補正値ＤＶＰＩＧＬ２（＝スロッシュ分圧力変化量）を求める。これが、図６最下段に示した値である。そして、図６第３段目に示したように、リークダウン処理終了時圧力ＤＶＰ５（○で示す）からこのスロッシュ分補正値ＤＶＰＩＧＬ２を差し引いた値をスロッシュ分補正後リークダウン処理終了時圧力ＤＶＰ５Ａ（●で示す）として計算する。
【００４１】
　この後の処理は従来と同様である。すなわち、リークダウン処理開始時圧力ＤＶＰ４より、このスロッシュ分補正後リークダウン処理終了時圧力ＤＶＰ５Ａを差し引いた圧力変化量、すなわちｐ３をリークダウン期間ＤＴＩＭＥで除した値をリーク診断指標ＤＶＰＢＴとして求め、このリーク診断指標ＤＶＰＢＴに基づいてリークがあるか否かの判定を行う。
【００４２】
　エンジンコントローラ２１で行われるこれらの内容を以下のフローチャートに基づいて詳述する。
【００４３】
　図７はプルダウン処理をを行うためのもので、このルーチンは一定時間毎に実行する。
【００４４】
　ステップ１ではリーク診断条件が成立しているかどうかみる。リーク診断条件には吸気管８内の負圧が前述の（１）ａ）の条件を満たすこと、後述のリーク診断中止フラグ≠１及びリーク診断終了フラグ≠１であることが含まれる。
【００４５】
　リーク診断条件が成立すればステップ２に進み診断許可フラグの状態をみる。診断許可フラグはゼロに初期設定されているので、診断許可フラグ＝０であれば今回初めてリーク診断条件が成立したと判断する。このときにはステップ３、４に進みパージコントロールバルブ１１を閉じると共にドレンカットバルブ１２を開いてパージコントロールバルブ１１より燃料タンク１までの流路を大気に開放した後、圧力センサ１３により検出される流路圧力Ｐ（＝大気圧）を初期圧力Ｐ0としてメモリ（ＲＡＭ）に記憶する。このように、プルダウン処理開始直前の流路圧力を記憶させておくことで、プルダウン処理開始直前の流路圧力が診断のたびに相違しても、リーク診断の判定精度に影響しないようにすることができる。
【００４６】
　ステップ５では診断許可フラグ＝１とする。ステップ６ではパージコントロールバルブ１１を開きドレンカットバルブ１２を閉じる。これにより、通路６にスロットルバルブ７下流の吸気管８内の負圧が導かれ、燃料タンク１からパージコントロールバルブ１１までの流路の減圧が開始される。
【００４７】
　次回には診断条件が成立しかつ診断許可フラグ＝１であるのでステップ１、２よりステップ７に進み圧力差Ｐ0−Ｐと所定値ｐ２を比較する。所定値ｐ２は上記のように２〜３ｋＰａ程度を設定している。圧力差Ｐ0−Ｐが所定値ｐ２に満たない場合には圧力差Ｐ0−Ｐが所定値ｐ２以上となるまでステップ６の操作を繰り返す。圧力差Ｐ0−Ｐが所定値ｐ２以上となったところでステップ８に進んでパージコントロールバルブ１１をも閉じた後、プルダウン処理のルーチンを終了する。
【００４８】
　図８、図９はプルダウン処理に続けて負圧を用いてのリーク診断を行うためのもので、一定時間毎（たとえば１００ｍｓ毎）に実行する。
【００４９】
　ステップ１１では、プルダウン処理が終了したか否かをみる。リーク診断はプルダウン処理が完了してから行うので、プルダウン処理が完了していない場合には、他のステップの操作に進むことなくルーチンを終了する。
【００５０】
　プルダウン処理が終了していれば、リークダウン処理に進む。このときにはステップ１２でｔ５経過フラグ（ゼロに初期設定）をみる。ｔ５経過フラグはリークダウン期間の開始から遅延時間ｔ５が経過したかどうかを示すフラグである。ｔ５経過フラグ＝０の場合には、ステップ１３に進みプルダウン処理終了タイミングでパージコントロールバルブ１１を閉じてから所定時間ｔ５（たとえば３〜５秒）が経過したか否かみる。ｔ５は、プルダウン終了タイミングでパージコントロールバルブ１１を閉じたタイミングより、その後にガス流動が停止して圧力損失がなくなるまでの遅延時間を与えるものである（図３、図４参照）。所定時間ｔ５が経過していなければ他のステップの操作に進むことなくルーチンを終了する。
【００５１】
　ｔ５が経過したときにはステップ１４で圧力差Ｐ0−Ｐをリークダウン開始時圧力ＤＶＰ４［ｋＰａ］としてメモリ（ＲＡＭ）に記憶する。同時にエンジンコントローラ２１に内蔵のタイマを起動し、タイマ値のカウントアップを開始する。ステップ１５ではｔ５経過フラグ＝１としてルーチンを終了する。
【００５２】
　ｔ５経過フラグ＝１とすることにより次回制御時にはステップ１２よりステップ１６に進み、圧力差Ｐ0−ＰとＤＶＰ４−ｐ３−ＤＶＰＩＧＬ２とを比較する。ＤＶＰＩＧＬ２の初期値はゼロである。圧力差Ｐ0−ＰがＤＶＰ４−ｐ３−ＤＶＰＩＧＬ２以下である場合は、リークダウン期間ＤＴＩＭＥが経過していることを意味する。この場合には図９のステップ２０〜２７の操作を行う。圧力差Ｐ0−ＰがＤＶＰ４−ｐ３−ＤＶＰＩＧＬ２を超えている場合にはリークダウン期間ＤＴＩＭＥの中であることを意味する。この場合にはステップ１７〜１９の操作を行う。
【００５３】
　ステップ１７ではスロッシュ分補正値ＤＶＰＩＧＬ２を演算する。このスロッシュ分補正値ＤＶＰＩＧＬ２の演算については図１０のフローにより説明する。
【００５４】
　図１０（図８ステップ１７のサブルーチン）において、ステップ３１では圧力センサ１３により検出される流路圧力を用いて、
　　　ＤＥＶＰＲＳ２＝Ｐ−Ｐ（２秒前）　　　　　　　　　　　　…（１）
　　　　ただし、Ｐ：そのタイミングでの流路圧力、
　　　　　　　　Ｐ（２秒前）：そのタイミングより２秒前の流路圧力、
の式により圧力変化速度ＤＥＶＰＲＳ２［ｋＰａ／２秒］を計算する。２秒は圧力変化速度の計測間隔である。このように計測間隔を長くしたのは、量子化誤差の影響を排除するためである。
【００５５】
　ステップ３２ではこの圧力変化速度ＤＥＶＰＲＳ２と圧力変化速度の最小値ＥＶＬＫＭＮ２を比較する。ここで、圧力変化速度の最小値ＥＶＬＫＮ２の初期値は圧力変化速度ＤＥＶＰＲＳ２に等しい。従って、最初にステップ３２が実行される場合にはステップ３３をスキップすることになる。しかしながら、スロッシングが存在しない場合には図５左側第２段目のようにリークダウン期間において圧力変化速度ＤＥＶＰＲＳ２はリークの有無によらず減少し続ける。従って、２回目以降のステップ３２においてはスロッシングが発生しない限り、ステップ３３に進むことになり、圧力変化速度の最小値ＥＶＬＫＮ２を、今回のステップ３１で計算した最新の圧力変化速度ＤＥＶＰＲＳ２で更新する。
【００５６】
　ステップ３４では圧力変化速度ＤＥＶＰＲＳ２と圧力変化速度の最小値ＥＶＬＫＭＮ２とから、
　　　ＤＬＴＰ２＝ＤＥＶＰＲＳ２−ＥＶＬＫＭＮ２…（２）
の式によりスロッシュ分圧力変化速度ＤＬＴＰ２［ｋＰａ／２秒］を算出し、このスロッシュ分圧力変化速度ＤＬＴＰ２を用いステップ３５で
ＳＭＤＬＴＰ２＝ＳＭＤＬＴＰ２（前回値）＋ＤＬＴＰ２…（３）
　　　　ただし、ＳＭＤＬＴＰ２（前回値）：ＳＭＤＬＴＰ２の前回値、
の式によりスロッシュ分圧力変化速度の積算値ＳＭＤＬＴＰ２［ｋＰａ／２秒］を算出する。（３）式は演算周期毎にスロッシュ分圧力変化速度ＤＬＴＰ２を積算する式である。（３）式右辺第１項の「ＳＭＤＬＴＰ２（前回値）」の初期値はゼロである。
【００５７】
　ステップ３６では、スロッシュ分圧力変化速度積算値を２０で割った値をスロッシュ分補正値ＤＶＰＩＧＬ２として、つまり
ＤＶＰＩＧＬ２＝ＳＭＤＬＴＰ２／２０…（４）
の式によりスロッシュ分補正値ＤＶＰＩＧＬ２［ｋＰａ］を算出する。
【００５８】
　（４）式が必要となるのは、スロッシュ分圧力変化速度ＤＬＴＰ２の計測周期とスロッシュ分圧力変化速度積算値ＳＭＤＬＴＰ２の演算周期とが異なることに伴うものである。すなわち、スロッシュ分圧力変化速度ＤＬＴＰ２は図１１に示したように、２秒間隔で計測している。これに対して（４）式の積算間隔は図８、図９の演算周期に等しく１００ｍｓｅｃである。２秒という時間間隔でみれば、この時間間隔で実際にはスロッシュ分圧力変化速度はＤＬＴＰ２しか変化しないのに、（４）式によれば２秒間に２０回（＝２秒÷１００ｍｓｅｃ）もスロッシュ分圧力変化速度ＤＬＴＰ２を積算している（図１１参照）。つまり、（４）式左辺の積算値ＳＭＤＬＴＰ２は演算上は２秒間にＤＬＴＰ２を２０回も積算した値となる。従って、この積算値ＳＭＤＬＴＰ２を２０で割った値が２秒間での真のスロッシュ分圧力変化速度積算値、つまり２秒間でのスロッシュ分圧力変化量であり、これをスロッシュ分補正値としているわけである。これは演算上の問題であるため、もちろん２０で割らないように構成することもできる（スロッシュ分圧力変化速度ＤＬＴＰ２の計測周期とスロッシュ分圧力変化速度積算値ＳＭＤＬＴＰ２の演算周期を同じにしてやればよい）。
【００５９】
　スロッシュ分圧力変化量であるスロッシュ３分補正値ＤＶＰＩＧＬ２は、スロッシュが生じる度に（ＤＬＴＰ２が正の値で生じる度に）増えてゆくので、図６最下段に示したようになる。
【００６０】
　このようにしてスロッシュ分補正値ＤＶＰＩＧＬ２を計算したら、図８に戻り、ステップ１８でスロッシュ分補正値ＤＶＰＩＧＬ２とスライスレベルＳＬ１とをステップ１８で比較する。ここで、スライスレベルＳＬ１には、従来技術によるリーク診断において、スロッシングが発生していない状態でリークありと判定されるときのリークダウン期間中の圧力変化の傾きの最小値を設定している。ここではスライスレベルＳＬ１を例えば毎秒０．０４ｋＰａとしている。ＳＬ１はエンジンの仕様により異なるので実験的に定めることが望ましい。
【００６１】
　スロッシュ分補正値ＤＶＰＩＧＬ２がスライスレベルＳＬ１を超えていれば、リークが無くてもスロッシュ分の圧力変化量だけでリークありと誤判定されてしまうので、これを避けるためステップ１９に進んで、リーク診断中止フラグ（ゼロに初期設定）＝１とする。このリーク診断中止フラグ１はリーク診断の中止を指示するもので、例えば所定の時間が経過した後に、リーク診断を最初からやり直させるようにすることができる。
【００６２】
　一方、ステップ１６で圧力差Ｐ0−Ｐが、ＤＶＰ４−ｐ３−ＤＶＰＩＧＬ２以下になるとリークダウン処理の終了タイミングである。このときには図９のステップ２０に進み、圧力差Ｐ0−Ｐをリークダウン処理終了時圧力ＤＶＰ５としてメモリ（ＲＡＭ）に記憶する。また、ステップ１４で起動したタイマのタイマ値をリークダウン期間ＤＴＩＭＥとしてメモリ（ＲＡＭ）に記憶する。
【００６３】
　ステップ２１ではスロッシュ分補正値ＤＶＰＩＧＬ２よりオフセット値ＯＦＳＴ２を差し引いた値、つまり
　　　ＤＶＰＩＩ＝ＤＶＰＩＧＬ２−ＯＦＳＴ２…（５）
の式により量子化誤差補正後スロッシュ分補正値ＤＶＰＩＩを算出する。
【００６４】
　ここで、スロッシュ分補正値ＤＶＰＩＧＬ２よりオフセット値ＯＦＳＴ２を差し引いているのは、流路圧力をデジタル値で扱うことによる量子化誤差を取り去るためのものである。ＯＦＳＴ２は一定値で、予め実験により定めておけばよい。
【００６５】
　ステップ２２ではステップ２０で得ているリークダウン処理終了時圧力ＤＶＰ５より量子化誤差補正後スロッシュ分補正値ＤＶＰＩＩを差し引いて、つまり
　　　ＤＶＰ５Ａ＝ＤＶＰ５−ＤＶＰＩＩ…（６）
の式によりスロッシュ分補正後リークダウン処理終了時圧力ＤＶＰ５Ａを算出する。
【００６６】
　ステップ２３ではリークダウン処理開始時圧力ＤＶＰ４とスロッシュ分補正後リークダウン終了時圧力ＤＶＰ５Ａとの差をリークダウン期間ＤＴＩＭＥで割った値を、リーク診断指標ＤＶＰＢＴとして、つまり次式により求める。
【００６７】
　　ＤＶＰＢＴ＝（ＤＶＰ４−ＤＶＰ５Ａ）／ＤＴＩＭＥ…（７）
　そして、ステップ２４でこのリーク診断指標ＤＶＰＢＴとスライスレベルＳＬ２を比較する。リーク診断指標ＤＶＰＢＴがスライスレベルＳＬ２を超えていればステップ２５に進み燃料タンク１からパージコントロールバルブ１１までの流路にリークがあると判断してリークフラグ＝１とする。
【００６８】
　これに対して、ＤＶＰＢＴがＳＬ２以下であればステップ２４よりステップ２６に進み燃料タンク１からパージコントロールバルブ１１までの流路にリークがないと判断してリークフラグ＝０とする。
【００６９】
　このリークフラグは、故障診断のときに必要となるので、ＥＥＰＲＯＭなどの不揮発性メモリに移して記憶させる。あるいはリークフラグ＝１のとき警告ランプや警告ブザーにより運転者にリークありとの情報を知らせるようにしてもかまわない。
【００７０】
　ステップ２７ではリーク診断終了フラグ（エンジンの始動時にゼロに初期設定）＝１とし、パージコントロールバルブ１１とドレンカットバルブ１２を共に開いた後に、ルーチンを終了する。このリーク診断終了フラグ＝１により、エンジンが停止されるまで、２回目のリーク診断が行われないようにする。
【００７１】
　このようにして、負圧を用いてのリーク診断が行われると、燃料タンク１に十分な正圧（大気圧より高い圧力）が立ち上がらないときにもリーク診断を行うことができる。
【００７２】
　ここで本実施形態（請求項２、５に記載の発明）の作用を図６を参照しながら説明する。
【００７３】
　本実施形態は、リークダウン処理中にスロッシュ分圧力変化速度ＤＬＴＰ２を積算した値であるＤＶＰＩＧＬ２は、スロッシュによって発生した蒸発燃料による圧力変動分とみなすものである。すなわち、スロッシングが発生していない状態でリークダウン処理を行うとリークダウン処理中の圧力変化速度ＤＥＶＰＲＳ２は時間の経過と共に減少する（図５左側の中段参照）。一方、スロッシングが発生した場合、圧力変化速度ＤＥＶＰＲＳ２はそれ以前の圧力変化速度に対して大きくなる特徴がある（図５右側の中段参照）。このため、スロッシングが発生する以前に測定されていた圧力変化速度を表す圧力変化速度の最小値ＥＶＬＫＭＮ２とその値を超えた圧力変化速度ＤＥＶＰＲＳ２との差がスロッシングによる影響で圧力変化速度が大きくなったものと考えられる。そして、圧力変化速度の最小値との差の圧力変化速度であるスロッシュ分圧力変化速度ＤＬＴＰ２を積算するとスロッシングによる圧力変化量そのものとなる。このようにしてスロッシュ分圧力変化速度積算値により、スロッシングの影響で変化した圧力を求めることが可能になる。
【００７４】
　リークダウン処理終了時圧力ＤＶＰ５（図６の○印参照）から、スロッシングの影響で変化した圧力であるであるＤＶＰＩＧＬ２を差し引くことで、スロッシングが発生しなかったとした場合のリークダウン処理終了時圧力であるＤＶＰ５Ａ（図６の●印参照）を求めることが可能になる。この値ＤＶＰ５Ａを用いてリークがあるか否かの判定を行うことで（図９のステップ２３〜２６参照）、次の効果が得られる。
【００７５】
　（ア）リークが存在していない状態でスロッシングの影響を受けてリークが存在するという誤診断を回避できる。
【００７６】
　（イ）また、スロッシングが発生している場合でも、従来装置のようにリーク診断期間を延ばすことなく、リークがあるか否かの判定を行うことが可能になりこれによってリーク診断頻度が向上する。
【００７７】
　リークダウン処理が終了する前にスロッシングによって生じた圧力変化量が大きくなると、この圧力変化量でリークダウン処理終了時圧力を補正した場合であってもリーク判定の精度が低下するのであるが、本実施形態（請求項９に記載の発明）によれば、リークダウン処理が終了する前にスロッシングによって生じた圧力変化量を表すスロッシュ分補正値ＤＶＰＩＧＬ２（請求項２の発明でいうスロッシングによる圧力変化量の推定値）がスライスレベルＳＬ１を超えた場合に、リーク判定を中止するので（図８のステップ１８、１９参照）、このような場合にもリーク判定を行うことによる判定精度の低下を防止できる。
【００７８】
　エンジンコントローラ２１の主な構成要素であるコンピュータでは、流路圧力をアナログ値として取り扱うことができないために１ｂｉｔ当り所定の電圧値として扱っており、測定されたデータには量子化誤差を持つ。デジタル値を用いて圧力変化速度ＤＥＶＰＲＳ２を計測し、これと圧力変化速度の最小値ＥＶＬＫＭＮ２との差をスロッシュ分圧力変化速度ＤＬＴＰ２して算出し、このスロッシュ分圧力変化速度ＤＬＴＰ２をリークダウン処理中に積算した場合（図１０のステップ３１〜３６参照）、実際には圧力変化速度ＤＥＶＰＲＳ２に変化がなかった場合でも一定の積算値が計算される。この積算値は、スロッシュによるものではなく圧力センサ１３の出力をコンピュータでデジタル値として取り扱うために生じるものである。この積算値は、スロッシュと関わりなく演算されるので、本実施形態（請求項２０に記載の発明）によれば、この積算値を量子化誤差分ＯＦＳＴ２として、スロッシュ分補正値ＤＶＰＩＧＬ２（請求項２に記載の発明でいうスロッシングによる圧力変化量の推定値）より差し引くので（図９のステップ２１参照）、流路圧力をデジタル値で扱っていても、量子化誤差の影響を排除して、スロッシュ分補正値ＤＶＰＩＧＬ２の演算精度を向上できる。
【００７９】
　図１２、図１３のフローチャートは第２実施形態である。
【００８０】
　燃料タンク１の温度が上昇すると、燃料の蒸発量が増大し燃料タンク１からパージコントロールバルブ１１までの流路の圧力が上昇する。リークダウン処理によるリーク診断をこのような状態で行なうことは、診断結果に誤差をもたらす。
【００８１】
　そこで、このような温度上昇の影響を排除するために、図１４に示すようにリークダウン処理の後にベーパモニタリング処理を行なう。すなわち、リークダウン処理の終了後、パージコントロールバルブ１１を閉じたままドレンカットバルブ１２を開いて、燃料タンク１からバージコントロールバルブ１１までの流路に一定の期間ｔ４、大気圧を導入する。その後、ドレンカットバルブ１２を閉じて燃料タンク１からバージコントロールバルブ１１までの流路を密閉し、一定の期間ｔ３、密閉状態とした流路の圧力変化分をモニター（計測）し、これを温度上昇補正量（ＤＶＰ８）として記憶する。ここで、期間ｔ３はベーパモニタリング期間であり、エンジンの仕様に応じて２０〜６０秒に設定する。
【００８２】
　これでベーパモニタリング処理を終了し、このベーパモニタリング処理により得た温度上昇補正量（ＤＶＰ８）に基づきリークダウン処理終了時圧力ＤＶＰ５を補正することにより、燃焼タンクの温度上昇に伴って増加するベーパがリーク診断に影響することを排除する。
【００８３】
　こうしたベーパモニタリング処理を行うものを前提とするとき、ベーパモニタリング期間ｔ３中にスロッシングが発生すると、モニターされる圧力変化分である温度上昇補正量（ＤＶＰ８）がスロッシングが発生しないときより大きくなり、リークダウン処理終了時圧力ＤＶＰ５の補正精度を低下させる。
【００８４】
　そこで、ベーパモニタリング処理を行うものを前提として、第２実施形態では、
ベーパモニタリング期間ｔ３に第１実施形態と同様にしてスロッシュ分補正値ＤＶＰＩＧＬ２を計算し、上記の温度上昇補正量（ＤＶＰ８）からこのスロッシュ分補正値ＤＶＰＩＧＬ２を差し引くすることで、ベーパモニタリング期間ｔ３にスロッシングが起きた場合においてもリークダウン処理終了時圧力ＤＶＰ５の温度補正精度を高める。
【００８５】
　また、ベーパモニタリング期間ｔ３におけるスロッシュ分補正値ＤＶＰＩＧＬ２が過大な場合にはリーク診断をキャンセルする。
【００８６】
　エンジンコントロ一ラ２１では第１実施形態と同じように、エンジン１０の運転中にリーク診断条件が成立すると、図７に示すプルダウン処理ルーチンをまず実行する。
【００８７】
　一方、エンジンコントローラ２１では、図１２、図１３に示すリークダウン処理とベーパモニタリング処理のルーチンを、第１実施形態における図８、図９のリークダウン処理ルーチンに代えて、１００ｍｓ間隔で実行する。
【００８８】
　図１２においてステップ１１〜１５は第１実施形態の図８のステップ１１〜１５と同一である。図１２のステップ１２でｔ５経過フラグ＝０でない場合にはステップ５ｌに進みｔ４経過フラグをみる。ｔ４経過フラグは、リークダウン処理後に行なわれる、燃料タンク１からバージコントロールバルブ１１までの流路への大気圧の導入が完了しているかどうかを示すフラグであり、ｔ５経過フラグ＝１になった直後にはｔ４経過フラグはもちろんゼロである。
【００８９】
　ｔ４経過フラグ＝０の場合には、ステップ５２でＤＴＩＭＥ経過フラグをみる。ＤＴＩＭＥ経過フラグはリークダウン処理が完了しているかどうかを示すフラグであり、ｔ５経過フラグ＝１になった直後にはＤＴＩＭＥフラグ＝０である。
【００９０】
　ＤＴＩＭＥ経過フラグ＝０の場合には、ステップ５３に進み第１実施形態の図８のステップ１６と同様に、圧力差Ｐ0−ＰとＤＶＰ４−ｐ３とを比較する。図８のステップ１６と相違して第２実施形態ではＤＶＰ４−ｐ３よりさらにＤＶＰＩＧＬ２を差し引いてはいない。圧力差Ｐ0−ＰがＤＶＰ４−ｐ３より大きい場合には他のステップでの操作を行なうことなく直ちにルーチンを終了する。
【００９１】
　圧力差Ｐ0−ＰがＤＶＰ４−ｐ３以下となった場合にはリークダウン処理終了時であると判断しステップ５３よりステップ５４に進んで圧力差Ｐ0−Ｐをリークダウン処理終了時圧力ＤＶＰ５としてメモリ（ＲＡＭ）に記憶する。同時にステップ１４で起動したタイマのタイマ値をリークダウン期間ＤＴＩＭＥとしてメモリ（ＲＡＭ）に記憶する。
【００９２】
　ステップ５５では、リークダウン期間の圧力上昇分であるＤＶＰ４−ＤＶＰ５とリークダウン期間ＤＴＩＭＥとから、
　　ＤＶＰＢＴ＝（ＤＶＰ４−ＤＶＰ５）／ＤＴＩＭＥ…（８）
の式によりリーク診断指標ＤＶＰＢＴを計算し、このリーク診断指標ＤＶＰＢＴを図１３のステップ５６においてスライスレベルＳＬ３と比較する。リーク診断指標ＤＶＰＢＴがスライスレベルＳＬ３より大きくない場合には、ステップ７１に進んでリークフラグ＝０にリセットした後、ステップ６９でリーク診断終了フラグ＝１にセットしステップ７０でパージコントールバルブ１１、ドレンカットバルブ１２をとともに開いてルーチンを終了する。
【００９３】
　ここでのリーク診断指標ＤＶＰＢＴがスライスレベルＳＬ３より大きくない場合にリークフラグ＝０としてリーク診断を終了するのは次の理由からである。ステップ５５で計算されるリーク診断指標ＤＶＰＢＴは、温度上昇による補正もスロッシングによる補正も加えていない、見かけ上の圧力変化に基づく診断指標、つまり図３と図４のリーク診断アルゴリズムから得られる診断指標に相当する。この値をスライスレベルＳＬ３と比較することは次の意味を持つ。すなわち、前述のように燃料タンク１が温度上昇するとベーパの発生量を多くなりその分、流路圧力Ｐが上昇する。その結果、ベーパモニタリング処理のすぐ直前にあるリークダウン処理終了時圧力ＤＶＰ５も減少しているはずであり、これによってリーク診断指標ＤＶＰＢＴが増大する。燃料タンク１の温度上昇の影響により流路圧力Ｐが増大した状態でも、リーク診断指標ＤＶＰＢＴがなおスライスレベルＳＬ３を上回らなければ、ベーパモニタリング処理を行うまでもなくリークは存在しないと判断することができる。そこでこの場合には、ベーパモニタリング処理を行わずに、ステップ７１、６９の操作を行なうことにしたものである。
【００９４】
　一方、ステップ５６でリーク診断指標ＤＶＰＢＴがスライスレベルＳＬ３より大きい場合には、ステップ５７以降の操作を行なう。ステップ５７〜６４の操作が大気導入期間ｔ４とベーパモニタリング期間ｔ３の処理に相当する。
【００９５】
　ステップ５７ではドレンカットバルブ１２を開く。また、リークダウン期間ＤＴＩＭＥが終了したことを示すＤＴＩＭＥ経過フラグ＝１にセットする。
【００９６】
　ステップ５８ではドレンカットバルブ１２を開いてからの経過時間が所定時間ｔ４に達したかどうかをみる。経過時間がｔ４に満たない場合には以後のステップの操作を行なうことなくルーチンを終了する。
【００９７】
　前述のステップ５２においてＤＴＩＭＥ経過フラグ＝０でない場合（つまりＤＴＩＭＥ経過フラグ＝１の場合）には、ステップ５３〜５７の操作をスキップして、ステップ５８の操作を行う。結果としてリークダウン期間ＤＴＩＭＥが終了した後、大気導入期間ｔ４が経過するまでドレンカットバルブ１２は開いた状態を保ち、燃料タンク１からバージコントロールバルブ１１までの流路への大気の導入が続けられる。
【００９８】
　さて、ステップ５８で経過時間がｔ４に達するとステップ５９に進んでドレンカットバルブ１２を閉じる。またｔ４経過フラグ＝１にセットする。これにより図１４第３段目に示す大気導入期間ｔ４が終了する。
【００９９】
　前述のステップ５１において、ｔ４経過フラグ＝０でない場合（つまりｔ４経過フラグ＝１の場合）には、ステップ５２〜５９の操作をスキップしてステップ６０の操作を実行する。結果として大気導入期間ｔ４が終了した後にはステップ６０、６１の操作が繰り返し実行される。
【０１００】
　ステップ６０では第１実施形態と同様に図１０に示すサブルーチンを用いてスロッシュ分補正値ＤＶＰＩＧＬ２を計算する。ここで計算するスロッシュ分補正値ＤＶＰＩＧＬ２は、ベーパモニタリング期間中のスロッシュ分圧力変化速度ＤＬＴＰ２（図１４第４段目参照）から計算されたベーパモニタリング期間のスロッシュ分補正値（図１４第５段目参照）であり、第１実施形態で計算したリークダウン期間中のスロッシュ分補正値ではない。
【０１０１】
　ステップ６１ではドレンカットバルブ１２を閉じてからの経過時間とベーパモニタリング期間ｔ３とを比較する。経過時間がｔ３に達しない場合には、以後のステップの操作を行なうことなくルーチンを終了する。ベーパモニタリング期間中はスロッシュ分補正値ＤＶＰＩＧＬ２の計算が繰り返し実行される。
【０１０２】
　ステップ６１で経過時間がｔ３に達した場合にはステップ６２に進み圧力差Ｐ−Ｐ0を温度上昇補正量ＤＶＰ８［ｋＰａ］としてメモリ（ＲＡＭ）に記憶する。
【０１０３】
　ステップ６３では図９のステップ２１と同じ方法で量子化誤差補正後スロッシュ分補正値ＤＶＰＩＩを計算する。ここで計算される量子化誤差補正後スロッシュ分補正値ＤＶＰＩＩもべーパモニタリング期間に関する量子化誤差補正後スロッシュ分補正値であって、第１実施形態で計算したリークダウン期間中の量子化誤差補正後スロッシュ分補正値ではない。
【０１０４】
　ステップ６４では温度上昇補正量ＤＶＰ８と量子化誤差補正後スロッシュ分補正値ＤＶＰＩＩとから次式によりスロッシュ分補正後温度上昇補正量ＤＶＰ８Ａ（修正温度上昇補正量）を計算する。
【０１０５】
　　ＤＶＰ８Ａ＝ＤＶＰ８−ＤＶＰＩＩ…（９）
　第１実施形態の上記（６）式では負の値であるＤＶＰ５から量子化誤差補正後スロッシュ分補正値ＤＶＰＩＩを差し引いているのに対して、（９）式では正の値であるＤＶＰ８から量子化誤差補正後スロッシュ分補正値ＤＶＰＩＩを差し引いている。これは、第１実施形態が負圧を補正しているのに対して、この実施形態では図１４第３段目に示すように正圧を補正しているからである。このようにして、スロッシングの影響を排除したスロッシュ分補正後温度上昇補正量ＤＶＰ８Ａを計算することで、燃料タンク１の温度上昇がベーパモニタリング期間の圧力変化にもたらす影響を正確に把握することができる。
【０１０６】
　ステップ６５では、ステップ６０で計算したベーパモニタリング期間のスロッシュ分補正値ＤＶＰＩＧＬ２をスライスレベルＳＬ４と比較する。スロッシュ分補正値ＤＶＰＩＧＬ２がスライスレベルＳＬ４を上回る場合にはステップ７２に進んでリーク診断中止フラグ＝１にセットした後、ステップ７０の操作を行なう。
【０１０７】
　ステップ６５でスロッシュ分補正値ＤＶＰＩＧＬ２がスライスレベルＳＬ４を上回らない場合にはステップ６６以降に進む。
【０１０８】
　ステップ６６〜６９はリーク診断を行う部分である。まずステップ６６ではリークダウン時の圧力上昇分（ＤＶＰ４−ＤＶＰ５）からスロッシュ分補正後温度上昇補正量ＤＶＰ８Ａを差し引いた値と、リークダウン期間ＤＴＩＭＥとから次式によりリーク診断指標ＤＶＰＢＴを計算する。
【０１０９】
　　ＤＶＰＢＴ＝｛ＤＶＰ４−ＤＶＰ５−ＤＶＰ８Ａ×（ＤＴＩＭＥ／ｔ３）｝
　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　…（１０）
　（１０）式においてスロッシュ分補正後温度上昇補正量ＤＶＰ８Ａに対してＤＴＩＭＥ／ｔ３を乗じるようにしているのはベーパモニタリング期間の温度上昇補正量をリークダウン期間での温度上昇補正量に換算するためである。
【０１１０】
　図１２のステップ５５で計算したリーク診断指標ＤＶＰＢＴが、燃料タンク１の温度上昇による補正を加えていない値であるのに対して、（１０）式で計算されるリーク診断指標ＤＶＰＢＴは燃料タンク１の温度上昇による補正にさらにスロッシング伴う圧力上昇による修正を加えた値である。従ってステップ６６で計算されるリーク診断指標ＤＶＰＢＴは、燃料タンク１からパージコントロールバルブ１１までの流路のリーク状態を正確に反映した値となる。
【０１１１】
　ステップ６７ではステップ６６で得られたリーク診断指標ＤＶＰＢＴとスライスレベルＳＬ５とを比較する。スライスレベルＳＬ５は例えば毎秒０．８〜１．１ｋＰａとする。リーク診断指標ＤＶＰＢＴがスライスレベルＳＬ５を上回らない場合には、ステップ７１でリークフラグ＝０にリセットし、リーク診断指標ＤＶＰＢＴがスライスレベルＳＬ５を上回る場合には、ステップ６７よりステップ６８に進んでリークフラグ＝１にセットし、その後ステップ６９、７０の操作を行ない、ルーチンを終了する。
【０１１２】
　このように第２実施形態（請求項１０に記載の発明）によれば、ベーパモニタリング時のスロッシングの影響を受けない圧力上昇分を温度上昇補正量ＤＶＰ８Ａとして求め、この補正量ＤＶＰ８Ａでリークダウン時の圧力上昇分の計測値（ＤＶＰ４−ＤＶＰ５）を補正した値を用いてリークがあるか否かの判定を行うので、さらに燃料タンク１の温度上昇中にスロッシングの影響を受けてリークが存在するという誤診断を回避できる。
【０１１３】
　第２実施形態では、ベーパモニタリング期間での圧力上昇分であるＤＶＰ８をスロッシュ分補正値で補正する場合で説明したが、第２実施形態において、図１２のステップ５３〜５５に代え第１実施形態の図８のステップ１６〜１９、図９のステップ２０〜２３を適用すれば、リークダウン期間におけるスロッシングの影響と、ベーパモニタリング期間におけるスロッシングの影響とをともに排除して、リーク診断精度をさらに高めることが
できる。
【０１１４】
　第２実施形態では、ベーパモニタリング期間をリークダウン期間の後に設定しているが、プルダウン期間の前に設定することも可能である。
【０１１５】
　以上の各実施形態では、この発明をリークダウン処理あるいはベーパモニタリング処理に適用している。しかしながら、この発明の対象は、蒸発燃料処理装置の診断装置におけるこれらの処理に限定されない。蒸発燃料圧力が上昇し、かつ蒸発燃料圧力変化率が減少するという条件のもとで行なわれる、いかなる蒸発燃料圧力変化のモニタリングにおいても、スロッシングの影響を排除した、正確なモニター結果を提供することができる（請求項１に記載の発明）。
【０１１６】
　以上の各実施形態では、流路圧力Ｐを圧力センサ１３により検出しているが、この発明は流路圧力Ｐの検出方法には依存せず、流路圧力Ｐを用いてクレームされたリーク診断を実行するいかなる蒸発燃料処理装置にも適用可能である。
【０１１７】
　各実施形態では、リークダウン処理開始時とリークダウン処理終了時に流路圧力をサンプリングし、そのリークダウン処理時の２つの圧力サンプリング値に基づいてリークがあるか否かを判定する場合で説明したが、これに限られるものでない。例えばリークダウン処理開始時とリークダウン処理終了時の２つの圧力サンプリング値に基づいてリーク孔面積を求め、このリーク孔面積に基づいてリークがあるか否かを判定する場合にも本発明を適用することができる。この場合であればリークダウン処理終了時の流路圧力のサンプリング値より本発明のスロッシュ分補正値（ただし、圧力サンプリング時の値）を差し引いてやればよい。
【０１１８】
　エンジンコントローラ２１は、請求項１、２に記載の圧力上昇分計測手段、圧力変化速度計算手段、スロッシュ分圧力変化量推定手段、圧力上昇分補正手段、リーク判定手段の、また請求項１０に記載の圧力上昇分計測手段、温度上昇補正量計測手段、圧力変化速度計算手段、スロッシュ分圧力変化量推定手段、温度上昇補正量修正手段、圧力上昇分補正手段、リーク判定手段の各機能を備える。
【図面の簡単な説明】
【０１１９】
【図１】一実施形態のシステム図。
【図２】圧力センサ１３の出力特性図。
【図３】負圧を用いてのリーク診断時にリークなしと診断されるときの圧力変化を示す波形図。
【図４】負圧を用いてのリーク診断時にリークありと診断されるときの圧力変化を示す波形図。
【図５】スロッシングが発生しないときと発生するときの流路圧力、圧力変化速度、スロッシュ分圧力変化速度の各変化を示す波形図。
【図６】第１実施形態の作用を説明するための波形図。
【図７】プルダウン処理を説明するためのフローチャート。
【図８】リーク診断を説明するためのフローチャート。
【図９】リーク診断を説明するためのフローチャート。
【図１０】スロッシュ分補正値の演算を説明するためのフローチャート。
【図１１】計測区間と演算区間の関係を示す特性図。
【図１２】第２実施形態のパージモニタリング処理とリーク診断を説明するためのフローチャート。
【図１３】第２実施形態のパージモニタリング処理とリーク診断を説明するためのフローチャート。
【図１４】第２実施形態のスロッシングの補正を説明するための波形図。
【符号の説明】
【０１２０】
　１　燃料タンク
　２　通路（第１通路）
　４　キャニスタ
　６　通路（第２通路）
　７　スロットルバルブ
　８　吸気管
　１１　パージコントロールバルブ
　１２　ドレンカットバルブ
　１３　圧力センサ（圧力検出手段）
　２１　エンジンコントローラ
【図１】
2004138052.tif 000003
【図２】
2004138052.tif 000004
【図３】
2004138052.tif 000005
【図４】
2004138052.tif 000006
【図５】
2004138052.tif 000007
【図６】
2004138052.tif 000008
【図７】
2004138052.tif 000009
【図８】
2004138052.tif 000010
【図９】
2004138052.tif 000011
【図１０】
2004138052.tif 000012
【図１１】
2004138052.tif 000013
【図１２】
2004138052.tif 000014
【図１３】
2004138052.tif 000015
【図１４】
2004138052.tif 000016