JP2009257221A - 内燃機関の空燃比制御装置 - Google Patents
内燃機関の空燃比制御装置 Download PDFInfo
- Publication number
- JP2009257221A JP2009257221A JP2008108001A JP2008108001A JP2009257221A JP 2009257221 A JP2009257221 A JP 2009257221A JP 2008108001 A JP2008108001 A JP 2008108001A JP 2008108001 A JP2008108001 A JP 2008108001A JP 2009257221 A JP2009257221 A JP 2009257221A
- Authority
- JP
- Japan
- Prior art keywords
- air
- fuel ratio
- lean
- rich
- control
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Electrical Control Of Air Or Fuel Supplied To Internal-Combustion Engine (AREA)
- Combined Controls Of Internal Combustion Engines (AREA)
Abstract
【課題】無駄時間のリッチ方向/リーン方向の非対称劣化による空燃比制御精度の悪化を比較的簡単な構成で低減できるようにする。
【解決手段】エンジン11に噴射する燃料量を変化させてから空燃比センサ24の出力が変化するまでの無駄時間の劣化度合をリッチ方向とリーン方向とで別々に検出すると共に、空燃比センサ24の出力の微分値がプラス値であるか否かで、リーン側制御特性変更期間とリッチ側制御特性変更期間とを判別し、リーン側制御特性変更期間では、リーン方向の無駄時間劣化度合が大きくなるほど、空燃比フィードバック制御の制御周期を長く設定し、リッチ側制御特性変更期間では、リッチ方向の無駄時間劣化度合が大きくなるほど、空燃比フィードバック制御の制御周期を長く設定する。各方向の無駄時間劣化度合は、検出時(制御時)の無駄時間とその初期値(設計値)との比で算出される。
【選択図】図1
【解決手段】エンジン11に噴射する燃料量を変化させてから空燃比センサ24の出力が変化するまでの無駄時間の劣化度合をリッチ方向とリーン方向とで別々に検出すると共に、空燃比センサ24の出力の微分値がプラス値であるか否かで、リーン側制御特性変更期間とリッチ側制御特性変更期間とを判別し、リーン側制御特性変更期間では、リーン方向の無駄時間劣化度合が大きくなるほど、空燃比フィードバック制御の制御周期を長く設定し、リッチ側制御特性変更期間では、リッチ方向の無駄時間劣化度合が大きくなるほど、空燃比フィードバック制御の制御周期を長く設定する。各方向の無駄時間劣化度合は、検出時(制御時)の無駄時間とその初期値(設計値)との比で算出される。
【選択図】図1
Description
本発明は、内燃機関の排出ガスの空燃比を検出する空燃比センサの検出値に基づいて内燃機関に噴射する燃料量をフィードバック制御する内燃機関の空燃比制御装置に関する発明である。
近年の電子制御化された自動車は、内燃機関(エンジン)の排出ガスの空燃比を検出する空燃比センサを排気管に設置し、この空燃比センサの出力に基づいて排出ガスの空燃比を目標空燃比付近に維持するように内燃機関に噴射する燃料量(混合気の空燃比)をフィードバック制御することで、排気エミッションや燃費を向上させるようにしている。このような空燃比フィードバック制御系は、排出ガスの空燃比を検出する空燃比センサの応答特性が劣化すると、空燃比制御精度が悪化し、排気エミッション等の悪化に繋がってしまう。
この対策として、特許文献1(特許第3581737号公報)に記載されているように、フィードバック制御に用いる適応パラメータに基づいて空燃比センサの応答特性の劣化の有無を判定し、その結果、空燃比センサの応答特性の劣化が検出されたときに、フィードバック制御のゲインを小さくするようにしたものがある。
特許第3581737号公報(第14頁等参照)
特開2007−187129号公報(第2頁等参照)
一般に、空燃比フィードバック制御系は、エンジンに噴射する燃料量を変化させてから空燃比センサの出力が変化するまでの制御対象の動特性を、無駄時間+1次遅れ特性(応答時間)でモデル化して設計されている。将来、益々厳しくなる排出ガス規制(低エミッション化の要求)に対応するには、無駄時間の劣化による空燃比制御精度の悪化を低減する必要が生じてきている。
無駄時間は、空燃比がリッチ方向に変化する場合とリーン方向に変化する場合のいずれの方向でも検出できるが、無駄時間の劣化は、リッチ方向とリーン方向とで別々に発生し、リッチ方向とリーン方向のいずれか一方が他方よりも先に劣化が進む“非対称劣化”が発生することがある。このため、上記特許文献1のように、空燃比センサの応答特性の劣化が検出されたときにフィードバック制御のゲインを小さくするだけでは、無駄時間のリッチ方向/リーン方向の非対称劣化に対応したフィードバック制御を行うことは困難であり、無駄時間のリッチ方向/リーン方向の非対称劣化による排気エミッションの悪化を十分に低減することは困難である。
また、無駄時間のリッチ方向/リーン方向の非対称劣化の問題に関して、特許文献2(特開2007−187129号公報)に記載されているように、無駄時間をリッチ方向とリーン方向とでそれぞれ別々に検出し、リッチ方向の検出値とリーン方向の検出値をそれぞれ平均化して基準値と比較することで空燃比センサの劣化を検出するようにしたものがある。
しかし、この特許文献2の技術は、空燃比センサのリッチ方向/リーン方向の非対称劣化を検出して空燃比センサの劣化診断を行うだけであり、その非対称劣化の検出結果を空燃比フィードバック制御に反映させる機能がないため、非対称劣化による空燃比制御精度の悪化を低減することはできない。要するに、従来の技術では、無駄時間のリッチ方向/リーン方向の非対称劣化に個別に対応できる制御系構造とすることが困難であったり、非常に複雑な構成になると考えられていた。
本発明はこのような事情を考慮してなされたものであり、従ってその目的は、無駄時間のリッチ方向/リーン方向の非対称劣化による空燃比制御精度の悪化を比較的簡単な構成で低減することができる内燃機関の空燃比制御装置を提供することにある。
上記目的を達成するために、請求項1に係る発明は、
[A]内燃機関の排出ガスの空燃比を検出する空燃比センサの検出値に基づいて内燃機関に噴射する燃料量をフィードバック制御する空燃比フィードバック制御系と、
[B]内燃機関に噴射した燃料量の変化が前記空燃比センサの出力の変化として現れるまでの無駄時間を、空燃比の変化方向がリッチ方向の無駄時間とリーン方向の無駄時間とに分けて検出する無駄時間検出手段と、
[C]前記無駄時間検出手段で検出した各方向の無駄時間と前記フィードバック制御の初期設定に用いられた各々の初期値との比に基づいてリッチ方向の無駄時間劣化度合とリーン方向の無駄時間劣化度合をそれぞれ算出する無駄時間劣化度合算出手段と、
[D]前記リッチ方向の無駄時間劣化度合に基づいて前記空燃比フィードバック制御系の制御特性を変更するリッチ側制御特性変更期間と前記リーン方向の無駄時間劣化度合に基づいて前記空燃比フィードバック制御系の制御特性を変更するリーン側制御特性変更期間とを判別して各期間毎に前記空燃比フィードバック制御系の制御特性を各方向の無駄時間劣化度合に応じた制御特性に変更する制御特性変更手段とを備えた構成としたものである。
[A]内燃機関の排出ガスの空燃比を検出する空燃比センサの検出値に基づいて内燃機関に噴射する燃料量をフィードバック制御する空燃比フィードバック制御系と、
[B]内燃機関に噴射した燃料量の変化が前記空燃比センサの出力の変化として現れるまでの無駄時間を、空燃比の変化方向がリッチ方向の無駄時間とリーン方向の無駄時間とに分けて検出する無駄時間検出手段と、
[C]前記無駄時間検出手段で検出した各方向の無駄時間と前記フィードバック制御の初期設定に用いられた各々の初期値との比に基づいてリッチ方向の無駄時間劣化度合とリーン方向の無駄時間劣化度合をそれぞれ算出する無駄時間劣化度合算出手段と、
[D]前記リッチ方向の無駄時間劣化度合に基づいて前記空燃比フィードバック制御系の制御特性を変更するリッチ側制御特性変更期間と前記リーン方向の無駄時間劣化度合に基づいて前記空燃比フィードバック制御系の制御特性を変更するリーン側制御特性変更期間とを判別して各期間毎に前記空燃比フィードバック制御系の制御特性を各方向の無駄時間劣化度合に応じた制御特性に変更する制御特性変更手段とを備えた構成としたものである。
本発明のように、リッチ方向の無駄時間劣化度合に基づいて制御特性を変更するリッチ側制御特性変更期間と、リーン方向の無駄時間劣化度合に基づいて制御特性を変更するリーン側制御特性変更期間とを判別するようにすれば、空燃比フィードバック制御系の制御特性を適正なタイミングで各方向の無駄時間劣化度合に応じた適正な制御特性に変更することができ、排気エミッションの悪化を最も招きやすい無駄時間の非対称劣化による制御結果のハンチング(発散)を比較的簡単な構成で防止できる。
ところで、無駄時間劣化度合と応答時間劣化度合との差が大きくなると、オーバーシュートが発生しやすくなる傾向がある。
この対策として、請求項2のように、空燃比センサの応答時間を空燃比の変化方向がリッチ方向の応答時間とリーン方向の応答時間とに分けて検出する応答時間検出手段と、前記応答時間検出手段で検出した各方向の応答時間と前記フィードバック制御の初期設定に用いられた各々の初期値との比に基づいてリッチ方向の応答時間劣化度合とリーン方向の応答時間劣化度合をそれぞれ算出する応答時間劣化度合算出手段と、前記各方向の無駄時間劣化度合及び前記各方向の応答時間劣化度合に基づいて前記空燃比フィードバック制御系のフィードバック補正量の制限値(ガード値)を補正するフィードバック補正量制限値補正手段とを備えた構成としても良い。この構成では、各方向の無駄時間劣化度合と各方向の応答時間劣化度合に基づいて空燃比フィードバック制御系のフィードバック補正量の制限値を補正するようにしているため、無駄時間劣化度合と応答時間劣化度合との差が大きくなってオーバーシュートが発生しやすい制御状態になれば、フィードバック補正量の制限値(上下限のガード値)を狭めてオーバーシュートを抑制するという制御が可能となり、オーバーシュートによる排気エミッションの悪化を防止することができる。
空燃比フィードバック制御系の制御特性は、例えば制御ゲイン等によっても変更可能であるが、請求項3のように、空燃比フィードバック制御系の制御特性を変更する手段として制御周期を変更するようにすると良い。制御周期を長くすれば、実質的に制御ゲインを小さくするのと同様のハンチング抑制効果が得られる。制御周期の変更によって、比較的簡単な処理で空燃比フィードバック制御系の制御特性を変更することができ、ソフトウエアの複雑化やデータ量膨大化を回避することができる。
本発明は、請求項4のように、空燃比センサの出力の微分値に基づいてリッチ側制御特性変更期間とリーン側制御特性変更期間とを判別するようにすると良い。空燃比センサの出力の微分値から空燃比センサの出力の変化方向を判別できるため、空燃比センサの出力が増加する方向(リーン方向)に変化する期間をリーン側制御特性変更期間とし、空燃比センサの出力が低下する方向(リッチ方向)に変化する期間をリッチ側制御特性変更期間とすれば良く、空燃比センサの出力の微分値を用いれば、リーン側制御特性変更期間とリッチ側制御特性変更期間とを適正なタイミングで切り替えることができる。
この場合、請求項5のように、空燃比センサの出力の微分値がプラス値となる期間をリーン側制御特性変更期間と判別し、空燃比センサの出力の微分値がマイナス値となる期間をリッチ側制御特性変更期間と判別するようにすれば良い。ここで、空燃比センサの出力の微分値がプラス値であれば、空燃比センサの出力が増加する方向(リーン方向)に変化していることを意味し、空燃比センサの出力の微分値がマイナス値であれば、空燃比センサの出力が低下する方向(リッチ方向)に変化していることを意味する。これにより、極めて簡単な処理で、リーン側制御特性変更期間とリッチ側制御特性変更期間とを適正なタイミングで切り替えることができる。
以下、本発明を実施するための最良の形態を具体化した一実施例を説明する。
まず、図1に基づいてエンジン制御システム全体の概略構成を説明する。
内燃機関であるエンジン11の吸気管12の最上流部には、エアクリーナ13が設けられ、このエアクリーナ13の下流側に、吸入空気量を検出するエアフローメータ14が設けられている。このエアフローメータ14の下流側には、モータ10によって開度調節されるスロットルバルブ15とスロットル開度を検出するスロットル開度センサ16とが設けられている。
まず、図1に基づいてエンジン制御システム全体の概略構成を説明する。
内燃機関であるエンジン11の吸気管12の最上流部には、エアクリーナ13が設けられ、このエアクリーナ13の下流側に、吸入空気量を検出するエアフローメータ14が設けられている。このエアフローメータ14の下流側には、モータ10によって開度調節されるスロットルバルブ15とスロットル開度を検出するスロットル開度センサ16とが設けられている。
更に、スロットルバルブ15の下流側には、サージタンク17が設けられ、このサージタンク17には、吸気管圧力を検出する吸気管圧力センサ18が設けられている。また、サージタンク17には、エンジン11の各気筒に空気を導入する吸気マニホールド19が設けられ、各気筒の吸気マニホールド19の吸気ポート近傍に、それぞれ燃料を噴射する燃料噴射弁20が取り付けられている。また、エンジン11のシリンダヘッドには、各気筒毎に点火プラグ21が取り付けられ、各点火プラグ21の火花放電によって筒内の混合気に着火される。
また、エンジン11の吸気バルブ28には、該吸気バルブ28の開閉タイミング(吸気バルブタイミング)を可変する可変吸気バルブタイミング機構29が設けられ、排気バルブ30には、該排気バルブ30の開閉タイミング(排気バルブタイミング)を可変する可変排気バルブタイミング機構31が設けられている。
一方、エンジン11の排気管22には、排出ガス中のCO,HC,NOx等を浄化する三元触媒等の触媒23が設けられ、この触媒23の上流側に、排出ガスの空燃比を検出する空燃比センサ24が設けられている。
また、エンジン11のシリンダブロックには、冷却水温を検出する冷却水温センサ25や、エンジン11のクランク軸が一定クランク角回転する毎にパルス信号を出力するクランク角センサ26が取り付けられている。このクランク角センサ26の出力信号に基づいてクランク角やエンジン回転速度が検出される。
これら各種センサの出力は、エンジン制御回路(以下「ECU」と表記する)27に入力される。このECU27は、マイクロコンピュータを主体として構成され、内蔵されたROM(記憶媒体)に記憶された各種のエンジン制御プログラムを実行することで、空燃比センサ24で検出した排出ガスの空燃比を目標空燃比に一致させるように状態フィードバックを実行して空燃比補正係数FAF(フィードバック補正量)を算出して、エンジン11に噴射する燃料量(混合気の空燃比)をフィードバック制御する空燃比フィードバック制御を実行する。
この空燃比フィードバック制御系は、エンジン11に噴射する燃料量を変化させてから空燃比センサ24の出力が変化するまでの制御対象の動特性を無駄時間+1次遅れ特性で表現してモデル化して設計されている。尚、この制御対象の動特性を無駄時間+2次遅れ特性でモデル化しても良く、要は、無駄時間+n次遅れ特性(nは正の整数)でモデル化すれば良い。
一般に、状態フィードバックの制御パラメータF1〜Fd+1 ,F0に基づいて空燃比補正係数FAF(i) を算出する場合は、次式が用いられることが多い。
FAF(i) =F1・λ(i) +F2・FAF(i-1) +F3・FAF(i-2) +…
…+Fd+1 ・FAF(i-d) +F0・Σ(λref −λ(i) )
FAF(i) =F1・λ(i) +F2・FAF(i-1) +F3・FAF(i-2) +…
…+Fd+1 ・FAF(i-d) +F0・Σ(λref −λ(i) )
ここで、λ(i) は現在の空燃比(空気過剰率)、FAF(i-1) 〜FAF(i-d) は過去の空燃比補正係数、λref は目標空燃比(目標空気過剰率)である。dは、検出した無駄時間L(sec)を演算間隔(噴射間隔dt)で割り算した値の小数点以下を切り捨てて整数化した無駄時間である。
この空燃比補正係数の演算方法では、制御パラメータF1〜Fd+1 ,F0を運転条件等に応じて切り換えると、その瞬間に、空燃比補正係数FAFが一時的に乱れ、その結果、空燃比λが一時的に乱れる現象が発生する可能性がある。
そこで、本実施例1では、今回の空燃比補正係数補正値ΔFAF(i) を算出して、今回の空燃比補正係数補正値ΔFAF(i) を前回の空燃比補正係数FAF(i-1) に加算して今回の空燃比補正係数FAF(i) を求めるようにしている。
FAF(i) =FAF(i-1) +ΔFAF(i)
FAF(i) =FAF(i-1) +ΔFAF(i)
今回の空燃比補正係数補正値ΔFAF(i) は、次式により算出する。
ΔFAF(i) =F1・Δφ(i) +F2・ΔFAF(i-1) +…
…+Fd+1 ・ΔFAF(i-d) +Fd+2 ・ΔFAF(i-d-1)
+F0・(φref −φ(i) )
=F1・Δφ(i) +F2・{FAF(i-1) −FAF(i-2) }+…
…+Fd+2 ・{FAF(i-d-1) −FAF(i-d-2) }
+F0・(φref −φ(i) )
ΔFAF(i) =F1・Δφ(i) +F2・ΔFAF(i-1) +…
…+Fd+1 ・ΔFAF(i-d) +Fd+2 ・ΔFAF(i-d-1)
+F0・(φref −φ(i) )
=F1・Δφ(i) +F2・{FAF(i-1) −FAF(i-2) }+…
…+Fd+2 ・{FAF(i-d-1) −FAF(i-d-2) }
+F0・(φref −φ(i) )
ここで、Δφ(i) は燃料過剰率の変化量、つまりΔφ(i) =φ(i) −φ(i-1) である。また、ΔFAF(i-1) 〜ΔFAF(i-d-1) は過去の空燃比補正係数補正値であり、φref は目標燃料過剰率である。尚、上式では、空燃比の代用情報として燃料過剰率φを用いたが、空気過剰率λを用いても良いことは言うまでもない。
上式を用いて空燃比補正係数FAFを演算するようにすれば、状態フィードバックの制御パラメータF1〜Fd+2 ,F0を運転条件等に応じて切り換えても、空燃比補正係数FAFが乱れることがなくなり、空燃比が乱れる現象が発生しなくなる。これにより、制御パラメータF1〜Fd+2 ,F0を運転条件等に応じて切り換えながら、安定した空燃比制御を行うことが可能となる。
ところで、将来、益々厳しくなる排出ガス規制(低エミッション化の要求)に対応するには、無駄時間の劣化や応答時間の劣化による空燃比制御精度の悪化を低減する必要が生じてきている。
図2に示すように、エンジン11に噴射する燃料量(空燃比)を変化させてから空燃比センサ24の出力が変化するまでの無駄時間と空燃比センサ24の応答時間は、空燃比がリッチ方向に変化する場合とリーン方向に変化する場合のいずれの方向でも検出できるが、無駄時間の劣化と応答時間の劣化は、それぞれリッチ方向とリーン方向とで別々に発生し、リッチ方向とリーン方向のいずれか一方が他方よりも先に劣化が進む“非対称劣化”が発生することがある。
本実施例では、図2に示すように、リーン方向の無駄時間の初期値(設計値)をLL0、リッチ方向の無駄時間の初期値(設計値)をLR0、リーン方向の応答時間の初期値(設計値)をTL0、リッチ方向の応答時間の初期値(設計値)をTR0とする。そして、劣化時(検出時)のリーン方向の無駄時間をLL 、リッチ方向の無駄時間をLR 、リーン方向の応答時間をTL 、リッチ方向の応答時間をTR とする。ここで、応答時間は、空燃比センサ24の出力が空燃比変化前の定常値から空燃比変化後の定常値に変化(収束)するまでの出力変化量の所定割合(例えば63%)を越えるまでの時間である。
無駄時間や応答時間のリッチ方向/リーン方向の非対称劣化が進むと、空燃比フィードバック制御系の制御状態がハンチング(発散)したり、オーバーシュートが発生しやすくなり、排気エミッションが悪化する。本発明者の実験・研究結果によれば、無駄時間のリッチ方向の劣化度合とリーン方向の劣化度合のうち、小さい方の劣化度合に合わせて空燃比フィードバック制御系の制御特性を設定すると、ハンチング(発散)が発生しやすくなることが判明している。一方、無駄時間の大きい方の劣化度合に合わせて空燃比フィードバック制御系の制御特性を設定すれば、ハンチングを防止できるが、この場合でも、無駄時間の劣化度合と応答時間の劣化度合との差が大きくなると、オーバーシュートが発生しやすくなることが判明している。
そこで、本実施例では、無駄時間と応答時間について、それぞれリッチ方向とリーン方向の劣化度合を検出して、これら4つの劣化度合に基づいて、空燃比フィードバック制御系のフィードバック補正量である空燃比補正係数FAFに対するリッチ側制限値FAFGRとリーン側制限値FAFGLを補正する。更に、空燃比センサ24の出力の微分値に基づいてリッチ側制御特性変更期間とリーン側制御特性変更期間とを判別し、リッチ側制御特性変更期間では、リッチ方向の無駄時間劣化度合に基づいて空燃比フィードバック制御の制御周期を変更することで空燃比フィードバック制御の制御特性を変更し、リーン側制御特性変更期間では、リーン方向の無駄時間劣化度合に基づいて空燃比フィードバック制御の制御周期を変更することで空燃比フィードバック制御の制御特性を変更するようにしている。具体的には、リッチ側制御特性変更期間では、リッチ方向の無駄時間劣化度合が大きくなるほど、制御周期を長く設定し、リーン側制御特性変更期間では、リーン方向の無駄時間劣化度合が大きくなるほど、制御周期を長く設定するようにしている。
この場合、リーン方向の無駄時間劣化度合DLL は、検出時(制御時)のリーン方向無駄時間LL とその初期値LL0との比で算出され、リッチ方向の無駄時間劣化度合DLR は検出時(制御時)のリッチ方向の無駄時間LR とその初期値LR0との比で算出される。
リーン方向の無駄時間劣化度合:DLL =LL /LL0
リッチ方向の無駄時間劣化度合:DLR =LR /LR0
リーン方向の無駄時間劣化度合:DLL =LL /LL0
リッチ方向の無駄時間劣化度合:DLR =LR /LR0
また、リーン方向の応答時間劣化度合DTL は、検出時(制御時)のリーン方向の応答時間TL とその初期値TL0との比で算出され、リッチ方向の応答時間劣化度合DTR は、検出時(制御時)のリッチ方向の応答時間TR とその初期値TR0との比で算出される。
リーン方向の応答時間劣化度合:DTL =TL /TL0
リッチ方向の応答時間劣化度合:DTR =TR /TR0
リーン方向の応答時間劣化度合:DTL =TL /TL0
リッチ方向の応答時間劣化度合:DTR =TR /TR0
本実施例では、4つの劣化度合DLL ,DLR ,DTL ,DTR に基づいて空燃比補正係数FAFに対するリッチ側制限値FAFGRとリーン側制限値FAFGLを次式により算出する。
FAFGR=CFAFGR・FAFGR0
FAFGL=CFAFGL・FAFGL0
CFAFGR:リッチ側制限値補正係数
CFAFGL:リーン側制限値補正係数
FAFGR0:リッチ側制限値の初期値(設計値)
FAFGL0:リーン側制限値の初期値(設計値)
FAFGR=CFAFGR・FAFGR0
FAFGL=CFAFGL・FAFGL0
CFAFGR:リッチ側制限値補正係数
CFAFGL:リーン側制限値補正係数
FAFGR0:リッチ側制限値の初期値(設計値)
FAFGL0:リーン側制限値の初期値(設計値)
ここで、リッチ側制限値補正係数CFAFGRは、後述する図18のマップを検索して、リッチ方向の応答時間劣化度合DTR と代表無駄時間劣化度合DL(各方向の無駄時間劣化度合DLR ,DLL のうちの大きい方)との比DTR /DLに基づいて算出され、リーン側制限値補正係数CFAFGLは、リーン方向の応答時間劣化度合DTL と代表無駄時間劣化度合DLとの比DTL /DLに基づいて算出される。これにより、リッチ側制限値FAFGRとリーン側制限値FAFGLがリッチ側とリーン側とでそれぞれ最適な制限値に設定される。
以上説明した本実施例の空燃比フィードバック制御系の構成は、図3に機能ブロック図で示されている。この空燃比フィードバック制御系の各機能は、ECU27が実行する図4乃至図17の各プログラムによって実現される。以下、これら各プログラムの処理内容を説明する。
[燃料噴射量演算プログラム]
図4の燃料噴射量演算プログラムは、各気筒の噴射タイミングに同期して起動され、次のようにして燃料噴射量TAUを算出する。まず、ステップ301で、現在のエンジン運転状態に応じてマップ等により基本噴射量Tpを算出する。この後、ステップ302に進み、基本噴射量Tpに対する各種の補正係数FALL(例えば冷却水温による補正係数、加減速時の補正係数等)を算出し、次のステップ303で、空燃比フィードバック条件が成立しているか否かを判定する。もし、空燃比フィードバック条件が成立していなければ、空燃比補正係数FAFを「1」にセットして、オープンループ制御により空燃比を制御する。
図4の燃料噴射量演算プログラムは、各気筒の噴射タイミングに同期して起動され、次のようにして燃料噴射量TAUを算出する。まず、ステップ301で、現在のエンジン運転状態に応じてマップ等により基本噴射量Tpを算出する。この後、ステップ302に進み、基本噴射量Tpに対する各種の補正係数FALL(例えば冷却水温による補正係数、加減速時の補正係数等)を算出し、次のステップ303で、空燃比フィードバック条件が成立しているか否かを判定する。もし、空燃比フィードバック条件が成立していなければ、空燃比補正係数FAFを「1」にセットして、オープンループ制御により空燃比を制御する。
一方、空燃比フィードバック条件が成立していれば、ステップ305に進み、排出ガスの空燃比を触媒23の浄化ウインドウ(理論空燃比付近)内に収めるように目標燃料過剰率φref を設定し、次のステップ306で、後述する図13の空燃比フィードバック制御プログラムを実行して空燃比補正係数FAFを算出する。
以上のようにして、ステップ304又は306で空燃比補正係数FAFを設定した後、ステップ307に進み、基本噴射量Tpに空燃比補正係数FAFと各種補正係数FALLを乗算して燃料噴射量TAUを求める。これにより、排出ガスの空燃比を触媒23の浄化ウインドウ内に制御する。
[制御対象特性値演算プログラム]
図5の制御対象特性値演算プログラムは、各気筒の噴射タイミングに同期して起動され、制御対象のモデル時定数Tと無駄時間Lを次のようにして算出する。
図5の制御対象特性値演算プログラムは、各気筒の噴射タイミングに同期して起動され、制御対象のモデル時定数Tと無駄時間Lを次のようにして算出する。
本プログラムが起動されると、まず、ステップ401で、吸入空気量Qaを読み込み、次のステップ402で、基本モデル時定数Tsen と基本無駄時間Lsen を、それぞれ吸入空気量Qaをパラメータとするマップ等により算出する。
この後、ステップ403に進み、負荷(吸入空気量Qa/エンジン回転速度Ne)と冷却水温THWを読み込んだ後、ステップ404に進み、時定数補正係数α1 と無駄時間補正係数α2 を、それぞれ負荷と冷却水温THWをパラメータとするマップにより算出する。尚、この補正係数α1 ,α2 の算出マップに用いる運転パラメータは、負荷と冷却水温THWの他に、エンジン回転速度Neや始動後経過時間を用いるようにしても良い。
各補正係数α1 ,α2 を算出した後、ステップ405に進み、基本モデル時定数Tsen 、基本無駄時間Lsen と、それぞれの補正係数α1 ,α2 を用いて、次式により制御対象のモデル時定数Tと無駄時間Lを算出して、本プログラムを終了する。
T=(1+α1 )・Tsen
L=(1+α1 )・Lsen
T=(1+α1 )・Tsen
L=(1+α1 )・Lsen
[噴射間隔演算プログラム]
図6の噴射間隔演算プログラムは、各気筒の噴射タイミングに同期して起動され、噴射間隔dtを次のようにして算出する。
本プログラムが起動されると、まず、ステップ411で、エンジン回転速度Ne(rpm)を読み込んだ後、ステップ412に進み、噴射間隔dtを次式により算出して、本プログラムを終了する。
dt=30/Ne×気筒数
図6の噴射間隔演算プログラムは、各気筒の噴射タイミングに同期して起動され、噴射間隔dtを次のようにして算出する。
本プログラムが起動されると、まず、ステップ411で、エンジン回転速度Ne(rpm)を読み込んだ後、ステップ412に進み、噴射間隔dtを次式により算出して、本プログラムを終了する。
dt=30/Ne×気筒数
[減衰係数ζ、固有角周波数ω演算プログラム]
図7の減衰係数ζ、固有角周波数ω演算プログラムは、各気筒の噴射タイミングに同期して起動され、極配置法の演算に用いる減衰係数ζと固有角周波数ωを次のようにして算出する。
図7の減衰係数ζ、固有角周波数ω演算プログラムは、各気筒の噴射タイミングに同期して起動され、極配置法の演算に用いる減衰係数ζと固有角周波数ωを次のようにして算出する。
本プログラムが起動されると、まず、ステップ421で、吸入空気量Qaを読み込み、次のステップ422で、基本減衰係数ζsen と基本固有角周波数ωsen を、それぞれ吸入空気量Qaをパラメータとするマップにより算出する。
この後、ステップ423に進み、負荷(吸入空気量Qa/エンジン回転速度Ne)と冷却水温THWを読み込んだ後、ステップ424に進み、減衰係数補正係数α3 と固有角周波数補正係数α4 を、それぞれ負荷と冷却水温THWをパラメータとするマップにより算出する。尚、この補正係数α3 ,α4 の算出マップに用いる運転パラメータは、負荷と冷却水温THWの他に、エンジン回転速度や始動後経過時間を用いるようにしても良い。
各補正係数α3 ,α4 の算出後、ステップ425に進み、基本減衰係数ζsen 、基本固有角周波数ωsen と、それぞれの補正係数α3 ,α4 を用いて、次式により減衰係数ζと固有角周波数ωを算出して本プログラムを終了する。
ζ=(1+α3 )・ζsen
ω=(1+α4 )・ωsen
ζ=(1+α3 )・ζsen
ω=(1+α4 )・ωsen
[モデルパラメータ演算プログラム]
図8のモデルパラメータ演算プログラムは、各気筒の噴射タイミングに同期して起動されて、モデルパラメータa,b1 ,b2 を次のようにして算出する。
図8のモデルパラメータ演算プログラムは、各気筒の噴射タイミングに同期して起動されて、モデルパラメータa,b1 ,b2 を次のようにして算出する。
本プログラムが起動されると、まず、ステップ431で、モデル時定数T、制御対象の現在の特性で補正された無駄時間L、噴射間隔dtを読み込み、次のステップ432で、噴射間隔dt(演算間隔)を基準にして換算した無駄時間d(=L/dt)を小数点以下を切り捨てて求めると共に、その切り捨て誤差L1 (=L−d・dt)を算出する。
この後、ステップ433に進み、モデル時定数Tと噴射間隔dtを用いてモデルパラメータaを次式により算出する。
a=exp(−dt/T)
a=exp(−dt/T)
この演算は、高性能のCPUを必要とするため、現在の車載コンピュータのCPUの演算能力では、exp(−dt/T)の演算を高速で行うことは困難であると思われる。そこで、本実施例1では、演算負荷を軽減するために、dt/Tが例えば0.35以下の時は、exp(−dt/T)を次式により近似し、この近似式によりモデルパラメータaを算出する。
a=1−dt/T+0.5(dt/T)2
a=1−dt/T+0.5(dt/T)2
この近似式は、dt/Tが大きくなるに従って、演算誤差が大きくなるため、dt/Tが例えば0.35よりも大きい領域では、予め、dt/Tとモデルパラメータaとの関係をテーブル化してROMに記憶しておき、このテーブルを検索して、現在のdt/Tに応じたモデルパラメータaを求める。尚、dt/Tが、0.35以下の時にも、予め設定したテーブルからモデルパラメータaを求めるようにしても良い。
この後、ステップ434に進み、モデルパラメータb1 ,b2 の算出に用いる変数βを次式により算出する。
β=exp{−(dt−L1 )/T}
β=exp{−(dt−L1 )/T}
この変数βを算出する際も、演算負荷を軽減するために、(dt−L1 )/Tが例えば0.35以下の時は、exp{−(dt−L1 )/T}を次式により近似し、この近似式により変数βを算出する。
β=1−(dt−L1 )/T+0.5{(dt−L1 )/T}2
β=1−(dt−L1 )/T+0.5{(dt−L1 )/T}2
この近似式は、(dt−L1 )/Tが大きくなるに従って、演算誤差が大きくなるため、(dt−L1 )/Tが例えば0.35よりも大きい領域では、予め、(dt−L1 )/Tと変数βとの関係をテーブル化してROMに記憶しておき、このテーブルを検索して現在の(dt−L1 )/Tに応じた変数βを求める。尚、(dt−L1 )/Tが0.35以下の時にも、予め設定したテーブルから変数βを求めるようにしても良い。
この後、ステップ435に進み、変数βとモデルパラメータaを用いてモデルパラメータb1 ,b2 を次式により算出する。
b1 =1−β
b2 =1−b1 −a
b1 =1−β
b2 =1−b1 −a
[特性多項式の係数演算プログラム]
図9の特性多項式の係数演算プログラムは、各気筒の噴射タイミングに同期して起動され、制御モデルの無駄時間d分の根を0とする極配置法に基づいて特性多項式の係数A1,A2を次のようにして算出する。尚、極配置法に関しては、本出願人が先に出願した特願2000−189734号の明細書に詳細に記載されている。
図9の特性多項式の係数演算プログラムは、各気筒の噴射タイミングに同期して起動され、制御モデルの無駄時間d分の根を0とする極配置法に基づいて特性多項式の係数A1,A2を次のようにして算出する。尚、極配置法に関しては、本出願人が先に出願した特願2000−189734号の明細書に詳細に記載されている。
本プログラムが起動されると、まず、ステップ441で、減衰係数ζ、応答時間に応じて補正された固有角周波数ω、噴射間隔dtを読み込み、次のステップ442で、ω・dtを上限ガード値(例えば0.6283)でガード処理する。つまり、ω・dtが上限ガード値よりも大きい場合は、ω・dt=上限ガード値にセットし、ω・dtが上限ガード値以下の場合は、その時のω・dtの値をそのまま用いる。このように、ω・dtを上限ガード値でガード処理する理由は、ω・dtの値が大きくなり過ぎると、制御精度が低下するためである。
ω・dtのガード処理後、ステップ443に進み、特性多項式の係数A1,A2の算出に用いる変数ezwdtを次式により算出する。
ezwdt=exp(−ζ・ω・dt)
ezwdt=exp(−ζ・ω・dt)
この変数ezwdtを算出する場合も、ECU27のCPU演算負荷を軽減するために、ζ・ω・dtが例えば0.35以下の時は、exp(−ζ・ω・dt)を次式により近似し、この近似式により変数ezwdtを算出する。
ezwdt=1−ζ・ω・dt+0.5(ζ・ω・dt)2
ezwdt=1−ζ・ω・dt+0.5(ζ・ω・dt)2
この近似式は、ζ・ω・dtが大きくなるに従って、演算誤差が大きくなるため、ζ・ω・dtが例えば0.35よりも大きい領域では、予め、ζ・ω・dtと変数ezwdtとの関係をテーブル化してROMに記憶しておき、このテーブルを検索して現在のζ・ω・dtに応じた変数ezwdtを求める。尚、ζ・ω・dtが0.35以下の時にも、予め設定したテーブルから変数ezwdtを求めるようにしても良い。
この後、ステップ444に進み、特性多項式の係数A1,A2の算出に用いる他の変数coszwtを次式により算出する。
coszwt=cos{(1−ζ2 )0.5 ・ω・dt}
coszwt=cos{(1−ζ2 )0.5 ・ω・dt}
この変数coszwtを算出する場合も、CPUの演算負荷を軽減するために次の近似式を用いる。
coszwt=1−0.5(1−ζ2 )(ω・dt)2
coszwt=1−0.5(1−ζ2 )(ω・dt)2
この後、ステップ445に進み、変数ezwdt,coszwtを用いて、特性多項式の係数A1,A2を次式により算出する。
A1=−2・ezwdt・coszwt
A2=(ezwdt)2
A1=−2・ezwdt・coszwt
A2=(ezwdt)2
[制御パラメータ演算プログラム]
図10の制御パラメータ演算プログラムは、各気筒の噴射タイミングに同期して起動され、状態フィードバックの制御パラメータF0〜Fd+2 を次のようにして算出する。
図10の制御パラメータ演算プログラムは、各気筒の噴射タイミングに同期して起動され、状態フィードバックの制御パラメータF0〜Fd+2 を次のようにして算出する。
本プログラムが起動されると、まず、ステップ451で、制御モデルのモデルパラメータa,b1 ,b2 を読み込み、次のステップ452で、特性多項式の係数A1,A2を読み込む。
この後、ステップ453に進み、モデルパラメータa,b1 ,b2 と係数A1,A2を用いて制御パラメータF0〜Fd+2 を算出する。
例えば、d=6の場合は、次式により制御パラメータF0〜F8を算出する。
F0=(1+A1+A2)/(b1 +b2 )
F2=−1−a−A1
F3=a−A2+(1+a)・F2
F4=(1+a)・F3−a・F2
F5=(1+a)・F4−a・F3
F6=(1+a)・F5−a・F4
F7=(1+a)・F6−a・F5
F1=a/(a・b1 +b2 )・(a・F7−b1 ・F0)
F8=b2 /a・F1
例えば、d=6の場合は、次式により制御パラメータF0〜F8を算出する。
F0=(1+A1+A2)/(b1 +b2 )
F2=−1−a−A1
F3=a−A2+(1+a)・F2
F4=(1+a)・F3−a・F2
F5=(1+a)・F4−a・F3
F6=(1+a)・F5−a・F4
F7=(1+a)・F6−a・F5
F1=a/(a・b1 +b2 )・(a・F7−b1 ・F0)
F8=b2 /a・F1
[期間判別プログラム]
図11の期間判別プログラムは、所定周期(例えば2ms周期)で繰り返し実行され、後述する図13の空燃比フィードバック制御プログラムと共に特許請求の範囲でいう制御特性変更手段としての役割を果たす。
図11の期間判別プログラムは、所定周期(例えば2ms周期)で繰り返し実行され、後述する図13の空燃比フィードバック制御プログラムと共に特許請求の範囲でいう制御特性変更手段としての役割を果たす。
本プログラムが起動されると、まず、ステップ501で、空燃比センサ24の出力信号λを読み込み、次のステップ502で、空燃比センサ24の出力信号の微分値(今回値λと前回値λOLD との差分値)がプラス値(0以上)であるか否かを判定する。その結果、空燃比センサ24の出力信号の微分値(λ−λOLD )がプラス値(0以上)であると判定されれば、空燃比センサ24の出力信号λが増加する方向(リーン方向)に変化していると判断して、ステップ503に進み、期間判別フラグをリーン側制御特性変更期間を意味する「1」にセットする。
一方、ステップ502で、空燃比センサ24の出力信号の微分値(λ−λOLD )がマイナス値と判定されれば、空燃比センサ24の出力信号λが低下する方向(リッチ方向)に変化していると判断して、ステップ504に進み、期間判別フラグをリッチ側制御特性変更期間を意味する「0」にセットする。この後、ステップ505に進み、空燃比センサ24の出力信号の今回値λを前回値λOLD として記憶して、本プログラムを終了する。
以上説明した空燃比センサ24の出力信号λの挙動と、その微分値(λ−λOLD )と、期間判別フラグの値との対応関係は、図12のタイムチャートに示されている。
[空燃比フィードバック制御プログラム]
図13の空燃比フィードバック制御プログラムは、所定周期(例えば2ms周期)で繰り返し実行され、上記図11の期間判別プログラムと共に特許請求の範囲でいう制御特性変更手段としての役割を果たす。
図13の空燃比フィードバック制御プログラムは、所定周期(例えば2ms周期)で繰り返し実行され、上記図11の期間判別プログラムと共に特許請求の範囲でいう制御特性変更手段としての役割を果たす。
本プログラムが起動されると、まず、ステップ601で、上記図11の期間判別プログラムによってセットされた期間判別フラグが「1」にセットされているか否かで、リーン側制御特性変更期間であるか否かを判定し、期間判別フラグ=1(リーン側制御特性変更期間)と判定されれば、ステップ602に進み、リーン方向の無駄時間劣化度合DLL を読み込み、次のステップ603で、図14の制御周期算出マップを検索して、現在のリーン方向の無駄時間劣化度合DLL に応じた制御周期を算出する。図14の制御周期算出マップは、リーン方向の無駄時間劣化度合DLL が大きくなるほど、制御周期が長くなるように設定されている。
これに対して、上記ステップ601で、期間判別フラグ=0(リッチ側制御特性変更期間)と判定されれば、ステップ604に進み、リッチ方向の無駄時間劣化度合DLR を読み込み、次のステップ605で、図14の制御周期算出マップを検索して、現在のリッチ方向の無駄時間劣化度合DLR に応じた制御周期を算出する。
制御周期の算出後、ステップ606に進み、経過時間をカウントするタイマCNTを、本プログラムの起動周期(2ms周期)分だけカウントアップする。この後、ステップ607に進み、タイマCNTのカウント値が、前記ステップ603又は605で算出した制御周期に達したか否かを判定し、タイマCNTのカウント値が制御周期に達していなければ、そのまま本プログラムを終了する。
そして、タイマCNTのカウント値が制御周期に達した時点で、ステップ608に進み、後述する図16及び図17のFAF演算プログラムを実行して、空燃比補正係数FAFを算出する。これにより、空燃比センサ24の出力信号の微分値(λ−λOLD )に応じて切り替えられる期間毎に、各方向の無駄時間劣化度合DLL ,DLR に応じた制御周期で空燃比フィードバック制御が実行される。この後、ステップ609に進み、タイマCNTをリセットして本プログラムを終了する。
[代表無駄時間劣化度合算出プログラム]
図15の代表無駄時間劣化度合算出プログラムは、所定周期(例えば2ms周期)で繰り返し実行される。本プログラムが起動されると、まず、ステップ701で、無駄時間劣化度合検出プログラム(図示せず)で検出したリーン方向の無駄時間劣化度合DLL (=LL /LL0)とリッチ方向の無駄時間劣化度合DLR (=LR /LR0)を読み込む。無駄時間劣化度合検出プログラムでは、図2に示すように、空燃比がリーン方向に変化した時に、リーン方向の無駄時間LL を検出して、このリーン方向の無駄時間LL とその初期値LL0との比でリーン方向の無駄時間劣化度合DLL を算出し、空燃比がリッチ方向に変化した時に、リッチ方向の無駄時間LR を検出して、このリッチ方向の無駄時間LR とその初期値LL0との比でリッチ方向の無駄時間劣化度合DLR を算出する。この無駄時間劣化度合検出プログラムが特許請求の範囲でいう無駄時間検出手段及び無駄時間劣化度合算出手段としての役割を果たす。
図15の代表無駄時間劣化度合算出プログラムは、所定周期(例えば2ms周期)で繰り返し実行される。本プログラムが起動されると、まず、ステップ701で、無駄時間劣化度合検出プログラム(図示せず)で検出したリーン方向の無駄時間劣化度合DLL (=LL /LL0)とリッチ方向の無駄時間劣化度合DLR (=LR /LR0)を読み込む。無駄時間劣化度合検出プログラムでは、図2に示すように、空燃比がリーン方向に変化した時に、リーン方向の無駄時間LL を検出して、このリーン方向の無駄時間LL とその初期値LL0との比でリーン方向の無駄時間劣化度合DLL を算出し、空燃比がリッチ方向に変化した時に、リッチ方向の無駄時間LR を検出して、このリッチ方向の無駄時間LR とその初期値LL0との比でリッチ方向の無駄時間劣化度合DLR を算出する。この無駄時間劣化度合検出プログラムが特許請求の範囲でいう無駄時間検出手段及び無駄時間劣化度合算出手段としての役割を果たす。
この後、ステップ702に進み、リーン方向の無駄時間劣化度合DLL とリッチ方向の無駄時間劣化度合DLR とを比較して、リーン方向の無駄時間劣化度合DLL の方が大きいと判定されれば、ステップ703に進み、リーン方向の無駄時間劣化度合DLL を代表無駄時間劣化度合DLとし、リッチ方向の無駄時間劣化度合DLR の方が大きいと判定されれば、ステップ704に進み、リッチ方向の無駄時間劣化度合DLR を代表無駄時間劣化度合DLとする。
この後、ステップ705に進み、応答時間劣化度合検出プログラム(図示せず)で検出したリーン方向の応答時間劣化度合DTL (=TL /TL0)とリッチ方向の応答時間劣化度合DTR (=TR /TR0)を読み込む。応答時間劣化度合検出プログラムでは、図2に示すように、空燃比がリーン方向に変化した時に、リーン方向の応答時間TL を検出して、このリーン方向の応答時間TL とその初期値TL0との比でリーン方向の応答時間劣化度合DTL を算出し、空燃比がリッチ方向に変化した時に、リッチ方向の応答時間TR を検出し、このリッチ方向の応答時間TR とその初期値TR0との比でリッチ方向の応答時間劣化度合DTR を算出する。この応答時間劣化度合検出プログラムが特許請求の範囲でいう応答時間検出手段及び応答時間劣化度合算出手段としての役割を果たす。
この後、ステップ706に進み、リーン方向の応答時間劣化度合DTL と代表無駄時間劣化度合DLとの比DTL /DLを算出すると共に、リッチ方向の応答時間TR と代表無駄時間劣化度合DLとの比DTR /DLを算出して、本プログラムを終了する。
[FAF演算プログラム]
図16及び図17のFAF演算プログラムは、前述した図13の空燃比フィードバック制御プログラムのステップ608で実行され、次のようにして空燃比補正係数FAFを算出する。
図16及び図17のFAF演算プログラムは、前述した図13の空燃比フィードバック制御プログラムのステップ608で実行され、次のようにして空燃比補正係数FAFを算出する。
本プログラムが起動されると、まず、ステップ801で、現在の燃料過剰率φ(i) 、目標燃料過剰率φref 、制御パラメータF0〜Fd+2 を読み込む。
この後、ステップ802に進み、目標燃料過剰率φref と実際の燃料過剰率φ(i) との偏差e(i) を算出する。
e(i) =φref −φ(i)
e(i) =φref −φ(i)
この後、ステップ803に進み、前回から今回までの燃料過剰率の変化量Δφ(i) を算出する。
Δφ(i) =φ(i) −φ(i-1)
Δφ(i) =φ(i) −φ(i-1)
この後、ステップ804に進み、前回の空燃比補正係数FAF(i-1) に今回の空燃比補正係数補正値ΔFAF(i) を加算して今回の空燃比補正係数FAF(i) を求める。
FAF(i)
=FAF(i-1) +ΔFAF(i)
=FAF(i-1) +F1・Δφ(i) +F2・{FAF(i-1) −FAF(i-2) }+… …+Fd+2 ・{FAF(i-d-1) −FAF(i-d-2) }+F0・e(i)
FAF(i)
=FAF(i-1) +ΔFAF(i)
=FAF(i-1) +F1・Δφ(i) +F2・{FAF(i-1) −FAF(i-2) }+… …+Fd+2 ・{FAF(i-d-1) −FAF(i-d-2) }+F0・e(i)
この後、図17のステップ805に進み、空燃比補正係数FAF(i) に対するリッチ側及びリーン側の制限値(ガード値)の初期値FAFGR0,FAFGL0を読み込む。そして、次のステップ806で、図18の制限値補正係数算出マップを検索して、リッチ方向の応答時間劣化度合DTR と代表無駄時間劣化度合DLとの比DTR /DLに基づいてリッチ側制限値補正係数CFAFGRを算出すると共に、リーン方向の応答時間劣化度合DTL と代表無駄時間劣化度合DLとの比DTL /DLに基づいてリーン側制限値補正係数CFAFGLを算出する。この図18の制限値補正係数算出マップは、DTR /DL,DTL /DLが大きくなるほど、制限値補正係数CFAFGR,CFAFGLが小さくなるように設定されている。制限値補正係数CFAFGR,CFAFGLの最大値は1.0である。
この後、ステップ807に進み、リッチ側制限値補正係数CFAFGRをリッチ側制限値の初期値FAFGR0に乗算してリッチ側制限値FAFGRを算出すると共に、リーン側制限値補正係数CFAFGLをリーン側制限値の初期値FAFGL0に乗算してリーン側制限値FAFGLを算出する。
FAFGR=CFAFGR・FAFGR0
FAFGL=CFAFGL・FAFGL0
FAFGR=CFAFGR・FAFGR0
FAFGL=CFAFGL・FAFGL0
この後、ステップ808に進み、空燃比補正係数FAF(i) がリッチ側制限値FAFGRよりも小さいか否かを判定し、空燃比補正係数FAF(i) がリッチ側制限値FAFGRよりも大きい(つまりリッチ側制限値FAFGRよりもリッチ側の値である)と判定されれば、ステップ809に進み、空燃比補正係数FAF(i) をリッチ側制限値FAFGRで制限(ガード処理)して、リッチ側制限値FAFGRを空燃比補正係数FAF(i) とする。
そして、次のステップ810で、空燃比補正係数FAF(i) がリーン側制限値FAFGLよりも大きいか否かを判定し、空燃比補正係数FAF(i) がリーン側制限値FAFGLよりも小さい(つまりリーン側制限値FAFGLよりもリーン側の値である)と判定されれば、ステップ811に進み、空燃比補正係数FAF(i) をリーン側制限値FAFGLで制限(ガード処理)して、リーン側制限値FAFGLを空燃比補正係数FAF(i) とする。尚、FAFGL≦FAF(i) ≦FAFGRであれば、空燃比補正係数FAF(i) を制限せずにそのまま用いる。上記ステップ805〜811の処理が特許請求の範囲でいうフィードバック補正量制限値補正手段としての役割を果たす。
この後、ステップ812に進み、次回の空燃比補正係数FAFの演算に備えてφ(i-1) 、FAF(i-1) 〜FAF(i-d-2) の記憶データを更新する。
φ(i-1) =φ(i)
FAF(i-1) =FAF(i)
FAF(i-2) =FAF(i-1)
・・・・・・・・・・・・・
・・・・・・・・・・・・・
FAF(i-d) =FAF(i-d+1)
FAF(i-d-1) =FAF(i-d)
FAF(i-d-2) =FAF(i-d-1)
φ(i-1) =φ(i)
FAF(i-1) =FAF(i)
FAF(i-2) =FAF(i-1)
・・・・・・・・・・・・・
・・・・・・・・・・・・・
FAF(i-d) =FAF(i-d+1)
FAF(i-d-1) =FAF(i-d)
FAF(i-d-2) =FAF(i-d-1)
尚、今回の空燃比補正係数補正値ΔFAF(i) を次式により算出した後、今回の空燃比補正係数補正値ΔFAF(i) を前回の空燃比補正係数FAF(i-1) に加算して今回の空燃比補正係数FAF(i) を求めるようにしても良い。
ΔFAF(i) =F1・Δφ(i) +F2・ΔFAF(i-1) +…
…+Fd+1 ・ΔFAF(i-d) +Fd+2 ・ΔFAF(i-d-1)
+F0・(φref −φ(i) )
ΔFAF(i) =F1・Δφ(i) +F2・ΔFAF(i-1) +…
…+Fd+1 ・ΔFAF(i-d) +Fd+2 ・ΔFAF(i-d-1)
+F0・(φref −φ(i) )
この場合は、次回の空燃比補正係数FAF、空燃比補正係数補正値ΔFAFの演算に備えて、ΔFAF(i-1) 〜FAF(i-d-1) の記憶データを更新するようにすれば良い。
以上説明した本実施例によれば、リッチ方向の無駄時間劣化度合DLR に基づいて制御周期を変更するリッチ側制御特性変更期間と、リーン方向の無駄時間劣化度合DLL に基づいて制御周期を変更するリーン側制御特性変更期間とを、空燃比センサ24の出力信号の微分値に基づいて判別するようにしたので、空燃比フィードバック制御系の制御特性を適正なタイミングで各方向の無駄時間劣化度合DLR ,DLL に応じた適正な制御特性に変更することができ、排気エミッションの悪化を最も招きやすい無駄時間の非対称劣化による制御結果のハンチング(発散)を防止できる。しかも、制御周期の変更によって、比較的簡単な処理で空燃比フィードバック制御系の制御特性を変更することができ、ソフトウエアの複雑化やデータ量膨大化を回避することができる。
しかも、本実施例では、リッチ方向の応答時間劣化度合DTR と代表無駄時間劣化度合DLとの比DTR /DLに基づいてリッチ側制限値補正係数CFAFGRを算出し、リーン方向の応答時間劣化度合DTL と代表無駄時間劣化度合DLとの比DTL /DLに基づいてリーン側制限値補正係数CFAFGLを算出するようにしたので、各制限値補正係数CFAFGR,CFAFGLによってリッチ側制限値FAFGRとリーン側制限値FAFGLを、リッチ側とリーン側とでそれぞれ最適な制限値に設定することができ、リッチ方向/リーン方向の非対称劣化によるオーバーシュートをより確実に防止することができる。
尚、本発明は、リッチ方向の応答時間劣化度合DTR と代表無駄時間劣化度合DLとの差|DTR −DL|に基づいてリッチ側制限値補正係数CFAFGRを算出し、リーン方向の応答時間劣化度合DTL と代表無駄時間劣化度合DLとの差|DTL −DL|に基づいてリーン側制限値補正係数CFAFGLを算出するようにしても良く、この場合でも、同様の効果を得ることができる。
或は、各方向の応答時間劣化度合DTL ,DTR のうちの大きい方を代表応答時間劣化度合DTとし、この代表応答時間劣化度合DTと代表無駄時間劣化度合DLとの比DT/DLに基づいて制限値補正係数CFAFGを算出し、この制限値補正係数CFAFGをリッチ側制限値の初期値FAFGR0とリーン側制限値の初期値FAFGL0に乗算してリッチ側制限値FAFGRとリーン側制限値FAFGLを算出するようにしても良い。
FAFGR=CFAFG・FAFGR0
FAFGL=CFAFG・FAFGL0
FAFGR=CFAFG・FAFGR0
FAFGL=CFAFG・FAFGL0
このように、代表応答時間劣化度合DTと代表無駄時間劣化度合DLとの比DT/DLに基づいて制限値補正係数CFAFGを算出して、この制限値補正係数CFAFGによってリッチ側制限値FAFGRとリーン側制限値FAFGLを補正すれば、代表応答時間劣化度合DTと代表無駄時間劣化度合DLとの差が大きくなるほど、リッチ側制限値FAFGRとリーン側制限値FAFGLとの間の幅を狭くするという制御が可能となり、オーバーシュートを効果的に防止することができる。
この場合も、代表応答時間劣化度合DTと代表無駄時間劣化度合DLとの比DT/DLに代えて、両者の差|DT−DL|に基づいて制限値補正係数CFAFGを算出し、この制限値補正係数CFAFGによってリッチ側制限値FAFGRとリーン側制限値FAFGLを補正するようにしても良く、この場合でも、同様の効果を得ることができる。
尚、本発明は、状態フィードバックで空燃比を制御するシステムに限定されず、PID制御等、他の方式のフィードバック制御で空燃比を制御するシステムに適用して実施できる。
その他、本発明は、図1に示すような吸気ポート噴射式の内燃機関に限定されず、筒内噴射式の内燃機関や、吸気ポート噴射用の燃料噴射弁と筒内噴射用の燃料噴射弁の両方を備えたデュアル噴射式の内燃機関にも適用して実施できる等、要旨を逸脱しない範囲内で種々変更して実施できることは言うまでもない。
11…エンジン(内燃機関)、12…吸気管、14…エアフローメータ、15…スロットルバルブ、20…燃料噴射弁、22…排気管、23…触媒、24…空燃比センサ、27…ECU(無駄時間検出手段,応答時間検出手段,無駄時間劣化度合算出手段,応答時間劣化度合算出手段,制御特性変更手段,フィードバック補正量制限値補正手段)
Claims (5)
- 内燃機関の排出ガスの空燃比を検出する空燃比センサの検出値に基づいて内燃機関に噴射する燃料量をフィードバック制御する空燃比フィードバック制御系と、
内燃機関に噴射した燃料量の変化が前記空燃比センサの出力の変化として現れるまでの無駄時間を、空燃比の変化方向がリッチ方向の無駄時間とリーン方向の無駄時間とに分けて検出する無駄時間検出手段と、
前記無駄時間検出手段で検出した各方向の無駄時間と前記フィードバック制御の初期設定に用いられた各々の初期値との比に基づいてリッチ方向の無駄時間劣化度合とリーン方向の無駄時間劣化度合をそれぞれ算出する無駄時間劣化度合算出手段と、
前記リッチ方向の無駄時間劣化度合に基づいて前記空燃比フィードバック制御系の制御特性を変更するリッチ側制御特性変更期間と前記リーン方向の無駄時間劣化度合に基づいて前記空燃比フィードバック制御系の制御特性を変更するリーン側制御特性変更期間とを判別して各期間毎に前記空燃比フィードバック制御系の制御特性を各方向の無駄時間劣化度合に応じた制御特性に変更する制御特性変更手段と
を備えていることを特徴とする内燃機関の空燃比制御装置。 - 前記空燃比センサの応答時間を空燃比の変化方向がリッチ方向の応答時間とリーン方向の応答時間とに分けて検出する応答時間検出手段と、
前記応答時間検出手段で検出した各方向の応答時間と前記フィードバック制御の初期設定に用いられた各々の初期値との比に基づいてリッチ方向の応答時間劣化度合とリーン方向の応答時間劣化度合をそれぞれ算出する応答時間劣化度合算出手段と、
前記各方向の無駄時間劣化度合及び前記各方向の応答時間劣化度合に基づいて前記空燃比フィードバック制御系のフィードバック補正量の制限値を補正するフィードバック補正量制限値補正手段と
を備えていることを特徴とする請求項1に記載の内燃機関の空燃比制御装置。 - 前記制御特性変更手段は、前記空燃比フィードバック制御系の制御特性を変更する手段として制御周期を変更することを特徴とする請求項1又は2に記載の内燃機関の空燃比制御装置。
- 前記制御特性変更手段は、前記空燃比センサの出力の微分値に基づいて前記リッチ側制御特性変更期間と前記リーン側制御特性変更期間とを判別することを特徴とする請求項1乃至3のいずれかに記載の内燃機関の空燃比制御装置。
- 前記制御特性変更手段は、前記空燃比センサの出力の微分値がプラス値となる期間を前記リーン側制御特性変更期間と判別し、前記空燃比センサの出力の微分値がマイナス値となる期間を前記リッチ側制御特性変更期間と判別することを特徴とする請求項4に記載の内燃機関の空燃比制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008108001A JP2009257221A (ja) | 2008-04-17 | 2008-04-17 | 内燃機関の空燃比制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008108001A JP2009257221A (ja) | 2008-04-17 | 2008-04-17 | 内燃機関の空燃比制御装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009257221A true JP2009257221A (ja) | 2009-11-05 |
Family
ID=41384941
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008108001A Pending JP2009257221A (ja) | 2008-04-17 | 2008-04-17 | 内燃機関の空燃比制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009257221A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140229089A1 (en) * | 2013-02-11 | 2014-08-14 | Ford Global Technologies, Llc | Bias mitigation for air-fuel ratio sensor degradation |
-
2008
- 2008-04-17 JP JP2008108001A patent/JP2009257221A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140229089A1 (en) * | 2013-02-11 | 2014-08-14 | Ford Global Technologies, Llc | Bias mitigation for air-fuel ratio sensor degradation |
US9328687B2 (en) * | 2013-02-11 | 2016-05-03 | Ford Global Technologies, Llc | Bias mitigation for air-fuel ratio sensor degradation |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2009115012A (ja) | 内燃機関の空燃比制御装置 | |
JP4314585B2 (ja) | 内燃機関の制御装置 | |
JP3758134B2 (ja) | 内燃機関の制御装置 | |
WO2019198546A1 (ja) | 空燃比制御装置 | |
JP4361917B2 (ja) | エンジンの制御装置 | |
JP2007211609A (ja) | 内燃機関の気筒別空燃比制御装置 | |
JP2009257225A (ja) | 内燃機関の空燃比制御装置 | |
JP2004108183A (ja) | 内燃機関の空燃比制御装置 | |
JP2927074B2 (ja) | 内燃機関の空燃比制御装置 | |
JP2004190591A (ja) | 内燃機関の制御装置 | |
JP5543852B2 (ja) | 内燃機関の空燃比制御装置 | |
JP2009257221A (ja) | 内燃機関の空燃比制御装置 | |
JP3939026B2 (ja) | 三元触媒の酸素ストレージ量制御装置 | |
JP2000310140A (ja) | 内燃機関の空燃比制御装置 | |
JPH08218934A (ja) | エンジンの吸入空気量検出装置 | |
JP2010230016A (ja) | 内燃機関の気筒別空燃比制御装置 | |
JP4258733B2 (ja) | 内燃機関の空燃比制御装置 | |
JP4449603B2 (ja) | 内燃機関の燃料噴射制御装置 | |
JP2010084671A (ja) | 内燃機関の空燃比制御装置 | |
JP5472270B2 (ja) | 車両の制御装置 | |
JP5342618B2 (ja) | 内燃機関の空燃比制御装置 | |
JP6879460B2 (ja) | エンジンの制御装置 | |
JP3966177B2 (ja) | 内燃機関の空燃比制御装置 | |
JP4361702B2 (ja) | 内燃機関の制御装置 | |
JP3446606B2 (ja) | 内燃機関の空燃比制御装置 |