(57)【要約】【課題】  空燃比が目標空燃比と一致するように上流側空燃比センサの出力値に基づいて空燃比をフィードバック制御する空燃比制御装置において、目標空燃比が急変しても迅速に空燃比を目標空燃比に収束させること。【解決手段】  この装置は、燃料の噴射指示からその燃料の燃焼に基づく排ガスが上流側空燃比センサ６６に到達するまでの時間である無駄時間だけ前の上流側目標空燃比abyfrに相当する値に時定数をτとするローパスフィルタ処理を施した値（Fcrlow(k−N)）と、現時点の上流側空燃比センサ６６の出力値Vabyfsに相当する値（Fc(k−N)）とに基づいて、空燃比をフィードバック制御するための上流側フィードバック補正値DFiを求める。このローパスフィルタ処理の時定数τは上流側空燃比センサ６６の応答遅れの時定数に等しい値に設定されている。【選択図】  図４
2007162565.tif 000002
【特許請求の範囲】
【請求項１】
内燃機関の排気通路に配設された触媒と、
前記触媒よりも上流の前記排気通路に配設された上流側空燃比センサと、
指示に応じて燃料を噴射する燃料噴射手段と、
を備えた内燃機関に適用される内燃機関の空燃比制御装置であって、
前記内燃機関の運転状態に応じて変化する目標空燃比を決定する目標空燃比決定手段と、
前記決定された目標空燃比を得るための燃料の量である基本燃料噴射量を取得する基本燃料噴射量取得手段と、
燃料の噴射指示から前記燃料の燃焼に基づく排ガスが前記上流側空燃比センサに到達するまでの時間である無駄時間だけ前の時点で決定されていた前記目標空燃比に相当する値を取得する第１遅延処理手段と、
前記第１遅延処理手段により取得された値にローパスフィルタ処理を施した値を取得する第２遅延処理手段と、
前記第２遅延処理手段により取得された値と、前記上流側空燃比センサの出力値とに基づいて前記内燃機関に供給される混合気の空燃比をフィードバック制御するためのフィードバック補正値である上流側フィードバック補正値を算出する上流側フィードバック補正値算出手段と、
前記取得された基本燃料噴射量と、前記算出された上流側フィードバック補正値とに基づいて燃料噴射量を算出する燃料噴射量算出手段と、
前記算出された燃料噴射量の燃料の噴射指示を前記燃料噴射手段に対して行うことで前記内燃機関に供給される混合気の空燃比をフィードバック制御する空燃比制御手段と、
を備えた内燃機関の空燃比制御装置。
【請求項２】
請求項１に記載の内燃機関の空燃比制御装置において、
前記第１遅延処理手段は、
前記内燃機関の運転状態に応じて前記無駄時間を変更するように構成された内燃機関の空燃比制御装置。
【請求項３】
請求項２に記載の内燃機関の空燃比制御装置において、
前記第１遅延処理手段は、
前記内燃機関の運転状態として、
前記内燃機関の運転速度と、前記内燃機関の燃焼室に吸入された空気量とを使用するように構成された内燃機関の空燃比制御装置。
【請求項４】
請求項２に記載の内燃機関の空燃比制御装置において、
前記第１遅延処理手段は、
前記無駄時間だけ前の時点として、
前記無駄時間に相当する燃料噴射指示の回数だけ前における燃料噴射指示の時点を使用するとともに、
前記無駄時間に相当する燃料噴射指示の回数を前記内燃機関の運転速度と、前記内燃機関の燃焼室に吸入された空気量とに基づいて決定するように構成された内燃機関の空燃比制御装置。
【請求項５】
請求項２に記載の内燃機関の空燃比制御装置において、
前記第１遅延処理手段は、
前記無駄時間だけ前の時点として、
前記無駄時間に相当する燃料噴射指示の回数だけ前における燃料噴射指示の時点を使用するとともに、
前記無駄時間に相当する燃料噴射指示の回数を前記内燃機関の燃焼室に吸入された空気量のみに基づいて決定するように構成された内燃機関の空燃比制御装置。
【請求項６】
請求項１乃至請求項５の何れか一項に記載の内燃機関の空燃比制御装置において、
前記第２遅延処理手段は、
前記内燃機関の運転状態に応じて前記ローパスフィルタ処理の応答性に関するパラメータを変更するように構成された内燃機関の空燃比制御装置。
【請求項７】
請求項６に記載の内燃機関の空燃比制御装置において、
前記第２遅延処理手段は、
前記内燃機関の運転状態として、
前記内燃機関の運転速度と、前記内燃機関の燃焼室に吸入された空気量とを使用するように構成された内燃機関の空燃比制御装置。
【請求項８】
請求項６に記載の内燃機関の空燃比制御装置において、
前記第２遅延処理手段は、
前記内燃機関の運転状態として、
前記内燃機関の燃焼室に吸入された空気量のみを使用するように構成された内燃機関の空燃比制御装置。
【請求項９】
請求項１乃至請求項８の何れか一項に記載の内燃機関の空燃比制御装置において、
前記第２遅延処理手段は、
前記ローパスフィルタ処理として、
２次遅れ処理を使用するように構成された内燃機関の空燃比制御装置。
【請求項１０】
請求項１乃至請求項８の何れか一項に記載の内燃機関の空燃比制御装置において、
前記第２遅延処理手段は、
前記ローパスフィルタ処理として、
１次遅れ処理を使用するように構成された内燃機関の空燃比制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、排気通路に配設された触媒の上流側の排気通路に上流側空燃比センサを備えた内燃機関に適用され、上流側空燃比センサの出力値に基づいて内燃機関に供給される混合気の空燃比（以下、「空燃比」と称呼する。）をフィードバック制御する内燃機関の空燃比制御装置に関する。
【背景技術】
【０００２】
従来より、この種の空燃比制御装置として、例えば特許文献１に開示されたものが知られている。この内燃機関（以下、単に「機関」と称呼することもある。）の空燃比制御装置においては、機関の運転状態に基づいて目標空燃比が決定される。この目標空燃比と上流側空燃比センサの出力値に相当する空燃比（検出空燃比）との偏差に相当する値（具体的には、筒内吸入空気量を目標空燃比で除した値（目標筒内燃料供給量）と筒内吸入空気量を検出空燃比で除した値（検出筒内燃料供給量）との偏差）に基づいて上流側フィードバック補正値が算出される。そして、上流側フィードバック補正値と、目標空燃比を得るための燃料の量である基本燃料噴射量とに基づいて燃料噴射量が算出され、燃料噴射量の燃料の噴射指示がインジェクタに対して行われることで、空燃比がフィードバック制御されるようになっている。
【特許文献１】特開２００４−１８３５８５号公報
【０００３】
ところで、目標空燃比が変化した場合、基本燃料噴射量が変化することで燃料噴射量（従って、空燃比）が変化する。ここで、一般に、燃料の噴射指示から、その燃料の燃焼に基づく排ガスが上流側空燃比センサに到達するまでには所定の時間（以下、「無駄時間」と称呼する。）が必要である。従って、空燃比の変化は、無駄時間だけ遅れて検出空燃比の変化として現れる。以上より、目標空燃比が変化した場合、無駄時間だけ遅れて検出空燃比（従って、検出筒内燃料供給量）が変化する。
【０００４】
一方、目標空燃比が変化した場合、上記目標筒内燃料供給量は直ちに変化する。このため、目標筒内燃料供給量の変化のタイミングと、検出筒内燃料供給量の変化のタイミングとが一致しない。従って、上記偏差として、目標筒内燃料供給量そのもの（現在値）と検出筒内燃料供給量との偏差を使用すると、上記偏差（従って、上流側フィードバック補正値）が一時的に大きくなり、空燃比に比較的大きい荒れが発生する場合がある。このことは、迅速に空燃比を目標空燃比に収束させる上で好ましくない。
【０００５】
そこで、上記特許文献１に記載された空燃比制御装置においては、上記偏差（従って、上流側フィードバック補正値）を算出する際、目標筒内燃料供給量の変化のタイミングと検出筒内燃料供給量の変化のタイミングとが一致するように、目標筒内燃料供給量そのものに代えて、無駄時間だけ前の時点における目標筒内燃料供給量が用いられるようになっている。
【０００６】
ところが、上記特許文献１に記載された空燃比制御装置ではなお、以下の問題が発生する。いま、目標空燃比が急激に変化する場合（例えば、ステップ状に変化する場合）を考える。この場合、目標筒内燃料供給量は、目標空燃比が急激に変化した時点から無駄時間だけ後に急激に変化する。これに対し、上流側空燃比センサが応答遅れを有するため、検出筒内燃料供給量は、目標空燃比が急激に変化した時点から無駄時間だけ後に応答遅れを伴って比較的緩やかに変化する。
【０００７】
即ち、目標筒内燃料供給量の変化のタイミングと検出筒内燃料供給量の変化のタイミングとが一致するが、その変化のタイミング以降、それぞれの変化の遅れの程度が大きく異なる。このため、上流側フィードバック補正値がなお一時的に大きくなる場合があり、この結果、迅速に空燃比を目標空燃比に収束させることが困難であるという問題がある。
【発明の開示】
【０００８】
従って、本発明の目的は、空燃比が目標空燃比と一致するように目標空燃比と上流側空燃比センサの出力値とに基づいて燃料噴射量を算出することで空燃比をフィードバック制御する空燃比制御装置において、目標空燃比が急激に変化した場合であっても、迅速に空燃比を目標空燃比に収束させることができるものを提供することにある。
【０００９】
本発明に係る空燃比制御装置は、触媒と、上流側空燃比センサと、指示に応じて燃料を噴射する燃料噴射手段（例えば、インジェクタ）とを備えた内燃機関に適用される。
【００１０】
本発明に係る空燃比制御装置の特徴は、前記目標空燃比を決定する目標空燃比決定手段と、前記基本燃料噴射量を取得する基本燃料噴射量取得手段と、前記無駄時間だけ前の時点で決定されていた前記目標空燃比に相当する値を取得する第１遅延処理手段と、前記第１遅延処理手段により取得された値にローパスフィルタ処理を施した値を取得する第２遅延処理手段と、前記第２遅延処理手段により取得された値と前記上流側空燃比センサの出力値とに基づいて前記上流側フィードバック補正値を算出する上流側フィードバック補正値算出手段と、前記燃料噴射量を算出する燃料噴射量算出手段と、前記算出された燃料噴射量の燃料の噴射指示を前記燃料噴射手段に対して行うことで前記内燃機関に供給される混合気の空燃比をフィードバック制御する空燃比制御手段とを備えたことにある。
【００１１】
ここにおいて、目標空燃比は、燃焼室への燃料供給の停止が解除された直後等の特殊な場合を除いて理論空燃比に設定されることが好適である。「目標空燃比に相当する値」は、例えば、目標空燃比そのもの、目標空燃比に相当する上流側空燃比センサの出力値、筒内吸入空気量を目標空燃比で除した値（目標筒内燃料供給量）である。
【００１２】
また、上流側フィードバック補正値算出手段は、第２遅延処理手段により取得された値と上流側空燃比センサの出力値に相当する値との偏差に基づいて前記上流側フィードバック補正値を算出するように構成されることが好適である。
【００１３】
ここで、「第２遅延処理手段により取得された値と上流側空燃比センサの出力値に相当する値との偏差」は、例えば、無駄時間だけ前の時点で決定されていた目標空燃比に相当する上流側空燃比センサの出力値にローパスフィルタ処理を施した値と上流側空燃比センサの出力値との偏差、無駄時間だけ前の時点で決定されていた目標空燃比にローパスフィルタ処理を施した値と上記検出空燃比との偏差、筒内吸入空気量を無駄時間だけ前の時点で決定されていた目標空燃比で除した値である無駄時間だけ前の時点における目標筒内燃料供給量にローパスフィルタ処理を施した値と筒内吸入空気量を上記検出空燃比で除した値である検出筒内燃料供給量との偏差であって、これらに限定されない。
【００１４】
上記構成によれば、上流側フィードバック補正値の算出に際し、第２遅延処理手段により取得された値（例えば、目標筒内燃料供給量）と上流側空燃比センサの出力値に相当する値（例えば、検出筒内燃料供給量）とが使用される。この第２遅延処理手段により取得された値は、無駄時間だけ前の目標空燃比に相当する値にローパスフィルタ処理が施された値である。
【００１５】
従って、上記特許文献１に記載された装置と同様、第２遅延処理手段により取得された値の変化のタイミングと上流側空燃比センサの出力値に相当する値の変化のタイミングとが一致し得る。加えて、ローパスフィルタ処理による応答遅れの程度を上流側空燃比センサの応答遅れの程度に合わすことにより、上記変化のタイミング以降における第２遅延処理手段により取得された値の変化の遅れの程度と上流側空燃比センサの出力値に相当する値の変化の遅れの程度とを合わすことができる。従って、目標空燃比が急激に変化する場合（例えば、ステップ状に変化する場合）であっても、上流側フィードバック補正値が一時的に大きくなることを抑制し得、この結果、迅速に空燃比を目標空燃比に収束させることができる。
【００１６】
上記本発明に係る空燃比制御装置においては、前記第１遅延処理手段は、前記内燃機関の運転状態に応じて前記無駄時間を変更するように構成されると好適である。一般に、無駄時間は、機関の運転状態に応じて変化する。従って、上記構成によれば、機関の運転状態にかかわらず無駄時間を正確に取得することができるから、第２遅延処理手段により取得された値の変化のタイミングを上流側空燃比センサの出力値に相当する値の変化のタイミングと精度良く一致させることができる。
【００１７】
更には、前記第１遅延処理手段は、前記内燃機関の運転状態として、前記内燃機関の運転速度と、前記内燃機関の燃焼室に吸入された空気量（筒内吸入空気量）とを使用するように構成されると好適である。機関の運転状態の中で無駄時間に大きく影響を与える因子として、機関の運転速度、及び筒内吸入空気量が挙げられる。従って、上記構成によれば、無駄時間をより精度良く取得することができる。
【００１８】
また、前記第１遅延処理手段は、前記無駄時間だけ前の時点として、前記無駄時間に相当する燃料噴射指示の回数だけ前における燃料噴射指示の時点を使用するとともに、前記無駄時間に相当する燃料噴射指示の回数を前記内燃機関の運転速度と前記吸入空気量とに基づいて決定するように構成されることが好適である。
【００１９】
上述のごとく、無駄時間は、機関の運転速度、及び筒内吸入空気量に大きく影響を受ける。一方、無駄時間の間に亘る燃料噴射指示の回数（燃料噴射の回数）は、筒内吸入空気量には大きく影響を受けるものの機関の運転速度には殆ど影響されない。従って、上記構成によれば、機関の運転速度に検出誤差が含まれていても、同検出誤差に起因して無駄時間に相当する燃料噴射指示の回数に含まれる誤差（従って、無駄時間に含まれる誤差）が増大することを抑制することができる。
【００２０】
このように、前記無駄時間だけ前の時点として前記無駄時間に相当する燃料噴射指示の回数だけ前における燃料噴射指示の時点が使用される場合、前記第１遅延処理手段は、前記無駄時間に相当する燃料噴射指示の回数を前記筒内吸入空気量のみに基づいて決定するように構成されてもよい。
【００２１】
これによれば、無駄時間に相当する燃料噴射指示の回数に大きく影響を与える単一の因子を引数とする同回数を決定するためのテーブル（マップ）等を作製できる。従って、上記テーブル等の作製に要する労力を軽減することができるとともに、同テーブル等の検索に要するＣＰＵの負荷を小さくすることができる。
【００２２】
上記本発明に係る空燃比制御装置においては、前記第２遅延処理手段は、前記内燃機関の運転状態に応じて前記ローパスフィルタ処理の応答性に関するパラメータ（例えば、ローパスフィルタ処理の時定数）を変更するように構成されることが好適である。一般に、上流側空燃比センサの応答遅れの程度は、機関の運転状態に応じて変化する。従って、上記構成によれば、機関の運転状態にかかわらず、ローパスフィルタ処理による応答遅れの程度を上流側空燃比センサの応答遅れの程度に合わすことができる。この結果、目標空燃比の変化により第２遅延処理手段により取得された値と上流側空燃比センサの出力値に相当する値が変化するタイミング以降におけるそれぞれの変化の遅れの程度を、機関の運転状態にかかわらず一致させることができる。
【００２３】
この場合、前記第２遅延処理手段は、前記内燃機関の運転状態として、前記内燃機関の運転速度と、前記筒内吸入空気量とを使用するように構成されると好適である。上流側空燃比センサの出力値の変化の応答遅れの程度は、筒内吸入空気量に大きく影響を受けるとともに、機関の運転速度にも影響を受ける。従って、上記構成によれば、ローパスフィルタ処理による応答遅れの程度を上流側空燃比センサの応答遅れの程度と一致させるためのローパスフィルタ処理の応答性に関するパラメータを精度良く決定することができる。
【００２４】
また、前記第２遅延処理手段は、前記内燃機関の運転状態として、前記筒内吸入空気量のみを使用するように構成されてもよい。これによれば、上流側空燃比センサの応答遅れの程度に大きく影響を与える単一の因子を引数とするローパスフィルタ処理の応答性に関するパラメータを決定するためのテーブル（マップ）等を作製できる。従って、上記テーブル等の作製に要する労力を軽減することができるとともに、同テーブル等の検索に要するＣＰＵの負荷を小さくすることができる。
【００２５】
また、前記第２遅延処理手段は、前記ローパスフィルタ処理として、２次遅れ処理を使用するように構成されることが好適である。これにより、第２遅延処理手段により取得された値の変化の遅れの特性を、目標空燃比が変化した場合（従って、燃料噴射量が変化した場合）における上流側空燃比センサの出力値の変化の遅れの特性に精度良く近づけることができる。
【００２６】
また、前記第２遅延処理手段は、前記ローパスフィルタ処理として、１次遅れ処理を使用するように構成されることが好適である。これにより、適合を要するローパスフィルタ処理の応答性に関するパラメータの数が、２次遅れ処理を使用する場合より減少する。従って、上記パラメータの適合の労力が軽減されるとともに、上記パラメータの値の決定に要するＣＰＵの負荷を小さくすることができる。
【発明を実施するための最良の形態】
【００２７】
以下、本発明による内燃機関の空燃比制御装置の実施形態について図面を参照しつつ説明する。
【００２８】
図１は、本発明の実施形態による空燃比制御装置を火花点火式多気筒（４気筒）内燃機関１０に適用したシステムの概略構成を示している。この内燃機関１０は、シリンダブロック、シリンダブロックロワーケース、及びオイルパン等を含むシリンダブロック部２０と、シリンダブロック部２０の上に固定されるシリンダヘッド部３０と、シリンダブロック部２０にガソリン混合気を供給するための吸気系統４０と、シリンダブロック部２０からの排気ガスを外部に放出するための排気系統５０とを含んでいる。
【００２９】
シリンダブロック部２０は、シリンダ２１、ピストン２２、コンロッド２３、及びクランク軸２４を含んでいる。ピストン２２はシリンダ２１内を往復動し、ピストン２２の往復動がコンロッド２３を介してクランク軸２４に伝達され、これによりクランク軸２４が回転するようになっている。シリンダ２１とピストン２２のヘッドは、シリンダヘッド部３０とともに燃焼室２５を形成している。
【００３０】
シリンダヘッド部３０は、燃焼室２５に連通した吸気ポート３１、吸気ポート３１を開閉する吸気弁３２、吸気弁３２を駆動するインテークカムシャフトを含むとともにインテークカムシャフトの位相角を連続的に変更する可変吸気タイミング装置３３、可変吸気タイミング装置３３のアクチュエータ３３ａ、燃焼室２５に連通した排気ポート３４、排気ポート３４を開閉する排気弁３５、排気弁３５を駆動するエキゾーストカムシャフト３６、点火プラグ３７、点火プラグ３７に与える高電圧を発生するイグニッションコイルを含むイグナイタ３８、及び燃料を吸気ポート３１内に噴射するインジェクタ（燃料噴射手段）３９を備えている。
【００３１】
吸気系統４０は、吸気ポート３１に連通し吸気ポート３１とともに吸気通路を形成するインテークマニホールドを含む吸気管４１、吸気管４１の端部に設けられたエアフィルタ４２、吸気管４１内にあって吸気通路の開口断面積を可変とするスロットル弁４３、及びスロットル弁駆動手段を構成するＤＣモータからなるスロットル弁アクチュエータ４３ａを備えている。
【００３２】
排気系統５０は、排気ポート３４に連通したエキゾーストマニホールド５１、エキゾーストマニホールド５１（実際には、各排気ポート３４に連通した各々のエキゾーストマニホールド５１が集合した集合部）に接続されたエキゾーストパイプ（排気管）５２、エキゾーストパイプ５２に配設（介装）された上流側の三元触媒５３（上流側触媒コンバータ、又はスタート・キャタリティック・コンバータとも云うが、以下「第１触媒５３」と称呼する。）、及びこの第１触媒５３の下流のエキゾーストパイプ５２に配設（介装）された下流側の三元触媒５４（車両のフロア下方に配設されるため、アンダ・フロア・キャタリティック・コンバータとも云うが、以下「第２触媒５４」と称呼する。）を備えている。排気ポート３４、エキゾーストマニホールド５１、及びエキゾーストパイプ５２は、排気通路を構成している。
【００３３】
一方、このシステムは、熱線式エアフローメータ６１、スロットルポジションセンサ６２、カムポジションセンサ６３、クランクポジションセンサ６４、水温センサ６５、第１触媒５３の上流の排気通路（本例では、上記各々のエキゾーストマニホールド５１が集合した集合部）に配設された空燃比センサ６６（以下、「上流側空燃比センサ６６」と称呼する。）、第１触媒５３の下流であって第２触媒５４の上流の排気通路に配設された空燃比センサ６７（以下、「下流側空燃比センサ６７」と称呼する。）、及びアクセル開度センサ６８を備えている。
【００３４】
熱線式エアフローメータ６１は、吸気管４１内を流れる吸入空気の単位時間あたりの質量流量を検出し、質量流量Gaを表す信号を出力するようになっている。スロットルポジションセンサ６２は、スロットル弁４３の開度を検出し、スロットル弁開度TAを表す信号を出力するようになっている。カムポジションセンサ６３は、インテークカムシャフトが９０°回転する毎に（即ち、クランク軸２４が１８０°回転する毎に）一つのパルスを有する信号（Ｇ２信号）を発生するようになっている。クランクポジションセンサ６４は、クランク軸２４が１０°回転する毎に幅狭のパルスを有するとともにクランク軸２４が３６０°回転する毎に幅広のパルスを有する信号を出力するようになっている。この信号は、運転速度NEを表す。水温センサ６５は、内燃機関１０の冷却水の温度を検出し、冷却水温THWを表す信号を出力するようになっている。
【００３５】
上流側空燃比センサ６６は、限界電流式の酸素濃度センサであり、図２に示したように、空燃比Ａ／Ｆに応じた電流を出力し、この電流に応じた電圧である出力値Vabyfsを出力するようになっていて、特に、空燃比が理論空燃比であるときには出力値Vabyfsは値Vstoichになる。図２から明らかなように、上流側空燃比センサ６６によれば、広範囲にわたる空燃比Ａ／Ｆを精度良く検出することができる。
【００３６】
下流側空燃比センサ６７は、起電力式（濃淡電池式）の酸素濃度センサであり、図３に示したように、理論空燃比近傍において急変する電圧である出力値Voxsを出力するようになっている。より具体的に述べると、下流側空燃比センサ６７は、空燃比が理論空燃比よりもリーンのときは略０．１（Ｖ）、空燃比が理論空燃比よりもリッチのときは略０．９（Ｖ）、及び空燃比が理論空燃比のときは０．５（Ｖ）の電圧を出力するようになっている。アクセル開度センサ６８は、運転者によって操作されるアクセルペダル８１の操作量を検出し、アクセルペダル８１の操作量Accpを表す信号を出力するようになっている。
【００３７】
電気制御装置７０は、互いにバスで接続されたＣＰＵ７１、ＣＰＵ７１が実行するルーチン（プログラム）、テーブル（ルックアップテーブル、マップ）、及び定数等を予め記憶したＲＯＭ７２、ＣＰＵ７１が必要に応じてデータを一時的に格納するＲＡＭ７３、電源が投入された状態でデータを格納するとともに格納したデータを電源が遮断されている間も保持するバックアップＲＡＭ７４、並びにＡＤコンバータを含むインターフェース７５等からなるマイクロコンピュータである。インターフェース７５は、前記センサ６１〜６８と接続され、ＣＰＵ７１にセンサ６１〜６８からの信号を供給するとともに、ＣＰＵ７１の指示に応じて可変吸気タイミング装置３３のアクチュエータ３３ａ、イグナイタ３８、インジェクタ３９、及びスロットル弁アクチュエータ４３ａに駆動信号を送出するようになっている。
【００３８】
（空燃比フィードバック制御の概要）
次に、上記のように構成された空燃比制御装置が行う空燃比のフィードバック制御の概要について説明する。
【００３９】
この空燃比制御装置は、上流側空燃比センサ６６の出力値Vabyfsが後述する上流側目標空燃比abyfr(k)に対応する上流側空燃比センサ６６の出力値に一致するように、上流側空燃比センサ６６の出力値Vabyfs（即ち、第１触媒５３上流の空燃比）に応じて（本例では、下流側空燃比センサ６７の出力値Voxs（即ち、第１触媒５３下流の空燃比）にも応じて）空燃比をフィードバック制御する。
【００４０】
より具体的に述べると、この空燃比制御装置（以下、「本装置」と云うこともある。）は、機能ブロック図である図４に示したように、Ａ１〜Ａ１５の各機能ブロックを含んで構成されている。以下、図４を参照しながら各機能ブロックについて説明していく。
【００４１】
<基本燃料噴射量の算出>
先ず、筒内吸入空気量算出手段Ａ１は、エアフローメータ６１が計測している吸入空気流量Gaと、クランクポジションセンサ６４の出力に基づいて得られる運転速度NEと、ＲＯＭ７２が記憶しているテーブルMapMcとに基づき、吸気行程を迎える気筒の今回の吸入空気量である筒内吸入空気量Mc(k)を求める。ここで、添え字の（k）は、今回の吸気行程に対する値であることを示している（以下、他の物理量についても同様。）。筒内吸入空気量Mcは、各気筒の吸気行程に対応されながらＲＡＭ７３に記憶されていく。
【００４２】
上流側目標空燃比設定手段Ａ２は、内燃機関１０の運転状態である運転速度NE、及びスロットル弁開度TA等に基づいて上流側目標空燃比abyfr(k)を決定する。この上流側目標空燃比abyfr(k)は、例えば、内燃機関１０の暖機終了後においては、燃焼室２５への燃料供給の停止（いわゆる、フューエルカット）が解除された直後、第１、第２触媒５３、５４の最大酸素吸蔵量を取得するために空燃比を理論空燃比からリッチ側、及びリーン側に交互に変動させる場合（以下、「アクティブ空燃比制御を行う場合」と称呼する。）等の特殊な場合を除き理論空燃比に設定されている。なお、アクティブ空燃比制御については、例えば、特開平５−１３３２６４号広報等に記載されているので、ここではその詳細な説明を省略する。上流側目標空燃比abyfrは、各気筒の吸気行程に対応されながらＲＡＭ７３に記憶されていく。この上流側目標空燃比設定手段Ａ２は、目標空燃比決定手段に相当する。
【００４３】
基本燃料噴射量算出手段Ａ３は、筒内吸入空気量算出手段Ａ１により求められた筒内吸入空気量Mc(k)を上流側目標空燃比設定手段Ａ２により設定された上流側目標空燃比abyfr(k)で除することにより、空燃比を上流側目標空燃比abyfr(k)とするための今回の吸気行程に対する目標筒内燃料供給量Fcr(k)（即ち、基本燃料噴射量Fbase）を求める。目標筒内燃料供給量Fcrは、各気筒の吸気行程に対応されながらＲＡＭ７３に記憶されていく。この基本燃料噴射量算出手段Ａ３は、基本燃料噴射量取得手段に相当する。
【００４４】
このようにして、本装置は、筒内吸入空気量算出手段Ａ１、上流側目標空燃比設定手段Ａ２、基本燃料噴射量算出手段Ａ３を利用して、目標筒内燃料供給量Fcr(k)（即ち、基本燃料噴射量Fbase）を求める。
【００４５】
<燃料噴射量の算出>
燃料噴射量算出手段Ａ４は、基本燃料噴射量算出手段Ａ３により求められた基本燃料噴射量Fbaseに、後述する上流側フィードバック補正値DFiを加えることで、下記(1)式に基づいて燃料噴射量Fiを求める。この燃料噴射量算出手段Ａ４は、燃料噴射量算出手段に相当する。
Fi＝Fbase＋DFi  ・・・(1)
【００４６】
このようにして、本装置は、燃料噴射量算出手段Ａ４により、基本燃料噴射量Fbaseを上流側フィードバック補正値DFiに基づいて補正することにより得られる燃料噴射量Fiの燃料の噴射指示を今回の吸気行程を迎える気筒についてのインジェクタ３９に対して行う。このように燃料の噴射指示を行う手段が空燃比制御手段に相当する。
【００４７】
<下流側フィードバック補正値の算出>
先ず、下流側目標値設定手段Ａ５は、上述した上流側目標空燃比設定手段Ａ２と同様、内燃機関１０の運転状態である運転速度NE、及びスロットル弁開度TA等に基づいて下流側目標値Voxsrefを決定する。この下流側目標値Voxsrefは、本例では、下流側目標値Voxsrefに対応する空燃比が上述した上流側目標空燃比abyfr(k)と常時一致するように設定される。
【００４８】
出力偏差量算出手段Ａ６は、下記(2)式に基づいて、下流側目標値設定手段Ａ５により設定されている現時点（具体的には、今回のFiの噴射指示開始時点）での下流側目標値Voxsrefから現時点での下流側空燃比センサ６７の出力値Voxsを減じることにより、出力偏差量DVoxsを求める。
DVoxs＝Voxsref−Voxs  ・・・(2)
【００４９】
ＰＩＤコントローラＡ７は、出力偏差量DVoxsを比例・積分・微分処理（ＰＩＤ処理）することで、下記(3)式に基づいて下流側フィードバック補正値Vafsfbを求める。
Vafsfb＝Kp・DVoxs＋Ki・SDVoxs＋Kd・DDVoxs  ・・・(3)
【００５０】
上記(3)式において、Kpは予め設定された比例ゲイン（比例定数）、Kiは予め設定された積分ゲイン（積分定数）、Kdは予め設定された微分ゲイン（微分定数）である。また、SDVoxsは出力偏差量DVoxsの時間積分値であり、DDVoxsは出力偏差量DVoxsの時間微分値である。
【００５１】
このようにして、本装置は、下流側目標値Voxsrefと下流側空燃比センサ６７の出力値Voxsとの定常偏差がゼロになるように出力値Voxsに基づいて、下流側フィードバック補正値Vafsfbを求める。この下流側フィードバック補正値Vafsfbは、後述するように制御用空燃比abyfsの取得に用いられる。
【００５２】
<上流側フィードバック補正値の算出>
制御用空燃比相当出力値算出手段Ａ８は、上流側空燃比センサ６６の出力値Vabyfsに、ＰＩＤコントローラＡ７により求められた下流側フィードバック補正値Vafsfbを加えることで、制御用空燃比相当出力値(Vabyfs+Vafsfb)を求める。
【００５３】
テーブル変換手段Ａ９は、制御用空燃比相当出力値算出手段Ａ８により算出された制御用空燃比相当出力値(Vabyfs+Vafsfb)と、先に説明した図２にグラフにより示した上流側空燃比センサの出力値Vabyfsと空燃比Ａ／Ｆとの関係を規定したテーブルMapabyfsとに基づいて、現時点における制御用空燃比abyfsを求める。このように、制御用空燃比abyfsは、上流側空燃比センサ６６の出力値Vabyfsに対応する空燃比（検出空燃比）に対して下流側フィードバック補正値Vafsfbに相当する分だけ異なる空燃比（見かけ上の空燃比）である。
【００５４】
筒内吸入空気量遅延手段Ａ１０は、筒内吸入空気量算出手段Ａ１により吸気行程毎に求められＲＡＭ７３に記憶されている筒内吸入空気量Mcのうち、現時点からＮストローク前に吸気行程を迎えた気筒の筒内吸入空気量Mc(k−N)をＲＡＭ７３から読み出す。ここで、燃料の噴射指示からその燃料の燃焼室２５内での燃焼に基づく排ガスが上流側空燃比センサ６６に到達するまでの時間を無駄時間Ｌと称呼するものとすると、ストローク数Ｎは、無駄時間Ｌに相当するストローク回数である。本例での内燃機関１０は４気筒内燃機関であるから、ストローク回数は、燃料噴射指示の回数に等しくなる。従って、本例では、ストローク数Ｎは、無駄時間Ｌに相当する燃料噴射指示の回数に等しくなる。
【００５５】
無駄時間Ｌは、燃焼行程に係わる遅れ（行程遅れ）による時間と排気通路での排ガスの移動に係わる遅れ（輸送遅れ）による時間との和として表される。行程遅れによる時間は、運転速度NEの増加に応じて短くなるとともに、輸送遅れに係る時間は、運転速度NEの増加、及び筒内吸入空気量Mc(k)の増加に応じて短くなる。即ち、図５に示したように、無駄時間Ｌは、運転速度NEの増加、及び筒内吸入空気量Mc(k)の増加に応じて短くなる。
【００５６】
一方、図６に示すようにストローク数Ｎは、筒内吸入空気量Mc(k)の増加に応じて小さくなるものの運転速度NEには殆ど影響されない。これは、単位時間あたりのストローク回数が運転速度NEに比例することに基づく。
【００５７】
そこで、本装置においては、ストローク数Ｎは、筒内吸入空気量Mc(k)と、図７にグラフにより示したストローク数Ｎと筒内吸入空気量Mcとの関係を規定するテーブルMapＮとに基づいて求められる。これにより、ストローク数Ｎは、筒内吸入空気量Mc(k)が大きいほどより小さい値に決定される。このように、引数が１つのテーブルを使用することで、テーブルの作製に要する労力が軽減され、テーブル検索に要するＣＰＵ７１の負荷が小さくなる。
【００５８】
制御用筒内燃料供給量算出手段Ａ１１は、筒内吸入空気量遅延手段Ａ１０により求められた現時点からＮストローク前の筒内吸入空気量Mc(k−N)をテーブル変換手段Ａ９により求められた今回の制御用空燃比abyfsで除することで、現時点からＮストローク前の制御用筒内燃料供給量Fc(k−N)を求める。
【００５９】
このように、現時点からＮストローク前の制御用筒内燃料供給量Fc(k−N)を求めるために、現時点からＮストローク前の筒内吸入吸気量Mc(k−N)を今回の制御用空燃比abyfsで除するのは、上流側空燃比センサ６６の現時点での出力値Vabyfsは、無駄時間Ｌに相当するＮストローク前の吸気行程にて吸入された混合気の燃焼に基づく排ガスの空燃比を表しているからである。
【００６０】
目標筒内燃料供給量遅延手段Ａ１２は、基本燃料噴射量算出手段Ａ３により吸気行程毎に求められＲＡＭ７３に記憶されている目標筒内燃料供給量Fcrのうち、現時点からＮストローク前の目標筒内燃料供給量Fcr(k−N)をＲＡＭ７３から読み出す。この値は、後に詳述するローパスフィルタＡ１５（第２遅延処理手段）に入力され、ローパスフィルタＡ１５はローパスフィルタ通過後目標筒内燃料供給量Fcrlow(k−N)を出力する。この目標筒内燃料供給量遅延手段Ａ１２は、第１遅延処理手段に相当する。従って、現時点からＮストローク前の目標筒内燃料供給量Fcr(k−N)は、「第１遅延処理手段により取得された値」に対応する。
【００６１】
筒内燃料供給量偏差算出手段Ａ１３は、下記(4)式に基づいて、上記ローパスフィルタ通過後目標筒内燃料供給量Fcrlow(k−N)から制御用筒内燃料供給量算出手段Ａ１１により求められた現時点からＮストローク前の制御用筒内燃料供給量Fc(k−N)を減じることにより、筒内燃料供給量偏差DFcを求める。この筒内燃料供給量偏差DFcは、Ｎストローク前の時点で筒内に供給された燃料の過不足分を表す量となる。
DFc＝Fcrlow(k−N)−Fc(k−N)  ・・・(4)
【００６２】
ＰＩコントローラＡ１４は、筒内燃料供給量偏差算出手段Ａ１３により算出された筒内燃料供給量偏差DFcを比例・積分処理（ＰＩ処理）することで、下記(5)式に基づいてＮストローク前の燃料供給量の過不足を補償するための上流側フィードバック補正値DFiを求める。
DFi＝(Gp・DFc＋Gi・SDFc)・KFB  ・・・(5)
【００６３】
上記(5)式において、Gpは予め設定された比例ゲイン（比例定数）、Giは予め設定された積分ゲイン（積分定数）である。SDFcは筒内燃料供給量偏差DFcの時間積分値である。また、係数KFBは、運転速度NE、及び筒内吸入空気量Mc等により可変とすることが好適であるが、本例では「１」としている。係る上流側フィードバック補正値DFiは、先に述べたように燃料噴射量算出手段Ａ４により燃料噴射量Fiを求める際に使用される。
【００６４】
このように、本装置は、ローパスフィルタ通過後目標筒内燃料供給量Fcrlow(k−N)と現時点からＮストローク前の制御用筒内燃料供給量Fc(k−N)とが一致するように上流側空燃比センサ６６の出力値Vabyfsに基づいて空燃比をフィードバック制御する。換言すれば、上記現時点での制御用空燃比abyfsが現時点からＮストローク前の上流側目標空燃比abyfr(k−N)と一致するように空燃比がフィードバックされる。
【００６５】
加えて、制御用空燃比abyfsは、上述したように上流側空燃比センサ６６による検出空燃比に対して、下流側フィードバック補正値Vafsfbに相当する分だけ異なる空燃比であるから、下流側空燃比センサ６７の出力値Voxsの下流側目標値Voxsrefからの出力偏差量DVoxsにも応じて変化する。この結果、本装置により、下流側空燃比センサ６７の出力値Voxsが下流側目標値Voxsrefに一致するようにも空燃比がフィードバック制御される。
【００６６】
なお、制御用空燃比相当出力値算出手段Ａ８、テーブル変換手段Ａ９、筒内吸入空気量遅延手段Ａ１０、制御用筒内燃料供給量算出手段Ａ１１、筒内燃料供給量偏差算出手段Ａ１３、及びＰＩコントローラＡ１４が上流側フィードバック補正値算出手段に相当する。以上が、上記のように構成された空燃比制御装置が行う空燃比のフィードバック制御の概要である。
【００６７】
（目標空燃比の急変に対する空燃比の目標空燃比への迅速な収束性の確保）
次に、ローパスフィルタＡ１５について詳述する。本装置は、ローパスフィルタＡ１５が備えられていることにより、上流側目標空燃比abyfr(k)が急激に変化する場合であっても、迅速に空燃比を目標空燃比に収束させることができる。
【００６８】
この作用・効果を説明するために、先ず、図８に機能ブロック図を示した装置（以下、「従来装置」と称呼する。）を考える。この従来装置は、図４に機能ブロック図を示した本装置に対して、ローパスフィルタＡ１５が備えられていない点で異なる。即ち、従来装置では、目標筒内燃料供給量遅延手段Ａ１２により求められた現時点からＮストローク前の目標筒内燃料供給量Fcr(k−N)から制御用筒内燃料供給量算出手段Ａ１１により求められた現時点からＮストローク前の制御用筒内燃料供給量Fc(k−N)を減じることにより、筒内燃料供給量偏差DFcが求められる。
【００６９】
図９は、従来装置が内燃機関１０に適用された場合における各種変数等の変化の一例を示したタイムチャートである。この例では、筒内吸入空気量Mc(k)が一定の状態で、アクティブ空燃比制御等により上流側目標空燃比abyfr(k)がステップ状に一回だけ変化した場合における各種変数等の変化を説明する。なお、説明を簡易とするために、下流側フィードバック補正値Vafsfbは「０」に維持されているものとする。すなわち、検出空燃比と制御用空燃比abyfsは一致しているものとする。
【００７０】
この例では、上流側目標空燃比abyfr(k)が変化する時刻ｔ１以前において、（Ａ）に示すように上流側目標空燃比abyfr(k)が値abyfr1（例えば、理論空燃比）に、（Ｂ）に示すように基本燃料噴射量Fbaseが値abyfr1に対応する値Fbase1に、（Ｃ）に示すように上流側空燃比センサ６６の出力値Vabyfsが値abyfr1に相当する値Vabyfs1に、（Ｄ）に示すように現時点からＮストローク前の目標筒内燃料供給量Fcr(k−N)及び制御用筒内燃料供給量Fc(k−N)が値Fcr1（＝Fbase1）に、（Ｅ）に示すように上流側フィードバック補正値DFiが「０」にそれぞれ維持されている。即ち、時刻ｔ１以前において排ガスの空燃比は、値abyfr1に維持されている。
【００７１】
時刻ｔ１において、（Ａ）に示すように上流側目標空燃比abyfr(k)が値abyfr1より小さい（従って、値abyfr1よりもリッチ方向に偏移した）値abyfr2にステップ状に減少すると、（Ｂ）に示すように基本燃料噴射量Fbaseが値Fbase1から値abyfr2に対応する値Fbase2（＞Fbase1）にステップ状に同時に増大する。加えて、目標筒内燃料供給量Fcr(k)も時刻ｔ１において値Fcr1から値Fcr2（＝Fbase2）にステップ状に増大するから、（Ｄ）に実線にて示すように目標筒内燃料供給量Fcr(k−N)は時刻ｔ１から無駄時間Ｌが経過した時点である時刻ｔ２まで値Fcr1に維持されるとともに時刻ｔ２において値Fcr1から値Fcr2にステップ状に増大する。
【００７２】
また、上述した基本燃料噴射量Fbaseの時刻ｔ１におけるステップ状の増大により、新たに発生する排ガスの空燃比も時刻ｔ１にて値abyfr1からリッチ方向にステップ状に変化する。この排ガスの空燃比のリッチ方向へのステップ状の変化は時刻ｔ２まで上流側空燃比センサ６６の出力値Vabyfsの変化として現れない。従って、（Ｃ）に示すように上流側空燃比センサ６６の出力値Vabyfsは時刻ｔ２まで値Vabyfs1に維持される。
【００７３】
これに伴い、（Ｄ）に破線にて示すように、上流側空燃比センサ６６の出力値Vabyfsに基づいて決定される制御用筒内燃料供給量Fc(k−N)も目標筒内燃料供給量Fcr(k−N)と同様、時刻ｔ２まで値Fcr1に維持される。この結果、筒内燃料供給量偏差DFcが時刻ｔ２まで「０」に維持されるから、（Ｅ）に示すように上流側フィードバック補正値DFiも時刻ｔ２まで「０」に維持される。以上より、時刻ｔ１から時刻ｔ２までの間、新たに発生する排ガスの空燃比は値abyfr2と等しい値に維持されることになる（上記(1)式を参照）。
【００７４】
時刻ｔ２になると、空燃比が値abyfr2の排ガスが上流側空燃比センサ６６に到達する。上流側空燃比センサ６６は応答遅れを有する。従って、（Ｃ）に示すように上流側空燃比センサ６６の出力値Vabyfsは、時刻ｔ２以降、上記応答遅れを伴って値Vabyfs1から比較的緩やかに減少していく。従って、（Ｄ）に破線にて示すように制御用筒内燃料供給量Fc(k−N)も時刻ｔ２以降、値Fcr1から比較的緩やかに増大していく。
【００７５】
これに対し、上述したように、（Ｄ）に実線にて示すように目標筒内燃料供給量Fcr(k−N)は時刻ｔ２において値Fcr1から値Fcr2にステップ状に増大する。このため、時刻ｔ２の直後から筒内燃料供給量偏差DFcが大きい正の値となり、この結果、（Ｅ）に示すように上流側フィードバック補正値DFiも時刻ｔ２の直後から「０」から急激に増大していく。これにより、時刻ｔ２以降、新たに発生する排ガスの空燃比は、値abyfr2に対して上流側フィードバック補正値DFiに相当する分だけ大きくリッチ方向に偏移した空燃比となる。
【００７６】
この結果、（Ｃ）、及び（Ｄ）に破線にて示すように、時刻ｔ２以降、上流側空燃比センサ６６の出力値Vabyfs、及び制御用筒内燃料供給量Fc(k−N)は、値abyfr2に相当する値Vabyfs2、及び値Fcr2をそれぞれ中心とする大きな変動を経て、時刻ｔ２から比較的長い時間が経過した時点である時刻ｔ３において値Vabyfs2、及び値Fcr2にそれぞれ収束する。
【００７７】
一方、上流側フィードバック補正値DFiは、筒内燃料供給量偏差DFcの時間積分値SDFcの作用により、筒内燃料供給量偏差DFcの値が正の値に維持されている間は増大し続け、負の値に維持されている間は減少し続ける特性を有する（上記(5)式を参照）。従って、上流側フィードバック補正値DFiも、（Ｅ）に示すように時刻ｔ２の直後において「０」から大きく増大した後、「０」を中心とする大きな変動を経て時刻ｔ３にて「０」に収束する。
【００７８】
このことは、時刻ｔ２から時刻ｔ３までの比較的長い時間に亘って空燃比に比較的大きな荒れが発生した後、時刻ｔ３において空燃比が上流側目標空燃比abyfr(k)に収束したことを意味する。
【００７９】
<ローパスフィルタＡ１５の作用・効果>
上述したように、上記従来装置では、上流側目標空燃比abyfr(k)がステップ状に変化した場合、空燃比が上流側目標空燃比abyfr(k)に迅速に収束し得ない。これは、時刻ｔ２以降における上流側フィードバック補正値DFiの変化が比較的大きいことに起因する。従って、空燃比を上流側目標空燃比abyfr(k)に迅速に収束させる上では、時刻ｔ２以降における上流側フィードバック補正値DFiの変化をより一層小さくすることが好ましい。
【００８０】
上記従来装置において時刻ｔ２以降における上流側フィードバック補正値DFiの変化が比較的大きいのは、時刻ｔ２において、目標筒内燃料供給量Fcr(k−N)がステップ状に増大するのに対して制御用筒内燃料供給量Fc(k−N)が上流側空燃比センサ６６の応答遅れを伴って増大し始めることに基づく。
【００８１】
即ち、時刻ｔ２以降における上流側フィードバック補正値DFiの変化を小さくするためには、筒内燃料供給量偏差DFcを計算する際、制御用筒内燃料供給量Fc(k−N)が減じられる値として、目標筒内燃料供給量Fcr(k−N)そのものに代えて、目標筒内燃料供給量Fcr(k−N)に上流側空燃比センサ６６の応答遅れに相当する時定数と等しい時定数τを有するローパスフィルタ処理を施した値（従って、上記ローパスフィルタ通過後目標筒内燃料供給量Fcrlow(k−N)）を使用すればよい。そこで、上記従来装置にローパスフィルタＡ１５を加えた装置（即ち、本装置）を考える（再び、図４を参照）。
【００８２】
ローパスフィルタＡ１５は、その特性をラプラス演算子sを用いて表した下記(6)式に示すように、一次のディジタルフィルタである。下記(6)式において、τは時定数（応答性に関するパラメータ）であり、周波数（１／τ）以上の高周波数成分の通過が実質的に禁止される。
１／（１＋τ・s）  ・・・(6)
【００８３】
ここで、上流側空燃比センサ６６の応答遅れの程度は、筒内吸入空気量Mc(k)に大きく影響を受けるとともに運転速度NEにも影響を受ける。しかしながら、実際には、図１０に示すように、上流側空燃比センサ６６の応答遅れに相当する時定数は、筒内吸入空気量Mc(k)の増加に応じて小さくなるものの運転速度NEには殆ど影響されない。
【００８４】
そこで、本装置においては、時定数τは、筒内吸入空気量Mc(k)と、図１１にグラフにより示した時定数τと筒内吸入空気量Mcとの関係を規定するテーブルMapτとに基づいて求められる。これにより、時定数τは、筒内吸入空気量Mc(k)が大きいほどより小さい値に決定される。このように、引数が１つのテーブルを使用することで、テーブルの作製に要する労力が軽減され、テーブル検索に要するＣＰＵ７１の負荷が小さくなる。
【００８５】
ローパスフィルタＡ１５は、目標筒内燃料供給量遅延手段Ａ１２により求められた目標筒内燃料供給量Fcr(k−N)を入力するとともに、ローパスフィルタ通過後目標筒内燃料供給量Fcrlow(k−N)を筒内燃料供給量偏差算出手段Ａ１３へ出力する。このローパスフィルタＡ１５は、第２遅延処理手段に相当する。従って、ローパスフィルタ通過後目標筒内燃料供給量Fcrlow(k−N)は、「第２遅延処理手段により取得された値」に対応する。
【００８６】
本装置においては、上述したように、筒内燃料供給量偏差算出手段Ａ１３によりローパスフィルタ通過後目標筒内燃料供給量Fcrlow(k−N)から制御用筒内燃料供給量Fc(k−N)を減じることで筒内燃料供給量偏差DFcが計算される。
【００８７】
図１２は本装置が内燃機関１０に適用された場合における各種変数等の変化の一例を示した図９に対応するタイムチャートである。図１２における時刻ｔ１,ｔ２,ｔ３は、図９における時刻ｔ１,ｔ２,ｔ３にそれぞれ対応している。この場合、図９に示した場合と同様、（Ａ）に示すように上流側目標空燃比abyfr(k)が時刻ｔ１において値abyfr1から値abyfr2にステップ状に変化すると、（Ｄ）に実線にて示すようにローパスフィルタ通過後目標筒内燃料供給量Fcrlow(k−N)が時刻ｔ２以降において値Fcr1から値Fcr2に向かって時定数τに応じた応答遅れを伴って変化する。
【００８８】
これにより、時刻ｔ２以降ローパスフィルタ通過後目標筒内燃料供給量Fcrlow(k−N)の変化の遅れの程度が上流側空燃比センサ６６の出力値Vabyfsの変化の遅れの程度に近づく。従って、（Ｅ）に示すように上流側フィードバック補正値DFiは、時刻ｔ２以降「０」から僅かに増大するのみである。この増大量は、ローパスフィルタ処理の時定数τと上流側空燃比センサ６６の応答遅れに相当する時定数との誤差に応じた量である。
【００８９】
この結果、（Ｅ）に示すように時刻ｔ２から時刻ｔ３の間における上流側フィードバック補正値DFiの変化が上記従来装置に比してより一層小さくなるとともに、時刻ｔ２から時刻ｔ３までの時間がより短くなる。換言すれば、空燃比が上流側目標空燃比abyfr(k)に収束するまでに要する期間がより一層短くなる。即ち、本装置では、上流側目標空燃比abyfr(k)がステップ状に変化する場合であっても、ローパスフィルタＡ１５の作用により、上流側フィードバック補正値DFiの増大による、空燃比の比較的大きな荒れの発生を抑制することができる。この結果、迅速に空燃比を目標空燃比に収束させることができる。
【００９０】
（実際の作動）
次に、本装置の実際の作動について説明する。以下、説明の便宜上、「MapX(a1,a2,…)」は、a1,a2,…を引数とする値Xを求めるためのテーブルを表すものとする。また、引数の値がセンサの検出値である場合、現在値が使用される。
【００９１】
<空燃比フィードバック制御>
ＣＰＵ７１は、図１３にフローチャートにより示した燃料噴射量Fiの計算、及び燃料噴射の指示を行うルーチンを、各気筒のクランク角が各吸気上死点前の所定クランク角度（例えば、ＢＴＤＣ９０°ＣＡ）となる毎に、繰り返し実行するようになっている。従って、任意の気筒のクランク角度が上記所定クランク角度になると、ＣＰＵ７１はステップ１３００から処理を開始してステップ１３０５に進み、テーブルMapMc(NE,Ga)に基づいて今回の吸気行程を迎える気筒（以下、「燃料噴射気筒」と云うこともある。）に吸入された今回の筒内吸入空気量Mc(k)を推定・決定する。
【００９２】
次に、ＣＰＵ７１はステップ１３１０に進んで、内燃機関１０の運転状態である運転速度NE、及びスロットル弁開度TA等に基づいて今回の上流側目標空燃比abyfr(k)を取得する。次いで、ＣＰＵ７１はステップ１３１５に進み、上記筒内吸入空気量Mc(k)を上記上流側目標空燃比abyfr(k)で除することにより、基本燃料噴射量Fbaseを決定する。
【００９３】
続いて、ＣＰＵ７１はステップ１３２０に進んで、今回の目標筒内燃料供給量Fcr(k)を上記基本燃料噴射量Fbaseに設定する。この目標筒内燃料供給量Fcr(k)は、後述するルーチンにてローパスフィルタ通過後目標筒内燃料供給量Fcrlow(k−N)を求めるのに用いられる。
【００９４】
次に、ＣＰＵ７１はステップ１３２５に進んで、上記(1)式に従って上記基本燃料噴射量Fbaseに後述するルーチンにて（前回の燃料噴射時点にて）求められている最新の上流側フィードバック補正値DFiを加えることにより燃料噴射量Fiを決定する。
【００９５】
そして、ＣＰＵ７１はステップ１３３０に進んで、上記燃料噴射量Fiの燃料の噴射指示を行った後、ステップ１３９５に進んで本ルーチンを一旦終了する。以上により、基本燃料噴射量Fbaseが運転状態に応じて変化する上流側目標空燃比abyfr(k)に基づいて計算され、基本燃料噴射量Fbaseがフィードバック補正された後の燃料噴射量Fiの燃料の噴射指示が燃料噴射気筒に対してなされる。
【００９６】
<上流側フィードバック補正値の計算>
次に、上流側フィードバック補正値DFiを算出する際の作動について説明すると、ＣＰＵ７１は図１４にフローチャートにより示したルーチンを、燃料噴射気筒について燃料噴射開始時期（燃料噴射開始時点）が到来する毎に、繰り返し実行するようになっている。従って、燃料噴射気筒について燃料噴射開始時期が到来すると、ＣＰＵ７１はステップ１４００から処理を開始し、ステップ１４０５に進んで上流側フィードバック条件が成立しているか否かを判定する。ここで、上流側フィードバック条件は、例えば、機関の冷却水温THWが第１所定温度以上であって、上流側空燃比センサ６６が正常（活性状態となっていることを含む）であって、機関の一回転当りの吸入空気量（負荷）が所定値以下であるときに成立する。
【００９７】
いま、上流側フィードバック条件が成立しているものとして説明を続けると、ＣＰＵ７１はステップ１４０５にて「Ｙｅｓ」と判定してステップ１４１０に進み、現時点の上流側空燃比センサ６６の出力値Vabyfsと後述するルーチンにて（前回の燃料噴射時点にて）求められている下流側フィードバック補正値Vafsfbとの和である制御用空燃比相当出力値(Vabyfs+Vafsfb)をテーブルMapabyfs(Vabyfs+Vafsfb)に基づいて変換することにより、現時点における制御用空燃比abyfsを求める（図２を参照）。
【００９８】
次に、ＣＰＵ７１はステップ１４１５に進んで、現時点からＮストローク（Ｎ回の吸気行程）前に吸気行程を迎えた気筒の吸入空気量である筒内吸入空気量Mc(k−N)を上記制御用空燃比abyfsで除することにより、現時点からＮストローク前の制御用筒内燃料供給量Fc(k−N)を求める。ここで、ストローク数Ｎとしては、後述するルーチンにて求められている最新値が用いられる。
【００９９】
次いで、ＣＰＵ７１はステップ１４２０に進み、上記(4)式に従って、ローパスフィルタ通過後目標筒内燃料供給量Fcrlow(k−N)から上記制御用筒内燃料供給量Fc(k−N)を減じることにより筒内燃料供給量偏差DFcを求める。ここで、ローパスフィルタ通過後目標筒内燃料供給量Fcrlow(k−N)としては、後述するルーチンにて求められている最新値が用いられる。つまり、筒内燃料供給量偏差DFcは、Ｎストローク前の時点で筒内に供給された燃料の過不足分を表す量となる。
【０１００】
続いて、ＣＰＵ７１はステップ１４２５に進んで、上記(5)式に基づくステップ１４２５内に示した式に従って上流側フィードバック補正値DFiを求め、続くステップ１４３０にてその時点における筒内燃料供給量偏差の積分値SDFcに上記ステップ１４２０にて求めた筒内燃料供給量偏差DFcを加えて、新たな筒内燃料供給量偏差の積分値SDFcを求めた後、ステップ１４９５に進んで本ルーチンを一旦終了する。
【０１０１】
以上により、ローパスフィルタ通過後目標筒内燃料供給量Fcrlow(k−N)と制御用筒内燃料供給量Fc(k−N)との差に基づいて上流側フィードバック補正値DFiが求められ、この上流側フィードバック補正値DFiが前述した図１３のステップ１３２５にて燃料噴射量Fiに反映されることで空燃比フィードバック制御が実行される。
【０１０２】
一方、ステップ１４０５の判定時において、上流側フィードバック条件が不成立であると、ＣＰＵ７１はステップ１４０５にて「Ｎｏ」と判定してステップ１４３５に進み、上流側フィードバック補正値DFiを「０」に設定し、続くステップ１４４０にて筒内燃料供給量偏差の積分値SDFcを「０」に設定した後、ステップ１４９５に進んで本ルーチンを一旦終了する。このように、上流側フィードバック条件が不成立であるときは、上流側フィードバック補正値DFiを「０」として空燃比の補正を行わない。
【０１０３】
<下流側フィードバック補正量の計算>
次に、下流側フィードバック補正値Vafsfbを算出する際の作動について説明すると、ＣＰＵ７１は図１５にフローチャートにより示したルーチンを、燃料噴射気筒について燃料噴射開始時期（燃料噴射開始時点）が到来する毎に、繰り返し実行するようになっている。従って、燃料噴射気筒について燃料噴射開始時期が到来すると、ＣＰＵ７１はステップ１５００から処理を開始し、ステップ１５０５に進んで下流側フィードバック条件が成立しているか否かを判定する。下流側フィードバック条件は、例えば、前述したステップ１４０５での上流側フィードバック条件に加え、機関の冷却水温THWが前記第１所定温度よりも高い第２所定温度以上のときに成立する。
【０１０４】
いま、下流側フィードバック条件が成立しているものとして説明を続けると、ＣＰＵ７１はステップ１５０５にて「Ｙｅｓ」と判定してステップ１５１０に進み、上記(2)式に従って、下流側目標値Voxsrefから現時点の下流側空燃比センサ６７の出力値Voxsを減じることにより、出力偏差量DVoxsを求める。次に、ＣＰＵ７１はステップ１５１５に進んで、下記(7)式に基づき出力偏差量の微分値DDVoxsを求める。
DDVoxs＝(DVoxs−DVoxs1)／Δt  ・・・(7)
【０１０５】
上記(7)式において、DVoxs1は前回の本ルーチン実行時において後述するステップ１５３０にて設定（更新）された出力偏差量DVoxsの前回値である。また、Δtは本ルーチンが前回実行された時点から今回実行された時点までの時間である。
【０１０６】
次いで、ＣＰＵ７１はステップ１５２０に進み、上記(3)式に基づくステップ１５２０内に示した式に従って下流側フィードバック補正値Vafsfbを求める。この下流側フィードバック補正値Vafsfbは、前述した図１４のルーチンの次回の実行時においてステップ１４１０にて制御用空燃比abyfsを求めるのに用いられる。
【０１０７】
続いて、ＣＰＵ７１はステップ１５２５に進んで、その時点における出力偏差量の積分値SDVoxsに上記ステップ１５１０にて求めた出力偏差量DVoxsを加えて、新たな出力偏差量の積分値SDVoxsを求め、続くステップ１５３０にて、出力偏差量DVoxsの前回値DVoxs1を上記ステップ１５１０にて求めた出力偏差量DVoxsに設定した後、ステップ１５９５に進んで本ルーチンを一旦終了する。
【０１０８】
一方、ステップ１５０５の判定時において、下流側フィードバック条件が不成立であると、ＣＰＵ７１はステップ１５０５にて「Ｎｏ」と判定してステップ１５３５に進み、下流側フィードバック補正値Vafsfbを「０」に設定し、続くステップ１５４０にて出力偏差量の積分値SDVoxsを「０」に設定した後、ステップ１５９５に進んで本ルーチンを一旦終了する。
【０１０９】
このように、下流側フィードバック条件が不成立であるときは、下流側フィードバック補正値Vafsfbが「０」に設定されるから、図１４のルーチンのステップ１４１０における制御用空燃比相当出力値が上流側空燃比センサ６６の出力値Vabyfsと等しくなる。即ち、下流側空燃比センサ６７の出力値Voxsに応じた空燃比のフィードバック制御は行わない。
【０１１０】
<ローパスフィルタ処理>
次に、ディジタルフィルタであるローパスフィルタＡ１５（図４を参照）によるローパスフィルタ処理を行う際の作動について説明する。ＣＰＵ７１は図１６にフローチャートにより示したルーチンを、実行周期Δｔ１（一定）の経過毎に、繰り返し実行するようになっている。この実行周期Δｔ１は、想定される最大の運転速度NEに対応する上記時間Δｔ（即ち、最短のΔｔ）より短い時間に設定されている。所定のタイミングになると、ＣＰＵ７１はステップ１６００から処理を開始してステップ１６０５に進み、テーブルMapτ(Mc(k))に基づいてローパスフィルタ処理の時定数τを決定する（図１１を参照）。
【０１１１】
次に、ＣＰＵ７１はステップ１６１０に進んで、テーブルMapＮ(Mc(k))に基づいてストローク数Ｎを決定する（図７を参照）。このストローク数Ｎは、前述した図１４のルーチンのステップ１４１５にて現時点からＮストローク前の筒内吸入空気量Mc(k−N)を読み出す際、及び後述する本ルーチンのステップ１６２０にて現時点からＮストローク前の目標筒内燃料供給量Fcr(k−N)を読み出す際に用いられる。
【０１１２】
次いで、ＣＰＵ７１はステップ１６１５に進み、上記時定数τと、上記実行周期Δｔ１とに基づいて鈍し処理定数ｎ（≧１）を取得する。この鈍し処理定数ｎは、次のステップ１６２０にて行われるローパスフィルタ処理で用いられる。この鈍し処理定数ｎと実行周期Δｔ１との積は時定数τに比例するから、時定数τが大きいほど鈍し処理定数ｎはより大きい値に設定される。
【０１１３】
続いて、ＣＰＵ７１はステップ１６２０に進んで、上記鈍し処理定数ｎと、ローパスフィルタ通過後目標筒内燃料供給量Fcrlow(k−N)の前回値Fcrlow1と、現時点からＮストローク前の目標筒内燃料供給量Fcr(k−N)と、ステップ１６２０内に示した式とに基づいてローパスフィルタ通過後目標筒内燃料供給量Fcrlow(k−N)を求める。ここで、前回値Fcrlow1としては、前回の本ルーチン実行時において後述するステップ１６２５にて既に更新されている最新値を使用する。
【０１１４】
次に、ＣＰＵ７１はステップ１６２５に進んで、ローパスフィルタ通過後目標筒内燃料供給量Fcrlow(k−N)の前回値Fcrlow1を上記ステップ１６２０にて求めたローパスフィルタ通過後目標筒内燃料供給量Fcrlow(k−N)に設定（更新）した後、ステップ１６９５に進んで本ルーチンを一旦終了する。
【０１１５】
以上により、本ルーチンの実行周期Δｔ１の経過毎に、時定数τ、及びストローク数Ｎが更新されるとともに、現時点からＮストローク前の目標筒内燃料供給量Fcr(k−N)が時定数τをもってローパスフィルタ処理されてローパスフィルタ通過後目標筒内燃料供給量Fcrlow(k−N)が取得される。そして、前述した図１４のルーチンのステップ１４２０にて、上述のように取得されるローパスフィルタ通過後目標筒内燃料供給量Fcrlow(k−N)の最新値が使用されることで、筒内燃料供給量偏差DFc（従って、上流側フィードバック補正値DFi）が求められていく。
【０１１６】
以上、説明したように、本発明による内燃機関の空燃比制御装置の実施形態によれば、現時点からＮストローク前（従って、無駄時間Ｌだけ前）の上流側目標空燃比abyfr(k−N)に相当する目標筒内燃料供給量Fcr(k−N)に時定数をτとするローパスフィルタ処理を施したローパスフィルタ通過後目標筒内燃料供給量Fcrlow(k−N)と、現時点の上流側空燃比センサ６６の出力値Vabyfsに基づく制御用空燃比abyfsに相当する現時点からＮストローク前の制御用筒内燃料供給量Fc(k−N)との差に基づいて上流側フィードバック補正値DFiが求められ、この上流側フィードバック補正値DFiが燃料噴射量Fiに反映されることで空燃比フィードバック制御が実行される。
【０１１７】
これにより、上流側目標空燃比abyfr(k)が変化した場合において、上流側フィードバック補正値DFiの算出に使用されるローパスフィルタ通過後目標筒内燃料供給量Fcrlow(k−N)と現時点からＮストローク前の制御用筒内燃料供給量Fc(k−N)の変化のタイミングが一致し得る。加えて、上記ローパスフィルタ処理の時定数τは、上流側空燃比センサ６６の応答遅れに相当する時定数と等しい値に設定されている。従って、上記変化のタイミング以降におけるローパスフィルタ通過後目標筒内燃料供給量Fcrlow(k−N)の変化の遅れの程度と制御用筒内燃料供給量Fc(k−N)の変化の遅れの程度とが一致する。この結果、上流側目標空燃比abyfr(k)が急激に変化する場合であっても、上流側フィードバック補正値DFiが一時的に大きくなることを抑制し得、この結果、迅速に空燃比を目標空燃比に収束させることができる。
【０１１８】
本発明は上記実施形態に限定されることはなく、本発明の範囲内において種々の変形例を採用することができる。例えば、上記実施形態においては、筒内吸入空気量Mc(k)と、テーブルMapＮとに基づいてストローク数Ｎを求めているが（図７、及び図１６のルーチンのステップ１６１０を参照）、運転速度NEと、筒内吸入空気量Mc(k)と、ストローク数Ｎと運転速度NE及び筒内吸入空気量Mcとの関係を規定するテーブルとに基づいてストローク数Ｎを求めるように構成してもよい。この場合、図１６のルーチンのステップ１６１０にて、MapＮ(Mc(k))に基づいてストローク数Ｎを決定するのに代えて、MapＮ(NE,Mc(k))に基づいてストローク数Ｎを決定する。
【０１１９】
また、上記実施形態においては、現時点からＮストローク前の筒内吸入空気量Mc(k−N)、及び目標筒内燃料供給量Fcr(k−N)を求める際、無駄時間Ｌに相当する燃料噴射指示の回数としてストローク数Ｎを用いているが、無駄時間Ｌそのものを用いるように構成してもよい。この場合、図１６のルーチンのステップ１６１０にて、MapＮ(Mc(k))に基づいてストローク数Ｎを決定するのに代えて、運転速度NEと、筒内吸入空気量Mc(k)と、無駄時間Ｌと運転速度NE及び筒内吸入空気量Mcとの関係を規定するテーブルとに基づいて無駄時間Ｌを決定する。また、図１４のルーチンのステップ１４１５及び図１６のルーチンのステップ１６２０にて、現時点からＮストローク前の筒内吸入空気量Mc(k−N)及び目標筒内燃料供給量Fcr(k−N)を用いるのに代えて、現時点から無駄時間Ｌだけ前の時点で決定されていた筒内吸入空気量Mcの最新値及び目標筒内燃料供給量Fcrの最新値を用いて、制御用筒内燃料供給量Fc及びローパスフィルタ通過後目標筒内燃料供給量Fcrlowを求める。
【０１２０】
また、上記実施形態においては、筒内吸入空気量Mc(k)と、テーブルMapτとに基づいてローパスフィルタ処理の時定数τを求めているが（図１１、及び図１６のルーチンのステップ１６０５を参照）、運転速度NEと、筒内吸入空気量Mc(k)と、ローパスフィルタ処理の時定数τと運転速度NE及び筒内吸入空気量Mcとの関係を規定するテーブルとに基づいてローパスフィルタ処理の時定数τを求めるように構成してもよい。この場合、図１６のルーチンのステップ１６０５にて、Mapτ(Mc(k))に基づいてローパスフィルタ処理の時定数τを決定するのに代えて、Mapτ(NE,Mc(k))に基づいてローパスフィルタ処理の時定数τを決定する。
【０１２１】
また、上記実施形態においては、筒内吸入空気量Mc(k)と、テーブルMapτとに基づいてローパスフィルタ処理の時定数τを求めているが、ローパスフィルタ処理の時定数τを求めるためのテーブルの引数として筒内吸入空気量Mc(k)のみを用いるのに代えて、若しくは加えて、吸気弁３２の開閉タイミングVT、点火時期CAig、及び上流側目標空燃比abyfr(k)のうち少なくとも一つを用いるように構成してもよい。
【０１２２】
また、上記実施形態においては、ローパスフィルタ処理の応答性に関するパラメータの数を少なくするため、ローパスフィルタＡ１５として一次のフィルタを用いているが（上記(6)式、及び図１６のルーチンのステップ１６２０を参照）、ローパスフィルタＡ１５として二次のフィルタを用いてもよい。これによれば、ローパスフィルタ通過後目標筒内燃料供給量Fcrlow(k−N)の変化の遅れの特性を、上流側目標空燃比abyfr(k)が変化した場合における上流側空燃比センサ６６の出力値Vabyfsの変化の遅れの特性に精度良く近づけることができる。これは、以下の理由に基づくと考えられる。即ち、上流側目標空燃比abyfr(k)の変化により燃料噴射量Fiが変化すると、吸気通路を構成する部材（吸気管４１の壁面、及び吸気弁３２の表面等）に付着する燃料の量である燃料付着量が変化する。燃料付着量が変化すると、燃焼室２５内に実際に供給される燃料の量の変化が燃料噴射量Fiの変化に対して遅れることに基づく。
【０１２３】
加えて、上記実施形態においては、ローパスフィルタ通過後目標筒内燃料供給量Fcrlow(k−N)から現時点からＮストローク前の制御用筒内燃料供給量Fc(k−N)を減じた値である筒内燃料供給量偏差DFcに基づいて上流側フィードバック補正値DFiを求めているが、今回の制御用空燃比abyfs(k)から現時点からＮストローク前の上流側目標空燃比abyfr(k−N)にローパスフィルタ処理を施した値を減じた値に基づいて上流側フィードバック補正値DFiを求めるように構成してもよい。
【図面の簡単な説明】
【０１２４】
【図１】本発明の実施形態に係る空燃比制御装置を適用した内燃機関の概略図である。
【図２】図１に示した上流側空燃比センサの出力電圧と空燃比との関係を示したグラフである。
【図３】図１に示した下流側空燃比センサの出力電圧と空燃比との関係を示したグラフである。
【図４】図１に示した空燃比制御装置が空燃比フィードバック制御を実行する際の機能ブロック図である。
【図５】無駄時間と、運転速度及び筒内吸入空気量との関係を示したグラフである。
【図６】無駄時間に相当するストローク数と、運転速度及び筒内吸入空気量との関係を示したグラフである。
【図７】図１に示したＣＰＵが参照する、ストローク数と、筒内吸入空気量との関係を規定するテーブルを示したグラフである。
【図８】従来装置が空燃比フィードバック制御を実行する際の機能ブロック図である。
【図９】従来装置が空燃比フィードバック制御を実行する際の各種変数等の変化の一例を示したタイムチャートである。
【図１０】図１に示した上流側空燃比センサの応答遅れに相当する時定数と、運転速度及び筒内吸入空気量との関係を示したグラフである。
【図１１】図１に示したＣＰＵが参照する、ローパスフィルタ処理の時定数と、筒内吸入空気量との関係を規定するテーブルを示したグラフである。
【図１２】図１に示した空燃比制御装置が空燃比フィードバック制御を実行する際の各種変数等の変化の一例を示したタイムチャートである。
【図１３】図１に示したＣＰＵが実行する燃料噴射量の計算、及び噴射指示を行うためのルーチンを示したフローチャートである。
【図１４】図１に示したＣＰＵが実行する上流側フィードバック補正値を計算するためのルーチンを示したフローチャートである。
【図１５】図１に示したＣＰＵが実行する下流側フィードバック補正値を計算するためのルーチンを示したフローチャートである。
【図１６】図１に示したＣＰＵが実行するローパスフィルタ処理をするためのルーチンを示したフローチャートである。
【符号の説明】
【０１２５】
１０…内燃機関、２５…燃焼室、３９…インジェクタ、５２…エキゾーストパイプ（排気管）、５３…三元触媒（第１触媒）、６６…上流側空燃比センサ、７０…電気制御装置、７１…ＣＰＵ
【図１】
2007162565.tif 000003
【図２】
2007162565.tif 000004
【図３】
2007162565.tif 000005
【図４】
2007162565.tif 000006
【図５】
2007162565.tif 000007
【図６】
2007162565.tif 000008
【図７】
2007162565.tif 000009
【図８】
2007162565.tif 000010
【図９】
2007162565.tif 000011
【図１０】
2007162565.tif 000012
【図１１】
2007162565.tif 000013
【図１２】
2007162565.tif 000014
【図１３】
2007162565.tif 000015
【図１４】
2007162565.tif 000016
【図１５】
2007162565.tif 000017
【図１６】
2007162565.tif 000018