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

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

Info

Publication number
JP2005133714A
JP2005133714A JP2004264348A JP2004264348A JP2005133714A JP 2005133714 A JP2005133714 A JP 2005133714A JP 2004264348 A JP2004264348 A JP 2004264348A JP 2004264348 A JP2004264348 A JP 2004264348A JP 2005133714 A JP2005133714 A JP 2005133714A
Authority
JP
Japan
Prior art keywords
air
correction coefficient
fuel ratio
value
kact
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2004264348A
Other languages
English (en)
Other versions
JP4205030B2 (ja
Inventor
Takahide Mizuno
隆英 水野
Hidetaka Maki
秀隆 牧
Yuji Yasui
裕司 安井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Honda Motor Co Ltd
Original Assignee
Honda Motor Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Honda Motor Co Ltd filed Critical Honda Motor Co Ltd
Priority to JP2004264348A priority Critical patent/JP4205030B2/ja
Priority to EP04023817A priority patent/EP1522702A3/en
Priority to CA2484128A priority patent/CA2484128C/en
Priority to US10/958,553 priority patent/US7024302B2/en
Publication of JP2005133714A publication Critical patent/JP2005133714A/ja
Application granted granted Critical
Publication of JP4205030B2 publication Critical patent/JP4205030B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/008Controlling each cylinder individually
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/24Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means
    • F02D41/2406Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using essentially read only memories
    • F02D41/2425Particular ways of programming the data
    • F02D41/2429Methods of calibrating or learning
    • F02D41/2451Methods of calibrating or learning characterised by what is learned or calibrated
    • F02D41/2454Learning of the air-fuel ratio control
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/02Circuit arrangements for generating control signals
    • F02D41/14Introducing closed-loop corrections
    • F02D41/1401Introducing closed-loop corrections characterised by the control or regulation method
    • F02D2041/1413Controller structures or design
    • F02D2041/1431Controller structures or design the system including an input-output delay
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/02Circuit arrangements for generating control signals
    • F02D41/14Introducing closed-loop corrections
    • F02D41/1401Introducing closed-loop corrections characterised by the control or regulation method
    • F02D2041/1413Controller structures or design
    • F02D2041/1432Controller structures or design the system including a filter, e.g. a low pass or high pass filter
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/02Circuit arrangements for generating control signals
    • F02D41/14Introducing closed-loop corrections
    • F02D41/1401Introducing closed-loop corrections characterised by the control or regulation method
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/02Circuit arrangements for generating control signals
    • F02D41/14Introducing closed-loop corrections
    • F02D41/1438Introducing closed-loop corrections using means for determining characteristics of the combustion gases; Sensors therefor
    • F02D41/1444Introducing closed-loop corrections using means for determining characteristics of the combustion gases; Sensors therefor characterised by the characteristics of the combustion gases
    • F02D41/1454Introducing closed-loop corrections using means for determining characteristics of the combustion gases; Sensors therefor characterised by the characteristics of the combustion gases the characteristics being an oxygen content or concentration or the air-fuel ratio
    • F02D41/1456Introducing closed-loop corrections using means for determining characteristics of the combustion gases; Sensors therefor characterised by the characteristics of the combustion gases the characteristics being an oxygen content or concentration or the air-fuel ratio with sensor output signal being linear or quasi-linear with the concentration of oxygen

Landscapes

  • Engineering & Computer Science (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Mechanical Engineering (AREA)
  • General Engineering & Computer Science (AREA)
  • Electrical Control Of Air Or Fuel Supplied To Internal-Combustion Engine (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)

Abstract

【課題】 複数の気筒間の空燃比のばらつきを速やかにかつ適切に解消することができる内燃機関の空燃比制御装置を提供する。
【解決手段】 複数の気筒#1〜#4に供給される供給燃料量TOUTi を気筒ごとに制御することにより、複数の気筒#1〜#4にそれぞれ供給される混合気の空燃比を制御する内燃機関の空燃比制御装置1であって、空燃比制御装置1のECU2は、複数の気筒#1〜#4から排出され、合流した排気ガス中の空燃比を表す検出信号を出力する空燃比センサ14から出力された検出信号KACTを、所定周波数fr1、fr2域の成分を通過させるようにフィルタリングして出力し、この出力KACT_Fc,KACT_Frに応じて、この出力の振幅が所定値になるように、供給燃料量TOUTi を気筒ごとに決定する(図18、図25、図27、ステップ10,11)。
【選択図】 図11

Description

本発明は、複数の気筒に供給される燃料量を気筒ごとに制御することにより、複数の気筒にそれぞれ供給される混合気の空燃比を制御する内燃機関の空燃比制御装置に関する。
一般に、内燃機関では、インジェクタ、EGR装置および蒸発燃料処理装置などの不具合に起因して、複数の気筒に供給される混合気の空燃比が気筒間でばらつくと、排気ガスを浄化する三元触媒の浄化率が低下し、大気中に放出される排気ガス中の有害物質が増加するおそれがある。このような不具合を解消するために、従来、複数の気筒の空燃比を互いに等しくなるように制御する空燃比制御装置として、例えば特許文献1に開示されたものが知られている。この空燃比制御装置は、排気管に設けられ、排気ガス中の酸素濃度を表す検出信号を出力する空燃比センサと、この空燃比センサの出力が入力される第1および第2バンドパスフィルタと、これら第1および第2バンドパスフィルタに接続された制御ユニットと、この制御ユニットに接続されるとともに、複数の気筒の燃焼室に燃料をそれぞれ供給する複数のインジェクタとを備えている。
第1および第2バンドパスフィルタは、空燃比センサの出力を、互いに異なる所定の周波数域の成分を通過させるようにそれぞれフィルタリングする。制御ユニットは、これらのフィルタリングされた空燃比センサの出力に基づいて、気筒ごとに、排出された排気ガス中の酸素濃度、および排気ガス中の酸素濃度の目標値を求める。そして、求めたこれらの排気ガス中の酸素濃度およびその目標値の偏差を気筒ごとに求め、これらの偏差に基づいて、対応する気筒のインジェクタの燃料噴射量を制御することによって、複数の気筒の排気ガス中の酸素濃度を互いに等しくなるように、すなわち複数の気筒の空燃比を互いに等しくなるように制御する。以上のように、第1および第2バンドパスフィルタでフィルタリングした空燃比センサの出力に基づいて、各インジェクタの燃料噴射量を制御するのは、このフィルタリングによって、排気ガスの圧力や吸気弁の製造公差や損耗などのノイズ成分を空燃比センサの出力から除去することにより、空燃比制御のロバスト性を向上させるためである。
しかし、上述した従来の制御装置では、気筒ごとに求めた排気ガス中の酸素濃度とそのときに設定された一定の目標値との偏差に基づいて、対応するインジェクタの燃料噴射量を制御するので、この偏差が非常に大きいときには、すべての気筒の排気ガス中の酸素濃度がその目標値に収束するのに時間がかかってしまう。その結果、複数の気筒間の空燃比のばらつきが解消するのに要する時間が長くなることで、その間、大気中に放出される有害物質が増加するおそれがある。
本発明は、以上のような課題を解決するためになされたものであり、複数の気筒間の空燃比のばらつきを速やかにかつ適切に解消することができる内燃機関の空燃比制御装置を提供することを目的とする。
特開2002−213284号公報
上記の目的を達成するため、本願の請求項1に係る発明は、複数の気筒(実施形態における(以下本項において同じ)1〜4番気筒#1〜#4)に供給される供給燃料量(最終燃料噴射量TOUTi )を気筒ごとに制御することにより、複数の気筒にそれぞれ供給される混合気の空燃比を制御する内燃機関の空燃比制御装置1であって、複数の気筒から排出され、合流した排気ガス中の空燃比を表す検出信号を出力する空燃比センサ(LAFセンサ14)と、空燃比センサから出力された検出信号(LAFセンサの出力KACT)を、所定周波数(第1周波数fr1、第2周波数fr2)域の成分を通過させるようにフィルタリングするバンドパスフィルタ(ECU2、サイクルフィルタ23a、回転フィルタ23b、ステップ51,52)と、バンドパスフィルタの出力(第1フィルタリング値KACT_Fc,第2フィルタリング値KACT_Fr)に応じて、バンドパスフィルタの出力の振幅が所定値になるように、供給燃料量を気筒ごとに決定する燃料量決定手段(ECU2、図18、図25、図27、図37、ステップ10,11)と、を備えることを特徴とする。
この内燃機関の空燃比制御装置によれば、バンドパスフィルタにより、排気ガス中の空燃比を表す検出信号を出力する空燃比センサの検出信号が、所定周波数域の成分が通過するようにフィルタリングされ、燃料量決定手段により、バンドパスフィルタの出力に応じて、その出力の振幅が所定値になるように、供給燃料量が気筒ごとに決定される。
本発明は、実験により確認された以下の事実に基づいている。すなわち、空燃比センサの検出信号を周波数解析した場合、複数の気筒に供給される混合気の空燃比が気筒間でばらついているときには、特定の周波数域のパワースペクトル密度が非常に大きくなる。一方、混合気の空燃比が気筒間でばらついていないときには、そのような特定の周波数域のパワースペクトル密度が大きくなる事象は生じない。また、バンドパスフィルタが通過させる周波数域を、気筒間で空燃比がばらついているときにパワースペクトル密度が大きくなる上記の特定の周波数域に設定し、このバンドパスフィルタによって空燃比センサの検出信号をフィルタリングすると、このバンドパスフィルタの出力は、気筒間で空燃比がばらついているときには、値0を中心として正負両側に変化する正弦波状になり、ばらついていないときには値0を示す。さらに、そのような正弦波状のバンドパスフィルタの出力は、複数の気筒のうち、よりリッチな空燃比の混合気が供給される気筒から排気ガスが主として排出されているタイミングに対応するタイミング(以下「気筒に対応するタイミング」という)では、正値になり、よりリーンな空燃比の混合気が供給される気筒に対応するタイミングでは、負値になる。以上のように、上記のバンドパスフィルタの出力の振幅の有無は、気筒間の空燃比のばらつきの有無を表すとともに、振幅がある場合、その正負によって、気筒間の空燃比の大小関係を特定することが可能である。
このため、例えば、上述した特定周波数域を、本発明のバンドパスフィルタの所定周波数域として設定するとともに、そのようなバンドパスフィルタの出力に応じて、この出力の振幅が所定値、例えば値0になるように、各気筒の供給燃料量を決定することによって、複数の気筒間の空燃比のばらつきを適切に解消することができる。例えば、上述したようにバンドパスフィルタの出力の正負によって気筒間の空燃比の大小関係が特定されるので、供給される混合気の空燃比がよりリッチな気筒の供給燃料量を減少させるとともに、空燃比がよりリーンな気筒の供給燃料量を増加させるというように、複数の気筒の空燃比を平均化するように制御できる。それにより、一定の目標値にすべての気筒の排気ガス中の酸素濃度を収束させる従来の場合と比較して、複数の気筒間の空燃比のばらつきを速やかに解消することができる。
請求項2に係る発明は、請求項1に記載の内燃機関の空燃比制御装置1において、バンドパスフィルタは、互いに並列に設けられ、空燃比センサの検出信号を、互いに異なる複数の所定周波数(第1周波数fr1、第2周波数fr2)域の成分をそれぞれ通過させるようにフィルタリングする複数のバンドパスフィルタ(サイクルフィルタ23a、回転フィルタ23b)で構成され、複数のバンドパスフィルタの少なくとも1つの出力(第1フィルタリング値KACT_Fc,第2フィルタリング値KACT_Fr)に基づいて、複数のバンドパスフィルタの1つを選択するフィルタ選択手段(ECU2、コントロールスイッチ23g、ステップ57、図18、ステップ60〜62)をさらに備え、燃料量決定手段は、選択された1つのバンドパスフィルタの出力に応じて、バンドパスフィルタの出力の振幅が所定値になるように、供給燃料量を決定する(ステップ65〜67、ステップ100,101、ステップ10,11)ことを特徴とする。
この構成によれば、互いに並列に設けられた複数のバンドパスフィルタによって、空燃比センサの検出信号が、互いに異なる複数の所定周波数域の成分がそれぞれ通過するようにフィルタリングされ、フィルタ選択手段により、これらの複数のバンドパスフィルタの少なくとも1つの出力に基づいて、1つのバンドパスフィルタが選択される。また、燃料量決定手段により、この選択されたバンドパスフィルタの出力に応じて、そのバンドパスフィルタの出力の振幅が所定値になるように、各気筒の供給燃料量が決定される。本発明は、実験により確認された以下の事実に基づいている。すなわち、複数の気筒間で空燃比がばらついている場合において、例えば、4つの気筒のうち、1つの気筒のみの空燃比が他の気筒と異なるときと、空燃比が互いに等しい2つの気筒の空燃比が、空燃比が互いに等しい他の2つの気筒と異なるとき(例えば、1番および4番気筒#1,#4がリッチ、2番および3番気筒#2,#3がリーン)では、空燃比センサの検出信号のうちの気筒間の空燃比のばらつきの有無を表す特定周波数域が互いに異なる。このように、気筒間の空燃比のばらつきパターンによって、空燃比センサの検出信号のうちの気筒間の空燃比のばらつきの有無を表す特定周波数域が異なる。
このため、例えば、気筒間の空燃比のすべてのばらつきパターンに対応する特定周波数域を、複数のバンドパスフィルタの所定周波数域としてそれぞれ設定することにより、いかなるばらつきパターンにおいても、これらの複数のバンドパスフィルタのいずれか1つの出力の振幅によって、気筒間の空燃比のばらつきの有無を表し、気筒間の空燃比の大小関係を特定することができる。そのような複数のバンドパスフィルタの出力に基づいて、気筒間の空燃比のばらつきの有無などを良好に表すバンドパスフィルタを選択し、その出力に基づいて供給燃料量を決定することによって、いかなるばらつきパターンにおいても、複数の気筒間の空燃比のばらつきを速やかにかつ適切に解消することができる。
請求項3に係る発明は、請求項2に記載の内燃機関の空燃比制御装置1において、複数のバンドパスフィルタの出力の加重平均値(第1加重平均値KACT_Fcd、第2加重平均値KACT_Frd)を、加重平均値の前回値の絶対値およびバンドパスフィルタの出力の今回値の絶対値を加重平均することによって、複数のバンドパスフィルタごとにそれぞれ算出する加重平均値算出手段(ECU2、第1加重平均値算出部23e、第2加重平均値算出部23f、ステップ57,58)をさらに備え、フィルタ選択手段は、算出された複数の加重平均値の少なくとも1つに基づいて、複数のバンドパスフィルタの1つを選択する(ステップ60〜62)ことを特徴とする。
この構成によれば、加重平均値算出手段により、複数のバンドパスフィルタの出力の加重平均値が、その前回値の絶対値およびバンドパスフィルタの出力の今回値の絶対値を加重平均することによって、複数のバンドパスフィルタごとにそれぞれ算出される。また、フィルタ選択手段によって、これらの算出された複数の加重平均値の少なくとも1つに基づいて、供給燃料量の決定に用いられるバンドパスフィルタが選択される。
請求項2の発明のように、互いに異なる所定周波数域のバンドパスフィルタを用いる場合において、あるばらつきパターンによる気筒間の空燃比のばらつきが生じたときには、各気筒の空燃比の一時的な変動などが生じると、選択されているバンドパスフィルタの出力よりも他のバンドパスフィルタの出力が、気筒間の空燃比のばらつきの有無などを一時的に良好に表す場合がある。そのような場合には、各バンドパスフィルタの出力に直接的に応答して、供給燃料量の決定に用いるバンドパスフィルタを即座に選択すると、このバンドパスフィルタの切換の頻度が高くなり、気筒間の空燃比のばらつきが解消するのに時間がかかるおそれがある。これに対して、本発明によれば、上記のように算出した複数の加重平均値の少なくとも1つに基づいて、燃料量の決定に用いられるバンドパスフィルタを選択するので、各気筒の空燃比が一時的に変動しても、この変動の影響を加重平均によって吸収することができ、その結果、バンドパスフィルタの頻繁な切り換えを防止でき、したがって、各気筒の空燃比が一時的に変動したような場合でも、気筒間の空燃比のばらつきを速やかに解消することができる。
請求項4に係る発明は、請求項1に記載の内燃機関の空燃比制御装置1において、バンドパスフィルタは、互いに並列に設けられ、空燃比センサの検出信号を、互いに異なる複数の所定周波数域の成分をそれぞれ通過させるようにフィルタリングする複数のバンドパスフィルタで構成され、複数のバンドパスフィルタの出力の総和を算出する総和算出手段(ECU2、加算器30a、ステップ90)をさらに備え、燃料量決定手段は、算出された総和に応じて、総和が所定値になるように、供給燃料量を決定する(ステップ93〜95,ステップ10,11)ことを特徴とする。
本発明は、実験により確認された以下の事実に基づいている。すなわち、例えば4気筒のうち、ある1つの気筒(n気筒)のみの空燃比がリーン側にずれているばらつきパターンの場合に、この場合のばらつきを表す空燃比センサの検出信号のうちの特定周波数域を通過させるようにフィルタリングするバンドパスフィルタの出力は、値0を中心とする正弦波状になり、n気筒に対応するタイミングでは、負値のピークになり、その気筒から2番目に燃焼が行われる気筒(n+2気筒)に対応するタイミングでは、空燃比がずれていないにも関わらず、正値のピークになる。また、上記のバンドパスフィルタに加えて、それと異なる所定の周波数域を通過させる複数のバンドパスフィルタを用いて、空燃比センサの検出信号をそれぞれフィルタリングした場合、それらの出力の総和は、正弦波状になるものの、上記のバンドパスフィルタの出力と比較して、n気筒に対応するタイミングにおける負値のピーク値の絶対値が大きくなり、n+2気筒に対応するタイミングにおける正値のピーク値が小さくなる。すなわち、この出力の総和は、気筒間の空燃比の実際のばらつきにより近い特性を示す。
上述した構成によれば、互いに並列に設けられた複数のバンドパスフィルタにより、空燃比センサの出力のうちの互いに異なる複数の所定周波数域の成分がそれぞれ通過するようにフィルタリングされ、燃料量決定手段により、これらの複数のバンドパスフィルタの出力の振幅の総和に応じて、この総和が所定値になるように、各気筒の供給燃料量が決定される。このため、例えば、これらの複数のバンドパスフィルタの所定周波数域を、それらの出力の総和が気筒間の空燃比の実際のばらつきにより近い特性を示すようにそれぞれ設定するとともに、この総和が所定値、例えば値0になるように各気筒の供給燃料量を決定することにより、気筒間の空燃比のばらつきを、さらに速やかにかつ適切に解消することができる。
請求項5に係る発明は、請求項1に記載の内燃機関の空燃比制御装置1において、燃料量決定手段は、供給燃料量を所定周期ごとに決定し、所定周期以下の周期で、空燃比センサの検出信号をサンプリングし、バンドパスフィルタに出力するサンプリング手段(ECU2、ステップ50)をさらに備えることを特徴とする。
この構成によれば、空燃比センサの検出信号は、サンプリング手段により、各気筒の供給燃料量の決定周期以下の周期でサンプリングされ、バンドパスフィルタに出力される。このように、空燃比センサの検出信号を、供給燃料量の決定周期、すなわち各気筒から排気ガスが排出される周期と同じまたはそれよりも短い周期ごとにサンプリングするので、そのようにサンプリングされた空燃比センサの検出信号は、各気筒の排気ガス中の空燃比の変化状態をきめ細かく表す。これにより、バンドパスフィルタの出力は、気筒間の空燃比のばらつきの有無および大小関係をよりきめ細かく適切に表すので、気筒間の空燃比のばらつきを、より速やかにかつ適切に解消することができる。
請求項6に係る発明は、請求項1に記載の内燃機関の空燃比制御装置1において、内燃機関のクランク角度を検出するクランク角度検出手段(クランク角センサ13)と、複数の気筒から排出された排気ガスが空燃比センサに到達するまでのむだ時間を、クランク角度を基準として設定するむだ時間設定手段(ECU2、第1遅延要素23c、第2遅延要素23d、ステップ53,55)と、をさらに備え、燃料量決定手段は、気筒からの排気ガスの排出後、設定されたむだ時間が経過したタイミングで検出された空燃比センサの検出信号をフィルタリングしたバンドパスフィルタの出力に応じて、この気筒の供給燃料量を決定する(ステップ54,56,図18、図25、図27、図37、ステップ10,11)ことを特徴とする。
この構成によれば、むだ時間設定手段によって、複数の気筒から排出された排気ガスが空燃比センサに到達するまでのむだ時間が、クランク角度を基準として設定され、燃料量決定手段によって、各気筒からの排気ガスの排出後、設定されたむだ時間が経過したタイミングで検出された空燃比センサの検出信号をフィルタリングしたバンドパスフィルタの出力に応じて、各気筒の供給燃料量が決定される。本発明では、各気筒から排出された排気ガスが合流した位置に空燃比センサが設けられているので、排気ガスが各気筒から排出された後、空燃比センサに到達するまでに、むだ時間が生じる。このため、上述したように、各気筒の供給燃料量の決定に用いるバンドパスフィルタの出力として、各気筒からの排気ガスの排出後、このむだ時間が経過したタイミングで検出された空燃比センサの検出信号に基づくものを採用することによって、各気筒の排気ガス中の空燃比が良好に反映された出力を用いて、各気筒の供給燃料量を決定することができる。したがって、むだ時間を補償しながら、供給燃料量を適切に決定することができる。
請求項7に係る発明は、請求項6に記載の内燃機関の空燃比制御装置1において、内燃機関の運転状態(吸気管内絶対圧PBA,エンジン回転数NE)を検出する運転状態検出手段(吸気管内絶対圧センサ11、クランク角センサ13、ECU2)をさらに備え、むだ時間設定手段は、検出された内燃機関の運転状態にさらに応じて、むだ時間を設定する(ECU2、ステップ53,55)ことを特徴とする。
上述した各気筒の排気ガスが空燃比センサに到達するまでのむだ時間の長さは、内燃機関の運転状態の変化に伴って変化する。これに対して、本発明によれば、むだ時間を、検出された内燃機関の運転状態に応じて設定することによって、運転状態の変化に応じて、むだ時間を適切に補償しながら、各気筒の排気ガス中の空燃比が良好に反映されたバンドパスフィルタの出力を、最適に得ることができる。
請求項8に係る発明は、請求項1に記載の内燃機関の空燃比制御装置1において、バンドパスフィルタの出力に基づいて、気筒間の空燃比のばらつきを補正するための補正用パラメータ(ばらつき補正係数暫定値keafi )を気筒ごとに算出する補正用パラメータ算出手段(ECU2、ばらつき補正係数算出部23i、30c、40b、60a、ステップ65、ステップ93、ステップ101)と、気筒ごとに算出された複数の補正用パラメータの平均値(移動平均値KEAFave)を算出する平均値算出手段(ECU2、ばらつき補正係数算出部23i、30c、40b、60a、ステップ66、ステップ94)と、補正用パラメータを算出された補正用パラメータの平均値で除算することにより、補正係数(ばらつき補正係数KEAFi )を気筒ごとに算出する補正係数算出手段(ECU2、ばらつき補正係数算出部23i、30c、40b、60a、ステップ67、ステップ95)と、をさらに備え、燃料量決定手段は、算出された補正係数に応じて、供給燃料量を決定する(ステップ10,11)ことを特徴とする。
この構成によれば、補正用パラメータ算出手段により、バンドパスフィルタの出力に基づいて、気筒間の空燃比のばらつきを補正するための補正用パラメータが気筒ごとに算出されるとともに、これらの複数の補正用パラメータの平均値が、平均値算出手段により算出される。また、補正係数算出手段により、補正用パラメータを補正用パラメータの平均値で除算することによって、補正係数が気筒ごとに算出される。さらに、燃料量決定手段により、補正係数に応じて、各気筒の供給燃料量が決定される。
空燃比センサの検出信号をフィルタリングしたバンドパスフィルタの出力には、ノイズが含まれる場合がある。そのような場合に、このバンドパスフィルタの出力を直接用いて、気筒間の空燃比のばらつきを補正するための補正係数を気筒ごとに算出し、算出した補正係数に応じて各気筒の供給燃料量を決定すると、各気筒の補正係数を上記のノイズの影響によって適切に算出することができず、それにより、各気筒に供給される混合気の空燃比が変動するおそれがある。これに対して、本発明によれば、上述したように、各気筒の補正用パラメータを補正用パラメータの平均値で除算することにより算出した補正係数を用いて供給燃料量を決定するので、バンドパスフィルタの出力にノイズが含まれている場合でも、各気筒の補正係数へのノイズの影響を平準化することができるので、各気筒の補正係数を適切に算出でき、したがって、各気筒の空燃比の変動を回避することができる。
請求項9に係る発明は、請求項8に記載の内燃機関の空燃比制御装置1において、補正係数に基づいて、複数の気筒に燃料を供給する燃料供給系(インジェクタ6)の所定の動作特性に対するずれを気筒ごとに判定する動作特性判定手段(ECU2、図19)をさらに備えることを特徴とする。
この構成によれば、動作特性判定手段により、補正係数に基づいて、各気筒の燃料供給系の所定の動作特性に対するずれが判定される。前述したように、補正係数は、気筒間の空燃比のばらつきを補正するための補正用パラメータに基づき、バンドパスフィルタの出力に含まれたノイズの影響が平準化された値として算出されるため、補正係数による補正が行われなかった場合の気筒間におけるもともとの相対的な空燃比のばらつきの度合を表す。また、このような気筒間のもともとの空燃比のばらつきは、インジェクタや吸気弁を含む燃料供給系の動作特性が気筒間でばらついていることによって生じる。したがって、本発明によれば、補正係数に基づいて、燃料供給系の所定の動作特性に対するずれを、気筒ごとに適切に判定することができる。特に、そのように判定された動作特性のずれが過大な場合には、その気筒のインジェクタなどが正常に動作していないと判定することができる。
請求項10に係る発明は、請求項1に記載の内燃機関の空燃比制御装置1において、バンドパスフィルタの出力に基づいて、気筒間の空燃比のばらつきを補正するための補正係数(ばらつき補正係数KEAFi )を算出する補正係数算出手段(ECU2、ばらつき補正係数算出部23i、30c、40b、ステップ61,62,65〜67、ステップ90,93〜95)と、バンドパスフィルタの出力の絶対値が所定のしきい値KACT_THRESHよりも小さくなったときに、その直前に補正係数算出手段により算出された補正係数の値に補正係数を固定する補正係数固定手段(ECU2、算出用フィルタリング値決定部23h、30b、40a、ステップ63,64、ステップ80、ステップ91,92)と、をさらに備え、燃料量決定手段は、補正係数に応じて供給燃料量を決定する(ステップ10,11)ことを特徴とする。
この構成によれば、気筒間の空燃比のばらつきを補正するための補正係数が、補正係数算出手段によりバンドパスフィルタの出力に基づいて算出され、算出された補正係数に応じて、各気筒の供給燃料量が決定される。これにより、バンドパスフィルタの出力の振幅が所定値、例えば値0に収束することによって、複数の気筒間の空燃比のばらつきが解消される。また、この補正係数は、バンドパスフィルタの出力の絶対値がしきい値よりも小さくなったときに、補正係数固定手段によって、その直前に算出された値に固定される。
これは次の理由による。すなわち、空燃比センサの検出信号をフィルタリングしたバンドパスフィルタの出力には通常、ノイズが含まれるため、複数の気筒の空燃比が互いに等しくても、バンドパスフィルタの出力は完全には値0にならない。このため、バンドパスフィルタの出力に基づいて算出した補正係数に応じて供給燃料量を決定し続けると、気筒間の空燃比のばらつきが一旦、解消された後に、バンドパスフィルタの出力中のノイズにより補正係数が変動することによって、気筒間の空燃比のばらつきが再び生じ、さらにその後に解消されるというハンチング現象が生じるおそれがあるためである。
本発明によれば、バンドパスフィルタの出力の絶対値がしきい値よりも小さくなったとき、すなわち気筒間の空燃比のばらつきが解消されたとみなされたときに、その直前に補正係数算出手段により算出された値に補正係数を固定する。これにより、バンドパスフィルタの出力に基づく補正係数の算出・更新を行わないようにすることによって、バンドパスフィルタの出力中のノイズに起因する補正係数の変動を防止でき、その結果、上述したハンチング現象を回避することができる。
以上のように、バンドパスフィルタの出力に基づく補正係数に応じて供給燃料量を決定することによって、気筒間の空燃比のばらつきを解消できるとともに、その後は、補正係数を直前の値に固定することによって、気筒間の空燃比のばらつきのない状態に維持することができる。
請求項11に係る発明は、請求項1に記載の内燃機関の空燃比制御装置1において、バンドパスフィルタの出力の絶対値が所定のしきい値KACT_THRESHよりも小さいときに、バンドパスフィルタの出力に基づいて、気筒間の空燃比のばらつきを補正するための学習補正係数KMEMi を算出する学習補正係数算出手段(学習補正係数算出記憶部60b、ECU2、ステップ123)と、内燃機関3の運転状態(吸気管内絶対圧PBA、エンジン回転数NE)を検出する運転状態検出手段(吸気管内絶対圧センサ11、クランク角センサ13、ECU2)と、算出された学習補正係数KMEMi を、検出された内燃機関3の運転状態に対応させて記憶する記憶手段(学習補正係数算出記憶部60b、ECU2、EEPROM2a、図38、ステップ124)と、燃料量決定手段は、記憶された学習補正係数KMEMi のうちの、検出された現在の内燃機関3の運転状態に対応する学習補正係数(第1検索値KMEMIPi )に応じて、供給燃料量を決定する(ステップ100,101,66,67,10,11)ことを特徴とする。
この構成によれば、バンドパスフィルタの出力の絶対値が所定のしきい値よりも小さいときに、気筒間の空燃比のばらつきを補正するための学習補正係数が、学習補正係数算出手段によりバンドパスフィルタの出力に基づいて算出される。また、算出された学習補正係数が、検出された内燃機関の運転状態に対応させて記憶手段によって記憶される。さらに、記憶された学習補正係数のうちの、検出された現在の内燃機関の運転状態に対応する学習補正係数に応じて、供給燃料量が決定される。
前述したように、気筒間の空燃比のばらつきは、インジェクタなどの不具合に起因して生じるため、内燃機関の運転状態に応じて、そのばらつきの度合が異なる傾向にある。このため、請求項1の作用で述べたように、バンドパスフィルタの出力に応じて供給燃料量を決定することによって空燃比のばらつきが一旦、解消されても、内燃機関の運転状態が変化するのに伴って、空燃比のばらつきが再度、発生する場合がある。
これに対して、本発明によれば、学習補正係数は、バンドパスフィルタの出力の絶対値がしきい値よりも小さいとき、すなわち、気筒間で空燃比がほとんどばらついていないとみなされる状況で算出されるので、空燃比のばらつきを補正するのに最適である。また、そのように算出した学習補正係数を、内燃機関の運転状態に対応させて記憶する。したがって、内燃機関の運転状態に応じて、そのときの実際の内燃機関の運転状態に最適な学習補正係数を用いて、供給燃料量を決定できる。その結果、学習補正係数を用いた供給燃料量のフィードフォワード制御によって、内燃機関の運転状態に応じて空燃比のばらつきを適切に補正でき、したがって、このばらつきを抑制することができる。
請求項12に係る発明は、請求項11に記載の内燃機関の空燃比制御装置1において、前記記憶手段は、不揮発性メモリであることを特徴とする。
この構成によれば、学習補正係数は不揮発性メモリに記憶される。このため、例えば、内燃機関の始動時において、前回までの内燃機関の運転中に記憶された学習補正係数を用いて供給燃料量を決定できる。また、請求項1の作用で述べたように、供給燃料量を、空燃比センサの出力である検出信号をフィルタリングしたバンドパスフィルタの出力に応じて決定するので、内燃機関の始動後、空燃比センサが活性化するまでは、供給燃料量を適切に決定できず、その結果、発生した空燃比のばらつきを解消できないおそれがある。これに対して、本発明によれば、内燃機関の始動後、前回までの内燃機関の運転中に記憶された学習補正係数を用いて供給燃料量を決定できるので、空燃比センサが活性化していない状態でも、空燃比のばらつきを適切に補正でき、したがって、このばらつきを抑制することができる。
請求項13に係る発明は、請求項11または12に記載の内燃機関の空燃比制御装置1において、学習補正係数算出手段は、バンドパスフィルタの出力に基づいて補正係数(ばらつき補正係数KEAFi )を算出する補正係数算出手段(ばらつき補正係数算出部60a、ECU2、ステップ61,62,101,66,67)を備え、算出された補正係数と、記憶手段に記憶された、補正係数を算出したときの内燃機関3の運転状態に対応する学習補正係数(第2検索値KMEMIPi ’)とに応じて、学習補正係数KMEMi を算出する(ステップ123)ことを特徴とする。
この構成によれば、補正係数算出手段により、補正係数がバンドパスフィルタの出力に基づいて算出される。また、学習補正係数は、この補正係数と、補正係数を算出したときの内燃機関の運転状態に対応する、すでに記憶された学習補正係数とに応じて算出される。そして、算出された学習補正係数が記憶され、更新されるとともに、供給燃料量の決定に用いられる。
バンドパスフィルタの出力は、空燃比センサの出力である検出信号をフィルタリングしたものであるので、このバンドパスフィルタの出力にノイズが含まれる場合がある。このため、気筒間で空燃比がほとんどばらついていないとみなされる状況で、バンドパスフィルタの出力に基づいて学習補正係数を算出しても、そのノイズなどの影響によって、算出した学習補正係数をそのまま用いることが適切でない場合がある。これに対して、本発明によれば、バンドパスフィルタの出力に基づいて算出した補正係数をそのまま学習補正係数として用いるのではなく、そのように算出した補正係数とすでに記憶された学習補正係数とに応じて学習補正係数を算出するので、学習補正係数へのバンドパスフィルタの出力中のノイズなどの影響を抑制することができる。また、この学習補正係数の算出の際に、補正係数を算出したときの内燃機関の運転状態に対応する学習補正係数を用いるので、学習補正係数を、内燃機関の運転状態に応じて適切に算出することができる。
以下、図面を参照しながら、本発明の第1実施形態に係る内燃機関の空燃比制御装置について説明する。図1に示すように、空燃比制御装置1は、ECU2を備えており、内燃機関(以下「エンジン」という)3は、4つの1〜4番気筒#1〜#4(複数の気筒)を備えた、車両(図示せず)用の4サイクル直列4気筒型ガソリンエンジンである。
エンジン3の吸気管4に設けられたスロットル弁5には、スロットル弁開度センサ10が設けられている。スロットル弁開度センサ10は、例えばポテンショメータなどで構成されており、スロットル弁5の開度(以下「スロットル弁開度」という)THを検出し、その検出信号をECU2に出力する。
また、吸気管4のスロットル弁5よりも下流側には、吸気管内絶対圧センサ11(運転状態検出手段)が設けられている。吸気管内絶対圧センサ11は、例えば半導体圧力センサなどで構成されており、吸気管4内の吸気管内絶対圧PBA(内燃機関の運転状態)を検出し、その検出信号をECU2に出力する。
さらに、吸気管4は、吸気マニホルド4aの4つの分岐部4bを介して4つの気筒#1〜#4にそれぞれ接続されている。各分岐部4bには、各気筒の吸気ポート(図示せず)の上流側に、インジェクタ6(燃料供給系)が取り付けられている。各インジェクタ6は、エンジン3の運転時に、ECU2からの駆動信号によって、その開弁時間である燃料噴射量および噴射タイミングが制御される。なお、この燃料噴射は、4つの気筒#1〜#4において、#1→#3→#4→#2の順で行われる。
また、エンジン3の本体およびクランクシャフト(図示せず)には、水温センサ12およびクランク角センサ13(クランク角度検出手段、運転状態検出手段)がそれぞれ取り付けられている。水温センサ12は、例えばサーミスタなどで構成されており、エンジン3のシリンダブロック内を循環する冷却水の温度であるエンジン水温TWを検出し、その検出信号をECU2に出力する。クランク角センサ13は、クランクシャフトの回転に伴い、いずれもパルス信号であるCRK信号およびTDC信号をECU2に出力する。このCRK信号は、所定のクランク角(例えば30゜)ごとに1パルスが出力される。ECU2は、このCRK信号に応じ、エンジン3の回転数(以下「エンジン回転数」という)NE(内燃機関の運転状態)を算出する。TDC信号は、各気筒のピストン(図示せず)が吸気行程のTDC位置よりも若干、手前の所定のクランク角位置にあることを表す信号であり、4気筒タイプの本例では、クランク角180゜ごとに1パルスが出力される。
さらに、エンジン3には、気筒判別センサ(図示せず)が設けられており、この気筒判別センサは、4つの気筒#1〜#4を判別するためのパルス信号を気筒判別信号としてECU2に出力する。
排気管7の排気マニホルド7aでは、4つの気筒#1〜#4からそれぞれ延びる4つの排気管部が、集合部7bにおいて集合している。また、排気管7の排気マニホルド7aの集合部7bよりも下流側には、上流側から順に、第1および第2触媒装置8a,8bが間隔を存して設けられている。これらの触媒装置8a,8bは、NOx触媒と3元触媒を組み合わせたものであり、このNOx触媒は、イリジウム触媒(イリジウムを担持した炭化ケイ素ウイスカ粉末とシリカの焼成体)をハニカム構造の基材の表面に被覆し、その上にペロブスカイト型複酸化物(LaCoO3 粉末とシリカの焼成体)をさらに被覆したものである。また、第1および第2触媒装置8a,8bは、NOx触媒による酸化還元作用により、リーンバーン運転時の排気ガス中のNOxを浄化するとともに、3元触媒の酸化還元作用により、リーンバーン運転以外の運転時の排気ガス中のCO、HCおよびNOxを浄化する。
さらに、排気管7の第1および第2触媒装置8a,8bの間には、酸素濃度センサ(以下「O2センサ」という)15が取り付けられている。O2センサ15は、ジルコニアおよび白金電極などで構成され、第1触媒装置8aの下流側の排気ガス中の酸素濃度に基づく出力VoutをECU2に送る。O2センサ15の出力Voutは、燃焼した混合気が理論空燃比よりも燃料リッチのときには、ハイレベルの電圧値(例えば0.8V)になり、燃料リーンのときには、ローレベルの電圧値(例えば0.2V)になるとともに、混合気が理論空燃比付近のときには、ハイレベルとローレベルの間の所定の目標値Vop(例えば0.6V)になる。
また、排気管7には、第1触媒装置8aよりも上流側の排気マニホルド7aの集合部7b付近に、LAFセンサ14(空燃比センサ)が取り付けられている。LAFセンサ14は、O2センサ15と同様のセンサとリニアライザなどの検出回路とを組み合わせることによって構成されており、リッチ領域からリーン領域までの広範囲な空燃比の領域において排気ガス中の酸素濃度をリニアに検出し、その酸素濃度に比例する出力KACT(空燃比センサの検出信号)をECU2に送る。この出力KACTは、集合部7b付近の排気ガス中の空燃比を当量比として表す。ECU2は、LAFセンサ14の出力KACTを、CRK信号に同期して読み込むとともに、読み込んだデータをRAM内に記憶する。
ECU2にはそれぞれ、アクセル開度センサ16から、車両のアクセルペダル(図示せず)の踏み込み量(以下「アクセル開度」という)APを表す検出信号が、大気圧センサ17から、大気圧PAを表す検出信号が、吸気温センサ18から、吸気温TAを表す検出信号が、出力される。
ECU2は、I/Oインターフェース、CPU、RAM、ROMおよびEEPROM2a(記憶手段)などからなるマイクロコンピュータで構成されている。前述した各種のセンサ10〜18からの出力はそれぞれ、I/OインターフェースでA/D変換や整形がなされた後、CPUに入力される。
CPUは、これらの入力信号に応じて、エンジン3の運転状態を判別し、判別した運転状態に応じ、ROMに記憶された制御プログラムなどに従って、空燃比制御処理を実行することにより、各気筒に供給される混合気の空燃比を制御するとともに、各気筒のインジェクタ6および吸気弁(図示せず)を含む燃料供給系が正常に動作しているか否かを、後述するように判定する。なお、本実施形態では、ECU2により、バンドパスフィルタ、燃料量決定手段、複数のバンドパスフィルタ、フィルタ選択手段、加重平均値算出手段、総和算出手段、サンプリング手段、むだ時間設定手段、運転状態検出手段、補正用パラメータ算出手段、平均値算出手段、補正係数算出手段、動作特性判定手段、補正係数固定手段、学習補正係数算出手段、および記憶手段が構成されている。
図2に示すように、空燃比制御装置1は、基本燃料噴射量算出部21、STR(Self Tuning Regulator)22、ばらつき補正部23、付着補正部24を備えており、これらはいずれも、ECU2により構成されている。
この空燃比制御装置1では、まず、基本燃料噴射量算出部21により、エンジン回転数NEおよび吸気管内絶対圧PBAに応じ、マップ(図示せず)を検索することによって、基本燃料噴射量TIBSが算出される。次いで、STR22により、フィードバック補正係数KSTRが算出されるとともに、ばらつき補正部23により、ばらつき補正係数KEAFi (補正係数)が気筒ごとに後述するように算出される。
次に、上記の基本燃料噴射量TIBSに、補正目標空燃比KCMDM、総補正係数KTOTAL、フィードバック補正係数KSTRおよびばらつき補正係数KEAFi がそれぞれ乗算されることにより、気筒ごとの要求燃料量TCYLi が算出される。次いで、付着補正部24により、今回の燃焼サイクルでインジェクタ6から噴射される燃料が燃焼室の内壁面に付着する割合などが、エンジン3の運転状態に応じて算出され、この算出された割合に基づいて、気筒ごとの要求燃料量TCYLi が補正されることで、気筒ごとの最終燃料噴射量TOUTi (供給燃料量)が算出される。そして、この算出した最終燃料噴射量TOUTi に基づいた駆動信号で、対応するインジェクタ6を駆動することにより、混合気の空燃比を気筒ごとに制御する。なお、最終燃料噴射量TOUTi などにおける添字「i」は、気筒の番号を表す気筒番号値である(i=1〜4)。
次いで、STR22について説明する。STR22は、LAFセンサ14の出力KACTを目標空燃比KCMDに一致させるために、フィードバック補正係数KSTRを算出するものであり、オンボード同定器22aおよびSTRコントローラ22bにより構成されている。また、STR22では、以下に述べるアルゴリズムにより、オンボード同定器22aでモデルパラメータベクトルθi が同定されるとともに、STRコントローラ22bでフィードバック補正係数KSTRが算出される。
まず、1〜4番気筒#1〜#4を、対応する気筒へのフィードバック補正係数KSTRiを入力とし、LAFセンサ14の出力KACTを出力とする制御対象として見なすとともに、これらの制御対象を離散時間系モデルとしてモデリングすると、図3に示す式(1)のようになる。同式(1)において、記号kは離散化した時間を表しており、記号(k)付きの各離散データは、1燃焼サイクルごとに、すなわちTDC信号が連続して4回発生するごとにサンプリングされたデータであることを示している。この点は、以下の離散データ(時系列データ)においても同様である。
ここで、目標空燃比KCMDに対するLAFセンサ14の出力KACTのむだ時間は、燃焼サイクル3回分程度と推定されるので、KCMD(k)=KACT(k+3)の関係が成立し、これを式(1)に適用すると、図3の式(2)が導出される。
また、式(1)のモデルパラメータb0i (k),r1i (k),r2i (k),r3i (k),s0i (k)のベクトルθi (k)は、図3の式(3)〜(9)の同定アルゴリズムにより同定される。同式(3)におけるKPi (k)はゲイン係数のベクトルを、idei (k)は同定誤差を、それぞれ表している。また、式(4)におけるθi (k)T は、θi (k)の転置行列を表している。なお、以下の説明では、「ベクトル」という表記を適宜、省略する。
上記式(3)の同定誤差idei (k)は、図3の式(5)〜(7)により算出され、式(6)のKACT_HATi (k)は、LAFセンサ14の出力KACTの同定値を表している。さらに、上記ゲイン係数のベクトルKPi (k)は、図3の式(8)により算出され、この式(8)のPi (k)は、図3の式(9)で定義される5次の正方行列である。
次いで、LAFセンサ14の出力KACTが目標空燃比KCMDに一致するようにフィードバック補正係数KSTRを算出するために、オンボード同定器22aにより同定された1番気筒#1のモデルパラメータベクトルθ1 を、TDC信号の発生タイミングに同期してオーバーサンプリングするとともに、その移動平均値θ_aveを算出する。
具体的には、モデルパラメータベクトルθ1 の移動平均値θ_ave(n)を、図4の式(10)により算出するとともに、これを用いて、図4の式(12)により、フィードバック補正係数KSTR(n)を算出する。なお、式(10)におけるθbufは、1番気筒#1のモデルパラメータベクトルθ1 のオーバーサンプリング値を示しており、移動平均値θ_ave(n)の転置行列は、図4の式(11)のように規定される。これらの式(10)〜(12)において、記号nは、離散化した時間を表しており、記号(n)付きの各離散データは、TDC信号が1回発生するごとに、これに同期してサンプリングされたデータであることを示している。この点は、以下の離散データにおいても同様である。したがって、k−f=n−4・f(f:整数)の関係が成立するので、これを図3の式(2)に適用すると、上記式(12)が導出される。
また、式(10)のαは、所定の整数であり、本実施形態では、α=11に設定される。これは、以下の理由による。すなわち、前述したように、目標空燃比KCMDに対するLAFセンサ14の出力KACTのむだ時間は、燃焼サイクル3回分であるため、モデルパラメータベクトルθの更新によって起こる制御系の共振周期も、3サイクルとなる。したがって、このような制御系の共振を抑制するフィルタとしては、くし型の阻止帯域を3サイクル周期で備える12タップの移動平均値フィルタが最適であるので、上記のようにα=11と設定される。さらに、モデルパラメータベクトルθi (k)を同定する同定アルゴリズムは、図4の式(13)〜(19)のようになる。
以上のように、STR22のオンボード同定器22aでは、図4の式(13)〜(19)に示す同定アルゴリズムによって、モデルパラメータベクトルθi (k)が同定され、STRコントローラ22bでは、図4の式(10)〜(12)により、フィードバック補正係数KSTR(n)が算出される。
次に、ばらつき補正部23について説明する。ばらつき補正部23は、4つの気筒#1〜#4に供給される混合気の空燃比の気筒間でのばらつきを解消するために、ばらつき補正係数KEAFi を気筒ごとに算出するものである。まず、その概念について説明する。
図5は、LAFセンサ14の出力KACTを周波数解析することによって得られたパワースペクトルを示している。具体的には、4つの気筒間で空燃比が、(a)互いに等しい場合、(b)2気筒ずれパターン以外のばらつきパターン(以下「非2気筒ずれパターン」という)でばらつている場合、(c)2気筒ずれパターンでばらついている場合を示している。ここで、2気筒ずれパターンとは、前述したように燃料噴射が#1→#3→#4→#2の順で行われる場合において、1番および4番気筒#1,#4に供給される混合気の空燃比が互いに等しいとともに、3番および2番気筒#3,#2の空燃比が互いに等しく、かつ1番および4番気筒#1,#4と異なるばらつきパターンをいう。例えば、1番および4番気筒#1,#4の空燃比が互いに等しくリッチ、2番および3番気筒#2,#3の空燃比が互いに等しくリーンな場合である。また、非2気筒ずれパターンとは、2気筒ずれパターン以外のばらつきパターンを示し、例えば、1番および3番気筒#1,#3の空燃比がリッチ、2番および4番気筒#2,#4の空燃比がリーンの場合である。同図(b)、(c)に示すように、気筒#1〜#4間で空燃比が非2気筒ずれパターンおよび2気筒ずれパターンでばらついている場合には、特定の第1および第2周波数fr1,fr2(所定周波数)域においてそれぞれ、非常に大きなパワースペクトル密度(以下「PSD」という)が得られるのに対し、ばらつきがない場合(a)には、そのような事象が生じないことが確認された。第1周波数fr1は、1燃焼サイクル、すなわち4回分のTDC信号の出力に同期した脈動周波数であり、第2周波数fr2は、エンジン3のクランクシャフトの1回転、すなわち2回分のTDC信号の出力に同期した脈動周波数である。
また、以上の点に着目し、気筒間の空燃比のばらつきをシミュレーションし、次のような実験を行った。エンジン3のような4サイクル直列4気筒タイプのエンジンの場合、図6に示すように、気筒#1→#3→#4→#2の順でTDC信号(記号nで図示)の出力ごとに各気筒から排出された排気ガスが、排気管7の集合部7bで合流し、この集合部7bの排気ガス中の空燃比が、LAFセンサ14の出力KACTとして出力されるとみなせる。このため、図7に示すように、4つの気筒#1〜#4の排気ガス中の空燃比KACT1 〜KACT4 を、各燃焼サイクルごとに出力される三角波形の第1〜第4模擬出力KACTMI1 〜KACTMI4 としてそれぞれ模擬的に生成し、これらの総和をLAFセンサ14の模擬出力KACTMIとした。そして、この模擬出力KACTMIを、上述した第1および第2周波数fr1,fr2域の成分をそれぞれ通過させるようにフィルタリングする第1および第2バンドパスフィルタに入力した。なお、同図の縦軸は当量比を示している。
その結果、図8に示すように、第1〜第4模擬出力KACTMI1 〜KACTMI4 が互いに等しい場合、すなわち、気筒間の空燃比のばらつきがないときには、第1および第2バンドパスフィルタの出力である第1および第2フィルタリング値FIL1,FIL2は、いずれも0を示した。
また、図9に示すように、第1および第4模擬出力KACTMI1 ,KACTMI4 が、第2および第3模擬出力KACTMI2 ,KACTMI3 よりも大きい2気筒ずれパターンの場合には、第2フィルタリング値FIL2として、クランクシャフトの1回転と等しい周期で、値0を中心に正負両側に比較的大きな振幅で変化する正弦波状の波形が得られた。さらに、第1フィルタリング値FIL1として、1燃焼サイクルと等しい周期で、値0を中心に正負両側に比較的小さな振幅で変化する正弦波状の波形が得られた。また、第2フィルタリング値FIL2は、第1および第4模擬出力KACTMI1 ,KACTMI4 が入力されるタイミングでは、正値になるとともに、第2および第3模擬出力KACTMI2 ,KACTMI3 が入力されるタイミングでは、負値になり、また、第1模擬出力KACTMI1 と第3模擬出力KACTMI3 との差が大きいほど、前者のタイミングでは、より大きな正値になり、後者のタイミングでは、絶対値がより大きな負値になった。
さらに、図10に示すように、非2気筒ずれパターンの場合、例えば、第3模擬出力KACTMI3 のみが他の模擬出力よりも小さいときには、2気筒ずれパターンのときと異なり、第1フィルタリング値FIL1として、比較的大きな振幅の正弦波状の波形が得られるとともに、第2フィルタリング値FIL2として、比較的小さな振幅の正弦波状の波形が得られた。また、第1フィルタリング値FIL1は、第1および第4模擬出力KACTMI1 ,KACTMI4 が入力されるタイミングでは、0になるとともに、第2模擬出力KACTMI2 が入力されるタイミングでは、正値になり、第3模擬出力KACTMI3 が入力されるタイミングでは、負値になった。さらに、第3模擬出力KACTMI3 と他の模擬出力との差が大きいほど、第1フィルタリング値FIL1は、第2模擬出力KACTMI2 が入力されるタイミングでは、より大きな正値になるとともに、第3模擬出力KACTMI3 が入力されるタイミングでは、絶対値がより大きな負値になった。
以上の実験結果から明らかなように、第1および第2周波数FIL1,FIL2域の成分をそれぞれ通過させる第1および第2バンドパスフィルタによって、LAFセンサ14の出力KACTをフィルタリングすると、各フィルタの出力の振幅の有無は、気筒間の空燃比のばらつきの有無を表す。また、2気筒ずれパターンの場合、第2バンドパスフィルタの出力の振幅がより大きくなり、その正負によって、気筒間の空燃比の大小関係が特定される。さらに、非2気筒ずれパターンの場合、第1バンドパスフィルタの出力の振幅がより大きくなる。以上のようなフィルタの出力特性に基づき、ばらつき補正部23は、気筒間で空燃比がばらついている場合に、振幅がより大きなフィルタの出力に基づいて、このばらつきを解消するように、すなわち、このフィルタの出力の振幅が値0になるように、各気筒のばらつき補正係数KEAFi を算出する。
具体的には、図11に示すように、ばらつき補正部23は、サイクルフィルタ23a(バンドパスフィルタ)、回転フィルタ23b(バンドパスフィルタ)、第1および第2遅延要素23c,23d(むだ時間設定手段)、第1および第2加重平均値算出部23e,23f(加重平均値算出手段)、コントロールスイッチ23g(フィルタ選択手段)、算出用フィルタリング値決定部23h(補正係数固定手段)、ならびにばらつき補正係数算出部23i(補正用パラメータ算出手段、平均値算出手段、補正係数算出手段)によって構成されている。
このばらつき補正部23では、サイクルフィルタ23aおよび回転フィルタ23bにおいて、第1および第2フィルタリング値KACT_Fc(m),KACT_Fr(m)(バンドパスフィルタの出力)がそれぞれ生成(算出)され、第1および第2遅延要素23c,23dにおいて、第1および第2フィルタリング値KACT_Fc(m),KACT_Fr(m)の出力が、所定のむだ時間に相当する時間、それぞれ遅延される。また、第1および第2加重平均値算出部23e,23fにおいて、第1および第2加重平均値KACT_Fcd(m),KACT_Frd(m)(複数のバンドパスフィルタの出力の加重平均値)がそれぞれ算出され、コントロールスイッチ23gにおいて、ばらつき補正係数KEAFi を算出するための算出用フィルタリング値KACT_Fi (n)が選択される。さらに、算出用フィルタリング値決定部23hにおいて、算出用フィルタリング値KACT_Fi (n)が最終的に決定され、ばらつき補正係数算出部23iにおいて、決定された算出用フィルタリング値KACT_Fi (n)に基づいて、ばらつき補正係数KEAFi が気筒ごとに算出される。
次に、サイクルフィルタ23aおよび回転フィルタ23bについて説明する。これらのフィルタ23a,23bは、バンドパスフィルタであり、互いに並列に設けられている。また、サイクルフィルタ23aおよび回転フィルタ23bは、図12に示すようなゲイン特性を有しており、前者のゲインは、入力信号の周波数が前述した第1周波数fr1のときに、後者のゲインは、入力信号の周波数が前述した第2周波数fr2のときに、0dBの値になるようにそれぞれ設定されている。また、サイクルフィルタ23aは、前述したようにCRK信号の入力に同期してサンプリングされた最新のLAFセンサ14の出力KACTを、CRK信号の入力に同期して、そのうちの第1周波数fr1域の成分を通過させるようにフィルタリングし、それにより、第1フィルタリング値KACT_Fc(m)を生成する。回転フィルタ23bは、サイクルフィルタ23aと同様、CRK信号の入力に同期して、サンプリングされたLAFセンサ14の出力KACTのうちの第2周波数fr2域の成分を通過させるようにフィルタリングし、それにより、第2フィルタリング値KACT_Fr(m)を生成する。
具体的には、サイクルフィルタ23aおよび回転フィルタ23bは、図13の式(20)および(21)でそれぞれ示されるIIR型のフィルタであり、第1および第2フィルタリング値KACT_Fc(m),KACT_Fr(m)は、これらの式(20)および(21)により、それぞれ算出(生成)される。算出された第1および第2のフィルタリング値KACT_Fc(m),KACT_Fr(m)はそれぞれ、第1および第2フィルタリング値KACT_Fc(m),KACT_Fr(m)用の複数のバッファに、CRK信号の入力に同期して順次、記憶される。なお、第1および第2フィルタリング値KACT_Fc(m),KACT_Fr(m)の初期値はそれぞれ、KACT(m−1)〜(m−p)を値1に、KACT_Fc(m−1)〜(m−q)およびKACT_Fr(m−1)〜(m−q)を値0に設定して、算出される。また、上記の記号mは離散化した時間を表しており、記号(m)付の各離散データは、CRK信号が1回発生するごとに、これに同期してサンプリングされたデータであることを示している。この点は、以下の離散データにおいても同様である。
前述した実験結果から明らかなように、以上のように算出された第1および第2フィルタリング値KACT_Fc(m),KACT_Fr(m)は、その振幅の有無によって、気筒間の空燃比のばらつきの有無を表す。また、2気筒ずれパターンの場合には、第2フィルタリング値KACT_Fr(m)がより大きな振幅で変化し、その正負によって気筒間の空燃比の大小関係を表し、非2気筒ずれパターンの場合には、第1フィルタリング値KACT_Fc(m)がより大きな振幅で変化する。
第1および第2遅延要素23c,23dはそれぞれ、各気筒から排出された排気ガスがLAFセンサ14に到達するまでのむだ時間に相当する時間、第1および第2フィルタリング値KACT_Fc(m),KACT_Fr(m)の出力を遅延する。なお、その詳細については後述する。
次に、第1加重平均値算出部23eにおいて、第1加重平均値KACT_Fcd(m)が、第1遅延要素23cから出力された第1フィルタリング値の今回値の絶対値|KACT_Fc(m)|などを用いて、図13の式(22)により算出される。なお、なまし係数Acは、例えば0.5である。この算出方法から明らかなように、第1加重平均値KACT_Fcd(m)は、その前回値の絶対値|KACT_Fcd(m−1)|および第1フィルタリング値の今回値の絶対値|KACT_Fc(m)|を加重平均することによって算出される。
次いで、第2加重平均値算出部23fにおいて、第2加重平均値KACT_Frd(m)が、第2遅延要素23dから出力された第2フィルタリング値の今回値の絶対値|KACT_Fr(m)|などを用いて、図13の式(23)により算出される。なお、なまし係数Arは、例えば0.5である。この算出方法から明らかなように、第2加重平均値KACT_Frd(m)は、その前回値の絶対値|KACT_Frd(m−1)|および第2フィルタリング値の今回値の絶対値|KACT_Fr(m)|を加重平均することによって算出される。
次に、コントロールスイッチ23gについて説明すると、コントロールスイッチ23gは、第1加重平均値KACT_Fcd(m)に基づいて、第1および第2フィルタリング値KACT_Fc(m),KACT_Fr(m)から、ばらつき補正係数KEAFi を算出するための算出用フィルタリング値KACT_Fi (n)を選択し、算出用フィルタリング値決定部23hに出力する。これにより、より大きな振幅のフィルタリング値が、算出用フィルタリング値KACT_Fi (n)として出力される。その詳細については後述する。
次いで、算出用フィルタリング値決定部23hにおいて、算出用フィルタリング値KACT_Fi (n)を決定するとともに、ばらつき補正係数算出部23iに出力する。具体的には、入力された算出用フィルタリング値の絶対値|KACT_Fi (n)|が、所定のしきい値KACT_THRESH(例えば0.001)よりも小さいときには、算出用フィルタリング値KACT_Fi (n)を0に設定する。一方、|KACT_Fi (n)|≧KACT_THRESHのときには、コントロールスイッチ23gから入力された算出用フィルタリング値KACT_Fi (n)を、ばらつき補正係数算出部23iに出力する。
次に、ばらつき補正係数算出部23iにおいて、ばらつき補正係数KEAFi が算出される。具体的には、まず、入力された算出用フィルタリング値KACT_Fi (n)を用いて、PID制御アルゴリズムにより、ばらつき補正係数暫定値keafi (補正用パラメータ)を算出する。このPID制御アルゴリズムは、図13の式(24)で示される。この式(24)中のFI、GIおよびHIは、それぞれ所定のフィードバック用のP項ゲイン、I項ゲインおよびD項ゲインである。なお、ばらつき補正係数暫定値keafi の初期値は、KACT_Fi (n−4)〜(n−4m)を値0に設定して、算出される。
次に、このばらつき補正係数暫定値keafi の移動平均値KEAFave(複数の補正用パラメータの平均値)を、同図の式(25)により算出する。なお、この式(25)において、本実施形態では、気筒数mc=4であり、移動平均値KEAFaveの初期値は、keaf2 〜keaf4 を値1に設定して算出される。この移動平均値KEAFaveは、式(25)から明らかなように、1番〜4番気筒#1〜#4のばらつき補正係数暫定値keaf1〜4 の平均値である。
次いで、同図の式(26)により、ばらつき補正係数暫定値keafi を移動平均値KEAFaveで除算することで、ばらつき補正係数KEAFi が算出される。このように、ばらつき補正係数KEAFi を、ばらつき補正係数暫定値keafi を移動平均値KEAFaveで除算することによって算出するのは、第1および第2フィルタリング値KACT_Fc(m),KACT_Fr(m)にノイズが含まれる場合に、各気筒のばらつき補正係数KEAFi へのこのノイズの影響を平準化することにより、ばらつき補正係数KEAFi を適切に算出するためである。
また、算出用フィルタリング値の絶対値|KACT_Fi (n)|が、しきい値KACT_THRESHよりも小さいときには、0に設定された算出用フィルタリング値KACT_Fi (n)を用いて、ばらつき補正係数KEAFi を算出する。これにより、前記式(24)中のKACT_Fi (n)とP項ゲインFIとの積(以下「P項」という)が、値0に保持されるとともに、KACT_Fi (n)の積算値とI項ゲインGIとの積(以下「I項」という)が、上記の条件(|KACT_Fi (n)|<KACT_THRESH)が成立する直前に設定されたI項の値に保持される。また、上記のようなばらつき補正係数KEAFi の算出を継続すると、式(24)中のKACT_Fi (n)の今回値と前回値との偏差とD項ゲインHIとの積(以下「D項」という)も、値0に保持される。
以上のように、|KACT_Fi (n)|<KACT_THRESHのときには、I項がこの条件が成立する直前の値に保持されるとともに、P項およびD項が値0に保持される。また、この条件が成立する直前では、算出用フィルタリング値KACT_Fi (n)はほぼ0であるため、P項およびD項はほぼ値0に設定されている。したがって、ばらつき補正係数暫定値keafi は、この条件の成立直前に算出された値とほぼ等しい値に算出され、固定される。その結果、ばらつき補正係数暫定値keafi に基づいて前述したように算出されるばらつき補正係数KEAFi は、算出用フィルタリング値の絶対値|KACT_Fi (n)|がしきい値KACT_THRESHよりも小さくなったときには、この条件の成立直前に算出された値とほぼ等しい値に固定される。これにより、第1および第2フィルタリング値KACT_Fc(m),KACT_Fr(m)に含まれるノイズに起因するばらつき補正係数KEAFi の変動を防止でき、したがって、前述したハンチング現象を回避することができる。
以下、ECU2により実行される空燃比制御を含む燃料噴射制御処理について、図14〜18を参照しながら説明する。なお、以下の説明では、今回値であることを示す記号(k),(n)および(m)を適宜、省略する。図14は、この制御処理のメインルーチンを示しており、本処理は、TDC信号の入力に同期して割り込み実行される。この処理では、以下に述べるように、最終燃料噴射量TOUTi が気筒ごとに算出される。
まず、ステップ1(「S1」と図示。以下同じ)において、前述した各種のセンサ10〜18の出力を読み込むとともに、読み込んだデータをRAM内に記憶する。
次に、ステップ2に進み、基本燃料噴射量TIBSを算出する。この処理では、エンジン回転数NEおよび吸気管内絶対圧PBAに応じて、図示しないマップを検索することにより、基本燃料噴射量TIBSを算出する。
次いで、ステップ3に進み、総補正係数KTOTALを算出する。この総補正係数KTOTALは、各種の運転パラメータ(例えば吸気温TAや、大気圧PA、エンジン水温TW、アクセル開度AP、スロットル弁開度THなど)に応じて、各種のテーブルやマップを検索することで各種の補正係数を算出するとともに、これらの各種の補正係数を互いに乗算することにより、算出される。
次に、ステップ4に進み、目標空燃比KCMDを算出する。この目標空燃比KCMDの算出処理の内容は、ここでは図示しないが、特開2000−179385号公報に記載の制御手法と同様に実行される。すなわち、目標空燃比KCMDは、エンジン3の運転状態に応じて、スライディングモード制御処理またはマップ検索処理により、O2センサ15の出力Voutが前記所定の目標値Vopに収束するように算出される。
次いで、ステップ5に進み、補正目標空燃比KCMDMを算出する。この補正目標空燃比KCMDMは、空燃比A/Fの変化による充填効率の変化を補償するためのものであり、上記ステップ4で算出された目標空燃比KCMDに応じて、図示しないテーブルを検索することにより算出される。
次に、ステップ6および7において、気筒ごとのモデルパラメータベクトルθi およびフィードバック補正係数KSTRをそれぞれ算出する。これらの算出処理については、後述する。
次いで、ステップ8において、後述するフィルタリング値算出処理により算出された第1および第2フィルタリング値KACT_Fc(m),KACT_Fr(m)などを読み込むとともに、読み込んだデータをRAM内に記憶する。次に、ステップ9において、気筒ごとのばらつき補正係数KEAFi を算出する。この算出処理については、後述する。
次いで、ステップ10に進み、以上のように算出した基本燃料噴射量TIBS、総補正係数KTOTAL、補正目標空燃比KCMDM、フィードバック補正係数KSTR、ばらつき補正係数KEAFi を用い、下式(27)により、気筒ごとの要求燃料噴射量TCYLi を算出する。
TCYLi=TIBS・KTOTAL・KCMDM・KSTR・KEAFi …… (27)
次に、ステップ11に進み、気筒ごとの要求燃料噴射量TCYLi を付着補正することにより、気筒ごとの最終燃料噴射量TOUTi を算出する。この気筒ごとの最終燃料噴射量TOUTi は、具体的には、今回の燃焼サイクルでインジェクタ6から噴射される燃料が燃焼室の内壁面に付着する割合などを、エンジン3の運転状態に応じて算出し、そのように算出した割合に基づいて、気筒ごとの要求燃料噴射量TCYLi を補正することにより、算出される。
次いで、ステップ12に進み、以上のように算出した気筒ごとの最終燃料噴射量TOUTi に基づく駆動信号を、対応する気筒のインジェクタ6に出力した後、本処理を終了する。
次に、図15を参照しながら、前記ステップ6の気筒ごとのモデルパラメータベクトルθi の算出処理について説明する。この処理では、まず、ステップ20において、各パラメータの添字「i」に相当する気筒番号値iの設定処理を実行する。
この処理では、図示しないが、気筒番号値iが、RAMに記憶されている、前回のループで設定された気筒番号値iの前回値PRViに基づいて、以下のように設定される。具体的には、PRVi=1のときにはi=3に、PRVi=2のときにはi=1に、PRVi=3のときにはi=4に、PRVi=4のときにはi=2に、それぞれ設定される。すなわち、気筒番号値iは、「1→3→4→2→1→3→4→2→1……」の順に、繰り返し設定される。なお、気筒番号値iの初期値は、前述した気筒判別信号に基づいて設定される。
次いで、ステップ21に進み、前述した図4の式(17)により、KSTRおよびKACTのベクトルζi を算出した後、ステップ22で、前述した図4の式(16)により、KACTの同定値KACT_HATi を算出する。
次に、ステップ23に進み、前述した図4の式(15)により、同定誤差idei を算出した後、ステップ24で、前述した図4の式(18)により、ゲイン係数のベクトルKPi を算出する。次いで、ステップ25に進み、前述した図4の式(13)により、モデルパラメータベクトルθi を算出する。
次に、ステップ26に進み、RAMに記憶されている、前回以前の所定個数(本実施形態では12個)のLAFセンサ14の出力KACTの値を更新する。具体的には、RAM内のKACTの各々の値を、燃料噴射制御における1制御サイクル分、古い値としてセットする(例えば、今回値KACT(n)を前回値KACT(n−1)として、前回値KACT(n−1)を前々回値KACT(n−2)としてそれぞれセットする)。
次いで、ステップ27に進み、RAMに記憶されている、所定個数(本実施形態では12個)の1番気筒#1のモデルパラメータベクトルθ1 のオーバーサンプリング値θbufを更新する。具体的には、上記ステップ26と同様に、RAM内のθbufの各々の値を、1制御サイクル分、古い値としてセットする(例えば、今回値θbuf(n)を前回値θbuf(n−1)として、前回値θbuf(n−1)を前々回値θbuf(n−2)としてそれぞれセットする)。この後、本処理を終了する。
次に、図16を参照しながら、前記ステップ7のフィードバック補正係数KSTRの算出処理について説明する。この処理では、まず、ステップ40において、前述した図4の式(10)により、移動平均値θ_aveを、上記ステップ27で更新されたオーバーサンプリング値θbufに基づいて算出する。
次いで、ステップ41で、前述した図4の式(12)により、上記ステップ40で算出した移動平均値θ_aveに基づき、フィードバック補正係数KSTRを算出する。なお、算出されたフィードバック補正係数KSTRは、KSTRリミット処理(図示せず)において、上限値KSTRH(例えば1.7)および下限値KSTRL(例えば0.3)と比較され、上限値KSTRHよりも大きいときには、この上限値KSTRHに設定され、下限値KSTRLよりも小さいときには、この下限値KSTRLに設定される。
次に、ステップ42に進み、RAMに記憶されている、前回以前の所定個数(本実施形態では12個)のフィードバック補正係数KSTRの値を更新する。具体的には、RAM内のKSTRの各々の値を、1制御サイクル分、古い値としてセットする(例えば、今回値KSTR(n)を前回値KSTR(n−1)として、前回値KSTR(n−1)を前々回値KSTR(n−2)としてそれぞれセットする)。この後、本処理を終了する。
次いで、図17を参照しながら、図14の前記ステップ8において読み込まれる第1フィルタリング値KACT_Fc(m)などを算出するフィルタリング値算出処理について説明する。本処理は、CRK信号の入力に同期して割り込み実行される。まず、ステップ50では、LAFセンサ14の出力KACTを読み込むとともに、RAM内に記憶する。次いで、ステップ51において、前述した図13の式(20)により、第1フィルタリング値KACT_Fc(m)を算出するとともに、算出した第1フィルタリング値KACT_Fc(m)を、第1フィルタリング値KACT_Fc(m)用の複数のバッファに順次、記憶する。次に、ステップ52において、前述した式(21)により、第2フィルタリング値KACT_Fr(m)を算出するとともに、算出した第2フィルタリング値KACT_Fr(m)を、第2フィルタリング値KACT_Fr(m)用の複数のバッファに順次、記憶する。
続くステップ53および54の処理は、前述した第1遅延要素23cによる第1フィルタリング値KACT_Fc(m)の出力をむだ時間に相当する時間、遅延させる処理に相当している。このステップ53では、吸気管内絶対圧PBAおよびエンジン回転数NEに応じて、マップ(図示せず)を検索することによって、上記の第1フィルタリング値KACT_Fc(m)用の複数のバッファのバッファナンバーを求める。次いで、求めたバッファナンバーのバッファに記憶されている第1フィルタリング値KACT_Fcを、ばらつき補正係数KEAFi を算出するための第1フィルタリング値KACT_Fc(m)として読み出す(ステップ54)。
上記のマップでは、吸気管内絶対圧PBAが高いほど、およびエンジン回転数NEが低いほど、ばらつき補正係数KEAFi を算出するための第1フィルタリング値KACT_Fc(m)として、より早いタイミングで算出したものが選択されるように、バッファナンバーが設定されている。これは次の理由による。すなわち、吸気管内絶対圧PBAが高いほど、すなわちエンジン3の負荷が大きいほど、排気ガスの流速がより高く、それに伴い、各気筒から排出された排気ガスがLAFセンサ14に到達するまでのむだ時間がより短くなるためである。また、エンジン回転数NEが低いほど、LAFセンサ14の出力KACTを読み込むCRK信号の周期がより長くなるので、排気ガスの流速を一定とすれば、排気ガスがLAFセンサ14に到達するまでに発生するCRK信号の発生回数は少なくなるためであり、CRK信号を基準とする相対的なむだ時間が短くなるためである。
次のステップ55および56の処理は、前述した第2遅延要素23dによる第2フィルタリング値KACT_Fr(m)の出力をむだ時間に相当する時間、遅延させる処理に相当している。このステップ55では、前記ステップ53と同様、吸気管内絶対圧PBAおよびエンジン回転数NEに応じて、マップ(図示せず)を検索することによって、第2フィルタリング値KACT_Fr(m)用の複数のバッファのバッファナンバーを求める。次いで、求めたバッファナンバーのバッファに記憶されている第2フィルタリング値KACT_Frを、ばらつき補正係数KEAFi を算出するための第2フィルタリング値KACT_Fr(m)として読み出す(ステップ56)。なお、このマップの特性は、上述した第1フィルタリング値KACT_Fc(m)用のバッファのバッファナンバーを検索するためのマップと同様であるので、その説明については省略する。
次に、前記ステップ53および54により選択された第1フィルタリング値KACT_Fc(m)を用いて、前述した式(22)により、第1加重平均値KACT_Fcd(m)を算出する(ステップ57)。次いで、前記ステップ55および56により選択された第2フィルタリング値KACT_Fr(m)を用いて、前述した式(23)により、第2加重平均値KACT_Frd(m)を算出し(ステップ58)、本処理を終了する。以上のように選択された第1および第2フィルタリング値KACT_Fc(m),KACT_Fr(m)、ならびに第1および第2加重平均値KACT_Fcd(m),KACT_Frd(m)が、図14の前記ステップ8において読み込まれ、RAM内に記憶される。
以上のように、CRK信号に同期して、LAFセンサ14の出力KACTがサンプリングされ、それに基づいて、第1および第2フィルタリング値KACT_Fc,KACT_Frが算出されるとともに、複数のバッファに順次、記憶される(ステップ50〜52)。そして、吸気管内絶対圧PBAおよびエンジン回転数NEに応じて、各気筒の排気ガスがLAFセンサ14に到達するまでのむだ時間に対応するバッファナンバーが、マップから選択される(ステップ53,55)。次いで、この選択されたバッファナンバーのバッファに記憶された第1および第2フィルタリング値KACT_Fc,KACT_Frがそれぞれ、ばらつき補正係数KEAFi を算出するための第1および第2フィルタリング値KACT_Fc(m),KACT_Fr(m)として読み出される(ステップ54,56)。したがって、各気筒の排気ガスの排出タイミングに相当する各気筒のTDC信号の出力後、選択されたバッファナンバーに対応するむだ時間が経過したタイミングで検出されたLAFセンサ14の出力KACTに基づく第1および第2フィルタリング値KACT_Fc,KACT_Frが、選択される。それにより、ばらつき補正係数KEAFi を算出するための第1および第2フィルタリング値KACT_Fc(m),KACT_Fr(m)を、むだ時間を補償しながら、適切に選択することができる。
次に、図18を参照しながら、図14の前記ステップ9のばらつき補正係数KEAFi を算出する処理について説明する。まず、ステップ60では、前記ステップ8で読み込んだ第1加重平均値KACT_Fcdが、所定のしきい値KACT_REFよりも大きいか否かを判別する。第1加重平均値KACT_Fcdは、前述した図9および図10から明らかなように、2気筒ずれパターンのときには、非常に小さく、非2気筒ずれパターンのときには、非常に大きくなるという特性を有する。したがって、ステップ60の答がYESのときには、非2気筒ずれパターンであるとして、第1フィルタリング値KACT_Fcを、算出用フィルタリング値KACT_Fi (n)として設定する(ステップ61)。一方、ステップ60の答がNOで、KACT_Fcd≦KACT_REFのときには、2気筒ずれパターンであるとして、第2フィルタリング値KACT_Frを、算出用フィルタリング値KACT_Fi (n)として設定する(ステップ62)。
以上により、非2気筒ずれパターンの場合には、算出用フィルタリング値KACT_Fi (n)として、より大きな振幅の第1フィルタリング値KACT_Fcが選択される。また、2気筒ずれパターンの場合には、算出用フィルタリング値KACT_Fi (n)として、より大きな振幅を有し、気筒間の空燃比の大小関係を正負によって表す第2フィルタリング値KACT_Frが、選択される。以上のステップ60〜62の処理が、前述したコントロールスイッチ23gによるフィルタリング値の選択に相当する。
前記ステップ61または62に続くステップ63では、設定した算出用フィルタリング値の絶対値|KACT_Fi (n)|が、算出用フィルタリング値決定部23hで用いた前記しきい値KACT_THRESHよりも小さいか否かを判別する。このステップ63の答がYESのときには、より大きな振幅のフィルタリング値がほぼ0であるため、気筒間の空燃比のばらつきが解消しているとして、算出用フィルタリング値KACT_Fi (n)を0に設定し(ステップ64)、ステップ65に進む。
一方、上記ステップ63の答がNOで、|KACT_Fi (n)|≧KACT_THRESHのときには、気筒間で空燃比がばらついているとして、上記ステップ64をスキップし、ステップ65に進む。
このステップ65では、前記ステップ61、62または64で設定された算出用フィルタリング値KACT_Fi (n)を用いて、前記式(24)により、ばらつき補正係数暫定値keafi を算出する。次いで、算出したばらつき補正係数暫定値keafi を用いて、前記式(25)により、移動平均値KEAFaveを算出する(ステップ66)。
次に、上記ステップ65および66においてそれぞれ算出したばらつき補正係数暫定値keafi および移動平均値KEAFaveを用いて、前記式(26)により、ばらつき補正係数KEAFi を算出し(ステップ67)、本処理を終了する。
次に、以上のように算出されたばらつき補正係数KEAFi による気筒間の空燃比のばらつきの補正について説明する。前述したように、第1および第2フィルタリング値KACT_Fc,KACT_Frが、TDC信号の出力ごとに読み込まれる(図14のステップ8)とともに、これらの読み込まれたフィルタリング値のうち、より大きな振幅のものが、気筒ごとの算出用フィルタリング値KACT_Fi (n)として選択される(図18のステップ60〜62)。そして、選択された算出用フィルタリング値KACT_Fi (n)に基づいて、式(24)〜(26)によってばらつき補正係数KEAFi が算出される(ステップ65〜67)。
このように、第1および第2フィルタリング値KACT_Fc,KACT_Frのうち、振幅のより大きなものが、各気筒ごとの算出用フィルタリング値KACT_Fi (n)として設定される。このため、図9に示すような2気筒ずれパターン(#1番,#4番気筒の当量比>#2番,#3番気筒の当量比)の場合、算出用フィルタリング値KACT_Fi (n)として、第2フィルタリング値KACT_FrがTDC信号の出力ごとに設定される。また、前述したように第2フィルタリング値KACT_Frは、むだ時間が補償されていることにより各気筒の空燃比を良好に反映するので、その正負によって気筒間の空燃比の大小関係を良好に表す。したがって、この2気筒ずれパターンにおける算出用フィルタリング値KACT_Fi (n)は、図9および前述した実験結果から明らかなように、#1番および#4番気筒の算出用フィルタリング値KACT_F1 (n),KACT_F4 (n)が正値に、#2番および#3番気筒の算出用フィルタリング値KACT_F2 (n),KACT_F3 (n)が負値に設定される。
これにより、前述した式(24)〜(26)から明らかなように、ばらつき補正係数KEAFi のうち、#1番および#4番気筒のばらつき補正係数KEAF1 ,KEAF4 が値1よりも小さな正値に、#2番および#3番気筒のばらつき補正係数KEAF2 ,KEAF3 が値1よりも大きな値に、それぞれ算出される。それにより、より大きな当量比の#1番および#4番気筒の最終燃料噴射量TOUT1 ,TOUT4 を減少させるとともに、より小さな当量比の#2番および#3番気筒の最終燃料噴射量TOUT2 ,TOUT3 を増加させるように、すなわち、4つの気筒#1〜#4の空燃比が平均化するように制御される。このように、気筒間の空燃比のばらつきを解消するように、すなわち、第1および第2フィルタリング値KACT_Fc,KACT_Frの振幅が値0になるように、各気筒の最終燃料噴射量TOUTi が算出される。
一方、非2気筒ずれパターンの場合、例えば、図10に示すようなばらつきパターン(#3番気筒の当量比<#1番,#2番,#4番気筒の当量比)の場合、算出用フィルタリング値KACT_Fi (n)として、第1フィルタリング値KACT_Fcが設定される。第1フィルタリング値KACT_Fcは、第2フィルタリング値KACT_Frと同様、むだ時間が補償されていることにより各気筒の空燃比を良好に反映する。このため、この非2気筒ずれパターンにおける算出用フィルタリング値KACT_Fi (n)は、図10および前述した実験結果から明らかなように、#1番および#4番気筒の算出用フィルタリング値KACT_F1 (n),KACT_F4 (n)が0に、#3番気筒の算出用フィルタリング値KACT_F3 (n)が負値に、#2番気筒の算出用フィルタリング値KACT_F2 (n)が正値に設定される。
これにより、ばらつき補正係数KEAFi のうち、#1番および#4番気筒のばらつき補正係数KEAF1 ,KEAF4 が値1に、#3番気筒のばらつき補正係数KEAF3 が値1よりも大きな値に、#2番気筒のばらつき補正係数KEAF2 が値1よりも小さな正値に、それぞれ算出される。それにより、より小さな当量比の#3番気筒の最終燃料噴射量TOUT3 を増加させるとともに、#2番気筒の最終燃料噴射量TOUT2 を減少させるので、4つの気筒#1〜#4の空燃比は、図9に示すような2気筒ずれパターンになる。その後、前述した2気筒ずれパターンにおけるばらつき補正係数KEAFi による補正が行われることにより、4つの気筒#1〜#4の空燃比が平均化するように制御される。このように、非2気筒ずれパターンの場合にも、最終的に、気筒間の空燃比のばらつきが解消するように、すなわち、第1および第2フィルタリング値KACT_Fc,KACT_Frの振幅が値0になるように、各気筒の最終燃料噴射量TOUTi が算出される。
なお、図示しないが、図10に示したばらつきパターン以外の非2気筒ずれパターンで気筒間の空燃比がばらついている場合にも同様に、第1または第2フィルタリング値KACT_Fc,KACT_Frに基づいて算出したばらつき補正係数KEAFi により、4つの気筒#1〜#4の空燃比が平均化するように制御され、気筒間の空燃比のばらつきが解消する。
また、算出用フィルタリング値の絶対値|KACT_Fi (n)|が、しきい値KACT_THRESHよりも小さくなったときには(図18のステップ63:YES)、気筒間の空燃比のばらつきが解消したとして、算出用フィルタリング値KACT_Fi (n)を0に設定する(ステップ64)とともに、それを用いて、ばらつき補正係数KEAFi を算出する(ステップ65〜67)。これにより、ばらつき補正係数KEAFi は、前述したように、その直前に算出されたばらつき補正係数KEAFi とほぼ等しい値に固定される。
次に、ECU2によるインジェクタ6および吸気弁を含む燃料供給系が正常に動作しているか否かを判定する処理について、図19のフローチャートを参照しながら説明する。本処理は、例えばTDC信号の入力ごとに実行される。まず、ステップ70では、図18の前記ステップ67において算出した1番気筒#1のばらつき補正係数KEAF1 が、第1判定値KEAFRLよりも大きく、かつ第2判定値KEAFRHよりも小さいか否かを判別する。
この答がNOで、KEAF1 ≦KEAFRLまたはKEAF1 ≧KEAFRHのときには、1番気筒#1のばらつき補正係数KEAF1 が小さすぎるまたは大きすぎるとして、1番気筒#1のインジェクタ6および吸気弁を含む燃料供給系が正常に動作してないと判定し、そのことを表すために、第1異常フラグF_NG1を「1」にセットし(ステップ71)、ステップ72に進む。一方、上記ステップ70の答がYESで、KEAFRL<KEAF1 <KEAFRHのときには、ステップ71をスキップし、ステップ72に進む。
このような場合に、1番気筒#1の燃料供給系が正常に動作してないと判定するのは、次の理由による。すなわち、ばらつき補正係数KEAFi は、前述した算出方法から明らかなように、ばらつき補正係数KEAFi による補正が行われなかった場合の気筒間におけるもともとの相対的な空燃比のばらつきの度合を表す。また、このような気筒間におけるもともとの空燃比のばらつきは、燃料供給系の動作特性が気筒間でばらついていることによって生じる。したがって、ばらつき補正係数KEAFi が大きすぎるまたは小さすぎるときには、その気筒の燃料供給系の動作特性が他の気筒に対して非常に大きくずれており、その気筒の燃料供給系が正常に動作していないと判定することができるためである。また、上記ステップ70および71と同様にして、以下のステップ72〜77において、#2〜#4番気筒の燃料供給系が正常に動作しているか否かを判定する。
すなわち、ステップ72、74および76において、2番〜4番気筒#2〜#4のばらつき補正係数KEAF2 〜KEAF4 がそれぞれ、第1判定値KEAFRLよりも大きく、かつ第2判定値KEAFRHよりも小さいか否かを判別する。それらの答がNOのときには、該当する気筒の燃料供給系が正常に動作していないとして、第2〜第4異常フラグF_NG2〜F_NG4のうち、該当するものを「1」にセットする(ステップ73、75および77)。なお、第1〜第4異常フラグF_NG1〜F_NG4は、エンジン3の始動時に「0」にリセットされる。
次に、ステップ78では、第1〜第4異常フラグF_NG1〜F_NG4がいずれも「0」であるか否かを判別する。この答がYESのときには、すべての気筒の燃料供給系が正常に動作しているとして、そのことを表すために、燃料供給系正常フラグF_OKを「1」にセットし(ステップ79)、本処理を終了する。一方、ステップ78の答がNOで、第1〜第4異常フラグF_NG1〜F_NG4のいずれかが「1」のときには、上記ステップ79をスキップし、本処理を終了する。
次いで、図20〜図24を参照しながら、気筒間で空燃比がばらついている場合に、空燃比制御装置1により空燃比を制御したときの動作例を、第1および第2の比較例とともに説明する。図21に示す第1比較例は、式(26)によりばらつき補正係数暫定値keafi を移動平均値KEAFaveで除算することでばらつき補正係数KEAFi を算出する処理(以下「補正係数平均化処理」という)を行わずに、ばらつき補正係数KEAFi をばらつき補正係数暫定値keafi に直接、設定した場合を示している。図22に示す第2比較例は、気筒間の空燃比のばらつきが解消した後に、本実施形態のばらつき補正係数KEAFi を固定する処理(以下「補正係数固定処理」という)を行わずに、その算出・更新を継続した場合を示している。
これらの例はいずれも、STR22により、LAFセンサ14の出力KACTが値1(理論空燃比に相当する当量比)になるように制御している場合において、第1および第2フィルタリング値KACT_Fc,KACT_Frにノイズが含まれている状態で、ばらつき補正係数KEAFi による補正を行ったときの動作を示している。なお、これらの図20〜図24において、KACT1〜4 はそれぞれ、1〜4番気筒#1〜#4から排出された、互いに混じり合っていない状態の排気ガス中の空燃比(当量比換算値)を表しており、具体的には、排気マニホルド7aの気筒#1〜#4の排気ポートの直後の部分に追加して設けた4つの測定用のLAFセンサ(図示せず)の出力に相当する。
図20に示すように、2気筒ずれパターン(KACT1 =KACT4 >KACT3 =KACT2 )の場合、ばらつき補正係数KEAFi による補正が開始されるまでは(〜t1)、LAFセンサ14の出力KACTは若干、不安定な状態になる。また、第2フィルタリング値KACT_Frは、大きな振幅で変化し、その正負によって気筒間の空燃比の大小関係を表すとともに、第1フィルタリング値KACT_Fcは、小さな振幅で変化する。
この場合において、ばらつき補正係数KEAFi による補正が開始されると(時点t1)、前述したように、ばらつき補正係数KEAFiを算出するための算出用フィルタリング値KACT_Fi として、第2フィルタリング値KACT_Frが選択される。また、この第2フィルタリング値KACT_Frに基づいて算出されるばらつき補正係数KEAFi のうち、1番および4番気筒#1,#4のばらつき補正係数KEAF1 ,KEAF4 は、値1よりも小さな正値に減少し、2番および3番気筒#2,#3のばらつき補正係数KEAF2 ,KEAF3 は、値1よりも大きな値に増加する。また、そのような各気筒のばらつき補正係数KEAFi の変化によって、KACT1 およびKACT4 が減少し、KACT2 およびKACT3 が増加しており、4つの気筒#1〜#4の空燃比が平均化するように制御される。
その結果、時点t2において、KACT1〜4 がいずれも値1(理論空燃比に相当する当量比)に収束し、それに伴って、第1および第2フィルタリング値KACT_Fc,KACT_Frが0に、すなわちそれらの振幅が値0に収束するとともに、LAFセンサ14の出力KACTも値1に収束する。また、1番および4番気筒#1,#4のばらつき補正係数KEAF1,KEAF4 が値1よりも若干小さな値に安定して収束するとともに、2番および3番気筒#2,#3のばらつき補正係数KEAF2,KEAF3 が値1よりも若干大きな値に安定して収束する。以上のように、本実施形態の空燃比制御装置1により、4つの気筒#1〜#4の空燃比が平均化するように制御することができるとともに、気筒間の空燃比のばらつきを適切に解消することができる。なお、気筒間の空燃比のばらつきが解消しても、第1および第2フィルタリング値KACT_Fc,KACT_Frが完全に0にならないのは、これらのフィルタリング値に含まれたノイズの影響によるものである。
これに対して、第1比較例では、ばらつき補正係数KEAFi をばらつき補正係数暫定値keafi に直接、設定するので、補正開始後(時点t3以降)、1番〜4番気筒#1〜#4のばらつき補正係数KEAF1 〜KEAF4 がいずれも、第2フィルタリング値KACT_Frに含まれるノイズの影響によって徐々に増加し、安定しない。また、このばらつき補正係数KEAFi の増加に伴い、LAFセンサ14の出力KACTが値1から増加しないように、フィードバック補正係数KSTRが値1よりも小さな値に減少する。そして、ばらつき補正係数KEAFi がノイズの影響によりさらに増加するのに応じて、フィードバック補正係数KSTRがその下限値KSTRLに達すると(時点t4)、KACT1〜4 がいずれも値1付近から増加するようになり、それに伴って、LAFセンサの出力KACTも値1付近から増加し始める。
以上のように、本実施形態によれば、補正係数平均化処理を行うことにより、ばらつき補正係数KEAFi をばらつき補正係数暫定値keafi に直接、設定した第1比較例と異なり、第1および第2フィルタリング値KACT_Fc,KACT_Frにノイズが含まれる場合でも、ばらつき補正係数KEAFi を安定させることができる。したがって、第1および第2フィルタリング値KACT_Fc,KACT_Frにノイズが含まれる場合でも、フィードバック補正係数KSTRによる補正を適正に行うことができるので、LAFセンサ14の出力KACTを目標空燃比KCMDに収束させることができる。
また、図22に示すように、第2比較例では、補正開始後(時点t5以降)、空燃比のばらつきが解消した(時点t6)後にも、ばらつき補正係数KEAFi の算出・更新が継続されるので、第1および第2フィルタリング値KACT_Fc,KACT_Fr中のノイズの影響によって、1番〜4番気筒#1〜#4のばらつき補正係数KEAF1 〜KEAF4 がいずれも短い周期で増減を繰り返し、変動する(時点t7以降)。このようなばらつき補正係数KEAF1 〜KEAF4 の変動によって、KACT1〜4 が再び値1から若干ばらつくのに伴い、第1および第2フィルタリング値KACT_Fc,KACT_Frの振幅が若干大きくなる。さらにその後には(時点t8以降)、ばらつき補正係数KEAF1 〜KEAF4 が安定するのに応じて、KACT1〜4 が再び値1に収束し、それに伴って、第1および第2フィルタリング値KACT_Fc,KACT_Frが0に収束する。このように、KACT1〜4 のばらつき・収束を繰り返すハンチング現象が生じる。
これに対して、本実施形態では、空燃比のばらつきの解消後、補正係数固定処理を行うことによって、第1および第2フィルタリング値KACT_Fc,KACT_Fr中のノイズに起因するばらつき補正係数KEAFi の変動を防止できる。その結果、上記のハンチング現象を回避することができ、したがって、気筒間の空燃比のばらつきのない状態に維持することができる。
また、このようなハンチング現象は、例えば、前記式(24)のばらつき補正係数KEAFi 算出用のフィードバック用のゲインFI、GIおよびHIを小さめに設定することによって、回避できる。しかし、その場合には、第1および第2フィルタリング値KACT_Fc,KACT_Frが0に速やかには収束せず、気筒間の空燃比のばらつきを速やかには解消することができない。これに対して、本実施形態では、補正係数固定処理を行うことによって、これらのゲインFIなどを小さな値に設定することなく、ハンチング現象を回避できる。したがって、気筒間の空燃比のばらつきを速やかに解消できるので、そのことが特に必要となるエンジン3の過渡運転時などにも十分に対応することができる。
また、図23は、非2気筒ずれパターン、例えば、1番気筒#1に供給される混合気の空燃比が他の気筒よりもリッチな状態のばらつきパターンの場合(KACT1 >KACT2 =KACT3 =KACT4 )の動作例を示している。まず、ばらつき補正係数KEAFi による補正が開始されるまでは(〜t9)、2気筒ずれパターンの場合と同様、LAFセンサ14の出力KACTは若干、不安定な状態になる。また、第1フィルタリング値KACT_Fcが大きな振幅で変化し、第2フィルタリング値KACT_Frが小さな振幅で変化する。
この場合において、ばらつき補正係数KEAFi による補正が開始されると(時点t9)、算出用フィルタリング値KACT_Fi として、第1フィルタリング値KACT_Fcが選択される。そして、この第1フィルタリング値KACT_Fcに基づいて算出されるばらつき補正係数KEAFi のうち、2番および3番気筒#2,#3のばらつき補正係数KEAF2 ,KEAF3 は値1に保持されるとともに、1番気筒#1のばらつき補正係数KEAF1 が値1よりも小さな正値に減少し、4番気筒#4のばらつき補正係数KEAF4 が値1よりも大きな値に増加する。また、そのような各気筒のばらつき補正係数KEAFi の変化によって、KACT2 およびKACT3 が増減せず、KACT1 が減少するとともに、KACT4 が増加する。
その結果、時点t10において、1番〜4番気筒#1〜#4の排気ガス中の空燃比は、KACT1 =KACT4 >KACT2 =KACT3 の2気筒ずれパターンになる。また、これに伴い、第1フィルタリング値KACT_Fcが小さな振幅で変化するとともに、第2フィルタリング値KACT_Frが大きな振幅で変化し、気筒間の空燃比の大小関係を表すので、算出用フィルタリング値KACT_Fi が、第2フィルタリング値KACT_Frに切り換えられる。それにより、ばらつき補正係数KEAFi のうち、1番および4番気筒#1,#4のばらつき補正係数KEAF1 ,KEAF4 が減少するとともに、2番および3番気筒#2,#3のばらつき補正係数KEAF2 ,KEAF3 が値1よりも大きな値に増加することで、KACT1 およびKACT4 が減少し、KACT2 およびKACT3 が増加しており、4つの気筒#1〜#4の空燃比が平均化するように制御される。
その結果、時点t11において、KACT1〜4 がいずれも値1よりも若干大きな値に収束し、それに伴って、第1および第2フィルタリング値KACT_Fc,KACT_Frが0に、すなわち、それらの振幅が値0に収束し、その直後において、KACT1〜4 がいずれも値1に収束するのに伴って、LAFセンサ14の出力KACTが値1に収束する。また、1番気筒#1のばらつき補正係数KEAF1 が値1よりも若干小さな値に安定して収束するとともに、2〜4番気筒#2〜#4のばらつき補正係数KEAF2〜4 が値1よりも若干大きな値に安定して収束する。以上のように、非2気筒ずれパターンにおいても、第1および第2フィルタリング値KACT_Fc,KACT_Frにノイズが含まれている場合でも、4つの気筒#1〜#4の空燃比を平均化するように制御することができるとともに、気筒間の空燃比のばらつきを適切に解消することができ、各気筒のばらつき補正係数KEAFi を安定させることができる。
さらに、図24は、1番気筒#1の燃料供給系が正常に動作していないことによって、ばらつき補正係数KEAFi による補正の開始前に、1番気筒#1の空燃比のみが他の気筒よりも極めてリーンになっている場合の動作例を示している。まず、ばらつき補正係数KEAFi による補正が開始されると(時点t12)、1番気筒のばらつき補正係数KEAF1 が増加し、第2判定値KEAFRHを上回る(図19の前記ステップ70:NO)ことにより、第1異常フラグF_NG1が「1」にセットされる(時点t13、ステップ71)。したがって、ばらつき補正係数KEAF1 が、第2判定値KEAFRH以上のときに、1番気筒#1の燃料供給系が正常に動作していないと判定することができる。
なお、図示しないが、1番気筒#1の燃料供給系が正常に動作していないことによって、図24の場合とは逆に、1番気筒#1の空燃比が他の気筒よりも極めてリッチになっているような場合には、1番気筒#1のばらつき補正係数KEAF1 が、第1判定値KEAFRLを下回ることによって、1番気筒#1の燃料供給系が正常に動作していないと判定することができる。
以上のように、本実施形態によれば、サイクルフィルタ23aおよび回転フィルタ23bが互いに並列に設けられ、LAFセンサ14の出力KACTが、サイクルフィルタ23aによって、非2気筒ずれパターンによるばらつきの有無を表す第1周波数fr1域が通過するようにフィルタリングされることで、第1フィルタリング値KACT_Fcが算出される。また、回転フィルタ23bによって、LAFセンサ14の出力KACTが、2気筒ずれパターンによるばらつきの有無を表す第2周波数fr2域が通過するようにフィルタリングされることで、第2フィルタリング値KACT_Frが算出される。さらに、第1加重平均値KACT_Fcdが、その前回値の絶対値|KACT_Fcd(m−1)|および第1フィルタリング値の今回値の絶対値|KACT_Fc(m)|を加重平均することにより算出される。
そして、この第1加重平均値KACT_Fcdがしきい値KACT_REFよりも大きく、第1フィルタリング値KACT_Fcの振幅がより大きいときには、ばらつき補正係数KEAFi が、第1フィルタリング値KACT_Fcに基づいて気筒ごとに算出される。一方、第1加重平均値KACT_Fcdがしきい値KACT_REFよりも小さく、第2フィルタリング値KACT_Frの振幅がより大きいときには、ばらつき補正係数KEAFi が、第2フィルタリング値KACT_Frに基づいて算出される。そのように算出されたばらつき補正係数KEAFi に応じて、最終燃料噴射量TOUTi が、第1および第2フィルタリング値KACT_Fc,KACT_Frの振幅が値0になるように気筒ごとに算出される。
このように、第1および第2フィルタリング値KACT_Fc,KACT_Frのうち、振幅がより大きく、気筒間の空燃比のばらつきの有無などを良好に表すフィルタリング値に基づいて、このフィルタリング値の振幅が値0になるように、ばらつき補正係数KEAFi を算出するので、いかなるばらつきパターンにおいても、4つの気筒#1〜#4の空燃比を平均化するように制御でき、それにより、気筒間の空燃比のばらつきを速やかにかつ適切に解消することができる。また、ばらつき補正係数KEAFi を算出するためのフィルタリング値を、第1加重平均値KACT_Fcdに基づいて選択するので、各気筒の空燃比の一時的な変動などが生じても、この変動を加重平均によって吸収することができる。その結果、バンドパスフィルタの頻繁な切り換えを防止でき、したがって、各気筒の空燃比が一時的に変動したような場合でも、気筒間の空燃比のばらつきを速やかに解消することができる。
さらに、最終燃料噴射量TOUTi が、TDC信号に同期して算出されるとともに、第1および第2フィルタリング値KACT_Fc,KACT_Frの算出に用いられるLAFセンサ14の出力KACTが、CRK信号に同期してサンプリングされる。このように、LAFセンサ14の出力KACTを、最終燃料噴射量TOUTi の決定周期、すなわち各気筒から排気ガスが排出される周期よりも短い周期ごとにサンプリングするので、そのようにサンプリングされたLAFセンサ14の出力KACTは、各気筒の排気ガス中の空燃比の変化状態をきめ細かく表す。これにより、第1および第2フィルタリング値KACT_Fc,KACT_Frは、気筒間の空燃比のばらつきの有無などをよりきめ細かく適切に表すので、気筒間の空燃比のばらつきを、より速やかにかつ適切に解消することができる。
また、ばらつき補正係数KEAFi を算出するための第1および第2フィルタリング値KACT_Fc,KACT_Frとして、各気筒の排気ガスの排出タイミングに相当する各気筒のTDC信号の出力後、むだ時間が経過したタイミングで検出されたLAFセンサ14の出力KACTに基づくものを選択するので、各気筒の排気ガス中の空燃比が良好に反映されたものを用いることができる。したがって、むだ時間を補償しながら、最終燃料噴射量TOUTi を適切に算出することができる。さらに、むだ時間を、吸気管内絶対圧PBAおよびエンジン回転数NEに応じて、すなわちエンジン3の運転状態に応じて求めるので、運転状態の変化に応じて、むだ時間を適切に補償しながら、各気筒の排気ガス中の空燃比が良好に反映された第1および第2フィルタリング値KACT_Fc,KACT_Frを、最適に得ることができる。
また、各気筒のばらつき補正係数KEAFi が、ばらつき補正係数暫定値keafi を移動平均値KEAFaveで除算することにより算出される。これにより、各フィルタリング値にノイズが含まれる場合でも、各気筒のばらつき補正係数KEAFi へのノイズの影響を平準化することができるので、ばらつき補正係数KEAFi を適切に算出でき、したがって、各気筒の空燃比の変動を回避することができる。さらに、気筒間の空燃比のばらつきを補正するための各気筒のばらつき補正係数KEAFi が、大きすぎるまたは小さすぎるときに、対応する気筒の燃料供給系が正常に動作していないと判定するので、この判定を適切に行うことができる。
また、算出用フィルタリング値の絶対値|KACT_Fi (n)|がしきい値KACT_THRESHよりも小さくなったときに、気筒間の空燃比のばらつきが解消したとして、ばらつき補正係数KEAFi を、その直前に算出された値とほぼ等しい値に固定する。これにより、第1および第2フィルタリング値KACT_Fc,KACT_Fr中のノイズに起因するばらつき補正係数KEAFi の変動を防止できる。したがって、前述したハンチング現象を回避することができるので、気筒間の空燃比のばらつきのない状態に維持することができる。
なお、本実施形態のように、ばらつき補正係数KEAFi を算出するためのフィルタリング値の選択を、第1加重平均値KACT_Fcdとしきい値KACT_REFとの比較結果に基づいて行うのに代えて、第1加重平均値KACT_Fcdと第2加重平均値KACT_Frdとの比較結果に基づいて行ってもよい。具体的には、ばらつき補正係数KEAFi を算出するためのフィルタリング値として、KACT_Fcd>KACT_Frdのときには、第1フィルタリング値KACT_Fcを選択し、KACT_Fcd≦KACT_Frdのときには、第2フィルタリング値KACT_Frを選択してもよい。この場合にも、本実施形態と同様に、第1および第2フィルタリング値KACT_Fc,KACT_Frのうち、振幅がより大きく、気筒間の空燃比のばらつきの有無などをより良好に表すものを、ばらつき補正係数KEAFi を算出するためのフィルタリング値として採用することができる。
次に、図25を参照しながら、ばらつき補正係数KEAFi を算出する処理の変形例について説明する。本処理は、前述した図18の処理と比較して、前記ステップ63および64の処理のみが異なるので、以下、この相違点を中心として説明し、同じ実行内容のステップについては、同じステップ番号を付し、その説明を省略するものとする。前記ステップ63および64に代わるステップ80では、算出用フィルタリング値の絶対値|KACT_Fi (n)|が、しきい値KACT_THRESHよりも小さいか否かを判別する。
この答がNOのときには、気筒間で空燃比がばらついているとして、前記ステップ65〜67を実行し、ばらつき補正係数KEAFi を算出するとともに、算出したばらつき補正係数KEAFi をRAMに記憶・更新し(ステップ81)、本処理を終了する。
一方、上記ステップ80の答がYESで、|KACT_Fi (n)|<KACT_THRESHのときには、気筒間の空燃比のばらつきが解消しているとして、前記ステップ65〜67,81をスキップし、ばらつき補正係数KEAFi の算出・更新を行わずに、本処理を終了する。
このように、算出用フィルタリング値の絶対値|KACT_Fi (n)|がしきい値KACT_THRESHよりも小さいときには、気筒間の空燃比のばらつきが解消しているとして、ばらつき補正係数KEAFi は、その算出・更新が行われないことにより、この条件が成立する直前に算出されたばらつき補正係数KEAFi と同じ値に固定される。したがって、前述した第1実施形態と同様、ハンチング現象を回避することができ、気筒間の空燃比のばらつきのない状態に維持することができる。また、上記の条件(|KACT_Fi (n)|<KACT_THRESH)が成立しているときに、第1実施形態で行われるようなばらつき補正係数KEAFi の算出・更新が省略されるので、その分、ECU2の演算負荷を低減することができる。
次に、図26を参照しながら、本発明の第2実施形態について説明する。本実施形態は、第1実施形態のばらつき補正部23に代えて、ばらつき補正部30が設けられている点のみが異なるため、以下、その構成を中心として説明する。同図において、ばらつき補正部23と同じばらつき補正部30中の構成要素については、同じ符号を用いて示している。
ばらつき補正部30では、加算器30a(総和算出手段)によって、第1遅延要素23cから出力された第1フィルタリング値KACT_Fc(m)と、第2遅延要素23dから出力された第2フィルタリング値KACT_Fr(m)が加算される。また、この加算によって得られた和(総和)が、算出用フィルタリング値KACT_Fi (n)として、算出用フィルタリング値決定部30b(補正係数固定手段)に出力される。算出用フィルタリング値決定部30bでは、入力された算出用フィルタリング値KACT_Fi (n)に基づき、前述した算出用フィルタリング値決定部23hと同様にして、算出用フィルタリング値KACT_Fi (n)を決定し、決定した算出用フィルタリング値KACT_Fi (n)をばらつき補正係数算出部30c(補正用パラメータ算出手段、平均値算出手段、補正係数算出手段)に出力する。ばらつき補正係数算出部30cでは、入力された算出用フィルタリング値KACT_Fi (n)に基づいて、ばらつき補正係数KEAFi が算出される。
このばらつき補正係数KEAFi の算出について、図27のフローチャートを参照しながら説明する。まず、ステップ90では、図14の前記ステップ8で読み込んだ第1フィルタリング値KACT_Fcと第2フィルタリング値KACT_Frとの和を、算出用フィルタリング値KACT_Fi (n)として設定する。
次いで、設定した算出用フィルタリング値の絶対値|KACT_Fi (n)|が、図18の前記ステップ63で用いたしきい値KACT_THRESHよりも小さいか否かを判別する(ステップ91)。この答がYESのときには、第1および第2フィルタリング値KACT_Fc,KACT_Frの和がほぼ値0であるため、気筒間の空燃比のばらつきが解消しているとして、算出用フィルタリング値KACT_Fi (n)を0に設定し(ステップ92)、ステップ93〜95を実行する。一方、ステップ91の答がNOで、|KACT_Fi (n)|≧KACT_THRESHのときには、気筒間で空燃比がばらついているとして、ステップ92をスキップし、ステップ93〜95を実行する。
このステップ93〜95では、前記ステップ65〜67と同様にして、ばらつき補正係数KEAFi を算出する。まず、ステップ93では、ステップ90または92で設定された算出用フィルタリング値KACT_Fi (n)を用いて、前記式(24)により、ばらつき補正係数暫定値keafi を算出する。次に、ステップ94において、算出したばらつき補正係数暫定値keafi を用いて、前記式(25)により、移動平均値KEAFaveを算出する。
次いで、ステップ95において、上記ステップ93および94においてそれぞれ算出したばらつき補正係数暫定値keafi および移動平均値KEAFaveを用いて、前記式(26)により、ばらつき補正係数KEAFi を算出した後、本処理を終了する。
以上のように、第1フィルタリング値KACT_Fcと第2フィルタリング値KACT_Frとの和に基づいて、ばらつき補正係数KEAFi を算出する(ステップ90、93〜95)のは、次の理由による。すなわち、図28に示すように、前述した模擬出力KACTMIをLAFセンサ14の出力KACTとして、第3模擬出力KACTMI3 のみを他の模擬出力よりも小さくし、ばらつき補正部30に入力すると、第1フィルタリング値KACT_Fcは、比較的大きな振幅で変化し、第2フィルタリング値KACT_Frは、比較的小さな振幅で変化する。そして、これらのフィルタリング値の和(KACT_Fc+KACT_Fr)は、同図に破線で示す第1フィルタリング値KACT_Fcと比較して、第3模擬出力KACTMI3 が入力されるタイミングでは、絶対値が大きな負値に、第2模擬出力KACTMI2 が入力されるタイミングでは、小さな正値になる。このように、第1フィルタリング値KACT_Fcと第2フィルタリング値KACT_Frとの和は、第1フィルタリング値KACT_Fcよりも、気筒間の空燃比の実際のばらつきに近い特性を示す。なお、このような特性は、3番気筒#3に限らず、他の1つの気筒のみの空燃比がリーン側またはリッチ側にずれているばらつきパターンの場合にも該当する。以上により、第1実施形態のばらつき補正部23と比較して、気筒間の空燃比のばらつきを速やかに解消することができるためである。
また、第1実施形態と同様、算出用フィルタリング値の絶対値|KACT_Fi (n)|がしきい値KACT_THRESHよりも小さくなったときには(ステップ91:YES)、空燃比のばらつきが解消したとして、算出用フィルタリング値KACT_Fi (n)を0に設定する(ステップ92)とともに、それを用いて、ばらつき補正係数KEAFi を算出する(ステップ93〜95)。これにより、ばらつき補正係数KEAFi は、その直前に算出されたばらつき補正係数KEAFi とほぼ等しい値に固定される。
次に、図29〜図31を参照しながら、本発明の第2実施形態により空燃比を制御した場合の動作例について、第1および第2の比較例とともに説明する。これらの第1および第2の比較例はそれぞれ、第1実施形態で用いた図21および図22の第1および第2比較例と同様、ばらつき補正係数KEAFi をばらつき補正係数暫定値keafi に直接、設定した場合の例、および、空燃比のばらつきの解消後にばらつき補正係数KEAFi の算出・更新を継続した場合の例である。また、これらの例はいずれも、図23の場合と同様、1番気筒#1の混合気の空燃比が他の気筒よりもリッチな状態のばらつきパターンの場合において、STR22により、LAFセンサ14の出力KACTが値1になるように制御しているときに、第1および第2フィルタリング値KACT_Fc,KACT_Frにノイズが含まれている状態で、ばらつき補正係数KEAFi による補正を行ったときの動作を示している。なお、同図において、KACT1〜4 はそれぞれ、前述した図20〜24の場合と同様、排気マニホルド7aの気筒#1〜#4の排気ポートの直後の部分に追加して設けた4つの測定用のLAFセンサ(図示せず)の出力に相当する。
図29に示すように、ばらつき補正係数KEAFi による補正が開始されるまでは(〜t14)、第1フィルタリング値KACT_Fcが、比較的大きな振幅で変化するとともに、第2フィルタリング値KACT_Frが、比較的小さな振幅で変化する。図28の説明のときに述べたように、第1フィルタリング値KACT_Fcと第2フィルタリング値KACT_Frとの和は、気筒間の空燃比の実際のばらつきに近い特性を示す。このため、この状態において、ばらつき補正係数KEAFi による補正が開始されると(時点t14)、図23に示した第1実施形態の場合と比較して、1番気筒#1のばらつき補正係数KEAF1 の減少度合は大きく、また、4番気筒#4のばらつき補正係数KEAF4 の増加度合は小さい。
これにより、第1実施形態の場合と異なり、KACT1 とKACT4 との差が若干存在することによって、2気筒ずれパターンに近いパターンになることで、第2フィルタリング値KACT_Frの振幅が若干、大きくなる。それにより、1番気筒#1のばらつき補正係数KEAF1 がさらに減少するとともに、2番および3番気筒#2,#3のばらつき補正係数KEAF2 ,KEAF3 が増加し、4番気筒#4のばらつき補正係数KEAF4 が若干、増加する。また、そのような各気筒のばらつき補正係数KEAFi の変化によって、KACT1 がさらに減少するとともに、KACT2 およびKACT3 が増加し、KACT4 が若干増加しており、4つの気筒#1〜#4の空燃比が平均化するように制御される。
その結果、第1実施形態の図23に示す時点t11よりも早い時点t15において、KACT1〜4 がいずれも所定の値に収束するのに伴って、第1および第2フィルタリング値KACT_Fc,KACT_Frが0に収束するとともに、これらのフィルタリング値の和(KACT_Fc+KACT_Fr)も値0に収束する。また、その直後において、KACT1〜4 がいずれも値1に収束するのに伴って、LAFセンサ14の出力KACTが値1に収束する。さらに、1番気筒#1のばらつき補正係数KEAF1 は値1よりも若干小さな値に安定して収束するとともに、2〜4番気筒#2〜#4のばらつき補正係数KEAF2〜4 は値1よりも若干大きな値に安定して収束する。以上のように、本実施形態によれば、第1実施形態と比較して、気筒間の空燃比のばらつきを速やかに解消することができる。
これに対して、図30の第1比較例では、前述した図21の第1比較例と同様、補正開始後(時点t16以降)、1番〜4番気筒のばらつき補正係数KEAF1 〜KEAF4 がいずれも、第1および第2フィルタリング値KACT_Fc,KACT_Frに含まれるノイズの影響により増加し、安定しない。また、このばらつき補正係数KEAFi の増加に伴い、フィードバック補正係数KSTRが値1よりも小さな値に減少している。そして、ばらつき補正係数KEAFi がノイズの影響によりさらに増加するのに応じて、フィードバック補正係数KSTRがその下限値KSTRLに達すると(時点t17)、KACT1〜4 がいずれも値1付近から増加するようになり、それに伴って、LAFセンサの出力KACTも値1付近から増加し始める。以上のように、本実施形態においても、補正係数平均化処理により、第1および第2フィルタリング値KACT_Fc,KACT_Frにノイズが含まれる場合でも、ばらつき補正係数KEAFi を安定させることができる。
また、図31の第2比較例では、補正開始後(時点t18以降)、空燃比のばらつきが解消した(時点t19)後にも、ばらつき補正係数KEAFi の算出・更新が継続されるので、前述した図22の第2比較例と同様の動作になる。すなわち、第1および第2フィルタリング値KACT_Fc,KACT_Fr中のノイズの影響により、ばらつき補正係数KEAF1 〜KEAF4 が変動する(時点t20以降)。この変動によって、KACT1〜4 が再び値1から若干ばらつくのに伴い、第1および第2フィルタリング値KACT_Fc,KACT_Frの振幅が若干大きくなる。さらにその後には(時点t21以降)、ばらつき補正係数KEAF1 〜KEAF4 が安定するのに応じて、KACT1〜4 が再び値1に収束する。以上のように、図22の第2比較例の場合と同様、ハンチング現象が生じる。
以上のように、本実施形態においても、補正係数固定処理によって、第1および第2フィルタリング値KACT_Fc,KACT_Fr中のノイズに起因するばらつき補正係数KEAFi の変動を防止できる。したがって、上記のハンチング現象を回避することができるなど、第1実施形態による前述した効果をまったく同様に得ることができる。
以上のように、この第2実施形態によれば、気筒間の空燃比の実際のばらつきにより近い特性を示す第1フィルタリング値KACT_Fcと第2フィルタリング値KACT_Frとの和に基づいて、4つの気筒#1〜#4の空燃比が平均化し、気筒間の空燃比のばらつきが解消するように、すなわち、第1フィルタリング値KACT_Fcと第2フィルタリング値KACT_Frとの和が値0になるように、ばらつき補正係数KEAFi が算出される。したがって、気筒間の空燃比のばらつきをさらに速やかにかつ適切に解消することができる。
なお、第1実施形態の変形例と同様に、算出用フィルタリング値の絶対値|KACT_Fi (n)|がしきい値KACT_THRESHよりも小さいときに、ばらつき補正係数KEAFi の算出・更新を行わないようにすることによって、ばらつき補正係数KEAFi を直前の値に固定してもよい。
次に、図35を参照しながら、本発明の第3実施形態について説明する。本実施形態は、前述した第1実施形態のばらつき補正部23に代えて、ばらつき補正部60が設けられている点のみが異なるため、以下、その構成を中心として説明する。同図において、第1実施形態のばらつき補正部23と同じばらつき補正部60中の構成要素については、同じ符号を用いて示している。
ばらつき補正部60では、ばらつき補正係数算出部60a(補正係数算出手段)において、算出用フィルタリング値決定部23hから入力された算出用フィルタリング値KACT_Fi (n)、および学習補正係数算出記憶部60b(学習補正係数算出手段、記憶手段)から入力された第1検索値KMEMIPi (n)に応じて、ばらつき補正係数KEAFi (n)を気筒ごとに算出し、学習補正係数算出記憶部60bに出力する。その詳細については後述する。
学習補正係数算出記憶部60bでは、ばらつき補正係数算出部60aから入力されたばらつき補正係数KEAFi (n)と、すでに記憶している学習補正係数KMEMi とに応じて、今回の学習補正係数KMEMi (n)を算出する。この学習補正係数KMEMi は、空燃比のばらつきを補正するためのものであり、ばらつき補正係数KEAFi の学習値である。そして、算出した学習補正係数KMEMi (n)を、エンジン3の運転状態に対応させて記憶する。また、記憶した学習補正係数KMEMi のうち、現在のエンジン3の運転状態に対応する学習補正係数KMEMi を第1検索値KMEMIPi (n)として、ばらつき補正係数算出部60aに出力する。以上の学習補正係数算出記憶部60bにおける処理の詳細については、後述する。
次に、本実施形態の空燃比制御を含む燃料噴射制御処理について、図36を参照しながら説明する。本処理は、前述した図14の燃料噴射量制御処理と比較して、前記ステップ9の処理に代えて、ステップ9Aのばらつき補正係数KEAFi を算出する処理と、これに続くステップ9Bの学習補正係数KMEMi を算出・記憶する処理を実行する点のみが異なるので、以下、この相違点を中心として説明し、同じ実行内容のステップについては、同じステップ番号を付し、その説明を省略するものとする。
次に、図37を参照しながら、このステップ9Aのばらつき補正係数KEAFi を算出する処理について説明する。本処理は、前述した図18のばらつき補正係数KEAFi を算出する処理と比較して、前記ステップ65に代えて、ステップ100および101の処理が実行される点のみが異なるので、同じ実行内容のステップについては、同じステップ番号を付し、以下、相違点を中心として説明する。
前記ステップ63または64に続くステップ100では、第1検索値KMEMIPi を設定する。この設定は、図38に示すKMEMi メモリに記憶された学習補正係数KMEMi を読み出すことによって行われる。このKMEMi メモリは、EEPROM2aで構成されており、#1番〜#4番気筒の学習補正係数KMEM1〜4 をそれぞれ記憶するKMEM1〜4 メモリを有している。また、各KMEMi メモリは、学習補正係数KMEMi を記憶するための、NEナンバーNE’i (n−e)およびPBナンバーPB’i (n−e)で規定される多数の記憶場所を有しており、これらの記憶場所に、学習補正係数KMEMi が、エンジン回転数NEおよび吸気管内絶対圧PBAで表されるエンジン3の運転状態に対応させて、記憶されている。
上記の第1検索値KMEMIPi は、KMEMi メモリに記憶された学習補正係数KMEMi のうちの、現在のエンジン回転数NEに対応するNEナンバーNE’i (n−e)と、現在の吸気管内絶対圧PBAに対応するPBナンバーPB’i (n−e)とで規定される記憶場所に記憶された学習補正係数KMEMi に設定される。なお、エンジン回転数NEおよび吸気管内絶対圧PBAにそれぞれ対応するNEおよびPBナンバーNE’i (n−e),PB’i (n−e)が存在しない場合には、第1検索値KMEMIPi の設定は、補間演算によって行われる。
上記ステップ100に続くステップ101では、設定した第1検索値KMEMIPi (n)、および前記ステップ61、62または64で設定した算出用フィルタリング値KACT_Fi (n)を用いて、次式(31)によってばらつき補正係数暫定値keafi (n)を算出する。そして、続くステップ66および67において、算出したばらつき補正係数暫定値keafi (n)に基づき、前記式(25)および(26)によって、ばらつき補正係数KEAFi (n)を算出する。
Figure 2005133714
以上のように、KMEMi メモリに記憶された学習補正係数KMEMi のうち、現在のエンジン回転数NEおよび吸気管内絶対圧PBAに対応する学習補正係数KMEMi を、第1検索値KMEMIPi (n)として設定する。そして、設定した第1検索値KMEMIPi (n)と算出用フィルタリング値KACT_Fi (n)に応じて、ばらつき補正係数KEAFi (n)が算出される。
次に、図39を参照しながら、前記ステップ9Bの学習補正係数KMEMi を算出・記憶する処理について説明する。まず、ステップ110では、前記ステップ63と同様、算出用フィルタリング値の絶対値|KACT_Fi (n)|が、前記しきい値KACT_THRESHよりも小さいか否かを判別する。この答がNOのときには、気筒間で空燃比がばらついているとして、学習補正係数KMEMi の算出・記憶を行わずに、そのまま本処理を終了する。
一方、ステップ110の答がYESで、|KACT_Fi (n)|<KACT_THRESHのときには、気筒間で空燃比がほとんどばらついていないとして、次のステップ111〜121において、今回、算出する学習補正係数KMEMi を記憶するためのKMEMi メモリの記憶場所の設定、すなわち、この記憶場所を規定するNEナンバーNE’i (n−e)およびPBナンバーPB’i (n−e)の設定を行う。
この設定は、所定のむだ時間分前のエンジン回転数NEおよび吸気管内絶対圧PBAに基づいて行われる。これは次の理由による。すなわち、前述したように、ばらつき補正係数KEAFi は、算出用フィルタリング値KACT_Fi に基づいて算出され、この算出用フィルタリング値KACT_Fi は、LAFセンサ14の出力KACTをフィルタリングしたものである。また、最終燃料噴射量TOUTi は、前記ステップ2,10および11から明らかなように、エンジン回転数NEおよび吸気管内絶対圧PBAに応じて求められる。さらに、最終燃料噴射量TOUTi に基づく燃料が噴射された後、その燃焼によって生成される排気ガス中の酸素濃度がLAFセンサ14の出力に反映されるまでに、むだ時間が生じる。以上から明らかなように、LAFセンサの出力KACT、およびこれに基づいて算出されるばらつき補正係数KEAFi は、このむだ時間分前の空燃比に対応するので、この空燃比を定めるのに用いたむだ時間分前の実際のエンジン回転数NEおよび吸気管内絶対圧PBAに、ばらつき補正係数KEAFi を対応させるためである。これにより、学習補正係数KMEMi を、このむだ時間による影響を補償しながら、エンジン3の運転状態に適切に対応させて記憶することができる。
まず、ステップ111では、記号xおよび記号yを値1にセットする。次いで、eサイクル前回転数NE(n−e)が、第1所定値NEg(1)および第2所定値NEg(2)の単純平均値({NEg(1)+NEg(2)}/2)よりも大きいか否かを判別する(ステップ112)。
このeサイクル前回転数NE(n−e)は、RAMに記憶された、本処理のe回サイクル前、すなわちe回前のTDC信号が出力された時点に検出されたエンジン回転数NEである。また、この値eは、上述したむだ時間に対応するものであり、エンジン回転数NEおよび吸気管内絶対圧PBAに応じ、eマップ(図示せず)を検索することによって求められる。このeマップでは、値eは、エンジン回転数NEが高いほど、または吸気管内絶対圧PBAが高いほど、より小さな値に設定されている。これは、エンジン回転数NEまたは吸気管内絶対圧PBAが高いほど、排気ガスの流速が高いので、その分、むだ時間がより短いためである。また、上記の第1および第2の所定値NEg(1),NEg(2)は、NEナンバーNE’i (n−e)に対応するように設定され、NEg(1)<NEg(2)の大小関係に設定されている。
上記ステップ112の答がNOで、NE(n−e)≦{NEg(1)+NEg(2)}/2のときには、多数のNEナンバーNE’i (n−e)のうちから、第1所定値NEg(1)に対応するものを選択し、学習補正係数KMEMi の記憶場所を規定するNEナンバーNE’i (n−e)として設定する(ステップ113)。
一方、前記ステップ112の答がYESで、NE(n−e)>{NEg(1)+NEg(2)}/2のときには、eサイクル前回転数NE(n−e)が、第x所定値NEg(x)および第x+1所定値NEg(x+1)の平均値({NEg(x)+NEg(x+1)}/2)よりも大きく、かつ第x+1所定値NEg(x+1)および第x+2所定値NEg(x+2)の平均値({NEg(x+1)+NEg(x+2)}/2)よりも小さいか否かを判別する(ステップ114)。これらの第x〜第x+2の所定値NEg(x)〜NEg(x+2)は、記号xの値が大きいほど、より大きな値に設定され、第1所定値NEg(1)と同様、NEナンバーNE’i (n−e)に対応するように設定されている。
このステップ114の答がNOのときには、記号xをインクリメントし(ステップ115)、再度、ステップ114を実行する。一方、上記ステップ114の答がYESのときには、第x+1所定値NEg(x+1)に対応するNEナンバーNE’i (n−e)を、学習補正係数KMEMi の記憶場所を規定するNEナンバーNE’i (n−e)として設定する(ステップ116)。このように、上記ステップ114の条件が成立するまで、記号xがインクリメントされ、それにより、ステップ114の判別に用いられる第x〜第x+2の所定値NEg(x)〜(x+2)が、第1〜第3所定値NEg(1)〜(3)からそれぞれ繰り上げられる。以上のようにしてNEナンバーNE’i (n−e)を設定するのは、eサイクル前回転数NE(n−e)に合致するNEナンバーNE’i (n−e)が通常、存在しないので、より近いNEナンバーNE’i (n−e)を補間によって求めるためである。
前記ステップ113または116に続くステップ117では、eサイクル前絶対圧PB(n−e)が、第1所定値PBg(1)および第2所定値PBg(2)の平均値({PBg(1)+PBg(2)}/2)よりも大きいか否かを判別する(ステップ117)。このeサイクル前絶対圧PB(n−e)は、RAMに記憶された、本処理のe回サイクル前に検出された吸気管内絶対圧PBAである。また、第1および第2の所定値PBg(1),PBg(2)は、PBナンバーPB’i (n−e)に対応するように設定され、PBg(1)<PBg(2)の大小関係に設定されている。
このステップ117の答がNOで、PB(n−e)≦{PBg(1)+PBg(2)}/2のときには、多数のPBナンバーPB’i (n−e)のうちから、第1所定値PBg(1)に対応するものを選択し、学習補正係数KMEMi の記憶場所を規定するPBナンバーPB’i (n−e)として設定する(ステップ118)。
一方、上記ステップ117の答がYESで、PB(n−e)>{PBg(1)+PBg(2)}/2のときには、eサイクル前絶対圧PB(n−e)が、第y所定値PBg(y)および第y+1所定値PBg(y+1)の平均値({PBg(y)+PBg(y+1)}/2)よりも大きく、かつ第y+1所定値PBg(y+1)および第y+2所定値PBg(y+2)の平均値({PBg(y+1)+PBg(y+2)}/2)よりも小さいか否かを判別する(ステップ119)。これらの第y〜第y+2の所定値PBg(y)〜PBg(y+2)は、記号yの値が大きいほど、より大きな値に設定され、第1所定値PBg(1)と同様、PBナンバーPB’i (n−e)に対応するように設定されている。
この答がNOのときには、記号yをインクリメントし(ステップ120)、再度、ステップ119を実行する。一方、上記ステップ119の答がYESのときには、第y+1所定値PBg(y+1)に対応するPBナンバーPB’i (n−e)を、学習補正係数KMEMi の記憶場所を規定するPBナンバーPB’i (n−e)として設定する(ステップ121)。このように、上記ステップ119の条件が成立するまで、記号yがインクリメントされ、それにより、ステップ119の判別に用いられる第y〜第y+2所定値PBg(y)〜(y+2)が、PBg(1)〜(3)からそれぞれ繰り上げられる。以上のようにしてPBナンバーPB’i (n−e)を設定するのは、eサイクル前絶対圧PB(n−e)に合致するPBナンバーPB’i (n−e)が通常、存在しないので、より近いPBナンバーPB’i (n−e)を補間によって求めるためである。
前記ステップ118または121に続くステップ122では、前記ステップ113または116で設定したNEナンバーNE’i (n−e)と、前記ステップ118または121で設定したPBナンバーPB’i (n−e)を用いて、第2検索値KMEMIPi ’を設定する。具体的には、NEおよびPBナンバーNE’i (n−e),PB’i (n−e)で規定されるKMEMi メモリの記憶場所に記憶されている学習補正係数KMEMi を読み出し、第2検索値KMEMIPi ’(n)として設定する。
次いで、設定した第2検索値KMEMIPi ’(n)、および前述した図37の処理で算出したばらつき補正係数KEAFi を用いて、学習補正係数KMEMi (n)を次式(32)によって算出する(ステップ123)。
KMEMi (n)=Ks・KEAFi (n)+(1-Ks)・KMEMIPi '(n) …… (32)
ここで、Ksは、所定の学習速度係数であり、0<Ks≦1に設定されている。
次に、算出した学習補正係数KMEMi (n)を、KMEMi メモリのうちの、NEおよびPBナンバーNE’i (n−e),PB’i (n−e)で規定される記憶場所に記憶し(ステップ124)、更新した後、本処理を終了する。
以上のように、気筒間で空燃比がほとんどばらついていないとみなされるときに、ばらつき補正係数KEAFi (n)が対応するむだ時間分前のエンジン3の運転状態を表すeサイクル前回転数および絶対圧NE(n−e),PB(n−e)に基づいて、学習補正係数KMEMi (n)の記憶場所が設定される。次に、設定された記憶場所にすでに記憶されている学習補正係数KMEMi を読み出し、第2検索値KMEMIPi ’(n)として設定する。そして、そのときに算出されたばらつき補正係数KEAFi (n)と、第2検索値KMEMIPi ’(n)に基づいて、学習補正係数KMEMi (n)を算出し、算出した学習補正係数KMEMi (n)を、設定した記憶場所に記憶し、更新する。
以上のように、本実施形態によれば、気筒間で空燃比がほとんどばらついていないとみなされる状況で算出した学習補正係数KMEMi を、エンジン3の運転状態に対応させて記憶するとともに、記憶した学習補正係数KMEMi のうちの現在のエンジン3の運転状態に対応する学習補正係数KMEMi である第1検索値KMEMIPi に応じて、最終燃料噴射量TOUTi を算出する。したがって、エンジン3の運転状態に応じて、そのときの実際のエンジン3の運転状態に最適な学習補正係数KMEMi を用いて、最終燃料噴射量TOUTi を決定できる。その結果、エンジン3の運転状態に応じて空燃比のばらつきを適切に補正でき、したがって、このばらつきを抑制することができる。また、学習補正係数KMEMi を記憶する際に、前述したむだ時間を考慮するので、その影響を補償しながら、学習補正係数KMEMi を、エンジン3の運転状態に適切に対応させて記憶することができる。
さらに、学習補正係数KMEMi を、不揮発性メモリであるEEPROM2aで構成されたKMEMi メモリに記憶する。これにより、エンジン3の始動時において、前回までのエンジン3の運転中に記憶された学習補正係数KMEMi を用いて最終燃料噴射量TOUTi を決定できる。これにより、エンジン3の始動後、LAFセンサ14が活性化していない状態でも、空燃比のばらつきを適切に補正でき、したがって、このばらつきを抑制することができる。
さらに、算出したばらつき補正係数KEAFi と、すでに記憶された学習補正係数KMEMi である第2検索値KMEMIPi ’とに応じて学習補正係数KMEMi を算出するので、学習補正係数KMEMi への第1または第2フィルタリング値KACT_Fc,KACT_Fr中のノイズなどの影響を抑制することができる。また、学習補正係数KMEMi の算出の際に、ばらつき補正係数KEAFi を算出したときのエンジン3の運転状態、すなわち、前述したむだ時間に相当するeサイクル前の運転状態とほぼ同一の運転状態において得られた学習補正係数KMEMi である第2検索値KMEMIPi ’を用いるので、学習補正係数KMEMi を、エンジン3の運転状態に応じて適切に算出することができる。
なお、本実施形態では、記憶手段としてEEPROM2aを用いたが、不揮発性のメモリであれば、これに限らず任意のものを用いてもよく、例えばフラッシュメモリやバックアップ用の電源を備えたRAMを用いてもよい。また、本実施形態では、ばらつき補正係数KEAFi を算出したときのエンジン3の運転状態として、eサイクル前の運転状態を用いたが、前述したむだ時間が短い場合には、これに代えて、ばらつき補正係数KEAFi の算出時の運転状態を用いてもよい。さらに、第1実施形態の変形例と同様に、算出用フィルタリング値の絶対値|KACT_Fi (n)|がしきい値KACT_THRESHよりも小さいときに、ばらつき補正係数KEAFi の算出・更新を行わないようにすることによって、ばらつき補正係数KEAFi を直前の値に固定してもよい。また、第2実施形態と同様に、第1および第2のフィルタリング値KACT_Fc,KACT_Fr(m)の和に基づいて、ばらつき補正係数KEAFi を算出してもよい。
また、説明した実施形態は、本発明を、4サイクル直列4気筒型のエンジン3に適用した例であるが、本発明はこれに限らず、各実施形態について、複数の気筒を有するエンジン、例えば、4サイクル直列3気筒タイプ、または各々が3つの気筒からなる一対のシリンダバンクを備える4サイクルV型6気筒タイプのエンジンに適用することが可能である。以下、本発明の第1実施形態において、4サイクル直列3気筒タイプのエンジンを用いた場合について説明する。この空燃比制御装置は、前述した第1実施形態の空燃比制御装置1と比較して、ばらつき補正部40の構成が異なるため、以下、図32を参照しながら、この点を中心として説明する。なお、同図において、第1実施形態のばらつき補正部23と同じばらつき補正部40中の構成要素については、同じ符号を用いて示している。
4サイクル直列3気筒型エンジンにおいて、LAFセンサ14の出力KACTを周波数解析した結果、気筒間で空燃比がばらついている場合には、1燃焼サイクルに同期した所定周波数域のPSDが非常に大きくなる一方、ばらつきがない場合には、そのような事象が生じないことが確認された。また、この所定周波数は、前述した第1周波数fr1と等しい。これは、前述した第1実施形態のエンジン3は、この3気筒型エンジンと同様、4サイクルエンジンであり、4サイクルエンジンでは、気筒数に関わらず、1燃焼サイクルが、4行程、すなわちクランク軸の2回転で完結するためである。また、この3気筒型エンジンでは、気筒間で空燃比がばらついている場合に、前述したエンジン3の場合と異なり、LAFセンサ14の出力KACTのPSDが、第2周波数fr2域においては大きくならないことも確認された。このため、ばらつき補正部40では、第1実施形態のばらつき補正部23と比較し、LAFセンサ14の出力KACTをフィルタリングするフィルタとして、サイクルフィルタ23aのみが用いられ、回転フィルタ23bは省略されている。このように、ばらつき補正部40の構成が、第1実施形態と比較して、単純なものになっている。
また、前述した実験と同様に、3つの気筒の排気ガス中の空燃比KACT1 〜KACT3 を、各燃焼サイクルごとに出力される三角波形の第1〜第3模擬出力KACTMI1 〜KACTMI3 としてそれぞれ模擬的に生成し、これらの総和をLAFセンサ14の模擬出力KACTMIとしてサイクルフィルタ23aに入力したところ、第1フィルタリング値KACT_Fcとして、以下のような波形が得られた。
すなわち、図示しないが、第1〜第3模擬出力KACTMI1〜3 が互いに等しい場合、第1フィルタリング値KACT_Fcは0になった。また、図33の(a)に示すように、第1および第3模擬出力KACTMI1 ,KACTMI3 が互いに等しく、かつ第2模擬出力KACTMI2 が第1模擬出力KACTMI1 よりも小さいばらつきパターンの場合、第1フィルタリング値KACT_Fcとして、1燃焼サイクルと等しい周期で、値0を中心に正負両側に比較的大きな振幅で変化する正弦波状の波形が得られた。さらに、第1フィルタリング値KACT_Fcは、第1および第3模擬出力KACTMI1 ,KACTMI3 が入力されるタイミングでは、正値になるとともに、第2模擬出力KACTMI2 が入力されるタイミングでは、負値になった。このように、第1フィルタリング値KACT_Fcは、気筒間の空燃比の大小関係を明確に表すとともに、その振幅の有無によって、気筒間の空燃比のばらつきの有無を表すことが確認された。
また、図33の(b)に示すように、第1模擬出力KACTMI1 <第2模擬出力KACTMI2 <第3模擬出力KACTMI3 のばらつきパターンの場合、第1フィルタリング値KACT_Fcとして、上述した場合と同様に1燃焼サイクルを1周期とした比較的大きな振幅の正弦波状の波形が得られた。また、第1フィルタリング値KACT_Fcは、第1模擬出力KACTMI1 が入力されるタイミングでは、負値になるとともに、第2模擬出力KACTMI2 が入力されるタイミングでは、0になり、第3模擬出力KACTMI3 が入力されるタイミングでは、正値になった。このように、この場合にも、第1フィルタリング値KACT_Fcは、気筒間の空燃比の大小関係を明確に表すとともに、その振幅の有無によって、気筒間の空燃比のばらつきの有無を表すことが確認された。また、第1フィルタリング値KACT_Fcは、その他のばらつきパターンにおいても、同様の特性を示した。
以上のように、第1フィルタリング値KACT_Fcは、いかなるばらつきパターンにおいても、気筒間の空燃比の大小関係を明確に表すとともに、その振幅の有無によって気筒間の空燃比のばらつきの有無を表す。このため、ばらつき補正部40では、算出用フィルタリング値決定部40a(補正係数固定手段)において、第1遅延要素23cから出力された第1フィルタリング値KACT_Fc(m)に基づき、算出用フィルタリング値KACT_Fi (n)が、前記算出用フィルタリング値決定部23hと同様に決定され、ばらつき補正係数算出部40b(補正用パラメータ算出手段、平均値算出手段、補正係数算出手段)に出力される。また、ばらつき補正係数算出部40bでは、入力された算出用フィルタリング値KACT_Fi (n)に基づいて、ばらつき補正係数KEAFi が、前記式(24)〜(26)により算出される。
以上のように、ばらつき補正係数KEAFi は、第1フィルタリング値KACT_Fcのみに基づいて算出される。したがって、この場合にも、気筒間の空燃比の大小関係を明確に表すとともに、振幅の有無により気筒間の空燃比のばらつきの有無を適切に表す第1フィルタリング値KACT_Fcに基づいて、ばらつき補正係数KEAFi を算出するので、前述した第1実施形態の効果を同様に得ることができる。
なお、4サイクルV型6気筒タイプのエンジンの場合、一対のシリンダバンクのそれぞれを直列3気筒型エンジンとみなし、各シリンダバンクの排気マニホルドの集合部にLAFセンサを設け、各LAFセンサの出力をサイクルフィルタ23aでフィルタリングすることにより得られたフィルタリング値に基づいて、上述したようにばらつき補正係数KEAFi を算出すればよい。
以上のように、LAFセンサの出力のうち、気筒間の空燃比のばらつきの有無を表す脈動周波数の個数は、気筒数によって異なり、また、同じ気筒数であっても、1燃焼サイクルが完結するのに必要な行程の数が異なれば、このばらつきの有無を表す脈動周波数の大きさは異なる。このため、ばらつきの有無を表す脈動周波数を実験により予め求め、求めた脈動周波数が複数の場合は、これらの脈動周波数をそれぞれ通過させるようにフィルタリングする複数のバンドパスフィルタを用意し、それらのフィルタリング値に基づいて前述したように算出したばらつき補正係数KEAFi を、各気筒の空燃比制御に用いることにより、前述した実施形態の効果を同様に得ることができる。
また、実施形態は、サイクルフィルタ23aおよび回転フィルタ23bをいずれもIIR型フィルタで構成した例であるが、これらのフィルタ23a,23bをFIR型フィルタで構成してもよい。その場合、FIR型フィルタは、IIR型フィルタと異なり、そのフィルタリング値を算出するのに、以前に算出したフィルタリング値を用いることがないので、その分、空燃比制御装置1の演算負荷を軽減することができる可能性がある。
さらに、実施形態は、ばらつき補正係数KEAFi を算出するためのばらつき補正係数暫定値keafi を、PID制御アルゴリズムを用いることにより算出した例であるが、これに代えて、他の制御アルゴリズムを用いることにより算出してもよい。例えば、図34の式(28)〜(30)に示す応答指定型制御アルゴリズム(スライディングモード制御アルゴリズムまたはバックステッピング制御アルゴリズム)を用いることにより、ばらつき補正係数暫定値keafi を算出してもよい。その場合、算出用フィルタリング値の4回前の値KACT_Fi (n−4)への今回値KACT_Fi (n)の収束挙動において、オーバーシュートが発生しないように、ばらつき補正係数KEAFi を算出することができる。それにより、ばらつき補正係数KEAFi がオーバーシュートや振動的挙動を示すのを回避することができるので、そのようなばらつき補正係数KEAFi の挙動に起因するフィードバック補正係数KSTRによる補正への影響を回避することができる。
また、基本燃料噴射量TIBSの算出方法は、吸気管内絶対圧PBAおよびエンジン回転数NEに応じて、マップ検索することにより算出する実施形態の例に限らず、例えば、図1に2点鎖線で示すように、吸入空気量Gairを検出するエアフローセンサ50を吸気管4に設けるとともに、このエアフローセンサ50により検出された吸入空気量Gairに応じて、テーブル検索することにより、基本燃料噴射量TIBSを算出してもよい。
さらに、実施形態では、STR22により、1番気筒#1のモデルパラメータベクトルθ1 に基づいて、フィードバック補正係数KSTRを算出したが、これに代えて、2〜4番気筒#2〜#4のモデルパラメータベクトルθ2〜4 のいずれか1つに基づいて、フィードバック補正係数KSTRを算出してもよい。また、実施形態は、本発明を、車両用のエンジン3の空燃比制御装置に適用した例であるが、本発明はこれに限らず、クランク軸を鉛直方向に配置した船外機などのような船舶推進機用エンジンの空燃比制御装置に適用しても良い。その他、本発明の趣旨の範囲内で、細部の構成を適宜、変更することが可能である。
本発明の第1実施形態による空燃比制御装置をエンジンとともに概略的に示す図である。 本発明の第1実施形態による空燃比制御装置のブロック図である。 STRによるフィードバック補正係数KSTRの算出アルゴリズムを説明するための数式を示す図である。 実施形態のSTRによるフィードバック補正係数KSTRの算出アルゴリズムの数式を示す図である。 LAFセンサの出力のパワースペクトルを、4つの気筒の空燃比が、(a)互いに等しい場合、(b)、(c)互いに異なるばらつきパターンでばらつている場合についてそれぞれ示す図である。 各気筒から排出された排気ガスが排気管の集合部で合流する様子を概略的に示す図である。 第1〜第4模擬出力KACTMI1 〜KACTMI4 を示す図である。 第1〜第4模擬出力KACTMI1 〜KACTMI4 、ならびに第1および第2フィルタリング値FIL1,FIL2を、第1〜第4模擬出力KACTMI1 〜KACTMI4 が互いに等しい場合について示す図である。 第1〜第4模擬出力KACTMI1 〜KACTMI4 、ならびに第1および第2フィルタリング値FIL1,FIL2を、第1〜第4模擬出力KACTMI1 〜KACTMI4 が2気筒ずれパターンで異なる場合について示す図である。 第1〜第4模擬出力KACTMI1 〜KACTMI4 、ならびに第1および第2フィルタリング値FIL1,FIL2を、第3模擬出力KACTMI3 のみが他の模擬出力よりも小さい場合について示す図である。 本発明の第1実施形態によるばらつき補正部のブロック図である。 サイクルフィルタおよび回転フィルタのゲイン特性を示す図である。 第1および第2フィルタリング値KACT_Fc(m),KACT_Fr(m)、ならびにばらつき補正係KEAFi などの算出アルゴリズムの数式を示す図である。 空燃比制御処理を示すフローチャートである。 図14のステップ6におけるモデルパラメータベクトルθi の算出処理を示すフローチャートである。 図14のステップ7におけるフィードバック補正係数KSTRの算出処理を示すフローチャートである。 フィルタリング値算出処理を示すフローチャートである。 図14のステップ9におけるばらつき補正係数KEAFi を算出する処理を示すフローチャートである。 各気筒の燃料供給系が正常に動作しているか否かの判定を行う処理を示すフローチャートである。 2気筒ずれパターンの場合における空燃比制御装置による空燃比制御の動作例を示すタイミングチャートである。 図20の第1比較例を示すタイミングチャートである。 図20の第2比較例を示すタイミングチャートである。 非2気筒ずれパターンの場合における空燃比制御装置による空燃比制御の動作例を示すタイミングチャートである。 1番気筒の燃料供給系が正常に動作していない場合における空燃比制御装置による空燃比制御の動作例を示すタイミングチャートである。 ばらつき補正係数KEAFi を算出する処理の変形例を示すフローチャートである。 本発明の第2実施形態によるばらつき補正部のブロック図である。 本発明の第2実施形態によるばらつき補正係数KEAFi を算出する処理を示すフローチャートである。 第1〜第4模擬出力KACTMI1 〜KACTMI4 、第1および第2フィルタリング値KACT_Fc(m),KACT_Fr(m)、ならびにこれらのフィルタリング値の和KACT_Fc(m)+KACT_Fr(m)を、第3模擬出力KACTMI3 のみが他の模擬出力よりも小さい場合について示す図である。 非2気筒ずれパターンの場合における第2実施形態の空燃比制御装置による空燃比制御の動作例を示すタイミングチャートである。 図29の第1比較例を示すタイミングチャートである。 図29の第2比較例を示すタイミングチャートである。 直列3気筒タイプのエンジンの空燃比制御装置に本発明を適用した場合におけるばらつき補正部を示すブロック図である。 第1〜第3模擬出力KACTMI1 〜KACTMI3 、および第1フィルタリング値KACT_Fcを、(a)第1模擬出力KACTMI1 =第3模擬出力KACTMI3 >第2模擬出力KACTMI2 の場合について示す図と、(b)第1模擬出力KACTMI1 <第2模擬出力KACTMI2 <第3模擬出力KACTMI3 の場合について示す図である。 ばらつき補正部によるばらつき補正係数暫定値keafi の算出アルゴリズムの他の例を示す図である。 本発明の第3実施形態によるばらつき補正部のブロック図である。 本発明の第3実施形態による空燃比制御処理を示すフローチャートである。 図36のステップ9Aにおけるばらつき補正係数KEAFi を算出する処理を示すフローチャートである。 KMEMi メモリを示す図である。 図36のステップ9Bにおける学習補正係数KMEMi を算出・記憶する処理を示すフローチャートである。
符号の説明
1 空燃比制御装置
2 ECU(バンドパスフィルタ、燃料量決定手段、複数のバンドパ
スフィルタ、フィルタ選択手段、加重平均値算出手段、
総和算出手段、サンプリング手段、むだ時間設定手段、
運転状態検出手段、補正用パラメータ算出手段、平均値
算出手段、補正係数算出手段、動作特性判定手段、補正
係数固定手段、学習補正係数算出手段、記憶手段)
2a EEPROM(記憶手段)
3 エンジン
#1〜#4 1〜4番気筒(複数の気筒)
6 インジェクタ(燃料供給系)
14 LAFセンサ(空燃比センサ)
23a サイクルフィルタ(バンドパスフィルタ、複数のバンドパスフィルタ)
23b 回転フィルタ(バンドパスフィルタ、複数のバンドパスフィルタ)
23g コントロールスイッチ(フィルタ選択手段)
23e 第1加重平均値算出部(加重平均値算出手段)
23f 第2加重平均値算出部(加重平均値算出手段)
23c 第1遅延要素(むだ時間設定手段)
23d 第2遅延要素(むだ時間設定手段)
11 吸気管内絶対圧センサ(運転状態検出手段)
13 クランク角センサ(クランク角度検出手段、運転状態検出手段)
23h 算出用フィルタリング値決定部(補正係数固定手段)
23i ばらつき補正係数算出部(補正用パラメータ算出手段、平均値算出手段、
補正係数算出手段)
30a 加算器(総和算出手段)
30b 算出用フィルタリング値決定部(補正係数固定手段)
30c ばらつき補正係数算出部(補正用パラメータ算出手段、平均値算出手段、
補正係数算出手段)
40a 算出用フィルタリング値決定部(補正係数固定手段)
40b ばらつき補正係数算出部(補正用パラメータ算出手段、平均値算出手段、
補正係数算出手段)
60a ばらつき補正係数算出部(補正係数算出手段)
60b 学習補正係数算出記憶部(学習補正係数算出手段、記憶手段)
TOUTi 最終燃料噴射量(供給燃料量)
KACT LAFセンサの出力(空燃比センサの検出信号)
fr1 第1周波数(所定周波数、互いに異なる複数の所定周波数)
fr2 第2周波数(所定周波数、互いに異なる複数の所定周波数)
KACT_Fc 第1フィルタリング値(バンドパスフィルタの出力、複数のバン
ドパスフィルタの出力)
KACT_Fr 第2フィルタリング値(バンドパスフィルタの出力、複数のバン
ドパスフィルタの出力)
KACT_Fcd 第1加重平均値(複数のバンドパスフィルタの出力の加重平均値)
KACT_Frd 第2加重平均値(複数のバンドパスフィルタの出力の加重平均値)
PBA 吸気管内絶対圧(内燃機関の運転状態)
NE エンジン回転数(内燃機関の運転状態)
keafi ばらつき補正係数暫定値(補正用パラメータ)
KEAFave 移動平均値(複数の補正用パラメータの平均値)
KEAFi ばらつき補正係数(補正係数)
KACT_THRESH しきい値
KMEMi 学習補正係数
KMEMIPi 第1検索値(記憶された学習補正係数KMEMi のうちの、検出された
現在の内燃機関の運転状態に対応する学習補正係数)
KMEMIPi ' 第2検索値(記憶手段に記憶された、補正係数を算出したときの
内燃機関の運転状態に対応する学習補正係数)

Claims (13)

  1. 複数の気筒に供給される供給燃料量を気筒ごとに制御することにより、前記複数の気筒にそれぞれ供給される混合気の空燃比を制御する内燃機関の空燃比制御装置であって、
    前記複数の気筒から排出され、合流した排気ガス中の空燃比を表す検出信号を出力する空燃比センサと、
    当該空燃比センサから出力された検出信号を、所定周波数域の成分を通過させるようにフィルタリングするバンドパスフィルタと、
    当該バンドパスフィルタの出力に応じて、当該バンドパスフィルタの出力の振幅が所定値になるように、前記供給燃料量を気筒ごとに決定する燃料量決定手段と、
    を備えることを特徴とする内燃機関の空燃比制御装置。
  2. 前記バンドパスフィルタは、互いに並列に設けられ、前記空燃比センサの検出信号を、互いに異なる複数の所定周波数域の成分をそれぞれ通過させるようにフィルタリングする複数のバンドパスフィルタで構成され、
    当該複数のバンドパスフィルタの少なくとも1つの出力に基づいて、当該複数のバンドパスフィルタの1つを選択するフィルタ選択手段をさらに備え、
    前記燃料量決定手段は、前記選択された1つのバンドパスフィルタの出力に応じて、当該バンドパスフィルタの出力の振幅が前記所定値になるように、前記供給燃料量を決定することを特徴とする、請求項1に記載の内燃機関の空燃比制御装置。
  3. 前記複数のバンドパスフィルタの出力の加重平均値を、当該加重平均値の前回値の絶対値および前記バンドパスフィルタの出力の今回値の絶対値を加重平均することによって、前記複数のバンドパスフィルタごとにそれぞれ算出する加重平均値算出手段をさらに備え、
    前記フィルタ選択手段は、前記算出された複数の加重平均値の少なくとも1つに基づいて、前記複数のバンドパスフィルタの1つを選択することを特徴とする、請求項2に記載の内燃機関の空燃比制御装置。
  4. 前記バンドパスフィルタは、互いに並列に設けられ、前記空燃比センサの検出信号を、互いに異なる複数の所定周波数域の成分をそれぞれ通過させるようにフィルタリングする複数のバンドパスフィルタで構成され、
    当該複数のバンドパスフィルタの出力の総和を算出する総和算出手段をさらに備え、
    前記燃料量決定手段は、前記算出された総和に応じて、当該総和が前記所定値になるように、前記供給燃料量を決定することを特徴とする、請求項1に記載の内燃機関の空燃比制御装置。
  5. 前記燃料量決定手段は、前記供給燃料量を所定周期ごとに決定し、
    前記所定周期以下の周期で、前記空燃比センサの検出信号をサンプリングし、前記バンドパスフィルタに出力するサンプリング手段をさらに備えることを特徴とする、請求項1に記載の内燃機関の空燃比制御装置。
  6. 前記内燃機関のクランク角度を検出するクランク角度検出手段と、
    前記複数の気筒から排出された排気ガスが前記空燃比センサに到達するまでのむだ時間を、前記クランク角度を基準として設定するむだ時間設定手段と、をさらに備え、
    前記燃料量決定手段は、前記気筒からの排気ガスの排出後、前記設定されたむだ時間が経過したタイミングで検出された前記空燃比センサの検出信号をフィルタリングした前記バンドパスフィルタの出力に応じて、当該気筒の前記供給燃料量を決定することを特徴とする、請求項1に記載の内燃機関の空燃比制御装置。
  7. 前記内燃機関の運転状態を検出する運転状態検出手段をさらに備え、
    前記むだ時間設定手段は、前記検出された内燃機関の運転状態に応じて、前記むだ時間を設定することを特徴とする、請求項6に記載の内燃機関の空燃比制御装置。
  8. 前記バンドパスフィルタの出力に基づいて、前記気筒間の空燃比のばらつきを補正するための補正用パラメータを気筒ごとに算出する補正用パラメータ算出手段と、
    当該気筒ごとに算出された複数の補正用パラメータの平均値を算出する平均値算出手段と、をさらに備え、
    前記補正用パラメータを前記算出された補正用パラメータの平均値で除算することにより、補正係数を気筒ごとに算出する補正係数算出手段と、をさらに備え、
    前記燃料量決定手段は、前記算出された補正係数に応じて、前記供給燃料量を決定することを特徴とする、請求項1に記載の内燃機関の空燃比制御装置。
  9. 前記補正係数に基づいて、前記複数の気筒に燃料を供給する燃料供給系の所定の動作特性に対するずれを気筒ごとに判定する動作特性判定手段をさらに備えることを特徴とする、請求項8に記載の内燃機関の空燃比制御装置。
  10. 前記バンドパスフィルタの出力に基づいて、前記気筒間の空燃比のばらつきを補正するための補正係数を算出する補正係数算出手段と、
    前記バンドパスフィルタの出力の絶対値が所定のしきい値よりも小さくなったときに、その直前に前記補正係数算出手段により算出された補正係数の値に前記補正係数を固定する補正係数固定手段と、をさらに備え、
    前記燃料量決定手段は、前記補正係数に応じて前記供給燃料量を決定することを特徴とする、請求項1に記載の内燃機関の空燃比制御装置。
  11. 前記バンドパスフィルタの出力の絶対値が所定のしきい値よりも小さいときに、前記バンドパスフィルタの出力に基づいて、前記気筒間の空燃比のばらつきを補正するための学習補正係数を算出する学習補正係数算出手段と、
    前記内燃機関の運転状態を検出する運転状態検出手段と、
    前記算出された学習補正係数を、前記検出された内燃機関の運転状態に対応させて記憶する記憶手段と、
    前記燃料量決定手段は、前記記憶された学習補正係数のうちの、前記検出された現在の内燃機関の運転状態に対応する前記学習補正係数に応じて、前記供給燃料量を決定することを特徴とする、請求項1に記載の内燃機関の空燃比制御装置。
  12. 前記記憶手段は、不揮発性メモリであることを特徴とする、請求項11に記載の内燃機関の空燃比制御装置。
  13. 前記学習補正係数算出手段は、
    前記バンドパスフィルタの出力に基づいて補正係数を算出する補正係数算出手段を備え、
    前記算出された補正係数と、前記記憶手段に記憶された、当該補正係数を算出したときの前記内燃機関の運転状態に対応する前記学習補正係数とに応じて、前記学習補正係数を算出することを特徴とする、請求項11または12に記載の内燃機関の空燃比制御装置。
JP2004264348A 2003-10-06 2004-09-10 内燃機関の空燃比制御装置 Expired - Fee Related JP4205030B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2004264348A JP4205030B2 (ja) 2003-10-06 2004-09-10 内燃機関の空燃比制御装置
EP04023817A EP1522702A3 (en) 2003-10-06 2004-10-06 Air-fuel ratio control system and method for an internal combustion engine
CA2484128A CA2484128C (en) 2003-10-06 2004-10-06 Air-fuel ratio control system and method for an internal combustion engine, and engine control unit
US10/958,553 US7024302B2 (en) 2003-10-06 2004-10-06 Air-fuel ratio control system and method for an internal combustion engine, and engine control unit

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2003347047 2003-10-06
JP2004264348A JP4205030B2 (ja) 2003-10-06 2004-09-10 内燃機関の空燃比制御装置

Publications (2)

Publication Number Publication Date
JP2005133714A true JP2005133714A (ja) 2005-05-26
JP4205030B2 JP4205030B2 (ja) 2009-01-07

Family

ID=34315745

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004264348A Expired - Fee Related JP4205030B2 (ja) 2003-10-06 2004-09-10 内燃機関の空燃比制御装置

Country Status (4)

Country Link
US (1) US7024302B2 (ja)
EP (1) EP1522702A3 (ja)
JP (1) JP4205030B2 (ja)
CA (1) CA2484128C (ja)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009270543A (ja) * 2008-05-09 2009-11-19 Honda Motor Co Ltd 気筒間の空燃比の不均衡を判断するための装置
JP2011144754A (ja) * 2010-01-14 2011-07-28 Honda Motor Co Ltd 気筒間の空燃比の不均衡を判断するための装置
WO2011152509A1 (ja) * 2010-06-04 2011-12-08 日立オートモティブシステムズ株式会社 エンジンの制御装置
JP2013047477A (ja) * 2011-08-29 2013-03-07 Honda Motor Co Ltd 内燃機関の空燃比制御装置
JP2013083200A (ja) * 2011-10-11 2013-05-09 Honda Motor Co Ltd 内燃機関の空燃比制御装置
US8478507B2 (en) 2010-04-21 2013-07-02 Toyota Jidosha Kabushiki Kaisha Control device for internal combustion engine
JP2013217295A (ja) * 2012-04-09 2013-10-24 Hitachi Automotive Systems Ltd エンジンの制御装置
JP2013253606A (ja) * 2013-07-31 2013-12-19 Honda Motor Co Ltd 気筒間の空燃比の不均衡を判断するための装置
US8725389B2 (en) 2011-03-03 2014-05-13 Toyota Jidosha Kabushiki Kaisha Control device for multi-cylinder internal combustion engine
US9279377B2 (en) 2012-02-01 2016-03-08 Toyota Jidosha Kabushiki Kaisha Air-fuel ratio imbalance determination apparatus and air-fuel ratio imbalance determination method

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4420288B2 (ja) * 2005-04-25 2010-02-24 株式会社デンソー 内燃機関の気筒別空燃比制御装置
US7497210B2 (en) * 2006-04-13 2009-03-03 Denso Corporation Air-fuel ratio detection apparatus of internal combustion engine
JP2008128160A (ja) * 2006-11-24 2008-06-05 Denso Corp 内燃機関の制御装置
US7937209B2 (en) * 2007-08-17 2011-05-03 GM Global Technology Operations LLC Air fuel ratio control system for internal combustion engines
KR20090126619A (ko) * 2008-06-04 2009-12-09 현대자동차주식회사 차량의 씨 디 에이 장치 진단시스템 및 그 방법
US7900615B2 (en) * 2008-10-01 2011-03-08 Gm Global Technology Operations, Inc. Air-fuel imbalance detection based on zero-phase filtering
US8583349B2 (en) * 2009-11-05 2013-11-12 GM Global Technology Operations LLC Systems and methods for diagnosing oxygen sensors and catalytic converters of exhaust systems
DE102011013392A1 (de) * 2011-03-09 2012-09-13 Daimler Ag Verfahren zur Regelung eines Verbrennungsmotors
JP5883140B2 (ja) * 2012-07-17 2016-03-09 本田技研工業株式会社 内燃機関の制御装置
US10030593B2 (en) * 2014-05-29 2018-07-24 Cummins Inc. System and method for detecting air fuel ratio imbalance
JP6662627B2 (ja) 2014-12-16 2020-03-11 ジーイー グローバル ソーシング エルエルシーGE Global Sourcing LLC エンジンのシリンダの失火を検出するシステム
US9874167B2 (en) 2016-06-08 2018-01-23 GM Global Technology Operations LLC Control systems and methods for air fuel imbalance and cylinder deactivation
DE102018209253B4 (de) * 2018-06-11 2020-06-18 Bayerische Motoren Werke Aktiengesellschaft Fourier-Diagnose eines Ladungswechselverhaltens eines Verbrennungsmotors
CN116414152B (zh) * 2023-06-12 2023-08-15 中国空气动力研究与发展中心空天技术研究所 再入飞行器横侧向快速机动控制方法、系统、终端及介质

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55148937A (en) * 1979-05-07 1980-11-19 Nissan Motor Co Ltd Controller of internal combustion engine
US4513721A (en) * 1981-08-11 1985-04-30 Nippon Soken, Inc. Air-fuel ratio control device for internal combustion engines
JPH01216047A (ja) * 1988-02-24 1989-08-30 Hitachi Ltd エンジンの空燃比制御方法および装置
US5404718A (en) * 1993-09-27 1995-04-11 Ford Motor Company Engine control system
US5908463A (en) * 1995-02-25 1999-06-01 Honda Giken Kogyo Kabushiki Kaisha Fuel metering control system for internal combustion engine
JP3683356B2 (ja) * 1996-08-08 2005-08-17 本田技研工業株式会社 内燃機関の空燃比制御装置
JP3340058B2 (ja) * 1997-08-29 2002-10-28 本田技研工業株式会社 多気筒エンジンの空燃比制御装置
US6382198B1 (en) * 2000-02-04 2002-05-07 Delphi Technologies, Inc. Individual cylinder air/fuel ratio control based on a single exhaust gas sensor
DE10062895A1 (de) * 2000-12-16 2002-06-27 Bosch Gmbh Robert Verfahren und Vorrichtung zur Steuerung einer Brennkraftmaschine
JP4184058B2 (ja) * 2002-12-05 2008-11-19 本田技研工業株式会社 制御装置

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009270543A (ja) * 2008-05-09 2009-11-19 Honda Motor Co Ltd 気筒間の空燃比の不均衡を判断するための装置
JP4700079B2 (ja) * 2008-05-09 2011-06-15 本田技研工業株式会社 気筒間の空燃比の不均衡を判断するための装置
JP2011144754A (ja) * 2010-01-14 2011-07-28 Honda Motor Co Ltd 気筒間の空燃比の不均衡を判断するための装置
US8478507B2 (en) 2010-04-21 2013-07-02 Toyota Jidosha Kabushiki Kaisha Control device for internal combustion engine
WO2011152509A1 (ja) * 2010-06-04 2011-12-08 日立オートモティブシステムズ株式会社 エンジンの制御装置
CN102918246A (zh) * 2010-06-04 2013-02-06 日立汽车系统株式会社 发动机的控制装置
US8725389B2 (en) 2011-03-03 2014-05-13 Toyota Jidosha Kabushiki Kaisha Control device for multi-cylinder internal combustion engine
JP2013047477A (ja) * 2011-08-29 2013-03-07 Honda Motor Co Ltd 内燃機関の空燃比制御装置
JP2013083200A (ja) * 2011-10-11 2013-05-09 Honda Motor Co Ltd 内燃機関の空燃比制御装置
US9279377B2 (en) 2012-02-01 2016-03-08 Toyota Jidosha Kabushiki Kaisha Air-fuel ratio imbalance determination apparatus and air-fuel ratio imbalance determination method
JP2013217295A (ja) * 2012-04-09 2013-10-24 Hitachi Automotive Systems Ltd エンジンの制御装置
JP2013253606A (ja) * 2013-07-31 2013-12-19 Honda Motor Co Ltd 気筒間の空燃比の不均衡を判断するための装置

Also Published As

Publication number Publication date
CA2484128C (en) 2012-07-03
JP4205030B2 (ja) 2009-01-07
US7024302B2 (en) 2006-04-04
US20050075781A1 (en) 2005-04-07
EP1522702A2 (en) 2005-04-13
EP1522702A3 (en) 2010-05-26
CA2484128A1 (en) 2005-04-06

Similar Documents

Publication Publication Date Title
JP4205030B2 (ja) 内燃機関の空燃比制御装置
JP3922980B2 (ja) 制御装置
JP3904923B2 (ja) 制御装置
JP4184058B2 (ja) 制御装置
JP3998136B2 (ja) 内燃機関の空燃比制御装置
JP2004028029A (ja) 触媒劣化判定装置
JPH109019A (ja) 内燃機関の空燃比制御装置
JP4364777B2 (ja) 内燃機関の空燃比制御装置
JP4430270B2 (ja) プラントの制御装置及び内燃機関の空燃比制御装置
JP3880861B2 (ja) 内燃機関の空燃比制御装置
US6477458B1 (en) Air-fuel ratio control apparatus for internal combustion engine
US20110314795A1 (en) Air-fuel ratio control system for internal combustion engine
JP2004100652A (ja) 制御装置
JPH03179147A (ja) 内燃機関の空燃比学習制御装置
JP4277958B2 (ja) 内燃機関の空燃比制御装置
JP3549144B2 (ja) 内燃機関の空燃比制御装置
JP5297509B2 (ja) 内燃機関の空燃比制御装置
US8726637B2 (en) Air-fuel ratio control system for internal combustion engine
JP5297508B2 (ja) 内燃機関の空燃比制御装置
JP4240325B2 (ja) 制御装置
US9057337B2 (en) Air-fuel ratio control system for internal combustion engine
JP4368928B2 (ja) 内燃機関の制御装置
JP2759917B2 (ja) 内燃エンジンの空燃比制御方法
JP2008106712A (ja) 内燃機関の空燃比制御装置
JP3742048B2 (ja) 内燃機関の空燃比制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050727

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071012

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071023

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080513

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080711

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: 20080916

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: 20081015

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

Free format text: PAYMENT UNTIL: 20111024

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20111024

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20121024

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20131024

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees