JPH08319867A - エンジンの燃料システムの故障診断方法 - Google Patents

エンジンの燃料システムの故障診断方法

Info

Publication number
JPH08319867A
JPH08319867A JP12664495A JP12664495A JPH08319867A JP H08319867 A JPH08319867 A JP H08319867A JP 12664495 A JP12664495 A JP 12664495A JP 12664495 A JP12664495 A JP 12664495A JP H08319867 A JPH08319867 A JP H08319867A
Authority
JP
Japan
Prior art keywords
air
fuel ratio
value
learning
fuel
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
JP12664495A
Other languages
English (en)
Inventor
Tetsukazu Inoue
哲一 井上
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.)
Subaru Corp
Original Assignee
Fuji Heavy Industries 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 Fuji Heavy Industries Ltd filed Critical Fuji Heavy Industries Ltd
Priority to JP12664495A priority Critical patent/JPH08319867A/ja
Publication of JPH08319867A publication Critical patent/JPH08319867A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】 【目的】 一時的な空燃比変化に影響されることなく燃
料システムの異常を確実に検出し、誤診断を防止する。 【構成】 学習補正係数KBLRCが上限値KBLRCMAXを越
えているときには、ディテールエリア学習値マップ内で
学習値K2が上限値K2MAXに張り付いている領域の数
ΣALEA(NE,Tp)MAXを求めて診断値CDETとし、一
方、学習補正係数KBLRCが下限値KBLRCMINより小さく
なっているときには、ディテールエリア学習値マップ内
で学習値K2が下限値K2MINに張り付いている領域の
数ΣALEA(NE,Tp)MINを求めて診断値CDETとす
る。そして、この診断値CDETを設定値CSETと比較し、
CDET>CSETのときには、燃料システムが異常であると
判断することで、一時的な空燃比変化に影響されること
なく燃料システムの異常を確実に検出し、誤診断を防止
する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、燃料システムの異常を
自己診断するエンジンの燃料システムの故障診断方法に
関する。
【0002】
【従来の技術】周知のように、エンジンの空燃比制御シ
ステムにおいては、吸入空気量センサやインジェクタ等
の生産時のばらつき、あるいは経時変化による空燃比の
ずれを迅速に補正するため、O2センサ等の空燃比セン
サによるフィードバック制御に対して学習制御を取入
れ、運転状態が大きく変化した場合にも常に目標空燃比
の状態が保持されるようにしている。
【0003】すなわち、エンジンの定常運転状態におい
て、O2センサによるクローズドループの補正係数すな
わち空燃比フィードバック補正係数が、比例積分制御に
より空燃比リッチ/リーンを所定回数繰返したとき、空
燃比フィードバック補正係数の中心値を学習値(オープ
ンループの補正係数)として空燃比学習値マップに記憶
し、運転状態が変化した場合にも、この学習値を燃料噴
射量に反映して上記空燃比フィードバック補正係数の中
心が目標値となるよう制御し、空燃比を目標空燃比に保
つようにしている。
【0004】この場合、空燃比制御システムには、異常
発生に対処するため自己診断機能が備えられており、例
えば、特開昭60−252133号公報には、学習補正
係数の値が設定値以上のとき、制御装置が異常であると
判定する技術が開示されており、また、特開平6−06
6188号公報には、マップ内の学習済みフラグがセッ
トされている領域間の学習補正係数の段差が所定のスラ
イスレベルを超えている場合、燃料供給系に異常有りと
判定する技術が開示されている。
【0005】
【発明が解決しようとする課題】しかしながら、キャニ
スタに貯留された燃料タンクの蒸発燃料を吸気系にパー
ジするキャニスタパージが実行された場合や、エンジン
回転数とエンジン負荷とに応じて設定される燃料増量補
正が一時的に増大した場合等には、その空燃比変化が学
習されて空燃比学習マップ内の特定の領域のみが他の領
域と比較して極大あるいは極小値となり、エンジンの燃
料供給量を決定するための吸入空気量センサ等を含む燃
料システムは正常であるにも拘わらず、燃料システムが
異常であると誤診断する虞がある。
【0006】本発明は上記事情に鑑みてなされたもの
で、一時的な空燃比変化に影響されることなく燃料シス
テムの異常を確実に検出でき、誤診断を防止することの
できるエンジンの燃料システムの故障診断方法を提供す
ることを目的としている。
【0007】
【課題を解決するための手段】本発明は、空燃比センサ
の出力による空燃比フィードバック補正量の学習値を記
憶する空燃比学習マップに基づいて、燃料システムの異
常を自己診断するエンジンの燃料システムの故障診断方
法であって、上記空燃比学習マップにおいて、学習値が
上限値あるいは下限値に張り付いている領域の数が設定
値を越えたとき、上記燃料システムが異常であると判定
することを特徴とする。
【0008】
【作用】本発明では、空燃比学習マップにおいて、学習
値が上限値あるいは下限値に張り付いている領域の数が
設定値を越えたとき、燃料システムが異常であると判定
する。
【0009】
【実施例】以下、図面を参照して本発明の実施例を説明
する。図面は本発明の一実施例を示し、図1は燃料シス
テム診断ルーチンのフローチャート、図2は燃料噴射量
設定ルーチンのフローチャート、図3は空燃比フィード
バック補正係数設定ルーチンのフローチャート、図4〜
図9は空燃比学習ルーチンのフローチャート、図10は
エンジン制御系の概略構成図、図11は電子制御系の回
路構成図、図12はO2センサ出力と空燃比フィードバ
ック補正係数との関係を示す説明図、図13は空燃比学
習値マップの説明図である。
【0010】図10において、符号1はエンジンであ
り、図においては水平対向4気筒型エンジンを示す。こ
のエンジン1のシリンダヘッド2に形成された各吸気ポ
ート2aにインテークマニホルド3が連通され、このイ
ンテークマニホルド3にエアチャンバ4を介してスロッ
トルチャンバ5が連通され、このスロットルチャンバ5
上流側に吸気管6を介してエアクリーナ7が取付けられ
ている。
【0011】また、上記吸気管6の上記エアクリーナ7
の直下流に、ホットワイヤ式あるいはホットフィルム式
等の吸入空気量センサ8が介装され、さらに、上記スロ
ットルチャンバ5に設けられたスロットルバルブ5a
に、スロットル開度を検出するスロットル開度センサと
スロットルバルブ全閉でONするアイドルスイッチとを
内蔵したスロットルセンサ9が連設されている。
【0012】また、上記スロットルバルブ5aの上流側
と下流側とを連通するバイパス通路10に、アイドルス
ピードコントロール(ISC)バルブ11が介装され、
上記インテークマニホルド3の各気筒の各吸気ポート2
a直上流側に、インジェクタ12が臨まされている。
【0013】さらに、先端を燃焼室に露呈する点火プラ
グ13aが上記シリンダヘッド2の各気筒毎に取付けら
れ、上記点火プラグ13aに連設される点火コイル13
bにイグナイタ14が接続されている。
【0014】上記インジェクタ12は、燃料供給路15
を介して燃料タンク16に連通されており、この燃料タ
ンク16内にはインタンク式の燃料ポンプ17が設けら
れている。この燃料ポンプ17からの燃料は、上記燃料
供給路15に介装された燃料フィルタ18を経て上記イ
ンジェクタ12、プレッシャレギュレータ19に圧送さ
れ、このプレッシャレギュレータ19から上記燃料タン
ク16にリターンされて上記インジェクタ12への燃料
圧力が所定の圧力に調圧される。
【0015】また、上記燃料タンク16の上部には、フ
ロートバルブからなるフューエルカットバルブ20が設
けられ、このフューエルカットバルブ20から蒸発燃料
ガス放出通路21が延出されている。この蒸発燃料ガス
放出通路21には、2個のボールバルブと2ウエイバル
ブとが内蔵されたロールオーババルブ22が介装され、
活性炭等からなる吸着部を備えたキャニスタ23に連通
されている。さらに、このキャニスタ23は、リニアソ
レノイドバルブ等からなるキャニスタパージコントロー
ル(CPC)バルブ24を介して吸気系(上記スロット
ルバルブ5a全閉状態でスロットルバルブ5aの直下流
位置)に連通されている。
【0016】上記燃料タンク16内で発生した蒸発燃料
は、上記フューエルカットバルブ20により上記蒸発燃
料ガス放出通路21への液体分の流入が阻止され、気体
分のみが上記蒸発燃料ガス放出通路21へ放出される。
そして、上記蒸発燃料ガス放出通路21へ放出された蒸
発燃料ガスの圧力が上記ロールオーババルブ22内の2
ウエイバルブの設定圧を越えると、この2ウエイバルブ
を通って上記キャニスタ23内の活性炭に吸着される。
【0017】上記キャニスタ23内に貯えられた蒸発燃
料ガスは、上記CPCバルブ24を介して吸気系に導か
れ、エンジン1の燃焼室内に吸入される。尚、上記CP
Cバルブ24は、後述する電子制御装置40からの駆動
信号のデューティ比に応じて弁開度が制御される。
【0018】また、上記ロールオーババルブ22は、万
一の場合の車輌横転に対して2個のボールバルブにより
上記燃料タンク16からの燃料漏れを防止する安全装置
の役目を果たすと同時に、通常時は2ウエイバルブとし
て働き、上記燃料タンク16の内圧が設定圧以上に高く
なると、蒸発燃料ガスを上記キャニスタ23に解放し、
逆に、上記燃料タンク16内が規定以上の負圧になる
と、上記キャニスタ23から大気を上記燃料タンク16
内に導き、タンク内圧を常に所定範囲内に保って上記燃
料タンク16の変形を防止するようになっている。
【0019】また、上記エンジン1のシリンダブロック
1aにノックセンサ25が取付けられるとともに、この
シリンダブロック1aの左右バンクを連通する冷却水通
路26に冷却水温センサ27が臨まされている。さら
に、上記シリンダヘッド2の排気ポート2bに連通する
エグゾーストマニホルド28の集合部に、空燃比センサ
としてのフロントO2センサ(FO2センサ)29aが臨
まされ、このFO2センサ29aの下流側にフロント触
媒コンバータ30aが介装されている。このフロント触
媒コンバータ30aの直下流にはリア触媒コンバータ3
0bが介装され、このリア触媒コンバータ30bの下流
側に、同じく空燃比センサとしてのリアO2センサ(R
O2センサ)29bが臨まされている。
【0020】尚、上記RO2センサ29bは、例えば、
触媒劣化診断等のために設けられ、上記FO2センサ2
9aの出力と上記RO2センサ29bの出力との比較結
果に基づいて触媒の劣化診断が行なわれる。
【0021】また、上記シリンダブロック1aに支承さ
れたクランクシャフト1bに、クランクロータ31が軸
着され、このクランクロータ31の外周に、所定のクラ
ンク角に対応する突起(あるいはスリット)を検出する
磁気センサ(電磁ピックアップ等)あるいは光センサ等
からなるクランク角センサ32が対設されている。さら
に、上記シリンダヘッド2のカムシャフト1cにカムロ
ータ33が連設され、このカムロータ33に、同じく磁
気センサあるいは光センサ等からなる気筒判別用のカム
角センサ34が対設されている。
【0022】一方、図11において、符号40は電子制
御装置(ECU)であり、CPU41、ROM42、R
AM43、バックアップRAM44、及び、I/Oイン
ターフェース45がバスライン46を介して互いに接続
されたマイクロコンピュータを中心として構成され、そ
の他、安定化電圧を各部に供給する定電圧回路47、上
記I/Oインターフェース45の出力ポートからの信号
によりアクチュエータ類を駆動する駆動回路48、セン
サ類からのアナログ信号をデジタル信号に変換するA/
D変換器49等の周辺回路が組み込まれている。
【0023】上記定電圧回路47は、ECUリレー50
のリレー接点を介してバッテリ51に接続され、このバ
ッテリ51に、上記ECUリレー50のリレーコイルが
イグニッションスイッチ52を介して接続されている。
また、上記定電圧回路47は、直接、上記バッテリ51
に接続されており、上記イグニッションスイッチ52が
ONされてECUリレー50のリレー接点が閉となった
とき、上記定電圧回路47から各部へ電源が供給される
一方、上記イグニッションスイッチ52のON,OFF
に拘らず、常時、上記バックアップRAM44にバック
アップ用の電源が供給される。
【0024】また、上記I/Oインターフェース45の
入力ポートには、ノックセンサ25、クランク角センサ
32、カム角センサ34、車速センサ35が接続される
とともに、吸入空気量センサ8、スロットルセンサ9、
冷却水温センサ27、FO2センサ29a、及び、RO2
センサ29bが上記A/D変換器49を介して接続さ
れ、さらに、このA/D変換器49に上記バッテリ51
からの電圧VBが入力されてモニタされる。
【0025】一方、上記I/Oインターフェース45の
出力ポートには、イグナイタ14が接続されるととも
に、上記駆動回路48を介して、ISCバルブ11、イ
ンジェクタ12、CPCバルブ24、及び、図示しない
インストルメントパネルに配設され、各種警報を集中し
て表示するMILランプ53が接続されている。
【0026】上記ROM42には、エンジン制御プログ
ラムや各種の故障診断プログラム、、データマップ類等
の固定データが記憶されており、また、上記RAM43
には、各センサ類、スイッチ類の出力信号を処理した後
のデータ、及び上記CPU41で演算処理したデータが
格納されている。また、上記バックアップRAM44に
は、後述する空燃比学習値マップを初めとする各種制御
用データ、トラブルを示すデータ等がストアされてお
り、上記イグニッションスイッチ52がOFFのときに
もデータが保持される。
【0027】尚、上記バックアップRAM44のトラブ
ルデータは、ECU40にコネクタ54を介して携帯型
故障診断装置であるシリアルモニタ60を接続すること
で外部に読出すことができる。このシリアルモニタ60
は、本出願人が先に提出した特開平2−73131号公
報に詳述されている。
【0028】上記CPU41では上記ROM42に記憶
されている制御プログラムに従って、燃料噴射量、点火
時期、ISCバルブ11の駆動信号のデューティ比、C
PCバルブ24の駆動信号のデューティ比等を演算し、
空燃比学習制御、点火時期制御、アイドル回転数制御、
キャニスタパージ制御等の各種制御を行なう。尚、キャ
ニスタパージは、例えば、エンジン始動後から設定時間
が経過し、冷却水温Twが設定値以上(エンジン暖機完
了状態)で、且つ、エンジン回転数NEが設定回転数以
上の運転領域で実行される。
【0029】また、上記CPU41では、空燃比学習の
学習状況から燃料システムが正常か否かを判定し、異常
と判定すると、上記MILランプ53を点灯あるいは点
滅して警告を発するとともに、バックアップRAM44
に該当するトラブルデータをストアする。尚、燃料シス
テムとは、最終的にエンジンに燃料を供給するために必
要な構成要素からなるシステムを称し、インジェクタ等
の燃料供給系のみならず、吸入空気量センサ等の吸入空
気計測系をも含むものである。
【0030】次に、ECU40による燃料システムの故
障診断に係わる処理について、図1〜図9のフローチャ
ートに従って説明する。
【0031】図2のフローチャートは、所定周期毎に繰
返される燃料噴射量設定ルーチンを示し、まず、ステッ
プS101で、クランク角センサ32からの信号の入力間隔
に基づいて算出されるエンジン回転数NEと、吸入空気
量センサ8からの信号に基づいて算出される吸入空気量
Qとから基本燃料噴射量に相当する基本燃料噴射パルス
幅Tpを算出する(Tp←K×Q/NE;Kはインジェク
タ特性補正定数)。
【0032】次いで、ステップS102へ進み、後述する空
燃比フィードバック補正係数設定ルーチンによりFO2
センサ29aからの信号に基づいて設定された空燃比フ
ィードバック補正量としての空燃比フィードバック補正
係数αをRAM43の所定アドレスから読出し、ステッ
プS103で、冷却水温センサ27、スロットルセンサ9な
どからの出力に基づいて、冷却水温補正、加減速補正、
全開増量補正、アイドル後増量補正などに係わる各種増
量分補正係数COEFを設定する。
【0033】次に、ステップS104へ進み、バックアップ
RAM44の所定アドレスから空燃比学習補正係数KBL
RCを読出し、ステップS105で、バッテリ51の端子電圧
VBに基づいてインジェクタ12の無効噴射時間を補間
する電圧補正係数TS を設定すると、ステップS106で、
上記基本燃料噴射パルス幅Tpを、各種増量分補正係数
COEF、空燃比フィードバック補正係数α、空燃比学
習補正係数KBLRCにより空燃比補正するとともに、電圧
補正係数TS により電圧補正し、最終的な燃料噴射量
(燃料噴射パルス幅)Tiを設定する(Ti←Tp ×CO
EF×α×KBLRC+TS )。
【0034】そして、上記ステップS106で設定した燃料
噴射量Tiを、ステップS107でセットし、ルーチンを抜
ける。その結果、燃料噴射量Tiのパルス幅を有する駆
動信号が所定タイミングで該当気筒のインジェクタ12
に出力され、燃料噴射量Tiに相応する量の燃料が噴射
される。
【0035】以上の燃料噴射量設定ルーチンのステップ
S102における空燃比フィードバック補正係数αは、図3
に示す空燃比フィードバック補正係数設定ルーチンによ
り設定され、また、ステップS104における空燃比学習補
正係数KBLRCは、図4〜図9の空燃比学習ルーチンによ
って設定される。
【0036】まず、図3の空燃比フィードバック補正係
数設定ルーチンについて説明する。このルーチンでは、
ステップS201で、フィードバック(F/B)制御条件が
成立するか否かを調べる。例えば、冷却水温Tw が所定
値以下(例えば50℃以下)のとき、エンジン回転数N
Eが設定回転数以上(例えば5200rpm 以上)のと
き、あるいは、基本燃料噴射パルス幅Tpが設定値以上
(スロットル略全開領域)のときには、F/B制御条件
不成立と判別し、これ以外のとき、且つ、FO2 センサ
29a及びRO2センサ29bが共に活性化していると
き(例えば、各出力電圧が各々に対する設定値以上のと
き)、F/B制御条件成立と判別する。
【0037】そして、上記ステップS201で空燃比フィー
ドバック制御条件不成立と判別されると、上記ステップ
S201からステップS202へ進んで、空燃比リーン側から空
燃比リッチ側への反転あるいは空燃比リッチ側から空燃
比リーン側への反転を判別するためのリッチ/リーン切
換判別フラグFLAGAをクリアし(FLAGA←0)、ステッ
プS203で空燃比フィードバック補正係数αをα=1.0
に固定してルーチンを抜ける。その結果、F/B制御条
件不成立時にはオープンループ制御となる。
【0038】一方、上記ステップS201でF/B制御条件
成立と判別されると、上記ステップS201からステップS2
04へ進んでFO2センサ29aの出力電圧VAFを読込
み、ステップS205で、この出力電圧VAFと基準電圧(ス
ライスレベル)VSとを比較して、現在、空燃比がリッ
チ側にあるかリーン側にあるかを調べる。
【0039】上記ステップS205で、VAF≧VSであり、
空燃比がリッチ側と判別されると、上記ステップS205か
らステップS206へ進み、リッチ/リーン切換判別フラグ
FLAGAがセットされているか否かを調べる。このリッチ
/リーン切換判別フラグFLAGAは、空燃比リーン側から
空燃比リッチ側への反転で1→0となり、空燃比リッチ
側から空燃比リーン側への反転で0→1となる。
【0040】従って、上記ステップS206で、FLAGA=1
のとき、空燃比フィードバック補正係数αは、比例積分
制御における比例成分によるプラス方向へのスキップを
経て積分成分による制御がなされ、空燃比がリッチとな
った状態であるので、上記ステップS206からステップS2
07へ進んで、空燃比フィードバック補正係数αを、FO
2センサ29aの出力電圧VAFとスライスレベルVSとの
関係で設定される比例成分Pによってマイナス方向へス
キップさせ(α←α−P)、ステップS209で、リッチ/
リーン切換判別フラグFLAGAをクリアして(FLAGA←
0)ルーチンを抜ける。
【0041】また、上記ステップS206でFLAGA=0、す
なわち、すでに空燃比フィードバック補正係数αに対し
てマイナス方向のスキップが実行されているときには、
上記ステップS206からステップS208へ分岐し、空燃比フ
ィードバック補正係数αを、FO2センサ29aの出力
電圧VAFとスライスレベルVSとの関係で設定される積
分成分Iだけ小さくし(α←α−I)、前述のステップ
S209を経てルーチンを抜ける。
【0042】一方、上記ステップS205で、VAF<VSの
とき、すなわち空燃比がリーン側と判別されると、上記
ステップS205からステップS210へ進み、リッチ/リーン
切換判別フラグFLAGAがクリアされているか否かを調べ
る。
【0043】そして、上記ステップS210で、FLAGA=
0、すなわち、空燃比フィードバック補正係数αが比例
成分によるマイナス方向へのスキップを経て積分成分に
より徐々に小さくされて空燃比がリーンになった状態の
とき、上記ステップS210からステップS211へ進み、FO
2センサ29aの出力に基づく比例成分Pによって空燃
比フィードバック補正係数αをプラス方向へスキップさ
せ(α←α+P)、ステップS213で、リッチ/リーン切
換判別フラグFLAGAをセットして(FLAGA←1)ルーチ
ンを抜ける。
【0044】また、上記ステップS210で、FLAGA=1、
すなわち、空燃比フィードバック補正係数αに対し比例
成分によるプラス方向のスキップが実行されているとき
には、上記ステップS210からステップS212へ分岐して空
燃比フィードバック補正係数αを、FO2センサ29a
の出力に基づく積分成分Iだけ増加させ(α←α+
I)、同様に、ステップS213でリッチ/リーン切換判別
フラグFLAGAをセットしてルーチンを抜ける。
【0045】以上のルーチンにより空燃比がフィードバ
ック制御される一方、図4〜図9に示す所定周期毎に実
行される空燃比学習ルーチンによって空燃比学習制御が
実施される。本実施例においては、学習域を3段階に細
分化したネスト方式の学習制御を採用し、学習速度及び
学習精度を向上させるようにしている。
【0046】すなわち、本実施例の学習制御は、図13
に示すように、エンジン回転数NE及びエンジン負荷を
示す基本燃料噴射パルス幅Tpによる運転領域に対し、
設定範囲を1つのエリアとするメインエリア、このメイ
ンエリアを大まかに分割したミドルエリア、このミドル
エリアをさらに細分化したディテールエリアの3つのエ
リア毎に学習を行うようになっており、初期状態から学
習をスタートすると、メインエリア→ミドルエリア→デ
ィテールエリアの順に学習が行われ、ディテールエリア
の学習値の平均値と目標値との間に設定値以上の差が生
じたとき、再度メインエリアから学習をやり直す、いわ
ゆ全体学習と部分学習とに分けて学習を行う方式となっ
ている。
【0047】各エリアの学習値は、バックアップRAM
44にストアされ、メインエリアに対しては、バックア
ップRAM44の所定アドレスに学習値(全体学習値)
がストアされ、ミドルエリアに対しては、例えば4×4
=16のミドルエリア学習値マップに学習値がストアさ
れる。また、ディテールエリアの学習値は、例えば、ミ
ドルエリアの1つの領域をさらに4×4の小領域に細分
化した16×16=256のディテールエリア学習値マ
ップにストアされる。
【0048】以下、空燃比学習ルーチンについて説明す
る。この空燃比学習ルーチンでは、まず、ステップS301
でF/B制御中か否かを調べ、F/B制御中でないとき
には、ステップS302以降へ進み、ステップS302,303,304
で、後述するリッチ/リーン切換り回数をカウントする
ためのカウント値C1,C2,C3をそれぞれクリアし
て(C1←0、C2←0、C3←0)ルーチンを抜け
る。
【0049】一方、上記ステップS301でF/B制御中と
判別したときには、上記ステップS301からステップS305
へ進んで、現在のエンジン回転数NE及び基本燃料噴射
パルス幅Tpを読出し、ステップS306で、エンジン回転
数NE及び基本燃料噴射パルス幅Tpが学習値マップの上
限値NEMAX,TpMAXと下限値NEMIN,TpMINとの間にある
か否か、すなわち学習開始条件が成立するか否かを調べ
る。
【0050】その結果、エンジン回転数NE及び基本燃
料噴射パルス幅Tpが学習値マップの上限値及び下限値
から外れているときには、前述のステップS302,S303,S3
04を経てルーチンを抜け、エンジン回転数NE及び基本
燃料噴射パルス幅Tpが学習値マップの下限値から上限
値の間(NEMIN≦NE≦NEMAX、且つ、TpMIN≦Tp≦T
pMAX)にあるとき、学習を開始すべく上記ステップS306
からステップS307へ進み、バックアップRAM44にス
トアされているメインエリア学習済みフラグFMAの値
(イニシャルセット値は0)を参照する。
【0051】上記メインエリア学習済みフラグFMAは、
メインエリアの学習が済んだとき1にセットされ、後述
するように、ディテールエリアの学習値の平均が設定範
囲を超えてメインエリアの学習値を書換える必要が生じ
たとき、0にクリアされる。そして、上記ステップS307
で、FMA=0のとき、ステップS308以降へ進んでメイン
エリアの全体学習を行い、FMA=1のとき、ステップS3
20以降へ進んでミドルエリアあるいはディテールエリア
の学習を行う。
【0052】まず、ステップS308以降のメインエリアの
学習について説明する。ステップS308では、FO2セン
サ29aの出力電圧VAFを読込んで、この出力電圧VAF
の所定時間T0内のリッチ/リーン切換りがあるか否
か、すなわち、空燃比がリッチ側からリーン側へ、ある
いは、リーン側からリッチ側へ反転したか否かを判別す
る。
【0053】その結果、所定時間T0内にFO2センサ2
9aの出力電圧VAFの反転がないときには上記ステップ
S308から前述のステップS302,S303,S304を経てルーチン
を抜け、一方、所定時間T0内にFO2センサ29aの出
力電圧VAFの反転があったときには、上記ステップS308
からステップS309へ進んで、カウント値C1をカウント
アップする(C1←C1+1)。
【0054】その後、ステップS311へ進み、上記カウン
ト値C1が設定値C1S(例えば3)以上となったか否か
を判別し、C1<C1Sのとき、前述のステップS303,S3
04を介してルーチンを抜け、C1≧C1Sのとき、すな
わち、エンジン回転数NE及び基本燃料噴射パルス幅Tp
による運転状態が略同一であり、且つ、このときFO2
センサ29aの出力電圧VAFの反転がC1S回以上あっ
たときには、定常状態と判定してステップS312で、カウ
ント値C1をクリアし(C1←0)、ステップS313へ進
む。
【0055】ステップS313では、FO2センサ29aの
出力電圧VAFがスライスレベルをC1S回横切った間の
空燃比フィードバック補正係数αの極大値αMAX及び極
小値αMIN(図12参照)の平均値と目標値(1.0)
との偏差Δαを算出し(Δα←(αMAX+αMIN)/2−
1.0)、ステップS314で、この偏差Δαに基づいてバ
ックアップRAM44の全体補正学習値K0を更新する
(K0←K0+M0×Δα;但し、K0のイニシャル値
は1.0、M0は学習値更新の比率を決定する定数)。
【0056】その後、ステップS315へ進んで全体学習値
K0が上限値K0MAXを越えているか否かを調べ、K0
>K0MAXのとき、ステップS316で全体学習値K0を上
限値K0MAXとして(K0←K0MAX)ステップS319へジ
ャンプし、メインエリア学習済みフラグFMAをセットし
て(FMA←1)ルーチンを抜ける。
【0057】一方、上記ステップS315でK0≦K0MAX
のときには、ステップS317へ進んで全体学習値K0が下
限値K0MINより小さいか否かを調べ、K0≧K0MINの
とき、前述のステップS319へジャンプし、K0<K0MI
Nのときには、ステップS318へ進んで全体学習値K0を
下限値K0MINとし(K0←K0MIN)、前述のステップ
S319を経てルーチンを抜ける。
【0058】次に、メインエリアの学習が済み、ステッ
プS307からステップS320以降へ進んでミドルエリア及び
ディテールエリアの学習を行う場合について説明する。
【0059】ステップS320では、現在のエンジン回転数
NEと基本燃料噴射パルス幅Tpとに基づいて現在の運転
状態に対応するミドルエリア学習値マップの領域NEW
MID(NE,Tp)を算出し、ステップS321で、ミドルエリア
の各領域毎に学習済みか否かを示す学習済みフラグ(0
で学習未、1で学習済み)を格納した学習済みフラグマ
ップを参照し、該当領域NEWMID(NE,Tp)の学習済み
フラグFMID(NE,Tp)の値により該当領域が学習済みか
否かを調べる。
【0060】そして、FMID(NE,Tp)=0であり、ミド
ルエリアの該当領域の学習が済んでいないときには、上
記ステップS321からステップS322以降へ進んでミドルエ
リアの学習を行い、FMID(NE,Tp)=1でミドルエリア
の該当領域の学習が済んでいるときには、上記ステップ
S321からステップS335以降へ進んでディテールエリアの
学習を行う。
【0061】ミドルエリアの学習では、ステップS322
で、今回の領域NEWMID(NE,Tp)が前回ルーチン実行
時に特定されたミドルエリアの領域OLDMID(NE,Tp)
と同一であるか否かを調べ、前回の領域OLDMID(NE,
Tp)と今回の領域NEWMID(NE,Tp)とが異なるとき、
すなわち、初めてミドルエリアの該当領域を学習すると
き、あるいは、前回ルーチン実行時の領域と今回ルーチ
ン実行時の領域とが同一でなく定常運転状態でないとき
には、上記ステップS322からステップS323へ分岐して、
今回の領域NEWMID(NE,Tp)を旧データOLDMID(N
E,Tp)として(OLDMID(NE,Tp)←NEWMID(NE,T
p))RAM43にストアし、前述のステップS302,S303,
S304を経てルーチンを抜ける。
【0062】一方、上記ステップS322で前回の領域OL
DMID(NE,Tp)と今回の領域NEWMID(NE,Tp)とが同
一のときには、上記ステップS322からステップS324へ進
んでFO2 センサ29aの出力電圧VAFを読込み、この
出力電圧VAFの所定時間T0内のリッチ/リーン切換り
があるか否かを調べる。
【0063】その結果、所定時間T0内にFO2センサ2
9aの出力電圧VAFの反転がないときには上記ステップ
S324から前述のステップS302,S303,S304を経てルーチン
を抜け、所定時間T0内にFO2センサ29aの出力電圧
VAFの反転があったときには、上記ステップS324からス
テップS325へ進んで、カウント値C2をカウントアップ
する(C2←C2+1)。
【0064】その後、上記ステップS325からステップS3
26へ進み、上記カウント値C2が設定値C2S(例えば
3)以上となったか否かを判別し、C2<C2Sのと
き、定常状態でないと判別してルーチンを抜け、C2≧
C2Sのとき、すなわち、エンジン回転数NE及び基本燃
料噴射パルス幅Tpによる運転状態が略同一であり、且
つ、このときFO2センサ29aの出力電圧VAFの反転
がC2S回以上あったときには、定常状態と判定してス
テップS327でカウント値C2をクリアし(C2←0)、
ステップS328へ進む。
【0065】ステップS328では、FO2センサ29aの
出力電圧VAFがスライスレベルをC2S回横切った間の
空燃比フィードバック補正係数αの極大値αMAX及び極
小値αMINの平均値と目標値(1.0)との偏差Δαを
算出し(Δα←(αMAX+αMIN)/2−1.0)、ステ
ップS329で、この偏差Δαに基づいてミドルエリア学習
値マップの該当領域の学習値K1を更新する(K1←K
1+M1×Δα;但し、K1のイニシャル値は1.0、
M1は学習値更新の比率を決定する定数)。
【0066】その後、ステップS330へ進んで学習値K1
が上限値K1MAXを越えているか否かを調べ、K1>K
1MAXのとき、ステップS331で学習値K1を上限値K1M
AXとして(K1←K1MAX)ステップS334へジャンプ
し、ミドルエリアの該当領域に対応する学習済みフラグ
FMID(NE,Tp)をセットして(FMID(NE,Tp)←1)ル
ーチンを抜ける。
【0067】一方、上記ステップS330でK1≦K1MAX
のときには、ステップS332へ進んで学習値K1が下限値
K1MINより小さいか否かを調べ、K1≧K1MINのと
き、前述のステップS334へジャンプし、K1<K1MIN
のときには、ステップS333へ進んで学習値K1を下限値
K1MINとし(K1←K1MIN)、前述のステップS334を
経てルーチンを抜ける。
【0068】次に、ディテールエリアの学習について説
明する。このディテールエリアの学習では、ステップS3
35で現在のエンジン回転数NEと基本燃料噴射パルス幅
Tpとに基づいて現在の運転状態に対応するディテール
エリア学習値マップの領域NEWDET(NE,Tp)を算出
し、ステップS336で、今回の領域NEWDET(NE,Tp)が
前回ルーチン実行時に特定されたディテールエリアの領
域OLDDET(NE,Tp)と同一であるか否かを調べる。
【0069】そして、前回の領域OLDDET(NE,Tp)と
今回の領域NEWDET(NE,Tp)とが異なるとき、すなわ
ち、初めてディテールエリアの該当領域を学習すると
き、あるいは、前回ルーチン実行時の領域と今回ルーチ
ン実行時の領域とが同一でなく定常運転状態でないとき
には、上記ステップS336からステップS337へ分岐して、
今回の領域NEWDET(NE,Tp)を旧データOLDDET(N
E,Tp)として(OLDDET(NE,Tp)←NEWDET(NE,T
p))RAM43にストアし、前述のステップS302,S303,
S304を経てルーチンを抜ける。
【0070】一方、上記ステップS336で前回の領域OL
DDET(NE,Tp)と今回の領域NEWDET(NE,Tp)とが同
一のときには、上記ステップS336からステップS338へ進
んでFO2 センサ29aの出力電圧VAFを読込み、この
出力電圧VAFの所定時間T0内のリッチ/リーン切換り
があるか否かを調べる。
【0071】その結果、所定時間T0内にFO2センサ2
9aの出力電圧VAFの反転がないときには上記ステップ
S338から前述のステップS302,S303,S304を経てルーチン
を抜け、所定時間T0内にFO2センサ29aの出力電圧
VAFの反転があったときには、上記ステップS338からス
テップS339へ進んで、カウント値C3をカウントアップ
する(C3←C3+1)。
【0072】その後、上記ステップS339からステップS3
40へ進み、上記カウント値C3が設定値C3S(例えば
3)以上となったか否かを判別し、C3<C3Sのと
き、定常状態でないと判別してルーチンを抜け、C3≧
C3Sのとき、すなわち、エンジン回転数NE及び基本燃
料噴射パルス幅Tpによる運転状態が略同一であり、且
つ、このときFO2センサ29aの出力電圧VAFの反転
がC3S回以上あったときには、定常状態と判定してス
テップS341でカウント値C3をクリアし(C3←0)、
ステップS342へ進む。
【0073】ステップS342では、FO2センサ29aの
出力電圧VAFがスライスレベルをC3S回横切った間の
空燃比フィードバック補正係数αの極大値αMAX及び極
小値αMINの平均値と目標値(1.0)との偏差Δαを
算出し(Δα←(αMAX+αMIN)/2−1.0)、ステ
ップS343で、この偏差Δαに基づいてディテールエリア
学習値マップの該当領域の学習値K2を更新する(K2
←K2+M2×Δα;但し、K2のイニシャル値は1.
0、M2は学習値更新の比率を決定する定数)。
【0074】その後、ステップS344へ進んで学習値K2
が上限値K2MAXを越えているか否かを調べ、K2>K
2MAXのとき、ステップS345で学習値K2を上限値K2M
AXとして(K2←K2MAX)ステップS348へジャンプ
し、K2≦K2MAXのときには、ステップS346で学習値
K2が下限値K2MINより小さいか否かを調べる。
【0075】そして、K2≧K2MINのとき、上記ステ
ップS346からステップS348へジャンプし、K2<K2MI
Nのときには、上記ステップS346からステップS347へ進
んで学習値K2を下限値K2MINとし(K2←K2MI
N)、ステップS348で、ディテールエリアの平均学習値
K2AVEを算出し、ステップS349へ進む。
【0076】ステップS349では、上記ステップS348で算
出したディテールエリアの平均学習値K2AVEと目標値
1.0との偏差ΔK2AVEを算出し(ΔK2AVE←K2AV
E−1.0)、ステップS350,S351で、この偏差ΔK2AV
Eが設定範囲内にあるか否かを調べる。すなわち、ステ
ップS350で偏差ΔK2AVEが上限値ΔK2MAX以上か否か
を調べ、ΔK2AVE<ΔK2MAXのとき、さらに、ステッ
プS351へ進んで偏差ΔK2AVEが下限値ΔK2MIN以下か
否かを調べる。
【0077】そして、ΔK2MIN<ΔK2AVE<ΔK2MA
Xで偏差ΔK2AVEが設定範囲内にあるときには、ステッ
プS351からルーチンを抜け、ΔK2AVE≧ΔK2MAXのと
き、あるいは、ΔK2AVE≦ΔK2MINのときには、ステ
ップS350あるいはステップS351からステップS352へ分岐
し、メインエリアから学習を再開させるべくメインエリ
ア学習済みフラグFMAをクリアし(FMA←0)、ステッ
プS353で全てのミドルエリアの該当領域の学習済みフラ
グFMID(NE,Tp)をクリアして(ALL.FMID(NE,T
p)←0)ルーチンを抜ける。
【0078】以上の空燃比学習ルーチンに対し、所定周
期毎に実行される図1の燃料システム診断ルーチンにつ
いて説明する。
【0079】この診断ルーチンでは、ステップS401で、
バックアップRAM44の所定アドレスから全体学習値
K0を読出し、ステップS402で、エンジン回転数NE、
基本燃料噴射パルス幅Tpに基づき、バックアップRA
M44のミドルエリア学習値マップ、ディテールエリア
学習値マップを参照して、それぞれのエリアの学習値K
1,K2を読出す。
【0080】次いで、ステップS403へ進み、各学習値K
0,K1,K2から学習補正係数KBLRCを設定すると
(KBLRC←K0+K1+K2−1.0)、ステップS404
で、この学習補正係数KBLRCが上限値KBLRCMAXを越え
ているか否かを調べ、KBLRC>KBLRCMAXであり、上限
値を超えているときには、ステップS405へ分岐して学習
補正係数KBLRCを上限値KBLRCMAXで制限し(KBLRC←
KBLRCMAX)、ステップS406で、ディテールエリア学習
値マップ内で学習値K2が上限値K2MAXに張り付いて
いる領域の数ΣALEA(NE,Tp)MAXを求めて診断値C
DETとし(CDET←ΣALEA(NE,Tp)MAX)、ステップ
S410へ進む。
【0081】また、上記ステップS404で、学習補正係数
KBLRCが上限値KBLRCMAXを越えていないとき(KBLRC
≦KBLRCMAX)には、さらに、ステップS407で、学習補
正係数KBLRCが下限値KBLRCMINより小さくなっている
か否かを調べ、KBLRCMIN≦KBLRC(≦KBLRCMAX)のと
き、ルーチンを抜け、KBLRCMIN>KBLRCのときには、
ステップS408で、学習補正係数KBLRCを下限値KBLRCMI
Nで制限し(KBLRC←KBLRCMIN)、ステップS409で、デ
ィテールエリア学習値マップ内で学習値K2が下限値K
2MINに張り付いている領域の数ΣALEA(NE,Tp)MI
Nを求めて診断値CDETとし(CDET←ΣALEA(NE,T
p)MIN)、ステップS410へ進む。
【0082】ステップS410では、上記ステップS406ある
いは上記ステップS409での診断値CDETを設定値CSETと
比較し、CDET≦CSETのとき、すなわち、ディテールエ
リアの学習値K2が上限値に張り付いている領域の数あ
るいは下限値に張り付いている領域の数が設定値以下の
ときには、ルーチンを抜け、CDET>CSETであり、ディ
テールエリアの学習値K2が上限値に張り付いている領
域の数あるいは下限値に張り付いている領域の数が設定
値を越えているときには、ステップS411で、燃料システ
ムが異常であると判断し、該当するトラブルデータをバ
ックアップRAM44にストアするとともに、MILラ
ンプ53を点灯あるいは点滅して警告を発し、ルーチン
を抜ける。
【0083】すなわち、例えば吸入空気量センサ8が劣
化して正確な吸入空気量の計測値が得られなくなると、
基本燃料噴射量(基本燃料噴射パルス幅)が正常時の値
からずれ、空燃比フィードバック補正係数αが目標値か
らずれてしまい、ディテールエリア学習値テーブルにお
いて、学習値K2が上限値あるいは下限値に張り付く領
域が多くなる。そして、吸入空気量センサ8の劣化がさ
らに進行すると、学習値K2が上限値あるいは下限値に
張り付く領域の数が設定値を越えることになり、そのと
き燃料システム異常と診断することにより、一時的な空
燃比変化に影響されることなく燃料システムの異常を確
実に検出でき、誤診断を防止することができるのであ
る。
【0084】
【発明の効果】以上説明したように本発明によれば、空
燃比センサの出力による空燃比フィードバック補正量の
学習値を記憶する空燃比学習マップにおいて、学習値が
上限値あるいは下限値に張り付いている領域の数が設定
値を越えたとき、燃料システムが異常であると判定する
ため、一時的な空燃比変化に影響されることなく燃料シ
ステムの異常を確実に検出でき、誤診断を防止すること
ができる等優れた効果が得られる。
【図面の簡単な説明】
【図1】燃料システム診断ルーチンのフローチャート
【図2】燃料噴射量設定ルーチンのフローチャート
【図3】空燃比フィードバック補正係数設定ルーチンの
フローチャート
【図4】空燃比学習ルーチンのフローチャート(その
1)
【図5】空燃比学習ルーチンのフローチャート(その
2)
【図6】空燃比学習ルーチンのフローチャート(その
3)
【図7】空燃比学習ルーチンのフローチャート(その
4)
【図8】空燃比学習ルーチンのフローチャート(その
5)
【図9】空燃比学習ルーチンのフローチャート(その
6)
【図10】エンジン制御系の概略構成図
【図11】電子制御系の回路構成図
【図12】O2センサ出力と空燃比フィードバック補正
係数との関係を示す説明図
【図13】空燃比学習値マップの説明図
【符号の説明】
1 … エンジン 29a … FO2センサ(空燃比センサ) K2 … 学習値 K2MAX … 上限値 K2MIN … 下限値 CDET … 診断値(上限値あるいは下限値
に張り付いている領域の数) CSET … 設定値

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 空燃比センサの出力による空燃比フィー
    ドバック補正量の学習値を記憶する空燃比学習マップに
    基づいて、燃料システムの異常を自己診断するエンジン
    の燃料システムの故障診断方法であって、 上記空燃比学習マップにおいて、学習値が上限値あるい
    は下限値に張り付いている領域の数が設定値を越えたと
    き、上記燃料システムが異常であると判定することを特
    徴とするエンジンの燃料システムの故障診断方法。
JP12664495A 1995-05-25 1995-05-25 エンジンの燃料システムの故障診断方法 Pending JPH08319867A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP12664495A JPH08319867A (ja) 1995-05-25 1995-05-25 エンジンの燃料システムの故障診断方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP12664495A JPH08319867A (ja) 1995-05-25 1995-05-25 エンジンの燃料システムの故障診断方法

Publications (1)

Publication Number Publication Date
JPH08319867A true JPH08319867A (ja) 1996-12-03

Family

ID=14940312

Family Applications (1)

Application Number Title Priority Date Filing Date
JP12664495A Pending JPH08319867A (ja) 1995-05-25 1995-05-25 エンジンの燃料システムの故障診断方法

Country Status (1)

Country Link
JP (1) JPH08319867A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008034496A1 (de) * 2006-09-20 2008-03-27 Bayerische Motoren Werke Aktiengesellschaft Verfahren zur diagnose eines kraftstoffversorgungssystems

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008034496A1 (de) * 2006-09-20 2008-03-27 Bayerische Motoren Werke Aktiengesellschaft Verfahren zur diagnose eines kraftstoffversorgungssystems
US7836870B2 (en) 2006-09-20 2010-11-23 Bayerische Motoren Werke Aktiengesellschaft Method for controlling an internal combustion engine of a motor vehicle

Similar Documents

Publication Publication Date Title
JP2666229B2 (ja) 内燃エンジンの異常診断装置
JP3627787B2 (ja) 内燃機関の燃料供給系異常診断装置
JPH04238241A (ja) 内燃機関の自己診断装置
JP3449170B2 (ja) 内燃機関の失火検出装置
US5299550A (en) Detecting device and method of an abnormality in an air-fuel ratio control system
JP2003193900A (ja) 車両の異常診断装置
JPH08326516A (ja) 可変バルブタイミング装置の診断装置
JP3560263B2 (ja) エンジンの触媒下流酸素センサの劣化診断装置
JPH0712016A (ja) 内燃エンジンの蒸発燃料処理装置
JP3060745B2 (ja) エンジンの空燃比制御装置
JP2583893B2 (ja) エンジンの空燃比学習制御装置
JP2010174872A (ja) 内燃機関の二次空気供給システムの異常診断装置
US5337556A (en) Detecting device and method for engine catalyst deterioration
JP2000328930A (ja) エンジンの触媒劣化診断装置
JP2006177371A (ja) 内燃機関の制御装置
JP2738956B2 (ja) パージコントロールシステムの故障診断装置
JPH08319867A (ja) エンジンの燃料システムの故障診断方法
JPH09125945A (ja) エンジンの二次空気供給系の故障診断装置
JPH08319868A (ja) エンジンの燃料システムの故障診断方法
JP2001329894A (ja) 内燃機関の燃料系異常診断装置
JP2004278542A (ja) 内燃機関の燃料供給系異常診断装置
JPH102245A (ja) 空燃比フィードバック制御系の異常診断装置
JPH08246925A (ja) エンジンの空燃比制御方法
JP2864699B2 (ja) 内燃機関の触媒劣化診断装置
JP4037485B2 (ja) エンジンの触媒劣化診断装置

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040727