(57)【特許請求の範囲】
【請求項１】
触媒装置および排気管に配置された排ガスセンサを含む系をモデル化した制御対象モデルのモデルパラメータを算出する同定器と、
前記排ガスセンサの出力が所定の目標値に収束するよう、前記同定器によって算出されたモデルパラメータを用いて、前記系の目標空燃比を算出する目標空燃比算出手段と、
前記目標空燃比に基づいて、空燃比を制御する制御手段と、
前記同定器によるモデルパラメータの算出を停止する同定停止手段と、を備え、
リーン空燃比による運転中および該リーン空燃比による運転終了時から所定期間の間、前記同定停止手段によって前記同定器によるモデルパラメータの算出を停止すると共に、前記目標空燃比算出手段は、該停止した時に算出されていたモデルパラメータを用いて前記目標空燃比の算出を継続する、
内燃機関の空燃比制御装置。
【請求項２】
前記リーン空燃比による運転は、燃料供給が停止される燃料カット状態における運転を含む、請求項１に記載の空燃比制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、内燃機関の排気系に設けられた排ガスセンサの出力に基づいて空燃比を制御する内燃機関の制御装置に関する。
【０００２】
【従来の技術】
内燃機関の排気系には、触媒装置が設けられている。触媒装置は、内燃機関に供給される混合気の空燃比がリーンのとき、排気ガス中に存在する過剰の酸素でＨＣおよびＣＯを酸化し、空燃比がリッチのとき、ＨＣおよびＣＯによってＮｏｘを還元する。空燃比が理論空燃比領域にあるとき、ＨＣ、ＣＯおよびＮｏｘが同時にかつ効果的に浄化される。
【０００３】
触媒装置の下流には、排ガスセンサが設けられる。排ガスセンサは、排気系に排気されたガス中の酸素濃度を検出する。排ガスセンサの出力に基づいて、内燃機関の空燃比のフィードバック制御が実施される。
【０００４】
空燃比のフィードバック制御の一例として、特開２０００−２３４５５０公報には、切換関数を用いる応答指定型制御が提案されている。この制御は、該切換関数の値をゼロに収束することによって、排ガスセンサの出力を所定の目標値に収束させる。具体的には、切換関数を用いて、排ガスセンサの出力を所定の目標値に収束させるための目標空燃比（操作量）が算出される。該目標空燃比に応じて、内燃機関への燃料供給量が制御される。こうして、空燃比が安定的に制御される。
【０００５】
上記の応答指定型制御を実施するシステムに、同定器が設けられる場合がある。該同定器は、応答指定型制御の制御対象に関連するモデルパラメータを、適宜算出する。同定器により算出されたモデルパラメータを用いて、上記目標空燃比が算出される。
【０００６】
【発明が解決しようとする課題】
最近、燃費の向上のために、リーン空燃比による運転領域（燃料カットを含む）が拡大される傾向にある。リーン空燃比によって所望の運転状態を達成することができない場合には、理論空燃比またはリッチ空燃比による運転が実施される。理論空燃比で運転する場合には、排ガスの有害成分の排出量を抑えるために、前述した応答指定型制御による空燃比制御が実行される。
【０００７】
従来の空燃比制御では、内燃機関が始動した直後に実施される、排ガスの有害成分の低減のためのリーン空燃比による運転中にのみ、同定器によるモデルパラメータの算出を停止していた。燃費向上のためのリーン空燃比による運転中は、同定器によるモデルパラメータの算出は継続され、該モデルパラメータを用いた目標空燃比の算出を停止していた。
【０００８】
図１４は、従来の空燃比制御における、燃費向上のためのリーン空燃比による運転中およびリーン空燃比による運転が終了した直後の排ガスセンサ出力Vo2/OUT、モデルパラメータa1およびa2、目標空燃比KCMD、実空燃比KACT、排ガスの有害成分ＨＣおよびＮＯｘの遷移を示す。
【０００９】
リーン空燃比による運転中（ｔ１〜ｔ２）およびリーン空燃比による運転が終了した直後（ｔ２〜ｔ４）、排ガスセンサ出力Vo2/OUTおよび実空燃比KACTはリーン空燃比を示す。期間ｔ１〜ｔ４の間、同定器のモデルパラメータの算出は継続される。モデルパラメータは、排ガスセンサの出力Vo2/OUTおよび実空燃比KACTに基づいて算出される。排ガスセンサ出力Vo2/OUTおよび実空燃比KACTが一定のリーン状態にあるので、モデルパラメータa1およびa2の同定精度が低下し、図に示されるようにドリフトする。
【００１０】
目標空燃比KCMDは、リーン運転中（ｔ１〜ｔ２）は所定の値（たとえば、１）に維持される。リーン空燃比による運転が終了する時間ｔ２において、適応空燃比制御が開始され、よって目標空燃比KCMDの算出が開始される。
【００１１】
期間ｔ２〜ｔ３において、空燃比をリーンから速やかに復帰させるために、目標空燃比はリッチ空燃比になるよう操作されるべきである。しかしながら、モデルパラメータのドリフトのために目標空燃比KCMDはリーン方向へ操作されている（参照番号２０１）。その結果、該リーンを示す目標空燃比KCMDになるよう空燃比は操作され、有害成分ＮＯｘの排出量を増やす。
【００１２】
期間ｔ３〜ｔ４において、リッチ化された空燃比を目標値に収束させるため、目標空燃比はリーン方向に変化するよう操作されるべきである。しかしながら、モデルパラメータのドリフトのために目標空燃比KCMDはリッチ方向へ操作されている（参照番号２０２）。その結果、空燃比が該リッチを示す目標空燃比KCMDになるよう操作され、有害成分ＨＣの排出量を増やす。
【００１３】
このように、期間ｔ２〜ｔ４において、モデルパラメータのドリフトのために、適切な目標空燃比KCMDが算出されない場合がある。
【００１４】
したがって、リーン空燃比による運転中およびリーン空燃比による運転が終了した直後において、同定器によるモデルパラメータの演算を停止する空燃比制御が必要とされている。
【００１５】
【課題を解決するための手段】
この発明の一つの側面によると、内燃機関の空燃比制御装置は、触媒装置および排気管に配置された排ガスセンサを含む系をモデル化した制御対象モデルのモデルパラメータを算出する同定器を備える。同定器によって算出されたモデルパラメータを用いて、排ガスセンサの出力を所定の目標値に収束するよう空燃比が制御される。内燃機関のリーン空燃比による運転中および該リーン空燃比による運転が終了した時から所定期間の間、同定器によるモデルパラメータの算出が停止される。
【００１６】
この発明によれば、リーン空燃比による運転が終了した時から、同定器によるモデルパラメータを用いて適切な目標空燃比が求められるので、リーン空燃比による運転が終了した後の排ガスの有害成分の排出量を低減することができる。
【００１７】
この発明の他の側面によると、燃料の供給が停止される燃料カット状態における運転中および該燃料カット状態における運転終了時から所定期間の間、同定器によるモデルパラメータの算出が停止される。この発明によれば、燃料カットが終了した時から、同定器によるモデルパラメータを用いて適切な目標空燃比が求められるので、燃料カット状態における運転が終了した後の排ガスの有害成分の排出量を低減することができる。
【００１８】
【発明の実施の形態】
内燃機関および制御装置の構成  
次に図面を参照してこの発明の実施の形態を説明する。図１は、この発明の実施形態による内燃機関（以下、「エンジン」という）およびその制御装置の全体的なシステム構成図である。
【００１９】
電子制御ユニット（以下、「ＥＣＵ」）という）５は、車両の各部から送られてくるデータを受け入れる入力インターフェース５ａ、車両の各部の制御を行うための演算を実行するＣＰＵ５ｂ、読み取り専用メモリ（ＲＯＭ）およびランダムアクセスメモリ（ＲＡＭ）を有するメモリ５ｃ、および車両の各部に制御信号を送る出力インターフェース５ｄを備えている。メモリ５ｃのＲＯＭには、車両の各部の制御を行うためのプログラムおよび各種のデータが格納されている。この発明に従う空燃比制御を実現するためのプログラム、および該プログラムの実行の際に用いるデータおよびテーブルは、このＲＯＭに格納されている。ＲＯＭは、ＥＥＰＲＯＭのような書き換え可能なＲＯＭでもよい。ＲＡＭには、ＣＰＵ５ｂによる演算のための作業領域が設けられる。車両の各部から送られてくるデータおよび車両の各部に送り出す制御信号は、ＲＡＭに一時的に記憶される。
【００２０】
エンジン１は、たとえば４気筒を備えるエンジンである。吸気管２が、エンジン１に連結されている。吸気管２の上流側にはスロットル弁３が設けられている。スロットル弁３に連結されたスロットル弁開度センサ（θＴＨ）４は、スロットル弁３の開度に応じた電気信号を、ＥＣＵ５に供給する。
【００２１】
スロットル弁３をバイパスする通路２１が、吸気管２に設けられている。エンジン１に供給する空気量を制御するためのバイパス弁２２が、バイパス通路２１に設けられている。バイパス弁２２は、ＥＣＵ５からの制御信号に従って駆動される。
【００２２】
燃料噴射弁６は、エンジン１とスロットル弁３の間であって、吸気管２の吸気弁（図示せず）の少し上流側に各気筒毎に設けられている。燃料噴射弁６は、燃料ポンプ（図示せず）に接続され、該燃料ポンプを介して燃料タンク（図示せず）から燃料の供給を受ける。燃料噴射弁６は、ＥＣＵ５からの制御信号に従って駆動される。
【００２３】
吸気管圧力（Ｐｂ）センサ８および吸気温（Ｔａ）センサ９は、吸気管２のスロットル弁３の下流側に設けられている。Ｐｂセンサ８およびＴａセンサ９によって検出された吸気管圧力Ｐｂおよび吸気温Ｔａは、それぞれＥＣＵ５に送られる。
【００２４】
エンジン水温（Ｔｗ）センサ１０は、エンジン１のシリンダブロックの、冷却水が充満した気筒周壁（図示せず）に取り付けられる。Ｔｗセンサ１０によって検出されたエンジン冷却水の温度Ｔｗは、ＥＣＵ５に送られる。
【００２５】
回転数（Ｎｅ）センサ１３は、エンジン１のカム軸またはクランク軸（共に図示せず）周辺に取り付けられる。Ｎｅセンサ１３は、たとえばピストンのＴＤＣ位置に関連したクランク角度で出力されるＴＤＣ信号パルスの周期よりも短いクランク角度（たとえば、３０度）の周期で、ＣＲＫ信号パルスを出力する。ＣＲＫ信号パルスは、ＥＣＵ５によってカウントされ、エンジン回転数Ｎｅが検出される。
【００２６】
エンジン１の下流側には排気管１４が連結されている。エンジン１は、排気管１４を介して排気する。排気管１４の途中に設けられた触媒装置１５は、排気管１４を通る排気ガス中のＨＣ、ＣＯ、ＮＯｘなどの有害成分を浄化する。触媒装置１５には、２つの触媒が設けられている。上流側に設けられた触媒を上流触媒と呼び、下流側に設けられた触媒を下流触媒と呼ぶ。
【００２７】
広域空燃比センサ（ＬＡＦ）センサ１６は、触媒装置１５の上流に設けられている。ＬＡＦセンサ１６は、リーンからリッチにわたる広範囲の空燃比を検出する。検出された空燃比は、ＥＣＵ５に送られる。
【００２８】
Ｏ２（排ガス）センサ１７は、上流触媒と下流触媒の間に設けられている。Ｏ２センサ１７は２値型の排気ガス濃度センサである。Ｏ２センサは、空燃比が理論空燃比よりもリッチであるとき高レベルの信号を出力し、空燃比が理論空燃比よりもリーンであるとき低レベルの信号を出力する。出力された電気信号は、ＥＣＵ５に送られる。
【００２９】
ＥＣＵ５に向けて送られた信号は入力インターフェース５ａに渡され、アナログ−デジタル変換される。ＣＰＵ５ｂは、変換されたデジタル信号を、メモリ５ｃに格納されているプログラムに従って処理し、車両のアクチュエータに送るための制御信号を作り出す。出力インターフェース５ｄは、これらの制御信号を、バイパス弁２２、燃料噴射弁６、およびその他の機械要素のアクチュエータに送る。
【００３０】
図２は、触媒装置１５の構造を示す。排気管１４に流入した排気ガスは、上流触媒２５を通過し、その後下流触媒２６を通過する。上流および下流触媒の間に設けられたＯ２センサの出力に基づく空燃比制御の方が、下流触媒の下流に設けられたＯ２センサの出力に基づく空燃比制御よりも、Ｎｏｘの浄化率を最適に維持しやすいことがわかっている。そのため、この発明に従う実施形態では、Ｏ２センサ１７を、上流および下流触媒の間に設ける。Ｏ２センサ１７は、上流触媒２５を通過した後の排気ガスの酸素濃度を検出する。
【００３１】
代替的に、Ｏ２センサを、下流触媒２６の下流に設けてもよい。また、１つの触媒によって触媒装置１５が実現されている場合には、該触媒装置１５の下流にＯ２センサは設けられる。
【００３２】
図３は、上流触媒および下流触媒の浄化の挙動を示す。ウィンドウ２７は、ＣＯ、ＨＣおよびＮＯｘが最適に浄化される空燃比領域を示す。上流触媒２５において、排気ガス中の酸素が浄化作用に消費されるため、下流触媒２６に供給される排気ガスは、ウィンドウ２８によって示されるような還元雰囲気（すなわち、リッチ状態）を有している。このような還元雰囲気において、さらなる量のＮＯｘが浄化される。こうして排気ガスは、クリーンな状態で排気される。
【００３３】
この発明に従う空燃比の適応制御は、触媒１５の浄化性能を最適に維持するため、Ｏ２センサ１７の出力を目標値に収束させることにより、空燃比がウィンドウ２７内に収まるようにする。
【００３４】
参照番号２９は、適応空燃比制御における空燃比の操作量の限界を規定する許容範囲を例示しており、これについての詳細は後述される。
【００３５】
図４は、図２のＬＡＦセンサ１６からＯ２センサ１７にいたるブロック図である。ＬＡＦセンサ１６は、上流触媒２５に供給される排ガスの空燃比KACTを検出する。Ｏ２センサ１７は、上流触媒２５によって浄化された排ガスの酸素濃度を、電圧Vo2/OUTとして出力する。ＬＡＦセンサ１６からＯ２センサ１７までの排気系１９が、この発明に従う適応空燃比制御の制御対象（プラント）となる。
【００３６】
適応空燃比制御  
図５は、適応空燃比制御の制御ブロック図を示す。制御対象である排気系１９のＯ２センサ１７の出力Vo2/OUTが、目標値Vo2/TARGETと比較される。比較結果に基づいて、制御器３１は、目標空燃比偏差kcmdを求める。目標空燃比偏差kcmdを基準値FLAF/BASEに加算し、目標空燃比KCMDを求める。目標空燃比KCMDによって補正された燃料噴射量が、エンジン１に供給される。その後、排気系のＯ２センサ１７の出力Vo2/OUTが再び検出される。
【００３７】
このように、制御器３１は、Ｏ２センサ１７の出力Vo2/OUTを目標値Vo2/TARGETに収束するよう目標空燃比KCMDを求めるフィードバック制御を実行する。制御対象である排気系１９を、出力をVo2/OUT、入力をＬＡＦセンサの出力KACTとして、式（１）のようにモデル化することができる。排気系１９は離散時間系モデルとしてモデル化される。離散時間系モデルは、空燃比制御のアルゴリズムをコンピュータ処理に適した簡易なものとする。ｋはサイクルを識別する識別子である。
【００３８】
【数１】
0003824983.tif 000002
【００３９】
Vo2は、式（１）に示されるように、Ｏ２センサ１７の出力値Vo2/OUTの目標値Vo2/TARGETに対する偏差（以下、センサ出力偏差と呼ぶ）を示す。実空燃比偏差kactは、基準値FLAF/BASEに対するＬＡＦセンサの出力KACTの偏差を示す（kact=KACT−FLAF/BASE）。空燃比の基準値FLAF/BASEは、目標空燃比の中心的な値になるように設定され、たとえば理論空燃比を示す値（すなわち、１）に設定される。基準値FLAF/BASEは、一定値でもよいし、または運転状態に応じて決めるようにしてもよい。
【００４０】
d1は、排気系１９が有するむだ時間を示す。むだ時間d1は、ＬＡＦセンサ１６によって検出された空燃比がＯ２センサ１７の出力に反映されるのに要する時間を示す。a1、a2およびb1はモデルパラメータであり、後述する同定器によって生成される。
【００４１】
一方、エンジン１およびＥＣＵ５からなる空燃比を操作する系は、式（２）のようにモデル化されることができる。目標空燃比偏差kcmdは、基準値FLAF/BASEに対する目標空燃比KCMDの偏差を示す（kcmd=KCMD−FLAF/BASE）。d2は、該空燃比操作系におけるむだ時間を示す。むだ時間d2は、算出された目標空燃比KCMDがＬＡＦセンサ１６の出力KACTに反映されるのに要する時間を示す。
【００４２】
【数２】
0003824983.tif 000003
【００４３】
図６は、図５に示される制御器３１のさらに詳細なブロック図を示す。制御器３１は、同定器３２、推定器３３、スライディングモード制御器３４およびリミッタ３５を備える。
【００４４】
同定器３２は、式（１）におけるモデルパラメータa1、a2およびb1を、モデル化誤差をなくすように同定する。同定器３２によって実施される同定方法を以下に示す。
【００４５】
前回の制御サイクルで算出されたモデルパラメータa1(k−1)、a2(k−1)およびb1(k−1)を用い（以下、これらのパラメータをa1(k−1)ハット、a2(k−1)ハットおよびb1(k−1)ハットと呼ぶ）、今回のサイクルのセンサ出力偏差Vo2(k)（以下、これをセンサ出力偏差Vo2(k)ハットと呼ぶ）を式（３）に従って求める。
【００４６】
【数３】
0003824983.tif 000004
【００４７】
式（３）で算出されたセンサ出力偏差Vo2(k)ハットと、今回の制御サイクルで実際に検出されたセンサ出力偏差Vo2(k)との同定誤差id/e(k)は、式（４）に従って求められる。
【００４８】
【数４】
0003824983.tif 000005
【００４９】
同定器３２は、同定誤差id/e(k)を最小にするように、今回のサイクルにおけるa1(k)ハット、a2(k)ハットおよびb1(k)ハットを算出する。ここで、式（５）に示されるようにベクトルΘを定義する。
【００５０】
【数５】
0003824983.tif 000006
【００５１】
同定器３２は、式（６）に従い、a1(k)ハット、a2(k)ハットおよびb1(k)ハットを求める。式（６）に示されるように、前回の制御サイクルで決定されたa1(k−1)ハット、a2(k−1)ハットおよびb1(k−1)ハットを、同定誤差id/e(k)に比例する量だけ変化させることにより、今回の制御サイクルにおけるa1(k)ハット、a2(k)ハットおよびb1(k)ハットを求める。
【００５２】
【数６】
0003824983.tif 000007
【００５３】
ここで、ベクトルKθは、式（７）に従って算出される。
【００５４】
【数７】
0003824983.tif 000008
【００５５】
また、行列Pは、式（８）に従って算出される。行列Pの初期値P(0)は、各対角成分を正の数とする対角行列である。
【００５６】
【数８】
0003824983.tif 000009
【００５７】
推定器３３は、排気系１９のむだ時間d1および空燃比を操作する系のむだ時間d2を補償するため、むだ時間d（=d1＋d2）後のセンサ出力偏差Vo2を推定する。
【００５８】
まず、排気系のモデル式（１）に、空燃比を操作する系のモデル式（２）を代入すると、式（９）が導かれる。
【００５９】
【数９】
0003824983.tif 000010
【００６０】
式（９）で示されるモデル式は、排気系１９および上記の空燃比を操作する系を合わせた系を表現している。式（９）を用いることにより、むだ時間d後のセンサ出力偏差Vo2(k＋d)の推定値Vo2(k＋d)バーが、式（１０）のようにして求められる。係数α1、α2およびβjは、同定器３２で算出されたモデルパラメータを用いて算出される。目標空燃比偏差の過去の時系列データkcmd(k−j)（ただし、j=1、2、．．．d）は、むだ時間dの長さの間に取得された目標空燃比偏差を含む。
【００６１】
【数１０】
0003824983.tif 000011
【００６２】
むだ時間d2以前の空燃比偏差kcmdの過去の値kcmd(k−d2)、kcmd(k−d2−1)、．．．kcmd(k−d)の値を、上記の式（２）を用いてＬＡＦセンサ１６の偏差出力kac(k)、kact(k−1)、．．．kact(k−d＋d2)で置き換えることができる。その結果、式（１１）が得られる。
【００６３】
【数１１】
0003824983.tif 000012
【００６４】
スライディングモード制御器３４は、スライディングモード制御を実行するため、切換関数σを式（１２）のように設定する。
【００６５】
【数１２】
0003824983.tif 000013
【００６６】
ここで、Vo2(k−1)は、前述したように前回のサイクルで検出されたセンサ出力偏差を示す。Vo2(k)は、今回のサイクルで検出されたセンサ出力偏差を示す。ｓは、切換関数σの設定パラメータであり、−１＜ｓ＜１となるよう設定される。
【００６７】
切換関数σ(k)＝０とした式は等価入力系と呼ばれ、制御量であるセンサ出力偏差Vo2の収束特性を規定する。σ(k)＝０とすると、式（１２）は以下の式（１３）のように変形することができる。
【００６８】
【数１３】
0003824983.tif 000014
【００６９】
ここで、図７および式（１３）を参照して、切換関数σの特性を説明する。図７は、縦軸がVo2(k)および横軸がVo2(k−1)の位相平面上に、式（１３）を線４１で表現したものである。この線４１を切換直線と呼ぶ。Vo2(k−1)およびVo2(k)の組合せからなる状態量（Vo2(k−1), Vo2(k)）の初期値が、点４２で表されているとする。スライディングモード制御は、点４２で表される状態量を、切換直線４１上に載せて該直線４１上に拘束するよう動作する。スライディングモード制御によると、状態量を切換直線４１上に保持することにより、該状態量を、外乱等に影響されることなく、極めて安定的に位相平面上の原点０に収束させることができる。言い換えると、状態量（Vo2(k−1), Vo2(k)）を、式（１３）に示される入力の無い安定系に拘束することにより、外乱およびモデル化誤差に対してロバストにセンサ出力Vo2/OUTを目標値Vo2/TARGETに収束させることができる。
【００７０】
切換関数設定パラメータｓは、可変に設定することができるパラメータである。設定パラメータｓを調整することにより、センサ出力偏差Vo2の減衰（収束）特性を指定することができる。
【００７１】
図８は、スライディングモード制御の応答指定特性の一例を示すグラフである。グラフ４３は、ｓの値が“−１”である場合を示し、グラフ４４はｓの値が“−０．８”である場合を示し、グラフ４５はｓの値が“−０．５”である場合を示す。グラフ４３〜４５から明らかなように、ｓの値に従って、センサ出力偏差Vo2の収束速度が変化する。ｓの絶対値を小さくするほど、収束速度が速くなる。
【００７２】
切換関数σの値をゼロにするよう、３つの制御入力が決定される。すなわち、状態量を切換直線上に拘束するための制御入力Ｕeq、状態量を切換直線上に載せるための制御入力Ｕrch、およびモデル化誤差および外乱を抑制しつつ、状態量を切換直線に載せるための制御入力Ｕadpが算出される。これら３つの制御入力Ｕeq、ＵrchおよびＵadpの和を算出して、空燃比偏差kcmdを算出するための要求偏差Ｕslを求める。
【００７３】
等価制御入力Ｕeqは、状態量を切換直線上に拘束するための入力であるので、式（１４）を満たすことが条件となる。
【００７４】
【数１４】
0003824983.tif 000015
【００７５】
したがって、σ(k＋1)＝σ(k)とするための等価制御入力Ｕeqは、式（９）および（１２）から、式（１５）のように算出される。
【００７６】
【数１５】
0003824983.tif 000016
【００７７】
切換関数σの値に応じた値を持つ到達則入力Ｕrchを、式（１６）に従って算出する。この実施例では、到達則入力Ｕrchは切換関数σの値に比例した値を持つ。Ｋrchは到達則のフィードバックゲインを示し、これは、切換直線σ＝０への収束の安定性および速応性等を考慮して、シミュレーション等に基づいて予め定められる。
【００７８】
【数１６】
0003824983.tif 000017
【００７９】
切換関数σの積算値に応じた値を持つ適応則入力Ｕadpを、式（１７）に従って算出する。この実施例では、適応則入力Ｕadpは切換関数σの積算値に比例した値を持つ。Ｋadpは適応則のフィードバックゲインを示し、これは、切換直線σ＝０への収束の安定性および速応性等を考慮して、シミュレーション等に基づいて予め定められる。ΔＴは、制御サイクルの周期を示す。
【００８０】
【数１７】
0003824983.tif 000018
【００８１】
センサ出力偏差Vo2(k＋d)およびVo2(k＋d−1)と、切換関数の値σ(k＋d)は、むだ時間dが考慮された予測値であるので、これらを直接求めることはできない。そこで、推定器３３によって求められた推定偏差Vo2(k＋d)バーおよびVo2(k＋d−1)バーを用い、等価制御入力Ｕeqを求める。
【００８２】
【数１８】
0003824983.tif 000019
【００８３】
また、推定器３３によって算出された推定偏差を用いて、式（１９）に示されるように切換関数σバーが算出される。
【００８４】
【数１９】
0003824983.tif 000020
【００８５】
切換関数σバーを用いて、到達則入力Ｕrchおよび適応則入力Ｕadpを算出する。
【００８６】
【数２０】
0003824983.tif 000021
【００８７】
【数２１】
0003824983.tif 000022
【００８８】
式（２２）に示されるように、等価制御入力Ｕeq、到達則入力Ｕrchおよび適応則入力Ｕadpを加算し、要求偏差Ｕslを求める。
【００８９】
【数２２】
0003824983.tif 000023
【００９０】
リミッタ３５は、要求偏差Ｕslに対してリミット処理を行い、空燃比偏差kcmdを求める。具体的には、リミッタ３５は、要求偏差Ｕslが許容範囲内にあれば、該要求偏差Ｕslを空燃比偏差kcmdとする。要求偏差Ｕslが許容範囲から逸脱している場合は、該許容範囲の上限値または下限値を、空燃比偏差kcmdに設定する。
【００９１】
リミッタ３５で使用される許容範囲は、図３の参照番号２９に示されるように、ウィンドウ２７を略中心として、これを含むさらに広い範囲に設定される。この許容範囲は、要求偏差Ｕslおよび運転状態等に応じてアクティブに移動する。また、この許容範囲は、空燃比の変動によるエンジンの燃焼変動を抑制しつつ、触媒の浄化能力がウィンドウ２７の最適な状態から外れた際に速やかに該最適な状態に復帰させるのに十分な幅を持つ。よって、過渡状態での触媒浄化率を高く保つことができ、有害な排ガス成分を低減することができる。
【００９２】
具体的には、許容範囲は、算出された要求偏差Ｕslに応じて可変に更新される。たとえば、要求偏差Ｕslの許容範囲からの逸脱量に応じて、許容範囲を拡大する。または、要求偏差Ｕslが許容範囲内にあるとき、該許容範囲を縮小する。こうして、Ｏ２センサ１７の出力を目標値に収束させるのに必要な空燃比を規定する要求偏差Ｕslに適した許容範囲が設定される。
【００９３】
さらに、許容範囲は、Ｏ２センサ１７の出力の不安定さが高いほど狭く設定される。また、許容範囲は、始動時、アイドリング運転状態および燃料カットが解除された時等を含め、運転状態に応じて設定されるようにしてもよい。
【００９４】
リミッタ３５によって求められた空燃比偏差kcmdは基準値FLAF/BASEに加算され、目標空燃比KCMDを求める。該目標空燃比KCMDを、制御対象である排気系１９に与えることにより、Ｏ２センサの出力Vo2/OUTを目標値Vo2/TARGETに収束させることができる。
【００９５】
代替の実施形態においては、空燃比の基準値FLAF/BASEは、リミッタ３５によるリミット処理が終了した後、スライディングモード制御器３４によって算出される適応則入力Ｕadpに応じて設定される。具体的には、基準値FLAF/BASEは、初期値として理論空燃比が設定される。適応則Ｕadpが予め決められた上限値を超えているならば、基準値FLAF/BASEは所定量だけ増やされる。適応則Ｕadpが予め決められた下限値を下回っているならば、基準値FLAF/BASEは所定量だけ減らされる。適応則Ｕadpが上限値および下限値の間にあれば、基準値FLAF/BASEは維持される。設定されたFLAF/BASEは、次回のサイクルにおいて用いられる。こうして、基準値FLAF/BASEは、目標空燃比KCMDの中心的な値になるよう調整される。
【００９６】
基準値FLAF/BASEの設定処理を上記のリミット処理と組み合わせることにより、要求偏差Ｕslの許容範囲が正負にバランスされる。基準値FLAF/BASEの設定処理は、Ｏ２センサ出力Vo2/OUTが目標値Vo2/TARGETにほぼ収束し、スライディングモード制御が安定状態にあると判断されたときに行われるのが好ましい。
【００９７】
空燃比制御フロー  
図９は、本発明の一実施形態に従う、空燃比の制御フローを示す。ステップＳ１０１において、燃料カットフラグの設定処理（図１０）を実施する。ステップＳ１０２において、同定器によるモデルパラメータの算出を許可するかどうかを判断する（図１１）。
【００９８】
ステップＳ１０３において、同定器による演算が許可されたときに１が設定されるフラグＦ＿ＩＤＣＡＬの値を調べる。Ｆ＿ＩＤＣＡＬ＝１ならば、ステップＳ１０４に進み、モデルパラメータa1、a2、およびb1を算出するルーチン（図１２）を実施する。Ｆ＿ＩＤＣＡＬ＝０ならば、ステップＳ１０４をスキップする。
【００９９】
ステップＳ１０５において、ステップＳ１０４で算出されたモデルパラメータを用い、推定器により、推定偏差Vo2バーを、前述した式（１１）に従って求める。
【０１００】
ステップＳ１０６において、切換関数σバー、等価制御入力Ｕeq、適応側入力Ｕadp、および到達側入力Ｕrchを、前述した式（１８）〜（２１）に従って求める。制御入力Ｕslを、式（２２）に従って求める。
【０１０１】
ステップＳ１０７において、前述したように、リミッタ３５により、制御入力Ｕslのリミット処理を実施し、目標空燃比偏差kcmdを求める。
【０１０２】
図１０は、図９のステップＳ１０１で実施される、燃料カットフラグの設定処理を示すフローチャートである。ステップＳ１１１で、燃料カットが実行されているかどうかを判断する。燃料カットが実行されていれば、燃料カットフラグＦ＿ＦＣを１に設定する（Ｓ１１２）。燃料カットが実行されていなければ、燃料カットフラグＦ＿ＦＣを０に設定する（Ｓ１１３）。
【０１０３】
ステップＳ１１４において、燃料カットの運転状態が終了してから、所定期間が経過したかどうかを調べる。所定期間が経過していなければ、燃料カット後フラグＦ＿ＡＦＣを１に設定する（Ｓ１１５）。所定期間が経過していれば、燃料カット後フラグＦ＿ＡＦＣを０に設定する（Ｓ１１６）。
【０１０４】
図１１は、図９のステップＳ１０２で実施される、同定器の演算許可を判断するフローチャートである。ステップＳ１２１において、燃料カットフラグＦ＿ＦＣの値を調べる。Ｆ＿ＦＣ＝１ならば、ステップＳ１２４に進み、許可フラグＦ＿ＩＤＣＡＬをゼロにセットし、同定器による演算を許可しないことを示す。こうして、燃料カット中における同定器のモデルパラメータ算出は停止される。
【０１０５】
ステップＳ１２２において、燃料カット後フラグＦ＿ＡＦＣの値を調べる。Ｆ＿ＡＦＣ＝１ならば、ステップＳ１２４に進み、許可フラグＦ＿ＩＤＣＡＬをゼロにセットし、同定器による演算を許可しないことを示す。こうして、燃料カットが終了してから所定期間内における同定器のモデルパラメータ算出は停止される。
【０１０６】
ステップＳ１２３において、リーン空燃比による運転（以下、リーン運転と呼ぶ）中および該リーン運転が終了してから所定期間の間にわたって値１がセットされるフラグＦ＿ＲＱＩＤＳＴの値を調べる。該フラグＦ＿ＲＱＩＤＳＴは、エンジン始動後のリーン運転、および燃費向上のためのリーン運転が要求されたとき、値１にセットされる。該フラグＦ＿ＲＱＩＤＳＴは、リーン運転が終了してから所定期間が経過したとき、ゼロにリセットされる。
【０１０７】
Ｆ＿ＲＱＩＤＳＴ＝１ならば、ステップＳ１２４に進み、許可フラグＦ＿ＩＤＣＡＬをゼロにセットし、同定器による演算を許可しないことを示す。こうして、リーン運転中および該リーン運転が終了してから所定期間の間は、同定器のモデルパラメータ算出は停止される。
【０１０８】
ステップＳ１２１〜Ｓ１２３の判断がＮｏならば、許可フラグＦ＿ＩＤＣＡＬを１にセットする（Ｓ１２５）。
【０１０９】
図１２は、図９のステップＳ１０４で実施される、モデルパラメータを算出するフローチャートである。
【０１１０】
ステップＳ１３１において、リセットフラグf/id/resetの値を調べる。リセットフラグf/id/resetは、同定器の初期化を行うよう判断されたときに値１がセットされるフラグである。たとえば、Ｏ２センサまたは広域空燃比センサが活性化していないとき、エンジンの始動直後の触媒の早期活性化を図るためにエンジンの点火時期を遅角側に制御する運転状態にあるとき、該リセットフラグf/id/resetは１にセットされる。
【０１１１】
f/id/reset＝１ならば、ステップＳ１３２において同定器を初期化する。具体的には、前述したa1ハット、a2ハットおよびb1ハットのそれぞれの値が、予め定められた初期値に設定される。また、行列Ｐの各成分が、予め定められた初期値に設定される。ステップＳ１３２において、リセットフラグf/id/resetはゼロにセットされる。
【０１１２】
f/id/reset≠１ならば、ステップＳ１３３に進み、前述した式（３）に従って、今回のサイクルにおけるVo2ハット(k)を算出する。ステップＳ１３４に進み、今回のサイクルにおけるa1ハット、a2ハットおよびb1ハットを求めるため、ベクトルＫθ(k)を、前述した式（７）に従って求める。
【０１１３】
ステップＳ１３５において、同定誤差id/e(k)を、前述した式（４）に従って求める。好ましくは、該式（４）によって得られた値（＝Vo2−Vo2ハット）にローパスフィルタリングを適用して、同定誤差id/eを求める。これは、排気系が一般にローパス特性を有するので、該排気系の低周波領域における挙動を考慮してモデルパラメータa1、a2およびb1を同定するのが好ましいからである。代替的に、センサ出力偏差Vo2およびセンサ出力偏差Vo2ハットのそれぞれにローパスフィルタリングを適用した後、式（４）に従って同定誤差id/eを求めてもよい。
【０１１４】
ステップＳ１３６において、ステップＳ１３４で得られたベクトルＫθおよびステップＳ１３５で得られた同定誤差id/eを用いて、前述した式（６）に従い、ベクトルΘ(k)を算出する。これにより、今回のサイクルにおけるモデルパラメータa1(k)ハット、a2(k)ハットおよびb1(k)ハットが得られる。
【０１１５】
ステップＳ１３７において、ステップＳ１３６で得られたモデルパラメータの値が、目標空燃比KCMDの高周波振動を低減するように制限される。ステップＳ１３８において、次の制御サイクルで使用される行列Ｐ(k)を、前述した式（８）に従って算出する。
【０１１６】
図１３は、本発明の一実施形態に従う、リーン空燃比による運転中および該リーン空燃比による運転が終了した直後における、Ｏ２センサ出力Vo2/OUT、モデルパラメータa1およびa2、目標空燃比KCMD、実空燃比KACT、排ガス有害成分ＨＣおよびＮＯｘの遷移を示す。
【０１１７】
リーン運転中（ｔ１〜ｔ２）、およびリーン運転が終了してからの所定期間（ｔ２〜ｔ４）において、同定器によるモデルパラメータ算出が停止される。期間ｔ１〜ｔ４において、モデルパラメータa1、a2およびb1（b1は、図示せず）は、リーン運転が開始される時点ｔ１よりも前に算出された最後の値に維持される。期間ｔ１〜ｔ４において、目標空燃比KCMDの算出は、該維持されているモデルパラメータa1、a2およびb1を用いて継続される。
【０１１８】
期間ｔ１〜ｔ２において、Ｏ２センサ出力Vo2/OUTおよび実空燃比KACTはリーン空燃比を示す。目標空燃比KCMDは、空燃比がリーンであるので、１よりも大きい値を示している（しかしながら、リーン運転中は、空燃比を該目標空燃比KCMDに収束させる上記の適応空燃比制御は実施されない）。
【０１１９】
時間ｔ２においてリーン運転は終了し、前述した適応空燃比制御が開始される。Ｏ２センサ出力Vo2/OUTが目標値Vo2/TARGETに収束するよう目標空燃比KCMDが算出される。期間ｔ２〜ｔ３において、目標空燃比KCMDはリッチ空燃比を示しており、これにより、空燃比はリーンから速やかに復帰する。図１４と比較して明らかなように、目標空燃比KCMDがリーン空燃比に設定されないので、空燃比がさらにリーン方向に操作されることが防止され、Ｎｏｘの排出量を低減する。
【０１２０】
期間ｔ３〜ｔ４において、目標空燃比はリッチからリーンに向かって変化し、これにより、リッチ化された空燃比が速やかに目標値に収束する。図１４と比較して明らかなように、目標空燃比KCMDがリッチ方向へ変化しないので、リッチ化された空燃比がさらにリッチ方向へ操作されることが防止され、ＨＣの排出量を低減する。時間ｔ４において、同定器によるモデルパラメータの算出が開始される。
【０１２１】
このように、期間ｔ１〜ｔ４において、同定器によるモデルパラメータ算出が停止されるので、モデルパラメータにドリフトが発生しない。したがって、リーン運転が終了した時から、適切な目標空燃比KCMDを算出することができる。適切な目標空燃比KCMDの算出が期間ｔ１〜ｔ４において継続的に実施されるので、過去のサイクルで算出された目標空燃比KCMD、Ｏ２センサ出力Vo2/OUTおよび実空燃比KACTを用いて制御入力を決定する上記の適応空燃比制御を、リーン運転が終了した時から安定的に実施することができる。
【０１２２】
この明細書においては、スライディングモード制御を用いて適応空燃比制御を実施する例を説明した。しかしながら、他の応答指定型制御を用いて適応空燃比制御を実施する場合にも、本発明を適用することができる。
【０１２３】
本発明は、クランク軸を鉛直方向とした船外機などのような船舶推進機用エンジンにも適用が可能である。
【０１２４】
【発明の効果】
この発明によると、リーン運転（燃料カットを含む）後の排ガスの有害成分の排出を低減することができる。
【図面の簡単な説明】
【図１】この発明の一実施例に従う、内燃機関およびその制御装置を概略的に示す図。
【図２】この発明の一実施例に従う、触媒装置および排ガスセンサの配置を示す図。
【図３】この発明の一実施例に従う、空燃比制御の概要を示す図。
【図４】この発明の一実施例に従う、制御対称である排気系を示すブロック図。
【図５】この発明の一実施例に従う、空燃比制御の制御ブロック図。
【図６】この発明の一実施例に従う、制御器の詳細な機能ブロック図。
【図７】この発明の一実施例に従う、応答指定型制御における切換直線を概略的に示す図。
【図８】この発明の一実施例に従う、応答指定型制御における応答特性を示す図。
【図９】この発明の一実施例に従う、空燃比制御フローを示す図。
【図１０】この発明の一実施例に従う、燃料カットフラグの設定処理を示すフローチャート。
【図１１】この発明の一実施例に従う、同定器の演算許可を判断する処理を示すフローチャート。
【図１２】この発明の一実施例に従う、モデルパラメータの算出処理を示すフローチャート。
【図１３】この発明の一実施例に従う、リーン運転中およびリーン運転終了後における、排ガスセンサ出力、モデルパラメータ、目標空燃比、実空燃比、および排ガスの有害成分の排出量の遷移を示す図。
【図１４】従来の空燃比制御に従う、リーン運転中およびリーン運転終了後における、排ガスセンサ出力、モデルパラメータ、目標空燃比、実空燃比、および排ガスの有害成分の排出量の遷移を示す図。
【符号の説明】
１  エンジン
５  ＥＣＵ
１４  排気管
１５  触媒装置
１６  ＬＡＦセンサ
１７  Ｏ２センサ
２５  上流触媒
【図１】
0003824983.tif 000024
【図２】
0003824983.tif 000025
【図３】
0003824983.tif 000026
【図４】
0003824983.tif 000027
【図５】
0003824983.tif 000028
【図６】
0003824983.tif 000029
【図７】
0003824983.tif 000030
【図８】
0003824983.tif 000031
【図９】
0003824983.tif 000032
【図１０】
0003824983.tif 000033
【図１１】
0003824983.tif 000034
【図１２】
0003824983.tif 000035
【図１３】
0003824983.tif 000036
【図１４】
0003824983.tif 000037