JP3946816B2 - エンジンの空燃比制御装置 - Google Patents
エンジンの空燃比制御装置 Download PDFInfo
- Publication number
- JP3946816B2 JP3946816B2 JP16004997A JP16004997A JP3946816B2 JP 3946816 B2 JP3946816 B2 JP 3946816B2 JP 16004997 A JP16004997 A JP 16004997A JP 16004997 A JP16004997 A JP 16004997A JP 3946816 B2 JP3946816 B2 JP 3946816B2
- Authority
- JP
- Japan
- Prior art keywords
- value
- learning
- learning value
- stability
- fuel ratio
- 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
- Exhaust-Gas Circulating Devices (AREA)
- Electrical Control Of Air Or Fuel Supplied To Internal-Combustion Engine (AREA)
- Combined Controls Of Internal Combustion Engines (AREA)
Description
【発明の属する技術分野】
この発明はエンジンの空燃比制御装置に関する。
【0002】
【従来の技術】
エンジンの燃費を改善すると同時にNOxを低減するため、空気と燃料の比率である空燃比を理論空燃比よりも希薄なリーン空燃比となるように燃料供給量を制御し、リーン運転時にエンジンの回転変動から燃焼の安定度(以下、単に「安定度」という。)を検出しその安定度の検出値が安定度の制御目標値よりも悪化すると、空燃比をリッチ側に補正(あるいは点火時期やEGR率を燃焼の安定する側に補正)して燃焼の安定性を確保するようにしたエンジンの運転方法が、特開昭58−160530号公報によって提案されている。
【0003】
【発明が解決しようとする課題】
ところで、安定許容限界まで余裕がある領域では、安定度が空燃比の変化に対して比較的平坦な特性を示すのであるが、空燃比が安定許容限界に近づくほど空燃比の変化に対して安定度が急峻に変化するようになるので、安定許容限界近傍で目標を越えて行き過ぎる過補正が生じやすく、この過補正により安定度が許容限界を超えてしまったのではヘジテーションやスタンブルが避けられない。したがって、リーン運転時に安定度に基づくフィードバック制御を行うだけの従来装置では、安定許容限界近傍に近づけようとすればするほど、過補正を抑制して制御安定性を高めるためフィードバック制御の応答速度を遅くする必要があり、この場合には過渡運転条件などで安定度に基づくフィードバック制御を十分に行うことができないことがあった。
ここで、「安定度に基づくフィードバック制御」とは、安定度の検出値が安定度の制御目標値と一致するように安定度補正量を更新する制御のことである。
【0004】
そこで、このような運転領域においても安定許容限界近傍での制御を可能とするため、安定度に基づくフィードバック制御に学習制御を併用することが考えられる。これを説明すると、定常時(安定度に基づくフィードバック制御条件である)に安定度に基づくフィードバック制御を十分行った後(図2の左側参照)では、空燃比のフィードバック補正量(図2では単に補正量で示す)により目標安定度での制御が可能となり、このフィードバック補正量を学習値として記憶しておく。そして、リーン運転時でも安定度に基づくフィードバック制御条件が成立しない運転時(たとえば緩加速時)になると、この学習値を補正量として用いることで(図2の右側参照)、安定度に基づくフィードバック制御が行われなくても目標安定度での制御が可能となるのである。なお、図2において点火時期をADV、空燃比をA/Fで略記している。
【0005】
しかしながら、その一方でパージガスの影響など何らかの原因によって学習値が不適当な値になったとき、安定度に基づくフィードバック制御の応答が遅いため、安定度が良好な状態に収束するまでのあいだ燃焼不安定に伴う不快感を運転者に与えることになる。
【0006】
このようなパージガスの影響などにより学習値が不適当な値になったときの安定度の悪化を防止するため、通常時の学習値とは別にベース学習値を導入し、
1)始動後にリーン運転とパージガスの導入を禁止して、理論空燃比を目標値とする空燃比のフィードバック制御を行い、その空燃比フィードバック制御中にベース学習値を更新する、
2)ベース学習値の収束後にパージガスの導入を開始して通常時の学習値を更新する、
3)リーン運転時になると、空燃比をよりリッチ側にするほうの学習値を選択し、この選択された学習値を用いて空燃比をオープン制御する
ようにしたものがあるので(特開平7−217470号公報参照)、このものを、上記の安定度に基づくフィードバック制御に学習制御を併用するものに適用して、
1)始動後にパージガスの導入を禁止して安定度に基づくフィードバック制御を行い、そのフィードバック制御中にベース学習値を更新する、
2)ベース学習値の収束後にパージガスの導入を開始して通常時の学習値(以下通常学習値という)を更新する、
3)ベース学習値の収束前はベース学習値を、またベース学習値の収束後は通常学習値を選択し、この選択された学習値を用いてリーン運転時の安定度に基づくフィードバック制御条件の非成立時に空燃比をオープン制御する
ことが考えられる。
【0007】
しかしながら、安定度に基づくフィードバック制御は前述のようにその応答速度を遅くする必要があるので、特開平7−217470号公報のように、学習値の中心値を初期値として通常学習値を更新してゆくのでは、通常学習値が収束するまでに長い時間を要し、そのあいだ空燃比が目標安定度相当値よりも過剰にリッチになったり、反対にリーンなったりしてしまう(空燃比が目標安定度相当値より過剰にリッチになったときは燃費の悪化とNOx排出量の増大が、また空燃比が目標安定度相当値より過剰にリーンになったときは燃焼不安定に伴う運転性の悪化が生じる)。
【0008】
そこで本発明は、ベース学習値の収束値を通常学習値の初期値として設定することにより、通常学習値の収束を早め、これによって空燃比が目標安定度相当値よりも過剰にリッチになったり、反対にリーンなったりしないようにすることを目的とする。
【0009】
【課題を解決するための手段】
第1の発明では、図23に示すように、リーン運転時の空燃比を初期設定する手段21と、負荷と回転数とをパラメータとする全運転領域を複数の学習領域に分割し、その各学習領域毎に通常学習値LRLDMLを記憶する手段22と、前記全運転領域より狭い所定の学習領域に1データのベース学習値BSLDMLを記憶する手段23と、このベース学習値BSLDMLが収束したかどうかを判定する手段24と、この判定結果よりベース学習値BSLDMLが収束する前はベース学習値を、またベース学習値が収束した後はそのときの負荷と回転数の属する学習領域にある前記通常学習値を選択する手段25と、燃焼の安定度FILDMPを検出する手段29と、リーン運転時に安定度に基づくフィードバック制御を行う条件かどうかを判定する手段26と、この判定結果よりリーン運転時の安定度に基づくフィードバック制御条件の成立時に前記安定度の検出値が安定度の制御目標値と一致するように安定度補正量LLDMLを算出する手段(図示しない)と、前記判定結果よりリーン運転時の安定度に基づくフィードバック制御条件の非成立時に前記選択されたほうの学習値で前記リーン運転時の初期設定の空燃比を補正する手段27と、同じくリーン運転時の安定度に基づくフィードバック制御条件の非成立時に、またリーン運転時の安定度に基づくフィードバック制御条件の成立時にもこの補正された空燃比となるようにエンジンへの燃料供給量を制御する手段28と、
前記判定結果よりリーン運転時の安定度に基づくフィードバック制御条件の成立時かつ前記ベース学習値BSLDMLが収束する前にそのときの負荷と回転数が前記ベース学習値の学習領域にあるときには前記安定度の検出値FILDMPが安定度の制御目標値LLSLと一致するように前記安定度補正量LLDMLに基づいて前記ベース学習値BSLDMLを更新する手段30と、前記判定結果よりリーン運転時の安定度に基づくフィードバック制御条件の成立時かつ前記ベース学習値BSLDMLが収束した後に前記ベース学習値BSLDMLの収束値を初期値として前記安定度の検出値FILDMPが安定度の制御目標値LLSLと一致するように前記安定度補正量に基づいてそのときの負荷と回転数の属する学習領域にある前記通常学習値LRLDMLを更新する手段31とを設けた。
第2の発明では、第1の発明においてベース学習値BSLDMLを更新した回数を計測する学習カウンタCBSLDMが所定値NBSLDM#以上となったとき、ベース学習値BSLDMLが収束したと判定する。
第3の発明では、第1または第2の発明において前記判定結果よりリーン運転時の安定度に基づくフィードバック制御条件の成立時かつ前記ベース学習値BSLDMLが収束する前にそのときの負荷と回転数がベース学習値の学習領域にないときにはそのときの負荷と回転数の属する学習領域の通常学習値LRLDMLを前記安定度補正量LLDMLに基づいて更新する。
【0011】
第4の発明では、第1の発明において前記ベース学習値BSLDMLの収束値をすべての学習領域の通常学習値の初期値として設定する。
【0012】
第5の発明では、第1の発明において前記ベース学習値BSLDMLの収束値に、ベース学習値BSLDMLの更新を行う領域と前記通常学習値の各学習領域との運転条件の差に応じたリッチ化マージンINTMGNを加えた値を前記通常学習値の初期値として学習領域毎に設定する。
【0014】
第6の発明では、第1から第5までのいずれか一つの発明において前記燃焼の安定度がエンジンの回転変動から検出する。
【0015】
【発明の効果】
第1の発明では、ベース学習値の更新より通常学習値の更新へと移行するとき、学習値の中心値からでなく、ベース学習値の収束値を初期値として通常学習値の更新を開始するので、学習値の中心値より通常学習値の更新を開始する場合にくらべて、学習値が要求値により近い値となることから、通常学習値の更新速度がもともと遅くても、通常学習値の収束を早めることができ、これによって、空燃比が目標安定度相当値よりも過剰にリッチになったり、反対にリーンなったりすることがない。
【0016】
また、ベース学習値より通常学習値に移行する場合においてベース学習値の収束値が学習値の中心値から外れているときでも、学習値の中心値を初期値として通常学習値の更新を開始する従来装置では、ベース学習値より通常学習値への移行時に空燃比がステップ的に切換わり、これによって移行前後でトルク段差を生じて運転者に不快感を与えることになるのであるが、第1の発明では、ベース学習値より通常学習値への移行時の空燃比段差がなくなり、これによって移行前後でのトルク段差に伴う運転者への不快感を回避することができる。
【0018】
第5の発明では、ベース学習値の更新を行う領域と通常学習値の各学習領域との運転条件の差に応じたリッチ化マージンをベース学習値の収束値に加算した値を通常学習値の初期値として学習領域毎に設定するので、1データであるベース学習値を更新したときの運転領域とそのベース学習値が格納される通常学習値の学習領域とが離れていても、ベース学習値より通常学習値への移行当初に空燃比がサージ限界よりもリーン側に外れることがない。
【0019】
【発明の実施の形態】
図1において、1はエンジン本体で、吸入空気はエアクリーナから吸気管8を通ってシリンダに供給される。燃料は、運転条件に応じて所定の空燃比となるようにコントロールユニット(図ではC/Uで略記)2よりの噴射信号に基づき燃料噴射弁7からエンジン1の吸気ポートに向けて噴射される。
【0020】
コントロールユニット2にはディストリビュータに内蔵されるクランク角センサ4からのRef信号と1度信号、エアフローメータ6からの吸入空気量信号、三元触媒10の上流側に設置したO2センサ3からの空燃比(酸素濃度)信号、さらには水温センサ15からの冷却水温信号、スロットルセンサからのスロットルバルブ開度信号、トランスミッションのギヤ位置センサからのギヤ位置信号、車速センサ16からの車速信号等が入力し、これらに基づいて運転状態を判断しながら条件に応じてリーン空燃比と理論空燃比との制御を行う。
【0021】
排気管9には三元触媒10が設置され、理論空燃比の運転時に最大の転換効率をもって、排気中のNOxの還元とHC、COの酸化を行う。なお、この三元触媒10はリーン空燃比のときはHC、COを酸化するが、NOxの還元効率は低い。しかし、空燃比がリーン側に移行すればするほどNOxの発生量は少なくなり、所定の空燃比以上では三元触媒10で浄化するのと同じ程度にまで下げることができ、同時に、リーン空燃比になるほど燃費が改善される。反面、リーン空燃比での運転時には、運転条件によって燃焼が不安定になりやすい。
【0022】
したがって、負荷のそれほど大きくない所定の運転領域においてリーン空燃比による運転を行い、同時に燃焼の安定度を検出し、この安定度の検出値がその制御目標値と一致するようにリーン空燃比での安定度に基づくフィードバック制御を行うことで、安定性を確保することができる。
【0023】
この場合、安定許容限界まで余裕がある領域では、安定度が空燃比(あるいは点火時期)の変化に対して比較的平坦な特性を示すのであるが、空燃比(あるいは点火時期)が安定許容限界に近づくほど空燃比(あるいは点火時期)の変化に対して安定度が急峻に変化するようになるので、従来装置のように、安定許容限界近傍で目標を行き過ぎる過補正が生じやすく、この過補正により安定度が許容限界を超えてしまったのではヘジテーションやスタンブルが避けられない。したがって、安定許容限界近傍に近づけようとすればするほど、過補正を抑制して制御安定性を高めるため安定度に基づくフィードバック制御の応答速度を遅くする必要のある従来装置では、過渡運転条件などで安定度に基づくフィードバック制御を十分に行うことができない。
【0024】
そこで、このような運転領域においても安定許容限界近傍での制御を可能とするため、安定度に基づくフィードバック制御に学習制御を併用することが考えられる。これを説明すると、定常時(安定度に基づくフィードバック制御条件である)に安定度に基づくフィードバック制御を十分行った後(図2の左側参照)では、空燃比のフィードバック補正量により目標安定度での制御が可能となり、このフィードバック補正量を学習値として記憶しておく。そして、リーン運転時でも安定度に基づくフィードバック制御条件が成立しない運転時(たとえば緩加速時)になると、この学習値を補正量として用いることで(図2の右側参照)、安定度に基づくフィードバック制御が行われなくても目標安定度での制御が可能となるのである。
【0025】
しかしながら、その一方でパージガスの影響など何らかの原因によって学習値が不適当な値になったとき、安定度に基づくフィードバック制御の応答が遅いため、安定度が良好な状態に収束するまでのあいだ燃焼不安定に伴う不快感を運転者に与えることになる。
【0026】
このようなパージガスの影響などにより学習値が不適当な値になったときの安定度の悪化を防止するため、始動後にリーン運転とパージガスの導入を禁止して、理論空燃比を目標値とする空燃比のフィードバック制御を行い、その空燃比フィードバック制御中にベース学習値を更新し、ベース学習値の収束後にパージガスの導入を開始して通常学習値を更新するようにした従来装置があるので、この従来装置を、上記の安定度に基づくフィードバック制御に学習制御を併用するものに適用して、始動後にパージガスの導入を禁止して安定度に基づくフィードバック制御を行い、そのフィードバック制御中にベース学習値を更新し、ベース学習値の収束後にパージガスの導入を開始して通常学習値を更新するようにすることが考えられる。
【0027】
しかしながら、前述のように安定度に基づくフィードバック制御はその応答速度を遅くする必要があるので、従来装置のように、学習値の中心値を初期値として通常学習値を更新してゆくのでは、通常学習値が収束するまでに長い時間を要し、そのあいだ空燃比が目標安定度相当値よりも過剰にリッチになったり、反対にリーンなったりしてしまう。
【0028】
これに対処するため本発明の第1実施形態では、ベース学習値の収束値を通常学習値の初期値として設定する。
【0029】
コントロールユニット2で実行されるこの制御の内容を、以下のフローチャートにしたがって説明する。
【0030】
図3のフローチャートは所定の空燃比となるように制御するための目標燃空比Tdmlを算出するためのもので、一定時間毎(たとえば10ms毎)にあるいはバックグランドジョブで実行する。以下のフローチャートで一定時間毎にあるいはバックグランドジョブで実行する場合、図に単に10ms毎と記し、制御周期については省略する。
【0031】
ステップ1ではリーン運転条件かどうかをフラグ#FLEANにより判断する。#FLEAN=1のときはリーン運転条件、#FLEAN=0のときは非リーン運転条件である。リーン運転条件の判定については説明しないが、特開平6−272591号公報などに開示されている公知のものでかまわない。
【0032】
リーン運転条件のときはステップ2に進み、理論空燃比よりも薄い空燃比のマップ値を、所定のマップ(MDMLLマップ)を回転数Neと負荷Tpとで参照することにより求める。
【0033】
ステップ3では学習値を参照する。この学習値の参照については図4、図5のフローチャートにより説明する。
【0034】
図4、図5において、まずステップ11ではフラグ#FBLLTDよりベース学習値BSLDMLが収束したかどうかをみる。図14で後述するように、#FBLLTD=0はベース学習値BSLDMLが未収束であることを、また#FBLLTD=1はベース学習値BSLDMLが収束したことを表す。したがって、BSLDMLが未収束のときは原則としてステップ11よりステップ15に進んでベース学習値BSLDMLを、またBSLDMLが収束したあとは、図10で後述する安定化燃空比補正係数LLDMLの更新許可状態にあるかぎり、原則として図4のステップ11、図5のステップ21より図5のステップ24またはステップ27に進んで学習領域毎の通常学習値LRLDML(k)をそれぞれ選択する。
【0035】
なお、ベース学習値BSLDMLは図14で後述するように、運転領域に関係のない1データである。また、通常学習値LRLDML(k)の学習領域は、後述する図16に示すように、回転数Neと負荷Tpをパラメータとして複数の領域に分割され、学習領域毎に独立の学習値が格納されている。LRLDML(k)のkは、図16に示す0から15までの各学習領域を区別するためにつけた番号である。
【0036】
ただし、次の▲1▼〜▲5▼の条件のときは参照学習値が若干異なる。
【0037】
〈1〉ベース学習値が未収束の場合(図4でステップ12以降に進む場合)
▲1▼BSLDMLの更新領域にあるものの安定化燃空比補正係数LLDML(後述する)の更新許可状態にないときはステップ12、14よりステップ18に進んでBSLDMLに誤差マージンLRMGNを加えた値を参照学習値に入れる。
【0038】
▲2▼LLDMLの更新許可状態であるがBSLDMLの更新領域にないときはステップ12、13よりステップ16、17に進んでそのときの回転数Neと負荷Tpの属する学習領域の通常学習値LRLDML(k)を選択し、このLRLDML(k)を参照学習値に入れる。
【0039】
▲3▼LLDMLの更新許可状態でなくかつBSLDMLの更新領域でもないときはステップ12、14よりステップ19に進んで学習値の中心値である100%を参照学習値に入れる。
【0040】
〈2〉ベース学習値が収束した後(図5のステップ21以降に進む場合)
▲4▼BSLDMLより所定値SLLDML#を差し引いた値よりもそのときの通常学習値LRLDML(k)のほうが大きい場合(BSLDML−SLLDML#≦LRLDML(k))にLLDMLの更新許可状態にないときは、ステップ22、23よりステップ25に進んで、LRLDML(k)に誤差マージンLRMGNを加えた値を参照学習値に入れる。
【0041】
▲5▼BSLDML−SLLDML#よりもLRLDML(k)が小さくなった場合(BSLDML−SLLDML#>LRLDML(k))にLLDMLの更新許可状態にないときは、ステップ22、26よりステップ28に進んでBSLDMLに誤差マージンLRMGNを加えた値を参照学習値に入れる。
【0042】
ここで、▲5▼の場合に通常学習値を選択せずにベース学習値を選択するようにしたのは、この場合にまで通常学習値を選択したのでは、空燃比がリーンになり過ぎるので、これを避けるためである。
【0043】
▲1▼、▲4▼、▲5▼の場合に誤差マージンLRMGNを加えるようにしたのは次の理由からである。
【0044】
次の2つの運転条件
1)第一の運転条件:リーン運転時において安定度に基づくフィードバック制御を行いつつ学習値を更新しているとき、
2)第二の運転条件:同じリーン運転時でも安定度に基づくフィードバック制御時でなく記憶手段に格納されている学習値で初期設定の空燃比を補正するとき
を考える。なお、このときの学習値は正確には、ベース学習値の収束前であれば図4にしたがって参照される学習値、ベース学習値の収束後になると図5にしたがって参照される学習値である。しかしながら、簡単にはベース学習値の収束前はベース学習値、ベース学習値の収束後は通常学習値で考えればよい。
【0045】
この場合に、目標空燃比を一定として吸入空気量を変化させたときの空燃比誤差(以下単に空燃比誤差という)が運転条件によらず一律の大きさであるとき、あるいは空燃比誤差がまったくないとき(理想的な状態のとき)には、第二の運転条件での安定度が第一の運転条件での安定度と一致する(つまり、第二の運転条件において空燃比が目標安定度へと制御される)のであるが、空燃比誤差が運転条件(たとえば負荷や回転数)により異なるときは、2つの運転条件のあいだの空燃比誤差の差分だけ第二の運転条件での安定度が第一の運転条件での安定度からずれる。このずれにより第二の運転条件での安定度が第一の運転条件での安定度よりも悪くなった(つまり空燃比が目標安定度相当値よりもリッチになった)とき、燃焼変動が増大して運転者へ与える不快感が増すのである。
【0046】
さらに詳述すると、図6の左側に吸入空気量に対して空燃比誤差が右下がりで変化する例を示す(吸入空気量が小さい領域では空燃比誤差がプラスであったものが、吸入空気量の増加とともに空燃比誤差がマイナス側へと変化している)。
この場合に、定常の位置(黒丸で示す)が上記の第一の運転条件、緩加速の位置(白丸で示す)が上記の第二の運転条件にそれぞれ相当し、空燃比誤差の特性が右下がりであることから、2つの位置の間に空燃比誤差の差分が存在する。定常の位置においても、安定度に基づくフィードバック制御を行うこともなくかつ学習も進んでなければ空燃比誤差により安定度が目標安定度より外れることになるが、定常の位置では安定度に基づくフィードバック制御が行われることから、図6右側上段に示したように、空燃比誤差が存在しても安定度が目標安定度へと制御され、このときのフィードバック補正量が学習値として格納される。
【0047】
これに対して、定常の位置よりも空燃比誤差がマイナスで大きくなる緩加速の位置では、定常の位置との空燃比誤差の差分だけ空燃比が初期設定の空燃比よりリーン側にずれるので、この差分だけずれた初期設定の空燃比を、定常の位置で格納した学習値を補正量として補正すると、図6右側下段に示したように、空燃比が目標安定度相当値よりも過剰にリーンになってしまうのである。
【0048】
なお、このことは、図6左側において空燃比誤差の特性が右上がりとなる(ただし、定常の位置、緩加速の位置ともプラス側にあり、かつ定常の位置よりも緩加速の位置のほうがよりプラス側にあるとする)ときも同様であり、このときは、第一の運転条件との空燃比誤差の差分だけ第二の運転条件での空燃比が目標安定度相当値よりも過剰にリッチになる。
【0049】
そこで、リーン運転での安定度に基づくフィードバック制御の非成立時にそのときの運転条件と学習代表点との空燃比誤差の差分だけ学習値をエンジンの発生するトルクが増加する側にシフトさせるため、誤差マージンLRMGNを導入する。学習値(BSLDML、LRLDML)はこの値が大きくなるほど空燃比がリッチ側に向かう値であり、誤差マージンLRMGNは2つの運転条件(上記の第一の運転条件と第二の運転条件)の間の空燃比誤差の差分に相当し、LRMGNには0または正の値を与えているので、LRMGNを加算することは、リーン運転時の初期設定の空燃比をリッチ側にシフトすることになるのである。
【0050】
具体的には、LRMGNは図7に示したように、リーン運転時でも安定度に基づくフィードバック制御時でない場合の負荷Tpと学習代表点(図6左側に示す定常の位置あるいは第一の運転条件のこと)の負荷LRTPとの差の絶対値|Tp−LRTP|をパラメータとし、|Tp−LRTP|が0のとき最小値の0となり、|Tp−LRTP|が大きくなるほど大きくなる値である。
【0051】
なお、図6左側に示したように、
(i)定常の位置で空燃比誤差がマイナス側にありかつ定常の位置より緩加速の位置の空燃比誤差のほうがマイナスで大きい場合
に、緩加速の位置で学習値を参照してこれを補正量とするとき、空燃比が定常の位置との空燃比誤差の差分だけ目標安定度相当値を超えて過度にリーン側になる。これを逆にいえば、
(ii)定常の位置で空燃比誤差がマイナス側にありかつ定常の位置より緩加速の位置の空燃比誤差のほうがマイナスで小さい場合(図示しない)
には、緩加速の位置で学習値を参照してこれを補正量とするとき、空燃比が定常の位置との空燃比誤差の差分だけ目標安定度相当値よりもリッチ側(つまり燃焼変動が収まる側)になるので、この場合には運転者への不快感を増すことにならない。したがって、燃焼変動の増大に伴う運転者への不快感を解消するために空燃比をリーン側にシフトしなければならないのは、上記(i)の場合だけである。しかしながら、コントロールユニットでは、上記(i)の場合であるのか、上記(ii)の場合であるのかを区別することができないので、(i)、(ii)の場合とも、空燃比をリッチ側にシフトするため、図7のように、TpとLRTPの差の絶対値をパラメータとしているのである。
【0052】
なお、予め(i)、(ii)の場合を区別できるときは、(i)の場合に限って空燃比をリーン側にシフトし、(ii)の場合には、逆に空燃比をリッチ側にシフトすることで、(ii)の場合にも、空燃比を目標安定度相当値へと制御できることになる。
【0053】
図6左側に示した定常の位置(学習代表点)は、リーン運転領域での負荷が中程の条件を選んで設定する。その理由は次の通りである。誤差マージンが大きいと、空燃比が大きく変化してしまうので、誤差マージンはできれば小さいほど望ましいこと、また、2つの位置(定常の位置と緩加速の位置)の間の空燃比誤差の差分が多くなるほど誤差マージンを大きくする必要があることから、定常の位置がリーン運転領域での負荷の中程にあるときがトータルでみて2つの位置の間の空燃比誤差の差分(したがって誤差マージン)が最小になると推測されるからである。
【0054】
運転条件に応じて空燃比誤差が変化する場合に、運転条件の代表として図6左側には吸入空気量を挙げたが、エンジン回転数に応じても空燃比誤差が変化することが考えられるので、図7に示したように、誤差マージンは回転数Neと学習代表点の回転数LRNEとの差の絶対値|Ne−LRNE|をもパラメータとしており、|Ne−LRNE|が大きくなるほどLRMGNの値を大きくしている。
【0055】
このようにして、誤差マージンLRMGNにより第二の運転条件でその第二の運転条件と第一の運転条件との空燃比誤差の差分だけ学習値をリッチ側にシフトするので、第一の運転条件と第二の運転条件との間に空燃比誤差の差分が存在する場合でも、空燃比を目標安定度相当値へと制御できる。たとえば、図8は図6の右側の特性を改めて書き直したもので、緩加速時(第二の運転条件)に学習値を参照してこれを補正量とするとき、空燃比が定常時(第一の運転条件)との空燃比誤差の差分だけ目標安定度相当値を超えて過度にリーン側になるのであるが、本実施形態では、緩加速時と定常時の2つの運転条件の間の空燃比誤差の差分だけリッチ側にシフトされることから(図8右側参照)、2つの運転条件の間に空燃比誤差の差分が存在しても、空燃比を目標安定度相当値へと制御できるのである。
【0056】
このようにして学習値を参照したら図3のステップ4に戻り、その参照学習値をリーン運転条件のときのマップ燃空比に乗算することにより、つまり
Tdml=Mdml×参照学習値 …(1)
の式により目標燃空比Tdmlを算出する。
【0057】
安定度に基づくフィードバック制御時にエンジン回転変動量が大きくなるほど参照学習値が大きくなるため、燃焼変動量が増大するのにしたがってこの目標燃空比Tdmlが大きくなり、つまり目標燃空比はリッチ側にシフトされていく。
なお、リーン運転条件にないときは、ステップ5で理論空燃比あるいはそれよりも濃い値のマップ燃空比を、上記MDMLLマップと同じように所定のマップ(MDMLSマップ)にしたがって参照し、このマップ燃空比Mdmlをステップ6においてそのままTdmlに入れる。
【0058】
なお、ここでは図示しないが、空燃比を緩やかに切換えることによりトルクの急変を防いで、運転性能の安定性を確保するため、目標燃空比Tdmlに対して、空燃比切換時のダンパ操作を行って燃空比補正係数DMLを求めるようにしてもかまわない(特開平6−272591号公報参照)。
【0059】
次に、図9のフローチャートは安定度を検出するためのもので、図3とは独立にRef信号の入力毎に実行する。Ref信号は、4気筒エンジンのときクランク角で180°毎に、6気筒エンジンのときクランク角で120°毎に発生する信号である。
【0060】
ステップ31、32ではRef信号周期TREFを計測し、これの逆数に定数K1を掛けることによってエンジン回転数R0に変換する。ステップ33ではクランク角センサの誤差により特定の周波数に生じるノイズを除去するためバンドリジェクトフィルタ処理を行う。続いて人体に振動として感じられる車両共振周波数成分を抽出するバンドパスフィルタ処理をステップ34において、さらに絶対値処理をステップ35において行い、その結果をステップ36においてフィルタ出力FILOUTとする。バンドパスフィルタ処理により、エンジン回転数の時系列データからDC成分と高周波成分を除去して車両共振周波数帯の変動成分のみを残すのである。また、絶対値処理によりその変動の大きさを取り出している。したがって、フィルタ出力FILOUTは、エンジン回転変動のうち車両共振周波数帯に含まれる変動成分の大きさを表す。
【0061】
ステップ37ではこのフィルタ出力FILOUTに加重平均処理を行い、その結果を安定度指標FILDMPとする。
【0062】
図10、図11のフローチャートは安定度補正量としての安定化燃空比補正係数LLDMLを算出するためのもので、図9とは独立に実行する。ただし、図10のステップ42の操作を実行する直前に図9にしたがって安定度指標FILDMPが得られていることが前提である。
【0063】
図10のステップ41で安定化燃空比補正係数LLDMLの更新が許可されているかどうかを判定するが、このための具体的な内容は図11に示す。この判定は図11のステップの内容を一つずつチェックすることにより行い、各項目のすべてが満たされたときにLLDMLの更新を許可し、一つでも反するときはLLDMLの更新を不許可とする。
【0064】
すなわち、
ステップ51:フラグ#FLEAN=1(リーン運転条件)である、
ステップ52:負荷Tpの50ms前からの変化量の絶対値|ΔTp|が所定値LLDTP#以下である、
ステップ53:回転数Neの50ms前からの変化量の絶対値|ΔNe|が所定値LLDNE#以下である、
ステップ54:スロットルバルブ開度TVOの50ms前からの変化量の絶対値|ΔTVO|が所定値LLDTVO#以下である、
ステップ55:どの気筒も燃料カット中でない、
ステップ56:クランク角センサに異常(図ではNGで略記)がない、
ステップ57:フラグ#FCNST=1(緩加速時や定常時)である
ときに、ステップ58でLLDMLの更新を許可し、そうでなければステップ59に移行してLLDMLの更新を許可しない。
【0065】
上記のステップ51〜57はLLDMLの更新(安定度の検出を含む)を精度良く行うための条件である。本実施形態のように燃焼変動と回転変動の相関を利用して回転変動より燃焼変動を推定する方式では、加減速によりエンジン回転が上下すると、その加減速に伴う回転変化分が燃焼変動に伴う回転変動と分離できずに燃焼変動の大きさを実際よりも大きく推定してしまうことが懸念されるので、上記のステップ52、53、54、57により非定常時(急加速時や急減速時)にはLLDMLの更新を禁止するのである。なお、ステップ57のフラグ#FCNSTは車速の変化量ΔVSPと所定値LLCDVHの比較によりΔVSP<LLCDVH(緩加速時や定常時)のとき“1”となり(図12参照)、ΔVSP≧LLCDVH(急加速時)のとき“0”となるフラグである。
【0066】
このようにしてLLDMLの更新を許可するかどうかを判定したら、図10のステップ41に戻り、LLDMLの更新を許可するときだけステップ42以降に進む。
【0067】
ステップ42では、安定度指標FILDMP(図9のステップ37ですでに得られている)を読み込み、ステップ43において負荷と回転数より所定のマップを参照して安定度目標値LLSTを求め、これらの値を用いステップ44において
ただし、LLDML(new):更新後の安定化燃空比補正係数
LLDML(old):更新前の安定化燃空比補正係数
GLLFB#:ゲイン
の式により安定化燃空比補正係数(始動時に100%に初期設定)LLDMLを更新する。
【0068】
(2)式より安定化燃空比補正係数LLDMLは、安定度指標FILDMPが安定度目標値LLSTを超えて大きくなるほど、つまり燃焼が悪化するほど大きくなる値である。
【0069】
(2)式のゲインGLLFB#は安定度に基づくフィードバック制御の応答速度を定める値であり、従来装置と同じに、過補正を抑制して制御安定性を高めるため比較的小さな値としている(フィードバック制御の応答速度を遅くしている)。
【0070】
ステップ45では下限リミッタLDMLMNと上限リミッタLDMLMXを読み込み、ステップ46においてLLDMLのリミッタ処理を行う。ここでは、図13に示したように、ベース学習値BSLDMLを基準として所定値LRCHG#を差し引いた値を下限リミッタLDMLMN、BSLDMLより所定値LRCHG#を加えた値を上限リミッタLDMLMXとしている。
【0071】
図10のステップ47では学習値の更新を行う。これについては図14のフローチャートにより説明する。
【0072】
まず、ステップ71で学習カウンタ(始動時に0に初期設定)CBSLDMと所定値NBSLDM#を比較する。学習カウンタCBSLDMはベース学習値BSLDMLを更新した回数を計測するためのものである。CBSLDM<NBSLDM#のときはベース学習値BSLDMLが収束していないと判断してステップ72に進み、フラグ#FBLLTDに“0”を入れる。フラグ#FBLLTD=0によりBSLDMLが未収束であることを表すわけである。これに対して#FBLLTD=1は、後述するようにBSLDMLが収束したことを表す。
【0073】
ステップ73、74では負荷Tpが所定の領域(LLCTPL≦Tp≦LLCTPH)にあるかどうか、回転数Neが所定の領域(LLCNEL≦Ne≦LLCNEH)にあるかどうかみて、両方が所定の領域にあるときはステップ75でフラグ#FLRLLCに“1”を入れる。フラグ#FLRLLC=1によりベース学習値の更新領域(図15参照)にあることを表すわけである。これに対して、負荷と回転数のいずれかが所定の領域にないときはフラグ#FLRLLC=0である(後述する)。
【0074】
ステップ76、77では、そのときの安定化燃空比補正係数LLDMLをベース学習値BSLDMLに入れるとともに、学習カウンタCBSLDMをインクリメントする。
【0075】
つまり、エンジン始動後最初にリーン運転状態になり、安定度に基づくフィードバック制御を開始したとき、ベース学習値BSLDMLが未収束であれば通常学習値LRLDML(k)の更新を行う前にパージをカットしてベース学習値BSLDMLの更新を行うので、ベース学習値BSLDMLはパージの影響を受けずに、エンジンの特性のみで決まる安定化燃空比補正係数LLDMLの要求値へと収束する。また、ベース学習値BSLDMLが収束したら以降はベース学習値の更新は行わず、通常学習値LRLDML(k)の更新へと進むことになる。
【0076】
ただし、ベース学習値BSLDMLが収束するまではパージをカットし続けなければならないため、できるだけ短時間でベース学習値BSLDMLを収束させる必要がある。そこで、ベース学習値BSLDMLは通常学習値LRLDML(k)のように学習マップをもたせず、運転条件によらず1データで構成している。
【0077】
一方、運転条件によらず同一のベース学習値BSLDMLを更新し、また参照するため、ベース学習値BSLDMLの更新時と参照時との運転条件が大きく異なる場合には参照時の空燃比制御精度が悪化することが懸念される。しかしながら、ベース学習値BSLDMLの更新時と運転条件が大きく異なる場合にベース学習値BSLDMLを参照するのは、パージガスの導入の影響などにより不安定状態になったとき(具体的にはベース学習値の収束後においてBSLDML−SLLDML#>LRLDML(k)かつLLDMLの更新許可状態でないとき図5のステップ28でBSLDMLが参照される)だけであり、その参照期間も一時的であるので、大きな問題となることはない。
【0078】
また、ベース学習値BSLDMLはバックアップメモリに格納する。今回運転時に更新されたBSLDMLがそのまま次回運転時まで保持されるわけである。BSLDMLの初期設定値は学習値の中心値である100%である。
【0079】
ステップ78ではベース学習値BSLDMLに入れたと同じ安定化燃空比補正係数LLDMLの値をすべての学習領域の通常学習値LRLDML(k)に入れる。通常学習値LRLDML(k)の学習領域は、図16のように、回転数Neと負荷Tpをパラメータとして複数の領域に分割され、学習領域毎に独立の学習値が格納されている。通常学習値LRLDML(k)のkは、後述する図16に示す0から15までの各学習領域を区別するためにつけた番号である。したがって、ステップ78の操作によりすべての学習領域の通常学習値LRLDML(k)にベース学習値の収束値が初期値として格納されることになる。
【0080】
CBSLDM<NBSLDM#かつベース学習値の更新領域であることが継続するときは、ステップ75〜78を繰り返し、やがてCBSLDM≧NBSLDM#になると、ベース学習値BSLDMLが収束したことを表すためステップ80に進んでフラグ#FBLLTDに“1”を入れ、その後にステップ81、82に進んで学習領域毎に通常学習値LRLDML(k)の更新を行う。回転数Neと負荷Tpが図16に示した5の学習領域に属するときは、その判定した5の学習領域の通常学習値LRLDML(5)にだけ安定化燃空比補正係数LLDMLを入れるのである。
【0081】
ここで、通常学習値LRLDML(k)の学習領域は、図16に示したように全運転領域を回転数Neと負荷Tpをパラメータとして複数の領域に分割したもので、学習領域毎に独立の学習値が格納されている。LRLDML(k)は学習領域毎の学習値を表している。LRLDML(k)のkは各学習領域を区別するためにつけた番号で、16個の学習領域があるときkは0から15までの整数を取り得る
一方、CBSLDM<NBSLDM#でもベース学習値BSLDMLの更新領域でないときはステップ73または74よりステップ79に進みフラグ#FBLDTDに“0”を入れる。
【0082】
このときは、さらにステップ81、82の操作を行う。この操作によりLLDMLの値が通常学習値に入り、結果として参照学習値にもLLDMLが入る(図4のステップ11、12、13、16、17参照)。つまり、図14のフローチャートでは、安定化燃空比補正係数LLDMLをいったんは必ず学習値として格納する処理を行わせるため、このときにもステップ81、82の操作へと進ませているのである。図14、図4、図5より、結果的には学習値が同時に参照学習値に入り、また空燃比補正は参照学習値しか使用しない(図3のステップ3、4参照)ので、これで通常のフィードバック制御と同様の働きになる。BSLDMLの収束前(つまりLLDMLの更新許可状態にあるがBSLDMLの更新領域にないとき)は、通常学習値をダミーとして使っているわけである。
【0083】
図17のフローチャートは、このようにして求めた目標燃空比Tdmlを使って燃料噴射パルス幅を算出して出力する制御動作内容を示すもので、図3に続いて実行する。
【0084】
まずステップ81で目標燃空比Tdmlを用いて、目標燃空比相当量Tfbyaを、
Tfbya=Dml+Ktw+Kas …(3)
の式により算出する。
【0085】
ここで、Ktwは冷却水温に応じた燃料増量分、Kasは始動直後の燃料増量分である。なお、(3)式のTfbyaの単位は%であるが、後述する(4)式のTfbyaの単位は無名数である。
【0086】
次に、ステップ82でエアフローメータの出力をA/D変換し、リニアライズして吸入空気流量Qを算出する。そして、ステップ83でこの吸入空気流量Qとエンジン回転数Neとから、ほぼ理論空燃比の得られる基本噴射パルス幅Tpを、Tp=K×Q/Nとして求める。なおKは定数である。
【0087】
そして、ステップ84でこのTpをもとにして、シーケンシャル噴射における一回の燃料噴射パルス幅Tiを、
の式で計算する。
【0088】
ここで、Kathosは過渡補正量、αは空燃比フィードバック補正係数、αmはαに基づいて演算される空燃比学習補正係数、Tsは噴射弁が噴射信号を受けてから実際に開弁するまでの作動遅れを補償するための無効パルス幅である。また、(4)式はシーケンシャル噴射(4気筒ではエンジン2回転毎に1回、各気筒の点火順序に合わせて噴射)における式であるため、Tsの前に数字の2が入っている。ただし、リーン条件のときには、αとαmは所定の値に固定されている。
【0089】
なお、前述したように基本噴射パルス幅Tpをエンジン負荷として用いている。ここでは簡単のためこのTpを用いているが、このTpに対して吸気管容積を考慮して加重平均した値を、Tpに代えて用いることもできる。
【0090】
次にステップ85、86で燃料カットの判定を行い、ステップ87、88で燃料カット条件ならば無効噴射パルス幅Tsを、そうでなければTiを出力レジスタにストアすることでクランク角センサの出力にしたがって所定の噴射タイミングでの噴射に備える。
【0091】
図18のフローチャートはパージ弁の開閉制御を行うためのもので、図3、図10、図17とは独立に実行する。
【0092】
パージ弁の開閉制御は、ステップ91、92、93、94の内容を一つずつチェックすることにより行い、各項目のすべてを満たすとき、パージ弁を開き、一つでも反するときはパージ弁を閉じる。
【0093】
すなわち、
ステップ91:アイドルスイッチがONでない、
ステップ92:冷却水温Twが所定の範囲(TWCPL≦Tw≦TWCPH)にある、
ステップ93:負荷Tpが所定の領域(TPCPL≦Tp≦TPCPH)にある、
ステップ94:フラグ#FBLLTD=1である(BSLDMLの収束後)
ときにステップ95でパージ弁を開き、そうでなければステップ96に移行してパージ弁を閉じる。つまり、ベース学習値BSLDMLの更新はパージカット中に行う。パージ時にベース学習値BSLDMLの更新を禁止するのは、ベース学習値BSLDMLにより基本の空燃比に関係する部品(燃料噴射弁やエアフローメータ)の流量特性のバラツキや経時劣化に伴う空燃比誤差のみを吸収したいためである。
【0094】
ここで、本実施形態の作用を説明する。図19に示したように、リーン運転の開始後しばらくパージカットを行った後でキャニスタからのパージガスが導入され、そのパージ中に運転条件が学習領域1から学習領域2へと移り、学習領域1に戻ってくる場合を考える。ただし、ベース学習値BSLDMLに中心値の100%が、また学習領域毎の通常学習値LRLDML(k)にすべての学習領域で中心値の100%が入っているとする。なお、図19の学習領域1、学習領域2は学習領域が異なることを意味させているにすぎず、学習領域1、2の通常学習値がLRLDML(1)、LRLDML(2)ということではない。
【0095】
ベース学習値BSLDML、通常学習値LRLDML(k)、安定化燃空比補正係数LLDMLのすべてが100%であるとき必ず安定な状態になるようにリーン運転時の空燃比(および点火時期)を初期設定していることから、t1のリーン運転の開始タイミングでは、空燃比が目標空燃比よりもリッチ側にくる(安定度指標FILDMPが安定度目標値LLSLより小さくなる)ので、ベース学習値が小さくなる側に更新され、t2のタイミングの直前でベース学習値がaの値に収束し、このときの空燃比は目標空燃比と一致している(第3段目の実線参照)。
【0096】
一方、本実施形態ではベース学習値を更新する際に、従来装置と相違して、ベース学習値に格納される安定化燃空比補正係数LLDMLの値と同じ値がすべての学習領域の通常学習値に格納されることから、図示しないが、学習領域1、2の各通常学習値もベース学習値と同じ変化をたどり、t2のタイミングの直前でaの値になる。
【0097】
ベース学習値が収束したt2のタイミングで通常学習値の更新に移行してパージが開始されると、空燃比は一時的に目標空燃比よりもリッチになり、その分だけ安定度がよくなる(ふたたび安定度指標FILDMPが安定度目標値LLSLより小さくなる)ので、学習領域1の通常学習値がベース学習値の収束値であるaよりさらに小さくなる側に更新されてゆき、t3のタイミングからは学習値の下限リミッタであるbに制限される(第3段目の実線参照)。このように本実施形態では、同じ学習領域1においてベース学習値の更新より通常学習値の更新へと移行するとき、学習値の中心値である100%からでなく、ベース学習値の収束値であるaを初期値として通常学習値の更新を開始するので、学習値の中心値である100%より通常学習値の更新を開始する場合より通常学習値が要求値により近い値となることから、通常学習値の収束が早まり、これによって、空燃比が目標安定度相当値よりも過剰にリッチになったり、反対にリーンなったりすることがないのである。
【0098】
なお、図示のパージガス濃度の変化に対して目標空燃比を維持するためには通常学習値が要求値のように急激に変化しなけばならないが、上記(2)式のゲインが、過補正を抑制して制御安定性を高めるため比較的小さな値としているので、要求値に対して通常学習値に応答遅れが生じている。
【0099】
t4よりt5までの期間は運転条件が定常でなくなる(LLDMLの更新許可状態でなくなる)ことから、安定度に基づくフィードバック制御条件の非成立時の制御(図ではオープン制御で示す)に移り、図4、図5のフローにしたがってベース学習値か通常学習値のいずれかが参照される。t4よりt5までの期間ではBSLDML−SLLDML#>LRLDML(k)であることから、図5のステップ22、26、28と流れ、ベース学習値BSLDMLの収束値であるaに誤差マージンLRMGNが加算された値が参照される(第3段目の実線参照)。
【0100】
t5のタイミングで学習領域1より学習領域2へと切換わるときには学習領域1の通常学習値がbの値のまま保持され、今度は学習領域2の通常学習値の更新へと移る。このときの学習領域2の通常学習値にはベース学習値BSLDMLの収束値と同じ値であるaが入っている。
【0101】
ただし、t5よりt6までの期間は運転条件が定常でない(LLDMLの更新許可状態でない)ので、安定度に基づくフィードバック制御条件の非成立時の制御となり、図4、図5のフローにしたがって学習値が参照される。t5よりt6までの期間では、BSLDML−SLLDML#<LRLDML(k)となるので、図5のステップ22、23、25と流れ、学習領域2の通常学習値の初期値であるaに誤差マージンLRMGNが加算された値が参照される(第3段目の実線参照)。
【0102】
定常となるt6のタイミングよりベース学習値の収束値であるaの値を初期値として学習領域2の通常学習値が更新されていくが、学習領域2でもパージガスの影響を受けて空燃比がリッチになるので、学習領域2の通常学習値がaより小さくなる側に更新されてゆき、t7のタイミングで要求値と一致している(第3段目の実線参照)。このように、ベース学習値の収束値であるaの値を、学習領域2の通常学習値の初期値としても設定しているので、学習値の中心値である100%より学習領域2の通常学習値の更新を開始する場合より、通常学習値が要求値により近い値となり、不要に空燃比をリッチにすることがない。これによってNOxの増加を抑えることができる。
【0103】
運転条件が定常でなくなる(LLDMLの更新許可状態でなくなる)t8のタイミングでの通常学習値の値であるcが学習領域2の通常学習値として保持され、t8よりt9までは安定度に基づくフィードバック制御条件の非成立時の制御に移り、図4、図5のフローにしたがって学習値が参照される。このときはBSLDML−SLLDML#<LRLDML(k)より図5のステップ22、23、25と流れ、t8のタイミングで保持された学習領域2の通常学習値の値であるcに誤差マージンLRMGNが加算された値が参照されるわけである(第3段目の実線参照)。
【0104】
t9のタイミングで学習領域1に戻ると、学習領域1の通常学習値の更新に移る。このときの学習領域1の通常学習値にはt4のタイミングで保持された学習領域1の通常学習値であるbの値が入っている。
【0105】
ただし、t9よりt10までの期間は運転条件が定常でない(LLDMLの更新許可状態でない)ので、安定度に基づくフィードバック制御条件の非成立時の制御により図4、図5のフローにしたがって学習値が参照される。このときは、BSLDML−SLLDML#>LRLDML(k)より図5のステップ22、26、28と流れ、ベース学習値の初期値であるaに誤差マージンLRMGNが加算された値が参照される(第3段目の実線参照)。
【0106】
定常となるt10のタイミングより、t4のタイミングで保持された下限リミッタの値であるbを初期値として学習領域1の通常学習値が更新される。t4のタイミングでのパージガス濃度よりもt10でのパージガス濃度のほうが小さくなっているので、t10のタイミングより学習領域1の通常学習値の更新を再開する当初は、そのパージガス濃度の減少分だけ空燃比が一気にリーン化する。このリーン化により安定度が悪くなる(安定度指標FILDMPが安定度目標値LLSLより大きくなる)ので、学習領域1の通常学習値がbの値より大きくなる側(空燃比をリッチにする側)に変化してゆき、t11のタイミングで要求値と一致している(第3段目の実線参照)。
【0107】
なお、図19の第3段目において、オープン時マージンとあるのがLRMGN、オープン時学習値選択ゲタとあるのがSLLDML#、オープン時学習値選択スライスレベルとあるのがBSLDML−SLLDML#のことである。
【0108】
このようにして本実施形態では、同じ学習領域1においてベース学習値の更新より通常学習値の更新へと移行するとき、学習値の中心値である100%からでなく、ベース学習値の収束値を初期値として通常学習値の更新を開始するので、学習値の中心値である100%より通常学習値の更新を開始する場合に比べて、学習値が要求値により近い値となることから、通常学習値の更新速度がもともと遅いものであっても、通常学習値の収束を早めることができ、これによって、空燃比が目標安定度相当値よりも過剰にリッチになったり、反対にリーンなったりすることがない。
【0109】
また、同じ学習領域においてベース学習値より通常学習値に移行する場合においてベース学習値の収束値が100%から外れているときでも、学習値の中心値である100%を初期値として通常学習値の更新を開始する従来装置では、ベース学習値より通常学習値への移行時に空燃比がステップ的に切換わり、これによって移行前後でトルク段差を生じて運転者に不快感を与えることになるのであるが、本実施形態では、ベース学習値より通常学習値への移行時の空燃比段差をなくすことができ、これによって移行前後でのトルク段差に伴う運転者への不快感を回避することができる。
【0110】
図20のフローチャートは第2実施形態で、第1実施形態の図14に対応する。図14と異なるのはステップ101だけである。なお、図14と同一の部分には同一のステップ番号をつけている。
【0111】
ベース学習値は学習領域毎の値でなく1データであるため、ベース学習値を更新したときの運転領域とそのベース学習値が格納される通常学習値の学習領域とが離れるほど通常学習値の初期値としての精度が悪くなる。そこで、第2実施形態ではベース学習値より通常学習値への移行当初に、この初期値の精度悪化分の影響を受けて空燃比がサージ限界よりもリーン側に外れないように、ベース学習値の収束値に所定のリッチ化マージンを加えた値を、通常学習値の初期値として設定するようにしたものである。
【0112】
第1実施形態と相違する部分を具体的に説明すると、図20のステップ101ではサブルーチンを実行する。このサブルーチンについては図21のフローチャートにより説明する。
【0113】
ステップ111では、領域番号kに0を入れ、ステップ112でこの領域に対するリッチ化マージンINTMGN(k)を、図22を内容とするマップを参照して求め、このリッチ化マージンINTMGN(k)をステップ113において安定化燃空比補正係数LLDMLに加算した値を、リッチ化マージンINTMGN(k)を参照したと同じ領域の通常学習値LRLDML(k)に入れる。
【0114】
図22のように、リッチ化マージンINTMGN(k)の領域は、図16に示した通常学習値の学習領域と同じに区分けしかつ領域番号も通常学習値と同じにしており、各領域ごとに独立の値が入っている。INTMGN(k)の大きさは、ベース学習値の更新を行う領域と通常学習値の各学習領域との運転条件の差によって決める必要があるからである。
【0115】
ステップ114ではkと15を比較し、k≦15のときはステップ115でkをインクリメントし、ステップ112、113の操作を繰り返す。やがて、k>15になれば、図21のサブルーチンを終了する。なお、ステップ112、113の操作をすべての学習領域に対して行う前に図20の制御間隔である10msが経過することはない。
【0116】
このようにして第2実施形態では、ベース学習値の更新を行う領域と通常学習値の各学習領域との運転条件の差に応じたリッチ化マージンをベース学習値の収束値に加算し、その加算値を通常学習値の初期値として設定するので、1データであるベース学習値を更新したときの運転領域とそのベース学習値が格納される通常学習値の学習領域とが離れていても、ベース学習値より通常学習値への移行当初に空燃比がサージ限界よりもリーン側に外れることがない。
【0117】
上記の(2)式(LLDMLの更新の式)は、積分制御方式で説明したが、比例制御方式あるいは比例積分方式でもかまわない。
【0118】
実施形態では、ベース学習値BSLDML、通常学習値LRLDML(k)を記憶する手段がバックアップメモリ(たとえばバックアップRAM)である場合で説明したが、単なるRAMでもかまわない。この場合でも、リーン運転時かつ安定度に基づくフィードバック制御時にベース学習値が収束した後に、リーン運転時でも安定度に基づくフィードバック制御時でなくなった場合に、そのベース学習値の収束値を初期値として通常学習値の更新を開始することで、通常学習値の収束を早めることができる。
【0119】
実施形態では、通常学習値を学習領域毎の値としたものであるが、1データで構成することもできる。
【0120】
最後に、図1において11はリーンNOx触媒である。この触媒を用いた制御では、この触媒の吸蔵物質に限界まで吸着されたNOxをいったん離脱させる必要があるときに、排気中の未燃成分であるHC,COの量がすべてのNOx(吸蔵物質から離脱されるNOxと排気中のNOxの両方)を過不足なく還元するための必要量を超えるように空燃比をリッチ化し、そのあと直ちに所定のリカバー速度で理論空燃比へと戻すのであるが、本発明と直接関係しないので、説明は省略する(特願平7−101149号参照)。
【図面の簡単な説明】
【図1】第1実施形態の制御システム図である。
【図2】安定度学習制御の原理を説明するための特性図である。
【図3】目標燃空比Tdmlの算出を説明するためのフローチャートである。
【図4】学習値の参照を説明するためのフローチャートである。
【図5】学習値の参照を説明するためのフローチャートである。
【図6】空燃比誤差の差分による安定度学習制御への影響を表す特性図である。
【図7】誤差マージンLRMGNの特性図である。
【図8】誤差マージンLRMGNの効果を説明するための特性図である。
【図9】安定度の検出を説明するためのフローチャートである。
【図10】安定化燃空比補正係数LLDMLの算出を説明するためのフローチャートである。
【図11】安定化燃空比補正係数LLDMLの更新許可の判定を説明するためのフローチャートである。
【図12】フラグ#FCNSTを説明するための波形図である。
【図13】学習リミッタの算出を説明するためのフローチャートである。
【図14】学習値の更新を説明するためのフローチャートである。
【図15】ベース学習値の更新領域の説明図である。
【図16】通常学習値の領域図である。
【図17】燃料噴射パルス幅の算出とその出力とを説明するためのフローチャートである。
【図18】パージ弁制御を説明するためのフローチャートである。
【図19】第1実施形態の作用を説明するための波形図である。
【図20】第2実施形態の学習値の更新を説明するためのフローチャートである。
【図21】図20のサブルーチンを説明するためのフローチャートである。
【図22】第2実施形態のリッチ化マージンINTMGN(k)の領域図である。
【図23】第1の発明のクレーム対応図である。
【符号の説明】
1 エンジン本体
2 コントロールユニット
4 クランク角センサ
6 エアフローメータ
7 燃料噴射弁
Claims (6)
- リーン運転時の空燃比を初期設定する手段と、
負荷と回転数とをパラメータとする全運転領域を複数の学習領域に分割し、その各学習領域毎に通常学習値を記憶する手段と、
前記全運転領域より狭い所定の学習領域に1データのベース学習値を記憶する手段と、
このベース学習値が収束したかどうかを判定する手段と、
この判定結果よりベース学習値が収束する前はベース学習値を、またベース学習値が収束した後はそのときの負荷と回転数の属する学習領域にある前記通常学習値を選択する手段と、
燃焼の安定度を検出する手段と、
リーン運転時に安定度に基づくフィードバック制御を行う条件かどうかを判定する手段と、
この判定結果よりリーン運転時の安定度に基づくフィードバック制御条件の成立時に前記安定度の検出値が安定度の制御目標値と一致するように安定度補正量を算出する手段と、
前記判定結果よりリーン運転時の安定度に基づくフィードバック制御条件の非成立時に前記選択されたほうの学習値で前記リーン運転時の初期設定の空燃比を補正する手段と、
同じくリーン運転時の安定度に基づくフィードバック制御条件の非成立時に、またリーン運転時の安定度に基づくフィードバック制御条件の成立時にもこのリーン運転時の初期設定の空燃比を、前記選択されたほうの学習値で補正された空燃比となるようにエンジンへの燃料供給量を制御する手段と、
前記判定結果よりリーン運転時の安定度に基づくフィードバック制御条件の成立時かつ前記ベース学習値が収束する前にそのときの負荷と回転数が前記ベース学習値の学習領域にあるときには前記安定度の検出値が安定度の制御目標値と一致するように前記安定度補正量に基づいて前記ベース学習値を更新する手段と、
前記判定結果よりリーン運転時の安定度に基づくフィードバック制御条件の成立時かつ前記ベース学習値が収束した後に前記ベース学習値の収束値を初期値として前記安定度の検出値が安定度の制御目標値と一致するように前記安定度補正量に基づいてそのときの負荷と回転数の属する学習領域にある前記通常学習値を更新する手段と
を設けたことを特徴とするエンジンの空燃比制御装置。 - ベース学習値を更新した回数を計測する学習カウンタが所定値以上となったとき、ベース学習値が収束したと判定することを特徴とする請求項1に記載のエンジンの空燃比制御装置。
- 前記判定結果よりリーン運転時の安定度に基づくフィードバック制御条件の成立時かつ前記ベース学習値が収束する前にそのときの負荷と回転数がベース学習値の学習領域にないときにはそのときの負荷と回転数の属する学習領域の通常学習値を前記安定度補正量に基づいて更新することを特徴とする請求項1または2に記載のエンジンの空燃比制御装置。
- 前記ベース学習値の収束値をすべての学習領域の通常学習値の初期値として設定することを特徴とする請求項1に記載のエンジンの空燃比制御装置。
- 前記ベース学習値の収束値に、ベース学習値の更新を行う領域と前記通常学習値の各学習領域との運転条件の差に応じたリッチ化マージンを加えた値を前記通常学習値の初期値として学習領域毎に設定することを特徴とする請求項1に記載のエンジンの空燃比制御装置。
- 前記燃焼の安定度はエンジンの回転変動から検出することを特徴とする請求項1から5までのいずれか一つに記載のエンジンの空燃比制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP16004997A JP3946816B2 (ja) | 1997-06-17 | 1997-06-17 | エンジンの空燃比制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP16004997A JP3946816B2 (ja) | 1997-06-17 | 1997-06-17 | エンジンの空燃比制御装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH116457A JPH116457A (ja) | 1999-01-12 |
JP3946816B2 true JP3946816B2 (ja) | 2007-07-18 |
Family
ID=15706822
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP16004997A Expired - Fee Related JP3946816B2 (ja) | 1997-06-17 | 1997-06-17 | エンジンの空燃比制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3946816B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3904022B2 (ja) | 2005-08-18 | 2007-04-11 | いすゞ自動車株式会社 | 燃料噴射制御システム |
JP6006189B2 (ja) * | 2013-09-30 | 2016-10-12 | 本田技研工業株式会社 | エンジンの燃料噴射制御装置 |
-
1997
- 1997-06-17 JP JP16004997A patent/JP3946816B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH116457A (ja) | 1999-01-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3487192B2 (ja) | 内燃機関の空燃比制御装置 | |
JP2002180874A (ja) | 内燃機関の空燃比制御装置 | |
JPS6165038A (ja) | 空燃比制御装置 | |
JP4007384B2 (ja) | 内燃機関の空燃比制御装置 | |
JPH10318053A (ja) | 内燃機関の空燃比制御装置 | |
WO2012117520A1 (ja) | 内燃機関の制御装置 | |
JP2019183733A (ja) | 空燃比制御装置 | |
JP3946816B2 (ja) | エンジンの空燃比制御装置 | |
JP3405128B2 (ja) | エンジンの空燃比制御装置 | |
JP2002180876A (ja) | 内燃機関の空燃比制御装置 | |
JP3937702B2 (ja) | 内燃機関のエバポパージ制御装置 | |
JP2600772B2 (ja) | 内燃機関の空燃比制御装置 | |
JP3397087B2 (ja) | エンジンの燃焼変動制御装置 | |
JP3966177B2 (ja) | 内燃機関の空燃比制御装置 | |
JP3397086B2 (ja) | エンジンの燃焼変動制御装置 | |
JP3718857B2 (ja) | 内燃機関の制御装置 | |
JP2681965B2 (ja) | 内燃機関の空燃比制御装置 | |
JP3562069B2 (ja) | 内燃機関の空燃比制御装置 | |
JP2684885B2 (ja) | 内燃機関の燃料噴射量制御装置 | |
JP3358415B2 (ja) | 内燃機関の制御装置 | |
JP2000097081A (ja) | 内燃機関の空燃比制御装置 | |
JP3010625B2 (ja) | 内燃機関の空燃比制御装置 | |
JPH07259609A (ja) | 内燃機関の空燃比制御装置 | |
JPH1144238A (ja) | 筒内噴射式エンジン | |
JP3956893B2 (ja) | 内燃機関の制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20040203 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040607 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061222 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070412 |
|
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: 20110420 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120420 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130420 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130420 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140420 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |