JP2008215106A - 内燃機関の空燃比制御装置 - Google Patents
内燃機関の空燃比制御装置 Download PDFInfo
- Publication number
- JP2008215106A JP2008215106A JP2007050460A JP2007050460A JP2008215106A JP 2008215106 A JP2008215106 A JP 2008215106A JP 2007050460 A JP2007050460 A JP 2007050460A JP 2007050460 A JP2007050460 A JP 2007050460A JP 2008215106 A JP2008215106 A JP 2008215106A
- Authority
- JP
- Japan
- Prior art keywords
- fuel ratio
- air
- fuel
- correction value
- basic
- 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)
- Exhaust Gas After Treatment (AREA)
Abstract
【課題】 目標空燃比と少なくとも上流側空燃比センサの出力値とに基づいて空燃比をフィードバック制御する空燃比制御装置において、メインフィードバック制御開始後に空燃比を目標空燃比に迅速に収束させるように基本補正値を求めておくこと。
【解決手段】 この装置は、メインフィードバック制御条件が成立していなくても、基本補正値算出許可条件が成立しているときには、現時点における上流側空燃比センサ66の出力値vabyfsと、指示噴射量Fi(k-N)と、目標空燃比決定手段A2により決定されていた目標空燃比abyfr(k-N)と、から目標空燃比を得るために必要である真の指示噴射量を求めるとともに、この真の指示噴射量と補正前基本燃料噴射量算出手段A3により決定されていた補正前基本燃料噴射量Fbaseb(k-N)とから補正前基本燃料噴射量に対する基本補正値KFを算出する基本補正値算出手段A16を備える。
【選択図】 図4
【解決手段】 この装置は、メインフィードバック制御条件が成立していなくても、基本補正値算出許可条件が成立しているときには、現時点における上流側空燃比センサ66の出力値vabyfsと、指示噴射量Fi(k-N)と、目標空燃比決定手段A2により決定されていた目標空燃比abyfr(k-N)と、から目標空燃比を得るために必要である真の指示噴射量を求めるとともに、この真の指示噴射量と補正前基本燃料噴射量算出手段A3により決定されていた補正前基本燃料噴射量Fbaseb(k-N)とから補正前基本燃料噴射量に対する基本補正値KFを算出する基本補正値算出手段A16を備える。
【選択図】 図4
Description
本発明は、内燃機関の排気通路に配設された空燃比センサの出力値に基づいて同機関に供給される混合気の空燃比(以下、単に「機関の空燃比」と称呼することもある。)を制御する内燃機関の空燃比制御装置に関する。
従来から知られるこの種の空燃比制御装置は、排気通路に配設された触媒(三元触媒)と上流側空燃比センサと下流側空燃比センサとを備えている。上流側空燃比センサ及び下流側空燃比センサは、その触媒の上流側及び下流側にそれぞれ配設されている。空燃比制御装置は、上流側空燃比センサの出力値及び下流側空燃比センサの出力値に基づいて機関の空燃比を制御するようになっている。より具体的に述べると、空燃比制御装置は、上流側空燃比センサの出力値に基づいて求められるメインフィードバック補正値によって基本燃料噴射量を補正するとともに、下流側空燃比センサ出力値に基づいて求められるサブフィードバック補正値によって基本燃料噴射量を補正するようになっている。
ところで、一般に、触媒は酸素吸蔵機能を有するから、触媒上流の空燃比変化は所定の遅れ時間が経過した後に触媒下流の空燃比変化となって現れる。従って、上流側空燃比センサの出力値が目標空燃比よりリッチ側の空燃比を示しているときに下流側空燃比センサの出力値が目標空燃比よりリーン側の空燃比を示す状況、又は、上流側空燃比センサの出力値が目標空燃比よりリーン側の空燃比を示しているときに下流側空燃比センサの出力値が目標空燃比よりリッチ側の空燃比を示す状況、が発生する。
例えば、上流側空燃比センサの出力値が目標空燃比よりリッチ側の空燃比を示しているときに下流側空燃比センサの出力値が目標空燃比よりリーン側の空燃比を示す状況においては、メインフィードバック補正値は基本燃料噴射量を減少させるように補正し、サブフィードバック補正値は基本燃料噴射量を増大させるように補正する。一方、上流側空燃比センサの出力値が目標空燃比よりリーン側の空燃比を示しているときに下流側空燃比センサの出力値が目標空燃比よりリッチ側の空燃比を示す状況においては、メインフィードバック補正値は基本燃料噴射量を増大させるように補正し、サブフィードバック補正値は基本燃料噴射量を減少させるように補正する。即ち、上述した状況において、メインフィードバック補正値とサブフィードバック補正値との基本燃料噴射量の補正方向が互いに逆方向となり、メインフィードバック補正値によるメインフィードバック制御とサブフィードバック補正値によるサブフィードバック制御との間に制御上の干渉が発生する。
このような事態を避けるため、従来の空燃比制御装置の一つは、現時点における上流側空燃比センサの出力値に基いて得られる空燃比に対してハイパスフィルタ処理を施すことにより得られる値と、現時点よりも所定の無駄時間だけ前の時点において決定されていた目標空燃比と、の差である「メインフィードバック制御用偏差」に基いてメインフィードバック補正値を更新するようになっている。ここで、無駄時間とは、噴射指示信号に基いてインジェクタ(燃料噴射手段)から燃料が噴射された時点から同噴射された燃料が気筒内において燃焼することにより生成された排ガスが上流側空燃比センサに到達する時点までの時間のことである。
上記「上流側空燃比センサの出力値に基いて得られる空燃比に対してハイパスフィルタ処理を施すことにより得られる値」は、触媒の酸素吸蔵機能によって触媒の下流には現れない空燃比変動の高周波成分のみを反映した値になる。従って、メインフィードバック制御用偏差は、触媒の酸素吸蔵機能によって触媒の下流には現れない空燃比変動の高周波成分のみを反映した値になる。この結果、上述した制御上の干渉は発生せず、メインフィードバック補正値に基くメインフィードバック制御によって空燃比の過渡的な変動が抑制され、サブフィードバック補正値に基くサブフィードバック制御によって空燃比の比較的穏やかな変動(目標空燃比からのズレ)が抑制される。
ところで、基本燃料噴射量は、機関の空燃比を目標空燃比に一致させるための燃料噴射量であり、例えばエアフローメータの出力値や空気量推定モデル等を利用して求められる筒内吸入空気量の取得値(推定値を含む。)と、目標空燃比と、に基いて求められる。しかしながら、エアフローメータの検出精度や空気量推定モデルの推定精度に起因し、筒内吸入空気量の検出値には定常的な誤差が含まれる。加えて、インジェクタの製造公差や噴射特性の経年変化により、同インジェクタに対して同インジェクタが噴射するように指示された燃料の量(指示噴射量)と同インジェクタから実際に噴射される燃料の量(実燃料噴射量)と間には定常的な誤差が発生する。
このため、目標空燃比を得るために必要な真の指示噴射量と基本燃料噴射量との間には定常的な誤差(以下、「定常誤差」という。)が常に含まれる。この定常誤差により生じる空燃比の目標空燃比からの偏移は、比較的緩慢に変化するから、上述したハイパスフィルタ処理により除去されてしまう。従って、この定常誤差は、メインフィードバック制御用偏差には反映されないので、メインフィードバック制御によって補償され得ない。これに対し、この定常誤差は、触媒の下流側の空燃比偏移として現れるので、サブフィードバック制御において上流側空燃比センサの出力値に応じた値を積分処理することによって理論上は補償され得る。
一方、上記定常誤差は、筒内吸入空気流量の取得誤差及び/又は上記インジェクタの噴射特性が機関の負荷等で区分される運転領域毎に比較的大きく異なることに起因して、運転領域毎に比較的大きく異なる場合がある。そのような場合、機関の運転領域が変化すると上記定常誤差(基本燃料噴射量の誤差)も比較的急激に変化するので、機関の空燃比も比較的急激に変化する。この空燃比変化は、上記ハイパスフィルタ処理によってカットされるが、触媒の酸素吸蔵機能によっては吸収されない程度の変化であるから触媒の下流に現れる。
ところが、このような定常誤差の変化に伴う空燃比変動は、少し遅れて触媒下流の排ガスの空燃比の変化として現れるので、サブフィードバック制御によっては迅速に補償され得ない可能性がある。この結果、運転領域が変化した場合等において、空燃比が変動してエミッションが一時的に悪化する恐れがある。
そこで、従来の空燃比制御装置の一つは、所定のメインフィードバック制御条件が成立しているとき、メインフィードバック補正値及びサブフィードバック補正値とは別に、基本補正値KFを以下に述べる方法に基いて算出し、その基本補正値KFによって上記定常誤差(即ち、補正前基本燃料噴射量Fbasebの誤差)を補償するようになっている。より具体的に述べると、基本補正値KFは、下記の(1)式により定義される。
(1)式において、Fbasetは、目標空燃比を得るために必要な真の指示噴射量であり、誤差を含まない基本燃料噴射量であるということもできる。以下、Fbasetを、「真の基本燃料噴射量」と称呼する。なお、添え字の(k-N)は、今回の吸気行程からNストローク(4気筒エンジンにおいて、N・180°CA、CA;クランク角)前の吸気行程に対した値であることを示している。従って、添え字(k)が付された変数は、今回の吸気行程(又は現時点)に対応した値であることを示す。この表記方法は、以下において他のパラメータについても同様に用いられる。
(1)式の真の基本燃料噴射量Fbaset(k-N)は、下記の(2)式により算出される。(2)式において、abyfsは上流側空燃比センサの出力値に基づいて求められる空燃比(以下、「検出空燃比」と称呼する。)であり、Fiはインジェクタに指示された最終燃料噴射量Fi(k)(指示噴射量)である。abyfrは目標空燃比である。
上記(2)式について説明を加える。上述したNストロークは上記「無駄時間」に対応するストローク数に設定されている。つまり、現時点における検出空燃比abyfs(k)は最終燃料噴射量Fi(k-N)に基いて噴射された燃料によりもたらされている空燃比である。従って、(2)式における右辺の分子のabyfs(k)・Fi(k-N)は、最終燃料噴射量Fi(k-N)を決定した際の筒内空気量を表していることになる。それ故、(2)式に示したように、最終燃料噴射量Fi(k-N)を決定した時点の筒内空気量(abyfs(k)・Fi(k-N))を、最終燃料噴射量Fi(k-N)を決定した時点の目標空燃比abyfr(k-N)で除することにより、真の基本燃料噴射量Fbaset(k-N)が算出される。
一方、上記(1)式にて使用される補正前基本燃料噴射量Fbaseb(k)は、下記(3)式に基いて求められる。(3)式においてMc(k)はエアフローメータ及び/又は空気量推定モデルから取得(推定・検出)された今回の吸気行程に対する筒内吸入空気量であり、abyfr(k)は現時点における(今回の吸気行程に対する)目標空燃比である。
そこで、従来の空燃比制御装置は、上記(1)〜(3)式から得られる下記(4)式に基いて基本補正値KFを求め、求めた基本補正値KFを同基本補正値KFを算出したときの運転領域に対応させてメモリに記憶しておく。
更に、従来の制御装置は、メインフィードバック制御用偏差を比例・積分処理(PI処理)することによりメインフィードバック補正値KFmainを求め、下流側空燃比センサの出力値により取得される触媒下流側空燃比と触媒下流側目標空燃比との偏差(サブフィードバック制御用偏差)を比例・積分・微分処理(PID処理)することによりサブフィードバック補正値Fisubを求める。そして、その制御装置は、メインフィードバック補正値KFmain、サブフィードバック補正値Fisub及び運転領域に応じた基本補正値KFを下記(5)式に適用することにより、今回の吸気行程に対する最終燃料噴射量Fi(k)を決定し、その最終燃料噴射量Fi(k)に応じた燃料量の燃料をインジェクタから噴射させる。この結果、従来の空燃比制御装置は、運転領域が変化した場合においても、サブフィードバック制御に依ることなく機関の空燃比を迅速に目標空燃比に近づけることができる(特許文献1を参照。)。
特開2005−273524号公報
しかしながら、上記従来の空燃比制御装置は、メインフィードバック制御条件が成立しているときに限り基本補正値KFを算出するようになっているから、メインフィードバック制御が開始された時点において基本補正値KFが適正値となっていない場合、基本補正値KFが適正値に到達するまでに時間を要する。この理由の一つは、基本補正値KFを求める際に、何れも前記無駄時間だけ現時点よりも前の時点の噴射指示信号に含まれていた指示噴射量、目標空燃比及び補正前基本燃料噴射量等を必要とするからである。その結果、従来の空燃比制御装置によれば、メインフィードバック制御が開始された直後において空燃比が一時的に乱れ、エミッションが悪化する恐れがある。
従って、本発明の目的は、メインフィードバック制御条件が成立していない場合であっても基本補正値KFを算出することができるときには、基本補正値KFを算出しておくことにより、メインフィードバック制御開始後において基本燃料噴射量の誤差を迅速に補償し、以って、機関の空燃比を目標空燃比に迅速に近づけることが可能な空燃比制御装置を提供することにある。
本発明による内燃機関の空燃比制御装置は、
内燃機関の排気通路に配設された触媒よりも上流側の同排気通路に配設されるとともに同機関に供給された混合気の空燃比に応じた出力値を出力する上流側空燃比センサと、
噴射指示信号に含まれる指示噴射量の燃料が前記機関の気筒に供給されるように同噴射指示信号に応答して燃料を噴射する燃料噴射手段と、
を備えた内燃機関に適用される。
内燃機関の排気通路に配設された触媒よりも上流側の同排気通路に配設されるとともに同機関に供給された混合気の空燃比に応じた出力値を出力する上流側空燃比センサと、
噴射指示信号に含まれる指示噴射量の燃料が前記機関の気筒に供給されるように同噴射指示信号に応答して燃料を噴射する燃料噴射手段と、
を備えた内燃機関に適用される。
この空燃比制御装置は、
一回の吸気行程において前記機関の一つの気筒内に吸入される空気量である筒内吸入空気量を同機関の運転状態に基づいて取得する筒内吸入空気量取得手段と、
前記機関の運転状態に応じて前記機関に供給される混合気の空燃比の目標値である目標空燃比を決定する目標空燃比決定手段と、
前記取得された筒内吸入空気量と前記決定された目標空燃比とに基いて前記機関に供給される混合気の空燃比を同目標空燃比とするための補正前基本燃料噴射量を決定する補正前基本燃料噴射量算出手段と、
を備える。
一回の吸気行程において前記機関の一つの気筒内に吸入される空気量である筒内吸入空気量を同機関の運転状態に基づいて取得する筒内吸入空気量取得手段と、
前記機関の運転状態に応じて前記機関に供給される混合気の空燃比の目標値である目標空燃比を決定する目標空燃比決定手段と、
前記取得された筒内吸入空気量と前記決定された目標空燃比とに基いて前記機関に供給される混合気の空燃比を同目標空燃比とするための補正前基本燃料噴射量を決定する補正前基本燃料噴射量算出手段と、
を備える。
更に、この空燃比制御装置は、メインフィードバック補正値更新手段、基本補正値算出手段、最終燃料噴射量算出手段及び燃料噴射制御手段を備える。
メインフィードバック補正値更新手段は、
所定のメインフィードバック制御条件が成立しているとき、「前記噴射指示信号に基いて前記燃料噴射手段から燃料が噴射されたときから同噴射された燃料が前記気筒内において燃焼することにより生成された排ガスが前記上流側空燃比センサに到達するまでに要する時間である無駄時間」だけ現時点よりも前の時点において前記目標空燃比決定手段により決定されていた前記目標空燃比に応じた値と、前記上流側空燃比センサの現時点における出力値に応じた値と、の差に対してハイパスフィルタ処理を施すことにより得られるメインフィードバック制御用偏差、に基いてメインフィードバック補正値を更新するようになっている。
所定のメインフィードバック制御条件が成立しているとき、「前記噴射指示信号に基いて前記燃料噴射手段から燃料が噴射されたときから同噴射された燃料が前記気筒内において燃焼することにより生成された排ガスが前記上流側空燃比センサに到達するまでに要する時間である無駄時間」だけ現時点よりも前の時点において前記目標空燃比決定手段により決定されていた前記目標空燃比に応じた値と、前記上流側空燃比センサの現時点における出力値に応じた値と、の差に対してハイパスフィルタ処理を施すことにより得られるメインフィードバック制御用偏差、に基いてメインフィードバック補正値を更新するようになっている。
或いは、メインフィードバック補正値更新手段は、
前記無駄時間だけ現時点よりも前の時点において前記目標空燃比決定手段により決定されていた前記目標空燃比に応じた値と、前記上流側空燃比センサの現時点における出力値に応じた値に対してハイパスフィルタ処理を施すことにより得られる値と、の差であるメインフィードバック制御用偏差、に基いてメインフィードバック補正値を更新するようになっている。
前記無駄時間だけ現時点よりも前の時点において前記目標空燃比決定手段により決定されていた前記目標空燃比に応じた値と、前記上流側空燃比センサの現時点における出力値に応じた値に対してハイパスフィルタ処理を施すことにより得られる値と、の差であるメインフィードバック制御用偏差、に基いてメインフィードバック補正値を更新するようになっている。
基本補正値算出手段は、
前記メインフィードバック制御条件が成立しているときには成立し且つ同メインフィードバック制御条件が成立していないときであっても他の所定条件が成立していれば成立する基本補正値算出許可条件が成立しているとき、
現時点における前記上流側空燃比センサの出力値と、
前記無駄時間だけ現時点よりも前の時点の前記噴射指示信号に含まれていた指示噴射量と、
前記無駄時間だけ現時点よりも前の時点において前記目標空燃比決定手段により決定されていた目標空燃比と、
から同目標空燃比を得るために必要である真の指示噴射量を求めるとともに、
同真の指示噴射量と、
前記無駄時間だけ現時点よりも前の時点において前記補正前基本燃料噴射量算出手段により決定されていた補正前基本燃料噴射量と、
から同補正前基本燃料噴射量に対する基本補正値を算出するようになっている。
前記メインフィードバック制御条件が成立しているときには成立し且つ同メインフィードバック制御条件が成立していないときであっても他の所定条件が成立していれば成立する基本補正値算出許可条件が成立しているとき、
現時点における前記上流側空燃比センサの出力値と、
前記無駄時間だけ現時点よりも前の時点の前記噴射指示信号に含まれていた指示噴射量と、
前記無駄時間だけ現時点よりも前の時点において前記目標空燃比決定手段により決定されていた目標空燃比と、
から同目標空燃比を得るために必要である真の指示噴射量を求めるとともに、
同真の指示噴射量と、
前記無駄時間だけ現時点よりも前の時点において前記補正前基本燃料噴射量算出手段により決定されていた補正前基本燃料噴射量と、
から同補正前基本燃料噴射量に対する基本補正値を算出するようになっている。
そして、最終燃料噴射量算出手段は、
前記補正前基本燃料噴射量を前記メインフィードバック補正値及び前記基本補正値により補正して最終燃料噴射量を算出し、
燃料噴射制御手段は、
前記最終燃料噴射量を前記指示噴射量として含む噴射指示信号を前記燃料噴射手段に出力するようになっている。
前記補正前基本燃料噴射量を前記メインフィードバック補正値及び前記基本補正値により補正して最終燃料噴射量を算出し、
燃料噴射制御手段は、
前記最終燃料噴射量を前記指示噴射量として含む噴射指示信号を前記燃料噴射手段に出力するようになっている。
これによれば、基本補正値算出許可条件が成立しているとき、補正前基本燃料噴射量に対する基本補正値が算出される。基本補正値算出許可条件は、メインフィードバック制御条件が成立しているときには成立する。更に、基本補正値算出許可条件は、メインフィードバック制御条件が成立していない場合であっても他の所定条件が成立していれば成立する。
メインフィードバック制御条件が成立していない場合であっても基本補正値算出許可条件を成立させる上記「他の所定条件」が成立する場合とは、例えば、上流側空燃比センサが活性化していて、且つ、上流側空燃比センサの異常判定を行うために機関の空燃比をリッチ空燃比とリーン空燃比との間で強制的に振動させ(機関の空燃比を矩形波状に変化させ)、その際の上流側空燃比センサの出力値の変化を測定する場合などである。このように上流側空燃比センサの異常を判定するために機関の空燃比を矩形波状に変化させようとする場合、メインフィードバック制御が行われると機関の空燃比を矩形波状に変化させることができないから、メインフィードバック制御は中止される(メインフィードバック制御条件は成立しない)。しかし、上流側空燃比センサは活性化しているから、基本補正値を算出することは可能である。
更に、基本補正値算出許可条件を成立させる上記「他の所定条件」が成立する場合には、後述するように、上流側空燃比センサが完全には活性化していない場合であって、且つ、基本補正値を求めても不都合が発生しない「目標空燃比と上流側空燃比センサの出力値とが特定の条件を満足する場合」が含まれる。
この結果、メインフィードバック制御条件が成立しておらずメインフィードバック補正値を更新するメインフィードバック制御が停止されている期間においても、基本補正値が算出・更新される場合が発生する。従って、本発明による空燃比制御装置によれば、メインフィードバック制御条件が成立しておらず且つ基本補正値算出許可条件が成立している場合が終了した後にメインフィードバック制御条件が成立してメインフィードバック制御が開始されたとき、基本補正値は従来の空燃比制御装置による場合よりも適正値に近い値となっている。この結果、メインフィードバック制御の開始後において機関の空燃比をより迅速に目標空燃比に近づけることができる。
なお、本発明において、「上流側空燃比センサの出力値に応じた値」は上流側空燃比センサの出力値そのものの値であってもよい。その場合、「目標空燃比に応じた値」は、目標空燃比を上流側空燃比センサの出力値に相当する値に変換した値、又は、目標空燃比を上流側空燃比センサの出力値に相当する値に変換した値に対して更にローパスフィルタ処理等の変換処理を施した値であってもよい。また、「上流側空燃比センサの出力値に応じた値」は上流側空燃比センサの出力値から求められる空燃比であってもよい。その場合、「目標空燃比に応じた値」は、目標空燃比そのもの、又は、目標空燃比に例えばローパスフィルタ処理等の変換処理を施した値であってもよい。
また、基本補正値は、前記真の指示噴射量及び前記補正前基本燃料噴射量から実質的に求められればよい。換言すると、本発明の上記基本補正値算出手段は、上述した(4)式の右辺から明らかなように、現時点における前記上流側空燃比センサの出力値と、前記無駄時間だけ現時点よりも前の時点の前記噴射指示信号に含まれていた指示噴射量と、前記無駄時間だけ現時点よりも前の時点における筒内吸入空気量とから、基本補正値を求めるものを含む。
この空燃比制御装置において、
前記メインフィードバック制御条件は、前記上流側空燃比センサが活性化していることを同メインフィードバック制御条件が成立するための必要条件の一つに含むように設定されていることが好適である。これによれば、上流側空燃比センサが活性化していて精度良く検出空燃比が得られるときにメインフィードバック補正値が求められることになるので、メインフィードバック補正値が精度よく求められる。なお、本明細書において、ある特定条件の「必要条件」とは、その条件のみでは同特定条件が成立するとは限らないが、その条件が成立していない場合は同特定条件は成立しない条件であることを意味する。
前記メインフィードバック制御条件は、前記上流側空燃比センサが活性化していることを同メインフィードバック制御条件が成立するための必要条件の一つに含むように設定されていることが好適である。これによれば、上流側空燃比センサが活性化していて精度良く検出空燃比が得られるときにメインフィードバック補正値が求められることになるので、メインフィードバック補正値が精度よく求められる。なお、本明細書において、ある特定条件の「必要条件」とは、その条件のみでは同特定条件が成立するとは限らないが、その条件が成立していない場合は同特定条件は成立しない条件であることを意味する。
一方、前記基本補正値算出許可条件は、前記上流側空燃比センサが活性化していることを同基本補正値算出許可条件が成立するための必要条件の一つに含むように設定されていることが好適である。これによれば、上流側空燃比センサが活性化していて精度良く検出空燃比が得られるときに基本補正値が求められることになるので、基本補正値が精度よく求められる。
ところで、例えば、図14及び図15の領域A(理論空燃比よりもリッチ側の領域)に示したように、上流側空燃比センサの種類によっては、破線により示した未活性であるときの出力値に基く空燃比(検出空燃比)が実際の空燃比(即ち、実空燃比)よりリーン側の空燃比となる場合がある。なお、これらの図において実線は活性後の上流側空燃比センサの出力値と空燃比との関係を示している。検出空燃比は、上流側空燃比センサの出力値を、この活性後の上流側空燃比センサの出力値と空燃比との関係に基いて変換することにより求められる。
この場合(即ち、上流側空燃比センサが完全には活性していない半活性状態にあって、検出空燃比が実空燃比よりリーン側の空燃比となる場合)、検出空燃比が実空燃比と目標空燃比との間にあり且つ同検出空燃比のほうが同実空燃比よりも同目標空燃比に近い空燃比である場合(図14及び図15の領域Aを参照。)、検出空燃比に基いて基本補正値を求めた方が、基本補正値を求めない場合より、基本補正値を最終的に到達するであろう基本補正値(基本補正値の適正値)に近づけておくことができる。
何故なら、検出空燃比は「実空燃比が目標空燃比よりもリッチである」ことを確実に示しているので、検出空燃比に基いて求められる基本補正値は実空燃比に基いて求められる基本補正値と同様に補正前基本燃料噴射量を減少補正する値となるからである。更に、「検出空燃比と目標空燃比との差の大きさ」は「実空燃比と目標空燃比との差の大きさ」より小さいので、検出空燃比に基いて求められる基本補正値は補正前基本燃料噴射量を過剰に減少補正してしまうような値とならないからである。
これに対し、図16及び図17の領域A(理論空燃比よりもリッチ側の領域)に示したように、検出空燃比が実空燃比よりリーン側の空燃比となる場合であっても、目標空燃比が実空燃比と検出空燃比との間にあれば(実空燃比が目標空燃比よりリッチ側の空燃比であり、且つ、検出空燃比が目標空燃比よりリーン側の空燃比であれば)、検出空燃比に基いて基本補正値を求めることは望ましくない。何故なら、実空燃比が目標空燃比よりもリッチな空燃比であるので基本補正値は補正前基本燃料噴射量を減少補正する値となるべきであるのに対し、検出空燃比が目標空燃比よりリーンな空燃比となるので基本補正値は補正前基本燃料噴射量を増大補正する値となるからである。即ち、この場合、基本補正値を検出空燃比に基いて求めると、基本補正値は誤った方向への補正(誤った増大補正)を行う値となってしまうからである。
更に、図18及び図19の領域A(理論空燃比よりもリッチ側の領域)に示したように、検出空燃比が実空燃比よりリーン側の空燃比となる場合であっても、実空燃比が目標空燃比と検出空燃比の間にある(実空燃比のほうが検出空燃比よりも目標空燃比に近い空燃比である)場合、検出空燃比に基いて基本補正値を求めることは望ましくない。
何故なら、検出空燃比は「実空燃比が目標空燃比よりもリーンである」ことを示しているので、検出空燃比に基いて求められる基本補正値は実空燃比に基いて求められる基本補正値と同様に基本燃料噴射量を増大補正する値となるけれども、「検出空燃比と目標空燃比との差の大きさ」が「実空燃比と目標空燃比との差の大きさ」より大きいので、検出空燃比に基いて求められる基本補正値は補正前基本燃料噴射量を過剰に増大補正してしまうような値となるからである。
また、図15の領域B(理論空燃比よりもリーン側の領域)及び図20に示したように、上流側空燃比センサの種類によっては、破線により示した未活性であるときの出力値に基く空燃比(検出空燃比)が実際の空燃比(即ち、実空燃比)よりリッチ側の空燃比となる場合がある。
この場合(即ち、上流側空燃比センサが完全には活性していない半活性状態にあって、検出空燃比が実空燃比よりリッチ側の空燃比となる場合)、検出空燃比が実空燃比と目標空燃比との間にあり且つ同検出空燃比のほうが同実空燃比よりも同目標空燃比に近い空燃比である場合(図15の領域B及び図20を参照。)、検出空燃比に基いて基本補正値を求めた方が、基本補正値を求めない場合より、基本補正値を適正値に近づけておくことができる。
何故なら、検出空燃比は「実空燃比が目標空燃比よりもリーンである」ことを確実に示しているので、検出空燃比に基いて求められる基本補正値は実空燃比に基いて求められる基本補正値と同様に補正前基本燃料噴射量を増大補正する値となるからである。更に、「検出空燃比と目標空燃比との差の大きさ」は「実空燃比と目標空燃比との差の大きさ」より小さいので、検出空燃比に基いて求められる基本補正値は補正前基本燃料噴射量を過剰に増大補正してしまうような値とならないからである。
これに対し、図17の領域B(理論空燃比よりもリーン側の領域)及び図21に示したように、検出空燃比が実空燃比よりリッチ側の空燃比となる場合であっても、目標空燃比が実空燃比と検出空燃比との間にあれば(実空燃比が目標空燃比よりリーン側の空燃比であり、且つ、検出空燃比が目標空燃比よりリッチ側の空燃比であれば)、検出空燃比に基いて基本補正値を求めることは望ましくない。何故なら、実空燃比が目標空燃比よりもリーンな空燃比であるので基本補正値は補正前基本燃料噴射量を増大補正する値となるべきであるのに対し、検出空燃比が目標空燃比よりリッチな空燃比となるので、基本補正値は補正前基本燃料噴射量を減少補正する値となるからである。即ち、この場合、基本補正値を検出空燃比に基いて求めると、基本補正値は誤った方向への補正(誤った減少補正)を行う値となってしまうからである。
更に、図19の領域B(理論空燃比よりもリーン側の領域)及び図22に示したように、検出空燃比が実空燃比よりリッチ側の空燃比となる場合となる場合であっても、実空燃比が目標空燃比と検出空燃比の間にある(実空燃比のほうが検出空燃比よりも目標空燃比に近い空燃比である)場合、検出空燃比に基いて基本補正値を求めることは望ましくない。
何故なら、検出空燃比は「実空燃比が目標空燃比よりもリッチである」ことを示しているので、検出空燃比に基いて求められる基本補正値は実空燃比に基いて求められる基本補正値と同様に補正前基本燃料噴射量を減少補正する値となるけれども、「検出空燃比と目標空燃比との差の大きさ」が「実空燃比と目標空燃比との差の大きさ」より大きいので、検出空燃比に基いて求められる基本補正値は補正前基本燃料噴射量を過剰に減少補正してしまうような値となるからである。
以上から、
基本補正値算出許可条件は、
前記上流側空燃比センサが活性化していない場合であっても、前記上流側空燃比センサの出力値に基いて得られる空燃比である検出空燃比が前記機関に供給される混合気の実際の空燃比である実空燃比と前記目標空燃比との間に存在すると判断されるときにも成立し得るように設定されていることが好適である。
基本補正値算出許可条件は、
前記上流側空燃比センサが活性化していない場合であっても、前記上流側空燃比センサの出力値に基いて得られる空燃比である検出空燃比が前記機関に供給される混合気の実際の空燃比である実空燃比と前記目標空燃比との間に存在すると判断されるときにも成立し得るように設定されていることが好適である。
即ち、基本補正値算出許可条件は、前記上流側空燃比センサが活性化していること、及び、前記上流側空燃比センサが活性化していない場合であっても前記上流側空燃比センサの出力値に基いて得られる空燃比である検出空燃比が前記機関に供給される混合気の実際の空燃比である実空燃比と前記目標空燃比との間に存在していると判断されること、の何れか一方を同基本補正値算出許可条件が成立するための必要条件の一つに含むように設定されていることが望ましい。
より具体的には、前記基本補正値算出許可条件は、
前記上流側空燃比センサが活性化していること、及び、前記上流側空燃比センサが活性していない場合であっても前記機関に供給される混合気の実際の空燃比である実空燃比に対して前記上流側空燃比センサの出力値に基いて得られる空燃比である検出空燃比がリーン側の空燃比となる領域内に同実空燃比が存在し且つ前記目標空燃比が同検出空燃比よりもリーン側に存在していること、の何れか一方を同基本補正値算出許可条件が成立するための必要条件の一つに含む、ように設定されていることが好ましい。
前記上流側空燃比センサが活性化していること、及び、前記上流側空燃比センサが活性していない場合であっても前記機関に供給される混合気の実際の空燃比である実空燃比に対して前記上流側空燃比センサの出力値に基いて得られる空燃比である検出空燃比がリーン側の空燃比となる領域内に同実空燃比が存在し且つ前記目標空燃比が同検出空燃比よりもリーン側に存在していること、の何れか一方を同基本補正値算出許可条件が成立するための必要条件の一つに含む、ように設定されていることが好ましい。
同様に、前記基本補正値算出許可条件は、
前記上流側空燃比センサが活性化していること、及び、前記上流側空燃比センサが活性していない場合であっても前記機関に供給される混合気の実際の空燃比である実空燃比に対して前記上流側空燃比センサの出力値に基いて得られる空燃比である検出空燃比がリッチ側の空燃比となる領域内に同実空燃比が存在し且つ前記目標空燃比が同検出空燃比よりもリッチ側に存在していること、の何れか一方を同基本補正値算出許可条件が成立するための必要条件の一つに含む、ように設定されていることが好ましい。
前記上流側空燃比センサが活性化していること、及び、前記上流側空燃比センサが活性していない場合であっても前記機関に供給される混合気の実際の空燃比である実空燃比に対して前記上流側空燃比センサの出力値に基いて得られる空燃比である検出空燃比がリッチ側の空燃比となる領域内に同実空燃比が存在し且つ前記目標空燃比が同検出空燃比よりもリッチ側に存在していること、の何れか一方を同基本補正値算出許可条件が成立するための必要条件の一つに含む、ように設定されていることが好ましい。
これによれば、上流側空燃比センサが未活性であるためにメインフィードバック制御条件が不成立であるが故にメインフィードバック制御が行われない期間においても、基本補正値が算出される場合が生じる。従って、本発明による空燃比制御装置は、従来の空燃比制御装置に比較し、メインフィードバック制御実行開始後において機関の空燃比を迅速に目標空燃比に近づけることができる。
以下、本発明による内燃機関の空燃比制御装置(以下、単に「本装置」と称呼することもある。)の各実施形態について図面を参照しつつ説明する。
(第1実施形態)
図1は、第1実施形態による空燃比制御装置を火花点火式多気筒(4気筒)内燃機関10に適用したシステムの概略構成を示している。この内燃機関10は、シリンダブロック、シリンダブロックロワーケース及びオイルパン等を含むシリンダブロック部20と、シリンダブロック部20の上に固定されるシリンダヘッド部30と、シリンダブロック部20にガソリン混合気を供給するための吸気系統40と、シリンダブロック部20からの排気ガスを外部に放出するための排気系統50とを含んでいる。
図1は、第1実施形態による空燃比制御装置を火花点火式多気筒(4気筒)内燃機関10に適用したシステムの概略構成を示している。この内燃機関10は、シリンダブロック、シリンダブロックロワーケース及びオイルパン等を含むシリンダブロック部20と、シリンダブロック部20の上に固定されるシリンダヘッド部30と、シリンダブロック部20にガソリン混合気を供給するための吸気系統40と、シリンダブロック部20からの排気ガスを外部に放出するための排気系統50とを含んでいる。
シリンダブロック部20は、シリンダ21、ピストン22、コンロッド23及びクランク軸24を含んでいる。ピストン22はシリンダ21内を往復動し、ピストン22の往復動がコンロッド23を介してクランク軸24に伝達され、これにより同クランク軸24が回転するようになっている。シリンダ21とピストン22のヘッドは、シリンダヘッド部30とともに燃焼室25を形成している。
シリンダヘッド部30は、燃焼室25に連通した吸気ポート31、吸気ポート31を開閉する吸気弁32、吸気弁32を駆動するインテークカムシャフトを含むとともにインテークカムシャフトの位相角を連続的に変更する可変吸気タイミング装置33、可変吸気タイミング装置33のアクチュエータ33a、燃焼室25に連通した排気ポート34、排気ポート34を開閉する排気弁35、排気弁35を駆動するエキゾーストカムシャフト36、点火プラグ37、点火プラグ37に与える高電圧を発生するイグニッションコイルを含むイグナイタ38及び燃料を吸気ポート31内に噴射するインジェクタ(燃料噴射手段)39を備えている。後述するように、燃料噴射手段としてのインジェクタ39は、噴射指示信号に応答して同噴射指示信号に含まれる指示噴射量の燃料を噴射するようになっている。
吸気系統40は、吸気ポート31に連通し吸気ポート31とともに吸気通路を形成するインテークマニホールドを含む吸気管41、吸気管41の端部に設けられたエアフィルタ42、吸気管41内にあって吸気通路の開口断面積を可変とするスロットル弁43及びスロットル弁駆動手段を構成するDCモータからなるスロットル弁アクチュエータ43aを備えている。
排気系統50は、排気ポート34に連通したエキゾーストマニホールド51、エキゾーストマニホールド51(実際には、各排気ポート34に連通した各々のエキゾーストマニホールド51が集合した集合部)に接続されたエキゾーストパイプ(排気管)52、上流側の三元触媒53及び下流側の三元触媒54を備えている。上流側の三元触媒53は、エキゾーストパイプ52に配設(介装)されている。排気ポート34、エキゾーストマニホールド51及びエキゾーストパイプ52は排気通路を構成している。
上流側の三元触媒53は、上流側触媒コンバータ又はスタート・キャタリティック・コンバータとも称呼される。上流側の三元触媒53は、以下、「第1触媒53」とも称呼する。下流側の三元触媒54は、第1触媒53の下流のエキゾーストパイプ52に配設(介装)されている。下流側の三元触媒54は、車両のフロア下方に配設されるため、アンダ・フロア・キャタリティック・コンバータとも称呼される。下流側の三元触媒54は、以下、「第2触媒54」とも称呼する。第1触媒53及び第2触媒54は、何れも触媒物質である貴金属の他に、セリア(CeO2)を担持していて、後述する酸素吸蔵・放出機能(単に「酸素吸蔵機能」又は「O2ストレージ機能」とも称呼する。)を有する。
一方、このシステムは、熱線式エアフローメータ61、スロットルポジションセンサ62、カムポジションセンサ63、クランクポジションセンサ64、水温センサ65、第1触媒53の上流の排気通路(本例では、上記各々のエキゾーストマニホールド51が集合した集合部)に配設された空燃比センサ66(以下、「上流側空燃比センサ66」とも称呼する。)、第1触媒53の下流であって第2触媒54の上流の排気通路に配設された酸素濃度センサ67(以下、「下流側酸素濃度センサ67」とも称呼する。)及びアクセル開度センサ68を備えている。なお、下流側酸素濃度センサ67は、下流側空燃比センサ67とも称呼され得る。但し、本明細書において、特に断りのない限り、「空燃比センサ」と呼ばれるセンサは上流側空燃比センサ66を意味することとする。
熱線式エアフローメータ61は、吸気管41内を流れる吸入空気の単位時間あたりの質量流量を検出し、質量流量Gaを表す信号を出力するようになっている。スロットルポジションセンサ62は、スロットル弁43の開度を検出し、スロットル弁開度TAを表す信号を出力するようになっている。カムポジションセンサ63は、インテークカムシャフトが90°回転する毎に(即ち、クランク軸24が180°回転する毎に)一つのパルスを有する信号(G2信号)を発生するようになっている。クランクポジションセンサ64は、クランク軸24が10°回転する毎に幅狭のパルスを有するとともにクランク軸24が360°回転する毎に幅広のパルスを有する信号を出力するようになっている。この信号は、機関回転速度NEを表す。水温センサ65は、内燃機関10の冷却水の温度を検出し、冷却水温THWを表す信号を出力するようになっている。
上流側空燃比センサ66は限界電流式の酸素濃度センサである。上流側空燃比センサ66は素子温度が活性化温度に到達したときに活性化する。上流側空燃比センサ66は、図2の実線により示したように、配設された部分の排気通路を通過するガス(被検出排ガス)の空燃比A/F(従って、機関に供給される混合気の空燃比)に応じた電圧である出力値vabyfsを出力するようになっている。
出力値vabyfsは、被検出排ガスの空燃比が理論空燃比であるときに値vstoichに一致する。出力値vabyfsは、被検出排ガスの空燃比が大きくなる(リーンとなる)ほど増大する。但し、出力値vabyfsは、被検出排ガスの空燃比が理論空燃比よりリッチであるときより理論空燃比がリーンとなったとき、空燃比の増大に伴って緩やかに増大する。このように、上流側空燃比センサ66は、広範囲にわたる空燃比A/Fを精度良く検出することができる「広域空燃比センサ」である。なお、上流側空燃比センサ66の素子の抵抗値は、上流側空燃比センサ66の活性化の程度(素子温度)を表すパラメータとなる。
上流側空燃比センサ66は、上流側空燃比センサ66に到達しているガスの空燃比がステップ状にしても出力値が徐々に変化するという検出応答遅れ特性を有する。より具体的に述べると、上流側空燃比センサ66に到達しているガスの空燃比の値を入力信号とし、上流側空燃比センサ66の出力値vabyfsに基いて求められる空燃比の値を出力信号とするとき、出力信号は入力信号に対してローパスフィルタ処理(例えば、所謂「なまし処理」を含む一次遅れ処理及び二次遅れ処理等)を施した信号と極めて似た信号となる。
更に、上流側空燃比センサ66は、素子温度が活性化温度に到達していないが、ある程度の温度となった状態(この状態を「半活性状態」という。)において、図2の破線により示した出力値vabyfsを出力するようになっている。より具体的に述べると、上流側空燃比センサ66は、半活性状態にあるとき、実際の空燃比(実空燃比)が理論空燃比よりリッチ側の空燃比であれば、活性状態における出力値vabyfsより大きく且つ実空燃比が理論空燃比から遠ざかるほど活性状態における出力値vabyfsとの差が大きくなる出力値vabyfsを出力する。また、上流側空燃比センサ66は、半活性状態にあるとき、実際の空燃比(実空燃比)が理論空燃比よりリーン側の空燃比であれば、活性状態における出力値vabyfsより小さく且つ実空燃比が理論空燃比から遠ざかるほど活性状態における出力値vabyfsとの差が大きくなる出力値vabyfsを出力する。
本装置において、後述する電気制御装置は、図2の実線により示したテーブル(マップ)Mapabyfsを記憶していて、そのテーブルに実際の出力値vabyfsを適用することによって空燃比を検出する(検出空燃比を取得する。)。従って、図15に示したように、上流側空燃比センサ66が半活性状態にある場合、実空燃比が理論空燃比よりリッチ側の空燃比であるとき検出空燃比(出力値vabyfsと上記テーブルMapabyfsとにより得られる空燃比)は実空燃比よリーン側の空燃比となり、実空燃比が理論空燃比よりリーン側の空燃比であるとき検出空燃比は実空燃比よりリッチ側の空燃比となる。なお、検出空燃比は、上流側空燃比センサ66が未活性であるときの出力値を、活性化しているときの出力値と空燃比との関係(テーブルMapabyfs)に基いて変換した空燃比であると言うこともできる。
下流側酸素濃度センサ67は起電力式(濃淡電池式)の酸素濃度センサである。下流側酸素濃度センサ67は、配設された部分の排気通路を通過するガス(排ガス)に含まれる酸素濃度に応じた値を出力するようになっている。より具体的に述べると、下流側酸素濃度センサ67は、図3に示したように、理論空燃比近傍において急変する電圧である出力値Voxsを出力する。即ち、下流側酸素濃度センサ67は、空燃比が理論空燃比よりもリーンのときは略0.1(V)、空燃比が理論空燃比よりもリッチのときは略0.9(V)、空燃比が理論空燃比のときは0.5(V)の電圧を出力するようになっている。アクセル開度センサ68は、運転者によって操作されるアクセルペダル81の操作量を検出し、アクセルペダル81の操作量Accpを表す信号を出力するようになっている。
電気制御装置70は、互いにバスで接続されたCPU71、CPU71が実行するルーチン(プログラム)、テーブル(ルックアップテーブル、マップ)及び定数等を予め記憶したROM72、CPU71が必要に応じてデータを一時的に格納するRAM73、電源が投入された状態でデータを格納するとともに格納したデータを電源が遮断されている間も保持するバックアップRAM74、並びに、ADコンバータを含むインターフェース75等からなるマイクロコンピュータである。インターフェース75は、前記センサ61〜68と接続され、CPU71にセンサ61〜68からの信号を供給するとともに、CPU71の指示に応じて可変吸気タイミング装置33のアクチュエータ33a、イグナイタ38、インジェクタ39及びスロットル弁アクチュエータ43a等に駆動信号(指示信号)を送出するようになっている。
(空燃比制御)
次に、上記のように構成された空燃比制御装置が行う機関の空燃比制御について説明する。
次に、上記のように構成された空燃比制御装置が行う機関の空燃比制御について説明する。
第1触媒53は、第1触媒53に流入するガスの空燃比が理論空燃比であるとき、HC,COを酸化するとともにNOxを還元することにより、これらの有害成分を高い効率で浄化する。また、第1触媒53は、酸素吸蔵機能により、空燃比が理論空燃比からある程度まで偏移したとしても、HC,CO、及びNOxを浄化することができる。即ち、機関の空燃比がリーンとなって第1触媒53に流入するガスにNOxが多量に含まれると、第1触媒53はNOxから酸素分子を奪って同酸素分子を吸蔵するとともに同NOxを還元することによりNOxを浄化する。また、機関の空燃比がリッチになって第1触媒53に流入するガスにHC,COが多量に含まれると、三元触媒は吸蔵している酸素分子をこれらの成分に対して与えて(放出して)これらの成分を酸化することによりHC,COを浄化する。なお、第2触媒54も第1触媒53と同様にして有害成分を浄化する。
従って、第1触媒53が連続的に流入する多量のHC,COを効率的に浄化するためには、同第1触媒53が酸素を多量に貯蔵していなければならず、逆に連続的に流入する多量のNOxを効率的に浄化するためには、同第1触媒53が酸素を十分に貯蔵し得る状態になければならないことになる。以上のことから、第1触媒53の浄化能力は、同第1触媒53が貯蔵し得る最大の酸素量(最大酸素吸蔵量)に依存する。
一方、第1触媒53のような三元触媒は燃料中に含まれる鉛や硫黄等による被毒及び触媒に加わる熱により劣化し、これに伴い最大酸素吸蔵量が次第に低下してくる。このように最大酸素吸蔵量が低下した場合であっても、エミッションの排出量を継続的に抑制するには、第1触媒53から排出されるガスの空燃比(従って、第1触媒53に流入するガスの平均空燃比)が、理論空燃比に極めて近い状態となるように制御する必要がある。
そこで、本実施形態の空燃比制御装置は、目標空燃比が理論空燃比であるとき、下流側酸素濃度センサ67の出力値が下流側目標空燃比としての理論空燃比に対応する下流側目標値Voxsref(0.5(V))となるように、下流側酸素濃度センサ67の出力値Voxs(即ち、第1触媒下流の空燃比)に応じて機関の空燃比を制御する。この下流側酸素濃度センサ67の出力値に基づく空燃比フィードバック制御をサブフィードバック制御と称呼する。
一方、第1触媒53は酸素吸蔵機能を有するから、上記背景技術の項目において説明したように、第1触媒上流の空燃比変化は所定の遅れ時間が経過した後に触媒下流の空燃比変化となって現れる。従って、サブフィードバック制御のみでは過渡的な空燃比変動を抑制することが困難である。そこで、上流側空燃比センサ66の出力値vabyfsに基く空燃比フィードバック制御(即ち、メインフィードバック制御)を行い、過渡的な空燃比変動を抑制する。このとき、本装置は、メインフィードバック制御とサブフィードバック制御との間に上述した制御上の干渉が発生することがないように、以下に述べる複数の手段による空燃比制御を行う。
即ち、この空燃比制御装置は、機能ブロック図である図4に示した複数の手段等を含んで構成されている。以下、図4を参照しながら説明する。
<補正後基本燃料噴射量の算出>
筒内吸入空気量算出手段A1は、エアフローメータ61が計測している吸入空気流量Gaと、クランクポジションセンサ64の出力に基づいて得られる機関回転速度NEと、ROM72が記憶しているテーブルMapMcと、に基づき今回の吸気行程を迎える気筒の吸入空気量である筒内吸入空気量Mc(k)を求める。ここで、添え字の(k)は、前述したように、今回の吸気行程に対する値であることを示している。筒内吸入空気量Mcは、各気筒の吸気行程に対応されながらRAM73に記憶されていく。
筒内吸入空気量算出手段A1は、エアフローメータ61が計測している吸入空気流量Gaと、クランクポジションセンサ64の出力に基づいて得られる機関回転速度NEと、ROM72が記憶しているテーブルMapMcと、に基づき今回の吸気行程を迎える気筒の吸入空気量である筒内吸入空気量Mc(k)を求める。ここで、添え字の(k)は、前述したように、今回の吸気行程に対する値であることを示している。筒内吸入空気量Mcは、各気筒の吸気行程に対応されながらRAM73に記憶されていく。
上流側目標空燃比設定(決定)手段A2は、内燃機関10の運転状態である機関回転速度NE及びスロットル弁開度TA(機関の負荷)等に基づいて上流側目標空燃比abyfr(k)を決定する。上流側目標空燃比設定手段A2は、単に、目標空燃比設定手段とも称呼される。上流側目標空燃比abyfr(k)は上流側空燃比センサ66の出力値に基いて得られる検出空燃比abyfsの目標値の基礎となる値である。上流側目標空燃比abyfr(k)は、例えば、内燃機関10の暖機終了後においては、特殊な場合(例えば、第1触媒53を過熱から保護する場合等)を目的を除き理論空燃比に設定されている。上流側目標空燃比abyfr(k)は各気筒の吸気行程に対応されながらRAM73に記憶されていく。
補正前基本燃料噴射量算出手段A3は、下記に再度記載した上述した(3)式に示したように、筒内吸入空気量算出手段A1により求められた筒内吸入空気量Mc(k)を上流側目標空燃比設定手段A2により設定された上流側目標空燃比abyfr(k)で除することにより、機関の空燃比を上流側目標空燃比abyfr(k)とするための今回の吸気行程に対する基本燃料噴射量Fbaseb(k)を求める。基本燃料噴射量Fbaseb(k)は、後述する基本補正値KF等による補正がなされる前の基本燃料噴射量であるから、補正前基本燃料噴射量Fbaseb(k)とも称呼される。補正前基本燃料噴射量Fbaseb(k)は各気筒の吸気行程に対応されながらRAM73に記憶されていく。
Fbaseb(k)=Mc(k)/abyfr(k) …(3)
Fbaseb(k)=Mc(k)/abyfr(k) …(3)
補正後基本燃料噴射量算出手段A4は、補正前基本燃料噴射量算出手段A3により求められた今回の補正前基本燃料噴射量Fbaseb(k)に後述する基本補正値算出手段A16により求められてバックアップRAM74に格納されている基本補正値KFを乗じることで補正後基本燃料噴射量Fbase(k)(=KF・Fbaseb(k))を求める。基本補正値算出手段A16については後に詳述する。
このように、本装置は、筒内吸入空気量算出手段A1、上流側目標空燃比設定手段A2、補正前基本燃料噴射量算出手段A3、補正後基本燃料噴射量算出手段A4及び基本補正値算出手段A16を利用して、補正後基本燃料噴射量Fbase(k)を求める。
<最終燃料噴射量の算出>
最終燃料噴射量算出手段A5は、下記に再度記載した上述した(5)式により示したように、補正後基本燃料噴射量Fbase(k)(=KF・Fbaseb(k))に後述するメインフィードバック補正値更新手段A15によって求められているメインフィードバック補正値KFmainを乗じ、それらの積(=Fbase(k)・KFmain)に後述するPIDコントローラA9によって求められているサブフィードバック補正値Fisubを加えて今回の最終燃料噴射量Fi(k)を求める。最終燃料噴射量Fi(k)は、各気筒の吸気行程に対応されながらRAM73に記憶されていく。
Fi(k)=(KF・Fbaseb(k))・KFmain+Fisub=Fbase(k)・KFmain+Fisub…(5)
最終燃料噴射量算出手段A5は、下記に再度記載した上述した(5)式により示したように、補正後基本燃料噴射量Fbase(k)(=KF・Fbaseb(k))に後述するメインフィードバック補正値更新手段A15によって求められているメインフィードバック補正値KFmainを乗じ、それらの積(=Fbase(k)・KFmain)に後述するPIDコントローラA9によって求められているサブフィードバック補正値Fisubを加えて今回の最終燃料噴射量Fi(k)を求める。最終燃料噴射量Fi(k)は、各気筒の吸気行程に対応されながらRAM73に記憶されていく。
Fi(k)=(KF・Fbaseb(k))・KFmain+Fisub=Fbase(k)・KFmain+Fisub…(5)
このように、本装置は、最終燃料噴射量算出手段A5により、補正後基本燃料噴射量Fbase(k)をメインフィードバック補正値KFmainとサブフィードバック補正値Fisubとに基づいて補正することにより最終燃料噴射量Fi(k)を求める。更に、本装置は、この最終燃料噴射量Fi(k)の燃料が、今回の吸気行程を迎える気筒のインジェクタ39から噴射されるように、そのインジェクタ39に対して噴射指示信号を送出する。換言すると、噴射指示信号は、最終燃料噴射量Fi(k)に関する情報を指示噴射量として含んでいる。
<サブフィードバック補正値の算出>
下流側目標値設定手段A6は、上述した上流側目標空燃比設定手段A2と同様、内燃機関10の運転状態である機関回転速度NE及びスロットル弁開度TA(機関の負荷)等に基づいて下流側目標空燃比に対応する下流側目標値Voxsrefを決定する。この下流側目標値Voxsrefは、例えば、内燃機関10の暖機終了後においては、特殊な場合を除き理論空燃比に対応する値である0.5(V)に設定されている。また、本例では、下流側目標値Voxsrefは、下流側目標値Voxsrefに対応する下流側目標空燃比が上述した上流側目標空燃比abyfr(k)と常時一致するように設定される。
下流側目標値設定手段A6は、上述した上流側目標空燃比設定手段A2と同様、内燃機関10の運転状態である機関回転速度NE及びスロットル弁開度TA(機関の負荷)等に基づいて下流側目標空燃比に対応する下流側目標値Voxsrefを決定する。この下流側目標値Voxsrefは、例えば、内燃機関10の暖機終了後においては、特殊な場合を除き理論空燃比に対応する値である0.5(V)に設定されている。また、本例では、下流側目標値Voxsrefは、下流側目標値Voxsrefに対応する下流側目標空燃比が上述した上流側目標空燃比abyfr(k)と常時一致するように設定される。
出力偏差量算出手段A7は、下記(6)式に基づいて、下流側目標値設定手段A6により設定されている現時点(具体的には、今回のFi(k)の噴射指示開始時点)での下流側目標値Voxsrefから同現時点での下流側酸素濃度センサ67の出力値Voxsを減じることにより、出力偏差量DVoxsを求める。出力偏差量算出手段A7は、求めた出力偏差量DVoxsをローパスフィルタA8に出力する。
DVoxs=Voxsref−Voxs ・・・(6)
DVoxs=Voxsref−Voxs ・・・(6)
ローパスフィルタA8は一次のデジタルフィルタである。ローパスフィルタA8の特性を表す伝達関数A8(s)は下記の(7)式により示される。(7)式において、sはラプラス演算子であり、τ1は時定数である。ローパスフィルタA8は周波数(1/τ1)以上の高周波数成分が通過することを実質的に禁止する。ローパスフィルタA8は出力偏差量DVoxsの値を入力するとともに出力偏差量DVoxsの値をローパスフィルタ処理した後の値であるローパスフィルタ通過後出力偏差量DVoxslowをPIDコントローラA9に出力する。
A8(s)=1/(1+τ1・s) ・・・(7)
A8(s)=1/(1+τ1・s) ・・・(7)
PIDコントローラA9は、ローパスフィルタ通過後出力偏差量DVoxslowを下記(8)式に基づいて比例・積分・微分処理(PID処理)し、サブフィードバック補正値Fisubを求める。
Fisub=Kp・DVoxslow+Ki・SDVoxslow+Kd・DDVoxslow ・・・(8)
Fisub=Kp・DVoxslow+Ki・SDVoxslow+Kd・DDVoxslow ・・・(8)
上記(8)式において、Kpは予め設定された比例ゲイン(比例定数)、Kiは予め設定された積分ゲイン(積分定数)、Kdは予め設定された微分ゲイン(微分定数)である。また、SDVoxslowはローパスフィルタ通過後出力偏差量DVoxslowの時間積分値であり、DDVoxslowはローパスフィルタ通過後出力偏差量DVoxslowの時間微分値である。以上により、サブフィードバック補正値Fisubが求められる。
上記(8)式は積分項Ki・SDVoxslowを含んでいるので、定常状態では出力偏差量DVoxsがゼロになることが保証される。換言すれば、下流側目標値Voxsrefと下流側酸素濃度センサ67の出力値Voxsとの定常偏差がゼロになる。また、定常状態においては、出力偏差量DVoxsがゼロになるから、比例項Kp・DVoxslow及び微分項Kd・DDVoxslowの両者がゼロとなる。従って、サブフィードバック補正値Fisubの定常状態における収束値は積分項Ki・SDVoxslowの値と等しくなる。
以上から明らかなように、下流側目標値設定手段A6、出力偏差量算出手段A7、ローパスフィルタA8及びPIDコントローラA9はサブフィードバック補正値算出手段を構成している。
<メインフィードバック制御>
先に説明したように、第1触媒53は酸素吸蔵機能を有している。従って、第1触媒53の上流の排ガスの空燃比の変動における「比較的周波数の高い高周波数成分(前記周波数1/τ1以上の高周波数成分)」及び「比較的周波数が低く且つ振幅が比較的小さい低周波数成分(前記周波数1/τ1以下の周波数にて変動するとともに理論空燃比からの偏移量が比較的小さい低周波成分)」は、第1触媒53の酸素吸蔵機能により吸収されるから、第1触媒53の下流の排ガスの空燃比の変動として現れ難い。
先に説明したように、第1触媒53は酸素吸蔵機能を有している。従って、第1触媒53の上流の排ガスの空燃比の変動における「比較的周波数の高い高周波数成分(前記周波数1/τ1以上の高周波数成分)」及び「比較的周波数が低く且つ振幅が比較的小さい低周波数成分(前記周波数1/τ1以下の周波数にて変動するとともに理論空燃比からの偏移量が比較的小さい低周波成分)」は、第1触媒53の酸素吸蔵機能により吸収されるから、第1触媒53の下流の排ガスの空燃比の変動として現れ難い。
従って、例えば、排ガスの空燃比が前記周波数(1/τ1)以上の高周波数で大きく変動するような「過渡運転状態における空燃比の急変」に対する補償は、サブフィードバック制御により行われ得ない。それ故、「過渡運転状態における空燃比の急変」に対する補償を確実に行うためには、上流側空燃比センサ66の出力値vabyfsに基づいたメインフィードバック制御を行う必要がある。
一方、第1触媒53の上流の排ガスの空燃比の変動における「周波数が比較的低くて振幅が比較的大きい低周波数成分(例えば、前記周波数(1/τ1)以下の周波数で変動するとともに理論空燃比からの偏移量が比較的大きい低周波成分)」は、第1触媒53の酸素吸蔵機能では完全には吸収されない。従って、そのような第1触媒53の上流における空燃比の変動は、所定の遅れを有しながら下流の排ガスの空燃比の変動として現れる。この結果、上流側空燃比センサ66の出力値vabyfsと下流側酸素濃度センサ67の出力値Voxsとが目標空燃比(例えば、理論空燃比)に対して互いに逆方向に偏移した空燃比を示す値となる場合が存在し、メインフィードバック制御とサブフィードバック制御との間に制御上の干渉が生じる場合がある。
以上のことから、本装置は、上流側空燃比センサ66の出力値vabyfsの変動における各周波数成分のうち第1触媒53の下流の空燃比の変動として現れ得る程度の周波数成分である所定の周波数(本例では、周波数(1/τ1))以下の低周波数成分をカットした後の上流側空燃比センサ66の出力値vabyfsに応じた値をメインフィードバック制御に使用する。このメインフィードバック制御に使用される上流側空燃比センサ66の出力値vabyfsに応じた値は、本例においては、「メインフィードバック制御用目標空燃比abyfrtgt(k)と上流側空燃比センサ66の出力値vabyfs(k)との偏差Dafに対してハイパスフィルタ処理を施した値」である。この結果、前述した空燃比制御の干渉が発生することを回避することができるとともに、メインフィードバック制御によって過渡運転状態における空燃比の急変に対する補償を確実に行うことができる。より具体的には、メインフィードバック補正値は以下に述べるようにして求められる。
<メインフィードバック補正値の算出>
テーブル変換手段A10は、上流側空燃比センサ66の出力値vabyfsと、図2の実線により示した上流側空燃比センサ出力値vabyfsと空燃比A/Fとの関係を表すテーブルMapabyfsと、に基づいて、上流側空燃比センサ66が検出する現時点の検出空燃比abyfs(k)を求める。
テーブル変換手段A10は、上流側空燃比センサ66の出力値vabyfsと、図2の実線により示した上流側空燃比センサ出力値vabyfsと空燃比A/Fとの関係を表すテーブルMapabyfsと、に基づいて、上流側空燃比センサ66が検出する現時点の検出空燃比abyfs(k)を求める。
目標空燃比遅延手段A11は、上流側目標空燃比設定手段A2により決定され、且つ、各気筒の吸気行程に対応されながらRAM73に記憶されている上流側目標空燃比abyfrのうち、現時点からNストローク(N回の吸気行程)前の時点の上流側目標空燃比abyfrをRAM73から読み出し、これを上流側目標空燃比abyfr(k-N)として設定する。後述するように、上流側目標空燃比abyfr(k-N)は、メインフィードバック補正値の算出に用いられる。上流側目標空燃比abyfr(k-N)は、現時点からNストローク前に吸気行程を迎えた気筒の補正前基本燃料噴射量Fbaseb(k)を算出するために用いられた上流側目標空燃比である。
ここで、前記値Nは、内燃機関10の排気量及び燃焼室25から上流側空燃比センサ66までの距離等により異なる値である。このように、現時点からNストローク前の実際の上流側目標空燃比abyfr(k-N)をメインフィードバック補正値の算出に用いるのは、インジェクタ39から噴射された燃料を含み且つ燃焼室25内で燃焼された混合気が上流側空燃比センサ66に到達するまでには、Nストロークに相当する無駄時間L1を要しているからである。なお、値Nは、機関回転速度NEが大きいほど小さくなり、且つ、機関の負荷(例えば、筒内吸入空気量Mc)が大きくなるほど小さくなるように変更されることが望ましい。
ローパスフィルタA12は、目標空燃比遅延手段A11から出力された現時点からNストローク前の実際の上流側目標空燃比abyfr(k-N)に対してローパスフィルタ処理を施し、メインフィードバック制御用目標空燃比(上流側フィードバック制御用目標空燃比)abyfrtgt(k)を算出する。メインフィードバック制御用目標空燃比abyfrtgt(k)は、上流側目標空燃比設定手段A2により決定されていた上流側の目標空燃比abyfr(k-N)に応じた値である。
このローパスフィルタA12は一次のディジタルフィルタである。ローパスフィルタA12の伝達特性A12(s)は下記の(9)式により示される。(9)式において、sはラプラス演算子であり、τは時定数(応答性に関するパラメータ)である。この特性により、周波数(1/τ)以上の高周波数成分の通過が実質的に禁止される。
A12(s)=1/(1+τ・s) ・・・(9)
A12(s)=1/(1+τ・s) ・・・(9)
前述したように、上流側空燃比センサ66に到達しているガスの空燃比の値を入力信号とし、上流側空燃比センサ66の出力値vabyfsに基いて求められる空燃比の値を出力信号とするとき、出力信号は入力信号に対してローパスフィルタ処理(例えば、所謂「なまし処理」を含む一次遅れ処理及び二次遅れ処理等)を施した信号と極めて似た信号となる。この結果、ローパスフィルタA12により生成されるメインフィードバック制御用目標空燃比abyfrtgt(k)は、上流側空燃比センサ66に目標空燃比abyfr(k−N)に応じた望ましい空燃比の排ガスが到達しているとき、実際に上流側空燃比センサ66が出力するであろう値となる。
上流側空燃比偏差算出手段A13は、下記(10)式に基づいて、ローパスフィルタA12から出力されたメインフィードバック制御用目標空燃比abyfrtgt(k)からテーブル変換手段A10により求められた現時点の検出空燃比abyfs(k)を減じることにより、空燃比偏差Dafを求める。この空燃比偏差Dafは、Nストローク前の時点において筒内に供給された混合気の空燃比の目標空燃比からの偏差を表す量である。
Daf=abyfrtgt(k)−abyfs(k) ・・・(10)
Daf=abyfrtgt(k)−abyfs(k) ・・・(10)
ハイパスフィルタA14は一次のフィルタである。ハイパスフィルタA14の特性を表す伝達関数A14(s)は(11)式により示される。(11)式において、sはラプラス演算子であり、τ1は時定数である。時定数τ1は上記ローパスフィルタA8の時定数τ1と同一の時定数である。ハイパスフィルタA14は、周波数(1/τ1)以下の低周波数成分が通過することを実質的に禁止する。
A14(s)={1−1/(1+τ1・s)} ・・・(11)
A14(s)={1−1/(1+τ1・s)} ・・・(11)
ハイパスフィルタA14は、前記上流側空燃比偏差算出手段A13により求められた空燃比偏差Dafを入力するとともに、上記(11)式より表された特性式に従って空燃比偏差Dafをハイパスフィルタ処理した後の値であるメインフィードバック制御用偏差DafHiを出力する。
メインフィードバック補正値更新手段A15は、ハイパスフィルタA14の出力値であるメインフィードバック制御用偏差DafHiを比例処理する。即ち、メインフィードバック補正値更新手段A15は、メインフィードバック制御用偏差DafHiに比例ゲインGpHiを乗じることにより、メインフィードバック補正値KFmainを求める。このメインフィードバック補正値KFmainは、先述したように最終燃料噴射量算出手段A5が今回の最終燃料噴射量Fi(k)を求める際に使用される。
なお、メインフィードバック補正値更新手段A15は、下記(12)式に基いて、ハイパスフィルタA14の出力値であるメインフィードバック制御用偏差DafHiを比例・積分処理(PI処理)することにより、メインフィードバック補正値KFmainを求めてもよい。
KFmain=(Gphi・DafHi+Gihi・SDafHi)・KFB ・・・(12)
KFmain=(Gphi・DafHi+Gihi・SDafHi)・KFB ・・・(12)
上記(12)式において、Gphiは予め設定された比例ゲイン(比例定数)、Gihiは予め設定された積分ゲイン(積分定数)である。SDafHiはメインフィードバック制御用偏差DafHiの時間積分値である。係数KFBは本例では「1」である。しかしながら、係数KFBは、機関回転速度NE及び筒内吸入空気量Mc等により可変とすることが好適である。
以上から明らかなように、上流側目標空燃比設定手段A2、テーブル変換手段A10、目標空燃比遅延手段A11、ローパスフィルタA12、上流側空燃比偏差算出手段A13、ハイパスフィルタA14及びメインフィードバック補正値更新手段A15は、メインフィードバック補正値算出手段を構成している。
このように、本装置は、メインフィードバック制御系とサブフィードバック制御系とを補正前基本燃料噴射量Fbasebに対して並列且つ独立に接続している。即ち、本装置は、補正後基本燃料噴射量Fbaseとメインフィードバック補正値KFmainとの積にサブフィードバック補正値Fisubを加えることによるサブフィードバック制御を、補正後基本燃料噴射量Fbaseにメインフィードバック補正値KFmainを乗じることによるメインフィードバック制御とは独立に実行する。更に、前述したように、メインフィードバック制御用偏差DafHiは、ハイパスフィルタA14によって空燃比偏差Dafにハイパスフィルタ処理を施した値であって上流側触媒53の下流には現れない空燃比変動を反映した値である。従って、メインフィードバック補正値KFmainとサブフィードバック補正値Fisubとは、機関に供給される混合気の空燃比の変動を干渉するように補正することがない。加えて、メインフィードバック制御により過渡運転状態における空燃比の急変が抑制され、サブフィードバック制御により第1触媒53の下流の空燃比の変動として現れる緩やかな空燃比の偏移が解消される。
<基本補正値の算出>
前述したように、サブフィードバック補正値FisubはPIDコントローラA9によりローパスフィルタ通過後出力偏差量DVoxslowを比例・積分・微分処理することによって算出される。しかしながら、第1触媒53の酸素吸蔵機能の影響により機関の空燃比の変化は少し遅れて同第1触媒53の下流の排ガスの空燃比の変化として現れる。従って、上述したエアフローメータの検出精度や空気量推定モデルの推定精度に起因する定常的な誤差の大きさが運転領域の急変等によって比較的急激に増大する場合、その誤差に起因する燃料噴射量の過不足分をサブフィードバック制御のみにより直ちに補償することはできない。
前述したように、サブフィードバック補正値FisubはPIDコントローラA9によりローパスフィルタ通過後出力偏差量DVoxslowを比例・積分・微分処理することによって算出される。しかしながら、第1触媒53の酸素吸蔵機能の影響により機関の空燃比の変化は少し遅れて同第1触媒53の下流の排ガスの空燃比の変化として現れる。従って、上述したエアフローメータの検出精度や空気量推定モデルの推定精度に起因する定常的な誤差の大きさが運転領域の急変等によって比較的急激に増大する場合、その誤差に起因する燃料噴射量の過不足分をサブフィードバック制御のみにより直ちに補償することはできない。
一方、前記酸素吸蔵機能による遅れの影響がないメインフィードバック制御において、ハイパスフィルタA14によるハイパスフィルタ処理は微分処理(D処理)と同等の機能を達成する処理である。従って、ハイパスフィルタA14通過後の値がメインフィードバック補正値更新手段A15の入力値とされている上記メインフィードバック制御においては、仮にメインフィードバック補正値更新手段A15が積分処理を行うことによりメインフィードバック補正値KFmainを求めるように構成されている場合であっても、実質的な積分項を含むメインフィードバック補正値KFmainを算出することができない。それ故、上記メインフィードバック制御より、上記エアフローメータの検出精度や空気量推定モデルの推定精度に起因する燃料噴射量の定常的な誤差は補償され得ない。その結果、運転領域が変化した場合等において、一時的に有害成分の排出量が増大する場合が発生するという可能性がある。
以上のことから、本装置は、補正前基本燃料噴射量Fbasebを補正する基本補正値KFを求め、その基本補正値KFによって補正後基本燃料噴射量Fbase(k)を求め、その補正後基本燃料噴射量Fbase(k)を更にメインフィードバック補正値KFmain及びサブフィードバック補正値Fisubにより補正している(上記(5)式を参照。)。この基本補正値KFは、上述した(4)式により表された原理に従って構成された基本補正値算出手段A16によって算出される。以下、基本補正値算出手段A16の機能ブロック図である図5を参照しながら、基本補正値KFの実際の算出の仕方について説明する。基本補正値算出手段A16は、A16a〜A16fの各手段等を含んで構成されている。
最終燃料噴射量遅延手段A16aは、今回の最終燃料噴射量Fi(k)を遅延させることにより現時点からNストローク前の最終燃料噴射量Fi(k-N)を求める。実際には、最終燃料噴射量遅延手段A16aは最終燃料噴射量Fi(k-N)をRAM73から読み出す。
目標空燃比遅延手段A16bは、今回の目標空燃比abyfr(k)を遅延させることにより現時点からNストローク前の目標空燃比abyfr(k-N)を求める。実際には、目標空燃比遅延手段A16bは目標空燃比abyfr(k-N)をRAM73から読み出す。
真の基本燃料噴射量算出手段A16cは、上記(2)式(Fbaset(k-N)=((abyfs(k)・Fi(k-N)/abyfr(k-N))に従って現時点からNストローク前の真の基本燃料噴射量Fbaset(k-N)(現時点からNストローク前の時点における目標空燃比abyfr(k-N)を得るために必要であった燃料噴射量(指示噴射量))を求める。
補正前基本燃料噴射量遅延手段A16dは、今回の補正前基本燃料噴射量Fbaseb(k)を遅延させることにより現時点からNストローク前の補正前基本燃料噴射量Fbaseb(k-N)を求める。実際には、補正前基本燃料噴射量遅延手段A16dは補正前基本燃料噴射量Fbaseb(k-N)をRAM73から読み出す。
フィルタ前基本補正値算出手段A16eは、上述した(4)式に基く式(KFbf=Fbaset(k-N)/Fbaseb(k-N))に従って、真の基本燃料噴射量Fbaset(k-N)を補正前基本燃料噴射量Fbaseb(k-N)で除することにより、フィルタ前基本補正値KFbfを算出する。
ローパスフィルタA16fは、フィルタ前基本補正値KFbfに対してローパスフィルタ処理を施すことにより基本補正値KFを算出する。このローパスフィルタ処理は、基本補正値KFを安定化させるため(フィルタ前基本補正値KFbfに重畳しているノイズ成分を除去するため)に行われる。このようにして求められた基本補正値KFは、現時点からNストローク前の運転状態が属していた運転領域に対応させられながらRAM73及びバックアップRAM74に記憶・格納されて行く。なお、基本補正値KFが格納される運転領域は、例えば、図6に示したように、機関10の負荷(筒内吸入空気量Mc及びアクセルペダル操作量Accp等)により区画されている。この運転領域は、機関回転速度NEと機関の負荷とによって区画されてもよい。
このように、基本補正値算出手段A16は、最終燃料噴射量Fi(k)の計算時点が到来する毎に、A16a〜A16fの各手段等を利用して基本補正値KFを更新する。そして、基本補正値算出手段A16は、図4に示したように、最終燃料噴射量Fi(k)の算出時において機関10の運転状態が属する運転領域に格納されている基本補正値KFをバックアップRAM74から読み出し、読み出した基本補正値KFを補正後基本燃料噴射量算出手段A4に提供する。この結果、燃料噴射量(補正前基本燃料噴射量)の定常的な誤差が迅速に補償されていく。
<基本補正値及びメインフィードバック補正値の更新と適用>
ところで、メインフィードバック補正値KFmainは上流側空燃比センサ66の出力値vabyfsに基いて取得される検出空燃比abyfs(k)に基いて求められる。従って、メインフィードバック制御条件は、例えば、以下に示したように、上流側空燃比センサ66が活性化していることを必要条件の一つに含んでいる。なお、メインフィードバック制御条件が成立すると、メインフィードバック補正値KFmainが更新されるとともに、その更新されたメインフィードバック補正値KFmainが上記(5)式に適用される(最終燃料噴射量Fi(k)の算出に反映される。)。メインフィードバック制御条件が成立していなければ(不成立であると)、メインフィードバック補正値KFmainの更新が停止されるとともに、上記(5)式のメインフィードバック補正値KFmainに値「1」が代入される。即ち、メインフィードバック補正値KFmainは最終燃料噴射量Fi(k)の算出に反映されない。
ところで、メインフィードバック補正値KFmainは上流側空燃比センサ66の出力値vabyfsに基いて取得される検出空燃比abyfs(k)に基いて求められる。従って、メインフィードバック制御条件は、例えば、以下に示したように、上流側空燃比センサ66が活性化していることを必要条件の一つに含んでいる。なお、メインフィードバック制御条件が成立すると、メインフィードバック補正値KFmainが更新されるとともに、その更新されたメインフィードバック補正値KFmainが上記(5)式に適用される(最終燃料噴射量Fi(k)の算出に反映される。)。メインフィードバック制御条件が成立していなければ(不成立であると)、メインフィードバック補正値KFmainの更新が停止されるとともに、上記(5)式のメインフィードバック補正値KFmainに値「1」が代入される。即ち、メインフィードバック補正値KFmainは最終燃料噴射量Fi(k)の算出に反映されない。
(メインフィードバック制御条件)
メインフィードバック制御条件は、以下の総ての条件が成立するとき成立する。
・上流側空燃比センサ66が活性化している。
・上流側空燃比センサ66の異常判定(診断)を実行する条件(異常判定実行条件)が成立していない。
・フューエルカット条件が成立していない(フューエルカット運転状態でない。)。
なお、上流側空燃比センサ66が活性化しているか否かは、上流側空燃比センサ66の素子(固体電解質)の抵抗値を検出し、検出した素子の抵抗値が所定値以下であるか否かを判定することにより行われる。より具体的には、素子の抵抗値が所定値より大きければ上流側空燃比センサ66は活性化していない(未活性である)と判定され、素子の抵抗値が所定値以下であれば上流側空燃比センサ66は活性化していると判定される。
メインフィードバック制御条件は、以下の総ての条件が成立するとき成立する。
・上流側空燃比センサ66が活性化している。
・上流側空燃比センサ66の異常判定(診断)を実行する条件(異常判定実行条件)が成立していない。
・フューエルカット条件が成立していない(フューエルカット運転状態でない。)。
なお、上流側空燃比センサ66が活性化しているか否かは、上流側空燃比センサ66の素子(固体電解質)の抵抗値を検出し、検出した素子の抵抗値が所定値以下であるか否かを判定することにより行われる。より具体的には、素子の抵抗値が所定値より大きければ上流側空燃比センサ66は活性化していない(未活性である)と判定され、素子の抵抗値が所定値以下であれば上流側空燃比センサ66は活性化していると判定される。
また、例えば、前記上流側空燃比センサ66の異常判定実行条件は、以下の総ての条件が成立するとき成立する。
・上流側空燃比センサ66が活性化している。
・機関10の運転状態が定常運転状態である。フューエルカット運転状態は定常運転状態に含まれない。
・上流側空燃比センサ66の異常判定を前回実行した時点から所定期間が経過している。
・上流側空燃比センサ66が活性化している。
・機関10の運転状態が定常運転状態である。フューエルカット運転状態は定常運転状態に含まれない。
・上流側空燃比センサ66の異常判定を前回実行した時点から所定期間が経過している。
上流側空燃比センサ66の異常判定実行条件が成立すると、本装置は、機関の空燃比を理論空燃比よりもリッチな空燃比とリーンな空燃比との間で強制的に振動させる。即ち、本装置は、機関の空燃比を理論空燃比を中心に矩形波状に所定周期で変化させる。そして、本装置は、その際の上流側空燃比センサ66の出力値vabyfsに基いて得られる検出空燃比が理論空燃比を中心に前記所定周期で変化しているか否か(機関の空燃比変化に追従しているか否か)を判定し、そのような変化が検出されたとき上流側空燃比センサ66は正常であり、そのような変化が検出されなかったとき上流側空燃比センサ66は異常であると判定する。この異常判定実行中においてメインフィードバック制御が行われると機関の空燃比を所望の矩形波状に変化させることができないから、上述したようにメインフィードバック制御は中止される。即ち、メインフィードバック補正値の更新が停止されるとともに、上記(5)式のメインフィードバック補正値KFmainに値「1」が代入される。
(基本補正値算出許可条件)
基本補正値算出許可条件が成立すると、本装置は、基本補正値KFを上述したように算出する。但し、本装置は、メインフィードバック制御条件が成立していなければ、RAM73又はバックアップRAM74に格納してある基本補正値KFの値を(5)式に適用せず、上記(5)式における基本補正値KFに値「1」を代入する。本装置は、メインフィードバック制御条件が成立しているときにのみ、バックアップRAM74に格納してある基本補正値KFの値を運転領域に応じて読み出し、その読み出した値を(5)式に適用することにより、基本補正値KFの値を最終燃料噴射量Fiに反映する。
基本補正値算出許可条件が成立すると、本装置は、基本補正値KFを上述したように算出する。但し、本装置は、メインフィードバック制御条件が成立していなければ、RAM73又はバックアップRAM74に格納してある基本補正値KFの値を(5)式に適用せず、上記(5)式における基本補正値KFに値「1」を代入する。本装置は、メインフィードバック制御条件が成立しているときにのみ、バックアップRAM74に格納してある基本補正値KFの値を運転領域に応じて読み出し、その読み出した値を(5)式に適用することにより、基本補正値KFの値を最終燃料噴射量Fiに反映する。
基本補正値算出許可条件は、メインフィードバック制御条件が成立しているときには成立する。
更に、基本補正値算出許可条件は、以下の条件A及び条件Bの両方が成立するとき成立する。
(条件A)上流側空燃比センサ66が活性化している。
(条件B)上流側空燃比センサ66の異常判定(診断)を実行する条件が成立している。
更に、基本補正値算出許可条件は、以下の条件A及び条件Bの両方が成立するとき成立する。
(条件A)上流側空燃比センサ66が活性化している。
(条件B)上流側空燃比センサ66の異常判定(診断)を実行する条件が成立している。
上記条件Bは、後述するように、メインフィードバック制御条件が成立していないときであっても基本補正値算出許可条件を成立させる「他の所定条件」に相当する。
(実際の作動)
次に、上記空燃比制御装置の実際の作動について説明する。以下、説明の便宜上、「MapX(a1,a2,…)」は、a1,a2,…を引数とする値Xを求めるためのテーブルを表すものとする。また、引数の値がセンサの検出値である場合、その引数の値には現在値が適用される。
次に、上記空燃比制御装置の実際の作動について説明する。以下、説明の便宜上、「MapX(a1,a2,…)」は、a1,a2,…を引数とする値Xを求めるためのテーブルを表すものとする。また、引数の値がセンサの検出値である場合、その引数の値には現在値が適用される。
<最終燃料噴射量Fi(k)の算出>
CPU71は、図7にフローチャートにより示した最終燃料噴射量Fiの計算及び噴射指示を行うルーチンを、各気筒のクランク角が各吸気上死点前の所定クランク角度(例えば、BTDC90°CA)となる毎に、繰り返し実行するようになっている。従って、任意の気筒のクランク角度が上記所定クランク角度になると、CPU71はステップ700から処理を開始して以下に記載したステップ705乃至ステップ715の処理を順に行い、ステップ720に進む。
CPU71は、図7にフローチャートにより示した最終燃料噴射量Fiの計算及び噴射指示を行うルーチンを、各気筒のクランク角が各吸気上死点前の所定クランク角度(例えば、BTDC90°CA)となる毎に、繰り返し実行するようになっている。従って、任意の気筒のクランク角度が上記所定クランク角度になると、CPU71はステップ700から処理を開始して以下に記載したステップ705乃至ステップ715の処理を順に行い、ステップ720に進む。
ステップ705:CPU71は、テーブルMapMc(NE,Ga)に基づいて今回の吸気行程を迎える気筒(以下、「燃料噴射気筒」と云うこともある。)に吸入される今回の筒内吸入空気量Mc(k)を推定・決定する。
ステップ710:CPU71は、機関回転速度NE、スロットル弁開度TA及び冷却水温THW等に基づいて今回の目標空燃比abyfr(k)を取得する。目標空燃比abyfr(k)は各気筒の吸気行程に対応されながらRAM73に記憶されていく。
ステップ715:CPU71は、上記筒内吸入空気量Mc(k)を上記目標空燃比abyfr(k)で除することにより、補正前基本燃料噴射量Fbaseb(k)を算出する。補正前基本燃料噴射量Fbaseb(k)は各気筒の吸気行程に対応されながらRAM73に記憶されていく。
ステップ710:CPU71は、機関回転速度NE、スロットル弁開度TA及び冷却水温THW等に基づいて今回の目標空燃比abyfr(k)を取得する。目標空燃比abyfr(k)は各気筒の吸気行程に対応されながらRAM73に記憶されていく。
ステップ715:CPU71は、上記筒内吸入空気量Mc(k)を上記目標空燃比abyfr(k)で除することにより、補正前基本燃料噴射量Fbaseb(k)を算出する。補正前基本燃料噴射量Fbaseb(k)は各気筒の吸気行程に対応されながらRAM73に記憶されていく。
ステップ720:CPU71は、現在の運転状態がフューエルカット条件が成立しているか否かを判定する。フューエルカット条件は、例えば、アクセルペダル操作量Accpが最小値(例えば0、或いはスロットル弁開度TA=0)であり且つ機関回転速度NEがフューエルカット回転速度Nthより大きいときに成立する。このフューエルカット条件が成立していれば、CPU71はステップ720にて「Yes」と判定してステップ795に直接進み、本ルーチンを一旦終了する。従って、燃料噴射の指示を行うステップ740が実行されないので、燃料噴射は停止される(フューエルカット運転が実行される。)。
一方、ステップ720の判定時点においてフューエルカット条件が成立していなければ、CPU71はステップ720にて「No」と判定し、以下に記載したステップ725乃至ステップ740の処理を順に行い、その後、ステップ795に進んで本ルーチンを一旦終了する。
ステップ725:CPU71は、後述するルーチンによって計算されるとともにバックアップRAM74に運転領域毎に格納されている基本補正値KFの中から、現時点における運転状態が属する運転領域に格納されている基本補正値KFを読み出す。なお、メインフィードバック制御条件が不成立のとき、運転状態に関わらず基本補正値KFには値「1」が設定される。
ステップ730:CPU71は、補正前基本燃料噴射量Fbaseb(k)に、ステップ725にて読み出した基本補正値KFを乗じた値を補正後基本燃料噴射量Fbaseとして設定する。
ステップ735:CPU71は、上記(5)式に従い、補正後基本燃料噴射量Fbaseと後述するルーチンにて求められているメインフィードバック補正値KFmainとの積にサブフィードバック補正値Fisubを加えて今回の最終燃料噴射量Fi(k)を求める。
ステップ740:CPU71は、最終燃料噴射量Fi(k)の燃料が燃料噴射気筒に対するインジェクタ39から噴射されるように、そのインジェクタ39に対して噴射指示を行う。
ステップ730:CPU71は、補正前基本燃料噴射量Fbaseb(k)に、ステップ725にて読み出した基本補正値KFを乗じた値を補正後基本燃料噴射量Fbaseとして設定する。
ステップ735:CPU71は、上記(5)式に従い、補正後基本燃料噴射量Fbaseと後述するルーチンにて求められているメインフィードバック補正値KFmainとの積にサブフィードバック補正値Fisubを加えて今回の最終燃料噴射量Fi(k)を求める。
ステップ740:CPU71は、最終燃料噴射量Fi(k)の燃料が燃料噴射気筒に対するインジェクタ39から噴射されるように、そのインジェクタ39に対して噴射指示を行う。
以上により、補正前基本燃料噴射量Fbasebが運転状態に応じて変化する目標空燃比abyfr(k)と今回の筒内吸入空気量Mc(k)とに基づいて取得され、その補正前基本燃料噴射量Fbasebと基本補正値KFとにより補正後基本燃料噴射量Fbaseが取得される。更に、その補正後基本燃料噴射量Fbaseがメインフィードバック補正値KFmainとサブフィードバック補正値Fisubとにより補正されることにより最終的な燃料噴射量(最終燃料噴射量)Fiが求められ、その最終燃料噴射量Fiの燃料の噴射指示が燃料噴射気筒のインジェクタ39に対してなされる。
<メインフィードバック補正値の計算>
次に、メインフィードバック補正値KFmainを算出する際の作動について説明する。CPU71は図8にフローチャートにより示したルーチンを実行周期Δt1(一定)の経過毎に繰り返し実行するようになっている。従って、所定のタイミングにてCPU71はステップ800から処理を開始し、以下に記載したステップ805及びステップ810の処理を順に行い、ステップ815に進む。なお、この実行周期Δt1は、例えば、機関回転速度NEが想定される最大の機関回転速度である場合における連続する二つの噴射指示の発生時間間隔より短い時間に設定されている。
次に、メインフィードバック補正値KFmainを算出する際の作動について説明する。CPU71は図8にフローチャートにより示したルーチンを実行周期Δt1(一定)の経過毎に繰り返し実行するようになっている。従って、所定のタイミングにてCPU71はステップ800から処理を開始し、以下に記載したステップ805及びステップ810の処理を順に行い、ステップ815に進む。なお、この実行周期Δt1は、例えば、機関回転速度NEが想定される最大の機関回転速度である場合における連続する二つの噴射指示の発生時間間隔より短い時間に設定されている。
ステップ805:CPU71は、ステップ805に記載した簡易のローパスフィルタ式(abyfrtgt(k)=α・abyfrtgtold+(1−α)・abyfr(k−N))に従ってメインフィードバック制御用目標空燃比abyfrtgt(k)を求める。ここで、αは0より大きく1より小さい定数であり、上記ローパスフィルタA12の時定数τに応じて設定されている。abyfrtgtoldは、次のステップ810にて設定される前回本ルーチンを実行した際に算出されたメインフィードバック制御用目標空燃比abyfrtgtである。abyfrtgtoldは、前回メインフィードバック制御用目標空燃比と称呼される。abyfr(k−N)は、現時点からNストローク前の実際の上流側目標空燃比である。
ステップ810:CPU71は、次回の本ルーチンの実行のために、前回メインフィードバック制御用目標空燃比abyfrtgtoldにステップ805にて算出したメインフィードバック制御用目標空燃比abyfrtgt(k)を格納する。
次に、CPU71はステップ815に進み、メインフィードバック制御条件成立フラグXmainFBの値が「1」であるか否かを判定する。メインフィードバック制御条件成立フラグXmainFBの値は、後述するルーチンにてメインフィードバック制御条件が成立したときに「1」に設定され、メインフィードバック制御条件が不成立のとき「0」に設定される。いま、メインフィードバック制御条件成立フラグXmainFBの値が「1」であるとすると、CPU71は、以下に記載したステップ820乃至ステップ835の処理を順に行い、ステップ895に進んで本ルーチンを一旦終了する。
ステップ820:CPU71は、現時点の上流側空燃比センサ66の出力値vabyfsを図2の実線により示したテーブルMapabyfs(vabyfs)に基づいて変換することにより、現時点の検出空燃比abyfs(k)を求める。
ステップ825:CPU71は、上記(10)式であるステップ825内に記載した式に従って上流側フィードバック制御用目標空燃比abyfrtgt(k)から今回の検出空燃比abyfs(k)を減じることにより、空燃比偏差Dafを求める。
ステップ825:CPU71は、上記(10)式であるステップ825内に記載した式に従って上流側フィードバック制御用目標空燃比abyfrtgt(k)から今回の検出空燃比abyfs(k)を減じることにより、空燃比偏差Dafを求める。
ステップ830:CPU71は、空燃比偏差Dafに上記(11)式により表された特性を有するハイパスフィルタ処理を施すことにより、メインフィードバック制御用偏差DafHiを取得する。
ステップ835:CPU71は、メインフィードバック制御用偏差DafHiに比例ゲインGpHiを乗じて得られる積に値「1」を加えることにより、メインフィードバック補正値KFmainを求める。
ステップ835:CPU71は、メインフィードバック制御用偏差DafHiに比例ゲインGpHiを乗じて得られる積に値「1」を加えることにより、メインフィードバック補正値KFmainを求める。
一方、メインフィードバック制御条件成立フラグXmainFBの値が「0」であるとすると、CPU71は、ステップ815から以下に記載したステップ840及びステップ845の処理を順に行い、ステップ895に進んで本ルーチンを一旦終了する。
ステップ840:CPU71は、メインフィードバック補正値KFmainを「1」に設定する。
ステップ845:CPU71は、基本補正値KFを「1」に設定する。
ステップ840:CPU71は、メインフィードバック補正値KFmainを「1」に設定する。
ステップ845:CPU71は、基本補正値KFを「1」に設定する。
このように、メインフィードバック制御条件が不成立(XmainFB=0)の場合、メインフィードバック補正値KFmainの更新が停止されるとともに、メインフィードバック補正値KFmainの値が「1」に設定されるので、メインフィードバック制御が停止される(メインフィードバック補正値KFmainの最終燃料噴射量Fiへの反映が停止される)。また、メインフィードバック制御条件が不成立(XmainFB=0)の場合、基本補正値KFの値が「1」に設定されるので、基本補正値KFの最終燃料噴射量Fiへの反映が停止される。
<サブフィードバック補正値の計算>
次に、サブフィードバック補正値Fisubを算出するための作動について説明する。CPU71は図9にフローチャートにより示したルーチンを、所定時間が経過する毎に繰り返し実行するようになっている。従って、所定のタイミングになるとCPU71はステップ900から処理を開始し、ステップ905に進んでサブフィードバック制御条件が成立しているか否かを判定する。サブフィードバック制御条件はメインフィードバック制御条件が成立し、且つ、下流側酸素濃度センサ67が活性化していると判定されるときに成立する。
次に、サブフィードバック補正値Fisubを算出するための作動について説明する。CPU71は図9にフローチャートにより示したルーチンを、所定時間が経過する毎に繰り返し実行するようになっている。従って、所定のタイミングになるとCPU71はステップ900から処理を開始し、ステップ905に進んでサブフィードバック制御条件が成立しているか否かを判定する。サブフィードバック制御条件はメインフィードバック制御条件が成立し、且つ、下流側酸素濃度センサ67が活性化していると判定されるときに成立する。
いま、サブフィードバック制御条件が成立しているものとして説明を続ける。この場合、CPU71は以下に記載したステップ910乃至ステップ935の処理を順に行い、ステップ995に進んで本ルーチンを一旦終了する。
ステップ910:CPU71は、上記(6)式であるステップ910内に記載した式に従って、下流側目標値Voxsrefから現時点の下流側酸素濃度センサ67の出力値Voxsを減じることにより、出力偏差量DVoxsを求める。
ステップ915:CPU71は、出力偏差量DVoxsに対して上記(7)式により表された特性を有するローパスフィルタ処理を施すことによりローパスフィルタ通過後出力偏差量DVoxslowを算出する。
ステップ915:CPU71は、出力偏差量DVoxsに対して上記(7)式により表された特性を有するローパスフィルタ処理を施すことによりローパスフィルタ通過後出力偏差量DVoxslowを算出する。
ステップ920:CPU71は、下記(13)式に基づきローパスフィルタ通過後出力偏差量DVoxslowの微分値DDVoxslowを求める。(13)式において、DVoxslow1は前回の本ルーチン実行時において後述するステップ935にて設定(更新)されたローパスフィルタ通過後出力偏差量DVoxslowの前回値である。また、Δtは本ルーチンが前回実行された時点から今回実行された時点までの時間である。
DDVoxslow=(DVoxslow-DVoxslow1)/Δt ・・・(13)
DDVoxslow=(DVoxslow-DVoxslow1)/Δt ・・・(13)
ステップ925:CPU71は、上記(8)式であるステップ925内に示した式に従ってサブフィードバック補正値Fisubを求める。
ステップ930:CPU71は、その時点におけるローパスフィルタ通過後出力偏差量DVoxslowの積分値SDVoxslowに上記ステップ915にて求めたローパスフィルタ通過後出力偏差量DVoxslowを加えて、新たなローパスフィルタ通過後出力偏差量DVoxslowの積分値SDVoxslowを求める。
ステップ935:CPU71は、ローパスフィルタ通過後出力偏差量DVoxslowの前回値DVoxslow1に上記ステップ915にて求めたローパスフィルタ通過後出力偏差量DVoxslowを格納する。
ステップ930:CPU71は、その時点におけるローパスフィルタ通過後出力偏差量DVoxslowの積分値SDVoxslowに上記ステップ915にて求めたローパスフィルタ通過後出力偏差量DVoxslowを加えて、新たなローパスフィルタ通過後出力偏差量DVoxslowの積分値SDVoxslowを求める。
ステップ935:CPU71は、ローパスフィルタ通過後出力偏差量DVoxslowの前回値DVoxslow1に上記ステップ915にて求めたローパスフィルタ通過後出力偏差量DVoxslowを格納する。
一方、ステップ905の判定時において、サブフィードバック制御条件が不成立であると、CPU71はステップ905にて「No」と判定してステップ940に進み、サブフィードバック補正値Fisubを「0」に設定し、続くステップ945にてローパスフィルタ通過後出力偏差量DVoxslowの積分値SDVoxslowを「0」に設定した後、ステップ995に進んで本ルーチンを一旦終了する。
このように、サブフィードバック制御条件が不成立であるとき、サブフィードバック補正値Fisubが「0」に設定されるから、下流側酸素濃度センサ67の出力値Voxsに応じた空燃比のフィードバック制御は行われない。
<基本補正値の計算と記憶・格納>
CPU71は図10にフローチャートにより示したルーチンを、図7に示したルーチンの実行に先だって繰り返し実行するようになっている。従って、所定のタイミングにてCPU71はステップ1000から処理を開始し、ステップ1005に進んで基本補正値算出許可フラグXKFcalの値が「1」であるか否かを判定する。基本補正値算出許可フラグXKFcalの値は、後述するルーチンにて基本補正値算出許可条件が成立したときに「1」に設定され、基本補正値算出許可条件が不成立のとき「0」に設定される。いま、基本補正値算出許可フラグXKFcalの値が「1」であるとすると、CPU71は、以下に記載したステップ1010乃至1030の処理を順に行い、ステップ1095に進んで本ルーチンを一旦終了する。
CPU71は図10にフローチャートにより示したルーチンを、図7に示したルーチンの実行に先だって繰り返し実行するようになっている。従って、所定のタイミングにてCPU71はステップ1000から処理を開始し、ステップ1005に進んで基本補正値算出許可フラグXKFcalの値が「1」であるか否かを判定する。基本補正値算出許可フラグXKFcalの値は、後述するルーチンにて基本補正値算出許可条件が成立したときに「1」に設定され、基本補正値算出許可条件が不成立のとき「0」に設定される。いま、基本補正値算出許可フラグXKFcalの値が「1」であるとすると、CPU71は、以下に記載したステップ1010乃至1030の処理を順に行い、ステップ1095に進んで本ルーチンを一旦終了する。
ステップ1010:CPU71は、上記(2)式であるステップ1010内に記載した式に従って、現時点からNストローク前の目標空燃比abyfr(k-N)と現時点における検出空燃比abyfs(k)との積をNストローク前の目標空燃比abyfr(k-N)により除することによって、現時点からNストローク前の真の基本燃料噴射量Fbasetを算出する。なお、現時点からNストローク前の最終燃料噴射量Fi(k-N)及び現時点からNストローク前の目標空燃比abyfr(k-N)は、いずれもRAM73から読み出される。
ステップ1015:CPU71は、上記(4)式と同じ式であるステップ1015に記載した式に基いて、ステップ1010にて算出した現時点からNストローク前の真の基本燃料噴射量Fbaset(k-N)を現時点からNストローク前の補正前基本燃料噴射量Fbaseb(k-N)により除することによって、基本補正値KFの基礎となる今回値KFnew(フィルタ前基本補正値KFbf)を算出する。なお、現時点からNストローク前の補正前基本燃料噴射量Fbaseb(k-N)はRAM73から読み出される。
ステップ1020:CPU71は、現時点からNストローク前の時点における機関10の運転状態が属する運転領域に対応してバックアップRAM74内に格納してある基本補正値KFを同バックアップRAM74から読み出す。この読み出された基本補正値KFは、過去の基本補正値KFoldである。
ステップ1025:CPU71は、ステップ1025に記載した簡易のローパスフィルタ式(KF=β・KFold+(1−β)・KFnew)に従って新たな基本補正値KF(最終基本補正値KF)を算出する。ここで、βは0より大きく1より小さい定数である。
ステップ1025:CPU71は、ステップ1025に記載した簡易のローパスフィルタ式(KF=β・KFold+(1−β)・KFnew)に従って新たな基本補正値KF(最終基本補正値KF)を算出する。ここで、βは0より大きく1より小さい定数である。
ステップ1030:CPU71は、ステップ1025にて求められた基本補正値KFを、現時点からNストローク前の時点における機関10の運転状態が属する運転領域に対応したバックアップRAM74内の格納領域に記憶・格納する。
このようにして、基本補正値算出許可フラグXKFcalの値が「1」である場合、基本補正値KFが更新され、且つ、記憶されて行く。
このようにして、基本補正値算出許可フラグXKFcalの値が「1」である場合、基本補正値KFが更新され、且つ、記憶されて行く。
一方、基本補正値算出許可フラグXKFcalの値が「0」であるとすると、CPU71はステップ1005にて「No」と判定し、ステップ1095に直ちに進んで本ルーチンを一旦終了する。この場合、基本補正値KFの更新及び同基本補正値KFのバックアップRAM74への記憶・格納処理は実行されない。
なお、基本補正値KFnewの値をそのまま新たな基本補正値KFとして採用してもよい。その場合、ステップ1020を省略し、ステップ1025における定数βを「0」に設定すればよい。
<メインフィードバック制御条件成立フラグ及び基本補正値算出許可フラグの操作>
CPU71は所定時間の経過毎に図11にフローチャートにより示したルーチンをステップ1100から実行するようになっている。従って、所定のタイミングにてCPU71はステップ1105に進み、メインフィードバック制御条件が成立しているか否かを判定する。メインフィードバック制御条件は前述したとおりである。以下、場合分けをして説明を続ける。
CPU71は所定時間の経過毎に図11にフローチャートにより示したルーチンをステップ1100から実行するようになっている。従って、所定のタイミングにてCPU71はステップ1105に進み、メインフィードバック制御条件が成立しているか否かを判定する。メインフィードバック制御条件は前述したとおりである。以下、場合分けをして説明を続ける。
(ケース1:メインフィードバック制御条件が成立している場合)
この場合、CPU71はステップ1105にて「Yes」と判定してステップ1110に進み、メインフィードバック制御条件成立フラグXmainFBの値を「1」に設定する。次いで、CPU71はステップ1115に進んで基本値算出許可フラグXKFcalの値を「1」に設定し、ステップ1195に進んで本ルーチンを一旦終了する。この結果、メインフィードバック補正値KFmain及び基本補正値KFが更新されるとともに、更新されたメインフィードバック補正値KFmain及びバックアップRAM74から読み出される基本補正値KFが最終燃料噴射量Fiに反映される。
この場合、CPU71はステップ1105にて「Yes」と判定してステップ1110に進み、メインフィードバック制御条件成立フラグXmainFBの値を「1」に設定する。次いで、CPU71はステップ1115に進んで基本値算出許可フラグXKFcalの値を「1」に設定し、ステップ1195に進んで本ルーチンを一旦終了する。この結果、メインフィードバック補正値KFmain及び基本補正値KFが更新されるとともに、更新されたメインフィードバック補正値KFmain及びバックアップRAM74から読み出される基本補正値KFが最終燃料噴射量Fiに反映される。
(ケース2:フューエルカット条件が成立している場合)
この場合、メインフィードバック制御条件は不成立となる。従って、CPU71はステップ1105にて「No」と判定してステップ1120に進み、フューエルカット条件が成立しているか否かを判定する。そして、CPU71はステップ1120にて「Yes」と判定し、ステップ1125に進んでメインフィードバック制御条件成立フラグXmainFBの値を「0」に設定する。次いで、CPU71はステップ1130に進んで基本値算出許可フラグXKFcalの値を「0」に設定し、ステップ1195に進んで本ルーチンを一旦終了する。この結果、メインフィードバック補正値KFmain及び基本補正値KFの更新が停止されるとともに、メインフィードバック補正値KFmain及びバックアップRAM74に格納してある基本補正値KFが最終燃料噴射量Fiに反映されなくなる。
この場合、メインフィードバック制御条件は不成立となる。従って、CPU71はステップ1105にて「No」と判定してステップ1120に進み、フューエルカット条件が成立しているか否かを判定する。そして、CPU71はステップ1120にて「Yes」と判定し、ステップ1125に進んでメインフィードバック制御条件成立フラグXmainFBの値を「0」に設定する。次いで、CPU71はステップ1130に進んで基本値算出許可フラグXKFcalの値を「0」に設定し、ステップ1195に進んで本ルーチンを一旦終了する。この結果、メインフィードバック補正値KFmain及び基本補正値KFの更新が停止されるとともに、メインフィードバック補正値KFmain及びバックアップRAM74に格納してある基本補正値KFが最終燃料噴射量Fiに反映されなくなる。
(ケース3:上流側空燃比センサの異常判定実行条件が成立している場合)
この場合、メインフィードバック制御条件は不成立となる。更に、フューエルカット条件は成立していない。従って、CPU71はステップ1105及びステップ1120の両ステップにて「No」と判定してステップ1135に進み、上流側空燃比センサの異常判定実行条件が成立しているか否かを判定する。
この場合、メインフィードバック制御条件は不成立となる。更に、フューエルカット条件は成立していない。従って、CPU71はステップ1105及びステップ1120の両ステップにて「No」と判定してステップ1135に進み、上流側空燃比センサの異常判定実行条件が成立しているか否かを判定する。
そして、CPU71はステップ1135にて「Yes」と判定し、ステップ1140に進んでメインフィードバック制御条件成立フラグXmainFBの値を「0」に設定する。次いで、CPU71はステップ1145に進んで基本値算出許可フラグXKFcalの値を「1」に設定し、ステップ1195に進んで本ルーチンを一旦終了する。この結果、メインフィードバック補正値KFmainの更新は停止され、且つ、メインフィードバック補正値KFmainは最終燃料噴射量Fiに反映されない。一方、基本補正値KFは更新及び格納される。但し、メインフィードバック制御条件が不成立であるから、バックアップRAM74に格納してある基本補正値KFは最終燃料噴射量Fiに反映されない。
(ケース4:メインフィードバック制御条件、フューエルカット条件及び上流側空燃比センサの異常判定実行条件の何れもが成立していない場合)
このような場合は、例えば、フューエルカット条件が成立しておらず、且つ、上流側空燃比センサ66が活性化していないときに生じる。この場合、CPU71はステップ1105、ステップ1120及びステップ1135の総てのステップにて「No」と判定してステップ1150に進み、メインフィードバック制御条件成立フラグXmainFBの値を「0」に設定する。次いで、CPU71はステップ1155に進んで基本値算出許可フラグXKFcalの値を「0」に設定し、ステップ1195に進んで本ルーチンを一旦終了する。この結果、メインフィードバック補正値KFmain及び基本補正値KFの更新が停止されるとともに、メインフィードバック補正値KFmain及びバックアップRAM74に格納してある基本補正値KFが最終燃料噴射量Fiに反映されなくなる。
このような場合は、例えば、フューエルカット条件が成立しておらず、且つ、上流側空燃比センサ66が活性化していないときに生じる。この場合、CPU71はステップ1105、ステップ1120及びステップ1135の総てのステップにて「No」と判定してステップ1150に進み、メインフィードバック制御条件成立フラグXmainFBの値を「0」に設定する。次いで、CPU71はステップ1155に進んで基本値算出許可フラグXKFcalの値を「0」に設定し、ステップ1195に進んで本ルーチンを一旦終了する。この結果、メインフィードバック補正値KFmain及び基本補正値KFの更新が停止されるとともに、メインフィードバック補正値KFmain及びバックアップRAM74に格納してある基本補正値KFが最終燃料噴射量Fiに反映されなくなる。
以上、説明したように、本発明の第1実施形態に係る内燃機関の空燃比制御装置によれば、現時点からNストローク前(無駄時間Lだけ前)の無駄時間前値である目標空燃比abyfr(k−N)にローパスフィルタ処理を施したフィードバック制御用目標空燃比abyfrtgt(k)と、現時点の上流側空燃比センサ66の出力値vabyfsに基づく検出空燃比abyfs(k)と、の差Daf(又は、差Dafにハイパスフィルタ処理を施したメインフィードバック制御用偏差DafHi)に基づいてメインフィードバック補正値KFmainが求められ、このメインフィードバック補正値KFmainが燃料噴射量Fiに反映されることによって(上流側)空燃比フィードバック制御が実行される。
フィードバック制御用目標空燃比abyfrtgt(k)は、目標空燃比abyfr(k)を得るために適正な量の燃料が機関10に供給されていた場合において上流側空燃比センサ66が出力すべき出力値vabyfs(k)に応じた検出空燃比abyfs(k)と一致するので、メインフィードバック補正値KFmainが適正な値となる。
更に、本装置によれば、メインフィードバック制御用偏差DafHiは、ハイパスフィルタA14によって空燃比偏差Dafにハイパスフィルタ処理を施した値であって上流側触媒53の下流には現れない空燃比変動を反映した値である。従って、メインフィードバック補正値KFmainとサブフィードバック補正値Fisubとによる空燃比制御上の干渉が発生しない。更に、第1触媒53の下流の空燃比の変動として現れる空燃比変動に対する空燃比制御は積分項を含むサブフィードバック制御により行われる。従って、機関の空燃比をより適切に制御することができる。
加えて、本装置によれば、メインフィードバック制御実行条件が不成立となっている場合であっても、メインフィードバック制御実行条件が不成立となっている理由が上流側空燃比センサの異常判定実行条件が成立しているためのみである場合、基本補正値KFの更新が続行される。この結果、メインフィードバック制御の再開時において基本補正値KFの値が最適値に近づいているので、メインフィードバック制御再開後における機関の空燃比を迅速に目標空燃比に近づけることができる。なお、メインフィードバック制御実行条件が不成立となっている場合に基本補正値KFの更新を続行する条件は、メインフィードバック制御実行条件が不成立となっている理由が上流側空燃比センサの異常判定実行条件が成立していることのみである場合に限定されることはない。即ち、メインフィードバック制御を実行することは可能であるが、メインフィードバック制御を実行してしまうと別の理由によって所望の空燃比の変化を実現できない場合に、メインフィードバック制御(メインフィードバック補正値の更新及び反映、並びに、基本補正値の反映)を停止し、且つ、基本補正値の更新を継続してもよい。
更に、上記実施形態においては、上流側空燃比センサ66が活性化していない場合(未活性の場合)、基本補正値は更新されない。基本補正値は上流側空燃比センサ66の出力値vabyfsに基く検出空燃比abyfsによって求められるので、上流側空燃比センサ66が未活性であって検出空燃比abyfsが適正に得られない場合に基本補正値を求めることは基本補正値を不適切な値に更新してしまう恐れがあるからである。
なお、上記実施形態においては、メインフィードバック制御条件が不成立であり、且つ、基本補正値算出許可条件が成立しているとき、(バックアップRAM74内に格納されている)基本補正値が最終燃料噴射量の算出に反映されていないが、基本補正値を最終燃料噴射量の算出に反映されるように構成してもよい。或いは、メインフィードバック制御条件が不成立であり、且つ、基本補正値算出許可条件が成立しているとき、バックアップRAM74から読み出される基本補正値に0より大きく1より小さい係数を乗じた値(例えば、基本補正値の50%)が暫定基本補正値として最終燃料噴射量の算出に反映されるように構成してもよい。
<第2実施形態>
次に、本発明の第2実施形態に係る内燃機関の空燃比制御装置について説明する。第2実施形態に係る空燃比制御装置は、第1実施形態の基本補正値算出許可条件の他の条件として、以下に述べる条件が加えられた点において主として第1実施形態に係る空燃比制御装置と相違する。
次に、本発明の第2実施形態に係る内燃機関の空燃比制御装置について説明する。第2実施形態に係る空燃比制御装置は、第1実施形態の基本補正値算出許可条件の他の条件として、以下に述べる条件が加えられた点において主として第1実施形態に係る空燃比制御装置と相違する。
第1実施形態においては、上流側空燃比センサが完全には活性化していない場合(未活性の場合)、基本補正値KFを更新していない。しかし、上流側空燃比センサが完全には活性化していないことのみによりメインフィードバック制御条件が不成立の場合であって、且つ、基本補正値を求めても不都合が発生しない「目標空燃比と上流側空燃比センサの出力値(同出力値により求められる検出空燃比)とが特定の条件を満足する場合」には、基本補正値KFを更新してもよい。
より具体的に述べると、基本補正値算出許可条件は以下の条件C及び条件Dの両方が成立するときにも成立する。
(条件C)上流側空燃比センサ66が活性化していること以外のメインフィードバック制御条件は成立している。
(条件D)上流側空燃比センサ66の出力値に基いて得られる空燃比である検出空燃比abyfsが機関10に供給される混合気の実際の空燃比である実空燃比と目標空燃比abyfrとの間に存在する。
(条件C)上流側空燃比センサ66が活性化していること以外のメインフィードバック制御条件は成立している。
(条件D)上流側空燃比センサ66の出力値に基いて得られる空燃比である検出空燃比abyfsが機関10に供給される混合気の実際の空燃比である実空燃比と目標空燃比abyfrとの間に存在する。
本実施形態における上流側空燃比センサ66の出力特性は、図2を参照して説明したとおりである。従って、上流側空燃比センサ66が未活性状態(活性状態には完全に至っていない状態である半活性状態)にある場合、実空燃比が理論空燃比又は理論空燃比よりもリーンな空燃比であれば、図15の領域Bに示したように、検出空燃比abyfsは実空燃比よりリッチ側の空燃比となる。従って、条件Dは「(条件D1)検出空燃比abyfsが理論空燃比又は理論空燃比よりリーン側であって、目標空燃比abyfrが検出空燃比abyfsよりもリッチ側である。」ときに成立する。即ち、条件Dとして条件D1を採用することができる。
更に、上流側空燃比センサ66が未活性状態にある場合、実空燃比が理論空燃比又は理論空燃比よりもリッチな空燃比であれば、図15の領域Aに示したように、検出空燃比abyfsは実空燃比よりリーン側の空燃比となる。従って、条件Dは「(条件D2)検出空燃比abyfsが理論空燃比又は理論空燃比よりリッチ側であって、目標空燃比abyfrが検出空燃比abyfsよりもリーン側である。」ときに成立する。即ち、条件Dとして条件D2を採用することができる。
上記条件C及び条件D(条件D1又は条件D2)が成立する場合に、基本補正値を算出することが望ましい理由は、図14〜図23を用いて先に説明したとおりである。
(実際の作動)
次に、第2実施形態に係る空燃比制御装置の実際の作動について説明する。この空燃比制御装置は、そのCPU71がフラグ操作のための図11のルーチンに代えて図12のルーチンを実行する点のみにおいて、第1実施形態に係る空燃比制御装置と相違している。従って、以下においては、図12のルーチンによるフラグ操作について説明する。なお、図12において図11に示したステップと同一のステップには同一の符号を付し、詳細な説明を省略する。
次に、第2実施形態に係る空燃比制御装置の実際の作動について説明する。この空燃比制御装置は、そのCPU71がフラグ操作のための図11のルーチンに代えて図12のルーチンを実行する点のみにおいて、第1実施形態に係る空燃比制御装置と相違している。従って、以下においては、図12のルーチンによるフラグ操作について説明する。なお、図12において図11に示したステップと同一のステップには同一の符号を付し、詳細な説明を省略する。
CPU71は、所定時間の経過毎に図12にフローチャートにより示したルーチンをステップ1200から実行するようになっている。このルーチンのステップ1105乃至ステップ1145までは図11のルーチンと同一である。従って、以下、ステップ1205以降に進む場合についてのみ説明する。
ステップ1205に進む場合は、ステップ1105、ステップ1120及びステップ1135の総てにおいてCPU71が「No」と判定する場合である。即ち、メインフィードバック制御条件が不成立であり、フューエルカット条件が不成立であり且つ上流側空燃比センサ66の異常判定実行条件が不成立の場合である。このような場合には、上流側空燃比センサが活性化していること以外のメインフィードバック制御実行条件が成立している場合が含まれる。
そこで、上流側空燃比センサが活性化していること以外のメインフィードバック制御実行条件が成立していると仮定する。この場合、CPU71はステップ1205に進んで上流側空燃比センサ66が未活性(活性化していない)か否かを判定する。換言すると、メインフィードバック制御条件が不成立となった理由が上流側空燃比センサ66が未活性であることのみに依っているか否かが確認される。
いま、上流側空燃比センサ66が未活性であるとすると、CPU71はステップ1205にて「Yes」と判定してステップ1210に進み、上流側空燃比センサ66の出力値vabyfsと図2に示したテーブルMapabyfsとから取得される検出空燃比abyfsが上流側の目標空燃比(この目標空燃比としては、メインフィードバック制御用目標空燃比abyfrtgt(k)が適切である。)と実空燃比との間に存在するか否かを判定する。
より具体的に述べると、CPU71はステップ1210に進んだとき、図13に示したステップ1305に進み、ステップ1305にて上流側空燃比センサ66の出力値vabyfsを取得し、続くステップ1310にて検出空燃比abyfsを図2のマップMapabyfsと取得した出力値vabyfsとから求める。
いま、検出空燃比abyfsが理論空燃比又は理論空燃比よりリッチな空燃比であると仮定する。このとき、CPU71はステップ1315にて「Yes」と判定し、ステップ1320に進み、検出空燃比abyfsが目標空燃比(実際には、メインフィードバック制御用目標空燃比abyfrtgt)よりリッチな空燃比であるか否かを判定する。即ち、ステップ1315及びステップ1320により、図15の領域Aに示したような状態であるか否かが判定される。換言すると、ステップ1315及びステップ1320により、上記条件D2である「検出空燃比abyfsが理論空燃比又は理論空燃比よりリッチ側であって、目標空燃比abyfrが検出空燃比abyfsよりもリーン側である。」か否かが判定される。
従って、検出空燃比abyfsが目標空燃比よりリッチな空燃比であれば、CPU71はステップ1320にて「Yes」と判定してステップ1215に進み、メインフィードバック制御条件成立フラグXmainFBの値を「0」に設定する。次いで、CPU71はステップ1220に進んで基本値算出許可フラグXKFcalの値を「1」に設定し、ステップ1295に進んで本ルーチンを一旦終了する。この結果、メインフィードバック制御条件成立フラグXmainFBの値が「0」に設定されるから、メインフィードバック補正値KFmainの更新が停止されるとともに、メインフィードバック補正値KFmain及びバックアップRAM74内に格納されている基本補正値KFの最終燃料噴射量Fiへの反映が停止される。一方、基本値算出許可フラグXKFcalの値は「1」に設定されるから、基本補正値KFの更新及び同基本補正値KFのバックアップRAM74への記憶・格納処理が実行される。
一方、ステップ1320の判定時において、検出空燃比abyfsが目標空燃比よりリッチな空燃比でなければ、CPU71はステップ1320にて「No」と判定してステップ1225に進み、メインフィードバック制御条件成立フラグXmainFBの値を「0」に設定する。次いで、CPU71はステップ1230に進んで基本値算出許可フラグXKFcalの値を「0」に設定し、ステップ1295に進んで本ルーチン(図12及び図13に示したルーチン)を一旦終了する。この結果、メインフィードバック制御条件成立フラグXmainFBの値及び基本値算出許可フラグXKFcalの値は何れも「0」に設定されるから、メインフィードバック補正値KFmain及び基本補正値KFの更新が停止されるとともに、メインフィードバック補正値KFmain及びバックアップRAM74内に格納されている基本補正値KFが最終燃料噴射量Fiに反映されなくなる。
次に、現時点の検出空燃比abyfsが理論空燃比又は理論空燃比よりリーンな空燃比であると仮定する。このとき、CPU71はステップ1305及びステップ1310を経てステップ1315に進んだとき、同ステップ1315にて「No」と判定してステップ1325に進み、検出空燃比abyfsが目標空燃比(実際には、メインフィードバック制御用目標空燃比abyfrtgt)よりリーンな空燃比であるか否かを判定する。即ち、ステップ1315及びステップ1325により、図15の領域Bに示したような状態であるか否かが判定される。換言すると、ステップ1315及びステップ1325により、上記条件D1である「検出空燃比abyfsが理論空燃比又は理論空燃比よりリーン側であって、目標空燃比abyfrが検出空燃比abyfsよりもリッチ側である。」か否かが判定される。
従って、検出空燃比abyfsが目標空燃比よりリーンな空燃比であれば、CPU71はステップ1325にて「Yes」と判定してステップ1215に進み、メインフィードバック制御条件成立フラグXmainFBの値を「0」に設定する。次いで、CPU71はステップ1220に進んで基本値算出許可フラグXKFcalの値を「1」に設定し、ステップ1295に進んで本ルーチンを一旦終了する。この結果、メインフィードバック制御条件成立フラグXmainFBの値が「0」に設定されるから、メインフィードバック補正値KFmainの更新が停止されるとともに、メインフィードバック補正値KFmain及びバックアップRAM74内に格納されている基本補正値KFの最終燃料噴射量Fiへの反映が停止される。一方、基本値算出許可フラグXKFcalの値は「1」に設定されるから、基本補正値KFの更新及び同基本補正値KFのバックアップRAM74への記憶・格納処理が実行される。
一方、ステップ1325の判定時において、検出空燃比abyfsが目標空燃比よりリーンな空燃比でなければ、CPU71はステップ1325にて「No」と判定してステップ1225に進み、メインフィードバック制御条件成立フラグXmainFBの値を「0」に設定する。次いで、CPU71はステップ1230に進んで基本値算出許可フラグXKFcalの値を「0」に設定し、ステップ1295に進んで本ルーチンを一旦終了する。この結果、メインフィードバック制御条件成立フラグXmainFBの値及び基本値算出許可フラグXKFcalの値は何れも「0」に設定されるから、メインフィードバック補正値KFmain及び基本補正値KFの更新が停止されるとともに、メインフィードバック補正値KFmain及びバックアップRAM74内に格納されている基本補正値KFが最終燃料噴射量Fiに反映されなくなる。
前述したように、上流側空燃比センサ66は、実空燃比が理論空燃比よりもリッチ側の領域(図15の領域A)にある場合、破線により示した未活性であるときの出力値とテーブルMapabyfsとに基く空燃比(検出空燃比)が実際の空燃比(実空燃比)よりリーン側の空燃比となるような出力値vabyfsを出力する。
この場合、検出空燃比が実空燃比と目標空燃比(実際には、メインフィードバック制御用目標空燃比abyfrtgt)との間にあり、同検出空燃比のほうが同実空燃比よりも同目標空燃比に近い空燃比であるならば、検出空燃比に基いて基本補正値KFを求めた方が、上流側空燃比センサ66が未活性であるという理由により基本補正値KFを求めない場合より、基本補正値KFを最終的に到達するであろう基本補正値(基本補正値の適正値)に近づけておくことができる。
何故なら、検出空燃比は「実空燃比が目標空燃比よりもリッチである」ことを確実に示しているので、検出空燃比に基いて求められる基本補正値は実空燃比に基いて求められる基本補正値と同様に基本燃料噴射量を減少補正する値となるからである。更に、「検出空燃比と目標空燃比との差の大きさ」は「実空燃比と目標空燃比との差の大きさ」より小さいので、検出空燃比に基いて求められる基本補正値は基本燃料噴射量を過剰に減少補正してしまうような値とならないからである。
更に、上流側空燃比センサ66は、実空燃比が理論空燃比よりもリーン側の領域(図15の領域B)にある場合、破線により示した未活性であるときの出力値とテーブルMapabyfsとに基く空燃比(検出空燃比)が実際の空燃比(実空燃比)よりリッチ側の空燃比となるような出力値vabyfsを出力する。
この場合、検出空燃比が実空燃比と目標空燃比(実際には、メインフィードバック制御用目標空燃比abyfrtgt)との間にあり、同検出空燃比のほうが同実空燃比よりも同目標空燃比に近い空燃比であるならば、検出空燃比に基いて基本補正値KFを求めた方が、上流側空燃比センサ66が未活性であるという理由により基本補正値KFを求めない場合より、基本補正値KFを最終的に到達するであろう基本補正値(基本補正値の適正値)に近づけておくことができる。
何故なら、検出空燃比は「実空燃比が目標空燃比よりもリーンである」ことを確実に示しているので、検出空燃比に基いて求められる基本補正値は実空燃比に基いて求められる基本補正値と同様に基本燃料噴射量を増大補正する値となるからである。更に、「検出空燃比と目標空燃比との差の大きさ」は「実空燃比と目標空燃比との差の大きさ」より小さいので、検出空燃比に基いて求められる基本補正値は基本燃料噴射量を過剰に増大補正してしまうような値とならないからである。
以上、説明したように、第2実施形態に係る空燃比制御装置は、基本補正値算出許可条件の一つに、「上流側空燃比センサが活性化していない場合であっても、前記上流側空燃比センサの出力値に基いて得られる空燃比である検出空燃比が前記機関に供給される混合気の実際の空燃比である実空燃比と前記目標空燃比との間に存在すること。」を、追加している。その結果、上流側空燃比センサ66が完全には活性化していない場合であっても基本補正値KFを算出しておくことができる場合があるので、メインフィードバック制御開始後において基本燃料噴射量の誤差を迅速に補償し、以って、機関の空燃比を目標空燃比に迅速に近づけることが可能な空燃比制御装置を提供することができる。
なお、上流側空燃比センサ66が図14に示したような特性(空燃比の全域において検出空燃比が実空燃比よりもリーンとなる特性)を示す場合には、検出空燃比が目標空燃比よりもリッチであると判定されることを基本補正値算出許可条件の必要条件とすることができる。
一方、上流側空燃比センサの種類によっては、図20に示したように、破線により示した未活性であるときの出力値に基く検出空燃比が実際の空燃比(実空燃比)よりリッチ側の空燃比となる場合がある。上流側空燃比センサがこのような特性を有する場合、上記条件Dは、「上流側空燃比センサの出力値に基いて得られる空燃比である検出空燃比abyfsが実空燃比よりもリッチ側の空燃比となる場合、検出空燃比が目標空燃比よりもリーン側の空燃比であること」に置換され得る。
また、上流側空燃比センサが図23に示した出力特性を有する場合において、実空燃比が図23の領域A(理論空燃比よりもリッチ側の領域)にある場合、上記条件Dは、「上流側空燃比センサの出力値に基いて得られる空燃比である検出空燃比が理論空燃比よりもリッチ側の空燃比となる場合、検出空燃比が目標空燃比よりもリーン側の空燃比であること」に置換され得る。更に、実空燃比が図23の領域B(理論空燃比よりもリーン側の領域)にある場合、上記条件Dは「上流側空燃比センサの出力値に基いて得られる空燃比である検出空燃比が理論空燃比よりもリーン側の空燃比となる場合、検出空燃比が目標空燃比よりもリッチ側の空燃比であること」という条件に置換してもよい。
以上、説明したように、本発明による各実施形態に係る空燃比制御装置によれば、メインフィードバック制御が停止されている期間においても、基本補正値が算出・更新される場合が発生するので、メインフィードバック制御の開始後において機関の空燃比をより迅速に目標空燃比に近づけることができる。
本発明は上記各実施形態に限定されることはなく、本発明の範囲内において種々の変形例を採用することができる。例えば、上記各実施形態においては、メインフィードバック制御用目標空燃比abyfrtgt(k)と現時点の検出空燃比abyfs(k)との差である空燃比偏差Dafに対してハイパスフィルタ処理を施してメインフィードバック制御用偏差DafHiを求めていた。これに対し、現時点の検出空燃比abyfs(k)に対して先にハイパスフィルタ処理を施し、そのハイパスフィルタ処理後の現在の検出空燃比とメインフィードバック制御用目標空燃比abyfrtgt(k)との差をメインフィードバック制御用偏差DafHiとして求めてもよい。更に、メインフィードバック補正値KFmainを、特許文献1に記載されたように、筒内に供給される燃料量の過不足量に基いて求めてもよい。
また、基本補正値は、前記真の指示噴射量及び前記補正前基本燃料噴射量から実質的に求められればよい。換言すると、本発明の基本補正値算出手段は、上述した(4)式の右辺から明らかなように、現時点における前記上流側空燃比センサの出力値と、前記無駄時間だけ現時点よりも前の時点の前記噴射指示信号に含まれていた指示噴射量と、前記無駄時間だけ現時点よりも前の時点における筒内吸入空気量とから、基本補正値を求めるものを含む。
10…内燃機関、25…燃焼室、39…インジェクタ(燃料噴射手段)、53…上流側三元触媒、66…上流側空燃比センサ(空燃比センサ)、70…電気制御装置、71…CPU。
Claims (5)
- 内燃機関の排気通路に配設された触媒よりも上流側の同排気通路に配設されるとともに同機関に供給された混合気の空燃比に応じた出力値を出力する上流側空燃比センサと、
噴射指示信号に含まれる指示噴射量の燃料が前記機関の気筒に供給されるように同噴射指示信号に応答して燃料を噴射する燃料噴射手段と、
を備えた内燃機関に適用される内燃機関の空燃比制御装置であって、
一回の吸気行程において前記機関の一つの気筒内に吸入される空気量である筒内吸入空気量を同機関の運転状態に基づいて取得する筒内吸入空気量取得手段と、
前記機関の運転状態に応じて前記機関に供給される混合気の空燃比の目標値である目標空燃比を決定する目標空燃比決定手段と、
前記取得された筒内吸入空気量と前記決定された目標空燃比とに基いて前記機関に供給される混合気の空燃比を同目標空燃比とするための補正前基本燃料噴射量を決定する補正前基本燃料噴射量算出手段と、
所定のメインフィードバック制御条件が成立しているとき、前記噴射指示信号に基いて前記燃料噴射手段から燃料が噴射されたときから同噴射された燃料が前記気筒内において燃焼することにより生成された排ガスが前記上流側空燃比センサに到達するまでに要する時間である無駄時間だけ現時点よりも前の時点において前記目標空燃比決定手段により決定されていた前記目標空燃比に応じた値と、前記上流側空燃比センサの現時点における出力値に応じた値と、の差に対してハイパスフィルタ処理を施すことにより得られるメインフィードバック制御用偏差、又は、前記無駄時間だけ現時点よりも前の時点において前記目標空燃比決定手段により決定されていた前記目標空燃比に応じた値と、前記上流側空燃比センサの現時点における出力値に応じた値に対してハイパスフィルタ処理を施すことにより得られる値と、の差であるメインフィードバック制御用偏差、に基いてメインフィードバック補正値を更新するメインフィードバック補正値更新手段と、
前記メインフィードバック制御条件が成立しているときには成立し且つ同メインフィードバック制御条件が成立していないときであっても他の所定条件が成立していれば成立する基本補正値算出許可条件が成立しているとき、現時点における前記上流側空燃比センサの出力値と、前記無駄時間だけ現時点よりも前の時点の前記噴射指示信号に含まれていた指示噴射量と、前記無駄時間だけ現時点よりも前の時点において前記目標空燃比決定手段により決定されていた目標空燃比と、から同目標空燃比を得るために必要である真の指示噴射量を求めるとともに、同真の指示噴射量と前記無駄時間だけ現時点よりも前の時点において前記補正前基本燃料噴射量算出手段により決定されていた補正前基本燃料噴射量とから同補正前基本燃料噴射量に対する基本補正値を算出する基本補正値算出手段と、
前記補正前基本燃料噴射量を前記メインフィードバック補正値及び前記基本補正値により補正して最終燃料噴射量を算出する最終燃料噴射量算出手段と、
前記最終燃料噴射量を前記指示噴射量として含む噴射指示信号を前記燃料噴射手段に出力する燃料噴射制御手段と、
を備えた内燃機関の空燃比制御装置。 - 請求項1に記載の内燃機関の空燃比制御装置において、
前記メインフィードバック制御条件は、
前記上流側空燃比センサが活性化していることを同メインフィードバック制御条件が成立するための必要条件の一つに含み、
前記基本補正値算出許可条件は、
前記上流側空燃比センサが活性化していることを同基本補正値算出許可条件が成立するための必要条件の一つに含む、
ように設定された内燃機関の空燃比制御装置。 - 請求項1に記載の内燃機関の空燃比制御装置において、
前記メインフィードバック制御条件は、
前記上流側空燃比センサが活性化していることを同メインフィードバック制御条件が成立するための必要条件の一つに含み、
前記基本補正値算出許可条件は、
前記上流側空燃比センサが活性化していること、及び、前記上流側空燃比センサが活性化していない場合であっても前記上流側空燃比センサの出力値に基いて得られる空燃比である検出空燃比が前記機関に供給される混合気の実際の空燃比である実空燃比と前記目標空燃比との間に存在していると判断されること、の何れか一方を同基本補正値算出許可条件が成立するための必要条件の一つに含む、
ように設定された内燃機関の空燃比制御装置。 - 請求項1に記載の内燃機関の空燃比制御装置において、
前記メインフィードバック制御条件は、
前記上流側空燃比センサが活性化していることを同メインフィードバック制御条件が成立するための必要条件の一つに含み、
前記基本補正値算出許可条件は、
前記上流側空燃比センサが活性化していること、及び、前記上流側空燃比センサが活性していない場合であっても前記機関に供給される混合気の実際の空燃比である実空燃比に対して前記上流側空燃比センサの出力値に基いて得られる空燃比である検出空燃比がリーン側の空燃比となる領域内に同実空燃比が存在し且つ前記目標空燃比が同検出空燃比よりもリーン側に存在していること、の何れか一方を同基本補正値算出許可条件が成立するための必要条件の一つに含む、
ように設定された内燃機関の空燃比制御装置。 - 請求項1に記載の内燃機関の空燃比制御装置において、
前記メインフィードバック制御条件は、
前記上流側空燃比センサが活性化していることを同メインフィードバック制御条件が成立するための必要条件の一つに含み、
基本補正値算出許可条件は、
前記上流側空燃比センサが活性化していること、及び、前記上流側空燃比センサが活性していない場合であっても前記機関に供給される混合気の実際の空燃比である実空燃比に対して前記上流側空燃比センサの出力値に基いて得られる空燃比である検出空燃比がリッチ側の空燃比となる領域内に同実空燃比が存在し且つ前記目標空燃比が同検出空燃比よりもリッチ側に存在していること、の何れか一方を同基本補正値算出許可条件が成立するための必要条件の一つに含む、
ように設定された内燃機関の空燃比制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007050460A JP2008215106A (ja) | 2007-02-28 | 2007-02-28 | 内燃機関の空燃比制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007050460A JP2008215106A (ja) | 2007-02-28 | 2007-02-28 | 内燃機関の空燃比制御装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008215106A true JP2008215106A (ja) | 2008-09-18 |
Family
ID=39835469
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007050460A Pending JP2008215106A (ja) | 2007-02-28 | 2007-02-28 | 内燃機関の空燃比制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008215106A (ja) |
-
2007
- 2007-02-28 JP JP2007050460A patent/JP2008215106A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100773276B1 (ko) | 내연 기관의 공연비 제어 장치 | |
JP4380625B2 (ja) | 内燃機関の空燃比制御装置 | |
JP4957559B2 (ja) | 内燃機関の空燃比制御装置 | |
JP3846480B2 (ja) | 内燃機関の排気浄化装置 | |
JP4453749B2 (ja) | 内燃機関の制御装置 | |
JP2007162565A (ja) | 内燃機関の空燃比制御装置 | |
JP2009002251A (ja) | 内燃機関の空燃比制御装置 | |
JP2009156100A (ja) | 内燃機関の制御装置 | |
JP3922091B2 (ja) | 内燃機関の空燃比制御装置 | |
JP2009215933A (ja) | 内燃機関の制御装置 | |
JP2007113437A (ja) | 内燃機関の空燃比制御装置 | |
US20120271534A1 (en) | Control device for internal combustion engine | |
JP4936018B2 (ja) | 内燃機関の空燃比制御装置 | |
JP4893634B2 (ja) | 内燃機関の空燃比制御装置 | |
JP2006112274A (ja) | 内燃機関の空燃比制御装置 | |
JP2008215106A (ja) | 内燃機関の空燃比制御装置 | |
JP4023174B2 (ja) | 触媒劣化判定装置 | |
JP4888397B2 (ja) | 内燃機関の空燃比制御装置 | |
JP4299218B2 (ja) | 内燃機関の空燃比制御装置 | |
JP4245535B2 (ja) | 内燃機関の空燃比制御装置 | |
JP4139373B2 (ja) | 内燃機関の空燃比制御装置 | |
JP4239521B2 (ja) | 内燃機関の排気浄化装置 | |
JP2007278186A (ja) | 内燃機関の空燃比制御装置 | |
JP2007262898A (ja) | 内燃機関の空燃比制御装置 | |
JP2017115802A (ja) | 内燃機関の空燃比制御装置 |