(57)【特許請求の範囲】
【請求項１】
プロセスの制御において使用する多入力／多出力論理装置であって、
プロセス出力信号を受信するように構成された複数の入力と、
関連するセットポイントを有する更なる入力と、
前記プロセスを制御するプロセス制御信号を付与するように構成された複数の出力と、
前記更なる入力に前記出力のうちの選択された１つを直接的に接続するフィードバック経路と、
前記複数の入力及び前記更なる入力を使用して前記複数の出力を生成すべく構成され、各複数の入力及び更なる入力は、複数の出力の各々に影響を与え、
前記更なる入力が、関連するセットポイントに達するまで前記選択された出力を調整するように構成された論理ユニットとを備えることを特徴とする多入力／多出力論理装置。
【請求項２】
前記論理ユニットは、モデル予測コントローラであることを特徴とする請求項１記載の多入力／多出力論理装置。
【請求項３】
前記論理ユニットは、ファジィ論理コントローラであることを特徴とする請求項１記載の多入力／多出力論理装置。
【請求項４】
前記セットポイントは、前記選択された出力のための制約限界に関連することを特徴とする請求項１記載の多入力／多出力論理装置。
【請求項５】
前記複数の出力の各々は、関連する制約限界を有し、前記論理ユニットは、更にセットポイント調整ユニットを備え、該セットポイント調整ユニットは、前記選択された出力以外の前記出力のうちの１つが、その出力に関連する制約限界に達するか又は超える場合に、更なる入力に関連するセットポイントを、第１のセットポイント設定から第２のセットポイント設定に調整するように構成されたことを特徴とする請求項１記載の多入力／多出力論理装置。
【請求項６】
前記第１のセットポイント設定は、前記選択された出力の制約限界と等しい値であり、前記第２のセットポイント設定は、前記選択された出力の制約限界に対して緩められた値であることを特徴とする請求項５記載の多入力／多出力論理装置。
【請求項７】
前記セットポイント調整ユニットは更に、前記出力の１つがその出力に関連する制約限界にもはや達しないか又は超えない場合に、前記セットポイントを、前記第２のセットポイント設定から前記第１のセットポイント設定に調整するように構成されたことを特徴とする請求項５記載の多入力／多出力論理装置。
【請求項８】
前記セットポイント調整ユニットは更に、前記セットポイントを、前記第２のセットポイント設定から前記第１のセットポイント設定に段階的に調整するように構成されたことを特徴とする請求項７記載の多入力／多出力論理装置。
【請求項９】
前記複数の出力の各々は、関連する制約限界を有しており、前記論理ユニットは、前記複数の出力の各々の将来の値を予測するように構成された予測ユニットと、前記選択された出力以外の前記出力のうちの何れか１つが、その出力の関連する制約限界に達するか又は超えるかを判定するために、その出力に関連する前記制約限界と前記複数の出力の各々の将来の値とを比較するように構成された比較ユニットとを更に備えることを特徴とする請求項１記載の多入力／多出力論理装置。
【請求項１０】
前記論理ユニットは、前記選択された出力以外の前記出力のうちの１つが、その出力に関連する制約限界に達するか又は超える場合に、前記セットポイントを、第１のセットポイント設定から第２のセットポイント設定に調整するように構成されたセットポイント調整ユニットを更に備え、
前記第１のセットポイント設定は、前記選択された出力の制約限界と等しい値であり、前記第２のセットポイント設定は、前記選択された出力の制約限界に対して緩められた値であることを特徴とする請求項９記載の多入力／多出力論理装置。
【請求項１１】
前記セットポイント調整ユニットは更に、前記選択された出力以外の前記出力のうちの１つが、その出力の関連する制約限界にもはや達しないか又は超えない場合であって、前記セットポイントが前記第２のセットポイント設定である場合に、前記セットポイントを、第２のセットポイント設定に対して緩める方向へ調整し続けるように構成されたことを特徴とする請求項１０記載の多入力／多出力論理装置。
【請求項１２】
前記セットポイント調整ユニットは、前記選択された出力以外の前記出力のうちの１つが、その出力の関連する制約限界にもはや達しないか又は超えない場合に、前記セットポイントを、前記第２のセットポイント設定から前記第１のセットポイント設定に調整すべく更になしてあることを特徴とする請求項１０記載の多入力／多出力論理装置。
【請求項１３】
前記セットポイント調整ユニットは更に、前記セットポイントを、前記第２のセットポイント設定から前記第１のセットポイント設定に段階的に調整するように構成されたことを特徴とする請求項１２記載の多入力／多出力論理装置。
【請求項１４】
前記更なる入力は、第１の更なる入力であり、前記関連するセットポイントは、第１のセットポイントであり、
前記フィードバック経路は、第１のフィードバック経路であり、前記選択された出力は、第１の選択された出力であり、前記多入力／多出力論理装置は更に、第２のセットポイントを有する第２の更なる入力と、第２の選択された出力を前記第２の更なる入力に直接的に接続する第２のフィードバック経路とを更に備え、
前記セットポイント調整ユニットは更に、前記選択された出力以外の前記出力のうちの１つが、その出力の関連する制約限界に達するか又は超える場合に、前記第２のセットポイントを第３のセットポイント設定から第４のセットポイント設定に変更するように構成されており、前記第３のセットポイント設定は、前記第２の選択された出力の制約限界であり、前記第４のセットポイント設定は、前記第２の選択された出力の制約限界に対して緩められることを特徴とする請求項１０記載の多入力／多出力論理装置。
【請求項１５】
前記第１のセットポイント及び前記第２のセットポイントの各々は、優先順位を有し、前記セットポイント調整ユニットは、前記第１のセットポイント及び前記第２のセットポイントの優先レベルに従って、前記第１のセットポイント及び前記第２のセットポイントを調整すべく更になしてあることを特徴とする請求項１４記載の多入力／多出力論理装置。
【請求項１６】
前記セットポイント調整ユニットは更に、前記第１のセットポイント及び前記第２のセットポイントを同時に調整するように構成されたことを特徴とする請求項１４記載の多入力／多出力論理装置。
【請求項１７】
前記フィードバック経路は、増幅器を含むことを特徴とする請求項１記載の多入力／多出力論理装置。
【請求項１８】
前記増幅器は、ユニットゲインを有することを特徴とする請求項１７記載の多入力／多出力論理装置。
【請求項１９】
プロセスの制御において使用する多入力／多出力論理装置であって、
プロセス出力信号を受けるように構成された複数の入力と、
関連するセットポイントを有する更なる入力と、
前記プロセスを制御するプロセス制御信号を与えるように構成された複数の出力と、
前記出力のうちの選択された１つを前記更なる入力に接続するフィードバック経路と、
前記複数の入力及び前記更なる入力を使用して前記複数の出力を生成すべく構成され、各複数の入力及び更なる入力は、複数の出力の各々に影響を与え、前記フィードバック経路を使用して、選択された出力を前記セットポイントと等しくするように制御するように構成された論理ユニットとを備えることを特徴とする多入力／多出力論理装置。
【請求項２０】
前記複数の出力の各々は、関連する制約限界を有し、前記論理ユニットは、前記選択された出力以外の前記出力のうちの１つが、その出力のための前記関連する制約限界に達するか又は超える場合に、前記更なる入力に関連したセットポイントを調整するように構成されたセットポイント調整ユニットを備えることを特徴とする請求項１９記載の多入力／多出力論理装置。
【請求項２１】
前記論理ユニットは、モデル予測コントローラを備えることを特徴とする請求項２０記載の多入力／多出力論理装置。
【請求項２２】
プロセスの制御において使用する多入力／多出力論理装置であって、
プロセス出力信号を受信するように構成された複数の入力と、
関連するセットポイントを有する更なる入力と、
前記プロセスを制御するプロセス制御信号を付与するように構成され、その各々が関連する制約限界を有している複数の出力と、
前記出力のうちの選択された１つを前記更なる入力に接続するフィードバック経路と、
前記複数の入力及び前記更なる入力を使用して前記複数の出力を生成するように構成され、前記選択された出力以外の前記出力のうちの１つが、その出力の関連する制約限界に達するか又は超える場合に、前記更なる入力に関連したセットポイントを変更するように構成されたセットポイント調整ユニットを備える論理ユニットとを備えることを特徴とする多入力／多出力論理装置。
【請求項２３】
プロセス出力信号を受信するように構成された複数の入力と、プロセスを制御するプロセス制御信号を与えるように構成された複数の出力とを有し、
該出力の各々が、関連する制約限界を有する多入力／多出力論理装置を使用してプロセスを制御する方法であって、
前記出力のうちの選択された１つを、前記多入力／多出力論理装置の更なる入力に接続するステップと、
前記更なる入力に関連するセットポイントを、第１のセットポイント設定に設定するステップと、
前記更なる入力が前記第１のセットポイント設定に達するまで、前記選択された出力の１つを調整するステップと、
前記選択された出力の１つ以外の前記複数の出力の各々のための将来の値を演算するステップと、
前記選択された出力の１つ以外の前記複数の出力の各々のために演算された前記将来の値をその出力の関連する制約限界と比較して、前記選択された出力の１つ以外の前記出力のうちの何れか１つが、その出力の関連する制約限界に達するか又は超えるかを判定するステップと、
前記比較して判定するステップが、前記選択された出力の１つ以外の前記出力のうちの１つが、その出力の関連する制約限界に達するか又は超えるだろうと判定すれば、前記セットポイントを、前記第１のセットポイント設定から第２のセットポイント設定に調整するステップとを有することを特徴とする方法。
【請求項２４】
前記第１のセットポイント設定は、前記選択された出力の１つの制約限界と等しく、前記第２のセットポイント設定は、前記選択された出力の１つの制約限界に対して緩められた値と等しいことを特徴とする請求項２３記載の方法。
【請求項２５】
前記比較して判定するステップが、前記出力の１つがその出力のための前記関連する制約限界にもはや達しないか又は超えないと判定すれば、前記セットポイントを、前記第２のセットポイント設定から前記第１のセットポイント設定に調整するステップを更に有することを特徴とする請求項２３記載の方法。
【請求項２６】
前記比較して判定するステップが、前記選択された出力の１つ以外の前記出力のうちの１つが、その出力の関連する制約限界に依然として達するか又は超えると判定したときであって、前記セットポイントが前記第２のセットポイント設定に設定されるときに、前記セットポイントを前記第２のセットポイント設定に対して緩められる方向に更に調整するステップを、更に有することを特徴とする請求項２３記載の方法。
【請求項２７】
モデル予測制御技術を使用して前記複数の入力及び前記更なる入力から前記複数の出力を演算するステップを更に有することを特徴とする請求項２３記載の方法。
【請求項２８】
ファジィ論理制御技術を使用して前記複数の入力及び前記更なる入力からの前記複数の出力を演算するステップを更に有することを特徴とする請求項２３記載の方法。
【請求項２９】
前記更なる入力は、第１の更なる入力であり、前記更なる入力に関連するセットポイントは、第１のセットポイントであり、前記選択された出力の１つは、第１の選択された出力であり、更に、
第２の選択された出力を第２の更なる入力に接続するステップと、
前記第２の更なる入力に関連する第２のセットポイントを、第３のセットポイント設定に設定するステップと、
前記第２の更なる入力が前記第３のセットポイント設定に達するまで、前記第２の選択された出力を調整するステップと、
前記比較するステップが、前記選択された出力以外の前記出力のうちの１つがその出力の１つに関連する制約限界に達するか又は超えると判定すれば、前記第２のセットポイントを、前記第３のセットポイント設定から前記第４のセットポイント設定に調整するステップと、
前記比較するステップが、前記選択された出力以外の前記出力のうちの１つが、その出力の１つに関連する制約限界にもはや達しないか又は超えないと判定すれば、前記第２のセットポイントを、前記第４のセットポイント設定から前記第３のセットポイント設定に調整するステップとを更に有する、請求項２３記載の方法。
【請求項３０】
更に、前記第１のセットポイント及び前記第２のセットポイントの各々に優先レベルを割り当てるステップと、
前記第１のセットポイント及び前記第２のセットポイントに割り当てられた前記優先レベルに従って、前記第１のセットポイント及び前記第２のセットポイントの各々に前記調整を実行するステップとを有することを特徴とする請求項２９記載の方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本願発明は、一般にプロセス制御システムに関し、より詳しくは、プロセス制御システムにおいてモデル予測コントローラの使用を最適化することに関する。
【０００２】
【従来の技術及び発明が解決しようとする課題】
化学プロセス，石油プロセス，又は他のプロセスで使用されるシステムのように、分散型又は拡張型のプロセス制御システムのようなプロセス制御システムは、典型的には、アナログ，ディジタル，又はアナログ／ディジタルを組み合わせたバスを介して、相互に、少なくとも１つのホストワークステーション又はオペレータワークステーションと、且つ一又は複数のフィールドデバイスと、通信可能に結合された一又は複数のプロセスコントローラを備えている。例えば、バルブ，バルブポジショナ，スイッチ，及び送信器（例えば、温度センサ，圧力センサ，及び流量センサ）であり得るフィールドデバイスは、バルブの開閉及びプロセスパラメータの測定のようなプロセス内の機能を実行する。プロセスコントローラは、フィールドデバイスにより測定されたプロセス測定値、及び／又はフィールドデバイスに関する他の情報を示す信号を受信し、この情報を用いて制御ルーチンを実行し、次いでプロセスの動作を制御すべくフィールドデバイスにバスを介して送信される制御信号を生成する。プロセスの現状を見たり、プロセスの動作を修正したりするようなプロセスに対する所望の機能をオペレータに実行させるために、フィールドデバイス及びコントローラからの情報は、典型的には、オペレータワークステーションにより実行される一又は複数のアプリケーションで利用可能である。
【０００３】
過去には、従来のフィールドデバイスは、アナログバス又はアナログ線を介してプロセスコントローラとの間でアナログ（例えば、4 mA〜20 mAの）信号を送受信するのに用いられていた。これらの4 mA〜20 mAの信号は、デバイスにより測定された測定値又はデバイスの動作を制御するために必要なコントローラにより生成された制御信号を示すという点で事実上制限があった。しかしながら、過去１０年位において、マイクロプロセッサ及びメモリを備えるスマートフィールドデバイスは、プロセス制御産業において普及した。プロセス内で一次的な機能を実行することに加えて、スマートフィールドデバイスは、デバイスに関するデータを記憶し、ディジタル又はディジタル及びアナログフォーマットを組み合わせでコントローラ及び／又は他のデバイスと通信し、自己較正，識別，診断等の二次的なタスクを実行する。HART（登録商標）プロトコル，PROFIBUS（登録商標）プロトコル，WORDFIP（登録商標）プロトコル，Device-Net（登録商標）プロトコル，及びCANプロトコルのような多くの標準的且つオープンなスマートデバイスの通信プロトコルは、様々な製造者により製造されたスマートフィールドデバイスを同一のプロセス制御ネットワーク内で一緒に使用することができるように開発されてきた。
【０００４】
さらに、プロセス制御産業内では、プロセス制御機能を非集中化しようとする動きがある。例えば、FOUNDATION（商標）Fieldbus（以下「Fieldbus」）プロトコルとして知られているフィールドバスファンデーションにより広められた全ディジタル，２線式バスプロトコルは、集中化コントローラ内で以前に実行された制御動作を実行すべく、様々なフィールドデバイス内に位置する機能ブロックを使用する。特に、各Fieldbusフィールドデバイスは、一又は複数の機能ブロックを含み且つ実行することが可能であり、この機能ブロックの各々は、（同一のデバイス内又は異なるデバイス内で）他の機能ブロックとの間で入力及び／又は出力動作を行い、プロセスパラメータを測定又は検出したり、比例・積分・微分（PID）制御ルーチンを実行すべくデバイスを制御したり又は制御動作を実行したりするような何らかのプロセス制御動作を実行する。プロセス制御システム内の様々な機能ブロックは、（例えば、バスを介して）相互に通信し、一又は複数のプロセス制御ループを形成するように構成され、その個々の動作は、プロセス中に広がり、従って、非集中化される。
【０００５】
プロセスコントローラは、典型的には、流量制御ループ，温度制御ループ，圧力制御ループ等のような或るプロセスのために規定されるか又は該プロセスに含まれる多くの異なる制御ループの各々のために、異なるアルゴリズム，サブルーチン，又は制御ループ（これらは全て制御ルーチンである）を実行するようにプログラムされる。一般的に言って、このような各制御ループは、アナログ入力（AI）機能ブロックのような一又は複数の入力ブロック，比例・積分・微分（PID）機能ブロック又はファジィ論理制御機能ブロックのような単一出力制御ブロック，及びアナログ出力（AO）機能ブロックのような単一出力ブロックを有する。これらの制御ループは、典型的には、単一入力／単一出力制御を実行する。なぜならば、制御ブロックは、バルブ位置等のような単一のプロセス入力を制御するために使用される単一の出力を生成するからである。しかしながら、場合によっては、多くの独立して動作する単一入力／単一出力制御ループを使用することは、あまり有効ではない。なぜならば、制御されるプロセス変数は、複数のプロセス入力に影響されるからであり、事実、各プロセス入力は、多くのプロセス出力の状態に影響する。これが発生する例としては、例えば、２つの入力ラインにより充填され、単一の出力線ライン（各ラインは異なるバルブにより制御される）により空にされるタンクを有するプロセスが挙げられるが、この場合、タンクの温度，圧力，処理能力は、所望の値になるように又はそれに近似するように制御される。上で示したように、タンクの処理能力，温度，及び圧力の制御は、別個の処理能力制御ループ，別個の温度制御ループ，及び別個の圧力制御ループを使用して実行されてもよい。しかしながら、この状況では、タンク内の温度を制御すべく入力バルブのうちの１つの設定を変更する際の温度制御ループの動作は、タンク内の圧力を増大させ、これにより、例えば、圧力ループに出力バルブを開放させて圧力を下げる。この動作は、次いで処理能力制御ループに入力バルブのうちの１つを閉じさせ、これにより温度に影響し、温度制御ループに何らかの他の動作を行わせる。この例において理解されるように、単一入力／単一出力制御ループにより、プロセス出力（この場合、処理能力，温度，及び圧力）は、安定した状態に達することなく振動する望ましくない挙動をする。
【０００６】
モデル予測制御又は他の種類のアドバンスド制御は、制御プロセス変数が複数のプロセス入力に影響し、各プロセス入力が複数のプロセス出力に影響するこれらの状況において制御を行うのに使用される。一般に、モデル予測制御は、多入力／多出力制御方法であり、この方法においては、多くのプロセス入力の各々を変更したことによる多くのプロセス出力の各々に対する影響が測定され、これらの測定された応答は、次いでプロセスのモデルを生成するのに使用される。プロセスのモデルは、数学的に反転され、次いで、多入力／多出力コントローラとして、プロセス入力になされた変更に基づいてプロセス出力を制御するのに使用される。場合によっては、プロセスモデルは、プロセス入力の各々に対するプロセス出力応答曲線を含み、これらの曲線は、例えば、プロセス入力の各々に送られる一連の擬似ランダムステップ変更に基づいて生成されることが可能である。これらの応答曲線は、知られている方法でプロセスをモデル化するのに使用することができる。モデル予測制御は、当該技術において知られており、従って、その詳細についてはここでは述べない。しかしながら、モデル予測制御は、Qin, S. Joe及びThomas Badgwellによる1996年のAIChE Conferenceの「産業モデル予測制御技術の概要（"An Overview of Industrial Model Predictive Control Technology"）」に記述されている。
【０００７】
モデル予測制御は、プロセスが最適化のために選択された変数を最大化及び／又は最小化すべく制御されてもよく、更に、選択されたプロセス入力変数を最適化するために使用されてもよい。最適化のために選択されるプロセス入力変数は、例えば、プロセスの経済的価値（例えば、プロセス処理能力）の向上に最も大きな影響を及ぼすプロセス入力変数、又はプロセス出力の質の向上に最も大きな影響を及ぼす変数を含むことが可能である。典型的には、プロセス処理能力及び製品価値を最大限にし、原料コストを最小限にすることが望ましい。
【０００８】
最適化の間に、ユーザ又はオペレータは、一般に、最適化されるべきプロセス入力変数を選定し、該プロセス入力変数が最適化された最適プロセス動作ポイントを決定する。勿論、最適プロセス動作ポイントは、更に、所望のプロセス結果が達成されることを可能にするプロセス動作ポイントと一致しなければならない。所望のプロセス結果を達成するために、一又は複数のプロセス出力変数は、セットポイントとも呼ばれる所定のレベル又は設定で維持されなければならない。プロセス出力変数は、１組のプロセス入力変数の適切な調整によってそれらの各々のセットポイントで維持される。残念ながら、最適プロセス制御は、最適プロセス動作ポイントでプロセスを単に動作することよりも複雑である。なぜならば、最適プロセス動作ポイントは、プロセス動作の範囲で典型的に存在するからである。より特定的には、プロセス入力変数の各々は、物理的な制約限界を有する。そして、最適プロセス動作ポイントで動作する間、２以上のプロセス入力変数がこれらに関連する物理的な制約限界に達するか又は超える場合に、次いで、プロセスは、プロセスコントローラがそれらの各々のセットポイントでプロセス出力変数を維持することができないという不適当な状態に入るであろう。しかしながら、上述されるように、最適プロセス動作ポイントは、その物理的な制約限界と典型的に等しいその最大（又は最小）の設定での選定された最適プロセス入力変数を操作することを含んでいる。従って、最適プロセス動作ポイントで動作する間、プロセス入力変数のうちの１つは、その物理的な制約限界に既にあるので、他のプロセス入力変数のうちの１つがその物理的な制約限界に達するか又は超える場合であっても、次いで、プロセスは、コントローラがそれらの各々のセットポイントでプロセス出力変数を維持することが可能でないという不適当な状態に入る。その結果、最適プロセス動作ポイントで動作することに加えて、プロセスの最適化は、更に、プロセス入力変数のモニタを要求し、それらがそれらの制約限界に達するか又は超えるのを防止する処理をする。
【０００９】
一又は複数の制約限界がいつ接近されているかを識別するために、プロセスが動作されている間、従来の最適化制御アルゴリズムはプロセス変数をモニタする。その後、プロセス入力を調整するような予防動作は、接近されている制約限界を違反することを回避するために講じられる。従来の制御システムにおいて、この意志決定が基づくデータは、反応する時間が殆どない実時間のプロセスデータであるので、予防動作が要求されるか否かに関しての意志決定は、より保守的でなければならない。その結果、プロセスは、所望の制約限界又は最適化された制約限界から更に動作されなければならず、それは、プロセスによって達成された最適化の程度を妥協して解決する。さらに、幾つかの例では、予防動作なしであっても制約限界が現実に違反されないので、プロセス変数が制約限界に接近する都度、予防動作は必ずしも必要だとは限らない。しかしながら、従来の制御システムにおいては、実時間のプロセスデータの収集は、接近されている制約限界が現実に違反されるであろうか否かに関して識別の余裕がない。従って、全ての制約限界への接近は、潜在的な違反として扱われなければならず、また、予防動作が講じられなければならない。その結果、予防動作のうちの少なくとも幾つかは、不必要に試みられ、また、不必要になるべき最適化に起因する。
【００１０】
加えて、最適化された制御を提示する既存の制御システムは、その最適化を達成するために個別の最適化制御アルゴリズムを典型的に使用する。個別の最適化制御アルゴリズムの必要性は、全体的な制御スキームの複雑さを増大させ、また、該全体的な制御スキームを達成するために必要とされる制御装置の複雑さを増大させる。
【００１１】
【課題を解決するための手段】
本願発明は、プロセスを制御する多入力／多出力論理コントローラに関し、各コントローラ入力が、プロセス出力信号を受信するように構成され、各コントローラ出力が、プロセス制御デバイスにプロセス制御信号を与えるように構成される。プロセスの最適化制御を可能にするために、コントローラ出力のうちの選択された１つは、関連するセットポイントを有する更なるコントローラ入力に接続され、前記コントローラは、選択されたコントローラ出力をその制約限界で維持するために、前記関連するセットポイントを使用する。
【００１２】
発明の１つの態様によれば、多入力／多出力論理装置は、プロセス出力信号を受信するように構成された複数の入力と、関連するセットポイントを有する更なる入力と、プロセスを制御するためにプロセス制御信号を提供するように構成された複数の出力を有している。前記論理装置は、出力のうちの選択された１つを更なる入力に接続するフィードバック経路と、モデル予測コントローラ又はファジィ論理コントローラのような、複数の入力及び更なる入力を使用して複数の出力を生成すべく構成された論理ユニットとを更に有している。前記論理ユニットは、更なる入力が、選択された出力の制約限界と等しく設定され得る関連するセットポイントに達するまで、選択された出力を調整するように構成されている。
【００１３】
発明の更なる態様によれば、前記複数の出力は、関連する制約限界を有することが可能であり、前記論理装置の論理ユニットは、前記選択された出力以外の前記出力のうちの１つが、その出力のための前記関連する制約限界に達するか又は超える場合に、第１のセットポイントの設定から第２のセットポイントの設定に前記セットポイントを調整するセットポイント調整ユニットを備えることが可能である。第１のセットポイントの設定は、選択された出力の制約限界に対応し、第２のセットポイントの設定は、選択された出力の制約限界に対して緩められた値に対応することが可能である。
【００１４】
発明の更なる態様によれば、セットポイント調整ユニットは、出力の１つがその出力のための前記関連する制約限界にもはや達しないか又は超えない場合に、第２のセットポイントの設定から第１のセットポイントの設定に前記セットポイントを調整するように更に構成されることが可能である。
【００１５】
発明の更に別の態様によれば、前記論理装置は、前記選択された出力以外の前記出力の各々のための将来の値を予測する予測ユニットと、前記選択された出力以外の前記出力のうちの任意の１つがその出力に関連する制約限界に達するか又は超えるかを判定するために、前記複数の出力の各々のための将来の値をその出力に関連する制約限界と比較する比較ユニットとを更に備えることが可能である。
【００１６】
発明の更なる態様によれば、プロセスを制御する方法は、プロセス出力信号を受信するように構成された複数の入力と、複数の出力とを有する多入力／多出力論理装置を使用し、その各々が、前記プロセスを制御するためにプロセス制御信号を提供するように構成された関連する制約限界を有している。当該方法は、前記出力のうちの選択された１つを論理装置の更なる入力に接続するステップと、前記更なる入力に関連するセットポイントを第１のセットポイントの設定に設定するステップと、前記更なる入力が第１のセットポイントの設定に達するまで、前記選択された出力を調整するステップとを有している。当該方法は、前記選択された出力以外の前記複数の出力の各々のための将来の値を演算するステップと、前記選択された出力以外の前記出力のうちの何れか１つがその出力のための前記関連する制約限界に達するか又は超えるかを判定するために、前記出力に関連する制約限界と各出力のために演算された将来の値とを比較するステップとを更に有している。第１のセットポイントの設定から第２のセットポイントの設定にセットポイントを調整するステップは、前記選択された出力以外の前記出力のうちの１つがその出力のための前記関連する制約限界に達するか又は超える場合に実行される。
【００１７】
発明の更に別の態様によれば、上記方法は、前記比較するステップが、前記出力の１つが、もはやその出力のための前記関連する制約限界に達しないか又は超えないと判定した場合に、第２のセットポイントの設定から第１のセットポイントの設定にセットポイントを調整するステップを更に有することが可能である。
【００１８】
【発明の実施の形態】
さて、図１を参照して、ブロック図の形態で表されたプロセス制御システム10は、統合最適化モデル予測コントローラ「IOMPC（Integrated Optimal Model Predictive Controller）」12を備え、該IOMPC 12は、例えば、最適化モデル予測制御を行なうソフトウェアルーチンで具体化され得る最適化制御ロジック14を実行する。IOMPC 12は、プロセス16を制御するように構成された多入力／多出力論理装置として動作する最適化制御ロジック14を実行し、より特定的には、前記プロセス16を所望の方法で応答させ、これにより所望のプロセス結果が達成されるように、例えば、バルブ，ポジショナ等を使用して実施され得る１組のプロセス制御デバイス18，20，及び22を動作する。プロセス16が所望の方法で応答するか否か判定するために、プロセス16は、例えば、温度センサ，レベルセンサを使用して実現され得る１組の測定装置24，26，及び28によりモニタされる。従来のモデル予測制御の観点によれば、プロセス制御デバイス18，20，及び22は、プロセス変数を制御するために使用され、ここでは、それぞれ操作変数MV1，MV2，及びMV3と呼ばれる。なぜならば、それらがIOMPC 12によって調整されるか又は操作されるからである。測定装置24及び26は、ここでは、それぞれCV1及びCV2と呼ばれる１組の制御変数を測定するために使用されてもよい。なぜならば、プロセス制御システム10の目的が、所望のプロセス結果が達成されるように、これらの変数を制御することであるからである。測定装置28は、ここでは、補助変数AVと呼ばれるプロセス変数を測定するために使用されてもよい。なぜならば、前記変数のモニタは、適切なプロセス動作に不可欠であるからであるが、特定の設定でのAVを維持することは、前記所望のプロセス結果を達成するために不可欠ではないからである。より詳細に後述される方法でプロセス16の統合最適化制御を可能にするために、操作変数MV3は、制御信号を制御デバイス22に与えるように構成されることに加えて、フィードバック経路25を介して、最適化制御変数“OCV”と呼ばれるIOMPC 12の入力に更に結合されている。
【００１９】
さて、図２を参照して、IOMPC 12が制御すべく構成されたプロセス16は、化学供給材料がタンク27又は他の適切なコンテナに供給され、所望の温度で維持される単純な化学反応プロセスとして例示目的で記述されている。該タンク27内への供給材料の流れは、フィードフローバルブとして実現されたプロセス制御デバイス18により制御される。フィードフローバルブ18を介した流量は、操作変数MV1として規定される。熱源（図示せず）は、デバイス22を介してタンク27に送られる蒸気を生成し、これは、例えば、供給材料の温度を上昇させる蒸気流量制御バルブ22を使用して実施されてもよい。化学供給材料の温度を更に制御するために、冷却水は、タンク27を囲むスリーブ29に供給される。スリーブ29への水の流れは、水流量制御バルブ20として実現されるプロセス制御デバイス20により制御される。水フローバルブ20を介した水の流量、及び蒸気フローバルブ22を介した蒸気の流量は、それぞれ操作変数MV2及びMV3として示される。水の温度は、IOMPC 12に温度測定値を与える液体温度センサ24として実現される測定装置24を使用して測定される。蒸気の温度は、IOMPC 12に蒸気温度測定値を与える蒸気温度センサ26として実現される測定装置26を使用して測定される。温度センサ24及び26によって測定された温度は、制御変数CV1及びCV2として規定され、従って、例えば、化学供給材料を所望の温度で維持するような所望のプロセス結果が達成されることを保証するために、特定的な所定の温度に制御される。
【００２０】
タンク27内の液体のレベルは、例えば、IOMPC 12にレベル測定結果を提供するレベルセンサ28として実現される測定装置28により測定される。タンク27内の液体のレベルは、タンク27の入れ過ぎを防止するためにモニタされる。より特定的には、化学供給材料が蓄積されるタンク27の容積は制限されており、もし超えれば、例えば、供給材料の浪費及びタンク27近傍の設備への潜在的な損害のような悪影響を有し得るタンクのオーバーフローとなるであろう。レベルセンサ28によって生成されたタンクレベル信号は、適切なプロセス動作を保証するためにモニタされなければならない補助変数AVとして指定される。プロセス16を制御するために、バルブ18，20，及び22を介した流量は、液体及び蒸気センサ24及び26によって測定される化学供給材料の温度が所定の温度範囲内で維持されるような、また、タンク27内の液体のレベルが最大許容値を超えないような方法で調整される。勿論、プロセス16がIOMPC 12の動作を例示する目的のためのみに選択されたことは理解されるべきである。その結果、IOMPC 12は、２つの制御変数及び単一の補助変数を有するプロセス16のようなプロセスの制御に制限されない。実際、IOMPC 12は、任意の数の制御変数又は補助変数を有するプロセスを制御するために代わりに使用されてもよい。
【００２１】
液体及び蒸気相が維持されるべき前記所定の温度は、不連続の温度又は許容可能な温度レベルの範囲を含み得るセットポイントと呼ばれる。制御変数CV1に関連するセットポイントCV1SP、及び制御変数CV2に関連するセットポイントCV2SPは、所望のプロセス結果を達成するために水及び蒸気がそれぞれ維持されるべき温度レベル又は該レベルの範囲を示す。
【００２２】
制御変数CV1及びCV2の各々をそれらのセットポイントに到達させるように操作変数MV1，MV2，及びMV3の各々を調整することに加えて、IOMPC 12の最適化制御ロジック14は、更に、操作変数MV1，MV2，及びMV3の各々がそれらに関連する制約を超えないか又は違反しないことを保証すべく構成されている。操作変数MV1，MV2，及びMV3に関連する制約は、その操作変数のための最大許容値を表す。これらの制約は、プロセス16又は制御システムに損傷を与えることなく超過し得ない、及び／又は、例えば、バルブがここまでしか開くことができないような制御装置の物理的な属性により超過し得ない典型的に物理的な制約である。変数MV1CON，MV2CON，及びMV3CONは、それぞれ操作変数MV1，MV2，及びMV3に関連する制約を指定するために使用され、制約MV1CON，MV2CON，及びMV3CONは、それぞれ操作変数MV1，MV2，及びMV3の最大許容流量（例えば、最大の供給流量，水流量，蒸気流量）と等しく設定される。最大許容流量MV1CON，MV2CON，及びMV3CONは、もし要求されれば、それぞれバルブ18，20，及び22の全開位置に対応することが可能である。加えて、タンクレベルの制約は、AVCONと呼ばれ、最大許容タンクレベルを表す。
【００２３】
一般に、IOMPC 12の最適化制御ロジック14は、選択されたプロセス実行特性が最適化される最適レベルでプロセス16を動作するために構成される。最適レベルでプロセス16を動作すべくIOMPC 12を構成する前に、実行特性（以下「最適化対象」という）は、最適化のために選択される。典型的には、最適化対象は、例えば、生産効率，生産原価，又は生産品質を含んでもよい。
【００２４】
極度に単純化した条件では、プロセス実行特性の最適化は、操作変数（以下最適設定での「最適化操作変数」"OMV"という）のうちの１つを維持することにより達成される。最適化のために選択されるOMVは、選択された操作変数が最大化されるか又は或る場合には最小化される場合に、プロセス実行特性が最適化されるように、プロセス実行特性と最も緊密で直接関係がある操作変数である。好ましくは、OMVに関連するプロセスの動的特性及びゲインは、最適化のために操作変数を選択する場合に更に考慮に入れられる。より特定的には、セットポイントCV1SP及びCV2SPが最適化対象よりもすぐに満足されることを保証するために、OMVと関係するプロセスの動的特性が、他の操作変数MV1及びMV2と関係する動的特性より比較的遅いことが望ましい。OMVが制御変数CV1及びCV2の全てと比較的強い関係を有すること、つまり、OMVへの小さい変更又は調整が制御出力変数に比較的著しい変更又は調整をもたらすように、OMVに関連するプロセスゲインが比較的重要であることが更に望ましい。
【００２５】
例示目的のために、最適化のために選択されたプロセス16の実行特性は、最適化対象が生産効率又はプロセス処理能力を最大限にするようなプロセス16の生産効率である。本例の目的のために、操作変数MV3は、生産効率に最も緊密であり、直接関係がある操作変数であると仮定されるであろう。従って、操作変数MV3は、以下「OMV」という。IOMPC 12の最適化制御ロジック14は、蒸気フローバルブ18を全開位置で維持し、これによって蒸気流量を最大化し、プロセス16の処理能力を最大化することを含むOMV（MV3）を最大化することにより、生産効率を最適化すべく構成される。IOMPC 12の動作を示すために選択された最適化プロセス変数（つまり、蒸気流量）は、増加するセットポイントに関連しており、ここで、最適化プロセス変数は、その最大の設定で維持されるが、IOMPC 12は、増加するセットポイントを有する最適化プロセス変数での動作に制限されない。IOMPC 12は、代わりにプロセスを制御するために使用されてもよく、ここで、最適化制御は、選択されたプロセス変数を最小レベルで維持することにより実行され、その場合には、最適化のために選択された変数は、減少するセットポイントを有するであろう。
【００２６】
従来のモデル予測コントローラは、制御変数を、選定されたセットポイントで維持するように構成されるが、そのようなコントローラは、操作変数を最適設定でモニタ及び制御するようには典型的には構成されない。OMVを最適設定で維持し、これによって最適プロセス制御を達成するために、IOMPC 12は、フィードバック経路25によってOMVに結合されたOCVを含むように構成される。ユニットゲインを有する増幅器23を更に備えるフィードバック経路25は、ユニットゲインによってOMVをOCVに関係させる。OCVは、シャドー制御変数とも呼ばれる。なぜならば、OCVとOMVとの間のユニットゲインの関係が、OCVをOMVに追従又は「シャドー（shadow）」するからである。セットポイントOCVSPは、OCVのために規定され、該セットポイントの値は、エラーのための小さな罰則付きでOMVの制約レベルに設定される。OCVSPを含むセットポイントのうちの何れかが調整される場合、IOMPC 12は、調整されたセットポイントを満足するのに必要なように、操作変数MV1，MV2，及びOMVを調整することによって、調整されたセットポイントに応答する。OCVSPを満足するために、IOMPC 12は、OMVを、それがOMVCONと等しくなるまで調整する。OCVとOMVとの間のユニットゲインの関係により、OMVをこの方法で調整することが、OCVを先例に追従させる。その結果、OCVは、OMVをその最適設定OMVCONで間接的に維持するために使用され得る。OMVとOCVとの間のゲインはユニットゲインであるが、もし最適化制御ロジック14がOCVSPへの調整を行う場合にゲインを補うようにプログラムされているならば、任意のゲインが代わりに使用され得ると理解されるべきである。
【００２７】
さて、図３を参照して、最適化制御ロジック14は、IOMPC 12によって実行されたときには、例えば、１組のソフトウェアプログラムブロックとして実現されてもよく、ブロック30で開始する統合最適化方法を実行する。ブロック30が実行される前にプロセス制御システム10が動作しないように、プロセス16は、シャットダウンモードにあると仮定する。これに代えて、ブロック30が実行される前に、プロセス16の個々の制御ループが、個々のPIDコントローラ（図示せず）のような、１組の個々のローカルの単一ループコントローラに制御されてもよい。図３の最適化方法が実行される前に、IOMPC 12が、例えばOMVがOCVに結合される上述の方法で構成されるであろうこと、及びプロセスのモデルがプロセス16を制御する際の使用のために生成されるであろうことは、更に理解されるべきである。ブロック30は、セットポイントCV1SP及びCV2SPを、プロセスを適切に制御するのに適切なレベルと等しく設定し、また、OCVSPをOMVCONと等しく設定する。次に、ブロック32は、従来のモデル予測コントローラと同一の方法で、制御変数セットポイントCV1SP及びCV2SP、並びに最適化制御変数セットポイントOCVSPを満足するのに必要なMV1，MV2，及びOMVへの調整値を演算する。当業者には理解されるように、従来のモデル予測制御は、プロセスモデル及び現在のプロセス変数情報を使用して将来のプロセス状態を演算し、それから、演算された将来のプロセス状態を使用してプロセス入力変数への調整を行うことを含んでおり、ここで、該調整は、制御変数をそれらの各々のセットポイントに到達させるか又は維持させる。例えば、ブロック32がCV1SP及びCV2SPを満足しようとしている場合、ブロック32は、プロセスモデルを、CV1及びCV2にそれぞれCV1SP及びCV2SPに到達させるMV1及びMV2への調整値を規定するために使用する。
【００２８】
次に、ブロック34は、ブロック32で演算された調整値を使用してMV1，MV2，及びOMVを調整する。ブロック34でOMVを調整することは、CV1及びCV2をそれらの各々のセットポイントから外れさせ得ることは理解されるであろう。その場合には、MV1及びMV2は、セットポイントCV1SP及びCV2SPが満足され続けることを保証するために、更なる調整を要求し得る。勿論、図１に示されるようなOMVのOCVへの結合により、OCVSPを満足させる方法でOMVを調整することは、OCVがOCVSPを満足するまでOMVを調整すること単に含んでいるだけである。その結果、OCVSPは、OCVを制御するためだけでなく、OMVを制御するために使用される。従って、OMVをOCVに結合することは、制御変数（つまり、OCV）の制御を実行するのと同一の方法で、しかしながら付加的な構成要素の必要なしに、操作変数（つまり、OMV）の制御をIOMPC 12に可能とさせる。
【００２９】
OCVがOCVＳＰに達し、MV1及びMV2がCV1ＳＰ及びCV2ＳＰを満足するのに必要なように調整された後、制御は、ブロック３６で継続し、該ブロック３６は操作変数及び制御変数MV1，MV2，OMV，CV1，CV2，及びAVを使用して、操作変数MV1及びMV2について、夫々MV1ＦＵＴ及びMV2ＦＵＴに指定された将来値のセットを予測／演算する。
上述したように、従来のモデル予測制御は、当然のことながら将来のプロセス状態を演算することを含んでいる。特に、従来のモデル予測コントローラは、例えば、１）制御範囲全体に亘る（つまり、モデル予測コントローラによって演算された将来の操作変数の動きの数に亘る）操作変数の動きを演算することによる、２）操作変数の将来の値を評価すべく使用され得るように、制御範囲を１と等しく設定される付加的なMPCコントローラを使用することによる、又は３）OMVの変化がMV1及びMV2に対して持つ影響を判定するために予測モデルを使用することによる、等を含む多くの方法のうちの何れかによって、操作変数MV1FUT及びMV2FUTの将来の値を演算するように構成され得る。
【００３０】
次に、ブロック38は、MV1FUT及びMV2FUTの値を使用して、２つ以上の操作変数がそれらの各々の制約上限であるか又は該制約を超えるような望ましくない状態にプロセス16が入るか否かを判定する。この状態は不適当である。なぜならば、この状態で作動する間、最適化制御ロジック14が制御変数CV1及び／又はCV2の１つ以上の制御を維持することができなくなり、それによって、CV1及び／又はCV2をそれらの各々のセットポイントから逸れさせるからである。特に、この望ましくない状態の間、最適化制御ロジック14は、CV1及びCV2をそれらの各々のセットポイントに到達させるべく、また、操作変数MV1，MV2及び／又はOMVの一又は複数をそれらの各々の制約に違反させることなしに、操作変数MV1及びMV2を調整することができない。従って、プロセスが望ましくない状態に入るか否かを判定するために、MV1FUT又はMV2FUTの値は、何れかがそのそれぞれの制約に違反しているか否かを判定すべく検査され、そのために制約違反を引き起こす。プロセス16が最適モードで動作しているので、OMVは、その関連する制約、OMVCONに既にあることを注記しておく。このことから、MV1FUT又はMV2FUTの何れか１つがプロセスが望ましくない状態に入るための、そのそれぞれの制約に違反していることが、単に必要である。MV1FUT又はMV2FUTがMV1CON又はMV2CONにそれぞれ違反している場合、ブロック40は、ΔSと等しい量だけ非最適化又は緩められる方向にOCVSPのレベルを調整する。ここで、ΔSは、次のように演算され得る。
【００３１】
【数１】
0004786072.tif 000002
【００３２】
ここで、ΔMV1above，ΔMV2above，及びΔAVaboveは、MV1，MV2，及びAVがそれぞれMV1CON，MVCON，及びAVCONを超える量を表し、以下のように決定され得る。
【００３３】
ΔMV1above = MV1current + ΔMV1 - MV1limit …（２）
ΔMV2above = MV2current + ΔMV2 - MV2CON …（３）
ΔAVabove = AVcurrent + ΔAVpredicted - AVCON …（４）
式（２），（３），及び（４）において、ΔMV1及びΔMV2は、操作変数MV1及びMV2（供給流量及び水流量）の値が一又は複数の将来のプロセスの動きで調整される量を表し、MV1current及びMV2currentは、MV1及びMV2の現在の値を表し、AVcurrentは、補助変数AVの現在の値を表し、ΔAVpredictedは、プロセス変数の現在の値に基づいた補助AVの予測値を表す。式（１）において、GMV1-OMV，GMV2-OMV，及びGAV-OMVは、予測範囲の端部でのゲイン、つまり、プロセス制御ループが閉じた（IOMPC 12が動作しているとき）OCVSPを１単位調整することに応じて、供給フロー，水フロー，及びタンクレベルに生じる変化を表す。より詳細に以下に記述するように、ゲインGMV1-OMV，GMV2-OMV，及びGAV-OMVは、モデル予測コントローラの設定中に、最適化制御ロジック14によって自動的に決定される。
【００３４】
OCVSPのレベルを非最適化方向へ調整することは、OCVSPが増加するセットポイント又は減少するセットポイントであるかに依存することであるのが理解されるであろう。より特定的には、OCVSPが増加するセットポイントである場合、ΔSはブロック40でOCVSPから減算され、また、OCVSPが減少するセットポイントである場合、ΔSはブロック40でOCVSPに加算される。
【００３５】
OCVSPがブロック40によって調整された後、OCVが新しく調整されたOCVSPに達するまで、制御は、OMVが緩められるブロック32へ戻る。従って、OMVは、制御変数OCV及びフィードバック経路25を使用してOCVSPで維持される。
【００３６】
OMVがブロック34によってその最適設定から緩められた後、制御は、上述するようにブロック36及び38で継続することを注記しておく。ブロック38では、MV1FUT又はMV2FUTの何れかが、依然としてそのそれぞれの制約限界上又は違反中であり得る。その場合には、制御は、再びブロック40に流れ、OCVSPは、再び非最適化方向へΔSだけ調整される。制御は、ブロック38がMV1FUT及びMV2FUTの何れもそのそれぞれの制約上又は違反中でないと判定するまで、ブロック32〜40をループし続ける。
【００３７】
勿論、最適化制御ロジック14は、予測された将来の値MV1FUT及びMV2FUTをモニタしており、また、操作変数MV1及びMV2が常にそれらの各々の制約に達するか又は違反することを防止し、それによってプロセス16が望ましくない状態に入るのを防止するように、これらの予測された将来の値に応答するように構成されるので、プロセス16は、現実に望ましくない状態に入らないことは、当業者には理解されるであろう。その結果、IOMPC 12は、制約違反をそれらの発生前に回避するその能力において特に堅牢であるように構成されている。さらに、IOMPC 12は、将来の違反が予測されるまで反応しない。従って、そのそれぞれの制約に非常に近い操作変数は、システムにその最適モードから不必要に手を引かせず、それによって、プロセス16が、プロセス制約の近くで動作するが、依然としてその違反を回避することを可能にする。
【００３８】
ブロック38が、全く制約違反が生じないと判定した場合、つまり、MV1FUT及びMV2FUTの何れもそのそれぞれの制約上又は違反中でないと判定した場合、制御は、OCVSPがOMVCONで設定されているか否かを判定するために、OCVSPの値が検査されるブロック42に移る。OCVSPがOMVCONに設定されていない場合、制御は、OCVSPの値が、例えば、最適化方向へ、プロセス規模の１又は２パーセントのように所定の量だけ調整されるブロック44に移る。制御は、その後、ブロック32及びそれに続くブロックに戻る。理解されるように、OCVSPがそのOMVCONの最適設定から調整された場合、また、ブロック38で予測された将来の制約違反がない場合、最適化制御ロジック14は、ブロック32，34，36，38，42，及び44をループし続けるであろう。ここで、OCVSPは、それがOMVCONの値に戻されるまで、各パスの間で漸増される。
その結果、プロセス制御がブロック32，34，36，38，42，及び44をループし続ける動作のモードは、動作のサブ最適モードと呼ばれ得る。なぜならば、これらのブロックをループする間、OCVSPは、OMVCONの最適の値に設定されないが、むしろサブ最適設定に設定されるからである。
【００３９】
ブロック42が、OCVSPがOMVCONと等しいと判定した場合、次に、制御はブロック32に戻り、最適化制御ロジック14は、それがブロック38によってMV1FUT又はMV2FUTの何れかがそのそれぞれの制約違反であると判定されるまで、ブロック32，34，36，38，及び42をループし続ける。その場合には、制御は、上述されたようにブロック40及びそれに続くブロックへと枝分かれする。プロセス制御がブロック32，34，36，38，及び42をループし続ける動作のモードは、動作の最適モードと呼ばれる。なぜならば、これらのブロックを実行する間、OCVSPは、その最適設定、つまり、OMVCONに設定され、従って、OMVがその最大の設定で動作するからである。プロセス16の制御は、上述された方法で、不定の時間の間又はオペレータがシステムをシャットダウンするまで、図３のフローチャートのブロックをループし続け得る。
【００４０】
上述したように、従来のモデル予測制御は、プロセスモデルの使用、及び将来のプロセス状態を予測するための、且つ制御変数にそれらの各々のセットポイントを満足させる操作変数に対してなされる１組の調整値を演算すべくこの将来のプロセス状態を使用するための現在のプロセス変数の使用を含んでいる。その結果、従来のモデル予測コントローラは、ブロック30〜46の実行の間に行われたステップを全て実行するように構成されてもよく、勿論、該モデル予測コントローラは、ユニットゲイン（図１に示されたように）によってOMVに関係付けられたOCVを含むように構成されるべく提供され、該モデル予測コントローラは、図３のフローチャートによって表される方法に従ってOCVを制御するように構成されるべく提供される。その結果、IOMPC 12は、最適化モデル予測制御を、それが従来のモデル予測制御技術へ完全に統合され得、且つ付加的な制御デバイスが必要ない方法で実行する。
【００４１】
さて、図４を参照して、図１のIOMPC 12は、データヒストリアン52と、各々がディスプレイスクリーン56を有する、一若しくは複数のホストワークステーション又はコンピュータ54（これは、任意の種類のパーソナルコンピュータ，ワークステーション等であってもよい）とに接続されたプロセスコントローラ50を使用して実現されてもよい。コントローラ50は、更に、プロセス制御デバイス18，20，及び22に、並びに入力／出力（I/O）カード58及び60を介してプロセス測定装置24，26，及び28に接続され得る。データヒストリアン52は、データの格納のための任意の所望の種類のメモリ、及び任意の所望の又は知られているソフトウェア，ハードウェア，又はファームウェアを有する任意の所望の種類のデータ収集ユニットであってもよく、また、図４に示されたようにワークステーション54から分離されるか、又は該ワークステーション54のうちの１つの部分であってもよい。例として、フィッシャー・ローズマウント・システムズ社によって開発／製造されたDeltaV（商標）コントローラであることが可能なコントローラ50は、ホストコンピュータ54及びデータヒストリアン52に、例えば、イーサネット（登録商標）接続又は他の所望の通信ネットワークを介して通信可能に接続される。コントローラ50は、更に、プロセス制御デバイス18，20，及び22に、並びにFieldbusプロトコル，HARTプロトコル等のように、例えば標準的な4 mA〜20 mA装置及び／又は任意のスマート通信プロトコル等に関連する任意の所望のハードウェア及びソフトウェアを使用してプロセス測定装置24，26，及び28に通信可能に接続される。
【００４２】
上述したように、制御システム10は、化学反応プロセス16の制御に関して記述されたが、それは、代わりに、任意の種類のプロセスを制御するために使用されてもよい。加えて、フィールドデバイス18，20，22，24，26，及び28は、センサ，バルブ，送信器，ポジショナ等のような任意の種類の装置と共に実現されることが可能であり、I/Oカード58及び60は、任意の所望の通信又はコントローラプロトコルに対応する任意の種類のI/O装置であることが可能である。例えば、フィールドデバイス18，20，22，24，26，及び28は、I/Oカード58にアナログ線を介して通信する標準的な4 mA〜20 mA装置を使用して実現されてもよく、又は、代わりに、Fieldbusプロトコル通信を使用してI/Oカード58にディジタルバス上を通信するFieldbusフィールドデバイスのようなスマートデバイスを使用して実現されてもよい。一般の条件においては、Fieldbusプロトコルは、フィールドデバイスを相互に接続する２線式ループ又はバスに、標準化された物理的なインタフェースを提供する全ディジタル，シリアル，双方向の通信プロトコルである。Fieldbusプロトコルは、実際、プロセス内のフィールドデバイス用のローカルエリアネットワークを提供し、これらのフィールドデバイスに、プロセス制御機能（Fieldbusプロトコルに従って規定された機能ブロックを使用する）をプロセス設備の全体に亘って分散された位置で実施することを可能にし、また、全体的な制御方法を実施するこれらのプロセス制御機能の実行の前後に、相互に通信することを可能にする。Fieldbusプロトコルがプロセス制御ネットワーク内での使用のために開発された比較的新しい全ディジタルの通信プロトコルである一方、このプロトコルが公知技術であり、特に、テキサス州オースティンに本部を置く非営利団体であるフィールドバスファンデーションから出版，配布，利用可能な多くの記事，パンフレット，及び仕様書において詳細に記述されていることは理解されるであろう。その結果、Fieldbus通信プロトコルの詳細は、ここでは詳細に記述されない。勿論、フィールドデバイス18，20，22，24，26，及び28は、任意の標準又は今後開発されるプロトコルを含む任意の他の所望の標準又はプロトコルに対応することができる。
【００４３】
図４を依然として参照して、プロセス16を制御するために、コントローラ50は、３つのアナログ入力信号を１組のアナログ入力（AI）機能ブロック66から受信し、これらの３つのアナログ出力信号を１組のアナログ（AO）出力機能ブロック68へ与えるアドバンスド制御ブロック64を有するアドバンスド制御ループ62（これは多入力／多出力制御ループである）を実施するように構成されることが可能である。アナログ入力機能ブロック66の各々は、センサ24，26，及び28のうちの１つに関連付けられ、アナログ出力機能ブロック68の各々は、バルブ18，20，及び22のうちの１つに関連付けられている。後述するように、アドバンスド制御ブロック64は、統合最適化モデル予測制御（つまり、図１のIOMPC 12として動作すべく）を実行するように構成される。従来の制御システムの条件に従って、機能ブロックの各々は、全体的な制御ルーチンの一部（例えば、サブルーチン）を表し、また、各機能ブロックは、プロセス制御システム10内のプロセス制御ループ62を実施するために、他の機能ブロック（リンクと呼ばれる通信を介して）と共に動作する。機能ブロックは、送信器，センサ，又は他のプロセスパラメータ測定装置に関連するような入力機能、PID，ファジィ論理，MPC等の制御を実行する制御ルーチンに関連するような制御機能、又はプロセス制御システム10内の或る物理的な機能を実行するためにバルブのような或る装置の動作を制御する出力機能のうちの１つを典型的に実行する。機能ブロック66及び68は、コントローラ50に格納され、コントローラ50によって実行されるが、これに代えて、フィールドデバイス18，20，22，24，26，及び28に格納され、該フィールドデバイスによって実施されてもよい。
【００４４】
図４に示されたように、ワークステーション54のうちの１つは、より詳細にここに記述された方法でアドバンスド制御ブロック64を生成し、ダウンロードし、及び実施するために使用されるアドバンスド制御ブロック生成ルーチン70を含んでいる。アドバンスド制御ブロック生成ルーチン70がワークステーション54内のメモリに格納されてもよく、また、その内部にあるプロセッサによって実行されてもよいが、このルーチン（又はそれの任意の部分）は、もしそのように要求されれば、付加的に又は択一的にプロセス制御システム10内の他の装置によって格納され、実行されてもよい。一般に、アドバンスド制御ブロック生成ルーチン70は、アドバンスド制御ブロック64を生成し、アドバンスド制御ブロック64をプロセス制御システムへ接続する制御ブロック生成ルーチン72と、アドバンスド制御ブロック64によって収集されたデータに基づいたプロセス又はそれの部分のためのプロセスモデルを生成するプロセスモデリングルーチン74と、プロセスモデルからアドバンスド制御ブロック64のための制御ロジックパラメータを生成し、プロセス16を制御する際の使用のためにアドバンスド制御ブロック64内のこれらの制御ロジックパラメータを格納又はダウンロードする制御ロジックパラメータ生成ルーチン76とを含んでいる。ルーチン72，74，及び76は、次のような一連の異なるルーチンから構成することが可能であることが理解されるであろう。第１のルーチンは、プロセス出力を受信するように構成された制御入力を有し、制御信号をプロセス入力に与えるように構成された制御出力を有するアドバンスド制御要素を生成する。第２のルーチンは、ユーザに、プロセス制御ルーチン（これは任意の所望の設定ルーチンであってよい）内のアドバンスド制御要素を通信可能に接続させる。第３のルーチンは、プロセス入力の各々に励起波形を与えるためにアドバンスド制御要素を使用する。第４のルーチンは、プロセス出力の各々の励起波形への応答を反映するデータを収集するためにアドバンスド制御要素を使用する。第５のルーチンは、収集したデータからプロセスモデルを生成する。第６のルーチンは、プロセスモデルからのアドバンスド制御ロジックパラメータを展開させ、第７のルーチンは、アドバンスド制御ロジック、及び、もし必要ならば、アドバンスド制御要素にプロセスを制御させるためのアドバンスド制御要素内のプロセスモデルを配置する。
【００４５】
アドバンスド制御ブロック生成ルーチン70は、ユーザがアドバンスド制御ブロック生成ルーチン70と通信することを可能にし、それによってプロセス16の制御用のプロセス制御システム10を設計及び設定するために、アドバンスド制御ブロック生成ルーチン70によって使用される設定情報を提供するグラフィカルインタフェースプログラム78を更に含むことが可能である。
【００４６】
さて、図５を参照して、フローチャート80は、プロセス16の統合最適化モデル予測制御を実行するアドバンスド制御ループ62を設計／設定するための方法のステップを示している。該方法は、最適化対象が選択されるステップ82で開始する。上述したように、最適化のために選択された最適化対象は、例示において、生産効率、つまり、プロセス処理能力である。
【００４７】
次に、ブロック84では、ユーザは、グラフィカルインタフェースプログラム78を介して制御ブロック生成ルーチン70に設定情報を与えることによりプロセス制御システム10の設定を開始する。好ましくは、一旦開始されると、グラフィカルインタフェースプログラム78は、制御システムを設計するために使用される制御方法を指定することをユーザに促す。前述したように、機能ブロックを使用する制御方法は、制御システム10を表すために使用されることが可能であり、その場合には、ユーザは、機能ブロック制御方法の指定により要求に応える。勿論、ユーザは、例えば、ラダーロジック又はシーケンス機能チャートのような別の制御方法を使用することを望み、従って、ユーザは、次に、選択された方法を指定するかも知れない。制御方法が指定された後、グラフィカルインタフェースプログラム78は、プロセス制御システム10を実施するために使用される機能ブロックの数を指定するようにユーザに促すことが可能である。例えば、プロセス16に関して、ユーザは、アドバンスド制御ループ62が３つのアナログ入力機能ブロック66と、３つのアナログ出力機能ブロック68及びアドバンスド制御ブロック64とを含むことを指定する。機能ブロックの数が指定された後、グラフィカルプログラムインタフェース58は、制御ブロック生成ルーチン72を開始させることが可能である。一旦開始されると、制御ブロック生成ルーチン72は、７つの制御ブロックを生成する。１つは、６つのアナログ入力及びアナログ出力機能ブロック66及び68の各々を表し、１つは、アドバンスド制御ブロック64を表す。制御ブロック生成ルーチン72は、アナログ入力及び出力機能ブロック66及び68を表す制御ブロックの生成中に、機能ブロック66及び68の各々がアドバンスド制御ブロック64に結合される方法を指定するようにユーザに促し、更に、機能ブロックの各々によって実行される機能を指定するようにユーザに促す。つまり、アナログ入力機能ブロック66の各々は、センサ24，26，及び28のうちの１つに関連付けられている。また、アナログ出力機能ブロック68の各々は、バルブ18，20，及び22のうちの１つに関連付けられている。加えて、ユーザは、機能ブロック66及び68を生成／設定するのに必要な他の情報（例えば、もしあれば、機能ブロック66及び68に関連するゲイン及び／又は機能ブロックによって生成された信号で実行するのに必要な任意のスケーリングを含む）を指定するように促される。
【００４８】
制御ブロック生成ルーチン72がアドバンスド制御ブロック64を生成している場合、ユーザは、更に、アドバンスド制御ブロック64によって実行される制御方法を指定するように促される。これに応じて、ユーザは、アドバンスド制御ブロック64が、統合最適化モデル予測制御を実行すべく設定されることを指定する、つまり、アドバンスド制御ブロック64がIOMPC 12（図１参照）として動作することを指定する。次に、ユーザは、プロセス16に関連する入力及び出力を指定するように促される。更に図１を参照して、プロセス16は、それぞれ３つのバルブ18，20，及び22の位置に関連する３つの入力X1，X2，X3を含むように、また、それぞれセンサ24，26，及び28によって提供される測定値に関連する３つの出力Y1，Y2，Y3を有するように示されている。一旦プロセス入力X1，X2，X3及びプロセス出力Y1，Y2，Y3が指定されたならば、制御ブロック生成ルーチン72は、プロセス入力X1，X2，X3に結合された３つの出力OUT1，OUT2，OUT3を有し、プロセス出力Y1，Y2，Y3に結合された３つの入力IN1，IN2，及びIN3を有するIOMPCとして動作すべく、アドバンスド制御ブロック64を設定する。
【００４９】
図５を依然として参照して、設定を指定するステップ84の間、制御ブロック生成ルーチン72は、OMVを識別させるようにユーザに促すことをグラフィカルインタフェース78に行わせる。上述したように、例示にあっては、蒸気流量MV3が生産効率を最大限にするために最適化されなければならないことが想定され、従って、MV3は、ユーザによって制御ブロック生成ルーチン72にOMVであると識別される。OMVの識別が制御ブロック生成ルーチン72に与えられた後、該制御ブロック生成ルーチン72は、OMVに関係付けられた最適化制御変数（OCV）を自動的に生成する。上に提供されたOCVの記述に従って、OCVは、実際のプロセス出力（つまり、Y1，Y2，Y3）のうちの何れにも相当しないが、代わりに、ユニットゲインによってOMVに関係付けられた制御変数として設定される。
【００５０】
ステップ84の間、制御ブロック生成ルーチン72は、更に、セットポイントCV1SP及びCV2SPのデフォルト値を指定し、且つ制約MV1CON，MV2CON，及びOMVCONの値を指定するようにユーザに促すことが可能である。OMVCONのための値を受け取った後に、制御ブロック生成ルーチン72は、OMVCONの値と等しいOCVSPと呼ばれる、OCVのためのセットポイントを生成する。
【００５１】
ステップ84では、制御ブロック生成ルーチン72への他のロジックパラメータを更に指定することが必要であるかも知れない。該パラメータは、例えば、制御変更が行なわれることになっている時間枠（例えば、セットポイント軌道フィルタ時定数）、MPC出力又はプロセス出力の最大又は最小の移動（割合限界）、制御パラメータのうちの何れかが、統合制御パラメータであるか否か、IOMPC最適化要因、変数又はチューニングパラメータ、IOMPC制御ブロック64の制御範囲、つまり、何ステップ先へ所望の状態に制御するために操作変数値が演算されるか、IOMPCブロック64の入力及び出力の各々のためのエンジニアリングユニット範囲、制約のうちの１つが違反されるときに、制御変数のどれが緩和を許容されるか又は気付かれないか、MPCの攻撃性又は堅牢さに関係するパラメータの値等、を含んでいる。
【００５２】
図５を依然として参照して、次に、ステップ86において、ブロック84で設定されたアドバンスド制御ループ62は、コントローラ50へ自動的にダウンロードされ、アドバンスド制御ブロック64の入力及び出力は、適切なプロセス入力及び出力に通信可能に接続される。特に、図１に示されるように、アドバンスド制御ブロック64は、IOMPC 12によって表される。プロセス出力Y1〜Y3は、それぞれIOMPC入力IN1〜IN3に通信可能に接続され、プロセス入力X1〜X3は、それぞれIOMPC出力OUT1〜OUT3に通信可能に接続される。単純化のために、アナログ入力機能ブロック66及びアナログ出力機能ブロック68は、図１のブロック図から省略されているが、IOMPC 12の入力及び出力に結合されていると想定される。勿論、ユーザは、任意の所望の方法でアドバンスド制御ブロック64をプロセス16に接続することができ、一般に、ユーザがプロセス制御システム10内の単一ループ制御ルーチンのような他の制御ループを生成するために使用するのと同一の制御設定又は設計プログラムを使用するであろう。例えば、ユーザは、アドバンスド制御ブロック64とプロセス入力及び出力との間の接続を指定するために任意の所望のグラフィカルプログラミングルーチンを使用することが可能である。この方法において、アドバンスド制御ブロック64は、他の制御ブロック、要素又はルーチンと同一の方法でサポートされ、アドバンスド制御ブロック64の設定及び接続をなし、制御システム10内のそのブロックについてサポートする。これは、システム内の他のブロックの設定、接続及びサポートと何ら変わらない。１つの実施の形態において、アドバンスド制御ブロック64は、制御システム10内の他のブロックと同様に、Fieldbus機能ブロックと同一又は同様に設計された機能ブロックである。この実施の形態において、アドバンスド制御ブロック64は、Fieldbusプロトコル中で指定又は提供されるように、同一又は同様の種類の入力，出力等を有することが可能であり、例えば、Fieldbusプロトコルによって指定されたものと同一又は同様である通信リンクを使用するコントローラ50によって実施される機能を有する。プロセス制御ルーチン及びその要素をグラフィカルに生成する方法は、ドーブ（Dove）らの米国特許第5,838,563号公報「プロセス制御環境を設定するシステム」に記述されており、これをここで参照することによってここに組み込む。勿論、他の種類の機能ブロックを使用するか、又はプロセス制御設定パラダイム内の他のルーチン、サブルーチン又は制御要素を使用するものを含めて、他の制御ループ又は制御モジュール設計方法も同様に使用することができる。
【００５３】
図１に示されるように、ステップ86（図５参照）でコントローラ50へダウンロードされたアドバンスド制御ブロック64は、データ収集ルーチン100（これはデータヒストリアン52に代わりに格納されてもよい）と、波形ジェネレータ101と、ジェネリック制御ロジック102と、制御パラメータを格納するための記憶装置103と、プロセスモデル104とを有することが可能である。ジェネリックロジック102は、例えば、特定の場合における制御を実行するために係数又は他の制御パラメータを必要とするジェネリックMPCルーチンである。場合によっては、ジェネリックロジック102は、更に、制御中のプロセスのためのプロセスモデルを必要とする。
【００５４】
図５を再び参照して、ステップ86でアドバンスド制御ブロック64がコントローラにダウンロードされた後、ステップ88が実行され、ここでは、プロセスモデルを生成する際の使用のためのプロセス出力の各々のためにデータが集められるアドバンスド制御ブロック64の展開の次の過程を始めるために、アドバンスド制御ブロック64がプロセスモデリングルーチン74を介して指示される。特に、ユーザによってそうするように指示されたとき（又は他の所望するとき）、アドバンスド制御ブロック64の波形ジェネレータ101は、その出力OUT1〜OUT3での一連の波形の生成を開始し、プロセス入力X1〜X3の各々に励起波形を与える。もし要求されれば、これらの波形は、ユーザワークステーション54内のソフトウェアによってジェネレータ101に与えられることが可能であるが、好ましくはジェネレータ101によって生成される。波形ジェネレータ101によって生成された波形は、プロセスの通常動作中に予期される入力の異なる範囲に亘ってプロセス16を動作させるように好ましくは設計されている。アドバンスド制御ブロック64の適切な設計については、プロセス入力IN1，IN2，及びIN3に与えられた入力波形が、バルブ18，20，及び22の開度の代わりに、供給材料、水及び蒸気の流量にそれぞれ対応すべきである。従って、もしまだ知られていなければ、様々なバルブ開度に対応する流量を演算し、IOMPC生成ルーチン72にこれらの流量を与えることは必要であろう。
【００５５】
波形ジェネレータ101は、プロセス入力X1〜X3の各々、一連の異なるパルスのセットに伝えることが可能であり、ここでは、パルスのセットの各々内のパルスは、同一の振幅を有するが、擬似ランダム長さを有しており、パルスの異なるセット内のパルスが異なる振幅を有している。パルスのセットは、異なるプロセス入力X1〜X3の各々のために生成され、一度に連続して伝えられることが可能である。この間、アドバンスド制御ブロック64内のデータ収集ユニット100は、波形ジェネレータ101によって生成された波形の各々へのプロセス出力Y1〜Y3の応答を示す収集データを収集するか又はそうでなければ調整し、生成されている励起波形に関するデータの収集を収集するか又は調整することが可能である。このデータは、アドバンスド制御ブロック64に格納されてもよいが、好ましくは、格納のためのデータヒストリアン52及び／又はワークステーション54へ自動的に送られ、ディスプレイスクリーン56に表示される。
【００５６】
この方法において、アドバンスド制御ブロック64は、プロセス16に１組の励起波形を与え、これらの励起波形に対するプロセス16の応答を測定する。勿論、波形ジェネレータ101によって生成された励起波形が、モデル予測コントローラのためのプロセスモデルの展開において有用であることが知られており、これらの波形は、この目的のために現在知られている又は今後開発される任意の波形である。モデル予測制御のためのプロセスモデルを展開するためにデータを収集する目的でプロセスを励起するのに使用される波形は良く知られているので、これらの波形は、ここでは更に記述されないであろう。
【００５７】
波形ジェネレータ101が、任意の所望の形態であってよく、例えば、ハードウェア、ソフトウェア又は両方の組み合わせで実施され得ることを注記しておく。ソフトウェアで実施される場合、波形ジェネレータ101は、所望の波形を生成するために使用することができるアルゴリズムを格納することが可能であり、生成される波形のディジタル表示を格納することが可能であり、又はそのような波形を生成するために他のルーチン又は格納されたデータを使用することが可能である。ハードウェアで実施される場合、波形ジェネレータ101は、例えば、矩形波ジェネレータの形態であることが可能である。もし要求されれば、ユーザは、プロセスの概略応答時間、プロセス入力に伝えられる波形の振幅のステップサイズ等のような、波形を設計するのに必要な或るパラメータの入力を尋ねられるようにしてもよい。アドバンスド制御ブロック64が最初に生成される場合、又はユーザがプロセスを混乱又は励起し始め、プロセスデータを収集するようにアドバンスド制御ブロック64に指示する場合、ユーザは、この情報のために促されるかも知れない。
【００５８】
好ましい実施の形態において、データ収集ユニット100は、完全で正確なプロセスモデルが展開され得ることを保証するために、単一出力プロセスのための応答時間の３〜５倍での、及び多変数プロセスのための応答時間の１０倍以上での励起波形の各々に応じてデータを収集する（又はそうでなければ収集を保証する）。しかしながら、データは、他の時間をかけて収集されてもよい。何れにせよ、アドバンスド制御ブロック64は、波形ジェネレータ101がプロセス入力X1〜X3の各々に、必要な励起波形を全て伝えることを完了し、データ収集ユニット100が、プロセス出力Y1〜Y3のためのデータを収集するまで、好ましくは動作する。勿論、もしそのように要求されれば、又はこのデータ収集プロセスの間に必要であれば、アドバンスド制御ブロック64の動作は中断されてもよい。
【００５９】
図５のステップ88を依然として参照して、励起データは、収集された後、プロセスモデルを生成するために使用される。該プロセスモデルは、任意の公知の種類のプロセスモデリング解析方法を使用して生成されることが可能である。また、展開されたプロセスモデルは、数学的なアルゴリズム、一連の応答曲線等のような任意の形態を呈することが可能である。生成されたプロセスモデルの質は、収集された励起データの質に依存するので、データスクリーニングは、データセットから異常値及び他の信頼性の低いデータポイントを取り除くべくプロセスモデルを生成する前に一般に実行される。生成されるプロセスモデルは、後の使用の際にアクセス可能なように任意の所望のデータベースに自動的に保存されることが可能である。
【００６０】
一旦プロセスモデルが生成されたならば、制御ロジックパラメータ生成ルーチン76は、ステップ90で実行され、これにより、１組のIOMPCプロセスモデル係数／コントローラ係数又は制御ロジックパラメータを生成する。プロセス16を制御するためにアドバンスド制御ブロック64によって使用されるであろう制御ロジックパラメータは、プロセスモデルを表すマトリックスを反転することにより生成される。プロセスモデルをプロセスのための収集データから生成し、収集したデータのマトリックスを反転することによってそのプロセスモデルからMPC又は他の制御ロジックパラメータを生成することは、公知の技術であり、従って、これらの手順はここでは更に記述されない。ロジックパラメータを生成するために使用されるここに記述されたプロセスは、プロセスモデルマトリックスを反転することを含んでいるが、これに代えて、他の所望のロジックパラメータ生成ルーチンを使用することが可能であることは、理解されるであろう。
【００６１】
図５を依然として参照して、IOMPC制御ロジックパラメータが生成された後、IOMPC制御ロジックパラメータ又は係数は、プロセスシミュレーションブロックを使用して、ステップ92でテストされてもよい。このシミュレーションブロックは、プロセスのために生成されたプロセスモデルから一般に展開されることが可能であり、生成されたIOMPC制御ロジックが通常のプロセス動作の範囲に亘って十分な動作をするか否かをテストするためのテスト環境中のアドバンスド制御ブロック64に接続されることができる。IOMPCロジックが十分でない場合、ステップ86，88，90の全部又は何れかが、異なるIOMPC制御ロジックを展開するために繰り返されることが可能である。しかしながら、IOMPC制御ロジックが十分な場合、パラメータ記憶装置103及びプロセスモデル記憶装置104に格納されたIOMPC制御ロジックパラメータ及びプロセスモデルは、プロセス16を制御するためにステップ94でアドバンスド制御ブロック64によって使用される。この方法において、IOMPC制御ロジックによって必要とされるパラメータは、アドバンスド制御ブロック64内に提供され、含まれており、該アドバンスド制御ブロック64は、IOMPC制御ロジック102に従うプロセス内のIOMPC 12として制御を実際に実行することを担うことができる。勿論、もし要求されれば、このように必要とされるパラメータと共に、実際のIOMPCロジック102は、ワークステーション54で生成され、IOMPCブロック64にダウンロードされることが可能である。
【００６２】
或る修正が当業者に生じるかも知れない。例えば、IOMPC 12は、複数の最適化対象を最適化するように構成されてもよい。この場合、最適化対象の数に依存する複数の操作変数が最適化のために識別される。より特定的には、製品処理能力及び製品原価の両方を最適化する（つまり、処理能力を最大限にし、コストを最小限にする）ことが望ましい場合、これらの特性を最適化するために使用される操作変数（つまり、これらの特性に最も大きな影響を及ぼす操作変数）が識別される。次に、個別の最適化制御変数が各最適化操作変数に割り当てられ、IOMPCは、OMVの各々がユニットゲインによってそのそれぞれのOCVに拘束されるように設定される。IOMPCは、同一の方法で又は優先順位方式で、OMVを管理するようにプログラムされてもよい。特に、最適化方法でプロセスを動作する場合（OMVがそれらの最適レベルで動作している）、また、OMV以外の操作変数の将来の値がそのそれぞれの制約を超える場合、IOMPCは、それらの最適値から両方のOMVを同時に外れさせるようにプログラムされてもよい。これに代えて、OMVは、制約を超えた場合、IOMPCがOMVをそれらの割り当てられた優先順位に基づく順にそれらの最適値から外れさせるように優先順位を割り当てられてもよい。
【００６３】
勿論、プロセスが望ましくない状態に入るためにそれらの各々の制約に達するか又は超えなければならない操作変数の数が、プロセスに関連するプロセス入力変数の数に依存することは、理解されるであろう。特に、プロセス入力変数の数は、プロセス制御システムの自由度を規定し、自由度が大きければ大きいほど、プロセスを所望の状態に入らせずにそれらの各々の制約上又は違反中で動作し得る操作変数の数が大きくなる。
従って、図２に示されたプロセス16に関して記述されたように、複数の操作変数（OMVを含む）がそれらの各々の制約限界に達するか又は超える場合には、望ましくない状態が生じるが、より多くのプロセス入力変数を有するプロセスは、望ましくない状態に入らずに、それらの各々の制約限界上又はそれを超えて、より多くの操作変数で動作することが可能であってもよい。
【００６４】
さらに、図３でブロック30〜44によって表される方法は、これに代えて、統合最適化ファジィ論理制御を実行するためにファジィ論理コントローラを使用して実施されることが可能である。
【００６５】
実施される際、ここに記述されたソフトウェアの何れも、コンピュータ又はプロセッサ等のRAM又はROM、磁気ディスク、レーザディスク、又は他の記憶媒体のような任意のコンピュータが読み取り可能なメモリに格納され得ることを更に注記しておく。同様に、このソフトウェアは、例えば、コンピュータが読み取り可能なディスク又は他の可搬型コンピュータ記憶メカニズム上、或いは電話線、インターネット、ワールドワイドウェブ、他のローカルエリアネットワーク又は広域ネットワーク等のような通信チャネル上（その伝達は、そのようなソフトウェアを可搬型の記憶媒体を介して提供することと同一又は相互交換可能であるものとして見られる）の伝達方法を含む、任意の知られている又は所望の伝達方法で、ユーザ、プロセス制御システム又はコンピュータに伝えられることが可能である。さらに、このソフトウェアは、変調なしに直接的に提供されてもよく、通信チャネル上に送信される前に任意の適切な変調搬送波を使用して変調されてもよい。
【００６６】
ここに記述された如何なる制御ルーチン又は要素も、異なるコントローラ又はもしそう要求されるならば他の装置によって実施又は実行されたその部分を有することも注記しておく。同様に、プロセス制御システム10内に実施されるためにここに記述された制御ルーチン又は要素は、ソフトウェア，ファームウェア，ハードウェア等を含む任意の形態を呈することが可能である。この発明の目的にあっては、プロセス制御要素は、例えば、任意のコンピュータが読み取り可能な媒体上に格納されたルーチン、ブロック又はモジュールを含む、プロセス制御システムの任意の一部又は部分であることができる。モジュール又はサブルーチンのような制御手順の任意の部分であり得る制御ルーチン、サブルーチンの一部（符号の行のような）等の部分は、ラダーロジック、シーケンス機能図、機能ブロック図、又は他のソフトウェアプログラミング言語若しくは設計パラダイムの使用ように、任意の所望のソフトウェアフォーマットで実施されることが可能である。同様に、制御ルーチンは、例えば、一又は複数のEPROM，EEPROM，特定用途向けの集積回路（ASIC）、又は他のハードウェア若しくはファームウェア要素へハードコード化されることが可能である。さらに、制御ルーチンは、グラフィカル設計ツール又は他の種類のソフトウェア／ハードウェア／ファームウェアプログラミング若しくは設計ツールを含む、任意の設計ツールを使用して設計されてもよい。
【００６７】
このように、本願発明は、具体例を参照して記述されたが、これらは、あくまでも例示的であり、本願発明を限定するものではない。本願発明の目的及び範疇を逸脱することなく、開示された実施の形態に変更、追加、又は削除を加えてよいことは当業者には明白である。
【図面の簡単な説明】
【図１】  プロセスを制御すべく操作するために構成された統合最適化モデル予測コントローラのブロック図である。
【図２】  図１の統合最適化モデル予測コントローラによって制御される典型的に単純な化学反応プロセスの図である。
【図３】  統合最適化モデルの予測制御を実行する方法を示すフローチャートである。
【図４】  図１の統合最適化モデル予測コントローラを実施すべく使用されるコントローラを有するプロセス制御システムの図である。
【図５】  統合最適化モデル予測コントローラとして動作する図４のコントローラを構成する方法を示すフローチャートである。
【符号の説明】
10  プロセス制御システム
12  IOMPC（統合最適化モデル予測コントローラ）
14  最適化制御ロジック
16  プロセス
18, 20, 22  プロセス制御デバイス（バルブ，フィールドデバイス）
23  増幅器
24, 26, 28  プロセス測定デバイス（センサ，フィールドデバイス）
25  フィードバック経路
27  タンク
29  スリーブ
50  プロセスコントローラ
52  データヒストリアン
54  ホストワークステーション（ホストコンピュータ）
56  ディスプレイスクリーン
58, 60  入力／出力（I/O）カード（グラフィカルプログラムインタフェース）
62  アドバンスド制御ループ（プロセス制御ループ）
64  アドバンスド制御ブロック（IOMPC制御ブロック）
66, 68  アナログ入力（AI）機能ブロック（アナログ出力（AO）機能ブロック）
70  アドバンスド制御ブロック生成ルーチン
100  データ収集ルーチン（データ収集ユニット）
101  波形ジェネレータ
102  ジェネリック制御ロジック（IOMPCロジック）
103  パラメータ記憶装置
104  プロセスモデル（プロセスモデル記憶装置）
【図１】
0004786072.tif 000003
【図２】
0004786072.tif 000004
【図３】
0004786072.tif 000005
【図４】
0004786072.tif 000006
【図５】
0004786072.tif 000007