JP4405049B2 - Fuel supply control device for internal combustion engine - Google Patents
Fuel supply control device for internal combustion engine Download PDFInfo
- Publication number
- JP4405049B2 JP4405049B2 JP2000211827A JP2000211827A JP4405049B2 JP 4405049 B2 JP4405049 B2 JP 4405049B2 JP 2000211827 A JP2000211827 A JP 2000211827A JP 2000211827 A JP2000211827 A JP 2000211827A JP 4405049 B2 JP4405049 B2 JP 4405049B2
- Authority
- JP
- Japan
- Prior art keywords
- purge
- value
- air
- fuel ratio
- fuel
- 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.)
- Expired - Fee Related
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)
- Combined Controls Of Internal Combustion Engines (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、空燃比の学習制御を行う内燃機関の燃料供給量制御装置に関する。
【0002】
【従来の技術】
空燃比補正係数の平均値を算出して空燃比フィードバック制御時に前記平均値を用いて内燃エンジンに供給される混合気の空燃比を制御するものにおいて、前記平均値の算出をキャニスタ内に存在する気化燃料が所定値以下のときに行うことが特公平7−11701号に開示されている。
また、パージ開始初期には高濃度の蒸発燃料がエンジンに供給されることにより排気特性が悪化することを防止するために、パージ開始時にパージ流量を通常時のパージ流量より減量し、その後時間の経過とともにパージ流量を通常時のパージ流量に近づけるように増量することが知られている。
【0003】
【発明が解決しようとする課題】
しかしながら、従来の装置においては、特にパージ濃度を空燃比補正量に応じて推定する装置においては、パージ開始初期でパージが通常より制限されている状態では、算出されたパージ濃度が実際のパージ濃度とずれている虞れがあり、このパージ濃度を基に学習の許可判定をすると、実際は高濃度の蒸発燃料がパージされているにもかかわらず、パージ濃度は低濃度であると判断され、学習が許可されることになり、学習値が蒸発燃料の影響によりずれてしまう虞れがある。
また、パージの影響を防止するために学習を行うときは、パージを停止して、パージの影響を受けないようにすることも考えられるが、この場合は、学習の頻度を上げるとパージできる量が低下し、キャニスタ内に蒸発燃料が堆積してしまうという問題がある。
【0004】
本発明は、かかる問題を解決するためになされたもので、パージを停止することなく、蒸発燃料の影響を防止して精度の高い学習値を算出することのできる内燃機関の燃料供給量制御装置を提供することを目的とする。
【0005】
【課題を解決するための手段】
上記目的を達成するため、請求項1に記載した発明は、内燃機関の運転状態を検出する運転状態検出手段(例えば、実施の形態の図2における吸気管内絶対圧センサ10および回転情報センサ14)と、前記運転状態に応じて前記内燃機関に供給される基本燃料量を算出する基本燃料量算出手段(例えば、実施の形態の図2における基本燃料噴射量演算部54)と、内燃機関の排気系に設けられ排気中の空燃比を検出する空燃比検出手段(例えば、実施の形態の図2における上流O2センサ17)と、前記空燃比検出手段の出力に応じて前記内燃機関に供給される混合気の空燃比を制御する空燃比補正量を算出するフィードバック制御手段(例えば、実施の形態の図2における空燃比F/B係数演算部51)と、前記空燃比補正量の学習値を算出する空燃比学習値算出手段(例えば、実施の形態の図2における空燃比学習値格納部53)と、前記基本燃料量と前記空燃比補正量と前記空燃比学習値に応じて前記内燃機関に供給される燃料量を算出する燃料供給量算出手段(例えば、実施の形態の図2における燃料噴射量演算部55)とを有する内燃機関の燃料供給量制御装置において、前記内燃機関の吸気系に供給するパージ量を制御するパージ制御手段(例えば、実施の形態の図1におけるパージ制御弁44)と、前記空燃比補正量に基づいてパージ制御手段による蒸発燃料の濃度を推定するパージ濃度推定手段(例えば、実施の形態の図2におけるパージ濃度推定部62)と、前記パージ濃度推定手段により推定された蒸発燃料の濃度に関する値が所定値以下のときに前記空燃比学習値の算出を許可する学習許可手段(例えば、実施の形態の図2における空燃比学習実行判定部58)と、空気流量検出手段と、空気流量に所定の目標パージ率を乗算することにより目標パージ流量基本値を算出する目標パージ流量基本値算出手段と、前記目標パージ流量基本値が所定リミット値より大きいと判定された場合に第1目標パージ流量値に前記所定リミット値を設定するとともに、前記目標パージ流量基本値が所定リミット値以下と判定された場合に第1目標パージ流量値に前記目標パージ流量基本値を設定するリミット値設定手段と、パージ開始後の時間経過とともに前記第1目標パージ流量値になるまで徐々に増加させるようにパージ絞り係数を設定するパージ絞り係数設定手段と、前記第1目標パージ流量値に前記パージ絞り係数を乗ずることにより第2目標パージ流量値を算出するパージ流量算出手段と、前記パージ制御手段によりパージが開始されるときは前記第1目標パージ流量値を前記パージ絞り係数により制限した前記第2目標パージ流量値に基づいてパージ量を制限するパージ制限手段(例えば、実施の形態の図2におけるパージ流量演算部61)と、パージ量の制限開始とともに所定時間をセットするタイマ手段と、前記パージ制限手段によりパージ量の制限が終了し、かつ、前記所定時間が経過するまでは前記学習許可手段による学習許可判断を行わない学習許可判断禁止手段(例えば、実施の形態の図2における空燃比学習実行判定部58)と、前記第2目標パージ流量値を前記目標パージ流量基本値で除することにより、パージ流量比を算出するパージ流量比算出手段とを有し、前記パージ制限手段によるパージ量の制限が終了し、かつ、前記所定時間が経過した後、前記学習許可手段は、前記パージ流量比に応じてそれぞれ異なる値に設定された前記所定値に基づいて前記学習許可判断手段による判定を行うことを特徴とする。
【0006】
このような構成によれば、パージ開始初期にパージ量制限されている時およびその後所定時間、学習許可手段による学習許可の判定が行われず、前回の学習許可判定の結果に基づき、学習の許可/不許可が決定される。このため、パージ量を通常よりも減量して制限している場合には、実パージ濃度と推定パージ濃度との間にズレを生じていても、この推定パージ濃度を基に空燃比を誤学習してしまうことが有効に防止し得るようになり、空燃比の学習値を高精度に算出することができる。
【0007】
【発明の実施の形態】
本発明の一の実施の形態を図面を参照して以下に説明する。
図1は本発明の一の実施の形態を示す図である。同図中、符号1は、各気筒に吸気弁及び排気弁(図示せず)を設けた直列4気筒の、動力を発生させる内燃機関本体である。
【0008】
内燃機関の吸気管2は分岐部(吸気マニホルド)11を介して内燃機関本体1の各気筒の燃焼室に接続する。吸気管2の途中にはスロットル弁3が配されている。スロットル弁3にはスロットル弁開度(θTH)センサ4が連結されており、スロットル弁開度θTHに応じた電気信号を出力してECU5に供給する。吸気管2には、スロットル弁3をバイパスする補助空気通路6が設けられており、該補助空気通路6の途中には補助空気量制御弁7が配されている。補助空気量制御弁7は、ECU5に接続されており、ECU5によりその開弁量が制御される。
【0009】
吸気管2のスロットル弁3の上流側には吸気温(TA)センサ8が装着されており、その検出信号がECU5に供給される。吸気管2のスロットル弁3と吸気マニホルド11の間には、チャンバ9が設けられており、チャンバ9には吸気管内絶対圧(PBA)センサ(運転状態検出手段)10が取り付けられている。吸気管内絶対圧センサ10の検出信号はECU5に供給される。
【0010】
内燃機関本体1には内燃機関水温(TW)センサ13が装着されており、その検出信号がECU5に供給される。ECU5には、内燃機関本体1のクランク軸(図示せず)の回転に関する情報を検出する回転情報センサ(運転状態検出手段)14が接続されており、該回転情報センサ14から、クランク軸の回転角度に応じた信号がECU5に供給される。回転情報センサ14は、内燃機関本体1の特定の気筒の所定クランク角度位置で信号パルス(以下「CYL信号パルス」という)を出力する気筒判別センサ、各気筒の吸入行程開始時の上死点(TDC)に関し所定クランク角度前のクランク角度位置で(4気筒エンジンではクランク角180度毎に)TDC信号パルスを出力するTDCセンサ及びTDC信号パルスより短い一定クランク角周期(例えば30度周期)で1パルス(以下「CRK信号パルス」という)を発生するCRKセンサから成り、CYL信号パルス、TDC信号パルス及びCRK信号パルスがECU5に供給される。これらの信号パルスは、燃料噴射時期、点火時期等の各種タイミング制御およびエンジン回転数Neの検出に使用される。
【0011】
吸気マニホルド11の吸気弁の少し上流側には、単位時間当たりの燃料噴射量が一定の燃料噴射弁12が、各気筒毎に設けられており、各燃料噴射弁12は図示しない燃料ポンプに接続されているとともにECU5に電気的に接続されて、ECU5からの信号により燃料噴射時期及び燃料噴射時間(開弁時間すなわち噴射量)が制御される。内燃機関本体1の点火プラグ(図示せず)もECU5に電気的に接続されており、ECU5により点火時期θIGが制御される。
【0012】
排気管16は分岐部(排気マニホルド)15を介して内燃機関本体1の燃焼室に接続されている。排気系の排気管16には分岐部15が集合する部分の直ぐ下流側に、上流側の酸素濃度センサ(以下「上流O2センサ」という)17が装着されている。さらに上流O2センサ(空燃比検出手段)17の下流側には三元触媒19が配されており、またこの三元触媒19の下流には下流側の酸素濃度センサ(以下「下流O2センサ」という)18が装着されている。三元触媒19は、排気ガス中のHC,CO,NOx等の浄化を行う。
【0013】
上流O2センサ17は、ECU5に接続されており、理論空燃比の前後において急変する電気信号(リッチ側で高レベル、リーン側で低レベル)を出力し、その電気信号をECU5に供給する。下流O2センサ18は、その出力が理論空燃比の前後において急激に変化する特性を有し、その出力は理論空燃比よりリッチ側で高レベルとなり、リーン側で低レベルとなる。下流O2センサ18はECU5に接続されており、その検出信号はECU5に供給される。さらに大気圧を検出する大気圧センサ21がECU5に接続されており、その検出信号はECU5に供給される。
【0014】
排気還流機構30は、吸気管2のチャンバ9と排気管16とを接続する排気還流路31と、排気還流路31の途中に設けられ、排気還流量を制御する排気還流弁(EGR弁)32と、EGR弁32の弁開度を検出し、その検出信号をECU5に供給するリフトセンサ33とから成る。EGR弁32は、ソレノイドを有する電磁弁であり、ソレノイドはECU5に接続され、その弁開度がECU5からの制御信号によりリニアに変化させることができるように構成されている。
【0015】
蒸発燃料処理装置40は、燃料を貯留する燃料タンク41内で発生した蒸発燃料を内燃機関本体1の吸気系にパージするもので、燃料タンク41が通路42を介してキャニスタ45に接続し、キャニスタ45はパージ通路43を介して吸気管2のチャンバ9に接続している。キャニスタ45は、燃料タンク41内で発生する蒸発燃料を吸着する吸着剤を内蔵し、外気取込口を有する。通路42の途中には、正圧バルブ及び負圧バルブから成る2ウェイバルブ46が配設され、パージ通路43の途中にはデューティ制御型の電磁弁であるパージ制御弁(パージ制御手段)44が設けられている。パージ制御弁44は、ECU5に接続されており、ECU5からの信号に応じて制御される。
【0016】
ECU5は、上述した各種センサからの入力信号波形を整形して電圧レベルを所定レベルに修正し、アナログ信号値をデジタル信号値に変化する等の機能を有する入力回路と、中央処理回路(CPU)と、該CPUで実行される各種演算プログラムや後述する各種マップ及び演算結果等を記憶するROM及びRAMからなる記憶回路と、燃料噴射弁12,パージ制御弁44等の各種電磁弁や点火プラグに駆動信号を出力する出力回路とを備えている。
【0017】
ECU5は、上述の各種内燃機関運転パラメータ信号に基づいて燃料噴射弁12の燃料噴射時間TOUTを演算し、この演算結果に基づいて燃料噴射弁12を駆動する信号を出力する。すなわち、ECU5は各種センサとで、内燃機関を制御する内燃機関の制御装置50を構成する。
【0018】
ECU5は、例えば、図2に示すように、上流O2センサ17の出力に応じて内燃機関に供給される混合気の空燃比を制御する空燃比補正量を算出する、より具体的には、上流O2センサ17で検出された空燃比VO2に応じて空燃比フィードバック係数(空燃比補正係数)KO2を算出する空燃比F/B係数演算部(フィードバック制御手段)51と、上流O2センサ17で検出された空燃比VO2の反転周期FPVO2を算出するO2センサ反転周期演算部(反転周期算出手段)52とを有している。
【0019】
また、空燃比補正量の学習値を算出する、より具体的には、空燃比F/B係数演算部51で算出された空燃比フィードバック係数の平均値KO2MENを算出するとともに空燃比フィードバック係数の平均値KO2MENに基づいて空燃比学習値KTIMを算出し、該算出時の内燃機関の運転状態に対応する記憶位置に空燃比学習値KTIMを更新記憶する空燃比学習値格納部(空燃比学習値算出手段)53と、運転状態に応じて内燃機関に供給される基本燃料量を算出する、より具体的には、内燃機関の運転状態に対応する記憶位置より基本燃料噴射量TIMを検索する基本燃料噴射量演算部(基本燃料量算出手段)54とを有している。
【0020】
さらに、基本燃料量と空燃比補正量と空燃比学習値に応じて内燃機関に供給される燃料量を算出する、より具体的には、内燃機関の運転状態に対応する記憶位置より空燃比学習値KTIMを検索し、該空燃比学習値KTIMに基づいて内燃機関内に噴射する燃料噴射量に相当する燃料噴射時間TOUTを設定する燃料噴射量演算部(燃料供給量算出手段)55と、該設定された燃料噴射時間TOUTで燃料噴射弁12を駆動する燃料噴射出力部56と、内燃機関への吸入空気量に相関する吸入空気量相関値NTIを演算する吸入空気量相関値演算部57とを有している。
【0021】
さらにまた、パージ制御弁44によりパージが開始されるときパージ量を時間の経過とともに目標蒸発燃料量になるまで徐々に増量するパージ流量演算部(パージ制御手段)61と、空燃比補正量に基づいてパージ制御弁44による蒸発燃料の濃度を推定するパージ濃度推定部(パージ濃度推定手段)62と、パージ濃度推定部62により推定された蒸発燃料の濃度が低いときに空燃比の学習値を算出する空燃比学習実行判定部(学習許可手段、学習許可判断禁止手段)58とを有している。
【0022】
この空燃比学習実行判定部58は、蒸発燃料量が制限されているときには学習許可判断を行わず、また、空燃比学習値格納部53による空燃比学習値KTIMの更新記憶の実行を許可する反転周期FPVO2の許可範囲を内燃機関への吸入空気量相関値NTIに応じて決定するとともに、決定された許可範囲外に反転周期FPVO2があるときに空燃比学習値格納部53による空燃比学習値KTIMの更新記憶の実行を停止する。
【0023】
上記ECU5による燃料噴射制御の制御内容について以下に説明する。
ECU5は、図3に示す燃料噴射制御のフローチャートのSTARTからEXITまでの1制御サイクルを、例えば、TDCセンサからTDC信号パルスが出力される毎に実行する。
【0024】
ECU5の記憶回路には、エンジン回転数Neと吸気管内絶対圧Pbとで規定される各運転状態毎にそれぞれ基本燃料噴射量(基本燃料噴射時間)TIMが対応設定されてなる基本燃料噴射量マップが記憶されており、まず、ステップSA1において、その時点のエンジン回転数Neを回転情報センサ14の出力から検出するとともに、その時点の吸気管内絶対圧Pbを吸気管内絶対圧センサ10の出力から検出し、これらエンジン回転数Neと吸気管内絶対圧Pbとで規定される運転状態に対する基本燃料噴射量TIMを基本燃料噴射量マップで検索し読み出す。なお、この基本燃料噴射量TIMの演算は、本発明の基本燃料量算出手段に対応する基本燃料噴射量演算部54が実行する。
【0025】
また、ECU5の記憶回路を構成するバッテリバックアップRAMには、エンジン回転数Neと吸気管内絶対圧Pbとで規定される各運転状態毎にRAMエリア(記憶位置)が設定されこれらRAMエリアにそれぞれ空燃比学習値KTIMが対応設定されてなる空燃比学習値マップが記憶されており、ステップSA2において、この空燃比学習値マップから、その時点のエンジン回転数Neと吸気管内絶対圧Pbとで検出される内燃機関の運転状態に対するRAMエリアにある空燃比学習値KTIMを検索し読み出す。
【0026】
ここで、上記した空燃比学習値マップは、例えば、図4に示すように、エンジン回転数Neを#NKTIM+0〜#NKTIM+8の9つの値の格子点により区画される8つの領域(図4における横方向)に分けるとともに、吸気管内絶対圧Pbを#PKTIM+0〜#PKTIM+8の9つの値の格子点により区画される8つの領域(図4における縦方向)に分けることにより、8×8=64のRAMエリアに区分されており、各RAMエリア毎にKTIM0〜KTIM63の空燃比学習値が設定記憶されている。さらに、この空燃比学習値マップとは別に、内燃機関がアイドリング状態において用いられる空燃比学習値KTIM64が設定記憶されている。
【0027】
これら空燃比学習値KTIMの初期値は1.0であり、空燃比学習値は、図3に示すこの燃料噴射制御のフローチャートとは別に、所定時間(10ms)毎に実行される後述する空燃比フィードバック係数KO2の算出処理で実行される空燃比学習値KTIMの算出処理で必要に応じて補正され更新される。
【0028】
なお、空燃比学習値マップから空燃比学習値KTIMを読み出す際には、補間計算が行われる。すなわち、まず、図5に示すように、RAMエリアを区分する格子点の隣り合うもの同士の中間値を補間計算用格子点とする。具体的には、例えば、RAMエリアを区分する格子点#NKTIM2,#NKTIM3,#PBKTIM3,#PBKTIM4に対して、(NKTIM2+NKTIM3)/2,(PBKTIM3+PBKTIM4)/2を補間計算用格子点A1とし、格子点#NKTIM3,#NKTIM4,#PBKTIM3,#PBKTIM4に対して、(NKTIM3+NKTIM4)/2,(PBKTIM3+PBKTIM4)/2を補間計算用格子点A2とし、格子点#NKTIM4,#NKTIM5,#PBKTIM3,#PBKTIM4に対して、(NKTIM4+NKTIM5)/2,(PBKTIM3+PBKTIM4)/2を補間計算用格子点A3とし、また、格子点#NKTIM2,#NKTIM3,#PBKTIM4,#PBKTIM5に対して、(NKTIM2+NKTIM3)/2,(PBKTIM4+PBKTIM5)/2を補間計算用格子点A4とし、格子点#NKTIM3,#NKTIM4,#PBKTIM4,#PBKTIM5に対して、(NKTIM3+NKTIM4)/2,(PBKTIM4+PBKTIM5)/2を補間計算用格子点A5とし、格子点#NKTIM4,#NKTIM5,#PBKTIM4,#PBKTIM5に対して、(NKTIM4+NKTIM5)/2,(PBKTIM4+PBKTIM5)/2を補間計算用格子点A6とし、さらに、格子点#NKTIM2,#NKTIM3,#PBKTIM5,#PBKTIM6に対して、(NKTIM2+NKTIM3)/2,(PBKTIM5+PBKTIM6)/2を補間計算用格子点A7とし、格子点#NKTIM3,#NKTIM4,#PBKTIM5,#PBKTIM6に対して、(NKTIM3+NKTIM4)/2,(PBKTIM5+PBKTIM6)/2を補間計算用格子点A8とし、格子点#NKTIM4,#NKTIM5,#PBKTIM5,#PBKTIM6に対して、(NKTIM4+NKTIM5)/2,(PBKTIM5+PBKTIM6)/2を補間計算用格子点A9とする。そして、エンジン回転数Neと吸気管内絶対圧Pbとに対応する位置(例えば図5に示す位置A0)に対し最も近接する四つの補間計算用格子点(図5に示す補間計算用格子点A1,A2,A4,A5)を割り出しこれら四つの補間計算用格子点からの各距離に応じた重み付けをするようにして補間計算を行うのである。
【0029】
さらに、このように補間計算されたKTIMに対し、大気圧センサ21の検出値から図6に示す大気圧補正テーブルに基づく検索で割り出される大気圧補正係数KTKPAで次式にしたがった補正を行う。
KTIM=(KTIM−1.0)×KTKPA+1.0
【0030】
さらに、ECU5の記憶回路には、図3に示す燃料噴射制御のフローチャートとは別に、所定時間(10ms)毎に実行される後述する空燃比フィードバック係数(空燃比補正係数)KO2Tの算出処理で算出された空燃比フィードバック係数KO2Tが記憶されており、ステップSA3において、この空燃比フィードバック係数KO2Tを空燃比フィードバック係数KO2として読み出す。
【0031】
ECU5は、ステップSA4において、ステップSA1で読み出した基本燃料噴射量TIMと、ステップSA2で読み出した空燃比学習値KTIMと、ステップSA3で読み出した空燃比フィードバック係数KO2と、さらにその時点のバッテリの状態に応じた補正値TIVBとから、内燃機関内に噴射する燃料噴射量に相当する燃料噴射弁12の燃料噴射時間(燃料噴射弁12の開弁時間)TOUTを以下の式に基づいて設定することになる。
TOUT=TIM*KTIM*KO2+TIVB
この算出は、本発明の燃料供給量算出手段に対応する燃料噴射量演算部55が実行する。
【0032】
そして、ECU5は、このようにして算出した燃料噴射時間TOUTの間だけ燃料噴射弁12を開弁させる。この燃料噴射弁12の開弁駆動は燃料噴射出力部56が実行する。
【0033】
このようにしてステップSA4で燃料噴射時間TOUTを算出し燃料噴射弁12を開弁させると、図2の燃料噴射制御の処理を終了する。
【0034】
次に、上記した燃料噴射制御のフローチャートのステップSA3で用いられる空燃比フィードバック係数KO2Tを算出するための算出処理と、燃料噴射制御のフローチャートのステップSA2で用いられる、この空燃比フィードバック係数KO2Tの算出処理中のステップSB15で実行される空燃比学習値KTIMを算出するための算出処理とについて説明する。
【0035】
まず、空燃比フィードバック係数KO2Tを上流O2センサ17の出力すなわち空燃比に応じて算出するための算出処理について図7のフローチャートに基づき説明する。なお、図7に示す空燃比フィードバック係数KO2Tの算出処理のフローチャートのSTARTからEXITまでの1制御サイクルを、例えば、所定時間(10ms)毎に実行する。
【0036】
まず、ステップSB1において、上流O2センサ17の出力に反転があったか否かをフラグF_PVREFの反転に基づき判定する。すなわち、上流O2センサ17の出力すなわち空燃比VO2は、図8(a)に示すように周期をもって変動するものであり、ECU5においては、図8(b)に示すように、上流O2センサ17の出力VO2がリーン(0V)側からリッチ(1V)側に変動しているときは1Vに近い所定のしきい値B1を上回ると、フラグF_PVREFを「1」にセットする一方、上流O2センサ17の出力がリッチ(1V)側からリーン(0V)側に変動しているときは0Vに近い所定のしきい値B2を下回ると、フラグF_PVREFを「0」にリセットする処理を行う。そして、ステップSB1では、このフラグF_PVREFが前回の1サイクルのときに対し反転したか(0→1または1→0)否かを判定するのである。
【0037】
ステップSB1においてフラグF_PVREFに反転があった場合は、ステップSB2においてフラグF_PVREFが1であるか否かを判定する。ステップSB2において、フラグF_PVREFが1である場合、すなわち現在の空燃比の状態がリッチ側にある場合は、ステップSB3においてリッチ用のタイマ値RDLYをディレイタイマTRLDLYにセットする一方、ステップSB2において、フラグF_PVREFが0である場合、すなわち現在の空燃比の状態がリーン側にある場合は、ステップSB4においてリーン用のタイマ値LDLYをディレイタイマTRLDLYにセットする。なお、ディレイタイマTRLDLYはセット後、自動的に所定の時間毎にカウントダウンされる。
【0038】
ステップSB3の後およびステップSB4の後は、ステップSB5において、フラグF_KO2WINを「0」にする。
【0039】
上記ステップSB1においてフラグF_PVREFに反転がなかった場合は、ステップSB6においてディレイタイマTRLDLY=0であるか否かを判定する。そして、ステップSB6においてディレイタイマTRLDLY=0であった場合、ステップSB7においてフラグF_PVREFが1であるか否かを判定する。
【0040】
ステップSB7において、フラグF_PVREFが1である場合、すなわち現在の空燃比の状態がリッチ側にある場合は、ステップSB8においてフラグF_KO2WIN=1であるか否かを判定する。そして、ステップSB8においてフラグF_KO2WIN=1でなかった場合、ステップSB9において現在の空燃比フィードバック係数KO2Tから飛躍的に補正するための所定値KO2WRを減算した値を新たな空燃比フィードバック係数KO2Tとするとともに、ステップSB10において、フラグF_KO2WINを「1」とする。他方、ステップSB8においてフラグF_KO2WIN=1であった場合、ステップSB11において現在の空燃比フィードバック係数KO2Tから、徐々に補正していくための所定値ILを減算した値を新たな現在の空燃比フィードバック係数KO2Tとする。
【0041】
上記ステップSB7において、フラグF_PVREFが1でない場合、すなわち現在の空燃比の状態がリーン側にある場合は、ステップSB12においてフラグF_KO2WIN=1であるか否かを判定する。そして、ステップSB12においてフラグF_KO2WIN=1でなかった場合、ステップSB13において現在の空燃比フィードバック係数KO2Tに対し飛躍的に補正するための所定値KO2WLを加算した値を新たな空燃比フィードバック係数KO2Tとし、ステップSB10において、フラグF_KO2WINを「1」とする。他方、ステップSB12においてフラグF_KO2WIN=1であった場合、ステップSB14において現在の空燃比フィードバック係数KO2Tに対し、徐々に補正していくための所定値IRを加算した値を新たな空燃比フィードバック係数KO2Tとする。
【0042】
ステップSB5の後と、ステップSB6の判断がNOの場合と、ステップSB10の後と、ステップSB11の後と、ステップSB14の後とに、ステップSB15において、空燃比学習値KTIMの算出処理(後述)を行う。そして、このステップSB15の処理を終了すると、図7に示す空燃比フィードバック係数KO2Tを算出するための算出処理を終了する。
【0043】
ここで、図9に示すタイミングチャートに照らし合わせて以上を説明すると、時点t1において、フラグF_PVREFが「0」から「1」に変わると、ステップSB1での判断がYESとなり、ステップSB2での判断がYESとなって、ステップSB3においてタイマ値RDLYをディレイタイマTRLDLYにセットし、ステップSB5において、フラグF_KO2WINを「0」にする。
【0044】
すると、次の制御サイクルでは、ステップSB1の判断がNOとなり、ステップSB6でディレイタイマTRLDLY=0となるまで、空燃比フィードバック係数KO2Tをそのままの状態で維持する(時点t1〜t2)。そして、ステップSB6でディレイタイマTRLDLY=0となった時点t2においては現在の空燃比の状態がリッチ側にあってフラグF_PVREF=1であるため、ステップSB7の判断がYESとなり、さらにステップSB8においてフラグF_KO2WIN=1がNOとなって、ステップSB9において現在の空燃比フィードバック係数KO2Tから飛躍的に補正するための所定値KO2WRを減算した値を新たな空燃比フィードバック係数KO2Tとする。そして、ステップSB10において、フラグF_KO2WINを「1」とする。
【0045】
すると、次の制御サイクルでは、ステップSB8の判断がYESとなり、ステップSB11において、現在の空燃比フィードバック係数KO2Tから、徐々に補正していくための所定値ILを減算した値を新たな現在の空燃比フィードバック係数KO2Tとする。そして、ステップSB1において次のフラグF_PVREFの反転の判断がYESとなるまで、ステップSB11を繰り返し、空燃比フィードバック係数KO2Tを徐々に小さくしていく(時点t2〜t3)。
【0046】
次に、時点t3において、フラグF_PVREFが「0」から「1」に変わると、ステップSB1での判断がYESとなり、ステップSB2での判断がNOとなって、ステップSB4においてタイマ値LDLYをディレイタイマTRLDLYにセットし、ステップSB5において、フラグF_KO2WINを「0」にする。
【0047】
すると、次の制御サイクルでは、ステップSB1の判断がNOとなり、ステップSB6でディレイタイマTRLDLY=0となるまで、空燃比フィードバック係数KO2Tをそのままの状態で維持する(時点t3〜t4)。そして、ステップSB6でディレイタイマTRLDLY=0となると、時点t4においては現在の空燃比の状態がリーン側にあってフラグF_PVREF=1ではないため、ステップSB7の判断がNOとなり、さらにステップSB12においてフラグF_KO2WIN=1がNOとなって、ステップSB13において現在の空燃比フィードバック係数KO2Tに飛躍的に補正するための所定値KO2WLを加算した値を新たな空燃比フィードバック係数KO2Tとする。そして、ステップSB10において、フラグF_KO2WINを「1」とする。
【0048】
すると、次の制御サイクルでは、ステップSB12の判断がYESとなり、ステップSB14において、現在の空燃比フィードバック係数KO2Tに、徐々に補正していくための所定値IRを加算した値を新たな現在の空燃比フィードバック係数KO2Tとする。そして、ステップSB1において次のフラグF_PVREFの反転の判断がYESとなるまで、ステップSB14を繰り返し、空燃比フィードバック係数KO2Tを徐々に大きくしていく(時点t4〜t5)。
【0049】
以上のようにして空燃比フィードバック係数KO2Tを算出する。
なお、この空燃比フィードバック係数KO2Tの算出処理は、本発明のフィードバック制御手段に対応する空燃比F/B係数演算部51が実行する。
【0050】
次に、上記した空燃比フィードバック係数KO2Tの算出処理のステップSB15で実行される空燃比学習値KTIMを算出するための算出処理について図10〜図13のフローチャートに基づき説明する。
【0051】
まず、図10のステップSC1において、前回の制御サイクルにおけるフラグF_PVREFが「0」であり、かつ今回の制御サイクルにおけるフラグF_PVREFが「1」であるか否か、すなわち上流O2センサ17の出力VO2がリーン側からリッチ側に反転したか否かを判定する。
【0052】
そして、ステップSC1の判断がNOの場合、ステップSC2において、カウンタCFPVO2を「1」だけインクリメントする。
【0053】
次に、ステップSC3において、前回の制御サイクルにおけるフラグF_PVREFが「1」であり、かつ今回の制御サイクルにおけるフラグF_PVREFが「0」であるか否か、すなわち上流O2センサ17の出力VO2がリッチ側からリーン側に反転したか否かを判定する。
【0054】
そして、ステップSC3の判断がYESの場合、ステップSC4において、現在の空燃比フィードバック係数KO2Tを空燃比フィードバック係数の最小値KO2MINとして記憶する。
【0055】
ステップSC3の判断がNOの場合と、ステップSC4の後とにおいては、ステップSC5で、フラグF_KTIMGを「0」とする。
【0056】
上記ステップSC1の判断がYESであった場合、すなわち上流O2センサ17の出力VO2がリーン側からリッチ側に反転した場合は、ステップSC6においてカウンタCFPVO2を反転周期FPVO2として記憶する。そして、ステップSC7においてカウンタCFPVO2を「0」とし、ステップSC8において、現在の空燃比フィードバック係数KO2Tを空燃比フィードバック係数の最大値KO2MAXとして記憶する。
【0057】
次に、ステップSC9において、空燃比フィードバック係数の最小値KO2MINと最大値KO2MAXとを加算して2で割ることで、空燃比フィードバック係数の平均値KO2MENを算出する。そして、ステップSC10において、フラグF_KTIMGを「1」とする。
【0058】
ここで、図9に示すタイミングチャートに照らし合わせて以上を説明すると、時点t1において、フラグF_PVREFが「0」から「1」に変わると、ステップSC1での判断がYESとなり、ステップSC7においてカウンタCFPVO2を「0」とする。
【0059】
次の制御サイクルでは、ステップSC1での判断がNOとなり、ステップSC2において、カウンタCFPVO2を「1」だけインクリメントする。そして、フラグF_PVREFが「0」から「1」に変わった時点t1から、次にステップSC1での判断がYESとなる、すなわちフラグF_PVREFが「0」から「1」に変わる時点t5までに0から制御サイクル毎に1ずつインクリメントされるカウンタCFPVO2を、ステップSC6において反転周期FPVO2として記憶する。なお、このような反転周期FPVO2の演算はO2センサ反転周期演算部52において行われる。
【0060】
また、時点t3において、フラグF_PVREFが「1」から「0」に変わると、ステップSC3での判断がYESとなり、ステップSC4において、その時点での空燃比フィードバック係数KO2Tをその最小値KO2MINとして記憶することになり、その後、時点t5において、フラグF_PVREFが「0」から「1」に変わると、ステップSC1での判断がYESとなり、ステップSC8において、その時点での空燃比フィードバック係数KO2Tをその最大値KO2MAXとして記憶するとともに、ステップSC9でその平均値KO2MENを算出して記憶する。そして、ステップSC6で反転周期FPVO2が算出され、ステップSC9で空燃比フィードバック係数の平均値KO2MENが算出されると、ステップSC10においてこれらの算出が終わったことを示すフラグF_KTIMGを「1」とする。
【0061】
なお、ここでは、空燃比フィードバック係数の平均値KO2MENを最大値KO2MAXおよび最小値KO2MINの平均から求めたが、フラグF_PVREFが「1」から「0」に変わってから次にフラグF_PVREFが「1」から「0」に変わるまでの間のすべての制御サイクルで求められる空燃比フィードバック係数KO2Tを加算しその加算回数で除算して平均値を求めてもよい。
【0062】
上記ステップSC5の後およびステップSC10の後、図11のステップSW1において、フラグF_PGACTのフラグ値にパージ実施中であることを示す「1」がセットされているかを判定する。その判定結果が「YES」の場合、すなわち、パージ実施中の場合は、ステップSW2に進み、「NO」の場合、すなわち、パージ停止中の場合は、ステップSW2以下の処理をスキップし、図12のステップSC11に進む。
【0063】
ステップSW2では、フラグF_PGKTIMのフラグ値に、後述のステップSW6において実行される学習許可判断の許可を示す「1」がセットされているかを判定する。その判定結果が「YES」の場合は、ステップSW3に進み、「NO」の場合は、ステップSW21に進む。ここで、フラグF_PGKTIMは始動時に「0」にセットされている。
このステップSW2の処理は、本発明の学習許可判断禁止手段に対応する空燃比学習実行判定部58が実行する。
【0064】
ステップSW3では、ダウンタイマTKTISTに所定のタイマ値#TMKTISTをセットする。
ステップSW4では、後述するステップSW21でセットされるダウンタイマTKTIGOのタイマ値が「0」であるかを判定する。その判定結果が、「YES」の場合は、ステップSW11に進み、「NO」の場合は、ステップSW5に進む。
ステップSW11では、フラグF_PGTIMのフラグ値に、後述のステップSW6において実行される学習許可判断の禁止を示す「0」をセットする。
【0065】
そして、ステップSW12において、フラグF_PKTIMOKのフラグ値に空燃比の学習禁止を示す「0」をセットし、図12のステップSC11以降の処理を全てスキップし、空燃比学習値KTIMの算出処理を終了する。
ステップSW4の判定結果が「NO」の場合に実行されるステップSW5では、バージ濃度が濃いかを判定するための判定処理を行う。この判定処理については、後ほど図13を用いて説明する。
【0066】
ステップSW6では、フラグF_PKTIMOKのフラグ値が空燃比の学習許可を示す「1」であるかを判定し、その判定結果が「YES」の場合、すなわち、空燃比の学習を行う場合は、図12のステップSC11に進み、「NO」の場合、すなわち、空燃比の学習を行わない場合は、図12のステップSC11以降の処理を全てスキップし、空燃比学習値KTIMの算出処理を終了する。
このステップSW6の処理は、本発明の学習許可手段に対応する空燃比学習実行判定部58が実行する。
【0067】
ステップSW2の判定結果が「NO」の場合に実行されるステップSW21では、タイマTKTIGOに所定のタイマ値#TMKTIGOをセットする。
ステップSW22では、タイマTKTISTのタイマ値が「0」であるかを判定する。その判定結果が、「YES」の場合は、ステップSW23に進み、「NO」の場合は、図12のステップSC11以降の処理を全てスキップし、空燃比学習値KTIMの算出処理を終了する。
【0068】
そして、ステップSW23において、フラグF_PGKTIMのフラグ値に、上記したステップSW6において実行される学習許可判断の禁止を示す「1」をセットすると、図12のステップSC11以降の処理を全てスキップし、空燃比学習値KTIMの算出処理を終了する。
なお、図11に示す学習処理を継続的に行うと、パージの影響分を学習して学習値がズレてしまうため、同図に示す学習処理は、所定周期#TMKTIGO,#TMKTIST(例えば、20分)毎に行う。
【0069】
図12のステップSC11において、空燃比学習値マップ(図4参照)から、その時点のエンジン回転数Neと吸気管内絶対圧Pbとで検出されるRAMエリアにある空燃比学習値KTIMを検索し読み出す。そして、ステップSC12において、一の反転周期計測中に空燃比学習値KTIMが記憶されたRAMエリアに変化(他のRAMエリアへの移行)があったか否かを判定し、RAMエリアの変化があった場合には、運転状態が変化していることから、ステップSC13で、その旨を示すフラグF_KTIMAを「1」にする。
【0070】
ステップSC12においてRAMエリアの変化がなかった場合、およびステップSC13でフラグF_KTIMAを「1」にした場合は、ステップSC14においてフラグF_KTIMG=1であるか否かを判定し、フラグF_KTIMG=1でない場合は、反転周期FPVO2および空燃比フィードバック係数の平均値KO2MENが算出されていないため、図10から図12に示すフローチャートの処理すなわち図7に示すフローチャートのステップSB15を終了する。
【0071】
ステップSC14においてフラグF_KTIMG=1である場合、すなわち、反転周期FPVO2および空燃比フィードバック係数の平均値KO2MENが算出されていると、ステップSC15においてフラグF_IDLE=1であるか否かを判定する。このフラグF_IDLEは、内燃機関がアイドリング状態にあると判定される所定の条件下において「1」とされ、内燃機関がアイドリング状態にないと判定される所定の条件下において「0」とされる。
【0072】
そして、ステップSC15において、フラグF_IDLE=1である場合、すなわち、内燃機関がアイドリング状態にある場合は、ステップSC16において、ステップSC6で記憶した反転周期FPVO2が、下側しきい値#FPVO2ILと上側しきい値#FPVO2IHとで規定される一の学習許可範囲に入っているか否か、すなわち#FPVO2IL≦FPVO2≦#FPVO2IHであるか否かを判定し、#FPVO2IL≦FPVO2≦#FPVO2IHでない場合は、後述するステップSC22〜SC24で実行される空燃比学習値KTIMの更新記憶の実行を停止する。ここで、アイドリング状態にあるときは、エンジン負荷がほとんど変わることがないので、反転周期FPVO2がこのような一の所定範囲に入っているか否かの判断のみを行う。なお、この空燃比学習値KTIMの更新記憶の実行停止の判定は空燃比学習実行判定部58が実行する。
【0073】
上記ステップSC15において、フラグF_IDLE=1でない場合、すなわち、内燃機関がアイドリング状態にない場合は、ステップSC17において、内燃機関への吸入空気量に相関がある吸入空気量相関値NTIを算出する。なお、この吸入空気量相関値NTIの算出は、吸入空気量相関値演算部57が実行する。
【0074】
ステップSC17においては、まず、エンジン回転数Neおよび吸気管内絶対圧Pbを検出し、これらエンジン回転数Neと吸気管内絶対圧Pbとで規定される運転状態に対する基本燃料噴射量TIMを基本燃料噴射量マップで検索し読み出す。そして、この基本燃料噴射量TIMとエンジン回転数Neとから、以下の式で算出を行う。
吸入空気量相関値NTI=エンジン回転数Ne×基本燃料噴射量TIM
【0075】
なお、基本燃料噴射量TIMは、単位回転当たりの燃料噴射量であるので、これにエンジン回転数Neをかけることで、単位時間当たりの燃料噴射量が得られ、この単位時間当たりの燃料噴射量が、単位時間当たりの吸入空気量に相当する値となる。
【0076】
ここで、ECU5の記憶回路には、各吸入空気量相関値NTI毎にそれぞれ下側しきい値データ#FPVO2NNLおよび上側しきい値データ#FPVO2NNHが対応設定された図17に示すしきい値テーブルが記憶されている。すなわち、図17においては、吸入空気量相関値NTIの各値に対し設定された上側の線C1が上側しきい値データを、下側の線C2が下側しきい値データを示している。
【0077】
そして、ステップSC18において、ステップSC17で算出された吸入空気量相関値NTIに対する下側しきい値データ#FPVO2NNLおよび上側しきい値データ#FPVO2NNHをしきい値テーブルで検索して読み出し、読み出した下側しきい値データ#FPVO2NNLを下側しきい値FPVO2NLとし、上側しきい値データ#FPVO2NNHを上側しきい値FPVO2NHとする。
【0078】
そして、ステップSC19において、ステップSC6で記憶した反転周期FPVO2が、下側しきい値FPVO2NLと上側しきい値FPVO2NHとで規定される学習許可範囲に入っているか否か、すなわちFPVO2NL≦FPVO2≦FPVO2NHであるか否かを判定し、FPVO2NL≦FPVO2≦FPVO2NHでない場合は、後述するステップSC22〜SC24で実行される空燃比学習値KTIMの更新記憶の実行を停止する。すなわち、アイドリング状態にないときは、エンジン負荷が変動しているため、エンジン負荷の大きさ毎に設定された学習許可範囲に反転周期FPVO2が入っているか否かの判断を行う。なお、この空燃比学習値KTIMの更新記憶の実行停止の判定は空燃比学習実行判定部58が実行する。
【0079】
上述したステップSC16において#FPVO2IL≦FPVO2≦#FPVO2IHであった場合、およびステップSC19においてFPVO2NL≦FPVO2≦FPVO2NHであった場合は、ステップSC20において、RAMエリアの変化があり運転状態が変化したことを示すフラグF_KTIMAが「1」であるか否かを判断する。
【0080】
ステップSC20において、F_KTIMA=1であった場合は、ステップSC21において、F_KTIMAを「0」にするとともに、図10から図12に示すフローチャートの処理すなわち図7に示すフローチャートのステップSB15を終了する。すなわち、運転状態が定常的状態になく過渡的状態にあることから空燃比学習値KTIMの更新記憶の実行を停止する。なお、この空燃比学習値KTIMの更新記憶の実行停止の判定は空燃比学習実行判定部58が実行する。
【0081】
ステップSC20において、F_KTIMA=1でなかった場合は、ステップSC22において、ステップSC9で算出された空燃比フィードバック係数の平均値KO2MENから、基準値である1.00を減算して偏差DKO2MENを算出する。
【0082】
そして、ステップSC23において、ステップSC11で運転状態に対応する空燃比学習値マップのRAMエリアから読み出された空燃比学習値KTIM(KTIMnOLD)に偏差DKO2MENを加算した値を新たな空燃比学習値KTIM(KTIMnNEW)として同じRAMエリアに更新記憶する。なお、この空燃比学習値KTIMの更新記憶は、空燃比学習値格納部53が実行する。
【0083】
さらに、ステップSC24において、空燃比学習値KTIMを所定の下限値#KTIMLLと所定の上限値#KTIMLHとの間に収めるリミット処理を行う。すなわち、空燃比学習値KTIMが下限値#KTIMLL以上かつ上限値#KTIMLH以下であればそのままとし、空燃比学習値KTIMが所定の下限値#KTIMLLを下回った場合にはこれを下限値#KTIMLLとし、空燃比学習値KTIMが所定の下限値#KTIMLHを上回った場合にはこれを上限値#KTIMLHとするのである。
【0084】
ステップSC24の処理を行った後、図10から図12に示すフローチャートの処理すなわち図7に示すフローチャートのステップSB15を終了する。
【0085】
次に、上記した図11のステップSW5で実行されるバージ濃度が濃いかを判定するための判定処理について、図13のフローチャートに基づき説明する。
【0086】
まず、ステップSX1では、キャニスターパージ制御絞り係数KPGTが「1.0」であるかを判定する。このキャニスターパージ制御絞り係数KPGTを算出するための算出処理は、後ほど図14を用いて説明する。
ステップSX1の判定結果が「YES」の場合は、ステップSX2の処理をスキップし、ステップSX3に進む。
【0087】
これに対し、ステップSX1の判定結果が「NO」の場合は、ステップSX2に進み、タイマTKTIDに所定のタイマ値#TMKTIDをセットする。
このタイマTKTIDは、パージ濃度推定値が実際のパージ濃度になるまで待つためのタイマーである。
【0088】
次に、ステップSX3において、タイマTKTIDにセットされている値が「0」であるかを判定する。その判定結果が「NO」の場合は、バージ濃度が濃いかを判定するための判定処理を終了し、「YES」の場合は、ステップSX4に進む。
【0089】
ステップSX4では、パージ流量比QRATEが「1.0」であるかを判定する。その判定結果が「NO」の場合、すなわち、「パージ流量一定パージ」の場合は、ステップSX11に進み、「YES」の場合、すなわち、「吸入空気量比例パージ」の場合は、ステップSX5に進む。
なお、パージ流量比QRATEは、後ほど説明する図14のステップSV6でセットされる。
【0090】
ステップSX5,ステップSX11では、空気流量QAIRが所定の範囲内であるかを判定する。この空気流量QAIRは、基本燃料噴射量TIM,エンジン回転数NE,及び,所定の係数#KQAIRを用いて、次式に従い算出する。
空気流量QAIR=
基本燃料噴射量TIM×エンジン回転数NE×2×係数#KQAIR
【0091】
ステップSX5では、パージ濃度推定が正確に行える領域内にあるか、すなわち、空気流量QAIRが下限値#QAIRPLL以上、かつ、上限値#QAIRPLH以下であるかを判定する。その判定結果が「NO」の場合は、パージ濃度が濃いかを判定するための判定処理を終了し、「YES」の場合は、ステップSX6に進む。
【0092】
これに対し、ステップSX11では、パージ濃度推定値が正確に行える領域内に空気流量QAIRが収まっているか、すなわち、空気流量QAIRが下限値#QAIRPHL以上、かつ、上限値#QAIRPHH以下であるかを判定する。その判定結果が「NO」の場合は、パージ濃度が濃いかを判定するための判定処理を終了し、「YES」の場合は、ステップSX12に進む。
【0093】
ステップSX6,ステップSX12では、パージ補正係数KAFEVACTが所定の上限値以下であるかを判定する。なお、これら上限値の大小関係は、#PGCJUDL(例えば、0.10)>#PGCJUDH(例えば、0.05)となっている。
また、パージ補正係数KAFEVACTは、後ほど説明する図16のステップSR6で設定される。
【0094】
そして、ステップSX6,ステップSX12のいずれにおいても、判定結果が「YES」の場合は、ステップSX7に進み、「NO」の場合は、ステップSX13に進む。
ステップSX7では、フラグF_PKTIMOKのフラグ値に空燃比の学習許可を示す「1」をセットし、ステップSX13では、フラグF_PKTIMOKのフラグ値に空燃比の学習禁止を示す「0」をセットする。これにより、バージ濃度が濃いかを判定するための判定処理は終了する。
【0095】
次に、パージ流量が最適な流量となるようにパージ制御弁44を制御するためのメインフローについて、図14のフローチャートに基づき説明する。このメインフローは、80ms毎に実行される。
まず、ステップSV1において、空気流量QAIRの算出処理を行う。この空気流量QAIRは、次式に従い算出する。
【0096】
空気流量QAIR=
基本燃料噴射量TIM×エンジン回転数NE×2×係数#KQAIR
ステップSV2では、フラグF_PGACTのフラグ値にパージ実施中を示す「1」がセットされているかを判定する。その判定結果が「NO」の場合、すなわち、パージ停止中の場合は、ステップSV21に進み、パージ制御弁駆動デューティ値DOUTPGCに全閉を示す「0%」をセットする。
【0097】
次いで、ステップSV22において、キャニスターパージ制御絞り係数KPGTに初期値#KPGTINIをセットして、パージ制御弁44の制御処理を終了する。
ステップSV2の判定結果が「YES」の場合、すなわち、パージ実施中の場合は、ステップSV3に進み、フラグF_FCのフラグ値が燃料カット実施中を示す「1」であるかを判定する。
【0098】
ステップSV3の判定結果が「YES」の場合、すなわち、燃料カット実施中の場合は、ステップSV11に進み、キャニスターパージ制御絞り係数KPGTに初期値#KPGTINIをセットする。
次いで、ステップSV12において、パージ制御弁駆動デューティ値DOUTPGCに全閉を示す「0%」をセットして、パージ制御弁44の制御処理を終了する。
【0099】
ステップSV3の判定結果が「NO」の場合、すなわち、燃料カット実施中でない場合は、ステップSV4に進み、目標パージ流量となるようなパージ制御弁44の目標パージ制御弁駆動デューティ値PGCMDを算出する。
この目標パージ制御弁駆動デューティ値PGCMDの算出処理については、後ほど図15を用いて説明する。
【0100】
ステップSV5では、ステップSV4において算出した目標パージ制御弁駆動デューティ値PGCMDをパージ制御弁駆動デューティ値DOUTPGCにセットする。
そして、ステップSV6において、目標パージ流量QPGCを目標パージ流量基本値QPGCBASEで除算して得た値をパージ流量比QRATEにセットして、パージ制御弁44の制御処理を終了する。
【0101】
次に、上記した図14のステップSV4で実行される目標パージ制御弁駆動デューティ値PGCMDの算出処理について、図15のフローチャートに基づき説明する。
まず、ステップST1では、空気流量QAIRに所定の目標パージ率#KQPGBを乗じて得た値を目標パージ流量基本値QPGCBASEにセットする。
【0102】
次いで、この目標パージ流量基本値QPGCBASEのリミット処理を行う。具体的には、まず、ステップST2において、目標パージ流量基本値QPGCBASEが所定のパージ流量上限値#QPGMAXよりも大きいかを判定する。その判定結果が「YES」の場合は、ステップST11に進み、目標パージ流量値QPGCMDにパージ流量上限値#QPGMAXをセットする。
【0103】
これに対し、ステップST2の判定結果が「NO」の場合は、ステップST3に進み、目標パージ流量値QPGCMDに目標パージ流量基本値QPGCBASEをセットする。
ステップST3にて目標パージ流量値QPGCMDを設定した場合が「吸入空気量比例パージ」であり、パージ流量比QRATEは「1」となる。また、ステップST11にて目標パージ流量値QPGCMDを設定した場合が「パージ流量一定パージ」であり、パージ流量比QRATEは「1」より小さな値となる。
【0104】
ステップST4では、キャニスターパージ制御絞り係数KPGTにセットされている値を所定の加算値#DKPGTだけインクリメントする。これにより、パージ量は時間の経過とともに徐々に増量される。
このステップST4の処理は、本発明のパージ制限手段に対応するパージ流量演算部61が実行する。
【0105】
次いで、キャニスターパージ制御絞り係数KPGTのリミット処理を行う。具体的には、まず、ステップST5において、キャニスターパージ制御絞り係数KPGTが「1.0」よりも大きいかを判定し、その判定結果がYESの場合は、ステップST6に進み、キャニスターパージ制御絞り係数KPGTに「1.0」をセットする。これに対し、ステップST5の判定結果が「NO」の場合は、ステップST6をスキップする。
【0106】
そして、ステップST7において、ステップST3又はステップST11の処理でセットした目標パージ流量値QPGCMDにステップST4の処理で算出したキャニスターパージ制御絞り係数KPGTを乗じて得た値を目標パージ流量値QPGCにセットする。
【0107】
次に、ステップST8において、パージ流量をデューティ値に変換するための処理を実行して、目標パージ制御弁駆動デューティ値PGCMDの算出処理を終了する。この変換処理では、目標パージ流量QPGCに所定の係数#KDUTYを乗じ、更にこれを差圧KDPBGで除算して得た値を目標パージ制御弁駆動デューティ値PGCMDとしてセットする。なお、差圧KDPBGは、吸気管内絶対圧との相関テーブルを検索することにより取得する。
【0108】
次に、上記した図13のステップSX6,ステップSX12の判定処理に用いられるパージ補正係数KAFEVACTを算出するための算出処理について、図16のフローチャートに基づき説明する。
【0109】
まず、ステップSR1において、フラグF_AFFBのフラグ値にフィードバック制御実施中を示す「1」がセットされているかを判定する。その判定結果が「YES」の場合、すなわち、フィードバック制御実施中の場合は、ステップSR21に進む。
【0110】
ステップSR21では、パージ停止中の空燃比学習値KREFXから、DKAFEVXLを減算して得られた値が、空燃比フィードバック係数KO2よりも大きいかを判定する。その判定結果が「YES」の場合は、ステップSR22に進み、パージ濃度が推定値より濃い状態なので、パージ濃度係数KAFEVに所定の加算値#DKEVAPOPをインクリメントする。
【0111】
これに対し、ステップSR21の判定結果が「NO」の場合は、ステップSR23に進み、パージ実施中の空燃比学習値KREFXに、DKAFEVXHを加算して得られた値が、空燃比フィードバック係数KO2よりも小さいかを判定する。その判定結果が「YES」の場合は、ステップSR24に進み、パージ濃度が推定値より薄い状態なので、パージ濃度係数KAFEVから所定の減算値#DKEVAPOMをデクリメントする。
【0112】
ステップSR1の判定結果が「NO」の場合、すなわち、フィードバック制御実施中でない場合は、パージ濃度係数KAFEVのリミット処理を行う。
具体的には、まず、ステップSR3において、パージ濃度係数KAFEVが「0」よりも大きいかを判定する。その判定結果が「NO」の場合は、ステップSR4に進み、パージ濃度係数KAFEVに「0」をセットする。
【0113】
これに対し、ステップSR3の判定結果が「YES」の場合は、ステップSR31に進み、パージ濃度係数KAFEVが所定のリミット値#KAFEVLMTよりも大きいかを判定する。その判定結果が「YES」の場合は、ステップSR32に進み、パージ濃度係数KAFEVにリミット値#KAFEVLMTをセットする。これに対し、ステップSR31の判定結果が「NO」の場合は、ステップSR32をスキップする。
【0114】
次に、ステップSR5において、目標パージ補正係数KAFEVACZを算出する。この目標パージ補正係数KAFEVACZは、次式に従い算出する。
目標パージ補正係数KAFEVACZ
=パージ濃度係数KAFEV×パージ流量比QRATE
このステップSR5の処理は、本発明のパージ濃度推定手段に対応するパージ濃度推定部62が実行する。
【0115】
なお、パージ濃度係数KAFEVについては、本フローのステップSR4又はステップSR32においてセットされており、また、パージ流量比QRATEについては、上記した図14のステップSV6においてセットされている。
そして、ステップSR6において、ステップSR5で算出した目標パージ補正係数KAFEVACZをパージ補正係数KAFEVACTにセットして、バージ補正係数KAFEVACTを算出するための算出処理を終了する。
ここで算出されたバージ補正係数KAFEVACTを用いて燃料噴射量を減量補正する。
【0116】
以上の実施の形態では、パージ開始初期にパージ量を制限している時およびその後所定時間、学習許可手段による学習許可の判定を行わず、前回の学習許可判定の結果に基づき、学習の許可/不許可を決定するようにしている。
これにより、パージ量を通常よりも制限している場合には、実パージ濃度と推定パージ濃度との間にズレが生じるが、この推定パージ濃度を基に学習の許可判定をして、空燃比を誤学習してしまうことを有効に防止し得るようになり、空燃比の学習値を高精度に算出することができる。
【0117】
なお、以上の実施の形態においては、基本燃料噴射量TIMとエンジン回転数Neとから求められる吸入空気量相関値NTIを用いる場合を例にとり説明したが、この吸入空気量相関値NTIに代えて他の吸入空気量相関値を用いたり、内燃機関の吸入空気量を直接検出するセンサを設け、このセンサで検出した吸入空気量を上記吸入空気量相関値NTIに代えて用いたりすることも勿論可能である。
【0118】
また、以上の実施の形態においては、上流O2センサ17で空燃比を検出する場合を例にとり説明したが、これに代えてリニアA/Fセンサで空燃比を検出することも可能である。
【0119】
【発明の効果】
以上詳述したように、本発明によれば、パージ濃度推定値が実際のパージ濃度を示す状態になった時に、パージの影響が小さいことをパージ濃度推定値より判断し、パージの影響が小さいと判断したときに学習を許可する構成としたので、パージの影響を防止して精度の高い学習値を算出することが可能となる。
【図面の簡単な説明】
【図1】 本発明の一の実施の形態を示す全体構成図である。
【図2】 本発明の一の実施の形態の制御系を示すブロック図である。
【図3】 本発明の一の実施の形態の燃料噴射制御の制御内容を示すフローチャートである。
【図4】 本発明の一の実施の形態の空燃比学習値マップを模式的に示す図である。
【図5】 本発明の一の実施の形態の空燃比学習値の補間計算を説明するための図である。
【図6】 本発明の一の実施の形態の空燃比学習値の補正に用いられる大気圧補正テーブルを模式的に示す図である。
【図7】 本発明の一の実施の形態の空燃比フィードバック係数の算出処理の制御内容を示すフローチャートである。
【図8】 本発明の一の実施の形態のO2センサの出力(a)およびフラグF_PVREFの状態(b)を示すタイミングチャートである。
【図9】 本発明の一の実施の形態の空燃比フィードバック係数KO2の値(a)およびフラグF_PVREFの状態(b)を示すタイミングチャートである。
【図10】 本発明の一の実施の形態の空燃比学習値の算出処理の制御内容の一部を示すフローチャートである。
【図11】 本発明の一の実施の形態の空燃比学習値の算出処理の制御内容の残りの一部(図10の続き)を示すフローチャートである。
【図12】 本発明の一の実施の形態の空燃比学習値の算出処理の制御内容の残りの一部(図11の続き)を示すフローチャートである。
【図13】 図11のステップSW5で実行されるバージ濃度が濃いかの判定処理の制御内容を示すフローチャートである。
【図14】 パージ流量が最適な流量となるようなパージ制御弁の制御内容を示すフローチャートである。
【図15】 図14のステップSV4で実行される目標パージ制御弁駆動デューティ値の算出処理の制御内容を示すフローチャートである。
【図16】 図13のステップSX6,ステップSX12の判定処理に用いられるパージ補正係数の算出処理の制御内容を示すフローチャートである。
【図17】 本発明の一の実施の形態の空燃比学習値の算出処理で用いられる学習値の更新記憶の実行許可を判断するしきい値テーブルである。
【符号の説明】
10 吸気管内絶対圧センサ(運転状態検出手段)
14 回転情報センサ(運転状態検出手段)
17 上流O2センサ(空燃比検出手段)
44 パージ制御弁(パージ制御手段)
51 空燃比F/B係数演算部(フィードバック制御手段)
53 空燃比学習値格納部(空燃比学習値算出手段)
54 基本燃料噴射量演算部(基本燃料量算出手段)
55 燃料噴射量演算部(燃料供給量算出手段)
58 空燃比学習実行判定部(学習許可手段)
61 パージ流量演算部(パージ制限手段)
62 パージ濃度推定部(パージ濃度推定手段、学習許可判断禁止手段)[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a fuel supply amount control apparatus for an internal combustion engine that performs learning control of an air-fuel ratio.
[0002]
[Prior art]
An average value of the air-fuel ratio correction coefficient is calculated and the air-fuel ratio of the air-fuel mixture supplied to the internal combustion engine is controlled using the average value at the time of air-fuel ratio feedback control. Japanese Patent Publication No. 7-11701 discloses that the operation is performed when the vaporized fuel is equal to or lower than a predetermined value.
In addition, in order to prevent deterioration of exhaust characteristics due to the supply of high-concentration evaporated fuel to the engine at the beginning of the purge, the purge flow rate is reduced from the normal purge flow rate at the start of the purge, and after that, It is known to increase the purge flow rate so as to approach the normal purge flow rate as time passes.
[0003]
[Problems to be solved by the invention]
However, in the conventional apparatus, particularly in the apparatus that estimates the purge concentration according to the air-fuel ratio correction amount, the calculated purge concentration is the actual purge concentration in a state where the purge is more normally restricted at the beginning of the purge. If the learning permission is judged based on this purge concentration, the purge concentration is judged to be low even though high concentration fuel vapor is actually purged. May be permitted, and the learning value may be shifted due to the influence of the evaporated fuel.
In addition, when learning is performed to prevent the influence of purging, it may be possible to stop the purging so that it is not affected by the purging. In this case, the amount that can be purged is increased by increasing the frequency of learning. There is a problem that evaporative fuel accumulates in the canister.
[0004]
The present invention has been made to solve such a problem, and is a fuel supply amount control device for an internal combustion engine that can calculate the learned value with high accuracy by preventing the influence of evaporated fuel without stopping the purge. The purpose is to provide.
[0005]
[Means for Solving the Problems]
In order to achieve the above object, the invention described in
[0006]
According to such a configuration, when the purge amount is limited at the beginning of the purge start and for a predetermined time thereafter, the learning permission is not determined by the learning permission means, and based on the previous learning permission determination result, the learning permission / Denial is determined. For this reason, the purge amount is lower than usual. Lose weight In the case of restriction, even if there is a deviation between the actual purge concentration and the estimated purge concentration, erroneous learning of the air-fuel ratio based on the estimated purge concentration can be effectively prevented. Thus, the learning value of the air-fuel ratio can be calculated with high accuracy.
[0007]
DETAILED DESCRIPTION OF THE INVENTION
An embodiment of the present invention will be described below with reference to the drawings.
FIG. 1 is a diagram showing an embodiment of the present invention. In the figure,
[0008]
An
[0009]
An intake air temperature (TA)
[0010]
An internal combustion engine water temperature (TW)
[0011]
A
[0012]
The
[0013]
The
[0014]
The exhaust
[0015]
The evaporative
[0016]
The
[0017]
The
[0018]
For example, as shown in FIG. 2, the
[0019]
Further, the learning value of the air-fuel ratio correction amount is calculated. More specifically, the average value KO2MEN of the air-fuel ratio feedback coefficient calculated by the air-fuel ratio F / B
[0020]
Further, the amount of fuel supplied to the internal combustion engine is calculated in accordance with the basic fuel amount, the air-fuel ratio correction amount, and the air-fuel ratio learning value. More specifically, the air-fuel ratio learning is performed from the storage position corresponding to the operating state of the internal combustion engine. A fuel injection amount calculation unit (fuel supply amount calculation means) 55 that searches for a value KTIM and sets a fuel injection time TOUT corresponding to the fuel injection amount injected into the internal combustion engine based on the air-fuel ratio learning value KTIM; A fuel
[0021]
Furthermore, when the purge is started by the
[0022]
The air-fuel ratio learning
[0023]
The control content of the fuel injection control by the
The
[0024]
A basic fuel injection amount map in which a basic fuel injection amount (basic fuel injection time) TIM is set corresponding to each operation state defined by the engine speed Ne and the intake pipe absolute pressure Pb is stored in the memory circuit of the
[0025]
The battery backup RAM constituting the storage circuit of the
[0026]
Here, for example, as shown in FIG. 4, the air-fuel ratio learning value map described above has eight regions (horizontal in FIG. 4) in which the engine speed Ne is partitioned by nine lattice points of # NKTIM + 0 to
[0027]
The initial value of the air-fuel ratio learning value KTIM is 1.0, and the air-fuel ratio learning value is an air-fuel ratio described later that is executed every predetermined time (10 ms) separately from the flowchart of the fuel injection control shown in FIG. It is corrected and updated as necessary in the calculation process of the air-fuel ratio learning value KTIM executed in the calculation process of the feedback coefficient KO2.
[0028]
When the air-fuel ratio learned value KTIM is read from the air-fuel ratio learned value map, interpolation calculation is performed. That is, first, as shown in FIG. 5, an intermediate value between adjacent grid points that divide the RAM area is set as a grid point for interpolation calculation. Specifically, for example, with respect to grid points # NKTIM2, # NKTIM3, # PBKTIM3, # PBKTIM4 that divide the RAM area, (NKTIM2 + NKTIM3) / 2, (PBKTIM3 + PBKTIM4) / 2 is set as a grid point A1 for interpolation calculation, and the grid For point # NKTIM3, # NKTIM4, # PBKTIM3, # PBKTIM4, (NKTIM3 + NKTIM4) / 2, (PBKTIM3 + PBKTIM4) / 2 are set as the grid point A2 for interpolation calculation, and grid points # NKTIM4, # NKTIMIM5, # PBKTIM3, # PBKTIM3, # PBKTIM3 On the other hand, (NKTIM4 + NKTIM5) / 2, (PBKTIM3 + PBKTIM4) / 2 are set as the interpolation calculation grid point A3, and the grid points # NKTIM2, # NKTIM3, # PBKTIM4, #PBKT For M5, (NKTIM2 + NKTIM3) / 2, (PBKTIM4 + PBKTIM5) / 2 is set as a grid point A4 for interpolation calculation, and for grid points # NKTIM3, # NKTIM4, # PBKTIM4, # PBKTIM5, (NKTIM3 + NKTIM4) / 2, (+ PBKTIM) ) / 2 is the interpolation calculation grid point A5, and for the grid points # NKTIM4, # NKTIM5, # PBKTIM4, # PBKTIM5, (NKTIM4 + NKTIM5) / 2, (PBKTIM4 + PBKTIM5) / 2 is the interpolation calculation grid point A6, and , Lattice points # NKTIM2, # NKTIM3, # PBKTIM5, # PBKTIM6, (NKTIM2 + NKTIM3) / 2, (PBKTIM5 + PBKTIM6) / 2 A7, and for grid points # NKTIM3, # NKTIM4, # PBKTIM5, # PBKTIM6, (NKTIM3 + NKTIM4) / 2, (PBKTIM5 + PBKTIM6) / 2 are set as a grid point A8 for interpolation calculation, and grid points # NKTIM4, # NKTIM5, # PBKTIM5 , # PBKTIM6, (NKTIM4 + NKTIM5) / 2 and (PBKTIM5 + PBKTIM6) / 2 are set as the interpolation calculation grid point A9. Then, the four interpolation calculation grid points (interpolation calculation grid points A1, A1 shown in FIG. 5) that are closest to the position corresponding to the engine speed Ne and the intake pipe absolute pressure Pb (for example, the position A0 shown in FIG. 5). A2, A4, and A5) are calculated, and interpolation calculation is performed so as to weight each distance from these four interpolation calculation grid points.
[0029]
Further, the correction according to the following equation is performed on the KTIM thus calculated by interpolation using the atmospheric pressure correction coefficient KTKPA calculated from the detection value of the
KTIM = (KTIM−1.0) × KTKPA + 1.0
[0030]
Further, in the memory circuit of the
[0031]
In step SA4, the
TOUT = TIM * KTIM * KO2 + TIVB
This calculation is executed by the fuel injection
[0032]
Then, the
[0033]
When the fuel injection time TOUT is thus calculated in step SA4 and the
[0034]
Next, calculation processing for calculating the air-fuel ratio feedback coefficient KO2T used in step SA3 of the fuel injection control flowchart described above, and calculation of this air-fuel ratio feedback coefficient KO2T used in step SA2 of the fuel injection control flowchart. The calculation process for calculating the air-fuel ratio learning value KTIM executed in step SB15 during the process will be described.
[0035]
First, calculation processing for calculating the air-fuel ratio feedback coefficient KO2T according to the output of the
[0036]
First, in step SB1, whether or not the output of the
[0037]
If the flag F_PVREF is inverted in step SB1, it is determined whether or not the flag F_PVREF is 1 in step SB2. If the flag F_PVREF is 1 in step SB2, that is, if the current air-fuel ratio is on the rich side, the rich timer value RDLY is set in the delay timer TRLDLY in step SB3, while the flag in step SB2 If F_PVREF is 0, that is, if the current air-fuel ratio is on the lean side, the lean timer value LDLY is set in the delay timer TRLDLY in step SB4. The delay timer TRLDLY is automatically counted down every predetermined time after being set.
[0038]
After step SB3 and after step SB4, the flag F_KO2WIN is set to “0” in step SB5.
[0039]
If the flag F_PVREF is not inverted in step SB1, it is determined in step SB6 whether the delay timer TRLDLY = 0. If delay timer TRLDLY = 0 in step SB6, it is determined in step SB7 whether flag F_PVREF is 1.
[0040]
If the flag F_PVREF is 1 in step SB7, that is, if the current air-fuel ratio is on the rich side, it is determined in step SB8 whether or not the flag F_KO2WIN = 1. If the flag F_KO2WIN is not 1 in step SB8, a value obtained by subtracting the predetermined value KO2WR for dramatically correcting from the current air-fuel ratio feedback coefficient KO2T in step SB9 is set as a new air-fuel ratio feedback coefficient KO2T. In step SB10, the flag F_KO2WIN is set to “1”. On the other hand, if the flag F_KO2WIN = 1 in step SB8, the value obtained by subtracting the predetermined value IL for gradually correcting from the current air-fuel ratio feedback coefficient KO2T in step SB11 is the new current air-fuel ratio feedback coefficient. Let it be KO2T.
[0041]
If the flag F_PVREF is not 1 in step SB7, that is, if the current air-fuel ratio is on the lean side, it is determined in step SB12 whether the flag F_KO2WIN = 1. If the flag F_KO2WIN is not 1 in step SB12, a value obtained by adding a predetermined value KO2WL for dramatically correcting the current air-fuel ratio feedback coefficient KO2T in step SB13 is set as a new air-fuel ratio feedback coefficient KO2T. In step SB10, the flag F_KO2WIN is set to “1”. On the other hand, if the flag F_KO2WIN = 1 in step SB12, a value obtained by adding a predetermined value IR for gradually correcting the current air-fuel ratio feedback coefficient KO2T in step SB14 is a new air-fuel ratio feedback coefficient KO2T. And
[0042]
After step SB5, when the determination at step SB6 is NO, after step SB10, after step SB11, and after step SB14, in step SB15, calculation processing of the air-fuel ratio learning value KTIM (described later) I do. When the process of step SB15 is finished, the calculation process for calculating the air-fuel ratio feedback coefficient KO2T shown in FIG. 7 is finished.
[0043]
Here, the above will be described in light of the timing chart shown in FIG. 9. When the flag F_PVREF changes from “0” to “1” at time t1, the determination in step SB1 becomes YES, and the determination in step SB2 Is YES, the timer value RDLY is set to the delay timer TRLDLY in step SB3, and the flag F_KO2WIN is set to “0” in step SB5.
[0044]
Then, in the next control cycle, the determination in step SB1 is NO, and the air-fuel ratio feedback coefficient KO2T is maintained as it is until the delay timer TRLDLY = 0 in step SB6 (time points t1 to t2). At time t2 when the delay timer TRLDLY = 0 in step SB6, the current air-fuel ratio is on the rich side and the flag F_PVREF = 1, so that the determination in step SB7 is YES, and further in step SB8 the flag F_KO2WIN = 1 becomes NO, and a value obtained by subtracting the predetermined value KO2WR for dramatically correcting from the current air-fuel ratio feedback coefficient KO2T in step SB9 is set as a new air-fuel ratio feedback coefficient KO2T. In step SB10, the flag F_KO2WIN is set to “1”.
[0045]
Then, in the next control cycle, the determination in step SB8 is YES, and in step SB11, a value obtained by subtracting a predetermined value IL for gradually correcting from the current air-fuel ratio feedback coefficient KO2T is set as a new current empty cycle. The fuel ratio feedback coefficient is KO2T. Then, step SB11 is repeated until the determination of inversion of the next flag F_PVREF is YES in step SB1, and the air-fuel ratio feedback coefficient KO2T is gradually decreased (time t2 to t3).
[0046]
Next, when the flag F_PVREF changes from “0” to “1” at time t3, the determination in step SB1 is YES, the determination in step SB2 is NO, and the timer value LDLY is set to the delay timer in step SB4. TRLDLY is set, and the flag F_KO2WIN is set to “0” in step SB5.
[0047]
Then, in the next control cycle, the determination in step SB1 is NO, and the air-fuel ratio feedback coefficient KO2T is maintained as it is until the delay timer TRLDLY = 0 in step SB6 (time points t3 to t4). When the delay timer TRLDLY = 0 in step SB6, since the current air-fuel ratio state is on the lean side at time t4 and the flag F_PVREF = 1 is not satisfied, the determination in step SB7 is NO, and the flag is further determined in step SB12. F_KO2WIN = 1 becomes NO, and a value obtained by adding a predetermined value KO2WL for dramatically correcting to the current air-fuel ratio feedback coefficient KO2T in step SB13 is set as a new air-fuel ratio feedback coefficient KO2T. In step SB10, the flag F_KO2WIN is set to “1”.
[0048]
Then, in the next control cycle, the determination in step SB12 is YES, and in step SB14, a value obtained by adding a predetermined value IR for gradually correcting to the current air-fuel ratio feedback coefficient KO2T is set as a new current empty cycle. The fuel ratio feedback coefficient is KO2T. Then, step SB14 is repeated until the determination of inversion of the next flag F_PVREF is YES in step SB1, and the air-fuel ratio feedback coefficient KO2T is gradually increased (time t4 to t5).
[0049]
The air-fuel ratio feedback coefficient KO2T is calculated as described above.
The calculation process of the air-fuel ratio feedback coefficient KO2T is executed by the air-fuel ratio F / B
[0050]
Next, the calculation process for calculating the air-fuel ratio learning value KTIM executed in step SB15 of the above-described calculation process of the air-fuel ratio feedback coefficient KO2T will be described based on the flowcharts of FIGS.
[0051]
First, in step SC1 of FIG. 10, whether or not the flag F_PVREF in the previous control cycle is “0” and the flag F_PVREF in the current control cycle is “1”, that is, the output VO2 of the
[0052]
If the determination in step SC1 is NO, the counter CPPVO2 is incremented by “1” in step SC2.
[0053]
Next, in step SC3, whether or not the flag F_PVREF in the previous control cycle is “1” and the flag F_PVREF in the current control cycle is “0”, that is, the output VO2 of the
[0054]
If the determination in step SC3 is yes, in step SC4, the current air-fuel ratio feedback coefficient KO2T is stored as the minimum value KO2MIN of the air-fuel ratio feedback coefficient.
[0055]
When the determination at step SC3 is NO and after step SC4, the flag F_KTIMG is set to “0” at step SC5.
[0056]
If the determination in step SC1 is YES, that is, if the output VO2 of the
[0057]
Next, in step SC9, the minimum value KO2MIN and the maximum value KO2MAX of the air-fuel ratio feedback coefficient are added and divided by 2, thereby calculating the average value KO2MEN of the air-fuel ratio feedback coefficient. In step SC10, the flag F_KTIMG is set to “1”.
[0058]
Here, the above will be described in light of the timing chart shown in FIG. 9. When the flag F_PVREF changes from “0” to “1” at time t1, the determination in step SC1 becomes YES, and in step SC7, the counter CFPVO2 Is “0”.
[0059]
In the next control cycle, the determination in step SC1 is NO, and in step SC2, the counter CPPVO2 is incremented by “1”. Then, from the time point t1 when the flag F_PVREF changes from “0” to “1”, the determination at step SC1 becomes YES, that is, from 0 until the time point t5 when the flag F_PVREF changes from “0” to “1”. In step SC6, the counter CFPVO2 incremented by 1 for each control cycle is stored as the inversion cycle FPVO2. Note that such calculation of the inversion period FPVO2 is performed in the O2 sensor inversion
[0060]
If the flag F_PVREF changes from “1” to “0” at time t3, the determination at step SC3 is YES, and at step SC4, the air-fuel ratio feedback coefficient KO2T at that time is stored as the minimum value KO2MIN. Thereafter, when the flag F_PVREF changes from “0” to “1” at time t5, the determination in step SC1 becomes YES, and in step SC8, the air-fuel ratio feedback coefficient KO2T at that time is set to its maximum value. While storing as KO2MAX, the average value KO2MEN is calculated and stored in step SC9. Then, when the inversion period FPVO2 is calculated in step SC6 and the average value KO2MEN of the air-fuel ratio feedback coefficient is calculated in step SC9, the flag F_KTIMG indicating that these calculations are completed is set to “1” in step SC10.
[0061]
Here, the average value KO2MEN of the air-fuel ratio feedback coefficient is obtained from the average of the maximum value KO2MAX and the minimum value KO2MIN, but after the flag F_PVREF changes from “1” to “0”, the flag F_PVREF becomes “1”. Alternatively, the average value may be obtained by adding the air-fuel ratio feedback coefficient KO2T obtained in all the control cycles from when the value is changed to “0” and dividing by the number of additions.
[0062]
After step SC5 and after step SC10, in step SW1 of FIG. 11, it is determined whether or not “1” indicating that purge is being performed is set in the flag value of the flag F_PGACT. If the determination result is “YES”, that is, if the purge is being performed, the process proceeds to step SW2, and if “NO”, that is, if the purge is stopped, the processing after step SW2 is skipped, and FIG. The process proceeds to step SC11.
[0063]
In step SW2, it is determined whether or not “1” indicating permission of learning permission determination executed in step SW6 described later is set in the flag value of the flag F_PGKTIM. If the determination result is “YES”, the process proceeds to step SW3, and if “NO”, the process proceeds to step SW21. Here, the flag F_PGKTIM is set to “0” at the time of starting.
The processing of step SW2 is executed by the air-fuel ratio learning
[0064]
In step SW3, a predetermined timer value #TMKIST is set in the down timer TKIST.
In step SW4, it is determined whether the timer value of the down timer TKTIGO set in step SW21 described later is “0”. If the determination result is “YES”, the process proceeds to step SW11, and if “NO”, the process proceeds to step SW5.
In step SW11, “0” indicating prohibition of learning permission judgment executed in step SW6 described later is set in the flag value of the flag F_PGTIM.
[0065]
In step SW12, “0” indicating prohibition of learning of the air-fuel ratio is set in the flag value of the flag F_PKTIMOMOK, all the processes after step SC11 in FIG. .
In step SW5, which is executed when the determination result in step SW4 is “NO”, a determination process is performed to determine whether the barge density is high. This determination process will be described later with reference to FIG.
[0066]
In step SW6, it is determined whether or not the flag value of the flag F_PKTIMOMOK is “1” indicating the learning permission of the air-fuel ratio. If the determination result is “YES”, that is, if the air-fuel ratio learning is performed, FIG. The process proceeds to step SC11. If “NO”, that is, if the air-fuel ratio learning is not performed, all the processes after step SC11 in FIG. 12 are skipped, and the calculation process of the air-fuel ratio learned value KTIM ends.
The processing of step SW6 is executed by the air-fuel ratio learning
[0067]
In step SW21 that is executed when the determination result in step SW2 is “NO”, a predetermined timer value #TMKTIGO is set in the timer TKTIGO.
In Step SW22, it is determined whether the timer value of the timer TKTIST is “0”. When the determination result is “YES”, the process proceeds to step SW23, and when it is “NO”, all the processes after step SC11 in FIG. 12 are skipped, and the calculation process of the air-fuel ratio learning value KTIM is ended.
[0068]
In step SW23, if the flag value of the flag F_PGKTIM is set to “1” indicating prohibition of the learning permission determination executed in step SW6, all the processes after step SC11 in FIG. The calculation process of the learning value KTIM ends.
If the learning process shown in FIG. 11 is continuously performed, the learning value is shifted by learning the influence of the purge. Therefore, the learning process shown in FIG. 11 is performed in predetermined cycles #TMKTIGO, #TMKTIIST (for example, 20 Every minute).
[0069]
In step SC11 of FIG. 12, the air-fuel ratio learning value KTIM in the RAM area detected from the engine speed Ne and the intake pipe absolute pressure Pb at that time is retrieved and read from the air-fuel ratio learning value map (see FIG. 4). . In step SC12, it is determined whether or not there is a change (shift to another RAM area) in the RAM area in which the air-fuel ratio learning value KTIM is stored during one inversion period measurement, and there is a change in the RAM area. In this case, since the operating state has changed, the flag F_KTIMA indicating that is set to “1” in step SC13.
[0070]
If there is no change in the RAM area in step SC12 and if the flag F_KTIMA is set to “1” in step SC13, it is determined in step SC14 whether or not the flag F_KTIMG = 1. If the flag F_KTIMG = 1 is not satisfied. Since the inversion period FPVO2 and the average value KO2MEN of the air-fuel ratio feedback coefficient are not calculated, the processing of the flowcharts shown in FIGS. 10 to 12, that is, step SB15 of the flowchart shown in FIG.
[0071]
If the flag F_KTIMG = 1 in step SC14, that is, if the inversion period FPVO2 and the average value KO2MEN of the air-fuel ratio feedback coefficient are calculated, it is determined in step SC15 whether the flag F_IDLE = 1. The flag F_IDLE is set to “1” under a predetermined condition in which it is determined that the internal combustion engine is in an idling state, and is set to “0” under a predetermined condition in which it is determined that the internal combustion engine is not in an idling state.
[0072]
In step SC15, if the flag F_IDLE = 1, that is, if the internal combustion engine is in an idling state, in step SC16, the inversion cycle FPVO2 stored in step SC6 is higher than the lower threshold value # FPVO2IL. It is determined whether or not it is within one learning permission range defined by the threshold value # FPVO2IH, that is, whether # FPVO2IL ≦ FPVO2 ≦ # FPVO2IH, and if # FPVO2IL ≦ FPVO2 ≦ # FPVO2IH is not described later The update storage of the air-fuel ratio learning value KTIM executed in steps SC22 to SC24 is stopped. Here, since the engine load hardly changes when the engine is in the idling state, only the determination as to whether or not the inversion cycle FPVO2 is within the predetermined range is performed. The air / fuel ratio learning
[0073]
If the flag F_IDLE is not 1 in step SC15, that is, if the internal combustion engine is not idling, an intake air amount correlation value NTI that is correlated with the intake air amount to the internal combustion engine is calculated in step SC17. The intake air amount correlation value NTI is calculated by the intake air amount correlation
[0074]
In step SC17, first, the engine speed Ne and the intake pipe absolute pressure Pb are detected, and the basic fuel injection quantity TIM for the operating state defined by the engine speed Ne and the intake pipe absolute pressure Pb is determined as the basic fuel injection quantity. Search and read on the map. Then, the calculation is performed from the basic fuel injection amount TIM and the engine speed Ne by the following formula.
Intake air amount correlation value NTI = engine speed Ne × basic fuel injection amount TIM
[0075]
Since the basic fuel injection amount TIM is a fuel injection amount per unit rotation, the fuel injection amount per unit time can be obtained by multiplying the basic fuel injection amount TIM by the engine speed Ne, and the fuel injection amount per unit time. Is a value corresponding to the amount of intake air per unit time.
[0076]
Here, in the storage circuit of the
[0077]
In step SC18, the lower threshold data # FPVO2NNL and the upper threshold data # FPVO2NNH for the intake air amount correlation value NTI calculated in step SC17 are retrieved from the threshold table and read out, and the lower side read out The threshold data # FPVO2NNL is set as the lower threshold value FPVO2NL, and the upper threshold data # FPVO2NNH is set as the upper threshold value FPVO2NH.
[0078]
In step SC19, whether or not the inversion cycle FPVO2 stored in step SC6 is within the learning permission range defined by the lower threshold value FPVO2NL and the upper threshold value FPVO2NH, that is, FPVO2NL ≦ FPVO2 ≦ FPVO2NH. If it is determined that there is no FPVO2NL ≦ FPVO2 ≦ FPVO2NH, the execution of the update storage of the air-fuel ratio learning value KTIM executed in steps SC22 to SC24 described later is stopped. That is, when the engine is not in the idling state, the engine load fluctuates, so it is determined whether or not the inversion cycle FPVO2 is in the learning permission range set for each engine load. The air / fuel ratio learning
[0079]
If # FPVO2IL ≦ FPVO2 ≦ # FPVO2IH in Step SC16 described above and if FPVO2NL ≦ FPVO2 ≦ FPVO2NH in Step SC19, it indicates that the operation state has changed due to a change in the RAM area in Step SC20. It is determined whether or not the flag F_KTIMA is “1”.
[0080]
If F_KTIMA = 1 in step SC20, F_KTIMA is set to “0” in step SC21, and the processing of the flowcharts shown in FIGS. 10 to 12, that is, step SB15 of the flowchart shown in FIG. That is, since the operation state is not a steady state but a transitional state, execution of update storage of the air-fuel ratio learning value KTIM is stopped. The air / fuel ratio learning
[0081]
If F_KTIMA = 1 is not satisfied in step SC20, in step SC22, the deviation DKO2MEN is calculated by subtracting the reference value 1.00 from the average value KO2MEN of the air-fuel ratio feedback coefficient calculated in step SC9.
[0082]
In step SC23, a value obtained by adding the deviation DKO2MEN to the air-fuel ratio learned value KTIM (KTIMnOLD) read from the RAM area of the air-fuel ratio learned value map corresponding to the operating state in step SC11 is a new air-fuel ratio learned value KTIM. (KTIMnNEW) is updated and stored in the same RAM area. The update storage of the air-fuel ratio learning value KTIM is executed by the air-fuel ratio learning
[0083]
Further, in step SC24, limit processing is performed to keep the air-fuel ratio learned value KTIM between a predetermined lower limit value #KTIMLL and a predetermined upper limit value #KTIMLH. That is, if the air-fuel ratio learning value KTIM is not less than the lower limit value #KTIMLL and not more than the upper limit value #KTIMLH, the air-fuel ratio learning value KTIM is left as it is. When the air-fuel ratio learning value KTIM exceeds the predetermined lower limit value #KTIMMLH, this is set as the upper limit value #KTIMMLH.
[0084]
After performing the process of step SC24, the process of the flowchart shown in FIGS. 10 to 12, that is, step SB15 of the flowchart shown in FIG.
[0085]
Next, a determination process for determining whether the barge density executed in step SW5 in FIG. 11 is high will be described with reference to the flowchart in FIG.
[0086]
First, in step SX1, it is determined whether the canister purge control throttle coefficient KPGT is “1.0”. The calculation process for calculating the canister purge control throttle coefficient KPGT will be described later with reference to FIG.
If the determination result of step SX1 is “YES”, the process of step SX2 is skipped and the process proceeds to step SX3.
[0087]
On the other hand, if the decision result in the step SX1 is “NO”, the process advances to a step SX2, and a predetermined timer value #TMKTID is set in the timer TKTID.
This timer TKTID is a timer for waiting until the estimated purge concentration reaches the actual purge concentration.
[0088]
Next, in step SX3, it is determined whether or not the value set in the timer TKTID is “0”. If the determination result is “NO”, the determination process for determining whether the barge density is high is terminated, and if “YES”, the process proceeds to step SX4.
[0089]
In step SX4, it is determined whether the purge flow rate ratio QRATE is “1.0”. If the determination result is “NO”, that is, if “purge flow rate constant purge”, the process proceeds to step SX11. If “YES”, that is, if “intake air amount proportional purge”, the process proceeds to step SX5. .
The purge flow rate ratio QRATE is set in step SV6 in FIG. 14 described later.
[0090]
In step SX5 and step SX11, it is determined whether the air flow rate QAIR is within a predetermined range. The air flow rate QAIR is calculated according to the following equation using the basic fuel injection amount TIM, the engine speed NE, and a predetermined coefficient #KQAIR.
Air flow rate QAIR =
Basic fuel injection amount TIM x engine speed NE x 2 x coefficient #KQAIR
[0091]
In step SX5, it is determined whether the purge concentration is within an accurate range, that is, whether the air flow rate QAIR is not less than the lower limit value #QAIRPLL and not more than the upper limit value #QAIRPLH. If the determination result is “NO”, the determination process for determining whether the purge concentration is high is terminated, and if “YES”, the process proceeds to step SX6.
[0092]
On the other hand, in step SX11, whether the air flow rate QAIR is within the region where the purge concentration estimated value can be accurately determined, that is, whether the air flow rate QAIR is not less than the lower limit value #QAIRPHL and not more than the upper limit value #QAIRPHH. judge. If the determination result is “NO”, the determination process for determining whether the purge concentration is high is terminated, and if “YES”, the process proceeds to step SX12.
[0093]
In step SX6 and step SX12, it is determined whether the purge correction coefficient KAFEVACT is equal to or less than a predetermined upper limit value. Note that the magnitude relationship between these upper limit values is #PGCJUDL (for example, 0.10)># PGCJUDH (for example, 0.05).
Further, the purge correction coefficient KAFEVACT is set in step SR6 of FIG. 16 described later.
[0094]
In any of step SX6 and step SX12, if the determination result is “YES”, the process proceeds to step SX7, and if “NO”, the process proceeds to step SX13.
In step SX7, “1” indicating permission of learning of the air-fuel ratio is set as the flag value of flag F_PKTIMOM. In step SX13, “0” indicating that learning of the air-fuel ratio is prohibited is set as the flag value of flag F_PKTIMOMOK. Thus, the determination process for determining whether the barge density is high is completed.
[0095]
Next, a main flow for controlling the
First, in step SV1, an air flow rate QAIR calculation process is performed. This air flow rate QAIR is calculated according to the following equation.
[0096]
Air flow rate QAIR =
Basic fuel injection amount TIM x engine speed NE x 2 x coefficient #KQAIR
In step SV2, it is determined whether “1” indicating that purge is being performed is set in the flag value of the flag F_PGACT. When the determination result is “NO”, that is, when the purge is stopped, the process proceeds to step SV21, and “0%” indicating full closure is set to the purge control valve drive duty value DOUTPGC.
[0097]
Next, in step SV22, the initial value #KPGTINI is set in the canister purge control throttle coefficient KPGT, and the control process of the
If the determination result in step SV2 is “YES”, that is, if purge is being performed, the process proceeds to step SV3, and it is determined whether the flag value of the flag F_FC is “1” indicating that the fuel cut is being performed.
[0098]
If the determination result in step SV3 is “YES”, that is, if the fuel cut is being performed, the process proceeds to step SV11, and the initial value #KPGTINI is set in the canister purge control throttle coefficient KPGT.
Next, in step SV12, the purge control valve drive duty value DOUTPGC is set to “0%” indicating full closure, and the control process of the
[0099]
If the determination result in step SV3 is “NO”, that is, if the fuel cut is not being performed, the process proceeds to step SV4 to calculate the target purge control valve drive duty value PGCMD of the
The calculation process of the target purge control valve drive duty value PGCMD will be described later with reference to FIG.
[0100]
In step SV5, the target purge control valve drive duty value PGCMD calculated in step SV4 is set to the purge control valve drive duty value DOUTPGC.
In step SV6, a value obtained by dividing the target purge flow rate QPGC by the target purge flow rate basic value QPGCBASE is set to the purge flow rate ratio QRATE, and the control process of the
[0101]
Next, the calculation process of the target purge control valve drive duty value PGCMD executed in step SV4 of FIG. 14 will be described based on the flowchart of FIG.
First, in step ST1, a value obtained by multiplying the air flow rate QAIR by a predetermined target purge rate #KQPGB is set as a target purge flow rate basic value QPGCBASE.
[0102]
Next, the target purge flow rate basic value QPGCBASE is limited. Specifically, first, in step ST2, it is determined whether the target purge flow rate basic value QPGCBASE is larger than a predetermined purge flow rate upper limit value #QPGMAX. If the determination result is “YES”, the process proceeds to step ST11, and the purge flow rate upper limit value #QPGMAX is set to the target purge flow rate value QPGCMD.
[0103]
On the other hand, if the determination result in step ST2 is “NO”, the process proceeds to step ST3, where the target purge flow rate basic value QPGCBASE is set to the target purge flow rate value QPGCMD.
The case where the target purge flow rate value QPGCMD is set in step ST3 is “intake air amount proportional purge”, and the purge flow rate ratio QRATE is “1”. Further, when the target purge flow rate value QPGCMD is set in step ST11, the “purge flow rate constant purge” is set, and the purge flow rate ratio QRATE is a value smaller than “1”.
[0104]
In step ST4, the value set in the canister purge control throttle coefficient KPGT is incremented by a predetermined addition value #DKPGT. Thereby, the purge amount is gradually increased as time passes.
The process of step ST4 is executed by the purge flow
[0105]
Next, limit processing of the canister purge control throttle coefficient KPGT is performed. Specifically, first, in step ST5, it is determined whether or not the canister purge control throttle coefficient KPGT is larger than “1.0”. If the determination result is YES, the process proceeds to step ST6 and the canister purge control throttle coefficient is determined. Set “1.0” to KPGT. On the other hand, when the determination result of step ST5 is “NO”, step ST6 is skipped.
[0106]
In step ST7, a value obtained by multiplying the target purge flow rate value QPGCMD set in step ST3 or step ST11 by the canister purge control throttle coefficient KPGT calculated in step ST4 is set in the target purge flow rate value QPGC. .
[0107]
Next, in step ST8, a process for converting the purge flow rate into a duty value is executed, and the target purge control valve drive duty value PGCMD calculation process is terminated. In this conversion processing, a value obtained by multiplying the target purge flow rate QPGC by a predetermined coefficient #KDUTY and further dividing this by the differential pressure KDPBG is set as the target purge control valve drive duty value PGCMD. The differential pressure KDPBG is obtained by searching a correlation table with the intake pipe absolute pressure.
[0108]
Next, a calculation process for calculating the purge correction coefficient KAFEVACT used in the determination process of step SX6 and step SX12 of FIG. 13 will be described based on the flowchart of FIG.
[0109]
First, in step SR1, it is determined whether or not “1” indicating that feedback control is being performed is set in the flag value of the flag F_AFFB. If the determination result is “YES”, that is, if feedback control is being performed, the process proceeds to step SR21.
[0110]
In step SR21, it is determined whether the value obtained by subtracting DKAFEXL from the air-fuel ratio learned value KREFX during the purge stop is greater than the air-fuel ratio feedback coefficient KO2. If the determination result is “YES”, the process proceeds to step SR22, and the purge concentration is higher than the estimated value, so the predetermined addition value #DKEVAPOP is incremented to the purge concentration coefficient KAFEV.
[0111]
On the other hand, if the determination result in step SR21 is “NO”, the process proceeds to step SR23, and the value obtained by adding DKAFEVXH to the air-fuel ratio learning value KREFX being purged is obtained from the air-fuel ratio feedback coefficient KO2. Is also determined to be small. If the determination result is “YES”, the process proceeds to step SR24, and since the purge concentration is thinner than the estimated value, the predetermined subtraction value #DKEVAPOM is decremented from the purge concentration coefficient KAFEV.
[0112]
When the determination result in step SR1 is “NO”, that is, when the feedback control is not being performed, the purge concentration coefficient KAFEV is limited.
Specifically, first, in step SR3, it is determined whether the purge concentration coefficient KAFEV is greater than “0”. If the determination result is “NO”, the process proceeds to step SR4, and “0” is set to the purge concentration coefficient KAFEV.
[0113]
On the other hand, if the decision result in the step SR3 is “YES”, the process advances to a step SR31 to determine whether the purge concentration coefficient KAFEV is larger than a predetermined limit value #KAFEVLMT. If the determination result is “YES”, the process proceeds to step SR32, and the limit value #KAFEVLMT is set to the purge concentration coefficient KAFEV. On the other hand, if the determination result in step SR31 is “NO”, step SR32 is skipped.
[0114]
Next, in step SR5, a target purge correction coefficient KAFEVACZ is calculated. This target purge correction coefficient KAFEVACZ is calculated according to the following equation.
Target purge correction coefficient KAFEVACZ
= Purge concentration coefficient KAFEV × Purge flow rate ratio QRATE
The processing of step SR5 is executed by the purge
[0115]
The purge concentration coefficient KAFEV is set in step SR4 or step SR32 of this flow, and the purge flow rate ratio QRATE is set in step SV6 of FIG. 14 described above.
In step SR6, the target purge correction coefficient KAFEVACZ calculated in step SR5 is set to the purge correction coefficient KAFEVACT, and the calculation process for calculating the barge correction coefficient KAFEVACT ends.
The fuel injection amount is corrected to decrease using the barge correction coefficient KAFEVACT calculated here.
[0116]
In the above embodiment, when the purge amount is limited at the beginning of the purge and after a predetermined time, the learning permission is not determined by the learning permission means, and the learning permission / I try to determine the disapproval.
As a result, when the purge amount is limited more than usual, a deviation occurs between the actual purge concentration and the estimated purge concentration. Based on this estimated purge concentration, a learning permission determination is made and the air-fuel ratio is determined. It is possible to effectively prevent erroneous learning of the air-fuel ratio, and the learning value of the air-fuel ratio can be calculated with high accuracy.
[0117]
In the above embodiment, the case where the intake air amount correlation value NTI obtained from the basic fuel injection amount TIM and the engine speed Ne is used has been described as an example, but instead of this intake air amount correlation value NTI, Of course, another intake air amount correlation value may be used, or a sensor for directly detecting the intake air amount of the internal combustion engine may be provided, and the intake air amount detected by this sensor may be used in place of the intake air amount correlation value NTI. Is possible.
[0118]
In the above embodiment, the case where the
[0119]
【The invention's effect】
As described above in detail, according to the present invention, when the estimated purge concentration value shows the actual purge concentration, it is determined from the estimated purge concentration value that the influence of the purge is small, and the influence of the purge is small. Therefore, learning is permitted when it is determined that it is possible to calculate the learning value with high accuracy while preventing the influence of purge.
[Brief description of the drawings]
FIG. 1 is an overall configuration diagram showing an embodiment of the present invention.
FIG. 2 is a block diagram illustrating a control system according to an embodiment of the present invention.
FIG. 3 is a flowchart showing the contents of control of fuel injection control according to one embodiment of the present invention.
FIG. 4 is a diagram schematically showing an air-fuel ratio learning value map according to one embodiment of the present invention.
FIG. 5 is a diagram for explaining interpolation calculation of an air-fuel ratio learning value according to an embodiment of the present invention.
FIG. 6 is a diagram schematically showing an atmospheric pressure correction table used for correcting an air-fuel ratio learning value according to an embodiment of the present invention.
FIG. 7 is a flowchart showing the contents of control of calculation processing of an air-fuel ratio feedback coefficient according to one embodiment of the present invention.
FIG. 8 is a timing chart showing an output (a) of an O2 sensor and a state (b) of a flag F_PVREF according to an embodiment of the present invention.
FIG. 9 is a timing chart showing a value (a) of an air-fuel ratio feedback coefficient KO2 and a state (b) of a flag F_PVREF according to one embodiment of the present invention.
FIG. 10 is a flowchart showing a part of the control content of the calculation process of the air-fuel ratio learning value according to the embodiment of the present invention.
FIG. 11 is a flowchart showing the remaining part of the control content of the air-fuel ratio learning value calculation process according to one embodiment of the present invention (continuation of FIG. 10).
FIG. 12 is a flowchart showing the remaining part of the control content of the air-fuel ratio learning value calculation process according to one embodiment of the present invention (continuation of FIG. 11).
FIG. 13 is a flowchart showing the control contents of a determination process for determining whether the barge density is high or not, which is executed in step SW5 of FIG. 11;
FIG. 14 is a flowchart showing the contents of control of the purge control valve so that the purge flow rate becomes an optimum flow rate.
FIG. 15 is a flowchart showing the control content of a target purge control valve drive duty value calculation process executed in step SV4 of FIG. 14;
FIG. 16 is a flowchart showing control details of a purge correction coefficient calculation process used in the determination process of step SX6 and step SX12 of FIG. 13;
FIG. 17 is a threshold value table for determining permission to execute update storage of learning values used in the calculation processing of air-fuel ratio learning values according to one embodiment of the present invention.
[Explanation of symbols]
10 Intake pipe absolute pressure sensor (operating state detection means)
14 Rotation information sensor (operating state detection means)
17 Upstream O2 sensor (air-fuel ratio detection means)
44 Purge control valve (Purge control means)
51 Air-fuel ratio F / B coefficient calculation unit (feedback control means)
53 Air-fuel ratio learning value storage (air-fuel ratio learning value calculation means)
54 Basic fuel injection amount calculation unit (basic fuel amount calculation means)
55 Fuel injection amount calculation unit (fuel supply amount calculation means)
58 Air-fuel ratio learning execution determination unit (learning permission means)
61 Purge flow rate calculation unit (Purge limiting means)
62 Purge concentration estimation unit (purge concentration estimation means, learning permission judgment prohibition means)
Claims (1)
前記運転状態に応じて前記内燃機関に供給される基本燃料量を算出する基本燃料量算出手段と、
内燃機関の排気系に設けられ排気中の空燃比を検出する空燃比検出手段と、
前記空燃比検出手段の出力に応じて前記内燃機関に供給される混合気の空燃比を制御する空燃比補正量を算出するフィードバック制御手段と、
前記空燃比補正量の学習値を算出する空燃比学習値算出手段と、
前記基本燃料量と前記空燃比補正量と前記空燃比学習値に応じて前記内燃機関に供給される燃料量を算出する燃料供給量算出手段とを有する内燃機関の燃料供給量制御装置において、
前記内燃機関の吸気系に供給するパージ量を制御するパージ制御手段と、
前記空燃比補正量に基づいてパージ制御手段による蒸発燃料の濃度を推定するパージ濃度推定手段と、
前記パージ濃度推定手段により推定された蒸発燃料の濃度に関する値が所定値以下のときに前記空燃比学習値の算出を許可する学習許可手段と、
空気流量検出手段と、
空気流量に所定の目標パージ率を乗算することにより目標パージ流量基本値を算出する目標パージ流量基本値算出手段と、
前記目標パージ流量基本値が所定リミット値より大きいと判定された場合に第1目標パージ流量値に前記所定リミット値を設定するとともに、前記目標パージ流量基本値が所定リミット値以下と判定された場合に第1目標パージ流量値に前記目標パージ流量基本値を設定するリミット値設定手段と、
パージ開始後の時間経過とともに前記第1目標パージ流量値になるまで徐々に増加させるようにパージ絞り係数を設定するパージ絞り係数設定手段と、
前記第1目標パージ流量値に前記パージ絞り係数を乗ずることにより第2目標パージ流量値を算出するパージ流量算出手段と、
前記パージ制御手段によりパージが開始されるときは前記第1目標パージ流量値を前記パージ絞り係数により制限した前記第2目標パージ流量値に基づいてパージ量を制限するパージ制限手段と、
パージ量の制限開始とともに所定時間をセットするタイマ手段と、
前記パージ制限手段によりパージ量の制限が終了し、かつ、前記所定時間が経過するまでは前記学習許可手段による学習許可判断を行わない学習許可判断禁止手段と、
前記第2目標パージ流量値を前記目標パージ流量基本値で除することにより、パージ流量比を算出するパージ流量比算出手段とを有し、
前記パージ制限手段によるパージ量の制限が終了し、かつ、前記所定時間が経過した後、前記学習許可手段は、前記パージ流量比に応じてそれぞれ異なる値に設定された前記所定値に基づいて前記学習許可手段による判定を行うことを特徴とする内燃機関の燃料供給量制御装置。An operating state detecting means for detecting an operating state of the internal combustion engine;
Basic fuel amount calculating means for calculating a basic fuel amount supplied to the internal combustion engine according to the operating state;
An air-fuel ratio detecting means provided in an exhaust system of the internal combustion engine for detecting an air-fuel ratio in the exhaust;
Feedback control means for calculating an air-fuel ratio correction amount for controlling the air-fuel ratio of the air-fuel mixture supplied to the internal combustion engine in accordance with the output of the air-fuel ratio detection means;
Air-fuel ratio learning value calculating means for calculating a learning value of the air-fuel ratio correction amount;
A fuel supply amount control device for an internal combustion engine, comprising: a fuel supply amount calculation means for calculating a fuel amount supplied to the internal combustion engine in accordance with the basic fuel amount, the air-fuel ratio correction amount, and the air-fuel ratio learning value;
Purge control means for controlling the amount of purge supplied to the intake system of the internal combustion engine;
Purge concentration estimation means for estimating the concentration of the evaporated fuel by the purge control means based on the air-fuel ratio correction amount;
Learning permission means for permitting calculation of the air-fuel ratio learning value when a value related to the concentration of the evaporated fuel estimated by the purge concentration estimating means is less than or equal to a predetermined value ;
Air flow detection means;
Target purge flow rate basic value calculating means for calculating a target purge flow rate basic value by multiplying the air flow rate by a predetermined target purge rate;
When it is determined that the target purge flow basic value is greater than the predetermined limit value, the predetermined limit value is set as the first target purge flow value, and the target purge flow basic value is determined to be equal to or less than the predetermined limit value. Limit value setting means for setting the target purge flow rate basic value to the first target purge flow rate value;
Purge purge coefficient setting means for setting the purge throttle coefficient so as to gradually increase until the first target purge flow rate value with the passage of time after the start of purge;
Purge flow rate calculation means for calculating a second target purge flow rate value by multiplying the first target purge flow rate value by the purge throttle coefficient;
A purge limiting means for limiting a purge amount based on the second target purge flow value obtained by limiting the first target purge flow value by the purge throttle coefficient when the purge is started by the purge control means;
Timer means for setting a predetermined time together with the start of limiting the purge amount ;
A learning permission determination prohibiting unit that does not perform a learning permission determination by the learning permission unit until the purge limit is finished by the purge limiting unit and the predetermined time has elapsed;
A purge flow ratio calculation means for calculating a purge flow ratio by dividing the second target purge flow value by the target purge flow basic value;
After the purge amount restriction by the purge restriction unit is completed and the predetermined time has elapsed, the learning permission unit is configured to perform the learning based on the predetermined value set to a different value according to the purge flow rate ratio. A fuel supply amount control apparatus for an internal combustion engine, wherein the determination is made by a learning permission means .
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2000211827A JP4405049B2 (en) | 2000-07-12 | 2000-07-12 | Fuel supply control device for internal combustion engine |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2000211827A JP4405049B2 (en) | 2000-07-12 | 2000-07-12 | Fuel supply control device for internal combustion engine |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2002030965A JP2002030965A (en) | 2002-01-31 |
| JP4405049B2 true JP4405049B2 (en) | 2010-01-27 |
Family
ID=18707857
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2000211827A Expired - Fee Related JP4405049B2 (en) | 2000-07-12 | 2000-07-12 | Fuel supply control device for internal combustion engine |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4405049B2 (en) |
-
2000
- 2000-07-12 JP JP2000211827A patent/JP4405049B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2002030965A (en) | 2002-01-31 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2000345895A (en) | Air-fuel ratio control device for internal combustion engine | |
| JPH06330741A (en) | Air-fuel ratio controller for lean burn engine | |
| JPH0599083A (en) | Purge control device for internal combustion engine | |
| JPH0211729B2 (en) | ||
| JP4405049B2 (en) | Fuel supply control device for internal combustion engine | |
| JPH0533697A (en) | Fuel injection control device for internal combustion engine | |
| JPH08338325A (en) | Control device for internal combustion engine | |
| JPS6231179B2 (en) | ||
| JP3923241B2 (en) | Control device for internal combustion engine | |
| JP3412216B2 (en) | Exhaust gas purification device for internal combustion engine | |
| JPS593136A (en) | Learning control of air-fuel ratio of internal-combustion engine | |
| JPH0512538B2 (en) | ||
| JP3560156B2 (en) | Evaporative fuel control system for internal combustion engine | |
| JP2841806B2 (en) | Air-fuel ratio control device for engine | |
| JP3161219B2 (en) | Evaporative fuel treatment system for internal combustion engine | |
| JPS58133435A (en) | Electronically controlled fuel injection method of internal-combustion engine | |
| JPH11241644A (en) | Fuel property detection device and fuel injection amount control device for internal combustion engine | |
| JP2559782Y2 (en) | Ignition timing control device for internal combustion engine | |
| JP3123438B2 (en) | Exhaust gas purification device for internal combustion engine | |
| JP2847910B2 (en) | Fuel injection amount control device for internal combustion engine | |
| JPH059620B2 (en) | ||
| JPS60125739A (en) | Air-fuel ratio controlling apparatus for internal- combustion engine | |
| JPS60164652A (en) | Method of purging fuel vapor | |
| JPS61101639A (en) | Air-fuel ratio controlling method for internal combustion engine | |
| JP2704807B2 (en) | Engine fuel supply |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20061201 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20081222 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090106 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090309 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090609 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090810 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20091027 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20091104 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121113 Year of fee payment: 3 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131113 Year of fee payment: 4 |
|
| LAPS | Cancellation because of no payment of annual fees |