(57)【特許請求の範囲】
【請求項１】
燃料タンクから発生する蒸発燃料を吸着するキャニスタと、該キャニスタと内燃機関の吸気系との間に設けられ、前記蒸発燃料を前記吸気系のスロットル弁の下流側にパージさせるパージ通路と、該パージ通路を介して前記吸気系に供給される蒸発燃料の流量を制御するパージ制御弁と、前記内燃機関の吸気系に供給される混合気の空燃比フィードバック制御を行うために前記内燃機関の排気ガス濃度に応じて空燃比補正係数を設定する空燃比補正係数設定手段と、前記空燃比フィードバック制御中に前記空燃比補正係数の第１の学習値を算出する第１の算出手段と、前記パージされる蒸発燃料の流量を前記算出された第１の学習値に応じて増減するように前記パージ制御弁を作動させる制御手段とを備えた内燃機関の蒸発燃料制御装置において、前記内燃機関が過渡運転状態であることを判定する過渡運転状態判定手段と、前記内燃機関の過渡運転状態に対応する前記空燃比補正係数の第２の学習値を算出する第２の算出手段と、前記過渡運転状態判定手段が前記内燃機関が過渡運転状態であることを判定したときは、前記第１の学習値を前記第２の算出手段により算出された第２の学習値に設定する学習値設定手段とを備えることを特徴とする内燃機関の蒸発燃料制御装置。
【請求項２】
前記内燃機関の過渡運転状態は前記内燃機関のアイドル状態から離脱した直後の運転状態であることを特徴とする請求項１記載の内燃機関の蒸発燃料制御装置。
【請求項３】
燃料タンクから発生する蒸発燃料を吸着するキャニスタと、該キャニスタと内燃機関の吸気系との間に設けられ、前記蒸発燃料を前記吸気系のスロットル弁の下流側にパージさせるパージ通路と、該パージ通路を介して前記吸気系にパージされる蒸発燃料の流量を制御するパージ制御弁と、前記内燃機関の吸気系に供給される混合気の空燃比フィードバック制御を行うために前記内燃機関の排気ガス濃度に応じて空燃比補正係数を設定する空燃比補正係数設定手段と、前記空燃比フィードバック制御中に前記空燃比補正係数の平均値を算出する平均値算出手段と、前記算出された平均値に基づいて前記空燃比補正係数の学習値を算出する学習値算出手段と、前記パージされる蒸発燃料の流量を前記算出された学習値に応じて増減するように前記パージ制御弁を作動させる制御手段とを備えた内燃機関の蒸発燃料制御装置において、前記平均値算出手段により算出された平均値と前記学習値算出手段により算出された学習値との偏差に基づいて、前記学習値算出手段により算出された学習値を増減する増減手段を備えることを特徴とする内燃機関の蒸発燃料制御装置。
【請求項４】
前記増減手段により増減される学習値の更新値は、前記平均値算出手段により算出された平均値と前記学習値算出手段により算出された学習値との偏差が増加するほど増加するように設定されることを特徴とする請求項３記載の内燃機関の蒸発燃料制御装置。
【請求項５】
燃料タンクから発生する蒸発燃料を吸着するキャニスタと、該キャニスタと内燃機関の吸気系との間に設けられ、前記蒸発燃料を前記吸気系のスロットル弁の下流側にパージさせるパージ通路と、該パージ通路を介して前記吸気系にパージされる蒸発燃料の流量を制御するパージ制御弁と、前記内燃機関の吸気系に供給される混合気の空燃比フィードバック制御を行うために前記内燃機関の排気ガス濃度に応じて空燃比補正係数を設定する空燃比補正係数設定手段と、前記空燃比フィードバック制御中に前記空燃比補正係数の平均値を算出する平均値算出手段と、前記算出された平均値に基づいて前記空燃比補正係数の第１の学習値を算出する第１の学習値算出手段と、前記パージされる蒸発燃料の流量を前記算出された第１の学習値に応じて増減するように前記パージ制御弁を作動させる制御手段とを備えた内燃機関の蒸発燃料制御装置において、前記内燃機関が過渡運転状態であることを判定する過渡運転状態判定手段と、前記内燃機関の過渡運転状態に対応する前記空燃比補正係数の第２の学習値を算出する第２の学習値算出手段と、前記過渡運転状態判定手段が前記内燃機関が過渡運転状態であることを判定したときは、前記第１の学習値を前記第２の学習値算出手段により算出された第２の学習値に設定する学習値設定手段と、前記平均値算出手段により算出された平均値と前記第１の学習値算出手段により算出された第１の学習値との偏差に基づいて、前記第１の学習値算出手段により算出された第１の学習値を増減する増減手段を備えることを特徴とする内燃機関の蒸発燃料制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、燃料タンクで発生する蒸発燃料を一時的に貯蔵し、適時内燃機関の吸気系にパージするとともに、そのパージ流量を機関運転状態に応じて制御する蒸発燃料制御装置に関する。
【０００２】
【従来の技術】
従来、内燃機関の吸気系には、燃料タンクで発生する蒸発燃料を一時的にキャニスタに貯蔵し、内燃機関が所定運転状態にあるときスロットル弁の下流側に開口されたパージ通路を介して蒸発燃料をパージする蒸発燃料処理装置が設けられている。また、近年、内燃機関の高出力化に伴う発熱量の増大により燃料タンク内での蒸発燃料の量が増大する傾向にある。このような燃料処理装置において、空燃比制御中に、キャニスタに一時的に貯蔵されている蒸発燃料のパージ流量を空燃比補正係数ＫＯ２の変動に応じて調整し、蒸発燃料のパージの効率を向上させるようにしている。さらには、前述のような燃料処理装置において、蒸発燃料のパージ中に、該蒸発燃料のパージ流量を空燃比補正係数ＫＯ２の平均値（学習値）に応じて調整する方法も提案されている（例えば、特願平７−３４７００２号）。
【０００３】
【発明が解決しようとする課題】
しかしながら、蒸発燃料のパージ流量を空燃比補正係数ＫＯ２の平均値に応じて調整する場合は、内燃機関が過渡運転状態である時に空燃比補正係数ＫＯ２が大きく変化しても前記平均値は迅速に追従せず、蒸発燃料のパージ流量を適切に調節できず、運転性や排気ガス特性を悪化させることになる。
【０００４】
本発明はこの問題を解決するためになされたものであり、内燃機関が過渡運転状態である時に蒸発燃料のパージ流量を適切に制御し、運転性及び排気ガス特性を良好に維持することができる内燃機関の蒸発燃料制御装置を提供することを目的とする。
【０００５】
【課題を解決するための手段】
上記目的を達成するために、本発明の請求項１の内燃機関の蒸発燃料制御装置は、燃料タンクから発生する蒸発燃料を吸着するキャニスタと、該キャニスタと内燃機関の吸気系との間に設けられ、前記蒸発燃料を前記吸気系のスロットル弁の下流側にパージさせるパージ通路と、該パージ通路を介して前記吸気系に供給される蒸発燃料の流量を制御するパージ制御弁と、前記内燃機関の吸気系に供給される混合気の空燃比フィードバック制御を行うために前記内燃機関の排気ガス濃度に応じて空燃比補正係数を設定する空燃比補正係数設定手段と、前記空燃比フィードバック制御中に前記空燃比補正係数の第１の学習値を算出する第１の算出手段と、前記パージされる蒸発燃料の流量を前記算出された第１の学習値に応じて増減するように前記パージ制御弁を作動させる制御手段とを備えた内燃機関の蒸発燃料制御装置において、前記内燃機関が過渡運転状態であることを判定する過渡運転状態判定手段と、前記内燃機関の過渡運転状態に対応する前記空燃比補正係数の第２の学習値を算出する第２の算出手段と、前記過渡運転状態判定手段が前記内燃機関が過渡運転状態であることを判定したときは、前記第１の学習値を前記第２の算出手段により算出された第２の学習値に設定する学習値設定手段とを備えることを特徴とする。
【０００６】
本発明の請求項１の内燃機関の蒸発燃料制御装置によれば、制御手段が、パージされる蒸発燃料の流量を第１の算出手段により算出された第１の学習値に応じて増減するようにパージ制御弁を作動させ、過渡運転状態判定手段が内燃機関が過渡運転状態であることを判定したときは、第１の学習値を第２の算出手段により算出された第２の学習値に設定するので、内燃機関が過渡運転状態であって空燃比補正係数が大きく変化したときに、空燃比補正係数の学習値を空燃比補正係数の変化に迅速に追従させることができる。
【０００７】
本発明の請求項２の内燃機関の蒸発燃料制御装置は、請求項１の内燃機関の蒸発燃料制御装置において、前記内燃機関の過渡運転状態は前記内燃機関のアイドル状態から離脱した直後の運転状態であることを特徴とする。
【０００８】
上記目的を達成するために、本発明の請求項３の内燃機関の蒸発燃料制御装置は、燃料タンクから発生する蒸発燃料を吸着するキャニスタと、該キャニスタと内燃機関の吸気系との間に設けられ、前記蒸発燃料を前記吸気系のスロットル弁の下流側にパージさせるパージ通路と、該パージ通路を介して前記吸気系にパージされる蒸発燃料の流量を制御するパージ制御弁と、前記内燃機関の吸気系に供給される混合気の空燃比フィードバック制御を行うために前記内燃機関の排気ガス濃度に応じて空燃比補正係数を設定する空燃比補正係数設定手段と、前記空燃比フィードバック制御中に前記空燃比補正係数の平均値を算出する平均値算出手段と、前記算出された平均値に基づいて前記空燃比補正係数の学習値を算出する学習値算出手段と、前記パージされる蒸発燃料の流量を前記算出された学習値に応じて増減するように前記パージ制御弁を作動させる制御手段とを備えた内燃機関の蒸発燃料制御装置において、前記平均値算出手段により算出された平均値と前記学習値算出手段により算出された学習値との偏差に基づいて、前記学習値算出手段により算出された学習値を増減する増減手段を備えることを特徴とする。
【０００９】
本発明の請求項３の内燃機関の蒸発燃料制御装置によれば、制御手段が、パージされる蒸発燃料の流量を学習値算出手段により算出された学習値に応じて増減するようにパージ制御弁を作動させ、増減手段が、平均値算出手段により算出された平均値値と学習値算出手段により算出された学習値との偏差に基づいて、前記学習値算出手段により算出された学習値を増減するので、内燃機関が過渡運転状態のように空燃比補正係数が大きく変化したときに、空燃比補正係数の学習値を空燃比補正係数の変化に迅速に追従させることができる。
【００１０】
本発明の請求項４の内燃機関の蒸発燃料制御装置は、請求項３の内燃機関の蒸発燃料制御装置において、前記第増減手段により算出された学習値の更新値は、前記平均値算出手段により算出された平均値と前記学習値算出手段により算出された学習値との偏差が増加するほど増加するように設定されていることを特徴とする。
【００１１】
上記目的を達成するために、本発明の請求項５の内燃機関の蒸発燃料制御装置は、燃料タンクから発生する蒸発燃料を吸着するキャニスタと、該キャニスタと内燃機関の吸気系との間に設けられ、前記蒸発燃料を前記吸気系のスロットル弁の下流側にパージさせるパージ通路と、該パージ通路を介して前記吸気系にパージされる蒸発燃料の流量を制御するパージ制御弁と、前記内燃機関の吸気系に供給される混合気の空燃比フィードバック制御を行うために前記内燃機関の排気ガス濃度に応じて空燃比補正係数を設定する空燃比補正係数設定手段と、前記空燃比フィードバック制御中に前記空燃比補正係数の平均値を算出する平均値算出手段と、前記算出された平均値に基づいて前記空燃比補正係数の第１の学習値を算出する第１の学習値算出手段と、前記パージされる蒸発燃料の流量を前記算出された第１の学習値に応じて増減するように前記パージ制御弁を作動させる制御手段とを備えた内燃機関の蒸発燃料制御装置において、前記内燃機関が過渡運転状態であることを判定する過渡運転状態判定手段と、前記内燃機関の過渡運転状態に対応する前記空燃比補正係数の第２の学習値を算出する第２の学習値算出手段と、前記過渡運転状態判定手段が前記内燃機関が過渡運転状態であることを判定したときは、前記第１の学習値を前記第２の学習値算出手段により算出された第２の学習値に設定する学習値設定手段と、前記平均値算出手段により算出された平均値と前記第１の学習値算出手段により算出された第１の学習値との偏差に基づいて、前記第１の学習値算出手段により算出された第１の学習値を増減する増減手段を備えることを特徴とする。
【００１２】
【発明の実施の形態】
以下本発明の実施の形態を図面を参照して説明する。
【００１３】
図１は本発明の実施の形態に係る内燃機関及びその制御装置の全体構成図であり、符号１は例えば４気筒の内燃機関（以下「エンジン」という）を示し、エンジン１の吸気管２の途中にはスロットルボディ３が設けられ、その内部にはスロットル弁４が配されている。スロットル弁４にはスロットル弁開度(θＴＨ)センサ５が連結されており、当該スロットル弁４の開度に応じた電気信号を出力して電子コントロールユニット（以下「ＥＣＵ」という）６に供給する。
【００１４】
燃料噴射弁７はエンジン１とスロットル弁４との間で且つ吸気管２の図示しない吸気弁の少し上流側に各気筒毎に設けられており、各燃料噴射弁７は燃料ポンプ８を介して燃料タンク９に接続されていると共にＥＣＵ６に電気的に接続されて当該ＥＣＵ６からの信号により燃料噴射弁７の開弁時間が制御される。
【００１５】
スロットル弁４の直ぐ下流には管１０を介して吸気管内絶対圧（ＰＢＡ）センサ１１が設けられており、この絶対圧センサ１１により電気信号に変換された絶対圧信号は前記ＥＣＵ６に供給される。
【００１６】
また、絶対圧センサ１１の下流には吸気温（ＴＡ）センサ１２が取付けられており、吸気温ＴＡを検出して対応する電気信号を出力してＥＣＵ６に供給する。エンジン１の本体に装着されたエンジン水温（ＴＷ）センサ１３はサーミスタ等から成り、エンジン水温（冷却水温）ＴＷを検出して対応する温度信号を出力してＥＣＵ６に供給する。
【００１７】
エンジン回転数（ＮＥ）センサ１４はエンジン１の図示しないカム軸周囲又はクランク軸周囲に取り付けられ、エンジン１のクランク軸の180度回転毎に所定のクランク角度位置で信号パルス（以下「ＴＤＣ信号パルス」という）を出力し、このＴＤＣ信号パルスはＥＣＵ６に供給される。
【００１８】
排気ガス濃度検出器としてのＯ2センサ１６はエンジン１の排気管１５に装着されており、排気ガス中の酸素濃度を検出し、その濃度に応じた信号を出力しＥＣＵ６に供給する。ＥＣＵ６には、さらに大気圧ＰＡを検出する大気圧センサ３３及びＥＣＵ６やパージ制御弁２４等に電源を供給するバッテリ（図示せず）の電圧ＶＢを検出する電圧センサ３４が接続されており、それらの検出信号がＥＣＵ６に供給される。
【００１９】
密閉された燃料タンク９の上部は通路２０ａを介してキャニスタ２１に連通し、キャニスタ２１はパージ通路２３を介して吸気管２のスロットル弁４の下流側に連通している。キャニスタ２１は、燃料タンク９内で発生する蒸発燃料を吸着する吸着剤２２を内蔵し、外気取込口２１ａを有する。通路２０ａの途中には、正圧バルブ及び負圧バルブから成る２ウェイバルブ２０が配設され、パージ通路２３の途中にはデューティ制御型の電磁弁であるパージ制御弁２４が配設されている。パージ制御弁２４のソレノイドはＥＣＵ６に接続され、パージ制御弁２４はＥＣＵ６からの信号に応じて制御されて開弁時間の時間的割合（開弁デューティ）を変化させる。通路２０ａ、２ウェイバルブ２０、キャニスタ２１、パージ通路２３及びパージ制御弁２４によって蒸発燃料排出抑止装置が構成される。
【００２０】
この蒸発燃料排出抑止装置によれば、燃料タンク９内で発生した蒸発燃料は、所定の設定圧に達すると２ウェイバルブ２０の正圧バルブを押し開き、キャニスタ２１に流入し、キャニスタ２１内の吸着剤２２によって吸着され貯蔵される。パージ制御弁２４はＥＣＵ６からのデューティ制御信号によって開弁／閉弁作動し、その開弁時間中においてはキャニスタ２１に一時貯えられていた蒸発燃料は、吸気管２内の負圧により、キャニスタ２１に設けられた外気取込口２１ａから吸入された外気と共にパージ制御弁２４を経て吸気管２へ吸引され、各気筒へ送られる。また外気などで燃料タンク９が冷却されて燃料タンク内の負圧が増すと、２ウェイバルブ２０の負圧バルブが開弁し、キャニスタ２１に一時貯えられていた蒸発燃料は燃料タンク９へ戻される。このようにして燃料タンク９内に発生した燃料蒸気が大気に放出されることを抑止している。
【００２１】
吸気管２のスロットル弁４の下流側は、排気還流路３０を介して排気管１５に接続されており、排気還流路３０の途中には排気還流量を制御する排気還流弁（ＥＧＲ弁）３１が設けられている。
【００２２】
この排気還流弁３１はソレノイドを有する電磁弁であり、ソレノイドはＥＣＵ６に接続され、その弁開度がＥＣＵ６からの制御信号によって変化させることができるように構成されている。排気還流弁３１には、その弁開度を検出するリフトセンサ３２が設けられており、その検出信号はＥＣＵ６に供給される。
【００２３】
ＥＣＵ６は上述の各種センサからのエンジンパラメータ信号等に基づいてエンジン運転状態を判別し、吸気管内絶対圧ＰＢＡとエンジン回転数ＮＥとに応じて設定される排気還流弁３１の弁開度指令値ＬＣＭＤとリフトセンサ３２によって検出された排気還流弁３１の実弁開度値ＬＡＣＴとの偏差を零にするように排気還流弁３１のソレノイドに制御信号を供給する。
【００２４】
ＥＣＵ６は各種センサからの入力信号波形を整形し、電圧レベルを所定レベルに修正し、アナログ信号値をデジタル信号値に変換する等の機能を有する入力回路、中央演算処理回路（以下「ＣＰＵ」という）、ＣＰＵで実行される各種演算プログラム及び演算結果等を記憶する記憶手段、前記燃料噴射弁７、パージ制御弁２４及び排気還流弁３１に駆動信号を供給する出力回路等から構成される。
【００２５】
ＣＰＵは上述の各種エンジンパラメータ信号に基づいて、Ｏ2センサ１６による理論空燃比へのフィードバック制御運転領域やオープンループ制御運転領域等の種々のエンジン運転状態を判別するとともに、エンジン運転状態に応じ、燃料噴射弁７の燃料噴射時間ＴＯＵＴ、パージ制御弁２４の開弁デューティ及び排気還流弁の弁開度指令値ＬＣＭＤを演算する。
【００２６】
燃料噴射弁７による燃料噴射はＴＤＣ信号パルスに同期して行われ、燃料噴射時間ＴＯＵＴは次式（１）により算出される。
【００２７】
ＴＯＵＴ＝ＴＩ×ＫＯ２×ＫＰＡ×ＫＥＧＲ×ＫＥＶＡＰ×Ｋ１＋Ｋ２
…（１）
ここでＴＩは基本燃料量、具体的にはエンジン回転数ＮＥと吸気管内絶対圧ＰＢＡとに応じて決定される基本燃料噴射時間であり、このＴＩ値を決定するためのＴＩマップが記憶手段に記憶されている。
【００２８】
ＫＯ２は、空燃比補正係数であり、空燃比フィードバック制御中はＯ2センサ１６の出力値に応じて設定され、オープンループ制御中はエンジン運転状態に応じた所定値に設定される。
【００２９】
ＫＰＡは、検出した大気圧ＰＡに応じて設定される大気圧補正係数、ＫＥＧＲは、排気還流実行中に排気還流量に応じて設定されるＥＧＲ補正係数である。
【００３０】
ＫＥＶＡＰは、パージによる蒸発燃料の影響を補償するためのエバポ補正係数であり、パージを行わないときは１．０に設定され、パージ実行時は０〜１．０の間の値に設定される。この係数ＫＥＶＡＰの値が小さいほど、パージの影響が大きいことを示す。
【００３１】
Ｋ１及びＫ２は夫々各種エンジンパラメータ信号に応じて演算される他の補正係数及び補正変数であり、エンジン運転状態に応じた燃費特性、エンジン加速特性等諸特性の最適化が図られるような値に設定される。
【００３２】
ＥＣＵ６のＣＰＵは上述のようにして算出した結果に基づいて、燃料噴射弁７、パージ制御弁２４及び排気還流弁３１を駆動する信号を、出力回路を介して出力する。
【００３３】
以下、図２を参照しながら、パージ制御弁２４の開弁デューテイＤＯＵＴＰＧを算出するパージ制御処理を説明する。ここに、図２は、パージ制御弁２４の開弁デューテイＤＯＵＴＰＧを算出するパージ制御処理のメインルーチンのフローチャートである。本処理は、所定時間（例えば８０ｍｓｅｃ）毎にＥＣＵ６のＣＰＵで実行される。
【００３４】
まず、ステップＳ１では、パージの実行が許可されていることを「１」で示すパージ許可フラグＦＰＧＡＣＴが「１」か否かを判別し、パージ許可フラグＦＰＧＡＣＴが「０」であってパージの実行が許可されていないときは、積算パージ流量ＳＱＰＧを「０」に設定して（ステップＳ５）、ステップＳ１０に進む。ここで、積算パージ流量ＳＱＰＧは、パージ開始後の流量を積算して算出されるパラメータであり、具体的には後述する図４の処理で算出される。
【００３５】
ステップＳ１で、パージ許可フラグＦＰＧＡＣＴが「１」であってパージの実行が許可されているときは、吸気管内絶対圧（ＰＢＡ）センサ１１が異常であるか否かを判別し（ステップＳ６）、異常でなければステップＳ８に進む。また異常であるときは、スロットル弁開度θＴＨが所定開度θＴＨＦＳＰＣＳ（例えば２０度）より小さいか否かを判別し（ステップＳ７）、スロットル弁開度θＴＨが所定開度θＴＨＦＳＰＣＳ以上であるときは、ステップＳ８に進み、スロットル弁開度θＴＨが所定値θＴＨＦＳＰＣＳより小さいときは、パージを停止すべくステップＳ１０に進む。
【００３６】
上記ステップＳ６及びＳ７により、吸気管内絶対圧センサ１１が異常である場合において、スロットル弁開度θＴＨが所定開度θＴＨＦＳＰＣＳより小さいときは、パージを停止するようにしたので、スロットル弁開度θＴＨに応じた吸気管内絶対圧ＰＢＡの代替値を用いてパージ流量を制御することによる空燃比のオーバリッチ化を防止し、安定したエンジン運転状態を維持することができる。
【００３７】
ステップＳ８では、フュエルカット実行中であることを「１」で示すフュエルカットフラグＦＦＣが「１」であるか否かを判別し、フラグＦＦＣが「１」であってフュエルカット中のときは、パージを停止すべくステップＳ１０に進み、フラグＦＦＣが「０」であってフュエルカット中でないときは、ステップＳ９に進む。
【００３８】
ステップＳ１０では、開弁デューテイＤＯＵＴＰＧを０％に設定し、次いでパージ流量の過渡補正係数ＫＰＧＴＲを初期値ＫＰＧＴＲＳＴに設定して（ステップＳ１１）、ステップＳ１２に進む。
【００３９】
ステップＳ９では、後述する図３のＤＯＵＴＰＧ算出処理を実行し、開弁デューテイＤＯＵＴＰＧを算出して、ステップＳ１２に進む。
【００４０】
ステップＳ１２からＳ１５は、開弁デューテイＤＯＵＴＰＧのリミット処理であり、ステップＳ９で算出したＤＯＵＴＰＧ値が０％より小さいか否か及び１００％より大きいか否かを判別し（ステップＳ１２，Ｓ１３）、ＤＯＵＴＰＧ値が０％より小さいときは、ＤＯＵＴＰＧ値を０％とし（ステップＳ１５）、またＤＯＵＴＰＧ値が１００％より大きいときは、ＤＯＵＴＰＧ値を１００％として（ステップＳ１４）、本処理を終了し、ＤＯＵＴＰＧ値が０％以上かつ１００％以下であるときは、直ちに本処理を終了する。
【００４１】
以下、図３を参照しながら、図２のステップＳ９におけるＤＯＵＴＰＧ算出処理を説明する。ここに、図３は、図２のステップＳ９におけるＤＯＵＴＰＧ算出処理のフローチャートである。
【００４２】
ステップＳ２１では、後述する図４の処理により目標流量ＱＰＧを算出する。次いで目標流量ＱＰＧに応じて図示しない所定のＤＯＵＴＰＧテーブルを検索し、開弁デューテイＤＯＵＴＰＧを算出する（ステップＳ２２）。前記ＤＯＵＴＰＧテーブルにおいては、目標流量ＱＰＧが増加するほど、開弁デューティＤＯＵＴＰＧが増加するように設定されている。
【００４３】
続くステップＳ２３では、バッテリ電圧ＶＢに応じて図示しない所定のバッテリ電圧補正項ＤＤＰＧＶＢテーブルを検索し、バッテリ電圧補正項ＤＤＰＧＶＢを算出する。前記バッテリ電圧補正項ＤＤＰＧＶＢテーブルにおいては、バッテリ電圧ＶＢが増加するほど、バッテリ電圧補正項ＤＤＰＧＶＢが減少するように設定されている。次いで、ステップＳ２２で算出した開弁デューテイＤＯＵＴＰＧを当該開弁デューティＤＯＵＴＰＧにバッテリ電圧補正項ＤＤＰＧＶＢを加算することにより補正し（ステップＳ２４）、本処理を終了する。
【００４４】
以下、図４を参照しながら、図３のステップＳ２１における目標流量算出処理を説明する。図４は、図３のステップＳ２１における目標流量算出処理のフローチャートである。
【００４５】
まず、ステップＳ３０で、後述する図６及び図７の処理により空燃比フィードバック制御実行中に算出される空燃比補正係数ＫＯ２に基づき学習値ＫＯ２ＰＧ（第１の学習値）を算出する。
【００４６】
次いで、ステップＳ３１では、下記式（２）により偏差量ＤＫＯ２ＰＧを算出する。
【００４７】
ＤＫＯ２ＰＧ＝ＫＯ２ＰＧ−Ｏ２ＬＭＴＬ      …（２）
ここで、Ｏ２ＬＭＴＬは空燃比補正係数ＫＯ２値の下限リミット値である。したがって、この偏差量ＤＫＯ２ＰＧが小さいときは、ＫＯ２値が下限リミット値Ｏ２ＬＭＴＬに近く、パージの影響が大きいことを示す。
【００４８】
続くステップＳ３２では、偏差量ＤＫＯ２ＰＧが０以下か否かを判別し、ＤＫＯ２ＰＧが０以下であるときは、ＤＫＯ２ＰＧを０として（ステップＳ３３）、またＤＫＯ２ＰＧが０を越えるときは、直ちにステップＳ３４に進む。
【００４９】
ステップＳ３４では、偏差量ＤＫＯ２ＰＧに応じて図５に示すＫＰＧＫＯ２テーブルを検索し、ＫＯ２レベル補正係数ＫＰＧＫＯ２を算出する。ＫＰＧＫＯ２テーブルは、ＤＫＯ２ＰＧ値が所定値ＤＫＯ２ＰＧ０以上のとき、ＫＰＧＫＯ２＝１．０、所定値ＤＫＯ２ＰＧ０より小さい範囲で、ＤＫＯ２ＰＧ値が低下するほどＫＰＧＫＯ２値が小さくなるように、すなわちパージの影響が大きいときはその影響度に応じてパージ流量を減少させるように設定されている。
【００５０】
続くステップＳ３７では、下記式（３）により基本目標流量ＱＰＧＢＡＳＥを算出する。
【００５１】
ＱＰＧＢＡＳＥ＝ＫＱＰＧ×ＴＩ×ＫＰＡ×ＫＥＧＲ×ＮＥ  …（３）
ここで、ＴＩ，ＫＰＡ及びＫＥＧＲは、前記式（１）の基本燃料量、大気圧補正係数及びＥＧＲ補正係数であり、ＫＱＰＧは、燃料量を目標流量に変換するための所定の係数である。したがって、基本目標流量ＱＰＧＢＡＳＥは、単位時間当たりにエンジンに供給される燃料量に比例した値となる。
【００５２】
続くステップＳ３８では、吸気温ＴＡに応じて図示しない所定のＫＰＧＴＡテーブルを検索し、吸気温補正係数ＫＰＧＴＡを算出する。ＫＰＧＴＡテーブルは、吸気温ＴＡが上昇するほどＫＰＧＴＡ値が減少するように設定されている。次いで、積算パージ流量ＳＱＰＧに応じて図示しないＫＳＱＰＧテーブルを検索し、積算流量補正係数ＫＳＱＰＧを算出する（ステップＳ３９）。ＫＳＱＰＧテーブルは、積算パージ流量ＳＱＰＧが増加するほどＫＳＱＰＧ値が増加する傾向に設定されている。
【００５３】
続くステップＳ４０では、スロットル弁開度θＴＨの変化量ＤＴＨ（＝θＴＨ（今回値）−θＴＨ（前回値））が負の所定変化量ＤＴＨＰＣＳＭ（例えば−１．０度）より小さいか否かを判別し、変化量ＤＴＨが負の所定の変化量ＤＴＨＰＣＳＭを下回るときは、エンジンが減速過渡状態にあると判定し、過渡補正係数ＫＰＧＴＲを１．０より小さい所定値ＫＰＧＴＲＤＥＣ（例えば０．２）に設定して（ステップＳ４１）、ステップＳ４５に進む。
【００５４】
ステップＳ４０の答が否定（ＮＯ）、すなわち変化量ＤＴＨが負の所定変化量ＤＴＨＰＣＳＭ以上であるときは、過渡補正係数ＫＰＧＴＲに所定加算項ＤＫＰＧＴＲを加算して増加させ（ステップＳ４２）、ＫＰＧＴＲ値が１．０を越えたか否かを判別する（ステップＳ４３）。そして、ＫＰＧＴＲ値が１．０を越えるときは、ＫＰＧＴＲ値を１．０として（ステップＳ４４）、またＫＰＧＴＲ値が１．０以下であるときは直ちに、ステップＳ４５に進む。
【００５５】
ステップＳ４５では、上記した各補正係数を下記式（４）に適用して基本目標流量ＱＰＧＢＡＳＥの全体補正係数ＫＰＧＴＯＴＡＬを算出する。
【００５６】
0003880655.tif 000002
次いで、この全体補正係数ＫＰＧＴＯＴＡＬを基本目標流量ＱＰＧＢＡＳＥに乗算して、目標流量ＱＰＧを算出し（ステップＳ４６）、算出したＱＰＧ値が所定値ＤＳＱＰＧより小さいか否かを判別する（ステップＳ４７）。そして、目標流量ＱＰＧが所定値ＤＳＱＰＧ以上であるときは、下記式（５）により、また目標流量ＱＰＧが所定値ＤＳＱＰＧを下回るときは、下記式（６）により、積算パージ流量ＳＱＰＧを算出して（ステップＳ４８、Ｓ４９）、本処理を終了する。
【００５７】
ＳＱＰＧ＝ＳＱＰＧ（ｎ−１）＋ＱＰＧ          …（５）
ＳＱＰＧ＝ＳＱＰＧ（ｎ−１）＋ＤＳＱＰＧ      …（６）
ここで、（ｎ−１）は前回値を示すために付したものであり、所定値ＤＳＱＰＧは、積算パージ流量ＳＱＰＧの演算処理における最小単位（ＬＳＢ）に対応する値（例えば１Ｌ／ｍｉｎ）とする。
【００５８】
以上のように、本処理によれば、エンジン１が減速過渡状態であると判定したときは、過渡補正係数ＫＰＧＴＲを例えば０．２程度の小さな値の所定値ＫＰＧＴＲＤＥＣに設定するようにした（ステップＳ４０、Ｓ４１）ので、これにより目標流量ＱＰＧが減少方向に補正され、減速過渡状態における空燃比のオーバリッチ化を防止して、良好な排気ガス特性を維持することができる。また、エンジン１が減速過渡状態であると判別した後は、ステップＳ４２〜Ｓ４４により、徐々に目標流量ＱＰＧを増加させるようにしたので、空燃比の急激な変動を防止することができる。
【００５９】
以下、図６及び図７を参照しながら、図４のステップＳ３０における空燃比補正係数ＫＯ２に基づく学習値ＫＯ２ＰＧの算出処理を説明する。ここに、図６及び図７は、空燃比補正係数ＫＯ２に基づく学習値ＫＯ２ＰＧの算出処理のフローチャートである。本処理は、所定時間（例えば１０ｍｓｅｃ）毎のＥＣＵ６のＣＰＵで実行される。
【００６０】
まず、ステップＳ５１では、パージの実行が許可されていることを「１」で示すパージ許可フラグＦＰＧＡＣＴが「０」であるか否かを判別する。ステップＳ５１で、パージ許可フラグＦＰＧＡＣＴが「１」であってパージが実行されている場合は、ステップＳ５２に進み、エンジン水温ＴＷが所定値（例えば５０℃）より低いことを「０」で示すフラグＦＴＷ０２が「０」であるか否かを判別する。ステップＳ５２で、フラグＦＴＷ０２が「１」であってエンジン水温ＴＷが所定値より高い場合は、ステップＳ５３に進み、エンジン１がアイドル状態であるか否かを判別する。ステップＳ５３で、エンジン１がアイドル状態である場合は、ステップＳ５４に進み、空燃比フィードバック制御実行中であることを「１」で示すフラグＦＯ２ＦＢが「１」であるか否かを判別する。ステップＳ５４で、フラグＦＯ２ＦＢが「１」であって空燃比制御フィードバック中である場合は、ステップＳ５５で、下記式（７）により空燃比補正係数ＫＯ２に基づいて平均値ＫＡＶＰＧを算出し、その後ステップＳ５９に進む。
【００６１】
ＫＡＶＰＧ＝Ｃ×ＫＯ２＋（１−Ｃ）×ＫＡＶＰＧ      …（７）
ここで、Ｃは０から１の間の値に設定される定数、ＫＯ２は空燃比フィードバック制御実行中の比例項発生時（Ｏ２センサ出力反転直後）のＫＯ２値、右辺のＫＡＶＰＧは前回算出値である。
【００６２】
また、ステップＳ５３で、エンジン１がアイドル状態でない場合は、ステップＳ５８に進み、前回エンジン１がアイドル状態であるか否かを判別する。ステップＳ５８で、前回エンジン１がアイドル状態でない場合は、エンジン１がアイドル回転数以上で定常状態にあるとして前述のステップＳ５４に進み、前記ステップＳ５４，Ｓ５５を実行する。
【００６３】
一方、ステップＳ５１で、フラグＦＰＧＡＣＴが「０」であってパージが実行されていない場合、ステップＳ５２で、フラグＦＴＷ０２が「０」であってエンジン水温ＴＷが所定値より低い場合、又はステップＳ５８で、前回エンジン１がアイドル状態であり、今回エンジン１がアイドル状態でない場合は、ステップＳ５６で、下記式（８）により学習値ＫＯ２ＰＧを算出する。
【００６４】
ＫＯ２ＰＧ＝Ｍｉｎ（ＫＯ２ＰＧ  ＆  ＫＲＥＦＰ）    …（８）
ここで、ＫＲＥＦＰは、具体的には、後述する図８の処理で算出される、エンジン１の過渡運転時に対応する空燃比補正係数ＫＯ２の第２の平均値である。式（８）の右辺は、前回の学習値ＫＯ２ＰＧと、第２の平均値ＫＲＥＦＰ値との小さい方を意味する。すなわち、第２の平均値ＫＲＥＦＰ値が前回の学習値ＫＯ２ＰＧより小さい場合にＫＲＥＦＰ値が選択される。
【００６５】
次いで、ステップＳ５７で、平均値ＫＡＶＰＧを空燃比補正係数ＫＯ２に設定し、ステップＳ５９に進む。
【００６６】
ステップＳ５１からＳ５３、及びステップＳ５８の判別により、エンジン１がアイドル状態の場合、又はエンジン１がアイドル回転数以上の定常状態の時には、ステップＳ５５で式（７）により空燃比補正係数ＫＯ２に基づき平均値ＫＡＶＰＧを算出する一方、エンジン１がアイドル状態から離脱した直後に（ステップＳ５３でＮＯ且つステップＳ５８でＹＥＳ）、エンジン１が過渡運転状態になったと判別し、ステップＳ５６で式（８）により学習値ＫＯ２ＰＧを算出し、続いて、ステップＳ５７で、平均値ＫＡＶＰＧを空燃比補正係数ＫＯ２に設定する。
【００６７】
続くステップＳ５９では、前記過渡補正係数ＫＰＧＴＲが１．０以上であるか否かを判別する。ステップＳ５９で、過渡補正係数ＫＰＧＴＲが１．０を下回れば、ステップＳ６０からステップＳ６３において、平均値ＫＡＶＰＧに対して下限値ＫＯ２ＰＧＬＭＬと上限値ＫＯ２ＰＧＬＭＨとの間でリミット処理を実行する。すなわち、ステップＳ５５又はステップＳ５７で算出した平均値ＫＡＶＰＧが下限値ＫＯ２ＰＧＬＭＬより小さいか、及びその上限値ＫＯ２ＰＧＬＭＨより大きいかを判別し（ステップＳ６０、Ｓ６１）、平均値ＫＡＶＰＧが下限値ＫＯ２ＰＧＬＭＬより小さいときは、平均値ＫＡＶＰＧを下限値ＫＯ２ＰＧＬＭＬとし（ステップＳ６３）、平均値ＫＡＶＰＧが上限値ＫＯ２ＰＧＬＭＨより大きいときは、平均値ＫＡＶＰＧをその上限値ＫＯ２ＰＧＬＭＨとして（ステップＳ６２）、ステップＳ６４に進む。ステップＳ５９で、過渡補正係数ＫＰＧＴＲが１．０以上であれば、ステップＳ６０からステップＳ６３をスキップして、ステップＳ６４に進む。
【００６８】
次いで、所定時間（例えば２ｓｅｃ）に設定されたタイマｔｍＫＡＶＰＧの値が０であるか否かを判別する（ステップＳ６４）。ステップＳ６４でタイマｔｍＫＡＶＰＧの値が０でない場合は、所定時間が経過していないとして直ちに本処理を終了する。ステップＳ６４でタイマｔｍＫＡＶＰＧの設定値が０である場合は、設定時間が経過したとしてステップＳ６５に進み、平均値ＫＡＶＰＧと前回の学習値ＫＯ２ＰＧとの偏差（ＫＡＶＰＧ−ＫＯ２ＰＧ）に応じて、図８の更新量ＤＫＯ２ＰＣＳテーブルを検索し、更新量ＤＫＯ２ＰＣＳを算出する。ここで、図８は、平均値ＫＡＶＰＧと前回の学習値ＫＯ２ＰＧとの偏差に応じた更新量ＤＫＯ２ＰＣＳのテーブル値を示すグラフである。
【００６９】
前記更新量ＤＫＯ２ＰＣＳテーブルにおいては、偏差（ＫＡＶＰＧ−ＫＯ２ＰＧ）が負の所定値Ｖ１以下では、更新量ＤＫＯ２ＰＣＳが負の一定値ＤＫＯ２ＰＣＳ１を執り、（ＫＡＶＰＧ−ＫＯ２ＰＧ）値が正の所定値Ｖ２以上では、更新量ＤＫＯ２ＰＣＳが正の一定値ＤＫＯ２ＰＣＳ２を執り、（ＫＡＶＰＧ−ＫＯ２ＰＧ）値が負の所定値Ｖ１から正の所定値Ｖ２の間では、更新量ＤＫＯ２ＰＣＳが増加するように設定されている。
【００７０】
図８の更新量ＤＫＯ２ＰＣＳテーブルにおいて、（ＫＡＶＰＧ−ＫＯ２ＰＧ）値が±０の近傍で、更新量ＤＫＯ２ＰＣＳが±０になるように設定し、不感帯を設けてもよい（図８の破線）。
【００７１】
図７に戻って、ステップＳ６６では、下記式（９）により、学習値ＫＯ２ＰＧを算出する。
【００７２】
ＫＯ２ＰＧ＝ＫＯ２ＰＧ＋ＤＫＯ２ＰＣＳ          …（９）
ここで、ＤＫＯ２ＰＣＳは前記ステップＳ６５で算出される更新量であり、右辺のＫＯ２ＰＧは前回算出値である。
【００７３】
続くステップＳ６７からステップＳ７０において、学習値ＫＯ２ＰＧに対して下限値ＫＯ２ＰＧＬＭＬと上限値ＫＯ２ＰＧＬＭＨとの間でリミット処理を実行する。すなわち、ステップＳ６６で算出した学習値ＫＯ２ＰＧが下限値ＫＯ２ＰＧＬＭＬより小さいか、及び上限値ＫＯ２ＰＧＬＭＨより大きいか否かを判別し（ステップＳ６７、Ｓ６８）、学習値ＫＯ２ＰＧが下限値ＫＯ２ＰＧＬＭＬより小さいときは、学習値ＫＯ２ＰＧを下限値ＫＯ２ＰＧＬＭＬとし（ステップＳ７０）、学習値ＫＯ２ＰＧが上限値ＫＯ２ＰＧＬＭＨより大きいときは、学習値ＫＯ２ＰＧを上限値ＫＯ２ＰＧＬＭＨとする（ステップＳ６９）。次いで、ステップＳ７１で、タイマｔｍＫＡＶＰＧを所定時間に設定して、本処理を終了する。ここで、タイマｔｍＫＡＶＰＧはステップＳ６５からＳ７０の処理を所定時間に１回行うように該処理を間引くために設けられている。
【００７４】
以下、図９を参照しながら、図６ステップＳ５６において、式（８）により学習値ＫＯ２ＰＧの算出で使用する、エンジン１の過渡運転状態時における空燃比補正係数ＫＯ２に基づく第２の平均値ＫＲＥＦＰの算出処理について説明する。ここに、図９は、エンジン１の過渡運転状態時における空燃比補正係数ＫＯ２に基づく第２の平均値ＫＲＥＦＰの算出処理のフローチャートである。本処理は、所定時間（例えば１０ｍｓｅｃ）毎にＥＣＵ１のＣＰＵで実行される。
【００７５】
まず、ステップＳ８１で、フラグＦ０２ＦＢが「１」でフィードバック実行中であるか否か、ステップＳ８２でエンジン１がアイドル状態でないか否か、ステップＳ８３でフラグＦＰＦＢが「０」でリッチフィードバック実行中でないか否か、ステップＳ８４で過渡補正係数ＫＰＧＴＲが１以上か否かをそれぞれ判別する。上記判別の結果がすべて肯定（ＹＥＳ）の場合はステップＳ８５に進み、所定時間（例えば１５ｓｅｃ）に設定されたタイマＴＭＲＥＦの値が０であるか否かを判別し、タイマＴＭＲＥＦが所定時間を計時する間はステップＳ８６に進み、下記式（１０）により、エンジン１の過渡運転時における空燃比補正係数ＫＯ２に基づく第２の平均値ＫＲＥＦＰを算出し、本処理を終了する。
【００７６】
ＫＲＥＦＰ＝Ｃ×ＫＯ２＋（１−Ｃ）×ＫＲＥＦＰ      …（１０）
ここで、Ｃは０から１の間に設定される定数、ＫＯ２は空燃比補正係数ＫＯ２、右辺のＫＲＥＦＰは前回算出値である。
【００７７】
ステップＳ８５で、タイマＴＭＲＥＦの値が０である場合は、所定時間が経過したとして直ちに本処理を終了する。
【００７８】
一方、上記ステップＳ８１からＳ８５のいずれかの結果が否定の場合は、ステップＳ８７に進み、タイマＴＭＲＥＦＰを所定時間に設定し、本処理を終了する。
【００７９】
本発明の実施の形態によれば、エンジン１がアイドル状態から離脱した直後（ステップＳ５３→Ｓ５８→Ｓ５６）、エンジン１の過渡運転状態になったと判定し、学習値ＫＯ２ＰＧを、エンジン１の過渡運転状態に対応する第２の平均値ＫＲＥＦＰに設定し（ステップＳ５６）、また、平均値ＫＡＶＰＧと前回の学習値ＫＯ２ＰＧとの偏差に応じて更新量ＤＫＯ２ＰＣＳを算出し（ステップＳ６５）、学習値ＫＯ２ＰＧを当該学習値ＫＯ２ＰＧに更新量ＤＫＯ２ＰＣＳを加えることにより補正する（ステップＳ６６）ので、エンジン１が過渡運転状態であって空燃比補正係数ＫＯ２が大きく変化したときに、学習値ＫＯ２ＰＧを空燃比補正係数ＫＯ２の変化に迅速に追従させることができる。その結果、エンジン１の過渡運転時に目標パージ流量ＱＰＧを適切に制御し、運転性及び排気ガス特性を良好に維持することができる。
【００８０】
【発明の効果】
以上詳述したように、本発明の請求項１の内燃機関の蒸発燃料制御装置によれば、制御手段が、パージされる蒸発燃料の流量を第１の算出手段により算出された第１の学習値に応じて増減するようにパージ制御弁を作動させ、過渡運転状態判定手段が内燃機関が過渡運転状態であることを判定したときは、第１の学習値を第２の算出手段により算出された第２の学習値に設定するので、内燃機関が過渡運転状態であって空燃比補正係数が大きく変化したときに、空燃比補正係数の学習値を空燃比補正係数の変化に迅速に追従させることができる。
【００８１】
本発明の請求項３の内燃機関の蒸発燃料制御装置によれば、制御手段が、パージされる蒸発燃料の流量を学習値算出手段により算出された学習値に応じて増減するようにパージ制御弁を作動させ、増減手段が、平均値算出手段により算出された平均値値と学習値算出手段により算出された学習値との偏差に基づいて、前記学習値算出手段により算出された学習値を増減するので、内燃機関が過渡運転状態のように空燃比補正係数が大きく変化したときに、空燃比補正係数の学習値を空燃比補正係数の変化に迅速に追従させることができる。
【図面の簡単な説明】
【図１】本発明の実施の形態にかかる内燃機関及びその制御装置の構成を示す図である。
【図２】パージ制御のメインルーチンのフローチャートである。
【図３】パージ制御弁の開弁デューティを算出する処理のフローチャートである。
【図４】目標流量算出処理のフローチャートである。
【図５】図３の処理で使用するテーブルを示す図である。
【図６】空燃比補正係数ＫＯ２ＰＧの算出処理のフローチャートである。
【図７】空燃比補正係数ＫＯ２ＰＧの算出処理のフローチャートであって、図６に続くフローチャートである。
【図８】平均値ＫＡＶＰＧと前回の学習値ＫＯ２ＰＧとの偏差に応じた更新量ＤＫＯ２ＰＣＳのテーブル値を示すグラフである。
【図９】エンジン１の過渡運転時における空燃比補正係数ＫＯ２に基づく第２の平均値ＫＲＥＦＰの算出処理のフローチャートである。
【符号の説明】
１  内燃機関
２  吸気管
４  スロットル弁
５  スロットル弁開度センサ
６  電子コントロールユニット
９  燃料タンク
２１  キャニスタ
２３  パージ通路
２４  パージ制御弁
【図１】
0003880655.tif 000003
【図２】
0003880655.tif 000004
【図３】
0003880655.tif 000005
【図４】
0003880655.tif 000006
【図５】
0003880655.tif 000007
【図６】
0003880655.tif 000008
【図７】
0003880655.tif 000009
【図８】
0003880655.tif 000010
【図９】
0003880655.tif 000011