プロセスプラントにおいてグラフィックディスプレイ要素およびプロセスモジュールを構成するためのシステム
【課題】ユーザに作業空間内のプロセスオブジェクトのためのモデルを選択させる。
【解決手段】ユーザに作業空間内のプロセスオブジェクトのためのモデルを選択するようにプロンプトを出し、モデルが複数のモデルから選択され、モデルがプロセスオブジェクトに対応するプロセスプラントの物理エンティティの動作をシミュレーションし、作業空間内のプロセスオブジェクトが、プロセスオブジェクトの第1のパラメータと関連するステップ応答モデルと、プロセスオブジェクトの第2のパラメータと関連する第1の主要モデルとを有し、ユーザにモデルを選択するようにプロンプトを出すことが、ユーザに少なくともステップ応答モデルと第1の主要モデルからモデルを選択するようにプロンプトを出す。
【解決手段】ユーザに作業空間内のプロセスオブジェクトのためのモデルを選択するようにプロンプトを出し、モデルが複数のモデルから選択され、モデルがプロセスオブジェクトに対応するプロセスプラントの物理エンティティの動作をシミュレーションし、作業空間内のプロセスオブジェクトが、プロセスオブジェクトの第1のパラメータと関連するステップ応答モデルと、プロセスオブジェクトの第2のパラメータと関連する第1の主要モデルとを有し、ユーザにモデルを選択するようにプロンプトを出すことが、ユーザに少なくともステップ応答モデルと第1の主要モデルからモデルを選択するようにプロンプトを出す。
【発明の詳細な説明】
【技術分野】
【0001】
(関連出願)
本願は、2004年5月4日に出願され、本願がこれにより全体を本明細書に参照することにより明示的に組み込んでいる「プロセス制御システムを表現し、監視し、対話するためのグラフィックユーザインタフェース(Graphic User Interface for Representing,Monitoring and Integrating with Process Control Systems)」と題される米国仮特許出願、出願番号第60/567,980号の利益、優先権のために正規に出願された出願および請求項である。本願は、全体の開示がこれによりその全体を本明細書に参照することにより明示的に組み込まれている、2002年10月22日に出願され、2004年4月22日に米国公報番号第2004/0075689号として公開された、同様に「プロセスプラントにおけるスマートプロセスモジュールおよびオブジェクト(Smart Process Modules and Objects in Process Plants)」と題される米国特許出願、出願番号第10/278,469号の一部継続出願である、2003年7月21日に出願され、2004年8月日に米国公報番号第2004/0153804号として公開された「グラフィックディスプレイ要素、プロセスモジュールおよび制御モジュールのプロセスプラントにおける統合(Integration of Graphic Display Elements,Process Modules and Control Modules in Process Plants)」と題される米国特許出願、出願願望第10/625,481号にも関連する。本願は、全体の開示がこれによりその全体を本明細書に参照することにより明示的に組み込まれている、2003年2月18日に出願され、2004年10月7日に米国公報番号第2004/0199925号として公開された「プロセスプラント構成システムにおけるモジュールクラスオブジェクト(Module Class Objects in a Process Plant Configuration System)」と題される米国特許出願、出願番号第10/368,151号にも関連する。本願は、本願と同日に国際(PCT)出願として出願され、本願がこれにより全体を本明細書に参照することにより組み込んでいる以下の特許出願にも関連する。つまり、「プロセス環境における関連グラフィックディスプレイ(Associated Graphic Displays in a Process Environment)」(代理人整理番号第06005/41111号)、「プロセス制御システムのためのユーザにより構成可能なアラームおよびアラームトレンド分析(User Configurable Alarms and Alarm Trending for Process Control Systems)」(代理人整理番号第06005/41112号)、「プロセスプラントにおけるプロセスモジュールおよびエキスパートシステムの統合(Integration of Process Modules and Expert Systems in Process Plants)」(代理人整理番号第06005/41113号)、「統合された環境におけるカスタマイズされたプロセスグラフィックディスプレイ層を有するプロセスプラントユーザインタフェースシステム(A Process Plant User Interface System Having Cusstomized Process Graphic Display Layers in an Integrated Environment)」(代理人整理番号第06005/41114号)、「プロセス環境におけるスクリプト化されたグラフィック(Scripted Graphics in a Process Environment)」(代理人整理番号第06005/41115号)、「プロセス構成および制御環境へのグラフィック統合(Graphics Integration into a Process Configuration and Control Environment)」(代理人整理番号第06005/41116号)、「プロセス環境における複数の視覚化のあるグラフィックス要素(Graphic Element with Multiple Visualization in a Process Environment)」(代理人整理番号第06005/41117号)、「統合プロセス制御システムインタフェースのためのグラフィックディスプレイ構成フレームワーク(Graphic Display Configuration Framework for Unified Process Control System Interface)」(代理人整理番号第06005/41124号)、「プロセスプラントユーザインタフェースにおけるマークアップ言語をベースにした動的プロセスグラフィックス(Markup Language−Based,Dynamic Process Graphics in a Process Plant User Interface)」(代理人整理番号第06005/41127号)、「プロセス制御データを修正するための方法および装置(Methods and Apparatus for Modifying Process Control Data)」(代理人整理番号第06005/591622号と第20040/59−11622号)、「プロセス制御データにアクセスするための方法および装置(Methods and Apparatus for Accessing Process Control Data)」(代理人整理番号第06005/591623号および第20040/59−11623号)、「プロセス制御システムのための統合グラフィック実行時インタフェース(Integrated Graphical Runtime Interface for Process Control Systems)」(代理人整理番号第06005/591628号および第20040/59−11628号)、「プロセス制御システムのためのサービス指向アーキテクチャ(Service−Oriented Architecture for Process Control Systems)」(代理人整理番号第06005/591629号および第20040/59−11629号)である。
【0002】
本発明は、概してプロセスプラントに関し、より詳細にはプロセスプラント制御アーキテクチャのシステムレベルでユーザ表示、シミュレーションおよび制御を統合できるようにするインテリジェント制御シミュレーション環境に関する。
【背景技術】
【0003】
化学関連プロセス、石油関連プロセス、または他のプロセスで使用されるシステム等の分散型プロセス制御システムは、通常、アナログバス、デジタルバスまたはアナログ/デジタル結合バスを介して1台以上のフィールドデバイスに通信可能に結合されている1台以上のプロセスコントローラを含む。例えば、バルブ、バルブポジショナ、スイッチおよび送信機(例えば、温度センサ、圧力センサ、水位センサ、および流量センサ)であってもよいフィールドデバイスはプロセス環境内に配置され、バルブの開閉、プロセスパラメータの測定等のプロセス機能を実行する。周知のFieldbusプロトコルに準拠しているスマートフィールドデバイスも制御計算、アラーム機能、およびコントローラ内で一般的に実現されている他の制御機能を実行してもよい。また通常はプラント環境の中に配置されるプロセスコントローラは、フィールドデバイスによって行われるプロセス測定および/またはフィールドデバイスに関する他の情報を示す信号を受信し、プロセス制御決定を下し、受信された情報に基づいて制御信号を発生させ、HARTデバイスおよびFieldbusフィールドデバイス等のフィールドデバイスで実行されている制御モジュールまたはブロックと連携調整する、例えば異なる制御モジュールを起動するコントローラアプリケーションを実行する。コントローラ内の制御モジュールはフィールドデバイスに通信回線上で制御信号を送信し、それによってプロセスの動作を制御する。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2001−117627号公報
【特許文献2】特開平10−124115号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
通常、フィールドデバイスおよびコントローラからの情報は、一般的にコントロールルームまたはより厳しいプラント環境から離れた他の場所に設置されているオペレータワークステーション、パーソナルコンピュータ、データヒストリアン、レポートジェネレータ、集中データベース等の1台以上の他のハードウェアデバイスがデータハイウェイ上で利用できる。これらのハードウェアデバイスは、オペレータが、プロセス制御ルーチンの設定値を変更し、コントローラまたはフィールドデバイス内の制御モジュールの動作を修正し、プロセスの現状を表示し、フィールドデバイスおよびコントローラによって生成されるアラームを表示し、人員をトレーニングするまたはプロセス制御ソフトウェアをテストする目的でプロセスの動作をシミュレーションし、構成データベースを保持し、更新する等のプロセスに関する機能を実行できるようにし得るアプリケーションを実行する。
【0006】
1つの例として、エマーソンプロセスマネジメント(Emerson Process Management)より販売されているDeltaV(登録商標)制御システムは、プロセスプラント内の様々な場所に配置される異なるデバイスに記憶され、それらにより実行される複数のアプリケーションを含む。1つ以上のオペレータワークステーションに常駐する構成アプリケーションにより、ユーザはプロセス制御モジュールを作成または変更し、データハイウェイを介して専用の分散型コントローラにこれらのプロセス制御モジュールをダウンロードできる。通常、これらの制御モジュールは、それに対する入力に基づいて制御スキームの中で機能を実行し、制御スキームの中で他の機能ブロックに対して出力を提供するオブジェクト指向プログラミングプロトコルのオブジェクトである通信可能に相互接続されている機能ブロックから構成されている。構成アプリケーションは、設計者が、オペレータにデータを表示するために、およびオペレータが設定点等の設定値をプロセス制御ルーチン内で変更可能とするために表示アプリケーションによって使用されるオペレータインタフェースを作成または変更できるようにしてもよい。各々の専用コントローラ、およびいくつかのケースではフィールドデバイスは実際のプロセス制御機能を実現するためにそこに割り当てられ、ダウンロードされる制御モジュールを起動するコントローラアプリケーションを記憶し、実行する。1つ以上のオペレータワークステーションで実行されてもよい表示アプリケーションはデータハイウェイを介してコントローラアプリケーションからデータを受信し、このデータをプロセス制御システムの設計者、オペレータ、またはユーザインタフェースを使用するユーザに表示し、オペレータビュー、エンジニアビュー、技術者ビュー等の多くの異なるビューのいずれかを提供してもよい。構成データベースアプリケーションは、現在のプロセス制御ルーチン構成およびそれに関連付けられているデータを記憶するために、データハイウェイに接続されているさらに追加のコンピュータで実行してもよいが、データヒストリアンアプリケーションは、通常、データハイウェイ全体で提供されるデータの一部またはすべてを収集し、記憶するデータヒストリアンデバイスの中に記憶され、それによって実行される。代わりに、構成データベースは構成アプリケーションと同じワークステーションに配置されてもよい。
【0007】
上記に注記されたように、オペレータディスプレイアプリケーションは、通常、ワークステーションの内の1つ以上でシステム全体において実現され、プラント内の制御システムまたはデバイスの動作状態に関して、事前設定されたディスプレイをオペレータまたは保守人員に提供する。通常、これらのディスプレイはプロセスプラント内でコントローラまたはデバイスによって生成されるアラームを受信するアラームディスプレイ、プロセスプラント内のコントローラおよび他のデバイスの動作状態を示す制御ディスプレイ、プロセスプラント内のデバイスの動作状態を示す保守ディスプレイ等の形式を取る。これらのディスプレイは、一般的に、プロセスプラント内のプロセス制御モジュールまたはデバイスから受信される情報またはデータを、公知の方法で表示するように事前設定されている。いくつかの公知のシステムでは、ディスプレイは物理要素または論理要素と関連付けられているグラフィックを有し、物理要素または論理要素についてのデータを受信するために物理要素または論理要素に通信可能に結び付けられているオブジェクトを使用することにより作成される。オブジェクトは、例えば、タンク半分が一杯になっていることを描くために、流量センサによって測定される流量を描くために等、受信されたデータに基づいて表示画面上のグラフィックを変更してもよい。ディスプレイのために必要とされる情報はプロセスプラント内部のデバイスまたは構成データベースから送信されるが、この情報はその情報を含むディスプレイをユーザに提供するためだけに使用される。その結果、アラームを生成するため、プラント内の問題を検知するため等に使用されるすべての情報とプログラミングは、プロセスプラント制御システムの構成の間にコントローラおよびフィールドデバイス等のプラントと関連付けられている異なるデバイスによって生成され、異なるデバイスの内部で構成されなければならない。その時点で初めてこの情報がプロセス動作中の表示のためにオペレータディスプレイに送信される。
【0008】
エラー検知および他のプログラミングは、異なるコントローラで実行中の制御ループに関連する条件、エラー、アラーム等、および個々のデバイス内部の問題を検知するために有用であるが、プロセスプラント内部の複数の、多様に配置されている可能性のあるデバイスからのデータを分析することにより検知されなければならないシステムレベルの状態またはエラーを認識するためにプロセス制御システムをプログラミングすることは困難である。またさらに、オペレータディスプレイは、通常、オペレータまたは保守人員にこのようなシステムレベルの状態情報を表示するまたは提示するために使用されてはおらず、いずれの場合においても、ディスプレイ内の異なる要素についての情報またはデータのこれらの代わりのソースを用いてオペレータディスプレイ内でオブジェクトを動画化することは困難である。この事実は特に、通常、ディスプレイ上の2つのデバイスの間で繋げられている単純な線で示されているパイプの中の流体の流量、コンベヤベルト上の原材料の移動等の材料の流れの動画およびモデル化に関して当てはまる。さらに、現在、材料がプラントを通過するにつれて、流量状態と質量平衡等のプラント内部での特定の状態を検知する組織化された方法、つまりシステムレベルでこれらの機能を実行するためにそれほど容易に実現可能ではないシステムはない。
【0009】
同様に、シミュレーションアクティビティ(作業)は、通常、プロセスプラントのオンライン環境で実行される表示アクティビティおよび制御アクティビティとは別に実行されなければならないため、プロセスプラントまたはプロセスプラントの一部をセットアップする、あるいは作成することは困難な場合がある。またさらに、プラントのシミュレーションが作成される場合、このシミュレーションをオペレータディスプレイと、あるいはプラントの中で実現されている制御モジュールと統合することは、不可能ではなくとも困難である。
【課題を解決するための手段】
【0010】
プロセスプラントの構成を容易にするためのシステムが開示されている。該システムはプロセスグラフィックスエディタとプロセスモジュールエディタとを含み得る。プロセスグラフィックスエディタはプロセスプラント内の物理的なエンティティのグラフィック表現の作成および/または修正を容易にし得る。プロセスグラフィックスエディタを使用して作成されるおよび/または修正されるグラフィックス表現は、例えばワークステーションのモニタ上などディスプレイ装置で表示されてもよい。プロセスモジュールエディタはプロセスモジュールの作成および/または修正を容易にし得る。プロセスモジュールはプロセスプラント内の1つ以上の対応する物理的なエンティティを表す1つ以上の相互接続されるプロセスオブジェクトを含んでよい。プロセスモジュールの中のプロセスオブジェクトの0個、1個、以上がプロセスプラント内の物理的なエンティティのシミュレーション/モデル化動作のためのシミュレーション機能および/またはモデル化機能を含んでよい。
【0011】
該システムは、プロセスグラフィックスエディタとプロセスモジュールエディタに通信可能に結合されている監視プログラムモジュール(例えば監視プログラムアプリケーション)も含んでよい。監視プログラムモジュールが、プロセスグラフィックスエディタを使用してプロセスプラント内の物理エンティティのグラフィック表現に行われる変更を検知できる場合がある。このような変更の検知に応えて、監視プログラムモジュールはプロセスモジュールエディタに、もしあれば、プロセスモジュールに対応して、物理エンティティのグラフィック表現に対応する変更を加えるように指令を発し得る。
【0012】
選択的に、監視プログラムモジュールはプロセスモジュールエディタを使用してプロセスモジュールに対して加えられる変更を検知できる可能性がある。このような変更の検知に応えて、監視プログラムモジュールはプロセスグラフィックスエディタに、もしあれば、プロセスモジュールに対応して、物理エンティティのグラフィック表現に対応する変更を加えるように指令を発し得る。
【図面の簡単な説明】
【0013】
【図1】プロセスモジュールとグラフィックディスプレイを作成し、プロセスプラントの動作をシミュレーションするためにスマートプロセスオブジェクトを使用するディスプレイルーチンを実現するオペレータワークステーションを含む、プロセスプラント内に配置される分散プロセス制御ネットワークのブロック図である。
【図2】プロセスプラント内で強化された機能を実現するために使用され得る、図1のオペレータワークステーションに記憶されるスマートプロセスオブジェクトとプロセスモジュールを含む、アプリケーションと他のエンティティのセットの論理ブロック図である。
【図3】オブジェクトライブラリに記憶されているスマートプロセスオブジェクトを使用して、プロセスグラフィックスディスプレイまたはプロセスモジュールを作成するために構成エンジニアが使用する構成画面の簡略化された描写である。
【図4】多くのスマートプロセスオブジェクトのグラフィックディスプレイ要素を相互接続することにより作成される、プロセスプラント内のストリームと接続要素の描写を含む、プロセスグラフィックスディスプレイの一例の詳細な描写である。
【図5】プラントのさらに大きなグラフィックディスプレイに相互接続される、図4のプロセスグラフィックディスプレイを含む、最小化されたプロセスグラフィックディスプレイのセットを示す図である。
【図6】図4のプロセスグラフィックディスプレイと関連するプロセスモジュールの描写であり、ハイファイシミュレーションルーチンのそれとの相互接続も描く。
【図7A】プロセスプラント内で統合されるような、グラフィックディスプレイ、プロセスモジュール、および制御モジュール間の通信相互接続を描く論理ブロック図である。
【図7B】プロセスプラント内で統合されるような、グラフィックディスプレイ、プロセスモジュール、および制御モジュール間の通信相互接続を描く論理ブロック図である。
【図8】高度の制御機能とシミュレーション機能を提供するために制御モジュール内で機能ブロックとそのブロックが相互接続される例示的なプロセスモジュールの簡略化された描写である。
【図9】スマートプロセスオブジェクトを使用するプロセスモジュールが、いかにして既存のプロセス制御ネットワーク内で作成され、実現されてもよいのかの論理ブロック図である。
【図10】ライブラリ内のプロセスオブジェクトにアクセスするために使用できる例示的なディスプレイの一部である。
【図11】ディスプレイの左側部分のアイテムが選択された図10のディスプレイの一例である。
【図12】すでに作成されたプロセスモジュールをブラウジングするために使用され得るディスプレイの一例の一部である。
【図13】プロセスプラント内の特定のノードによって実行されるプロセスモジュールを割り当てるために使用できるディスプレイの一例の一部である。
【図14】プロセスモジュールを作成し、修正するためのエディタと関連する例示的なディスプレイである。
【図15】簡略なタンクに対応するプロセスモジュールの説明図である。
【図16A】プロセスモジュール内のプロセスオブジェクトのパラメータを修正することに関連するディスプレイの一例を示す図である。
【図16B】別のモジュール内の機能ブロックと、プロセスモジュール内のプロセスブロックのパラメータを関連付けるためのディスプレイの一例を示す図である。
【図17】プロセスモジュールの中に制御モジュールから自動的に引き入れられる特性、パラメータ、および/または測定の値の説明図である。
【図18】プロセスモジュール内のプロセスオブジェクトのために定義されていたモデルを示すためのディスプレイの一例である。
【図19】選択されたモデルの異なる特性/パラメータと関連するステップ応答を示すためのディスプレイの一例である。
【図20】ステップ応答を表示し、編集するためのディスプレイの一例である。
【図21】利得、不動作時間、一次時間制約、二次時間制約、およびリードタイム制約等のモデルのパラメータを修正するためのディスプレイの一例である。
【図22】初期状態および/またはモデルの定常状態までの時間を修正するために使用されてもよいディスプレイの一例である。
【図23】プロセスオブジェクトにより活用されるモデルのタイプを選択するためのディスプレイの一例である。
【図24】プロセスオブジェクトのモデル関連パラメータを表示するおよび/または編集するためのディスプレイの一例である。
【図25】左側部分の「ストリームとパラメータ」フォルダが選択された図24のディスプレイの一例である。
【図26】ユーザがステップ応答モデルにより活用されるパラメータを追加することを選択した図24のディスプレイの一例を描く。
【図27】それによりユーザが新しいモデルのテキスト記述等の新しいモデルに関する情報を追加できるようになる図24のディスプレイの一例を描く。
【図28】プロセスプロジェクトにより活用される第1の主要モデルを指定するためのディスプレイの一例である。
【図29】ストリームエレメントの特性を追加する、または修正するためのディスプレイの一例である。
【図30】パラメータの特性を追加する、または修正するためのディスプレイの一例である。
【図31】対応するプロセスグラフィックからプロセスモジュールを、および/または逆も同様に対応するプロセスモジュールからプロセスグラフィックを自動的に生成するために使用されてもよいシステムの一例のブロック図である。
【図32】プロセスモジュールの構成に役立てるために使用されてもよいディスプレイの一例である。
【発明を実施するための形態】
【0014】
図1を参照すると、スマートプロセスオブジェクトがプラント環境の中で強化された制御とシミュレーションを提供するために、ともに制御モジュールと統合されてもよいプロセスグラフィックディスプレイとプロセスモジュールを形成するために使用されるプロセスプラント10の一例が詳細に描かれている。特に、プロセスプラント10は、各々が、例えばFieldbusインタフェース、Profitbusインタフェース、HARTインタフェース、標準4−20maインタフェース等であってもよい、入力/出力(I/O)装置またはカード18を介して1台以上のフィールドデバイス14および16に接続されている、1台以上のコントローラ12を有する分散プロセス制御システムを使用している。コントローラ12は、例えばイーサネット(登録商標)リンクであってもよいデータハイウェイ24を介して、1つ以上のホストワークステーションまたはオペレータワークステーション20と22にも結合されている。データベース28はデータハイウェイ24に接続されてよく、パラメータ、ステータス、およびプラント10内のコントローラおよびフィールドデバイスと関連付けられている他のデータを収集し、記憶するデータヒストリアンとして、およびコントローラ12およびフィールドデバイス14と16にダウンロードされ、それらの中に記憶されるようなプラント10の中のプロセス制御システムの現在の構成を記憶する構成データベースとして動作する。コントローラ12、I/Oカード18およびフィールドデバイス14と16は、通常、場合により厳しいプラント環境の中で下方におよびプラント環境全体に位置しているが、オペレータワークステーション20と22およびデータベース28は通常コントロールルーム内、あるいはコントローラまたは保守人員が容易に評価できる他のあまり厳しくない環境に配置される。
【0015】
公知のように、一例としてエマーソンプロセスマネジメント(Emerson Process Management)によって販売されているDeltaV(登録商標)コントローラであってもよいコントローラ12の各々は、任意の数の異なった、個別に実行される制御モジュールまたはブロック29を使用して制御戦略を実現するコントローラアプリケーションを記憶し、実行する。制御モジュール29の各々は、一般的に機能ブロックと呼ばれているものから構成することができ、各機能ブロックは全体的な制御ルーチンの一部つまりサブルーチンであり、プロセスプラント10の中でプロセス制御ループを実現するために(リンクと呼ばれる通信を介して)他の機能ブロックと連動して動作する。周知のように、オブジェクト指向プログラミングプロトコル内でオブジェクトであってもよい機能ブロックは、通常、送信機、センサ、または他のプロセスパラメータ測定装置と関連付けられているもの等の入力機能、PID、ファジー論理当制御を実行する制御ルーチンと関連付けられているもの等の制御機能、またはプロセスプラント10内でなんらかの物理的な機能を実行するためにバルブ等の何らかのデバイスの動作を制御する出力機能の内の1つを実行する。言うまでもなく、モデル予測コントローラ(MPC)、オプティマイザ等のハイブリッドタイプおよび他のタイプの複雑な機能ブロックが存在する。FieldbusプロトコルおよびDeltaV(登録商標)システムプロトコルは、オブジェクト指向プログラミングプロトコルで設計され、実現される制御モジュールと機能ブロックを使用する一方で、制御モジュールは例えば順次機能ブロック、ラダー論理回路等を含む任意の所望の制御プログラミングスキームを使用して設計することができ、機能ブロックまたは任意の他の特定のプログラミング技法を使用して設計され、実現されることに制限されるものではない。
【0016】
図1に描かれているプラント10では、コントローラ12に接続されているフィールドデバイス14と16は標準4−20maデバイスであってよく、プロセッサとメモリを含む、あるいは他の任意の所望のタイプのデバイスであってもよい、HART(登録商標)、Profitbus(登録商標)、またはFOUNDATION(登録商標)Fieldbusフィールドデバイス等のスマートフィールドデバイスであってもよい。(図1で参照番号16を付与されている)Fieldbus(登録商標)フィールドデバイス等のこれらデバイスのいくつかは、コントローラ12内で実現される制御戦略と関連付けられる、機能ブロック等のモジュールまたはサブモジュールを記憶し、実行してもよい。図1にFieldbus(登録商標)デバイス16の2台の異なるデバイスの中に配置されるものとして図1に描かれている機能ブロック30は、周知のようにプロセス制御を実現するためにコントローラ12の中で制御モジュール29の実行と関連して実行されてもよい。言うまでもなく、フィールドデバイス14と16はセンサ、バルブ、送信機、ポジショナ等の任意のタイプのデバイスであってよく、I/Oデバイス18はHART(登録商標)、Fieldbus(登録商標)、Profitbus(登録商標)等の任意の所望の通信プロトコルまたはコントローラプロトコルに準拠する任意のタイプのI/Oデバイスであってもよい。
【0017】
図1のプロセスプラント10では、ワークステーション20は、プロセスプラント10の中で接続されているデバイス、装置等に関して機能を表示して、提供するために(他のタイプのユーザもユーザタイプについてカスタマイズされたディスプレイ層と関連して本明細書に後述されるように存在してもよいが、本明細書では構成エンジニアおよびオペレータと呼ばれることもある)任意の許可されたユーザがアクセスできるオペレータインタフェースアプリケーションおよび他のデータ構造32の一組を含む。該一組のオペレータインタフェースアプリケーション32は、ワークステーション20のメモリ34に記憶され、一組のアプリケーション32の中のアプリケーションまたはエンティティの各々はワークステーション20と関連するプロセッサ36で実行されるように適応される。一組のアプリケーション32全体がワークステーション20に記憶されているものとして描かれているが、これらのアプリケーションまたは他のエンティティのいくつかはプラント10の中の、またはプラント10に関連付けられた他のワークステーションまたはコンピュータデバイスに記憶され、実行されるであろう。さらに、一組のアプリケーションはワークステーション20と関連付けられているディスプレイ画面37に、または携帯端末、ラップトップコンピュータ、他のワークステーション、プリンタ等を含む他の所望のディスプレイ画面またはディスプレイ装置にディスプレイ出力を提供できる。同様に、一組のアプリケーション32の中のアプリケーションは分割され、2台以上のコンピュータまたは機械上で実行されてよく、相互に連動して動作するように構成されてもよい。
【0018】
一般的に、一組のアプリケーション32によって、3つの異なるタイプのエンティティの作成と使用が可能になり、その動作は、強化された制御機能、シミュレーション機能および表示機能をプロセスプラント10の中で提供するためにともに統合されてもよい。より詳細には、一組のアプリケーション32は(一般的にはプロセスプラントの一部に関するオペレータディスプレイを提供する)プロセスグラフィックディスプレイ35、(一般的にはプロセスプラントの一部のシミュレーションを提供する)プロセスモジュール39、および一般的にはプロセスのオンライン制御を提供または実行する、制御モジュール29等のプロセス制御モジュールを作成し、実現するために使用されてもよい。プロセス制御モジュール29は概して技術で周知であり、機能ブロック制御モジュール等の任意のタイプの制御モジュールを含んでよい。より詳細に後述されるプロセスグラフィックディスプレイ要素35は、オペレータ等のユーザに、プロセスプラントおよびその中の要素の動作、構成またはセットアップについての情報を提供するために、一般的にはオペレータ、エンジニアまたは他のディスプレイによって使用される要素である。プロセスモジュール39は、通常プロセスグラフィックディスプレイ要素35に密接に結び付けられ、プロセスプラントの、あるいはプロセスグラフィックディスプレイ35に描かれている方法で接続されているその中の異なる要素のいくつかの動作のシミュレーションを実行するために使用されてもよい。プロセスグラフィックディスプレイ35およびプロセスモジュール39は、ラップトップ型コンピュータ、携帯端末等を含む、プロセス制御プラント10に関連付けられている任意の他のコンピュータにダウンロードされ、その中で実行できるであろうが、プロセスグラフィックディスプレイ35およびプロセスモジュール39は、ワークステーション20と22に記憶され、それらによって実行されるものとして描かれている。
【0019】
図2は、ワークステーション20の一組のアプリケーション32の中のアプリケーションとデータ構造または他のエンティティのいくつかを示している。特に、一組のアプリケーション32は制御モジュール、プロセスモジュール、および制御モジュール、(プロセスフローモジュールとも呼ばれる)プロセスモジュール、および関連グラフィックディスプレイを作成するために構成エンジニアによって使用されるグラフィックディスプレイ構成アプリケーション38を含む。制御モジュール構成アプリケーション38は任意の標準的な、または公知の制御モジュール構成アプリケーションであってもよいが、プロセスモジュールおよびグラフィックディスプレイ構成アプリケーション(複数の場合がある)は1つ以上のスマートプロセスオブジェクトを使用してプロセスモジュールおよびグラフィックディスプレイを作成してよく、その性質がより詳細に後述されるであろう。またさらに、プロセスモジュールおよびプロセスグラフィック構成アプリケーション38は個別に示される一方、1つの構成アプリケーションはこれらのタイプの要素の両方ともを作成可能とする。
【0020】
スマートプロセスオブジェクト42のライブラリ40は、プロセスモジュール39およびグラフィックディスプレイ35を作成するために構成アプリケーション38によってアクセスされ、コピーされ、使用され得る例すなわちテンプレートのスマートプロセスオブジェクト42を含む。理解されるように、構成アプリケーション38は、1つ以上のプロセスモジュール39を作成するために使用されてよく、その各々は1つ以上のスマートプロセスオブジェクト42から構成されるあるいは作成され、プロセスモジュールメモリ46に記憶されている1つ以上のプロセスフローまたはシミュレーションアルゴリズム45を含んでよい。さらに、構成アプリケーション38は、1つ以上のグラフィックディスプレイ35を作成するために使用されてよく、その各々は1つ以上のスマートプロセスオブジェクト42から構成される、あるいは作成され、ともに接続されている任意の数のディスプレイ要素を含んでよい。グラフィックディスプレイ35bの内の1つは拡大された形式で図2に描かれており、パイプ、導管、電力ケーブル、コンベヤ等であってもよい接続要素によって相互接続されている、バルブ、タンク、センサおよびフロートランスミッタ等のプロセス要素の集合の描写を含む。
【0021】
実行エンジン48は、グラフィックディスプレイ35によって定義されるようにオペレータ向けの1つ以上のプロセスディスプレイを作成するために、およびプロセスモジュール39と関連付けられるシミュレーション機能を実現するために実行時中にグラフィックディスプレイ35とプロセスモジュール39の各々を操作するまたは実現する。実行エンジン48は、全体をプロセスモジュール39で実現される論理、および特にそれらのモジュールの中のスマートプロセスオブジェクトを定義する規則データベース50を使用してもよい。実行エンジン48は、プロセスモジュール39の機能を実現するためにプロセスモジュール39の中のみではなく、プラント10の中でもプロセス要素間の接続を定義する接続マトリクス52を使用してもよい。
【0022】
図2は、より詳細にスマートプロセスオブジェクト42eの内の1つを示している。スマートプロセスオブジェクト42eはテンプレートスマートプロセスオブジェクトの内の1つであるとして描かれているが、他のスマートプロセスオブジェクトが概して、スマートプロセスオブジェクト42eに関して説明されているように、同じ、または類似する要素、特長、パラメータ等を含むこと、およびこれらの要素、特長およびパラメータの詳細または値がそのスマートプロセスオブジェクトの性質と用途に応じて、スマートプロセスオブジェクトごとに変更、または変えられてもよいことが理解されるであろう。さらに、スマートプロセスオブジェクト42eはオブジェクト指向プログラミング環境の中のオブジェクトであってよく、したがってデータストア、入力と出力、およびそれと関連付けられるメソッドを含んでよい一方、このスマートプロセスオブジェクトは任意の他の所望のプログラミングパラダイムまたはプロトコルによって作成され、その中で実現されてもよい。
【0023】
理解されるように、インスタンスを作成される前のスマートプロセスオブジェクト42eは、図1のプロセスプラント10の中の物理エンティティまたは論理エンティティ等のある特定のタイプのエンティティと関連付けられているオブジェクトである。しかしながら、コピーされ、インスタンスを作成された後、スマートプロセスオブジェクト42eはプロセスプラントの中のある特定のエンティティに結び付けられてもよい。いずれの場合においても、スマートプロセスオブジェクト42eは、スマートプロセスオブジェクト42eが結び付けられている論理エンティティから受信され、あるいは論理エンティティに関するデータを記憶するために使用されるスマートプロセスデータストア53を含む。データストア53は、製造メーカ、改訂、名称、種別等の、スマートプロセスオブジェクト42eが関連するエンティティについての一般的な情報または恒久的な情報を記憶するデータストア53aを含む。データストア53bは、パラメータデータ、ステータスデータ、入力データと出力データ、コスト、またはそれがプロセスプラント10の中に過去に存在したとき、または現在存在しているときの、エンティティと関連付けられるデータを含む、スマートプロセスオブジェクト42eが関連するエンティティについての他のデータ等の可変データまたは変化するデータを記憶してもよい。言うまでもなく、スマートプロセスオブジェクト42eは、任意の所望の通信リンクを介してエンティティ自体から、イーサネット(登録商標)バス24を介してヒストリアン28から、または任意の他の所望の方法で、周期的に、または非周期的にこのデータ(例えばコストデータ)を受信するように構成、あるいはプログラミングされてもよい。データストア53cは、スマートプロセスオブジェクト42eが関連し、図1のワークステーション20と関連付けられている画面37等の、オペレータインタフェースを介してオペレータへの実際のディスプレイのために使用されるエンティティのグラフィック表現を記憶してもよい。言うまでもなく、グラフィック表現は、パラメータによって定義される情報、またはデータストア53bに記憶されるようなエンティティについての他の可変データ等のエンティティについての情報のプレースホルダ(データストア53c内で下線により記される)を含んでよい。このパラメータデータは、ディスプレイ装置37上でグラフィックディスプレイ35の内の1つの一部としてオペレータに提示されるとき、グラフィックプレースホルダに表示されてもよい。グラフィック表現(およびスマートプロセスオブジェクト42e)は、オペレータまたは構成エンジニアが、グラフィック表現によって描かれているように、プロセス要素に上流または下流の構成要素を取り付けることが可能となる(データストア53cの中で「X」で記される)所定の接続点も含んでよい。言うまでもなく、これらの接続点により、スマートプロセスオブジェクト42eは、プロセスモジュール内で構成されるものとしてそのスマートオブジェクトに接続される要素を認識することも可能となり、パイプ、ダクト等、その要素等に関連付けられるストリーム等、使用されなければならないひとつのタイプの接続要素を指定してもよい。
【0024】
データストア53cは、選択的に複数のグラフィック表現を記憶してもよい。例えば、異なるグラフィック表現はエンジニアリングビュー、保守ビュー、オペレータビュー、管理者ビュー、トレーナービュー、練習生ビュー等の異なるビューに対応してもよい。特定のグラフィック表現は、例えば特定のビューのためにグラフィックディスプレイを作成する際に活用されてもよい。グラフィック表現を作成するためのシステムおよび方法の一例は、「プロセス構成および制御環境へのグラフィックスの統合(GRAPHICS INTEGRATION INTO A PROCESS CONFIGURATION AND CONTROL ENVIRONMENT)」(代理人整理番号第06005/41116号)と題される一般的に所有されている出願に説明されている。言うまでもなく、グラフィック表現を作成するための他の適切なシステムおよび方法も使用できる。
【0025】
スマートプロセスオブジェクト42eは、スマートプロセスオブジェクト42eが使用されるプロセスモジュールの内部または外部で他のスマートプロセスオブジェクトとの通信を可能にするために1つ以上の入力54および出力56も含んでよい。他のスマートプロセスオブジェクトへの入力54と出力56の接続は、他のスマートプロセスオブジェクトをこれらの入力と出力に単に接続することにより、あるいはスマートプロセスオブジェクト間で発生しなければならない特定の通信を指定することにより、プロセスモジュールの構成中に構成エンジニアによって構成されてもよい。これらの入力と出力のいくつかは、前述されたようにスマートプロセスオブジェクトのための所定の接続ポイントでスマートプロセスオブジェクトに接続されるものとして定義されてもよい。これらの入力54と出力56は、規則データベース50内の一組の規則およびプラント10の中の異なるデバイスまたはエンティティの間で接続を定義する接続マトリクス52によって決定または定義されてもよい。それらと関連付けられているデータストアまたはバッファを含む入力54と出力56は、一般的に、他のスマートプロセスオブジェクトからスマートプロセスオブジェクト42eにデータの通信を提供するために、あるいはスマートプロセスオブジェクト42eの中に記憶され、あるいはスマートプロセスオブジェクト42eによって生成されるデータの通信を他のスマートプロセスオブジェクトに提供するために使用される。これらの入力および出力は、スマートプロセスオブジェクト42eと、コントローラ12、フィールドデバイス14、16等の中の制御モジュール等のプロセス制御システム内の他のオブジェクトとの間で通信を提供するために使用されてもよい。
【0026】
図2に描かれているように、スマートプロセスオブジェクト42eは、スマートプロセスオブジェクト42eが使用されるプロセスモジュールの実行中にスマートプロセスオブジェクト42eによって実現されるアルゴリズムであってもよい(図2でメソッド60a、60b、および60cとして描かれている)0個、1個以上個のメソッド60を記憶するために使用されるメソッド記憶装置58も含む。一般的に、メソッド記憶装置58に記憶されているメソッド60は、プロセスプラント10またはプラント10内のエンティティについての情報を突き止めるために、データ記憶部分53aと53bの中に記憶されているデータ、および他のスマートプロセスオブジェクトから取得されるデータ、または入力54と出力56を介して構成データベースまたはヒストリアン28等の他のソースからのデータも使用する。例えば、メソッド60はスマートプロセスオブジェクト42eによって定義されるエンティティと関連付けられる質が劣るまたは不良の動作状態、プロセスプラント10の中のそのまたは他のエンティティと関連付けられるエラー等を決定してもよい。メソッド60は、スマートプロセスオブジェクトのタイプまたはクラスに基づいて事前に設定または提供されてよく、毎回スマートプロセスオブジェクト42eが実行時中に実行エンジン48の中で実行されるたびに実行されるであろう。スマートプロセスオブジェクト42e等のスマートプロセスオブジェクトの中で提供されてもよいいくつかの例示的なメソッド60は漏れ、デッドバンド、不動作時間、移動、可変、状態監視、コスト計算、またはエンティティと関連付けられる他の状態を検知することを含む。
【0027】
メソッド60は、そのプロセスエンティティを通って流れる材料に関してスマートプロセスオブジェクトと関連付けられるプロセスエンティティの動作をシミュレーションする上で役立てるめに提供されてもよい。このようにして、メソッド60は、要素の動作をシミュレーションし、提供されている入力に基づいて予想出力を計算するために、質量平衡、エネルギーバランス、流量、温度、組成、蒸気状態、およびプラント10の中で材料と関連付けられる他のシステムレベルまたはストリームレベルのパラメータを計算するために提供されてもよい。言うまでもなく、これらはスマートプロセスオブジェクト42eに記憶され、それによって実行できるメソッドの内の数個に過ぎず、使用され得る他の多くのメソッドがあり、このようなメソッドは、通常表現されているエンティティのタイプ、他の要因のみではなく、そのエンティティがプロセスプラント内でどのように接続され、使用されるのかによっても決定されている。スマートプロセスオブジェクト42eがシステムレベルの状態、エラー等を検知するメソッドを記憶し、実行してもよい一方、これらのメソッドはプロセス制御モジュールとループ等のデバイス、論理要素、および他の非システムレベルエンティティについての他の情報を決定するために使用されてもよいことに留意することが重要である。所望の場合、メソッド60は、C、C++、C#等の任意の所望のプログラミング言語でプログラミング、または提供されてもよいか、あるいは実行中にスマートプロセスオブジェクト42eのために実行されなければならない規則データベース50の中で適用可能な規則に参照、あるいは適用可能な規則を定義してもよい。
【0028】
所望の場合、各スマートプロセスオブジェクトは、プロセスモジュール内で接続される場合にスマートプロセスオブジェクトのシミュレーション動作を定義するために使用されてもよい適用可能なアルゴリズムまたはメソッドのライブラリを含んでよい。このようなライブラリは図2のスマートプロセスオブジェクト42eのためのプルダウンメニュー61に描かれており、類似するメニューは各々の他のスマートプロセスオブジェクトと関連付けられてもよい。構成エンジニアは、このスマートプロセスオブジェクトが、例えばプルダウンメニュー61を介して(メソッド1、メソッド2等と呼ばれている)シミュレーションアルゴリズムのライブラリの内の1つを選択することによりプロセスモジュール39に格納される場合にスマートプロセスオブジェクトのシミュレーション動作を定義してもよい。このようにして、構成エンジニアは、スマートプロセスオブジェクトがモデル化するために使用されているプロセスのタイプまたは性質に依存しているスマートプロセスオブジェクトのために異なるシミュレーション動作を定義してもよい。
【0029】
所望の場合、構成エンジニアは、スマートプロセスブロックによって定義されるプロセス要素のシミュレーション動作を定義するために、代わりに独自仕様のアルゴリズムまたは他のユーザによって供給されたアルゴリズムを使用してもよい。(プルダウンメニュー61で「ユーザ定義」エントリとして描かれている)このようなユーザによって定義されたアルゴリズムは、そのスマートプロセスオブジェクトがプロセスモジュール39の中に格納されるか、あるいはその中で使用される場合にスマートプロセスオブジェクトに提供され、その中に記憶されてもよい。この機能により、ユーザはシミュレーション動作をカスタマイズし、それによりさらに優れた、またはさらに正確なシミュレーションを提供できる。所望の場合、およびさらに詳しく後述されるように、スマートプロセスオブジェクト42eまたは各プロセスモジュール39は、スマートプロセスオブジェクト内のシミュレーションアルゴリズムの使用を無効にし、代わりにプロセスモジュールの動作を、HYSYS(登録商標)によって提供されるもの等のハイファイシミュレーションパッケージまたはプログラムによって決定させる(電子スイッチまたはフラグ等の)オペレータが作動可能なスイッチを含んでよい。このケースでは、スマートプロセスオブジェクトまたはプロセスモジュールは、スマートプロセスオブジェクト自体の中でシミュレーションアルゴリズムを使用することと対照的にハイファイシミュレーションからシミュレーションによるパラメータデータを取得する。
【0030】
グラフィックディスプレイ35またはプロセスモジュール39の実行エンジン48による実行中、エンジン48は、グラフィックディスプレイ35またはプロセスモジュール39内のスマートプロセスオブジェクトの各々に入力54と出力56によって定義される通信を実現し、メソッド60によって提供される機能を実行するために、それらのオブジェクトの各々にメソッド60を実現してもよい。上記に注記されたように、メソッド60の機能はスマートプロセスオブジェクトの中のプログラミングに位置してもよいか、あるいはそれらの規則によって定義される機能を実現するために、スマートプロセスオブジェクトのタイプ、クラス、識別、タグ名等に基づいて、エンジン48が実行する規則データベース50内の一組の規則によって定義されてもよい。
【0031】
スマートプロセスオブジェクト42eのインスタンスが、スマートプロセスオブジェクト42eが関連付けられるプロセスモジュールの関連でタグまたは一意の名前を有しており、このタグまたは一意の名前がスマートプロセスオブジェクト42eへ、およびスマートプロセスオブジェクト42eから通信を提供するために使用されてよく、実行時中に実行エンジン48によって参照されてもよいことを注記されたい。プロセスモジュールタグは制御システム構成の中で一意でなければならない。このタグ付け規約により、プロセスモジュール39の中の要素は、プロセスグラフィックディスプレイ35、プロセスモジュール39、および制御モジュール29の他の中の要素によっても参照できる。またさらに、スマートプロセスオブジェクト42eのパラメータは単純な値のような単純なパラメータ、構造化されたパラメータ、または予想される装置とそれと関連付けられている属性を知っているスマートパラメータである場合がある。スマートパラメータは、すべての信号が同じ装置内で送信されているか、あるいは適切に変換されていることを保証するために、プロセス規則エンジンまたは実行エンジン48によって解釈、使用できる。スマート規則は、オペレータ向けのスマートアラーム戦略および/またはインタフェースを作成するためにスマートプロセスオブジェクト(またはプロセスモジュール)のためのアラームのグループをオンにし、オフにするために使用することもできる。またさらに、スマートプロセスオブジェクトクラスは、スマートプロセスオブジェクトと、それが解釈またはアクセスする必要のあるプロセス変数との間の公知のリンケージを提供するために、プラント10のプロセス制御戦略の中で装置とモジュールクラスと関連付けることができる。
【0032】
スマートプロセスオブジェクトは、プロセスグラフィックディスプレイまたはプロセスモジュールの中で使用されるとき、これらのスマートオブジェクトがオフモード、起動モード、および通常モード等の実行時中の異なるモードにされてもよいように動作モード、ステータス、アラーム動作も含んでよく、その現在の動作状態に基づいてオブジェクトと関連付けられるステータスを提供してよく、パラメータ範囲外、限定、高可変性等の検知された状態に基づいてアラームを提供してもよい。スマートプロセスオブジェクトは、それらをクラスライブラリで分類する、複合構造でともに収集する等を行うことが可能となるクラス/サブクラス階層も有してもよい。さらに、スマートプロセスオブジェクトは、スマートプロセスオブジェクトが、その関連エンティティがいつビジーなのか、あるいは例えばプラント10内でバッチ制御プロセスによっていつ取得されるのかを認識可能とするために、制御モジュールおよび他のオブジェクト等の他の要素からの情報を活用してもよい。
【0033】
スマートプロセスオブジェクトは、ポンプ、タンク、バルブ等の物理装置、あるいはプロセス領域、測定、またはアクチュエータ、制御戦略等の論理エンティティ等の任意の所望のプロセスエンティティと関連付けられてもよい。いくつかのケースでは、スマートプロセスオブジェクトは、コネクタ、このような配管、導管、配線、コンベヤ、あるいは材料、電気、ガス等をプロセスの中のある点から別の点へ移動する任意の他のデバイスまたはエンティティと関連付けられてもよい。本明細書ではスマートリンクまたはコネクタ要素と呼ばれることもあるコネクタと関連付けられているスマートプロセスオブジェクトには(実際のデバイスまたはコネクタ自体にタグが付けられていない、あるいはプロセスプラント10内で通信できない場合でも)タグも付けられ、一般的にはプロセスの中の他の要素間の材料の流れを表すために使用される。
【0034】
スマートリンクは、異なる材料または現象(電気等)がいかにして接続(例えば、蒸気、電気、水、汚水等)を通って流れるのかを定義する特性またはパラメータを含む。これらのパラメータは、コネクタを通る流れ(一般的な速度、摩擦係数、乱流または非乱流、電磁のような流れのタイプ等)のタイプと性質およびコネクタを通る流れの考えられる1つ以上の方向を示し得る。スマートリンクは、スマートリンクが接続するソースおよび宛先オブジェクトの単位が一致することを保証するプログラミングまたはメソッドを含んでよく、一致しない場合には変換を実行してもよい。スマートリンクのメソッドは、実際のコネクタを通る流れの速度または性質、物理的な接続の長さとサイズ、トランスポート遅延等を推定するためにモデルまたはアルゴリズムを使用してコネクタを通る流れをモデル化してもよい。(摩擦パラメータ等の)スマートプロセスオブジェクトのために記憶されているパラメータがこれらのメソッドで使用されてもよい。したがって、本質的には、スマートリンクまたはコネクタ要素は、スマートプロセスオブジェクトが他の上流オブジェクトと下流オブジェクトまたはエンティティを認識できるようにする。スマートリンクが、例えば他のオブジェクトとの間の接続、システム内の液体、ガス、電気等の流体のタイプ、他のエンティティがこのスマートプロセスオブジェクトのエンティティの上流および下流にあるエンティティの上流側と下流側、任意の所望の、または便宜的な材料、流体、電流等の方向を定義してもよいことは言うまでもない。一実施形態では、実質的にはプロセスフローモジュールの実行の前に行列52が作成されてよく、プラント内の異なるデバイス間の相互接続をスマートリンクのために、したがって異なるスマートプロセスオブジェクト間の相互接続を定義してもよい。つまり、実行エンジン48は上流エンティティと下流エンティティを確定し、それによりスマートプロセスオブジェクト及びスマートプロセスオブジェクトと関連付けられるメソッドの間の通信を定義するために行列52を使用してもよい。またさらに、一組以上の規則が、スマートプロセスオブジェクト内のメソッドについて必要に応じて相互に反応し合うため、および必要に応じて相互にデータを取得するためにスマートプロセスオブジェクトによって使用されるために、ならびに出力接続と関連付けられるスマートオブジェクトの影響を解消するために提供されてもよい。
【0035】
所望の場合、スマートプロセスオブジェクト42eは、オブジェクトのタイプに適用可能であってよく、あるいはスマートプロセスオブジェクト42eが関連するデバイスの(臨界および用途に応じて)インスタンスに特化された重要な文書に対するURL等のホットリンクも含んでよい。該文書はユーザに特定のものであってもよいのみではなくベンダによって供給されてもよい。文書のいくつかの例は、構成、起動、および停止の手順、操作と保守の文書を含む。所望の場合、オペレータはオブジェクトまたは関連デバイスのためにインスタンスに特化した(存在する場合)総称的な文書を立ち上げるためにオペレータディスプレイに表示されるようにオブジェクトをクリックしてもよい。また、オペレータは、システムソフトウェアに関係なく、保守要求、操作上の問題の記録等の文書を追加/削除/変更できることがある。さらに、これらのホットリンクは、オペレータインタフェースの中のオブジェクトに知識リンクを追加する能力を提供するため、オブジェクトに関連する適切な情報へのクイックナビゲーションに備えるため、およびカスタマに特化したオブジェクトタイプに、またはオブジェクトに特化したインスタンスに特定の作業指示書を追加する能力を提供するために、ユーザによって設定可能または変更可能であってもよい。
【0036】
プロセスモジュールおよびプロセスグラフィックスは異なるスマートプロセスオブジェクトの相互接続によりともに作成されるものとして前述されているが、それらは個別に作成されてもよい。例えば、プロセスグラフィックはスマートプロセスオブジェクトを使用して作成されてよく、完了時、そのグラフィックのためのプロセスモジュールはグラフィックディスプレイの中のグラフィックス要素およびそれらの相互接続に基づいて生成されてもよい。代わりに、プロセスモジュールはスマートプロセスオブジェクトを使用して最初に作成されてよく、いったん作成されると、そのプロセスモジュールのためのグラフィックディスプレイはプロセスモジュールを作成するために使用されるスマートプロセスオブジェクト内のグラフィックディスプレイ要素を使用して構成アプリケーション38によって自動的に生成されてもよい。またさらに、プロセスモジュールとグラフィックディスプレイは個別に作成されてよく、これら2つのエンティティの中の個々の要素は相互に参照する(例えば、グラフィックディスプレイとプロセスモジュールの中の要素のタグ特性を使用する)ことにより手動でともに結び付けられてもよい。この機構を通じて、スマートプロセスオブジェクトは複数のディスプレイによって参照され得る。いずれの場合においても、いったん作成されると、プロセスグラフィックディスプレイおよび関連付けられるプロセスモジュールは、それらは所望によりまたは必要に応じてパラメータと情報を相互に通信するが、無関係にまたは個別に実行されてもよい。
【0037】
より包括的にするため、プロセスグラフィックディスプレイとプロセスモジュール内で、あるいはプロセスグラフィックディスプレイとプロセスモジュールを作成するために使用されてもよいスマートプロセスオブジェクトの特定の考えられる機能および例が、より詳細に後述されるであろう。その後、説明される要素と特長を使用して作成されるプロセスグラフィックディスプレイとプロセスモジュールが高度な制御機能とシミュレーション機能を提供するために制御モジュールとどのように統合されてもよいのかが説明される。言うまでもなく、スマートプロセスオブジェクト要素と特長が本明細書に説明されている要素および特長に制限されず、他の特長および要素が、そのように望まれる場合には、プロセスグラフィックディスプレイとプロセスモジュールの内の1つまたは両方の中で使用できる、あるいはプロセスグラフィックディスプレイとプロセスモジュールの内の1つまたは両方を作成するために使用できることが理解されるであろう。
【0038】
一般的に、所定のグラフィックス要素のセットが、ユーザがプロセスプラントを反映するオペレータディスプレイまたはグラフィックディスプレイを構築可能とするために構成アプリケーションに設けられてもよい。これらのグラフィックス要素はオンライン測定および制御システムと接続するアクチュエータを動的に示すことを目的とする。さらに、プロセス動作を反映する未測定のパラメータは、プロセスモジュールで提供されるオンラインプロセスシミュレーションを使用して計算されてもよく、関連グラフィックディスプレイの一体化した部分として示されてもよい。
【0039】
さらに、エンジニアリングまたはトレーニングシミュレーションのために使用されるオフライン環境では、プロセスモジュールによって提供されるプロセスシミュレーションは、グラフィックス要素の中のプロセス測定値の代わりに、および関連付けられた制御モジュールの中で使用されてもよい。関連付けられたプロセスモジュールによって計算されるこれらの値は、プロセスグラフィックスに描かれている手動外乱値のみではなくアクチュエータ位置または状態にも基づいてもよい。このようにして、グラフィックディスプレイと制御モジュールは、オンライン、つまり制御状況と、オフライン、つまりシミュレーション状況の両方で使用されてもよい。また、グラフィックス要素の静的な部分は多くのケースでは公知のグラフィックスライブラリに含まれている三次元成分と同様に表示されるが、これらのグラフィックス要素の追加の一意の特長またはプロパティ、これらの要素とともに表示される情報、および制御システムI/Oおよびプロセスシミュレーションモジュールへのリンクは、多くのグラフィックス要素の考えられるタイプと例に関して前述される。
【0040】
一般的に、スマートプロセスオブジェクトと関連付けられるプロセスモジュールの中のグラフィックス要素とシミュレーションアルゴリズムは、ストリーム要素、プロセス接続要素、アクチュエータ要素、処理要素、測定要素および推定プロパティ要素を含む多くの異なるタイプのプロセス要素の内の1つに該当する。一般的に、ストリーム要素はプロセスプラント内での材料のストリームを定義し、組成、密度、流量、温度、圧力、重量、および/または該材料の流れを定義する任意の他のパラメータを示すためにグラフィックディスプレイに露呈されてもよい。ストリーム要素はプロセスモジュールの入力時に定義され、プロセスモジュールの中の要素に提供され、それによりプロセスモジュールを通過する材料のストリームをモデル化し、グラフィックディスプレイに描くことをできるようにしてもよい。同様に、ストリーム要素は、グラフィックディスプレイの中で、グラフィックディスプレイにより描かれるプロセスプラントの部分の材料出力を描くためにプロセスモジュールの出力時または最後に描かれてもよい。ストリーム要素は、異なるグラフィックディスプレイ(および関連プロセスモジュール)が相互にいかにして接続しているのかを定義するためにも使用されてもよい。例えば、あるプロセスモジュールの出力ストリームは別のプロセスモジュールの入力ストリームであってよく、他のプロセスモジュールの入力ストリームで使用される値を指定してもよい。ストリームは以下の4つの部分、つまり(pHストリーム等の)名前、(流れ入力等の)方向、(流量、圧力、温度等の)測定値、および(窒素、アンモニア等の)組成を含んでよい。ただし、ストリームはそのように所望の場合他のパーツまたはパラメータを有することができるであろう。
【0041】
プロセス接続要素は、固形物、液体または蒸気、および気体等のプロセスの内部の物質があるデバイスから別のデバイスへいかにして送達または搬送されるのかを定義する。プロセスを通過する材料の流れを明確に描くために、パイプ、ダクト、およびコンベヤを含む三種類の異なったタイプのプロセス接続が使用されてもよい。電気化学プロセス等における電力潮流をアドレス指定するための電気ケーブル等の)他の接続要素も使用されてもよいことは言うまでもない。配管は、通常、液体および高圧蒸気またはプラント内での気体の流れを描くために使用される。一般的にダクトはプラント内の低圧ガスの流れを描く(そしてシミュレーションする)ために使用される。一般的にコンベヤは処理装置間での固形物の移動を描く(そしてシミュレーションする)ために使用される。その結果として、各プロセス接続要素は、パイプ接続、ダクト接続、またはデバイスの入力または出力時に材料を提供するために使用されるコンベヤ接続等の接続のタイプを定義する。
【0042】
所望の場合、接続により移送されている材料の特性は上流入力により決定される。接続が完了したか否かを定義する接続ステータス変数が加えられるこの情報は、グラフィックディスプレイ上で接続要素の特性として利用できるようにされてもよい。接続要素は処理要素出力、アクチュエータ要素出力またはストリーム要素出力で開始してもよい。同様に、接続要素は処理要素入力、アクチュエータ要素入力またはストリーム入力時に終了してもよい。
【0043】
接続要素の特性は、カーソルがグラフィックディスプレイの接続要素上に置かれると自動的に表示されてもよい。また、接続要素と関連付けられている特性は接続要素の上に(下記に定義される)測定要素または推定特性要素を置くことにより恒久的なディスプレイに表示されてもよい。所望の場合、接続要素は(ストリーム出力、処理要素出力またはアクチュエータ要素出力等の)要素出力上で左マウスボタンを押し続け、マウスのボタンを押し続ける間にカーソルを要素入力上に配置することにより作成されてもよい。接続が無事に確立されるために、上流要素と下流要素の入力タイプと出力タイプ(パイプ、ダクト、またはコンベヤ)は一致しなければならない。接続は上流要素のタイプを自動的に取る。
【0044】
所望の場合、配管要素はパイプ接続のようなプロセスグラフィックディスプレイに示され、あるいは描くことができ、ダクト要素(例えば空気またはガス)はダクトとして示すことができ、コンベヤ要素はコンベヤベルトとして示されてもよい。配管要素、ダクト要素およびコンベヤ要素の接続は、処理要素の間で自動的に経路を定義することができ、矢印は流れの方向を示すためにこれらの要素の描写の外部に表示されてもよい。上流出力が2つの接続に共通である場合には、「T」個の要素はパイプ、ダクト、またはコンベヤの中に含まれてもよい。「T」個の要素は複数の出力を結合するために使用されてもよい。コンベヤ要素の色または他のグラフィック特性は、運転中/停止中、流れている/流れていない、詰まっている等のそのステータスを示すために変化してもよい。一般的に、コンベヤに沿った材料の流れはコンベヤに接続されているモータ駆動により決定される。したがって(より詳細に後述されるアクチュエータ要素である)モータ駆動アクチュエータはコンベヤに接続されてもよい。さらに、(後述される)測定要素は、コンベヤあるいはパイプまたはダクト内の材料の速度、水分または重量等のコンベヤ、パイプまたはダクト上またはコンベヤ、パイプ、またはダクト内の材料の特性のパイプ要素、ダクト要素またはコンベヤ要素に関連する測定値の公開を可能とするためにパイプ要素、ダクト要素およびコンベヤ要素に接続できる。また、公開された特性要素は、例えば材料の組成等の測定されていないパイプ、ダクト、またはコンベヤ上、またはパイプ、ダクトまたはコンベヤ内の材料の特性を表示するために追加されてもよい。
【0045】
所望の場合、配管接続要素、ダクト接続要素およびコンベヤ接続要素は、(例えば色の変化により)接続が失われたこと、および(例えば色の変化により)選択された特性(圧力、温度、長さ等)が構成された制限外にある旨をグラフィックに且つ動的に反映してもよい。さらに、関連プロセスモジュールによって計算されるパラメータはグラフィックに公開されてもよい。例えば、上流接続により提供される特性は、接続のステータスが不良であるのか、あるいは良好であるのかに関係なく、接続要素等の1つ以上の選択されたパラメータを制限し、接続要素により移送されている接続要素またはストリームについてオペレータに情報を与えるためにグラフィックディスプレイに公開されてもよい。
【0046】
一般的に、アクチュエータ要素とは、ストリームに関して何らかの作動機能を実行し、異なる接続要素間、または処理要素と接続要素の間に置かれてもよい要素である。アクチュエータ要素の例は、(アクチュエータ付き)調整弁、(アクチュエータ付き)開閉弁、(モータ付き)ポンプ、(モータ付き)強制通風ファン、(モータ付き)誘引通風ファン、(開閉弁付き)エダクタ、(ドライブ付き)ダンパ、(可変速度モータ付き)フィーダ、(コンベヤ要素に取り付けられてもよい)コンベヤモータドライブ等を含む。
【0047】
バルブ要素のグラフィック描写は、(例えば、動画による)目に見えないバルブ位置、(例えば、色の変化による)バルブの故障、(例えば、色の変化による)バルブ完全開放/閉鎖位置、およびそのバルブを制御している関連制御ブロックの(数字列または他の表示による)AO、DO、DC、設定点、PV、OUT、モード等を動的に反映してもよい。(プロセスモジュールで使用される)バルブ要素と関連付けられているシミュレーション要素は、吐き出し圧力、質量流、液体温度、液組成、入口圧力および出口圧力等のバルブアクチュエータと関連するパラメータを計算するシミュレーションアルゴリズムを有してもよい。これらのシミュレーションによる、または計算されたパラメータは、そのように所望の場合、プロセスグラフィックに公開されてもよい。ただし、ユーザまたは構成エンジニアは、通常、バルブタイプ(線形、早開き、等しい割合、バルブサイジング等)と開から閉へのストローク時間のみではなく、バルブと関連する制御モジュール内のAOブロック、DOブロックまたはDCブロックに対する参照も設定しなければならない。言うまでもなくバルブを通る材料へのバルブの作用をシミュレーションするために使用可能なシミュレーションアルゴリズムは、バルブの種別とサイジング情報に依存してもよい。
【0048】
ポンプ要素のグラフィック描写は(例えば色の変化を使用して)モータステータス、(例えば、文字列を使用して)関連DOまたはDC機能ブロックモードと設定点、(可変速度ドライブが使用されている場合には)モータ速度、AO設定点、PV、(可変速度ドライブが使用されている場合には)OUTモード、および他の所望のパラメータを動的に反映してもよい。同様に、この要素のための(プロセスモジュールで使用される)プロセスシミュレーションは、吐き出し圧力、液組成、液体温度、および質量流等のパラメータを決定する、または計算してよく、そのパラメータはグラフィックディスプレイに開示されてもよい。ユーザはポンプタイプに基づいてポンプ曲線を定義する必要がある場合がある。しかしながら、ユーザはモータ起動/停止に関連するDOブロックまたはDCブロックに対する参照、(使用されている場合)可変速度ドライブのための関連AO機能ブロックに対する参照、およびポンプの動作の定義のためのポンプ曲線(例えば圧力対流量)を設定してもよい。
【0049】
強制通風ファンまたは誘引通風ファンのアクチュエータ要素のグラフィック描写は、モータステータス、DO機能ブロックモードまたはDC機能ブロックモードと設定点、(可変速度ドライブが使用されている場合には)モータ速度、AO設定点、(可変速度ドライブが使用される場合)PV、OUT、DOまたはDC機能ブロックモード、および他の所望のパラメータを動的に反映し得る描写を有してもよく、その内のいずれかがグラフィック描写に公開されてもよい。この要素のための(プロセスモジュールで使用される)プロセスシミュレーション要素は、吐き出し圧力、ガス組成、ガス温度、およびガス質量流等のパラメータを決定または計算してよく、そのパラメータはグラフィックディスプレイに公開されてもよい。ユーザはモータ起動/停止のための関連DCブロックに対する参照、(使用されている場合)可変速度ドライブのためのAOブロックに対する参照、およびファンのシミュレーションされる動作を定義するためのファン曲線(圧力対流量)を設定してもよい。
【0050】
いくつかのケースでは、特定のタイプのアクチュエータは、パイプ、ダクト、またはコンベヤ等の特定のタイプの接続にのみ使用されてもよい。以下の表は典型的なアクチュエータ要素の例示的な接続制限を定義する。
【0051】
【表1】
【0052】
処理要素はいくつかの方法でプラント内において材料またはストリームを処理するプラント装置を含む。一般的に、処理要素に対する、および処理要素からのすべての入力と出力は接続要素を介して行われる。標準処理要素はタンク(縦型と横型)、ヒータ、スタティックミキサー、リアクタ、ミキサー、エアヒータ、および単純な処理アクティビティまたは標準的な処理アクティビティを実行する他の要素を含む。ユーザは、サイズ、体積等、物理的な装置特性とともに要素に対する入力と出力の数を指定してもよい。これらの標準的な処理要素のシミュレーションアルゴリズムおよび静的表現は、それらがユーザによって修正できないように設定されてもよいが、設定時に前述されたように選択可能であってもよい。所望の場合に、他の、(蒸留塔、エバポレータ、セパレータ、ボイラ等の)通常はさらに複雑なプラント装置がカスタム処理要素として実現されてもよいことは言うまでもない。静的表現、このようなカスタム処理要素の入出力数とシミュレーションアルゴリズムは、ユーザインタフェース要件を満たすために修正されてもよい。カスタム処理要素はいったん定義されると、他の処理要素の作成において開始点として再利用または使用されてもよい合成物またはテンプレートとして保存されてもよい。
【0053】
タンク標準処理要素は、タンクに対するパイプ接続に基づいて設定されてよく、タンク要素は(例えば、動的なアニメーションを使用して)タンク内の水位、および(例えば、色の変化を使用して)100%また空の水位を動的に反映してもよい。タンクのためのプロセスモジュールシミュレーションは、グラフィックディスプレイを介して、出口温度、出口組成、液体温度およびタンクのシミュレーションによる水位等のパラメータを計算し、公開してもよい。しかしながら、システムにタンクを結び付けるために、ユーザまたは構成エンジニアは、入出力の接続数、タンクに対する完全な接続、(例えば、直径と高さ等の)サイズなどのタンク特性等を設定する必要がある場合がある。
【0054】
ヒータ処理要素は、グラフィックディスプレイを介して、(例えば、色の変化を使用して)熱伝達率、出口製品温度、入口製品温度、(安定した低下を想定する)出口圧力等を動的に計算し、反映してもよい。ユーザまたは構成エンジニアは、ヒータに対する完全な接続、ヒータ表面積、およびクリーンな状態での熱伝達率を設定する必要がある場合がある。
【0055】
言うまでもなく、スタティックミキサー、リアクタ、ミキサー、エアヒータ、熱交換器等の他の処理要素は、これらのタイプのデバイスに合わせてある表示機能およびシミュレーション機能を有してもよい。蒸留塔、エバポレータ、セパレータ、ボイラ等の基準外の処理要素は、容器に関連付けられたシミュレーションが、標準的な選択に含まれていない場合にはユーザ定義であるカスタム処理要素を使用してグラフィックに表現されてもよい。これらの要素における処理は、容器の各入力を各出力に関連付けるステップ応答モデルとして記述または定義されてもよい。入力は、ガスおよび/または液体のストリームであり得る。選択的に、ユーザは処理要素の入力と出力の関係性を記述する方程式を定義してよく、これらの方程式はシミュレーションを実行するために要素を使用してプロセスモジュールに記憶されてもよい。所望の場合、いくつかの単純な静的グラフ表現は、ユーザがカスタム処理要素と関連する静的グラフィックを迅速に作成する上で役立つために提供されてもよい。これらの単純なグラフィックが使用される場合には、ユーザは入出力接続の所望の数、およびカスタム処理要素によってサポートされている(パイプ、ダクト、コンベヤ等の)サポート接続のタイプだけを指定する必要がある場合がある。それに応じて、グラフィックアイテムが表示され、オペレータグラフィックの作成で即座に使用できる。所望の場合、プロセス要素の各入力と出力と関連付けられる利得およびあらゆるダイナミクスは、ユーザがシミュレーションアルゴリズムをステップ応答として指定することを選ぶ場合に指定されてもよい。ユーザはカスタムアルゴリズムを選択する場合、シミュレーションアルゴリズムを定義するためにユーザに表現エディタが与えられてもよい。選択された方法に基づき、カスタム処理要素出力の特性は異なって計算されてもよい。さらに、ユーザは個別のソフトウェアアセンブリで定義したアルゴリズムの1つ以上を参照してもよい。
【0056】
さらに、複数の所定の合成物またはテンプレートがカスタム処理要素を作成するために提供されてもよい。これらのテンプレートは、例えば、出口ガスO2、出口ガスCO、生成ストリーム、ボイラドラム水位、およびボイラ通風を計算するカスタムアルゴリズムを有するボイラテンプレートを含んでもよい。このようなテンプレートは、単一の燃料入力に基づいてもよい。しかしながら、テンプレートを修正することにより、複数の燃料でボイラをシミュレーションできる。他の所定のテンプレートは、噴霧乾燥機カスタム処理要素と連動して使用されてよく、セパレータの動作をモデル化するためにステップ応答モデルを含んでよい専用の容器−サイクロンセパレータテンプレートを含んでよい。同様に、コラムテンプレート、噴霧乾燥機、およびエバポレータ本体は、予想プロセス応答を定義するためにステップ応答モデルを活用してもよい。エバポレータでは、エネルギー入力および入力流量の濃度に基づいて、出口流量と蒸気放出の濃度が計算できる。複数のエバポレータ要素は、多重効用蒸発器を作成するために熱交換器とエダクタの要素とともに接続されてもよい。同様に、専用の容器スタックカスタムテンプレート処理要素はボイラ処理要素とともに使用されてもよい。この場合、入口の特性は、そのように所望の場合、修正を行わずに、あるいはスタック内で実行されるエミッション削減を反映するためにスタックを通して持続されてもよい。
【0057】
グラフィックディスプレイとプロセスモジュールを作成するために使用できる他のタイプの要素は、測定要素とプロパティ要素とを含む。測定要素は、物理的な送信機と関連付けられる測定値にアクセスするためにグラフィックディスプレイで使用されてもよい送信機要素、およびスイッチ要素を含む。一般的に、送信機要素は、不良ステータスまたは不確実なステータス、制御モジュールの中で関連付けられたAI機能ブロックのモード、実際の送信機(センサ)と関連付けられた測定値と測定装置等、あるいは実際の送信機と関連付けられた他のデータを動的に反映してもよい。オフラインモード(またはシミュレーションモード)では、送信機要素は、AIブロックまたはPCIブロックと関連付けられた値より、むしろプロセスモジュールによって提供されるシミュレーション値にアクセスし、表示するために使用されてもよいか、あるいはシミュレーションによる制御ルーチンで使用される測定値として制御ブロック内の関連AIブロックに測定値を提供するために使用されてもよい。送信機要素は、接続要素に、または処理要素に追加することができ、このような送信機要素がディスプレイに追加されるとき、ユーザは概して、測定値を提供しているコントローラスキームで関連付けられたAIブロック、PCIブロック、またはDIブロックを特定する必要があるであろう。オンラインモードでは、測定の値はこの測定要素の隣に示されてもよい。オフラインモード(つまりシミュレーションモード)では、(対応するプロセスモジュールにより作成されるような)測定のシミュレーションされる値が自動的に表示されてもよい。オンライン動作では、ユーザは測定が失敗した場合にシミュレーションによる値に制御とディスプレイを切り替えることを選ぶことができる。
【0058】
スイッチ要素は、不良ステータスまたは不確実なステータス、関連DI(例えば手動またはOS)のモード、およびスイッチの離散値(オン、オフ等)を動的に反映してもよい。オフラインシミュレーションモードにある間、ユーザは、シミュレーション値または手動値およびステータスを選択することにより、およびスイッチの値とステータスを手動で入力することによりグラフィックディスプレイおよび制御モジュールのスイッチパラメータにアクセスし、変更するためにスイッチディスプレイを使用してもよい。しかしながら、一般的に、ユーザは、制御スキームで関連DIブロックに対する参照、切り替えをトリガする要素特性に対する参照、およびスイッチの状態の変化に関連付けられた制限とデッドバンドを提供することによりスイッチ要素を設定しなければならない。
【0059】
推定される特性要素は、一般的にはプロセスモジュールにより決定されるようなシステムの推定特性を公開し、その要素の任意の特性を表示するために接続要素または処理要素に追加されてもよい。この要素が接続要素に、または1台の装置に置かれると、ユーザは表示される特性をブラウズし、選択できる。したがって、物理的な測定によって入手できないシミュレーション特性は、推定特性要素を使用することにより表示されてもよい。このような推定特性要素は、良好/不良な接続、推定特性値(複数の場合がある)および関連範囲または変化の範囲外にある特性を動的に反映してもよい。一般的に、ユーザは表示される特性(複数の場合がある)に対する参照、および該特性が範囲外にある場合に要素の範囲と色変化を設定しなければならない。
【0060】
理解されるように、送信機要素および推定特性要素を処理要素、アクチュエータ要素、および接続要素に取り付けることにより、これらのプロセス要素の入出力に関連付けられていた特性はオンライン動作またはオフラインシミュレーションの間に参照されてもよい。これらの特性はグラフィックディスプレイで可視にされてもよい。
【0061】
一般的に、オペレータは、プロセス10の動作中のインプリメンテーションのために、あるいはシミュレーション環境でのインプリメンテーションのために、1つ以上のプロセスモジュール39またはグラフィックディスプレイを作成するために構成アプリケーション38を起動または実行してもよい。一実施形態では、構成アプリケーション38は、構成エンジニアに、図3に描かれているもの等の構成ディスプレイ(表示)を提示する。図3から分かるように、構成ディスプレイ64はライブラリまたはテンプレートセクション、および構成セクション66を含む。テンプレートセクション65は、図2のスマートプロセスオブジェクト42eを含んでもよく、前述された接続要素、測定要素、ストリーム要素、処理要素、および推定特性要素のいずれかであってもよい、テンプレートスマートプロセスオブジェクト67のセットの描写を含む。所望の場合、グラフィック定義だけを有する非スマート要素68も提供されてもよい。本来、テンプレート67と68は、プロセスモジュールまたはグラフィックディスプレイ(または両方)の中でスマートプロセスオブジェクトのインスタンスを作成するために、構成セクション66の上にドラッグアンドドロップされてもよい総称的なオブジェクトである。部分的に完了したプロセスグラフィックディスプレイ35cは、1個のバルブ、2つのタンク、2台のポンプ、1台のフロートランスミッタ、および流路コネクタにより相互接続されている2台のセンサを含むものとして描かれており、前述されたようにスマートリンクまたはコネクタ要素であってよく、ストリーム出力を提供してもよい。グラフィックディスプレイ35が、スマートプロセスオブジェクトと非スマート要素の両方から構成されてもよいことが注記されるであろう。
【0062】
グラフィックディスプレイ35c(つまりプロセスモジュール)等のグラフィックディスプレイを作成すると、構成エンジニアは、スマートプロセスオブジェクト67とテンプレートセクション65に描かれている要素68を選択し、構成セクション66上にドラッグし、それらを任意の所望の場所にドロップしてもよい。一般的に、構成エンジニアは、1個以上のスマートデバイスプロセスオブジェクト67aと、デバイスを示している非スマート要素68を選択し、構成セクション66の上にドラッグする。構成エンジニアは、次に構成セクション66の中のスマートデバイスプロセスオブジェクトをスマートコネクタプロセスオブジェクト67bと相互接続し、入出力ストリーム67cをディスプレイに入れてもよい。さらに、静的テキスト要素等の非スマート要素がディスプレイに追加されてもよい。構成エンジニアは、ポップアップ特性メニュー等を使用してこのプロセスの間にスマートプロセスオブジェクトの各々の特性を変更してよく、特に、これらのスマートプロセスオブジェクトと関連するメソッド、パラメータ、タグ、名前、ホットリンク、モード、クラス、入出力等を変更してもよい。プロセスエンジニアまたは構成エンジニアが、通常、プロセス構成、領域等を表す所望の要素の各々を用いてプロセスモジュールを作成すると、構成エンジニアはモジュールと関連する規則または他の機能を定義してもよい。このような規則は、質量平衡と流量の計算のような、システムレベルのメソッドの性能と関連付けられるもの等の実行規則であってもよい。プロセスエンジニアまたはオペレータは、プロセスディスプレイがオンラインである場合に有用となると考えられるトレンドとフェースプレートを追加することを決定してもよい。グラフィックディスプレイ35cの作成後、構成エンジニアはメモリにそのディスプレイを保存してよく、その時点で、または後で、そのディスプレイのインスタンスを作成し、実行エンジン48がグラフィックディスプレイを提供できるように実行エンジン48にそのディスプレイをダウンロードしてもよい。プロセスグラフィックディスプレイ要素とは対照的にプロセスモジュール要素のために異なるグラフィックが描写されてもよいが、構成エンジニアが同じようにまたは類似した方法でプロセスモジュールを作成可能となることは言うまでもない。さらに、オペレータは、プラントを運転中に詳細のレベルをオンにすることを選んでよい。例えば、詳細のレベルの内の1つは各接続での組成を示すであろう。
【0063】
上記に注記されたように、プロセスグラフィックまたはプロセスモジュールには特殊タグが与えられてもよい。例えば、グラフィックディスプレイまたはプロセスモジュールの中のスマートプロセスオブジェクト要素にはプロセス制御システムの中で選択される1台の装置またはルート等の他の要因に基づいて、例えば実行エンジン48が実行時に記入または選択できるエイリアスを含むタグを与えられてもよい。プロセス制御システムでエイリアス名および間接的な参照を使用することは、本発明の譲受人に譲渡され、これにより本明細書に参照することにより明示的に組み込まれている米国特許番号第6,385,496号に詳しく説明されている。これらの技法のいずれかは、本明細書に説明されているスマートプロセスオブジェクトのためのタグを提供し、解消する(resolve)ために使用されてもよい。エイリアス等を使用すると、同じプロセスモジュールが装置等のセットのための異なるビューを含んでよく、あるいは装置等のセットのための異なるビューをサポートするために使用されてもよい。
【0064】
図3のディスプレイ64は、プロセスモジュールまたはグラフィックディスプレイの異なるビューのためのタブ(ビュー1、ビュー2、およびビュー3)を描いている。これらのタブは、プロセスに関連する異なるユーザのための異なるビューに、その中の同じスマートプロセスオブジェクトのいくつかを使用してアクセスし、作成するために使用されてもよい。
【0065】
一般的に、構成エンジニアがプロセスモジュールまたはグラフィックディスプレイを作成すると、構成アプリケーション38はスマートプロセスオブジェクトを、その間の接続とともにデータベースに自動的に記憶する。このデータベースは、次に、例えば、同じスマートプロセスオブジェクトの内の1つ以上を使用して異なったビューを提供してもよい他のプロセスモジュールとグラフィックディスプレイを作成するために使用できる。このようにして、構成エンジニアは第2のビューを作成すると、データベース内ですでに作成され、記憶されているようなスマートプロセスオブジェクトと、第2のビューにそのスマートプロセスオブジェクトを入れるためにそれを用いて記憶されるあらゆるメソッドを簡単に参照できる。したがって、データベースは、プロセス制御モジュールおよびグラフィックディスプレイが作成されるにつれて入力することができ、データベースはプロセスフローデータベース内にすでに存在しているスマートプロセスオブジェクトを使用して他のビュー、モジュールおよびグラフィックディスプレイを作成し、実行するために任意の時点で使用できる。このようなデータベースを使用して、該データベース内の各スマートプロセスオブジェクトは、プロセスモジュールをサポートしてもよいか、プロセスモジュールで使用され、複数のグラフィックディスプレイで参照されてもよい。やはり理解されるように、プロセスモジュールは、これらのモジュールのためにディスプレイを構築してから、プロセスモジュール内で使用される、あるいはプロセスモジュールと関連付けられるフローアルゴリズムを指定することにより構築されてもよい。言うまでもなく、個々のプロセスモジュールは異なるコンピュータ全体に拡散され、異なるコンピュータによって実行されてよく、プロセスモジュールは同じコンピュータ上または異なるコンピュータ上のいずれかで、相互に連動して動作するために相互に通信可能に接続されてもよい。これらが行われると、入出力ストリームは、外部でプロセスモジュールに対してともに参照される。
【0066】
上記に注記されたように、構成エンジニアは、プロセスモジュールまたはグラフィックディスプレイの作成の一部として、プロセスモジュールのシミュレーションアルゴリズムを取り付ける、または提供してもよい。これらのシミュレーションアルゴリズムは、プロセスモジュールによって描かれている、またはモデル化されているプロセスに関して質量平衡計算、流量計算、効率計算、経済計算等の、特定のプロセス特性またはシステムレベルの特性を計算する、または決定するために事前設定されてもよい。その結果、プロセスモジュール自体が、モード、ステータス、およびアラーム動作を有してよく、ワークステーションに割り当てることができ、ディスプレイダウンロードの一部としてダウンロードされてもよい。所望の場合、シミュレーションアルゴリズムは、質量平衡、または加熱平衡、流量経路選択、流量効率、流量最適化、プロセスシミュレーションに関連する経済計算、またはプロセスモジュールのスマートプロセスオブジェクトに提供されるデータを使用する他の所望の計算を実行するために実行エンジン48によって実行されてもよい。またさらに、これらのシミュレーションアルゴリズムは、制御戦略、つまりコントローラ、フィールドデバイス等に関連付けられ、それらにダウンロードされる制御モジュールからのパラメータにアクセスしてよく、逆にこれらの制御モジュールにデータまたは情報を提供してもよい。
【0067】
実行エンジン48が、すべてのディスプレイ上で構成されるすべてのプロセスオブジェクトとリンクを合併したもの全体でプロセスアルゴリズムを実行可能とするために必要とされることが理解されるであろう。したがって、(プロセスモジュール内の)シミュレーションアルゴリズムは、任意の関連付けられたグラフィックディスプレイがロードされている、つまり呼び出され、ユーザに情報を表示しているか否かに関係なく実行するであろう。言うまでもなく、シミュレーションアルゴリズムはプロセス全体10で、またはプロセス10の定義されている部分集合全体で照合されてもよい。任意の特定のプロセスモジュールの実行中、実行エンジン48は、そのプロセスモジュールに関連するグラフィックディスプレイに基づいて、プロセスモジュール内の相互接続されているオブジェクトまたはエンティティを描写するオペレータまたはオペレータインタフェースにディスプレイを与えてもよい。ディスプレイのパラメータ、グラフィック等は、プロセスモジュールの内部のスマート要素の構成と相互接続によって決定される。さらに、このディスプレイまたは他のディスプレイで提供されるアラームと他の情報は、スマートプロセスオブジェクト内のメソッド、および特定のプロセスモジュールと関連付けられたシミュレーションアルゴリズムによって定義され、生成されてもよい。所望の場合、たとえ実行エンジン48がプロセスフローモジュールを実行し続け、それによってそれと関連するメソッド、アラーム動作、フローアルゴリズム等を実行しても、実行エンジン48は複数のオペレータインタフェースにプロセスモジュールのためのディスプレイを提供してよく、あるいはディスプレイを提供しないように構成または設定されてもよい。
【0068】
所望の場合、プロセスモジュールは、グラフィックディスプレイから自動的に生成されてよく(あるいは逆もまた同様)、プロセスモジュールが利用可能な機能がプロセスグラフィックス要素によって決定されてもよい。プロセスモジュールが好ましくはプロセスグラフィックディスプレイを遮断する(shadow)ために構築されてもよいという点は明らかである。その結果、ユーザがプロセスグラフィックディスプレイを構成すると、ユーザは質量ストリームまたはエネルギーストリーム等のプロセスモジュールについての追加の情報を含む能力を有する。これらのストリームは、シミュレーション機能ブロックによって必要とされる開始状態を確立するためにプロセスモジュールで使用される。
【0069】
加えて、プロセスモジュールは、コンピュータで実行される実際のソフトウェアモジュールであるため、それらが制御モジュールと関連するパラメータ、制御戦略、ディスプレイ等を使用するために参照する、およびコントローラモジュールによって参照されることも可能である。また、この機能を使用すると、プロセスモジュールがプロセスグラフィックディスプレイとは無関係に作成されることも可能である。
【0070】
一般的に、プロセスモジュールは処理要素、ストリームおよびそれらの関連接続から構成される。プロセスグラフィックス要素と(プロセスモジュールの中の)シミュレーション要素の間には1対1の対応があるため、ユーザは、グラフィックディスプレイを構築し、そのディスプレイから対応するプロセスモジュールを自動的に生成することが可能であろう。所望の場合に、ユーザがプロセスモジュールを作成してから、スマートプロセスオブジェクト内のグラフィックスを使用してそのモジュールからグラフィックディスプレイを自動的に作成してもよいのは言うまでもない。しかしながら、プロセスモジュールの自動生成を可能にするためには、ユーザが、測定要素と推定特性要素に関連するアクチュエータ要素特性、接続要素特性または処理要素特性を識別する必要がある可能性がある。ユーザがプロセスグラフィックを作成する前に、あるいはいくつかのケースでは、制御モジュールが構築される前に、プロセスシミュレーションを作成する必要がある場合もある。シミュレーションが構築された後、制御モジュールのI/Oブロックに対する参照を記入することができるであろう。また、関連グラフィックディスプレイが作成されると、既存のプロセスモジュールにブラウズし、特性基準を設定することが可能になるであろう。
【0071】
いくつかのケースでは、プロセスグラフィックスはプロセスシミュレーションを構築するために必要とされるすべての詳細を含む必要はない可能性がある。したがって、ユーザが、プロセスグラフィックスから自動的に作成されたシミュレーションモジュールまたはプロセスモジュールを編集可能とするためにエディタを提供することが望ましい。また、複数のプロセスグラフィックスが同じ1台の装置を表示する必要がある場合があるため、プロセスグラフィックの構築では、要素が既存のプロセスモジュールを参照できることが必要である場合がある。
【0072】
一般的に、処理要素に対応するシミュレーションには共通の構造がある。所望の場合、ブロック入力接続およびこのシミュレーションのパラメータは、制御モジュールに対する参照が必要とされないようにプロセスモジュールに記憶される。さらに、シミュレーションによりサポートされる入出力接続の数は拡張可能に定義されてよく、シミュレーション実行の結果はシミュレーション出力接続において、あるいはシミュレーションのパラメータとして反映されてよく、シミュレーションアルゴリズムはステップ応答として定義されてもよいか、あるいはユーザによって入力されてもよい。シミュレーションアルゴリズムがユーザによって入力されると、ユーザは出力ごとに無関係にダイナミクスを指定してもよい。
【0073】
またさらに、パラメータの共通集合は入力接続と出力接続のためにサポートされてもよい。入力接続と出力接続と関連するパラメータは、アレイパラメータまたは構造としてブロック間で通信されてもよく、接続ステータス(例えば、良好、不良、制限されている等の)接続ステータス、質量流パラメータ、圧力パラメータ、温度パラメータ、特殊熱パラメータ、密度パラメータ、流れ不可(flow not possible)パラメータ、圧力/流量ネットワークパラメータのための圧力基準、圧力/流量ネットワークパラメータのための流量基準等のパラメータを含んでよい。いくつかのケースでは、ストリームの組成等の他のパラメータがシミュレーションアルゴリズムで提供され、使用されてもよい。この要件をサポートするためには、標準的な、拡張されたストリーム要素が提供されてもよい。拡張されたストリーム要素構成の一部として、ユーザはストリーム要素を定義するためのデータの所定のグループの集合を選択してもよい。このような拡張された接続は、この情報を活用するブロックに接続できるようにされるだけである。一般的に、拡張パラメータはグループ名と多くの特殊要素を含んでよい。例えば、ボイラ処理要素に対する燃料入力ストリームが、燃料セットを含む燃料の成分、つまり燃料の中の炭素、水素、硫黄、酸素、水分、および窒素の量(所望の場合すべて重量%)を含んでよい。別の例としては、タービン発電機処理要素は、蒸気ストリームを使用してよく、関連付けられたシミュレーションへの接続は蒸気セット、段階に入る蒸気エンタルピー(実際)、段階を出る蒸気エンタルピー(実際)、(等エントロピー膨張の場合)蒸気エンタルピー等を含む拡張されたパラメータセットを使用してもよい。
【0074】
拡張されたグループセットは、プロセスモジュールの中のシミュレーション要素がハイファイシミュレーションパッケージに対するインタフェースとして使用される場合に使用されてもよい。このケースでは、いくつかのストリームの組成はプロセスグラフィックで可視にできる。また、所望の場合、対話型エディタは、グラフィックディスプレイで提示されるための制御モジュールのための関連フェースプレートと詳細ディスプレイのみではなく、グラフィックディスプレイにも表示される値を作成または修正することを容易にするために提供されてもよい。
【0075】
図4は、上述された要素と構成アプリケーションを使用して作成されてもよい例示的なグラフィックディスプレイ100を示している。特に、グラフィックディスプレイ100は、水、酸、および塩基からホワイトビネガーを生産するプロセスプラントの一部を示している。図4に描かれているように、プロセスグラフィックディスプレイ100は、塩基フィード、酸フィード、水フィードおよび冷却水のストリームを定義する4つのストリーム要素102をそれに対する入力時に含む。塩基フィードストリーム102はバルブ106の形を取るアクチュエータ要素に配管接続要素104を通して送達される。バルブ106の出力は配管接続要素104を介してミキサー108の第1の入力に接続される。同様に、酸フィード102は送信機要素110に接続されてから、ミキサー108に接続されている追加のバルブ112に接続される。酸フィード102と送信機110、送信機とバルブ112、およびバルブ112とミキサー108が、配管接続要素114を介して接続される。
【0076】
容易に分かるように、ミキサー108の出力は配管および2台の送信機124と126を介して熱交換器122に接続される。冷却水ストリーム102はバルブ128を介して熱交換器122に送達され、リターン水ストリーム要素131を生成するためにバルブ130を介して熱交換器を出る。同様に、熱交換器122の出力は出力酢酸ストリーム要素136を提供するために送信機要素132とバルブ134を通って送達される。特に常に呼び出されていないが、グラフィックディスプレイの要素はすべてのケースで配管接続要素を介して相互に接続される。
【0077】
ディスプレイ要素自体の特性として生成されてよく、送信機、および推定された特性要素、あるいは制御モジュールの中のブロックを参照する要素の形を取った個別の要素であってもよいディスプレイボックス140は、異なる要素と関連するプロセス変数(PV)値、設定点(SP)値、OUT値等のパラメータを示すまたは公開するためにグラフィックディスプレイ100に描かれている。さらに、ユーザが要素の内のいくつかの上にカーソルを置かなければならない場合、ディスプレイ100は参照された要素と関連付けられた他の値を描いてもよい。例えば、(酢酸ストリーム出力136等の)ストリーム要素の内の1つの上にカーソルを置くと、グラフィックはプロセスの中のこの点での酸のストリームの組成、圧力、温度、密度、流量等を示す。言うまでもなく、グラフィックディスプレイ100上に表示されている値およびパラメータは(制御システム内のAIブロックから等)プロセス制御システム内の実際の参照される送信機から、あるいは要素の機能をシミュレーションするプロセスモジュールシミュレーション要素から送達されてもよい。図4のグラフィックディスプレイ100は、ホワイトビネガーを作るプロセスの動作中に、あるいは例えば設計アクティビティまたはオペレータトレーニングアクティビティを実行するために使用されるそのプロセスのシミュレーションを実現するためにユーザに提供されてもよい。
【0078】
図5は、異なるグラフィックディスプレイ(および同様に異なるプロセスモジュール)がプロセスプラントのさらの多くを描写する(またはシミュレーションする)さらに高いレベルのディスプレイ(またはプロセスモジュール)を形成するためにともにどのように接続されてもよいのかを示す。図5のディスプレイ150では、プロセスグラフィック100は名前またはラベルおよび接続点としてストリーム入力と出力のセットを有するボックスの中に折り畳まれる。所望の場合、ユーザは、そのグラフィックを選択し、そのグラフィックの上を例えばダブルクリックすることにより、図5のプロセスグラフィック100を図4に示されるグラフィックに拡大してもよい。さらに、他の折り畳まれたグラフィックディスプレイ152と154は、入力ストリーム要素156と158を介して冷却水フィードにのみではなく、塩基フィード、酸フィードおよび水フィードにも接続しているものとして描かれている。プロセスグラフィックディスプレイ100のストリーム出力136は、ホワイトビネガー用の保持タンク162のストリーム入力160に接続される。同様に、プロセスグラフィックディスプレイ152と154のストリーム出力は、各々モルトビネガー(malt vinegar)とpickelingビネガーのための保持タンク163と164のストリーム入力に接続されている。理解されるように、プロセスグラフィックス152と154は、各々モルトビネガーとピッケリングビネガー(pickeling vinegar)を作るプロセスプラントの部分のためのグラフィックを提供するように構成され、該プロセスプラントのこれらのセクションに関するデータとグラフィックビューは、これらのディスプレイを拡大することにより表示されてもよい。
【0079】
しかしながら、図5は、プロセスプラントの異なるグラフィックセクションが、ストリーム要素の間の接続を介してともに接続されてもよいことを示す。特に、ストリーム要素は、接続要素と関連する開始特性を定義するためにディスプレイに含まれてもよい。また、ストリーム要素は、ディスプレイ間の接続点として使用されてもよい。このようなディスプレイの間のシート外(off−sheet)の接続のために、ユーザは参照される接続を含む関連ディスプレイを即座に呼び出すためにストリームをクリックしてもよい。したがって、一般的に、ストリーム要素の質量/組成は、通常、プロセス入力の開始特性、つまり開始原料組成等を定義するために、あるいは別のディスプレイ上でストリーム接続へのリンクを定義するために使用される。接続は質量/組成ストリーム要素の入力または出力で行われてもよい。ストリーム要素の場合、一般的にユーザは(システムの中で一意でなければならない)ストリームの名前、(基準入力または入力接続がない場合には)ストリームの特性、(ストリームが複数の成分から構成される場合)ストリームの異なる成分の質量分立、圧力または質量流、温度、比熱、密度、必要とされる接続タイプ(パイプ、ダクト、コンベヤ)および(別のディスプレイ上でストリームにアクセスするために使用される場合)参照される入力ストリームを設定してもよい。同様にエネルギーストリーム要素は、BTU/HR転送等のプロセス入力と関連付けられる開始エネルギーを定義するため、あるいは別のディスプレイでのストリーム接続のエネルギー特性へのリンクを定義するために使用されてもよい。
【0080】
図5は、異なる折り畳まれたグラフィックディスプレイを相互接続するためのストリームの使用を示しているが、同じ手順は異なるプロセスモジュールを相互接続し、異なるプロセスモジュールの相互接続を描写)するために使用できることになる。特に、プロセスモジュールは、名前およびストリーム要素入出力を描くために折り畳むことができ、これらの折り畳まれたプロセスモジュールは、異なるプロセスモジュールのストリーム出力とストリーム入力の間の通信接続またはリンクの描写を使用して他のプロセスモジュールに通信可能に結び付けられ、または接続できることになる。
【0081】
図6は、図4のグラフィックディスプレイ100に相当するプロセスモジュール100aを示している。これから分かるように、プロセスモジュール100aは、図4のグラフィックディスプレイに描かれている物理的な要素の各々についてスマートオブジェクトシミュレーションを表すブロックを含む。理解を容易にするために、図4の要素に対応する図6の各々のシミュレーションブロックは「a」が付け加えられた同じ参照番号で示されている。したがって、図6のミキサーシミュレーションボックス108aは、図4に描かれているミキサー108に対応するシミュレーションである。同様に、バルブシミュレーションブロック106a、112aおよび118aは、各々図4に描かれているバルブ106、112、および118に対応し、通信可能に結び付けられている。
【0082】
図6のプロセスモジュール100aは、このようにしてグラフィックディスプレイ100に描かれている要素ごとに(スマートプロセスオブジェクトと関連付けられるか、あるいはスマートプロセスオブジェクトにより指定される関数ブロックとして表現されてもよい)プロセスシミュレーション要素を含み、これらのシミュレーションブロックはグラフィックディスプレイ100に指定される方法で、および指定される接続要素を使用して相互接続される。所望の場合、プロセスモジュール100aは、グラフィックディスプレイ100の作成後、あるいはグラフィックディスプレイ100の作成中にも自動的に作成されてもよい。
【0083】
上記で示されたように、プロセスモジュール100の中のプロセスシミュレーション要素の各々は、これらのシミュレーション要素への入力時に提供される材料のストリーム(複数の場合がある)のプロセスおよび性質で使用される機械装置の動作に基づいたシミュレーション機能(例えば、アルゴリズム、規則、伝達関数等)を含む。これらのシミュレーションは、処理要素、アクチュエータ要素、および送信機要素の各々の中のSIMブロックにより図6に描かれている。デバイスのダイナミクスとストリームに対する影響は、それによってプロセスモジュール100aの中でモデル化またはシミュレーションされてもよい。アクチュエータ要素および処理要素と関連付けられたシミュレーションブロックのために利用できるいくつかの考えられる特性は、(入口温度、流量および熱容量に基づいた)出口温度、(入口質量流と要素の中の蓄積に基づいた)出口流量、(装置全体での仮定される圧力低下または下流圧力に基づいた)出口圧力および(完全混合および入口組成に基づいた)出口組成であってもよい。カスタム計算が実現されるとき、出口特性に関連付けられる内蔵ダイナミクスは、例えばプロセス入力の変換に対する不動作時間が加えられた一次プラスデッドタイム(first-order−plus−deadtime)応答に基づいて追加されてもよい。ユーザは、所望の各々の計算された特性と関連付けられた不動作時間および遅延を指定してもよい。送信機とスイッチ等のプロセス測定要素、および接続要素の場合、参照される特性にダイナミクスが導入されないことが想定されてもよい。しかしながら、そのように所望の場合、遷移と他の特性はモデル化されてもよい。しかしながら、多くのケースでは、上流接続からの特性は下流接続に即座に反映されてもよい。
【0084】
プロセスモジュール100aを使用すると、プロセスグラフィック100に描かれているプラントの部分の動作をシミュレーションできる。このシミュレーションは、プロセスモジュール100a内のシミュレーション要素からの値がグラフィックディスプレイ100のグラフィックスに自動的に通信され、そこに表示され、制御モジュールで使用されてもよいのでディスプレイ100と統合される。同様に、トレーニングインストラクタはプロセスモジュール100aによって実行されるシミュレーションで特性を達成するまたは変更するためにディスプレイを使用してもよい。
【0085】
所望の場合、HYSYS(登録商標)、CAPE等のハイファイシミュレーションは、測定要素およびアクチュエータ要素のためのI/O基準を定義してから、これらの基準を使用して、シミュレーションでI/Oを実行するために、例えばHYSYS(登録商標)内で現在使用されているDCSインタフェーステーブルを作成することによりシミュレーション特長に加えられてもよい。標準処理要素テンプレートは、ハイファイプロセスシミュレーションを構築するために使用されてもよい、HYSYS(登録商標)(または他のハイファイシミュレーション)成分ごとに定義されてもよい。このようなハイファイシミュレーション165はプロセスモジュール100aに通信可能に接続されているものとして図6に描かれている。このケースでは、ユーザはプロセスモジュール100aの中のシミュレーション要素の各々で提供されるシミュレーションを無効にし、代わりにハイファイシミュレーション165によって提供されるシミュレーションパラメータを使用することを選択してもよい。ユーザは、(プロセスモジュール100aの中に設定される電子スイッチ、フラグ等であってもよい)スイッチ166を起動することによりハイファイシミュレーション165の使用を指定してもよい。
【0086】
一般的に、スイッチ166がハイファイシミュレーション165を使用するために設定されるとき、プロセスモジュール100a内の関連シミュレーション機能ブロックはシャドーブロックとして働く。つまりそれらのシミュレーションアルゴリズム(SIMブロック)は実行されず、代わりにブロックパラメータがハイファイシミュレーション165によって読み書きされる。しかしながら、プロセスモジュール100aは、依然として同じパラメータと他の情報をプロセスグラフィックと制御モジュールに通信し、(最終的にはハイファイシミュレーション165で使用するために)プロセスグラフィック100、および制御モジュール29から情報を受信する。
【0087】
理解されるように、このようにしてプロセスモジュールを使用することは、オペレータ、エンジニア等が表示し、使用できるようにプロセスプラント内でハイファイシミュレーションパッケージ(ソフトウェア製品)を接続する(つまり、プロセスモジュール100aと関連付けられたプロセスグラフィックディスプレイ100を使用する)容易且つ便利な方法となる。特に、プロセスモジュールのストリームパラメータは、ハイファイシミュレーションまで接続、あるいはハイファイシミュレーション内でモデル化される流れと関連付けられてよく、プロセスモジュールの中の経路移動(pathing)は自動的に構造化され、あるいはハイファイシミュレーションの中の経路移動と関連付けることができる。実際には、プロセスモジュールは、このケースでは、プロセスプラント制御およびシミュレーション環境で使用される制御モジュールおよびグラフィックディスプレイにハイファイシミュレーション内のデータをマッピングする便利な方法となる変数つまりデータプレースホルダとして使用される。
【0088】
またさらに、プロセスモジュールおよび関連グラフィックディスプレイは、通例ハイファイシミュレーションプロバイダによってユーザにとって高い価格で現在生産されている、ハイファイシミュレーション用の個別のディスプレイを提供するニーズを削減するまたは排除する。代わりに、プロセスモジュールはすでにグラフィックディスプレイに結び付けられているため、プロセスモジュールがハイファイシミュレーションパッケージに接続されると、グラフィックディスプレイはユーザにハイファイシミュレーションパッケージにより計算されるように情報を提供するために、およびユーザまたはオペレータがハイファイシミュレーションパッケージに対する入力を操作可能とするために使用されてもよい。またさらに、プロセスモジュールは制御モジュールに通信可能に接続されるため、ハイファイシミュレーションパッケージによって生成されるパラメータまたはデータは、オンライン制御アクティビティを実行するために制御モジュールで使用されてもよい。このようにしてプロセスモジュールを使用すると、ハイファイシミュレーションパッケージは、制御モジュールと統合されることに加え、制御モジュールに並列で実行できる。
【0089】
前述の説明から理解されるように、プロセスモジュールおよびグラフィックディスプレイは、グラフィックディスプレイによって描かれているプロセスプラントの動作をシミュレーションするプロセスモジュールとともに、プロセスプラント10のセクションのオペレータビューを提供するために、統合的に作成、実行されてもよい。有利なことに、プロセスモジュールおよびグラフィックディスプレイは、プロセスプラントのそのセクションまたは部分に関して制御アクティビティを実行する、さらに1つ以上の制御モジュールと(例えば、通信可能に接続される等)統合されてもよい。したがって、図1に描かれている制御モジュール29は、図1に描かれているプロセスモジュール39とグラフィックディスプレイ35の内の1つ以上と通信可能に統合されてもよい。言うまでもなく、通信モジュール29、プロセスモジュール39、およびグラフィックディスプレイ35は、特定のケースで所望の、または必要とされるように、図1に描かれているもの以外のプラント10の中の他のコンピュータまたはデバイスで実現されてもよい。
【0090】
図7Aおよび図7Bは制御モジュール29、プロセスモジュール39およびグラフィックディスプレイ35の統合をより詳細に示している。特に、グラフィックディスプレイ35は、リサイクルタンク182の出力と直列で接続されているバルブ186とともに、リサイクルタンク182とポンプ184の入力に接続されているバルブ180を含む。要素180から186は、(名前が付けられていない)配管接続要素を介してともに接続され、ストリーム要素はそれらの点での材料のストリームを定義するためにグラフィックディスプレイ35の入力と出力で提供される。
【0091】
グラフィックディスプレイ35の構成の結果、グラフィックディスプレイ35と同時に作成されてもよいプロセスモジュールは、グラフィックディスプレイ35の中に描かれている物理的な要素に対応するバルブ要素180a、タンク要素182a、ポンプ要素184aおよびバルブ要素186aの形を取るプロセスシミュレーション要素を含む。グラフィックディスプレイ35と関連する(グラフィックディスプレイ35に描かれている)物理的な要素の少なくともいくつかを制御する制御モジュール29は、グラフィックディスプレイ35によって、およびプロセスモジュール39によって描かれている要素の中で制御を提供する、あるいはそれらと関連する相互接続された機能ブロックの集合を含む。この例では、制御モジュール29は、2つの制御ループ190と192を含む。第1の制御ループ190は、タンク182の中への流体の流れについての流量入力情報を受け取るアナログ入力(AI)機能ブロックと、PID制御を実行する比例積分微分(PID)制御機能ブロックと、タンク182の中へ材料の所望の流れを達成するためにバルブ180を操作するアナログ出力(AO)機能ブロックとを有する。同様に、制御ループ192は、タンク182内の水位センサによって測定されるようなタンク水位情報を提供するAI機能ブロック、PID制御ブロック、およびタンク182内の流体の水位の制御を達成するためにバルブ186を操作するためにPID制御ブロックから制御信号を受信するAO機能ブロックとを含む。制御モジュール29は、例えばポンプ184のオン/オフ状態または動作を示し、そのように所望の場合、タンク182に関して制御アクティビティを実行するために、制御ループ190と192によって使用されてもよい離散入力(DI)も含む。
【0092】
理解されるように、グラフィックディスプレイ35、プロセスモジュール39、および制御モジュール29内の要素のいずれかは、さらに詳しく説明されるように、それらの要素の他と(関連通信タグを介して)通信し、それによってさらに優れたまたは強化された制御ディスプレイ、シミュレーションディスプレイおよびオペレータディスプレイを提供してもよい。例えば、図7Bに描かれているように、ループ190のPID制御ブロックは、PID制御要素により使用されている電流フロー設定点を表示するために、グラフィックディスプレイ35に情報を提供するように構成、あるいはこれらの要素の間の矢印が付けられた線で示されるように、グラフィックディスプレイ35から制御モジュール29で使用される設定点を読み取ってもよい。同様に、プロセスモジュール39のタンク要素182aは、要素182aの中でシミュレーションアルゴリズムによって決定されるように、タンクのシミュレーションされる水位を示すプロセス制御モジュール29の制御ループ192のAI機能ブロックにシミュレーション出力を提供してもよい。このシミュレーションによるタンク水位は、オペレータによって見られるために追加情報としてグラフィックディスプレイ29上に描かれてもよい。
【0093】
所望の場合、制御ループ192のAOブロックは、グラフィックディスプレイ35のバルブ186に情報を提供し、バルブ186から情報を受信してもよい。さらに、ループ192のAO機能ブロックは、プロセスモジュール39のバルブ要素186aにその制御出力を提供するように構成できる。このケースでは、バルブ要素186aは、物理的な要素になんらかの誤動作があるか否かを判断するために、制御ループ192で測定されている実際のバルブ位置に、バルブ位置のための予測値を比較してもよい。一定量での差異のケースでは、プロセスモジュール39は、障害のあるセンサ等のプロセスプラント内の潜在的な問題を示すグラフィックディスプレイ35上でアラームまたは警告を生成するソフトウェアを含んでよい。図7Bにも描かれているように、バルブ要素186aは、オペレータに表示される、あるいはオペレータが利用可能となるように、グラフィックディスプレイ35にシミュレーションによる測定値またはパラメータを提供してもよい。このようなシミュレーションによる測定値またはパラメータは、バルブ186からのシミュレーションによる、または予測された流量、あるいはバルブ186と関連する、任意の他のシミュレーションによるパラメータを示してもよい。言うまでもなく、実際の測定データ、シミュレーションデータ、またはグラフィック表示データを含む他の所望の情報またはデータは、さらに優れたまたは強化された制御、シミュレーションまたはディスプレイを提供するために、グラフィックディスプレイ35、プロセスモジュール39および制御モジュール29内の要素に提供されてもよい。
【0094】
一般的に、プロセスモジュールを制御モジュールと、および所望の場合、さらにグラフィックディスプレイと統合させることにより生じる可能性を有する多数の優位点がある。1つのケースでは、前述されたようにプロセスモジュールによって実行されるシミュレーションは、シミュレーションによるまたは予測された測定値、パラメータまたは他のプロセス値を、システム内の潜在的な問題を検知するために制御モジュールによって提供される測定された、または計算されたパラメータと比較してもよい。例えば、プロセスモジュール39によって計算されるようなバルブの中からの流量と、プロセス自体の中で測定されるようなバルブの中からの流量の大きな差異は、何らかのデバイス問題が存在することを示すアラームを生成する理由となる可能性がある。逆に、制御モジュール29は、制御モジュール29が知っている障害のあるセンサ、あるいは、既にアクティブではない、または制御モジュールが使用できない他の要素に関する状況で強化された制御を提供するためにシミュレーションによるパラメータを使用してもよい。このケースでは、制御モジュール29は、オペレータの関与を必要とせず、プロセスを停止する必要もなく、(障害があるものとして知られている、不良ステータスを有する可能性のある等の)測定値またはパラメータを、プロセスモジュールにより作成されるようなシミュレーションによる出力で自動的に置換できる。選択的に、制御モジュール29は、測定値またはパラメータがシミュレーションによる値で置換されていた時間の量を監視することができ、特定の時間量の後にシミュレーションによる値の使用を停止できる。例えば、制御モジュールは、特定の時間量の後に障害のある値またはパラメータの使用を開始できるであろう。また、シミュレーション制御データと実際の制御データの両方を同じディスプレイに表示することは、オペレータまたはユーザが、シミュレーションモードで有用、さらに優れた設計行動を実行するために有用等、プラント内の問題を検知する場合に役立つ可能性がある。
【0095】
図8は、制御モジュール200がいかにしてプロセスモジュール202(それにより該プロセスモジュール202と関連する任意のグラフィックディスプレイ)と通信可能に統合されてもよいのかのより詳細な図である。図8の制御モジュール200は、例えばモデル予測制御(MPC)機能ブロック等の、多重入力/多重出力制御ブロックであってもよい制御機能ブロック207にその出力が接続されている3つのAI機能ブロック204、205、および206を含む。制御ブロック207からの3つの制御出力は、例えば混合のためにミキサーに異なる流体を提供するプロセス内の例えばバルブを制御してもよい、3つのAO機能ブロック208、209および210の制御入力に送信される。
【0096】
プロセスモジュール202は、制御モジュール200によって制御されるミキサーとバルブを有するプロセスの部分と関連付けられている。特に、プロセスモジュール202は(プロセスモジュール202の左側で矢印によって示されている)ミキサー要素214の中への3つのストリームの流れをシミュレーションするバルブ(アクチュエータ要素)211、212、および213を有する。バルブ要素215は、プロセスモジュール202の右側の出力ストリームを定義するためにミキサー要素214の中から流体の流れをシミュレーションし、送信機要素217は、ミキサー要素214を出る流体の測定された組成を示し(またはシミュレーションし)てもよい。明確にするために、接続要素はプロセスモジュール202で単純な線として描かれていることに注意されたい。
【0097】
この場合、AI機能ブロック204から206に対する制御入力は成分センサ、流量センサまたは(プロセスモジュール202の中の)送信機217によって描かれているプロセスプラント内の他のセンサによって提供されてもよいが、AO機能ブロック208から210は、(プロセスモジュール202内の)バルブ211から213により描かれているプロセスプラントのバルブの動作を制御してもよい。
【0098】
分かるように、プロセスモジュール202と制御モジュール200の中の論理要素は、所望の方法でまたは有用な方法で、プロセスモジュール202から制御モジュール200に通信可能に相互接続されてよく、逆の場合も同じである。1つの例では、(点線218によって描かれている)通信接続は(ミキサー214で材料組成のシミュレーションによる測定値を表示する)プロセスモジュール202の送信機要素217の出力と、プロセス制御モジュール200の中のAIブロック216のシミュレーションによる入力SIM_INの間で構成されてもよい。このようにして、ミキサー214の流体の水位のシミュレーションによる測定値はAIブロック206に与えられ、AIブロック206は、例えば、そのブロックの制御入力(IN)での信号が不良ステータスを有する、あるいは何らかの理由から障害があると知られている場合に、このシミュレーションによる入力を使用してもよい。このようにして、AIブロック206は、実際の物理的な測定が有効ではない、または利用できない場合にAIブロック206と関連する測定の近似値を提供し、それにより制御モジュール200は障害のあるセンサが存在する場合に機能し、制御を提供し続けることができる。このような接続により、制御モジュール200も、(シミュレーションプロセスモジュール202によって提供されるような)有効なシミュレーションデータがオフラインのオペレータトレーニングの間に、あるいは制御モジュール200をテストするために使用される、シミュレーションモードで実行できるようになる場合がある。
【0099】
代わりに、または加えて、(点線219で描かれている)通信接続は、プロセス制御モジュール200の中のAOブロック208の出力と、プロセスプラントのAOブロック208によって制御されている実際のバルブをモデル化するバルブ要素211の入力の間で構成されてもよい。ここでは、バルブ要素211は、シミュレーションによるデータ(つまりバルブ要素211のSIMブロックにより計算された測定値とパラメータ)が正しいか否か、つまり実際の制御ルーチン200で使用されるデータと一致するか否かを判断するために、実際のバルブから取得される、あるいは実際のバルブに送信されるデータを使用してもよい。かなりの差異がある場合には、プロセスモジュール202は、潜在的な問題を示すアラームまたは警告を生成してもよく、あるいはプロセスモジュール202内でより優れたまたはより正確なシミュレーションを提供するために本物のデータを使用してもよい。例えば、バルブ要素211は、シミュレーションにおいて実際のバルブ位置を反映するためにバルブ要素211の位置についてSIMブロック内の実際の制御データを使用してもよい。言うまでもなく、プロセスモジュール202と制御モジュール200の中の要素の間の他の接続が、強化された制御および/またはシミュレーションを実行するためにこれらの2つのモジュールの間のいずれかの方向でデータフローを提供させられてもよい。またさらに、プロセスモジュール202または制御モジュール200からのデータのいずれかは、プロセスモジュール202と関連付けられるグラフィックディスプレイを介して自動的にオペレータが利用できるようにされてもよい。
【0100】
所望の場合、プロセスモジュールは、プロセス制御ネットワークまたはプロセスプラント内で冗長な機能を提供し、シミュレーションしてもよい。特に、プロセスモジュールは、プロセスプラントの中に配置される冗長なデバイス、冗長な制御ブロック等、(例えば、バックアップ冗長要素が引き継がなければならないとき等を含む)実際の冗長な機能の動作をシミュレーションし、実際の冗長な要素の動作を検知する、またはシミュレーションすることができてもよい。さらに、所望の場合、そのシミュレーション機能を備えたプロセスモジュールはプロセスプラントの中の冗長な一組の要素の内の1つとして使用されてもよい。このケースでは、プロセスモジュール(またはその任意の部分)は、一次(および実際の物理的な)デバイスの故障時、または一次(および実際の物理的な)デバイスと関連する検知された問題がある場合に、バックアップデータまたは冗長データ(信号、計算等)として動作してもよい。このケースでは、冗長な要素として働くプロセスモジュールは、冗長な機能を提供するために任意の公知の方法で(制御動作または検知動作を実行する)制御モジュールと通信可能に相互接続されてもよい。プロセスプラント内でのこのプロセスモジュールの冗長な要素としての使用は、プロセスモジュールが前述されたように1つ以上のハイファイシミュレーションパッケージに接続されている場合に特に有効である。
【0101】
本明細書に説明されているスマートプロセスオブジェクト、グラフィック表示要素およびプロセスモジュールの機能は、オペレータワークステーション20で動作してよく、プラント10の中のコントローラ、フィールドデバイス等にダウンロードされ、それらの中で構成される必要はなく、それがこの機能を実現、表示、変更等しやすくする。さらに、この情報のすべては通常、プロセスプラント10内の各コントローラとフィールドデバイスが使用できないのに対し、通常システムレベルでのデバイスに関する情報はすべて一般的にオペレータワークステーション20が、および特に実行エンジン48が使用できるため、この機能によりシステムレベルの決定をプロセスデバイス、コントローラ等の中においてよりさらに容易に下すことができるようになる。しかしながら、このようにすることが有利であるとき、プリミティブ等のプロセスモジュールと関連する論理のいくつかが、プロセスプラントの中の下方でデバイス、装置およびコントローラに埋め込まれてもよい。統合されたプロセス制御モジュールとグラフィックディスプレイを作成するためにスマートプロセスオブジェクトを使用することにより、実行エンジン48は、例えば、最小量のユーザ構成アクティビティで漏れを自動的に検知し、スマートアラームを生成し、プラント10の中の流量と質量平衡を計算し、追跡調査し、プラント10内の損失を追跡調査し、プラント10にさらに高いレベルの診断を提供し、エンジニアリング設計およびオペレータトレーニングの間にプラントの動作をシミュレーションすることができるようになる。
【0102】
図9は、実行エンジン48と、分散制御戦略を有するプロセスプラント内でそれによって使用されるプロセスモジュールとグラフィックディスプレイを統合する1つの考えられる方法を示している。図9に描かれているように、実行エンジン48による実行中にオペレータにディスプレイを提供するプロセスモジュールによって作成される、あるいはプロセスモジュールと関連付けられるディスプレイクラス定義220は、制御戦略文書の中で所望の方法でこれらのディスプレイクラス定義を使用し、編成してもよい制御構成データベースツールとエンジニアリングツール222に提供される。プロセスアルゴリズム224は、実行時の前にこれらのディスプレイクラス定義に接続されてよく、それからディスプレイクラス定義とそれに結び付けられたフローアルゴリズムのインスタンスが作成され、(1つ以上のワークステーションの中の1つ以上の実行エンジン48の形で実現されてもよい)グラフィックディスプレイ/プロセスモジュール実行環境226に提供されてもよい。グラフィックディスプレイ/プロセスモジュール実行時環境126は、実行中にコードを解析するために(つまり、ジャストインタイムのオブジェクトコード変換を実行するために)ダウンロードスクリプトパーサ228を使用し、ディスプレイクラスのために提供される、あるいはディスプレイクラスに結び付けられるフローアルゴリズムまたは他の規則ベースのプロシージャを実行するために規則ベースの実行エンジン230を使用する。このプロセス中、グラフィックディスプレイ/プロセスモジュール実行時環境226は、制御モジュール実行時環境232にデータまたは情報を提供するために、あるいは制御モジュール実行時環境232からデータまたは他の情報にアクセスするために、プロセスに関連するコントローラおよびフィールドデバイスで実行されてもよい制御モジュール実行時環境232と通信してもよい。言うまでもなく、グラフィックディスプレイ/プロセスモジュール実行時環境226は、図1のイーサネット(登録商標)バス24等の所望の、あるいは事前に設定された通信ネットワークを使用して、制御モジュール実行時環境232と通信してもよい。またさらに、本明細書に説明されているグラフィックディスプレイ、プロセスモジュール、および制御モジュールを標準プロセス制御システムまたはプロセスプラントに統合する他の方法も使用されてもよい。
【0103】
再び図2を参照すると、構成アプリケーション38は、プロセスモジュールを表示する、作成する、および/または編集するための1つ以上のアプリケーションを提供してもよい。一つの実施形態では、プロセスモジュールの初期定義が、プロセスモジュールのプロセスグラフィック設計に基づいて自動的に作成されてもよい。また、プロセスモジュールは、プロセスモジュールエディタを使用して作成、または修正されてもよい。プロセスブロックおよび/またはカスタムプロセスブロックの標準的なセットは、プロセスプラントの一部をシミュレーションするために使用されてもよいプロセスモジュールを作成するために使用されてもよい。プロセスモジュールは、例えばオペレータのトレーニングのためにオフラインシミュレーションで使用されてもよい。また、プロセスモジュールを用いて作成されたプロセスシミュレーションの部分は、プロセスシミュレーションの一部として計算されてもよい特性、将来の値、およびデータの性能を示すためにオンラインシステムで使用されてもよい。
【0104】
図10乃至図13は、例えば、プロセスモジュール39および/またはグラフィックディスプレイ35を作成する/使用する等、構成エンジニアのプロセスの間に図2の構成アプリケーション38によって作成されてもよい例示的な画面表示を示している。理解されるように、図10乃至図13の画面表示は、例えばプロセスプラント10の構成を描く組織系統図構造および/またはプロセスプラントを構成する、および/またはプロセスプラントの部分の動作をシミュレーションするために使用されてもよい要素を描く組織系統図構造を提供してもよい画面の左側にあるエクスプローラビューを含む。同様に、図10乃至図13の画面表示はその右側に1つ以上の情報ビューを含む。これらの情報ビューは、エクスプローラビューの中の要素の内の選択された要素についての追加の情報を提供する。
【0105】
スマートプロセスオブジェクトおよび/または非スマートプロセスオブジェクト等の多くの標準プロセスオブジェクトは、プロセスモジュールの作成を支援するために提供されてもよい。また、カスタムプロセスオブジェクトは、エンドユーザまたはエンドユーザンカテゴリ(例えば精製装置)のために作成されてもよい。同様に、エンドユーザはプロセスモジュールを作成するために使用されてもよいユーザ定義プロセスオブジェクト(特殊プロセスオブジェクト)を作成してもよい。標準プロセスオブジェクト、カスタムプロセスオブジェクト、および/または特殊プロセスオブジェクトは、プロセスモジュールを作成する際に使用するためにライブラリに記憶されてもよい。ユーザは使用可能なプロセスオブジェクトを表示するためにライブラリをブラウジングしてよく、該プロセスオブジェクトについての情報を表示するために、該プロセスオブジェクトを編集する等のためにプロセスオブジェクトを選択することができてもよい。図10は、エクスプローラ部分304と、ライブラリの中のプロセスオブジェクトにアクセスするために使用できる情報部分308を有する例示的なディスプレイ300の一部である。エクスプローラ部分304は、ライブラリフォルダ314を有するツリー構造312を含む。ライブラリフォルダ314は、例えば、プロセスモジュールの作成を支援するために提供される異なるカテゴリのプロセスオブジェクトに対応してもよい複数のサブフォルダ320を含むプロセスブロックテンプレートフォルダ316を含む。さらに、ライブラリフォルダ314は、それ自体、例えば構成アプリケーション38のエンドユーザにより設計されるプロセスオブジェクトを記憶するために複数のサブフォルダを含むことがあるカスタムプロセスブロックフォルダ324を含んでよい。
【0106】
ユーザが例えばエクスプローラ部分304でカテゴリを選択する場合、選択されたカテゴリのコンテンツは情報部分308に示されてもよい。同様に、ユーザが、例えばエクスプローラ部分304でプロセスブロックを選択する場合、選択したプロセスブロックに関する情報は情報部分308に示されてもよい。
【0107】
図11は、プロセスブロックテンプレートフォルダ316の中のアイテム326が、例えばマウス、タッチスクリーン、スタイラス、タッチパッド、キーボード等を介して選択された、例示的なディスプレイ300の一部である。情報部分308は、選択されたプロセスブロックアイテム326について、パラメータ328と1つ以上のシミュレーションアルゴリズム330を表示する。また、情報部分308は、プロセスブロックを表示するために以前作成された1つ以上の3−D動的ダイナモ334を表示してもよい。
【0108】
選択的に情報部分308でさらに多くの情報またはさらに少ない情報を示すことができるであろう。例えば、ディスプレイ300は、パラメータ328のデフォルト値等の追加情報が描かれてもよいより詳細なビューを可能にしてもよい。ユーザは、デフォルト値を選択してから、例えばキーボードを介して新しい値を入力することによりデフォルト値を変更できてもよい。また、ユーザは情報部分308でプロセスブロックまたはダイナモを選択する(例えば、上で「右クリックする」)ことにより該プロセスブロックに関連するプロセスブロックまたはダイナモを編集するためのアプリケーションを起動できてもよい。該選択に応えて、ウィンドウまたはディスプレイは、ユーザが、例えば該プロセスブロックおよび/またはダイナモを編集可能とするために表示されてもよい。
【0109】
ユーザが、例えば、プロセスモジュールを表示、編集等するためにすでに作成されているプロセスモジュールをブラウジングしたい場合がある。図12は、すでに作成されたプロセスモジュールをブラウジングするために使用されてもよいエクスプローラ部分354と情報部分358を有する例示的なディスプレイ350の一部である。エクスプローラ部分354は、プロセスプラント10の物理および/または論理領域に対応するフォルダを含んでよい階層構造362を含む。例えば、ツリー構造363はプロセスプラントの「AREA_A」に対応するフォルダ366を含む。フォルダ366はシミュレーションフォルダ370、制御フォルダ372、およびディスプレイフォルダ374を含む。例えば、シミュレーションフォルダ370がユーザによって選択されると、フォルダ370内で使用できるプロセスモジュール378が情報部分358に表示されてもよい。選択的に、フォルダ370内で使用可能なプロセスモジュール378が階層362で表示されてもよい。ユーザは例えば情報部分358でプロセスモジュールの選択(例えば、上で「右クリックする」)によってプロセスモジュールを編集するためのアプリケーションを起動できてもよい。
【0110】
図13は、プロセスプラント10内で特定のノード(例えば、ワークステーション、コントローラ等)によって実行されるプロセスモジュールを割り当てるために使用できる例示的なディスプレイ400の一部である。ディスプレイはエクスプローラ部分404と情報部分408を含む。エクスプローラ部分404は、プロセスプラント10内のワークステーションに対応するフォルダ416と418を含んでよいツリー構造412を含む。フォルダ418は、プロセスモジュールフォルダ420を含む。プロセスモジュールは、プロセスモジュールに対応するアイテムをフォルダ420、またはオプションでフォルダ418にドラッグすることによりフォルダ418に対応するノードに割り当てることができる。図12と図13を参照すると、一例として、アイテム378の1つまたは両方が、該1つまたは両方のアイテム378を、フォルダ418に対応するノードに割り当てるためにフォルダ418またはフォルダ420までドラッグできるであろう。
【0111】
図14は、プロセスモジュールを作成し、修正するためのエディタに対応する例示的なディスプレイ450である。ディスプレイ450は、作業空間部分454、プロセスブロックパレット部分458、パラメータ部分462およびツールバーを含む。ディスプレイ450は、新しいプロセスモジュールを作成する、および/または既存のプロセスモジュールを編集するために使用されてもよい。プロセスブロックパレット部分458は、複数のカテゴリのプロセスオブジェクトの内の1つを選択するために、プルダウンメニュー等のユーザインタフェース機構466を含んでよい。選択されたプロセスオブジェクトカテゴリに対応するプロセスオブジェクトテンプレートは部分470に描かれてもよい。プロセスオブジェクトカテゴリの例は、ストリームと接続に関連付けられたカテゴリ、アクチュエータと関連付けられたカテゴリ、標準プロセス装置と関連付けられたカテゴリ、カスタムプロセス装置と関連付けられたカテゴリ、ユーザ定義プロセス装置と関連付けられたカテゴリ等を含んでよい。ユーザは、例えば、部分470からプロセスオブジェクトテンプレートをドラッグし、それを作業空間部分454にドロップできるであろう。プロセスオブジェクトを表すブロックが作業空間部分454で(例えば、マウスクリックを介して)選択されると、選択されたプロセスオブジェクトに対応するパラメータはパラメータ部分462に示されてもよい。
【0112】
ストリーム要素は、プロセスモジュールによってシミュレーションされるプロセスの開始点と編集点を定義するために使用されてもよい。ガス、液体、または固体のストリームの処理は、例えば標準処理ブロック、カスタム処理ブロックおよび特殊処理ブロックの組み合わせによって実行されてよく、処理オブジェクト間の流れの調節は、例えば接続要素とアクチュエータ要素によって決定される。シミュレーションで使用される構成要素は、パレット部分458から作業空間部分454の中に適切なブロックと要素をドラッグすることにより定義されてもよい。処理オブジェクト間のプロセスフローは、流路内のブロックの入力と出力を接続するために、例えばマウスを使用することにより定義されてもよい。ストリームの特性は流路内の各接続により自動的に搬送されてもよい。各接続により搬送されてもよい特性の例は、質量流、圧力、温度、密度、または比熱の内の1つ以上を含む(または何も含まない)。また、接続ステータスは特性値とともに搬送されてもよい。選択的に、ユーザはストリームの組成を加えてもよい。組成がストリームに追加されると、この追加された情報は流路内の要素によってサポートされる。
【0113】
図15は、単純なタンクに対応するプロセスモジュール500の一例である。プロセスモジュール500は、例えば、図14のディスプレイ等のエディタのディスプレイを使用して作成可能となる。プロセスモジュール500は、ストリーム要素504、508および512を含む。ストリーム要素は一定のプロセス状態(例えば供給圧力)を提供するために構成、あるいはそれらは他のモジュールにおけるストリームに対する基準として働いてもよい(例えば、ストリーム要素は別のモジュールに情報を渡すために使用される)。ストリーム要素508は別のモジュールを参照し、参照されたモジュール/ストリームの表示514は、ストリーム要素508の下に自動的に表示される。同様に、ストリーム要素512は別のモジュールを参照し、参照されたモジュール/ストリームの表示516はストリーム要素508の下に自動的に表示される。
【0114】
ユーザは、タンク水位等の、要素の入力、出力または内部計算値の特定の特性またはパラメータを公開することを選んでよい。すると特性またはパラメータ名が、対応するブロックの中に表示され、値はプロセスモジュールの実行中に特性またはパラメータ名の脇の作業空間内に表示される。
【0115】
シミュレーションで使用されるプロセスオブジェクトは、関連する装置および/または制御モジュールの物理特性に対応するパラメータを有してもよい。このようにして、ストリームとプロセスオブジェクトがいったんプロセスモジュールで定義されると、これらの要素のパラメータはプロセス要件および制御システム要件に一致するように構成されてもよい。再び図14を参照すると、プロセスオブジェクトが作業空間部分454で選択されると、そのプロセスオブジェクトの構成可能なパラメータ(例えば、cv、高さ等)がパラメータ部分462に自動的に示されてもよい。パラメータ部分462に示されるパラメータの内の1つを選択する(例えばダブルクリックする)ことにより、関連するパラメータ値を修正できるように、ダイアログディスプレイが提供されてもよい。
【0116】
図16は、作業空間部分454に入れられるプロセスオブジェクトを表すプロセスブロック550を有する図14の例示的なディスプレイ450の説明図である。プロセスブロック550が選択されている。このようにして、プロセスブロック550に対応するパラメータがパラメータ部分に表示される。パラメータ554がパラメータ部分462で選択されている。このシナリオでは、パラメータ554はバルブ位置に関連する機能ブロック基準パラメータである。パラメータ554が選択された結果、パラメータ554を修正できるように例示的なディスプレイ560等のディスプレイが表示されてもよい。例えば、パラメータ554は、特定の制御またはプロセスモジュール内のパラメータを特定の出力プロセスオブジェクトに関連付けるために修正されてもよい。例えば、ディスプレイ560は、ユーザがプロセスオブジェクトおよび制御モジュールまたはプロセスモジュールを選択できるようにしてもよいボタン564を含む。
【0117】
図16Bは、パラメータ部分460に機能ブロック基準パラメータを追加するために例示的なディスプレイ450を使用することの説明図である。図16Aと同様に、プロセスブロック550が選択されており、したがってプロセスブロック550に対応するパラメータがパラメータ部分462に表示されている。パラメータ570がパラメータ部分462で選択されている。このシナリオでは、ユーザは、メニュー574を介して、パラメータ570と関連付けられる別のモジュールのプロセスオブジェクトを割り当てることを選んだ。パラメータ570が、別のモジュールの機能ブロックに参照可能とするために、例示的なディスプレイ582のようなディスプレイが表示されてもよい。例えば、ディスプレイ582は、ユーザがプロセスオブジェクトおよび制御モジュールまたはプロセスモジュールを選択できるようにしてもよいボタン586を含んでいる。それに応じて、機能ブロック基準パラメータ590がパラメータ部分460に追加される。
【0118】
制御システムの内部で測定される容器水位等のプロセスパラメータは、例えばディスプレイ560のようなディスプレイを使用して関連するプロセスオブジェクト内で参照できる。オフライントレーニングでは、この基準は、例えば入力機能ブロックのシミュレーションパラメータを更新するために使用されてもよい。オンラインシステムでは、この基準は測定された値にアクセスするため、および例えば、この測定値を使用してシミュレーションの誤差を補正するために使用されてもよい。また、オンラインシステムの測定が失敗すると、オペレータはシミュレーションによる値を使用することを選んでよい。
【0119】
測定値が1台の装置で標準である場合、その装置と関連するプロセスオブジェクトはその測定値に対応する基準パラメータを含んでよい。他の測定値が制御システムで入手できる場合には、これらの測定値の1つ以上がプロセスモジュールに追加されてもよい。例えば、ユーザはプロセスモジュールのプロセスブロックを右クリックできるであろう。ユーザは次に測定値を選択するため、および測定値が関連付けられる内部パラメータまたは出口ストリーム特性を選択するために使用できるであろう1つ以上のディスプレイを提供されてもよい。いったんこの参照が行われると、該測定値に対応する基準パラメータが、プロセスブロック選択時に該測定値に対応する基準パラメータがパラメータ部分462に自動的に表示されてもよい。
【0120】
図17は、特性、パラメータ、および/または測定の値が制御モジュールからプロセスモジュールの中に自動的に引き入れられてもよいことを示している。さらに、特性、パラメータ、および/または測定の値に対応するシミュレーションによる特性およびパラメータ値が制御モジュールに自動的に送信されてもよい。例えば、プロセスモジュール600は、タンクに対応するプロセスオブジェクト604と調整弁に対応するプロセスオブジェクト608を含んでよい。制御モジュール620は、PID制御機能ブロック628にタンクの水位測定値を提供する入力ブロック624を含んでもよい。PID制御機能ブロック628の出力は調整弁に対応する出力ブロック632に提供されてもよい。測定されたタンク水位は入力ブロック624から取得され、プロセスオブジェクト604に提供されてもよい。同様に、シミュレーションによるタンク水位はプロセスオブジェクト604から取得され、入力ブロック624に提供されてもよい。また、測定されたバルブ位置は出力ブロック632から取得され、プロセスオブジェクト608に提供されてもよい。同様に、シミュレーションによるバルブ位置はプロセスオブジェクト608から取得され、出力ブロック632に提供されてもよい。
【0121】
図14に関して前述されたように、プロセスモジュールを作成し、修正するためのエディタは、プロセスモジュールを作成するためにユーザによって使用できる種々のタイプのプロセスオブジェクトを提供してもよい。例えば、標準プロセスオブジェクトおよびカスタムプロセスオブジェクトが提供されてもよい。カスタムプロセスオブジェクトは、エンドユーザによって提供される要件のセットに応じてエンドユーザのために、またはエンドユーザによって設計されるプロセスオブジェクトを含んでよい。カスタムプロセスブロックは例えば複雑なプロセス装置をシミュレーションするために使用されてよく、装置の動作をシミュレーションするために(ステップ応答モデル、第1の原則モデル等の)1つ以上のモデルを使用してもよい。例えば、ステップ応答モデルは、反応、容器の中で完全とは言えない混合等をシミュレーションするために使用されてもよい。カスタムプロセスオブジェクトは、例えば装置のための出力ストリーム特性/パラメータおよび/または内部測定値と関連する内部特性/パラメータを生成するためにこのようなモデルを活用してもよい。1つ以上の入力ストリームの選択された特性がモデルに対する入力として提供されてもよい。カスタムプロセスオブジェクトは、例えば条件が理想的であるという仮定に基づいて他のパラメータ/特性を生成してもよい。
【0122】
図14を参照すると、カスタムオブジェクトのインスタンスは、部分458からブロックをドラッグし、例えば作業空間部分454に該ブロックをドロップすることによりプロセスモジュールに追加されてもよい。カスタムプロジェクトオブジェクトと関連する動的応答が、表示され、修正されてもよい。例えば、ユーザはカスタムオブジェクトを表すブロックの上で右クリックし、メニューから「特性」を選択できるであろう。ここで図18を参照すると、例示的なディスプレイ650等のディスプレイがそれに応じて表示されてもよい。ディスプレイ650は部分654のオブジェクトについて定義されるモデルを示す。部分658はモデルと関連する特性/パラメータが統合しているか、あるいは統合していないか否かを示す。
【0123】
図19を参照すると、モデルに関するさらに多くの情報が表示されてもよい。例えば、例示的なディスプレイ670は、階層ビューの中の異なるモデルを表示する部分674を含む。モデル678が選択され、異なる特性/パラメータと関連するステップ応答が部分682に表示される。ここで図20を参照すると、モデルと関連する特性/パラメータを選択することにより、その特性/パラメータに関するさらなる詳細が表示されてもよい。例示的なディスプレイ700では、パラメータ704は部分708で選択されている。関連するステップ応答は、情報部分712にさらに詳しく示されている。
【0124】
ディスプレイ700の一部716は、ユーザが応答を修正できるようにする。例えば、ユーザがボタン720を選択すると、図21の例示的なディスプレイ730等のディスプレイがユーザに表示されてもよい。ディスプレイ730によって、ユーザは利得、不動作時間、一次時間制約制、二次時間制約、リードタイム制約等のモデルのパラメータを修正できる。再び図20を参照すると、ユーザはステップ応答をグラフィックで設計するためにボタン740と744を活用できるであろう。
【0125】
ユーザは、初期の状態および定常状態までの時間等のモデルの他のパラメータを修正できてもよい。例えば、図22は、初期状態および/またはモデルの定常状態までの時間を修正するために使用されてもよい例示的なディスプレイ750である。ディスプレイ750はナビゲーション部分754と情報部分758とを含む。ユーザが初期状態インジケータ712を選択すると、初期状態および/または定常状態までの時間に関する情報が情報部分708に表示される。ユーザは情報部文708を介して多様な初期状態および/または定常状態までの時間を修正できる。例えば、ユーザはある特定の初期状態または定常状態までの時間に対応する値を選択してから、該値を修正する、または新しい値を入力できるであろう。
【0126】
前述されたようにモデルを作成する代わりに、モデルは別のソフトウェアツールを使用して作成することもできるであろう。それからモデルをインポートできる。例えば、有限インパルス応答(FIR)モデル等の作成されたモデルの表現はテキストファイルの定義されたフォーマットに記憶できるであろう。次に、モデルはテキストファイルを使用してインポートできる。定義されたフォーマットは、例えば、入力ストリーム名と出力ストリーム名、および内部パラメータの名前が、モデルが対応するプロセスオブジェクトのストリームとパラメータ定義に一致しなければならないことを指定できるであろう。
【0127】
プロセスモジュールエディタにより、ユーザは新しいプロセスオブジェクトを作成することもできる。このようなプロセスオブジェクトはプロセスプラントエンティティの動作をシミュレーションするために1つ以上のタイプのモデルを活用できる。例えば、ユーザはステップ応答モデルおよび第1の主要モデル等の1つ以上のタイプのモデルから選択できてもよい。単なる1つの例として、モデルはC、C++、C#、ビジュアルBASIC等のプログラミング言語を使用して作成されてもよい。
【0128】
再び図14を参照すると、ユーザは、例えばディスプレイ450の「ファイル」メニューから「新規」を選択することにより、あるいは「ファイル」メニューの「新規」選択に対応するツールバーのアイコンを選択することにより新しいプロセスオブジェクトを作成することを選んでよい。
【0129】
次に、図23の例示的なディスプレイ780のようなディスプレイがユーザに表示されてもよい。ディスプレイ780によってユーザは、プルダウンメニュー784等のユーザインタフェース機構を介して新しいプロセスモジュールを作成するのか、新しいプロセスオブジェクトを作成するのか等を選択できる。ユーザが新しいプロセスオブジェクトを作成することを選ぶ場合には、ディスプレイ780によりユーザは、ボタン786等のユーザインタフェース機構を介して既存のプロセスオブジェクトから起動するか否かを選択できる。また、ディスプレイ780によって、ユーザはプルダウンメニュー788等のユーザインタフェース機構を介して新しいプロセスオブジェクトによって活用されるモデルのタイプを選択できる。例示的なディスプレイ780では、ユーザはステップ応答モデルまたは第1の主要モデルから選択してもよい。第1の主要モデルは、C、C++、C#、ビジュアルBASIC等のプログラミング言語を使用して指定されてもよい。
【0130】
ステップ応答モデルが選択される場合、図24の例示的なディスプレイ800のようなディスプレイがユーザに表示されてもよい。ディスプレイ800はナビゲーション部分802と情報部分804を含む。ナビゲーション部分802は、定義できるプロセスブロックの異なる態様に対応する複数のインジケータを含んでもよい。例えば、ナビゲーション部分802は、定義できるプロセスブロックの異なる態様に対応する複数のインジケータを含んでもよい。例えば、ナビゲーション部分802は、ストリームとパラメータのインジケータ806、モデルセットアップインジケータ808、およびモデルインジケータ810を含んでもよい。ユーザがストリームおよびパラメータインジケータ806を選択すると、情報部分は、ユーザが入力ストリーム、出力ストリーム、パラメータ等を定義できるユーザインタフェース機構812を含んでもよい。例えば、入力ストリームと出力ストリームの場合、ユーザは、ストリーム名、ストリームのタイプ(例えば、液体、固体、または気体)、位置、組成等を定義し得る。
【0131】
ここで図25を参照すると、ユーザがタブ814を選択する場合、ユーザが、ユーザにとって可視とならなければならないプロセスオブジェクトのパラメータを追加または修正可能とするために情報部分804が変更されてもよい。ユーザは、例えばパラメータの名前、パラメータの単位、アクセス(読み取り専用、読み書き等)、パラメータの低い限度および/または高い限度、位置等の内の1つ以上を定義できてもよい(または何も定義できなくてもよい)。
【0132】
ユーザは、入力ストリームと出力ストリームの属性およびステップ応答モデルによって活用されるパラメータを指定し得る。図26を参照すると、ユーザがモデルセットアップインジケータ808を選択する場合、情報部分は、ユーザが入力ストリームと出力ストリームの属性およびステップ応答モデルによって活用されるパラメータを指定できるように修正されてもよい。例えば、ユーザが「追加」820ボタンを選択すると、ユーザがパラメータを追加し、パラメータが統合された応答を有さなければならないか否かを指定できるようにディスプレイ824が表示される。
【0133】
さらに、ユーザはステップ応答モデルを定義してもよい。例えば、ユーザがディスプレイ部分802の中でモデルインジケータ810を選択する(例えば「右クリックする」)と、「新規」選択を含むメニューが表示されてもよい。ここで図27を参照すると、ユーザがメニューから「新規」を選択すると、デフォルト名の付いたモデルインジケータ830がディスプレイ部分802の中のモデルインジケータ810の下で追加されてもよい。さらに、モデルに対応するインジケータ832、834、および836がディスプレイ部分802でも追加されてもよい。さらに、情報部分804は、ユーザが例えばテキスト記述および定常状態までの時間パラメータ等のモデルに関する情報を追加できるように修正されてもよい。モデルと初期状態は、例えば図20から図22に関して前述された方法と同様の方法で指定されてもよい。
【0134】
ここで図23と図28を参照すると、ユーザが例えばディスプレイ780を介して新しいプロセスオブジェクトにより活用される第1の主要モデルを選択すると、プロセスオブジェクトエディタは例示的なディスプレイ850等のディスプレイを活用してユーザに提供されてもよい。ディスプレイ850は、入力ストリームと出力ストリームの表示を表示するための部分854と、パラメータの表示を表示するための部分856を含んでよい。いくつかのパラメータがすべてのプロセスオブジェクトにとって標準であってよく、したがって部分856に最初に示されてもよい。ディスプレイ850は、シミュレーションのためのアルゴリズムを指定するための部分858も含んでよい。該部分858は、(例えば、初期、実行、後、等の)異なる動作モードを選択するためのタブ860、862および864を含んでよい。ユーザは、例えば、部分866にC、C++、C#等のプログラミング言語でアルゴリズムを入力してもよい。
【0135】
さらにユーザはプロセスオブジェクトを作成する際にストリームおよび/またはパラメータを追加し得る。例えば、部分854で右クリックすることにより、ユーザは「新規」選択を有するメニューを提供されてもよい。ユーザが「新規」選択を選択すると、図29の例示的なディスプレイ870等のディスプレイはユーザに表示されてもよい。ディスプレイ870を使用すると、ユーザは例えば、名前、接続使用(例えばINまたはOUT)、位置、ストリームタイプ(例えば、液体、固体、または気体)、および/または存在する場合は関連組成を定義できてもよい。同様に、ユーザはストリームを右クリックしてから、右クリックに応えて表示されるメニューから「修正」要素を選ぶことにより既存のストリームを修正できるであろう。ディスプレイ870に類似したディスプレイが、ストリームを修正するために使用できるであろう。
【0136】
別の例として再び図28を参照すると、部分856で右クリックすることにより、ユーザは「新規」選択を有するメニューを提供されてもよい。ユーザが「新規」選択を選択すると、図30の例示的なディスプレイ890等のディスプレイがユーザに選択されてもよい。ディスプレイ890を使用すると、ユーザは名前、パラメータタイプ(例えば、浮動小数点、ブール(演算子)、離散、機能ブロック基準、文字列、指定セット等)単位、アクセス(例えば、読み取り専用、読み書き等)、位置、低い限度値と高い限度値、デフォルト値、ユーザにとってパラメータが可視でなければならないか否か等を定義できてもよい。同様に、ユーザはパラメータを右クリックしてから、右クリックに応えて表示されるメニューから「修正」要素を選ぶことができるであろう。ディスプレイ890に類似したディスプレイはパラメータを修正するために使用できるであろう。
【0137】
指定されたパラメータタイプに応じてディスプレイ890等のディスプレイに異なるフィールドが表示できるであろう。例えば、パラメータタイプが機能ブロック基準として選択される場合、参照されてもよい(例えば、入力、出力、AI、DI、PCI、AO、DO、DV等の)指定ブロック基準の名前とブロック(複数の場合がある)のタイプが表示されてもよい。
【0138】
当業者が認識するように、プロセスモジュールはプロセスをシミュレーションする上で役立つためのモデルの複数のタイプを活用できる。例えば、プロセスモジュールの中の別のプロセスオブジェクトが第1の主要モデルを活用してもよいが、プロセスモジュールの中の1つのプロセスオブジェクトはステップ応答モデルを活用してもよい。さらに、ユーザはプロセスオブジェクトまたはプロセスモジュールと関連してあらゆるモデルを活用しないことを選んでよい。別のインプリメンテーションでは、少なくとも1つのプロセスオブジェクトが複数の異なるタイプのモデルを活用できてもよい。例えば、別のパラメータが第1の主要モデルを活用してもよいのに対し、プロセスオブジェクトの1つのパラメータはステップ応答モデルを活用してもよい。
【0139】
ストリーム要素は、モジュールによって実現されるシミュレーションの開始点と終了点を定義するために使用されてもよい。使用され得るストリーム要素のタイプは、ユーザ定義特性値がシミュレーションで使用され得るストリーム要素、上流ブロックで決定される特性がストリーム特性値として反映されるストリーム要素、このストリームに構成されるパラメータが外部出力ストリームの特性値を読み取るために使用され、ストリーム特性値として使用されるストリーム要素、上流ブロックによってストリーム要素に渡される特性値が構成されたパラメータを使用して外部入力ストリームに書き込まれるストリーム要素等を含む。アクセスされ、構成され得るストリームパラメータはストリームタイプに応じて変化してもよい。
【0140】
ユーザ定義特性値がシミュレーションで使用されるストリーム要素は、例えば、プロセスシミュレーションで開始点を定義するために使用されてもよい。入力ストリームがプロセスモジュールに追加されると、それはモジュールのために選択されたデフォルト接続タイプをデフォルトによって取られる。ディスプレイの作業空間部分でストリームをクリックすることにより、出力特性値とストリームと関連する構成可能パラメータが作業空間部分とは個別のディスプレイの一部に示される。
【0141】
前述されたように、ユーザは、グラフィックディスプレイを作成し、次にそのディスプレイから対応するプロセスモジュールを自動的に生成し得るし、および/または逆も同様である。図31は、対応するプロセスグラフィックからプロセスモジュールを、および/または逆もまた同様に自動的に生成するために使用されてもよい例示的なシステム900のブロック図である。システム900は、プロセスグラフィックスとプロセスモジュールの編集を容易にするための編集スタジオ904と、編集されているプロセスグラフィックスとプロセスモジュールを記憶するためのクライアントモデル908と、およびデータベース912とを含む。システム900の少なくともいくらかが例えばソフトウェアを介して実現されてもよい。
【0142】
編集スタジオ904とクライアントモデル908は、ワークステーション、サーバ等の1つ以上のコンピューティングシステムによって実現できる。図1を参照すると、編集スタジオ904および/またはクライアントモデル908は、例えば操作ワークステーション20および/または操作ワークステーション22によって少なくとも部分的に実現できる。例えば、編集スタジオ904および/またはクライアントモデル908は、操作ワークステーション20によってのみ、あるいはワークステーション22によってのみ実現できる。別のインプリメンテーションでは、編集スタジオ904および/またはクライアントモデル908は、ワークステーション20がクライアントとして動作し、他のコンピューティングシステムがクライアントサーバ装置でサーバとして動作する別のコンピューティングシステムと連動して操作ワークステーション20によって実現できる。構成データベース28は、例えばデータベース912を含むことができる。
【0143】
編集スタジオ904は、プロセスグラフィックスの編集を容易にするためにプロセスグラフィックスエディタ916を、および編集プロセスモジュールを容易にするためにプロセスモジュールエディタ920を含んでもよい。プロセスグラフィックスエディタ916は、要素をどのように描画する必要があるのか(例えば、線の重さ、色、陰影等)に関する指示のような描画情報924と接続されてもよい。プロセスグラフィックスエディタ916は、例えば図3のディスプレイ64等のユーザインタフェースディスプレイを生成し得る。プロセスモジュールエディタ920は、クライアントモデル908と接続されてもよい。プロセスグラフィックスエディタ916は、例えば図14のディスプレイ450等のユーザインタフェースディスプレイを生成し得る。
【0144】
編集スタジオ904は、プロセスグラフィックスエディタ916およびプロセスモジュールエディタ920で講じられる編集処置を調整するための監視プログラムモジュール932も含んでよい。例えば、プロセスグラフィックスエディタ916は、プロセスグラフィックスを編集するまたは作成する際にユーザによって講じられる編集処置を監視プログラムモジュール932に通知してもよい。監視プログラムモジュール932は、次にプロセスグラフィックスと関連するプロセスモジュールに関して対応する処置を講じるためにプロセスモジュールエディタ920に指令を発する。別の例として、プロセスモジュールエディタ920は、プロセスモジュールを編集する、または作成する際にユーザによって講じられる編集処置を監視プログラムモジュール932に通知してもよい。監視プログラムモジュール932は、次に、プロセスモジュールと関連するプロセスグラフィックスに関して対応する処置を講じるためにプロセスグラフィックスエディタ916に指令を発する。このようにして、システム900は、プロセスグラフィックスの作成または編集に基づいてプロセスモジュールの自動生成または編集を容易にしてもよい。
【0145】
いくつかの例示的なシナリオが、システム900の動作を描くために説明されるであろう。1つのシナリオでは、ユーザはプロセスグラフィックスエディタ916を使用してアクチュエータに対応するグラフィックスブロックをプロセスグラフィックスに追加する。プロセスグラフィックスエディタ916は、次に、アクチュエータブロックがプロセスグラフィックスに追加された旨を監視プログラムモジュール932に通知してもよい。監視プログラムモジュール932はプロセスモジュールエディタ920に、プロセスグラフィックスに対応するプロセスモジュールにアクチュエータに対応するプロセスブロックを追加するように指令を発する。同様なシナリオでは、ユーザはプロセスモジュールエディタ920を使用してポンプに対応するプロセスオブジェクトをプロセスモジュールに追加する。プロセスモジュールエディタ920は、ポンプオブジェクトがプロセスモジュールに追加された旨を監視プログラムモジュール932に通知してもよい。監視プログラムモジュール932は、次に、プロセスグラフィックスエディタ916に、ポンプに対応するグラフィックスブロックをプロセスモジュールに対応するプロセスグラフィックスに追加するように指令を発する。
【0146】
別のシナリオでは、ユーザはプロセスグラフィックスエディタ916を使用してプロセスグラフィックスからグラフィックスブロックを削除する。プロセスグラフィックスエディタ916は、次に、グラフィックスブロックがプロセスグラフィックから削除された旨を監視プログラムモジュール932に通知する。監視プログラムモジュール932は、次に、プロセスモジュールエディタ920に、プロセスグラフィックスに対応するプロセスモジュールからプロセスグラフィックスに対応するプロセスブロックを削除するように指令を発する。同様のシナリオでは、ユーザはプロセスモジュールエディタ920を使用してプロセスモジュールからプロセスオブジェクトを削除する。プロセスモジュールエディタ920は、次に、プロセスグラフィックスがプロセスモジュールから削除された旨を監視プログラムモジュール932に通知する。監視プログラムモジュール932は、次に、プロセスグラフィックスエディタ916に、プロセスモジュールに対応するプロセスグラフィックスからポンプに対応するグラフィックスブロックを削除するように指令を発する。
【0147】
クライアントモデル908は、編集スタジオ904によって作成され、プロセスグラフィックス936とグラフィックスライブラリ940を含んでもよい。プロセスグラフィックスエディタ916は、クライアントモデルプロセスグラフィックス936に作用し、グラフィックスライブラリ940の中に設けられるグラフィックスブロックを活用してもよい。クライアントモデルプロセスグラフィックス936は、当初、データベース912の中のデータベースプロセスグラフィックス944に基づいて作成されてもよい。以後、クライアントモデル908が、クライアントモデルプロセスグラフィックス936で加えられた変更を反映するために、データベース912の中のデータベースプロセスグラフィックス944を更新する。このような更新は、例えば、クライアントモデルプロセスグラフィックス936の変更に応えて、ユーザ要求に応えて、周期的に、ユーザがプロセスグラフィックスまたはプロセスモジュールの編集または作成の完了を示すとき等に発生してもよい。
【0148】
クライアントモデル908は、クライアントモデルプロセスモジュール948とプロセスブロックライブラリ952も含んでよい。プロセスモジュールエディタ920は、クライアントモデルプロセスモジュール948に作用し、プロセスブロックライブラリ952に設けられるプロセスブロックを活用してもよい。クライアントモデルプロセスモジュール948は、データベース912の中のプロセスモジュール複製956またはデータベースプロセスモジュール960に基づいて初期に作成されてもよい。例えば、プロセスモジュール複製956は、初期にデータベースプロセスモジュール960に基づいて作成可能となる。以後、クライアントモデル908は、クライアントモデルプロセスモジュール948で加えられた変更を反映するためにデータベース912の中のプロセスモジュール複製956を更新されてもよい。このような更新は、例えば、クライアントモデルプロセスモジュール948の変更に応えて、ユーザ要求に応えて、周期的に、ユーザがプロセスグラフィックスまたはプロセスモジュールの編集の完了または作成の完了を示すとき等には作成してもよい。例えば、ユーザがプロセスグラフィックスまたはプロセスモジュールの編集の完了または作成の完了を示すと、プロセスモジュール複製956がデータベースプロセスモジュール960を更新するために使用されてもよい。
【0149】
動作中、ユーザは、例えばプロセスグラフィックスを編集する、または作成するためにプロセスグラフィックスエディタ916を活用してもよい。ユーザがプロセスグラフィックスに加える変更は、クライアントモデルプロセスグラフィックス936として記憶されてもよい。また、クライアントモデルプロセスグラフィックス936に対する変更は、次に前述されたようにデータベースプロセスグラフィックス944に伝搬される。さらに、ユーザがプロセスグラフィックスに加える変更は、プロセスグラフィックスに対応するプロセスモジュールで反映される。すなわち、プロセスグラフィックスエディタ916は、プロセスグラフィックスに対する変更の表示を監視プログラムモジュール932に送信される。次に、監視プログラムモジュール932は対応するモジュールに対応した変更を加えるためにプロセスモジュールエディタ920に指令を送信する。プロセスモジュールに対する変更はクライアントモデルプロセスモジュール948として記憶される。また、クライアントモデルプロセスモジュール948に対する変更は、前述されたように、プロセスモジュール複製956とデータベースプロセスグラフィックス944に伝搬されてもよい。
【0150】
同様に、ユーザは、例えばプロセスモジュールを編集するまたは作成するためにプロセスモジュールエディタ920を活用してもよい。ユーザがプロセスモジュールに加える変更は、クライアントモデルプロセスモジュール948として記憶されてもよい。また、クライアントモデルプロセスモジュール948に対する変更は、次に、前述されたように、プロセスモジュール複製956およびデータベースプロセスグラフィックス944に伝搬される。さらに、ユーザがプロセスモジュールに加える変更は、プロセスモジュールに対応するプロセスグラフィックスに反映される。すなわち、プロセスモジュールエディタ920は、プロセスモジュールに対する変更の表示を監視プログラムモジュール932に送信される。次に、監視プログラムモジュール932は、対応するグラフィックスに対する対応する変更を加えるためにプロセスグラフィックスエディタ916に指令を送信する。プロセスグラフィックスに対する変更は、クライアントモデルプロセスグラフィックス936として記憶される。また、クライアントモデルプロセスグラフィックス936に対する変更は、次に前述されたようにデータベースプロセスグラフィックス944に伝搬される。
【0151】
監視プログラムモジュール932に関して、それは概してプロセスグラフィックスエディタ916からプロセスグラフィックスに対する変更の表示を受信する。次に、監視プログラムモジュール932は、プロセスモジュールに対するどの変更が、プロセスグラフィックスに対するこれらの変更に相当するのかを決定する。次に、監視プログラムモジュール932は、プロセスモジュールエディタ920に指令を発する。プロセスグラフィックスに対するいくつかの変更の場合、監視プログラムモジュール932は、対応するプロセスモジュールに対応する変更がないと判断する。例えば、プロセスグラフィックスのグラフィックス要素の色の変更はプロセスモジュールにおける対応する変更を有さない場合がある。
【0152】
監視プログラムモジュール932は、プロセスグラフィックスに対する変更の表示を受信すると、プロセスモジュールに対するどの変更が、プロセスグラフィックスに対する変更に相当するのかを判断する。また、監視プログラムモジュール932は、プロセスグラフィックスに対する変更に相当するプロセスモジュールに対する変更を、周期的に、プロセスグラフィックスに対する変更の特定数の表示が受信されたとき、ユーザが、それが変更をプロセスモジュールに伝搬させることを希望することを示す場合に、ユーザがプロセスグラフィックスの編集または作成が完了したことを示すとき等に決定する。同様に、監視プログラムモジュール932は、それがプロセスグラフィックスに対する変更の表示を受け取った直後に、あるいは監視プログラムモジュール932が指令を決定した直後に、プロセスモジュールエディタ920に指令を発する。また、監視プログラムモジュール932は、プロセスモジュールエディタ920に、周期的に、プロセスグラフィックスに対する変更の特定数の表示が受け取られたとき、特定数の指令が決定されたとき、ユーザが、それが変更をプロセスモジュールに伝搬させることを希望することを示すとき、ユーザがプロセスグラフィックスの編集または作成が完了したことを示すとき等に指令を発する。
【0153】
同様に、監視プログラムモジュール932は、概してプロセスモジュールエディタ920からプロセスモジュールに対する変更の表示を受け取る。次に、監視プログラムモジュール932は、プロセスグラフィックスに対するどの変更がプロセスモジュールに対するこれらの変更に相当するのかを決定する。次に、監視者プログラムモジュール932は、プロセスグラフィックスエディタ916に指令を発する。プロセスモジュールに対するいくつかの変更の場合、監督者モジュール932は対応するプロセスグラフィックスに対する対応する変更がないと判断する。
【0154】
いくつかのケースでは、システム900は、プロセスグラフィックスに基づいてプロセスモジュールの構成を自動的に完了できない場合がある。このようなケースでは、ユーザはプロセスモジュールの構成を完了するためにプロセスモジュールエディタ920を活用できる。例えば、図7Aと図7Bに関して前述されたように、制御モジュールはプロセスモジュールおよび/またはプロセスグラフィックスと統合されてもよい。システム900は、プロセスグラフィックスに基づいて制御モジュールのプロセスモジュールと統合を自動的に決定できない場合がある。したがって、ユーザは構成を完了する場合に役立てるためにプロセスモジュールエディタ920または何らかの他のツールを活用できるであろう。
【0155】
図32は、プロセスモジュールを構成する場合に役立てるためにしようされてもよい例示的なディスプレイ1000である。例示的なディスプレイ1000は、例えば、図1の構成アプリケーション38によって生成されてもよい。図32に示されるように、プロセスモジュールを描くプロセスモジュール部分1004は、プロセスモジュールと関連する制御モジュールを描く制御モジュール部分1008に近接して表示できるであろう。プロセスモジュール部分1004はバルブブロック1012、タンクブロック1014、ポンプブロック1016、およびバルブブロック1018を含む。バルブブロック1012の出力はタンクブロック1014の入力に接続され、ポンプブロック1016の入力はタンクブロック1014の出力に接続される。ポンプブロック1016の出力はバルブブロック1018の入力に接続される。バルブブロック1012の入力とバルブブロック1018の出力はストリーム要素(ラベルは付けられていない)に接続される。バルブブロック1012、タンクブロック1014、ポンプブロック1016、およびバルブブロック1018は、配管要素(ラベルは付けられていない)を介して直列で接続される。
【0156】
制御モジュール部分1008は、プロセスモジュール部分1004のブロックと関連する物理要素の内の少なくともいくつかを制御する制御モジュールに対応する。制御モジュール部分1008は、プロセスモジュール部分1004に描かれている要素の中で、あるいは要素と関連する制御を提供する相互接続されている機能ブロックのセットを含む。制御モジュールは、第1の制御ループ1024と第2の制御ループ1028を含む。第1の制御ループ1024はタンク1014の中への流体の流れに付いての流体入力情報を受信することを目的とするAI機能ブロック1032、PID制御を実行することを目的とするPID制御機能ブロック1034、およびバンク1014の中への材料の所望の流れを達成するためにバルブ1012を操作することを目的とするAO機能ブロック1036を含む。同様に、制御ループは、タンク1014内で水位センサによって測定されるようなタンク水位情報を提供することを目的とするAI機能ブロック1040、PID制御ブロック1042、およびバルブ1018を操作し、タンク1014内の流体の水位の制御を達成するためにPID制御ブロックから制御信号を受信するAO機能ブロック1044を含む。部分1008に描かれている制御モジュールも、例えば、タンク1014に関して制御アクティビティを実行するために、そのように所望の場合に、制御ループ1024と1028によって使用されてもよい、ポンプ1016のオン/オフ状態または動作を示すことを目的とするDI機能ブロック1050を含む。
【0157】
ディスプレイ1004内に描かれているプロセスモジュールとディスプレイ1008に描かれている制御モジュールを統合するために、ユーザはプロセス変調部分1004の要素と制御モジュール部分1008の関連要素をグラフィックに選択することによりディスプレイ1000を活用してもよい。例えば、ユーザはマウス、スタイラス、タッチスクリーン等を用いて、例えば、ユーザがプロセスモジュール部分1004の中の要素にリンクすることを希望する制御モジュール部分1008の中の要素を選択できるであろう。制御モジュール部分1008内の要素を選択した後に、ユーザは、次に、例えば、制御モジュール部分1008内で選択された要素と関連付けられなければならないプロセスモジュール部分1004内の要素を「右クリックする」、「ダブルクリックする」等によって選択できるであろう。要素が、制御モジュール要素が関連付けられるあろう複数のパラメータを有する場合、ユーザはポップアップウィンドウメニュー、チェックボックス等を使用して、パラメータの内の1つを選択するようにプロンプトを出されるであろう。例えば、ユーザはAOブロック1036を最初に選択できるであろう。次に、ユーザはバルブ1012でダブルクリックできるであろう。このようにして、ユーザはAO機能ブロックが、タンク1014内への材料の所望の流れに影響を及ぼすためにバルブ1012を操作することを指定できる。
【0158】
同様に、ユーザは、制御モジュール部分1008内のAI機能ブロック1032をグラフィックで選択し、次にプロセスモジュール部分1004のタンクブロック1014を選択できる。タンクブロック1014はそれと関連付けられる複数のパラメータ(例えば、タンクの中への流れ、タンクレベル等)を有することがあるため、ユーザはタンクブロック1014を選択することに応えてタンクパラメータの内の1つを選ぶようにプロンプトを出される。例えば、ユーザは、ポップアップウィンドウ、メニュー、チェックボックス等を介して入力フローパラメータまたはタンクレベルパラメータの間で選ぶようにプロンプトを出される。するとユーザは入力フローパラメータを選択できる。
【0159】
前述された例では、ユーザは最初に制御モジュール部分の要素を選んでから、プロセスモジュール部分の関連要素を選ぶが、ユーザは最初にプロセスモジュール部分の要素を選んでから、制御モジュール部分の関連要素を選ぶことができる。
【0160】
別の例としては、ユーザは、制御モジュール部分1008に描かれている制御モジュール、およびプロセスモジュール部分1004に描かれているプロセスモジュールのビューの提示を受け、生後モジュールとプロセスモジュールの要素は描かれているが、それらの相互接続は描かれていない。例えば、プロセスモジュールのビューは、バルブ1012、タンク1014、ポンプ1016、およびバルブ1018がプロセスモジュールの要素であるとして描かれている階層ビューとなるであろう。同様に、制御モジュール1008のビューは、制御ループ1024、制御ループ1028、およびDI機能ブロックが制御モジュールの要素であるとして描かれている階層ビューであろう。AI機能ブロック1036、PID機能ブロック1034、およびAO機能ブロック1036は、制御ループ1024の要素であるとして描かれてよく、AI機能ブロック1040、PID機能ブロック1042、およびAO機能ブロック1044は制御ループ1028の要素であるとして描かれてもよい。ユーザは、次に、前述された方法に類似した方法で、プロセスモジュールの階層ビューの要素、および制御モジュールの階層ビューの中の関連要素をグラフィックに選択できる。
【0161】
実現時に、本明細書に説明されているソフトウェアのいずれかは磁気ディスク、レーザディスク、または他の記憶媒体上でのように任意のコンピュータ読取可能メモリ内に、コンピュータまたはプロセッサ等のRAMまたはROM内に記憶されてもよい。同様に、このソフトウェアは、例えばコンピュータ読取可能ディスクまたは他の可搬型のコンピュータ記憶機構上で、あるいは電話回線、インターネット、ワールドワイドウェブ、任意の他のローカルエリアネットワークまたは広域ネットワーク等の上を含む、(その配信が可搬型の記憶媒体を介してこのようなソフトウェアを提供することと同じである、もしくは取替え可能であると見なされる)任意の公知のまたは所望の配信方法を使用してユーザ、プロセスプラントまたはオペレータワークステーションに送達されてもよい。さらに、このソフトウェアは、変調または暗号化を行わずに直接的に提供、あるいは通信チャネル上で送信される前に、任意の適切な変調搬送波および/または暗号化技法を使用して変調される、および/または暗号化されてもよい。
【0162】
本発明は、例示的となることだけを目的とし、本発明の制限的となることを目的としない特定な例に関して説明されてきたが、変更、追加または削除が本発明の精神または範囲から逸脱することなく開示されている実施形態に加えられてもよいことが当業者に明らかとなる。
【技術分野】
【0001】
(関連出願)
本願は、2004年5月4日に出願され、本願がこれにより全体を本明細書に参照することにより明示的に組み込んでいる「プロセス制御システムを表現し、監視し、対話するためのグラフィックユーザインタフェース(Graphic User Interface for Representing,Monitoring and Integrating with Process Control Systems)」と題される米国仮特許出願、出願番号第60/567,980号の利益、優先権のために正規に出願された出願および請求項である。本願は、全体の開示がこれによりその全体を本明細書に参照することにより明示的に組み込まれている、2002年10月22日に出願され、2004年4月22日に米国公報番号第2004/0075689号として公開された、同様に「プロセスプラントにおけるスマートプロセスモジュールおよびオブジェクト(Smart Process Modules and Objects in Process Plants)」と題される米国特許出願、出願番号第10/278,469号の一部継続出願である、2003年7月21日に出願され、2004年8月日に米国公報番号第2004/0153804号として公開された「グラフィックディスプレイ要素、プロセスモジュールおよび制御モジュールのプロセスプラントにおける統合(Integration of Graphic Display Elements,Process Modules and Control Modules in Process Plants)」と題される米国特許出願、出願願望第10/625,481号にも関連する。本願は、全体の開示がこれによりその全体を本明細書に参照することにより明示的に組み込まれている、2003年2月18日に出願され、2004年10月7日に米国公報番号第2004/0199925号として公開された「プロセスプラント構成システムにおけるモジュールクラスオブジェクト(Module Class Objects in a Process Plant Configuration System)」と題される米国特許出願、出願番号第10/368,151号にも関連する。本願は、本願と同日に国際(PCT)出願として出願され、本願がこれにより全体を本明細書に参照することにより組み込んでいる以下の特許出願にも関連する。つまり、「プロセス環境における関連グラフィックディスプレイ(Associated Graphic Displays in a Process Environment)」(代理人整理番号第06005/41111号)、「プロセス制御システムのためのユーザにより構成可能なアラームおよびアラームトレンド分析(User Configurable Alarms and Alarm Trending for Process Control Systems)」(代理人整理番号第06005/41112号)、「プロセスプラントにおけるプロセスモジュールおよびエキスパートシステムの統合(Integration of Process Modules and Expert Systems in Process Plants)」(代理人整理番号第06005/41113号)、「統合された環境におけるカスタマイズされたプロセスグラフィックディスプレイ層を有するプロセスプラントユーザインタフェースシステム(A Process Plant User Interface System Having Cusstomized Process Graphic Display Layers in an Integrated Environment)」(代理人整理番号第06005/41114号)、「プロセス環境におけるスクリプト化されたグラフィック(Scripted Graphics in a Process Environment)」(代理人整理番号第06005/41115号)、「プロセス構成および制御環境へのグラフィック統合(Graphics Integration into a Process Configuration and Control Environment)」(代理人整理番号第06005/41116号)、「プロセス環境における複数の視覚化のあるグラフィックス要素(Graphic Element with Multiple Visualization in a Process Environment)」(代理人整理番号第06005/41117号)、「統合プロセス制御システムインタフェースのためのグラフィックディスプレイ構成フレームワーク(Graphic Display Configuration Framework for Unified Process Control System Interface)」(代理人整理番号第06005/41124号)、「プロセスプラントユーザインタフェースにおけるマークアップ言語をベースにした動的プロセスグラフィックス(Markup Language−Based,Dynamic Process Graphics in a Process Plant User Interface)」(代理人整理番号第06005/41127号)、「プロセス制御データを修正するための方法および装置(Methods and Apparatus for Modifying Process Control Data)」(代理人整理番号第06005/591622号と第20040/59−11622号)、「プロセス制御データにアクセスするための方法および装置(Methods and Apparatus for Accessing Process Control Data)」(代理人整理番号第06005/591623号および第20040/59−11623号)、「プロセス制御システムのための統合グラフィック実行時インタフェース(Integrated Graphical Runtime Interface for Process Control Systems)」(代理人整理番号第06005/591628号および第20040/59−11628号)、「プロセス制御システムのためのサービス指向アーキテクチャ(Service−Oriented Architecture for Process Control Systems)」(代理人整理番号第06005/591629号および第20040/59−11629号)である。
【0002】
本発明は、概してプロセスプラントに関し、より詳細にはプロセスプラント制御アーキテクチャのシステムレベルでユーザ表示、シミュレーションおよび制御を統合できるようにするインテリジェント制御シミュレーション環境に関する。
【背景技術】
【0003】
化学関連プロセス、石油関連プロセス、または他のプロセスで使用されるシステム等の分散型プロセス制御システムは、通常、アナログバス、デジタルバスまたはアナログ/デジタル結合バスを介して1台以上のフィールドデバイスに通信可能に結合されている1台以上のプロセスコントローラを含む。例えば、バルブ、バルブポジショナ、スイッチおよび送信機(例えば、温度センサ、圧力センサ、水位センサ、および流量センサ)であってもよいフィールドデバイスはプロセス環境内に配置され、バルブの開閉、プロセスパラメータの測定等のプロセス機能を実行する。周知のFieldbusプロトコルに準拠しているスマートフィールドデバイスも制御計算、アラーム機能、およびコントローラ内で一般的に実現されている他の制御機能を実行してもよい。また通常はプラント環境の中に配置されるプロセスコントローラは、フィールドデバイスによって行われるプロセス測定および/またはフィールドデバイスに関する他の情報を示す信号を受信し、プロセス制御決定を下し、受信された情報に基づいて制御信号を発生させ、HARTデバイスおよびFieldbusフィールドデバイス等のフィールドデバイスで実行されている制御モジュールまたはブロックと連携調整する、例えば異なる制御モジュールを起動するコントローラアプリケーションを実行する。コントローラ内の制御モジュールはフィールドデバイスに通信回線上で制御信号を送信し、それによってプロセスの動作を制御する。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2001−117627号公報
【特許文献2】特開平10−124115号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
通常、フィールドデバイスおよびコントローラからの情報は、一般的にコントロールルームまたはより厳しいプラント環境から離れた他の場所に設置されているオペレータワークステーション、パーソナルコンピュータ、データヒストリアン、レポートジェネレータ、集中データベース等の1台以上の他のハードウェアデバイスがデータハイウェイ上で利用できる。これらのハードウェアデバイスは、オペレータが、プロセス制御ルーチンの設定値を変更し、コントローラまたはフィールドデバイス内の制御モジュールの動作を修正し、プロセスの現状を表示し、フィールドデバイスおよびコントローラによって生成されるアラームを表示し、人員をトレーニングするまたはプロセス制御ソフトウェアをテストする目的でプロセスの動作をシミュレーションし、構成データベースを保持し、更新する等のプロセスに関する機能を実行できるようにし得るアプリケーションを実行する。
【0006】
1つの例として、エマーソンプロセスマネジメント(Emerson Process Management)より販売されているDeltaV(登録商標)制御システムは、プロセスプラント内の様々な場所に配置される異なるデバイスに記憶され、それらにより実行される複数のアプリケーションを含む。1つ以上のオペレータワークステーションに常駐する構成アプリケーションにより、ユーザはプロセス制御モジュールを作成または変更し、データハイウェイを介して専用の分散型コントローラにこれらのプロセス制御モジュールをダウンロードできる。通常、これらの制御モジュールは、それに対する入力に基づいて制御スキームの中で機能を実行し、制御スキームの中で他の機能ブロックに対して出力を提供するオブジェクト指向プログラミングプロトコルのオブジェクトである通信可能に相互接続されている機能ブロックから構成されている。構成アプリケーションは、設計者が、オペレータにデータを表示するために、およびオペレータが設定点等の設定値をプロセス制御ルーチン内で変更可能とするために表示アプリケーションによって使用されるオペレータインタフェースを作成または変更できるようにしてもよい。各々の専用コントローラ、およびいくつかのケースではフィールドデバイスは実際のプロセス制御機能を実現するためにそこに割り当てられ、ダウンロードされる制御モジュールを起動するコントローラアプリケーションを記憶し、実行する。1つ以上のオペレータワークステーションで実行されてもよい表示アプリケーションはデータハイウェイを介してコントローラアプリケーションからデータを受信し、このデータをプロセス制御システムの設計者、オペレータ、またはユーザインタフェースを使用するユーザに表示し、オペレータビュー、エンジニアビュー、技術者ビュー等の多くの異なるビューのいずれかを提供してもよい。構成データベースアプリケーションは、現在のプロセス制御ルーチン構成およびそれに関連付けられているデータを記憶するために、データハイウェイに接続されているさらに追加のコンピュータで実行してもよいが、データヒストリアンアプリケーションは、通常、データハイウェイ全体で提供されるデータの一部またはすべてを収集し、記憶するデータヒストリアンデバイスの中に記憶され、それによって実行される。代わりに、構成データベースは構成アプリケーションと同じワークステーションに配置されてもよい。
【0007】
上記に注記されたように、オペレータディスプレイアプリケーションは、通常、ワークステーションの内の1つ以上でシステム全体において実現され、プラント内の制御システムまたはデバイスの動作状態に関して、事前設定されたディスプレイをオペレータまたは保守人員に提供する。通常、これらのディスプレイはプロセスプラント内でコントローラまたはデバイスによって生成されるアラームを受信するアラームディスプレイ、プロセスプラント内のコントローラおよび他のデバイスの動作状態を示す制御ディスプレイ、プロセスプラント内のデバイスの動作状態を示す保守ディスプレイ等の形式を取る。これらのディスプレイは、一般的に、プロセスプラント内のプロセス制御モジュールまたはデバイスから受信される情報またはデータを、公知の方法で表示するように事前設定されている。いくつかの公知のシステムでは、ディスプレイは物理要素または論理要素と関連付けられているグラフィックを有し、物理要素または論理要素についてのデータを受信するために物理要素または論理要素に通信可能に結び付けられているオブジェクトを使用することにより作成される。オブジェクトは、例えば、タンク半分が一杯になっていることを描くために、流量センサによって測定される流量を描くために等、受信されたデータに基づいて表示画面上のグラフィックを変更してもよい。ディスプレイのために必要とされる情報はプロセスプラント内部のデバイスまたは構成データベースから送信されるが、この情報はその情報を含むディスプレイをユーザに提供するためだけに使用される。その結果、アラームを生成するため、プラント内の問題を検知するため等に使用されるすべての情報とプログラミングは、プロセスプラント制御システムの構成の間にコントローラおよびフィールドデバイス等のプラントと関連付けられている異なるデバイスによって生成され、異なるデバイスの内部で構成されなければならない。その時点で初めてこの情報がプロセス動作中の表示のためにオペレータディスプレイに送信される。
【0008】
エラー検知および他のプログラミングは、異なるコントローラで実行中の制御ループに関連する条件、エラー、アラーム等、および個々のデバイス内部の問題を検知するために有用であるが、プロセスプラント内部の複数の、多様に配置されている可能性のあるデバイスからのデータを分析することにより検知されなければならないシステムレベルの状態またはエラーを認識するためにプロセス制御システムをプログラミングすることは困難である。またさらに、オペレータディスプレイは、通常、オペレータまたは保守人員にこのようなシステムレベルの状態情報を表示するまたは提示するために使用されてはおらず、いずれの場合においても、ディスプレイ内の異なる要素についての情報またはデータのこれらの代わりのソースを用いてオペレータディスプレイ内でオブジェクトを動画化することは困難である。この事実は特に、通常、ディスプレイ上の2つのデバイスの間で繋げられている単純な線で示されているパイプの中の流体の流量、コンベヤベルト上の原材料の移動等の材料の流れの動画およびモデル化に関して当てはまる。さらに、現在、材料がプラントを通過するにつれて、流量状態と質量平衡等のプラント内部での特定の状態を検知する組織化された方法、つまりシステムレベルでこれらの機能を実行するためにそれほど容易に実現可能ではないシステムはない。
【0009】
同様に、シミュレーションアクティビティ(作業)は、通常、プロセスプラントのオンライン環境で実行される表示アクティビティおよび制御アクティビティとは別に実行されなければならないため、プロセスプラントまたはプロセスプラントの一部をセットアップする、あるいは作成することは困難な場合がある。またさらに、プラントのシミュレーションが作成される場合、このシミュレーションをオペレータディスプレイと、あるいはプラントの中で実現されている制御モジュールと統合することは、不可能ではなくとも困難である。
【課題を解決するための手段】
【0010】
プロセスプラントの構成を容易にするためのシステムが開示されている。該システムはプロセスグラフィックスエディタとプロセスモジュールエディタとを含み得る。プロセスグラフィックスエディタはプロセスプラント内の物理的なエンティティのグラフィック表現の作成および/または修正を容易にし得る。プロセスグラフィックスエディタを使用して作成されるおよび/または修正されるグラフィックス表現は、例えばワークステーションのモニタ上などディスプレイ装置で表示されてもよい。プロセスモジュールエディタはプロセスモジュールの作成および/または修正を容易にし得る。プロセスモジュールはプロセスプラント内の1つ以上の対応する物理的なエンティティを表す1つ以上の相互接続されるプロセスオブジェクトを含んでよい。プロセスモジュールの中のプロセスオブジェクトの0個、1個、以上がプロセスプラント内の物理的なエンティティのシミュレーション/モデル化動作のためのシミュレーション機能および/またはモデル化機能を含んでよい。
【0011】
該システムは、プロセスグラフィックスエディタとプロセスモジュールエディタに通信可能に結合されている監視プログラムモジュール(例えば監視プログラムアプリケーション)も含んでよい。監視プログラムモジュールが、プロセスグラフィックスエディタを使用してプロセスプラント内の物理エンティティのグラフィック表現に行われる変更を検知できる場合がある。このような変更の検知に応えて、監視プログラムモジュールはプロセスモジュールエディタに、もしあれば、プロセスモジュールに対応して、物理エンティティのグラフィック表現に対応する変更を加えるように指令を発し得る。
【0012】
選択的に、監視プログラムモジュールはプロセスモジュールエディタを使用してプロセスモジュールに対して加えられる変更を検知できる可能性がある。このような変更の検知に応えて、監視プログラムモジュールはプロセスグラフィックスエディタに、もしあれば、プロセスモジュールに対応して、物理エンティティのグラフィック表現に対応する変更を加えるように指令を発し得る。
【図面の簡単な説明】
【0013】
【図1】プロセスモジュールとグラフィックディスプレイを作成し、プロセスプラントの動作をシミュレーションするためにスマートプロセスオブジェクトを使用するディスプレイルーチンを実現するオペレータワークステーションを含む、プロセスプラント内に配置される分散プロセス制御ネットワークのブロック図である。
【図2】プロセスプラント内で強化された機能を実現するために使用され得る、図1のオペレータワークステーションに記憶されるスマートプロセスオブジェクトとプロセスモジュールを含む、アプリケーションと他のエンティティのセットの論理ブロック図である。
【図3】オブジェクトライブラリに記憶されているスマートプロセスオブジェクトを使用して、プロセスグラフィックスディスプレイまたはプロセスモジュールを作成するために構成エンジニアが使用する構成画面の簡略化された描写である。
【図4】多くのスマートプロセスオブジェクトのグラフィックディスプレイ要素を相互接続することにより作成される、プロセスプラント内のストリームと接続要素の描写を含む、プロセスグラフィックスディスプレイの一例の詳細な描写である。
【図5】プラントのさらに大きなグラフィックディスプレイに相互接続される、図4のプロセスグラフィックディスプレイを含む、最小化されたプロセスグラフィックディスプレイのセットを示す図である。
【図6】図4のプロセスグラフィックディスプレイと関連するプロセスモジュールの描写であり、ハイファイシミュレーションルーチンのそれとの相互接続も描く。
【図7A】プロセスプラント内で統合されるような、グラフィックディスプレイ、プロセスモジュール、および制御モジュール間の通信相互接続を描く論理ブロック図である。
【図7B】プロセスプラント内で統合されるような、グラフィックディスプレイ、プロセスモジュール、および制御モジュール間の通信相互接続を描く論理ブロック図である。
【図8】高度の制御機能とシミュレーション機能を提供するために制御モジュール内で機能ブロックとそのブロックが相互接続される例示的なプロセスモジュールの簡略化された描写である。
【図9】スマートプロセスオブジェクトを使用するプロセスモジュールが、いかにして既存のプロセス制御ネットワーク内で作成され、実現されてもよいのかの論理ブロック図である。
【図10】ライブラリ内のプロセスオブジェクトにアクセスするために使用できる例示的なディスプレイの一部である。
【図11】ディスプレイの左側部分のアイテムが選択された図10のディスプレイの一例である。
【図12】すでに作成されたプロセスモジュールをブラウジングするために使用され得るディスプレイの一例の一部である。
【図13】プロセスプラント内の特定のノードによって実行されるプロセスモジュールを割り当てるために使用できるディスプレイの一例の一部である。
【図14】プロセスモジュールを作成し、修正するためのエディタと関連する例示的なディスプレイである。
【図15】簡略なタンクに対応するプロセスモジュールの説明図である。
【図16A】プロセスモジュール内のプロセスオブジェクトのパラメータを修正することに関連するディスプレイの一例を示す図である。
【図16B】別のモジュール内の機能ブロックと、プロセスモジュール内のプロセスブロックのパラメータを関連付けるためのディスプレイの一例を示す図である。
【図17】プロセスモジュールの中に制御モジュールから自動的に引き入れられる特性、パラメータ、および/または測定の値の説明図である。
【図18】プロセスモジュール内のプロセスオブジェクトのために定義されていたモデルを示すためのディスプレイの一例である。
【図19】選択されたモデルの異なる特性/パラメータと関連するステップ応答を示すためのディスプレイの一例である。
【図20】ステップ応答を表示し、編集するためのディスプレイの一例である。
【図21】利得、不動作時間、一次時間制約、二次時間制約、およびリードタイム制約等のモデルのパラメータを修正するためのディスプレイの一例である。
【図22】初期状態および/またはモデルの定常状態までの時間を修正するために使用されてもよいディスプレイの一例である。
【図23】プロセスオブジェクトにより活用されるモデルのタイプを選択するためのディスプレイの一例である。
【図24】プロセスオブジェクトのモデル関連パラメータを表示するおよび/または編集するためのディスプレイの一例である。
【図25】左側部分の「ストリームとパラメータ」フォルダが選択された図24のディスプレイの一例である。
【図26】ユーザがステップ応答モデルにより活用されるパラメータを追加することを選択した図24のディスプレイの一例を描く。
【図27】それによりユーザが新しいモデルのテキスト記述等の新しいモデルに関する情報を追加できるようになる図24のディスプレイの一例を描く。
【図28】プロセスプロジェクトにより活用される第1の主要モデルを指定するためのディスプレイの一例である。
【図29】ストリームエレメントの特性を追加する、または修正するためのディスプレイの一例である。
【図30】パラメータの特性を追加する、または修正するためのディスプレイの一例である。
【図31】対応するプロセスグラフィックからプロセスモジュールを、および/または逆も同様に対応するプロセスモジュールからプロセスグラフィックを自動的に生成するために使用されてもよいシステムの一例のブロック図である。
【図32】プロセスモジュールの構成に役立てるために使用されてもよいディスプレイの一例である。
【発明を実施するための形態】
【0014】
図1を参照すると、スマートプロセスオブジェクトがプラント環境の中で強化された制御とシミュレーションを提供するために、ともに制御モジュールと統合されてもよいプロセスグラフィックディスプレイとプロセスモジュールを形成するために使用されるプロセスプラント10の一例が詳細に描かれている。特に、プロセスプラント10は、各々が、例えばFieldbusインタフェース、Profitbusインタフェース、HARTインタフェース、標準4−20maインタフェース等であってもよい、入力/出力(I/O)装置またはカード18を介して1台以上のフィールドデバイス14および16に接続されている、1台以上のコントローラ12を有する分散プロセス制御システムを使用している。コントローラ12は、例えばイーサネット(登録商標)リンクであってもよいデータハイウェイ24を介して、1つ以上のホストワークステーションまたはオペレータワークステーション20と22にも結合されている。データベース28はデータハイウェイ24に接続されてよく、パラメータ、ステータス、およびプラント10内のコントローラおよびフィールドデバイスと関連付けられている他のデータを収集し、記憶するデータヒストリアンとして、およびコントローラ12およびフィールドデバイス14と16にダウンロードされ、それらの中に記憶されるようなプラント10の中のプロセス制御システムの現在の構成を記憶する構成データベースとして動作する。コントローラ12、I/Oカード18およびフィールドデバイス14と16は、通常、場合により厳しいプラント環境の中で下方におよびプラント環境全体に位置しているが、オペレータワークステーション20と22およびデータベース28は通常コントロールルーム内、あるいはコントローラまたは保守人員が容易に評価できる他のあまり厳しくない環境に配置される。
【0015】
公知のように、一例としてエマーソンプロセスマネジメント(Emerson Process Management)によって販売されているDeltaV(登録商標)コントローラであってもよいコントローラ12の各々は、任意の数の異なった、個別に実行される制御モジュールまたはブロック29を使用して制御戦略を実現するコントローラアプリケーションを記憶し、実行する。制御モジュール29の各々は、一般的に機能ブロックと呼ばれているものから構成することができ、各機能ブロックは全体的な制御ルーチンの一部つまりサブルーチンであり、プロセスプラント10の中でプロセス制御ループを実現するために(リンクと呼ばれる通信を介して)他の機能ブロックと連動して動作する。周知のように、オブジェクト指向プログラミングプロトコル内でオブジェクトであってもよい機能ブロックは、通常、送信機、センサ、または他のプロセスパラメータ測定装置と関連付けられているもの等の入力機能、PID、ファジー論理当制御を実行する制御ルーチンと関連付けられているもの等の制御機能、またはプロセスプラント10内でなんらかの物理的な機能を実行するためにバルブ等の何らかのデバイスの動作を制御する出力機能の内の1つを実行する。言うまでもなく、モデル予測コントローラ(MPC)、オプティマイザ等のハイブリッドタイプおよび他のタイプの複雑な機能ブロックが存在する。FieldbusプロトコルおよびDeltaV(登録商標)システムプロトコルは、オブジェクト指向プログラミングプロトコルで設計され、実現される制御モジュールと機能ブロックを使用する一方で、制御モジュールは例えば順次機能ブロック、ラダー論理回路等を含む任意の所望の制御プログラミングスキームを使用して設計することができ、機能ブロックまたは任意の他の特定のプログラミング技法を使用して設計され、実現されることに制限されるものではない。
【0016】
図1に描かれているプラント10では、コントローラ12に接続されているフィールドデバイス14と16は標準4−20maデバイスであってよく、プロセッサとメモリを含む、あるいは他の任意の所望のタイプのデバイスであってもよい、HART(登録商標)、Profitbus(登録商標)、またはFOUNDATION(登録商標)Fieldbusフィールドデバイス等のスマートフィールドデバイスであってもよい。(図1で参照番号16を付与されている)Fieldbus(登録商標)フィールドデバイス等のこれらデバイスのいくつかは、コントローラ12内で実現される制御戦略と関連付けられる、機能ブロック等のモジュールまたはサブモジュールを記憶し、実行してもよい。図1にFieldbus(登録商標)デバイス16の2台の異なるデバイスの中に配置されるものとして図1に描かれている機能ブロック30は、周知のようにプロセス制御を実現するためにコントローラ12の中で制御モジュール29の実行と関連して実行されてもよい。言うまでもなく、フィールドデバイス14と16はセンサ、バルブ、送信機、ポジショナ等の任意のタイプのデバイスであってよく、I/Oデバイス18はHART(登録商標)、Fieldbus(登録商標)、Profitbus(登録商標)等の任意の所望の通信プロトコルまたはコントローラプロトコルに準拠する任意のタイプのI/Oデバイスであってもよい。
【0017】
図1のプロセスプラント10では、ワークステーション20は、プロセスプラント10の中で接続されているデバイス、装置等に関して機能を表示して、提供するために(他のタイプのユーザもユーザタイプについてカスタマイズされたディスプレイ層と関連して本明細書に後述されるように存在してもよいが、本明細書では構成エンジニアおよびオペレータと呼ばれることもある)任意の許可されたユーザがアクセスできるオペレータインタフェースアプリケーションおよび他のデータ構造32の一組を含む。該一組のオペレータインタフェースアプリケーション32は、ワークステーション20のメモリ34に記憶され、一組のアプリケーション32の中のアプリケーションまたはエンティティの各々はワークステーション20と関連するプロセッサ36で実行されるように適応される。一組のアプリケーション32全体がワークステーション20に記憶されているものとして描かれているが、これらのアプリケーションまたは他のエンティティのいくつかはプラント10の中の、またはプラント10に関連付けられた他のワークステーションまたはコンピュータデバイスに記憶され、実行されるであろう。さらに、一組のアプリケーションはワークステーション20と関連付けられているディスプレイ画面37に、または携帯端末、ラップトップコンピュータ、他のワークステーション、プリンタ等を含む他の所望のディスプレイ画面またはディスプレイ装置にディスプレイ出力を提供できる。同様に、一組のアプリケーション32の中のアプリケーションは分割され、2台以上のコンピュータまたは機械上で実行されてよく、相互に連動して動作するように構成されてもよい。
【0018】
一般的に、一組のアプリケーション32によって、3つの異なるタイプのエンティティの作成と使用が可能になり、その動作は、強化された制御機能、シミュレーション機能および表示機能をプロセスプラント10の中で提供するためにともに統合されてもよい。より詳細には、一組のアプリケーション32は(一般的にはプロセスプラントの一部に関するオペレータディスプレイを提供する)プロセスグラフィックディスプレイ35、(一般的にはプロセスプラントの一部のシミュレーションを提供する)プロセスモジュール39、および一般的にはプロセスのオンライン制御を提供または実行する、制御モジュール29等のプロセス制御モジュールを作成し、実現するために使用されてもよい。プロセス制御モジュール29は概して技術で周知であり、機能ブロック制御モジュール等の任意のタイプの制御モジュールを含んでよい。より詳細に後述されるプロセスグラフィックディスプレイ要素35は、オペレータ等のユーザに、プロセスプラントおよびその中の要素の動作、構成またはセットアップについての情報を提供するために、一般的にはオペレータ、エンジニアまたは他のディスプレイによって使用される要素である。プロセスモジュール39は、通常プロセスグラフィックディスプレイ要素35に密接に結び付けられ、プロセスプラントの、あるいはプロセスグラフィックディスプレイ35に描かれている方法で接続されているその中の異なる要素のいくつかの動作のシミュレーションを実行するために使用されてもよい。プロセスグラフィックディスプレイ35およびプロセスモジュール39は、ラップトップ型コンピュータ、携帯端末等を含む、プロセス制御プラント10に関連付けられている任意の他のコンピュータにダウンロードされ、その中で実行できるであろうが、プロセスグラフィックディスプレイ35およびプロセスモジュール39は、ワークステーション20と22に記憶され、それらによって実行されるものとして描かれている。
【0019】
図2は、ワークステーション20の一組のアプリケーション32の中のアプリケーションとデータ構造または他のエンティティのいくつかを示している。特に、一組のアプリケーション32は制御モジュール、プロセスモジュール、および制御モジュール、(プロセスフローモジュールとも呼ばれる)プロセスモジュール、および関連グラフィックディスプレイを作成するために構成エンジニアによって使用されるグラフィックディスプレイ構成アプリケーション38を含む。制御モジュール構成アプリケーション38は任意の標準的な、または公知の制御モジュール構成アプリケーションであってもよいが、プロセスモジュールおよびグラフィックディスプレイ構成アプリケーション(複数の場合がある)は1つ以上のスマートプロセスオブジェクトを使用してプロセスモジュールおよびグラフィックディスプレイを作成してよく、その性質がより詳細に後述されるであろう。またさらに、プロセスモジュールおよびプロセスグラフィック構成アプリケーション38は個別に示される一方、1つの構成アプリケーションはこれらのタイプの要素の両方ともを作成可能とする。
【0020】
スマートプロセスオブジェクト42のライブラリ40は、プロセスモジュール39およびグラフィックディスプレイ35を作成するために構成アプリケーション38によってアクセスされ、コピーされ、使用され得る例すなわちテンプレートのスマートプロセスオブジェクト42を含む。理解されるように、構成アプリケーション38は、1つ以上のプロセスモジュール39を作成するために使用されてよく、その各々は1つ以上のスマートプロセスオブジェクト42から構成されるあるいは作成され、プロセスモジュールメモリ46に記憶されている1つ以上のプロセスフローまたはシミュレーションアルゴリズム45を含んでよい。さらに、構成アプリケーション38は、1つ以上のグラフィックディスプレイ35を作成するために使用されてよく、その各々は1つ以上のスマートプロセスオブジェクト42から構成される、あるいは作成され、ともに接続されている任意の数のディスプレイ要素を含んでよい。グラフィックディスプレイ35bの内の1つは拡大された形式で図2に描かれており、パイプ、導管、電力ケーブル、コンベヤ等であってもよい接続要素によって相互接続されている、バルブ、タンク、センサおよびフロートランスミッタ等のプロセス要素の集合の描写を含む。
【0021】
実行エンジン48は、グラフィックディスプレイ35によって定義されるようにオペレータ向けの1つ以上のプロセスディスプレイを作成するために、およびプロセスモジュール39と関連付けられるシミュレーション機能を実現するために実行時中にグラフィックディスプレイ35とプロセスモジュール39の各々を操作するまたは実現する。実行エンジン48は、全体をプロセスモジュール39で実現される論理、および特にそれらのモジュールの中のスマートプロセスオブジェクトを定義する規則データベース50を使用してもよい。実行エンジン48は、プロセスモジュール39の機能を実現するためにプロセスモジュール39の中のみではなく、プラント10の中でもプロセス要素間の接続を定義する接続マトリクス52を使用してもよい。
【0022】
図2は、より詳細にスマートプロセスオブジェクト42eの内の1つを示している。スマートプロセスオブジェクト42eはテンプレートスマートプロセスオブジェクトの内の1つであるとして描かれているが、他のスマートプロセスオブジェクトが概して、スマートプロセスオブジェクト42eに関して説明されているように、同じ、または類似する要素、特長、パラメータ等を含むこと、およびこれらの要素、特長およびパラメータの詳細または値がそのスマートプロセスオブジェクトの性質と用途に応じて、スマートプロセスオブジェクトごとに変更、または変えられてもよいことが理解されるであろう。さらに、スマートプロセスオブジェクト42eはオブジェクト指向プログラミング環境の中のオブジェクトであってよく、したがってデータストア、入力と出力、およびそれと関連付けられるメソッドを含んでよい一方、このスマートプロセスオブジェクトは任意の他の所望のプログラミングパラダイムまたはプロトコルによって作成され、その中で実現されてもよい。
【0023】
理解されるように、インスタンスを作成される前のスマートプロセスオブジェクト42eは、図1のプロセスプラント10の中の物理エンティティまたは論理エンティティ等のある特定のタイプのエンティティと関連付けられているオブジェクトである。しかしながら、コピーされ、インスタンスを作成された後、スマートプロセスオブジェクト42eはプロセスプラントの中のある特定のエンティティに結び付けられてもよい。いずれの場合においても、スマートプロセスオブジェクト42eは、スマートプロセスオブジェクト42eが結び付けられている論理エンティティから受信され、あるいは論理エンティティに関するデータを記憶するために使用されるスマートプロセスデータストア53を含む。データストア53は、製造メーカ、改訂、名称、種別等の、スマートプロセスオブジェクト42eが関連するエンティティについての一般的な情報または恒久的な情報を記憶するデータストア53aを含む。データストア53bは、パラメータデータ、ステータスデータ、入力データと出力データ、コスト、またはそれがプロセスプラント10の中に過去に存在したとき、または現在存在しているときの、エンティティと関連付けられるデータを含む、スマートプロセスオブジェクト42eが関連するエンティティについての他のデータ等の可変データまたは変化するデータを記憶してもよい。言うまでもなく、スマートプロセスオブジェクト42eは、任意の所望の通信リンクを介してエンティティ自体から、イーサネット(登録商標)バス24を介してヒストリアン28から、または任意の他の所望の方法で、周期的に、または非周期的にこのデータ(例えばコストデータ)を受信するように構成、あるいはプログラミングされてもよい。データストア53cは、スマートプロセスオブジェクト42eが関連し、図1のワークステーション20と関連付けられている画面37等の、オペレータインタフェースを介してオペレータへの実際のディスプレイのために使用されるエンティティのグラフィック表現を記憶してもよい。言うまでもなく、グラフィック表現は、パラメータによって定義される情報、またはデータストア53bに記憶されるようなエンティティについての他の可変データ等のエンティティについての情報のプレースホルダ(データストア53c内で下線により記される)を含んでよい。このパラメータデータは、ディスプレイ装置37上でグラフィックディスプレイ35の内の1つの一部としてオペレータに提示されるとき、グラフィックプレースホルダに表示されてもよい。グラフィック表現(およびスマートプロセスオブジェクト42e)は、オペレータまたは構成エンジニアが、グラフィック表現によって描かれているように、プロセス要素に上流または下流の構成要素を取り付けることが可能となる(データストア53cの中で「X」で記される)所定の接続点も含んでよい。言うまでもなく、これらの接続点により、スマートプロセスオブジェクト42eは、プロセスモジュール内で構成されるものとしてそのスマートオブジェクトに接続される要素を認識することも可能となり、パイプ、ダクト等、その要素等に関連付けられるストリーム等、使用されなければならないひとつのタイプの接続要素を指定してもよい。
【0024】
データストア53cは、選択的に複数のグラフィック表現を記憶してもよい。例えば、異なるグラフィック表現はエンジニアリングビュー、保守ビュー、オペレータビュー、管理者ビュー、トレーナービュー、練習生ビュー等の異なるビューに対応してもよい。特定のグラフィック表現は、例えば特定のビューのためにグラフィックディスプレイを作成する際に活用されてもよい。グラフィック表現を作成するためのシステムおよび方法の一例は、「プロセス構成および制御環境へのグラフィックスの統合(GRAPHICS INTEGRATION INTO A PROCESS CONFIGURATION AND CONTROL ENVIRONMENT)」(代理人整理番号第06005/41116号)と題される一般的に所有されている出願に説明されている。言うまでもなく、グラフィック表現を作成するための他の適切なシステムおよび方法も使用できる。
【0025】
スマートプロセスオブジェクト42eは、スマートプロセスオブジェクト42eが使用されるプロセスモジュールの内部または外部で他のスマートプロセスオブジェクトとの通信を可能にするために1つ以上の入力54および出力56も含んでよい。他のスマートプロセスオブジェクトへの入力54と出力56の接続は、他のスマートプロセスオブジェクトをこれらの入力と出力に単に接続することにより、あるいはスマートプロセスオブジェクト間で発生しなければならない特定の通信を指定することにより、プロセスモジュールの構成中に構成エンジニアによって構成されてもよい。これらの入力と出力のいくつかは、前述されたようにスマートプロセスオブジェクトのための所定の接続ポイントでスマートプロセスオブジェクトに接続されるものとして定義されてもよい。これらの入力54と出力56は、規則データベース50内の一組の規則およびプラント10の中の異なるデバイスまたはエンティティの間で接続を定義する接続マトリクス52によって決定または定義されてもよい。それらと関連付けられているデータストアまたはバッファを含む入力54と出力56は、一般的に、他のスマートプロセスオブジェクトからスマートプロセスオブジェクト42eにデータの通信を提供するために、あるいはスマートプロセスオブジェクト42eの中に記憶され、あるいはスマートプロセスオブジェクト42eによって生成されるデータの通信を他のスマートプロセスオブジェクトに提供するために使用される。これらの入力および出力は、スマートプロセスオブジェクト42eと、コントローラ12、フィールドデバイス14、16等の中の制御モジュール等のプロセス制御システム内の他のオブジェクトとの間で通信を提供するために使用されてもよい。
【0026】
図2に描かれているように、スマートプロセスオブジェクト42eは、スマートプロセスオブジェクト42eが使用されるプロセスモジュールの実行中にスマートプロセスオブジェクト42eによって実現されるアルゴリズムであってもよい(図2でメソッド60a、60b、および60cとして描かれている)0個、1個以上個のメソッド60を記憶するために使用されるメソッド記憶装置58も含む。一般的に、メソッド記憶装置58に記憶されているメソッド60は、プロセスプラント10またはプラント10内のエンティティについての情報を突き止めるために、データ記憶部分53aと53bの中に記憶されているデータ、および他のスマートプロセスオブジェクトから取得されるデータ、または入力54と出力56を介して構成データベースまたはヒストリアン28等の他のソースからのデータも使用する。例えば、メソッド60はスマートプロセスオブジェクト42eによって定義されるエンティティと関連付けられる質が劣るまたは不良の動作状態、プロセスプラント10の中のそのまたは他のエンティティと関連付けられるエラー等を決定してもよい。メソッド60は、スマートプロセスオブジェクトのタイプまたはクラスに基づいて事前に設定または提供されてよく、毎回スマートプロセスオブジェクト42eが実行時中に実行エンジン48の中で実行されるたびに実行されるであろう。スマートプロセスオブジェクト42e等のスマートプロセスオブジェクトの中で提供されてもよいいくつかの例示的なメソッド60は漏れ、デッドバンド、不動作時間、移動、可変、状態監視、コスト計算、またはエンティティと関連付けられる他の状態を検知することを含む。
【0027】
メソッド60は、そのプロセスエンティティを通って流れる材料に関してスマートプロセスオブジェクトと関連付けられるプロセスエンティティの動作をシミュレーションする上で役立てるめに提供されてもよい。このようにして、メソッド60は、要素の動作をシミュレーションし、提供されている入力に基づいて予想出力を計算するために、質量平衡、エネルギーバランス、流量、温度、組成、蒸気状態、およびプラント10の中で材料と関連付けられる他のシステムレベルまたはストリームレベルのパラメータを計算するために提供されてもよい。言うまでもなく、これらはスマートプロセスオブジェクト42eに記憶され、それによって実行できるメソッドの内の数個に過ぎず、使用され得る他の多くのメソッドがあり、このようなメソッドは、通常表現されているエンティティのタイプ、他の要因のみではなく、そのエンティティがプロセスプラント内でどのように接続され、使用されるのかによっても決定されている。スマートプロセスオブジェクト42eがシステムレベルの状態、エラー等を検知するメソッドを記憶し、実行してもよい一方、これらのメソッドはプロセス制御モジュールとループ等のデバイス、論理要素、および他の非システムレベルエンティティについての他の情報を決定するために使用されてもよいことに留意することが重要である。所望の場合、メソッド60は、C、C++、C#等の任意の所望のプログラミング言語でプログラミング、または提供されてもよいか、あるいは実行中にスマートプロセスオブジェクト42eのために実行されなければならない規則データベース50の中で適用可能な規則に参照、あるいは適用可能な規則を定義してもよい。
【0028】
所望の場合、各スマートプロセスオブジェクトは、プロセスモジュール内で接続される場合にスマートプロセスオブジェクトのシミュレーション動作を定義するために使用されてもよい適用可能なアルゴリズムまたはメソッドのライブラリを含んでよい。このようなライブラリは図2のスマートプロセスオブジェクト42eのためのプルダウンメニュー61に描かれており、類似するメニューは各々の他のスマートプロセスオブジェクトと関連付けられてもよい。構成エンジニアは、このスマートプロセスオブジェクトが、例えばプルダウンメニュー61を介して(メソッド1、メソッド2等と呼ばれている)シミュレーションアルゴリズムのライブラリの内の1つを選択することによりプロセスモジュール39に格納される場合にスマートプロセスオブジェクトのシミュレーション動作を定義してもよい。このようにして、構成エンジニアは、スマートプロセスオブジェクトがモデル化するために使用されているプロセスのタイプまたは性質に依存しているスマートプロセスオブジェクトのために異なるシミュレーション動作を定義してもよい。
【0029】
所望の場合、構成エンジニアは、スマートプロセスブロックによって定義されるプロセス要素のシミュレーション動作を定義するために、代わりに独自仕様のアルゴリズムまたは他のユーザによって供給されたアルゴリズムを使用してもよい。(プルダウンメニュー61で「ユーザ定義」エントリとして描かれている)このようなユーザによって定義されたアルゴリズムは、そのスマートプロセスオブジェクトがプロセスモジュール39の中に格納されるか、あるいはその中で使用される場合にスマートプロセスオブジェクトに提供され、その中に記憶されてもよい。この機能により、ユーザはシミュレーション動作をカスタマイズし、それによりさらに優れた、またはさらに正確なシミュレーションを提供できる。所望の場合、およびさらに詳しく後述されるように、スマートプロセスオブジェクト42eまたは各プロセスモジュール39は、スマートプロセスオブジェクト内のシミュレーションアルゴリズムの使用を無効にし、代わりにプロセスモジュールの動作を、HYSYS(登録商標)によって提供されるもの等のハイファイシミュレーションパッケージまたはプログラムによって決定させる(電子スイッチまたはフラグ等の)オペレータが作動可能なスイッチを含んでよい。このケースでは、スマートプロセスオブジェクトまたはプロセスモジュールは、スマートプロセスオブジェクト自体の中でシミュレーションアルゴリズムを使用することと対照的にハイファイシミュレーションからシミュレーションによるパラメータデータを取得する。
【0030】
グラフィックディスプレイ35またはプロセスモジュール39の実行エンジン48による実行中、エンジン48は、グラフィックディスプレイ35またはプロセスモジュール39内のスマートプロセスオブジェクトの各々に入力54と出力56によって定義される通信を実現し、メソッド60によって提供される機能を実行するために、それらのオブジェクトの各々にメソッド60を実現してもよい。上記に注記されたように、メソッド60の機能はスマートプロセスオブジェクトの中のプログラミングに位置してもよいか、あるいはそれらの規則によって定義される機能を実現するために、スマートプロセスオブジェクトのタイプ、クラス、識別、タグ名等に基づいて、エンジン48が実行する規則データベース50内の一組の規則によって定義されてもよい。
【0031】
スマートプロセスオブジェクト42eのインスタンスが、スマートプロセスオブジェクト42eが関連付けられるプロセスモジュールの関連でタグまたは一意の名前を有しており、このタグまたは一意の名前がスマートプロセスオブジェクト42eへ、およびスマートプロセスオブジェクト42eから通信を提供するために使用されてよく、実行時中に実行エンジン48によって参照されてもよいことを注記されたい。プロセスモジュールタグは制御システム構成の中で一意でなければならない。このタグ付け規約により、プロセスモジュール39の中の要素は、プロセスグラフィックディスプレイ35、プロセスモジュール39、および制御モジュール29の他の中の要素によっても参照できる。またさらに、スマートプロセスオブジェクト42eのパラメータは単純な値のような単純なパラメータ、構造化されたパラメータ、または予想される装置とそれと関連付けられている属性を知っているスマートパラメータである場合がある。スマートパラメータは、すべての信号が同じ装置内で送信されているか、あるいは適切に変換されていることを保証するために、プロセス規則エンジンまたは実行エンジン48によって解釈、使用できる。スマート規則は、オペレータ向けのスマートアラーム戦略および/またはインタフェースを作成するためにスマートプロセスオブジェクト(またはプロセスモジュール)のためのアラームのグループをオンにし、オフにするために使用することもできる。またさらに、スマートプロセスオブジェクトクラスは、スマートプロセスオブジェクトと、それが解釈またはアクセスする必要のあるプロセス変数との間の公知のリンケージを提供するために、プラント10のプロセス制御戦略の中で装置とモジュールクラスと関連付けることができる。
【0032】
スマートプロセスオブジェクトは、プロセスグラフィックディスプレイまたはプロセスモジュールの中で使用されるとき、これらのスマートオブジェクトがオフモード、起動モード、および通常モード等の実行時中の異なるモードにされてもよいように動作モード、ステータス、アラーム動作も含んでよく、その現在の動作状態に基づいてオブジェクトと関連付けられるステータスを提供してよく、パラメータ範囲外、限定、高可変性等の検知された状態に基づいてアラームを提供してもよい。スマートプロセスオブジェクトは、それらをクラスライブラリで分類する、複合構造でともに収集する等を行うことが可能となるクラス/サブクラス階層も有してもよい。さらに、スマートプロセスオブジェクトは、スマートプロセスオブジェクトが、その関連エンティティがいつビジーなのか、あるいは例えばプラント10内でバッチ制御プロセスによっていつ取得されるのかを認識可能とするために、制御モジュールおよび他のオブジェクト等の他の要素からの情報を活用してもよい。
【0033】
スマートプロセスオブジェクトは、ポンプ、タンク、バルブ等の物理装置、あるいはプロセス領域、測定、またはアクチュエータ、制御戦略等の論理エンティティ等の任意の所望のプロセスエンティティと関連付けられてもよい。いくつかのケースでは、スマートプロセスオブジェクトは、コネクタ、このような配管、導管、配線、コンベヤ、あるいは材料、電気、ガス等をプロセスの中のある点から別の点へ移動する任意の他のデバイスまたはエンティティと関連付けられてもよい。本明細書ではスマートリンクまたはコネクタ要素と呼ばれることもあるコネクタと関連付けられているスマートプロセスオブジェクトには(実際のデバイスまたはコネクタ自体にタグが付けられていない、あるいはプロセスプラント10内で通信できない場合でも)タグも付けられ、一般的にはプロセスの中の他の要素間の材料の流れを表すために使用される。
【0034】
スマートリンクは、異なる材料または現象(電気等)がいかにして接続(例えば、蒸気、電気、水、汚水等)を通って流れるのかを定義する特性またはパラメータを含む。これらのパラメータは、コネクタを通る流れ(一般的な速度、摩擦係数、乱流または非乱流、電磁のような流れのタイプ等)のタイプと性質およびコネクタを通る流れの考えられる1つ以上の方向を示し得る。スマートリンクは、スマートリンクが接続するソースおよび宛先オブジェクトの単位が一致することを保証するプログラミングまたはメソッドを含んでよく、一致しない場合には変換を実行してもよい。スマートリンクのメソッドは、実際のコネクタを通る流れの速度または性質、物理的な接続の長さとサイズ、トランスポート遅延等を推定するためにモデルまたはアルゴリズムを使用してコネクタを通る流れをモデル化してもよい。(摩擦パラメータ等の)スマートプロセスオブジェクトのために記憶されているパラメータがこれらのメソッドで使用されてもよい。したがって、本質的には、スマートリンクまたはコネクタ要素は、スマートプロセスオブジェクトが他の上流オブジェクトと下流オブジェクトまたはエンティティを認識できるようにする。スマートリンクが、例えば他のオブジェクトとの間の接続、システム内の液体、ガス、電気等の流体のタイプ、他のエンティティがこのスマートプロセスオブジェクトのエンティティの上流および下流にあるエンティティの上流側と下流側、任意の所望の、または便宜的な材料、流体、電流等の方向を定義してもよいことは言うまでもない。一実施形態では、実質的にはプロセスフローモジュールの実行の前に行列52が作成されてよく、プラント内の異なるデバイス間の相互接続をスマートリンクのために、したがって異なるスマートプロセスオブジェクト間の相互接続を定義してもよい。つまり、実行エンジン48は上流エンティティと下流エンティティを確定し、それによりスマートプロセスオブジェクト及びスマートプロセスオブジェクトと関連付けられるメソッドの間の通信を定義するために行列52を使用してもよい。またさらに、一組以上の規則が、スマートプロセスオブジェクト内のメソッドについて必要に応じて相互に反応し合うため、および必要に応じて相互にデータを取得するためにスマートプロセスオブジェクトによって使用されるために、ならびに出力接続と関連付けられるスマートオブジェクトの影響を解消するために提供されてもよい。
【0035】
所望の場合、スマートプロセスオブジェクト42eは、オブジェクトのタイプに適用可能であってよく、あるいはスマートプロセスオブジェクト42eが関連するデバイスの(臨界および用途に応じて)インスタンスに特化された重要な文書に対するURL等のホットリンクも含んでよい。該文書はユーザに特定のものであってもよいのみではなくベンダによって供給されてもよい。文書のいくつかの例は、構成、起動、および停止の手順、操作と保守の文書を含む。所望の場合、オペレータはオブジェクトまたは関連デバイスのためにインスタンスに特化した(存在する場合)総称的な文書を立ち上げるためにオペレータディスプレイに表示されるようにオブジェクトをクリックしてもよい。また、オペレータは、システムソフトウェアに関係なく、保守要求、操作上の問題の記録等の文書を追加/削除/変更できることがある。さらに、これらのホットリンクは、オペレータインタフェースの中のオブジェクトに知識リンクを追加する能力を提供するため、オブジェクトに関連する適切な情報へのクイックナビゲーションに備えるため、およびカスタマに特化したオブジェクトタイプに、またはオブジェクトに特化したインスタンスに特定の作業指示書を追加する能力を提供するために、ユーザによって設定可能または変更可能であってもよい。
【0036】
プロセスモジュールおよびプロセスグラフィックスは異なるスマートプロセスオブジェクトの相互接続によりともに作成されるものとして前述されているが、それらは個別に作成されてもよい。例えば、プロセスグラフィックはスマートプロセスオブジェクトを使用して作成されてよく、完了時、そのグラフィックのためのプロセスモジュールはグラフィックディスプレイの中のグラフィックス要素およびそれらの相互接続に基づいて生成されてもよい。代わりに、プロセスモジュールはスマートプロセスオブジェクトを使用して最初に作成されてよく、いったん作成されると、そのプロセスモジュールのためのグラフィックディスプレイはプロセスモジュールを作成するために使用されるスマートプロセスオブジェクト内のグラフィックディスプレイ要素を使用して構成アプリケーション38によって自動的に生成されてもよい。またさらに、プロセスモジュールとグラフィックディスプレイは個別に作成されてよく、これら2つのエンティティの中の個々の要素は相互に参照する(例えば、グラフィックディスプレイとプロセスモジュールの中の要素のタグ特性を使用する)ことにより手動でともに結び付けられてもよい。この機構を通じて、スマートプロセスオブジェクトは複数のディスプレイによって参照され得る。いずれの場合においても、いったん作成されると、プロセスグラフィックディスプレイおよび関連付けられるプロセスモジュールは、それらは所望によりまたは必要に応じてパラメータと情報を相互に通信するが、無関係にまたは個別に実行されてもよい。
【0037】
より包括的にするため、プロセスグラフィックディスプレイとプロセスモジュール内で、あるいはプロセスグラフィックディスプレイとプロセスモジュールを作成するために使用されてもよいスマートプロセスオブジェクトの特定の考えられる機能および例が、より詳細に後述されるであろう。その後、説明される要素と特長を使用して作成されるプロセスグラフィックディスプレイとプロセスモジュールが高度な制御機能とシミュレーション機能を提供するために制御モジュールとどのように統合されてもよいのかが説明される。言うまでもなく、スマートプロセスオブジェクト要素と特長が本明細書に説明されている要素および特長に制限されず、他の特長および要素が、そのように望まれる場合には、プロセスグラフィックディスプレイとプロセスモジュールの内の1つまたは両方の中で使用できる、あるいはプロセスグラフィックディスプレイとプロセスモジュールの内の1つまたは両方を作成するために使用できることが理解されるであろう。
【0038】
一般的に、所定のグラフィックス要素のセットが、ユーザがプロセスプラントを反映するオペレータディスプレイまたはグラフィックディスプレイを構築可能とするために構成アプリケーションに設けられてもよい。これらのグラフィックス要素はオンライン測定および制御システムと接続するアクチュエータを動的に示すことを目的とする。さらに、プロセス動作を反映する未測定のパラメータは、プロセスモジュールで提供されるオンラインプロセスシミュレーションを使用して計算されてもよく、関連グラフィックディスプレイの一体化した部分として示されてもよい。
【0039】
さらに、エンジニアリングまたはトレーニングシミュレーションのために使用されるオフライン環境では、プロセスモジュールによって提供されるプロセスシミュレーションは、グラフィックス要素の中のプロセス測定値の代わりに、および関連付けられた制御モジュールの中で使用されてもよい。関連付けられたプロセスモジュールによって計算されるこれらの値は、プロセスグラフィックスに描かれている手動外乱値のみではなくアクチュエータ位置または状態にも基づいてもよい。このようにして、グラフィックディスプレイと制御モジュールは、オンライン、つまり制御状況と、オフライン、つまりシミュレーション状況の両方で使用されてもよい。また、グラフィックス要素の静的な部分は多くのケースでは公知のグラフィックスライブラリに含まれている三次元成分と同様に表示されるが、これらのグラフィックス要素の追加の一意の特長またはプロパティ、これらの要素とともに表示される情報、および制御システムI/Oおよびプロセスシミュレーションモジュールへのリンクは、多くのグラフィックス要素の考えられるタイプと例に関して前述される。
【0040】
一般的に、スマートプロセスオブジェクトと関連付けられるプロセスモジュールの中のグラフィックス要素とシミュレーションアルゴリズムは、ストリーム要素、プロセス接続要素、アクチュエータ要素、処理要素、測定要素および推定プロパティ要素を含む多くの異なるタイプのプロセス要素の内の1つに該当する。一般的に、ストリーム要素はプロセスプラント内での材料のストリームを定義し、組成、密度、流量、温度、圧力、重量、および/または該材料の流れを定義する任意の他のパラメータを示すためにグラフィックディスプレイに露呈されてもよい。ストリーム要素はプロセスモジュールの入力時に定義され、プロセスモジュールの中の要素に提供され、それによりプロセスモジュールを通過する材料のストリームをモデル化し、グラフィックディスプレイに描くことをできるようにしてもよい。同様に、ストリーム要素は、グラフィックディスプレイの中で、グラフィックディスプレイにより描かれるプロセスプラントの部分の材料出力を描くためにプロセスモジュールの出力時または最後に描かれてもよい。ストリーム要素は、異なるグラフィックディスプレイ(および関連プロセスモジュール)が相互にいかにして接続しているのかを定義するためにも使用されてもよい。例えば、あるプロセスモジュールの出力ストリームは別のプロセスモジュールの入力ストリームであってよく、他のプロセスモジュールの入力ストリームで使用される値を指定してもよい。ストリームは以下の4つの部分、つまり(pHストリーム等の)名前、(流れ入力等の)方向、(流量、圧力、温度等の)測定値、および(窒素、アンモニア等の)組成を含んでよい。ただし、ストリームはそのように所望の場合他のパーツまたはパラメータを有することができるであろう。
【0041】
プロセス接続要素は、固形物、液体または蒸気、および気体等のプロセスの内部の物質があるデバイスから別のデバイスへいかにして送達または搬送されるのかを定義する。プロセスを通過する材料の流れを明確に描くために、パイプ、ダクト、およびコンベヤを含む三種類の異なったタイプのプロセス接続が使用されてもよい。電気化学プロセス等における電力潮流をアドレス指定するための電気ケーブル等の)他の接続要素も使用されてもよいことは言うまでもない。配管は、通常、液体および高圧蒸気またはプラント内での気体の流れを描くために使用される。一般的にダクトはプラント内の低圧ガスの流れを描く(そしてシミュレーションする)ために使用される。一般的にコンベヤは処理装置間での固形物の移動を描く(そしてシミュレーションする)ために使用される。その結果として、各プロセス接続要素は、パイプ接続、ダクト接続、またはデバイスの入力または出力時に材料を提供するために使用されるコンベヤ接続等の接続のタイプを定義する。
【0042】
所望の場合、接続により移送されている材料の特性は上流入力により決定される。接続が完了したか否かを定義する接続ステータス変数が加えられるこの情報は、グラフィックディスプレイ上で接続要素の特性として利用できるようにされてもよい。接続要素は処理要素出力、アクチュエータ要素出力またはストリーム要素出力で開始してもよい。同様に、接続要素は処理要素入力、アクチュエータ要素入力またはストリーム入力時に終了してもよい。
【0043】
接続要素の特性は、カーソルがグラフィックディスプレイの接続要素上に置かれると自動的に表示されてもよい。また、接続要素と関連付けられている特性は接続要素の上に(下記に定義される)測定要素または推定特性要素を置くことにより恒久的なディスプレイに表示されてもよい。所望の場合、接続要素は(ストリーム出力、処理要素出力またはアクチュエータ要素出力等の)要素出力上で左マウスボタンを押し続け、マウスのボタンを押し続ける間にカーソルを要素入力上に配置することにより作成されてもよい。接続が無事に確立されるために、上流要素と下流要素の入力タイプと出力タイプ(パイプ、ダクト、またはコンベヤ)は一致しなければならない。接続は上流要素のタイプを自動的に取る。
【0044】
所望の場合、配管要素はパイプ接続のようなプロセスグラフィックディスプレイに示され、あるいは描くことができ、ダクト要素(例えば空気またはガス)はダクトとして示すことができ、コンベヤ要素はコンベヤベルトとして示されてもよい。配管要素、ダクト要素およびコンベヤ要素の接続は、処理要素の間で自動的に経路を定義することができ、矢印は流れの方向を示すためにこれらの要素の描写の外部に表示されてもよい。上流出力が2つの接続に共通である場合には、「T」個の要素はパイプ、ダクト、またはコンベヤの中に含まれてもよい。「T」個の要素は複数の出力を結合するために使用されてもよい。コンベヤ要素の色または他のグラフィック特性は、運転中/停止中、流れている/流れていない、詰まっている等のそのステータスを示すために変化してもよい。一般的に、コンベヤに沿った材料の流れはコンベヤに接続されているモータ駆動により決定される。したがって(より詳細に後述されるアクチュエータ要素である)モータ駆動アクチュエータはコンベヤに接続されてもよい。さらに、(後述される)測定要素は、コンベヤあるいはパイプまたはダクト内の材料の速度、水分または重量等のコンベヤ、パイプまたはダクト上またはコンベヤ、パイプ、またはダクト内の材料の特性のパイプ要素、ダクト要素またはコンベヤ要素に関連する測定値の公開を可能とするためにパイプ要素、ダクト要素およびコンベヤ要素に接続できる。また、公開された特性要素は、例えば材料の組成等の測定されていないパイプ、ダクト、またはコンベヤ上、またはパイプ、ダクトまたはコンベヤ内の材料の特性を表示するために追加されてもよい。
【0045】
所望の場合、配管接続要素、ダクト接続要素およびコンベヤ接続要素は、(例えば色の変化により)接続が失われたこと、および(例えば色の変化により)選択された特性(圧力、温度、長さ等)が構成された制限外にある旨をグラフィックに且つ動的に反映してもよい。さらに、関連プロセスモジュールによって計算されるパラメータはグラフィックに公開されてもよい。例えば、上流接続により提供される特性は、接続のステータスが不良であるのか、あるいは良好であるのかに関係なく、接続要素等の1つ以上の選択されたパラメータを制限し、接続要素により移送されている接続要素またはストリームについてオペレータに情報を与えるためにグラフィックディスプレイに公開されてもよい。
【0046】
一般的に、アクチュエータ要素とは、ストリームに関して何らかの作動機能を実行し、異なる接続要素間、または処理要素と接続要素の間に置かれてもよい要素である。アクチュエータ要素の例は、(アクチュエータ付き)調整弁、(アクチュエータ付き)開閉弁、(モータ付き)ポンプ、(モータ付き)強制通風ファン、(モータ付き)誘引通風ファン、(開閉弁付き)エダクタ、(ドライブ付き)ダンパ、(可変速度モータ付き)フィーダ、(コンベヤ要素に取り付けられてもよい)コンベヤモータドライブ等を含む。
【0047】
バルブ要素のグラフィック描写は、(例えば、動画による)目に見えないバルブ位置、(例えば、色の変化による)バルブの故障、(例えば、色の変化による)バルブ完全開放/閉鎖位置、およびそのバルブを制御している関連制御ブロックの(数字列または他の表示による)AO、DO、DC、設定点、PV、OUT、モード等を動的に反映してもよい。(プロセスモジュールで使用される)バルブ要素と関連付けられているシミュレーション要素は、吐き出し圧力、質量流、液体温度、液組成、入口圧力および出口圧力等のバルブアクチュエータと関連するパラメータを計算するシミュレーションアルゴリズムを有してもよい。これらのシミュレーションによる、または計算されたパラメータは、そのように所望の場合、プロセスグラフィックに公開されてもよい。ただし、ユーザまたは構成エンジニアは、通常、バルブタイプ(線形、早開き、等しい割合、バルブサイジング等)と開から閉へのストローク時間のみではなく、バルブと関連する制御モジュール内のAOブロック、DOブロックまたはDCブロックに対する参照も設定しなければならない。言うまでもなくバルブを通る材料へのバルブの作用をシミュレーションするために使用可能なシミュレーションアルゴリズムは、バルブの種別とサイジング情報に依存してもよい。
【0048】
ポンプ要素のグラフィック描写は(例えば色の変化を使用して)モータステータス、(例えば、文字列を使用して)関連DOまたはDC機能ブロックモードと設定点、(可変速度ドライブが使用されている場合には)モータ速度、AO設定点、PV、(可変速度ドライブが使用されている場合には)OUTモード、および他の所望のパラメータを動的に反映してもよい。同様に、この要素のための(プロセスモジュールで使用される)プロセスシミュレーションは、吐き出し圧力、液組成、液体温度、および質量流等のパラメータを決定する、または計算してよく、そのパラメータはグラフィックディスプレイに開示されてもよい。ユーザはポンプタイプに基づいてポンプ曲線を定義する必要がある場合がある。しかしながら、ユーザはモータ起動/停止に関連するDOブロックまたはDCブロックに対する参照、(使用されている場合)可変速度ドライブのための関連AO機能ブロックに対する参照、およびポンプの動作の定義のためのポンプ曲線(例えば圧力対流量)を設定してもよい。
【0049】
強制通風ファンまたは誘引通風ファンのアクチュエータ要素のグラフィック描写は、モータステータス、DO機能ブロックモードまたはDC機能ブロックモードと設定点、(可変速度ドライブが使用されている場合には)モータ速度、AO設定点、(可変速度ドライブが使用される場合)PV、OUT、DOまたはDC機能ブロックモード、および他の所望のパラメータを動的に反映し得る描写を有してもよく、その内のいずれかがグラフィック描写に公開されてもよい。この要素のための(プロセスモジュールで使用される)プロセスシミュレーション要素は、吐き出し圧力、ガス組成、ガス温度、およびガス質量流等のパラメータを決定または計算してよく、そのパラメータはグラフィックディスプレイに公開されてもよい。ユーザはモータ起動/停止のための関連DCブロックに対する参照、(使用されている場合)可変速度ドライブのためのAOブロックに対する参照、およびファンのシミュレーションされる動作を定義するためのファン曲線(圧力対流量)を設定してもよい。
【0050】
いくつかのケースでは、特定のタイプのアクチュエータは、パイプ、ダクト、またはコンベヤ等の特定のタイプの接続にのみ使用されてもよい。以下の表は典型的なアクチュエータ要素の例示的な接続制限を定義する。
【0051】
【表1】
【0052】
処理要素はいくつかの方法でプラント内において材料またはストリームを処理するプラント装置を含む。一般的に、処理要素に対する、および処理要素からのすべての入力と出力は接続要素を介して行われる。標準処理要素はタンク(縦型と横型)、ヒータ、スタティックミキサー、リアクタ、ミキサー、エアヒータ、および単純な処理アクティビティまたは標準的な処理アクティビティを実行する他の要素を含む。ユーザは、サイズ、体積等、物理的な装置特性とともに要素に対する入力と出力の数を指定してもよい。これらの標準的な処理要素のシミュレーションアルゴリズムおよび静的表現は、それらがユーザによって修正できないように設定されてもよいが、設定時に前述されたように選択可能であってもよい。所望の場合に、他の、(蒸留塔、エバポレータ、セパレータ、ボイラ等の)通常はさらに複雑なプラント装置がカスタム処理要素として実現されてもよいことは言うまでもない。静的表現、このようなカスタム処理要素の入出力数とシミュレーションアルゴリズムは、ユーザインタフェース要件を満たすために修正されてもよい。カスタム処理要素はいったん定義されると、他の処理要素の作成において開始点として再利用または使用されてもよい合成物またはテンプレートとして保存されてもよい。
【0053】
タンク標準処理要素は、タンクに対するパイプ接続に基づいて設定されてよく、タンク要素は(例えば、動的なアニメーションを使用して)タンク内の水位、および(例えば、色の変化を使用して)100%また空の水位を動的に反映してもよい。タンクのためのプロセスモジュールシミュレーションは、グラフィックディスプレイを介して、出口温度、出口組成、液体温度およびタンクのシミュレーションによる水位等のパラメータを計算し、公開してもよい。しかしながら、システムにタンクを結び付けるために、ユーザまたは構成エンジニアは、入出力の接続数、タンクに対する完全な接続、(例えば、直径と高さ等の)サイズなどのタンク特性等を設定する必要がある場合がある。
【0054】
ヒータ処理要素は、グラフィックディスプレイを介して、(例えば、色の変化を使用して)熱伝達率、出口製品温度、入口製品温度、(安定した低下を想定する)出口圧力等を動的に計算し、反映してもよい。ユーザまたは構成エンジニアは、ヒータに対する完全な接続、ヒータ表面積、およびクリーンな状態での熱伝達率を設定する必要がある場合がある。
【0055】
言うまでもなく、スタティックミキサー、リアクタ、ミキサー、エアヒータ、熱交換器等の他の処理要素は、これらのタイプのデバイスに合わせてある表示機能およびシミュレーション機能を有してもよい。蒸留塔、エバポレータ、セパレータ、ボイラ等の基準外の処理要素は、容器に関連付けられたシミュレーションが、標準的な選択に含まれていない場合にはユーザ定義であるカスタム処理要素を使用してグラフィックに表現されてもよい。これらの要素における処理は、容器の各入力を各出力に関連付けるステップ応答モデルとして記述または定義されてもよい。入力は、ガスおよび/または液体のストリームであり得る。選択的に、ユーザは処理要素の入力と出力の関係性を記述する方程式を定義してよく、これらの方程式はシミュレーションを実行するために要素を使用してプロセスモジュールに記憶されてもよい。所望の場合、いくつかの単純な静的グラフ表現は、ユーザがカスタム処理要素と関連する静的グラフィックを迅速に作成する上で役立つために提供されてもよい。これらの単純なグラフィックが使用される場合には、ユーザは入出力接続の所望の数、およびカスタム処理要素によってサポートされている(パイプ、ダクト、コンベヤ等の)サポート接続のタイプだけを指定する必要がある場合がある。それに応じて、グラフィックアイテムが表示され、オペレータグラフィックの作成で即座に使用できる。所望の場合、プロセス要素の各入力と出力と関連付けられる利得およびあらゆるダイナミクスは、ユーザがシミュレーションアルゴリズムをステップ応答として指定することを選ぶ場合に指定されてもよい。ユーザはカスタムアルゴリズムを選択する場合、シミュレーションアルゴリズムを定義するためにユーザに表現エディタが与えられてもよい。選択された方法に基づき、カスタム処理要素出力の特性は異なって計算されてもよい。さらに、ユーザは個別のソフトウェアアセンブリで定義したアルゴリズムの1つ以上を参照してもよい。
【0056】
さらに、複数の所定の合成物またはテンプレートがカスタム処理要素を作成するために提供されてもよい。これらのテンプレートは、例えば、出口ガスO2、出口ガスCO、生成ストリーム、ボイラドラム水位、およびボイラ通風を計算するカスタムアルゴリズムを有するボイラテンプレートを含んでもよい。このようなテンプレートは、単一の燃料入力に基づいてもよい。しかしながら、テンプレートを修正することにより、複数の燃料でボイラをシミュレーションできる。他の所定のテンプレートは、噴霧乾燥機カスタム処理要素と連動して使用されてよく、セパレータの動作をモデル化するためにステップ応答モデルを含んでよい専用の容器−サイクロンセパレータテンプレートを含んでよい。同様に、コラムテンプレート、噴霧乾燥機、およびエバポレータ本体は、予想プロセス応答を定義するためにステップ応答モデルを活用してもよい。エバポレータでは、エネルギー入力および入力流量の濃度に基づいて、出口流量と蒸気放出の濃度が計算できる。複数のエバポレータ要素は、多重効用蒸発器を作成するために熱交換器とエダクタの要素とともに接続されてもよい。同様に、専用の容器スタックカスタムテンプレート処理要素はボイラ処理要素とともに使用されてもよい。この場合、入口の特性は、そのように所望の場合、修正を行わずに、あるいはスタック内で実行されるエミッション削減を反映するためにスタックを通して持続されてもよい。
【0057】
グラフィックディスプレイとプロセスモジュールを作成するために使用できる他のタイプの要素は、測定要素とプロパティ要素とを含む。測定要素は、物理的な送信機と関連付けられる測定値にアクセスするためにグラフィックディスプレイで使用されてもよい送信機要素、およびスイッチ要素を含む。一般的に、送信機要素は、不良ステータスまたは不確実なステータス、制御モジュールの中で関連付けられたAI機能ブロックのモード、実際の送信機(センサ)と関連付けられた測定値と測定装置等、あるいは実際の送信機と関連付けられた他のデータを動的に反映してもよい。オフラインモード(またはシミュレーションモード)では、送信機要素は、AIブロックまたはPCIブロックと関連付けられた値より、むしろプロセスモジュールによって提供されるシミュレーション値にアクセスし、表示するために使用されてもよいか、あるいはシミュレーションによる制御ルーチンで使用される測定値として制御ブロック内の関連AIブロックに測定値を提供するために使用されてもよい。送信機要素は、接続要素に、または処理要素に追加することができ、このような送信機要素がディスプレイに追加されるとき、ユーザは概して、測定値を提供しているコントローラスキームで関連付けられたAIブロック、PCIブロック、またはDIブロックを特定する必要があるであろう。オンラインモードでは、測定の値はこの測定要素の隣に示されてもよい。オフラインモード(つまりシミュレーションモード)では、(対応するプロセスモジュールにより作成されるような)測定のシミュレーションされる値が自動的に表示されてもよい。オンライン動作では、ユーザは測定が失敗した場合にシミュレーションによる値に制御とディスプレイを切り替えることを選ぶことができる。
【0058】
スイッチ要素は、不良ステータスまたは不確実なステータス、関連DI(例えば手動またはOS)のモード、およびスイッチの離散値(オン、オフ等)を動的に反映してもよい。オフラインシミュレーションモードにある間、ユーザは、シミュレーション値または手動値およびステータスを選択することにより、およびスイッチの値とステータスを手動で入力することによりグラフィックディスプレイおよび制御モジュールのスイッチパラメータにアクセスし、変更するためにスイッチディスプレイを使用してもよい。しかしながら、一般的に、ユーザは、制御スキームで関連DIブロックに対する参照、切り替えをトリガする要素特性に対する参照、およびスイッチの状態の変化に関連付けられた制限とデッドバンドを提供することによりスイッチ要素を設定しなければならない。
【0059】
推定される特性要素は、一般的にはプロセスモジュールにより決定されるようなシステムの推定特性を公開し、その要素の任意の特性を表示するために接続要素または処理要素に追加されてもよい。この要素が接続要素に、または1台の装置に置かれると、ユーザは表示される特性をブラウズし、選択できる。したがって、物理的な測定によって入手できないシミュレーション特性は、推定特性要素を使用することにより表示されてもよい。このような推定特性要素は、良好/不良な接続、推定特性値(複数の場合がある)および関連範囲または変化の範囲外にある特性を動的に反映してもよい。一般的に、ユーザは表示される特性(複数の場合がある)に対する参照、および該特性が範囲外にある場合に要素の範囲と色変化を設定しなければならない。
【0060】
理解されるように、送信機要素および推定特性要素を処理要素、アクチュエータ要素、および接続要素に取り付けることにより、これらのプロセス要素の入出力に関連付けられていた特性はオンライン動作またはオフラインシミュレーションの間に参照されてもよい。これらの特性はグラフィックディスプレイで可視にされてもよい。
【0061】
一般的に、オペレータは、プロセス10の動作中のインプリメンテーションのために、あるいはシミュレーション環境でのインプリメンテーションのために、1つ以上のプロセスモジュール39またはグラフィックディスプレイを作成するために構成アプリケーション38を起動または実行してもよい。一実施形態では、構成アプリケーション38は、構成エンジニアに、図3に描かれているもの等の構成ディスプレイ(表示)を提示する。図3から分かるように、構成ディスプレイ64はライブラリまたはテンプレートセクション、および構成セクション66を含む。テンプレートセクション65は、図2のスマートプロセスオブジェクト42eを含んでもよく、前述された接続要素、測定要素、ストリーム要素、処理要素、および推定特性要素のいずれかであってもよい、テンプレートスマートプロセスオブジェクト67のセットの描写を含む。所望の場合、グラフィック定義だけを有する非スマート要素68も提供されてもよい。本来、テンプレート67と68は、プロセスモジュールまたはグラフィックディスプレイ(または両方)の中でスマートプロセスオブジェクトのインスタンスを作成するために、構成セクション66の上にドラッグアンドドロップされてもよい総称的なオブジェクトである。部分的に完了したプロセスグラフィックディスプレイ35cは、1個のバルブ、2つのタンク、2台のポンプ、1台のフロートランスミッタ、および流路コネクタにより相互接続されている2台のセンサを含むものとして描かれており、前述されたようにスマートリンクまたはコネクタ要素であってよく、ストリーム出力を提供してもよい。グラフィックディスプレイ35が、スマートプロセスオブジェクトと非スマート要素の両方から構成されてもよいことが注記されるであろう。
【0062】
グラフィックディスプレイ35c(つまりプロセスモジュール)等のグラフィックディスプレイを作成すると、構成エンジニアは、スマートプロセスオブジェクト67とテンプレートセクション65に描かれている要素68を選択し、構成セクション66上にドラッグし、それらを任意の所望の場所にドロップしてもよい。一般的に、構成エンジニアは、1個以上のスマートデバイスプロセスオブジェクト67aと、デバイスを示している非スマート要素68を選択し、構成セクション66の上にドラッグする。構成エンジニアは、次に構成セクション66の中のスマートデバイスプロセスオブジェクトをスマートコネクタプロセスオブジェクト67bと相互接続し、入出力ストリーム67cをディスプレイに入れてもよい。さらに、静的テキスト要素等の非スマート要素がディスプレイに追加されてもよい。構成エンジニアは、ポップアップ特性メニュー等を使用してこのプロセスの間にスマートプロセスオブジェクトの各々の特性を変更してよく、特に、これらのスマートプロセスオブジェクトと関連するメソッド、パラメータ、タグ、名前、ホットリンク、モード、クラス、入出力等を変更してもよい。プロセスエンジニアまたは構成エンジニアが、通常、プロセス構成、領域等を表す所望の要素の各々を用いてプロセスモジュールを作成すると、構成エンジニアはモジュールと関連する規則または他の機能を定義してもよい。このような規則は、質量平衡と流量の計算のような、システムレベルのメソッドの性能と関連付けられるもの等の実行規則であってもよい。プロセスエンジニアまたはオペレータは、プロセスディスプレイがオンラインである場合に有用となると考えられるトレンドとフェースプレートを追加することを決定してもよい。グラフィックディスプレイ35cの作成後、構成エンジニアはメモリにそのディスプレイを保存してよく、その時点で、または後で、そのディスプレイのインスタンスを作成し、実行エンジン48がグラフィックディスプレイを提供できるように実行エンジン48にそのディスプレイをダウンロードしてもよい。プロセスグラフィックディスプレイ要素とは対照的にプロセスモジュール要素のために異なるグラフィックが描写されてもよいが、構成エンジニアが同じようにまたは類似した方法でプロセスモジュールを作成可能となることは言うまでもない。さらに、オペレータは、プラントを運転中に詳細のレベルをオンにすることを選んでよい。例えば、詳細のレベルの内の1つは各接続での組成を示すであろう。
【0063】
上記に注記されたように、プロセスグラフィックまたはプロセスモジュールには特殊タグが与えられてもよい。例えば、グラフィックディスプレイまたはプロセスモジュールの中のスマートプロセスオブジェクト要素にはプロセス制御システムの中で選択される1台の装置またはルート等の他の要因に基づいて、例えば実行エンジン48が実行時に記入または選択できるエイリアスを含むタグを与えられてもよい。プロセス制御システムでエイリアス名および間接的な参照を使用することは、本発明の譲受人に譲渡され、これにより本明細書に参照することにより明示的に組み込まれている米国特許番号第6,385,496号に詳しく説明されている。これらの技法のいずれかは、本明細書に説明されているスマートプロセスオブジェクトのためのタグを提供し、解消する(resolve)ために使用されてもよい。エイリアス等を使用すると、同じプロセスモジュールが装置等のセットのための異なるビューを含んでよく、あるいは装置等のセットのための異なるビューをサポートするために使用されてもよい。
【0064】
図3のディスプレイ64は、プロセスモジュールまたはグラフィックディスプレイの異なるビューのためのタブ(ビュー1、ビュー2、およびビュー3)を描いている。これらのタブは、プロセスに関連する異なるユーザのための異なるビューに、その中の同じスマートプロセスオブジェクトのいくつかを使用してアクセスし、作成するために使用されてもよい。
【0065】
一般的に、構成エンジニアがプロセスモジュールまたはグラフィックディスプレイを作成すると、構成アプリケーション38はスマートプロセスオブジェクトを、その間の接続とともにデータベースに自動的に記憶する。このデータベースは、次に、例えば、同じスマートプロセスオブジェクトの内の1つ以上を使用して異なったビューを提供してもよい他のプロセスモジュールとグラフィックディスプレイを作成するために使用できる。このようにして、構成エンジニアは第2のビューを作成すると、データベース内ですでに作成され、記憶されているようなスマートプロセスオブジェクトと、第2のビューにそのスマートプロセスオブジェクトを入れるためにそれを用いて記憶されるあらゆるメソッドを簡単に参照できる。したがって、データベースは、プロセス制御モジュールおよびグラフィックディスプレイが作成されるにつれて入力することができ、データベースはプロセスフローデータベース内にすでに存在しているスマートプロセスオブジェクトを使用して他のビュー、モジュールおよびグラフィックディスプレイを作成し、実行するために任意の時点で使用できる。このようなデータベースを使用して、該データベース内の各スマートプロセスオブジェクトは、プロセスモジュールをサポートしてもよいか、プロセスモジュールで使用され、複数のグラフィックディスプレイで参照されてもよい。やはり理解されるように、プロセスモジュールは、これらのモジュールのためにディスプレイを構築してから、プロセスモジュール内で使用される、あるいはプロセスモジュールと関連付けられるフローアルゴリズムを指定することにより構築されてもよい。言うまでもなく、個々のプロセスモジュールは異なるコンピュータ全体に拡散され、異なるコンピュータによって実行されてよく、プロセスモジュールは同じコンピュータ上または異なるコンピュータ上のいずれかで、相互に連動して動作するために相互に通信可能に接続されてもよい。これらが行われると、入出力ストリームは、外部でプロセスモジュールに対してともに参照される。
【0066】
上記に注記されたように、構成エンジニアは、プロセスモジュールまたはグラフィックディスプレイの作成の一部として、プロセスモジュールのシミュレーションアルゴリズムを取り付ける、または提供してもよい。これらのシミュレーションアルゴリズムは、プロセスモジュールによって描かれている、またはモデル化されているプロセスに関して質量平衡計算、流量計算、効率計算、経済計算等の、特定のプロセス特性またはシステムレベルの特性を計算する、または決定するために事前設定されてもよい。その結果、プロセスモジュール自体が、モード、ステータス、およびアラーム動作を有してよく、ワークステーションに割り当てることができ、ディスプレイダウンロードの一部としてダウンロードされてもよい。所望の場合、シミュレーションアルゴリズムは、質量平衡、または加熱平衡、流量経路選択、流量効率、流量最適化、プロセスシミュレーションに関連する経済計算、またはプロセスモジュールのスマートプロセスオブジェクトに提供されるデータを使用する他の所望の計算を実行するために実行エンジン48によって実行されてもよい。またさらに、これらのシミュレーションアルゴリズムは、制御戦略、つまりコントローラ、フィールドデバイス等に関連付けられ、それらにダウンロードされる制御モジュールからのパラメータにアクセスしてよく、逆にこれらの制御モジュールにデータまたは情報を提供してもよい。
【0067】
実行エンジン48が、すべてのディスプレイ上で構成されるすべてのプロセスオブジェクトとリンクを合併したもの全体でプロセスアルゴリズムを実行可能とするために必要とされることが理解されるであろう。したがって、(プロセスモジュール内の)シミュレーションアルゴリズムは、任意の関連付けられたグラフィックディスプレイがロードされている、つまり呼び出され、ユーザに情報を表示しているか否かに関係なく実行するであろう。言うまでもなく、シミュレーションアルゴリズムはプロセス全体10で、またはプロセス10の定義されている部分集合全体で照合されてもよい。任意の特定のプロセスモジュールの実行中、実行エンジン48は、そのプロセスモジュールに関連するグラフィックディスプレイに基づいて、プロセスモジュール内の相互接続されているオブジェクトまたはエンティティを描写するオペレータまたはオペレータインタフェースにディスプレイを与えてもよい。ディスプレイのパラメータ、グラフィック等は、プロセスモジュールの内部のスマート要素の構成と相互接続によって決定される。さらに、このディスプレイまたは他のディスプレイで提供されるアラームと他の情報は、スマートプロセスオブジェクト内のメソッド、および特定のプロセスモジュールと関連付けられたシミュレーションアルゴリズムによって定義され、生成されてもよい。所望の場合、たとえ実行エンジン48がプロセスフローモジュールを実行し続け、それによってそれと関連するメソッド、アラーム動作、フローアルゴリズム等を実行しても、実行エンジン48は複数のオペレータインタフェースにプロセスモジュールのためのディスプレイを提供してよく、あるいはディスプレイを提供しないように構成または設定されてもよい。
【0068】
所望の場合、プロセスモジュールは、グラフィックディスプレイから自動的に生成されてよく(あるいは逆もまた同様)、プロセスモジュールが利用可能な機能がプロセスグラフィックス要素によって決定されてもよい。プロセスモジュールが好ましくはプロセスグラフィックディスプレイを遮断する(shadow)ために構築されてもよいという点は明らかである。その結果、ユーザがプロセスグラフィックディスプレイを構成すると、ユーザは質量ストリームまたはエネルギーストリーム等のプロセスモジュールについての追加の情報を含む能力を有する。これらのストリームは、シミュレーション機能ブロックによって必要とされる開始状態を確立するためにプロセスモジュールで使用される。
【0069】
加えて、プロセスモジュールは、コンピュータで実行される実際のソフトウェアモジュールであるため、それらが制御モジュールと関連するパラメータ、制御戦略、ディスプレイ等を使用するために参照する、およびコントローラモジュールによって参照されることも可能である。また、この機能を使用すると、プロセスモジュールがプロセスグラフィックディスプレイとは無関係に作成されることも可能である。
【0070】
一般的に、プロセスモジュールは処理要素、ストリームおよびそれらの関連接続から構成される。プロセスグラフィックス要素と(プロセスモジュールの中の)シミュレーション要素の間には1対1の対応があるため、ユーザは、グラフィックディスプレイを構築し、そのディスプレイから対応するプロセスモジュールを自動的に生成することが可能であろう。所望の場合に、ユーザがプロセスモジュールを作成してから、スマートプロセスオブジェクト内のグラフィックスを使用してそのモジュールからグラフィックディスプレイを自動的に作成してもよいのは言うまでもない。しかしながら、プロセスモジュールの自動生成を可能にするためには、ユーザが、測定要素と推定特性要素に関連するアクチュエータ要素特性、接続要素特性または処理要素特性を識別する必要がある可能性がある。ユーザがプロセスグラフィックを作成する前に、あるいはいくつかのケースでは、制御モジュールが構築される前に、プロセスシミュレーションを作成する必要がある場合もある。シミュレーションが構築された後、制御モジュールのI/Oブロックに対する参照を記入することができるであろう。また、関連グラフィックディスプレイが作成されると、既存のプロセスモジュールにブラウズし、特性基準を設定することが可能になるであろう。
【0071】
いくつかのケースでは、プロセスグラフィックスはプロセスシミュレーションを構築するために必要とされるすべての詳細を含む必要はない可能性がある。したがって、ユーザが、プロセスグラフィックスから自動的に作成されたシミュレーションモジュールまたはプロセスモジュールを編集可能とするためにエディタを提供することが望ましい。また、複数のプロセスグラフィックスが同じ1台の装置を表示する必要がある場合があるため、プロセスグラフィックの構築では、要素が既存のプロセスモジュールを参照できることが必要である場合がある。
【0072】
一般的に、処理要素に対応するシミュレーションには共通の構造がある。所望の場合、ブロック入力接続およびこのシミュレーションのパラメータは、制御モジュールに対する参照が必要とされないようにプロセスモジュールに記憶される。さらに、シミュレーションによりサポートされる入出力接続の数は拡張可能に定義されてよく、シミュレーション実行の結果はシミュレーション出力接続において、あるいはシミュレーションのパラメータとして反映されてよく、シミュレーションアルゴリズムはステップ応答として定義されてもよいか、あるいはユーザによって入力されてもよい。シミュレーションアルゴリズムがユーザによって入力されると、ユーザは出力ごとに無関係にダイナミクスを指定してもよい。
【0073】
またさらに、パラメータの共通集合は入力接続と出力接続のためにサポートされてもよい。入力接続と出力接続と関連するパラメータは、アレイパラメータまたは構造としてブロック間で通信されてもよく、接続ステータス(例えば、良好、不良、制限されている等の)接続ステータス、質量流パラメータ、圧力パラメータ、温度パラメータ、特殊熱パラメータ、密度パラメータ、流れ不可(flow not possible)パラメータ、圧力/流量ネットワークパラメータのための圧力基準、圧力/流量ネットワークパラメータのための流量基準等のパラメータを含んでよい。いくつかのケースでは、ストリームの組成等の他のパラメータがシミュレーションアルゴリズムで提供され、使用されてもよい。この要件をサポートするためには、標準的な、拡張されたストリーム要素が提供されてもよい。拡張されたストリーム要素構成の一部として、ユーザはストリーム要素を定義するためのデータの所定のグループの集合を選択してもよい。このような拡張された接続は、この情報を活用するブロックに接続できるようにされるだけである。一般的に、拡張パラメータはグループ名と多くの特殊要素を含んでよい。例えば、ボイラ処理要素に対する燃料入力ストリームが、燃料セットを含む燃料の成分、つまり燃料の中の炭素、水素、硫黄、酸素、水分、および窒素の量(所望の場合すべて重量%)を含んでよい。別の例としては、タービン発電機処理要素は、蒸気ストリームを使用してよく、関連付けられたシミュレーションへの接続は蒸気セット、段階に入る蒸気エンタルピー(実際)、段階を出る蒸気エンタルピー(実際)、(等エントロピー膨張の場合)蒸気エンタルピー等を含む拡張されたパラメータセットを使用してもよい。
【0074】
拡張されたグループセットは、プロセスモジュールの中のシミュレーション要素がハイファイシミュレーションパッケージに対するインタフェースとして使用される場合に使用されてもよい。このケースでは、いくつかのストリームの組成はプロセスグラフィックで可視にできる。また、所望の場合、対話型エディタは、グラフィックディスプレイで提示されるための制御モジュールのための関連フェースプレートと詳細ディスプレイのみではなく、グラフィックディスプレイにも表示される値を作成または修正することを容易にするために提供されてもよい。
【0075】
図4は、上述された要素と構成アプリケーションを使用して作成されてもよい例示的なグラフィックディスプレイ100を示している。特に、グラフィックディスプレイ100は、水、酸、および塩基からホワイトビネガーを生産するプロセスプラントの一部を示している。図4に描かれているように、プロセスグラフィックディスプレイ100は、塩基フィード、酸フィード、水フィードおよび冷却水のストリームを定義する4つのストリーム要素102をそれに対する入力時に含む。塩基フィードストリーム102はバルブ106の形を取るアクチュエータ要素に配管接続要素104を通して送達される。バルブ106の出力は配管接続要素104を介してミキサー108の第1の入力に接続される。同様に、酸フィード102は送信機要素110に接続されてから、ミキサー108に接続されている追加のバルブ112に接続される。酸フィード102と送信機110、送信機とバルブ112、およびバルブ112とミキサー108が、配管接続要素114を介して接続される。
【0076】
容易に分かるように、ミキサー108の出力は配管および2台の送信機124と126を介して熱交換器122に接続される。冷却水ストリーム102はバルブ128を介して熱交換器122に送達され、リターン水ストリーム要素131を生成するためにバルブ130を介して熱交換器を出る。同様に、熱交換器122の出力は出力酢酸ストリーム要素136を提供するために送信機要素132とバルブ134を通って送達される。特に常に呼び出されていないが、グラフィックディスプレイの要素はすべてのケースで配管接続要素を介して相互に接続される。
【0077】
ディスプレイ要素自体の特性として生成されてよく、送信機、および推定された特性要素、あるいは制御モジュールの中のブロックを参照する要素の形を取った個別の要素であってもよいディスプレイボックス140は、異なる要素と関連するプロセス変数(PV)値、設定点(SP)値、OUT値等のパラメータを示すまたは公開するためにグラフィックディスプレイ100に描かれている。さらに、ユーザが要素の内のいくつかの上にカーソルを置かなければならない場合、ディスプレイ100は参照された要素と関連付けられた他の値を描いてもよい。例えば、(酢酸ストリーム出力136等の)ストリーム要素の内の1つの上にカーソルを置くと、グラフィックはプロセスの中のこの点での酸のストリームの組成、圧力、温度、密度、流量等を示す。言うまでもなく、グラフィックディスプレイ100上に表示されている値およびパラメータは(制御システム内のAIブロックから等)プロセス制御システム内の実際の参照される送信機から、あるいは要素の機能をシミュレーションするプロセスモジュールシミュレーション要素から送達されてもよい。図4のグラフィックディスプレイ100は、ホワイトビネガーを作るプロセスの動作中に、あるいは例えば設計アクティビティまたはオペレータトレーニングアクティビティを実行するために使用されるそのプロセスのシミュレーションを実現するためにユーザに提供されてもよい。
【0078】
図5は、異なるグラフィックディスプレイ(および同様に異なるプロセスモジュール)がプロセスプラントのさらの多くを描写する(またはシミュレーションする)さらに高いレベルのディスプレイ(またはプロセスモジュール)を形成するためにともにどのように接続されてもよいのかを示す。図5のディスプレイ150では、プロセスグラフィック100は名前またはラベルおよび接続点としてストリーム入力と出力のセットを有するボックスの中に折り畳まれる。所望の場合、ユーザは、そのグラフィックを選択し、そのグラフィックの上を例えばダブルクリックすることにより、図5のプロセスグラフィック100を図4に示されるグラフィックに拡大してもよい。さらに、他の折り畳まれたグラフィックディスプレイ152と154は、入力ストリーム要素156と158を介して冷却水フィードにのみではなく、塩基フィード、酸フィードおよび水フィードにも接続しているものとして描かれている。プロセスグラフィックディスプレイ100のストリーム出力136は、ホワイトビネガー用の保持タンク162のストリーム入力160に接続される。同様に、プロセスグラフィックディスプレイ152と154のストリーム出力は、各々モルトビネガー(malt vinegar)とpickelingビネガーのための保持タンク163と164のストリーム入力に接続されている。理解されるように、プロセスグラフィックス152と154は、各々モルトビネガーとピッケリングビネガー(pickeling vinegar)を作るプロセスプラントの部分のためのグラフィックを提供するように構成され、該プロセスプラントのこれらのセクションに関するデータとグラフィックビューは、これらのディスプレイを拡大することにより表示されてもよい。
【0079】
しかしながら、図5は、プロセスプラントの異なるグラフィックセクションが、ストリーム要素の間の接続を介してともに接続されてもよいことを示す。特に、ストリーム要素は、接続要素と関連する開始特性を定義するためにディスプレイに含まれてもよい。また、ストリーム要素は、ディスプレイ間の接続点として使用されてもよい。このようなディスプレイの間のシート外(off−sheet)の接続のために、ユーザは参照される接続を含む関連ディスプレイを即座に呼び出すためにストリームをクリックしてもよい。したがって、一般的に、ストリーム要素の質量/組成は、通常、プロセス入力の開始特性、つまり開始原料組成等を定義するために、あるいは別のディスプレイ上でストリーム接続へのリンクを定義するために使用される。接続は質量/組成ストリーム要素の入力または出力で行われてもよい。ストリーム要素の場合、一般的にユーザは(システムの中で一意でなければならない)ストリームの名前、(基準入力または入力接続がない場合には)ストリームの特性、(ストリームが複数の成分から構成される場合)ストリームの異なる成分の質量分立、圧力または質量流、温度、比熱、密度、必要とされる接続タイプ(パイプ、ダクト、コンベヤ)および(別のディスプレイ上でストリームにアクセスするために使用される場合)参照される入力ストリームを設定してもよい。同様にエネルギーストリーム要素は、BTU/HR転送等のプロセス入力と関連付けられる開始エネルギーを定義するため、あるいは別のディスプレイでのストリーム接続のエネルギー特性へのリンクを定義するために使用されてもよい。
【0080】
図5は、異なる折り畳まれたグラフィックディスプレイを相互接続するためのストリームの使用を示しているが、同じ手順は異なるプロセスモジュールを相互接続し、異なるプロセスモジュールの相互接続を描写)するために使用できることになる。特に、プロセスモジュールは、名前およびストリーム要素入出力を描くために折り畳むことができ、これらの折り畳まれたプロセスモジュールは、異なるプロセスモジュールのストリーム出力とストリーム入力の間の通信接続またはリンクの描写を使用して他のプロセスモジュールに通信可能に結び付けられ、または接続できることになる。
【0081】
図6は、図4のグラフィックディスプレイ100に相当するプロセスモジュール100aを示している。これから分かるように、プロセスモジュール100aは、図4のグラフィックディスプレイに描かれている物理的な要素の各々についてスマートオブジェクトシミュレーションを表すブロックを含む。理解を容易にするために、図4の要素に対応する図6の各々のシミュレーションブロックは「a」が付け加えられた同じ参照番号で示されている。したがって、図6のミキサーシミュレーションボックス108aは、図4に描かれているミキサー108に対応するシミュレーションである。同様に、バルブシミュレーションブロック106a、112aおよび118aは、各々図4に描かれているバルブ106、112、および118に対応し、通信可能に結び付けられている。
【0082】
図6のプロセスモジュール100aは、このようにしてグラフィックディスプレイ100に描かれている要素ごとに(スマートプロセスオブジェクトと関連付けられるか、あるいはスマートプロセスオブジェクトにより指定される関数ブロックとして表現されてもよい)プロセスシミュレーション要素を含み、これらのシミュレーションブロックはグラフィックディスプレイ100に指定される方法で、および指定される接続要素を使用して相互接続される。所望の場合、プロセスモジュール100aは、グラフィックディスプレイ100の作成後、あるいはグラフィックディスプレイ100の作成中にも自動的に作成されてもよい。
【0083】
上記で示されたように、プロセスモジュール100の中のプロセスシミュレーション要素の各々は、これらのシミュレーション要素への入力時に提供される材料のストリーム(複数の場合がある)のプロセスおよび性質で使用される機械装置の動作に基づいたシミュレーション機能(例えば、アルゴリズム、規則、伝達関数等)を含む。これらのシミュレーションは、処理要素、アクチュエータ要素、および送信機要素の各々の中のSIMブロックにより図6に描かれている。デバイスのダイナミクスとストリームに対する影響は、それによってプロセスモジュール100aの中でモデル化またはシミュレーションされてもよい。アクチュエータ要素および処理要素と関連付けられたシミュレーションブロックのために利用できるいくつかの考えられる特性は、(入口温度、流量および熱容量に基づいた)出口温度、(入口質量流と要素の中の蓄積に基づいた)出口流量、(装置全体での仮定される圧力低下または下流圧力に基づいた)出口圧力および(完全混合および入口組成に基づいた)出口組成であってもよい。カスタム計算が実現されるとき、出口特性に関連付けられる内蔵ダイナミクスは、例えばプロセス入力の変換に対する不動作時間が加えられた一次プラスデッドタイム(first-order−plus−deadtime)応答に基づいて追加されてもよい。ユーザは、所望の各々の計算された特性と関連付けられた不動作時間および遅延を指定してもよい。送信機とスイッチ等のプロセス測定要素、および接続要素の場合、参照される特性にダイナミクスが導入されないことが想定されてもよい。しかしながら、そのように所望の場合、遷移と他の特性はモデル化されてもよい。しかしながら、多くのケースでは、上流接続からの特性は下流接続に即座に反映されてもよい。
【0084】
プロセスモジュール100aを使用すると、プロセスグラフィック100に描かれているプラントの部分の動作をシミュレーションできる。このシミュレーションは、プロセスモジュール100a内のシミュレーション要素からの値がグラフィックディスプレイ100のグラフィックスに自動的に通信され、そこに表示され、制御モジュールで使用されてもよいのでディスプレイ100と統合される。同様に、トレーニングインストラクタはプロセスモジュール100aによって実行されるシミュレーションで特性を達成するまたは変更するためにディスプレイを使用してもよい。
【0085】
所望の場合、HYSYS(登録商標)、CAPE等のハイファイシミュレーションは、測定要素およびアクチュエータ要素のためのI/O基準を定義してから、これらの基準を使用して、シミュレーションでI/Oを実行するために、例えばHYSYS(登録商標)内で現在使用されているDCSインタフェーステーブルを作成することによりシミュレーション特長に加えられてもよい。標準処理要素テンプレートは、ハイファイプロセスシミュレーションを構築するために使用されてもよい、HYSYS(登録商標)(または他のハイファイシミュレーション)成分ごとに定義されてもよい。このようなハイファイシミュレーション165はプロセスモジュール100aに通信可能に接続されているものとして図6に描かれている。このケースでは、ユーザはプロセスモジュール100aの中のシミュレーション要素の各々で提供されるシミュレーションを無効にし、代わりにハイファイシミュレーション165によって提供されるシミュレーションパラメータを使用することを選択してもよい。ユーザは、(プロセスモジュール100aの中に設定される電子スイッチ、フラグ等であってもよい)スイッチ166を起動することによりハイファイシミュレーション165の使用を指定してもよい。
【0086】
一般的に、スイッチ166がハイファイシミュレーション165を使用するために設定されるとき、プロセスモジュール100a内の関連シミュレーション機能ブロックはシャドーブロックとして働く。つまりそれらのシミュレーションアルゴリズム(SIMブロック)は実行されず、代わりにブロックパラメータがハイファイシミュレーション165によって読み書きされる。しかしながら、プロセスモジュール100aは、依然として同じパラメータと他の情報をプロセスグラフィックと制御モジュールに通信し、(最終的にはハイファイシミュレーション165で使用するために)プロセスグラフィック100、および制御モジュール29から情報を受信する。
【0087】
理解されるように、このようにしてプロセスモジュールを使用することは、オペレータ、エンジニア等が表示し、使用できるようにプロセスプラント内でハイファイシミュレーションパッケージ(ソフトウェア製品)を接続する(つまり、プロセスモジュール100aと関連付けられたプロセスグラフィックディスプレイ100を使用する)容易且つ便利な方法となる。特に、プロセスモジュールのストリームパラメータは、ハイファイシミュレーションまで接続、あるいはハイファイシミュレーション内でモデル化される流れと関連付けられてよく、プロセスモジュールの中の経路移動(pathing)は自動的に構造化され、あるいはハイファイシミュレーションの中の経路移動と関連付けることができる。実際には、プロセスモジュールは、このケースでは、プロセスプラント制御およびシミュレーション環境で使用される制御モジュールおよびグラフィックディスプレイにハイファイシミュレーション内のデータをマッピングする便利な方法となる変数つまりデータプレースホルダとして使用される。
【0088】
またさらに、プロセスモジュールおよび関連グラフィックディスプレイは、通例ハイファイシミュレーションプロバイダによってユーザにとって高い価格で現在生産されている、ハイファイシミュレーション用の個別のディスプレイを提供するニーズを削減するまたは排除する。代わりに、プロセスモジュールはすでにグラフィックディスプレイに結び付けられているため、プロセスモジュールがハイファイシミュレーションパッケージに接続されると、グラフィックディスプレイはユーザにハイファイシミュレーションパッケージにより計算されるように情報を提供するために、およびユーザまたはオペレータがハイファイシミュレーションパッケージに対する入力を操作可能とするために使用されてもよい。またさらに、プロセスモジュールは制御モジュールに通信可能に接続されるため、ハイファイシミュレーションパッケージによって生成されるパラメータまたはデータは、オンライン制御アクティビティを実行するために制御モジュールで使用されてもよい。このようにしてプロセスモジュールを使用すると、ハイファイシミュレーションパッケージは、制御モジュールと統合されることに加え、制御モジュールに並列で実行できる。
【0089】
前述の説明から理解されるように、プロセスモジュールおよびグラフィックディスプレイは、グラフィックディスプレイによって描かれているプロセスプラントの動作をシミュレーションするプロセスモジュールとともに、プロセスプラント10のセクションのオペレータビューを提供するために、統合的に作成、実行されてもよい。有利なことに、プロセスモジュールおよびグラフィックディスプレイは、プロセスプラントのそのセクションまたは部分に関して制御アクティビティを実行する、さらに1つ以上の制御モジュールと(例えば、通信可能に接続される等)統合されてもよい。したがって、図1に描かれている制御モジュール29は、図1に描かれているプロセスモジュール39とグラフィックディスプレイ35の内の1つ以上と通信可能に統合されてもよい。言うまでもなく、通信モジュール29、プロセスモジュール39、およびグラフィックディスプレイ35は、特定のケースで所望の、または必要とされるように、図1に描かれているもの以外のプラント10の中の他のコンピュータまたはデバイスで実現されてもよい。
【0090】
図7Aおよび図7Bは制御モジュール29、プロセスモジュール39およびグラフィックディスプレイ35の統合をより詳細に示している。特に、グラフィックディスプレイ35は、リサイクルタンク182の出力と直列で接続されているバルブ186とともに、リサイクルタンク182とポンプ184の入力に接続されているバルブ180を含む。要素180から186は、(名前が付けられていない)配管接続要素を介してともに接続され、ストリーム要素はそれらの点での材料のストリームを定義するためにグラフィックディスプレイ35の入力と出力で提供される。
【0091】
グラフィックディスプレイ35の構成の結果、グラフィックディスプレイ35と同時に作成されてもよいプロセスモジュールは、グラフィックディスプレイ35の中に描かれている物理的な要素に対応するバルブ要素180a、タンク要素182a、ポンプ要素184aおよびバルブ要素186aの形を取るプロセスシミュレーション要素を含む。グラフィックディスプレイ35と関連する(グラフィックディスプレイ35に描かれている)物理的な要素の少なくともいくつかを制御する制御モジュール29は、グラフィックディスプレイ35によって、およびプロセスモジュール39によって描かれている要素の中で制御を提供する、あるいはそれらと関連する相互接続された機能ブロックの集合を含む。この例では、制御モジュール29は、2つの制御ループ190と192を含む。第1の制御ループ190は、タンク182の中への流体の流れについての流量入力情報を受け取るアナログ入力(AI)機能ブロックと、PID制御を実行する比例積分微分(PID)制御機能ブロックと、タンク182の中へ材料の所望の流れを達成するためにバルブ180を操作するアナログ出力(AO)機能ブロックとを有する。同様に、制御ループ192は、タンク182内の水位センサによって測定されるようなタンク水位情報を提供するAI機能ブロック、PID制御ブロック、およびタンク182内の流体の水位の制御を達成するためにバルブ186を操作するためにPID制御ブロックから制御信号を受信するAO機能ブロックとを含む。制御モジュール29は、例えばポンプ184のオン/オフ状態または動作を示し、そのように所望の場合、タンク182に関して制御アクティビティを実行するために、制御ループ190と192によって使用されてもよい離散入力(DI)も含む。
【0092】
理解されるように、グラフィックディスプレイ35、プロセスモジュール39、および制御モジュール29内の要素のいずれかは、さらに詳しく説明されるように、それらの要素の他と(関連通信タグを介して)通信し、それによってさらに優れたまたは強化された制御ディスプレイ、シミュレーションディスプレイおよびオペレータディスプレイを提供してもよい。例えば、図7Bに描かれているように、ループ190のPID制御ブロックは、PID制御要素により使用されている電流フロー設定点を表示するために、グラフィックディスプレイ35に情報を提供するように構成、あるいはこれらの要素の間の矢印が付けられた線で示されるように、グラフィックディスプレイ35から制御モジュール29で使用される設定点を読み取ってもよい。同様に、プロセスモジュール39のタンク要素182aは、要素182aの中でシミュレーションアルゴリズムによって決定されるように、タンクのシミュレーションされる水位を示すプロセス制御モジュール29の制御ループ192のAI機能ブロックにシミュレーション出力を提供してもよい。このシミュレーションによるタンク水位は、オペレータによって見られるために追加情報としてグラフィックディスプレイ29上に描かれてもよい。
【0093】
所望の場合、制御ループ192のAOブロックは、グラフィックディスプレイ35のバルブ186に情報を提供し、バルブ186から情報を受信してもよい。さらに、ループ192のAO機能ブロックは、プロセスモジュール39のバルブ要素186aにその制御出力を提供するように構成できる。このケースでは、バルブ要素186aは、物理的な要素になんらかの誤動作があるか否かを判断するために、制御ループ192で測定されている実際のバルブ位置に、バルブ位置のための予測値を比較してもよい。一定量での差異のケースでは、プロセスモジュール39は、障害のあるセンサ等のプロセスプラント内の潜在的な問題を示すグラフィックディスプレイ35上でアラームまたは警告を生成するソフトウェアを含んでよい。図7Bにも描かれているように、バルブ要素186aは、オペレータに表示される、あるいはオペレータが利用可能となるように、グラフィックディスプレイ35にシミュレーションによる測定値またはパラメータを提供してもよい。このようなシミュレーションによる測定値またはパラメータは、バルブ186からのシミュレーションによる、または予測された流量、あるいはバルブ186と関連する、任意の他のシミュレーションによるパラメータを示してもよい。言うまでもなく、実際の測定データ、シミュレーションデータ、またはグラフィック表示データを含む他の所望の情報またはデータは、さらに優れたまたは強化された制御、シミュレーションまたはディスプレイを提供するために、グラフィックディスプレイ35、プロセスモジュール39および制御モジュール29内の要素に提供されてもよい。
【0094】
一般的に、プロセスモジュールを制御モジュールと、および所望の場合、さらにグラフィックディスプレイと統合させることにより生じる可能性を有する多数の優位点がある。1つのケースでは、前述されたようにプロセスモジュールによって実行されるシミュレーションは、シミュレーションによるまたは予測された測定値、パラメータまたは他のプロセス値を、システム内の潜在的な問題を検知するために制御モジュールによって提供される測定された、または計算されたパラメータと比較してもよい。例えば、プロセスモジュール39によって計算されるようなバルブの中からの流量と、プロセス自体の中で測定されるようなバルブの中からの流量の大きな差異は、何らかのデバイス問題が存在することを示すアラームを生成する理由となる可能性がある。逆に、制御モジュール29は、制御モジュール29が知っている障害のあるセンサ、あるいは、既にアクティブではない、または制御モジュールが使用できない他の要素に関する状況で強化された制御を提供するためにシミュレーションによるパラメータを使用してもよい。このケースでは、制御モジュール29は、オペレータの関与を必要とせず、プロセスを停止する必要もなく、(障害があるものとして知られている、不良ステータスを有する可能性のある等の)測定値またはパラメータを、プロセスモジュールにより作成されるようなシミュレーションによる出力で自動的に置換できる。選択的に、制御モジュール29は、測定値またはパラメータがシミュレーションによる値で置換されていた時間の量を監視することができ、特定の時間量の後にシミュレーションによる値の使用を停止できる。例えば、制御モジュールは、特定の時間量の後に障害のある値またはパラメータの使用を開始できるであろう。また、シミュレーション制御データと実際の制御データの両方を同じディスプレイに表示することは、オペレータまたはユーザが、シミュレーションモードで有用、さらに優れた設計行動を実行するために有用等、プラント内の問題を検知する場合に役立つ可能性がある。
【0095】
図8は、制御モジュール200がいかにしてプロセスモジュール202(それにより該プロセスモジュール202と関連する任意のグラフィックディスプレイ)と通信可能に統合されてもよいのかのより詳細な図である。図8の制御モジュール200は、例えばモデル予測制御(MPC)機能ブロック等の、多重入力/多重出力制御ブロックであってもよい制御機能ブロック207にその出力が接続されている3つのAI機能ブロック204、205、および206を含む。制御ブロック207からの3つの制御出力は、例えば混合のためにミキサーに異なる流体を提供するプロセス内の例えばバルブを制御してもよい、3つのAO機能ブロック208、209および210の制御入力に送信される。
【0096】
プロセスモジュール202は、制御モジュール200によって制御されるミキサーとバルブを有するプロセスの部分と関連付けられている。特に、プロセスモジュール202は(プロセスモジュール202の左側で矢印によって示されている)ミキサー要素214の中への3つのストリームの流れをシミュレーションするバルブ(アクチュエータ要素)211、212、および213を有する。バルブ要素215は、プロセスモジュール202の右側の出力ストリームを定義するためにミキサー要素214の中から流体の流れをシミュレーションし、送信機要素217は、ミキサー要素214を出る流体の測定された組成を示し(またはシミュレーションし)てもよい。明確にするために、接続要素はプロセスモジュール202で単純な線として描かれていることに注意されたい。
【0097】
この場合、AI機能ブロック204から206に対する制御入力は成分センサ、流量センサまたは(プロセスモジュール202の中の)送信機217によって描かれているプロセスプラント内の他のセンサによって提供されてもよいが、AO機能ブロック208から210は、(プロセスモジュール202内の)バルブ211から213により描かれているプロセスプラントのバルブの動作を制御してもよい。
【0098】
分かるように、プロセスモジュール202と制御モジュール200の中の論理要素は、所望の方法でまたは有用な方法で、プロセスモジュール202から制御モジュール200に通信可能に相互接続されてよく、逆の場合も同じである。1つの例では、(点線218によって描かれている)通信接続は(ミキサー214で材料組成のシミュレーションによる測定値を表示する)プロセスモジュール202の送信機要素217の出力と、プロセス制御モジュール200の中のAIブロック216のシミュレーションによる入力SIM_INの間で構成されてもよい。このようにして、ミキサー214の流体の水位のシミュレーションによる測定値はAIブロック206に与えられ、AIブロック206は、例えば、そのブロックの制御入力(IN)での信号が不良ステータスを有する、あるいは何らかの理由から障害があると知られている場合に、このシミュレーションによる入力を使用してもよい。このようにして、AIブロック206は、実際の物理的な測定が有効ではない、または利用できない場合にAIブロック206と関連する測定の近似値を提供し、それにより制御モジュール200は障害のあるセンサが存在する場合に機能し、制御を提供し続けることができる。このような接続により、制御モジュール200も、(シミュレーションプロセスモジュール202によって提供されるような)有効なシミュレーションデータがオフラインのオペレータトレーニングの間に、あるいは制御モジュール200をテストするために使用される、シミュレーションモードで実行できるようになる場合がある。
【0099】
代わりに、または加えて、(点線219で描かれている)通信接続は、プロセス制御モジュール200の中のAOブロック208の出力と、プロセスプラントのAOブロック208によって制御されている実際のバルブをモデル化するバルブ要素211の入力の間で構成されてもよい。ここでは、バルブ要素211は、シミュレーションによるデータ(つまりバルブ要素211のSIMブロックにより計算された測定値とパラメータ)が正しいか否か、つまり実際の制御ルーチン200で使用されるデータと一致するか否かを判断するために、実際のバルブから取得される、あるいは実際のバルブに送信されるデータを使用してもよい。かなりの差異がある場合には、プロセスモジュール202は、潜在的な問題を示すアラームまたは警告を生成してもよく、あるいはプロセスモジュール202内でより優れたまたはより正確なシミュレーションを提供するために本物のデータを使用してもよい。例えば、バルブ要素211は、シミュレーションにおいて実際のバルブ位置を反映するためにバルブ要素211の位置についてSIMブロック内の実際の制御データを使用してもよい。言うまでもなく、プロセスモジュール202と制御モジュール200の中の要素の間の他の接続が、強化された制御および/またはシミュレーションを実行するためにこれらの2つのモジュールの間のいずれかの方向でデータフローを提供させられてもよい。またさらに、プロセスモジュール202または制御モジュール200からのデータのいずれかは、プロセスモジュール202と関連付けられるグラフィックディスプレイを介して自動的にオペレータが利用できるようにされてもよい。
【0100】
所望の場合、プロセスモジュールは、プロセス制御ネットワークまたはプロセスプラント内で冗長な機能を提供し、シミュレーションしてもよい。特に、プロセスモジュールは、プロセスプラントの中に配置される冗長なデバイス、冗長な制御ブロック等、(例えば、バックアップ冗長要素が引き継がなければならないとき等を含む)実際の冗長な機能の動作をシミュレーションし、実際の冗長な要素の動作を検知する、またはシミュレーションすることができてもよい。さらに、所望の場合、そのシミュレーション機能を備えたプロセスモジュールはプロセスプラントの中の冗長な一組の要素の内の1つとして使用されてもよい。このケースでは、プロセスモジュール(またはその任意の部分)は、一次(および実際の物理的な)デバイスの故障時、または一次(および実際の物理的な)デバイスと関連する検知された問題がある場合に、バックアップデータまたは冗長データ(信号、計算等)として動作してもよい。このケースでは、冗長な要素として働くプロセスモジュールは、冗長な機能を提供するために任意の公知の方法で(制御動作または検知動作を実行する)制御モジュールと通信可能に相互接続されてもよい。プロセスプラント内でのこのプロセスモジュールの冗長な要素としての使用は、プロセスモジュールが前述されたように1つ以上のハイファイシミュレーションパッケージに接続されている場合に特に有効である。
【0101】
本明細書に説明されているスマートプロセスオブジェクト、グラフィック表示要素およびプロセスモジュールの機能は、オペレータワークステーション20で動作してよく、プラント10の中のコントローラ、フィールドデバイス等にダウンロードされ、それらの中で構成される必要はなく、それがこの機能を実現、表示、変更等しやすくする。さらに、この情報のすべては通常、プロセスプラント10内の各コントローラとフィールドデバイスが使用できないのに対し、通常システムレベルでのデバイスに関する情報はすべて一般的にオペレータワークステーション20が、および特に実行エンジン48が使用できるため、この機能によりシステムレベルの決定をプロセスデバイス、コントローラ等の中においてよりさらに容易に下すことができるようになる。しかしながら、このようにすることが有利であるとき、プリミティブ等のプロセスモジュールと関連する論理のいくつかが、プロセスプラントの中の下方でデバイス、装置およびコントローラに埋め込まれてもよい。統合されたプロセス制御モジュールとグラフィックディスプレイを作成するためにスマートプロセスオブジェクトを使用することにより、実行エンジン48は、例えば、最小量のユーザ構成アクティビティで漏れを自動的に検知し、スマートアラームを生成し、プラント10の中の流量と質量平衡を計算し、追跡調査し、プラント10内の損失を追跡調査し、プラント10にさらに高いレベルの診断を提供し、エンジニアリング設計およびオペレータトレーニングの間にプラントの動作をシミュレーションすることができるようになる。
【0102】
図9は、実行エンジン48と、分散制御戦略を有するプロセスプラント内でそれによって使用されるプロセスモジュールとグラフィックディスプレイを統合する1つの考えられる方法を示している。図9に描かれているように、実行エンジン48による実行中にオペレータにディスプレイを提供するプロセスモジュールによって作成される、あるいはプロセスモジュールと関連付けられるディスプレイクラス定義220は、制御戦略文書の中で所望の方法でこれらのディスプレイクラス定義を使用し、編成してもよい制御構成データベースツールとエンジニアリングツール222に提供される。プロセスアルゴリズム224は、実行時の前にこれらのディスプレイクラス定義に接続されてよく、それからディスプレイクラス定義とそれに結び付けられたフローアルゴリズムのインスタンスが作成され、(1つ以上のワークステーションの中の1つ以上の実行エンジン48の形で実現されてもよい)グラフィックディスプレイ/プロセスモジュール実行環境226に提供されてもよい。グラフィックディスプレイ/プロセスモジュール実行時環境126は、実行中にコードを解析するために(つまり、ジャストインタイムのオブジェクトコード変換を実行するために)ダウンロードスクリプトパーサ228を使用し、ディスプレイクラスのために提供される、あるいはディスプレイクラスに結び付けられるフローアルゴリズムまたは他の規則ベースのプロシージャを実行するために規則ベースの実行エンジン230を使用する。このプロセス中、グラフィックディスプレイ/プロセスモジュール実行時環境226は、制御モジュール実行時環境232にデータまたは情報を提供するために、あるいは制御モジュール実行時環境232からデータまたは他の情報にアクセスするために、プロセスに関連するコントローラおよびフィールドデバイスで実行されてもよい制御モジュール実行時環境232と通信してもよい。言うまでもなく、グラフィックディスプレイ/プロセスモジュール実行時環境226は、図1のイーサネット(登録商標)バス24等の所望の、あるいは事前に設定された通信ネットワークを使用して、制御モジュール実行時環境232と通信してもよい。またさらに、本明細書に説明されているグラフィックディスプレイ、プロセスモジュール、および制御モジュールを標準プロセス制御システムまたはプロセスプラントに統合する他の方法も使用されてもよい。
【0103】
再び図2を参照すると、構成アプリケーション38は、プロセスモジュールを表示する、作成する、および/または編集するための1つ以上のアプリケーションを提供してもよい。一つの実施形態では、プロセスモジュールの初期定義が、プロセスモジュールのプロセスグラフィック設計に基づいて自動的に作成されてもよい。また、プロセスモジュールは、プロセスモジュールエディタを使用して作成、または修正されてもよい。プロセスブロックおよび/またはカスタムプロセスブロックの標準的なセットは、プロセスプラントの一部をシミュレーションするために使用されてもよいプロセスモジュールを作成するために使用されてもよい。プロセスモジュールは、例えばオペレータのトレーニングのためにオフラインシミュレーションで使用されてもよい。また、プロセスモジュールを用いて作成されたプロセスシミュレーションの部分は、プロセスシミュレーションの一部として計算されてもよい特性、将来の値、およびデータの性能を示すためにオンラインシステムで使用されてもよい。
【0104】
図10乃至図13は、例えば、プロセスモジュール39および/またはグラフィックディスプレイ35を作成する/使用する等、構成エンジニアのプロセスの間に図2の構成アプリケーション38によって作成されてもよい例示的な画面表示を示している。理解されるように、図10乃至図13の画面表示は、例えばプロセスプラント10の構成を描く組織系統図構造および/またはプロセスプラントを構成する、および/またはプロセスプラントの部分の動作をシミュレーションするために使用されてもよい要素を描く組織系統図構造を提供してもよい画面の左側にあるエクスプローラビューを含む。同様に、図10乃至図13の画面表示はその右側に1つ以上の情報ビューを含む。これらの情報ビューは、エクスプローラビューの中の要素の内の選択された要素についての追加の情報を提供する。
【0105】
スマートプロセスオブジェクトおよび/または非スマートプロセスオブジェクト等の多くの標準プロセスオブジェクトは、プロセスモジュールの作成を支援するために提供されてもよい。また、カスタムプロセスオブジェクトは、エンドユーザまたはエンドユーザンカテゴリ(例えば精製装置)のために作成されてもよい。同様に、エンドユーザはプロセスモジュールを作成するために使用されてもよいユーザ定義プロセスオブジェクト(特殊プロセスオブジェクト)を作成してもよい。標準プロセスオブジェクト、カスタムプロセスオブジェクト、および/または特殊プロセスオブジェクトは、プロセスモジュールを作成する際に使用するためにライブラリに記憶されてもよい。ユーザは使用可能なプロセスオブジェクトを表示するためにライブラリをブラウジングしてよく、該プロセスオブジェクトについての情報を表示するために、該プロセスオブジェクトを編集する等のためにプロセスオブジェクトを選択することができてもよい。図10は、エクスプローラ部分304と、ライブラリの中のプロセスオブジェクトにアクセスするために使用できる情報部分308を有する例示的なディスプレイ300の一部である。エクスプローラ部分304は、ライブラリフォルダ314を有するツリー構造312を含む。ライブラリフォルダ314は、例えば、プロセスモジュールの作成を支援するために提供される異なるカテゴリのプロセスオブジェクトに対応してもよい複数のサブフォルダ320を含むプロセスブロックテンプレートフォルダ316を含む。さらに、ライブラリフォルダ314は、それ自体、例えば構成アプリケーション38のエンドユーザにより設計されるプロセスオブジェクトを記憶するために複数のサブフォルダを含むことがあるカスタムプロセスブロックフォルダ324を含んでよい。
【0106】
ユーザが例えばエクスプローラ部分304でカテゴリを選択する場合、選択されたカテゴリのコンテンツは情報部分308に示されてもよい。同様に、ユーザが、例えばエクスプローラ部分304でプロセスブロックを選択する場合、選択したプロセスブロックに関する情報は情報部分308に示されてもよい。
【0107】
図11は、プロセスブロックテンプレートフォルダ316の中のアイテム326が、例えばマウス、タッチスクリーン、スタイラス、タッチパッド、キーボード等を介して選択された、例示的なディスプレイ300の一部である。情報部分308は、選択されたプロセスブロックアイテム326について、パラメータ328と1つ以上のシミュレーションアルゴリズム330を表示する。また、情報部分308は、プロセスブロックを表示するために以前作成された1つ以上の3−D動的ダイナモ334を表示してもよい。
【0108】
選択的に情報部分308でさらに多くの情報またはさらに少ない情報を示すことができるであろう。例えば、ディスプレイ300は、パラメータ328のデフォルト値等の追加情報が描かれてもよいより詳細なビューを可能にしてもよい。ユーザは、デフォルト値を選択してから、例えばキーボードを介して新しい値を入力することによりデフォルト値を変更できてもよい。また、ユーザは情報部分308でプロセスブロックまたはダイナモを選択する(例えば、上で「右クリックする」)ことにより該プロセスブロックに関連するプロセスブロックまたはダイナモを編集するためのアプリケーションを起動できてもよい。該選択に応えて、ウィンドウまたはディスプレイは、ユーザが、例えば該プロセスブロックおよび/またはダイナモを編集可能とするために表示されてもよい。
【0109】
ユーザが、例えば、プロセスモジュールを表示、編集等するためにすでに作成されているプロセスモジュールをブラウジングしたい場合がある。図12は、すでに作成されたプロセスモジュールをブラウジングするために使用されてもよいエクスプローラ部分354と情報部分358を有する例示的なディスプレイ350の一部である。エクスプローラ部分354は、プロセスプラント10の物理および/または論理領域に対応するフォルダを含んでよい階層構造362を含む。例えば、ツリー構造363はプロセスプラントの「AREA_A」に対応するフォルダ366を含む。フォルダ366はシミュレーションフォルダ370、制御フォルダ372、およびディスプレイフォルダ374を含む。例えば、シミュレーションフォルダ370がユーザによって選択されると、フォルダ370内で使用できるプロセスモジュール378が情報部分358に表示されてもよい。選択的に、フォルダ370内で使用可能なプロセスモジュール378が階層362で表示されてもよい。ユーザは例えば情報部分358でプロセスモジュールの選択(例えば、上で「右クリックする」)によってプロセスモジュールを編集するためのアプリケーションを起動できてもよい。
【0110】
図13は、プロセスプラント10内で特定のノード(例えば、ワークステーション、コントローラ等)によって実行されるプロセスモジュールを割り当てるために使用できる例示的なディスプレイ400の一部である。ディスプレイはエクスプローラ部分404と情報部分408を含む。エクスプローラ部分404は、プロセスプラント10内のワークステーションに対応するフォルダ416と418を含んでよいツリー構造412を含む。フォルダ418は、プロセスモジュールフォルダ420を含む。プロセスモジュールは、プロセスモジュールに対応するアイテムをフォルダ420、またはオプションでフォルダ418にドラッグすることによりフォルダ418に対応するノードに割り当てることができる。図12と図13を参照すると、一例として、アイテム378の1つまたは両方が、該1つまたは両方のアイテム378を、フォルダ418に対応するノードに割り当てるためにフォルダ418またはフォルダ420までドラッグできるであろう。
【0111】
図14は、プロセスモジュールを作成し、修正するためのエディタに対応する例示的なディスプレイ450である。ディスプレイ450は、作業空間部分454、プロセスブロックパレット部分458、パラメータ部分462およびツールバーを含む。ディスプレイ450は、新しいプロセスモジュールを作成する、および/または既存のプロセスモジュールを編集するために使用されてもよい。プロセスブロックパレット部分458は、複数のカテゴリのプロセスオブジェクトの内の1つを選択するために、プルダウンメニュー等のユーザインタフェース機構466を含んでよい。選択されたプロセスオブジェクトカテゴリに対応するプロセスオブジェクトテンプレートは部分470に描かれてもよい。プロセスオブジェクトカテゴリの例は、ストリームと接続に関連付けられたカテゴリ、アクチュエータと関連付けられたカテゴリ、標準プロセス装置と関連付けられたカテゴリ、カスタムプロセス装置と関連付けられたカテゴリ、ユーザ定義プロセス装置と関連付けられたカテゴリ等を含んでよい。ユーザは、例えば、部分470からプロセスオブジェクトテンプレートをドラッグし、それを作業空間部分454にドロップできるであろう。プロセスオブジェクトを表すブロックが作業空間部分454で(例えば、マウスクリックを介して)選択されると、選択されたプロセスオブジェクトに対応するパラメータはパラメータ部分462に示されてもよい。
【0112】
ストリーム要素は、プロセスモジュールによってシミュレーションされるプロセスの開始点と編集点を定義するために使用されてもよい。ガス、液体、または固体のストリームの処理は、例えば標準処理ブロック、カスタム処理ブロックおよび特殊処理ブロックの組み合わせによって実行されてよく、処理オブジェクト間の流れの調節は、例えば接続要素とアクチュエータ要素によって決定される。シミュレーションで使用される構成要素は、パレット部分458から作業空間部分454の中に適切なブロックと要素をドラッグすることにより定義されてもよい。処理オブジェクト間のプロセスフローは、流路内のブロックの入力と出力を接続するために、例えばマウスを使用することにより定義されてもよい。ストリームの特性は流路内の各接続により自動的に搬送されてもよい。各接続により搬送されてもよい特性の例は、質量流、圧力、温度、密度、または比熱の内の1つ以上を含む(または何も含まない)。また、接続ステータスは特性値とともに搬送されてもよい。選択的に、ユーザはストリームの組成を加えてもよい。組成がストリームに追加されると、この追加された情報は流路内の要素によってサポートされる。
【0113】
図15は、単純なタンクに対応するプロセスモジュール500の一例である。プロセスモジュール500は、例えば、図14のディスプレイ等のエディタのディスプレイを使用して作成可能となる。プロセスモジュール500は、ストリーム要素504、508および512を含む。ストリーム要素は一定のプロセス状態(例えば供給圧力)を提供するために構成、あるいはそれらは他のモジュールにおけるストリームに対する基準として働いてもよい(例えば、ストリーム要素は別のモジュールに情報を渡すために使用される)。ストリーム要素508は別のモジュールを参照し、参照されたモジュール/ストリームの表示514は、ストリーム要素508の下に自動的に表示される。同様に、ストリーム要素512は別のモジュールを参照し、参照されたモジュール/ストリームの表示516はストリーム要素508の下に自動的に表示される。
【0114】
ユーザは、タンク水位等の、要素の入力、出力または内部計算値の特定の特性またはパラメータを公開することを選んでよい。すると特性またはパラメータ名が、対応するブロックの中に表示され、値はプロセスモジュールの実行中に特性またはパラメータ名の脇の作業空間内に表示される。
【0115】
シミュレーションで使用されるプロセスオブジェクトは、関連する装置および/または制御モジュールの物理特性に対応するパラメータを有してもよい。このようにして、ストリームとプロセスオブジェクトがいったんプロセスモジュールで定義されると、これらの要素のパラメータはプロセス要件および制御システム要件に一致するように構成されてもよい。再び図14を参照すると、プロセスオブジェクトが作業空間部分454で選択されると、そのプロセスオブジェクトの構成可能なパラメータ(例えば、cv、高さ等)がパラメータ部分462に自動的に示されてもよい。パラメータ部分462に示されるパラメータの内の1つを選択する(例えばダブルクリックする)ことにより、関連するパラメータ値を修正できるように、ダイアログディスプレイが提供されてもよい。
【0116】
図16は、作業空間部分454に入れられるプロセスオブジェクトを表すプロセスブロック550を有する図14の例示的なディスプレイ450の説明図である。プロセスブロック550が選択されている。このようにして、プロセスブロック550に対応するパラメータがパラメータ部分に表示される。パラメータ554がパラメータ部分462で選択されている。このシナリオでは、パラメータ554はバルブ位置に関連する機能ブロック基準パラメータである。パラメータ554が選択された結果、パラメータ554を修正できるように例示的なディスプレイ560等のディスプレイが表示されてもよい。例えば、パラメータ554は、特定の制御またはプロセスモジュール内のパラメータを特定の出力プロセスオブジェクトに関連付けるために修正されてもよい。例えば、ディスプレイ560は、ユーザがプロセスオブジェクトおよび制御モジュールまたはプロセスモジュールを選択できるようにしてもよいボタン564を含む。
【0117】
図16Bは、パラメータ部分460に機能ブロック基準パラメータを追加するために例示的なディスプレイ450を使用することの説明図である。図16Aと同様に、プロセスブロック550が選択されており、したがってプロセスブロック550に対応するパラメータがパラメータ部分462に表示されている。パラメータ570がパラメータ部分462で選択されている。このシナリオでは、ユーザは、メニュー574を介して、パラメータ570と関連付けられる別のモジュールのプロセスオブジェクトを割り当てることを選んだ。パラメータ570が、別のモジュールの機能ブロックに参照可能とするために、例示的なディスプレイ582のようなディスプレイが表示されてもよい。例えば、ディスプレイ582は、ユーザがプロセスオブジェクトおよび制御モジュールまたはプロセスモジュールを選択できるようにしてもよいボタン586を含んでいる。それに応じて、機能ブロック基準パラメータ590がパラメータ部分460に追加される。
【0118】
制御システムの内部で測定される容器水位等のプロセスパラメータは、例えばディスプレイ560のようなディスプレイを使用して関連するプロセスオブジェクト内で参照できる。オフライントレーニングでは、この基準は、例えば入力機能ブロックのシミュレーションパラメータを更新するために使用されてもよい。オンラインシステムでは、この基準は測定された値にアクセスするため、および例えば、この測定値を使用してシミュレーションの誤差を補正するために使用されてもよい。また、オンラインシステムの測定が失敗すると、オペレータはシミュレーションによる値を使用することを選んでよい。
【0119】
測定値が1台の装置で標準である場合、その装置と関連するプロセスオブジェクトはその測定値に対応する基準パラメータを含んでよい。他の測定値が制御システムで入手できる場合には、これらの測定値の1つ以上がプロセスモジュールに追加されてもよい。例えば、ユーザはプロセスモジュールのプロセスブロックを右クリックできるであろう。ユーザは次に測定値を選択するため、および測定値が関連付けられる内部パラメータまたは出口ストリーム特性を選択するために使用できるであろう1つ以上のディスプレイを提供されてもよい。いったんこの参照が行われると、該測定値に対応する基準パラメータが、プロセスブロック選択時に該測定値に対応する基準パラメータがパラメータ部分462に自動的に表示されてもよい。
【0120】
図17は、特性、パラメータ、および/または測定の値が制御モジュールからプロセスモジュールの中に自動的に引き入れられてもよいことを示している。さらに、特性、パラメータ、および/または測定の値に対応するシミュレーションによる特性およびパラメータ値が制御モジュールに自動的に送信されてもよい。例えば、プロセスモジュール600は、タンクに対応するプロセスオブジェクト604と調整弁に対応するプロセスオブジェクト608を含んでよい。制御モジュール620は、PID制御機能ブロック628にタンクの水位測定値を提供する入力ブロック624を含んでもよい。PID制御機能ブロック628の出力は調整弁に対応する出力ブロック632に提供されてもよい。測定されたタンク水位は入力ブロック624から取得され、プロセスオブジェクト604に提供されてもよい。同様に、シミュレーションによるタンク水位はプロセスオブジェクト604から取得され、入力ブロック624に提供されてもよい。また、測定されたバルブ位置は出力ブロック632から取得され、プロセスオブジェクト608に提供されてもよい。同様に、シミュレーションによるバルブ位置はプロセスオブジェクト608から取得され、出力ブロック632に提供されてもよい。
【0121】
図14に関して前述されたように、プロセスモジュールを作成し、修正するためのエディタは、プロセスモジュールを作成するためにユーザによって使用できる種々のタイプのプロセスオブジェクトを提供してもよい。例えば、標準プロセスオブジェクトおよびカスタムプロセスオブジェクトが提供されてもよい。カスタムプロセスオブジェクトは、エンドユーザによって提供される要件のセットに応じてエンドユーザのために、またはエンドユーザによって設計されるプロセスオブジェクトを含んでよい。カスタムプロセスブロックは例えば複雑なプロセス装置をシミュレーションするために使用されてよく、装置の動作をシミュレーションするために(ステップ応答モデル、第1の原則モデル等の)1つ以上のモデルを使用してもよい。例えば、ステップ応答モデルは、反応、容器の中で完全とは言えない混合等をシミュレーションするために使用されてもよい。カスタムプロセスオブジェクトは、例えば装置のための出力ストリーム特性/パラメータおよび/または内部測定値と関連する内部特性/パラメータを生成するためにこのようなモデルを活用してもよい。1つ以上の入力ストリームの選択された特性がモデルに対する入力として提供されてもよい。カスタムプロセスオブジェクトは、例えば条件が理想的であるという仮定に基づいて他のパラメータ/特性を生成してもよい。
【0122】
図14を参照すると、カスタムオブジェクトのインスタンスは、部分458からブロックをドラッグし、例えば作業空間部分454に該ブロックをドロップすることによりプロセスモジュールに追加されてもよい。カスタムプロジェクトオブジェクトと関連する動的応答が、表示され、修正されてもよい。例えば、ユーザはカスタムオブジェクトを表すブロックの上で右クリックし、メニューから「特性」を選択できるであろう。ここで図18を参照すると、例示的なディスプレイ650等のディスプレイがそれに応じて表示されてもよい。ディスプレイ650は部分654のオブジェクトについて定義されるモデルを示す。部分658はモデルと関連する特性/パラメータが統合しているか、あるいは統合していないか否かを示す。
【0123】
図19を参照すると、モデルに関するさらに多くの情報が表示されてもよい。例えば、例示的なディスプレイ670は、階層ビューの中の異なるモデルを表示する部分674を含む。モデル678が選択され、異なる特性/パラメータと関連するステップ応答が部分682に表示される。ここで図20を参照すると、モデルと関連する特性/パラメータを選択することにより、その特性/パラメータに関するさらなる詳細が表示されてもよい。例示的なディスプレイ700では、パラメータ704は部分708で選択されている。関連するステップ応答は、情報部分712にさらに詳しく示されている。
【0124】
ディスプレイ700の一部716は、ユーザが応答を修正できるようにする。例えば、ユーザがボタン720を選択すると、図21の例示的なディスプレイ730等のディスプレイがユーザに表示されてもよい。ディスプレイ730によって、ユーザは利得、不動作時間、一次時間制約制、二次時間制約、リードタイム制約等のモデルのパラメータを修正できる。再び図20を参照すると、ユーザはステップ応答をグラフィックで設計するためにボタン740と744を活用できるであろう。
【0125】
ユーザは、初期の状態および定常状態までの時間等のモデルの他のパラメータを修正できてもよい。例えば、図22は、初期状態および/またはモデルの定常状態までの時間を修正するために使用されてもよい例示的なディスプレイ750である。ディスプレイ750はナビゲーション部分754と情報部分758とを含む。ユーザが初期状態インジケータ712を選択すると、初期状態および/または定常状態までの時間に関する情報が情報部分708に表示される。ユーザは情報部文708を介して多様な初期状態および/または定常状態までの時間を修正できる。例えば、ユーザはある特定の初期状態または定常状態までの時間に対応する値を選択してから、該値を修正する、または新しい値を入力できるであろう。
【0126】
前述されたようにモデルを作成する代わりに、モデルは別のソフトウェアツールを使用して作成することもできるであろう。それからモデルをインポートできる。例えば、有限インパルス応答(FIR)モデル等の作成されたモデルの表現はテキストファイルの定義されたフォーマットに記憶できるであろう。次に、モデルはテキストファイルを使用してインポートできる。定義されたフォーマットは、例えば、入力ストリーム名と出力ストリーム名、および内部パラメータの名前が、モデルが対応するプロセスオブジェクトのストリームとパラメータ定義に一致しなければならないことを指定できるであろう。
【0127】
プロセスモジュールエディタにより、ユーザは新しいプロセスオブジェクトを作成することもできる。このようなプロセスオブジェクトはプロセスプラントエンティティの動作をシミュレーションするために1つ以上のタイプのモデルを活用できる。例えば、ユーザはステップ応答モデルおよび第1の主要モデル等の1つ以上のタイプのモデルから選択できてもよい。単なる1つの例として、モデルはC、C++、C#、ビジュアルBASIC等のプログラミング言語を使用して作成されてもよい。
【0128】
再び図14を参照すると、ユーザは、例えばディスプレイ450の「ファイル」メニューから「新規」を選択することにより、あるいは「ファイル」メニューの「新規」選択に対応するツールバーのアイコンを選択することにより新しいプロセスオブジェクトを作成することを選んでよい。
【0129】
次に、図23の例示的なディスプレイ780のようなディスプレイがユーザに表示されてもよい。ディスプレイ780によってユーザは、プルダウンメニュー784等のユーザインタフェース機構を介して新しいプロセスモジュールを作成するのか、新しいプロセスオブジェクトを作成するのか等を選択できる。ユーザが新しいプロセスオブジェクトを作成することを選ぶ場合には、ディスプレイ780によりユーザは、ボタン786等のユーザインタフェース機構を介して既存のプロセスオブジェクトから起動するか否かを選択できる。また、ディスプレイ780によって、ユーザはプルダウンメニュー788等のユーザインタフェース機構を介して新しいプロセスオブジェクトによって活用されるモデルのタイプを選択できる。例示的なディスプレイ780では、ユーザはステップ応答モデルまたは第1の主要モデルから選択してもよい。第1の主要モデルは、C、C++、C#、ビジュアルBASIC等のプログラミング言語を使用して指定されてもよい。
【0130】
ステップ応答モデルが選択される場合、図24の例示的なディスプレイ800のようなディスプレイがユーザに表示されてもよい。ディスプレイ800はナビゲーション部分802と情報部分804を含む。ナビゲーション部分802は、定義できるプロセスブロックの異なる態様に対応する複数のインジケータを含んでもよい。例えば、ナビゲーション部分802は、定義できるプロセスブロックの異なる態様に対応する複数のインジケータを含んでもよい。例えば、ナビゲーション部分802は、ストリームとパラメータのインジケータ806、モデルセットアップインジケータ808、およびモデルインジケータ810を含んでもよい。ユーザがストリームおよびパラメータインジケータ806を選択すると、情報部分は、ユーザが入力ストリーム、出力ストリーム、パラメータ等を定義できるユーザインタフェース機構812を含んでもよい。例えば、入力ストリームと出力ストリームの場合、ユーザは、ストリーム名、ストリームのタイプ(例えば、液体、固体、または気体)、位置、組成等を定義し得る。
【0131】
ここで図25を参照すると、ユーザがタブ814を選択する場合、ユーザが、ユーザにとって可視とならなければならないプロセスオブジェクトのパラメータを追加または修正可能とするために情報部分804が変更されてもよい。ユーザは、例えばパラメータの名前、パラメータの単位、アクセス(読み取り専用、読み書き等)、パラメータの低い限度および/または高い限度、位置等の内の1つ以上を定義できてもよい(または何も定義できなくてもよい)。
【0132】
ユーザは、入力ストリームと出力ストリームの属性およびステップ応答モデルによって活用されるパラメータを指定し得る。図26を参照すると、ユーザがモデルセットアップインジケータ808を選択する場合、情報部分は、ユーザが入力ストリームと出力ストリームの属性およびステップ応答モデルによって活用されるパラメータを指定できるように修正されてもよい。例えば、ユーザが「追加」820ボタンを選択すると、ユーザがパラメータを追加し、パラメータが統合された応答を有さなければならないか否かを指定できるようにディスプレイ824が表示される。
【0133】
さらに、ユーザはステップ応答モデルを定義してもよい。例えば、ユーザがディスプレイ部分802の中でモデルインジケータ810を選択する(例えば「右クリックする」)と、「新規」選択を含むメニューが表示されてもよい。ここで図27を参照すると、ユーザがメニューから「新規」を選択すると、デフォルト名の付いたモデルインジケータ830がディスプレイ部分802の中のモデルインジケータ810の下で追加されてもよい。さらに、モデルに対応するインジケータ832、834、および836がディスプレイ部分802でも追加されてもよい。さらに、情報部分804は、ユーザが例えばテキスト記述および定常状態までの時間パラメータ等のモデルに関する情報を追加できるように修正されてもよい。モデルと初期状態は、例えば図20から図22に関して前述された方法と同様の方法で指定されてもよい。
【0134】
ここで図23と図28を参照すると、ユーザが例えばディスプレイ780を介して新しいプロセスオブジェクトにより活用される第1の主要モデルを選択すると、プロセスオブジェクトエディタは例示的なディスプレイ850等のディスプレイを活用してユーザに提供されてもよい。ディスプレイ850は、入力ストリームと出力ストリームの表示を表示するための部分854と、パラメータの表示を表示するための部分856を含んでよい。いくつかのパラメータがすべてのプロセスオブジェクトにとって標準であってよく、したがって部分856に最初に示されてもよい。ディスプレイ850は、シミュレーションのためのアルゴリズムを指定するための部分858も含んでよい。該部分858は、(例えば、初期、実行、後、等の)異なる動作モードを選択するためのタブ860、862および864を含んでよい。ユーザは、例えば、部分866にC、C++、C#等のプログラミング言語でアルゴリズムを入力してもよい。
【0135】
さらにユーザはプロセスオブジェクトを作成する際にストリームおよび/またはパラメータを追加し得る。例えば、部分854で右クリックすることにより、ユーザは「新規」選択を有するメニューを提供されてもよい。ユーザが「新規」選択を選択すると、図29の例示的なディスプレイ870等のディスプレイはユーザに表示されてもよい。ディスプレイ870を使用すると、ユーザは例えば、名前、接続使用(例えばINまたはOUT)、位置、ストリームタイプ(例えば、液体、固体、または気体)、および/または存在する場合は関連組成を定義できてもよい。同様に、ユーザはストリームを右クリックしてから、右クリックに応えて表示されるメニューから「修正」要素を選ぶことにより既存のストリームを修正できるであろう。ディスプレイ870に類似したディスプレイが、ストリームを修正するために使用できるであろう。
【0136】
別の例として再び図28を参照すると、部分856で右クリックすることにより、ユーザは「新規」選択を有するメニューを提供されてもよい。ユーザが「新規」選択を選択すると、図30の例示的なディスプレイ890等のディスプレイがユーザに選択されてもよい。ディスプレイ890を使用すると、ユーザは名前、パラメータタイプ(例えば、浮動小数点、ブール(演算子)、離散、機能ブロック基準、文字列、指定セット等)単位、アクセス(例えば、読み取り専用、読み書き等)、位置、低い限度値と高い限度値、デフォルト値、ユーザにとってパラメータが可視でなければならないか否か等を定義できてもよい。同様に、ユーザはパラメータを右クリックしてから、右クリックに応えて表示されるメニューから「修正」要素を選ぶことができるであろう。ディスプレイ890に類似したディスプレイはパラメータを修正するために使用できるであろう。
【0137】
指定されたパラメータタイプに応じてディスプレイ890等のディスプレイに異なるフィールドが表示できるであろう。例えば、パラメータタイプが機能ブロック基準として選択される場合、参照されてもよい(例えば、入力、出力、AI、DI、PCI、AO、DO、DV等の)指定ブロック基準の名前とブロック(複数の場合がある)のタイプが表示されてもよい。
【0138】
当業者が認識するように、プロセスモジュールはプロセスをシミュレーションする上で役立つためのモデルの複数のタイプを活用できる。例えば、プロセスモジュールの中の別のプロセスオブジェクトが第1の主要モデルを活用してもよいが、プロセスモジュールの中の1つのプロセスオブジェクトはステップ応答モデルを活用してもよい。さらに、ユーザはプロセスオブジェクトまたはプロセスモジュールと関連してあらゆるモデルを活用しないことを選んでよい。別のインプリメンテーションでは、少なくとも1つのプロセスオブジェクトが複数の異なるタイプのモデルを活用できてもよい。例えば、別のパラメータが第1の主要モデルを活用してもよいのに対し、プロセスオブジェクトの1つのパラメータはステップ応答モデルを活用してもよい。
【0139】
ストリーム要素は、モジュールによって実現されるシミュレーションの開始点と終了点を定義するために使用されてもよい。使用され得るストリーム要素のタイプは、ユーザ定義特性値がシミュレーションで使用され得るストリーム要素、上流ブロックで決定される特性がストリーム特性値として反映されるストリーム要素、このストリームに構成されるパラメータが外部出力ストリームの特性値を読み取るために使用され、ストリーム特性値として使用されるストリーム要素、上流ブロックによってストリーム要素に渡される特性値が構成されたパラメータを使用して外部入力ストリームに書き込まれるストリーム要素等を含む。アクセスされ、構成され得るストリームパラメータはストリームタイプに応じて変化してもよい。
【0140】
ユーザ定義特性値がシミュレーションで使用されるストリーム要素は、例えば、プロセスシミュレーションで開始点を定義するために使用されてもよい。入力ストリームがプロセスモジュールに追加されると、それはモジュールのために選択されたデフォルト接続タイプをデフォルトによって取られる。ディスプレイの作業空間部分でストリームをクリックすることにより、出力特性値とストリームと関連する構成可能パラメータが作業空間部分とは個別のディスプレイの一部に示される。
【0141】
前述されたように、ユーザは、グラフィックディスプレイを作成し、次にそのディスプレイから対応するプロセスモジュールを自動的に生成し得るし、および/または逆も同様である。図31は、対応するプロセスグラフィックからプロセスモジュールを、および/または逆もまた同様に自動的に生成するために使用されてもよい例示的なシステム900のブロック図である。システム900は、プロセスグラフィックスとプロセスモジュールの編集を容易にするための編集スタジオ904と、編集されているプロセスグラフィックスとプロセスモジュールを記憶するためのクライアントモデル908と、およびデータベース912とを含む。システム900の少なくともいくらかが例えばソフトウェアを介して実現されてもよい。
【0142】
編集スタジオ904とクライアントモデル908は、ワークステーション、サーバ等の1つ以上のコンピューティングシステムによって実現できる。図1を参照すると、編集スタジオ904および/またはクライアントモデル908は、例えば操作ワークステーション20および/または操作ワークステーション22によって少なくとも部分的に実現できる。例えば、編集スタジオ904および/またはクライアントモデル908は、操作ワークステーション20によってのみ、あるいはワークステーション22によってのみ実現できる。別のインプリメンテーションでは、編集スタジオ904および/またはクライアントモデル908は、ワークステーション20がクライアントとして動作し、他のコンピューティングシステムがクライアントサーバ装置でサーバとして動作する別のコンピューティングシステムと連動して操作ワークステーション20によって実現できる。構成データベース28は、例えばデータベース912を含むことができる。
【0143】
編集スタジオ904は、プロセスグラフィックスの編集を容易にするためにプロセスグラフィックスエディタ916を、および編集プロセスモジュールを容易にするためにプロセスモジュールエディタ920を含んでもよい。プロセスグラフィックスエディタ916は、要素をどのように描画する必要があるのか(例えば、線の重さ、色、陰影等)に関する指示のような描画情報924と接続されてもよい。プロセスグラフィックスエディタ916は、例えば図3のディスプレイ64等のユーザインタフェースディスプレイを生成し得る。プロセスモジュールエディタ920は、クライアントモデル908と接続されてもよい。プロセスグラフィックスエディタ916は、例えば図14のディスプレイ450等のユーザインタフェースディスプレイを生成し得る。
【0144】
編集スタジオ904は、プロセスグラフィックスエディタ916およびプロセスモジュールエディタ920で講じられる編集処置を調整するための監視プログラムモジュール932も含んでよい。例えば、プロセスグラフィックスエディタ916は、プロセスグラフィックスを編集するまたは作成する際にユーザによって講じられる編集処置を監視プログラムモジュール932に通知してもよい。監視プログラムモジュール932は、次にプロセスグラフィックスと関連するプロセスモジュールに関して対応する処置を講じるためにプロセスモジュールエディタ920に指令を発する。別の例として、プロセスモジュールエディタ920は、プロセスモジュールを編集する、または作成する際にユーザによって講じられる編集処置を監視プログラムモジュール932に通知してもよい。監視プログラムモジュール932は、次に、プロセスモジュールと関連するプロセスグラフィックスに関して対応する処置を講じるためにプロセスグラフィックスエディタ916に指令を発する。このようにして、システム900は、プロセスグラフィックスの作成または編集に基づいてプロセスモジュールの自動生成または編集を容易にしてもよい。
【0145】
いくつかの例示的なシナリオが、システム900の動作を描くために説明されるであろう。1つのシナリオでは、ユーザはプロセスグラフィックスエディタ916を使用してアクチュエータに対応するグラフィックスブロックをプロセスグラフィックスに追加する。プロセスグラフィックスエディタ916は、次に、アクチュエータブロックがプロセスグラフィックスに追加された旨を監視プログラムモジュール932に通知してもよい。監視プログラムモジュール932はプロセスモジュールエディタ920に、プロセスグラフィックスに対応するプロセスモジュールにアクチュエータに対応するプロセスブロックを追加するように指令を発する。同様なシナリオでは、ユーザはプロセスモジュールエディタ920を使用してポンプに対応するプロセスオブジェクトをプロセスモジュールに追加する。プロセスモジュールエディタ920は、ポンプオブジェクトがプロセスモジュールに追加された旨を監視プログラムモジュール932に通知してもよい。監視プログラムモジュール932は、次に、プロセスグラフィックスエディタ916に、ポンプに対応するグラフィックスブロックをプロセスモジュールに対応するプロセスグラフィックスに追加するように指令を発する。
【0146】
別のシナリオでは、ユーザはプロセスグラフィックスエディタ916を使用してプロセスグラフィックスからグラフィックスブロックを削除する。プロセスグラフィックスエディタ916は、次に、グラフィックスブロックがプロセスグラフィックから削除された旨を監視プログラムモジュール932に通知する。監視プログラムモジュール932は、次に、プロセスモジュールエディタ920に、プロセスグラフィックスに対応するプロセスモジュールからプロセスグラフィックスに対応するプロセスブロックを削除するように指令を発する。同様のシナリオでは、ユーザはプロセスモジュールエディタ920を使用してプロセスモジュールからプロセスオブジェクトを削除する。プロセスモジュールエディタ920は、次に、プロセスグラフィックスがプロセスモジュールから削除された旨を監視プログラムモジュール932に通知する。監視プログラムモジュール932は、次に、プロセスグラフィックスエディタ916に、プロセスモジュールに対応するプロセスグラフィックスからポンプに対応するグラフィックスブロックを削除するように指令を発する。
【0147】
クライアントモデル908は、編集スタジオ904によって作成され、プロセスグラフィックス936とグラフィックスライブラリ940を含んでもよい。プロセスグラフィックスエディタ916は、クライアントモデルプロセスグラフィックス936に作用し、グラフィックスライブラリ940の中に設けられるグラフィックスブロックを活用してもよい。クライアントモデルプロセスグラフィックス936は、当初、データベース912の中のデータベースプロセスグラフィックス944に基づいて作成されてもよい。以後、クライアントモデル908が、クライアントモデルプロセスグラフィックス936で加えられた変更を反映するために、データベース912の中のデータベースプロセスグラフィックス944を更新する。このような更新は、例えば、クライアントモデルプロセスグラフィックス936の変更に応えて、ユーザ要求に応えて、周期的に、ユーザがプロセスグラフィックスまたはプロセスモジュールの編集または作成の完了を示すとき等に発生してもよい。
【0148】
クライアントモデル908は、クライアントモデルプロセスモジュール948とプロセスブロックライブラリ952も含んでよい。プロセスモジュールエディタ920は、クライアントモデルプロセスモジュール948に作用し、プロセスブロックライブラリ952に設けられるプロセスブロックを活用してもよい。クライアントモデルプロセスモジュール948は、データベース912の中のプロセスモジュール複製956またはデータベースプロセスモジュール960に基づいて初期に作成されてもよい。例えば、プロセスモジュール複製956は、初期にデータベースプロセスモジュール960に基づいて作成可能となる。以後、クライアントモデル908は、クライアントモデルプロセスモジュール948で加えられた変更を反映するためにデータベース912の中のプロセスモジュール複製956を更新されてもよい。このような更新は、例えば、クライアントモデルプロセスモジュール948の変更に応えて、ユーザ要求に応えて、周期的に、ユーザがプロセスグラフィックスまたはプロセスモジュールの編集の完了または作成の完了を示すとき等には作成してもよい。例えば、ユーザがプロセスグラフィックスまたはプロセスモジュールの編集の完了または作成の完了を示すと、プロセスモジュール複製956がデータベースプロセスモジュール960を更新するために使用されてもよい。
【0149】
動作中、ユーザは、例えばプロセスグラフィックスを編集する、または作成するためにプロセスグラフィックスエディタ916を活用してもよい。ユーザがプロセスグラフィックスに加える変更は、クライアントモデルプロセスグラフィックス936として記憶されてもよい。また、クライアントモデルプロセスグラフィックス936に対する変更は、次に前述されたようにデータベースプロセスグラフィックス944に伝搬される。さらに、ユーザがプロセスグラフィックスに加える変更は、プロセスグラフィックスに対応するプロセスモジュールで反映される。すなわち、プロセスグラフィックスエディタ916は、プロセスグラフィックスに対する変更の表示を監視プログラムモジュール932に送信される。次に、監視プログラムモジュール932は対応するモジュールに対応した変更を加えるためにプロセスモジュールエディタ920に指令を送信する。プロセスモジュールに対する変更はクライアントモデルプロセスモジュール948として記憶される。また、クライアントモデルプロセスモジュール948に対する変更は、前述されたように、プロセスモジュール複製956とデータベースプロセスグラフィックス944に伝搬されてもよい。
【0150】
同様に、ユーザは、例えばプロセスモジュールを編集するまたは作成するためにプロセスモジュールエディタ920を活用してもよい。ユーザがプロセスモジュールに加える変更は、クライアントモデルプロセスモジュール948として記憶されてもよい。また、クライアントモデルプロセスモジュール948に対する変更は、次に、前述されたように、プロセスモジュール複製956およびデータベースプロセスグラフィックス944に伝搬される。さらに、ユーザがプロセスモジュールに加える変更は、プロセスモジュールに対応するプロセスグラフィックスに反映される。すなわち、プロセスモジュールエディタ920は、プロセスモジュールに対する変更の表示を監視プログラムモジュール932に送信される。次に、監視プログラムモジュール932は、対応するグラフィックスに対する対応する変更を加えるためにプロセスグラフィックスエディタ916に指令を送信する。プロセスグラフィックスに対する変更は、クライアントモデルプロセスグラフィックス936として記憶される。また、クライアントモデルプロセスグラフィックス936に対する変更は、次に前述されたようにデータベースプロセスグラフィックス944に伝搬される。
【0151】
監視プログラムモジュール932に関して、それは概してプロセスグラフィックスエディタ916からプロセスグラフィックスに対する変更の表示を受信する。次に、監視プログラムモジュール932は、プロセスモジュールに対するどの変更が、プロセスグラフィックスに対するこれらの変更に相当するのかを決定する。次に、監視プログラムモジュール932は、プロセスモジュールエディタ920に指令を発する。プロセスグラフィックスに対するいくつかの変更の場合、監視プログラムモジュール932は、対応するプロセスモジュールに対応する変更がないと判断する。例えば、プロセスグラフィックスのグラフィックス要素の色の変更はプロセスモジュールにおける対応する変更を有さない場合がある。
【0152】
監視プログラムモジュール932は、プロセスグラフィックスに対する変更の表示を受信すると、プロセスモジュールに対するどの変更が、プロセスグラフィックスに対する変更に相当するのかを判断する。また、監視プログラムモジュール932は、プロセスグラフィックスに対する変更に相当するプロセスモジュールに対する変更を、周期的に、プロセスグラフィックスに対する変更の特定数の表示が受信されたとき、ユーザが、それが変更をプロセスモジュールに伝搬させることを希望することを示す場合に、ユーザがプロセスグラフィックスの編集または作成が完了したことを示すとき等に決定する。同様に、監視プログラムモジュール932は、それがプロセスグラフィックスに対する変更の表示を受け取った直後に、あるいは監視プログラムモジュール932が指令を決定した直後に、プロセスモジュールエディタ920に指令を発する。また、監視プログラムモジュール932は、プロセスモジュールエディタ920に、周期的に、プロセスグラフィックスに対する変更の特定数の表示が受け取られたとき、特定数の指令が決定されたとき、ユーザが、それが変更をプロセスモジュールに伝搬させることを希望することを示すとき、ユーザがプロセスグラフィックスの編集または作成が完了したことを示すとき等に指令を発する。
【0153】
同様に、監視プログラムモジュール932は、概してプロセスモジュールエディタ920からプロセスモジュールに対する変更の表示を受け取る。次に、監視プログラムモジュール932は、プロセスグラフィックスに対するどの変更がプロセスモジュールに対するこれらの変更に相当するのかを決定する。次に、監視者プログラムモジュール932は、プロセスグラフィックスエディタ916に指令を発する。プロセスモジュールに対するいくつかの変更の場合、監督者モジュール932は対応するプロセスグラフィックスに対する対応する変更がないと判断する。
【0154】
いくつかのケースでは、システム900は、プロセスグラフィックスに基づいてプロセスモジュールの構成を自動的に完了できない場合がある。このようなケースでは、ユーザはプロセスモジュールの構成を完了するためにプロセスモジュールエディタ920を活用できる。例えば、図7Aと図7Bに関して前述されたように、制御モジュールはプロセスモジュールおよび/またはプロセスグラフィックスと統合されてもよい。システム900は、プロセスグラフィックスに基づいて制御モジュールのプロセスモジュールと統合を自動的に決定できない場合がある。したがって、ユーザは構成を完了する場合に役立てるためにプロセスモジュールエディタ920または何らかの他のツールを活用できるであろう。
【0155】
図32は、プロセスモジュールを構成する場合に役立てるためにしようされてもよい例示的なディスプレイ1000である。例示的なディスプレイ1000は、例えば、図1の構成アプリケーション38によって生成されてもよい。図32に示されるように、プロセスモジュールを描くプロセスモジュール部分1004は、プロセスモジュールと関連する制御モジュールを描く制御モジュール部分1008に近接して表示できるであろう。プロセスモジュール部分1004はバルブブロック1012、タンクブロック1014、ポンプブロック1016、およびバルブブロック1018を含む。バルブブロック1012の出力はタンクブロック1014の入力に接続され、ポンプブロック1016の入力はタンクブロック1014の出力に接続される。ポンプブロック1016の出力はバルブブロック1018の入力に接続される。バルブブロック1012の入力とバルブブロック1018の出力はストリーム要素(ラベルは付けられていない)に接続される。バルブブロック1012、タンクブロック1014、ポンプブロック1016、およびバルブブロック1018は、配管要素(ラベルは付けられていない)を介して直列で接続される。
【0156】
制御モジュール部分1008は、プロセスモジュール部分1004のブロックと関連する物理要素の内の少なくともいくつかを制御する制御モジュールに対応する。制御モジュール部分1008は、プロセスモジュール部分1004に描かれている要素の中で、あるいは要素と関連する制御を提供する相互接続されている機能ブロックのセットを含む。制御モジュールは、第1の制御ループ1024と第2の制御ループ1028を含む。第1の制御ループ1024はタンク1014の中への流体の流れに付いての流体入力情報を受信することを目的とするAI機能ブロック1032、PID制御を実行することを目的とするPID制御機能ブロック1034、およびバンク1014の中への材料の所望の流れを達成するためにバルブ1012を操作することを目的とするAO機能ブロック1036を含む。同様に、制御ループは、タンク1014内で水位センサによって測定されるようなタンク水位情報を提供することを目的とするAI機能ブロック1040、PID制御ブロック1042、およびバルブ1018を操作し、タンク1014内の流体の水位の制御を達成するためにPID制御ブロックから制御信号を受信するAO機能ブロック1044を含む。部分1008に描かれている制御モジュールも、例えば、タンク1014に関して制御アクティビティを実行するために、そのように所望の場合に、制御ループ1024と1028によって使用されてもよい、ポンプ1016のオン/オフ状態または動作を示すことを目的とするDI機能ブロック1050を含む。
【0157】
ディスプレイ1004内に描かれているプロセスモジュールとディスプレイ1008に描かれている制御モジュールを統合するために、ユーザはプロセス変調部分1004の要素と制御モジュール部分1008の関連要素をグラフィックに選択することによりディスプレイ1000を活用してもよい。例えば、ユーザはマウス、スタイラス、タッチスクリーン等を用いて、例えば、ユーザがプロセスモジュール部分1004の中の要素にリンクすることを希望する制御モジュール部分1008の中の要素を選択できるであろう。制御モジュール部分1008内の要素を選択した後に、ユーザは、次に、例えば、制御モジュール部分1008内で選択された要素と関連付けられなければならないプロセスモジュール部分1004内の要素を「右クリックする」、「ダブルクリックする」等によって選択できるであろう。要素が、制御モジュール要素が関連付けられるあろう複数のパラメータを有する場合、ユーザはポップアップウィンドウメニュー、チェックボックス等を使用して、パラメータの内の1つを選択するようにプロンプトを出されるであろう。例えば、ユーザはAOブロック1036を最初に選択できるであろう。次に、ユーザはバルブ1012でダブルクリックできるであろう。このようにして、ユーザはAO機能ブロックが、タンク1014内への材料の所望の流れに影響を及ぼすためにバルブ1012を操作することを指定できる。
【0158】
同様に、ユーザは、制御モジュール部分1008内のAI機能ブロック1032をグラフィックで選択し、次にプロセスモジュール部分1004のタンクブロック1014を選択できる。タンクブロック1014はそれと関連付けられる複数のパラメータ(例えば、タンクの中への流れ、タンクレベル等)を有することがあるため、ユーザはタンクブロック1014を選択することに応えてタンクパラメータの内の1つを選ぶようにプロンプトを出される。例えば、ユーザは、ポップアップウィンドウ、メニュー、チェックボックス等を介して入力フローパラメータまたはタンクレベルパラメータの間で選ぶようにプロンプトを出される。するとユーザは入力フローパラメータを選択できる。
【0159】
前述された例では、ユーザは最初に制御モジュール部分の要素を選んでから、プロセスモジュール部分の関連要素を選ぶが、ユーザは最初にプロセスモジュール部分の要素を選んでから、制御モジュール部分の関連要素を選ぶことができる。
【0160】
別の例としては、ユーザは、制御モジュール部分1008に描かれている制御モジュール、およびプロセスモジュール部分1004に描かれているプロセスモジュールのビューの提示を受け、生後モジュールとプロセスモジュールの要素は描かれているが、それらの相互接続は描かれていない。例えば、プロセスモジュールのビューは、バルブ1012、タンク1014、ポンプ1016、およびバルブ1018がプロセスモジュールの要素であるとして描かれている階層ビューとなるであろう。同様に、制御モジュール1008のビューは、制御ループ1024、制御ループ1028、およびDI機能ブロックが制御モジュールの要素であるとして描かれている階層ビューであろう。AI機能ブロック1036、PID機能ブロック1034、およびAO機能ブロック1036は、制御ループ1024の要素であるとして描かれてよく、AI機能ブロック1040、PID機能ブロック1042、およびAO機能ブロック1044は制御ループ1028の要素であるとして描かれてもよい。ユーザは、次に、前述された方法に類似した方法で、プロセスモジュールの階層ビューの要素、および制御モジュールの階層ビューの中の関連要素をグラフィックに選択できる。
【0161】
実現時に、本明細書に説明されているソフトウェアのいずれかは磁気ディスク、レーザディスク、または他の記憶媒体上でのように任意のコンピュータ読取可能メモリ内に、コンピュータまたはプロセッサ等のRAMまたはROM内に記憶されてもよい。同様に、このソフトウェアは、例えばコンピュータ読取可能ディスクまたは他の可搬型のコンピュータ記憶機構上で、あるいは電話回線、インターネット、ワールドワイドウェブ、任意の他のローカルエリアネットワークまたは広域ネットワーク等の上を含む、(その配信が可搬型の記憶媒体を介してこのようなソフトウェアを提供することと同じである、もしくは取替え可能であると見なされる)任意の公知のまたは所望の配信方法を使用してユーザ、プロセスプラントまたはオペレータワークステーションに送達されてもよい。さらに、このソフトウェアは、変調または暗号化を行わずに直接的に提供、あるいは通信チャネル上で送信される前に、任意の適切な変調搬送波および/または暗号化技法を使用して変調される、および/または暗号化されてもよい。
【0162】
本発明は、例示的となることだけを目的とし、本発明の制限的となることを目的としない特定な例に関して説明されてきたが、変更、追加または削除が本発明の精神または範囲から逸脱することなく開示されている実施形態に加えられてもよいことが当業者に明らかとなる。
【特許請求の範囲】
【請求項1】
プロセスプラントの構成を容易にするためのユーザインタフェース方法であって、
少なくとも第1の部分、第2の部分および第3の部分にディスプレイを分割することと、
前記プロセスプラントの少なくとも1つの部分のためのシミュレーションアルゴリズムを作成するために前記第1の部分に、前記シミュレーションアルゴリズムの少なくとも一部が作業空間内のプロセスオブジェクト間の接続の描写により定義される作業空間を表示することと、
前記作業空間に追加できるプロセスオブジェクトのライブラリであって、前記ライブラリ内の前記プロセスオブジェクトの内の少なくとも1つが前記プロセスオブジェクトに対応する前記プロセスプラント内に備えられた装置である物理エンティティの少なくとも1つの関連するグラフィック表現を有するライブラリを前記第2の部分に表示することであって、前記物理エンティティの関連するグラフィック表現を有する前記プロセスオブジェクトは、前記物理エンティティの動きに基づくシミュレーションの機能を含む、当該表示することと、
前記作業空間内のプロセスオブジェクトがユーザによって選択される場合に、前記選択されたプロセスオブジェクトのパラメータの表示を前記第3の部分に表示することと、
を含み、
前記ユーザに前記作業空間内のプロセスオブジェクトのためのモデルを選択するようにプロンプトを出し、前記モデルが複数のモデルから選択され、前記モデルが前記プロセスオブジェクトに対応する前記プロセスプラントの物理エンティティの動作をシミュレーションし、
前記作業空間内の前記プロセスオブジェクトが、前記プロセスオブジェクトの第1のパラメータと関連するステップ応答モデルと、前記プロセスオブジェクトの第2のパラメータと関連する第1の主要モデルとを有し、
前記ユーザに前記モデルを選択するようにプロンプトを出すことが、前記ユーザに少なくとも前記ステップ応答モデルと前記第1の主要モデルから前記モデルを選択するようにプロンプトを出すことを含む、前記方法。
【請求項2】
前記1つのプロセスオブジェクトがストリームオブジェクト、接続オブジェクト、アクチュエータオブジェクト、標準プロセスオブジェクト、カスタムプロセスオブジェクト、またはユーザ定義プロセスオブジェクトの内の少なくとも1つを含む、請求項1に記載の方法。
【請求項3】
前記パラメータの表示の内の1つが前記ユーザによって選択される場合に、前記ユーザが前記1つの表示に対応するパラメータを修正可能とするためにディスプレイを提供することをさらに含む、請求項1に記載の方法。
【請求項4】
前記1つのプロセスオブジェクトに対応する新しいパラメータを追加するためのディスプレイを提供することと、
前記新しいパラメータの表示を前記第3の部分に表示することと、
をさらに含む請求項1に記載の方法。
【請求項5】
プロセスグラフィックスエディタを使用して作成されるプロセスグラフィックスに基づいて作業空間内のプロセスオブジェクト間の接続の描写の内の少なくともいくつかを自動的に生成することをさらに備え、前記プロセスグラフィックスが前記プロセスプラントの少なくとも1つの部分を描写する、請求項1に記載の方法。
【請求項6】
パラメータの前記表示の内の1つが前記ユーザにより選択される場合、前記ユーザが前記プロセスプラント内でプロセス制御アクティビティを実現するために1台以上のプロセスコントローラを実行するように適応される制御モジュールに、前記1つの表示に対応するパラメータをリンク可能とするためにディスプレイを提供することとをさらに含む、請求項1に記載の方法。
【請求項7】
パラメータの前記表示の内の1つが前記ユーザによって選択される場合、前記ユーザが、前記プロセスプラント内でプロセス制御アクティビティを実現するために1台以上のプロセスコントローラを実行するように適応される制御モジュールに、前記1つの表示に対応するパラメータをリンク可能とするためにディスプレイを提供することとをさらに含む、請求項1に記載の方法。
【請求項8】
プロセスプラントの構成を容易にするためのシステムであって、
プロセスプラント内に備えられた装置である物理エンティティのグラフィック表現の作成または修正を容易にするためのプロセスグラフィックスエディタであって、前記グラフィック表現がディスプレイ装置に表示されるように適応されるプロセスグラフィックスエディタと、
プロセスモジュールの作成または修正を容易にするためのプロセスモジュールエディタであって、前記プロセスモジュールが前記プロセスプラント内の1つ以上の対応する物理エンティティを表す1つ以上の相互接続されるプロセスオブジェクトを含み、前記プロセスオブジェクトの内の少なくとも1つが、前記プロセスプラント内の前記対応する物理エンティティと関連するプロセス動作に関する出力を生じさせるためにパラメータデータを使用して機能を実行するように適応される方法を含むプロセスモジュールエディタであって、前記物理エンティティの関連するグラフィック表現を有する前記プロセスオブジェクトは、前記物理エンティティの動きに基づくシミュレーションの機能を含む、当該プロセスモジュールエディタと、
前記プロセスグラフィックスエディタおよび前記プロセスモジュールエディタに通信可能に結合される監視プログラムモジュールであって、前記プロセスグラフィックスエディタを使用して前記プロセスプラント内の前記物理エンティティの前記グラフィック表現に対して加えられた変更を検知し、存在する場合前記プロセスモジュールに対する対応する変更を加えるように前記プロセスモジュールエディタに指令を発するための監視プログラムモジュールと、
を備え、
前記プロセスモジュールエディタは、前記ディスプレイ装置のディスプレイの部分に、前記プロセスプラントの少なくとも1つの部分のためのシミュレーションアルゴリズムを作成するために、前記シミュレーションアルゴリズムの少なくとも一部が作業空間内のプロセスオブジェクト間の接続の描写により定義される作業空間を表示し、
ユーザに前記作業空間内のプロセスオブジェクトのためのモデルを選択するようにプロンプトを出し、前記モデルが複数のモデルから選択され、前記モデルが前記プロセスオブジェクトに対応する前記プロセスプラントの物理エンティティの動作をシミュレーションし、
前記作業空間内の前記プロセスオブジェクトが、前記プロセスオブジェクトの第1のパラメータと関連するステップ応答モデルと、前記プロセスオブジェクトの第2のパラメータと関連する第1の主要モデルとを有し、
前記ユーザに前記モデルを選択するようにプロンプトを出すことが、前記ユーザに少なくとも前記ステップ応答モデルと前記第1の主要モデルから前記モデルを選択するようにプロンプトを出すことを含む、システム。
【請求項9】
前記監視プログラムモジュールが、前記プロセスモジュールエディタを使用して前記プロセスモジュールに加えられる変更を検知し、存在する場合は、前記プロセスプラント内の前記物理エンティティの前記グラフィック表現に対する対応する変更を加えるように前記プロセスグラフィックスエディタに指令を発するように適応される、請求項8に記載のシステム。
【請求項10】
前記プロセスモジュールエディタを使用して前記プロセスモジュールに加えられる少なくともいくつかの変更が、前記プロセスプラント内の前記物理エンティティの前記グラフィック表現に対する対応する変更を有さない、請求項9に記載のシステム。
【請求項11】
前記プロセスグラフィックスエディタを使用して前記プロセスプラント内の前記物理エンティティの前記グラフィック表現に加えられる少なくともいくつかの変更が、前記プロセスモジュールに対する対応する変更を有さない、請求項8に記載のシステム。
【請求項12】
前記プロセスグラフィックスエディタが、前記グラフィック表現をデータベースに記憶させるように適応され、
前記プロセスモジュールエディタが、前記グラフィック表現とは個別に前記データベースの中に前記プロセスモジュールを記憶するように適応される、
請求項8に記載のシステム。
【請求項13】
コンピュータ読取可能メモリをさらに備え、
前記プロセスグラフィックスエディタが前記コンピュータ読取可能メモリに記憶されるアプリケーションであって、前記プロセスプラント内の物理エンティティの前記グラフィック表現の作成または修正を容易にするためにプロセッサ上で実行されるように適応され、
前記プロセスモジュールエディタが前記コンピュータ読取可能メモリに記憶されるアプリケーションであって、前記プロセスモジュールの作成または修正を容易にするために前記プロセッサ上で実行されるように適応され、
前記監視プログラムモジュールが前記コンピュータ読取可能メモリに記憶されるアプリケーションであって、前記プロセスプラント内の前記物理エンティティの前記グラフィック表現に加えられる前記変更を検知し、存在する場合は前記プロセスモジュールに対する前記対応する変更を加えるように前記プロセスモジュールエディタに指令を発するように適応される、
請求項8に記載のシステム。
【請求項14】
前記プロセスモジュールエディタは、ユーザが複数のモデルからプロセスオブジェクトのためのモデルを選択できるように適応され、前記モデルが前記プロセスオブジェクトに対応する前記プロセスプラントの中の物理エンティティの動作をシミュレーションするためである、請求項8に記載のシステム。
【請求項15】
前記プロセスモジュールエディタは、ユーザが前記プロセスオブジェクトのためのステップ応答モデルと第1の主要モデルの内の少なくとも1つを選択できるように適応される
請求項14に記載のシステム。
【請求項16】
前記プロセスモジュール内の第1のプロセスオブジェクトと第2のプロセスオブジェクトとの間の接続が作成されると、前記第1のプロセスオブジェクトと前記第2のプロセスオブジェクトの一方が、接続ステータス、質量流パラメータ、圧力パラメータ、温度パラメータ、比熱パラメータ、密度パラメータ、流れ不可パラメータ、圧力/流量ネットワークパラメータのための圧力基準、または圧力/流量ネットワークパラメータのための流量基準の内の少なくとも1つを前記第1のプロセスオブジェクトと前記第2のプロセスオブジェクトの他方に渡すことができる、請求項14に記載のシステム。
【請求項17】
プロセスプラントの構成を容易にするための方法であって、前記システムが、
第1のプロセッサによって実行されている監視プログラムモジュールアプリケーションを使用して、前記プロセスプラント内に備えられた装置である物理エンティティのグラフィック表現に対する変更を検知し、これにより前記グラフィック表現が前記ディスプレイ装置の上に表示されるように適応され、前記プロセスプラント内の物理エンティティの前記グラフィック表現に対する前記変更が前記監視プログラムモジュールアプリケーションに通信可能に結合されているプロセスグラフィックスエディタを使用して加えられることと、
前記監視プログラムモジュールアプリケーションを使用して、存在する場合は、前記プロセスプラント内の物理エンティティの前記グラフィック表現に対応するプロセスモジュールに加えられる対応する変更を決定し、前記プロセスモジュールが前記プロセスプラント内の前記物理エンティティを表す1つ以上の相互接続されたプロセスオブジェクトを備えることと、
前記プロセスモジュールに加えられる前記対応する変更が決定されると、前記監視プログラムモジュールアプリケーションを使用して、前記プロセスモジュールに加えられる前記決定される変更に従って前記プロセスモジュールを修正するように前記監視プログラムモジュールアプリケーションに通信可能に結合されるプロセスモジュールエディタに指令を発することと、
を含み、
前記物理エンティティの関連するグラフィック表現を有する前記プロセスオブジェクトは、前記物理エンティティの動きに基づくシミュレーションの機能を含み、
前記プロセスモジュールエディタは、前記プロセスプラントの少なくとも1つの部分のためのシミュレーションアルゴリズムを作成するために、ディスプレイ装置のディスプレイの部分に、前記シミュレーションアルゴリズムの少なくとも一部が作業空間内のプロセスオブジェクト間の接続の描写により定義される作業空間を表示し、
ユーザに前記作業空間内のプロセスオブジェクトのためのモデルを選択するようにプロンプトを出し、前記モデルが複数のモデルから選択され、前記モデルが前記プロセスオブジェクトに対応する前記プロセスプラントの物理エンティティの動作をシミュレーションし、
前記作業空間内の前記プロセスオブジェクトが、前記プロセスオブジェクトの第1のパラメータと関連するステップ応答モデルと、前記プロセスオブジェクトの第2のパラメータと関連する第1の主要モデルとを有し、
前記ユーザに前記モデルを選択するようにプロンプトを出すことが、前記ユーザに少なくとも前記ステップ応答モデルと前記第1の主要モデルから前記モデルを選択するようにプロンプトを出すことを含む、前記方法。
【請求項18】
前記監視プログラムモジュールを使用して、前記プロセスモジュールエディタを使用して加えられる、前記プロセスモジュールに対する変更を検知することと、
前記監視プログラムモジュールアプリケーションを使用して、存在する場合には、前記プロセスモジュールに対する前記検知された変更に対応して前記プロセスプラント内の物理エンティティの前記グラフィック表現に加えられる対応する変更を決定することと、
前記プロセスプラント内の物理エンティティの前記グラフィック表現に対して加えられる対応する変更が決定される場合に、前記監視プログラムモジュールアプリケーションを使用して、前記プロセスプラント内の物理エンティティの前記グラフィック方言に対して加えられる前記決定された変更に従って、前記プロセスプラント内の物理エンティティの前記グラフィック表現を修正するように指令を発することと、
をさらに含む、請求項17に記載の方法。
【請求項19】
前記プロセスグラフィックスエディタと前記プロセスモジュールエディタが前記第1のプロセッサによって実行されるアプリケーションである、請求項17に記載の方法。
【請求項20】
前記プロセスグラフィックスエディタと前記プロセスモジュールエディタが前記第2のプロセッサによって実行されるアプリケーションである、請求項17に記載の方法。
【請求項21】
前記1つ以上の相互接続されたプロセスオブジェクトの内の少なくとも1つが、ストリームオブジェクト、接続オブジェクト、アクチュエータオブジェクト、標準プロセスオブジェクト、カスタムプロセスオブジェクト、またはユーザ定義プロセスオブジェクトの内の少なくとも1つを備える、請求項17に記載の方法。
【請求項22】
前記1つ以上の相互接続されるプロセスオブジェクトの内の少なくとも1つが、前記プロセスプラント内の前記物理エンティティと関連するプロセス動作に関する出力を生じさせるためにパラメータデータを使用して機能を実行するように適応される方法を含む、請求項17に記載の方法。
【請求項23】
前記プロセスプラント内の物理エンティティの前記グラフィック表現のバージョンを、存在する場合、データベースから前記データベースとは個別で、前記データベースに通信可能に結合されているコンピューティングシステムにコピーすることと、
前記データベースから前記コンピューティングシステムに前記プロセスモジュールのバージョンをコピーすることと、
をさらに含む、請求項17に記載の方法。
【請求項1】
プロセスプラントの構成を容易にするためのユーザインタフェース方法であって、
少なくとも第1の部分、第2の部分および第3の部分にディスプレイを分割することと、
前記プロセスプラントの少なくとも1つの部分のためのシミュレーションアルゴリズムを作成するために前記第1の部分に、前記シミュレーションアルゴリズムの少なくとも一部が作業空間内のプロセスオブジェクト間の接続の描写により定義される作業空間を表示することと、
前記作業空間に追加できるプロセスオブジェクトのライブラリであって、前記ライブラリ内の前記プロセスオブジェクトの内の少なくとも1つが前記プロセスオブジェクトに対応する前記プロセスプラント内に備えられた装置である物理エンティティの少なくとも1つの関連するグラフィック表現を有するライブラリを前記第2の部分に表示することであって、前記物理エンティティの関連するグラフィック表現を有する前記プロセスオブジェクトは、前記物理エンティティの動きに基づくシミュレーションの機能を含む、当該表示することと、
前記作業空間内のプロセスオブジェクトがユーザによって選択される場合に、前記選択されたプロセスオブジェクトのパラメータの表示を前記第3の部分に表示することと、
を含み、
前記ユーザに前記作業空間内のプロセスオブジェクトのためのモデルを選択するようにプロンプトを出し、前記モデルが複数のモデルから選択され、前記モデルが前記プロセスオブジェクトに対応する前記プロセスプラントの物理エンティティの動作をシミュレーションし、
前記作業空間内の前記プロセスオブジェクトが、前記プロセスオブジェクトの第1のパラメータと関連するステップ応答モデルと、前記プロセスオブジェクトの第2のパラメータと関連する第1の主要モデルとを有し、
前記ユーザに前記モデルを選択するようにプロンプトを出すことが、前記ユーザに少なくとも前記ステップ応答モデルと前記第1の主要モデルから前記モデルを選択するようにプロンプトを出すことを含む、前記方法。
【請求項2】
前記1つのプロセスオブジェクトがストリームオブジェクト、接続オブジェクト、アクチュエータオブジェクト、標準プロセスオブジェクト、カスタムプロセスオブジェクト、またはユーザ定義プロセスオブジェクトの内の少なくとも1つを含む、請求項1に記載の方法。
【請求項3】
前記パラメータの表示の内の1つが前記ユーザによって選択される場合に、前記ユーザが前記1つの表示に対応するパラメータを修正可能とするためにディスプレイを提供することをさらに含む、請求項1に記載の方法。
【請求項4】
前記1つのプロセスオブジェクトに対応する新しいパラメータを追加するためのディスプレイを提供することと、
前記新しいパラメータの表示を前記第3の部分に表示することと、
をさらに含む請求項1に記載の方法。
【請求項5】
プロセスグラフィックスエディタを使用して作成されるプロセスグラフィックスに基づいて作業空間内のプロセスオブジェクト間の接続の描写の内の少なくともいくつかを自動的に生成することをさらに備え、前記プロセスグラフィックスが前記プロセスプラントの少なくとも1つの部分を描写する、請求項1に記載の方法。
【請求項6】
パラメータの前記表示の内の1つが前記ユーザにより選択される場合、前記ユーザが前記プロセスプラント内でプロセス制御アクティビティを実現するために1台以上のプロセスコントローラを実行するように適応される制御モジュールに、前記1つの表示に対応するパラメータをリンク可能とするためにディスプレイを提供することとをさらに含む、請求項1に記載の方法。
【請求項7】
パラメータの前記表示の内の1つが前記ユーザによって選択される場合、前記ユーザが、前記プロセスプラント内でプロセス制御アクティビティを実現するために1台以上のプロセスコントローラを実行するように適応される制御モジュールに、前記1つの表示に対応するパラメータをリンク可能とするためにディスプレイを提供することとをさらに含む、請求項1に記載の方法。
【請求項8】
プロセスプラントの構成を容易にするためのシステムであって、
プロセスプラント内に備えられた装置である物理エンティティのグラフィック表現の作成または修正を容易にするためのプロセスグラフィックスエディタであって、前記グラフィック表現がディスプレイ装置に表示されるように適応されるプロセスグラフィックスエディタと、
プロセスモジュールの作成または修正を容易にするためのプロセスモジュールエディタであって、前記プロセスモジュールが前記プロセスプラント内の1つ以上の対応する物理エンティティを表す1つ以上の相互接続されるプロセスオブジェクトを含み、前記プロセスオブジェクトの内の少なくとも1つが、前記プロセスプラント内の前記対応する物理エンティティと関連するプロセス動作に関する出力を生じさせるためにパラメータデータを使用して機能を実行するように適応される方法を含むプロセスモジュールエディタであって、前記物理エンティティの関連するグラフィック表現を有する前記プロセスオブジェクトは、前記物理エンティティの動きに基づくシミュレーションの機能を含む、当該プロセスモジュールエディタと、
前記プロセスグラフィックスエディタおよび前記プロセスモジュールエディタに通信可能に結合される監視プログラムモジュールであって、前記プロセスグラフィックスエディタを使用して前記プロセスプラント内の前記物理エンティティの前記グラフィック表現に対して加えられた変更を検知し、存在する場合前記プロセスモジュールに対する対応する変更を加えるように前記プロセスモジュールエディタに指令を発するための監視プログラムモジュールと、
を備え、
前記プロセスモジュールエディタは、前記ディスプレイ装置のディスプレイの部分に、前記プロセスプラントの少なくとも1つの部分のためのシミュレーションアルゴリズムを作成するために、前記シミュレーションアルゴリズムの少なくとも一部が作業空間内のプロセスオブジェクト間の接続の描写により定義される作業空間を表示し、
ユーザに前記作業空間内のプロセスオブジェクトのためのモデルを選択するようにプロンプトを出し、前記モデルが複数のモデルから選択され、前記モデルが前記プロセスオブジェクトに対応する前記プロセスプラントの物理エンティティの動作をシミュレーションし、
前記作業空間内の前記プロセスオブジェクトが、前記プロセスオブジェクトの第1のパラメータと関連するステップ応答モデルと、前記プロセスオブジェクトの第2のパラメータと関連する第1の主要モデルとを有し、
前記ユーザに前記モデルを選択するようにプロンプトを出すことが、前記ユーザに少なくとも前記ステップ応答モデルと前記第1の主要モデルから前記モデルを選択するようにプロンプトを出すことを含む、システム。
【請求項9】
前記監視プログラムモジュールが、前記プロセスモジュールエディタを使用して前記プロセスモジュールに加えられる変更を検知し、存在する場合は、前記プロセスプラント内の前記物理エンティティの前記グラフィック表現に対する対応する変更を加えるように前記プロセスグラフィックスエディタに指令を発するように適応される、請求項8に記載のシステム。
【請求項10】
前記プロセスモジュールエディタを使用して前記プロセスモジュールに加えられる少なくともいくつかの変更が、前記プロセスプラント内の前記物理エンティティの前記グラフィック表現に対する対応する変更を有さない、請求項9に記載のシステム。
【請求項11】
前記プロセスグラフィックスエディタを使用して前記プロセスプラント内の前記物理エンティティの前記グラフィック表現に加えられる少なくともいくつかの変更が、前記プロセスモジュールに対する対応する変更を有さない、請求項8に記載のシステム。
【請求項12】
前記プロセスグラフィックスエディタが、前記グラフィック表現をデータベースに記憶させるように適応され、
前記プロセスモジュールエディタが、前記グラフィック表現とは個別に前記データベースの中に前記プロセスモジュールを記憶するように適応される、
請求項8に記載のシステム。
【請求項13】
コンピュータ読取可能メモリをさらに備え、
前記プロセスグラフィックスエディタが前記コンピュータ読取可能メモリに記憶されるアプリケーションであって、前記プロセスプラント内の物理エンティティの前記グラフィック表現の作成または修正を容易にするためにプロセッサ上で実行されるように適応され、
前記プロセスモジュールエディタが前記コンピュータ読取可能メモリに記憶されるアプリケーションであって、前記プロセスモジュールの作成または修正を容易にするために前記プロセッサ上で実行されるように適応され、
前記監視プログラムモジュールが前記コンピュータ読取可能メモリに記憶されるアプリケーションであって、前記プロセスプラント内の前記物理エンティティの前記グラフィック表現に加えられる前記変更を検知し、存在する場合は前記プロセスモジュールに対する前記対応する変更を加えるように前記プロセスモジュールエディタに指令を発するように適応される、
請求項8に記載のシステム。
【請求項14】
前記プロセスモジュールエディタは、ユーザが複数のモデルからプロセスオブジェクトのためのモデルを選択できるように適応され、前記モデルが前記プロセスオブジェクトに対応する前記プロセスプラントの中の物理エンティティの動作をシミュレーションするためである、請求項8に記載のシステム。
【請求項15】
前記プロセスモジュールエディタは、ユーザが前記プロセスオブジェクトのためのステップ応答モデルと第1の主要モデルの内の少なくとも1つを選択できるように適応される
請求項14に記載のシステム。
【請求項16】
前記プロセスモジュール内の第1のプロセスオブジェクトと第2のプロセスオブジェクトとの間の接続が作成されると、前記第1のプロセスオブジェクトと前記第2のプロセスオブジェクトの一方が、接続ステータス、質量流パラメータ、圧力パラメータ、温度パラメータ、比熱パラメータ、密度パラメータ、流れ不可パラメータ、圧力/流量ネットワークパラメータのための圧力基準、または圧力/流量ネットワークパラメータのための流量基準の内の少なくとも1つを前記第1のプロセスオブジェクトと前記第2のプロセスオブジェクトの他方に渡すことができる、請求項14に記載のシステム。
【請求項17】
プロセスプラントの構成を容易にするための方法であって、前記システムが、
第1のプロセッサによって実行されている監視プログラムモジュールアプリケーションを使用して、前記プロセスプラント内に備えられた装置である物理エンティティのグラフィック表現に対する変更を検知し、これにより前記グラフィック表現が前記ディスプレイ装置の上に表示されるように適応され、前記プロセスプラント内の物理エンティティの前記グラフィック表現に対する前記変更が前記監視プログラムモジュールアプリケーションに通信可能に結合されているプロセスグラフィックスエディタを使用して加えられることと、
前記監視プログラムモジュールアプリケーションを使用して、存在する場合は、前記プロセスプラント内の物理エンティティの前記グラフィック表現に対応するプロセスモジュールに加えられる対応する変更を決定し、前記プロセスモジュールが前記プロセスプラント内の前記物理エンティティを表す1つ以上の相互接続されたプロセスオブジェクトを備えることと、
前記プロセスモジュールに加えられる前記対応する変更が決定されると、前記監視プログラムモジュールアプリケーションを使用して、前記プロセスモジュールに加えられる前記決定される変更に従って前記プロセスモジュールを修正するように前記監視プログラムモジュールアプリケーションに通信可能に結合されるプロセスモジュールエディタに指令を発することと、
を含み、
前記物理エンティティの関連するグラフィック表現を有する前記プロセスオブジェクトは、前記物理エンティティの動きに基づくシミュレーションの機能を含み、
前記プロセスモジュールエディタは、前記プロセスプラントの少なくとも1つの部分のためのシミュレーションアルゴリズムを作成するために、ディスプレイ装置のディスプレイの部分に、前記シミュレーションアルゴリズムの少なくとも一部が作業空間内のプロセスオブジェクト間の接続の描写により定義される作業空間を表示し、
ユーザに前記作業空間内のプロセスオブジェクトのためのモデルを選択するようにプロンプトを出し、前記モデルが複数のモデルから選択され、前記モデルが前記プロセスオブジェクトに対応する前記プロセスプラントの物理エンティティの動作をシミュレーションし、
前記作業空間内の前記プロセスオブジェクトが、前記プロセスオブジェクトの第1のパラメータと関連するステップ応答モデルと、前記プロセスオブジェクトの第2のパラメータと関連する第1の主要モデルとを有し、
前記ユーザに前記モデルを選択するようにプロンプトを出すことが、前記ユーザに少なくとも前記ステップ応答モデルと前記第1の主要モデルから前記モデルを選択するようにプロンプトを出すことを含む、前記方法。
【請求項18】
前記監視プログラムモジュールを使用して、前記プロセスモジュールエディタを使用して加えられる、前記プロセスモジュールに対する変更を検知することと、
前記監視プログラムモジュールアプリケーションを使用して、存在する場合には、前記プロセスモジュールに対する前記検知された変更に対応して前記プロセスプラント内の物理エンティティの前記グラフィック表現に加えられる対応する変更を決定することと、
前記プロセスプラント内の物理エンティティの前記グラフィック表現に対して加えられる対応する変更が決定される場合に、前記監視プログラムモジュールアプリケーションを使用して、前記プロセスプラント内の物理エンティティの前記グラフィック方言に対して加えられる前記決定された変更に従って、前記プロセスプラント内の物理エンティティの前記グラフィック表現を修正するように指令を発することと、
をさらに含む、請求項17に記載の方法。
【請求項19】
前記プロセスグラフィックスエディタと前記プロセスモジュールエディタが前記第1のプロセッサによって実行されるアプリケーションである、請求項17に記載の方法。
【請求項20】
前記プロセスグラフィックスエディタと前記プロセスモジュールエディタが前記第2のプロセッサによって実行されるアプリケーションである、請求項17に記載の方法。
【請求項21】
前記1つ以上の相互接続されたプロセスオブジェクトの内の少なくとも1つが、ストリームオブジェクト、接続オブジェクト、アクチュエータオブジェクト、標準プロセスオブジェクト、カスタムプロセスオブジェクト、またはユーザ定義プロセスオブジェクトの内の少なくとも1つを備える、請求項17に記載の方法。
【請求項22】
前記1つ以上の相互接続されるプロセスオブジェクトの内の少なくとも1つが、前記プロセスプラント内の前記物理エンティティと関連するプロセス動作に関する出力を生じさせるためにパラメータデータを使用して機能を実行するように適応される方法を含む、請求項17に記載の方法。
【請求項23】
前記プロセスプラント内の物理エンティティの前記グラフィック表現のバージョンを、存在する場合、データベースから前記データベースとは個別で、前記データベースに通信可能に結合されているコンピューティングシステムにコピーすることと、
前記データベースから前記コンピューティングシステムに前記プロセスモジュールのバージョンをコピーすることと、
をさらに含む、請求項17に記載の方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7A】
【図7B】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16A】
【図16B】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7A】
【図7B】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16A】
【図16B】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【公開番号】特開2012−48762(P2012−48762A)
【公開日】平成24年3月8日(2012.3.8)
【国際特許分類】
【出願番号】特願2011−268645(P2011−268645)
【出願日】平成23年12月8日(2011.12.8)
【分割の表示】特願2007−511518(P2007−511518)の分割
【原出願日】平成17年5月4日(2005.5.4)
【出願人】(506266023)フィッシャー−ローズマウント・システムズ・インコーポレーテッド (37)
【氏名又は名称原語表記】Fisher−Rosemount Systems, Inc.
【Fターム(参考)】
【公開日】平成24年3月8日(2012.3.8)
【国際特許分類】
【出願日】平成23年12月8日(2011.12.8)
【分割の表示】特願2007−511518(P2007−511518)の分割
【原出願日】平成17年5月4日(2005.5.4)
【出願人】(506266023)フィッシャー−ローズマウント・システムズ・インコーポレーテッド (37)
【氏名又は名称原語表記】Fisher−Rosemount Systems, Inc.
【Fターム(参考)】
[ Back to top ]