モデルベース制御技法におけるロバストなプロセスモデルの同定方法及びシステム
【課題】プロセスモデル・パラメーター収束が得られなかった状況においても許容範囲内のパラメトリック・プロセスモデルの生成を可能にするプロセスモデル同定方法及びシステムを提供する。
【解決手段】MPCコントローラ生成などのコントローラ生成に用いるプロセスモデルを生成するロバストな方法は、モデル生成プロセスにおいて使用される収集されたプロセスデータにノイズを添加する。特に、パラメトリック・プロセスモデルを生成するロバストな方法は、まず周知のテスト入力信号または系列に基づいてプロセス出力を収集し、収集されたプロセスデータにランダムノイズを添加し、該収集プロセスデータからプロセスモデルを決定するために標準または周知の技法を使用する。
【解決手段】MPCコントローラ生成などのコントローラ生成に用いるプロセスモデルを生成するロバストな方法は、モデル生成プロセスにおいて使用される収集されたプロセスデータにノイズを添加する。特に、パラメトリック・プロセスモデルを生成するロバストな方法は、まず周知のテスト入力信号または系列に基づいてプロセス出力を収集し、収集されたプロセスデータにランダムノイズを添加し、該収集プロセスデータからプロセスモデルを決定するために標準または周知の技法を使用する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プロセス制御システム、特にプロセス制御システムで使用されるモデル予測制御ルーチンおよびニューラルネットワーク制御ルーチンなどのアドバンスト(高度)制御ルーチンで使用されるプロセスモデルの開発に関する。
【背景技術】
【0002】
一般的に、化学薬品の処理、石油精製またはその他のプロセスにおいて使用されるような分散形プロセス制御システムまたはスケーラブル・プロセス制御システムなどのプロセス制御システムは、アナログ、デジタル又はアナログ‐デジタル混在バスを介してお互いに、少なくとも1つのホスト又はオペレーターワークステーションと、および1つ以上のフィールド装置と通信できるように連結される1つ以上のプロセス制御装置を含んでいる。フィールド装置は、例えば、バルブ、バルブポジショナー、スイッチおよび(例として温度、圧力および流量センサーなどの)発信器でありえ、プロセスにおけるバルブの開閉、プロセス・パラメータの測定などの機能を行なう。該プロセス制御装置は、フィールド装置によって発せられたプロセス計測を示すシグナル及びフィールド装置に関するその他情報のうちの少なくとも一つを受信し、制御ルーチンを実施するためにこの情報を使用してから、プロセスの動作を制御するフィールド装置にバス上を通じて送信される制御信号を発信する。フィールド装置およびコントローラからの情報は、通常、オペレーターワークステーションにより実行される1つ以上のアプリケーションで利用可能となっており、オペレーターがプロセスの現状を表示したりプロセスの動作を修正変更したりするなどのプロセスに関するあらゆる所望の機能を行うことを可能にする。
【0003】
これまで、従来のフィールド装置は、アナログ・バスまたはアナログ回線を介してプロセス制御装置間でアナログ(例えば4〜20ミリアンペア(ma))の信号を送受信するために使用されてきた。前記4〜20maの信号は、装置による計測、または装置の動作を制御するために要されるコントローラにより発せられた制御信号による計測を示すという性質を持っているためいくつかの制限を持っていたが、つい最近になって、マイクロプロセッサおよびメモリを含むスマート・フィールド装置がプロセス制御業界において普及しはじめている。スマート・フィールド装置は、プロセスにおける一次的機能を行なう他、装置に関するデータを格納し、デジタルまたはデジタル・アナログ混合形式でコントローラ及び他の装置の少なくとも一つと通信し、自己較正・同定(識別)・診断するなどの2次的な作業も行なう。異なるメーカーにより製造されているスマート・フィールド装置を同じプロセス制御ネットワーク内で共に使用できるようにするために、HART(登録商標)、PROFIBUS(登録商標)、WORLDFIP(登録商標)、Device Net(登録商標)およびCANのプロトコルなど多くの標準タイプおよびオープン系のスマート装置通信プロトコルが開発されている。
【0004】
なおまた、プロセス制御産業界の動向としてプロセス制御機能を分散させる傾向にある。例えば、Fieldbus Foundation社により普及されているFOUNDATION(商標) Fieldbus (以下「Fieldbus (フィールドバス)」と総称)プロトコルとして知られるオールディジタル、2線式バスプロトコルは、以前は集中型コントローラ内で行なわれていた制御機能を行なうために異なるフィールド装置に設置される機能ブロックを使用する。特に、各Fieldbusフィールド装置は、(同じ装置内または異なる装置内のいずれかにおいて)各々他の機能ブロックから入力を受信したり、且つ又は他の機能ブロックに出力を供給する1つ以上の機能ブロックを含み且つそれを実行し、プロセス・パラメータの測定または検出、装置の制御、または比例・積分・微分(PID)制御ルーチンの実施などの制御機能を実行するなど何らかのプロセス制御作業を行なうことができる。プロセス制御システム内の別の機能ブロックは(例えば、バスを通じて)互いに通信し1つ以上のプロセス制御ループを形成できるように構成されており、その個々の動作はプロセスの全体にわたって広がり、よって分散化をなしえる。
【0005】
プロセス制御装置は通常、種々のアルゴリズム、サブルーチン、または流量制御ループ、温度制御ループ、圧力制御ループなどの制御ループ(すべて制御ルーチン)を、プロセスに対応して定義されるか又はプロセス内に含まれる多数の異なるループの各々に対して実行するようにプログラムされる。一般的に、上記のような制御ループはそれぞれ、アナログ入力(AI)機能ブロックや、比例・積分・微分(PID)制御またはファジー論理制御機能ブロックのような単独出力制御ブロック、およびアナログ出力(AO)機能ブロックのような単独出力ブロックなどの1つ以上の入力ブロックを含む。制御ブロックは、バルブ位置など単独プロセス入力を制御するために使用される単独出力を生成するので、通常これらの制御ループは単独入力‐単独出力制御を行なう。しかしながら、特定の場合においては、被制御プロセス変数は、単独のプロセス入力だけではなくそれ以外のものにも影響されるため、しかも実際に各々のプロセス入力は多くのプロセス出力の状態に影響をもたらしうるため、独立して作動する多くの単独入力‐単独出力制御ループを多数使用してもあまり効果的ではない。このような場合、単独入力‐単独出力制御ループを使用するとプロセス出力が定常状態に達する前に振動を生じる可能性があるため、単独入力‐単独出力制御ループの使用は望ましくない。
【0006】
従来では、前記のような状況において制御を行なうために、モデル予測制御ルーチン制御または他のタイプのアドバンスト制御技術が使用された。モデル予測制御とは一般的に、複数のプロセス入力の変更による複数のプロセス出力のそれぞれに対する影響を計測してから、これらの計測結果(応答)を使用してプロセスモデルを生成するマルチ入力‐マルチ出力制御戦略である。該プロセスモデルは数学的に反転され、その後、マルチ入力‐マルチ出力コントローラ内でプロセス入力の変更に基づきプロセス出力を制御するために使用される。時として該プロセスモデルは、各プロセス入力に対するプロセス出力応答曲線を含んでいるか、または該応答曲線から作成され、これらの曲線は、例えば、各プロセス入力に送られた一連の疑似ランダム階段状変化に基づいて生成されうる。プロセスをモデリングするために、これらの応答曲線を周知の様態において使用することができる。モデル予測制御は当技術分野において周知のことであり、よって、ここにおいてはその詳細に関する説明を省略する。ちなみに、モデル予測制御の概要は、1996年に米国化学技師協会(AIChE)会議にてQin, S. Joe氏とThomas A. Badgwell氏により発表された「An Overview of Industrial Model Predictive Control Technology (産業モデル予測制御技術の概要)」に記述されている。
【0007】
また、MPC制御ルーチンなどのアドバンスト制御ルーチンの生成および使用は、プロセス工場用コントローラのコンフィギュレーション(設定)工程に統合されている。例えば、ここで参照することによりここに援用されるWojsznisらによる「Integrated Advanced Control Blocks in Process Control Systems(プロセス制御システムにおける統合型アドバンスト制御ブロック)」と題する特許文献1における記述は、プロセス工場をコンフィギュレーション(設定)する際にプロセス工場から収集されたデータを用いるアドバンスト・コントローラ(例えばMPCコントローラまたはニューラルネットワーク・コントローラ)などのアドバンスト制御ブロックを生成する方法を開示している。さらに具体的に言うと、特許文献1には、Fieldbusパラダイムなど特定の制御パラダイムを採用する別の制御ブロックの作成とダウンロードに統合される様態でプロセス制御システム内にアドバンスト・マルチ入力‐マルチ出力制御ブロックを生成するコンフィギュレーション・システムが開示されている。この場合、プロセスを制御するために、各々対応するプロセス出力およびプロセス入力にそれぞれ連結される所望の入出力を備える制御ブロックを生成することにより、アドバンスト制御ブロックが開始する。制御ブロックはデータ収集ルーチン及びそれと関連付けられる波形発生器を含み、且つ同調(tuning)パラメータ、マトリクス係数またはその他の実施されるべき制御パラメータが論理に含まれていないが故に最終調整が未完了の(untuned)或いは開発が未完了の(undeveloped)制御論理を備えうる。制御ブロックは、コントロールシステム内で互いに通信できるように連結されている定義済み入出力と共にプロセス制御システム内に配置される。(該入出力は、アドバンスト制御ブロックがプロセスの制御に使用されている場合に連結されるようになっている。)次に、テスト手順中に、制御ブロックは、プロセスモデル開発の際に使用するために特別に設計されている波形発生器により生成された波形を使用し、制御ブロック出力を介して各プロセス入力を系統的に反転させる。その後、制御ブロックは、制御ブロック入力を介して、プロセス入力の各々に送られたそれぞれの生成された波形に対するプロセス出力の各々の応答に関するデータの収集を調整する。このデータは、例えば、格納すべきデータヒストリアン(履歴データツール)に送信してもよい。プロセス入出力の各組に対して十分なデータが収集された後、プロセスのモデリング処理が実行され、それにおいて、例えば周知の或いは所望のモデル生成ルーチンを使用して集めたデータからプロセスモデルが1つ以上生成される。このモデル決定ルーチンの一環として、モデルパラメータ決定ルーチンは、制御論理がプロセスの制御に使用するために必要するモデルパラメータ(例えばマトリクス係数、不感時間、ゲイン、時間定数など)を生成する。それから制御論理パラメータおよび必要な場合はプロセスモデルがアドバンスト制御ブロックの生成を完了させるために制御ブロックにダウンロードされ、それにより、アドバンスト制御ブロックおよびそれに含まれるモデル・パラメータ且つ又はプロセスモデルがプロセスの制御に使用できるようになる。
【0008】
プロセス工場内のプロセス・コントローラを生成およびダウンロードするための前記技術は有用である一方、テスト段階においてプロセス工場から収集されたデータからプロセスモデルを作成又は生成するためにモデル作成ソフトウェアの能力に大きく依存するものである。実際にプロセスモデルの開発は、例えばMPCコントローラの導入において最も重要な段階であり、また、大抵の場合、そのモデルの品質によりアプリケーションが正常に機能(成功)するか否か決定される。したがって、アドバンスト制御ブロックにおいて使用するために生成されたプロセスモデルを生成および確認する工程は非常に重要である。
【0009】
一般的に、プロセスモデル作成ソフトウェアは、有限インパルス応答(FIR)モデルなどのノンパラメトリックモデル及び外部入力付き自己回帰(ARX)モデルなどのパラメトリックモデルをはじめとする様々なタイプのモデルを生成しえる。一般的に、FIRモデル作成ルーチンはFIRモデルを生産できる一方で、FIRモデルはARXモデルと比較するとモデルを定義するために必要とされるメモリのサイズ並びにモデルの開発に必要とされる演算回数の関係において、MPCコントローラにおいて不利な要素を持っている。ARXおよび他のパラメトリックモデルはモデルを定義するために必要とされるメモリおよび演算回数がFIRモデルと比較して少ない一方、パラメトリックモデル作成ソフトウェアはモデル・パラメータの解に収束できないため、該ソフトウェアではパラメトリック・プロセスモデルを全く作成することができない場合が多々ある。特に、最小自乗などの回帰アルゴリズムに依存するモデル生成技法において解への収束が問題となる事実は周知のことである。この場合、同定されたモデル・パラメータは数学的には正確かもしれないが、真のパラメータを示すものではない。ARXおよびその他のパラメトリックモデルにより生成されるプロセスの不感時間の予測値は通常正確ではないため、当該モデルは前記の問題が生じやすく、結果としてモデルを生成する能力に欠けたり、パラメータが数的に有効とされないモデルを生成したりすることにつながる。
【0010】
いずれにしても、モデル作成ソフトウェアがパラメトリックモデルを生成できないと、制御設計者が十分または適切なパラメトリックモデルを手動で決定しなければならないため、どちらの場合も問題である。従来は、例えば、パラメトリックモデル作成ソフトウェアを一組のモデル・パラメータに収束させようと試みる際に、ユーザは、モデルの作成に使用されたプロセスデータに更にデータを追加したり、[前回]以上の不感時間または時間定数(一つまたは複数の)など様々なパラメータを指定してみたり、或いはプロセスデータの生成に使用されるプロセス反転信号の段階の絶対値(step magnitudes)を変更したりするなどを行わなければならなかった。また、これらの段階には、パラメトリックモデルのモデルパラメータを収束させようとする際に効果的に又は一貫して機能するものが一つもない。なおまた、モデル作成環境を手動で変更する段階においては、制御設計者が被制御プロセスについての適切な知識および経験を備えていることが要求され、これに加えて適切なモデルを決定するための適切な解析ツールが必要である。多くの場合、これらの要素のうちの一つまたは両方が欠けているために、結果として制御設計者は異なるタイプのコントローラ形式を選ばざるをえない状態である。
【0011】
実際にデータからモデルを生成する場合、プロセスモデルの正確さを確認するため、およびコントローラに要求されるロバスト性(頑強性)を如実に示しえる指標を提供するために、プロセスモデルの見直し検討および確認が行なわれる。例えば、モデルとプロセスが大きく相違する(不一致である)場合、より高いロバスト性を持つコントローラを使用するべきである。典型的なモデル同定の手順は、モデル予測の妥当性に関する定性的チェックの実施、モデル・パラメータの検証および編集、統計モデルの実証、およびモデル・シミュレーションの実施にかかる。特に該モデル予測段階の定性的チェック時には、シミューレーション・ソフトウェアはプロセスモデル入力として実際のプロセス入力データを適用し、また該プロセスにおける実際の出力の、既知のデータセットに予測出力に対してグラフを作成する。
【0012】
該検証段階においてユーザは、プロセスに関する知識に基づき、プロセスモデルに対する個々の段階応答を視覚的に(例えば、グラフィカルに)点検し、これらの段階応答が予測どおりの範囲にあることを検証する。数値による段階応答やグラフィカルな段階応答の設計と編集をユーザが行えるようにする周知のツールを使用して、該ユーザは、(1)プロセスに関する知識と、(2)計測[値]の動向およびシミュレーションの観察を通して収集された情報と、(3)得られたプロセスモデルとに基づいてモデルを修正することができる。
【0013】
次に、統計モデルの実証段階では、統計的手法を使用してモデルの不確実性を数量化する。前記統計的手法は、平方2乗平均(RMS:二乗平均平方根値)など、実際の出力と予測の出力との検証エラーを算出することに関する。要求を満たさないモデルについては、2乗平均のエラーがかなり高く、例えば走査当たり2.4パーセントある。経験に基づく概括的・近似的な原則としては、平均出力エラーが走査当たり1パーセントを上回る場合、関連する段階応答をより詳細にわたり調査するべきであるとされる。その他使用できる統計的手法として、残差とプロセス間の交差相関且つ又は残差の自己相関を探究するところの検証エラーまたは残差の相関分析が挙げられる。さらに、プロセスモデルの周波数伝達関数および残差を算出することが可能であり、また、周波数ドメインの不確実性範囲(境界)を検討対象の周波数帯域におけるモデルの品質を示す指標として使用してもよい。
【0014】
開発されたモデル・パラメータに基づいてモデル品質を定義するための有用な様態の一つは、定義済みの確率限界(probability)における特定のモデル・パラメータ値の範囲(通常95%)を示すモデル信頼区間の概念を利用している。すなわち、信頼区間は、パラメータ値が定義済みの確率限界の範囲に含まれると予測されるモデル・パラメータ値の範囲を定義する。信頼区間は、モデル同定に関する非常に重要な暗黙の情報を提供するため、信頼区間が広いほどモデルの精度が低下することが示唆される。信頼区間が狭い方が望ましいことが一般的に認められている。一方、例えば、モデル次数(order)がプロセスの複雑性と整合しない場合、又は線型モデルがかなりの非線形性を伴うモデリング工程に使用されている場合は、信頼区間が広い方が所望のモデルパラメータをより良く収束できることが示唆される。しかしながら、ユーザは信頼区間を利用してより効果的にモデルを検証することができる一方、信頼区間は、モデルの改善またはモデルをより正確なものにする目的でモデルを変更する際には有用とはいえない。
【0015】
最後に、プロセスモデルおよびプロセスモデルの応答をグラフィカルに表示し、場合によってはそれらを編集した後に、プロセスモデルを使用してのMPCシミュレーションを実行することにより、ユーザはプロセス対プロセスモデルの不整合性についての見解を得ることができる。さらに、シミュレーションにより、コントローラの使用前に「what if分析」(シミュレーション分析)を行うことが可能になる。
【0016】
これらの技法はMPCモデルのチェックに日々利用されているが、本来的な欠点もある。特に、予測精度(予測品質)の目視観測およびコンピュータ演算による検証エラー(RMS値、残差、etc.)などはどちらも単に「予測出力が正確でないで可能性(疑惑性)がある」ということを示すだけであり、また、シミュレーション・エラーによりモデルの不整合性が示されても、それによりモデルを向上させるために利用できる情報が提供されるわけではない。同様に、数値による及びグラフィカルな段階応答設計・編集ツールについても、ユーザがプロセスに関する専門的な知識がある場合のみにその有用性が発揮されることも明らかである。
【0017】
したがって、ゲイン(過程利益)などのパラメータの妥当性を検証するために段階応答を点検することはできるが、ダイナミクスやゲインの絶対値(magnitude)および時間定数など、結果的に得られるコントローラに大きな影響を及ぼすその他の重要な情報をユーザが明確に確認できない場合がある。誤差が生じる最も一般的な原因として、例えば、概してユーザにより正確に把握されておらず、それ故にモデルの設計や編集工程においてたやすく勘案できないようなプロセス不感時間またはパラメータが挙げられる。さらにまた、ノイズを含むデータ、不充分なプロセスの励起、およびデータ収集用の検査時間の不足なども、制御目的の要求を満たせないようなモデルが生産される原因となりえる問題点として挙げられている。とはいえ、工場における諸条件によりテスト自体を改善することは不可能な場合がある。さらにまた、自己相関および交差相関などの統計的評価は、数量モデル情報を提供する上では有用であるが、上記と同じ問題(すなわち具体的な情報が提供されないという問題)をかかえている。
【0018】
結果として、モデルの誤差が認識されている場合でも、是正処置を決定または実施することは困難である。多くの場合、たとえモデルのほんの一部分のみが当該不整合性の原因となっているとしても、この問題(事実)を解決するには別のまたは異なるデータの組を使ってモデルの再同定を行うことが必要とされる。ここで更に、決定しえるモデルの不整合情報がコントローラ生成プロセスに実際に反映されないという問題がある。したがって、コントローラが使用され且つその性能実績が測定された後にならないと本当のモデルの品質を知ることができず、そのため、相当な時間や資金および資源を失うことになるだけではなく、工場人員によるMPC技術の採用を妨げる要因となる。
【0019】
この点において、時間ドメインにおいて信頼区間を示す方法は、個々の段階応答に対して具体的なパラメータという形でモデル品質の諸特質を提供できるため、適用する価値のある有望な技法であるといえる。この技法はまた、モデルの特定の部分のみを再同定且つ又は訂正することを可能にする。同じく重要な[利点]として、特定のパラメータのエラーを認識することによりMPCコントローラ生成設定の選択を容易できるため、ロバストなコントローラを得ることができるという点が挙げられる。また、信頼区間の時間ドメインでの提示により、前記のような品質変数を使用する際の複雑性が解消される。
【特許文献1】米国特許第6,445,963号明細書
【発明の開示】
【発明が解決しようとする課題】
【0020】
しかしながら、時間ドメイン中での信頼区間を使用すると生成されたプロセスモデルを評価する際に効果的である一方、充分な励起(excitation)を伴わずに行われたテスト、データ収集時間枠の不足、モデルとプロセス複雑性の不整合などモデルに制約をもたらす条件などの(例えば、モデル次数がプロセスの複雑性と整合しない、又は線型モデルがかなりの非線形性を伴うモデリング工程に使用されているなどの)問題が存在していても、MPCコントローラ生成をはじめとするコントローラ生成に利用可能なロバスト(頑強)なプロセスモデル生成方法を始めから提供することがなお望ましい。
【課題を解決するための手段】
【0021】
意外にも、MPCコントローラ生成などのコントローラ生成に利用できるロバスト(頑強)なプロセスモデル生成方法が(特にパラメトリック・プロセスモデルの生成する場合において)、プロセスから収集され且つモデル生成過程で使用されるプロセスデータにノイズを添加することにより得られることが発見された。特に、パラメトリック・プロセスモデルなどのロバスト(頑強)なプロセスモデル生成法は、周知のテスト入力の信号または系列に基づいてプロセス出力を収集し、収集されたプロセスデータにランダムノイズ(不規則雑音)などのノイズを添加した後、この収集プロセスデータからプロセスモデルを決定するために標準的技法または周知の技法を利用する。実際に、プロセスモデルを生成する前にプロセスデータからノイズを除去または削除しようと試みる従来の技法に反し、通常ならばノイズの添加なくしては同じタイプの好ましいプロセスモデルを生成することが不可能でありえる状態でも、プロセスデータにノイズを添加することにより、ほとんどの場合好ましいプロセスモデルの生成が可能になることが明らかになっている。なお、この技法を使用して生成されたプロセスモデルは、一般的に、より広範囲の信頼区間を備えているため、モデル作成環境を手動で又はグラフィカルに変更する必要なく、多くのプロセスにおける複雑性を考慮してなる広範な信頼区間にも十分適合できるモデルを提供することが可能であることが明らかになっている。
【0022】
この技法の一使用(態様)においては、アドバンスト制御ブロック生成ルーチンは、プロセス制御システム内においてロバスト・プロセスモデル作成ルーチンを使用してモデル予測コントローラ、ニューラルネットワーク・モデリング・ブロック、又は制御ブロックなどのマルチ入力‐マルチ出力ブロックを生成する。該アドバンスト制御ブロックは、プロセスを制御するために、各々対応するプロセス出力およびプロセス入力にそれぞれ連結される所望の入出力を備える制御ブロックを生成することにより開始される。該制御ブロックは最終的には、例えば、モデル予測コントローラ一式を含むようにできるが、初期状態においてはデータ収集ルーチンおよびそれに伴う波形発生器を備える。望ましい場合は、該制御ブロックが、同調パラメータや、マトリクス係数、またはその他の該コントローラ実行に要される制御パラメータが論理に含まれていないが故に、最終調整が未完了(untuned)もしくは開発が未完了(undeveloped)の制御論理を備えるようにしてもよい。制御ブロックは、コントロールシステム内で互いに通信できるように連結されている定義済み入出力と共にプロセス制御システム内に配置される。(該入出力は、アドバンスト制御ブロックがプロセスの制御に使用されている場合に連結されるようになっている。)テスト手順中に、制御ブロックは、プロセスモデルを開発する際に使用できるように特別に設計されている波形発生器により生成された波形を使用し、制御ブロック出力を介して各プロセス入力を系統的に反転させる。該制御ブロックは、制御ブロック入力を介して、プロセス入力の各々に送られた生成された波形のそれぞれに対する各プロセス出力の応答に関するデータ収集を調整する。このデータは、例えば、データ・ヒストリアンに送信されそこに格納されてもよい。
【0023】
十分なデータが収集された後、プロセスのモデリングが実行され、収集されたプロセス出力データにノイズが添加される。このノイズには、例えば、平均値がゼロで均等に分布されるノイズで最大振幅がプロセス出力データの絶対値(magnitude)範囲の約0.20〜約0.5パーセントのものを使用してもよいが、平均値がゼロで均等に分布されるノイズで最大振幅がプロセス出力データの絶対値(magnitude)範囲の約0.4パーセントのものがより好ましい。その後、パラメトリック・プロセスモデルなどのプロセスモデルは、例えば、ARXモデル生成ルーチンなどのモデル予測コントローラプロセスモデル生成ルーチンを使用して収集された(ノイズを含む)データから生成される。その後、制御ブロックの論理により、制御論理をプロセス制御に使用するのに必要とされるパラメータを作成または開発する。望ましい場合は、作成されたプロセスモデルの妥当性を検証し、その検証結果については、一つ以上のモデル信頼域を示すグラフでプロットしてユーザに表示してもよい。望ましい場合は、ユーザが、どの個所でモデルがプロセス応答から外れているのかを判断し、必要な場合にはその不一致が生じているモデル上の個所に変更を加えられるようにする、時間ドメインに基づく信頼区間のグラフを前記信頼区間のグラフとしてもよい。
【0024】
結果として得られたプロセスモデルをテストまたは表示した後に、アドバンスト制御ブロックの生成を完了させるために制御論理パラメータおよびプロセスモデルが制御ブロックにダウンロードされ、それにより、アドバンスト制御ブロック並びにそれに含まれるモデル・パラメータとプロセスモデルがプロセスの制御に使用できるようになる。
【発明を実施するための最良の形態】
【0025】
ここで図1を参照して説明すると、プロセス制御システム10は、データ・ヒストリアン12 および1台以上のホスト・ワークステーションまたはコンピュータ13(諸タイプのパーソナルコンピュータ、ワークステーション、など)に接続され各々表示画面14を備えるプロセス・コントローラ11を含む。また、コントローラ11は入出力(I/O)カード26、28を介してフィールド装置15〜22に接続される。データ・ヒストリアン12は、望ましいとされる諸タイプのメモリおよびデータを格納するためのあらゆる望ましい又は周知のソフトウェア、ハードウェアまたはファームウェアを備える諸タイプの望ましいデータ収集ユニットでありえ、(図1に図示されるように)ワークステーション13とは別に或いはワークステーション13のうちの一台の一部として設けられてもよい。コントローラ11(例えば、Emerson Process Management社から販売されているDeltaV(商標)コントローラ)は、例えばイーサネット(登録商標)接続または他の望ましい通信網を介して、ホスト・コンピュータ13およびデータ・ヒストリアン12に通信可能に接続される。また、コントローラ11は、例えば、標準の4〜20 ma装置且つ又はFieldbusプロトコル、HART(登録商標)プロトコルなどの様々なスマート通信プロトコルに関連付けられる所望のあらゆるハードウェアおよびソフトウェアを用いてフィールド装置15〜22に通信可能に接続される。
【0026】
フィールド装置15〜22は、センサー、バルブ、伝送器、ポジショナーなどのあらゆるタイプの装置でありえ、一方、I/Oカード26、28は、所望のあらゆるコミュニケーションまたはコントローラ・プロトコルに準拠するあらゆるタイプのI/O装置でありえる。図1に示す実施形態において、フィールド装置15〜18はアナログ回線を通じてI/Oカード26と通信する標準の4〜20 ma装置であり、フィールド装置19〜22はFieldbusプロトコルによるコミュニケーションを用いデジタル・バスを通じてI/Oカード28と通信するFieldbusフィールド装置のようなスマート装置である。一般的に、Fieldbusプロトコルは、フィールド装置を相互連結する2線式ループまたはバスに、標準化された物理インタフェースを供給するオールディジタルのシリアル双方向通信プロトコルである。要するに、Fieldbusプロトコルはプロセス内のフィールド装置にローカルエリアネットワークを提供し、これらのフィールド装置が、プロセス施設全体にわたり分散される場所で(Fieldbusプロトコルにのっとって定義される機能ブロックを用いて)プロセス制御機能を行い、またこれらのプロセス制御機能の実行前および実行後に互いに通信することにより、総合的な制御戦略を実施できるようにする。もちろん、フィールド装置15〜22はその他所望の標準またはプロトコル(将来的に開発されうる諸規格またはプロトコルを含む)に準拠するものでもありえる。
【0027】
コントローラ11は、それに格納されるもしくはそれと関連付けられている一つ以上のプロセス制御ルーチン(制御ループを含みうる)を実施または監視し、所望のあらゆる様態にてプロセスを制御するために装置15‐22、ホスト・コンピュータ13およびデータ・ヒストリアン12と通信する。なお、ここに記載される制御ルーチンまたは要素はいずれも、所望の場合、異なるコントローラまたは他の装置により実施または実行される部分を備えうることにも注目すべきである。同様に、ここに記載されているプロセス制御システム10内に実施されるべき制御ルーチンまたは要素は、ソフトウェア、ファームウェア、ハードウェアなどを含むあらゆる様式のものでありえる。本発明を達成する目的で、プロセス制御要素を、例えばコンピュータ可読媒体に格納されるあらゆるルーチン、ブロックまたはモジュールをはじめとするプロセス制御システムのあらゆる部分またはその一部とすることが可能である。モジュールまたは、サブルーチン、サブルーチンの一部(コード行など)といった制御手順におけるあらゆる一部分でありえる制御ルーチンは、ラダー言語(ロジック)、シーケンシャルファンクションチャート、機能ブロック図、或いはその他のソフトウェアプログラミング言語または設計パラダイムを使用する所望のあらゆるソフトウェア形式にて実施しえる。同様に、制御ルーチンを、例えば一つ以上のEPROM、EEPROM、特殊用途向け集積回路(ASIC)またはその他のハードウェアもしくはファームウェアの要素用にハードコード化しえる。さらにまた、制御ルーチンを、グラフィカル設計ツールやその他のタイプのソフトウェア/ハードウェア/ファームウェアのプログラミングまたは設計ツールを含むあらゆる設計ツールを用いて設計してもよい。このように、所望のあらゆる様態にて制御戦略または制御ルーチンを実施するようにコントローラ11をコンフィギュレーション(設定)してもよい。
【0028】
一実施形態において、各機能ブロックは全体的な制御ルーチンの一部分(例えばサブルーチン)であり、プロセス制御システム10内でプロセス制御ループを実施するために(リンクと呼ばれる通信機能を介して)他の機能ブロックと共に作動する、いわゆる機能ブロックというものを使って、コントローラ11が制御戦略を実施する。機能ブロックは通常、伝送器、センサーまたはその他のプロセス・パラメータ測定装置に関連する入力機能、PIDやファジー論理などの制御を行なう制御ルーチンに関連する制御機能、またはプロセス制御システム10内で何らかの物理的機能を行うために何らかの装置(バルブなど)の動作を制御する出力機能のうちの一つを行う。もちろんハイブリッドやその他のタイプの機能ブロックも存在する。通常、これらの機能ブロックが標準の4〜20 ma装置およびHART(登録商標)装置のような何らかのタイプのスマート・フィールド装置に使用されている又は関連付けられている場合は、機能ブロックをコントローラ11に格納し該コントローラにより実行してもよく、またFieldbus装置の場合はフィールド装置自体に格納し該装置により実行してもよい。本明細書においては機能ブロック制御戦略を用いるコントロールシステムが説明されているが、ラダー言語(ロジック)、シーケンシャル・ファンクション・チャートなどその他の仕様(conventions)を用いて、または所望のその他のプログラミング言語やパラダイムを用いて、制御戦略または制御ループまたはモジュールを実施または設計してもよい。
【0029】
図1における展開ブロック図30に示されるように、コントローラ11には、複数の単ループ制御ルーチン(図中、ルーチン32および34として示される)を内蔵してもよく、また所望の場合は一つ以上のアドバンスト制御ループ(図中、制御ループ36として示される)を実施してもよい。通常、このようなループをそれぞれ制御モジュールと呼ぶ。前記単ループ制御ルーチン32、34は、それぞれ対応する適切なアナログ入力(AI)機能ブロックとアナログ出力(AO)機能ブロックに接続される単独入力‐単独出力ファジー論理制御ブロックと単独入力‐単独出力PID制御ブロックを用いて信号ループ制御を行なっている状態で図示されている。(該アナログ入力(AI)およびアナログ出力(AO)機能ブロックは、バルブなどの工程管理装置と、温度伝送器や圧力伝送器などの測定装置と、またはプロセス制御システム10内に備えられているその他の装置と関連付けられている。)もちろん単ループ制御ルーチン32および34は、モデル・ベース制御ブロックをはじめとするその他のタイプの制御ブロックを含みうる。前記アドバンスト制御ループ36は、多数のAI機能ブロックに通信可能に接続された入力と多数のAO機能ブロックに通信可能に接続された出力を持つアドバンスト制御ブロック38を含んでいる状態で図示されている。該アドバンスト制御ブロック38の入出力は、その他所望の機能ブロックまたは制御要素に接続され、その他のタイプの入力を受け取るか、もしくはその他のタイプの制御出力を供給するように構成されている場合もありうる。アドバンスト制御ブロック38は、複数のプロセス入力に制御信号を供給することにより複数のプロセス出力を制御するために使用されるあらゆるタイプのマルチ入力‐マルチ出力制御ブロックでありうる。本明細書においては、アドバンスト制御ブロック38がモデル予測制御(MPC)ブロックであるとしているが、該アドバンスト制御ブロック38は、ニューラルネットワーク・モデリングまたは制御ブロック、マルチ変数ファジー論理制御ブロック、リアルタイム最適化ブロックなどその他のマルチ入力‐マルチ出力ブロックでもありえる。図1に図示されるアドバンスト制御ブロック38や単独入力‐単独出力制御ブロックなどの機能ブロックは、コントローラ11により実行、或いは、例えば複数のワークステーション13のうちの1台(もしくはフィールド装置19〜22のうちの1台)などその他の制御演算装置に設置されてそこで実行できるということが分かるはずである。
【0030】
図1に示されるように、ワークステーション13のうちの1台は、ここにおいてより詳細に説明されている方法でアドバンスト制御ブロック38の作成、ダウンロードおよび実施を行う制御ブロック生成ルーチン40を含んでいる。該制御ブロック生成ルーチン40をワークステーション13内のメモリに格納してその中にあるプロセッサにより実行してもよいが、所望の場合は、このルーチン(またはその一部)を付加的または代替的にプロセス制御システム10内の別の装置に格納してその装置により実行してもよい。一般的に言って、該制御ブロック生成ルーチン40は、アドバンスト制御ブロックを作成し、プロセス制御システムにこのアドバンスト制御ブロックを接続する制御ブロック作成ルーチン42と、アドバンスト制御ブロックにより収集されたデータに基づきプロセスまたはその一部のプロセスモデルを作成するプロセス・モデリングルーチン44と、プロセスモデルからアドバンスト制御ブロック用の制御論理パラメータを作成し且つこれらの制御論理パラメータをプロセス制御の際に使用できるようにするためにアドバンスト制御ブロックに格納またはダウンロードする制御論理パラメータ作成ルーチン46と、を含んでいる。下に一覧される一連の異なるルーチンにより該ルーチン42、44および46を構成できるということが理解されるはずである:即ち、
プロセス出力を受け取るよう構成される制御入力を備え且つプロセス入力に制御信号を供給するよう構成される制御出力を備えるアドバンスト制御要素を作成する第1のルーチン、
ユーザがプロセス制御ルーチン(所望のあらゆるコンフィギュレーション・ルーチンでありうる)内にアドバンスト制御要素を通信可能に接続することを可能にする第2のルーチン、
各プロセス入力に励起波形を供給するためにアドバンスト制御要素を用いる第3のルーチン、
該励起波形へのプロセス出力それぞれの応答を反映するデータを収集するためにアドバンスト制御要素を用いる第4のルーチン、
前記収集されたデータからプロセスモデルを作成する第5のルーチン、
プロセスモデルからのアドバンスト制御論理パラメータを開発する第6のルーチン、および
アドバンスト制御要素によるプロセス制御を可能にするためにアドバンスト制御論理と(必要な場合は)プロセスモデルを該アドバンスト制御要素内に配置する第7のルーチン、などである。
【0031】
制御ブロック生成ルーチン40はマルチ入力‐マルチ出力制御ブロックを作成するために用いられると本明細書において説明されているが、該ルーチン40を単独入力‐単独出力、またはマルチ入力‐単独出力、または単独入力‐マルチ出力の制御ブロック或いは他のタイプのブロック(例えばモデリングブロックなど)を作成するために使用することもできる。
【0032】
以下、図2を参照しながら説明する。フローチャート50は、制御ブロックで使用される一つ以上のプロセスモデルをロバストに(頑強に)生成することにかかる方法により図1のプロセス制御システム10のようなプロセス制御システムにおいてモデル・ベース制御ブロック(特ににMPC制御ブロック)を作成し使用する段階を示している。ここで言う「プロセスモデルをロバストに(頑強に)生成する」という表現は、制御ブロックが許容範囲(acceptable)内の水準で動作することを保証するために、対象となるプロセスに整合するプロセスの一つ以上の統計的測度(尺度)を満たすプロセスモデルを、例えば、プロセスデータが極めて少ない、又はプロセスモデルがプロセスの複雑性に整合しない等、通常そのようなプロセスモデルを生成する能力を制限するとされる様々な因子が存在するにもかかわらず、生成できるという意味である。MPCブロックまたはモジュールの作成が図2のフローチャート50により示されているが、それと同じまたは類似する段階を行って、例えばニューラルネットワーク・モデリングまたは制御ブロック、マルチ変数ファジー論理制御ブロックなどのあらゆるマルチ入力/マルチ出力ブロックのような他のモデル・ベース・ブロックを作成および使用することもできる。
【0033】
所定の開始時間(ブロック52)において、MPC処理の実施によりプロセス制御システム10内において制御を向上または提供するための決定が下される。この決定が下されるのは、プロセス制御システム10の初期設定時、または、例えばその他単ループ制御ルーチンなどの制御ルーチンにより十分な制御が行われていないと判明した後のある一定の時点においてである。該ブロック52において、オペレーターまたは他のユーザは、プロセス制御システム内のMPCモジュールまたは制御ループを作成する段階を開始するためにMPCブロック生成ルーチン40を実行する。この工程の一環として、オペレーターは、設計中のMPCブロックの出力が接続されることになっているプロセス入力を選択し、また設計中のMPCブロックの入力が接続されることになっているプロセス出力を選択する。MPCブロックの入出力数はいかなる数でもよいが、一般的に各MPCブロックは、設定値(または設定範囲内)において維持すべきプロセス変数またはパラメータである被制御パラメータ入力と、例えばプロセスに関連する物理的制約に応じて特定の制約条件または範囲により制限されるプロセス変数であり且つMPCブロックが決して制約又は範囲から外れてはならないところの制約付き入力と、変更すると被制御パラメータも変更すると分かっているプロセス入力のようなそれ以外のプロセス変数であるプロセス外乱パラメータ入力とを含む3種類の入力を備える。MPCブロックはプロセス外乱パラメータ入力を用いて、被制御パラメータ(つまり、被制御プロセス出力)への変更を予測し、変更の影響が生じる前に抑制する。例えば被制御装置またはその他の被制御プロセス要素からの(MPC制御ブロックがこれらの要素をより効果的に制御できるようするための)フィードバックなど、その他の入力をMPCブロックに設けてもよい。同様に、該MPCブロックの出力は、制御ループ入力や装置制御入力などを含む所望のあらゆるプロセス変数またはその他のプロセス入力を制御するために接続されてもよい。他の制御要素に該MPCブロックを接続することにより開発されたルーチンは、ここにおいてMPCモジュールと総称する。ユーザはMPC機能ブロックを新規作成してもよいが、機能ブロック・ライブラリーなどのメモリから初期機能ブロックを取得した後、この機能ブロックを使って又はこの機能ブロックのインスタンスを作成してプロセス制御システムに使用してもよい。さらに、ユーザまたは他のプロバイダー(供給者)はその他の所望の様態で機能ブロックまたは他の制御要素を設けてもよい。
【0034】
ブロック54において、オペレーターは、プロセス制御システム内で通信可能に接続された特定の入出力を使って、(まだモデル予測制御を達成するのに必要なすべての情報を含んでいない)MPCブロックを有するMPCモジュールを作成し、MPCモジュールを実施する適切なコントローラまたは他の装置に該ブロックまたはモジュールをダウンロードする。この工程の一環として、オペレーターは、MPCブロックの出力を適切なプロセス入力に通信可能に連結し、MPCブロックの入力を適切なプロセス出力に通信可能に連結することにより、MPCブロックを実施するためにプロセス制御システム10をコンフィギュレーションする。
【0035】
図3において、MPCブロック56はプロセス58に接続された状態で図示されている。該MPCブロック56は、3つの入力IN1〜IN3および3つの出力OUT1〜OUT3を持つ3x3制御ブロックであり、一方、該プロセス58は入力X1〜X5および出力Y1〜Y6を備えるものである。もちろん、該MPCブロック56および該プロセス58には前記以外の入出力数を備えることもできる。該MPCブロック56は一般的に正方形のブロック(すなわち、入力数が出力数と同数のブロック)でもよいが、このようなコンフィギュレーションは必ずしも必要とされずMPCブロック56の入力数と出力数は異なる数でもよい。図3に示されるように、オペレーターは、プロセス出力Y1〜Y3をそれぞれ対応するMPCブロック入力IN1〜IN3へと通信可能に接続し、且つ、MPCブロック出力OUT1〜OUT3をそれぞれ対応するプロセス入力X1〜X3へと通信可能に接続する。もちろん、図3においてプロセス入出力に接続する点線で図示されているように、プロセス58の入力と出力のどれもが他の制御ループまたはプロセス制御システム10に関連する制御ルーチン内にあるその他の要素には接続されうる。一般的に、MPCブロック56および制御入力(プロセス入力X1〜X3に接続する点線で図示される)をプロセス58へ供給しうるその他のブロックは、何らかのスイッチ(図3においてボックス59として示される)を介して接続される。スイッチ59は、ハードウェアまたはソフトウェア・スイッチでありえ、また所望の場合は、Fieldbus機能ブロックなど機能ブロック内に備わる異なる入力に送られる異なる制御入力信号を持ち、2つの信号を受け取る機能ブロックのモードに基づいてMPCブロック56からの制御信号と別の機能ブロック(例えばPID機能ブロック)からの制御信号とを切り替える(選択する)ものを設けてもよい。
【0036】
もちろん、オペレーターは所望のあらゆる様態でプロセス58にMPCブロック56を接続でき、また一般的にオペレーターは、プロセス制御システム10内の単ループ制御ルーチンなど別の制御ループを作成するために使用するのと同じ制御コンフィギュレーションまたは設計プログラムを使うことになる。例えば、オペレーターは所望のあらゆるグラフィカル・プログラミング・ルーチンを使ってMPCブロック56とプロセス入出力間の接続を指定してもよい。このように、MPCブロック56は、他の制御ブロック、要素またはルーチンと同じ方法でサポートされており、これにより制御システム10内におけるMPCブロック56のコンフィギュレーションと接続およびそのブロックのサポート(状態)を、該システム内にあるその他のブロックのコンフィギュレーション、接続およびサポート(状態)と同じものにする。一実施形態において、制御システム10内にあるその他のブロックと同様にMPCブロック56は、Fieldbus機能ブロックと同じ又はそれに類似するものなるように設計された機能ブロックである。本実施形態において、MPCブロック56は、Fieldbusプロトコルの指定または提供と同じ又は類似するタイプの入出力を持っているものなどでもよく、さらに、例えばFieldbusプロトコルが指定するものと同じ又はそれに類似する通信リンクを用いてコントローラ11により実行(実施)できるものである。なお、プロセス制御ルーチンおよびその要素をグラフィカルに作成する方法は、ここで参照することによりここに明確に援用される「System for Configuring a Process Control Environment(プロセス制御環境をコンフィギュレーションするためのシステム」と題するDoveらによる米国特許第5,838,563号に記載されている。もちろん、異なるタイプの機能ブロックを用いるものやその他のプロセス制御コンフィギュレーション・パラダイムに含まれるその他のルーチン、サブルーチンまたは制御要素を用いるものなど、他の制御ループまたは制御モジュールの設計戦略を使用することも可能である。
【0037】
Fieldbus機能ブロックパラダイムにより提供されるもののように機能ブロックが相互に接続されるコントロールシステムを用いる場合、MPCブロック56をプロセス制御ルーチン内の別の機能ブロックに直接に接続することができる。例えば、被制御装置に関連する出力ブロック(例えばAOブロックなど)にMPCブロック56の制御出力を接続することにより、MPCブロック56を例えばバルブなどの制御装置に直接に接続することが可能になる。同様に、これらの制御ループの動作を監視又は無視(オーバーライド)するために、MPCブロック56が、別の制御ループ内の機能ブロック(例えば別の制御機能ブロックの入力など)に制御信号を提供するようにしてもよい。
【0038】
特許文献1にもより詳細にわたり説明されて、これにより理解されるように、図3においてMPC制御ブロック56の出力接続されているプロセス入力X1〜X3は、既存の制御戦略により定義される制御ループへの入力またはプロセスに接続されるバルブやその他の装置への入力などの所望のあらゆるプロセス入力でありうる。同様に、MPCブロック56の入力に接続されるプロセス出力Y1〜Y3も、バルブや他のセンサーの出力、AOまたはAI機能ブロックの出力またはその他の制御要素または制御ルーチンの出力などの所望のあらゆるプロセス出力でありうる。
【0039】
再度図2のステップ54を参照しながら説明すると、一旦オペレーターがそれぞれ対応する所望のプロセス出力と入力に各々接続されている入出力を持つ初期(第1の)MPCブロックを含む制御モジュールを作成すると、初期MPCブロックが組み込まれている制御モジュールは、コントローラ11または一つ以上のワークステーション13のうちの一台など適切な装置へダウンロードされ、実行できる状態とされる。次に、オペレーターはステップ99において、初期MPCブロックに、周知の方法でプロセスを励起してプロセス励起中にプロセス入出力データを収集する処理を開始するように指示する。
【0040】
図3に示されるように、初期MPCブロック56には、データ収集ルーチン100、波形発生器101、ジェネリック制御論理102、および制御パラメータ103とプロセスモデルまたはモデル・パラメータ104を格納するための記憶装置が組み込まれている。ジェネリック論理102は、例えば、特定のインスタンスにおいて制御を行なうために作動するには係数またはその他の制御パラメータを必要とするジェネリックMPCルーチンでありうる。また、場合によっては、ジェネリック論理102はプロセスモデルまたは被制御プロセスを制御する際に該被制御プロセス用のモデル・パラメータを必要とするものでありうる。初期MPCブロック56は、例えばコントローラ11へダウンロードされた後、MPCブロック56の開発工程における次のフェーズ(プロセスモデルの作成に使用されるプロセス出力の各々に対してデータが収集されるフェーズ)を開始するようにとの指示を、MPC作成ルーチン42を介して受け取る。具体的には、オペレーターにより前記指示が発せられた時点で(またはその他いつでも所望に応じて)、MPCブロック56の波形発生器101はその出力OUT1〜OUT3にて一連の波形(series waveform)を発生し始め、プロセス入力X1〜X3の各々に励起波形を供給する。所望の場合は、ユーザ・ワークステーション13内のソフトウェアによりこれらの波形をジェネレータ101に供給してもよいが、むしろジェネレータ101により作成するほうが好ましい。また、好ましくは、波形発生器101により発せられた波形は、プロセスの通常動作中に生じると推測される異なる入力範囲にわたり該プロセスが動作するように設計される。MPC制御ルーチン用のプロセスモデルを開発するために、波形発生器101からプロセス入力X1〜X3の各々に一連の異なる組からなるパルスを送りうる(これにおいて、それぞれ同じパルス組の中に含まれるパルスは同じ振幅を有するが疑似ランダムな長さを有し、異なるパルス組のパルスは異なる振幅を有する)。このような一連のパルスの組は、それぞれの異なるプロセス入力X1〜X3を対象に作成された後、連続して一度に配信されうる。この間、MPCブロック56内のデータ収集ユニット100は、波形発生器101により発せられたそれぞれの波形に対するプロセス出力Y1〜Y3の応答を示すデータを収集するかもしくは収集動作を調整するものであり、また発せられた励起波形に関するデータを収集または収集動作を調整してもよい。この収集されたデータはMPCブロック56に格納されてもよいが、むしろ、データ・ヒストリアン12に自動的に送信してそこに格納するか、且つ又は、このデータを表示部14に表示できるワークステーション13に自動的に送信することの方が好ましい。
【0041】
したがって、何らかのアドバンスト制御論理(開発工程が未だ完全なものではない)を用いてプロセス58を制御しようと試みる代わりに、MPCブロック56は、まず最初にプロセス58に一組の励起波形を供給してから、これらの励起波形に対するプロセス58の応答を測定する。もちろん、波形発生器101により発せられる励起波形については、あらゆるモデル・ベース制御ルーチン用の制御論理パラメータを作成するのに有益なプロセスモデルを作成するために開発された望ましい波形であればいかなるものでも適用しえる。本実施例において、波形発生器101は、モデル予測制御コントローラ用のプロセスモデルを開発するのに有益であるとして知られるあらゆる波形の組を発し、また、これらの波形には周知の(又は前記目的を達成するために将来的に開発されるであろう)あらゆる形態を採用しうる。モデル予測制御のプロセスモデルを開発するためにデータを収集する目的でプロセスを励起するために用いられる波形は周知のものであるため、これらの波形の説明については本明細書では省略する。同様に、その他のあらゆる又は所望のあらゆるタイプの波形を、例えばニューラルネットワークやマルチ変数ファジー論理などその他の(モデリングを含む)アドバンスト制御アプリケーション用のプロセスモデルを開発する際に使用される波形発生器101を使用して発生するようにしてもよい。
【0042】
ちなみに、波形発生器101は所望のあらゆる形態のものでもよく、例えば、ハードウェア、ソフトウェアまたは両者の組み合わせを使用してもよいことにも注目すべきである。ソフトウェアを使用する場合は、該波形発生器101には所望の波形を発するために利用できるアルゴリズムを格納してもよく、発せられる波形のデジタル表現を格納してもよく、またはそのような波形を作成するために別のルーチンまたは保存データを用いてもよい。ハードウェアを使用する場合には、該波形発生器101は、例えばオシレーター(発振器)または方形波発生器の形態をとってもよい。望ましい場合は、波形の設計に必要または有益な特定のパラメータ(例えばおよそのプロセス応答時間、プロセス入力に送られる波形の振幅の段階サイズ等)を入力するようにオペレーターに求めてもよい。MPCブロック56が当初作成された時点で、または、プロセスの反転または励起を開始してプロセスデータを収集するようにとの指示をMPCブロック56がオペレーターから受け取った時に、前記情報を入力するようオペレーターに促すようにしてもよい。好ましい実施形態においては、完全で正確なプロセスモデルが確実に開発されるようにするために、データ収集ユニット100が、オペレーターにより入力された応答時間の3〜5倍の時間で、励起波形の各々に応じてデータを収集する(もしくはデータ収集を保証する)。
【0043】
好ましくは、波形発生器101が必要な励起波形をすべてそれぞれのプロセス入力X1〜X3に送り終え、データ収集ユニット100がプロセス出力Y1〜Y3に対するデータを収集するまで、MPC制御ブロック56が作動する。もちろん、所望の場合、またはこのデータ収集プロセス中に必要な場合、MPCブロック56の動作を中断するようにしてもよい。
【0044】
図4を参照しながら説明すると、制御論理生成ルーチン40により表示部14のうちの1つを操作するオペレーターに提示できるスクリーン表示118は、オペレーターがアドバンスト制御ブロックを生成する異なる段階を実施することを可能にする。具体的には、スクリーン表示118は、データ表示領域120と、制御ブロック生成ルーチン40(図1)の異なる部分を開始するために使用しうる4個のボタン121、122、123、124を備える。「Initiate Test(テスト開始)」のボタン121は、オペレーターが、初期MPCブロック56に励起信号をプロセス58へ送らせるようにし、データ・ヒストリアン12へ送るための入出力データを収集させるようにすることを可能にする。該ボタン121には、例えば、励起ルーチンを行なう残り時間(即ち、MPC制御ブロック56が全励起波形を生成しこれらの波形に応じて生成されたプロセスデータを収集するのにかかる時間)表示してもよい。ボタン121を押す前に、オペレーターは、通常プロセスが入力に対して応答するのにかかる時間を示す応答時間を入力してもよいし、データがMPCブロック56の波形発生器101に供給されうる、励起波形を生成するためにMPCブロック56により使用されたことのある段階サイズを表示又は指定してもよい。ボタン121を押した後に、MPCブロック56により収集されたデータもまたデータ表示領域120に表示してもよいし、また望ましい場合ユーザはプロセスモデルを作成するために使用すべきでないデータ、又はプロセスモデルを作成するために用いるデータから除外すべきデータに(例えば線やバーを用いて)フラグを立ててもよい。当然のことながら、データ収集ユニット100がデータを収集する際に、該データがデータ・ヒストリアン12またはその他のデータ格納に用いる記憶装置へと確実に送信されるようにしてもよい。
【0045】
オペレーターは、プロセスデータを収集した後のある時点において、MPCコントローラで用いる収集されたプロセスデータ又はその他のモデル・ベース制御ブロックから一つ以上のプロセスモデルを作成することによりMPCブロックを開発する次のフェーズを実施することを決定する。オペレーターは、この手順の前に、またはその一環として、ノイズ(好ましくは平均値がゼロ(zero-mean)で均等に分布されるランダムノイズ)を該収集プロセスデータに添加し、このデータから更にロバスト(頑強)なプロセスモデル生成が可能になるようにこのデータを前処理する工程である図2のブロック125を開始してもよい。オペレーターは、図4に示されるボタン122を選択することにより、(図4のスクリーン表示118の領域120に示しうる)収集されたデータにこのノイズを添加してもよい。この時に、オペレーターは、添加ノイズの振幅について所望のものを選択しうる。一般的に、プロセスデータの正規化範囲(即ち収集されたプロセスデータの振幅の範囲)の約0.2パーセント〜0.5パーセントの最大振幅を有するランダムで均等に分布され平均値がゼロのノイズを使うことは、ロバスト・プロセスモデル作成ルーチンを提供する上で効果的であることが明らかになっている。より好ましくは、プロセスデータの範囲の約0.4パーセントの最大振幅を有する平均値がゼロで均等に分布されるノイズを使うと特に効果的であることも明らかになっている。但しそれ以外にも、ランダムでないノイズや、正規分布(ガウス分布)など上記以外のノイズ分布、そしてデータ範囲の0.2パーセント以下または0.5パーセント以上といった上記以外の振幅など、異なるタイプのノイズも使用しうる。
【0046】
さらに、所望の場合は、ノイズの絶対値(magnitude)または振幅を、例えばプロセスの反転に使用される段階信号の絶対値(magnitude)、テストに応じたプロセスデータの変更などのプロセスのテストにかかる他の因子に基づき自動的に選択することができる。したがって、一般的に、ノイズの振幅は、収集されたプロセスデータ又はプロセス入力信号の関数として自動的に設定されうる。単なる一実施例として述べると、ノイズの振幅は、例えば、収集されたプロセスデータの範囲、収集されたプロセスデータの平均値または収集されたプロセスデータの標準偏差などの、もしくは、収集されたプロセスデータを生成するために用いられる入力プロセス反転信号の絶対値(magnitude)の因数(factor)のようなプロセス入力信号の関数などの、収集されたプロセスデータの統計的尺度の関数として決定されうる。特定の一実施例においては、プロセスデータがテストサイクル中に2%ずつ変化する場合のノイズの絶対値(magnitude)は0.2%でありうる一方、プロセスに入力される段階テスト信号の絶対値(magnitude)が可能範囲の5%である場合の該ノイズの絶対値(magnitude)は0.5%でありうる。もちろん、テストで用いられる他の因子にノイズ絶対値(magnitude)を関連づけるために他の(10パーセント以外の)乗数を用いることができる。さらにまた、当然のこととして理解されるように、複数のプロセスモデルを決定する時、又はプロセスへの複数入力から且つ又は複数のプロセス出力からプロセスモデルを決定する時、収集プロセスデータに添加されるノイズの振幅やタイプが各収集プロセス出力データの組ごとに異なりうる。したがって、ノイズ振幅は、各々異なるプロセス反転信号ごと、且つ又は異なるプロセス出力に関する各収集データの組ごとに異なって設定されうる。
【0047】
図2のブロック125によりノイズがプロセスデータに添加された後、このデータはヒストリアン12に格納されてもよいし、モデル作成ルーチン44(図1)に直接供給されてもよい。特に図2のブロック126ではユーザは、データ・ヒストリアン12から人為的にノイズを含むようしてある収集データにアクセスし、人為的にノイズを含むように成された収集データからプロセスモデルを作成するためにあらゆる周知のプロセスモデル生成ルーチンを実行するプロセス・モデリングルーチン44を実行しうる。(ここにおいて用いられる「人為的にノイズを含むように成されたデータ」という表現は、ノイズが何らかの形態で意図的に添加されたデータを示すために用いられている。) 一般的に、オペレーターは、図4の画面表示装置で「制御を生成」のボタン123を選択することによりこのフェーズを開始しうる。
【0048】
所望の場合は、プロセス・モデリングルーチン44が収集データのデータ・スクリーニング処理を実行してもよい。このデータ・スクリーニング処理では、データが不良または不適切な状態の機能ブロックにより生成されたのか、データが限界値にあるのか、機能ブロックまたは他の要素が不適切なモードである時にデータが生成されたのか、または、それ以外の何らかの異常または望ましくないプロセス条件の下にデータが生成されたのかを判断するために、異常値およびその他の明らかに誤ったデータとみなされるものに関して収集データをチェックしてもよいし、また収集データに関連する状態および制限値のような該収集データに関連するその他の値をチェックしてもよい。例えば、Fieldbus通信プロトコルでは、機能ブロックにより生成されたデータはデータ・ヒストリアン12中のデータと共に格納することができ該データをスクリーニングするために用いることができる状態、限界およびモード標示を含むこともできる。所望の場合は、データ・スクリーニング・ルーチンは、図4のデータ表示領域120上で収集されたデータをオペレーターに表示し、オペレーターが、例えば、プロセス条件についての該オペレーターの知識に基づいて該データをハイライトするかもしくはその他の方法で特定することにより、スクリーニングすべきまたは削除すべきデータに識別表示(マーク付け)できるようにしてもよい。この方法により、プロセス58がオフライン状態の時、プロセス58が正しく制御されなかった時、プロセス58の修理中、プロセス58内のセンサーまたは他の装置が故障している或いは交換中である時などに、MPCブロック56により収集されたデータを、プロセスモデルを作成するために用いるデータから選択または削除しうる。もちろん、図2のブロック125の前またはその一環としてこのデータ・スクリーニング段階を行ってもよく、したがって、収集されたプロセスデータにランダムノイズを添加する工程と共に又はその一環として行ってもよい。
【0049】
図4に示されるように、MPC入出力を含む動向が、動向グラフとして表示領域120に表示されうる。該グラフは、入出力の値に基づいて自動的に目盛設定することができる。また、表示されているグラフの一部分の時間枠は好ましくは指定された応答時間の2倍である。スライダバー127を用いることにより、例えば過去2日といった以前の時間帯のいずれかにさかのぼる値を示すために時間ウィンドウが変更されるようにしてもよい。工場の運転において有用なデータを収集できるようにするために、自動テスト機能を利用してもよい。「テスト開始」のボタン121を選択することにより、MPCブロックにより操作されるプロセス入力は、指定された応答時間にわたって擬似ランダム系列中の指定された段階サイズで変更(上方移動)される。また、自動テストの開始・終了を識別表示(マーキング付け)するために、「テスト開始」のボタン121が選択された時点でデータ表示画面上の開始・終了仕切りバーが自動的に設定されるようにしてもよく、また、MPCブロック56が、出力信号の擬似ランダム系列を励起波形としてプロセス58へ供給することにより被操作出力の制御を行うようにしてもよい。
【0050】
該領域120の時間バーまたはデータウィンドウを使用してもまた、プロセスモデルを開発するのに使用するデータを選択しうる。オペレーターは、仕切りバーのうちの1つを選択し、それをプロセスモデル同定のために用意された時間枠を変更するために、それを所望の開始または終了時間にドラッグしてもよい。開始バーと終了バー間の時間の一部が通常の工場稼動時間と異なる場合、ユーザまたはオペレーターは、この部分の時間を指定して、プロセスモデルを同定するプロセス中に無視されるデータ値を選択できる。それに応じて、該選択された領域の背景色を濃い目にして表示したり、その他の何らかの様態で指定したりしてもよい。また、該選択された領域はプロセスモデルを作成する時、自動的に除外される。
【0051】
データをスクリーニングし、それにランダムノイズを添加した後に、プロセス・モデリングルーチン44は選択されたデータからプロセスモデルを作成する。上記されるように、プロセス・モデリングルーチン44はあらゆる所望の又は周知の方法でのプロセス・モデリング分析を行って収集且つスクリーニングされたデータからプロセスモデルを開発し、この開発されたプロセスモデルは、例えば数学アルゴリズム又は一連の応答曲線などのあらゆる形態を呈しうる。
【0052】
プロセス・モデリングルーチン44がプロセスモデルを決定する際に問題を有する場合、その問題の標示を例えば図4のユーザ表示画面の状態領域に反映するようにしてもよい。ここで示しうる問題としては、プロセスモデルを同定または作成するのに十分なサンプルがないことが挙げられる。該問題をオペレーターに通知するために、エラーメッセージ(例えば、「定義されるコンフィギュレーションについては、最低XXX個のサンプルが必要です。データ・ファイルにはサンプルがXXX個だけしか含まれていません」など)を生成してもよい。ここで検出されうるその他の問題としては、十分な励起がプロセス入力に生じないといった事態がある。もしそのような問題が生じた場合は、この旨を示すと同時に例えばTagX、TagYなどの信号タグ名を識別するメッセージ、および励起量に関する最低変更可能量をオペレーターに提供できるようにしてもよい。
【0053】
所望の場合、および正常なモデルの同定を妨げた諸条件に応じて、ユーザは、プロセスのモデリングが行なわれる時間枠を変更、または、プロセス・モデリングルーチン44で用いられるデータが有効となるようにプロセス入力を変更しうる。同定された該プロセスモデルは、後で必要なときにアクセスできるように所望のあらゆるデータベースに自動的に保存されてもよい。より経験を積んだユーザは、同定されたプロセスモデルを検討調査したり編集したりしてもよい。図4に示される画面上の「詳細設定」のボタン124を選択することにより、ユーザは、選択されたモデルおよび現行のMPC機能ブロックコンフィギュレーションからMPCコントローラを生成するか、または、特定のモデルを編集し結果として得られたモデルをMPC制御論理作成のために用いられる新規モデルとして保存するかを選択できる。制御生成オプションを選択すると、ユーザには、編集しているMPCモジュールにMPCコントローラとして以前保存されたモデルを選択することができるダイアログが表示される。編集オプションを選択すると、当該のMPCモジュールのために開発されたモデルの一覧がユーザに表示される。モデルを選択した後、ユーザに表示される画面はプロセス段階応答の概要を表示する画面またはその他の画面へと移り、以下に説明されるように、新規または変更モジュールを作成するためにプロセス段階応答の編集を行えるようになっている。
【0054】
プロセスのいくつかの時点において、第一のMPCブロック56内のジェネリック論理102がモデル予測制御を行なう際に必要とするパラメータ(MPCブロック56内の変数に格納される)を作成するために論理パラメータ作成ルーチン46を実行しうる。これらの制御パラメータ(例えば、MPC論理用のマトリックスまたは他のMPC係数、同調パラメータ、ニューラルネットワーク用のニューラルネットワーク・パラメータ、マルチ変数ファジー論理用の拡大係数、またはその他の所望のパラメータ)は、通常、生成されたプロセスモデルに基づいて決定される。該論理パラメータ作成ルーチン46が、プロセスモデルからパラメータを作成するためのあらゆる所望の又は周知の処理を行ってもよい。通常、このプロセスはマトリックス形式にてプロセスモデルを反転することを伴う。しかし、その他所望の論理パラメータ作成ルーチンを用いることも可能である。プロセスのデータからプロセスモデルを作成し、該プロセスモデルからMPCまたは他の制御論理パラメータを生成することに関する特質については当技術分野で周知のことであるため、ここにおいてはその手順処理の説明を省略する。ちなみに、オペレーターは、MPCブロック56用に制御論理パラメータを作成する際にいくつかの入力を導入しえる。実際に、MPCコントローラを作成するために通常用いられる特定の変数の値を指定するようオペレーターに求めるか、もしくは該指定作業を行う機能を提供するようにしてもよい。例えば、オペレーターは次のものを指定しうる:即ち、
・MPCブロックへの各制限付き入力に対する設定点および限界、
・制御変更がなされる時間枠(即ち、設定点軌道フィルタおよびこのフィルタに関連する時間定数)、
・MPC出力またはプロセス出力の最大又は最小動作(制限速度)、
・統合的な(integrated)様態で応答する制御定数が存在するようにするかどうか、
・MPC最適化因数・変数・または同調パラメータ、
・MPC制御ブロックの限界(範囲)(即ち、いくつの前方段階、所望の状態に達成するまでの制御に必要な事前計算がどれだけ行われるか)、
・各MPCブロック56の入出力ごとの工学単位の範囲、
・制約のうちの1つが破られたときに緩和可能な操作量目標がどれか又は実現不可能となるものはどれか、
・MPCブロック入出力各々の内容且つ又は名称、
・あらゆる設定可能な最適化変数の値、
・MPCブロックの積極性(aggressiveness)またはロバスト性に関する変数の値、などである。
【0055】
所望の場合は、制御論理生成ルーチン46は、これらの変数または設定のうちのいくつかまたはすべてに対してデフォルト値を格納し、MPC論理を作成するためにこれらのデフォルト値を用いてもよい。但し、オペレーターまたは他のユーザはユーザ表示画面14を介してこれらの設定を変更することができる
【0056】
いかなる場合も、MPC論理パラメータ作成ルーチン46はこの情報およびその他MPC係数のようなMPC(または他の)制御論理パラメータを作成するのに必要となりうる情報も用いて実行される。スクリーン表示118上の「制御生成」ボタン123は、プロセスモデルと制御論理パラメータの作成に成功したかどうか示しうる。
【0057】
MPC制御論理パラメータが作成された後、図2のステップ128で、MPC制御論理パラメータ又は係数をプロセス・シミュレーション・ブロックを用いてテストしうる。このシミュレーション・ブロックは一般的に、プロセスのために作成されたプロセスモデルから開発されてもよく、また、特許文献1に記載されるように、作成されたMPC制御論理がプロセスの通常動作範囲内で要求を満たしえる操作を行えるかどうかをテストするためにテスト環境のMPCブロックに接続することができる。MPC論理が満足できるものでない場合は別のMPC制御論理を開発するために、ステップ54、99、125、126および128のうちのどれか又はすべてを繰り返しうる。しかし、MPC論理が満足できるものである場合は、MPC制御論理パラメータおよびプロセスモデルをステップ130でMPCブロック56へとダウンロードし、プロセス58の制御に使用できるようにパラメータ記憶装置103およびプロセスモデル記憶装置104に格納してもよい。このように、MPC制御論理が必要とするパラメータが、MPCブロック56に提供され、且つMPCブロック56内に含まれる。そして、MPC制御論理102に従ってプロセス内の制御を操作するかまたは実際に行なうことをMPCブロック56に指令することができる。もちろん、所望の場合は、実際のMPC論理102とそれに必要とされるパラメータを、ワークステーション13で作成し、MPCブロック16にダウンロードすることができる。なおまた、所望の場合は、作成されたMPC制御ブロックまたはモデルを、シミュレーション環境の一部で使用できるように、ブロックまたはステップ135(図2)でワークステーションまたはその他のコンピュータ機器に供給してもよい。
【0058】
MPCブロック56を含むMPCモジュールまたはループは、一旦コントローラ11によりダウンロードされ実行された後、制御ルーチン内の他のブロックや要素と同じ方法で報告機能を実行しうる。これは、上記されるように、該ブロックを含む制御モジュールおよびMPCブロック56がプロセス制御システム10内の他の制御ブロックと同じプログラミング・パラダイムを用いて設計されているためである。一実施形態において、MPCブロックまたはモジュールはそれに関連するグラフィカルな表示(ビュー)を備えうる。これらの表示はMPC制御モジュール内のブロックに関連したデータに対して予約され、定義済みの又は指定された様態において、例えばワークステーション13の一つ以上の表示部14のうちの1つを介してこのデータをユーザまたはオペレーターに表示することができる。
【0059】
ここにおいては、収集されたプロセスデータにノイズを添加してプロセスモデルを収集されたプロセスデータから作成する方法は、プロセス工場のシステム・コンフィギュレーション設定中に該プロセス工場のコントローラにダウンロードされるMPC制御ブロックの作成と共に実施される場合を参照して説明されているが、収集されたプロセスデータからプロセスモデルを作成する前に該データにノイズを添加するという概念は、その他のあらゆる情況または環境において所望のあらゆるタイプのプロセスモデルを対象に実施することができることにも注目すべきである。したがって、この機能は、MPC制御アプリケーションを対象としたプロセスモデルの作成や、ニューラルネットワーク・モデリング且つ又は制御用途、または収集されたプロセスデータから所定のプロセスのプロセスモデルを作成する必要があるその他多くの場合(状況)に用いることができる。なおまた、収集されたプロセスデータからプロセスモデルを作成する前に該データにノイズを添加するという特徴は、単独入力‐単独出力、または単独入力‐マルチ出力、またはマルチ入力‐マルチ出力、またはマルチ入力‐単独出力の制御またはモデリングの場合(状況)またはその他モデリング予測用途のような制御以外の用途に用いられてもよい。同様に、ノイズが添加されるプロセスデータはここにおいて記載される以外のあらゆる様態を含むあらゆる様態をプロセスから収集しえる。また同様に、ノイズで前処理を施した収集プロセスデータから開発された実際のモデルは、有限インパルス応答(FIR)モデル、または(本明細書稿においてより詳細に説明されている)外部入力付き自己回帰(ARX)モデルなどのパラメトリックモデルでありえる一方、その他のタイプのプロセスモデルも前記タイプのモデルの代わりに又はそれに加えてこのデータから作成されうる。
【0060】
したがって、プロセスデータまたはテストデータからプロセスモデルを作成する一般的なロバストな方法150が図5のように示される。該方法150は全般的にブロック152で一組のプロセス・テストデータを得てブロック154でプロセス・テストデータのデータ正規化を行なうことに関する。もちろん、プロセス・テストデータは所望のあらゆるプロセス反転技法または波形を用いてあらゆる様態にて得てもよい。更に、あらゆる周知のデータ正規化技法をテストデータについて実施してもよい。ブロック156では、例えば、異常値を除去する、または、プロセスの異常動作中に又はその他標準プロセスの動作を反映しないプロセスにおける何らかの障害が存在する状態で得られた可能性のあるデータの部分を削除または除外するために、正規化されたプロセス・テストデータを前処理またはスクリーニングしうる。次に、ブロック158では、平均値がゼロのランダムノイズなどのノイズは前処理された正規形データに添加される。上に示すように、正規化範囲の約0.2〜0.5パーセントで平均値がゼロのランダムノイズが正規化および前処理されたテストデータに添加されてもよいが、代わりに他のノイズ絶対値(magnitude)のものを用いてもよい。その後、ブロック160では、ブロック158により生成されたノイズを含むプロセス・テストデータを使用して、あらゆる周知又は所望のモデル生成技法にて一つ以上のプロセスモデルを該データから生成する。
【0061】
正規化されたプロセス・テストデータを前処理またはスクリーニングした後に正規化されたプロセス・テストデータにノイズを添加しえることが図5に示されているが、例えば異常値またはその他のユーザもしくは何らかの統計法により定義される不良データを取り除くためにプロセス・テストデータを正規化したり、或いは該プロセス・テストデータの前処理やスクリーニングを行うことが全ての場合において必要というわけではない。さらにまた、図5ではプロセス・テストデータ生成後にノイズを該データに添加されているが、プロセス・テストデータの作成に使用した信号波形にノイズを添加し、それによって収集されたプロセス・テストデータにノイズを添加しうることが明らかになっている。この場合、ノイズを含まないプロセス反転信号または信号波形が、プロセスモデルを生成する目的でそのデータを評価する際に当該の収集された(したがってノイズを含む)プロセス・テストデータを生成するために使用されたと仮定される。
【0062】
プロセス・テストデータにノイズを添加する技法によると、ノイズを含むデータに平均値がゼロのランダムノイズを添加することにより実際にデータ中のノイズレベルが添加ノイズ量以上に上昇するため、該技法は実際に元々ノイズを含むプロセス・テストデータの存在下においてロバストに(頑強に)プロセスモデルを見つける際に有効的であることも明らかになっている。特に、収集時に既にテストデータに含まれるノイズと添加ノイズは関連していないので、添加ノイズによりテストデータ中のノイズレベルが実際に添加ノイズレベル以上に増大するようなことはない。それどころか実際には、ノイズを含むデータおよびノイズを含まないデータの両方に添加すると(例えば同一のプロセスを対象に複数のプロセスモデルを開発する場合など)、プロセス内の様々な供給源から収集されたデータ内のノイズ量がノイズの添加により均等化され、それによってより良質でより相関性に優れたプロセスモデルを該プロセスに提供できるのである。
【0063】
また、プロセス・テストデータにノイズを添加する技法は一般的に、FIRモデルなどのノンパラメトリックモデルを決定する時よりもARXモデルなどのパラメトリックモデルを決定する際により良好に機能するということも明らかになっている。一般的に、ノンパラメトリックモデルは最良な定義(表現、description)の検索に無限次元パラメータのベクトルを必要とする間、パラメトリックモデルは最良な定義(表現、description)の検索に有限次元パラメータのベクトルを使用する。パラメトリック・タイプのモデルとノンパラメトリック・タイプのモデルとの間の大きな相違は、パラメトリックモデルはノンパラメトリックモデルよりもはるかにコンパクトで、同じ動的挙動を定義(表現、describe)するのにより少数のパラメータを必要とする点である。文字どおり、ARX、ARMAX、Box-Jenkins法および出力エラーモデル(OEモデル)などの方式はパラメトリックモデルと呼ばれる一方、FIRはノンパラメトリックモデルと呼ばれる。「ノンパラメトリック」という用語は、当該のモデルにはパラメータが全く存在しないという意味ではなく、むしろ、パラメータの数および性質は柔軟性(flexible)を伴い、それによってトランケーション(切り落とし)の度合いが決定されるという意味で使われる。例えば、FIRモデルでは、モデルを定義するために適用される走査数によりモデルのダイナミック・レンジが確立される。また、ノンパラメトリックモデルは時折「分布フリー(分布によらない方法)」ともいわれる。
【0064】
周知の如く、一般的にFIRモデルはプロセスの不感時間の正確な(良い)予測値を生成しうる一方、下位数のパラメトリックモデルは概してプロセスモデルで使用されるプロセスの不感時間について正確な(良い)又は有効な予測値を生成することができない。結果として、ARXモデルなどのパラメトリックモデルを決定する方法として非常に有用なものが図6のフローチャート170により示される。具体的には、ブロック172では、該当するプロセスのプロセス・テストデータが最初に決定される。ブロック174では、このプロセス・テストデータは異常値、不良データなどを取り除くために正規化またはスクリーニングされうる。その後、ブロック175および176では、該プロセス・テストデータからプロセスの不感時間の予測値が決定される。一実施例において、ブロック175が最初にプロセス・テストデータからFIRプロセスモデルなどのノンパラメトリックモデルを生成し、その後ブロック176がそのノンパラメトリック・プロセスモデルからプロセスの不感時間を決定する。一般的に、プロセスの不感時間の予測値は、モデリングされたFIRプロセス応答の出力がゼロに正規化されたしきい値を越えるまでの時間として確立されうる。しかしながら、収集されたプロセスデータからFIRまたは他のノンパラメトリックモデルを生成することによりプロセスの不感時間の概算を行いうる一方、ブロック175および176を、その他のプロセス不感時間を決定する周知又は所望の方法(プロセスモデルを生成しないものも含む)と置き換えてもよい。
【0065】
その後、ブロック178では、所望の振幅を有する平均値がゼロのランダムノイズをプロセス・テストデータに添加しうる。ブロック180では、決定されたプロセス不感時間を考慮してプロセス・テスト入力信号の時間(タイミング)を調整(shift)し、それによって人為的にノイズを含むように処理された収集プロセスデータからプロセスの不感時間を取り除いてもよい。もちろん、ブロック178と180における動作の順序は重要でなく、反転または同時に実行してもよい。ブロック182では、あらゆる周知の様態でパラメトリック・プロセスモデルのパラメータの値を決定することにより、人為的にノイズを含むようになされ調整(shift)さたプロセスデータからパラメトリックのプロセスモデルを生成するためにパラメトリックモデル生成ルーチンを使用しうる。もちろん、決定されたプロセスの不感時間に基づいたプロセス入力データの調整(shifting)は、パラメータ化されたプロセスモデルを決定する工程中に生じえ、したがって、プロセスモデルを決定する際に実施される計算にとって不可欠な要素となりうる。
【0066】
一般に、収集されたプロセスデータにノイズを添加するプロセスは、プロセスデータの標準偏差を増加させ、そして基本的にパラメトリックモデル作成ルーチンが未処理(ノイズを含まない)データでは一組のモデル・パラメータに収束できない場合に、該ルーチンがノイズを含むデータを用いて一組のモデル・パラメータに収束できるようにする。さらにまた、プロセスデータへノイズの添加により、未処理データから決定されたと推定されるモデル・パラメータ同様又はそれに類似する且つプロセスを予測(概算)する一組のモデル・パラメータにパラメトリックモデル作成ルーチンが収束できる状態(実際にパラメトリックモデル作成ソフトウェアが未処理データを用いて収束できないような多くの場合において収束できる状態)にデータを調整することができると思われる。
【0067】
プロセスモデルを生成するために用いられるプロセスのロバスト性を測定できる、より具体的にはモデル・パラメータ収束の向上を測定できるプロセスモデル検証用の基本技術がいくつか存在する。上記に説明されるように、信頼区間はノイズに大きく関係しているため、若干のレベルのノイズをテストデータ上に重畳することにより(データの標準偏差と密接に関係する)信頼区間を拡張できるということが明らかになっている。上記のように、この技法により、以前はモデル・パラメータ収束を提供できなかったデータからパラメトリックモデルを達成することが可能になる。結果として、モデル開発技法のロバスト性が著しく向上する。
【0068】
要求を満たしうるプロセスモデルの開発はモデル予測制御(MPC)技術の中核をなす。様々なタイプのモデルがMPCと共に用いられている一方、FIRおよびARXモデルが工業用途においては恐らく最も一般的に用いられていると言える。Zhu, Y.、Arrieta, R.、Butoyi, F.、及びCortes, F.著「Parametric Versus Nonparametric Models in MPC Process Identification(MPCプロセス同定におけるパラメトリックモデル対ノンパラメトリックモデル)」(『Hydrocarbon Processing(炭化水素処理)』、2000年2月)には、モデルのタイプおよびその特長に関する評論が記載されている。上記に示したように、モデルを評価する上での第一の判断基準の1つとして、周波数または時間ドメインにおいて行われる計算で信頼区間を使用することが挙げられる。なお、この計測には範囲の狭い信頼レベルが望ましい。しかしながら、もう一つのモデル同定特徴、即ちロバスト性はそれほど明確に定義されていないが、一般的に言って、モデルの同定における問題は結果として最適化における問題(最小自乗法や最尤法、或いはこれらの技法の変形により解決される)をもたらす。周知の方法のうち多くのものが信頼できる公称モデルおよびそれに伴う許容不確実性を提供できるが、これらの方法は異なるアプローチを有するため、それぞれにおけるモデル同定処理のロバスト性を公正に比較することが困難である。しかしながら、要約すると、ロバスト(頑強)な同定法は、ロバスト制御設計の要求に応じて、モデルの構造上のエラーを許容し(大目に見て)モデルと不確実性推計の両方を提供するものである。
【0069】
多くの論理モデリング技法がある存在する中、エンジニアリング・ソフトウェアで用いられ且つ複雑な工業用プロセスの同定を行なうために採用されるモデル同定技法は一般に使い易さに重点をおいて設計されているため、通常の研究/学術ソフトウェアよりもモデリング技法やモデリング用方程式の順序を選択する際の選択肢が少ない。したがって、プロセス動特性が想定モデルよりもかなり複雑な場合、同定の対象となる想定モデルについては、モデル・パラメータの不確実性区間を広げるべきである。上記されるように、信頼区間により定義されるモデルの不確実性は、データ中のランダムノイズレベルにより確立されるか、またはこれと関係する。したがって、許容範囲内パラメータ値を包含するのに十分な広域を有する不確実性範囲を生成するのに十分なレベルに該ノイズレベルが達していない(これは、かなりの非線形性を伴いカスケード化(縦続接続)MPCまたは模擬プロセスでプロセスを同定する時、およびランダムノイズレベルが非常に低いか全く存在しない時に頻繁にありえる状態である)多くの場合において、同定手順が許容できるモデル・パラメータに収束しないことがある。
【0070】
したがって、「ロバスト(頑強)な同定」という用語はここにおいて、モデル・パラメータ収束に関しては不十分かつ信頼性の低いデータから想定されるモデルの複雑性を対象とするプロセスモデルを得るための信頼できる様態・方法を提供するための手順・処理を包含して表すために用いられている。ここにおいて示されるように、信頼区間分析を使用したテスト結果により、ランダムノイズを添加すると、同定されたモデルの信頼区間を拡大することにより同定のロバスト性を向上させることが証明される。
【0071】
ここで、より明確するために、信頼度(レベル)の概念を以下により詳細にわたり説明する。具体的には、段階応答モデリングにより明示的なプロセス出力の予測が可能となるため、DMC(ディジタル・マルチチャネル)アプリケーションに有効であることが証明されている段階応答モデリングは最も一般的なMPC用モデル表現形式である。将来予測はMPCコントローラへの入力として予想エラーベクトルを演算するために用いられる。
【0072】
実際の段階応答モデル形式は周知のものである。単独入力‐単独出力プロセスについて、ディファレンシャルFIRモデルは次のとおりである:
【0073】
【数1】
【0074】
当式において、pは予測限界(horizon)、hは同定モデル係数である。通常、インパルス応答は、単純な1次系+不感時間プロセスの動特性を表現するために係数を30〜120を必要とする。しかしながら、予測範囲全体にわたり、且つ120もの係数(特にマルチ入力‐マルチ出力の場合)について段階応答を同定すると過剰適合が生じる原因となり、著しいパラメータ不確実性(共通するFIR識別子問題)が発生する。ARXモデルの係数の数はFIRモデルよりもかなり少ない。該ARXモデルは次のように示すことができる:
【0075】
【数2】
【0076】
当式において、AおよびVはARXモデルの自動回帰および移動平均次数であり、dは不感時間、ai, biはモデル係数である。4の次数(order)は、大半の実用化に際する要求を満たすことが認められている。図6を参照して上記されているように、短いFIR範囲(horizon)を用いることにより、不感時間が特定され、ARXモデルの決定に用いられることができる。マルチ入力‐マルチ出力プロセスについては、各入力(相加作用)から各出力へ重層法が適用される。最後に、単位段階が入力の1つに適用され、その入力の階段応答を得るために同定されたARXモデルが用いられる。
【0077】
【0078】
【数3】
【0079】
【0080】
【0081】
【数4】
を伴って正規分布に(信頼度で)漸近的に収束することが証明されている。
【0082】
【0083】
【数5】
【0084】
【0085】
しかしながら、式(5)を適用するには、エラーセットを求めるためにまずプロセスモデルの計算を行うことが必要である。あるいは、分散行列Pθを、データ行列:
【0086】
【数6】
【0087】
の特異値分解(SVD)から直接定義することもできる。行列U, S, V はSVDによる積である。また、
【0088】
【数7】
【0089】
ここで、VjiはV行列の要素、wiは対角行列Sの要素、Mは行列Sの次元である。
【0090】
モデル・パラメータの標準偏差は次のように定義される:
【0091】
【数8】
【0092】
この測度は、上記のエラー確率分布よりも簡単に利用できる様式でモデルの品質情報を示す。モデル・パラメータの標準偏差により、あらかじめ定義された確率によるパラメータ値の範囲が確立される。例えば、95%の信頼領域は、真性パラメータ値が95%の確率で該領域にあることを意味する。エラー分布が正規分布であると想定した場合、同定されたパラメータ値付近の2σ(aj)の範囲は95%の信頼区間を定義し、3σの範囲が99%の信頼区間を提供する、など以下同様である。
【0093】
モデル・パラメータからと同じような方法で、これらのパラメータ標準偏差σ(aj)から階段応答を生成することが可能である。信頼領域は予測範囲(horizon)一帯で得られ、それにより、ゲインおよび不感時間などの応答パラメータの範囲を提供する。該95%の信頼区間の境界は標準偏差の2倍で定義され、階段応答を演算した後それをもとの階段応答に正と負方向の両方に重畳することによりにより比較されうる。99%の信頼区間については、標準偏差の3倍の値が信頼区間の上限・下限を定義するために用いられる。
【0094】
SVDを適用して模擬データからMatlab(登録商標)により開発された階段応答の信頼区間の一実施例が図7に示されている。同定された階段応答204に関する95%および99%の信頼領域(それぞれ曲線200と202とで図示)が描かれている。当然、該領域はより確率が高くなるにつれて大きくなり、また逆に確率は領域が大きくなるにつれて高くなる。MPCモデルの場合は、95パーセントの信頼区間があれば十分と考えられる。この情報の解釈は、階段応答パラメータの範囲を確立する際に有益である。例えば、図7の応答については、ゲインは95%の信頼度を持つ1.4〜2.0の範囲を有し、また99%の信頼度で1.25〜2.2の範囲を有する。この情報は、ロバスト(頑強)なコントローラ生成用パラメータの推測に使用される。プロセスモデルにおける各階段応答ごとに利用できる信頼区間を持っていると、モデル出力中のエラーを検出できるだけではなく、予測誤差の最大原因となりえる特定の階段応答を識別することも可能になる。
【0095】
信頼係数を定義する様態を説明するために、図8には信頼区間に定義される複数の生成モデルの検証特質を示す。上記の説明及び特に式(6)〜(9)から明らかなように、信頼区間はモデル開発に用いられるデータのノイズレベルに依存する。しかしながら、適切なモデル方程式の次数を選択して信頼区間内のモデル・パラメータを得ることが必要である。この階段は、同定するのは簡単であるが、(特に複雑なプロセス動特性伴うプロセス制御状況においては必ずしも容易に達成できる作業であるとは限らない。基本的に、モデル方程式のタイプと次数を選択する作業は通常、対象プロセスについてかなり高度な専門知識が必要とされ、概して一般の産業ユーザが対応できるレベルを超える内容のものである。必要なモデル次数より高位のモデル方程式を選択すると有用なモデルを提供しえるが、そうすると自動的にプログラムの実行時間が(分単位もしくは時間単位で)必要以上に延長される可能性がある。その一方、多重レベル制御システムは普通、一般的なユーザが想像するよりも高位数の方程式を必要とする。しかしながら、著しい非線形性を持つプロセスについては、非線形プロセスに対する完全な線形モデルなど存在しないので、高位数のモデル次数を選択するとプロセス同定に悪影響を及ぼしえる。データに定義されるような狭い信頼区間を有する高位数モデルを前提としても、モデル・パラメータは狭い範囲には収束しないため、それが何らかのモデルの生成につながるとは全く限らない。このタイプの非線形性を持つプロセスは、より広範囲の信頼区間を持つ下位数線形モデルを用いることにより現実的にモデル化できる。この選択は完全に常識の技術論理、即ち、プロセスが非線形の場合、動的次元を増やすよりもむしろ、プロセスのゲインはより広範囲において変化すると仮定するほうがよいということに基づいている。したがって、実用化の目的で、特に非線形性を有するプロセスにおいては、次数の高位なモデルよりも、それ相応の信頼区間を有するものの方が有益であるという結論に達する。多くの場合では、データのノイズレベルが適切であるためこの状態は自動的に満たされる。しかしながら、上記のように、多数のまたは大半の状況においてモデルの収束を保証するため、テストデータの収集および前処理後(つまり、信頼区間を拡大するために平均値を正規化して取り除いた後)に、ランダムノイズをプロセス出力データに添加することができる。
【0096】
プロセスデータにランダムノイズを添加することの効果は、模擬テストにおいて非常にはっきりと示されており、データに0.25パーセント振幅のノイズを添加することによりノイズを含まないデータではモデルを達成できなかったような場合にも優れたモデルを開発できることが実証されている。例えば、図8は、95パーセントの信頼区間214と共に平均値がゼロで最大振幅が0.25パーセントのノイズ をプロセスデータに添加した後のARXモデル212およびFIRモデル210間のほぼ完全な一致を示す。図9は、平均値がゼロで最大振幅が0.25パーセントのノイズをノイズ無しサンプル919個のうちの120個のサンプルのみに添加して得られた結果を示しており、FIRモデル210と完全に一致してはいないが、ここでもまたARXモデル212の収束性が改善されている。最大振幅が0.1パーセントのノイズ をノイズ無しサンプルのすべてに添加した場合も、同様の結果が得られ、ARXモデルの収束性が改善した。
【0097】
ここに記載されるロバスト(頑強)なモデル生成の概念を確認するにあたり、一般的に不感時間予測値のエラーに対する感度がノイズ振幅とともに低下することが発見された。以下、ノイズ添加の作用を示す特定のテストをいくつか説明する。具体的に、これらのテスト、ゲイン=1、DT=2、T1=T2=20(DTは不感時間、T1とT2はパラメトリックモデルの1次および2次系時間定数)で2次系プロセスとして定義される単一ループプロセスを使用した。これらのテストでは、240の定常状態Tssへの時間がモデル同定中に用いられた。該テストに使用したデータは9:21〜9:52の間(即ち、図10のデータの31分間)の選択領域220に示される。データにノイズを添加しなかった場合、ARXモデル同定処理により2次系時間定数はもたらされず、算定(決定)されたゲインは小さすぎ、不感時間は長すぎた。FIRモデル決定処理によりFIRモデルが決定されたが、FIRモデルの不感時間が正確な値ではないゼロとなっていた。これらの問題を解決する試みとして、手動でパラメータの数を増加させ、より多くのプロセスデータを追加し、プロセス反転入力の段階サイズを増大させる先行技術による技法が試みられたが、概してモデル同定における著しい改善は見られなかった。
【0098】
しかしながら、プロセス反転テストの後にプロセスデータに人為的ノイズを添加することで、モデル同定での著しい改善が認められた。実際に0.3%、0.4%および0.5%(最大振幅)の均等に分布した平均値がゼロのランダムノイズをデータに添加した結果を、FIRモデル230とARXモデル232モデルの両方について図11〜13に示す。これらの図からも明らかなように、0.4%の尺度の最大ノイズ振幅が、最も高いFIRとARXモデルの一致度を示しているので、この場合に最も適しているように思われる。
【0099】
さらにまた、収集されたデータの代わりにプロセス入力にノイズを添加できることもプロセス反転テストにより判定された。具体的には、プロセス・テストを実施する上でプロセスを反転するために用いられた信号発生器の出力にノイズを添加してテストサイクルを実行した時に、パラメトリックモデル同定における著しい改善が判定された。図14は、最大振幅0.4パーセント且つ均等に分布され平均値がゼロのランダムノイズを添加した所望のプロセス反転信号240と、このノイズを含むテスト信号から得られた収集プロセス出力データ242とを示す。図15は、結果として得られるノイズを含むプロセス反転信号を用いて収集プロセスデータに基づいたFIRモデル性能244とARXモデル性能246を示す。
【0100】
同様に、最大振幅0.4パーセント且つ均等に分布され平均値がゼロのランダムノイズを、既に真のノイズ0.4%を含むプロセスデータに添加することにより、モデル同定に関してはほとんど同一の結果がもたらされると判定された。さらにまた、残りのデータにノイズを添加しても引き続き適切なモデルを生成できる場合には、かなりの量のプロセスデータをモデル生成における用途(使用)から除外できることも概して判定された。具体的には、ARXモデル生成ルーチンはどこでデータが不足しているかに関係なく期待通りに実行され、一方でFIRモデル生成ルーチンは当初正常に機能しなかったが、それでもデータの不足がいくつか存在する状態においてモデルを生成することができた。図16の上側のグラフ(折れ線図)は、このテストで使用された完全なテストデータのセット250を示し、図16の下側のグラフは結果的に得られたFIRモデルのモデル性能(252)とARXモデルのモデル性能(254)を示す。ちなみに、FIRモデル252は、このモデルを生成するために必要とされる演算を削減するために、走査約60回分のみ演算した。図17〜20は、各図17〜20の左側の折れ線図中の除外領域260に示されるテストデータを除外した時のFIRおよびARXモデル性能(めいめい252と254)に対する影響を示す。これらの場合の各々において、当該の各図左側に図示されているプロセス出力テストデータに最大振幅0.4%の均等に分布した平均値がゼロのランダムノイズを添加した。上に述べたように、FIRモデル252は(特に複数の離散的データセット領域からデータを除外した場合に)当初正常な動作を行えなかったが、テストからかなりの量のデータを除外してプロセスモデルを開発することができる。
【0101】
多変量プロセスについても同じようなテストが実施され、全体的に同じ結論に達した。即ち、
・プロセス・テストデータに平均値がゼロのランダムノイズを添加することによってより良いモデル同定性能が得られた;
・不感時間予測値におけるエラーに対する感度はノイズ振幅とともに低下した;
・プロセス・ゲイン予測値は概して良好であった(一般的にARXモデル生成よりもFIRモデル生成の方が優れたゲイン予測値を生成する);および
・かなりの量のプロセスデータ(データセットの中間にあるデータも含む)をテストから除外でき、除外後も引き続きプロセスモデルを作成できる(ARXモデル生成の方がFIRモデル生成よりもデータの不足に対する許容範囲が広い)、などである。
【0102】
さらにまた、テストデータにノイズを添加する技法では、開発されたFIRモデルの著しい向上をもたらせず、また添加ノイズ量によっては該モデルの悪化をもたらすこともあったが、モデルの生成に用いるデータセットが厳しく制限されるまではそれによりFIRモデルの精度の著しい低下がもたらされることはなかった、ということをここに述べておく。しかしながら、テストデータへのランダムノイズ添加により、ARXモデル決定ルーチンが収束して完全なモデル・パラメータのセットを決定する能力が著しく向上(増大)し、よって、該プロセスモデル作成ルーチンをよりロバスト(頑強)にすることが可能になることも判明した。
【0103】
このように、上記されているように、信頼区間は大きくノイズに関係する。したがって、テストデータ上にわずかなレベルのランダムノイズを重畳することにより容易に信頼区間を拡大できる。観測した結果、信頼区間の拡大によりモデル・パラメータ収束を向上させるための技法、および以前にはモデル・パラメータの収束を提供できなかったデータから信頼区間の拡大によりモデルを達成できる技法を見出した。これによりプロセスモデル開発のロバスト性が著しく向上した。
【0104】
ここで明らかなように、本明細書に記載されるMPCまたはアドバンスト制御論理生成ルーチンおよび方法は、ユーザがMPC制御ブロックやニューラルネットワーク・モデリング又は制御ブロックなどのアドバンスト制御ブロックを該ブロックがどのように生成されるかに関する多くの専門知識を持たなくとも生成できるようにし、且つ、オペレーターがアドバンスト制御を行うためにプロセスの再プログラミングを多数行うことなく、また、一般的に適切なプロセスモデルを決定するためにプロセス・テストの設定を変更する必要なく、アドバンスト制御ブロックを生成し使用できるようにする。
【0105】
本明細書においてアドバンスト制御ブロック、プロセス・シミュレーション・ブロック、そして関連する生成およびテスト・ルーチンはFieldbusおよび標準の4〜20 ma装置と共に使用する状態で説明されているが、もちろん、その他のプロセス制御通信プロトコルまたはプログラミング環境も用いて実施してもよく、また、その他のタイプの装置、機能ブロックまたはコントローラと共に使用してもよい。また、本明細書において用いられる「機能ブロック」という表現は、FieldbusプロトコルまたはDeltaV(商標)コントローラ・プロトコルが機能ブロックと見なすものに限定されず、むしろ、何らかのプロセス制御機能を実施するために使用できるあらゆるタイプの制御システム且つ又は通信プロトコルに関連するその他あらゆるタイプのブロック、プログラム、ハードウェア、ファームウェアなどを含んで用いられている表現である、ということをここに述べておく。また、機能ブロックは通常、オブジェクト指向のプログラミング環境内のオブジェクト(操作対象)の形態をとるが、必ずしもそうである必要はない。
【0106】
また、本明細書においては、アドバンスト制御ブロック、プロセス・シミュレーション・ブロック、そして関連する生成およびテスト・ルーチンをソフトウェア中で実行することが好ましい実施形態と説明されているが、ハードウェアやファームウェアなどにおいて実施してもよく、また、プロセス制御システムに関連するその他のプロセッサにより実行するようにしてもよい。したがって、所望の場合、ここにおいて記載されるルーチン40を、標準汎用CPUにおいて、または例えばASICなどの特別設計ハードウェアまたはファームウェア上で実施されるようにしてもよい。ソフトウェアで実施する場合、該ソフトウェアは、あらゆるコンピュータ可読メモリ(例えば、磁気ディスク、レーザーディスク、光ディスク、又はその他の記憶媒体、コンピュータ又はプロセッサなどのRAMまたはROM、などに格納しえる。同様に、あらゆる周知の又は所望の配信方法(例えば、コンピュータ可読ディスクやその他の可搬型コンピュータ記憶装置機構など)を介して、又は例えば電話線やインターネットなどの通信チャンネル上で変調されることにより、ユーザまたはプロセス制御システムに該ソフトウェアを提供しうる(これは可搬型記憶媒体を介して該ソフトウェアを提供するのと同じ又は類似の意味を持つと見なされる)。
【0107】
このように、本発明は、本明細書において特定の実施形態により説明されているが、それは単なる実施例として挙げられているに過ぎず、本発明を限定するものではない。また、本発明の精神と範囲から逸脱することなく開示された実施形態に対して変更、追加または削除が加えられてもよいことは、通常の技術を有する当業者には明らかなはずである。
【図面の簡単な説明】
【0108】
【図1】本明細書に記載されるロバスト・プロセスモデル生成技法を用いてアドバンスト制御ブロックが作成できるプロセス制御システムのブロック/概略図である。
【図2】図1のプロセス制御システム内のアドバンスト制御ブロックの動作および作成を図示するフロー図である。
【図3】プロセスを制御するためにプロセス制御ルーチン内で接続するモデル予測制御ブロックのブロック図である。
【図4】MPC制御ルーチン作成工程においてユーザに提示しえる画面表示例の図であり、これによりユーザは、収集されたプロセスデータから1つ以上のプロセスモデルを作成する前に収集されたプロセスデータにノイズを添加することができる。
【図5】ランダムノイズの添加によりプロセスから収集された一組のテストデータをもとにプロセスモデルを生成する第1のロバストモデル同定方法のフローチャートである。
【図6】ランダムノイズの添加によりプロセスから収集された一組のテストデータをもとにパラメトリック・プロセスモデルを生成する第2のロバストモデル同定方法のフローチャートである。
【図7】本明細書に記載されるロバストモデル同定技法を用いて作成されたノンパラメトリックモデルおよびパラメトリックモデルの結果を示す信頼区間グラフを示す図である。
【図8】本明細書に記載されるロバストモデル同定技法を用いて作成されたノンパラメトリックモデルおよびパラメトリックモデルの結果を示す信頼区間グラフを示す図である。
【図9】本明細書に記載されるロバストモデル同定技法を用いて作成されたノンパラメトリックモデルおよびパラメトリックモデルの結果を示す信頼区間グラフを示す図である。
【図10】FIRモデルおよびARXはモデルについて、ノイズを添加したプロセスデータを用いるプロセスモデル生成技法の性能実績をテストデータとともに示した図である。
【図11】FIRモデルおよびARXはモデルについて、ノイズを添加したプロセスデータを用いるプロセスモデル生成技法の性能実績を、また別のテストデータとともに示した図である。
【図12】FIRモデルおよびARXはモデルについて、ノイズを添加したプロセスデータを用いるプロセスモデル生成技法の性能実績を、また別のテストデータとともに示した図である。
【図13】FIRモデルおよびARXはモデルについて、ノイズを添加したプロセスデータを用いるプロセスモデル生成技法の性能実績を、また別のテストデータとともに示した図である。
【図14】FIRモデルおよびARXはモデルについて、ノイズを添加したプロセスデータを用いるプロセスモデル生成技法の性能実績を、また別のテストデータとともに示した図である。
【図15】FIRモデルおよびARXはモデルについて、ノイズを添加したプロセスデータを用いるプロセスモデル生成技法の性能実績を、また別のテストデータとともに示した図である。
【図16】FIRモデルおよびARXはモデルについて、ノイズを添加したプロセスデータを用いるプロセスモデル生成技法の性能実績を、また別のテストデータとともに示した図である。
【図17】FIRモデルおよびARXはモデルについて、ノイズを添加したプロセスデータを用いるプロセスモデル生成技法の性能実績を、また別のテストデータとともに示した図である。
【図18】FIRモデルおよびARXはモデルについて、ノイズを添加したプロセスデータを用いるプロセスモデル生成技法の性能実績を、また別のテストデータとともに示した図である。
【図19】FIRモデルおよびARXはモデルについて、ノイズを添加したプロセスデータを用いるプロセスモデル生成技法の性能実績を、また別のテストデータとともに示した図である。
【図20】FIRモデルおよびARXはモデルについて、ノイズを添加したプロセスデータを用いるプロセスモデル生成技法の性能実績を、また別のテストデータとともに示した図である。
【技術分野】
【0001】
本発明は、プロセス制御システム、特にプロセス制御システムで使用されるモデル予測制御ルーチンおよびニューラルネットワーク制御ルーチンなどのアドバンスト(高度)制御ルーチンで使用されるプロセスモデルの開発に関する。
【背景技術】
【0002】
一般的に、化学薬品の処理、石油精製またはその他のプロセスにおいて使用されるような分散形プロセス制御システムまたはスケーラブル・プロセス制御システムなどのプロセス制御システムは、アナログ、デジタル又はアナログ‐デジタル混在バスを介してお互いに、少なくとも1つのホスト又はオペレーターワークステーションと、および1つ以上のフィールド装置と通信できるように連結される1つ以上のプロセス制御装置を含んでいる。フィールド装置は、例えば、バルブ、バルブポジショナー、スイッチおよび(例として温度、圧力および流量センサーなどの)発信器でありえ、プロセスにおけるバルブの開閉、プロセス・パラメータの測定などの機能を行なう。該プロセス制御装置は、フィールド装置によって発せられたプロセス計測を示すシグナル及びフィールド装置に関するその他情報のうちの少なくとも一つを受信し、制御ルーチンを実施するためにこの情報を使用してから、プロセスの動作を制御するフィールド装置にバス上を通じて送信される制御信号を発信する。フィールド装置およびコントローラからの情報は、通常、オペレーターワークステーションにより実行される1つ以上のアプリケーションで利用可能となっており、オペレーターがプロセスの現状を表示したりプロセスの動作を修正変更したりするなどのプロセスに関するあらゆる所望の機能を行うことを可能にする。
【0003】
これまで、従来のフィールド装置は、アナログ・バスまたはアナログ回線を介してプロセス制御装置間でアナログ(例えば4〜20ミリアンペア(ma))の信号を送受信するために使用されてきた。前記4〜20maの信号は、装置による計測、または装置の動作を制御するために要されるコントローラにより発せられた制御信号による計測を示すという性質を持っているためいくつかの制限を持っていたが、つい最近になって、マイクロプロセッサおよびメモリを含むスマート・フィールド装置がプロセス制御業界において普及しはじめている。スマート・フィールド装置は、プロセスにおける一次的機能を行なう他、装置に関するデータを格納し、デジタルまたはデジタル・アナログ混合形式でコントローラ及び他の装置の少なくとも一つと通信し、自己較正・同定(識別)・診断するなどの2次的な作業も行なう。異なるメーカーにより製造されているスマート・フィールド装置を同じプロセス制御ネットワーク内で共に使用できるようにするために、HART(登録商標)、PROFIBUS(登録商標)、WORLDFIP(登録商標)、Device Net(登録商標)およびCANのプロトコルなど多くの標準タイプおよびオープン系のスマート装置通信プロトコルが開発されている。
【0004】
なおまた、プロセス制御産業界の動向としてプロセス制御機能を分散させる傾向にある。例えば、Fieldbus Foundation社により普及されているFOUNDATION(商標) Fieldbus (以下「Fieldbus (フィールドバス)」と総称)プロトコルとして知られるオールディジタル、2線式バスプロトコルは、以前は集中型コントローラ内で行なわれていた制御機能を行なうために異なるフィールド装置に設置される機能ブロックを使用する。特に、各Fieldbusフィールド装置は、(同じ装置内または異なる装置内のいずれかにおいて)各々他の機能ブロックから入力を受信したり、且つ又は他の機能ブロックに出力を供給する1つ以上の機能ブロックを含み且つそれを実行し、プロセス・パラメータの測定または検出、装置の制御、または比例・積分・微分(PID)制御ルーチンの実施などの制御機能を実行するなど何らかのプロセス制御作業を行なうことができる。プロセス制御システム内の別の機能ブロックは(例えば、バスを通じて)互いに通信し1つ以上のプロセス制御ループを形成できるように構成されており、その個々の動作はプロセスの全体にわたって広がり、よって分散化をなしえる。
【0005】
プロセス制御装置は通常、種々のアルゴリズム、サブルーチン、または流量制御ループ、温度制御ループ、圧力制御ループなどの制御ループ(すべて制御ルーチン)を、プロセスに対応して定義されるか又はプロセス内に含まれる多数の異なるループの各々に対して実行するようにプログラムされる。一般的に、上記のような制御ループはそれぞれ、アナログ入力(AI)機能ブロックや、比例・積分・微分(PID)制御またはファジー論理制御機能ブロックのような単独出力制御ブロック、およびアナログ出力(AO)機能ブロックのような単独出力ブロックなどの1つ以上の入力ブロックを含む。制御ブロックは、バルブ位置など単独プロセス入力を制御するために使用される単独出力を生成するので、通常これらの制御ループは単独入力‐単独出力制御を行なう。しかしながら、特定の場合においては、被制御プロセス変数は、単独のプロセス入力だけではなくそれ以外のものにも影響されるため、しかも実際に各々のプロセス入力は多くのプロセス出力の状態に影響をもたらしうるため、独立して作動する多くの単独入力‐単独出力制御ループを多数使用してもあまり効果的ではない。このような場合、単独入力‐単独出力制御ループを使用するとプロセス出力が定常状態に達する前に振動を生じる可能性があるため、単独入力‐単独出力制御ループの使用は望ましくない。
【0006】
従来では、前記のような状況において制御を行なうために、モデル予測制御ルーチン制御または他のタイプのアドバンスト制御技術が使用された。モデル予測制御とは一般的に、複数のプロセス入力の変更による複数のプロセス出力のそれぞれに対する影響を計測してから、これらの計測結果(応答)を使用してプロセスモデルを生成するマルチ入力‐マルチ出力制御戦略である。該プロセスモデルは数学的に反転され、その後、マルチ入力‐マルチ出力コントローラ内でプロセス入力の変更に基づきプロセス出力を制御するために使用される。時として該プロセスモデルは、各プロセス入力に対するプロセス出力応答曲線を含んでいるか、または該応答曲線から作成され、これらの曲線は、例えば、各プロセス入力に送られた一連の疑似ランダム階段状変化に基づいて生成されうる。プロセスをモデリングするために、これらの応答曲線を周知の様態において使用することができる。モデル予測制御は当技術分野において周知のことであり、よって、ここにおいてはその詳細に関する説明を省略する。ちなみに、モデル予測制御の概要は、1996年に米国化学技師協会(AIChE)会議にてQin, S. Joe氏とThomas A. Badgwell氏により発表された「An Overview of Industrial Model Predictive Control Technology (産業モデル予測制御技術の概要)」に記述されている。
【0007】
また、MPC制御ルーチンなどのアドバンスト制御ルーチンの生成および使用は、プロセス工場用コントローラのコンフィギュレーション(設定)工程に統合されている。例えば、ここで参照することによりここに援用されるWojsznisらによる「Integrated Advanced Control Blocks in Process Control Systems(プロセス制御システムにおける統合型アドバンスト制御ブロック)」と題する特許文献1における記述は、プロセス工場をコンフィギュレーション(設定)する際にプロセス工場から収集されたデータを用いるアドバンスト・コントローラ(例えばMPCコントローラまたはニューラルネットワーク・コントローラ)などのアドバンスト制御ブロックを生成する方法を開示している。さらに具体的に言うと、特許文献1には、Fieldbusパラダイムなど特定の制御パラダイムを採用する別の制御ブロックの作成とダウンロードに統合される様態でプロセス制御システム内にアドバンスト・マルチ入力‐マルチ出力制御ブロックを生成するコンフィギュレーション・システムが開示されている。この場合、プロセスを制御するために、各々対応するプロセス出力およびプロセス入力にそれぞれ連結される所望の入出力を備える制御ブロックを生成することにより、アドバンスト制御ブロックが開始する。制御ブロックはデータ収集ルーチン及びそれと関連付けられる波形発生器を含み、且つ同調(tuning)パラメータ、マトリクス係数またはその他の実施されるべき制御パラメータが論理に含まれていないが故に最終調整が未完了の(untuned)或いは開発が未完了の(undeveloped)制御論理を備えうる。制御ブロックは、コントロールシステム内で互いに通信できるように連結されている定義済み入出力と共にプロセス制御システム内に配置される。(該入出力は、アドバンスト制御ブロックがプロセスの制御に使用されている場合に連結されるようになっている。)次に、テスト手順中に、制御ブロックは、プロセスモデル開発の際に使用するために特別に設計されている波形発生器により生成された波形を使用し、制御ブロック出力を介して各プロセス入力を系統的に反転させる。その後、制御ブロックは、制御ブロック入力を介して、プロセス入力の各々に送られたそれぞれの生成された波形に対するプロセス出力の各々の応答に関するデータの収集を調整する。このデータは、例えば、格納すべきデータヒストリアン(履歴データツール)に送信してもよい。プロセス入出力の各組に対して十分なデータが収集された後、プロセスのモデリング処理が実行され、それにおいて、例えば周知の或いは所望のモデル生成ルーチンを使用して集めたデータからプロセスモデルが1つ以上生成される。このモデル決定ルーチンの一環として、モデルパラメータ決定ルーチンは、制御論理がプロセスの制御に使用するために必要するモデルパラメータ(例えばマトリクス係数、不感時間、ゲイン、時間定数など)を生成する。それから制御論理パラメータおよび必要な場合はプロセスモデルがアドバンスト制御ブロックの生成を完了させるために制御ブロックにダウンロードされ、それにより、アドバンスト制御ブロックおよびそれに含まれるモデル・パラメータ且つ又はプロセスモデルがプロセスの制御に使用できるようになる。
【0008】
プロセス工場内のプロセス・コントローラを生成およびダウンロードするための前記技術は有用である一方、テスト段階においてプロセス工場から収集されたデータからプロセスモデルを作成又は生成するためにモデル作成ソフトウェアの能力に大きく依存するものである。実際にプロセスモデルの開発は、例えばMPCコントローラの導入において最も重要な段階であり、また、大抵の場合、そのモデルの品質によりアプリケーションが正常に機能(成功)するか否か決定される。したがって、アドバンスト制御ブロックにおいて使用するために生成されたプロセスモデルを生成および確認する工程は非常に重要である。
【0009】
一般的に、プロセスモデル作成ソフトウェアは、有限インパルス応答(FIR)モデルなどのノンパラメトリックモデル及び外部入力付き自己回帰(ARX)モデルなどのパラメトリックモデルをはじめとする様々なタイプのモデルを生成しえる。一般的に、FIRモデル作成ルーチンはFIRモデルを生産できる一方で、FIRモデルはARXモデルと比較するとモデルを定義するために必要とされるメモリのサイズ並びにモデルの開発に必要とされる演算回数の関係において、MPCコントローラにおいて不利な要素を持っている。ARXおよび他のパラメトリックモデルはモデルを定義するために必要とされるメモリおよび演算回数がFIRモデルと比較して少ない一方、パラメトリックモデル作成ソフトウェアはモデル・パラメータの解に収束できないため、該ソフトウェアではパラメトリック・プロセスモデルを全く作成することができない場合が多々ある。特に、最小自乗などの回帰アルゴリズムに依存するモデル生成技法において解への収束が問題となる事実は周知のことである。この場合、同定されたモデル・パラメータは数学的には正確かもしれないが、真のパラメータを示すものではない。ARXおよびその他のパラメトリックモデルにより生成されるプロセスの不感時間の予測値は通常正確ではないため、当該モデルは前記の問題が生じやすく、結果としてモデルを生成する能力に欠けたり、パラメータが数的に有効とされないモデルを生成したりすることにつながる。
【0010】
いずれにしても、モデル作成ソフトウェアがパラメトリックモデルを生成できないと、制御設計者が十分または適切なパラメトリックモデルを手動で決定しなければならないため、どちらの場合も問題である。従来は、例えば、パラメトリックモデル作成ソフトウェアを一組のモデル・パラメータに収束させようと試みる際に、ユーザは、モデルの作成に使用されたプロセスデータに更にデータを追加したり、[前回]以上の不感時間または時間定数(一つまたは複数の)など様々なパラメータを指定してみたり、或いはプロセスデータの生成に使用されるプロセス反転信号の段階の絶対値(step magnitudes)を変更したりするなどを行わなければならなかった。また、これらの段階には、パラメトリックモデルのモデルパラメータを収束させようとする際に効果的に又は一貫して機能するものが一つもない。なおまた、モデル作成環境を手動で変更する段階においては、制御設計者が被制御プロセスについての適切な知識および経験を備えていることが要求され、これに加えて適切なモデルを決定するための適切な解析ツールが必要である。多くの場合、これらの要素のうちの一つまたは両方が欠けているために、結果として制御設計者は異なるタイプのコントローラ形式を選ばざるをえない状態である。
【0011】
実際にデータからモデルを生成する場合、プロセスモデルの正確さを確認するため、およびコントローラに要求されるロバスト性(頑強性)を如実に示しえる指標を提供するために、プロセスモデルの見直し検討および確認が行なわれる。例えば、モデルとプロセスが大きく相違する(不一致である)場合、より高いロバスト性を持つコントローラを使用するべきである。典型的なモデル同定の手順は、モデル予測の妥当性に関する定性的チェックの実施、モデル・パラメータの検証および編集、統計モデルの実証、およびモデル・シミュレーションの実施にかかる。特に該モデル予測段階の定性的チェック時には、シミューレーション・ソフトウェアはプロセスモデル入力として実際のプロセス入力データを適用し、また該プロセスにおける実際の出力の、既知のデータセットに予測出力に対してグラフを作成する。
【0012】
該検証段階においてユーザは、プロセスに関する知識に基づき、プロセスモデルに対する個々の段階応答を視覚的に(例えば、グラフィカルに)点検し、これらの段階応答が予測どおりの範囲にあることを検証する。数値による段階応答やグラフィカルな段階応答の設計と編集をユーザが行えるようにする周知のツールを使用して、該ユーザは、(1)プロセスに関する知識と、(2)計測[値]の動向およびシミュレーションの観察を通して収集された情報と、(3)得られたプロセスモデルとに基づいてモデルを修正することができる。
【0013】
次に、統計モデルの実証段階では、統計的手法を使用してモデルの不確実性を数量化する。前記統計的手法は、平方2乗平均(RMS:二乗平均平方根値)など、実際の出力と予測の出力との検証エラーを算出することに関する。要求を満たさないモデルについては、2乗平均のエラーがかなり高く、例えば走査当たり2.4パーセントある。経験に基づく概括的・近似的な原則としては、平均出力エラーが走査当たり1パーセントを上回る場合、関連する段階応答をより詳細にわたり調査するべきであるとされる。その他使用できる統計的手法として、残差とプロセス間の交差相関且つ又は残差の自己相関を探究するところの検証エラーまたは残差の相関分析が挙げられる。さらに、プロセスモデルの周波数伝達関数および残差を算出することが可能であり、また、周波数ドメインの不確実性範囲(境界)を検討対象の周波数帯域におけるモデルの品質を示す指標として使用してもよい。
【0014】
開発されたモデル・パラメータに基づいてモデル品質を定義するための有用な様態の一つは、定義済みの確率限界(probability)における特定のモデル・パラメータ値の範囲(通常95%)を示すモデル信頼区間の概念を利用している。すなわち、信頼区間は、パラメータ値が定義済みの確率限界の範囲に含まれると予測されるモデル・パラメータ値の範囲を定義する。信頼区間は、モデル同定に関する非常に重要な暗黙の情報を提供するため、信頼区間が広いほどモデルの精度が低下することが示唆される。信頼区間が狭い方が望ましいことが一般的に認められている。一方、例えば、モデル次数(order)がプロセスの複雑性と整合しない場合、又は線型モデルがかなりの非線形性を伴うモデリング工程に使用されている場合は、信頼区間が広い方が所望のモデルパラメータをより良く収束できることが示唆される。しかしながら、ユーザは信頼区間を利用してより効果的にモデルを検証することができる一方、信頼区間は、モデルの改善またはモデルをより正確なものにする目的でモデルを変更する際には有用とはいえない。
【0015】
最後に、プロセスモデルおよびプロセスモデルの応答をグラフィカルに表示し、場合によってはそれらを編集した後に、プロセスモデルを使用してのMPCシミュレーションを実行することにより、ユーザはプロセス対プロセスモデルの不整合性についての見解を得ることができる。さらに、シミュレーションにより、コントローラの使用前に「what if分析」(シミュレーション分析)を行うことが可能になる。
【0016】
これらの技法はMPCモデルのチェックに日々利用されているが、本来的な欠点もある。特に、予測精度(予測品質)の目視観測およびコンピュータ演算による検証エラー(RMS値、残差、etc.)などはどちらも単に「予測出力が正確でないで可能性(疑惑性)がある」ということを示すだけであり、また、シミュレーション・エラーによりモデルの不整合性が示されても、それによりモデルを向上させるために利用できる情報が提供されるわけではない。同様に、数値による及びグラフィカルな段階応答設計・編集ツールについても、ユーザがプロセスに関する専門的な知識がある場合のみにその有用性が発揮されることも明らかである。
【0017】
したがって、ゲイン(過程利益)などのパラメータの妥当性を検証するために段階応答を点検することはできるが、ダイナミクスやゲインの絶対値(magnitude)および時間定数など、結果的に得られるコントローラに大きな影響を及ぼすその他の重要な情報をユーザが明確に確認できない場合がある。誤差が生じる最も一般的な原因として、例えば、概してユーザにより正確に把握されておらず、それ故にモデルの設計や編集工程においてたやすく勘案できないようなプロセス不感時間またはパラメータが挙げられる。さらにまた、ノイズを含むデータ、不充分なプロセスの励起、およびデータ収集用の検査時間の不足なども、制御目的の要求を満たせないようなモデルが生産される原因となりえる問題点として挙げられている。とはいえ、工場における諸条件によりテスト自体を改善することは不可能な場合がある。さらにまた、自己相関および交差相関などの統計的評価は、数量モデル情報を提供する上では有用であるが、上記と同じ問題(すなわち具体的な情報が提供されないという問題)をかかえている。
【0018】
結果として、モデルの誤差が認識されている場合でも、是正処置を決定または実施することは困難である。多くの場合、たとえモデルのほんの一部分のみが当該不整合性の原因となっているとしても、この問題(事実)を解決するには別のまたは異なるデータの組を使ってモデルの再同定を行うことが必要とされる。ここで更に、決定しえるモデルの不整合情報がコントローラ生成プロセスに実際に反映されないという問題がある。したがって、コントローラが使用され且つその性能実績が測定された後にならないと本当のモデルの品質を知ることができず、そのため、相当な時間や資金および資源を失うことになるだけではなく、工場人員によるMPC技術の採用を妨げる要因となる。
【0019】
この点において、時間ドメインにおいて信頼区間を示す方法は、個々の段階応答に対して具体的なパラメータという形でモデル品質の諸特質を提供できるため、適用する価値のある有望な技法であるといえる。この技法はまた、モデルの特定の部分のみを再同定且つ又は訂正することを可能にする。同じく重要な[利点]として、特定のパラメータのエラーを認識することによりMPCコントローラ生成設定の選択を容易できるため、ロバストなコントローラを得ることができるという点が挙げられる。また、信頼区間の時間ドメインでの提示により、前記のような品質変数を使用する際の複雑性が解消される。
【特許文献1】米国特許第6,445,963号明細書
【発明の開示】
【発明が解決しようとする課題】
【0020】
しかしながら、時間ドメイン中での信頼区間を使用すると生成されたプロセスモデルを評価する際に効果的である一方、充分な励起(excitation)を伴わずに行われたテスト、データ収集時間枠の不足、モデルとプロセス複雑性の不整合などモデルに制約をもたらす条件などの(例えば、モデル次数がプロセスの複雑性と整合しない、又は線型モデルがかなりの非線形性を伴うモデリング工程に使用されているなどの)問題が存在していても、MPCコントローラ生成をはじめとするコントローラ生成に利用可能なロバスト(頑強)なプロセスモデル生成方法を始めから提供することがなお望ましい。
【課題を解決するための手段】
【0021】
意外にも、MPCコントローラ生成などのコントローラ生成に利用できるロバスト(頑強)なプロセスモデル生成方法が(特にパラメトリック・プロセスモデルの生成する場合において)、プロセスから収集され且つモデル生成過程で使用されるプロセスデータにノイズを添加することにより得られることが発見された。特に、パラメトリック・プロセスモデルなどのロバスト(頑強)なプロセスモデル生成法は、周知のテスト入力の信号または系列に基づいてプロセス出力を収集し、収集されたプロセスデータにランダムノイズ(不規則雑音)などのノイズを添加した後、この収集プロセスデータからプロセスモデルを決定するために標準的技法または周知の技法を利用する。実際に、プロセスモデルを生成する前にプロセスデータからノイズを除去または削除しようと試みる従来の技法に反し、通常ならばノイズの添加なくしては同じタイプの好ましいプロセスモデルを生成することが不可能でありえる状態でも、プロセスデータにノイズを添加することにより、ほとんどの場合好ましいプロセスモデルの生成が可能になることが明らかになっている。なお、この技法を使用して生成されたプロセスモデルは、一般的に、より広範囲の信頼区間を備えているため、モデル作成環境を手動で又はグラフィカルに変更する必要なく、多くのプロセスにおける複雑性を考慮してなる広範な信頼区間にも十分適合できるモデルを提供することが可能であることが明らかになっている。
【0022】
この技法の一使用(態様)においては、アドバンスト制御ブロック生成ルーチンは、プロセス制御システム内においてロバスト・プロセスモデル作成ルーチンを使用してモデル予測コントローラ、ニューラルネットワーク・モデリング・ブロック、又は制御ブロックなどのマルチ入力‐マルチ出力ブロックを生成する。該アドバンスト制御ブロックは、プロセスを制御するために、各々対応するプロセス出力およびプロセス入力にそれぞれ連結される所望の入出力を備える制御ブロックを生成することにより開始される。該制御ブロックは最終的には、例えば、モデル予測コントローラ一式を含むようにできるが、初期状態においてはデータ収集ルーチンおよびそれに伴う波形発生器を備える。望ましい場合は、該制御ブロックが、同調パラメータや、マトリクス係数、またはその他の該コントローラ実行に要される制御パラメータが論理に含まれていないが故に、最終調整が未完了(untuned)もしくは開発が未完了(undeveloped)の制御論理を備えるようにしてもよい。制御ブロックは、コントロールシステム内で互いに通信できるように連結されている定義済み入出力と共にプロセス制御システム内に配置される。(該入出力は、アドバンスト制御ブロックがプロセスの制御に使用されている場合に連結されるようになっている。)テスト手順中に、制御ブロックは、プロセスモデルを開発する際に使用できるように特別に設計されている波形発生器により生成された波形を使用し、制御ブロック出力を介して各プロセス入力を系統的に反転させる。該制御ブロックは、制御ブロック入力を介して、プロセス入力の各々に送られた生成された波形のそれぞれに対する各プロセス出力の応答に関するデータ収集を調整する。このデータは、例えば、データ・ヒストリアンに送信されそこに格納されてもよい。
【0023】
十分なデータが収集された後、プロセスのモデリングが実行され、収集されたプロセス出力データにノイズが添加される。このノイズには、例えば、平均値がゼロで均等に分布されるノイズで最大振幅がプロセス出力データの絶対値(magnitude)範囲の約0.20〜約0.5パーセントのものを使用してもよいが、平均値がゼロで均等に分布されるノイズで最大振幅がプロセス出力データの絶対値(magnitude)範囲の約0.4パーセントのものがより好ましい。その後、パラメトリック・プロセスモデルなどのプロセスモデルは、例えば、ARXモデル生成ルーチンなどのモデル予測コントローラプロセスモデル生成ルーチンを使用して収集された(ノイズを含む)データから生成される。その後、制御ブロックの論理により、制御論理をプロセス制御に使用するのに必要とされるパラメータを作成または開発する。望ましい場合は、作成されたプロセスモデルの妥当性を検証し、その検証結果については、一つ以上のモデル信頼域を示すグラフでプロットしてユーザに表示してもよい。望ましい場合は、ユーザが、どの個所でモデルがプロセス応答から外れているのかを判断し、必要な場合にはその不一致が生じているモデル上の個所に変更を加えられるようにする、時間ドメインに基づく信頼区間のグラフを前記信頼区間のグラフとしてもよい。
【0024】
結果として得られたプロセスモデルをテストまたは表示した後に、アドバンスト制御ブロックの生成を完了させるために制御論理パラメータおよびプロセスモデルが制御ブロックにダウンロードされ、それにより、アドバンスト制御ブロック並びにそれに含まれるモデル・パラメータとプロセスモデルがプロセスの制御に使用できるようになる。
【発明を実施するための最良の形態】
【0025】
ここで図1を参照して説明すると、プロセス制御システム10は、データ・ヒストリアン12 および1台以上のホスト・ワークステーションまたはコンピュータ13(諸タイプのパーソナルコンピュータ、ワークステーション、など)に接続され各々表示画面14を備えるプロセス・コントローラ11を含む。また、コントローラ11は入出力(I/O)カード26、28を介してフィールド装置15〜22に接続される。データ・ヒストリアン12は、望ましいとされる諸タイプのメモリおよびデータを格納するためのあらゆる望ましい又は周知のソフトウェア、ハードウェアまたはファームウェアを備える諸タイプの望ましいデータ収集ユニットでありえ、(図1に図示されるように)ワークステーション13とは別に或いはワークステーション13のうちの一台の一部として設けられてもよい。コントローラ11(例えば、Emerson Process Management社から販売されているDeltaV(商標)コントローラ)は、例えばイーサネット(登録商標)接続または他の望ましい通信網を介して、ホスト・コンピュータ13およびデータ・ヒストリアン12に通信可能に接続される。また、コントローラ11は、例えば、標準の4〜20 ma装置且つ又はFieldbusプロトコル、HART(登録商標)プロトコルなどの様々なスマート通信プロトコルに関連付けられる所望のあらゆるハードウェアおよびソフトウェアを用いてフィールド装置15〜22に通信可能に接続される。
【0026】
フィールド装置15〜22は、センサー、バルブ、伝送器、ポジショナーなどのあらゆるタイプの装置でありえ、一方、I/Oカード26、28は、所望のあらゆるコミュニケーションまたはコントローラ・プロトコルに準拠するあらゆるタイプのI/O装置でありえる。図1に示す実施形態において、フィールド装置15〜18はアナログ回線を通じてI/Oカード26と通信する標準の4〜20 ma装置であり、フィールド装置19〜22はFieldbusプロトコルによるコミュニケーションを用いデジタル・バスを通じてI/Oカード28と通信するFieldbusフィールド装置のようなスマート装置である。一般的に、Fieldbusプロトコルは、フィールド装置を相互連結する2線式ループまたはバスに、標準化された物理インタフェースを供給するオールディジタルのシリアル双方向通信プロトコルである。要するに、Fieldbusプロトコルはプロセス内のフィールド装置にローカルエリアネットワークを提供し、これらのフィールド装置が、プロセス施設全体にわたり分散される場所で(Fieldbusプロトコルにのっとって定義される機能ブロックを用いて)プロセス制御機能を行い、またこれらのプロセス制御機能の実行前および実行後に互いに通信することにより、総合的な制御戦略を実施できるようにする。もちろん、フィールド装置15〜22はその他所望の標準またはプロトコル(将来的に開発されうる諸規格またはプロトコルを含む)に準拠するものでもありえる。
【0027】
コントローラ11は、それに格納されるもしくはそれと関連付けられている一つ以上のプロセス制御ルーチン(制御ループを含みうる)を実施または監視し、所望のあらゆる様態にてプロセスを制御するために装置15‐22、ホスト・コンピュータ13およびデータ・ヒストリアン12と通信する。なお、ここに記載される制御ルーチンまたは要素はいずれも、所望の場合、異なるコントローラまたは他の装置により実施または実行される部分を備えうることにも注目すべきである。同様に、ここに記載されているプロセス制御システム10内に実施されるべき制御ルーチンまたは要素は、ソフトウェア、ファームウェア、ハードウェアなどを含むあらゆる様式のものでありえる。本発明を達成する目的で、プロセス制御要素を、例えばコンピュータ可読媒体に格納されるあらゆるルーチン、ブロックまたはモジュールをはじめとするプロセス制御システムのあらゆる部分またはその一部とすることが可能である。モジュールまたは、サブルーチン、サブルーチンの一部(コード行など)といった制御手順におけるあらゆる一部分でありえる制御ルーチンは、ラダー言語(ロジック)、シーケンシャルファンクションチャート、機能ブロック図、或いはその他のソフトウェアプログラミング言語または設計パラダイムを使用する所望のあらゆるソフトウェア形式にて実施しえる。同様に、制御ルーチンを、例えば一つ以上のEPROM、EEPROM、特殊用途向け集積回路(ASIC)またはその他のハードウェアもしくはファームウェアの要素用にハードコード化しえる。さらにまた、制御ルーチンを、グラフィカル設計ツールやその他のタイプのソフトウェア/ハードウェア/ファームウェアのプログラミングまたは設計ツールを含むあらゆる設計ツールを用いて設計してもよい。このように、所望のあらゆる様態にて制御戦略または制御ルーチンを実施するようにコントローラ11をコンフィギュレーション(設定)してもよい。
【0028】
一実施形態において、各機能ブロックは全体的な制御ルーチンの一部分(例えばサブルーチン)であり、プロセス制御システム10内でプロセス制御ループを実施するために(リンクと呼ばれる通信機能を介して)他の機能ブロックと共に作動する、いわゆる機能ブロックというものを使って、コントローラ11が制御戦略を実施する。機能ブロックは通常、伝送器、センサーまたはその他のプロセス・パラメータ測定装置に関連する入力機能、PIDやファジー論理などの制御を行なう制御ルーチンに関連する制御機能、またはプロセス制御システム10内で何らかの物理的機能を行うために何らかの装置(バルブなど)の動作を制御する出力機能のうちの一つを行う。もちろんハイブリッドやその他のタイプの機能ブロックも存在する。通常、これらの機能ブロックが標準の4〜20 ma装置およびHART(登録商標)装置のような何らかのタイプのスマート・フィールド装置に使用されている又は関連付けられている場合は、機能ブロックをコントローラ11に格納し該コントローラにより実行してもよく、またFieldbus装置の場合はフィールド装置自体に格納し該装置により実行してもよい。本明細書においては機能ブロック制御戦略を用いるコントロールシステムが説明されているが、ラダー言語(ロジック)、シーケンシャル・ファンクション・チャートなどその他の仕様(conventions)を用いて、または所望のその他のプログラミング言語やパラダイムを用いて、制御戦略または制御ループまたはモジュールを実施または設計してもよい。
【0029】
図1における展開ブロック図30に示されるように、コントローラ11には、複数の単ループ制御ルーチン(図中、ルーチン32および34として示される)を内蔵してもよく、また所望の場合は一つ以上のアドバンスト制御ループ(図中、制御ループ36として示される)を実施してもよい。通常、このようなループをそれぞれ制御モジュールと呼ぶ。前記単ループ制御ルーチン32、34は、それぞれ対応する適切なアナログ入力(AI)機能ブロックとアナログ出力(AO)機能ブロックに接続される単独入力‐単独出力ファジー論理制御ブロックと単独入力‐単独出力PID制御ブロックを用いて信号ループ制御を行なっている状態で図示されている。(該アナログ入力(AI)およびアナログ出力(AO)機能ブロックは、バルブなどの工程管理装置と、温度伝送器や圧力伝送器などの測定装置と、またはプロセス制御システム10内に備えられているその他の装置と関連付けられている。)もちろん単ループ制御ルーチン32および34は、モデル・ベース制御ブロックをはじめとするその他のタイプの制御ブロックを含みうる。前記アドバンスト制御ループ36は、多数のAI機能ブロックに通信可能に接続された入力と多数のAO機能ブロックに通信可能に接続された出力を持つアドバンスト制御ブロック38を含んでいる状態で図示されている。該アドバンスト制御ブロック38の入出力は、その他所望の機能ブロックまたは制御要素に接続され、その他のタイプの入力を受け取るか、もしくはその他のタイプの制御出力を供給するように構成されている場合もありうる。アドバンスト制御ブロック38は、複数のプロセス入力に制御信号を供給することにより複数のプロセス出力を制御するために使用されるあらゆるタイプのマルチ入力‐マルチ出力制御ブロックでありうる。本明細書においては、アドバンスト制御ブロック38がモデル予測制御(MPC)ブロックであるとしているが、該アドバンスト制御ブロック38は、ニューラルネットワーク・モデリングまたは制御ブロック、マルチ変数ファジー論理制御ブロック、リアルタイム最適化ブロックなどその他のマルチ入力‐マルチ出力ブロックでもありえる。図1に図示されるアドバンスト制御ブロック38や単独入力‐単独出力制御ブロックなどの機能ブロックは、コントローラ11により実行、或いは、例えば複数のワークステーション13のうちの1台(もしくはフィールド装置19〜22のうちの1台)などその他の制御演算装置に設置されてそこで実行できるということが分かるはずである。
【0030】
図1に示されるように、ワークステーション13のうちの1台は、ここにおいてより詳細に説明されている方法でアドバンスト制御ブロック38の作成、ダウンロードおよび実施を行う制御ブロック生成ルーチン40を含んでいる。該制御ブロック生成ルーチン40をワークステーション13内のメモリに格納してその中にあるプロセッサにより実行してもよいが、所望の場合は、このルーチン(またはその一部)を付加的または代替的にプロセス制御システム10内の別の装置に格納してその装置により実行してもよい。一般的に言って、該制御ブロック生成ルーチン40は、アドバンスト制御ブロックを作成し、プロセス制御システムにこのアドバンスト制御ブロックを接続する制御ブロック作成ルーチン42と、アドバンスト制御ブロックにより収集されたデータに基づきプロセスまたはその一部のプロセスモデルを作成するプロセス・モデリングルーチン44と、プロセスモデルからアドバンスト制御ブロック用の制御論理パラメータを作成し且つこれらの制御論理パラメータをプロセス制御の際に使用できるようにするためにアドバンスト制御ブロックに格納またはダウンロードする制御論理パラメータ作成ルーチン46と、を含んでいる。下に一覧される一連の異なるルーチンにより該ルーチン42、44および46を構成できるということが理解されるはずである:即ち、
プロセス出力を受け取るよう構成される制御入力を備え且つプロセス入力に制御信号を供給するよう構成される制御出力を備えるアドバンスト制御要素を作成する第1のルーチン、
ユーザがプロセス制御ルーチン(所望のあらゆるコンフィギュレーション・ルーチンでありうる)内にアドバンスト制御要素を通信可能に接続することを可能にする第2のルーチン、
各プロセス入力に励起波形を供給するためにアドバンスト制御要素を用いる第3のルーチン、
該励起波形へのプロセス出力それぞれの応答を反映するデータを収集するためにアドバンスト制御要素を用いる第4のルーチン、
前記収集されたデータからプロセスモデルを作成する第5のルーチン、
プロセスモデルからのアドバンスト制御論理パラメータを開発する第6のルーチン、および
アドバンスト制御要素によるプロセス制御を可能にするためにアドバンスト制御論理と(必要な場合は)プロセスモデルを該アドバンスト制御要素内に配置する第7のルーチン、などである。
【0031】
制御ブロック生成ルーチン40はマルチ入力‐マルチ出力制御ブロックを作成するために用いられると本明細書において説明されているが、該ルーチン40を単独入力‐単独出力、またはマルチ入力‐単独出力、または単独入力‐マルチ出力の制御ブロック或いは他のタイプのブロック(例えばモデリングブロックなど)を作成するために使用することもできる。
【0032】
以下、図2を参照しながら説明する。フローチャート50は、制御ブロックで使用される一つ以上のプロセスモデルをロバストに(頑強に)生成することにかかる方法により図1のプロセス制御システム10のようなプロセス制御システムにおいてモデル・ベース制御ブロック(特ににMPC制御ブロック)を作成し使用する段階を示している。ここで言う「プロセスモデルをロバストに(頑強に)生成する」という表現は、制御ブロックが許容範囲(acceptable)内の水準で動作することを保証するために、対象となるプロセスに整合するプロセスの一つ以上の統計的測度(尺度)を満たすプロセスモデルを、例えば、プロセスデータが極めて少ない、又はプロセスモデルがプロセスの複雑性に整合しない等、通常そのようなプロセスモデルを生成する能力を制限するとされる様々な因子が存在するにもかかわらず、生成できるという意味である。MPCブロックまたはモジュールの作成が図2のフローチャート50により示されているが、それと同じまたは類似する段階を行って、例えばニューラルネットワーク・モデリングまたは制御ブロック、マルチ変数ファジー論理制御ブロックなどのあらゆるマルチ入力/マルチ出力ブロックのような他のモデル・ベース・ブロックを作成および使用することもできる。
【0033】
所定の開始時間(ブロック52)において、MPC処理の実施によりプロセス制御システム10内において制御を向上または提供するための決定が下される。この決定が下されるのは、プロセス制御システム10の初期設定時、または、例えばその他単ループ制御ルーチンなどの制御ルーチンにより十分な制御が行われていないと判明した後のある一定の時点においてである。該ブロック52において、オペレーターまたは他のユーザは、プロセス制御システム内のMPCモジュールまたは制御ループを作成する段階を開始するためにMPCブロック生成ルーチン40を実行する。この工程の一環として、オペレーターは、設計中のMPCブロックの出力が接続されることになっているプロセス入力を選択し、また設計中のMPCブロックの入力が接続されることになっているプロセス出力を選択する。MPCブロックの入出力数はいかなる数でもよいが、一般的に各MPCブロックは、設定値(または設定範囲内)において維持すべきプロセス変数またはパラメータである被制御パラメータ入力と、例えばプロセスに関連する物理的制約に応じて特定の制約条件または範囲により制限されるプロセス変数であり且つMPCブロックが決して制約又は範囲から外れてはならないところの制約付き入力と、変更すると被制御パラメータも変更すると分かっているプロセス入力のようなそれ以外のプロセス変数であるプロセス外乱パラメータ入力とを含む3種類の入力を備える。MPCブロックはプロセス外乱パラメータ入力を用いて、被制御パラメータ(つまり、被制御プロセス出力)への変更を予測し、変更の影響が生じる前に抑制する。例えば被制御装置またはその他の被制御プロセス要素からの(MPC制御ブロックがこれらの要素をより効果的に制御できるようするための)フィードバックなど、その他の入力をMPCブロックに設けてもよい。同様に、該MPCブロックの出力は、制御ループ入力や装置制御入力などを含む所望のあらゆるプロセス変数またはその他のプロセス入力を制御するために接続されてもよい。他の制御要素に該MPCブロックを接続することにより開発されたルーチンは、ここにおいてMPCモジュールと総称する。ユーザはMPC機能ブロックを新規作成してもよいが、機能ブロック・ライブラリーなどのメモリから初期機能ブロックを取得した後、この機能ブロックを使って又はこの機能ブロックのインスタンスを作成してプロセス制御システムに使用してもよい。さらに、ユーザまたは他のプロバイダー(供給者)はその他の所望の様態で機能ブロックまたは他の制御要素を設けてもよい。
【0034】
ブロック54において、オペレーターは、プロセス制御システム内で通信可能に接続された特定の入出力を使って、(まだモデル予測制御を達成するのに必要なすべての情報を含んでいない)MPCブロックを有するMPCモジュールを作成し、MPCモジュールを実施する適切なコントローラまたは他の装置に該ブロックまたはモジュールをダウンロードする。この工程の一環として、オペレーターは、MPCブロックの出力を適切なプロセス入力に通信可能に連結し、MPCブロックの入力を適切なプロセス出力に通信可能に連結することにより、MPCブロックを実施するためにプロセス制御システム10をコンフィギュレーションする。
【0035】
図3において、MPCブロック56はプロセス58に接続された状態で図示されている。該MPCブロック56は、3つの入力IN1〜IN3および3つの出力OUT1〜OUT3を持つ3x3制御ブロックであり、一方、該プロセス58は入力X1〜X5および出力Y1〜Y6を備えるものである。もちろん、該MPCブロック56および該プロセス58には前記以外の入出力数を備えることもできる。該MPCブロック56は一般的に正方形のブロック(すなわち、入力数が出力数と同数のブロック)でもよいが、このようなコンフィギュレーションは必ずしも必要とされずMPCブロック56の入力数と出力数は異なる数でもよい。図3に示されるように、オペレーターは、プロセス出力Y1〜Y3をそれぞれ対応するMPCブロック入力IN1〜IN3へと通信可能に接続し、且つ、MPCブロック出力OUT1〜OUT3をそれぞれ対応するプロセス入力X1〜X3へと通信可能に接続する。もちろん、図3においてプロセス入出力に接続する点線で図示されているように、プロセス58の入力と出力のどれもが他の制御ループまたはプロセス制御システム10に関連する制御ルーチン内にあるその他の要素には接続されうる。一般的に、MPCブロック56および制御入力(プロセス入力X1〜X3に接続する点線で図示される)をプロセス58へ供給しうるその他のブロックは、何らかのスイッチ(図3においてボックス59として示される)を介して接続される。スイッチ59は、ハードウェアまたはソフトウェア・スイッチでありえ、また所望の場合は、Fieldbus機能ブロックなど機能ブロック内に備わる異なる入力に送られる異なる制御入力信号を持ち、2つの信号を受け取る機能ブロックのモードに基づいてMPCブロック56からの制御信号と別の機能ブロック(例えばPID機能ブロック)からの制御信号とを切り替える(選択する)ものを設けてもよい。
【0036】
もちろん、オペレーターは所望のあらゆる様態でプロセス58にMPCブロック56を接続でき、また一般的にオペレーターは、プロセス制御システム10内の単ループ制御ルーチンなど別の制御ループを作成するために使用するのと同じ制御コンフィギュレーションまたは設計プログラムを使うことになる。例えば、オペレーターは所望のあらゆるグラフィカル・プログラミング・ルーチンを使ってMPCブロック56とプロセス入出力間の接続を指定してもよい。このように、MPCブロック56は、他の制御ブロック、要素またはルーチンと同じ方法でサポートされており、これにより制御システム10内におけるMPCブロック56のコンフィギュレーションと接続およびそのブロックのサポート(状態)を、該システム内にあるその他のブロックのコンフィギュレーション、接続およびサポート(状態)と同じものにする。一実施形態において、制御システム10内にあるその他のブロックと同様にMPCブロック56は、Fieldbus機能ブロックと同じ又はそれに類似するものなるように設計された機能ブロックである。本実施形態において、MPCブロック56は、Fieldbusプロトコルの指定または提供と同じ又は類似するタイプの入出力を持っているものなどでもよく、さらに、例えばFieldbusプロトコルが指定するものと同じ又はそれに類似する通信リンクを用いてコントローラ11により実行(実施)できるものである。なお、プロセス制御ルーチンおよびその要素をグラフィカルに作成する方法は、ここで参照することによりここに明確に援用される「System for Configuring a Process Control Environment(プロセス制御環境をコンフィギュレーションするためのシステム」と題するDoveらによる米国特許第5,838,563号に記載されている。もちろん、異なるタイプの機能ブロックを用いるものやその他のプロセス制御コンフィギュレーション・パラダイムに含まれるその他のルーチン、サブルーチンまたは制御要素を用いるものなど、他の制御ループまたは制御モジュールの設計戦略を使用することも可能である。
【0037】
Fieldbus機能ブロックパラダイムにより提供されるもののように機能ブロックが相互に接続されるコントロールシステムを用いる場合、MPCブロック56をプロセス制御ルーチン内の別の機能ブロックに直接に接続することができる。例えば、被制御装置に関連する出力ブロック(例えばAOブロックなど)にMPCブロック56の制御出力を接続することにより、MPCブロック56を例えばバルブなどの制御装置に直接に接続することが可能になる。同様に、これらの制御ループの動作を監視又は無視(オーバーライド)するために、MPCブロック56が、別の制御ループ内の機能ブロック(例えば別の制御機能ブロックの入力など)に制御信号を提供するようにしてもよい。
【0038】
特許文献1にもより詳細にわたり説明されて、これにより理解されるように、図3においてMPC制御ブロック56の出力接続されているプロセス入力X1〜X3は、既存の制御戦略により定義される制御ループへの入力またはプロセスに接続されるバルブやその他の装置への入力などの所望のあらゆるプロセス入力でありうる。同様に、MPCブロック56の入力に接続されるプロセス出力Y1〜Y3も、バルブや他のセンサーの出力、AOまたはAI機能ブロックの出力またはその他の制御要素または制御ルーチンの出力などの所望のあらゆるプロセス出力でありうる。
【0039】
再度図2のステップ54を参照しながら説明すると、一旦オペレーターがそれぞれ対応する所望のプロセス出力と入力に各々接続されている入出力を持つ初期(第1の)MPCブロックを含む制御モジュールを作成すると、初期MPCブロックが組み込まれている制御モジュールは、コントローラ11または一つ以上のワークステーション13のうちの一台など適切な装置へダウンロードされ、実行できる状態とされる。次に、オペレーターはステップ99において、初期MPCブロックに、周知の方法でプロセスを励起してプロセス励起中にプロセス入出力データを収集する処理を開始するように指示する。
【0040】
図3に示されるように、初期MPCブロック56には、データ収集ルーチン100、波形発生器101、ジェネリック制御論理102、および制御パラメータ103とプロセスモデルまたはモデル・パラメータ104を格納するための記憶装置が組み込まれている。ジェネリック論理102は、例えば、特定のインスタンスにおいて制御を行なうために作動するには係数またはその他の制御パラメータを必要とするジェネリックMPCルーチンでありうる。また、場合によっては、ジェネリック論理102はプロセスモデルまたは被制御プロセスを制御する際に該被制御プロセス用のモデル・パラメータを必要とするものでありうる。初期MPCブロック56は、例えばコントローラ11へダウンロードされた後、MPCブロック56の開発工程における次のフェーズ(プロセスモデルの作成に使用されるプロセス出力の各々に対してデータが収集されるフェーズ)を開始するようにとの指示を、MPC作成ルーチン42を介して受け取る。具体的には、オペレーターにより前記指示が発せられた時点で(またはその他いつでも所望に応じて)、MPCブロック56の波形発生器101はその出力OUT1〜OUT3にて一連の波形(series waveform)を発生し始め、プロセス入力X1〜X3の各々に励起波形を供給する。所望の場合は、ユーザ・ワークステーション13内のソフトウェアによりこれらの波形をジェネレータ101に供給してもよいが、むしろジェネレータ101により作成するほうが好ましい。また、好ましくは、波形発生器101により発せられた波形は、プロセスの通常動作中に生じると推測される異なる入力範囲にわたり該プロセスが動作するように設計される。MPC制御ルーチン用のプロセスモデルを開発するために、波形発生器101からプロセス入力X1〜X3の各々に一連の異なる組からなるパルスを送りうる(これにおいて、それぞれ同じパルス組の中に含まれるパルスは同じ振幅を有するが疑似ランダムな長さを有し、異なるパルス組のパルスは異なる振幅を有する)。このような一連のパルスの組は、それぞれの異なるプロセス入力X1〜X3を対象に作成された後、連続して一度に配信されうる。この間、MPCブロック56内のデータ収集ユニット100は、波形発生器101により発せられたそれぞれの波形に対するプロセス出力Y1〜Y3の応答を示すデータを収集するかもしくは収集動作を調整するものであり、また発せられた励起波形に関するデータを収集または収集動作を調整してもよい。この収集されたデータはMPCブロック56に格納されてもよいが、むしろ、データ・ヒストリアン12に自動的に送信してそこに格納するか、且つ又は、このデータを表示部14に表示できるワークステーション13に自動的に送信することの方が好ましい。
【0041】
したがって、何らかのアドバンスト制御論理(開発工程が未だ完全なものではない)を用いてプロセス58を制御しようと試みる代わりに、MPCブロック56は、まず最初にプロセス58に一組の励起波形を供給してから、これらの励起波形に対するプロセス58の応答を測定する。もちろん、波形発生器101により発せられる励起波形については、あらゆるモデル・ベース制御ルーチン用の制御論理パラメータを作成するのに有益なプロセスモデルを作成するために開発された望ましい波形であればいかなるものでも適用しえる。本実施例において、波形発生器101は、モデル予測制御コントローラ用のプロセスモデルを開発するのに有益であるとして知られるあらゆる波形の組を発し、また、これらの波形には周知の(又は前記目的を達成するために将来的に開発されるであろう)あらゆる形態を採用しうる。モデル予測制御のプロセスモデルを開発するためにデータを収集する目的でプロセスを励起するために用いられる波形は周知のものであるため、これらの波形の説明については本明細書では省略する。同様に、その他のあらゆる又は所望のあらゆるタイプの波形を、例えばニューラルネットワークやマルチ変数ファジー論理などその他の(モデリングを含む)アドバンスト制御アプリケーション用のプロセスモデルを開発する際に使用される波形発生器101を使用して発生するようにしてもよい。
【0042】
ちなみに、波形発生器101は所望のあらゆる形態のものでもよく、例えば、ハードウェア、ソフトウェアまたは両者の組み合わせを使用してもよいことにも注目すべきである。ソフトウェアを使用する場合は、該波形発生器101には所望の波形を発するために利用できるアルゴリズムを格納してもよく、発せられる波形のデジタル表現を格納してもよく、またはそのような波形を作成するために別のルーチンまたは保存データを用いてもよい。ハードウェアを使用する場合には、該波形発生器101は、例えばオシレーター(発振器)または方形波発生器の形態をとってもよい。望ましい場合は、波形の設計に必要または有益な特定のパラメータ(例えばおよそのプロセス応答時間、プロセス入力に送られる波形の振幅の段階サイズ等)を入力するようにオペレーターに求めてもよい。MPCブロック56が当初作成された時点で、または、プロセスの反転または励起を開始してプロセスデータを収集するようにとの指示をMPCブロック56がオペレーターから受け取った時に、前記情報を入力するようオペレーターに促すようにしてもよい。好ましい実施形態においては、完全で正確なプロセスモデルが確実に開発されるようにするために、データ収集ユニット100が、オペレーターにより入力された応答時間の3〜5倍の時間で、励起波形の各々に応じてデータを収集する(もしくはデータ収集を保証する)。
【0043】
好ましくは、波形発生器101が必要な励起波形をすべてそれぞれのプロセス入力X1〜X3に送り終え、データ収集ユニット100がプロセス出力Y1〜Y3に対するデータを収集するまで、MPC制御ブロック56が作動する。もちろん、所望の場合、またはこのデータ収集プロセス中に必要な場合、MPCブロック56の動作を中断するようにしてもよい。
【0044】
図4を参照しながら説明すると、制御論理生成ルーチン40により表示部14のうちの1つを操作するオペレーターに提示できるスクリーン表示118は、オペレーターがアドバンスト制御ブロックを生成する異なる段階を実施することを可能にする。具体的には、スクリーン表示118は、データ表示領域120と、制御ブロック生成ルーチン40(図1)の異なる部分を開始するために使用しうる4個のボタン121、122、123、124を備える。「Initiate Test(テスト開始)」のボタン121は、オペレーターが、初期MPCブロック56に励起信号をプロセス58へ送らせるようにし、データ・ヒストリアン12へ送るための入出力データを収集させるようにすることを可能にする。該ボタン121には、例えば、励起ルーチンを行なう残り時間(即ち、MPC制御ブロック56が全励起波形を生成しこれらの波形に応じて生成されたプロセスデータを収集するのにかかる時間)表示してもよい。ボタン121を押す前に、オペレーターは、通常プロセスが入力に対して応答するのにかかる時間を示す応答時間を入力してもよいし、データがMPCブロック56の波形発生器101に供給されうる、励起波形を生成するためにMPCブロック56により使用されたことのある段階サイズを表示又は指定してもよい。ボタン121を押した後に、MPCブロック56により収集されたデータもまたデータ表示領域120に表示してもよいし、また望ましい場合ユーザはプロセスモデルを作成するために使用すべきでないデータ、又はプロセスモデルを作成するために用いるデータから除外すべきデータに(例えば線やバーを用いて)フラグを立ててもよい。当然のことながら、データ収集ユニット100がデータを収集する際に、該データがデータ・ヒストリアン12またはその他のデータ格納に用いる記憶装置へと確実に送信されるようにしてもよい。
【0045】
オペレーターは、プロセスデータを収集した後のある時点において、MPCコントローラで用いる収集されたプロセスデータ又はその他のモデル・ベース制御ブロックから一つ以上のプロセスモデルを作成することによりMPCブロックを開発する次のフェーズを実施することを決定する。オペレーターは、この手順の前に、またはその一環として、ノイズ(好ましくは平均値がゼロ(zero-mean)で均等に分布されるランダムノイズ)を該収集プロセスデータに添加し、このデータから更にロバスト(頑強)なプロセスモデル生成が可能になるようにこのデータを前処理する工程である図2のブロック125を開始してもよい。オペレーターは、図4に示されるボタン122を選択することにより、(図4のスクリーン表示118の領域120に示しうる)収集されたデータにこのノイズを添加してもよい。この時に、オペレーターは、添加ノイズの振幅について所望のものを選択しうる。一般的に、プロセスデータの正規化範囲(即ち収集されたプロセスデータの振幅の範囲)の約0.2パーセント〜0.5パーセントの最大振幅を有するランダムで均等に分布され平均値がゼロのノイズを使うことは、ロバスト・プロセスモデル作成ルーチンを提供する上で効果的であることが明らかになっている。より好ましくは、プロセスデータの範囲の約0.4パーセントの最大振幅を有する平均値がゼロで均等に分布されるノイズを使うと特に効果的であることも明らかになっている。但しそれ以外にも、ランダムでないノイズや、正規分布(ガウス分布)など上記以外のノイズ分布、そしてデータ範囲の0.2パーセント以下または0.5パーセント以上といった上記以外の振幅など、異なるタイプのノイズも使用しうる。
【0046】
さらに、所望の場合は、ノイズの絶対値(magnitude)または振幅を、例えばプロセスの反転に使用される段階信号の絶対値(magnitude)、テストに応じたプロセスデータの変更などのプロセスのテストにかかる他の因子に基づき自動的に選択することができる。したがって、一般的に、ノイズの振幅は、収集されたプロセスデータ又はプロセス入力信号の関数として自動的に設定されうる。単なる一実施例として述べると、ノイズの振幅は、例えば、収集されたプロセスデータの範囲、収集されたプロセスデータの平均値または収集されたプロセスデータの標準偏差などの、もしくは、収集されたプロセスデータを生成するために用いられる入力プロセス反転信号の絶対値(magnitude)の因数(factor)のようなプロセス入力信号の関数などの、収集されたプロセスデータの統計的尺度の関数として決定されうる。特定の一実施例においては、プロセスデータがテストサイクル中に2%ずつ変化する場合のノイズの絶対値(magnitude)は0.2%でありうる一方、プロセスに入力される段階テスト信号の絶対値(magnitude)が可能範囲の5%である場合の該ノイズの絶対値(magnitude)は0.5%でありうる。もちろん、テストで用いられる他の因子にノイズ絶対値(magnitude)を関連づけるために他の(10パーセント以外の)乗数を用いることができる。さらにまた、当然のこととして理解されるように、複数のプロセスモデルを決定する時、又はプロセスへの複数入力から且つ又は複数のプロセス出力からプロセスモデルを決定する時、収集プロセスデータに添加されるノイズの振幅やタイプが各収集プロセス出力データの組ごとに異なりうる。したがって、ノイズ振幅は、各々異なるプロセス反転信号ごと、且つ又は異なるプロセス出力に関する各収集データの組ごとに異なって設定されうる。
【0047】
図2のブロック125によりノイズがプロセスデータに添加された後、このデータはヒストリアン12に格納されてもよいし、モデル作成ルーチン44(図1)に直接供給されてもよい。特に図2のブロック126ではユーザは、データ・ヒストリアン12から人為的にノイズを含むようしてある収集データにアクセスし、人為的にノイズを含むように成された収集データからプロセスモデルを作成するためにあらゆる周知のプロセスモデル生成ルーチンを実行するプロセス・モデリングルーチン44を実行しうる。(ここにおいて用いられる「人為的にノイズを含むように成されたデータ」という表現は、ノイズが何らかの形態で意図的に添加されたデータを示すために用いられている。) 一般的に、オペレーターは、図4の画面表示装置で「制御を生成」のボタン123を選択することによりこのフェーズを開始しうる。
【0048】
所望の場合は、プロセス・モデリングルーチン44が収集データのデータ・スクリーニング処理を実行してもよい。このデータ・スクリーニング処理では、データが不良または不適切な状態の機能ブロックにより生成されたのか、データが限界値にあるのか、機能ブロックまたは他の要素が不適切なモードである時にデータが生成されたのか、または、それ以外の何らかの異常または望ましくないプロセス条件の下にデータが生成されたのかを判断するために、異常値およびその他の明らかに誤ったデータとみなされるものに関して収集データをチェックしてもよいし、また収集データに関連する状態および制限値のような該収集データに関連するその他の値をチェックしてもよい。例えば、Fieldbus通信プロトコルでは、機能ブロックにより生成されたデータはデータ・ヒストリアン12中のデータと共に格納することができ該データをスクリーニングするために用いることができる状態、限界およびモード標示を含むこともできる。所望の場合は、データ・スクリーニング・ルーチンは、図4のデータ表示領域120上で収集されたデータをオペレーターに表示し、オペレーターが、例えば、プロセス条件についての該オペレーターの知識に基づいて該データをハイライトするかもしくはその他の方法で特定することにより、スクリーニングすべきまたは削除すべきデータに識別表示(マーク付け)できるようにしてもよい。この方法により、プロセス58がオフライン状態の時、プロセス58が正しく制御されなかった時、プロセス58の修理中、プロセス58内のセンサーまたは他の装置が故障している或いは交換中である時などに、MPCブロック56により収集されたデータを、プロセスモデルを作成するために用いるデータから選択または削除しうる。もちろん、図2のブロック125の前またはその一環としてこのデータ・スクリーニング段階を行ってもよく、したがって、収集されたプロセスデータにランダムノイズを添加する工程と共に又はその一環として行ってもよい。
【0049】
図4に示されるように、MPC入出力を含む動向が、動向グラフとして表示領域120に表示されうる。該グラフは、入出力の値に基づいて自動的に目盛設定することができる。また、表示されているグラフの一部分の時間枠は好ましくは指定された応答時間の2倍である。スライダバー127を用いることにより、例えば過去2日といった以前の時間帯のいずれかにさかのぼる値を示すために時間ウィンドウが変更されるようにしてもよい。工場の運転において有用なデータを収集できるようにするために、自動テスト機能を利用してもよい。「テスト開始」のボタン121を選択することにより、MPCブロックにより操作されるプロセス入力は、指定された応答時間にわたって擬似ランダム系列中の指定された段階サイズで変更(上方移動)される。また、自動テストの開始・終了を識別表示(マーキング付け)するために、「テスト開始」のボタン121が選択された時点でデータ表示画面上の開始・終了仕切りバーが自動的に設定されるようにしてもよく、また、MPCブロック56が、出力信号の擬似ランダム系列を励起波形としてプロセス58へ供給することにより被操作出力の制御を行うようにしてもよい。
【0050】
該領域120の時間バーまたはデータウィンドウを使用してもまた、プロセスモデルを開発するのに使用するデータを選択しうる。オペレーターは、仕切りバーのうちの1つを選択し、それをプロセスモデル同定のために用意された時間枠を変更するために、それを所望の開始または終了時間にドラッグしてもよい。開始バーと終了バー間の時間の一部が通常の工場稼動時間と異なる場合、ユーザまたはオペレーターは、この部分の時間を指定して、プロセスモデルを同定するプロセス中に無視されるデータ値を選択できる。それに応じて、該選択された領域の背景色を濃い目にして表示したり、その他の何らかの様態で指定したりしてもよい。また、該選択された領域はプロセスモデルを作成する時、自動的に除外される。
【0051】
データをスクリーニングし、それにランダムノイズを添加した後に、プロセス・モデリングルーチン44は選択されたデータからプロセスモデルを作成する。上記されるように、プロセス・モデリングルーチン44はあらゆる所望の又は周知の方法でのプロセス・モデリング分析を行って収集且つスクリーニングされたデータからプロセスモデルを開発し、この開発されたプロセスモデルは、例えば数学アルゴリズム又は一連の応答曲線などのあらゆる形態を呈しうる。
【0052】
プロセス・モデリングルーチン44がプロセスモデルを決定する際に問題を有する場合、その問題の標示を例えば図4のユーザ表示画面の状態領域に反映するようにしてもよい。ここで示しうる問題としては、プロセスモデルを同定または作成するのに十分なサンプルがないことが挙げられる。該問題をオペレーターに通知するために、エラーメッセージ(例えば、「定義されるコンフィギュレーションについては、最低XXX個のサンプルが必要です。データ・ファイルにはサンプルがXXX個だけしか含まれていません」など)を生成してもよい。ここで検出されうるその他の問題としては、十分な励起がプロセス入力に生じないといった事態がある。もしそのような問題が生じた場合は、この旨を示すと同時に例えばTagX、TagYなどの信号タグ名を識別するメッセージ、および励起量に関する最低変更可能量をオペレーターに提供できるようにしてもよい。
【0053】
所望の場合、および正常なモデルの同定を妨げた諸条件に応じて、ユーザは、プロセスのモデリングが行なわれる時間枠を変更、または、プロセス・モデリングルーチン44で用いられるデータが有効となるようにプロセス入力を変更しうる。同定された該プロセスモデルは、後で必要なときにアクセスできるように所望のあらゆるデータベースに自動的に保存されてもよい。より経験を積んだユーザは、同定されたプロセスモデルを検討調査したり編集したりしてもよい。図4に示される画面上の「詳細設定」のボタン124を選択することにより、ユーザは、選択されたモデルおよび現行のMPC機能ブロックコンフィギュレーションからMPCコントローラを生成するか、または、特定のモデルを編集し結果として得られたモデルをMPC制御論理作成のために用いられる新規モデルとして保存するかを選択できる。制御生成オプションを選択すると、ユーザには、編集しているMPCモジュールにMPCコントローラとして以前保存されたモデルを選択することができるダイアログが表示される。編集オプションを選択すると、当該のMPCモジュールのために開発されたモデルの一覧がユーザに表示される。モデルを選択した後、ユーザに表示される画面はプロセス段階応答の概要を表示する画面またはその他の画面へと移り、以下に説明されるように、新規または変更モジュールを作成するためにプロセス段階応答の編集を行えるようになっている。
【0054】
プロセスのいくつかの時点において、第一のMPCブロック56内のジェネリック論理102がモデル予測制御を行なう際に必要とするパラメータ(MPCブロック56内の変数に格納される)を作成するために論理パラメータ作成ルーチン46を実行しうる。これらの制御パラメータ(例えば、MPC論理用のマトリックスまたは他のMPC係数、同調パラメータ、ニューラルネットワーク用のニューラルネットワーク・パラメータ、マルチ変数ファジー論理用の拡大係数、またはその他の所望のパラメータ)は、通常、生成されたプロセスモデルに基づいて決定される。該論理パラメータ作成ルーチン46が、プロセスモデルからパラメータを作成するためのあらゆる所望の又は周知の処理を行ってもよい。通常、このプロセスはマトリックス形式にてプロセスモデルを反転することを伴う。しかし、その他所望の論理パラメータ作成ルーチンを用いることも可能である。プロセスのデータからプロセスモデルを作成し、該プロセスモデルからMPCまたは他の制御論理パラメータを生成することに関する特質については当技術分野で周知のことであるため、ここにおいてはその手順処理の説明を省略する。ちなみに、オペレーターは、MPCブロック56用に制御論理パラメータを作成する際にいくつかの入力を導入しえる。実際に、MPCコントローラを作成するために通常用いられる特定の変数の値を指定するようオペレーターに求めるか、もしくは該指定作業を行う機能を提供するようにしてもよい。例えば、オペレーターは次のものを指定しうる:即ち、
・MPCブロックへの各制限付き入力に対する設定点および限界、
・制御変更がなされる時間枠(即ち、設定点軌道フィルタおよびこのフィルタに関連する時間定数)、
・MPC出力またはプロセス出力の最大又は最小動作(制限速度)、
・統合的な(integrated)様態で応答する制御定数が存在するようにするかどうか、
・MPC最適化因数・変数・または同調パラメータ、
・MPC制御ブロックの限界(範囲)(即ち、いくつの前方段階、所望の状態に達成するまでの制御に必要な事前計算がどれだけ行われるか)、
・各MPCブロック56の入出力ごとの工学単位の範囲、
・制約のうちの1つが破られたときに緩和可能な操作量目標がどれか又は実現不可能となるものはどれか、
・MPCブロック入出力各々の内容且つ又は名称、
・あらゆる設定可能な最適化変数の値、
・MPCブロックの積極性(aggressiveness)またはロバスト性に関する変数の値、などである。
【0055】
所望の場合は、制御論理生成ルーチン46は、これらの変数または設定のうちのいくつかまたはすべてに対してデフォルト値を格納し、MPC論理を作成するためにこれらのデフォルト値を用いてもよい。但し、オペレーターまたは他のユーザはユーザ表示画面14を介してこれらの設定を変更することができる
【0056】
いかなる場合も、MPC論理パラメータ作成ルーチン46はこの情報およびその他MPC係数のようなMPC(または他の)制御論理パラメータを作成するのに必要となりうる情報も用いて実行される。スクリーン表示118上の「制御生成」ボタン123は、プロセスモデルと制御論理パラメータの作成に成功したかどうか示しうる。
【0057】
MPC制御論理パラメータが作成された後、図2のステップ128で、MPC制御論理パラメータ又は係数をプロセス・シミュレーション・ブロックを用いてテストしうる。このシミュレーション・ブロックは一般的に、プロセスのために作成されたプロセスモデルから開発されてもよく、また、特許文献1に記載されるように、作成されたMPC制御論理がプロセスの通常動作範囲内で要求を満たしえる操作を行えるかどうかをテストするためにテスト環境のMPCブロックに接続することができる。MPC論理が満足できるものでない場合は別のMPC制御論理を開発するために、ステップ54、99、125、126および128のうちのどれか又はすべてを繰り返しうる。しかし、MPC論理が満足できるものである場合は、MPC制御論理パラメータおよびプロセスモデルをステップ130でMPCブロック56へとダウンロードし、プロセス58の制御に使用できるようにパラメータ記憶装置103およびプロセスモデル記憶装置104に格納してもよい。このように、MPC制御論理が必要とするパラメータが、MPCブロック56に提供され、且つMPCブロック56内に含まれる。そして、MPC制御論理102に従ってプロセス内の制御を操作するかまたは実際に行なうことをMPCブロック56に指令することができる。もちろん、所望の場合は、実際のMPC論理102とそれに必要とされるパラメータを、ワークステーション13で作成し、MPCブロック16にダウンロードすることができる。なおまた、所望の場合は、作成されたMPC制御ブロックまたはモデルを、シミュレーション環境の一部で使用できるように、ブロックまたはステップ135(図2)でワークステーションまたはその他のコンピュータ機器に供給してもよい。
【0058】
MPCブロック56を含むMPCモジュールまたはループは、一旦コントローラ11によりダウンロードされ実行された後、制御ルーチン内の他のブロックや要素と同じ方法で報告機能を実行しうる。これは、上記されるように、該ブロックを含む制御モジュールおよびMPCブロック56がプロセス制御システム10内の他の制御ブロックと同じプログラミング・パラダイムを用いて設計されているためである。一実施形態において、MPCブロックまたはモジュールはそれに関連するグラフィカルな表示(ビュー)を備えうる。これらの表示はMPC制御モジュール内のブロックに関連したデータに対して予約され、定義済みの又は指定された様態において、例えばワークステーション13の一つ以上の表示部14のうちの1つを介してこのデータをユーザまたはオペレーターに表示することができる。
【0059】
ここにおいては、収集されたプロセスデータにノイズを添加してプロセスモデルを収集されたプロセスデータから作成する方法は、プロセス工場のシステム・コンフィギュレーション設定中に該プロセス工場のコントローラにダウンロードされるMPC制御ブロックの作成と共に実施される場合を参照して説明されているが、収集されたプロセスデータからプロセスモデルを作成する前に該データにノイズを添加するという概念は、その他のあらゆる情況または環境において所望のあらゆるタイプのプロセスモデルを対象に実施することができることにも注目すべきである。したがって、この機能は、MPC制御アプリケーションを対象としたプロセスモデルの作成や、ニューラルネットワーク・モデリング且つ又は制御用途、または収集されたプロセスデータから所定のプロセスのプロセスモデルを作成する必要があるその他多くの場合(状況)に用いることができる。なおまた、収集されたプロセスデータからプロセスモデルを作成する前に該データにノイズを添加するという特徴は、単独入力‐単独出力、または単独入力‐マルチ出力、またはマルチ入力‐マルチ出力、またはマルチ入力‐単独出力の制御またはモデリングの場合(状況)またはその他モデリング予測用途のような制御以外の用途に用いられてもよい。同様に、ノイズが添加されるプロセスデータはここにおいて記載される以外のあらゆる様態を含むあらゆる様態をプロセスから収集しえる。また同様に、ノイズで前処理を施した収集プロセスデータから開発された実際のモデルは、有限インパルス応答(FIR)モデル、または(本明細書稿においてより詳細に説明されている)外部入力付き自己回帰(ARX)モデルなどのパラメトリックモデルでありえる一方、その他のタイプのプロセスモデルも前記タイプのモデルの代わりに又はそれに加えてこのデータから作成されうる。
【0060】
したがって、プロセスデータまたはテストデータからプロセスモデルを作成する一般的なロバストな方法150が図5のように示される。該方法150は全般的にブロック152で一組のプロセス・テストデータを得てブロック154でプロセス・テストデータのデータ正規化を行なうことに関する。もちろん、プロセス・テストデータは所望のあらゆるプロセス反転技法または波形を用いてあらゆる様態にて得てもよい。更に、あらゆる周知のデータ正規化技法をテストデータについて実施してもよい。ブロック156では、例えば、異常値を除去する、または、プロセスの異常動作中に又はその他標準プロセスの動作を反映しないプロセスにおける何らかの障害が存在する状態で得られた可能性のあるデータの部分を削除または除外するために、正規化されたプロセス・テストデータを前処理またはスクリーニングしうる。次に、ブロック158では、平均値がゼロのランダムノイズなどのノイズは前処理された正規形データに添加される。上に示すように、正規化範囲の約0.2〜0.5パーセントで平均値がゼロのランダムノイズが正規化および前処理されたテストデータに添加されてもよいが、代わりに他のノイズ絶対値(magnitude)のものを用いてもよい。その後、ブロック160では、ブロック158により生成されたノイズを含むプロセス・テストデータを使用して、あらゆる周知又は所望のモデル生成技法にて一つ以上のプロセスモデルを該データから生成する。
【0061】
正規化されたプロセス・テストデータを前処理またはスクリーニングした後に正規化されたプロセス・テストデータにノイズを添加しえることが図5に示されているが、例えば異常値またはその他のユーザもしくは何らかの統計法により定義される不良データを取り除くためにプロセス・テストデータを正規化したり、或いは該プロセス・テストデータの前処理やスクリーニングを行うことが全ての場合において必要というわけではない。さらにまた、図5ではプロセス・テストデータ生成後にノイズを該データに添加されているが、プロセス・テストデータの作成に使用した信号波形にノイズを添加し、それによって収集されたプロセス・テストデータにノイズを添加しうることが明らかになっている。この場合、ノイズを含まないプロセス反転信号または信号波形が、プロセスモデルを生成する目的でそのデータを評価する際に当該の収集された(したがってノイズを含む)プロセス・テストデータを生成するために使用されたと仮定される。
【0062】
プロセス・テストデータにノイズを添加する技法によると、ノイズを含むデータに平均値がゼロのランダムノイズを添加することにより実際にデータ中のノイズレベルが添加ノイズ量以上に上昇するため、該技法は実際に元々ノイズを含むプロセス・テストデータの存在下においてロバストに(頑強に)プロセスモデルを見つける際に有効的であることも明らかになっている。特に、収集時に既にテストデータに含まれるノイズと添加ノイズは関連していないので、添加ノイズによりテストデータ中のノイズレベルが実際に添加ノイズレベル以上に増大するようなことはない。それどころか実際には、ノイズを含むデータおよびノイズを含まないデータの両方に添加すると(例えば同一のプロセスを対象に複数のプロセスモデルを開発する場合など)、プロセス内の様々な供給源から収集されたデータ内のノイズ量がノイズの添加により均等化され、それによってより良質でより相関性に優れたプロセスモデルを該プロセスに提供できるのである。
【0063】
また、プロセス・テストデータにノイズを添加する技法は一般的に、FIRモデルなどのノンパラメトリックモデルを決定する時よりもARXモデルなどのパラメトリックモデルを決定する際により良好に機能するということも明らかになっている。一般的に、ノンパラメトリックモデルは最良な定義(表現、description)の検索に無限次元パラメータのベクトルを必要とする間、パラメトリックモデルは最良な定義(表現、description)の検索に有限次元パラメータのベクトルを使用する。パラメトリック・タイプのモデルとノンパラメトリック・タイプのモデルとの間の大きな相違は、パラメトリックモデルはノンパラメトリックモデルよりもはるかにコンパクトで、同じ動的挙動を定義(表現、describe)するのにより少数のパラメータを必要とする点である。文字どおり、ARX、ARMAX、Box-Jenkins法および出力エラーモデル(OEモデル)などの方式はパラメトリックモデルと呼ばれる一方、FIRはノンパラメトリックモデルと呼ばれる。「ノンパラメトリック」という用語は、当該のモデルにはパラメータが全く存在しないという意味ではなく、むしろ、パラメータの数および性質は柔軟性(flexible)を伴い、それによってトランケーション(切り落とし)の度合いが決定されるという意味で使われる。例えば、FIRモデルでは、モデルを定義するために適用される走査数によりモデルのダイナミック・レンジが確立される。また、ノンパラメトリックモデルは時折「分布フリー(分布によらない方法)」ともいわれる。
【0064】
周知の如く、一般的にFIRモデルはプロセスの不感時間の正確な(良い)予測値を生成しうる一方、下位数のパラメトリックモデルは概してプロセスモデルで使用されるプロセスの不感時間について正確な(良い)又は有効な予測値を生成することができない。結果として、ARXモデルなどのパラメトリックモデルを決定する方法として非常に有用なものが図6のフローチャート170により示される。具体的には、ブロック172では、該当するプロセスのプロセス・テストデータが最初に決定される。ブロック174では、このプロセス・テストデータは異常値、不良データなどを取り除くために正規化またはスクリーニングされうる。その後、ブロック175および176では、該プロセス・テストデータからプロセスの不感時間の予測値が決定される。一実施例において、ブロック175が最初にプロセス・テストデータからFIRプロセスモデルなどのノンパラメトリックモデルを生成し、その後ブロック176がそのノンパラメトリック・プロセスモデルからプロセスの不感時間を決定する。一般的に、プロセスの不感時間の予測値は、モデリングされたFIRプロセス応答の出力がゼロに正規化されたしきい値を越えるまでの時間として確立されうる。しかしながら、収集されたプロセスデータからFIRまたは他のノンパラメトリックモデルを生成することによりプロセスの不感時間の概算を行いうる一方、ブロック175および176を、その他のプロセス不感時間を決定する周知又は所望の方法(プロセスモデルを生成しないものも含む)と置き換えてもよい。
【0065】
その後、ブロック178では、所望の振幅を有する平均値がゼロのランダムノイズをプロセス・テストデータに添加しうる。ブロック180では、決定されたプロセス不感時間を考慮してプロセス・テスト入力信号の時間(タイミング)を調整(shift)し、それによって人為的にノイズを含むように処理された収集プロセスデータからプロセスの不感時間を取り除いてもよい。もちろん、ブロック178と180における動作の順序は重要でなく、反転または同時に実行してもよい。ブロック182では、あらゆる周知の様態でパラメトリック・プロセスモデルのパラメータの値を決定することにより、人為的にノイズを含むようになされ調整(shift)さたプロセスデータからパラメトリックのプロセスモデルを生成するためにパラメトリックモデル生成ルーチンを使用しうる。もちろん、決定されたプロセスの不感時間に基づいたプロセス入力データの調整(shifting)は、パラメータ化されたプロセスモデルを決定する工程中に生じえ、したがって、プロセスモデルを決定する際に実施される計算にとって不可欠な要素となりうる。
【0066】
一般に、収集されたプロセスデータにノイズを添加するプロセスは、プロセスデータの標準偏差を増加させ、そして基本的にパラメトリックモデル作成ルーチンが未処理(ノイズを含まない)データでは一組のモデル・パラメータに収束できない場合に、該ルーチンがノイズを含むデータを用いて一組のモデル・パラメータに収束できるようにする。さらにまた、プロセスデータへノイズの添加により、未処理データから決定されたと推定されるモデル・パラメータ同様又はそれに類似する且つプロセスを予測(概算)する一組のモデル・パラメータにパラメトリックモデル作成ルーチンが収束できる状態(実際にパラメトリックモデル作成ソフトウェアが未処理データを用いて収束できないような多くの場合において収束できる状態)にデータを調整することができると思われる。
【0067】
プロセスモデルを生成するために用いられるプロセスのロバスト性を測定できる、より具体的にはモデル・パラメータ収束の向上を測定できるプロセスモデル検証用の基本技術がいくつか存在する。上記に説明されるように、信頼区間はノイズに大きく関係しているため、若干のレベルのノイズをテストデータ上に重畳することにより(データの標準偏差と密接に関係する)信頼区間を拡張できるということが明らかになっている。上記のように、この技法により、以前はモデル・パラメータ収束を提供できなかったデータからパラメトリックモデルを達成することが可能になる。結果として、モデル開発技法のロバスト性が著しく向上する。
【0068】
要求を満たしうるプロセスモデルの開発はモデル予測制御(MPC)技術の中核をなす。様々なタイプのモデルがMPCと共に用いられている一方、FIRおよびARXモデルが工業用途においては恐らく最も一般的に用いられていると言える。Zhu, Y.、Arrieta, R.、Butoyi, F.、及びCortes, F.著「Parametric Versus Nonparametric Models in MPC Process Identification(MPCプロセス同定におけるパラメトリックモデル対ノンパラメトリックモデル)」(『Hydrocarbon Processing(炭化水素処理)』、2000年2月)には、モデルのタイプおよびその特長に関する評論が記載されている。上記に示したように、モデルを評価する上での第一の判断基準の1つとして、周波数または時間ドメインにおいて行われる計算で信頼区間を使用することが挙げられる。なお、この計測には範囲の狭い信頼レベルが望ましい。しかしながら、もう一つのモデル同定特徴、即ちロバスト性はそれほど明確に定義されていないが、一般的に言って、モデルの同定における問題は結果として最適化における問題(最小自乗法や最尤法、或いはこれらの技法の変形により解決される)をもたらす。周知の方法のうち多くのものが信頼できる公称モデルおよびそれに伴う許容不確実性を提供できるが、これらの方法は異なるアプローチを有するため、それぞれにおけるモデル同定処理のロバスト性を公正に比較することが困難である。しかしながら、要約すると、ロバスト(頑強)な同定法は、ロバスト制御設計の要求に応じて、モデルの構造上のエラーを許容し(大目に見て)モデルと不確実性推計の両方を提供するものである。
【0069】
多くの論理モデリング技法がある存在する中、エンジニアリング・ソフトウェアで用いられ且つ複雑な工業用プロセスの同定を行なうために採用されるモデル同定技法は一般に使い易さに重点をおいて設計されているため、通常の研究/学術ソフトウェアよりもモデリング技法やモデリング用方程式の順序を選択する際の選択肢が少ない。したがって、プロセス動特性が想定モデルよりもかなり複雑な場合、同定の対象となる想定モデルについては、モデル・パラメータの不確実性区間を広げるべきである。上記されるように、信頼区間により定義されるモデルの不確実性は、データ中のランダムノイズレベルにより確立されるか、またはこれと関係する。したがって、許容範囲内パラメータ値を包含するのに十分な広域を有する不確実性範囲を生成するのに十分なレベルに該ノイズレベルが達していない(これは、かなりの非線形性を伴いカスケード化(縦続接続)MPCまたは模擬プロセスでプロセスを同定する時、およびランダムノイズレベルが非常に低いか全く存在しない時に頻繁にありえる状態である)多くの場合において、同定手順が許容できるモデル・パラメータに収束しないことがある。
【0070】
したがって、「ロバスト(頑強)な同定」という用語はここにおいて、モデル・パラメータ収束に関しては不十分かつ信頼性の低いデータから想定されるモデルの複雑性を対象とするプロセスモデルを得るための信頼できる様態・方法を提供するための手順・処理を包含して表すために用いられている。ここにおいて示されるように、信頼区間分析を使用したテスト結果により、ランダムノイズを添加すると、同定されたモデルの信頼区間を拡大することにより同定のロバスト性を向上させることが証明される。
【0071】
ここで、より明確するために、信頼度(レベル)の概念を以下により詳細にわたり説明する。具体的には、段階応答モデリングにより明示的なプロセス出力の予測が可能となるため、DMC(ディジタル・マルチチャネル)アプリケーションに有効であることが証明されている段階応答モデリングは最も一般的なMPC用モデル表現形式である。将来予測はMPCコントローラへの入力として予想エラーベクトルを演算するために用いられる。
【0072】
実際の段階応答モデル形式は周知のものである。単独入力‐単独出力プロセスについて、ディファレンシャルFIRモデルは次のとおりである:
【0073】
【数1】
【0074】
当式において、pは予測限界(horizon)、hは同定モデル係数である。通常、インパルス応答は、単純な1次系+不感時間プロセスの動特性を表現するために係数を30〜120を必要とする。しかしながら、予測範囲全体にわたり、且つ120もの係数(特にマルチ入力‐マルチ出力の場合)について段階応答を同定すると過剰適合が生じる原因となり、著しいパラメータ不確実性(共通するFIR識別子問題)が発生する。ARXモデルの係数の数はFIRモデルよりもかなり少ない。該ARXモデルは次のように示すことができる:
【0075】
【数2】
【0076】
当式において、AおよびVはARXモデルの自動回帰および移動平均次数であり、dは不感時間、ai, biはモデル係数である。4の次数(order)は、大半の実用化に際する要求を満たすことが認められている。図6を参照して上記されているように、短いFIR範囲(horizon)を用いることにより、不感時間が特定され、ARXモデルの決定に用いられることができる。マルチ入力‐マルチ出力プロセスについては、各入力(相加作用)から各出力へ重層法が適用される。最後に、単位段階が入力の1つに適用され、その入力の階段応答を得るために同定されたARXモデルが用いられる。
【0077】
【0078】
【数3】
【0079】
【0080】
【0081】
【数4】
を伴って正規分布に(信頼度で)漸近的に収束することが証明されている。
【0082】
【0083】
【数5】
【0084】
【0085】
しかしながら、式(5)を適用するには、エラーセットを求めるためにまずプロセスモデルの計算を行うことが必要である。あるいは、分散行列Pθを、データ行列:
【0086】
【数6】
【0087】
の特異値分解(SVD)から直接定義することもできる。行列U, S, V はSVDによる積である。また、
【0088】
【数7】
【0089】
ここで、VjiはV行列の要素、wiは対角行列Sの要素、Mは行列Sの次元である。
【0090】
モデル・パラメータの標準偏差は次のように定義される:
【0091】
【数8】
【0092】
この測度は、上記のエラー確率分布よりも簡単に利用できる様式でモデルの品質情報を示す。モデル・パラメータの標準偏差により、あらかじめ定義された確率によるパラメータ値の範囲が確立される。例えば、95%の信頼領域は、真性パラメータ値が95%の確率で該領域にあることを意味する。エラー分布が正規分布であると想定した場合、同定されたパラメータ値付近の2σ(aj)の範囲は95%の信頼区間を定義し、3σの範囲が99%の信頼区間を提供する、など以下同様である。
【0093】
モデル・パラメータからと同じような方法で、これらのパラメータ標準偏差σ(aj)から階段応答を生成することが可能である。信頼領域は予測範囲(horizon)一帯で得られ、それにより、ゲインおよび不感時間などの応答パラメータの範囲を提供する。該95%の信頼区間の境界は標準偏差の2倍で定義され、階段応答を演算した後それをもとの階段応答に正と負方向の両方に重畳することによりにより比較されうる。99%の信頼区間については、標準偏差の3倍の値が信頼区間の上限・下限を定義するために用いられる。
【0094】
SVDを適用して模擬データからMatlab(登録商標)により開発された階段応答の信頼区間の一実施例が図7に示されている。同定された階段応答204に関する95%および99%の信頼領域(それぞれ曲線200と202とで図示)が描かれている。当然、該領域はより確率が高くなるにつれて大きくなり、また逆に確率は領域が大きくなるにつれて高くなる。MPCモデルの場合は、95パーセントの信頼区間があれば十分と考えられる。この情報の解釈は、階段応答パラメータの範囲を確立する際に有益である。例えば、図7の応答については、ゲインは95%の信頼度を持つ1.4〜2.0の範囲を有し、また99%の信頼度で1.25〜2.2の範囲を有する。この情報は、ロバスト(頑強)なコントローラ生成用パラメータの推測に使用される。プロセスモデルにおける各階段応答ごとに利用できる信頼区間を持っていると、モデル出力中のエラーを検出できるだけではなく、予測誤差の最大原因となりえる特定の階段応答を識別することも可能になる。
【0095】
信頼係数を定義する様態を説明するために、図8には信頼区間に定義される複数の生成モデルの検証特質を示す。上記の説明及び特に式(6)〜(9)から明らかなように、信頼区間はモデル開発に用いられるデータのノイズレベルに依存する。しかしながら、適切なモデル方程式の次数を選択して信頼区間内のモデル・パラメータを得ることが必要である。この階段は、同定するのは簡単であるが、(特に複雑なプロセス動特性伴うプロセス制御状況においては必ずしも容易に達成できる作業であるとは限らない。基本的に、モデル方程式のタイプと次数を選択する作業は通常、対象プロセスについてかなり高度な専門知識が必要とされ、概して一般の産業ユーザが対応できるレベルを超える内容のものである。必要なモデル次数より高位のモデル方程式を選択すると有用なモデルを提供しえるが、そうすると自動的にプログラムの実行時間が(分単位もしくは時間単位で)必要以上に延長される可能性がある。その一方、多重レベル制御システムは普通、一般的なユーザが想像するよりも高位数の方程式を必要とする。しかしながら、著しい非線形性を持つプロセスについては、非線形プロセスに対する完全な線形モデルなど存在しないので、高位数のモデル次数を選択するとプロセス同定に悪影響を及ぼしえる。データに定義されるような狭い信頼区間を有する高位数モデルを前提としても、モデル・パラメータは狭い範囲には収束しないため、それが何らかのモデルの生成につながるとは全く限らない。このタイプの非線形性を持つプロセスは、より広範囲の信頼区間を持つ下位数線形モデルを用いることにより現実的にモデル化できる。この選択は完全に常識の技術論理、即ち、プロセスが非線形の場合、動的次元を増やすよりもむしろ、プロセスのゲインはより広範囲において変化すると仮定するほうがよいということに基づいている。したがって、実用化の目的で、特に非線形性を有するプロセスにおいては、次数の高位なモデルよりも、それ相応の信頼区間を有するものの方が有益であるという結論に達する。多くの場合では、データのノイズレベルが適切であるためこの状態は自動的に満たされる。しかしながら、上記のように、多数のまたは大半の状況においてモデルの収束を保証するため、テストデータの収集および前処理後(つまり、信頼区間を拡大するために平均値を正規化して取り除いた後)に、ランダムノイズをプロセス出力データに添加することができる。
【0096】
プロセスデータにランダムノイズを添加することの効果は、模擬テストにおいて非常にはっきりと示されており、データに0.25パーセント振幅のノイズを添加することによりノイズを含まないデータではモデルを達成できなかったような場合にも優れたモデルを開発できることが実証されている。例えば、図8は、95パーセントの信頼区間214と共に平均値がゼロで最大振幅が0.25パーセントのノイズ をプロセスデータに添加した後のARXモデル212およびFIRモデル210間のほぼ完全な一致を示す。図9は、平均値がゼロで最大振幅が0.25パーセントのノイズをノイズ無しサンプル919個のうちの120個のサンプルのみに添加して得られた結果を示しており、FIRモデル210と完全に一致してはいないが、ここでもまたARXモデル212の収束性が改善されている。最大振幅が0.1パーセントのノイズ をノイズ無しサンプルのすべてに添加した場合も、同様の結果が得られ、ARXモデルの収束性が改善した。
【0097】
ここに記載されるロバスト(頑強)なモデル生成の概念を確認するにあたり、一般的に不感時間予測値のエラーに対する感度がノイズ振幅とともに低下することが発見された。以下、ノイズ添加の作用を示す特定のテストをいくつか説明する。具体的に、これらのテスト、ゲイン=1、DT=2、T1=T2=20(DTは不感時間、T1とT2はパラメトリックモデルの1次および2次系時間定数)で2次系プロセスとして定義される単一ループプロセスを使用した。これらのテストでは、240の定常状態Tssへの時間がモデル同定中に用いられた。該テストに使用したデータは9:21〜9:52の間(即ち、図10のデータの31分間)の選択領域220に示される。データにノイズを添加しなかった場合、ARXモデル同定処理により2次系時間定数はもたらされず、算定(決定)されたゲインは小さすぎ、不感時間は長すぎた。FIRモデル決定処理によりFIRモデルが決定されたが、FIRモデルの不感時間が正確な値ではないゼロとなっていた。これらの問題を解決する試みとして、手動でパラメータの数を増加させ、より多くのプロセスデータを追加し、プロセス反転入力の段階サイズを増大させる先行技術による技法が試みられたが、概してモデル同定における著しい改善は見られなかった。
【0098】
しかしながら、プロセス反転テストの後にプロセスデータに人為的ノイズを添加することで、モデル同定での著しい改善が認められた。実際に0.3%、0.4%および0.5%(最大振幅)の均等に分布した平均値がゼロのランダムノイズをデータに添加した結果を、FIRモデル230とARXモデル232モデルの両方について図11〜13に示す。これらの図からも明らかなように、0.4%の尺度の最大ノイズ振幅が、最も高いFIRとARXモデルの一致度を示しているので、この場合に最も適しているように思われる。
【0099】
さらにまた、収集されたデータの代わりにプロセス入力にノイズを添加できることもプロセス反転テストにより判定された。具体的には、プロセス・テストを実施する上でプロセスを反転するために用いられた信号発生器の出力にノイズを添加してテストサイクルを実行した時に、パラメトリックモデル同定における著しい改善が判定された。図14は、最大振幅0.4パーセント且つ均等に分布され平均値がゼロのランダムノイズを添加した所望のプロセス反転信号240と、このノイズを含むテスト信号から得られた収集プロセス出力データ242とを示す。図15は、結果として得られるノイズを含むプロセス反転信号を用いて収集プロセスデータに基づいたFIRモデル性能244とARXモデル性能246を示す。
【0100】
同様に、最大振幅0.4パーセント且つ均等に分布され平均値がゼロのランダムノイズを、既に真のノイズ0.4%を含むプロセスデータに添加することにより、モデル同定に関してはほとんど同一の結果がもたらされると判定された。さらにまた、残りのデータにノイズを添加しても引き続き適切なモデルを生成できる場合には、かなりの量のプロセスデータをモデル生成における用途(使用)から除外できることも概して判定された。具体的には、ARXモデル生成ルーチンはどこでデータが不足しているかに関係なく期待通りに実行され、一方でFIRモデル生成ルーチンは当初正常に機能しなかったが、それでもデータの不足がいくつか存在する状態においてモデルを生成することができた。図16の上側のグラフ(折れ線図)は、このテストで使用された完全なテストデータのセット250を示し、図16の下側のグラフは結果的に得られたFIRモデルのモデル性能(252)とARXモデルのモデル性能(254)を示す。ちなみに、FIRモデル252は、このモデルを生成するために必要とされる演算を削減するために、走査約60回分のみ演算した。図17〜20は、各図17〜20の左側の折れ線図中の除外領域260に示されるテストデータを除外した時のFIRおよびARXモデル性能(めいめい252と254)に対する影響を示す。これらの場合の各々において、当該の各図左側に図示されているプロセス出力テストデータに最大振幅0.4%の均等に分布した平均値がゼロのランダムノイズを添加した。上に述べたように、FIRモデル252は(特に複数の離散的データセット領域からデータを除外した場合に)当初正常な動作を行えなかったが、テストからかなりの量のデータを除外してプロセスモデルを開発することができる。
【0101】
多変量プロセスについても同じようなテストが実施され、全体的に同じ結論に達した。即ち、
・プロセス・テストデータに平均値がゼロのランダムノイズを添加することによってより良いモデル同定性能が得られた;
・不感時間予測値におけるエラーに対する感度はノイズ振幅とともに低下した;
・プロセス・ゲイン予測値は概して良好であった(一般的にARXモデル生成よりもFIRモデル生成の方が優れたゲイン予測値を生成する);および
・かなりの量のプロセスデータ(データセットの中間にあるデータも含む)をテストから除外でき、除外後も引き続きプロセスモデルを作成できる(ARXモデル生成の方がFIRモデル生成よりもデータの不足に対する許容範囲が広い)、などである。
【0102】
さらにまた、テストデータにノイズを添加する技法では、開発されたFIRモデルの著しい向上をもたらせず、また添加ノイズ量によっては該モデルの悪化をもたらすこともあったが、モデルの生成に用いるデータセットが厳しく制限されるまではそれによりFIRモデルの精度の著しい低下がもたらされることはなかった、ということをここに述べておく。しかしながら、テストデータへのランダムノイズ添加により、ARXモデル決定ルーチンが収束して完全なモデル・パラメータのセットを決定する能力が著しく向上(増大)し、よって、該プロセスモデル作成ルーチンをよりロバスト(頑強)にすることが可能になることも判明した。
【0103】
このように、上記されているように、信頼区間は大きくノイズに関係する。したがって、テストデータ上にわずかなレベルのランダムノイズを重畳することにより容易に信頼区間を拡大できる。観測した結果、信頼区間の拡大によりモデル・パラメータ収束を向上させるための技法、および以前にはモデル・パラメータの収束を提供できなかったデータから信頼区間の拡大によりモデルを達成できる技法を見出した。これによりプロセスモデル開発のロバスト性が著しく向上した。
【0104】
ここで明らかなように、本明細書に記載されるMPCまたはアドバンスト制御論理生成ルーチンおよび方法は、ユーザがMPC制御ブロックやニューラルネットワーク・モデリング又は制御ブロックなどのアドバンスト制御ブロックを該ブロックがどのように生成されるかに関する多くの専門知識を持たなくとも生成できるようにし、且つ、オペレーターがアドバンスト制御を行うためにプロセスの再プログラミングを多数行うことなく、また、一般的に適切なプロセスモデルを決定するためにプロセス・テストの設定を変更する必要なく、アドバンスト制御ブロックを生成し使用できるようにする。
【0105】
本明細書においてアドバンスト制御ブロック、プロセス・シミュレーション・ブロック、そして関連する生成およびテスト・ルーチンはFieldbusおよび標準の4〜20 ma装置と共に使用する状態で説明されているが、もちろん、その他のプロセス制御通信プロトコルまたはプログラミング環境も用いて実施してもよく、また、その他のタイプの装置、機能ブロックまたはコントローラと共に使用してもよい。また、本明細書において用いられる「機能ブロック」という表現は、FieldbusプロトコルまたはDeltaV(商標)コントローラ・プロトコルが機能ブロックと見なすものに限定されず、むしろ、何らかのプロセス制御機能を実施するために使用できるあらゆるタイプの制御システム且つ又は通信プロトコルに関連するその他あらゆるタイプのブロック、プログラム、ハードウェア、ファームウェアなどを含んで用いられている表現である、ということをここに述べておく。また、機能ブロックは通常、オブジェクト指向のプログラミング環境内のオブジェクト(操作対象)の形態をとるが、必ずしもそうである必要はない。
【0106】
また、本明細書においては、アドバンスト制御ブロック、プロセス・シミュレーション・ブロック、そして関連する生成およびテスト・ルーチンをソフトウェア中で実行することが好ましい実施形態と説明されているが、ハードウェアやファームウェアなどにおいて実施してもよく、また、プロセス制御システムに関連するその他のプロセッサにより実行するようにしてもよい。したがって、所望の場合、ここにおいて記載されるルーチン40を、標準汎用CPUにおいて、または例えばASICなどの特別設計ハードウェアまたはファームウェア上で実施されるようにしてもよい。ソフトウェアで実施する場合、該ソフトウェアは、あらゆるコンピュータ可読メモリ(例えば、磁気ディスク、レーザーディスク、光ディスク、又はその他の記憶媒体、コンピュータ又はプロセッサなどのRAMまたはROM、などに格納しえる。同様に、あらゆる周知の又は所望の配信方法(例えば、コンピュータ可読ディスクやその他の可搬型コンピュータ記憶装置機構など)を介して、又は例えば電話線やインターネットなどの通信チャンネル上で変調されることにより、ユーザまたはプロセス制御システムに該ソフトウェアを提供しうる(これは可搬型記憶媒体を介して該ソフトウェアを提供するのと同じ又は類似の意味を持つと見なされる)。
【0107】
このように、本発明は、本明細書において特定の実施形態により説明されているが、それは単なる実施例として挙げられているに過ぎず、本発明を限定するものではない。また、本発明の精神と範囲から逸脱することなく開示された実施形態に対して変更、追加または削除が加えられてもよいことは、通常の技術を有する当業者には明らかなはずである。
【図面の簡単な説明】
【0108】
【図1】本明細書に記載されるロバスト・プロセスモデル生成技法を用いてアドバンスト制御ブロックが作成できるプロセス制御システムのブロック/概略図である。
【図2】図1のプロセス制御システム内のアドバンスト制御ブロックの動作および作成を図示するフロー図である。
【図3】プロセスを制御するためにプロセス制御ルーチン内で接続するモデル予測制御ブロックのブロック図である。
【図4】MPC制御ルーチン作成工程においてユーザに提示しえる画面表示例の図であり、これによりユーザは、収集されたプロセスデータから1つ以上のプロセスモデルを作成する前に収集されたプロセスデータにノイズを添加することができる。
【図5】ランダムノイズの添加によりプロセスから収集された一組のテストデータをもとにプロセスモデルを生成する第1のロバストモデル同定方法のフローチャートである。
【図6】ランダムノイズの添加によりプロセスから収集された一組のテストデータをもとにパラメトリック・プロセスモデルを生成する第2のロバストモデル同定方法のフローチャートである。
【図7】本明細書に記載されるロバストモデル同定技法を用いて作成されたノンパラメトリックモデルおよびパラメトリックモデルの結果を示す信頼区間グラフを示す図である。
【図8】本明細書に記載されるロバストモデル同定技法を用いて作成されたノンパラメトリックモデルおよびパラメトリックモデルの結果を示す信頼区間グラフを示す図である。
【図9】本明細書に記載されるロバストモデル同定技法を用いて作成されたノンパラメトリックモデルおよびパラメトリックモデルの結果を示す信頼区間グラフを示す図である。
【図10】FIRモデルおよびARXはモデルについて、ノイズを添加したプロセスデータを用いるプロセスモデル生成技法の性能実績をテストデータとともに示した図である。
【図11】FIRモデルおよびARXはモデルについて、ノイズを添加したプロセスデータを用いるプロセスモデル生成技法の性能実績を、また別のテストデータとともに示した図である。
【図12】FIRモデルおよびARXはモデルについて、ノイズを添加したプロセスデータを用いるプロセスモデル生成技法の性能実績を、また別のテストデータとともに示した図である。
【図13】FIRモデルおよびARXはモデルについて、ノイズを添加したプロセスデータを用いるプロセスモデル生成技法の性能実績を、また別のテストデータとともに示した図である。
【図14】FIRモデルおよびARXはモデルについて、ノイズを添加したプロセスデータを用いるプロセスモデル生成技法の性能実績を、また別のテストデータとともに示した図である。
【図15】FIRモデルおよびARXはモデルについて、ノイズを添加したプロセスデータを用いるプロセスモデル生成技法の性能実績を、また別のテストデータとともに示した図である。
【図16】FIRモデルおよびARXはモデルについて、ノイズを添加したプロセスデータを用いるプロセスモデル生成技法の性能実績を、また別のテストデータとともに示した図である。
【図17】FIRモデルおよびARXはモデルについて、ノイズを添加したプロセスデータを用いるプロセスモデル生成技法の性能実績を、また別のテストデータとともに示した図である。
【図18】FIRモデルおよびARXはモデルについて、ノイズを添加したプロセスデータを用いるプロセスモデル生成技法の性能実績を、また別のテストデータとともに示した図である。
【図19】FIRモデルおよびARXはモデルについて、ノイズを添加したプロセスデータを用いるプロセスモデル生成技法の性能実績を、また別のテストデータとともに示した図である。
【図20】FIRモデルおよびARXはモデルについて、ノイズを添加したプロセスデータを用いるプロセスモデル生成技法の性能実績を、また別のテストデータとともに示した図である。
【特許請求の範囲】
【請求項1】
プロセスの動作を示すプロセスデータをプロセスから収集することと、
調整されたプロセスデータを生成するためにプロセスデータにノイズを添加することと、
調整されたプロセスデータからプロセスモデルを決定することと、
を含む、プロセスのプロセスモデルを生成する方法。
【請求項2】
プロセスデータの収集は、周知のプロセス反転信号を使用してプロセスを反転させ、プロセス反転信号に対するプロセス応答を示すプロセスデータを収集することを含むことを特徴とする請求項1に記載される方法。
【請求項3】
プロセスデータへのノイズの添加には、プロセス反転信号に対するプロセス応答を示すプロセス出力信号にノイズを添加することが含まれることを特徴とする請求項2に記載される方法。
【請求項4】
プロセスデータへのノイズの添加には、プロセス反転信号を使用してプロセスを反転する前にプロセス反転信号にノイズを添加し、それによって収集プロセスデータとして収集されるデータにノイズを添加することが含まれることを特徴とする請求項2に記載される方法。
【請求項5】
プロセスモデルの決定がパラメトリック・プロセスモデルの一つ以上のパラメータを決定することを含むことを特徴とする請求項1に記載される方法。
【請求項6】
プロセスモデルの決定が外部入力付き自己回帰プロセスモデルの一つ以上のパラメータを決定することを含むことを特徴とする請求項5に記載される方法。
【請求項7】
プロセスモデルの決定がノンパラメトリック・プロセスモデルを決定することを含むことを特徴とする請求項1に記載される方法。
【請求項8】
プロセスモデルの決定が有限インパルス応答プロセスモデルを決定することを含むことを特徴とする請求項7に記載される方法。
【請求項9】
調整されたプロセスデータを生成するために行うプロセスデータへのノイズの添加が、プロセスデータにランダムノイズを添加することを含むことを特徴とする請求項1に記載される方法。
【請求項10】
プロセスデータへのランダムノイズの添加がプロセスデータに平均値がゼロのノイズを添加することを含むことを特徴とする請求項9に記載される方法。
【請求項11】
プロセスデータへのランダムノイズの添加が、収集されたプロセスデータの範囲の0.2〜0.5パーセントの最大振幅を有する、均等に分布されたランダムノイズを添加することを含むことを特徴とする請求項10に記載される方法。
【請求項12】
プロセスデータへのランダムノイズの添加が、収集されたプロセスデータの範囲の0.4パーセントの最大振幅を有する、均等に分布されたランダムノイズを添加することを含むことを特徴とする請求項10に記載される方法。
【請求項13】
調整されたプロセスデータからのプロセスモデルの決定が、収集されたプロセスデータからプロセスのプロセス不感時間の予測値を計算し、前記不感時間および前記調整されたプロセスデータを使用してプロセスモデルを決定することを含むことを特徴とする請求項1に記載される方法。
【請求項14】
プロセス不感時間の予測値計算が、収集されたプロセスデータから更なるプロセスモデルを生成し、前記更なるプロセスモデルからプロセス不感時間の予測値を決定することを含むことを特徴とする請求項13に記載される方法。
【請求項15】
前記更なるプロセスモデルの生成が有限インパルス応答モデルを生成することを含むことを特徴とする請求項14に記載される方法。
【請求項16】
調整されたプロセスデータからプロセスモデルを生成する前に、収集されたプロセスデータまたは調整されたプロセスデータのスクリーニングを行うことをさらに含む、請求項1に記載される方法。
【請求項17】
プロセスデータへのノイズの添加が、収集されたプロセスデータの関数としてノイズの振幅を決定することを含むことを特徴とする請求項1に記載される方法。
【請求項18】
ノイズ振幅の決定が、収集されたプロセスデータ範囲の関数、収集されたプロセスデータの平均値、または収集されたプロセスデータの標準偏差として、ノイズの振幅を決定することを含むことを特徴とする請求項17に記載される方法。
【請求項19】
プロセスデータへのノイズの添加が、プロセスの動作を示すプロセスデータを生成するために使用されるプロセス入力信号の関数としてノイズ振幅を決定することを含むことを特徴とする請求項1に記載される方法。
【請求項20】
一つ以上のプロセッサおよびコンピュータ可読メモリを含む、プロセス環境にてプロセスモデルをプロセスから生成するためのモデル生成システムであって、
コンピュータ可読メモリに格納され、プロセスの少なくとも一部分のプロセス動作を示すプロセスデータをプロセスから収集するために、一つ以上のプロセッサの少なくとも1つにおいて実行されるよう構成される第1のルーチンと、
コンピュータ可読メモリに格納され、調整されたプロセスデータを生成するためにノイズをプロセスデータに添加するために、一つ以上のプロセッサの少なくとも1つにおいて実行されるよう構成される第2のルーチンと、
コンピュータ可読メモリに格納され、調整されたプロセスデータからプロセスモデルを決定するために、一つ以上のプロセッサの少なくとも1つにおいて実行されるよう構成されるモデル生成ルーチンと、を備える、
プロセスモデルをプロセスから生成するためのモデル生成システム。
【請求項21】
モデル生成ルーチンが、調整されたプロセスデータから一つ以上のパラメトリックモデル・パラメータを決定することによりパラメトリックモデルを生成するパラメトリックモデル生成ルーチンであることを特徴とする請求項20に記載のモデル生成システム。
【請求項22】
モデル生成ルーチンが外部入力付き自己回帰プロセスモデルの生成ルーチンであることを特徴とする請求項21に記載のモデル生成システム。
【請求項23】
モデル生成ルーチンが、プロセスの不感時間の予測値を計算するプロセス・パラメータ・ルーチンと、調整されたプロセスデータとプロセス不感時間の予測値から一つ以上のパラメトリックモデル・パラメータを決定するモデル・パラメータ推定ルーチンと、を含むことを特徴とする請求項21に記載のモデル生成システム。
【請求項24】
プロセス・パラメータ・ルーチンが、プロセスのノンパラメトリックモデルを生成し、前記ノンパラメトリックモデルからプロセス不感時間を決定することを特徴とする請求項23に記載のモデル生成システム。
【請求項25】
プロセス・パラメータ・ルーチンがノンパラメトリックモデルとして有限インパルス応答モデルを生成することを特徴とする請求項24に記載のモデル生成システム。
【請求項26】
コンピュータ可読メモリに格納され、プロセスモデルを使用してプロセス・コントローラを生成するために一つ以上のプロセッサの少なくとも1つにおいて実行されるよう構成される第3のルーチンを更に含む請求項20に記載のモデル生成システム。
【請求項27】
プロセス・コントローラがモデル予測制御に基づくコントローラであることを特徴とする請求項26に記載のモデル生成システム。
【請求項28】
第1のルーチンが、プロセスを反転するために周知のプロセス反転信号を生成する信号発生器と、プロセス反転信号に対するプロセス応答を示すプロセスデータを収集する収集ルーチンとを含むことを特徴とする請求項20に記載のモデル生成システム。
【請求項29】
第2のルーチンが、プロセス応答を示す収集されたプロセスデータが調整されたプロセスデータとなるように、プロセス反転信号にノイズを添加することによりプロセスデータにノイズを添加するよう構成されることを特徴とする請求項28に記載のモデル生成システム。
【請求項30】
第2のルーチンが、プロセス反転信号に平均値がゼロのランダムノイズを添加するよう構成されることを特徴とする請求項29に記載のモデル生成システム。
【請求項31】
第2のルーチンが、プロセス反転信号に添加される平均値がゼロのランダムノイズに関する絶対値をユーザが選択出来るよう構成されることを特徴とする請求項30に記載のモデル生成システム。
【請求項32】
第2のルーチンが、プロセスデータに平均値がゼロのランダムノイズを添加するよう構成されることを特徴とする請求項20に記載のモデル生成システム。
【請求項33】
前記第2のルーチンが、プロセスデータに添加される平均値がゼロのランダムノイズに関する絶対値をユーザが選択出来るよう構成されることを特徴とする請求項32に記載のモデル生成システム。
【請求項34】
第2のルーチンが、プロセスデータ範囲の0.2〜0.5パーセントの最大振幅を有し均等に分布するランダムノイズを添加するよう構成されることを特徴とする請求項32に記載のモデル生成システム。
【請求項35】
前記第2のルーチンが、プロセスデータ範囲の0.4パーセントの最大振幅を有し均等に分布するランダムノイズを添加するよう構成されることを特徴とする請求項32に記載のモデル生成システム。
【請求項36】
第2のルーチンが、プロセスデータの関数としてプロセスデータに添加されるノイズの振幅を決定することを特徴とする請求項20に記載のモデル生成システム。
【請求項37】
第2のルーチンが、プロセスデータの範囲の関数または平均値または標準偏差としてノイズの振幅を決定することを特徴とする請求項36に記載のモデル生成システム。
【請求項38】
第2のルーチンが、プロセスデータを生成するために使用されるプロセス入力信号の関数としてプロセスデータに添加されるノイズの振幅を決定することを特徴とする請求項20に記載のモデル生成システム。
【請求項39】
プロセスの少なくとも一部分を制御又はシミュレートするための、制御ブロックまたはシミュレーション・ブロックを生成する方法であって、
プロセスが変化するように該プロセスに周知のプロセス反転信号を送ることと、
プロセス反転信号に対する応答を示すプロセスデータをプロセスから収集することと、
調整されたプロセスデータを生成するためにプロセスデータにノイズを添加することと、
調整されたプロセスデータからプロセスモデルを決定することと、
決定されたプロセスモデルを使用して制御ブロックまたはシミュレーション・ブロックを生成すること、を含む
制御ブロックまたはシミュレーション・ブロックを生成する方法。
【請求項40】
プロセスデータへのノイズの添加は、プロセス反転信号をプロセスに送る前にノイズをプロセス反転信号に添加することにより、収集されたプロセスデータにノイズを添加することを含むことを特徴とする請求項39に記載の方法。
【請求項41】
プロセスモデルの決定が、パラメトリック・プロセスモデルの一つ以上のパラメータを決定することを含むことを特徴とする請求項39に記載の方法。
【請求項42】
プロセスモデルの決定が、外部入力付き自己回帰プロセスモデルの一つ以上のパラメータを決定することを含むことを特徴とする請求項41に記載の方法。
【請求項43】
プロセスモデルの決定がノンパラメトリック・プロセスモデルを決定することを含むことを特徴とする請求項39に記載の方法。
【請求項44】
調整されたプロセスデータを生成するためにノイズをプロセスデータに添加することは、プロセスデータにランダムノイズを添加することを含むことを特徴とする請求項39に記載の方法。
【請求項45】
プロセスデータへのランダムノイズの添加が、プロセスデータに平均値がゼロのノイズを添加することを含むことを特徴とする請求項44に記載の方法。
【請求項46】
プロセスデータへのノイズの添加が、プロセスデータ範囲の0.2〜0.5パーセントの最大振幅を有し均等に分布するランダムノイズを添加することを含むことを特徴とする請求項45に記載の方法。
【請求項47】
プロセスデータへのノイズの添加が、プロセスデータ範囲の0.4パーセントの最大振幅を有し均等に分布するランダムノイズを添加することを含むことを特徴とする請求項45に記載の方法。
【請求項48】
調整されたプロセスデータからのプロセスモデルの決定が、プロセスデータから該プロセスのプロセス不感時間の予測値を推定し、前記不感時間および前記調整されたプロセスデータを使用してプロセスモデルを決定することを含むことを特徴とする請求項39に記載の方法。
【請求項49】
プロセス不感時間の推定が、更なるプロセスモデルをプロセスデータから生成し、前記更なるプロセスモデルからプロセス不感時間の予測値を決定することを含むことを特徴とする請求項48に記載の方法。
【請求項50】
調整されたプロセスデータからプロセスモデルを生成する前にプロセスデータまたは調整されたプロセスデータをスクリーニングすることを更に含む、請求項39に記載の方法。
【請求項51】
決定されたプロセスモデルを使用して制御ブロックまたはシミュレーション・ブロックを生成することは、モデル予測制御ブロックを生成することを含むことを特徴とする請求項39に記載の方法。
【請求項52】
モデル予測制御ブロックの生成が、マルチ入力‐マルチ出力コントローラを生成することを含むことを特徴とする請求項51に記載の方法。
【請求項53】
決定されたプロセスモデルを使用して制御ブロックまたはシミュレーション・ブロックを生成することは、単独入力‐単独出力制御ブロックを生成することを含むことを特徴とする請求項39に記載の方法。
【請求項54】
調整されたプロセスデータからのプロセスモデルの決定が、単独入力‐単独出力プロセスモデルを決定することを含むことを特徴とする請求項39に記載の方法。
【請求項55】
調整されたプロセスデータからプロセスモデルを生成する前にプロセスデータまたは調整されたプロセスデータをスクリーニングすることを更に含む、請求項39に記載の方法。
【請求項56】
プロセスデータへのノイズの添加が、プロセスデータの関数としてノイズの振幅を決定することを含むことを特徴とする請求項39に記載の方法。
【請求項57】
ノイズの振幅の決定が、プロセスデータ範囲の関数、プロセスデータの平均値、またはプロセスデータの標準偏差としてノイズの振幅を決定することを含むことを特徴とする請求項56に記載の方法。
【請求項58】
プロセスデータへのノイズの添加が、プロセス反転信号の関数としてノイズの振幅を決定することを含むことを特徴とする請求項39に記載の方法。
【請求項1】
プロセスの動作を示すプロセスデータをプロセスから収集することと、
調整されたプロセスデータを生成するためにプロセスデータにノイズを添加することと、
調整されたプロセスデータからプロセスモデルを決定することと、
を含む、プロセスのプロセスモデルを生成する方法。
【請求項2】
プロセスデータの収集は、周知のプロセス反転信号を使用してプロセスを反転させ、プロセス反転信号に対するプロセス応答を示すプロセスデータを収集することを含むことを特徴とする請求項1に記載される方法。
【請求項3】
プロセスデータへのノイズの添加には、プロセス反転信号に対するプロセス応答を示すプロセス出力信号にノイズを添加することが含まれることを特徴とする請求項2に記載される方法。
【請求項4】
プロセスデータへのノイズの添加には、プロセス反転信号を使用してプロセスを反転する前にプロセス反転信号にノイズを添加し、それによって収集プロセスデータとして収集されるデータにノイズを添加することが含まれることを特徴とする請求項2に記載される方法。
【請求項5】
プロセスモデルの決定がパラメトリック・プロセスモデルの一つ以上のパラメータを決定することを含むことを特徴とする請求項1に記載される方法。
【請求項6】
プロセスモデルの決定が外部入力付き自己回帰プロセスモデルの一つ以上のパラメータを決定することを含むことを特徴とする請求項5に記載される方法。
【請求項7】
プロセスモデルの決定がノンパラメトリック・プロセスモデルを決定することを含むことを特徴とする請求項1に記載される方法。
【請求項8】
プロセスモデルの決定が有限インパルス応答プロセスモデルを決定することを含むことを特徴とする請求項7に記載される方法。
【請求項9】
調整されたプロセスデータを生成するために行うプロセスデータへのノイズの添加が、プロセスデータにランダムノイズを添加することを含むことを特徴とする請求項1に記載される方法。
【請求項10】
プロセスデータへのランダムノイズの添加がプロセスデータに平均値がゼロのノイズを添加することを含むことを特徴とする請求項9に記載される方法。
【請求項11】
プロセスデータへのランダムノイズの添加が、収集されたプロセスデータの範囲の0.2〜0.5パーセントの最大振幅を有する、均等に分布されたランダムノイズを添加することを含むことを特徴とする請求項10に記載される方法。
【請求項12】
プロセスデータへのランダムノイズの添加が、収集されたプロセスデータの範囲の0.4パーセントの最大振幅を有する、均等に分布されたランダムノイズを添加することを含むことを特徴とする請求項10に記載される方法。
【請求項13】
調整されたプロセスデータからのプロセスモデルの決定が、収集されたプロセスデータからプロセスのプロセス不感時間の予測値を計算し、前記不感時間および前記調整されたプロセスデータを使用してプロセスモデルを決定することを含むことを特徴とする請求項1に記載される方法。
【請求項14】
プロセス不感時間の予測値計算が、収集されたプロセスデータから更なるプロセスモデルを生成し、前記更なるプロセスモデルからプロセス不感時間の予測値を決定することを含むことを特徴とする請求項13に記載される方法。
【請求項15】
前記更なるプロセスモデルの生成が有限インパルス応答モデルを生成することを含むことを特徴とする請求項14に記載される方法。
【請求項16】
調整されたプロセスデータからプロセスモデルを生成する前に、収集されたプロセスデータまたは調整されたプロセスデータのスクリーニングを行うことをさらに含む、請求項1に記載される方法。
【請求項17】
プロセスデータへのノイズの添加が、収集されたプロセスデータの関数としてノイズの振幅を決定することを含むことを特徴とする請求項1に記載される方法。
【請求項18】
ノイズ振幅の決定が、収集されたプロセスデータ範囲の関数、収集されたプロセスデータの平均値、または収集されたプロセスデータの標準偏差として、ノイズの振幅を決定することを含むことを特徴とする請求項17に記載される方法。
【請求項19】
プロセスデータへのノイズの添加が、プロセスの動作を示すプロセスデータを生成するために使用されるプロセス入力信号の関数としてノイズ振幅を決定することを含むことを特徴とする請求項1に記載される方法。
【請求項20】
一つ以上のプロセッサおよびコンピュータ可読メモリを含む、プロセス環境にてプロセスモデルをプロセスから生成するためのモデル生成システムであって、
コンピュータ可読メモリに格納され、プロセスの少なくとも一部分のプロセス動作を示すプロセスデータをプロセスから収集するために、一つ以上のプロセッサの少なくとも1つにおいて実行されるよう構成される第1のルーチンと、
コンピュータ可読メモリに格納され、調整されたプロセスデータを生成するためにノイズをプロセスデータに添加するために、一つ以上のプロセッサの少なくとも1つにおいて実行されるよう構成される第2のルーチンと、
コンピュータ可読メモリに格納され、調整されたプロセスデータからプロセスモデルを決定するために、一つ以上のプロセッサの少なくとも1つにおいて実行されるよう構成されるモデル生成ルーチンと、を備える、
プロセスモデルをプロセスから生成するためのモデル生成システム。
【請求項21】
モデル生成ルーチンが、調整されたプロセスデータから一つ以上のパラメトリックモデル・パラメータを決定することによりパラメトリックモデルを生成するパラメトリックモデル生成ルーチンであることを特徴とする請求項20に記載のモデル生成システム。
【請求項22】
モデル生成ルーチンが外部入力付き自己回帰プロセスモデルの生成ルーチンであることを特徴とする請求項21に記載のモデル生成システム。
【請求項23】
モデル生成ルーチンが、プロセスの不感時間の予測値を計算するプロセス・パラメータ・ルーチンと、調整されたプロセスデータとプロセス不感時間の予測値から一つ以上のパラメトリックモデル・パラメータを決定するモデル・パラメータ推定ルーチンと、を含むことを特徴とする請求項21に記載のモデル生成システム。
【請求項24】
プロセス・パラメータ・ルーチンが、プロセスのノンパラメトリックモデルを生成し、前記ノンパラメトリックモデルからプロセス不感時間を決定することを特徴とする請求項23に記載のモデル生成システム。
【請求項25】
プロセス・パラメータ・ルーチンがノンパラメトリックモデルとして有限インパルス応答モデルを生成することを特徴とする請求項24に記載のモデル生成システム。
【請求項26】
コンピュータ可読メモリに格納され、プロセスモデルを使用してプロセス・コントローラを生成するために一つ以上のプロセッサの少なくとも1つにおいて実行されるよう構成される第3のルーチンを更に含む請求項20に記載のモデル生成システム。
【請求項27】
プロセス・コントローラがモデル予測制御に基づくコントローラであることを特徴とする請求項26に記載のモデル生成システム。
【請求項28】
第1のルーチンが、プロセスを反転するために周知のプロセス反転信号を生成する信号発生器と、プロセス反転信号に対するプロセス応答を示すプロセスデータを収集する収集ルーチンとを含むことを特徴とする請求項20に記載のモデル生成システム。
【請求項29】
第2のルーチンが、プロセス応答を示す収集されたプロセスデータが調整されたプロセスデータとなるように、プロセス反転信号にノイズを添加することによりプロセスデータにノイズを添加するよう構成されることを特徴とする請求項28に記載のモデル生成システム。
【請求項30】
第2のルーチンが、プロセス反転信号に平均値がゼロのランダムノイズを添加するよう構成されることを特徴とする請求項29に記載のモデル生成システム。
【請求項31】
第2のルーチンが、プロセス反転信号に添加される平均値がゼロのランダムノイズに関する絶対値をユーザが選択出来るよう構成されることを特徴とする請求項30に記載のモデル生成システム。
【請求項32】
第2のルーチンが、プロセスデータに平均値がゼロのランダムノイズを添加するよう構成されることを特徴とする請求項20に記載のモデル生成システム。
【請求項33】
前記第2のルーチンが、プロセスデータに添加される平均値がゼロのランダムノイズに関する絶対値をユーザが選択出来るよう構成されることを特徴とする請求項32に記載のモデル生成システム。
【請求項34】
第2のルーチンが、プロセスデータ範囲の0.2〜0.5パーセントの最大振幅を有し均等に分布するランダムノイズを添加するよう構成されることを特徴とする請求項32に記載のモデル生成システム。
【請求項35】
前記第2のルーチンが、プロセスデータ範囲の0.4パーセントの最大振幅を有し均等に分布するランダムノイズを添加するよう構成されることを特徴とする請求項32に記載のモデル生成システム。
【請求項36】
第2のルーチンが、プロセスデータの関数としてプロセスデータに添加されるノイズの振幅を決定することを特徴とする請求項20に記載のモデル生成システム。
【請求項37】
第2のルーチンが、プロセスデータの範囲の関数または平均値または標準偏差としてノイズの振幅を決定することを特徴とする請求項36に記載のモデル生成システム。
【請求項38】
第2のルーチンが、プロセスデータを生成するために使用されるプロセス入力信号の関数としてプロセスデータに添加されるノイズの振幅を決定することを特徴とする請求項20に記載のモデル生成システム。
【請求項39】
プロセスの少なくとも一部分を制御又はシミュレートするための、制御ブロックまたはシミュレーション・ブロックを生成する方法であって、
プロセスが変化するように該プロセスに周知のプロセス反転信号を送ることと、
プロセス反転信号に対する応答を示すプロセスデータをプロセスから収集することと、
調整されたプロセスデータを生成するためにプロセスデータにノイズを添加することと、
調整されたプロセスデータからプロセスモデルを決定することと、
決定されたプロセスモデルを使用して制御ブロックまたはシミュレーション・ブロックを生成すること、を含む
制御ブロックまたはシミュレーション・ブロックを生成する方法。
【請求項40】
プロセスデータへのノイズの添加は、プロセス反転信号をプロセスに送る前にノイズをプロセス反転信号に添加することにより、収集されたプロセスデータにノイズを添加することを含むことを特徴とする請求項39に記載の方法。
【請求項41】
プロセスモデルの決定が、パラメトリック・プロセスモデルの一つ以上のパラメータを決定することを含むことを特徴とする請求項39に記載の方法。
【請求項42】
プロセスモデルの決定が、外部入力付き自己回帰プロセスモデルの一つ以上のパラメータを決定することを含むことを特徴とする請求項41に記載の方法。
【請求項43】
プロセスモデルの決定がノンパラメトリック・プロセスモデルを決定することを含むことを特徴とする請求項39に記載の方法。
【請求項44】
調整されたプロセスデータを生成するためにノイズをプロセスデータに添加することは、プロセスデータにランダムノイズを添加することを含むことを特徴とする請求項39に記載の方法。
【請求項45】
プロセスデータへのランダムノイズの添加が、プロセスデータに平均値がゼロのノイズを添加することを含むことを特徴とする請求項44に記載の方法。
【請求項46】
プロセスデータへのノイズの添加が、プロセスデータ範囲の0.2〜0.5パーセントの最大振幅を有し均等に分布するランダムノイズを添加することを含むことを特徴とする請求項45に記載の方法。
【請求項47】
プロセスデータへのノイズの添加が、プロセスデータ範囲の0.4パーセントの最大振幅を有し均等に分布するランダムノイズを添加することを含むことを特徴とする請求項45に記載の方法。
【請求項48】
調整されたプロセスデータからのプロセスモデルの決定が、プロセスデータから該プロセスのプロセス不感時間の予測値を推定し、前記不感時間および前記調整されたプロセスデータを使用してプロセスモデルを決定することを含むことを特徴とする請求項39に記載の方法。
【請求項49】
プロセス不感時間の推定が、更なるプロセスモデルをプロセスデータから生成し、前記更なるプロセスモデルからプロセス不感時間の予測値を決定することを含むことを特徴とする請求項48に記載の方法。
【請求項50】
調整されたプロセスデータからプロセスモデルを生成する前にプロセスデータまたは調整されたプロセスデータをスクリーニングすることを更に含む、請求項39に記載の方法。
【請求項51】
決定されたプロセスモデルを使用して制御ブロックまたはシミュレーション・ブロックを生成することは、モデル予測制御ブロックを生成することを含むことを特徴とする請求項39に記載の方法。
【請求項52】
モデル予測制御ブロックの生成が、マルチ入力‐マルチ出力コントローラを生成することを含むことを特徴とする請求項51に記載の方法。
【請求項53】
決定されたプロセスモデルを使用して制御ブロックまたはシミュレーション・ブロックを生成することは、単独入力‐単独出力制御ブロックを生成することを含むことを特徴とする請求項39に記載の方法。
【請求項54】
調整されたプロセスデータからのプロセスモデルの決定が、単独入力‐単独出力プロセスモデルを決定することを含むことを特徴とする請求項39に記載の方法。
【請求項55】
調整されたプロセスデータからプロセスモデルを生成する前にプロセスデータまたは調整されたプロセスデータをスクリーニングすることを更に含む、請求項39に記載の方法。
【請求項56】
プロセスデータへのノイズの添加が、プロセスデータの関数としてノイズの振幅を決定することを含むことを特徴とする請求項39に記載の方法。
【請求項57】
ノイズの振幅の決定が、プロセスデータ範囲の関数、プロセスデータの平均値、またはプロセスデータの標準偏差としてノイズの振幅を決定することを含むことを特徴とする請求項56に記載の方法。
【請求項58】
プロセスデータへのノイズの添加が、プロセス反転信号の関数としてノイズの振幅を決定することを含むことを特徴とする請求項39に記載の方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【公開番号】特開2007−287153(P2007−287153A)
【公開日】平成19年11月1日(2007.11.1)
【国際特許分類】
【出願番号】特願2007−105571(P2007−105571)
【出願日】平成19年4月13日(2007.4.13)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.レーザーディスク
【出願人】(594120847)フィッシャー−ローズマウント システムズ, インコーポレイテッド (231)
【Fターム(参考)】
【公開日】平成19年11月1日(2007.11.1)
【国際特許分類】
【出願日】平成19年4月13日(2007.4.13)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.レーザーディスク
【出願人】(594120847)フィッシャー−ローズマウント システムズ, インコーポレイテッド (231)
【Fターム(参考)】
[ Back to top ]