(57)【特許請求の範囲】
【請求項１】
内燃機関燃料タンク内の燃料液面上部空間に接続されたベーパ通路と、燃料タンク内の蒸発燃料を前記ベーパ通路から機関吸気通路に導くパージ装置と、
前記ベーパ通路上の、前記パージ装置と燃料タンクとの間に設けられ、燃料タンク内圧力が大気圧より高い所定の圧力以上になると開弁し、燃料タンク内圧力を前記所定の圧力以下に保持する内圧制御弁と、
前記燃料タンク内圧力を検出する圧力検出手段と、
前記圧力検出手段により検出された機関始動後の燃料タンク圧力に基づいて燃料タンクの異常の有無を判定する判定手段と、
始動後の機関燃料消費量を検出する燃料消費量検出手段と、
機関始動時から所定の時間が経過するまでの前記機関燃料消費量が予め定めた下限値以下の場合に、前記判定手段による判定を禁止する禁止手段と、
を備えたエバポパージシステムの故障診断装置。
【請求項２】
内燃機関燃料タンク内の燃料液面上部空間に接続されたベーパ通路と、燃料タンク内の蒸発燃料を前記ベーパ通路から機関吸気通路に導くパージ装置と、
前記ベーパ通路上の、前記パージ装置と燃料タンクとの間に設けられ、燃料タンク内圧力が大気圧より高い所定の圧力以上になると開弁し、燃料タンク内圧力を前記所定の圧力以下に保持する内圧制御弁と、
前記燃料タンク内圧力を検出する圧力検出手段と、
前記圧力検出手段により検出された機関始動後の燃料タンク圧力に基づいて燃料タンクの異常の有無を判定する判定手段と、
始動後の機関燃料消費量を検出する燃料消費量検出手段と、
機関始動時から所定の時間が経過した時点からの所定の期間内の前記燃料消費量が予め定めた上限値以上の場合に前記判定手段による判定を禁止する禁止手段と、
を備えたエバポパージシステムの故障診断装置。
【請求項３】
内燃機関燃料タンク内の燃料液面上部空間に接続されたベーパ通路と、燃料タンク内の蒸発燃料を前記ベーパ通路から機関吸気通路に導くパージ装置と、
前記ベーパ通路上の、前記パージ装置と燃料タンクとの間に設けられ、燃料タンク内圧力が大気圧より高い所定の圧力以上になると開弁し、燃料タンク内圧力を前記所定の圧力以下に保持する内圧制御弁と、
前記燃料タンク内圧力を検出する圧力検出手段と、
機関始動後の、所定の期間内の前記燃料タンク内圧力に基づいて算出される異常判定パラメータの値を予め定めた判定値と比較することにより、燃料タンクの異常の有無を判定する判定手段と、
始動後の機関燃料消費量を検出する燃料消費量検出手段と、
機関始動後の所定の期間内における前記機関燃料消費量に応じて、前記判定値を設定する設定手段と、
を備えたエバポパージシステムの故障診断装置。
【請求項４】
内燃機関燃料タンク内の燃料液面上部空間に接続されたベーパ通路と、燃料タンク内の蒸発燃料を前記ベーパ通路から機関吸気通路に導くパージ装置と、
前記ベーパ通路上の、前記パージ装置と燃料タンクとの間に設けられ、燃料タンク内圧力が大気圧より高い所定の圧力以上になると開弁し、燃料タンク内圧力を前記所定の圧力以下に保持する内圧制御弁と、
前記燃料タンク内圧力を検出する圧力検出手段と、
前記圧力検出手段により検出された機関始動後の燃料タンク内圧力に基づいて燃料タンクの異常の有無を判定する判定手段と、
前記燃料タンク壁面温度を検出する壁面温度検出手段と、
機関始動後の所定の期間内の前記燃料タンク壁面温度が所定値以上変化した場合に前記判定手段による判定を禁止する禁止手段と、
を備えたエバポパージシステムの故障診断装置。
【請求項５】
内燃機関燃料タンク内の燃料液面上部空間に接続されたベーパ通路と、燃料タンク内の蒸発燃料を前記ベーパ通路から機関吸気通路に導くパージ装置と、
前記ベーパ通路上の、前記パージ装置と燃料タンクとの間に設けられ、燃料タンク内圧力が大気圧より高い所定の圧力以上になると開弁し、燃料タンク内圧力を前記所定の圧力以下に保持する内圧制御弁と、
前記燃料タンク内圧力を検出する圧力検出手段と、
前記圧力検出手段により検出された機関始動時の燃料タンク内圧力を記憶し、機関始動後に前記圧力検出手段で検出した燃料タンク内圧力と前記記憶した機関始動時の燃料タンク内圧力との偏差を所定期間にわたり積分し、該積分値に基いて、燃料タンクの異常の有無を判定する判定手段と、
を備えたエバポパージシステムの故障診断装置。
【請求項６】
内燃機関燃料タンク内の燃料液面上部空間に接続されたベーパ通路と、燃料タンク内の蒸発燃料を前記ベーパ通路から機関吸気通路に導くパージ装置と、
前記ベーパ通路上の、前記パージ装置と燃料タンクとの間に設けられ、燃料タンク内圧力と大気圧との差圧が予め定めた開弁差圧以上になると開弁して前記燃料タンク内圧力と大気圧との差圧を所定の範囲に保持する弁装置と、
前記燃料タンク内圧力と大気圧との差圧を検出する圧力検出手段と、
機関始動時の前記燃料タンクと大気圧との差圧と予め定めた第１の判定値とを比較することにより燃料タンクの異常の有無を判定する判定手段と、
機関始動後の所定の期間の前記燃料タンクと大気圧との差圧の変化幅と予め定めた第２の判定値とを比較することにより燃料タンクの異常の有無を判定する判定手段と、を備え、
前記弁装置の前記開弁差圧が、前記圧力検出手段の検出公差と前記第１の判定値と前記第２の判定値との総和より大きな値に設定されているエバポパージシステムの故障診断装置。
【請求項７】
内燃機関燃料タンク内の燃料液面上部空間に接続されたベーパ通路と、燃料タンク内の蒸発燃料を前記ベーパ通路から機関吸気通路に導くパージ装置と、該パージ通路を開閉するパージ弁と、
前記ベーパ通路に設けられ、前記燃料タンク内圧力と大気圧との差圧を所定の範囲内に保持する弁装置と、
圧力検出端を有し、該圧力検出端に作用する圧力と大気圧との差圧を検出する圧力検出手段と、
前記圧力検出端を前記燃料タンクと、前記パージ通路のパージ弁より燃料タンク側位置とに選択的に連通させる三方弁と、を備え、
機関始動前に前記圧力検出端が前記パージ通路側に連通する位置に前記三方弁を切換えるとともに前記パージ弁を開弁して、パージ弁を介して吸気通路内の大気圧を前記圧力検出端に作用させて前記圧力検出手段により大気圧を検出し、
更に前記三方弁を前記圧力検出端が前記燃料タンクに連通する位置に切換えて前記圧力検出端に燃料タンク内圧力を作用させて前記圧力検出手段により燃料タンク内圧力を検出し、
前記圧力検出手段により検出した前記燃料タンク内圧力と前記大気圧とに基づいて、燃料タンク内の真の圧力を算出するとともに、該真の燃料タンク内圧力に基づいて燃料タンクの異常の有無を検出する判定手段と、
を備えたエバポパージシステムの故障診断装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、燃料タンクからの蒸発燃料の大気への放出を防止する蒸発燃料排出抑制装置（以下「エバポパージシステム」と称する）に関し、詳細にはエバポパージシステムの故障診断装置に関する。
【０００２】
【従来の技術】
燃料タンクからの蒸発燃料が大気に放出されることを防止する目的で、タンクからの蒸発燃料をキャニスタに導いてキャニスタ内の吸着剤に吸着させるとともに、機関の所定運転条件下でキャニスタ内にパージ空気を通過させ、吸収した蒸発燃料を吸着剤から放出させ、パージ空気と蒸発燃料との混合気（パージガス）を機関吸気通路に供給して機関で燃焼させるエバポパージシステムが知られている。
【０００３】
このようなエバポパージシステムでは、各部の洩れ等の故障が生じると蒸発燃料が機関に供給されずに大気に放出されてしまい、大気汚染の原因となる場合が生じる。
例えば、燃料タンクの気密が破壊され、洩れを生じた場合にはタンク内の蒸発燃料が直接大気に放出されるようになるが、このような故障が生じた場合でも機関の運転には何ら支障がないため、運転者は異常の発生に気づかずにそのまま機関運転を継続する場合がある。
【０００４】
上記問題を解決するため、エバポパージシステムの故障、特に燃料タンクに洩れが発生したことを検出し、運転者に報知するようにした故障検出装置が種々考案されている。
この種の装置の例としては、例えば特開平６−２６４０８号公報に記載されたものがある。
【０００５】
同公報の装置は、機関始動後の所定の期間内の燃料タンク内圧力が予め定めた圧力範囲を越えて変化しない場合にはタンクに洩れなどの故障が生じたと判定するようにしたものである。
後述するように燃料タンクからのベーパ通路には内圧制御弁等の弁装置が設けられており、燃料タンク内圧力が正圧側の設定圧力以上、または負圧側の設定圧力以下になったときにのみ燃料タンクとキャニスタとを連通するようになっている。このため、燃料タンク内圧力が上記の正圧側と負圧側の設定圧力の間にある場合には燃料タンクは密閉されている。このため、機関始動後燃料ポンプによってタンク内の燃料が汲みだされるようになりタンク内の燃料油液面が低下するとタンク内圧力は低下する。また、機関始動後ある程度の時間が経過するとタンク内に還流される燃料噴射弁からの高温のリターン燃料と排気系からの受熱によりタンク内燃料油温度が上昇するため、燃料蒸気圧が上昇しタンク内圧力は上昇する。
【０００６】
すなわち、燃料タンクに洩れ等の故障がなければ、燃料タンク内圧力は機関始動後一時的に低下し、その後上昇して内圧制御弁の設定圧力近傍になる。
一方、タンクに洩れが生じている場合にはタンク内部と大気とが常に連通しているので、機関始動後も上記のような圧力変動は生じず、タンク内圧力は大気圧近傍に留まったままとなる。上記公報の装置はこの圧力変化を検出して、機関始動後の所定期間内に燃料タンク内圧が上述したような変化を示さない場合には燃料タンクに洩れなどの故障が生じたと判定するものである。
【０００７】
【発明が解決しようとする課題】
ところが、上記特開平６−２６４０８号公報の装置のように、機関始動後の燃料タンク内の圧力に基づいて燃料タンクの異常の有無を判定していると誤判定を生じる場合がある。
例えば、前述のように通常であれば機関始動後には燃料消費により燃料タンク内圧力は一時的に低下するが、機関始動後アイドル運転等のように機関燃料消費量が極めて少ない運転状態が長時間続けられた場合には、始動後の燃料タンク内圧力の低下は少なくなり、始動後の燃料タンク内圧力低下を検出してタンクの異常有無を判定していると、タンクに洩れがないにもかかわらず洩れが生じたと誤判定してしまう可能性がある。
【０００８】
また、機関始動後ある程度の時間が経過すると、通常であればリターン燃料と排気系からの受熱によるタンク内燃料温度上昇のためタンク内圧力は上昇するが、この時期に機関の高負荷運転等のように機関燃料消費量が大きい運転状態が続けられた場合には、タンク内燃料油面の下降速度が大きくなるためタンク内圧の上昇幅は小さくなる。従って、始動後所定時間経過後の燃料タンク内圧力上昇を検出してタンクの異常有無を判定していると、この場合も燃料タンクが正常であるにもかかわらず異常が生じたと誤判定してしまう可能性がある。
【０００９】
また、燃料タンク内圧を所定範囲に保持する内圧制御弁の設定圧力は大気圧に比較的近い値に設定されるのが通常であるため、タンクに洩れ等の異常がない場合でも機関始動後のタンク内圧変化幅はそれほど大きくならない。このため、異常の有無を判定するためには比較的小さな圧力変化があるか否かを判定する必要があり、例えば圧力検出中の気温の変化や圧力検出用のセンサの公差などが異常有無の判定精度に大きく影響し、正確な判定ができなくなる場合が生じる。
【００１０】
本発明は上記問題に鑑み、燃料タンク圧力に基づいてタンクの異常の有無を判定する場合に、誤判定が生じることを防止して正確な故障診断を行うことが可能なエバポパージシステムの故障診断装置を提供することを目的としている。
【００１１】
【課題を解決するための手段】
請求項１に記載の発明によれば、内燃機関燃料タンク内の燃料液面上部空間に接続されたベーパ通路と、燃料タンク内の蒸発燃料を前記ベーパ通路から機関吸気通路に導くパージ装置と、前記ベーパ通路上の、前記パージ装置と燃料タンクとの間に設けられ、燃料タンク内圧力が大気圧より高い所定の圧力以上になると開弁し、燃料タンク内圧力を前記所定の圧力以下に保持する内圧制御弁と、前記燃料タンク内圧力を検出する圧力検出手段と、前記圧力検出手段により検出された機関始動後の燃料タンク内圧力に基づいて燃料タンクの異常の有無を判定する判定手段と、始動後の機関燃料消費量を検出する燃料消費量検出手段と、機関始動時から所定の時間が経過するまでの前記機関燃料消費量が予め定めた下限値以下の場合に、前記判定手段による判定を禁止する禁止手段と、を備えたエバポパージシステムの故障診断装置が提供される。
【００１２】
請求項２に記載の発明によれば、内燃機関燃料タンク内の燃料液面上部空間に接続されたベーパ通路と、燃料タンク内の蒸発燃料を前記ベーパ通路から機関吸気通路に導くパージ装置と、前記ベーパ通路上の、前記パージ装置と燃料タンクとの間に設けられ、燃料タンク内圧力が大気圧より高い所定の圧力以上になると開弁し、燃料タンク内圧力を前記所定の圧力以下に保持する内圧制御弁と、前記燃料タンク内圧力を検出する圧力検出手段と、前記圧力検出手段により検出された機関始動後の燃料タンク内圧力に基づいて燃料タンクの異常の有無を判定する判定手段と、始動後の機関燃料消費量を検出する燃料消費量検出手段と、機関始動時から所定の時間が経過した時点からの所定の期間内の前記燃料消費量が予め定めた上限値以上の場合に前記判定手段による判定を禁止する禁止手段と、を備えたエバポパージシステムの故障診断装置が提供される。
【００１３】
請求項３に記載の発明によれば、内燃機関燃料タンク内の燃料液面上部空間に接続されたベーパ通路と、燃料タンク内の蒸発燃料を前記ベーパ通路から機関吸気通路に導くパージ装置と、前記ベーパ通路上の、前記パージ装置と燃料タンクとの間に設けられ、燃料タンク内圧力が大気圧より高い所定の圧力以上になると開弁し、燃料タンク内圧力を前記所定の圧力以下に保持する内圧制御弁と、前記燃料タンク内圧力を検出する圧力検出手段と、機関始動後の、所定の期間内の前記燃料タンク内圧力に基づいて算出される異常判定パラメータの値を予め定めた判定値と比較することにより、燃料タンクの異常の有無を判定する判定手段と、始動後の機関燃料消費量を検出する燃料消費量検出手段と、機関始動後の所定の期間内における前記機関燃料消費量に応じて、前記判定値を設定する設定手段と、を備えたエバポパージシステムの故障診断装置が提供される。
【００１４】
請求項４に記載の発明によれば、内燃機関燃料タンク内の燃料液面上部空間に接続されたベーパ通路と、燃料タンク内の蒸発燃料を前記ベーパ通路から機関吸気通路に導くパージ装置と、前記ベーパ通路上の、前記パージ装置と燃料タンクとの間に設けられ、燃料タンク内圧力が大気圧より高い所定の圧力以上になると開弁し、燃料タンク内圧力を前記所定の圧力以下に保持する内圧制御弁と、前記燃料タンク内圧力を検出する圧力検出手段と、前記圧力検出手段により検出された機関始動後の燃料タンク内圧力に基づいて燃料タンクの異常の有無を判定する判定手段と、前記燃料タンク壁面温度を検出する壁面温度検出手段と、機関始動後の所定の期間内の前記燃料タンク壁面温度が所定値以上変化した場合に前記判定手段による判定を禁止する禁止手段と、を備えたエバポパージシステムの故障診断装置が提供される。
【００１５】
請求項５に記載の発明によれば、内燃機関燃料タンク内の燃料液面上部空間に接続されたベーパ通路と、燃料タンク内の蒸発燃料を前記ベーパ通路から機関吸気通路に導くパージ装置と、前記ベーパ通路上の、前記パージ装置と燃料タンクとの間に設けられ、燃料タンク内圧力が大気圧より高い所定の圧力以上になると開弁し、燃料タンク内圧力を前記所定の圧力以下に保持する内圧制御弁と、前記燃料タンク内圧力を検出する圧力検出手段と、前記圧力検出手段により検出された機関始動時の燃料タンク内圧力力を記憶し、機関始動後に前記圧力検出手段で検出した燃料タンク内圧力の前記記憶した機関始動時の燃料タンク内圧力からの偏差を所定期間にわたり積分し、該積分値に基いて、燃料タンクの異常の有無を判定する判定手段と、を備えたエバポパージシステムの故障診断装置が提供される。
【００１６】
請求項６に記載の発明によれば、内燃機関燃料タンク内の燃料液面上部空間に接続されたベーパ通路と、燃料タンク内の蒸発燃料を前記ベーパ通路から機関吸気通路に導くパージ装置と、前記ベーパ通路上の、前記パージ装置と燃料タンクとの間に設けられ、燃料タンク内圧力と大気圧との差圧が予め定めた開弁差圧以上になると開弁して前記燃料タンク内圧力と大気圧との差圧を所定の範囲に保持する弁装置と、前記燃料タンク内圧力と大気圧との差圧を検出する圧力検出手段と、機関始動時の前記燃料タンクと大気圧との差圧と予め定めた第１の判定値とを比較することにより燃料タンクの異常の有無を判定する判定手段と、
機関始動後の所定の期間の前記燃料タンクと大気圧との差圧の変化幅と予め定めた第２の判定値とを比較することにより燃料タンクの異常の有無を判定する判定手段と、を備え、前記弁装置の前記開弁差圧が、前記圧力検出手段の検出公差と前記第１の判定値と前記第２の判定値との総和より大きな値に設定されているエバポパージシステムの故障診断装置が提供される。
【００１７】
請求項７に記載の発明によれば、内燃機関燃料タンク内の燃料液面上部空間に接続されたベーパ通路と、燃料タンク内の蒸発燃料を前記ベーパ通路から機関吸気通路に導くパージ装置と、該パージ通路を開閉するパージ弁と、前記ベーパ通路に設けられ、前記燃料タンク内圧力と大気圧との差圧を所定の範囲内に保持する弁装置と、圧力検出端を有し、該圧力検出端に作用する圧力と大気圧との差圧を検出する圧力検出手段と、前記圧力検出端を前記燃料タンクと、前記パージ通路のパージ弁より燃料タンク側位置とに選択的に連通させる三方弁と、を備え、機関始動前に前記圧力検出端が前記パージ通路側に連通する位置に前記三方弁を切換えるとともに前記パージ弁を開弁して、パージ弁を介して吸気通路内の大気圧を前記圧力検出端に作用させて前記圧力検出手段により大気圧を検出し、更に前記三方弁を前記圧力検出端が前記燃料タンクに連通する位置に切換えて前記圧力検出端に燃料タンク内圧力を作用させて前記圧力検出手段により燃料タンク内圧力を検出し、前記圧力検出手段により検出した前記燃料タンク内圧力と前記大気圧とに基づいて、燃料タンク内の真の圧力を算出するとともに、該真の燃料タンク内圧力に基づいて燃料タンクの異常の有無を検出する判定手段と、を備えたエバポパージシステムの故障診断装置が提供される。
【００１９】
【作用】
請求項１の故障診断装置では、禁止手段は機関始動時から所定の時間が経過するまで、例えば燃料タンクが正常な場合には燃料タンク内圧力が低下傾向を示す期間の機関燃料消費量が所定の下限値以下の場合には判定手段によるタンク異常有無の判定を禁止する。これにより、機関始動後に機関燃料消費量が小さい状態で機関が運転され、タンクが正常であってもタンク内圧力の低下が小さくなる場合には異常有無の判定が禁止される。
【００２０】
請求項２の故障診断装置では、禁止手段は機関始動時から所定時間が経過した時点からの所定の期間内、例えば機関始動後燃料タンク内圧力が上昇する期間内の燃料消費量が所定の上限値以上の場合には判定手段によるタンク異常有無の判定を禁止する。これにより、機関始動後に燃料タンク内の圧力が上昇する時期に機関が燃料消費量の大きい状態で運転され、タンクが正常であってもタンク内圧力の上昇が小さくなる場合には異常有無の判定が禁止される。
【００２１】
請求項３の故障診断装置では、判定手段は機関始動後の所定の期間内の燃料タンク内圧力から算出する異常判定パラメータの値を予め定めた判定値と比較することにより燃料タンクの異常の有無を判定する。また、禁止手段は、この判定値を機関始動後の所定の期間内における機関燃料消費量に応じた値に設定する。
機関始動後の燃料タンク内圧力の変化は機関燃料消費量の影響を受けるため、上記異常パラメータと判定値との比較に基づいて異常の有無を判定する場合には判定値は機関燃料消費量に応じて変化するが、これにより異常パラメータの判定値は常に機関燃料消費量に応じた値に設定される。
【００２２】
請求項４の故障診断装置では、判定手段は機関始動後の燃料タンク内圧力に基づいて異常の有無を判定する。禁止手段は機関始動後の所定期間における燃料タンク壁面温度が所定値以上変化した場合には判定手段による判定を禁止する。これにより、燃料タンク壁面温度変化によるタンク内圧力の変動が異常有無の判定に影響を与えることが防止される。
【００２３】
請求項５の故障診断装置では、判定手段は機関始動後に圧力検出手段により検出した燃料タンク内圧力の機関始動時に圧力検出手段で検出した燃料タンク内圧力からの偏差を所定期間にわたり積分し、該積分値に基いて、燃料タンクの異常の有無を判定する。一般に、タンクに洩れがない場合でも機関始動後の燃料タンク内圧力の変化は比較的小さい。本発明では、積分値を用いることにより、圧力変化が小さい場合にも比較的大きな値となる積分値に基いて異常判定を行なうことができるため、異常判定精度が向上する。また、本発明のように、燃料タンク圧力の積分値を用いるるような場合には、圧力検出手段の検出値が誤差を含んでいた場合には、検出値そのものを積分すると積分値に検出値の誤差累積されてしまうことになる。本発明では、判定手段は、機関始動時に圧力検出手段で検出した燃料タンク圧力と、同じ圧力検出手段で検出した機関始動後の燃料タンク内圧力との差を積分しているため、積分値から圧力検出手段の検出値に含まれる誤差を排除することが可能となり、検出値の誤差に影響を受けない異常有無の判定が行われる。
【００２４】
請求項６の故障診断装置では、第１の判定手段は機関始動時の燃料タンク圧力が第１の判定値以上大気圧から離れた場合（所定の正圧以上、または所定の負圧以下の圧力になった場合）には燃料タンクが正常と判定する。また第２の判定手段は、機関始動後の燃料タンク内の圧力の変動幅が第２の判定値以上である場合に燃料タンクが正常と判定する。従って正常な燃料タンクが第１と第２の判定手段の両方により正常判定されるためには、機関始動後燃料タンク内圧は第１と第２の判定値を加えた圧力だけ大気圧より高くなるか、或いは第１と第２の判定値を加えた圧力だけ大気圧より低くなる必要がある。また、圧力検出手段の検出誤差（公差）を考慮すると、正常判定に必要な上記燃料タンク内圧力は第１と第２の判定値の和に更に圧力検出手段の検出公差を加えた圧力となる。このため、弁装置の開弁差圧は、燃料タンク内圧力が上記正常判定に必要なタンク内圧力に到達することを許容できるように設定されていなければならない。請求項６の装置では、弁装置の開弁差圧を上記第１の判定値と第２の判定値との和に更に圧力検出手段の公差を加えた値以上に設定したことにより、タンク内圧力が上記正常判定に必要な圧力に到達することが許容される。
【００２５】
請求項７の故障診断装置では、三方弁とパージ弁との切換え操作を機関始動前に行うことにより、圧力検出手段を用いて簡易に大気圧を検出することができる。また、圧力検出手段で検出した上記大気圧と燃料タンク内圧力の検出値とから燃料タンク内の真の圧力が算出されるため、判定手段による異常判定に際して圧力検出手段の検出値の誤差が排除され正確な判定が行われる。
【００２７】
【実施例】
以下添付図面を用いて本発明の一実施例について説明する。
図１は本発明を適用した自動車用内燃機関の実施例の概略構成を示す図である。図１において、１は内燃機関本体、２は機関１の吸気通路、３は吸気通路に配置されたエアクリーナを示す。吸気通路２には運転者のアクセルペダル（図示せず）の操作に応じた開度をとるスロットル弁６が設けられている。また、吸気通路２には、機関１の各気筒燃料ポートに後述するフュエルポンプ７０から供給される加圧燃料を噴射する燃料噴射弁７が設けられている。
【００２８】
図１に１１で示すのは機関１の燃料タンクである。タンク１１内の燃料油はフュエルポンプ７０により昇圧され、フィード配管７１を介して燃料噴射弁７に圧送される。また、図１に７２で示すのは燃料噴射弁７に供給される燃料油圧力を一定に制御するプレッシャレギュレータである。燃料ポンプ７０から圧送された燃料のうち、燃料噴射弁７から機関に噴射されなかった燃料はリターン配管７３を通じて燃料タンク１１に還流される。
【００２９】
図１に２０で示すのは、機関１の制御回路である。制御回路２０は、ＲＯＭ（リードオンリメモリ）２２、ＲＡＭ（ランダムアクセスメモリ）２３、ＣＰＵ（マイクロプロセッサ）２４及び入出力ポート２５、２６を互いに双方向性バス２１で接続した公知の構成のディジタルコンピュータからなり、機関１の燃料噴射制御等の基本制御を行う他、本実施例では後述するエバポパージシステムの故障診断を行っている。
【００３０】
上記制御のため、制御回路２０の出力ポート２６は図示しない駆動回路を介して機関１の燃料噴射弁７に接続され、燃料噴射弁７の開弁時間（燃料噴射量）を制御している他、後述するパージ制御弁１５のアクチュエータ１５ａに接続され、制御弁１５の作動を制御している。
また、制御回路２０の入力ポート２５には、機関１の回転数、吸入空気量、機関冷却水温度等を表す信号が、それぞれ図示しないセンサから入力されている他、後述する圧力センサ３０からの信号が図示しないＡ／Ｄ変換器を経由して入力されている。
【００３１】
図１に１０で示すのは燃料タンク内の蒸発燃料を吸着するキャニスタである。キャニスタ１０はベーパ配管１２により燃料タンク１１の燃料液面上部空間と、また、パージ配管１４により吸気通路２のスロットル弁６下流側部分と、それぞれ接続されている。図１に１５で示すのは、パージ通路１４を開閉するパージ制御弁１５である。パージ制御弁１５は制御回路２０からの信号により機関の所定運転条件下で開弁し、キャニスタ１０と吸気通路２のスロットル弁６下流側部分とを連通してキャニスタ１０のパージを行う。図１に１５ａで示すのは、パージ制御弁１５を駆動する、ソレノイド、負圧アクチュエータなどの適宜な形式のアクチュエータである。
【００３２】
本実施例では、後述する燃料タンクの異常を検出するために、圧力センサ３０が設けられている。圧力センサ３０は検出圧力と大気圧との差圧に比例した電圧信号を出力するものであり、圧力センサ３０の出力信号は図示しないＡ／Ｄ変換器を通して制御回路２０の入力ポート２５に供給されている。
また、圧力センサ３０の圧力検出部は三方弁３１を介してベーパ配管１２と、パージ配管１４のキャニスタ１０とパージ制御弁１５との間の部分に接続されており、三方弁３１を切り換えることによりベーパ配管１２の圧力（燃料タンク１１内圧力）とパージ配管１４の圧力（キャニスタ１０内圧力）との両方を検出することが可能となっている。図１に３１ａで示すのは、三方弁３１のアクチュエータである。アクチュエータ３１ａはソレノイド、負圧アクチュエータなどの適宜な形式のものが使用され、図示しない駆動回路を介して制御回路２０の出力ポート２６に接続されている。アクチュエータ３１ａは制御回路２０からの信号に応じて三方弁３１の切換動作を行い、圧力センサ３０の検出端をベーパ配管１２またはパージ配管１４に接続する。
【００３３】
図２は本実施例のキャニスタ１０の構造を示している。キャニスタ１０はハウジング１０ａと、該ハウジング内に充填された活性炭などの蒸発燃料吸着剤１３とを備えている。
ハウジング１０ａは内圧制御弁１６と均圧弁１８とを介してベーパ通路１２に接続されている。また、ハウジング１０ａには大気弁１８と大気放出弁１９とが設けられている。
【００３４】
内圧制御弁１６は燃料タンク１１内圧力が大気圧より所定の圧力（ΔＰＡ  ）だけ高くなると開弁し、キャニスタ１０と燃料タンク１１とを連通する。また、均圧弁１７は、燃料タンク１１内圧力がキャニスタ１０内圧力より所定の圧力（ΔＰＢ  ）だけ低くなると開弁し、同様にキャニスタ１０と燃料タンク１１とを連通する。
【００３５】
一方、大気弁１８はキャニスタ１０内圧力が大気圧より所定圧力だけ（ΔＰＣ  ）だけ低くなると開弁し、配管１８ｅ、エアクリーナ３を介してキャニスタ１０内を大気と連通する。また、大気放出弁１９は逆に、キャニスタ１０内圧が大気圧より所定圧力だけ高くなるとキャニスタ１０内と大気とを連通し、キャニスタ１０の過度の圧力上昇を防止する。なお上記弁装置１６から１９の開弁圧力（ΔＰＡ  からΔＰＣ  ）の設定については後に説明する。
【００３６】
次に、本実施例におけるキャニスタ１０の機能について説明する。
キャニスタ１０と吸気通路２とを接続するパージ通路１４上のパージ制御弁１５が閉弁中に燃料タンク１１内圧力が上昇して内圧制御弁１６の開弁圧力（ΔＰＡ  ）に到達すると、内圧制御弁１６が開弁する。これにより、ベーパ通路１２を介して燃料タンク１１からキャニスタ１０内に蒸発燃料が流入し、吸着剤１３に蒸発燃料が吸着され、空気のみが大気放出弁１９から放出される。このため、燃料タンク１１内圧力は内圧制御弁１６の開弁圧力（大気圧＋ΔＰＡ  ）以下に保持されるとともに、蒸発燃料の大気放出が防止される。
【００３７】
また、機関運転中にパージ制御弁１５が開弁されると、キャニスタ１０内にはパージ通路１４を介して吸気通路２のスロットル弁６下流側の負圧が作用する。これにより、大気弁１８が開弁し、配管１８ｅからキャニスタ１０内に清浄な空気が流入する。この空気は吸着剤１３から吸着した蒸発燃料を離脱させ、蒸発燃料と空気との混合ガス（パージガス）となってパージ通路１４から機関吸気通路２に流入し、機関燃焼室で燃焼する。これにより、吸着剤１３が蒸発燃料で飽和することが防止される。
【００３８】
さらに、機関停止後等に燃料タンク１１内の燃料温度が低下してタンク１１内圧力がキャニスタ１０圧力より所定の圧力（ΔＰＢ  ）だけ低くなると、均圧弁１７が開弁し、ベーパ通路１２を介して燃料タンク１１とキャニスタ１０内部とを連通する。これにより、燃料タンク１１内圧力はキャニスタ１０内圧力との圧力差は均圧弁１７の開弁差圧以下に保持される。ここで、キャニスタ１０内圧力は大気弁１８により、大気圧より所定圧（ΔＰＤ  ）以上低下することはないため、燃料タンク１１内圧力は均圧弁１７と大気弁１８とにより（大気圧−（ΔＰＢ  ＋ΔＰＣ  ））以上に保持されることになる。
【００３９】
すなわち、燃料タンク１１内圧力は、内圧制御弁１６、均圧弁１７、大気弁１８の作用により常に、（大気圧＋ΔＰＡ  ）の正圧と（大気圧−（ΔＰＢ  ＋ΔＰＣ  ））の負圧との間に保持される。
次に、本実施例の燃料タンクの異常有無の検出方法について説明する。
【００４０】
本実施例では、機関始動後の燃料タンク１１内圧力の変化により燃料タンク洩れ等の異常を検出する。
機関始動時の燃料タンク１１内圧力は始動時のタンク１１内燃料温度により異なっている。すなわち、機関の冷間始動時で燃料タンク１１内の燃料油温度が低下している場合には燃料蒸気圧の低下によりタンク１１内圧力は負圧になっている。また、機関の高温始動時で燃料タンク１１内の燃料油温度が高い場合にはタンク１１内の圧力は燃料蒸気圧の上昇により正圧になっている。しかし、前述のように、燃料タンク１１内圧力は内圧制御弁１６、大気弁１８等により制御されているため、（大気圧＋ΔＰＡ  ）と（大気圧−（ΔＰＢ  ＋ΔＰＣ  ））との間に保持されている。
【００４１】
一方、機関始動後はフュエルポンプ７０の作動によりタンク内燃料油のレベルが低下するため、機関始動後ある程度の時間が経過すると燃料タンク内圧力は始動時の圧力より低下する。
また、機関始動後は、燃料噴射弁７からの高温の余剰燃料がリターン配管７３を介してタンク１１に還流されるためタンク１１内の燃料油温度は徐々に上昇し、タンク１１内圧力は上昇するようになる。
【００４２】
図３は機関冷間始動時と高温始動時の機関始動後の燃料タンク１１内圧力の時間的変化を示している。図３の実線は燃料タンクに洩れがない場合の機関冷間始動後のタンク１１内圧力の変化を、点線は同じく洩れがない場合の機関高温始動後のタンク１１内圧力の変化を示しており、一点鎖線はタンクに洩れが生じた場合の機関始動後のタンク内圧力変化を示している。図３に示すように、機関冷間始動時には始動後にタンク内圧力は油面低下により一時的に低下して負圧になり通常、始動後５分程度で最も低圧になる。また、時間が経過すると燃料タンク内圧力は徐々に増大して通常、始動後２０分程度で内圧制御弁１６の設定値近傍まで上昇することになる。
【００４３】
一方、機関停止後短時間で再始動したような場合で始動時のタンク内燃料油温度が高い場合には、タンク内圧は機関始動時から大気圧より高くなっており、始動後短時間で内圧制御弁１６の設定圧力に到達する。
ところが、タンク１１に洩れを生じていると、洩れ部分を通してタンク１１内と大気とが直接連通するようになるため、タンク１１内圧は燃料油温度にかかわらず大気圧付近に保たれる（図３、一点鎖線）。
【００４４】
このため、機関始動後の所定の期間内の燃料タンク１１圧力変化からタンク１１に洩れが生じているか否かを判定することができる。
上記のような機関始動後の燃料タンク１１内圧力変化に基づいて燃料タンク１１の異常有無の判定を行うため、圧力センサ３０で検出された圧力値に基づく種々の異常判定パラメータを使用する判定方法が考えられるが、ここでは、そのうちの３つの方法についてそれぞれ説明する。
【００４５】
▲１▼異常判定パラメータとして、圧力センサ３０で検出した燃料タンク１１内圧力をそのまま使用する判定方法。
図４を用いて本判定方法の原理を説明する。図４は機関始動後の燃料タンク１１内圧力の変化を示す図３と同様な図である。前述のように、機関始動後の燃料タンク１１内圧力は、始動後一旦低下してから始動後５分程度で最も低くなり、その後上昇して始動後２０分程度で内圧制御弁１６の開弁設定圧付近まで上昇する。このため機関が始動してから所定期間内（例えば始動後２０分程度の期間）にタンク１１内圧力が所定の負圧（図４、Ｐ２  ）以下、または所定の正圧（図４、Ｐ１  ）以上に一度もならなかった場合にはタンクに洩れ等の異常が発生（図４、点線）したと判定できる。
【００４６】
上記判定値Ｐ１  、Ｐ２  は、検出すべき洩れの大きさに応じて設定され、本実施例ではＰ１  は大気圧プラス約０．３ＫＰａ（３０ｍｍＡｑ）程度の正圧に、Ｐ２  は大気圧マイナス約０．３ＫＰａ（３０ｍｍＡｑ）程度の負圧に設定されている制御回路２０は、機関始動時に三方切換弁３１を切り換えて圧力センサ３０をベーパ通路１２に接続し、機関始動後の燃料タンク１１内圧力を監視することにより燃料タンク１１の洩れの有無の判定を行う。
【００４７】
図５は制御回路２０により実行される上記判定動作を示すフローチャートである。本ルーチンは制御回路２０により一定時間毎に実行される。
図５において、ｔ（ステップ５０５、５０７、５２１）は機関始動後ルーチン実行毎にカウントアップ（ステップ５０５）されるカウンタであり、機関始動時からの経過時間を表す。また、ｔ０  （ステップ５０７）は機関始動後２０分程度に相当するカウンタ値である。ＫＤ（ステップ５０３、５１９、５２３）は燃料タンク１１の異常診断が終了したか否かを示すフラグであり、ＫＤ＝１は異常診断が終了したことを表している。ＫＤの値が１にセットされると、その後は故障診断は実行されない（ステップ５０３）。また、ＦＸは燃料タンク１１の異常診断結果を表すフラグであり、ＦＸ＝１はタンクに異常が生じていることを、ＦＸ＝０はタンクが正常であることをそれぞれ表している。
【００４８】
図５では、機関始動完了後、ルーチン実行毎に圧力センサ３０から燃料タンク１１内圧力Ｐを読み込む（ステップ５０９）。ステップ５０１での機関始動完了の判定は、機関回転数が所定値（例えば４００ｒｐｍ  ）以上になったか否かにより判断する。また、ステップ５０９、５１１では、上記により読み込んだ燃料タンク１１内圧力Ｐの値が判定値Ｐ２  以下になったか否か、及び判定値Ｐ１  以上になったか否かの判断を行う。機関始動後２０分程度の時間が経過するまでに（ステップ５０７）ステップ５１１、５１３のいずれかで、Ｐ≦Ｐ２  またはＰ≧Ｐ１  になった場合には燃料タンク１１は正常と判定され、ステップ５１７でフラグＦＸの値は１にセットされステップ５１９でフラグＫＤの値は１にセットされる。また、ステップ５１１、５１３でＰ２  ＜Ｐ＜Ｐ１  の場合にはステップ５１５でフラグＦＸの値は１（異常）にセットされ、機関始動後２０分程度の時間が経過するとＦＸ＝１にセットされたまま診断が終了する（ステップ５０７→ステップ５１９）。
【００４９】
すなわち、本故障診断ルーチンでは、機関始動後の所定期間内に燃料タンク１１内圧力が一度も判定値Ｐ２  以下、またはＰ１  以上に変化しない場合には燃料タンク１１に洩れ等の異常が生じたと判定される。
▲２▼異常判定パラメータとして機関始動後所定時間内の燃料タンク１１内圧力の変化量を使用する判定方法。
【００５０】
図６は本判定方法の原理を説明する図４と同様な図である。本判定方法では、燃料タンク１１内圧力の絶対値から異常の有無を判定するのではなく、機関始動後所定期間内の燃料タンク１１が到達した最も低い圧力（ＰＭＩＮ  ）と最も高い圧力（ＰＭＡＸ  ）との差（ΔＰ）が判定値ΔＰ０  （例えば０．６ＫＰａ程度）以上にならない場合には燃料タンク１１に洩れ等の異常が生じたと判定する。
【００５１】
図７は、制御回路２０により実行される上記故障診断ルーチンを示すフローチャートである。
なお、図７のフラグＫＤ、ＦＸ、カウンタｔ及びカウンタ値ｔ０  等は図５と同一の機能を持つものであるので、ここでは説明は省略する。
図７のルーチンでは、機関始動完了後所定時間ｔ０  が経過するまで（ステップ７０７）、圧力センサ３０で検出した燃料タンク１１内圧力Ｐを用いて、燃料タンク１１内圧力の最小値ＰＭＩＮ  と最大値ＰＭＡＸ  との更新を行う（ステップ７１１から７１７）。そして、所定時間ｔ０  が経過した時点で最大圧力ＰＭＡＸ  と最小圧力ＰＭＩＮ  との差、すなわち期間内の最大圧力変化幅が判定値ΔＰ０  以上の場合には燃料タンク１１は正常であると判定し（ステップ７２１）、最大圧力変化幅が判定値ΔＰ０  より小さい場合には燃料タンク１１に異常が生じたと判定する（ステップ７２３）。
【００５２】
▲３▼異常判定パラメータとして機関始動後の燃料タンク１１内圧力の時間積分値を使用する判定方法。
図８は本判定方法の原理を説明する図４と同様な図である。本判定方法では、燃料タンク１１内圧力の時間積分値を使用する。図４の判定方法のように機関始動後の燃料タンク１１内圧力の絶対値で異常の有無を判定する場合、小さな洩れを検出するためには判定値Ｐ１  、Ｐ２  はかなり小さな圧力（例えば０．３ＫＰａ程度）に設定する必要がある。また、図６の判定方法のように機関始動後の燃料タンク１１内圧力の変化幅に基づいて異常の有無を判定する場合にも、同様に判定値ΔＰ０  は比較的小さくなる。一方、燃料タンク１１に洩れが生じていた場合でも気温や気圧の条件によっては上記判定値近くまで燃料タンク１１内圧力が変動する場合があるため、上記のように燃料タンク１１内圧力の絶対値や変化幅のみに基づいて異常判定を行うと気温や気圧の変化等の外乱があると、異常が生じているにもかかわらず誤って正常判定がなされる可能性がある。本判定方法では、これを防止するために、図８に示すように燃料タンク１１内圧力の時間積分値（すなわち、図８に斜線で示した、圧力の時間変化カーブと大気圧線とで囲まれる部分の面積）に基づいて異常の有無の判断を行う。通常、燃料タンク１１に異常が生じている場合にも、機関始動後の燃料タンク１１内圧力は負圧側、正圧側に多少変化するが、図８のように燃料タンク１１内圧力の時間積分値をとると、燃料タンクが正常な場合に較べて積分値は極めて小さくなる。このため、異常時と正常時との差が大きく、外乱の影響を受けずに明確に異常有無の判定が可能となる。
【００５３】
図９は異常判定パラメータとして燃料タンク１１内圧力の時間積分値を用いる判定方法のフローチャートである。本ルーチンは制御回路２０により一定時間毎に実行される。
なお、図９においてもフラグＫＤ、ＦＸ、カウンタｔ及びカウンタ値ｔ０  等は図５、図７と同一の機能を持つものである。
【００５４】
図９のルーチンでは、機関始動完了後所定時間ｔ０  が経過するまで（ステップ９０７）、ルーチン実行毎に圧力センサ３０で検出した燃料タンク１１内圧力Ｐを用いて、燃料タンク１１内圧力の時間積分値（正確には、大気圧と燃料タンク１１内圧力Ｐとの差の絶対値の積分値）ＰＳを計算する（ステップ９１１）。そして、所定時間ｔ０  が経過した時点での積分値ＰＳとが所定の判定値ＰＳ０  とを比較し（ステップ９１３）、ＰＳ≧ＰＳ０  の場合には燃料タンク１１は正常であると判定し（ステップ９１５）、ＰＳ＜ＰＳ０  の場合には燃料タンク１１に異常が生じたと判定する（ステップ９１７）。
【００５５】
なお、本実施例では異常判定のための時間ｔ０  は図５、図７の実施例と同様２０分程度としているが、ｔ０  を正常時に燃料タンク１１負圧がピークになる程度の時間（例えば機関始動後５分程度）に設定するようにしても良い。図８に示すように、燃料タンク１１に異常が生じた場合には、特に燃料タンク１１内圧力が負圧側になる時期では圧力低下が小さく負圧になっている時間も短いため、異常時と正常時とではこの期間の圧力時間積分値に大きな差が生じるからである。
【００５６】
なお、上記  図５、図７、図９ルーチンにおいて、異常判定フラグＦＸの値が１にセットされると、別途制御回路２０により実行される図示しないルーチンにより、警告灯が点灯され運転者にエバポパージシステムの異常発生を報知する。また、機関イグニッションスイッチのＯＦＦ時にも記憶内容を保持可能なバックアップＲＡＭを設けＦＸの値を記憶し、次回の修理、点検に備えるようにしても良い。
【００５７】
ところで、上記▲１▼から▲３▼の方法で燃料タンクの異常有無の判定をするためには燃料タンク１１が正常な場合に燃料タンク１１内圧力が図３に示したように変化する必要があるが、始動後の機関運転状態によっては燃料タンク１１が正常であっても燃料タンク１１圧力の変化が小さくなる場合がある。
例えば、図３で説明したように機関始動後に燃料タンク１１内圧力の低下が生じるのは、機関の燃料消費のために燃料タンク１１液面レベルが低下することによっているが、機関始動直後に燃料消費量が極めて少ない運転状態（例えばアイドル運転）が続いたような場合タンク液面の低下速度は小さくなり、それに応じて燃料タンク１１内圧力の低下幅は小さくなる。
【００５８】
また、機関始動後の燃料油温度上昇により燃料タンク１１内圧力が上昇する期間に燃料消費量が極めて大きい運転状態（例えば機関高負荷運転）が続いたような場合には、タンク内液面レベルの低下が大きいため燃料温度が多少上昇しても燃料タンク１１内圧力は殆ど上昇しなくなる。従って、このような運転状態において上記▲１▼から▲３▼のいずれかの方法で燃料タンク１１の異常有無を判定すると、燃料タンク１１が正常であるにもかかわらず、異常判定がなされてしまう問題がある。
【００５９】
本実施例では、上記の問題を防止するため、機関始動時から通常であれば燃料タンク１１内圧力が低下する期間（例えば、機関始動時から５分間）の機関燃料消費量ＦＥ１  と、機関始動後通常であれば燃料タンク１１内圧力の上昇が生じる期間（例えば機関始動後５分経過時点から機関始動後２０分が経過するまでの時間）の機関燃料消費量ＦＥ２  とを検出し、ＦＥ１  が所定値以下、またはＦＥ２  が所定値以上の場合には▲１▼から▲３▼の方法による故障診断を禁止するようにしている。
【００６０】
図１０は上述した機関始動後の燃料消費量に基づく故障診断実行可否の判定ルーチンを示すフローチャートである。本ルーチンは制御回路２０により一定時間毎に実行される。
図１０において、ルーチンがスタートするとステップ１００１では機関の始動が完了したか否かが判定され、始動が完了していない場合（すなわちクランキング中の場合）にはステップ１０２５から１０２９で後述するカウンタＴ、フラグＫＥ、燃料消費量積算値ＦＥ１  、ＦＥ２  の値の初期化が行われる。
【００６１】
ステップ１００１で機関始動が完了している場合には、ステップ１００３で判定終了フラグＫＥの値が１にセットされているか否かを判断し、ＫＥ＝１の場合にはそのままルーチンを終了する。フラグＫＥは機関始動時に初期値０にセットされ（ステップ１０２７）、故障診断実行可否の判定が終了後ステップ１０２３で１にセットされるフラグである。すなわち、ステップ１００５以下の故障診断実行可否の判定動作はフラグＫＥの値が１にセットされた後は実行されない。
【００６２】
ステップ１００５では、カウンタＴの値がプラス１カウントアップされる。
カウンタＴの値は機関始動時にクリアされ（ステップ１０２５）、機関始動後はルーチン実行毎にプラス１カウントアップされる。本ルーチンは一定時間毎に実行されるため、これによりカウンタＴの値は機関始動後の経過時間に対応した値となる。
【００６３】
次いでステップ１００７では、機関の燃料噴射ＴＡＵの値が読みだされる。ＴＡＵは、燃料噴射弁７（図１）からの燃料噴射量であり、別途制御回路２０により実行される図示しないルーチンにより一定時間毎に算出され、ＲＡＭ２３の所定領域に最新の値が常時格納されている。燃料噴射量ＴＡＵは、すなわち単位時間当たりの燃料消費量を表している。
【００６４】
次いで、ステップ１００９、１０１１では、カウンタＴの値がＴ１  に到達するまで、上記燃料噴射量ＴＡＵの積算を行い、積算値ＦＥ１  を算出する。ここで、Ｔ１  は機関始動後燃料タンク１１内圧力が低下傾向を示す期間に相当し、本実施例ではＴ１  は５分程度の時間に相当する値とされる。すなわち、ＦＥ１  は機関始動時から５分間が経過するまでの燃料消費量を表している。
【００６５】
ステップ１００９でカウンタＴの値がＴ１  に到達すると、ルーチンはステップ１０１３に進み、上記により求めた機関始動後５分間の燃料消費量ＦＥ１  が所定値ＦＥ１０以下か否かを判定する。ＦＥ１  ≦ＦＥ１０の場合には、機関始動後５分間の燃料消費量が少なく、燃料タンク１１が正常な場合でもタンク内圧力低下が少なく誤診断を生じる可能性があるため、ステップ１０２１に進み、図５、７、９に示した故障診断ルーチンの実行を禁止して、ステップ１０２３でフラグＫＥを１（故障診断実行可否判定終了）にセットしてルーチンを終了する。
【００６６】
また、ステップ１０１３でＦＥ１  ＞ＦＥ１０の場合には、機関始動後５分間の燃料消費量ＦＥ１  は適正な範囲内にあるため、引き続きステップ１０１５、１０１７でカウンタＴの値がＴ１  に到達してからＴ２  に到達するまでの期間の燃料消費量ＦＥ２  を算出する。Ｔ２  の値は機関始動後燃料タンク圧力が上昇して内圧制御弁１６の開弁圧力に近づく時間に相当し、本実施例ではＴ２  は２０分程度の時間に相当する値とされる。
【００６７】
また、カウンタＴの値がＴ２  になると、ステップ１０１９で、燃料消費量ＦＥ２  の値が所定値ＦＥ２０以上か否かを判定する。ＦＥ２  ≧ＦＥ２０の場合には、燃料タンク１１内圧力が上昇すべき期間に燃料消費量が大きく、燃料タンク１１が正常な状態でも圧力上昇が小さくなっている可能性があるため、ステップ１０２１に進み、故障診断ルーチンの実行を禁止する。また、ＦＥ２  ≦ＦＥ２０の場合にはステップ１０２３でフラグＫＥの値を１にセットしてそのままルーチンを終了する。
【００６８】
上述のように、本実施例では、機関始動後の所定期間（例えば機関始動から５分経過するまでの期間）の燃料消費量ＦＥ１  が少ない場合、または上記期間経過後、更に所定の期間が経過するまで（例えば機関始動から５分経過した時点から機関始動後２０分が経過するまでの期間）の燃料消費量ＦＥ２  が大きい場合には故障診断の実行を禁止し、誤診断が生じることを防止している。
【００６９】
なお、上記燃料消費量の判定値ＦＥ１  とＦＥ２  とは図５から９の故障診断方法において燃料タンク１１内圧力変化に影響が生じる燃料消費量であり、実際には実験等により予め決定される。
次に、図１１を用いて本発明の別の実施例について説明する。図１０の実施例では機関始動後の燃料消費量が所定の禁止条件にあるときには故障診断そのものを禁止していたが、実際には燃料消費量が上記の禁止条件になっていて、燃料タンク１１内圧力変化が小さくなるような場合には、正常な燃料タンク１１が異常と判定される可能性はあっても、異常を生じた燃料タンクが正常と誤判定されることはない。このため、上記禁止条件が成立していても正常判定がなされた場合には燃料タンクには異常は生じていないと判断できる。
【００７０】
そこで、本実施例では、図５から図９の故障診断ルーチンの判定結果（フラグＦＸ）の信頼性を、機関始動後の燃料消費量に基づいて判断し、最終的な異常判定フラグＫＸの値を設定するようにしている。
すなわち、図１１では、図１０と同様に機関始動時から時間Ｔ１  が経過するまでの燃料消費量ＦＥ１  とその後時間Ｔ２  が経過する迄の燃料消費量ＦＥ２  とを算出する（ステップ１１０９からステップ１１１５）。そして、時間Ｔ２  が経過後にステップ１１１７、１１１９で燃料消費量ＦＥ１  、ＦＥ２  がそれぞれＦＥ１  ≦ＦＥ１０、ＦＥ２  ≧ＦＥ２０の条件を満たしているか否かを判断し、ステップ１１１７と１１１９の両方の条件が成立する場合には、図５から図９の故障診断ルーチンの判定結果は十分に信頼性があるため、最終異常判定フラグＫＸの値を図５から図９の故障診断ルーチンにより設定される異常判定フラグＦＸと同じ値にセットする。
【００７１】
また、ステップ１１１７、１１１９のいずれかが成立しなかった場合には、ステップ１１２３で故障診断ルーチンで設定されたフラグＦＸの値が０（正常判定）か否かを判断し、正常判定がなされている場合（ＦＸ＝０）には、最終異常判定フラグＫＸの値を０（正常）にセットする。また、ステップ１１２３でＦＸ＝１（異常判定）の場合には、判定結果の信頼性が低いため、最終異常判定ルーチンの値は設定せずにフステップ１１２７でフラグＫＥを１にセットしてそのままルーチンを終了する。本実施例では、フラグＦＸは異常判定のための仮フラグとして用い、最終異常判定フラグＫＸの値に応じて警告灯の点灯等の操作を行う。
【００７２】
このように、条件が成立しない場合には一律に故障診断を禁止するのではなく、燃料消費量ＦＥ１  、ＦＥ２  の値に応じて診断結果の信頼性を判定するようにしたことにより、燃料タンクが正常と判定される機会を増大することができる。
次に、図１２を用いて本発明の他の実施例を説明する。
図１０、図１１の実施例で説明したように、機関始動後の燃料タンク１１内圧力の変動幅は機関燃料消費量に応じて変化するため、故障診断において異常判定パラメータの判定値（例えば図７におけるΔＰ０  ）として一定値を用いていると誤診断を生じる可能性がある。そこで、本実施例では、異常判定パラメータを燃料消費量に応じて変更するようにしている。
【００７３】
図１２は、図７のルーチンを用いて故障診断を行う場合について示しており、図７ステップ７１９の判定値ΔＰ０  を機関燃料消費量に応じて変更する例を示している。
図１２のルーチンでは、機関始動後時間Ｔ１  が経過した時点から始動後時間Ｔ２  が経過するまでの期間の機関燃料消費量ＦＥ２  のみを計算する（ステップ１２０１から１２１３）。そして、機関始動後時間Ｔ２  が経過すると、上記より算出した燃料消費量ＦＥ２  に基づいて図７における圧力変化幅の判定値ΔＰ０  を算出する（ステップ１２１５）。
【００７４】
図７のルーチンでは、機関始動後燃料タンク１１内圧力が低下して、その後上昇する際の、到達最低圧力ＰＭＩＮ  と最高圧力ＰＭＡＸ  との差に基づいて異常の有無を判定しているため（図６参照）、タンク内圧力がＰＭＩＮ  まで低下した後ＰＭＡＸ  まで上昇する期間内の燃料消費量（すなわち上記ＦＥ２  ）が大きいと燃料タンク１１が正常であってもＰＭＡＸ  とＰＭＩＮ  との差は小さくなる。そこで、本実施例では、図１２ステップ１２１５において燃料消費量ＦＥ２  の値に応じてＰＭＡＸ  とＰＭＩＮ  との差の判定値ΔＰ０  を設定することにより、正確な故障診断を行うようにしている。ΔＰ０  の値は、ＦＥ２  が大きい程小さな値に設定するが、詳細には実際の機関を用いて実験等によりＦＥ２  とΔＰ０  との最適な関係を求めることが好ましい。
【００７５】
次に本発明の別の実施例について説明する。図１０から図１２の実施例では、燃料消費量の相違による誤診断の可能性について説明したが、燃料タンク内圧力の変化は燃料消費量以外にも他の外乱の影響を受ける場合がある。例えば、燃料タンク内圧力はタンク壁面温度が変化するとそれに応じて変化する。例えば、故障診断実行中にタンク壁面温度が低下すると、タンク壁面で蒸発燃料が凝縮するため燃料タンク内圧力は低下する。このため、タンク壁面温度が大きく低下すると、燃料タンクが正常であっても本来燃料タンク内圧力が上昇すべき時期に圧力の上昇が生じないことになり、前述の図５から図９の方法で故障診断を行うと正常な燃料タンクが異常と誤診断されてしまう場合が生じる。
【００７６】
そこで、本実施例では機関始動後のタンク壁面温度を検出して、このタンク壁面温度が機関始動後所定量以上変化した場合には故障診断を禁止するようにしている。次に、本実施例の燃料タンク壁面温度の検出方法について説明する。
燃料タンク壁面温度は、温度センサを配置して直接検出することも可能であるが、あまり実際的ではない。そこで、本実施例ではタンク壁面温度の変化を間接的に検出するようにしている。タンク壁面温度が変化する原因は大きく分けて、▲１▼気温の変化、▲２▼降雨の影響とがある。特に、降雨があると路面からの水はねによるタンク壁面の冷却効果が大きくなり気温の変化が小さい場合でもタンク壁面温度は低下する。そこで、本実施例では上記気温の変化と降雨の有無とを検出してタンク壁面温度の変化を推定している。
【００７７】
図１３は、燃料タンク壁面温度による故障診断実行可否の判定を示すフローチャートである。本ルーチンは制御回路２０により一定期間毎に実行される。
図１３においてルーチンがスタートすると、ステップ１３０１では大気温度ＴＨＡＭＢが読み込まれる。本実施例では、大気温度を検出する大気温度センサを設け大気温度を検出しているが、後述するように吸気通路２のエアフローメータに設けた吸入空気量較正用の吸気温度センサの検出値を、一定条件下で大気温度の近似値として用いるようにしても良い。
【００７８】
次いでステップ１３０３では機関始動が完了したか否かを判定し、始動が完了していない場合にはステップ１３０５でステップ１３０１で検出した大気温度をＴＨＡＭＢ１  として記憶する。また、ステップ１３０７では、気温変化または降雨の有無に応じて作動状態が変更される補機（例えば、エアコン、ヘッドライト、ワイパ等）の作動状態（ＯＮ／ＯＦＦ状態）が記憶される。また、ステップ１３０９ではカウンタＴ、フラグＫＥの値が０にセットされる。カウンタＴとフラグＫＥの機能は図１０のものと同様である。
【００７９】
ステップ１３０３で機関始動が完了している場合には、ステップ１３１３でフラグＫＥの値から故障診断可否の判定が終了したか否かを判断し、終了していない場合（ＫＥ＝０）の場合にはステップ１３１５でカウンタＴの値をプラス１増大させる。
また、ステップ１３１７では、カウンタＴの値がＴ２  に到達したか否か（例えばＴ２  は機関始動後２０分程度に相当するカウンタＴの値）を判定し、Ｔ２  に到達していない場合には、ステップ１３０１で読み込んだ大気温度ＴＨＡＭＢをＴＨＡＭＢ２  として記憶する。ついでステップ１３２１では、機関始動時の大気温度ＴＨＡＭＢ１  から現在の大気温度ＴＨＡＭＢ２  が所定値α以上変化したか否かを判定する。｜ＴＨＡＭＢ１  −ＴＨＡＭＢ２  ｜≧αの場合には故障診断期間中の気温変化が大きくタンク壁面温度が変化しており誤診断が生じる可能性が高いため、ステップ１３２５で故障診断を禁止する。ステップ１３２５で故障診断が禁止されると、図５から図９の故障診断は中断されるとともに、既に診断が行われた場合には診断結果は無効にされる。
【００８０】
また、ステップ１３２１で大気温度の変化が小さい場合には、次にステップ１３２３に進み、現在の補機の作動状態とステップ１３０７で記憶した補機の作動状態とが比較され、いずれかの補機の作動状態が変化している場合には（例えばワイパがＯＦＦからＯＮになっている場合には）、機関始動後降雨があったため故障診断実行中にタンク壁面温度が変化しており誤診断が行われる可能性があると判断し、気温変化があった場合と同様にステップ１３２５で故障診断が禁止される。
【００８１】
上記のように、タンク壁面温度の変化が大きい場合に故障診断を禁止するようにしたことにより、気温変化、降雨などにより誤診断が生じることが防止される。
なお、上記実施例では、別途大気温度センサを設けて大気温度を検出しているが、吸気通路のエアフローメータに設けられた吸気温度センサで検出した吸気温度を大気温度として使用することもできる。この場合、大気温度と吸気温度との誤差が大きくなることを防止するため、例えば機関が冷間始動状態された（機関冷却水温度と吸気温度との差が所定値（例えば５度Ｃ程度）以下であり、かつ冷却水温度が低い（例えば４０度Ｃ以下）場合にのみステップ１３０５で吸気温度をＴＨＡＭＢ１  として記憶し、また機関始動後は車両走行速度が所定値以上（例えば４０Ｋｍ／Ｈ以上）の状態が数分程度継続した場合にステップ１３１９で吸気温度をＴＨＡＭＢ２  として記憶するようにすることが好ましい。これにより、大気温度センサを別途設けずに判定を行うことができる。
【００８２】
次に、本発明の別の実施例について説明する。前述の図５、図９の故障診断においては、圧力センサ３０の検出した燃料タンク１１内圧力をそのまま（図５）或いはその積分値を用いて（図９）タンク異常の有無を判定している。
ところが、このような場合には、上述の燃料消費量やタンク壁面温度の変化以外にも故障診断結果が圧力センサ３０の検出公差により影響を受ける場合が生じる。
【００８３】
この問題を図５の故障診断を例にとって説明する。図１４は燃料タンク１１に洩れがある場合（一点鎖線）と燃料タンク１１が正常な場合（実線）の機関始動後の燃料タンク１１内の圧力変化を示す図３と同様な図である。ここで、図１４の縦軸は圧力センサ３０の検出値を示し、図中点線は真の大気圧を示している。すなわち、図１４では、圧力センサ３０による検出値と真の圧力との間には誤差によるずれが生じている。通常圧力センサ３０の検出精度には所定の誤差（公差）が認められており、このため、圧力センサ３０による検出値と真の圧力との間には最大で上記公差に相当する量の誤差が生じている可能性がある。いま、図１４に示すように圧力センサ３０の検出値が正の値の誤差ＰＥ  を含んでいたとすると、実際には燃料タンク１１内圧力が大気圧になっている場合でも圧力センサ３０は正の圧力ＰＥ  を出力する。
【００８４】
燃料タンク１１に洩れ等の異常がある場合には、図１４に一点鎖線で示したように機関始動後の燃料タンク１１内圧力は大気圧近傍で僅かに変動するようになる。従って、この場合には図１４の圧力センサで検出した燃料タンク１１内の圧力はＰＥ  近傍で変動することになる。ところが、この場合には図５のルーチンにおいて燃料タンク１１が正常判定される正圧側の判定値Ｐ１  とＰＥ  との差が小さくなっているため、燃料タンク１１内の圧力が実際には大気圧近傍で変動しているにもかかわらず、圧力センサ３０の検出値では判定値Ｐ１  以上になる場合が生じてしまう（図１４斜線部）。このため、本来異常判定されるべき燃料タンク１１が圧力センサ３０の公差のために正常判定されてしまう問題が生じる。図１４は図５の故障診断方法の場合について説明したが、図９のように圧力変化の積分値をとる場合でも、各時点の圧力検出値が公差による誤差を含んでいると同様な問題を生じることになる。
【００８５】
本実施例では、この公差による誤診断の問題を防止するために、図５、図９の故障診断において、圧力センサ３０の検出値に基づいて故障診断を行う代わりに、機関始動時の圧力センサ３０の検出値と始動後の圧力センサの検出値との差（図１４にＰ′で示す値）を用いるようにしている。このように、機関始動時の燃料タンク１１内圧力の検出値と、機関始動後の燃料タンク１１内圧力の検出値との差を用いることにより、公差による検出誤差を含まない機関始動後のタンク内圧力変動に基づいて故障診断を行うことが可能となるため、公差による誤診断が生じることが防止される。
【００８６】
図１５は、上記圧力差Ｐ′算出ルーチンを示すフローチャートである。本ルーチンは、図５、図９のルーチンより短い一定の時間間隔で実行される。
図１５では、ステップ１５０１で圧力センサ３０の検出した燃料タンク１１内圧力Ｐを読み込んだ後ステップ１５０３で機関の始動が完了しているか否かを判定し、始動が完了していない場合にはステップ１５０５に進み、読み込んだＰの値をＰ０  ′として制御回路２０のＲＡＭ２３に記憶する。これにより、機関始動が完了するまでＰ０  ′の値は最新のＰの値を用いて更新され、機関始動完了後はＰ０  ′には始動完了直前（機関始動時）のＰの値が保持される。
【００８７】
また、機関始動が完了するとステップ１５０７では、ステップ１５０１で読み込んだＰの値とＲＡＭ２３に保持したＰ０  ′の値との差が算出され、Ｐ′としてＲＡＭ２３に格納される。本実施例では、図５、図９のルーチン実行時にステップ５０９またはステップ９０９で圧力センサ３０の検出値Ｐを直接読み込む代わりにＲＡＭ２３から上記により算出したＰ′の値を読み込んでルーチンを実行するようにしている。これにより、図５から図９の故障診断を行う場合の圧力センサ３０の公差による影響を排除して正確な故障診断を行うことが可能となる。
【００８８】
次に、図５から図９とは別の故障診断方法の例について説明する。
図５から図９の故障診断はいずれも機関始動後所定期間内のの燃料タンク１１内圧力の変化に基づいて異常の有無の判定を行っている。すなわち、図５から図９の故障診断では或る期間継続して燃料タンク１１内圧力を計測する必要がある。このため、図５から図９の故障診断ではこの期間内のタンク壁面温度の変化や燃料消費量変化等の外乱の影響を受けやすくなっている。
【００８９】
この問題を防止するために、本実施例では図５から図９の故障判定とは別に機関始動時の燃料タンク１１内圧力のみに基づいて故障診断を行うようにしている。前述したように、燃料タンク１１に洩れ等の異常がある場合には機関停止中に燃料タンク１１内圧力は大気圧近傍になっており、機関始動時に燃料タンク１１内圧力と大気圧との差圧は極めて小さくなっている。このため、機関始動時に燃料タンク１１内圧力が所定の正圧以上、または所定の負圧になっているときには、燃料タンクには洩れ等の異常が生じていないと判定することが可能である。  一方、燃料タンク１１が正常であっても気温等の影響によりタンク内圧力が大気圧近傍になっている場合も考えられるため、機関始動時のタンク内圧力が所定の正圧以上または所定の負圧以下になっていない場合でも直ちにタンクに異常が生じたと判定することはできない。そこで、本実施例では機関始動時のタンク内圧力が所定の正圧以上、または所定の負圧以下の場合には燃料タンク１１は正常であると判断し、その後の故障診断は行わず、機関始動時に上記のタンク内圧力条件が成立しておらず、正常と判定することができない場合にのみ、図５から図９のいずれかの故障診断方法を用いて機関始動後に再診断を行うようにしている。これにより、機関始動後直ちに燃料タンク１１の故障診断を行うことができ、燃料タンク１１が正常と判定された場合には以後の故障診断を行う必要がなくなるため異常有無の判定が上記外乱の影響を受け難くなる利点がある。
図１６は本実施例の故障診断を示すフローチャートである。図１６のフローチャートは図５、図７、図９の各フローチャートにステップ１６０３からステップ１６１１を付加した点のみが相違しているため、ここではこの相違に関連する部分のみを説明する。
【００９０】
図１６では機関の始動が完了する前に（ステップ１６０１）圧力センサ３０で燃料タンク１１内圧力Ｐを読み込み（ステップ１６０３）、この圧力Ｐが所定の正圧Ｐ３  以上（ステップ１６０５）、または所定の負圧Ｐ４  以下（ステップ１６０７）の場合にはステップ１６０９で異常判定フラグＦＸの値を０（正常）にセットして判定終了フラグＫＤの値を１にセットする（ステップ１６１１）。
【００９１】
機関始動時に正常判定がなされた場合には、判定終了フラグＫＤの値が１にセットされるため、機関始動後の故障診断は実行されない。
すなわち、機関始動時にステップ１６０３から１６０７で正常判定がなされなかった場合にのみ、ステップ１６１５、ステップ１６１７で図５、図７、図９のいずれかの方法を用いて機関始動後の異常判定が行われる。なお、上記圧力Ｐ３  は例えば０．３ＫＰａ程度に、Ｐ４  は−０．３ＫＰａ程度の圧力に設定される。
【００９２】
次に、図１６の故障診断を行う場合の圧力センサ３０の公差と、内圧制御弁１６、均圧弁１７、大気弁１８（図１）の弁装置の開弁設定圧力との関係について説明する。
前述したように、燃料タンク１１内圧力は内圧制御弁１６、均圧弁１７、大気弁１８等の弁装置の作用により常に、（大気圧＋ΔＰＡ  ）と（大気圧−（ΔＰＢ  ＋ΔＰＣ  ））との間に保持されている。すなわち、燃料タンク１１内圧力は大気圧＋ΔＰＡ  以上に上昇することはできず、大気圧−（ΔＰＢ  ＋ΔＰＣ  ）以下には低下することはできない。ここで、図５から図９の故障診断のように機関始動後所定期間内の圧力変化に基づいて異常の判定を行う場合には、圧力変化の判定値と上記弁装置の開弁設定圧との関係が問題になる。
【００９３】
図１７（Ａ）  は、燃料タンク１１が正常な場合の機関始動後のタンク内圧力変化を示す図３と同様な図であり、実線は機関冷間始動時、点線は機関高温始動時を示している。更に図１７（Ａ）  においてＡ線は内圧制御弁１６の開弁設定圧により定まる燃料タンク１１内の最高圧力、Ｂ線は均圧弁１７、大気弁１８の設定圧力により定まる燃料タンク１１内の最低圧力を示している。
【００９４】
図７の実施例では、機関始動後の所定期間内の燃料タンク内圧力の変化幅（図１７（Ａ）  にΔＰで示す）が所定値ΔＰ０  以下の場合にタンクに異常を生じたと判定するようにしているが、例えば図１７（Ａ）  で機関が高温始動されたような場合（点線）には始動時のタンク内圧力が高いため、タンク内圧力が少し上昇しただけで内圧制御弁１６の開弁圧力に到達してしまうことになり、正常であっても燃料タンク１１内の圧力変化幅ΔＰが正常判定をするのに必要なだけ大きくならないおそれがある。また、同様に気温が低い状態での冷間始動時等では機関始動時の燃料タンク１１内圧力は大気圧よりかなり低くなる場合があるため、機関始動後にタンク内圧力が少し低下しただけで均圧弁１７と大気弁１８とが開弁してしまい、始動後のタンク内圧力低下が少なくなり圧力変化幅ΔＰが十分に大きくならないおそれがある（図１７（Ａ）  、実線）。
【００９５】
図１６では、機関始動時の燃料タンク１１内圧力が所定の正圧Ｐ３  以上、または所定の負圧Ｐ４  以下の場合には直ちに正常判定を行うようにしたことにより、上記のように圧力変化幅ΔＰが小さくなる場合に誤診断が発生する可能性は低くなっているものの、まだ誤診断が生じる場合がある。
例えば、図１７（Ａ）  に示すように、機関始動時に燃料タンク１１内圧力がＰ３  より僅かに低い場合やＰ４  より僅かに高い場合には、機関始動時には正常判定がなされず、機関始動後の圧力変化幅ΔＰに基づく異常診断が行われることになるため、弁装置１６、１７、１８の開弁設定圧と圧力変化幅の判定値ΔＰ０  との設定によっては誤診断の可能性がある。
【００９６】
図１７から判るように、この問題を防止するためには、弁装置の開弁設定圧力は上記の判定値Ｐ３  、Ｐ４  からΔＰ０  の幅の圧力変動を許容するものである必要がある。
すなわち、内圧制御弁１６の開弁設定圧力ΔＰＡ  は正圧側の判定値Ｐ３  からのΔＰ０  の圧力上昇を許容する必要があり（ΔＰＡ  ≧Ｐ３  ＋ΔＰ０  ）、また均圧弁１７と大気弁１８の設定圧力ΔＰＢ  、ΔＰＣ  は負圧側の判定値Ｐ４  からのΔＰ０  の圧力低下を許容する必要がある（ΔＰＢ  ＋ΔＰＣ  ≧Ｐ４  −ΔＰ０  ）。
【００９７】
さらに、圧力センサ３０の検出誤差について考える。圧力センサ３０の検出値は公差による誤差を含むため、例えば、図１７（Ｂ）  に示すように圧力センサ３０の正圧側の検出公差をＰＥ１（すなわち、燃料タンク１１内が大気圧のときに圧力センサが−ＰＥ１の圧力を検出する）とすると、圧力センサ３０で検出した燃料タンク１１内圧力が正圧側の判定値Ｐ３  になっている場合、真のタンク内圧力は最大でＰ３  ＋ＰＥ１    になっている可能性がある。この場合内圧制御弁１６の開弁圧力ΔＰＡ  は上記に加え、さらに公差ＰＥ  に相当する分だけ高く設定されていないとΔＰ０  の圧力上昇を許容できないことになる。また、負圧側の公差ＰＥ２と均圧弁１７、大気弁１８の開弁圧力ΔＰＢ  ＋ΔＰＣ  との関係についても同様である。
【００９８】
従って、内圧制御弁１６、均圧弁１７、大気弁１８の開弁圧ΔＰＡ  、ΔＰＢ  、ΔＰＣ  は、判定値Ｐ３  、Ｐ４  、及びΔＰ０  と圧力センサの正負側の検出公差ＰＥ１、ＰＥ２に対して、
ΔＰＡ  ≧Ｐ３  ＋ΔＰ０  ＋ＰＥ１
ΔＰＢ  ＋ΔＰＣ  ≧Ｐ４  −ΔＰ０  −ＰＥ２
の関係を満たしている必要がある。本実施例では、弁装置１６、１７、１８の開弁設定圧を上記のように設定することにより、圧力センサ３０の公差により異常判定が影響を受ける可能性をなくして正確な異常診断を可能としている。
【００９９】
次に、圧力センサ３０の公差による異常判定への影響を解消する別の方法について説明する。上記の例では、弁装置の開弁設定圧を圧力センサの公差を考慮して決定することにより圧力センサの検出公差による問題を解決しているが、本実施例では燃料タンク１１内圧力を測定する圧力センサ３０を用いて実際に大気圧を測定しておき、この大気圧を用いて圧力センサ３０の検出値を較正することにより正確な判定を行う。
【０１００】
前述のように、圧力センサ３０は大気圧との差圧を検出するものであり、その検出値は誤差を含んでいる。圧力センサ３０の検出値が有する誤差は、圧力センサ３０を用いて実際に大気圧を測定することにより簡単に求めることができる。例えば、圧力センサ３０の検出誤差がＰＥ１（正の値）であった場合には、圧力センサ３０を用いて計測した大気圧は−ＰＥ１となる。この場合、燃料タンク１１内の真の圧力は圧力センサ３０で検出した圧力Ｐから、大気圧の計測値（−ＰＥ１）を引いた値（Ｐ−（−ＰＥ１））となる。
【０１０１】
本実施例では、圧力センサ３０を用いて大気圧を測定し、以後の圧力センサ３０の検出圧力Ｐから大気圧測定値（例えばＰＥ  とする）を引いた値（Ｐ−ＰＥ  ）をＰの代わりに用いて図１６のルーチンを実行することにより正確な判定を行うようにしている。このように、検出値Ｐを直接用いる代わりに大気圧の測定値ＰＥ  を引いた値（Ｐ−ＰＥ  ）を用いて異常判定を行うことにより、圧力センサ３０の検出誤差が相殺され、センサの誤差の影響を完全に排除することが可能となる。
【０１０２】
次に、本実施例の大気圧の測定方法について説明する。図１で説明したように、圧力センサ３０は三方切換弁３１の切換により燃料タンク１１（ベーパ通路１２）とキャニスタ１０（パージ通路１４）との両方の圧力を検出することができる構成となっている。また、キャニスタ１０はパージ制御弁１５を開弁することにより吸気通路２に連通し、キャニスタ１０内圧力は吸気通路２内圧力と等しくなる。一方、吸気通路２内圧力は、機関停止時には大気圧と等しくなっている。そこで、本実施例では、機関始動前（すなわち、機関のイグニッションスイッチＯＦＦからＯＮにされ、まだクランキングが開始されていない状態）で三方切換弁３１をパージ通路１４側に切り換えるとともに、パージ制御弁１５を開弁し、吸気通路２内の大気圧をパージ通路１４に導入して測定することにより、圧力センサ３０を用いて大気圧を計測し、大気圧の計測終了後パージ制御弁１５を閉弁し、三方切換弁３１をベーパ通路１２側に切り換えて燃料タンク１１内の圧力の計測を行うようにしている。これにより、簡易な方法で圧力センサ３０を用いて大気圧を検出することが可能となる。
【０１０３】
また、イグニッションスイッチＯＮ後直ちにクランキングが開始されたような場合には吸気通路２内に負圧が発生するため、圧力センサ３０で計測した値が真の大気圧からずれる場合もある。そこで、上記の方法で機関始動時（始動前）に大気圧を測定し、この大気圧を用いて較正した燃料タンク内圧力を用いて異常判定を実施したあと、機関停止時にイグニッションスイッチがＯＦＦにされた後に同じ方法で圧力センサ３０を用いて大気圧を計測し、機関始動前に計測した大気圧と機関停止後に計測した大気圧との差が所定値以上の場合にはその間に実施した異常有無の判定結果を無効とするようにしても良い。
【０１０４】
次に、圧力センサ３０の公差による異常判定への影響を解消する更に別の方法について説明する。本実施例では、機関始動時のキャニスタ１０内圧力ＰＣＮと燃料タンク１１内圧力Ｐとを比較し、ＰＣＮとＰとの間に所定値以上の差が生じていない場合には燃料タンク１１に異常が生じたと判定する。
機関の停止中、キャニスタ１０内圧力と燃料タンク１１内圧力とはそれぞれ気温、燃料油温度等に応じた変化をするが燃料タンク１１に洩れ等の異常が生じていない場合にはキャニスタ１０内圧力と燃料タンク１１内圧力とが同じ圧力になることは殆どない。
【０１０５】
例えば、キャニスタ１０の大気弁１８に洩れが生じた場合、もしくはキャニスタ１０のハウジングに孔が開いて洩れを生じたような場合にはキャニスタ１０内圧力は短時間で大気圧になる。このため、キャニスタ１０に洩れがある場合には燃料タンク１１内圧力とキャニスタ１０内圧力とが同一になっていれば燃料タンク１１に洩れを生じていることになる。
【０１０６】
次に、キャニスタ１０の大気弁１８等に洩れがなく、パージ制御弁１５閉弁中にキャニスタ１０が完全に密閉状態になっている場合について考える。
図１８は、キャニスタ１０と燃料タンク１１との両方に洩れが生じていない場合の機関停止後のキャニスタ１０内圧力（点線）と燃料タンク１１圧力（実線）の変化を示す図である。
【０１０７】
この状態ではキャニスタ１０内は大気弁１８の設定圧力に等しい負圧を保持している（図１８、▲１▼部）。また、燃料タンク１１は機関停止後の冷却により圧力が低下するが、燃料タンク１１内圧力がキャニスタ１０内圧力より所定値だけ低くなると均圧弁１７が開弁し、燃料タンク１１とキャニスタ１０とを連通する（図１８、▲２▼部）（以下、この状態をバックパージという）。すなわち、バックパージが生じた状態では、燃料タンク１１内圧力は必ずキャニスタ１０内圧力より低くなっている。
【０１０８】
一旦バックパージが生じると気温が低い状態では燃料タンク１１に洩れが無い場合には燃料タンク１１内圧力はキャニスタ１０内圧力より低い状態に維持される（図１８、▲３▼部）。また、この状態から気温が上昇するとキャニスタ１０内圧力と燃料タンク１１内圧力とは気温とともに上昇するが（図１８、▲４▼部）、この上昇傾向はキャニスタ１０と燃料タンク１１とでは同様であるため、バックパージ発生後の気温上昇中にキャニスタ１０内圧力と燃料タンク１１内圧力とが同一になることはない。
【０１０９】
また、気温が上昇してキャニスタ１０内圧力が大気放出弁１９（図２）の設定圧力を越えるとキャニスタ１０内は大気と連通する。このため、キャニスタ内圧力は大気放出弁１９の設定圧（大気圧近傍）に維持される（図１８、▲５▼部）。
従って、バックパージ発生後、燃料タンク１１が正常であれば、図１８に示すように燃料タンク１１とキャニスタ１０との圧力が等しくなるのは、気温による圧力上昇が生じた時の限られた時間（図１８、▲５▼点）のみであり、機関始動時期が正確にこの時期に合致した場合以外はキャニスタ１０と燃料タンク１１との圧力が等しくなることはない。
【０１１０】
従って、機関始動時にキャニスタ１０内圧力と燃料タンク１１内圧力とに差が生じていない場合には燃料タンク１１にもれが生じたと判定することができる。図１９は上記を用いた故障診断ルーチンを示すフローチャートである。本ルーチンは制御回路２０により一定時間毎に実行される。
図１９においてルーチンがスタートすると、ステップ１９０１では機関始動が完了しているか否かが判定される。始動が完了していない場合にはステップ１９０３で三方切換弁３１（図１）をキャニスタ１０側に切り換えてステップ１９０５で圧力センサ３０でキャニスタ１０内圧を検出し、この圧力をＰＣＮとして記憶する。また、機関始動が完了するとステップ１９１１では三方切換弁３１を燃料タンク１１側に切り換えて圧力センサ３０で燃料タンク１１内圧力を検出し（ステップ１９１３）、この燃料タンク１１内圧力Ｐとキャニスタ１０内圧力として記憶したＰＣＮとの差の絶対値が所定値α以上か否かを判定する。ここで、αは０に近い正の値であり、｜ＰＣＮ−Ｐ｜＜αの場合にはＰＣＮ≒Ｐが成立するため、ステップ１９１７で以上判定フラグＦＸの値を１（異常）にセットしたあと、ステップ１９２１で異常判定終了フラグＫＤを１にセットしてルーチンを終了する。また、｜ＰＣＮ−Ｐ｜≧αの場合には異常が生じていないと判定できるため、ステップ１９１９で異常判定フラグＦＸの値を０（正常）にセットして、ステップ１９２１を実行後ルーチンを終了する。なお、ステップ１９２１で終了フラグＫＤの値が１にセットされると、次回ルーチン実行時から本ルーチンはステップ１９０９から直接終了するようになりステップ１９１１以下は実行されない。
【０１１１】
上述のように、本実施例においても同一の圧力センサ３０で検出したキャニスタ１０内圧力と燃料タンク１１内圧力とを比較することにより異常判定を行うため、圧力センサ３０の検出誤差が相殺され、正確な判定を行うことができる。
また、図１６の場合と同様に機関始動後直ちに燃料タンク１１の故障診断を行うことができるため、異常有無の判定期間中の燃料消費量や気温の変化等の外乱が判定結果に影響を与えることを防止できる効果がある。
【０１１２】
なお、図１９の故障診断は機関停止中にバックパージが生じた場合に最も正確な異常判定が可能となるため、機関運転中に機関冷却水温度条件（例えば、冷却水温度が高い状態がある程度の時間継続したこと）等から機関停止後にバックパージが生じるか否かを判断し、この判断結果をイグニッションスイッチＯＦＦ時にも記憶内容を保持可能なバックアップＲＡＭ等に格納するようにして、停止中にバックパージが生じる条件で前回機関が運転された場合にのみ始動時の上記故障診断を行うようにしても良い。
【０１１３】
【発明の効果】
各請求項に記載の発明によれば、燃料タンク内圧力に基づいて故障診断を行う場合に誤診断を防止して正確な故障診断を行うことが可能となるという効果が得られる。すなわち、
請求項１から３に記載の発明によれば、機関始動後の燃料消費量の相違による誤診断が防止されるため、正確な故障診断を行うことができる。
【０１１４】
また、請求項４に記載の発明によれば、気温の変化や降雨の影響等により誤診断が生じることが防止されるため、正確な故障診断を行うことができる。
更に、請求項５から６に記載の発明によれば、圧力センサの検出公差に影響されることなく正確な故障診断を行うことができる。
また、請求項７から８に記載の発明によれば、圧力センサの検出公差による影響を排除するとともに、機関始動時に短時間のうちに故障診断を終了することができるため、診断期間中の燃料消費量や気温の変化、降雨等に影響されることのない正確な故障診断を行うことができる。
【図面の簡単な説明】
【図１】本発明の故障診断装置を適用した自動車用内燃機関の実施例の概略構成を示す図である。
【図２】キャニスタの構成を説明する図である。
【図３】機関始動後の燃料タンク内圧力の時間的変化を説明する図である。
【図４】エバポパージシステムの故障診断方法の一実施例を説明する図である。
【図５】故障診断ルーチンの一実施例を説明するフローチャートである。
【図６】エバポパージシステムの故障診断方法の一実施例を説明する図である。
【図７】故障診断ルーチンの一実施例を説明するフローチャートである。
【図８】エバポパージシステムの故障診断方法の一実施例を説明する図である。
【図９】故障診断ルーチンの一実施例を説明するフローチャートである。
【図１０】故障診断実行可否の判定ルーチンの一実施例を示すフローチャートである。
【図１１】故障診断結果の判定ルーチンの一実施例を示すフローチャートである。
【図１２】故障診断ルーチンの一実施例を説明するフローチャートである。
【図１３】故障診断ルーチンの一実施例を説明するフローチャートである。
【図１４】エバポパージシステムの故障診断方法の一実施例を説明する図である。
【図１５】圧力センサの検出誤差の較正ルーチンの一実施例を説明するフローチャートでである。
【図１６】故障診断ルーチンの一実施例を説明するフローチャートである。
【図１７】エバポパージシステムの弁装置の開弁圧力の設定値を説明する図である。
【図１８】エバポパージシステムの故障診断方法の一実施例を説明する図である。
【図１９】故障診断ルーチンの一実施例を説明するフローチャートである。
【符号の説明】
１…機関本体
２…吸気通路
１０…キャニスタ
１１…燃料タンク
１２…ベーパ配管
１４…パージ配管
１５…パージ制御弁
１６…内圧制御弁
１８…大気弁
２０…制御回路
３０…圧力センサ
３１…三方切換弁
【図１】
0003565611.tif 000002
【図２】
0003565611.tif 000003
【図３】
0003565611.tif 000004
【図４】
0003565611.tif 000005
【図５】
0003565611.tif 000006
【図６】
0003565611.tif 000007
【図７】
0003565611.tif 000008
【図８】
0003565611.tif 000009
【図９】
0003565611.tif 000010
【図１０】
0003565611.tif 000011
【図１１】
0003565611.tif 000012
【図１２】
0003565611.tif 000013
【図１３】
0003565611.tif 000014
【図１４】
0003565611.tif 000015
【図１５】
0003565611.tif 000016
【図１６】
0003565611.tif 000017
【図１７】
0003565611.tif 000018
【図１８】
0003565611.tif 000019
【図１９】
0003565611.tif 000020