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

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

Info

Publication number
JPH08232721A
JPH08232721A JP6178395A JP6178395A JPH08232721A JP H08232721 A JPH08232721 A JP H08232721A JP 6178395 A JP6178395 A JP 6178395A JP 6178395 A JP6178395 A JP 6178395A JP H08232721 A JPH08232721 A JP H08232721A
Authority
JP
Japan
Prior art keywords
value
air
fuel ratio
correction coefficient
engine
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.)
Granted
Application number
JP6178395A
Other languages
English (en)
Other versions
JP3575708B2 (ja
Inventor
Norio Suzuki
典男 鈴木
Hidetaka Maki
秀隆 牧
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 JP06178395A priority Critical patent/JP3575708B2/ja
Priority to US08/602,115 priority patent/US5619976A/en
Publication of JPH08232721A publication Critical patent/JPH08232721A/ja
Application granted granted Critical
Publication of JP3575708B2 publication Critical patent/JP3575708B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Testing And Monitoring For Control Systems (AREA)
  • Electrical Control Of Air Or Fuel Supplied To Internal-Combustion Engine (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)

Abstract

(57)【要約】 【目的】 漸化式形式の制御器を用いた内燃機関の空燃
比フィードバック制御を行いつつ、燃料供給系の異常検
出を容易かつ正確に行うことができる空燃比制御装置を
提供する。 【構成】 広域空燃比センサ17の出力とエンジン1の
動的モデルに基づいて算出した最適フィードバックゲイ
ンとに基づき適応補正係数KSTRが算出され、該適応
補正係数KSTRがローパスフィルタブロックB24に
より平滑化され、該平滑化された適応補正係数(フィル
タ出力値)KSTRLOの平均値KFBCHKAVEが
算出され、該平均値KFBCHKAVEに基づいてエン
ジン1の燃料供給系の異常が検出される(ステップS1
111,S1116)。

Description

【発明の詳細な説明】
【0001】
【請求項1】 内燃機関の排気系に設けられた空燃比セ
ンサの出力に基づいて漸化式形式の制御器を用いて前記
機関に供給する燃料を補正する空燃比補正係数を算出
し、該算出された空燃比補正係数を用いて前記機関の空
燃比を目標値に収束させるように前記機関に供給する燃
料をフィードバック制御する制御手段を備えた内燃機関
の空燃比制御装置において、 前記算出された空燃比補正係数を平滑化するフィルタ手
段と、 前記平滑化された空燃比補正係数の平均値を算出する平
均値算出手段と、 前記平均値に基づいて前記機関の燃料供給系の異常を検
出する異常検出手段とを備えたことを特徴とする内燃機
関の空燃比制御装置。
【0002】
【産業上の利用分野】本発明は、漸化式形式の制御器を
用いたフィードバック制御により内燃機関に供給する混
合気の空燃比を制御する空燃比制御装置に関し、特に内
燃機関の排気系に設けられた空燃比センサの出力に応じ
て設定される空燃比補正係数に基づいて、燃料供給系に
発生した異常を検出する機能を有する空燃比制御装置に
関するものである。
【0003】
【従来の技術】内燃エンジンの排気系に設けた広域空燃
比センサの出力に基づいてエンジンに供給する混合気の
空燃比を比例項、積分項及び微分項を用いてフィードバ
ック制御するとともに、前記積分項を用いて燃料供給系
の異常を検出するようにした空燃比制御装置が従来より
知られている。
【0004】また、現代制御理論の1つである最適レギ
ュレータをこの空燃比フィードバック制御に応用し、前
記広域空燃比センサの出力と、機関の動的モデルに基づ
いて算出した最適フィードバックゲインとを用いて算出
した空燃比補正係数により空燃比をフィードバック制御
する空燃比制御装置が従来より知られている(例えば特
開平3−185244号公報)。
【0005】
【発明が解決しようとする課題】しかしながら、制御速
度が比較的高い上記最適レギュレータを応用した空燃比
制御装置においては、補正係数の動きが速くまた変化幅
も大きいため、これをそのまま従来の燃料供給系の異常
検出手法に用いると、正確な異常検出ができなという問
題があった。
【0006】本発明はこの問題を解決するためになされ
たものであり、漸化式形式の制御器を用いた内燃機関の
空燃比フィードバック制御を行いつつ、燃料供給系の異
常検出を容易かつ正確に行うことができる空燃比制御装
置を提供することを目的とする。
【0007】
【課題を解決するための手段】上記目的を達成するため
本発明は、内燃機関の排気系に設けられた空燃比センサ
の出力に基づいて漸化式形式の制御器を用いて前記機関
に供給する燃料を補正する空燃比補正係数を算出し、該
算出された空燃比補正係数を用いて前記機関の空燃比を
目標値に収束させるように前記機関に供給する燃料をフ
ィードバック制御する制御手段を備えた内燃機関の空燃
比制御装置において、前記算出された空燃比補正係数を
平滑化するフィルタ手段と、前記平滑化された空燃比補
正係数の平均値を算出する平均値算出手段と、前記平均
値に基づいて前記機関の燃料供給系の異常を検出する異
常検出手段とを備えたことを特徴とする。
【0008】
【作用】空燃比センサの出力に基づいて漸化式形式の制
御器を用いて空燃比補正係数が算出され、前記空燃比補
正係数が平滑化され、前記平滑化された空燃比補正係数
の平均値が算出され、前記平均値に基づいて前記機関の
燃料供給系の異常が検出される。
【0009】
【実施例】以下本発明の実施例を図面を参照して説明す
る。
【0010】図1は本発明の一実施例にかかる内燃機関
(以下「エンジン」という)及びその制御装置の構成を
示す図である。同図中、1は各気筒に吸気弁及び排気弁
(図示せず)を各1対ずつ設けたDOHC直列4気筒の
エンジンである。
【0011】エンジン1の吸気管2は分岐部(吸気マニ
ホルド)11を介してエンジン1の各気筒の燃焼室に連
通する。吸気管2の途中にはスロットル弁3が配されて
いる。スロットル弁3にはスロットル弁開度(θTH)
センサ4が連結されており、スロットル弁開度θTHに
応じた電気信号を出力して電子コントロールユニット
(以下「ECU」という)5に供給する。吸気管2に
は、スロットル弁3をバイパスする補助空気通路6が設
けられており、該通路6の途中には補助空気量制御弁7
が配されている。補助空気量制御弁7は、ECU5に接
続されており、ECU5によりその開弁量が制御され
る。
【0012】吸気管2のスロットル弁3の上流側には吸
気温(TA)センサ8が装着されており、その検出信号
がECU5に供給される。吸気管2のスロットル弁3と
吸気マニホルド11の間には、チャンバ9が設けられて
おり、チャンバ9には吸気管内絶対圧(PBA)センサ
10が取り付けられている。PBAセンサ10の検出信
号はECU5に供給される。
【0013】エンジン1の本体にはエンジン水温(T
W)センサ13が装着されており、その検出信号がEC
U5に供給される。ECU5には、エンジン1のクラン
ク軸(図示せず)の回転角度を検出するクランク角度位
置センサ14が接続されており、クランク軸の回転角度
に応じた信号がECU5に供給される。クランク角度位
置センサ14は、エンジン1の特定の気筒の所定クラン
ク角度位置で信号パルス(以下「CYL信号パルス」と
いう)を出力する気筒判別センサ、各気筒の吸入行程開
始時の上死点(TDC)に関し所定クランク角度前のク
ランク角度位置で(4気筒エンジンではクランク角18
0度毎に)TDC信号パルスを出力するTDCセンサ及
びTDC信号パルスより短い一定クランク角周期(例え
ば30度周期)で1パルス(以下「CRK信号パルス」
という)を発生するCRKセンサから成り、CYL信号
パルス、TDC信号パルス及びCRK信号パルスがEC
U5に供給される。これらの信号パルスは、燃料噴射時
期、点火時期等の各種タイミング制御及びエンジン回転
数NEの検出に使用される。
【0014】吸気マニホルド11の吸気弁の少し上流側
には、各気筒毎に燃料噴射弁12が設けられており、各
噴射弁は図示しない燃料ポンプに接続されているととも
にECU5に電気的に接続されて、ECU5からの信号
により燃料噴射時期及び燃料噴射時間(開弁時間)が制
御される。エンジン1の点火プラグ(図示せず)もEC
U5に電気的に接続されており、ECU5により点火時
期θIGが制御される。
【0015】排気管16は分岐部(排気マニホルド)1
5を介してエンジン1の燃焼室に接続されている。排気
管16には分岐部15が集合する部分の直ぐ下流側に、
広域空燃比センサ(以下「LAFセンサ」という)17
が設けられている。さらにLAFセンサ17の下流側に
は直下三元触媒19及び床下三元触媒20が配されてお
り、またこれらの三元触媒19及び20の間には酸素濃
度センサ(以下「O2センサ」という)18が装着され
ている。三元触媒19、20は、排気ガス中のHC,C
O,NOx等の浄化を行う。
【0016】LAFセンサ17は、ローパスフィルタ2
2を介してECU5に接続されており、排気ガス中の酸
素濃度(空燃比)に略比例した電気信号を出力し、その
電気信号をECU5に供給する。O2センサ18は、そ
の出力が理論空燃比の前後において急激に変化する特性
を有し、その出力は理論空燃比よりリッチ側で高レベル
となり、リーン側で低レベルとなる。O2センサ18
は、ローパスフィルタ23を介してECU5に接続され
ており、その検出信号はECU5に供給される。
【0017】排気還流機構30は、吸気管2のチャンバ
9と排気管16とを接続する排気還流路31と、排気還
流路31の途中に設けられ、排気還流量を制御する排気
還流弁(EGR弁)32と、EGR弁32の弁開度を検
出し、その検出信号をECU5に供給するリフトセンサ
33とから成る。EGR弁32は、ソレノイドを有する
電磁弁であり、ソレノイドはECU5に接続され、その
弁開度がECU5からの制御信号によりリニアに変化さ
せることができるように構成されている。
【0018】次に図2も合わせて参照して、蒸発燃料処
理装置40について説明する。燃料タンク41は通路4
2を介してキャニスタ45に連通し、キャニスタ45は
パージ通路43を介して吸気管2のチャンバ9に連通し
ている。キャニスタ45は、燃料タンク41内で発生す
る蒸発燃料を吸着する吸着剤46を内蔵し、外気取込口
47を有する。通路42の途中には、正圧バルブ及び負
圧バルブから成る2ウェイバルブ44が配設され、パー
ジ通路43の途中にはデューティ制御型の電磁弁である
パージ制御弁48、パージ通路43を流れる燃料蒸気を
含む混合気の流量を検出する流量センサ49及び該混合
気中のHC濃度を検出するHC濃度センサ50が設けら
れている。パージ制御弁48及びセンサ49、50は、
ECU5に接続されており、パージ制御弁48はECU
5からの信号に応じて制御され、センサ49、50の検
出信号はECU5に供給される。
【0019】蒸発燃料処理装置40によれば、燃料タン
ク41内で発生した蒸発燃料は、所定の設定圧に達する
と2ウェイバルブ44の正圧バルブを押し開き、キャニ
スタ45に流入し、キャニスタ45内の吸着剤46によ
って吸着され貯蔵される。パージ制御弁48はECU5
からのデューティ信号によって開弁/閉弁作動し、その
開弁時間中においてはキャニスタ45に一時蓄えられて
いた蒸発燃料は、チャンバ9の負圧により、キャニスタ
45の外気取込口47から吸入された外気とともにパー
ジ制御弁48を経てチャンバ9へ吸引され、各気筒に送
られる。また、外気などで燃料タンク41が冷却されて
燃料タンク内の負圧が増すと、2ウェイバルブ44の負
圧バルブが開弁し、キャニスタ45に一時蓄えられてい
た蒸発燃料は燃料タンク41へ戻される。このようにし
て、燃料タンク41内で発生した燃料蒸気が大気に放出
されることが抑止される。
【0020】エンジン1は、吸気弁及び排気弁のバルブ
タイミングを、エンジンの高速回転領域に適した高速バ
ルブタイミングと、低速回転領域に適した低速バルブタ
イミングとの2段階に切換可能なバルブタイミング切換
機構60を有する。このバルブタイミングの切換は、弁
リフト量の切換も含み、さらに低速バルブタイミング選
択時は2つの吸気弁のうちの一方を休止させて、空燃比
を理論空燃比よりリーン化する場合においても安定した
燃焼を確保するようにしている。
【0021】バルブタイミング切換機構60は、バルブ
タイミングの切換を油圧を介して行うものであり、この
油圧切換を行う電磁弁及び油圧センサがECU5接続さ
れている。油圧センサの検出信号はECU5に供給さ
れ、ECU5は電磁弁を制御してバルブタイミングの切
換制御を行う。
【0022】また、ECU5には、大気圧を検出する大
気圧(PA)センサ21が接続されており、その検出信
号がECU5に供給される。
【0023】ECU5は、上述した各種センサからの入
力信号波形を整形して電圧レベルを所定レベルに修正
し、アナログ信号値をデジタル信号値に変化する等の機
能を有する入力回路と、中央処理回路(CPU)と、該
CPUで実行される各種演算プログラムや後述する各種
マップ及び演算結果等を記憶するROM及びRAMから
なる記憶回路と、燃料噴射弁12等の各種電磁弁や点火
プラグに駆動信号を出力する出力回路とを備えている。
【0024】ECU5は、上述の各種エンジン運転パラ
メータ信号に基づいて、LAFセンサ17及びO2セン
サ18の出力に応じたフィードバック制御運転領域やオ
ープン制御運転領域等の種々のエンジン運転状態を判別
するとともに、エンジン運転状態に応じ、下記数式1に
より燃料噴射弁12の燃料噴射時間TOUTを演算し、
この演算結果に基づいて燃料噴射弁12を駆動する信号
を出力する。
【0025】
【数1】TOUT=TIMF×KTOTAL×KCMD
M×KFB 図3は上記数式1による燃料噴射時間TOUTの算出手
法を説明するための機能ブロック図であり、これを参照
して本実施例における燃料噴射時間TOUTの算出手法
の概要を説明する。なお、本実施例ではエンジンへの燃
料供給量は燃料噴射時間として算出されるが、これは噴
射される燃料量に対応するので、TOUTを燃料噴射量
若しくは燃料量とも呼んでいる。
【0026】図3においてブロックB1は、吸入空気量
に対応した基本燃料量TIMFを算出する。この基本燃
料量TIMFは、基本的にはエンジン回転数NE及び吸
気管内絶対圧PBAに応じて設定されるが、スロットル
弁3からエンジン1の燃焼室に至る吸気系をモデル化
し、その吸気系モデルに基づいて吸入空気の遅れを考慮
した補正を行うことが望ましい。その場合には、検出パ
ラメータとしてスロットル弁開度θTH及び大気圧PA
をさらに用いる。
【0027】ブロックB2〜B4は乗算ブロックであ
り、ブロックの入力パラメータを乗算して出力する。こ
れらのブロックにより、上記数式1の演算が行われ、燃
料噴射量TOUTが得られる。
【0028】ブロックB9は、エンジン水温TWに応じ
て設定されるエンジン水温補正係数KTW,排気還流実
行中に排気還流量に応じて設定されるEGR補正係数K
EGR,蒸発燃料処理装置40によるパージ実行時にパ
ージ燃料量に応じて設定されるパージ補正係数KPUG
等のフィードフォワード系補正係数をすべて乗算するこ
とにより、補正係数KTOTALを算出し、ブロックB
2に入力する。
【0029】ブロックB21は、エンジン回転数NE、
吸気管内絶対圧PBA等に応じて目標空燃比係数KCM
Dを決定し、ブロック22に入力する。目標空燃比係数
KCMDは、空燃比A/Fの逆数、すなわち燃空比F/
Aに比例し、理論空燃比のとき値1.0をとるので、目
標当量比ともいう。ブロックB22は、ローパスフィル
タ23を介して入力されるO2センサ出力VMO2に基
づいて目標空燃比係数KCMDを修正し、ブロックB1
8及びB23に入力する。ブロックB23は、KCMD
値に応じて燃料冷却補正を行い最終目標空燃比係数KC
MDMを算出し、ブロックB3に入力する。
【0030】ブロックB10は、ローパスフィルタ22
を介して入力されるLAFセンサ出力値を、CRK信号
パルスの発生毎にサンプリングし、そのサンプル値をリ
ングバッファメモリに順次記憶し、エンジン運転状態に
応じて最適のタイミングでサンプリングしたサンプル値
を選択し(LAFセンサ出力選択処理)、ローパスフィ
ルタブロックB16及びB17を介してブロックB18
及びB19に入力する。このLAFセンサ出力選択処理
は、サンプリングのタイミングによっては変化する空燃
比を正確に検出できないこと、燃焼室から排出される排
気ガスがLAFセンサ17に到達するまでの時間やLA
Fセンサ自体の反応時間がエンジン運転状態によって変
化することを考慮したものである。
【0031】ブロックB18は、検出空燃比と目標空燃
比との偏差に応じてPID制御によりPID補正係数K
LAFを算出してブロックB20に入力する。 ブロッ
クB19は、検出空燃比に基づいて適応制御(Self Tun
ing Regulation)により適応補正係数KSTRを算出し
てブロックB20に入力する。この適応制御は、目標空
燃比係数KCMD(KCMDM)を基本燃料量TIMF
に乗算するだけでは、エンジンの応答遅れがあるため目
標空燃比がなまされた検出空燃比になってしまうため、
これを動的に補償し、外乱に対するタフネス性を向上さ
せるために導入したものである。
【0032】ブロックB20は、入力されるPID補正
係数KLAF及び適応補正係数KSTRのいずれか一方
をエンジン運転状態に応じて選択し、フィードバック補
正係数KFBとしてブロックB4に入力する。これは、
エンジン運転状態によっては、適応制御ではなく従来の
PID制御によって算出したKLAF値を用いた方がよ
いことを考慮したものである。
【0033】ブロックB25ば、ローパスフィルタブロ
ックB24を介して適応補正係数KSTRのフィルタ出
力KSTRLO及びPID制御の積分項KLAFIが入
力され、後述する手法により燃料供給等の異常を検出す
るフューエルメータリングブロックである。
【0034】以上のように本実施例では、LAFセンサ
17の出力の応じて通常のPID制御により算出したP
ID補正係数KLAFと、適応制御により算出した適応
補正係数KSTRとを切り換えて、補正係数KFBとし
て上記数1に適用して、燃料噴射量TOUTを算出して
いる。適応補正係数KSTRにより、目標空燃比を変更
したときの追従性及び外乱に対するタフネス性を向上さ
せ、触媒の浄化率を向上させ、種々のエンジン運転状態
において良好な排気ガス特性を得ることができる。
【0035】本実施例では、上述した図3の各ブロック
の機能は、ECU5のCPUによる演算処理により実現
されるので、この処理のフローチャートを参照して処理
の内容を具体的に説明する。
【0036】図4は、LAFセンサ17の出力に応じて
PID補正係数KLAF及び適応補正係数KSTRを算
出し、最終的にフィードバック補正係数KFBを算出す
る処理のフローチャートである。本処理はTDC信号パ
ルスの発生毎に実行される。
【0037】ステップS1では、始動モードか否か、す
なわちクランキング中か否かを判別し、始動モードのと
きは始動モードの処理へ移行する。始動モードでなけれ
ば、目標空燃比係数(目標当量比)KCMD及び最終目
標空燃比係数KCMDMの算出(ステップS2)及びL
AFセンサ出力選択処理を行う(ステップS3)ととも
に検出当量比KACTの演算を行う(ステップS4)。
検出当量比KACTは、LAFセンサ17の出力を当量
比に変換したものである。
【0038】次いでLAFセンサ17の活性化が完了し
たか否かの活性判別を行う(ステップS5)。これは、
例えばLAFセンサ17の出力電圧とその中心電圧との
差を所定値(例えば0.4V)と比較し、該差が所定値
より小さいとき活性化が完了したと判別するものであ
る。
【0039】次にエンジン運転状態がLAFセンサ17
の出力に基づくフィードバック制御を実行する運転領域
(以下「LAFフィードバック領域」という)にあるか
否かの判別を行う(ステップS6)。これは、例えばL
AFセンサ17の活性化が完了し、且つフュエルカット
中やスロットル全開運転中でないとき、LAFフィード
バック領域と判定するものである。この判別の結果、L
AFフィードバック領域にないときはリセットフラグF
KLAFRESETを「1」に設定し、LAFフィード
バック領域にあるときは「0」とする。
【0040】続くステップS7では、リセットフラグF
KLAFRESETが「1」か否かを判別し、FKLA
FRESET=1のときは、ステップS8に進んでPI
D補正係数KLAF、適応補正係数KSTR及びフィー
ドバック補正係数KFBをいずれもに「1.0」に設定
するとともに、PID制御の積分項KLAFIを「0」
に設定して、本処理を終了する。また、FKLAFRE
SET=0のときは、フィードバック補正係数KFBの
演算を行って(ステップS9)、本処理を終了する。
【0041】以下上記ステップS2〜S4,S6及びS
9における処理の詳細を順次説明する。
【0042】図5は、図4のステップS2における最終
目標空燃比係数KCMDMを算出する処理のフローチャ
ートである。
【0043】ステップS23では、エンジン回転数NE
及び吸気管内絶対圧PBAに応じてマップを検索し、基
本値KBSを算出する。なお、そのマップにはアイドル
時用の値も設定されている。
【0044】続くステップS24では、エンジン始動直
後のリーンバーン制御を実行すべき条件が成立するか否
かを判別し、条件が成立したときは始動後リーンフラグ
FASTLEANを「1」に設定する一方、条件不成立
のときは「0」とする。このリーンバーン制御実行条件
は、例えばエンジン始動後所定期間内であって、エンジ
ン水温TW、エンジン回転数NE及び吸気管内絶対圧P
BAが所定範囲内にあるとき成立する。なお、始動直後
のリーンバーン制御は、エンジン始動直後の触媒が未活
性の状態でHCの排出量が増加すること防止する目的で
行うものである。
【0045】次いでステップS25では、スロットル弁
が全開(WOT)の状態か否かを判別し、全開のときは
WOTフラグFWOTを「1」に設定し、全開でなけれ
ば「0」とする。次いで、エンジン水温TWに応じて増
量補正係数KWOTを算出する(ステップS26)。こ
のとき高水温時の補正係数KXWOTも算出する。
【0046】続くステップS27では、目標空燃比係数
KCMDを算出し、次いで算出したKCMD値のリミッ
ト処理(所定上下限値の範囲内に入るようにする処理)
を行う。このステップS27の処理は図6を参照して後
述する。
【0047】続くステップS29では、O2センサ18
の活性化が完了しているか否かの判別を行い、活性化が
完了したときは、活性フラグFMO2を「1」に設定
し、完了していないときは、「0」とする。例えばエン
ジン始動後所定期間経過したとき、活性化完了と判定す
る。次いで、ステップS32に進み、O2センサ18の
出力VMO2に応じて目標空燃比係数KCMDの補正項
DKCMDO2を算出する。この処理は、O2センサ出
力VMO2と基準値VREFMとの偏差に応じてPID
制御により、補正項DKCMDO2を算出するものであ
る。
【0048】ステップS33では、次式により目標空燃
比係数KCMDの補正を行う。
【0049】KCMD=KCMD+DKCMDO2 これにより、LAFセンサ17の出力のずれを補償する
ように目標空燃比係数KCMDを設定することができ
る。
【0050】続くステップS34では、算出したKCM
D値に応じてKCMD−KETCテーブルを検索して補
正係数KETCを算出し、次式により最終目標空燃比係
数KCMDMを算出する。
【0051】KCMDM=KCMD×KETC 補正係数KETCは、KCMD値が増加し、燃料噴射量
が増加するほど、噴射による燃料冷却効果が大きくなる
ことを考慮して、その影響を補正するものであり、KC
MD値が増加するほど大きな値に設定される。
【0052】次いで、KCMDM値のリミット処理を行
うとともに(ステップS35)、ステップS33で得ら
れたKCMD値をリングバッファに格納して(ステップ
S36)、本処理を終了する。
【0053】図6は、図5のステップS27におけるK
CMD算出処理のフローチャートである。
【0054】先ずステップS51では、図5のステップ
S24で設定した始動後リーンフラグFASTLEAN
が「1」か否かを判別し、FASTLEAN=1である
ときは、KCMDASTLEANマップを検索して、リ
ーン制御時の中心空燃比に相当するリーン目標値KCM
DASTLEANを算出する(ステップS52)。ここ
で、KCMDASTLEANマップは、エンジン水温T
W及び吸気管内絶対圧PBAに応じてリーン目標値KC
MDASTLEANが設定されたマップである。そし
て、目標空燃比係数KCMDをリーン目標値KCMDA
STLEANに設定して(ステップS53)、ステップ
S59に進む。
【0055】一方前記ステップS51でFASTLAE
AN=0であって、始動後リーンバーン制御実行条件が
成立しないときは、エンジン水温TWが所定水温TWC
MD(例えば80℃)より高いか否かを判別する。そし
てTW>TWCMDが成立するときは、KCMD値を図
5のステップS23で算出した基本値KBSに設定して
(ステップS57)、ステップS59に進む。また、T
W≦TWCMDが成立するときは、エンジン水温TW及
び吸気管内絶対圧PBAに応じて設定されたマップを検
索して、低水温用目標値KTWCMDを算出し(ステッ
プS55)、基本値KBSがこのKTWCMD値より大
きいか否かを判別する(ステップS56)。その結果K
BS>KTWCMDであるときは、前記ステップS57
に進み、KBS≦KTWCMDであるときは、基本値K
BSを低水温用目標値KTWCMDに置き換えて(ステ
ップS58)、ステップS59に進む。
【0056】ステップS59では、O2センサ18の異
常が検出されているか否かを判別し、異常が検出されて
いなければ直ちにステップS61に進む一方、異常が検
出されているときは、調整用加算項KCMDOFFSE
Tを異常時用の調整値KCMDOFFSETFSに設定
して(ステップS60)、ステップS61に進む。
【0057】ここで、異常時用の調整値KCMDOFF
SETFSは、空燃比がややリッチ方向にバイアスされ
るような値に設定される。これにより、O2センサの異
常時において空燃比のリーン化によるトルク変動やノッ
キングを防止することができる。
【0058】そしてステップS61では、下記式により
KCMD値を補正してステップS62に進む。調整用加
算項KCMDOFFSETは、エンジンの排気系やLA
Fセンサの特性のばらつきや経時変化の影響を反映させ
て、目標空燃比係数KCMDを微調整し、三元触媒のウ
ィンドウゾーンの最適な位置をとるようにするためのパ
ラメータである。
【0059】 KCMD=KCMD+KCMDOFFSET ステップS62では、図5のステップS25で設定した
WOTフラグFWOTが「1」か否かを判別し、FWO
T=0であれば直ちに本処理を終了し、FWOT=1の
ときは、高負荷用のKCMD値の設定処理を行い(ステ
ップS63)、本処理を終了する。この処理は、KCM
D値を図5のステップS26で算出した高負荷用増量補
正係数KWOT,KXWOTと比較し、KCMD値がこ
れらの係数値より小さいときは、KCMD値に補正係数
KWOT又はKXWOTを乗算して補正を行うものであ
る。
【0060】次に図4のステップS3におけるLAFセ
ンサ出力選択処理について説明する。
【0061】エンジンの排気ガスは排気行程で排出され
ることから、多気筒エンジンの排気系集合部において空
燃比の挙動を見ると、明らかにTDC信号パルスに同期
している。したがって、LAFセンサ17により空燃比
を検出するときもTDC信号パルスに同期して行う必要
がある。ところが、センサ出力のサンプルタイミングに
よっては空燃比の挙動を正確に把握できない場合が生じ
る。例えば、TDC信号パルスに対して排気系集合部の
空燃比が図7のようであるとき、ECU5が認識する空
燃比は図8に示すように、サンプルタイミングによって
全く異なる値となる。この場合、実際のLAFセンサの
出力変化を可能な限り正確に把握できるタイミングでサ
ンプリングすることが望ましい。
【0062】さらに、空燃比の変化は排気ガスのセンサ
までの到達時間やセンサの反応時間によっても相違す
る。そのうち、センサまでの到達時間は排気ガス圧力、
排気ガスボリューム等に依存して変化する。さらに、T
DC信号パルスに同期してサンプリングすることはクラ
ンク角度に基づいてサンプリングすることになるので、
必然的にエンジン回転数NEの影響を受ける。このよう
に、空燃比の検出の最適なタイミングは、エンジン運転
状態に大きく依存する。
【0063】そこで、本実施例では図9に示すように、
CRK信号パルス(クランク角度30度毎に発生する)
の発生毎にサンプリングしたLAFセンサ出力をリング
バッファ(本実施例では18個の格納場所を有する)に
順次格納し、最適タイミングの出力値(17回前の値か
ら今回値までの中の最適の値)を検出当量比KACTに
変換してフィードバック制御に使用するようにしてい
る。
【0064】図10は、図4のステップS3におけるL
AFセンサ出力選択処理のフローチャートある。
【0065】先ずステップS81では、エンジン回転数
NE及び吸気管内絶対圧PBAを読み出し、次いで現在
のバルブタイミングが高速バルブタイミングか否かを判
別する(ステップS82)。その結果高速バルブタイミ
ングのときは高速バルブタイミング用のタイミングマッ
プを検索し(ステップS83)、低速バルブタイミング
のときは低速バルブタイミング用のタイミングマップを
検索し(ステップS84)、その検索結果に応じてリン
グバッファに格納したLAFセンサ出力VLAFを選択
して(ステップS85)、本処理を終了する。
【0066】上記タイミングマップは、図11に示すよ
うに、エンジン回転数NE及び吸気管内絶対圧PBAに
応じて、エンジン回転数NEが低いほど、あるいは吸気
管内絶対圧PBAが高いほど早いクランク角度位置でサ
ンプリングした値を選択するように設定されている。こ
こで、「早い」とは、前のTDC位置により近い位置で
サンプリングした値(換言すれば古い値)を意味する。
このように設定したのは、LAFセンサ出力は、図8に
示したように、実際の空燃比の極大値又は極小値(以下
「極値」という)に可能な限り近い位置でサンプリング
するのが最良であるが、その極値、例えば最初のピーク
値は、センサの反応時間を一定と仮定すれば、図12に
示すように、エンジン回転数NEが低下するほど早いク
ランク角度位置で生じ、また、負荷が高いほど排気ガス
圧力や排気ガスボリュームが増加し、排気ガスの流速が
増してセンサへの到達時間が早まるからである。
【0067】また、高速バルブタイミング用マップは、
同一のエンジン回転数NE又は吸気管内絶対圧PBAに
対しては、低速バルブタイミング用マップより早期のタ
イミングとなるように設定されている。これは、高速バ
ルブタイミングでは、低速バルブタイミングより排気弁
の開弁開始時期が早いからである。
【0068】以上のように、図10の処理によれば、エ
ンジン運転状態に応じて最適なタイミングでサンプリン
グしたセンサ出力VLAFが選択されるので、空燃比の
検出精度を向上させることができる。
【0069】次に図4のステップS4における検出当量
比KACTの算出処理について説明する。図13は、こ
のKACT算出処理のフローチャートである。
【0070】先ずステップS101では、上述した図1
0の処理により選択されたセンサ出力選択値VLAFS
ELからセンサ出力中心値VCENTを減算して、テン
ポラリ値VLAFTEMPを算出する。ここで、中心値
VCENTは、混合気の空燃比が理論空燃比のときのL
AFセンサ出力値である。
【0071】次いで、VLAFTEMP値が負の値か否
かを判別し(ステップS102)、VLAFTEMP<
0であって、空燃比が理論空燃比よりリーン側のとき
は、リーン補正係数KLBLLを乗算して、VLAFT
EMP値を補正する(ステップS103)一方、、VL
AFTEMP≧0であって、空燃比が理論空燃比よりリ
ッチ側のときは、リッチ補正係数KLBLRを乗算し
て、VLAFTEMP値を補正する(ステップS10
4)。ここで、リーン補正係数KLBLL及びリッチ補
正係数KLBLRは、LAFセンサに装着されたラベル
抵抗の値に応じて算出されるばらつき補正用の補正係数
である。ラベル抵抗値は、予めLAFセンサの特性を測
定して、その結果に応じて設定されており、ECU5が
その値を読み取って補正係数KLBLL,KLBLRを
決定する。
【0072】続くステップS105では、テンポラリ値
VLAFTEMPにテーブル中心値VOUTCNTを加
算して、修正出力値VLAFEを算出し、次いでVLA
FE値に応じてKACTテーブルを検索して、検出当量
比KACTを算出する(ステップS106)。ここで、
KACTテーブルは、修正出力値VLAFEに応じて検
出当量比KACTを算出するためのテーブルであり、テ
ーブル中心値VOUTCNTは理論空燃比(KACT=
1.0)に対応する格子点データ(修正出力値)であ
る。
【0073】以上の処理により、LAFセンサの特性ば
らつきの影響を排除した検出当量比KACTを得ること
ができる。
【0074】図14は、図4のステップS6におけるL
AFフィードバック領域判別処理のフローチャートであ
る。
【0075】先ずステップS121では、LAFセンサ
17が不活性状態にあるか否かを判別し、活性状態にあ
るときはフュエルカット中であることを「1」で示すフ
ラグFFCが「1」か否かを判別し(ステップS12
2)、FFC=0であるときは、スロットル弁全開中で
あることを「1」で示すフラグFWOTが「1」か否か
を判別し(ステップS123)、FWOT=1でないと
きは、図示しないセンサによって検出したバッテリ電圧
VBATが所定下限値VBLOWより低いか否かを判別
し(ステップS124)、VBAT≧VBLOWである
ときは、理論空燃比に対応するLAFセンサ出力のずれ
(LAFセンサストイキずれ)があるか否かを判別す
る。そして、ステップS121〜S125のいずれかの
答が肯定(YES)のときは、PID補正係数KLAF
を1.0(無補正値)にリセットすべき旨を「1」で示
すKLAFリセットフラグFKLAFRESETを
「1」に設定する(ステップS132)。
【0076】一方、ステップS121〜S125の答が
すべて否定(NO)のときは、KLAFリセットフラグ
FKLAFRESETを「0」に設定する(ステップS
131)。
【0077】続くステップS133では、O2センサ1
8が不活性状態にあるか否かを判別し、活性状態にある
ときは、エンジン水温TWが所定下限水温TWLOW
(例えば0℃)より低いか否かを判別する(ステップS
134)。そして、O2センサ18が不活性状態のとき
またはTW<TWLOWであるときは、PID補正係数
KLAFを現在値に維持すべきことを「1」で示すホー
ルドフラグFKLAFHOLDを「1」に設定して(ス
テップS136)、本処理を終了する。一方、O2セン
サ18が活性状態にあり且つTW≧TWLOWであると
きは、FKLAFHOLD=0として(ステップS13
5)、本処理を終了する。
【0078】次に図4のステップS9におけるフィード
バック補正係数KFBの算出処理を説明する。
【0079】フィードバック補正係数KFBは、前述し
たようにエンジン運転状態に応じてPID補正係数KL
AF又は適応補正係数KSTRに設定される。そこで、
先ず図15及び図16を参照して、これらの補正係数の
算出手法を説明する。
【0080】図15は、PID補正係数KLAF算出処
理のフローチャートである。
【0081】同図のステップS301では、ホールドフ
ラグFKLAFHOLDが「1」か否かを判別し、FK
LAFHOLD=1のときは、直ちに本処理を終了し、
FKLAFHOLD=0のときは、KLAFリセットフ
ラグFKLAFRESETが「1」か否かを判別する
(ステップS302)。その結果、FKLAFRESE
T=1のときは、ステップS303に進み、PID補正
係数KLAFを1.0に設定するとともに、積分制御ゲ
インKI及び目標当量比KCMDと検出当量比KACT
との偏差DKAFを「0」に設定して、本処理を終了す
る。
【0082】ステップS302でFKLAFRESET
=0のときは、ステップS304に進み、比例制御ゲイ
ンKP、積分制御ゲインKI及び微分制御ゲインKDを
エンジン回転数NE及び吸気管内絶対圧PBAに応じて
設定されたマップから検索する。ただし、アイドル状態
のときはアイドル用のゲインを採用する。次いで、目標
当量比KCMDと検出当量比KACTとの偏差DKAF
(k)(=KCMD(k)−KACT(k))を算出し
(ステップS305)、偏差DKAF(k)及び各制御
ゲインKP,KI,KDを下記式に適用して、比例項K
LAFP(k)、積分項KLAFI(k)及び微分項K
LAFD(k)を算出する(ステップS306)。
【0083】KLAFP(k)=DKAF(k)×KP KLAFI(k)=DKAF(k)×KI+KLAF
(k−1) KLAFD(k)=(DKAF(k)−DKAF(k−
1))×KD 続くステップS307〜S310では、積分項KLAF
I(k)のリミット処理を行う。すなわち、KLAFI
(k)値が所定上下限値KLAFILMTH,KLAF
ILMTLの範囲内にあるか否かを判別し(ステップS
307、S308)、KLAFI(k)>KLAFIL
MTHであるときは、KLAFI(k)=KLAFLM
THとし(ステップS310)、KLAFI(k)<K
LAFILMTLであるときは、KLAFI(k)=K
LAFILMTLとする(ステップS309)。
【0084】続くステップS311では、下記式により
PID補正係数KLAF(k)を算出する。
【0085】KLAF(k)=KLAFP(k)+KL
AFI(k)+KLAFD(k)+1.0 次いで、KLAF(k)値が所定上限値KLAFLMT
Hより大きいか否かを判別し(ステップS312)、K
LAF(k)>KLAFLMTHであるときは、KLA
F(k)=KLAFLMTHとして(ステップS31
6)、本処理を終了する。
【0086】ステップS312で、KLAF(k)≦K
LAFLMTHであるときは、KLAF(k)値が所定
下限値KLAFLMTLより小さいか否かを判別し(ス
テップS314)、KLAF(k)≧KLAFLMTL
であれば直ちに本処理を終了する一方、KLAF(k)
<KLAFLMTLであるときは、KLAF(k)=K
LAFLMTLとして(ステップS315)、本処理を
終了する。
【0087】本処理により、検出当量比KACTが目標
当量比KCMDに一致するように、PID制御によりP
ID補正係数KLAFが算出される。
【0088】次に適応補正係数KSTR算出処理につい
て、図16を参照して説明する。
【0089】図16は、図3のブロックB19、すなわ
ち適応制御(STR(Self TuningRegulator))ブロッ
クの構成を示すブロック図であり、このSTRブロック
は、目標空燃比係数(目標当量比)KCMD(k)と検
出当量比KACT(k)とが一致するように適応補正係
数KSTRを設定するSTRコントローラと、該STR
コントローラで使用するパラメータを設定するパラメー
タ調整機構とからなる。
【0090】本実施例における適応制御の調整則の一つ
に、ランダウらが提案したパラメータ調整則がある。こ
の手法は、適応システムを線形ブロックと非線形ブロッ
クとから構成される等価フィードバック系に変換し、非
線形ブロックについては入出力に関するポポフの積分不
等式が成立し、線形ブロックは強正実となるように調整
則を決めることによって、適応システムの安定を保証す
る手法である。この手法は、例えば「コンピュートロー
ル」(コロナ社刊)No.27,28頁〜41頁、ない
しは「自動制御ハンドブック」(オーム社刊)703頁
〜707頁に記載されているように、公知技術である。
【0091】本実施例では、このランダウらの調整則を
用いた。以下説明すると、ランダウらの調整則では、離
散系の制御対象の伝達関数A(Z-1)/B(Z-1)の分
母分子の多項式を数式2で、のようにおいたとき、
適応パラメータθハット(k)及び適応パラメータ調整
機構への入力ζ(k)は、数式2で、のように定め
られる。数式2では、m=1、n=1、d=3の場合、
即ち1次系で3制御サイクル分の無駄時間を持つプラン
トを例にとった。ここで、kは時刻、より具体的には制
御サイクルを示す。また、数式2において、u(k)及
びy(k)は、本実施例では、それぞれKSTR(k)
及びKACT(k)に対応する。
【0092】
【数2】 ここで、適応パラメータθハット(k)は、数式3で表
される。また、数式3中のΓ(k)及びeアスタリスク
(k)は、それぞれゲイン行列及び同定誤差信号であ
り、数式4及び数式5のような漸化式で表される。
【0093】
【数3】
【0094】
【数4】
【0095】
【数5】 また数式4中のλ1(k)、λ2(k)の選び方によ
り、種々の具体的なアルゴリズムが与えられる。λ1
(k)=1,λ2(k)=λ(0<λ<2)とすると漸
減ゲインアルゴリズム(λ=1の場合、最小自乗法)、
λ1(k)=λ1(0<λ1<1)、λ2(k)=λ2
(0<λ2<2)とすると、可変ゲインアルゴリズム
(λ2=1の場合、重み付き最小自乗法)、λ1(k)
/λ2(k)=σとおき、λ3が数式6のように表され
るとき、λ1(k)=λ3とおくと固定トレースアルゴ
リズムとなる。また、λ1(k)=1,λ2(k)=0
のとき固定ゲインアルゴリズムとなる。この場合は数式
4から明らかなように、Γ(k)=Γ(k−1)とな
り、よってΓ(k)=Γの固定値となる。
【0096】
【数6】 ここで、図16にあっては、前記STRコントローラ
(適応制御器)と適応パラメータ調整機構とは燃料噴射
量演算系の外におかれ、検出当量比KACT(k)が目
標当量比KCMD(k−d’)(ここでd’はKCMD
がKACTに反映されるまでの無駄時間)に適応的に一
致するように動作して適応補正係数KSTR(k)を演
算する。
【0097】このように、適応補正係数KSTR(k)
及び検出当量比KACT(k)が求められて適応パラメ
ータ調整機構に入力され、そこで適応パラメータθハッ
ト(k)が算出されてSTRコントローラに入力され
る。STRコントローラには入力として目標当量比KC
MD(k)が与えられ、検出当量比KACT(k)が目
標当量比KCMD(k)に一致するように漸化式を用い
て適応補正係数KSTR(k)が算出される。
【0098】適応補正係数KSTR(k)は、具体的に
は数式7に示すように求められる。
【0099】
【数7】 次に上述のようにして算出するPID補正係数KLAF
と適応補正係数KSTRとを切り換えて、すなわちPI
D制御と適応制御とを切り換えて、フィードバック補正
係数KFBを算出する手法を説明する。
【0100】図17は、図4のステップS9におけるフ
ィードバック補正係数KFBの算出処理のフローチャー
トである。
【0101】先ずステップS151では、図4の処理の
前回実行時がオープンループ制御であったか(FKLA
FRESET=1であったか)否かを判別し、オープン
ループ制御でなかったときは、目標当量比KCMDの変
化量DKCMD(=|KCMD(k)−KCMD(k−
1)|)が基準値DKCMDREFより大きいか否かを
判別する。そして、前回がオープンループ制御だったと
き又は、前回がフィードバック制御であり且つ変化量D
KCMDが基準値DKCMDREFより大きいときは、
PID補正係数KLAFによるフィードバック制御を実
行すべき運転領域(以下「PID制御領域」という)と
判定し、カウンタCを「0」にリセットするとともに
(ステップS153)、ステップS164に進み、PI
D補正係数KLAF演算処理(図19(a))を実行す
る。
【0102】図19(a)のステップS201では、前
回の制御でSTRフラグFKSTRが「1」であったか
否かを判別する。このSTRフラグFKSTRは、適応
補正係数KSTRによるフィードバック制御を実行すべ
き運転領域(以下「適応制御領域」という)であること
を「1」で示し、フィードバック補正係数算出後に設定
される(ステップS204、図19(b)、ステップS
213)。
【0103】ステップS201で、前回はFKSTR=
0であったときは直ちにステップS203に進み、前回
はFKSTR=1であったときは、PID制御の積分項
の前回値KALFI(k−1)を、適応補正係数の前回
値KSTR(k−1)に設定して(ステップS20
2)、ステップS203に進む。ステップS203で
は、前述した図15の処理によりPID補正係数KLA
Fを算出し、次いでステップS204に進み、STRフ
ラグFKSTRを「0」に設定して、図19(a)の処
理を終了する。
【0104】ここで、適応制御からPID制御への切換
時(前回FKSTR=1のとき)は、PID制御の積分
項KLAFIが急変する可能性があるため、ステップS
202により、KLAFI(k−1)=KSTR(k−
1)としている。これにより、適応補正係数KSTR
(k−1)とPID補正係数KLAF(k)との差を小
さくとどめ、切換を滑らかにして制御の安定性を確保す
ることができる。
【0105】図17にもどり、続くステップS165で
は、フィードバック補正係数KFBをステップS164
で算出したPID補正係数KLAF(k)に設定して
(ステップS165)、本処理を終了する。
【0106】なお、前回がオープンループ制御であった
ときは、PID制御領域と判定するのは、例えばフュエ
ルカット状態からの復帰時のような場合には、LAFセ
ンサの検出遅れなどから、必ずしも検出値が真の値を示
すとは限らないため、制御が不安定となる可能性がある
からである。また、同様の理由で、目標当量比KCMD
の変化量DKCMDが大きいとき、例えばスロットル全
開増量状態から復帰したとき、リーンバーン制御から理
論空燃比制御に復帰したとき等においてもPID制御領
域と判定している。
【0107】ステップS151及びS152の答がとも
に否定(NO)のとき、すなわち前回もフィードバック
制御であり、かつ目標当量比KCMDの変化量DKCM
Dが基準値DKCMDREF以下のときは、カウンタC
を「1」だけインクリメントして(ステップS15
4)、ステップS155でカウンタCの値を所定値CR
EF(例えば5)と比較する。ここで、カウンタCの値
がCREF値以下の場合は前記ステップS164に進
む。
【0108】カウンタCの値がCREF値以下のときP
ID制御領域とするのは、オープンループ制御からの復
帰直後や目標当量比KCMDが大きく変化した直後は、
燃料の燃焼が完了するまでの遅れやLAFセンサの検出
遅れの影響を吸収できないからである。
【0109】次にステップS156に進み、適応制御領
域か否かの判別処理(図18)を実行する。図18の処
理は、現在のエンジン運転状態から、フィードバック補
正係数KFBを、適応制御則にしたがって求めるか、P
ID制御則に従って求めるか判別するものである。
【0110】すなわち、エンジン水温TWが所定水温T
WSTRONより低いか否かを判別し(ステップS17
0)、TW≧TWSTRONであるときは、エンジン回
転数NEが所定回転数NESTRLMT以上であるか否
かを判別し(ステップS171)、NE<NESTRL
MTであるときは、エンジンがアイドル状態か否かを判
別し(ステップS172)、アイドル状態でないとき
は、吸気管内絶対圧PBAが所定値以下の低負荷状態か
否かを判別し(ステップS173)、低負荷状態でない
ときは、エンジンのバルブタイミングが高速バルブタイ
ミングか否かを判別し(ステップS174)、高速バル
ブタイミングでないときは、検出当量比KACTが所定
値aより小さいか否かを判別し(ステップS175)、
所定値a以上のときは、検出当量比KACTが所定値b
(>a)より大きいか否かを判別する(ステップS17
6)。
【0111】その結果、ステップS170〜S176の
いずれかの答が肯定(YES)のときは、PID制御領
域と判定して(ステップS178)、本処理を終了す
る。
【0112】ここで、PID制御領域と判定し、PID
制御によりフィードバック補正係数KFBを算出するこ
ととした理由は以下の通りである。低水温時(TW<T
WSTRON)は、燃焼が安定せず、失火などが生じる
おそれがあり、安定した検出当量比KACTが得られな
いからである。なお、エンジン水温TWが異常に高いと
きも、同様の理由でPID制御によりフィードバック補
正係数KFBを算出する。また、高回転時(NE≧NE
STRLMT)は、ECUの演算時間が不足しがちであ
るとともに、燃焼も安定しないからである。また、高速
バルブタイミング選択時は、吸排気弁がともに開弁して
いるオーバラップ期間が長いので、吸気がそのまま排気
弁を通過して排出される、いわゆる吹き抜けが生じるお
それがあり、安定した検出当量比KACTを期待できな
いからである。また、エンジンのアイドル時は、運転状
態がほぼ安定しており、適応制御のような高いゲインの
制御は必要としないからである。
【0113】また、検出当量比KACTが所定値aより
小さいとき若しくは所定値bより大きいときは、エンジ
ンの空燃比がリーン又はリッチのときであり、適応制御
のような高いゲインの制御は行わない方がよいからであ
る。この判別は、本実施例においては、検出当量比KA
CTで行ったが、目標当量比KCMDを用いて行っても
よい。
【0114】一方ステップS170〜S176の答がす
べて否定(NO)のときは、適応制御領域と判定して
(ステップS177)、本処理を終了する。
【0115】図17に戻り、ステップS157では、図
18の処理の結果から、フィードバック補正係数KFB
を適応制御で算出するか否かを判別する。ステップS1
57の答が否定(NO)のときは、前記ステップS16
4に進み、ステップS157の答が肯定(YES)のと
きは、ステップS158に進み、前回STRフラグFK
STRが「0」であったか否かを判別する。
【0116】その結果前回FKSTR=1であったとき
は、直ちにステップS161に進み、前回はFKSTR
=0であったときは、検出当量比KACTが所定上下限
値KACTLMTH(例えば1.01),KACTLM
TL(例えば0.99の範囲内にあるか否かを判別し
(ステップS159、S160)、KACT<KACT
LMTL又はKACT>KACTLMTHであるとき
は、前記ステップS164に進んで、PID補正係数K
LAFを算出する。また、KACTLMTL≦KACT
≦KACTLMTHであるときは、ステップS161に
進み、KSTR演算処理(図19(b))を実行する。
【0117】ステップS158〜S160により、PI
D制御から適応制御への切換は、適応制御領域であっ
て、且つ検出当量比KACTが1.0付近の値のときに
行われる。これにより、PID制御から適応制御への切
換を滑らかに行うことができ、制御の安定性を確保する
ことができる。
【0118】図19(b)のステップS210では、前
回フラグKSTRが「0」であったか否かを判別する。
その結果、前回はFKSTR=1であったときは、直ち
にステップS212に進み、前述した手法により適応補
正係数KSTRを算出し、次いでフラグFKSTRを
「1」に設定して、図19(b)の処理を終了する。
【0119】一方、前回はFKSTR=0であったとき
は、適応パラメータ(ゲインを決定するスカラ量)b0
を、PID補正係数の前回値KLAF(k−1)で除算
した値に置き換えて(ステップS211)、前記ステッ
プS212に進む。
【0120】ステップS211で、適応パラメータb0
をb0/KLAF(k−1)に置き換えることにより、
PID制御から適応制御への切換をより滑らかに行うこ
とができ、制御の安定性を確保することができる。これ
は、以下のような理由による。前記数式7のb0をb0
/KLAF(k−1)に置き換えると、数式8の第1式
に示すようになるが、第1式の第1項は、PID制御実
行中はKSTR(k)=1としているので、1となる。
従って、適応制御開始当初のKSTR(k)値は、KL
AF(k−1)に等しくなり、補正係数値が滑らかに切
り換えられることになる。
【0121】
【数8】 図17に戻り、ステップS161で求めた適応補正係数
KSTRの値と1.0との差の絶対値|KSTR(k)
−1.0|が基準値KSTRREFより大きいか否かを
判別し(ステップS162)、|KSTR(k)−1.
0|>KSTRREFであるときは、前記ステップS1
64に進む一方、|KSTR(k)−1.0|≦KST
RREFであるときは、フィードバック補正係数KFB
をKSTR(k)値に設定して(ステップS163)、
本処理を終了する。
【0122】ここで、適応補正係数KSTRと1.0と
の差の絶対値が基準値KSTRREFより大きいとき
は、PID制御領域とするのは、制御の安定性確保のた
めである。
【0123】図20及び図21は、本発明が適用される
燃料供給系の異常検出プログラムフローチャートを示
し、本プログラムはバックグラウンド処理手法によりE
CU5において実行される。
【0124】図20において、まずステップS1101
では、燃料供給系の異常検出(モニタ)を行うべきこと
を“0”によって示すフラグFFMPASSが“1”で
あるか否かを判別し、その答が肯定(YES)、即ち燃
料供給系の異常検出を行う指示が未だない場合は、ステ
ップS1102へ進む。
【0125】ステップS1102では、後述するモニタ
条件の継続時間を設定するモニタ条件持続タイマtCO
NT、パージカット後の安定化時間を設定するパージカ
ット後安定化タイマtFMPGS、及び空燃比フィード
バック補正係数(空燃比補正係数)KFBの積分値KA
Vの算出時間を設定するKAV算出タイマtCHKAV
Eをそれぞれ所定値に初期化してスタートさせる。な
お、これらのタイマはダウンカウンタで構成されてい
る。
【0126】続くステップS1103では、燃料供給系
の異常検出を行うためにパージカットを実施すべきこと
を“1”によって示すフラグFPGSCNTが“0”で
あるか否かを判別する。このフラグFPGSCNTは、
後述する異常被判別係数KFBCHKAVEの算出処理
において使用され、パージの影響による誤検出を排除す
るためのパージカットの指示が出ている場合にパージカ
ットを実施するためのフラグである(後述するステップ
S1220で“1”にセットされる)。
【0127】ステップS1103の答が肯定(YE
S)、即ちフラグFPGSCNTが“0”であり前記パ
ージカットを実施しなかった場合はそのまま本ルーチン
を終了する。また、その答が否定(NO)、即ち前記パ
ージカットを実施した場合はパージコントロールを行う
べきことを“1”によって示すフラグFPGSを“1”
に設定すると共に、前記フラグFPGSCNTを“0”
に設定して、再びパージを行えるように処理を戻して本
ルーチンを終了する(ステップS1104)。
【0128】一方、前記ステップS1101の答が否定
(NO)、即ち燃料供給系の異常検出を行う指示が出た
場合は、ステップS1105,S1106,S1107
の判別処理を順次実行する。すなわち、ステップS11
05では、パージの影響による誤検出を排除するためモ
ニタの禁止を行うべきことを“1”によって示すフラグ
FFMPGPASSが“1”であるか否かを判別する。
このフラグFFMPGPASSは、後述するステップS
1120で“1”にセットされる。
【0129】ステップS1106では、燃料供給系の異
常を“1”によって示すフラグFFMNGが“1”でい
るか否かを判別する。このフラグFFMNGは、後述す
る燃料供給系の異常が確定した場合に“1”にセット
(後述ステップS1113)される。
【0130】ステップS1107においては、本モニタ
がLAFセンサ17を使用して行われるのでLAFセン
サ17が異常であるか否かを判別する。
【0131】これらの判別処理の答が1つでも肯定(Y
ES)、即ち、フラグFFMPGPASS=“1”、フ
ラグFFMNG=“1”、あるいはLAFセンサが異常
である場合は、燃料供給系の異常検出を行わないとして
前記ステップS1102,S1103,S1104の処
理を前述同様に実行する。
【0132】そして、ステップS1105〜ステップS
1107の判別処理において、その答が全て否定(N
O)の場合、即ちフラグFFMPGPASS=“0”、
フラグFFMNG=“0”、及びLAFセンサが異常で
ない場合は、燃料供給系の異常検出を行うものとして次
のステップS1108へ進み、後述のサブルーチンで示
す異常被判別係数KFBCHKAVEの算出処理を行
う。
【0133】前記ステップS1108における異常被判
別係数KFBCHKAVEの算出処理後は、ステップS
1109へ進む。このステップS1109では、前記異
常被判別係数KFBCHKAVEが算出されたことを
“1”で示すフラグFKFBCHKAVECHKが
“1”であるか否かを判別し、その答が否定(NO)、
即ち異常被判別係数KFBCHKAVEが算出されてい
ないときは本ルーチンを終了する。その答が肯定(YE
S)、即ち異常被判別係数KFBCHKAVEが算出さ
れた場合は図21のステップS1111に進み、その算
出された異常被判別係数KFBCHKAVEがそのKF
BCHKAVE値の上限値KFBCHKAVEFSHよ
りも大きいか否かを判別する。
【0134】ステップS1111の判別処理の答が肯定
(YES)、即ち異常被判別係数KFBCHKAVEが
そのKFBCHKAVE値の上限よりも大きい場合は、
燃料供給系に異常があると判別し、ステップS1112
において、パージカットを行うべきことを“1”で示す
フラグFFMPGSを“0”に設定し、続いてステップ
S1113で前記フラグFFMNGを“1”に設定して
本ルーチンを終了する。
【0135】また、前記ステップS1111の判別の答
が否定(NO)の場合は、S1ステップS1114に進
む。このステップS1114では、パージの影響による
誤検出の可能性の有無を判断するための閾値KFBCH
KAVEPGLよりも今回のKFBCHKAVE値が小
さいか否かを判別する。ここで、閾値KFBCHKAV
EPGLは、図26に示すようにKFBCHKAVE値
の下限値KFBCHKAVEFSLよりもやや大きく設
定する。これは、閾値KFBCHKAVEPGLを下限
値KFBCHKAVEFSLと同値にすると、後述する
パージカットを行った際に、KFBCHKAVE値の変
動が現れる以前に燃料供給系が異常と判定されるおそれ
があるためである。
【0136】ステップS1114の判別の答が肯定(Y
ES)、即ちKFBCHKAVE値が閾値KFBCHK
AVEPGLよりも小さく(図26のA1)、パージの
影響による誤検出の可能性があると判断された場合はス
テップS1115に進み、前記フラグFFMPGSを
“1”にして次回のモニタでパージカットを実施するよ
うに指示する(このパージカットは後述するステップS
1219,S1220で実施される)。このように、異
常被判別係数KFBCHKAVEが閾値KFBCHKA
VEPGLを下回ったときのみパージカットを行うこと
により、的確にパージの影響による誤検出を防止できる
だけでなく、不要なパージカットが行われることがなく
なる。これにより、頻繁なパージカット/パージの切り
換えを行う必要がなくなり、運転性の悪化を防止でき
る。
【0137】次いでステップS1116へ進み、KFB
CHKAVE値がそのKFBCHKAVE値の下限値K
FBCHKAVEFSLよりも小さいか否かを判別し、
その答が肯定(YES)、即ちKFBCHKAVE値が
下限値KFBCHKAVEFSLよりも小さい場合は、
燃料供給系に異常があるとして前記ステップS1112
及びステップS1113の処理を経て本ルーチンを終了
する。その答が否定(NO)、即ちKFBCHKAVE
値が下限値KFBCHKAVEFSLよりも大きい場合
は、燃料供給系に異常がないとしてステップS1117
で燃料供給系に異常がないことを“1”よって示すフラ
グFFMOKを“1”に設定し、本ルーチンを終了す
る。
【0138】一方、次回のモニタで前記ステップS11
14の判別を行った際、その答が否定(NO)、即ちK
FBCHKAVE値が閾値KFBCHKAVEPGLよ
りも大きくなっている場合(前回のパージカットにより
KFBCHKAVE値が上昇する;図26のA2)はス
テップS1118へ進み、前回(ステップS1115)
でパージカットが指示されていたか否かを判別し、その
答が肯定(YES)、即ちフラグFFMPGSが“1”
で前回パージカットが指示されていた場合は、ステップ
S1119でフラグFFMPGSを“0”に設定してパ
ージカットを停止する(図26のA3)。
【0139】そして、このような時にモニタを実行する
ことは、パージの影響によって正確なモニタが実施でき
ない状況にあると判断し、続くステップS1120で前
記フラグFFMPGPASSを“1”に設定して、モニ
タを禁止する指示を出す(図26のA4)。その後は、
前記ステップS1116へ進んで前記同様の処理後、本
ルーチンを終了する。
【0140】次に、図22〜図25のフローチャートを
用いて前記ステップS1108における異常被判別係数
KFBCHKAVEの詳細な算出手法を説明する。
【0141】図22において、まずステップS1201
では、エンジン運転が特定運転領域にあるか否かを判別
する。即ちエンジン回転数NEが下限回転数NAVEL
(例えば1504rpm)と上限回転数NAVEL(例えば249
6rpm)との間にあり(該上下限回転数はAT車とMT車
とで別の値に設定してもよい)、吸気管内絶対圧PBA
が下限圧PBAVEL(例えば263mmHg)と上限圧PB
AVEH(例えば435mmHg)との間にあり(該上下限圧
はAT車とMT車とで別の値に設定してもよい)、吸気
温TAが下限温度TAAVEL(例えば20℃)と上限
温度TWAVEH(例えば70℃)との間にあり、エン
ジン水温TWが下限温度TAAVEL(例えば70℃)
と上限温度(例えば90℃)との間にあり、車速Vが下
限速度VAVELと上限速度VAVEHとの間にあり、
且つスロットル弁開度θTHが下限開度θTHAVEL
と上限開度θTHAVEHとの間にあるときエンジンが
特定運転領域にあるとする。
【0142】ステップS1201の答が肯定(YE
S)、即ちエンジン運転が特定運転領域にある場合はス
テップS1202へ進み、空燃比フィードバック制御中
であるか否かを判別する。前記ステップS1201また
はステップS1202の答が否定(NO)、即ちエンジ
ン運転が特定運転領域にない場合、または空燃比フィー
ドバック制御が行われていない場合は、LAFセンサ1
7の出力に応じた空燃比補正係数KFBの算出が行われ
ないので、KFBCHKAVE値の算出処理は実行せず
に、図23に示すステップS1203〜ステップS12
09の処理を行い、本サブルーチンを終了する。
【0143】すなわち、ステップS1203〜S120
5において、順次、前記モニタ条件持続タイマtCON
T、パージカット後安定化タイマtFMPGS、及びK
AV算出タイマtCHKAVEをそれぞれ所定値に初期
化してスタートさせる。さらに、ステップS1206で
前記フラグFKFBCHKAVECHKを“0”に設定
しておき、続くステップS1207で前記フラグFPG
SCNTが“0”であるか否かを判別する。その答が否
定(NO)、即ちフラグFPGSCNTが“0”でない
場合はステップS1208へ進み、前記フラグFPGS
を“1”に設定すると共に、前記フラグFPGSCNT
を“0”に戻して、ステップS1209でフラグFKA
CTSTを“0”に設定して本サブルーチンを終了す
る。ここで、フラグFKACTSTは、他の制御ルーチ
ンでLAFセンサ17の出力を当量比に変換して得られ
る検出当量比KACTと目標当量比KCMDとの大小関
係の反転(以下単に「KACT値の反転」という)があ
ったときに“1”に設定される反転確認フラグである
(後述のステップS1217で“1”にセットされ
る)。また、前記ステップS1207の答が肯定(YE
S)、即ちフラグFPGSCNTが“0”のときは、前
記ステップS1208をスキップしてステップS120
9を経て本サブルーチンを終了する。
【0144】図22に戻り、前記ステップS1201及
びステップS1202の答が肯定(YES)、即ちエン
ジン運転が特定運転領域となり、且つ空燃比フィードバ
ック制御中となった場合はステップS1210へ進み、
前記フラグFKFBCHKAVECHKが“1”である
か否かを判別する。その答が否定(NO)、即ちフラグ
FKFBCHKAVECHKが0”で未だ異常被判別係
数KFBCHKAVEが算出されていないときは次のス
テップS1211へ進んで、タイマtCONTが“0”
であるか否かを判別する。
【0145】前記ステップS1210の答が肯定(YE
S)、即ちフラグFKFBCHKAVECHKが“1”
で既にKFBCHKAVE値が算出されている場合、ま
たは前記ステップS1211の答が否定(NO)、即ち
タイマtCONTが“0”でない場合は、前記ステップ
S1207〜ステップS1209の処理を同様に行って
本サブルーチンを終了する。
【0146】前記ステップS1210の答が否定(N
O)、即ちKFBCHKAVE値が算出されておらず、
前記ステップS1211の答が肯定(YES)、即ちタ
イマtCONTが“0”となり、エンジン運転が特定運
転領域にある空燃比フィードバック制御状態が所定時間
継続した場合は、モニタ条件が成立したことになり、ス
テップS1300以降で実際に異常被判別係数KFBC
HKAVE算出の処理を行う。
【0147】まず、ステップS1300では図19のス
テップS204又はS213で設定したフラグFKST
Rが「1」か否かを判別する。その判別の結果、「1」
に設定されていないときは、積分値KAV算出のための
異常判定パラメータKFBCHKに、PID制御の積分
項KLAFIをセットし(ステップS1301)、一方
「1」に設定されているときは異常判定パラメータKF
BCHKにSTR制御の適応補正係数KSTRのフィル
タ出力値KSTRLOをセットして(ステップS130
2)からステップS1212へ進む。なおここで、フィ
ルタ出力値KSTRLOは適応補正係数KSTRをロー
パスフィルタブロックB24に通過させ、いわゆる一次
遅れプロセス等によりその値を平滑化して得られる。制
御応答性の非常に高いSTR制御では、その補正係数K
STRの動きおよび変化幅が大きいので、ローパスフィ
ルタ出力値KSTRLOを用いることにより、積分値K
AVの変動を抑制し、適切な異常被判別係数KFBCH
KAVEを得ることができる。その結果、適応補正係数
KSTRを用いて正確な異常検出を行うことが可能とな
る。
【0148】次に、ステップS1212では、前記フラ
グFFMPGSが“1”であるか否かを判別する。初回
は、その答が否定(NO)、即ちフラグFFMPGSが
“0”でパージカットの指示が出ていないので、図24
のステップS1213へ進む。
【0149】図24において、ステップS1213で
は、タイマtFMPGSが“0”となったか否かを判別
し、その答が否定(NO)、即ち前記ステップS120
5でスタートされたタイマtFMPGSが“0”となっ
ていない場合は、パージ開始から所定時間の経過がない
としてステップS1214へ進む。このステップS12
14では、前記フラグFKACTSTを“0”にして本
サブルーチンを終了する。
【0150】前記ステップS1213の答が肯定(YE
S)、即ちタイマtFMPGSが“0”となってパージ
開始から所定時間経過した場合は、ステップS1215
へ進み、前記フラグFKACTSTが“1”であるか否
かを判別する。初回では、その答は否定(NO)、即ち
フラグFKACTSTが“0”であってKACT値の反
転は確認されていないので、ステップS1216におい
てKACT値が反転されているか否かを判別する。その
答が否定(NO)、即ちKACT値が反転されていない
場合は、本サブルーチンを終了し、肯定(YES)、即
ちKACT値が反転されていた場合は、ステップS12
17で前記フラグFKACTSTを“1”に設定すると
共に、ステップS1218で現在のKFBCHK値をそ
の積分値KAVの初期値として設定して本サブルーチン
を終了する。
【0151】図22に戻り、2回目以降において、前記
ステップS1212の答が肯定(YES)、即ちフラグ
FFMPGSが“1”となりパージの影響による誤検出
を排除するためのパージカットの指示が出ている場合
は、ステップS1219へ進む。このステップS121
9では、前記フラグFPGSが“1”であるか否かを判
別し、その答が肯定(YES)、即ちパージカットの指
示が出ているにも拘らずフラグFPGSが“1”で実際
にパージカットが行われていない場合は、ステップS1
220へ進む。
【0152】ステップS1220では、前記フラグFP
GSを“0”に設定してパージカットを指示し、且つ前
記フラグFPGSCNTを“1”に設定してパージカッ
トを実施した後、図24に示す前記ステップS1213
へ進む。また、前記ステップS1219の答が否定(N
O)、パージカット指示によりパージカットとなってい
る場合は、そのままステップS1213へ進む。このス
テップS1213では、上記同様の処理を行って前記ス
テップS1215へ進む。
【0153】ステップS1215の判別では、前回でK
ACT値が反転していればフラグFKACTSTが
“1”となっているので、その答は肯定(YES)、即
ちKACT値の反転が確認され、ステップS1221へ
進んで、再度、KACT値が反転されているか否かを判
別する。その答が肯定(YES)、即ちKACT値が反
転されているときは下記数式9に基づき異常判定パラメ
ータKFBCHKの学習平均値である積分値KAVを算
出する(ステップ1222)。
【0154】
【数9】 但し、CO2AVは1〜100Hのうち、特定運転領域に
おいて異常判定パラメータKFBCHKの変化に対する
追従性をよくするために比較的大きな値に設定される変
数であり、KAV’は積分値KAVの前回値であって、
その初期値は、前回エンジンが特定運転領域あった時に
得られ記憶された最後のKFBCHKAVE値とし、エ
ンジン始動後最初に特定運転領域に突入した時は、係数
KFBCHKAVE値の初期値とする。
【0155】また、ステップS1221の答が否定(N
O)、即ちKACT値が反転されていない場合は、前記
ステップS1222をスキップして、積分値KAVは前
回値を採用する。
【0156】続くステップS1223では、タイマtC
HKAVEが“0”となっているか否かを判別し、その
答が否定(NO)、即ちタイマtCHKAVEが“0”
となっていない場合は本サブルーチンを終了する。その
答が肯定(YES)、即ちタイマtCHKAVEが
“0”となりKAV値の算出後所定時間が経過した場合
は、図25のステップS1224へ進む。
【0157】ステップS1224では、このように決定
された積分値KAVが、前回KFBCHKAVE値に経
年変化判定用偏差ΔKFBCHKAVE(例えば800
H)を加算した値より大きいか否かを判別する。なお、
係数KFBCHKAVEの初期値は他の制御ルーチンで
決定されるKFBの平均値KREFとする。このステッ
プS1224の答が肯定(Yes)ならば下記数式10
に基づき異常被判別係数KFBCHKAVEの今回値を
算出して更新する(ステップS1225)。
【0158】
【数10】KFBCHKAVE=KFBCHKAVE’
+α×ΔKFBCHKAVE 但しKFBCHKAVE’は係数KFBCHKの前回値
を示し、右辺の係数αは運転状態に応じて設定される係
数(≦1.0)であり、例えば0.5に設定される。
【0159】次にステップS1226でフラグFKFB
CHKAVECHKを、1に設定して、ステップS12
27へ進む。このステップS1227では、フラグFP
GSCNTが“0”であるか否かを判別し、その答が肯
定(YES)、即ち燃料供給系の異常検出のためのパー
ジカットを実施していなかった場合は、本サブルーチン
を終了し、その答が否定(NO)、即ち燃料供給系の異
常検出のためのパージカットを実施していた場合は、ス
テップS1228へ進む。
【0160】ステップS1228では、前記フラグFP
GSを“1”に設定すると共に、前記フラグFPGSC
NTを“0”に設定してパージを元に戻し、本サブルー
チンを終了する。
【0161】ステップS1224の答が否定(No)な
らば前記積分値KAVが、前回KFBCHKAVE値か
ら前記経年変化判定用偏差値ΔKFBCHKAVEを減
算した値より小さいか否かを判別する(ステップS12
29)。この答が肯定(Yes)ならば下記数式11に
基づき異常被判別係数KFBCHKAVEの今回値を算
出して更新する(ステップS1230)。
【0162】
【数11】KFBCHKAVE=KFBCHKAVE’
−α×ΔKFBCHKAVE その後、前記ステップS1226,S1227,S12
28の処理を前記同様に行って本サブルーチンを終了す
る。また、前記ステップS1229の答が否定(NO)
であれば前記ステップS1230をスキップして本サブ
ルーチンを終了する。
【0163】図22乃至図25の処理により、空燃比制
御がPID制御による場合とSTR制御による場合とに
かかわらず、異常被判別係数KFBCHKAVEが適切
に算出され、これを図20、図21の燃料供給系の異常
検出処理に用いることにより、正確な異常検出を行うこ
とができる。
【0164】なお、上述した実施例では適応制御実行中
は、KSTR値をローパスフィルタ処理したKSTRL
O値を用いて(KFBCHK=KSTRLOとして)積
分値KAVを算出するようにしたが、これに限るもので
はなく、例えば適応制御実行中はKFBCHK=KST
Rとするとともに、数式9の変数CO2AVをPID制
御実行中より小さな値とし、数式9によるなましの度合
をより大きくするようにしてもよい。
【0165】
【発明の効果】以上詳述したように本発明の内燃機関の
空燃比制御装置によれば、空燃比センサの出力に基づい
て漸化式形式の制御器を用いて空燃比補正係数が算出さ
れ、前記空燃比補正係数が平滑化され、前記平滑化され
た空燃比補正係数の平均値が算出され、前記平均値に基
づいて前記エンジンの燃料供給系の異常が検出されるの
で、漸化式形式の制御器を用いた空燃比フィードバック
制御実行中においても従来の手法に対し複雑な構成の追
加を必要とすることなく、容易かつ正確に燃料供給系の
異常検出をすることができる。
【図面の簡単な説明】
【図1】本発明の一実施例にかかる内燃機関及びその制
御装置の構成を示す図である。
【図2】図1の一部の詳細な構成を示す図である。
【図3】本実施例における空燃比制御手法を説明するた
めの機能ブロック図である。
【図4】LAFセンサ出力に基づいて空燃比補正係数を
算出する処理のフローチャートである。
【図5】最終目標空燃比係数(KCMDM)算出処理の
フローチャートである。
【図6】目標空燃比係数(KCMD)算出処理のフロー
チャートである。
【図7】TDC信号パルスとLAFセンサ出力との関係
を示す図である。
【図8】LAFセンサ出力の最適なサンプリング時期を
説明するための図である。
【図9】LAFセンサ出力選択処理を説明するための図
である。
【図10】LAFセンサ出力選択処理のフローチャート
である。
【図11】LAFセンサ出力選択用タイミングマップを
示す図である。
【図12】図11のマップの設定傾向説明するための図
である。
【図13】検出当量比(KACT)算出処理のフローチ
ャートである。
【図14】LAFフィードバック領域判別処理のフロー
チャートである。
【図15】PID補正係数(KLAF)算出処理のフロ
ーチャートである。
【図16】適応補正係数(KSTR)の算出処理を説明
するためのブロック図である。
【図17】フィードバック補正係数(KFB)の算出処
理のフローチャートである。
【図18】適応制御領域判別処理のフローチャートであ
る。
【図19】KLAF/KSTR演算処理のフローチャー
トである。
【図20】異常検出プログラムのフローチャートであ
る。
【図21】異常検出プログラムのフローチャートであ
る。
【図22】図20に示されるステップS1108の詳細
なプログラムのフローチャートである。
【図23】図20に示されるステップS1108の詳細
なプログラムの続きのフローチャートである。
【図24】図20に示されるステップS1108の詳細
なプログラムのフローチャートである。
【図25】図20に示されるステップS1108の詳細
なプログラムの続きのフローチャートである。
【図26】パージの影響による異常被判別係数KFBC
HKAVEの変動を示す図である。
【符号の説明】
1 内燃機関(本体) 5 電子コントロールユニット(ECU) 12 燃料噴射弁 17 広域空燃比センサ
─────────────────────────────────────────────────────
【手続補正書】
【提出日】平成7年5月11日
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正内容】
【書類名】 明細書
【発明の名称】 内燃機関の空燃比制御装置
【特許請求の範囲】
【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、漸化式形式の制御器を
用いたフィードバック制御により内燃機関に供給する混
合気の空燃比を制御する空燃比制御装置に関し、特に内
燃機関の排気系に設けられた空燃比センサの出力に応じ
て設定される空燃比補正係数に基づいて、燃料供給系に
発生した異常を検出する機能を有する空燃比制御装置に
関するものである。
【0002】
【従来の技術】内燃エンジンの排気系に設けた広域空燃
比センサの出力に基づいてエンジンに供給する混合気の
空燃比を比例項、積分項及び微分項を用いてフィードバ
ック制御するとともに、前記積分項を用いて燃料供給系
の異常を検出するようにした空燃比制御装置が従来より
知られている。
【0003】また、現代制御理論の1つである最適レギ
ュレータをこの空燃比フィードバック制御に応用し、前
記広域空燃比センサの出力と、機関の動的モデルに基づ
いて算出した最適フィードバックゲインとを用いて算出
した空燃比補正係数により空燃比をフィードバック制御
する空燃比制御装置が従来より知られている(例えば特
開平3−185244号公報)。
【0004】
【発明が解決しようとする課題】しかしながら、制御速
度が比較的高い上記最適レギュレータを応用した空燃比
制御装置においては、補正係数の動きが速くまた変化幅
も大きいため、これをそのまま従来の燃料供給系の異常
検出手法に用いると、正確な異常検出ができなという問
題があった。
【0005】本発明はこの問題を解決するためになされ
たものであり、漸化式形式の制御器を用いた内燃機関の
空燃比フィードバック制御を行いつつ、燃料供給系の異
常検出を容易かつ正確に行うことができる空燃比制御装
置を提供することを目的とする。
【0006】
【課題を解決するための手段】上記目的を達成するため
本発明は、内燃機関の排気系に設けられた空燃比センサ
の出力に基づいて漸化式形式の制御器を用いて前記機関
に供給する燃料を補正する空燃比補正係数を算出し、該
算出された空燃比補正係数を用いて前記機関の空燃比を
目標値に収束させるように前記機関に供給する燃料をフ
ィードバック制御する制御手段を備えた内燃機関の空燃
比制御装置において、前記算出された空燃比補正係数を
平滑化するフィルタ手段と、前記平滑化された空燃比補
正係数の平均値を算出する平均値算出手段と、前記平均
値に基づいて前記機関の燃料供給系の異常を検出する異
常検出手段とを備えたことを特徴とする。
【0007】
【作用】空燃比センサの出力に基づいて漸化式形式の制
御器を用いて空燃比補正係数が算出され、前記空燃比補
正係数が平滑化され、前記平滑化された空燃比補正係数
の平均値が算出され、前記平均値に基づいて前記機関の
燃料供給系の異常が検出される。
【0008】
【実施例】以下本発明の実施例を図面を参照して説明す
る。
【0009】図1は本発明の一実施例にかかる内燃機関
(以下「エンジン」という)及びその制御装置の構成を
示す図である。同図中、1は各気筒に吸気弁及び排気弁
(図示せず)を各1対ずつ設けたDOHC直列4気筒の
エンジンである。
【0010】エンジン1の吸気管2は分岐部(吸気マニ
ホルド)11を介してエンジン1の各気筒の燃焼室に連
通する。吸気管2の途中にはスロットル弁3が配されて
いる。スロットル弁3にはスロットル弁開度(θTH)
センサ4が連結されており、スロットル弁開度θTHに
応じた電気信号を出力して電子コントロールユニット
(以下「ECU」という)5に供給する。吸気管2に
は、スロットル弁3をバイパスする補助空気通路6が設
けられており、該通路6の途中には補助空気量制御弁7
が配されている。補助空気量制御弁7は、ECU5に接
続されており、ECU5によりその開弁量が制御され
る。
【0011】吸気管2のスロットル弁3の上流側には吸
気温(TA)センサ8が装着されており、その検出信号
がECU5に供給される。吸気管2のスロットル弁3と
吸気マニホルド11の間には、チャンバ9が設けられて
おり、チャンバ9には吸気管内絶対圧(PBA)センサ
10が取り付けられている。PBAセンサ10の検出信
号はECU5に供給される。
【0012】エンジン1の本体にはエンジン水温(T
W)センサ13が装着されており、その検出信号がEC
U5に供給される。ECU5には、エンジン1のクラン
ク軸(図示せず)の回転角度を検出するクランク角度位
置センサ14が接続されており、クランク軸の回転角度
に応じた信号がECU5に供給される。クランク角度位
置センサ14は、エンジン1の特定の気筒の所定クラン
ク角度位置で信号パルス(以下「CYL信号パルス」と
いう)を出力する気筒判別センサ、各気筒の吸入行程開
始時の上死点(TDC)に関し所定クランク角度前のク
ランク角度位置で(4気筒エンジンではクランク角18
0度毎に)TDC信号パルスを出力するTDCセンサ及
びTDC信号パルスより短い一定クランク角周期(例え
ば30度周期)で1パルス(以下「CRK信号パルス」
という)を発生するCRKセンサから成り、CYL信号
パルス、TDC信号パルス及びCRK信号パルスがEC
U5に供給される。これらの信号パルスは、燃料噴射時
期、点火時期等の各種タイミング制御及びエンジン回転
数NEの検出に使用される。
【0013】吸気マニホルド11の吸気弁の少し上流側
には、各気筒毎に燃料噴射弁12が設けられており、各
噴射弁は図示しない燃料ポンプに接続されているととも
にECU5に電気的に接続されて、ECU5からの信号
により燃料噴射時期及び燃料噴射時間(開弁時間)が制
御される。エンジン1の点火プラグ(図示せず)もEC
U5に電気的に接続されており、ECU5により点火時
期θIGが制御される。
【0014】排気管16は分岐部(排気マニホルド)1
5を介してエンジン1の燃焼室に接続されている。排気
管16には分岐部15が集合する部分の直ぐ下流側に、
広域空燃比センサ(以下「LAFセンサ」という)17
が設けられている。さらにLAFセンサ17の下流側に
は直下三元触媒19及び床下三元触媒20が配されてお
り、またこれらの三元触媒19及び20の間には酸素濃
度センサ(以下「O2センサ」という)18が装着され
ている。三元触媒19、20は、排気ガス中のHC,C
O,NOx等の浄化を行う。
【0015】LAFセンサ17は、ローパスフィルタ2
2を介してECU5に接続されており、排気ガス中の酸
素濃度(空燃比)に略比例した電気信号を出力し、その
電気信号をECU5に供給する。O2センサ18は、そ
の出力が理論空燃比の前後において急激に変化する特性
を有し、その出力は理論空燃比よりリッチ側で高レベル
となり、リーン側で低レベルとなる。O2センサ18
は、ローパスフィルタ23を介してECU5に接続され
ており、その検出信号はECU5に供給される。
【0016】排気還流機構30は、吸気管2のチャンバ
9と排気管16とを接続する排気還流路31と、排気還
流路31の途中に設けられ、排気還流量を制御する排気
還流弁(EGR弁)32と、EGR弁32の弁開度を検
出し、その検出信号をECU5に供給するリフトセンサ
33とから成る。EGR弁32は、ソレノイドを有する
電磁弁であり、ソレノイドはECU5に接続され、その
弁開度がECU5からの制御信号によりリニアに変化さ
せることができるように構成されている。
【0017】次に図2も合わせて参照して、蒸発燃料処
理装置40について説明する。燃料タンク41は通路4
2を介してキャニスタ45に連通し、キャニスタ45は
パージ通路43を介して吸気管2のチャンバ9に連通し
ている。キャニスタ45は、燃料タンク41内で発生す
る蒸発燃料を吸着する吸着剤46を内蔵し、外気取込口
47を有する。通路42の途中には、正圧バルブ及び負
圧バルブから成る2ウェイバルブ44が配設され、パー
ジ通路43の途中にはデューティ制御型の電磁弁である
パージ制御弁48、パージ通路43を流れる燃料蒸気を
含む混合気の流量を検出する流量センサ49及び該混合
気中のHC濃度を検出するHC濃度センサ50が設けら
れている。パージ制御弁48及びセンサ49、50は、
ECU5に接続されており、パージ制御弁48はECU
5からの信号に応じて制御され、センサ49、50の検
出信号はECU5に供給される。
【0018】蒸発燃料処理装置40によれば、燃料タン
ク41内で発生した蒸発燃料は、所定の設定圧に達する
と2ウェイバルブ44の正圧バルブを押し開き、キャニ
スタ45に流入し、キャニスタ45内の吸着剤46によ
って吸着され貯蔵される。パージ制御弁48はECU5
からのデューティ信号によって開弁/閉弁作動し、その
開弁時間中においてはキャニスタ45に一時蓄えられて
いた蒸発燃料は、チャンバ9の負圧により、キャニスタ
45の外気取込口47から吸入された外気とともにパー
ジ制御弁48を経てチャンバ9へ吸引され、各気筒に送
られる。また、外気などで燃料タンク41が冷却されて
燃料タンク内の負圧が増すと、2ウェイバルブ44の負
圧バルブが開弁し、キャニスタ45に一時蓄えられてい
た蒸発燃料は燃料タンク41へ戻される。このようにし
て、燃料タンク41内で発生した燃料蒸気が大気に放出
されることが抑止される。
【0019】エンジン1は、吸気弁及び排気弁のバルブ
タイミングを、エンジンの高速回転領域に適した高速バ
ルブタイミングと、低速回転領域に適した低速バルブタ
イミングとの2段階に切換可能なバルブタイミング切換
機構60を有する。このバルブタイミングの切換は、弁
リフト量の切換も含み、さらに低速バルブタイミング選
択時は2つの吸気弁のうちの一方を休止させて、空燃比
を理論空燃比よりリーン化する場合においても安定した
燃焼を確保するようにしている。
【0020】バルブタイミング切換機構60は、バルブ
タイミングの切換を油圧を介して行うものであり、この
油圧切換を行う電磁弁及び油圧センサがECU5接続さ
れている。油圧センサの検出信号はECU5に供給さ
れ、ECU5は電磁弁を制御してバルブタイミングの切
換制御を行う。
【0021】また、ECU5には、大気圧を検出する大
気圧(PA)センサ21が接続されており、その検出信
号がECU5に供給される。
【0022】ECU5は、上述した各種センサからの入
力信号波形を整形して電圧レベルを所定レベルに修正
し、アナログ信号値をデジタル信号値に変化する等の機
能を有する入力回路と、中央処理回路(CPU)と、該
CPUで実行される各種演算プログラムや後述する各種
マップ及び演算結果等を記憶するROM及びRAMから
なる記憶回路と、燃料噴射弁12等の各種電磁弁や点火
プラグに駆動信号を出力する出力回路とを備えている。
【0023】ECU5は、上述の各種エンジン運転パラ
メータ信号に基づいて、LAFセンサ17及びO2セン
サ18の出力に応じたフィードバック制御運転領域やオ
ープン制御運転領域等の種々のエンジン運転状態を判別
するとともに、エンジン運転状態に応じ、下記数式1に
より燃料噴射弁12の燃料噴射時間TOUTを演算し、
この演算結果に基づいて燃料噴射弁12を駆動する信号
を出力する。
【0024】
【数1】TOUT=TIMF×KTOTAL×KCMD
M×KFB 図3は上記数式1による燃料噴射時間TOUTの算出手
法を説明するための機能ブロック図であり、これを参照
して本実施例における燃料噴射時間TOUTの算出手法
の概要を説明する。なお、本実施例ではエンジンへの燃
料供給量は燃料噴射時間として算出されるが、これは噴
射される燃料量に対応するので、TOUTを燃料噴射量
若しくは燃料量とも呼んでいる。
【0025】図3においてブロックB1は、吸入空気量
に対応した基本燃料量TIMFを算出する。この基本燃
料量TIMFは、基本的にはエンジン回転数NE及び吸
気管内絶対圧PBAに応じて設定されるが、スロットル
弁3からエンジン1の燃焼室に至る吸気系をモデル化
し、その吸気系モデルに基づいて吸入空気の遅れを考慮
した補正を行うことが望ましい。その場合には、検出パ
ラメータとしてスロットル弁開度θTH及び大気圧PA
をさらに用いる。
【0026】ブロックB2〜B4は乗算ブロックであ
り、ブロックの入力パラメータを乗算して出力する。こ
れらのブロックにより、上記数式1の演算が行われ、燃
料噴射量TOUTが得られる。
【0027】ブロックB9は、エンジン水温TWに応じ
て設定されるエンジン水温補正係数KTW,排気還流実
行中に排気還流量に応じて設定されるEGR補正係数K
EGR,蒸発燃料処理装置40によるパージ実行時にパ
ージ燃料量に応じて設定されるパージ補正係数KPUG
等のフィードフォワード系補正係数をすべて乗算するこ
とにより、補正係数KTOTALを算出し、ブロックB
2に入力する。
【0028】ブロックB21は、エンジン回転数NE、
吸気管内絶対圧PBA等に応じて目標空燃比係数KCM
Dを決定し、ブロック22に入力する。目標空燃比係数
KCMDは、空燃比A/Fの逆数、すなわち燃空比F/
Aに比例し、理論空燃比のとき値1.0をとるので、目
標当量比ともいう。ブロックB22は、ローパスフィル
タ23を介して入力されるO2センサ出力VMO2に基
づいて目標空燃比係数KCMDを修正し、ブロックB1
8及びB23に入力する。ブロックB23は、KCMD
値に応じて燃料冷却補正を行い最終目標空燃比係数KC
MDMを算出し、ブロックB3に入力する。
【0029】ブロックB10は、ローパスフィルタ22
を介して入力されるLAFセンサ出力値を、CRK信号
パルスの発生毎にサンプリングし、そのサンプル値をリ
ングバッファメモリに順次記憶し、エンジン運転状態に
応じて最適のタイミングでサンプリングしたサンプル値
を選択し(LAFセンサ出力選択処理)、ローパスフィ
ルタブロックB16及びB17を介してブロックB18
及びB19に入力する。このLAFセンサ出力選択処理
は、サンプリングのタイミングによっては変化する空燃
比を正確に検出できないこと、燃焼室から排出される排
気ガスがLAFセンサ17に到達するまでの時間やLA
Fセンサ自体の反応時間がエンジン運転状態によって変
化することを考慮したものである。
【0030】ブロックB18は、検出空燃比と目標空燃
比との偏差に応じてPID制御によりPID補正係数K
LAFを算出してブロックB20に入力する。 ブロッ
クB19は、検出空燃比に基づいて適応制御(Self Tun
ing Regulation)により適応補正係数KSTRを算出し
てブロックB20に入力する。この適応制御は、目標空
燃比係数KCMD(KCMDM)を基本燃料量TIMF
に乗算するだけでは、エンジンの応答遅れがあるため目
標空燃比がなまされた検出空燃比になってしまうため、
これを動的に補償し、外乱に対するタフネス性を向上さ
せるために導入したものである。
【0031】ブロックB20は、入力されるPID補正
係数KLAF及び適応補正係数KSTRのいずれか一方
をエンジン運転状態に応じて選択し、フィードバック補
正係数KFBとしてブロックB4に入力する。これは、
エンジン運転状態によっては、適応制御ではなく従来の
PID制御によって算出したKLAF値を用いた方がよ
いことを考慮したものである。
【0032】ブロックB25ば、ローパスフィルタブロ
ックB24を介して適応補正係数KSTRのフィルタ出
力KSTRLO及びPID制御の積分項KLAFIが入
力され、後述する手法により燃料供給等の異常を検出す
るフューエルメータリングブロックである。
【0033】以上のように本実施例では、LAFセンサ
17の出力の応じて通常のPID制御により算出したP
ID補正係数KLAFと、適応制御により算出した適応
補正係数KSTRとを切り換えて、補正係数KFBとし
て上記数1に適用して、燃料噴射量TOUTを算出して
いる。適応補正係数KSTRにより、目標空燃比を変更
したときの追従性及び外乱に対するタフネス性を向上さ
せ、触媒の浄化率を向上させ、種々のエンジン運転状態
において良好な排気ガス特性を得ることができる。
【0034】本実施例では、上述した図3の各ブロック
の機能は、ECU5のCPUによる演算処理により実現
されるので、この処理のフローチャートを参照して処理
の内容を具体的に説明する。
【0035】図4は、LAFセンサ17の出力に応じて
PID補正係数KLAF及び適応補正係数KSTRを算
出し、最終的にフィードバック補正係数KFBを算出す
る処理のフローチャートである。本処理はTDC信号パ
ルスの発生毎に実行される。
【0036】ステップS1では、始動モードか否か、す
なわちクランキング中か否かを判別し、始動モードのと
きは始動モードの処理へ移行する。始動モードでなけれ
ば、目標空燃比係数(目標当量比)KCMD及び最終目
標空燃比係数KCMDMの算出(ステップS2)及びL
AFセンサ出力選択処理を行う(ステップS3)ととも
に検出当量比KACTの演算を行う(ステップS4)。
検出当量比KACTは、LAFセンサ17の出力を当量
比に変換したものである。
【0037】次いでLAFセンサ17の活性化が完了し
たか否かの活性判別を行う(ステップS5)。これは、
例えばLAFセンサ17の出力電圧とその中心電圧との
差を所定値(例えば0.4V)と比較し、該差が所定値
より小さいとき活性化が完了したと判別するものであ
る。
【0038】次にエンジン運転状態がLAFセンサ17
の出力に基づくフィードバック制御を実行する運転領域
(以下「LAFフィードバック領域」という)にあるか
否かの判別を行う(ステップS6)。これは、例えばL
AFセンサ17の活性化が完了し、且つフュエルカット
中やスロットル全開運転中でないとき、LAFフィード
バック領域と判定するものである。この判別の結果、L
AFフィードバック領域にないときはリセットフラグF
KLAFRESETを「1」に設定し、LAFフィード
バック領域にあるときは「0」とする。
【0039】続くステップS7では、リセットフラグF
KLAFRESETが「1」か否かを判別し、FKLA
FRESET=1のときは、ステップS8に進んでPI
D補正係数KLAF、適応補正係数KSTR及びフィー
ドバック補正係数KFBをいずれもに「1.0」に設定
するとともに、PID制御の積分項KLAFIを「0」
に設定して、本処理を終了する。また、FKLAFRE
SET=0のときは、フィードバック補正係数KFBの
演算を行って(ステップS9)、本処理を終了する。
【0040】以下上記ステップS2〜S4,S6及びS
9における処理の詳細を順次説明する。
【0041】図5は、図4のステップS2における最終
目標空燃比係数KCMDMを算出する処理のフローチャ
ートである。
【0042】ステップS23では、エンジン回転数NE
及び吸気管内絶対圧PBAに応じてマップを検索し、基
本値KBSを算出する。なお、そのマップにはアイドル
時用の値も設定されている。
【0043】続くステップS24では、エンジン始動直
後のリーンバーン制御を実行すべき条件が成立するか否
かを判別し、条件が成立したときは始動後リーンフラグ
FASTLEANを「1」に設定する一方、条件不成立
のときは「0」とする。このリーンバーン制御実行条件
は、例えばエンジン始動後所定期間内であって、エンジ
ン水温TW、エンジン回転数NE及び吸気管内絶対圧P
BAが所定範囲内にあるとき成立する。なお、始動直後
のリーンバーン制御は、エンジン始動直後の触媒が未活
性の状態でHCの排出量が増加すること防止する目的で
行うものである。
【0044】次いでステップS25では、スロットル弁
が全開(WOT)の状態か否かを判別し、全開のときは
WOTフラグFWOTを「1」に設定し、全開でなけれ
ば「0」とする。次いで、エンジン水温TWに応じて増
量補正係数KWOTを算出する(ステップS26)。こ
のとき高水温時の補正係数KXWOTも算出する。
【0045】続くステップS27では、目標空燃比係数
KCMDを算出し、次いで算出したKCMD値のリミッ
ト処理(所定上下限値の範囲内に入るようにする処理)
を行う。このステップS27の処理は図6を参照して後
述する。
【0046】続くステップS29では、O2センサ18
の活性化が完了しているか否かの判別を行い、活性化が
完了したときは、活性フラグFMO2を「1」に設定
し、完了していないときは、「0」とする。例えばエン
ジン始動後所定期間経過したとき、活性化完了と判定す
る。次いで、ステップS32に進み、O2センサ18の
出力VMO2に応じて目標空燃比係数KCMDの補正項
DKCMDO2を算出する。この処理は、O2センサ出
力VMO2と基準値VREFMとの偏差に応じてPID
制御により、補正項DKCMDO2を算出するものであ
る。
【0047】ステップS33では、次式により目標空燃
比係数KCMDの補正を行う。
【0048】KCMD=KCMD+DKCMDO2 これにより、LAFセンサ17の出力のずれを補償する
ように目標空燃比係数KCMDを設定することができ
る。
【0049】続くステップS34では、算出したKCM
D値に応じてKCMD−KETCテーブルを検索して補
正係数KETCを算出し、次式により最終目標空燃比係
数KCMDMを算出する。
【0050】KCMDM=KCMD×KETC 補正係数KETCは、KCMD値が増加し、燃料噴射量
が増加するほど、噴射による燃料冷却効果が大きくなる
ことを考慮して、その影響を補正するものであり、KC
MD値が増加するほど大きな値に設定される。
【0051】次いで、KCMDM値のリミット処理を行
うとともに(ステップS35)、ステップS33で得ら
れたKCMD値をリングバッファに格納して(ステップ
S36)、本処理を終了する。
【0052】図6は、図5のステップS27におけるK
CMD算出処理のフローチャートである。
【0053】先ずステップS51では、図5のステップ
S24で設定した始動後リーンフラグFASTLEAN
が「1」か否かを判別し、FASTLEAN=1である
ときは、KCMDASTLEANマップを検索して、リ
ーン制御時の中心空燃比に相当するリーン目標値KCM
DASTLEANを算出する(ステップS52)。ここ
で、KCMDASTLEANマップは、エンジン水温T
W及び吸気管内絶対圧PBAに応じてリーン目標値KC
MDASTLEANが設定されたマップである。そし
て、目標空燃比係数KCMDをリーン目標値KCMDA
STLEANに設定して(ステップS53)、ステップ
S59に進む。
【0054】一方前記ステップS51でFASTLAE
AN=0であって、始動後リーンバーン制御実行条件が
成立しないときは、エンジン水温TWが所定水温TWC
MD(例えば80℃)より高いか否かを判別する。そし
てTW>TWCMDが成立するときは、KCMD値を図
5のステップS23で算出した基本値KBSに設定して
(ステップS57)、ステップS59に進む。また、T
W≦TWCMDが成立するときは、エンジン水温TW及
び吸気管内絶対圧PBAに応じて設定されたマップを検
索して、低水温用目標値KTWCMDを算出し(ステッ
プS55)、基本値KBSがこのKTWCMD値より大
きいか否かを判別する(ステップS56)。その結果K
BS>KTWCMDであるときは、前記ステップS57
に進み、KBS≦KTWCMDであるときは、基本値K
BSを低水温用目標値KTWCMDに置き換えて(ステ
ップS58)、ステップS59に進む。
【0055】ステップS59では、O2センサ18の異
常が検出されているか否かを判別し、異常が検出されて
いなければ直ちにステップS61に進む一方、異常が検
出されているときは、調整用加算項KCMDOFFSE
Tを異常時用の調整値KCMDOFFSETFSに設定
して(ステップS60)、ステップS61に進む。
【0056】ここで、異常時用の調整値KCMDOFF
SETFSは、空燃比がややリッチ方向にバイアスされ
るような値に設定される。これにより、O2センサの異
常時において空燃比のリーン化によるトルク変動やノッ
キングを防止することができる。
【0057】そしてステップS61では、下記式により
KCMD値を補正してステップS62に進む。調整用加
算項KCMDOFFSETは、エンジンの排気系やLA
Fセンサの特性のばらつきや経時変化の影響を反映させ
て、目標空燃比係数KCMDを微調整し、三元触媒のウ
ィンドウゾーンの最適な位置をとるようにするためのパ
ラメータである。
【0058】 KCMD=KCMD+KCMDOFFSET ステップS62では、図5のステップS25で設定した
WOTフラグFWOTが「1」か否かを判別し、FWO
T=0であれば直ちに本処理を終了し、FWOT=1の
ときは、高負荷用のKCMD値の設定処理を行い(ステ
ップS63)、本処理を終了する。この処理は、KCM
D値を図5のステップS26で算出した高負荷用増量補
正係数KWOT,KXWOTと比較し、KCMD値がこ
れらの係数値より小さいときは、KCMD値に補正係数
KWOT又はKXWOTを乗算して補正を行うものであ
る。
【0059】次に図4のステップS3におけるLAFセ
ンサ出力選択処理について説明する。
【0060】エンジンの排気ガスは排気行程で排出され
ることから、多気筒エンジンの排気系集合部において空
燃比の挙動を見ると、明らかにTDC信号パルスに同期
している。したがって、LAFセンサ17により空燃比
を検出するときもTDC信号パルスに同期して行う必要
がある。ところが、センサ出力のサンプルタイミングに
よっては空燃比の挙動を正確に把握できない場合が生じ
る。例えば、TDC信号パルスに対して排気系集合部の
空燃比が図7のようであるとき、ECU5が認識する空
燃比は図8に示すように、サンプルタイミングによって
全く異なる値となる。この場合、実際のLAFセンサの
出力変化を可能な限り正確に把握できるタイミングでサ
ンプリングすることが望ましい。
【0061】さらに、空燃比の変化は排気ガスのセンサ
までの到達時間やセンサの反応時間によっても相違す
る。そのうち、センサまでの到達時間は排気ガス圧力、
排気ガスボリューム等に依存して変化する。さらに、T
DC信号パルスに同期してサンプリングすることはクラ
ンク角度に基づいてサンプリングすることになるので、
必然的にエンジン回転数NEの影響を受ける。このよう
に、空燃比の検出の最適なタイミングは、エンジン運転
状態に大きく依存する。
【0062】そこで、本実施例では図9に示すように、
CRK信号パルス(クランク角度30度毎に発生する)
の発生毎にサンプリングしたLAFセンサ出力をリング
バッファ(本実施例では18個の格納場所を有する)に
順次格納し、最適タイミングの出力値(17回前の値か
ら今回値までの中の最適の値)を検出当量比KACTに
変換してフィードバック制御に使用するようにしてい
る。
【0063】図10は、図4のステップS3におけるL
AFセンサ出力選択処理のフローチャートある。
【0064】先ずステップS81では、エンジン回転数
NE及び吸気管内絶対圧PBAを読み出し、次いで現在
のバルブタイミングが高速バルブタイミングか否かを判
別する(ステップS82)。その結果高速バルブタイミ
ングのときは高速バルブタイミング用のタイミングマッ
プを検索し(ステップS83)、低速バルブタイミング
のときは低速バルブタイミング用のタイミングマップを
検索し(ステップS84)、その検索結果に応じてリン
グバッファに格納したLAFセンサ出力VLAFを選択
して(ステップS85)、本処理を終了する。
【0065】上記タイミングマップは、図11に示すよ
うに、エンジン回転数NE及び吸気管内絶対圧PBAに
応じて、エンジン回転数NEが低いほど、あるいは吸気
管内絶対圧PBAが高いほど早いクランク角度位置でサ
ンプリングした値を選択するように設定されている。こ
こで、「早い」とは、前のTDC位置により近い位置で
サンプリングした値(換言すれば古い値)を意味する。
このように設定したのは、LAFセンサ出力は、図8に
示したように、実際の空燃比の極大値又は極小値(以下
「極値」という)に可能な限り近い位置でサンプリング
するのが最良であるが、その極値、例えば最初のピーク
値は、センサの反応時間を一定と仮定すれば、図12に
示すように、エンジン回転数NEが低下するほど早いク
ランク角度位置で生じ、また、負荷が高いほど排気ガス
圧力や排気ガスボリュームが増加し、排気ガスの流速が
増してセンサへの到達時間が早まるからである。
【0066】また、高速バルブタイミング用マップは、
同一のエンジン回転数NE又は吸気管内絶対圧PBAに
対しては、低速バルブタイミング用マップより早期のタ
イミングとなるように設定されている。これは、高速バ
ルブタイミングでは、低速バルブタイミングより排気弁
の開弁開始時期が早いからである。
【0067】以上のように、図10の処理によれば、エ
ンジン運転状態に応じて最適なタイミングでサンプリン
グしたセンサ出力VLAFが選択されるので、空燃比の
検出精度を向上させることができる。
【0068】次に図4のステップS4における検出当量
比KACTの算出処理について説明する。図13は、こ
のKACT算出処理のフローチャートである。
【0069】先ずステップS101では、上述した図1
0の処理により選択されたセンサ出力選択値VLAFS
ELからセンサ出力中心値VCENTを減算して、テン
ポラリ値VLAFTEMPを算出する。ここで、中心値
VCENTは、混合気の空燃比が理論空燃比のときのL
AFセンサ出力値である。
【0070】次いで、VLAFTEMP値が負の値か否
かを判別し(ステップS102)、VLAFTEMP<
0であって、空燃比が理論空燃比よりリーン側のとき
は、リーン補正係数KLBLLを乗算して、VLAFT
EMP値を補正する(ステップS103)一方、、VL
AFTEMP≧0であって、空燃比が理論空燃比よりリ
ッチ側のときは、リッチ補正係数KLBLRを乗算し
て、VLAFTEMP値を補正する(ステップS10
4)。ここで、リーン補正係数KLBLL及びリッチ補
正係数KLBLRは、LAFセンサに装着されたラベル
抵抗の値に応じて算出されるばらつき補正用の補正係数
である。ラベル抵抗値は、予めLAFセンサの特性を測
定して、その結果に応じて設定されており、ECU5が
その値を読み取って補正係数KLBLL,KLBLRを
決定する。
【0071】続くステップS105では、テンポラリ値
VLAFTEMPにテーブル中心値VOUTCNTを加
算して、修正出力値VLAFEを算出し、次いでVLA
FE値に応じてKACTテーブルを検索して、検出当量
比KACTを算出する(ステップS106)。ここで、
KACTテーブルは、修正出力値VLAFEに応じて検
出当量比KACTを算出するためのテーブルであり、テ
ーブル中心値VOUTCNTは理論空燃比(KACT=
1.0)に対応する格子点データ(修正出力値)であ
る。
【0072】以上の処理により、LAFセンサの特性ば
らつきの影響を排除した検出当量比KACTを得ること
ができる。
【0073】図14は、図4のステップS6におけるL
AFフィードバック領域判別処理のフローチャートであ
る。
【0074】先ずステップS121では、LAFセンサ
17が不活性状態にあるか否かを判別し、活性状態にあ
るときはフュエルカット中であることを「1」で示すフ
ラグFFCが「1」か否かを判別し(ステップS12
2)、FFC=0であるときは、スロットル弁全開中で
あることを「1」で示すフラグFWOTが「1」か否か
を判別し(ステップS123)、FWOT=1でないと
きは、図示しないセンサによって検出したバッテリ電圧
VBATが所定下限値VBLOWより低いか否かを判別
し(ステップS124)、VBAT≧VBLOWである
ときは、理論空燃比に対応するLAFセンサ出力のずれ
(LAFセンサストイキずれ)があるか否かを判別す
る。そして、ステップS121〜S125のいずれかの
答が肯定(YES)のときは、PID補正係数KLAF
を1.0(無補正値)にリセットすべき旨を「1」で示
すKLAFリセットフラグFKLAFRESETを
「1」に設定する(ステップS132)。
【0075】一方、ステップS121〜S125の答が
すべて否定(NO)のときは、KLAFリセットフラグ
FKLAFRESETを「0」に設定する(ステップS
131)。
【0076】続くステップS133では、O2センサ1
8が不活性状態にあるか否かを判別し、活性状態にある
ときは、エンジン水温TWが所定下限水温TWLOW
(例えば0℃)より低いか否かを判別する(ステップS
134)。そして、O2センサ18が不活性状態のとき
またはTW<TWLOWであるときは、PID補正係数
KLAFを現在値に維持すべきことを「1」で示すホー
ルドフラグFKLAFHOLDを「1」に設定して(ス
テップS136)、本処理を終了する。一方、O2セン
サ18が活性状態にあり且つTW≧TWLOWであると
きは、FKLAFHOLD=0として(ステップS13
5)、本処理を終了する。
【0077】次に図4のステップS9におけるフィード
バック補正係数KFBの算出処理を説明する。
【0078】フィードバック補正係数KFBは、前述し
たようにエンジン運転状態に応じてPID補正係数KL
AF又は適応補正係数KSTRに設定される。そこで、
先ず図15及び図16を参照して、これらの補正係数の
算出手法を説明する。
【0079】図15は、PID補正係数KLAF算出処
理のフローチャートである。
【0080】同図のステップS301では、ホールドフ
ラグFKLAFHOLDが「1」か否かを判別し、FK
LAFHOLD=1のときは、直ちに本処理を終了し、
FKLAFHOLD=0のときは、KLAFリセットフ
ラグFKLAFRESETが「1」か否かを判別する
(ステップS302)。その結果、FKLAFRESE
T=1のときは、ステップS303に進み、PID補正
係数KLAFを1.0に設定するとともに、積分制御ゲ
インKI及び目標当量比KCMDと検出当量比KACT
との偏差DKAFを「0」に設定して、本処理を終了す
る。
【0081】ステップS302でFKLAFRESET
=0のときは、ステップS304に進み、比例制御ゲイ
ンKP、積分制御ゲインKI及び微分制御ゲインKDを
エンジン回転数NE及び吸気管内絶対圧PBAに応じて
設定されたマップから検索する。ただし、アイドル状態
のときはアイドル用のゲインを採用する。次いで、目標
当量比KCMDと検出当量比KACTとの偏差DKAF
(k)(=KCMD(k)−KACT(k))を算出し
(ステップS305)、偏差DKAF(k)及び各制御
ゲインKP,KI,KDを下記式に適用して、比例項K
LAFP(k)、積分項KLAFI(k)及び微分項K
LAFD(k)を算出する(ステップS306)。
【0082】KLAFP(k)=DKAF(k)×KP KLAFI(k)=DKAF(k)×KI+KLAF
(k−1) KLAFD(k)=(DKAF(k)−DKAF(k−
1))×KD 続くステップS307〜S310では、積分項KLAF
I(k)のリミット処理を行う。すなわち、KLAFI
(k)値が所定上下限値KLAFILMTH,KLAF
ILMTLの範囲内にあるか否かを判別し(ステップS
307、S308)、KLAFI(k)>KLAFIL
MTHであるときは、KLAFI(k)=KLAFLM
THとし(ステップS310)、KLAFI(k)<K
LAFILMTLであるときは、KLAFI(k)=K
LAFILMTLとする(ステップS309)。
【0083】続くステップS311では、下記式により
PID補正係数KLAF(k)を算出する。
【0084】KLAF(k)=KLAFP(k)+KL
AFI(k)+KLAFD(k)+1.0 次いで、KLAF(k)値が所定上限値KLAFLMT
Hより大きいか否かを判別し(ステップS312)、K
LAF(k)>KLAFLMTHであるときは、KLA
F(k)=KLAFLMTHとして(ステップS31
6)、本処理を終了する。
【0085】ステップS312で、KLAF(k)≦K
LAFLMTHであるときは、KLAF(k)値が所定
下限値KLAFLMTLより小さいか否かを判別し(ス
テップS314)、KLAF(k)≧KLAFLMTL
であれば直ちに本処理を終了する一方、KLAF(k)
<KLAFLMTLであるときは、KLAF(k)=K
LAFLMTLとして(ステップS315)、本処理を
終了する。
【0086】本処理により、検出当量比KACTが目標
当量比KCMDに一致するように、PID制御によりP
ID補正係数KLAFが算出される。
【0087】次に適応補正係数KSTR算出処理につい
て、図16を参照して説明する。
【0088】図16は、図3のブロックB19、すなわ
ち適応制御(STR(Self TuningRegulator))ブロッ
クの構成を示すブロック図であり、このSTRブロック
は、目標空燃比係数(目標当量比)KCMD(k)と検
出当量比KACT(k)とが一致するように適応補正係
数KSTRを設定するSTRコントローラと、該STR
コントローラで使用するパラメータを設定するパラメー
タ調整機構とからなる。
【0089】本実施例における適応制御の調整則の一つ
に、ランダウらが提案したパラメータ調整則がある。こ
の手法は、適応システムを線形ブロックと非線形ブロッ
クとから構成される等価フィードバック系に変換し、非
線形ブロックについては入出力に関するポポフの積分不
等式が成立し、線形ブロックは強正実となるように調整
則を決めることによって、適応システムの安定を保証す
る手法である。この手法は、例えば「コンピュートロー
ル」(コロナ社刊)No.27,28頁〜41頁、ない
しは「自動制御ハンドブック」(オーム社刊)703頁
〜707頁に記載されているように、公知技術である。
【0090】本実施例では、このランダウらの調整則を
用いた。以下説明すると、ランダウらの調整則では、離
散系の制御対象の伝達関数A(Z-1)/B(Z-1)の分
母分子の多項式を数式2で、のようにおいたとき、
適応パラメータθハット(k)及び適応パラメータ調整
機構への入力ζ(k)は、数式2で、のように定め
られる。数式2では、m=1、n=1、d=3の場合、
即ち1次系で3制御サイクル分の無駄時間を持つプラン
トを例にとった。ここで、kは時刻、より具体的には制
御サイクルを示す。また、数式2において、u(k)及
びy(k)は、本実施例では、それぞれKSTR(k)
及びKACT(k)に対応する。
【0091】
【数2】 ここで、適応パラメータθハット(k)は、数式3で表
される。また、数式3中のΓ(k)及びeアスタリスク
(k)は、それぞれゲイン行列及び同定誤差信号であ
り、数式4及び数式5のような漸化式で表される。
【0092】
【数3】
【0093】
【数4】
【0094】
【数5】 また数式4中のλ1(k)、λ2(k)の選び方によ
り、種々の具体的なアルゴリズムが与えられる。λ1
(k)=1,λ2(k)=λ(0<λ<2)とすると漸
減ゲインアルゴリズム(λ=1の場合、最小自乗法)、
λ1(k)=λ1(0<λ1<1)、λ2(k)=λ2
(0<λ2<2)とすると、可変ゲインアルゴリズム
(λ2=1の場合、重み付き最小自乗法)、λ1(k)
/λ2(k)=σとおき、λ3が数式6のように表され
るとき、λ1(k)=λ3とおくと固定トレースアルゴ
リズムとなる。また、λ1(k)=1,λ2(k)=0
のとき固定ゲインアルゴリズムとなる。この場合は数式
4から明らかなように、Γ(k)=Γ(k−1)とな
り、よってΓ(k)=Γの固定値となる。
【0095】
【数6】 ここで、図16にあっては、前記STRコントローラ
(適応制御器)と適応パラメータ調整機構とは燃料噴射
量演算系の外におかれ、検出当量比KACT(k)が目
標当量比KCMD(k−d’)(ここでd’はKCMD
がKACTに反映されるまでの無駄時間)に適応的に一
致するように動作して適応補正係数KSTR(k)を演
算する。
【0096】このように、適応補正係数KSTR(k)
及び検出当量比KACT(k)が求められて適応パラメ
ータ調整機構に入力され、そこで適応パラメータθハッ
ト(k)が算出されてSTRコントローラに入力され
る。STRコントローラには入力として目標当量比KC
MD(k)が与えられ、検出当量比KACT(k)が目
標当量比KCMD(k)に一致するように漸化式を用い
て適応補正係数KSTR(k)が算出される。
【0097】適応補正係数KSTR(k)は、具体的に
は数式7に示すように求められる。
【0098】
【数7】 次に上述のようにして算出するPID補正係数KLAF
と適応補正係数KSTRとを切り換えて、すなわちPI
D制御と適応制御とを切り換えて、フィードバック補正
係数KFBを算出する手法を説明する。
【0099】図17は、図4のステップS9におけるフ
ィードバック補正係数KFBの算出処理のフローチャー
トである。
【0100】先ずステップS151では、図4の処理の
前回実行時がオープンループ制御であったか(FKLA
FRESET=1であったか)否かを判別し、オープン
ループ制御でなかったときは、目標当量比KCMDの変
化量DKCMD(=|KCMD(k)−KCMD(k−
1)|)が基準値DKCMDREFより大きいか否かを
判別する。そして、前回がオープンループ制御だったと
き又は、前回がフィードバック制御であり且つ変化量D
KCMDが基準値DKCMDREFより大きいときは、
PID補正係数KLAFによるフィードバック制御を実
行すべき運転領域(以下「PID制御領域」という)と
判定し、カウンタCを「0」にリセットするとともに
(ステップS153)、ステップS164に進み、PI
D補正係数KLAF演算処理(図19(a))を実行す
る。
【0101】図19(a)のステップS201では、前
回の制御でSTRフラグFKSTRが「1」であったか
否かを判別する。このSTRフラグFKSTRは、適応
補正係数KSTRによるフィードバック制御を実行すべ
き運転領域(以下「適応制御領域」という)であること
を「1」で示し、フィードバック補正係数算出後に設定
される(ステップS204、図19(b)、ステップS
213)。
【0102】ステップS201で、前回はFKSTR=
0であったときは直ちにステップS203に進み、前回
はFKSTR=1であったときは、PID制御の積分項
の前回値KALFI(k−1)を、適応補正係数の前回
値KSTR(k−1)に設定して(ステップS20
2)、ステップS203に進む。ステップS203で
は、前述した図15の処理によりPID補正係数KLA
Fを算出し、次いでステップS204に進み、STRフ
ラグFKSTRを「0」に設定して、図19(a)の処
理を終了する。
【0103】ここで、適応制御からPID制御への切換
時(前回FKSTR=1のとき)は、PID制御の積分
項KLAFIが急変する可能性があるため、ステップS
202により、KLAFI(k−1)=KSTR(k−
1)としている。これにより、適応補正係数KSTR
(k−1)とPID補正係数KLAF(k)との差を小
さくとどめ、切換を滑らかにして制御の安定性を確保す
ることができる。
【0104】図17にもどり、続くステップS165で
は、フィードバック補正係数KFBをステップS164
で算出したPID補正係数KLAF(k)に設定して
(ステップS165)、本処理を終了する。
【0105】なお、前回がオープンループ制御であった
ときは、PID制御領域と判定するのは、例えばフュエ
ルカット状態からの復帰時のような場合には、LAFセ
ンサの検出遅れなどから、必ずしも検出値が真の値を示
すとは限らないため、制御が不安定となる可能性がある
からである。また、同様の理由で、目標当量比KCMD
の変化量DKCMDが大きいとき、例えばスロットル全
開増量状態から復帰したとき、リーンバーン制御から理
論空燃比制御に復帰したとき等においてもPID制御領
域と判定している。
【0106】ステップS151及びS152の答がとも
に否定(NO)のとき、すなわち前回もフィードバック
制御であり、かつ目標当量比KCMDの変化量DKCM
Dが基準値DKCMDREF以下のときは、カウンタC
を「1」だけインクリメントして(ステップS15
4)、ステップS155でカウンタCの値を所定値CR
EF(例えば5)と比較する。ここで、カウンタCの値
がCREF値以下の場合は前記ステップS164に進
む。
【0107】カウンタCの値がCREF値以下のときP
ID制御領域とするのは、オープンループ制御からの復
帰直後や目標当量比KCMDが大きく変化した直後は、
燃料の燃焼が完了するまでの遅れやLAFセンサの検出
遅れの影響を吸収できないからである。
【0108】次にステップS156に進み、適応制御領
域か否かの判別処理(図18)を実行する。図18の処
理は、現在のエンジン運転状態から、フィードバック補
正係数KFBを、適応制御則にしたがって求めるか、P
ID制御則に従って求めるか判別するものである。
【0109】すなわち、エンジン水温TWが所定水温T
WSTRONより低いか否かを判別し(ステップS17
0)、TW≧TWSTRONであるときは、エンジン回
転数NEが所定回転数NESTRLMT以上であるか否
かを判別し(ステップS171)、NE<NESTRL
MTであるときは、エンジンがアイドル状態か否かを判
別し(ステップS172)、アイドル状態でないとき
は、吸気管内絶対圧PBAが所定値以下の低負荷状態か
否かを判別し(ステップS173)、低負荷状態でない
ときは、エンジンのバルブタイミングが高速バルブタイ
ミングか否かを判別し(ステップS174)、高速バル
ブタイミングでないときは、検出当量比KACTが所定
値aより小さいか否かを判別し(ステップS175)、
所定値a以上のときは、検出当量比KACTが所定値b
(>a)より大きいか否かを判別する(ステップS17
6)。
【0110】その結果、ステップS170〜S176の
いずれかの答が肯定(YES)のときは、PID制御領
域と判定して(ステップS178)、本処理を終了す
る。
【0111】ここで、PID制御領域と判定し、PID
制御によりフィードバック補正係数KFBを算出するこ
ととした理由は以下の通りである。低水温時(TW<T
WSTRON)は、燃焼が安定せず、失火などが生じる
おそれがあり、安定した検出当量比KACTが得られな
いからである。なお、エンジン水温TWが異常に高いと
きも、同様の理由でPID制御によりフィードバック補
正係数KFBを算出する。また、高回転時(NE≧NE
STRLMT)は、ECUの演算時間が不足しがちであ
るとともに、燃焼も安定しないからである。また、高速
バルブタイミング選択時は、吸排気弁がともに開弁して
いるオーバラップ期間が長いので、吸気がそのまま排気
弁を通過して排出される、いわゆる吹き抜けが生じるお
それがあり、安定した検出当量比KACTを期待できな
いからである。また、エンジンのアイドル時は、運転状
態がほぼ安定しており、適応制御のような高いゲインの
制御は必要としないからである。
【0112】また、検出当量比KACTが所定値aより
小さいとき若しくは所定値bより大きいときは、エンジ
ンの空燃比がリーン又はリッチのときであり、適応制御
のような高いゲインの制御は行わない方がよいからであ
る。この判別は、本実施例においては、検出当量比KA
CTで行ったが、目標当量比KCMDを用いて行っても
よい。
【0113】一方ステップS170〜S176の答がす
べて否定(NO)のときは、適応制御領域と判定して
(ステップS177)、本処理を終了する。
【0114】図17に戻り、ステップS157では、図
18の処理の結果から、フィードバック補正係数KFB
を適応制御で算出するか否かを判別する。ステップS1
57の答が否定(NO)のときは、前記ステップS16
4に進み、ステップS157の答が肯定(YES)のと
きは、ステップS158に進み、前回STRフラグFK
STRが「0」であったか否かを判別する。
【0115】その結果前回FKSTR=1であったとき
は、直ちにステップS161に進み、前回はFKSTR
=0であったときは、検出当量比KACTが所定上下限
値KACTLMTH(例えば1.01),KACTLM
TL(例えば0.99の範囲内にあるか否かを判別し
(ステップS159、S160)、KACT<KACT
LMTL又はKACT>KACTLMTHであるとき
は、前記ステップS164に進んで、PID補正係数K
LAFを算出する。また、KACTLMTL≦KACT
≦KACTLMTHであるときは、ステップS161に
進み、KSTR演算処理(図19(b))を実行する。
【0116】ステップS158〜S160により、PI
D制御から適応制御への切換は、適応制御領域であっ
て、且つ検出当量比KACTが1.0付近の値のときに
行われる。これにより、PID制御から適応制御への切
換を滑らかに行うことができ、制御の安定性を確保する
ことができる。
【0117】図19(b)のステップS210では、前
回フラグKSTRが「0」であったか否かを判別する。
その結果、前回はFKSTR=1であったときは、直ち
にステップS212に進み、前述した手法により適応補
正係数KSTRを算出し、次いでフラグFKSTRを
「1」に設定して、図19(b)の処理を終了する。
【0118】一方、前回はFKSTR=0であったとき
は、適応パラメータ(ゲインを決定するスカラ量)b0
を、PID補正係数の前回値KLAF(k−1)で除算
した値に置き換えて(ステップS211)、前記ステッ
プS212に進む。
【0119】ステップS211で、適応パラメータb0
をb0/KLAF(k−1)に置き換えることにより、
PID制御から適応制御への切換をより滑らかに行うこ
とができ、制御の安定性を確保することができる。これ
は、以下のような理由による。前記数式7のb0をb0
/KLAF(k−1)に置き換えると、数式8の第1式
に示すようになるが、第1式の第1項は、PID制御実
行中はKSTR(k)=1としているので、1となる。
従って、適応制御開始当初のKSTR(k)値は、KL
AF(k−1)に等しくなり、補正係数値が滑らかに切
り換えられることになる。
【0120】
【数8】 図17に戻り、ステップS161で求めた適応補正係数
KSTRの値と1.0との差の絶対値|KSTR(k)
−1.0|が基準値KSTRREFより大きいか否かを
判別し(ステップS162)、|KSTR(k)−1.
0|>KSTRREFであるときは、前記ステップS1
64に進む一方、|KSTR(k)−1.0|≦KST
RREFであるときは、フィードバック補正係数KFB
をKSTR(k)値に設定して(ステップS163)、
本処理を終了する。
【0121】ここで、適応補正係数KSTRと1.0と
の差の絶対値が基準値KSTRREFより大きいとき
は、PID制御領域とするのは、制御の安定性確保のた
めである。
【0122】図20及び図21は、本発明が適用される
燃料供給系の異常検出プログラムフローチャートを示
し、本プログラムはバックグラウンド処理手法によりE
CU5において実行される。
【0123】図20において、まずステップS1101
では、燃料供給系の異常検出(モニタ)を行うべきこと
を“0”によって示すフラグFFMPASSが“1”で
あるか否かを判別し、その答が肯定(YES)、即ち燃
料供給系の異常検出を行う指示が未だない場合は、ステ
ップS1102へ進む。
【0124】ステップS1102では、後述するモニタ
条件の継続時間を設定するモニタ条件持続タイマtCO
NT、パージカット後の安定化時間を設定するパージカ
ット後安定化タイマtFMPGS、及び空燃比フィード
バック補正係数(空燃比補正係数)KFBの積分値KA
Vの算出時間を設定するKAV算出タイマtCHKAV
Eをそれぞれ所定値に初期化してスタートさせる。な
お、これらのタイマはダウンカウンタで構成されてい
る。
【0125】続くステップS1103では、燃料供給系
の異常検出を行うためにパージカットを実施すべきこと
を“1”によって示すフラグFPGSCNTが“0”で
あるか否かを判別する。このフラグFPGSCNTは、
後述する異常被判別係数KFBCHKAVEの算出処理
において使用され、パージの影響による誤検出を排除す
るためのパージカットの指示が出ている場合にパージカ
ットを実施するためのフラグである(後述するステップ
S1220で“1”にセットされる)。
【0126】ステップS1103の答が肯定(YE
S)、即ちフラグFPGSCNTが“0”であり前記パ
ージカットを実施しなかった場合はそのまま本ルーチン
を終了する。また、その答が否定(NO)、即ち前記パ
ージカットを実施した場合はパージコントロールを行う
べきことを“1”によって示すフラグFPGSを“1”
に設定すると共に、前記フラグFPGSCNTを“0”
に設定して、再びパージを行えるように処理を戻して本
ルーチンを終了する(ステップS1104)。
【0127】一方、前記ステップS1101の答が否定
(NO)、即ち燃料供給系の異常検出を行う指示が出た
場合は、ステップS1105,S1106,S1107
の判別処理を順次実行する。すなわち、ステップS11
05では、パージの影響による誤検出を排除するためモ
ニタの禁止を行うべきことを“1”によって示すフラグ
FFMPGPASSが“1”であるか否かを判別する。
このフラグFFMPGPASSは、後述するステップS
1120で“1”にセットされる。
【0128】ステップS1106では、燃料供給系の異
常を“1”によって示すフラグFFMNGが“1”でい
るか否かを判別する。このフラグFFMNGは、後述す
る燃料供給系の異常が確定した場合に“1”にセット
(後述ステップS1113)される。
【0129】ステップS1107においては、本モニタ
がLAFセンサ17を使用して行われるのでLAFセン
サ17が異常であるか否かを判別する。
【0130】これらの判別処理の答が1つでも肯定(Y
ES)、即ち、フラグFFMPGPASS=“1”、フ
ラグFFMNG=“1”、あるいはLAFセンサが異常
である場合は、燃料供給系の異常検出を行わないとして
前記ステップS1102,S1103,S1104の処
理を前述同様に実行する。
【0131】そして、ステップS1105〜ステップS
1107の判別処理において、その答が全て否定(N
O)の場合、即ちフラグFFMPGPASS=“0”、
フラグFFMNG=“0”、及びLAFセンサが異常で
ない場合は、燃料供給系の異常検出を行うものとして次
のステップS1108へ進み、後述のサブルーチンで示
す異常被判別係数KFBCHKAVEの算出処理を行
う。
【0132】前記ステップS1108における異常被判
別係数KFBCHKAVEの算出処理後は、ステップS
1109へ進む。このステップS1109では、前記異
常被判別係数KFBCHKAVEが算出されたことを
“1”で示すフラグFKFBCHKAVECHKが
“1”であるか否かを判別し、その答が否定(NO)、
即ち異常被判別係数KFBCHKAVEが算出されてい
ないときは本ルーチンを終了する。その答が肯定(YE
S)、即ち異常被判別係数KFBCHKAVEが算出さ
れた場合は図21のステップS1111に進み、その算
出された異常被判別係数KFBCHKAVEがそのKF
BCHKAVE値の上限値KFBCHKAVEFSHよ
りも大きいか否かを判別する。
【0133】ステップS1111の判別処理の答が肯定
(YES)、即ち異常被判別係数KFBCHKAVEが
そのKFBCHKAVE値の上限よりも大きい場合は、
燃料供給系に異常があると判別し、ステップS1112
において、パージカットを行うべきことを“1”で示す
フラグFFMPGSを“0”に設定し、続いてステップ
S1113で前記フラグFFMNGを“1”に設定して
本ルーチンを終了する。
【0134】また、前記ステップS1111の判別の答
が否定(NO)の場合は、S1ステップS1114に進
む。このステップS1114では、パージの影響による
誤検出の可能性の有無を判断するための閾値KFBCH
KAVEPGLよりも今回のKFBCHKAVE値が小
さいか否かを判別する。ここで、閾値KFBCHKAV
EPGLは、図26に示すようにKFBCHKAVE値
の下限値KFBCHKAVEFSLよりもやや大きく設
定する。これは、閾値KFBCHKAVEPGLを下限
値KFBCHKAVEFSLと同値にすると、後述する
パージカットを行った際に、KFBCHKAVE値の変
動が現れる以前に燃料供給系が異常と判定されるおそれ
があるためである。
【0135】ステップS1114の判別の答が肯定(Y
ES)、即ちKFBCHKAVE値が閾値KFBCHK
AVEPGLよりも小さく(図26のA1)、パージの
影響による誤検出の可能性があると判断された場合はス
テップS1115に進み、前記フラグFFMPGSを
“1”にして次回のモニタでパージカットを実施するよ
うに指示する(このパージカットは後述するステップS
1219,S1220で実施される)。このように、異
常被判別係数KFBCHKAVEが閾値KFBCHKA
VEPGLを下回ったときのみパージカットを行うこと
により、的確にパージの影響による誤検出を防止できる
だけでなく、不要なパージカットが行われることがなく
なる。これにより、頻繁なパージカット/パージの切り
換えを行う必要がなくなり、運転性の悪化を防止でき
る。
【0136】次いでステップS1116へ進み、KFB
CHKAVE値がそのKFBCHKAVE値の下限値K
FBCHKAVEFSLよりも小さいか否かを判別し、
その答が肯定(YES)、即ちKFBCHKAVE値が
下限値KFBCHKAVEFSLよりも小さい場合は、
燃料供給系に異常があるとして前記ステップS1112
及びステップS1113の処理を経て本ルーチンを終了
する。その答が否定(NO)、即ちKFBCHKAVE
値が下限値KFBCHKAVEFSLよりも大きい場合
は、燃料供給系に異常がないとしてステップS1117
で燃料供給系に異常がないことを“1”よって示すフラ
グFFMOKを“1”に設定し、本ルーチンを終了す
る。
【0137】一方、次回のモニタで前記ステップS11
14の判別を行った際、その答が否定(NO)、即ちK
FBCHKAVE値が閾値KFBCHKAVEPGLよ
りも大きくなっている場合(前回のパージカットにより
KFBCHKAVE値が上昇する;図26のA2)はス
テップS1118へ進み、前回(ステップS1115)
でパージカットが指示されていたか否かを判別し、その
答が肯定(YES)、即ちフラグFFMPGSが“1”
で前回パージカットが指示されていた場合は、ステップ
S1119でフラグFFMPGSを“0”に設定してパ
ージカットを停止する(図26のA3)。
【0138】そして、このような時にモニタを実行する
ことは、パージの影響によって正確なモニタが実施でき
ない状況にあると判断し、続くステップS1120で前
記フラグFFMPGPASSを“1”に設定して、モニ
タを禁止する指示を出す(図26のA4)。その後は、
前記ステップS1116へ進んで前記同様の処理後、本
ルーチンを終了する。
【0139】次に、図22〜図25のフローチャートを
用いて前記ステップS1108における異常被判別係数
KFBCHKAVEの詳細な算出手法を説明する。
【0140】図22において、まずステップS1201
では、エンジン運転が特定運転領域にあるか否かを判別
する。即ちエンジン回転数NEが下限回転数NAVEL
(例えば1504rpm)と上限回転数NAVEL(例えば249
6rpm)との間にあり(該上下限回転数はAT車とMT車
とで別の値に設定してもよい)、吸気管内絶対圧PBA
が下限圧PBAVEL(例えば263mmHg)と上限圧PB
AVEH(例えば435mmHg)との間にあり(該上下限圧
はAT車とMT車とで別の値に設定してもよい)、吸気
温TAが下限温度TAAVEL(例えば20℃)と上限
温度TWAVEH(例えば70℃)との間にあり、エン
ジン水温TWが下限温度TAAVEL(例えば70℃)
と上限温度(例えば90℃)との間にあり、車速Vが下
限速度VAVELと上限速度VAVEHとの間にあり、
且つスロットル弁開度θTHが下限開度θTHAVEL
と上限開度θTHAVEHとの間にあるときエンジンが
特定運転領域にあるとする。
【0141】ステップS1201の答が肯定(YE
S)、即ちエンジン運転が特定運転領域にある場合はス
テップS1202へ進み、空燃比フィードバック制御中
であるか否かを判別する。前記ステップS1201また
はステップS1202の答が否定(NO)、即ちエンジ
ン運転が特定運転領域にない場合、または空燃比フィー
ドバック制御が行われていない場合は、LAFセンサ1
7の出力に応じた空燃比補正係数KFBの算出が行われ
ないので、KFBCHKAVE値の算出処理は実行せず
に、図23に示すステップS1203〜ステップS12
09の処理を行い、本サブルーチンを終了する。
【0142】すなわち、ステップS1203〜S120
5において、順次、前記モニタ条件持続タイマtCON
T、パージカット後安定化タイマtFMPGS、及びK
AV算出タイマtCHKAVEをそれぞれ所定値に初期
化してスタートさせる。さらに、ステップS1206で
前記フラグFKFBCHKAVECHKを“0”に設定
しておき、続くステップS1207で前記フラグFPG
SCNTが“0”であるか否かを判別する。その答が否
定(NO)、即ちフラグFPGSCNTが“0”でない
場合はステップS1208へ進み、前記フラグFPGS
を“1”に設定すると共に、前記フラグFPGSCNT
を“0”に戻して、ステップS1209でフラグFKA
CTSTを“0”に設定して本サブルーチンを終了す
る。ここで、フラグFKACTSTは、他の制御ルーチ
ンでLAFセンサ17の出力を当量比に変換して得られ
る検出当量比KACTと目標当量比KCMDとの大小関
係の反転(以下単に「KACT値の反転」という)があ
ったときに“1”に設定される反転確認フラグである
(後述のステップS1217で“1”にセットされ
る)。また、前記ステップS1207の答が肯定(YE
S)、即ちフラグFPGSCNTが“0”のときは、前
記ステップS1208をスキップしてステップS120
9を経て本サブルーチンを終了する。
【0143】図22に戻り、前記ステップS1201及
びステップS1202の答が肯定(YES)、即ちエン
ジン運転が特定運転領域となり、且つ空燃比フィードバ
ック制御中となった場合はステップS1210へ進み、
前記フラグFKFBCHKAVECHKが“1”である
か否かを判別する。その答が否定(NO)、即ちフラグ
FKFBCHKAVECHKが0”で未だ異常被判別係
数KFBCHKAVEが算出されていないときは次のス
テップS1211へ進んで、タイマtCONTが“0”
であるか否かを判別する。
【0144】前記ステップS1210の答が肯定(YE
S)、即ちフラグFKFBCHKAVECHKが“1”
で既にKFBCHKAVE値が算出されている場合、ま
たは前記ステップS1211の答が否定(NO)、即ち
タイマtCONTが“0”でない場合は、前記ステップ
S1207〜ステップS1209の処理を同様に行って
本サブルーチンを終了する。
【0145】前記ステップS1210の答が否定(N
O)、即ちKFBCHKAVE値が算出されておらず、
前記ステップS1211の答が肯定(YES)、即ちタ
イマtCONTが“0”となり、エンジン運転が特定運
転領域にある空燃比フィードバック制御状態が所定時間
継続した場合は、モニタ条件が成立したことになり、ス
テップS1300以降で実際に異常被判別係数KFBC
HKAVE算出の処理を行う。
【0146】まず、ステップS1300では図19のス
テップS204又はS213で設定したフラグFKST
Rが「1」か否かを判別する。その判別の結果、「1」
に設定されていないときは、積分値KAV算出のための
異常判定パラメータKFBCHKに、PID制御の積分
項KLAFIをセットし(ステップS1301)、一方
「1」に設定されているときは異常判定パラメータKF
BCHKにSTR制御の適応補正係数KSTRのフィル
タ出力値KSTRLOをセットして(ステップS130
2)からステップS1212へ進む。なおここで、フィ
ルタ出力値KSTRLOは適応補正係数KSTRをロー
パスフィルタブロックB24に通過させ、いわゆる一次
遅れプロセス等によりその値を平滑化して得られる。制
御応答性の非常に高いSTR制御では、その補正係数K
STRの動きおよび変化幅が大きいので、ローパスフィ
ルタ出力値KSTRLOを用いることにより、積分値K
AVの変動を抑制し、適切な異常被判別係数KFBCH
KAVEを得ることができる。その結果、適応補正係数
KSTRを用いて正確な異常検出を行うことが可能とな
る。
【0147】次に、ステップS1212では、前記フラ
グFFMPGSが“1”であるか否かを判別する。初回
は、その答が否定(NO)、即ちフラグFFMPGSが
“0”でパージカットの指示が出ていないので、図24
のステップS1213へ進む。
【0148】図24において、ステップS1213で
は、タイマtFMPGSが“0”となったか否かを判別
し、その答が否定(NO)、即ち前記ステップS120
5でスタートされたタイマtFMPGSが“0”となっ
ていない場合は、パージ開始から所定時間の経過がない
としてステップS1214へ進む。このステップS12
14では、前記フラグFKACTSTを“0”にして本
サブルーチンを終了する。
【0149】前記ステップS1213の答が肯定(YE
S)、即ちタイマtFMPGSが“0”となってパージ
開始から所定時間経過した場合は、ステップS1215
へ進み、前記フラグFKACTSTが“1”であるか否
かを判別する。初回では、その答は否定(NO)、即ち
フラグFKACTSTが“0”であってKACT値の反
転は確認されていないので、ステップS1216におい
てKACT値が反転されているか否かを判別する。その
答が否定(NO)、即ちKACT値が反転されていない
場合は、本サブルーチンを終了し、肯定(YES)、即
ちKACT値が反転されていた場合は、ステップS12
17で前記フラグFKACTSTを“1”に設定すると
共に、ステップS1218で現在のKFBCHK値をそ
の積分値KAVの初期値として設定して本サブルーチン
を終了する。
【0150】図22に戻り、2回目以降において、前記
ステップS1212の答が肯定(YES)、即ちフラグ
FFMPGSが“1”となりパージの影響による誤検出
を排除するためのパージカットの指示が出ている場合
は、ステップS1219へ進む。このステップS121
9では、前記フラグFPGSが“1”であるか否かを判
別し、その答が肯定(YES)、即ちパージカットの指
示が出ているにも拘らずフラグFPGSが“1”で実際
にパージカットが行われていない場合は、ステップS1
220へ進む。
【0151】ステップS1220では、前記フラグFP
GSを“0”に設定してパージカットを指示し、且つ前
記フラグFPGSCNTを“1”に設定してパージカッ
トを実施した後、図24に示す前記ステップS1213
へ進む。また、前記ステップS1219の答が否定(N
O)、パージカット指示によりパージカットとなってい
る場合は、そのままステップS1213へ進む。このス
テップS1213では、上記同様の処理を行って前記ス
テップS1215へ進む。
【0152】ステップS1215の判別では、前回でK
ACT値が反転していればフラグFKACTSTが
“1”となっているので、その答は肯定(YES)、即
ちKACT値の反転が確認され、ステップS1221へ
進んで、再度、KACT値が反転されているか否かを判
別する。その答が肯定(YES)、即ちKACT値が反
転されているときは下記数式9に基づき異常判定パラメ
ータKFBCHKの学習平均値である積分値KAVを算
出する(ステップ1222)。
【0153】
【数9】 但し、CO2AVは1〜100Hのうち、特定運転領域に
おいて異常判定パラメータKFBCHKの変化に対する
追従性をよくするために比較的大きな値に設定される変
数であり、KAV’は積分値KAVの前回値であって、
その初期値は、前回エンジンが特定運転領域あった時に
得られ記憶された最後のKFBCHKAVE値とし、エ
ンジン始動後最初に特定運転領域に突入した時は、係数
KFBCHKAVE値の初期値とする。
【0154】また、ステップS1221の答が否定(N
O)、即ちKACT値が反転されていない場合は、前記
ステップS1222をスキップして、積分値KAVは前
回値を採用する。
【0155】続くステップS1223では、タイマtC
HKAVEが“0”となっているか否かを判別し、その
答が否定(NO)、即ちタイマtCHKAVEが“0”
となっていない場合は本サブルーチンを終了する。その
答が肯定(YES)、即ちタイマtCHKAVEが
“0”となりKAV値の算出後所定時間が経過した場合
は、図25のステップS1224へ進む。
【0156】ステップS1224では、このように決定
された積分値KAVが、前回KFBCHKAVE値に経
年変化判定用偏差ΔKFBCHKAVE(例えば800
H)を加算した値より大きいか否かを判別する。なお、
係数KFBCHKAVEの初期値は他の制御ルーチンで
決定されるKFBの平均値KREFとする。このステッ
プS1224の答が肯定(Yes)ならば下記数式10
に基づき異常被判別係数KFBCHKAVEの今回値を
算出して更新する(ステップS1225)。
【0157】
【数10】KFBCHKAVE=KFBCHKAVE’
+α×ΔKFBCHKAVE 但しKFBCHKAVE’は係数KFBCHKの前回値
を示し、右辺の係数αは運転状態に応じて設定される係
数(≦1.0)であり、例えば0.5に設定される。
【0158】次にステップS1226でフラグFKFB
CHKAVECHKを、1に設定して、ステップS12
27へ進む。このステップS1227では、フラグFP
GSCNTが“0”であるか否かを判別し、その答が肯
定(YES)、即ち燃料供給系の異常検出のためのパー
ジカットを実施していなかった場合は、本サブルーチン
を終了し、その答が否定(NO)、即ち燃料供給系の異
常検出のためのパージカットを実施していた場合は、ス
テップS1228へ進む。
【0159】ステップS1228では、前記フラグFP
GSを“1”に設定すると共に、前記フラグFPGSC
NTを“0”に設定してパージを元に戻し、本サブルー
チンを終了する。
【0160】ステップS1224の答が否定(No)な
らば前記積分値KAVが、前回KFBCHKAVE値か
ら前記経年変化判定用偏差値ΔKFBCHKAVEを減
算した値より小さいか否かを判別する(ステップS12
29)。この答が肯定(Yes)ならば下記数式11に
基づき異常被判別係数KFBCHKAVEの今回値を算
出して更新する(ステップS1230)。
【0161】
【数11】KFBCHKAVE=KFBCHKAVE’
−α×ΔKFBCHKAVE その後、前記ステップS1226,S1227,S12
28の処理を前記同様に行って本サブルーチンを終了す
る。また、前記ステップS1229の答が否定(NO)
であれば前記ステップS1230をスキップして本サブ
ルーチンを終了する。
【0162】図22乃至図25の処理により、空燃比制
御がPID制御による場合とSTR制御による場合とに
かかわらず、異常被判別係数KFBCHKAVEが適切
に算出され、これを図20、図21の燃料供給系の異常
検出処理に用いることにより、正確な異常検出を行うこ
とができる。
【0163】なお、上述した実施例では適応制御実行中
は、KSTR値をローパスフィルタ処理したKSTRL
O値を用いて(KFBCHK=KSTRLOとして)積
分値KAVを算出するようにしたが、これに限るもので
はなく、例えば適応制御実行中はKFBCHK=KST
Rとするとともに、数式9の変数CO2AVをPID制
御実行中より小さな値とし、数式9によるなましの度合
をより大きくするようにしてもよい。
【0164】
【発明の効果】以上詳述したように本発明の内燃機関の
空燃比制御装置によれば、空燃比センサの出力に基づい
て漸化式形式の制御器を用いて空燃比補正係数が算出さ
れ、前記空燃比補正係数が平滑化され、前記平滑化され
た空燃比補正係数の平均値が算出され、前記平均値に基
づいて前記エンジンの燃料供給系の異常が検出されるの
で、漸化式形式の制御器を用いた空燃比フィードバック
制御実行中においても従来の手法に対し複雑な構成の追
加を必要とすることなく、容易かつ正確に燃料供給系の
異常検出をすることができる。
【図面の簡単な説明】
【図1】本発明の一実施例にかかる内燃機関及びその制
御装置の構成を示す図である。
【図2】図1の一部の詳細な構成を示す図である。
【図3】本実施例における空燃比制御手法を説明するた
めの機能ブロック図である。
【図4】LAFセンサ出力に基づいて空燃比補正係数を
算出する処理のフローチャートである。
【図5】最終目標空燃比係数(KCMDM)算出処理の
フローチャートである。
【図6】目標空燃比係数(KCMD)算出処理のフロー
チャートである。
【図7】TDC信号パルスとLAFセンサ出力との関係
を示す図である。
【図8】LAFセンサ出力の最適なサンプリング時期を
説明するための図である。
【図9】LAFセンサ出力選択処理を説明するための図
である。
【図10】LAFセンサ出力選択処理のフローチャート
である。
【図11】LAFセンサ出力選択用タイミングマップを
示す図である。
【図12】図11のマップの設定傾向説明するための図
である。
【図13】検出当量比(KACT)算出処理のフローチ
ャートである。
【図14】LAFフィードバック領域判別処理のフロー
チャートである。
【図15】PID補正係数(KLAF)算出処理のフロ
ーチャートである。
【図16】適応補正係数(KSTR)の算出処理を説明
するためのブロック図である。
【図17】フィードバック補正係数(KFB)の算出処
理のフローチャートである。
【図18】適応制御領域判別処理のフローチャートであ
る。
【図19】KLAF/KSTR演算処理のフローチャー
トである。
【図20】異常検出プログラムのフローチャートであ
る。
【図21】異常検出プログラムのフローチャートであ
る。
【図22】図20に示されるステップS1108の詳細
なプログラムのフローチャートである。
【図23】図20に示されるステップS1108の詳細
なプログラムの続きのフローチャートである。
【図24】図20に示されるステップS1108の詳細
なプログラムのフローチャートである。
【図25】図20に示されるステップS1108の詳細
なプログラムの続きのフローチャートである。
【図26】パージの影響による異常被判別係数KFBC
HKAVEの変動を示す図である。
【符号の説明】 1 内燃機関(本体) 5 電子コントロールユニット(ECU) 12 燃料噴射弁 17 広域空燃比センサ

Claims (1)

  1. 【特許請求の範囲】
JP06178395A 1995-02-24 1995-02-24 内燃機関の空燃比制御装置 Expired - Fee Related JP3575708B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP06178395A JP3575708B2 (ja) 1995-02-24 1995-02-24 内燃機関の空燃比制御装置
US08/602,115 US5619976A (en) 1995-02-24 1996-02-23 Control system employing controller of recurrence formula type for internal combustion engines

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP06178395A JP3575708B2 (ja) 1995-02-24 1995-02-24 内燃機関の空燃比制御装置

Publications (2)

Publication Number Publication Date
JPH08232721A true JPH08232721A (ja) 1996-09-10
JP3575708B2 JP3575708B2 (ja) 2004-10-13

Family

ID=13181041

Family Applications (1)

Application Number Title Priority Date Filing Date
JP06178395A Expired - Fee Related JP3575708B2 (ja) 1995-02-24 1995-02-24 内燃機関の空燃比制御装置

Country Status (1)

Country Link
JP (1) JP3575708B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007291984A (ja) * 2006-04-26 2007-11-08 Toyota Motor Corp 内燃機関の空燃比制御装置
CN119102905A (zh) * 2024-09-04 2024-12-10 东风汽车集团股份有限公司 一种发动机动态断油识别方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007291984A (ja) * 2006-04-26 2007-11-08 Toyota Motor Corp 内燃機関の空燃比制御装置
CN119102905A (zh) * 2024-09-04 2024-12-10 东风汽车集团股份有限公司 一种发动机动态断油识别方法

Also Published As

Publication number Publication date
JP3575708B2 (ja) 2004-10-13

Similar Documents

Publication Publication Date Title
JP3581737B2 (ja) 内燃機関の空燃比制御装置
JP3765617B2 (ja) 内燃機関の空燃比制御装置
JP3841842B2 (ja) 内燃機関の制御装置
JP3729295B2 (ja) 内燃機関の空燃比制御装置
JP3683357B2 (ja) 内燃機関の気筒別空燃比推定装置
JP3372723B2 (ja) 内燃機関の空燃比制御装置
US6082345A (en) Air-fuel ratio control system for internal combustion engines
JPH03179147A (ja) 内燃機関の空燃比学習制御装置
JP3304843B2 (ja) プラントの制御装置
JPH1073043A (ja) 内燃機関の空燃比制御装置
JP3575708B2 (ja) 内燃機関の空燃比制御装置
JP3549144B2 (ja) 内燃機関の空燃比制御装置
JPH10103131A (ja) 内燃機関の空燃比制御装置
JP3962100B2 (ja) 内燃機関の制御装置
JP3223472B2 (ja) 内燃機関の制御装置
JP3535722B2 (ja) 内燃機関の空燃比制御装置
JP2754500B2 (ja) 内燃エンジンの空燃比制御方法
JP3889410B2 (ja) 内燃機関の空燃比制御装置
JP3743591B2 (ja) 内燃機関の空燃比制御装置
JP3294099B2 (ja) 内燃機関の燃料噴射制御装置
JP3848395B2 (ja) 内燃機関の燃料噴射制御装置
JP2759918B2 (ja) 内燃エンジンの空燃比制御方法
JP2770273B2 (ja) 内燃エンジンの空燃比制御方法
JPH08232731A (ja) 内燃機関の制御装置
JP2759917B2 (ja) 内燃エンジンの空燃比制御方法

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040330

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040615

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040702

R150 Certificate of patent (=grant) or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080716

Year of fee payment: 4

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090716

Year of fee payment: 5

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100716

Year of fee payment: 6

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100716

Year of fee payment: 6

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110716

Year of fee payment: 7

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110716

Year of fee payment: 7

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120716

Year of fee payment: 8

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120716

Year of fee payment: 8

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130716

Year of fee payment: 9

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140716

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees