JP5045820B2 - 多気筒内燃機関の監視装置 - Google Patents
多気筒内燃機関の監視装置 Download PDFInfo
- Publication number
- JP5045820B2 JP5045820B2 JP2010548352A JP2010548352A JP5045820B2 JP 5045820 B2 JP5045820 B2 JP 5045820B2 JP 2010548352 A JP2010548352 A JP 2010548352A JP 2010548352 A JP2010548352 A JP 2010548352A JP 5045820 B2 JP5045820 B2 JP 5045820B2
- Authority
- JP
- Japan
- Prior art keywords
- value
- air
- fuel ratio
- learning value
- state
- 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
- 238000002485 combustion reaction Methods 0.000 title claims description 74
- 238000012806 monitoring device Methods 0.000 title claims description 49
- 239000000446 fuel Substances 0.000 claims description 818
- 230000005856 abnormality Effects 0.000 claims description 157
- 238000011144 upstream manufacturing Methods 0.000 claims description 134
- 238000002347 injection Methods 0.000 claims description 77
- 239000007924 injection Substances 0.000 claims description 77
- 238000012544 monitoring process Methods 0.000 claims description 75
- 239000003054 catalyst Substances 0.000 claims description 72
- 239000000203 mixture Substances 0.000 claims description 66
- 230000008859 change Effects 0.000 claims description 53
- 230000007423 decrease Effects 0.000 claims description 13
- 230000002159 abnormal effect Effects 0.000 claims description 10
- 230000002123 temporal effect Effects 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 6
- 239000007789 gas Substances 0.000 description 107
- 229910052739 hydrogen Inorganic materials 0.000 description 69
- 239000001301 oxygen Substances 0.000 description 66
- 229910052760 oxygen Inorganic materials 0.000 description 66
- 239000001257 hydrogen Substances 0.000 description 60
- QVGXLLKOCUKJST-UHFFFAOYSA-N atomic oxygen Chemical compound [O] QVGXLLKOCUKJST-UHFFFAOYSA-N 0.000 description 55
- 230000010354 integration Effects 0.000 description 49
- 238000009792 diffusion process Methods 0.000 description 44
- 150000002431 hydrogen Chemical class 0.000 description 33
- UFHFLCQGNIYNRP-UHFFFAOYSA-N Hydrogen Chemical compound [H][H] UFHFLCQGNIYNRP-UHFFFAOYSA-N 0.000 description 27
- 239000007784 solid electrolyte Substances 0.000 description 23
- 238000000034 method Methods 0.000 description 22
- 238000012545 processing Methods 0.000 description 19
- 230000008569 process Effects 0.000 description 18
- 239000000126 substance Substances 0.000 description 16
- 229910002091 carbon monoxide Inorganic materials 0.000 description 15
- 238000001514 detection method Methods 0.000 description 12
- -1 oxygen ion Chemical class 0.000 description 10
- MWUXSHHQAYIFBG-UHFFFAOYSA-N nitrogen oxide Inorganic materials O=[N] MWUXSHHQAYIFBG-UHFFFAOYSA-N 0.000 description 9
- 238000006243 chemical reaction Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 239000000463 material Substances 0.000 description 7
- 239000004215 Carbon black (E152) Substances 0.000 description 6
- 101150024075 Mapk1 gene Proteins 0.000 description 6
- 238000013459 approach Methods 0.000 description 6
- 238000012937 correction Methods 0.000 description 6
- 229930195733 hydrocarbon Natural products 0.000 description 6
- 150000002430 hydrocarbons Chemical class 0.000 description 6
- BASFCYQUMIYNBI-UHFFFAOYSA-N platinum Chemical compound [Pt] BASFCYQUMIYNBI-UHFFFAOYSA-N 0.000 description 6
- UGFAIRIUMAVXCW-UHFFFAOYSA-N Carbon monoxide Chemical compound [O+]#[C-] UGFAIRIUMAVXCW-UHFFFAOYSA-N 0.000 description 4
- 230000007812 deficiency Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 239000013067 intermediate product Substances 0.000 description 4
- 238000005192 partition Methods 0.000 description 4
- 238000012887 quadratic function Methods 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 230000003247 decreasing effect Effects 0.000 description 3
- 229910000510 noble metal Inorganic materials 0.000 description 3
- 230000003647 oxidation Effects 0.000 description 3
- 238000007254 oxidation reaction Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 3
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 2
- CURLTUGMZLYLDI-UHFFFAOYSA-N Carbon dioxide Chemical compound O=C=O CURLTUGMZLYLDI-UHFFFAOYSA-N 0.000 description 2
- MCMNRKCIXSYSNV-UHFFFAOYSA-N Zirconium dioxide Chemical compound O=[Zr]=O MCMNRKCIXSYSNV-UHFFFAOYSA-N 0.000 description 2
- 230000004913 activation Effects 0.000 description 2
- 229910052799 carbon Inorganic materials 0.000 description 2
- 230000003197 catalytic effect Effects 0.000 description 2
- 239000000919 ceramic Substances 0.000 description 2
- 239000000567 combustion gas Substances 0.000 description 2
- 150000001875 compounds Chemical class 0.000 description 2
- 230000001276 controlling effect Effects 0.000 description 2
- 239000000498 cooling water Substances 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 2
- 230000001590 oxidative effect Effects 0.000 description 2
- 230000035699 permeability Effects 0.000 description 2
- 238000007747 plating Methods 0.000 description 2
- 229910052697 platinum Inorganic materials 0.000 description 2
- 230000035945 sensitivity Effects 0.000 description 2
- 150000003384 small molecules Chemical class 0.000 description 2
- PNEYBMLMFCGWSK-UHFFFAOYSA-N Alumina Chemical compound [O-2].[O-2].[O-2].[Al+3].[Al+3] PNEYBMLMFCGWSK-UHFFFAOYSA-N 0.000 description 1
- NINIDFKCEFEMDL-UHFFFAOYSA-N Sulfur Chemical compound [S] NINIDFKCEFEMDL-UHFFFAOYSA-N 0.000 description 1
- 229910002092 carbon dioxide Inorganic materials 0.000 description 1
- 239000001569 carbon dioxide Substances 0.000 description 1
- CETPSERCERDGAM-UHFFFAOYSA-N ceric oxide Chemical compound O=[Ce]=O CETPSERCERDGAM-UHFFFAOYSA-N 0.000 description 1
- 229910000422 cerium(IV) oxide Inorganic materials 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000002737 fuel gas Substances 0.000 description 1
- 239000003502 gasoline Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000013021 overheating Methods 0.000 description 1
- 150000002926 oxygen Chemical class 0.000 description 1
- 238000005293 physical law Methods 0.000 description 1
- 238000007750 plasma spraying Methods 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 230000004043 responsiveness Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 229910002076 stabilized zirconia Inorganic materials 0.000 description 1
- 239000003381 stabilizer Substances 0.000 description 1
- 229910052717 sulfur Inorganic materials 0.000 description 1
- 239000011593 sulfur Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F02—COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
- F02D—CONTROLLING COMBUSTION ENGINES
- F02D41/00—Electrical control of supply of combustible mixture or its constituents
- F02D41/008—Controlling each cylinder individually
- F02D41/0085—Balancing of cylinder outputs, e.g. speed, torque or air-fuel ratio
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F02—COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
- F02D—CONTROLLING COMBUSTION ENGINES
- F02D41/00—Electrical control of supply of combustible mixture or its constituents
- F02D41/02—Circuit arrangements for generating control signals
- F02D41/14—Introducing closed-loop corrections
- F02D41/1438—Introducing closed-loop corrections using means for determining characteristics of the combustion gases; Sensors therefor
- F02D41/1439—Introducing closed-loop corrections using means for determining characteristics of the combustion gases; Sensors therefor characterised by the position of the sensor
- F02D41/1441—Plural sensors
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F02—COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
- F02D—CONTROLLING COMBUSTION ENGINES
- F02D41/00—Electrical control of supply of combustible mixture or its constituents
- F02D41/02—Circuit arrangements for generating control signals
- F02D41/14—Introducing closed-loop corrections
- F02D41/1438—Introducing closed-loop corrections using means for determining characteristics of the combustion gases; Sensors therefor
- F02D41/1493—Details
- F02D41/1495—Detection of abnormalities in the air/fuel ratio feedback system
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F02—COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
- F02D—CONTROLLING COMBUSTION ENGINES
- F02D41/00—Electrical control of supply of combustible mixture or its constituents
- F02D41/24—Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means
- F02D41/2406—Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using essentially read only memories
- F02D41/2425—Particular ways of programming the data
- F02D41/2429—Methods of calibrating or learning
- F02D41/2451—Methods of calibrating or learning characterised by what is learned or calibrated
- F02D41/2454—Learning of the air-fuel ratio control
Landscapes
- Engineering & Computer Science (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Mechanical Engineering (AREA)
- General Engineering & Computer Science (AREA)
- Combined Controls Of Internal Combustion Engines (AREA)
Description
このような空燃比制御装置は、全気筒に対して共通する制御量(空燃比フィードバック量)を用いて機関の空燃比を制御する。即ち、機関全体に供給される混合気の空燃比の平均値が理論空燃比に一致するように空燃比制御が実行される。
例えば、機関の吸入空気量の測定値又は推定値が「真の吸入空気量」と乖離した場合、各気筒の空燃比は一律に理論空燃比に対して「リッチ側又はリーン側」へと偏移する。この場合、従来の空燃比制御は、機関に供給される混合気の空燃比を「リーン側又はリッチ側」へと移行する。その結果、各気筒に供給される混合気の空燃比は理論空燃比近傍の空燃比へと修正される。従って、各気筒における燃焼は完全燃焼(混合気の空燃比が理論空燃比であるときの燃焼)に近づき、且つ、三元触媒に流入する排ガスの空燃比は理論空燃比又は理論空燃比近傍の空燃比となる。その結果、エミッションの悪化が回避される。
ところで、一般に、電子燃料噴射式内燃機関は、各気筒又は各気筒に連通した吸気ポートに一つの燃料噴射弁を備えている。従って、ある特定の気筒の燃料噴射弁の特性が「指示された燃料噴射量よりも過大な量の燃料を噴射する特性」となると、その特定の気筒に供給される混合気の空燃比(その気筒の空燃比)のみが大きくリッチ側に変化する。即ち、気筒間における空燃比の不均一性(空燃比気筒間ばらつき、空燃比の気筒間インバランス)が大きくなる。換言すると、複数の気筒のそれぞれに供給される混合気の空燃比(気筒別空燃比)の間に不均衡が生じる。
この場合、機関に供給される混合気の空燃比の平均は、理論空燃比よりもリッチ側の空燃比となる。従って、全気筒に対して共通する空燃比フィードバック量により、上記特定の気筒の空燃比は理論空燃比に近づけられるようにリーン側へと変更される。但し、その特定の気筒の空燃比は依然として理論空燃比よりも相当にリッチ側の空燃比である。更に、他の気筒の空燃比は理論空燃比から遠ざけられるようにリーン側へと変更させられる。このとき、他の気筒の気筒数は特定気筒の気筒数(1気筒)よりも多いので、同他の気筒の空燃比は理論空燃比よりも僅かにリーン側の空燃比へと変更させられる。その結果、機関に供給される混合気の全体の空燃比の平均は略理論空燃比に一致させられる。
しかしながら、上記特定の気筒の空燃比は依然として理論空燃比よりもリッチ側の空燃比となり、残りの気筒の空燃比は理論空燃比よりもリーン側の空燃比となるから、各気筒における混合気の燃焼状態は完全燃焼とは相違した燃焼状態となる。この結果、各気筒から排出されるエミッションの量(未燃物の量及び窒素酸化物の量)が増大する。このため、機関に供給される混合気の空燃比の平均が理論空燃比であったとしても、増大したエミッションを三元触媒が浄化しきれず、結果として、エミッションが悪化する虞がある。従って、気筒間における空燃比の不均一性が過大になっていることを検出し、何らかの対策を講じさせるようにすることはエミッションを悪化させないために重要である。
このような「気筒間における空燃比の不均一性(空燃比気筒間インバランス、気筒別空燃比の間の不均衡)」が過大になったか否かを判定する従来の装置(監視装置)の一つは、排気集合部に配設された単一の空燃比センサの出力を分析することにより、各気筒の空燃比を表す推定空燃比を取得する。そして、この従来の装置は、各気筒の推定空燃比を用いて「気筒間における空燃比の不均一性」が過大になったか否かを判定するようになっている(例えば、特開2000−220489号公報を参照。)。
ところで、サブフィードバック量は、下流側空燃比センサの出力値により表される空燃比を理論空燃比(下流側目標空燃比)に一致させるための「空燃比のフィードバック量(燃料噴射量の補正量)」である。サブフィードバック量を用いた空燃比の制御は、サブフィードバック制御とも称呼される。
サブフィードバック制御が十分長い期間に渡って安定的に実行されると、サブフィードバック量は「収束値」へと収束する。この収束値はサブフィードバック量の定常成分(例えば、積分項等)に相当する値である。そこで、従来の装置は、サブフィードバック量の定常成分を反映した「サブフィードバック量の学習値」を算出し且つメモリに記憶させておき、サブフィードバック制御が実行できない場合には記憶した学習値を使用して機関の空燃比を制御するように構成されている。
サブフィードバック量の学習値は、「サブフィードバック制御及びサブフィードバック量の学習値の更新」が十分長い期間に渡って安定的に実行されると、サブフィードバック量の収束値に相当する値(即ち、学習値の収束値)に収束する。後に詳述するように、この学習値の収束値は、「空燃比気筒間インバランスの程度」及び「失火率」等を良好に反映した値になる。そこで、本発明による多気筒内燃機関の監視装置は、サブフィードバック量の学習値に基いて異常判定用の第1パラメータを取得し、その第1パラメータに基いて機関に異常状態が発生しているか否かの判定(異常判定)を行う。
従って、正確な異常判定を行うためには、第1パラメータの基礎データとなる学習値がその収束値に十分に接近していることが必要である。一方、機関始動後において、異常判定が遅れるとエミッションが悪化する虞がある。そのため、異常判定は機関の始動後において出来るだけ早期に行われることが望ましい。
しかしながら、機関の始動直後においては、学習値がその収束値に十分接近していない場合があるので、そのような場合に第1パラメータを取得し且つその第1パラメータに基づく異常判定を実行すると誤判定が発生する。本発明は、このような課題に対処するためになされたものである。即ち、本発明の目的の一つは、サブフィードバック量の学習値に基いて算出される「異常判定用の第1パラメータ」に基いて異常判定を行う内燃機関の監視装置であって、出来るだけ早期に且つ精度良く異常判定を行うことができる監視装置を提供することにある。
本発明による監視装置は、多気筒内燃機関に適用されるとともに、
燃料を噴射する燃料噴射弁と、
前記機関の排気通路であって「前記機関の複数の気筒の燃焼室から排出された排ガスが集合する排気集合部」よりも下流側の部位に配設された触媒と、
「前記排気集合部」又は「前記排気集合部と前記触媒との間の前記排気通路」に配設され且つ「同配設された部位を流れるガスの空燃比に応じた出力値」を出力する上流側空燃比センサと、
前記排気通路であって前記触媒よりも下流側の部位に配設されるとともに「同配設された部位を流れるガスの空燃比に応じた出力値」を出力する下流側空燃比センサと、
所定の第1更新タイミングが到来する毎に「前記下流側空燃比センサの出力値により表される空燃比」を「理論空燃比」に一致させるためのサブフィードバック量を算出するサブフィードバック量算出手段と、
所定の第2更新タイミングが到来する毎に「少なくとも前記上流側空燃比センサの出力値」と「前記サブフィードバック量」とに基いて「前記機関に供給される混合気の空燃比が理論空燃比に一致する」ように「前記燃料噴射弁から噴射される燃料の量」を制御する燃料噴射制御手段と、
所定の第3更新タイミングが到来する毎に「前記サブフィードバック量の学習値」を「前記サブフィードバック量の定常成分に応じた量」となるように更新する学習手段と、
前記学習値に応じて変化する「異常判定用の第1パラメータ」に基いて「前記機関に異常状態が発生しているか否か」の異常判定を実行する監視手段と、
を備える。
例えば、サブフィードバック量は、下流側空燃比センサの出力値により表される空燃比と理論空燃比との偏差をなくすように、比例・積分制御又は比例・微分・積分制御により算出され得る。この場合、サブフィードバック量に含まれる積分項の基礎となる「前記偏差の時間積分値に相当する値」は、前記サブフィードバック量の定常成分に応じた量である。従って、サブフィードバック量は「前記偏差の時間積分値に相当する値」そのものであってもよい。また、サブフィードバック量の学習値は、「前記サブフィードバック量の定常成分に応じた量」となるように更新されればよいので、サブフィードバック量を時間軸上で例えば一次遅れフィルタ(ローパスフィルタ)等によって平滑化した値、或いは、サブフィードバック量の所定期間における時間平均値、等であってもよい。
更に、本監視装置は、
前記学習値の更新速度を、少なくとも、第1更新速度と、前記第1更新速度よりも小さい第2更新速度と、前記第2更新速度よりも小さい第3更新速度と、のうちの何れかの更新速度に設定する学習更新速度設定手段と、
「前記監視手段による前記異常判定の実行」を「前記設定された学習値の更新速度」に基いて許可又は中止する監視制御手段と、
を備える。
これによれば、例えば学習値の収束の程度(収束状態)に応じて、学習値の更新速度が、少なくとも、「第1更新速度と、前記第1更新速度よりも小さい第2更新速度と、前記第2更新速度よりも小さい第3更新速度と、」のうちの何れかの更新速度に設定され得る。従って、学習値がその収束値の近傍に至るまでの時間を短縮することができる。これにより、「学習値に応じて変化する異常判定用の第1パラメータ」に基づく異常判定を早期に実行することが可能となる。
その一方、例えば、学習値の更新速度が「相対的に大きい第1更新速度」に設定されている場合に、「フューエルカット制御、蒸発燃料ガスの導入及びバルブオーバーラップ期間の変更」等の「機関の空燃比を乱す何らかの外乱」が発生したとき、学習値はその外乱に敏感に反応し、収束値から大きく相違した値になる虞がある。更に、学習値が急速に変更されている状態においては、学習値は収束値の近傍の値でない可能性が高い。
そこで、本監視装置は、学習値の更新速度に基づいて、「学習値に応じて変化する異常判定用の第1パラメータ」に基づく異常判定を実行したり中止したりする。この結果、「収束値近傍の値となって安定している学習値」を早期に得ることができ、且つ、そのような安定している学習値のみに基づいて第1パラメータを得ることができる。この結果、早期に且つ精度良く異常判定を行うことができる監視装置が提供される。
この内燃機関の監視装置において、
前記学習更新速度設定手段は、
「前記学習値の収束値」に対する「前記学習値の収束状態」が、
(a)前記学習値が前記収束値近傍にて安定している安定状態と、
(b)前記学習値が前記収束値から乖離し且つ変化速度が大きい不安定状態と、
(c)前記安定状態と前記不安定状態との間の状態にある準安定状態と、
の少なくとも3つの状態のうちの何れの状態であるかを、前記学習値に関連する第2パラメータ(例えば、所定期間における学習値の変化幅、或いは、所定期間における学習値の実際の変化速度の平均値等)に基いて判定するように構成され得る。
更に、前記学習更新速度設定手段は、
前記学習値の収束状態が前記不安定状態であると判定されているときに前記学習値の更新速度を前記第1更新速度に設定し、
前記学習値の収束状態が前記準安定状態にあると判定されているときに前記学習値の更新速度を前記第2更新速度に設定し、
前記学習値の収束状態が前記安定状態にあると判定されているときに前記学習値の更新速度を前記第3更新速度に設定する、
ように構成され得る。
これによれば、学習値の「その収束値」への収束状態(換言すると、学習値の安定度合い)が、安定状態と、不安定状態と、準安定状態と、の何れに属しているかが判定(識別)される。更に、学習値の更新速度が、判定(識別)された状態に応じて設定される。即ち、学習値の収束状態が不安定状態にある場合、学習値の更新速度は「最も大きい更新速度である第1更新速度」に設定されるので、学習値は収束値に向けて急速に接近する。更に、学習値の収束状態が準安定状態にある場合、学習値の更新速度は「中程度の更新速度である第2更新速度」に設定されるので、学習値は収束値に向けて安定的に且つ比較的速やかに接近する。加えて、学習値の収束状態が安定状態にある場合、学習値の更新速度は「最も小さい更新速度である第3更新速度」に設定されるので、学習値は収束値近傍の値を安定的に維持する。従って、学習値を短期間内に収束値近傍の値に変化させ、その後、安定化させることができる。
前記監視装置において、
前記監視制御手段は、
前記学習値の収束状態が前記安定状態にあると判定されている場合、又は、「前記学習値の収束状態が前記準安定状態にある」と判定されている期間が「所定の第1閾値期間」以上となった場合、前記監視手段による前記異常判定の実行を許可するように構成されることが好適である。
前記学習値の収束状態が前記安定状態にあると判定されている場合、学習値は収束値近傍の値となっているから、その学習値に応じて変化する異常判定用の第1パラメータは学習値の収束値を良好に反映する。従って、異常判定を正確に行うことができる。
しかしながら、前記学習値の収束状態が前記安定状態にあると判定されている場合にのみ異常判定を実行するように構成されていると、異常判定の実行が遅れる場合がある。そこで、上記構成の監視装置は、前記学習値の収束状態が前記準安定状態にあると判定されている場合であっても、そのように判定されている期間が「所定の第1閾値期間」以上になっているのであれば、異常判定を実行するように構成されている。これは、「前記学習値の収束状態が前記準安定状態にある」と判定されている期間が「所定の第1閾値期間」以上になっているのであれば、学習値はその収束値に安定的に接近しており且つ収束値近傍の値となっていると考えられるからである。従って、この場合にも異常判定の実行を許可することにより、異常判定をより早期に行うことができる。
更に、前記監視装置において、
前記学習更新速度設定手段は、
所定の状態判定期間が経過する毎に「同経過した状態判定期間における前記学習値の変化幅」を「前記学習値に関連する第2パラメータ」として取得するとともに、「前記取得された学習値の変化幅」と「所定の判定用閾値」との「大小比較の結果」に基いて「前記学習値の収束状態が前記3つの状態のうちの何れの状態にあるか」を判定するように構成され、
前記監視制御手段は、
前記学習値の収束状態が「前記安定状態にあると判定された場合」、又は、前記学習値の収束状態が「前記準安定状態にあると連続して2回判定された場合」、前記監視手段による前記異常判定の実行を許可するように構成される、
ことが好適である。
これによれば、所定の状態判定期間が経過した時点において、その時点の直前の状態判定期間における「学習値の変化幅」が、学習値の収束状態を判定する際に使用される「学習値に関連する第2パラメータ」として取得される。そして、その時点において、「前記取得された学習値の変化幅」と「所定の判定用閾値」とが比較されることにより「前記学習値の収束状態が前記3つの状態のうちの何れの状態にあるか」が判定される。
このとき、前記学習値の収束状態が「前記安定状態にあると判定された場合」のみならず、前記学習値の収束状態が「前記準安定状態にあると連続して2回判定された場合」にも、異常判定の実行が許可される。即ち、ある状態判定期間が経過した第1時点(今回判定時点)において「前記学習値の収束状態が前記準安定状態にある」と判定され、且つ、その第1時点よりもその経過した状態判定期間だけ前の第2時点(前回判定時点)においても「前記学習値の収束状態が前記準安定状態にある」と判定されていた場合(今回及び前回の判定時点において「前記学習値の収束状態が前記準安定状態にある」と判定された場合)、異常判定の実行が許可される。
これは、前記学習値の収束状態が「前記準安定状態にあると連続して2回判定された場合」は、「前記学習値の収束状態が前記準安定状態にあると判定されている期間」が「所定の状態判定期間」以上になっている場合であるから、学習値はその収束値に安定的に接近しており且つ収束値近傍の値となっていると考えられるからである。従って、この場合にも異常判定の実行を許可することにより、異常判定をより早期に行うことができる。
また、前記学習更新速度設定手段は、
「前記状態判定期間における前記学習値の変化幅(学習値に関連する第2パラメータ)」が「前記判定用閾値としての所定の安定判定用閾値」よりも小さいか否かを判定し、同学習値の変化幅が同安定判定用閾値よりも小さいと判定される場合、前記学習値の更新速度が「前記第1更新速度から前記第2更新速度へ」又は「前記第2更新速度から前記第3更新速度へ」と低下するように、前記学習値の収束状態が前記3つの状態の1つから他の1つへと変化したと判定するように構成されることが好適である。
これによれば、「状態判定期間における学習値の変化幅」が「所定の安定判定用閾値」よりも小さいと判定されたとき、その時点(及びその時点より前の時点)において学習値の収束状態が不安定状態にあると判定されていたならば(即ち、学習値の更新速度が第1更新速度に設定されていたならば)、学習値の更新速度が第2更新速度へと低下するように学習値の収束状態が判定される(即ち、学習値の収束状態が準安定状態に変化したと判定される)。
更に、「状態判定期間における学習値の変化幅」が「所定の安定判定用閾値」よりも小さいと判定されたとき、その時点(及びその時点より前の時点)において学習値の収束状態が準安定状態にあると判定されていたならば(即ち、学習値の更新速度が第2更新速度に設定されていたならば)、学習値の更新速度が第3更新速度へと低下するように学習値の収束状態が判定される(即ち、学習値の収束状態が安定状態に変化したと判定される)。
また、前記学習更新速度設定手段は、
「前記状態判定期間における前記学習値の変化幅(学習値に関連する第2パラメータ)」が「前記判定用閾値としての所定の不安定判定用閾値」よりも大きいか否かを判定し、同学習値の変化幅が同不安定判定用閾値よりも大きいと判定される場合、前記学習値の更新速度が「前記第3更新速度から前記第2更新速度へ」又は「前記第2更新速度から前記第1更新速度へ」と増大するように、前記学習値の収束状態が前記3つの状態の1つから他の1つへと変化したと判定するように構成されることが好適である。
これによれば、「状態判定期間における学習値の変化幅」が「所定の不安定判定用閾値」よりも大きいと判定されたとき、その時点(及びその時点より前の時点)において学習値の収束状態が安定状態にあると判定されていたならば(即ち、学習値の更新速度が第3更新速度に設定されていたならば)、学習値の更新速度が第2更新速度へと増大するように学習値の収束状態が判定される(即ち、学習値の収束状態が準安定状態に変化したと判定される)。
更に、「状態判定期間における学習値の変化幅」が「所定の不安定判定用閾値」よりも大きいと判定されたとき、その時点(及びその時点より前の時点)において学習値の収束状態が準安定状態にあると判定されていたならば(即ち、学習値の更新速度が第2更新速度に設定されていたならば)、学習値の更新速度が第1更新速度へと増大するように学習値の収束状態が判定される(即ち、学習値の収束状態が不安定状態に変化したと判定される)。
また、前記監視制御手段は、
前記学習値の収束状態が前記不安定状態にあると判定されている場合、又は、「前記学習値の収束状態が前記安定状態にある」と判定されている状態から「前記準安定状態にあると判定されている状態」へと変化した場合、前記監視手段による前記異常判定の実行を中止するように構成されることが好適である。
前記学習値の収束状態が前記不安定状態にあると判定されている場合、学習値は収束値近傍の値になっていない可能性が高いから、その学習値に応じて変化する異常判定用の第1パラメータは学習値の収束値を良好に反映し得ない。従って、異常判定を中止することにより、誤判定が発生することを回避することができる。
加えて、前記学習値の収束状態が、「前記安定状態にあると判定されている状態」から「前記準安定状態にあると判定されている状態」へと変化した場合、何らかの理由(例えば、収束値が急激に変化した、或いは、大きな空燃比の変動を一時的にもたらす外乱が発生した等の理由)により、学習値の収束状態が「安定状態から不安定状態に向けて変化している」と考えられる。従って、このような場合にも、異常判定を中止することにより、誤判定が発生することを回避することができる。
前記学習更新速度設定手段は、
所定の状態判定期間が経過する毎に「同経過した状態判定期間における前記学習値の変化幅」を「前記学習値に関連する第2パラメータ」として取得するとともに、「前記学習値の変化幅」と「所定の判定用閾値」との「大小比較の結果」に基いて「前記学習値の収束状態が前記3つの状態のうちの何れの状態にあるか」を判定するように構成され、
前記監視制御手段は、
前記学習値の収束状態が「前記不安定状態にあると判定されている場合」、又は、前記学習値の収束状態が「前記安定状態にあると判定されている状態から前記準安定状態にあると判定されている状態へと変化した場合」、前記監視手段による前記異常判定の実行を中止するように構成される、
ことが好適である。
これによれば、所定の状態判定期間が経過した時点において、その時点の直前の状態判定期間における「学習値の変化幅」が、前記学習値の収束状態を判定する際に使用される「学習値に関連する第2パラメータ」として取得される。そして、その時点において、「前記取得された学習値の変化幅」と「所定の不判定用閾値」とが比較されることにより「前記学習値の収束状態が前記3つの状態のうちの何れの状態にあるか」が判定される。この不判定用閾値は、前記判定用閾値よりも大きいことが好ましい。
このとき、前記学習値の収束状態が「前記不安定状態にあると判定されている場合」のみならず、前記学習値の収束状態が「前記安定状態にあると判定されている状態から前記準安定状態にあると判定されている状態へと変化した場合」にも、異常判定の実行が中止される。
前述したように、前記学習値の収束状態が「前記安定状態にあると判定されている状態から前記準安定状態にあると判定されている状態へと変化した場合」、何らかの理由により、学習値の収束状態が「安定状態から不安定状態に向けてと変化している」と考えられる。従って、このような場合にも、異常判定を中止することにより、誤判定が発生することを回避することができる。
このような場合においても、状態判定期間における学習値の変化幅が所定の安定判定用閾値よりも小さい判定されるとき、学習値の更新速度が低下させられるように、前記学習値の収束状態が「前記3つの状態の1つから他の1つへ」と変化したと判定するように構成され得る。同様に、状態判定期間における学習値の変化幅が所定の不安定判定用閾値よりも大きいと判定されるとき、学習値の更新速度が増大させられるように、前記学習値の収束状態が「前記3つの状態の1つから他の1つへ」と変化したと判定するように構成され得る。
上述した本発明による内燃機関の監視装置が有する前記学習更新速度設定手段は、
前記機関の運転中において、「前記学習値の収束状態が前記3つの状態のうちの何れの状態であるかの最新の判定結果」と、「前記学習値」の最新値と、を「前記機関の停止中においてもデータを記憶保持することができる記憶手段」に格納するとともに、
前記機関が始動されたとき「前記記憶手段に格納されている前記判定結果」に基いて「前記学習値の更新速度」を設定するとともに、「前記記憶手段に格納されている学習値の最新値」に基いて「前記サブフィードバック量」を算出するように構成されることが好適である。
この記憶手段の代表例は、バックアップRAMである。バックアップRAMは、機関を搭載した車両のイグニッション・キー・スイッチの位置に関わらず、車両に搭載されたバッテリから電力の供給を受けるようになっている。バックアップRAMは、バッテリから電力の供給を受けている場合、CPUの指示に応じてデータを格納する(データが書き込まれる)とともに、そのデータを読み出し可能となるように保持(記憶)する。更に、この記憶手段の他の代表例は、EEPROM等の不揮発性メモリである。
この場合、前記学習更新速度設定手段は、
前記記憶手段のデータが消失されたとき、前記学習値の収束状態を前記不安定状態に設定するとともに、前記学習値を予め定められた初期値に設定するように構成される。
従って、本発明により、学習値の更新速度を少なくとも3段階に変更することにより、このようなデータ消失時において学習値を短期間内に安定状態へ移行させることができる。その結果、データ消失後における始動後において、異常判定を早期に行うことができる。
また、本発明による内燃機関の監視装置が有する前記監視手段は、
「前記監視制御手段により前記異常判定の実行が許可されている期間」における前記学習値のみに基いて、前記異常判定用の第1パラメータを取得するように構成されることが好適である。
これによれば、異常判定が許可されいる期間における学習値のみに基づいて異常判定用の第1パラメータが取得される。従って、「学習値の収束状態が変化したことによって異常判定が許可される時点」までに取得されていた学習値に関するデータは、異常時判定が許可された時点にて破棄される。従って、収束値に接近した学習値のみに基づいて第1パラメータが算出されるので、異常判定を精度良く行うことができる。
換言すると、前記監視手段は、前記監視制御手段により前記異常判定の実行が中止されている期間における前記学習値を前記異常判定用の第1パラメータに反映しないように構成されることが望ましい。
ところで、前記記憶手段のデータが消失された場合、機関の始動後において、学習値の収束状態が「異常判定が許可される状態」に変化するまでには、相当の時間を要する。但し、機関の始動後からの学習値の更新回数が「所定の学習更新回数閾値」に到達した時点以降であれば、学習値の収束状態は安定状態へと近づく。
一方、前記記憶手段のデータが消失されていない場合、前回の機関の運転終了時おける「前記学習値の収束状態」が例えば前記安定状態であると、今回の運転開始時から比較的短時間内に異常判定が実行される。しかしながら、今回の運転においては機関の状態が変化している可能性があるので、少なくとも、機関の始動後からの学習値の更新回数が「所定の学習更新回数閾値」に到達した時点以降に異常判定を行うことが望ましい。
そこで、本発明による監視装置が備える前記監視制御手段は、
前記機関の始動後からの前記学習値の更新回数を取得するとともに、「同取得された学習値の更新回数」が「所定の学習更新回数閾値」よりも小さい期間において「前記監視手段による前記異常判定の実行を中止する」ように構成されることが望ましい。これによれば、記憶手段のデータが消失したか否かに関わらず、収束状態が良好となった学習値に基づいて異常判定用の第1パラメータが取得され得る。更に、記憶手段のデータが消失したか否かに関わらず、機関始動後から異常判定実行までの期間を略一定にすることができる。
また、本発明による監視装置において、
前記燃料噴射制御手段は、
前記上流側空燃比センサの出力値により表される空燃比を理論空燃比に一致させるように前記燃料噴射弁から噴射される燃料の量を制御するように構成され、
前記監視手段は、
前記監視制御手段による前記異常判定の実行が許可されたている期間における前記学習値の時間的平均値を算出するとともに、同時間的平均値を前記異常判定用の第1パラメータとして取得し、同取得した第1パラメータが所定の異常判定閾値以上であるとき空燃比気筒間インバランスが発生したと判定するように構成されることが望ましい。
以下、本発明による監視装置が空燃比気筒間インバランス監視装置(判定装置)として使用される場合について述べる。
この場合、前記触媒は、前記機関から排出される排ガスに含まれる成分のうちの少なくとも水素を酸化する触媒であればよい。従って、この触媒は、排気通路に介装された
三元触媒や酸化触媒であってもよい。
前記上流側空燃比センサは、前記触媒を通過する前の排ガスが接触する拡散抵抗層と、同拡散抵抗層に覆われ且つ同拡散抵抗層を通過して到達した排ガスの空燃比に応じた出力値を出力する空燃比検出素子と、を有するセンサである。空燃比検出素子は、一般に、固体電解質層、排気側電極層及び大気側電極層により構成される。
前述したように、燃料噴射制御手段(空燃比制御手段でもある。)は、上流側空燃比センサの出力値により表される空燃比が「上流側目標空燃比としての理論空燃比」に一致するように前記機関に供給される燃料噴射量をフィードバック制御する。従って、上流側空燃比センサの出力値により表される空燃比が機関全体に供給される混合気の空燃比の真の平均値(空燃比の真の時間的平均値)に一致していれば、サブフィードバック量による補正がない場合であっても、機関全体に供給される混合気の空燃比の真の平均値は理論空燃比に一致する。
しかしながら、実際には、気筒間における空燃比の不均一性が過大になると、機関全体に供給される混合気の空燃比の真の平均値(真の時間的平均値)は、上流側空燃比センサの出力値により、上流側目標空燃比である理論空燃比よりもリーンな空燃比に制御されてしまう場合がある。以下、この理由を述べる。
機関に供給される燃料は炭素と水素との化合物である。従って、燃焼に供される混合気の空燃比が理論空燃比よりもリッチ側の空燃比であると、「炭化水素HC、一酸化炭素CO及び水素H2等」の未燃物が中間生成物として生成される。この場合、燃焼に供される混合気の空燃比が理論空燃比よりもリッチ側の空燃比であって理論空燃比から遠ざかるほど、燃焼期間中に中間生成物が酸素と出合って結合する確率が急激に小さくなる。この結果、未燃物(HC、CO及びH2)の量は、気筒に供給される混合気の空燃比がリッチ側の空燃比になるほど急激に(例えば、二次関数的に)増大する(図8を参照。)。
いま、特定気筒の空燃比のみが大きくリッチ側にずれたと仮定する。このような状況は、例えば、特定気筒に対して備えられている燃料噴射弁の噴射特性が「指示された燃料噴射量よりも相当に多い量の燃料を噴射する特性」になった場合に生じる。
この場合、その特定気筒に供給される混合気の空燃比(特定気筒の空燃比)は、残りの気筒に供給される混合気の空燃比(残りの気筒の空燃比)に比較して、大きくリッチ側の空燃比(小さい空燃比)へと変化する。即ち、空燃比気筒間インバランスが発生する。このとき、その特定気筒から極めて多量の未燃物(HC,CO,H2)が排出される。
ところで、水素H2は、炭化水素HC及び一酸化炭素CO等に比べて小さい分子である。従って、水素H2は他の未燃物(HC,CO)に比較して、上流側空燃比センサの拡散抵抗層を迅速に拡散する。このため、HC,CO及びH2からなる未燃物が多量に発生すると、拡散抵抗層において水素H2の選択的拡散(優先的な拡散)が発生する。即ち、水素H2は、空燃比検出素子の表面に「他の未燃物(HC,CO)」よりも多量に到達するようになる。この結果、水素H2の濃度と他の未燃物(HC,CO)の濃度とのバランスが崩れる。換言すると、上流側空燃比センサの空燃比検出素子に到達した排ガスに含まれる全未燃成分に対する水素H2の割合は、機関から排出された排ガスに含まれる全未燃成分に対する水素H2の割合よりも大きくなる。
これにより、上流側空燃比センサの出力値により表される空燃比は、機関全体に供給される混合気の空燃比の真の平均値(機関から排出される排ガスの空燃比の真の平均値)よりも、上記水素H2の選択的拡散に起因して、リッチ側の空燃比となる。
例えば、いま、4気筒エンジンの各気筒に吸入される空気量(重量)がA0であり、各気筒に供給される燃料の量(重量)がF0であるとき、空燃比A0/F0が理論空燃比(例えば、14.5)であると仮定する。更に、説明の便宜上、上記上流側目標空燃比は理論空燃比であると仮定する。
この場合において、各気筒に対して供給(噴射)される燃料の量が均等に10%だけ過剰であると仮定する。即ち、各気筒に1.1・F0の燃料が供給されたと仮定する。このとき、4気筒に供給される空気量の総量(各気筒がそれぞれ一回の燃焼行程を終了する間に機関全体に供給される空気量)は4・A0であり、4気筒に供給される燃料の総量(各気筒がそれぞれ一回の燃焼行程を終了する間に機関全体に供給される燃料の量)は4.4・F0(=1.1・F0+1.1・F0+1.1・F0+1.1・F0)である。よって、機関全体に供給される混合気の空燃比の真の平均値は、4・A0/(4.4・F0)=A0/(1.1・F0)となる。このとき、上流側空燃比センサの出力値は、空燃比A0/(1.1・F0)に応じた出力値となる。従って、空燃比フィードバック制御によって、機関全体に供給される混合気の空燃比は上流側目標空燃比である理論空燃比A0/F0に一致させられる。換言すると、空燃比フィードバック制御によって各気筒に供給される燃料の量が10%ずつ減量される。即ち、各気筒に1・F0の燃料が供給されるようになり、各気筒の空燃比は理論空燃比A0/F0に一致する。
次に、ある一つの特定気筒に対して供給される燃料の量が40%だけ過剰な量(即ち、(1.4・F0))であり、残りの3気筒に対して供給される燃料の量は適正値(上流側目標空燃比である理論空燃比を得るために必要な燃料量であり、この場合F0)であると仮定する。このとき、4気筒に供給される空気量の総量は4・A0である。一方、4気筒に供給される燃料の総量は4.4・F0(=1.4・F0+F0+F0+F0)である。よって、機関全体に供給される混合気の空燃比の真の平均値は、4・A0/(4.4・F0)=A0/(1.1・F0)となる。即ち、この場合の機関全体に供給される混合気の空燃比の真の平均値は、前述した「各気筒に対して供給される燃料の量が均等に10%だけ過剰である場合」と同じ値となる。
しかしながら、前述したように、排ガス中の未燃物(HC、CO及びH2)の量は、気筒に供給される混合気の空燃比がリッチ側の空燃比になるほど急激に増大する。加えて、上流側空燃比センサには、各気筒からの排ガスが混合した排ガスが到達する。従って、「特定気筒に対して供給される燃料の量のみが40%だけ過剰な量となった上記の場合に排ガスに含まれる水素H2の量」は、「各気筒に対して供給される燃料の量が均等に10%だけ過剰である場合に排ガスに含まれる水素H2の量」よりも顕著に大きくなる。
この結果、上述した「水素H2の選択的拡散」に起因して、上流側空燃比センサの出力値により表される空燃比は「機関全体に供給される混合気の空燃比の真の平均値(A0/(1.1・F0))」よりもリッチ側の空燃比となる。つまり、排ガスの空燃比の平均値が同じリッチ側の空燃比であっても、空燃比気筒間インバランスが発生しているときの方が空燃比気筒間インバランスが発生していないときよりも、上流側空燃比センサの空燃比検出素子に到達する排ガスにおける水素H2の濃度が高くなる。故に、上流側空燃比センサ55の出力値は、混合気の空燃比の真の平均値よりもリッチ側の空燃比を示す値となるのである。
その結果、上流側空燃比センサの出力値に基づく燃料噴射量のフィードバック制御により、機関全体に供給される混合気の空燃比の真の平均値は、理論空燃比(上流側目標空燃比)よりもリーン側に制御されてしまう。以上が、気筒間における空燃比の不均一性が過大になったとき、空燃比の真の平均値がリーン側に制御されてしまう理由である。
一方、機関から排出された排ガスに含まれる水素H2は他の未燃物(HC,CO)とともに触媒において酸化(浄化)される。更に、下流側空燃比センサには、触媒を通過した排ガスが到達する。従って、下流側空燃比センサの出力値は、機関に供給されている混合気の真の空燃比の平均値に応じた値となる。その結果、特定気筒の空燃比のみが大きくリッチ側にずれた場合、下流側空燃比センサの出力値は、空燃比フィードバック制御によって過度にリーン側に補正された真の空燃比に応じた値となる。即ち、特定気筒の空燃比がリッチ側に移行するほど、「水素の選択的拡散」と「上流側空燃比センサの出力値に基づくフィードバック制御」とに起因して「機関に供給される混合気の真の空燃比」はよりリーン側に制御され、その結果が下流側空燃比センサの出力値に現れる。換言すると、下流側空燃比センサの出力値は、空燃比気筒間インバランスの程度に応じて変化する値となる。
そこで、上記監視手段(インバランス判定手段)は、サブフィードバック量の定常成分に応じた量となるように更新される「サブフィードバック量の学習値」に基いて「異常判定用の第1パラメータ(インバランス判定用パラメータ)」を取得するように構成されている。この異常判定用の第1パラメータは、上記上流側空燃比センサの出力値に基づくフィードバック制御によって変化する「機関全体に供給される混合気の真の空燃比(平均的な空燃比)」に応じて変化する値であり、「前記触媒を通過する前の排ガスに含まれる水素の量と前記触媒を通過した後の排ガスに含まれる水素の量との差」が大きいほど大きくなる値でもある。
そして、前記監視手段(空燃比気筒間インバランス判定手段)は、前記取得された「異常判定用の第1パラメータ(インバランス判定用パラメータ)」が「異常判定閾値」よりも大きいとき、「前記複数の気筒のそれぞれに供給される混合気の空燃比である気筒別空燃比」の間に不均衡が生じている(即ち、空燃比気筒間インバランスが生じた)と判定するようになっている。この結果、本発明による監視装置は、空燃比気筒間インバランスが発生したか否かを精度良く判定することができる。
図2は、図1に示した上流側空燃比センサの概略断面図である。
図3は、排ガス(被検出ガス)の空燃比が理論空燃比よりもリーン側の空燃比である場合の上流側空燃比センサの作動を説明するための図である。
図4は、排ガスの空燃比と上流側空燃比センサの限界電流値との関係を示したグラフである。
図5は、排ガス(被検出ガス)の空燃比が理論空燃比よりもリッチ側の空燃比である場合の上流側空燃比センサの作動を説明するための図である。
図6は、排ガスの空燃比と上流側空燃比センサの出力値との関係を示したグラフである。
図7は、排ガスの空燃比と下流側空燃比センサの出力値との関係を示したグラフである。
図8は、気筒に供給された混合気の空燃比と、その気筒から排出される未燃成分と、の関係を示したグラフである。
図9は、空燃比気筒間インバランス割合とサブフィードバック量の学習値との関係を示したグラフである。
図10は、図1に示した電気制御装置のCPUが実行する燃料噴射制御ルーチンを示したフローチャートである。
図11は、図1に示した電気制御装置のCPUがメインフィードバック量を算出するために実行するルーチンを示したフローチャートである。
図12は、図1に示した電気制御装置のCPUがサブフィードバック量及びサブフィードバック量の学習値(サブFB学習値)を算出するために実行するルーチンを示したフローチャートである。
図13は、図1に示した電気制御装置のCPUが実行するルーチンを示したフローチャートである。
図14は、図1に示した電気制御装置のCPUが実行するルーチンを示したフローチャートである。
図15は、図1に示した電気制御装置のCPUが参照するルックアップテーブルを示した図である。
図16は、図1に示した電気制御装置のCPUが参照するルックアップテーブルを示した図である。
図17は、図1に示した電気制御装置のCPUが実行するルーチンを示したフローチャートである。
図18は、図1に示した電気制御装置のCPUが実行するルーチンを示したフローチャートである。
図19は、図1に示した電気制御装置のCPUが実行するルーチンを示したフローチャートである。
図20は、図1に示した電気制御装置のCPUが実行するルーチンを示したフローチャートである。
図21は、図1に示した電気制御装置のCPUが空燃比気筒間インバランス判定(異常判定)を行うために実行するルーチンを示したフローチャートである。
(構成)
図1は、この監視装置が適用される内燃機関10の概略構成を示している。機関10は、4サイクル・火花点火式・多気筒(本例において4気筒)・ガソリン燃料機関である。機関10は、本体部20、吸気系統30及び排気系統40を備えている。
本体部20は、シリンダブロック部とシリンダヘッド部とを備えている。本体部20は、ピストン頂面、シリンダ壁面及びシリンダヘッド部の下面からなる複数(4個)の燃焼室(第1気筒#1乃至第4気筒#4)21を備えている。
シリンダヘッド部には、各燃焼室(各気筒)21に「空気及び燃料からなる混合気」を供給するための吸気ポート22と、各燃焼室21から排ガス(既燃ガス)を排出するための排気ポート23と、が形成されている。吸気ポート22は図示しない吸気弁により開閉され、排気ポート23は図示しない排気弁により開閉されるようになっている。
シリンダヘッド部には複数(4個)の点火プラグ24が固定されている。各点火プラグ24は、その火花発生部が各燃焼室21の中央部であってシリンダヘッド部の下面近傍位置に露呈するように配設されている。各点火プラグ24は、点火信号に応答して火花発生部から点火用火花を発生するようになっている。
シリンダヘッド部には更に複数(4個)の燃料噴射弁(インジェクタ)25が固定されている。燃料噴射弁25は、各吸気ポート22に一つずつ(即ち、一つの気筒に対して一つ)設けられている。燃料噴射弁25は、噴射指示信号に応答し、正常である場合に「その噴射指示信号に含まれる指示噴射量の燃料」を対応する吸気ポート22内に噴射するようになっている。このように、複数の気筒21のそれぞれは、他の気筒とは独立して燃料供給を行う燃料噴射弁25を備えている。
更に、シリンダヘッド部には、吸気弁制御装置26が設けられている。この吸気弁制御装置26は、インテークカムシャフト(図示せず)とインテークカム(図示せず)との相対回転角度(位相角度)を油圧により調整・制御する周知の構成を備えている。吸気弁制御装置26は、指示信号(駆動信号)に基いて作動し、吸気弁の開弁タイミング(吸気弁開弁タイミング)を変更することができるようになっている。
吸気系統30は、インテークマニホールド31、吸気管32、エアフィルタ33、スロットル弁34及びスロットル弁アクチュエータ34aを備えている。
インテークマニホールド31は、各吸気ポート22に接続された複数の枝部と、それらの枝部が集合したサージタンク部と、を備えている。吸気管32はサージタンク部に接続されている。インテークマニホールド31、吸気管32及び複数の吸気ポート22は、吸気通路を構成している。エアフィルタ33は吸気管32の端部に設けられている。スロットル弁34はエアフィルタ33とインテークマニホールド31との間の位置において吸気管32に回動可能に取り付けられている。スロットル弁34は、回動することにより吸気管32が形成する吸気通路の開口断面積を変更するようになっている。スロットル弁アクチュエータ34aは、DCモータからなり、指示信号(駆動信号)に応答してスロットル弁34を回動させるようになっている。
排気系統40は、エキゾーストマニホールド41、エキゾーストパイプ(排気管)42、上流側触媒43及び下流側触媒44を備えている。
エキゾーストマニホールド41は、各排気ポート23に接続された複数の枝部41aと、それらの枝部41aが集合した集合部(排気集合部)41bと、からなっている。エキゾーストパイプ42は、エキゾーストマニホールド41の集合部41bに接続されている。エキゾーストマニホールド41、エキゾーストパイプ42及び複数の排気ポート23は、排ガスが通過する通路を構成している。なお、本明細書において、エキゾーストマニホールド41の集合部41b及びエキゾーストパイプ42を、便宜上、「排気通路」と称呼する。
上流側触媒43は、セラミックからなる担持体に「触媒物質である貴金属」及び「セリア(CeO2)」を担持していて、酸素吸蔵・放出機能(酸素吸蔵機能)を有する三元触媒である。上流側触媒43はエキゾーストパイプ42に配設(介装)されている。上流側触媒43は所定の活性温度に到達すると、「未燃物(HC、CO及びH2等)と窒素酸化物(NOx)とを同時に浄化する触媒機能」及び「酸素吸蔵機能」を発揮する。なお、上流側触媒43は、空燃比気筒間インバランスを検出するために「少なくとも水素H2を酸化することにより浄化する機能」を備えていると表現することもできる。即ち、上流側触媒43は、「水素H2を酸化することにより浄化する機能」を備えていれば、他の種類の触媒(例えば、酸化触媒)であってもよい。
下流側触媒44は、上流側触媒43と同様の三元触媒である。下流側触媒44は、上流側触媒43よりも下流においてエキゾーストパイプ42に配設(介装)されている。
この監視装置は、熱線式エアフローメータ51、スロットルポジションセンサ52、機関回転速度センサ53、水温センサ54、上流側空燃比センサ55、下流側空燃比センサ56及びアクセル開度センサ57を備えている。
熱線式エアフローメータ51は、吸気管32内を流れる吸入空気の質量流量を検出し、その質量流量(機関10の単位時間あたりの吸入空気量)Gaを表す信号を出力するようになっている。
スロットルポジションセンサ52は、スロットル弁34の開度を検出し、スロットル弁開度TAを表す信号を出力するようになっている。
機関回転速度センサ53は、インテークカムシャフトが5°回転する毎に幅狭のパルスを有するとともにインテークカムシャフトが360°回転する毎に幅広のパルスを有する信号を出力するようになっている。機関回転速度センサ53から出力される信号は電気制御装置60により機関回転速度NEを表す信号に変換されるようになっている。更に、電気制御装置60は、機関回転速度センサ53及び図示しないクランク角センサからの信号に基いて、機関10のクランク角度(絶対クランク角)を取得するようになっている。
水温センサ54は、内燃機関10の冷却水の温度を検出し、冷却水温THWを表す信号を出力するようになっている。
上流側空燃比センサ55は、エキゾーストマニホールド41の集合部41bと上流側触媒43との間の位置においてエキゾーストマニホールド41及びエキゾーストパイプ42の何れか(即ち、排気通路)に配設されている。上流側空燃比センサ55は、例えば、特開平11−72473号公報、特開2000−65782号公報及び特開2004−69547号公報等に開示された「拡散抵抗層を備える限界電流式広域空燃比センサ」である。
図2に示したように、上流側空燃比センサ55は、固体電解質層55aと、排ガス側電極層55bと、大気側電極層55cと、拡散抵抗層55dと、隔壁部55eと、ヒータ55fと、を含んでいる。
固体電解質層55aは酸素イオン導電性酸化物焼結体である。本例において、固体電解質層55aは、ZrO2(ジルコニア)にCaOを安定剤として固溶させた「安定化ジルコニア素子」である。固体電解質層55aは、その温度が活性温度以上であるとき、周知の「酸素電池特性」及び「酸素ポンプ特性」を発揮する。これらの特性は、後述するように、上流側空燃比センサ55が排ガスの空燃比に応じた出力値を出力する際に発揮されるべき特性である。酸素電池特性とは、酸素濃度の高い側から低い側へ酸素イオンを通過させ起電力を発生する特性のことである。酸素ポンプ特性とは、固体電解質層55aの両端に電位差が与えられたとき、陰極(低電位側電極)から陽極(高電位側電極)へとそれらの電極間の電位差に応じた量の酸素イオンを移動させる特性のことである。
排ガス側電極層55bは、白金(Pt)等の触媒活性の高い貴金属からなる。排ガス側電極層55bは、固体電解質層55aの一つの面上に形成されている。排ガス側電極層55bは、化学メッキ等により浸透性を十分に有するように(即ち、多孔質状に)形成されている。
大気側電極層55cは、白金(Pt)等の触媒活性の高い貴金属からなる。大気側電極層55cは、固体電解質層55aの他の面上であって、固体電解質層55aを挟んで排ガス側電極層55bに対向するように形成されている。大気側電極層55cは、化学メッキ等により浸透性を十分に有するように(即ち、多孔質状に)形成されている。
拡散抵抗層(拡散律速層)55dは、多孔質セラミック(耐熱性無機物質)からなる。拡散抵抗層55dは、排ガス側電極層55bの外側表面を覆うように、例えば、プラズマ溶射法等により形成されている。分子径の小さい水素H2の拡散抵抗層55dにおける拡散速度は、相対的に分子径の大きい「炭化水素HC及び一酸化炭素CO等」の拡散抵抗層55dにおける拡散速度よりも大きい。従って、拡散抵抗層55dの存在により、水素H2は、炭化水素HC及び一酸化炭素CO等よりも「排ガス側電極層55b」に速やかに到達する。上流側空燃比センサ55は、拡散抵抗層55dの外表面が「排ガスに晒される(機関10から排出された排ガスが接する)」ように配置される。
隔壁部55eは、緻密であってガスを透過させないアルミナセラミックスからなる。隔壁部55eは大気側電極層55cを収容する空間である「大気室55g」を形成するように構成されている。大気室55gには大気が導入されている。
ヒータ55fは隔壁部55eに埋設されている。ヒータ55fは通電されたときに発熱し、固体電解質層55aを加熱するようになっている。
上流側空燃比センサ55は、図3に示したように、電源55hを使用する。電源55hは、大気側電極層55c側が高電位となり、排ガス側電極層55bが低電位となるように、電圧Vを印加する。
図3に示したように、排ガスの空燃比が理論空燃比よりもリーン側の空燃比であるとき、上述した酸素ポンプ特性が利用されることにより空燃比が検出される。即ち、排ガスの空燃比が理論空燃比よりもリーン側の空燃比であるとき、排ガス中に多量に含まれる酸素分子が拡散抵抗層55dを通って排ガス側電極層55bに到達する。その酸素分子は電子を受け取って酸素イオンになる。酸素イオンは、固体電解質層55aを通過し、大気側電極層55cにて電子を放出して酸素分子になる。この結果、電源55hの正極から、大気側電極層55c、固体電解質層55a及び排ガス側電極層55bを介して電源55hの負極へと電流Iが流れる。
この電流Iの大きさは、電圧Vの大きさを所定値Vp以上に設定したとき、拡散抵抗層55dの外側表面に到達した排ガスに含まれる酸素分子のうち「拡散抵抗層55dを通って排ガス側電極層55bへと拡散によって到達する酸素分子」の量に応じて変化する。即ち、電流Iの大きさは、排ガス側電極層55bにおける酸素濃度(酸素分圧)に応じて変化する。排ガス側電極層55bにおける酸素濃度は、拡散抵抗層55dの外側表面に到達した排ガスの酸素濃度に応じて変化する。この電流Iは、図4に示したように、電圧Vを所定値Vp以上に設定しても変化しないから、限界電流Ipと呼ばれる。空燃比センサ55は、この限界電流Ip値に基いて空燃比に応じた値を出力する。
これに対し、排ガスの空燃比が理論空燃比よりもリッチ側の空燃比であるとき、図5に示したように、上述した酸素電池特性が利用されることにより空燃比が検出される。より具体的に述べると、排ガスの空燃比が理論空燃比よりもリッチ側の空燃比であるとき、排ガス中に多量に含まれる未燃物(HC,CO及びH2等)が拡散抵抗層55dを通って排ガス側電極層55bに到達する。この場合、大気側電極層55cにおける酸素濃度と排ガス側電極層55bにおける酸素濃度との差(酸素分圧差)が大きくなるので、固体電解質層55aは酸素電池として機能する。印加電圧Vは、この酸素電池の起電力よりも小さくなるように設定される。
従って、大気室55gに存在する酸素分子は大気側電極層55cにて電子を受け取って酸素イオンとなる。その酸素イオンは、固体電解質層55aを通過し、排ガス側電極層55bへと移動する。そして、排ガス側電極層55bにて未燃物を酸化し、電子を放出する。この結果、電源55hの負極から、排ガス側電極層55b、固体電解質層55a及び大気側電極層55cを介して電源55hの正極へと電流Iが流れる。
この電流Iの大きさは、大気側電極層55cから固体電解質層55aを通って排ガス側電極層55bに到達する酸素イオンの量により定まる。前述したように、この酸素イオンは排ガス側電極層55bにて未燃物を酸化するために使用される。従って、拡散により拡散抵抗層55dを通過して排ガス側電極層55bに到達する未燃物の量が多いほど、固体電解質層55aを通過する酸素イオンの量は多くなる。換言すると、空燃比が小さいほど(理論空燃比よりもリッチ側の空燃比であって未燃物の量が多いほど)、電流Iの大きさは大きくなる。但し、拡散抵抗層55dの存在により、排ガス側電極層55bに到達する未燃物の量は制限されるので、電流Iは空燃比に応じた一定値Ipとなる。上流側空燃比センサ55は、この限界電流Ip値に基いて空燃比に応じた値を出力する。
このような検出原理に基づく上流側空燃比センサ55は、図6に示したように、上流側空燃比センサ55の配設位置を流れる排ガスの空燃比(上流側空燃比abyfs)に応じた出力値Vabyfsを出力する。出力値Vabyfsは限界電流Ipを電圧に変換することにより得られる。出力値Vabyfsは被検出ガスの空燃比が大きくなるほど(リーンとなるほど)増大する。後述する電気制御装置60は、図6に示した空燃比変換テーブル(マップ)Mapabyfsを記憶していて、出力値Vabyfsを空燃比変換テーブルMapabyfsに適用することにより、実際の上流側空燃比abyfsを検出する。この空燃比変換テーブルMapabyfsは、水素の選択的拡散も考慮して作成されている。換言すると、テーブルMapabyfsは、各気筒の空燃比を互いに等しい空燃比xに設定することにより、上流側空燃比センサ55に到達する排ガスの空燃比を値xに設定した場合の「上流側空燃比センサ55の実際の出力値Vabyfs」に基いて作成される。
このように、上流側空燃比センサ55は、複数の気筒の排気集合部又は前記排気集合部と触媒43との間の排気通路に配設され且つ触媒43を通過する前の排ガスが接触する拡散抵抗層及び同拡散抵抗層に接触するガスの空燃比に応じた出力値を出力する空燃比検出素子を有する空燃比センサである。
再び、図1を参照すると、下流側空燃比センサ56は、上流側触媒43と下流側触媒44との間の位置においてエキゾーストパイプ42(即ち、排気通路)に配設されている。下流側空燃比センサ56は、周知の濃淡電池型の酸素濃度センサ(O2センサ)である。下流側空燃比センサ56は、例えば、図2に示した上流側空燃比センサ55と同様な構成を備える(但し、電源55hを除く。)。或いは、下流側空燃比センサ56は、試験管状の固体電解質層と、固体電解質層の外側に形成された排ガス側電極層と、大気室(固体電解質層の内側)に露呈し且つ固体電解室層を挟んで排ガス側電極層と対向するように固体電解質層に形成された大気側電極層と、排ガス側電極層を覆い且つ排ガスが接触する(排ガス中に晒されるように配置される)拡散抵抗層と、を備えるものであってもよい。下流側空燃比センサ56は、下流側空燃比センサ56の配設位置を流れる排ガスの空燃比(下流側空燃比afdown)に応じた出力値Voxsを出力するようになっている。
下流側空燃比センサ56の出力値Voxsは、図7に示したように、被検出ガスの空燃比が理論空燃比よりもリッチのとき最大出力値max(例えば、約0.9V)となり、被検出ガスの空燃比が理論空燃比よりもリーンのとき最小出力値min(例えば、約0.1V)となり、被検出ガスの空燃比が理論空燃比であるとき最大出力値maxと最小出力値minの略中間の電圧Vst(中間電圧Vst、例えば、約0.5V)となる。更に、この出力値Voxsは、被検出ガスの空燃比が理論空燃比よりもリッチな空燃比からリーンな空燃比へと変化する際に最大出力値maxから最小出力値minへと急変し、被検出ガスの空燃比が理論空燃比よりもリーンな空燃比からリッチな空燃比へと変化する際に最小出力値minから最大出力値maxへと急変する。
図1に示したアクセル開度センサ57は、運転者によって操作されるアクセルペダルAPの操作量を検出し、アクセルペダルAPの操作量Accpを表す信号を出力するようになっている。
電気制御装置60は、「CPU、ROM、RAM、バックアップRAM(又は、EEPROM等の不揮発性メモリ)、並びに、ADコンバータを含むインターフェース等」からなる「周知のマイクロコンピュータ」である。
電気制御装置60が備えるバックアップRAMは、機関10を搭載した車両の図示しないイグニッション・キー・スイッチの位置(オフ位置、始動位置及びオン位置等の何れか)に関わらず、車両に搭載されたバッテリから電力の供給を受けるようになっている。バックアップRAMは、バッテリから電力の供給を受けている場合、CPUの指示に応じてデータを格納する(データが書き込まれる)とともに、そのデータを読み出し可能となるように保持(記憶)する。バックアップRAMは、バッテリが車両から取り外される等によりバッテリからの電力供給が遮断されると、データを保持することができない。即ち、それまでに保持していたデータが消失(破壊)される。そこで、CPUは、バックアップRAMへの電力供給が再開されたとき、バックアップRAMに保持されるべきデータを初期化(デフォルト値に設定)するようになっている。
電気制御装置60のインターフェースは、前記センサ51〜57と接続され、CPUにセンサ51〜57からの信号を供給するようになっている。更に、そのインターフェースは、CPUの指示に応じて、各気筒の点火プラグ24、各気筒の燃料噴射弁25、吸気弁制御装置26及びスロットル弁アクチュエータ34a等に指示信号(駆動信号)等を送出するようになっている。なお、電気制御装置60は、取得されたアクセルペダルの操作量Accpが大きくなるほどスロットル弁開度TAが大きくなるように、スロットル弁アクチュエータ34aに指示信号を送出するようになっている。
(空燃比気筒間インバランス判定の原理)
次に、上記監視装置による「空燃比気筒間インバランス判定」の原理について説明する。空燃比気筒間インバランス判定とは、気筒間における空燃比の不均一性が警告必要値以上となったか否か、換言すると、気筒別空燃比の間に(エミッション上許容できない程度の)不均衡(即ち、空燃比気筒間インバランス)が生じているか否か、を判定することである。
機関10の燃料は炭素と水素との化合物である。従って、燃料が燃焼して水H2Oと二酸化炭素CO2へと変化する過程において、「炭化水素HC、一酸化炭素CO及び水素H2等」の未燃物が中間生成物として生成される。
燃焼に供される混合気の空燃比が理論空燃比よりも小さくなるほど(即ち、空燃比が理論空燃比よりもリッチ側の空燃比になるほど)、燃料が完全燃焼するために必要な酸素の量と実際の酸素の量との差が増大する。換言すると、リッチ側の空燃比になるほど燃焼途中における酸素の不足量が増大し、酸素濃度が低下するから、中間生成物(未燃物)が酸素と出合って結合する(酸化される)確率が急激に小さくなる。この結果、図8に示したように、気筒から排出される未燃物(HC、CO及びH2)の量は、気筒に供給される混合気の空燃比がリッチ側の空燃比になるほど急激に(二次関数的に)増大する。なお、図8の点P1、点P2及び点P3は、ある気筒に供給される燃料の量が、その気筒の空燃比が理論空燃比に一致する場合の燃料の量に対して、それぞれ10%(=AF1)、30%(=AF2)及び40%(=AF3)だけ過剰となった点を示す。
更に、水素H2は、炭化水素HC及び一酸化炭素CO等に比べて小さい分子である。従って、水素H2は他の未燃物(HC,CO)に比較して、上流側空燃比センサ55の拡散抵抗層55dを迅速に拡散する。このため、HC,CO及びH2からなる未燃物が多量に発生すると、拡散抵抗層55dにおいて水素H2の選択的拡散(優先的な拡散)が顕著に発生する。即ち、水素H2は、空燃比検出素子の表面(固体電解質層55aの表面に形成された排ガス側電極層55b)に「他の未燃物(HC,CO)」よりも多量に到達するようになる。この結果、水素H2の濃度と他の未燃物(HC,CO)の濃度とのバランスが崩れる。換言すると、「上流側空燃比センサ55の空燃比検出素子(排ガス側電極層55b)に到達した排ガス」に含まれる全未燃成分に対する水素H2の割合は、「機関10から排出された排ガス」に含まれる全未燃成分に対する水素H2の割合よりも大きくなる。
ところで、上記監視装置は空燃比制御装置の一部である。空燃比制御装置は、「上流側空燃比センサ55の出力値Vabyfsにより表される上流側空燃比abyfs(出力値Vabyfsに相当する空燃比)」を「上流側目標空燃比abyfr」に一致させる「空燃比のフィードバック制御(メインフィードバック制御)」を行う。一般に、上流側目標空燃比abyfrは理論空燃比stoichに設定される。
更に、空燃比制御装置は、下流側空燃比センサ56の出力値Voxs(又は、下流側空燃比センサの出力値Voxsにより表される下流側空燃比afdown)を下流側目標値Voxsref(又は、下流側目標値Voxsrefにより表される下流側目標空燃比)に一致させる「空燃比のサブフィードバック制御」を行う。一般に、下流側目標値Voxsrefは理論空燃比に相当する値(0.5V)に設定される。
いま、空燃比気筒間インバランスが発生していない状態において、各気筒の空燃比が一律にリッチ側に偏移した場合を想定する。このような状態は、例えば、燃料噴射量を算出する際の基本量となる「機関の吸入空気量の測定値又は推定値」が「真の吸入空気量」よりも大きくなったとき等において発生する。
この場合、例えば、各気筒の空燃比が図8に示したAF2であった仮定する。ある気筒の空燃比がAF2であると、ある気筒の空燃比がAF2よりも理論空燃比に近い空燃比AF1である場合に比べ、より多くの未燃物(従って、水素H2)が排ガスに含まれる(点P1及び点P2を参照。)。従って、上流側空燃比センサ55の拡散抵抗層55dにおいて「水素H2の選択的拡散」が発生する。
しかしながら、この場合、「各気筒が一回の燃焼行程を終了する間(クランク角720度に相当する期間)に機関10に供給される混合気」の空燃比の真の平均値もAF2である。更に、上述したように、図6に示した空燃比変換テーブルMapabyfsは、「水素H2の選択的拡散」を考慮して作成されている。従って、上流側空燃比センサ55の実際の出力値Vabyfsにより表される上流側空燃比abyfs(実際の出力値Vabyfsを空燃比変換テーブルMapabyfsに適用することにより得られる上流側空燃比abyfs)は、上記「空燃比の真の平均値AF2」に一致する。
それ故、メインフィードバック制御により、機関10全体に供給される混合気の空燃比は「上流側目標空燃比abyfrである理論空燃比」に一致するように修正され、空燃比気筒間インバランスは発生していないから、各気筒の空燃比も理論空燃比に略一致する。従って、サブフィードバック量(及び後述するサブフィードバック量の学習値)は、空燃比の補正を大きく行う値となることはない。換言すると、空燃比気筒間インバランスが発生していない場合、サブフィードバック量(及び後述するサブフィードバック量の学習値)は、空燃比の補正を大きく行う値とならない。
次に、「空燃比気筒間インバランスが発生した場合」の各値の挙動について、上述した「空燃比気筒間インバランスが発生していない場合」の各値の挙動と比較しながら説明する。
例えば、機関10の各気筒に吸入される空気量(重量)がA0であり、各気筒に供給される燃料量(重量)がF0であるとき、空燃比A0/F0が理論空燃比(例えば、14.5)であると仮定する。
そして、空燃比気筒間インバランスは発生していないが、吸入空気量の推定誤差等に起因して、各気筒に対して供給(噴射)される燃料量が均等に10%だけ過剰となったと仮定する。即ち、各気筒に1.1・F0の燃料が供給されたと仮定する。このとき、4気筒エンジンである機関10に供給される空気量の総量(各気筒がそれぞれ一回の燃焼行程を終了する間に機関10全体に供給される空気量)は4・A0である。また、機関10に供給される燃料量の総量(各気筒がそれぞれ一回の燃焼行程を終了する間に機関10全体に供給される燃料の量)は4.4・F0(=1.1・F0+1.1・F0+1.1・F0+1.1・F0)である。よって、機関10全体に供給される混合気の空燃比の真の平均値は、4・A0/(4.4・F0)=A0/(1.1・F0)となる。このとき、上流側空燃比センサの出力値は、空燃比A0/(1.1・F0)に応じた出力値となる。
従って、メインフィードバック制御により、各気筒に供給される燃料の量が10%ずつ減量され(各気筒に1・F0の燃料が供給されるようになり)、機関10全体に供給される混合気の空燃比は理論空燃比A0/F0に一致させられる。
これに対し、特定気筒の空燃比のみが大きくリッチ側にずれることにより、「空燃比気筒間インバランス」が発生した場合を想定する。このような状況は、例えば、特定気筒に対して備えられている燃料噴射弁25の噴射特性が「指示された燃料噴射量よりも相当に多い量の燃料を噴射する特性」になった場合に生じる。このような燃料噴射弁25の異常は「燃料噴射弁のリッチずれ異常」とも称呼される。
いま、ある一つの特定気筒に対して供給される燃料の量が40%だけ過剰な量(即ち、1.4・F0)であり、残りの3気筒に対して供給される燃料の量はそれらの気筒の空燃比が理論空燃比と一致するような燃料の量(即ち、1・F0)であると仮定する。この場合、特定気筒の空燃比は図8に示した「AF3」であり、残りの気筒の空燃比は理論空燃比である。
このとき、4気筒エンジンである機関10に供給される空気量の総量(各気筒がそれぞれ一回の燃焼行程を終了する間に機関10全体に供給される空気量)は4・A0である。一方、機関10に供給される燃料の総量(各気筒がそれぞれ一回の燃焼行程を終了する間に機関10全体に供給される燃料の量)は4.4・F0(=1.4・F0+F0+F0+F0)である。
従って、機関10全体に供給される混合気の空燃比の真の平均値は、4・A0/(4.4・F0)=A0/(1.1・F0)となる。即ち、この場合の機関10全体に供給される混合気の空燃比の真の平均値は、上述した「各気筒に対して供給される燃料の量が均等に10%だけ過剰である場合」と同じ値となる。
しかしながら、前述したように、排ガス中の未燃物(HC、CO及びH2)の量は、気筒に供給される混合気の空燃比がリッチ側の空燃比になるほど急激に増大する。このため、「特定気筒に対して供給される燃料の量のみが40%だけ過剰な量となった場合」に排ガスに含まれる水素H2の総量SH1は、図8によれば、SH1=H3+H0+H0+H0=H3+3・H0となる。これに対し、「各気筒に対して供給される燃料の量が均等に10%だけ過剰となった場合」に排ガスに含まれる水素H2の総量SH2は、図8によれば、SH2=H1+H1+H1+H1=4・H1となる。このとき、量H1は量H0よりも僅かに大きいが、量H1及び量H0は共に極めて微量である。即ち、量H1と量H0とは、量H3に比べた場合、互いに略等しいと言える。従って、水素総量SH1は水素総量SH2よりも極めて大きくなる(SH1>>SH2)。
このように、機関10全体に供給される混合気の空燃比の真の平均値が同一であっても、空燃比気筒間インバランスが発生した場合に排ガスに含まれる水素の総量SH1は、空燃比気筒間インバランスが発生していない場合に排ガスに含まれる水素の総量SH2よりも、顕著に大きくなる。
従って、特定気筒に対して供給される燃料の量のみが40%だけ過剰な量となった場合、上述した拡散抵抗層55dにおける「水素H2の選択的拡散」に起因して、上流側空燃比センサの出力値Vabyfsにより表される空燃比は「機関10全体に供給される混合気の空燃比の真の平均値(A0/(1.1・F0))」よりもリッチ側の空燃比(小さい空燃比)となる。つまり、排ガスの空燃比の平均値が同じであっても、空燃比気筒間インバランスが発生している場合には、空燃比気筒間インバランスが発生していない場合よりも、上流側空燃比センサ55の排ガス側電極層55bにおける水素H2の濃度が高くなるから、上流側空燃比センサ55の出力値Vabyfsは「空燃比の真の平均値」よりもリッチ側の空燃比を示す値となるのである。
その結果、メインフィードバック制御により、機関10全体に供給される混合気の空燃比の真の平均は、理論空燃比よりもリーン側に制御されてしまう。
一方、下流側空燃比センサ56には、上流側触媒43を通過した排ガスが到達する。排ガスに含まれる水素H2は他の未燃物(HC,CO)とともに上流側触媒43において酸化(浄化)される。従って、下流側空燃比センサ56の出力値Voxsは、機関10全体に供給される混合気の真の空燃比に応じた値となる。従って、サブフィードバック制御にて算出される空燃比の制御量(サブフィードバック量等)は、上記メインフィードバック制御による空燃比のリーン側への過補正を補う値となる。そして、このようなサブフィードバック量等により、機関10の空燃比の真の平均値は理論空燃比に一致させられる。
このように、サブフィードバック制御にて算出される空燃比の制御量(サブフィードバック量)は、燃料噴射弁25のリッチずれ異常(空燃比気筒間インバランス)に起因する「空燃比のリーン側への過補正」を補償するような値となる。また、このリーン側への過補正の程度は、リッチずれ異常を起こした燃料噴射弁25が「指示された噴射量」に比較してより多くの量の燃料を噴射するようになるほど(即ち、特定気筒の空燃比がリッチ側の空燃比になるほど)増大する。
従って、サブフィードバック量が正の値であってその大きさが大きいほど「機関の空燃比がよりリッチ側へと補正されるシステム」においては、「サブフィードバック量に応じて変化する値(実際には、例えば、サブフィードバック量の定常成分を取り込んだサブフィードバック量の学習値)」は、空燃比気筒間インバランスの程度を示す値となる。
かかる知見に基づき、本監視装置は、サブフィードバック量に応じて変化する値(本例において、サブフィードバック量の学習値である「サブFB学習値」)を、インバランス判定用パラメータとして取得する。つまり、インバランス判定用パラメータは「上流側触媒43を通過する前の排ガスに含まれる水素の量と、上流側触媒43を通過した後の排ガスに含まれる水素の量と、の差が大きいほど、大きくなる値」となる。そして、監視装置は、そのインバランス判定用パラメータが「異常判定閾値」以上となった場合(即ち、サブFB学習値の増減に応じて増減する値が「機関の空燃比を異常判定閾値以上リッチ側に補正することを示す値」となった場合)、空燃比気筒間インバランスが発生したと判定する。
図9の実線は、空燃比気筒間インバランスが発生して、ある一つの気筒の空燃比が理論空燃比からリッチ側及びリーン側に乖離した場合におけるサブFB学習値を示している。図9に示したグラフの横軸は「インバランス割合」である。インバランス割合とは、「理論空燃比Xに対する、理論空燃比Xとそのリッチずれした気筒の空燃比afとの差Y(=X−af)、の比(Y/X)」のことである。前述したように、インバランス割合が大きくなるほど、水素H2の選択的拡散の影響が急激に大きくなる。従って、図9の実線により示されるように、サブFB学習値(従って、インバランス判定用パラメータ)は、インバランス割合が大きくなるのに従って二次関数的に増大する。
なお、図9の実線に示したように、インバランス割合が負の値である場合においても、そのインバランス割合の絶対値が増大するほど、サブFB学習値は増大する。即ち、例えば、一つの特定気筒の空燃比のみが大きくリーン側にずれるような空燃比気筒間インバランスが発生した場合にも、インバランス判定用パラメータとしてのサブFB学習値(サブFB学習値に応じた値)は増大する。このような状況は、例えば、特定気筒に対して備えられている燃料噴射弁25の噴射特性が「指示された燃料噴射量よりも相当に少ない量の燃料を噴射する特性」になった場合に生じる。このような燃料噴射弁25の異常は「燃料噴射弁のリーンずれ異常」とも称呼される。
以下、一つの特定気筒の空燃比のみが大きくリーン側にずれるような空燃比気筒間インバランスが発生した場合にも、サブFB学習値が増大する理由について簡単に説明する。以下の説明においても、機関10の各気筒に吸入される空気量(重量)はA0であると仮定する。更に、各気筒に供給される燃料量(重量)がF0であるとき、空燃比A0/F0は理論空燃比に一致すると仮定する。
いま、ある一つの特定気筒(便宜上、第1気筒とする。)に対して供給される燃料の量が40%だけ過小な量(即ち、0.6・F0)であり、残りの3気筒(第2、第3及び第4気筒)に対して供給される燃料の量はそれらの気筒の空燃比が理論空燃比と一致するような燃料の量、即ちF0)となった場合を想定する。なお、この場合、失火は発生しないものと仮定している。
この場合、メインフィードバック制御により、第1気筒乃至第4気筒に供給される燃料の量は同じ所定量(10%)だけ増大されたと仮定する。このとき、第1気筒に供給される燃料の量は0.7・F0となり、第2乃至第4気筒のそれぞれに供給される燃料の量は1.1・F0となる。
係る状態においては、4気筒エンジンである機関10に供給される空気量の総量(各気筒がそれぞれ一回の燃焼行程を終了する間に機関10全体に供給される空気量)は4・A0である。また、メインフィードバック制御の結果、機関10に供給される燃料量の総量(各気筒がそれぞれ一回の燃焼行程を終了する間に機関10全体に供給される燃料の量)は4・F0(=0.7・F0+1.1・F0+1.1・F0+1.1・F0)となる。よって、機関10全体に供給される混合気の空燃比の真の平均値は、4・A0/(4・F0)=A0/F0、即ち、理論空燃比となっている。
しかしながら、この状態における「排ガスに含まれる水素H2の総量SH3」は、SH3=H4+H1+H1+H1=H4+3・H1となる。但し、H4は、空燃比がA0/(0.7・F0)であるときに発生する水素量であり、H1及びH0よりも小さく且つH0と略等しい。従って、総量SH3は、最大でも(H0+3・H1)となる。
これに対し、空燃比気筒間インバランスが発生しておらず且つ機関10全体に供給される混合気の空燃比の真の平均値が理論空燃比である場合、「排ガスに含まれる水素H2の総量SH4」は、SH4=H0+H0+H0+H0=4・H0となる。前述したように、H1はH0よりも僅かに大きい。従って、総量SH3(=H0+3・H1)は総量SH4(=4・H0)よりも大きくなる。
従って、「燃料噴射弁のリーンずれ異常」に起因する空燃比気筒間インバランスが発生している場合、メインフィードバック制御によって、機関10全体に供給される混合気の空燃比の真の平均値が理論空燃比に移行されたときであっても、水素の選択的拡散の影響が上流側空燃比センサ55の出力値Vabyfsに表れる。即ち、出力値Vabyfsを空燃比変換テーブルMapabyfsに適用することにより得られる上流側空燃比abyfsは、上流側目標空燃比abyfrである理論空燃比よりも「リッチ側(小さい)の空燃比」となる。その結果、メインフィードバック制御が更に実行され、機関10全体に供給される混合気の空燃比の真の平均値は、理論空燃比よりもリーン側に補正されてしまう。
従って、サブフィードバック制御にて算出される空燃比の制御量は、燃料噴射弁25のリーンずれ異常(空燃比気筒間インバランス)に起因する「メインフィードバック制御による空燃比のリーン側への過補正」を補償するように増大する。よって、「サブフィードバック制御にて算出される空燃比の制御量」に基いて取得される「インバランス判定用パラメータ(例えば、サブFB学習値)」は、インバランス割合が負の値であってインバランス割合の絶対値が増大するほど増大する。
これにより、本監視装置は、特定気筒の空燃比が「リッチ側にずれた場合」のみならず「リーン側にずれた場合」にも、インバランス判定用パラメータ(例えば、サブFB学習値の増減に応じて増減する値)が「異常判定閾値Ath」以上となった場合に、空燃比気筒間インバランスが発生したと判定する。
なお、図9の破線は、各気筒の空燃比が理論空燃比からリッチ側に一律に乖離し且つメインフィードバック制御を中止した場合におけるサブFB学習値を示している。この場合、横軸は、「空燃比気筒間インバランスが生じた場合の機関の空燃比のズレ」と同一のズレとなるように調整してある。即ち、例えば、第1気筒のみが20%だけリッチ側にずれるような「空燃比気筒間インバランス」が生じた場合、インバランス割合は20%である。一方、各気筒の空燃比が一律に5%(20%/4気筒)だけずれた場合、実際にはインバランス割合は0%であるが、図9においてはインバランス割合は20%に相当するものとして扱われる。図9の実線と破線との比較から、「サブFB学習値が異常判定閾値Ath以上となったとき、空燃比気筒間インバランスが発生したと判定することができる。」ことが理解される。なお、実際にはメインフィードバック制御が実行されるので、空燃比気筒間インバランスが発生していない場合、サブFB学習値は実際には図9の破線に示したほど増大しない。
(実際の作動)
次に、本監視装置の実際の作動について説明する。以下、説明の便宜上、「MapX(a1,a2,…)」は、a1,a2,…を引数とする値Xを求めるためのテーブルを表すものとする。更に、引数の値がセンサの検出値である場合、現在値が使用される。加えて、「statusN」は、statusをN(N=0,1,2)に設定した状態のstatusを表すものとする。statusNは、後述するサブFB学習値Vafsfbg(時間積分値SDVoxs)の学習進行程度(サブFB学習値Vafsfbgの収束(安定)の程度)を表す。
<燃料噴射量制御>
CPUは、図10に示した燃料噴射量Fiの計算及び燃料噴射の指示を行うルーチンを、所定の気筒のクランク角が吸気上死点前の所定クランク角度(例えば、BTDC90°CA)となる毎に、その気筒(以下、「燃料噴射気筒」とも称呼する。)に対して繰り返し実行するようになっている。従って、所定のタイミングになると、CPUはステップ1000から処理を開始し、以下に述べるステップ1010乃至ステップ1040の処理を順に行い、ステップ1095に進んで本ルーチンを一旦終了する。
ステップ1010:CPUは、「エアフローメータ51により計測された吸入空気量Gaと機関回転速度NEとをテーブルMapMc(Ga,NE)に適用することにより、「燃料噴射気筒に吸入される空気量」である「筒内吸入空気量Mc(k)」を取得する。筒内吸入空気量Mc(k)は、各吸気行程に対応されながらRAM73内に記憶される。筒内吸入空気量Mc(k)は、周知の空気モデル(吸気通路における空気の挙動を模した物理法則に従って構築されたモデル)により算出されてもよい。
ステップ1020:CPUは、筒内吸入空気量Mc(k)を上流側目標空燃比abyfrで除することにより基本燃料噴射量Fbaseを求める。上流側目標空燃比abyfrは、後述するような特殊な場合を除き理論空燃比stoichに設定されている。
ステップ1030:CPUは、基本燃料噴射量Fbaseをメインフィードバック量DFiにより補正する(より具体的には、基本燃料噴射量Fbaseにメインフィードバック量DFiを加える)ことにより、最終燃料噴射量Fiを算出する。メインフィードバック量DFiについては後述する。
ステップ1040:CPUは、最終燃料噴射量(指示噴射量)Fiの燃料が「燃料噴射気筒に対応して設けられている燃料噴射弁25」から噴射されるように、その燃料噴射弁25に指示信号を送出する。
このように、各燃料噴射弁25から噴射される燃料の量は、全ての気筒に対して共通したメインフィードバック量DFiによって一律に増減される。
なお、CPUはフューエルカット運転(以下、「FC制御」とも称呼する。)も実行する。FC制御は、燃料噴射を停止する制御である。FC制御は、以下のフューエルカット開始条件が成立したときに開始され、以下のフューエルカット復帰(終了)条件が成立したときに終了する。そして、フューエルカット開始条件が成立した時点からフューエルカット復帰条件が成立する時点までの間、燃料噴射が停止される。即ち、図10のステップ1030の最終燃料噴射量Fiの値が「0」に設定される。
・フューエルカット開始条件
スロットル弁開度TAが「0」(又はアクセルペダル操作量Accpが「0」)であり、且つ、機関回転速度NEがフューエルカット開始回転速度NEFCth以上であるとき。
・フューエルカット復帰条件
フューエルカット運転中であって且つスロットル弁開度TA(又はアクセルペダル操作量Accp)が「0」よりも大きくなったとき、又は、
フューエルカット運転中であって且つ機関回転速度NEがフューエルカット開始回転速度NEFCthよりも小さいフューエルカット復帰回転速度NERTth以下となったとき。
<メインフィードバック量の算出>
CPUは図11にフローチャートにより示したメインフィードバック量算出ルーチンを所定時間の経過毎に繰り返し実行している。従って、所定のタイミングになると、CPUはステップ1100から処理を開始し、ステップ1105に進んでメインフィードバック制御条件(上流側空燃比フィードバック制御条件)が成立しているか否かを判定する。
メインフィードバック制御条件は、例えば、以下の総ての条件が成立したときに成立する。
(A1)上流側空燃比センサ55が活性化している。
(A2)機関の負荷(負荷率)KLが閾値KLth以下である。
(A3)フューエルカット中でない。
なお、負荷率KLは、ここでは下記の(1)式により求められる。この負荷率KLに代え、機関の負荷としてアクセルペダル操作量Accp及びスロットル弁開度TA等が用いられても良い。(1)式において、Mc(k)は筒内吸入空気量であり、ρは空気密度(単位は(g/l))、Lは機関10の排気量(単位は(l))、「4」は機関10の気筒数である。
KL=(Mc(k)/(ρ・L/4))・100% …(1)
いま、メインフィードバック制御条件が成立しているものとして説明を続けると、CPUはステップ1105にて「Yes」と判定して以下に述べるステップ1110乃至ステップ1140の処理を順に行い、ステップ1195に進んで本ルーチンを一旦終了する。
ステップ1110:CPUは、下記(2)式に従ってフィードバック制御用出力値Vabyfcを取得する。(2)式において、Vabyfsは上流側空燃比センサ55の出力値、Vafsfbは下流側空燃比センサ56の出力値Voxsに基いて算出されるサブフィードバック量である。これらの値は、何れも現時点において得られている値である。サブフィードバック量Vafsfbの算出方法については、後述する。
Vabyfc=Vabyfs+Vafsfb …(2)
ステップ1115:CPUは、下記(3)式に示したように、上記フィードバック制御用出力値Vabyfcを図6に示した空燃比変換テーブルMapabyfsに適用することにより、フィードバック制御用空燃比abyfscを得る。
abyfsc=Mapabyfs(Vabyfc) …(3)
ステップ1120:CPUは、下記(4)式に従って、「現時点よりもNサイクル前の時点において燃焼室21に実際に供給された燃料の量」である「筒内燃料供給量Fc(k−N)」を求める。即ち、CPUは、「現時点よりもNサイクル(即ち、N・720°クランク角)前の時点における筒内吸入空気量Mc(k−N)」を「上記フィードバック制御用空燃比abyfsc」により除すことにより、筒内燃料供給量Fc(k−N)を求める。
Fc(k−N)=Mc(k−N)/abyfsc …(4)
このように、筒内燃料供給量Fc(k−N)を求めるために、現時点からNストローク前の筒内吸入空気量Mc(k−N)をフィードバック制御用空燃比abyfscで除すのは、「燃焼室21内での混合気の燃焼により生成された排ガス」が上流側空燃比センサ55に到達するまでに「Nストロークに相当する時間」を要しているからである。但し、実際には、上流側空燃比センサ55には各気筒から排出された排ガスがある程度混合された後に到達する。
ステップ1125:CPUは、下記(5)式に従って、「現時点よりもNサイクル前の時点において燃焼室21に供給されるべきであった燃料の量」である「目標筒内燃料供給量Fcr(k−N)」を求める。即ち、CPUは、現時点からNストローク前の筒内吸入空気量Mc(k−N)を上流側目標空燃比abyfrで除すことにより、目標筒内燃料供給量Fcr(k−N)を求める。
Fcr=Mc(k−N)/abyfr …(5)
上述したように、上流側目標空燃比abyfrは通常運転時において理論空燃比stoichに設定される。一方、硫黄等に起因する排気臭の発生を防止することを目的として、所定のリーン設定条件が成立したとき、上流側目標空燃比abyfrは理論空燃比よりもリーン側の空燃比に設定される。また、以下の条件うちのいずれか1つが成立したとき、上流側目標空燃比abyfrは理論空燃比よりもリッチ側の空燃比に設定されることもある。
・現時点がFC制御の終了後の所定期間内である場合。
・上流側触媒43の過熱を防止するべき運転状態(高負荷運転状態)である場合。
ステップ1130:CPUは、下記(6)式に従って、筒内燃料供給量偏差DFcを取得する。即ち、CPUは、目標筒内燃料供給量Fcr(k−N)から筒内燃料供給量Fc(k−N)を減じることにより、筒内燃料供給量偏差DFcを求める。この筒内燃料供給量偏差DFcは、Nストローク前の時点で筒内に供給された燃料の過不足分を表す量となる。
DFc=Fcr(k−N)−Fc(k−N) …(6)
ステップ1135:CPUは、下記(7)式に従って、メインフィードバック量DFiを求める。この(7)式において、Gpは予め設定された比例ゲイン、Giは予め設定された積分ゲインである。更に、(7)式の「値SDFc」は「筒内燃料供給量偏差DFcの積分値(時間積分値)」である。つまり、CPUは、フィードバック制御用空燃比abyfscを上流側目標空燃比abyfrに一致させるための比例積分制御により「メインフィードバック量DFi」を算出する。
DFi=Gp・DFc+Gi・SDFc …(7)
ステップ1140:CPUは、その時点における筒内燃料供給量偏差DFcの積分値SDFcに上記ステップ1130にて求められた筒内燃料供給量偏差DFcを加えることにより、新たな筒内燃料供給量偏差の積分値SDFcを取得する。
以上により、メインフィードバック量DFiが比例積分制御により求められ、このメインフィードバック量DFiが前述した図10のステップ1030の処理により最終燃料噴射量Fiに反映される。
ところで、上記(2)式の右辺の「サブフィードバック量Vafsfb」は、上流側空燃比センサ55の出力値Vabyfsに比較して小さい値となり、且つ、小さい値となるように制限されている。従って、サブフィードバック量Vafsfbは、「下流側空燃比センサ56の出力値Voxs」を「理論空燃比に相当する値である下流側目標値Voxsref」に一致させるための「補助的な補正量」と考えることができる。この結果、フィードバック制御用空燃比abyfscは上流側空燃比センサ55の出力値Vabyfsに実質的に基づく値であると言うことができる。即ち、メインフィードバック量DFiは「上流側空燃比センサ55の出力値Vabyfsにより表される機関の空燃比」を「上流側目標空燃比abyfr(理論空燃比)」に一致させるための補正量であると言うことができる。
一方、ステップ1105の判定時においてメインフィードバック制御条件が不成立であると、CPUはそのステップ1105にて「No」と判定してステップ1145に進み、メインフィードバック量DFiの値を「0」に設定する。次いで、CPUは、ステップ1150にて筒内燃料供給量偏差の積分値SDFcに「0」を格納する。その後、CPUは、ステップ1195に進んで本ルーチンを一旦終了する。このように、メインフィードバック制御条件が不成立であるとき、メインフィードバック量DFiは「0」に設定される。従って、基本燃料噴射量Fbaseのメインフィードバック量DFiによる補正は行われない。
<サブフィードバック量及びサブFB学習値の算出>
CPUは、「サブフィードバック量Vafsfb」及び「サブフィードバック量Vafsfbの学習値(サブFB学習値)Vafsfbg」を算出するために、図12示したルーチンを所定時間の経過毎に実行している。従って、所定のタイミングになると、CPUはステップ1200から処理を開始し、ステップ1205に進んでサブフィードバック制御条件が成立しているか否かを判定する。
サブフィードバック制御条件は以下の総ての条件が成立したときに成立する。なお、本例において、サブフィードバック制御条件とサブフィードバック量の学習条件とは同じである。但し、サブフィードバック量の学習条件は、サブフィードバック制御条件に他の条件(負荷KLが所定範囲内である等の条件)が付加されてもよい。
(B1)メインフィードバック制御条件が成立している。
(B2)下流側空燃比センサ56が活性化している。
(B3)上流側目標空燃比abyfrが理論空燃比stoichに設定されている。
(B4)フューエルカット(FC)制御終了直後から所定の更新禁止回数Lに対応した時間が経過している。更新禁止回数Lについては後述する。
いま、サブフィードバック制御条件が成立していると仮定して説明を続ける。この場合、CPUはステップ1205にて「Yes」と判定し、以下に述べるステップ1210乃至ステップ1235の処理を順に行い、サブフィードバック量Vafsfbを算出する。
ステップ1210:CPUは、下記(8)式に従って、「下流側目標値Voxsref」と「下流側空燃比センサ56の出力値Voxs」との差である「出力偏差量DVoxs」を取得する。即ち、CPUは、「下流側目標値Voxsref」から「現時点の下流側空燃比センサ56の出力値Voxs」を減じることにより「出力偏差量DVoxs」を求める。下流側目標値Voxsrefは理論空燃比に相当する値Vst(0.5V)に設定されている。
DVoxs=Voxsref−Voxs …(8)
ステップ1215:CPUは、後述する(10)式において使用される時間積分値SDVoxs(出力偏差量の積分値SDVoxs)を、下記(9)式に基いて更新する。即ち、CPUは、後述するようにバックアップRAMに「サブFB学習値Vafsfbg」として格納されている「その時点における時間積分値SDVoxs」に「上記ステップ1210にて求めた出力偏差量DVoxsと値Kとの積値K・DVoxs」を加えることにより、新たな時間積分値SDVoxsを求める(時間積分値SDVoxsを更新する。)。
SDVoxs=SDVoxs+K・DVoxs …(9)
上記(9)式において、Kは調整値であり、後述するように設定・変更される値である。即ち、時間積分値SDVoxsの1回あたりの更新量は、出力偏差量DVoxsに調整値Kを乗じた値K・DVoxsである。この調整値Kが設定・変更されることにより、時間積分値SDVoxsの1回あたりの更新量K・DVoxsが設定・変更される。
ステップ1220:CPUは、ステップ1215にて求めた「時間積分値SDVoxs」を「サブFB学習値Vafsfbg」としてバックアップRAMに格納する。即ち、CPUは、ステップ1215及びステップ1220においてサブフィードバック量Vafsfbの学習を行う。
ステップ1225:CPUは、「上記ステップ1210にて算出した出力偏差量DVoxs」から「本ルーチンを前回実行した際に算出された出力偏差量である前回出力偏差量DVoxsold」を減じることにより、新たな出力偏差量の微分値(時間微分値)DDVoxsを求める。
ステップ1230:CPUは、下記(10)式に従って、サブフィードバック量Vafsfbを求める。この(10)式において、Kpは予め設定された比例ゲイン(比例定数)、Kiは予め設定された積分ゲイン(積分定数)、Kdは予め設定された微分ゲイン(微分定数)である。(10)式におけるKp・DVoxsは比例項、Ki・SDVoxsは積分項、Kd・DDVoxsは微分項に対応する。このとき、バックアップRAMに記憶されている時間積分値SDVoxsの最新値(即ち、学習値Vafsfbg)が積分項Ki・SDVoxsを得るために利用される。
Vafsfb=Kp・DVoxs+Ki・SDVoxs+Kd・DDVoxs …(10)
ステップ1235:CPUは、「上記ステップ1210にて算出した出力偏差量DVoxs」を「前回出力偏差量DVoxsold」として格納する。
時間積分値SDVoxsは、サブフィードバック制御(即ち、サブフィードバック量Vafsfbの更新)が十分に長い期間に渡って安定して実行されたとき所定の値(収束値SDVoxs1)に収束する。換言すると、収束値SDVoxs1は、サブフィードバック量の定常成分に応じた値である。収束値SDVoxs1は、例えば、エアフローメータ51の空気量測定誤差、及び、上流側空燃比センサ55の空燃比検出誤差等を反映した値である。
このように、CPUは、下流側空燃比センサ56の出力値Voxsを下流側目標値Voxsrefに一致させるための比例・積分・微分(PID)制御により「サブフィードバック量Vafsfb」を算出する。このサブフィードバック量Vafsfbは、上述した(2)式に示したように、フィードバック制御用出力値Vabyfcを算出するために使用される。
以上の処理により、所定時間の経過毎にサブフィードバック量VafsfbとサブFB学習値Vafsfbgとが更新される。
一方、サブフィードバック制御条件が成立していない場合、CPUは図12のステップ1205にて「No」と判定し、ステップ1240に進んで「サブフィードバック量Vafsfbの値」を「バックアップRAMに格納してあるサブFB学習値Vafsfbg」と「積分ゲインKi」との積(Ki・Vafsfbg=ki・SDVoxs)に設定する。次いで、CPUはステップ1295に進み、本ルーチンを一旦終了する。以上に述べたようにして、メインフィードバック制御及びサブフィードバック制御が実行される。
<statuの初期設定>
次に、学習進行程度等を表す「status(ステータス)」を初期設定する際のCPUの作動について説明する。
statusN(N=0、1、2)は、以下のように定義される。なお、サブFB学習値Vafsfbgの収束値に対する「サブFB学習値Vafsfbgの収束状態」を、以下、単に「サブFB学習値の収束状態」とも言う。
・status0(statusが「0」):サブFB学習値Vafsfbgの収束状態が良好でない。即ち、status0の状態は、サブFB学習値Vafsfbgが「その収束値SDVoxs1から乖離し」且つ「サブFB学習値Vafsfbgの変化速度が大きい」という「不安定状態」にあることを意味する。
・status2(statusが「2」):サブFB学習値Vafsfbgの収束状態が良好である。即ち、status2の状態は、サブFB学習値Vafsfbgが「その収束値SDVoxs1の近傍にて安定している」という「安定状態」にあることを意味する。
・status1(statusが「1」):サブFB学習値Vafsfbgの収束状態が、前記安定状態と前記不安定状態との間の状態(即ち、準安定状態)にある。
以下、説明の便宜上、現時点が内燃機関10の始動直後であり、且つ、この機関始動前に「電気制御装置60に電力を供給するためのバッテリ」の交換がなされていたと仮定する。CPUは図13にフローチャートにより示した「status初期設定ルーチン」を、内燃機関10の始動時点以降、所定時間が経過する毎に実行するようになっている。
従って、内燃機関10の始動時点以降において所定のタイミングが到来すると、CPUステップ1300から処理を開始し、ステップ1310に進んで内燃機関10が始動直後であるか否かを判定する。
前述の仮定に従うと、現時点は内燃機関10の始動直後である。従って、CPUはステップ1310にて「Yes」と判定し、ステップ1320に進んで「電気制御装置60に電力を供給するためのバッテリ」交換がなされたか否かを判定する。このとき、前述の仮定に従うと、事前にバッテリが交換されている。従って、CPUはステップ1320にて「Yes」と判定してステップ1330に進み、statusを「0」に設定・更新する。この「status」の値は、その値が更新される毎にバックアップRAMに記憶・更新されるようになっている。
次に、CPUは、ステップ1340に進んでカウンタCIをクリアし(「0」に設定し)、続くステップ1345にて「バックアップRAMに記憶されている時間積分値SDVoxsであるサブFB学習値Vafsfbg」を「0(初期値、デフォルト値)」に設定する。その後、CPUはステップ1395に進み、本ルーチンを一旦終了する。
なお、CPUがステップ1320に進んだとき、バッテリ交換がされていないと判定した場合、CPUはそのステップ1320にて「No」と判定してステップ1350に進み、バックアップRAMに記憶されているstatusを読み出す。
以降、CPUはステップ1310にて「No」と判定し、ステップ1395に直接進んで本ルーチンを一旦終了するようになる。
<調整値K及び更新禁止回数Lの設定>
次に、調整値K及び更新禁止回数Lを設定する際の作動を説明する。更新禁止回数Lは、FC制御が終了した時点から「図12のステップ1215における時間積分値SDVoxs」の更新が禁止される回数である。この更新禁止回数Lは、FC後リッチ制御の実行期間に対応する燃料噴射回数よりも大きい値に設定される。FC後リッチ制御は、FC制御を終了した時点から所定時間にわたり上流側目標空燃比abyfrを理論空燃比stoichよりも小さい(リッチ側の空燃比)に設定する制御である。
CPUは、調整値K及び更新禁止回数Lを設定するために、図14にフローチャートにより示したルーチンを、内燃機関10の始動時点以降、所定時間が経過する毎に又は吸気行程を迎える気筒について燃料噴射開始時点が到来する毎に、繰り返し実行するようになっている。
従って、内燃機関10の始動時点以降の所定のタイミングになると、CPUは図14のステップ1400から処理を開始し、ステップ1405に進んでstatusが更新されたか否かを判定する。このstatusの更新には、図13のステップ1330におけるstatusの初期化設定も含まれる。
現時点は上述した図13のステップ1330にてstatusが「0」に設定・更新された直後である。従って、CPUはステップ1405にて「Yes」と判定してステップ1410に進み、調整値KをテーブルMapK(Cmax,status)に基いて決定する。
図15は、上流側触媒43の最大酸素吸蔵量Cmax及びstatusと、調整値Kとの関係を規定したテーブルMapK(Cmax,status)を示している。このテーブルMapK(Cmax,status)によれば、最大酸素吸蔵量Cmaxが一定の場合において、status0での調整値Kがstatus1のものよりも大きく、且つ、status1での調整値Kがstatus2のものよりも大きくなるように、調整値Kが決定される。このように、最大酸素吸蔵量Cmaxが一定の場合、調整値Kとstatusの値とは「1対1」の関係が成立する。現時点では、statusが「0」に設定されている。従って、調整値Kは大きい値に設定される。更に、テーブルMapK(Cmax,status)によれば、各statusにおける調整値Kは、最大酸素吸蔵量Cmaxが大きいほど、より小さい値となるように決定される。なお、ここで設定される調整値Kは「第1値」とも称呼される。
この調整値Kは、前述したように、図12のステップ1215にて時間積分値SDVoxsを更新する際に使用される。従って、statusが「0」である場合、時間積分値SDVoxsの更新速度は、statusが「1」又は「2」である場合に比較して大きくなる。換言すると、サブFB学習値Vafsfbgの更新速度が大きくなる(図12のステップ1215及びステップ1220を参照。)。
なお、上流側触媒43の最大酸素吸蔵量Cmaxは、所謂、アクティブ空燃比制御によって別途取得されている。アクティブ空燃比制御は、例えば、特開平5−133264号公報等に記載された周知の制御である。従って、ここではその詳細な説明を省略する。なお、最大酸素吸蔵量Cmaxは、取得される毎にバックアップRAMに記憶・更新されるようになっている。最大酸素吸蔵量Cmaxは、各種パラメータ(調整値K及び更新禁止回数L等)の算出に用いられる際、バックアップRAMから読み出されるようになっている。
次に、CPUはステップ1415に進んでFC制御が終了した直後か否かを判定する。ステップ1415にて「No」と判定される場合、CPUはステップ1495に直接進んで本ルーチンを一旦終了する。これに対し、ステップ1415にて「Yes」と判定される場合、CPUはステップ1420に進んで、更新禁止回数LをテーブルMapL(Cmax,status)に基いて決定した後、ステップ1495に進んで本ルーチンを一旦終了する。
図16は、上流側触媒43の最大酸素吸蔵量Cmax及びstatusと、更新禁止回数Lとの関係を規定したテーブルMapL(Cmax,status)を示している。このテーブルMapL(Cmax,status)によれば、最大酸素吸蔵量Cmaxが一定の場合において、status0での更新禁止回数Lがstatus1のものよりも小さく、且つ、status1での更新禁止回数Lがstatus2のものよりも小さくなるように、更新禁止回数Lが設定される。ここで設定される更新禁止回数Lに相当する期間は「第1期間」とも称呼される。更に、テーブルMapL(Cmax,status)によれば、各statusにおける更新禁止回数Lは、最大酸素吸蔵量Cmaxが大きいほどより大きい値となるように決定される。
以降、CPUはステップ1405にて「No」と判定するようになり、ステップ1405の条件が成立するまで、ステップ1405及びステップ1415の処理を繰り返し実行する。また、FC制御の終了直後においてCPUがステップ1415に進むと、更新禁止回数Lが再設定される。
<status判定(第1ステータス判定)>
CPUは、statusを判定及び変更するために、所定時間が経過する毎に図17にフローチャートにより示した「第1ステータス判定ルーチン」を実行するようになっている。従って、所定のタイミングになると、CPUは図17のステップ1700から処理を開始してステップ1710に進み、サブFB学習条件が成立しているか否かを判定する。このとき、サブFB学習条件が成立していなければ、CPUはステップ1710にて「No」と判定してステップ1720に進む。そして、CPUはステップ1720にてカウンタCIを「0」に設定し、その後、ステップ1795に直接進んで本ルーチンを一旦終了する。なお、カウンタCIは、機関10が搭載された車両の図示しないイグニッション・キー・スイッチがオフ位置からオン位置に切り換えられた際に実行される図示しないイニシャルルーチンにより「0」に設定されるようになっている。
これに対し、CPUがステップ1710に進んだとき、サブFB学習条件が成立していると、CPUはステップ1710にて「Yes」と判定してステップ1730に進み、現時点が「サブFB学習値Vafsfbgが更新された直後の時点」であるか否か(図12のステップ1215及びステップ1220の処理を行った直後であるか否か)を判定する。
このとき、現時点が「サブFB学習値Vafsfbgが更新された直後の時点」でなければ、CPUはステップ1730にて「No」と判定し、ステップ1795に直接進んで本ルーチンを一旦終了する。
これに対し、CPUがステップ1730に進んだとき、現時点が「サブFB学習値Vafsfbgが更新された直後の時点」であると、CPUはそのステップ1730にて「Yes」と判定してステップ1740に進み、statusが「0」であるか否かを判定する。このとき、statusが「0」でなければ、CPUはステップ1740にて「No」と判定し、ステップ1795に直接進んで本ルーチンを一旦終了する。
これに対し、CPUがステップ1740に進んだとき、statusが「0」であると、CPUはそのステップ1740にて「Yes」と判定してステップ1750に進み、カウンタCIを「1」だけ増大する。次いで、CPUはステップ1760に進み、カウンタCIが第1更新回数閾値CIth以上であるか否かを判定する。このとき、カウンタCIが第1更新回数閾値CIthよりも小さいと、CPUはステップ1760にて「No」と判定し、ステップ1795に直接進んで本ルーチンを一旦終了する。
これに対し、CPUがステップ1760に進んだとき、カウンタCIが第1更新回数閾値CIth以上であると、CPUはそのステップ1760にて「Yes」と判定してステップ1770に進み、statusを「1」に設定・更新する。
このように、statusが「0」であるとき、サブFB学習値Vafsfbgの更新が第1更新回数閾値CIth以上行われると、statusは「1」に変更される。これは、サブFB学習値Vafsfbgの更新が第1更新回数閾値CIth以上行われた時点においては、サブFB学習値Vafsfbgはある程度まで収束値に接近したであろうと判断できるからである。なお、ステップ1720を省略してもよい。また、ステップ1770にてカウンタCIを「0」に設定してもよい。更に、図17のルーチン自体を省略してもよい。
<status判定(第2ステータス判定)>
CPUは、statusを判定及び変更するために、所定時間が経過する毎に図18にフローチャートにより示した「第2ステータス判定ルーチン」を実行するようになっている。以下においては、機関10の始動前に「電気制御装置60に電力を供給するためのバッテリ」が交換されたことによって、statusが図13のステップ1330にて「0」に設定され、且つ、ステップ1345にてサブFB学習値Vafsfbg(時間積分値SDVoxs)が「0」に設定されたと仮定して説明を行う。更に、現時点は機関10の始動直後であると仮定する。
CPUは、所定のタイミングになると、図18のステップ1800から処理を開始してステップ1805に進み、サブFB学習条件が成立しているか否かを判定する。機関10の始動直後においては、サブフィードバック制御条件及びサブFB学習条件は一般に成立しない。従って、CPUはステップ1805にて「No」と判定してステップ1802に進み、カウンタCLを「0」に設定する。なお、カウンタCLは、上述したイニシャルルーチンにより「0」に設定されるようになっている。その後、CPUはステップ1895に直接進んで本ルーチンを一旦終了する。
この場合、CPUは図12のステップ1205からステップ1240に進むので、バックアップRAMに格納されているサブFB学習値Vafsfbg(時間積分値SDVoxs)に基いてサブフィードバック量Vafsfb(=ki・Vafsfbg=ki・SDVoxs)が算出される。換言すると、図12のステップ1215及びステップ1220が実行されないので、学習値Vafsfbg(時間積分値SDVoxs)は「0」に維持される。
その後、機関10の運転が継続すると、サブフィードバック制御条件及びサブFB学習条件が成立する。これにより、図12のルーチンにより、サブフィードバック量Vafsfbが更新される。このとき、図13のステップ1330におけるstatusの初期化(「0」への設定)がなされているので、調整値Kは、図14に示したステップ1405及びステップ1410の処理により「statusが「0」であるときの調整値K」に設定されている。
係る状態において、CPUが図18のステップ1805に進むと、CPUはそのステップ1805にて「Yes」と判定してステップ1810に進む。そして、CPUは、ステップ1810にて、現時点がサブFB学習値Vafsfbgの更新直後の時点であるか否かを判定する。このとき、現時点がサブFB学習値Vafsfbgの更新直後の時点でなければ、CPUはステップ1810にて「No」と判定し、ステップ1895に直接進んで本ルーチンを一旦終了する。
一方、現時点がサブFB学習値Vafsfbgの更新直後の時点であると、CPUはステップ1810にて「Yes」と判定してステップ1815に進み、カウンタCLを「1」だけ増大する。次いで、CPUはステップ1817に進み、サブFB学習値Vafsfbg(本例においては、時間積分値SDVoxs)の最大値及び最小値を更新する。このサブFB学習値Vafsfbgの最大値及び最小値は、カウンタCLが「0」から次のステップ1820にて用いられる第2更新回数閾値CLthに至るまでの期間におけるサブFB学習値Vafsfbgの最大値及び最小値である。
次に、CPUはステップ1820に進み、カウンタCLが第2更新回数閾値CLth以上であるか否かを判定する。このとき、カウンタCLが第2更新回数閾値CLthよりも小さいと、CPUはステップ1820にて「No」と判定し、ステップ1895に直接進んで本ルーチンを一旦終了する。
その後、時間が経過すると、サブFB学習値Vafsfbgが更新される毎にステップ1815の処理が実行される。従って、カウンタCLは第2更新回数閾値CLthに到達する。このとき、CPUがステップ1820に進むと、CPUはそのステップ1820にて「Yes」と判定してステップ1825に進み、カウンタCLを「0」に設定する。
次に、CPUはステップ1830に進み、カウンタCLが0から第2更新回数閾値CLthに到達した期間内におけるサブFB学習値Vafsfbgの「最大値と最小値」の差を、サブFB学習値Vafsfbgの変動幅ΔVafsfbgとして設定する。この変動幅ΔVafsfbgは、学習値Vafsfbgに関連する第2パラメータとも称呼される。更に、CPUはこのステップにおいて、サブFB学習値Vafsfbgの最大値及び最小値をクリアしておく。
その後、CPUはステップ1832に進み、最新のstatus(後述する今回判定時のstatusであるstatusnow)を前回のstatus(即ち、前回判定時のstatusであるstatusold)としてバックアップRAMに格納する。換言すると、statusoldは、所定の状態判定期間(カウンタCLが0から第2更新回数閾値CLthに至るまでの期間)だけ前の時点におけるstatusである。
次に、CPUはステップ1835に進み、図19に示したサブルーチンをステップ1900から開始する。即ち、CPUはステップ1900に続くステップ1905に進み、statusが「0」であるか否かを判定する。前述の仮定に従えば、statusは「0」であるから、CPUはステップ1905にて「Yes」と判定してステップ1910に進み、図18のステップ1830にて求めた変動幅ΔVafsfbgが第1の変動幅閾値ΔVth以下であるか否かを判定する。第1の変動幅閾値ΔVthは、ここでは正の一定の値である。
ところで、前述の仮定に従えば、機関始動前にバッテリ交換がなされため、サブFB学習値Vafsfbg(時間積分値SDVoxs)は図13のステップ1345にて「0」に設定されている。この場合、一般に、サブFB学習値Vafsfbg(時間積分値SDVoxs)と収束値SDVoxs1との差は大きいので、サブフィードバック量Vafsfb及びサブFB学習値Vafsfbgの変化速度は大きい。従って、変動幅ΔVafsfbgは第1の変動幅閾値ΔVthよりも大きくなる。このため、CPUはステップ1910にて「No」と判定し、ステップ1970に進んで現時点のstatus(即ち、「0」)を今回(最新)のstatus(即ち、今回判定時のstatusであるstatusnow)としてバックアップRAMに記憶し、次いで、ステップ1995を経由して図18のステップ1895に進む。この結果、statusは「0」に維持される。
この状態においては、statusが「0」であるため、調整値Kが大きい値に設定される(図14のステップ1410及び図15を参照)。これにより、時間積分値SDVoxsの1回あたりの更新量K・DVoxs(の絶対値)が大きい値に設定される。即ち、大きな調整値Kを用いることにより、サブフィードバック量Vafsfb及び時間積分値SDVoxs(即ち、サブFB学習値Vafsfbg)の更新が迅速に行われる。更に、FC制御の終了直後毎に、更新禁止回数Lが小さい値に設定される(図14のステップ1420及び図16を参照)。これにより、FC制御が実行される場合、そのFC制御から復帰した後、時間積分値SDVoxsが更新禁止回数Lに応じた相対的に短い期間に亘って一定値に維持される。
以上のことから、サブFB学習値Vafsfbg(時間積分値SDVoxs)は、「0(初期値、デフォルト値)」から大きい変化速度をもって収束値SDVoxs1に収束していく。即ち、サブFB学習値Vafsfbg(時間積分値SDVoxs)は比較的短時間内に収束値SDVoxs1へと接近する。このサブFB学習値Vafsfbg(時間積分値SDVoxs)の変化速度は「第1速度又は第1更新速度」とも称呼される。即ち、statusが「0」であるときに定まる調整値Kに基づくサブFB学習値Vafsfbgの変更速度は、第1更新速度と称呼される。
係る状態が継続すると、サブFB学習値Vafsfbgは収束値SDVoxs1に接近し、収束値SDVoxs1近傍において比較的穏やかに変化するようになる。この結果、図18のステップ1839にて取得される変動幅ΔVafsfbgは、第1の変動幅閾値ΔVth以下になる。このとき、CPUが図18のルーチンのステップ1835を経由して図19のステップ1005及びステップ1910に進むと、CPUはそのステップ1910にて「Yes」と判定し、ステップ1915に進んでstatusを「1」に設定する。その後、CPUは、ステップ1970に進んで現時点のstatus(即ち、「1」)を今回(最新)のstatus(即ち、statusnow)としてバックアップRAMに記憶し、次いで、ステップ1995を経由して図18のステップ1895に進む。
なお、statusが「0」であるときにステップ1910の条件が成立しない場合であっても、前述した図17のステップ1760の条件(カウンタCIが第1更新回数閾値CIth以上となる条件)が成立すれば、ステップ1770にてstatusは「1」に変更される。なお、この場合、statusnowに「1」を、statusoldに「0」を設定してもよい。
このように、statusが「1」に設定・更新されると、図14のルーチンを繰り返し実行しているCPUがステップ1405に進んだとき、CPUはそのステップ1405にて「Yes」と判定する。そして、CPUはステップ1410に進み、調整値KをテーブルMapK(Cmax,status)に基いて決定する。これにより、調整値Kが中程度の値に設定・変更される(図15を参照。)。なお、ここで設定される調整値Kは「第2値」とも称呼される。
また、この時点以降、FC制御の終了直後となる毎に、ステップ1420にてテーブルMapL(Cmax,status)に基いて更新禁止回数Lが設定される。この場合、更新禁止回数Lが中程度の値に設定・変更される(図16を参照)。ここで設定される更新禁止回数Lに相当する期間は「第2期間」とも称呼される。
このように、statusが「0」から「1」に変更されると、大きい値に設定されていた調整値Kが中程度の値に設定・変更されるので、時間積分値SDVoxsの1回あたりの更新量K・DVoxs(の絶対値)も中程度の値に設定される。また、FC制御の終了直後毎に、更新禁止回数Lが中程度の値に設定される。
以上のことから、statusが「0」から「1」に変更されると、サブFB学習値Vafsfbg(時間積分値SDVoxs)は、収束値SDVoxs1に比較的近い値から中程度の変化速度をもって収束値SDVoxs1に更に接近・収束していく。このサブFB学習値Vafsfbg(時間積分値SDVoxs)の変化速度は「第2速度、又は、第2更新速度」とも称呼される。即ち、statusが「1」であるときに定まる調整値Kに基づくサブFB学習値Vafsfbgの変更速度は、第2更新速度と称呼される。
一方、この時点以降、CPUが図18のルーチンのステップ1835を経由して図19のステップ1905に進むと、statusが「1」に設定されていることから、CPUはそのステップ1905にて「No」と判定する。そして、CPUはステップ1920に進んでstatusが「1」であるか否かを判定する。この場合、CPUはステップ1920にて「Yes」と判定してステップ1925に進み、変動幅ΔVafsfbgが第2変動幅閾値(ΔVth−α)以下であるか否かを判定する。なお、値αは正の所定値である。また、第2変動幅閾値(ΔVth−α)は正の値であって、第1変動幅閾値ΔVthよりも小さい。但し、値αは「0」であってもよい(以下、同様)。
現時点は、statusが「0」から「1」に変化した直後であるから、変動幅ΔVafsfbgは第2変動幅閾値(ΔVth−α)よりも大きい。従って、CPUはステップ1925にて「No」と判定してステップ1930に進み、変動幅ΔVafsfbgが第3変動幅閾値(ΔVth+α)以上であるか否かを判定する。なお、第3変動幅閾値(ΔVth+α)は、第1変動幅閾値ΔVthよりも大きい。
この場合、statusが「0」から「1」に変化した直後であるから、通常、変動幅ΔVafsfbgは第3変動幅閾値(ΔVth+α)よりも小さい。従って、CPUはステップ1930にて「No」と判定し、ステップ1970に進んで現時点のstatus(即ち、「1」)を今回(最新)のstatus(即ち、statusnow)としてバックアップRAMに記憶し、次いで、ステップ1995を経由して図18のステップ1895に進む。
いま、サブFB学習値Vafsfbg(時間積分値SDVoxs)が収束値SDVoxs1に順調に接近していると仮定する。この場合、所定の時間が経過すると、変動幅ΔVafsfbgは第2変動幅閾値(ΔVth−α)以下になる。このとき、CPUが図18のルーチンのステップ1835を経由して図19のステップ1905に進むと、statusは「1」であることから、CPUは、ステップ1905にて「No」と判定し、ステップ1920にて「Yes」と判定し、更に、ステップ1925にて「Yes」と判定する。そして、CPUはステップ1935に進み、statusを「2」に設定する。その後、CPUはステップ1970に進んで現時点のstatus(即ち、「2」)を今回(最新)のstatus(即ち、statusnow)としてバックアップRAMに記憶し、次いで、ステップ1995を経由して図18のステップ1895に進む。
この結果、図14のルーチンを繰り返し実行しているCPUがステップ1405に進んだとき、statusが「2」に設定・更新されているので、CPUはそのステップ1405にて「Yes」と判定してステップ1410に進み、調整値KをテーブルMapK(Cmax,status)に基いて決定する。これにより、調整値Kが小さい値に設定・変更される(図15を参照)。なお、ここで設定される調整値Kは「第3値」とも称呼される。
また、この時点以降、FC制御の終了直後となる毎に、ステップ1420にてテーブルMapL(Cmax,status)に基いて更新禁止回数Lが設定される。この場合、更新禁止回数Lが大きい値に設定・変更される(図16を参照)。ここで設定される更新禁止回数Lに相当する期間は「第3期間」とも称呼される。
このように、statusが「1」から「2」に変更されると、中程度の値に設定されていた調整値Kが小さい値に設定・変更されるので、時間積分値SDVoxsの1回あたりの更新量K・DVoxs(の絶対値)も小さい値に設定される。また、FC制御の終了直後毎に、更新禁止回数Lが大きい値に設定される。
以上のことから、statusが「1」から「2」に変更されると、サブFB学習値Vafsfbg(時間積分値SDVoxs)の変化速度はstatusが「1」の場合よりも小さくなる。この場合のサブFB学習値Vafsfbg(時間積分値SDVoxs)の変化速度は「第3速度、又は、第3更新速度」とも称呼される。即ち、statusが「2」であるときに定まる調整値Kに基づくサブFB学習値Vafsfbgの変更速度は、第3更新速度と称呼される。また、この段階においては、サブFB学習値Vafsfbg(時間積分値SDVoxs)は収束値SDVoxs1に十分に近づいている。従って、サブFB学習値Vafsfbg(時間積分値SDVoxs)は、外乱が発生しても収束値SDVoxs1近傍の値に安定して維持される。
更に、statusが「1」から「2」に変更された時点以降、CPUが図18のルーチンのステップ1835を経由して図19のステップ1905に進むと、statusが2であることから、CPUはそのステップ1905にて「No」と判定し、更にステップ1920にても「No」と判定する。そして、CPUはステップ1940に進み、変動幅ΔVafsfbgが第4変動幅閾値(ΔVth−α+β)以上であるか否かを判定する。なお、値βは値αよりも小さい正の所定値である。また、第4変動幅閾値(ΔVth−α+β)は正の値であって、第2変動幅閾値(ΔVth−α)よりも大きい。なお、値βは「0」であってもよい(以下、同様。)。
前述したように、現時点のstatusは「2」であるから、一般に、サブFB学習値Vafsfbg(時間積分値SDVoxs)は、空燃比を乱す状況(外乱)が発生しても収束値SDVoxs1近傍の値に安定して維持される。従って、変動幅ΔVafsfbgは第4変動幅閾値(ΔVth−α+β)よりも小さい。そのため、CPUはstatus1940にて「No」と判定し、ステップ1970に進んで現時点のstatus(即ち、「2」)を今回(最新)のstatus(即ち、statusnow)としてバックアップRAMに記憶し、次いで、ステップ1995を経由して図18のステップ1895に進む。
このような状態において、失火率が変化するなどの大きく空燃比を乱す外乱が発生し、それによって時間積分値SDVoxsの変動幅ΔSDVoxsが第4変動幅閾値(ΔVth−α+β)以上になると、CPUはステップ1940に進んだとき、そのステップ1940にて「Yes」と判定する。そして、CPUはステップ1945に進み、statusを「1」に設定する。この結果、調整値Kが中程度の値に設定・変更され(図15を参照。)、更新禁止回数Lが中程度の値に設定・変更される(図16を参照)。その後、CPUはステップ1970に進んで現時点のstatus(即ち、「1」)を今回(最新)のstatus(即ち、statusnow)としてバックアップRAMに記憶し、次いで、ステップ1995を経由して図18のステップ1895に進む。
更に、statusが「1」である場合において、時間積分値SDVoxsの変動幅ΔSDVoxsが第3変動幅閾値(ΔVth+α)以上になると、CPUはステップ1905にて「No」、ステップ1920にて「Yes」、ステップ1925にて「No」と判定し、更に、ステップ1930にて「Yes」と判定する。この結果、CPUはステップ1950に進み、statusを「0」に設定する。この結果、調整値Kが大きい値に設定・変更され(図15を参照。)、更新禁止回数Lが小さい値に設定・変更される(図16を参照)。その後、CPUはステップ1970に進んで現時点のstatus(即ち、「0」)を今回(最新)のstatus(即ち、statusnow)としてバックアップRAMに記憶し、次いで、ステップ1995を経由して図18のステップ1895に進む。
以上、説明したように、statusは、「所定期間(即ち、カウンタCLが0から第2更新回数閾値CLthに到達するまでの期間、換言すると、サブFB学習値Vafsfbgが所定回数だけ更新される期間)における変動幅ΔVafsfbg(変動幅ΔSDVoxs)」に基いて判定・変更・設定され、その設定されたstatusに応じてサブFB学習値Vafsfbg(時間積分値SDVoxs)の更新速度(即ち、調整値K)が変更される。更に、このstatusは、後述するように、異常判定(空燃比気筒間インバランス判定)を実行するか否かを決定する際に参照される。
<学習更新回数のカウント>
次に、後述する空燃比気筒間インバランス判定を実行するか否かを決定する際に参照される学習更新回数を示すカウンタCKの更新方法について説明する。このカウンタCKを更新するために、CPUは、所定時間が経過する毎に図20にフローチャートにより示した「学習更新回数カウントルーチン」を実行するようになっている。
従って、所定のタイミングになると、CPUは図20のステップ2000から処理を開始してステップ2010に進み、内燃機関10が始動直後であるか否かを判定する。このとき、始動直後であれば、CPUはステップ2010にて「Yes」と判定し、ステップ2020に進んでカウンタCKを「0」に設定する。なお、カウンタCKは上述したイニシャルルーチンにおいて「0」に設定されるようになっている。
一方、現時点が機関10の始動直後でなければ、CPUはステップ2010にて「No」と判定してステップ2030に進み、現時点がサブFB学習値Vafsfbgの更新直後の時点であるか否かを判定する。このとき、現時点がサブFB学習値Vafsfbgの更新直後の時点でなければ、CPUはステップ2030にて「No」と判定し、ステップ2095に直接進んで本ルーチンを一旦終了する。
他方、CPUがステップ2030に進んだとき、現時点がサブFB学習値Vafsfbgの更新直後の時点であると、CPUはそのステップ2030にて「Yes」と判定してステップ2040に進み、カウンタCLを「1」だけ増大する。その後、CPUはステップ2095に進んで本ルーチンを一旦終了する。このように、カウンタCKは、機関10の今回の始動後からの「サブFB学習値Vafsfbgの更新回数」を示す値になる。
<空燃比気筒間インバランス判定(機関の異常状態の判定・監視)>
次に、機関の異常状態としての「空燃比気筒間インバランス」が発生したか否かを判定するための処理について説明する。CPUは、図21に示した「空燃比気筒間インバランス判定ルーチン」を所定時間の経過毎に繰り返し実行している。
このルーチンによれば、後述する「異常判定中止条件」が不成立であり且つ後述する「異常判定許可条件」が成立したときに得られているサブFB学習値Vafsfbgの複数の値の平均が「サブFB学習値平均値Avesfbg」として求められる(後述するステップ2140を参照。)。そして、このサブFB学習値平均値Avesfbgが異常判定用の第1パラメータ(即ち、インバランス判定用パラメータ)として採用され、サブFB学習値平均値Avesfbgが異常判定閾値Ath以上であるとき、異常状態が発生した(即ち、空燃比気筒間インバランスが発生した)と判定される。
所定のタイミングになると、CPUはステップ2100から処理を開始し、ステップ2105に進んで「異常判定(空燃比気筒間インバランス判定、場合により失火発生判定)の禁止条件」が成立しているか否かを判定する。この禁止条件は、以下、「異常判定中止条件」とも称呼される。この異常判定中止条件が成立しない場合、「異常判定実施前提条件」が成立する。異常判定中止条件が成立すると、「サブFB学習値Vafsfbgに基いて算出されるインバランス判定用パラメータ」を用いた「以下に述べる空燃比気筒間インバランス」の判定が実行されない。
この異常判定中止条件は、以下の(C1)〜(C6)に記載した条件のうちの少なくとも一つが成立したときに成立する。
(C1)メインフィードバック制御条件が成立していない。
(C2)サブフィードバック制御条件が成立していない。
(C3)サブフィードバック量の学習条件が成立していない。
(C4)上流側触媒43の酸素吸蔵量が第1閾値酸素吸蔵量以下である。
(C5)上流側触媒43が活性化していないと推定されている。
(C6)機関10から排出される排ガスの流量が閾値排ガス流量以上である。即ち、エアフローメータ51により計測された吸入空気量Ga又は機関の負荷KLが閾値以上である。
上記条件(C4)を設ける理由は次の通りである。
上流側触媒43の酸素吸蔵量が第1閾値酸素吸蔵量以下であると、水素が上流側触媒43において十分に浄化されず、水素が上流側触媒43の下流に流出する可能性がある。この結果、下流側空燃比センサ56の出力値Voxsが水素の選択的拡散の影響を受ける可能性があり、或いは、上流側触媒43の下流のガスの空燃比が「機関10全体に供給される混合気の空燃比の真の平均値」に一致しなくなる。従って、下流側空燃比センサ56の出力値Voxsは、「上流側空燃比センサ55の出力値Vabyfsを用いた上記空燃比フィードバック制御により過剰に補正された空燃比の真の平均値」に応じた値を示さない可能性が高い。故に、このような状態において空燃比気筒間インバランス判定を実行すると、判定を誤る可能性が高い。
なお、上流側触媒43の酸素吸蔵量は周知の手法により別途取得される。例えば、上流側触媒43の酸素吸蔵量OSAは、上流側触媒43に流入する過剰な酸素の量に対応する量を順次加算するとともに、上流側触媒43に流入する過剰な未燃成分の量に対応する量を順次減算することにより求められる。即ち、上流側空燃比abyfsと理論空燃比stoichとの差に基いて酸素の過不足量ΔO2(ΔO2=k・mfr・(abyfs−stoich))を所定時間の経過毎に求め(kは大気中の酸素の比率であり0.23、mfrはその所定時間に供給された燃料量)、その過不足量ΔO2を積算することにより酸素吸蔵量OSAが求められる(例えば、特開2007−239700号公報、特開2003−336535号公報、及び、特開2004−036475号公報等を参照。)。なお、このように求められる酸素吸蔵量OSAは、上流側触媒43の最大酸素吸蔵量Cmaxと「0」との値に規制される。
上記の条件(C6)を設ける理由は次の通りである。
機関10から排出される排ガスの流量が閾値排ガス流量以上であると、上流側触媒43に流入する水素の量が上流側触媒43の水素酸化能力を超え、水素が上流側触媒43の下流に流出する場合がある。従って、下流側空燃比センサ56の出力値Voxsが水素の選択的拡散の影響を受ける可能性が高い。或いは、触媒の下流のガスの空燃比が「機関全体に供給される混合気の空燃比の真の平均値」に一致しなくなる。その結果、空燃比気筒間インバランスが発生している場合であっても、下流側空燃比センサ56の出力値Voxsが「上流側空燃比センサ55の出力値Vabyfsを用いた空燃比フィードバック制御によって過剰に補正された真の空燃比」に応じた値を示さない可能性が高い。従って、このような状態において空燃比気筒間インバランス判定を実行すると、その判定を誤る可能性が高い。
更に、この異常判定中止条件は、以下の(D1)〜(D3)に記載した条件のうちの少なくとも一つが成立したときに成立する。これらの条件が加えられる理由については後述する。
(D1)機関10の今回の始動後からの「サブFB学習値Vafsfbgの更新回数」が「学習更新回数閾値」よりも小さい。即ち、カウンタCKが学習更新回数閾値CKthよりも小さい。
(D2)今回判定時のstatus(最新のstatus)であるstatusnowが「0」である。即ち、サブFB学習値の収束状態が良好でなく「不安定状態」にある。
(D3)前回判定時のstatusであるstatusoldが「2」であり、且つ、今回判定時(最新)のstatusであるstatusnowが「1」である。即ち、サブFB学習値Vafsfbgの収束状態が、安定状態から準安定状態へと変化した。
いま、上述した異常判定中止条件が不成立である(即ち、上記条件(C1)〜(C6)及び条件(D1)〜(D3)の総てが不成立であると仮定する。換言すると、「異常判定の前提条件が成立している」と仮定する。
この場合、CPUはステップ2105にて「No」と判定し、ステップ2110に進んで「異常判定許可条件が成立しているか否か」を判定する。この異常判定許可条件は、「下記(E1)の条件が成立し、且つ、下記(E2)及び下記(E3)の何れか一方の条件が成立したとき」に成立する。これらの条件が加えられる理由については後述する。なお、条件(E1)は省略することもできる。この場合、下記(E2)及び下記(E3)の何れか一方の条件が成立したとき、異常判定許可条件が成立する。
(E1)機関10の今回の始動後からの「サブFB学習値Vafsfbgの更新回数」が「学習更新回数閾値」以上である。即ち、カウンタCKが学習更新回数閾値CKth以上である。
(E2)今回判定時(最新)のstatusであるstatusnowが「2」である。即ち、サブFB学習値の収束状態が良好であり「安定状態」にある。
(E3)今回判定時(最新)のstatusであるstatusnowが「1」であり、且つ、前回判定時のstatusであるstatusoldが「1」である。即ち、条件(E3)は、サブFB学習値の収束状態が「準安定状態」という判定が2回連続してなされた、という条件である。より具体的には、条件(E3)は、図19に示したルーチンが連続して2回実行されたときに、その2回の何れにおいても、「ステップ1915の処理、ステップ1930での「No」との判定、及び、ステップ1945の処理」の何れかが実行された場合に成立する。この図19のルーチンは、「カウンタCLが0から第2更新回数閾値CLthまで増大される期間(所定の状態判定期間)」が経過する毎に実行される。従って、条件(E3)は、statusが「1」であると判定されている状態が状態判定期間(第1閾値期間)以上に渡って継続しているという条件であると言うこともできる。
そして、「異常判定許可条件が成立している」とき、CPUはステップ2110にて「Yes」と判定し、以下に述べるステップ2115乃至ステップ2160のうちの所定のステップの処理を実行する。ステップ2115以降の処理は、異常判定(空燃比気筒間インバランス判定)のための処理である。
ステップ2115:CPUは現時点が「サブFB学習値Vafsfbgが更新された直後の時点(サブFB学習値更新直後時点)」であるか否かを判定する。CPUは、現時点がサブFB学習値更新直後の時点であれば、ステップ2120に進む。CPUは、現時点がサブFB学習値更新直後の時点でなければ、ステップ2195に直接進んで本ルーチンを一旦終了する。
ステップ2120:CPUは学習値積算カウンタCexeの値を「1」だけ増大する。
ステップ2125:CPUは図12のステップ1220にてバックアップRAMに格納されたサブFB学習値Vafsfbgを読み込む。
ステップ2130:CPUは、サブFB学習値Vafsfbgの積算値SVafsfbgを更新する。即ち、CPUは「その時点の積算値SVafsfbg」に「ステップ2125にて読み込んだサブFB学習値Vafsfbg」を加えることにより、新たな積算値SVafsfbgを得る。
この積算値SVafsfbgは、上述したイニシャルルーチンにより「0」に設定されるようになっている。更に、積算値SVafsfbgは、後述するステップ2160の処理によっても「0」に設定される。このステップ2160は、異常判定(空燃比気筒間インバランス判定、ステップ2145〜ステップ2155)が実行されたときに実行される。従って、積算値SVafsfbgは、「機関の始動後又は直前の異常判定実行後」に、「異常判定中止条件が成立しておらず(ステップ2105を参照。)」、且つ、「異常判定許可条件が成立している(ステップ2110を参照。)」、状態において更新されるサブFB学習値Vafsfbgの積算値となる。
ステップ2135:CPUは学習値積算カウンタCexeの値がカウンタ閾値Cth以上であるか否かを判定する。CPUは、学習値積算カウンタCexeの値がカウンタ閾値Cthよりも小さいと、ステップ2135にて「No」と判定してステップ2195に直接進み、本ルーチンを一旦終了する。これに対し、CPUは、学習値積算カウンタCexeの値がカウンタ閾値Cth以上であると、ステップ2135にて「Yes」と判定してステップ2140に進む。
ステップ2140:CPUは、「サブFB学習値Vafsfbgの積算値SVafsfbg」を「学習値積算カウンタCexe」で除することにより、サブFB学習値平均値Avesfbg(学習値Vafsfbgの時間的平均値)を求める。このサブFB学習値平均値Avesfbgは、前述したように、上流側触媒43を通過する前の排ガスに含まれる水素の量と上流側触媒43を通過した後の排ガスに含まれる水素の量との差が大きいほど大きくなるインバランス判定用パラメータ(異常判定用の第1パラメータ)である。換言すると、異常判定用の第1パラメータは、学習値Vafsfbgに応じて変化する値(学習値Vafsfbgが大きいほど大きくなる値)であって、学習値Vafsfbgに基づいて算出される。
ステップ2145:CPUは、サブFB学習値平均値Avesfbgが異常判定閾値Ath以上であるか否かを判定する。前述したように、気筒間における空燃比の不均一性が過大となって「空燃比気筒間インバランス」が生じている場合、サブフィードバック量Vafsfbは機関10に供給される混合気の空燃比を大きくリッチ側に補正する値になろうとするから、それに伴って、サブFB学習値Vafsfbgの平均値であるサブFB学習値平均値Avesfbgも「機関10に供給される混合気の空燃比を大きくリッチ側に補正する値(閾値Ath以上の値)」となる。
従って、CPUは、サブFB学習値平均値Avesfbgが異常判定閾値Ath以上である場合、ステップ2145にて「Yes」と判定してステップ2150に進み、異常発生フラグXIJOの値を「1」に設定する。つまり、異常発生フラグXIJOの値が「1」であることは、空燃比気筒間インバランスが生じていることを示す。なお、この異常発生フラグXIJOの値はバックアップRAMに格納される。また、異常発生フラグXIJOの値が「1」に設定されたとき、CPUは図示しない警告ランプを点灯してもよい。
これに対し、サブFB学習値平均値Avesfbgが異常判定閾値Athよりも小さい場合、CPUはステップ2145にて「No」と判定してステップ2155に進む。そして、CPUは、ステップ2155にて、「空燃比気筒間インバランス」が生じていないことを示すように、異常発生フラグXIJOの値を「0」に設定する。
ステップ2160:CPUは、ステップ2150及びステップ2155の何れかからステップ2160に進み、学習値積算カウンタCexeの値を「0」に設定する(リセットする)とともに、サブFB学習値の積算値SVafsfbgを「0」に設定する(リセットする)。
なお、CPUは、ステップ2105の処理を実行したとき、異常判定中止条件が成立していると、そのステップ2105にて「Yes」と判定し、ステップ2160に直接進む。これにより、異常判定中止条件が成立したとき、その時点までに積算されてきたサブFB学習値の積算値SVafsfbgは破棄される。
更に、CPUは、ステップ2110の処理を実行したとき、異常判定許可条件が成立していなければ、CPUはステップ2195に直接進んで本ルーチンを一旦終了する。従って、この場合、それまでに算出されてきたサブFB学習値の積算値SVafsfbgは破棄されない。換言すると、異常判定許可条件が成立しているときのサブFB学習値Vafsfbgのみがインバランス判定用パラメータ(異常判定用の第1パラメータ)に反映される。
ここで、上記異常判定中止条件の(D1)〜(D3)に示した条件、及び、異常判定許可条件の(E1)〜(E3)に示した条件が加えられた理由について述べる。
<条件(D1)及び条件(E1)が設けられた理由>
バッテリが車両から取り外される等によりバックアップRAMのデータが消失された場合において、機関10の始動時から「学習値Vafsfbgの収束状態」が「異常判定が許可される状態(例えば、status2)」に変化するまでには、相当の時間を要する。一方、機関の始動後からの学習値Vafsfbgの更新回数(カウンタCK)が「所定の学習更新回数閾値(CKth)」に到達した時点以降であれば、学習値Vafsfbgの収束状態は安定状態へと近づいている。
これに対し、バックアップRAMのデータが消失されていない場合、機関10の前回の運転終了時おける「学習値Vafsfbgの収束状態」が例えば安定状態(即ち、status2)であると、今回の運転開始時から比較的短時間内に異常判定が実行される。しかしながら、今回の運転においては機関10の状態が変化している可能性があるので、少なくとも、機関の始動後からの学習値Vafsfbgの更新回数(カウンタCK)が「所定の学習更新回数閾値(CKth)」に到達した時点以降に異常判定(空燃比気筒間インバランス判定)を行うことが望ましい。
このような観点から、条件(D1)及び条件(E1)が設けられている。即ち、監視装置のCPUは、機関10の始動後からの学習値Vafsfbgの更新回数を取得するとともに(カウンタCKを参照。)、「その取得された学習値Vafsfbgの更新回数(カウンタCK)」が「所定の学習更新回数閾値(CKth)」よりも小さい期間において異常判定の実行を中止する(条件D1、ステップ2105を参照。)。
更に、本監視装置のCPUは、機関10の始動後からの学習値Vafsfbgの更新回数を取得するとともに(カウンタCKを参照。)、「その取得された学習値Vafsfbgの更新回数(カウンタCK)」が「所定の学習更新回数閾値(CKth)」以上であることを条件に、異常判定の実行を許可する(条件E1、ステップ2115を参照。)。
これによれば、バックアップRAMのデータが消失したか否かに関わらず、収束状態が良好となった学習値Vafsfbgに基づいて「異常判定用の第1パラメータ(インバランス判定用パラメータ)」が取得され得る。更に、バックアップRAMのデータが消失していない場合と、バックアップRAMのデータが消失した場合と、における「機関始動後から異常判定(空燃比気筒間インバランス判定)実行までの期間(時間)」を互いに略等しくすることができる。
<条件(D2)が設けられた理由>
「今回判定時(最新)のstatusが「0」である(条件(D2)、ステップ2105を参照。)。」ということは、現時点における学習値Vafsfbgの収束状態が良好でないことを意味する。換言すると、条件D2が成立する場合、「学習値Vafsfbgがその収束値から乖離していて」且つ「学習値Vafsfbgの変化速度が大きい」という可能性が高い。従って、条件(D2)が成立したときに異常判定を中止することにより、「収束値近傍の値になっていない可能性が高い学習値Vafsfbg」に基づいて「異常判定用の第1パラメータ(インバランス判定用パラメータ)」が算出されること、を回避することができる。従って、誤った異常判定が発生することを回避することができる。
<条件(D3)が設けられた理由>
「前回判定時のstatusであるstatusoldが「2」であり、且つ、今回判定時のstatusであるstatusnowが「1」である(条件(D3)、ステップ2105を参照。)。」ということは、「学習値Vafsfbgの収束状態が安定状態にある」と判定されている状態から「学習値Vafsfbgの収束状態が準安定状態にある」と判定されている状態へと変化した場合であることを意味する。
このような状況においては、何らかの理由(例えば、収束値が急激に変化した、或いは、大きな空燃比の変動を一時的にもたらす外乱が発生した等の理由)により、学習値Vafsfbgの収束状態が「安定状態から不安定状態に向けて変化している」と考えられる。換言すると、このような状態の学習値Vafsfbgは、収束値近傍の値になっていない可能性が高い。従って、条件(D3)が成立したときに異常判定を中止することにより、「収束値近傍の値になっていない可能性が高い学習値Vafsfbg」に基づいて「異常判定用の第1パラメータ(インバランス判定用パラメータ)」が算出されること、を回避することができる。従って、誤った異常判定が発生することを回避することができる。
<条件(E2)が設けられた理由>
「今回判定時(最新)のstatusが「2」である(条件E2、ステップ2110を参照。)。」ということは、「現時点における学習値Vafsfbgの収束状態が良好であり、学習値Vafsfbgが収束値近傍にて安定しているということ」を意味する。従って、条件(E2)が(上記条件(E1)と共に)成立したときに異常判定を許可することにより、「収束値近傍の値になっている可能性が高い学習値Vafsfbg」に基づいて「異常判定用の第1パラメータ(インバランス判定用パラメータ)」を算出することができる。その結果、精度良く異常判定を行うことができる。
<条件(E3)が設けられた理由>
「今回判定時(最新)のstatusであるstatusnowが「1」であり、且つ、前回判定時のstatusであるstatusoldが「1」である(条件(E3)」ということは、statusが「1」であると判定されている状態が状態判定期間(第1閾値期間)以上に渡って継続しているということである。この場合、学習値Vafsfbgはその収束値に安定的に接近しており且つ収束値近傍の値となっていると考えられる。従って、条件(E3)が成立している場合にも、「収束値近傍の値になっている可能性が高い学習値Vafsfbg」に基づいて「異常判定用の第1パラメータ(インバランス判定用パラメータ)」を算出することができる。更に、条件(E2)が(条件(E1)と共に)成立したときにのみ異常判定を許可していると、異常判定の実行が遅れる場合がある。従って、この条件(E3)が(条件(E1)と共に)成立する場合にも異常判定の実行を許可することにより、異常判定をより早期に行うことができる。
以上、説明したように、本発明の実施形態に係る内燃機関の監視装置は、サブフィードバック量の学習値Vafsfbgに基いて算出される「異常判定用の第1パラメータ」に基いて、出来るだけ早期に且つ精度良く、異常判定を行うことができる。
即ち、本明細書に開示された監視装置は、多気筒内燃機関10に適用されるとともに、燃料噴射弁25と、触媒43と、上流側空燃比センサ55と、下流側空燃比センサ56と、を備える。
更に、この監視装置は、
所定の第1更新タイミング(図12のルーチンが実行されるタイミング)が到来する毎に前記下流側空燃比センサ56の出力値Voxsにより表される空燃比を理論空燃比に一致させるためのサブフィードバック量Vafsfbを算出するサブフィードバック量算出手段(図12のルーチン)と、
所定の第2更新タイミング(図11のルーチンが実行されるタイミング)が到来する毎に少なくとも前記上流側空燃比センサの出力値Vabyfsと前記サブフィードバック量Vafsfbとに基いて「前記機関に供給される混合気の空燃比が理論空燃比に一致するように」前記燃料噴射弁から噴射される燃料の量を制御する燃料噴射制御手段(図11のルーチン及び図10のルーチン)と、
所定の第3更新タイミング(図12のルーチンが実行されるタイミング)が到来する毎に前記サブフィードバック量の学習値Vafsfbgを前記サブフィードバック量の定常成分(ki・SDVoxs)に応じた量(時間積分値SDVoxs)となるように更新する学習手段(図12のステップ1210乃至1220等)と、
前記学習値に応じて変化する異常判定用の第1パラメータ(サブFB学習値平均値Avesfbg)に基いて前記機関に異常状態(例えば、空燃比気筒間インバランス)が発生しているか否かの異常判定を実行する監視手段(図21のルーチン、特に、ステップ2145乃至2155)と、
を備えた内燃機関の監視装置であって、
前記学習値の更新速度を、少なくとも、第1更新速度と、前記第1更新速度よりも小さい第2更新速度と、前記第2更新速度よりも小さい第3更新速度と、のうちの何れかの更新速度に設定する学習更新速度設定手段(図14のルーチンの特にステップ1405及びステップ1410、図17〜図19)と、
前記監視手段による前記異常判定の実行を前記設定された学習値の更新速度(上記例においては、上記各更新速度に対応するstatusの値)に基いて許可又は中止する監視制御手段(図21のステップ2105及びステップ2115、条件(D2)、条件(D3)、条件(E2)、条件(E3))と、を備える。
また、学習更新速度設定手段は、
前記学習値(学習値Vafsfbg)の収束値(例えば、SDVoxs1)に対する前記学習値の収束状態が、
(a)前記学習値が前記収束値近傍にて安定している安定状態(status2)と、
(b)前記学習値が前記収束値から乖離し且つ変化速度が大きい不安定状態(status0)と、
(c)前記安定状態と前記不安定状態との間の状態にある準安定状態(status1)と、
の少なくとも3つの状態のうちの何れの状態であるかを、前記学習値に関連する第2パラメータ(変動幅ΔVafsfbg)に基いて判定するとともに(図18及び図19のルーチンを参照。)、
前記学習値の収束状態が前記不安定状態であると判定されているときに前記学習値の更新速度を前記第1更新速度に設定し、
前記学習値の収束状態が前記準安定状態にあると判定されているときに前記学習値の更新速度を前記第2更新速度に設定し、
前記学習値の収束状態が前記安定状態にあると判定されているときに前記学習値の更新速度を前記第3更新速度に設定する、
ように構成されている(図14のステップ1410及び図15を参照。)。
前記監視制御手段は、
前記学習値の収束状態が前記安定状態(status2)にあると判定されている場合、又は、前記学習値の収束状態が前記準安定状態(status1)にあると判定されている期間が所定の第1閾値期間以上となった場合、前記監視手段による前記異常判定の実行を許可するように構成されている(図21のステップ2110、条件(E2)及び条件(E3))。
なお、statusの値が「1」に設定されてからstatusの値が「1」に設定され続けている時間を計測し、その時間が所定の第1閾値期間(第1閾値時間)以上となったか否かを判定し、その時間が第1閾値期間以上になった場合に異常判定の実行を許可するように構成されてもよい。
前記学習更新速度設定手段は、
所定の状態判定期間(カウンタCLが0から閾値CLthに到達するまでの期間)が経過する毎に同経過した状態判定期間における前記学習値の変化幅(変動幅ΔVafsfbg)を前記学習値に関連する第2パラメータとして取得するとともに、前記取得された学習値の変化幅(変動幅ΔVafsfbg)と所定の判定用閾値(第1の変動幅閾値ΔVth、第2変動幅閾値(ΔVth−α)、第3変動幅閾値(ΔVth+α)、第4変動幅閾値(ΔVth−α+β))との大小比較の結果に基いて前記学習値の収束状態が前記3つの状態のうちの何れの状態にあるかを判定するように構成されている(図19のルーチンを参照。)。
前記監視制御手段は、
前記学習値の収束状態が前記安定状態(status2)にあると判定された場合(条件(E2)、又は、前記学習値の収束状態が前記準安定状態(status1)にあると連続して2回判定された場合(条件(E3))、前記監視手段による前記異常判定の実行を許可するように構成されている(図21のステップ2110)。
前記学習更新速度設定手段は、
前記状態判定期間における前記学習値の変化幅(変動幅ΔVafsfbg)が前記判定用閾値としての所定の安定判定用閾値(第1の変動幅閾値ΔVth、第2変動幅閾値(ΔVth−α)、よりも小さいか否かを判定し、同学習値の変化幅が同安定判定用閾値よりも小さいと判定される場合、前記学習値の更新速度が前記第1更新速度から前記第2更新速度へ(即ち、status0からstatus1へ)又は前記第2更新速度から前記第3更新速度へ(即ち、status1からstatus2へ)低下するように、前記学習値の収束状態が前記3つの状態の1つから他の1つへと変化したと判定するように構成されている(図19のステップ1910、ステップ1925)。
前記学習更新速度設定手段は、
前記状態判定期間における前記学習値の変化幅(変動幅ΔVafsfbg)が前記判定用閾値としての所定の不安定判定用閾値(第3変動幅閾値(ΔVth+α)、第4変動幅閾値(ΔVth−α+β))よりも大きいか否かを判定し、同学習値の変化幅が同不安定判定用閾値よりも大きいと判定される場合、前記学習値の更新速度が前記第3更新速度から前記第2更新速度へ(即ち、status2からstatus1へ)又は前記第2更新速度から前記第1更新速度へ(即ち、status1からstatus0へ)と増大するように、前記学習値の収束状態が前記3つの状態の1つから他の1つへと変化したと判定するように構成され構成されている(図19のステップ1930、ステップ1940)。
前記監視制御手段は、
前記学習値の収束状態が前記不安定状態(status0)にあると判定されている場合、又は、前記学習値の収束状態が前記安定状態(status2)にあると判定されている状態から前記準安定状態(status1)にあると判定されている状態へと変化した場合、前記監視手段による前記異常判定の実行を中止するように構成されている(図21のステップ2105、条件(D2)、条件(D3))。
前記学習更新速度設定手段は、
前記機関の運転中において、前記学習値の収束状態が前記3つの状態(status0,status1,status2)のうちの何れの状態であるかの最新の判定結果と、前記学習値Vafsfbgの最新値と、を前記機関の停止中においてもデータを記憶保持することができる記憶手段(バックアップRAM)に格納するとともに、
前記機関が始動されたとき前記記憶手段に格納されている前記判定結果に基いて前記学習値の更新速度を設定し(図14のステップ1405及びステップ1410、図13のステップ1330及びステップ1350)とともに、前記記憶手段に格納されている学習値の最新値に基いて前記サブフィードバック量Vafsfbを算出するように構成されている(図12のステップ1240)。
前記学習更新速度設定手段は、
前記記憶手段のデータが消失されたとき、前記学習値の収束状態を前記不安定状態に設定する(図13のステップ1330)とともに、前記学習値を予め定められた初期値に設定する(図13のステップ1345)ように構成されている。
前記監視手段は、
前記監視制御手段により前記異常判定の実行が許可されている期間における前記学習値のみに基いて前記異常判定用の第1パラメータを取得するように構成されている(図14のステップ2110等)。
前記監視制御手段は、
前記機関の始動後からの前記学習値の更新回数を取得するとともに(図20のルーチン)、同取得された学習値の更新回数が所定の学習更新回数閾値よりも小さい期間において前記監視手段による前記異常判定の実行を中止するように構成されている(図21のステップ2105、条件(D1))。
前記燃料噴射制御手段は、
前記上流側空燃比センサの出力値により表される空燃比を理論空燃比に一致させるためのメインフィードバック量を算出するメインフィードバック量算出手段を含み、前記メインフィードバック量と前記サブフィードバック量とに基いて前記燃料噴射弁から噴射される燃料の量を制御するように構成されている(図11のルーチン)。
前記監視手段は、
前記監視制御手段による前記異常判定の実行が許可されたている期間における前記学習値の時間的平均値(サブFB学習値平均値Avesfbg)を算出する(図21のステップ2140)とともに、同時間的平均値を前記異常判定用の第1パラメータとして取得し、同取得した第1パラメータが所定の異常判定閾値(Ath)以上であるとき空燃比気筒間インバランスが発生したと判定するように構成されている(図21のステップ2145乃至ステップ2150)。
なお、本発明の範囲内において種々の変形例を採用することができる。例えば、サブFB学習値Vafsfbg(例えば、時間積分値SDVoxs)が所定値以下(サブFB学習値Vafsfbgの絶対値が所定値以上である負の値になったか否か)に基づいて失火率が許容率以上になる異常状態が発生することを判定してもよい。
このような判定が可能であることは以下の理由による。即ち、失火が発生する場合、燃料と空気の混合気が筒内から上流側空燃比センサを経て触媒へ流入する。そして、触媒に流入した混合気は、大部分が触媒にて燃焼処理されて、燃焼ガスとして触媒から流出する。従って、失火が発生する場合には、混合気そのものが上流側センサに到達する一方で、その混合気の燃焼ガスが下流側空燃比センサに到達するという事態が発生し得る。
一般に、理論空燃比(又は、理論空燃比近傍の空燃比)の混合気が空燃比センサの検出部に接触すると、空燃比センサはリーンを示す値を出力する場合が多い。これは、混合気中の酸素に対する空燃比センサの感度が、混合気中の他の成分に対する感度よりも大きいことに基づくと考えられる。
従って、失火が発生する毎に、(混合気の空燃比が理論空燃比近傍の空燃比であっても)上流側空燃比センサがリーンを示す値を出力することに応じて、機関に供給される混合気の空燃比がリッチ方向にフィードバック制御される。この空燃比のリッチ方向への平均的な偏移を補償するために、下流側空燃比センサがリッチを示す値を出力し、それによりサブフィードバック量Vafsfbの積分項がリーン方向へ偏移した収束値に向かって収束していく。従って、サブフィードバック量Vafsfbに基づけば、失火率が許容率以上となったことを判定することができる。
加えて、上記監視装置においては、サブFB学習値平均値Avesfbgをインバランス判定用パラメータとして取得していたが、上記異常判定許可条件が成立したときの「サブFB学習値Vafsfbgそのもの」をインバランス判定用パラメータとして取得してもよい。
また、上記監視装置(空燃比制御装置)は、特開2007−77869号公報、特開2007−146661号公報及び特開2007−162565号公報等に開示されているように、上流側空燃比センサ55の出力値Vabyfsに基いて得られる上流側空燃比abyfsと上流側目標空燃比abyfrとの差をハイパスフィルタ処理してメインフィードバック量KFmainを算出するとともに、下流側空燃比センサ56の出力値Voxsと下流側目標値Voxsrefとの偏差に対してローパスフィルタ処理を施した値を比例積分処理することによりサブフィードバック量Fisubを求めるように構成されていてもよい。この場合、下記(11)式に示したように、それらのフィードバック量を互いに独立させた形態にて基本燃料噴射量Fbaseの補正に用い、それにより、最終燃料噴射量Fiを求めるように構成されていても良い。
Fi=KFmain・Fbase+Fisub …(11)
更に、上記監視装置は、下記(12)式又は下記(13)式に従ってサブFB学習値Vafsfbgを更新するように構成されていてもよい。(12)式及び(13)式の左辺Vafsfbg(k+1)は更新後のサブFB学習値Vafsfbgを表す。値pは0以上1未満の任意の値である。
Vafsfbg(k+1)=p・Vafsfbg +(1−p)・Ki・SDVoxs …(11)
Vafsfbg(k+1)=p・Vafsfbg +(1−p)・Vafsfb …(12)
この場合、学習値Vafsfbgの更新速度は、値pが小さくなるほど大きくなる。よって、statusが0のときに値pを値p1に設定し、status1のときに値pを値p1よりも大きな値p2に設定し、status2のときに値pを値p2よりも大きな値p3に設定することにより、学習値Vafsfbgの更新速度を第1乃至第3の更新速度に設定することができる。
Claims (15)
- 多気筒内燃機関に適用されるとともに、
燃料を噴射する燃料噴射弁と、
前記機関の排気通路であって前記機関の複数の気筒の燃焼室から排出された排ガスが集合する排気集合部よりも下流側の部位に配設された触媒と、
前記排気集合部又は前記排気集合部と前記触媒との間の前記排気通路に配設され且つ同配設された部位を流れるガスの空燃比に応じた出力値を出力する上流側空燃比センサと、
前記排気通路であって前記触媒よりも下流側の部位に配設されるとともに同配設された部位を流れるガスの空燃比に応じた出力値を出力する下流側空燃比センサと、
所定の第1更新タイミングが到来する毎に前記下流側空燃比センサの出力値により表される空燃比を理論空燃比に一致させるためのサブフィードバック量を算出するサブフィードバック量算出手段と、
所定の第2更新タイミングが到来する毎に少なくとも前記上流側空燃比センサの出力値と前記サブフィードバック量とに基いて前記機関に供給される混合気の空燃比が理論空燃比に一致するように前記燃料噴射弁から噴射される燃料の量を制御する燃料噴射制御手段と、
所定の第3更新タイミングが到来する毎に前記サブフィードバック量の学習値を前記サブフィードバック量の定常成分に応じた量となるように更新する学習手段と、
前記学習値に応じて変化する異常判定用の第1パラメータに基いて前記機関に異常状態が発生しているか否かの異常判定を実行する監視手段と、
を備えた内燃機関の監視装置であって、
前記学習値の更新速度を、少なくとも、第1更新速度と、前記第1更新速度よりも小さい第2更新速度と、前記第2更新速度よりも小さい第3更新速度と、のうちの何れかの更新速度に設定する学習更新速度設定手段と、
前記監視手段による前記異常判定の実行を前記設定された学習値の更新速度に基いて許可又は中止する監視制御手段と、
を備えた監視装置。 - 請求項1に記載の内燃機関の監視装置において、
前記学習更新速度設定手段は、
前記学習値の収束値に対する前記学習値の収束状態が、
(a)前記学習値が前記収束値近傍にて安定している安定状態と、
(b)前記学習値が前記収束値から乖離し且つ変化速度が大きい不安定状態と、
(c)前記安定状態と前記不安定状態との間の状態にある準安定状態と、
の少なくとも3つの状態のうちの何れの状態であるかを、前記学習値に関連する第2パラメータに基いて判定するとともに、
前記学習値の収束状態が前記不安定状態であると判定されているときに前記学習値の更新速度を前記第1更新速度に設定し、
前記学習値の収束状態が前記準安定状態にあると判定されているときに前記学習値の更新速度を前記第2更新速度に設定し、
前記学習値の収束状態が前記安定状態にあると判定されているときに前記学習値の更新速度を前記第3更新速度に設定する、
ように構成された監視装置。 - 請求項2に記載の内燃機関の監視装置において、
前記監視制御手段は、
前記学習値の収束状態が前記安定状態にあると判定されている場合、又は、前記学習値の収束状態が前記準安定状態にあると判定されている期間が所定の第1閾値期間以上となった場合、前記監視手段による前記異常判定の実行を許可するように構成された、
監視装置。 - 請求項2に記載の内燃機関の監視装置において、
前記学習更新速度設定手段は、
所定の状態判定期間が経過する毎に同経過した状態判定期間における前記学習値の変化幅を前記学習値に関連する第2パラメータとして取得するとともに、前記取得された学習値の変化幅と所定の判定用閾値との大小比較の結果に基いて前記学習値の収束状態が前記3つの状態のうちの何れの状態にあるかを判定するように構成され、
前記監視制御手段は、
前記学習値の収束状態が前記安定状態にあると判定された場合、又は、前記学習値の収束状態が前記準安定状態にあると連続して2回判定された場合、前記監視手段による前記異常判定の実行を許可するように構成された、
監視装置。 - 請求項4に記載の内燃機関の監視装置において、
前記学習更新速度設定手段は、
前記状態判定期間における前記学習値の変化幅が前記判定用閾値としての所定の安定判定用閾値よりも小さいか否かを判定し、同学習値の変化幅が同安定判定用閾値よりも小さいと判定される場合、前記学習値の更新速度が前記第1更新速度から前記第2更新速度へ又は前記第2更新速度から前記第3更新速度へと低下するように、前記学習値の収束状態が前記3つの状態の1つから他の1つへと変化したと判定するように構成された、
監視装置。 - 請求項4に記載の内燃機関の監視装置において、
前記学習更新速度設定手段は、
前記状態判定期間における前記学習値の変化幅が前記判定用閾値としての所定の不安定判定用閾値よりも大きいか否かを判定し、同学習値の変化幅が同不安定判定用閾値よりも大きいと判定される場合、前記学習値の更新速度が前記第3更新速度から前記第2更新速度へ又は前記第2更新速度から前記第1更新速度へと増大するように、前記学習値の収束状態が前記3つの状態の1つから他の1つへと変化したと判定するように構成された、
監視装置。 - 請求項2に記載の内燃機関の監視装置において、
前記監視制御手段は、
前記学習値の収束状態が前記不安定状態にあると判定されている場合、又は、前記学習値の収束状態が前記安定状態にあると判定されている状態から前記準安定状態にあると判定されている状態へと変化した場合、前記監視手段による前記異常判定の実行を中止するように構成された、
監視装置。 - 請求項2に記載の内燃機関の監視装置において、
前記学習更新速度設定手段は、
所定の状態判定期間が経過する毎に同経過した状態判定期間における前記学習値の変化幅を前記学習値に関連する第2パラメータとして取得するとともに、前記学習値の変化幅と所定の判定用閾値との大小比較の結果に基いて前記学習値の収束状態が前記3つの状態のうちの何れの状態にあるかを判定するように構成され、
前記監視制御手段は、
前記学習値の収束状態が前記不安定状態にあると判定されている場合、又は、前記学習値の収束状態が前記安定状態にあると判定されている状態から前記準安定状態にあると判定されている状態へと変化した場合、前記監視手段による前記異常判定の実行を中止するように構成された、
監視装置。 - 請求項8に記載の内燃機関の監視装置において、
前記学習更新速度設定手段は、
前記状態判定期間における前記学習値の変化幅が前記判定用閾値としての所定の安定判定用閾値よりも小さいか否かを判定し、同学習値の変化幅が同安定判定用閾値よりも小さいと判定される場合、前記学習値の更新速度が前記第1更新速度から前記第2更新速度へ又は前記第2更新速度から前記第3更新速度へと低下するように、前記学習値の収束状態が前記3つの状態の1つから他の1つへと変化したと判定するように構成された、
監視装置。 - 請求項8に記載の内燃機関の監視装置において、
前記学習更新速度設定手段は、
前記状態判定期間における前記学習値の変化幅が前記判定用閾値としての所定の不安定判定用閾値よりも大きいか否かを判定し、同学習値の変化幅が同不安定判定用閾値よりも大きいと判定される場合、前記学習値の更新速度が前記第3更新速度から前記第2更新速度へ又は前記第2更新速度から前記第1更新速度へと増大するように、前記学習値の収束状態が前記3つの状態の1つから他の1つへと変化したと判定するように構成された、
監視装置。 - 請求項2乃至請求項10の何れか一項に記載の内燃機関の監視装置において、
前記学習更新速度設定手段は、
前記機関の運転中において、前記学習値の収束状態が前記3つの状態のうちの何れの状態であるかの最新の判定結果と、前記学習値の最新値と、を前記機関の停止中においてもデータを記憶保持することができる記憶手段に格納するとともに、
前記機関が始動されたとき前記記憶手段に格納されている前記判定結果に基いて前記学習値の更新速度を設定するとともに、前記記憶手段に格納されている学習値の最新値に基いて前記サブフィードバック量を算出するように構成された、
監視装置。 - 請求項11記載の内燃機関の監視装置であって、
前記学習更新速度設定手段は、
前記記憶手段のデータが消失されたとき、前記学習値の収束状態を前記不安定状態に設定するとともに、前記学習値を予め定められた初期値に設定するように構成された、
監視装置。 - 請求項1乃至請求項11の何れか一項に記載の内燃機関の監視装置であって、
前記監視手段は、
前記監視制御手段により前記異常判定の実行が許可されている期間における前記学習値のみに基いて前記異常判定用の第1パラメータを取得するように構成された、
監視装置。 - 請求項1乃至請求項13の何れか一項に記載の内燃機関の監視装置であって、
前記監視制御手段は、
前記機関の始動後からの前記学習値の更新回数を取得するとともに、同取得された学習値の更新回数が所定の学習更新回数閾値よりも小さい期間において前記監視手段による前記異常判定の実行を中止するように構成された、
監視装置。 - 請求項1乃至請求項14の何れか一項に記載の内燃機関の監視装置であって、
前記燃料噴射制御手段は、
前記上流側空燃比センサの出力値により表される空燃比を理論空燃比に一致させるためのメインフィードバック量を算出するメインフィードバック量算出手段を含み、前記メインフィードバック量と前記サブフィードバック量とに基いて前記燃料噴射弁から噴射される燃料の量を制御するように構成され、
前記監視手段は、
前記監視制御手段による前記異常判定の実行が許可されている期間における前記学習値の時間的平均値を算出するとともに、同時間的平均値を前記異常判定用の第1パラメータとして取得し、同取得した第1パラメータが所定の異常判定閾値以上であるとき空燃比気筒間インバランスが発生したと判定するように構成された、
監視装置。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2009/051813 WO2010087026A1 (ja) | 2009-01-28 | 2009-01-28 | 多気筒内燃機関の監視装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2010087026A1 JPWO2010087026A1 (ja) | 2012-07-26 |
JP5045820B2 true JP5045820B2 (ja) | 2012-10-10 |
Family
ID=42395297
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010548352A Expired - Fee Related JP5045820B2 (ja) | 2009-01-28 | 2009-01-28 | 多気筒内燃機関の監視装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US8509984B2 (ja) |
EP (1) | EP2392811B1 (ja) |
JP (1) | JP5045820B2 (ja) |
CN (1) | CN102301117B (ja) |
WO (1) | WO2010087026A1 (ja) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5246456B2 (ja) | 2009-10-29 | 2013-07-24 | トヨタ自動車株式会社 | 内燃機関システム制御装置 |
JP5018902B2 (ja) * | 2010-01-18 | 2012-09-05 | トヨタ自動車株式会社 | 内燃機関装置および内燃機関の制御方法並びに車両 |
JP2012007496A (ja) * | 2010-06-22 | 2012-01-12 | Toyota Motor Corp | 内燃機関の制御装置 |
BR112013003219B8 (pt) * | 2010-08-12 | 2021-08-17 | Toyota Motor Co Ltd | aparelho de controle de quantidade de injeção de combustível para um motor de combustão interna |
JP5644291B2 (ja) * | 2010-09-10 | 2014-12-24 | トヨタ自動車株式会社 | 内燃機関の燃料噴射量制御装置 |
JP5110205B2 (ja) * | 2010-11-17 | 2012-12-26 | トヨタ自動車株式会社 | 内燃機関の制御装置 |
JP5348190B2 (ja) | 2011-06-29 | 2013-11-20 | トヨタ自動車株式会社 | 内燃機関の制御装置 |
WO2013076842A1 (ja) * | 2011-11-24 | 2013-05-30 | トヨタ自動車株式会社 | 空燃比検出装置及び空燃比検出方法 |
JP5208289B1 (ja) * | 2012-01-30 | 2013-06-12 | 三菱電機株式会社 | 汎用エンジン制御装置 |
US9885307B2 (en) | 2012-04-10 | 2018-02-06 | Toyota Jidosha Kabushiki Kaisha | Control apparatus for internal combustion engine |
JP5648706B2 (ja) * | 2013-04-19 | 2015-01-07 | トヨタ自動車株式会社 | 内燃機関の空燃比制御装置 |
US10030593B2 (en) | 2014-05-29 | 2018-07-24 | Cummins Inc. | System and method for detecting air fuel ratio imbalance |
JP6250886B2 (ja) * | 2014-07-10 | 2017-12-20 | トヨタ自動車株式会社 | エンジン制御装置 |
JP6149828B2 (ja) | 2014-09-02 | 2017-06-21 | トヨタ自動車株式会社 | 内燃機関の制御装置 |
US9932922B2 (en) * | 2014-10-30 | 2018-04-03 | Ford Global Technologies, Llc | Post-catalyst cylinder imbalance monitor |
CN118669202B (zh) * | 2024-08-23 | 2024-10-29 | 合肥氢聚科技有限公司 | 一种适用于无尿素氨柴重型发动机的尾气控制系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6260957A (ja) * | 1985-09-12 | 1987-03-17 | Toyota Motor Corp | 内燃機関の空燃比制御装置 |
JPS63205441A (ja) * | 1987-02-19 | 1988-08-24 | Toyota Motor Corp | 内燃機関の空燃比制御装置 |
JP2009013967A (ja) * | 2007-07-09 | 2009-01-22 | Toyota Motor Corp | 水素検出装置、内燃機関の異常判定装置 |
JP2009030455A (ja) * | 2007-07-24 | 2009-02-12 | Toyota Motor Corp | 多気筒内燃機関の気筒間空燃比ばらつき異常を検出するための装置及び方法 |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4707985A (en) | 1985-09-12 | 1987-11-24 | Toyota Jidosha Kabushiki Kaisha | Double air-fuel ratio sensor system carrying out learning control operation |
JPH01172473A (ja) | 1987-12-28 | 1989-07-07 | Toshiba Silicone Co Ltd | 被覆用組成物 |
JP2707674B2 (ja) * | 1989-01-20 | 1998-02-04 | 株式会社デンソー | 空燃比制御方法 |
US5168701A (en) * | 1990-04-03 | 1992-12-08 | Daihatsu Motor Co., Ltd. | Method of controlling the air-fuel ratio in an internal combustion engine |
JP2812023B2 (ja) | 1991-11-12 | 1998-10-15 | トヨタ自動車株式会社 | 触媒劣化度検出装置 |
US5528899A (en) * | 1993-12-13 | 1996-06-25 | Nippondenso Co., Ltd. | Air-fuel ratio control apparatus for internal combustion engines |
JP3627787B2 (ja) * | 1997-07-14 | 2005-03-09 | 株式会社デンソー | 内燃機関の燃料供給系異常診断装置 |
JP3855483B2 (ja) | 1998-08-25 | 2006-12-13 | 株式会社デンソー | 積層型空燃比センサ素子 |
JP3510132B2 (ja) | 1999-01-27 | 2004-03-22 | 株式会社日立製作所 | エンジンの制御装置 |
JP3922091B2 (ja) | 2002-05-17 | 2007-05-30 | トヨタ自動車株式会社 | 内燃機関の空燃比制御装置 |
JP3972748B2 (ja) | 2002-07-03 | 2007-09-05 | トヨタ自動車株式会社 | 内燃機関の排気浄化装置 |
JP2004069547A (ja) | 2002-08-07 | 2004-03-04 | Toyota Motor Corp | 空燃比センサの制御装置 |
JP4539211B2 (ja) * | 2004-07-23 | 2010-09-08 | 日産自動車株式会社 | 内燃機関の制御装置 |
JP2007077869A (ja) | 2005-09-14 | 2007-03-29 | Toyota Motor Corp | 内燃機関の空燃比制御装置 |
JP4380625B2 (ja) | 2005-11-24 | 2009-12-09 | トヨタ自動車株式会社 | 内燃機関の空燃比制御装置 |
JP4363398B2 (ja) | 2005-12-08 | 2009-11-11 | トヨタ自動車株式会社 | 内燃機関の空燃比制御装置 |
JP2007162565A (ja) | 2005-12-14 | 2007-06-28 | Toyota Motor Corp | 内燃機関の空燃比制御装置 |
JP2007239700A (ja) | 2006-03-10 | 2007-09-20 | Toyota Motor Corp | 内燃機関の燃料噴射制御装置 |
ES2745102T3 (es) * | 2006-10-12 | 2020-02-27 | Toyota Motor Co Ltd | Dispositivo para controlar la relación aire/combustible de un motor de combustión interna de múltiples cilindros |
JP4756382B2 (ja) * | 2007-02-19 | 2011-08-24 | 株式会社デンソー | 排気浄化システムの劣化判定装置 |
JP4915526B2 (ja) * | 2007-07-31 | 2012-04-11 | 株式会社デンソー | 内燃機関の空燃比制御装置 |
-
2009
- 2009-01-28 JP JP2010548352A patent/JP5045820B2/ja not_active Expired - Fee Related
- 2009-01-28 EP EP09839216.0A patent/EP2392811B1/en not_active Not-in-force
- 2009-01-28 US US13/146,323 patent/US8509984B2/en active Active
- 2009-01-28 WO PCT/JP2009/051813 patent/WO2010087026A1/ja active Application Filing
- 2009-01-28 CN CN200980155560.1A patent/CN102301117B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6260957A (ja) * | 1985-09-12 | 1987-03-17 | Toyota Motor Corp | 内燃機関の空燃比制御装置 |
JPS63205441A (ja) * | 1987-02-19 | 1988-08-24 | Toyota Motor Corp | 内燃機関の空燃比制御装置 |
JP2009013967A (ja) * | 2007-07-09 | 2009-01-22 | Toyota Motor Corp | 水素検出装置、内燃機関の異常判定装置 |
JP2009030455A (ja) * | 2007-07-24 | 2009-02-12 | Toyota Motor Corp | 多気筒内燃機関の気筒間空燃比ばらつき異常を検出するための装置及び方法 |
Also Published As
Publication number | Publication date |
---|---|
EP2392811B1 (en) | 2015-11-11 |
US20110282541A1 (en) | 2011-11-17 |
US8509984B2 (en) | 2013-08-13 |
CN102301117B (zh) | 2014-03-12 |
EP2392811A1 (en) | 2011-12-07 |
EP2392811A4 (en) | 2014-04-09 |
CN102301117A (zh) | 2011-12-28 |
WO2010087026A1 (ja) | 2010-08-05 |
JPWO2010087026A1 (ja) | 2012-07-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5045820B2 (ja) | 多気筒内燃機関の監視装置 | |
JP5045814B2 (ja) | 多気筒内燃機関の空燃比気筒間インバランス判定装置 | |
JP5246456B2 (ja) | 内燃機関システム制御装置 | |
JP5088421B2 (ja) | 内燃機関の空燃比気筒間インバランス判定装置 | |
JP5041078B2 (ja) | 多気筒内燃機関の空燃比制御装置 | |
US9726103B2 (en) | Fuel injection amount control apparatus for an internal combustion engine | |
JP5488307B2 (ja) | 空燃比気筒間インバランス判定装置 | |
JP5494317B2 (ja) | 多気筒内燃機関の異常判定装置 | |
JP5532130B2 (ja) | 内燃機関の燃料噴射量制御装置 | |
JP5510158B2 (ja) | 内燃機関の燃料噴射量制御装置 | |
JP5499978B2 (ja) | 多気筒内燃機関の燃料噴射量制御装置 | |
JP2010180746A (ja) | 内燃機関の空燃比気筒間インバランス判定装置 | |
JP5522392B2 (ja) | 内燃機関の燃料噴射量制御装置 | |
JP5447673B2 (ja) | 内燃機関の燃料噴射量制御装置 | |
JP5170320B2 (ja) | 内燃機関の空燃比気筒間インバランス判定装置 | |
JP2010174809A (ja) | 多気筒内燃機関の制御装置 | |
JP2012017657A (ja) | 内燃機関の燃料噴射量制御装置 | |
JP5640662B2 (ja) | 内燃機関の燃料噴射量制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120420 |
|
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: 20120619 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120702 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150727 Year of fee payment: 3 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5045820 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
LAPS | Cancellation because of no payment of annual fees |