JP2005023891A - 蒸発燃料処理装置 - Google Patents

蒸発燃料処理装置 Download PDF

Info

Publication number
JP2005023891A
JP2005023891A JP2003192416A JP2003192416A JP2005023891A JP 2005023891 A JP2005023891 A JP 2005023891A JP 2003192416 A JP2003192416 A JP 2003192416A JP 2003192416 A JP2003192416 A JP 2003192416A JP 2005023891 A JP2005023891 A JP 2005023891A
Authority
JP
Japan
Prior art keywords
purge
failure
canister
closed
ccv
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2003192416A
Other languages
English (en)
Inventor
Akinori Osanai
昭憲 長内
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2003192416A priority Critical patent/JP2005023891A/ja
Publication of JP2005023891A publication Critical patent/JP2005023891A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Supplying Secondary Fuel Or The Like To Fuel, Air Or Fuel-Air Mixtures (AREA)
  • Electrical Control Of Air Or Fuel Supplied To Internal-Combustion Engine (AREA)

Abstract

【課題】本発明はキャニスタを用いた蒸発燃料処理装置に関し、キャニスタの大気孔を閉塞するCCVに閉故障が生じた状況下でも、適正にパージの動作を継続させることを目的とする。
【解決手段】キャニスタと内燃機関の吸気通路との導通状態を制御するパージVSVを設ける。キャニスタの大気孔を開閉するCCVを設ける。目標パージ率tPGRに合致するパージ率PGRが実現されるようにパージVSVを制御する。CCVの閉故障時には第1の規則に従ってtPGRを設定し(ステップ272〜278)、その閉故障の発生が認められない状況下では第2の規則に従ってtPGRを設定する(ステップ268)。第2の規則は、第1の規則に比して、tPGRを小さな値に設定する規則とする。
【選択図】 図12

Description

【0001】
【発明の属する技術分野】
本発明は、蒸発燃料処理装置に係り、特に、キャニスタに吸着された蒸発燃料を内燃機関の吸気通路に吸入させることにより処理する蒸発燃料処理装置に関する。
【0002】
【従来の技術】
従来、例えば特開平5−180101号公報に開示されるように、燃料タンクの内部で発生した蒸発燃料を吸着するためのキャニスタと、そのキャニスタを必要に応じて内燃機関の吸気通路に導通させるためのパージ制御弁とを備える蒸発燃料処理装置が知られている。このシステムにおいて、パージ制御弁が開弁されると、吸気負圧がキャニスタに導かれ、キャニスタに吸着されている燃料が空気と共に吸気通路に吸入される。このため、上記従来のシステムによれば、燃料タンクの内部で発生する蒸発燃料を大気に放出させることなく処理することができる。
【0003】
上述した従来の装置は、キャニスタの大気孔を開閉するキャニスタ制御弁を備えていえる。この装置において、通常のパージ動作を実現するためには、パージ制御の実行中にキャニスタ制御弁が開いていることが必要である。換言すると、この装置において、キャニスタ制御弁に閉故障(閉状態で固着する故障)が発生すると、予定したパージ制御が実現できない事態が生ずる。
【0004】
上記従来の装置は、そのような事態の発生を検知して適切な対処を行うべく、キャニスタ制御弁の閉故障を検知する機能、および、その閉故障が検知された場合に、通常行われている空燃比の学習を停止する機能を備えている。このため、上記従来の装置によれば、キャニスタ制御弁に閉故障が生じている状況下で、空燃比学習が不適切に進められるのを防ぐことができる。
【0005】
【特許文献1】
特開平5−180101号公報
【0006】
【発明が解決しようとする課題】
しかしながら、上記従来の装置は、キャニスタ制御弁の閉故障が検知された場合に、空燃比の学習を停止する以外、何らその故障に対処する制御を行わない。このため、上記従来の装置によっては、キャニスタ制御弁に閉故障が生じた状況下でパージの動作を継続させた場合に、タンク内圧が過剰に負圧化する等の不都合を生じさせるものであった。
【0007】
本発明は、上記の点に鑑みてなされたものであり、キャニスタの大気孔に配置された制御弁に閉故障が生じた状況下でも、適正にパージの動作を継続させることのできる蒸発燃料処理装置を提供することを目的とする。
【0008】
【課題を解決するための手段】
第1の発明は、上記の目的を達成するため、燃料タンクから流出する蒸発燃料を吸着するキャニスタを備える蒸発燃料処理装置であって、
前記キャニスタと内燃機関の吸気通路との導通状態を制御するパージ制御弁と、
前記キャニスタの大気孔を開閉するキャニスタ開閉弁と、
前記キャニスタ開閉弁の閉故障を検出する閉故障検出手段と、
パージ制御量が目標制御量に合致するように、内燃機関の運転中に前記パージ制御弁を制御するパージ制御手段と、
前記キャニスタ開閉弁の閉故障時には第1の規則に従って前記目標制御量を設定し、前記閉故障の発生が認められない状況下では第2の規則に従って前記目標制御量を設定する目標制御量設定手段とを備え、
前記第1の規則は、前記第2の規則に比して、前記目標制御量を小さな値に設定する規則であることを特徴とする。
【0009】
また、第2の発明は、第1の発明において、タンク内圧を検出するタンク内圧検出手段を備え、
前記目標制御量設定手段は、前記キャニスタ開閉弁に閉故障が生じており、かつ、前記タンク内圧が目標下限圧を下回る場合には、前記第1の規則によって設定された目標制御量をより小さな値に更新する目標制御量減量手段を含むことを特徴とする。
【0010】
また、第3の発明は、第2の発明において、前記目標制御量設定手段は、前記キャニスタ開閉弁に閉故障が生じており、かつ、前記タンク内圧が目標上限圧を上回る場合には、前記閉故障が生じていない場合に比して小さな更新幅で前記第1の規則によって設定された目標制御量が増加するのを許容する目標増加許容手段を含むことを特徴とする。
【0011】
また、第4の発明は、第2または第3の発明において、前記キャニスタおよび前記燃料タンクを含む系内への空気の流入を許容するチェック弁を備え、
前記目標下限圧は、前記チェック弁の開弁圧以上の値であることを特徴とする。
【0012】
また、第5の発明は、燃料タンクから流出する蒸発燃料を吸着するキャニスタを備える蒸発燃料処理装置であって、
前記キャニスタと内燃機関の吸気通路との導通状態を制御するパージ制御弁と、
前記キャニスタの大気孔を開閉するキャニスタ開閉弁と、
前記キャニスタ開閉弁の閉故障を検出する閉故障検出手段と、
内燃機関の運転中に、所望のパージガス流量が流通するように前記パージ制御弁を制御するパージ制御手段と、
前記キャニスタ開閉弁の閉故障時に許容される前記パージガス流量の変化速度を、前記閉故障の発生が認められない状況下で許容される変化速度に比して低く抑える流量変化抑制手段と、
を備えることを特徴とする。
【0013】
【発明の実施の形態】
以下、図面を参照してこの発明の実施の形態について説明する。尚、各図において共通する要素には、同一の符号を付して重複する説明を省略する。
【0014】
実施の形態1.
[システム構成の説明]
図1は、本発明の実施の形態1の蒸発燃料処理装置の構成を説明するための図である。本実施形態の蒸発燃料処理装置は、燃料タンク10を備えている。燃料タンク10には、タンク内圧PTNKを測定するためのタンク内圧センサ12が設けられている。また、燃料タンク10の給油孔を塞ぐキャップには、燃料タンク10の外部から内部へ向かうガスの流れのみを許容するチェック弁13が設けられている。更に、燃料タンク10には、ROV(Roll Over Valve)14,16を介してベーパ通路18の一端が接続されている。
【0015】
ベーパ通路18の他端はキャニスタ20に接続されている。キャニスタ20は、その内部に活性炭を備えており、ベーパ通路18から流入してくる蒸発燃料を吸着することができる。キャニスタ20には大気孔が設けられており、その大気孔にはCCV(Canister Closed Valve)22とチェック弁24が配置されている。CCV22は、駆動信号の供給を受けることにより開状態となる常時閉タイプの電磁弁である。また、チェック弁24は、大気側からキャニスタ20内部へ向かう流体の流れのみを許容する一方向弁である。
【0016】
チェック弁24の開弁圧は、燃料タンク10のキャップに配されているチェック弁13の開弁圧より大きな値に設定されている。このため、本実施形態のシステムでは、キャニスタ20および燃料タンク10を含む系に負圧が供給された場合、チェック弁24より先にチェック弁13が開弁し、その系内には、原則として燃料タンク10側から大気が流入することとなる。
【0017】
キャニスタ20には、パージ通路26の一端が接続されている。パージ通路26の途中には、その内部を流れるガスの流量を制御するためのパージVSV(Vacuum Switching Valve)28が設けられている。パージVSV28は、デューティ駆動されることにより、実質的にそのデューティ比に応じた開度を実現する制御弁である。
【0018】
パージ通路26の他端は、内燃機関の吸気通路30に接続されている。吸気通路30の端部にはエアクリーナ32が設けられている。エアクリーナ32の下流側には吸入空気量GAに応じた出力を発するエアフロメータ34が配置されている。更に、エアフロメータ34の下流には、吸入空気量GAを制御するための電子スロットル弁36が配置されている。電子スロットル弁36の近傍には、スロットル開度TAに応じた出力を発するスロットルセンサ38が配置されている。上述したパージ通路26は、スロットル弁36の下流において吸気通路30に連通している。
【0019】
吸気通路30は、吸気マニホールド40を介して内燃機関(図示せず)に導通している。吸気マニホールド40には、内燃機関に対して燃料を噴射するための燃料噴射弁42が配置されている。燃料噴射弁42には、燃料タンク10の内部に配置されている燃料フィードポンプ44から、所定の圧力で燃料が供給されている。燃料噴射弁42は、開弁信号を受けることにより開弁し、その開弁時間に応じた量だけ燃料を噴射する。従って、内燃機関に対する燃料噴射量は、燃料噴射弁42の開弁時間、つまり、燃料噴射時間TAUを変化させることにより制御することができる。
【0020】
内燃機関には、回転数センサ46、水温センサ48、吸気温センサ50、および酸素センサ52等のセンサが組み込まれている。回転数センサ46は、機関回転数NEに応じた出力を発するセンサである。水温センサ48は、内燃機関の冷却水温THWに応じた出力を発するセンサである。吸気温センサ50は、吸気通路30の内部を流れる吸入空気の温度に応じた出力を発するセンサである。また、酸素センサ52は、内燃機関の排気通路に配置され、触媒(図示せず)に流入する排気ガスがリーンであるか(酸素を含んでいるか)、或いはリッチであるか(酸素を含んでいないか)に応じた出力を発するセンサである。
【0021】
本実施形態のシステムは、ECU(Electronic Control Unit)60を備えている。ECU60には、上述した各種のセンサおよびアクチュエータが接続されている。ECU60は、それらのセンサの出力に基づいて種々の演算処理を行い、CCV22やパージVSV28、或いは、燃料噴射弁42などの制御を実行することができる。
【0022】
[システムの動作説明]
(基本動作)
本実施形態のシステムは、内燃機関の停止中や給油中は、CCV22を開弁状態とし、パージVSV28を閉弁状態とする。この状態によれば、燃料タンク10から流出する蒸発燃料をキャニスタ20に吸着することができる。また、このシステムは、内燃機関の運転中に、CCV22を開いた状態でパージVSV28を適宜デューティ駆動する。このような制御によれば、CCV22から空気を取り込んでキャニスタ20をパージし、パージVSV28の駆動デューティ比に応じた流量のパージガスを内燃機関の吸気通路30に吸入させることができる。このように、本実施形態のシステムは、燃料タンク10から流出する蒸発燃料を大気に放出させることなく、燃料として燃焼させることにより処理することができる。
【0023】
(パージVSVの開故障判定)
図1に示すシステムは、パージVSV28に故障が生ずると、通常の機能を果たすことができない状態となる。ここで、パージVSV28には、弁が開いたままとなる開故障と弁が閉じたままとなる閉故障が生ずることがある。パージVSV28の故障の影響を最小限に抑えるためには、その故障の発生を早期に検知することが望ましく、また、その故障が開故障であるのか、或いは閉故障であるのかが区別できることが望ましい。このため、本実施形態のシステムは、内燃機関の始動直後に、パージVSV28の開故障を検知するための診断、および閉故障を検知するための診断を順次実行することとしている。
【0024】
図2は、パージVSV28の開故障を検知する際の処理の内容を説明するためのタイミングチャートである。より具体的には、図2(A)は、内燃機関の始動直後におけるパージVSV28の状態を示す。この図に示すように、パージVSV28は、開故障の検出中は常に閉弁状態に制御される。また、図2(B)および図2(E)は、それぞれ内燃機関の始動直後におけるCCV22の状態、および機関回転数NEの変化を示す。これらの図に示すように、CCV22は、機関回転数NEが350rpmに達するまで、つまり、内燃機関の完爆が認識されるまでは開状態に維持され、その完爆が認められた時点で閉弁状態とされる。
【0025】
図2(C)は、内燃機関の始動直後におけるタンク内圧PTNKの変化を示す。特に、この図中に示す波形は、パージVSV28に開故障が生じていた場合の波形を示している。尚、図2(C)中に示すP0は、CCV22が開いている状況下でのタンク内圧PTNKであり、実質的には大気圧を意味している。また、同図中に示すΔPは、内燃機関の始動が開始された後、所定時間KC1(図2(E)参照)が経過した時点でPTNKとP0の間に生じていた差圧を意味している。そして、図2(C)中に示すKPは、開故障の有無を判断するための判定値である。
【0026】
吸気通路30の内部には、内燃機関の始動と共に吸気負圧が発生する。パージVSV28が図2(A)に示すように適正に閉じている場合は、吸気負圧の影響がタンク内圧PTNKに及ぶことはない。従って、パージVSV28に開故障が生じていない場合には、内燃機関の始動後、タンク内圧PTNKは、P0の近傍に維持されるはずである。これに対して、パージVSVに開故障が生じている場合には、吸気負圧がパージVSV28を通過してキャニスタ20に到達する。内燃機関の完爆後はCCV22が閉じられるため、上記の吸気負圧は、キャニスタ20を通過して燃料タンク10にまで到達する。その結果、タンク内圧PTNKには、図2(C)に示すような変化が生ずる。つまり、パージVSV28に開故障が生じている場合は、内燃機関の始動後に、タンク内圧PTNKが、逆止弁13の開弁圧(或いは、逆止弁24の開弁圧に対応する圧力)に達するまで低下する。従って、本実施形態のシステムによれば、原理的には、内燃機関の始動後に大きな差圧ΔPが生ずるか否かを見ることにより、パージVSV28の開故障の有無を判断することができる。
【0027】
図2(D)は、パージVSV28に開故障が生じているか否かを表すための開故障判定フラグXVSV開の状態を示す。図2に示す例では、所定時間KC1が経過した時点でKPを下回る差圧ΔPの発生が認められる。この場合、図2(D)に示すように、開故障判定フラグXVSVには、その時点で1がセットされる。
【0028】
図3は、パージVSV28に開故障が生じているか否かを判断すべく、ECU60が実行する具体的処理の内容を説明するためのフローチャートである。尚、図3に示すルーチンは、車両のIGスイッチがオンとされると同時に起動され、その後、所定時間毎に繰り返し実行されるものとする。
【0029】
図3に示すルーチンでは、先ず、第1OBDカウンタの計数値COBD1が、ジャンプ判定値KC11に達したか否かが判別される(ステップ100)。第1OBDカウンタは、車両のIGスイッチのオン時にイニシャル処理によりクリアされるカウンタである。従って、車両の始動直後は、本ステップ100において、COBD1≧KC11が成立しないとの判定がなされる。
【0030】
上記ステップ100において、COBD1≧KC11が成立しないとの判定が下されると、次に、計数値COBD1がインクリメントされる(ステップ102)。次いで、その計数値COBD1が、診断判定値KC1に達したか否かが判別される(ステップ104)。診断判定値KC1は、パージVSV28に開故障が生じているか否かを判断するタイミングに対応する値であり、上述したジャンプ判定値KC11に比して「1」だけ小さな値である。車両の始動直後は、本ステップ104において、COBD1≧KC1が成立しないとの判定がなされる。
【0031】
上記ステップ104において、COBD1≧KC1が成立しないとの判定が下されると、次に、機関回転数NEが350rpmを超えたか否かが判別される(ステップ106)。ここで、350rpmは、内燃機関が完爆したか否かを判断するための判定値である。内燃機関のクランキング期間等、その始動が開始された直後は、NE>350rpmの条件が成立しない。この場合は、次に、その時点におけるタンク内圧PTNKが基準圧P0として記憶される(ステップ108)。以後、その時点における冷却水温THWおよび吸気温THAが、それぞれ開始時冷却水温THWSTおよび開始時吸気温THASTとして記憶され(ステップ110、112)、今回の処理サイクルが終了される。
【0032】
内燃機関の始動が開始された後、機関回転数NEが350rpmに達するまでは、図3に示すルーチンが起動される毎に、上述したステップ100〜112の処理が繰り返し実行される。その結果、ECU60は、機関回転数NEが350rpmに達した時点でのタンク内圧PTNKを基準圧P0として記憶することができ、また、その時点の冷却水温THWおよび吸気温THAを、それぞれ始動時冷却水温THWSTおよび始動時吸気温THASTとして記憶することができる。
【0033】
機関回転数NEが350rpmに達した後、つまり、内燃機関の完爆後に図3に示すルーチンが起動されると、今度は、上記ステップ106において、NE>350rpmが成立すると判断される(ステップ106)。この場合、次に、その時点におけるタンク内圧PTNKと基準圧P0との差圧ΔP=PTNK−P0が算出される(ステップ114)。この差圧ΔPは、内燃機関の完爆後にタンク内圧PTNKに有意な低下が生じない場合は0近傍の値として算出され、一方、PTNKに有意な低下が認められる場合は負の値として算出される。
【0034】
図3に示すルーチンでは、次に、CCV22の閉弁処理が実行される(ステップ116)。次いで、上記の差圧ΔPが開故障判定値KPより小さいか否かが判別される(ステップ118)。つまり、内燃機関の完爆後に、タンク内圧PTNKに有意な低下が生じているか否かが判別される。その結果、ΔP<KPが成立しないと判別される場合は、吸気負圧の影響がタンク内圧PTNKに及んでいないと判断することができる。この場合は、現時点でパージVSV28の開故障が認められないことを表すべく、開故障判定仮フラグtXVSV開に「0」がセットされる(ステップ120)。一方、上記ステップ118において、ΔP<KPが成立すると判別される場合は、吸気負圧の影響がタンク内圧PTNKに及んでいる、つまり、パージVSV28が開いていると判断することができる。この場合は、パージVSV28の開故障が認められることを表すべく、開故障判定仮フラグtXVSV開に「1」がセットされる。
【0035】
内燃機関が完爆した後、パージVSV28に開故障が生じているか否かを判断すべきタイミングが到来するまでの間は、つまり、第1OBDカウンタの計数値COBD1が診断判定値KC1に達するまでの間は、図3に示すルーチンが起動される毎に、上述したステップ100〜106およびステップ114〜122の処理が繰り返される。その結果、開故障判定仮フラグtXVSV開の最終値は、COBD1がKC1に達する直前の処理サイクルにおいて設定されることになる。
【0036】
図3に示すルーチンが起動された後、上記ステップ104において、COBD1≧KC1の成立が判定された場合は、開故障の有無を判断すべき時期が到来したと判断できる。この場合、CCV22の開弁処理が行われた後(ステップ124)、開始時冷却水温THWSTが、冷間判定値KTHWより低いか否かが判別される(ステップ126)。
【0037】
冷間判定値KTHWは、燃料タンク10の内部で蒸発燃料が多量に発生する可能性が有るか否かを判断するため判定値である。従って、開始時冷却水温THWSTがKTHWより低くないと判別される場合は、内燃機関の始動時に、燃料タンク10の内部で蒸発燃料が多量に発生していた可能性があると判断できる。このような状況下では、差圧ΔPが蒸発燃料の影響を受けるため、差圧ΔPを基礎とする判定に誤りが生じ易い。そこで、図3に示すルーチンでは、上記ステップ126においてTHWST<KTHWが成立しないと判別された場合は、開故障に関する最終的な判定を下すことなく今回の処理サイクルを終了することとした。このような処理によれば、温暖な状態での内燃機関の再始動時などに、パージVSV28の開故障の有無が誤って判断されるのを防ぐことができる。
【0038】
上記ステップ126において、THWST<KTHWが成立すると判別された場合は、差圧ΔPがさほど蒸発燃料の影響を受けていないと判断することができる。この場合、以後、開故障判定仮フラグtXVSV開の値が、開故障判定フラグXVSV開の値としてセットされる(ステップ128)。以後、ECU60は、XVSV開に1がセットされている場合には、パージVSV28に開故障が生じていると判断し、一方、XVSV開に0がセットされている場合は、パージVSV28に開故障が生じていないと判断する。
【0039】
上述した一連の処理が終了した後、図3に示すルーチンが再び起動された際には、上記ステップ100において、COBD1≧KC11(=KC1+1)が成立すると判断される。この場合、以後ステップ102以降の処理がジャンプされ、実質的な処理が何ら行われることなく図3に示すルーチンが終了される。本実施形態において、ECU60は、以上の通り説明した図3に示すルーチンを実行することにより、内燃機関の始動直後に、パージVSV28に開故障が生じているか否かを正確に判定することができる。
【0040】
(パージVSVの閉故障判定)
図4は、パージVSV28の閉故障を検知する際の処理の内容を説明するためのタイミングチャートである。より具体的には、図4(A)は、図3に示す開故障検出処理の終了後におけるパージVSV28の状態を示す。図4に示す時刻t0は、内燃機関の始動後パージVSV28が初めて開弁された時刻である。パージVSV28は、内燃機関の始動後、既述したジャンプ判定値KC11(図3ステップ100参照)に相当する時間が経過するまでは閉弁状態に制御される。従って、時刻t0は、計数値COBD1がジャンプ判定値KC11に到達する以後の時刻である。
【0041】
図4(B)は、閉故障判定処理の実行中におけるCCV22の状態を示す。また、図4に示すKC2は、パージVSV28に閉故障が生じているか否かを判断すべき時刻、つまり、閉故障判定処理の終了時刻を意味している。図4(B)に示すように、CCV22は、時刻t0においてパージVSV28が開かれた後、閉故障判定処理が終了するまでの間、閉状態に制御される。
【0042】
図4(C)は、閉故障検出処理の実行中におけるタンク内圧PTNKの変化を示す。より詳細には、この図中に破線で示す波形は、正常時におけるタンク内圧PTNKの波形であり、一方、図中に実線で示す波形は、パージVSV28に閉故障が生じている場合の波形を示す。閉故障検出処理の実行中に、パージVSV28が適正に開弁している場合は、吸気負圧がキャニスタ20に導入される。閉故障検出処理の実行中は、既述した通りCCV22が閉じているため、キャニスタ20に導入された負圧は、燃料タンク10にまで到達する。このため、パージVSV28に閉故障が生じていなければ、タンク内圧PTNKは、図4(C)中に破線で示すように、時刻t0の後、大きく負圧側に変化するはずである。これに対して、パージVSV28に閉故障が生じている場合は、吸気負圧の導入が妨げられるため、図4(C)中に実線で示した通り、タンク内圧PTNKに有意な低下は生じない。従って、本実施形態のシステムによれば、原理的には、閉故障検出処理の開始後にタンク内圧PTNKに有意な低下が生ずるか否かを見ることで、パージVSV28の閉故障の有無を判断することができる。
【0043】
図4(D)は、パージVSV28に閉故障が生じているか否かを表すための閉故障判定フラグXVSV閉の状態を示す。タンク内圧PTNKが図4(C)中に実線で示すように変化した場合、閉故障検出処理の終了時刻(KC2の時刻)において、タンク内圧PTNKに有意な低下が生じていないと判断される。この場合、図4(D)に示すように、閉故障判定フラグXVSV閉に1がセットされる。
【0044】
図5は、パージVSV28に閉故障が生じているか否かを判断すべく、ECU60が実行する具体的処理の内容を説明するためのフローチャートである。尚、図5に示すルーチンは、車両のIGスイッチがオンとされた後、所定時間毎に繰り返し起動されるものとする。
【0045】
図5に示すルーチンでは、先ず、第1OBDカウンタの計数値COBD1が、既述したジャンプ判定値KC11に達しているか否かが判別される(ステップ130)。その結果、COBD1≧KC11が成立しないと判定される間は、以後速やかに今回の処理サイクルが終了される。従って、ステップ132以降の処理は、COBD1≧KC11が成立して初めて、つまり、既述した開故障検出処理(図3参照)が終了して初めて実行される。
【0046】
上記ステップ130において、COBD1≧KC11の成立が認められると、次に、パージ率PGRが判定値KPGR以上であるか否かが判別される(ステップ132)。パージ率PGRは、吸入空気量GAに対するパージ流量QPGの比率「(QPG/GA)×100」である。パージ流量QPGは、パージVSV28を通過してキャニスタ20から吸気通路30に向かって流れるパージガスの流量であり、パージVSV28の開度(駆動デューティ)と吸気負圧PMとに基づいて公知の手法で演算することができる。本実施形態実施形態において、パージ制御弁28の駆動デューティは、図5に示すルーチンとは異なるルーチンで演算され、その駆動デューティにより実現されるパージ率PGRも他のルーチンにより演算される。本ステップ132では、他のルーチンにおいて演算されたパージ率PGRが読み込まれ、PGR≧KPGRが成立しているか否かが判断される。
【0047】
上記ステップ132において、PGR≧KPGRが成立しないと判別された場合は、閉故障の有無を判断するのに十分な負圧がパージ通路26に導入されていないと判断することができる。この場合、以後、閉故障の判定に必要な処理が進められることなく、速やかに今回の処理サイクルが終了される。一方、PGR≧KPGRが成立すると判別された場合は、閉故障の有無を判断するのに足る十分な負圧導入が行われていると判断することができる。この場合、次に、第2OBDカウンタの計数値COBD2が、終了判定値KC3に達しているか否かが判別される(ステップ134)。
【0048】
第2OBDカウンタは、第1OBDカウンタと同様に、IGスイッチのオン時にイニシャル処理によりクリアされる。従って、閉故障判定処理の開始直後は、上記ステップ134において、COBD2≧KC2が成立しないとの判定がなされる。この場合、先ず、現時点でのタンク内圧PTNKと既述した基準圧P0との差圧ΔP=PTNK−P0が算出される(ステップ136)。次いで、第2OBDカウンタのインクリメント処理が行われる(ステップ138)。
【0049】
図5に示すルーチンでは、次に、第2OBDカウンタの計数値COBD2が、診断判定値KC2に達したか否かが判別される(ステップ140)。診断判定値KC2は、パージVSV28に閉故障が生じているか否かを判断するタイミングに対応する値であり、上述した終了判定値KC3に比して「1」だけ小さな値である。閉故障判定処理の開始直後は、本ステップ140において、COBD2≧KC2が成立しないとの判定がなされる。
【0050】
上記ステップ140において、COBD2≧KC2が成立しないとの判定が下されると、次に、CCV22の閉弁処理が実行される(ステップ142)。次いで、上記の差圧ΔPが閉故障判定値KP1より大きいか否かが判別される(ステップ144)。閉故障判定値KP1は、パージVSV28が適正に開いている場合に算出される差圧ΔP(負の値)に比して大きな値である。従って、ΔP>KP1の成立が認められる場合は、パージVSV28に閉故障が生じていると判断することができる。この場合、ECU60は、パージVSV28に閉故障が生じていることを表すべく、閉故障判定仮フラグtXVSV閉に「1」をセットする。(ステップ146)。一方、上記ステップ144において、ΔP>KP1が成立しないと判別された場合は、パージVSV28の閉故障が認められないと判断できる。この場合、ECU60は、パージVSV28の閉故障が認められないことを表すべく、閉故障判定仮フラグtXVSV閉に「0」をセットする(ステップ148)。
【0051】
閉故障判定処理が開始された後、第2OBDカウンタの計数値COBD2が診断判定値KC2に達するまでの間は、十分なパージ率PGRが確保されている環境下で図5に示すルーチンが起動される毎に、上述したステップ130〜148の処理が繰り返される。その結果、閉故障判定仮フラグtXVSV閉の最終値は、COBD2がKC2に達する直前の処理サイクルにおいて設定されることになる。
【0052】
図5に示すルーチンが起動された後、上記ステップ140において、COBD2≧KC2の成立が判定された場合は、閉故障の有無を判断すべき時期が到来したと判断できる。この場合、CCV22の開弁処理が実行された後(ステップ150)、開始時冷却水温THWSTが、冷間判定値KTHWより低いか否かが判別される(ステップ152)。そして、THWST<KTHWが成立しないと判別された場合は、開故障判定処理の場合と同様の理由で(上記ステップ126参照)、閉故障に関する判定が保留されたまま今回の処理サイクルが終了される。このため、本実施形態のシステムによれば、パージVSV28の閉故障についても、温暖な状態で内燃機関が再始動されるような場合に、その発生の有無が誤って判断されるのを防ぐことができる。
【0053】
一方、上記ステップ152において、THWST<KTHWの成立が認められた場合は、閉故障判定仮フラグtXVSV閉の値が、閉故障判定フラグXVSV閉の値としてセットされる(ステップ154)。以後、ECU60は、XVSV閉に1がセットされている場合には、パージVSV28に閉故障が生じていると判断し、一方、XVSV閉に0がセットされている場合は、パージVSV28に閉故障が生じていないと判断する。
【0054】
上述した一連の処理が終了した後、図5に示すルーチンが再び起動され、上記ステップ134の処理が実行される際には、第2OBDカウンタの計数値COBD2が、終了判定値KC3(=KC2+1)に達していると判断される。この場合、以後ステップ136以降の処理がジャンプされ、実質的な処理が何ら行われることなく図5に示すルーチンが終了される。本実施形態において、ECU60は、以上の通り説明した図5に示すルーチンを実行することにより、内燃機関の始動直後に、パージVSV28に閉故障が生じているか否かを正確に判定することができる。
【0055】
(パージVSVに閉故障が生じていない状況下でのCCVの故障判定)
次に、図6乃至図11を参照して、CCV22を対象とする故障判定の手法について説明する。本実施形態の装置は、CCV22についても、開故障と閉故障とを区別して検出する。ここで、それらの故障検出は、パージVSV28に閉故障が生じているか否かに応じて、つまり、キャニスタ20に吸気負圧が導けるか否かに応じて、異なった手法で行うことが適切である。ここでは、先ず図6乃至図8を参照して、パージVSV28に閉故障が生じていない場合の故障検出の手法(以下、「CCV故障検出第1手法」と称す)を説明する。
【0056】
図6は、CCV故障検出第1手法によってCCV22の開故障を検知する際の動作を説明するためのタイミングチャートである。ここに示すタイミングチャートは、パージVSV28を対象とする故障検出の処理、つまり、図3および図5に示す故障検出のためのルーチンが終了した後の動作を示すものである。
【0057】
より具体的には、図6(A)は、それらのルーチンが実行されることによりパージVSV28に閉故障が生じていないことが確認された後に、パージVSV28に向けて発せられる指令の内容を示す。図6(A)に示す通り、ここでは、パージVSV28に対する指令が継続的に開指令に維持される。その結果、CCV故障検出第1手法では、CCV22の開故障を検出する間中、キャニスタ20に吸気負圧が導かれる状態が常時維持される。
【0058】
図6(B)は、CCV故障検出第1手法によってCCV22の開故障を検出する際に、CCV22に与えられる指令の内容を示す。この図に示すように、CCV故障検出第1手法による開故障の検出時には、その検出処理が開始された後、CCV22に対する指令は常時閉指令に維持される。
【0059】
図6(C)は、CCV故障検出第1手法による開故障の検出中にタンク内圧PTNKに生ずる変化を示す。より詳細には、この図中に破線で示す波形は、正常時におけるタンク内圧PTNKの波形であり、一方、図中に実線で示す波形は、CCV22に開故障が生じている場合の波形を示す。CCV故障検出第1手法によれば、CCV22の開故障の検出中は、キャニスタ22に吸気負圧が導入され続けるため、CCV22が閉指令を受けて適正に閉弁していれば、タンク内圧PTNKは、図6(C)中に破線で示すように大きく負圧側に変化するはずである。これに対して、CCV22に開故障が生じていると、キャニスタ20に大気が流入することにより、図6(C)中に実線で示す通り、タンク内圧PTNKに有意な低下は生じない。このため、CCV故障検出第1手法においては、開故障の検出開始後に、タンク内圧PTNKに有意な低下が生ずるか否かを見ることで、CCV22に開故障が生じているか否かを判断することができる。尚、図6(C)中に示すKP2は、タンク内圧PTNKに有意な低下が生じているか否かを判断するために設定された判定値である。
【0060】
図6(D)は、CCV22に開故障が生じているか否かを表すための開故障判定フラグXCCV開の状態を示す。タンク内圧PTNKが図6(C)中に実線で示すように変化した場合、開故障の有無を判断する時刻(KC32の時刻)において、タンク内圧PTNKに有意な低下が生じていないと判断される。この場合、CCV22に開故障が生じていることを表すべく、図6(D)に示すように、開故障判定フラグXCCV開に1がセットされる。一方、KC32の時点においてタンク内圧PTNKがKP2を下回っていれば、CCV22に開故障は生じていないと判断され、開故障判定フラグXCCV開には0がセットされる。
【0061】
図7は、CCV故障検出第1手法により、CCV22の閉故障を検出する際の動作を説明するためのタイミングチャートである。ここに示すタイミングチャートは、図6に示す開故障の検出動作に次いで(厳密には、その動作に次いで行われる漏れ故障の検出動作に次いで)実行される動作を示したものである。尚、漏れ故障の検出動作については、後に、図8を参照して、ECU60が実行する具体的な処理を説明する際にその内容を説明する。
【0062】
図7(A)は、CCV22の閉故障検出の際にパージVSV28に向けて発せられる指令の内容を示す。この図に示す通り、CCV22の閉故障検出の際には、パージVSV28に常に開指令が発せられる。その結果、ここでは、CCV22の開故障検出の場合と同様に、キャニスタ20に吸気負圧が導入される状態が常時維持される。図7(B)は、CCV22の閉故障検出の際にCCV22に供給される指令の内容を示す。この図に示すように、CCV故障検出第1手法では、CCV22の閉故障検出の期間中、CCV22に対して常に開指令が発せられる。
【0063】
図7(C)は、CCV故障検出第1手法による閉故障の検出中にタンク内圧PTNKに生ずる変化を示す。より詳細には、この図中に破線で示す波形は、正常時におけるタンク内圧PTNKの波形であり、一方、図中に実線で示す波形は、CCV22に閉故障が生じている場合の波形を示す。CCV22が開指令を受けて適正に開弁すれば、タンク内圧PTNKは、キャニスタ20への大気の流入に伴い、図7(C)中に破線で示すように大きく大気圧側に変化するはずである。これに対して、CCV22に閉故障が生じていると、キャニスタ20への大気の流入が生じないため、図7(C)中に実線で示す通り、タンク内圧PTNKは負圧化された状態のまま維持される。このため、CCV故障検出第1手法においては、閉故障の検出開始後に、タンク内圧PTNKに有意な上昇が生ずるか否かを見ることで、CCV22に閉故障が生じているか否かを判断することができる。尚、図7(C)中に示すKP4は、タンク内圧PTNKに有意な上昇が生じたか否かを判断するために設定された判定値である。
【0064】
図7(D)は、CCV22に閉故障が生じているか否かを表すための閉故障判定フラグXCCV閉開の状態を示す。タンク内圧PTNKが図7(C)中に実線で示すように変化した場合、閉故障の有無を判断する時刻(KC35の時刻)において、タンク内圧PTNKに有意な上昇は生じていないと判断される。この場合、CCV22に閉故障が生じていることを表すべく、図7(D)に示すように、閉故障判定フラグXCCV閉に1がセットされる。一方、KC35の時点においてタンク内圧PTNKがKP4を上回っていれば、CCV22に閉故障は生じていないと判断され、閉故障判定フラグXCCV閉には0がセットされる。尚、図7(D)に示すKC33はCCV22に開弁指令が発せられる時刻である。また、KC34は、PTNKの応答時間を考慮して、PTNKに有意な上昇が生じたか否かが判断され始める時刻である。
【0065】
図8は、上述したCCV故障検出第1手法によりCCV22の故障診断を進めるべくECU60が実行するルーチンのフローチャートを示す。尚、図8に示すルーチンは、上記図5に示すルーチンに続いて実行されるものとする。図8に示すルーチンでは、先ず、XVSV閉=0が成立するか否かが判別される(ステップ160)。ここでXVSV閉=0が成立しないと判別された場合は、パージVSV28に閉故障が生じていると判断される。この場合、後に図9乃至11を参照して説明するCCV故障検出第2手法により、以後の処理が進められる。一方、XVSV閉=0が成立すると判別された場合は、以後、CCV故障検出第1手法により以後の処理が進められる。
【0066】
ここでは、先ず、第3OBDカウンタの計数値COBD3が、終了判定値K31に達しているか否かが判別される(ステップ162)。その結果、COBD3≧KC31が成立すると判定される間は、以後速やかに今回の処理サイクルが終了される。CPBD3は、内燃機関の始動直後にイニシャル処理によりクリアされている。従って、内燃機関の始動後しばらくの間は本ステップ162において、COBD3≧KC31が成立しないと判断される。この場合は、次に、タンク内圧PTNKと基準圧P0(上記ステップ108参照)との差圧ΔP=PTNK−P0が算出される(ステップ164)。次いで、第3OBDカウンタのインクリメント処理が行われる(ステップ166)。
【0067】
図8に示すルーチンでは、次に、第3OBDカウンタの計数値COBD3が、開故障診断判定値KC32に達したか否かが判別される(ステップ168)。開故障診断判定値KC32は、CCV22に開故障が生じているか否かを判断するタイミングに対応する値であり、上述した終了判定値KC31に比して小さな値である。CCV22の開故障を検出する処理が開始された直後は、本ステップ168において、COBD3≧KC32が成立しないとの判定がなされる。この場合、次に、CCV22に対して閉指令が発せられる(ステップ170)。
【0068】
次いで、上記の差圧ΔPが開故障判定値KP2より大きいか否かが判別される(ステップ172)。CCV22が適正に閉弁している場合は、PTNKが大きく低下するため差圧ΔPは開故障判定値KP2より小さな値となる(図6(C)参照)。従って、ΔP>KP2の成立が認められる場合は、CCV22に開故障が生じている可能性があると判断することができる。この場合、ECU60は、開故障判定仮フラグtXCCV開に「1」をセットする(ステップ174)。一方、上記ステップ172において、ΔP>KP2が成立しないと判別された場合は、CCV22に開故障は生じていないと判断できる。この場合、ECU60は、開故障判定仮フラグtXCCV開に「0」をセットする(ステップ176)。これらの処理が終了すると、次に、現在のタンク内圧PTNKが開故障判定終了時圧力P1として記憶された後(ステップ178)、今回の処理サイクルが終了される。
【0069】
CCV22の開故障を検出する処理が開始された後、第3OBDカウンタの計数値COBD3が開故障診断判定値KC32に達するまでの間は、図8に示すルーチンが起動される毎に、上述したステップ160〜178の処理が繰り返される。その結果、開故障判定仮フラグtXCCV開の最終値は、COBD3がKC32に達する直前の処理サイクルにおいて設定されることになる。また、開故障判定終了時圧力P1には、COBD3がKC32に達する直前の処理サイクル時におけるタンク内圧PTNKが設定されることになる。
【0070】
第3OBDカウンタの計数値COBD3が開故障診断判定値KC32以上になると、その値COBD3が終了判定値KC31より小さい限り、図8に示すルーチンが起動される毎に、上記ステップ168において、COBD3≧KC32の成立が認められる。この場合、先ず、CCV22の開故障に関する判断を開故障判定フラグXCCV開に反映させるべく、仮フラグtXCCV開の値がXCCV開にセットされる(ステップ180)。以後、ECU60は、XCCV開に1がセットされている場合には、CCV22に開故障が生じていると判断し、一方、XCCV開に0がセットされている場合は、CCV22に開故障が生じていないと判断する。
【0071】
図8に示すルーチンでは、次に、上記の如くセットされた開故障判定フラグXCCV開につき、XCCV開=0が成立するか否かが判別される(ステップ182)。その結果、XCCV開=0が成立しないと判別された場合は、故障の発生とその内容(開故障)が確認できたとして、以後速やかに今回の処理サイクルが終了される。一方、XCCV開=0が成立する場合は、更に故障検出の処理が続けられる。
【0072】
ここでは、先ず、XVSV開=0が成立するかが判別される(ステップ184)。XVSV開=0が成立すると判別された場合は、パージVSV28を閉じてキャニスタ20を含む系内に圧力を封じ込めることが可能であると判断できる。この場合は、更に、第3OBDカウンタの計数値COBD3が漏れ故障診断判定値KC33に達しているか否かが判別される(ステップ186)。
【0073】
漏れ故障診断判定値KC33は、開故障診断判定値KC32より所定数だけ大きく、かつ、終了判定値KC31より小さな値である。この場合、上記ステップ186では、COBD3がKC32を越えた後KC33に達するまでの間だけ、COBD3≧KC33の不成立が判定される。図8に示すルーチンにおいて、このような判定がなされている間は、キャニスタ20を含む系内の漏れ故障を行うべく、ステップ186の処理に次いで、パージOBDフラグXOBDPGに1がセットされる(ステップ188)。
【0074】
ECU60は、XOBDPGに1がセットされている間は、パージの実行条件が成立していないとして、パージVSV28を閉弁状態とする。CCV22がこの時点で閉じられていることから、パージVSV28が閉弁されると、キャニスタ20および燃料タンク10を含む系は吸気通路30からも大気からも切り離されることになり、その系内に圧力が封じ込められた状態が形成される。
【0075】
図8に示すルーチンでは、パージOBDフラグXOBDPGに1がセットされた後、現在のタンク内圧PTNKと開故障判定終了時圧力P1との差PTNK−P1(以下、「圧力変動量」と称す)が、漏れ故障判定値KP3より大きいか否かが判別される(ステップ190)。上記の系が適正に密閉されていれば、KP3を越える圧力変動量PTNK−P1が生ずることはない。従って、PTNK−P1>KP3の成立が認められる場合は、キャニスタ20を含む系に漏れ故障が生じている可能性があると判断することができる。この場合、ECU60は、漏れ故障判定仮フラグtXEVPに「1」をセットする(ステップ192)。一方、上記ステップ190において、PTNK−P1>KP3が成立しないと判別された場合は、上記の系内に漏れ故障は認められないと判断できる。この場合、ECU60は、漏れ故障判定仮フラグtXEVPに「0」をセットする(ステップ194)。これらの処理が終了すると、今回の処理サイクルが終了される。
【0076】
パージVSV28に開故障が生じている場合は、上述した漏れ故障の検出処理を行うことができない。このため、上記ステップ184において、XVSV開=0の不成立が認められた場合は、上記ステップ186〜194の処理はジャンプされ、その後速やかにステップ196以降の処理が行われる。また、上記ステップ186において、CPBD3≧KC33の成立が認められた場合は、漏れ故障の検出期間が終了していると判断できる。この場合も、上記ステップ186〜194の処理がジャンプされ、以後速やかにステップ196以降の処理が行われる。
【0077】
ここでは、先ず、パージOBDフラグXOBDPGが0にリセットされる(ステップ196)。XOBDPGが0とされると、パージの実行条件の成立が認められ、再びパージVSV28は開状態とされる。次に、漏れ故障に関する判断の内容を漏れ障判定フラグXEVPに反映させるべく、仮フラグtXEVPの値がXEVPにセットされる(ステップ198)。以後、ECU60は、XEVPに1がセットされている場合には、キャニスタ20を含む系に漏れ故障が生じていると判断し、一方、XEVPに0がセットされている場合は、その系に漏れ故障は生じていないと判断する。
【0078】
上記の処理が終了すると、次に、CCV22の閉故障を検出するため、CCV22に対して開指令が与えられる(ステップ200)。次に、第3OBDカウンタの計数値COBD3が応答判定値KC34に達したか否かが判別される(ステップ202)。CCV22が上記の開指令を受けて適正に開弁すると、キャニスタ20に大気が流入するのに伴ってタンク内圧PTNKは大気圧に向けて上昇し始める。応答判定値KC34は、PTNKに有意な変化が生ずるまでの応答時間分だけ漏れ故障診断判定値KC33より大きく、かつ、終了判定値KC31より小さな値である。従って、本ステップ202で、COBD3≧KC34の成立が認められない場合は、十分な応答時間が経過していないと判断することができる。この場合、ECU60は、以後速やかに今回の処理サイクルを終了させる。
【0079】
一方、上記ステップ202において、COBD3≧KC34の成立が認められた場合は、CCV22に対して開指令が発せられた後、十分な応答時間が経過していると判断できる。図8に示すルーチンでは、この場合、第3OBDカウンタの計数値COBD3が閉故障診断判定値KC35に達したか否かが判別される(ステップ204)。閉故障診断判定値KC35は、応答判定値KC34より所定数だけ大きく、かつ、終了判定値KC31より1だけ小さな値である。計数値COBD3が応答判定値KC34に達した後、所定回数だけ処理サイクルが繰り返される間は、ここでCOBD3≧KC35の不成立が判定される。この間は、その判定処理に次いで、更に、差圧ΔPが閉故障判定値KP4より小さいか否かが判別される(ステップ206)。
【0080】
上記の判別の結果、ΔP<KP4の成立が認められた場合は、CCV22に対して開指令が与えられているにも関わらず、タンク内圧PTNKに有意な上昇が生じていないと判断できる(図7(C)中の実線参照)。この場合、ECU60は、CCV22に閉故障が生じている可能性があると判断して、閉故障判定仮フラグtXCCV閉に「1」をセットする(ステップ208)。一方、上記ステップ206において、ΔP<KP4が成立しないと判別された場合は、タンク内圧PTNKに有意な上昇が生じていると判断できる。ECU60は、この場合、CCV22に閉故障が生じている可能性はないと判断して、閉故障判定仮フラグtXCCV閉に「0」をセットする(ステップ210)。
【0081】
第3OBDカウンタの計数値COBD3が閉故障診断判定値KC35に達すると、上記ステップ204において、COBD3≧KC35の成立が判断される。この場合、ECU60は、CCV22の閉故障に関する判断を閉故障判定フラグXCCV閉に反映させるべく、仮フラグtXCCV閉の値をXCCV閉にセットする(ステップ212)。以後、ECU60は、XCCV閉に1がセットされている場合には、CCV22に閉故障が生じていると判断し、一方、XCCV閉に0がセットされている場合は、CCV22に閉故障が生じていないと判断する。次回以降、図8に示すルーチンが起動された際には、上記ステップ162において、COBD3≧KC31の成立が認められる。この場合、ECU60は、実質的な処理を何ら行うことなく図8に示すルーチンを終了させる。以上説明した通り、図8に示すルーチンによれば、パージVSV28に閉故障が生じていないことを条件に、CCV22の開故障および閉故障の有無、並びに装置内の漏れ故障の有無を正確に診断することができる。
【0082】
(パージVSVに閉故障が生じている状況下でのCCVの故障判定)
次に、図9乃至図11を参照して、パージVSV28に閉故障が生じている状況下でCCVの故障を検出する手法(以下、「CCV故障検出第2手法」と称す)について説明する。図9は、CCV故障検出第2手法よってCCV22の閉故障を検知する際の動作を説明するためのタイミングチャートである。ここに示すタイミングチャートは、パージVSV28を対象とする故障検出(図3および図5に示す処理)の結果、パージVSV28に閉故障が生じていることが確認された後に実現される動作を示したものである。
【0083】
より具体的には、図9(A)は、パージVSV28の閉故障が認められた後に、パージVSV28に向けて発せられる指令の内容を示す。パージVSV28に閉故障が生じている場合は、パージVSV28を開くことはできない。ここでは、無駄な電力消費を発生させないこと等を目的として、図9(A)に示す通り、パージVSV28に対する指令は継続的に閉指令に維持される。CCV故障検出第2手法を用いる場合は、このような状況下で、つまり、キャニスタ20に吸気負圧を導くことができない状況下でCCV20の開故障を検出することが要求される。
【0084】
図9(B)は、CCV故障検出第2手法によってCCV22の開故障を検出する際に、CCV22に与えられる指令の内容を示す。この図に示すように、CCV故障検出第2手法による開故障の検出時には、その検出処理が開始された後、CCV22に対する指令は常時閉指令に維持される。
【0085】
図9(C)は、CCV故障検出第2手法による開故障の検出中にタンク内圧PTNKに生ずる変化を示す。より詳細には、この図中に破線で示す波形は、正常時におけるタンク内圧PTNKの波形であり、一方、図中に実線で示す波形は、CCV22に開故障が生じている場合の波形を示す。CCV故障検出第2手法によれば、CCV22の開故障の検出中は、パージVSV28が閉弁状態に維持されるため、CCV22が閉指令を受けて適正に閉弁していれば、キャニスタ20および燃料タンク10を含む系は密閉された状態となる。この場合、タンクベーパの発生する環境が整っていれば、タンク内圧PTNKは、図9(C)中に破線で示すように正圧側に変化するはずである。これに対して、CCV22に開故障が生じていると、上記の系が密閉されないため、図9(C)中に実線で示す通り、タンク内圧PTNKに有意な上昇は生じない。このため、CCV故障検出第2手法においては、タンクベーパの発生する環境下でタンク内圧PTNKに有意な上昇が生ずるか否かを見ることで、CCV22に開故障が生じているか否かを判断することができる。
【0086】
図9(D)は、CCV22に開故障が生じているか否かを表すための開故障判定フラグXCCV開の状態を示す。タンク内圧PTNKが図9(C)中に実線で示すように変化した場合、開故障の有無を判断する時刻(KC42の時刻)において、タンク内圧PTNKに有意な上昇が生じていないと判断される。この場合、CCV22に開故障が生じていることを表すべく、図9(D)に示すように、開故障判定フラグXCCV開に1がセットされる。一方、KC42の時点においてタンク内圧PTNKが正圧化していれば、CCV22に開故障は生じていないと判断され、開故障判定フラグXCCV開には0がセットされる。
【0087】
図10は、CCV故障検出第2手法により、CCV22の閉故障を検出する際の動作を説明するためのタイミングチャートである。ここに示すタイミングチャートは、図9に示す開故障の検出動作に次いで実行される動作を示したものである。図10(A)は、CCV22の閉故障検出の際にパージVSV28に向けて発せられる指令の内容を示す。CCV故障検出第2手法では、ここでも、パージVSV28に対する指令は常に閉指令とされる。図10(B)は、CCV22の閉故障検出の際にCCV22に供給される指令の内容を示す。この図に示すように、CCV故障検出第2手法では、CCV22の閉故障検出の期間中、CCV22に対して常に開指令が発せられる。
【0088】
図10(C)は、CCV故障検出第2手法による閉故障の検出中にタンク内圧PTNKに生ずる変化を示す。より詳細には、この図中に破線で示す波形は、正常時におけるタンク内圧PTNKの波形であり、一方、図中に実線で示す波形は、CCV22に閉故障が生じている場合の波形を示す。CCV22が開指令を受けて適正に開弁すれば、キャニスタ20が大気に解放されるのに伴い、タンク内圧PTNKは図10(C)中に破線で示すように大気圧近傍値に低下するはずである。これに対して、CCV22に閉故障が生じていると、キャニスタ20が大気に解放されないため、図10(C)中に実線で示す通り、タンク内圧PTNKは正圧化されたまま維持される。このため、CCV故障検出第2手法においては、閉故障の検出開始後に、タンク内圧PTNKに有意な低下が生じたか否かにより、CCV22に閉故障が生じているか否かを判断することができる。
【0089】
図10(D)は、CCV故障検出第2手法によりセットされる閉故障判定フラグXCCV閉開の状態を示す。タンク内圧PTNKが図10(C)中に実線で示すように変化した場合、閉故障の有無を判断する時刻(KC44の時刻)において、タンク内圧PTNKに有意な低下は生じていないと判断される。この場合、CCV22に閉故障が生じていることを表すべく、図10(D)に示すように、閉故障判定フラグXCCV閉に1がセットされる。一方、KC44の時点においてタンク内圧PTNKが大気圧近傍値に低下していた場合は、CCV22に閉故障は生じていないと判断され、閉故障判定フラグXCCV閉に0がセットされる。尚、図10(D)に示すKC43は、PTNKの応答時間を考慮して、PTNKに有意な低下が生じたか否かが判断され始める時刻である。
【0090】
図11は、上述したCCV故障検出第2手法によりCCV22の故障診断を進めるべくECU60が実行するルーチンのフローチャートを示す。尚、図11に示すルーチンは、上記図8に示すルーチン中、上記ステップ160において、XVSV閉=0の不成立が認められた場合に実行されるルーチンである。
【0091】
図11に示すルーチンでは、先ず、現在の吸気温THAが、開始時冷却水温THAST(上記ステップ112参照)より所定値k1以上高温であるか否かが判別される(ステップ220)。その結果、THA≧k1+THASTの成立が認められない場合は、未だ暖機が十分に進行しておらず、タンクベーパが活発に発生する状況が形成されていないと判断できる。この場合は、CCV22の開故障判定を進めることなく、以後速やかに今回の処理サイクルが終了される。一方、上記の条件が成立する場合は、タンクベーパが活発に発生する状況が形成されていると判断され、以後、CCV22の開故障を検出するための処理が進められる。尚、本ステップ220の処理は、タンクベーパの発生状況を推定するための処理であり、その推定が可能である限り、他の処理に置き換えることが可能である。
【0092】
上記ステップ222において、THA≧k1+THASTの成立が認められた場合は、次に、第4OBDカウンタの計数値COBD4が、終了判定値K41に達しているか否かが判別される(ステップ222)。その結果、COBD4≧KC41が成立すると判定される間は、以後速やかに今回の処理サイクルが終了される。CPBD4は、内燃機関の始動直後にイニシャル処理によりクリアされている。従って、内燃機関の始動後しばらくの間は本ステップ222において、COBD4≧KC41が成立しないと判断される。この場合は、次に、タンク内圧PTNKと基準圧P0(上記ステップ108参照)との差圧ΔP=PTNK−P0が算出される(ステップ224)。次いで、第4OBDカウンタのインクリメント処理が行われる(ステップ226)。
【0093】
図11に示すルーチンでは、次に、第4OBDカウンタの計数値COBD4が、開故障診断判定値KC42に達したか否かが判別される(ステップ228)。開故障診断判定値KC42は、CCV22に開故障が生じているか否かを判断するタイミングに対応する値であり、上述した終了判定値KC41に比して小さな値である。CCV22の開故障を検出する処理が開始された直後は、本ステップ228において、COBD4≧KC42が成立しないとの判定がなされる。この場合、次に、CCV22に対して閉指令が発せられる(ステップ230)。
【0094】
次いで、上記の差圧ΔPが開故障判定値KP2より大きいか否かが判別される(ステップ232)。CCV22が適正に閉弁している場合は、タンクベーパの発生に伴ってタンク内圧PTNKが上昇するため、差圧ΔPは開故障判定値KP2より大きな値となる。従って、ΔP>KP2が不成立であれば、CCV22に開故障が生じている可能性があると判断することができる。この場合、ECU60は、開故障判定仮フラグtXCCV開に「1」をセットする(ステップ234)。一方、上記ステップ232において、ΔP>KP2の成立が判定された場合は、CCV22に開故障は生じていないと判断できる。この場合、ECU60は、開故障判定仮フラグtXCCV開に「0」をセットする(ステップ236)。
【0095】
CCV22の開故障を検出する処理が開始された後、第4OBDカウンタの計数値COBD4が開故障診断判定値KC42に達するまでの間は、図11に示すルーチンが起動される毎に、上述したステップ220〜236の処理が繰り返される。その結果、開故障判定仮フラグtXCCV開の最終値は、COBD4がKC42に達する直前の処理サイクルにおいて設定されることになる。
【0096】
第4OBDカウンタの計数値COBD4が開故障診断判定値KC42より大きな値になると、その値COBD4が終了判定値KC41より小さい限り、図11に示すルーチンが起動される毎に、上記ステップ228において、COBD4≧KC42の成立が認められる。この場合、先ず、CCV22の開故障に関する判断を開故障判定フラグXCCV開に反映させるべく、仮フラグtXCCV開の値がXCCV開にセットされる(ステップ238)。以後、ECU60は、XCCV開に1がセットされている場合には、CCV22に開故障が生じていると判断し、一方、XCCV開に0がセットされている場合は、CCV22に開故障が生じていないと判断する。
【0097】
図11に示すルーチンでは、次に、上記の如くセットされた開故障判定フラグXCCV開につき、XCCV開=0が成立するか否かが判別される(ステップ240)。その結果、XCCV開=0が成立しないと判別された場合は、故障の発生とその内容(開故障)が確認できたとして、以後速やかに今回の処理サイクルが終了される。一方、XCCV開=0が成立する場合は、CCV22の閉故障を検出するための処理が更に継続される。
【0098】
ここでは、先ず、CCV22に対して開指令が与えられる(ステップ242)。次に、第4OBDカウンタの計数値COBD4が応答判定値KC43に達したか否かが判別される(ステップ244)。これらの処理が最初に実行される時点では、タンク内圧PTNKが、タンクベーパの発生に伴って正圧化されている。CCV22が、上記ステップ242の処理を受けて適正に開弁した場合は、キャニスタ20が大気に解放されることによりそのタンク内圧PTNKは大気圧に向けて低下する。応答判定値KC43は、PTNKに有意な低下が生ずるまでの応答時間分だけ開故障診断判定値KC42より大きく、かつ、終了判定値KC41より小さな値である。従って、本ステップ244で、COBD4≧KC43の成立が認められない場合は、十分な応答時間が経過していないと判断することができる。この場合、ECU60は、以後速やかに今回の処理サイクルを終了させる。
【0099】
一方、上記ステップ244において、COBD4≧KC43の成立が認められた場合は、CCV22に対して開指令が発せられた後、十分な応答時間が経過していると判断できる。図11に示すルーチンでは、この場合、差圧ΔPが閉故障判定値KP5より大きいか否かが判別される(ステップ246)。その結果、ΔP>KP5の成立が認められた場合は、CCV22に対して開指令が与えられているにも関わらず、タンク内圧PTNKが正圧化されたままであると判断できる。この場合、ECU60は、CCV22に閉故障が生じている可能性があると判断して、閉故障判定仮フラグtXCCV閉に「1」をセットする(ステップ248)。一方、上記ステップ246において、ΔP>KP5が成立しないと判別された場合は、タンク内圧PTNKが大気圧近傍値にまで低下していると判断できる。ECU60は、この場合、CCV22に閉故障が生じている可能性はないと判断して、閉故障判定仮フラグtXCCV閉に「0」をセットする(ステップ250)。
【0100】
図11に示すルーチンでは、これらの処理に次いで、第4OBDカウンタの計数値COBD4が閉故障診断判定値KC44に達したか否かが判別される(ステップ252)。閉故障診断判定値KC44は、応答判定値KC43より所定数だけ大きく、かつ、終了判定値KC41より1だけ小さな値である。計数値COBD4が応答判定値KC43に達した後、所定回数だけ処理サイクルが繰り返される間は、ここでCOBD4≧KC44の不成立が判定される。この間は、その判定処理の後、速やかに今回の処理サイクルが終了される。
【0101】
第4OBDカウンタの計数値COBD4が閉故障診断判定値KC44に達すると、上記ステップ252において、COBD4≧KC44の成立が判断される。この場合、ECU60は、CCV22の閉故障に関する判断を閉故障判定フラグXCCV閉に反映させるべく、仮フラグtXCCV閉の値をXCCV閉にセットする(ステップ254)。以後、ECU60は、XCCV閉に1がセットされている場合には、CCV22に閉故障が生じていると判断し、一方、XCCV閉に0がセットされている場合は、CCV22に閉故障が生じていないと判断する。次回以降、図11に示すルーチンが起動された際には、上記ステップ222において、COBD4≧KC41の成立が認められる。この場合、ECU60は、実質的な処理を何ら行うことなく図11に示すルーチンを終了させる。以上説明した通り、図11に示すルーチンによれば、パージVSV28に閉故障が生じている環境下で、CCV22の開故障および閉故障の有無を正確に診断することができる。
【0102】
(パージ制御の説明)
上述した図8または図11に示すルーチンによれば、CCV22の開故障は、CCV22に現実に開故障が生じている場合の他、キャニスタ22および燃料タンク10を含む系に大きな漏れが生じている場合にも、その発生が認められる。大きな漏れが生じている状況下で多量のパージガスが流通すると、その漏れの箇所から系内に、空気と共に異物が吸入されることがある。このため、このような状況下では、パージの実行を制限することが望ましい。
【0103】
また、本実施形態の装置において、CCV22に閉故障が生じている場合は、キャニスタ20への空気の流入が阻止される。このような状況下で通常通りにパージが行われると、キャニスタ20および燃料タンク10を含む系が過剰に負圧化して、その系に大きな圧力負荷が加わることになる。このため、CCV22に閉故障が生じている場合にも、パージの実行は制限することが好ましい。
【0104】
以上説明した通り、本実施形態の装置では、CCV22に開故障または閉故障が発生した場合に、それぞれパージを制限すべき状態が形成される。そこで、本実施形態の装置は、CCV22の開故障が認められた場合、およびCCV22の閉故障が認められた場合に、それぞれ通常制御とは異なる手法でパージを制御することとした。
【0105】
図12は、本実施形態においてECU60が実行するパージ制御ルーチンのフローチャートを示す。図12に示すルーチンでは、先ず、パージの実行条件が成立しているか否かが判別される。その結果、パージの実行条件が成立していないと判別された場合は、パージ率PGRの目標値tPGRが0とされ、更に、パージVSV28の駆動デューティDPGが0とされる(ステップ262)。この場合、パージVSV28が全閉状態とされるため、パージガスの流通は生じない。
【0106】
一方、パージ条件の成立が認められた場合は、次に、XCCV開=1が成立するかが判別される(ステップ264)。XCCV開=1の成立が認められない場合は、更に、XCCV閉=1が成立するかが判別される(ステップ266)。ここでXCCV閉=1が成立しないと判別された場合は、CCV22が正常であると判断できる。この場合は、目標パージ率tPGRが、次式を用いて通常の手法で設定される(ステップ268)。
【0107】
Figure 2005023891
【0108】
上記(1)式に含まれるPGRは、前回の処理サイクル時に算出された最終パージ率、つまり、前回の処理サイクルにより実現されるパージ率である。この式(1)によれば、目標パージ率tPGRは、基本的には、前回の処理サイクル時に実現されたパージ率PGRにスキップ値PGRSKPを加えることにより算出される。但し、目標パージ率tPGRの上限は、最大パージ率PGRMX或いは限界パージ率PGRLMTによりガードされる。尚、ここでは、PGRMXやPGRLMTについての詳細な説明は省略する。従って、目標パージ率tPGRは、ガード値PGRMXおよびPGRLMTを越えない範囲で増加方向に更新されることになる。
【0109】
図12に示すルーチンにおいて、上記ステップ264の処理により、XCCV開=1が成立すると判別された場合は、CCV22に開故障が生じていると判断できる。この場合は、次式により目標パージ率tPGRが算出される(ステップ270)。
【0110】
tPGR=PGR+SKP10≦PGRMXCCV開 ・・・(2)
【0111】
上記(2)式に含まれるSKP10は、通常制御において用いられるスキップ値PGRSKPに比して小さな値である。同様に、PGRMXCCV開も、通常制御において用いられる最大パージ率PGRMXより小さな値である。このため、上記の(2)式によれば、目標パージ率tPGRは、通常制御時に算出される値より小さな値となる。目標パージ率tPGRが小さな値であるほど、パージ制御により流通させられるパージガス流量QPGは少量となる。従って、上記の処理によれば、パージガス流量QPGを通常時に比して減量することができ、系内に生じている可能性のある漏れ箇所から、異物が吸入される確率を下げることができる。
【0112】
図12に示すルーチンにおいて、上記ステップ266の処理により、XCCV閉=1が成立すると判別された場合は、CCV22に閉故障が生じていると判断できる。つまり、通常の手法でパージが行われると、タンク内圧PTNKが過剰に負圧化する可能性があると判断できる。この場合は、更に、現在のタンク内圧PTNKが目標上限値KP11を越えているか否かが判別される(ステップ272)。PTNK>KP11が成立する場合は、CCV22の閉故障に関わらず、タンク内圧PTNKは十分に高い圧力に保たれていると判断できる。換言すると、燃料タンク10に不当な圧力負荷を加えずにパージ率PGRをより大きな値にすることが可能であると判断できる。この場合は、次式に従って目標パージ率tPGRが算出される(ステップ274)。
【0113】
Figure 2005023891
【0114】
上記(3)式に含まれるSKP11は、通常制御において用いられるスキップ値PGRSKPに比して十分に小さな値である。また、PGRMXCCV閉も、通常制御において用いられる最大パージ率PGRMXより十分に小さな値である。このため、上記の(3)式によれば、目標パージ率tPGRを、通常制御時に比して十分に緩やかに増加させることができる。目標パージ率tPGRが緩やかに増加する限りは、タンク内圧PTNKが急激に降下することはない。従って、上記の処理によれば、CCV22に閉故障が生じている状況下で、PTNKを過剰に負圧化させることなく徐々にパージ率PGRを挙げることができ、パージの効率を高めることができる。
【0115】
図12に示すルーチンにおいて、上記ステップ272の処理によりタンク内圧PTNKが、目標上限値KP11を越えていないと判別された場合は、更に、PTNKが目標下限値KP12を下回っているか否かが判別される(ステップ276)。PTNK<KP12の成立が認められない場合は、タンク内圧PTNKが適正な範囲に制御されていると判断できる。つまり、現在のパージ率PGRは、CCV22に閉故障が生じている状況下で、タンク内圧PTNKを過剰に負圧化させることなく、かつ、効率的なパージを実現することのできる適切な値であると判断できる。この場合は、目標パージ率tPGRが更新されることなく、後述するステップ280以降の処理が行われる。
【0116】
一方、上記ステップ276の処理によりPTNK<KP12の成立が認められた場合は、燃料タンク10の内部に不当に大きな負圧が生じていると判断することができる。この場合は、パージ率PGRを下げてタンク内圧PTNKを上昇させるべく、次式に従って目標パージ率tPGRが算出される(ステップ278)。
【0117】
tPGR=PGR−SKP12≧0 ・・・(4)
【0118】
上記(4)式によれば、目標パージ率tPGRは、0を下限として、前回の処理サイクルにより実現されたパージ率PGRよりSKP12だけ小さな値に更新される。タンク内圧PTNKは、大きな目標パージ率tPGRが設定されるほど負圧化し易い。従って、目標パージ率tPGRが上記の如く減少方向に更新されれば、タンク内圧PTNKはやがて上昇し始め、目標下限値KP12を上回る。このため、図12に示すルーチンによれば、CCV22に閉故障が生じている場合に、タンク内圧PTNKが不当に大きく負圧化するのを避けつつ適当にパージを継続させることができる。
【0119】
尚、本実施形態において、上記の目標下限値KP12は、燃料タンク10のキャップに配されたチェック弁13の開弁圧に対応する値に設定されている。このため、上述したステップ276および278の処理によれば、タンク内圧PTNKがチェック弁13の開弁圧近傍値にまで低下すると、目標パージ率tPGRを徐々に小さくする処理が開始される。このため、本実施形態の装置によれば、CCV22の閉故障時に、チェック弁13から多量に空気を流入させることなくパージの動作を継続させることができる。
【0120】
図12に示すルーチンでは、上記の処理に次いで、全開流量QPGMXが算出される(ステップ280)。QPGMXは、パージ制御弁28が全開とされることにより生ずるパージ流量QPGである。ECU60は、ステップ280の枠内に示すように、吸気負圧PMとの関係で定めた全開流量QPGMXのマップを記憶している。本ステップ280では、そのマップを参照して、現在の吸気管圧力PMに対応するQPGMXが算出される。
【0121】
次に、全開時パージ率PGR100が算出される(ステップ282)。全開時パージ率PGR100は、全開流量QPGMXと吸入空気量GAとの比をパーセント表示した物理量(PGR100=QPGMX/GA×100)である。次に、パージVSV28の駆動デューティDPGが算出される。駆動デューティDPGは、目標パージ率tPGRを実現するためのデューティ比であり、基本的には目標パージ率tPGRと全開パージ率PGR100との比(DPG=tPGR/PGR100×100)として算出される。但し、駆動デューティDPGの上限は100にガードされる(ステップ284)。
【0122】
図12に示すルーチンでは、次に、パージカウンタCPGRST(説明省略)がインクリメントされる(ステップ286)。次いで、再びXCCV閉=1の成立性が判断される(ステップ288)。ここでXCCV閉=1が成立しないと判別された場合は、以後速やかに後述するステップ292の処理が実行される。この場合、ECU60は、上記ステップ284で算出されたDPGを最終的な駆動デューティとして、パージVSV28のデューティ駆動を行う。
【0123】
これに対して、XCCV閉=1の成立が認められた場合は、更に、駆動デューティDPGの増加幅を制限するための処理が実行される。ここでは、その処理の内容を説明するに先立って、CCV22が閉じている状況下で、パージガスの流量QPGと濃度の間に成立する関係について説明する。
【0124】
図13は、CCV22の閉弁時に生ずるパージガスの流量QPG(縦軸)を吸気管圧力PMとの関係で表した図である。尚、図13中に符号KQTを付して示す直線は、燃料タンク10の内部で発生するベーパ(以下、「タンクベーパ」と称す)の量を表している。本実施形態の装置は、既述した通りチェック弁13を備えている。チェック弁13は、タンク内圧PTNKと大気圧との差がチェック弁13の開弁圧より大きくなることにより開弁する。パージガス流量QPGがタンクベーパ量KQTより少ない間は、タンク内圧PTNKが大きく負圧化することがない。この場合、チェック弁13は閉弁状態に維持され、その結果、パージガスはほぼ100%タンクベーパとなる。一方、パージガス流量QPGがタンクベーパ発生量KQTを越えている場合は、タンク内圧PTNKが負圧となり、やがてチェック弁13が開弁する。この場合、パージガスは、タンクベーパと、チェック弁13から流入した空気の混合ガスとなる。
【0125】
チェック弁13から空気が流入しない環境化では、パージガスがほぼ100%タンクベーパとなる。この場合は、パージガスの濃度は、QPGの多少に関わらず、実質的にタンクベーパの濃度と等しくなる。これに対して、パージガス中にチェック弁13から流入した空気が混じる場合は、パージガスの濃度が、空気の混入割合に応じた値となる。つまり、QPGがKQTを越える場合は、タンクベーパの燃料濃度が仮にαであるとすれば、パージガスの濃度はα×KQT/QPGで表されるようなQPGの関数値となる。
【0126】
本実施形態の装置は、パージ制御の実行中は、パージの影響で空燃比に荒れが生ずるのを防ぐため、パージにより供給される燃料分を燃料噴射量から減量する補正を行っている。この補正は、具体的には、パージガスの燃料濃度を意味するベーパ濃度学習値FGPGを学習し、その学習値FGPGにパージ率PGRを掛け合わせることにより、パージ補正係数FPGを算出し、更に、そのパージ補正係数FPG分だけ基本の燃料噴射量を減量することにより実現される。このような手法でパージの影響を精度良く排除するためには、ベーパ濃度学習値FGPGを精度良く現実のパージガス濃度に整合させることが重要である。
【0127】
しかしながら、パージガスの燃料濃度が頻繁に変化する状況下では、ベーパ濃度学習値FGPGを精度良く学習することが困難である。このため、本実施形態の装置では、CCV22に閉故障が発生しており、かつ、パージガス流量QPGがタンクベーパ発生量KQTを越えているような場合に、ベーパ濃度学習値FGPGを精度良く学習することが困難な事態が生ずる。ところが、このような状況下でも、パージガス流量QPGの変化を抑制すれば、パージガスに含まれる空気の混入割合が激しく変化するのを防ぎ、その結果、パージガスの燃料濃度が急変するのを防ぐことができる。そして、パージガス濃度の急変が避けられれば、ベーパ濃度学習値FGPGを精度良く更新して高精度な空燃比制御を実現することが可能である。
【0128】
そこで、図12に示すルーチンでは、上記ステップ288においてXCCV閉=1の成立が認められた場合、既述した通り駆動デューティDPGの増加幅を制限して、パージガス流量QPGの変化幅を抑制することとした。ここでは、具体的には、上記ステップ284において算出された駆動デューティDPGに対して、次式の制限を課する処理が行われる(ステップ290)。
DPG≦DPGO+DPGS ・・・(5)
ここで、(5)式に含まれるDPGOは、前回の処理サイクル時に算出された最終的な駆動デューティDPGである。また、DPGSは、CCV22の閉故障時に許容する値として定められた駆動デューティDPGの増加ステップ幅である。
【0129】
上記ステップ290の処理が実行されると、以後、ECU60は、ここで算出されたDPGを最終的な駆動デューティとして、パージVSV28のデューティ駆動を行う。駆動デューティDPGの増加幅が抑制されれば、パージガス流量QPGの増加幅も当然に抑制される。そして、QPGの増加幅が抑制されれば、CCV22の閉弁時に生ずるパージガスの燃料濃度の変化が抑制される。このため、本実施形態の装置によれば、CCV22の閉故障時においても、高い精度で空燃比を制御することが可能である。
【0130】
図12に示すルーチンでは、最後に、次式に従って最終パージ率PGRが算出される(ステップ292)。ここで算出された最終パージ率PGRは、次回の処理サイクルに備えてECU60の内部に記憶される。
【0131】
PGR=DPG×PGR100/100 ・・・(6)
【0132】
以上説明した通り、図12に示すルーチンによれば、CCV22の開故障が認められている場合、およびCCV22の閉故障が認められている場合に、それぞれ適切なパージ制御を継続させることができる。具体的には、CCV22の開故障が認められている場合には、目標パージ率tPGRを抑えることで異物の吸入を避けつつ、効率的なキャニスタ20のパージを継続させることができる。また、CCV22の閉故障が認められている場合は、目標パージ率tPGRを緩やかに増減させることにより、タンク内圧PTNKを頻繁に増減させることなく、かつ、PTNKを過剰に負圧化させることなく、効率的なパージを継続させることができる。更に、この場合には、駆動デューティDPGの増加幅を抑えることにより、パージの影響による空燃比荒れを十分に抑制することができる。このため、本実施形態の装置によれば、CCV22の開故障時、および閉故障時においても、パージを継続しつつ内燃機関の状態を安定に保つことができる。
【0133】
ところで、上述した説明においては、CCV22の閉故障時に駆動デューティDPGの増加幅を制限する技術を、燃料タンク10にチェック弁13を設ける構造と組み合わせて用いることとしているが、本発明はこれに限定されるものではない。すなわち、駆動デューティDPGの増加幅を制限する技術は、必ずしも、チェック弁13からの空気の流入量に応じてパージガスの燃料濃度が大きく変化するような構成との組み合わせで用いるべきものではなく、そのような構成から切り離して用いることとしてもよい。
【0134】
また、上述した説明においては、CCV22の閉故障時に、チェック弁13から空気が多量に流入してくるのを防ぐ意味で、目標下限値KP12(上記ステップ276参照)をチェック弁13の開弁圧と整合させることとしているが、目標下限値KP12の設定と、チェック弁13の開弁圧との関係は、必ずしもこのような関係に限られるものではなく、KP12は、チェック弁13の開弁圧より十分に高い値であっても、或いはその開弁圧より十分に低い値であってもよい。むしろ、駆動デューティDPGの増加幅を制限する処理(上記ステップ290参照)が実行される場合には、KP12は、チェック弁13からの空気の流入を十分に許容するような値であってもよい。
【0135】
(漏れ故障に対する対策の説明)
次に、本実施形態の装置が、漏れ故障に対処すべく実行する処理の内容について説明する。本実施形態の装置は、上記図8に示すルーチン中、ステップ186〜194の処理を行うことにより、キャニスタ20および燃料タンク10を含む系に漏れ故障が生じているか否かを判断することができる。より具体的には、ここで行われる処理によれば、CCV22の開故障と同視できないような微少な漏れ故障の有無を検知することができる。
【0136】
装置内に微少な漏れ故障が生じている場合は、燃料タンク10内のベーパが、その漏れ故障の箇所から大気中に放出され難い状態を作り出しておくことが好ましい。
図14は、そのような好ましい状態を、タンク内圧PTNKの正負、およびパージの有無(パージ率PGRが0か否か)との関係で整理したものである。図中右上に位置する領域は、パージ率PGRが0でなく、かつ、タンク内圧PTNKが正圧である状態に対応している。この場合、キャニスタ20に吸気負圧を導くことが可能であるから、その吸気負圧を利用して系内を負圧化すれば、漏れ箇所からのベーパの流出は防ぐことができる。そして、系内を速やかに負圧化するためには、CCV22を閉じて、かつ、大きなパージ率を確保することが有利である。このため、装置の状態がこの領域に属する場合には、CCV22を閉弁し、大きなパージ率PGRの発生を認めることが適切である。また、図14中右下に位置する領域は、パージ率PGRが0でなく、かつ、タンク内圧PTNKが負圧である状態に対応している。この場合、吸気負圧を利用して系内を負圧に維持すれば足りることから、キャニスタ20のパージを進めるべく、CCV2を開いて、かつ、通常の手法でパージ制御を行うことが適切である。
【0137】
一方、図14中左上に位置する領域は、パージ率PGRが0の状況下でタンク内圧PTNKが正圧化した状態に対応している。この場合は、系内を負圧化することができないため、系内圧力の更なる上昇を防ぐと共に、新たに発生するタンクベーパをキャニスタ20が捕獲できる状態を作り出すことが必要である。このような要求より、装置の状態がこの領域に属する場合には、CCV22を開くことが適切である。また、図14中左下に位置する領域は、パージ率PGRが0の状況下でタンク内圧PTNKが負圧化した状態に対応している。この場合は、既に系内が負圧化されていることから、現状を維持することが適切である。
【0138】
図15は、蒸発燃料処理装置の状態に応じて、図14に示す適切な状態が実現されるように、ECU60が実行する制御ルーチンのフローチャートを示す。図15に示すルーチンでは、先ず、現在のパージ率PGRが0か否かが判別される(ステップ300)。その結果、PGR=0が成立すると判別された場合は、次に、現在のタンク内圧PTNKが正圧であるか否かが判別される(ステップ302)。ここでPTNK>0が成立しないと判別された場合は、蒸発燃料処理装置が、図14中左下に位置する領域に属していると判断できる。この場合は、現状を維持するため、以後速やかに今回の処理サイクルが終了される。
【0139】
一方、上記ステップ302において、PTNK>0が成立すると判別された場合は、蒸発燃料処理装置が、図14中左上に位置する領域に属していると判断できる。この場合は、先ず、パージ率PGRのスキップ値PGRSKP、および最大パージ率PGRMXがそれぞれ標準値に設定され(ステップ304)、次いでCCV22が開弁された後(ステップ306)、今回の処理サイクルが終了される。尚、ここでは、PGR=0の成立(パージのカット)が前提であるため、上記ステップ304の処理は必ずしも必要な処理ではない。
【0140】
図15に示すルーチン中、上記ステップ300の処理でPGR=0が成立しないと判別された場合は、次に、XCCV開=1の成立が認められるか否かが判別される(ステップ308)。XCCV開=1の成立が認められる場合は、CCV22に開故障が生じているか、或いは、CCV22の開故障と同視できるような大きな漏れが系内に生じていると判断することができる。この場合は、微少な漏れを前提とした以下の処理を行う実益がないと判断され、以後速やかに今回の処理が終了される。
【0141】
上記ステップ308の処理により、XCCV開=1が成立しないと判別された場合は、更に、漏れ故障判定フラグXEVPに1がセットされているか否かが判別される(ステップ310)。その結果、XEVP=1が成立しないと判別された場合は、系内に漏れ故障は生じていないと判断できる。この場合、漏れ故障に対処するための処理を続ける実益がないことから、以後速やかに今回の処理サイクルが終了される。
【0142】
上記ステップ310において、XEVP=1の成立が認められた場合は、微少な漏れ故障に対処する必要があると判断できる。この場合は、次に、現在のタンク内圧PTNKが正圧であるか否かが判別される(ステップ312)。ここでPTNK>0が成立しないと判別された場合は、蒸発燃料処理装置が、図14中右下に位置する領域に属していると判断できる。この場合は、CCV22が開いた状態で通常のパージが継続されるように、既述したステップ304および306の処理が順次実行される。
【0143】
これに対して、上記ステップ312において、PTNK>0が成立すると判別された場合は、蒸発燃料処理装置が、図14中右上に位置する領域に属していると判断できる。この場合は、先ず、パージ率PGRのスキップ値PGRSKP、および最大パージ率PGRMXが、それぞれ標準値に係数aまたはbを乗じた値に設定される(ステップ314)。係数aおよびbは、何れも1より大きな値である。従って、本ステップ314の処理によれば、スキップ値PGRSKP、および最大パージ率PGRMXは、何れも標準値より大きな値となる。以後、ECU60は、CCV22を閉じた後(ステップ316)、今回の処理サイクルを終了する。これらの処理によれば、キャニスタ20および燃料タンク10を大気から遮断した状態で、大きな吸気負圧をキャニスタ20に導入することにより、その系内の圧力を迅速に負圧化し、ベーパの漏れを阻止するうえで好適な状態を速やかに作り出すことができる。
【0144】
以上説明した通り、図15に示すルーチンによれば、パージ率PGRが0であるか否か、およびタンク内圧PTNKが正圧であるか負圧であるかに応じて、漏れ箇所からのベーパの流出を防ぐうえで最適な状態を適宜作り出すことができる。このため、本実施形態の蒸発燃料処理装置によれば、微少な漏れ故障の発生時に、ベーパの大気流出量を十分に少量に抑えることができる。
【0145】
尚、上述した実施の形態1においては、パージVSV28が前記第1または第5の発明における「パージ制御弁」に、CCV22が前記第1または第5の発明における「キャニスタ開閉弁」に、パージ率PGRおよび目標パージ率tPGRが前記第1の発明における「パージ制御量」および「目標制御量」に、上記ステップ272〜278の処理で用いられるtPGRの算出規則が前記第1の発明における「第1の規則」に、上記ステップ268で用いられるtPGRの算出規則が前記第1の発明における「第2の規則」に、それぞれ相当している。また、ECU60が、上記ステップ200〜212および242〜254の処理を実行することにより前記第1または第5の発明における「閉故障検出手段」が、上記図12に示すルーチンにより算出された駆動デューティDPGでパージVSV28を駆動することにより前記第1または第5の発明における「パージ制御手段」が、上記ステップ272〜278および268の処理を実行することにより前記第1の発明における「目標制御量設定手段」が、それぞれ実現されている。
【0146】
また、上述した実施の形態1においては、タンク内圧センサ12が前記第2の発明における「タンク内圧検出手段」に相当していると共に、ECU60が上記ステップ276および278の処理を実行することにより前記第2の発明における「目標制御量減量手段」が、上記ステップ272および274の処理を実行することにより前記第3の発明における「目標増加許容手段」が、それぞれ実現されている。更に、上述した実施の形態1においては、ECU60が、上記ステップ290の処理を実行することにより前記第5の発明における「流量変化抑制手段」が実現されている。
【0147】
【発明の効果】
この発明は以上説明したように構成されているので、以下に示すような効果を奏する。
第1の発明によれば、キャニスタの大気孔に配置されたキャニスタ開閉弁に閉故障が生じている場合には、その閉故障が生じていない場合に比して、パージ制御量が小さな値に設定される。パージ制御量が小さな値であるほど、パージの実行に伴う燃料タンクの負圧化が抑えられる。このため、本発明によれば、キャニスタ開閉弁に閉故障が生じている場合でも、燃料タンクに大きな応力負荷をかけずにパージ動作を継続させることができる。
【0148】
第2の発明によれば、タンク内圧が目標下限圧を下回る場合には、目標制御量をより小さな値に更新することができる。目標制御量が小さな値に更新されれば、パージの実行に伴う燃料タンクの負圧傾向が減少し、タンク内圧を増圧方向に変化させることができる。このため、本発明によれば、キャニスタ開閉弁に閉故障が生じた場合に、有効に燃料タンクを保護しつつ、パージ動作を継続させることができる。
【0149】
第3の発明によれば、タンク内圧が目標上下限圧を上回る場合には、目標制御量の緩やかな増加を許容することができる。目標制御量が緩やかに増加する場合には、急激なタンク内圧の減少は生じず、かつ、キャニスタのパージ効率を高めることができる。このため、本発明によれば、キャニスタ開閉弁の閉故障時に、タンク内圧の頻繁な増減を伴うことなく、パージ動作を継続させることができる。
【0150】
第4の発明によれば、チェック弁の機能により、タンク内圧が過剰に負圧化するのを機械的に防ぎつつ、通常の動作としては、キャニスタ開閉弁の閉故障時にチェック弁から流入する空気の量を十分に少量とすることができる。パージの実行中にチェック弁から空気が多量に流入すると、空燃比に荒れが生じ易い。本発明によれば、そのような事態が生ずるのを防ぐことができ、キャニスタ開閉弁の閉故障時においても、高精度な空燃比制御を実現することができる。
【0151】
第5の発明によれば、キャニスタ開閉弁の閉故障時に、パージガス流量が大きな変化を示すのを阻止することができる。内燃機関における空燃比は、パージガス流量が大きな変化を示すほど変動し易い。本発明によれば、その変動を抑えることにより、パージ動作が継続されることに伴う空燃比荒れを十分に抑制することができる。
【図面の簡単な説明】
【図1】本発明の実施の形態1の構成を説明するための図である。
【図2】本発明の実施の形態1のシステムがパージVSVの開故障を検知する際の動作を説明するためのタイミングチャートである。
【図3】本発明の実施の形態1において、パージVSVに開故障が生じているか否かを判断すべく実行されるルーチンのフローチャートである。
【図4】本発明の実施の形態1のシステムがパージVSVの閉故障を検知する際の動作を説明するためのタイミングチャートである。
【図5】本発明の実施の形態1において、パージVSVに開故障が生じているか否かを判断すべく実行されるルーチンのフローチャートである。
【図6】本発明の実施の形態1のシステムがパージVSVに閉故障が生じていない状況下でCCVの開故障を検知する際の動作を説明するためのタイミングチャートである。
【図7】本発明の実施の形態1のシステムがパージVSVに閉故障が生じていない状況下でCCVの閉故障を検知する際の動作を説明するためのタイミングチャートである。
【図8】本発明の実施の形態1において、パージVSVに閉故障が生じていない状況下でCCVの故障を検出するために実行されるルーチンのフローチャートである。
【図9】本発明の実施の形態1のシステムがパージVSVに閉故障が生じている状況下でCCVの開故障を検知する際の動作を説明するためのタイミングチャートである。
【図10】本発明の実施の形態1のシステムがパージVSVに閉故障が生じている状況下でCCVの閉故障を検知する際の動作を説明するためのタイミングチャートである。
【図11】本発明の実施の形態1において、パージVSVに閉故障が生じている状況下でCCVの故障を検出するために実行される処理の内容を説明するためのフローチャートである。
【図12】本発明の実施の形態1においてパージ制御のために実行されるルーチンのフローチャートである。
【図13】本発明の実施の形態1においてCCVの閉弁時に生ずるパージガスの流量を吸気管圧力との関係で表した図である。
【図14】本発明の実施の形態1の装置内に微少な漏れ故障が生じている場合に作り出しておくべき好ましい状態を整理して表した図である。
【図15】本発明の実施の形態1において漏れ故障に対処するための実行されるルーチンのフローチャートである。
【符号の説明】
10 燃料タンク
20 キャニスタ
22 CCV(Canister Closed Valve)
28 パージVSV(Vacuum Switching Valve)
30 吸気通路
60 ECU(Electronic Control Unit)
THWST 開始時冷却水温
XVSV開 パージVSVの開故障判定フラグ
XVSV閉 パージVSVの閉故障判定フラグ
XCCV開 CCVの開故障判定フラグ
XCCV閉 CCVの閉故障判定フラグ
XEVP 漏れ故障判定フラグ
PTNK タンク内圧
QPG パージガス流量
PGR パージ率(最終パージ率)
tPGR 目標パージ率
PGRSKP 通常のスキップ値
PGRMX 通常の最大パージ率
SKP11 CCV閉故障時のスキップ値
PGRMXCCV閉 CCV閉故障時の最大パージ率
DPG 駆動デューティ
DPGO 前回の処理サイクル時の駆動デューティ
DPGS CCV閉故障時に許容されるDPGの増加ステップ幅
KQT タンクベーパ発生量

Claims (5)

  1. 燃料タンクから流出する蒸発燃料を吸着するキャニスタを備える蒸発燃料処理装置であって、
    前記キャニスタと内燃機関の吸気通路との導通状態を制御するパージ制御弁と、
    前記キャニスタの大気孔を開閉するキャニスタ開閉弁と、
    前記キャニスタ開閉弁の閉故障を検出する閉故障検出手段と、
    パージ制御量が目標制御量に合致するように、内燃機関の運転中に前記パージ制御弁を制御するパージ制御手段と、
    前記キャニスタ開閉弁の閉故障時には第1の規則に従って前記目標制御量を設定し、前記閉故障の発生が認められない状況下では第2の規則に従って前記目標制御量を設定する目標制御量設定手段とを備え、
    前記第1の規則は、前記第2の規則に比して、前記目標制御量を小さな値に設定する規則であることを特徴とする蒸発燃料処理装置。
  2. タンク内圧を検出するタンク内圧検出手段を備え、
    前記目標制御量設定手段は、前記キャニスタ開閉弁に閉故障が生じており、かつ、前記タンク内圧が目標下限圧を下回る場合には、前記第1の規則によって設定された目標制御量をより小さな値に更新する目標制御量減量手段を含むことを特徴とする請求項1記載の蒸発燃料処理装置。
  3. 前記目標制御量設定手段は、前記キャニスタ開閉弁に閉故障が生じており、かつ、前記タンク内圧が目標上限圧を上回る場合には、前記閉故障が生じていない場合に比して小さな更新幅で前記第1の規則によって設定された目標制御量が増加するのを許容する目標増加許容手段を含むことを特徴とする請求項2記載の蒸発燃料処理装置。
  4. 前記キャニスタおよび前記燃料タンクを含む系内への空気の流入を許容するチェック弁を備え、
    前記目標下限圧は、前記チェック弁の開弁圧以上の値であることを特徴とする請求項2または3記載の蒸発燃料処理装置。
  5. 燃料タンクから流出する蒸発燃料を吸着するキャニスタを備える蒸発燃料処理装置であって、
    前記キャニスタと内燃機関の吸気通路との導通状態を制御するパージ制御弁と、
    前記キャニスタの大気孔を開閉するキャニスタ開閉弁と、
    前記キャニスタ開閉弁の閉故障を検出する閉故障検出手段と、
    内燃機関の運転中に、所望のパージガス流量が流通するように前記パージ制御弁を制御するパージ制御手段と、
    前記キャニスタ開閉弁の閉故障時に許容される前記パージガス流量の変化速度を、前記閉故障の発生が認められない状況下で許容される変化速度に比して低く抑える流量変化抑制手段と、
    を備えることを特徴とする蒸発燃料処理装置。
JP2003192416A 2003-07-04 2003-07-04 蒸発燃料処理装置 Pending JP2005023891A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003192416A JP2005023891A (ja) 2003-07-04 2003-07-04 蒸発燃料処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003192416A JP2005023891A (ja) 2003-07-04 2003-07-04 蒸発燃料処理装置

Publications (1)

Publication Number Publication Date
JP2005023891A true JP2005023891A (ja) 2005-01-27

Family

ID=34189726

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003192416A Pending JP2005023891A (ja) 2003-07-04 2003-07-04 蒸発燃料処理装置

Country Status (1)

Country Link
JP (1) JP2005023891A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019196709A (ja) * 2018-05-07 2019-11-14 スズキ株式会社 蒸発燃料ガス排出防止装置
JPWO2021166056A1 (ja) * 2020-02-18 2021-08-26

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019196709A (ja) * 2018-05-07 2019-11-14 スズキ株式会社 蒸発燃料ガス排出防止装置
JPWO2021166056A1 (ja) * 2020-02-18 2021-08-26
WO2021166056A1 (ja) * 2020-02-18 2021-08-26 日産自動車株式会社 蒸発燃料処理装置の故障診断方法および故障診断装置
EP4108905A4 (en) * 2020-02-18 2023-03-29 NISSAN MOTOR Co., Ltd. TROUBLESHOOTING METHOD AND DEVICE FOR AN EVAPORATE PROCESSING DEVICE

Similar Documents

Publication Publication Date Title
JP4419445B2 (ja) 蒸発燃料処理システム
JP2688674B2 (ja) 燃料タンク内圧センサの故障検出装置及び故障補償装置
JP4026348B2 (ja) エバポガスパージシステムのリーク診断装置
US8554446B2 (en) Control apparatus for internal combustion engine including variable valve operating mechanism
JP2007211789A5 (ja)
JPH03271554A (ja) 蒸発燃料処理装置の故障診断装置
US6789523B2 (en) Failure diagnosis apparatus for evaporative fuel processing system
JPH0932658A (ja) 内燃機関のエバポパージ装置における機能診断装置
JP2002030983A (ja) 燃料貯留装置
JPH0642415A (ja) 内燃エンジンの蒸発燃料処理装置
JP2005016484A (ja) 蒸発燃料処理装置
JP2003035216A (ja) 燃料蒸発ガス処理装置の故障診断装置
JP2003042010A (ja) 燃料蒸気ガス処理装置
JP4337730B2 (ja) 蒸発燃料処理装置のリーク診断装置
JP2010216287A (ja) ハイブリッド車両用蒸発燃料処理装置の故障診断装置
US6830040B1 (en) Evaporative fuel control system of internal combustion engine
JP2007008386A (ja) 車両の燃料残量算出装置
JP4556667B2 (ja) 蒸発燃料処理装置のリーク診断装置
JP2007247455A (ja) 内燃機関のパージフロー診断装置
JP2007009849A (ja) 車両の給油検出装置
JP2005023891A (ja) 蒸発燃料処理装置
JP4090952B2 (ja) 内燃機関における故障診断機能を有する燃料ガスパージシステム
JP4427936B2 (ja) 内燃機関のエバポガスパージシステムの異常診断装置
JP4310836B2 (ja) 蒸発燃料処理系圧力検出手段の故障診断装置
JP4526901B2 (ja) 蒸発燃料処理システムの診断装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060329

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090407

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090728