説明

制御装置

【課題】 位相遅れやむだ時間などが比較的大きい制御対象を制御する場合において、制御対象の入出力間での制御タイミングのずれの解消、および制御精度の向上をいずれも達成することができる制御装置を提供する。
【解決手段】 制御装置1のECU2は、状態予測器22およびDSMコントローラ24を備える。状態予測器22は、予測アルゴリズムに基づき、出力偏差VO2の予測値PREVO2を所定の算出周期ΔTkで算出し、DSMコントローラ24は、ΣΔ変調アルゴリズムに基づき、算出された予測値PREVO2に応じて、目標空燃比KCMDを、予測値PREVO2の算出周期ΔTkよりも短い算出周期ΔTmで算出する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、制御対象の出力を制御するために、制御対象への制御入力をΔΣ変調アルゴリズムなどに基づいて算出する制御装置に関する。
【背景技術】
【0002】
従来、この種の制御装置として、例えば特許文献1に記載されたものが知られている。この制御装置は、制御対象の出力を検出し、その検出結果をアナログ量の検出信号として出力する検出手段と、上位装置から入力されるアナログ量の目標値と検出信号との偏差を演算する偏差演算手段と、演算された偏差を1ビットデジタル信号に変換する変換手段と、変換手段からの1ビットデジタル信号を補償した後、入力信号として制御対象に入力する補償手段とを備えている(同公報の図6参照)。
【0003】
この制御装置では、偏差演算手段により、検出信号と目標値との偏差(アナログ量)が演算され、この演算偏差は、変換手段でのΔΣ変調によって1ビットデジタル信号に変換され、さらに補償手段により補償された後、入力信号として制御対象に入力される。以上の構成により、制御対象の出力と目標値との偏差を打ち消すように、偏差と逆位相の操作量が生成され、制御対象に入力される。その結果、制御対象の出力が目標値に収束するようにフィードバック制御される。
【0004】
この制御装置によれば、制御対象の動特性が比較的大きな位相遅れやむだ時間などを有している場合、それに起因して、制御対象への入力信号の入力後、入力信号を反映する出力信号が制御対象から出力されるまでに時間がかかり、制御対象の入出力間での制御タイミングのずれを生じる。その結果、制御性の低下を招き、制御系が不安定になってしまうおそれがある。例えば、内燃機関の燃料噴射量を入力として、内燃機関の排気ガスの空燃比を制御する場合、燃料噴射が実際に行われてから、排気ガスの空燃比の状態が実際に変化するまでに時間を要するため、空燃比制御の安定性および制御性が低下し、触媒で浄化された排気ガスの特性が不安定な状態になってしまうことがある。
【0005】
以上のような、位相遅れやむだ時間などの大きな制御対象における制御タイミングのずれを補償する制御手法として、例えば特許文献2に記載されたものが知られている。この制御手法では、同定器および状態予測器により、制御対象の出力として、制御対象の位相遅れやむだ時間などの応答遅れを考慮した予測値が算出される。具体的には、目標空燃比を入力としかつ空燃比センサの出力を出力とする制御対象を、その応答遅れを考慮した離散時間系モデルとしてモデル化し、この離散時間系モデルのモデルパラメータを同定器により算出するとともに、状態予測器により、空燃比センサの出力と所定の目標値との偏差の予測値が算出される。
【0006】
【特許文献1】特開2001−154704号公報
【特許文献2】特開2000−179385号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
上記特許文献2の制御手法を特許文献1の制御装置に適用した場合、以下のような問題がある。すなわち、特許文献1の制御装置では、ΔΣ変調アルゴリズムを用いた制御が実行されるため、制御周期をより短く設定するほど、制御精度が向上する。言い換えれば、制御周期をより長く設定するほど、制御精度が低下してしまう。これに対して、同定器および状態予測器を用いる特許文献2の上記制御手法の場合、同定器および状態予測器の算出周期を短く設定することは、モデルパラメータの同定値および予測値の算出精度を向上させることに必ずしもつながらず、場合によっては、これらの算出精度を低下させるおそれがある。例えば、制御対象の入出力、または出力の目標値の変化が小さい状況では、同定器および状態予測器の算出周期を短く設定すると、これらの算出値に制御対象の周波数特性が適切に反映されないことで、算出精度が逆に低下してしまう。
【0008】
本発明は、上記課題を解決するためになされたもので、位相遅れやむだ時間などが比較的大きい制御対象を制御する場合において、制御対象の入出力間での制御タイミングのずれの解消、および制御精度の向上をいずれも達成することができる制御装置を提供することを目的とする。
【課題を解決するための手段】
【0009】
この目的を達成するために、請求項1に係る制御装置1は、内燃機関3の排気通路(排気管7)の触媒(第1触媒装置8a、第2触媒装置8b)よりも下流側における排気ガスの空燃比を表す検出信号を出力する下流側空燃比センサ(酸素濃度センサ15)と、下流側空燃比センサの出力Voutと所定の目標値Vopとの偏差(出力偏差VO2)を所定の偏差算出周期(算出周期ΔTk)で算出する偏差算出手段(ECU2、状態予測器22)と、Δ変調アルゴリズム、ΔΣ変調アルゴリズムおよびΣΔ変調アルゴリズムのうちのいずれか1つの変調アルゴリズムに基づき、算出された偏差に応じて、下流側空燃比センサの出力を目標値に収束させるための、内燃機関に供給すべき混合気の目標空燃比KCMDを、偏差算出周期よりも短い所定の空燃比算出周期(算出周期ΔTm)で算出する空燃比算出手段(ECU2、DSMコントローラ24)と、算出された目標空燃比KCMDに応じて、内燃機関に供給される混合気の空燃比を制御する空燃比制御手段(ECU2)と、を備えることを特徴とする。
【0010】
この制御装置によれば、偏差算出手段により、触媒よりも下流側における排気ガスの空燃比を表す下流側空燃比センサの出力と、所定の目標値との偏差が所定の偏差算出周期で算出され、空燃比算出手段により、下流側空燃比センサの出力を目標値に収束させるための、内燃機関に供給すべき混合気の目標空燃比が、Δ変調アルゴリズム、ΔΣ変調アルゴリズムおよびΣΔ変調アルゴリズムのうちのいずれか1つの変調アルゴリズムに基づき、算出された偏差に応じて、偏差算出周期よりも短い所定の空燃比算出周期で算出される。このように、下流側空燃比センサの出力と目標値との偏差が、目標空燃比の算出周期よりも長い偏差算出周期で算出されるので、内燃機関への目標空燃比の混合気の供給に対して、下流側空燃比センサの出力の応答遅れ(位相遅れやむだ時間など)が大きい空燃比制御の場合や、目標値の変動周波数が低い場合においても、空燃比算出周期を可能な限り短く設定することで、目標空燃比の算出精度を向上させることができる。同じ理由により、空燃比算出周期を可能な限り短く設定した場合、空燃比算出周期の短さに起因する高周波ノイズが、下流側空燃比センサの出力に混入したときでも、偏差の算出値に混入するのを回避でき、偏差を精度よく算出できる。以上により、目標空燃比を、下流側空燃比センサの出力を目標値に精度よく収束させることができる値として算出でき、空燃比の制御性を向上させることができる。したがって、この目標値を適切な値に設定することにより、触媒による排気ガス浄化率を向上させることができる。
【0011】
請求項2に係る発明は、請求項1に記載の制御装置1において、空燃比算出手段は、1つの変調アルゴリズムに基づき、偏差に応じて、第1の中間値(DSM信号u''(m)の値)を算出するとともに、算出した第1の中間値に所定のゲインFdを乗算した値(増幅DSM信号u(m)の値)に基づき、目標空燃比KCMDを算出することを特徴とする。
【0012】
一般に、ΔΣ変調アルゴリズム、ΣΔ変調アルゴリズムおよびΔ変調アルゴリズムの各々は、制御対象のゲインが値1であるとして制御入力すなわち目標空燃比を決定するものであるので、制御対象の実際のゲインが値1と異なる場合には、目標空燃比が適切な値として算出されなくなることで、空燃比の制御性が低下することがある。例えば、制御対象の実際のゲインが値1よりも大きい場合には、目標空燃比が必要以上に大きい値として算出されるため、オーバーゲインの状態になってしまうおそれがある。これに対して、この制御装置によれば、目標空燃比が、1つの変調アルゴリズムに基づいて算出された第1の中間値に所定のゲインを乗算した値に基づいて、算出されるので、この所定のゲインを適切に設定することにより、良好な空燃比の制御性を確保することができる。
【0013】
請求項3に係る発明は、請求項1に記載の制御装置1において、空燃比算出手段は、1つの変調アルゴリズムに基づき、偏差に応じて、第2の中間値(増幅DSM信号u(m)の値)を算出するとともに、算出した第2の中間値に所定値(基準値FLAFBASE)を加算することにより、目標空燃比KCMDを算出することを特徴とする。
【0014】
一般に、Δ変調アルゴリズム、ΔΣ変調アルゴリズムおよびΣΔ変調アルゴリズムはいずれも、値0を中心とした正負反転型の制御入力しか算出できないものである。これに対して、この制御装置によれば、空燃比算出手段により、制御入力としての目標空燃比の算出が、1つの変調アルゴリズムに基づいて算出された第2の中間値に所定値を加算することにより行われるので、目標空燃比を、値0を中心として正負反転する値だけでなく、所定値を中心として所定幅の増減を繰り返す値として算出することができ、空燃比制御の自由度を高めることができる。
【0015】
請求項4に係る制御装置1は、内燃機関3の排気通路(排気管7)の触媒(第1触媒装置8a、第2触媒装置8b)よりも下流側における排気ガスの空燃比を表す検出信号を出力する下流側空燃比センサ(酸素濃度センサ15)と、予測アルゴリズム(式(61),(76))に基づき、下流側空燃比センサの出力を表す値(出力偏差VO2)の予測値PREVO2を所定の予測値算出周期(算出周期ΔTk)で算出する予測値算出手段(ECU2、状態予測器22)と、Δ変調アルゴリズム、ΔΣ変調アルゴリズムおよびΣΔ変調アルゴリズムのうちのいずれか1つの変調アルゴリズムに基づき、算出された予測値に応じて、下流側空燃比センサの出力を制御するための、内燃機関に供給すべき混合気の目標空燃比を、予測値算出周期よりも短い空燃比算出周期(算出周期ΔTm)で算出する空燃比算出手段(ECU2、DSMコントローラ24)と、算出された目標空燃比KCMDに応じて、内燃機関に供給される混合気の空燃比を制御する空燃比制御手段(ECU2)と、を備えることを特徴とする。
【0016】
この制御装置によれば、予測値算出手段により、下流側空燃比センサの出力を表す値の予測値が、予測アルゴリズムに基づき、所定の予測値算出周期で算出されるとともに、空燃比算出手段により、下流側空燃比センサの出力を制御するための、内燃機関に供給すべき混合気の目標空燃比が、Δ変調アルゴリズム、ΔΣ変調アルゴリズムおよびΣΔ変調アルゴリズムのうちのいずれか1つの変調アルゴリズムに基づき、算出された予測値に応じて、予測値算出周期よりも短い空燃比算出周期で算出される。前述したように、制御対象の入出力、すなわち目標空燃比および下流側空燃比センサの出力の変化が小さい状況では、予測値算出手段による予測値の算出周期を短く設定すると、制御対象の周波数特性が予測値に適切に反映されないことで、予測値の算出精度が逆に低下してしまうおそれがある。
【0017】
これに対して、この制御装置では、予測値算出周期が空燃比算出周期よりも長く設定されるので、内燃機関に供給する混合気の空燃比によって下流側空燃比センサの出力を制御する場合、すなわち位相遅れやむだ時間の大きい制御対象を制御する場合、予測値算出周期を、空燃比算出周期よりも長くかつ制御対象の周波数特性に応じた値に設定することにより、予測値を、空燃比算出周期が短いことに起因して目標空燃比の算出値に混入する高周波ノイズの影響を回避しながら、制御対象の位相遅れやむだ時間などの動特性が反映された適切な値として、精度よく算出することが可能になる。その結果、そのような予測値に応じて目標空燃比を算出することにより、目標空燃比に応じて内燃機関に供給される混合気の空燃比と、下流側空燃比センサの出力との間での制御タイミングのずれを適切に解消することが可能になる。同じ理由により、予測値算出手段および空燃比算出手段を、例えばマイクロコンピュータなどの演算処理装置で構成した場合、予測値算出周期を空燃比算出周期と同じ値に設定したときと比べて、予測値の不要な算出処理を省略できる分、演算処理装置の演算負荷を低減でき、それにより、目標空燃比の算出周期をより短く設定できることで、その算出精度を向上させることができる。以上により、空燃比制御の制御性を向上させることができ、排気ガス浄化率を向上させることができる。
【0018】
以下に述べる請求項5および6に係る発明はそれぞれ、前述した請求項2および3に係る発明とほぼ同様に構成されている。すなわち、請求項5に係る発明は、請求項4に記載の制御装置1において、空燃比算出手段は、1つの変調アルゴリズムに基づき、予測値に応じて、第1の中間値(DSM信号u''(m)の値)を算出するとともに、算出した第1の中間値に所定のゲインFdを乗算した値(増幅DSM信号u(m)の値)に基づき、目標空燃比KCMDを算出することを特徴とする。
【0019】
また、請求項6に係る発明は、請求項4に記載の制御装置1において、空燃比算出手段は、1つの変調アルゴリズムに基づき、予測値に応じて、第2の中間値(増幅DSM信号u(m)の値)を算出するとともに、算出した第2の中間値に所定値(基準値FLAFBASE)を加算することにより、目標空燃比KCMDを算出することを特徴とする。
【0020】
以上の請求項5および6に係る発明によれば、請求項2および3に係る発明と同様の作用効果をそれぞれ得ることができる。
【0021】
請求項7に係る発明は、請求項4ないし6のいずれかに記載の制御装置1において、下流側空燃比センサの出力を表す値(出力偏差VO2)を、空燃比算出周期(算出周期ΔTm)よりも長い所定の出力サンプリング周期(サンプリング周期ΔTsk)で、離散データとしてサンプリングする出力サンプリング手段(ECU2)をさらに備え、予測アルゴリズムは、サンプリングされた下流側空燃比センサの出力を表す値の離散データ(VO2(k),VO2(k−1))に応じて、予測値PREVO2を算出するアルゴリズムであることを特徴とする。
【0022】
この制御装置によれば、出力サンプリング手段により、下流側空燃比センサの出力を表す値の離散データが、空燃比算出周期よりも長い所定の出力サンプリング周期でサンプリングされるとともに、予測値算出手段により、予測アルゴリズムに基づき、サンプリングされた下流側空燃比センサの出力を表す値の離散データに応じて、予測値が算出される。したがって、出力サンプリング周期を、下流側空燃比センサの出力を表す値のパワースペクトルが存在する周波数域に応じて適切に設定することにより、目標空燃比および下流側空燃比センサの出力の変化が小さい状況でも、下流側空燃比センサの出力を表す値の予測値の周波数特性を、制御対象の周波数特性に一致させることができる。その結果、制御性をさらに向上させることができ、排気ガス浄化率をさらに向上させることができる。
【0023】
請求項8に係る発明は、請求項7に記載の制御装置1において、目標空燃比を表す値(空燃比偏差のデシメーション値DKCMD’)を、空燃比算出周期(算出周期ΔTm)よりも長い所定の空燃比サンプリング周期(サンプリング周期ΔTsk)で、離散データとしてサンプリングする空燃比サンプリング手段(ECU2)をさらに備え、予測アルゴリズムは、サンプリングされた目標空燃比を表す値の離散データ(DKCMD’(k−i))にさらに応じて、予測値PREVO2を算出するアルゴリズム(式(76))であることを特徴とする。
【0024】
この制御装置によれば、空燃比サンプリング手段により、目標空燃比を表す値の離散データが、空燃比算出周期よりも長い所定の空燃比サンプリング周期でサンプリングされるとともに、予測値算出手段により、予測アルゴリズムに基づき、サンプリングされた目標空燃比を表す値の離散データにさらに応じて、予測値が算出される。このように、下流側空燃比センサの出力を表す値の予測値が、目標空燃比を表す値の離散データに応じて算出されるので、内燃機関の空燃比を制御する場合、すなわち位相遅れやむだ時間の大きい制御対象を制御する場合でも、空燃比算出周期の短さに起因する高周波ノイズが、目標空燃比の算出値に混入するのを回避しながら、制御対象の位相遅れやむだ時間などの動特性が反映された適切な値として、予測値を精度よく算出することができる、これにより、目標空燃比と下流側空燃比センサの出力を表す値との間、すなわち制御対象の入出力間の制御タイミングのずれを精度よく解消することができ、空燃比制御の制御性をより一層、向上させることができる。
【0025】
請求項9に係る発明は、請求項8に記載の制御装置1において、空燃比サンプリング手段は、目標空燃比を表す値の離散データ(DKCMD’(k−i))を、空燃比サンプリング周期(サンプリング周期ΔTsk)よりも短い所定の第2空燃比サンプリング周期(サンプリング周期ΔTsm)でサンプリングした値にデシメーション処理を施すことにより、空燃比サンプリング周期でサンプリングすることを特徴とする。
【0026】
この制御装置によれば、目標空燃比を表す値の離散データが、空燃比サンプリング周期よりも短い所定の第2空燃比サンプリング周期でサンプリングされた値にデシメーション処理を施すことにより、空燃比サンプリング周期でサンプリングされる。これにより、下流側空燃比センサの出力を表す値の予測値の算出において、空燃比算出周期の短さに起因する高周波ノイズが目標空燃比の算出値に混入するのを、確実に回避することができる。また、第2空燃比サンプリング周期を、空燃比算出周期と同じ値に設定した場合には、演算負荷を低減することができる。
【0027】
請求項10に係る発明は、請求項4ないし6のいずれかに記載の制御装置1において、予測アルゴリズムは、目標空燃比を表す値(空燃比偏差のデシメーション値DKCMD’)および下流側空燃比センサの出力を表す値(出力偏差VO2)を変数とする制御対象モデル(式(60))に基づき、予測値PREVO2を算出するアルゴリズムであることを特徴とする。
【0028】
この制御装置によれば、目標空燃比を表す値および下流側空燃比センサの出力を表す値を変数とする制御対象モデルに基づき、下流側空燃比センサの出力を表す値の予測値が算出されるので、この制御対象モデルを、制御対象の位相遅れやむだ時間などの動特性が反映されたものとして定義することにより、予測値を、制御対象の位相遅れやむだ時間などの動特性が適切に反映された値として算出することができる。その結果、空燃比制御の安定性を確保することができ、その制御性を向上させることができる。
【0029】
請求項11に係る発明は、請求項10に記載の制御装置1において、目標空燃比を表す値(空燃比偏差のデシメーション値DKCMD’)および下流側空燃比センサの出力を表す値(出力偏差VO2)を、空燃比算出周期(算出周期ΔTm)よりも長い所定の第1サンプリング周期(サンプリング周期ΔTsk)で、離散データとしてサンプリングするサンプリング手段(ECU2)をさらに備え、制御対象モデルは、サンプリングされた、目標空燃比を表す値の離散データ(DKCMD’(k−dt))と、下流側空燃比センサの出力を表す値の離散データ(VO2(k−1),VO2(k−2))とを変数とする離散時間系モデル(式(60))であることを特徴とする。
【0030】
この制御装置によれば、制御対象モデルが、空燃比算出周期よりも長い所定の第1サンプリング周期でサンプリングされた、目標空燃比を表す値の離散データと、下流側空燃比センサの出力を表す値の離散データとを変数とする離散時間系モデルであるので、第1サンプリング周期を適切に設定することより、この離散時間系モデルに、目標空燃比を表す値および下流側空燃比センサの出力を表す値を入出力とする制御対象の周波数特性を適切に反映させることができ、その結果、予測値の算出精度を向上させることができる。また、制御対象モデルとして離散時間系モデルを用いるので、連続時間系モデルを用いる場合と比べて、例えば最小2乗法などの一般的な同定アルゴリズムにより、モデルパラメータの同定を容易に行うことが可能になる。
【0031】
請求項12に係る発明は、請求項11に記載の制御装置1において、サンプリング手段は、目標空燃比を表す値の離散データ(DKCMD’(k−dt))を、第1サンプリング周期(サンプリング周期ΔTsk)よりも短い所定の第2サンプリング周期(サンプリング周期ΔTsm)でサンプリングした値にデシメーション処理を施すことにより、第1サンプリング周期でサンプリングすることを特徴とする。
【0032】
この制御装置によれば、請求項9に係る発明と同様の作用効果を得ることができる。
【0033】
請求項13に係る発明は、請求項請求項11または12に記載の制御装置1において、下流側空燃比センサの出力を表す値の離散データ(VO2(k−1),VO2(k−2))に応じて、離散時間系モデルのモデルパラメータa1,a2,b1を同定する同定手段(オンボード同定器23)をさらに備えることを特徴とする。
【0034】
この制御装置によれば、同定手段により、下流側空燃比センサの出力を表す値の離散データに応じて、離散時間系モデルのモデルパラメータが同定されるので、目標空燃比を表す値および下流側空燃比センサの出力を表す値を入出力とする制御対象において、その動特性が経時変化したり、ばらついたりする場合でも、それに応じてモデルパラメータを適切に同定することができ、制御対象モデルの動特性を制御対象の実際の動特性に適合させることができる。その結果、空燃比制御の精度および安定性を向上させることができ、排気ガス浄化率を向上させることができる。これに加えて、離散時間系モデルを用いることにより、同定手段によるモデルパラメータの同定を容易に行うことができる。
【0035】
請求項14に係る発明は、請求項13に記載の制御装置1において、同定手段は、目標空燃比を表す値の離散データ(DKCMD’(k−dt))にさらに応じて、モデルパラメータを同定することを特徴とする。
【0036】
この制御装置によれば、同定手段により、下流側空燃比センサの出力を表す値の離散データに加えて、目標空燃比を表す値の離散データにさらに応じて、モデルパラメータが同定されるので、制御対象の入出力間の相関関係を観測しながら、モデルパラメータを同定することができ、その同定精度を高めることができる。その結果、空燃比制御の精度および安定性をさらに向上させることができ、排気ガス浄化率をさらに向上させることができる。
【0037】
請求項15に係る発明は、請求項13または14に記載の制御装置1において、同定手段によるモデルパラメータの同定周期(算出周期ΔTk)は、空燃比算出周期(算出周期ΔTm)よりも長い値に設定されていることを特徴とする。
【0038】
一般に、演算処理装置においては、同定器などの同定手段によるモデルパラメータの同定演算が過大な演算負荷となることで、制御入力としての目標空燃比を表す値の算出周期をより長く設定しなければならないことがあり、その場合には、制御性の低下を招くおそれがある。これに対して、この制御装置によれば、同定周期が空燃比算出周期よりも長い値に設定されているので、そのような演算処理装置における演算負荷を低減することができ、その分、目標空燃比を表す値の算出周期をより短く設定できることで、空燃比制御の精度をより一層、向上させることができ、排気ガス浄化率をより一層、向上させることができる。
【0039】
請求項16に係る発明は、請求項7に記載の制御装置1において、内燃機関3の排気通路(排気管7)の触媒(第1触媒装置8a)よりも上流側における排気ガスの空燃比を表す検出信号を出力する上流側空燃比センサ(LAFセンサ14)と、目標空燃比を表す値(空燃比偏差のデシメーション値DKCMD’)と上流側空燃比センサの出力を表す値(LAF出力偏差のデシメーション値DKACT’)との少なくとも一方を、空燃比算出周期(算出周期ΔTm)よりも長い所定の空燃比サンプリング周期(サンプリング周期ΔTsk)で、離散データとしてサンプリングする空燃比サンプリング手段(ECU2)と、をさらに備え、予測アルゴリズムは、サンプリングされた、目標空燃比を表す値の離散データ(DKCMD’(k−i))、および上流側空燃比センサの出力を表す値の離散データ(DKACT’(k−j))の少なくとも一方にさらに応じて、予測値PREVO2を算出するアルゴリズム(式(61))であることを特徴とする。
【0040】
この制御装置によれば、下流側空燃比センサの出力を表す値の離散データに加えて、目標空燃比を表す値の離散データにさらに応じて、予測値を算出する場合には、請求項8に係る発明と同様の作用効果を得ることができる。また、下流側空燃比センサの出力を表す値の離散データに加えて、またはこれと目標空燃比を表す値の離散データとに加えて、上流側空燃比センサの出力を表す値の離散データにさらに応じて、予測値を算出する場合には、触媒よりも上流側の空燃比の状態を予測値に反映させることができ、これにより、予測値の算出精度をさらに向上させることができる。
【0041】
請求項17に係る発明は、請求項16に記載の制御装置1において、サンプリング手段は、目標空燃比を表す値の離散データ(DKCMD’(k−i))、および上流側空燃比センサの出力を表す値の離散データ(DKACT’(k−j))の少なくとも一方を、空燃比サンプリング周期(サンプリング周期ΔTsk)よりも短い所定の第2空燃比サンプリング周期(サンプリング周期ΔTsm)でサンプリングした値にデシメーション処理を施すことにより、空燃比サンプリング周期でサンプリングすることを特徴とする。
【0042】
この制御装置によれば、第2空燃比サンプリング手段およびデシメーション処理手段により、目標空燃比を表す値の離散データをサンプリングする場合には、請求項9に係る発明と同様の作用効果を得ることができる。また、上流側空燃比センサの出力を表す値の離散データ、またはこれに加えて目標空燃比を表す値の離散データをサンプリングする場合には、空燃比算出周期の短さに起因する高周波ノイズが、上流側空燃比センサの出力を表す値の離散データに混入するのを、確実に回避することができ、下流側空燃比センサの出力を表す値の予測値の算出精度をより一層、向上させることができる。
【0043】
請求項18に係る発明は、請求項4ないし6のいずれかに記載の制御装置1において、内燃機関3の排気通路(排気管7)の触媒(第1触媒装置8a)よりも上流側における排気ガスの空燃比を表す検出信号を出力する上流側空燃比センサ(LAFセンサ14)をさらに備え、予測アルゴリズムは、目標空燃比を表す値(空燃比偏差のデシメーション値DKCMD’)および上流側空燃比センサの出力を表す値(LAF出力偏差のデシメーション値DKACT’)の一方と、下流側空燃比センサの出力を表す値(出力偏差VO2)とを変数とする制御対象モデルに基づき、予測値PREVO2を算出するアルゴリズムであることを特徴とする。
【0044】
この制御装置によれば、制御対象モデルを、目標空燃比を表す値と下流側空燃比センサの出力を表す値とを変数とするモデルとした場合には、請求項10に係る発明と同様の作用効果を得ることができる。また、制御対象モデルを、目標空燃比を表す値と上流側空燃比センサの出力を表す値とを変数とするモデルとした場合には、触媒よりも上流側の空燃比の状態を制御対象モデルに反映させることができ、これにより、予測値の算出精度をさらに向上させることができる。
【0045】
請求項19に係る発明は、請求項18に記載の制御装置1において、目標空燃比を表す値(空燃比偏差のデシメーション値DKCMD’)と上流側空燃比センサの出力を表す値(LAF出力偏差のデシメーション値DKACT’)との少なくとも一方、および下流側空燃比センサの出力を表す値(出力偏差VO2)を、空燃比算出周期(算出周期ΔTm)よりも長い所定の第1サンプリング周期(サンプリング周期ΔTsk)で、離散データとしてサンプリングするサンプリング手段(ECU2)をさらに備え、制御対象モデルは、サンプリングされた、目標空燃比を表す値の離散データ(DKCMD’(k−dt))および上流側空燃比センサの出力を表す値の離散データの一方と、下流側空燃比センサの出力を表す値の離散データ(VO2(k−1),VO2(k−2))とを変数とする離散時間系モデル(式(60))であることを特徴とする。
【0046】
この制御装置によれば、制御対象モデルを、目標空燃比を表す値の離散データと、下流側空燃比センサの出力を表す値の離散データとを変数とする離散時間系モデルとした場合には、請求項11に係る発明と同様の作用効果を得ることができる。また、制御対象モデルを、上流側空燃比センサの出力を表す値の離散データと、下流側空燃比センサの出力を表す値の離散データとを変数とする離散時間系モデルとした場合には、触媒よりも上流側の空燃比の状態を制御対象モデルすなわち予測値に反映させることができ、これにより、予測値の算出精度をより一層、向上させることができる。
【0047】
請求項20に係る発明は、請求項19に記載の制御装置1において、サンプリング手段は、目標空燃比を表す値の離散データ(DKCMD’(k−i))、および上流側空燃比センサの出力を表す値の離散データ(DKACT’(k−j))の少なくとも一方を、第1サンプリング周期(サンプリング周期ΔTsk)よりも短い所定の第2サンプリング周期(サンプリング周期ΔTsm)でサンプリングした値にデシメーション処理を施すことにより、第1サンプリング周期でサンプリングすることを特徴とする。
【0048】
この制御装置によれば、請求項17に係る発明と同様の作用効果を得ることができる。
【0049】
請求項21に係る発明は、請求項19または20に記載の制御装置1において、下流側空燃比センサの出力を表す値の離散データ(VO2(k−1),VO2(k−2))に応じて、離散時間系モデルのモデルパラメータa1,a2,b1を同定する同定手段(オンボード同定器23)をさらに備えることを特徴とする。
【0050】
この制御装置によれば、請求項13に係る発明と同様の作用効果を得ることができる。
【0051】
請求項22に係る発明は、請求項21に記載の制御装置1において、同定手段は、目標空燃比を表す値の離散データ、および上流側空燃比センサの出力を表す値の離散データ(DKACT’(k−d−dd))の一方にさらに応じて、モデルパラメータを同定することを特徴とする。
【0052】
この制御装置によれば、同定手段により、モデルパラメータが目標空燃比を表す値の離散データにさらに応じて同定される場合には、請求項14に係る発明と同様の作用効果を得ることができる。また、モデルパラメータが上流側空燃比センサの出力を表す値の離散データにさらに応じて同定される場合には、目標空燃比を表す値と比べて、下流側空燃比センサの出力を表す値との間のむだ時間がより小さい上流側空燃比センサの出力を表す値の離散データを用い、両者の間の相関関係を観測しながら、モデルパラメータを同定することができ、これにより、モデルパラメータの同定精度をさらに高めることができる。
【0053】
請求項23に係る発明は、請求項21または22に記載の制御装置1において、同定手段によるモデルパラメータの同定周期(算出周期ΔTk)は、空燃比算出周期(算出周期ΔTm)よりも長い値に設定されていることを特徴とする。
【0054】
この制御装置によれば、請求項15に係る発明と同様の作用効果を得ることができる。
【発明を実施するための最良の形態】
【0055】
以下、図面を参照しながら、本発明の第1実施形態に係る制御装置について説明する。この第1実施形態は、制御装置を内燃機関の空燃比を制御するものとして構成した例であり、図1は、この制御装置1およびこれを適用した内燃機関3の概略構成を示している。同図に示すように、この制御装置1は、ECU2を備えており、このECU2は、後述するように、内燃機関(以下「エンジン」という)3の運転状態に応じて、これに供給する混合気の空燃比を制御する。
【0056】
このエンジン3は、図示しない車両に搭載された直列4気筒型ガソリンエンジンであり、第1〜第4の4つの気筒#1〜#4を備えている。このエンジン3の吸気管4のスロットル弁5の近傍には、例えばポテンショメータなどで構成されたスロットル弁開度センサ10が設けられている。このスロットル弁開度センサ10は、スロットル弁5の開度(以下「スロットル弁開度」という)θTHを検出して、その検出信号をECU2に送る。
【0057】
さらに、吸気管4のスロットル弁5よりも下流側には、吸気管内絶対圧センサ11が設けられている。この吸気管内絶対圧センサ11は、例えば半導体圧力センサなどで構成され、吸気管4内の吸気管内絶対圧PBAを検出し、その検出信号をECU2に出力する。
【0058】
また、吸気管4は、インテークマニホールド4aの4つの分岐部4bを介して4つの気筒#1〜#4にそれぞれ接続されている。各分岐部4bには、各気筒の図示しない吸気ポートの上流側に、インジェクタ6が取り付けられている。各インジェクタ6は、エンジン3の運転時に、ECU2からの駆動信号によって、その開弁時間である最終燃料噴射量TOUTおよび噴射タイミングが制御される。
【0059】
一方、エンジン3の本体には、例えばサーミスタなどで構成された水温センサ12が取り付けられている。水温センサ12は、エンジン3のシリンダブロック内を循環する冷却水の温度であるエンジン水温TWを検出し、その検出信号をECU2に出力する。
【0060】
また、エンジン3のクランクシャフト(図示せず)には、クランク角センサ13が設けられている。このクランク角センサ13は、クランクシャフトの回転に伴い、いずれもパルス信号であるCRK信号およびTDC信号をECU2に出力する。
【0061】
CRK信号は、所定のクランク角(例えば30゜)ごとに1パルスが出力される。ECU2は、このCRK信号に応じ、エンジン3の回転数(以下「エンジン回転数」という)NEを算出する。また、TDC信号は、各気筒のピストン(図示せず)が吸気行程のTDC位置よりも若干、手前の所定のクランク角位置にあることを表す信号であり、所定クランク角ごとに1パルスが出力される。
【0062】
一方、排気管7(排気通路)のエキゾーストマニホールド7aよりも下流側には、上流側から順に第1および第2の触媒装置8a,8b(触媒)が間隔を存して設けられている。各触媒装置8は、NOx触媒と3元触媒を組み合わせたものであり、このNOx触媒は、図示しないが、イリジウム触媒(イリジウムを担持した炭化ケイ素ウイスカ粉末とシリカの焼成体)をハニカム構造の基材の表面に被覆し、その上にペロブスカイト型複酸化物(LaCoO3粉末とシリカの焼成体)をさらに被覆したものである。触媒装置8は、NOx触媒による酸化還元作用により、リーンバーン運転時の排気ガス中のNOxを浄化するとともに、3元触媒の酸化還元作用により、リーンバーン運転以外の運転時の排気ガス中のCO、HCおよびNOxを浄化する。なお、触媒装置8は、NOx触媒と3元触媒を組み合わせたものに限らず、排気ガス中のCO、HCおよびNOxを浄化できるものであればよい。例えば、触媒装置8を、ペロブスカイト型触媒などの非金属触媒および/または3元触媒などの金属触媒で構成してもよい。
【0063】
これらの第1および第2触媒装置8a,8bの間には、酸素濃度センサ(以下「O2センサ」という)15が取り付けられている。このO2センサ15(下流側空燃比センサ)は、ジルコニアおよび白金電極などで構成され、第1触媒装置8aの下流側の排気ガス中の酸素濃度に基づく出力VoutをECU2に送る。このO2センサ15の出力Voutは、理論空燃比よりもリッチな混合気が燃焼したときには、ハイレベルの電圧値(例えば0.8V)となり、混合気がリーンのときには、ローレベルの電圧値(例えば0.2V)となるとともに、混合気が理論空燃比付近のときには、ハイレベルとローレベルの間の所定の目標値Vop(例えば0.6V)となる(図2参照)。
【0064】
また、第1触媒装置8aよりも上流側のエキゾーストマニホールド7aの集合部付近には、LAFセンサ14(上流側空燃比センサ)が取り付けられている。このLAFセンサ14は、O2センサ15と同様のセンサとリニアライザなどの検出回路とを組み合わせることによって構成されており、リッチ領域からリーン領域までの広範囲な空燃比の領域において排気ガス中の酸素濃度をリニアに検出し、その酸素濃度に比例する出力KACTをECU2に送る。この出力KACTは、空燃比の逆数に比例する当量比として表される。
【0065】
次に、図2を参照しながら、第1触媒装置8aの排気ガスの浄化率とO2センサ15の出力Vout(電圧値)との関係について説明する。同図は、第1触媒装置8aが、長時間の使用により浄化能力が低下した劣化状態と、浄化能力の高い未劣化状態の場合において、LAFセンサ14の出力KACTすなわちエンジン3に供給される混合気の空燃比が理論空燃比の付近で変化したときの、2つの第1触媒装置8aのHCおよびNOxの浄化率と、O2センサ15の出力Voutをそれぞれ測定した結果の一例を示している。同図において、破線で示すデータはいずれも、第1触媒装置8aが未劣化状態の場合の測定結果であり、実線で示すデータはいずれも、第1触媒装置8aが劣化状態の場合の測定結果である。また、LAFセンサ14の出力KACTが大きいほど、混合気の空燃比がよりリッチ側であることを示している。
【0066】
同図に示すように、第1触媒装置8aが劣化している場合には、未劣化状態の場合と比べて、排気ガスの浄化能力が低下していることにより、LAFセンサ14の出力KACTがよりリーン側の値KACT1のときに、O2センサ15の出力Voutが目標値Vopを横切っている。一方、第1触媒装置8aは、その劣化・未劣化状態にかかわらず、O2センサ15の出力Voutが目標値Vopにあるときに、HCおよびNOxを最も効率よく浄化する特性を有している。したがって、O2センサ15の出力Voutが目標値Vopになるように、混合気の空燃比を制御することにより、第1触媒装置8aによって排気ガスを最も効率よく浄化できることが判る。このため、後述する空燃比制御では、O2センサ15の出力Voutが目標値Vopに収束するように、目標空燃比KCMDが制御される。
【0067】
さらに、ECU2には、アクセル開度センサ16、大気圧センサ17、吸気温センサ18および車速センサ19などが接続されている。このアクセル開度センサ16は、車両の図示しないアクセルペダルの踏み込み量(以下「アクセル開度」という)APを検出し、その検出信号をECU2に出力する。また、大気圧センサ17、吸気温センサ18および車速センサ19はそれぞれ、大気圧PA、吸気温TAおよび車速VPを検出し、その検出信号をECU2に出力する。
【0068】
次に、ECU2(偏差算出手段、予測値算出手段、出力サンプリング手段、サンプリング手段、同定手段、空燃比算出手段、空燃比制御手段、空燃比サンプリング手段)について説明する。
【0069】
このECU2は、I/Oインターフェース、CPU、RAMおよびROMなどからなるマイクロコンピュータから構成されており、前述した各種のセンサ10〜19の出力に応じて、エンジン3の運転状態を判別するとともに、ROMに予め記憶された制御プログラムやRAMに記憶されたデータなどに従って、後述する適応空燃比制御処理またはマップ検索処理を実行することにより、O2センサ15の出力Voutを目標値Vopに収束させるために、目標空燃比KCMDを算出する(なお、この目標空燃比KCMDは、空燃比の逆数に比例する当量比として算出される)。さらに、後述するように、この目標空燃比KCMDに基づいて、インジェクタ6の最終燃料噴射量TOUTを気筒ごとに算出し、この算出した最終燃料噴射量TOUTに基づいた駆動信号で、インジェクタ6を駆動することにより、LAFセンサ14の出力KACTを目標空燃比KCMDに一致させるように、混合気の空燃比をフィードバック制御する。
【0070】
図3に示すように、制御装置1は、目標空燃比KCMDを算出するADSMコントローラ20およびPRISMコントローラ21を備えており、両コントローラ20,21はいずれも、具体的には、ECU2により構成されている。
【0071】
以下、ADSMコントローラ20について説明する。このADSMコントローラ20は、以下に述べる適応予測型ΔΣ変調制御(Adaptive prediction Delta Sigma Modulation Control:以下「ADSM」という)処理の制御アルゴリズムにより、O2センサ15の出力Voutを目標値Vopに収束させるための目標空燃比KCMDを算出するものであり、状態予測器22、オンボード同定器23およびDSMコントローラ24により構成されている。なお、このADSM処理の具体的なプログラムについては、後述する。
【0072】
まず、状態予測器22について説明する。この状態予測器22は、以下に述べる予測アルゴリズムにより、出力偏差VO2の予測値PREVO2を予測(算出)するものである。本実施形態では、制御対象への制御入力を混合気の目標空燃比KCMDとし、制御対象の出力をO2センサ15の出力Voutとし、インジェクタ6を含むエンジン3の吸気系から、第1触媒装置8aを含む排気系の第1触媒装置8aの下流側のO2センサ15までの系を、制御対象と見なすとともに、この制御対象を、下式(1)に示すように、離散時間系モデルであるARXモデル(auto-regressive model with exogeneous input:外部入力を持つ自己回帰モデル)としてモデル化する。
【0073】
VO2(k)=a1・VO2(k-1)+a2・VO2(k-2)+b1・DKCMD(k-dt) ……(1)
ここで、VO2は、O2センサ15の出力Voutと前述した目標値Vopとの偏差(Vout−Vop)である出力偏差を表し、DKCMDは、目標空燃比KCMD(=φop)と基準値FLAFBASEとの偏差(KCMD−FLAFBASE)である空燃比偏差を表し、記号kは、サンプリングにより離散化された時間を表している。この基準値FLAFBASEは、所定の一定値に設定される。また、a1,a2,b1はモデルパラメータを表しており、オンボード同定器23により、後述するように逐次同定される。
【0074】
さらに、上記式(1)のdtは、目標空燃比KCMDの混合気がインジェクタ6により吸気系に供給されてから、O2センサ15の出力Voutに反映されるまでの予測時間を表しており、下式(2)のように定義される。
dt=d+d'+dd ……(2)
ここで、dは、LAFセンサ14からO2センサ15までの排気系のむだ時間を、d'は、インジェクタ6からLAFセンサ14までの空燃比操作系のむだ時間を、ddは、排気系と空燃比操作系との間の位相遅れ時間をそれぞれ表している(なお、後述する適応空燃比制御処理の制御プログラムでは、ADSM処理とPRISM処理とに切り換えて目標空燃比KCMDを算出する処理を行うため、位相遅れ時間dd=0に設定されている)。
【0075】
以上のように、制御対象モデルを、出力偏差VO2の離散データ(時系列データ)および空燃比偏差DKCMDの離散データで構成した理由は以下による。すなわち、一般に、制御対象モデルでは、制御対象の入出力と所定値との偏差を、入出力を表す変数として定義した場合の方が、入出力の絶対値を変数として定義した場合よりも、モデルパラメータをより正確に同定または定義できることで、制御対象モデルの動特性を制御対象の実際の動特性に適合させることができるという事実が知られている。したがって、本実施形態の制御装置1のように、制御対象モデルを、出力偏差VO2の離散データおよび空燃比偏差DKCMDの離散データで構成することにより、O2センサ15の出力Voutおよび目標空燃比KCMDの絶対値を変数とする場合と比べて、制御対象の実際の動特性に対する制御対象モデルの動特性の適合性を向上させることができ、それにより予測値PREVO2の算出精度を向上させることができる。
【0076】
また、予測値PREVO2は、目標空燃比KCMDの混合気が吸気系に供給されてから予測時間dtが経過した後の出力偏差VO2(k+dt)を予測した値であり、上記式(1)に基づき、予測値PREVO2の算出式を導出すると、下式(3)が得られる。
PREVO2(k)≒VO2(k+dt)
=a1・VO2(k+dt-1)+a2・VO2(k+dt-2)+b1・DKCMD(k) ……(3)
【0077】
この式(3)では、出力偏差VO2(k)の未来値に相当するVO2(k+dt−1),VO2(k+dt−2)の算出が必要となり、実際にプログラム化するのは困難である。そのため、マトリクスA、Bを、モデルパラメータa1,a2,b1を用いて図4に示す式(4)、(5)のように定義するとともに、上式(3)の漸化式を繰り返し用いることにより、上式(3)を変形すると、図4に示す式(6)が得られる。予測アルゴリズムすなわち予測値PREVO2の算出式として、この式(6)を用いた場合、予測値PREVO2が、出力偏差VO2および空燃比偏差DKCMDにより算出される。
【0078】
次に、LAF出力偏差DKACTを、LAFセンサ14の出力KACT(=φin)と基準値FLAFBASEとの偏差(KACT−FLAFBASE)として定義すると、DKACT(k)=DKCMD(k−d')の関係が成立するので、この関係を図4の式(6)に適用すると、図4に示す式(7)が得られる。
【0079】
以上の式(6)または式(7)により算出される予測値PREVO2を用い、後述するように目標空燃比KCMDを算出することによって、制御対象の入出力間の応答遅れやむだ時間を適切に補償しながら、目標空燃比KCMDを算出することができる。特に、予測アルゴリズムとして、上記式(7)を用いた場合、予測値PREVO2が、出力偏差VO2、LAF出力偏差DKACTおよび目標空燃比KCMDにより算出されるので、第1触媒装置8aに実際に供給される排気ガスの空燃比の状態が反映された値として、予測値PREVO2を算出でき、その算出精度すなわち予測精度を上記式(6)を用いた場合よりも向上させることができる。また、式(7)を用いた場合において、d'≦1と見なせるときには、空燃比偏差DKCMDを用いることなく、出力偏差VO2およびLAF出力偏差DKACTのみにより、予測値PREVO2を算出できる。本実施形態では、LAFセンサ14がエンジン3に設けられているので、予測アルゴリズムとして上記式(7)を採用する。
【0080】
なお、前述した式(1)の制御対象モデルは、DKACT(k)=DKCMD(k−d')の関係を適用することにより、出力偏差VO2およびLAF出力偏差DKACTを変数とするモデルとして定義することも可能である。
【0081】
次に、オンボード同定器23(同定手段)について説明する。このオンボード同定器23は、以下に述べる逐次型同定アルゴリズムにより、前述した式(1)のモデルパラメータa1,a2,b1を同定(算出)するものである。具体的には、図5に示す(8),(9)により、モデルパラメータのベクトルθ(k)を算出する。同図の式(8)において、KP(k)は、ゲイン係数のベクトルであり、ide_f(k)は同定誤差フィルタ値である。また、式(9)におけるθ(k)Tは、θ(k)の転置行列を表し、a1'(k)、a2'(k)およびb1'(k)は、後述するリミット処理を施す前のモデルパラメータを表している。なお、以下の説明では、「ベクトル」という表記を適宜、省略する。
【0082】
上記式(8)の同定誤差フィルタ値ide_f(k)は、図5に示す式(11)〜(13)により算出される同定誤差ide(k)に、図5の式(10)に示す移動平均フィルタリング処理を施した値である。図5の式(10)のnは、移動平均フィルタリング処理のフィルタ次数(1以上の整数)を表しており、式(12)のVO2HAT(k)は、出力偏差VO2の同定値を表している。
【0083】
この同定誤差フィルタ値ide_f(k)を用いる理由は以下による。すなわち、本実施形態の制御対象は、目標空燃比KCMDを制御入力とし、O2センサ15の出力Voutを制御対象の出力とするものであり、その周波数特性としてはローパス特性を有している。このようなローパス特性を有する制御対象では、オンボード同定器23の同定アルゴリズム、具体的には後述する重み付き最小2乗法アルゴリズムの周波数重み特性に起因して、制御対象の高周波特性が強調された状態で、モデルパラメータが同定されるため、制御対象モデルのゲイン特性が制御対象の実際のゲイン特性よりも低くなる傾向を示す。その結果、制御装置1によりADSM処理またはPRISM処理が実行された際、オーバーゲイン状態になることで、制御系が発散状態になり、不安定になる可能性がある。
【0084】
したがって、本実施形態では、重み付き最小2乗法アルゴリズムの周波数重み特性を適切に補正し、制御対象モデルのゲイン特性を、制御対象の実際のゲイン特性に一致させるために、上記同定誤差ide(k)に移動平均フィルタリング処理を施した同定誤差フィルタ値ide_f(k)を用いるとともに、後述するように、移動平均フィルタリング処理のフィルタ次数nを、排気ガスボリュームAB_SVに応じて設定している。
【0085】
さらに、前述した図5の式(8)のゲイン係数のベクトルKP(k)は、図5の式(14)により算出される。この式(14)のP(k)は、図5の式(15)で定義される3次の正方行列である。
【0086】
以上のような同定アルゴリズムでは、式(15)の重みパラメータλ1、λ2の設定により、以下の4つの同定アルゴリズムのうちの1つが選択される。
すなわち、
λ1=1,λ2=0 ;固定ゲインアルゴリズム
λ1=1,λ2=1 ;最小2乗法アルゴリズム
λ1=1,λ2=λ ;漸減ゲインアルゴリズム
λ1=λ,λ2=1 ;重み付き最小2乗法アルゴリズム
ただし、λは、0<λ<1に設定される所定値。
【0087】
本実施形態では、これらの4つの同定アルゴリズムのうちの重み付き最小2乗法アルゴリズムを採用する。これは、重みパラメータλ1の値をエンジン3の運転状態、具体的には排気ガスボリュームAB_SVに応じて設定することにより、同定精度と、モデルパラメータの最適値への収束速度とを適切に設定できることによる。例えば、低負荷運転状態のときには、それに応じて重みパラメータλ1の値を値1に近い値に設定することで、すなわち最小2乗法アルゴリズムに近いアルゴリズムに設定することで、良好な同定精度を確保できるとともに、高負荷運転状態のときには、それに応じて重みパラメータλ1の値を低負荷運転状態のときよりも小さい値に設定することにより、モデルパラメータを迅速に最適値に収束させることができる。以上のように、重みパラメータλ1の値を排気ガスボリュームAB_SVに応じて設定することにより、同定精度と、モデルパラメータの最適値への収束速度とを適切に設定することができ、それにより、触媒装置8a,8bによる排気ガス浄化率を向上させることができる。
【0088】
以上の式(8)〜(15)の同定アルゴリズムにおいて、前述したDKACT(k)=DKCMD(k−d')の関係を適用すると、図6に示す式(16)〜(23)の同定アルゴリズムが得られる。本実施形態では、LAFセンサ14がエンジン3に設けられているので、これらの式(16)〜(23)を用いる。これらの式(16)〜(23)を用いた場合、前述した理由により、モデルパラメータを、第1触媒装置8aに実際に供給される排気ガスの空燃比の状態がより反映された値として同定することができ、それにより、上記式(8)〜(15)の同定アルゴリズムを用いた場合よりも、モデルパラメータの同定精度を向上させることができる。
【0089】
また、このオンボード同定器23では、以上の同定アルゴリズムにより算出されたモデルパラメータa1'(k)、a2'(k)およびb1'(k)に、後述するリミット処理を施すことにより、モデルパラメータa1(k)、a2(k)およびb1(k)が算出される。さらに、前述した状態予測器22では、このようにリミット処理を施した後のモデルパラメータa1(k)、a2(k)およびb1(k)に基づき、予測値PREVO2が算出される。
【0090】
次に、DSMコントローラ24について説明する。このDSMコントローラ24は、ΔΣ変調アルゴリズムを応用した制御アルゴリズムにより、状態予測器22で算出された予測値PREVO2に基づき、制御入力φop(k)(=目標空燃比KCMD)を生成(算出)するとともに、これを制御対象に入力することにより、制御対象の出力としてのO2センサ15の出力Voutを目標値Vopに収束させるように制御するものである。
【0091】
まず、一般的なΔΣ変調アルゴリズムについて説明する。図7は、ΔΣ変調アルゴリズムを適用したコントローラ26により、制御対象27を制御する制御系の構成を示している。同図に示すように、このコントローラ26では、差分器26aにより、参照信号r(k)と遅延素子26bで遅延されたDSM信号u(k−1)との偏差として偏差信号δ(k)が生成される。次に、積分器26cにより、偏差積分値σd(k)が、偏差信号δ(k)と遅延素子26dで遅延された偏差積分値σd(k−1)との和の信号として生成される。次いで、量子化器26e(符号関数)により、DSM信号u(k)が、この偏差積分値σd(k)を符号化した信号として生成される。そして、以上のように生成されたDSM信号u(k)が制御対象27に入力されることにより、出力信号 y(k)が制御対象27から出力される。
【0092】
以上のΔΣ変調アルゴリズムは、以下の数式(24)〜(26)で表される。
δ(k)=r(k)−u(k−1) ……(24)
σd(k)=σd(k−1)+δ(k) ……(25)
u(k)=sgn(σd(k)) ……(26)
ただし、符号関数sgn(σd(k))の値は、σd(k)≧0のときにはsgn(σd(k))=1となり、σd(k)<0のときにはsgn(σd(k))=−1となる(なお、σd(k)=0のときに、sgn(σd(k))=0と設定してもよい)。
【0093】
図8は、以上の制御系の制御シミュレーション結果を示している。同図に示すように、正弦波状の参照信号r(k)を制御系に入力した場合、DSM信号u(k)が矩形波状の信号として生成され、これを制御対象27に入力することにより、参照信号r(k)と異なる振幅で同じ周波数の、ノイズを有するものの全体として同様の波形の出力信号y(k)が、制御対象27から出力される。このように、ΔΣ変調アルゴリズムの特性は、参照信号r(k)から生成されたDSM信号u(k)を制御対象27に入力したときに、制御対象27の出力y(k)が、参照信号r(k)に対して、異なる振幅で同じ周波数の、全体として同様の波形の信号となるような値として、DSM信号u(k)を生成できるという点にある。言い換えれば、DSM信号u(k)を、参照信号r(k)が制御対象27の実際の出力y(k)に再現されるような値として、生成(算出)できるという点にある。
【0094】
DSMコントローラ24は、このようなΔΣ変調アルゴリズムの特性を利用し、O2センサ15の出力Voutを目標値Vopに収束させるための制御入力φop(k)を算出するものである。その原理について説明すると、例えば図9に1点鎖線で示すように、出力偏差VO2が値0に対して揺らいでいる場合(すなわち、O2センサ15の出力Voutが目標値Vopに対して揺らいでいる場合)、出力偏差VO2を値0に収束させる(すなわち出力Voutを目標値Vopに収束させる)には、図9に破線で示す、出力偏差VO2を打ち消すような逆位相波形の出力偏差VO2*が生じるように、制御入力φop(k)を生成すればよい。
【0095】
しかし、前述したように、本実施形態の制御対象では、制御入力φop(k)としての目標空燃比KCMDが制御対象に入力されてからO2センサ15の出力Voutに反映されるまでに、予測時間dt分の時間遅れが発生するため、現在の出力偏差VO2に基づいて、制御入力φop(k)を算出した場合の出力偏差VO2#は、図9に実線で示すように、出力偏差VO2*に対して遅れを生じ、それにより、制御タイミングのずれが生じてしまう。したがって、これを補償するために、本実施形態のADSMコントローラ20におけるDSMコントローラ24では、出力偏差VO2の予測値PREVO2を用いることにより、制御入力φop(k)が、制御タイミングのずれを生じることなく、現在の出力偏差VO2を打ち消すような出力偏差(逆位相波形の出力偏差VO2*と同様の出力偏差)を生じさせる信号として生成される。
【0096】
具体的には、このDSMコントローラ24では、図10に示すように、反転増幅器24aにより、参照信号r(k)が、値−1、参照信号用のゲインGdおよび予測値PREVO2(k)を互いに乗算した信号として生成される。次に、差分器24bにより、この参照信号r(k)と遅延素子24cで遅延されたDSM信号u''(k−1)との偏差として偏差信号δ(k)が生成される。
【0097】
次いで、積分器24dにより、偏差積分値σd(k)が、偏差信号δ(k)と遅延素子24eで遅延された偏差積分値σd(k−1)との和の信号として生成され、次に、量子化器24f(符号関数)により、DSM信号u''(k)が、この偏差積分値σd(k)を符号化した値として生成される。そして、増幅器24gにより、増幅DSM信号u(k)がDSM信号u''(k)を所定のゲインFdで増幅した値として生成され、次に、加算器24hにより、この増幅DSM信号u(k)を所定の基準値FLAFBASEに加算した値として、制御入力φop(k)が生成される。
【0098】
以上のDSMコントローラ24の制御アルゴリズムは、以下の式(27)〜(32)で表される。
r(k)=−1・Gd・PREVO2(k) ……(27)
δ(k)=r(k)−u''(k−1) ……(28)
σd(k)=σd(k−1)+δ(k) ……(29)
u''(k)=sgn(σd(k)) ……(30)
u(k)=Fd・u''(k) ……(31)
φop(k)=FLAFBASE+u(k) ……(32)
ここで、Gd,Fdはゲインを表す。また、符号関数sgn(σd(k))の値は、σd(k)≧0のときにはsgn(σd(k))=1となり、σd(k)<0のときにはsgn(σd(k))=−1となる(なお、σd(k)=0のときに、sgn(σd(k))=0と設定してもよい)。
【0099】
このDSMコントローラ24では、以上の式(27)〜(32)に示す制御アルゴリズムにより、前述したように、制御入力φop(k)が、制御タイミングのずれを生じることなく、出力偏差VO2を打ち消すような出力偏差VO2*を生じさせる値として算出される。すなわち、制御入力φop(k)が、O2センサ15の出力Voutを目標値Vopに収束させることができる値として算出される。また、制御入力φop(k)が、増幅DSM信号u(k)を所定の基準値FLAFBASEに加算した値として算出されるので、制御入力φop(k)を値0を中心して正負反転する値だけでなく、基準値FLAFBASEを中心として増減を繰り返す値として算出できる。これにより、通常のΔΣ変調アルゴリズムと比べて、制御の自由度を高めることができる。
【0100】
次に、前記PRISMコントローラ21について説明する。このPRISMコントローラ21は、以下に述べるオンボード同定型スライディングモード制御処理(以下「PRISM処理」という)の制御アルゴリズムにより、O2センサ15の出力Voutを目標値Vopに収束させるための目標空燃比KCMDを算出するものであり、状態予測器22、オンボード同定器23およびスライディングモードコントローラ(以下「SLDコントローラ」という)25により構成されている。なお、このPRISM処理の具体的なプログラムについては後述する。
【0101】
このPRISMコントローラ21のうちの状態予測器22およびオンボード同定器23については、既に説明したので、ここではSLDコントローラ25についてのみ説明する。このSLDコントローラ25は、スライディングモード制御アルゴリズムに基づいてスライディングモード制御を行うものであり、以下、一般的なスライディングモード制御アルゴリズムについて説明する。このスライディングモード制御アルゴリズムでは、前述した式(1)の離散時間系モデルを制御対象モデルとして用いるため、切換関数σは、下式(33)に示すように、出力偏差VO2の時系列データの線形関数として設定される。
σ(k)=S1・VO2(k)+S2・VO2(k−1) ……(33)
ここで、S1,S2は、−1<(S2/S1)<1の関係が成立するように設定される所定の係数である。
【0102】
一般にスライディングモード制御アルゴリズムでは、切換関数σが2つの状態変数(本実施形態では出力偏差VO2の時系列データ)で構成されている場合、2つの状態変数で構成される位相空間は、これらをそれぞれ縦軸および横軸とする2次元の位相平面となるため、この位相平面上において、σ=0を満たす2つの状態変数の値の組み合わせは、切換直線と呼ばれる直線上に載ることになる。したがって、制御対象への制御入力を、2つの状態変数の組み合わせが切換直線上に収束する(載る)ように適切に決定することにより、2つの状態変数をいずれも、値0になる平衡点に収束(スライディング)させることができる。さらに、スライディングモード制御アルゴリズムでは、切換関数σの設定により、状態変数の動特性、より具体的には収束挙動や収束速度を指定することができる。例えば、本実施形態のように、切換関数σが2つの状態変数で構成されている場合には、切換直線の傾きを値1に近づけると、状態変数の収束速度が遅くなる一方、値0に近づけると、収束速度が速くなる。
【0103】
本実施形態では、前記式(33)に示すように、切換関数σが出力偏差VO2の2つの時系列データ、すなわち出力偏差VO2の今回値VO2(k)および前回値VO2(k−1)により構成されているので、これらの今回値VO2(k)および前回値VO2(k−1)の組み合わせを切換直線上に収束させるように、制御対象への制御入力すなわち目標空燃比KCMDを設定すればよい。具体的には、制御量Usl(k)を、基準値FLAFBASEとの和が目標空燃比KCMDとなる値として定義すると、今回値VO2(k)および前回値VO2(k−1)の組み合わせを切換直線上に収束させるための制御量Usl(k)は、適応スライディングモード制御アルゴリズムにより、図11に示す式(34)のように、等価制御入力Ueq(k)、到達則入力Urch(k)および適応則入力Uadp(k)の総和として設定される。
【0104】
この等価制御入力Ueq(k)は、出力偏差VO2の今回値VO2(k)および前回値VO2(k−1)の組み合わせを切換直線上に拘束しておくためのものであり、具体的には、図11に示す式(35)のように定義される。また、到達則入力Urch(k)は、外乱やモデル化誤差などにより、出力偏差VO2の今回値VO2(k)および前回値VO2(k−1)の組み合わせが切換直線上から外れた際に、これらを切換直線上に収束させるためのものであり、具体的には、図11に示す式(36)のように定義される。この式(36)において、Fはゲインを表す。
【0105】
さらに、適応則入力Uadp(k)は、制御対象の定常偏差、モデル化誤差および外乱の影響を抑制しながら、出力偏差VO2の今回値VO2(k)および前回値VO2(k−1)の組み合わせを、切換超平面上に確実に収束させるためのものであり、具体的には、図11に示す式(37)のように定義される。この式(37)において、Gはゲインを、ΔTは制御周期をそれぞれ表す。
【0106】
本実施形態のPRISMコントローラ21のSLDコントローラ25では、前述したように、出力偏差VO2に代えて予測値PREVO2を用いるので、PREVO2(k)≒VO2(k+dt)の関係を適用することにより、以上の式(33)〜(37)のアルゴリズムを、図12に示す式(38)〜(42)に書き換えて用いる。この式(38)におけるσPREは、予測値PREVO2を用いたときの切換関数(以下「予測切換関数」という)の値である。すなわち、このSLDコントローラ25では、以上のアルゴリズムで算出される制御量Usl(k)を基準値FLAFBASEに加算することによって、目標空燃比KCMDが算出される。
【0107】
以下、ECU2により実行される燃料噴射量の算出処理について、図13を参照しながら説明する。なお、以下の説明では、今回値であることを示す記号(k)を適宜、省略する。図13は、この制御処理のメインルーチンを示しており、本処理は、TDC信号の入力に同期して割り込み実行される。この処理では、後述する適応空燃比制御処理、またはマップ検索処理により算出された目標空燃比KCMDを用いることによって、燃料噴射量TOUTが気筒ごとに算出される。
【0108】
まず、ステップ1(図では「S1」と略す。以下同じ)において、前述した各種のセンサ10〜19の出力を読み込むとともに、読み込んだデータをRAM内に記憶する。
【0109】
次に、ステップ2に進み、基本燃料噴射量Timを算出する。この処理では、エンジン回転数NEおよび吸気管内絶対圧PBAに応じて、図示しないマップを検索することにより、基本燃料噴射量Timを算出する。
【0110】
次いで、ステップ3に進み、総補正係数KTOTALを算出する。この総補正係数KTOTALは、各種の運転パラメータ(例えば吸気温TAや、大気圧PA、エンジン水温TW、アクセル開度APなど)に応じて、各種のテーブルやマップを検索することで各種の補正係数を算出するとともに、これらの各種の補正係数を互いに乗算することにより、算出される。
【0111】
次に、ステップ4に進み、適応制御フラグF_PRISMONの設定処理を実行する。この処理の内容は図示しないが、具体的には、以下の(A)〜(F)の条件がいずれも成立しているときには、適応空燃比制御処理で算出された目標空燃比KCMDを使用する条件が成立しているとして、それを表すために、適応制御フラグF_PRISMONが「1」にセットされる。一方、(A)〜(F)の条件のうちの少なくとも1つが成立していないときには、適応制御フラグF_PRISMONが「0」にセットされる。
(A)LAFセンサ14およびO2センサ15がいずれも活性化していること。
(B)エンジン3がリーンバーン運転中でないこと。
(C)スロットル弁5が全開状態でないこと。
(D)点火時期の遅角制御中でないこと。
(E)フューエルカット運転中でないこと。
(F)エンジン回転数NEおよび吸気管内絶対圧PBAがいずれも、所定の範囲囲内の値であること。
【0112】
次に、ステップ5に進み、ステップ4で設定された適応制御フラグF_PRISMONが「1」であるか否かを判別する。この判別結果がYESのときには、ステップ6に進み、目標空燃比KCMDを、後述する適応空燃比制御処理で算出された適応目標空燃比KCMDSLDに設定する。
【0113】
一方、ステップ5の判別結果がNOのときには、ステップ7に進み、目標空燃比KCMDをマップ値KCMDMAPに設定する。このマップ値KCMDMAPは、エンジン回転数NEおよび吸気管内絶対圧PBAに応じて、図示しないマップを検索することにより、算出される。
【0114】
以上のステップ6または7に続くステップ8では、オブザーバフィードバック補正係数#nKLAFを気筒ごとに算出する。このオブザーバフィードバック補正係数#nKLAFは、気筒ごとの実際の空燃比のばらつきを補正するためのものであり、具体的には、オブザーバによりLAFセンサ14の出力KACTから気筒ごとの実際の空燃比を推定し、これらの推定した空燃比に応じて、PID制御により算出される。なお、このオブザーバフィードバック補正係数#nKLAFの記号#nは、気筒の番号#1〜#4を表すものであり、これは、後述する要求燃料噴射量#nTCYLおよび最終燃料噴射量#nTOUTにおいても同様である。
【0115】
次いで、ステップ9に進み、フィードバック補正係数KFBを算出する。このフィードバック補正係数KFBは、LAFセンサ14の出力KACTを目標空燃比KCMDに一致させるためのものであり、具体的には、以下のように算出される。すなわち、LAFセンサ14の出力KACTと目標空燃比KCMDとの偏差に応じて、PID制御によりフィードバック係数KLAFを算出する。また、図示しないSelf Tuning Regulator 型の適応制御器によりフィードバック補正係数KSTRを算出し、これを目標空燃比KCMDで除算することにより、フィードバック補正係数kstrを算出する。そして、エンジン3の運転状態に応じて、これらの2つのフィードバック係数KLAFおよびフィードバック補正係数kstrの一方を、フィードバック補正係数KFBとして設定する。
【0116】
次いで、ステップ10に進み、補正目標空燃比KCMDMを算出する。この補正目標空燃比KCMDMは、空燃比A/Fの変化による充填効率の変化を補償するためのものであり、前述したステップ6または7で算出された目標空燃比KCMDに応じて、図示しないテーブルを検索することにより算出される。
【0117】
次に、ステップ11に進み、以上のように算出した基本燃料噴射量Tim、総補正係数KTOTAL、オブザーバフィードバック補正係数#nKLAF、フィードバック補正係数KFB、および補正目標空燃比KCMDMを用い、下式(43)により、気筒ごとの要求燃料噴射量#nTCYLを算出する。
#nTCYL=Tim・KTOTAL・KCMDM・KFB・#nKLAF
……(43)
【0118】
次に、ステップ12に進み、要求燃料噴射量#nTCYLを付着補正することにより、最終燃料噴射量#nTOUTを算出する。この最終燃料噴射量#nTOUTは、具体的には、今回の燃焼サイクルでインジェクタ6から噴射された燃料が燃焼室の内壁面に付着する割合などを、運転状態に応じて算出し、そのように算出した割合に基づいて、要求燃料噴射量#nTCYLを補正することにより、算出される。
【0119】
次いで、ステップ13に進み、以上のように算出した最終燃料噴射量#nTOUTに基づく駆動信号を、対応する気筒のインジェクタ6に出力した後、本処理を終了する。以上により、LAFセンサ14の出力KACTを目標空燃比KCMDに一致させるように、混合気の空燃比がフィードバック制御される。
【0120】
次に、図14および図15を参照しながら、ADSM処理およびPRISM処理を含む適応空燃比制御処理について説明する。この処理は、所定の制御周期ΔT(30msec)で実行される。また、この処理では、エンジン3の運転状態に応じて、ADSM処理、PRISM処理、またはスライディングモード制御量DKCMDSLDを所定値SLDHOLDに設定する処理により、目標空燃比KCMDが算出される。
【0121】
この処理では、まず、ステップ20において、F/C後判定処理を実行する。この処理の内容は図示しないが、この処理では、フューエルカット運転中は、それを表すためにF/C後判定フラグF_AFCが「1」にセットされ、フューエルカット運転の終了後、所定時間X_TM_AFCが経過したときには、それを表すためにF/C後判定フラグF_AFCが「0」にセットされる。
【0122】
次に、ステップ21に進み、車速VPに基づいて、エンジン3を搭載した車両が発進したか否かを判定する発進判定処理を実行する。図16に示すように、この処理では、まず、ステップ49において、アイドル運転フラグF_IDLEが「1」であるか否かを判別する。このアイドル運転フラグF_IDLEは、アイドル運転中であるときに「1」に、それ以外のときに「0」にセットされる。
【0123】
この判別結果がYESで、アイドル運転中であるときには、ステップ50に進み、車速VPが所定車速VSTART(例えば1km/h)より小さいか否かを判別する。この判別結果がYESで、停車中であるときには、ステップ51に進み、ダウンカウント式の第1発進判定タイマのタイマ値TMVOTVSTを第1所定時間TVOTVST(例えば3msec)に設定する。
【0124】
次いで、ステップ52に進み、ダウンカウント式の第2発進判定タイマのタイマ値TMVSTを、上記第1所定時間TVOTVSTよりも長い第2所定時間TVST(例えば500msec)に設定する。次いで、ステップ53,54において、第1および第2発進フラグF_VOTVST,F_VSTをいずれも「0」にセットした後、本処理を終了する。
【0125】
一方、ステップ49または50の判別結果がNOのとき、すなわちアイドル運転中でないか、または車両が発進したときには、ステップ55に進み、第1発進判定タイマのタイマ値TMVOTVSTが値0より大きいか否かを判別する。この判別結果がYESで、アイドル運転の終了後または車両の発進後、第1所定時間TVOTVSTが経過していないときには、第1発進モード中であるとして、ステップ56に進み、それを表すために第1発進フラグF_VOTVSTを「1」にセットする。
【0126】
一方、ステップ55の判別結果がNOで、アイドル運転の終了後または車両の発進後、第1所定時間TVOTVSTが経過したときには、第1発進モードが終了したとして、ステップ57に進み、第1発進フラグF_VOTVSTを「0」にセットする。
【0127】
ステップ56または57に続くステップ58では、第2発進判定タイマのタイマ値TMVSTが値0より大きいか否かを判別する。この判別結果がYESで、アイドル運転の終了後または車両の発進後、第2所定時間TVSTが経過していないときには、第2発進モード中であるとして、ステップ59に進み、それを表すために第2発進フラグF_VSTを「1」にセットした後、本処理を終了する。
【0128】
一方、ステップ59の判別結果がNOで、アイドル運転の終了後または車両の発進後、第2所定時間TVSTが経過したときには、第2発進モードが終了したとして、前記ステップ54を実行した後、本処理を終了する。
【0129】
図14に戻り、ステップ21に続くステップ22では、状態変数の設定処理を実行する。図示しないが、この処理では、RAM内に記憶されている、目標空燃比KCMD、LAFセンサ14の出力KACTおよび出力偏差VO2の時系列データをいずれも、1サンプリングサイクル分ずつ過去側にシフトさせる。その後、KCMD、KACTおよびVO2の時系列データの最新の値と、基準値FLAFBASEと、後述する適応補正項FLAFADPとに基づき、KCMD、KACTおよびVO2の今回値を算出する。
【0130】
次に、ステップ23に進み、PRISM/ADSM処理の実行判定処理を行う。この処理は、PRISM処理またはADSM処理の実行条件が成立しているか否かを判定するものであり、具体的には、図17に示すフローチャートのように実行される。
【0131】
すなわち、図17のステップ60〜63において、以下の(G)〜(J)の条件がいずれも成立しているときには、PRISM処理またはADSM処理を実行すべき運転状態にあるとして、それを表すために、ステップ64で、PRISM/ADSM実行フラグF_PRISMCALを「1」にセットした後、本処理を終了する。一方、(G)〜(J)の条件の少なくとも1つが成立していないときには、PRISM処理またはADSM処理を実行すべき運転状態にないとして、それを表すために、ステップ65で、PRISM/ADSM実行フラグF_PRISMCALを「0」にセットした後、本処理を終了する。
(G)O2センサ15が活性化していること。
(H)LAFセンサ14が活性化していること。
(I)エンジン3がリーンバーン運転中でないこと。
(J)点火時期の遅角制御中でないこと。
【0132】
図14に戻り、ステップ23に続くステップ24では、同定器演算の実行判定処理を行う。この処理は、オンボード同定器23によるパラメータ同定の実行条件が成立しているか否かを判定するものであり、具体的には、図18に示すフローチャートのように実行される。
【0133】
すなわち、図18のステップ70および71の判別結果がいずれもNOのとき、言い換えれば、スロットル弁開度θTHが全開状態でなく、かつフューエルカット運転中でないときには、パラメータ同定を実行すべき運転状態であるとして、ステップ72に進み、同定実行フラグF_IDCALを「1」にセットした後、本処理を終了する。一方、ステップ70または71の判別結果がYESのときには、パラメータ同定を実行すべき運転状態にないとして、ステップ73に進み、同定実行フラグF_IDCALを「0」にセットした後、本処理を終了する。
【0134】
図14に戻り、ステップ24に続くステップ25では、各種パラメータ(排気ガスボリュームAB_SVなど)を算出する。この処理の具体的な内容は、後述する。
【0135】
次に、ステップ26に進み、前記ステップ23で設定されたPRISM/ADSM実行フラグF_PRISMCALが「1」であるか否かを判別する。この判別結果がYESで、PRISM処理またはADSM処理の実行条件が成立しているときには、ステップ27に進み、前記ステップ24で設定された同定実行フラグF_IDCALが「1」であるか否かを判別する。
【0136】
この判別結果がYESで、オンボード同定器23によるパラメータ同定を実行すべき運転状態のときには、ステップ28に進み、パラメータ初期化フラグF_IDRSETが「1」であるか否かを判別する。この判別結果がNOで、RAMに記憶されているモデルパラメータa1,a2,b1の初期化が不要であるときには、後述するステップ31に進む。
【0137】
一方、この判別結果がYESで、モデルパラメータa1,a2,b1の初期化が必要であるときには、ステップ29に進み、モデルパラメータa1,a2,b1を、それぞれの初期値に設定した後、それを表すためにステップ30に進み、パラメータ初期化フラグF_IDRSETを「0」にセットする。
【0138】
このステップ30または28に続くステップ31では、オンボード同定器23の演算を実行し、モデルパラメータa1,a2,b1を同定した後、後述する図15のステップ32に進む。このオンボード同定器23の演算の具体的な内容については、後述する。
【0139】
一方、ステップ27の判別結果がNOで、パラメータ同定を実行すべき運転状態でないときには、以上のステップ28〜31をスキップして、図15のステップ32に進む。ステップ27または31に続くステップ32では、モデルパラメータa1,a2,b1として、同定値または所定値を選択する。この処理の内容は図示しないが、具体的には、前記ステップ24で設定された同定実行フラグF_IDCALが「1」のときには、モデルパラメータa1,a2,b1をステップ31で同定された同定値に設定する。一方、同定実行フラグF_IDCALが「0」のときには、モデルパラメータa1,a2,b1を所定値に設定する。
【0140】
次に、ステップ33に進み、後述するように、状態予測器22の演算を実行し、予測値PREVO2を算出する。その後、ステップ34に進み、後述するように、制御量Uslを算出する。
【0141】
次いで、ステップ35に進み、SLDコントローラ25の安定判別を実行する。この処理の内容は図示しないが、具体的には、予測切換関数σPREの値に基づき、SLDコントローラ25によるスライディングモード制御が安定状態にあるか否かを判別する。
【0142】
次に、ステップ36および37において、後述するように、SLDコントローラ25およびDSMコントローラ24により、スライディングモード制御量DKCMDSLDおよびΔΣ変調制御量DKCMDDSMをそれぞれ算出する。
【0143】
次いで、ステップ38に進み、後述するように、SLDコントローラ25により算出されたスライディングモード制御量DKCMDSLD、またはDSMコントローラ24により算出されたΔΣ変調制御量DKCMDDSMを用いて、適応目標空燃比KCMDSLDを算出する。この後、ステップ39に進み、後述するように、適応補正項FLAFADPを算出した後、本処理を終了する。
【0144】
一方、図14に戻り、前記ステップ26の判別結果がNOで、PRISM処理およびADSM処理の実行条件がいずれも成立していないときには、ステップ40に進み、パラメータ初期化フラグF_IDRSETを「1」にセットする。次に、図15のステップ41に進み、スライディングモード制御量DKCMDSLDを所定値SLDHOLDにセットする。次いで、前述したステップ38,39を実行した後、本処理を終了する。
【0145】
次に、図19を参照しながら、前述したステップ25の各種パラメータを算出する処理について説明する。この処理では、まず、ステップ80において、下式(44)により、排気ガスボリュームAB_SV(空間速度の推定値)を算出する。
AB_SV=(NE/1500)・PBA・X_SVPRA ……(44)
ここで、X_SVPRAは、エンジン排気量に基づいて決定される所定の係数である。
【0146】
次に、ステップ81に進み、前述した空燃比操作系のむだ時間KACT_D(=d')、排気系のむだ時間CAT_DELAY(=d)および予測時間dtを算出する。具体的には、ステップ80で算出された排気ガスボリュームAB_SVに応じて、図20に示すテーブルを検索することにより、むだ時間KACT_D,CAT_DELAYをそれぞれ算出するとともに、これらの和(KACT_D+CAT_DELAY)を予測時間dtとして設定する。すなわち、この制御プログラムでは、位相遅れ時間ddが値0に設定される。
【0147】
このテーブルでは、排気ガスボリュームAB_SVが大きいほど、むだ時間KACT_D,CAT_DELAYがより小さい値に設定されている。これは、排気ガスボリュームAB_SVが大きいほど、排気ガスの流速が大きくなることで、むだ時間KACT_D,CAT_DELAYが短くなることによる。以上のように、むだ時間KACT_D,CAT_DELAYおよび予測時間dtが、排気ガスボリュームに応じて算出されるので、これらを用いて算出した出力偏差VO2の予測値PREVO2に基づき、後述する適応目標空燃比KCMDSLDを算出することにより、制御対象の入出力間の制御タイミングのずれを解消することができる。また、モデルパラメータa1,a2,b1が、上記むだ時間CAT_DELAYを用いて同定されるので、制御対象モデルの動特性を、制御対象の実際の動特性に適合させることができ、それにより、制御対象の入出力間の制御タイミングのずれをさらに解消することができる。
【0148】
次に、ステップ82に進み、同定アルゴリズムの重みパラメータλ1,λ2の値を算出する。具体的には、重みパラメータλ2を値1に設定すると同時に、重みパラメータλ1を、排気ガスボリュームAB_SVに応じて、図21に示すテーブルを検索することにより算出する。
【0149】
このテーブルでは、排気ガスボリュームAB_SVが大きいほど、重みパラメータλ1がより小さい値に設定されており、言い換えれば、排気ガスボリュームAB_SVが小さいほど、重みパラメータλ1がより大きくかつ値1により近い値に設定されている。これは、排気ガスボリュームAB_SVが大きいほど、言い換えれば高負荷運転状態であるほど、モデルパラメータの同定をより迅速に行う必要があるので、重みパラメータλ1をより小さく設定することによって、モデルパラメータの最適値への収束速度を高めるためである。これに加えて、排気ガスボリュームAB_SVが小さいほど、すなわち低負荷運転状態であるほど、空燃比が変動しやすくなり、排気ガス浄化率が不安定になりやすいことで、モデルパラメータの良好な同定精度を確保する必要があるので、重みパラメータλ1を値1に近づける(最小2乗法アルゴリズムに近づける)ことによって、モデルパラメータの同定精度をより高めるためである。
【0150】
次に、ステップ83に進み、モデルパラメータa1,a2の値を制限するための下限値X_IDA2Lと、モデルパラメータb1の値を制限するための下限値X_IDB1Lおよび上限値X_IDB1Hとを、排気ガスボリュームAB_SVに応じて、図22に示すテーブルを検索することにより算出する。
【0151】
このテーブルでは、下限値X_IDA2Lは、排気ガスボリュームAB_SVが大きいほど、より大きい値に設定されている。これは、排気ガスボリュームAB_SVの変化に応じたむだ時間の増減に伴い、制御系が安定状態となるモデルパラメータa1,a2の組み合わせが変化することによる。また、下限値X_IDB1Lおよび上限値X_IDB1Hも、排気ガスボリュームAB_SVが大きいほど、より大きい値に設定されている。これは、排気ガスボリュームAB_SVが大きいほど、触媒前空燃比(第1触媒装置8aよりも上流側の排気ガスの空燃比)がO2センサ15の出力Voutに及ぼす影響の度合、すなわち制御対象のゲインがより大きくなることによる。
【0152】
次いで、ステップ84に進み、移動平均フィルタリング処理のフィルタ次数nを算出した後、本処理を終了する。この処理では、フィルタ次数nを、排気ガスボリュームAB_SVに応じて、図23に示すテーブルを検索することにより、算出する。
【0153】
このテーブルでは、排気ガスボリュームAB_SVが大きいほど、フィルタ次数nがより小さい値に設定されている。これは、以下の理由による。すなわち、前述したように、排気ガスボリュームAB_SVが変化すると、制御対象の周波数特性、特にゲイン特性が変化するので、制御対象モデルのゲイン特性を、制御対象の実際のゲイン特性に一致させるためには、重み付き最小2乗法アルゴリズムの周波数重み特性を、排気ガスボリュームAB_SVに応じて適切に補正する必要がある。したがって、移動平均フィルタリング処理のフィルタ次数nを、上記テーブルのように排気ガスボリュームAB_SVに応じて設定することにより、排気ガスボリュームAB_SVの変化にかかわらず、一定の同定重みを同定アルゴリズムにおいて確保できるとともに、制御対象モデルと制御対象との間で互いのゲイン特性を一致させることができ、これにより、同定精度を向上させることができる。
【0154】
次に、図24を参照しながら、前記ステップ31のオンボード同定器23の演算処理について説明する。同図に示すように、この処理では、まず、ステップ90において、前述した式(22)より、ゲイン係数KP(k)を算出する。次に、ステップ91に進み、前述した式(20)より、出力偏差VO2の同定値VO2HAT(k)を算出する。
【0155】
次いで、ステップ92に進み、前述した式(18)(19)より、同定誤差フィルタ値ide_f(k)を算出する。次に、ステップ93に進み、前述した式(16)より、モデルパラメータのベクトルθ(k)を算出した後、ステップ94に進み、モデルパラメータのベクトルθ(k)の安定化処理を実行する。この処理については後述する。
【0156】
次いで、ステップ95に進み、前述した式(23)より、正方行列P(k)の次回値P(k+1)を算出する。この次回値P(k+1)は、次回のループでの算出において、正方行列P(k)の値として用いられる。
【0157】
以下、図25を参照しながら、上記ステップ94におけるモデルパラメータのベクトルθ(k)の安定化処理について説明する。同図に示すように、まず、ステップ100で、3つのフラグF_A1STAB,F_A2STAB,F_B1STABをいずれも「0」にセットする。
【0158】
次に、ステップ101に進み、後述するように、a1'&a2'のリミット処理を実行する。次いで、ステップ102で、後述するように、b1'のリミット処理を実行した後、本処理を終了する。
【0159】
以下、図26を参照しながら、上記ステップ101のa1'&a2'のリミット処理について説明する。同図に示すように、まず、ステップ110において、前記ステップ93で算出したモデルパラメータの同定値a2'が、前記図19のステップ83で算出された下限値X_IDA2L以上であるか否かを判別する。この判別結果がNOのときには、ステップ111に進み、制御系を安定化させるために、モデルパラメータa2を下限値X_IDA2Lに設定すると同時に、モデルパラメータa2の安定化を実行したことを表すために、フラグF_A2STABを「1」にセットする。一方、この判別結果がYESで、a2'≧X_IDA2Lのときには、ステップ112に進み、モデルパラメータa2を同定値a2'に設定する。
【0160】
これらのステップ111または112に続くステップ113では、前記ステップ93で算出したモデルパラメータの同定値a1'が、所定の下限値X_IDA1L(例えば値−2以上で値0より小さい一定値)以上であるか否かを判別する。この判別結果がNOのときには、ステップ114に進み、制御系を安定化させるために、モデルパラメータa1を下限値X_IDA1Lに設定すると同時に、モデルパラメータa1の安定化を実行したことを表すために、フラグF_A1STABを「1」にセットする。
【0161】
一方、ステップ113の判別結果がYESのときには、ステップ115に進み、同定値a1'が、所定の上限値X_IDA1H(例えば値2)以下であるか否かを判別する。この判別結果がYESで、X_IDA1L≦a1'≦X_IDA1Hのときには、ステップ116に進み、モデルパラメータa1を同定値a1'に設定する。一方、この判別結果がNOで、X_IDA1H<a1'のときには、ステップ117に進み、モデルパラメータa1を上限値X_IDA1Hに設定すると同時に、モデルパラメータa1の安定化を実行したことを表すために、フラグF_A1STABを「1」にセットする。
【0162】
これらのステップ114、116または117に続くステップ118では、以上のように算出したモデルパラメータa1の絶対値と、モデルパラメータa2との和(|a1|+a2)が、所定の判定値X_A2STAB(例えば値0.9)以下であるか否かを判別する。この判別結果がYESのときには、モデルパラメータa1,a2の組み合わせが、制御系の安定性を確保できる範囲(図27にハッチングで示す規制範囲)内にあるとして、そのまま本処理を終了する。
【0163】
一方、ステップ118の判別結果がNOのときには、ステップ119に進み、モデルパラメータa1が、判定値X_A2STABから下限値X_IDA2Lを減算した値(X_A2STAB−X_IDA2L)以下であるか否かを判別する。この判別結果がYESのときには、ステップ120に進み、モデルパラメータa2を、判定値X_A2STABからモデルパラメータa1の絶対値を減算した値(X_A2STAB−|a1|)に設定すると同時に、モデルパラメータa2の安定化を実行したことを表すために、フラグF_A2STABを「1」にセットした後、本処理を終了する。
【0164】
一方、ステップ119の判別結果がNOで、a1>(X_A2STAB−X_IDA2L)のときには、ステップ121に進み、制御系を安定化させるために、モデルパラメータa1を、判定値X_A2STABから下限値X_IDA2Lを減算した値(X_A2STAB−X_IDA2L)に設定し、モデルパラメータa2を下限値X_IDA2Lに設定する。これと同時に、モデルパラメータa1,a2の安定化を実行したことを表すために、フラグF_A1STAB,F_A2STABをいずれも「1」にセットする。その後、本処理を終了する。
【0165】
前述したように、逐次型の同定アルゴリズムでは、制御対象の入出力が定常状態になると、自己励起条件の不足化に起因して、同定されたモデルパラメータの絶対値が増大する、いわゆるドリフト現象が発生しやすくなることで、制御系が不安定になったり、振動状態になったりすることがある。また、その安定限界も、エンジン3の運転状態に応じて変化する。例えば、低負荷運転状態のときには、排気ガスボリュームAB_SVが小さくなることで、供給された混合気に対する排気ガスの応答遅れやむだ時間などが大きくなり、それにより、O2センサ15の出力Voutが振動状態になりやすい。
【0166】
これに対して、以上のa1'&a2'のリミット処理では、モデルパラメータa1,a2の組み合わせが、図27にハッチングで示す規制範囲内の値に収まるように設定されるとともに、この規制範囲を決定する下限値X_IDA2Lが、排気ガスボリュームAB_SVに応じて設定されるので、この規制範囲をエンジン3の運転状態の変化、すなわち制御対象の動特性の変化に伴う安定限界の変化が反映された適切な安定限界の範囲として設定することができ、そのような規制範囲内に収まるように規制されたモデルパラメータa1,a2を用いることにより、上記ドリフト現象の発生を回避でき、制御系の安定性を確保することができる。これに加えて、モデルパラメータa1,a2の組み合わせを、制御系の安定性を確保できる上記規制範囲内の値として設定することにより、モデルパラメータa1およびモデルパラメータa2を単独で規制した場合における、制御系の不安定な状態の発生を回避できる。以上により、制御系の安定性を向上させることができ、排気ガス浄化率を向上させることができる。
【0167】
次に、図28を参照しながら、前記ステップ102のb1'のリミット処理について説明する。同図に示すように、この処理では、ステップ130において、前記ステップ93で算出されたモデルパラメータの同定値b1'が、前記図19のステップ83で算出された下限値X_IDB1L以上であるか否かを判別する。
【0168】
この判別結果がYESで、b1'≧X_IDB1Lのときには、ステップ1311に進み、モデルパラメータの同定値b1'が、前記図19のステップ83で算出された上限値X_IDB1H以下であるか否かを判別する。この判別結果がYESで、X_IDB1L≦b1'≦X_IDB1Hのときには、ステップ132に進み、モデルパラメータb1を同定値b1'に設定した後、本処理を終了する。
【0169】
一方、ステップ131の判別結果がNOで、b1'>X_IDB1Hのときには、ステップ133に進み、モデルパラメータb1を上限値X_IDB1Hに設定すると同時に、それを表すためにフラグF_B1LMTを「1」にセットした後、本処理を終了する。
【0170】
一方、ステップ130の判別結果がNOで、b1'<X_IDB1Lのときには、ステップ134に進み、モデルパラメータb1を下限値X_IDB1Lに設定すると同時に、それを表すためにフラグF_B1LMTを「1」にセットした後、本処理を終了する。
【0171】
以上のb1'のリミット処理を実行することにより、モデルパラメータb1を、X_IDB1L以上かつX_IDB1H以下の規制範囲内の値に制限することができ、それにより、逐次型の同定アルゴリズムによるドリフト現象の発生を回避できる。さらに、前述したように、これらの上下限値X_IDB1H,X_IDB1Lが、排気ガスボリュームAB_SVに応じて設定されるので、規制範囲をエンジン3の運転状態の変化、すなわち制御対象の動特性の変化に伴う安定限界の変化が反映された適切な安定限界の範囲として、設定することができ、そのような規制範囲内に規制されたモデルパラメータb1を用いることにより、制御系の安定性を確保することができる。以上により、制御系の安定性を向上させることができ、排気ガス浄化率を向上させることができる。
【0172】
次に、図29を参照しながら、前述したステップ33の状態予測器22の演算処理について説明する。この処理では、まず、ステップ140において、前述した式(7)の行列要素α1,α2,βi,βjを算出する。次いで、ステップ141に進み、ステップ140で算出した行列要素α1,α2,βi,βjを式(7)に適用することにより、出力偏差VO2の予測値PREVO2を算出した後、本処理を終了する。
【0173】
次に、図30を参照しながら、前述したステップ34の制御量Uslを算出する処理について説明する。この処理では、まず、ステップ150において、前述した図12の式(38)により、予測切換関数σPREを算出する。
【0174】
次に、ステップ151に進み、予測切換関数σPREの積算値SUMSIGMAを算出する。この処理では、図31に示すように、まず、ステップ160において、下記の3つの条件(L)〜(N)のうちの少なくとも1つが成立しているか否かを判別する。
(L)適応制御フラグF_PRISMONが「1」であること。
(M)後述する積算値保持フラグF_SS_HOLDが「0」であること。
(N)後述するADSM実行フラグF_KOPRが「0」であること。
【0175】
このステップ160の判別結果がYESのとき、すなわち積算値SUMSIGMAの算出条件が成立しているときには、ステップ161に進み、積算値SUMSIGMAの今回値SUMSIGMA(k)を、前回値SUMSIGMA(k−1)に、制御周期ΔTと予測切換関数σPREとの積を加算した値[SUMSIGMA(k−1)+ΔT・σPRE]に設定する。
【0176】
次いで、ステップ162に進み、ステップ161で算出した今回値SUMSIGMA(k)が所定の下限値SUMSLより大きいか否かを判別する。この判別結果がYESのときには、ステップ162に進み、今回値SUMSIGMA(k)が所定の上限値SUMSHより小さいか否かを判別する。この判別結果がYESで、SUMSL<SUMSIGMA(k)<SUMSHのときには、そのまま本処理を終了する。
【0177】
一方、ステップ163の判別結果がNOで、SUMSIGMA(k)≧SUMSHのときには、ステップ164に進み、今回値SUMSIGMA(k)を上限値SUMSHに設定した後、本処理を終了する。一方、ステップ162の判別結果がNOで、SUMSIGMA(k)≦SUMSLのときには、ステップ165に進み、今回値SUMSIGMA(k)を下限値SUMSLに設定した後、本処理を終了する。
【0178】
一方、ステップ160の判別結果がNOのとき、すなわち3つの条件(L)〜(N)がいずれも不成立で、積算値SUMSIGMAの算出条件が不成立であるときには、ステップ166に進み、今回値SUMSIGMA(k)を前回値SUMSIGMA(k−1)に設定する。すなわち、積算値SUMSIGMAをホールドする。この後、本処理を終了する。
【0179】
図30に戻り、ステップ151に続くステップ152〜154において、前述した図12の式(40)〜(42)により、等価制御入力Ueq、到達則入力Urchおよび適応則入力Uadpをそれぞれ算出する。
【0180】
次に、ステップ155に進み、これらの等価制御入力Ueq、到達則入力Urchおよび適応則入力Uadpの和を、制御量Uslとして設定した後、本処理を終了する。
【0181】
次に、図32,33を参照しながら、前述した図15のステップ36のスライディングモード制御量DKCMDSLDの算出処理について説明する。この処理では、まず、ステップ170において、制御量Uslのリミット値算出処理を実行する。この処理では、その詳細は説明は省略するが、前述したステップ35のコントローラの安定判別処理の判別結果と、後述する制御量Uslの適応上下限値Usl_ah,Usl_alとに基づいて、非アイドル運転用の上下限値Usl_ahf,Usl_alfと、アイドル運転用の上下限値Usl_ahfi,Usl_alfiとをそれぞれ算出する。
【0182】
次いで、ステップ171に進み、アイドル運転フラグF_IDLEが「0」であるか否かを判別する。この判別結果がYESで、アイドル運転中でないときには、ステップ171に進み、前述した図30の処理で算出された制御量Uslが、非アイドル運転用の下限値Usl_alf以下であるか否かを判別する。
【0183】
この判別結果がNOで、Usl>Usl_alfのときには、ステップ173に進み、制御量Uslが非アイドル運転用の上限値Usl_ahf以上であるか否かを判別する。この判別結果がNOで、Usl_alf<Usl<Usl_ahfのときには、ステップ174に進み、スライディングモード制御量DKCMDSLDを制御量Uslに設定すると同時に、積算値保持フラグF_SS_HOLDを「0」にセットする。
【0184】
次いで、ステップ175に進み、適応下限値の今回値Usl_al(k)を、前回値Usl_al(k−1)に所定の減少側値X_AL_DECを加算した値[Usl_al(k−1)+X_AL_DEC]に設定すると同時に、適応上限値の今回値Usl_ah(k)を、前回値Usl_ah(k−1)から所定の減少側値X_AL_DECを減算した値[Usl_al(k−1)−X_AL_DEC]に設定した後、本処理を終了する。
【0185】
一方、ステップ173の判別結果がYESで、Usl≧Usl_ahfのときには、ステップ176に進み、スライディングモード制御量DKCMDSLDを非アイドル運転用の適応上限値Usl_ahfに設定すると同時に、積算値保持フラグF_SS_HOLDを「1」にセットする。
【0186】
次いで、ステップ177に進み、始動後タイマのタイマ値TMACRが所定時間X_TMAWASTより小さいこと、またはF/C後判定フラグF_AFCが「1」であることが成立しているか否かを判別する。この始動後タイマは、エンジン3の始動後の経過時間を計時するアップカウント式のタイマである。
【0187】
この判別結果がYESのとき、すなわち、エンジン始動後、所定時間X_TMAWASTが経過していないか、またはフューエルカット運転の終了後、所定時間X_TM_AFCが経過していないときには、そのまま本処理を終了する。
【0188】
一方、ステップ177の判別結果がNOのとき、すなわち、エンジン始動後、所定時間X_TMAWASTが経過し、かつフューエルカット運転の終了後、所定時間X_TM_AFCが経過したときには、ステップ178に進み、適応下限値の今回値Usl_al(k)を、前回値Usl_al(k−1)に減少側値X_AL_DECを加算した値[Usl_al(k−1)+X_AL_DEC]に設定すると同時に、適応上限値の今回値Usl_ah(k)を、前回値Usl_ah(k−1)に所定の増大側値X_AL_INCを加算した値[Usl_ah(k−1)+X_AL_INC]に設定した後、本処理を終了する。
【0189】
一方、ステップ172の判別結果がYESで、Usl≦Usl_alfのときには、ステップ179に進み、スライディングモード制御量DKCMDSLDを非アイドル運転用の適応下限値Usl_alfに設定すると同時に、積算値保持フラグF_SS_HOLDを「1」にセットする。
【0190】
次いで、ステップ180に進み、第2発進フラグF_VSTが「1」であるか否かを判別する。この判別結果がYESで、車両の発進後、第2所定時間TVSTが経過しておらず、第2発進モード中であるときには、そのまま本処理を終了する。
【0191】
一方、ステップ180の判別結果がNOで、車両の発進後、第2所定時間TVSTが経過し、第2発進モードが終了したときには、ステップ181に進み、適応下限値の今回値Usl_al(k)を、前回値Usl_al(k−1)から増大側値X_AL_INCを減算した値[Usl_al(k−1)−X_AL_INC]に設定すると同時に、適応上限値の今回値Usl_ah(k)を、前回値Usl_ah(k−1)から減少側値X_AL_DECを減算した値[Usl_ah(k−1)−X_AL_DEC]に設定する。その後、本処理を終了する。
【0192】
一方、ステップ171の判別結果がNOで、アイドル運転中であるときには、図33のステップ182に進み、制御量Uslが、アイドル運転用の下限値Usl_alfi以下であるか否かを判別する。この判別結果がNOで、Usl>Usl_alfiのときには、ステップ183に進み、制御量Uslがアイドル運転用の上限値Usl_ahfi以上であるか否かを判別する。
【0193】
この判別結果がNOで、Usl_alfi<Usl<Usl_ahfiのときには、ステップ184に進み、スライディングモード制御量DKCMDSLDを制御量Uslに設定すると同時に、積算値保持フラグF_SS_HOLDを「0」にセットした後、本処理を終了する。
【0194】
一方、ステップ183の判別結果がYESで、Usl≧Usl_ahfiのときには、ステップ185に進み、スライディングモード制御量DKCMDSLDをアイドル運転用の上限値Usl_ahfiに設定すると同時に、積算値保持フラグF_SS_HOLDを「1」にセットした後、本処理を終了する。
【0195】
一方、ステップ182の判別結果がYESで、Usl≦Usl_alfiのときには、ステップ186に進み、スライディングモード制御量DKCMDSLDをアイドル運転用の下限値Usl_alfiに設定すると同時に、積算値保持フラグF_SS_HOLDを「1」にセットした後、本処理を終了する。
【0196】
次に、図34を参照しながら、前述した図15のステップ37のΔΣ変調制御量DKCMDDSMを算出する処理について説明する。同図に示すように、この処理では、まず、ステップ190において、RAMに記憶されている、前回のループで算出されたDSM信号値の今回値DSMSGNS(k)[=u''(k)]を、前回値DSMSGNS(k−1)[=u''(k−1)]として設定する。
【0197】
次に、ステップ191に進み、RAMに記憶されている、前回のループで算出された偏差積分値の今回値DSMSIGMA(k)[=σd(k)]を、前回値DSMSIGMA(k−1)[=σd(k−1)]として設定する。
【0198】
次いで、ステップ192に進み、出力偏差の予測値PREVO2(k)が値0以上であるか否かを判別する。この判別結果がYESのときには、エンジン3が混合気の空燃比をリーン側に変更すべき運転状態にあるとして、ステップ193に進み、参照信号値用のゲインKRDSM(=Gd)を、リーン化用の値KRDSMLに設定した後、後述するステップ195に進む。
【0199】
一方、ステップ192の判別結果がNOのときには、エンジン3が混合気の空燃比をリッチ側に変更すべき運転状態にあるとして、ステップ194に進み、参照信号値用のゲインKRDSMを、リーン化用の値KRDSMLよりも大きいリッチ化用の値KRDSMRに設定した後、ステップ195に進む。
【0200】
このように、リーン化用の値KRDSMLおよびリッチ化用の値KRDSMRが互いに異なる値に設定されている理由は、以下による。すなわち、混合気の空燃比をリーン側に変更する際には、第1触媒装置8aのNOx浄化率を確保すべく、リーンバイアスによるNOx排出量の抑制効果を得るために、リーン化用の値KRDSMLをリッチ化用の値KRDSMRよりも小さい値に設定することで、O2センサ15の出力Voutの目標値Vopへの収束速度がリッチ側への変更時よりも遅くなるように、空燃比を制御する。一方、混合気の空燃比をリッチ側に変更する際には、第1および第2触媒装置8a,8bのNOx浄化率を十分に回復させるため、リッチ化用の値KRDSMRをリーン化用の値KRDSMLよりも大きい値に設定することで、O2センサ15の出力Voutの目標値Vopへの収束速度がリーン側への変更時よりも速くなるように、空燃比を制御する。以上により、混合気の空燃比をリッチ側およびリーン側に変更する際、良好な排気ガス浄化率を確保することができる。
【0201】
ステップ193または194に続くステップ195では、値−1、参照信号値用のゲインKRDSMおよび予測値の今回値PREVO2(k)を互いに乗算した値から、上記ステップ190で算出したDSM信号値の前回値DSMSGNS(k−1)を減算した値[−1・KRDSM・PREVO2(k)−DSMSGNS(k−1)]を、偏差信号値DSMDELTA[=δ(k)]として設定する。この処理は、前述した式(27),(28)に相当する。
【0202】
次いで、ステップ196に進み、偏差積分値の今回値DSMSIGMA(k)を、ステップ191で算出した前回値DSMSIGMA(k−1)と、ステップ195で算出した偏差信号値DSMDELTAとの和[DSMSIGMA(k−1)+DSMDELTA]に設定する。この処理は、前述した式(29)に相当する。
【0203】
次に、ステップ197〜199において、ステップ196で算出した偏差積分値の今回値DSMSIGMA(k)が値0以上のときには、DSM信号値の今回値DSMSGNS(k)を値1に設定し、偏差積分値の今回値DSMSIGMA(k)が値0よりも小さいときには、DSM信号値の今回値DSMSGNS(k)を値−1に設定する。以上のステップ197〜199の処理は、前述した式(30)に相当する。
【0204】
次いで、ステップ200において、排気ガスボリュームAB_SVに応じて、図35に示すテーブルを検索することにより、DSM信号値用のゲインKDSM(=Fd)を算出する。同図に示すように、このゲインKDSMは、排気ガスボリュームAB_SVが小さいほど、より大きな値に設定されている。これは、排気ガスボリュームAB_SVが小さいほど、すなわちエンジン3の運転負荷が小さい状態であるほど、O2センサ15の出力Voutの応答性が低下するので、それを補償するためである。このようにゲインKSDMを設定することにより、ΔΣ変調制御量DKCMDDSMを、例えばオーバーゲイン状態などを回避しながら、エンジン3の運転状態に応じて適切に算出することができ、それにより、排気ガス浄化率を向上させることができる。
【0205】
なお、このゲインKDSMの算出に用いるテーブルは、ゲインKDSMが排気ガスボリュームAB_SVに応じて設定されている上記テーブルに限らず、エンジン3の運転負荷状態を表すパラメータ(例えば基本燃料噴射時間Tim)に応じてゲインKDSMが予め設定されているものであればよい。また、触媒装置8a,8bの劣化判別器が設けられている場合には、この劣化判別器で判別された触媒装置8a,8bの劣化度合が大きいほど、ゲインDSMをより小さい値に補正するようにしてもよい。
【0206】
次に、ステップ201に進み、ΔΣ変調制御量DKCMDDSMを、DSM信号値用のゲインKDSMと、DSM信号値の今回値DSMSGNS(k)とを互いに乗算した値[KDSM・DSMSGNS(k)]に設定した後、本処理を終了する。この処理が、前述した式(31)に相当する。
【0207】
次に、図36を参照しながら、前述した図15のステップ38の適応目標空燃比KCMDSLDを算出する処理について説明する。同図に示すように、この処理では、まず、ステップ210において、アイドル運転フラグF_IDLEが「1」であること、およびアイドル時ADSM実行フラグF_SWOPRIが「1」であることがいずれも成立しているか否かを判別する。このアイドル時ADSM実行フラグF_SWOPRIは、エンジン3がアイドル運転中で、かつADSM処理を実行すべき運転状態のときに「1」に、それ以外のときに「0」にセットされる。
【0208】
この判別結果がYESのとき、すなわちエンジン3がアイドル運転中でADSM処理により適応目標空燃比KCMDSLDを算出すべき運転状態のときには、ステップ211に進み、適応目標空燃比KCMDSLDを、基準値FLAFBASEにΔΣ変調制御量DKCMDDSMを加算した値[FLAFBASE+DKCMDDSM]に設定する。この処理が、前述した式(32)に相当する。
【0209】
次いで、ステップ212に進み、ADSM処理を実行したことを表すために、ADSM実行済みフラグF_KOPRを「1」に設定した後、本処理を終了する。
【0210】
一方、ステップ210の判別結果がNOのときには、ステップ213に進み、触媒/O2センサフラグF_FCATDSMが「1」であるか否かを判別する。この触媒/O2センサフラグF_FCATDSMは、以下の4つの条件(O)〜(R)のうちの少なくとも1つが成立しているときに「1」に、それ以外は「0」にセットされる。
(O)第1触媒装置8aの触媒容量が所定値以上であること。
(P)第1触媒装置8aの貴金属含有量が所定値以上であること。
(Q)LAFセンサ14がエンジン3の排気管7に設けられていないこと。
(R)O2センサ15が第2触媒装置8bよりも下流に設けられていること。
【0211】
この判別結果がYESのときには、ステップ214に進み、第1発進フラグF_VOTVST、および発進後ADSM実行フラグF_SWOPRVSTがいずれも「1」であるか否かを判別する。この発進後ADSM実行フラグF_SWOPRVSTは、車両の発進後で、かつエンジン3がADSM処理を実行すべき運転状態のときに「1」に、それ以外のときに「0」にセットされる。
【0212】
この判別結果がYESのとき、すなわち車両の発進後、第1所定時間TVOTVSTが経過し、かつADSM処理を実行すべき運転状態のときには、前述したように、ステップ211,212を実行した後、本処理を終了する。
【0213】
一方、ステップ214の判別結果がNOのときには、ステップ215に進み、排気ガスボリュームAB_SVが所定値OPRSVH以下であること、および小排気時ADSM実行フラグF_SWOPRSVが「1」であることがいずれも成立しているか否かを判別する。小排気時ADSM実行フラグF_SWOPRSVは、エンジン3の排気ガスボリュームAB_SVが小さい状態で、かつエンジン3がADSM処理を実行すべき運転状態のときに「1」に、それ以外のときに「0」にセットされる。
【0214】
この判別結果がYESのとき、すなわち排気ガスボリュームAB_SVが小さく、かつエンジン3がADSM処理を実行すべき運転状態のときには、前述したように、ステップ211,212を実行した後、本処理を終了する。
【0215】
一方、ステップ215の判別結果がNOのときには、エンジン3がPRISM処理を実行すべき運転状態であるとして、ステップ216に進み、適応目標空燃比KCMDSLDを、基準値FLAFBASEに適応補正項FLAFADPおよびスライディングモード制御量DKCMDSLDを加算した値[FLAFBASE+FLAFADP+DKCMDSLD]に設定する。次いで、ステップ217に進み、PRISM処理を実行したことを表すために、ADSM実行済みフラグF_KOPRを「0」にセットした後、本処理を終了する。
【0216】
一方、前記ステップ213の判別結果がNOのとき、すなわち前述した4つの条件(O)〜(R)がいずれも成立していないときには、ステップ214,215をスキップし、前述したステップ216,217を実行した後、本処理を終了する。以上のように、この適応目標空燃比KCMDSLDの算出処理では、適応目標空燃比KCMDSLDが、エンジン3の運転状態に応じて、ADSM処理またはPRISM処理に切り換えて算出される。
【0217】
次に、図37を参照しながら、図15のステップ39の適応補正項FLAFADPの算出処理について説明する。同図に示すように、この処理では、まず、ステップ220において、出力偏差VO2が所定の範囲(ADL<VO2<ADH)内の値であるか否かを判別する。この判別結果がYESのとき、すなわち出力偏差VO2が小さく、O2センサ15の出力Voutが目標値Vopの近傍にあるときには、ステップ221に進み、適応則入力Uadpが所定の下限値NRLより小さいか否かを判別する。
【0218】
この判別結果がNOで、Uadp≧NRLのときには、ステップ222に進み、適応則入力Uadpが所定の上限値NRHより大きいか否かを判別する。この判別結果がNOで、NRL≦Uadp≦NRHのときには、ステップ223に進み、適応補正項の今回値FLAFADP(k)を前回値FLAFADP(k−1)に設定する。すなわち、適応補正項FLAFADPの値をホールドする。この後、本処理を終了する。
【0219】
一方、ステップ222の判別結果がYESで、Uadp>NRHのときには、ステップ224に進み、適応補正項の今回値FLAFADP(k)を、前回値FLAFADP(k−1)に所定の更新値X_FLAFDLTを加算した値[FLAFADP(k−1)+X_FLAFDLT]に設定した後、本処理を終了する。
【0220】
一方、ステップ221の判別結果がYESで、Uadp<NRLのときには、ステップ225に進み、適応補正項の今回値FLAFADP(k)を、前回値FLAFADP(k−1)から所定の更新値X_FLAFDLTを減算した値[FLAFADP(k−1)−X_FLAFDLT]に設定した後、本処理を終了する。
【0221】
以上のように、第1実施形態の制御装置1によれば、目標空燃比KCMDを制御入力とし、O2センサ15の出力Voutを出力とする、位相遅れやむだ時間などが比較的大きい動特性を有する制御対象において、制御対象の入出力間での制御タイミングのずれを適切に解消することができ、それにより、制御の安定性および制御性を向上させることができ、排気ガス浄化率を向上させることができる。
【0222】
以下、本発明の第2〜第10実施形態に係る制御装置について説明する。なお、以下の各実施形態の説明では、上述した第1実施形態と同じまたは同等の構成要素については、同一の参照番号を付し、その説明は適宜、省略するものとする。
【0223】
まず、図38を参照しながら、第2実施形態の制御装置について説明する。同図に示すように、この第2実施形態の制御装置1は、第1実施形態の制御装置1と比べて、オンボード同定器23のみが異なっている。具体的には、第1実施形態のオンボード同定器23では、KACT、Voutおよびφop(KCMD)に基づいて、モデルパラメータa1,a2,b1が算出されるのに対して、本実施形態のオンボード同定器23では、Voutおよびφopに基づいて、モデルパラメータa1,a2,b1が算出される。
【0224】
すなわち、このオンボード同定器23では、第1実施形態の図6の式(16)〜(23)に示す同定アルゴリズムに代えて、前述した図5の式(8)〜(15)に示す同定アルゴリズムにより、モデルパラメータの同定値a1',a2',b1'が算出されるとともに、これらに前述した図26,28のリミット処理を施すことにより、モデルパラメータa1,a2,b1が算出される。このオンボード同定器23の演算処理の具体的なプログラムは、図示しないが、第1実施形態ものとほぼ同様に構成される。以上のような本実施形態の制御装置1によれば、第1実施形態の制御装置1と同様の効果を得ることができる。
【0225】
次に、図39を参照しながら、第3実施形態の制御装置について説明する。同図に示すように、この第3実施形態の制御装置1は、第1実施形態の制御装置1と比べて、状態予測器22のみが異なっている。具体的には、第1実施形態の状態予測器22では、a1、a2、b1、KACT、Voutおよびφop(KCMD)に基づいて、予測値PREVO2が算出されるのに対して、本実施形態のオンボード同定器23では、a1、a2、b1、Voutおよびφopに基づいて、予測値PREVO2が算出される。
【0226】
すなわち、この状態予測器22では、第1実施形態の図4の式(7)に示す予測アルゴリズムに代えて、同図の式(6)に示す予測アルゴリズムにより、出力偏差VO2の予測値PREVO2が算出される。この状態予測器22の演算処理の具体的なプログラムは、図示しないが、第1実施形態のものとほぼ同様に構成される。この制御装置1によれば、第1実施形態の制御装置1と同様の効果を得ることができる。
【0227】
次に、図40を参照しながら、第4実施形態の制御装置について説明する。同図に示すように、この第4実施形態の制御装置1は、第1実施形態の制御装置1と比べると、ADSMコントローラ20、PRISMコントローラ21およびオンボード同定器23に代えて、スケジュール型DSMコントローラ20A、スケジュール型状態予測スライディングモードコントローラ21Aおよびパラメータスケジューラ28を用いることで、モデルパラメータa1,a2,b1を算出する点のみが異なっている。
【0228】
このパラメータスケジューラ28では、まず、前述した式(44)により、エンジン回転数NEおよび吸気管内絶対圧PBAに基づいて、排気ガスボリュームAB_SVが算出される。次いで、図41に示すテーブルにより、排気ガスボリュームAB_SVに応じて、モデルパラメータa1,a2,b1が算出される。
【0229】
このテーブルでは、モデルパラメータa1は、排気ガスボリュームAB_SVが大きいほど、より小さい値に設定されており、これとは逆に、モデルパラメータa2,b1は、排気ガスボリュームAB_SVが大きいほど、より大きい値に設定されている。これは、排気ガスボリュームAB_SVの増大に伴い、制御対象の出力すなわちO2センサ15の出力Voutが安定化する一方、排気ガスボリュームAB_SVの減少に伴い、O2センサ15の出力Voutが振動的になることによる。
【0230】
スケジュール型DSMコントローラ20Aは、以上のように算出されたモデルパラメータa1,a2,b1を用い、前述した第1実施形態と同様のDSMコントローラ24により目標空燃比KCMDを算出する。また、スケジュール型状態予測スライディングモードコントローラ21Aも、以上のように算出されたモデルパラメータa1,a2,b1を用い、前述した第1実施形態と同様のSLDコントローラ25により目標空燃比KCMDを算出する。
【0231】
この制御装置1によれば、第1実施形態の制御装置1と同様の効果を得ることができる。これに加えて、パラメータスケジューラ28を用いることにより、オンボード同定器23を用いる場合と比べて、モデルパラメータa1,a2,b1を、より迅速に算出することができる。これにより、制御の応答性を向上させることができ、良好な排気ガス浄化率をより迅速に確保することができる。
【0232】
次に、図42を参照しながら、第5実施形態の制御装置について説明する。この第5実施形態の制御装置1は、第1実施形態の制御装置1のDSMコントローラ24に代えて、SDMコントローラ29を用いる点のみが異なっている。このSDMコントローラ29は、ΣΔ変調アルゴリズムを適用した制御アルゴリズムにより、予測値PREVO2(k)に基づいて、制御入力φop(k)を算出するものである。
【0233】
すなわち、同図に示すように、このSDMコントローラ29では、反転増幅器29aにより、参照信号r(k)が、値−1、参照信号用のゲインGdおよび予測値PREVO2(k)を互いに乗算した信号として生成される。次に、積分器29bにより、参照信号積分値σdr(k)が、遅延素子29cで遅延された参照信号積分値σdr(k−1)と参照信号r(k)との和の信号として生成される。一方、積分器29dにより、SDM信号積分値σdu(k)が、遅延素子29eで遅延されたSDM信号積分値σdu(k−1)と、遅延素子29jで遅延されたSDM信号u''(k−1)との和の信号として生成される。そして、差分器29fにより、参照信号積分値σdr(k)とSDM信号積分値σdu(k)との偏差信号δ''(k)が生成される。
【0234】
次いで、量子化器29g(符号関数)により、SDM信号u''(k)が、この偏差信号δ''(k)を符号化した値として生成される。そして、増幅器29hにより、増幅SDM信号u(k)がSDM信号u''(k)を所定のゲインFdで増幅した値として生成され、次に、加算器29iにより、この増幅SDM信号u(k)を所定の基準値FLAFBASEに加算した値として、制御入力φop(k)が生成される。
【0235】
以上のSDMコントローラ29の制御アルゴリズムは、以下の式(45)〜(51)で表される。
r(k)=−1・Gd・PREVO2(k) ……(45)
σdr(k)=σdr(k−1)+r(k) ……(46)
σdu(k)=σdu(k−1)+u''(k−1) ……(47)
δ''(k)=σdr(k)−σdu(k) ……(48)
u''(k)=sgn(δ''(k)) ……(49)
u(k)=Fd・u''(k) ……(50)
φop(k)=FLAFBASE+u(k) ……(51)
ここで、Gd,Fdはゲインを表す。また、符号関数sgn(δ''(k))の値は、δ''(k)≧0のときにはsgn(δ''(k))=1となり、δ''(k)<0のときにはsgn(δ''(k))=−1となる(なお、δ''(k)=0のときに、sgn(δ''(k))=0と設定してもよい)。
【0236】
以上のSDMコントローラ29の制御アルゴリズムにおけるΣΔ変調アルゴリズムの特性は、ΔΣ変調アルゴリズムと同様に、SDM信号u(k)を、これを制御対象に入力した際、参照信号r(k)が制御対象の出力に再現されるような値として、生成(算出)できるという点にある。すなわち、SDMコントローラ29は、前述したDSMコントローラ24と同様の制御入力φop(k)を生成できるという特性を備えている。したがって、このSDMコントローラ29を用いる本実施形態の制御装置1によれば、第1実施形態の制御装置1と同様の効果を得ることができる。なお、SDMコントローラ29の具体的なプログラムは図示しないが、DSMコントローラ24とほぼ同様に構成される。
【0237】
次に、図43を参照しながら、第6実施形態の制御装置について説明する。この第6実施形態の制御装置1は、第1実施形態の制御装置1のDSMコントローラ24に代えて、DMコントローラ30を用いる点のみが異なっている。このDMコントローラ30は、Δ変調アルゴリズムを適用した制御アルゴリズムにより、予測値PREVO2(k)に基づいて、制御入力φop(k)を算出するものである。
【0238】
すなわち、同図に示すように、このDMコントローラ30では、反転増幅器30aにより、参照信号r(k)が、値−1、参照信号用のゲインGdおよび予測値PREVO2(k)を互いに乗算した信号として生成される。一方、積分器30bにより、DM信号積分値σdu(k)が、遅延素子30cで遅延されたDM信号積分値σdu(k−1)と、遅延素子30hで遅延されたDM信号u''(k−1)との和の信号として生成される。そして、差分器30dにより、参照信号r(k)とDM信号積分値σdu(k)との偏差信号δ''(k)が生成される。
【0239】
次いで、量子化器30e(符号関数)により、DM信号u''(k)が、この偏差信号δ''(k)を符号化した値として生成される。そして、増幅器30fにより、増幅DM信号u(k)がDM信号u''(k)を所定のゲインFdで増幅した値として生成され、次に、加算器30gにより、この増幅DM信号u(k)を所定の基準値FLAFBASEに加算した値として、制御入力φop(k)が生成される。
【0240】
以上のDMコントローラ30の制御アルゴリズムは、以下の式(52)〜(57)で表される。
r(k)=−1・Gd・PREVO2(k) ……(52)
σdu(k)=σdu(k−1)+u''(k−1) ……(53)
δ''(k)=r(k)−σdu(k) ……(54)
u''(k)=sgn(δ''(k)) ……(55)
u(k)=Fd・u''(k) ……(56)
φop(k)=FLAFBASE+u(k) ……(57)
ここで、Gd,Fdはゲインを表す。また、符号関数sgn(δ''(k))の値は、δ''(k)≧0のときにはsgn(δ''(k))=1となり、δ''(k)<0のときにはsgn(δ''(k))=−1となる(なお、δ''(k)=0のときに、sgn(δ''(k))=0と設定してもよい)。
【0241】
以上のDMコントローラ30の制御アルゴリズムすなわちΔ変調アルゴリズムの特性は、ΔΣ変調アルゴリズムおよびΣΔ変調アルゴリズムと同様に、DM信号u(k)を制御対象に入力した際、参照信号r(k)が制御対象の出力に再現されるような値として、DM信号u(k)を生成(算出)できるという点にある。すなわち、DMコントローラ30は、前述したDSMコントローラ24およびSDMコントローラ29と同様の制御入力φop(k)を生成できるという特性を備えている。したがって、このDMコントローラ30を用いる本実施形態の制御装置1によれば、第1実施形態の制御装置1と同様の効果を得ることができる。なお、DMコントローラ30の具体的なプログラムは図示しないが、DSMコントローラ24とほぼ同様に構成される。
【0242】
次に、図44および図45を参照しながら、第7実施形態の制御装置について説明する。図44に示すように、この第7実施形態の制御装置1は、第1実施形態の制御装置1と比べて、LAFセンサ14がエンジン3に設けられていないとともに、O2センサ15が第2触媒装置8bよりも下流側に設けられている点のみが異なっている。
【0243】
また、LAFセンサ14を備えていないため、この制御装置1では、図45に示すように、オンボード同定器23により、O2センサ15の出力Voutおよび制御入力φop(目標空燃比KCMD)に基づいて、モデルパラメータa1,a2,b1が算出される。すなわち、このオンボード同定器23では、前述した図5の式(8)〜(15)に示す同定アルゴリズムにより、モデルパラメータの同定値a1',a2',b1'が算出されるとともに、これらに前述したリミット処理を施すことにより、モデルパラメータa1,a2,b1が算出される。
【0244】
さらに、状態予測器22により、モデルパラメータa1,a2,b1、O2センサ15の出力Voutおよび制御入力φopに基づいて、出力偏差VO2の予測値PREVO2が算出される。すなわち、この状態予測器22では、図4の式(6)に示す予測アルゴリズムにより、出力偏差VO2の予測値PREVO2が算出される。なお、これらの状態予測器22およびオンボード同定器23の演算処理の具体的なプログラムは、図示しないが、第1実施形態のものとほぼ同様に構成され、それら以外のプログラムも、第1実施形態のものと同様に構成される。
【0245】
以上のような本実施形態の制御装置1によれば、第1実施形態の制御装置1と同様の効果を得ることができる。特に、前述したように、図34のステップ192〜194において、参照信号値用のゲインKRDSMを、排気ガスをリーン側に制御する場合と、リッチ側に制御する場合とで互いに異なる値に設定し、目標空燃比KCMDの目標値Vopへの収束速度を変更することにより、本実施形態のようなO2センサ15のみで空燃比を制御する場合においても、混合気の空燃比をリッチ側およびリーン側に変更する際、良好な排気ガス浄化率を確実に得ることができる。これに加えて、LAFセンサ14を用いることなく、良好な排気ガス浄化率を確保できるので、その分、製造コストを削減することができる。
【0246】
次に、図46を参照しながら、第8実施形態の制御装置について説明する。同図に示すように、この第8実施形態の制御装置1は、上記第7実施形態の制御装置1において、ADSMコントローラ20、PRISMコントローラ21およびオンボード同定器23を、前記第4実施形態のスケジュール型DSMコントローラ20A、スケジュール型状態予測スライディングモードコントローラ21Aおよびパラメータスケジューラ28に置き換えたものであり、これらのコントローラ20A,21Aおよびパラメータスケジューラ28は、第4実施形態のものと同様に構成されている。この制御装置1によれば、上記第7実施形態の制御装置1と同様の効果を得ることができる。これに加えて、パラメータスケジューラ28を用いることにより、オンボード同定器23を用いる場合と比べて、モデルパラメータa1,a2,b1を、より迅速に算出することができる。これにより、制御の応答性を向上させることができ、良好な排気ガス浄化率をより迅速に確保することができる。
【0247】
次に、図47〜図49を参照しながら、第9実施形態の制御装置について説明する。図47に示すように、この第2実施形態の制御装置1は、第1実施形態の制御装置1に、2つのデシメーションフィルタ40,40(サンプリング手段)と、オーバーサンプラ41とを付加したものであり、それに伴い、以下に述べるように、DSMコントローラ24による目標空燃比KCMDの算出周期ΔTm(空燃比算出周期)と、状態予測器22およびオンボード同定器23による、予測値PREVO2およびモデルパラメータa1,a2,b1の算出周期ΔTk(偏差算出周期、予測値算出周期)とが、互いに異なる値に設定されている(図49参照)。
【0248】
これらのデシメーションフィルタ40,40の一方は、DSMコントローラ24により算出された目標空燃比KCMDにデシメーション処理を施すとともに、そのデシメーション値FD(KCMD)と基準値FLAFBASEとにより、空燃比偏差のデシメーション値DKCMD’(k)(図49(h)に黒丸で示す値)をサンプリングする。具体的には、まず、目標空燃比KCMDを、所定のサンプリング周期ΔTsm(10msec)でサンプリングする。次に、これらのサンプリング値(図49(g)に黒丸および白抜きの丸で示す値)にローパスフィルタリング処理を施した後、ΔTsmの4倍のサンプリング周期ΔTsk(40msec)でダウンサンプリングすることにより、目標空燃比のデシメーション値FD(KCMD)(図49(g)に黒丸で示す値)をサンプリングする。次いで、このデシメーション値FD(KCMD)と基準値FLAFBASEとの偏差を、空燃比偏差のデシメーション値DKCMD’(k)としてサンプリングする。
【0249】
また、もう一方のデシメーションフィルタ40は、LAFセンサ14の出力KACTに上記と同じデシメーション処理を施すとともに、そのデシメーション値FD(KACT)と基準値FLAFBASEとにより、LAF出力偏差のデシメーション値DKACT’(k)(図49(c)に黒丸で示す値)をサンプリングする。具体的には、LAFセンサ14の出力KACTを、所定のサンプリング周期ΔTsm(10msec)でサンプリングし、次に、これらのサンプリング値(図49(b)に黒丸および白抜きの丸で示す値)にローパスフィルタリング処理を施した後、ΔTsmの4倍のサンプリング周期ΔTsk(40msec)でダウンサンプリングすることにより、デシメーション値FD(KACT)(図49(b)に黒丸で示す値)をサンプリングする。次いで、このデシメーション値FD(KACT)と基準値FLAFBASEとの偏差を、LAF出力偏差のデシメーション値DKACT’(k)としてサンプリングする。なお、以上のデシメーション処理において、サンプリング周期ΔTskでのダウンサンプリング処理と、ローパスフィルタリング処理とを、上記とは逆の順序で実行してもよい。
【0250】
さらに、図示しないサンプラにより、O2センサ15の出力のサンプリング値Vout(k)がサンプリング周期ΔTskでサンプリングされる(すなわち図49(a)に黒丸で示す値がサンプリングされる)。また、これらの3つの値DKCMD’(k),DKACT’(k),Vout(k)は、互いに同じタイミングでサンプリングされる(図49参照)。
【0251】
オンボード同定器23(同定手段)は、上記3つの値DKCMD’(k),DKACT’(k),Vout(k)のサンプリングタイミングに同期して、サンプリングされたサンプリング値Vout(k)およびデシメーション値DKACT’(k)に基づき、出力偏差VO2およびモデルパラメータa1,a2,b1を算出(同定)する(図49(d)参照)。すなわち、オンボード同定器23によるモデルパラメータa1,a2,b1の算出周期ΔTkは、サンプリング周期ΔTskと同じ値(40msec)に設定されている。
【0252】
また、状態予測器22(予測値算出手段、偏差算出手段)は、モデルパラメータa1,a2,b1の同定値および上記3つの値DKCMD’(k),DKACT’(k),Vout(k)に基づき、上記サンプリングタイミングに同期して、出力偏差VO2および予測値PREVO2を算出する(図49(e)参照)。すなわち、予測値PREVO2も、上記算出周期ΔTkで算出される。
【0253】
次に、オーバーサンプラ41は、予測値PREVO2のオーバーサンプル値Fo(PREVO2)をサンプリングする。具体的には、予測値PREVO2を、前述したサンプリング周期ΔTsmでオーバーサンプリングすることにより、オーバーサンプル値Fo(PREVO2)をサンプリングする(すなわち図49(f)に白抜きの丸で示す値をサンプリングする)。
【0254】
次いで、DSMコントローラ24(空燃比算出手段)は、このオーバーサンプル値Fo(PREVO2)に基づき、そのサンプリングタイミングに同期して、目標空燃比KCMDを、前記サンプリング周期ΔTsmと同じ値(10msec)の算出周期ΔTmで算出する。
【0255】
次に、この制御装置1における状態予測器22の予測アルゴリズムについて説明する。前述したように、空燃比偏差のデシメーション値DKCMD’(k)およびLAF出力偏差のデシメーション値DKACT’(k)はそれぞれ、下式(58),(59)に示すように定義される。
DKCMD’(k)=Fd(φop(m))−FLAFBASE
=Fd(KCMD(m))−FLAFBASE ……(58)

DKACT’(k)=Fd(φin(m))−FLAFBASE
=Fd(KACT(m))−FLAFBASE ……(59)
ここで、記号mは、サンプリング周期ΔTsmでのサンプリングにより離散化された時間を表し、記号kは、サンプリング周期ΔTskでのサンプリングにより離散化された時間を表す。また、KCMD(m)およびKACT(m)はそれぞれ、目標空燃比KCMDおよびLAFセンサ14の出力KACTの離散データを表す。
【0256】
また、制御対象モデルは、下式(60)のように定義される。
VO2(k)=a1・VO2(k-1)+a2・VO2(k-2)+b1・DKCMD'(k-dt) ……(60)
なお、この式(60)に、DKACT’(k)=DKCMD’(k−d')の関係を適用することにより、制御対象モデルを、VO2とDKACT’の関係で表すことも可能である。
【0257】
さらに、上記式(60)の制御対象モデルに基づき、第1実施形態と同様の手法を用いると、予測値PREVO2の算出式は、図48に示す式(61)として定義される。
【0258】
一方、オンボード同定器23の同定アルゴリズムは、図48に示す式(62)〜(69)のように定義される。
【0259】
また、DSMコントローラ24の制御アルゴリズムは、以下の式(70)〜(75)で表される。
r(m)=−1・Gd・PREVO2(m) ……(70)
δ(m)=r(m)−u''(m−1) ……(71)
σd(m)=σd(m−1)+δ(m) ……(72)
u''(m)=sgn(σd(m)) ……(73)
u(m)=Fd・u''(m) ……(74)
φop(m)=KCMD(m)=FLAFBASE+u(m) ……(75)
ここで、符号関数sgn(σd(m))の値は、σd(m)≧0のときにはsgn(σd(m))=1となり、σd(m)<0のときにはsgn(σd(m))=−1となる(なお、σd(m)=0のときに、sgn(σd(m))=0と設定してもよい)。
【0260】
以上のように、本実施形態の制御装置1では、状態予測器22およびオンボード同定器23により、予測値PREVO2およびモデルパラメータa1,a2,b1が、互いに同じ所定のサンプリング周期ΔTsk(40msec)でサンプリングされた値DKCMD’,DKACT’,Vout(k)を用い、互いに同じ所定の算出周期ΔTk(40msec)で算出される。これに加えて、DSMコントローラ24により、目標空燃比KCMDが、算出周期ΔTkの1/4の算出周期ΔTm(10msec)で算出される。これは以下の理由による。
【0261】
すなわち、DSMコントローラ24では、算出周期ΔTmが短いほど、目標空燃比KCMDの算出精度は向上する。これに対して、一般に、O2センサ15の出力Voutのパワースペクトルは、0〜5Hzの周波数域に存在するため、サンプリング周期ΔTskおよび算出周期ΔTkが20msecよりも短い場合には、制御対象の周波数特性が、モデルパラメータa1,a2,b1の同定値および制御対象モデルに適切に反映されなくなるとともに、予測値PREVO2の算出値にも適切に反映されなくなることがある。それにより、モデルパラメータa1,a2,b1および予測値PREVO2の算出精度が低下してしまうことがある。したがって、本実施形態の制御装置1によれば、サンプリング周期ΔTskおよび算出周期ΔTkが上記の値に設定されることにより、制御対象の周波数特性を制御対象モデルに適切に反映させることができ、モデルパラメータa1,a2,b1および予測値PREVO2の算出値に、制御対象の周波数特性を適切に反映させることができる。その結果、モデルパラメータa1,a2,b1および予測値PREVO2の算出精度を、第1実施形態の例よりもさらに向上させることができると同時に、算出周期ΔTmが算出周期ΔTkよりも短い値に設定されることにより、目標空燃比KCMDの良好な算出精度も確保することができる。また、本実施形態の制御装置1によれば、前述した第1実施形態の制御装置1と同様の効果も得ることができる。
【0262】
なお、目標空燃比KCMDおよびLAFセンサ14の出力KACTをサンプリング周期ΔTskでサンプリングするための構成として、第9実施形態で用いたデシメーションフィルタ40に代えて、これらをサンプリング周期ΔTskでサンプリングするサンプラなどを用いてもよい。また、DSMコントローラ24に代えて、前述したSDMコントローラ29またはDMコントローラ30を用いてもよい。さらに、各算出周期ΔTm,ΔTkおよびサンプリング周期ΔTsm,ΔTskは、前述した値に限らず、適切な値に設定することが可能である。例えば、算出周期ΔTmおよびサンプリング周期ΔTsmを、前述した値(10msec)よりも短い値に、算出周期ΔTkおよびサンプリング周期ΔTskを、前述した値(40msec)よりも長い値にそれぞれ設定してもよい。
【0263】
次に、第10実施形態の制御装置について説明する。この制御装置1は、前述した図44の例と同様に、LAFセンサ14がエンジン3に設けられていないとともに、O2センサ15が第2触媒装置8bよりも下流側に設けられているエンジン3に適用した例である。そのため、この制御装置1では、図50に示すように、O2センサ15の出力Voutのサンプリング値と、目標空燃比のデシメーション値DKCMD’とを用いて、状態予測器22よる予測値PREVO2の算出、およびオンボード同定器23によるモデルパラメータa1,a2,b1の算出が行われる。
【0264】
また、状態予測器22の予測アルゴリズムでは、前述した式(60)の制御対象モデルに基づき、予測値PREVO2の算出式は、図51に示す式(76)として定義される。さらに、オンボード同定器23の同定アルゴリズムは、図51に示す式(77)〜(84)で表される。また、DSMコントローラ24の制御アルゴリズムは、前述した式(70)〜(75)で表される。
【0265】
以上の制御装置1によれば、上記第9実施形態の制御装置1と同様の効果を得ることができる。これに加えて、そのような制御装置1をLAFセンサ14を用いることなく、構成することができ、その分、製造コストを削減することができる。
【0266】
また、この第10実施形態の制御装置1でも、第9実施形態の制御装置1と同様に、デシメーションフィルタ40に代えて、目標空燃比KCMDをサンプリング周期ΔTskでサンプリングするサンプラなどを用いてもよく、DSMコントローラ24に代えて、SDMコントローラ29またはDMコントローラ30を用いてもよい。
【0267】
なお、ADSMコントローラ20およびPRISMコントローラ21を、実施形態のプログラムに代えて、電気回路により構成してもよい。
【図面の簡単な説明】
【0268】
【図1】本発明の第1実施形態に係る制御装置およびこれを適用した内燃機関の概略構成を示す図である。
【図2】劣化状態および未劣化状態の第1触媒装置を用いた場合において、LAFセンサの出力KACTに対する、両第1触媒装置のHCおよびNOxの浄化率と、O2センサ15の出力Voutとをそれぞれ測定した結果の一例を示す図である。
【図3】第1実施形態の制御装置のADSMコントローラおよびPRISMコントローラの構成を示すブロック図である。
【図4】状態予測器の予測アルゴリズムの数式の一例を示す図である。
【図5】オンボード同定器の同定アルゴリズムの数式の一例を示す図である。
【図6】オンボード同定器の同定アルゴリズムの数式の他の一例を示す図である。
【図7】ΔΣ変調を実行するコントローラおよびこれを備えた制御系の構成を示すブロック図である。
【図8】図7の制御系の制御結果の一例を示すタイミングチャートである。
【図9】第1実施形態のADSMコントローラによる適応予測型ΔΣ変調制御の原理を説明するためのタイミングチャートである。
【図10】ADSMコントローラのうちのDSMコントローラの構成を示すブロック図である。
【図11】スライディングモード制御アルゴリズムの数式を示す図である。
【図12】PRISMコントローラのスライディングモード制御アルゴリズムの数式を示す図である。
【図13】内燃機関の燃料噴射制御処理を示すフローチャートである。
【図14】適応空燃比制御処理を示すフローチャートである。
【図15】図14の続きを示すフローチャートである。
【図16】図14のステップ21における発進判定処理を示すフローチャートである。
【図17】図14のステップ23におけるPRISM/ADSM処理の実行判定処理を示すフローチャートである。
【図18】図14のステップ24における同定器演算の実行判定処理を示すフローチャートである。
【図19】図14のステップ25における各種パラメータの算出処理を示すフローチャートである。
【図20】むだ時間CAT_DELAY,KACT_Dの算出に用いるテーブルの一例を示す図である。
【図21】重みパラメータλ1の算出に用いるテーブルの一例を示す図である。
【図22】モデルパラメータa1,a2,b1の値を制限するリミット値X_IDA2L,X_IDB1L,X_IDB1Hの算出に用いるテーブルの一例を示す図である。
【図23】フィルタ次数nの算出に用いるテーブルの一例を示す図である。
【図24】図14のステップ31における同定器の演算処理を示すフローチャートである。
【図25】図24のステップ94におけるθ(k)の安定化処理を示すフローチャートである。
【図26】図25のステップ101におけるa1'&a2'のリミット処理を示すフローチャートである。
【図27】図26の処理によりa1'&a2'の組み合わせが規制される規制範囲を示す図である。
【図28】図25のステップ102におけるb1'のリミット処理を示すフローチャートである。
【図29】図15のステップ33の状態予測器の演算処理を示すフローチャートである。
【図30】図15のステップ34の制御量Uslの算出処理を示すフローチャートである。
【図31】図30のステップ151の予測切換関数σPREの積算値算出処理を示すフローチャートである。
【図32】図15のステップ36のスライディングモード制御量DKCMDSLDの算出処理を示すフローチャートである。
【図33】図32の続きを示すフローチャートである。
【図34】図15のステップ37のΔΣ変調制御量DKCMDDSMの算出処理を示すフローチャートである。
【図35】KDSMの算出に用いるテーブルの一例を示す図である。
【図36】図15のステップ38の適応目標空燃比KCMDSLDの算出処理を示すフローチャートである。
【図37】図15のステップ39の適応補正項FLAFADPの算出処理を示すフローチャートである。
【図38】第2実施形態の制御装置の概略構成を示すブロック図である。
【図39】第3実施形態の制御装置の概略構成を示すブロック図である。
【図40】第4実施形態の制御装置の概略構成を示すブロック図である。
【図41】第4実施形態の制御装置のパラメータスケジューラにおいて、モデルパラメータの算出に用いるテーブルの一例を示す図である。
【図42】第5実施形態の制御装置のSDMコントローラの概略構成を示すブロック図である。
【図43】第6実施形態の制御装置のDMコントローラの概略構成を示すブロック図である。
【図44】第7実施形態に係る制御装置およびこれを適用した内燃機関の概略構成を示す図である。
【図45】第7実施形態の制御装置の構成を示すブロック図である。
【図46】第8実施形態の制御装置の構成を示すブロック図である。
【図47】第9実施形態の制御装置の構成を示すブロック図である。
【図48】第9実施形態の制御装置における状態予測器の予測アルゴリズムおよびオンボード同定器の同定アルゴリズムの数式の一例を示す図である。
【図49】第9実施形態の制御装置における各算出値の算出タイミングおよび各サンプリング値のサンプリングタイミングを示すタイミングチャートである。
【図50】第10実施形態の制御装置の構成を示すブロック図である。
【図51】第10実施形態の制御装置における状態予測器の予測アルゴリズムおよびオンボード同定器の同定アルゴリズムの数式の一例を示す図である。
【符号の説明】
【0269】
1 制御装置
2 ECU(偏差算出手段、予測値算出手段、出力サンプリング手段、 サンプリング手段、同定手段、空燃比算出手段、空燃比制御手段、 空燃比サンプリング手段)
3 内燃機関
7 排気管(排気通路)
8a 第1触媒装置(触媒)
8b 第2触媒装置(触媒)
14 LAFセンサ(上流側空燃比センサ)
15 酸素濃度センサ(下流側空燃比センサ)
22 状態予測器(予測値算出手段、偏差算出手段)
23 オンボード同定器(同定手段)
24 DSMコントローラ(空燃比算出手段)
40 デシメーションフィルタ(サンプリング手段)
ΔTk 算出周期(偏差算出周期、予測値算出周期)
ΔTm 算出周期(空燃比算出周期)
ΔTsk サンプリング周期(出力サンプリング周期、第1サンプリング周期 、同定周期、空燃比サンプリング周期)
ΔTsm サンプリング周期(第2サンプリング周期、第2空燃比サンプリン グ周期)
KCMD 目標空燃比
DKCMD’ 空燃比偏差のデシメーション値(目標空燃比を表す値)
DKCMD'(k-dt) 空燃比偏差の離散データ
DKCMD'(k-i) 空燃比偏差の離散データ
DKACT’ LAF出力偏差のデシメーション値(上流側空燃比センサの出力を 表す値)
DKACT'(k-j) LAF出力偏差の離散データ
DKACT'(k-d-dd) LAF出力偏差の離散データ
Vop 目標値
VO2 出力偏差(下流側空燃比センサの出力を表す値)
VO2(k)〜VO2(k-2) 出力偏差の離散データ
PREVO2 出力偏差の予測値
a1 モデルパラメータ
a2 モデルパラメータ
b1 モデルパラメータ
u''(m) DSM信号(第1の中間値を表す信号)
u(m) 増幅DSM信号(第1の中間値にゲインを乗算した値を表す信号、 第2の中間値)
d ゲイン
FLAFBASE 基準値(所定値)

【特許請求の範囲】
【請求項1】
内燃機関の排気通路の触媒よりも下流側における排気ガスの空燃比を表す検出信号を出力する下流側空燃比センサと、
当該下流側空燃比センサの出力と所定の目標値との偏差を所定の偏差算出周期で算出する偏差算出手段と、
Δ変調アルゴリズム、ΔΣ変調アルゴリズムおよびΣΔ変調アルゴリズムのうちのいずれか1つの変調アルゴリズムに基づき、前記算出された偏差に応じて、前記下流側空燃比センサの出力を前記目標値に収束させるための、前記内燃機関に供給すべき混合気の目標空燃比を、前記偏差算出周期よりも短い所定の空燃比算出周期で算出する空燃比算出手段と、
当該算出された目標空燃比に応じて、前記内燃機関に供給される混合気の空燃比を制御する空燃比制御手段と、
を備えることを特徴とする制御装置。
【請求項2】
前記空燃比算出手段は、前記1つの変調アルゴリズムに基づき、前記偏差に応じて、第1の中間値を算出するとともに、当該算出した第1の中間値に所定のゲインを乗算した値に基づき、前記目標空燃比を算出することを特徴とする請求項1に記載の制御装置。
【請求項3】
前記空燃比算出手段は、前記1つの変調アルゴリズムに基づき、前記偏差に応じて、第2の中間値を算出するとともに、当該算出した第2の中間値に所定値を加算することにより、前記目標空燃比を算出することを特徴とする請求項1に記載の制御装置。
【請求項4】
内燃機関の排気通路の触媒よりも下流側における排気ガスの空燃比を表す検出信号を出力する下流側空燃比センサと、
予測アルゴリズムに基づき、前記下流側空燃比センサの出力を表す値の予測値を所定の予測値算出周期で算出する予測値算出手段と、
Δ変調アルゴリズム、ΔΣ変調アルゴリズムおよびΣΔ変調アルゴリズムのうちのいずれか1つの変調アルゴリズムに基づき、前記算出された予測値に応じて、前記下流側空燃比センサの出力を制御するための、前記内燃機関に供給すべき混合気の目標空燃比を、前記予測値算出周期よりも短い空燃比算出周期で算出する空燃比算出手段と、
当該算出された目標空燃比に応じて、前記内燃機関に供給される混合気の空燃比を制御する空燃比制御手段と、
を備えることを特徴とする制御装置。
【請求項5】
前記空燃比算出手段は、前記1つの変調アルゴリズムに基づき、前記予測値に応じて、第1の中間値を算出するとともに、当該算出した第1の中間値に所定のゲインを乗算した値に基づき、前記目標空燃比を算出することを特徴とする請求項4に記載の制御装置。
【請求項6】
前記空燃比算出手段は、前記1つの変調アルゴリズムに基づき、前記予測値に応じて、第2の中間値を算出するとともに、当該算出した第2の中間値に所定値を加算することにより、前記内燃機関に供給すべき混合気の目標空燃比を算出することを特徴とする請求項4に記載の制御装置。
【請求項7】
前記下流側空燃比センサの出力を表す値を、前記空燃比算出周期よりも長い所定の出力サンプリング周期で、離散データとしてサンプリングする出力サンプリング手段をさらに備え、
前記予測アルゴリズムは、当該サンプリングされた前記下流側空燃比センサの出力を表す値の離散データに応じて、前記予測値を算出するアルゴリズムであることを特徴とする請求項4ないし6のいずれかに記載の制御装置。
【請求項8】
前記目標空燃比を表す値を、前記空燃比算出周期よりも長い所定の空燃比サンプリング周期で、離散データとしてサンプリングする空燃比サンプリング手段をさらに備え、
前記予測アルゴリズムは、当該サンプリングされた前記目標空燃比を表す値の離散データにさらに応じて、前記予測値を算出するアルゴリズムであることを特徴とする請求項7に記載の制御装置。
【請求項9】
前記空燃比サンプリング手段は、
前記目標空燃比を表す値の離散データを、前記空燃比サンプリング周期よりも短い所定の第2空燃比サンプリング周期でサンプリングした値にデシメーション処理を施すことにより、前記空燃比サンプリング周期でサンプリングすることを特徴とする請求項8に記載の制御装置。
【請求項10】
前記予測アルゴリズムは、前記目標空燃比を表す値および前記下流側空燃比センサの出力を表す値を変数とする制御対象モデルに基づき、前記予測値を算出するアルゴリズムであることを特徴とする請求項4ないし6のいずれかに記載の制御装置。
【請求項11】
前記目標空燃比を表す値および前記下流側空燃比センサの出力を表す値を、前記空燃比算出周期よりも長い所定の第1サンプリング周期で、離散データとしてサンプリングするサンプリング手段をさらに備え、
前記制御対象モデルは、当該サンプリングされた、前記目標空燃比を表す値の離散データと、前記下流側空燃比センサの出力を表す値の離散データとを変数とする離散時間系モデルであることを特徴とする請求項10に記載の制御装置。
【請求項12】
前記サンプリング手段は、
前記目標空燃比を表す値の離散データを、前記第1サンプリング周期よりも短い所定の第2サンプリング周期でサンプリングした値にデシメーション処理を施すことにより、前記第1サンプリング周期でサンプリングすることを特徴とする請求項11に記載の制御装置。
【請求項13】
前記下流側空燃比センサの出力を表す値の離散データに応じて、前記離散時間系モデルのモデルパラメータを同定する同定手段をさらに備えることを特徴とする請求項11または12に記載の制御装置。
【請求項14】
前記同定手段は、前記目標空燃比を表す値の離散データにさらに応じて、前記モデルパラメータを同定することを特徴とする請求項13に記載の制御装置。
【請求項15】
前記同定手段による前記モデルパラメータの同定周期は、前記空燃比算出周期よりも長い値に設定されていることを特徴とする請求項13または14に記載の制御装置。
【請求項16】
前記内燃機関の前記排気通路の前記触媒よりも上流側における排気ガスの空燃比を表す検出信号を出力する上流側空燃比センサと、
前記目標空燃比を表す値と前記上流側空燃比センサの出力を表す値との少なくとも一方を、前記空燃比算出周期よりも長い所定の空燃比サンプリング周期で、離散データとしてサンプリングする空燃比サンプリング手段と、をさらに備え、
前記予測アルゴリズムは、当該サンプリングされた、前記目標空燃比を表す値の離散データ、および前記上流側空燃比センサの出力を表す値の離散データの少なくとも一方にさらに応じて、前記予測値を算出するアルゴリズムであることを特徴とする請求項7に記載の制御装置。
【請求項17】
前記サンプリング手段は、
前記目標空燃比を表す値の離散データ、および前記上流側空燃比センサの出力を表す値の離散データの少なくとも一方を、前記空燃比サンプリング周期よりも短い所定の第2空燃比サンプリング周期でサンプリングした値にデシメーション処理を施すことにより、前記空燃比サンプリング周期でサンプリングすることを特徴とする請求項16に記載の制御装置。
【請求項18】
前記内燃機関の前記排気通路の前記触媒よりも上流側における排気ガスの空燃比を表す検出信号を出力する上流側空燃比センサをさらに備え、
前記予測アルゴリズムは、前記目標空燃比を表す値および前記上流側空燃比センサの出力を表す値の一方と、前記下流側空燃比センサの出力を表す値とを変数とする制御対象モデルに基づき、前記予測値を算出するアルゴリズムであることを特徴とする請求項4ないし6のいずれかに記載の制御装置。
【請求項19】
前記目標空燃比を表す値と前記上流側空燃比センサの出力を表す値との少なくとも一方、および前記下流側空燃比センサの出力を表す値を、前記空燃比算出周期よりも長い所定の第1サンプリング周期で、離散データとしてサンプリングするサンプリング手段をさらに備え、
前記制御対象モデルは、当該サンプリングされた、前記目標空燃比を表す値の離散データおよび前記上流側空燃比センサの出力を表す値の離散データの一方と、前記下流側空燃比センサの出力を表す値の離散データとを変数とする離散時間系モデルであることを特徴とする請求項18に記載の制御装置。
【請求項20】
前記サンプリング手段は、
前記目標空燃比を表す値の離散データ、および前記上流側空燃比センサの出力を表す値の離散データの少なくとも一方を、前記第1サンプリング周期よりも短い所定の第2サンプリング周期でサンプリングした値にデシメーション処理を施すことにより、前記第1サンプリング周期でサンプリングすることを特徴とする請求項19に記載の制御装置。
【請求項21】
前記下流側空燃比センサの出力を表す値の離散データに応じて、前記離散時間系モデルのモデルパラメータを同定する同定手段をさらに備えることを特徴とする請求項19または20に記載の制御装置。
【請求項22】
前記同定手段は、前記目標空燃比を表す値の離散データ、および前記上流側空燃比センサの出力を表す値の離散データの一方にさらに応じて、前記モデルパラメータを同定することを特徴とする請求項21に記載の制御装置。
【請求項23】
前記同定手段による前記モデルパラメータの同定周期は、前記空燃比算出周期よりも長い値に設定されていることを特徴とする請求項21または22に記載の制御装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate

【図33】
image rotate

【図34】
image rotate

【図35】
image rotate

【図36】
image rotate

【図37】
image rotate

【図38】
image rotate

【図39】
image rotate

【図40】
image rotate

【図41】
image rotate

【図42】
image rotate

【図43】
image rotate

【図44】
image rotate

【図45】
image rotate

【図46】
image rotate

【図47】
image rotate

【図48】
image rotate

【図49】
image rotate

【図50】
image rotate

【図51】
image rotate


【公開番号】特開2007−56879(P2007−56879A)
【公開日】平成19年3月8日(2007.3.8)
【国際特許分類】
【出願番号】特願2006−306602(P2006−306602)
【出願日】平成18年11月13日(2006.11.13)
【分割の表示】特願2002−39094(P2002−39094)の分割
【原出願日】平成14年2月15日(2002.2.15)
【出願人】(000005326)本田技研工業株式会社 (23,863)
【Fターム(参考)】