JP3879596B2 - 空燃比センサ状態判定装置 - Google Patents
空燃比センサ状態判定装置 Download PDFInfo
- Publication number
- JP3879596B2 JP3879596B2 JP2002179694A JP2002179694A JP3879596B2 JP 3879596 B2 JP3879596 B2 JP 3879596B2 JP 2002179694 A JP2002179694 A JP 2002179694A JP 2002179694 A JP2002179694 A JP 2002179694A JP 3879596 B2 JP3879596 B2 JP 3879596B2
- Authority
- JP
- Japan
- Prior art keywords
- fuel ratio
- catalyst
- air
- ratio sensor
- value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Description
【0001】
【発明の属する技術分野】
本発明は、触媒が配設された内燃機関の排気通路に備えられた空燃比センサの状態を判定するための空燃比センサ状態判定装置に関する。
【0002】
【従来の技術】
従来より、例えば特開2001−234787号公報等に記載されているように、内燃機関の排気通路に第1触媒(三元触媒)を配設し、同第1触媒よりも下流の排気通路に第2触媒(三元触媒)を配設するとともに、同第1触媒よりも上流の排気通路、同第1触媒よりも下流であって同第2触媒よりも上流の排気通路、及び同第2触媒よりも下流の排気通路にそれぞれ排気ガスの空燃比を検出する空燃比センサを配設し、これらの空燃比センサの出力に基いて機関の空燃比をフィードバック制御することによりエミッションを効果的に低減できる内燃機関の排気浄化装置が知られている。
【0003】
【発明が解決しようとする課題】
上記開示された排気浄化装置において空燃比センサが異常となると、期待する空燃比フィードバック制御ができなくなる。このため、各空燃比センサの状態を検出・判定し、空燃比センサが異常であると判定された場合、例えば、空燃比フィードバック制御を停止したり、空燃比センサの交換を促すために警告灯を点灯するなどの処置を行う必要がある。しかしながら、上記開示された装置は、各空燃比センサの状態を検出・判定する構成を有していないので、かかる処置を行うことができないという問題がある。
【0004】
従って、本発明の目的は、触媒が配設された内燃機関の排気通路に備えられた空燃比センサの状態を判定することが可能な空燃比センサ状態判定装置を提供することにある。
【0005】
【本発明の概要】
本発明の特徴は、内燃機関の排気通路に配設された第1触媒と、前記第1触媒よりも下流の前記排気通路に配設されるとともに同第1触媒から流出する排気ガスの空燃比を検出する第1触媒下流空燃比センサと、前記内燃機関の排気通路に配設された第2触媒と、前記第2触媒よりも下流の前記排気通路に配設されるとともに同第2触媒から流出する排気ガスの空燃比を検出する第2触媒下流空燃比センサとを備えた同内燃機関の排気浄化装置に適用され、前記第1触媒下流空燃比センサ及び前記第2触媒下流空燃比センサの状態の判定を行う空燃比センサ状態判定装置が、少なくとも前記第1触媒下流空燃比センサの出力に基いて前記第1触媒の劣化の程度を示す第1触媒劣化指標値を取得する第1触媒劣化指標値取得手段と、少なくとも前記第2触媒下流空燃比センサの出力に基いて前記第2触媒の劣化の程度を示す第2触媒劣化指標値を取得する第2触媒劣化指標値取得手段と、前記第1触媒劣化指標値と前記第2触媒劣化指標値との比較により得られる同第1触媒劣化指標値と同第2触媒劣化指標値との相違の程度を示す値と空燃比センサ状態判定基準値との比較結果に基いて、前記第1触媒下流空燃比センサ及び前記第2触媒下流空燃比センサが正常であるという判定、及び/又は同第1触媒下流空燃比センサ及び同第2触媒下流空燃比センサの少なくとも一つが異常であるという判定を行う空燃比センサ状態判定手段とを備えたことにある。ここにおいて「触媒の劣化指標値」は、例えば、触媒が吸蔵し得る最大の酸素量(以下、「最大酸素吸蔵量」と称呼する。)、又は、触媒の上流側の空燃比センサの出力が描く軌跡長と同触媒の下流側の空燃比センサの出力が描く軌跡長との比(軌跡比)であり、これらに限定されない。
【0006】
三元触媒(本明細書においては、単に「触媒」と云うこともある。)は燃料中に含まれる鉛や硫黄等による被毒、或いは触媒に加わる熱により劣化する一方で、上記のように第1触媒と第2触媒を内燃機関の排気通路に配設した場合(両触媒を同じ排気通路に直列に配設するか異なる排気通路にそれぞれ並列に配設するかに拘わらず)、第1触媒及び第2触媒のいずれか一方のみの劣化が著しく進行することは少なく、第1,第2触媒の劣化はそれぞれ同じような傾向をもって進行していくことが種々の実験等により確認されている。この結果、第1,第2触媒の実際の劣化指標値もそれぞれ同じような傾向をもって変化していく。よって、第1,第2触媒の各々が劣化していく過程に渡り、第1,第2触媒の各々の実際の劣化指標値間の相違の程度は、ある基準となる所定の相違の程度よりも小さくなる。
【0007】
従って、このような前提に基けば、少なくとも第1触媒下流の排気通路に配設された第1触媒下流空燃比センサの出力に基いて取得された第1触媒劣化指標値と少なくとも第2触媒下流の排気通路に配設された第2触媒下流空燃比センサの出力に基いて取得された第2触媒劣化指標値の間の相違の程度が前記所定の相違の程度以上のとき、同第1触媒下流空燃比センサ及び同第2触媒下流空燃比センサの少なくともいずれか一方は異常であると判定され得る。一方、前記取得された第1触媒劣化指標値と前記取得された第2触媒劣化指標値の間の相違の程度が前記所定の相違の程度よりも小さいとき、前記第1触媒下流空燃比センサ及び前記第2触媒下流空燃比センサは正常であると判定され得る。
【0008】
上記本発明の特徴を利用した空燃比センサ状態判定装置は、このような知見に基いて空燃比センサの状態を判定するものである。即ち、本発明における空燃比センサ状態判定手段は、第1触媒下流空燃比センサの出力及び第2触媒下流空燃比センサの出力に少なくとも基いてそれぞれ取得される第1触媒劣化指標値と第2触媒劣化指標値とを比較することにより得られる同第1触媒劣化指標値と同第2触媒劣化指標値の間の相違の程度を示す値と空燃比センサ状態判定基準値とを比較することで、第1触媒下流空燃比センサ及び第2触媒下流空燃比センサが正常であるという判定、及び/又は同第1触媒下流空燃比センサ及び同第2触媒下流空燃比センサの少なくとも一つが異常であるという判定を行う。従って、第1触媒下流空燃比センサ及び第2触媒下流空燃比センサの状態を判定することができる。
【0009】
この場合、上記空燃比センサ状態判定装置が適用される排気浄化装置は、第2触媒が第1触媒下流空燃比センサよりも下流の排気通路に配設されるように構成されていることが好適である。これによれば、第1触媒と第2触媒が内燃機関の排気通路に直列に配設されることになり、同第1触媒及び第2触媒には同じ(一本の)排気通路内の排気ガスが流入する。従って、第1,第2触媒の劣化がより一層同じような傾向をもって進行していくことが保証され得る。この結果、第1触媒下流空燃比センサ及び第2触媒下流空燃比センサの状態をより一層精度良く判定することができる。
【0010】
また、上記空燃比センサ状態判定装置が、内燃機関において失火が発生したことを検出する失火発生検出手段と、前記失火発生検出手段により検出された失火の発生回数に応じて前記空燃比センサ状態判定基準値を変更する基準値変更手段とを備えるように構成されることが好適である。
【0011】
内燃機関のある気筒において失火が発生した場合、一時的に多量の未燃ガスが同気筒に接続されている排気通路に流入するとともに同排気通路に配設されている触媒にも多量の未燃ガスが流入し、同触媒内で未燃ガスが燃焼して熱が発生することで同触媒の劣化が一時的に速く進行する現象が発生する。
【0012】
このとき、上記第1触媒と第2触媒が同じ排気通路に直列に配設されている場合には、第2触媒に比べて機関の排気ポートに近い位置に配設されている第1触媒内にて未燃ガスが燃焼しやすく、第1触媒の劣化が第2触媒の劣化よりも速く進行し易い。また、上記第1触媒と第2触媒が異なる排気通路にそれぞれ並列に配設されている場合には、例えば第1,第2触媒のうちの一方の触媒に流入する排気ガスを発生する気筒(群)においてのみ失火が発生したとき、前記一方の触媒の劣化が他方の触媒の劣化よりも速く進行しやすい。
【0013】
従って、第1触媒及び第2触媒を同じ排気通路に直列に配設するか異なる排気通路にそれぞれ並列に配設するかに拘わらず、内燃機関において失火の発生回数が多くなると実際の第1触媒劣化指標値と実際の第2触媒劣化指標値との相違の程度は大きくなる傾向がある。このため、失火の発生回数にかかわらず上記空燃比センサ状態判定基準値が常に一定であるものとすると、第1,第2触媒下流空燃比センサが正常であっても、同第1,第2触媒下流空燃比センサの少なくとも一つが異常であると誤判定される可能性がある。
【0014】
これに対し、上記した空燃比センサ状態判定装置によれば、失火発生検出手段により検出された失火の発生回数に応じて基準値変更手段が空燃比センサ状態判定基準値を変更するように構成されているので、第1,第2触媒下流空燃比センサが正常であること及び/又は第1,第2触媒下流空燃比センサの少なくとも一つが異常であることがより精度よく判定され得る。
【0015】
また、上記した空燃比センサ状態判定装置が適用される排気浄化装置において、前記第1触媒劣化指標値に基いて前記第1触媒が劣化したか否かを判定する第1触媒劣化判定手段と、前記第2触媒劣化指標値に基いて前記第2触媒が劣化したか否かを判定する第2触媒劣化判定手段とが備えられているときには、前記空燃比センサ状態判定手段は、前記第1触媒下流空燃比センサ及び前記第2触媒下流空燃比センサの少なくとも一つが異常であるという判定を行った場合、前記第1触媒劣化判定手段及び前記第2触媒劣化判定手段による判定を禁止させるように構成されることが好適である。
【0016】
第1,第2触媒下流空燃比センサの少なくとも一つが異常であると判定された場合、同第1,第2空燃比センサの出力に基いてそれぞれ検出された第1触媒劣化指標値及び第2触媒劣化指標値の少なくとも一方は正確な値ではない可能性が高い。従って、これによれば、第1触媒及び第2触媒が劣化したか否かが判定される際、誤判定がなされることが防止され得る。
【0017】
【発明の実施の形態】
以下、本発明による空燃比センサ状態判定装置の一実施形態について図面を参照しつつ説明する。図1は、本発明の実施形態に係る空燃比センサ状態判定装置を搭載した排気浄化装置を火花点火式多気筒(4気筒)内燃機関10に適用したシステムの概略構成を示している。
【0018】
この内燃機関10は、シリンダブロック、シリンダブロックロワーケース、及びオイルパン等を含むシリンダブロック部20と、シリンダブロック部20の上に固定されるシリンダヘッド部30と、シリンダブロック部20にガソリン混合気を供給するための吸気系統40と、シリンダブロック部20からの排気ガスを外部に放出するための排気系統50とを含んでいる。
【0019】
シリンダブロック部20は、シリンダ21、ピストン22、コンロッド23、及びクランク軸24を含んでいる。ピストン22はシリンダ21内を往復動し、ピストン22の往復動がコンロッド23を介してクランク軸24に伝達され、これにより同クランク軸24が回転するようになっている。シリンダ21とピストン22のヘッドは、シリンダヘッド部30とともに燃焼室25を形成している。
【0020】
シリンダヘッド部30は、燃焼室25に連通した吸気ポート31、吸気ポート31を開閉する吸気弁32、吸気弁32を駆動するインテークカムシャフトを含むとともに同インテークカムシャフトの位相角を連続的に変更する可変吸気タイミング装置33、可変吸気タイミング装置33のアクチュエータ33a、燃焼室25に連通した排気ポート34、排気ポート34を開閉する排気弁35、排気弁35を駆動するエキゾーストカムシャフト36、点火プラグ37、点火プラグ37に与える高電圧を発生するイグニッションコイルを含むイグナイタ38、及び燃料を吸気ポート31内に噴射するインジェクタ(燃料噴射手段)39を備えている。
【0021】
吸気系統40は、吸気ポート31に連通し同吸気ポート31とともに吸気通路を形成するインテークマニホールドを含む吸気管41、吸気管41の端部に設けられたエアフィルタ42、吸気管41内にあって吸気通路の開口断面積を可変とするスロットル弁43、及びスロットル弁駆動手段を構成するDCモータからなるスロットル弁アクチュエータ43aを備えている。
【0022】
排気系統50は、排気ポート34に連通したエキゾーストマニホールド51、エキゾーストマニホールド51に接続されたエキゾーストパイプ(排気管)52、エキゾーストパイプ52に配設(介装)された上流側の第1触媒(上流側三元触媒、又はスタート・コンバータとも云う。)53、及び第1触媒53の下流のエキゾーストパイプ52に配設(介装)された同第1触媒53よりも容量の大きい第2触媒(下流側三元触媒、又は、車両のフロア下方に配設されるため、アンダ・フロア・コンバータとも云う。)54を備えている。
【0023】
ここで、排気ポート34、エキゾーストマニホールド51、及びエキゾーストパイプ52は排気通路を構成している。また、エキゾーストパイプ52はエキゾーストマニホールド51を介して4つの気筒の全てと接続されており、この結果、第1触媒53及び第2触媒54も4つの気筒の全てと接続されている。第2触媒54の初期状態(未使用の状態)における排気ガス浄化能力(最大酸素吸蔵量)は、第1触媒53の初期状態(未使用の状態)における排気ガス浄化能力(最大酸素吸蔵量)よりも高い。
【0024】
一方、このシステムは、熱線式エアフローメータ61、スロットルポジションセンサ62、カムポジションセンサ63、クランクポジションセンサ64、水温センサ65、第1触媒53の上流の排気通路に配設された空燃比センサ66(以下、「最上流空燃比センサ66」と称呼する。)、第1触媒53の下流であって第2触媒54の上流の排気通路に配設された空燃比センサ67(以下、「第1触媒下流空燃比センサ67」と称呼する。)、第2触媒54の下流の排気通路に配設された空燃比センサ68(以下、「第2触媒下流空燃比センサ68」と称呼する。)、及びアクセル開度センサ69を備えている。
【0025】
熱線式エアフローメータ61は、吸気管41内を流れる吸入空気の質量流量に応じた電圧Vgを出力するようになっている。かかるエアフローメータ61の出力Vgと、計測された吸入空気量(流量)AFMとの関係は、図2に示したとおりである。スロットルポジションセンサ62は、スロットル弁43の開度を検出し、スロットル弁開度TAを表す信号を出力するようになっている。カムポジションセンサ63は、インテークカムシャフトが90°回転する毎に(即ち、クランク軸24が180°回転する毎に)一つのパルスを有する信号(G2信号)を発生するようになっている。クランクポジションセンサ64は、クランク軸24が10°回転する毎に幅狭のパルスを有するとともに同クランク軸24が360°回転する毎に幅広のパルスを有する信号を出力するようになっている。この信号は、エンジン回転速度NEを表す。水温センサ65は、内燃機関10の冷却水の温度を検出し、冷却水温THWを表す信号を出力するようになっている。
【0026】
最上流空燃比センサ66は、図3(a)に示したように、空燃比A/Fに応じた電流を出力し、この電流に応じた電圧vabyfsを出力するようになっている。図3(a)から明らかなように、最上流空燃比センサ66によれば、広範囲にわたる空燃比A/Fを精度良く検出することができる。第1触媒下流空燃比センサ67、及び第2触媒下流空燃比センサ68は、図3(b)に示したように、理論空燃比において急変する電圧Voxs1,Voxs2をそれぞれ出力するようになっている。より具体的に述べると、第1,第2触媒下流空燃比センサ67,68は、空燃比が理論空燃比よりもリーンのときは略0.1(V)、空燃比が理論空燃比よりもリッチのときは略0.9(V)、及び空燃比が理論空燃比のときは略0.5(V)の電圧を出力するようになっている。アクセル開度センサ69は、運転者によって操作されるアクセルペダル81の操作量を検出し、同アクセルペダル81の操作量Accpを表す信号を出力するようになっている。
【0027】
更に、このシステムは電気制御装置70を備えている。電気制御装置70は、互いにバスで接続されたCPU71、CPU71が実行するルーチン(プログラム)、テーブル(ルックアップテーブル、マップ)、定数等を予め記憶したROM72、CPU71が必要に応じてデータを一時的に格納するRAM73、電源が投入された状態でデータを格納するとともに同格納したデータを電源が遮断されている間も保持するバックアップRAM74、及びADコンバータを含むインターフェース75等からなるマイクロコンピュータである。インターフェース75は、前記センサ61〜69と接続され、CPU71にセンサ61〜69からの信号を供給するとともに、同CPU71の指示に応じて可変吸気タイミング装置33のアクチュエータ33a、イグナイタ38、インジェクタ39、及びスロットル弁アクチュエータ43aに駆動信号を送出するようになっている。
【0028】
(空燃比センサの正常又は異常判定及び触媒劣化判定の原理)
ところで、第1,第2触媒53,54等の三元触媒は、空燃比がほぼ理論空燃比のときに未燃成分(HC,CO)を酸化し、同時に窒素酸化物(NOx)を還元する機能を有する。更に、三元触媒は、酸素貯蔵機能を有し、この酸素貯蔵機能により空燃比が理論空燃比からある程度まで偏移したとしても、HC,CO、及びNOxを浄化することができる。即ち、機関の空燃比がリーンとなって三元触媒に流入するガスにNOxが多量に含まれると、三元触媒はNOxから酸素分子を奪ってNOxを還元してNOxを浄化するとともに、その酸素を吸蔵する。また、機関の空燃比がリッチになって三元触媒に流入するガスにHC,COが多量に含まれると、三元触媒はこれらに吸蔵していた酸素を与えて酸化し、これによりHC,COを浄化する。
【0029】
従って、三元触媒が連続的に流入する多量のHC,COを効率的に浄化するためには、同三元触媒が酸素を多量に貯蔵していなければならず、逆に連続的に流入する多量のNOxを効率的に浄化するためには、三元触媒が酸素を十分に貯蔵し得る状態になければならないことになる。
【0030】
以上のことから明らかなように、三元触媒の浄化能力は、その三元触媒が貯蔵(吸蔵)し得る最大の酸素量(最大酸素吸蔵量)に依存する。ところが、三元触媒は燃料中に含まれる鉛や硫黄等による被毒、或いは触媒に加わる熱により劣化するから、次第に最大酸素吸蔵量が低下してくる。従って、第1,第2触媒53,54の各々の最大酸素吸蔵量を検出することができれば、同第1,第2触媒53,54の各々が劣化しているか否かを判定することができる。換言すると、最大酸素吸蔵量は触媒の劣化の程度を示す劣化指標値である。
【0031】
一方、上記のように第1触媒53と第2触媒54とを内燃機関10の排気通路に直列に配設した場合、第1,第2触媒53,54のいずれか一方のみの劣化が著しく進行することは少なく、第1,第2触媒53,54の劣化はそれぞれ同じような傾向をもって進行していくことが種々の実験等により確認されている。この結果、図4に示したように、第1,第2触媒53,54の劣化指標値である最大酸素吸蔵量の実際値もそれぞれ同じような傾向(勾配)をもって低下していく。
【0032】
また、先に述べたように第2触媒54の初期状態における最大酸素吸蔵量の実際値は第1触媒53のものよりも大きいため、第1,第2触媒53,54の各々の劣化が進行していく過程に渡り、第2触媒54の最大酸素吸蔵量の実際値は第1触媒53の最大酸素吸蔵量の実際値よりも大きくなる。従って、図4に示したように、第1,第2触媒53,54の各々の劣化が進行していく過程に渡り、第2触媒54の最大酸素吸蔵量の実際値から第1触媒53の最大酸素吸蔵量の実際値を減じた値(正の値)は、ある基準となる最大酸素吸蔵量偏差正常限界値ΔCR(正の一定値)よりも小さくなる。
【0033】
この最大酸素吸蔵量偏差正常限界値ΔCRは、本例では、第1,第2触媒53,54の上記最大酸素吸蔵量の実際値の各々が対応する触媒が劣化したと判定されるべき程度までそれぞれ低下するまでの間に同第2触媒54の最大酸素吸蔵量の実際値から同第1触媒53の最大酸素吸蔵量の実際値を減じた値がとり得る最大値を各種実験等から求めておき、この最大値よりも若干大きい値となるように設定されている。
【0034】
従って、これらの前提に基けば、少なくとも第2触媒下流空燃比センサ68の出力に基いて検出された第2触媒54の最大酸素吸蔵量CUFmaxから少なくとも第1触媒下流空燃比センサ67の出力に基いて検出された第1触媒53の最大酸素吸蔵量CSCmaxを減じた値(第1触媒劣化指標値と第2触媒劣化指標値との間の相違の程度を示す値)が上記最大酸素吸蔵量偏差正常限界値ΔCR(空燃比センサ状態判定基準値)以上のとき、第1触媒下流空燃比センサ67及び第2触媒下流空燃比センサ68の少なくともいずれか一方は異常であると判定され得る。一方、前記検出された第2触媒54の最大酸素吸蔵量CUFmaxから前記検出された第1触媒53の最大酸素吸蔵量CSCmaxを減じた値が上記最大酸素吸蔵量偏差正常限界値ΔCRよりも小さいとき、第1触媒下流空燃比センサ67及び第2触媒下流空燃比センサ68は正常であると判定され得る。
【0035】
かかる知見に基き、本実施形態の空燃比センサ状態判定装置を搭載した排気浄化装置は、初めに、図5のタイムチャートに実線で示したように、少なくとも第1触媒下流空燃比センサ67の出力に基いて第1触媒53の最大酸素吸蔵量CSCmaxを検出するとともに、少なくとも第2触媒下流空燃比センサ68の出力に基いて第2触媒54の最大酸素吸蔵量CUFmaxを検出する。
【0036】
即ち、先ず、図5(A)に示したように、時刻t1にて第1触媒53の上流のガスの空燃比(実際には、機関が吸入する混合気の空燃比であり、以下、単に「第1触媒上流空燃比」と云うこともある。)を理論空燃比よりもリーンな所定のリーン空燃比に制御する。
【0037】
これにより、第1触媒53にリーンな空燃比のガスが流入するから、図5(C)に示したように、第1触媒53の酸素吸蔵量は次第に増大し、時刻t2にて最大酸素吸蔵量CSCmaxに達する。この結果、時刻t2にて、第1触媒53から酸素を含むガス(リーン空燃比のガス)が流出し始め、図5(B)に示したように、第1触媒下流空燃比センサ67の出力Voxs1はリッチを示す値からリーンを示す値に変化する。この時刻t1〜t2間の作動を第1モード(Mode=1)における作動と呼ぶ。
【0038】
時刻t2にて、第1触媒下流空燃比センサ67の出力Voxs1がリッチを示す値からリーンを示す値に変化した後も、本装置は第1触媒上流空燃比を上記所定のリーン空燃比に制御し続ける(図5(A)を参照)。これにより、第1触媒53にリーンな空燃比のガスが流入し続け、しかも、第1触媒53の酸素吸蔵量は最大となっていて同第1触媒53は酸素を吸蔵することができない状態にあるから、同第1触媒53から酸素を含むガスが流出し続ける。
【0039】
この結果、図5(E)に示したように、時刻t2以降において第2触媒54の酸素吸蔵量は次第に増大し、時刻t3にて最大酸素吸蔵量CUFmaxに達する。この結果、時刻t3にて、第2触媒54から酸素を含むガスが流出し始め、図5(D)に示したように、第2触媒下流空燃比センサ68の出力Voxs2はリッチを示す値からリーンを示す値に変化する。なお、時刻t2〜t3間の作動を第2モード(Mode=2)における作動と呼ぶ。
【0040】
以上のように、第1,第2モード(Mode=1,Mode=2)においては、第1触媒53が内部に酸素を吸蔵し得る限界まで酸素を吸蔵するとともに、第2触媒54が内部に酸素を吸蔵し得る限界まで酸素を吸蔵するように同第1触媒53の上流の空燃比が理論空燃比よりもリーンに制御される。
【0041】
時刻t3にて、第2触媒下流空燃比センサ68の出力Voxs2がリッチを示す値からリーンを示す値に変化すると、本装置は第1触媒上流空燃比を理論空燃比よりもリッチな所定のリッチ空燃比に制御する。これにより、第1触媒53にリッチな空燃比のガスが流入するため、第1触媒53の酸素が同第1触媒53に流入する未燃HC,COの酸化のために消費される。これにより、第1触媒53の酸素吸蔵量は最大酸素吸蔵量CSCmaxから減少して行く。そして、時刻t4になると、第1触媒53の酸素吸蔵量は「0」となるから、第1触媒53からリッチ空燃比のガスが流出し始め、第1触媒下流空燃比センサ67の出力Voxs1はリーンを示す値からリッチを示す値に変化する。この時刻t3〜t4間の作動を第3モード(Mode=3)における作動と呼ぶ。
【0042】
本装置は、かかる時刻t3〜t4間において、以下のようにして第1触媒53の最大酸素吸蔵量CSCmaxを検出する。即ち、第1触媒上流空燃比を所定のリッチ空燃比に設定した時刻t3から、第1触媒下流空燃比センサ67の出力Voxs1がリッチを示す値に変化する時刻t4までの間、下記数1、及び下記数2に基いて酸素吸蔵量の変化量ΔO2を算出するとともにこれを積算し、同時刻t4での積算値を最大酸素吸蔵量CSCmaxとして算出する。
【0043】
【数1】
ΔO2=0.23・mfr・(stoich − abyfs)
【0044】
【数2】
CSCmax=ΣΔO2(区間t=t3〜t4)
【0045】
上記数1において、値「0.23」は大気中に含まれる酸素の重量割合である。mfrは所定時間(計算周期tsample)内の燃料噴射量Fiの合計量であり、stoichは理論空燃比(例えば、14.7)である。abyfsは所定時間tsampleにおいて最上流空燃比センサ66により検出された空燃比A/Fである。なお、abyfsは前記所定時間tsample内の最上流空燃比センサ66により検出された空燃比A/Fの平均値としてもよい。
【0046】
この数1に示したように、所定時間tsample内の噴射量の合計量mfrに、検出された空燃比A/Fの理論空燃比からの偏移(stoich − abyfs)を乗じることで、同所定時間tsampleにおける空気の不足量が求められ、この空気の不足量に酸素の重量割合を乗じることで同所定時間tsampleにおける酸素吸蔵量変化量(吸蔵酸素の消費量)ΔO2が求められる。そして、数2に示したように、酸素吸蔵量変化量ΔO2を時刻t3〜t4に渡って積算することで、第1触媒53が酸素を最大限貯蔵していた状態から酸素を総べて消費するまでの酸素消費量、即ち最大酸素吸蔵量CSCmaxが推定・算出される。
【0047】
このように、本実施形態では、第1触媒下流空燃比センサ67の出力Voxs1の変化、及び、第1触媒上流側空燃比が所定のリッチ空燃比に制御されていること(最上流空燃比センサ66の出力vabyfs)を利用して最大酸素吸蔵量CSCmaxを検出する。従って、例えば、第1触媒下流空燃比センサ67において異常(特に、応答性が低下する等の動特性に関する異常)が発生し同第1触媒下流空燃比センサ67の出力Voxs1の変化時期が遅れると、時刻t4も遅れ、最大酸素吸蔵量CSCmaxが大きく算出されてしまう。
【0048】
なお、本実施形態においては、時刻t3〜t4間で第1触媒上流空燃比は一定の第1リッチ空燃比であるから、時刻t3〜t4までの時間をΔt3、所定のリッチ空燃比をabyfR、その間における単位時間当りの燃料供給量をmfr3とすれば、上記数1及び上記数2から、最大酸素吸蔵量CSCmaxは0.23・mfr3・(stoich − abyfR)・Δt3として簡単に求めることもできる。
【0049】
時刻t4にて、第1触媒下流空燃比センサ68の出力Voxs2がリーンを示す値からリッチを示す値に変化した後も、本装置は第1触媒上流空燃比を上記所定のリッチ空燃比に制御し続ける。このとき、第1触媒53の酸素吸蔵量は「0」となっているから、第2触媒54にリッチな空燃比のガスが流入する。この結果、第2触媒54が吸蔵している酸素は、同第2触媒54に流入する未燃HC,COの酸化のために消費されるので、第2触媒54の酸素吸蔵量は最大酸素吸蔵量CUFmaxから減少して行き、時刻t5にて同酸素吸蔵量は「0」となる。この結果、時刻t5にて、第2触媒54からリッチ空燃比のガスが流出し始め、第2触媒下流空燃比センサ68の出力Voxs2はリーンを示す値からリッチを示す値に変化する。この時刻t4〜t5間の作動を第4モード(Mode=4)における作動と呼ぶ。
【0050】
即ち、時刻t3〜t4の間に、第1触媒53が内部に吸蔵している酸素を完全に放出するとともに、時刻t4〜t5の間に、第2触媒54が内部に吸蔵している酸素を完全に放出するように、時刻t3〜t5の間の第1触媒53の上流の空燃比が理論空燃比よりもリッチな所定のリッチ空燃比に制御される。
【0051】
本装置は、時刻t4〜t5間において、上記最大酸素吸蔵量CSCmaxを求めた場合と同様な下記数3及び下記数4により示される計算を行うことで、第2触媒54の最大酸素吸蔵量CUFmaxを検出する。なお、この場合においても、時刻t4〜t5間で第1触媒上流空燃比は一定の所定のリッチ空燃比であるから、時刻t4〜t5までの時間をΔt4、所定のリッチ空燃比をabyfR、その間における単位時間当りの燃料供給量をmfr4とすれば、最大酸素吸蔵量CUFmaxは0.23・mfr4・(stoich − abyfR)・Δt4として簡単に求めることもできる。
【0052】
このように、本実施形態では、第2触媒下流空燃比センサ68の出力Voxs2の変化、及び、第1触媒上流側空燃比が所定のリッチ空燃比に制御されていること(最上流空燃比センサ66の出力vabyfs)を利用して最大酸素吸蔵量CUFmaxを検出する。従って、例えば、第2触媒下流空燃比センサ68において異常(特に、応答性が低下する等の動特性に関する異常)が発生し同第2触媒下流空燃比センサ68の出力Voxs2の変化時期が遅れると、時刻t5も遅れ、最大酸素吸蔵量CUFmaxが大きく算出されてしまう。
【0053】
【数3】
ΔO2=0.23・mfr・(stoich − abyfs)
【0054】
【数4】
CUFmax=ΣΔO2(区間t=t4〜t5)
【0055】
そして、本装置は、時刻t5にて機関に吸入される混合気の空燃比を理論空燃比に戻すとともに、同時刻t5以降において、最上流空燃比センサ66,第1触媒下流空燃比センサ67,及び第2触媒下流空燃比センサ68が正常であるという判定又は異常であるという判定を以下のように行う。
【0056】
即ち、本装置は、下記数5が成立するとき、最上流空燃比センサ66,第1触媒下流空燃比センサ67,及び第2触媒下流空燃比センサ68の全てが正常であると判定する。一方、下記数5が成立しないとき、最上流空燃比センサ66,第1触媒下流空燃比センサ67,及び第2触媒下流空燃比センサ68のいずれか一つ以上が異常であると判定する。
【0057】
【数5】
CUFmax-CSCmax < ΔCR+A・Nmisfire
【0058】
上記数5において、右辺のNmisfireは、内燃機関10において現時点までに発生している失火の発生回数であり、右辺のAは所定の正の定数である。この数5において、失火発生回数Nmisfireが考慮されているのは、先に説明したように、失火の発生回数が多くなると第1触媒53の劣化が第2触媒54の劣化よりも速く進行して実際の最大酸素吸蔵量CUFmaxと実際の最大酸素吸蔵量CSCmaxとの偏差が大きくなるので、空燃比センサの正常又は異常を精度よく判定するために空燃比センサ状態判定基準値(最大酸素吸蔵量偏差正常限界値ΔCR(正の一定値))を失火の発生回数Nmisfireに応じた分だけ大きくする必要があるからである。
【0059】
そして、本装置は、最上流空燃比センサ66,第1触媒下流空燃比センサ67,及び第2触媒下流空燃比センサ68のいずれか一つ以上が異常であると判定したとき、検出された最大酸素吸蔵量CSCmax及び検出された最大酸素吸蔵量CUFmaxの少なくともいずれか一方は正確な値ではない可能性が高いので、第1,第2触媒53,54が劣化しているか否かを判定しない。
【0060】
一方、最上流空燃比センサ66,第1触媒下流空燃比センサ67,及び第2触媒下流空燃比センサ68の全てが正常であると判定したとき、本装置は、第1,第2触媒53,54が劣化しているか否かを以下のように判定する。
【0061】
先ず、第1触媒53については、上記第1触媒53の最大酸素吸蔵量CSCmaxが第1触媒劣化判定基準値CSCR以下であるか否かを判定する。そして、上記最大酸素吸蔵量CSCmaxが第1触媒劣化判定基準値CSCR以下であるとき、第1触媒53が劣化したものと判定する。
【0062】
次に、第2触媒54については、上記第2触媒54の最大酸素吸蔵量CUFmaxが第2触媒劣化判定基準値CUFR以下であるか否かを判定する。そして、上記最大酸素吸蔵量CUFmaxが第2触媒劣化判定基準値CUFR以下であるとき、第2触媒54が劣化したものと判定する。
【0063】
更に、本装置は、第1,第2触媒53,54を一つの触媒装置とみなしたときに、その触媒装置が劣化したか否かを、下記数6が成立するか否かを判定することにより判定する。
【0064】
【数6】
CSCmax+CUFmax ≦ CR
【0065】
上記数6において、右辺のCRは、第1触媒53と第2触媒54を一つの触媒装置と見なしたときに、同触媒装置の劣化を判定するための最大酸素吸蔵量の基準値(触媒全体の劣化判定基準値)である。以上が、本装置による空燃比センサの正常又は異常判定及び触媒劣化判定の原理である。
【0066】
<実際の作動>
次に、上記のように構成された空燃比状態判定装置(及び、排気浄化装置)の実際の作動について、電気制御装置70のCPU71が実行するルーチン(プログラム)をフローチャートにより示した図6〜図16を参照しながら説明する。
【0067】
(通常の空燃比制御)
CPU71は、図6に示した最終燃料噴射量Fiの計算、及び燃料噴射の指示を行うルーチンを、各気筒のクランク角が各吸気上死点前の所定クランク角度(例えば、BTDC90°CA)となる毎に、繰り返し実行するようになっている。従って、任意の気筒のクランク角度が前記所定クランク角度になると、CPU71はステップ600から処理を開始してステップ605に進み、エアフローメータ61により計測された吸入空気量AFMと、エンジン回転速度NEとに基いて、機関の空燃比を理論空燃比とするための基本燃料噴射量Fbaseをマップから求める。
【0068】
次いで、CPU71はステップ610に進み、基本燃料噴射量Fbaseに係数Kを乗じた値に後述する空燃比フィードバック補正量DFiを加えた値を最終燃料噴射量Fiとして設定する。この係数Kの値は、通常は「1.00」であり、後述するように、第1触媒の最大酸素吸蔵量CSCmax及び第2触媒の最大酸素吸蔵量CUFmaxを検出するために強制的に空燃比を変更するとき、「1.00」以外の所定値に設定される。
【0069】
次いで、CPU71はステップ615に進み、同ステップ615にて同最終燃料噴射量Fiの燃料を噴射するための指示をインジェクタ39に対して行う。その後、CPU71はステップ620に進み、その時点の燃料噴射量合計量mfrに最終燃料噴射量Fiを加えた値を、新たな燃料噴射量積算値mfrに設定する。この燃料噴射量積算値mfrは、後述する酸素吸蔵量の算出の際に用いられる。その後、CPU71はステップ695に進み、本ルーチンを一旦終了する。以上により、フィードバック補正された最終燃料噴射量Fiの燃料が吸気行程を迎える気筒に対して噴射される。
【0070】
次に、上記空燃比フィードバック補正量DFiの算出について説明すると、CPU71は図7に示したルーチンを所定時間の経過毎に繰り返し実行している。従って、所定のタイミングになると、CPU71はステップ700から処理を開始し、ステップ705に進んでフィードバック制御条件が成立しているか否かを判定する。空燃比フィードバック制御条件は、例えば、機関の冷却水温THWが第1所定温度以上であり、機関の一回転当りの吸入空気量(負荷)が所定値以下であり、最上流空燃比センサ66が正常であり、且つ、後述する空燃比切換制御実行中フラグXHANの値が「0」のときに成立する。なお、空燃比切換制御実行中フラグXHANは、後述するように、その値が「1」のとき空燃比センサ状態判定及び触媒劣化判定のために強制的に空燃比を変更する空燃比制御を実行していることを示し、その値が「0」のとき同空燃比センサ状態判定及び同触媒劣化判定のための空燃比制御を実行していないことを示す。
【0071】
いま、空燃比フィードバック制御条件が成立しているものとして説明を続けると、CPU71はステップ705にて「Yes」と判定してステップ710に進み、現時点の最上流空燃比センサ66の出力vabyfsと後述するサブフィードバック制御量vafsfbとの和(vabyfs+vafsfb)を図3(a)に示したマップに基いて変換することにより、現時点における第1触媒53の上流側制御用空燃比abyfsを求める。
【0072】
次に、CPU71はステップ715に進み、現時点からNストローク(N回の吸気行程)前に吸気行程を迎えた気筒の吸入空気量である筒内吸入空気量Mc(k−N)を前記求めた上流側制御用空燃比abyfsで除することにより、現時点からNストローク前の筒内燃料供給量Fc(k−N)を求める。値Nは、内燃機関の排気量、燃焼室25から最上流空燃比センサ66までの距離等により異なる値である。
【0073】
このように、現時点からNストローク前の筒内燃料供給量Fc(k−N)を求めるために、現時点からNストローク前の筒内吸入空気量Mc(k−N)を上流側制御用空燃比abyfsで除するのは、燃焼室25内で燃焼された混合気が最上流空燃比センサ66に到達するまでには、Nストロークに相当する時間を要しているからである。なお、筒内吸入空気量Mcは、各気筒の吸気行程毎に、その時点のエアフローメータ61の出力AFMと、エンジン回転速度NEとに基いて求められ(例えば、エアフローメータ61の出力AFMに一次遅れ処理を施した値をエンジン回転速度NEで除することにより求められ)、各吸気行程に対応してRAM73内に記憶されている。
【0074】
次いで、CPU71はステップ720に進み、現時点からNストローク前の筒内吸入空気量Mc(k−N)を現時点からNストローク前の時点における目標空燃比abyfr(k−N)(この例では、理論空燃比)で除することにより、現時点からNストローク前の目標筒内燃料供給量Fcr(k−N)を求める。そして、CPU71はステップ725に進んで目標筒内燃料供給量Fcr(k−N)から筒内燃料供給量Fc(k−N)を減じた値を筒内燃料供給量偏差DFcとして設定する。つまり、筒内燃料供給量偏差DFcは、Nストローク前の時点で筒内に供給された燃料の過不足分を表す量となる。次に、CPU71はステップ730に進み、下記数7に基いて空燃比フィードバック補正量DFiを求める。
【0075】
【数7】
DFi=(Gp・DFc+Gi・SDFc)・KFB
【0076】
上記数7において、Gpは予め設定された比例ゲイン、Giは予め設定された積分ゲインである。なお、数7の係数KFBはエンジン回転速度NE、及び筒内吸入空気量Mc等により可変とすることが好適であるが、ここでは「1」としている。また、値SDFcは筒内燃料供給量偏差DFcの積分値であり、次のステップ735にて更新される。即ち、CPU71は、ステップ735にてその時点における筒内燃料供給量偏差DFcの積分値SDFcに上記ステップ725にて求めた筒内燃料供給量偏差DFcを加えて、新たな筒内燃料供給量偏差の積分値SDFcを求め、ステップ795にて本ルーチンを一旦終了する。
【0077】
以上により、空燃比フィードバック補正量DFiが比例積分制御により求められ、この空燃比フィードバック補正量DFiが前述した図6のステップ610、及びステップ615により燃料噴射量に反映されるので、Nストローク前の燃料供給量の過不足が補償され、空燃比の平均値が目標空燃比abyfrと略一致せしめられる。
【0078】
一方、ステップ705の判定時において、空燃比フィードバック制御条件が不成立であると、CPU71は同ステップ705にて「No」と判定してステップ740に進み、空燃比フィードバック補正量DFiの値を「0」に設定し、ステップ795に進んで本ルーチンを一旦終了する。このように、空燃比フィードバック制御条件が不成立であるとき(空燃比切換制御実行中を含む)は、空燃比フィードバック補正量DFiを「0」として空燃比(基本燃料噴射量Fbase)の補正を行わない。
【0079】
次に、第1触媒下流空燃比センサ67の出力Voxs1に基く空燃比フィードバック制御について説明する。なお、かかる制御はサブフィードバック制御とも呼ばれる。このサブフィードバック制御により、サブフィードバック制御量vafsfbが算出される。
【0080】
CPU71は、サブフィードバック制御量vafsfbを求めるために、図8に示したルーチンを所定時間の経過毎に実行している。従って、所定のタイミングになると、CPU71はステップ800から処理を開始し、ステップ805に進んでサブフィードバック制御条件が成立しているか否かを判定する。サブフィードバック制御条件は、例えば、前述したステップ705での空燃比フィードバック制御条件に加え、機関の冷却水温THWが前記第1所定温度よりも高い第2所定温度以上のとき、及び第1触媒下流空燃比センサ67が正常であるときに成立する。
【0081】
いま、サブフィードバック制御条件が成立しているものとして説明を続けると、CPU71はステップ805にて「Yes」と判定してステップ810に進み、所定の目標値Voxrefから現時点の第1触媒下流空燃比センサ67の出力Voxs1を減じることにより、出力偏差量DVoxsを求める。この目標値Voxsrefは、第1触媒53の浄化効率が良好(最良)となるように定められ、ここでは、理論空燃比に対応した値に設定されている。次に、CPU71はステップ815に進み、下記数8に基いてサブフィードバック制御量vafsfbを求める。
【0082】
【数8】
vafsfb=Kp・DVoxs+Ki・SDVoxs
【0083】
上記数8において、Kpは予め設定された比例ゲイン、Kiは予め設定された積分ゲインである。また、SDVoxsは、出力偏差量DVoxsの積分値であって、次のステップ820にて更新される値である。即ち、CPU71は、ステップ820に進むと、その時点における出力偏差量の積分値SDVoxsに上記ステップ810にて求めた出力偏差量DVoxsを加えて、新たな出力偏差量の積分値SDVoxsを求め、その後、ステップ895に進んで本ルーチンを一旦終了する。
【0084】
このようにして、サブフィードバック制御量vafsfbが求められ、この値は前述した図7のステップ710にて最上流空燃比センサ66の実際の出力に加えられ、その和(vabyfs + vafsfb)が図3(a)に示したマップに基いて前記上流側制御用空燃比abyfsに変換される。換言すると、第1触媒下流空燃比センサ67の出力Voxs1に基いて求められる上流側制御用空燃比abyfsは、最上流空燃比センサ66が実際に検出している空燃比に対して、サブフィードバック制御量vafsfbに相当する分だけ異なる空燃比として求められる。
【0085】
この結果、前述した図7のステップ715にて計算される筒内燃料供給量Fc(k−N)が第1触媒下流空燃比センサ67の出力Voxs1に応じて変化するので、ステップ725,730によって空燃比フィードバック補正量DFiが同第1触媒下流空燃比センサ67の出力Voxs1に応じて変更せしめられる。これにより、第1触媒53の下流側の空燃比が目標値Voxsrefに一致するように、機関の空燃比が制御せしめられる。
【0086】
例えば、機関の平均的な空燃比がリーンであるために第1触媒下流空燃比センサ67の出力Voxs1が理論空燃比よりもリーンである空燃比に対応した値を示すと、ステップ810にて求められる出力偏差量DVoxsが正の値となるので、ステップ815にて求められるサブフィードバック制御量vafsfbは正の値となる。従って、ステップ710にて求められるabyfsは最上流空燃比センサ66が実際に検出している空燃比よりもリーンな値(より大きな値)として求められる。このため、ステップ715にて求められる筒内燃料供給量Fc(k−N)は小さい値となり、筒内燃料供給量偏差DFcは大きい値として求められるので、空燃比フィードバック補正量DFiが大きい正の値となる。これにより、図6のステップ610にて求められる最終燃料噴射量Fiは、基本燃料噴射量Fbaseよりも大きくなって、機関の空燃比がリッチとなるように制御される。
【0087】
反対に、機関の平均的な空燃比がリッチであるために第1触媒下流空燃比センサ67の出力Voxs1が理論空燃比よりもリッチである空燃比に対応した値を示すと、ステップ810にて求められる出力偏差量DVoxsが負の値となるので、ステップ815にて求められるサブフィードバック制御量vafsfbは負の値となる。従って、ステップ710にて求められるabyfsは最上流空燃比センサ66が実際に検出している空燃比よりもリッチな値(より小さな値)として求められる。このため、ステップ715にて求められる筒内燃料供給量Fc(k−N)は大きい値となり、筒内燃料供給量偏差DFcは負の値として求められるので、空燃比フィードバック補正量DFiが負の値となる。これにより、図6のステップ610にて求められる最終燃料噴射量Fiは、基本燃料噴射量Fbaseよりも小さくなって、機関の空燃比がリーンとなるように制御される。
【0088】
このように、第1触媒53の下流側の空燃比が理論空燃比に極めて近い状態になるように制御されるので、第1,第2触媒53,54の各々が劣化して最大酸素吸蔵量CSCmax及び最大酸素吸蔵量CUFmaxが低下した場合であっても、エミッションが良好に維持される。
【0089】
一方、ステップ805の判定時において、サブフィードバック制御条件が不成立であると、CPU71は同ステップ805にて「No」と判定してステップ825に進み、サブフィードバック制御量vafsfbの値を「0」に設定し、ステップ895に進んで本ルーチンを一旦終了する。このように、サブフィードバック制御条件が不成立であるとき(空燃比切換制御実行中を含む)は、サブフィードバック制御量vafsfbを「0」として第1触媒下流空燃比センサ67の出力Voxs1に基く空燃比フィードバック補正量DFi(上流側制御用空燃比abyfs)の補正を行わない。以上のように、通常の空燃比制御が実行される。
【0090】
(空燃比センサ状態判定及び触媒劣化判定のための空燃比制御)
次に、空燃比センサ状態判定及び触媒劣化の判定を行うための空燃比切換制御について説明する。CPU71は図9〜図16のフローチャートにより示された各ルーチンを所定時間の経過毎に実行するようになっている。
【0091】
従って、所定のタイミングになると、CPU71は図9のステップ900から処理を開始し、ステップ905に進んで空燃比切換制御実行中フラグXHANの値が「0」であるか否かを判定する。いま、空燃比センサ状態判定及び触媒劣化判定のための空燃比切換制御を行っておらず、且つ、判定条件が成立していないとして説明を続けると、空燃比切換制御実行中フラグXHANの値は「0」となっている。従って、CPU71はステップ905にて「Yes」と判定してステップ910に進み、先に説明した図6のステップ610にて使用される係数Kの値を1.00に設定する。
【0092】
次いで、CPU71はステップ915にて判定条件が成立しているか否かを判定する。この判定条件は、冷却水温THWが所定温度以上であり、図示しない車速センサにより得られた車速が所定の高車速以上であり、スロットル弁開度TAの単位時間あたりの変化量が所定量以下である、機関が定常運転されている場合に成立する。更に、この判定条件に、前回の空燃比センサ状態判定及び触媒劣化判定から所定時間以上が経過したこと、前回の空燃比センサ状態判定及び触媒劣化判定から車両が所定距離以上運転されたこと、前回の空燃比センサ状態判定及び触媒劣化判定から内燃機関10が所定時間以上運転されたことの任意の一つ、又は一つ以上を判定条件に加えても良い。現段階では、上述したように、判定条件は成立していないから、CPU71はステップ915にて「No」と判定してステップ995に進み、本ルーチンを一旦終了する。
【0093】
次に、先に説明した図5の時刻t1のように、その時点では空燃比センサ状態判定及び触媒劣化判定のための空燃比制御を行っていないが、判定条件が成立したものとして説明を続けると、この場合、CPU71はステップ905にて「Yes」と判定してステップ910に進み、同ステップ910にて係数Kの値を1.00に設定する。次いで、CPU71は、判定条件が成立しているので、ステップ915にて「Yes」と判定してステップ920に進み、同ステップ920にて空燃比切換制御実行中フラグXHANの値を「1」に設定する。
【0094】
そして、CPU71はステップ925に進み、第1モードに移行するためにModeの値を「1」に設定するとともに、続くステップ930にて係数Kの値を0.98に設定し、ステップ995に進んで本ルーチンを一旦終了する。これにより、前述の空燃比フィードバック制御条件が成立しなくなるから、CPU71は図7のステップ705にて「No」と判定してステップ740に進むようになり、空燃比フィードバック補正量DFiの値は0に設定される。この結果、図6のステップ610の実行により、基本燃料噴射量Fbaseが0.98倍された値が最終燃料噴射量Fiとして算出され、この最終燃料噴射量Fiの燃料が噴射されるので、機関の空燃比は理論空燃比よりもリーンな前記所定のリーン空燃比に制御される。
【0095】
以降、CPU71は図9のルーチンの処理をステップ900から繰り返し実行するが、空燃比切換制御実行中フラグXHANの値が「1」となっていることから、ステップ905にて「No」と判定して直ちにステップ995に進み、本ルーチンを一旦終了するようになる。
【0096】
一方、CPU71は図10に示した第1モード制御ルーチンを所定時間の経過毎に繰り返し実行している。従って、所定のタイミングとなると、CPU71はステップ1000から処理を開始してステップ1005に進み、Modeの値が「1」であるか否かを判定する。この場合、先の図9のステップ925の処理によりModeの値は「1」となっているので、CPU71はステップ1005にて「Yes」と判定してステップ1010に進み、第1触媒下流空燃比センサの出力Voxs1が理論空燃比よりもリッチな空燃比を示す値から同理論空燃比よりもリーンな空燃比を示す値に変化したか否かを判定する。現時点では、機関の空燃比を所定のリーン空燃比に変更した直後であるから、第1触媒下流空燃比センサ出力Voxs1は理論空燃比よりもリッチな空燃比を示している。従って、CPU71はステップ1010にて「No」と判定し、ステップ1095にて本ルーチンを一旦終了する。
【0097】
以降、CPU71は図10のステップ1000〜1010を繰り返し実行する。また、空燃比は所定のリーン空燃比に維持されているから、所定の時間が経過すると図5の時刻t2のように第1触媒下流空燃比センサ出力Voxs1はリッチを示す値からリーンを示す値に変化する。これにより、CPU71はステップ1010に進んだとき、同ステップ1010にて「Yes」と判定してステップ1015に進み、Modeの値を「2」に設定し、その後ステップ1095にて本ルーチンを一旦終了する。
【0098】
この結果、係数Kの値は0.98に維持されたままであるので、図6のステップ610の実行により、基本燃料噴射量Fbaseが0.98倍された値が継続して最終燃料噴射量Fiとして算出され、この最終燃料噴射量Fiの燃料が噴射されるので、機関の空燃比は第1モードに引き続き前記所定のリーン空燃比に制御される。
【0099】
CPU71は、第2モード(Mode=2)となると、以降、同様なモード制御を実行し、モードを第3モードから第4モードへと順次切換えるとともに、各モードに応じた制御を実行して行く。簡単に説明すると、図11にそのルーチンをフローチャートにより示した第2モードにおいては、ステップ1105にてModeの値が「2」であるか否かを判定し、Modeの値が「2」であればステップ1105からステップ1110に進み、同ステップ1110にて第2触媒下流空燃比センサ68の出力Voxs2が理論空燃比よりリッチな空燃比を示す値から同理論空燃比よりリーンな空燃比を示す値に変化したか否かをモニタする。
【0100】
そして、図5の時刻t3に示したように、第2触媒下流空燃比センサ68の出力Voxs2が理論空燃比よりリッチな空燃比を示す値から同理論空燃比よりリーンな空燃比を示す値に変化すると、ステップ1115に進んで第3モードに移行すべくModeの値を「3」に設定し、続くステップ1120にて係数Kの値を1.02に設定する。この結果、機関の空燃比が理論空燃比よりリッチな前記所定のリッチ空燃比に制御される。
【0101】
同様に、図12にそのルーチンをフローチャートにより示した第3モードにおいては、ステップ1205にてModeの値が「3」であるか否かを判定し、Modeの値が「3」であればステップ1205からステップ1210に進み、同ステップ1210にて第1触媒下流空燃比センサ67の出力Voxs1が理論空燃比よりリーンな空燃比を示す値から同理論空燃比よりリッチな空燃比を示す値に変化したか否かをモニタする。
【0102】
そして、図5の時刻t4に示したように、第1触媒下流空燃比センサ67の出力Voxs1が理論空燃比よりリーンな空燃比を示す値から同理論空燃比よりリッチな空燃比を示す値に変化すると、ステップ1210からステップ1215に進んで第4モードに移行すべくModeの値を「4」に設定する。この結果、係数Kの値は1.02に維持されたままであるので、機関の空燃比は第3モードに引き続き前記所定のリッチ空燃比に制御される。
【0103】
同様に、図13にそのルーチンをフローチャートにより示した第4モードにおいては、ステップ1305にてModeの値が「4」であるか否かを判定し、Modeの値が「4」であればステップ1305からステップ1310に進み、同ステップ1310にて第2触媒下流空燃比センサ68の出力Voxs2が理論空燃比よりリーンな空燃比を示す値から同理論空燃比よりリッチな空燃比を示す値に変化したか否かをモニタする。
【0104】
そして、図5の時刻t5に示したように、第2触媒下流空燃比センサ68の出力Voxs2が理論空燃比よりリーンな空燃比を示す値から同理論空燃比よりリッチな空燃比を示す値に変化すると、ステップ1310からステップ1315に進み、Modeの値を「0」に再設定し、続くステップ1320にて空燃比切換制御実行中フラグXHANの値を「0」に設定した後、ステップ1395に進んで本ルーチンを一旦終了する。これにより、CPU71は図9のルーチンを実行する際、ステップ905にて「Yes」と判定してステップ910に進むので、係数Kの値が1.00に戻される。また、他の空燃比フィードバック制御条件、及び他のサブフィードバック制御条件が成立していれば、CPU71はステップ705、及びステップ805にて「Yes」と判定するから、空燃比フィードバック制御、及びサブフィードバック制御が再開される。
【0105】
以上、説明したように、判定条件が成立すると、機関の空燃比が所定のリーン空燃比、所定のリッチ空燃比の順に1回づつ強制的に制御される。
【0106】
(酸素吸蔵量の算出)
次に、空燃比センサ状態の判定及び触媒劣化の判定を行うための最大酸素吸蔵量の算出(検出)における作動について説明する。CPU71は図14のフローチャートにより示されたルーチンを所定時間の経過毎に実行するようになっている。
【0107】
従って、所定のタイミングになると、CPU71は図14のステップ1400から処理を開始し、ステップ1405に進んで下記数9により酸素吸蔵量変化量ΔO2を求める。
【0108】
【数9】
ΔO2=0.23・mfr・(stoich − abyfs)
【0109】
次いで、CPU71はステップ1410に進んでModeの値が「3」であるか否かを判定し、Modeの値が「3」であれば同ステップ1410にて「Yes」と判定してステップ1415に進む。そして、CPU71は、ステップ1415にてその時点の第3モードの酸素吸蔵量OSA3に上記酸素吸蔵量変化量ΔO2を加えた値を新たな酸素吸蔵量OSA3として設定し、その後ステップ1430に進む。
【0110】
このような処置(ステップ1400〜1415)は、Modeの値が「3」である限り繰り返し実行される。この結果、第1触媒53の上流の空燃比が所定のリッチ空燃比とされる第3モード(Mode=3)において、第1触媒53の酸素吸蔵量OSA3が算出されて行く。なお、ステップ1410での判定において「No」と判定される場合、CPU71は同ステップ1410からステップ1420に直接進む。
【0111】
CPU71は、ステップ1420に進んだ場合、Modeの値が「4」であるか否かを判定し、Modeの値が「4」であれば同ステップ1420にて「Yes」と判定してステップ1425に進む。そして、CPU71は、ステップ1425にてその時点の第4モードの酸素吸蔵量OSA4に上記酸素吸蔵量変化量ΔO2を加えた値を新たな酸素吸蔵量OSA4として設定し、その後ステップ1430に進む。
【0112】
このような処置(ステップ1400,1405,1410,1420,1425)は、Modeの値が「4」である限り繰り返し実行される。この結果、第1触媒53の上流の空燃比が所定のリッチ空燃比とされる第4モード(Mode=4)において、第2触媒54の酸素吸蔵量OSA4が算出されて行く。なお、ステップ1420での判定において「No」と判定される場合、CPU71は同ステップ1420からステップ1430に直接進む。
【0113】
そして、CPU71は、ステップ1430に進むと、同ステップ1430にて燃料噴射量Fiの合計量mfrを「0」に設定し、その後ステップ1495に進んで本ルーチンを一旦終了する。
【0114】
(失火発生回数の検出)
次に、内燃機関10において発生した失火回数の検出における作動について説明する。CPU71は図15のフローチャートにより示されたルーチンを所定時間の経過毎に実行するようになっている。
【0115】
従って、所定のタイミングになると、CPU71は図15のステップ1500から処理を開始し、ステップ1505に進んで、現時点より所定時間前から現時点までの間に4つの気筒のいずれかにおいて失火が発生したか否かを判定する。具体的に述べると、CPU71は、現時点より所定時間前から現時点までの間において、任意の気筒が爆発行程に移行する度に、同気筒の爆発行程中にてクランク軸24が一定クランク角度回転するのに要する経過時間を検出しておき、検出した複数の経過時間のうちの所定の2つの経過時間の偏差が所定値を超えていれば、失火が発生したと判定する。かかる失火発生の検出方法の詳細については周知であるので、ここではその詳細な説明を省略する。このステップ1505は、失火発生検出手段に対応している。
【0116】
CPU71は、ステップ1505にて失火が発生していないと判定したとき、同ステップ1505からステップ1595に直接進んで本ルーチンを一旦終了する。一方、ステップ1505にて失火が発生したと判定したとき、CPU71はステップ1510に進んで、その時点での失火発生回数Nmisfireの値に「1」を加えた値を新たな失火発生回数Nmisfireとして設定した後、ステップ1595に進んで本ルーチンを一旦終了する。
【0117】
このようにして、本ルーチンが繰り返し実行される度に、失火が発生したか否かが判定されるとともに、失火が発生したと判定されると失火発生回数Nmisfireの値が「1」づつ増大していく。この失火発生回数Nmisfireの値はバックアップRAM74に格納されており、内燃機関10が初めて運転を開始した時点で「0」に設定されるとともにその後一度もクリアされることがないので、内燃機関10が初めて運転を開始した時点からの延べ失火発生回数を示している。
【0118】
(空燃比センサ状態の判定及び触媒劣化判定)
次に、空燃比センサ状態の判定及び触媒劣化判定における作動について説明する。CPU71は図16のフローチャートにより示されたルーチンを所定時間の経過毎に実行するようになっている。
【0119】
従って、所定のタイミングになると、CPU71は図16のステップ1600から処理を開始し、ステップ1605に進んで空燃比切換制御実行中フラグXHANの値が「1」から「0」に変化したか否かをモニタする。このとき、第4モードが終了して、先に説明した図13のステップ1320にて空燃比切換制御実行中フラグXHANの値が「0」に変更されると、CPU71はステップ1605にて「Yes」と判定してステップ1610に進む。ここで、空燃比切換制御実行中フラグXHANの値が変化していなければ、CPU71はステップ1605からステップ1695に直接進んで本ルーチンを一旦終了する。
【0120】
いま、第4モードが終了した直後であるとすると、空燃比切換制御実行中フラグXHANの値が「1」から「0」に変更された直後であるから、CPU71はステップ1605からステップ1610に進み、その時点の酸素吸蔵量OSA3及びOSA4を、それぞれ最大酸素吸蔵量CSCmax及びCUFmaxとして格納する。このステップ1610は、第1触媒劣化指標値検出手段及び第2触媒劣化指標値検出手段に対応している。
【0121】
次いで、CPU71はステップ1615に進み、同ステップ1615内に記載した上記数5に示す条件が成立しているか否かを判定する。このときに使用される失火発生回数Nmisfireの値は上述した図15のルーチンの実行により現時点で得られている最新値である。ここで、ステップ1615は、空燃比センサ状態判定手段及び基準値変更手段に対応している。
【0122】
いま、上記数5に示す条件が成立しているものとして説明を続けると、CPU71はステップ1620に進んで、空燃比センサ状態判定結果フラグXSENRの値を「0」に設定し、これにより最上流空燃比センサ66,第1触媒下流空燃比センサ67,及び第2触媒下流空燃比センサ68の全てが正常であることを示す。
【0123】
次に、CPU71はステップ1625に進み、最大酸素吸蔵量CSCmaxが第1触媒劣化判定基準値CSCR以下であるか否かを判定し、最大酸素吸蔵量CSCmaxが第1触媒劣化判定基準値CSCR以下であるとき、ステップ1630にて第1触媒劣化判定結果フラグXSCRの値を「1」に設定し、これにより第1触媒53が劣化したことを示す。他方、ステップ1625の判定時において、最大酸素吸蔵量CSCmaxが第1触媒劣化判定基準値CSCRより大きいとき、CPU71はステップ1635に進んで第1触媒劣化判定結果フラグXSCRの値を「0」に設定し、これにより第1触媒53が劣化していないことを示す。ここで、ステップ1625は、第1触媒劣化判定手段に対応している。
【0124】
次いで、CPU71はステップ1640に進み、最大酸素吸蔵量CUFmaxが第2触媒劣化判定基準値CUFR以下であるか否かを判定する。そして、触媒最大酸素吸蔵量CUFmaxが第2触媒劣化判定基準値CUFR以下であるとき、CPU71はステップ1645にて第2触媒劣化判定結果フラグXUFRの値を「1」に設定し、これにより第2触媒54が劣化したことを示す。他方、ステップ1640の判定時において、最大酸素吸蔵量CUFmaxが第2触媒劣化判定基準値CUFRより大きいとき、CPU71はステップ1650に進んで第2触媒劣化判定結果フラグXUFRの値を「0」に設定し、これにより第2触媒54が劣化していないことを示す。ここで、ステップ1640は、第2触媒劣化判定手段に対応している。
【0125】
次に、CPU71はステップ1655に進んで第1触媒53の最大酸素吸蔵量CSCmaxと第2触媒54の最大酸素吸蔵量CUFmaxとの和が触媒全体劣化判定基準値CR以下であるか否かを判定する。そして、CPU71は、前記和が触媒全体劣化判定基準値CR以下であるとき、ステップ1660にて触媒全体判定結果フラグXALLRの値を「1」に設定し、これにより第1触媒53及び第2触媒54が全体として劣化したことを示す。他方、ステップ1655の判定時において、前記和が触媒全体劣化判定基準値CRより大きいとき、CPU71はステップ1665に進んで触媒全体判定結果フラグXALLRの値を「0」に設定し、これにより第1触媒53及び第2触媒54が全体としては劣化していないことを示す。
【0126】
次いで、CPU71はステップ1670に進み、酸素吸蔵量OSA3及びOSA4の各々の値を「0」に設定し、ステップ1695に進んで本ルーチンを一旦終了する。このようにして、空燃比センサが正常であると判定された場合は、第1,第2触媒53,54の各最大酸素吸蔵量CSCmax,CUFmax、及びそれらの和がそれぞれ対応する基準値以下であるか否かが判定され、対応する基準値以下であるとき、対応する触媒が劣化したものと判定される。
【0127】
一方、ステップ1615の判定時において、上記数5に示す条件が成立していなければ、ステップ1675にて空燃比センサ状態判定結果フラグXSENRの値を「1」に設定し、これにより最上流空燃比センサ66,第1触媒下流空燃比センサ67,及び第2触媒下流空燃比センサ68のいずれか一つ以上が異常であることを示す。
【0128】
次いで、CPU71はステップ1680に進んで、第1触媒劣化判定結果フラグXSCR,第2触媒劣化判定結果フラグXUFR及び触媒全体判定結果フラグXALLRの各々の値を総て「2」に設定し、これにより第1触媒53,第2触媒54,並びに第1触媒53及び第2触媒54を全体として一つの触媒と見なしたときの触媒の各々について、総て劣化判定が行われていないことを示す。
【0129】
そして、CPU71はステップ1670に進んで、酸素吸蔵量OSA3及びOSA4の各々の値を「0」に設定した後、ステップ1695に進んで本ルーチンを一旦終了する。このようにして、空燃比センサが異常であると判定された場合は、第1触媒53,第2触媒54,並びに第1触媒53及び第2触媒54を全体として一つの触媒と見なしたときの触媒の各々について、総て劣化判定が行われない。
【0130】
以上、説明したように、本発明による空燃比センサ状態判定装置によれば、最上流空燃比センサ66の出力vabyfs及び第2触媒下流空燃比センサ68の出力Voxs2の変化に基いて検出される第2触媒の最大酸素吸蔵量CUFmaxと最上流空燃比センサ66の出力vabyfs及び第1触媒下流空燃比センサ67の出力Voxs1の変化に基いて検出される第1触媒の最大酸素吸蔵量CSCmaxとの偏差と空燃比センサ状態判定基準値とを比較することで、最上流空燃比センサ66,第1触媒下流空燃比センサ67,及び第2触媒下流空燃比センサ68について正常であるという判定又は異常であるという判定を行うことができた。従って、空燃比センサの異常を検出するための専用の機械的な装置を新たに追加することなく簡易な構成で同空燃比センサの状態を判定することができた。
【0131】
また、上記空燃比センサ状態判定基準値は、正の一定値である最大酸素吸蔵量偏差正常限界値ΔCRに内燃機関10における全ての失火発生回数Nmisfireに応じた値が加算された値となっている。換言すれば、上記空燃比センサ状態判定基準値は内燃機関10の4つの気筒において失火が発生する毎に大きくなる。ここで、先に説明したように、第1触媒53及び第2触媒54は4つの気筒の全てと接続されているので内燃機関10にて発生した全ての失火の影響を受ける。この結果、第1触媒53の劣化度と第2触媒54の劣化度との間の相違の程度は失火発生回数Nmisfireに応じて大きくなる。従って、空燃比センサが正常であっても同空燃比センサが異常であると誤判定されることが防止され、同空燃比センサが正常であるという判定又は異常であるという判定をより精度よく行うことができた。
【0132】
さらには、空燃比センサが異常であるという判定が行われた場合、第1触媒53及び第2触媒54の劣化判定を禁止させるように構成されている。従って、第1触媒53及び第2触媒54が劣化したか否かを判定する際、誤判定がなされる事態が発生することを防止できた。
【0133】
本発明は上記実施形態に限定されることはなく、本発明の範囲内において種々の変形例を採用することができる。例えば、上記実施形態においては、第1触媒劣化指標値と第2触媒劣化指標値との間の相違の程度を示す値として第2触媒54の最大酸素吸蔵量CUFmaxから第1触媒53の最大酸素吸蔵量CSCmaxを減じた値を採用していたが、第2触媒54の最大酸素吸蔵量CUFmaxに対する第1触媒53の最大酸素吸蔵量CSCmaxの比(割合)又は第1触媒53の最大酸素吸蔵量CSCmaxに対する第2触媒54の最大酸素吸蔵量CUFmaxの比(割合を採用してもよい。
【0134】
また、上記実施形態においては、上記空燃比センサ状態判定基準値を内燃機関10が初めて運転を開始した時点からの延べ運転時間に応じて変更するように構成してもよい。具体的には、上記空燃比センサ状態判定基準値を算出する基準となる最大酸素吸蔵量偏差正常限界値ΔCRは正の一定値となっているが、内燃機関10が初めて運転を開始した時点からの延べ運転時間が長くなるにつれて大きくなるように構成することが好適である。この理由は以下のとおりである。
【0135】
即ち、内燃機関において失火が発生していない正常燃焼時においても、未燃ガス中に含まれる鉛や硫黄等が機関の排気ポート34から流出してくることがある。よって、第2触媒54に比べて排気ポート34に近い位置に配設されている第1触媒53には、同第2触媒に比して定常的に鉛や硫黄等がより多く流入し、定常的にも第1触媒53の劣化は第2触媒54の劣化よりも速く進行する傾向がある。この結果、内燃機関10の延べ運転時間が長くなるにつれて第1触媒の劣化度と第2触媒の劣化度との間の相違の程度は大きくなる。従って、最大酸素吸蔵量偏差正常限界値ΔCRを内燃機関10の延べ運転時間が長くなるにつれて大きくなるようにすれば、空燃比センサが正常であるという判定又は異常であるという判定をさらに一層高精度に行うことができるからである。
【0136】
また、上記実施形態においては、触媒の最大酸素吸蔵量を触媒の劣化指標値として空燃比センサ状態の判定及び触媒劣化の判定に用いていたが、例えば、上記サブフィードバック制御中において上流側空燃比センサの出力が描く軌跡長と下流側空燃比センサの出力が描く軌跡長との比(軌跡比)、上記サブフィードバック制御中において上流側空燃比センサの出力が理論空燃比相当値を横切る頻度と下流側空燃比センサの出力が理論空燃比相当値を横切る頻度との比(反転比)、及び、上記サブフィードバック制御中において上流側空燃比センサの出力が描く軌跡と理論空燃比相当値との間で形成される面積と下流側空燃比センサの出力が描く軌跡と理論空燃比相当値との間で形成される面積との比(面積比)等の触媒の劣化の程度に応じて変化する他の指標値(劣化指標値)を用いて、空燃比センサ状態の判定及び、触媒劣化の判定をするように構成してもよい。ここで、上流側空燃比センサ,下流側空燃比センサは、第1触媒53については最上流空燃比センサ66,第1触媒下流空燃比センサ67にそれぞれ対応し、第2触媒54については第1触媒下流空燃比センサ67,第2触媒下流空燃比センサ68にそれぞれ対応している。
【0137】
また、上記実施形態においては、第1触媒53及び第2触媒54が同じ排気通路(エキゾーストパイプ52)に直列に配設されているが、第1触媒53及び第2触媒54を異なる排気通路にそれぞれ並列に配設してもよい。この場合、失火発生検出手段は、第1触媒53が配設されている排気通路に接続される気筒(群)において発生した失火発生回数と第2触媒54が配設されている排気通路に接続される気筒(群)において発生した失火発生回数とを互いに独立して検出できるように構成され、基準値変更手段は、2つの失火発生回数の偏差に応じて空燃比センサ状態判定基準値を変更するように構成されることが好適である。
【0138】
第1触媒53と第2触媒54が異なる排気通路にそれぞれ並列に配設されている場合、第1触媒53の劣化度と第2触媒54の劣化度との間の相違の程度は上記2つの失火発生回数の偏差に応じて大きくなる。従って、上記のように、上記2つの失火発生回数の偏差に応じて空燃比センサ状態判定基準値を変更するように構成すれば、空燃比センサが正常であっても同空燃比センサが異常であると誤判定されることが防止され、同空燃比センサが正常であるという判定又は異常であるという判定をより精度よく行うことができるからである。
【0139】
また、上記実施形態においては、図9のステップ915の判定条件が成立したときに、その時点の第1触媒下流空燃比センサ出力Voxs1、及び第2触媒下流空燃比センサ出力Voxs2に拘らず図5の第1モードから制御を開始していたが、同判定条件成立時における第1触媒下流空燃比センサ出力Voxs1、及び第2触媒下流空燃比センサ出力Voxs2に応じて、酸素吸蔵量検出のために最初に設定される第1触媒上流空燃比を異なる空燃比に設定すること(初めに実行するモードを変更すること)が、エミッションを低減する上で好ましい。
【0140】
具体的に述べると、前記判定条件が成立したとき、第1触媒下流空燃比センサ出力Voxs1、及び第2触媒下流空燃比センサ出力Voxs2が共にリッチな空燃比であることを示している場合には、上記実施形態のとおり、第1モードから第1触媒上流空燃比の制御を始める。即ち、第1触媒上流空燃比を所定のリーン空燃比とする。
【0141】
一方、前記判定条件が成立したとき、第1触媒下流空燃比センサ出力Voxs1がリーン、及び第2触媒下流空燃比センサ出力Voxs2がリッチであることを示している場合、第1モードと同様に第1触媒上流空燃比を所定のリーン空燃比とする第2モードから制御を開始する。
【0142】
また、前記判定条件が成立したとき、第1触媒下流空燃比センサ出力Voxs1、及び第2触媒下流空燃比センサ出力Voxs2が共にリーンな空燃比であることを示している場合には、第1触媒上流空燃比を所定のリッチ空燃比とする第3モードから制御を開始する。この場合、最初の第3モード及び次に実行される第4モードにおいて検出される最大酸素吸蔵量は正確ではないので、同最大酸素吸蔵量を空燃比センサ状態の判定等には使用せず、第4モード実行後に図5に破線で示した後述する第5モードの制御及び第6モードの制御を継続して実行することにより、同第5モード及び第6モードにおいて検出された最大酸素吸蔵量を空燃比センサ状態の判定等に使用するように構成することが好適である。
【0143】
更に、前記判定条件が成立したとき、第1触媒下流空燃比センサ出力Voxs1がリッチ、及び第2触媒下流空燃比センサ出力Voxs2がリーンであることを示している場合、第3モードと同様に第1触媒上流空燃比を所定のリッチ空燃比とする第4モードから制御を開始する。この場合も、最初の第4モードにおいて検出される最大酸素吸蔵量は正確ではないので同最大酸素吸蔵量を空燃比センサ状態の判定等には使用せず、第4モード実行後に図5に破線で示した後述する第5モードの制御及び第6モードの制御を継続して実行することにより、同第5モード及び第6モードにおいて検出された最大酸素吸蔵量を空燃比センサ状態の判定等に使用するように構成することが好適である。
【0144】
第4モード実行後にかかる第5モード及び第6モードを継続して実行する場合についてより具体的に述べると、図5の時刻t5に示したように、第2触媒下流空燃比センサ68の出力Voxs2がリーンを示す値からリッチを示す値に変化したとき、CPU71は図5(A)に破線で示したように第1触媒上流空燃比を再び上記所定のリーン空燃比に制御する。これにより、第1触媒53にリーンな空燃比のガスが流入する。また、時刻t5の時点においては、第1触媒53の酸素吸蔵量は「0」となっている。従って、図5(C)に破線で示したように、時刻t5以降において、第1触媒53内の酸素吸蔵量は「0」から増大し続け、時刻t6にて最大酸素吸蔵量CSCmaxに達する。この結果、時刻t6にて、第1触媒53から酸素を含むガスが流出し始め、図5(B)に破線で示したように、第1触媒下流空燃比センサ67の出力Voxs1はリッチを示す値からリーンを示す値に変化する。この時刻t5〜t6間の作動を第5モード(Mode=5)における作動と呼ぶ。
【0145】
CPU71は、かかる時刻t5〜t6間において、以下のようにして第1触媒53の最大酸素吸蔵量CSCmaxを検出する。即ち、第1触媒下流空燃比センサ67の出力Voxs1がリーン空燃比を示す値となった時刻t6では、第1触媒53の酸素吸蔵量が最大酸素吸蔵量CSCmaxに到達したことを意味するから、時刻t5〜t6までの間、下記数10及び下記数11に基いて酸素吸蔵量の変化量ΔO2を算出するとともにこれを積算し、同時刻t6での積算値を最大酸素吸蔵量CSCmaxとして算出する。
【0146】
【数10】
ΔO2=0.23・mfr・(abyfs − stoich)
【0147】
【数11】
CSCmax=ΣΔO2(区間t=t5〜t6)
【0148】
この数10に示したように、所定時間tsample内の噴射量の合計量mfrに、空燃比A/Fの理論空燃比からの偏移(abyfs − stoich)を乗じることで、同所定時間tsampleにおける空気の過剰量が求められ、この空気の過剰量に酸素の重量割合を乗じることで同所定時間tsampleにおける酸素吸蔵量変化量(吸蔵酸素量)ΔO2が求められる。そして、数11に示したように、酸素吸蔵量変化量ΔO2を時刻t5〜t6に渡って積算することで、第1触媒53の酸素吸蔵量が「0」である状態から酸素を最大限に吸蔵するまでの酸素量、即ち最大酸素吸蔵量CSCmaxが算出される。
【0149】
時刻t6にて、第1触媒下流空燃比センサ67の出力Voxs1がリッチを示す値からリーンを示す値に変化した後も、CPU71は、第1触媒上流空燃比を前記所定のリーン空燃比に制御し続ける。この場合、第1触媒53の酸素吸蔵量は最大酸素吸蔵量CSCmaxに到達している。従って、第1触媒53からはリーンな空燃比のガスが流出し、これが第2触媒54内に流入する。一方、時刻t6の時点においては、第2触媒54の酸素吸蔵量は「0」となっている。従って、図5(E)に破線で示したように、時刻t6以降において、第2触媒54内の酸素吸蔵量は「0」から増大し続け、時刻t7にて最大酸素吸蔵量CUFmaxに達する。この結果、時刻t7にて、第2触媒54から酸素を含むガスが流出し始め、図5(D)に破線で示したように、第2触媒下流空燃比センサ68の出力Voxs2はリッチを示す値からリーンを示す値に変化する。この時刻t6〜t7間の作動を第6モード(Mode=6)における作動と呼ぶ。
【0150】
CPU71は、かかる時刻t6〜t7間においても、以下のようにして第2触媒54の最大酸素吸蔵量CUFmaxを検出する。即ち、下記数12及び下記数13に基いて酸素吸蔵量の変化量ΔO2を算出するとともに積分し、同時刻t7での積分値を最大酸素吸蔵量CUFmaxとして算出する。
【0151】
【数12】
ΔO2=0.23・mfr・(abyfs − stoich)
【0152】
【数13】
CUFmax=ΣΔO2(区間t=t6〜t7)
【0153】
そして、CPU71は時刻t7にて機関に吸入される混合気の空燃比を理論空燃比に戻すとともに、同時刻t7以降において、空燃比センサ状態の判定等を行う。このようにして、第5モードにおいて第1触媒53の最大酸素吸蔵量CSCmaxが検出されるとともに、第6モードにおいて第2触媒54の最大酸素吸蔵量CUFmaxが検出される。
【0154】
また、第4モード実行後にかかる第5モード及び第6モードを継続して実行する場合、CPU71は、図13に示した上述した第4モード制御ルーチンに代えて図17に示した第4モード制御ルーチンを所定時間の経過毎に繰り返し実行するとともに、図18に示した第5モード制御ルーチン及び図19に示した第6モード制御ルーチンを所定時間の経過毎に繰り返し実行する必要がある。かかる図17に示した第4モード制御ルーチン,図18に示した第5モード制御ルーチン及び図19に示した第6モード制御ルーチンにおける作動は、先に説明した図10〜図13に示した第1モード〜第4モードにおける作動と類似しているので、ここではその詳細な説明を省略する。
【図面の簡単な説明】
【図1】 本発明による空燃比センサ状態判定装置を搭載した排気浄化装置を内燃機関に適用したシステムの概略図である。
【図2】 図1に示したエアフローメータの出力電圧と計測された吸入空気量との関係を示したマップである。
【図3】 図3(a)は、図1に示した最上流空燃比センサの出力電圧と空燃比との関係を示したマップであり、図3(b)は、図1に示した第1触媒下流空燃比センサ、及び第2触媒下流空燃比センサの出力電圧と空燃比との関係を示したマップである。
【図4】 図1に示した第1触媒及び第2触媒の各々の最大酸素吸蔵量と内燃機関の延べ運転時間との関係を示したグラフである。
【図5】 図1に示した空燃比センサ状態判定装置が各触媒の最大酸素吸蔵量を求める場合の第1触媒上流の空燃比、各空燃比センサの出力、各触媒の酸素吸蔵量の変化を示したタイムチャートである。
【図6】 図1に示したCPUが実行する燃料噴射量計算のためのルーチンを示したフローチャートである。
【図7】 図1に示したCPUが実行する空燃比フィードバック補正量を計算するためのルーチンを示したフローチャートである。
【図8】 図1に示したCPUが実行するサブフィードバック制御量を計算するためのルーチンを示したフローチャートである。
【図9】 図1に示したCPUが実行する空燃比センサ状態の判定を開始するか否かを決定するためのルーチンを示したフローチャートである。
【図10】 図1に示したCPUが実行する第1モードのルーチンを示したフローチャートである。
【図11】 図1に示したCPUが実行する第2モードのルーチンを示したフローチャートである。
【図12】 図1に示したCPUが実行する第3モードのルーチンを示したフローチャートである。
【図13】 図1に示したCPUが実行する第4モードのルーチンを示したフローチャートである。
【図14】 図1に示したCPUが実行する酸素吸蔵量を算出するためのルーチンを示したフローチャートである。
【図15】 図1に示したCPUが実行する失火発生回数を検出するためのルーチンを示したフローチャートである。
【図16】 図1に示したCPUが実行する空燃比センサ状態の判定及び触媒劣化の判定を行うためのルーチンを示したフローチャートである。
【図17】 第4モード実行後に第5モード及び第6モードを継続して実行する場合における、図1に示したCPUが実行する第4モードのルーチンを示したフローチャートである。
【図18】 第4モード実行後に第5モード及び第6モードを継続して実行する場合における、図1に示したCPUが実行する第5モードのルーチンを示したフローチャートである。
【図19】 第4モード実行後に第5モード及び第6モードを継続して実行する場合における、図1に示したCPUが実行する第6モードのルーチンを示したフローチャートである。
【符号の説明】
10…内燃機関、25…燃焼室、39…インジェクタ、52…エキゾーストパイプ(排気管)、53…三元触媒(第1触媒、前段触媒)、54…三元触媒(第2触媒、後段触媒)、66…最上流空燃比センサ、67…第1触媒下流空燃比センサ、68…第2触媒下流空燃比センサ、70…電気制御装置、71…CPU。
【発明の属する技術分野】
本発明は、触媒が配設された内燃機関の排気通路に備えられた空燃比センサの状態を判定するための空燃比センサ状態判定装置に関する。
【0002】
【従来の技術】
従来より、例えば特開2001−234787号公報等に記載されているように、内燃機関の排気通路に第1触媒(三元触媒)を配設し、同第1触媒よりも下流の排気通路に第2触媒(三元触媒)を配設するとともに、同第1触媒よりも上流の排気通路、同第1触媒よりも下流であって同第2触媒よりも上流の排気通路、及び同第2触媒よりも下流の排気通路にそれぞれ排気ガスの空燃比を検出する空燃比センサを配設し、これらの空燃比センサの出力に基いて機関の空燃比をフィードバック制御することによりエミッションを効果的に低減できる内燃機関の排気浄化装置が知られている。
【0003】
【発明が解決しようとする課題】
上記開示された排気浄化装置において空燃比センサが異常となると、期待する空燃比フィードバック制御ができなくなる。このため、各空燃比センサの状態を検出・判定し、空燃比センサが異常であると判定された場合、例えば、空燃比フィードバック制御を停止したり、空燃比センサの交換を促すために警告灯を点灯するなどの処置を行う必要がある。しかしながら、上記開示された装置は、各空燃比センサの状態を検出・判定する構成を有していないので、かかる処置を行うことができないという問題がある。
【0004】
従って、本発明の目的は、触媒が配設された内燃機関の排気通路に備えられた空燃比センサの状態を判定することが可能な空燃比センサ状態判定装置を提供することにある。
【0005】
【本発明の概要】
本発明の特徴は、内燃機関の排気通路に配設された第1触媒と、前記第1触媒よりも下流の前記排気通路に配設されるとともに同第1触媒から流出する排気ガスの空燃比を検出する第1触媒下流空燃比センサと、前記内燃機関の排気通路に配設された第2触媒と、前記第2触媒よりも下流の前記排気通路に配設されるとともに同第2触媒から流出する排気ガスの空燃比を検出する第2触媒下流空燃比センサとを備えた同内燃機関の排気浄化装置に適用され、前記第1触媒下流空燃比センサ及び前記第2触媒下流空燃比センサの状態の判定を行う空燃比センサ状態判定装置が、少なくとも前記第1触媒下流空燃比センサの出力に基いて前記第1触媒の劣化の程度を示す第1触媒劣化指標値を取得する第1触媒劣化指標値取得手段と、少なくとも前記第2触媒下流空燃比センサの出力に基いて前記第2触媒の劣化の程度を示す第2触媒劣化指標値を取得する第2触媒劣化指標値取得手段と、前記第1触媒劣化指標値と前記第2触媒劣化指標値との比較により得られる同第1触媒劣化指標値と同第2触媒劣化指標値との相違の程度を示す値と空燃比センサ状態判定基準値との比較結果に基いて、前記第1触媒下流空燃比センサ及び前記第2触媒下流空燃比センサが正常であるという判定、及び/又は同第1触媒下流空燃比センサ及び同第2触媒下流空燃比センサの少なくとも一つが異常であるという判定を行う空燃比センサ状態判定手段とを備えたことにある。ここにおいて「触媒の劣化指標値」は、例えば、触媒が吸蔵し得る最大の酸素量(以下、「最大酸素吸蔵量」と称呼する。)、又は、触媒の上流側の空燃比センサの出力が描く軌跡長と同触媒の下流側の空燃比センサの出力が描く軌跡長との比(軌跡比)であり、これらに限定されない。
【0006】
三元触媒(本明細書においては、単に「触媒」と云うこともある。)は燃料中に含まれる鉛や硫黄等による被毒、或いは触媒に加わる熱により劣化する一方で、上記のように第1触媒と第2触媒を内燃機関の排気通路に配設した場合(両触媒を同じ排気通路に直列に配設するか異なる排気通路にそれぞれ並列に配設するかに拘わらず)、第1触媒及び第2触媒のいずれか一方のみの劣化が著しく進行することは少なく、第1,第2触媒の劣化はそれぞれ同じような傾向をもって進行していくことが種々の実験等により確認されている。この結果、第1,第2触媒の実際の劣化指標値もそれぞれ同じような傾向をもって変化していく。よって、第1,第2触媒の各々が劣化していく過程に渡り、第1,第2触媒の各々の実際の劣化指標値間の相違の程度は、ある基準となる所定の相違の程度よりも小さくなる。
【0007】
従って、このような前提に基けば、少なくとも第1触媒下流の排気通路に配設された第1触媒下流空燃比センサの出力に基いて取得された第1触媒劣化指標値と少なくとも第2触媒下流の排気通路に配設された第2触媒下流空燃比センサの出力に基いて取得された第2触媒劣化指標値の間の相違の程度が前記所定の相違の程度以上のとき、同第1触媒下流空燃比センサ及び同第2触媒下流空燃比センサの少なくともいずれか一方は異常であると判定され得る。一方、前記取得された第1触媒劣化指標値と前記取得された第2触媒劣化指標値の間の相違の程度が前記所定の相違の程度よりも小さいとき、前記第1触媒下流空燃比センサ及び前記第2触媒下流空燃比センサは正常であると判定され得る。
【0008】
上記本発明の特徴を利用した空燃比センサ状態判定装置は、このような知見に基いて空燃比センサの状態を判定するものである。即ち、本発明における空燃比センサ状態判定手段は、第1触媒下流空燃比センサの出力及び第2触媒下流空燃比センサの出力に少なくとも基いてそれぞれ取得される第1触媒劣化指標値と第2触媒劣化指標値とを比較することにより得られる同第1触媒劣化指標値と同第2触媒劣化指標値の間の相違の程度を示す値と空燃比センサ状態判定基準値とを比較することで、第1触媒下流空燃比センサ及び第2触媒下流空燃比センサが正常であるという判定、及び/又は同第1触媒下流空燃比センサ及び同第2触媒下流空燃比センサの少なくとも一つが異常であるという判定を行う。従って、第1触媒下流空燃比センサ及び第2触媒下流空燃比センサの状態を判定することができる。
【0009】
この場合、上記空燃比センサ状態判定装置が適用される排気浄化装置は、第2触媒が第1触媒下流空燃比センサよりも下流の排気通路に配設されるように構成されていることが好適である。これによれば、第1触媒と第2触媒が内燃機関の排気通路に直列に配設されることになり、同第1触媒及び第2触媒には同じ(一本の)排気通路内の排気ガスが流入する。従って、第1,第2触媒の劣化がより一層同じような傾向をもって進行していくことが保証され得る。この結果、第1触媒下流空燃比センサ及び第2触媒下流空燃比センサの状態をより一層精度良く判定することができる。
【0010】
また、上記空燃比センサ状態判定装置が、内燃機関において失火が発生したことを検出する失火発生検出手段と、前記失火発生検出手段により検出された失火の発生回数に応じて前記空燃比センサ状態判定基準値を変更する基準値変更手段とを備えるように構成されることが好適である。
【0011】
内燃機関のある気筒において失火が発生した場合、一時的に多量の未燃ガスが同気筒に接続されている排気通路に流入するとともに同排気通路に配設されている触媒にも多量の未燃ガスが流入し、同触媒内で未燃ガスが燃焼して熱が発生することで同触媒の劣化が一時的に速く進行する現象が発生する。
【0012】
このとき、上記第1触媒と第2触媒が同じ排気通路に直列に配設されている場合には、第2触媒に比べて機関の排気ポートに近い位置に配設されている第1触媒内にて未燃ガスが燃焼しやすく、第1触媒の劣化が第2触媒の劣化よりも速く進行し易い。また、上記第1触媒と第2触媒が異なる排気通路にそれぞれ並列に配設されている場合には、例えば第1,第2触媒のうちの一方の触媒に流入する排気ガスを発生する気筒(群)においてのみ失火が発生したとき、前記一方の触媒の劣化が他方の触媒の劣化よりも速く進行しやすい。
【0013】
従って、第1触媒及び第2触媒を同じ排気通路に直列に配設するか異なる排気通路にそれぞれ並列に配設するかに拘わらず、内燃機関において失火の発生回数が多くなると実際の第1触媒劣化指標値と実際の第2触媒劣化指標値との相違の程度は大きくなる傾向がある。このため、失火の発生回数にかかわらず上記空燃比センサ状態判定基準値が常に一定であるものとすると、第1,第2触媒下流空燃比センサが正常であっても、同第1,第2触媒下流空燃比センサの少なくとも一つが異常であると誤判定される可能性がある。
【0014】
これに対し、上記した空燃比センサ状態判定装置によれば、失火発生検出手段により検出された失火の発生回数に応じて基準値変更手段が空燃比センサ状態判定基準値を変更するように構成されているので、第1,第2触媒下流空燃比センサが正常であること及び/又は第1,第2触媒下流空燃比センサの少なくとも一つが異常であることがより精度よく判定され得る。
【0015】
また、上記した空燃比センサ状態判定装置が適用される排気浄化装置において、前記第1触媒劣化指標値に基いて前記第1触媒が劣化したか否かを判定する第1触媒劣化判定手段と、前記第2触媒劣化指標値に基いて前記第2触媒が劣化したか否かを判定する第2触媒劣化判定手段とが備えられているときには、前記空燃比センサ状態判定手段は、前記第1触媒下流空燃比センサ及び前記第2触媒下流空燃比センサの少なくとも一つが異常であるという判定を行った場合、前記第1触媒劣化判定手段及び前記第2触媒劣化判定手段による判定を禁止させるように構成されることが好適である。
【0016】
第1,第2触媒下流空燃比センサの少なくとも一つが異常であると判定された場合、同第1,第2空燃比センサの出力に基いてそれぞれ検出された第1触媒劣化指標値及び第2触媒劣化指標値の少なくとも一方は正確な値ではない可能性が高い。従って、これによれば、第1触媒及び第2触媒が劣化したか否かが判定される際、誤判定がなされることが防止され得る。
【0017】
【発明の実施の形態】
以下、本発明による空燃比センサ状態判定装置の一実施形態について図面を参照しつつ説明する。図1は、本発明の実施形態に係る空燃比センサ状態判定装置を搭載した排気浄化装置を火花点火式多気筒(4気筒)内燃機関10に適用したシステムの概略構成を示している。
【0018】
この内燃機関10は、シリンダブロック、シリンダブロックロワーケース、及びオイルパン等を含むシリンダブロック部20と、シリンダブロック部20の上に固定されるシリンダヘッド部30と、シリンダブロック部20にガソリン混合気を供給するための吸気系統40と、シリンダブロック部20からの排気ガスを外部に放出するための排気系統50とを含んでいる。
【0019】
シリンダブロック部20は、シリンダ21、ピストン22、コンロッド23、及びクランク軸24を含んでいる。ピストン22はシリンダ21内を往復動し、ピストン22の往復動がコンロッド23を介してクランク軸24に伝達され、これにより同クランク軸24が回転するようになっている。シリンダ21とピストン22のヘッドは、シリンダヘッド部30とともに燃焼室25を形成している。
【0020】
シリンダヘッド部30は、燃焼室25に連通した吸気ポート31、吸気ポート31を開閉する吸気弁32、吸気弁32を駆動するインテークカムシャフトを含むとともに同インテークカムシャフトの位相角を連続的に変更する可変吸気タイミング装置33、可変吸気タイミング装置33のアクチュエータ33a、燃焼室25に連通した排気ポート34、排気ポート34を開閉する排気弁35、排気弁35を駆動するエキゾーストカムシャフト36、点火プラグ37、点火プラグ37に与える高電圧を発生するイグニッションコイルを含むイグナイタ38、及び燃料を吸気ポート31内に噴射するインジェクタ(燃料噴射手段)39を備えている。
【0021】
吸気系統40は、吸気ポート31に連通し同吸気ポート31とともに吸気通路を形成するインテークマニホールドを含む吸気管41、吸気管41の端部に設けられたエアフィルタ42、吸気管41内にあって吸気通路の開口断面積を可変とするスロットル弁43、及びスロットル弁駆動手段を構成するDCモータからなるスロットル弁アクチュエータ43aを備えている。
【0022】
排気系統50は、排気ポート34に連通したエキゾーストマニホールド51、エキゾーストマニホールド51に接続されたエキゾーストパイプ(排気管)52、エキゾーストパイプ52に配設(介装)された上流側の第1触媒(上流側三元触媒、又はスタート・コンバータとも云う。)53、及び第1触媒53の下流のエキゾーストパイプ52に配設(介装)された同第1触媒53よりも容量の大きい第2触媒(下流側三元触媒、又は、車両のフロア下方に配設されるため、アンダ・フロア・コンバータとも云う。)54を備えている。
【0023】
ここで、排気ポート34、エキゾーストマニホールド51、及びエキゾーストパイプ52は排気通路を構成している。また、エキゾーストパイプ52はエキゾーストマニホールド51を介して4つの気筒の全てと接続されており、この結果、第1触媒53及び第2触媒54も4つの気筒の全てと接続されている。第2触媒54の初期状態(未使用の状態)における排気ガス浄化能力(最大酸素吸蔵量)は、第1触媒53の初期状態(未使用の状態)における排気ガス浄化能力(最大酸素吸蔵量)よりも高い。
【0024】
一方、このシステムは、熱線式エアフローメータ61、スロットルポジションセンサ62、カムポジションセンサ63、クランクポジションセンサ64、水温センサ65、第1触媒53の上流の排気通路に配設された空燃比センサ66(以下、「最上流空燃比センサ66」と称呼する。)、第1触媒53の下流であって第2触媒54の上流の排気通路に配設された空燃比センサ67(以下、「第1触媒下流空燃比センサ67」と称呼する。)、第2触媒54の下流の排気通路に配設された空燃比センサ68(以下、「第2触媒下流空燃比センサ68」と称呼する。)、及びアクセル開度センサ69を備えている。
【0025】
熱線式エアフローメータ61は、吸気管41内を流れる吸入空気の質量流量に応じた電圧Vgを出力するようになっている。かかるエアフローメータ61の出力Vgと、計測された吸入空気量(流量)AFMとの関係は、図2に示したとおりである。スロットルポジションセンサ62は、スロットル弁43の開度を検出し、スロットル弁開度TAを表す信号を出力するようになっている。カムポジションセンサ63は、インテークカムシャフトが90°回転する毎に(即ち、クランク軸24が180°回転する毎に)一つのパルスを有する信号(G2信号)を発生するようになっている。クランクポジションセンサ64は、クランク軸24が10°回転する毎に幅狭のパルスを有するとともに同クランク軸24が360°回転する毎に幅広のパルスを有する信号を出力するようになっている。この信号は、エンジン回転速度NEを表す。水温センサ65は、内燃機関10の冷却水の温度を検出し、冷却水温THWを表す信号を出力するようになっている。
【0026】
最上流空燃比センサ66は、図3(a)に示したように、空燃比A/Fに応じた電流を出力し、この電流に応じた電圧vabyfsを出力するようになっている。図3(a)から明らかなように、最上流空燃比センサ66によれば、広範囲にわたる空燃比A/Fを精度良く検出することができる。第1触媒下流空燃比センサ67、及び第2触媒下流空燃比センサ68は、図3(b)に示したように、理論空燃比において急変する電圧Voxs1,Voxs2をそれぞれ出力するようになっている。より具体的に述べると、第1,第2触媒下流空燃比センサ67,68は、空燃比が理論空燃比よりもリーンのときは略0.1(V)、空燃比が理論空燃比よりもリッチのときは略0.9(V)、及び空燃比が理論空燃比のときは略0.5(V)の電圧を出力するようになっている。アクセル開度センサ69は、運転者によって操作されるアクセルペダル81の操作量を検出し、同アクセルペダル81の操作量Accpを表す信号を出力するようになっている。
【0027】
更に、このシステムは電気制御装置70を備えている。電気制御装置70は、互いにバスで接続されたCPU71、CPU71が実行するルーチン(プログラム)、テーブル(ルックアップテーブル、マップ)、定数等を予め記憶したROM72、CPU71が必要に応じてデータを一時的に格納するRAM73、電源が投入された状態でデータを格納するとともに同格納したデータを電源が遮断されている間も保持するバックアップRAM74、及びADコンバータを含むインターフェース75等からなるマイクロコンピュータである。インターフェース75は、前記センサ61〜69と接続され、CPU71にセンサ61〜69からの信号を供給するとともに、同CPU71の指示に応じて可変吸気タイミング装置33のアクチュエータ33a、イグナイタ38、インジェクタ39、及びスロットル弁アクチュエータ43aに駆動信号を送出するようになっている。
【0028】
(空燃比センサの正常又は異常判定及び触媒劣化判定の原理)
ところで、第1,第2触媒53,54等の三元触媒は、空燃比がほぼ理論空燃比のときに未燃成分(HC,CO)を酸化し、同時に窒素酸化物(NOx)を還元する機能を有する。更に、三元触媒は、酸素貯蔵機能を有し、この酸素貯蔵機能により空燃比が理論空燃比からある程度まで偏移したとしても、HC,CO、及びNOxを浄化することができる。即ち、機関の空燃比がリーンとなって三元触媒に流入するガスにNOxが多量に含まれると、三元触媒はNOxから酸素分子を奪ってNOxを還元してNOxを浄化するとともに、その酸素を吸蔵する。また、機関の空燃比がリッチになって三元触媒に流入するガスにHC,COが多量に含まれると、三元触媒はこれらに吸蔵していた酸素を与えて酸化し、これによりHC,COを浄化する。
【0029】
従って、三元触媒が連続的に流入する多量のHC,COを効率的に浄化するためには、同三元触媒が酸素を多量に貯蔵していなければならず、逆に連続的に流入する多量のNOxを効率的に浄化するためには、三元触媒が酸素を十分に貯蔵し得る状態になければならないことになる。
【0030】
以上のことから明らかなように、三元触媒の浄化能力は、その三元触媒が貯蔵(吸蔵)し得る最大の酸素量(最大酸素吸蔵量)に依存する。ところが、三元触媒は燃料中に含まれる鉛や硫黄等による被毒、或いは触媒に加わる熱により劣化するから、次第に最大酸素吸蔵量が低下してくる。従って、第1,第2触媒53,54の各々の最大酸素吸蔵量を検出することができれば、同第1,第2触媒53,54の各々が劣化しているか否かを判定することができる。換言すると、最大酸素吸蔵量は触媒の劣化の程度を示す劣化指標値である。
【0031】
一方、上記のように第1触媒53と第2触媒54とを内燃機関10の排気通路に直列に配設した場合、第1,第2触媒53,54のいずれか一方のみの劣化が著しく進行することは少なく、第1,第2触媒53,54の劣化はそれぞれ同じような傾向をもって進行していくことが種々の実験等により確認されている。この結果、図4に示したように、第1,第2触媒53,54の劣化指標値である最大酸素吸蔵量の実際値もそれぞれ同じような傾向(勾配)をもって低下していく。
【0032】
また、先に述べたように第2触媒54の初期状態における最大酸素吸蔵量の実際値は第1触媒53のものよりも大きいため、第1,第2触媒53,54の各々の劣化が進行していく過程に渡り、第2触媒54の最大酸素吸蔵量の実際値は第1触媒53の最大酸素吸蔵量の実際値よりも大きくなる。従って、図4に示したように、第1,第2触媒53,54の各々の劣化が進行していく過程に渡り、第2触媒54の最大酸素吸蔵量の実際値から第1触媒53の最大酸素吸蔵量の実際値を減じた値(正の値)は、ある基準となる最大酸素吸蔵量偏差正常限界値ΔCR(正の一定値)よりも小さくなる。
【0033】
この最大酸素吸蔵量偏差正常限界値ΔCRは、本例では、第1,第2触媒53,54の上記最大酸素吸蔵量の実際値の各々が対応する触媒が劣化したと判定されるべき程度までそれぞれ低下するまでの間に同第2触媒54の最大酸素吸蔵量の実際値から同第1触媒53の最大酸素吸蔵量の実際値を減じた値がとり得る最大値を各種実験等から求めておき、この最大値よりも若干大きい値となるように設定されている。
【0034】
従って、これらの前提に基けば、少なくとも第2触媒下流空燃比センサ68の出力に基いて検出された第2触媒54の最大酸素吸蔵量CUFmaxから少なくとも第1触媒下流空燃比センサ67の出力に基いて検出された第1触媒53の最大酸素吸蔵量CSCmaxを減じた値(第1触媒劣化指標値と第2触媒劣化指標値との間の相違の程度を示す値)が上記最大酸素吸蔵量偏差正常限界値ΔCR(空燃比センサ状態判定基準値)以上のとき、第1触媒下流空燃比センサ67及び第2触媒下流空燃比センサ68の少なくともいずれか一方は異常であると判定され得る。一方、前記検出された第2触媒54の最大酸素吸蔵量CUFmaxから前記検出された第1触媒53の最大酸素吸蔵量CSCmaxを減じた値が上記最大酸素吸蔵量偏差正常限界値ΔCRよりも小さいとき、第1触媒下流空燃比センサ67及び第2触媒下流空燃比センサ68は正常であると判定され得る。
【0035】
かかる知見に基き、本実施形態の空燃比センサ状態判定装置を搭載した排気浄化装置は、初めに、図5のタイムチャートに実線で示したように、少なくとも第1触媒下流空燃比センサ67の出力に基いて第1触媒53の最大酸素吸蔵量CSCmaxを検出するとともに、少なくとも第2触媒下流空燃比センサ68の出力に基いて第2触媒54の最大酸素吸蔵量CUFmaxを検出する。
【0036】
即ち、先ず、図5(A)に示したように、時刻t1にて第1触媒53の上流のガスの空燃比(実際には、機関が吸入する混合気の空燃比であり、以下、単に「第1触媒上流空燃比」と云うこともある。)を理論空燃比よりもリーンな所定のリーン空燃比に制御する。
【0037】
これにより、第1触媒53にリーンな空燃比のガスが流入するから、図5(C)に示したように、第1触媒53の酸素吸蔵量は次第に増大し、時刻t2にて最大酸素吸蔵量CSCmaxに達する。この結果、時刻t2にて、第1触媒53から酸素を含むガス(リーン空燃比のガス)が流出し始め、図5(B)に示したように、第1触媒下流空燃比センサ67の出力Voxs1はリッチを示す値からリーンを示す値に変化する。この時刻t1〜t2間の作動を第1モード(Mode=1)における作動と呼ぶ。
【0038】
時刻t2にて、第1触媒下流空燃比センサ67の出力Voxs1がリッチを示す値からリーンを示す値に変化した後も、本装置は第1触媒上流空燃比を上記所定のリーン空燃比に制御し続ける(図5(A)を参照)。これにより、第1触媒53にリーンな空燃比のガスが流入し続け、しかも、第1触媒53の酸素吸蔵量は最大となっていて同第1触媒53は酸素を吸蔵することができない状態にあるから、同第1触媒53から酸素を含むガスが流出し続ける。
【0039】
この結果、図5(E)に示したように、時刻t2以降において第2触媒54の酸素吸蔵量は次第に増大し、時刻t3にて最大酸素吸蔵量CUFmaxに達する。この結果、時刻t3にて、第2触媒54から酸素を含むガスが流出し始め、図5(D)に示したように、第2触媒下流空燃比センサ68の出力Voxs2はリッチを示す値からリーンを示す値に変化する。なお、時刻t2〜t3間の作動を第2モード(Mode=2)における作動と呼ぶ。
【0040】
以上のように、第1,第2モード(Mode=1,Mode=2)においては、第1触媒53が内部に酸素を吸蔵し得る限界まで酸素を吸蔵するとともに、第2触媒54が内部に酸素を吸蔵し得る限界まで酸素を吸蔵するように同第1触媒53の上流の空燃比が理論空燃比よりもリーンに制御される。
【0041】
時刻t3にて、第2触媒下流空燃比センサ68の出力Voxs2がリッチを示す値からリーンを示す値に変化すると、本装置は第1触媒上流空燃比を理論空燃比よりもリッチな所定のリッチ空燃比に制御する。これにより、第1触媒53にリッチな空燃比のガスが流入するため、第1触媒53の酸素が同第1触媒53に流入する未燃HC,COの酸化のために消費される。これにより、第1触媒53の酸素吸蔵量は最大酸素吸蔵量CSCmaxから減少して行く。そして、時刻t4になると、第1触媒53の酸素吸蔵量は「0」となるから、第1触媒53からリッチ空燃比のガスが流出し始め、第1触媒下流空燃比センサ67の出力Voxs1はリーンを示す値からリッチを示す値に変化する。この時刻t3〜t4間の作動を第3モード(Mode=3)における作動と呼ぶ。
【0042】
本装置は、かかる時刻t3〜t4間において、以下のようにして第1触媒53の最大酸素吸蔵量CSCmaxを検出する。即ち、第1触媒上流空燃比を所定のリッチ空燃比に設定した時刻t3から、第1触媒下流空燃比センサ67の出力Voxs1がリッチを示す値に変化する時刻t4までの間、下記数1、及び下記数2に基いて酸素吸蔵量の変化量ΔO2を算出するとともにこれを積算し、同時刻t4での積算値を最大酸素吸蔵量CSCmaxとして算出する。
【0043】
【数1】
ΔO2=0.23・mfr・(stoich − abyfs)
【0044】
【数2】
CSCmax=ΣΔO2(区間t=t3〜t4)
【0045】
上記数1において、値「0.23」は大気中に含まれる酸素の重量割合である。mfrは所定時間(計算周期tsample)内の燃料噴射量Fiの合計量であり、stoichは理論空燃比(例えば、14.7)である。abyfsは所定時間tsampleにおいて最上流空燃比センサ66により検出された空燃比A/Fである。なお、abyfsは前記所定時間tsample内の最上流空燃比センサ66により検出された空燃比A/Fの平均値としてもよい。
【0046】
この数1に示したように、所定時間tsample内の噴射量の合計量mfrに、検出された空燃比A/Fの理論空燃比からの偏移(stoich − abyfs)を乗じることで、同所定時間tsampleにおける空気の不足量が求められ、この空気の不足量に酸素の重量割合を乗じることで同所定時間tsampleにおける酸素吸蔵量変化量(吸蔵酸素の消費量)ΔO2が求められる。そして、数2に示したように、酸素吸蔵量変化量ΔO2を時刻t3〜t4に渡って積算することで、第1触媒53が酸素を最大限貯蔵していた状態から酸素を総べて消費するまでの酸素消費量、即ち最大酸素吸蔵量CSCmaxが推定・算出される。
【0047】
このように、本実施形態では、第1触媒下流空燃比センサ67の出力Voxs1の変化、及び、第1触媒上流側空燃比が所定のリッチ空燃比に制御されていること(最上流空燃比センサ66の出力vabyfs)を利用して最大酸素吸蔵量CSCmaxを検出する。従って、例えば、第1触媒下流空燃比センサ67において異常(特に、応答性が低下する等の動特性に関する異常)が発生し同第1触媒下流空燃比センサ67の出力Voxs1の変化時期が遅れると、時刻t4も遅れ、最大酸素吸蔵量CSCmaxが大きく算出されてしまう。
【0048】
なお、本実施形態においては、時刻t3〜t4間で第1触媒上流空燃比は一定の第1リッチ空燃比であるから、時刻t3〜t4までの時間をΔt3、所定のリッチ空燃比をabyfR、その間における単位時間当りの燃料供給量をmfr3とすれば、上記数1及び上記数2から、最大酸素吸蔵量CSCmaxは0.23・mfr3・(stoich − abyfR)・Δt3として簡単に求めることもできる。
【0049】
時刻t4にて、第1触媒下流空燃比センサ68の出力Voxs2がリーンを示す値からリッチを示す値に変化した後も、本装置は第1触媒上流空燃比を上記所定のリッチ空燃比に制御し続ける。このとき、第1触媒53の酸素吸蔵量は「0」となっているから、第2触媒54にリッチな空燃比のガスが流入する。この結果、第2触媒54が吸蔵している酸素は、同第2触媒54に流入する未燃HC,COの酸化のために消費されるので、第2触媒54の酸素吸蔵量は最大酸素吸蔵量CUFmaxから減少して行き、時刻t5にて同酸素吸蔵量は「0」となる。この結果、時刻t5にて、第2触媒54からリッチ空燃比のガスが流出し始め、第2触媒下流空燃比センサ68の出力Voxs2はリーンを示す値からリッチを示す値に変化する。この時刻t4〜t5間の作動を第4モード(Mode=4)における作動と呼ぶ。
【0050】
即ち、時刻t3〜t4の間に、第1触媒53が内部に吸蔵している酸素を完全に放出するとともに、時刻t4〜t5の間に、第2触媒54が内部に吸蔵している酸素を完全に放出するように、時刻t3〜t5の間の第1触媒53の上流の空燃比が理論空燃比よりもリッチな所定のリッチ空燃比に制御される。
【0051】
本装置は、時刻t4〜t5間において、上記最大酸素吸蔵量CSCmaxを求めた場合と同様な下記数3及び下記数4により示される計算を行うことで、第2触媒54の最大酸素吸蔵量CUFmaxを検出する。なお、この場合においても、時刻t4〜t5間で第1触媒上流空燃比は一定の所定のリッチ空燃比であるから、時刻t4〜t5までの時間をΔt4、所定のリッチ空燃比をabyfR、その間における単位時間当りの燃料供給量をmfr4とすれば、最大酸素吸蔵量CUFmaxは0.23・mfr4・(stoich − abyfR)・Δt4として簡単に求めることもできる。
【0052】
このように、本実施形態では、第2触媒下流空燃比センサ68の出力Voxs2の変化、及び、第1触媒上流側空燃比が所定のリッチ空燃比に制御されていること(最上流空燃比センサ66の出力vabyfs)を利用して最大酸素吸蔵量CUFmaxを検出する。従って、例えば、第2触媒下流空燃比センサ68において異常(特に、応答性が低下する等の動特性に関する異常)が発生し同第2触媒下流空燃比センサ68の出力Voxs2の変化時期が遅れると、時刻t5も遅れ、最大酸素吸蔵量CUFmaxが大きく算出されてしまう。
【0053】
【数3】
ΔO2=0.23・mfr・(stoich − abyfs)
【0054】
【数4】
CUFmax=ΣΔO2(区間t=t4〜t5)
【0055】
そして、本装置は、時刻t5にて機関に吸入される混合気の空燃比を理論空燃比に戻すとともに、同時刻t5以降において、最上流空燃比センサ66,第1触媒下流空燃比センサ67,及び第2触媒下流空燃比センサ68が正常であるという判定又は異常であるという判定を以下のように行う。
【0056】
即ち、本装置は、下記数5が成立するとき、最上流空燃比センサ66,第1触媒下流空燃比センサ67,及び第2触媒下流空燃比センサ68の全てが正常であると判定する。一方、下記数5が成立しないとき、最上流空燃比センサ66,第1触媒下流空燃比センサ67,及び第2触媒下流空燃比センサ68のいずれか一つ以上が異常であると判定する。
【0057】
【数5】
CUFmax-CSCmax < ΔCR+A・Nmisfire
【0058】
上記数5において、右辺のNmisfireは、内燃機関10において現時点までに発生している失火の発生回数であり、右辺のAは所定の正の定数である。この数5において、失火発生回数Nmisfireが考慮されているのは、先に説明したように、失火の発生回数が多くなると第1触媒53の劣化が第2触媒54の劣化よりも速く進行して実際の最大酸素吸蔵量CUFmaxと実際の最大酸素吸蔵量CSCmaxとの偏差が大きくなるので、空燃比センサの正常又は異常を精度よく判定するために空燃比センサ状態判定基準値(最大酸素吸蔵量偏差正常限界値ΔCR(正の一定値))を失火の発生回数Nmisfireに応じた分だけ大きくする必要があるからである。
【0059】
そして、本装置は、最上流空燃比センサ66,第1触媒下流空燃比センサ67,及び第2触媒下流空燃比センサ68のいずれか一つ以上が異常であると判定したとき、検出された最大酸素吸蔵量CSCmax及び検出された最大酸素吸蔵量CUFmaxの少なくともいずれか一方は正確な値ではない可能性が高いので、第1,第2触媒53,54が劣化しているか否かを判定しない。
【0060】
一方、最上流空燃比センサ66,第1触媒下流空燃比センサ67,及び第2触媒下流空燃比センサ68の全てが正常であると判定したとき、本装置は、第1,第2触媒53,54が劣化しているか否かを以下のように判定する。
【0061】
先ず、第1触媒53については、上記第1触媒53の最大酸素吸蔵量CSCmaxが第1触媒劣化判定基準値CSCR以下であるか否かを判定する。そして、上記最大酸素吸蔵量CSCmaxが第1触媒劣化判定基準値CSCR以下であるとき、第1触媒53が劣化したものと判定する。
【0062】
次に、第2触媒54については、上記第2触媒54の最大酸素吸蔵量CUFmaxが第2触媒劣化判定基準値CUFR以下であるか否かを判定する。そして、上記最大酸素吸蔵量CUFmaxが第2触媒劣化判定基準値CUFR以下であるとき、第2触媒54が劣化したものと判定する。
【0063】
更に、本装置は、第1,第2触媒53,54を一つの触媒装置とみなしたときに、その触媒装置が劣化したか否かを、下記数6が成立するか否かを判定することにより判定する。
【0064】
【数6】
CSCmax+CUFmax ≦ CR
【0065】
上記数6において、右辺のCRは、第1触媒53と第2触媒54を一つの触媒装置と見なしたときに、同触媒装置の劣化を判定するための最大酸素吸蔵量の基準値(触媒全体の劣化判定基準値)である。以上が、本装置による空燃比センサの正常又は異常判定及び触媒劣化判定の原理である。
【0066】
<実際の作動>
次に、上記のように構成された空燃比状態判定装置(及び、排気浄化装置)の実際の作動について、電気制御装置70のCPU71が実行するルーチン(プログラム)をフローチャートにより示した図6〜図16を参照しながら説明する。
【0067】
(通常の空燃比制御)
CPU71は、図6に示した最終燃料噴射量Fiの計算、及び燃料噴射の指示を行うルーチンを、各気筒のクランク角が各吸気上死点前の所定クランク角度(例えば、BTDC90°CA)となる毎に、繰り返し実行するようになっている。従って、任意の気筒のクランク角度が前記所定クランク角度になると、CPU71はステップ600から処理を開始してステップ605に進み、エアフローメータ61により計測された吸入空気量AFMと、エンジン回転速度NEとに基いて、機関の空燃比を理論空燃比とするための基本燃料噴射量Fbaseをマップから求める。
【0068】
次いで、CPU71はステップ610に進み、基本燃料噴射量Fbaseに係数Kを乗じた値に後述する空燃比フィードバック補正量DFiを加えた値を最終燃料噴射量Fiとして設定する。この係数Kの値は、通常は「1.00」であり、後述するように、第1触媒の最大酸素吸蔵量CSCmax及び第2触媒の最大酸素吸蔵量CUFmaxを検出するために強制的に空燃比を変更するとき、「1.00」以外の所定値に設定される。
【0069】
次いで、CPU71はステップ615に進み、同ステップ615にて同最終燃料噴射量Fiの燃料を噴射するための指示をインジェクタ39に対して行う。その後、CPU71はステップ620に進み、その時点の燃料噴射量合計量mfrに最終燃料噴射量Fiを加えた値を、新たな燃料噴射量積算値mfrに設定する。この燃料噴射量積算値mfrは、後述する酸素吸蔵量の算出の際に用いられる。その後、CPU71はステップ695に進み、本ルーチンを一旦終了する。以上により、フィードバック補正された最終燃料噴射量Fiの燃料が吸気行程を迎える気筒に対して噴射される。
【0070】
次に、上記空燃比フィードバック補正量DFiの算出について説明すると、CPU71は図7に示したルーチンを所定時間の経過毎に繰り返し実行している。従って、所定のタイミングになると、CPU71はステップ700から処理を開始し、ステップ705に進んでフィードバック制御条件が成立しているか否かを判定する。空燃比フィードバック制御条件は、例えば、機関の冷却水温THWが第1所定温度以上であり、機関の一回転当りの吸入空気量(負荷)が所定値以下であり、最上流空燃比センサ66が正常であり、且つ、後述する空燃比切換制御実行中フラグXHANの値が「0」のときに成立する。なお、空燃比切換制御実行中フラグXHANは、後述するように、その値が「1」のとき空燃比センサ状態判定及び触媒劣化判定のために強制的に空燃比を変更する空燃比制御を実行していることを示し、その値が「0」のとき同空燃比センサ状態判定及び同触媒劣化判定のための空燃比制御を実行していないことを示す。
【0071】
いま、空燃比フィードバック制御条件が成立しているものとして説明を続けると、CPU71はステップ705にて「Yes」と判定してステップ710に進み、現時点の最上流空燃比センサ66の出力vabyfsと後述するサブフィードバック制御量vafsfbとの和(vabyfs+vafsfb)を図3(a)に示したマップに基いて変換することにより、現時点における第1触媒53の上流側制御用空燃比abyfsを求める。
【0072】
次に、CPU71はステップ715に進み、現時点からNストローク(N回の吸気行程)前に吸気行程を迎えた気筒の吸入空気量である筒内吸入空気量Mc(k−N)を前記求めた上流側制御用空燃比abyfsで除することにより、現時点からNストローク前の筒内燃料供給量Fc(k−N)を求める。値Nは、内燃機関の排気量、燃焼室25から最上流空燃比センサ66までの距離等により異なる値である。
【0073】
このように、現時点からNストローク前の筒内燃料供給量Fc(k−N)を求めるために、現時点からNストローク前の筒内吸入空気量Mc(k−N)を上流側制御用空燃比abyfsで除するのは、燃焼室25内で燃焼された混合気が最上流空燃比センサ66に到達するまでには、Nストロークに相当する時間を要しているからである。なお、筒内吸入空気量Mcは、各気筒の吸気行程毎に、その時点のエアフローメータ61の出力AFMと、エンジン回転速度NEとに基いて求められ(例えば、エアフローメータ61の出力AFMに一次遅れ処理を施した値をエンジン回転速度NEで除することにより求められ)、各吸気行程に対応してRAM73内に記憶されている。
【0074】
次いで、CPU71はステップ720に進み、現時点からNストローク前の筒内吸入空気量Mc(k−N)を現時点からNストローク前の時点における目標空燃比abyfr(k−N)(この例では、理論空燃比)で除することにより、現時点からNストローク前の目標筒内燃料供給量Fcr(k−N)を求める。そして、CPU71はステップ725に進んで目標筒内燃料供給量Fcr(k−N)から筒内燃料供給量Fc(k−N)を減じた値を筒内燃料供給量偏差DFcとして設定する。つまり、筒内燃料供給量偏差DFcは、Nストローク前の時点で筒内に供給された燃料の過不足分を表す量となる。次に、CPU71はステップ730に進み、下記数7に基いて空燃比フィードバック補正量DFiを求める。
【0075】
【数7】
DFi=(Gp・DFc+Gi・SDFc)・KFB
【0076】
上記数7において、Gpは予め設定された比例ゲイン、Giは予め設定された積分ゲインである。なお、数7の係数KFBはエンジン回転速度NE、及び筒内吸入空気量Mc等により可変とすることが好適であるが、ここでは「1」としている。また、値SDFcは筒内燃料供給量偏差DFcの積分値であり、次のステップ735にて更新される。即ち、CPU71は、ステップ735にてその時点における筒内燃料供給量偏差DFcの積分値SDFcに上記ステップ725にて求めた筒内燃料供給量偏差DFcを加えて、新たな筒内燃料供給量偏差の積分値SDFcを求め、ステップ795にて本ルーチンを一旦終了する。
【0077】
以上により、空燃比フィードバック補正量DFiが比例積分制御により求められ、この空燃比フィードバック補正量DFiが前述した図6のステップ610、及びステップ615により燃料噴射量に反映されるので、Nストローク前の燃料供給量の過不足が補償され、空燃比の平均値が目標空燃比abyfrと略一致せしめられる。
【0078】
一方、ステップ705の判定時において、空燃比フィードバック制御条件が不成立であると、CPU71は同ステップ705にて「No」と判定してステップ740に進み、空燃比フィードバック補正量DFiの値を「0」に設定し、ステップ795に進んで本ルーチンを一旦終了する。このように、空燃比フィードバック制御条件が不成立であるとき(空燃比切換制御実行中を含む)は、空燃比フィードバック補正量DFiを「0」として空燃比(基本燃料噴射量Fbase)の補正を行わない。
【0079】
次に、第1触媒下流空燃比センサ67の出力Voxs1に基く空燃比フィードバック制御について説明する。なお、かかる制御はサブフィードバック制御とも呼ばれる。このサブフィードバック制御により、サブフィードバック制御量vafsfbが算出される。
【0080】
CPU71は、サブフィードバック制御量vafsfbを求めるために、図8に示したルーチンを所定時間の経過毎に実行している。従って、所定のタイミングになると、CPU71はステップ800から処理を開始し、ステップ805に進んでサブフィードバック制御条件が成立しているか否かを判定する。サブフィードバック制御条件は、例えば、前述したステップ705での空燃比フィードバック制御条件に加え、機関の冷却水温THWが前記第1所定温度よりも高い第2所定温度以上のとき、及び第1触媒下流空燃比センサ67が正常であるときに成立する。
【0081】
いま、サブフィードバック制御条件が成立しているものとして説明を続けると、CPU71はステップ805にて「Yes」と判定してステップ810に進み、所定の目標値Voxrefから現時点の第1触媒下流空燃比センサ67の出力Voxs1を減じることにより、出力偏差量DVoxsを求める。この目標値Voxsrefは、第1触媒53の浄化効率が良好(最良)となるように定められ、ここでは、理論空燃比に対応した値に設定されている。次に、CPU71はステップ815に進み、下記数8に基いてサブフィードバック制御量vafsfbを求める。
【0082】
【数8】
vafsfb=Kp・DVoxs+Ki・SDVoxs
【0083】
上記数8において、Kpは予め設定された比例ゲイン、Kiは予め設定された積分ゲインである。また、SDVoxsは、出力偏差量DVoxsの積分値であって、次のステップ820にて更新される値である。即ち、CPU71は、ステップ820に進むと、その時点における出力偏差量の積分値SDVoxsに上記ステップ810にて求めた出力偏差量DVoxsを加えて、新たな出力偏差量の積分値SDVoxsを求め、その後、ステップ895に進んで本ルーチンを一旦終了する。
【0084】
このようにして、サブフィードバック制御量vafsfbが求められ、この値は前述した図7のステップ710にて最上流空燃比センサ66の実際の出力に加えられ、その和(vabyfs + vafsfb)が図3(a)に示したマップに基いて前記上流側制御用空燃比abyfsに変換される。換言すると、第1触媒下流空燃比センサ67の出力Voxs1に基いて求められる上流側制御用空燃比abyfsは、最上流空燃比センサ66が実際に検出している空燃比に対して、サブフィードバック制御量vafsfbに相当する分だけ異なる空燃比として求められる。
【0085】
この結果、前述した図7のステップ715にて計算される筒内燃料供給量Fc(k−N)が第1触媒下流空燃比センサ67の出力Voxs1に応じて変化するので、ステップ725,730によって空燃比フィードバック補正量DFiが同第1触媒下流空燃比センサ67の出力Voxs1に応じて変更せしめられる。これにより、第1触媒53の下流側の空燃比が目標値Voxsrefに一致するように、機関の空燃比が制御せしめられる。
【0086】
例えば、機関の平均的な空燃比がリーンであるために第1触媒下流空燃比センサ67の出力Voxs1が理論空燃比よりもリーンである空燃比に対応した値を示すと、ステップ810にて求められる出力偏差量DVoxsが正の値となるので、ステップ815にて求められるサブフィードバック制御量vafsfbは正の値となる。従って、ステップ710にて求められるabyfsは最上流空燃比センサ66が実際に検出している空燃比よりもリーンな値(より大きな値)として求められる。このため、ステップ715にて求められる筒内燃料供給量Fc(k−N)は小さい値となり、筒内燃料供給量偏差DFcは大きい値として求められるので、空燃比フィードバック補正量DFiが大きい正の値となる。これにより、図6のステップ610にて求められる最終燃料噴射量Fiは、基本燃料噴射量Fbaseよりも大きくなって、機関の空燃比がリッチとなるように制御される。
【0087】
反対に、機関の平均的な空燃比がリッチであるために第1触媒下流空燃比センサ67の出力Voxs1が理論空燃比よりもリッチである空燃比に対応した値を示すと、ステップ810にて求められる出力偏差量DVoxsが負の値となるので、ステップ815にて求められるサブフィードバック制御量vafsfbは負の値となる。従って、ステップ710にて求められるabyfsは最上流空燃比センサ66が実際に検出している空燃比よりもリッチな値(より小さな値)として求められる。このため、ステップ715にて求められる筒内燃料供給量Fc(k−N)は大きい値となり、筒内燃料供給量偏差DFcは負の値として求められるので、空燃比フィードバック補正量DFiが負の値となる。これにより、図6のステップ610にて求められる最終燃料噴射量Fiは、基本燃料噴射量Fbaseよりも小さくなって、機関の空燃比がリーンとなるように制御される。
【0088】
このように、第1触媒53の下流側の空燃比が理論空燃比に極めて近い状態になるように制御されるので、第1,第2触媒53,54の各々が劣化して最大酸素吸蔵量CSCmax及び最大酸素吸蔵量CUFmaxが低下した場合であっても、エミッションが良好に維持される。
【0089】
一方、ステップ805の判定時において、サブフィードバック制御条件が不成立であると、CPU71は同ステップ805にて「No」と判定してステップ825に進み、サブフィードバック制御量vafsfbの値を「0」に設定し、ステップ895に進んで本ルーチンを一旦終了する。このように、サブフィードバック制御条件が不成立であるとき(空燃比切換制御実行中を含む)は、サブフィードバック制御量vafsfbを「0」として第1触媒下流空燃比センサ67の出力Voxs1に基く空燃比フィードバック補正量DFi(上流側制御用空燃比abyfs)の補正を行わない。以上のように、通常の空燃比制御が実行される。
【0090】
(空燃比センサ状態判定及び触媒劣化判定のための空燃比制御)
次に、空燃比センサ状態判定及び触媒劣化の判定を行うための空燃比切換制御について説明する。CPU71は図9〜図16のフローチャートにより示された各ルーチンを所定時間の経過毎に実行するようになっている。
【0091】
従って、所定のタイミングになると、CPU71は図9のステップ900から処理を開始し、ステップ905に進んで空燃比切換制御実行中フラグXHANの値が「0」であるか否かを判定する。いま、空燃比センサ状態判定及び触媒劣化判定のための空燃比切換制御を行っておらず、且つ、判定条件が成立していないとして説明を続けると、空燃比切換制御実行中フラグXHANの値は「0」となっている。従って、CPU71はステップ905にて「Yes」と判定してステップ910に進み、先に説明した図6のステップ610にて使用される係数Kの値を1.00に設定する。
【0092】
次いで、CPU71はステップ915にて判定条件が成立しているか否かを判定する。この判定条件は、冷却水温THWが所定温度以上であり、図示しない車速センサにより得られた車速が所定の高車速以上であり、スロットル弁開度TAの単位時間あたりの変化量が所定量以下である、機関が定常運転されている場合に成立する。更に、この判定条件に、前回の空燃比センサ状態判定及び触媒劣化判定から所定時間以上が経過したこと、前回の空燃比センサ状態判定及び触媒劣化判定から車両が所定距離以上運転されたこと、前回の空燃比センサ状態判定及び触媒劣化判定から内燃機関10が所定時間以上運転されたことの任意の一つ、又は一つ以上を判定条件に加えても良い。現段階では、上述したように、判定条件は成立していないから、CPU71はステップ915にて「No」と判定してステップ995に進み、本ルーチンを一旦終了する。
【0093】
次に、先に説明した図5の時刻t1のように、その時点では空燃比センサ状態判定及び触媒劣化判定のための空燃比制御を行っていないが、判定条件が成立したものとして説明を続けると、この場合、CPU71はステップ905にて「Yes」と判定してステップ910に進み、同ステップ910にて係数Kの値を1.00に設定する。次いで、CPU71は、判定条件が成立しているので、ステップ915にて「Yes」と判定してステップ920に進み、同ステップ920にて空燃比切換制御実行中フラグXHANの値を「1」に設定する。
【0094】
そして、CPU71はステップ925に進み、第1モードに移行するためにModeの値を「1」に設定するとともに、続くステップ930にて係数Kの値を0.98に設定し、ステップ995に進んで本ルーチンを一旦終了する。これにより、前述の空燃比フィードバック制御条件が成立しなくなるから、CPU71は図7のステップ705にて「No」と判定してステップ740に進むようになり、空燃比フィードバック補正量DFiの値は0に設定される。この結果、図6のステップ610の実行により、基本燃料噴射量Fbaseが0.98倍された値が最終燃料噴射量Fiとして算出され、この最終燃料噴射量Fiの燃料が噴射されるので、機関の空燃比は理論空燃比よりもリーンな前記所定のリーン空燃比に制御される。
【0095】
以降、CPU71は図9のルーチンの処理をステップ900から繰り返し実行するが、空燃比切換制御実行中フラグXHANの値が「1」となっていることから、ステップ905にて「No」と判定して直ちにステップ995に進み、本ルーチンを一旦終了するようになる。
【0096】
一方、CPU71は図10に示した第1モード制御ルーチンを所定時間の経過毎に繰り返し実行している。従って、所定のタイミングとなると、CPU71はステップ1000から処理を開始してステップ1005に進み、Modeの値が「1」であるか否かを判定する。この場合、先の図9のステップ925の処理によりModeの値は「1」となっているので、CPU71はステップ1005にて「Yes」と判定してステップ1010に進み、第1触媒下流空燃比センサの出力Voxs1が理論空燃比よりもリッチな空燃比を示す値から同理論空燃比よりもリーンな空燃比を示す値に変化したか否かを判定する。現時点では、機関の空燃比を所定のリーン空燃比に変更した直後であるから、第1触媒下流空燃比センサ出力Voxs1は理論空燃比よりもリッチな空燃比を示している。従って、CPU71はステップ1010にて「No」と判定し、ステップ1095にて本ルーチンを一旦終了する。
【0097】
以降、CPU71は図10のステップ1000〜1010を繰り返し実行する。また、空燃比は所定のリーン空燃比に維持されているから、所定の時間が経過すると図5の時刻t2のように第1触媒下流空燃比センサ出力Voxs1はリッチを示す値からリーンを示す値に変化する。これにより、CPU71はステップ1010に進んだとき、同ステップ1010にて「Yes」と判定してステップ1015に進み、Modeの値を「2」に設定し、その後ステップ1095にて本ルーチンを一旦終了する。
【0098】
この結果、係数Kの値は0.98に維持されたままであるので、図6のステップ610の実行により、基本燃料噴射量Fbaseが0.98倍された値が継続して最終燃料噴射量Fiとして算出され、この最終燃料噴射量Fiの燃料が噴射されるので、機関の空燃比は第1モードに引き続き前記所定のリーン空燃比に制御される。
【0099】
CPU71は、第2モード(Mode=2)となると、以降、同様なモード制御を実行し、モードを第3モードから第4モードへと順次切換えるとともに、各モードに応じた制御を実行して行く。簡単に説明すると、図11にそのルーチンをフローチャートにより示した第2モードにおいては、ステップ1105にてModeの値が「2」であるか否かを判定し、Modeの値が「2」であればステップ1105からステップ1110に進み、同ステップ1110にて第2触媒下流空燃比センサ68の出力Voxs2が理論空燃比よりリッチな空燃比を示す値から同理論空燃比よりリーンな空燃比を示す値に変化したか否かをモニタする。
【0100】
そして、図5の時刻t3に示したように、第2触媒下流空燃比センサ68の出力Voxs2が理論空燃比よりリッチな空燃比を示す値から同理論空燃比よりリーンな空燃比を示す値に変化すると、ステップ1115に進んで第3モードに移行すべくModeの値を「3」に設定し、続くステップ1120にて係数Kの値を1.02に設定する。この結果、機関の空燃比が理論空燃比よりリッチな前記所定のリッチ空燃比に制御される。
【0101】
同様に、図12にそのルーチンをフローチャートにより示した第3モードにおいては、ステップ1205にてModeの値が「3」であるか否かを判定し、Modeの値が「3」であればステップ1205からステップ1210に進み、同ステップ1210にて第1触媒下流空燃比センサ67の出力Voxs1が理論空燃比よりリーンな空燃比を示す値から同理論空燃比よりリッチな空燃比を示す値に変化したか否かをモニタする。
【0102】
そして、図5の時刻t4に示したように、第1触媒下流空燃比センサ67の出力Voxs1が理論空燃比よりリーンな空燃比を示す値から同理論空燃比よりリッチな空燃比を示す値に変化すると、ステップ1210からステップ1215に進んで第4モードに移行すべくModeの値を「4」に設定する。この結果、係数Kの値は1.02に維持されたままであるので、機関の空燃比は第3モードに引き続き前記所定のリッチ空燃比に制御される。
【0103】
同様に、図13にそのルーチンをフローチャートにより示した第4モードにおいては、ステップ1305にてModeの値が「4」であるか否かを判定し、Modeの値が「4」であればステップ1305からステップ1310に進み、同ステップ1310にて第2触媒下流空燃比センサ68の出力Voxs2が理論空燃比よりリーンな空燃比を示す値から同理論空燃比よりリッチな空燃比を示す値に変化したか否かをモニタする。
【0104】
そして、図5の時刻t5に示したように、第2触媒下流空燃比センサ68の出力Voxs2が理論空燃比よりリーンな空燃比を示す値から同理論空燃比よりリッチな空燃比を示す値に変化すると、ステップ1310からステップ1315に進み、Modeの値を「0」に再設定し、続くステップ1320にて空燃比切換制御実行中フラグXHANの値を「0」に設定した後、ステップ1395に進んで本ルーチンを一旦終了する。これにより、CPU71は図9のルーチンを実行する際、ステップ905にて「Yes」と判定してステップ910に進むので、係数Kの値が1.00に戻される。また、他の空燃比フィードバック制御条件、及び他のサブフィードバック制御条件が成立していれば、CPU71はステップ705、及びステップ805にて「Yes」と判定するから、空燃比フィードバック制御、及びサブフィードバック制御が再開される。
【0105】
以上、説明したように、判定条件が成立すると、機関の空燃比が所定のリーン空燃比、所定のリッチ空燃比の順に1回づつ強制的に制御される。
【0106】
(酸素吸蔵量の算出)
次に、空燃比センサ状態の判定及び触媒劣化の判定を行うための最大酸素吸蔵量の算出(検出)における作動について説明する。CPU71は図14のフローチャートにより示されたルーチンを所定時間の経過毎に実行するようになっている。
【0107】
従って、所定のタイミングになると、CPU71は図14のステップ1400から処理を開始し、ステップ1405に進んで下記数9により酸素吸蔵量変化量ΔO2を求める。
【0108】
【数9】
ΔO2=0.23・mfr・(stoich − abyfs)
【0109】
次いで、CPU71はステップ1410に進んでModeの値が「3」であるか否かを判定し、Modeの値が「3」であれば同ステップ1410にて「Yes」と判定してステップ1415に進む。そして、CPU71は、ステップ1415にてその時点の第3モードの酸素吸蔵量OSA3に上記酸素吸蔵量変化量ΔO2を加えた値を新たな酸素吸蔵量OSA3として設定し、その後ステップ1430に進む。
【0110】
このような処置(ステップ1400〜1415)は、Modeの値が「3」である限り繰り返し実行される。この結果、第1触媒53の上流の空燃比が所定のリッチ空燃比とされる第3モード(Mode=3)において、第1触媒53の酸素吸蔵量OSA3が算出されて行く。なお、ステップ1410での判定において「No」と判定される場合、CPU71は同ステップ1410からステップ1420に直接進む。
【0111】
CPU71は、ステップ1420に進んだ場合、Modeの値が「4」であるか否かを判定し、Modeの値が「4」であれば同ステップ1420にて「Yes」と判定してステップ1425に進む。そして、CPU71は、ステップ1425にてその時点の第4モードの酸素吸蔵量OSA4に上記酸素吸蔵量変化量ΔO2を加えた値を新たな酸素吸蔵量OSA4として設定し、その後ステップ1430に進む。
【0112】
このような処置(ステップ1400,1405,1410,1420,1425)は、Modeの値が「4」である限り繰り返し実行される。この結果、第1触媒53の上流の空燃比が所定のリッチ空燃比とされる第4モード(Mode=4)において、第2触媒54の酸素吸蔵量OSA4が算出されて行く。なお、ステップ1420での判定において「No」と判定される場合、CPU71は同ステップ1420からステップ1430に直接進む。
【0113】
そして、CPU71は、ステップ1430に進むと、同ステップ1430にて燃料噴射量Fiの合計量mfrを「0」に設定し、その後ステップ1495に進んで本ルーチンを一旦終了する。
【0114】
(失火発生回数の検出)
次に、内燃機関10において発生した失火回数の検出における作動について説明する。CPU71は図15のフローチャートにより示されたルーチンを所定時間の経過毎に実行するようになっている。
【0115】
従って、所定のタイミングになると、CPU71は図15のステップ1500から処理を開始し、ステップ1505に進んで、現時点より所定時間前から現時点までの間に4つの気筒のいずれかにおいて失火が発生したか否かを判定する。具体的に述べると、CPU71は、現時点より所定時間前から現時点までの間において、任意の気筒が爆発行程に移行する度に、同気筒の爆発行程中にてクランク軸24が一定クランク角度回転するのに要する経過時間を検出しておき、検出した複数の経過時間のうちの所定の2つの経過時間の偏差が所定値を超えていれば、失火が発生したと判定する。かかる失火発生の検出方法の詳細については周知であるので、ここではその詳細な説明を省略する。このステップ1505は、失火発生検出手段に対応している。
【0116】
CPU71は、ステップ1505にて失火が発生していないと判定したとき、同ステップ1505からステップ1595に直接進んで本ルーチンを一旦終了する。一方、ステップ1505にて失火が発生したと判定したとき、CPU71はステップ1510に進んで、その時点での失火発生回数Nmisfireの値に「1」を加えた値を新たな失火発生回数Nmisfireとして設定した後、ステップ1595に進んで本ルーチンを一旦終了する。
【0117】
このようにして、本ルーチンが繰り返し実行される度に、失火が発生したか否かが判定されるとともに、失火が発生したと判定されると失火発生回数Nmisfireの値が「1」づつ増大していく。この失火発生回数Nmisfireの値はバックアップRAM74に格納されており、内燃機関10が初めて運転を開始した時点で「0」に設定されるとともにその後一度もクリアされることがないので、内燃機関10が初めて運転を開始した時点からの延べ失火発生回数を示している。
【0118】
(空燃比センサ状態の判定及び触媒劣化判定)
次に、空燃比センサ状態の判定及び触媒劣化判定における作動について説明する。CPU71は図16のフローチャートにより示されたルーチンを所定時間の経過毎に実行するようになっている。
【0119】
従って、所定のタイミングになると、CPU71は図16のステップ1600から処理を開始し、ステップ1605に進んで空燃比切換制御実行中フラグXHANの値が「1」から「0」に変化したか否かをモニタする。このとき、第4モードが終了して、先に説明した図13のステップ1320にて空燃比切換制御実行中フラグXHANの値が「0」に変更されると、CPU71はステップ1605にて「Yes」と判定してステップ1610に進む。ここで、空燃比切換制御実行中フラグXHANの値が変化していなければ、CPU71はステップ1605からステップ1695に直接進んで本ルーチンを一旦終了する。
【0120】
いま、第4モードが終了した直後であるとすると、空燃比切換制御実行中フラグXHANの値が「1」から「0」に変更された直後であるから、CPU71はステップ1605からステップ1610に進み、その時点の酸素吸蔵量OSA3及びOSA4を、それぞれ最大酸素吸蔵量CSCmax及びCUFmaxとして格納する。このステップ1610は、第1触媒劣化指標値検出手段及び第2触媒劣化指標値検出手段に対応している。
【0121】
次いで、CPU71はステップ1615に進み、同ステップ1615内に記載した上記数5に示す条件が成立しているか否かを判定する。このときに使用される失火発生回数Nmisfireの値は上述した図15のルーチンの実行により現時点で得られている最新値である。ここで、ステップ1615は、空燃比センサ状態判定手段及び基準値変更手段に対応している。
【0122】
いま、上記数5に示す条件が成立しているものとして説明を続けると、CPU71はステップ1620に進んで、空燃比センサ状態判定結果フラグXSENRの値を「0」に設定し、これにより最上流空燃比センサ66,第1触媒下流空燃比センサ67,及び第2触媒下流空燃比センサ68の全てが正常であることを示す。
【0123】
次に、CPU71はステップ1625に進み、最大酸素吸蔵量CSCmaxが第1触媒劣化判定基準値CSCR以下であるか否かを判定し、最大酸素吸蔵量CSCmaxが第1触媒劣化判定基準値CSCR以下であるとき、ステップ1630にて第1触媒劣化判定結果フラグXSCRの値を「1」に設定し、これにより第1触媒53が劣化したことを示す。他方、ステップ1625の判定時において、最大酸素吸蔵量CSCmaxが第1触媒劣化判定基準値CSCRより大きいとき、CPU71はステップ1635に進んで第1触媒劣化判定結果フラグXSCRの値を「0」に設定し、これにより第1触媒53が劣化していないことを示す。ここで、ステップ1625は、第1触媒劣化判定手段に対応している。
【0124】
次いで、CPU71はステップ1640に進み、最大酸素吸蔵量CUFmaxが第2触媒劣化判定基準値CUFR以下であるか否かを判定する。そして、触媒最大酸素吸蔵量CUFmaxが第2触媒劣化判定基準値CUFR以下であるとき、CPU71はステップ1645にて第2触媒劣化判定結果フラグXUFRの値を「1」に設定し、これにより第2触媒54が劣化したことを示す。他方、ステップ1640の判定時において、最大酸素吸蔵量CUFmaxが第2触媒劣化判定基準値CUFRより大きいとき、CPU71はステップ1650に進んで第2触媒劣化判定結果フラグXUFRの値を「0」に設定し、これにより第2触媒54が劣化していないことを示す。ここで、ステップ1640は、第2触媒劣化判定手段に対応している。
【0125】
次に、CPU71はステップ1655に進んで第1触媒53の最大酸素吸蔵量CSCmaxと第2触媒54の最大酸素吸蔵量CUFmaxとの和が触媒全体劣化判定基準値CR以下であるか否かを判定する。そして、CPU71は、前記和が触媒全体劣化判定基準値CR以下であるとき、ステップ1660にて触媒全体判定結果フラグXALLRの値を「1」に設定し、これにより第1触媒53及び第2触媒54が全体として劣化したことを示す。他方、ステップ1655の判定時において、前記和が触媒全体劣化判定基準値CRより大きいとき、CPU71はステップ1665に進んで触媒全体判定結果フラグXALLRの値を「0」に設定し、これにより第1触媒53及び第2触媒54が全体としては劣化していないことを示す。
【0126】
次いで、CPU71はステップ1670に進み、酸素吸蔵量OSA3及びOSA4の各々の値を「0」に設定し、ステップ1695に進んで本ルーチンを一旦終了する。このようにして、空燃比センサが正常であると判定された場合は、第1,第2触媒53,54の各最大酸素吸蔵量CSCmax,CUFmax、及びそれらの和がそれぞれ対応する基準値以下であるか否かが判定され、対応する基準値以下であるとき、対応する触媒が劣化したものと判定される。
【0127】
一方、ステップ1615の判定時において、上記数5に示す条件が成立していなければ、ステップ1675にて空燃比センサ状態判定結果フラグXSENRの値を「1」に設定し、これにより最上流空燃比センサ66,第1触媒下流空燃比センサ67,及び第2触媒下流空燃比センサ68のいずれか一つ以上が異常であることを示す。
【0128】
次いで、CPU71はステップ1680に進んで、第1触媒劣化判定結果フラグXSCR,第2触媒劣化判定結果フラグXUFR及び触媒全体判定結果フラグXALLRの各々の値を総て「2」に設定し、これにより第1触媒53,第2触媒54,並びに第1触媒53及び第2触媒54を全体として一つの触媒と見なしたときの触媒の各々について、総て劣化判定が行われていないことを示す。
【0129】
そして、CPU71はステップ1670に進んで、酸素吸蔵量OSA3及びOSA4の各々の値を「0」に設定した後、ステップ1695に進んで本ルーチンを一旦終了する。このようにして、空燃比センサが異常であると判定された場合は、第1触媒53,第2触媒54,並びに第1触媒53及び第2触媒54を全体として一つの触媒と見なしたときの触媒の各々について、総て劣化判定が行われない。
【0130】
以上、説明したように、本発明による空燃比センサ状態判定装置によれば、最上流空燃比センサ66の出力vabyfs及び第2触媒下流空燃比センサ68の出力Voxs2の変化に基いて検出される第2触媒の最大酸素吸蔵量CUFmaxと最上流空燃比センサ66の出力vabyfs及び第1触媒下流空燃比センサ67の出力Voxs1の変化に基いて検出される第1触媒の最大酸素吸蔵量CSCmaxとの偏差と空燃比センサ状態判定基準値とを比較することで、最上流空燃比センサ66,第1触媒下流空燃比センサ67,及び第2触媒下流空燃比センサ68について正常であるという判定又は異常であるという判定を行うことができた。従って、空燃比センサの異常を検出するための専用の機械的な装置を新たに追加することなく簡易な構成で同空燃比センサの状態を判定することができた。
【0131】
また、上記空燃比センサ状態判定基準値は、正の一定値である最大酸素吸蔵量偏差正常限界値ΔCRに内燃機関10における全ての失火発生回数Nmisfireに応じた値が加算された値となっている。換言すれば、上記空燃比センサ状態判定基準値は内燃機関10の4つの気筒において失火が発生する毎に大きくなる。ここで、先に説明したように、第1触媒53及び第2触媒54は4つの気筒の全てと接続されているので内燃機関10にて発生した全ての失火の影響を受ける。この結果、第1触媒53の劣化度と第2触媒54の劣化度との間の相違の程度は失火発生回数Nmisfireに応じて大きくなる。従って、空燃比センサが正常であっても同空燃比センサが異常であると誤判定されることが防止され、同空燃比センサが正常であるという判定又は異常であるという判定をより精度よく行うことができた。
【0132】
さらには、空燃比センサが異常であるという判定が行われた場合、第1触媒53及び第2触媒54の劣化判定を禁止させるように構成されている。従って、第1触媒53及び第2触媒54が劣化したか否かを判定する際、誤判定がなされる事態が発生することを防止できた。
【0133】
本発明は上記実施形態に限定されることはなく、本発明の範囲内において種々の変形例を採用することができる。例えば、上記実施形態においては、第1触媒劣化指標値と第2触媒劣化指標値との間の相違の程度を示す値として第2触媒54の最大酸素吸蔵量CUFmaxから第1触媒53の最大酸素吸蔵量CSCmaxを減じた値を採用していたが、第2触媒54の最大酸素吸蔵量CUFmaxに対する第1触媒53の最大酸素吸蔵量CSCmaxの比(割合)又は第1触媒53の最大酸素吸蔵量CSCmaxに対する第2触媒54の最大酸素吸蔵量CUFmaxの比(割合を採用してもよい。
【0134】
また、上記実施形態においては、上記空燃比センサ状態判定基準値を内燃機関10が初めて運転を開始した時点からの延べ運転時間に応じて変更するように構成してもよい。具体的には、上記空燃比センサ状態判定基準値を算出する基準となる最大酸素吸蔵量偏差正常限界値ΔCRは正の一定値となっているが、内燃機関10が初めて運転を開始した時点からの延べ運転時間が長くなるにつれて大きくなるように構成することが好適である。この理由は以下のとおりである。
【0135】
即ち、内燃機関において失火が発生していない正常燃焼時においても、未燃ガス中に含まれる鉛や硫黄等が機関の排気ポート34から流出してくることがある。よって、第2触媒54に比べて排気ポート34に近い位置に配設されている第1触媒53には、同第2触媒に比して定常的に鉛や硫黄等がより多く流入し、定常的にも第1触媒53の劣化は第2触媒54の劣化よりも速く進行する傾向がある。この結果、内燃機関10の延べ運転時間が長くなるにつれて第1触媒の劣化度と第2触媒の劣化度との間の相違の程度は大きくなる。従って、最大酸素吸蔵量偏差正常限界値ΔCRを内燃機関10の延べ運転時間が長くなるにつれて大きくなるようにすれば、空燃比センサが正常であるという判定又は異常であるという判定をさらに一層高精度に行うことができるからである。
【0136】
また、上記実施形態においては、触媒の最大酸素吸蔵量を触媒の劣化指標値として空燃比センサ状態の判定及び触媒劣化の判定に用いていたが、例えば、上記サブフィードバック制御中において上流側空燃比センサの出力が描く軌跡長と下流側空燃比センサの出力が描く軌跡長との比(軌跡比)、上記サブフィードバック制御中において上流側空燃比センサの出力が理論空燃比相当値を横切る頻度と下流側空燃比センサの出力が理論空燃比相当値を横切る頻度との比(反転比)、及び、上記サブフィードバック制御中において上流側空燃比センサの出力が描く軌跡と理論空燃比相当値との間で形成される面積と下流側空燃比センサの出力が描く軌跡と理論空燃比相当値との間で形成される面積との比(面積比)等の触媒の劣化の程度に応じて変化する他の指標値(劣化指標値)を用いて、空燃比センサ状態の判定及び、触媒劣化の判定をするように構成してもよい。ここで、上流側空燃比センサ,下流側空燃比センサは、第1触媒53については最上流空燃比センサ66,第1触媒下流空燃比センサ67にそれぞれ対応し、第2触媒54については第1触媒下流空燃比センサ67,第2触媒下流空燃比センサ68にそれぞれ対応している。
【0137】
また、上記実施形態においては、第1触媒53及び第2触媒54が同じ排気通路(エキゾーストパイプ52)に直列に配設されているが、第1触媒53及び第2触媒54を異なる排気通路にそれぞれ並列に配設してもよい。この場合、失火発生検出手段は、第1触媒53が配設されている排気通路に接続される気筒(群)において発生した失火発生回数と第2触媒54が配設されている排気通路に接続される気筒(群)において発生した失火発生回数とを互いに独立して検出できるように構成され、基準値変更手段は、2つの失火発生回数の偏差に応じて空燃比センサ状態判定基準値を変更するように構成されることが好適である。
【0138】
第1触媒53と第2触媒54が異なる排気通路にそれぞれ並列に配設されている場合、第1触媒53の劣化度と第2触媒54の劣化度との間の相違の程度は上記2つの失火発生回数の偏差に応じて大きくなる。従って、上記のように、上記2つの失火発生回数の偏差に応じて空燃比センサ状態判定基準値を変更するように構成すれば、空燃比センサが正常であっても同空燃比センサが異常であると誤判定されることが防止され、同空燃比センサが正常であるという判定又は異常であるという判定をより精度よく行うことができるからである。
【0139】
また、上記実施形態においては、図9のステップ915の判定条件が成立したときに、その時点の第1触媒下流空燃比センサ出力Voxs1、及び第2触媒下流空燃比センサ出力Voxs2に拘らず図5の第1モードから制御を開始していたが、同判定条件成立時における第1触媒下流空燃比センサ出力Voxs1、及び第2触媒下流空燃比センサ出力Voxs2に応じて、酸素吸蔵量検出のために最初に設定される第1触媒上流空燃比を異なる空燃比に設定すること(初めに実行するモードを変更すること)が、エミッションを低減する上で好ましい。
【0140】
具体的に述べると、前記判定条件が成立したとき、第1触媒下流空燃比センサ出力Voxs1、及び第2触媒下流空燃比センサ出力Voxs2が共にリッチな空燃比であることを示している場合には、上記実施形態のとおり、第1モードから第1触媒上流空燃比の制御を始める。即ち、第1触媒上流空燃比を所定のリーン空燃比とする。
【0141】
一方、前記判定条件が成立したとき、第1触媒下流空燃比センサ出力Voxs1がリーン、及び第2触媒下流空燃比センサ出力Voxs2がリッチであることを示している場合、第1モードと同様に第1触媒上流空燃比を所定のリーン空燃比とする第2モードから制御を開始する。
【0142】
また、前記判定条件が成立したとき、第1触媒下流空燃比センサ出力Voxs1、及び第2触媒下流空燃比センサ出力Voxs2が共にリーンな空燃比であることを示している場合には、第1触媒上流空燃比を所定のリッチ空燃比とする第3モードから制御を開始する。この場合、最初の第3モード及び次に実行される第4モードにおいて検出される最大酸素吸蔵量は正確ではないので、同最大酸素吸蔵量を空燃比センサ状態の判定等には使用せず、第4モード実行後に図5に破線で示した後述する第5モードの制御及び第6モードの制御を継続して実行することにより、同第5モード及び第6モードにおいて検出された最大酸素吸蔵量を空燃比センサ状態の判定等に使用するように構成することが好適である。
【0143】
更に、前記判定条件が成立したとき、第1触媒下流空燃比センサ出力Voxs1がリッチ、及び第2触媒下流空燃比センサ出力Voxs2がリーンであることを示している場合、第3モードと同様に第1触媒上流空燃比を所定のリッチ空燃比とする第4モードから制御を開始する。この場合も、最初の第4モードにおいて検出される最大酸素吸蔵量は正確ではないので同最大酸素吸蔵量を空燃比センサ状態の判定等には使用せず、第4モード実行後に図5に破線で示した後述する第5モードの制御及び第6モードの制御を継続して実行することにより、同第5モード及び第6モードにおいて検出された最大酸素吸蔵量を空燃比センサ状態の判定等に使用するように構成することが好適である。
【0144】
第4モード実行後にかかる第5モード及び第6モードを継続して実行する場合についてより具体的に述べると、図5の時刻t5に示したように、第2触媒下流空燃比センサ68の出力Voxs2がリーンを示す値からリッチを示す値に変化したとき、CPU71は図5(A)に破線で示したように第1触媒上流空燃比を再び上記所定のリーン空燃比に制御する。これにより、第1触媒53にリーンな空燃比のガスが流入する。また、時刻t5の時点においては、第1触媒53の酸素吸蔵量は「0」となっている。従って、図5(C)に破線で示したように、時刻t5以降において、第1触媒53内の酸素吸蔵量は「0」から増大し続け、時刻t6にて最大酸素吸蔵量CSCmaxに達する。この結果、時刻t6にて、第1触媒53から酸素を含むガスが流出し始め、図5(B)に破線で示したように、第1触媒下流空燃比センサ67の出力Voxs1はリッチを示す値からリーンを示す値に変化する。この時刻t5〜t6間の作動を第5モード(Mode=5)における作動と呼ぶ。
【0145】
CPU71は、かかる時刻t5〜t6間において、以下のようにして第1触媒53の最大酸素吸蔵量CSCmaxを検出する。即ち、第1触媒下流空燃比センサ67の出力Voxs1がリーン空燃比を示す値となった時刻t6では、第1触媒53の酸素吸蔵量が最大酸素吸蔵量CSCmaxに到達したことを意味するから、時刻t5〜t6までの間、下記数10及び下記数11に基いて酸素吸蔵量の変化量ΔO2を算出するとともにこれを積算し、同時刻t6での積算値を最大酸素吸蔵量CSCmaxとして算出する。
【0146】
【数10】
ΔO2=0.23・mfr・(abyfs − stoich)
【0147】
【数11】
CSCmax=ΣΔO2(区間t=t5〜t6)
【0148】
この数10に示したように、所定時間tsample内の噴射量の合計量mfrに、空燃比A/Fの理論空燃比からの偏移(abyfs − stoich)を乗じることで、同所定時間tsampleにおける空気の過剰量が求められ、この空気の過剰量に酸素の重量割合を乗じることで同所定時間tsampleにおける酸素吸蔵量変化量(吸蔵酸素量)ΔO2が求められる。そして、数11に示したように、酸素吸蔵量変化量ΔO2を時刻t5〜t6に渡って積算することで、第1触媒53の酸素吸蔵量が「0」である状態から酸素を最大限に吸蔵するまでの酸素量、即ち最大酸素吸蔵量CSCmaxが算出される。
【0149】
時刻t6にて、第1触媒下流空燃比センサ67の出力Voxs1がリッチを示す値からリーンを示す値に変化した後も、CPU71は、第1触媒上流空燃比を前記所定のリーン空燃比に制御し続ける。この場合、第1触媒53の酸素吸蔵量は最大酸素吸蔵量CSCmaxに到達している。従って、第1触媒53からはリーンな空燃比のガスが流出し、これが第2触媒54内に流入する。一方、時刻t6の時点においては、第2触媒54の酸素吸蔵量は「0」となっている。従って、図5(E)に破線で示したように、時刻t6以降において、第2触媒54内の酸素吸蔵量は「0」から増大し続け、時刻t7にて最大酸素吸蔵量CUFmaxに達する。この結果、時刻t7にて、第2触媒54から酸素を含むガスが流出し始め、図5(D)に破線で示したように、第2触媒下流空燃比センサ68の出力Voxs2はリッチを示す値からリーンを示す値に変化する。この時刻t6〜t7間の作動を第6モード(Mode=6)における作動と呼ぶ。
【0150】
CPU71は、かかる時刻t6〜t7間においても、以下のようにして第2触媒54の最大酸素吸蔵量CUFmaxを検出する。即ち、下記数12及び下記数13に基いて酸素吸蔵量の変化量ΔO2を算出するとともに積分し、同時刻t7での積分値を最大酸素吸蔵量CUFmaxとして算出する。
【0151】
【数12】
ΔO2=0.23・mfr・(abyfs − stoich)
【0152】
【数13】
CUFmax=ΣΔO2(区間t=t6〜t7)
【0153】
そして、CPU71は時刻t7にて機関に吸入される混合気の空燃比を理論空燃比に戻すとともに、同時刻t7以降において、空燃比センサ状態の判定等を行う。このようにして、第5モードにおいて第1触媒53の最大酸素吸蔵量CSCmaxが検出されるとともに、第6モードにおいて第2触媒54の最大酸素吸蔵量CUFmaxが検出される。
【0154】
また、第4モード実行後にかかる第5モード及び第6モードを継続して実行する場合、CPU71は、図13に示した上述した第4モード制御ルーチンに代えて図17に示した第4モード制御ルーチンを所定時間の経過毎に繰り返し実行するとともに、図18に示した第5モード制御ルーチン及び図19に示した第6モード制御ルーチンを所定時間の経過毎に繰り返し実行する必要がある。かかる図17に示した第4モード制御ルーチン,図18に示した第5モード制御ルーチン及び図19に示した第6モード制御ルーチンにおける作動は、先に説明した図10〜図13に示した第1モード〜第4モードにおける作動と類似しているので、ここではその詳細な説明を省略する。
【図面の簡単な説明】
【図1】 本発明による空燃比センサ状態判定装置を搭載した排気浄化装置を内燃機関に適用したシステムの概略図である。
【図2】 図1に示したエアフローメータの出力電圧と計測された吸入空気量との関係を示したマップである。
【図3】 図3(a)は、図1に示した最上流空燃比センサの出力電圧と空燃比との関係を示したマップであり、図3(b)は、図1に示した第1触媒下流空燃比センサ、及び第2触媒下流空燃比センサの出力電圧と空燃比との関係を示したマップである。
【図4】 図1に示した第1触媒及び第2触媒の各々の最大酸素吸蔵量と内燃機関の延べ運転時間との関係を示したグラフである。
【図5】 図1に示した空燃比センサ状態判定装置が各触媒の最大酸素吸蔵量を求める場合の第1触媒上流の空燃比、各空燃比センサの出力、各触媒の酸素吸蔵量の変化を示したタイムチャートである。
【図6】 図1に示したCPUが実行する燃料噴射量計算のためのルーチンを示したフローチャートである。
【図7】 図1に示したCPUが実行する空燃比フィードバック補正量を計算するためのルーチンを示したフローチャートである。
【図8】 図1に示したCPUが実行するサブフィードバック制御量を計算するためのルーチンを示したフローチャートである。
【図9】 図1に示したCPUが実行する空燃比センサ状態の判定を開始するか否かを決定するためのルーチンを示したフローチャートである。
【図10】 図1に示したCPUが実行する第1モードのルーチンを示したフローチャートである。
【図11】 図1に示したCPUが実行する第2モードのルーチンを示したフローチャートである。
【図12】 図1に示したCPUが実行する第3モードのルーチンを示したフローチャートである。
【図13】 図1に示したCPUが実行する第4モードのルーチンを示したフローチャートである。
【図14】 図1に示したCPUが実行する酸素吸蔵量を算出するためのルーチンを示したフローチャートである。
【図15】 図1に示したCPUが実行する失火発生回数を検出するためのルーチンを示したフローチャートである。
【図16】 図1に示したCPUが実行する空燃比センサ状態の判定及び触媒劣化の判定を行うためのルーチンを示したフローチャートである。
【図17】 第4モード実行後に第5モード及び第6モードを継続して実行する場合における、図1に示したCPUが実行する第4モードのルーチンを示したフローチャートである。
【図18】 第4モード実行後に第5モード及び第6モードを継続して実行する場合における、図1に示したCPUが実行する第5モードのルーチンを示したフローチャートである。
【図19】 第4モード実行後に第5モード及び第6モードを継続して実行する場合における、図1に示したCPUが実行する第6モードのルーチンを示したフローチャートである。
【符号の説明】
10…内燃機関、25…燃焼室、39…インジェクタ、52…エキゾーストパイプ(排気管)、53…三元触媒(第1触媒、前段触媒)、54…三元触媒(第2触媒、後段触媒)、66…最上流空燃比センサ、67…第1触媒下流空燃比センサ、68…第2触媒下流空燃比センサ、70…電気制御装置、71…CPU。
Claims (4)
- 内燃機関の排気通路に配設された第1触媒と、前記第1触媒よりも下流の前記排気通路に配設されるとともに同第1触媒から流出する排気ガスの空燃比を検出する第1触媒下流空燃比センサと、前記内燃機関の排気通路に配設された第2触媒と、前記第2触媒よりも下流の前記排気通路に配設されるとともに同第2触媒から流出する排気ガスの空燃比を検出する第2触媒下流空燃比センサとを備えた同内燃機関の排気浄化装置に適用され、前記第1触媒下流空燃比センサ及び前記第2触媒下流空燃比センサの状態の判定を行う空燃比センサ状態判定装置であって、
少なくとも前記第1触媒下流空燃比センサの出力に基いて前記第1触媒の劣化の程度を示す第1触媒劣化指標値を取得する第1触媒劣化指標値取得手段と、
少なくとも前記第2触媒下流空燃比センサの出力に基いて前記第2触媒の劣化の程度を示す第2触媒劣化指標値を取得する第2触媒劣化指標値取得手段と、
前記第1触媒劣化指標値と前記第2触媒劣化指標値との比較により得られる同第1触媒劣化指標値と同第2触媒劣化指標値との相違の程度を示す値と空燃比センサ状態判定基準値との比較結果に基いて、前記第1触媒下流空燃比センサ及び前記第2触媒下流空燃比センサが正常であるという判定、及び/又は同第1触媒下流空燃比センサ及び同第2触媒下流空燃比センサの少なくとも一つが異常であるという判定を行う空燃比センサ状態判定手段と、
を備えた空燃比センサ状態判定装置。 - 前記空燃比センサ状態判定装置が適用される排気浄化装置が備える前記第2触媒は、前記第1触媒下流空燃比センサよりも下流の前記排気通路に配設された請求項1に記載の空燃比センサ状態判定装置。
- 前記内燃機関において失火が発生したことを検出する失火発生検出手段と、
前記失火発生検出手段により検出された失火の発生回数に応じて前記空燃比センサ状態判定基準値を変更する基準値変更手段と、
を備えた請求項1又は請求項2に記載の空燃比センサ状態判定装置。 - 前記空燃比センサ状態判定装置が適用される排気浄化装置は、
前記第1触媒劣化指標値に基いて前記第1触媒が劣化したか否かを判定する第1触媒劣化判定手段と、
前記第2触媒劣化指標値に基いて前記第2触媒が劣化したか否かを判定する第2触媒劣化判定手段とを備え、
前記空燃比センサ状態判定手段は、
前記第1触媒下流空燃比センサ及び前記第2触媒下流空燃比センサの少なくとも一つが異常であるという判定を行った場合、前記第1触媒劣化判定手段及び前記第2触媒劣化判定手段による判定を禁止させるように構成された請求項1乃至請求項3のいずれか一項に記載の空燃比センサ状態判定装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002179694A JP3879596B2 (ja) | 2002-06-20 | 2002-06-20 | 空燃比センサ状態判定装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002179694A JP3879596B2 (ja) | 2002-06-20 | 2002-06-20 | 空燃比センサ状態判定装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004019628A JP2004019628A (ja) | 2004-01-22 |
JP3879596B2 true JP3879596B2 (ja) | 2007-02-14 |
Family
ID=31177037
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002179694A Expired - Fee Related JP3879596B2 (ja) | 2002-06-20 | 2002-06-20 | 空燃比センサ状態判定装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3879596B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007239512A (ja) * | 2006-03-06 | 2007-09-20 | Toyota Motor Corp | 異常診断装置及び方法 |
-
2002
- 2002-06-20 JP JP2002179694A patent/JP3879596B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2004019628A (ja) | 2004-01-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3846375B2 (ja) | 触媒劣化判定方法 | |
JP3963130B2 (ja) | 触媒劣化判定装置 | |
JP4973807B2 (ja) | 内燃機関の空燃比制御装置 | |
JP5196003B2 (ja) | 内燃機関の空燃比気筒間インバランス判定装置 | |
JP2010169038A (ja) | 多気筒内燃機関の気筒間空燃比ばらつき判定装置 | |
JP3922091B2 (ja) | 内燃機関の空燃比制御装置 | |
US20120330533A1 (en) | Apparatus for and method of detecting abnormal air-fuel ratio variation among cylinders of multi-cylinder internal combustion engine | |
US7874143B2 (en) | Air-fuel ratio control apparatus of internal combustion engine and control method thereof | |
JP3846368B2 (ja) | 触媒劣化判定装置 | |
JP4082130B2 (ja) | 触媒劣化判定装置 | |
JP3815386B2 (ja) | 触媒劣化判定方法 | |
JP2005351153A (ja) | 触媒劣化判定装置 | |
US8949000B2 (en) | Control device and control method for internal combustion engine | |
JP3879596B2 (ja) | 空燃比センサ状態判定装置 | |
JP5348228B2 (ja) | 気筒間空燃比ばらつき異常検出装置 | |
JP2005009401A (ja) | 内燃機関の排気浄化装置 | |
JP4023174B2 (ja) | 触媒劣化判定装置 | |
JP2006233781A (ja) | 内燃機関の触媒診断装置 | |
JP4349205B2 (ja) | 空燃比制御装置 | |
JP2005194981A (ja) | 触媒劣化判定装置 | |
JP2004245061A (ja) | 内燃機関の排気浄化装置 | |
JP2013130119A (ja) | 内燃機関の空燃比制御装置 | |
JP2007231902A (ja) | 内燃機関の空燃比制御装置 | |
JP2004346753A (ja) | 内燃機関の排気浄化装置 | |
JP2017115802A (ja) | 内燃機関の空燃比制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050602 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060626 |
|
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: 20061017 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20061030 |
|
LAPS | Cancellation because of no payment of annual fees |