JP3001923B2 - エンジンの空燃比制御装置 - Google Patents
エンジンの空燃比制御装置Info
- Publication number
- JP3001923B2 JP3001923B2 JP2074805A JP7480590A JP3001923B2 JP 3001923 B2 JP3001923 B2 JP 3001923B2 JP 2074805 A JP2074805 A JP 2074805A JP 7480590 A JP7480590 A JP 7480590A JP 3001923 B2 JP3001923 B2 JP 3001923B2
- Authority
- JP
- Japan
- Prior art keywords
- value
- air
- fuel ratio
- determination
- sensor
- 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.)
- Expired - Lifetime
Links
Landscapes
- Electrical Control Of Air Or Fuel Supplied To Internal-Combustion Engine (AREA)
- Combined Controls Of Internal Combustion Engines (AREA)
Description
【発明の詳細な説明】 (産業上の利用分野) 本発明は、エンジンに供給する混合気の実空燃比を空
燃比センサで検出し、該検出空燃比を本来の目標空燃比
に収束させるようにフィードバック制御するようにした
エンジンの空燃比制御装置に関し、特に前期空燃比セン
サを不活性状態の判定機能を備えたエンジンの空燃比制
御装置に関するものである。
燃比センサで検出し、該検出空燃比を本来の目標空燃比
に収束させるようにフィードバック制御するようにした
エンジンの空燃比制御装置に関し、特に前期空燃比セン
サを不活性状態の判定機能を備えたエンジンの空燃比制
御装置に関するものである。
(従来の技術) 最近の電子制御式エンジンでは、例えば排気ガスの酸
素濃度をパラメータとした次のようなエンジンの空燃比
の制御技術が実用化されている。
素濃度をパラメータとした次のようなエンジンの空燃比
の制御技術が実用化されている。
すなわち、例えば第4図に示すようにエンジン2の吸
気系4に設けられたフューエルインジェクタ6から噴射
供給される燃料の量は例えばマイクロコンピュータより
なるエンジンコントローラ(ECU)8によって制御され
る。そして、良く知られているように該エンジンコント
ローラ8は、エアーフローメーター10で検知した吸入空
気量Qと回転数センサ12で検知したエンジン回転数Neと
に基づいて燃料供給量の基本値を演算するとともに、さ
らに暖機増量補正、始動後増量補正、加速増量補正、高
負荷増量補正、吸気温補正、それに本発明の対象である
空燃比のフィードバック補正などの各種の補正を上記エ
ンジン2の具体的な運転状態に応じて適宜実行し、最終
的な燃料供給量を決定するようになっている。
気系4に設けられたフューエルインジェクタ6から噴射
供給される燃料の量は例えばマイクロコンピュータより
なるエンジンコントローラ(ECU)8によって制御され
る。そして、良く知られているように該エンジンコント
ローラ8は、エアーフローメーター10で検知した吸入空
気量Qと回転数センサ12で検知したエンジン回転数Neと
に基づいて燃料供給量の基本値を演算するとともに、さ
らに暖機増量補正、始動後増量補正、加速増量補正、高
負荷増量補正、吸気温補正、それに本発明の対象である
空燃比のフィードバック補正などの各種の補正を上記エ
ンジン2の具体的な運転状態に応じて適宜実行し、最終
的な燃料供給量を決定するようになっている。
上記空燃比のフィードバック補正は、エンジン回転数
Neおよび負荷(スロットル開度)が所定の範囲(空燃比
フィードバックゾーン)内にある等、その実行条件が成
立している場合に、例えば図示エンジンの排気系14に設
けられたO2センサ(空燃比センサ)16の出力に基づいて
行われるようになっている。
Neおよび負荷(スロットル開度)が所定の範囲(空燃比
フィードバックゾーン)内にある等、その実行条件が成
立している場合に、例えば図示エンジンの排気系14に設
けられたO2センサ(空燃比センサ)16の出力に基づいて
行われるようになっている。
そして、同O2センサ16は、その特性より実際の空燃比
A/Fが理論空燃比(A/F=14.7)より濃いと高い起電力を
出力し、薄いと低い起電力を出力する(反転する)。ま
た、その起電力は特に理論空燃比(A/F=14.7)の近傍
で大きく変化する。エンジンコントローラ8は、該O2セ
ンサ16の出力Vと上記理論空燃比に対応するある一定の
基準電圧値αとを比較し、上記Vが基準電圧値αよりも
高い場合にはリッチと判定して供給燃料量を減少させる
一方、逆に上記Vが基準電圧値αよりも低い場合にはリ
ーンと判断して供給燃料量を増量させ、それによって実
空燃比を理論空燃比(A/F=14.7)付近に保つように制
御する。
A/Fが理論空燃比(A/F=14.7)より濃いと高い起電力を
出力し、薄いと低い起電力を出力する(反転する)。ま
た、その起電力は特に理論空燃比(A/F=14.7)の近傍
で大きく変化する。エンジンコントローラ8は、該O2セ
ンサ16の出力Vと上記理論空燃比に対応するある一定の
基準電圧値αとを比較し、上記Vが基準電圧値αよりも
高い場合にはリッチと判定して供給燃料量を減少させる
一方、逆に上記Vが基準電圧値αよりも低い場合にはリ
ーンと判断して供給燃料量を増量させ、それによって実
空燃比を理論空燃比(A/F=14.7)付近に保つように制
御する。
また、必要に応じエンジン2、エアフローメータ10、
フューエルインジェクタ6等の各製品の特性のバラツキ
及び経年変化などによって生じる基本空燃比のバラツキ
を補正するために、上記エンジンコントローラ8に前記
フィードバック補正に付帯して次のような学習制御を行
わせるようにしたものもある。
フューエルインジェクタ6等の各製品の特性のバラツキ
及び経年変化などによって生じる基本空燃比のバラツキ
を補正するために、上記エンジンコントローラ8に前記
フィードバック補正に付帯して次のような学習制御を行
わせるようにしたものもある。
前記フィードバック制御を実行している場合に、先ず
前記フィードバック補正量の一定時間毎の平均値をサン
プリングしてその値をメモリに逐次更新しながら記憶す
る。このメモリに記憶した値をフィードバック補正学習
値と呼ぶ。エンジンコントローラ8は実際の検出値に加
え、この学習値をパラメータにして燃料供給量の演算を
行う。これは一種のフィードフォワード制御であり、こ
れによって空燃比の制御制度がより一層向上する。ま
た、前記フィードバック制御が実行されていないときで
もメモリに保持された学習値に基づいて前記学習制御を
実行することで、空燃比をより高精度に理論空燃比に近
付けることができる。
前記フィードバック補正量の一定時間毎の平均値をサン
プリングしてその値をメモリに逐次更新しながら記憶す
る。このメモリに記憶した値をフィードバック補正学習
値と呼ぶ。エンジンコントローラ8は実際の検出値に加
え、この学習値をパラメータにして燃料供給量の演算を
行う。これは一種のフィードフォワード制御であり、こ
れによって空燃比の制御制度がより一層向上する。ま
た、前記フィードバック制御が実行されていないときで
もメモリに保持された学習値に基づいて前記学習制御を
実行することで、空燃比をより高精度に理論空燃比に近
付けることができる。
さらに、上記エンジンコントローラ8は前記フィード
バック補正に関連して次のような異常判定の処理も行
う。すなわち、空燃比の制御が正しく行われている場
合、上記O2センサ16の出力Vは上記基準電圧値αの近傍
を中心にして上下に振幅する波形を描く(第5図破線参
照)。これに対し、上記O2センサ16の出力が高レベル側
あるいは低レベル側に膠着して長時間変化しないのは、
例えば上記O2センサ16に供給される排気ガスの温度が低
くて活性状態に至っていない場合か、又はそれ自体に故
障が生じた場合、もしくは上記空燃比制御系自体に何等
かの故障が生じた場合と考えられる。したがって、O2セ
ンサ16の出力値Vが所定時間(例えば10秒)以上経過し
ても上記基準電圧値αを越えて上下に反転しない場合、
エンジンコントローラ8は上記O2センサ16が正常に作動
しておらずフィードバック補正制御系に何等かの異常事
態が発生しているものとみなして空燃比のフィードバッ
ク補正を停止するように構成されている。
バック補正に関連して次のような異常判定の処理も行
う。すなわち、空燃比の制御が正しく行われている場
合、上記O2センサ16の出力Vは上記基準電圧値αの近傍
を中心にして上下に振幅する波形を描く(第5図破線参
照)。これに対し、上記O2センサ16の出力が高レベル側
あるいは低レベル側に膠着して長時間変化しないのは、
例えば上記O2センサ16に供給される排気ガスの温度が低
くて活性状態に至っていない場合か、又はそれ自体に故
障が生じた場合、もしくは上記空燃比制御系自体に何等
かの故障が生じた場合と考えられる。したがって、O2セ
ンサ16の出力値Vが所定時間(例えば10秒)以上経過し
ても上記基準電圧値αを越えて上下に反転しない場合、
エンジンコントローラ8は上記O2センサ16が正常に作動
しておらずフィードバック補正制御系に何等かの異常事
態が発生しているものとみなして空燃比のフィードバッ
ク補正を停止するように構成されている。
一方、以上の構成に加え、上記O2センサ16の活性状態
を判定するための電圧値を上記基準電圧値αと相違させ
てエンジンに適合した値に設定することにより、同O2セ
ンサ16の活性状態および不活性状態を各々的確に判定
し、それによって速やかにフィードバック補正の起動お
よび停止を行い得るようにした技術が例えば、特公昭58
−24610号公報等で既に公知になっている。
を判定するための電圧値を上記基準電圧値αと相違させ
てエンジンに適合した値に設定することにより、同O2セ
ンサ16の活性状態および不活性状態を各々的確に判定
し、それによって速やかにフィードバック補正の起動お
よび停止を行い得るようにした技術が例えば、特公昭58
−24610号公報等で既に公知になっている。
(発明が解決しようとする課題) しかし、上記のようにO2センサ16の出力電圧値Vaによ
って当該O2センサ16の不活性状態を判定しようとする場
合、上記従来の構成のように何等エンジンの外部負荷の
作動状態を考慮することなく、活性、不活性を判定する
ようにしたのでは次のような理由により誤判定を招いて
しまう問題がある。
って当該O2センサ16の不活性状態を判定しようとする場
合、上記従来の構成のように何等エンジンの外部負荷の
作動状態を考慮することなく、活性、不活性を判定する
ようにしたのでは次のような理由により誤判定を招いて
しまう問題がある。
すなわち、一般に自動車のエンジンでは、例えば空気
調和機用のエアコンプレッサやパワーステアリング用の
油圧ポンプ等の外部負荷が作動したときにはそれに対応
してオープンループ系の制御により吸入空気量を増量
(負荷補正)するようになっているので、その結果、例
えば第6図、第7図の鎖線に示すように一時的に空燃比
はリーン方向に急激に変化する。従って、これを考慮す
る事なく、そのまま不活性判定を行うと実際には空燃比
センサが活性化していないのに活性化しているものと判
定してしまう恐れが生じる問題がある。
調和機用のエアコンプレッサやパワーステアリング用の
油圧ポンプ等の外部負荷が作動したときにはそれに対応
してオープンループ系の制御により吸入空気量を増量
(負荷補正)するようになっているので、その結果、例
えば第6図、第7図の鎖線に示すように一時的に空燃比
はリーン方向に急激に変化する。従って、これを考慮す
る事なく、そのまま不活性判定を行うと実際には空燃比
センサが活性化していないのに活性化しているものと判
定してしまう恐れが生じる問題がある。
(課題を解決するための手段) 本発明は、上記の問題を解決することを目的としてな
されたもので、エンジン混合気の空燃比を検出する空燃
比センサを備え、該空燃比センサの出力に基づいて当該
空燃比センサの不活性判定を行うようにしてなるエンジ
ンにおいて、エンジン外部負荷の作動状態を検出する外
部負荷検出手段を設け、エンジン外部負荷の作動開始初
期から所定の期間内は上記空燃比センサの不活性判定を
禁止するようにしたことを特徴とするものである。
されたもので、エンジン混合気の空燃比を検出する空燃
比センサを備え、該空燃比センサの出力に基づいて当該
空燃比センサの不活性判定を行うようにしてなるエンジ
ンにおいて、エンジン外部負荷の作動状態を検出する外
部負荷検出手段を設け、エンジン外部負荷の作動開始初
期から所定の期間内は上記空燃比センサの不活性判定を
禁止するようにしたことを特徴とするものである。
そして、この場合、上記不活性判定は、例えば空燃比
センサ出力の大きさに基く量に対応してなされるように
なっている。
センサ出力の大きさに基く量に対応してなされるように
なっている。
(作 用) 上記本発明のエンジンの空燃比制御装置の構成では、
エンジン外部負荷の作動状態を検出する外部負荷検出手
段が設けられており、該外部負荷検出手段によってエン
ジン外部負荷の作動状態が検出されたときには当該外部
負荷の作動開始時(ON時)から所定の期間内は、例えば
上述した空燃比センサ出力の大きさに基く量に対応して
なされる空燃比センサの不活性判定を禁止するような作
用をするようになっている。
エンジン外部負荷の作動状態を検出する外部負荷検出手
段が設けられており、該外部負荷検出手段によってエン
ジン外部負荷の作動状態が検出されたときには当該外部
負荷の作動開始時(ON時)から所定の期間内は、例えば
上述した空燃比センサ出力の大きさに基く量に対応して
なされる空燃比センサの不活性判定を禁止するような作
用をするようになっている。
(発明の効果) 従って、上記本発明のエンジンの空燃比制御装置によ
ると、エンジン外部負荷作動初期の負荷補正による吸気
量増大に伴う過渡的な空燃比のリーン変動の影響を受け
ることなく適正な空燃比センサの不活性判定を行うこと
ができるようになる。その結果、空燃比制御システムの
制御精度および信頼性も向上する。
ると、エンジン外部負荷作動初期の負荷補正による吸気
量増大に伴う過渡的な空燃比のリーン変動の影響を受け
ることなく適正な空燃比センサの不活性判定を行うこと
ができるようになる。その結果、空燃比制御システムの
制御精度および信頼性も向上する。
また、その場合において、上記空燃比センサの不活性
判定が、当該空燃比センサの出力の大きさに基く量に対
応してなされるようになっている時は、エンジンの外部
負荷が作動した時にも誤判定を招くことなく、より正確
に不活性判定できるようになる。
判定が、当該空燃比センサの出力の大きさに基く量に対
応してなされるようになっている時は、エンジンの外部
負荷が作動した時にも誤判定を招くことなく、より正確
に不活性判定できるようになる。
(実施例) 以下、本発明の実施例を図面第1図〜第7図を参照し
て詳細に説明する。
て詳細に説明する。
ところで、以下に述べる本発明の実施例自体の構成で
は、上述した本発明が直接解決対象とするエンジン外部
負荷投入時のO2センサ活性誤判定防止の第1の機能に加
え、更に、空燃比センサの経時劣化に起因する活性・不
活性の誤判定防止の第2の機能をも有して構成されてい
る。
は、上述した本発明が直接解決対象とするエンジン外部
負荷投入時のO2センサ活性誤判定防止の第1の機能に加
え、更に、空燃比センサの経時劣化に起因する活性・不
活性の誤判定防止の第2の機能をも有して構成されてい
る。
すなわち、今例えば上記O2センサ16の出力電圧値Vに
よって当該O2センサ16の不活性状態等の空燃比のフィー
ドバック補正制御系の異常事態を検出しようとする場合
に、上述した従来技術のようにO2センサ16の活性及び不
活性状態の判定基準をある一定点の基準電圧値αに設定
し、その基準電圧値αを越えてO2センサ出力値Vが所定
時間経過しても反転しないことをもってその異常事態の
判定を下すようにすると、その基準電圧値をどこに設定
するか、さらに上記所定時間をどの程度に設定するか
が、空燃比のフィードバック補正制御を長期に亘って安
定的に且つ信頼性高く維持するうえで難しい。
よって当該O2センサ16の不活性状態等の空燃比のフィー
ドバック補正制御系の異常事態を検出しようとする場合
に、上述した従来技術のようにO2センサ16の活性及び不
活性状態の判定基準をある一定点の基準電圧値αに設定
し、その基準電圧値αを越えてO2センサ出力値Vが所定
時間経過しても反転しないことをもってその異常事態の
判定を下すようにすると、その基準電圧値をどこに設定
するか、さらに上記所定時間をどの程度に設定するか
が、空燃比のフィードバック補正制御を長期に亘って安
定的に且つ信頼性高く維持するうえで難しい。
すなわち、上記基準電圧値αを低く設定すると、O2セ
ンサ16が実際には不活性状態であるにもかかわらず、微
小な出力レベルのノイズによっても上記基準電圧値を越
えてしまうことがあり、こうした際に誤判定を招き、こ
れが本来の異常事態の判定を遅らせる要因となる。ま
た、逆に基準電圧値αを高く設定すると活性状態への以
降の判定時期が遅れ、迅速にフィードバック補正制御を
起動し得なくなるという不具合が生じる。
ンサ16が実際には不活性状態であるにもかかわらず、微
小な出力レベルのノイズによっても上記基準電圧値を越
えてしまうことがあり、こうした際に誤判定を招き、こ
れが本来の異常事態の判定を遅らせる要因となる。ま
た、逆に基準電圧値αを高く設定すると活性状態への以
降の判定時期が遅れ、迅速にフィードバック補正制御を
起動し得なくなるという不具合が生じる。
一方、上記所定時間を短く設定すると、先に述べたよ
うな学習制御を行わせている場合に不具合を生じる事が
ある。つまり、例えばバッテリーが外される等してその
学習補正値がクリヤされた場合には、その学習補正値が
新たな妥当な値にリセットされるまでの間、O2センサ16
からの出力値Vはその上限値Vmaxあるいは下限値Vminに
へばりつくことがある。従って、こうした際にフィード
バック補正が停止されてしまい、このため学習補正値の
更新も不可能になって以後のフィードバック補正制御お
よび学習制御が起動し得なくなる事態に陥る虞れがあ
る。また、逆に上記所定時間を長く設定すると、O2セン
サ16の不活性および故障などの空燃比制御系の異常事態
の判定が遅れてしまう。
うな学習制御を行わせている場合に不具合を生じる事が
ある。つまり、例えばバッテリーが外される等してその
学習補正値がクリヤされた場合には、その学習補正値が
新たな妥当な値にリセットされるまでの間、O2センサ16
からの出力値Vはその上限値Vmaxあるいは下限値Vminに
へばりつくことがある。従って、こうした際にフィード
バック補正が停止されてしまい、このため学習補正値の
更新も不可能になって以後のフィードバック補正制御お
よび学習制御が起動し得なくなる事態に陥る虞れがあ
る。また、逆に上記所定時間を長く設定すると、O2セン
サ16の不活性および故障などの空燃比制御系の異常事態
の判定が遅れてしまう。
本発明実施例の上記第2の誤判定防止機能は、このよ
うな事情に鑑みて構成されているものである。
うな事情に鑑みて構成されているものである。
そこで、説明の都合上、先ず最初に該第2の誤判定防
止機能の方から説明して行くことにする。
止機能の方から説明して行くことにする。
本発明の実施例に係るエンジンの空燃比制御装置のハ
ード部の制御システム自体の基本構成は前述した第4図
のものと共通するものであるために、その詳細な説明は
省略する。
ード部の制御システム自体の基本構成は前述した第4図
のものと共通するものであるために、その詳細な説明は
省略する。
本実施例の構成と先に述べた従来技術の構成とが相違
する点は以下の通りである。
する点は以下の通りである。
先ず従来技術の構成では、空燃比センサであるO2セン
サ16の活性及び不活性の判定を当該O2センサ16の出力値
Vaから検出するにあたって、その判定基準値αを理論空
燃比(A/F=14.7)に対応するO2センサ16の出力値の近
傍に設定し、O2センサ16の出力値Vaがその判定基準値α
を越えて所定時間内に反転するか否かで判定していた。
これに対し本実施例の構成では、O2センサ16の活性及び
不活性の判定を先ず第2図〜第3図のフローチャートに
示すように、O2センサ16の出力値Vaの最大値Vamaxと最
小値Vaminとの偏差によって行うようにすると共に、更
に該判定動作をエンジン外部負荷の投入後所定の時間は
禁止するように構成している。
サ16の活性及び不活性の判定を当該O2センサ16の出力値
Vaから検出するにあたって、その判定基準値αを理論空
燃比(A/F=14.7)に対応するO2センサ16の出力値の近
傍に設定し、O2センサ16の出力値Vaがその判定基準値α
を越えて所定時間内に反転するか否かで判定していた。
これに対し本実施例の構成では、O2センサ16の活性及び
不活性の判定を先ず第2図〜第3図のフローチャートに
示すように、O2センサ16の出力値Vaの最大値Vamaxと最
小値Vaminとの偏差によって行うようにすると共に、更
に該判定動作をエンジン外部負荷の投入後所定の時間は
禁止するように構成している。
すなわち、先ず、第2図のフローチャートに示すよう
に、制御系が起動されると、ステップS10で制御系各部
の初期設定が行われ、ここでO2センサ16の活性及び不活
性を判定するための判定最大出力値Vmaxと同最小出力値
Vminとが便宜的に初期設定されるとともに、その活性及
び不活性の判断を実質的に下すための判定用偏差基準値
β、さらに空燃比のリッチーリーン状態を判定するため
の判定基準値α等が設定される(第5図参照)。
に、制御系が起動されると、ステップS10で制御系各部
の初期設定が行われ、ここでO2センサ16の活性及び不活
性を判定するための判定最大出力値Vmaxと同最小出力値
Vminとが便宜的に初期設定されるとともに、その活性及
び不活性の判断を実質的に下すための判定用偏差基準値
β、さらに空燃比のリッチーリーン状態を判定するため
の判定基準値α等が設定される(第5図参照)。
次にステップS20で、実際のO2センサ16の出力値Vaが
読み込まれた後、ステップS30で、その検出空燃比のリ
ッチーリーン状態の判定を上記出力値Vaが上記判定基準
値α以上であるか否かで判断する。
読み込まれた後、ステップS30で、その検出空燃比のリ
ッチーリーン状態の判定を上記出力値Vaが上記判定基準
値α以上であるか否かで判断する。
そして、このステップS30での判定がYES(リッチ)で
あれば、ステップS40〜ステップS80に移行して該リッチ
時における3種類のフィードバック補正値を選択するた
めの各種判定用フラグA〜Cを立てる。一方、上記ステ
ップS30での判定がNO(リーン)であれば、ステップS90
〜ステップS130に移行して該リーン時における3種類の
フィードバック補正値を選択するための各種判定用フラ
グA〜Cを立てるか又は降ろす。
あれば、ステップS40〜ステップS80に移行して該リッチ
時における3種類のフィードバック補正値を選択するた
めの各種判定用フラグA〜Cを立てる。一方、上記ステ
ップS30での判定がNO(リーン)であれば、ステップS90
〜ステップS130に移行して該リーン時における3種類の
フィードバック補正値を選択するための各種判定用フラ
グA〜Cを立てるか又は降ろす。
具体的には、上記リッチ側のフローでは、先ずステッ
プS40で前回リッチであったかどうかを、上述のフラグ
Aが立っているか否かで判断し、これがNOで前回がリー
ンであったならばステップS80にジャンプし、ここで次
回の判定のために前回がリッチであったということを示
すための判定用フラグAを立てた後(つまりA=1)、
後述する判定用最大値Vmaxおよび最小値Vminの更新用ル
ーチン(ステップS140〜ステップS170)に移行する。
プS40で前回リッチであったかどうかを、上述のフラグ
Aが立っているか否かで判断し、これがNOで前回がリー
ンであったならばステップS80にジャンプし、ここで次
回の判定のために前回がリッチであったということを示
すための判定用フラグAを立てた後(つまりA=1)、
後述する判定用最大値Vmaxおよび最小値Vminの更新用ル
ーチン(ステップS140〜ステップS170)に移行する。
また、上記ステップS40での判定がYESで前回もリッチ
であったならば、次のステップS50に進み、ここで更に
前々回のリッチーリーン状態をフラグBが降りている
(B=0)か否かで判断する。そして、このステップS5
0での判定がYESで前々回がリーンであったならば、リー
ン状態からリッチ状態に反転して2度続けてリッチ状態
になっているので、この反転はノイズ成分ではなくリッ
チーリーン状態が確かに反転したものと見なして次のス
テップS60に進み、ここで後述する空燃比のフィードバ
ック補正係数Cfbの演算ルーチン(ステップS180〜ステ
ップS310)において先ず比例制御(P制御)を選択させ
るべく、その比例及び積分制御の選択をするための指標
となるフラグCを立てた後(C=1)に次のステップS7
0に進む。そして、このステップS70では、次回のために
前々回がリッチであったということを示すフラグBを立
て(B=1)、その後上述した次のステップS80に進
む。
であったならば、次のステップS50に進み、ここで更に
前々回のリッチーリーン状態をフラグBが降りている
(B=0)か否かで判断する。そして、このステップS5
0での判定がYESで前々回がリーンであったならば、リー
ン状態からリッチ状態に反転して2度続けてリッチ状態
になっているので、この反転はノイズ成分ではなくリッ
チーリーン状態が確かに反転したものと見なして次のス
テップS60に進み、ここで後述する空燃比のフィードバ
ック補正係数Cfbの演算ルーチン(ステップS180〜ステ
ップS310)において先ず比例制御(P制御)を選択させ
るべく、その比例及び積分制御の選択をするための指標
となるフラグCを立てた後(C=1)に次のステップS7
0に進む。そして、このステップS70では、次回のために
前々回がリッチであったということを示すフラグBを立
て(B=1)、その後上述した次のステップS80に進
む。
一方、上記ステップS50での判定がNOで前々回もリッ
チであれば、定常的にリッチ状態が続いているものと見
なして後述する空燃比のフィードバック補正係数Cfbの
演算ルーチン(ステップS180〜ステップS380)において
積分制御(I制御)を選択させるべく、上記ステップS6
0を通らずに、その次のステップS70にジャンプする。な
お、後述するように上記ステップS60を通らない場合、
上記フラグCは降ろされている(C=0)。
チであれば、定常的にリッチ状態が続いているものと見
なして後述する空燃比のフィードバック補正係数Cfbの
演算ルーチン(ステップS180〜ステップS380)において
積分制御(I制御)を選択させるべく、上記ステップS6
0を通らずに、その次のステップS70にジャンプする。な
お、後述するように上記ステップS60を通らない場合、
上記フラグCは降ろされている(C=0)。
他方、リーン側のフローにおいても同様に、ステップ
S90で更に前回リーンであったかどうかを上述のフラグ
Aが降りている(A=0)か否かで判断し、これがNOで
前回リッチであればステップS10にジャンプして、ここ
で次回のために前回がリーンであることを示すべくその
判定用フラグAを降ろした後(A=0)、後述する判定
用最大値Vmaxおよび最小値Vminの更新用ルーチン(ステ
ップS140〜ステップS170)に移行する。
S90で更に前回リーンであったかどうかを上述のフラグ
Aが降りている(A=0)か否かで判断し、これがNOで
前回リッチであればステップS10にジャンプして、ここ
で次回のために前回がリーンであることを示すべくその
判定用フラグAを降ろした後(A=0)、後述する判定
用最大値Vmaxおよび最小値Vminの更新用ルーチン(ステ
ップS140〜ステップS170)に移行する。
また、上記ステップS90の判定がYESで前回もリーンで
あれば、次のステップS100に進み、ここでさらに前々回
はリッチであったかどうかを上記判定用フラグBが立っ
ている(B=1)か否かで判断する。そして、この判定
がYESで前々回がリッチであったならば、リッチ状態か
らリーン状態に反転して2度続けてリーン状態になって
いるので、この反転はノイズ成分ではなく、リッチから
リーン状態が確かに反転したものとみなして次のステッ
プS110に進み、ここで後述する空燃比のフィードバック
補正係数Cfbの演算ルーチン(ステップS180〜ステップS
380)において比例制御(P制御)を選択させるべく、
その比例及び積分制御の選択をするための指標となるフ
ラグCを立て(C=1)た後、次のステップS120に進
む。そして、このステップS120では次回のために前々回
がリーンであったことを示すべく、その判定用フラグB
を降ろし(B=0)、爾後上述した次のステップS130に
進む。
あれば、次のステップS100に進み、ここでさらに前々回
はリッチであったかどうかを上記判定用フラグBが立っ
ている(B=1)か否かで判断する。そして、この判定
がYESで前々回がリッチであったならば、リッチ状態か
らリーン状態に反転して2度続けてリーン状態になって
いるので、この反転はノイズ成分ではなく、リッチから
リーン状態が確かに反転したものとみなして次のステッ
プS110に進み、ここで後述する空燃比のフィードバック
補正係数Cfbの演算ルーチン(ステップS180〜ステップS
380)において比例制御(P制御)を選択させるべく、
その比例及び積分制御の選択をするための指標となるフ
ラグCを立て(C=1)た後、次のステップS120に進
む。そして、このステップS120では次回のために前々回
がリーンであったことを示すべく、その判定用フラグB
を降ろし(B=0)、爾後上述した次のステップS130に
進む。
一方、上記ステップS100での判定がNOで前々回もリー
ンであれば、定常時にリーン状態が続いているものと見
なして後述する空燃比のフィードバック補正係数Cfbの
演算ルーチン(ステップS180〜ステップS380)において
積分制御を選択させるべく、上記ステップS110を通らず
に、次のステップS120にジャンプする。なお、前述のリ
ッチ側のフローと同様にステップS110を通らない場合、
上記フラグCは降ろされている(C=0)。
ンであれば、定常時にリーン状態が続いているものと見
なして後述する空燃比のフィードバック補正係数Cfbの
演算ルーチン(ステップS180〜ステップS380)において
積分制御を選択させるべく、上記ステップS110を通らず
に、次のステップS120にジャンプする。なお、前述のリ
ッチ側のフローと同様にステップS110を通らない場合、
上記フラグCは降ろされている(C=0)。
判定用最大値Vmaxおよび最小値Vminの更新用ルーチン
(ステップS140〜ステップS170)に移行して来ると、ま
ず前記ステップS30で読み込んだO2センサ出力値Vaが判
定用最大値Vmaxよりも大きいか否かをステップS140で判
断する。そして、この判定がYESで今回読み込んだO2セ
ンサ出力値Vaの方が予め設定されている判定用最大値V
maxよりも大きければ次のステップS150に進み、その判
定用最大値Vmaxを今回読み込んだO2センサ出力値Vaに等
しく更新した後、後述するフィードバック補正係数Cfb
の演算ルーチン(ステップS180〜ステップS380)に移行
する。
(ステップS140〜ステップS170)に移行して来ると、ま
ず前記ステップS30で読み込んだO2センサ出力値Vaが判
定用最大値Vmaxよりも大きいか否かをステップS140で判
断する。そして、この判定がYESで今回読み込んだO2セ
ンサ出力値Vaの方が予め設定されている判定用最大値V
maxよりも大きければ次のステップS150に進み、その判
定用最大値Vmaxを今回読み込んだO2センサ出力値Vaに等
しく更新した後、後述するフィードバック補正係数Cfb
の演算ルーチン(ステップS180〜ステップS380)に移行
する。
また、上記ステップS140での判定がNOで今回読み込ん
だO2センサ出力値Vaの方が予め設定されている判定用最
大値Vmaxよりも小さければステップS160に移行し、今回
読み込んだO2センサ出力値Vaが予め設定されている判定
用最小値Vminよりも小さいか否かが判断される。そし
て、このステップS160での判定がYESで今回読み込んだO
2センサ出力値Vaの方が小さいと次のステップS170に進
み、ここで判定用最小出力値Vminを今回読み込んだO2セ
ンサ出力値Vaに等しく更新した後、後述するフィードバ
ック補正係数Cfbの演算ルーチン(ステップS180〜ステ
ップS380)に移行する。また、上記ステップS160での判
定がNOで今回読み込んだO2センサ出力値Vaの方が大きい
と、後述するフィードバック補正係数Cfbの演算ルーチ
ン(ステップS180〜ステップS380)に移行する。
だO2センサ出力値Vaの方が予め設定されている判定用最
大値Vmaxよりも小さければステップS160に移行し、今回
読み込んだO2センサ出力値Vaが予め設定されている判定
用最小値Vminよりも小さいか否かが判断される。そし
て、このステップS160での判定がYESで今回読み込んだO
2センサ出力値Vaの方が小さいと次のステップS170に進
み、ここで判定用最小出力値Vminを今回読み込んだO2セ
ンサ出力値Vaに等しく更新した後、後述するフィードバ
ック補正係数Cfbの演算ルーチン(ステップS180〜ステ
ップS380)に移行する。また、上記ステップS160での判
定がNOで今回読み込んだO2センサ出力値Vaの方が大きい
と、後述するフィードバック補正係数Cfbの演算ルーチ
ン(ステップS180〜ステップS380)に移行する。
そして、このフィードバック補正係数Cfbの演算(ス
テップS180〜ステップS310)に移行して来ると、第3図
に示すように、まずステップS180でエンジンの運転状態
が空燃比のフィードバック制御の実行条件を満足してい
るか否かが判断され、この判定がNOでフィードバック制
御実行条件が成立していなければステップS200に移行し
てフィードバック補正係数Cfbを0に設定した後、後述
する判定用最大値Vmaxおよび最小値Vminの漸減ないし漸
増ルーチン(ステップS320〜ステップS370)のステップ
S360にジャンプする。
テップS180〜ステップS310)に移行して来ると、第3図
に示すように、まずステップS180でエンジンの運転状態
が空燃比のフィードバック制御の実行条件を満足してい
るか否かが判断され、この判定がNOでフィードバック制
御実行条件が成立していなければステップS200に移行し
てフィードバック補正係数Cfbを0に設定した後、後述
する判定用最大値Vmaxおよび最小値Vminの漸減ないし漸
増ルーチン(ステップS320〜ステップS370)のステップ
S360にジャンプする。
一方、上記ステップS180での判定がYESで空燃比のフ
ィードバック制御の実行条件が成立していれば次のステ
ップS190に進み、ここでさらにO2センサ16aが活性化し
ていて正常作動しているか否かの判断を、判定用最大値
VmaxとさらにVminとの偏差Vmax−Vminが判定用偏差基準
値β以上になっているか否かで判定する。そして、この
判定がNOでO2センサ16aが正常作動していなければ、上
記ステップS200に移行する。また、上記判定がYESでO2
センサが正常作動していれば、ステップS210に移行す
る。このステップS210では、比例制御(P制御)をすべ
きか積分制御(I制御)をすべきかの判断を前述のフラ
グCが立っている(C=1)か否かで判断する。
ィードバック制御の実行条件が成立していれば次のステ
ップS190に進み、ここでさらにO2センサ16aが活性化し
ていて正常作動しているか否かの判断を、判定用最大値
VmaxとさらにVminとの偏差Vmax−Vminが判定用偏差基準
値β以上になっているか否かで判定する。そして、この
判定がNOでO2センサ16aが正常作動していなければ、上
記ステップS200に移行する。また、上記判定がYESでO2
センサが正常作動していれば、ステップS210に移行す
る。このステップS210では、比例制御(P制御)をすべ
きか積分制御(I制御)をすべきかの判断を前述のフラ
グCが立っている(C=1)か否かで判断する。
そして、上記ステップS210での判定がNOでC=0であ
ると、積分制御側ルーチン(ステップS220〜ステップS2
40)のステップS220に進み、ここで判定用フラグBが立
っている(B=1)か否かで空燃比がリッチであるか否
かを判断する。そして、この判定がYESでリッチであれ
ばステップS230に進んで、ここで前回のフィードバック
補正係数Cfbから所定の積分値kI1を減算してさらにリー
ン側に補正して今回のフィードバック補正係数Cfbを演
算した後、後述する判定用最大値Vmaxおよび最小値Vmin
の漸減ないし漸増ルーチン(ステップS320〜ステップS3
70)に移行する。また、上記ステップS220での判定がNO
でリーンであればステップS240に進んで、ここで前回の
フィードバック補正係数Cfbに所定の積分値kI2を加算し
てさらにリッチ側に補正して今回のフィードバック補正
係数Cfbを演算した後、後述する判定用最大値Vmaxおよ
び最小値Vminの漸減ないし漸増ルーチン(ステップS320
〜ステップS370)に移行する。なお、この積分制御ルー
チン(ステップS220〜ステップ240)に入り込んでくる
のでは、空燃比が定常的にリッチ状態もしくはリーン状
態になっている場合か、あるいはリッチーリーン状態が
反転した直後の一回目の場合であり、この反転直後のフ
ローではその反転がノイズによるものであるとみなされ
て、前回のリッチーリーン状態における積分制御が継続
されることになる。
ると、積分制御側ルーチン(ステップS220〜ステップS2
40)のステップS220に進み、ここで判定用フラグBが立
っている(B=1)か否かで空燃比がリッチであるか否
かを判断する。そして、この判定がYESでリッチであれ
ばステップS230に進んで、ここで前回のフィードバック
補正係数Cfbから所定の積分値kI1を減算してさらにリー
ン側に補正して今回のフィードバック補正係数Cfbを演
算した後、後述する判定用最大値Vmaxおよび最小値Vmin
の漸減ないし漸増ルーチン(ステップS320〜ステップS3
70)に移行する。また、上記ステップS220での判定がNO
でリーンであればステップS240に進んで、ここで前回の
フィードバック補正係数Cfbに所定の積分値kI2を加算し
てさらにリッチ側に補正して今回のフィードバック補正
係数Cfbを演算した後、後述する判定用最大値Vmaxおよ
び最小値Vminの漸減ないし漸増ルーチン(ステップS320
〜ステップS370)に移行する。なお、この積分制御ルー
チン(ステップS220〜ステップ240)に入り込んでくる
のでは、空燃比が定常的にリッチ状態もしくはリーン状
態になっている場合か、あるいはリッチーリーン状態が
反転した直後の一回目の場合であり、この反転直後のフ
ローではその反転がノイズによるものであるとみなされ
て、前回のリッチーリーン状態における積分制御が継続
されることになる。
一方、上記ステップS210での判定がYESで、C=1で
あると比例制御(P制御)側ルーチン(ステップS250〜
ステップS310)のステップS250に移行し、ここで判定用
フラグBが立っている(B=1)か否かで空燃比がリッ
チであるか否かを判断する。そして、この判定がYESで
リッチであればステップS260に進み、さらにエンジンが
アイドル状態で運転されているか否かをが判断される。
そして、この判定がYESでアイドル状態であればステッ
プS270に進み、ここで前回のフィードバック補正係数Cf
bから所定の比例値kp1を減算してリーン側に補正して今
回のフィードバック補正係数Cfbを演算した後、後述す
る判定用最大値Vmaxおよび最小値Vminの漸減ないし漸増
ルーチン(ステップS320〜ステップS370)に移行する。
また、上記ステップS260での判定がNOでアイドル状態で
なければステップS280に移行し、ここで前回のフィード
バック補正係数Cfbから所定の比例値kp2(kp2>kp1)を
減算してリーン側に補正して今回のフィードバック補正
係数Cfbを演算した後、後述する判定用最大値Vmaxおよ
び最小値Vminの漸減ないし漸増ルーチン(ステップS320
〜ステップS380)に移行する。
あると比例制御(P制御)側ルーチン(ステップS250〜
ステップS310)のステップS250に移行し、ここで判定用
フラグBが立っている(B=1)か否かで空燃比がリッ
チであるか否かを判断する。そして、この判定がYESで
リッチであればステップS260に進み、さらにエンジンが
アイドル状態で運転されているか否かをが判断される。
そして、この判定がYESでアイドル状態であればステッ
プS270に進み、ここで前回のフィードバック補正係数Cf
bから所定の比例値kp1を減算してリーン側に補正して今
回のフィードバック補正係数Cfbを演算した後、後述す
る判定用最大値Vmaxおよび最小値Vminの漸減ないし漸増
ルーチン(ステップS320〜ステップS370)に移行する。
また、上記ステップS260での判定がNOでアイドル状態で
なければステップS280に移行し、ここで前回のフィード
バック補正係数Cfbから所定の比例値kp2(kp2>kp1)を
減算してリーン側に補正して今回のフィードバック補正
係数Cfbを演算した後、後述する判定用最大値Vmaxおよ
び最小値Vminの漸減ないし漸増ルーチン(ステップS320
〜ステップS380)に移行する。
また、上記ステップS250での判定がNOでリーンであれ
ばステップS290に進み、ここでさらにエンジンがアイド
ル状態で運転されているか否かが判断される。そして、
この判定がYESでアイドル状態であればステップS300に
進み、ここで前回のフィードバック補正係数Cfbに所定
の比例値kp3を加算してリッチ側に補正して今回のフィ
ードバック補正係数Cfbを演算した後、後述する判定用
最大値Vmaxおよび最小値Vminの漸減ないし漸増ルーチン
(ステップS320〜ステップS370)に移行する。また、上
記ステップS290での判定がNOでアイドル状態でなければ
ステップS310に移行し、ここで前回のフィードバック補
正係数Cfbから所定の比例値kp4(kp4>kp3)を加算して
リッチ側に補正して今回のフィードバック補正係数Cfb
を演算した後、後述する判定用最大値Vmaxおよび最小値
Vminの漸減ないし漸増ルーチン(ステップS320〜ステッ
プS370)に移行する。判定用最大値Vmaxと最小値Vminの
漸減ないし漸増ルーチン(ステップS320〜ステップS37
0)では、まずステップS320でタイマーがカウントダウ
ン(T=T−1)される。次にステップS330でタイマー
の値が0になったか否かが判断される。そしてその判定
がYESであればステップS340、S350に順次進み、ここで
判定用最大値Vmaxと判定用最小値Vminとがそれぞれ所定
地kずつ増減されて更新される(Vmax=Vmax−k,Vmin=
Vmin+k)。そして、次のステップS360で上記タイマー
に新値が代入された後(T=T)、ステップS370でフラ
グCが降ろされ、その後燃料供給制御のメインルーチン
に対して演算したフィードバック補正係数Cfbを出力し
た後、第2図に示すようにステップS30に戻される。メ
インルーチンではここで演算された基本噴射量が、上述
のようにして演算された空燃比のフィードバック補正係
数Cfbに基づいて補正された後、燃料の供給が実行され
る。
ばステップS290に進み、ここでさらにエンジンがアイド
ル状態で運転されているか否かが判断される。そして、
この判定がYESでアイドル状態であればステップS300に
進み、ここで前回のフィードバック補正係数Cfbに所定
の比例値kp3を加算してリッチ側に補正して今回のフィ
ードバック補正係数Cfbを演算した後、後述する判定用
最大値Vmaxおよび最小値Vminの漸減ないし漸増ルーチン
(ステップS320〜ステップS370)に移行する。また、上
記ステップS290での判定がNOでアイドル状態でなければ
ステップS310に移行し、ここで前回のフィードバック補
正係数Cfbから所定の比例値kp4(kp4>kp3)を加算して
リッチ側に補正して今回のフィードバック補正係数Cfb
を演算した後、後述する判定用最大値Vmaxおよび最小値
Vminの漸減ないし漸増ルーチン(ステップS320〜ステッ
プS370)に移行する。判定用最大値Vmaxと最小値Vminの
漸減ないし漸増ルーチン(ステップS320〜ステップS37
0)では、まずステップS320でタイマーがカウントダウ
ン(T=T−1)される。次にステップS330でタイマー
の値が0になったか否かが判断される。そしてその判定
がYESであればステップS340、S350に順次進み、ここで
判定用最大値Vmaxと判定用最小値Vminとがそれぞれ所定
地kずつ増減されて更新される(Vmax=Vmax−k,Vmin=
Vmin+k)。そして、次のステップS360で上記タイマー
に新値が代入された後(T=T)、ステップS370でフラ
グCが降ろされ、その後燃料供給制御のメインルーチン
に対して演算したフィードバック補正係数Cfbを出力し
た後、第2図に示すようにステップS30に戻される。メ
インルーチンではここで演算された基本噴射量が、上述
のようにして演算された空燃比のフィードバック補正係
数Cfbに基づいて補正された後、燃料の供給が実行され
る。
なお、上記タイマーには新値として例えば5が代入さ
れ、判定用最大値Vmaxと最小値Vminはそれぞれ上述の制
御が5回繰り返される毎に1度ずつそれらの値が各々漸
減若しくは漸増されることになる。また、フィードバッ
ク補正係数Cfbの演算ルーチンにおいてそのフィードバ
ック補正係数Cfbを0にして空燃比のフィードバック制
御を停止させるステップS200に入り込んで来た制御フロ
ーは、以後ステップS360に移行されてくるようになって
おり、この場合には判定用最大値Vmaxと最小値Vminは漸
減又は漸増されることはなく従前の値に保持されたまま
になるとともにタイマーの値には絶えず新値が代入され
ることになる。また、上述の制御フローは十分短いサイ
クルで繰り返される。
れ、判定用最大値Vmaxと最小値Vminはそれぞれ上述の制
御が5回繰り返される毎に1度ずつそれらの値が各々漸
減若しくは漸増されることになる。また、フィードバッ
ク補正係数Cfbの演算ルーチンにおいてそのフィードバ
ック補正係数Cfbを0にして空燃比のフィードバック制
御を停止させるステップS200に入り込んで来た制御フロ
ーは、以後ステップS360に移行されてくるようになって
おり、この場合には判定用最大値Vmaxと最小値Vminは漸
減又は漸増されることはなく従前の値に保持されたまま
になるとともにタイマーの値には絶えず新値が代入され
ることになる。また、上述の制御フローは十分短いサイ
クルで繰り返される。
上述のようにしてなる本実施例にあっては、第5図に
示すように、設定された判定用最大値Vmaxと最小値Vmin
は、時間の経過とともにそれぞれ漸減ないし漸増され
て、それらの偏差Vmax−Vmin、すなわちリッチ/リーン
の変化幅は狭められていくが、リッチーリーン状態の判
定用基準電圧値αをほぼ中心にして上下に振幅するO2セ
ンサ出力値Vaに応じて暫時更新されることにより、その
幅は適宜再度拡大されることになる。そして、O2センサ
16aの経時劣化によりO2センサ出力値Va自体の振れ幅が
小さくなってくると、これに応じてその判定用最大値V
maxと最小値Vminとの偏差Vmax−Vmin(変化幅)は縮小
してくる。また、O2センサ16aの温度が低くて不活性状
態にあるとき、もしくはO2センサ出力値Vaがその最大値
Vamaxまたは最小値Vaminにへばりついたときにも、上記
判定用最大値Vmaxと最小値Vminとの偏差Vmax−Vmin(変
化幅)は縮小してくる。
示すように、設定された判定用最大値Vmaxと最小値Vmin
は、時間の経過とともにそれぞれ漸減ないし漸増され
て、それらの偏差Vmax−Vmin、すなわちリッチ/リーン
の変化幅は狭められていくが、リッチーリーン状態の判
定用基準電圧値αをほぼ中心にして上下に振幅するO2セ
ンサ出力値Vaに応じて暫時更新されることにより、その
幅は適宜再度拡大されることになる。そして、O2センサ
16aの経時劣化によりO2センサ出力値Va自体の振れ幅が
小さくなってくると、これに応じてその判定用最大値V
maxと最小値Vminとの偏差Vmax−Vmin(変化幅)は縮小
してくる。また、O2センサ16aの温度が低くて不活性状
態にあるとき、もしくはO2センサ出力値Vaがその最大値
Vamaxまたは最小値Vaminにへばりついたときにも、上記
判定用最大値Vmaxと最小値Vminとの偏差Vmax−Vmin(変
化幅)は縮小してくる。
従って、判定用最大値Vmaxと最小値Vminとの偏差Vmax
−Vmin(変化幅)がある基準値β以下にまで狭められる
ことをもって、そのO2センサ16a自体の故障又は不活性
状態等の空燃比制御系の異常事態を検出し得ることにな
る。
−Vmin(変化幅)がある基準値β以下にまで狭められる
ことをもって、そのO2センサ16a自体の故障又は不活性
状態等の空燃比制御系の異常事態を検出し得ることにな
る。
また、従来はO2センサ16の活性−不活性の判定をある
一定の固定された基準電圧値に基づいて判断していたの
に対し、この実施例では判定用最大値Vmaxと最小値Vmin
との偏差がある判定用偏差基準値β以下にまで狭められ
ることをもって判断するようにして入るので、O2センサ
16aが不活性状態にあるときに比較的小さな出力レベル
のノイズが発生しても、これを排除して活性状態になっ
たと誤判断を下す虞れを可及的に防止し得、O2センサ16
の活性および不活性の判定をより的確に下して、空燃比
のフィードバック制御の起動停止を精度良く迅速に行え
るようになる。
一定の固定された基準電圧値に基づいて判断していたの
に対し、この実施例では判定用最大値Vmaxと最小値Vmin
との偏差がある判定用偏差基準値β以下にまで狭められ
ることをもって判断するようにして入るので、O2センサ
16aが不活性状態にあるときに比較的小さな出力レベル
のノイズが発生しても、これを排除して活性状態になっ
たと誤判断を下す虞れを可及的に防止し得、O2センサ16
の活性および不活性の判定をより的確に下して、空燃比
のフィードバック制御の起動停止を精度良く迅速に行え
るようになる。
また、さらに、学習制御を採用したものにあっては、
その学習補正値がクリヤされた場合にO2センサ出力値Va
がその最大出力値Vamaxもしくは最小出力値Vaminにへば
りついても、その最大出力値Vamaxもしくは最小出力値V
aminと不活性状態時のO2センサ出力値Vaとの偏差が十分
に大きければ、あるいはそのへばりついた最大出力値Va
maxもしくは最小出力値Vaminと初期設定時の判定用最大
値Vmaxと最小値Vminとの偏差が十分に大きければ、この
へばりつきに起因してフィードバック補正が停止される
までの時間を十分に長く確保し得、もってフィードバッ
ク補正と学習補正とが起動できなくなる事態に陥ること
を可及的に防止できるようになる。
その学習補正値がクリヤされた場合にO2センサ出力値Va
がその最大出力値Vamaxもしくは最小出力値Vaminにへば
りついても、その最大出力値Vamaxもしくは最小出力値V
aminと不活性状態時のO2センサ出力値Vaとの偏差が十分
に大きければ、あるいはそのへばりついた最大出力値Va
maxもしくは最小出力値Vaminと初期設定時の判定用最大
値Vmaxと最小値Vminとの偏差が十分に大きければ、この
へばりつきに起因してフィードバック補正が停止される
までの時間を十分に長く確保し得、もってフィードバッ
ク補正と学習補正とが起動できなくなる事態に陥ること
を可及的に防止できるようになる。
ところが、上述のような構成によっても、例えば第6
図に示すように、エアコン等エンジンの外部負荷がONに
なると、それに応じて負荷補正により吸入空気量が増量
されるので上記O2センサ16の出力Vaは過渡的にリーン方
向に大きく反転し、上述のようにして設定される最小値
Vminを越してしまう。その結果、上述の構成のままでは
実際にはO2センサ16が不活性状態であるにもかかわらず
活性状態にあると判定してしまう懸念がある。
図に示すように、エアコン等エンジンの外部負荷がONに
なると、それに応じて負荷補正により吸入空気量が増量
されるので上記O2センサ16の出力Vaは過渡的にリーン方
向に大きく反転し、上述のようにして設定される最小値
Vminを越してしまう。その結果、上述の構成のままでは
実際にはO2センサ16が不活性状態であるにもかかわらず
活性状態にあると判定してしまう懸念がある。
そこで、本実施例では上述した第2図、第3図の基本
制御に加えてエンジン外部負荷投入に対応して例えば第
1図のフローチャートに示す不活性判定禁止制御(上記
第1の誤判定防止機能)が採用されるようになってい
る。
制御に加えてエンジン外部負荷投入に対応して例えば第
1図のフローチャートに示す不活性判定禁止制御(上記
第1の誤判定防止機能)が採用されるようになってい
る。
次に第1図に示す不活性判定禁止制御を含む上記O2セ
ンサ16の活性・不活性判定制御のフローチャートについ
て詳細に説明する。
ンサ16の活性・不活性判定制御のフローチャートについ
て詳細に説明する。
なお、以下の説明では上記第2図および第3図の制御
との識別を容易にするために、上記O2センサ16の実際の
出力値VaをVn(n周期のもの)と、また判定用の最大値
Vmax、最小値Vminを各々VMAX、VMINと表わすことにす
る。
との識別を容易にするために、上記O2センサ16の実際の
出力値VaをVn(n周期のもの)と、また判定用の最大値
Vmax、最小値Vminを各々VMAX、VMINと表わすことにす
る。
先ずステップS1で、現在のエンジン回転数Neが所定の
活成・不活性判定基準回転数Ns以上であるか否か(エン
ジンの始動完了か否か)を判定し、YESと判定された場
合にはステップS2に進んで先ず上記O2センサの活性・不
活性判定用最大値(ガード値)VMAXとVMINを各々VMAX=
0,VMIN=0に初期セットする。
活成・不活性判定基準回転数Ns以上であるか否か(エン
ジンの始動完了か否か)を判定し、YESと判定された場
合にはステップS2に進んで先ず上記O2センサの活性・不
活性判定用最大値(ガード値)VMAXとVMINを各々VMAX=
0,VMIN=0に初期セットする。
続いて、ステップS3で実際に同O2センサの出力Vnを読
み込み、ステップS4で該Vnがリッチ・リーン判定用のス
ライスレベル(Vs=0.55V、A/F=14.7±a)以上である
か否かを判定し、YESとなった時(所定レベル以上変化
した時)に初めて一旦O2センサ活性と判定する。
み込み、ステップS4で該Vnがリッチ・リーン判定用のス
ライスレベル(Vs=0.55V、A/F=14.7±a)以上である
か否かを判定し、YESとなった時(所定レベル以上変化
した時)に初めて一旦O2センサ活性と判定する。
その後、さらにステップS6に進み、再び上記O2センサ
の実際の出力Vnとエアコン等エンジンの外部負荷ERとを
読み込み、その上で今度はステップS7に進みΔV(上記
第3図のKに該当)だけ漸減(更新)した最大判定値
(VMAX−ΔV)と実際のVnとの比較を行う。
の実際の出力Vnとエアコン等エンジンの外部負荷ERとを
読み込み、その上で今度はステップS7に進みΔV(上記
第3図のKに該当)だけ漸減(更新)した最大判定値
(VMAX−ΔV)と実際のVnとの比較を行う。
そして、その結果、実際のO2センサ出力Vnが当該更新
された新な最大判定値(VMAX−ΔV)以下のYESの場合
(実際の出力も同ガード値内に低下している場合)には
更にステップS8で上記最大判定値VMAXの値を最小判定値
VMINに所定の漸増値ΔVを加えたものに変更した上で、
再度該増大値VMIN+ΔVに対して実際のO2センサ出力Vn
が大きいか否かをステップS10で判定する。
された新な最大判定値(VMAX−ΔV)以下のYESの場合
(実際の出力も同ガード値内に低下している場合)には
更にステップS8で上記最大判定値VMAXの値を最小判定値
VMINに所定の漸増値ΔVを加えたものに変更した上で、
再度該増大値VMIN+ΔVに対して実際のO2センサ出力Vn
が大きいか否かをステップS10で判定する。
他方、上記ステップS7で上記漸減値VMAX−ΔVよりも
実際のO2センサ出力Vnの方が大きいNOの場合にはステッ
プS9で上記ガード用の最大判定値VMAXをVMAX=Vn(実際
の値)に設定した上で上述のステップS10の判定に進
む。
実際のO2センサ出力Vnの方が大きいNOの場合にはステッ
プS9で上記ガード用の最大判定値VMAXをVMAX=Vn(実際
の値)に設定した上で上述のステップS10の判定に進
む。
そして、ステップS10の判定結果がYES、つまり実際の
O2センサ出力がΔV漸増した最小判定値VMIN+ΔV以上
の場合には、続くステップS11で最小判定値VMINそのも
のをVMAX=VMAX+ΔVに漸増更新する。他方、そうでな
いNOの場合にはステップS12に進み最小判定値VMINをV
MIN=Vn(実際の値)に設定する。
O2センサ出力がΔV漸増した最小判定値VMIN+ΔV以上
の場合には、続くステップS11で最小判定値VMINそのも
のをVMAX=VMAX+ΔVに漸増更新する。他方、そうでな
いNOの場合にはステップS12に進み最小判定値VMINをV
MIN=Vn(実際の値)に設定する。
更に、続くステップS13では上記のようにして更新さ
れた最大判定値VMAXが上記スライスレベルVs(第5図、
第6図のαに該当)以上となっているか否かを判定し、
YESの場合には更にステップS14で空燃比のフィードバッ
ク制御条件(低中負荷、かつ所定回数域)が成立してい
るか否かを判定した上で上記更新された最大判定値VMAX
と最小判定値VMINとの差VMAX−VMIN(変化幅)がある不
活性判定値幅よりも更に大であるか否かを判定(ステッ
プS15)し、YESとなるとO2センサは活性化していると判
定(ステップS16)して、不活性判定を行う時間を設定
した不活性判定カウンタの設定値を0にセットする。
れた最大判定値VMAXが上記スライスレベルVs(第5図、
第6図のαに該当)以上となっているか否かを判定し、
YESの場合には更にステップS14で空燃比のフィードバッ
ク制御条件(低中負荷、かつ所定回数域)が成立してい
るか否かを判定した上で上記更新された最大判定値VMAX
と最小判定値VMINとの差VMAX−VMIN(変化幅)がある不
活性判定値幅よりも更に大であるか否かを判定(ステッ
プS15)し、YESとなるとO2センサは活性化していると判
定(ステップS16)して、不活性判定を行う時間を設定
した不活性判定カウンタの設定値を0にセットする。
他方、ステップS13でVMAX≧Vsでない(スライスレベ
ルを越えていない)と判定されると、ステップS24に進
んで先ず不活性判定カウンタの設定値を0にクリアした
後、ステップS25でO2センサ不活性判定をを下す。
ルを越えていない)と判定されると、ステップS24に進
んで先ず不活性判定カウンタの設定値を0にクリアした
後、ステップS25でO2センサ不活性判定をを下す。
また、一方ステップS15でNOと判定されたリッチ・リ
ーンの変化幅が所定の判定幅よりも小さい時には、他方
ステップS26の方に進んで先ず前回の不活性判定カウン
タの値が0であったか否かを判定した上で、前回も0で
あった場合には更にステップS27に進んで一旦同不活性
判定カウンタを初期値にセットした上で更にステップS
28に進んで同カウンタの値を初期値(ホールド時間)か
ら所定値減衰(デクリメント)させて、その結果カウン
タ値が0になったか否かを判定する(ステップS29)。
ーンの変化幅が所定の判定幅よりも小さい時には、他方
ステップS26の方に進んで先ず前回の不活性判定カウン
タの値が0であったか否かを判定した上で、前回も0で
あった場合には更にステップS27に進んで一旦同不活性
判定カウンタを初期値にセットした上で更にステップS
28に進んで同カウンタの値を初期値(ホールド時間)か
ら所定値減衰(デクリメント)させて、その結果カウン
タ値が0になったか否かを判定する(ステップS29)。
そして、YESとなって上記初期値として設定された所
定のホールド時間が経過して初めて上記ステップS6以下
の活性・不活性判定に進む。
定のホールド時間が経過して初めて上記ステップS6以下
の活性・不活性判定に進む。
一方、上記ステップS17で不活性判定カウンタの値が
0にセットされた場合には続いてステップS18,S19に進
み、前回エンジン外部負荷ERがOFF(ER=0)であっ
て、今回初めてON(LR=1)になったものであるか否か
を判定し、YES(今回初めて外部負荷ON)の場合には上
述したO2センサの不活性判定をホールド(禁止)するタ
イマーのホールド時間Tの初期値To(第7図参照)をセ
ットする。
0にセットされた場合には続いてステップS18,S19に進
み、前回エンジン外部負荷ERがOFF(ER=0)であっ
て、今回初めてON(LR=1)になったものであるか否か
を判定し、YES(今回初めて外部負荷ON)の場合には上
述したO2センサの不活性判定をホールド(禁止)するタ
イマーのホールド時間Tの初期値To(第7図参照)をセ
ットする。
そして、その後、ステップS21で該初期値Toを順次デ
クリメントして行く一方、ステップS22で前回までの最
大、最小判定値VMAX,VMINをそれぞれ保持し、ステップS
23でT=0となると初めてステップS6以下の不活性判定
動作に進む(第7図参照)。
クリメントして行く一方、ステップS22で前回までの最
大、最小判定値VMAX,VMINをそれぞれ保持し、ステップS
23でT=0となると初めてステップS6以下の不活性判定
動作に進む(第7図参照)。
この結果、第6図、第7図に鎖線で示すような負荷補
正時の増量空気によるリーン偏移状態では活性、不活性
の判定が行われないようになり、従来のようなエンジン
外部負荷の投入による誤った不活性判定を行う可能性は
なくなる。
正時の増量空気によるリーン偏移状態では活性、不活性
の判定が行われないようになり、従来のようなエンジン
外部負荷の投入による誤った不活性判定を行う可能性は
なくなる。
以上のように本発明の実施例の構成によれば、先ず従
来同様空燃比センサの活性−不活性の判定を、当該空燃
比センサ出力値の最大値と最小値との偏差を逐次演算
し、その偏差が基準値以下になることをもって判断する
とともに、エンジン外部負荷の投入を検出し外部負荷投
入後一定期間内は空燃比センサの不活性判定を禁止する
ようにしたので、次のような優れた効果を発揮する。
来同様空燃比センサの活性−不活性の判定を、当該空燃
比センサ出力値の最大値と最小値との偏差を逐次演算
し、その偏差が基準値以下になることをもって判断する
とともに、エンジン外部負荷の投入を検出し外部負荷投
入後一定期間内は空燃比センサの不活性判定を禁止する
ようにしたので、次のような優れた効果を発揮する。
(1)空燃比センサが不活性状態にあるときに比較的小
さな出力レベルのノイズが発生しても、これを排除して
誤判定を生ずることを可及的に防止できる。
さな出力レベルのノイズが発生しても、これを排除して
誤判定を生ずることを可及的に防止できる。
(2)空燃比センサの活性および不活性の判定を的確に
下すことができ、フィードバック補正の起動停止を可及
的に正確にかつ迅速に行えるようになる。
下すことができ、フィードバック補正の起動停止を可及
的に正確にかつ迅速に行えるようになる。
(3)また、学習制御を採用したものにあっては、その
学習補正値がクリアされた場合に空燃比センサ出力がそ
の最大出力値もしくは最小出力値にへばりついても、こ
れに起因してフィードバック補正が停止されることがな
く、もってフィードバック補正と学習補正とが起動でき
なくなる事態に陥ることを可及的に防止できる。
学習補正値がクリアされた場合に空燃比センサ出力がそ
の最大出力値もしくは最小出力値にへばりついても、こ
れに起因してフィードバック補正が停止されることがな
く、もってフィードバック補正と学習補正とが起動でき
なくなる事態に陥ることを可及的に防止できる。
(4)エンジン外部負荷作動初期の負荷補正による吸入
空気量増大に伴う過渡的な空燃比のリーン偏移に起因す
る誤った不活性判定を防止することができる。
空気量増大に伴う過渡的な空燃比のリーン偏移に起因す
る誤った不活性判定を防止することができる。
第1図は、本発明の実施例に係るエンジンの空燃比制御
装置のエンジン外部負荷の投入に対応したO2センサの活
性、不活性判定動作を示すフローチャート、第2図およ
び第3図は、同空燃比制御装置のO2センサ経年変化に対
応した活性、不活性判定動作を示す各フローチャート、
第4図は、上記本発明実施例に係る空燃比制御装置の制
御システム図、第5図は、上記第2図、第3図の空燃比
制御に於けるO2センサの活性、不活性判定特性を示すタ
イムチャート、第6図(a)〜(c)は、同第5図の判
定特性に於けるエンジン外部負荷投入時の問題点を示す
タイムチャート、第7図は、上記第6図(a)〜(c)
に示す問題点を解決した上記第1図に示す本発明実施例
装置のO2センサ活性、不活性判定動作を示すタイムチャ
ートである。 2……エンジン 4……吸気系 6……フューエルインジェクタ 8……エンジンコントローラ 10……エアフローメータ 12……回転数センサ 16……O2センサ
装置のエンジン外部負荷の投入に対応したO2センサの活
性、不活性判定動作を示すフローチャート、第2図およ
び第3図は、同空燃比制御装置のO2センサ経年変化に対
応した活性、不活性判定動作を示す各フローチャート、
第4図は、上記本発明実施例に係る空燃比制御装置の制
御システム図、第5図は、上記第2図、第3図の空燃比
制御に於けるO2センサの活性、不活性判定特性を示すタ
イムチャート、第6図(a)〜(c)は、同第5図の判
定特性に於けるエンジン外部負荷投入時の問題点を示す
タイムチャート、第7図は、上記第6図(a)〜(c)
に示す問題点を解決した上記第1図に示す本発明実施例
装置のO2センサ活性、不活性判定動作を示すタイムチャ
ートである。 2……エンジン 4……吸気系 6……フューエルインジェクタ 8……エンジンコントローラ 10……エアフローメータ 12……回転数センサ 16……O2センサ
フロントページの続き (56)参考文献 特開 昭60−67747(JP,A) 特開 平1−203631(JP,A) 特開 昭61−291742(JP,A) 特開 平1−280650(JP,A) 特開 昭59−34438(JP,A) 実開 昭64−15748(JP,U) 特公 昭58−24610(JP,B2) (58)調査した分野(Int.Cl.7,DB名) F02D 41/14
Claims (2)
- 【請求項1】エンジン混合気の空燃比を検出する空燃比
センサを備え、該空燃比センサの出力に基づいて当該空
燃比センサの不活性判定を行うようにしてなるエンジン
において、エンジン外部負荷の作動状態を検出する外部
負荷検出手段を設け、エンジン外部負荷の作動開始初期
から所定の期間内は上記空燃比センサの不活性判定を禁
止するようにしたことを特徴とするエンジンの空燃比制
御装置。 - 【請求項2】不活性判定は、空燃比センサ出力の大きさ
に基く量に対応してなされるようになっていることを特
徴とする請求項1記載のエンジンの空燃比制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2074805A JP3001923B2 (ja) | 1990-03-23 | 1990-03-23 | エンジンの空燃比制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2074805A JP3001923B2 (ja) | 1990-03-23 | 1990-03-23 | エンジンの空燃比制御装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH03275955A JPH03275955A (ja) | 1991-12-06 |
JP3001923B2 true JP3001923B2 (ja) | 2000-01-24 |
Family
ID=13557895
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2074805A Expired - Lifetime JP3001923B2 (ja) | 1990-03-23 | 1990-03-23 | エンジンの空燃比制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3001923B2 (ja) |
-
1990
- 1990-03-23 JP JP2074805A patent/JP3001923B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH03275955A (ja) | 1991-12-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3300012B2 (ja) | エンジンの排気浄化装置 | |
JP2570443B2 (ja) | 酸素センサのヒータ制御装置 | |
JPH0598948A (ja) | 内燃機関の触媒劣化判別装置 | |
JP2004225684A (ja) | 酸素センサの異常検出装置 | |
JP3060745B2 (ja) | エンジンの空燃比制御装置 | |
EP1183455B1 (en) | Engine exhaust purification device | |
JP2010007561A (ja) | 空燃比制御装置及び空燃比制御方法 | |
JPH0526085A (ja) | 内燃機関の空燃比制御装置 | |
JPH0532573B2 (ja) | ||
JP2832049B2 (ja) | エンジンの空燃比制御装置 | |
KR100204831B1 (ko) | 내연기관의 공연비 제어방법 및 장치 | |
JP3001923B2 (ja) | エンジンの空燃比制御装置 | |
JPH0733790B2 (ja) | 自動車用エンジンの空燃比制御装置 | |
JP2600208B2 (ja) | 内燃機関の空燃比制御装置 | |
JPH11190246A (ja) | 燃料噴射制御装置および燃料噴射方法 | |
JP3899658B2 (ja) | 内燃機関の排気浄化装置 | |
JPH07116931B2 (ja) | 内燃機関の触媒劣化判別装置 | |
JP2918706B2 (ja) | エンジンの空燃比制御装置 | |
JPH0742884B2 (ja) | 車両用エンジンの空燃比制御装置におけるo▲下2▼センサ劣化警報装置 | |
JP6679771B2 (ja) | 内燃機関の空燃比制御装置及び空燃比制御方法 | |
JP3291876B2 (ja) | 内燃機関の空燃比制御装置 | |
JP3024463B2 (ja) | 内燃機関の空燃比制御装置 | |
JPH0617692A (ja) | エンジン燃料系の故障判定装置 | |
JP2722805B2 (ja) | 内燃機関の空燃比制御装置 | |
JPS6217657B2 (ja) |