特許第5697899号(P5697899)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ フィッシャー−ローズマウント システムズ,インコーポレイテッドの特許一覧

特許5697899連続的にスケジュールされるモデルパラメータに基づく適応制御装置
<>
  • 特許5697899-連続的にスケジュールされるモデルパラメータに基づく適応制御装置 図000019
  • 特許5697899-連続的にスケジュールされるモデルパラメータに基づく適応制御装置 図000020
  • 特許5697899-連続的にスケジュールされるモデルパラメータに基づく適応制御装置 図000021
  • 特許5697899-連続的にスケジュールされるモデルパラメータに基づく適応制御装置 図000022
  • 特許5697899-連続的にスケジュールされるモデルパラメータに基づく適応制御装置 図000023
  • 特許5697899-連続的にスケジュールされるモデルパラメータに基づく適応制御装置 図000024
  • 特許5697899-連続的にスケジュールされるモデルパラメータに基づく適応制御装置 図000025
  • 特許5697899-連続的にスケジュールされるモデルパラメータに基づく適応制御装置 図000026
  • 特許5697899-連続的にスケジュールされるモデルパラメータに基づく適応制御装置 図000027
  • 特許5697899-連続的にスケジュールされるモデルパラメータに基づく適応制御装置 図000028
  • 特許5697899-連続的にスケジュールされるモデルパラメータに基づく適応制御装置 図000029
  • 特許5697899-連続的にスケジュールされるモデルパラメータに基づく適応制御装置 図000030
  • 特許5697899-連続的にスケジュールされるモデルパラメータに基づく適応制御装置 図000031
  • 特許5697899-連続的にスケジュールされるモデルパラメータに基づく適応制御装置 図000032
  • 特許5697899-連続的にスケジュールされるモデルパラメータに基づく適応制御装置 図000033
  • 特許5697899-連続的にスケジュールされるモデルパラメータに基づく適応制御装置 図000034
  • 特許5697899-連続的にスケジュールされるモデルパラメータに基づく適応制御装置 図000035
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5697899
(24)【登録日】2015年2月20日
(45)【発行日】2015年4月8日
(54)【発明の名称】連続的にスケジュールされるモデルパラメータに基づく適応制御装置
(51)【国際特許分類】
   G05B 13/02 20060101AFI20150319BHJP
   G05B 13/04 20060101ALI20150319BHJP
【FI】
   G05B13/02 A
   G05B13/04
【請求項の数】21
【全頁数】40
(21)【出願番号】特願2010-129897(P2010-129897)
(22)【出願日】2010年6月7日
(65)【公開番号】特開2011-3186(P2011-3186A)
(43)【公開日】2011年1月6日
【審査請求日】2013年6月3日
(31)【優先権主張番号】12/489,106
(32)【優先日】2009年6月22日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】512132022
【氏名又は名称】フィッシャー−ローズマウント システムズ,インコーポレイテッド
(74)【代理人】
【識別番号】100079049
【弁理士】
【氏名又は名称】中島 淳
(74)【代理人】
【識別番号】100084995
【弁理士】
【氏名又は名称】加藤 和詳
(74)【代理人】
【識別番号】100085279
【弁理士】
【氏名又は名称】西元 勝一
(72)【発明者】
【氏名】ピーター ウォイズニス
(72)【発明者】
【氏名】テレンス エル.ブレビンズ
(72)【発明者】
【氏名】ウィルヘルム ケー.ウォイズニス
【審査官】 稲垣 浩司
(56)【参考文献】
【文献】 特開2004−326781(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 13/02 − 13/04
(57)【特許請求の範囲】
【請求項1】
プロセスの制御に使用される適応制御装置であって、
前記プロセスからプロセス変数入力を受信するための制御装置の入力と、
前記プロセスの制御に使用されるプロセス制御信号を提供するための制御装置の出力と、
前記プロセス変数入力と一組の制御装置の調整パラメータとを使用するプロセス制御の計算を実行することにより、前記プロセス制御信号を決定する、前記制御装置の入力と前記制御装置の出力との間に連結される制御ブロックと、
一組の格納されたプロセスモデルパラメータ値とプロセス状態変数とを使用する前記プロセスの稼動中に、前記一組の制御装置の調整パラメータの新しい値を決定する調整ブロックと、
を含み、
前記一組の格納されたプロセスモデルパラメータ値は、前記プロセス状態変数によって定義される複数の異なるプロセス稼動点のそれぞれについて、特定のプロセスモデルパラメータのプロセスモデルパラメータ値を含み、
前記調整ブロックは、
前記複数の異なるプロセス稼動点のそれぞれにおいて、前記プロセスモデルパラメータの前記格納されたプロセスモデルパラメータ値を決定するモデル適応ルーチンと、
前記プロセス状態変数値と前記一組の格納されたプロセスモデルパラメータ値とに基づいて、特定のプロセス稼動点の特定のプロセスモデルパラメータ値を決定するモデルパラメータ決定ルーチンと、
前記決定されたプロセスモデルパラメータ値と、格納された調整則とから、前記特定のプロセス稼動点の前記一組の制御装置の調整パラメータを決定する、制御装置の調整パラメータルーチンと、を含む、適応制御装置。
【請求項2】
前記モデル適応ルーチンは、補間技術を使用して、前記一組の格納されたプロセスモデルパラメータ値に関連付けられる前記複数の異なるプロセス稼動点のうちの2つ以上を使用して、プロセス稼動点におけるプロセスモデルパラメータ値を決定するための補間関数パラメータを格納し、前記モデルパラメータ決定ルーチンはさらに、前記補間技術の前記補間関数パラメータを使用して、前記特定のプロセス稼動点の前記特定のプロセスモデルパラメータ値を決定する、請求項1に記載の適応制御装置。
【請求項3】
特定のプロセス稼動点の新しいプロセスモデルパラメータ値を決定し、前記特定のプロセス稼動点の前記新しいプロセスモデルパラメータ値に基づいて、前記一組の格納されたプロセスモデルパラメータ値を変化させることで、前記モデル適応ルーチンは前記一組の格納されたプロセスモデルパラメータ値を更新する、請求項1または2に記載の適応制御装置。
【請求項4】
前記特定のプロセス稼動点の前記新しいプロセスモデルパラメータ値を、前記一組の格納されたプロセスモデルパラメータ値のうちの1つとして格納し、前記一組の格納されたプロセスモデルパラメータ値内のプロセスモデルパラメータ値の数が閾値に達する場合に、前記一組の格納されたプロセスモデルパラメータ値を取捨選択することによって、前記特定のプロセス稼動点の前記新しいプロセスモデルパラメータ値に基づいて、前記モデル適応ルーチンは前記一組の格納されたプロセスモデルパラメータ値を更新する、請求項1〜3のいずれか一項に記載の適応制御装置。
【請求項5】
前記モデル適応ルーチンは、補間技術と、前記特定のプロセス稼動点における前記新しいプロセスモデルパラメータ値とを使用する前記一組の格納されたプロセスモデルパラメータ値のうちの前記2つ以上を変化させる、請求項1〜4のいずれか一項に記載の適応制御装置。
【請求項6】
前記モデル適応ルーチンは、前記特定のプロセス稼動点における前記新しいプロセスモデルパラメータ値に基づいて、線形補間技術を使用する前記一組の格納されたプロセスモデルパラメータ値のうちの前記2つ以上を変化させる、請求項1〜5のいずれか一項に記載の適応制御装置。
【請求項7】
前記モデル適応ルーチンは、前記特定のプロセス稼動点における前記新しいプロセスモデルパラメータ値に基づいて、非線形補間技術を使用する前記一組の格納されたプロセスモデルパラメータ値のうちの前記2つ以上を変化させる、請求項1〜6のいずれか一項に記載の適応制御装置。
【請求項8】
前記制御ブロックはフィードフォワード/フィードバック制御技術を実施する、請求項1〜7のいずれか一項に記載の適応制御装置。
【請求項9】
前記一組の制御装置の調整パラメータは、フィードフォワード調整パラメータとフィードバック調整パラメータとを含む、請求項1〜8のいずれか一項に記載の適応制御装置。
【請求項10】
前記特定のプロセスモデルパラメータは、プロセスゲイン、無駄時間または時定数を含む、請求項1〜9のいずれか一項に記載の適応制御装置。
【請求項11】
前記制御ブロックは、比例、積分、微分制御技術を実施する、請求項1〜10のいずれか一項に記載の適応制御装置。
【請求項12】
プロセスを制御するために使用されるプロセス制御装置を適応調整する方法であって、前記方法は、
前記プロセスの稼動中に、前記プロセスの稼働の状態を定義する一組のモデルパラメータ値を格納するステップであって、前記モデルパラメータ値のそれぞれは、異なるプロセス稼動点における前記プロセスの稼働の状態を定義し、前記異なるプロセス稼動点のそれぞれは、異なるプロセス状態変数値に関連付けられる、ステップと、
前記プロセスの稼動中にプロセスデータを収集し、1つ以上のプロセス稼動点の新しいモデルパラメータ値を決定するために、前記収集されたプロセスデータに基づいて、プロセスモデルを実行するステップと、
前記新しいモデルパラメータ値で、前記格納された一組のモデルパラメータ値を更新するステップと、
前記格納された一組のモデルパラメータ値を使用して、前記プロセス制御装置を調整するステップと、を含み、前記調整するステップは、
前記一組の格納されたモデルパラメータ値および前記プロセス状態変数のうちの2つ以上を使用する現在のプロセス稼動点の現在のモデルパラメータ値を決定するステップと、 一組の制御装置の調整パラメータ値を定義するために、前記決定された現在のモデルパラメータ値およびプロセスモデルに基づく調整則とを使用するステップと、
前記決定された一組の制御装置の調整パラメータ値で、前記プロセス制御装置を更新するステップと、を含む、プロセス制御装置を適応調整する方法。
【請求項13】
前記格納された一組のモデルパラメータ値に関連付けられる前記異なるプロセス稼動点のうちの2つ以上を使用して、プロセス稼動点におけるモデルパラメータ値を決定するための補間関数を使用するステップと、前記補間関数を使用する前記現在のプロセス稼動点の前記現在のモデルパラメータ値を決定するステップと、を含む、請求項12に記載のプロセス制御装置を適応調整する方法。
【請求項14】
前記格納された一組のモデルパラメータ値を更新するステップは、特定のプロセス稼動点の新しいモデルパラメータ値を決定するステップと、前記特定のプロセス稼動点の前記新しいモデルパラメータ値に基づいて、前記格納された一組のモデルパラメータ値を変化させるステップとを含む、請求項12または13に記載のプロセス制御装置を適応調整する方法。
【請求項15】
前記格納された一組のモデルパラメータ値に関連付けられる前記異なるプロセス稼動点のうちの2つ以上の間のプロセス稼動点におけるモデルパラメータ値を決定するための補間関数を格納するステップを含み、前記特定のプロセス稼動点の新しいプロセスモデルパラメータ値に基づいて、前記補間関数を変化させることによって、前記格納された一組のモデルパラメータ値を更新するステップを含む、請求項14に記載のプロセス制御装置を適応調整する方法。
【請求項16】
前記格納された一組のモデルパラメータ値に関連付けられる前記異なるプロセス稼動点のうちの2つ以上の間のプロセス稼動点におけるプロセスモデルパラメータ値を決定するための補間関数を格納するステップを含み、前記補間関数に基づいて、かつ、前記特定のプロセス稼動点の前記新しいプロセスモデルパラメータ値に基づいて、前記異なるプロセス稼動点の前記格納されたモデルパラメータ値のうちの1つ以上を変化させることにより、前記格納された一組のモデルパラメータ値を更新するステップを含む、請求項14または15に記載のプロセス制御装置を適応調整する方法。
【請求項17】
前記新しいモデルパラメータ値で前記格納された一組のモデルパラメータ値を更新するステップは、前記特定のプロセス稼動点の前記新しいモデルパラメータ値を、前記格納された一組のモデルパラメータ値のうちの1つとして格納するステップと、前記格納された一組のモデルパラメータ値内の前記モデルパラメータ値の数が閾値に達する場合に、前記格納された一組のモデルパラメータ値を取捨選択するステップと、を含む、請求項14〜16のいずれか一項に記載のプロセス制御装置を適応調整する方法。
【請求項18】
前記新しいモデルパラメータ値で前記格納された一組のモデルパラメータ値を更新するステップは、前記特定のプロセス稼動点の前記新しいモデルパラメータ値に基づいて、その関連付けられるプロセス稼動点を変更させずに、前記格納された一組のモデルパラメータ値のうちの2つ以上を変化させるステップを含む、請求項14〜17のいずれか一項に記載のプロセス制御装置を適応調整する方法。
【請求項19】
一組の制御装置の調整パラメータ値を定義するための調整則に基づいて、前記決定された現在のモデルパラメータ値およびプロセスモデルを使用するステップは、一組のフィードフォワードおよびフィードバックの制御装置の調整パラメータ値を定義するステップを含む、請求項18に記載のプロセス制御装置を適応調整する方法。
【請求項20】
プロセスを制御するためにコンピュータプロセッサ上で実行するための適応プロセス制御装置システムであって、
コンピュータメモリと、
前記プロセスからのプロセス変数入力と、一組の制御装置調整パラメータとに基づいて、前記プロセスの制御で使用するためのプロセス制御信号を決定する制御アルゴリズムを実行するために、前記コンピュータメモリに格納され、前記コンピュータプロセッサ上で実行可能なプロセス制御装置ルーチンと、
一組の格納されたプロセスモデルパラメータ値とプロセス状態変数とを使用する前記プロセスの稼動中に、前記一組の制御装置の調整パラメータの新しい値を決定するために、前記コンピュータメモリに格納され、前記コンピュータプロセッサで実行可能である調整ルーチンであって、前記一組の格納されたプロセスモデルパラメータ値は、前記プロセス状態変数によって定義される複数の異なるプロセス稼動点のそれぞれに対する、特定のプロセスモデルパラメータのプロセスモデルパラメータ値を含む、調整ルーチンとを含み、前記調整ルーチンは、
前記複数の異なるプロセス稼動点のそれぞれにおける前記プロセスモデルパラメータの前記格納されたプロセスモデルパラメータ値を決定するモデル適応ルーチンと、
前記プロセス状態変数値と前記一組の格納されたプロセスモデルパラメータ値とに基づいて、特定のプロセス稼動点の特定のプロセスモデルパラメータ値を決定するモデルパラメータ決定ルーチンと、
前記決定されたプロセスモデルパラメータ値および格納された調整則からの前記特定のプロセス稼動点の前記一組の制御装置の調整パラメータを決定する制御装置の調整パラメータルーチンと、を含む、適応プロセス制御装置システム。
【請求項21】
前記モデル適応ルーチンは、前記一組の格納されたプロセスモデルパラメータ値に関連付けられる前記複数の異なるプロセス稼動点のうちの2つ以上を使用して、プロセス稼動点におけるプロセスモデルパラメータ値を決定するための補間関数パラメータを格納し、前記モデルパラメータ決定ルーチンはさらに、前記補間関数パラメータを使用する前記特定のプロセス稼動点の前記特定のプロセスモデルパラメータ値を決定する、請求項20に記載の適応プロセス制御装置システム。
【発明の詳細な説明】
【技術分野】
【0001】
本特許は、概して、プロセス制御技術に関し、より詳細には、適応調整を実行するために、異なる状態パラメータ値における種々の理想的なプロセスモデルパラメータの補間から導き出される、連続的にスケジュールされるモデルパラメータ値を使用する、比例、積分、微分(PID)制御装置等の、モデルに基づく適応制御装置に関する。
【背景技術】
【0002】
例えば、大規模な製造プラントおよび化学精製工場等の、自動化されたシステムにおいて適応プロセス制御を実行するために、論理に基づく制御装置切り替えストラテジーを利用することが、当該分野で公知である。論理に基づく切り替えストラテジーについての例示的な説明が、例えば、Morse,F.M.PaitおよびS.R.Wellerの「Logic−Based Switching Strategies for Self−Adjusting Control」IEEE 33rd Conference on Decision and Control,(Dec.1994)(非特許文献1)に述べられている。論理に基づく制御装置切り替えストラテジーを、プリルーティングされた制御装置に基づく手法、および、プロセスモデル識別器とパラメータ化された制御装置とに基づく手法として概して識別される、2つの手法のうちの1つとして分類することが、有用であり得る。
【0003】
プリルーティングされた制御装置調整は、基本的に、一組の事前定義された対象となり得る制御装置に含まれる、対象となり得る制御装置を評価する。制御装置の実行が十分であると識別されると、評価は完了する。プリルーティングされた制御装置調整システムでは、制御装置の構造におけるいくつかの要件を設計し、これを課すことが、比較的簡単である。しかし、プリルーティングされた制御装置調整システムのこの利点も、事前定義された一組から最適な制御装置を選択するために膨大な時間がかかり、調整時間に対するパフォーマンスがそもそも低いことから、利点とはいえなくなっている。
【0004】
プロセスモデル識別器およびパラメータ化された制御装置は、概して、出力推定誤差を生成する識別器、および内部制御装置を含む、2つ以上のパラメータに依存するサブシステムを含む。稼動中、適切に定義されたモデルの一組の推定に基づいて、制御信号は、制御されているプロセスと通信される。識別器に基づくパラメータ化された制御装置は、「周期的切り替え』の概念に基づいて、制御装置切り替えストラテジーを実現する。周期的切り替えは、プロセスへさらなる励起信号を送信しても、しなくても、使用可能である。
【0005】
プロセス制御適応のための周期的切り替えの手法について、一読の価値ある論文が、K.S.NarendraおよびJ.Balakrishnanの「Adaptive Control Using Multiple Models」IEEE Transactions on Automatic Control,Vol.42,No.2,pp.177〜187(Feb.1997)(非特許文献2)に記載されている。この論文は、複数のパラメータおよび並列で動作するN個の識別モデルを特徴とし、かつ複数の制御装置パラメータに対応するモデルパラメータを有する制御装置を含む、プロセス制御システムを開示している。いずれかの時点において、切り替え規則によって、単一のモデルおよび対応するパラメータ化された制御装置を選択し、プロセス制御のために対応する制御入力を使用する。識別モデルは、プロセスの要件、オペレータのニーズ、およびいずれかの他の適切な考慮によって、固定パラメータモデルあるいは適応パラメータモデルとしてもよい。固定パラメータモデル制御システムは、未知のプロセスのパラメータと十分に近いパラメータによって特性化される、少なくとも1つのモデルがあることを保証する、単純かつ効率的な手段を提供する。
【0006】
固定パラメータモデルを使用する、周期的切り替えに基づくプロセス制御システムは迅速な適応速度を実現するが、プロセス制御装置内において、多数のモデルを設計および格納する必要がある。さらに、固定モデルは、有限の数のプロセス環境または条件しか、的確に表せない。プロセスの正確性を漸近的に向上させるには、適応モデルを使用する必要がある。
【0007】
実用的な面において、モデルに基づく切り替えストラテジーでは、適正なプロセス近似化のために必要とされるモデルの数が多いため、多くの問題が発生する。例えば、固定モデルに基づく自己調整器を含む、単純な単一入力、単一出力(SISO)システムは、十分なプロセスパフォーマンスを実現するためには、何百もの固定モデルを含むことが当然考えられ得る。このように、例えば、多変数システム等のようにシステムの複雑度が増すと、カスタマイズされた固定モデルの必要数は指数関数的に増大し、このため、システムのセットアップ時間およびシステム格納要件は増大する。より効率的な解決法には、特定のプロセスモデル構造および制御装置の種類の考慮が必要となり、単純な切り替えストラテジーを、より複雑な手順に置き換えることを提起する。
【0008】
ダーリン(Dahlin)制御装置のモデルに基づく修正された手法が、Gendronの論文、「Improving the Robustness of Dead−Time Compensators for Plants with Unknown of Varying Delay」、Control Systems 90 Conference(Helsinki 1990)(非特許文献3)で説明されている。本論は、無駄時間の変動に基づいてプロセス適応を行うための、単純な一次+無駄時間プロセスモデルを開示している。制御装置は、単純なモデル切り替えに依存するのではなく、むしろ異なる無駄時間によって特徴付けられる一組のモデルの加重和に基づいて、プロセスモデルを利用する。その一組内の各モデルはプロセス出力の予測を生成し、予測誤差の単関数として、対応する重みが自動的に調節される。プロセスゲインおよび無駄時間の変動をダーリン制御装置の構成に含めるように基本的な概念が拡張されている。
【0009】
一般的に、適応PID適応制御装置を設計するための普及している手法は、直接的手法、および間接的または識別器に基づく手法を含む。上述のように、切り替えストラテジーを使用する制御システムに対して、識別器に基づく手法が効果的であり、適応切り替えPID制御装置を設計するための適切な出発点となる。モデルパラメータの変化を追跡する再帰的最小2乗法(RLS)推定器と連結される、識別器に基づく適応PID制御装置の提供が公知である。再帰的識別器に関連付けられる典型的な問題は、初期パラメータの選択の困難さ、不十分な励起、フィルタリング、パラメータワインドアップ、およびパラメータ追跡速度の遅さを含む。これらの変数の複雑性および正確な推定の計算に関連付けられる困難のため、プロセスモデルを簡略化することによって、公知の、識別器に基づく適応PID制御装置のパフォーマンスを向上し得ることは、当該分野において良く理解されよう。
【0010】
簡略化された識別器に基づく適応制御装置の典型的な説明が、AstromおよびHagglundによって、「Industrial Adaptive Controllers Based on Frequency Response Techniques」、Automatica,Vol.27,No.4,pp.599〜609(1991)(非特許文献4)に記載されている。本稿は、概して、周波数領域におけるプロセスモデル適応、および、設定点変更および自然外乱に応答する調整を実行するように設計された制御装置を開示する。より詳細には、帯域通過フィルタをプロセス入力および出力に適用することで、調整周波数が選択され、自動調整器によって、フィルタの周波数が定義される(オンデマンド調整器)。自動調整器は、適応調整器の動作以前にリレーオシレーション技術を使用して最終期間を定義し、簡略化されたRLS推定器を使用して、調整周波数のプロセスゲインを定義する。自動調整器は、プロセスゲインの変化を追跡する機能を有する。しかし、無駄時間または時定数の変化が生じると、追跡される点は、最終ゲインおよび最終期間を正確に推定するのに必要な−πフェーズを示さなくなるため、制御装置調整の信頼性は低下する。
【0011】
さらに、いくつかの調整周波数を適用し、フェーズ−πで周波数を定義するために補間器を使用することによる、調整の改善が公知である。あるいは、フェーズ−πを追跡するために、単一の調整周波数を適用し、各調整サイクル後に周波数を調整することもできる。両調整器モデルは、以降の設定点変化および自然外乱を受け入れて、制御装置の出力または設定点の入力において外部励起を注入し得る。こうした自動調整器は、先行技術のサイズおよびセットアップの制約はないものの、ずっと複雑になっている。
【0012】
さらに、両調整器モデルは、共に、2つのパラメータのみ、すなわち、最終ゲインおよび最終期間のみを認識する原始的な適応モデルを使用している。こうした、単純な2パラメータ適応モデルを組み込む調整器モデルは、ジーグラー・ニコルズ調整またはいくつかの類似の修正に適しているが、内部モデル制御(IMC)またはラムダ調整が好適な用途には不適である。フィードフォワード制御の静的ゲインを決定するために、単純なRLS識別器を使用し得るが、このRLS識別器の手法では、適切なフィードフォワード制御に必要なプロセスフィードフォワード動特性は得られない。さらに、フィードフォワード信号は負荷外乱であり、摂動信号をフィードバックパスに注入できないため、この手法は、不十分な励起という問題を抱えている。
【0013】
フィードフォワード適応の別の解決法が、BristolおよびHansenにより、米国特許番号第5,043,863号、「Multivariable Adaptive Feedforward Controller」(特許文献1)において、開示されている。本特許は、負荷外乱を含むように設計される微分方程式に基づくプロセスモデルを開示する。このプロセスモデルは測定されたプロセスデータに基づいて定期的に更新され、ここで、変動は、射影法によって実現されるモーメント関係および制御関係によって特徴付けられる。概して、この得られる解決法は非常に複雑であり、上述のRLS識別器手法と同程度の大きな励起を必要とする。さらに、この得られた解決法は、フィードフォワード制御の場合のみに適したもので、フィードバックのある適応制御装置には適用できない。
【先行技術文献】
【特許文献】
【0014】
【特許文献1】米国特許番号第5,043,863号
【非特許文献】
【0015】
【非特許文献1】Morse,F.M.PaitおよびS.R.Weller:「Logic−Based Switching Strategies for Self−Adjusting Control」IEEE 33rd Conference on Decision and Control,(Dec.1994)
【非特許文献2】K.S.NarendraおよびJ.Balakrishnan:「Adaptive Control Using Multiple Models」IEEE Transactions on Automatic Control,Vol.42,No.2,pp.177〜187(Feb.1997)
【非特許文献3】Gendron:「Improving the Robustness of Dead−Time Compensators for Plants with Unknown of Varying Delay」Control Systems 90 Conference(Helsinki 1990)
【非特許文献4】AstromおよびHagglund:「Industrial Adaptive Controllers Based on Frequency Response Techniques」Automatica,Vol.27,No.4,pp.599〜609(1991)
【非特許文献5】F.G.Shinskey,Process Control Systems: Application,Design and Tuning、4th ed.,McGraw−Hill,New York,1996
【発明の概要】
【発明が解決しようとする課題】
【0016】
適応制御装置は、制御装置調整のための制御装置調整パラメータを進行するために使用される、特定の一組のプロセスモデルパラメータを決定するために、公知の適応制御方法の種々の欠陥を克服するように、連続的にスケジュールされるプロセスモデルパラメータの補間を実行する。具体的には、本明細書中に記載される適応制御装置は、プロセス稼動点の広い範囲で有効なフィードバックおよびフィードフォワードの適応PID制御調整に、一貫した解決法を提供できる。以下に開示される適応フィードバック/フィードフォワードのPID制御装置で実現される主な目的には、適応時間の短縮、PID調整則の使用に課される制約の低減、設計の簡略化、およびプロセス励起の低減による適応の達成が含まれる。
【課題を解決するための手段】
【0017】
より詳細には、本明細書中に記載される、状態に基づく適応PID制御装置は、プラントの種々の稼動領域において適応調整を実行するために使用する適切なプロセスモデルの決定のための新しい技術を使用し、より詳細には、種々のプラントの稼動領域または点における、連続的にスケジュールされたプロセスモデルパラメータ更新を可能にするプロセスモデルパラメータ決定技術を使用する。この連続的にスケジュールされるプロセスモデルパラメータ更新方法の使用により、プロセスの稼動領域または稼動点の変更に基づいて実行される適応調整手順中にPID制御装置で使用される調整パラメータ間のより円滑な遷移が実現され、これによって、全体制御が向上する。
【0018】
概して、本明細書中に記載される、状態に基づく適応PID制御装置は、プロセスの制御のための一組の制御装置調整パラメータを決定するために、一組のプロセスモデルパラメータを使用する。稼動中、適応制御装置は、プロセスのために一組の事前定義されたプロセスモデルをまず確立することによって、適切な一組のプロセスモデルパラメータを適応的に決定し、ここで、各プロセスモデルは、状態変数によって定義されるように、異なるプロセス稼動領域またはプロセス稼動点に対応する。適応制御装置は、次に、プロセスプラントの現在の稼動点または領域に最も適用可能または正確な特定のプロセスモデル(つまり、特定の一組のプロセスモデルパラメータ値)を決定するために、調整手順中にこれらの事前定義されたプロセスモデルを使用し、制御装置を調整するためにこれらのプロセスモデルパラメータ値を使用する。プロセスモデルパラメータ値はプロセス領域を基にして決定してもよく、または、状態変数によって定義されるように、プロセスの現在の稼動点に基づいて連続的スケジュールにより決定されてもよい。
【0019】
プロセスモデルの事前定義された組のそれぞれを決定するために、適応制御装置は、ノット位置とも称される、特定のプロセス稼動点または領域において、プロセスモデルの特定の一組のプロセスモデルパラメータを決定する適応ルーチンを定期的に実行する。ある場合において、事前定義されたプロセスモデルの特定のものは、プロセス変数計測に基づいて、こうした事前定義されたプロセスモデルパラメータのどの組がプロセスの最適なモデリングを実行するかを決定するために、モデルの種々の異なる事前設定パラメータ値を試行することによって、決定し得る。より詳細には、適応ルーチン時において、適応制御装置は、モデルパラメータに対応する一組の事前定義された初期化値から選択されたそれぞれの値に、各モデルパラメータを設定し得る。このため個々のモデルの評価には、モデル2乗誤差、またはノルムの算出を含む。ノルムは、評価されるモデルに表される全パラメータに割り当てられ得る。モデルの反復評価が実行され、累積されたノルムはパラメータ毎に計算される。累積されたノルムは、モデル評価中にパラメータに割り当てられた全てのノルムの合計である。その後、これらのノルムに基づいて、モデルパラメータ毎に適応パラメータ値が計算される。ある場合において、適応パラメータ値は、パラメータに対して計算されるノルムに基づいて各パラメータに割り当てられる初期化値の加重平均であり得る。
【0020】
このように、種々の異なるプロセスモデルは、状態変数の異なる値に対して決定されてもよく、これらのプロセスモデルは格納されてもよい。その後、プロセス制御装置の調整に使用される特定のプロセスモデルが、プロセスの現在の稼動点(例えば状態変数の現在の値)に基づいて、異なる格納されたプロセスモデルのプロセスモデルパラメータ値の間の補間によって決定され得る。
【0021】
適応PID制御装置の別の実施形態は、プロセス制御装置を調整するためのシステムを含む。システムは、ハードウェアまたはソフトウェアのいずれか、あるいはそれらの任意の所望の組み合わせによって実施され得る。システムは、複数のプロセス領域または点のそれぞれと関連付けられる少なくとも1つのプロセスモデルによって、複数のプロセス領域または複数のプロセス稼動点、および複数のプロセスモデルを定義する、プロセスと通信可能に連結され、かつ状態変数を含むモデルの組の構成要素を含む。各プロセスモデルは複数のモデルパラメータを含み、各モデルパラメータは、それぞれのパラメータに割り当てられる一組の既定の初期値から選択される値を有する。各領域は、その領域で定義される一組の標準的なパラメータ値を含み得る。誤差生成器が、モデルの組の構成要素およびプロセス出力に通信可能に連結される。ある場合において、誤差生成器は、プロセスモデル出力およびプロセス出力の間の差を表すモデル誤差信号を生成する。モデル評価構成要素は、モデル2乗誤差をモデルに表されるパラメータ値に結びつけるようにプロセスモデルに対応するモデル2乗誤差を算出するために、誤差生成器に通信可能に連結される。パラメータ補間器は、プロセスモデルに表されるパラメータのために適応プロセスパラメータ値を計算するためのモデル評価構成要素に通信可能に連結される。制御装置更新構成要素は、パラメータ補間器出力に連結される入力および制御装置に連結される出力を有する。制御装置更新構成要素は、適応サイクルの終了時に、制御装置への適応制御装置パラメータ値を更新する。適応制御装置パラメータ値は、計算される適応プロセスパラメータ値から導出され得る。
【0022】
個々のプロセス要件により、全てのプロセスパラメータが所定の適応サイクルで適応されるわけではないことを理解されたい。1つのみのプロセスパラメータが変化した、または少なくとも全てのプロセスパラメータが変化したわけではないことを信ずる理由が存在する場合、制限された適応が所望であり得る。例えば、経験的な証拠によって、所定の期間(例:適応サイクル間の経過時間)において、プロセスゲインパラメータは、他のパラメータが実質的に変化していない間も変化し得ることが示され得る。この場合、プロセススーパーバイザは、プロセスゲインパラメータのみを適応させることによって、制限された適応サイクルを開始し得る。次に、適応されたプロセスゲインパラメータに応答してプロセス制御装置が更新される。フィードバック/フィードフォワード制御装置は、さらに、適応制御装置の一方法を実行してもよく、これにより、上記と同様に、モデルの組はプロセスに対してコンパイルされ、各モデルは、各モデルの一意のモデル2乗誤差を決定することによって評価される。適応(例えばゲイン)パラメータ値が、既定の初期化パラメータ値のそれぞれの加重和に基づいて計算される。初期化値は、正規化された適合係数によって重み付けされる。適応プロセス(例えばゲイン)パラメータが計算されると、制御装置は、これに従って更新または調整される。
【0023】
一実施形態において、調整手順中に、適応制御装置は、まず、状態変数の現在の値に基づいて制御装置を調整するために使用される一組のプロセスパラメータ値を決定する。このプロセス中に、適応制御装置は、プロセスが現在稼動している領域を決定するために状態変数を使用してもよく、適応ルーチン中にその領域に関連付けられるまたはその領域に適用可能なものとして以前に決定されたプロセスモデルに基づいて、一組のモデルパラメータを取得し得る。あるいは、調整手順は、連続的にスケジュールされるパラメータ技術を使用して適用可能なプロセスモデルパラメータを決定してもよく、ここで、調整手順は、状態変数の現在の値より大きいおよび小さい状態変数あるいは変数に対して決定された、一組の1つ以上の以前に決定されたプロセスモデルまたはプロセスモデルパラメータ、ならびにこれらのプロセスモデルの間の点で決定された補間関数を識別する。
【図面の簡単な説明】
【0024】
図1】適応調整を実行するために、領域的または連続的なプロセスモデルのパラメータのスケジューリングを使用する適応制御装置を含む、例示的なプロセス制御システムの概略ブロック図である。
図2】適応ユーザインタフェースアプリケーションおよび適応制御装置を含む1つ以上の制御ループの間の相互作用を示す、概略図である。
図3】適応制御装置調整を実行するために、領域的または連続的なプロセスモデルスケジューリングを使用する、例示的な適応PID制御ブロックの概略図である。
図4図1図3の制御装置における領域を元にしてモデルパラメータが決定され得る方法を示すグラフである。
図5】プロセスモデルを定義する一組のノットに格納される、プロセスモデルパラメータ値、および、連続的スケジュールに基づいてプロセスモデルを決定するために使用されるプロセス状態変数の間の関係を示すグラフである。
図6】格納されたプロセスモデルを定義する一組のノットの間で定義された一組の状態変数サブ領域を示すグラフである。
図7】パラメータ補間を使用して、新しく適応されたノットを以前に格納された一組のノットに統合させる様態を示すグラフである。
図8】格納された一組のノットの間のプロセスモデルパラメータを決定するために使用され得る補間関数の異なる値を示す。
図9A】その稼動がプロセスモデルパラメータの補間に基づく、適応フィードバック/フィードフォワードPID制御装置の機能ブロック図である。
図9B図9Aの適応フィードバック/フィードフォワードPID制御装置内で動作するモデルの組のエレメントの機能ブロック図である。
図9C】適応フィードバック/フィードフォワードPID制御装置の一実施形態の流れ図である。
図10】フィードバックとフィードフォワードループの両方を含む一次+無駄時間プロセスモデルの概念を表す。
図11】それぞれ、3つの値のうちの1つを仮定し、さらに、モデルスキャンを実行するための一例としてのシーケンスを示す、3つのパラメータ、DT、TcおよびGainによって特徴付けられるモデルの組を示す。
図12図3の装置等の適応制御装置によって実施され得る調整手順を実行する例示的なルーチンまたは方法のフローチャートである。
図13図12の調整手順で使用される1つ以上のプロセスモデルパラメータを決定する例示的なルーチンまたは方法のフローチャートである。
図14】特定のプロセス稼動点における新しい一組のプロセスモデルパラメータ値を決定するための適応手順を実行する例示的なルーチンまたは方法のフローチャートである。
図15図12の調整ルーチンで連続的にスケジュールされるモデルパラメータ選択の実行で使用される、一組の格納されたプロセスモデルパラメータ値を定義する1つ以上のノットを更新する例示的なルーチンまたは方法のフローチャートである。
【発明を実施するための形態】
【0025】
次に図1を参照すると、例えば、精製所、薬剤製造プロセス、発電所等の工業的プロセスの制御に使用されるプロセス制御システム10は、通信ネットワーク18を経由して、データヒストリアン14および1つ以上のホストワークステーションまたはコンピュータ16(それぞれディスプレイスクリーン17を有する、パーソナルコンピュータ、ワークステーション等のいずれかの種類であり得る)に接続されるプロセス制御装置12を含む。制御装置12はさらに、入力/出力(I/O)カード28および29を経由してフィールドデバイス20〜27に接続される。通信ネットワーク18は、例えば、イーサネット(登録商標)通信ネットワークまたは任意の他の適したまたは望ましい通信ネットワークにしてもよいが、データヒストリアン14は、データを格納するための、任意の所望の種類のメモリおよび任意の所望のまたは公知のソフトウェア、ハードウェアまたはファームウェアを有する、いずれかの所望の種類のデータ収集ユニットにしてもよい。例えば、Emerson Process Managementが販売するDeltaV(商標)制御装置であってもよい、制御装置12は、例えば、標準的な4〜20mAデバイスおよび/または、FOUNDATION(登録商標) Fieldbusプロトコル、HART(登録商標)プロトコル等の任意のスマート通信プロトコルに関連付けられる、任意の所望のハードウェアおよびソフトウェアを使用して、フィールドデバイス20〜27に通信可能に接続される。
【0026】
フィールドデバイス20〜27は、プロセス内の関数を用いた計算結果に基づく動作および/またはプロセス変数の計測を行うセンサ、バルブ、トランスミッタ、位置決め装置等の任意の種類のデバイスにしてもよいが、I/Oカード28および29は、任意の所望の通信または制御装置プロトコルに準拠する任意の種類のI/Oデバイスにしてもよい。図1に示される実施形態では、フィールドデバイス20〜23は、アナログ回線を通してI/Oカード28と通信する標準的な4〜20mAデバイスである、または、アナログおよびデジタルを組み合わせた回線を通してI/Oカード28と通信するHARTデバイスであるが、フィールドデバイス24〜27は、Fieldbusプロトコル通信を使って、デジタルバスを通してI/Oカード29と通信するFieldbusフィールドデバイス等のスマートデバイスである。一般的に、Fieldbusプロトコルは、フィールドデバイスを相互接続する2線のループまたはバスへ標準化された物理的インタフェースを提供する全デジタル、シリアル、双方向の通信プロトコルである。Fieldbusプロトコルは、実際に、これらのフィールドデバイスが、プロセスファシリティ全体に配置される位置におけるプロセス制御関数を(Fieldbusプロトコルによって定義される機能ブロックを使用して)実行し、全体制御ストラテジーを実行するためにこれらのプロセス制御関数の実行前および実行後に互いに通信することを可能にする、プロセス内のフィールドデバイスのローカルエリアネットワークを提供する。当然、フィールドデバイス20〜27は、任意の有線または無線の標準またはプロトコル、および現在存在するまたは将来的に進行される任意のプロトコルを含む、任意の他の所望の標準またはプロトコルに準拠し得る。
【0027】
制御装置12は、制御ループまたは制御ループの一部を含み、コンピュータ読み出し可能メモリ12bに格納され、かつ任意の所望の方法でプロセスを制御するために、デバイス20〜27、ホストコンピュータ16およびデータヒストリアン14と通信し得る、1つ以上のプロセス制御ルーチンを実行または実施するプロセッサ12aを含む。なお、本明細書中に記載される制御ルーチンまたはエレメントのうちのいずれかは、そのように所望される場合には、フィールドデバイス20〜27のうちの1つ以上において等、異なる制御装置または他のデバイスのプロセッサによって、実行または実施されるその一部を有し得ることに留意されたい。同様に、プロセス制御システム10内で実行される、本明細書中に記載される制御ルーチンまたはエレメントは、ソフトウェア、ファームウェア、ハードウェア等を含む任意の形態を取り得る。プロセス制御エレメントは、例えば、任意のコンピュータ読み出し可能な媒体に格納されるルーチン、ブロックまたはモジュールを含む、プロセス制御システムの任意の部分または一部であってもよい。サブルーチン、サブルーチンの部分(コードの行等)等の、モジュールまたは制御手順の任意の部分であってもよい、制御ルーチンは、ラダー論理、逐次関数チャート、機能ブロック図、または任意の他のソフトウェアプログラミング言語または設計パラダイムの使用等、任意の所望のソフトウェアフォーマットで実行され得る。同様に、制御ルーチンは、例えば、1つ以上のEPROM、EEPROM、特定用途向け集積回路(ASIC)、または任意の他のハードウェアまたはファームウェアエレメント内にハードコードされてもよい。またさらに、制御ルーチンは、グラフィカル設計ツールまたは任意の他の種類のソフトウェア/ハードウェア/ファームウェアのプログラミングまたは設計ツールを含む、任意の設計ツールを使用して設計され得る。このため、制御装置12は、任意の所望の方法で制御ストラテジーまたは制御ルーチンを実行するために構成され得ることを理解されたい。
【0028】
一実施形態において、制御装置12は、通常、機能ブロックと称されるものを使用する制御ストラテジーを実行するが、ここで、各機能ブロックは、全体制御ルーチンの一部(例えばサブルーチン)であり、プロセス制御システム10内でプロセス制御ループを実行するために、他の機能ブロック(リンクと呼ばれる通信によって)と共に動作する。機能ブロックは、典型的に、トランスミッタ、センサまたは他のプロセスパラメータ計測デバイスに関連付けられるもの等の入力機能、PID、ファジー論理等の制御を実行する制御ルーチンに関連付けられるもの等の制御機能、または、プロセス制御システム10内のいくつかの物理的機能を実行するための、バルブ等のいくつかのデバイスの動作を制御する出力機能のうちの1つを実行する。当然ながら、機能ブロックの複合型および他の種類が存在する。機能ブロックは、典型的にはこれらの機能ブロックが、標準的な4〜20mAデバイス、ならびにHARTおよびFieldbusデバイス等のいくつかの種類のスマートフィールドデバイスに使用され、または関連付けられる場合に、制御装置12に格納、および実施されてもよく、あるいは、いずれかの種類のFieldbusデバイスによる場合に、フィールドデバイス自体によって格納および実行されてもよい。制御システムは、本明細書では機能ブロック制御ストラテジーを使用して記載されているが、制御ストラテジーまたは制御ループあるいはモジュールは、さらに、ラダー論理、逐次関数チャート等の他の仕様を使用して、または任意の他の所望のプログラミング言語またはパラダイムを使って、実行または設計され得る。
【0029】
図1の分解ブロック30に示されるように、制御装置12は、多数の制御ループ32、34および36を含んでもよく、制御ループ36は、適応制御ルーチンまたはブロック38を含むものとして示されている。各制御ループ32、34および36は、典型的には、制御モジュールと称される。制御ループ32、34および36は、バルブ等のプロセス制御デバイス、温度および圧力トランスミッタ等の計測デバイス、またはプロセス制御システム10内の任意の他のデバイスに関連付けられ得る、適切なアナログ入力(AI)およびアナログ出力(AO)機能ブロックに接続される単一入力/単一出力PID制御ブロックを使用して、単一のループ制御を実行するものとして図示されている。図1の例示的なシステムにおいて、適応制御ループ36は、例えば、計測または感知されたプロセスのパラメータを示す、センサ信号等の計測信号に基づき、プロセスの物理的パラメータを制御するバルブおよび/または他の制御デバイスを使用してプロセスの稼動を制御する際等、制御ループ36のオンライン動作中にプロセスを制御する際に、PID制御ルーチンの動作を適応させるために、調整パラメータを適応的に決定し、典型的なPIDルーチンへこれを提供するように動作する、適応PID制御ブロック38を含む。制御ループ32、34および36は、1つのAI機能ブロックに通信可能に接続される入力、および1つのAO機能ブロックに通信可能に接続される出力を有するPID制御を実行するものとして示されているが、制御ループ32、34および36は、単一の入力よりも多い入力および単一の出力よりも多い出力を含むこともでき、さらに、これらの制御ループの入力および出力は、他の種類の入力を受信し、他の種類の出力を提供するために、任意の他の所望の機能ブロックまたは制御エレメントに接続し得る。さらに、適応制御ブロック38は、PI制御、PD制御、中立ネットワーク制御、ファジー論理制御、モデル予測制御、または任意の種類のフィードフォワード/フィードバック制御技術等の、制御ストラテジーを実行し得る。
【0030】
PID機能ブロックおよび適応PID機能ブロック38等の図1に示される機能ブロックは、それ自体で1つ以上の相互接続された機能ブロックとして実行可能であり、制御装置12により実行することが可能であり、あるいは、代替的に、ワークステーション16のうちの1つ、I/Oデバイス28および29のうちの1つ、またはフィールドデバイス24〜27のうちの1つ等の、任意の他の適したプロセッシングデバイスに、一部または全体を配置し、かつ実施し得ることを理解されたい。
【0031】
図1に示されるように、ワークステーション16のうちの1つは、適応制御ブロック38または制御ループ36を設計、制御、実行および/または表示するために使用される1つ以上の適応サポートルーチンを含み得る。例えば、ワークステーション16は、以下に詳述するように、制御ブロック38等に対する設定点および他の調整を行うために、適応制御ループ36またはそのブロックの機能を開始、終了および制御するため、ユーザが適応PID制御ブロック38にパラメータを入力できるようにするユーザインタフェースルーチン40を含み得る。またさらに、ワークステーション16は、適応制御手順の一部として連続的なプロセスモデルパラメータのスケジューリングを実行するために、以下に詳述するように種々の適応機能を実行するルーチンまたはブロック42を含み得る。
【0032】
図2により詳細に示すように、ユーザは、1つ以上の適応制御ルーチン38A...38Nをプロセスプラント内に、および特に制御装置12のうちの1つ以上の内に、セットアップ、構成、およびダウンロードするために、ワークステーション16のうちの1つでインタフェースルーチン40を使用し得る。例えば、ユーザは、(同じまたは異なる制御装置において)適応制御を実行するために異なる制御ループまたはモジュールで別々に動作可能な、複数の異なる適応PID制御ルーチンまたはループ38A、38B、...38Nを作成およびダウンロードするために、ルーチン40を使用し得る。ルーチンまたはループ38A〜38Nはそれぞれ、同じ制御装置12にて格納および動作(実行)されるものとして図2に図示されているが、これらに関連付けられるこれらのルーチンおよびループは、フィールドデバイス内(例えばFieldbusフィールドデバイス内)等の他のデバイス内と同様に、別々の制御装置12内で実施または実行され得る。
【0033】
概して、実行時間中、適応PID制御ルーチン38A、38B等はそれぞれ、一組の異なるプロセス稼動点または領域のそれぞれにおいて、1つ以上のプロセスモデルパラメータ(例えばプロセスゲイン、プロセス無駄時間、プロセス応答時間)の一組の値を決定するために、モデル切り替え技術を実行してもよく、これにより、プロセスのために複数のプロセスモデルを定義する。プロセスモデルパラメータが決定されるプロセス稼動点は、例えば、入力変数、変動変数、出力変数等であってもよい、プロセス状態変数の特定の値によって定義される、またはこれに関連付けられ得る。適応PID制御ブロック38は、次に、適応PID制御ブロック38において格納される、および、これにより実行される1つ以上の調整則に基づいてPID制御装置の調整を実行するために、これらの種々のプロセスモデルを使用する。当然ながら、これらの調整則は、(アプリケーション40を使用して)適応PID制御装置ブロック38が配置されるプロセス制御ループの実行時間中または構成中に、ユーザによって選択され得る。
【0034】
より詳細には、プロセスの稼動中に、適応PID制御ブロック38は、(1つ以上のプロセス入力、出力、外乱等を含む)プロセスデータを収集し、定期的にまたは時々、特定のプロセス稼動点または特定のプロセスの稼動領域で適用可能なプロセスモデルを決定するために、格納されたデータの適応手順を実行する。プロセス稼動点または領域は、プロセス状態変数の値または値の範囲によって定義される、またはこれに関連付けられ得る。プロセスモデルは、次に、制御装置12内のメモリに格納される。時間と共に、プロセス状態変数の異なる値で多くのプロセスモデルが決定される。いくつかの場合において、事前定義されたプロセス状態変数領域の各組で、単一のプロセスモデルが決定および格納され得る。あるいは、異なるプロセスモデルが、状態変数の考えられる全範囲における事前定義されたプロセス状態変数値に対して決定および格納され得る。また別の場合では、異なるプロセス状態変数値で最大数のプロセスモデルを格納してもよく、最大数のプロセスモデルが決定された場合に、新しいプロセスモデルが決定されると、以前に格納されたプロセスモデルを取捨選択または除去し得る。
【0035】
いずれの場合においても、調整手順中に、適応PID制御ブロック38は、プロセス状態変数の現在の値および格納された一組のプロセスモデルに基づいて調整を実行するために使用する、適切なプロセスモデル(例えば、プロセスモデルの一組のプロセスモデルパラメータに対する適切な一組の値)を決定する。選択されたプロセスモデル(および、特に、このプロセスモデルのプロセスモデルパラメータ値)は、その後、新しい調整手順が実行されるまで、制御ルーチンに提供される、および、これによって使用される、一組の制御装置調整パラメータを決定するために、調整アルゴリズムによって使用される。適応制御装置が領域プロセスモデルのパラメータのスケジューリング技術を実行する場合、適応PID制御装置は、プロセスが現在稼動している特定のプロセス稼動領域に対して格納されたモデルパラメータ値であるものとして、適用可能なプロセスモデルパラメータ値を決定する。プロセス稼動領域は、例えば、状態変数値によって定義され得る。適応制御装置が連続的なプロセスモデルパラメータのスケジューリングの技術を実行する場合、適応PID制御装置は、格納された補間関数として、プロセス状態変数の現在の値に基づいて一組の格納されたプロセスモデルのパラメータ値の間を補間することで、プロセスモデルパラメータ値を決定する。このように、いくつかの場合においては、別個の一組のプロセスモデルパラメータは各一組の識別されたプロセス領域に対して決定してもよいが、他の場合では、プロセスモデルパラメータは、プロセス状態変数の全範囲または範囲の一部分で連続的に決定してもよい。連続的にスケジュールされるプロセスモデルパラメータの使用により、プロセスが稼動状態を変化させる場合に、調整パラメータ間のより円滑な遷移を実現する。
【0036】
図3は、本明細書中に記載される適応制御技術を実行するために使用され得る詳細な例示的な適応PID制御機能ブロック38を示す。図3の機能ブロック38は、TRK VAL、TRK IN D、CAS IN(カスケード入力)、BKCAL IN(バック較正入力)、IN(プロセス変数入力)、FF VAL(フィードフォワード値入力)およびADAP STATE(適応状態変数入力)と表示された一組の入力41を含む。図示するように、ほとんどの入力41は、PIDアルゴリズムブロックまたはルーチン42に直接または間接的に接続されるが、ADAP STATE入力は、本明細書では適応調整ブロック44とも称される適応調整アルゴリズムブロックまたはルーチン44に接続される。本明細書ではPID制御ブロックとも称されるPIDアルゴリズムブロック42は、例えば、フィードバック/フィードフォワードのPID制御技術を含む任意の所望のPID制御技術を実行し得る。PID制御ブロック42は、一組の出力46を生成するために適応調整ブロック44によって進行される一組の制御装置調整パラメータと共に、種々の入力41を使用する。図3に図示される出力46は、制御信号出力(OUT)およびバック較正出力(BKCAL OUT)を含む。しかし、他の入力および出力は、所望される場合、制御ブロック38で使用できる。またさらに、PID制御ブロック42は、PID制御ルーチンを実行するものとして、本明細書中に図示および記載されているが、このブロックは、例えば、PI制御、PD制御等を含む、他の種類の制御を代わりに実行することもできる。
【0037】
一般的に、適応調整ブロック44は、定期的に、または時々、ユーザまたは他の非定期的なトリガによって開始されるように、ブロック42による使用のために、一組の制御装置の調整パラメータ値を決定し、プロセスプラントのオンライン制御中に、ブロック42にこれらの調整パラメータ値を提供する。これらの調整パラメータ値は、例えば、ブロック42内のフィードバックPID制御ルーチンによって使用される制御装置ゲイン(K)、積分時間(Ti)および微分時間(Td)の値であり得る。当然、他の調整パラメータを、制御ブロック42によって実行中の制御技術の種類によって、同様に、または代わりに、使用され得る。適応調整ブロック44は、例えば、一組のプロセスモデルパラメータに基づいて調整が実行される様態を決定するために、ユーザまたは構成エンジニアによって選択または構成されてもよい、1つ以上の調整則48を含む。調整則48は、プロセスの現在の状態を推定または定義する一組のモデルパラメータから一組の制御装置調整パラメータ値を決定するために、例えば、ラムダ調整、ジーグラー・ニコルズ調整、IMC調整または任意の他のプロセス特性に基づく調整方法を実行し得る。
【0038】
図3に示されるように、適応調整ブロック44は、例えば、以下に記載される適応技術に従って決定し得る、プロセスモデルパラメータ値を含む種々のデータを格納するための格納ユニット50を含む。より詳細には、異なるモデルパラメータ値は、プロセスの異なる稼動点または領域で決定されてもよく、メモリ50に格納されてもよい。その後、調整手順中に、現在のプロセス稼動点でプロセスを最適に定義する特定の一組のモデルパラメータ値を決定するために、現在の状態変数値と共に、一組以上の格納されたモデルパラメータ値を使用し得る。この決定された一組のモデルパラメータ値は、次に、制御装置に提供される一組の制御装置調整パラメータを決定するために、調整稼動に使用し得る。メモリ50は、さらに、ユーザが制御ブロック38の適応調整機能を可能にしたかどうかを示す、適応可能パラメータ等のユーザが変更可能なデータを保存してもよい。
【0039】
図3にも示されるように、制御装置ブロック38は、適応調整ブロック44によって現在使用されているプロセスモデルに基づいて、PID制御アルゴリズムブロック42へのフィードフォワード変数値(FF VAL)入力を補償し、かつ同ブロックによって使用されることで、より良いフィードフォワードの制御の応答特性を提供し得る。特に、フィードフォワード補償ブロック52および54は、制御を実行するためにPID制御ブロック42によって使用されるフィードフォワード信号を動的に補償するために使用され得る。それぞれ、無駄時間(DT)補償ブロックおよびリード/ラグ(L/L)補償ブロックとして示される、補償ブロック52および54は、フィードフォワード調整パラメータを自動的に実行してもよく、特に、適応調整ブロック44によって識別されたプロセスモデルに基づいて、PID制御ブロック42で使用されるフィードフォワードのゲインおよび動的補償エレメントを調整し得る。一般的に、適応調整ブロック44は、調整または適応手順を開始するためにプロセス状態入力変数(ADAPT STATE)を使用し、所定の稼動領域または点のパラメータ調整範囲を制限するためにこの変数を使用し得る。
【0040】
一実施形態において、適応PID制御ブロック38を含む制御モジュールが制御装置12にダウンロードされる場合、適応制御ブロック38に方向付けされたパラメータは、ヒストリアン(例えば図1のヒストリアン14)に自動的に割り当てられる。標準的なPIDの挙動は、適応調整パラメータがそのデフォルト値にある(つまり、構成エンジニアまたはオペレータによって設定される)場合に観察される。しかし、(メモリ50の適応可能パラメータによって定義されるように)制御ブロック38の適応制御機能が有効になっている場合、および、ユーザまたは構成エンジニアが時間を定常状態に指定している場合、制御ブロック38に内蔵された適応アルゴリズムは、制御装置ゲイン、積分時間(リセットとも呼ばれる)および微分時間(レートとも呼ばれる)パラメータ等の、PID制御装置フィードバック調整パラメータを変更するためにプロセスモデルを適用した後で自動的に更新してもよく、プロセスの現在の稼動領域または稼動点で現在識別されるプロセスモデルに基づいて、最良の制御応答を提供するために、ゲイン、リード、ラグ、および無駄時間パラメータ等のPIDフィードフォワード制御装置の調整パラメータを変更してもよい。いくつかの例において、適応PIDの実行は、現在のプロセスの稼動領域に関連付けられるプロセスモデルに基づいて、PIDフィードバックおよびフィードフォワードの調整パラメータを設定可能であるが、他の例において、適応PIDの実行は、連続的に、つまり、連続的にスケジュールされるプロセスモデルパラメータに基づいて、調整パラメータを決定できるようにし得る。
【0041】
しかし、あらゆる場合において、PID制御ブロック42への調整は、フィードバックパスおよび選択された調整則または規則に対して識別されたプロセスモデルに基づく。制限された一組の調整則48を、適応調整ブロック44に内蔵してもよく、いずれかの時点で使用される特定の調整則は、図2の適応ユーザインタフェースアプリケーション40によって、ユーザにより選択されてもよい。
【0042】
一実施形態において、フィードフォワード制御装置のゲイン、リード、ラグおよび無駄時間の調整パラメータの調整は、以下のように、フィードバックおよびフィードフォワードパスで識別されたプロセスモデルに基づいて自動的に設定され得る。
フィードフォワードリード=フィードバックパス(OUT)における操作されたパラメータの変更に対する時定数
フィードフォワードラグ=フィードフォワードパス(FF VAL)で計測された外乱の変化に対する時定数
フィードフォワードゲイン=−(KL/KM)*修飾子
式中、
KL=フィードフォワードパスにおける負荷外乱入力のプロセスゲイン
KM=フィードバックパスにおける操作された入力のプロセスゲイン
修飾子=0.5〜1の値を有する定数。この値は例えば、ユーザが設定し得る。
フィードフォワード無駄時間=DT2−DT1
式中、
DT2=フィードフォワードパスにおける負荷外乱の変化に対する無駄時間
DT1=フィードバックパスにおける操作された入力の変化に対する無駄時間
【0043】
一実施形態において、適応調整ブロック44によって実行可能な調整の大きさは制限される。例えば、初期の値、つまり、適応が最初に有効になったときの値の、50%のデフォルト制限は、PID調整および動的補償パラメータで使用可能である。適応調整が無効である場合、PIDおよびフィードフォワード調整は、デフォルト稼動範囲に対するその典型的な設定に自動的にリセット可能である。ユーザが適応制限の調整を望む場合には、ユーザは、調整パラメータに対して典型的な値を設定し、状態入力パラメータに関連付けられる処理を定義することによって、適応ユーザインタフェースアプリケーション40を使用して実行し得る。
【0044】
いずれの場合でも、適応制御の実行が有効になっている場合、適応調整ブロック44は、現在の稼動点またはプロセス領域に基づいて、状態入力変数(例えば図3のADAP STATE入力)の値によって定義または表示され得る調整を実行するために使用する一組のモデルパラメータ値を決定する。状態入力変数の現在の値に基づいて一組のモデルパラメータを決定する、いくつかの異なる一般的な方法が、図4図8において、以下に記載される。しかし、プロセスについて記述し、かつPID制御ブロック38の一組の調整パラメータを決定するために、選択された調整則の組によって使用される、一組のモデルパラメータを決定するのと同様に、または代わりに、他の方法を使用可能であることが理解されたい。
【0045】
一般的に、本明細書中に記載される調整手順で使用されるプロセスモデルまたはプロセスモデルパラメータは、領域または連続的なスケジュールを基にして決定され得る。領域を基にして決定される場合、各プロセスモデルパラメータのプロセスモデルパラメータ値は、プロセス状態変数値で定義されるように、プロセスの稼動の特定の領域に対して決定され、特定の領域内にプロセスが入る度にこれらのプロセスモデルパラメータ値が使用される。所定のプロセス領域のための単一の組のプロセスモデルパラメータ値の決定および使用は、例えばゲイン、無駄時間、応答時間等のプロセス特性が特定の領域を通じて同じままである場合、および/または種々のプロセス領域およびこれらの領域の境界の決定または指定が容易である場合に有益である。図4に領域的に決定されたプロセスモデルパラメータ値の使用が図示されており、これは、x軸に沿った状態変数に対する、y軸に沿った特定のプロセスモデルパラメータ値(この場合、プロセスゲイン)のグラフを示している。図4のグラフにおいて、状態変数値に関し、5つの個別のプロセス領域が図示されており、これらの領域は点線で分けられている。したがって、図4に示されるように、プロセスゲイン値(G)は、特定のプロセス領域に関連付けられる全ての点(状態変数xの値)で同じままであるが、領域ごとに変化する。特に、プロセスゲイン値は、x1未満の全ての状態変数値でG1であり、x1およびx2の間の全ての状態変数の値でG2であり、x2およびx3の間の全ての状態変数の値でG3であり、x3およびx4の間の全ての状態変数の値でG4である。この場合、プロセスゲイン値は、x4を超える値では未定義である。さらに、理解されるように、状態変数領域は、長さが均一である必要はない。しかし、以下の記述から理解されるように、特定のプロセス領域で格納されたプロセスパラメータ値は、最初の段階で、このプロセスパラメータの適切な値を決定するために使用される適応手順の異なる実行に基づいて、時により変化し得る。
【0046】
残念ながら、多くの場合において、プロセス特性(例えばプロセスゲイン、プロセス無駄時間、プロセス応答時間等)は、状態変数の比較的小さい変化に対して、素早く変更する可能性がある。実際に、多くの場合において、プロセスゲイン、無駄時間、応答時間または他のプロセス特性の値は、プロセス状態変数の範囲にわたって、ほぼ連続的に、変化または変動し得る。こうした場合、図4に示されるように、プロセス領域に基づく適応の使用はあまり効果的ではない。その代わり、調整目的で使用される適切なプロセスモデルもプロセス状態変数の現在値に基づいて連続的に変化できるように、プロセスモデルパラメータ値を、状態変数の可能な全範囲にわたって連続的に変動できるようにすることが有益である。この技術は、本明細書において、連続的なプロセスモデルのスケジューリングと呼ばれる。こうした場合、適応制御装置は、プロセスの新しい各稼動点で新しいプロセスモデルパラメータを取得することができる機能を有しており、これは、調整システムが、プロセス状態変数の値のわずかなまたは最小限の変化にも応答して、PID制御装置のより良いまたはより正確な調整パラメータを提供できるようにする。
【0047】
連続的なプロセスモデルのスケジューリングを実行する(これによって、プロセス調整中にプロセスモデルのパラメータ値の連続的なスケジューリングを実行する)一方法は、状態変数に対する有限の組の値のそれぞれにおいて、一組のプロセスモデルパラメータ値(つまり、プロセスモデル)を決定し、状態変数の実際のまたは現在の値に基づいて、これらのモデルパラメータ値の間を補間することである。より詳細に、かつ以下に詳述するように、多数の異なるプロセスモデル(それぞれが一組のプロセスモデルパラメータのそれぞれに対する単一の値を有する)を別々に決定および格納可能であり、各プロセスモデルは、状態変数の特定の値に関連付けられる。所望の場合、特定の状態変数値のプロセスモデルは、図9図11について以下に記載されるモデル適応手順を使用して決定され得る。
【0048】
いずれの場合でも、この説明のために、各決定されたプロセスモデルは、「ノット」、すなわち状態変数スペースの既知の点と称される。図5は、状態変数スペースの範囲にわたる(x軸に沿って示される)5つの異なる状態変数値のそのモデルパラメータに対して決定される、単一のモデルパラメータのための、5つのノット(82、84、86、88、90)を示すグラフ80を図示する。同じまたは異なる状態変数値に関して、他のモデルパラメータに対しても同様のノットが存在し得るが、図5には示されていないことを理解されたい。さらに、各ノットにおけるモデルパラメータに関連付けられる上限および下限は、黒塗りの円で、モデルパラメータ値より上および下に示される。上限は、「a」の値として表示され、下限は「b」の値として表示される。したがって、ノット86におけるモデルパラメータ値の上限および下限は、それぞれ86aおよび86bとして表示される。一般的に、ノットに関連付けられる上限および下限は、プロセスパラメータが、調整サイクルによって大きく異なる調整パラメータの生成を防止または低減するために、1つの調整サイクルまたは任意の数のサイクルにわたり、変化し得る最大値および最小値を定義する。上記のように、各特定のノット(各ノット位置は、特定の状態変数値に関連付けられる)におけるモデルパラメータの値はプロセスモデル適応手順によって決定してもよく、このため、異なるモデル適応手順の結果に基づいて、時間により変化可能である。この効果は、調整システムが、周囲温度の変化、湿度の変化、時間経過による装置の劣化等の、プロセス内の変動する条件によって生じ得るプロセスの変化に適応することを可能にする。さらに、ノット位置の間の状態変数値におけるモデルパラメータの値は、以下に詳述する補間技術によって決定され得る。
【0049】
上記のようにノットの概念を使用すると、非線形モデルの特性の定義は、プロセスのモデルパラメータ(例えばゲイン、無駄時間、時定数)が、(プロセス入力、プロセス出力または算出された値であり得る)選択されたプロセス状態変数および事前定義されたノットに対して格納されるモデルパラメータの値に従って、非線形に決定される調整手順において、実行または使用され得る。特に、プロセスモデルパラメータ値は、(図5に示されるように)直線、またはより一般的には非線形曲線によって接続される少なくとも2つのノットを使用して、線形または非線形の近似として定義が可能である。一般的には、状態変数の範囲のエッジを、状態変数の範囲の両端の第1番目のノットに接続する線は、この領域では既知の情報はないので、水平方向、すなわち平坦にすべきである。
【0050】
例えば、ノットに対する新しいモデル適応手順の結果に基づいて、決定されたノットにおけるモデルパラメータ値を変更(例えば図5において水平方向に移動)可能であることが、重要である。この効果は、ノット86付近の矢印92によって、図5に図示される。さらに、いくつかの場合においては、ノットの決定された位置は、モデル適応手順に基づいて変化(例えば図5では垂直方向に移動)可能である。より詳細には、ノットが決定される状態変数の値は、時間と共に変動または変化可能である。この効果は、ノット84の矢印94によって、図5に図示される。しかし、ノットを再決定する場合、ノットが(水平方向または垂直方向のいずれかまたは両方に)移動可能な大きさを制限することが望ましい。例えば、プロセスの稼動中のモデルパラメータ値の変動を低減するために、ノットのモデルパラメータ値が、(図5に示されるように)その制限を越えて、または任意選択で、一回の移動においてその隣接するものの制限を越えて移動できないことを、規則で定められ得る。この制約は、制御装置の調整の安定性を確実にするために役立つ安全策となる。
【0051】
一般的に、例えば、初期の調整パラメータで計算されたモデルパラメータのレベルにおいて、ノット間で定義された初期のプロセスモデルパラメータの補間の曲線は平坦であり得る。この状況において、単一の決定されたノットのモデルパラメータは、より多くのノットが決定されるまで、状態変数の領域に適用される。プロセスの稼動中、こうして追加のノットが決定され、プロセスのために格納され、これらの追加のノットは、調整手順中に使用されるモデルパラメータの値に影響する、またはこの値を変化させる。
【0052】
より詳細には、調整ルーチンの初期化において、(1)例えば、事前定義された数の等しくスペーシングされたノットを定義して、ノットにおける位置およびモデルパラメータ値のいずれかまたは両方を、適応中に更新できるようにする、または(2)適応が実行される際に、ノットの特定の最大数までノットを作成し、次に、その点の後で、各新しい適応後にノット位置およびパラメータ値を更新することが可能である。これらのどちらの場合にも、現在のプロセス状態変数値について、格納された隣接するノットのプロセスモデルパラメータ値の間を補間することにより、状態変数の特定の値の特定のプロセスモデルパラメータが決定される。
【0053】
制御装置の調整の頻繁な変更を回避するために、いずれかの2つの隣接するノットの間の回線または領域は、いくつかの(例えば5つの)等しいセクションに分割し得る。当然、セクション数は、例えば、2つの隣接するノットの間のパラメータ勾配(より高い勾配については、典型的に、より多くのセクションを生成することになる)、ノットの間の距離等によって、調整可能である。この概念は、図6に図示されており、点線で示されるように、ノット82および84の間のスペースはが5つのセクションに分割されている。ここで、ノット82および84の周囲のデフォルトのセクションは対称であり、サイズは2倍にし得る(つまり、ノットに対して両方の方向において等しいサイズにされる)のに対し、他のセクションは等しくスペーシングされる。この種類のグリッドが使用される場合、新しい制御装置調整の手順は、あるサブセクションから別のサブセクションへと状態変数が変化する場合にのみ実行される。この制約には、実際に、ノット位置の間の補間関数の使用に基づいて、状態変数の小さな変化または変動に応答して制御装置が再調整しないようにする、新しい制御装置調整の手順を開始するための、最小限の変化よりも大きい状態変数における変化が必要である。
【0054】
所望される場合、適応結果に補間曲線をより良く適合させるために、両方向にノットセクションを拡大可能である。例えば、図6の最初および最後のノットセクションにおけるモデルパラメータ値は、ノット位置から状態変数制限(上方または下方)に到達するまで、一定を保つ。状態変数が新しいセクションまたはサブセクションに入ると、適応制御装置は、このセクションまたはサブセクションに基づいて新しいプロセスモデルパラメータ値を決定し、これらのプロセスモデルパラメータ値に基づいて新しい制御装置調整パラメータを決定し、状態変数が図6の次のセクションまたはサブセクションに入るまで、これらの調整パラメータを一定に保持する。
【0055】
概して、ノットの少なくとも1つが適応されたものとしてマークされるまで、ノットにおけるモデルパラメータ値が調整ルーチンで適用または使用されないように、調整システムを構成することが望ましい。状態変数が2つのノットの間にある場合、および、ノットのうちの1つのみが適応されたものとしてマークされている場合、調整手順中に適応されたノットの値を使用し得る。状態パラメータが非適応されたノットの間にある場合、状態変数値の両側の最も近い適応されたノットの値は、調整手順中に適用または使用され得る。この技術は、ノットのいくつかまたは全てが、実際の適応手順に基づくモデルパラメータ値をまだ受信していない場合に、最も近い適応されたノットのモデルパラメータ値が調整に使用されるようにする。
【0056】
重要な点として、特定の適応手順は、特定の状態変数の範囲で取得されるデータを使用する。この範囲には1つ以上のノットを含み得るが、データは、典型的には、ノットと一致しない状態変数値で収集される。より詳細には、任意の特定の適応手順で使用されるプロセス変数の計測(入力、出力、変動パラメータ等)は、状態変数の種々の異なる値に対して計測される、またはこの値に関連付けられる。しかし、任意の特定の適応手順の結果は、1つのみの状態変数点に関連付けられるものとして扱われる。適応手順の結果が関連付けられる特定の状態変数点を決定する方法に、状態の変数の中間値、つまり、適応手順中において記録されるまたは適応手順で使用される最大および最小の状態変数値の間の中間点の使用がある。この場合、適応手順実行によって進行されるように、特定のノットの状態パラメータ値は、以下のように決定し得る。
s=(max(si)−min(si))/2
式中、
sは、適応結果に関連付けられる状態変数値であり、
iは、適応手順中に使用される状態パラメータ値である。
【0057】
当然ながら、例えば、状態変数の平均値、状態変数の中央値等を含む、特定の適応手順にも関連付けられる状態変数値を決定する他の方法も使用し得る。
【0058】
所望される場合、適応手順の結果としてモデルパラメータを更新するために、以下の手順を使用し得る。
(1) 適応中に定義された適応状態パラメータが現在のノットにある、または現在のノットに近接している場合、ノットにおけるモデルパラメータ値は、適応結果で更新される。その後、隣接するノットの間のモデルパラメータ値は、更新されたノットパラメータ値を使用して適用される補間関数を使用して決定される。
(2) 適応状態パラメータ値が2つのノットの間にある場合、最も近いノットにおけるモデルパラメータ値は、新しく適応されたモデルパラメータ値を使用して更新され、ノットの間の状態変数値におけるモデルパラメータ値は、補間関数を使用して更新または決定される。
(3) 代替の柔軟性のあるノット位置の手法を適用する場合、各適応手順はノット位置を定義し、最大数の格納されたノットが得られるまで、ノットにおけるモデルパラメータ値が格納される。その時点より後で、新しい適応手順が行われる場合、新しい適応手順は新しいノットを定義し、既存のノットの一組は、例えば、1つの古いノットを除去することにより、刈り込み(pruned)または取捨選択される。削除するよう選択されたノットは、ノットにおけるモデルの質、ノットにおけるモデルが適応された時間(つまり、ノットにおけるモデルの「経過時間」、およびノットから他のノットへの近接性を含む、任意の数の基準に基づいて選択され得る。最後の場合、ノットの密度がより低いエリアよりも、ノットの密度がより高いエリアにおいてノットを刈り込むことが、典型的にはより望ましい。上記の代替例(2)および(3)によって定義される場合において、ノットの間の新しい適応結果に対する接続線の適合を向上させるために、ノットを移動させる関数を定義することが望ましい場合がある。
【0059】
ノット位置または特定のノット位置におけるプロセスモデルパラメータ値を更新する一方法を、ノットの間で使用するための補間関数の定義と共に、図7に示す。図7において、モデルパラメータ値ySは、2つの他の既存のノット位置x1およびs2の間の新しいノット位置xSで決定される。この状況において、新しいノット情報は、ノット位置x1およびx2の間のモデルパラメータ値を決定し、および/またはノットx1およびx2に格納されるモデルパラメータ値を更新または変化させるために、使用される補間関数を更新または変化させるために使用し得る。特に、ノットx1およびx2の間で使用する補間関数を更新し、新しいノット結果ySに基づいて、ノットx1およびx2で格納される既存のモデルパラメータ値y1およびy2を更新するために、新しいノット位置におけるモデルパラメータ値ySおよび新しいノット位置におけるモデルパラメータの補間された値y(i)の差が決定される。この差は、次に、データのより良い適合を得るために、ノットx1およびx2においてy1およびy2の格納された値を変化させるためと同様に、適応された値のより良い適合を得るために、ノットx1およびx2の間で使用し得る新しい補間曲線を決定するために使用し得る。
【0060】
ここで、y(i)は、2つのノット点[x1,y1;x2,y2]の間の直線を定義する線形補間曲線を使用して、決定され得る。
【0061】
【数1】
【0062】
式中、
1、x2:ノットの間のセクションエッジの最も近いノット位置または、代替位置
5: 新しい適応の状態の変数値
1、y2:ノットx1およびx2におけるモデルパラメータ値
y(i):x1およびx2の間の補間されたパラメータ値
5:ノットの間の適応されたモデルパラメータ値
【0063】
代替として、より良い適合を得るために、非線形補間のシグモイド関数を使用し得る。
シグモイド関数の一般的な形式は、以下の通りである。
【0064】
【数2】
【0065】
式中aは、関数の形状を定義するパラメータである。a≦3の値に対しては、f(x)の値は線形補間に非常に近く、a>3の値に対しては、シグモイド関数は、図8に示されるように、明らかに非線形となっている。ノットの間のモデルパラメータ値の補間に対しては、シグモイド関数は、以下の形式で表し得る。
【0066】
【数3】
【0067】
3<a<20の間の値aは、幅広い度合いの非線形性に対してうまく調整する。
ここで、
【0068】
【数4】
【0069】
であり、適応された値と補間された値との間の差は、以下の通りである。
【0070】
【数5】
【0071】
この曲線をデータに適合させる、つまり、Δyを低減するための最良のaの値を決定することは、一組の最小2乗の線形または非線形の適合式を解くことによって実行可能である。しかし、制御ブロックにおいてこの機能性を実行することは、典型的には、過度の時間および計算を必要とするため、プロセス制御装置の算出リソースには複雑すぎる。しかし、補間の適合を改善させるために、1つ以上の簡略化された技術を使用することは可能である。
【0072】
こうした簡略化された一方法において、より良い適合を得るために、2つの調整を逐次的に実行し得る。補間関数のパラメータaを変化させることで、以下のように、非線形適合の第1の調整が実行される。
【0073】
【数6】
【0074】
式中、λは調整可能なフィルタファクタであり、かつ、0<λ<1であり、ここで、最終的に、
【0075】
【数7】
【0076】
となる。
【0077】
第1の調整後、Δy≦|Δymin|である場合に適合が検証され、そうでない場合、第2の調整が実行される。この手順において、Δyminが、試行錯誤によって、通常はモデルパラメータ値の約5〜10%に設定される。第1のステップが十分でない場合には、線形および非線形の適合のために第2の調整が実行される。anewの値を決定した後、隣接するノットにおけるモデルパラメータ値は、以下のように再計算され得る。
【0078】
【数8】
【0079】
任意選択で、線形および非線形適応の両方で、ノットにおけるセクションサイズを変化させるために補間を適用し得る。ノット位置におけるセクションサイズの変更は、補間曲線を新しい状態変数位置における適応された値により近くに持ってくる方向に、実行される。当然ながら、新しい補間関数およびノット位置の値を決定する他の方法も使用可能である。
【0080】
図5図8は、この場合はプロセスゲインである、特定のプロセスモデルパラメータで決定された一組のノットの格納および使用を示すが、制御装置の調整を実行するために使用されているプロセスモデルの他のプロセスモデルパラメータのそれぞれで、同様の一組のノットを決定および格納可能である、または、決定および格納されるであろうことが理解される。こうして、例えば、プロセスゲインモデルパラメータに対する図5図8に図示されるものと同様の(関連付けられるモデルパラメータ値を有する)一組のノットは、プロセス無駄時間およびプロセス時定数等の調整ルーチンで使用されている他のプロセスモデルパラメータのそれぞれに対して決定可能である。さらに、プロセスモデルパラメータ値は、同じノット位置における(つまり、同じ状態変数値における)プロセスモデルパラメータのそれぞれに対して格納され得るが、異なるプロセスモデルパラメータのそれぞれに対するノットは、代替的には、別々に決定および格納されてもよく、このため、異なるプロセスモデルパラメータのそれぞれの異なるプロセス稼動点で決定されてもよい。こうして、プロセスゲインノットは、第1の組のプロセス稼動点で決定および格納されてもよく、プロセス無駄時間ノットは、異なる一組のプロセス稼動点で決定および格納されてもよく、プロセス時定数モデルパラメータは、さらに異なる一組のノット位置で決定および格納されてもよい。またさらに、本明細書中に記載されるプロセスモデル決定ステップは、プロセスモデルパラメータのうちの1つまたは1つより多くに対して、任意の特定の時間で実行され得る。例えば、新しいプロセスモデルパラメータ値は、単一の組のプロセスデータに基づくプロセスモデルパラメータのうちの2つ以上、したがって、同じプロセス稼動点に対して決定されてもよく、または、1つのプロセスモデルパラメータの新しい値は、これらの異なるプロセスモデルパラメータに対する値を異なるノット位置で(つまり、異なるプロセス稼動点で)決定できるようにする、別のプロセスモデルパラメータとは異なるデータから、またはこのデータを使用して、別々に決定されてもよい。
【0081】
図9図11は、状態変数によって定義されるように、プロセスの特定の稼動点または稼動領域におけるプロセスの稼動を記述する一組のモデルパラメータを、短時間で決定するために使用され得る適応方法およびシステムを示す。特に、図9Aは、プロセス110の制御に使用される例示的な適応フィードバック/フィードフォワード(FB/FF)PID制御装置100を示す。フィードバック/フィードフォワード(FB/FF)PID制御装置の一般的な動作は、当業者に公知である。例えば、F.G.Shinskey,Process Control Systems: Application,Design and Tuning、4th ed.,McGraw−Hill,New York,1996(非特許文献5)を参照されたい。より詳細には、図9Aに図示される適応制御装置100(全体または一部が、図3の制御ブロック38によって実施され得る)は、フィードバック(FB)制御装置を組み込むPID制御装置112、および別々のフィードフォワード(FF)制御装置114を含む。これらの2つのエレメントは、図3のPID制御ブロック42によって実行され得る。
【0082】
便宜的に、FBC入力ノード116、FBC出力ノード118、プロセス入力ノード120、プロセス出力ノード122、フィードフォワード制御装置(FFC)入力ノード124、および誤差ノード126を参照して、プロセス制御装置100を説明し得る。当業者は熟知しているように、プロセス設定点信号SPは、数116aによって示される、FBC入力ノード116の第1の入力に適用される。FBC入力ノード116の出力116bは、PID制御装置112の入力112aに連結される。PID制御装置112の出力112bは、FBC出力ノード118の第1の入力118aに連結される。FBC出力ノード118の出力118bは、プロセス入力ノード120の第1の入力120aに連結される。プロセス入力ノード120の出力120bは、プロセス110の第1の入力110aに接続される。プロセス110の出力110bは、プロセス出力ノード122の入力122aに連結される。プロセス出力ノード122の第1の出力122bは、FBC入力ノード116の第2の入力116cに再び送られる。プロセス出力ノード122の第2の出力122cは、誤差ノード126の第1の入力126aに連結される。図9Aはさらに、例えば、u(t)と称され得るプロセス110への入力信号、および、y(t)と称され得る、プロセス110の出力信号を示す。厳密には、u(t)およびy(t)は、プロセスに関して生じる物理的現象の電気的表現である。さらに、外乱信号、d(t)は、FFC入力ノード124の入力124aに表示される。外乱信号d(t)はFFC入力ノード124の第1の出力124bからFFC114の入力114aへ連結され、FFC入力ノード124の第2の出力124cから、プロセス110の第2の入力110cへと伝播する。FFC114の出力114cは、FBC出力ノード118の入力118cに連結される。外乱信号は、例えば、図3のフィードフォワード信号(FF VAL)であってもよい。
【0083】
上記の例示的なフィードバック/フィードフォワードPlDプロセス制御システムのフォーマットおよびレイアウトは、当業者によってよく理解されるであろう。図9Aに図示される追加的な関数構成要素は、例えば、図3の適応調整ブロック44内で実行され得る、例示的な適応フィードバック/フィードフォワードPID制御装置を記述する。詳細には、モデルの組の構成要素128は、外乱信号d(t)およびプロセス入力信号u(t)にそれぞれ連結される、信号入力128aおよび128bを含む。モデルの組の構成要素128の構成要素は、プロセス110を表す一組の数学モデルである。モデルの組の構成要素128の出力128cは、誤差ノード126の入力126bに連結される。誤差ノード126の出力126cは、モデル評価構成要素130の入力130aに連結される。モデル評価構成要素130は、モデルの組の構成要素128によって伝達されるプロセスパラメータ値によって定義されるように、プロセス110をシミュレーションするソフトウェアプログラムであり得る、シミュレータ(図示せず)を含む。モデル評価構成要素130はさらに、数値的オフセットを定義し、数値的オフセットに基づいて次の評価で使用されるモデルを再センタリングすることで、パラメータ推定オフセットを計算し、これを補償するためのセンタリングルーチン(図示せず)を含む。モデル評価構成要素130の出力130bは、パラメータ補間器構成要素132の入力132aおよびスーパーバイザ構成要素134の入力134aに連結される。パラメータ補間器132の出力132bはモデルの組の構成要素128の入力128dに連結され、パラメータ補間器132の出力132cは、制御装置更新構成要素136の入力136aに連結される。制御装置更新構成要素136は、FBC112の第2の入力112cに連結される第1の出力136bを有し、第2の出力136cはFFC114の入力114bに連結される。構成要素128、130、132、134および136の稼動および意義の詳細については、以下に記載する。
【0084】
稼動時において、構成要素128、130、132、134および136を含む、例示的な適応フィードバック/フィードフォワードPID制御装置は、概して、以下に説明するように動作する。適応フィードバック/フィードフォワードPID制御システムは、モデルの組128のモデルによって数学的に記述される。モデルの組128の個々のモデルは、制限された方式で、プロセス110を複製するように意図された既定のパラメータによって定義される。概して、モデルの組128内の各モデルは、パラメータの数、mで定義してもよく、各パラメータは、割り当てられた値の数、nにしてもよい。従って、モデルの組128のモデルの総数はNと等しく、N=mnである。例示的な実施形態において、モデルは、パラメータ無駄時間(DT)、時定数(Tc)およびゲインによって特性化され得る。さらに、一実施例において、各パラメータは、3つの値のうちの1つに割り当てられていたものと仮定される。すなわち、無駄時間=DT+、DT、DT−、時定数=Tc+、Tc、またはTc−、およびGain=Gain+、Gain、およびGain−である。従って、プロセス10を数学的に近似化するために使用可能なモデルの総数は、N=33=27である。各モデルは、個々に、Modiと称され、式中i=1,...,27である。
【0085】
モデル評価スキャン(本明細書中で適応手順とも称される)の開始時、または開始前において、パラメータ補間器132は、一組の既定の初期化パラメータ値を、モデルの組の構成要素128に提供する。ここでも、3つのパラメータ、DT、TcおよびGainが仮定される場合、および、各パラメータが3つの既定の初期化パラメータ値を有する場合、パラメータ補間器132は、9つのパラメータ値をモデルの組の構成要素128に提供する。パラメータ値は、任意の公知の方法で、および、制御装置の設計の自由裁量により、確立され得る。概して、適応サイクルの開始時に、モデルの組128に書き込まれたモデルパラメータ値は、最も最近の適応サイクル中に算出された適応パラメータ値に基づく。9つのパラメータ値に応答し、かつ、スーパーバイザ134の制御を受け、モデルの組の構成要素128は、全部で27のモデル、Modiを構成し、ここでi=1,...,27である。スーパーバイザ134は、モデル評価スキャン中に、モデルModiを順次、選択および活性化し、活性化されたモデルModiに、入力128bを経由して受信したプロセス入力u(t)を適用する。活性化されたモデルModiの最終的な出力は、モデルの組の出力128cによって、誤差生成器ノード126に伝達される。
【0086】
図9Bは、以下に詳述するように、複数の領域を含むように構成され得る、または状態変数の特定の値を表し得る、状態変数Siを含む例示的なモデルの組128を図式的に示す。状態変数Si(i=1,...,n)およびnは、定義された状態の数を識別し、測定されたプロセスの入力−出力に関連付けられるゲインまたは動特性を表す測定されたプロセス外乱を表す。状態変数Siは、概して、特に外乱信号d(t)、設定点SP、励起生成器138によって生成される信号、および/または任意の他のプロセス入力または出力の変化であり得る、プロセス変数に基づく。状態変数Siは、プロセス変数d(t)、u(t)、y(t)、Y(t)、e(t)およびSPのうちの1つ以上の関数として、モデルの組128内で動作する状態進行ルーチン内で進行し得る。なお、ルーチンが対象となる格納されたまたは実時間プロセス変数にアクセスできる限りは、状態進行ルーチンを、制御システムのいずれかの構成要素またはサブ構成要素内で実行し得ることに留意されたい。さらに、状態変数Siを事前決定してもよい、または、概して、モデルModiがグループ化してもよい範囲または領域を表すために割り当てられる、ユーザ定義された値を含んでもよい。
【0087】
領域に分割される場合、状態変数Siによって定義される領域は、領域の典型的な動作を特性化するために既定の、複数の初期のモデルパラメータ値を含み得る。定義された領域は、制御装置の設計手順時において、状態変数の範囲を通じて、モデルModiがほぼ一定に維持されることを確実にするために確立され得る。稼動時において、および、適応サイクルの開始前に、測定されたプロセス外乱が、第1の状態(例えばS1)から第2の状態(例えばS2)へ変化する場合に、状態S1に関連付けられるパラメータ値は、状態S2に関連付けられるパラメータ値で直ちに交換され得る。PID制御装置を再調整するためにこれらのモデルパラメータ値を適用することで、特定の領域におけるPID制御装置112および/またはフィードフォワード制御装置114のパフォーマンスが向上する。
【0088】
図9Cは、適応フィードバック/フィードフォワードPID制御装置の稼動の例示的な流れ図を示す。上述のように、制御装置の初期のセットアップおよび設計中、ブロック140に示すように、状態変数Siの範囲を定義可能である。全状態範囲は、プロセス変数または測定された外乱入力における変化が生じることが予想できる範囲として、考え得る。範囲Siは、このため、プロセスモデルがほぼ一定または予測可能であると判定される全範囲の領域である。こうして、励起生成器138、変動信号d(t)および/または設定点SPによって生じる外乱入力の変化が、ブロック142に示されるように測定される。ブロック144に示されるように、プロセス変数の測定された変化が、外乱入力が選択された領域内にあるかどうかを判定するために、現在の範囲Siと比較される。外乱入力が選択された領域内にある場合、プロセスは、変動における変化の測定を継続する。しかし、変動入力が新しい範囲Sj内である場合、その状態Sjの初期のパラメータ値は、ブロック146に示されるように、フィードバック制御装置112および/またはフィードフォワード制御装置114によってロードおよび使用される。
【0089】
各範囲または状態Siに対して定義された初期のまたは典型的なパラメータ値は、範囲内で計測または計算された平均パラメータ値に基づいてもよく、または、制御装置デザイナーによって手動で入力されてもよい。典型的なパラメータ値はさらに、任意の所与の適応サイクルにおいて計算されたパラメータ値によって生じる許容可能な変化の大きさを制限するために、最大変化またはデルタ値と共に、参照値として使用され得る。言い換えると、制御装置デザイナーは、異常な外乱信号に応答するパラメータ値の計算された増減を制限するために、最大変化値を定義し得る。状態Sjに対する初期のパラメータによる制御装置を完了すると、適応サイクルが、ブロック148に示されるように、実行され得る。以下に詳述するように、適応サイクル148は、プロセス110の測定された変化に対応する適応パラメータ値を決定することにより、モデルModiをカスタマイズする。
【0090】
図9Aを再び参照すると、変数Y(t)によって識別されるモデルの組の構成要素128の出力信号、および変数y(t)によって識別されるプロセス110の同時出力が、誤差生成器ノード126に伝達される。誤差生成器ノード126の出力126c、誤差信号e(t)が、モデル評価構成要素130の入力130aに連結される。誤差信号e(t)は、時間tにおける、プロセス出力y(t)とモデルModiの出力Y(t)との差である。以下に記載するように、モデル評価構成要素130は、各モデルModiに対応するモデルの2乗誤差を算出し、モデルの2乗誤差を、モデルModiで表されるパラメータ値に割り当てる。
【0091】
モデル評価器130の出力130bは、パラメータ補間器132の入力132aに伝達される。パラメータ補間器132は、モデルModiで表されるパラメータの適応パラメータ値を計算する。パラメータ補間器132の出力132bはモデルの組128に連結され、パラメータ補間器132の出力132cは、制御装置の更新構成要素136の入力136aに連結され得る。出力136bはPID制御装置112に適用され、出力136cはフィードフォワード制御装置114に適用される。制御装置の更新構成要素136は、適応サイクルの完了時に、PID制御装置112およびフィードフォワード制御装置114へ、適応パラメータ値を伝達する。図9Aはさらに、入力ノード116の入力116dに連結される出力138aを有する励起生成器の構成要素138を示す。励起生成器138は、プロセス入力ノード120の入力120cに連結される出力138bを含む。
【0092】
スーパーバイザ構成要素134は、プロセス入力信号u(t)、プロセス出力信号y(t)、および外乱信号d(t)にそれぞれ連結される、複数の信号入力134b、134c、134dを有する。スーパーバイザ構成要素134はさらに、モデル評価の構成要素130の出力130bに連結される入力134aを含む。スーパーバイザ134は、パラメータ補間器の構成要素132に連結される第1の制御出力134e、モデル評価の構成要素130に連結される第2の制御出力134f、および制御装置更新の構成要素136に連結される第3の制御出力134gを含む。他の機能の実行に加えて、スーパーバイザ構成要素134は、プロセス出力y(t)の変化、PID制御装置112からのプロセス入力u(t)の変化、および外乱(フィードフォワード)入力d(t)の変化を検知するために動作する。これらの信号y(t)、u(t)およびd(t)のいずれかの大きさの変化が既定の最小または閾値レベルを超える場合、スーパーバイザ134は、適応サイクルを開始する。スーパーバイザ134は、図9Aの点線に示されるように、制御システム128、130、132、136、138および124の種々のエレメントに通信可能に接続され、従って、制御システム内で動作する個々のエレメントの状態を決定できる。モデル評価の例示的な実施形態は、以下のステップを含み得る。
(1)モデル状態の識別および開始
(2)モデル開始および、現在のプロセス出力へのモデル出力の調整
(3)u(t)および/またはd(t)信号の仕様に基づく、モデルの増分更新
(4)誤差の絶対値等の、モデル2乗誤差または他のノルムの算出
【0093】
詳細には、フィードバック/フィードフォワードPID制御装置の適応のプロセスは、補間技術のモデルパラメータ値への応用に基づく。デバイスのこの例示的な実施形態において、モデル2乗誤差、Ei(t)は、以下の式により、スキャン中のモデルのそれぞれに対して定義し得る。
【0094】
【数9】
【0095】
式中、
y(t)は、時間tにおけるプロセス出力、
i(t)は、時間tにおけるモデルModiの出力、
i(t)は、Modiに起因する2乗誤差、
E(t)=[E1(t),...、Ei(t),...、En(t)]は、時間tにおける、i=1,...,Nの場合のModiの2乗誤差ベクトルである。
【0096】
モデル2乗誤差Ei(t)は、パラメータ値が評価されたModiで示されることを条件に、モデルModiのすべての各パラメータ値に割り当てられる。特定のパラメータ値が評価されたモデルに表されない場合、パラメータ値は、ゼロまたはヌル値に割り当てられ得る。反復的に、Modi+1が評価され、モデル2乗誤差Ei+1(t)は、評価されたモデルに対して算出される。算出されたモデル2乗誤差は、Modiのすべての各パラメータ値に割り当てられる。各モデル評価中にEi(t)が計算され、それぞれのモデルで表されるパラメータ値に割り当てられるため、割り当てられたモデル2乗誤差の累計は、各パラメータ値で維持される。全てのモデル、i=1,...,Nが評価されるまで、プロセス評価が反復される。各モデルModiが一度評価され、対応するモデル2乗誤差Ei(t)が計算される、完全なシーケンスは、モデルスキャンと称される。評価またはモデルスキャンのこのシーケンスの結果として、各パラメータ値は、特定のパラメータ値が使用されている全モデルからの2乗誤差の和を割り当てる。従って、各モデルスキャンの結果として、各パラメータ値、pkl(式中k=l,...,m、かつl=1,...,n)は、Normに割り当てられる。
【0097】
【数10】
【0098】
式中、
Epkl(t)は、スキャンtの結果としてパラメータ値pklに割り当てられたNormであり、
Nは、モデルの総数であり、
パラメータ値pklがModiで使用される場合、Xkl=1であり、Modiでパラメータ値pklが使用されない場合、Xkl=0である。
【0099】
次のスキャンで評価プロセスが反復され、そのスキャン中に割り当てられた2乗誤差Ei(t)の和から得られるNorm、Epkl(t)は、事前のスキャン時に計算されるNorm値と組み合わせられる。モデルスキャンの反復シーケンスは、適応サイクルと総称され、既定の回数のスキャンが完了するまで、またはプロセス入力に適切な数の励起が生じるまで、のどちらかの条件が、例えば、先に満たされるまで、スーパーバイザ134の制御下で継続する。
【0100】
この手順の結果として、各パラメータ値pklは、適応サイクル時において決定されたNormの累積値を割り当てる。
【0101】
【数11】
【0102】
適応サイクルの終了時に、各パラメータ値pklに対する、和の逆数が計算される。
【0103】
【数12】
【0104】
klがモデル2乗誤差の合計の逆数である限り、変数Fklは、パラメータ値の適合の計測値として直感的に示され得る。次に、すべての各パラメータpkに対して、このパラメータの全ての値の加重平均である適応パラメータ値pk(a)が計算される。
【0105】
【数13】
【0106】
式中、
相対適合:
【0107】
【数14】
【0108】
和:
【0109】
【数15】
【0110】
従って、各係数Fklは、それぞれのパラメータ値に対して正規化された適合に対応するものとして考えられ得る。
【0111】
上記で計算されたように、適応パラメータ値は、設計において仮定される、中心パラメータ値pk(a)(k=1,...m)、および上と下との境界間のパラメータ値の範囲で、新しいモデルの組を定義する。変化範囲は、+Δ%から−Δ%として定義され、2つ以上のさらなるパラメータ値によって表す必要がある。例えば、適応サイクルによって適応パラメータ値pk(a)が生じる場合、新しいモデル評価のために、値pk(a)[1+Δ%]および値pk(a)[1−Δ%]を仮定する少なくとも2つのさらなるパラメータを定義することが必要である。言い換えると、各パラメータは、値pk(a)が境界値に制限されるように、適応のために上と下との境界を定義する。モデルを更新した後、すなわち、適応サイクルの完了時、制御装置の更新を、更新されたpk(a)(k=1,...,m)モデルパラメータ値に基づいて行い得る。適応は、モデル全体に適用し得る、または、モデルのPID/フィードバックまたはフィードフォワードの部分、例えば、既定の最小励起準位が実現される場合に、出力を入力に関連付けるモデルの部分に制限し得る。さらに、制御システム内で不適切な励起の失敗が起こる状況において、スーパーバイザ134の制御下で動作する励起生成器138により、外部励起をフィードバックループに注入し得る。
【0112】
さらに、モデル適応を逐次的に実行してもよく、例えば、残りのパラメータ(例えばTcおよびGain)が一定に保たれている間、DTであってもよい単一のパラメータ値を適応できる。このように、残りのパラメータを保持しながら各パラメータを適応でき、これは、以前の適応サイクルにおいて、一定に適応してもよい、または適応しなくてもよい。逐次的な適応方法を、所望の適応パラメータ値pk(a)のより高速な収束を有利に提供する。
【0113】
図10は、フィードバックおよびフィードフォワード制御ループに対する1次+無駄時間プロセスモデルを含む、例示的な適応パラメータ補間手順を示す。この特定の例では、すべての各パラメータに3つの値が定義され、かつ、適応範囲は1サイクルで(+Δ%)から(−Δ%)となるように事前決定されていると仮定する。こうして、すべての各プロセス入力u(t)および外乱d(t)に対して、図11に図示されるモデルの組が生じる。図11において、
DTはDeadtimeパラメータの中心値であり、
(DT−)は(DT−Δ%)であり、
(DT+)は(DT+Δ%)であり、
Tcは、Time Constantパラメータの中心値であり、
(Tc−)は(Tc−Δ%)であり、
(Tc+)は(Tc+Δ%)である。
Gainは、Gainパラメータの中心値であり、
(Gain−)は(Gain−Δ%)であり、
(Gain+)は(Gain+Δ%)である。
【0114】
図11の構成によって得られる切り替えの組み合わせ数は、3×3×3=27である。しかし、図10のモデルの両入力を適応に使用する場合、切り替えの組み合わせ数は272=729に増加する。これらのモデルの組み合わせは、その数は多いものの、各パラメータには、3つしか値を必要とせず、モデル算出を簡略化する。モデル評価ではなく、パラメータ評価によって制御装置の適応が行われることによって、簡略化されたモデル算出が実現される。従って、フィードバックループの9つのパラメータ値およびフィードフォワードループの9つのパラメータ値に基づいて、適応を実行することが必要である。このため、開示された適応手順で評価されるパラメータ数は、先行技術のモデル評価技術で生じる指数関数的変化とは反対に、パラメータ数に比例して変化する。
【0115】
算出要件は、モデルにパラメータ値を与えるシーケンスを制御することによって、制限され得る。例えば、Dead Time等の、メモリを有するパラメータは、Gain等のメモリを持たないパラメータの前に与えられ得る。このため、図11に示される、例示的なシーケンスとしては、Dead Time(DT)、Time Constant(Tc)、およびGainが挙げられる。
【0116】
すべての各モデル出力を現在のプロセス出力を比較すると、2乗誤差の和の表を構成し得る。適応サイクルを完了すると、パラメータ毎の適応パラメータ値を、表1に示すように計算し得る。
【0117】
【表1】
【0118】
モデル適応サイクルが完了し、上記の表1によって適応パラメータ値が確立されると、制御装置の更新は、制御装置の更新の構成要素136の動作によって影響される。基本的に、制御装置の更新の構成要素136は、PID制御装置112および/またはフィードフォワード制御装置114を特性化する調整パラメータの値を更新するために、新しく計算された適応プロセスパラメータ値pk(a)をマップする。例えば、プロセスパラメータDT、TcおよびGainは、任意の所望のまたは選択された調整則を使用して、制御装置のパラメータ、Reset、RateおよびGainにマップされ得る。完全な1次+無駄時間プロセスモデルが記述されているため、ラムダ調整またはNC調整を含む、任意の公知の調整則も適用可能である。フィードフォワードパスでは、以下を適用可能であるように、動的フィードフォワード制御装置の設計式が示されている。
【0119】
【数16】
【0120】
式中、
ff=フィードフォワード制御装置の伝達関数、
Kd=フィードフォワードプロセス動特性の静的ゲイン、
Ku=フィードバックプロセス動特性の静的ゲイン、
Kd/Ku=フィードフォワード制御装置のゲイン、
Td=フィードフォワードプロセス動特性の時定数(フィードフォワード制御装置ラグとして適用される)、および
Tu=フィードバックプロセス動特性の時定数(フィードフォワード制御装置リードとして適用される)。
【0121】
要するに、上に記載されている適応フィードバック/フィードフォワード制御装置は、特定のプロセスの稼動状態または領域におけるプロセスの調整の使用に適用可能なプロセスモデルを定義する(モデルパラメータの特定の値を含む)モデルの組を決定することで、スケーラブルなプロセス制御システムにおける自動調整技術の大幅な向上を示す。
【0122】
本発明を教示および説明することが意図された特定の例示的な実施形態を参照して、上記のモデルパラメータ適応方法が記載されているが、開示される適応フィードバック/フィードフォワード制御装置は、これらの実施形態に制限されない。当業者により、種々の修正、改善および追加が実施され得る。例えば、上記のように、制御装置の適応は、制御下にあるプロセスの数学モデルを構成するために使用されるパラメータの統計的な補間に基づいて予測される。プロセスは3つのパラメータ、DT、TcおよびGainで特性化され、これらのパラメータのそれぞれに3つの値が割り当てられるが、開示される適応フィードバック/フィードフォワード制御装置は、明らかに他のおよび/または異なる数のパラメータに拡張し、それぞれ異なる数の割り当てられた値を含む可能性がある。さらに、モデル評価およびパラメータ補間が、モデルの組128、モデル評価器130、スーパーバイザ134、パラメータ補間器132、および制御装置の更新136として識別される個々の構成要素として図示されている。当業者は、個々の構成要素の分割は、制御装置の実行および稼動についての責任者に任されることを理解するであろう。同様に、開示されたシステムの機能は、ハードウェアまたはソフトウェアのいずれか、あるいはこの2つの組み合わせによる実行の影響を受けやすい。
【0123】
こうして、理解され得るように、上記の適応手順は、制御装置への状態変数入力によって決定または定義され得る、種々の異なるプロセス稼動点における、PID制御装置の調整に応用可能である。すなわち、プロセス(例えば、無駄時間、時定数のプロセス特性等)のモデルは、プロセスの異なる稼動点で変更し得るため、プロセスの異なる稼動点において、PID制御装置を異なる方法で調整し得る。一般的に言うと、プロセス稼動点を、1つ以上のプロセス状態変数の値によって定義または計測され得る。この変数が変化すると、図3の適応ユニット44は、変更を認識し、制御装置アルゴリズムブロック42を調整するために、プロセスモデルの新しい調整手順を実行することで、そのプロセス稼動点または領域に関するより良い制御を実現し得る。
【0124】
より詳細には、稼動中、図3の適応調整ブロック44は、一組の異なるプロセス稼動点またはプロセスの稼動領域のそれぞれに対して、一組のモデルパラメータを決定するために、上記で詳述した手順等の適応手順を使用し得る。いくつかの場合においては、多数の異なるプロセス領域の各々は、状態パラメータの値の範囲として定義してもよく、一組のプロセスモデルパラメータ値は、こうしたプロセス領域の各々に対して定義されてもよい。あるいは、異なる一組のモデルパラメータ値を、多数の特定のプロセス稼動点のそれぞれに対して決定してもよく、これらのプロセスモデルパラメータは、モデルの組として制御装置38に格納されてもよい。
【0125】
こうして、理解されるように、特定の適応手順は、収集されたデータに基づいて、プロセスの稼動領域または点に最も適用可能な単一の組のモデルパラメータを決定するために、種々の点(状態パラメータの値)においてプロセス計測を実行し、これらの計測のために、上に記載のもの等のモデルパラメータ適応手順を実行することによって、特定のプロセスの稼動領域または特定のプロセス稼動点に最も良く適用可能な一組のプロセスモデルパラメータを決定し得る。当然ながら、時間と共に、適応手順を、特定のプロセスの稼動領域またはプロセス稼動点のために新しい一組のモデルパラメータの値を決定するために、新しく収集されたデータ上で再実行してもよく、制御装置を更新または再調整するためにこれらの新しい値を使用し得る。上記のように、異なるプロセス領域のそれぞれに単一の組のモデルパラメータを格納してもよく、これらのモデルパラメータ値は、状態パラメータの値によって決定されるように、プロセスがある領域から別の領域へ移動する場合等、プロセスの稼動中の種々の時点において、制御装置を再調整するために使用し得る。あるいは、いかなる特定の領域をも定義せずに、種々の異なるプロセス稼動点に一組のモデルパラメータを格納してもよく、また、例えば、補間を使用する格納された一組のモデルパラメータから、いずれかの特定のプロセス稼動点で使用される一組のプロセスモデルパラメータを決定し得る。
【0126】
図12図15は、上に記載の概念によって、調整手順および適応手順の両方を実行するために、図1または図2の制御装置12および/または図3の制御機能ブロック38によって実行され得る例示的な手順を示す。図12は、調整手順を実行するために、図3の機能ブロック38、特に、図3の適応調整ブロック44によって実行され得る調整手順または調整ルーチン200を示す。ブロック202において、ルーチン200は、機能ブロック38の適応状態変数入力に伝達される状態変数に変化があるかどうかを決定する。状態変数に変化がない、または最小限の変化しかない場合、制御は、次の実行サイクルのためにブロック202に戻る。しかし、ブロック202が状態変数において変化を検知する場合、例えば、(過剰な調整または雑音に応答する調整の実行を避けるように制限する)ある最小限の大きさにおいて、ブロック204は、状態変数の範囲の異なる領域またはサブ領域に移動するために十分状態変数が変化しているかどうかを判定する。領域は、図4に関連付けられる既定の領域であり得るが、サブ領域は、図6に図示されるサブ領域に関連付けられるものであり得る。領域に基づくモデルパラメータ決定システムにおいて、ブロック204は、状態変数の変化が、状態変数のある以前に定義された領域から状態変数の別の領域へと状態変数を移行させるかどうかを判定してもよいが、連続的にスケジュールされるモデル決定システムにおいて、ブロック204は、新しいモデルパラメータの決定を確実にするために、状態変数の十分な移動があるかどうかを判定する。いずれの場合も、状態変数が領域またはサブ領域の間を移動するために十分変化していないとブロック204が判定する場合、制御は、制御装置の次の実行サイクル中の実行のために、ブロック202に戻る。
【0127】
しかし、新しく検知された状態変数値が新しい領域またはサブ領域に入る場合、ブロック206は、1つ以上の組の格納されたノットに対して以前に決定および格納されたモデルパラメータに基づいて、その領域、サブ領域または稼動点に適用可能な新しいモデルパラメータを決定する。プロセスのための、こうした一組のモデルパラメータの値を決定する、ある考えられる方法を、図13を参照し、以下に詳述する。ブロック206が、新しい領域、サブ領域または稼動点に対する一組のモデルパラメータ値を決定または取得した後、ブロック208は、制御装置のゲインパラメータ、リセットパラメータおよびレートパラメータの新しい値等の、1つ以上の新しい制御装置の調整パラメータ値を決定するために、決定されたモデルパラメータ値および適用可能な調整則(例えば、図3のブロック48に格納される)を使用する。当然ながら、任意の特定の場合において決定された特定の制御装置の調整パラメータは、適用される調整則によって異なる。さらに、フィードフォワード適応が実行中である場合、ブロック208は、図3のブロック52および54に提供するための無駄時間およびリード/ラグ時間の動的補償を決定し得る。上述したように、ブロック52および54は、制御装置アルゴリズムブロックに提供されるフィードフォワード入力信号に基づいて、(例えば、図3のブロック42に)フィードフォワード制御を実行する。
【0128】
図12のブロック210において、適応調整ブロック44は、適用可能な調整則および、現在の状態変数値によって定義される、現在のプロセスの稼動領域、サブ領域または点のための決定された一組のモデルパラメータ値を使用して決定されるように、新しい制御装置調整パラメータでPID制御装置42を更新する。さらに、ブロック210は、適切であれば、同様にフィードフォワード制御装置の適応を実行するために、フィードフォワードループ(例えば、図3のブロック52および54)へ、新しい無駄時間およびリード/ラグ時間を提供する。その後、後の制御装置の実行サイクルで調整手順を反復するため、制御は図12のブロック202に返る。
【0129】
現在の稼動領域、サブ領域または点に対して一組のモデルパラメータ値を決定するための、ブロック206のある考えられる稼動を、図13を参照し、さらに詳細に説明する。この解析を実行するために、ブロック206は、図13に示されるように、状態変数の現在の値に基づいて、一組の適切なモデルパラメータを決定するために、ルーチン220を実行し得る。ルーチン220は、状態変数が適応されたノット位置(連続的なモデルパラメータ決定技術が使用される場合)にあるかどうか、または、状態変数が特定の稼動領域内にあるかどうかを決定するブロック222を含む。状態変数が適応されたノットにある場合、または適応されたノットによって定義されたサブ領域内にある場合、ブロック224は、その適応されたノットに現在関連付けられる1つ以上のモデルパラメータ値を取得し、制御装置調整パラメータの決定に使用されるモデルパラメータ値として、これらのモデルパラメータ値を返す。
【0130】
しかし、状態変数が適応されたノットにない、または特定の適応されたノットに関連付けられるサブ領域またはセクション内にない、とブロック222が判定する場合、状態変数入力が、2つの以前に決定された適応されたノット位置に関連付けられる状態変数値の間にあるかどうかを判定することで、ブロック226は、状態変数が2つの適応されたノットの間にあるかどうかを判定する。現在の状態変数値が2つの適応されたノットの間にはなく、しかし、例えば、適応されたノットと状態変数範囲の端との間にある場合、または、1つしか適応されたノットが現在は存在していない場合、ブロック228は、最も近い適応されたノットのモデルパラメータ値を取得し、特定の領域、サブ領域または点のために、これらの値をモデルパラメータ値として使用する。当然ながら、プロセスでまだ適応手順が実施されていないために格納された適応されたノットが存在しない場合、または、特定の事前定義された領域において適応されたノットが存在しない場合、ブロック228は、現在の一組の制御装置調整パラメータを代わりに使用すべきであると判定してもよく、および、これらのパラメータを戻す、または、これらのパラメータはPID制御装置42によって使用すべきであると示してもよい。この稼動により、ノットのヌルの組または、適応されていない一組のノットまたは特定の事前定義された領域に適用可能でないノットに基づいて、調整が防止される。
【0131】
再び図13を参照すると、現在の状態変数値が2つの適応されたノットの間にあると、ブロック226が決定する場合、ブロック230は、この領域に対して以前に決定された補間関数を使用して、2つの最も近い適応されたノット(状態変数値のどちらかの側の1つ)に関連付けられるモデルパラメータの間を補間することにより、現在の稼動領域、サブ領域または点に対してモデルパラメータの値を決定できる。上記のように、補間関数は、線形であっても非線形の補間関数であってもよい。ブロック230は、次に、図12のルーチン200で使用されるモデルパラメータ値としての適応されたノット間の補間関数に基づいて、これらの新しいモデルパラメータ値を戻す。
【0132】
次に図14を参照すると、ルーチン300は、図3の適応PID制御装置の機能ブロック38の適応調整ブロック44によって実行されるプロセス制御活動の動作中に、適応手順を実行し得る。ルーチン300のブロック302は、1つ以上のプロセスパラメータに対して、例えば、種々のプロセス入力データ、プロセス出力データ、外乱データ等を含む、一組の既定のプロセス変数に対する種々の計測を格納し、このデータは異なるノットまたはプロセス領域でモデルパラメータ値を決定するだけでなく、プロセス稼動点における変化を検知するためにも使用されることが理解される。ブロック304は、適応手順を実行するために、収集されたデータに基づいて、適切かどうかを決定する。概して、適応手順は、特定のプロセス領域または点で適応を実行するために十分なデータが収集される場合に実行可能であり、典型的には、適応手順の実行前に、プロセスが安定したまたは定常状態の状態に達するまで待つことが最適である。しかし、さらに適応手順は、プロセスが、種々の既定のプロセス領域の間で変化する場合、または例えば、設定点の変化、プロセス変動等に応答して、稼動点を大きく変化させる場合等、プロセスがその稼動点を大きく変化させる場合に実行し得る。当然ながら、種々の異なる基準を、収集されたデータが適応手順を実行するために十分であるかどうかを決定するために検討できる。上記のように、特定の期間、収集されたデータにより、プロセス出力またはプロセス入力のうちの1つ以上において大きな変化が示される場合、またはデータにより、プロセスが新しい定常状態の稼動点に達したことが示される場合、適応手順を実行し得る。
【0133】
ブロック304が、十分なプロセスデータが収集されていない、または適応手順を実行するためにプロセス稼動点に十分変化がないと決定する場合に、ブロック306は、適応手順を実行するために必要なプロセスデータを収集できるように、プロセスアップセットを開始することが適切かどうかを判定し得る。ブロック306は、例えば、最後の適応手順が実施されてから十分な期間が経過したかどうか、またはプロセスをアップセットするために十分な期間、プロセスが定常状態になっているかどうかを判定し得る。ブロック306により、新しい適応手順を実行するためにプロセスをアップセットすることが時間的に適していない、または必要でないと判定される場合、制御は、プロセスデータの収集を継続するブロック302に戻る。あるいは、ブロック306により、新しい適応手順を実行するために、プロセスをアップセットすることが時間的に適しているまたは必要であると決定される場合、ブロック308は、監視されている1つ以上のプロセス変数の変化を開始する、および適応手順を実行するのに必要なプロセスデータを収集するために、プロセス制御信号を変化させることにより、制御装置ブロック42(図3)によってプロセスのアップセットを開始させる。当然ながら、監視中の1つ以上のプロセスパラメータの変化を実行するためにプロセスをアップセットする手順中において、適応手順を実行するために、データはブロック302によって収集される。プロセスアップセットの終了時に、データ収集ブロック304は、適応手順を実行する時期であることを判定し得る。
【0134】
ブロック304が、以前に収集されたデータに基づいて新しい適応手順を実行することが適切であると判定する場合、ブロック310は、新しいノット、つまり、特定のノット位置に関連付けられる新しい一組のモデルパラメータ値を決定するために、プロセスモデルの適応を実行する。ブロック310は、特定のプロセス状態変数におけるプロセスを最も良くモデリングする適切な一組のプロセスモデルパラメータを決定するために、図9図11を参照して上記で説明されるモデルパラメータ適応手順を実行し得る。当然ながら、他の適応手順も同様に、または、状態変数の特定の値に関連付けられるプロセスモデルパラメータ値を決定する代わりに、実行され得る。
【0135】
ブロック310が適応手順を実行した後、ブロック312は、以前に格納されたノットに対する適応調整アルゴリズムブロック44(図3)のノットメモリに格納されたノット値を更新する、または、新しいノットの値を保存する、あるいは、以前に適応されていないノットの値を保存し、および、このノットが現在では適応されたノットであることを示す。その後、適応手順が完了し、制御は、新しいまたはさらなる適応手順を実行するために使用されるさらなるプロセス変数データを収集および保存するために、ブロック302に戻る。
【0136】
図15は、適応手順中に新しいノット値を決定するために、図3の適応調整ブロック44で実行し得るソフトウェアルーチン350を示す。ここで、ブロック352は、実行中の適応手順に関連付けられるノットの位置を定義する特定の状態変数値を決定する。上記のように、状態変数は、収集されたデータに関連付けられる最大および最小の状態変数の間の平均または中間点にし得る。しかし、ノットの状態変数値は、収集されたデータで使用される全ての状態変数値の平均として、収集されたデータに関連付けられる状態変数値の中央値として、または種々の異なる状態変数値のデータの集合の組に関連付けられる状態変数値を決定するいずれかの他の所望の方法を使用する、等の他の適したやり方で決定され得る。
【0137】
次に、ノット更新手順が構成される方法によって、制御は、ブロック354またはブロック356に提供され得る。ノットが、一組の固定されたまたは既定のノット位置において格納される場合、これらのノット位置は、次に、新しいノット値に基づいて更新される。この場合、ブロック354は、新しく決定されたノットが、事前構成されたまたは既定のノット位置の一つにある、またはこれにかなり近いかどうかを判定する。その場合、ブロック358は、新しく決定された一組のモデルパラメータ値でノット位置を更新し、適応されているものとして、ノットをマークし得る。一方で、新しく決定されたノットが、所定のまたは固定されたノット位置のうちの1つでない場合、ブロック360は、上記の補間または更新手順を使用して、新しく決定されたノット値に基づいて、隣接するノット位置(例えば、新しく決定されたノットの両側の所定のノット)を更新する。
【0138】
どちらの場合も、1つ以上のノットが、新しいノット値に基づいて、またはこれを使用して更新される場合、ブロック362は、これらのノット位置の間のノットパラメータ値を決定するために使用される、新しい補間関数を決定するために使用され得る。当然ながら、ブロック362は、上記の補間方法を使用して新しい補間関数を決定してもよく、ノットにおいてプロセスモデルに関連付けられる各パラメータ値で、個々に、または異なる方法で、これを行ってもよい。つまり、ブロック362は、ノットに格納されたモデルのモデルパラメータ値のそれぞれで、異なるまたは変動する補間関数を決定するために動作し得る。
【0139】
一方で、種々の異なるノット位置において進行する際にノットを格納する場合、ブロック356は、新しく決定されたノット値とその関連付けられるモデルパラメータ値をノットメモリに格納する。その後、ブロック364は、ノットメモリに最大数のノットが格納されているかどうかを決定し、格納されていない場合には、ブロック362に制御を提供する。しかし、新しいノットの格納によって最大数のノットに達している、または最大数のノットを超えている場合、ブロック366は、格納されたノットを取捨選択するように動作することで、可能な最大数以下になるように、一組の格納されたノットを減少させ得る。ブロック366は、新しいノットの追加に基づいて、少なくとも1つのノットを削減するように、任意の所望の一組の規則を実行し得る。当然ながら、ノットは、ノットの経過時間、特定の位置または位置付近におけるノットの密度、ノットにおけるモデルパラメータの推定される有効性等に基づいて、取捨選択され得る。
【0140】
ブロック366が一組の格納されたノットを取捨選択した後のいずれかのイベントにおいて、ブロック362は、既存の一組のノットの間、特に、既存のノットおよび新しく追加されたノットの間、または取捨選択されたノット位置付近のノットの間で、1つ以上の新しい補間関数を決定し、調整手順中に、図3の適応調整ブロック44によって使用されるノットメモリにこれらの新しい補間関数を格納する。補間関数は、上記のシグモイド補間変数等の、実行される補間の種類および/または必要な補間変数を格納することで、格納し得る。ブロック362によって新しい補間関数が決定されると、新しいノット値を決定するプロセスは完了する。
【0141】
上記の方法は具体的な特性のものであるが、他の多くの手法が存在しても、上記の本発明の実施形態から実質的に逸脱しないことが認識されよう。このため、以下の請求項は、その実質的な同等物と同様に、本発明の真の精神および範囲内にある全ての修正、変更および改良を含むように適切に構成されている。したがって、本明細書中に特に記載はないが、本発明の他の実施形態は、以下の請求項によって定義されるように、本発明の範囲に包括される。
図1
図2
図3
図4
図5
図6
図7
図8
図9A
図9B
図9C
図10
図11
図12
図13
図14
図15