(57)【特許請求の範囲】
【請求項１】
制御対象における制御量を制御入力によって制御する制御装置であって、
前記制御量を検出する制御量検出手段と、
前記制御量の目標となる目標制御量を設定する目標制御量設定手段と、
前記制御量を前記目標制御量に収束させるようにフィードバック制御するためのフィードバック補正値を、所定の第１フィードバック制御アルゴリズムを用いて算出するフィードバック補正値算出手段と、
前記制御量以外の、前記制御対象の動作状態を表す動作状態パラメータを検出する動作状態パラメータ検出手段と、
前記制御量を前記目標制御量にフィードフォワード制御するためのフィードフォワード入力を、当該フィードフォワード入力と前記動作状態パラメータとの間の相関関係を表す相関関係モデルおよび前記動作状態パラメータを用いて算出するフィードフォワード入力算出手段と、
前記フィードフォワード入力を前記フィードバック補正値で補正した値に基づき、前記制御入力を算出する制御入力算出手段と、
を備え、
前記フィードフォワード入力算出手段は、
所定の複数の関数の値を前記フィードバック補正値および所定の目標値の一方と他方との偏差に乗算することによって、複数の第１乗算値を算出し、所定の第２フィードバック制御アルゴリズムを用いて、当該複数の第１乗算値が値０になるように、複数の修正係数を算出し、当該複数の修正係数に前記所定の複数の関数の値をそれぞれ乗算することによって、複数の第２乗算値を算出するとともに、当該複数の第２乗算値の総和を、前記フィードバック補正値を前記所定の目標値にするための第１修正値として設定する第１修正値算出手段と、
当該第１修正値を前記動作状態パラメータに加算することにより、修正後動作状態パラメータを算出する修正後動作状態パラメータ算出手段と、
当該修正後動作状態パラメータを前記相関関係モデルに適用することにより、前記フィードフォワード入力としての第１フィードフォワード入力を算出する第１フィードフォワード入力算出手段と、
を有し、
前記所定の複数の関数はそれぞれ、前記動作状態パラメータが変化し得る領域を区分した複数の領域に対応して、当該対応する領域において値０以外の値に設定されかつ当該対応する領域以外において値０に設定されており、隣り合う各２つの領域が互いに重なり合っているとともに、重なり合う領域に対応する関数の値の総和の絶対値が、関数における最大値の絶対値と等しくなるように設定されていることを特徴とする制御装置。
【請求項２】
前記第１修正値算出手段は、
前記動作状態パラメータに応じて、当該動作状態パラメータに対する前記フィードフォワード入力の感度を表す感度パラメータを算出する感度パラメータ算出手段と、
前記複数の第１乗算値を前記感度パラメータで修正することにより、複数の第１修正乗算値を算出する第１修正乗算値算出手段と、
前記所定の第２フィードバック制御アルゴリズムを用いて、当該複数の第１修正乗算値が値０になるように、前記複数の修正係数を算出する修正係数算出手段と、
を有することを特徴とする請求項１に記載の制御装置。
【請求項３】
前記フィードフォワード入力算出手段は、
前記フィードフォワード入力のモデル値を、前記動作状態パラメータおよび前記相関関係モデルを用いて算出するモデル値算出手段と、
前記所定の複数の関数の値を前記フィードバック補正値および所定の目標値の一方と他方との偏差に乗算することによって、前記複数の第１乗算値を算出し、前記所定の第２フィードバック制御アルゴリズムを用いて、当該複数の第１乗算値が値０になるように、前記複数の修正係数を算出し、当該複数の修正係数に前記所定の複数の関数の値をそれぞれ乗算することによって、前記複数の第２乗算値を算出するとともに、前記複数の第２乗算値の総和と所定値との和を、前記フィードバック補正値を前記所定の目標値にするための第２修正値として設定する第２修正値算出手段と、
当該第２修正値を前記モデル値に乗算することにより、前記フィードフォワード入力としての第２フィードフォワード入力を算出する第２フィードフォワード入力算出手段と、
前記フィードフォワード入力を、前記第１フィードフォワード入力および当該第２フィードフォワード入力の一方から他方に変更する変更手段と、
をさらに有することを特徴とする請求項１または２に記載の制御装置。
【請求項４】
前記制御量は、内燃機関の排気通路の触媒装置よりも下流側における排ガス中の所定成分の濃度を検出する排ガス濃度センサの出力であり、
前記目標制御量は、前記触媒装置の排ガス浄化率が所定状態になると推定される目標出力であり、
前記制御入力は、前記内燃機関への燃料供給量であり、
前記動作状態パラメータは、前記内燃機関の運転状態を表す運転状態パラメータであり、
前記フィードフォワード入力は、前記燃料供給量の基本値であり、
前記フィードバック補正値は、前記排ガス濃度センサの前記出力が前記目標出力に収束するように、前記所定の第１フィードバック制御アルゴリズムを用いて算出されるとともに、前記燃料供給量の前記基本値に乗算される燃料補正係数であることを特徴とする請求項１ないし３のいずれかに記載の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、フィードフォワード制御手法による算出値をフィードバック制御手法による算出値で補正した値に基づいて、制御対象への制御入力を算出する制御装置に関する。
【背景技術】
【０００２】
従来、内燃機関の混合気の空燃比を制御する制御装置として、特許文献１に記載されたものを本出願人は既に提案している。この制御装置は、ＬＡＦセンサ、酸素濃度センサ、状態予測器、オンボード同定器、スライディングモードコントローラおよび目標空燃比算出部などを備えている。これらのＬＡＦセンサおよび酸素濃度センサはいずれも、内燃機関の排気通路内の排気ガス中の酸素濃度を表す値すなわち空燃比を検出するためのものであり、排気通路の集合部よりも下流側に設けられている。また、内燃機関は、排気通路の集合部よりも下流側設けられた第１触媒装置と、その下流側に設けられた第２触媒装置を備えている。ＬＡＦセンサは、第１触媒装置の上流側に配置され、酸素濃度センサは、第１触媒装置と第２触媒装置の間に配置されている。
【０００３】
この制御装置では、制御対象モデルとして、ＬＡＦセンサの検出空燃比ＫＡＣＴと空燃比基準値ＦＬＡＦＢＡＳＥとの偏差（以下「空燃比偏差」という）ＤＫＡＣＴを入力とし、酸素濃度センサの出力ＶＯＵＴと所定の目標値ＶＯＵＴ＿ＴＡＲＧＥＴとの偏差（以下「出力偏差」という）ＤＶＯ２を出力とする離散時間系モデルを用い、以下に述べるように、制御入力としての目標空燃比ＫＣＭＤが算出される。
【０００４】
すなわち、状態予測器において、上記制御対象モデルに基づいた所定の予測アルゴリズムにより、出力偏差ＤＶＯ２の予測値が算出され、オンボード同定器で、逐次型最小２乗法により、制御対象モデルのモデルパラメータが同定される。また、スライディングモードコントローラにおいて、出力偏差の予測値およびモデルパラメータの同定値に基づいて、スライディングモード制御アルゴリズムにより、出力偏差ＤＶＯ２が値０に収束するように、操作量Ｕｓｌが算出される。
【０００５】
さらに、目標空燃比算出部において、操作量Ｕｓｌを空燃比基準値ＦＬＡＦＢＡＳＥに加算することにより、目標空燃比ＫＣＭＤが算出され、フィードバック補正係数算出部で、検出空燃比ＫＡＣＴが目標空燃比ＫＣＭＤに収束するように、フィードバック補正係数ＫＦＢが算出される。また、基本噴射量算出部では、エンジン回転数ＮＥおよび吸気圧ＰＢに応じて、マップを検索することによって、基本噴射量Ｔｉｍが算出される。さらに、この基本噴射量Ｔｉｍに各種の補正係数を乗算することによって、要求燃料噴射量Ｔｃｙｌが算出される。
【０００６】
次いで、この要求燃料噴射量Ｔｃｙｌにフィードバック補正係数ＫＦＢを乗算することによって、燃料噴射量Ｔｏｕｔが、検出空燃比ＫＡＣＴを上記目標空燃比ＫＣＭＤに収束させるように算出され、その結果、酸素濃度センサの出力ＶＯＵＴが所定の目標値ＶＯＵＴ＿ＴＡＲＧＥＴに収束するように、空燃比が制御される。この所定の目標値ＶＯＵＴ＿ＴＡＲＧＥＴは、酸素濃度センサの出力ＶＯＵＴがこの値にあるときに、第１触媒装置において良好な排ガス浄化率が得られるような値に設定されている。
【０００７】
【特許文献１】特開２０００−２３４５５０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
上記特許文献１の制御装置を、モータサイクル用内燃機関などの小排気量の内燃機関に適用しようとした場合、以下のように構成することが考えられる。すなわち、小排気量の内燃機関は、一般的に、大排気量の内燃機関と比べて、吸気通路が極めて短くかつ吸気チャンバの容積がかなり小さいことによって、吸気通路内の吸気脈動および吸気圧脈動が大きいという特性を有している。そのため、基本噴射量Ｔｉｍを、吸入空気量または吸気圧などに応じて算出した場合、エアフローメータまたは吸気圧センサの検出信号の信頼性が極めて低いことで、基本噴射量Ｔｉｍの算出精度を低下を招くので、基本噴射量Ｔｉｍの算出用マップとしては、特許文献１のマップに代えて、スロットル弁開度センサで検出したスロットル弁の開度（以下「スロットル弁開度」という）ＴＨと、エンジン回転数ＮＥとに対応してマッピングされたものを用いればよい。
【０００９】
また、特許文献１のＬＡＦセンサを小排気量の内燃機関に適用した場合、ＬＡＦセンサが高価なため、コストアップを招くことに加えて、ＬＡＦセンサの出力を安定化させるのにヒータ加熱が必要な分、燃費が悪化することになるので、以上の観点からＬＡＦセンサを省略する必要がある。このようにＬＡＦセンサを省略する場合、特許文献１の制御装置において、制御対象モデルとして、目標空燃比ＫＣＭＤと空燃比基準値ＦＬＡＦＢＡＳＥとの偏差ＤＫＣＭＤを入力とし、酸素濃度センサの出力ＶＯＵＴと所定の目標値ＶＯＵＴ＿ＴＡＲＧＥＴとの偏差ＤＶＯ２を出力とする離散時間系モデルを用いればよい。
【００１０】
小排気量の内燃機関用の制御装置（以下「小排気量制御装置」という）を以上のように構成した場合、低コスト化および燃費の向上を達成できるものの、以下に述べるオフセットずれ、温度ドリフトおよびスラッジ堆積の３つの事象が発生すると、基本噴射量Ｔｉｍを適切に算出できなくなる可能性がある。ここで、本明細書における「オフセットずれ」とは、衝撃や機械的な遊びなどに起因して、スロットル弁開度センサのゼロ点位置が正しい位置からずれることをいう。また、「温度ドリフト」とは、内燃機関が高負荷運転状態で高温のときに、その影響によってスロットル弁開度センサの検出信号がドリフトすることで、検出信号から算出したスロットル弁開度ＴＨが実際値に対してずれることをいう。さらに、「スラッジ堆積」とは、内燃機関の使用期間が長くなることで、スロットル弁やその周囲の吸気通路の内壁にスラッジなどが堆積した状態をいう。
【００１１】
上記オフセットずれまたは温度ドリフトが発生した場合、基本噴射量Ｔｉｍの適切な値（必要な値）とスロットル弁開度ＴＨとの関係が、マップ値とスロットル弁開度ＴＨとの関係からずれてしまう。なお、本明細書の以下の説明では、上記３つの事象に起因して、マップから算出した基本噴射量Ｔｉｍが適切な値に対して誤差を生じることを「マップ誤差」という。このようなマップ誤差が発生した場合、上記の小排気量制御装置では、フィードバック補正係数ＫＦＢを用いて、空燃比フィードバック制御が実行されるので、内燃機関が定常運転状態にあるときには、マップ誤差の影響を補償しながら、酸素濃度センサの出力ＶＯＵＴを所定の目標値ＶＯＵＴ＿ＴＡＲＧＥＴに収束させることができる。
【００１２】
しかし、フィードバック制御手法は、フィードフォワード制御手法と比べて、その応答性が低いという特性を有しているので、上記マップ誤差が発生している場合において、内燃機関が定常運転状態から過渡運転状態に移行すると、マップ誤差の影響を空燃比フィードバック制御で適切に補償することができず、酸素濃度センサの出力ＶＯＵＴが所定の目標値ＶＯＵＴ＿ＴＡＲＧＥＴから離間してしまう。その結果、空燃比制御の制御精度が低下することで、排ガス特性が悪化してしまう。
【００１３】
また、スラッジ堆積が発生している場合、スラッジ堆積が発生していない場合と比べて、吸入空気量が低下するので、基本噴射量Ｔｉｍの適切な値と、スロットル弁開度ＴＨおよびエンジン回転数ＮＥとの関係が、マップ値とエンジン回転数ＮＥおよびスロットル弁開度ＴＨとの関係からずれてしまい、マップ誤差が発生してしまう。その結果、上述したように、内燃機関が過渡運転状態にあるときに、マップ誤差の影響を適切に補償することができず、空燃比制御の制御精度が低下することで、排ガス特性が悪化してしまう。
【００１４】
本発明は、上記課題を解決するためになされたもので、フィードフォワード制御手法による算出値をフィードバック制御手法による算出値で補正した値に基づき、制御入力を算出する場合において、制御対象が過渡状態にあるときでも、高い制御精度を確保することができる制御装置を提供することを目的とする。
【課題を解決するための手段】
【００１９】
上記目的を達成するために、請求項１に係る発明は、制御対象における制御量（酸素濃度センサの出力ＶＯ２）を制御入力（燃料噴射量Ｔｏｕｔ）によって制御する制御装置１であって、制御量を検出する制御量検出手段（酸素濃度センサ１２）と、制御量の目標となる目標制御量（目標出力ＶＯ２＿ＴＲＧＴ）を設定する目標制御量設定手段（ＥＣＵ２）と、制御量を目標制御量に収束させるようにフィードバック制御するためのフィードバック補正値（燃料補正係数ＫＡＦ）を、所定の第１フィードバック制御アルゴリズム［式（１）〜（５）］を用いて算出するフィードバック補正値算出手段（ＥＣＵ２、燃料補正係数算出部２０）と、制御量以外の、制御対象の動作状態を表す動作状態パラメータ（スロットル弁の開度ＴＨ、エンジン回転数ＮＥ）を検出する動作状態パラメータ検出手段（ＥＣＵ２、スロットル弁開度センサ１０、クランク角センサ１１）と、制御量を目標制御量にフィードフォワード制御するためのフィードフォワード入力（基本噴射量Ｔｉｂｓ、第２および第３基本噴射量Ｔｉｂｓ２，３）を、フィードフォワード入力と動作状態パラメータとの間の相関関係を表す相関関係モデル（図１２、図１５）および動作状態パラメータを用いて算出するフィードフォワード入力算出手段（ＥＣＵ２、燃料コントローラ３０、第２および第３燃料コントローラ５０，７０）と、フィードフォワード入力（基本噴射量Ｔｉｂｓ）をフィードバック補正値（燃料補正係数ＫＡＦ）で補正した値に基づき、制御入力（燃料噴射量Ｔｏｕｔ）を算出する制御入力算出手段（ＥＣＵ２、乗算器２１）と、を備え、フィードフォワード入力算出手段は、所定の複数の関数（結合関数ωi）の値をフィードバック補正値および所定の目標値の一方と他方との偏差（モデル誤差Ｅｍ）に乗算することによって、複数の第１乗算値ωiＥｍを算出し、所定の第２フィードバック制御アルゴリズム［式（１４）〜（１８）］を用いて、複数の第１乗算値ωiＥｍが値０になるように、複数の修正係数θiを算出し、複数の修正係数θiに所定の複数の関数ωiの値をそれぞれ乗算することによって、複数の第２乗算値ωiθiを算出するとともに、複数の第２乗算値ωiθiの総和を、フィードバック補正値を所定の目標値にするための第１修正値（第２開度補正値ＤＴＨ２）として設定する第１修正値算出手段（ＥＣＵ２、第２燃料コントローラ５０）と、第１修正値（第２開度補正値ＤＴＨ２）を動作状態パラメータ（スロットル弁の開度ＴＨ）に加算することにより、修正後動作状態パラメータ（第２補正後開度ＴＨｍｏｄ２）を算出する修正後動作状態パラメータ算出手段（ＥＣＵ２、第２燃料コントローラ５０）と、修正後動作状態パラメータを相関関係モデルに適用することにより、フィードフォワード入力としての第１フィードフォワード入力（第２基本噴射量Ｔｉｂｓ２）を算出する第１フィードフォワード入力算出手段（ＥＣＵ２、第２基本噴射量算出部６７）と、を有し、所定の複数の関数はそれぞれ、動作状態パラメータが変化し得る領域を区分した複数の領域に対応して、対応する領域において値０以外の値に設定されかつ対応する領域以外において値０に設定されており、隣り合う各２つの領域が互いに重なり合っているとともに、重なり合う領域に対応する関数の値の総和の絶対値（値１）が、関数における最大値の絶対値（値１）と等しくなるように設定されていることを特徴とする。
【００２０】
この制御装置によれば、制御量を目標制御量に収束させるようにフィードバック制御するためのフィードバック補正値が、所定の第１フィードバック制御アルゴリズムを用いて算出され、制御量を目標制御量にフィードフォワード制御するためのフィードフォワード入力が、フィードフォワード入力と動作状態パラメータとの相関関係を表す相関関係モデル、および動作状態パラメータを用いて算出され、このフィードフォワード入力をフィードバック補正値で補正した値に基づき、制御入力が算出される。以上のように制御入力を算出した場合、動作状態パラメータの検出結果の信頼性の低下や経年変化などに起因して、相関関係モデルがフィードフォワード入力と動作状態パラメータとの間の実際の相関関係を適切に表さない状態となっているとき、言い換えれば、相関関係モデルが両者の実際の相関関係に対してずれているときには、フィードフォワード入力が不適切な値に算出されることで、制御量が目標制御量から離間し、制御誤差が発生してしまう。このような制御誤差が発生した場合、制御対象が定常状態にあるときには、制御誤差をフィードバック補正値によって適切に補償できるものの、制御対象が過渡状態にあるときには、フィードバック制御手法は、フィードフォワード制御手法と比べて、その応答性が低いという特性を有しているので、制御誤差をフィードバック補正値によって適切に補償することができない。また、そのような状態で算出されたフィードバック補正値の大小度合は、制御誤差の大小度合を表すことになる。
【００２１】
これに対して、この制御装置によれば、所定の複数の関数の値をフィードバック補正値および所定の目標値の一方と他方との偏差に乗算することによって、複数の第１乗算値が算出され、所定の第２フィードバック制御アルゴリズムを用いて、複数の第１乗算値が値０になるように、複数の修正係数が算出され、複数の修正係数に所定の複数の関数の値をそれぞれ乗算することによって、複数の第２乗算値が算出されるとともに、複数の第２乗算値の総和が、フィードバック補正値を所定の目標値にするための第１修正値として設定される。さらに、この第１修正値を動作状態パラメータに加算することにより、修正後動作状態パラメータが算出され、この修正後動作状態パラメータを相関関係モデルに適用することにより、フィードフォワード入力としての第１フィードフォワード入力が算出されるので、相関関係モデルがフィードフォワード入力と動作状態パラメータの実際の相関関係に対してずれることで、フィードバック補正値が所定の目標値から離間している場合でも、フィードバック補正値が所定の目標値になるように、フィードフォワード入力を算出することができる。
【００２２】
すなわち、相関関係モデルのずれを迅速かつ適切に補償しながら、フィードフォワード入力を精度よく算出することができる。その結果、制御対象が過渡状態にあるときでも、制御誤差を適切に抑制することができ、高い制御精度を確保することができる。特に、相関関係モデルとして、フィードフォワード制御手法において一般的な、動作状態パラメータとフィードフォワード入力との間の相関関係を表すＮ（Ｎは自然数）次元マップや、両者の相関関係を表す算出式などを用いた場合、フィードバック補正値によって制御誤差を補償する場合と比べて、制御誤差をより迅速に補償することができる（なお、本明細書における「相関関係モデル」は、応答曲面モデルや数学的モデルに限らず、Ｎ（Ｎは自然数）次元マップや所定の算出アルゴリズムなどの、動作状態パラメータとフィードフォワード入力との間の相関関係を表すものをすべて含む。また、本明細書における「パラメータの検出」は、パラメータを、センサによって直接的に検出することに限らず、算出または推定することも含む）。
【００２３】
これに加えて、この制御装置によれば、所定の複数の関数は、動作状態パラメータが変化し得る領域を区分した複数の領域にそれぞれ対応して、対応する領域においてのみ値０以外の値に設定されかつ対応する領域以外において値０に設定されており、互いに重なり合う領域において、この重なり合う領域に対応する関数の値の総和の絶対値は、関数における最大値の絶対値と等しくなるように設定されている。そのような所定の複数の関数の値を、フィードバック補正値および所定の目標値の一方と他方との偏差に乗算することによって、複数の第１乗算値が算出され、所定の第２フィードバック制御アルゴリズムを用いて、複数の第１乗算値が値０になるように、複数の修正係数が算出されるので、偏差を複数の関数の値を介して、複数の修正係数に配分することができる。それにより、複数の修正係数を用いて算出した第１修正値によって、複数の領域における相関関係モデルのずれ度合を適切に補償することができる。特に、相関関係モデルのずれが発生している場合において、そのずれの変化方向が複数の領域毎に異なっているときでも、そのようなずれを領域毎に補償することができる。
【００２４】
さらに、複数の関数の値を複数の修正係数にそれぞれ乗算することによって、複数の第２乗算値が算出されるので、複数の第２乗算値の総和を、修正係数を連続的に結合させた値として算出することができる。それにより、そのような複数の第２乗算値の総和を第１修正値として設定することによって、動作状態パラメータが急変したときでも、フィードフォワード入力を滑らかに段差なく変化するように算出することができる。その結果、制御精度および制御の安定性を向上させることができる。
【００２５】
請求項２に係る発明は、請求項１に記載の制御装置１において、第１修正値算出手段は、動作状態パラメータに応じて、動作状態パラメータに対するフィードフォワード入力の感度を表す感度パラメータ（重みＷ）を算出する感度パラメータ算出手段と（ＥＣＵ２、重み算出部５４）、複数の第１乗算値ωiＥｍを感度パラメータ（重みＷ）で修正することにより、複数の第１修正乗算値（第２補正モデル誤差Ｅｗ２i）を算出する第１修正乗算値算出手段（ＥＣＵ２、乗算器５６〜５８）と、所定の第２フィードバック制御アルゴリズム［式（１４）〜（１８）］を用いて、複数の第１修正乗算値が値０になるように、複数の修正係数θiを算出する修正係数算出手段（ＥＣＵ２、ＳＭコントローラ６２〜６４）と、を有することを特徴とする。
【００２６】
この制御装置によれば、動作状態パラメータに応じて、動作状態パラメータに対するフィードフォワード入力の感度を表す感度パラメータが算出され、複数の第１乗算値を感度パラメータで修正することにより、複数の第１修正乗算値が算出され、所定の第２フィードバック制御アルゴリズムを用いて、複数の第１修正乗算値が値０になるように、複数の修正係数が算出される。すなわち、修正係数は、動作状態パラメータに対するフィードフォワード入力の感度を反映させながら、複数の第１修正乗算値が値０になるように算出されるとともに、そのような修正係数を用いて、第１修正値が算出される。したがって、動作状態パラメータに対するフィードフォワード入力の感度が、動作状態パラメータの領域によって大きく変化するような制御対象においても、フィードフォワード入力が振動的な挙動を示したり、修正値によって誤修正されたりするのを回避しながら、フィードフォワード入力を適切に算出することができる。その結果、制御精度をさらに向上させることができる。
【００２７】
請求項３に係る発明は、請求項１または２に記載の制御装置１において、フィードフォワード入力算出手段は、フィードフォワード入力のモデル値（マップ値Ｔｉｂｓ＿ｍａｐ）を、動作状態パラメータおよび相関関係モデルを用いて算出するモデル値算出手段（ＥＣＵ２、マップ値算出部７７）と、所定の複数の関数（結合関数ωi）の値をフィードバック補正値および所定の目標値の一方と他方との偏差（モデル誤差Ｅｍ）に乗算することによって、複数の第１乗算値ωiＥｍを算出し、所定の第２フィードバック制御アルゴリズム［式（１４）〜（１８）］を用いて、複数の第１乗算値が値０になるように、複数の修正係数θiを算出し、複数の修正係数θiに所定の複数の関数（結合関数ωi）の値をそれぞれ乗算することによって、複数の第２乗算値ωiθiを算出するとともに、複数の第２乗算値の総和（乗算和Ｋｆｆ’）と所定値（値１）との和（１＋Ｋｆｆ’）を、フィードバック補正値を所定の目標値にするための第２修正値（補正係数Ｋｆｆ）として設定する第２修正値算出手段（ＥＣＵ２、第３燃料コントローラ７０）と、第２修正値をモデル値に乗算することにより、フィードフォワード入力としての第２フィードフォワード入力（第３基本噴射量Ｔｉｂｓ３）を算出する第２フィードフォワード入力算出手段（ＥＣＵ２、乗算器７８）と、フィードフォワード入力を、第１フィードフォワード入力（第２基本噴射量Ｔｉｂｓ２）および第２フィードフォワード入力（第３基本噴射量Ｔｉｂｓ３）の一方から他方に変更する変更手段（ＥＣＵ２）と、をさらに有することを特徴とする。
【００３６】
請求項４に係る発明は、請求項１ないし３のいずれかに記載の制御装置１において、制御量は、内燃機関３の排気通路７の触媒装置（第１触媒装置８）よりも下流側における排ガス中の所定成分の濃度（酸素濃度）を検出する排ガス濃度センサ（酸素濃度センサ１２）の出力ＶＯ２であり、目標制御量は、触媒装置の排ガス浄化率が所定状態になると推定される目標出力ＶＯ２＿ＴＲＧＴであり、制御入力は、内燃機関３への燃料供給量（燃料噴射量Ｔｏｕｔ）であり、動作状態パラメータは、内燃機関３の運転状態を表す運転状態パラメータ（スロットル弁の開度ＴＨ、エンジン回転数ＮＥ）であり、フィードフォワード入力は、燃料供給量の基本値（基本噴射量Ｔｉｂｓ）であり、フィードバック補正値は、排ガス濃度センサの出力が目標出力に収束するように、所定の第１フィードバック制御アルゴリズムを用いて算出されるとともに、燃料供給量の基本値（基本噴射量Ｔｉｂｓ）に乗算される燃料補正係数ＫＡＦであることを特徴とする。
【００３７】
この制御装置では、燃料補正係数が、排ガス濃度センサの出力を目標出力に収束させるように、所定の第１フィードバック制御アルゴリズムを用いて算出され、燃料供給量の基本値が、これと運転状態パラメータの間の相関関係を表す相関関係モデルおよび運転状態パラメータを用いて算出され、燃料補正係数を燃料供給量の基本値に乗算することによって、内燃機関への燃料供給量が算出される。このように燃料供給量を算出した場合、運転状態パラメータの検出結果の信頼性の低下や経年変化などに起因して、相関関係モデルが燃料供給量の基本値と運転状態パラメータとの間の実際の相関関係を適切に表さない状態となっているとき、言い換えれば、相関関係モデルが両者の実際の相関関係に対してずれているときには、燃料供給量の基本値が不適切な値に算出されることによって、排ガス濃度センサの出力が目標出力から離間し、両者の偏差が増大してしまうことで、触媒装置の排ガス浄化率が所定状態から外れてしまう可能性がある。その場合、内燃機関が定常状態にあるときには、偏差をフィードバック補正値によって適切に補償できるものの、内燃機関が過渡状態にあるときには、フィードバック制御手法は、フィードフォワード制御手法と比べて、その応答性が低いという特性を有しているので、偏差をフィードバック補正値によって適切に補償することができない。
【００３８】
これに対して、請求項１に係る制御装置の場合、所定の第２フィードバック制御アルゴリズムを用いて、燃料補正係数を所定の目標値にするための第１修正値が算出され、この第１修正値を運転状態パラメータに加算することによって、修正後運転状態パラメータが算出される。すなわち、燃料補正係数が所定の目標値になるように、運転状態パラメータが修正される。さらに、修正後運転状態パラメータおよび相関関係モデルを用いて、燃料供給量の基本値が算出されるので、所定の目標値を適切に設定することによって、相関関係モデルが両者の実際の相関関係に対してずれている場合でも、このようなずれを迅速かつ適切に補償しながら、燃料供給量の基本値を精度よく算出することができる。その結果、内燃機関が過渡状態にあるときでも、排ガス濃度センサの出力と目標出力との偏差を極めて小さい値に抑制することができ、触媒装置の排ガス浄化率を所定状態に維持することができる。それにより、この所定状態を良好な排ガス浄化率に設定することで、良好な排ガス特性を確保することができる。
【発明を実施するための最良の形態】
【００３９】
以下、図面を参照しながら、本発明の一実施形態に係る制御装置について説明する。本実施形態の制御装置は、内燃機関の空燃比を制御するものであり、図１は、この制御装置１およびこれを適用した内燃機関（以下「エンジン」という）３の概略構成を示している。同図に示すように、この制御装置１は、ＥＣＵ２を備えており、このＥＣＵ２は、後述するように、エンジン３の運転状態に応じて、その気筒内に供給される混合気の空燃比を制御する。
【００４０】
このエンジン３は、比較的小排気量で、図示しないモータサイクルに搭載されたガソリンエンジンであり、一般的な自動車用エンジンと比べて、吸気通路４が極めて短くかつ吸気チャンバの容積がかなり小さい値に設定されている。この吸気通路４には、上流側から順に、スロットル弁５および燃料噴射弁６が設けられている。
【００４１】
このスロットル弁５は、吸気通路４の途中に回動自在に設けられているとともに、ギヤ機構およびワイヤを介してスロットルレバー（いずれも図示せず）に連結されている。スロットル弁５は、運転者によるスロットルレバーの操作に従って回動し、それにより、吸気通路４内の空気の流量を変化させる。
【００４２】
また、吸気通路４のスロットル弁５の近傍には、スロットル弁開度センサ１０が設けられている。このスロットル弁開度センサ１０は、例えばポテンショメータなどで構成され、スロットル弁５の開度（以下「スロットル弁開度」という）ＴＨを検出して、それを表す検出信号をＥＣＵ２に出力する。ＥＣＵ２は、スロットル弁開度センサ１０の検出信号に基づき、スロットル弁開度ＴＨを算出する。なお、本実施形態では、スロットル弁開度センサ１０が動作状態パラメータ検出手段に相当し、スロットル弁開度ＴＨが動作状態パラメータおよび運転状態パラメータに相当する。
【００４３】
さらに、燃料噴射弁６は、エンジン３の運転中、ＥＣＵ２からの制御入力信号によって、その開弁時間である燃料噴射量Ｔｏｕｔおよび噴射タイミングが制御される。
【００４４】
一方、エンジン３のクランクシャフト（図示せず）には、クランク角センサ１１が設けられている。このクランク角センサ１１は、クランクシャフトの回転に伴い、いずれもパルス信号であるＣＲＫ信号およびＴＤＣ信号をＥＣＵ２に出力する。ＴＤＣ信号は、各気筒のピストン（図示せず）が吸気行程のＴＤＣ位置よりも若干、手前の所定のクランク角位置にあることを表す信号であり、所定クランク角ごとに１パルスが出力される。
【００４５】
また、ＣＲＫ信号は、所定のクランク角（例えば３０゜）ごとに１パルスが出力される。ＥＣＵ２は、このＣＲＫ信号に応じ、エンジン３の回転数（以下「エンジン回転数」という）ＮＥを算出する。なお、本実施形態では、クランク角センサ１１が動作状態パラメータ検出手段に相当し、エンジン回転数ＮＥが動作状態パラメータおよび運転状態パラメータに相当する。
【００４６】
一方、エンジン３の排気通路７には、上流側から順に、第１触媒装置８および第２触媒装置９が間隔を存して設けられている。両触媒装置８，９はいずれも、ＮＯｘ触媒と３元触媒を組み合わせたものであり、ＮＯｘ触媒による酸化還元作用により、リーンバーン運転時の排気ガス中のＮＯｘを浄化するとともに、３元触媒の酸化還元作用により、リーンバーン運転以外の運転時の排気ガス中のＣＯ、ＨＣおよびＮＯｘを浄化する。
【００４７】
これらの第１および第２触媒装置８，９の間には、酸素濃度センサ（以下「Ｏ２センサ」という）１２が取り付けられている。このＯ２センサ１２は、ジルコニアおよび白金電極などで構成され、第１触媒装置８の下流側の排気ガス中の酸素濃度に基づく検出信号をＥＣＵ２に出力する。このＯ２センサ１２の出力（以下「センサ出力」という）ＶＯ２は、理論空燃比よりもリッチな混合気が燃焼したときには、ハイレベルの電圧値（例えば０．８Ｖ）となり、混合気がリーンのときには、ローレベルの電圧値（例えば０．２Ｖ）となるとともに、混合気が理論空燃比付近のときには、ハイレベルとローレベルの間の所定の目標出力ＶＯ２＿ＴＲＧＴ（例えば０．６Ｖ）となる。
【００４８】
以上のような構成では、第１触媒装置８の劣化・未劣化状態にかかわらず、センサ出力ＶＯ２が目標出力ＶＯ２＿ＴＲＧＴにあるときに、第１触媒装置８がＨＣおよびＮＯｘを最も効率よく浄化することを、本出願人は確認済みである（例えば、特許第３９０４９２３号公報の図２参照）。したがって、センサ出力ＶＯ２が目標出力ＶＯ２＿ＴＲＧＴになるように、混合気の空燃比を制御することにより、第１触媒装置８によって排気ガスを最も効率よく浄化できるので、後述する空燃比制御では、センサ出力ＶＯ２が目標出力ＶＯ２＿ＴＲＧＴに収束するように、燃料補正係数ＫＡＦが算出される。
【００４９】
なお、本実施形態では、酸素濃度センサ１２が制御量検出手段および排ガス濃度センサに相当し、酸素濃度センサ１２の出力ＶＯ２が制御量および排ガス濃度センサの出力に相当し、目標出力ＶＯ２＿ＴＲＧＴが目標制御量に相当する。
【００５０】
ＥＣＵ２は、ＣＰＵ、ＲＡＭ、ＲＯＭおよびＩ／Ｏインターフェース（いずれも図示せず）などからなるマイクロコンピュータで構成されており、前述した各種のセンサ１０〜１２の検出信号などに応じて、エンジン３の運転状態を判別するとともに、各種の制御を実行する。具体的には、ＥＣＵ２は、後述するように、エンジン３の運転状態に応じて、燃料補正係数ＫＡＦを算出し、これに基づいて燃料噴射弁６の燃料噴射量Ｔｏｕｔを算出するとともに、噴射タイミングを算出する。そして、算出した燃料噴射量Ｔｏｕｔおよび噴射タイミングに基づいた制御入力信号で、燃料噴射弁６を駆動することにより、混合気の空燃比を制御する。
【００５１】
なお、本実施形態では、ＥＣＵ２が、目標制御量設定手段や、フィードバック補正値算出手段、動作状態パラメータ検出手段、フィードフォワード入力算出手段、制御入力算出手段、第１修正値算出手段、修正後動作状態パラメータ算出手段、第１フィードフォワード入力算出手段、感度パラメータ算出手段、第１修正乗算値算出手段、修正係数算出手段、モデル値算出手段、第２修正値算出手段、第２フィードフォワード入力算出手段、変更手段に相当する。
【００５２】
次に、図２を参照しながら、本実施形態の制御装置１について説明する。同図に示すように、この制御装置１は、燃料補正係数算出部２０、乗算器２１および燃料コントローラ３０を備えており、これらは、具体的にはＥＣＵ２によって構成されている。
【００５３】
まず、燃料補正係数算出部２０では、以下の式（１）〜（５）に示すスライディングモード制御アルゴリズムによって、燃料補正係数ＫＡＦが算出される。この燃料補正係数ＫＡＦは当量比として算出される。
【００５４】
【数１】
0004759576.tif 000002
【００５５】
上式（１）〜（５）において、記号（ｋ）付きの各データは、所定の制御周期ΔＴ（ＴＤＣ信号の発生周期）で算出またはサンプリングされた離散データであることを表しており、記号ｋは各離散データの制御時刻を表している。例えば、記号ｋは今回の制御タイミングで算出（またはサンプリング）された今回値であることを、記号ｋ−１は前回の制御タイミングで算出された前回値であることをそれぞれ示している。この点は以下の数式においても同様である。なお、以下の説明では、各離散データにおける記号（ｋ）を適宜、省略する。
【００５６】
上式（１）に示すように、追従誤差Ｅａｆは、センサ出力ＶＯ２と目標出力ＶＯ２＿ＴＲＧＴの偏差として算出される。また、上式（２）において、σは切換関数であり、Ｓは−１＜Ｓ＜０の関係が成立するように設定される切換関数設定パラメータである。この場合、切換関数設定パラメータＳの設定値により、追従誤差Ｅａｆの値０への収束速度すなわちセンサ出力ＶＯ２の目標出力ＶＯ２＿ＴＲＧＴへの収束速度が指定される。また、上式（３）において、Ｕｒｃｈは到達則入力であり、Ｋｒｃｈは所定の到達則ゲインを表している。さらに、上式（４）において、Ｕａｄｐは適応則入力であり、Ｋａｄｐは所定の適応則ゲインを表している。
【００５７】
燃料補正係数算出部２０では、燃料補正係数ＫＡＦが、以上のようなスライディングモード制御アルゴリズムによって、センサ出力ＶＯ２を目標出力ＶＯ２＿ＴＲＧＴに収束させるように算出されるとともに、当量比として算出される。そのため、ＶＯ２≒ＶＯ２＿ＴＲＧＴが成立している場合において、マップ誤差が生じていないときには、ＫＡＦ≒１となるとともに、マップ誤差が生じているときには、値１から離間することになる。なお、本実施形態では、燃料補正係数算出部２０がフィードバック補正値算出手段に相当し、燃料補正係数ＫＡＦがフィードバック補正値に相当し、スライディングモード制御アルゴリズムが所定の第１フィードバック制御アルゴリズムに相当する。
【００５８】
さらに、燃料コントローラ３０では、燃料補正係数ＫＡＦ、エンジン回転数ＮＥおよびスロットル弁開度ＴＨに応じて、後述する手法により基本燃料噴射量Ｔｉｂｓが算出される。そして、乗算器２１で、下式（６）によって燃料噴射量Ｔｏｕｔが算出される。
【数２】
0004759576.tif 000003
【００５９】
上式（６）に示すように、燃料噴射量Ｔｏｕｔは、基本燃料噴射量Ｔｉｂｓを燃料補正係数ＫＡＦで補正することによって算出され、この燃料補正係数ＫＡＦは、前述したように、センサ出力ＶＯ２を目標出力ＶＯ２＿ＴＲＧＴに収束させるように算出される。したがって、以上のように算出された燃料噴射量Ｔｏｕｔを用いることによって、センサ出力ＶＯ２が目標出力ＶＯ２＿ＴＲＧＴに収束するように、混合気の空燃比が制御される。
【００６０】
なお、本実施形態では、乗算器２１が制御入力算出手段に、燃料噴射量Ｔｏｕｔが制御入力および燃料供給量に、基本燃料噴射量Ｔｉｂｓがフィードフォワード入力および燃料供給量の基本値にそれぞれ相当する。
【００６１】
次に、図３を参照しながら、上述した燃料コントローラ３０について説明する。同図に示すように、燃料コントローラ３０は、演算モード値発生部３１、コントローラ切換部３２、出力選択部３３および第１〜３燃料コントローラ４０，５０，７０を備えている。
【００６２】
この演算モード値発生部３１は、演算モード値ＭＯＤ＿ＣＡＬをコントローラ切換部３２および出力選択部３３に出力するものであり、この演算モード値ＭＯＤ＿ＣＡＬは、そのエンジン３において発生しやすいマップ誤差の種類に基づき、値１〜３のいずれかに工場出荷時に予め設定される。より具体的には、演算モード値ＭＯＤ＿ＣＡＬは、前述したオフセットずれに起因するマップ誤差が発生しやすい場合には値１に設定され、前述した温度ドリフトに起因するマップ誤差が発生しやすい場合には値２に設定され、前述したスラッジ堆積に起因するマップ誤差が発生しやすい場合には値３に設定される。
【００６３】
また、コントローラ切換部３２では、３つの値ＮＥ，ＴＨ，ＫＡＦが、演算モード値ＭＯＤ＿ＣＡＬに応じて、３つのコントローラ４０，５０，７０のいずれかに切り換えて入力される。具体的には、３つの値ＮＥ，ＴＨ，ＫＡＦは、ＭＯＤ＿ＣＡＬ＝１のときには第１燃料コントローラ４０に入力され、ＭＯＤ＿ＣＡＬ＝２のときには、第２燃料コントローラ５０に入力され、ＭＯＤ＿ＣＡＬ＝３のときには、第３燃料コントローラ７０に入力される。
【００６４】
さらに、第１〜第３燃料コントローラ４０，５０，７０では、第１〜第３基本噴射量Ｔｉｂｓ１〜３がそれぞれ後述する手法によって算出される。
【００６５】
そして、出力選択部３３では、３つのコントローラ４０，５０，７０で算出された第１〜第３基本噴射量Ｔｉｂｓ１〜３のいずれかが、演算モード値ＭＯＤ＿ＣＡＬに応じて、基本噴射量Ｔｉｂｓとして選択され、出力される。具体的には、ＭＯＤ＿ＣＡＬ＝１のときには第１基本噴射量Ｔｉｂｓ１が基本噴射量Ｔｉｂｓとして出力され、ＭＯＤ＿ＣＡＬ＝２のときには第２基本噴射量Ｔｉｂｓ２が基本噴射量Ｔｉｂｓとして出力され、ＭＯＤ＿ＣＡＬ＝３のときには第３基本噴射量Ｔｉｂｓ３が基本噴射量Ｔｉｂｓとして出力される。
【００６６】
次に、前述した第１燃料コントローラ４０について説明する。この第１燃料コントローラ４０では、以下に述べる手法により、オフセットずれに起因するマップ誤差を補償しながら、第１基本噴射量Ｔｉｂｓ１が算出される。
【００６７】
図４に示すように、第１燃料コントローラ４０は、減算器４１、重み算出部４２、乗算器４３、ＳＭコントローラ４４、加算器４５および第１基本噴射量算出部４６を備えている。
【００６８】
まず、減算器４１では、下式（７）により、モデル誤差Ｅｍが算出される。
【数３】
0004759576.tif 000004
【００６９】
ここで、前述したように、燃料補正係数ＫＡＦは、ＶＯ２≒ＶＯ２＿ＴＲＧＴが成立している場合において、マップ誤差が生じていないときには、ＫＡＦ≒１となるとともに、マップ誤差が生じているときには、値１から離間することになるので、このモデル誤差Ｅｍは、センサ出力ＶＯ２が目標出力ＶＯ２＿ＴＲＧＴから離間している度合を表すことになる。なお、本実施形態では、モデル誤差Ｅｍが、フィードバック補正値および所定の目標値の一方と他方の偏差に相当し、値１が所定の目標値に相当する。
【００７０】
また、重み算出部４２では、スロットル弁開度ＴＨおよびエンジン回転数ＮＥに応じて、図５に示す応答曲面マップを検索することにより、重みＷが算出される。同図において、ＮＥ１〜ＮＥ３は、ＮＥ１＜ＮＥ２＜ＮＥ３の関係が成立するエンジン回転数ＮＥの所定値であり、ＴＨｍａｘは、全開値であり、スロットル弁５が全開状態にあるときのスロットル弁開度ＴＨに相当する。これらの点は以下の説明においても同様である。なお、この重みＷの意味については後述する。
【００７１】
さらに、乗算器４３では、下式（８）により、補正モデル誤差Ｅｗが算出される。
【数４】
0004759576.tif 000005
【００７２】
次に、ＳＭコントローラ４４では、下式（９）〜（１２）に示すスライディングモード制御アルゴリズムによって、第１開度補正値ＤＴＨ１が算出される。
【００７３】
【数５】
0004759576.tif 000006
【００７４】
上式（９）において、σｖは切換関数であり、Ｓｖは−１＜Ｓｖ＜０の関係が成立するように設定される切換関数設定パラメータである。この場合、切換関数設定パラメータＳｖの設定値により、補正モデル誤差Ｅｗの値０への収束速度（すなわち燃料補正係数ＫＡＦの値１への収束速度）が指定される。また、上式（１０）において、Ｕｒｃｈ＿ｖは到達則入力であり、Ｋｒｃｈ＿ｖは所定の到達則ゲインを表している。さらに、上式（１１）において、Ｕａｄｐ＿ｖは適応則入力であり、Ｋａｄｐ＿ｖは所定の適応則ゲインを表している。
【００７５】
以上のように、ＳＭコントローラ４４では、第１開度補正値ＤＴＨ１が、スライディングモード制御アルゴリズムによって、補正モデル誤差Ｅｗを値０に収束させるための値として算出される。この場合、第１開度補正値ＤＴＨ１を、スライディングモード制御アルゴリズム以外のフィードバック制御アルゴリズムで算出してもよいが、応答指定型制御アルゴリズムの場合、他のフィードバック制御アルゴリズムと異なり、補正モデル誤差Ｅｗの値０への収束挙動を指数関数的に指定することができることで、燃料補正係数算出部２０における制御（スライディングモード制御）との干渉を回避することができる。
【００７６】
以上の理由により、本実施形態では、応答指定型制御アルゴリズムであるスライディングモード制御アルゴリズムを用いて、第１開度補正値ＤＴＨ１を算出している。ここで、第１開度補正値ＤＴＨ１の算出アルゴリズムとして、上記スライディングモード制御アルゴリズムに代えて、他の応答指定型制御アルゴリズムを用いた場合、すなわちバックステッピング制御アルゴリズムや、スライディングモード制御アルゴリズムにおける制御対象モデルを一次系に置き換えることで導出される制御アルゴリズムなどを用いた場合でも、上記の効果を得ることができる。
【００７７】
次いで、加算器４５では、下式（１３）により、第１補正後開度ＴＨｍｏｄ１が算出される。
【数６】
0004759576.tif 000007
【００７８】
そして、第１基本噴射量算出部４６では、第１補正後開度ＴＨｍｏｄ１およびエンジン回転数ＮＥに応じて、図６に示すマップを検索することにより、第１基本噴射量Ｔｉｂｓ１が算出される。この図６のマップは、図７のマップの縦軸を基本噴射量Ｔｉｂｓから第１基本噴射量Ｔｉｂｓ１に置き換えるとともに、横軸をスロットル弁開度ＴＨから第１補正後開度ＴＨｍｏｄ１に置き換えたものであり、この図７は、エンジン３が燃料補正係数ＫＡＦ＝１が成立する状態で運転されているとき（すなわち混合気の空燃比が理論空燃比になっているとき）に、スロットル弁開度ＴＨおよびエンジン回転数ＮＥと、基本噴射量Ｔｉｂｓ（＝Ｔｏｕｔ）との関係をマッピングしたものである。
【００７９】
次に、図８を参照しながら、第１燃料コントローラ４０において、以上のような算出手法で第１基本噴射量Ｔｉｂｓ１を算出する理由について説明する。同図において、実線で示す曲線は、図７におけるＮＥ＝ＮＥ１のときの基本噴射量Ｔｉｂｓのマップ値を示しており、破線で示す曲線は、オフセットずれに起因して、基本噴射量Ｔｉｂｓの適切な値（必要な値）とスロットル弁開度ＴＨとの関係が、マップ値とスロットル弁開度ＴＨとの関係からずれているとき、すなわちマップ誤差が発生しているときの一例を示している。
【００８０】
図８に示すように、マップ誤差がオフセットずれに起因して発生した場合、センサ出力ＶＯ２が目標出力ＶＯ２＿ＴＲＧＴから乖離し、排ガス特性が悪化してしまうので、良好な排ガス特性を確保するために、マップ誤差を解消する必要がある。その場合、マップ誤差がオフセットずれに起因している関係上、スロットル弁開度ＴＨをオフセットずれの分だけ減少補正または増大補正した値を用いて、基本噴射量Ｔｉｂｓを算出すればよい。したがって、この第１燃料コントローラ４０では、スロットル弁開度ＴＨのオフセットずれに起因するマップ誤差を補償するために、第１補正後開度ＴＨｍｏｄ１を、加算項である第１開度補正値ＤＴＨ１でスロットル弁開度ＴＨを補正することによって算出し、そのような第１補正後開度ＴＨｍｏｄ１を用いて、第１基本噴射量Ｔｉｂｓ１が算出される。
【００８１】
また、前述した重みＷを用いたのは以下の理由による。制御装置１による空燃比制御の実行中、前述した追従誤差Ｅａｆ（＝ＶＯ２−ＶＯ２＿ＴＲＧＴ）が発生することで、モデル誤差Ｅｍが発生している場合、スロットル弁開度ＴＨの変化に対する基本噴射量Ｔｉｂｓの変化量が大きいほど、上記オフセットずれに起因して、モデル誤差Ｅｍが発生している確率が高くなる。言い換えれば、上述した図７のマップにおいて、基本噴射量Ｔｉｂｓを示す曲線の勾配が大きいほど、オフセットずれがモデル誤差Ｅｍの発生要因である確率が高くなる。
【００８２】
ここで、図９に示すように、スロットル弁開度ＴＨが所定量ΔＴＨ（例えば１ｄｅｇ）変化したときの、基本噴射量Ｔｉｂｓの変化量をΔＴｉｂｓとした場合、基本噴射量Ｔｉｂｓを示す曲線の勾配はΔＴｉｂｓ／ΔＴＨとなる。上述したように、この勾配ΔＴｉｂｓ／ΔＴＨが大きいほど、オフセットずれがモデル誤差Ｅｍの発生要因である確率が高くなるので、この勾配を重みＷとして設定し（Ｗ＝ΔＴｉｂｓ／ΔＴＨ）、図７のマップに基づいて重みＷを算出すると、図５の応答曲面マップが得られる。このように、重みＷは、スロットル弁開度ＴＨに対する基本噴射量Ｔｉｂｓの感度を表すものとして算出される。そして、前述したように、重みＷをモデル誤差Ｅｍに乗算することによって、補正モデル誤差Ｅｗを算出し、この補正モデル誤差Ｅｗが値０になるように、第１開度補正値ＤＴＨ１を算出することによって、オフセットずれがモデル誤差Ｅｍの発生要因である確率の高低を反映させながら、第１開度補正値ＤＴＨ１を算出することができる。
【００８３】
また、そのような第１開度補正値ＤＴＨ１でスロットル弁開度ＴＨを補正することで、第１補正後開度ＴＨｍｏｄ１を算出し、これを用いて第１基本噴射量Ｔｉｂｓ１が算出されるので、オフセットずれに起因するマップ誤差を迅速かつ適切に補償しながら、第１基本噴射量Ｔｉｂｓ１を算出することができる。
【００８４】
次に、前述した第２燃料コントローラ５０について説明する。この第２燃料コントローラ５０は、以下に述べる手法によって、前述した温度ドリフトに起因するマップ誤差を補償しながら、第２基本噴射量Ｔｉｂｓ２を算出するものである。なお、本実施形態では、第２燃料コントローラ５０がフィードフォワード入力算出手段、修正後動作状態パラメータ算出手段、第１修正値算出手段および第１フィードフォワード入力算出手段に相当し、第２基本噴射量Ｔｉｂｓ２がフィードフォワード入力、第１フィードフォワード入力および燃料供給量の基本値に相当する。
【００８５】
図１０に示すように、第２燃料コントローラ５０は、３つの結合関数算出部５１〜５３、重み算出部５４、減算器５５、６つの乗算器５６〜６１、３つのＳＭコントローラ６２〜６４、２つの加算器６５，６６および第２基本噴射量算出部６７を備えている。
【００８６】
まず、３つの結合関数算出部５１〜５３では、スロットル弁開度ＴＨに応じて、図１１に示すマップを検索することにより、３つの結合関数ωi（ｉ＝１〜３）の値がそれぞれ算出される。同図において、ＴＨ１〜ＴＨ４は、０＜ＴＨ１＜ＴＨ２＜ＴＨ３＜ＴＨ４（＝ＴＨｍａｘ）が成立するように設定される、スロットル弁開度ＴＨの所定値を表している。
【００８７】
ここで、結合関数ωiの添字ｉは、以下に述べるスロットル弁開度ＴＨの３つの領域に対応する値であることを表しており、この関係は、後述する各種の値においても同様である。具体的には、結合関数ω1は、０≦ＴＨ＜ＴＨ２と規定される第１領域に対応し、結合関数ω2は、ＴＨ１＜ＴＨ＜ＴＨ３と規定される第２領域に対応し、結合関数ω3は、ＴＨ２＜ＴＨと規定される第３領域に対応するように設定されている。
【００８８】
また、同図に示すように、３つの結合関数ωiの各々は、上述した対応する領域では値１以下の正値にかつそれ以外の領域では値０に設定されており、さらに、隣り合う各２つの結合関数ωm，ωm+1（ｍ＝１または２）は、互いに交差しているとともに、交差している部分の両者の和が、結合関数ωiの最大値１になるように設定されている。なお、本実施形態では、結合関数ωiが関数に相当する。
【００８９】
一方、重み算出部５４では、前述した重み算出部４２と同様に、スロットル弁開度ＴＨおよびエンジン回転数ＮＥに応じて、図５に示す応答曲面マップを検索することにより、重みＷが算出される。なお、本実施形態では、重み算出部５４が感度パラメータ算出手段に相当し、重みＷが感度パラメータに相当する。
【００９０】
また、減算器５５では、前述した減算器４１と同様に、前述した式（７）により、モデル誤差Ｅｍが算出される。
【００９１】
さらに、３つの乗算器５６〜５８では、下式（１４）によって、３つの第２補正モデル誤差Ｅｗ２iが算出される。なお、本実施形態では、乗算器５６〜５８が第１修正乗算値算出手段に相当し、第２補正モデル誤差Ｅｗ２iが第１修正乗算値に相当する。
【数７】
0004759576.tif 000008
【００９２】
次に、３つのＳＭコントローラ６２〜６４では、下式（１５）〜（１８）に示すスライディングモード制御アルゴリズムによって、３つの修正係数θiが算出される。
【００９３】
【数８】
0004759576.tif 000009
【００９４】
上式（１５）において、σｖ２は切換関数であり、Ｓｖ２は−１＜Ｓｖ２＜０の関係が成立するように設定される切換関数設定パラメータである。この場合、切換関数設定パラメータＳｖ２の設定値により、第２補正モデル誤差Ｅｗ２iの値０への収束速度が指定される。また、上式（１６）において、Ｕｒｃｈ＿ｖ２は到達則入力であり、Ｋｒｃｈ＿ｖ２は所定の到達則ゲインを表している。さらに、上式（１７）において、Ｕａｄｐ＿ｖ２は適応則入力であり、Ｋａｄｐ＿ｖ２は所定の適応則ゲインを表している。
【００９５】
以上のように、ＳＭコントローラ６２〜６４では、３つの修正係数θiがそれぞれ、スライディングモード制御アルゴリズムによって、３つの第２補正モデル誤差Ｅｗ２iを値０に収束させるための値として算出される。なお、本実施形態では、ＳＭコントローラ６２〜６４が修正係数算出手段に相当する。
【００９６】
次に、３つの乗算器５９〜６１では、３つの結合関数ωiを３つの修正係数θiにそれぞれ乗算することによって、３つの乗算値ωiθi（第２乗算値）が算出される。
【００９７】
また、加算器６５では、下式（１９）によって、第２開度補正値ＤＴＨ２（第１修正値）が３つの乗算値乗算値ωiθiの和として算出される。
【数９】
0004759576.tif 000010
【００９８】
次いで、加算器６６では、下式（２０）によって、第２補正後開度ＴＨｍｏｄ２（修正後動作状態パラメータ）が算出される。
【数１０】
0004759576.tif 000011
【００９９】
そして、第２基本噴射量算出部６７（第１フィードフォワード入力算出手段）では、第２補正後開度ＴＨｍｏｄ２およびエンジン回転数ＮＥに応じて、図１２に示すマップを検索することにより、第２基本噴射量Ｔｉｂｓ２が算出される。同図のマップは、図７のマップの縦軸を基本噴射量Ｔｉｂｓから第２基本噴射量Ｔｉｂｓ２に置き換えるとともに、横軸をスロットル弁開度ＴＨから第２補正後開度ＴＨｍｏｄ２に置き換えたものに相当する。
【０１００】
次に、図１３を参照しながら、第２燃料コントローラ５０において、以上のような算出手法で第２基本噴射量Ｔｉｂｓ２を算出する理由について説明する。同図において、実線で示す曲線は、図７におけるＮＥ＝ＮＥ１のときの基本噴射量Ｔｉｂｓのマップ値を示しており、破線で示す曲線は、温度ドリフトに起因して、基本噴射量Ｔｉｂｓの適切な値（必要な値）とスロットル弁開度ＴＨとの関係が、マップ値とスロットル弁開度ＴＨとの関係からずれているとき、すなわちマップ誤差を生じているときの一例を示している。
【０１０１】
このように、マップ誤差が温度ドリフトに起因して発生した場合にも、前述したオフセットずれの場合と同様に、センサ出力ＶＯ２が目標出力ＶＯ２＿ＴＲＧＴから乖離し、排ガス特性が悪化してしまうので、良好な排ガス特性を確保するために、マップ誤差を解消する必要がある。その場合、マップ誤差が温度ドリフトに起因している関係上、スロットル弁開度ＴＨを温度ドリフトの分だけ減少補正または増大補正した値を用いて、基本噴射量Ｔｉｂｓを算出すればよいとともに、スロットル弁開度ＴＨを補正するための値すなわち第２開度補正値ＤＴＨ２を、スロットル弁開度センサ１０の温度と相関性の高いエンジン３の負荷に応じて算出する必要がある。また、温度ドリフトは、エンジン３の負荷に応じて発生する関係上、エンジン３の負荷と相関性の高いスロットル弁開度ＴＨの全閉から全開までの領域で、異なる発生度合を示すことになり、そのため、温度ドリフトに起因するマップ誤差は、スロットル弁開度ＴＨの全閉から全開までの領域で非線形な状態で発生することになる。
【０１０２】
したがって、この第２燃料コントローラ５０では、３つの結合関数ωiをそれぞれ、エンジン３の負荷と相関性の高いスロットル弁開度ＴＨの前述した３つの領域に対応するように非線形に設定し、そのように非線形な３つの結合関数ωiを用いることによって、エンジン３の負荷すなわち温度ドリフトに応じて、第２開度補正値ＤＴＨ２を算出する。そして、そのような第２開度補正値ＤＴＨ２をスロットル弁開度ＴＨに加算することによって、第２補正後開度ＴＨｍｏｄ２を算出し、これを用いて第２基本噴射量Ｔｉｂｓ２が算出される。その結果、温度ドリフトに起因する非線形なマップ誤差を迅速かつ適切に補償しながら、第２基本噴射量Ｔｉｂｓ２を算出することができる。
【０１０３】
次に、図１４を参照しながら、前述した第３燃料コントローラ７０について説明する。この第３燃料コントローラ７０は、以下に述べる手法によって、前述したスラッジ堆積に起因するマップ誤差を補償しながら、第３基本噴射量Ｔｉｂｓ３を算出するものである。同図に示すように、この第３燃料コントローラ７０は、一部を除いて、前述した第２燃料コントローラ５０と同様に構成されているので、以下、第２燃料コントローラ５０と同じ構成に関しては同じ符号を付し、その説明を省略するとともに、異なる点を中心に説明する。
【０１０４】
なお、本実施形態では、第３燃料コントローラ７０がフィードフォワード入力算出手段、第２フィードフォワード入力算出手段および第２修正値算出手段に相当し、第３基本噴射量Ｔｉｂｓ３がフィードフォワード入力、第２フィードフォワード入力および燃料供給量の基本値に相当する。
【０１０５】
図１４に示すように、第３燃料コントローラ７０は、３つの結合関数算出部５１〜５３、重み算出部５４、減算器５５、６つの乗算器５６〜６１、３つのＳＭコントローラ６２〜６４、２つの加算器７５，７６、マップ値算出部７７および乗算器７８を備えている。
【０１０６】
まず、３つの乗算器５９〜６１では、前述したように、３つの結合関数ωiを３つの修正係数θiにそれぞれ乗算することによって、３つの乗算値ωiθiが算出される。
【０１０７】
次いで、加算器７５では、下式（２１）によって、乗算和Ｋｆｆ’（複数の第２乗算値の総和）が算出される。
【数１１】
0004759576.tif 000012
【０１０８】
また、加算器７６では、下式（２２）によって、補正係数Ｋｆｆ（第２修正値）が算出される。
【数１２】
0004759576.tif 000013
【０１０９】
以上のように、補正係数Ｋｆｆが乗算和Ｋｆｆ’に値１を加算することによって算出されるのは、補正係数Ｋｆｆがマップ値Ｔｉｂｓ＿ｍａｐへの乗算値として用いられるので、ＫＡＦ≒１すなわちＶＯ２≒ＶＯ２＿ＴＲＧＴが成立していることで、マップ値Ｔｉｂｓ＿ｍａｐを補正する必要がないときに、Ｋｆｆ＝１となるようにするためである。
【０１１０】
さらに、マップ値算出部７７では、スロットル弁開度ＴＨおよびエンジン回転数ＮＥに応じて、図１５に示すマップを検索することにより、マップ値Ｔｉｂｓ＿ｍａｐが算出される。同図のマップは、図７の縦軸を基本噴射量Ｔｉｂｓからマップ値Ｔｉｂｓ＿ｍａｐに置き換えたものである。なお、本実施形態では、マップ値算出部７７がモデル値算出手段に相当し、マップ値Ｔｉｂｓ＿ｍａｐがフィードフォワード入力のモデル値に相当する。
【０１１１】
そして、最終的に、乗算器７８（第２フィードフォワード入力算出手段）で、下式（２３）によって第３基本噴射量Ｔｉｂｓ３が算出される。
【数１３】
0004759576.tif 000014
【０１１２】
次に、図１６を参照しながら、第３燃料コントローラ７０において、以上のような算出手法で第３基本噴射量Ｔｉｂｓ３を算出する理由について説明する。同図において、実線で示す曲線は、図７におけるＮＥ＝ＮＥ１のときの基本噴射量Ｔｉｂｓのマップ値を示しており、破線で示す曲線は、スラッジ堆積に起因して、基本噴射量Ｔｉｂｓの適切な値（必要な値）とスロットル弁開度ＴＨとの関係が、マップ値とスロットル弁開度ＴＨとの関係からずれているとき、すなわちマップ誤差が発生しているときの一例を示している。
【０１１３】
同図に示すように、スラッジ堆積が発生した場合、吸気通路４の開口面積が低下することで、エンジン回転数ＮＥおよびスロットル弁開度ＴＨに対して、実際の吸入空気量がスラッジ堆積が発生していない場合よりも低下する。その結果、図７のマップを用いて基本噴射量Ｔｉｂｓを算出すると、算出結果が不適切な値となってしまい、マップ誤差が生じてしまう。この場合、マップ誤差は、スラッジ堆積に起因して発生する関係上、エンジン回転数ＮＥおよびスロットル弁開度ＴＨの組み合わせに対して非線形な状態で発生する。
【０１１４】
このように、マップ誤差がスラッジ堆積に起因して発生した場合にも、センサ出力ＶＯ２が目標出力ＶＯ２＿ＴＲＧＴから乖離し、排ガス特性が悪化してしまうので、良好な排ガス特性を確保するために、マップ誤差を解消する必要がある。その場合、上述したように、スラッジ堆積に起因するマップ誤差は、エンジン回転数ＮＥおよびスロットル弁開度ＴＨの組み合わせに対して非線形な状態で発生するので、このマップ誤差を補償するには、基本噴射量Ｔｉｂｓとエンジン回転数ＮＥおよびスロットル弁開度ＴＨとの関係を、エンジン３の負荷に応じて非線形に補正する必要がある。
【０１１５】
そのため、この第３燃料コントローラ７０では、前述した３つの乗算値ωiθiを互いに加算することによって、乗算和Ｋｆｆ’を算出し、これに値１を加算することで、補正係数Ｋｆｆが算出される。そして、そのような補正係数Ｋｆｆでマップ値Ｔｉｂｓ＿ｍａｐを補正することによって、第３基本噴射量Ｔｉｂｓ３が算出される。それにより、スラッジ堆積に起因する非線形なマップ誤差を迅速かつ適切に補償しながら（すなわち、基本噴射量Ｔｉｂｓと、エンジン回転数ＮＥおよびスロットル弁開度ＴＨとの関係を非線形に補償しながら）、第３基本噴射量Ｔｉｂｓ３を算出することができる。
【０１１６】
次に、図１７を参照しながら、ＥＣＵ２により実行される空燃比制御処理について説明する。本処理は、燃料噴射弁６から噴射すべき燃料噴射量Ｔｏｕｔを算出するものであり、前述した所定の制御周期ΔＴで実行される。
【０１１７】
この処理では、まず、ステップ１（図では「Ｓ１」と略す。以下同じ）で、ＴＨセンサ故障フラグＦ＿ＴＨＮＧが「１」であるか否かを判別する。このＴＨセンサ故障フラグＦ＿ＴＨＮＧは、図示しない判定処理において、スロットル弁開度センサ１０が故障したときに「１」に、それ以外のときに「０」に設定される。
【０１１８】
ステップ１の判別結果がＮＯで、スロットル弁開度センサ１０が正常であるときには、ステップ２に進み、エンジン始動フラグＦ＿ＥＮＧＳＴＡＲＴが「１」であるか否かを判別する。このエンジン始動フラグＦ＿ＥＮＧＳＴＡＲＴは、図示しない判定処理において、エンジン始動制御中すなわちクランキング中であるか否かを判定することによって設定されるものであり、具体的には、エンジン始動制御中であるときには「１」に、それ以外のときには「０」にそれぞれ設定される。
【０１１９】
ステップ２の判別結果がＹＥＳで、エンジン始動制御中であるときには、ステップ３に進み、燃料補正係数の始動時用値ＫＡＦ＿ＳＴを、エンジン水温ＴＷに応じて、図１８に示すマップを検索することにより算出する。このマップでは、始動時用値ＫＡＦ＿ＳＴは、エンジン水温ＴＷが低いほど、よりリッチ側の値に設定されている。これは、エンジン水温ＴＷが低い場合、エンジン３の始動性を高めるために、混合気をリッチ側の値に制御する必要があることによる。
【０１２０】
次に、ステップ４に進み、燃料補正係数ＫＡＦを上記始動時用値ＫＡＦ＿ＳＴに設定する。ステップ４に続くステップ５で、エンジン回転数ＮＥおよびスロットル弁開度ＴＨに応じて、前述した図７のマップを検索することにより、基本噴射量Ｔｉｂｓを算出する。
【０１２１】
次いで、ステップ６に進み、燃料噴射量Ｔｏｕｔを、基本噴射量Ｔｉｂｓと燃料補正係数ＫＡＦの積Ｔｉｂｓ・ＫＡＦに設定した後、本処理を終了する。
【０１２２】
一方、ステップ２の判別結果がＮＯで、エンジン始動制御中でないときには、ステップ７に進み、スロットル弁開度ＴＨが所定値ＴＨＲＥＦより小さいか否かを判別する。この判別結果がＹＥＳで、運転者がスロットルレバーを操作していないときには、ステップ８に進み、始動後タイマの計時値Ｔａｓｔが所定値Ｔａｓｔｌｍｔより小さいか否かを判別する。
【０１２３】
この判別結果がＹＥＳで、Ｔａｓｔ＜Ｔａｓｔｌｍｔのときには、触媒暖機制御を実行すべきであるとして、ステップ９に進み、燃料補正係数の触媒暖機用値ＫＡＦ＿ＡＳＴを、始動後タイマの計時値Ｔａｓｔおよびエンジン水温ＴＷに応じて、図１９に示すマップを検索することにより算出する。同図において、ＴＷ１〜ＴＷ３は、ＴＷ１＜ＴＷ２＜ＴＷ３の関係が成立するエンジン水温ＴＷの所定値を示している。
【０１２４】
このマップでは、触媒暖機用値ＫＡＦ＿ＡＳＴは、ＴＷ＝ＴＷ１が成立する低水温域では、計時値Ｔａｓｔが小さいほど、触媒の活性化を早めるために、よりリッチ側の大きな値に設定されている。また、ＴＷ＝ＴＷ３が成立し、触媒暖機が完了した高温域では、触媒暖機用値ＫＡＦ＿ＡＳＴが理論空燃比に相当する値１に設定されている。
【０１２５】
次に、ステップ１０に進み、燃料補正係数ＫＡＦを上記触媒暖機用値ＫＡＦ＿ＡＳＴに設定する。その後、前述したように、ステップ５，６を実行した後、本処理を終了する。
【０１２６】
一方、ステップ７または８の判別結果がＮＯのとき、すなわちアクセルペダルが踏まれているとき、またはＴａｓｔ≧Ｔａｓｔｌｍｔであるときには、ステップ１１に進み、前述した燃料補正係数算出部２０における算出手法によって、燃料補正係数ＫＡＦを算出する。
【０１２７】
次いで、ステップ１２に進み、基本噴射量Ｔｉｂｓを算出する。このステップ１２の算出処理は、具体的には、図２０に示すように実行される。すなわち、まず、ステップ２０で、前述した演算モード値ＭＯＤ＿ＣＡＬが値１であるか否かを判別する。
【０１２８】
この判別結果がＹＥＳで、オフセットずれに起因するマップ誤差を補償すべきであるときには、ステップ２１に進み、前述した第１燃料コントローラ４０における算出手法によって、第１基本噴射量Ｔｉｂｓ１を算出する。次いで、ステップ２２で、基本噴射量Ｔｉｂｓを第１基本噴射量Ｔｉｂｓ１に設定した後、本処理を終了する。
【０１２９】
一方、ステップ２０の判別結果がＮＯのときには、ステップ２３に進み、演算モード値ＭＯＤ＿ＣＡＬが値２であるか否かを判別する。この判別結果がＹＥＳで、温度ドリフトに起因するマップ誤差を補償すべきであるときには、ステップ２４に進み、前述した第２燃料コントローラ５０における算出手法によって、第２基本噴射量Ｔｉｂｓ２を算出する。次いで、ステップ２５で、基本噴射量Ｔｉｂｓを第２基本噴射量Ｔｉｂｓ２に設定した後、本処理を終了する。
【０１３０】
一方、ステップ２３の判別結果がＮＯで、スラッジ堆積に起因するマップ誤差を補償すべきであるときには、ステップ２６に進み、前述した第３燃料コントローラ７０における算出手法によって、第３基本噴射量Ｔｉｂｓ３を算出する。次いで、ステップ２７で、基本噴射量Ｔｉｂｓを第３基本噴射量Ｔｉｂｓ３に設定した後、本処理を終了する。
【０１３１】
図１７に戻り、ステップ１２で以上のように基本噴射量Ｔｉｂｓを算出した後、前述したように、ステップ６で、燃料噴射量Ｔｏｕｔを算出する。その後、本処理を終了する。
【０１３２】
一方、ステップ１の判別結果がＹＥＳで、スロットル弁開度センサ１０が故障しているときには、ステップ１３に進み、燃料噴射量Ｔｏｕｔを、基本噴射量Ｔｉｂｓと、燃料補正係数の所定の故障時用値ＫＦＳとの積Ｔｉｂｓ・ＫＦＳに設定した後、本処理を終了する。この故障時用値ＫＦＳは、混合気の燃焼状態を安定させるべく、混合気の空燃比がリッチ側の値になるように設定されている。
【０１３３】
本実施形態の制御装置１は、以上のような空燃比制御処理によって燃料噴射量Ｔｏｕｔを算出し、図示しないが、この燃料噴射量Ｔｏｕｔおよびエンジン回転数ＮＥに応じて、燃料噴射タイミングを算出するとともに、これらの燃料噴射量Ｔｏｕｔおよび燃料噴射タイミングに基づいた制御入力信号で、燃料噴射弁６を駆動することにより、混合気の空燃比を制御する。
【０１３４】
次に、図２１〜２６を参照しながら、本実施形態の制御装置１による空燃比制御のシミュレーション結果（以下「制御結果」という）について説明する。これらの図２１〜２６はいずれも、エンジン３の運転条件として、負荷すなわちエンジン回転数ＮＥおよびスロットル弁開度ＴＨが周期的に増減するように設定した場合のものを示している。
【０１３５】
まず、図２１および図２２について説明する。図２１は、本実施形態の制御装置１の制御結果例を示しており、より具体的には、シミュレーション条件を、オフセットずれによるマップ誤差が発生した状態に設定するとともに、第１燃料コントローラ４０で算出した第１基本噴射量Ｔｉｂｓ１を基本噴射量Ｔｉｂｓとして用いた場合のものを示している。また、図２２は、比較のために、シミュレーション条件を図２１と同じように設定するとともに、基本噴射量Ｔｉｂｓを、図７のマップを用いて算出した場合の制御結果例（以下「比較例１」という）を示している。
【０１３６】
図２１（ａ）のタイミングチャートにおいて、上側の曲線が第１触媒装置８の上流側のＮＯｘ量を表しており、下側の曲線が、第１触媒装置８の下流側のＮＯｘ量を表している。また、同図（ｂ）のタイミングチャートは、第１触媒装置８におけるＮＯｘ浄化率を表している。以上の関係は、図２２〜２６においても同様である。
【０１３７】
まず、図２２の比較例１では、同図（ｃ）に示すように、マップ誤差に起因して、センサ出力ＶＯ２が周期的に目標出力ＶＯ２＿ＴＲＧＴから大きく離間しており（時刻ｔ１１，ｔ１２など）、その結果、同図（ｂ）に示すように、第１触媒装置８におけるＮＯｘ浄化率が周期的に大きく低下することが判る。
【０１３８】
これに対して、図２１の制御結果例では、制御の開始直後は、同図（ｃ）に示すように、マップ誤差に起因して、センサ出力ＶＯ２が目標出力ＶＯ２＿ＴＲＧＴから一時的に若干、離間するものの、制御の進行に伴い、時刻ｔ１以降は、センサ出力ＶＯ２が目標出力ＶＯ２＿ＴＲＧＴに収束し、それにより、同図（ｂ）に示すように、良好なＮＯｘ浄化率を確保できていることが判る。これは、時刻ｔ１以降、第１開度補正値ＤＴＨ１が最適値に収束することで（同図（ｄ）参照）、第１基本噴射量Ｔｉｂｓ１が適切な値に収束したためである。以上のように、本実施形態の第１燃料コントローラ４０の制御手法によって、オフセットずれに起因するマップ誤差を適切に補償できることが判る。
【０１３９】
次に、図２３および図２４について説明する。図２３は、本実施形態の制御装置１の制御結果例を示しており、より具体的には、シミュレーション条件を、温度ドリフトによるマップ誤差が発生した状態に設定するとともに、第２燃料コントローラ５０で算出した第２基本噴射量Ｔｉｂｓ２を基本噴射量Ｔｉｂｓとして用いた場合のものを示している。また、図２４は、比較のために、シミュレーション条件を図２３と同じように設定するとともに、基本噴射量Ｔｉｂｓを、図７のマップを用いて算出した場合の制御結果例（以下「比較例２」という）を示している。
【０１４０】
まず、図２４の比較例２では、同図（ｃ）に示すように、マップ誤差に起因して、センサ出力ＶＯ２が周期的に目標出力ＶＯ２＿ＴＲＧＴから大きく離間しており（時刻ｔ３１，ｔ３２など）、その結果、同図（ｂ）に示すように、第１触媒装置８のＮＯｘ浄化率が周期的に大きく低下することが判る。
【０１４１】
これに対して、図２３の制御結果例では、制御の開始直後は、同図（ｃ）に示すように、マップ誤差に起因して、センサ出力ＶＯ２が目標出力ＶＯ２＿ＴＲＧＴから一時的に若干、離間するものの、制御の進行に伴い、時刻ｔ２１以降は、センサ出力ＶＯ２が目標出力ＶＯ２＿ＴＲＧＴにほぼ収束することによって、比較例２よりも良好なＮＯｘ浄化率を確保できていることが判る。これに加えて、制御の進行に伴い、ＮＯｘ浄化率が徐々に向上していることが判る。これは、制御の進行に伴い、第２開度補正値ＤＴＨ２の学習が進むことで（同図（ｄ）参照）、第２基本噴射量Ｔｉｂｓ２の算出精度が向上するためである。以上のように、本実施形態の第２燃料コントローラ５０の制御手法によって、温度ドリフトに起因する非線形なマップ誤差を適切に補償できることが判る。
【０１４２】
次に、図２５および図２６について説明する。図２５は、本実施形態の制御装置１の制御結果例を示しており、より具体的には、シミュレーション条件を、スラッジ堆積に起因するマップ誤差が発生した状態に設定するとともに、第３燃料コントローラ７０で算出した第３基本噴射量Ｔｉｂｓ３を基本噴射量Ｔｉｂｓとして用いた場合のものを示している。また、図２６は、比較のために、シミュレーション条件を図２５と同じように設定するとともに、基本噴射量Ｔｉｂｓを、図７のマップを用いて算出した場合の制御結果例（以下「比較例３」という）を示している。
【０１４３】
まず、図２６の比較例３では、同図（ｃ）に示すように、マップ誤差に起因して、センサ出力ＶＯ２が周期的に目標出力ＶＯ２＿ＴＲＧＴから大きく離間しており（時刻ｔ５１，ｔ５２など）、その結果、同図（ｂ）に示すように、第１触媒装置８のＮＯｘ浄化率が周期的に大きく低下することが判る。
【０１４４】
これに対して、図２５の制御結果例では、制御の開始直後は、同図（ｃ）に示すように、マップ誤差に起因して、センサ出力ＶＯ２が目標出力ＶＯ２＿ＴＲＧＴから一時的に離間するものの、制御の進行に伴い、時刻ｔ４１以降は、センサ出力ＶＯ２が目標出力ＶＯ２＿ＴＲＧＴにほぼ収束することによって、比較例３よりも良好なＮＯｘ浄化率を確保できていることが判る。これに加えて、制御の進行に伴い、ＮＯｘ浄化率が徐々に向上していることが判る。これは、制御の進行に伴い、補正係数Ｋｆｆの学習が進行することで（同図（ｄ）参照）、第３基本噴射量Ｔｉｂｓ３の算出精度が向上するためである。以上のように、本実施形態の第３燃料コントローラ７０の制御手法によって、スラッジ堆積に起因する非線形なマップ誤差を適切に補償できることが判る。
【０１４５】
以上のように、本実施形態の制御装置１によれば、エンジン３で発生しやすいマップ誤差の種類に基づき、第１〜第３燃料コントローラ４０，５０，７０で算出された３つの値Ｔｉｂｓ１〜３のいずれかが基本噴射量Ｔｉｂｓとして設定され、これに燃料補正係数ＫＡＦを乗算することによって、燃料噴射量Ｔｏｕｔが算出される。
【０１４６】
すなわち、ＭＯＤ＿ＣＡＬ＝１で、オフセットずれに起因するマップ誤差が発生しやすい場合には、第１燃料コントローラ４０で算出された第１基本噴射量Ｔｉｂｓ１が基本噴射量Ｔｉｂｓとして設定される。この第１燃料コントローラ４０では、スライディングモード制御アルゴリズムによって、補正モデル誤差Ｅｗが値０に収束するように、第１開度補正値ＤＴＨ１が算出される。この場合、補正モデル誤差Ｅｗは、モデル誤差Ｅｍに重みＷを乗算した値であり、このモデル誤差Ｅｍは、値１と燃料補正係数ＫＡＦとの偏差であるので、第１開度補正値ＤＴＨ１は、ＫＡＦ≒１すなわちＶＯ２≒ＶＯ２＿ＴＲＧＴが成立するように算出される。また、モデル誤差Ｅｍに乗算される重みＷは、スロットル弁開度ＴＨに対する基本噴射量Ｔｉｂｓの感度を表すものであり、重みＷが大きいほど、オフセットずれがモデル誤差Ｅｍの発生要因である確率が高くなる。したがって、そのような重みを用いることによって、オフセットずれがモデル誤差Ｅｍの発生要因である確率の高低を反映させながら、第１開度補正値ＤＴＨ１を算出することができる。
【０１４７】
さらに、そのような第１開度補正値ＤＴＨ１でスロットル弁開度ＴＨを補正した第１補正後開度ＴＨｍｏｄ１と、エンジン回転数ＮＥとに応じて、図６のマップを検索することにより、第１基本噴射量Ｔｉｂｓ１が算出されるので、第１基本噴射量Ｔｉｂｓ１は、ＫＡＦ≒１すなわちＶＯ２≒ＶＯ２＿ＴＲＧＴが成立するように算出される。その結果、オフセットずれに起因するマップ誤差が発生している場合において、エンジン３が過渡運転状態にあるときでも、そのマップ誤差を迅速かつ適切に補償しながら、第１基本噴射量Ｔｉｂｓ１を精度よく算出することができる。
【０１４８】
また、ＭＯＤ＿ＣＡＬ＝２で、温度ドリフトに起因するマップ誤差が発生しやすい場合には、第２燃料コントローラ５０で算出された第２基本噴射量Ｔｉｂｓ２が基本噴射量Ｔｉｂｓとして設定される。この第２燃料コントローラ５０では、モデル誤差Ｅｍと重みＷの積を非線形な３つの結合関数ωiに乗算することによって、３つの第２補正モデル誤差Ｅｗ２iが算出され、これらが値０に収束するように、３つの修正係数θiが算出されるので、モデル誤差Ｅｍを、３つの結合関数ωiを介して３つの修正係数θiに配分することができる。さらに、そのような３つの修正係数θiを３つの結合関数ωiにそれぞれ乗算することによって、３つの乗算値ωiθiが算出され、第２開度補正値ＤＴＨ２が３つの乗算値ωiθiの和として算出されるので、この第２開度補正値ＤＴＨ２によって、マップ誤差をスロットル弁開度ＴＨの３つの領域毎に適切に補償することができる。特に、マップ誤差の発生方向が、スロットル弁開度ＴＨの３つの領域毎に異なっているとき、すなわち非線形なマップ誤差が発生しているときでも、そのようなマップ誤差を領域毎に適切に補償することができる。
【０１４９】
これに加えて、３つの乗算値ωiθiは、３つの修正係数θiを３つの結合関数ωiにそれぞれ乗算することによって算出されるので、これらの総和である第２開度補正値ＤＴＨ２を、３つの修正係数θiを連続的に結合させた値として算出することができる。それにより、そのような第２開度補正値ＤＴＨ２でスロットル弁開度ＴＨを補正することで、第２補正後開度ＴＨｍｏｄ２を算出し、これを用いて第２基本噴射量Ｔｉｂｓ２を算出することによって、スロットル弁開度ＴＨが急変したときでも、第２基本噴射量Ｔｉｂｓ２を滑らかに段差なく変化するように算出することができる。以上のように、温度ドリフトに起因するマップ誤差が発生している場合において、エンジン３が過渡運転状態にあるときでも、そのマップ誤差を迅速かつ適切に補償しながら、第２基本噴射量Ｔｉｂｓ２を精度よく算出することができる。
【０１５０】
また、ＭＯＤ＿ＣＡＬ＝３で、スラッジ堆積に起因するマップ誤差が発生しやすい場合には、第３燃料コントローラ７０で算出された第３基本噴射量Ｔｉｂｓ３が基本噴射量Ｔｉｂｓとして設定される。この第３燃料コントローラ７０では、モデル誤差Ｅｍと重みＷの積を非線形な３つの結合関数ωiに乗算することによって、３つの第２補正モデル誤差Ｅｗ２iが算出され、これらが値０に収束するように、３つの修正係数θiが算出されるので、前述したように、モデル誤差Ｅｍを、３つの結合関数ωiを介して３つの修正係数θiに配分することができる。さらに、そのような３つの修正係数θiを３つの結合関数ωiにそれぞれ乗算することによって、３つの乗算値ωiθiが算出され、これらの３つの乗算値ωiθiを加算することによって、乗算和Ｋｆｆ’が算出され、これに値１を加算することによって、補正係数Ｋｆｆが算出されるので、この補正係数Ｋｆｆによって、マップ誤差をスロットル弁開度ＴＨの３つの領域毎に適切に補償することができる。特に、エンジン回転数ＮＥおよびスロットル弁開度ＴＨと、マップ値Ｔｉｂｓ＿ｍａｐとの間の関係が実際の関係とずれている場合において、そのずれの方向がスロットル弁開度ＴＨの３つの領域毎に異なっているとき、すなわち非線形なマップ誤差が発生しているときでも、そのようなマップ誤差を領域毎に適切に補償することができる。
【０１５１】
これに加えて、３つの乗算値ωiθiは、３つの修正係数θiを３つの結合関数ωiにそれぞれ乗算することによって算出されるので、これらの総和である乗算和Ｋｆｆ’を、３つの修正係数θiを連続的に結合させた値として算出することができる。さらに、そのような乗算和Ｋｆｆ’に値１を加算した補正係数Ｋｆｆで、基本噴射量のマップ値Ｔｉｂｓ＿ｍａｐを補正することによって、第３基本噴射量Ｔｉｂｓ３が算出されるので、スロットル弁開度ＴＨが急変したときでも、第３基本噴射量Ｔｉｂｓ３を滑らかに段差なく変化するように算出することができる。その結果、スラッジ堆積に起因するマップ誤差が発生している場合において、エンジン３が過渡運転状態にあるときでも、そのマップ誤差を迅速かつ適切に補償しながら、第３基本噴射量Ｔｉｂｓ３を精度よく算出することができる。
【０１５２】
以上のように、オフセットずれ、温度ドリフトおよびスラッジ堆積にそれぞれ起因する３つのマップ誤差のいずれかが発生している場合において、エンジン３が過渡運転状態にあるときでも、発生したマップ誤差を迅速かつ適切に補償しながら、基本噴射量Ｔｉｂｓを精度よく算出することができる。その結果、エンジン３が過渡運転状態のときでも、センサ出力ＶＯ２を目標出力ＶＯ２＿ＴＲＧＴに保持することができ、良好な排ガス特性を確保することができる。
【０１５３】
なお、実施形態は、本発明の制御装置１を、酸素濃度センサ１２の出力ＶＯ２を制御量とし、燃料噴射量Ｔｏｕｔを制御入力とする制御対象に適用した例であるが、本願発明の制御装置はこれに限らず、様々な産業機器における出力および入力を制御量および制御入力とする制御対象に適用可能である。
【０１５４】
また、実施形態は、所定の第１フィードバック制御アルゴリズムとして、スライディングモード制御アルゴリズムを用いた例であるが、本発明の所定の第１フィードバック制御アルゴリズムはこれに限らず、制御量を目標制御量に収束させるようにフィードバック制御できるものであればよい。例えば、所定の第１フィードバック制御アルゴリズムとして、ＰＩＤ制御アルゴリズムや、バックステッピング制御アルゴリズム、スライディングモード制御アルゴリズムでの制御対象モデルを一次系のものに置き換えることによって導出される応答指定型制御アルゴリズム、最適レギュレータなどを用いてもよい。
【０１５５】
さらに、実施形態は、所定の第２フィードバック制御アルゴリズムとして、スライディングモード制御アルゴリズムを用いた例であるが、本発明の所定の第２フィードバック制御アルゴリズムはこれに限らず、フィードバック補正値を所定の目標値にするための修正値を算出できるものであればよい。例えば、所定の第２フィードバック制御アルゴリズムとして、ＰＩＤ制御アルゴリズムや、バックステッピング制御アルゴリズム、スライディングモード制御アルゴリズムでの制御対象モデルを一次系のものに置き換えることによって導出される応答指定型制御アルゴリズム、最適レギュレータなどを用いてもよい。
【０１５６】
一方、実施形態は、フィードフォワード入力としての基本噴射量Ｔｉｂｓを、フィードバック補正値としての燃料補正係数ＫＡＦで補正することによって、制御入力としての燃料噴射量Ｔｏｕｔを算出した例であるが、本発明の制御入力の算出手法はこれに限らず、フィードフォワード入力をフィードバック補正値で補正した値に基づき、制御入力を算出するものであればよい。例えば、実施形態において、燃料噴射量Ｔｏｕｔを、基本噴射量Ｔｉｂｓと燃料補正係数ＫＡＦの積に、所定値を加減算または乗算することによって算出してもよい。
【０１５７】
また、実施形態は、動作状態パラメータとして、スロットル弁開度ＴＨおよびエンジン回転数ＮＥを用いた例であるが、本発明の動作状態パラメータはこれに限らず、制御量以外の、制御対象の動作状態を表すものであればよい。例えば、内燃機関がアクセルペダルを備えている場合には、アクセルペダルの操作量を動作状態パラメータとして用いてもよく、内燃機関が吸気弁および／または排気弁のリフトを無段階に連続的に変更する可変リフト機構を備えている場合には、吸気弁および／または排気弁のリフトを動作状態パラメータとして用いてもよい。また、マップ検索に用いる動作状態パラメータの数は、２つに限らず、３つ以上の動作状態パラメータを用いてもよい。
【０１５８】
さらに、実施形態は、運転状態パラメータとして、スロットル弁開度ＴＨおよびエンジン回転数ＮＥを用いた例であるが、本発明の運転状態パラメータはこれに限らず、内燃機関の運転状態を表すものであればよい。例えば、内燃機関がアクセルペダルを備えている場合には、アクセルペダルの操作量を運転状態パラメータとして用いてもよく、内燃機関が吸気弁および／または排気弁のリフトを無段階に連続的に変更する可変リフト機構を備えている場合には、吸気弁および／または排気弁のリフトを運転状態パラメータとして用いてもよい。
【０１６０】
一方、実施形態は、感度パラメータとして、重みＷを用いた例であるが、本発明の感度パラメータはこれに限らず、動作状態パラメータに対するフィードフォワード入力の感度を表すものであればよい。例えば、フィードフォワード入力と動作状態パラメータの比を、感度パラメータとして用いてもよい。
【０１６１】
また、実施形態は、排ガス濃度センサとして、酸素濃度センサ１２を用いた例であるが、本発明の排ガス濃度センサはこれに限らず、排ガス中の所定成分の濃度を検出するものであればよい。例えば、排ガス濃度センサとして、排ガス中のＮＯｘ濃度を検出するＮＯｘ濃度センサを用いてもよい。
【０１６２】
さらに、実施形態は、本発明の制御装置をモータサイクル用の内燃機関に適用した例であるが、本発明の制御装置を、軽自動車などの比較的小排気量の内燃機関に適用してもよい。
【０１６３】
一方、実施形態は、演算モード値ＭＯＤ＿ＣＡＬを工場出荷時に予め設定した後は変更しないように構成した例であるが、演算モード値ＭＯＤ＿ＣＡＬを、手動スイッチなどを介して任意に変更できるように構成してもよい。
【図面の簡単な説明】
【０１６４】
【図１】本発明の第１実施形態に係る制御装置およびこれを適用した内燃機関の概略構成を示す模式図である。
【図２】制御装置の概略構成を示す機能ブロック図である。
【図３】燃料コントローラの概略構成を示す機能ブロック図である。
【図４】第１燃料コントローラの概略構成を示す機能ブロック図である。
【図５】重みＷの算出に用いる応答曲面マップの一例を示す図である。
【図６】第１基本噴射量Ｔｉｂｓ１の算出に用いるマップの一例を示す図である。
【図７】基本噴射量Ｔｉｂｓと、スロットル弁開度ＴＨおよびエンジン回転数ＮＥとの関係をマッピングしたマップの一例を示す図である。
【図８】オフセットずれに起因するマップ誤差を説明するための図である。
【図９】重みＷの意味を説明するための図である。
【図１０】第２燃料コントローラの概略構成を示す機能ブロック図である。
【図１１】結合関数ωiの算出に用いるマップの一例を示す図である。
【図１２】第２基本噴射量Ｔｉｂｓ２の算出に用いるマップの一例を示す図である。
【図１３】温度ドリフトに起因するマップ誤差を説明するための図である。
【図１４】第３燃料コントローラの概略構成を示す機能ブロック図である。
【図１５】マップ値Ｔｉｂｓ＿ｍａｐの算出に用いるマップの一例を示す図である。
【図１６】スラッジ堆積に起因するマップ誤差を説明するための図である。
【図１７】空燃比制御処理を示すフローチャートである。
【図１８】燃料補正係数の始動時用値ＫＡＦ＿ＳＴの算出に用いるマップの一例を示す図である。
【図１９】燃料補正係数の触媒暖機用値ＫＡＦ＿ＡＳＴの算出に用いるマップの一例を示す図である。
【図２０】基本噴射量Ｔｉｂｓの算出処理を示すフローチャートである。
【図２１】オフセットずれによるマップ誤差が発生した状態をシミュレーション条件とし、第１基本噴射量Ｔｉｂｓ１を基本噴射量Ｔｉｂｓとして用いた場合の空燃比制御のシミュレーション結果の一例を示すタイミングチャートである。
【図２２】比較のために、図２１と同じシミュレーション条件下で、図７のマップを用いて基本噴射量Ｔｉｂｓを算出した場合の空燃比制御のシミュレーション結果を示すタイミングチャートである。
【図２３】温度ドリフトによるマップ誤差が発生した状態をシミュレーション条件とし、第２基本噴射量Ｔｉｂｓ２を基本噴射量Ｔｉｂｓとして用いた場合の空燃比制御のシミュレーション結果の一例を示すタイミングチャートである。
【図２４】比較のために、図２３と同じシミュレーション条件下で、図７のマップを用いて基本噴射量Ｔｉｂｓを算出した場合の空燃比制御のシミュレーション結果を示すタイミングチャートである。
【図２５】スラッジ堆積によるマップ誤差が発生した状態をシミュレーション条件とし、第３基本噴射量Ｔｉｂｓ３を基本噴射量Ｔｉｂｓとして用いた場合の空燃比制御のシミュレーション結果の一例を示すタイミングチャートである。
【図２６】比較のために、図２５と同じシミュレーション条件下で、図７のマップを用いて基本噴射量Ｔｉｂｓを算出した場合の空燃比制御のシミュレーション結果を示すタイミングチャートである。
【符号の説明】
【０１６５】
１  制御装置
２  ＥＣＵ（目標制御量設定手段、フィードバック補正値算出手段、動作状態パラメ        ータ検出手段、フィードフォワード入力算出手段、制御入力算出手段、第１修正 値算出手段、修正後動作状態パラメータ算出手段、第１フィードフォワード入力        算出手段、感度パラメータ算出手段、第１修正乗算値算出手段、修正係数算出手        段、モデル値算出手段、第２修正値算出手段、第２フィードフォワード入力算出 手段、変更手段）
３  内燃機関
７  排気通路
８  第１触媒装置（触媒装置）
１０  スロットル弁開度センサ（動作状態パラメータ検出手段）
１１  クランク角センサ（動作状態パラメータ検出手段）
１２  酸素濃度センサ（制御量検出手段、排ガス濃度センサ）
２０  燃料補正係数算出部（フィードバック補正値算出手段）
２１  乗算器（制御入力算出手段）
５０  第２燃料コントローラ（フィードフォワード入力算出手段、修正後動作状態パラ        メータ算出手段、第１修正値算出手段、第１フィードフォワード入力算出手段）  ５４  重み算出部（感度パラメータ算出手段）
56〜58  乗算器（第１修正乗算値算出手段）
62〜64  ＳＭコントローラ（修正係数算出手段）
６７  第２基本噴射量算出部（第１フィードフォワード入力算出手段）
７０  第３燃料コントローラ（フィードフォワード入力算出手段、第２修正値算出手段        、第２フィードフォワード入力算出手段）
７７  マップ値算出部（モデル値算出手段）
７８  乗算器（第２フィードフォワード入力算出手段）
ＶＯ２  酸素濃度センサの出力（制御量、排ガス濃度センサの出力）
Ｔｏｕｔ  燃料噴射量（制御入力、燃料供給量）
ＶＯ２＿ＴＲＧＴ  目標出力（目標制御量）
ＫＡＦ  燃料補正係数（フィードバック補正値）
ＴＨ  スロットル弁の開度（動作状態パラメータ、運転状態パラメータ）
ＮＥ  エンジン回転数（動作状態パラメータ、運転状態パラメータ）
Ｔｉｂｓ  基本噴射量（フィードフォワード入力、燃料供給量の基本値）
Ｔｉｂｓ２  第２基本噴射量（フィードフォワード入力、第１フィードフォワード 入力、燃料供給量の基本値）
Ｔｉｂｓ３ 第３基本噴射量（フィードフォワード入力、第２フィードフォワード 入力、燃料供給量の基本値）
ＤＴＨ２  第２開度補正値（第１修正値）
Ｋｆｆ  補正係数（第２修正値）
Ｋｆｆ’  乗算和（複数の第２乗算値の総和）
ＴＨｍｏｄ２  第２補正後開度（修正後動作状態パラメータ）
Ｗ  重み（感度パラメータ）
Ｅｍ  モデル誤差（フィードバック補正値および所定の目標値の一方と他方                  との偏差）
ωi  結合関数（関数）
ωiＥｍ 乗算値（第１乗算値）
θi  修正係数
ωiθi  乗算値（第２乗算値）
Ｅｗ２i  第２補正モデル誤差（第１修正乗算値）
Ｔｉｂｓ＿ｍａｐ  マップ値（フィードフォワード入力のモデル値）
【図１】
0004759576.tif 000015
【図２】
0004759576.tif 000016
【図３】
0004759576.tif 000017
【図４】
0004759576.tif 000018
【図５】
0004759576.tif 000019
【図６】
0004759576.tif 000020
【図７】
0004759576.tif 000021
【図８】
0004759576.tif 000022
【図９】
0004759576.tif 000023
【図１０】
0004759576.tif 000024
【図１１】
0004759576.tif 000025
【図１２】
0004759576.tif 000026
【図１３】
0004759576.tif 000027
【図１４】
0004759576.tif 000028
【図１５】
0004759576.tif 000029
【図１６】
0004759576.tif 000030
【図１７】
0004759576.tif 000031
【図１８】
0004759576.tif 000032
【図１９】
0004759576.tif 000033
【図２０】
0004759576.tif 000034
【図２１】
0004759576.tif 000035
【図２２】
0004759576.tif 000036
【図２３】
0004759576.tif 000037
【図２４】
0004759576.tif 000038
【図２５】
0004759576.tif 000039
【図２６】
0004759576.tif 000040