(57)【要約】【課題】駆動周期の切り替えに伴う駆動デューティの変化率の変動を抑制しつつ、駆動デューティの大きさに応じて駆動周期を切り替えることのできる蒸発燃料パージ制御装置を提供する。【解決手段】蒸発燃料処理機構３０は、チャコールキャニスタ３１と、同チャコールキャニスタ３１から脱離した燃料蒸気を含むベーパガスを内燃機関１０の吸気通路１４に導入するパージ通路３３と、パージ制御弁３５とを備えている。電子制御装置４０は、パージ制御弁３５の駆動デューティの大きさに応じてその駆動周期を切り替えるとともに、切り替えられる駆動周期に対応させて駆動デューティの更新量を変化させる。電子制御装置４０は、切り替え可能な駆動周期に対応する各更新量で更新した場合の駆動デューティの値を仮想デューティとして算出し、これら仮想デューティの値に基づいて前記切り替え可能な駆動周期のうち、いずれの駆動周期を適用するかを判定する。【選択図】図１
2010203247.tif 000002
【特許請求の範囲】
【請求項１】
燃料タンク内に発生する燃料ベーパを内燃機関の吸気通路に導入する蒸発燃料処理機構に設けられたパージ制御弁の開度をデューティ制御する蒸発燃料パージ制御装置であり、前記パージ制御弁の駆動デューティの大きさに応じて駆動周期を切り替えるとともに、切り替え前の駆動デューティの変化率と切り替え後の駆動デューティの変化率とが等しくなるように、切り替えられる駆動周期に対応させて駆動デューティの更新量を変化させる蒸発燃料パージ制御装置において、
切り替え可能な駆動周期に対応する前記各更新量で更新した場合の駆動デューティの値を仮想デューティとして算出し、これら仮想デューティの値に基づいて前記切り替え可能な駆動周期のうち、いずれの駆動周期を適用するかを判定する
ことを特徴とする蒸発燃料パージ制御装置。
【請求項２】
駆動デューティが閾値未満であるときに駆動周期が第１駆動周期に設定される一方、駆動デューティが前記閾値以上であるときに駆動周期が前記第１駆動周期よりも短い第２駆動周期に設定される蒸発燃料パージ制御装置であり、
前記仮想デューティとして、駆動デューティを前記第１駆動周期に対応する第１更新量で更新した場合の仮想デューティである第１仮想デューティと、駆動デューティを前記第２駆動周期に対応する第２更新量で更新した場合の仮想デューティである第２仮想デューティとを算出し、これら各仮想デューティと前記閾値との大きさを比較して、その大小関係に基づいて駆動周期を前記第１駆動周期及び前記第２駆動周期のうち、どちらにするかを判定する
請求項１に記載の蒸発燃料パージ制御装置。
【請求項３】
請求項２に記載の蒸発燃料パージ制御装置において、
前記閾値として、駆動周期を前記第１駆動周期から前記第２駆動周期に切り替える際に参照する第１閾値と、駆動周期を前記第２駆動周期から前記第１駆動周期に切り替える際に参照する前記第１閾値よりも小さな第２閾値とが設定されている
ことを特徴とする蒸発燃料パージ制御装置。
【請求項４】
請求項３に記載の蒸発燃料パージ制御装置において、
駆動デューティが増大中であり且つ駆動周期が前記第１駆動周期に設定されている場合には前記第２仮想デューティが前記第１閾値以上であるときに駆動周期を前記第２駆動周期に切り替え、駆動デューティが増大中であり且つ駆動周期が前記第２駆動周期に設定されている場合には前記第２仮想デューティが前記第２閾値未満であるときに駆動周期を前記第１駆動周期に切り替え、駆動デューティが減少中であり且つ駆動周期が前記第１駆動周期に設定されている場合には前記第１仮想デューティが前記第１閾値以上であるときに駆動周期を前記第２駆動周期に切り替え、駆動デューティが減少中であり且つ駆動周期が前記第２駆動周期に設定されている場合には前記第２仮想デューティが前記第２閾値未満であるときに駆動周期を前記第１駆動周期に切り替える
ことを特徴とする蒸発燃料パージ制御装置。
【請求項５】
請求項４に記載の蒸発燃料パージ制御装置において、
駆動デューティが増大中であり且つ駆動周期が前記第１駆動周期に設定されているとともに、駆動デューティが前記第１閾値から前記第２更新量を減算した値未満である場合には、
前記第２仮想デューティを算出せずに、駆動周期を前記第１駆動周期に保持する
ことを特徴とする蒸発燃料パージ制御装置。
【請求項６】
請求項４又は請求項５に記載の蒸発燃料パージ制御装置において、
駆動デューティが増大中であり且つ駆動周期が前記第１駆動周期に設定されているとともに、駆動デューティが前記第１閾値から前記第２更新量を減算した値以上である場合には、
前記第１仮想デューティを算出せずに、駆動周期を前記第２駆動周期に切り替える
ことを特徴とする蒸発燃料パージ制御装置。
【請求項７】
請求項４〜６のいずれか一項に記載の蒸発燃料パージ制御装置において、
駆動デューティが減少中であり且つ駆動周期が前記第２駆動周期に設定されているとともに、駆動デューティが前記第２閾値に前記第２更新量を加算した値以上である場合には、
前記第１仮想デューティを算出せずに、駆動周期を前記第２駆動周期に保持する
ことを特徴とする蒸発燃料パージ制御装置。
【請求項８】
請求項４〜７のいずれか一項に記載の蒸発燃料パージ制御装置において、
駆動デューティが減少中であり且つ駆動周期が前記第２駆動周期に設定されているとともに、駆動デューティが前記第２閾値に前記第２更新量を加算した値未満である場合には、
前記第２仮想デューティを算出せずに、駆動周期を前記第１駆動周期に切り替える
ことを特徴とする蒸発燃料パージ制御装置。
【請求項９】
燃料タンク内に発生する燃料ベーパを内燃機関の吸気通路に導入する蒸発燃料処理機構に設けられたパージ制御弁の開度をデューティ制御する蒸発燃料パージ制御装置であり、前記パージ制御弁の駆動デューティが閾値未満であるときに駆動周期を第１駆動周期に設定する一方、駆動デューティが前記閾値以上であるときに駆動周期を前記第１駆動周期よりも短い第２駆動周期に設定するとともに、切り替え前の駆動デューティの変化率と切り替え後の駆動デューティの変化率とが等しくなるように、切り替えられる駆動周期に対応させて駆動デューティの更新量を切り替える蒸発燃料パージ制御装置において、
前記第１駆動周期と前記第２駆動周期との公約数に対応する周期で更新されて前記駆動デューティの変化率と等しい変化率で変化する仮想デューティを算出し、この仮想デューティの値が前記閾値を越えて変化するときに、次回駆動周期における駆動周期の切り替えを予約する
ことを特徴とする蒸発燃料パージ制御装置。
【請求項１０】
請求項９に記載の蒸発燃料パージ制御装置において、
駆動デューティが増大中であり前記仮想デューティが前記閾値以上であることが判定された場合に、
次回の駆動デューティ更新タイミングにおいて駆動周期を前記第１駆動周期から前記第２駆動周期に切り替えることを予約し、駆動デューティに前記第２駆動周期で駆動デューティを更新する際の更新量である第２更新量を加算した値を前記次回の駆動デューティ更新タイミングにおいて反映させる次回駆動デューティとして設定するとともに、
前記仮想デューティにあっては前記次回の駆動デューティ更新タイミングにおいて駆動デューティが更新されてから、更新された駆動デューティの値を同仮想デューティの値として再設定し、その算出を再開する
ことを特徴とする蒸発燃料パージ制御装置。
【請求項１１】
請求項９又は請求項１０に記載の蒸発燃料パージ制御装置において、
駆動デューティが減少中であり前記仮想デューティが前記閾値未満であることが判定された場合に、
次回の駆動デューティ更新タイミングにおいて駆動周期を前記第２駆動周期から前記第１駆動周期に切り替えることを予約し、駆動デューティから前記第１駆動周期で駆動デューティを更新する際の更新量である第１更新量を減算した値を前記次回の駆動デューティ更新タイミングにおいて反映させる次回駆動デューティとして設定するとともに、
前記仮想デューティにあっては前記次回の駆動デューティ更新タイミングにおいて駆動デューティが更新されてから、更新された駆動デューティの値を同仮想デューティの値として再設定し、その算出を再開する
ことを特徴とする蒸発燃料パージ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、燃料タンク内に発生する燃料ベーパを内燃機関の吸気通路に導入して燃焼処理する蒸発燃料処理機構を制御する蒸発燃料パージ制御装置に関する。
【背景技術】
【０００２】
自動車等に搭載される内燃機関には、燃料タンク内に発生する燃料ベーパがそのまま大気中に放出されることを抑制するために、燃料ベーパに含まれる燃料成分を吸着する吸着材を有するチャコールキャニスタが設けられている。しかし、チャコールキャニスタの吸着材に吸着させることのできる燃料成分の量には上限がある。そのため、内燃機関にはチャコールキャニスタに新気を導入するとともに、チャコールキャニスタ内の空気を吸気通路に吸い出させることによって吸着材から燃料成分を脱離させ、脱離した燃料成分と空気との混合気であるパージガスを吸気通路に導入する蒸発燃料処理機構が設けられている。こうした蒸発燃料処理機構を備える内燃機関にあっては、機関運転中にパージガスを吸気通路に導入するパージ制御を実行することにより、吸着材から脱離した燃料成分が内燃機関の燃焼室で燃焼処理され、吸着材の吸着能力が回復するようになる。
【０００３】
しかし、燃料成分を含むパージガスが吸気通路に導入されると、燃料噴射弁から噴射される燃料に加えて、パージガスに含まれる燃料が燃焼室に供給されるようになる。そのため、パージ制御を通じて大量のパージガスが導入されると、内燃機関の空燃比フィードバック制御にずれが生じるおそれがある。そこで、蒸発燃料処理機構を備える内燃機関にあっては、パージガスの流量を調整するパージ制御弁を設け、吸気通路に導入するパージガスの量を制御するようにしている。
【０００４】
具体的には、燃料噴射量が一定であり、空燃比が平衡状態になる機関定常運転時等に、空燃比フィードバック制御に悪影響を与えないようにパージ制御弁の駆動デューティを一定の変化率で徐々に変化させ、吸気通路に導入するパージガスの量を目標とする量に徐々に近づけるようにする。このとき、パージ制御弁の駆動デューティの周期である駆動周期が長い場合には、駆動デューティの更新周期も長くなるため、目標とするパージガスの量の変化に即して速やかに駆動デューティを更新することができなくなるおそれがある。一方で、駆動周期が短い場合には、駆動デューティが小さいときの通電期間が非常に短くなり、パージ制御弁の制御分解能によってはパージガスの量を適切に制御できなくなるおそれがある。
【０００５】
そこで、特許文献１に記載の蒸発燃料パージ制御装置にあっては、駆動デューティの大きさに応じて駆動周期を切り替え、駆動デューティが小さいときには駆動周期を長くする一方、駆動デューティが大きいときには駆動周期を短くするようにしている。
【０００６】
例えば、駆動デューティを増大させる必要があるか否かを所定の駆動周期で判定し、駆動デューティを増大させる必要がある旨の判定がなされたときには、図１５に破線で示されるように次回駆動デューティを所定量だけ増大させ、次回の駆動周期においてこの次回駆動デューティまで駆動デューティを増大させる。そして、このとき、破線で示される次回駆動デューティが閾値未満の場合には駆動周期を駆動周期Ａに設定し、駆動周期が駆動周期Ａに設定されているときには所定量ａずつ駆動デューティを増大させるようにする。一方で次回駆動デューティが閾値以上の場合には駆動周期を駆動周期Ａよりも短い駆動周期Ｂに設定し、駆動周期が駆動周期Ｂに設定されているときには所定量ｂずつ駆動デューティを増大させるようにする。尚、所定量ａ及び所定量ｂの値は、図１５に一点鎖線で示されるように駆動周期が駆動周期Ａに設定されているときの駆動デューティの単位時間当たりの変化量である変化率と、駆動周期Ｂ設定されているときの駆動デューティの変化率とが等しくなるようにその値の大きさがそれぞれ設定されている。
【０００７】
このように次回駆動デューティの大きさに応じて駆動周期を切り替えるとともに、駆動周期にあわせて駆動デューティの更新量を変更することにより、駆動デューティの大きさに応じて駆動周期を切り替えつつ、駆動デューティを一定の変化率で変更することができるようになる。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開平７‐３０３５４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
ところが、このように駆動デューティの変化率が一定になるように各駆動周期に対応させて駆動デューティの更新量を変更するようにしている場合であっても、例えば図１５における時刻Ｔ１のように次回駆動デューティが閾値以上であることが判定され、これに基づいて駆動周期が駆動周期Ａから駆動周期Ｂに切り替えられたときには、図１５に矢印で示されるように駆動デューティの変化率が変化してしまう。
【００１０】
駆動デューティの変化率は、上述したようにパージ制御と並行して実行されている空燃比フィードバック制御に極力影響を及ぼさずに、駆動デューティを変更することができるようにその大きさが設定されている。そのため、上記のように駆動周期の切り替えに伴って駆動デューティの変化率が変動してしまうと、駆動デューティの変化に伴って空燃比が変動してしまい、空燃比フィードバック制御に悪影響が生じるおそれがある。
【００１１】
この発明は上記実情に鑑みてなされたものであり、その目的は駆動周期の切り替えに伴う駆動デューティの変化率の変動を抑制しつつ、駆動デューティの大きさに応じて駆動周期を切り替えることのできる蒸発燃料パージ制御装置を提供することにある。
【課題を解決するための手段】
【００１２】
以下、上記目的を達成するための手段及びその作用効果について記載する。
請求項１に記載の発明は、燃料タンク内に発生する燃料ベーパを内燃機関の吸気通路に導入する蒸発燃料処理機構に設けられたパージ制御弁の開度をデューティ制御する蒸発燃料パージ制御装置であり、前記パージ制御弁の駆動デューティの大きさに応じて駆動周期を切り替えるとともに、切り替え前の駆動デューティの変化率と切り替え後の駆動デューティの変化率とが等しくなるように、切り替えられる駆動周期に対応させて駆動デューティの更新量を変化させる蒸発燃料パージ制御装置において、切り替え可能な駆動周期に対応する前記各更新量で更新した場合の駆動デューティの値を仮想デューティとして算出し、これら仮想デューティの値に基づいて前記切り替え可能な駆動周期のうち、いずれの駆動周期を適用するかを判定することをその要旨とする。
【００１３】
上記構成によれば、実際に駆動周期を変更して駆動デューティを変化させる前に、切り替え可能な駆動周期に対応する各更新量で更新した場合の駆動デューティの値を仮想デューティの値として算出し、算出された各仮想デューティの値に基づいて、いずれの駆動周期を選択するべきかを判定することができる。したがって、駆動周期を実際に切り替える前に、各仮想デューティの値に基づいて駆動周期を切り替えた場合に駆動デューティの変化率が変動するか否かを予測することができるようになる。そのため、上記請求項１に記載の発明によれば、こうした予測に基づいて駆動周期の切り替えを行うことにより、駆動周期の切り替えに伴う駆動デューティの変化率の変動を抑制しつつ、駆動デューティの大きさに応じて駆動周期を切り替えることができるようになる。
【００１４】
請求項２に記載の発明は、駆動デューティが閾値未満であるときに駆動周期が第１駆動周期に設定される一方、駆動デューティが前記閾値以上であるときに駆動周期が前記第１駆動周期よりも短い第２駆動周期に設定される請求項１に記載の蒸発燃料パージ制御装置であって、前記仮想デューティとして、駆動デューティを前記第１駆動周期に対応する第１更新量で更新した場合の仮想デューティである第１仮想デューティと、駆動デューティを前記第２駆動周期に対応する第２更新量で更新した場合の仮想デューティである第２仮想デューティとを算出し、これら各仮想デューティと前記閾値との大きさを比較して、その大小関係に基づいて駆動周期を前記第１駆動周期及び前記第２駆動周期のうち、どちらにするかを判定するものである。
【００１５】
上記請求項２に記載されているように駆動周期を第１駆動周期と第２駆動周期との間で切り替える場合には、第１駆動周期に対応する第１更新量で駆動デューティを更新した場合の第１仮想デューティと、第２駆動周期に対応する第２更新量で駆動デューティを更新した場合の第２仮想デューティとを算出し、これら各仮想デューティと閾値との大小関係に基づいて、いずれの駆動周期を適用するかを判定する構成を採用すればよい。こうした構成を採用すれば、この大小関係に基づいて適切なタイミングで駆動周期を切り替えることができるようになり、駆動周期の切り替えに伴う駆動デューティの変化率の変動を抑制しつつ、駆動デューティの大きさに応じて駆動周期を切り替えることができるようになる。
【００１６】
請求項３に記載の発明は、請求項２に記載の蒸発燃料パージ制御装置において、前記閾値として、駆動周期を前記第１駆動周期から前記第２駆動周期に切り替える際に参照する第１閾値と、駆動周期を前記第２駆動周期から前記第１駆動周期に切り替える際に参照する前記第１閾値よりも小さな第２閾値とが設定されていることをその要旨とする。
【００１７】
上記構成のように、駆動周期を切り替える際に参照する閾値として、駆動周期を前記第１駆動周期から前記第２駆動周期に切り替える際に参照する第１閾値と、駆動周期を前記第２駆動周期から前記第１駆動周期に切り替える際に参照する前記第１閾値よりも小さな第２閾値とを設定し、駆動周期の切り替え特性にヒステリシスを設ける構成を採用することもできる。
【００１８】
請求項４に記載の発明は、請求項３に記載の蒸発燃料パージ制御装置において、駆動デューティが増大中であり且つ駆動周期が前記第１駆動周期に設定されている場合には前記第２仮想デューティが前記第１閾値以上であるときに駆動周期を前記第２駆動周期に切り替え、駆動デューティが増大中であり且つ駆動周期が前記第２駆動周期に設定されている場合には前記第２仮想デューティが前記第２閾値未満であるときに駆動周期を前記第１駆動周期に切り替え、駆動デューティが減少中であり且つ駆動周期が前記第１駆動周期に設定されている場合には前記第１仮想デューティが前記第１閾値以上であるときに駆動周期を前記第２駆動周期に切り替え、駆動デューティが減少中であり且つ駆動周期が前記第２駆動周期に設定されている場合には前記第２仮想デューティが前記第２閾値未満であるときに駆動周期を前記第１駆動周期に切り替えることをその要旨とする。
【００１９】
具体的には、上記請求項４に記載されているように、現在の駆動デューティが増大中であるか減少中であるか、また設定されている駆動周期が第１駆動周期であるか第２駆動周期であるかを参照して各仮想デューティと各閾値との大小関係に基づいて駆動周期を切り替えることにより、駆動周期の切り替えに伴う駆動デューティの変化率の変動を抑制しつつ、駆動デューティの大きさに応じて好適に駆動周期を切り替えることができるようになる。
【００２０】
請求項５に記載の発明は、請求項４に記載の蒸発燃料パージ制御装置において、駆動デューティが増大中であり且つ駆動周期が前記第１駆動周期に設定されているとともに、駆動デューティが前記第１閾値から前記第２更新量を減算した値未満である場合には、前記第２仮想デューティを算出せずに、駆動周期を前記第１駆動周期に保持することをその要旨とする。
【００２１】
駆動デューティの値が第１閾値から第２更新量を減算した値よりも小さい場合には、駆動デューティに第２更新量を加算した場合の第２仮想デューティが第１閾値以上になることがないため、駆動周期が第１駆動周期から第２駆動周期に切り替えられることはない。すなわち、この場合には、第２仮想デューティを算出しなくても駆動デューティの大きさに基づいて駆動周期を第２駆動周期に切り替える必要がないことを判定することができる。
【００２２】
この点、上記請求項５に記載の構成では、駆動デューティが増大中であり且つ駆動周期が第１駆動周期に設定されているとともに、駆動デューティが第１閾値から第２更新量を減算した値未満である場合には、第２仮想デューティを算出せずに、駆動周期を前記第１駆動周期に保持するようにしている。こうした構成によれば第２仮想デューティを算出せずに、駆動周期を第２駆動周期に切り替える必要がないことを判定して駆動周期を第１駆動周期に保持することができ、第１仮想デューティと第２仮想デューティとを双方算出してからいずれの駆動周期を適用すべきかを判定する場合と比較して、制御装置の演算負荷を低減させることができるようになる。
【００２３】
請求項６に記載の発明は、請求項４又は請求項５に記載の蒸発燃料パージ制御装置において、駆動デューティが増大中であり且つ駆動周期が前記第１駆動周期に設定されているとともに、駆動デューティが前記第１閾値から前記第２更新量を減算した値以上である場合には、前記第１仮想デューティを算出せずに、駆動周期を前記第２駆動周期に切り替えることをその要旨とする。
【００２４】
駆動デューティの値が第１閾値から第２更新量を減算した値以上である場合には、駆動デューティに第２更新量を加算した場合の第２仮想デューティが第１閾値以上になるため、駆動周期が第１駆動周期から第２駆動周期に切り替えられる。すなわち、この場合には、第１仮想デューティを算出しなくても駆動デューティの大きさに基づいて駆動周期を第２駆動周期に切り替える必要があることを判定することができる。
【００２５】
この点、上記請求項６に記載の構成では、駆動デューティが増大中であり且つ駆動周期が第１駆動周期に設定されているとともに、駆動デューティが第１閾値から第２更新量を減算した値以上である場合には、第１仮想デューティを算出せずに、駆動周期を前記第１駆動周期から第２駆動周期に切り替えるようにしている。こうした構成によれば第１仮想デューティを算出せずに、駆動周期を第２駆動周期に切り替える必要があることを判定して駆動周期を第２駆動周期に切り替えることができ、第１仮想デューティと第２仮想デューティとを双方算出してからいずれの駆動周期を適用すべきかを判定する場合と比較して、制御装置の演算負荷を低減させることができるようになる。
【００２６】
請求項７に記載の発明は、請求項４〜６のいずれか一項に記載の蒸発燃料パージ制御装置において、駆動デューティが減少中であり且つ駆動周期が前記第２駆動周期に設定されているとともに、駆動デューティが前記第２閾値に前記第２更新量を加算した値以上である場合には、前記第１仮想デューティを算出せずに、駆動周期を前記第２駆動周期に保持することをその要旨とする。
【００２７】
駆動デューティの値が第２閾値に第２更新量を加算した値以上である場合には、駆動デューティから第２更新量を減算した場合の第２仮想デューティが第２閾値未満になることがないため、駆動周期が第２駆動周期から第１駆動周期に切り替えられることはない。すなわち、この場合には、第１仮想デューティを算出しなくても駆動デューティの大きさに基づいて駆動周期を第１駆動周期に切り替える必要がないことを判定することができる。
【００２８】
この点、上記請求項７に記載の構成では、駆動デューティが減少中であり且つ駆動周期が第２駆動周期に設定されているとともに、駆動デューティが第２閾値に第２更新量を加算した値以上である場合には、第１仮想デューティを算出せずに、駆動周期を前記第２駆動周期に保持するようにしている。こうした構成によれば第１仮想デューティを算出せずに、駆動周期を第１駆動周期に切り替える必要がないことを判定して駆動周期を第２駆動周期に保持することができ、第１仮想デューティと第２仮想デューティとを双方算出してからいずれの駆動周期を適用すべきかを判定する場合と比較して、制御装置の演算負荷を低減させることができるようになる。
【００２９】
請求項８に記載の発明は、請求項４〜７のいずれか一項に記載の蒸発燃料パージ制御装置において、駆動デューティが減少中であり且つ駆動周期が前記第２駆動周期に設定されているとともに、駆動デューティが前記第２閾値に前記第２更新量を加算した値未満である場合には、前記第２仮想デューティを算出せずに、駆動周期を前記第１駆動周期に切り替えることをその要旨とする。
【００３０】
駆動デューティの値が第２閾値に第２更新量を加算した値未満である場合には、駆動デューティから第２更新量を減算した場合の第２仮想デューティが第２閾値未満になるため、駆動周期が第２駆動周期から第１駆動周期に切り替えられる。すなわち、この場合には、第２仮想デューティを算出しなくても駆動デューティの大きさに基づいて駆動周期を第１駆動周期に切り替える必要があることを判定することができる。
【００３１】
この点、上記請求項８に記載の構成では、駆動デューティが減少中であり且つ駆動周期が第２駆動周期に設定されているとともに、駆動デューティが第２閾値に第２更新量を加算した値未満である場合には、第２仮想デューティを算出せずに、駆動周期を前記第２駆動周期から第１駆動周期に切り替えるようにしている。こうした構成によれば第２仮想デューティを算出せずに、駆動周期を第１駆動周期に切り替える必要があることを判定して駆動周期を第１駆動周期に切り替えることができ、第１仮想デューティと第２仮想デューティとを双方算出してからいずれの駆動周期を適用すべきかを判定する場合と比較して、制御装置の演算負荷を低減させることができるようになる。
【００３２】
請求項９に記載の発明は、燃料タンク内に発生する燃料ベーパを内燃機関の吸気通路に導入する蒸発燃料処理機構に設けられたパージ制御弁の開度をデューティ制御する蒸発燃料パージ制御装置であり、前記パージ制御弁の駆動デューティが閾値未満であるときに駆動周期を第１駆動周期に設定する一方、駆動デューティが前記閾値以上であるときに駆動周期を前記第１駆動周期よりも短い第２駆動周期に設定するとともに、切り替え前の駆動デューティの変化率と切り替え後の駆動デューティの変化率とが等しくなるように、切り替えられる駆動周期に対応させて駆動デューティの更新量を切り替える蒸発燃料パージ制御装置において、前記第１駆動周期と前記第２駆動周期との公約数に対応する周期で更新されて前記駆動デューティの変化率と等しい変化率で変化する仮想デューティを算出し、この仮想デューティの値が前記閾値を越えて変化するときに、次回駆動周期における駆動周期の切り替えを予約することをその要旨とする。
【００３３】
上記構成にあっては、第１駆動周期と第２駆動周期との公約数に対応する周期、すなわち第１駆動周期及び第２駆動周期よりも短い周期で更新される仮想デューティが閾値を越えて変化するか否かを監視し、この仮想デューティが閾値を越えて変化するときに次回駆動周期において駆動周期を切り替えることを予約する。そのため、駆動デューティよりも短い周期で更新される仮想デューティが閾値を越えて変化したことに基づいて実際に駆動デューティが閾値を越えて変化する前に駆動周期を切り替える必要があることを予測し、駆動周期の切り替えを予約することができるようになる。また、上記請求項９に記載の発明によれば、駆動周期の切り替えが予約されたことに基づいて、駆動周期を実際に切り替える前に、切り替えに伴う駆動デューティの変化率の変動を抑制することができるように切り替え時の駆動デューティの値を予め設定することができるようになり、駆動周期の切り替えに伴う駆動デューティの変化率の変動を抑制しつつ、駆動デューティの大きさに応じて駆動周期を切り替えることができるようになる。
【００３４】
尚、仮想デューティの算出周期をあまりに短くすると制御装置の演算負荷が過剰に増大することとなるため、演算負荷の増大を抑制しつつ、駆動デューティの更新タイミングと仮想デューティの更新タイミングとを同期させる上では、上記第１駆動周期と第２駆動周期との公約数に対応する周期を第１駆動周期と第２駆動周期との最大公約数に対応する値に設定することが望ましい。
【００３５】
請求項１０に記載の発明は、請求項９に記載の蒸発燃料パージ制御装置において、駆動デューティが増大中であり前記仮想デューティが前記閾値以上であることが判定された場合に、次回の駆動デューティ更新タイミングにおいて駆動周期を前記第１駆動周期から前記第２駆動周期に切り替えることを予約し、駆動デューティに前記第２駆動周期で駆動デューティを更新する際の更新量である第２更新量を加算した値を前記次回の駆動デューティ更新タイミングにおいて反映させる次回駆動デューティとして設定するとともに、前記仮想デューティにあっては前記次回の駆動デューティ更新タイミングにおいて駆動デューティが更新されたときに、更新された駆動デューティの値を同仮想デューティの値として再設定し、その算出を再開することをその要旨とする。
【００３６】
具体的には、上記請求項１０に記載されているように、駆動デューティが増大中であり仮想デューティが前記閾値以上であることが判定された場合に、次回の駆動デューティ更新タイミングにおいて駆動周期を第１駆動周期から第２駆動周期に切り替えることを予約し、駆動デューティに第２更新量を加算した値を前記次回の駆動デューティ更新タイミングにおいて反映させる次回駆動デューティとして設定するとともに、仮想デューティにあっては前記次回の駆動デューティ更新タイミングにおいて駆動デューティが更新されたときに、更新された駆動デューティの値を同仮想デューティの値として再設定し、その算出を再開する構成を採用することにより、駆動周期の切り替えに伴う駆動デューティの変化率の変動を抑制しつつ、駆動デューティが閾値以上であるときに駆動周期を第２駆動周期に設定することができるようになる。
【００３７】
請求項１１請求項９又は請求項１０に記載の蒸発燃料パージ制御装置において、駆動デューティが減少中であり前記仮想デューティが前記閾値未満であることが判定された場合に、次回の駆動デューティ更新タイミングにおいて駆動周期を前記第２駆動周期から前記第１駆動周期に切り替えることを予約し、駆動デューティから前記第１駆動周期で駆動デューティを更新する際の更新量である第１更新量を減算した値を前記次回の駆動デューティ更新タイミングにおいて反映させる次回駆動デューティとして設定するとともに、前記仮想デューティにあっては前記次回の駆動デューティ更新タイミングにおいて駆動デューティが更新されたときに、更新された駆動デューティの値を同仮想デューティの値として再設定し、その算出を再開することをその要旨とする。
【００３８】
また、上記請求項１１に記載されているように駆動デューティが減少中であり仮想デューティが閾値未満であることが判定された場合に、次回の駆動デューティ更新タイミングにおいて駆動周期を前記第２駆動周期から前記第１駆動周期に切り替えることを予約し、駆動デューティから第１更新量を減算した値を前記次回の駆動デューティ更新タイミングにおいて反映させる次回駆動デューティとして設定するとともに、仮想デューティにあっては前記次回の駆動デューティ更新タイミングにおいて駆動デューティが更新されたときに、更新された駆動デューティの値を同仮想デューティの値として再設定し、その算出を再開する構成を採用することにより、駆動周期の切り替えに伴う駆動デューティの変化率の変動を抑制しつつ、駆動デューティが閾値未満であるときに駆動周期を第１駆動周期に設定することができるようになる。
【図面の簡単な説明】
【００３９】
【図１】この発明の第１の実施形態にかかる内燃機関の電子制御装置と蒸発燃料処理機構の構成を示す模式図。
【図２】同実施形態にかかるパージ制御弁の駆動周期の設定処理の流れを示すフローチャート。
【図３】同実施形態にかかるパージ制御弁の駆動周期の設定処理の流れを示すフローチャート。
【図４】（ａ），（ｂ），（ｃ），（ｄ），（ｅ），（ｆ）は同実施形態にかかるパージ制御における駆動デューティと各仮想デューティ、並びに駆動周期の関係を示す関係図。
【図５】（ａ），（ｂ），（ｃ），（ｄ），（ｅ），（ｆ）は同実施形態にかかるパージ制御における駆動デューティと各仮想デューティ、並びに駆動周期の関係を示す関係図。
【図６】（ａ），（ｂ），（ｃ），（ｄ），（ｅ），（ｆ）は同実施形態にかかるパージ制御における駆動デューティと各仮想デューティ、並びに駆動周期の関係を示す関係図。
【図７】（ａ），（ｂ），（ｃ），（ｄ），（ｅ），（ｆ）は同実施形態にかかるパージ制御における駆動デューティと各仮想デューティ、並びに駆動周期の関係を示す関係図。
【図８】この発明の第２の実施形態にかかるパージ制御弁の駆動周期の設定処理の流れを示すフローチャート。
【図９】同実施形態にかかるパージ制御弁の駆動周期の設定処理の流れを示すフローチャート。
【図１０】（ａ），（ｂ），（ｃ），（ｄ）は同実施形態にかかるパージ制御における駆動デューティと仮想デューティ、並びに駆動周期の関係を示す関係図。
【図１１】この発明の第３の実施形態にかかるパージ制御弁の駆動周期の設定処理の流れを示すフローチャート。
【図１２】同実施形態にかかるパージ制御弁の駆動周期の設定処理の流れを示すフローチャート。
【図１３】同実施形態にかかるパージ制御における駆動周期の切り替え態様を説明するタイムチャート。
【図１４】同実施形態にかかるパージ制御における駆動周期の切り替え態様を説明するタイムチャート。
【図１５】従来のパージ制御における駆動周期の切り替え態様と、駆動周期の切り替えに伴う駆動デューティの変化との関係を示すタイムチャート。
【発明を実施するための形態】
【００４０】
（第１の実施形態）
以下、この発明にかかる蒸発燃料パージ制御装置を、蒸発燃料処理機構を備える車載内燃機関の電子制御装置に具体化した第１の実施形態について、図１〜７を参照して説明する。
【００４１】
図１に示されるように、内燃機関１０には、燃料タンク２１から供給される燃料を燃焼室１１に噴射供給する燃料噴射弁１２と、噴射された燃料と吸入空気との混合気に点火を行う点火プラグ１３とがそれぞれ設けられている。そして、燃焼室１１には、吸気通路１４と排気通路１５とがそれぞれ接続されている。吸気通路１４の途中には、サージタンク１６が設けられており、更にその上流側には、吸入空気量を調量するスロットル弁１７が設けられている。
【００４２】
図１に示されるように内燃機関１０には、燃料タンク２１内に発生する燃料蒸気を処理する蒸発燃料処理機構３０が設けられている。蒸発燃料処理機構３０は、燃料成分を吸着する吸着材を有するチャコールキャニスタ３１を備えている。チャコールキャニスタ３１は、ベーパ通路３２を介して燃料タンク２１に接続されている。そして、チャコールキャニスタ３１には、大気開放通路３４が接続されている。これにより、燃料タンク２１からベーパ通路３２を通じてチャコールキャニスタ３１に導かれた燃料蒸気は、その燃料成分がチャコールキャニスタ３１に吸着されて清浄化される。そして、清浄化された空気が大気開放通路３４を通じて大気中に放出されるようになっている。
【００４３】
更にチャコールキャニスタ３１には、吸気通路１４と連通されたパージ通路３３が設けられている。パージ通路３３は、図１に示されるようにサージタンク１６に接続されており、その途中には電子制御装置４０からの指令に基づいて開閉制御される電動式のパージ制御弁３５が設けられている。これにより、本実施形態の蒸発燃料処理機構３０にあっては、電子制御装置４０からの指令に基づいてパージ制御弁３５が開弁されたときに吸気通路１４内の負圧によってパージ通路３３を通じてチャコールキャニスタ３１内の空気が吸気通路１４に吸い出されるようになる。このとき、大気開放通路３４から新気が導入されてチャコールキャニスタ３１に吸着されていた燃料成分が脱離し、新気とこの燃料成分が混合してパージガスとなり、このパージガスが吸気通路１４に導入されるようになる。このようにチャコールキャニスタ３１に吸着されていた燃料成分を脱離させ、パージガスを吸気通路１４に導入して燃焼処理する、いわゆるパージ制御を実行することにより、チャコールキャニスタ３１の燃料成分吸着能力が回復するようになる。
【００４４】
また、このようにして吸気通路１４に導入されるパージガスの量は、パージ制御弁３５により調量される。このパージ制御弁３５は、これを駆動する電気信号のデューティ比に応じてその開度が調節されてパージガスの流量を調量するデューティ制御式の弁である。
【００４５】
こうしたパージ制御や、燃料噴射弁１２による燃料噴射量の制御である空燃比フィードバック制御等、機関運転にかかる各種制御は、電子制御装置４０によって実行される。この電子制御装置４０には、こうした各種制御を実行するために、内燃機関１０の運転状態等を検出する各種センサが接続されており、これらセンサからの検出信号が適宜取り込まれる。
【００４６】
例えば、電子制御装置４０には、吸気通路１４を流れる吸入空気量を検出するエアフロメータ５１の検出信号や、排気通路１５に設けられて排気の酸素濃度を検出する空燃比センサ５２の検出信号が入力されている。更に電子制御装置４０には、機関回転速度を検出するための回転速度センサ５３、アクセルペダルの踏込量を検出するアクセルポジションセンサ５４等の検出信号も入力されている。
【００４７】
電子制御装置４０は、これら各センサ５１〜５４等によって検出される内燃機関１０の運転状態や車両の走行状態に基づいて、パージ制御や空燃比フィードバック制御等の各制御を実行する。また、電子制御装置４０は、こうした各制御を実行するためのプログラムや演算用マップ、制御の実行に際して算出される各種データ等を記憶するメモリ４１等を備えている。
【００４８】
ここで、空燃比フィードバック制御とパージ制御との関係について簡単に説明する。空燃比制御は、空燃比を基本的に理論空燃比近傍に保持するように、空燃比センサ５２の出力をもとに燃料噴射弁１２の燃料噴射量をフィードバック制御することにより行われる。
【００４９】
しかし、パージ制御を通じて燃料成分を含むパージガスが吸気通路１４に導入されているときには、燃料噴射弁１２から噴射される燃料に加えて、パージガスに含まれる燃料が燃焼室１１に供給されるようになるため、空燃比がずれるようになる。そこで、空燃比フィードバック制御にあっては、パージ制御によりパージガスが導入されている間は、パージガスに含まれる燃料の分だけ燃料噴射弁１２から噴射する燃料噴射量を減少させる燃料噴射量の減量補正を行うようにしている。尚、パージガスに含まれる燃料の量は、パージガスの流量と、機関運転中に学習されるベーパ濃度とに基づき電子制御装置４０により所定時間毎に推定算出される。そして、この算出された燃料の量に基づいて上記減量補正を行う。
【００５０】
このように空燃比フィードバック制御にあっては、パージガスに含まれる燃料の量を推定して燃料噴射量を減量補正するようにしているが、パージガスの流量が短期間に大幅に変動すると、減量補正を通じて的確に燃料噴射量を補正することができず、空燃比フィードバック制御にずれが生じてしまうおそれがある。そこで、パージ制御にあっては、燃料噴射量が一定であり、空燃比が平衡状態になる機関定常運転時等に、空燃比フィードバック制御に悪影響を与えないようにパージ制御弁３５の駆動デューティを一定の変化率で徐々に変化させ、吸気通路１４に導入するパージガスの量を目標とする量に近づけるようにしている。
【００５１】
またこのとき、パージ制御弁３５の駆動デューティの周期である駆動周期が長い場合には、駆動デューティの更新周期も長くなるため、目標とするパージガスの量の変化に即して速やかに駆動デューティを更新することができなくなるおそれがある。一方で、駆動周期が短い場合には、駆動デューティが小さいときの通電期間が非常に短くなり、パージ制御弁３５の制御分解能によってはパージガスの量を適切に制御できなくなるおそれがある。そこで、本実施形態の内燃機関１０にあっては、駆動デューティの大きさに応じて駆動周期を切り替え、駆動デューティが小さいときには駆動周期を長くする一方、駆動デューティが大きいときには駆動周期を短くするとともに、駆動周期の変更にあわせて駆動デューティの更新量を変更するようにしている。
【００５２】
このように駆動デューティの大きさに応じて駆動周期を切り替えるとともに、駆動周期にあわせて駆動デューティの更新量を変更することにより、上記のような不都合の発生を抑制しつつ、駆動デューティを一定の変化率で徐々に変更することができるようになる。
【００５３】
以下、本実施形態のパージ制御にかかるパージ制御弁３５の駆動デューティの算出並びに駆動周期の設定処理について図２〜７を参照して説明する。尚、図２及び図３はこの処理の一連の流れを示すフローチャートである。
【００５４】
この一連の処理は、電子制御装置４０によりそのとき設定されている駆動周期毎の割込処理として繰り返し実行される。
図２に示されるようにこの一連の処理を開始すると電子制御装置４０は、まずステップＳ１００において、今回駆動デューティは増大するか否かを判定する。
【００５５】
パージ制御にあっては、空燃比フィードバック制御を通じて空燃比が理論空燃比近傍に制御されているときにパージガスの流量を増大させる。そのため、空燃比フィードバック制御を通じて算出される空燃比フィードバック補正係数が「１．０」近傍であれば、駆動デューティを増大させる。一方で、空燃比フィードバック補正係数が「１．０」から所定量以上乖離しているときには、駆動デューティを減少させる。
【００５６】
そのため、このステップＳ１００にあっては、空燃比フィードバック補正係数が「１．０」近傍であるか否かに基づいて今回駆動デューティが増大するか否かを判定し、空燃比フィードバック補正係数が「１．０」近傍にあるときには駆動デューティが増大すると判定する。一方で、空燃比フィードバック補正係数が「１．０」から所定量以上乖離しているときには、駆動デューティが減少すると判定する。
【００５７】
ステップＳ１００において、今回駆動デューティが増大する旨の判定がなされた場合（ステップＳ１００：ＹＥＳ）には、ステップＳ２００へと進み、駆動周期が駆動周期Ａであるか否かを判定する。
【００５８】
尚、本実施形態のパージ制御にあっては、パージ制御弁の駆動周期を１０２．４ミリ秒の駆動周期Ａと、６５．５３６ミリ秒の駆動周期Ｂとの２段階に切り替える。
ステップＳ２００において、駆動周期が駆動周期Ａである旨の判定がなされた場合（ステップＳ２００：ＹＥＳ）には、ステップＳ２１０へと進み、駆動デューティに第１増大量ΔＡ＋を加算して、この値を第１仮想デューティｄＡとしてメモリ４１に記憶する。そして、ステップＳ２１１へと進み、駆動デューティに第２増大量ΔＢ＋を加算して、この値を第２仮想デューティｄＢとしてメモリ４１に記憶する。
【００５９】
尚、第１増大量ΔＡ＋及び第２増大量ΔＢ＋は、１０２．４ミリ秒毎に第１増大量ΔＡ＋ずつ増大させたときの駆動デューティの変化率（単位時間あたりの駆動デューティの変化量）と、６５．５３６ミリ秒毎に第２増大量ΔＢ＋ずつ増大させたときの駆動デューティの変化率とが等しくなるようにその値がそれぞれ設定されている。
【００６０】
こうして第１仮想デューティｄＡ及び第２仮想デューティｄＢを算出すると、ステップＳ２１２へと進み、第１仮想デューティｄＡが第１閾値Ｇ未満であるか否かを判定する。
ステップＳ２１２において、第１仮想デューティｄＡが第１閾値Ｇ未満ではない（ステップＳ２１２：ＮＯ）、すなわち第１仮想デューティｄＡが第１閾値Ｇ以上である旨の判定がなされた場合には、ステップＳ２１３へと進み、第２仮想デューティｄＢが第１閾値Ｇ未満であるか否かを判定する。
【００６１】
ステップＳ２１３において、第２仮想デューティｄＢが第１閾値Ｇ未満ではない（ステップＳ２１３：ＮＯ）、すなわち第２仮想デューティｄＢが第１閾値Ｇ以上である旨の判定がなされた場合には、ステップＳ２１５へと進む。そして、ステップＳ２１５において駆動周期を駆動周期Ｂに設定するとともに、第２仮想デューティｄＢの値を新たな駆動デューティとする。すなわち、駆動周期を駆動周期Ａから駆動周期Ｂに切り替え、駆動デューティを第２増大量ΔＢ＋だけ増大させて駆動デューティを更新する。
【００６２】
一方で、ステップＳ２１２において第１仮想デューティｄＡが第１閾値Ｇ未満である旨の判定がなされた場合（ステップＳ２１２：ＹＥＳ）、またステップＳ２１３において第２仮想デューティｄＢが第１閾値Ｇ未満である旨の判定がなされた場合（ステップＳ２１３：ＹＥＳ）には、ステップＳ２１４へと進む。そして、ステップＳ２１４において、駆動周期を駆動周期Ａに設定するとともに、第１仮想デューティｄＡの値を新たな駆動デューティの値とする。すなわち、駆動周期を駆動周期Ａに保持したまま、駆動デューティを第１増大量ΔＡ＋だけ増大させて駆動デューティを更新する。こうして駆動デューティを更新すると電子制御装置４０はこの処理を一旦終了する。
【００６３】
一方、ステップＳ２００において、駆動周期が駆動周期Ａではない（ステップＳ２００：ＮＯ）、すなわち駆動周期が駆動周期Ｂである旨の判定がなされた場合には、ステップＳ２２０へと進み、駆動デューティに第１増大量ΔＡ＋を加算して、この値を第１仮想デューティｄＡとしてメモリ４１に記憶する。そして、ステップＳ２２１へと進み、駆動デューティに第２増大量ΔＢ＋を加算して、この値を第２仮想デューティｄＢとしてメモリ４１に記憶する。
【００６４】
こうして第１仮想デューティｄＡ及び第２仮想デューティｄＢを算出すると、ステップＳ２２２へと進み、第２仮想デューティｄＢが第１閾値Ｇよりも小さな第２閾値Ｋ未満であるか否かを判定する。
【００６５】
ステップＳ２２２において第２仮想デューティｄＢが第２閾値Ｋ未満である旨の判定がなされた場合（ステップＳ２２２：ＹＥＳ）には、ステップＳ２２３へと進む。そして、ステップＳ２２３において、駆動周期を駆動周期Ａに設定するとともに、第１仮想デューティｄＡの値を新たな駆動デューティの値とする。すなわち、駆動周期を駆動周期Ｂから駆動周期Ａに切り替え、駆動デューティを第１増大量ΔＡ＋だけ増大させて駆動デューティを更新する。
【００６６】
一方で、ステップＳ２２２において、第２仮想デューティｄＢが第２閾値Ｋ未満ではない（ステップＳ２２２：ＮＯ）、すなわち第２仮想デューティｄＢが第２閾値Ｋ以上である旨の判定がなされた場合には、ステップＳ２２４へと進む。そして、ステップＳ２２４において駆動周期を駆動周期Ｂに設定するとともに、第２仮想デューティｄＢの値を新たな駆動デューティとする。すなわち、駆動周期を駆動周期Ｂに保持したまま、駆動デューティを第２増大量ΔＢ＋だけ増大させて駆動デューティを更新する。こうして駆動デューティを更新すると電子制御装置４０はこの処理を一旦終了する。
【００６７】
また、ステップＳ１００において、今回駆動デューティが増大しない（ステップＳ１００：ＮＯ）、すなわち今回駆動デューティが減少する旨の判定がなされた場合には、図３に示されるステップＳ３００へと進み、駆動周期が駆動周期Ａであるか否かを判定する。
【００６８】
ステップＳ３００において、駆動周期が駆動周期Ａである旨の判定がなされた場合（ステップＳ３００：ＹＥＳ）には、ステップＳ３１０へと進み、駆動デューティから第１減少量ΔＡ−を減算して、この値を第１仮想デューティｄＡとしてメモリ４１に記憶する。そして、ステップＳ３１１へと進み、駆動デューティから第２減少量ΔＢ−を減算して、この値を第２仮想デューティｄＢとしてメモリ４１に記憶する。
【００６９】
尚、第１減少量ΔＡ−及び第２減少量ΔＢ−は、１０２．４ミリ秒毎に第１減少量ΔＡ−ずつ駆動デューティを減少させたときの駆動デューティの変化率と、６５．５３６ミリ秒毎に第２減少量ΔＢ−ずつ駆動デューティを減少させたときの駆動デューティの変化率とが等しくなるようにその値がそれぞれ設定されている。
【００７０】
こうして第１仮想デューティｄＡ及び第２仮想デューティｄＢを算出すると、ステップＳ３１２へと進み、第１仮想デューティｄＡが第１閾値Ｇ未満であるか否かを判定する。
ステップＳ３１２において第１仮想デューティｄＡが第１閾値Ｇ未満である旨の判定がなされた場合（ステップＳ３１２：ＹＥＳ）には、ステップＳ３１３へと進む。そして、ステップＳ３１３において、駆動周期を駆動周期Ａに設定するとともに、第１仮想デューティｄＡの値を新たな駆動デューティの値とし、駆動デューティを更新する。すなわち、駆動周期を駆動周期Ａに保持したまま、駆動デューティを第１減少量ΔＡ−だけ減少させて駆動デューティを更新する。
【００７１】
一方で、ステップＳ３１２において、第１仮想デューティｄＡが第１閾値Ｇ未満ではない（ステップＳ３１２：ＮＯ）、すなわち第１仮想デューティｄＡが第１閾値Ｇ以上である旨の判定がなされた場合には、ステップＳ３１４へと進む。そして、ステップＳ３１４において駆動周期を駆動周期Ｂに設定するとともに、第２仮想デューティｄＢの値を新たな駆動デューティとし、駆動デューティを更新する。すなわち、駆動周期を駆動周期Ａから駆動周期Ｂに切り替え、駆動デューティを第２減少量ΔＢ−だけ減少させて駆動デューティを更新する。こうして駆動デューティを更新すると電子制御装置４０はこの処理を一旦終了する。
【００７２】
一方、ステップＳ３００において、駆動周期が駆動周期Ａではない（ステップＳ３００：ＮＯ）、すなわち駆動周期が駆動周期Ｂである旨の判定がなされた場合には、ステップＳ３２０へと進み、駆動デューティから第１減少量ΔＡ−を減算して、この値を第１仮想デューティｄＡとしてメモリ４１に記憶する。そして、ステップＳ３２１へと進み、駆動デューティから第２減少量ΔＢ−を減算して、この値を第２仮想デューティｄＢとしてメモリ４１に記憶する。
【００７３】
こうして第１仮想デューティｄＡ及び第２仮想デューティｄＢを算出すると、ステップＳ３２２へと進み、第２仮想デューティｄＢが第２閾値Ｋ未満であるか否かを判定する。
ステップＳ３２２において第２仮想デューティｄＢが第２閾値Ｋ未満である旨の判定がなされた場合（ステップＳ３２２：ＹＥＳ）には、ステップＳ３２３へと進む。そして、ステップＳ３２３において、駆動周期を駆動周期Ａに設定するとともに、第１仮想デューティｄＡの値を新たな駆動デューティの値とする。すなわち、駆動周期を駆動周期Ｂから駆動周期Ａに切り替え、駆動デューティを第１減少量ΔＡ−だけ減少させて駆動デューティを更新する。
【００７４】
一方で、ステップＳ３２２において、第２仮想デューティｄＢが第２閾値Ｋ未満ではない（ステップＳ３２２：ＮＯ）、すなわち第２仮想デューティｄＢが第２閾値Ｋ以上である旨の判定がなされた場合には、ステップＳ３２４へと進む。そして、ステップＳ３２４において駆動周期を駆動周期Ｂに設定するとともに、第２仮想デューティｄＢの値を新たな駆動デューティとする。すなわち、駆動周期を駆動周期Ｂに保持したまま、駆動デューティを第２減少量ΔＢ−だけ減少させて駆動デューティを更新する。こうして駆動デューティを更新すると電子制御装置４０はこの処理を一旦終了する。
【００７５】
本実施形態にかかるパージ制御にあっては、上記のような一連の処理を繰り返し実行し、第１仮想デューティｄＡ及び第２仮想デューティｄＢを算出してこれら各仮想デューティと、第１閾値Ｇまたは第２閾値Ｋとを比較し、上記のようにその大小関係に基づいて駆動周期を切り替えるようにしている。
【００７６】
以下、こうしたパージ制御を通じて駆動周期を切り替える場合の駆動周期の切り替え態様について図４〜７を参照して具体的に説明する。尚、図４〜７にあっては、現在の駆動デューティを丸印、第１仮想デューティｄＡを四角印、第２仮想デューティｄＢを三角印で示している。
【００７７】
図４（ａ）〜（ｆ）は、駆動デューティが増大しており、且つ現在の駆動周期が駆動周期Ａに設定されている場合の駆動デューティ、第１仮想デューティｄＡ、第２仮想デューティｄＢの関係を示す関係図である。
【００７８】
図４（ａ）に示されるように現在の駆動デューティが第１閾値Ｇ以上であり、第１仮想デューティｄＡ及び第２仮想デューティｄＢがともに第１閾値Ｇ以上であるときには、図２を参照して説明したようにステップＳ２１２及びステップＳ２１３において否定判定がなされ、駆動周期が駆動周期Ｂに切り替えられるとともに、駆動デューティが第２仮想デューティｄＢの値に更新される。すなわち、図４（ａ）に四角印で示される第１仮想デューティｄＡ及び図４（ａ）に三角印で示される第２仮想デューティｄＢのうち、図４（ａ）に三角印で示される第２仮想デューティｄＢが選択される。
【００７９】
また、図４（ｂ）に示されるように駆動デューティが第２閾値Ｋ以上第１閾値Ｇ未満であり、第１仮想デューティｄＡ及び第２仮想デューティｄＢがともに第１閾値Ｇ以上であるときにも同様に、図４（ｂ）に三角印で示される第２仮想デューティｄＢが選択される。すなわち、駆動周期が駆動周期Ｂに切り替えられるとともに、駆動デューティが第２仮想デューティｄＢに更新される。
【００８０】
図４（ｃ）に示されるように第１仮想デューティｄＡが第１閾値Ｇ以上であり、第２仮想デューティｄＢが第２閾値Ｋ以上第１閾値Ｇ未満であるときには、図２を参照して説明したようにステップＳ２１２において否定判定がなされる。一方でステップＳ２１３において肯定判定がなされるため、駆動周期が駆動周期Ａに保持されるとともに駆動デューティが第１仮想デューティｄＡに更新される。すなわち、この場合には図４（ｃ）に四角印で示される第１仮想デューティｄＡ及び図４（ｃ）に三角印で示される第２仮想デューティｄＢのうち、図４（ｃ）に四角印で示される第１仮想デューティｄＡが選択される。
【００８１】
尚、このとき従来行われていたパージ制御のように現在の駆動周期に基づいて次回駆動デューティを設定し、次回駆動デューティが閾値以上であることが判定されたときに駆動周期を切り替えるようにした場合には、図４（ｃ）に「×」印で示されるように駆動デューティが更新され、駆動デューティの変化率が変動してしまうこととなる。
【００８２】
図４（ｄ）に示されるように第１仮想デューティｄＡ及び第２仮想デューティｄＢがともに第２閾値Ｋ以上第１閾値Ｇ未満であるときには、図２を参照して説明したようにステップＳ２１２において肯定判定がなされ、駆動周期が駆動周期Ａに保持されるとともに駆動デューティが第１仮想デューティｄＡに更新される。すなわち、この場合には図４（ｄ）に四角印で示される第１仮想デューティｄＡ及び図４（ｄ）に三角印で示される第２仮想デューティｄＢのうち、図４（ｄ）に四角印で示される第１仮想デューティｄＡが選択される。
【００８３】
また、図４（ｅ）に示されるように第１仮想デューティｄＡが第２閾値Ｋ以上第１閾値Ｇ未満であり、第２仮想デューティｄＢが第２閾値Ｋ未満であるとき、また図４（ｆ）に示されるように第１仮想デューティｄＡ及び第２仮想デューティｄＢがともに第２閾値Ｋ未満であるときにも、同様にステップ２１２において肯定判定がなされる。そのため、駆動周期が駆動周期Ａに保持されるとともに駆動デューティが第１仮想デューティｄＡに更新される。すなわち、図４（ｅ）及び図４（ｆ）においてそれぞれ四角印で示される第１仮想デューティｄＡ、及び図４（ｅ）及び図４（ｆ）においてそれぞれ三角印で示される第２仮想デューティｄＢのうち、四角印で示される第１仮想デューティｄＡがそれぞれ選択される。
【００８４】
図５（ａ）〜（ｆ）は、駆動デューティが増大しており、且つ現在の駆動周期が駆動周期Ｂに設定されている場合の駆動デューティ、第１仮想デューティｄＡ、第２仮想デューティｄＢの関係を示す関係図である。
【００８５】
図５（ａ）に示されるように駆動デューティが第１閾値Ｇ以上であり、第１仮想デューティｄＡ及び第２仮想デューティｄＢがともに第１閾値Ｇ以上であるときには、図２を参照して説明したようにステップＳ２２２において否定判定がなされ、駆動周期が駆動周期Ｂに保持されるとともに、駆動デューティが第２仮想デューティｄＢの値に更新される。すなわち、図５（ａ）に四角印で示される第１仮想デューティｄＡ及び図５（ａ）に三角印で示される第２仮想デューティｄＢのうち、図５（ａ）に三角印で示される第２仮想デューティｄＢが選択される。
【００８６】
また、図５（ｂ）に示されるように駆動デューティが第２閾値Ｋ以上第１閾値Ｇ未満であり、第１仮想デューティｄＡ及び第２仮想デューティｄＢがともに第１閾値Ｇ以上であるときにも同様に図５（ｂ）に三角印で示される第２仮想デューティｄＢが選択され、駆動周期が駆動周期Ｂに保持される。
【００８７】
更に図５（ｃ）に示されるように第１仮想デューティｄＡが第１閾値Ｇ以上であり、第２仮想デューティｄＢが第２閾値Ｋ以上第１閾値Ｇ未満であるとき、そして図５（ｄ）に示されるように第１仮想デューティｄＡ及び第２仮想デューティｄＢがともに第２閾値Ｋ以上第１閾値Ｇ未満であるときにも、図５（ｃ）及び図５（ｄ）においてそれぞれ三角印で示される第２仮想デューティｄＢがそれぞれ選択され、駆動周期が駆動周期Ｂに保持される。
【００８８】
一方、図５（ｅ）に示されるように第１仮想デューティｄＡが第２閾値Ｋ以上第１閾値Ｇ未満であり、第２仮想デューティｄＢが第２閾値Ｋ未満であるときには、図２を参照して説明したようにステップＳ２２２において肯定判定がなされ、駆動周期が駆動周期Ａに切り替えられるとともに駆動デューティが第１仮想デューティｄＡに更新される。すなわち、この場合には図５（ｅ）に四角印で示される第１仮想デューティｄＡ及び図５（ｅ）に三角印で示される第２仮想デューティｄＢのうち、図５（ｅ）に四角印で示される第１仮想デューティｄＡが選択される。
【００８９】
また、図５（ｆ）に示されるように第１仮想デューティｄＡ及び第２仮想デューティｄＢがともに第２閾値Ｋ未満であるときにも、同様にステップ２２２において肯定判定がなされ、駆動周期が駆動周期Ａに切り替えられるとともに駆動デューティが第１仮想デューティｄＡに更新される。すなわち、図４（ｆ）に四角印で示される第１仮想デューティｄＡ及び図４（ｆ）に三角印で示される第２仮想デューティｄＢのうち、図５（ｆ）に四角印で示される第１仮想デューティｄＡが選択される。
【００９０】
図６（ａ）〜（ｆ）は、駆動デューティが減少しており、且つ現在の駆動周期が駆動周期Ａに設定されている場合の駆動デューティ、第１仮想デューティｄＡ、第２仮想デューティｄＢの関係を示す関係図である。
【００９１】
図６（ａ）に示されるように駆動デューティが第２閾値Ｋ未満であり、第１仮想デューティｄＡ及び第２仮想デューティｄＢがともに第２閾値Ｋ未満であるときには、図３を参照して説明したようにステップＳ３１２において肯定判定がなされ、駆動周期が駆動周期Ａに保持されるとともに駆動デューティが第１仮想デューティｄＡの値に更新される。すなわち、図６（ａ）に四角印で示される第１仮想デューティｄＡ及び図６（ａ）に三角印で示される第２仮想デューティｄＢのうち、図６（ａ）に四角印で示される第１仮想デューティｄＡが選択される。
【００９２】
また、図６（ｂ）に示されるように駆動デューティが第２閾値Ｋ以上第１閾値Ｇ未満であり、第１仮想デューティｄＡ及び第２仮想デューティｄＢがともに第２閾値Ｋ未満であるときにも、同様に図６（ａ）に四角印で示される第１仮想デューティｄＡが選択され、駆動周期が駆動周期Ａに保持される。
【００９３】
更に図６（ｃ）に示されるように第１仮想デューティｄＡが第２閾値Ｋ未満であり、第２仮想デューティｄＢが第２閾値Ｋ以上第１閾値Ｇ未満であるとき、図６（ｄ）に示されるように第１仮想デューティｄＡ及び第２仮想デューティｄＢがともに第２閾値Ｋ以上第１閾値Ｇ未満であるとき、図６（ｅ）に示されるように第１仮想デューティｄＡが第２閾値Ｋ以上第１閾値Ｇ未満であり、第２仮想デューティｄＢが第１閾値Ｇ以上であるときにも、同様に四角印で示される第１仮想デューティｄＡがそれぞれ選択され、駆動周期が駆動周期Ａに保持される。
【００９４】
そして、図６（ｆ）に示されるように第１仮想デューティｄＡ及び第２仮想デューティｄＢがともに第１閾値Ｇ以上であるときには、図３を参照して説明したようにステップＳ３１２において否定判定がなされ、駆動周期が駆動周期Ｂに切り替えられるとともに駆動デューティが第２仮想デューティｄＢの値に更新される。すなわち、この場合には図６（ｆ）に四角印で示される第１仮想デューティｄＡ及び図６（ｆ）に三角印で示される第２仮想デューティｄＢのうち、図６（ｆ）に三角印で示される第２仮想デューティｄＢが選択される。
【００９５】
図７（ａ）〜（ｆ）は、駆動デューティが減少しており、且つ現在の駆動周期が駆動周期Ｂに設定されている場合の駆動デューティ、第１仮想デューティｄＡ、第２仮想デューティｄＢの関係を示す関係図である。
【００９６】
図７（ａ）に示されるように駆動デューティが第２閾値Ｋ未満であり、第１仮想デューティｄＡ及び第２仮想デューティｄＢがともに第２閾値Ｋ未満であるときには、図３を参照して説明したようにステップＳ３２２において肯定判定がなされる。そのため、駆動周期が駆動周期Ａに切り替えられるとともに駆動デューティが第１仮想デューティｄＡの値に更新される。すなわち、図７（ａ）に四角印で示される第１仮想デューティｄＡ及び図７（ａ）に三角印で示される第２仮想デューティｄＢのうち、図７（ａ）に四角印で示される第１仮想デューティｄＡが選択される。
【００９７】
また、図７（ｂ）に示されるように駆動デューティが第２閾値Ｋ以上第１閾値Ｇ未満であり、第１仮想デューティｄＡ及び第２仮想デューティｄＢがともに第２閾値Ｋ未満であるときにも、同様に図７（ｂ）に四角印で示される第１仮想デューティｄＡが選択される。すなわち、駆動周期が駆動周期Ａに保持され、駆動デューティが第１仮想デューティｄＡに更新される。
【００９８】
尚、このとき、従来行われていたパージ制御のように現在の駆動周期に基づいて次回駆動デューティを設定し、次回駆動デューティが閾値以上であることが判定されたときに駆動周期を切り替えるようにした場合には、図７（ｂ）に「×」印で示されるように駆動デューティが更新され、駆動デューティの変化率が変動してしまうこととなる。
【００９９】
図７（ｃ）に示されるように第１仮想デューティｄＡが第２閾値Ｋ未満であり、第２仮想デューティｄＢが第２閾値Ｋ以上第１閾値Ｇ未満であるときには、図３を参照して説明したようにステップＳ３２２において否定判定がなされ、駆動周期が駆動周期Ｂに保持されるとともに駆動デューティが第２仮想デューティｄＢの値に更新される。すなわち、図７（ｃ）に四角印で示される第１仮想デューティｄＡ及び図７（ｃ）に三角印で示される第２仮想デューティｄＢのうち、図７（ｃ）に三角印で示される第２仮想デューティｄＢが選択される。
【０１００】
また、図７（ｄ）に示されるように第１仮想デューティｄＡ及び第２仮想デューティｄＢがともに第２閾値Ｋ以上第１閾値Ｇ未満であるときにも、同様に図７（ｄ）に三角印で示される第２仮想デューティｄＢが選択され、駆動周期が駆動周期Ｂに保持される。
【０１０１】
更に図７（ｅ）に示されるように第１仮想デューティｄＡが第２閾値Ｋ以上第１閾値Ｇ未満であり、第２仮想デューティｄＢが第１閾値Ｇ以上であるとき、そして図７（ｆ）に示されるように第１仮想デューティｄＡ及び第２仮想デューティｄＢがともに第１閾値Ｇ以上であるときにも、同様に三角印で示される第２仮想デューティｄＢがそれぞれ選択され、駆動周期が駆動周期Ｂに保持される。
【０１０２】
以上説明した第１の実施形態によれば、以下の効果が得られるようになる。
（１）実際に駆動周期を変更して駆動デューティを変化させる前に、駆動周期Ａに対応する第１増大量ΔＡ＋または第１減少量ΔＡ−で更新した場合の駆動デューティの値を第１仮想デューティｄＡとして算出するとともに、駆動周期Ｂに対応する第２増大量ΔＢ＋または第２減少量ΔＢ−で更新した場合の駆動デューティの値を第２仮想デューティｄＢとして算出するようにしている。そして、算出された各仮想デューティの値に基づいて、いずれの駆動周期を選択するべきかを判定するようにしている。したがって、駆動周期を実際に切り替える前に、各仮想デューティの値に基づいて駆動周期を切り替えた場合に駆動デューティの変化率が変動するか否かを予測することができ、これに基づいて的確に駆動周期を切り替えることができる。そのため、駆動周期の切り替えに伴う駆動デューティの変化率の変動を抑制しつつ、駆動デューティの大きさに応じて駆動周期を切り替えることができる。
（第２の実施形態）
以下、本願発明にかかる蒸発燃料パージ制御装置を、蒸発燃料処理機構を備える車載内燃機関の電子制御装置として具体化した第２の実施形態について図８〜１０を参照して説明する。尚、本実施形態と第１の実施形態とは、パージ制御にかかるパージ制御弁３５の駆動デューティの算出並びに駆動周期の設定処理の内容のみが異なるものであるため、第１の実施形態と同様の構成及び同様の処理には同一の符号を付してその説明を一部省略し、以下では第１の実施形態と本実施形態との相違点を中心に説明を行う。
【０１０３】
図８及び図９は本実施形態のパージ制御にかかるパージ制御弁３５の駆動デューティの算出並びに駆動周期の設定処理一連の流れを示すフローチャートである。
この処理は図２及び図３を参照して説明した第１の実施形態における処理と同様にそのとき設定されている駆動周期毎に電子制御装置４０によって繰り返し実行される。
【０１０４】
図８に示されるようにこの一連の処理を開始すると電子制御装置４０は、まずステップＳ１００において、今回駆動デューティは増大するか否かを判定する。
ステップＳ１００において、今回駆動デューティが増大する旨の判定がなされた場合（ステップＳ１００：ＹＥＳ）には、ステップＳ２００へと進み、駆動周期が駆動周期Ａであるか否かを判定する。
【０１０５】
ステップＳ２００において、駆動周期が駆動周期Ａである旨の判定がなされた場合（ステップＳ２００：ＹＥＳ）には、ステップＳ２３０へと進み、駆動デューティが、第１閾値Ｇから第２増大量ΔＢ＋を減算した値未満であるか否かを判定する。
【０１０６】
ステップＳ２３０において、駆動デューティが、第１閾値Ｇから第２増大量ΔＢ＋を減算した値未満である旨の判定がなされた場合（ステップＳ２３０：ＹＥＳ）には、ステップＳ２３１へと進む。そして、ステップＳ２３１において、駆動デューティに第１増大量ΔＡ＋を加算して、この値を第１仮想デューティｄＡとしてメモリ４１に記憶する。そして、ステップＳ２３１へと進み、駆動周期を駆動周期Ａに設定するとともに、第１仮想デューティｄＡの値を新たな駆動デューティの値とし、駆動デューティを第１増大量ΔＡ＋だけ増大させて駆動デューティを更新する。
【０１０７】
一方で、ステップＳ２３０において、駆動デューティが、第１閾値Ｇから第２増大量ΔＢ＋を減算した値未満ではない（ステップＳ２３０：ＮＯ）、すなわち駆動デューティが、第１閾値Ｇから第２増大量ΔＢ＋を減算した値以上である旨の判定がなされた場合には、ステップＳ２３３へと進む。
【０１０８】
そして、ステップＳ２３３において、駆動デューティに第２増大量ΔＢ＋を加算して、この値を第２仮想デューティｄＢとしてメモリ４１に記憶する。そして、ステップＳ２３４へと進み、駆動周期を駆動周期Ｂに設定するとともに、第２仮想デューティｄＢの値を新たな駆動デューティとする。すなわち、駆動周期を駆動周期Ａから駆動周期Ｂに切り替え、駆動デューティを第２増大量ΔＢ＋だけ増大させて駆動デューティを更新する。こうして駆動デューティを更新すると電子制御装置４０はこの処理を一旦終了する。
【０１０９】
一方、ステップＳ２００において、駆動周期が駆動周期Ａではない（ステップＳ２００：ＮＯ）、すなわち駆動周期が駆動周期Ｂである旨の判定がなされた場合には、ステップＳ２４０へと進み、駆動デューティに第２増大量ΔＢ＋を加算して、この値を第２仮想デューティｄＢとしてメモリ４１に記憶する。そして、ステップＳ２４１へと進み、第２仮想デューティｄＢが第２閾値Ｋ未満であるか否かを判定する。
【０１１０】
ステップＳ２４１において第２仮想デューティｄＢが第２閾値Ｋ未満である旨の判定がなされた場合（ステップＳ２４１：ＹＥＳ）には、ステップＳ２４２へと進み、駆動デューティに第１増大量ΔＡ＋を加算して、この値を第１仮想デューティｄＡとしてメモリ４１に記憶する。そして、ステップＳ２４３へと進み、駆動周期を駆動周期Ａに設定するとともに、第１仮想デューティｄＡの値を新たな駆動デューティの値とする。すなわち、駆動周期を駆動周期Ｂから駆動周期Ａに切り替え、駆動デューティを第１増大量ΔＡ＋だけ増大させて駆動デューティを更新する。
【０１１１】
一方で、ステップＳ２４１において、第２仮想デューティｄＢが第２閾値Ｋ未満ではない（ステップＳ２４１：ＮＯ）、すなわち第２仮想デューティｄＢが第２閾値Ｋ以上である旨の判定がなされた場合には、ステップＳ２４４へと進む。そして、ステップＳ２４４において駆動周期を駆動周期Ｂに設定するとともに、第２仮想デューティｄＢの値を新たな駆動デューティとする。すなわち、駆動周期を駆動周期Ｂに保持したまま、駆動デューティを第２増大量ΔＢ＋だけ増大させて駆動デューティを更新する。こうして駆動デューティを更新すると電子制御装置４０はこの処理を一旦終了する。
【０１１２】
また、ステップＳ１００において、今回駆動デューティが増大しない（ステップＳ１００：ＮＯ）、すなわち今回駆動デューティが減少する旨の判定がなされた場合には、図９に示されるステップＳ３００へと進み、駆動周期が駆動周期Ａであるか否かを判定する。
【０１１３】
ステップＳ３００において、駆動周期が駆動周期Ａである旨の判定がなされた場合（ステップＳ３００：ＹＥＳ）には、ステップＳ３１０へと進み、駆動デューティから第１減少量ΔＡ−を減算して、この値を第１仮想デューティｄＡとしてメモリ４１に記憶する。こうして第１仮想デューティｄＡを算出すると、ステップＳ３３０へと進み、第１仮想デューティｄＡが第１閾値Ｇ未満であるか否かを判定する。
【０１１４】
ステップＳ３３０において、第１仮想デューティｄＡが第１閾値Ｇ未満である旨の判定がなされた場合（ステップＳ３３０：ＹＥＳ）には、ステップＳ３３１へと進む。そして、ステップＳ３３１において、駆動周期を駆動周期Ａに設定するとともに、第１仮想デューティｄＡの値を新たな駆動デューティの値とし、駆動デューティを第１減少量ΔＡ−だけ減少させて駆動デューティを更新する。
【０１１５】
一方で、ステップＳ３３０において、第１仮想デューティｄＡが第１閾値Ｇ未満ではない（ステップＳ３３０：ＮＯ）、すなわち第１仮想デューティｄＡが第１閾値Ｇ以上である旨の判定がなされた場合には、ステップＳ３３２へと進み、駆動デューティから第２減少量ΔＢ−を減算して、この値を第２仮想デューティｄＢとしてメモリ４１に記憶する。こうして第２仮想デューティｄＢを算出すると、ステップＳ３３３へと進み、駆動周期を駆動周期Ｂに設定するとともに、第２仮想デューティｄＢの値を新たな駆動デューティとする。すなわち、駆動周期を駆動周期Ａから駆動周期Ｂに切り替え、駆動デューティを第２減少量ΔＢ−だけ減少させて駆動デューティを更新する。こうして駆動デューティを更新すると電子制御装置４０はこの処理を一旦終了する。
【０１１６】
一方、ステップＳ３００において、駆動周期が駆動周期Ａではない（ステップＳ３００：ＮＯ）、すなわち駆動周期が駆動周期Ｂである旨の判定がなされた場合には、ステップＳ３４０へと進み、駆動デューティが、第２閾値Ｋに第２減算量ΔＢ−を加算した値以上であるか否かを判定する。
【０１１７】
ステップＳ３４０において、駆動デューティが、第２閾値Ｋに第２減算量ΔＢ−を加算した値以上である旨の判定がなされた場合（ステップＳ３４０：ＹＥＳ）には、ステップＳ３４１へと進む。そして、ステップＳ３４１において、駆動デューティから第２減少量ΔＢ−を減算して、この値を第２仮想デューティｄＢとしてメモリ４１に記憶する。
【０１１８】
こうして第２仮想デューティｄＢを算出すると、ステップＳ３４２へと進み、駆動周期を駆動周期Ｂに設定するとともに、第２仮想デューティｄＢの値を新たな駆動デューティとする。すなわち、駆動周期を駆動周期Ｂに保持したまま、駆動デューティを第２減少量ΔＢ−だけ減少させて駆動デューティを更新する。
【０１１９】
一方で、ステップＳ３４０において、駆動デューティが第２閾値Ｋに第２減算量ΔＢ−を加算した値以上ではない（ステップＳ３４０：ＮＯ）、すなわち駆動デューティが、第２閾値Ｋに第２減算量ΔＢ−を加算した値未満である旨の判定がなされた場合には、ステップＳ３４３へと進む。
【０１２０】
そして、ステップＳ３４３において、駆動デューティから第１減少量ΔＡ−を減算して、この値を第１仮想デューティｄＡとしてメモリ４１に記憶する。そして、ステップＳ３４４へと進み、駆動周期を駆動周期Ａに設定するとともに、第１仮想デューティｄＡの値を新たな駆動デューティの値とする。すなわち、駆動周期を駆動周期Ｂから駆動周期Ａに切り替え、駆動デューティを第１減少量ΔＡ−だけ減少させて駆動デューティを更新する。こうして駆動デューティを更新すると電子制御装置４０はこの処理を一旦終了する。
【０１２１】
このように本実施形態の電子制御装置４０は、パージ制御の実行に伴って図８及び図９を参照して説明した一連の処理を繰り返し実行し、第１仮想デューティｄＡ及び第２仮想デューティｄＢを算出し、駆動周期を切り替えるようにしている。
【０１２２】
以上説明したようなパージ制御を実行する第２の実施形態によれば、第１の実施形態における（１）の効果に準ずる効果に加えて、以下の作用効果が得られるようになる。
（２）第１の実施形態にかかるパージ制御にあっては、常に第１仮想デューティｄＡと第２仮想デューティｄＢとを算出し、現在の駆動周期が駆動周期Ａであり且つ駆動デューティが増大中である場合には、第２仮想デューティｄＢが第１閾値Ｇ未満であることが判定されたときに駆動周期を駆動周期Ａに保持するようにしていた。
【０１２３】
しかし、図１０（ａ）に示されるように駆動デューティが第１閾値Ｇから第２増大量ΔＢ＋を減算した値よりも小さい場合には、駆動デューティに第２増大量ΔＢ＋を加算した場合の第２仮想デューティｄＢ（破線の三角印）が第１閾値Ｇ以上になることはない。そのため、この場合には駆動周期が駆動周期Ａから駆動周期Ｂに切り替えられることはない。
【０１２４】
要するに、この場合には、第２仮想デューティを算出しなくても駆動デューティの大きさに基づいて駆動周期を第２駆動周期に切り替える必要がないことを判定することができる。
【０１２５】
これに対して本実施形態のパージ制御にあっては、駆動デューティが増大中であり且つ駆動周期が駆動周期Ａに設定されている場合には、駆動デューティが第１閾値Ｇから第２増大量ΔＢ＋を減算した値未満である旨の判定がなされたとき（図８におけるステップＳ２３０：ＹＥＳのとき）に図１０（ａ）に破線の三角印で示される第２仮想デューティｄＢを算出せずに、駆動周期を駆動周期Ａに保持し、駆動デューティを第１仮想デューティｄＡに更新するようにしている。そのため、第１仮想デューティｄＡと第２仮想デューティｄＢとを双方算出してから、駆動周期Ａと駆動周期Ｂのうち、いずれの駆動周期を適用すべきかを判定する第１の実施形態にかかるパージ制御と比較して、電子制御装置４０の演算負荷を低減させることができる。
【０１２６】
尚、図１０にあっては、上記図４〜７と同様に駆動デューティを丸印、第１仮想デューティｄＡを四角印、第２仮想デューティｄＢを三角印で示している。また、図１０（ａ）及び図１０（ｂ）は現在の駆動周期が駆動周期Ａに設定されており、駆動デューティを増大させているときの状態を示し、図１０（ｃ）及び図１０（ｄ）は現在の駆動周期が駆動周期Ｂに設定されており、駆動デューティを減少させているときの状態を示している。
【０１２７】
（３）第１の実施形態にかかるパージ制御にあっては、常に第１仮想デューティｄＡと第２仮想デューティｄＢとを算出し、現在の駆動周期が駆動周期Ａであり且つ駆動デューティが増大中である場合には、第２仮想デューティｄＢが第１閾値Ｇ以上であることが判定されたときに駆動周期を駆動周期Ａから駆動周期Ｂに切り替えるようにしていた。
【０１２８】
しかし、図１０（ｂ）に示されるように駆動デューティの値が第１閾値Ｇから第２増大量ΔＢ＋を減算した値以上である場合には、駆動デューティに第２増大量ΔＢ＋を加算した場合の第２仮想デューティｄＢ（実線の三角印）が必ず第１閾値Ｇ以上になるため、この場合には必ず駆動周期が駆動周期Ａから駆動周期Ｂに切り替えられる。
【０１２９】
すなわち、この場合には、第１仮想デューティｄＡを算出しなくても駆動デューティの大きさに基づいて駆動周期を駆動周期Ｂに切り替える必要があることを判定することができる。この点、上記第２の実施形態では、駆動デューティが増大中であり且つ駆動周期が駆動周期Ａに設定されている場合には、駆動デューティが第１閾値Ｇから第２増大量ΔＢ＋を減算した値以上である旨の判定がなされたとき（図８におけるステップＳ２３０：ＮＯのとき）に図１０（ｂ）に破線の四角印で示される第１仮想デューティｄＡを算出せずに、駆動周期を駆動周期Ａから駆動周期Ｂに切り替えるようにしている。そのため、第１仮想デューティｄＡと第２仮想デューティｄＢとを双方算出してから、駆動周期Ａと駆動周期Ｂのうち、いずれの駆動周期を適用すべきかを判定する第１実施形態にかかるパージ制御と比較して、電子制御装置４０の演算負荷を低減させることができる。
【０１３０】
（４）第１の実施形態にかかるパージ制御にあっては、常に第１仮想デューティｄＡと第２仮想デューティｄＢとを算出し、現在の駆動周期が駆動周期Ｂであり且つ駆動デューティが減少中である場合には、第２仮想デューティｄＢが第２閾値Ｋ未満であることが判定されたときに駆動周期を駆動周期Ｂから駆動周期Ａに切り替えるようにしていた。
【０１３１】
しかし、図１０（ｃ）に示されるように駆動デューティの値が第２閾値Ｋに第２減少量ΔＢ−を加算した値以上である場合には、駆動デューティから第２減少量ΔＢ−を減算した場合の第２仮想デューティｄＢ（実線の三角印）が第２閾値Ｋ未満になることがないため、駆動周期が駆動周期Ｂから駆動周期Ａに切り替えられることはない。
【０１３２】
すなわち、この場合には、図１０（ｃ）に破線の四角印で示される第１仮想デューティｄＡを算出しなくても駆動デューティの大きさに基づいて駆動周期を駆動周期Ａに切り替える必要がないことを判定することができる。
【０１３３】
この点、本実施形態にかかるパージ制御にあっては、駆動デューティが減少中であり且つ駆動周期が駆動周期Ｂに設定されている場合には、駆動デューティが第２閾値Ｋに第２減少量ΔＢ−を加算した値以上である旨の判定がなされたとき（図９におけるステップＳ３４０：ＹＥＳのとき）に、図１０（ｃ）に破線の四角印で示される第１仮想デューティｄＡを算出せずに、駆動周期を駆動周期Ｂに保持するようにしている。そのため、第１仮想デューティｄＡと第２仮想デューティｄＢとを双方算出してから駆動周期Ａと駆動周期Ｂとのうち、いずれの駆動周期を適用すべきかを判定する第１の実施形態にかかるパージ制御と比較して、電子制御装置４０の演算負荷を低減させることができる。
【０１３４】
（５）第１の実施形態にかかるパージ制御にあっては、常に第１仮想デューティｄＡと第２仮想デューティｄＢとを算出し、現在の駆動周期が駆動周期Ｂであり且つ駆動デューティが減少中である場合には、第２仮想デューティｄＢが第２閾値Ｋ以上であることがはんていされたときに駆動周期を駆動周期Ｂに保持するようにしていた。
【０１３５】
しかし、図１０（ｄ）に示されるように駆動デューティの値が第２閾値Ｋに第２減少量ΔＢ−を加算した値未満である場合には、駆動デューティから第２減少量ΔＢ−を減算した場合の第２仮想デューティｄＢ（破線の三角印）が必ず第２閾値Ｋ未満になるため、駆動周期が必ず駆動周期Ｂから駆動周期Ａに切り替えられる。
【０１３６】
すなわち、この場合には、図１０（ｄ）に破線の三角印で示される第２仮想デューティｄＢを算出しなくても駆動デューティの大きさに基づいて駆動周期を駆動周期Ａに切り替える必要があることを判定することができる。
【０１３７】
この点、本実施形態にかかるパージ制御にあっては、駆動デューティが減少中であり且つ駆動周期が駆動周期Ｂに設定されている場合には、駆動デューティが第２閾値Ｋに第２減少量ΔＢ−を加算した値未満である旨の判定がなされたとき（図９におけるステップＳ３４０：ＮＯのとき）に、図１０（ｄ）に破線の三角印で示される第２仮想デューティｄＢを算出せずに、駆動周期を駆動周期Ｂから駆動周期Ａに切り替えるようにしている。そのため、第１仮想デューティｄＡと第２仮想デューティｄＢとを双方算出してから駆動周期Ａと駆動周期Ｂとのうち、いずれの駆動周期を適用すべきかを判定する第１の実施形態にかかるパージ制御と比較して、電子制御装置４０の演算負荷を低減させることができる。
（第３の実施形態）
以下、本願発明にかかる蒸発燃料パージ制御装置を、蒸発燃料処理機構を備える車載内燃機関の電子制御装置として具体化した第３の実施形態について図１１〜１４を参照して説明する。尚、本実施形態と第１の実施形態とは、パージ制御にかかるパージ制御弁３５の駆動デューティの算出並びに駆動周期の設定処理の内容のみが異なるものであるため、第１の実施形態と同様の構成及び同様の処理には同一の符号を付してその説明を一部省略し、以下では第１の実施形態と本実施形態との相違点を中心に説明を行う。
【０１３８】
図１１及び図１２は本実施形態のパージ制御にかかるパージ制御弁３５の駆動デューティの算出並びに駆動周期の設定処理の一連の流れを示すフローチャートである。尚、この一連の処理は、１０２．４ミリ秒の駆動周期Ａと、６５．５３６ミリ秒の駆動周期Ｂとの最大公約数である４．０９６ミリ秒毎に電子制御装置４０によって繰り返し実行される。
【０１３９】
図１１に示されるようにこの一連の処理を開始すると電子制御装置４０は、まずステップＳ４００において、今回駆動デューティは増大するか否かを判定する。
ステップＳ４００において、今回駆動デューティが増大する旨の判定がなされた場合（ステップＳ４００：ＹＥＳ）には、ステップＳ５００へと進み、駆動周期が駆動周期Ａであるか否かを判定する。
【０１４０】
ステップＳ５００において、駆動周期が駆動周期Ａである旨の判定がなされた場合（ステップＳ５００：ＹＥＳ）には、ステップＳ５１０へと進み、後述するように４．０９６ミリ秒毎に更新される仮想デューティｄＸが第１閾値Ｇ以上であるか否かを判定する。
【０１４１】
ステップＳ５１０において仮想デューティｄＸが第１閾値Ｇ以上である旨の判定がなされた場合（ステップＳ５１０：ＹＥＳ）には、ステップＳ５１１へと進み、駆動周期切替予約フラグを「ＯＮ」に設定し、メモリ４１に記憶する。そして、ステップＳ５１２へと進み、現在の駆動デューティに第２更新量ΔＢを加算した値を次回駆動デューティとしてメモリ４１に記憶し、ステップＳ５１３へと進む。
【０１４２】
尚、この第２更新量ΔＢ及び後述する第１更新量ΔＡは、１０２．４ミリ秒毎に第１更新量ΔＡずつ更新したときの駆動デューティの変化率と、６５．５３６ミリ秒毎に第２更新量ΔＢずつ更新したときの駆動デューティの変化率とが等しくなるようにその値がそれぞれ設定されている。
【０１４３】
一方、ステップ５１０において仮想デューティｄＸが第１閾値Ｇ以上ではない（ステップＳ５１０：ＮＯ）、すなわち仮想デューティｄＸが第１閾値Ｇ未満である旨の判定がなされた場合には、ステップＳ５１１及びステップＳ５１２をスキップしてそのままステップＳ５１３へと進む。
【０１４４】
ステップＳ５１３では、今回の制御周期がデューティ更新タイミングであるか否かを判定する。具体的には、ここでは、駆動周期が１０２．４ミリ秒の駆動周期Ａに設定されているときには駆動デューティを前回更新してから１０２．４ミリ秒が経過したか否かを判定し、また駆動周期が６５．５３６ミリ秒の駆動周期Ｂに設定されているときには駆動デューティを前回更新してから６５．５３６ミリ秒が経過したか否かを判定する。そして、これらの判定が肯定判定である場合に今回の制御周期がデューティ更新タイミングである旨の判定を行う。
【０１４５】
ステップＳ５１３において、今回の制御周期がデューティ更新タイミングである旨の判定がなされた場合（ステップＳ５１３：ＹＥＳ）にはステップＳ５１４へと進み、メモリ４１に記憶された次回駆動デューティを読み出し、この値を新たな駆動デューティとして設定することにより、駆動デューティを更新する。こうして駆動デューティを更新すると、ステップＳ５１５へと進み、駆動周期予約フラグが「ＯＦＦ」であるか否かを判定する。
【０１４６】
ステップＳ５１５において、駆動周期切替予約フラグが「ＯＦＦ」である旨の判定がなされた場合（ステップＳ５１５：ＹＥＳ）、すなわち駆動周期の切り替えが予約されていない場合にはステップＳ５１６へと進み、現在の駆動デューティに第１更新量ΔＡの値を加算した値を次回駆動デューティとしてメモリ４１に記憶し、ステップＳ５３０へと進む。
【０１４７】
一方で、ステップＳ５１５において、駆動周期切替予約フラグが「ＯＦＦ」ではない（ステップＳ５１５：ＮＯ）、すなわち駆動周期切替予約フラグが「ＯＮ」である旨の判定がなされた場合には、ステップＳ５１７へと進む。そして、ステップＳ５１７において、現在の駆動デューティに第２更新量ΔＢの値を加算した値を次回駆動デューティとしてメモリ４１に記憶する。そして、ステップＳ５１８へと進んで駆動周期切替予約フラグを「ＯＦＦ」にリセットするとともに、仮想デューティｄＸの値を現在の駆動デューティの値にリセットし、ステップＳ５１９へと進んで駆動周期を駆動周期Ｂに切り替える。こうして駆動周期を切り替えるとステップＳ５３０へと進む。
【０１４８】
尚、ステップＳ５１３において、今回の制御周期がデューティ更新タイミングではない旨の判定がなされた場合（ステップＳ５１３：ＮＯ）には、ステップＳ５１４〜５１９の処理をスキップし、駆動デューティを更新せずにステップＳ５３０へと進む。
【０１４９】
また、ステップＳ５００において駆動周期が駆動周期Ａではない（ステップＳ５００：ＮＯ）、すなわち駆動周期が駆動周期Ｂである旨の判定がなされた場合には、ステップＳ５２０へと進み、上述したステップＳ５１３と同様に今回の制御周期がデューティ更新タイミングであるか否かを判定する。
【０１５０】
そして、ステップＳ５２０において、今回の制御周期がデューティ更新タイミングである旨の判定がなされた場合（ステップＳ５２０：ＹＥＳ）にはステップＳ５２１へと進み、メモリ４１に記憶された次回駆動デューティを読み出し、この値を新たな駆動デューティとして設定することにより、駆動デューティを更新する。こうして駆動デューティを更新すると、ステップＳ５２２へと進み、現在の駆動デューティに第２更新量ΔＢの値を加算した値を次回駆動デューティとしてメモリ４１に記憶し、ステップＳ５３０へと進む。
【０１５１】
一方で、ステップＳ５２０において、今回の制御周期がデューティ更新タイミングではない旨の判定がなされた場合（ステップＳ５２０：ＮＯ）には、ステップＳ５２１及びステップＳ５２２の処理をスキップし、ステップＳ５３０へと進む。
【０１５２】
ステップＳ５３０では、駆動周期切替予約フラグが「ＯＦＦ」であるか否かを判定する。ステップＳ５３０において、駆動周期切替予約フラグが「ＯＦＦ」である旨の判定がなされた場合（ステップＳ５３０：ＹＥＳ）には、ステップＳ５３１へと進み、仮想デューティｄＸの値に更新量ΔＸを加算した値を新たな仮想デューティｄＸの値としてメモリ４１に記憶し、仮想デューティの値を更新する。
【０１５３】
尚、この更新量ΔＸは４．０９６ミリ秒毎に更新量ΔＸずつ更新したときの仮想デューティｄＸの変化率（単位時間あたりの稼働デューティｄＸの変化量）と、駆動デューティの変化率とが等しくなるようにその値が設定されている。
【０１５４】
こうして仮想デューティｄＸの値を更新すると電子制御装置４０はこの処理を一旦終了する。
一方、ステップＳ５３０において、駆動周期切替予約フラグが「ＯＦＦ」ではない（ステップＳ５３０：ＮＯ）、すなわち駆動周期切替予約フラグが「ＯＮ」である旨の判定がなされた場合には、ステップＳ５３１をスキップし、仮想デューティｄＸを更新せずにこの処理を一旦終了する。
【０１５５】
また、ステップＳ４００において今回駆動デューティが増大しない（ステップＳ４００：ＮＯ）、すなわち今回駆動デューティが減少する旨の判定がなされた場合には、図１２に示されるステップＳ６００へと進み、駆動周期が駆動周期Ａであるか否かを判定する。
【０１５６】
ステップＳ６００において、駆動周期が駆動周期Ａである旨の判定がなされた場合（ステップＳ６００：ＹＥＳ）には、ステップＳ６１０へと進み、今回の制御周期がデューティ更新タイミングであるか否かを判定する。
【０１５７】
そして、ステップＳ６１０において、今回の制御周期がデューティ更新タイミングである旨の判定がなされた場合（ステップＳ６１０：ＹＥＳ）にはステップＳ６１１へと進み、メモリ４１に記憶された次回駆動デューティを読み出し、この値を新たな駆動デューティとして設定することにより、駆動デューティを更新する。こうして駆動デューティを更新すると、ステップＳ６１２へと進み、現在の駆動デューティから第１更新量ΔＡの値を減算した値を次回駆動デューティとしてメモリ４１に記憶し、ステップＳ６３０へと進む。
【０１５８】
一方で、ステップＳ６１０において、今回の制御周期がデューティ更新タイミングではない旨の判定がなされた場合（ステップＳ６１０：ＮＯ）には、ステップＳ６１１及びステップＳ６１２の処理をスキップし、ステップＳ６３０へと進む。
【０１５９】
また、ステップＳ６００において、駆動周期が駆動周期Ａではない（ステップＳ６００：ＮＯ）、すなわち駆動周期が駆動周期Ｂである旨の判定がなされた場合には、ステップＳ６２０へと進み、仮想デューティｄＸが第２閾値Ｋ未満であるか否かを判定する。
【０１６０】
ステップＳ６２０において仮想デューティｄＸが第２閾値Ｋ未満である旨の判定がなされた場合（ステップＳ６２０：ＹＥＳ）には、ステップＳ６２１へと進み、駆動周期切替予約フラグを「ＯＮ」に設定し、メモリ４１に記憶する。そして、ステップＳ６２２へと進み、現在の駆動デューティから第１更新量ΔＡを減算した値を次回駆動デューティとしてメモリ４１に記憶し、ステップＳ６２３へと進む。
【０１６１】
一方、ステップ６２０において仮想デューティｄＸが第２閾値Ｋ未満ではない（ステップＳ６２０：ＮＯ）、すなわち仮想デューティｄＸが第２閾値Ｋ以上である旨の判定がなされた場合には、ステップＳ６２１及びステップＳ６２２をスキップしてそのままステップＳ６２３へと進む。
【０１６２】
ステップＳ６２３では、今回の制御周期がデューティ更新タイミングであるか否かを判定する。ステップＳ６２３において、今回の制御周期がデューティ更新タイミングである旨の判定がなされた場合（ステップＳ６２３：ＹＥＳ）にはステップＳ６２４へと進み、メモリ４１に記憶された次回駆動デューティを読み出し、この値を新たな駆動デューティとして設定することにより、駆動デューティを更新する。こうして駆動デューティを更新すると、ステップＳ６２５へと進み、駆動周期切替予約フラグが「ＯＦＦ」であるか否かを判定する。
【０１６３】
ステップＳ６２５において、駆動周期切替予約フラグが「ＯＦＦ」である旨の判定がなされた場合（ステップＳ６２５：ＹＥＳ）、すなわち駆動周期の切り替えが予約されていない場合にはステップＳ６２６へと進み、現在の駆動デューティから第２更新量ΔＢの値を減算した値を次回駆動デューティとしてメモリ４１に記憶し、ステップＳ６３０へと進む。
【０１６４】
一方で、ステップＳ６２５において、駆動周期切替予約フラグが「ＯＦＦ」ではない（ステップＳ６２５：ＮＯ）、すなわち駆動周期切替予約フラグが「ＯＮ」である旨の判定がなされた場合には、ステップＳ６２７へと進む。そして、ステップＳ６２７において、現在の駆動デューティから第１更新量ΔＡの値を減算した値を次回駆動デューティとしてメモリ４１に記憶する。そして、ステップＳ６２８へと進んで駆動周期切替予約フラグを「ＯＦＦ」にリセットするとともに、仮想デューティｄＸの値を現在の駆動デューティの値にリセットし、ステップＳ６２９へと進んで駆動周期を駆動周期Ａに切り替える。こうして駆動周期を切り替え、次回駆動デューティを更新するとステップＳ６３０へと進む。
【０１６５】
尚、ステップＳ６２３において、今回の制御周期がデューティ更新タイミングではない旨の判定がなされた場合（ステップＳ６２３：ＮＯ）には、ステップＳ６２４〜６２９の処理をスキップし、駆動デューティを更新せずにステップＳ６３０へと進む。
【０１６６】
ステップＳ６３０では、駆動周期切替予約フラグが「ＯＦＦ」であるか否かを判定する。ステップＳ６３０において、駆動周期切替予約フラグが「ＯＦＦ」である旨の判定がなされた場合（ステップＳ６３０：ＹＥＳ）には、ステップＳ６３１へと進み、仮想デューティｄＸの値から更新量ΔＸを減算した値を新たな仮想デューティｄＸの値としてメモリ４１に記憶し、仮想デューティの値を更新する。こうして仮想デューティｄＸの値を更新すると電子制御装置４０はこの処理を一旦終了する。
【０１６７】
一方、ステップＳ６３０において、駆動周期切替予約フラグが「ＯＦＦ」ではない（ステップＳ６３０：ＮＯ）、すなわち駆動周期切替予約フラグが「ＯＮ」である旨の判定がなされた場合には、ステップＳ６３１をスキップし、仮想デューティｄＸを更新せずにこの処理を一旦終了する。
【０１６８】
以下、こうした本実施形態にかかるパージ制御の作用について図１３及び図１４を参照して説明する。尚、図１３は駆動デューティを増大させているときの仮想デューティｄＸと駆動デューティとの変化態様、並びにこのときの駆動周期の切り替え態様を示すタイムチャートであり、図１４は駆動デューティを減少させているときの仮想デューティｄＸと駆動デューティの変化態様、並びにこのときの駆動周期の切り替え態様を示すタイムチャートである。
【０１６９】
図１３に示されるように駆動デューティが増大しているときには、仮想デューティｄＸが４．０９６ミリ秒毎に更新量ΔＸずつ増大される。そして、図１３に示されるように時刻ｔ１において仮想デューティｄＸが第１閾値Ｇに到達し、仮想デューティｄＸが第１閾値Ｇ以上である旨の判定がなされると（図１１におけるステップＳ５１０：ＹＥＳ）、駆動周期切替予約フラグが「ＯＮ」にされ、次回のデューティ更新タイミングにおける駆動周期の切り替えが予約される。また、これに伴って仮想デューティｄＸの更新が停止されるとともに、このときの駆動デューティの値ｄ１に第２更新量ΔＢを加算した値ｄ２が次回駆動デューティとして設定される。
【０１７０】
そして、次のデューティ更新タイミングである時刻ｔ２において、駆動デューティがこの次回駆動デューティの値ｄ２に更新されるとともに、駆動周期が駆動周期Ａから駆動周期Ｂに切り替えられる。また、これとあわせて仮想デューティｄＸの値が更新された駆動デューティの値ｄ２にリセットされるとともに、その更新が再開されるようになる。
【０１７１】
そして、時刻ｔ２において駆動周期が駆動周期Ｂに切り替えられた後の時刻ｔ３以降にあっては、次回駆動デューティが現在の駆動デューティに第２更新量ΔＢを加算した値に設定されるようになり、６５．５３６ミリ秒毎に駆動デューティが第２更新量ΔＢずつ増大されるようになる。
【０１７２】
このように本実施形態にかかるパージ制御にあっては、駆動デューティが増大している場合には、仮想デューティｄＸが第１閾値Ｇ以上になったときに駆動周期の切り替えが予約され、次の更新タイミングにおいて駆動周期が駆動周期Ａから駆動周期Ｂに切り替えられるようになる。このようにして駆動周期を切り替えることにより、図１３に一点鎖線で示されるように駆動周期の切り替えに伴う駆動デューティの変化率の変動を抑制することができるようになる。
【０１７３】
また、図１４に示されるように駆動デューティが減少しているときには、仮想デューティｄＸが４．０９６ミリ秒毎に更新量ΔＸずつ減少される。そして、図１４に示されるように時刻ｔ４において仮想デューティｄＸが第２閾値Ｋ未満になり、仮想デューティｄＸが第２閾値Ｋ未満である旨の判定がなされると（図１２におけるステップＳ６２０：ＹＥＳ）、駆動周期切替予約フラグが「ＯＮ」にされ、次回の駆動デューティ更新タイミングにおける駆動周期の切り替えが予約される。また、これに伴って仮想デューティｄＸの更新が停止されるとともに、このときの駆動デューティの値ｄ４から第１更新量ΔＡを減算した値ｄ５が次回駆動デューティとして設定される。
【０１７４】
そして、次の駆動デューティ更新タイミングである時刻ｔ５において、駆動デューティがこの次回駆動デューティの値ｄ５に更新されるとともに、駆動周期が駆動周期Ｂから駆動周期Ａに切り替えられる。また、これとあわせて仮想デューティｄＸの値が更新された駆動デューティの値ｄ５にリセットされるとともに、その更新が再開されるようになる。
【０１７５】
そして、時刻ｔ５において駆動周期が駆動周期Ａに切り替えられた後の時刻ｔ６以降にあっては、次回駆動デューティが現在の駆動デューティから第１更新量ΔＡを減算した値に設定されるようになり、１０２．４ミリ秒毎に駆動デューティが第１更新量ΔＡずつ減少されるようになる。
【０１７６】
このように本実施形態にかかるパージ制御にあっては、駆動デューティが減少している場合には、仮想デューティｄＸが第２閾値Ｋ未満になったときに駆動周期の切り替えが予約され、次の更新タイミングにおいて駆動周期が駆動周期Ｂから駆動周期Ａに切り替えられるようになる。このようにして駆動周期を切り替えることにより、図１４に一点鎖線で示されるように駆動周期の切り替えに伴う駆動デューティの変化率の変動を抑制することができるようになる。
【０１７７】
以上説明した第３の実施形態によれば、以下の効果が得られるようになる。
（６）上記第３の実施形態にかかるパージ制御にあっては、１０２．４ミリ秒の駆動周期Ａと、６５．５３６ミリ秒の駆動周期Ｂとの最大公約数に対応する４．０９６ミリ秒の周期で更新される仮想デューティｄＸが、第１閾値Ｇまたは第２閾値Ｋを越えて変化するか否かを監視するようにしている。そして、この仮想デューティｄＸが各閾値を越えて変化するときに次回駆動周期において駆動周期を切り替えることを予約する。そのため、駆動デューティよりも短い周期で更新される仮想デューティｄＸが各閾値を越えて変化したことに基づいて実際に駆動デューティが各閾値を越えて変化する前に、駆動周期を切り替える必要があることを予測し、駆動周期の切り替えを予約することができる。また、駆動周期の切り替えが予約されたことに基づいて、駆動周期を実際に切り替える前に、切り替えに伴う駆動デューティの変化率の変動を抑制することができるように切り替え時の駆動デューティの値を予め設定することができる。そのため、駆動周期の切り替えに伴う駆動デューティの変化率の変動を抑制しつつ、駆動デューティの大きさに応じて駆動周期を切り替えることができる。
【０１７８】
尚、上記第３の実施形態は、これを適宜変更した以下の形態にて実施することもできる。
・１０２．４ミリ秒の駆動周期Ａと、６５．５３６ミリ秒の駆動周期Ｂの最大公約数である４．０９６ミリ秒毎に仮想デューティｄＸを更新する構成を示したが、仮想デューティｄＸは駆動周期Ａと駆動周期Ｂの公約数に対応する周期で更新され、駆動デューティと同じ変化率で変動するようになっていればよい。そのため、１０２．４ミリ秒と６５．５３６ミリ秒の公約数である１．０２４ミリ秒毎、または２．０４８ミリ秒毎に更新される仮想デューティｄＸを参照して駆動周期を切り替える構成を採用することもできる。
【０１７９】
しかし、仮想デューティｄＸの算出周期をあまりに短くすると電子制御装置４０の演算負荷が過剰に増大することとなる。そのため、演算負荷の増大を抑制しつつ、駆動周期の切り替えタイミングを適切に判定する上では、上記第３の実施形態のように駆動周期Ａと駆動周期Ｂとの最大公約数に対応する４．０９６ミリ秒毎に更新される仮想デューティｄＸを参照する構成を採用することが望ましい。
【０１８０】
その他、上記各実施形態に共通して変更可能は要素としては次のようなものがある。
・第１の実施形態及び第２の実施形態にあっては、第１更新量として駆動デューティを増大させる際の第１増大量ΔＡ＋と駆動デューティを減少させる際の第１減少量ΔＡ−とを設定する構成を示した。これに対して駆動デューティを増大させる際の更新量の大きさと駆動デューティを減少させる際の更新量の大きさを等しくし、駆動デューティを更新する際の第１更新量を１つにすることもできる。
【０１８１】
・また、第１の実施形態及び第２の実施形態にあっては、第２更新量として駆動デューティを増大させる際の第２増大量ΔＢ＋と駆動デューティを減少させる際の第２減少量ΔＢ−とを設定する構成を示したが、上記第１更新量と同様に、第２更新量を１つにすることもできる。
【０１８２】
・第１駆動周期として１０２．４ミリ秒の駆動周期Ａを設定し、第２駆動周期として６５．５３６ミリ秒の駆動周期Ｂを設定する構成を示したが、各駆動周期の長さは適宜変更して適用することができる。
【０１８３】
・上記各実施形態にあっては、駆動周期を駆動周期Ａと駆動周期Ｂとの間で２段階に切り替える構成を示したが、駆動周期を３段階以上に切り替えるものに本願発明を適用することもできる。
【０１８４】
・また上記各実施形態にあっては、駆動周期を切り替える際の閾値として駆動周期を駆動周期Ａから駆動周期Ｂに切り替える際に参照する第１閾値Ｇと、駆動周期を駆動周期Ｂから駆動周期Ａに切り替える際に参照する第２閾値Ｋとを設定し、駆動周期の切り替え特性にヒステリシスを設ける構成を示した。これに対して駆動周期を切り替える際の閾値を一つにして駆動周期の切り替え特性にヒステリシスを設けずに本願発明を適用することもできる。
【符号の説明】
【０１８５】
１０…内燃機関、１１…燃焼室、１２…燃料噴射弁、１３…点火プラグ、１４…吸気通路、１５…排気通路、１６…サージタンク、１７…スロットル弁、２１…燃料タンク、３０…蒸発燃料処理機構、３１…チャコールキャニスタ、３２…ベーパ通路、３３…パージ通路、３４…大気開放通路、３５…パージ制御弁、４０…電子制御装置、４１…メモリ、５１…エアフロメータ、５２…空燃比センサ、５３…回転速度センサ、５４…アクセルポジションセンサ。
【図１】
2010203247.tif 000003
【図２】
2010203247.tif 000004
【図３】
2010203247.tif 000005
【図４】
2010203247.tif 000006
【図５】
2010203247.tif 000007
【図６】
2010203247.tif 000008
【図７】
2010203247.tif 000009
【図８】
2010203247.tif 000010
【図９】
2010203247.tif 000011
【図１０】
2010203247.tif 000012
【図１１】
2010203247.tif 000013
【図１２】
2010203247.tif 000014
【図１３】
2010203247.tif 000015
【図１４】
2010203247.tif 000016
【図１５】
2010203247.tif 000017