JPH10122016A - 内燃機関の空燃比制御装置 - Google Patents

内燃機関の空燃比制御装置

Info

Publication number
JPH10122016A
JPH10122016A JP8295841A JP29584196A JPH10122016A JP H10122016 A JPH10122016 A JP H10122016A JP 8295841 A JP8295841 A JP 8295841A JP 29584196 A JP29584196 A JP 29584196A JP H10122016 A JPH10122016 A JP H10122016A
Authority
JP
Japan
Prior art keywords
value
air
engine
fuel ratio
rotation fluctuation
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
JP8295841A
Other languages
English (en)
Inventor
Yusuke Tatara
裕介 多々良
Toru Yano
亨 矢野
Eisuke Kimura
英輔 木村
Kohei Hanada
晃平 花田
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.)
Honda Motor Co Ltd
Original Assignee
Honda Motor Co Ltd
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 Honda Motor Co Ltd filed Critical Honda Motor Co Ltd
Priority to JP8295841A priority Critical patent/JPH10122016A/ja
Publication of JPH10122016A publication Critical patent/JPH10122016A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Combined Controls Of Internal Combustion Engines (AREA)
  • Electrical Control Of Air Or Fuel Supplied To Internal-Combustion Engine (AREA)

Abstract

(57)【要約】 (修正有) 【課題】 内燃機関の加減速時を含むより広い運転領域
で適切にリーンバーン制御を行い、更に燃費の低減化を
図れる空燃比制御装置を提供する。 【解決手段】 基準値用リングバッファ(記憶手段)に
保存した各値を、夫々1回新しい値で更新し(S8
1)、移動平均値符号フラグ用記憶手段中の移動平均値
符号フラグFDMSPLUS(N)〜(N−7)の各値
が総て同一の値であるか否かを判別し(S82)、同一
値である時には、機関回転状態フラグFNECHGを1
に設定する(S83)、同一値でない時には、0に設定
する(S84)。1次及び2次バタワースフィルタによ
り移動平均値DMSMEをフィルタリングし(ステップ
85、S86)、1の時には、1次フィルタリングした
結果に基づいて回転変動量DMSSLBを算出する(S
88)、0の時には、2次フィルタリングした結果に基
づいて回転変動量を算出する(S89)。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、内燃機関の空燃比
制御装置に関し、特に、所謂リーンバーン制御時に、機
関の回転変動量に応じて機関に供給する混合気の空燃比
をリッチ方向又リーン方向に変更制御する内燃機関の空
燃比制御装置に関する。
【0002】
【従来の技術】近年、内燃機関の燃費の向上を図るため
に、機関に供給する混合気の空燃比を理論空燃比よりリ
ーン側の空燃比(以下「リーン空燃比」という)に制御
する、所謂リーンバーン制御が広く採用されている。
【0003】かかるリーンバーン制御の手法としては、
例えば、リーンバーン制御を行うことが可能な所定条件
(リーンバーン制御許可条件)が成立した場合に、目標
空燃比を理論空燃比からリーン目標空燃比に変更し、こ
の時点を開始点として、検出された回転変動量と所定の
閾値とを比較し、回転変動量がこの閾値より小さいと
き、即ち機関の燃焼状態が安定であるときには空燃比を
よりリーン方向に変更する一方、回転変動量がこの閾値
より大きいとき、即ち機関の燃焼状態が不安定であると
きには空燃比を若干リッチ方向に変更するようにフィー
ドバック制御することにより、混合気の空燃比を機関の
燃焼状態が不安定となってサージングが発生する限界と
なるリーン空燃比に制御するものが知られている。
【0004】
【発明が解決しようとする課題】しかしながら、上記従
来のリーンバーン制御方法では、回転変動量として前記
検出された値そのものを用いているため、この検出値が
機関の燃焼状態だけでなくそれ以外の要素(例えば、機
関の加速又は減速)によっても変動する場合には、この
燃焼状態以外の要素に起因した回転変動を燃焼状態の変
化による回転変動と誤検知してしまうという問題があっ
た。
【0005】図23は、検出された回転変動量が機関の
加速に起因して変動することを示す図である。
【0006】同図中、縦軸は回転数を示し、横軸は時刻
を示している。そして、曲線C1は、機関の回転数の推
移を示し、曲線ΔMは、上記検出された回転変動量(以
下「回転変動検出値」という)を示し、曲線ΔMe1
は、回転変動検出値ΔMの基となる検出値を示し、曲線
ΔMe2は、検出値ΔMe1から機関の燃焼状態に応じ
た変動分が除去されたものを示し、直線(破線)ΔMe
0は、回転変動検出値ΔMを算出するための回転変動量
検出用基準値を示している。同図から、機関は、時間t
1−t2では加速状態にあり、それ以外の時間では定常
状態にあることが分かる。
【0007】上記従来のリーンバーン制御方法では、回
転変動検出値ΔMを次式(101)により算出して前記
所定の閾値ΔMREFと比較し、その比較結果に応じ
て、上述のように、空燃比をリッチ方向又はリーン方向
に変更制御するようにしていた。
【0008】 ΔM=ΔMe1−ΔMe0 …(101) したがって、同図に示すように、時間t1−t2、即ち
機関が加速状態にあるときには、この加速状態に応じた
変動分が検出値ΔMe1に加算されるため、機関の燃焼
状態が悪化していないにも拘わらず、回転変動検出値Δ
Mは、前記所定の閾値ΔMREF(図中、二点鎖線で示
す直線)を超えることになる。その結果、上記従来の空
燃比制御方法では、これを機関の燃焼状態の不安定化に
よるものと誤検知し、この間空燃比をリッチ方向に変更
し続けるように制御する。
【0009】一方、機関が減速状態にあるときにも、上
述の問題と同様の問題が生じる。即ち、このとき、機関
の燃焼状態が悪化しているにも拘わらず、回転変動検出
値ΔMは所定の閾値ΔMREFより小さくなるため、こ
れを機関が安定していると誤検知して、この間空燃比を
リーン方向に変更し続けるように制御する。
【0010】この問題に対処するため、機関が加速状態
又は減速状態にあるときには、リーンバーン制御を行わ
ないようにしている。
【0011】本発明は、この点に鑑みてなされたもの
で、機関の加減速時を含むより広い運転領域に亘って適
切にリーンバーン制御を行い、これによりさらに燃費の
低減化を図ることが可能な内燃機関の空燃比制御装置を
提供することを目的とする。
【0012】
【課題を解決するための手段】上記目的を達成するため
本発明は、内燃機関の回転変動量を検出する回転変動検
出手段と、前記機関に供給する混合気の空燃比を理論空
燃比よりリーン側の目標空燃比に制御する際に、前記検
出された回転変動量に応じて前記混合気の空燃比をリッ
チ方向又はリーン方向に変更して前記機関の回転変動量
が増大しない限界リーン空燃比に制御する空燃比制御手
段とを備えた内燃機関の空燃比制御装置において、前記
空燃比制御手段は、前記検出された回転変動量から前記
機関の燃焼変動に起因する成分を抽出し、該機関の燃焼
変動に起因する成分を抽出された回転変動量に基づいて
前記混合気の空燃比を前記限界リーン空燃比に制御する
ことを特徴とする。
【0013】これにより、機関の加減速時を含むより広
い運転領域に亘って適切にリーンバーン制御を行うこと
ができる。
【0014】また、好ましくは、前記空燃比制御手段
は、前記検出された回転変動量から前記機関の燃焼変動
に起因する成分を除去して回転変動量検出用基準値を算
出する基準値算出手段と、前記検出された回転変動量と
該算出された回転変動量検出用基準値とを比較する比較
手段と、該比較手段の比較結果に応じて前記混合気の空
燃比を前記限界リーン空燃比に制御する制御手段とを有
することを特徴とする。
【0015】これにより、上記効果と同様の効果を奏す
ることができる。
【0016】さらに、好ましくは、前記回転変動検出手
段により検出された回転変動量に基づいて前記機関が加
速状態又は減速状態にあるか否かを判別する加減速状態
判別手段を有し、前記基準値算出手段は、前記加減速状
態検出手段により前記機関が加速状態又は減速状態にあ
ると判別されたときには、位相遅れが小さく追従性の高
い第1の低域通過フィルタにより前記検出された回転変
動量から前記機関の燃焼変動に起因する成分を除去して
前記回転変動量検出用基準値を算出する一方、前記加減
速状態検出手段により前記機関が加速状態又は減速状態
にないと判別されたときには、追従性は低いが安定度の
高い第2の低域通過フィルタにより前記検出された回転
変動量から前記機関の燃焼変動に起因する成分を除去し
て前記回転変動量検出用基準値を算出することを特徴と
する。
【0017】これにより、上記効果をさらに高めること
ができる。
【0018】また、さらに、好ましくは、前記加減速状
態判別手段は、前記回転変動検出手段により検出された
回転変動量の値が所定回数連続して同一符号をとるとき
に前記機関は加速状態又は減速状態にあると判別する一
方、該検出された回転変動量の値が前記所定回数連続し
て同一符号をとらないときに前記機関は定常状態にある
と判別することを特徴とする。
【0019】これにより、加減速状態又は減速状態を検
出するための特別の検出装置を追加することなく、簡単
に機関の加速状態を判別することができる。
【0020】
【発明の実施の形態】以下本発明の実施の形態を図面を
参照して説明する。
【0021】図1は本発明の実施の一形態に係る内燃機
関(以下「エンジン」という)及びその制御装置の全体
の構成図であり、エンジン1の吸気管2の途中にはスロ
ットル弁3が配されている。スロットル弁3にはスロッ
トル弁開度(θTH)センサ4が連結されており、当該
スロットル弁3の開度に応じた電気信号を出力して電子
コントロールユニット(以下「ECU」という)5に供
給する。
【0022】燃料噴射弁6はエンジン1とスロットル弁
3との間且つ吸気管2の図示しない吸気弁の少し上流側
に各気筒毎に設けられており、各噴射弁は図示しない燃
料ポンプに接続されているとともにECU5に電気的に
接続されて当該ECU5からの信号により燃料噴射弁6
の開弁時間が制御される。
【0023】一方、スロットル弁3の直ぐ下流には管7
を介して吸気管内絶対圧(PBA)センサ8が設けられ
ており、吸気管内絶対圧を検出して対応する絶対圧信号
を前記ECU5に供給する。また、その下流には吸気温
(TA)センサ9が取付けられており、吸気温TAを検
出して対応する電気信号を出力してECU5に供給す
る。
【0024】エンジン1の本体に装着されたエンジン水
温(TW)センサ10はサーミスタ等から成り、エンジ
ン水温(冷却水温)TWを検出して対応する温度信号を
出力してECU5に供給する。
【0025】エンジン1の図示しないカム軸周囲又はク
ランク軸周囲には、エンジン1の特定の気筒の所定クラ
ンク角度位置で信号パルス(以下「CYL信号パルス」
という)を出力する気筒判別センサ(以下「CYLセン
サ」という)13、各気筒の吸入行程開始時の上死点
(TDC)に関し所定クランク角度前のクランク角度位
置で(4気筒エンジンではクランク角180゜毎に)T
DC信号パルスを発生するTDCセンサ12、及び前記
TDC信号パルスの周期より短い一定クランク角(例え
ば30゜)周期で1パルス(以下「CRK信号パルス」
という)を発生するクランク角センサ(以下「CRKセ
ンサ」という)11が取り付けられており、CYL信号
パルス、TDC信号パルス及びCRK信号(クランク角
信号)パルスはECU5に供給される。
【0026】三元触媒15はエンジン1の排気管14に
配置されており、排気ガス中のHC,CO,NOx等の
成分の浄化を行う。排気管14の三元触媒15の上流側
には、空燃比センサとしての酸素濃度センサ16(以下
「O2センサ16」という)が装着されており、このO
2センサ16は排気ガス中の酸素濃度を検出し、その検
出値に応じた電気信号を出力しECU5に供給する。
【0027】ECU5には、さらにエンジン1が搭載さ
れた車両の走行速度Vを検出する車速センサ20、当該
車両のトランスミッションのギヤ比(ギヤ位置)を検出
するギヤ比センサ21等の各種センサが接続されてお
り、これらのセンサの検出信号がECU5に供給され
る。また、ギヤ比は車速Vとエンジン回転数NEとから
求めてもよい。
【0028】ECU5は各種センサからの入力信号波形
を整形し、電圧レベルを所定レベルに修正し、アナログ
信号値をデジタル信号値に変換する等の機能を有する入
力回路5a、中央演算処理回路(以下「CPU」とい
う)5b、CPU5bで実行される各種演算プログラム
及び演算結果等を記憶する記憶手段5c、前記燃料噴射
弁6に駆動信号を供給する出力回路5d等から構成され
る。
【0029】CPU5bは上述の各種エンジンパラメー
タ信号に基づいて、排気ガス中の酸素濃度に応じたフィ
ードバック制御運転領域やオープンループ制御運転領域
等の種々のエンジン運転状態を判別するとともに、エン
ジン運転状態に応じ、次式(1)に基づき、前記TDC
信号パルスに同期する燃料噴射弁6の燃料噴射時間TO
UTを演算する。
【0030】 TOUT=TI×KLSAFM×KO2×K1+K2 …(1) ここに、TIは基本燃料量、具体的にはエンジン回転数
NEと吸気管内絶対圧PBAとに応じて決定される基本
燃料噴射時間であり、このTI値を決定するためのTI
マップが記憶手段5cに記憶されている。
【0031】KLSAFMは、エンジン1及び当該車両
の所定運転状態において「1.0」より小さい値に設定
されるリーンバーン補正係数KLSAFに対して体積効
率補正をおこなった後の修正リーンバーン補正係数であ
り、この修正リーンバーン補正係数KLSAFMの算出
手法は、図7を参照して後述する。
【0032】KO2は、O2センサ16の出力に基づい
て算出される空燃比補正係数であり、空燃比フィードバ
ック制御中はO2センサ16によって検出された空燃比
(酸素濃度)が理論空燃比に一致するように設定され、
オープンループ制御中はエンジン運転状態に応じた所定
値又は学習値に設定され、また、リーンバーン制御中は
学習値に設定される。
【0033】K1及びK2は、それぞれ各種エンジンパ
ラメータ信号に応じて演算される他の補正係数及び補正
変数であり、エンジン運転状態に応じた燃費特性、エン
ジン加速特性等の諸特性の最適化が図られるような値に
設定される。
【0034】以下CPU5bで実行される制御処理を説
明する。
【0035】図2は、空燃比補正係数KO2の学習値K
REFを算出する処理のフローチャートであり、TDC
信号パルスの発生に同期して実行される。
【0036】先ずステップS1では、エンジン回転数N
Eが所定回転数NKREF(例えば4000rpm)よ
り低いか否かを判別し、NE<NKREFであるとき
は、吸気温TAが所定吸気温TAREF(例えば64
℃)より低いか否かを判別する(ステップS2)。そし
て、NE≧NKREF又はTA≧TAREFであるとき
は、空燃比補正係数KO2の学習領域であることを
「1」で示すKO2学習領域フラグFKREFZNを
「0」に設定して(ステップS3)、本処理を終了す
る。
【0037】一方NE<NKREF且つTA<TARE
Fであるときは、KO2学習領域フラグFKREFZN
を「1」に設定し(ステップS4)、リーンバーン制御
実行時に使用するリーン制御学習値KREFAFの算出
領域(以下「KREFAF学習領域」という)であるこ
とを「1」で示すKREFAF学習領域フラグFSLB
REFが「1」か否かを判別する(ステップS5)。な
お、このフラグFSLBREFは、後述する図10及び
11の処理で設定される。
【0038】ステップS5の答が肯定(YES)、即ち
KREFAF学習領域であるときは、次式(2)により
空燃比補正係数KO2の学習値KREFAFを算出して
(ステップS6)、本処理を終了する。
【0039】 KREFAF(N)=CREFAF×KO2/A+(A−CREFAF)×K REFAF(N−1)/A …(2) ここで、(N),(N−1)はそれぞれ今回値及び前回
値であることを示すために付している。また、Aは、例
えば10000(16進)に設定される定数、CREF
AFは、1からAの間の値に設定されるリーン制御学習
値KREFAF算出用のなまし係数であり、KO2は、
比例制御実行直後(即ちO2センサ16の出力の反転直
後において比例項を加算又は減算したとき)の空燃比補
正係数値を用いる。
【0040】ステップS5でFSLBREF=0であっ
てKREFAF学習領域でないときは、エンジンがアイ
ドル状態にあることを「1」で示すアイドルフラグFI
DLEが「1」か否かを判別し(ステップS7)、アイ
ドル状態であるときは、次式(3)によりアイドル学習
値KREF0を算出して(ステップS8)、本処理を終
了する。
【0041】 KREF0(N)=CREF0×KO2/A+(A−CREF0)×KREF 0(N−1)/A …(3) ここで、CREF0は、1からAの間の値に設定される
アイドル学習値KREF0算出用のなまし係数である。
【0042】ステップS17でFIDLE=0であっ
て、エンジンがアイドル状態でないとき(以下「オフア
イドル状態」という)は、次式(4)によりオフアイド
ル学習値KRER1を算出する(ステップS9)。
【0043】 KREF1(N)=CREF1×KO2/A+(A−CREF1)×KREF 1(N−1)/A …(4) ここで、CREF1は、1からAの間の値に設定される
アイドル学習値KREF1算出用のなまし係数である。
【0044】続くステップS10では、オフアイドル学
習値KREF1の値が不適切(誤学習)と判定したこと
を「1」で示す誤学習フラグFDKREFが「1」か否
かを判別し、FDKREF=1であって誤学習と判定さ
れたときは、ステップS11を実行することなく直ちに
本処理を終了する。
【0045】ステップS10の答が否定(NO)のとき
は、オフアイドル学習値KREF1とリーン制御学習値
KREFAFとの偏差(KREF1−KREFAF)が
第1所定偏差DKREFH(例えば0.04)より小さ
いか否かを判別し(ステップS11)、(KREF1−
KREFAF)<DKREFHであるときは、直ちに本
処理を終了する一方、(KREF1−KREFAF)≧
DKREFHであるときは、リーン制御学習値KREF
AFの算出(学習)が終了したことを「1」で示す学習
終了フラグFSLBREFOKを「0」に設定するとと
もに(ステップS12)、ダウンカウントタイマtmS
LBREFに所定学習時間TSLBREFをセットして
スタートさせ(ステップS13)、本処理を終了する。
なお、タイマtmSLBREFは、リーン制御学習値K
REFAFの学習時間を計測するものであり、図11の
処理で参照される。
【0046】図3は、前記CRK信号パルスの発生時間
間隔の平均値CR12MEを算出するCR12ME算出
処理の手順を示すフローチャートであり、本処理は、C
RK信号パルスの発生毎にこれと同期して実行される。
なお、この平均値CR12MEは、図4を用いて後述す
るCRME値の移動平均値DMSMEの算出処理で使用
する。
【0047】図3において、ステップS21ではCRK
信号パルスの発生時間間隔(エンジン回転速度の逆数に
比例するパラメータ)の計測を行う。具体的には、図5
に示すようにクランク軸が30度回転する毎に順次CR
ME(n)を計測し、過去のデータをCRME(n−
1),CRME(n−2)…として更新し、保管する。
【0048】なお、クランク軸が180度回転する期間
を30度毎に分割し、それぞれ#0STG〜#5STG
(#0ステージ〜#5ステージ)と呼んでいる。
【0049】ステップS22では、次式(5)により1
1回前の計測値CRME(N−11)から最新の計測値
CRME(N)までの12個のCRME値の平均値とし
て、第1の平均値CR12ME(N)を算出する。
【0050】
【数1】 本実施の形態ではCRK信号パルスはクランク軸が30
度回転する毎に発生するので、第1の平均値CR12M
E(N)はクランク軸1回転に対応する平均値である。
このような平均化処理を行うことにより、クランク軸1
回転で1周期のエンジン回転のn次振動成分(n=1,
2,3…)を除去することができる。
【0051】なお、CRME(n)値に基づいてエンジ
ン回転速度NEが算出される。
【0052】図4は、CRME値の移動平均値DMSM
E(この値は、図9のフィルタ処理で使用する)を算出
するDMSME算出処理の手順を示すフローチャートで
あり、本処理は、TDC信号パルスの発生周期と同一周
期であって、#3STG(#3ステージ、図5参照)で
実行される。
【0053】図4において、先ずステップS31では、
移動平均値DMSMEが「0」以上(即ち符号が
「正」)であることを「1」で示し、「0」より小さい
(即ち符号が「負」)ことを「0」で示す移動平均値符
号フラグFDMSPLUSの前回値FDMSPLUS
(N−1)から7回前の値FDMSPLUS(N−7)
までの7個分の値を、それぞれ1回新しい値、即ちFD
MSPLUS(N)〜FDMSPLUS(N−6)で更
新する。本実施の形態では、移動平均値符号フラグFD
MSPLUSとして、今回値FDMSPLUS(N)か
ら7回前の値FDMSPLUS(N−7)までの8個分
の値を記憶できるリングバッファ(以下「移動平均値符
号フラグ用リングバッファ」という)を設け、この移動
平均値符号フラグ用リングバッファに常に最新の値を保
持するようにしている。
【0054】次にステップS32では、移動平均値DM
SMEの前回値DMSME(N−1)及び前々回値DM
SME(N−2)を、それぞれ1回新しい値、即ちDM
SME(N)及びDMSME(N−1)で更新する。本
実施の形態では、上記移動平均値符号フラグFDMSP
LUSと同様に、移動平均値DMSMEとして、今回値
DMSME(N)から前々回値DMSME(N−2)ま
での3個分の値を記憶できるリングバッファ(以下「移
動平均値用リングバッファ」という)を設け、この移動
平均値用リングバッファに常に最新の値を保持するよう
にしている。
【0055】続くステップS33では、次式(6)によ
り、第1の平均値CR12MEの5回前の算出値CR1
2ME(N−5)から最新の算出値CR12ME(N)
までの6個のCR12ME値の平均値として、第2の平
均値MSME(N)を算出する。
【0056】
【数2】 本実施の形態では、エンジン1は4気筒4サイクルエン
ジンであり、クランク軸が180度回転する毎にいずれ
かの気筒で点火が行われる。したがって、第2の平均値
MSME(N)は、第1の平均値CR12ME(N)の
点火周期毎の平均値である。このような平均化処理を行
うことにより、前回の燃焼から今回の燃焼の間の回転速
度の代表値を求めることができる。
【0057】そして、ステップS34では、エンジン回
転数NEに応じてKDMSSLBテーブルを検索し、回
転変動量DMSSLBを算出するとき(この算出は、後
述する図9のフィルタ処理中で行われる)に使用する係
数値KDMSSLBを決定する。
【0058】図6は、エンジン回転数NE(高回転時)
に対する係数値KDMSSLBの特性を示す図であり、
KDMSSLBテーブルには、このような特性の係数値
KDMSSLBがエンジン回転数に対応して記憶されて
いる。
【0059】ここで、係数KDMSSLBは、リーンバ
ーン制御時の制御精度がエンジン回転数NEに応じて変
化しないようにするために、エンジン回転数NEに反比
例するように設定される係数であり、回転変動量DMS
SLBがエンジン回転数NEに応じて変化しないように
するものである。
【0060】次いでステップS35では、次式(7)に
より移動平均値DMSME(N)を算出し、この算出結
果を、前記移動平均値用リングバッファの今回値を記憶
する領域に保存する。
【0061】 DMSME(N)=|MSME(N)−MSME(N−1)| …(7) 続くステップS36では、移動平均値DMSME(N)
が「0」以上であるか否か、即ちその符号が正であるか
否かを判別し、DMSME(N)≧0のときには、移動
平均値符号フラグFDMSPLUS(N)を「1」に設
定した(ステップS37)後に、本DMSME算出処理
を終了する一方、DMSME(N)<0のときには、移
動平均値符号フラグFDMSPLUS(N)を「0」に
設定した(ステップS38)後に、本DMSME算出処
理を終了する。このようにして、前記移動平均値符号フ
ラグ用リングバッファの今回値FDMSPLUS(N)
が更新される。
【0062】図7及び8は、修正リーンバーン補正係数
KLSAFMを算出する処理のフローチャートであり、
TDC信号パルスの発生に同期して実行される。
【0063】先ずステップS41では、エンジンの始動
(クランキング)中であることを「1」で示す始動フラ
グFSTMODが「1」か否かを判別し、始動中(FS
TMOD=1)のときは、以下の1)〜5)の処理を実
行して図8のステップS71に進む。
【0064】1)ダウンカウントタイマtmLEANに
始動直後リーンバーン禁止時間TLEANをセットして
スタートさせる(ステップS42)。
【0065】2)リーン制御学習値KREFAFの学習
時間を計測するダウンカウントタイマtmSLBREF
に所定学習時間TSLBREFをセットしてスタートさ
せる(ステップS43)。
【0066】3)リーンバーン制御の実行可能な運転領
域(以下「SLB領域」という)であることを「1」で
示すSLB領域内フラグFSLBZN、SLB領域内の
高負荷領域であることを「1」で示すSLB高負荷領域
フラグFSLBPZN及び登坂走行中と判断したことを
「1」で示す登坂フラグFTOHANを、それぞれ
「0」に設定する(ステップS44〜S46)。
【0067】4)エンジンの燃焼状態が不安定であるこ
とを「1」で示す燃焼状態フラグFAVEHLD、リー
ンバーンフィードバック制御実行中であることを「1」
で示すSLBF/B中フラグFSLBFB及びリーンバ
ーン制御実行中であることを「1」で示すSLB実行中
フラグFSLBを、それぞれ「0」に設定する(図8の
ステップS51,S53,S54)。
【0068】5)リーンバーン補正係数KLSAFを
「1.0」に設定する(ステップS52)。
【0069】一方、ステップS41で、エンジンの始動
中でない(FSTMOD=0)ときはステップS47に
進み、図9を用いて後述するフィルタ処理サブルーチン
を実行する。
【0070】続くステップS48では、図示しないSL
B領域判別処理を実行する。この処理では、車速V及び
その加速度に応じて、リーンバーン制御を行うか否かを
判断するための閾値が設定された領域テーブルの選択を
行う。領域テーブルには、エンジン回転数NEに対応し
て閾値となる所定吸気管内絶対圧PBATHが設定され
ている。
【0071】そして、ステップS49では、図10及び
11を用いて後述するKREFAF学習領域判断処理サ
ブルーチンを実行し、次いでステップS50では、SL
Bシフトチェンジ判断処理を実行する。SLBシフトチ
ェンジ判断処理では、シフトチェンジ(ギヤ比の変更)
を検出して、シフトダウン時はシフトダウン後のディレ
ー時間を計測するダウンカウントタイマtmSFTDL
Yに所定時間TSFTDLYをセットしてスタートさ
せ、シフトアップ時は該タイマtmSFTDLYの値を
「0」に設定する処理等を行う。
【0072】続くステップS55(図8)では、フュエ
ルカット中であることを「1」で示すフュエルカットフ
ラグFFCが「1」か否かを判別し、FFC=0であっ
てフュエルカット中でないときは、ダウンカウントタイ
マtmAFCにフュエルカット移行後の所定ディレー時
間TAFCDLYをセットしてスタートさせ(ステップ
S56)、前記燃焼状態フラグFAVEHLDが「1」
か否かを判別する(ステップS57)。FAVEHLD
=0であって燃焼状態が安定しているときは、ステップ
S60のDMSBAVE算出処理で使用するなまし係数
DMSSCRFを第1の値DMSSCRF0に設定し
(ステップS59)、FAVEHLD=1であって燃焼
状態が不安定のときは、第1の値DMSSCRF0より
小さい第2の値DMSSCRF1に設定して(ステップ
S58)、ステップS60に進む。これにより、燃焼状
態が不安定のときは回転変動量DMSSLBの今回値の
寄与度を低下させるようにしている。なお、燃焼状態
は、回転変動量DMSSLBが所定値以下のとき、安定
していると判定する。
【0073】ステップS60では、次式(8)に上記な
まし係数DMSSRFを適用してエンジンの回転変動量
DMSSLBの平均値DMSBAVEを算出する。
【0074】 DMSBAVE(N)=DMSSCRF×DMSSLB/A+(A−DMSS CRF)×DMSBAVE(N−1)/A …(8) ここで、回転変動量DMSSLBは、前記ステップS4
7のフィルタ処理サブルーチン(その詳細は図9を用い
て後述する)で算出され、この値が小さいほどエンジン
の燃焼状態が安定していることを示す。
【0075】続くステップS61では、目標空燃比KO
BJの算出処理を実行する。この処理は、図12〜14
に基づいて後述する。なお、KOBJ値は、空燃比A/
Fの逆数に比例し、理論空燃比のとき「1.0」とする
当量比として定義されている。したがって、リーン制御
実行中はKOBJ値は「1.0」より小さい値に設定さ
れる。
【0076】次いでリーンバーン補正係数KLSAFを
ステップS61(又は後述するステップS64)で算出
したKOBJ値に設定し(ステップS66)、続くステ
ップS67では、図15に基づいて後述するKLSAF
リミット処理を実行し、ステップS68に進む。
【0077】前記ステップS55に戻り、FFC=1で
あってフュエルカット中のときは、前記ステップS56
でセットしたタイマtmAFCの値が「0」か否かを判
別し(ステップS62)、tmAFC>0である間はリ
ーンバーン補正係数KLSAFを前回値保持として(ス
テップS65)、ステップS68に進む。その後tmA
FC=0となると、後述する図14の処理で参照するダ
ウンカウントタイマtmAFCLNにフュエルカット終
了後の所定時間TAFCLNをセットしてスタートさせ
(ステップS63)、目標空燃比KOBJをフュエルカ
ット時用の所定値KOBJFCに設定して(ステップS
64)、前記ステップS66に進む。
【0078】ステップS68では、算出したKLSAF
値が「1.0」より小さいか否かを判別し、KLSAF
<1.0であるときは、SLB実行中フラグFSLBを
「1」に設定する(ステップS70)一方、KLSAF
=1.0であるときは、FSLB=0として(ステップ
S69)、ステップS71に進む。
【0079】ステップS71,S72では、体積効率補
正を行うべく、KLSAF値に応じて図18に示すKL
SAFMテーブルを検索し、修正リーンバーン補正係数
KLSAFMを算出し、次いでギヤ位置をあらわすパラ
メータNGR,NGRATを更新して(ステップS7
3)、本処理を終了する。
【0080】ここで、体積効率補正は、リーンバーン制
御時は燃料冷却効果が小さくなり充填効率が下がるの
で、リーンバーン補正係数KLSAFをそのまま基本燃
料量TIに乗算したのでは、空燃比が所望の値からずれ
ることを考慮して行うものである。即ち、基本燃料量T
Iのマップは理論空燃比が得られるように設定されてい
るので、リーンバーン制御時は補正係数値がより小さく
なるようにKLSAF値が補正され、修正リーンバーン
補正係数KLSAFMが算出される。
【0081】また、ステップS73のNGRはマニュア
ルトランスミッションのギヤ位置パラメータ(NGR=
1〜5)であり、NGRATはオートマチックトランス
ミッションのギヤ位置パラメータ(NGRAT=1〜
4)である。
【0082】図9は、図7のステップS47におけるフ
ィルタ処理サブルーチンの詳細な手順を示すフローチャ
ートである。
【0083】同図において、先ずステップS81では、
1次バタワースフィルタにより前記移動平均値DMSM
E(前記図4のステップS35で算出された値)をフィ
ルタリングして得られたフィルタリング結果(この値
は、エンジンが加速状態にあるときに回転変動量検出用
基準値として使用するため、以下「加速時回転変動量検
出用基準値」という)DMSMEAVE1の前回値DM
SMEAVE1(N−1)及び前々回値DMSMEAV
E1(N−2)を、それぞれ1回新しい値、即ちDMS
MEAVE1(N)及びDMSMEAVE1(N−1)
で更新するととともに、2次バタワースフィルタにより
前記移動平均値DMSMEをフィルタリングして得られ
たフィルタリング結果(この値は、エンジンがクルーズ
状態にあるときに回転変動量検出用基準値として使用す
るため、以下「クルーズ時回転変動量検出用基準値」と
いう)DMSMEAVE2の前回値DMSMEAVE2
(N−1)及び前々回値DMSMEAVE2(N−2)
を、それぞれ1回新しい値、即ちDMSMEAVE2
(N)及びDMSMEAVE2(N−1)で更新する。
本実施の形態では、前記図4のステップS32と同様
に、加速時回転変動量検出用基準値及びクルーズ時回転
変動量検出用基準値として、それぞれDMSMEAVE
1(N)〜DMSMEAVE1(N−2)及びDMSM
EAVE2(N)〜DMSMEAVE1(N−2)の各
3個分の値を記憶できるリングバッファ(以下「基準値
用リングバッファ」という)を設け、この基準値用リン
グバッファに常に最新の値を保持するようにしている。
【0084】次に、ステップS82では、前記移動平均
値符号フラグ用リングバッファ中の移動平均値符号フラ
グFDMSPLUS(N)〜FDMSPLUS(N−
7)の各値がすべて同一の値であるか否かを判別し、各
値がすべて同一値であるとき、即ち移動平均値DMSM
Eの今回値から7回前までの値の各符号が同一であると
きには、エンジンは加速状態にあると判別して、エンジ
ンが加速状態であることを「1」で示し、エンジンがク
ルーズ状態であることを「0」で示すエンジン回転状態
フラグFNECHGを「1」に設定する(ステップS8
3)一方、各値がすべて同一値でないとき、即ち移動平
均値DMSMEの今回値から7回前までの値の各符号に
「正」及び「負」が混在しているときには、エンジンは
クルーズ状態にあると判別して、このエンジン回転状態
フラグFNECHGを「0」に設定する(ステップS8
4)。
【0085】このように、本実施の形態では、移動平均
値符号フラグ用リングバッファに記憶された連続する移
動平均値符号フラグFDMSPLUSの値、即ち連続す
る移動平均値DMSMEの符号がすべて同一であるか否
かを判別することにより、エンジンが加速状態にあるか
クルーズ状態にあるかを判別している。したがって、エ
ンジンが加速状態にあるか否かを検出するセンサ等の特
別な装置を設けることなく、簡単にエンジンの運転状態
を判別でき、これにより、製造コストを低減させること
ができる。
【0086】続くステップS85では、次式(9)によ
り加速時回転変動量検出用基準値DMSMEAVE1
(N)を算出し、この算出結果を前記基準値用リングバ
ッファの加速時回転変動量検出用基準値の今回値を記憶
する領域に保存する。
【0087】 DMSMEAVE1(N)=0.2043×DMSME(N)+0.2043 ×DMSME(N−1)+0.5914DMSMEAVE1(N−1) …(9 ) ここで、式(9)は、1次のバタワースフィルタ(II
Rデジタルフィルタ)によってCRME値の移動平均値
DMSMEをフィルタリングする処理を示している。バ
タワースフィルタは、低域通過フィルタの1つであり、
このフィルタリング処理により、移動平均値DMSME
からその高周波成分、即ち前記図23の曲線ΔMe1と
曲線ΔMe2との差分(特に、時間t1−t2における
差分)が除去され、エンジンの加速状態に応じた変動分
ΔMe2のみが分離される。
【0088】次いでステップS86では、次式(10)
によりクルーズ時回転変動量検出用基準値DMSMEA
VE2(N)を算出し、この算出結果を前記基準値用リ
ングバッファのクルーズ時回転変動量検出用基準値の今
回値を記憶する領域に保存する。
【0089】 DMSMEAVE2(N)=0.0134×DMSME(N)+0.0267 ×DMSME(N−1)+0.0134×DMSME(N−2)+1.6475 ×DMSMEAVE2(N−1)+0.7009×DMSMEAVE2(N−2 ) …(10) ここで、式(10)は、2次のバタワースフィルタ(I
IRデジタルフィルタ)によってCRME値の移動平均
値DMSMEをフィルタリングする処理を示している。
このフィルタリング処理により、前記式(9)と同様
に、移動平均値DMSMEからその高周波成分、即ち前
記図23の曲線ΔMe1と曲線ΔMe2との差分(特
に、時間t1−t2以外の時刻における差分)が除去さ
れ、エンジンの加速状態に応じた変動分ΔMe2のみが
分離される。
【0090】なお、バタワースフィルタは、次数が大き
くなるに従って、遮断特性がよくなり、安定度が向上す
る一方、位相遅れが大きくなり、レスポンス(追従性)
が低下する。
【0091】図22は、本実施の形態の制御装置による
信号処理方法を説明するための図であり、前記図23に
対応するものである。図22中、図23に対応する曲線
には同一符号を付す。
【0092】図22において、曲線ΔMe1が移動平均
値DMSMEを示し、曲線ΔMe0のうち時間t1−t
2の部分が加速時回転変動量検出用基準値DMSMEA
VE1を示し、曲線ΔMe0のうち時間t1−t2以外
の部分がクルーズ時回転変動量検出用基準値DMSME
AVE2を示している。
【0093】同図から分かるように、曲線ΔMe0は、
曲線ΔMe2と略同一形状で、時間遅れを伴ったものと
なっている。即ち、曲線ΔMe0は、移動平均値DMS
MEからその高周波成分である燃焼変動分(曲線ΔMe
1と曲線ΔMe2との差分)が除去されたものであるこ
とを示している。また、時間遅れは、前記バタワースフ
ィルタによるフィルタリング処理の処理時間に対応して
いる。
【0094】次いでステップS87では、前記エンジン
回転状態フラグFNECHGの値が「1」であるか否か
を判別し、FNECHG=1のとき、即ちエンジンが加
速状態にあるときには、次式(11)により回転変動量
DMSSLB(N)を算出した(ステップS88)後
に、本フィルタ処理を終了する一方、FNECHG=0
のとき、即ちエンジンがクルーズ状態にあるときには、
次式(12)により回転変動量DMSSLB(N)を算
出した(ステップS89)後に、本フィルタ処理を終了
する。
【0095】 DMSSLB(N)=|DMSME(N)−DMSMEAVE1(N)|/K DMSSLB …(11) DMSSLB(N)=|DMSME(N)−DMSMEAVE2(N)|/K DMSSLB …(12) このようにして、低域通過フィルタにより、移動平均値
DMSMEからその高周波成分である燃焼変動分を除去
して回転変動量検出用基準値DMSMEAVE1,2と
し、この回転変動量検出用基準値DMSMEAVE1,
2と移動平均値DMSMEとの差分に基づいて回転変動
量DMSSLBを算出するようにしたので、真の回転変
動量、即ちエンジンの燃焼変動のみに起因する回転変動
量DMSSLBを算出することができる。
【0096】前記図22において、曲線ΔMは、回転変
動量DMSSLBを示し、この曲線ΔMと前記図23の
曲線ΔMと比較すると、回転変動量DMSSLBには、
加速状態に応じた変動分ΔMe2の影響が除去されてい
ることが分かる。
【0097】また、エンジンが加速状態にあるときに
は、位相遅れの小さい追従性の高い1次バタワースフィ
ルタにより移動平均値DMSMEをフィルタリングして
回転変動量検出用基準値DMSMEAVE1を算出する
一方、エンジンがクルーズ状態にあるときには、位相遅
れは大きくなって追従性は低下するものの、遮断特性が
より向上し安定度がより高い2次バタワースフィルタに
より移動平均値DMSMEをフィルタリングして回転変
動量検出用基準値DMSMEAVE2を算出するように
したので、回転変動量DMSSLBをエンジンの運転状
態に応じてより適切に算出することができる。
【0098】一般に、空燃比をリーン化していくと、燃
焼状態が徐々に不安定となり、DMSSLB値が増加す
る。そして、図21(b)に示すように、DMSSLB
値が数秒に一回程度スパイク状に増加する不整燃焼が現
れる状態が、空燃比がほぼリーン限界に制御された状態
であり、これよりさらにリーン化すると、運転者にサー
ジングが伝わるような燃焼不安定状態となる。したがっ
て、図21(b)に示す状態あるいはそれより少し燃焼
安定側に、空燃比を制御することが望ましい。
【0099】図10及び11は図7のステップS49に
おけるKREFAF学習領域判断処理のフローチャート
である。
【0100】図10において、先ずステップS91で
は、エンジン水温TWが所定水温TWLEAN(例えば
75℃)以上であって暖機が完了しているか否かを判別
し、TW≧TWLEANであるときは、空燃比補正係数
KO2が上限値又は下限値に所定時間以上貼り付いてい
ることを「1」で示すKO2貼り付きフラグFJKO2
LMTが「0」か否かを判別し(ステップS92)、F
JKO2LMT=0であるときは、オフアイドル学習値
KREF1が上限値又は下限値に所定時間以上貼り付い
ていることを「1」で示すKREF1貼り付きフラグF
KRF1LMTが「0」か否かを判別する(ステップS
93)。
【0101】そして、ステップS91〜S93の何れか
の答が否定(NO)のときは、学習領域でないと判定し
て以下の処理を実行する。即ち、リーン制御学習値KR
EFAFの学習が終了したことを「1」で示す学習終了
フラグFSLBREFOK(ステップS115参照)を
「0」に設定し(ステップS94)、ダウンカウントタ
イマtmSLBREFに所定学習時間TSLBRERを
設定してスタートさせ(ステップS95)、ステップS
95でセットしたタイマtmSLBREFのダウンカウ
ントを停止させ(図11、ステップS103)、ダウン
カウントタイマtmREFMINに最小学習時間TRE
FMINをセットしてスタートさせ(ステップS10
4)、最小学習時間TREFMINに亘ってKRERA
F値の学習を実行したことを「1」で示す最小学習時間
フラグFREFMINを「0」に設定して(ステップS
105)、ステップS116に進む。
【0102】ステップS116では、前記誤学習フラグ
FDKREF(前記図2のステップS10参照)を
「0」に設定し、次いで学習領域フラグFSLBREF
を「0」に設定して(ステップS117)、本処理を終
了する。
【0103】一方、ステップS91〜S93の答がすべ
て肯定(YES)のときは、エンジン回転数NEが所定
上下限値NKSLBRH,NKSLBRL(例えば34
00rpm,1000rpm)の範囲内にあるか否かを
判別し(ステップS96)、NKSLBRL<NE<N
KSLBRHであるときは、吸気管内絶対圧PBAが所
定上下限値PBSLBRH,PBSLBRL(例えば6
60mmHg,260mmHg)の範囲内にあるか否か
を判別し(ステップS97)、PBSLBRL<PBA
<PBSLBRHであるときは、車速Vが所定車速VS
LBREFL(例えば30km/h)より高いか否かを
判別する(ステップS98)。その結果、ステップS9
6〜S98の何れかの答が否定(NO)であってエンジ
ン回転数NE、吸気管内絶対圧PBA又は車速Vの何れ
かが所定の条件を満たしていないときは、学習領域でな
いと判定して前記ステップS103に進む。
【0104】ステップS98でV>VSLBREFLで
あるときは、学習終了フラグFSLBREFOKが
「0」か否かを判別し(ステップS99)、FSLBR
EFOK=0であるときは、KO2学習領域フラグFK
REFZN(図2ステップS3,S4参照)が「1」か
否かを判別する(ステップS100)。そして、FSL
BREFOK=1又はFKREFZN=0であるとき
は、前記ステップS103に進み、FSLBREFOK
=0で且つFKREFZN=1であるときは、リーン制
御学習値KREFAFが上限値又は下限値に所定時間以
上貼り付いていることを「1」で示すKREFAF貼り
付きフラグFKRFAFLMTが「0」か否かを判別す
る(図11、ステップS101)。
【0105】当初はFKRFAFLMT=0であるの
で、直ちにステップS106に進む。学習値KRERA
Fを算出中にFKRFAFLMT=1となったときは、
ダウンカウントタイマtmSLBREFに所定学習時間
TSLBREFを再設定して(ステップS102)、ス
テップS106に進む。
【0106】ステップS106では、最小学習時間フラ
グFREFMINが「1」か否かを判別する。最初はF
REFMIN=0であるのでステップS107に進み、
ステップS104でセットしたタイマtmREFMIN
の値が「0」か否かを判別する。そしてtmREFMI
N>0である間は、ステップS95(又はS102)で
セットしたタイマtmSLBREFのダウンカウントを
停止し(ステップS108)、KREFAF学習領域フ
ラグFSLBREFを「1」に設定し、学習値KREF
AFの算出を許可して(ステップS112)、本処理を
終了する。
【0107】学習開始後最小学習時間TREFMINが
経過するとtmREFMIN=0となるので、ステップ
S107からステップS109に進み、最小学習時間フ
ラグFREFMINを「1」に設定するとともに、タイ
マtmSLBREFのカウント値を最小学習時間TRE
RMINだけ減算して(ステップS110)、前記ステ
ップS112に進む。
【0108】ステップS109でFREFMIN=1と
されると、ステップS106の答が肯定(YES)とな
るので、ステップS111に進み、タイマtmSLBR
EFの値が「0」であるか否かを判別する。そしてtm
SLBREF>0である間は前記ステップS112に進
んで学習値KREFAFの算出を継続し、tmSLBR
EF=0となるとオフアイドル学習値KREF1とKR
ERA値との偏差(KREF1−KREFAF)が、第
1所定偏差DKREFH(図2、ステップS11参照)
より小さい第2所定偏差DKREFL(例えば0.00
8)より小さいか否かを判別する(ステップS11
3)。その結果、(KREF1−KREFAF)≧DK
REFLであるときは、オフアイドル学習値KRER1
の値が適切でない(誤学習)と判定し、誤学習フラグF
DKREFを「1」に設定し(ステップS114)、K
REFAF学習領域フラグFSLBREFを「0」に設
定して(ステップS117)、本処理を終了する。誤学
習フラグFDKREFは、前述した図2のステップS1
0で参照される。
【0109】ステップS113で(KREF1−KRE
FAF)<DKREFLであるときは、学習終了フラグ
FSLBREFOKを「1」に設定して(ステップS1
15)、前記ステップS116に進む。
【0110】学習終了フラグFSLBREFOKが
「1」に設定されると、ステップS99により原則とし
てリーン制御学習値KREFAFの学習は行われない
が、図2のステップS10〜S13の処理により、オフ
アイドル学習値KREF1とリーン制御学習値KREF
AFとの偏差(KREF1−KREFAF)が第1所定
偏差DKREFH以上となると、学習終了フラグFSL
BREFOKが「0」に戻され、KREFAF値の再学
習が行われる。その結果、所定要因の変化に起因する最
適値の変化に対応してリーン制御学習値KREFAFが
より適切な値に変更され、燃費や運転性の悪化を防止す
ることができる。
【0111】また、ステップS113により、KREF
AF値算出直後の偏差(KREF1−KREFAF)が
第2所定偏差DKREFL以上であるときは、誤学習フ
ラグFDKREFを「1」に設定して、KREF1値が
更新されて適切な値となるまで、図2のステップS10
以下を実行しないようにしたので、ステップS11でK
REF1値がずれているのにKREFAF値の再学習を
実行することを防止することができる。
【0112】図12〜14は、前記図8のステップS6
1におけるKOBJ算出処理サブルーチンのフローチャ
ートである。
【0113】図12において、先ず、空燃比(A/F)
の切換中であることを「1」で表す空燃比切換中フラグ
FAFCHGが「1」か否かを判別し(ステップS13
1)、FAFCHG=1のときには、目標空燃比KOB
Jを前回算出され記憶された前回目標空燃比KOBJL
ASTに設定し(ステップS132)、本KOBJ算出
処理を終了する。
【0114】一方、ステップS131で、FAFCHG
=0のときには、前記アイドルフラグFIDLEが
「1」か否かを判別し(ステップS133)、FIDL
E=0であってアイドル状態でないときは、エンジン回
転数NEが所定上下限値NSLBZNH,NSLBZN
L(例えば、4000rpm,900rpm)の範囲内
にあるか否かを判別する(ステップS134)。そし
て、FIDLE=1であってアイドル状態であるとき又
はNE≦NSLBZNL若しくはNE≧NSLBZNH
であるときは、図14のステップS152に進み、NS
LBZNL<NE<NSLBZNHであるときは、ステ
ップS135に進んでSLB領域持ち替え処理を実行す
る。この処理では、ギヤ比、吸気管内絶対圧PBA及び
車速の変化量(加速度)等に応じて、前記SLB高負荷
領域フラグFSLBPZNの設定を行う。
【0115】次に、SLB領域内フラグFSLBZNが
「1」か否かを判別し(ステップS136)、FSLB
ZN=1であってSLB領域内であるときは、エンジン
水温TWが所定水温TWLEAN5(例えば70℃)以
上か否かを判別する(ステップS137)。そして、ス
テップS136又はS137の何れかの答が否定(N
O)のときは、リーンバーン制御を実行すべきでないと
判定し、図14のステップS152で、ダウンカウント
タイマtmSLBDLYに所定時間TSLBDLYをセ
ットしてスタートさせ、目標空燃比KOBJを「1.
0」に設定して(ステップS154)、本KOBJ算出
処理を終了する。
【0116】ステップS137でTW≧TWLEAN5
であるときは、さらにエンジン水温TWが所定水温TW
LEAN(>TWLEAN5)以上か否かを判別し(ス
テップS138)、TW≧TWLEANであるときは、
直ちに図13のステップS142に進み、TW<TWL
EANであるときは、当該車両がAT車であるか否かを
判別する(ステップS139)。そして、AT車でない
とき、即ちMT車であるときは、ギヤ位置NGRが5速
にあるか否かを判別し(ステップS140)、5速のと
きは前記ステップS142に進む一方、5速でないとき
は前記ステップS152に進む。また、AT車であると
きは、ギヤ位置が4速か否かを判別し(ステップS14
1)、4速のときはステップS142に進む一方、4速
でないときは前記ステップS152に進む。
【0117】ステップS142では、当該車両がAT車
か否かを判別し、AT車でない、即ちMT車のときは、
ギヤ位置NGRが所定ギヤ位置NGRLより高速側か否
かを判別し(ステップS144)、NGR≦NGRLで
あるときは前記ステップS152に進み、NGR>NG
RLであるときは、車速Vが所定車速VNGRLより高
いか否かを判別する(ステップS145)。そして、V
≦VNGRLであるときは前記ステップS152に進
み、V>VNGRLであればステップS146に進む。
【0118】一方AT車であるときは、ステップS14
2からS143に進みギヤ位置NGRATが所定ギヤ位
置NGRATLより高速側か否かを判別し、NGRAT
≦NGRATLであるときは、前記ステップS152に
進み、NGRAT>NGRATLであるときは、前記ス
テップS145に進む。
【0119】ステップS142〜S145により、ギヤ
位置又は車速(及びロックアップクラッチの係合状態)
によっては、リーンバーン制御を実行しないようにして
いる。
【0120】ステップS146では、前記学習終了フラ
グFSLBREFOKが「1」であるか否かを判別し、
FSLBREFOK=1のとき、即ちリーン制御学習値
KREFAFの学習が終了したときにはステップS14
7に進み、エンジン1がWOT(スロットル弁全開運
転;Wide Open Throttle)領域にあることを「1」で示
すWOTフラグFWOTが「1」か否かを判別する。F
WOT=0であるときは、エンジン回転数NEの応じて
図19に示すTHSLBテーブルを検索し、スロットル
弁開度θTHのリーンバーン制御上限値THSLBを算
出する(ステップS148)。次いで、検出したスロッ
トル弁開度θTHが上限値THSLBより小さいか否か
を判別し(ステップS149)、θTH<THSLBで
あるときは、スロットル弁開度θTHの変化量DTH
(=θTH(N)−θTH(N−1))が、所定変化量
DTHKCRより小さいか否かを判別し(ステップS1
50)、DTH<DTHKCRであるときは、吸気管内
絶対圧PBAの変化量DPB(=PBA(N)−PBA
(N−1))が所定変化量DPBKCRより小さいか否
かを判別する(ステップS151)。その結果、ステッ
プS149〜S151の何れかの答が否定(NO)のと
きは、前記ステップS152に進み、リーンバーン制御
は行わない。
【0121】一方、ステップS149〜S151の答が
すべて肯定(YES)のときは、前記ステップS152
でセットしたタイマtmSLBDLYの値が「0」か否
かを判別する(図14、ステップS153)。tmSL
BDLY>0である間は前記ステップS154に進ん
で、KOBJ=1.0とし、tmSLBDLY=0とな
ると、図8のステップS63でセットしたタイマtmA
FCLNの値が「0」か否かを判別する(ステップS1
55)。tmAFCLN>0であってフュエルカット状
態から復帰後所定時間TAFCLN内は、前記ステップ
S154に進み、tmAFCLN=0であるときは、前
記SLB高負荷領域フラグFSLBPZNが「1」か否
かを判別し(ステップS156)、FSLBPZN=1
であってSLB領域内の高負荷領域にあるときは、KO
BJPZNマップを検索し(ステップS157)、その
検索結果である高負荷時の目標空燃比KOBJPZNを
目標空燃比KOBJに設定した(ステップS158)後
に、ステップS162に進む。
【0122】ステップS156でFSLBPZN=0で
あるときは、目標空燃比KOBJを所定下限値KOBJ
Lに設定し(ステップS159)、SLBF/B中フラ
グFSLBFBが「1」か否かを判別する(ステップS
160)。そして、FSLBFB=0であるときはステ
ップS162に進む一方、FSLBFB=1であってK
LSAF値のフィードバック制御中であるときは、次式
(13)によりリーンバーン補正係数KLSAFの学習
値KLSAFREFを算出して(ステップS161)、
ステップS162に進む。
【0123】 KLSAFREF=KLSCRF×KLSAF(N)/A+(A−KLSCR F)×KLSAFREF(N−1)/A …(13) ここで、KLSCRFは1からAの間の値に設定される
なまし係数である。
【0124】ステップS162では、アクセル操作によ
るドライバの加速要求時に目標空燃比KOBJを持ち換
えるためのKOBJTHマップ(図示せず)を、スロッ
トル弁開度θTH及びエンジン回転数NEに応じて検索
する。
【0125】続くステップS163では、ステップS1
62で検索した目標空燃比KOBJTHが前記算出した
目標空燃比KOBJより大きいか否かを判別し、KOB
J<KOBJTHのときには、目標空燃比KOBJを検
索値KOBJTHで置き換える(ステップS164)一
方、KOBJ≧KOBJTHのときには、直ちに本KO
BJ算出処理を終了する。即ち、ステップS163及び
S164の処理では、目標空燃比KOBJTHのリミッ
ト処理を行っている。
【0126】図15は、前記図8のステップS67のK
LSAFリミット処理の詳細な手順を示すフローチャー
トである。
【0127】同図において、先ずステップS171で
は、今回の目標空燃比KLSAF(N)と前回のリーン
バーン補正係数KLSAF(N−1)との偏差を算出す
るためと、今回の空燃比の補正がリッチ方向かリーン方
向かを判別するために、次式(14)により変化量DK
LSAFを目標空燃比の今回値KLSAF(N)とリー
ンバーン補正係数の前回値KLSAF(N−1)との差
として算出する。
【0128】 DKLSAF=KLSAF(N)−KLSAF(N−1) …(14) 続くステップS172では、前記WOTフラグFWOT
が「1」か否かを判別し、FWOT=1であるときは、
加算項DKC1をWOT領域用の所定値DKC1WOT
に設定し(ステップS173)、次式(15)により、
今回値KLSAF(N)の再設定を行う(ステップS1
82)。
【0129】 KLSAF(N)=KLSAF(N−1)+DKC1 …(15) 次いで、回転変動量DMSSLBに応じてKLSAF値
の設定を行う(KLSAF値のフィードバック制御を行
う)ことを「1」で示すリーンフィードバックフラグF
SLBFBを「0」に設定し(ステップS183)、K
LSAF(N)値が1.0より大きいか否かを判別する
(ステップS184)。そして、KLSAF(N)≦
1.0であるときは直ちに、またKLSAF(N)>
1.0であるときは、KLSAF(N)=1.0として
(ステップS185)、ステップS186に進む。
【0130】ステップS186では、KLSAF(N)
値が所定下限値KLSAFLより小さいか否かを判別
し、KLSAF(N)≧KLSAFLであるときは直ち
に、またKLSAF(N)<KLSAFLであるとき
は、KLSAF(N)=KLSAFLとして、本処理を
終了する。
【0131】ステップS172で、FWOT=0である
ときは、ステップS171で算出した変化量DKLSA
Fが正の値か否かを判別し(ステップS174)、その
答が肯定(YES)のとき、即ちKLSAF値が増加し
たときは、エンジン回転数NEが第1所定回転数NKS
LB1より高いか否かを判別する(ステップS17
6)。その結果、NE≦NKSLB1であるときは、前
記加算項DKC1を低回転用所定値DKC1M1Hに設
定して(ステップS180)、ステップS181に進
む。
【0132】ステップS176でNE>NKSLB1で
あるときは、さらに第1所定回転数NKSLB1より高
い第2所定回転数NKSLB2より高いか否かを判別す
る(ステップS177)。そして、NE≦NKSLB2
であるときは、加算項DKC1を中回転用所定値DKC
1M1Mに、またNE>NKSLB2であるときは、高
回転用所定値DKC1M1Lにそれぞれ設定して、ステ
ップS181に進む。なお、各所定値は、DKC1M1
H>DKC1M1M>DKC1M1Lなる関係を有す
る。
【0133】ステップS181では、前記ステップS1
71で算出した変化量DKLSAFの絶対値が加算項D
KC1より大きいか否かを判別し、|DKLSAF|≦
DKC1であるときは直ちに、また|DKLSAF|>
DKC1であるときは、前記ステップS182を実行し
て、前記ステップS183に進む。
【0134】以上のように、FWOT=1であってWO
T領域にあるとき又はDKLSAF>0であってKLS
AF値が増加したときは、回転変動量DMSSLBに応
じたKLSAF値の設定(リーンフィードバック制御)
は、行わない。
【0135】ステップS174で、変化量DKLSAF
≦0であるとき、即ちKLSAF値が減少したとき又は
変化しないときは、図16及び17に示すKLSAFフ
ィードバック処理を実行して、前記ステップS186に
進む。
【0136】図16及び17は、KLSAFフィードバ
ック処理の詳細な手順を示すフローチャートである。
【0137】図16において、先ずステップS191で
は、リーンフィードバックフラグFSLBFBが「1」
か否かを判別し、FSLBFB=1であるときにはステ
ップS192に進み、スロットル弁開度θTHの変化量
DTH(=θTH(N)−θTH(N−1))が、所定
変化量DTHSLBより大きいか否かを判別し、DTH
>DTHSLBであってスロットル弁の開弁量(アクセ
ルペダルの踏み込み量)が大きいときは、リッチ補正項
DAFRをスロットル開弁時用所定値DAFRTHに設
定して(ステップS193)、図17のステップS23
8に進む。
【0138】ステップS238では、次式(16)によ
り前回値KLSAF(N−1)にリッチ補正項DAFR
を加算して今回値KLSAF(N)の再設定を行う。
【0139】 KLSAF(N)=KLSAF(N−1)+DAFR …(16) 次いで、算出したKLSAF(N)値が所定上限値KL
SAFFBHより大きいか否かを判別し(ステップS2
39)、KLSAF(N)>KLSAFFBHであると
きは、KLSAF(N)=KLSAFFBHとする(ス
テップS240)一方、KLSAF(N)≦KLSAF
FBHであるときは、ステップS240をスキップして
ステップS241に進む。
【0140】ステップS241では、前記燃焼状態フラ
グFAVEHLD(前記図8のステップS57で参照す
るフラグ)を「1」に設定した後に、本KLSAFフィ
ードバック処理を終了する。
【0141】図16に戻り、ステップS192でDTH
≦DTHSLBであるときは、吸気管内絶対圧PBAの
変化量DPB(=PBA(N)−PBA(N−1))
が、所定変化量DPBSLBより大きいか否かを判別し
(ステップS194)、DPB>DPBSLBであると
きは、リッチ補正項DAFRを負荷増加時用所定値DA
FRPBに設定して(ステップS195)、前記ステッ
プS238(図17)に進む。
【0142】ステップS194の答が否定(NO)、即
ちDPB≦DPBSLBであるときは、前記スロットル
弁開度θTHの変化量DTHが、前記所定変化量DTH
SLBより小さい所定変化量DTHNE(<DTHSL
B)以上か否かを判別する(ステップS205)。この
結果、DTH≧DTHNEのときには、KLSAF値を
ホールドするためのカウンタcAFTDTHに所定時間
CAFTDHをセットして(ステップS206)、この
カウンタcAFTDTHの値を「1」だけデクリメント
し(ステップS208)、KLSAF値をホールド中で
あることを「1」で示すKLSAF値ホールド中フラグ
FSLBHOLDに「1」を設定した(ステップS20
9)後に、ステップS211に進む。
【0143】一方、ステップS205で、DTH<DT
HNEのときには、上記カウンタcAFTDTHが
「0」であるか否か、即ちKLSAF値のホールドを解
除するか否かを判別する(ステップS207)。この結
果、cAFTDTH≠0のとき、即ちKLSAF値のホ
ールドが継続中であるときには前記ステップS208に
進む一方、cAFTDTH=0のとき、即ちKLSAF
値のホールドを解除するときにはステップS210に進
み、KLSAF値ホールド中フラグFSLBHOLDを
「0」に設定する。
【0144】続くステップS211では、前記エンジン
回転状態フラグFNECHGが「1」であるか否かを判
別し、FNECHG=1のとき、即ちエンジンが加速状
態になったときには、KLSAF値ホールド中フラグF
SLBHOLD及びカウンタcAFTDTHをそれぞれ
「0」に設定して、KLSAF値のホールドを解除した
(ステップS212)後に、図17のステップS211
に進む。
【0145】一方、ステップS211で、FNECHG
=0のとき、即ちエンジンがクルーズ状態のときにはス
テップS213に進む。
【0146】ステップS213では、KLSAF値ホー
ルド中フラグFSLBHOLDが「1」であるか否かを
判別し、FSLBHOLD=0のときには、前記図17
のステップS216に進む一方、FSLBHOLD=1
のときには、KLSAF値の今回値KLSAF(N)を
前回値KLSAF(N−1)に設定し(ステップS21
4)、燃焼状態フラグFAVEHLDを「1」に設定し
た(ステップS215)後に、本KLSAFフィードバ
ック処理を終了する。
【0147】図17のステップS216では、回転変動
量DMSSLBが第2の下側閾値MSLEAN1(図2
1(b)参照)より小さいか否かを判別し、DMSSL
B<MSLEAN1であるときは、さらに第1の下側閾
値(β×DMSBAVE)(β<1.0)より小さいか
否かを判別する(ステップS217)。
【0148】ステップS217で、DMSSLB<(β
×DMSBAVE)であるときは、リーン補正項DAF
Lを第1の所定値DAFL1に設定して(ステップS2
18)、またDMSSLB≧(β×DMSBAVE)で
あるときは、第1の所定値DAFL1より小さい第2の
所定値DAFL2に設定して(ステップS219)、ス
テップS224に進む。
【0149】ステップS224では、図15のステップ
S171で算出したKLSAF値の変化量DKLSAF
の絶対値が上記リーン補正項DAFLより小さいか否か
を判別し、|DKLSAF|≧DAFLであるときは、
次式(17)により前回値KLSAF(N−1)からリ
ーン補正項DAFLを減算して今回値KLSAF(N)
の再設定を行い(ステップS225)、燃焼状態フラグ
FAVEHLDを「0」に設定した(ステップS22
8)後に、本処理を終了する。
【0150】 KLSAF(N)=KLSAF(N−1)−DAFL …(17) このように、|DKLSAF|≧DAFLであって、前
回値KLSAF(N−1)に対する今回値KLASAF
(N)の減少量が上記リーン補正項以上のときは、減少
量が回転変動量DMSSLBに応じて設定されたDAF
L値となるように今回値KLSAF(N)値を再設定し
て、過度のリーン化を防止している。
【0151】また、|DKLSAF|<DAFLである
ときは、ステップS226に進んで、KLSAF(N−
1)<1.0であることを「1」で示すリーンフラグF
SLBが「1」か否かを判別し、FSLB=1であると
きはリーンフィードバックフラグFSLBFBを「1」
に設定して(ステップS227)、DAFLによる減算
を行わずにKLSAF(N)=KOBJ(N)として、
前記ステップS228に進む。
【0152】前記ステップS216の答が否定(N
O)、即ちDMSSLB≧MSLEAN1であるとき
は、回転変動量DMSSLBが第2の上側閾値MSLE
AN2(図21(b)参照)より小さいか否かを判別し
(ステップS220)、DMSSLB<MSLEAN2
であるときは、さらにDMSSLB値が第1の上側閾値
(α×DMSBAVE)より小さいか否かを判別し(ス
テップS221)、DMSSLB<(α×DMSBAV
E)であるときは、さらにDMSSLB値が第1の下側
閾値(β×DMSBAVE)より小さいか否かを判別す
る(ステップS222)。
【0153】そしてステップS222の答が肯定(YE
S)、即ちDMSSLB<(β×DMSBAVE)であ
るときは、リーン補正項DAFLを第3の所定値DAF
L3(<DAFL1)に設定して(ステップS22
3)、前記ステップS224に進む。
【0154】またステップS222の答が否定(N
O)、即ちDMSSLB≧(β×DMSBAVE)であ
るときは、KLSAF値を前回値保持として(ステップ
S229)、前記ステップS228に進む。
【0155】前記ステップS220の答が否定(N
O)、即ちDMSSLB≧MSLEAN2であるとき
は、さらにDMSSLB値が第1の上側閾値(α×DM
SBAVE)より小さいか否かを判別する(ステップS
230)。その結果、DMSSLB≧(α×DMSBA
VE)であるときは、リッチ補正項DAFRを第1の所
定値DAFR1に設定して(ステップS233)、また
DMSSLB<(α×DMSBAVE)であるときは、
第1の所定値DAFR1より小さい第2の所定値DAF
R2に設定して(ステップS232)、ステップS23
4に進む。
【0156】ステップS234では、前記ステップS2
38と同様にして、次式(18)により前回値KLSA
F(N−1)にリッチ補正項DAFRを加算して今回値
KLSAF(N)の再設定を行う。
【0157】 KLSAF(N)=KLSAF(N−1)+DAFR …(18) 次いで、前記ステップS239と同様にして、算出した
KLSAF(N)値が所定上限値KLSAFFBHより
大きいか否かを判別し(ステップS235)、KLSA
F(N)>KLSAFFBHであるときは、KLSAF
(N)=KLSAFFBHとする(ステップS236)
一方、KLSAF(N)≦KLSAFFBHであるとき
は、ステップS236をスキップしてステップS237
に進む。ステップS237では、前記燃焼状態フラグF
AVEHLDを「0」に設定した後に、本KLSAFフ
ィードバック処理を終了する。
【0158】また、前記ステップS221の答が否定
(NO)、即ちDMSSLB≧(α×DMSBAVE)
であるときは、リッチ補正項DAFRを第3の所定値D
AFR3(<DAFR1)に設定して(ステップS23
1)、前記ステップS234に進む。
【0159】このように、回転変動量DMSSLBが大
きいときは、DMSSLB値が大きいほどリッチ補正項
DAFRをより大きな値に設定し、燃焼状態がさらに悪
化することを防止している。
【0160】図16に戻り、ステップS191の答が否
定(NO)、即ちFSLBFB=0であるときは、前回
値KLSAF(N−1)が所定値KLSAFX1より大
きいか否かを判別し(ステップS196)、KLSAF
(N−1)>KLSAFX1であるときは、リーン補正
項DAFLを第4の所定値DAFLX1に設定して(ス
テップS197)、前記図17のステップS224に進
む。
【0161】また、ステップS196でKLSAF(N
−1)≧KLSAFX1であるときは、前記SLB高負
荷領域フラグFSLBPZN(このフラグは、前述のよ
うに、図12のステップS134で設定される)が
「1」か否かを判別し(ステップS198)、FSLB
PZN=0であるときは、さらに前回値KLSAF(N
−1)が所定値KLSAFX2(<KLSAFX1)よ
り大きいか否かを判別する(ステップS201)。そし
て、FSLBPZN=1のとき又はKLSAF(N−
1)≦KLSAFX2であるときは、ステップS199
に進んでリーンフィードバックフラグFSLBFBを
「1」に設定して(ステップS199)、前記ステップ
S205に進む。
【0162】前記ステップS200の答が肯定(YE
S)、即ちKLSAF(N−1)>KLSAFX2であ
るときは、回転変動量DMSSLBが第2の上側閾値M
SLEAN2より大きいか否かを判別し(ステップS2
01)、DMSSLB≦MSLEAN2であるときは、
リーン補正項DAFLを第5の所定値DAFLX2に設
定して(ステップS204)、前記図17のステップS
224に進む。
【0163】また、ステップS201でDMSSLB>
MSLEAN2であって燃焼状態が悪化したときは、ス
テップS199と同様にリーンフィードバックフラグF
SLBFBを「1」に設定し(ステップS202)、さ
らにリッチ補正項DAFRに第4の所定値DAFRXを
設定して(ステップS203)、前記図17のステップ
S234に進む。
【0164】なお、上述した図16及び17の処理で使
用する第2の下側閾値MSLEAN1及び第2の上側閾
値MSLEAN2は、図示しない処理により以下のよう
に設定される。
【0165】即ち、先ずエンジン回転数NEに応じて図
20(a)にテーブルを検索して、閾値MSLEAN
1,MSLEAN2の上限値MSLEAN1H,MSL
EAN2H及び下限値MSLEAN1L,MSLEAN
2Lを決定する。次いで、同図(b)に示すように、吸
気管内絶対圧PBAが上限値PBMSH以上であるとき
は、閾値MSLEAN1,MSLEAN2として、上限
値MSLEAN1H,MSLEAN2Hを採用し、吸気
管内絶対圧PBAが下限値PBMSL以下であるとき
は、下限値MSLEAN1L,MSLEAN2Lを採用
し、PBMSL<PBA<PBMSHであるときは、補
間演算によりMSLEAN1値及びMSLEAN2値を
決定する。
【0166】さらに、表1に示すように、当該車両がM
T(マニュアルトランスミッション)車かAT(オート
マチックトランスミッション)車か及びギヤ比に応じ
て、補正係数KMSGRiM(i=3,4,5)及びK
MSGRjA(j=2,3,4)を決定し、図20のテ
ーブル検索値に乗算することにより、最終的な閾値MS
LEAN1及びMSLEAN2を算出する。
【0167】
【表1】 なお、各補正係数値は、KMSGR3M<KMSGR4
M<KMSGR5M,KMSGR2A<KMSGR3A
<KMSGR4Aとなるように設定されている。また、
表1中の「CVT」は無断変速機を意味し、AT車の2
速、3速、4速相当の変速比のとき、それぞれKMSG
R2A、KMSGR3A、KMSGR4Aを使用する。
【0168】上記図17の処理により、回転変動量DM
SSLBと、その値に応じて選択されるリーンバーン補
正係数KLSAFの補正項DAFR,DAFLの設定値
DAFR1〜3,DAFL1〜3とをまとめると、以下
のようになる。即ち、DMSSLB値が上側閾値MSL
EAN2又はα×DMSBAVE以上となると、DMS
SLB値が増加するほど、リッチ補正項DAFRが大き
な値に設定され、下側閾値MSLEAN1又はβ×DM
SBAVEより小さくなると、DMSSLB値が減少す
るほど、リーン補正項DAFLが大きな値に設定され、
DMSSLB値が上側閾値と下側閾値の間にあるとき
は、リーンバーン補正係数KLSAFは前回値保持とさ
れる。
【0169】1)DMSSLB≧MSLEAN2かつD
MSSLB≧α×DMSBAVEであるとき、DAFR
=DAFR1 2)α×DMSBAVE>DMSSLB≧MSLEAN
2であるとき、DAFR=DAFR2(<DFR1) 3)MSLEAN2>DMSSLB≧α×DMSBAV
Eであるとき、DAFR=DAFR3(<DFR1) 4)DMSSLB<MSLEAN2かつDMSSLB<
α×DMSBAVEかつDMSSLB≧MSLEAN1
かつDMSSLB≧β×DMSBAVEであるとき、K
LSAF(N)=KLSAF(N−1)(前回値保持) 5)β×DMSBAVE>DMSSLB≧MSLEAN
1であるとき、DAFL=DAFL3(<DFL1) 6)MSLEAN1>DMSSLB≧β×DMSBAV
Eであるとき、DAFL=DAFL2(<DFL1) 7)DMSSLB<MSLEAN1かつDMSSLB<
β×DMSBAVEであるとき、DAFL=DAFL1 このように、本実施の形態では、低域通過フィルタによ
り、移動平均値DMSMEからその高周波成分である燃
焼変動分を除去して回転変動量検出用基準値DMSME
AVE1,2とし、この回転変動量検出用基準値DMS
MEAVE1,2と移動平均値DMSMEとの差分に基
づいて回転変動量DMSSLBを算出し、リーンバーン
制御時に、この回転変動量DMSSLBに応じて空燃比
をリッチ方向又はリーン方向に変更制御するようにした
ので、燃焼変動以外の要因(特に、エンジンの加速によ
る要因)に起因する回転変動量DMSSLBの変動を除
去でき、これにより、エンジンの加速時を含むより広い
運転領域に亘って適切にリーンバーン制御を行うことが
でき、さらに燃費を低減させることができる。
【0170】なお、本実施の形態では、回転変動量検出
用基準値を、エンジンが加速状態にあるときに、この加
速に起因する変動分に応じて算出するようにしたが、こ
れに限らず、回転変動量検出用基準値は一定にし、検出
された回転変動量をスロットル弁開度の変化量を表すパ
ラメータに応じて補正する等により燃焼変動分に起因す
る回転変動量のみを算出するようにしてもよい。
【0171】また、本実施の形態では、エンジンが加速
状態にあるときに、この加速に起因する回転変動量DM
SSLBの変動を除去するようにしたが、これに限ら
ず、エンジンが減速状態にあるときにも、同様の方法に
より、この減速に起因する回転変動量DMSSLBの変
動を除去することができる。
【0172】
【発明の効果】以上説明したように、本発明に依れば、
回転変動検出手段により検出された回転変動量から内燃
機関の燃焼変動に起因する成分が抽出され、該抽出され
た成分に基づいて前記機関に供給する混合気の空燃比が
限界リーン空燃比に制御されるので、機関の加減速時を
含むより広い運転領域に亘って適切にリーンバーン制御
を行うことができ、これにより、さらに燃費の低減化を
図ることが可能となる効果を奏する。
【0173】また、好ましくは、前記検出された回転変
動量と基準値算出手段により算出された回転変動量検出
用基準値とが比較され、この比較結果に応じて前記混合
気の空燃比が前記限界リーン空燃比に制御されるので、
上記効果と同様の効果を奏することができる。
【0174】さらに、好ましくは、加減速状態検出手段
により前記機関が加速状態又は減速状態にあると判別さ
れたときには、前記回転変動量検出用基準値は第1の低
域通過フィルタを用いて算出される一方、前記加減速状
態検出手段により前記機関が加速状態又は減速状態にな
いと判別されたときには、前記回転変動量検出用基準値
は第2の低域通過フィルタを用いて算出されるので、回
転変動量検出用基準値をより適切に算出することがで
き、これにより、さらに適切にリーンバーン制御を行う
ことができる。
【0175】また、さらに、好ましくは、前記回転変動
検出手段により検出された回転変動量の値が所定回数連
続して同一符号をとるときに前記機関は加速状態又は減
速状態にあると判別されるので、機関の加速状態又は減
速状態を検出する特別の装置を用いずに機関の加速状態
又は減速状態を判別することができ、これにより、製造
コストを低減化させることができる。
【図面の簡単な説明】
【図1】本発明の実施の一形態にかかる内燃エンジン及
びその制御装置の構成を示すブロック図である。
【図2】空燃比補正係数KO2の学習値KREFを算出
する処理のフローチャートである。
【図3】図4のCRK信号パルスの発生時間間隔の平均
値CR12MEを算出する処理のフローチャートであ
る。
【図4】CRME値の移動平均値DMSMEを算出する
処理のフローチャートである。
【図5】機関の回転速度を表すパラメータの計測とクラ
ンク軸の回転角度との関係を説明するための図である。
【図6】エンジン回転数NEに対する係数値KDMSS
LBの特性を示す図である。
【図7】修正リーンバーン補正係数KLSAFMを算出
する処理のフローチャートである。
【図8】修正リーンバーン補正係数KLSAFMを算出
する処理のフローチャートである。
【図9】図7のフィルタ処理サブルーチンの詳細な手順
を示すフローチャートである。
【図10】リーンバーン制御用の学習値を算出する領域
を判断する処理のフローチャートである。
【図11】リーンバーン制御用の学習値を算出する領域
を判断する処理のフローチャートである。
【図12】リーンバーン制御時の目標空燃比を算出する
処理のフローチャートである。
【図13】リーンバーン制御時の目標空燃比を算出する
処理のフローチャートである。
【図14】リーンバーン制御時の目標空燃比を算出する
処理のフローチャートである。
【図15】リーンバーン補正係数(KLSAF)のリミ
ット処理のフローチャートである。
【図16】リーンバーン補正係数(KLSAF)のフィ
ードバック処理のフローチャートである。
【図17】リーンバーン補正係数(KLSAF)のフィ
ードバック処理のフローチャートである。
【図18】KLSAFMテーブルの一例を示す図であ
る。
【図19】THSLBテーブルの一例を示す図である。
【図20】第2の閾値(MSLEAN1,2)を決定す
るためのテーブルを示す図である。
【図21】回転変動量(DMSSLB)とリーンバーン
補正係数(KLSAF)との関係を示す図である。
【図22】本実施の形態の内燃機関の制御装置による信
号処理方法を説明するための図である。
【図23】検出された回転変動量が機関の加速に起因し
て変動することを示す図である。
【符号の説明】
1 内燃エンジン 5 電子コントロールユニット 6 燃料噴射弁 16 O2センサ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 花田 晃平 埼玉県和光市中央1丁目4番1号 株式会 社本田技術研究所内

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 内燃機関の回転変動量を検出する回転変
    動検出手段と、前記機関に供給する混合気の空燃比を理
    論空燃比よりリーン側の目標空燃比に制御する際に、前
    記検出された回転変動量に応じて前記混合気の空燃比を
    リッチ方向又はリーン方向に変更して前記機関の回転変
    動量が増大しない限界リーン空燃比に制御する空燃比制
    御手段とを備えた内燃機関の空燃比制御装置において、 前記空燃比制御手段は、前記検出された回転変動量から
    前記機関の燃焼変動に起因する成分を抽出し、該機関の
    燃焼変動に起因する成分を抽出された回転変動量に基づ
    いて前記混合気の空燃比を前記限界リーン空燃比に制御
    することを特徴とする内燃機関の空燃比制御装置。
  2. 【請求項2】 前記空燃比制御手段は、前記検出された
    回転変動量から前記機関の燃焼変動に起因する成分を除
    去して回転変動量検出用基準値を算出する基準値算出手
    段と、前記検出された回転変動量と該算出された回転変
    動量検出用基準値とを比較する比較手段と、該比較手段
    の比較結果に応じて前記混合気の空燃比を前記限界リー
    ン空燃比に制御する制御手段とを有することを特徴とす
    る請求項1記載の内燃機関の空燃比制御装置。
  3. 【請求項3】 前記回転変動検出手段により検出された
    回転変動量に基づいて前記機関が加速状態又は減速状態
    にあるか否かを判別する加減速状態判別手段を有し、 前記基準値算出手段は、前記加減速状態検出手段により
    前記機関が加速状態又は減速状態にあると判別されたと
    きには、位相遅れが小さく追従性の高い第1の低域通過
    フィルタにより前記検出された回転変動量から前記機関
    の燃焼変動に起因する成分を除去して前記回転変動量検
    出用基準値を算出する一方、前記加減速状態検出手段に
    より前記機関が加速状態又は減速状態にないと判別され
    たときには、追従性は低いが安定度の高い第2の低域通
    過フィルタにより前記検出された回転変動量から前記機
    関の燃焼変動に起因する成分を除去して前記回転変動量
    検出用基準値を算出することを特徴とする請求項2記載
    の内燃機関の空燃比制御装置。
  4. 【請求項4】 前記加減速状態判別手段は、前記回転変
    動検出手段により検出された回転変動量の値が所定回数
    連続して同一符号をとるときに前記機関は加速状態又は
    減速状態にあると判別する一方、該検出された回転変動
    量の値が前記所定回数連続して同一符号をとらないとき
    に前記機関は定常状態にあると判別することを特徴とす
    る請求項3記載の内燃機関の空燃比制御装置。
JP8295841A 1996-10-17 1996-10-17 内燃機関の空燃比制御装置 Pending JPH10122016A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8295841A JPH10122016A (ja) 1996-10-17 1996-10-17 内燃機関の空燃比制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8295841A JPH10122016A (ja) 1996-10-17 1996-10-17 内燃機関の空燃比制御装置

Publications (1)

Publication Number Publication Date
JPH10122016A true JPH10122016A (ja) 1998-05-12

Family

ID=17825884

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8295841A Pending JPH10122016A (ja) 1996-10-17 1996-10-17 内燃機関の空燃比制御装置

Country Status (1)

Country Link
JP (1) JPH10122016A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7204141B2 (en) 2004-08-04 2007-04-17 Suzuki Motor Corporation Fuel level control system for internal combustion engine
WO2019163507A1 (ja) * 2018-02-26 2019-08-29 日立オートモティブシステムズ株式会社 内燃機関の制御装置および内燃機関の制御方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7204141B2 (en) 2004-08-04 2007-04-17 Suzuki Motor Corporation Fuel level control system for internal combustion engine
WO2019163507A1 (ja) * 2018-02-26 2019-08-29 日立オートモティブシステムズ株式会社 内燃機関の制御装置および内燃機関の制御方法
JP2019148200A (ja) * 2018-02-26 2019-09-05 日立オートモティブシステムズ株式会社 内燃機関の制御装置および内燃機関の制御方法
US11391226B2 (en) 2018-02-26 2022-07-19 Hitachi Automotive Systems, Ltd. Internal combustion engine control device and internal combustion engine control method

Similar Documents

Publication Publication Date Title
CN111594331B (zh) 不均检测装置、不均检测系统、不均检测方法、数据解析装置、及内燃机的控制装置
CN111594300B (zh) Pm量推定装置及其系统和方法、数据解析装置、内燃机的控制装置及接收装置
JPH0579374A (ja) 内燃エンジンの空燃比制御装置
CN111577427B (zh) 催化剂劣化检测装置及系统、二手车状态信息提供方法
JP2843879B2 (ja) 内燃エンジンの触媒劣化検出装置
JP3980424B2 (ja) 内燃機関の空燃比制御装置
JP3422447B2 (ja) 内燃機関の制御装置
JP2004324475A (ja) 酸素濃度センサの劣化検出装置
JP3425303B2 (ja) 内燃機関の燃料噴射制御装置
JPH0689690B2 (ja) 内燃機関の空燃比の学習制御装置
JPH10122016A (ja) 内燃機関の空燃比制御装置
JP3325436B2 (ja) 内燃機関の空燃比制御装置
JPH05180063A (ja) 内燃エンジンの失火検出装置
JPH08284708A (ja) エンジンの燃料噴射装置
JP2020133620A (ja) 触媒劣化検出装置、触媒劣化検出システム、データ解析装置、内燃機関の制御装置、および中古車の状態情報提供方法
JPH05180064A (ja) 内燃エンジンの失火検出装置
JP6879356B2 (ja) インバランス検出装置、インバランス検出システム、データ解析装置、および内燃機関の制御装置
JPH08232707A (ja) 内燃機関の制御装置
JP3750081B2 (ja) 内燃機関の制御装置
JP2019060303A (ja) 内燃機関の制御装置
JPH1089133A (ja) 内燃機関の空燃比制御装置
JP2600942B2 (ja) エンジンの空燃比制御装置
JPH10169484A (ja) 車両用内燃機関の出力トルク制御装置
JP4130637B2 (ja) 内燃機関の排気浄化装置
JP3305223B2 (ja) 内燃機関の空燃比制御装置