JPH11229930A - 内燃機関の制御装置 - Google Patents

内燃機関の制御装置

Info

Publication number
JPH11229930A
JPH11229930A JP3167698A JP3167698A JPH11229930A JP H11229930 A JPH11229930 A JP H11229930A JP 3167698 A JP3167698 A JP 3167698A JP 3167698 A JP3167698 A JP 3167698A JP H11229930 A JPH11229930 A JP H11229930A
Authority
JP
Japan
Prior art keywords
air
fuel ratio
learning
sensor
value
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
Application number
JP3167698A
Other languages
English (en)
Inventor
Mamoru Yoshioka
衛 吉岡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP3167698A priority Critical patent/JPH11229930A/ja
Publication of JPH11229930A publication Critical patent/JPH11229930A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】酸素濃淡電池型酸素センサ及び限界電流型酸素
センサの検出結果に基づき、より好適に内燃機関の運転
状態を制御することのできる内燃機関の制御装置を提供
する。 【解決手段】エンジン1の排気通路6に設けられる酸素
センサ25から出力される酸素濃度信号OX及びリーン
ミクスチャセンサ26から出力される酸素濃度信号VL
eanに基づき同排気通路6内の酸素濃度を検出する。
酸素濃度信号OXに基づき、酸素センサ空燃比学習値を
算出し、酸素濃度信号VLeanに基づき、リーンミク
スチャセンサ空燃比学習値を算出する。エンジン1の燃
料噴射量制御や点火時期制御に際しては、それら空燃比
学習値に基づき噴射量や空気量補正が行われるが、酸素
センサ空燃比学習値が既に算出されている場合には、同
学習値が優先して参照される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、内燃機関の排気通
路に設けられる酸素濃淡電池型酸素センサ及び限界電流
型酸素センサの検出結果に基づいて、例えば燃料噴射量
制御や点火時期制御等を行う内燃機関の制御装置に関す
るものである。
【0002】
【従来の技術】従来より、内燃機関(エンジン)から排
出される排気ガス中のHC,CO,NOxを触媒コンバ
ータを通じて同時に浄化するために、エンジンに吸入さ
れる混合気の空燃比を理論空燃比に維持する制御、すな
わち「理論空燃比制御」が行われている。このような制
御としては、例えば特開昭62−186029号公報に
記載された燃料噴射量による制御が知られている。すな
わち、同公報において燃料噴射量TAUSは、基本燃料
噴射量TP、空燃比フィードバック補正係数FAFS、
空燃比学習値KGSi、補正係数Kにより、 TAUS=TP・FAFS・KGSi・K と算出される。
【0003】ここで、燃料噴射量TAUSは空燃比を上
記理論空燃比に維持するように算出される値である。ま
た、基本燃料噴射量TPはエンジン負荷(例えば吸気
圧)及びエンジン回転数に基づく所定のマップにより算
出される基準となる燃料噴射量の値である。さらに、空
燃比フィードバック補正係数FAFSは、理論空燃比近
傍での空燃比を検出するためにエンジンの排気通路に設
けられる酸素センサ(酸素濃淡電池型酸素センサ)の検
出結果に基づき、実際の空燃比と理論空燃比とを比較す
ることにより算出されるものであり、同フィードバック
補正係数FAFSに基づく燃料噴射量の補正により、空
燃比を理論空燃比に近づけるフィードバック制御が実行
される。さらにまた、空燃比学習値KGSiはエンジン
固体の差、経時変化、使用環境条件による空燃比のずれ
を補正するために上記空燃比フィードバック補正係数F
AFSに基づき算出されるものである。また、補正係数
Kは過渡時等、その他の要因分を補正するものである。
【0004】一方、近年、エンジンの燃料消費率をよく
するために、エンジンに吸入される混合気の空燃比を理
論空燃比よりも希薄側の所要の空燃比にする制御、すな
わち「希薄空燃比制御」も行われている。このような制
御において、上記燃料噴射量TAUSに準じて算出され
る燃料噴射量TAULは、基本燃料噴射量TP、空燃比
フィードバック補正係数FAFL、空燃比学習値KGL
i、補正係数Kにより、 TAUL=TP・FAFL・KGLi・K と算出される。
【0005】ここで、燃料噴射量TAULは空燃比を上
記理論空燃比よりも希薄側の目標とする空燃比(目標空
燃比)にするように算出される値である。また、基本燃
料噴射量TPは上記同様、基準となる燃料噴射量の値で
ある。さらに、空燃比フィードバック補正係数FAFL
は、理論空燃比よりも希薄側の空燃比を検出するために
エンジンの排気通路に設けられるリーンミクスチャセン
サ(限界電流型酸素センサ)の検出結果に基づき、実際
の空燃比と目標空燃比とを比較することにより算出され
るものであり、同フィードバック補正係数FAFLに基
づく燃料噴射量の補正により、空燃比を目標空燃比に近
づけるフィードバック制御が実行される。さらにまた、
空燃比学習値KGLiはエンジン固体の差、経時変化、
使用環境条件による空燃比のずれを補正するために上記
空燃比フィードバック補正係数FAFLに基づき算出さ
れるものである。
【0006】これら燃料噴射量TAUS,TAULの算
出結果に基づく燃料噴射量制御等により、エンジンの運
転状態に応じて理論空燃比制御及び希薄空燃比制御がそ
れぞれ実行される。
【0007】
【発明が解決しようとする課題】ところで、上記リーン
ミクスチャセンサによる検出精度は、上記酸素センサに
よる検出精度に比べて劣ることが知られている。すなわ
ち図36に示すように、酸素センサから出力される酸素
濃度信号OXは理論空燃比近傍で急変する特性を有す
る。酸素センサはこの特性を利用して空燃比(理論空燃
比)を検出しているために、例えば±1%程度の誤差で
同空燃比を検出することができる。一方、リーンミクス
チャセンサから出力される酸素濃度信号VLeanは、
例えば同センサの電極の両端に所定の一定電圧が印加さ
れるとき、図37に示すように排気ガス中の酸素濃度
(空燃比)に比例する特性を有する。リーンミクスチャ
センサはこの特性を利用して理論空燃比から同理論空燃
比よりも希薄側の空燃比を検出している。したがって、
上記電圧等のばらつきにより、検出される空燃比には例
えば±5%程度の誤差が含まれるようになり、その検出
精度において上記酸素センサよりも劣ったものとなって
いる。
【0008】また上述のように、空燃比フィードバック
補正係数FAFS,FAFLは、それぞれ酸素センサ及
びリーンミクスチャセンサの検出結果に基づき算出され
るものであり、空燃比学習値KGSi,KGLiはそれ
ぞれ同フィードバック補正係数FAFS,FAFLに基
づき算出される。すなわち、空燃比学習値KGSi,K
GLiは、それぞれ酸素センサ及びリーンミクスチャセ
ンサの検出結果に基づき、空燃比フィードバック補正係
数FAFS,FAFLの算出結果を介して算出される。
したがって、酸素センサによる空燃比学習値KGSiの
算出精度に比べて、リーンミクスチャセンサによる空燃
比学習値KGLiの算出精度は劣ったものとなる。
【0009】この場合、特に希薄空燃比制御において、
酸素センサよりも検出精度の劣るリーンミクスチャセン
サによる空燃比学習値KGLiが燃料噴射量の算出にそ
のまま利用される上述の制御の場合には、その算出され
る燃料噴射量も不適切なものとなる。このような場合、
例えば燃料噴射量が過剰に算出されて燃料噴射が実行さ
れるときには、燃料消費率が悪化することがあり、一
方、同燃料噴射量が過小に算出されて燃料噴射が実行さ
れるときには、ノッキングやプレイグニションが発生し
たり、エンジンから排出される排気ガスの温度が上昇し
たり、あるいは十分なエンジン出力が得られなくなるこ
とがある。
【0010】また、リーンミクスチャセンサによる空燃
比学習値KGLiを参照して点火時期が算出される場合
には、同様にその算出される点火時期も不適切なものと
なる。例えば、点火時期が過進角に算出されて点火か実
行されるときには、ノッキングやプレイグニションが発
生したり、その燃料消費率に対して適切なエンジン出力
が得られなくなることがあり、一方、同点火時期が過遅
角に算出されて点火が実行される場合には、エンジンか
ら排出される排気ガスの温度が上昇したり、その燃料消
費率に対して適切なエンジン出力が得られなくなること
がある。
【0011】本発明は、こうした実情に鑑みてなされた
ものであって、その目的は、酸素濃淡電池型酸素センサ
及び限界電流型酸素センサの検出結果に基づき、より好
適に内燃機関の運転状態を制御することのできる内燃機
関の制御装置を提供することにある。
【0012】
【課題を解決するための手段】上記目的を達成させるた
め、請求項1記載の発明は、内燃機関の排気通路に設け
られた酸素濃淡電池型の第1の酸素センサ及び限界電流
型の第2の酸素センサの各酸素濃度信号に基づいて、そ
れぞれ理論空燃比及び同理論空燃比よりも希薄側での機
関制御を行う内燃機関の制御装置において、前記第1の
酸素センサの酸素濃度信号に基づいて空燃比を決定する
パラメータのずれを学習する第1の学習手段と、前記第
2の酸素センサの酸素濃度信号に基づいて空燃比を決定
するパラメータのずれを学習する第2の学習手段と、前
記理論空燃比及び同理論空燃比よりも希薄側での機関制
御に際して、前記第1の学習手段による学習が終了して
いることを条件に同第1の学習手段による学習値を優先
的に選択し、該選択した学習値に基づき前記空燃比を決
定するパラメータを補正する補正手段とを備えることを
その要旨とするものである。
【0013】酸素濃淡電池型の第1の酸素センサの検出
精度は限界電流型の第2の酸素センサの検出精度よりも
優れているため、上記第1の学習手段による学習値の算
出精度も上記第2の学習手段による学習値の算出精度よ
りも優れている。同構成によれば、上記理論空燃比及び
同理論空燃比よりも希薄側での機関制御に際して、上記
第1の学習手段による学習が終了していることを条件に
同第1の学習手段による学習値を優先的に選択し、同選
択した学習値に基づき上記空燃比を決定するパラメータ
を補正する。したがって、同空燃比を決定するパラメー
タの補正を好適なものとすることができる。また、特に
理論空燃比よりも希薄側で精度の良い機関制御を実施す
ることができる。
【0014】請求項2に記載の発明は、請求項1記載の
内燃機関の制御装置において、前記補正手段は、前記選
択した学習値に基づき、前記機関に噴射供給する燃料量
を補正するものであることをその要旨とするものであ
る。
【0015】同構成によれば、上記理論空燃比及び同理
論空燃比よりも希薄側での機関制御に際して、上記第1
の学習手段による学習が終了していることを条件に同第
1の学習手段による学習値を優先的に選択し、同選択し
た学習値に基づき上記機関に噴射供給する燃料量を補正
する。したがって、同機関に噴射供給する燃料量を好適
に補正することができる。
【0016】なお、このように補正された燃料量に基づ
き上記機関に燃料噴射が実行される場合には、例えば燃
料が過剰に噴射供給されて燃料消費率が悪化したり、逆
に過小に噴射供給されてノッキングやプレイグニション
が発生したり、同機関から排出される排気ガスの温度が
上昇したり、あるいは十分な機関出力が得られなかった
りすることを抑制することができる。
【0017】請求項3に記載の発明は、請求項1記載の
内燃機関の制御装置において、前記補正手段は、前記選
択した学習値に基づき、前記機関に吸入される空気量を
補正するものであることをその要旨とするものである。
【0018】同構成によれば、上記理論空燃比及び同理
論空燃比よりも希薄側での機関制御に際して、上記第1
の学習手段による学習が終了していることを条件に同第
1の学習手段による学習値を優先的に選択し、同選択し
た学習値に基づき上記機関に吸入される空気量を補正す
る。したがって、同機関に吸入される空気量を好適に補
正することができる。
【0019】なお、このように補正された吸入空気量に
基づき、例えば点火時期を算出する場合には、同点火時
期を好適に算出することができる。このため、例えば点
火が過進角で実行されてノッキングやプレイグニション
が発生したり、その燃料消費率に対して適切な機関出力
が得られなかったり、逆に点火が過遅角で実行されて上
記機関から排出される排気ガスの温度が上昇したり、そ
の燃料消費率に対して適切な機関出力が得られなかった
りすることを抑制することができる。
【0020】請求項4に記載の発明は、請求項1〜3の
いずれかに記載の内燃機関の制御装置において、前記第
1の学習手段による学習値と前記第2の学習手段による
学習値との比に基づいて前記第2の酸素センサの酸素濃
度信号を補正する酸素濃度信号補正手段を更に備えるこ
とをその要旨とするものである。
【0021】同構成によれば、上記第2の酸素センサの
酸素濃度信号は上記第1の学習手段による学習値と上記
第2の学習手段による学習値との比に基づいて予め補正
されるため、同第2の酸素センサの酸素濃度信号のずれ
の傾向を予め吸収することができる。特に、この補正は
理論空燃比よりも希薄側での機関制御時や過渡条件での
機関制御時においても実行することができる。
【0022】また、上記第2の学習手段は上記補正され
た第2の酸素センサの酸素濃度信号に基づいて学習する
ため、同第2の学習手段による学習値を上記第1の学習
手段による学習値並みの算出精度とすることができる。
【0023】さらに、このように算出された第2の学習
手段による学習値が上記空燃比を決定するパラメータを
補正する学習値として選択される場合には、同パラメー
タを好適に補正することができる。
【0024】上記空燃比を決定するパラメータとして、
上記機関に噴射供給する燃料量を補正する場合には、同
燃料量を好適に補正することができる。そしてこのよう
に補正された燃料量に基づき、燃料噴射が実行される場
合には、例えば燃料が過剰に噴射供給されて燃料消費率
が悪化したり、逆に過小に噴射供給されてノッキングや
プレイグニションが発生したり、同機関から排出される
排気ガスの温度が上昇したり、あるいは十分な機関出力
が得られなっかたりすることを抑制することができる。
【0025】また、上記空燃比を決定するパラメータと
して、上記機関に吸入される空気量を補正する場合に
は、同空気量を好適に補正することができる。そしてこ
のように補正された空気量により、例えば点火時期を算
出する場合には、同点火時期を好適に算出することがで
きる。このため、例えば点火が過進角で実行されてノッ
キングやプレイグニションが発生したり、その燃料消費
率に対して適切な機関出力が得られなかったり、逆に点
火が過遅角で実行されて上記機関から排出される排気ガ
スの温度が上昇したり、その燃料消費率に対して適切な
機関出力が得られなかったりすることを抑制することが
できる。また、特に理論空燃比から同理論空燃比よりも
希薄側への移行時、又はその逆の移行時においては、上
記第1の学習手段による学習値と上記第2の学習手段に
よる学習値とのずれ(吸入空気量のずれ)が低減される
ため、同移行時の上記機関の制御性能が向上することに
より、排気ガス中のHC,CO,NOxを低減すること
ができる。また、上記機関が車両に搭載される場合に
は、同車両のドライバビリティを向上することができ
る。
【0026】請求項5に記載の発明は、請求項4記載の
内燃機関の制御装置において、前記第1及び第2の学習
手段はそれぞれ、前記機関に吸入される空気量に応じて
区分した複数の機関運転領域において前記空燃比を決定
するパラメータのずれを学習するものであり、前記酸素
濃度信号補正手段は、前記複数の機関運転領域のいずれ
か一領域にて求めた前記学習値の比に基づき同複数の機
関運転領域の全ての領域に亘って前記第2の酸素センサ
の酸素濃度信号を補正することをその要旨とするもので
ある。
【0027】同構成によれば、上記酸素濃度信号補正手
段は、上記複数の機関運転領域のいずれか一領域にて求
めた上記学習値の比に基づき同複数の機関運転領域の全
ての領域に亘って上記第2の酸素センサの酸素濃度信号
を補正するため、その演算負荷を軽減することができ
る。
【0028】また、上記複数の機関運転領域のいずれか
一領域にて求めた上記学習値の比に基づき、未だ上記学
習値の比が求められていない領域における上記第2の酸
素センサの酸素濃度信号を補正するため、同領域におけ
る上記第2の酸素センサの酸素濃度信号を予め正確に補
正することができる。
【0029】さらに、上記第2の学習手段は上記複数の
機関運転領域ごとに、上記補正された第2の酸素センサ
の酸素濃度信号に基づいて学習するため、同第2の学習
手段による学習値を予め正確に算出することができる。
【0030】請求項6に記載の発明は、請求項4記載の
内燃機関の制御装置において、前記第1及び第2の学習
手段はそれぞれ、前記機関に吸入される空気量に応じて
区分した複数の機関運転領域において前記空燃比を決定
するパラメータのずれを学習するものであり、前記酸素
濃度信号補正手段は、前記複数の機関運転領域のうち前
記第2の酸素センサの動作不安定領域ではそれら領域の
別に前記学習値の比に基づく同センサの酸素濃度信号の
補正を行い、その他の領域ではそれら領域のいずれか一
領域にて求めた前記学習値の比に基づきそれら領域の全
ての領域に亘って同第2の酸素センサの酸素濃度信号を
補正することをその要旨とするものである。
【0031】同構成によれば、上記酸素濃度信号補正手
段は上記第2の酸素センサの動作不安定領域以外の領域
のいずれか一領域にて求めた上記学習値の比に基づき、
未だ同学習値の比が求められていないこれら領域におけ
る上記第2の酸素センサの酸素濃度信号を補正するた
め、同領域における上記第2の酸素センサの酸素濃度信
号を予め正確に補正することができる。
【0032】また、このような補正は上記第2の酸素セ
ンサの動作不安定領域以外の領域で実施されるため、同
領域内においてはより正確に同第2の酸素濃度信号を補
正することができる。
【0033】さらに、上記第2の酸素センサの動作不安
定領域以外の領域内においては、上記第2の学習手段に
よる学習値を予め、より正確に算出することができる。
請求項7に記載の発明は、請求項1〜6のいずれかに記
載の内燃機関の制御装置において、前記第2の酸素セン
サの異常の有無を検出する異常検出手段を更に備えるこ
とをその要旨とするものである。
【0034】請求項8に記載の発明は、請求項7記載の
内燃機関の制御装置において、前記異常検出手段は、前
記第1の学習手段による学習値と前記第2の学習手段に
よる学習値とのずれの度合いに基づいて前記第2の酸素
センサの異常の有無を検出するものであることをその要
旨とするものである。
【0035】請求項9に記載の発明は、請求項7記載の
内燃機関の制御装置において、内燃機関は同機関のノッ
キングの有無を検出するノックセンサを備え、前記異常
検出手段は、前記ノックセンサから出力されるノック信
号の挙動に基づいて前記第2の酸素センサの異常の有無
を検出するものであることをその要旨とするものであ
る。
【0036】請求項7〜9に記載の発明の構成によれ
ば、上記第2の酸素センサの異常の有無を検出すること
により、同第2の酸素センサの異常時の上記第2の酸素
センサの酸素濃度信号の誤検出、及び上記第2の学習手
段による学習値の誤算出を好適に回避することができ
る。
【0037】特に請求項8に記載の発明の構成によれ
ば、上記第1の学習手段による学習値と上記第2の学習
手段による学習値とのずれの度合いに基づき、上記第2
の酸素センサの異常の有無を検出しているため、上記機
関に噴射供給する燃料量のずれや同機関に吸入される空
気量のずれを吸収した状態で、同第2の酸素センサの異
常の有無を検出することができる。
【0038】
【発明の実施の形態】(第1の実施の形態)以下、本発
明に係る内燃機関の制御装置を具体化した第1の実施の
形態を図面に基づいて詳細に説明する。
【0039】この第1の実施の形態は、酸素濃淡電池型
酸素センサ及び限界電流型酸素センサの各酸素濃度信号
に基づいて、それぞれ空燃比を決定するパラメータのず
れを学習する。そして、検出精度の優れた酸素濃淡電池
型酸素センサによる上記空燃比を決定するパラメータの
ずれの学習が終了している場合には、同学習されたパラ
メータのずれに基づき、同パラメータを補正して、特に
理論空燃比より希薄側で精度の良い機関制御を実施する
ものである。
【0040】はじめに、図1を参照して本実施の形態が
適用されるエンジンシステムについて、その構成を説明
する。図1に示されるように、このエンジンシステム
は、内燃機関としてのガソリンエンジン1を中心として
構成されている。エンジン1はシリンダブロック1aを
備え、シリンダブロック1aには複数(図1には1つの
み図示)のシリンダ2が設けられている。各シリンダ2
にそれぞれ往復移動可能に設けられたピストン3は、エ
ンジンの出力軸であるクランクシャフト10にコンロッ
ド3aを介して連結され、そのコンロッド3aによりピ
ストン3の往復移動がクランクシャフト10の回転へと
変換されるようになっている。
【0041】シリンダブロック1aの上端にはシリンダ
ヘッド1bが取り付けられている。各シリンダ2におい
てピストン3の上端とシリンダヘッド1bとの間には燃
焼室4が形成される。
【0042】各燃焼室4に対応して設けられた点火プラ
グ11は同燃焼室4に導入された混合気に点火するもの
である。同様に各燃焼室4に対応して設けられた吸気ポ
ート5a及び排気ポート6aは、それぞれ吸気通路5及
び排気通路6の一部を構成する。各燃焼室4に対応して
設けられた吸気バルブ7及び排気バルブ8は各ポート5
a,6aをそれぞれ開閉する。各バルブ7,8はそれぞ
れ吸気側カムシャフト31又は排気側カムシャフト32
の回転に伴い、同シャフト31,32に設けられたカム
(図示略)が回転することによって開閉動作する。各カ
ムシャフト31,32の先端に各々設けられたタイミン
グプーリ33,34はタイミングベルト35を介してク
ランクシャフト10に連結されている(クランクシャフ
ト10との連結態様については図示略)。
【0043】すなわち、エンジン1の運転時に、クラン
クシャフト10の回転力はタイミングベルト35及び各
タイミングプーリ33,34を介して各カムシャフト3
1,32に伝達される。各カムシャフト31,32が回
転することにより、各バルブ7,8が作動する。各バル
ブ7,8はクランクシャフト10の回転に同期して、す
なわち各ピストン3の往復移動に対応して所定のタイミ
ングで開閉駆動される。
【0044】上記点火プラグ11にはイグナイタ13か
ら出力される高電圧が印加される。点火プラグ11の点
火タイミングは、イグナイタ13からの高電圧出力タイ
ミングにより決定される。そして、エンジン1は点火プ
ラグ11により、吸気通路5からの吸入空気とインジェ
クタ9から噴射される燃料とからなる混合気を燃焼室4
内で爆発させて駆動力を得た後、その排気ガスを排気バ
ルブ8を介して排気通路6へ排出する。
【0045】なお、シリンダブロック1aには、エンジ
ン1の冷却水の水温(冷却水温)THWを検出する水温
センサ15が取り付けられている。また、前記吸気通路
5の一部には、吸気の脈動を抑えるためのサージタンク
16が設けられ、そのサージタンク16には吸気圧PM
を絶対圧として検出するダイヤフラム式の吸気圧センサ
17が取付けられている。サージタンク16の上流側に
は、アクセルペダル21の操作に基づいて開閉されるス
ロットルバルブ18が設けられており、このスロットル
バルブ18の開閉により吸気通路5への吸入空気量が調
節される。スロットルバルブ18の近傍には、そのスロ
ットル開度TAを検出するスロットルセンサ19と、そ
のスロットルバルブ18が全閉状態のとき「オン」とな
るアイドルスイッチ20が取り付けられている。
【0046】また、クランクシャフト10に近接してク
ランク角センサ27が設けられており、同センサ27に
より、エンジン1(クランクシャフト10)の回転数N
E及び特定気筒におけるクランクシャフト10の回転角
度(クランク角)等を検出している。
【0047】さらに、エンジン1の搭載される車両(図
示せず)の車室内には大気圧(絶対圧)PAを検出する
ための半導体式の大気圧センサ29が設けられている。
さらにまた、排気通路6には酸素センサ(酸素濃淡電池
型酸素センサ)25が設けられている。この酸素センサ
25は排気通路6内に排出される排気ガスの酸素濃度に
応じた酸素濃度信号OXを出力する。なお、同酸素濃度
信号OXは、理論空燃比近傍で急変する特性を有してお
り、酸素センサ25はこの特性を利用して、例えば±1
%程度の誤差で空燃比(理論空燃比)を検出する。
【0048】これに加えて同排気通路6にはリーンミク
スチャセンサ(限界電流型酸素センサ)26が設けられ
ている。このリーンミクスチャセンサ26も同排気通路
6内に排出される排気ガスの酸素濃度に応じた酸素濃度
信号VLeanを出力する。ただし、同酸素濃度信号V
Leanは、例えば当該センサ26の電極の両端に所定
の一定電圧が印加されるとき、排気ガス中の酸素濃度
(空燃比)に比例する特性を有しており、リーンミクス
チャセンサ26はこの特性を利用して理論空燃比から同
理論空燃比よりも希薄側の空燃比を検出する。このよう
なリーンミクスチャセンサ26が、上記印加される電圧
等のばらつきにより、上記酸素センサ25よりも劣る例
えば±5%程度の誤差を含んで空燃比の検出を行うもの
であることは前述のとおりである。
【0049】さらにエンジン1には、同エンジン1の機
械的振動からノッキングの発生を検出するためのノック
センサ28が取り付けられている。このノックセンサ2
8は、ノッキングで発生するレベルと同等の「6〜8k
Hz」の振動数が共振振動数となる圧電素子を内部に備
えており、同ノックセンサ28によりノッキングで発生
する振動の強さに応じたノック信号kcsが出力され
る。
【0050】次に、こうしたエンジンシステムを統括制
御する電子制御装置(以下、「ECU」という)61の
構成について図2のブロック図に従って説明する。図2
に示すように、このECU61は、デジタルコンピュー
タからなっており、バス62を介して相互に接続された
RAM(ランダムアクセスメモリ)63、バックアップ
RAM68、ROM(リードオンリメモリ)64、マイ
クロプロセッサからなるCPU(中央処理装置)65、
入力ポート66及び出力ポート67を有している。
【0051】ここで、CPU65はROM64に予め記
憶された制御プログラム及び初期データ等に従って各種
演算処理を実行する。また、RAM63はCPU65に
よる演算結果を一時的に記憶する。バックアップRAM
68は、バッテリバックアップされた不揮発性のRAM
であり、エンジン1の停止後においても所要の演算結果
等を記憶保持する。
【0052】一方、上述した水温センサ15、吸気圧セ
ンサ17、スロットルセンサ19、アイドルスイッチ2
0、酸素センサ25、リーンミクスチャセンサ26、ク
ランク角センサ27、ノックセンサ28及び大気圧セン
サ29等からの検出信号は入力ポート66に入力され
る。これらセンサ等15,17,19,20,25,2
6,27,28,29により、エンジン1の運転状態が
検出されている。
【0053】また、出力ポート67は、各々対応する駆
動回路等を介して各インジェクタ9及び各イグナイタ1
3等に接続されている。そして、ECU61(CPU6
5)は、上記各センサ等15,17,19,20,2
5,26,27,28,29からの検出信号に基づき、
ROM64内に格納された制御プログラム及び初期デー
タ等に従い、これらインジェクタ9及びイグナイタ13
等を好適に制御する。
【0054】次に、こうしたECU61により実行され
る処理のうちのメインルーチンについてその概要を図3
に基づき説明する。なお、同メインルーチンは、主に燃
料噴射量及び点火時期を算出するルーチンであり、上記
クランク角センサ27により検出されるクランク角に基
づく所定のクランク角ごとの角度割り込みで実行され
る。
【0055】処理がこのルーチンに移行すると、まずス
テップ101においてCPU65は、エンジン回転数N
E、吸気圧PM、空燃比フィードバック補正係数FAF
S,FAFL及び空燃比学習値KGiをRAM63若し
くはバックアップRAM68から読み込み、ステップ1
02に移行する。なお、空燃比フィードバック補正係数
FAFS,FAFLは後述する「FAFS算出ルーチ
ン」及び「FAFL算出ルーチン」によりそれぞれ算出
される値であり、これら各空燃比フィードバック補正係
数FAFS,FAFLに基づく燃料噴射量の補正によ
り、空燃比を理論空燃比又は理論空燃比よりも希薄側の
目標空燃比に近づけるフィードバック制御がそれぞれ実
行される。また、空燃比学習値KGiは後述する「空燃
比学習値算出ルーチン」により、本実施の形態では8つ
(i=0〜7)に区分される学習領域ごとにそれぞれ算
出される値であり、初期値として「1.0」が設定され
ている。同学習値KGiに基づき、後述するように空燃
比を決定するパラメータのずれ、すなわちエンジン1に
供給される燃料量のずれや同エンジン1に吸入される空
気量のずれが補正される。なお本実施の形態において
は、前記酸素センサ25及び前記リーンミクスチャセン
サ26の各酸素濃度信号OX,VLeanに基づいて、
それぞれ上記空燃比を決定するパラメータのずれを学習
し、検出精度の優れた酸素センサ25による上記学習が
終了している場合には、同センサ25により学習された
パラメータのずれに基づき、同パラメータを補正するよ
うにしている。したがって、空燃比学習値KGi(i=
0〜7)は理論空燃比制御及び希薄空燃比制御ともに上
記酸素センサ25及びリーンミクスチャセンサ26によ
る上記パラメータのずれの学習状況に応じて選択された
共通の値となっている。ちなみに、本実施の形態の上記
学習領域は、前記アイドルスイッチ20が「オン」であ
る状態を示すアイドル状態判定フラグLLが「オン」で
あるとき(i=0)、前記吸気圧PMが200mmHg
abs未満の値であるとき(i=1)、同吸気圧PMが
200mmHgabs以上、300mmHgabs未満
の値であるとき(i=2)、同吸気圧PMが300mm
Hgabs以上、400mmHgabs未満の値である
とき(i=3)、同吸気圧PMが400mmHgabs
以上、500mmHgabs未満の値であるとき(i=
4)、同吸気圧PMが500mmHgabs以上、60
0mmHgabs未満の値であるとき(i=5)、同吸
気圧PMが600mmHgabs以上、700mmHg
abs未満の値であるとき(i=6)、及び同吸気圧P
Mが700mmHgabs以上の値であるとき(i=
7)の8つに区分されている。
【0056】ステップ102においてCPU65は、上
記エンジン回転数NE及び吸気圧PMに基づく図4に示
すマップから、基本燃料噴射量TPを算出し、ステップ
103に移行する。
【0057】ステップ103においてCPU65は、現
在のエンジン1の運転状態が理論空燃比制御中か否かを
判断する。ちなみに、暖機過程、アイドル時及び発進時
・加速時等には希薄空燃比制御は停止され、理論空燃比
制御が実行されている。ここで、理論空燃比制御中であ
ると判断されると、CPU65はステップ104に移行
し、理論空燃比制御時の燃料噴射量TAUSを、 TAUS=TP・FAFS・KGi・K …(1) に基づき算出し、ステップ106に移行する。なお前述
したように、空燃比学習値KGiは空燃比を決定するパ
ラメータのずれ、すなわちエンジン1に供給される燃料
量のずれや同エンジン1に吸入される空気量のずれを補
正するものである。本実施の形態の空燃比学習値KGi
(i=0〜7)が理論空燃比制御及び希薄空燃比制御と
もに、前記酸素センサ25及び前記リーンミクスチャセ
ンサ26による上記パラメータのずれの学習状況に応じ
て選択された共通の値となっていることは前述のとおり
である。補正係数Kは過渡時等の要因分を補正するもの
である。
【0058】一方、ステップ103において理論空燃比
制御中ではない(希薄空燃比制御中である)と判断され
ると、CPU65はステップ105に移行し、希薄空燃
比制御時の燃料噴射量TAULを、 TAUL=TP・FAFL・KGi・K …(2) に基づき算出し、ステップ106に移行する。
【0059】ステップ106においてCPU65は、後
述する「点火時期算出ルーチン」に基づき点火時期SA
を算出し、その後は同メインルーチンの図示を割愛した
以降のステップに移行する。
【0060】なお、上記算出された燃料噴射量TAUS
又はTAUL、及び点火時期SAに基づき、前記インジ
ェクタ9及び前記イグナイタ13が駆動制御されて燃料
噴射及び燃焼室4内の混合気への点火が実行される。
【0061】次に、ECU61により実行される処理の
うちの「パラメータ算出ルーチン」についてその概要を
図5に基づき説明する。なお、同「パラメータ算出ルー
チン」は上記空燃比フィードバック補正係数FAFS,
FAFL及び上記空燃比学習値KGiを算出するもので
あり、所定時間ごとの定時割り込みで実行される。
【0062】処理がこのルーチンに移行すると、まずス
テップ201においてCPU65は、エンジン回転数N
E、吸気圧PM、冷却水温THW、酸素濃度信号OX,
VLean、酸素センサ空燃比学習値KGSi(i=0
〜7)、リーンミクスチャセンサ空燃比学習値KGLi
(i=0〜7)、酸素センサ学習終了判定フラグXKG
Si(i=0〜7)、リーンミクスチャセンサ学習終了
判定フラグXKGLi(i=0〜7)、酸素センサ異常
検出フラグXFOX及びリーンミクスチャセンサ異常検
出フラグXFLeanを読み込み、ステップ202に移
行する。なお、上記酸素センサ空燃比学習値KGSi
(i=0〜7)は、後述の「酸素センサ空燃比学習値算
出ルーチン」により、前述の8つに区分される学習領域
ごとに算出される値である。また、リーンミクスチャセ
ンサ空燃比学習値KGLi(i=0〜7)は、後述の
「リーンミクスチャセンサ空燃比学習値算出ルーチン」
により、上記8つに区分される学習領域ごとに算出され
る値である。さらに、酸素センサ学習終了判定フラグX
KGSi(i=0〜7)は、後述の「酸素センサ学習終
了判定ルーチン」により、上記8つに区分される学習領
域ごと、学習終了が判定されるときに「1」に設定され
るものである。さらにまた、リーンミクスチャセンサ学
習終了判定フラグXKGLi(i=0〜7)は、後述の
「リーンミクスチャセンサ学習終了判定ルーチン」によ
り、上記8つに区分される学習領域ごと、学習終了が判
定されるときに「1」に設定されるものである。また、
酸素センサ異常検出フラグXFOXは、酸素センサ25
の異常が検出されるときに「1」に設定されるものであ
る。この酸素センサ25の異常は、例えばエンジン1の
始動時や同エンジン1に供給する燃料のカット時など、
そのときのエンジン1の運転状態から酸素センサ25に
よって出力されることが期待される酸素濃度信号と実際
の酸素濃度信号OXとが、明らかに異なる場合に検出さ
れる。さらに、リーンミクスチャセンサ異常検出フラグ
XFLeanは、後述の「リーンミクスチャセンサ異常
検出ルーチン」により、リーンミクスチャセンサ26の
異常が検出されるときに「1」に設定されるものであ
る。
【0063】ステップ202においてCPU65は、現
在のエンジン1の運転状態が理論空燃比制御中か否かを
判断する。なお、暖機過程、アイドル時及び発進時・加
速時等には希薄空燃比制御が停止され、理論空燃比制御
が実行されていることは前述のとおりである。ここで、
理論空燃比制御中であると判断されると、CPU65は
ステップ203に移行する。
【0064】ステップ203においてCPU65は、現
在のエンジン1の運転状態が空燃比フィードバック制御
中か否かを判断する。なお、空燃比フィードバック制御
は、 (イ)各種燃料増量補正が行われていない (ロ)燃料カット中でない (ハ)高負荷運転中ではない (ニ)酸素センサ25が活性化されている 等の条件が満たされるときに実行される。ここで、空燃
比フィードバック制御中ではないと判断されると、CP
U65はステップ208に移行し、上記空燃比フィード
バック補正係数FAFS,FAFLを共に「1.0」に
設定し、空燃比学習値KGiを算出することなく、その
後の処理を一旦終了する。
【0065】一方、ステップ203において空燃比フィ
ードバック制御中であると判断されるとCPU65は、
ステップ204に移行し、後述する「FAFS算出ルー
チン」に基づき、理論空燃比制御時の空燃比フィードバ
ック補正係数FAFSを算出し、ステップ207に移行
する。
【0066】一方、上記ステップ202において理論空
燃比制御中ではない(希薄空燃比制御中である)と判断
されると、CPU65はステップ205に移行する。ス
テップ205においてCPU65は、上記同様に現在の
エンジン1の運転状態が空燃比フィードバック制御中か
否かを判断する。ここで、空燃比フィードバック制御中
ではないと判断されると、CPU65はステップ208
に移行し、上記空燃比フィードバック補正係数FAF
S,FAFLを共に「1.0」に設定し、空燃比学習値
KGiを算出することなく、その後の処理を一旦終了す
る。
【0067】一方、ステップ205において空燃比フィ
ードバック制御中であると判断されるとCPU65は、
ステップ206に移行し、後述する「FAFL算出ルー
チン」に基づき、希薄空燃比制御時の空燃比フィードバ
ック補正係数FAFLを算出し、ステップ207に移行
する。
【0068】ステップ207においてCPU65は、後
述する「空燃比学習値算出ルーチン」に基づき空燃比学
習値KGi(i=0〜7)を算出し、その後の処理を一
旦終了する。
【0069】なお、このように算出された空燃比フィー
ドバック補正係数FAFS,FAFL及び空燃比学習値
KGiはRAM63若しくはバックアップRAM68に
記憶され、前記メインルーチンのステップ101におい
て読み込まれることにより、燃料噴射量TAUS又はT
AUL、及び点火時期SAの算出に供されることは前述
のとおりである。
【0070】次に、上記空燃比フィードバック補正係数
FAFSを算出するための「FAFS算出ルーチン」に
ついて、図6に基づき説明する。処理がこのルーチンに
移行すると、まずステップ211においてCPU65
は、上記酸素濃度信号OXの理論空燃比に対応したしき
い値に基づく2値化信号(以下、「AD値」という)に
基づき、現在のエンジン1の空燃比が理論空燃比よりも
濃厚側の空燃比、すなわち濃厚空燃比か否かを判断す
る。ここで、濃厚空燃比ではない(希薄空燃比である)
と判断されると、CPU65はステップ215に移行す
る。
【0071】ステップ215においてCPU65は、上
記酸素濃度信号OXのAD値に基づき、現在のエンジン
1の空燃比が濃厚空燃比から希薄空燃比に移行した状態
であるか否かを判断する。ここで、濃厚空燃比から希薄
空燃比に移行した状態ではないと判断されると、CPU
65は希薄空燃比が継続しているものと判定してステッ
プ217に移行する。
【0072】ステップ217においてCPU65は、前
回の空燃比フィードバック補正係数FAFSに積分増減
値βを加えて今回の空燃比フィードバック補正係数FA
FSを算出する(積分補正)。
【0073】また、ステップ215において、濃厚空燃
比から希薄空燃比に移行した状態であると判断される
と、CPU65は前回の空燃比フィードバック補正係数
FAFSに所定スキップ値α(α>β)を加えて今回の
空燃比フィードバック補正係数FAFSを算出する(ス
キップ補正)。
【0074】一方、上記ステップ211において、濃厚
空燃比であると判断されると、CPU65はステップ2
12に移行する。ステップ212においてCPU65
は、上記酸素濃度信号OXのAD値に基づき、現在のエ
ンジン1の空燃比が希薄空燃比から濃厚空燃比に移行し
た状態であるか否かを判断する。ここで、希薄空燃比か
ら濃厚空燃比に移行した状態ではないと判断されると、
CPU65は濃厚空燃比が継続しているものと判定して
ステップ214に移行する。
【0075】ステップ214においてCPU65は、前
回の空燃比フィードバック補正係数FAFSから積分増
減値βを減じて今回の空燃比フィードバック補正係数F
AFSを算出する(積分補正)。
【0076】また、ステップ212において、希薄空燃
比から濃厚空燃比に移行した状態であると判断される
と、CPU65は前回の空燃比フィードバック補正係数
FAFSから所定スキップ値α(α>β)を減じて今回
の空燃比フィードバック補正係数FAFSを算出する
(スキップ補正)。
【0077】なお、上記ステップ211〜217によ
り、例えば図7に示すように酸素濃度信号OX(空燃
比)に応じた空燃比フィードバック補正係数FAFSの
算出値の更新がなされる。ちなみに、同図7において、
図7(a)は酸素濃度信号OXの推移を、図7(b)は
酸素濃度信号OXのAD値の推移を、図7(c)は空燃
比フィードバック補正係数FAFSの推移をそれぞれ示
している。図7(a)に示すように、酸素濃度信号OX
が急変し、酸素濃度信号OXのAD値が反転してエンジ
ン1の空燃比が希薄空燃比から濃厚空燃比、あるいは濃
厚空燃比から希薄空燃比に移行する(図7(b))と、
図7(c)に示すように、空燃比フィードバック補正係
数FAFSは上記所定スキップ値αだけスキップされ
る。また、酸素濃度信号OXのAD値が希薄空燃比を示
しているとき(図7(b))には、空燃比フィードバッ
ク補正係数FAFSは上記積分増減値βずつ漸増され
(図7(c))、一方、同AD値が濃厚空燃比を示して
いるとき(図7(b))には、同フィードバック補正係
数FAFSは上記積分増減値βずつ漸減される(図7
(c))。
【0078】なお、以上のように算出された空燃比フィ
ードバック補正係数FAFSはRAM63若しくはバッ
クアップRAM68に記憶され、前記メインルーチンの
ステップ101においてその都度、読み込まれる。
【0079】次に、前記空燃比フィードバック補正係数
FAFLを算出するための「FAFL算出ルーチン」に
ついて、図8に基づき説明する。処理がこのルーチンに
移行すると、まずステップ221においてCPU65
は、前記ステップ201(図5)において読み込んだエ
ンジン回転数NE、吸気圧PM及び冷却水温THWに基
づく所定のマップにより、そのときの希薄空燃比制御に
おける目標空燃比に相当する目標酸素濃度値VTRGを
算出し、ステップ222に移行する。なお、同目標酸素
濃度値VTRGはエンジン回転数NE、吸気圧PM又は
冷却水温THWが高いほど、小さな値に算出されて濃厚
側の空燃比に設定される傾向にあり、逆にエンジン回転
数NE、吸気圧PM又は冷却水温THWが低いほど、大
きな値に算出されて希薄側の空燃比に設定される傾向に
ある。
【0080】ステップ222においてCPU65は、前
記酸素濃度信号VLeanが上記目標酸素濃度値VTR
Gよりも大きい値であるか否かを判断する。ここで、上
記酸素濃度信号VLeanが上記目標酸素濃度値VTR
G以下の値であると判断されると、現在の空燃比が目標
空燃比よりも濃厚側にあるものと判定してCPU65
は、ステップ224に移行する。
【0081】ステップ224においてCPU65は、前
回の空燃比フィードバック補正係数FAFLから増減値
γを減じて今回の空燃比フィードバック補正係数FAF
Lを算出する。
【0082】一方、ステップ222において、上記酸素
濃度信号VLeanが上記目標酸素濃度値VTRGより
も大きい値であると判断されると、現在の空燃比が目標
空燃比よりも希薄側にあるものと判定してCPU65
は、ステップ223に移行する。
【0083】ステップ223においてCPU65は、前
回の空燃比フィードバック補正係数FAFLに増減値γ
を加えて今回の空燃比フィードバック補正係数FAFL
を算出する。
【0084】なお、上記ステップ222〜224によ
り、例えば図9に示すように酸素濃度信号VLean
(空燃比)に応じた空燃比フィードバック補正係数FA
FLの算出値の更新がなされる。ちなみに、同図におい
て図9(a)は酸素濃度信号VLeanの推移を、図9
(b)は空燃比フィードバック補正係数FAFLの推移
をそれぞれ示している。酸素濃度信号VLeanが上記
目標酸素濃度値VTRGよりも大きく、目標空燃比より
も希薄側の空燃比を示しているとき(図9(a))に
は、空燃比フィードバック補正係数FAFLは上記増減
値γずつ漸増され(図9(b))、一方、酸素濃度信号
VLeanが上記目標酸素濃度値VTRG以下であり、
目標空燃比よりも濃厚側の空燃比を示しているとき(図
9(a))には、空燃比フィードバック補正係数FAF
Lは上記増減値γずつ漸減される(図9(b))。
【0085】なお、以上のように算出された空燃比フィ
ードバック補正係数FAFLはRAM63若しくはバッ
クアップRAM68に記憶され、前記メインルーチンの
ステップ101においてその都度、読み込まれる。
【0086】次に、本実施の形態において、前記「パラ
メータ算出ルーチン」(図5)のステップ207の処理
として実行される空燃比学習値KGi(i=0〜7)を
算出するための「空燃比学習値算出ルーチン」につい
て、図10及び図11に基づき説明する。なお、この空
燃比学習値KGi(i=0〜7)の算出は、後述の「酸
素センサ空燃比学習値算出ルーチン」により空燃比フィ
ードバック補正係数FAFSに基づき算出される酸素セ
ンサ空燃比学習値KGSi(i=0〜7)を、同じく後
述の「リーンミクスチャセンサ空燃比学習値算出ルーチ
ン」により空燃比フィードバック補正係数FAFLに基
づき算出されるリーンミクスチャセンサ空燃比学習値K
GLi(i=0〜7)に優先して、同学習値KGi(i
=0〜7)として設定(選択)するものである。
【0087】図10に示すように、処理がこのルーチン
に移行すると、ステップ230においてCPU65は前
述のように8つに区分された各学習領域の空燃比学習値
KGi(i=0〜7)を算出する。このとき、ある学習
領域での空燃比学習値KGiは、図11に示す態様で算
出される。
【0088】すなわち、ステップ231においてCPU
65は、現在の学習領域の判定を行い、ステップ232
に移行する。ステップ232においてCPU65は、前
記酸素センサ異常検出フラグXFOX(図5)が「0」
であるか否かを判断する。ここで、酸素センサ異常検出
フラグXFOXが「0」であると判断されるとCPU6
5は、酸素センサ25が正常であると判定して、ステッ
プ233に移行する。
【0089】ステップ233に移行したCPU65は、
前記酸素センサ学習終了判定フラグXKGSi(図5)
が「1」であるか否かを判断する。ここで、酸素センサ
学習終了判定フラグXKGSiが「1」であると判断さ
れるとCPU65は、酸素センサ25による空燃比学習
値KGSiの算出が終了していると判定して、ステップ
234に移行し、空燃比学習値KGiを酸素センサ空燃
比学習値KGSiとする。
【0090】一方、上記ステップ232において酸素セ
ンサ異常検出フラグXFOXが「1」であると判断さ
れ、又は上記ステップ233において酸素センサ学習終
了判定フラグXKGSiが「0」であると判断されると
CPU65は、ステップ235に移行する。
【0091】ステップ235に移行したCPU65は、
前記リーンミクスチャセンサ異常検出フラグXFLea
nが「0」であるか否かを判断する。ここで、リーンミ
クスチャセンサ異常検出フラグXFLeanが「1」で
あると判断されるとCPU65は、リーンミクスチャセ
ンサ26が異常であると判定して、ステップ239に移
行し、空燃比学習値KGiを「1.0」に設定する。
【0092】一方、ステップ235においてリーンミク
スチャセンサ異常検出フラグXFLeanが「0」であ
ると判断されるとCPU65は、リーンミクスチャセン
サ26が正常であると判定して、ステップ236に移行
する。
【0093】ステップ236に移行したCPU65は、
前記リーンミクスチャセンサ学習終了判定フラグXKG
Liが「1」であるか否かを判断する。ここで、リーン
ミクスチャセンサ学習終了判定フラグXKGLiが
「1」であると判断されるとCPU65は、リーンミク
スチャセンサ26による空燃比学習値KGLiの算出が
終了していると判定して、ステップ237に移行し、空
燃比学習値KGiをリーンミクスチャセンサ空燃比学習
値KGLiとする。
【0094】一方、ステップ236においてリーンミク
スチャセンサ学習終了判定フラグXKGLiが「0」で
あると判断されるとCPU65は、リーンミクスチャセ
ンサ26による空燃比学習値KGLiの算出が終了して
いないと判定して、ステップ238に移行する。
【0095】ステップ238に移行したCPU65は、
上記酸素センサ異常検出フラグXFOXが「1」である
か否かを判断する。ここで、酸素センサ異常検出フラグ
XFOXが「1」であると判断されるとCPU65は、
上記ステップ239に移行し、空燃比学習値KGiを
「1.0」に設定する。
【0096】一方、ステップ238において酸素センサ
異常検出フラグXFOXが「0」であると判断されると
CPU65は、上記ステップ234に移行し、空燃比学
習値KGiを酸素センサ空燃比学習値KGSiとする。
なお、このときの酸素センサ空燃比学習値KGSiは、
前回のタイミングで算出された酸素センサ空燃比学習値
となる。
【0097】このように各学習領域の空燃比学習値KG
iを算出することにより、空燃比学習値KGi(i=0
〜7)が算出される。なお、以上のように算出された空
燃比学習値KGi(i=0〜7)はRAM63若しくは
バックアップRAM68に記憶され、前記メインルーチ
ンのステップ101において読み込まれる。特に、バッ
クアップRAM68に記憶された空燃比学習値KGi
(i=0〜7)は、エンジン1の停止後においても記憶
保持される。
【0098】次に、上記酸素センサ空燃比学習値KGS
i(i=0〜7)を算出するための「酸素センサ空燃比
学習値算出ルーチン」について、図12及び図13に基
づき説明する。なお、同ルーチンは所定時間ごとの定時
割り込みで実行される。
【0099】図12に示すように、処理がこのルーチン
に移行すると、まずステップ240においてCPU65
は、吸気圧PM及びアイドル状態判定フラグLLをRA
M63若しくはバックアップRAM68から読み込み、
ステップ241に移行する。
【0100】ステップ241においてCPU65は、空
燃比フィードバック補正係数FAFSの平均値FAFA
VSを算出し、ステップ242に移行する。なお同平均
値FAFAVSは、例えば上記空燃比フィードバック補
正係数FAFSの所定時間ごとの平均をとることにより
算出され、RAM63若しくはバックアップRAM68
に記憶される。
【0101】ステップ242においてCPU65は、吸
気圧PM及びアイドル状態判定フラグLLに対応する学
習領域の酸素センサ空燃比学習値KGSiを算出し、そ
の後の処理を一旦終了する。なお、ある学習領域におけ
る酸素センサ空燃比学習値KGSiは、図13に示す態
様で算出される。
【0102】すなわち、ステップ243においてCPU
65は、現在の学習領域の判定を行い、ステップ244
に移行する。ステップ244においてCPU65は、上
記平均値FAFAVSが「0.98」未満であるか否か
を判断する。ここで、同平均値FAFAVSが「0.9
8」未満であると判断されるとCPU65は、エンジン
1に供給される混合気の空燃比が長期的にみて理論空燃
比よりも濃厚側の空燃比に設定される傾向にあるものと
判定して、ステップ245に移行する。
【0103】ステップ245においてCPU65は、こ
の学習領域における前回の酸素センサ空燃比学習値KG
Siから、好適な空燃比学習制御を実現する値である、
例えば0.002を減じて酸素センサ空燃比学習値KG
Siを算出更新する。
【0104】また、ステップ244において、上記平均
値FAFAVSが「0.98」以上であると判断される
とCPU65は、ステップ246に移行する。ステップ
246においてCPU65は、上記平均値FAFAVS
が「1.02」よりも大きいか否かを判断する。ここ
で、同平均値FAFAVSが「1.02」よりも大きい
と判断されるとCPU65は、エンジン1に供給される
混合気の空燃比が長期的にみて理論空燃比よりも希薄側
の空燃比に設定される傾向にあるものと判定して、ステ
ップ247に移行する。
【0105】ステップ247においてCPU65は、こ
の学習領域における前回の酸素センサ空燃比学習値KG
Siに、好適な空燃比学習制御を実現する値である、例
えば0.002を加えて酸素センサ空燃比学習値KGS
iを算出更新する。
【0106】なお、ステップ246において、上記平均
値FAFAVSが「1.02」以下であると判断される
ときには、すなわち同平均値FAFAVSが「0.9
8」以上で且つ「1.02」以下であるときには、酸素
センサ空燃比学習値KGSiに対する上述の増減更新は
実行しない。
【0107】以上、ステップ244〜247により、あ
る学習領域における酸素センサ空燃比学習値KGSiが
算出更新される。なお、以上のように算出された酸素セ
ンサ空燃比学習値KGSiはRAM63若しくはバック
アップRAM68に記憶される。各学習領域における酸
素センサ空燃比学習値KGSi(i=0〜7)が前記
「パラメータ算出ルーチン」(図5)のステップ201
において読み込まれ、空燃比学習値KGi(i=0〜
7)の算出(図10及び図11)に供されることは前述
のとおりである。
【0108】次に、前記リーンミクスチャセンサ空燃比
学習値KGLi(i=0〜7)を算出するための「リー
ンミクスチャセンサ空燃比学習値算出ルーチン」につい
て、図14及び図15に基づき説明する。なお、同ルー
チンは所定時間ごとの定時割り込みで実行される。
【0109】図14に示すように、処理がこのルーチン
に移行すると、まずステップ250においてCPU65
は、吸気圧PM及びアイドル状態判定フラグLLをRA
M63若しくはバックアップRAM68から読み込み、
ステップ251に移行する。
【0110】ステップ251においてCPU65は、空
燃比フィードバック補正係数FAFLの平均値FAFA
VLを算出し、ステップ252に移行する。なお同平均
値FAFAVLは、例えば上記空燃比フィードバック補
正係数FAFLの所定時間ごとの平均をとることにより
算出され、RAM63若しくはバックアップRAM68
に記憶される。
【0111】ステップ252においてCPU65は、吸
気圧PM及びアイドル状態判定フラグLLに対応する学
習領域のリーンミクスチャセンサ空燃比学習値KGLi
を算出し、その後の処理を一旦終了する。なお、ある学
習領域におけるリーンミクスチャセンサ空燃比学習値K
GLiは、図15に示す態様で算出される。
【0112】すなわち、ステップ253においてCPU
65は、現在の学習領域の判定を行い、ステップ254
に移行する。ステップ254においてCPU65は、上
記平均値FAFAVLが「0.98」未満であるか否か
を判断する。ここで、同平均値FAFAVLが「0.9
8」未満であると判断されるとCPU65は、エンジン
1に供給される混合気の空燃比が長期的にみて目標空燃
比よりも濃厚側の空燃比に設定される傾向にあるものと
判定して、ステップ255に移行する。
【0113】ステップ255においてCPU65は、こ
の学習領域における前回のリーンミクスチャセンサ空燃
比学習値KGLiから、好適な空燃比学習制御を実現す
る値である、例えば0.002を減じてリーンミクスチ
ャセンサ空燃比学習値KGLiを算出更新する。
【0114】また、ステップ254において、上記平均
値FAFAVLが「0.98」以上であると判断される
とCPU65は、ステップ256に移行する。ステップ
256においてCPU65は、上記平均値FAFAVL
が「1.02」よりも大きいか否かを判断する。ここ
で、同平均値FAFAVLが「1.02」よりも大きい
と判断されるとCPU65は、エンジン1に供給される
混合気の空燃比が長期的にみて目標空燃比よりも希薄側
の空燃比に設定される傾向にあるものと判定して、ステ
ップ257に移行する。
【0115】ステップ257においてCPU65は、こ
の学習領域における前回のリーンミクスチャセンサ空燃
比学習値KGLiに、好適な空燃比学習制御を実現する
値である、例えば0.002を加えてリーンミクスチャ
センサ空燃比学習値KGLiを算出更新する。
【0116】なお、ステップ256において、上記平均
値FAFAVLが「1.02」以下であると判断される
ときには、すなわち同平均値FAFAVLが「0.9
8」以上で且つ「1.02」以下であるときには、リー
ンミクスチャセンサ空燃比学習値KGLiに対する上述
の増減更新は実行しない。
【0117】以上、ステップ254〜257により、あ
る学習領域におけるリーンミクスチャセンサ空燃比学習
値KGLiが算出更新される。なお、以上のように算出
されたリーンミクスチャセンサ空燃比学習値KGLiも
RAM63若しくはバックアップRAM68に記憶され
る。各学習領域におけるリーンミクスチャセンサ空燃比
学習値KGLi(i=0〜7)が前記「パラメータ算出
ルーチン」(図5)のステップ201において読み込ま
れ、空燃比学習値KGi(i=0〜7)の算出(図10
及び図11)に供されることは前述のとおりである。
【0118】次に、上記各学習領域における酸素センサ
25の学習終了を判定する「酸素センサ学習終了判定ル
ーチン」について、図16及び図17に基づき説明す
る。なお、同ルーチンは所定時間ごとの定時割り込みで
実行されるもので、同ルーチンでの判定結果に応じて、
前記酸素センサ学習終了判定フラグXKGSi(i=0
〜7)が設定される。
【0119】図16に示すように、処理がこのルーチン
に移行すると、まずステップ260においてCPU65
は、吸気圧PM、アイドル状態判定フラグLL及び前記
平均値FAFAVSを読み込み、ステップ261に移行
する。
【0120】ステップ261においてCPU65は、吸
気圧PM及びアイドル状態判定フラグLLに対応する学
習領域の学習の終了を判定し、その後の処理を一旦終了
する。なお、ある学習領域における酸素センサ25によ
る学習の終了の判定は、図17に示す態様でなされる。
【0121】すなわち、ステップ262においてCPU
65は、現在の学習領域の判定を行い、ステップ263
に移行する。ステップ263において、上記平均値FA
FAVSが、例えば「0.96」よりも大きく、「1.
04」よりも小さい範囲にあるか否かを判断する。ここ
で、同平均値FAFAVSが上記範囲にあると判断され
るとCPU65は、この学習領域における酸素センサ2
5による空燃比学習がほぼ終了したものと判定して、ス
テップ264に移行する。ちなみに、前記酸素センサ空
燃比学習値KGSi(i=0〜7)の算出においては、
上記平均値FAFAVSが「0.98」以上、「1.0
2」以下であるときには酸素センサ25による検出態様
に大きな変動がないものとして、同酸素センサ空燃比学
習値KGSi(i=0〜7)の更新を実行しなかった。
ここでは、こうした非更新も含めて同空燃比学習がほぼ
終了している状態を判定すればよいため、上記平均値F
AFAVSの範囲を「0.96」より大きく、且つ
「1.04」よりも小さい範囲に定めている。
【0122】ステップ264に移行したCPU65は、
上記酸素センサ学習終了判定フラグXKGSiを「1」
に設定する。逆に、上記ステップ263においてCPU
65は、上記平均値FAFAVSが上記範囲にないと判
断されるとCPU65は、この学習領域における同空燃
比学習が未だ終了していないものと判定して、ステップ
265に移行する。
【0123】ステップ265に移行したCPU65は、
上記酸素センサ学習終了判定フラグXKGSiを「0」
に設定する。以上、ステップ263〜265により、あ
る学習領域における酸素センサ25による学習の終了判
定がなされ、酸素センサ学習終了判定フラグXKGSi
の設定がなされる。
【0124】なお、以上のように設定された酸素センサ
学習終了判定フラグXKGSiはRAM63若しくはバ
ックアップRAM68に記憶される。各学習領域におけ
る酸素センサ学習終了判定フラグXKGSi(i=0〜
7)は前記「パラメータ算出ルーチン」(図5)のステ
ップ201において読み込まれ、空燃比学習値KGi
(i=0〜7)の算出(図10及び図11)に供される
ことは前述のとおりである。
【0125】次に、上記各学習領域におけるリーンミク
スチャセンサ26の学習終了を判定する「リーンミクス
チャセンサ学習終了判定ルーチン」について、図18及
び図19に基づき説明する。なお、同ルーチンは所定時
間ごとの定時割り込みで実行されるもので、同ルーチン
での判定結果に応じて、前記リーンミクスチャセンサ学
習終了判定フラグXKGLi(i=0〜7)が設定され
る。
【0126】図18に示すように、処理がこのルーチン
に移行すると、まずステップ270においてCPU65
は、吸気圧PM、アイドル状態判定フラグLL及び前記
平均値FAFAVLを読み込み、ステップ271に移行
する。
【0127】ステップ271においてCPU65は、吸
気圧PM及びアイドル状態判定フラグLLに対応する学
習領域の学習の終了を判定し、その後の処理を一旦終了
する。なお、ある学習領域におけるリーンミクスチャセ
ンサ26による学習の終了の判定は、図19に示す態様
でなされる。
【0128】すなわち、ステップ272においてCPU
65は、現在の学習領域の判定を行い、ステップ273
に移行する。ステップ273においてCPU65は、上
記平均値FAFAVLが、例えば「0.96」よりも大
きく、「1.04」よりも小さい範囲にあるか否かを判
断する。ここで、同平均値FAFAVLが上記範囲にあ
ると判断されるとCPU65は、この学習領域における
リーンミクスチャセンサ26による空燃比学習がほぼ終
了したものと判定して、ステップ274に移行する。ち
なみに、前記リーンミクスチャセンサ空燃比学習値KG
Li(i=0〜7)の算出においては、上記平均値FA
FAVLが「0.98」以上、「1.02」以下である
ときにはリーンミクスチャセンサ26による検出態様に
大きな変動がないものとして、同リーンミクスチャセン
サ空燃比学習値KGLi(i=0〜7)の更新を実行し
なかった。ここでは、こうした非更新も含めて同空燃比
学習がほぼ終了している状態を判定すればよいため、上
記平均値FAFAVLの範囲を「0.96」より大き
く、且つ「1.04」よりも小さい範囲に定めている。
【0129】ステップ274に移行したCPU65は、
上記リーンミクスチャセンサ学習終了判定フラグXKG
Liを「1」に設定する。逆に、上記ステップ273に
おいて、上記平均値FAFAVLが上記範囲にないと判
断されるとCPU65は、この学習領域における同空燃
比学習が未だ終了していないものと判定して、ステップ
275に移行する。
【0130】ステップ275に移行したCPU65は、
上記リーンミクスチャセンサ学習終了判定フラグXKG
Liを「0」に設定する。以上、ステップ273〜27
5により、ある学習領域におけるリーンミクスチャセン
サ26による学習の終了判定がなされ、リーンミクスチ
ャセンサ学習終了判定フラグXKGLiの設定がなされ
る。
【0131】なお、以上のように設定されたリーンミク
スチャセンサ学習終了判定フラグXKGLiはRAM6
3若しくはバックアップRAM68に記憶される。各学
習領域におけるリーンミクスチャセンサ学習終了判定フ
ラグXKGLi(i=0〜7)は前記「パラメータ算出
ルーチン」(図5)のステップ201において読み込ま
れ、空燃比学習値KGi(i=0〜7)の算出(図10
及び図11)に供されることは前述のとおりである。
【0132】次に、本実施の形態において、リーンミク
スチャセンサ26の異常を検出する「リーンミクスチャ
センサ異常検出ルーチン」について、図20及び図21
に基づき説明する。なお、同ルーチンは所定時間ごとの
定時割り込みで実行されるもので、同ルーチンでの検出
結果に応じて、前記リーンミクスチャセンサ異常検出フ
ラグXFLeanが設定される。
【0133】このリーンミクスチャセンサ26の異常検
出は、前記酸素センサ空燃比学習値KGSi(i=0〜
7)に対する前記リーンミクスチャセンサ空燃比学習値
KGLi(i=0〜7)のずれが所定値を超えるか否か
によって行うものである。ちなみに酸素センサ25は、
リーンミクスチャセンサ26に比べてその活性温度が低
く、且つ、高温側の許容温度も高く、更に高い検出精度
で空燃比(理論空燃比)を検出することができる。酸素
センサ空燃比学習値KGSi(i=0〜7)に対するリ
ーンミクスチャセンサ空燃比学習値KGLi(i=0〜
7)のずれによるリーンミクスチャセンサ26の異常検
出は、このような酸素センサ25の特性を利用するもの
である。
【0134】図20に示すように、処理がこのルーチン
に移行すると、まずステップ280においてCPU65
は、前記酸素センサ異常検出フラグXFOX、各学習領
域のリーンミクスチャセンサ異常判定フラグXLEAN
i(i=0〜7)、前記酸素センサ学習終了判定フラグ
XKGSi(i=0〜7)、前記リーンミクスチャセン
サ学習終了判定フラグXKGLi(i=0〜7)、前記
酸素センサ空燃比学習値KGSi(i=0〜7)及び前
記リーンミクスチャセンサ空燃比学習値KGLi(i=
0〜7)をRAM63若しくはバックアップRAM68
から読み込み、ステップ281に移行する。なお、上記
リーンミクスチャセンサ異常判定フラグXLEANi
は、i番目の学習領域において、後述の態様でリーンミ
クスチャセンサ26の異常が判定されたときに「1」に
設定されるものである。
【0135】ステップ281においてCPU65は、上
記酸素センサ異常検出フラグXFOXが「0」か否かを
判断する。ここで、同酸素センサ異常検出フラグXFO
Xが「1」であると判断されるとCPU65は、酸素セ
ンサ25が異常であると判定して、リーンミクスチャセ
ンサ26の異常を検出することなく、その後の処理を終
了する。
【0136】また、ステップ281において、酸素セン
サ異常検出フラグXFOXが「0」であると判断される
と、CPU65はステップ282に移行する。ステップ
282においてCPU65は、各学習領域ごとのリーン
ミクスチャセンサ26の異常検出、及び異常が検出され
た学習領域数をCDLEANとして積算し、ステップ2
83に移行する。なお、上記学習領域数CDLEAN
は、各学習領域での新たなリーンミクスチャセンサ26
の異常が検出されるごとに「1」ずつインクリメントさ
れるものである。
【0137】ステップ283に移行したCPU65は、
上記異常が検出された学習領域数CDLEANが所定値
A以上であるか否かを判断する。ここで、同学習領域数
CDLEANが所定値A以上であると判断されるとCP
U65は、リーンミクスチャセンサ26は異常であると
判定してステップ284に移行し、上記リーンミクスチ
ャセンサ異常検出フラグXFLeanを「1」に設定
し、RAM63若しくはバックアップRAM68に記憶
してその後の処理を一旦終了する。
【0138】一方、ステップ283において、同学習領
域数CDLEANが所定値A未満であると判断されると
CPU65は、リーンミクスチャセンサ26は正常であ
ると判定してステップ285に移行し、上記リーンミク
スチャセンサ異常検出フラグXFLeanを「0」に設
定し、RAM63若しくはバックアップRAM68に記
憶してその後の処理を一旦終了する。なお、ある学習領
域ごとのリーンミクスチャセンサ26の異常検出、及び
異常が検出された学習領域数の積算は、図21に示す態
様でなされる。
【0139】すなわちステップ290においてCPU6
5は、現在の学習領域の判定を行い、ステップ291に
移行する。ステップ291においてCPU65は、ある
学習領域のリーンミクスチャセンサ異常判定フラグXL
EANiが「0」であるか否かを判断する。ここで、同
リーンミクスチャセンサ異常検出フラグXLEANiが
「1」であると判断されるとCPU65は、同学習領域
でのリーンミクスチャセンサ26の異常が既に検出され
たものと判定して、次の学習領域でのリーンミクスチャ
センサ26の異常検出へと移行する。
【0140】また、ステップ291において、上記リー
ンミクスチャセンサ異常判定フラグXLEANiが
「0」であると判断されるとCPU65はステップ29
2以降の処理に移行する。
【0141】ステップ292において上記酸素センサ学
習終了判定フラグXKGSiが「0」と判断されるか、
又は、ステップ293において上記リーンミクスチャセ
ンサ学習終了判定フラグXKGLiが「0」であると判
断されるとCPU65は、この学習領域での酸素センサ
25又はリーンミクスチャセンサ26による空燃比学習
が未だ終了していないものと判定して、同学習領域での
リーンミクスチャセンサ26の異常を検出することな
く、次の学習領域でのリーンミクスチャセンサ26の異
常検出へと移行する。
【0142】一方、ステップ292において上記酸素セ
ンサ学習終了判定フラグXKGSiが「1」であり、且
つ、ステップ293において上記リーンミクスチャセン
サ学習終了判定フラグXKGLiが「1」であると判断
されるとCPU65は、酸素センサ25及びリーンミク
スチャセンサ26による空燃比学習が共に終了したもの
と判定して、ステップ294に移行する。
【0143】ステップ294においてCPU65は、上
記酸素センサ空燃比学習値KGSiと上記リーンミクス
チャセンサ空燃比学習値KGLiとの差の大きさ(絶対
値)が5%の範囲よりも大きいか否かを判断する。ここ
で、上記差の大きさが5%の範囲にあると判断されると
CPU65は、この学習領域において上記酸素センサ空
燃比学習値KGSiに対する上記リーンミクスチャセン
サ空燃比学習値KGLiのずれが小さく、同学習領域で
のリーンミクスチャセンサ26は正常であると判定し
て、次の学習領域でのリーンミクスチャセンサ26の異
常検出へと移行する。
【0144】また、ステップ294において、上記差の
大きさが5%の範囲よりも大きいと判断されるとCPU
65は、この学習領域において上記酸素センサ空燃比学
習値KGSiに対する上記リーンミクスチャセンサ空燃
比学習値KGLiのずれが大きく、同学習領域でのリー
ンミクスチャセンサ26は異常であると判定して、ステ
ップ295に移行する。
【0145】ステップ295においてCPU65は、上
記リーンミクスチャセンサ異常判定フラグXLEANi
を「1」に設定してRAM63若しくはバックアップR
AM68に記憶し、ステップ296に移行する。
【0146】ステップ296においてCPU65は、こ
の学習領域においてリーンミクスチャセンサ26の異常
が検出されたことから、上記異常が検出された学習領域
数CDLEANを「1」だけインクリメントして、次の
学習領域でのリーンミクスチャセンサ26の異常検出へ
と移行する。なお、上記学習領域数CDLEANは、各
学習領域での新たなリーンミクスチャセンサ26の異常
が検出されるごとに「1」ずつインクリメントされるも
のであることは前述のとおりである。
【0147】以上、ステップ291〜296により、あ
る学習領域でのリーンミクスチャセンサ26の異常検
出、及び異常が検出された学習領域数の積算がなされ、
前記ステップ284において、リーンミクスチャセンサ
26の異常の検出に供される。
【0148】なお、このようなリーンミクスチャセンサ
26の異常検出により設定されたリーンミクスチャセン
サ異常検出フラグXFLeanが前記「パラメータ算出
ルーチン」のステップ201において読み込まれ、空燃
比学習値KGi(i=0〜7)の算出(図10及び図1
1)に供されることは前述のとおりである。
【0149】以上のように酸素センサ空燃比学習値KG
Si(i=0〜7)とリーンミクスチャセンサ空燃比学
習値KGLi(i=0〜7)とのずれに基づき、リーン
ミクスチャセンサ26の異常を検出しているため、燃料
噴射量のずれや空気量のずれを吸収した状態で、リーン
ミクスチャセンサ26の異常が検出される。
【0150】また、上記リーンミクスチャセンサ26の
異常を検出することにより、同リーンミクスチャセンサ
26の異常時の前記空燃比学習値KGi(i=0〜7)
の誤算出は好適に回避される。
【0151】さらに、異常が検出された学習領域数CD
LEANが所定値A以上か否かの判定に基づき上記リー
ンミクスチャセンサの異常を検出してるため、同所定値
Aの設定により、異常検出に係る精度、信頼性は任意に
変更される。
【0152】このように、本実施の形態にあっては理論
空燃比制御時又は希薄空燃比制御時の燃料噴射量TAU
S又はTAULの算出において、前記式(1)又は
(2)に示したように、空燃比学習値KGiを乗じて燃
料噴射量のずれが補正される。そしてこの中で、特に図
10及び図11に示す「空燃比学習値算出ルーチン」に
おいて、酸素センサ25が正常であり、且つ、同酸素セ
ンサ25による空燃比学習が終了している場合には、リ
ーンミクスチャセンサ26の検出状況に関わらず空燃比
学習値KGi(i=0〜7)を酸素センサ空燃比学習値
KGSi(i=0〜7)とすることにより、同空燃比学
習値KGi(i=0〜7)の算出精度は向上される。し
たがって、燃料噴射量TAUS又はTAULの算出精度
も向上される。
【0153】次に、本実施の形態において、メインルー
チン(図3)での点火時期の算出に用いられる空気量補
正係数KGaiを算出するための「空気量補正係数算出
ルーチン」について、図22及び図23に基づき説明す
る。なお、同ルーチンは所定時間ごとの定時割り込みで
実行される。
【0154】この空気量補正係数KGaiは、上記空燃
比学習値KGiから、特に燃料噴射量のずれ(インジェ
クタ9の製品公差)に起因する空燃比のずれを差し引く
ことにより、 KGai=KGi(±)−(インジェクタ9の製品公差(±))…(3) と算出されるものであり、同空気量補正係数KGaiの
算出結果に応じて、エンジン1に吸入される空気量のず
れを補正する。
【0155】例えば、製品公差としてその燃料噴射量の
ずれが±4%であるインジェクタ9を使用している場合
において、上記空燃比学習値KGiが±10%のずれを
含んで算出される場合には、 KGai=KGi(±10%)−(インジェクタ9の製品公差(±4%)) =±6% となり、燃料噴射量のずれ(インジェクタ9の製品公
差)±4%を上回る空気量のずれを含んで同空燃比学習
値KGiが算出されていることになる。そこで本実施の
形態において、このような空燃比学習値KGiのずれ
は、エンジン1に吸入される空気量のずれとして補正す
る。
【0156】一方、上記の例において、空燃比学習値K
Giが例えば±2%のずれを含んで算出される場合に
は、空気量のずれが上記燃料噴射量のずれ(インジェク
タ9の製品公差)±4%に達しないため、同空気量のず
れによる影響は少ないとして、本実施の形態ではこれを
補正しない。
【0157】さて、図22に示すように、処理がこの
「空気量補正係数算出ルーチン」に移行すると、まずス
テップ301においてCPU65は、前記空燃比学習値
KGi(i=0〜7)を読み込み、ステップ302に移
行する。
【0158】ステップ302においてCPU65は、各
学習領域の空気量補正係数KGai(i=0〜7)を算
出し、その後の処理を一旦終了する。なお、ある学習領
域での空気量補正係数KGaiの算出は、図23に示す
態様でなされる。
【0159】すなわちステップ310においてCPU6
5は、現在の学習領域の判定を行い、ステップ311に
移行する。ステップ311においてCPU65は、空燃
比学習値KGiが「1.0」以上であるか否かを判断す
る。ここで、同空燃比学習値KGiが「1.0」以上で
あると判断されると、CPU65はステップ312に移
行する。
【0160】ステップ312においてCPU65は、上
記空燃比学習値KGiから上記インジェクタ9のプラス
側の公差(+4%)を減じて、プラス側補正係数+Kg
aiを算出し、ステップ313に移行する。
【0161】ステップ313においてCPU65は、上
記プラス側補正係数+Kgaiが「1.0」よりも大き
いか否かを判断する。ここで、同プラス側補正係数+K
gaiが「1.0」よりも大きいと判断されるとCPU
65は、空燃比が希薄側にずれているときの空気量のず
れが確認されたと判定して、ステップ314に移行す
る。
【0162】ステップ314においてCPU65は、上
記空気量補正係数KGaiを上記プラス側補正係数+K
gaiとする。また、上記ステップ313において、上
記プラス側補正係数+Kgaiが「1.0」以下である
と判断されるとCPU65は、上記空気量のずれによる
影響が少ないと判定して、ステップ318に移行する。
【0163】ステップ318に移行したCPU65は、
上記空気量補正係数KGaiを「1.0」とする。一
方、前記ステップ311において、上記空燃比学習値K
Giが「1.0」未満であると判断されるとCPU65
は、ステップ315に移行する。
【0164】ステップ315においてCPU65は、上
記空燃比学習値KGiから上記インジェクタ9のマイナ
ス側の公差(−4%)を減じて、マイナス側補正係数−
Kgaiを算出し、ステップ316に移行する。
【0165】ステップ316においてCPU65は、上
記マイナス側補正係数−Kgaiが「1.0」未満か否
かを判断する。ここで、同マイナス側補正係数−Kga
iが「1.0」未満と判断されるとCPU65は、空燃
比が濃厚側にずれているときの空気量のずれが確認され
たと判定して、ステップ317に移行する。
【0166】ステップ317においてCPU65は、上
記空気量補正係数KGaiを上記マイナス側補正係数−
Kgaiとする。また、上記ステップ316において、
上記マイナス側補正係数−Kgaiが「1.0」以上で
あると判断されるとCPU65は、上記同様、空気量の
ずれによる影響が少ないと判定してステップ318に移
行し、上記空気量補正係数KGaiを「1.0」とす
る。
【0167】以上、ステップ311〜318により、あ
る学習領域における空気量補正係数KGaiが算出され
る。なお、以上のように算出された空気量補正係数KG
ai(i=0〜7)はRAM63若しくはバックアップ
RAM68に記憶され、前記メインルーチン(図3)の
ステップ106の点火時期の算出において、次に説明す
る態様でそのときの学習領域に応じて読み込まれる。
【0168】次に、本実施の形態において、上記点火時
期を算出するための「点火時期算出ルーチン」につい
て、図24〜図27に基づき説明する。なお、同ルーチ
ンは、前記メインルーチン(図3)のステップ106に
おいて実行される。
【0169】図24に示すように、処理がこのルーチン
に移行すると、まずステップ321においてCPU65
は、前記メインルーチンのステップ101において読み
込んだエンジン回転数NE及び吸気圧PMに基づく図2
5に示すマップから基本点火時期tSAを算出し、ステ
ップ322に移行する。
【0170】ステップ322においてCPU65は、吸
気圧PM及びアイドル状態判定フラグLLに対応する学
習領域の点火時期SAを算出する。なお、ある学習領域
での点火時期SAの算出は、図26及び図27に示す態
様でなされる。
【0171】すなわちステップ330においてCPU6
5は、現在の学習領域の判定を行い、ステップ331に
移行する。ステップ331においてCPU65は、前記
空気量補正係数KGaiを読み込み、ステップ332に
移行する。
【0172】ステップ332においてCPU65は、上
記空気量補正係数KGaiに基づく図27に示すマップ
から点火時期補正係数KSAiを算出し、ステップ33
3に移行する。
【0173】ステップ333に移行したCPU65は、
上記基本点火時期tSAに上記点火時期補正係数KSA
iを乗じて、最終点火時期SAを算出する。なお、この
ように算出された最終点火時期SAに基づくタイミング
で、前記イグナイタ13から高電圧が点火プラグ11に
印加され、燃焼室4に導入された混合気が点火されるこ
とは前述のとおりである。
【0174】以上のように、前記算出された空気量補正
係数KGaiに基づき、点火時期を補正することによ
り、空気量のずれを考慮した好適な点火時期の算出がな
される。
【0175】以上詳述したように、本実施の形態によれ
ば、以下に示す効果が得られるようになる。 ・酸素センサ25が正常であり、且つ、同酸素センサ2
5による空燃比学習が終了している場合には、リーンミ
クスチャセンサ26の検出状況に関わらず空燃比学習値
KGi(i=0〜7)を酸素センサ空燃比学習値KGS
i(i=0〜7)とすることにより、同空燃比学習値K
Gi(i=0〜7)の算出精度を向上することができ
る。
【0176】・上記のように算出された空燃比学習値K
Gi(i=0〜7)に基づき、例えば前記燃料噴射量T
AUS又はTAULを算出する場合には、同燃料噴射量
TAUS又はTAULの算出精度を向上することができ
る。したがって、例えば燃料が過剰に噴射されて燃料消
費率が悪化したり、逆に過小に噴射されてノッキングや
プレイグニションが発生したり、エンジンから排出され
る排気ガスの温度が上昇したり、あるいは十分なエンジ
ン出力が得られなっかたりすることを抑制することがで
きる。
【0177】・酸素センサ空燃比学習値KGi(i=0
〜7)とリーンミクスチャセンサ空燃比学習値とのずれ
に基づき、リーンミクスチャセンサ26の異常を検出し
ているため、燃料噴射量のずれや空気量のずれを吸収し
た状態で、リーンミクスチャセンサ26の異常を検出す
ることができる。
【0178】・リーンミクスチャセンサ26の異常を検
出することにより、同リーンミクスチャセンサ26の異
常時の前記空燃比学習値KGi(i=0〜7)の誤算出
を好適に回避することができる。
【0179】・異常が検出された学習領域数CDLEA
Nが所定値A以上か否かの判定に基づき、上記リーンミ
クスチャセンサの異常を検出してるため、同所定値Aの
設定により、同異常検出に係る精度、信頼性を任意に変
更することができる。
【0180】・空気量補正係数KGaiに基づき、点火
時期を補正することにより、空気量のずれを考慮した好
適な点火時期を算出することができる。このため、例え
ば点火が過進角で実行されてノッキングやプレイグニシ
ョンが発生したり、その燃料消費率に対して適切なエン
ジン出力が得られなかったり、逆に点火が過遅角で実行
されてエンジンから排出される排気ガスの温度が上昇し
たり、その燃料消費率に対して適切なエンジン出力が得
られなかったりすることを抑制することができる。
【0181】なお、本実施の形態は上記に限定されるも
のではなく、次のように変更してもよい。 ・本実施の形態においては、ある学習領域におけるリー
ンミクスチャセンサ26の異常判定を、酸素センサ空燃
比学習値KGSiとリーンミクスチャセンサ空燃比学習
値KGLiとの差の大きさ(絶対値)が5%よりも大き
いか否かによって行ったが、酸素センサ空燃比学習値K
GSiに対するリーンミクスチャセンサ空燃比学習値K
GLiのずれが検出されるのであれば、その他の数値
(%)で行ってもよい。
【0182】・本実施の形態においては、ある学習領域
におけるリーンミクスチャセンサ26の異常判定を、酸
素センサ空燃比学習値KGSiとリーンミクスチャセン
サ空燃比学習値KGLiとの差の大きさ(絶対値)によ
って行ったが、酸素センサ空燃比学習値KGSiとリー
ンミクスチャセンサ空燃比学習値KGLiとの比によっ
て行ってもよい。
【0183】(第2の実施の形態)次に、本発明の第2
の実施の形態を図面に基づいて詳細に説明する。なお、
本実施の形態におけるエンジンの制御装置の概略構成及
び同エンジンのECUの回路構成は前記第1の実施の形
態と同一であるため、それらの重複する説明を省略す
る。
【0184】本実施の形態においては、リーンミクスチ
ャセンサ26の異常検出を前記ノックセンサ28の検出
結果に基づき行うことが、前記第1の実施の形態と異な
る。すなわち、第1の実施の形態においては、前記酸素
センサ空燃比学習値KGSi(i=0〜7)に対する前
記リーンミクスチャセンサ空燃比学習値KGLi(i=
0〜7)のずれが所定値を超えるか否かによって行うも
のであったが、本実施の形態においては、リーンミクス
チャセンサ26から出力される酸素濃度信号VLean
に相当する空燃比から期待されるノック信号と、実際に
検出されたノック信号kcsとのずれにより、同リーン
ミクスチャセンサ26の異常を検出するものである。
【0185】このようなリーンミクスチャセンサ26の
異常検出の方法は、図28により説明することができ
る。なお、同図28はエンジン1のトルク変動とNOx
の発生を共に許容範囲内に抑える上で最適となる所定の
点火時期における酸素濃度信号VLeanに相当する空
燃比とノック信号kcsとの関係を示すものである。ま
た同図において、実線は正常な酸素濃度信号VLean
が出力されているときのノック信号kcsを示し、破線
は異常な酸素濃度信号VLeanが出力されているとき
のノック信号kcsの一例を示している。
【0186】ここで、酸素濃度信号VLeanに相当す
る空燃比がある基準の空燃比A/F0よりも濃厚側の所
定空燃比A/Fを示しているとすると、この空燃比A/
Fに対応して検出されるべきノック信号kcsは値Cと
なることが期待される。しかし、検出されたノック信号
kcsが値Dであるときには、実際の空燃比は酸素濃度
信号VLeanに相当する空燃比A/Fよりも希薄側の
空燃比にずれていることがわかる。本実施の形態におい
ては、このような酸素濃度信号VLeanに相当する空
燃比とノック信号kcsとの関係により、リーンミクス
チャセンサ26の異常を検出するものである。
【0187】以下、本実施の形態における「リーンミク
スチャセンサ異常検出ルーチン」について、図29に基
づき説明する。なお、同ルーチンは所定時間ごとの定時
割り込みで実行される。
【0188】処理がこのルーチンに移行すると、まずス
テップ401においてCPU65は、大気圧PA、吸気
圧PM、酸素濃度信号VLean及びノック信号kcs
を読み込み、ステップ402以降の処理に移行する。そ
して、希薄空燃比制御中であり(ステップ402)、ノ
ックセンサ28が正常であり(ステップ403)、大気
圧PAが660mmHgabsよりも大きく(ステップ
404)、吸気圧PMが600mmHgabsよりも大
きく(ステップ405)、且つ、上記酸素濃度信号VL
eanに相当する空燃比A/Fが20よりも小さい(ス
テップ406)場合にのみ、ステップ407に移行す
る。なお、上記いずれかの条件が満たされない場合に
は、リーンミクスチャセンサ26の異常を検出すること
なく、そのまま同ルーチンを終了する。ちなみに、大気
圧PAが660mmHgabs以下の状態(例えば高地
など)、吸気圧PMが600mmHgabs以下の状態
(例えば軽負荷時など)及び酸素濃度信号VLeanに
相当する空燃比A/Fが「20」以上の状態でのリーン
ミクスチャセンサ26の異常を検出しないのは、これら
の状態でのノッキングの検出が難しいためである。
【0189】ステップ407においてCPU65は、上
記ノック信号kcsが図28に示す所定値Eよりも小さ
いか否かを判断する。ここで、同ノック信号kcsの大
きさが所定値E以上の大きさと判断されるとCPU65
は、リーンミクスチャセンサ26は正常であると判定
し、ステップ409に移行する。ステップ409におい
てCPU65は、前記リーンミクスチャセンサ異常検出
フラグXFLeanを「0」に設定し、RAM63若し
くはバックアップRAM68に記憶してその後の処理を
終了する。
【0190】一方、ステップ407において、上記ノッ
ク信号kcsの大きさが所定値Eよりも小さいと判断さ
れるとCPU65は、リーンミクスチャセンサ26は異
常であると判定し、ステップ408に移行する。ステッ
プ408においてCPU65は、上記リーンミクスチャ
センサ異常検出フラグXFLeanを「1」に設定し、
RAM63若しくはバックアップRAM68に記憶して
その後の処理を終了する。
【0191】なお、このようなリーンミクスチャセンサ
26の異常検出により設定されたリーンミクスチャセン
サ異常検出フラグXFLeanが前記「パラメータ算出
ルーチン」(図5)のステップ201において読み込ま
れ、空燃比学習値KGi(i=0〜7)の算出(図10
及び図11)に供されることは前記第1の実施の形態と
同様である。
【0192】以上のようにリーンミクスチャセンサ26
の異常を検出することにより、同リーンミクスチャセン
サ26の異常時において前記空燃比学習値KGi(i=
0〜7)の誤算出は好適に回避される。
【0193】以上詳述したように、本実施の形態によれ
ば、前記第1の実施の形態と同様の効果が得られ、特に
リーンミクスチャセンサ26の異常をノックセンサ28
により検出することができる。
【0194】(第3の実施の形態)次に、本発明の第3
の実施の形態を図面に基づいて詳細に説明する。なお、
本実施の形態におけるエンジンの制御装置の概略構成及
び同エンジンのECUの回路構成も前記第1及び第2の
実施の形態と同一であるため、それらの重複する説明を
省略する。
【0195】本実施の形態においては、前記燃料噴射量
TAUL等の算出精度を向上させるために、前記リーン
ミクスチャセンサ26から出力される酸素濃度信号VL
eanを、各学習領域ごとに前記酸素センサ空燃比学習
値KGSiと前記リーンミクスチャセンサ空燃比学習値
KGLiとの比により補正することが、前記第1及び第
2の実施の形態と異なる。
【0196】このような酸素濃度信号VLeanの補正
について、以下に説明する。前記酸素センサ25によ
り、検出誤差が0%で理論空燃比「14.5」に制御さ
れている場合、例えば計量空気量が14.5g/sec
(グラム毎秒)であるときの燃料噴射量TPは、 14.5/TP=14.5 TP=14.5/14.5=1.0(g/sec) となる。そしてこのときの燃料噴射量TAUSは、空燃
比フィードバック制御及び空燃比学習制御に伴う補正の
必要がないとすると、 TAUS=1.0(TP)×1.0(FAFS)×1.0(KGi) =1.0(g/sec) と算出される。
【0197】一方、上記リーンミクスチャセンサ26に
より、例えば+5%の検出誤差を含んで空燃比が「2
0」に制御されている場合、例えば計量空気量が14.
5g/secであるときの燃料噴射量TPは、 14.5/TP=20 TP=14.5/20=0.725(g/sec) と算出される。ただし、上記リーンミクスチャセンサ2
6の出力する酸素濃度信号VLeanは+5%ずれてい
るため、空燃比学習値KGiとして上記リーンミクスチ
ャセンサ空燃比学習値KGLiが設定される場合には、
同空燃比学習値KGiも実際には、+5%ずれている。
この場合の燃料噴射量TAULは、上記同様に空燃比フ
ィードバック制御及び空燃比学習制御に伴う補正の必要
がないとしても実際には、 TAUL=0.725×1.0(FAFL)×1.05(KGi) =0.761(g/sec) と算出される。すなわち、上記リーンミクスチャセンサ
26の検出結果に基づく空燃比制御は、実際に目標とす
る空燃比よりも5%濃厚側の空燃比に制御され、目標空
燃比を「20」としていたものが、実際には「19」に
制御されることとなる。
【0198】本実施の形態においては、このような燃料
噴射量TAULの算出のずれ(空燃比のずれ)の原因と
なりうる酸素濃度信号VLeanに対して、上記酸素セ
ンサ空燃比学習値KGSiと上記リーンミクスチャセン
サ空燃比学習値KGLiとの比を乗じて補正する。これ
により、上記酸素濃度信号VLeanのずれの傾向を予
め吸収し、より正確なリーンミクスチャセンサ空燃比学
習KGLiの算出、及び同リーンミクスチャセンサ空燃
比学習KGLiに基づくより正確な燃料噴射量TAUL
等の算出を行うようにする。
【0199】例えば前記酸素濃度信号OXのずれがな
く、上記酸素濃度信号VLeanが+5%ずれている場
合、上記酸素センサ空燃比学習値KGSiは空燃比学習
制御による補正の必要がない場合に「1.0」と算出さ
れる一方、上記リーンミクスチャセンサ空燃比学習値K
GLiは「1.05」と算出される。このとき、上記酸
素濃度信号VLeanに対して、上記酸素センサ空燃比
学習値KGSiと上記リーンミクスチャセンサ空燃比学
習値KGLiとの比を乗じて算出される補正酸素濃度信
号VLEANiは、 VLEANi=VLean×(1.0/1.05) と算出される。上述のように、酸素濃度信号VLean
は+5%ずれているが、これを「1.05」で除するこ
とにより、補正酸素濃度信号VLEANiのずれは吸収
されることとなる。したがって、このような補正酸素濃
度信号VLEANiに基づき、前記空燃比フィードバッ
ク補正係数FAFL及びリーンミクスチャセンサ空燃比
学習値KGLiを算出することにより、燃料噴射量TA
UL等の算出をより正確に行うことができる。
【0200】なお従来、例えば特開昭62−13994
3号公報に記載されるように、理論空燃比における酸素
濃度信号OXに相当する空燃比と酸素濃度信号VLea
nに相当する空燃比との差を算出し、各目標空燃比にお
いて、この差に相当する酸素濃度信号VLeanのずれ
に基づき一律に、同酸素濃度信号VLeanを補正する
ものがある。ただし、このような補正によれば、そのと
きのエンジン1の運転状態に応じて設定される目標空燃
比により、上記酸素濃度信号VLeanは過剰に補正さ
れたり、逆に過小に補正されることとなる。また、補正
の機会が定常状態に限定されていることから、十分な補
正ができないことがある。この点、本実施の形態によれ
ば、そのときのエンジン1の運転状態に応じて設定され
る目標空燃比に応じて上記酸素濃度信号VLeanは好
適に補正される。また、定常状態に限らず、過渡条件で
のエンジン制御時においても同補正を行うことができ
る。
【0201】以下、本実施の形態において、上記補正酸
素濃度信号VLEANi(i=0〜7)の算出等を行う
「リーンミクスチャセンサ補正値制御ルーチン」につい
て、図30及び図31に基づき説明する。なお、同ルー
チンは所定時間ごとの定時割り込みにより実行される。
【0202】図30に示すように、処理がこのルーチン
に移行すると、まずステップ501においてCPU65
は、各学習領域の酸素センサ空燃比学習値KGSi(i
=0〜7)、リーンミクスチャセンサ空燃比学習値KG
Li(i=0〜7)、酸素センサ学習終了判定フラグX
KGSi(i=0〜7)、リーンミクスチャセンサ学習
終了判定フラグXKGLi(i=0〜7)及び酸素濃度
信号VLeanを読み込み、ステップ502に移行す
る。
【0203】ステップ502においてCPU65は、各
学習領域の補正酸素濃度信号VLEANi(i=0〜
7)の算出及びリーンミクスチャセンサ空燃比学習値K
GLi(i=0〜7)の更新を行い、その後の処理を一
旦終了する。なお、ある学習領域ごとの補正酸素濃度信
号VLEANiの算出及びリーンミクスチャセンサ空燃
比学習値KGLiの更新は、図31に示す態様でなされ
る。
【0204】すなわちステップ503においてCPU6
5は、現在の学習領域の判定を行い、ステップ504に
移行する。ステップ504においてCPU65は、上記
酸素センサ学習終了判定フラグXKGSiが「1」か否
かを判断する。ここで、同酸素センサ学習終了判定フラ
グXKGSiが「0」と判断されるとCPU65は、当
該学習領域における酸素センサ25の学習が終了してい
ないと判定して、次の学習領域の処理に移行する。
【0205】また、ステップ504において、上記酸素
センサ学習終了判定フラグXKGSiが「1」と判断さ
れるとCPU65は、当該学習領域における酸素センサ
25の学習が終了していると判定して、ステップ505
に移行する。
【0206】ステップ505に移行したCPU65は、
上記リーンミクスチャセンサ学習終了判定フラグXKG
Liが「0」か否かを判断する。ここで、同リーンミク
スチャセンサ学習終了判定フラグXKGLiが「0」と
判断されるとCPU65は、当該学習領域におけるリー
ンミクスチャセンサ26の学習が終了していないと判定
して、次の学習領域の処理に移行する。
【0207】また、ステップ505において、上記リー
ンミクスチャセンサ学習終了判定フラグXKGLiが
「1」と判断されるとCPU65は、当該学習領域にお
けるリーンミクスチャセンサ26の学習が終了している
と判定して、ステップ506に移行する。
【0208】ステップ506に移行したCPU65は、
酸素センサ空燃比学習値KGSiをリーンミクスチャセ
ンサ空燃比学習値KGLiで除して、リーンミクスチャ
センサ補正値kVLeaniを算出し、ステップ507
に移行する。
【0209】ステップ507に移行したCPU65は、
上記酸素濃度信号VLeanに上記算出されたリーンミ
クスチャセンサ補正値kVLeanを乗じて補正酸素濃
度信号VLEANiを算出し、ステップ508に移行す
る。
【0210】ステップ508においてCPU65は、リ
ーンミクスチャセンサ26の検出精度のずれの傾向が補
正されたものとして、リーンミクスチャセンサ空燃比学
習値KGLiを「1.0」に更新し、次の学習領域の処
理に移行する。
【0211】なお、このように予め補正された酸素濃度
信号VLEANi(i=0〜7)はRAM63若しくは
バックアップRAM68に記憶され、前記「パラメータ
算出ルーチン」(図5)のステップ201において、上
記酸素濃度信号VLeanに代えて読み込まれ、空燃比
フィードバック補正係数FAFLの算出(図8)や同フ
ィードバック補正係数FAFLを介したリーンミクスチ
ャセンサ空燃比学習値KGLi(i=0〜7)の算出
(図14及び図15)に供されることとなる。したがっ
て、これら空燃比フィードバック補正係数FAFLやリ
ーンミクスチャセンサ空燃比学習値KGLi(i=0〜
7)の算出精度は向上され、特にリーンミクスチャセン
サ空燃比学習値KGLi(i=0〜7)は酸素センサ空
燃比学習値KGSi(i=0〜7)並みの算出精度とさ
れる。
【0212】また、このように算出された空燃比フィー
ドバック補正係数FAFLやリーンミクスチャセンサ空
燃比学習値KGLi(i=0〜7)により、例えば燃料
噴射量TAULや点火時期SA(空気量補正係数KGa
i(i=0〜7))が算出される場合には、これらの算
出精度も向上される。
【0213】以上詳述したように、本実施の形態によれ
ば、前記第1又は第2の実施の形態の効果に加えて以下
に示す効果が得られるようになる。 ・酸素濃度信号VLeanは、酸素センサ空燃比学習値
KGSi(i=0〜7)及びリーンミクスチャセンサ空
燃比学習値KGLi(i=0〜7)により予め補正され
るため、同酸素濃度信号VLeanのずれの傾向を予め
吸収することができる。また、このようなずれの傾向の
吸収は、希薄空燃比制御時や過渡条件でのエンジン制御
時においても同様に実行することができる。
【0214】・空燃比フィードバック補正係数FAFL
やリーンミクスチャセンサ空燃比学習値KGLi(i=
0〜7)の算出精度を向上し、特にリーンミクスチャセ
ンサ空燃比学習値KGLi(i=0〜7)を酸素センサ
空燃比学習値KGSi(i=0〜7)並みの算出精度と
することができる。
【0215】・このように算出された空燃比フィードバ
ック補正係数FAFLやリーンミクスチャセンサ空燃比
学習値KGLi(i=0〜7)により、例えば燃料噴射
量TAULや点火時期SA(空気量補正係数KGai
(i=0〜7))が算出される場合には、これらの算出
精度も向上することができる。すなわち、上記のように
算出された燃料噴射量TAULに基づき燃料噴射が実行
される場合には、例えば燃料が過剰に噴射されて燃料消
費率が悪化したり、逆に過小に噴射されてノッキングや
プレイグニションが発生したり、エンジンから排出され
る排気ガスの温度が上昇したり、あるいは十分なエンジ
ン出力が得られなっかたりすることを更に好適に抑制す
ることができる。また、上記のように算出された点火時
期に基づき点火が実行される場合には、例えば、点火が
過進角で実行されてノッキングやプレイグニションが発
生したり、その燃料消費率に対して適切なエンジン出力
が得られなかったり、逆に点火が過遅角で実行されてエ
ンジンから排出される排気ガスの温度が上昇したり、そ
の燃料消費率に対して適切なエンジン出力が得られなか
ったりすることをより好適に抑制することができる。特
に、理論空燃比から同理論空燃比よりも希薄側の空燃比
への移行時、又はその逆の移行時においては、酸素セン
サ空燃比学習値KGSi(i=0〜7)とリーンミクス
チャセンサ空燃比学習値KGLiとのずれ(空気量のず
れ)が低減されているため、同移行時の空燃比の制御性
能が向上することにより、排気ガス中のHC,CO,N
Oxを低減することができる。また、車両のドライバビ
リティを向上することができる。
【0216】なお、本実施の形態は上記に限定されるも
のではなく、次のように変更してもよい。 ・本実施の形態においては、補正酸素濃度信号VLEA
Niの算出後に、リーンミクスチャセンサ空燃比学習値
KGLiを「1.0」としたが、これに代えて、このと
きの酸素センサ空燃比学習値KGSiとしてもよい。こ
の場合、検出精度のよい酸素センサ25により算出され
た空燃比学習値KGSiをリーンミクスチャセンサ空燃
比学習値KGLiに反映させることができる。
【0217】(第4の実施の形態)次に、本発明の第4
の実施の形態を図面に基づいて詳細に説明する。なお、
本実施の形態におけるエンジンの制御装置の概略構成及
び同エンジンのECUの回路構成も前記第1〜第3の実
施の形態と同一であるため、それらの重複する説明を省
略する。
【0218】前記第3の実施の形態においては、各学習
領域ごとにリーンミクスチャセンサ補正値kVLean
i(i=0〜7)に基づき、前記酸素濃度信号VLea
nを補正した。これに対し、本実施の形態は、各学習領
域のうち最初に算出されたリーンミクスチャセンサ補正
値kVLean(=KGSi/KGLi)に基づき、全
ての学習領域において上記酸素濃度信号VLeanを一
律に補正するものである。これは、リーンミクスチャセ
ンサ26のずれが実際の空燃比に対する酸素濃度信号V
Leanに相当する空燃比のずれであり、学習領域が変
わってもそのずれの量がほぼ同じであることを利用する
ものである。
【0219】以下、本実施の形態において、上記リーン
ミクスチャセンサ補正値kVLeanの算出等を行う
「リーンミクスチャセンサ補正値制御ルーチン」につい
て、図32に基づき説明する。なお、同ルーチンは所定
時間ごとの定時割り込みにより実行される。
【0220】図32に示すように、処理がこのルーチン
に移行すると、まずステップ601においてCPU65
は、各学習領域の酸素センサ空燃比学習値KGSi(i
=0〜7)、リーンミクスチャセンサ空燃比学習値KG
Li(i=0〜7)、酸素センサ学習終了判定フラグX
KGSi(i=0〜7)、リーンミクスチャセンサ学習
終了判定フラグXKGLi(i=0〜7)及びリーンミ
クスチャセンサ補正完了フラグXVLEANを読み込
み、ステップ602に移行する。なお、上記リーンミク
スチャセンサ補正完了フラグXVLEANは、後述する
ように、上記リーンミクスチャセンサ補正値kVLea
nの算出及びリーンミクスチャセンサ空燃比学習値KG
Li(i=0〜7)の更新がなされたときに「1」に設
定されるものである。
【0221】ステップ602においてCPU65は、上
記リーンミクスチャセンサ補正完了フラグXVLEAN
が「0」か否かを判断する。ここで、同リーンミクスチ
ャセンサ補正完了フラグXVLEANが「1」であると
判断されるとCPU65は、既にリーンミクスチャセン
サ補正値kVLeanの算出及びリーンミクスチャセン
サ空燃比学習値KGLi(i=0〜7)の更新がなされ
たものと判定して、その後の処理を一旦終了する。
【0222】また、ステップ602において上記リーン
ミクスチャセンサ補正完了フラグXVLEANが「0」
であると判断されるとCPU65は、ステップ603に
移行する。
【0223】ステップ603に移行したCPU65は、
同ステップ603からステップ607までの処理によ
り、全学習領域(i=0〜7)の中から酸素センサ学習
終了判定フラグXKGSi及びリーンミクスチャセンサ
学習終了判定フラグXKGLiが共に「1」になってい
る学習領域を検索する。ここで、全学習領域において上
記酸素センサ学習終了判定フラグXKGSi又は上記リ
ーンミクスチャセンサ学習終了判定フラグXKGLiが
「1」になっていないことが確認されると、CPU65
はステップ611に移行する。そして、上記リーンミク
スチャセンサ補正完了フラグXVLEANを「0」に設
定し、その後の処理を一旦終了する。
【0224】一方、上記ステップ603から上記ステッ
プ607の処理により、ある学習領域において上記酸素
センサ学習終了判定フラグXKGSi及び上記リーンミ
クスチャセンサ学習終了判定フラグXKGLiが共に
「1」になっていることが確認されると、CPU65は
ステップ608に移行する。
【0225】ステップ608においてCPU65は、酸
素センサ空燃比学習値KGSiをリーンミクスチャセン
サ空燃比学習値KGLiで除して、リーンミクスチャセ
ンサ補正値kVLeanを算出し、ステップ609に移
行する。
【0226】ステップ609に移行したCPU65は、
全ての学習領域においてリーンミクスチャセンサ26の
検出精度のずれの傾向が補正されたものとして、KGL
i(i=0〜7)を「1.0」に更新し、ステップ61
0に移行する。そして、上記リーンミクスチャセンサ補
正完了フラグXVLEANを「1」に設定し、その後の
処理を一旦終了する。ちなみに上記酸素センサ学習終了
判定フラグXKGSi及び上記リーンミクスチャセンサ
学習終了判定フラグXKGLiが共に「1」になってい
ることが確認されたある学習領域は、各学習領域を所定
の順番(本実施の形態では「0」から番号順に「7」)
で検索するときに、上記確認がなされた最初の学習領域
となっている。
【0227】次に、上記算出されたリーンミクスチャセ
ンサ補正値kVLeanに基づき前記酸素濃度信号VL
eanを補正する「リーンミクスチャセンサ補正制御ル
ーチン」について、図33に基づき説明する。なお、同
ルーチンは、所定時間ごとの定時割り込みにより実行さ
れる。
【0228】処理がこのルーチンに移行すると、まずス
テップ621においてCPU65は、上記酸素濃度信号
VLean、上記リーンミクスチャセンサ補正値kVL
ean及び上記リーンミクスチャセンサ補正完了フラグ
XVLEANを読み込み、ステップ622に移行する。
【0229】ステップ622においてCPU65は、上
記リーンミクスチャセンサ補正完了フラグXVLEAN
が「1」か否かを判断する。ここで、同リーンミクスチ
ャセンサ補正完了フラグXVLEANが「0」と判断さ
れるとCPU65は、リーンミクスチャセンサ26に対
する補正が完了していないと判定してステップ624に
移行し、補正酸素濃度信号VLEANをそのまま酸素濃
度信号VLeanとし、その後の処理を一旦終了する。
【0230】一方、ステップ622において上記リーン
ミクスチャセンサ補正完了フラグXVLEANが「1」
と判断されるとCPU65は、リーンミクスチャセンサ
26に対する補正が完了していると判定してステップ6
23に移行する。
【0231】ステップ623においてCPU65は、上
記酸素濃度信号VLeanに上記リーンミクスチャセン
サ補正値kVLeanを乗じて、上記補正酸素濃度信号
VLEANを算出し、その後の処理を一旦終了する。
【0232】なお、このように算出された補正酸素濃度
信号VLEANはRAM63若しくはバックアップRA
M68に記憶され、前記「パラメータ算出ルーチン」
(図5)のステップ201において、上記酸素濃度信号
VLeanに代えて読み込まれ、空燃比フィードバック
補正係数FAFLの算出(図8)や同フィードバック補
正係数FAFLを介したリーンミクスチャセンサ空燃比
学習値KGLi(i=0〜7)の算出(図14及び図1
5)に供されることとなる。したがって、前記第3の実
施の形態と同様に、これら空燃比フィードバック補正係
数FAFLやリーンミクスチャセンサ空燃比学習値KG
Li(i=0〜7)の算出精度は向上され、特にリーン
ミクスチャセンサ空燃比学習値KGLi(i=0〜7)
は酸素センサ空燃比学習値KGSi(i=0〜7)並み
の算出精度とされる。
【0233】特に本実施の形態においては、全ての学習
領域において、リーンミクスチャセンサ補正値を算出す
る必要がないため、その演算負荷は軽減される。また、
ある学習領域において酸素センサ25及びリーンミクス
チャセンサ26の空燃比学習制御が終了して酸素濃度信
号VLeanのずれが検出され、リーンミクスチャセン
サ補正値kVLeanが算出されれば、その他の学習領
域においての酸素センサ25及びリーンミクスチャセン
サ26の空燃比学習制御の終了状況に関わらず、酸素濃
度信号VLeanのずれは補正される。すなわち、その
他の学習領域においてリーンミクスチャセンサ空燃比学
習値KGLiは予め正確に算出される。
【0234】以上詳述したように、本実施の形態によれ
ば、前記第3の実施の形態の効果に加えて、以下に示す
効果が得られるようになる。 ・リーンミクスチャセンサ補正値を算出する演算負荷を
軽減することができる。
【0235】・リーンミクスチャセンサ空燃比学習値K
GLi(i=0〜7)を予め正確に算出することができ
る。なお、本実施の形態は上記に限定されるものではな
く、次のように変更してもよい。
【0236】・本実施の形態においては、リーンミクス
チャセンサ補正値kVLeanの算出後に、全ての学習
領域においてリーンミクスチャセンサ空燃比学習値KG
Li(i=0〜7)を「1.0」としたが、これに代え
て、このときの酸素センサ空燃比学習値KGSiとして
もよい。この場合、検出精度のよい酸素センサ25によ
り算出された空燃比学習値KGSiをリーンミクスチャ
センサ空燃比学習値KGLi(i=0〜7)に反映させ
ることができる。
【0237】(第5の実施の形態)次に、本発明の第5
の実施の形態を図面に基づいて詳細に説明する。なお、
本実施の形態におけるエンジンの制御装置の概略構成及
び同エンジンのECUの回路構成も前記第1〜第4の実
施の形態と同一であるため、それらの重複する説明を省
略する。
【0238】前記第4の実施の形態においては、8つの
学習領域のうち最初に算出されたリーンミクスチャセン
サ補正値kVLean(=KGSi/KGLi)に基づ
き、学習領域に関わらず上記酸素濃度信号VLeanを
補正するものであった。本実施の形態においては、上記
8つの学習領域のうち特にリーンミクスチャセンサ26
の検出精度の劣る学習領域を除いて最初に算出されたリ
ーンミクスチャセンサ補正値kVLean(=KGSi
/KGLi)に基づき上記酸素濃度信号VLeanを補
正することが、前記第4の実施の形態と異なる。
【0239】以下、前記8つに区分される学習領域とリ
ーンミクスチャセンサ26の検出精度との関係について
説明する。図34は、前記吸気圧PM等に相当する空気
量及び同空気量に応じて区分されて算出されるリーンミ
クスチャセンサ空燃比学習値KGLi(i=0〜7)
と、リーンミクスチャセンサ26を加熱するヒータの制
御電流(図34(a))、ヒータ温度(図34(b))
及びリーンミクスチャセンサ26の温度(図34
(c))との関係を示すものである。また図34(c)
において、斜線で示される範囲は、リーンミクスチャセ
ンサ26が安定した特性を示すときの温度範囲となって
いる。さらに、同図34(c)において太線は所定のヒ
ータ制御により加熱されたときのリーンミクスチャセン
サ26の温度を示し、細線はヒータ制御による加熱をし
ないときのリーンミクスチャセンサ26の温度を示す。
また各図中、実線は図34(b)に示すヒータ許容温度
の範囲でリーンミクスチャセンサ26を加熱するときを
示し、破線は同ヒータ許容温度の範囲に関わらずリーン
ミクスチャセンサ26を加熱し、リーンミクスチャセン
サ26を安定した特性を示す温度範囲にするときを示
す。
【0240】図34(c)に示すように、ヒータ制御に
よりリーンミクスチャセンサ26を加熱しない場合に
は、同リーンミクスチャセンサ26の温度はほとんどの
空気量の範囲(学習領域)において、安定した特性を示
す温度範囲とならない。したがって、所定のヒータ制御
によりリーンミクスチャセンサ26を加熱することによ
り、同リーンミクスチャセンサ26が安定した特性を示
す温度範囲にする。この際、上記ヒータ許容温度(図3
4(b))を考慮することなく、リーンミクスチャセン
サ26を加熱する場合、空気量の少ないとき、すなわち
リーンミクスチャセンサ空燃比学習値KGL0又はKG
L1を算出する空気量の範囲においても同リーンミクス
チャセンサ26の温度を安定した特性を示す範囲にする
ことができる。ただし、このようなヒータ制御を行う場
合、ヒータの温度が過剰に上昇し、ヒータの寿命が短く
なることがある。このようなことを回避するために、ヒ
ータ制御電流を抑制してリーンミクスチャセンサ26を
加熱する場合、図34(c)に示すように、空気量の少
ないとき、すなわちリーンミクスチャセンサ空燃比学習
値KGL0又はKGL1を算出する空気量の範囲におい
ては、同リーンミクスチャセンサ26は、安定した特性
を示す温度範囲にすることができなくなる。
【0241】一方、同図34(c)に示すように、空気
量の多いとき、すなわちリーンミクスチャセンサ空燃比
学習値KGL7が算出される学習領域においては、リー
ンミクスチャセンサ26に対してヒータ制御による加熱
をしないにも関わらず同リーンミクスチャセンサ26の
温度は高くなりすぎ、安定した特性を示す温度範囲にす
ることができなくなる。本実施の形態においては、これ
ら安定した特性を示す温度範囲に属さない学習領域にお
いて算出されるリーンミクスチャセンサ空燃比学習値K
GL0,KGL1,KGL7に基づく前記酸素濃度信号
VLeanの補正を行わないことで、精度の良い補正酸
素濃度信号VLEANを算出するものである。
【0242】以下、本実施の形態におけるリーンミクス
チャセンサ補正値kVLeanの算出等を行う「リーン
ミクスチャセンサ補正値制御ルーチン」について、図3
5に基づき説明する。なお、同ルーチンは所定時間ごと
の定時割り込みにより実行される。
【0243】図35に示すように、処理がこのルーチン
に移行すると、まずステップ701においてCPU65
は、0、1、7番を除く各学習領域の酸素センサ空燃比
学習値KGSi(i=2〜6)、リーンミクスチャセン
サ空燃比学習値KGLi(i=2〜6)、酸素センサ学
習終了判定フラグXKGSi(i=2〜6)、リーンミ
クスチャセンサ学習終了判定フラグXKGLi(i=2
〜6)及びリーンミクスチャセンサ補正完了フラグXV
LEANを読み込み、ステップ702に移行する。な
お、上記リーンミクスチャセンサ補正完了フラグXVL
EANは、後述するように、上記リーンミクスチャセン
サ補正値kVLeanの算出及びリーンミクスチャセン
サ空燃比学習値KGLi(i=2〜6)の更新がなされ
たときに「1」に設定されるものである。
【0244】ステップ702においてCPU65は、上
記リーンミクスチャセンサ補正完了フラグXVLEAN
が「0」か否かを判断する。ここで、同リーンミクスチ
ャセンサ補正完了フラグXVLEANが「1」であると
判断されるとCPU65は、既にリーンミクスチャセン
サ補正値kVLeanの算出及びリーンミクスチャセン
サ空燃比学習値KGLi(i=2〜6)の更新がなされ
たものと判定して、その後の処理を一旦終了する。
【0245】また、ステップ702において上記リーン
ミクスチャセンサ補正完了フラグXVLEANが「0」
であると判断されるとCPU65は、ステップ703に
移行する。
【0246】ステップ703に移行したCPU65は、
同ステップ703からステップ707までの処理によ
り、0、1、7番を除く学習領域(i=2〜6)の中か
ら酸素センサ学習終了判定フラグXKGSi及びリーン
ミクスチャセンサ学習終了判定フラグXKGLiが共に
「1」になっている学習領域を検索する。ここで、上記
学習領域において上記酸素センサ学習終了判定フラグX
KGSi又は上記リーンミクスチャセンサ学習終了判定
フラグXKGLiが「1」になっていないことが確認さ
れるとCPU65は、ステップ711に移行する。そし
て、上記リーンミクスチャセンサ補正完了フラグXVL
EANを「0」に設定し、その後の処理を一旦終了す
る。
【0247】一方、上記ステップ703から上記ステッ
プ707の処理により、0、1、7番を除くある学習領
域において上記酸素センサ学習終了判定フラグXKGS
i及び上記リーンミクスチャセンサ学習終了判定フラグ
XKGLiが共に「1」になっていることが確認される
と、CPU65はステップ708に移行する。
【0248】ステップ708においてCPU65は、酸
素センサ空燃比学習値KGSiをリーンミクスチャセン
サ空燃比学習値KGLiで除して、リーンミクスチャセ
ンサ補正値kVLeanを算出し、ステップ709に移
行する。
【0249】ステップ709に移行したCPU65は、
0、1、7番を除く学習領域においてリーンミクスチャ
センサ26の検出精度のずれの傾向が補正されたものと
して、KGLi(i=2〜6)を「1.0」に更新し、
ステップ710に移行する。そして、上記リーンミクス
チャセンサ補正完了フラグXVLEANを「1」に設定
し、その後の処理を一旦終了する。ちなみに上記酸素セ
ンサ学習終了判定フラグXKGSi及び上記リーンミク
スチャセンサ学習終了判定フラグXKGLiが共に
「1」になっていることが確認されたある学習領域は、
各学習領域を所定の順番(本実施の形態では「2」から
番号順に「6」)で検索するときに、上記確認がなされ
た最初の学習領域となっている。
【0250】なお、このように算出されたリーンミクス
チャセンサ補正値kVLeanはRAM63若しくはバ
ックアップRAM68に記憶され、前記「リーンミクス
チャセンサ補正制御ルーチン」(図33)のステップ6
21において読み込まれ、前記補正酸素濃度信号VLE
ANが算出されることは、前記第4の実施の形態と同様
である。
【0251】また、このように算出された補正酸素濃度
信号VLEANはRAM63若しくはバックアップRA
M68に記憶され、前記「パラメータ算出ルーチン」
(図5)のステップ201において、上記酸素濃度信号
VLeanに代えて読み込まれ、空燃比フィードバック
補正係数FAFLの算出(図8)や同フィードバック補
正係数FAFLを介したリーンミクスチャセンサ空燃比
学習値KGLi(i=2〜6)の算出(図14及び図1
5)に供されることとなる。したがって、前記第3及び
第4の実施の形態と同様に、これら空燃比フィードバッ
ク補正係数FAFLやリーンミクスチャセンサ空燃比学
習値KGLi(i=2〜6)の算出精度は向上され、特
にリーンミクスチャセンサ空燃比学習値KGLi(i=
2〜6)は酸素センサ空燃比学習値KGSi(i=2〜
6)並みの算出精度とされる。
【0252】特に本実施の形態においては、リーンミク
スチャセンサ26が不安定な特性を示す学習領域を除い
て、リーンミクスチャセンサ補正値を算出するため、酸
素濃度信号VLeanのずれはより正確に補正される。
すなわち、空燃比フィードバック補正係数FAFLやリ
ーンミクスチャセンサ空燃比学習値KGLi(i=2〜
6)はより正確に算出される。
【0253】以上詳述したように、本実施の形態によれ
ば、前記第4の実施の形態の効果に加えて、以下に示す
効果が得られるようになる。 ・最小限の演算負荷で、空燃比フィードバック補正係数
FAFLやリーンミクスチャセンサ空燃比学習値KGL
i(i=2〜6)をより正確に算出することができる。
【0254】なお、本実施の形態は上記に限定されるも
のではなく、次のように変更してもよい。 ・本実施の形態においては、リーンミクスチャセンサ補
正値kVLeanの算出後に、0、1、7番を除く全て
の学習領域においてリーンミクスチャセンサ空燃比学習
値KGLi(i=2〜6)を「1.0」としたが、これ
に代えて、このときの酸素センサ空燃比学習値KGSi
としてもよい。この場合、検出精度のよい酸素センサ2
5により算出された空燃比学習値KGSiをリーンミク
スチャセンサ空燃比学習値KGLi(i=2〜6)に反
映させることができる。
【0255】その他、以上の各実施の形態に共通して変
更可能な要素としては次のようなものがある。 ・上記各実施の形態においては、学習領域を吸気圧PM
等に基づき8つに区分した。このような区分はその他の
方法、例えばエンジン1にエアフロメータを設け、同エ
アフロメータにより検出される空気量に基づき区分して
もよい。また、吸気圧PM及びエンジン回転数NE、又
は上記空気量及びエンジン回転数NEに基づき区分して
もよい。そしてこの区分数も、8つ以外のその他の数に
してもよい。
【0256】・上記各実施の形態のおいては、空燃比フ
ィードバック補正係数FAFS,FAFLを算出する所
定スキップ値α、積分増減値β及び増減値γを定数とし
たが、これをエンジン1の運転状態、例えばエンジン回
転数NEや吸気圧PM等に基づく変数としてもよい。こ
の場合、エンジン1の運転状態に応じて上記値α,β,
γを変えることにより、理論空燃比又は希薄側の目標空
燃比への空燃比フィードバック制御をより好適なものと
することができる。
【0257】・上記各実施の形態においては、空燃比フ
ィードバック補正係数FAFLは、酸素濃度信号VLe
anと目標酸素濃度値VTRGとの大小比較により、増
減値γだけ徐変するのみであった。これに加えて、酸素
濃度信号VLeanと目標酸素濃度値VTRGとの大小
関係が逆転する都度に所定スキップ値だけスキップさせ
てもよい。また、この所定スキップ値はエンジン1の運
転状態、例えばエンジン回転数NEや吸気圧PM等に基
づく変数であってもよい。
【0258】・上記各実施の形態においては、空燃比フ
ィードバック補正係数FAFSの平均値FAFAVSに
よる酸素センサ空燃比学習値KGSiの補正を「0.9
8〜1.02」の範囲にあるか否かにより行ったが、空
燃比フィードバック補正係数FAFSの傾向がわかるの
であれば、その他の範囲としてもよい。
【0259】・上記各実施の形態においては、空燃比フ
ィードバック補正係数FAFLの平均値FAFAVLに
よる酸素センサ空燃比学習値KGLiの補正を「0.9
8〜1.02」の範囲にあるか否かにより行ったが、空
燃比フィードバック補正係数FAFLの傾向がわかるの
であれば、その他の範囲としてもよい。
【0260】・上記各実施の形態においては、上記平均
値FAFAVSによる酸素センサの学習終了判定を
「0.96〜1.04」の範囲にあるか否かにより行っ
たが、空燃比フィードバック補正係数FAFSの安定度
合がわかるのであれば、その他の範囲としてもよい。
【0261】・上記各実施の形態においては、上記平均
値FAFAVLによる酸素センサの学習終了判定を
「0.96〜1.04」の範囲にあるか否かにより行っ
たが、空燃比フィードバック補正係数FAFLの安定度
合がわかるのであれば、その他の範囲としてもよい。
【0262】・上記各実施の形態においては、インジェ
クタ9の製品公差が±4%であるとしたがこれは任意で
ある。要は、予め想定される製品公差に基づいて図23
に例示したような空気量補正を行うことで、上記各実施
の形態に準じた効果を得ることはできる。
【0263】・上記各実施の形態においては、空気量補
正係数KGai(i=0〜7)に基づき点火時期の補正
を行ったが、例えば酸素センサ25の温度が基準温度を
超えるときに燃料噴射量の増量(OTP増量)を行う制
御についても同様に、同空気量補正係数KGai(i=
0〜7)に基づく空気量補正を適用することができる。
【0264】・上記各実施の形態においては、空燃比学
習値KGiからインジェクタ9の製品公差分を差し引い
て空気量のばらつきである空気量補正係数KGaiを算
出した。ただし、エンジン1が蒸発燃料のパージ機能を
備える場合には、同パージに起因する空燃比のずれが生
じる。したがって、このような場合には、上記空気量補
正係数KGaiの算出を取りやめ、パージ実行時以外の
空燃比学習値から同空気量補正係数KGaiを求めるこ
ととなる。また、上記パージに起因する空燃比のずれを
別途算出し、空燃比学習値KGiからインジェクタ9の
製品公差分及び同パージに起因する空燃比のずれを差し
引いて同空気量補正係数KGaiを算出してもよい。
【0265】・上記各実施の形態においては、各空燃比
学習値KGiを燃料噴射量の算出と点火時期の算出とに
同時に反映させることとしたが、同学習値KGiはそれ
らいずれか一方のみの算出に反映させることでも、従来
の装置に比して十分な効果を得ることはできる。
【0266】・上記各実施の形態では、リーンミクスチ
ャセンサ26の異常検出をも併せて行うこととしたが、
同リーンミクスチャセンサ26及びその周辺回路の耐久
性や信頼性が保証される場合には、必ずしもこうした異
常検出を行う必要はない。
【0267】次に、以上の各実施の形態から把握するこ
とができる請求項以外の技術的思想を、その効果ととも
に以下に記載する。 (1)内燃機関の排気通路に設けられた酸素濃淡電池型
の第1の酸素センサ及び限界電流型の第2の酸素センサ
の各酸素濃度信号に基づいて、それぞれ理論空燃比及び
同理論空燃比よりも希薄側での機関制御を行う内燃機関
の制御装置において、前記第1の酸素センサの酸素濃度
信号に基づいて空燃比を決定するパラメータのずれを学
習する第1の学習手段と、前記第2の酸素センサの酸素
濃度信号に基づいて空燃比を決定するパラメータのずれ
を学習する第2の学習手段と、前記第1の学習手段によ
る学習値と前記第2の学習手段による学習値とのずれの
度合いに基づいて前記第2の酸素センサの異常の有無を
検出する異常検出手段を備えることを特徴とする内燃機
関の制御装置。
【0268】同構成によれば、上記第2の酸素センサの
異常を検出することにより、同第2の酸素センサの異常
時の上記第2の学習手段による学習値の誤算出を好適に
回避することができる。
【0269】また、上記第1の学習手段による学習値と
上記第2の学習手段による学習値とのずれの度合いに基
づいて上記第2の酸素センサの異常の有無を検出してい
るため、燃料噴射量のずれや空気量のずれを吸収した状
態で、同第2の酸素センサの異常を検出することができ
る。
【0270】(2)内燃機関の排気通路内の酸素濃度を
検出する限界電流型の酸素センサと、前記機関のノッキ
ングの有無を検出するノックセンサとを備え、前記ノッ
クセンサから出力されるノック信号の挙動に基づいて前
記酸素センサの異常の有無を検出することを特徴とする
内燃機関の制御装置。
【0271】同構成によれば、上記ノックセンサから出
力されるノック信号の挙動に基づいて上記限界電流型酸
素センサの異常の有無を検出することができる。
【0272】
【発明の効果】請求項1に記載の発明によれば、空燃比
を決定するパラメータの補正を好適なものとすることが
できる。また、特に理論空燃比よりも希薄側で精度の良
い機関制御を実施することができる。
【0273】請求項2に記載の発明によれば、上記機関
に噴射供給する燃料量を好適に補正することができる。
なお、このように補正された燃料量に基づき上記機関に
燃料噴射が実行される場合には、例えば燃料が過剰に噴
射供給されて燃料消費率が悪化したり、逆に過小に噴射
供給されてノッキングやプレイグニションが発生した
り、同機関から排出される排気ガスの温度が上昇した
り、あるいは十分な機関出力が得られなかったりするこ
とを抑制することができる。
【0274】請求項3に記載の発明によれば、上記機関
に吸入される空気量を好適に補正することができる。な
お、このように補正された吸入空気量に基づき、例えば
点火時期を算出する場合には、同点火時期を好適に算出
することができる。このため、例えば点火が過進角で実
行されてノッキングやプレイグニションが発生したり、
その燃料消費率に対して適切な機関出力が得られなかっ
たり、逆に点火が過遅角で実行されて上記機関から排出
される排気ガスの温度が上昇したり、その燃料消費率に
対して適切な機関出力が得られなかったりすることを抑
制することができる。
【0275】請求項4に記載の発明によれば、第2の酸
素センサの酸素濃度信号は第1の学習手段による学習値
と第2の学習手段による学習値との比に基づいて予め補
正されるため、同第2の酸素センサの酸素濃度信号のず
れの傾向を予め吸収することができる。特に、この補正
は理論空燃比よりも希薄側での機関制御時や過渡条件で
の機関制御時においても実行することができる。
【0276】また、上記第2の学習手段は上記補正され
た第2の酸素センサの酸素濃度信号に基づいて学習する
ため、同第2の学習手段による学習値を上記第1の学習
手段による学習値並みの算出精度とすることができる。
【0277】さらに、このように算出された第2の学習
手段による学習値が空燃比を決定するパラメータを補正
する学習値として選択される場合には、同パラメータを
好適に補正することができる。
【0278】上記空燃比を決定するパラメータとして、
上記機関に噴射供給する燃料量を補正する場合には、同
燃料量を好適に補正することができる。そしてこのよう
に補正された燃料量に基づき、燃料噴射が実行される場
合には、例えば燃料が過剰に噴射供給されて燃料消費率
が悪化したり、逆に過小に噴射供給されてノッキングや
プレイグニションが発生したり、同機関から排出される
排気ガスの温度が上昇したり、あるいは十分な機関出力
が得られなっかたりすることを抑制することができる。
【0279】また、上記空燃比を決定するパラメータと
して、上記機関に吸入される空気量を補正する場合に
は、同空気量を好適に補正することができる。そしてこ
のように補正された空気量により、例えば点火時期を算
出する場合には、同点火時期を好適に算出することがで
きる。このため、例えば点火が過進角で実行されてノッ
キングやプレイグニションが発生したり、その燃料消費
率に対して適切な機関出力が得られなかったり、逆に点
火が過遅角で実行されて上記機関から排出される排気ガ
スの温度が上昇したり、その燃料消費率に対して適切な
機関出力が得られなかったりすることを抑制することが
できる。また、特に理論空燃比から同理論空燃比よりも
希薄側への移行時、又はその逆の移行時においては、上
記第1の学習手段による学習値と上記第2の学習手段に
よる学習値とのずれ(吸入空気量のずれ)が低減される
ため、同移行時の上記機関の制御性能が向上することに
より、排気ガス中のHC,CO,NOxを低減すること
ができる。また、上記機関が車両に搭載される場合に
は、同車両のドライバビリティを向上することができ
る。
【0280】請求項5に記載の発明によれば、酸素濃度
信号補正手段は、複数の機関運転領域のいずれか一領域
にて求めた上記学習値の比に基づき同複数の機関運転領
域の全ての領域に亘って上記第2の酸素センサの酸素濃
度信号を補正するため、その演算負荷を軽減することが
できる。
【0281】また、上記複数の機関運転領域のいずれか
一領域にて求めた上記学習値の比に基づき、未だ上記学
習値の比が求められていない領域における上記第2の酸
素センサの酸素濃度信号を補正するため、同領域におけ
る上記第2の酸素センサの酸素濃度信号を予め正確に補
正することができる。
【0282】さらに、上記第2の学習手段は上記複数の
機関運転領域ごとに、上記補正された第2の酸素センサ
の酸素濃度信号に基づいて学習するため、同第2の学習
手段による学習値を予め正確に算出することができる。
【0283】請求項6に記載の発明によれば、上記酸素
濃度信号補正手段は上記第2の酸素センサの動作不安定
領域以外の領域のいずれか一領域にて求めた上記学習値
の比に基づき、未だ同学習値の比が求められていないこ
れら領域における上記第2の酸素センサの酸素濃度信号
を補正するため、同領域における上記第2の酸素センサ
の酸素濃度信号を予め正確に補正することができる。
【0284】また、このような補正は上記第2の酸素セ
ンサの動作不安定領域以外の領域で実施されるため、同
領域内においてはより正確に同第2の酸素濃度信号を補
正することができる。
【0285】さらに、上記第2の酸素センサの動作不安
定領域以外の領域内においては、上記第2の学習手段に
よる学習値を予め、より正確に算出することができる。
請求項7〜9に記載の発明によれば、上記第2の酸素セ
ンサの異常の有無を検出することにより、同第2の酸素
センサの異常時の上記第2の酸素センサの酸素濃度信号
の誤検出、及び上記第2の学習手段による学習値の誤算
出を好適に回避することができる。
【0286】特に請求項8に記載の発明の構成によれ
ば、上記第1の学習手段による学習値と上記第2の学習
手段による学習値とのずれの度合いに基づき、上記第2
の酸素センサの異常の有無を検出しているため、上記機
関に噴射供給する燃料量のずれや同機関に吸入される空
気量のずれを吸収した状態で、同第2の酸素センサの異
常の有無を検出することができる。
【図面の簡単な説明】
【図1】本発明に係る制御装置の第1の実施の形態が適
用されるエンジンシステムの概要を示す略図。
【図2】同実施の形態の電気的構成を示すブロック図。
【図3】同実施の形態のメインルーチンを示すフローチ
ャート。
【図4】エンジン回転数及び吸気圧と基本燃料噴射量と
の関係を示すマップ。
【図5】同実施の形態のパラメータ算出ルーチンを示す
フローチャート。
【図6】同実施の形態の空燃比フィードバック補正係数
FAFS算出手順を示すフローチャート。
【図7】理論空燃比での空燃比フィードバック補正係数
FAFSの算出態様を示すタイムチャート。
【図8】同実施の形態の空燃比フィードバック補正係数
FAFL算出手順を示すフローチャート。
【図9】希薄空燃比での空燃比フィードバック補正係数
FAFLの算出態様を示すタイムチャート。
【図10】同実施の形態の空燃比学習値算出手順を示す
フローチャート。
【図11】同実施の形態の空燃比学習値算出手順を示す
フローチャート。
【図12】同実施の形態の酸素センサ空燃比学習値算出
手順を示すフローチャート。
【図13】同実施の形態の酸素センサ空燃比学習値算出
手順を示すフローチャート。
【図14】同実施の形態のリーンミクスチャセンサ空燃
比学習値算出手順を示すフローチャート。
【図15】同実施の形態のリーンミクスチャセンサ空燃
比学習値算出手順を示すフローチャート。
【図16】同実施の形態の酸素センサ学習終了判定手順
を示すフローチャート。
【図17】同実施の形態の酸素センサ学習終了判定手順
を示すフローチャート。
【図18】同実施の形態のリーンミクスチャセンサ学習
終了判定手順を示すフローチャート。
【図19】同実施の形態のリーンミクスチャセンサ学習
終了判定手順を示すフローチャート。
【図20】同実施の形態のリーンミクスチャセンサ異常
検出手順を示すフローチャート。
【図21】同実施の形態のリーンミクスチャセンサ異常
検出手順を示すフローチャート。
【図22】同実施の形態の空気量補正係数算出手順を示
すフローチャート。
【図23】同実施の形態の空気量補正係数算出手順を示
すフローチャート。
【図24】同実施の形態の点火時期算出手順を示すフロ
ーチャート。
【図25】エンジン回転数及び吸気圧と基本点火時期と
の関係を示すマップ。
【図26】同実施の形態の点火時期算出手順を示すフロ
ーチャート。
【図27】空気量補正係数と点火時期補正係数との関係
を示すマップ。
【図28】酸素濃度信号に相当する空燃比とノック信号
との関係を示すグラフ。
【図29】第2の実施の形態のリーンミクスチャセンサ
異常検出手順を示すフローチャート。
【図30】第3の実施の形態のリーンミクスチャセンサ
補正値制御手順を示すフローチャート。
【図31】同実施の形態のリーンミクスチャセンサ補正
値制御手順を示すフローチャート。
【図32】第4の実施の形態のリーンミクスチャセンサ
補正値制御手順を示すフローチャート。
【図33】同実施の形態のリーンミクスチャセンサ補正
制御手順を示すフローチャート。
【図34】空気量とヒータ制御電流、ヒータ温度及びリ
ーンミクスチャセンサ温度との関係を示すグラフ。
【図35】第5の実施の形態のリーンミクスチャセンサ
補正値制御手順を示すフローチャート。
【図36】実際の空燃比と酸素センサの酸素濃度信号と
の関係を示すグラフ。
【図37】実際の空燃比とリーンミクスチャセンサの酸
素濃度信号との関係を示すグラフ。
【符号の説明】
1…エンジン、6…排気通路、9…インジェクタ、11
…点火プラグ、13…イグナイタ、17…吸気圧セン
サ、20…アイドルスイッチ、25…酸素センサ、26
…リーンミクスチャセンサ、27…クランク角センサ、
28…ノックセンサ、61…ECU。

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】内燃機関の排気通路に設けられた酸素濃淡
    電池型の第1の酸素センサ及び限界電流型の第2の酸素
    センサの各酸素濃度信号に基づいて、それぞれ理論空燃
    比及び同理論空燃比よりも希薄側での機関制御を行う内
    燃機関の制御装置において、 前記第1の酸素センサの酸素濃度信号に基づいて空燃比
    を決定するパラメータのずれを学習する第1の学習手段
    と、 前記第2の酸素センサの酸素濃度信号に基づいて空燃比
    を決定するパラメータのずれを学習する第2の学習手段
    と、 前記理論空燃比及び同理論空燃比よりも希薄側での機関
    制御に際して、前記第1の学習手段による学習が終了し
    ていることを条件に同第1の学習手段による学習値を優
    先的に選択し、該選択した学習値に基づき前記空燃比を
    決定するパラメータを補正する補正手段と、 を備えることを特徴とする内燃機関の制御装置。
  2. 【請求項2】前記補正手段は、前記選択した学習値に基
    づき、前記機関に噴射供給する燃料量を補正するもので
    ある請求項1記載の内燃機関の制御装置。
  3. 【請求項3】前記補正手段は、前記選択した学習値に基
    づき、前記機関に吸入される空気量を補正するものであ
    る請求項1記載の内燃機関の制御装置。
  4. 【請求項4】請求項1〜3のいずれかに記載の内燃機関
    の制御装置において、 前記第1の学習手段による学習値と前記第2の学習手段
    による学習値との比に基づいて前記第2の酸素センサの
    酸素濃度信号を補正する酸素濃度信号補正手段を更に備
    えることを特徴とする内燃機関の制御装置。
  5. 【請求項5】前記第1及び第2の学習手段はそれぞれ、
    前記機関に吸入される空気量に応じて区分した複数の機
    関運転領域において前記空燃比を決定するパラメータの
    ずれを学習するものであり、 前記酸素濃度信号補正手段は、前記複数の機関運転領域
    のいずれか一領域にて求めた前記学習値の比に基づき同
    複数の機関運転領域の全ての領域に亘って前記第2の酸
    素センサの酸素濃度信号を補正する請求項4記載の内燃
    機関の制御装置。
  6. 【請求項6】前記第1及び第2の学習手段はそれぞれ、
    前記機関に吸入される空気量に応じて区分した複数の機
    関運転領域において前記空燃比を決定するパラメータの
    ずれを学習するものであり、 前記酸素濃度信号補正手段は、前記複数の機関運転領域
    のうち前記第2の酸素センサの動作不安定領域ではそれ
    ら領域の別に前記学習値の比に基づく同センサの酸素濃
    度信号の補正を行い、その他の領域ではそれら領域のい
    ずれか一領域にて求めた前記学習値の比に基づきそれら
    領域の全ての領域に亘って同第2の酸素センサの酸素濃
    度信号を補正する請求項4記載の内燃機関の制御装置。
  7. 【請求項7】請求項1〜6のいずれかに記載の内燃機関
    の制御装置において、 前記第2の酸素センサの異常の有無を検出する異常検出
    手段を更に備えることを特徴とする内燃機関の制御装
    置。
  8. 【請求項8】前記異常検出手段は、前記第1の学習手段
    による学習値と前記第2の学習手段による学習値とのず
    れの度合いに基づいて前記第2の酸素センサの異常の有
    無を検出するものである請求項7記載の内燃機関の制御
    装置。
  9. 【請求項9】請求項7記載の内燃機関の制御装置におい
    て、 内燃機関は同機関のノッキングの有無を検出するノック
    センサを備え、 前記異常検出手段は、前記ノックセンサから出力される
    ノック信号の挙動に基づいて前記第2の酸素センサの異
    常の有無を検出するものであることを特徴とする内燃機
    関の制御装置。
JP3167698A 1998-02-13 1998-02-13 内燃機関の制御装置 Pending JPH11229930A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3167698A JPH11229930A (ja) 1998-02-13 1998-02-13 内燃機関の制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3167698A JPH11229930A (ja) 1998-02-13 1998-02-13 内燃機関の制御装置

Publications (1)

Publication Number Publication Date
JPH11229930A true JPH11229930A (ja) 1999-08-24

Family

ID=12337723

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3167698A Pending JPH11229930A (ja) 1998-02-13 1998-02-13 内燃機関の制御装置

Country Status (1)

Country Link
JP (1) JPH11229930A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6848439B2 (en) 2001-11-08 2005-02-01 Hitachi Unisia Automotive, Ltd. Air-fuel ratio control apparatus, air-fuel ratio detecting apparatus and methods thereof for engine
US6918385B2 (en) 2001-11-08 2005-07-19 Hitachi, Ltd. Air-fuel ratio detecting apparatus of engine and method thereof
WO2007020748A1 (ja) * 2005-08-18 2007-02-22 Isuzu Motors Limited 燃料噴射制御システム
JP2009002301A (ja) * 2007-06-25 2009-01-08 Denso Corp ディーゼル機関の燃料噴射制御装置
JP2012136964A (ja) * 2010-12-24 2012-07-19 Daihatsu Motor Co Ltd 内燃機関の制御装置

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6848439B2 (en) 2001-11-08 2005-02-01 Hitachi Unisia Automotive, Ltd. Air-fuel ratio control apparatus, air-fuel ratio detecting apparatus and methods thereof for engine
US6918385B2 (en) 2001-11-08 2005-07-19 Hitachi, Ltd. Air-fuel ratio detecting apparatus of engine and method thereof
WO2007020748A1 (ja) * 2005-08-18 2007-02-22 Isuzu Motors Limited 燃料噴射制御システム
US7925419B2 (en) 2005-08-18 2011-04-12 Isuzu Motors Limited Fuel injection control system
JP2009002301A (ja) * 2007-06-25 2009-01-08 Denso Corp ディーゼル機関の燃料噴射制御装置
JP4706670B2 (ja) * 2007-06-25 2011-06-22 株式会社デンソー ディーゼル機関の燃料噴射制御装置
JP2012136964A (ja) * 2010-12-24 2012-07-19 Daihatsu Motor Co Ltd 内燃機関の制御装置

Similar Documents

Publication Publication Date Title
US6742379B2 (en) Intake air oxygen concentration sensor calibration device and method
JP4643550B2 (ja) 空燃比制御装置
JP5026337B2 (ja) 多気筒内燃機関の制御装置
JP7087609B2 (ja) エンジン制御装置
JP5278466B2 (ja) 気筒間空燃比ばらつき異常検出装置
JPH09126015A (ja) 内燃機関の空燃比制御装置
JP6149828B2 (ja) 内燃機関の制御装置
US6318349B1 (en) Air-fuel ratio control apparatus of internal combustion engine and control method for the same
US7168422B1 (en) Control apparatus for an internal combustion engine
US5181499A (en) Apparatus for diagnosing abnormality in fuel injection system and fuel injection control system having the apparatus
JP5337140B2 (ja) 内燃機関の空燃比制御装置
JPH06229290A (ja) 内燃機関の空燃比制御装置
JPH11229930A (ja) 内燃機関の制御装置
JP4429336B2 (ja) 空燃比制御装置
US20040050378A1 (en) Air-fuel ratio control apparatus for internal combustion engine
JP2927074B2 (ja) 内燃機関の空燃比制御装置
JP2000097088A (ja) 内燃機関の燃料噴射量制御装置
JPH11287145A (ja) 多気筒内燃機関の空燃比制御装置
JP5178634B2 (ja) 内燃機関の空燃比制御方法
JP3973387B2 (ja) 内燃機関の吸気圧検出方法
JP6361534B2 (ja) 内燃機関の制御装置
JP5983691B2 (ja) 内燃機関の制御装置
WO2024018567A1 (ja) 内燃機関の制御装置
JP3489204B2 (ja) 内燃機関の制御装置
JP3765416B2 (ja) 内燃機関の空燃比制御装置