(57)【要約】【課題】逐次同定したモデルパラメータを用いて故障診断等を容易に実施する。【解決手段】制御対象の動特性を逐次同定するために、制御対象を離散数式モデルで表したプラントモデルを用い、該プラントモデルに制御対象への入力を加えた際の出力であるプラントモデル出力と制御対象の実出力との誤差をゼロに近づけるようにしてプラントモデルのパラメータを同定する。また、逐次同定された離散モデルパラメータを連続時間表現のモデルパラメータに変換する。【選択図】      図１
2006118428.tif 000002
【特許請求の範囲】
【請求項１】
制御対象を離散数式モデルで表したプラントモデルを用い、該プラントモデルに前記制御対象への入力を加えた際の出力であるプラントモデル出力と前記制御対象の実出力との誤差をゼロに近づけるようにして前記プラントモデルのパラメータを同定する同定手段と、
前記同定手段により同定された離散モデルパラメータを連続時間表現のモデルパラメータに変換する連続化手段と、
を備えることを特徴とする制御装置。
【請求項２】
前記連続化手段により変換された連続モデルパラメータに対して所定の数値処理を施す連続パラメータ処理手段を更に備えたことを特徴とする請求項１に記載の制御装置。
【請求項３】
前記連続パラメータ処理手段は、前記連続モデルパラメータに対してフィルタ処理又はリミット処理を施すものであることを特徴とする請求項２に記載の制御装置。
【請求項４】
連続時間ノミナルモデルパラメータを設定するためのノミナルパラメータ設定手段を備え、前記連続パラメータ処理手段は、前記連続化手段により変換された連続モデルパラメータと前記連続時間ノミナルモデルパラメータとの差分を所定範囲内に制限することを特徴とする請求項２又は３に記載の制御装置。
【請求項５】
前記所定範囲を規定するガード値に対し前記連続モデルパラメータと前記連続時間ノミナルモデルパラメータとの差分が継続的に張り付いている場合、前記所定範囲を拡張側に変更することを特徴とする請求項４に記載の制御装置。
【請求項６】
前記連続パラメータ処理手段により所定の数値処理が施された後の修正後連続モデルパラメータを再度離散化する離散化手段を備え、該離散化手段により算出される修正後離散モデルパラメータに基づき、前記同定手段の前記プラントモデル出力を算出することを特徴とする請求項２乃至５の何れかに記載の制御装置。
【請求項７】
前記制御対象の実出力が所定の目標値になるように前記制御対象への入力を算出する操作量算出手段と、前記連続パラメータ処理手段により所定の数値処理が施された後の修正後連続モデルパラメータを再度離散化する離散化手段とを備え、該離散化手段により算出される修正後離散モデルパラメータに基づき前記操作量算出手段を実行することを特徴とする請求項２乃至５の何れかに記載の制御装置。
【請求項８】
前記連続パラメータ処理手段により所定の数値処理が施された後の修正後連続モデルパラメータを学習する学習手段を備えたことを特徴とする請求項２乃至７の何れかに記載の制御装置。
【請求項９】
前記学習手段は、前記連続化手段により変換された連続モデルパラメータと連続時間ノミナルモデルパラメータとの差分に対し前記連続パラメータ処理手段による所定の数値処理を施した値を基に学習値を更新することを特徴とする請求項８に記載の制御装置。
【請求項１０】
前記学習手段は、前記差分になまし処理を施して学習値を更新することを特徴とする請求項９に記載の制御装置。
【請求項１１】
前記学習手段は、前記同定手段におけるプラントモデル出力と前記制御対象の実出力との誤差が所定範囲内である場合に学習値を更新することを特徴とする請求項８乃至１０の何れかに記載の制御装置。
【請求項１２】
内燃機関と該内燃機関の排出ガスを基に空燃比を検出する空燃比センサとを制御対象とし、燃料噴射補正量を入力として加えた時のプラントモデル出力と前記空燃比センサの出力との誤差に基づいて前記同定手段による同定を実行する制御装置において、
前記空燃比センサによる検出空燃比が目標空燃比に一致するよう燃料噴射補正量を算出するフィードバック制御手段と、
目標空燃比を一時的に振幅させ、その際、内燃機関の排気系に設けた触媒の下流側空燃比の挙動に基づいて該触媒の劣化状態を検出する触媒劣化検出手段とを備え、
該触媒の劣化検出実行時に前記同定手段による同定を実行することを特徴とする請求項１乃至１１の何れかに記載の制御装置。
【請求項１３】
内燃機関制御システムに適用され、内燃機関の特定運転状態を判定するための運転状態判定手段を備え、該判定手段が特定運転状態であると判定した場合に前記同定手段による同定を実行することを特徴とする請求項１乃至１２の何れかに記載の制御装置。
【請求項１４】
前記運転状態判定手段は、内燃機関の回転速度及び負荷の変化率の絶対値が所定値以下である場合に、特定運転状態であると判定することを特徴とする請求項１３に記載の制御装置。
【請求項１５】
内燃機関制御システムに適用され、前記修正後連続モデルパラメータを用いて内燃機関の故障診断を実行することを特徴とする請求項１乃至１４の何れかに記載の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内燃機関等の制御対象を数式モデルで表したプラントモデルを用い、該プラントモデルのパラメータを逐次同定することで制御対象の動特性を自動的に適応させるようにした制御装置に関するものである。
【背景技術】
【０００２】
従来から、離散時間において制御対象の動特性を逐次同定し該同定結果に基づき制御を実行する制御装置が提案されている。該制御装置は、制御対象を離散数式モデルで表したプラントモデルを持ち、プラントモデルに実際の制御入力を与えた時のプラントモデル出力と実際の制御対象の出力との誤差をゼロに近づけるようにプラントモデルのパラメータを逐次推定し、同定したモデルパラメータに基づいて制御器が制御入力を算出するものである。
【０００３】
例えば、内燃機関の空燃比制御システムでは、制御器からの燃料噴射量指令に基づき燃料噴射を行う内燃機関と該内燃機関から排出される排出ガスの空燃比を検出する空燃比センサとが制御対象（実プラント）に該当し、この制御対象を数式モデルで表すことでプラントモデルが構築される。かかる場合、制御対象においてはセンサのばらつきや経時変化等が存在し、それが原因で制御対象とプラントモデルとに差異が生じるが、その差異を解消するようにモデルパラメータが適宜調整されるようになっている。また、こうして制御対象の状態によってモデルパラメータ調整が行われる構成では、モデルパラメータをモニタすることで制御対象におけるセンサのばらつきや経時変化等の程度を知ることができ、更には故障診断等の実施も可能となると考えられる。しかしながら、モデルパラメータは離散時間表現のパラメータであり、物理的意味を理解し難い。それ故に、当該パラメータを用いて故障診断等を実施するのは困難であるという問題があった。
【０００４】
一方、モデルパラメータの同定機構が誤同定してしまうと、その間違った同定結果に基づき制御を実行してしまうため、制御性の著しい悪化を生じかねない。したがって、最低限の制御性を補償するためには、モデルパラメータの誤同定による制御性の悪化を防ぐための処理が必要不可欠である。
【０００５】
例えば、特許文献１では、スライディングモード制御により燃料噴射量のフィードバック制御量を算出する内燃機関の空燃比制御装置において、燃料噴射手段から空燃比検出手段までの間のプラントを伝達関数で表したプラントモデルを、燃料噴射量と実空燃比に基づいて逐次同定し、該同定したプラントモデル（のパラメータ）を用いて、前記スライディングモード制御の制御ゲインを算出している。この場合、前記制御ゲインの算出はプラントモデルのパラメータの推定値の一つで除算することにより行われるため、逐次同定により前記パラメータが小さな値で推定されると、各制御ゲインが大きく算出されることになる。特に、プラントの実際のむだ時間が、逐次同定のために設定されたむだ時間よりも大きい場合は、前記入力側パラメータが小さい値に推定され、この入力側パラメータが小さくなりすぎると、算出される各制御ゲインが過大となり（すなわち、制御量も過大となり）、制御が発散してしまうという問題が生じる。そのため、制御ゲインの算出に用いるパラメータの推定値に制限を設けることで、過大な制御ゲインの算出、制御の発散を防止している。
【０００６】
しかしながら、前記パラメータの推定値への制限のリミット値は、実験やシミュレーションにより試行錯誤的に求めなければならない。さらには、前記推定パラメータが小さくなりすぎることは、むだ時間の実対象とのずれ等に起因して誤同定していることによるため、最適なリミット値が見つからない可能性も考えられる。
【特許文献１】特開２００３−１８４６１２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
本発明は、上記実情に鑑みなされたものであって、逐次同定したモデルパラメータを用いて故障診断等を容易に実施できる制御装置の提供を第１の目的とし、同じく逐次同定したパラメータに対して最適に制限等をかけてひいては制御性の向上を図ることができる制御装置の提供を第２の目的とする。
【課題を解決するための手段】
【０００８】
本発明において、同定手段は、制御対象を離散数式モデルで表したプラントモデルを用い、該プラントモデルに制御対象への入力を加えた際の出力であるプラントモデル出力と前記制御対象の実出力との誤差をゼロに近づけるようにしてプラントモデルのパラメータを同定する。プラントモデルは、例えば応答遅れ要素とむだ時間要素とを用いて表され、同定手段によって、制御対象の動特性が逐次同定される。また、連続化手段は、前記同定手段により同定された離散モデルパラメータを連続時間表現のモデルパラメータに変換する。
【０００９】
要するに、逐次同定されるモデルパラメータは、制御対象（実プラント）の個体差ばらつきや経時変化等を反映したものであり、故障診断等の各種処理に利用できると考えられる。この場合、離散モデルパラメータは物理的意味が分かりにくく、その離散モデルパラメータを利用して故障診断等を実施しようとしても、そのままでは故障診断等の実施が困難になる。これに対して上記構成によれば、離散モデルパラメータを連続時間表現のモデルパラメータ（１次遅れ系では時定数に相当）に変換するため、逐次同定したモデルパラメータを用いて故障診断等を容易に実施することができるようになる。
【００１０】
また、前記連続化手段により変換された連続モデルパラメータに対して所定の数値処理を施すと良い（連続パラメータ処理手段を設ける）。連続パラメータ処理手段は、連続モデルパラメータに対してフィルタ処理又はリミット処理を施すものであると良い。この場合、数値処理の対象となるのは、離散時間表現から連続時間表現に変換された連続モデルパラメータ（すなわち、物理的意味の理解しやすいパラメータ）であり、フィルタ処理やリミット処理の設定が比較的容易に実施できる。
【００１１】
連続パラメータ処理手段として、前記連続化手段により変換された連続モデルパラメータと連続時間ノミナルモデルパラメータとの差分を所定範囲内に制限するようにしても良い。この場合、ノミナル値からの誤差分だけに制限がかけられ、連続パラメータに対して効果的な数値処理を施すことができる。なお、連続時間ノミナルモデルパラメータは、その都度の制御対象の状態等（内燃機関を制御対象とする場合には機関運転状態等）に応じて設定されると良い。
【００１２】
前記所定範囲を規定するガード値に対し連続モデルパラメータと連続時間ノミナルモデルパラメータとの差分が継続的に張り付いている場合、前記所定範囲を拡張側に変更するようにしても良い。
【００１３】
また、前記所定の数値処理が施された後の修正後連続モデルパラメータを再度離散化し、該離散化により算出した修正後離散モデルパラメータに基づき、前記同定手段のプラントモデル出力を逐次算出すると良い。ここで、修正後離散モデルパラメータは、逐次同定された離散モデルパラメータに対し、連続時間表現への変換→所定の数値処理（フィルタ処理又はリミット処理）→再離散化が行われたパラメータであり、この修正後離散モデルパラメータを基にモデル同定を行うことで、同定手段における誤同定等の問題が解消できる。つまり、逐次同定されたパラメータに対して最適に制限等がかけられ、ひいては制御性の向上を図ることができる。
【００１４】
また、前記制御対象の実出力が所定の目標値になるように制御対象への入力を算出する操作量算出手段を備えた構成では、前記所定の数値処理が施された後の修正後連続モデルパラメータを再度離散化し、該離散化により算出した修正後離散モデルパラメータに基づき前記操作量算出手段を実行すると良い。前述のとおり修正後離散モデルパラメータは、逐次同定された離散モデルパラメータに対し、連続時間表現への変換→所定の数値処理（フィルタ処理又はリミット処理）→再離散化が行われたパラメータであり、この修正後離散モデルパラメータを基に制御入力を算出することで、制御ゲインの発散等の問題が解消できる。つまり、逐次同定されたパラメータに対して最適に制限等がかけられ、ひいては制御性の向上を図ることができる。
【００１５】
個体差ばらつきや経時変化等により制御対象（実プラント）とプラントモデルとに差異が生じている場合、逐次同定したモデルパラメータを学習処理により記憶保持するのが有効である。そこで、前記連続パラメータ処理手段により所定の数値処理が施された後の修正後連続モデルパラメータを学習する。これにより、制御対象とプラントモデルとの差異が好適に解消され、その都度現実の動特性に追従した制御が可能となる。学習時には修正後連続モデルパラメータがバックアップ用メモリ（スタンバイＲＡＭ等）に記憶保持され、故障診断など各種処理に適宜用いられる。
【００１６】
かかる場合、学習手段は、前記連続化手段により変換された連続モデルパラメータと連続時間ノミナルモデルパラメータとの差分に対し前記連続パラメータ処理手段による所定の数値処理を施した値を基に学習値を更新すると良い。
【００１７】
また、前記学習手段は、前記差分になまし処理を施して学習値を更新すると良い。この場合、学習値の急激な変化が抑制され、安定した制御が実現できる。誤同定やノイズ等による制御の乱れも抑制できる。
【００１８】
また、前記学習手段は、前記同定手段におけるプラントモデル出力と前記制御対象の実出力との誤差が所定範囲内である場合に学習値を更新すると良い。この場合、適正な同定が行われていることを条件に学習処理が行われるため、学習値の信頼性が高められる。
【００１９】
ところで、内燃機関と該内燃機関の排出ガスを基に空燃比を検出する空燃比センサとを制御対象とし、燃料噴射補正量を入力として加えた時のプラントモデル出力と前記空燃比センサの出力との誤差に基づいて前記同定手段による同定を実行する制御装置では、空燃比フィードバック制御として、空燃比センサによる検出空燃比が目標空燃比に一致するよう燃料噴射補正量が算出される。また、触媒劣化検出として、目標空燃比を一時的に振幅させ、その時の触媒の下流側空燃比の挙動に基づいて該触媒の劣化状態が検出される。かかる場合において、触媒の劣化検出実行時に前記同定手段による同定を実行すると良い。
【００２０】
また、内燃機関の特定運転状態（例えば定常状態）を判定するための運転状態判定手段を備え、該判定手段が特定運転状態であると判定した場合に前記同定手段による同定を実行すると良い。例えば、内燃機関の回転速度及び負荷の変化率の絶対値が所定値以下である場合に、特定運転状態であると判定される。このように同定実行条件を規定することにより、同定の精度が向上する。
【００２１】
また、修正後連続モデルパラメータを用いて内燃機関の故障診断を実行すると良い。この場合、修正後連続モデルパラメータは、逐次同定された離散モデルパラメータに対し、連続時間表現への変換→所定の数値処理（フィルタ処理又はリミット処理）が行われたパラメータであり、物理的意味が分かりやすい連続時間表現パラメータであることから故障診断が容易に実施できる。また、適正な数値処理が行われているため、故障診断精度を向上させることができる。
【発明を実施するための最良の形態】
【００２２】
以下、本発明を具体化した一実施の形態を図面に従って説明する。本実施の形態では、内燃機関である車載多気筒ガソリンエンジンを対象にエンジン制御システムを構築し、当該制御システムにおいてはエンジン制御用電子制御ユニット（以下、エンジンＥＣＵという）を中枢として燃料噴射量の制御や点火時期の制御等を実施することとしている。先ずは、図１を用いて本制御システムの主要な構成を説明する。
【００２３】
図１において、エンジン１０には気筒毎に電磁駆動式の燃料噴射弁１１が取り付けられている。燃料噴射弁１１により燃料噴射が行われると混合気が形成され、この混合気が吸気バルブ（図示略）の開放に伴い各気筒の燃焼室に導入されて燃焼に供される。エンジン１０で燃焼に供された混合気は、排気バルブ（図示略）の開放に伴い排気として排気マニホールド１２を介して排出される。排気マニホールド１２の集合部には混合気の空燃比を検出するためのＡ／Ｆセンサ１３が設けられている。Ａ／Ｆセンサ１３は広域の空燃比をリニアに検出可能な広域空燃比センサであり、本センサの出力が「制御対象の実出力」に相当する。
【００２４】
図示は省略するが、本制御システムでは、前記Ａ／Ｆセンサ１３以外にも吸気管負圧を検出するための吸気管負圧センサ、エンジン水温を検出するための水温センサ、エンジン回転速度を検出するためのクランク角センサなど各種センサが設けられており、Ａ／Ｆセンサ１３の検出信号と同様、各種センサの検出信号もエンジンＥＣＵに適宜入力されるようになっている。
【００２５】
上記構成のエンジン１０では、Ａ／Ｆセンサ１３による検出空燃比が目標値に一致するよう気筒毎の燃料噴射量がＦ／Ｂ（フィードバック）制御される。空燃比Ｆ／Ｂ制御の基本構成を説明すれば、Ａ／Ｆセンサ１３による検出空燃比と目標空燃比との偏差が算出され、その空燃比偏差が制御器２０に入力される。制御器２０では、空燃比偏差に基づいて空燃比補正係数ＦＡＦが算出され、その空燃比補正係数ＦＡＦと基本噴射量とから最終噴射量が算出される。そして、この最終噴射量に基づいて燃料噴射弁１１による燃料噴射が行われる。
【００２６】
制御器２０は、事前にモデル化し適合したプラントモデルを基に設計されたものであり、本来はこの制御器２０により最適な空燃比Ｆ／Ｂ制御が実現される。しかしながら、実際の制御対象（エンジン１０、Ａ／Ｆセンサ１３等）では個体差や劣化等によってＦ／Ｂ制御誤差が生じる。そこで本システムでは、適応制御と称される制御方式を用い、制御器２０におけるＦ／Ｂゲインを制御対象（プラント）の現時点の動特性に自動的に適応させ、制御系の性能を常に最良の状態に保持するようにしている。すなわち、制御対象を数式モデルで表したプラントモデルを用い、該プラントモデルに制御対象への入力を加えた際の出力であるプラントモデル出力と制御対象の出力（Ａ／Ｆセンサ１３による検出空燃比）との誤差をゼロに近づけるようにしてプラントモデルの可変パラメータを逐次推定する。ここで、プラントモデルは離散時間で表した離散プラントモデルである。
【００２７】
本実施の形態では、制御器２０が「操作量算出手段」に相当し、適応機構により可変パラメータを逐次推定し、該パラメータを離散プラントモデルに反映させるようにした機能ブロックが「同定手段」に相当する。
【００２８】
プラントモデルの離散化は以下のように行う。ここでは、制御対象をむだ時間を有する一次遅れ系とみなす。まず、連続時間伝達関数は、出力をｙ、入力をｕとして次の（１）式で表される。
【００２９】
【数１】
2006118428.tif 000003
Ｔは時定数、Ｌはむだ時間である。また、むだ時間Ｌをサンプリング周期ｄｔで除算した商をむだサンプリング回数ｄ、余りを余むだ時間Ｌ１とする。
【００３０】
【数２】
2006118428.tif 000004
むだ時間Ｌがサンプリング周期ｄｔで割り切れない場合、余むだ時間Ｌ１は０〜ｄｔの正の値をとるが、微小であると考え切り捨てるものとし、上記（１）式をｚ変換すると次の（３）式となる。ただしｋは整数であり、ｋ×ｄｔ⇒ｋと略記するものとする。
【００３１】
【数３】
2006118428.tif 000005
上記（３）式の離散時間表現モデルのパラメータ（以下、離散パラメータとする）を、上記（１）式の連続時間表現モデルのパラメータ（以下、連続パラメータとする）で表現すると以下の関係式となる。
【００３２】
【数４】
2006118428.tif 000006
以下、上記（４）式の変換（Ｔ→ａ１，ｂ１）をモデルパラメータの離散化と呼ぶ。また、この逆変換（ａ１，ｂ１→Ｔ）をモデルパラメータの連続化と呼び、その変換式を次の（５）式で表す。
【００３３】
【数５】
2006118428.tif 000007
上記（４），（５）式に関して、実際はオンボードで演算可能にするため近似演算を用いる。例えば２次までテイラー展開＋誤差大の範囲はテーブルでもつものとする。
【００３４】
さて、同定器により同定するのは、離散パラメータθ（θ＝［ａ１，ｂ１］T:上付きTは転置を表す）であり（ｂ１はａ１より算出可）、同定値θ＿hat（ｘ＿hatはｘの同定値もしくは推定値を表すものとする、以下同様）より前記（５）式の連続化を用いて連続パラメータの推定値Ｔ＿hatが算出可能となっている。
【００３５】
以下、離散パラメータを同定する同定処理について説明する。本同定処理では、同定誤差（制御対象の実出力と離散プラントモデル出力との偏差）をゼロにするように、離散モデルのパラメータを逐次最小二乗法により推定する。以下、図１を基に詳細に説明する。
【００３６】
離散プラントモデルは上記（３）式で表される数式モデルであり、離散パラメータθ（θ＝［ａ１，ｂ１］T）は適応機構により逐次推定される。適応機構は、前述したように同定誤差をゼロに近づけるように離散パラメータθを推定するものである。同定誤差は、離散プラントモデルに実際の制御入力ｕを加えたときのモデル出力ｙ＿hatと制御対象の実出力ｙとの誤差である。なお、離散プラントモデルに加えられる制御入力ｕや制御対象の実出力ｙ（検出空燃比）には、不要な直流成分やノイズ成分などが含まれる。それ故に、制御入力ｕは、低周波成分除去手段としてのＨＰＦ（ハイパスフィルタ）により直流成分が除去される。また、制御対象の実出力ｙについて、制御器２０での空燃比Ｆ／Ｂ用の出力ｙは、高周波成分除去手段としてのＬＰＦ（ローパスフィルタ）によりノイズ成分が除去され、パラメータ同定用の出力ｙは、ＨＰＦとＬＰＦとを組み合わせたＢＰＦ（バンドパスフィルタ）により直流成分とノイズ成分とが除去される。このとき、空燃比Ｆ／Ｂ用の出力ｙと同定用の出力ｙとには各々別のＬＰＦを設定することができるようになっている。
【００３７】
また、同定誤差ｅには必要に応じてフィルタ処理（ＬＰＦ）や不感帯処理が施される。このとき、フィルタ処理により同定パラメータの振動が抑制され、不感帯処理により過同定が抑制される。
【００３８】
まず、上記（３）式を線形パラメトリックな自己回帰モデルとして表現しなおす。
【００３９】
【数６】
2006118428.tif 000008
ここで、θ＿hat(k)＝［ａ１＿hat(k)，ｂ１＿hat(k)］T，ζ(k)＝［ｙ(k)，ｕ(k-d)］Tである。同定誤差ｅは次の（７）式で求められる。
【００４０】
【数７】
2006118428.tif 000009
次に、適応機構において、同定誤差ｅをゼロにするように離散パラメータの推定値θ＿hatを算出するパラメータ調整則は、本実施の形態では重み付き最小二乗法の原理に基づいて導出される。次の（８）式に示す同定誤差ｅの２乗和を評価関数として考える。
【００４１】
【数８】
2006118428.tif 000010
ここで、λは忘却係数とも呼ばれる重み係数である。上記（８）式の評価関数が最小となるような調整則は次式のように与えられる。
【００４２】
【数９】
2006118428.tif 000011
上記（９）式において、同定誤差ｅに乗算する行列ゲインΓ及びスカラゲインγは次式のようになる。
【００４３】
【数１０】
2006118428.tif 000012
本実施の形態では、離散パラメータのノミナル値θｍからの誤差分Δθ＿hatのみをパラメータ調整則で推定する形としており、上記（９）式は次の（１１）式のように修正される。
【００４４】
【数１１】
2006118428.tif 000013
そして、上記（１１）式で求められた離散パラメータの推定値θ＿hat（＝Δθ＿hat＋θｍ）が離散プラントモデルに反映される。
【００４５】
なお、パラメータ調整則は上記以外に、例えば固定ゲイン則、漸減ゲイン則、可変ゲイン則、固定トレース則等であってもよい。
【００４６】
ここで、離散パラメータのノミナル値θｍは図２のようにして算出される。すなわち、あらかじめ設定したノミナルモデルスケジューラを用い、その都度のエンジン運転状態（本実施の形態では回転速度と負荷）に基づいて時定数、むだ時間及びむだサンプリング回数のノミナル値（Ｔｍ，Ｌｍ，ｄｍ）が算出される。また、上記（４）式を用いた離散化処理にて、離散パラメータのノミナル値θｍが算出される。
【００４７】
また、図１において、上記パラメータ調整則に従い推定された離散パラメータθ＿hatは上記（５）式により連続化され、これにより連続パラメータ（時定数の推定値Ｔ＿hat）が算出される。更に、推定値Ｔ＿hatについてノミナル値Ｔｍからの誤差分ΔＴ＿hatが算出される。そして、この誤差分に対してフィルタ処理やリミット処理が適宜施される（連続パラメータ処理手段に相当）。
【００４８】
また、リミット処理後の誤差分を基に学習値が更新され、その学習値がスタンバイＲＡＭ等に格納される（学習手段に相当）。この学習値はスタンバイＲＡＭより適時読み出され、ノミナル値Ｔｍとの加算により連続パラメータが算出される。更に、該連続パラメータが離散化されて離散パラメータθｃが算出され、制御器２０において離散パラメータθｃを用いて制御対象への入力（ここでは空燃比補正係数ＦＡＦ）の算出が行われる。
【００４９】
一方、連続パラメータの誤差分ΔＴ＿hatにノミナル値Ｔｍが加算されることで修正後連続パラメータＴｔｍｐが算出され、その修正後連続パラメータＴｔｍｐを用いて故障診断処理（ＯＢＤ）等が適宜実施される。
【００５０】
また、修正後連続パラメータＴｔｍｐが離散化され、それにより修正後離散パラメータθｔｍｐが算出される。そして、プラントモデルにおいて、修正後離散パラメータθｔｍｐを用いてモデル出力ｙ＿hatが算出される。
【００５１】
以上説明した適応制御処理等は、エンジンＥＣＵにあらかじめ格納された演算プログラムに従い実行される。以下、エンジンＥＣＵの処理内容を説明する。
【００５２】
図３は、空燃比Ｆ／Ｂ制御を実現するための燃料噴射制御処理を示すフローチャートであり、本処理は所定のクランク角度毎（本実施の形態では３０°ＣＡ毎にエンジンＥＣＵにより実行される。
【００５３】
図３において、先ずステップＳ１０１では、例えば基本噴射量マップ等を用い、その都度のエンジン回転数や負荷等の運転状態パラメータに基づいて基本噴射量ＴＰを算出する。続くステップＳ１０２では、空燃比Ｆ／Ｂ制御の実行条件判定を実施する。実行条件判定処理を詳しく説明すれば、図４に示すように、ステップＳ１１１では、Ａ／Ｆセンサ１３が使用可能な状態であるか否かを判別する。具体的には、Ａ／Ｆセンサ１３が活性化していること、フェイルしていないこと等を判別する。また、ステップＳ１１２では、エンジン水温が所定温度（例えば７０℃）以上であるか否かを判別する。そして、Ａ／Ｆセンサ１３が使用可能であり且つエンジン水温が所定温度以上であれば、ステップＳ１１３に進む。ステップＳ１１３，Ｓ１１４では、回転速度とエンジン負荷（例えば吸気管負圧）とをパラメータとする運転領域マップを参照し、今現在のエンジン運転状態がＦ／Ｂ実行領域にあるかどうかを判定する。そして、Ｆ／Ｂ実行領域にあれば、ステップＳ１１５で実行フラグをＯＮし、実行領域になければ、ステップＳ１１６で実行フラグをＯＦＦする。その後本処理を終了する。
【００５４】
図３の説明に戻り、ステップＳ１０３では実行フラグがＯＮであるか否かを判別する。実行フラグがＯＦＦであればステップＳ１０４に進み、空燃比補正係数ＦＡＦを１．０とする。この場合、空燃比Ｆ／Ｂは行われないこととなる。また、実行フラグがＯＮであればステップＳ１０５に進み、空燃比補正係数ＦＡＦの算出処理を実行する。最後に、ステップＳ１０６では、空燃比補正係数ＦＡＦやその他各種の補正係数（例えば冷却水温補正係数、学習補正係数、加減速時の補正係数等）により基本噴射量ＴＰを補正し、最終の燃料噴射量ＴＡＵを算出する。
【００５５】
次に、前記ステップＳ１０５で実行される空燃比補正係数ＦＡＦの算出サブルーチンを図５のフローチャートを基に説明する。
【００５６】
図５において、ステップＳ２１０では、同定実行条件の判定処理を実行する。本実施の形態では、エンジン排気管に設けた触媒の劣化検出処理が実行されていること、又はエンジン運転状態が定常状態であることを同定実行条件としている。ここで、触媒の劣化検出手法は種々提案されているが、その劣化検出に際し所定周期で空燃比を強制的に振幅させることを要件とするものであれば、任意の検出手法が適用できる。例えば、空燃比を理論空燃比を中心にして所定周期で振幅させ、その時の触媒下流側の空燃比変化（応答周期など）をモニタする。そしてそのモニタ結果から触媒劣化状態を判定する。こうした触媒の劣化検出は、空燃比を振幅させてもエミッション悪化が生じにくい運転状態下で実施されるのが通常である。故に、エミッションを良好に維持するには、触媒の劣化検出に合わせて同定を行うのが望ましい。
【００５７】
また、エンジン回転速度の単位時間当たりの変化量が所定値以下であること、及び負荷の単位時間当たりの変化量が所定値以下であることからエンジン運転状態が定常であるかどうかを判別する。
【００５８】
すなわち、図６に示すように、ステップＳ２１１では、今現在触媒の劣化検出処理が実行されているか否かを判別し、続くステップＳ２１２，Ｓ２１３では、今現在のエンジン運転状態を判定して定常状態にあるか否かを判別する。そして、触媒の劣化検出処理が実行されている場合、又はエンジン運転状態が定常である場合に、ステップＳ２１４に進んで同定フラグをＯＮする。またそれ以外の場合、ステップＳ２１５に進んで同定フラグをＯＦＦする。
【００５９】
但し、同定実行条件を、触媒劣化検出の実行時であることのみとしたり、逆に触媒劣化検出の実行時であることを条件から外したりすることも可能である。また、エンジンの定常判定処理において、所定時間以上の間、定常判定が行われない場合に、エンジン回転速度や負荷変化量の定常境界値を拡張側に変更してもよい。
【００６０】
図５の説明に戻り、ステップＳ２２０では、同定フラグ＝ＯＮであるか否かを判別し、同定フラグ＝ＯＮであることを条件にステップＳ２３０，Ｓ２４０を実行する。すなわち、ステップＳ２３０では、同定実行時の目標空燃比の設定を行う。このとき、同定実行時の目標空燃比設定は、元々の目標空燃比に振幅±０．０５、周期１．４ｓｅｃの矩形波又は正弦波を加算するものとする。但し、振幅や周期といった信号の性質は他のものでも良く、設定したプラントパラメータ数の１／２のＰＥ（persistently exciting）性を有する信号であればよい。振幅はＳＮ比を良くするため、可能な限り大きく設定する。ここで、パラメータの逐次同定を可能にするためには、制御対象の動特性を十分に励起する入力ｕを与える必要があり、同定すべきパラメータの個数がｐ個の場合において、入力ｕ（ｔ）がｐ／２個以上の周波数成分を含むようにする。これにより、パラメータの推定値が真値に収束する。
【００６１】
その後、ステップＳ２４０では、同定処理を実行する。ステップＳ２５０では、制御量算出処理を実行する。
【００６２】
図７は、前記図５のステップＳ２４０で実行される同定処理サブルーチンを示すフローチャートである。
【００６３】
図７において、ステップＳ３０１では、同定用入出力の直流成分（トレンド）の除去処理及び同定出力用のノイズ除去処理を実施する。具体的には、制御器２０にて算出されるＦＡＦやＡ／Ｆセンサ１３の検出空燃比に対してトレンド除去処理が実施される。この除去処理は、直流成分除去が可能なものであれば任意で良く、例えば移動平均処理などが実施される。また、Ａ／Ｆセンサ１３の検出空燃比に対してなまし処理（ＬＰＦ処理）が実施される。
【００６４】
ステップＳ３０２では、制御対象の実出力と離散プラントモデルの出力とから同定誤差ｅを算出する。その後、ステップＳ３０３，Ｓ３０４では、同定誤差ｅに対してなまし処理（ＬＰＦ処理）と不感帯処理とを実行する。これにより、同定誤差ｅ＿tildeが算出される。
【００６５】
そして、ステップＳ３０５では、上記（１１）式等で規定したパラメータ調整則に従い、パラメータ適応処理を実行する。これにより、制御対象の実出力と離散プラントモデルの出力との誤差をゼロに近づけるようにして離散パラメータθ＿hatの推定値が算出される。
【００６６】
その後、ステップＳ３０６では、前記算出した離散パラメータの推定値θ＿hatに対して上記（５）式により連続化の処理を実行し、連続パラメータ（時定数の推定値Ｔ＿hat）を算出する。そして続くステップＳ３０７では、連続パラメータのノミナル値Ｔｍからの誤差分ΔＴ＿hatに対してリミット処理を実行する。更に、ステップＳ３０８では、連続パラメータの誤差分ΔＴ＿hatの学習処理を実行する。
【００６７】
図８は、前記図７のステップＳ３０７で実行されるリミット処理を示すフローチャートである。
【００６８】
図８において、ステップＳ３１１では、連続パラメータである時定数の推定値Ｔ＿hatからノミナル値Ｔｍを減算して誤差分ΔＴ＿hatを算出する。ノミナル値Ｔｍは、マップ等を参照して算出されるパラメータマップ値であり、特にその都度のエンジン運転状態に基づいて算出される。続くステップＳ３１２では、誤差分ΔＴ＿hatに対してＬＰＦ処理を実行する。なお、ΔＴ＿hatに対するＬＰＦ処理は、他のタイミングで実施されても良く、例えば当該ΔＴ＿hatにガードをかけた後に実施されても良い。
【００６９】
ステップＳ３１３では、誤差分ΔＴ＿hatが正側のガード値δｐよりも大きいか否か、又は誤差分ΔＴ＿hatが負側のガード値−δｍよりも小さいか否かを判別する。ΔＴ＿hat≦δｐで且つΔＴ＿hat≧−δｍの場合、ステップＳ３１４に進み、カウンタｐｃｎｔ，ｍｃｎｔを０にクリアする。更に、ステップＳ３１５では、ガード値δｐ，δｍとして初期値δｐ０，δｍ０をセットする。
【００７０】
また、ΔＴ＿hat＞δｐであるか、又はΔＴ＿hat＜−δｍであれば、ステップＳ３１６に進み、誤差分ΔＴ＿hatをガード値δｐ，δｍでガードする。このとき、ΔＴ＿hat＞δｐの場合にはΔＴ＿hat＝δｐとし、ΔＴ＿hat＜−δｍの場合にはΔＴ＿hat＝−δｍとする。
【００７１】
その後、ステップＳ３１７では、カウンタｐｃｎｔ，ｍｃｎｔの加算処理を実行する。このとき、ΔＴ＿hat＞δｐの場合にはカウンタｐｃｎｔをインクリメントし、ΔＴ＿hat＜−δｍの場合にはカウンタｍｃｎｔをインクリメントする。ステップＳ３１８では、ｐｃｎｔ＞Ｎであるか、又はｍｃｎｔ＞Ｎであるかを判別する。そしてＹＥＳであればステップＳ３１９に進み、ガード値δｐ，δｍを増加側に変更する。このとき、ｐｃｎｔ＞Ｎの場合にはガード値δｐにΔδｐを加算し（δｐ＝δｐ＋Δδｐ）、ｍｃｎｔ＞Ｎの場合にはガード値δｍにΔδｍを加算する（δｍ＝δｍ＋Δδｍ）。つまり、所定時間継続してΔＴ＿hatがガード値に張り付いている場合にガード値が拡げられる。
【００７２】
なお、所定時間継続してΔＴ＿hatがガード値に張り付いている場合、又はΔＴ＿hatがガード値に対して絶対値で所定値以上大きい場合に、適応機構をリセット（初期化Δθ＝０）するものとしてもよい。また、ΔＴ＿hatの所定回数前と現在の値との差が所定値以上である場合に、適応機構をリセット（初期化Δθ＝０）するものとしてもよい。
【００７３】
図９は、前記図７のステップＳ３０８で実行される学習処理を示すフローチャートである。
【００７４】
図９において、ステップＳ３３１では学習可否判定処理を実行する。この判定処理では、同定誤差がゼロ付近で収束していることを条件に修正後連続パラメータＴｔｍｐにより学習用パラメータＴａの算出が行われ、その実施状況に応じて学習フラグが操作される（詳細は後述する）。そして、ステップＳ３３２で学習フラグ＝ＯＮであると判別されると、ステップＳ３３３では学習値の更新処理を実行する。
【００７５】
かかる場合、ステップＳ３３３の学習値更新処理では、後述する図１０の学習可否判定処理において算出された時定数の学習用パラメータＴａとノミナル値Ｔｍとの偏差ΔＴが算出され、そのΔＴ値が、スタンバイＲＡＭ内に既に記憶されている前回学習値に書き換えられて格納される。例えば、図１２に示すように、エンジン負荷と回転数を測定可能な所定範囲内で各々４分割して合計１６個の領域を設け、それらの領域毎に学習値ΔＴを割り当てる。図中、学習値ΔＴに付した添え字は領域番号である。なお、エンジン負荷と回転数とをパラメータとする各スタンバイＲＡＭ領域は各々均等に分割されていても良いが、不等分割されていても良い。
【００７６】
図１０は、前記図９のステップＳ３３１で実行される学習可否判定処理を示すフローチャートである。
【００７７】
図１０において、ステップＳ３５１では、今現在、各種燃料増量や燃料カットが実施されていないか否かを判別する。そして、燃料増量等の実施中であればステップＳ３５２に進み、フラグｊｆｇ、カウンタｊｃｎｔを共に０にクリアする、プラントモデルの可変パラメータθｐとしてその時の同定値θ＿hatを設定する、学習フラグをＯＦＦするといった初期化処理を実行する。
【００７８】
また、各種燃料増量や燃料カットが実施されていなければ、ステップＳ３５３でフラグｊｆｇが１であるか否かを判別し、ｊｆｇ＝０の場合には更にステップＳ３５４で同定誤差ｅ＿tildeの絶対値が所定値ε１よりも小さいか否かを判別する。そして、｜ｅ＿tilde｜≧ε１であればそのままステップＳ３５９に進み、学習フラグをＯＦＦする。また、｜ｅ＿tilde｜＜ε１であれば、ステップＳ３５５でフラグｊｆｇに１をセットすると共にカウンタｊｃｎｔを０にクリアする。すなわち、同定誤差ｅ＿tildeが所定範囲内に収束していることでフラグｊｆｇがセットされる。なお、ステップＳ３５４の条件が所定時間継続して満たされない場合には所定値ε１を大きくし、同条件が満たされたら該ε１を初期値に戻す構成であっても良い。
【００７９】
その後、ステップＳ３５６では、前記リミット処理後のΔＴ＿hatを基に算出した連続パラメータＴ＿hat（＝ΔＴ＿hat＋ノミナル値Ｔｍ）を修正後連続パラメータＴｔｍｐとし、続くステップＳ３５７では、該Ｔｔｍｐを離散化して修正後離散パラメータθｔｍｐを算出する。そして、ステップＳ３５８では、修正後離散パラメータθｔｍｐをプラントモデルの可変パラメータθｐとして設定する。これにより、プラントモデルにおいて、修正後離散パラメータθｔｍｐを用いてモデル出力が算出される。ステップＳ３５９では、学習フラグをＯＦＦする。
【００８０】
一方、フラグｊｆｇに１がセットされた後は、ステップＳ３５３からステップＳ３６０に進み、ステップＳ３６０では、同定誤差ｅ＿tildeの絶対値が所定値ε２よりも小さいか否かを判別する。このとき、ε２≧ε１である。そして、｜ｅ＿tilde｜＜ε２であれば、ステップＳ３６３でカウンタｊｃｎｔの加算処理を実行する。続くステップＳ３６４ではｊｃｎｔ≧Ｎであるか否かを判別し、ｊｃｎｔ≧Ｎとなるまではそのまま処理を終了する。
【００８１】
そして、ｊｃｎｔ≧Ｎになると、ステップＳ３６５でフラグｊｆｇを０にクリアし、ステップＳ３６６では、プラントモデルの可変パラメータθｐをその時の同定値θ＿hatに戻す。また、ステップＳ３６７では、修正後連続パラメータＴｔｍｐを学習用パラメータＴａとし、ステップＳ３６８では、学習フラグをＯＮする。
【００８２】
また、ｊｃｎｔ≧Ｎとなる前に｜ｅ＿tilde｜≧ε２となる場合（すなわちステップＳ３６０がＮＯのとなる場合）には、ステップＳ３６１でフラグｊｆｇを０にクリアすると共に、ステップＳ３６２でプラントモデルの可変パラメータθｐをその時の同定値θ＿hatに戻す。
【００８３】
図１１は、前記図５のステップＳ２５０で実行される制御量算出処理を示すフローチャートである。
【００８４】
図１１において、ステップＳ４０１では、ノミナルパラメータマップを参照し、現在のエンジン運転状態（負荷と回転数）に基づいてノミナルパラメータ（時定数のノミナル値Ｔｍ）を算出する。また、ステップＳ４０２では、スタンバイＲＡＭ内に格納されている学習値ΔＴｎを読み出すと共に、前記ノミナルパラメータを加算して連続パラメータ（時定数）を算出する。このとき、現在のエンジン運転状態（負荷と回転数）に基づいて図１２のマップ内の学習値ΔＴｎがスタンバイＲＡＭより読み出される。
【００８５】
その後、ステップＳ４０３では、前記算出した連続パラメータに対して離散化処理を実行し、離散パラメータθｃを算出する。ステップＳ４０４では、例えば極配置Ｆ／Ｂ演算手法により、離散パラメータθｃを用いて空燃比補正係数ＦＡＦの演算を実施する。ただし、極配置Ｆ／Ｂ演算手法については本発明の要部でなくその詳細は本願出願人による先の出願（例えば、特開平２００２−８１３４４号公報等）に開示されているため、詳しい説明は割愛する。
【００８６】
以上詳述した本実施の形態によれば、同定誤差に基づいて逐次推定された離散パラメータを連続パラメータに変換し、その連続パラメータに対してリミット処理等の所定の数値処理を施すようにした。そして、リミット処理後の修正後連続パラメータを故障診断等に利用するようにした。この場合、離散時間→連続時間の変換がなされた修正後連続パラメータは物理的意味が理解しやすいパラメータであるため、故障診断等を容易に実施することができる。また、連続パラメータを対象にリミット処理が適正に行われることで、故障診断精度を向上させることができる。
【００８７】
パラメータリミット処理では、連続パラメータと連続時間ノミナルパラメータとの差分を所定範囲内に制限するようにしたため（図８のリミット処理参照）、ノミナル値からの誤差分だけに制限がかけられ、連続パラメータに対して効果的な数値処理を施すことができる。
【００８８】
更に、リミット処理後の修正後連続パラメータを再度離散化し、該離散化により算出した修正後離散パラメータに基づき、プラントモデル出力を逐次算出したり、制御器２０において制御対象への制御入力を決定したりするようにした。この場合、誤同定の防止や制御ゲインの発散防止等を図ることができる。これにより、高精度な空燃比フィードバック制御が実現できる。
【００８９】
また、修正後連続パラメータを学習する構成としたため、制御対象とプラントモデルとの差異が好適に解消され、その都度現実の動特性に追従した制御が可能となる。このとき、プラントモデル出力と制御対象の実出力との誤差が所定範囲内である場合に学習値を更新するようにしたため（図１０の学習可否判定処理参照）、適正な同定が行われていることを条件に学習処理が行われ、学習値の信頼性が高められる。
【００９０】
なお、本発明は上記実施の形態の記載内容に限定されず、例えば次のように実施しても良い。
【００９１】
上記実施の形態では、適応機構において、離散パラメータの推定値θ＿hatについてノミナル値θｍからの誤差分Δθ＿hatを算出する構成としたが、これを変更しても良い。例えば、適応機構において、離散パラメータの推定値θ＿hatについてノミナル値θｍと学習値（スタンバイＲＡＭに記憶されている時定数の学習値を離散化したもの）との加算値からの誤差分Δθ＿hatを算出する。
【００９２】
また、リミット処理において、連続パラメータの推定値Ｔ＿hatについてノミナル値Ｔｍからの誤差分ΔＴ＿hatを所定範囲内に制限する構成としたが、これを変更しても良い。例えば、連続パラメータの推定値Ｔ＿hatについてノミナル値Ｔｍと学習値（スタンバイＲＡＭに記憶されている時定数の学習値）との加算値からの誤差分ΔＴ＿hatを所定範囲内に制限する。
【００９３】
学習値の更新に際し、今回算出した学習値ΔＴｎになまし処理を施して今回学習値を算出するようにしても良い。すなわち、
ΔＴｎ（ｋ）＝（ｍ−１）／ｍ＊ΔＴｎ（ｋ−１）＋１／ｍ＊ΔＴｎ
としてその都度の学習値ΔＴｎを算出する。これにより、学習値の急激な変化が抑制され、安定した制御が実現できる。誤同定やノイズ等による制御の乱れも抑制できる。
【００９４】
上記実施の形態では、連続パラメータの推定値のノミナル値からの偏差を学習値として記憶保持する構成としたが、連続パラメータの推定値をそのまま学習値とすることも可能である。
【図面の簡単な説明】
【００９５】
【図１】発明の実施の形態におけるエンジン制御システムの概略を示す構成図である。
【図２】ノミナルモデルスケジューラと離散化処理の概要を示すブロック図である。
【図３】燃料噴射制御処理を示すフローチャートである。
【図４】Ｆ／Ｂ実行条件判定処理を示すフローチャートである。
【図５】空燃比補正係数算出処理を示すフローチャートである。
【図６】同定実行条件判定処理を示すフローチャートである。
【図７】同定処理を示すフローチャートである。
【図８】リミット処理を示すフローチャートである。
【図９】学習処理を示すフローチャートである。
【図１０】学習可否判定処理を示すフローチャートである。
【図１１】制御量算出処理を示すフローチャートである。
【図１２】学習値のマップデータを示す図である。
【符号の説明】
【００９６】
１０…エンジン、１３…Ａ／Ｆセンサ、２０…制御器。
【図１】
2006118428.tif 000014
【図２】
2006118428.tif 000015
【図３】
2006118428.tif 000016
【図４】
2006118428.tif 000017
【図５】
2006118428.tif 000018
【図６】
2006118428.tif 000019
【図７】
2006118428.tif 000020
【図８】
2006118428.tif 000021
【図９】
2006118428.tif 000022
【図１０】
2006118428.tif 000023
【図１１】
2006118428.tif 000024
【図１２】
2006118428.tif 000025