(57)【要約】  プロセスプラントの構成を容易にするためのシステムはプロセスグラフィックスエディタおよびプロセスモジュールエディタを含み得る。プロセスグラフィックスエディタは、プロセスプラントの物理エンティティのグラフィック表現の作成および／または修正を容易にし得る。プロセスモジュールエディタはプロセスモジュールの作成および／または修正を容易し得る。プロセスモジュールはプロセスプラントの中の１つ以上の対応する物理エンティティを表す１つ以上の相互接続されるプロセスオブジェクトを含み得る。システムは、プロセスグラフィックスエディタおよびプロセスモジュールエディタに通信可能に結合される監視プログラムモジュールも含み得る。監視プログラムモジュールは、プロセスグラフィックスエディタを使用して、物理エンティティのグラフィック表現に対して加えられる変更を検知し得る。このような変更の検知に応えて、存在する場合は、監視プログラムモジュールはプロセスモジュールエディタに、プロセスモジュールに対する対応する変更を行うように指令を発し得る。
2007536632.tif 000002
【特許請求の範囲】
【請求項１】
プロセスプラントの構成を容易にするためのユーザインタフェース方法であって、
少なくとも第１の部分、第２の部分および第３の部分にディスプレイを分割することと、
前記プロセスプラントの少なくとも１つの部分のためのシミュレーションアルゴリズムを作成するために前記第１の部分に、前記シミュレーションアルゴリズムの少なくとも一部が前記作業空間内のプロセスオブジェクト間の接続の描写により定義される作業空間を表示することと、
前記作業空間に追加できるプロセスオブジェクトのライブラリであって、前記ライブラリ内の前記プロセスオブジェクトの内の少なくとも１つが前記プロセスオブジェクトに対応する前記プロセスプラント内の物理エンティティの少なくとも１つの関連するグラフィック表現を有するライブラリを前記第２の部分に表示することと、
前記作業空間内のプロセスオブジェクトがユーザによって選択される場合に、前記選択されたプロセスオブジェクトのパラメータの表示を前記第３の部分に表示することと、
を含む、前記方法。
【請求項２】
前記１つのプロセスオブジェクトがストリームオブジェクト、接続オブジェクト、アクチュエータオブジェクト、標準プロセスオブジェクト、カスタムプロセスオブジェクト、またはユーザ定義プロセスオブジェクトの内の少なくとも１つを含む、請求項１に記載の方法。
【請求項３】
前記パラメータの表示の内の１つが前記ユーザによって選択される場合に、前記ユーザが前記１つの表示に対応するパラメータを修正可能とするためにディスプレイを提供することをさらに含む、請求項１に記載の方法。
【請求項４】
前記ユーザが、前記１つのプロセスオブジェクトに対応する新しいパラメータが追加されなければならないことを示す場合に、前記ユーザが前記新しいパラメータを追加可能とするためにディスプレイを提供することと、
前記新しいパラメータの表示を前記第３の部分に表示することと、
をさらに含む請求項１に記載の方法。
【請求項５】
プロセスグラフィックスエディタを使用して作成されるプロセスグラフィックスに基づいて作業空間内のプロセスオブジェクト間の接続の描写の内の少なくともいくつかを自動的に生成することをさらに備え、前記プロセスグラフィックスが前記プロセスプラントの少なくとも前記部分を描写する、請求項１に記載の方法。
【請求項６】
前記ユーザに前記作業空間内のプロセスオブジェクトのためのモデルを選択するようにプロンプトを出し、前記モデルが複数のモデルから選択され、前記モデルが前記プロセスオブジェクトに対応する前記プロセスプラントの物理エンティティの動作をシミュレーションする、請求項１に記載の方法。
【請求項７】
前記ユーザに前記モデルを選択するようにプロンプトを出すことが、前記ユーザに少なくともステップ応答モデルと第１の主要モデルから前記モデルを選択するようにプロンプトを出すことを含む、請求項６に記載の方法。
【請求項８】
前記作業空間内の前記プロセスオブジェクトが、前記プロセスオブジェクトの第１のパラメータと関連するステップ応答モデルと、前記プロセスオブジェクトの第２のパラメータと関連する第１の主要モデルとを有する、請求項７に記載の方法。
【請求項９】
パラメータの前記表示の内の１つが前記ユーザにより選択される場合、前記ユーザが前記プロセスプラント内でプロセス制御アクティビティを実現するために１台以上のプロセスコントローラを実行するように適応される制御モジュールに、前記１つの表示に対応するパラメータをリンク可能とするためにディスプレイを提供することとをさらに含む、請求項１に記載の方法。
【請求項１０】
パラメータの前記表示の内の１つが前記ユーザによって選択される場合、前記ユーザが、前記プロセスプラント内でプロセス制御アクティビティを実現するために１台以上のプロセスコントローラを実行するように適応される制御モジュールに、前記１つの表示に対応するパラメータをリンク可能とするためにディスプレイを提供することとをさらに含む、請求項１に記載の方法。
【請求項１１】
プロセスプラントの構成を容易にするためのシステムであって、
プロセスプラント内の物理エンティティのグラフィック表現の作成または修正を容易にするためのプロセスグラフィックスエディタであって、前記グラフィック表現がディスプレイ装置に表示されるように適応されるプロセスグラフィックスエディタと、
プロセスモジュールの作成または修正を容易にするためのプロセスモジュールエディタであって、前記プロセスモジュールが前記プロセスプラント内の１つ以上の対応する物理エンティティを表す１つ以上の相互接続されるプロセスオブジェクトを含み、前記プロセスオブジェクトの内の少なくとも１つが、前記プロセスプラント内の前記対応する物理エンティティと関連するプロセス動作に関する出力を生じさせるためにパラメータデータを使用して機能を実行するように適応される方法を含むプロセスモジュールエディタと、
前記プロセスグラフィックスエディタおよび前記プロセスモジュールエディタに通信可能に結合される監視プログラムモジュールであって、前記プロセスグラフィックスエディタを使用して前記プロセスプラント内の前記物理エンティティの前記グラフィック表現に対して加えられた変更を検知し、存在する場合前記プロセスモジュールに対する対応する変更を加えるように前記プロセスモジュールエディタに指令を発するための監視プログラムモジュールと、
を備えるシステム。
【請求項１２】
前記監視プログラムモジュールが、前記プロセスモジュールエディタを使用して前記プロセスモジュールに加えられる変更を検知し、存在する場合は、前記プロセスプラント内の前記物理エンティティの前記グラフィック表現に対する対応する変更を加えるように前記プロセスグラフィックスエディタに指令を発するように適応される、請求項１１に記載のシステム。
【請求項１３】
前記プロセスモジュールエディタを使用して前記プロセスモジュールに加えられる少なくともいくつかの変更が、前記プロセスプラント内の前記物理エンティティの前記グラフィック表現に対する対応する変更を有さない、請求項１２に記載のシステム。
【請求項１４】
前記プロセスグラフィックスエディタを使用して前記プロセスプラント内の前記物理エンティティの前記グラフィック表現に加えられる少なくともいくつかの変更が、前記プロセスモジュールに対する対応する変更を有さない、請求項１１に記載のシステム。
【請求項１５】
前記プロセスグラフィックスエディタが、前記グラフィック表現をデータベースに記憶させるように適応され、
前記プロセスモジュールエディタが、前記グラフィック表現とは個別に前記データベースの中に前記プロセスモジュールを記憶するように適応される、
請求項１１に記載のシステム。
【請求項１６】
コンピュータ読取可能メモリをさらに備え、
前記プロセスグラフィックスエディタが前記コンピュータ読取可能メモリに記憶されるアプリケーションであって、前記プロセスプラント内の物理エンティティの前記グラフィック表現の作成または修正を容易にするためにプロセッサ上で実行されるように適応され、
前記プロセスモジュールエディタが前記コンピュータ読取可能メモリに記憶されるアプリケーションであって、前記プロセスモジュールの作成または修正を容易にするために前記プロセッサ上で実行されるように適応され、
前記監視プログラムモジュールが前記コンピュータ読取可能メモリに記憶されるアプリケーションであって、前記プロセスプラント内の前記物理エンティティの前記グラフィック表現に加えられる前記変更を検知し、存在する場合は前記プロセスモジュールに対する前記対応する変更を加えるように前記プロセスモジュールエディタに指令を発するように適応される、
請求項１１に記載のシステム。
【請求項１７】
前記プロセスモジュールエディタは、ユーザが複数のモデルからプロセスオブジェクトのためのモデルを選択できるように適応され、前記モデルが前記プロセスオブジェクトに対応する前記プロセスプラントの中の物理エンティティの動作をシミュレーションするためである、請求項１１に記載のシステム。
【請求項１８】
前記プロセスモジュールエディタは、ユーザが前記プロセスオブジェクトのためのステップ応答モデルと第１の主要モデルの内の少なくとも１つを選択できるように適応される
請求項１７に記載のシステム。
【請求項１９】
前記プロセスモジュール内の第１のプロセスオブジェクトと第２のプロセスオブジェクトとの間の接続が作成されると、前記第１のプロセスオブジェクトと前記第２のプロセスオブジェクトの一方が、接続ステータス、質量流パラメータ、圧力パラメータ、温度パラメータ、比熱パラメータ、密度パラメータ、流れ不可パラメータ、圧力／流量ネットワークパラメータのための圧力基準、または圧力／流量ネットワークパラメータのための流量基準の内の少なくとも１つを前記第１のプロセスオブジェクトと前記第２のプロセスオブジェクトの他方に渡すことができる、請求項１７に記載のシステム。
【請求項２０】
プロセスプラントの構成を容易にするための方法であって、前記システムが、
第１のプロセッサによって実行されている監視プログラムモジュールアプリケーションを使用して、前記プロセスプラント内の物理エンティティのグラフィック表現に対する変更を検知し、これにより前記グラフィック表現が前記ディスプレイ装置の上に表示されるように適応され、前記プロセスプラント内の物理エンティティの前記グラフィック表現に対する前記変更が前記監視プログラムモジュールアプリケーションに通信可能に結合されているプロセスグラフィックスエディタを使用して加えられることと、
前記監視プログラムモジュールアプリケーションを使用して、存在する場合は、前記プロセスプラント内の物理エンティティの前記グラフィック表現に対応するプロセスモジュールに加えられる対応する変更を決定し、前記プロセスモジュールが前記プロセスプラント内の前記物理エンティティを表す１つ以上の相互接続されたプロセスオブジェクトを備えることと、
前記プロセスモジュールに加えられる前記対応する変更が決定されると、前記監視プログラムモジュールアプリケーションを使用して、前記プロセスモジュールに加えられる前記決定される変更に従って前記プロセスモジュールを修正するように前記監視プログラムモジュールアプリケーションに通信可能に結合されるプロセスモジュールエディタに指令を発することと、
を含む、前記方法。
【請求項２１】
前記監視プログラムモジュールを使用して、前記プロセスモジュールエディタを使用して加えられる、前記プロセスモジュールに対する変更を検知することと、
前記監視プログラムモジュールアプリケーションを使用して、存在する場合には、前記プロセスモジュールに対する前記検知された変更に対応して前記プロセスプラント内の物理エンティティの前記グラフィック表現に加えられる対応する変更を決定することと、
前記プロセスプラント内の物理エンティティの前記グラフィック表現に対して加えられる対応する変更が決定される場合に、前記監視プログラムモジュールアプリケーションを使用して、前記プロセスプラント内の物理エンティティの前記グラフィック方言に対して加えられる前記決定された変更に従って、前記プロセスプラント内の物理エンティティの前記グラフィック表現を修正するように指令を発することと、
をさらに含む、請求項２０に記載の方法。
【請求項２２】
前記プロセスグラフィックスエディタと前記プロセスモジュールエディタが前記第１のプロセッサによって実行されるアプリケーションである、請求項２０に記載の方法。
【請求項２３】
前記プロセスグラフィックスエディタと前記プロセスモジュールエディタが前記第２のプロセッサによって実行されるアプリケーションである、請求項２０に記載の方法。
【請求項２４】
前記１つ以上の相互接続されたプロセスオブジェクトの内の少なくとも１つが、ストリームオブジェクト、接続オブジェクト、アクチュエータオブジェクト、標準プロセスオブジェクト、カスタムプロセスオブジェクト、またはユーザ定義プロセスオブジェクトの内の少なくとも１つを備える、請求項２０に記載の方法。
【請求項２５】
前記１つ以上の相互接続されるプロセスオブジェクトの内の少なくとも１つが、前記プロセスプラント内の前記物理エンティティと関連するプロセス動作に関する出力を生じさせるためにパラメータデータを使用して機能を実行するように適応される方法を含む、請求項２０に記載の方法。
【請求項２６】
前記プロセスプラント内の物理エンティティの前記グラフィック表現のバージョンを、存在する場合、データベースから前記データベースとは個別で、前記データベースに通信可能に結合されているコンピューティングシステムにコピーすることと、
前記データベースから前記コンピューティングシステムに前記プロセスモジュールのバージョンをコピーすることと、
をさらに含む、請求項２０に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願）
本願は、２００４年５月４日に出願され、本願がこれにより全体を本明細書に参照することにより明示的に組み込んでいる「プロセス制御システムを表現し、監視し、対話するためのグラフィックユーザインタフェース（Ｇｒａｐｈｉｃ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ  ｆｏｒ  Ｒｅｐｒｅｓｅｎｔｉｎｇ，Ｍｏｎｉｔｏｒｉｎｇ  ａｎｄ  Ｉｎｔｅｇｒａｔｉｎｇ  ｗｉｔｈ  Ｐｒｏｃｅｓｓ  Ｃｏｎｔｒｏｌ  Ｓｙｓｔｅｍｓ）」と題される米国仮特許出願、出願番号第６０／５６７，９８０号の利益、優先権のために正規に出願された出願および請求項である。本願は、全体の開示がこれによりその全体を本明細書に参照することにより明示的に組み込まれている、２００２年１０月２２日に出願され、２００４年４月２２日に米国公報番号第２００４／００７５６８９号として公開された、同様に「プロセスプラントにおけるスマートプロセスモジュールおよびオブジェクト（Ｓｍａｒｔ  Ｐｒｏｃｅｓｓ  Ｍｏｄｕｌｅｓ  ａｎｄ  Ｏｂｊｅｃｔｓ  ｉｎ  Ｐｒｏｃｅｓｓ  Ｐｌａｎｔｓ）」と題される米国特許出願、出願番号第１０／２７８，４６９号の一部継続出願である、２００３年7月２１日に出願され、２００４年８月日に米国公報番号第２００４／０１５３８０４号として公開された「グラフィックディスプレイ要素、プロセスモジュールおよび制御モジュールのプロセスプラントにおける統合（Ｉｎｔｅｇｒａｔｉｏｎ  ｏｆ  Ｇｒａｐｈｉｃ  Ｄｉｓｐｌａｙ  Ｅｌｅｍｅｎｔｓ，Ｐｒｏｃｅｓｓ  Ｍｏｄｕｌｅｓ  ａｎｄ  Ｃｏｎｔｒｏｌ  Ｍｏｄｕｌｅｓ  ｉｎ  Ｐｒｏｃｅｓｓ  Ｐｌａｎｔｓ）」と題される米国特許出願、出願願望第１０／６２５，４８１号にも関連する。本願は、全体の開示がこれによりその全体を本明細書に参照することにより明示的に組み込まれている、２００３年２月１８日に出願され、２００４年１０月７日に米国公報番号第２００４／０１９９９２５号として公開された「プロセスプラント構成システムにおけるモジュールクラスオブジェクト（Ｍｏｄｕｌｅ  Ｃｌａｓｓ  Ｏｂｊｅｃｔｓ  ｉｎ  ａ  Ｐｒｏｃｅｓｓ Ｐｌａｎｔ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ｓｙｓｔｅｍ）」と題される米国特許出願、出願番号第１０／３６８，１５１号にも関連する。本願は、本願と同日に国際（ＰＣＴ）出願として出願され、本願がこれにより全体を本明細書に参照することにより組み込んでいる以下の特許出願にも関連する。つまり、「プロセス環境における関連グラフィックディスプレイ（Ａｓｓｏｃｉａｔｅｄ  Ｇｒａｐｈｉｃ Ｄｉｓｐｌａｙｓ  ｉｎ  ａ  Ｐｒｏｃｅｓｓ  Ｅｎｖｉｒｏｎｍｅｎｔ）」（代理人整理番号第０６００５／４１１１１号）、「プロセス制御システムのためのユーザにより構成可能なアラームおよびアラームトレンド分析（Ｕｓｅｒ  Ｃｏｎｆｉｇｕｒａｂｌｅ  Ａｌａｒｍｓ  ａｎｄ  Ａｌａｒｍ  Ｔｒｅｎｄｉｎｇ  ｆｏｒ  Ｐｒｏｃｅｓｓ  Ｃｏｎｔｒｏｌ  Ｓｙｓｔｅｍｓ）」（代理人整理番号第０６００５／４１１１２号）、「プロセスプラントにおけるプロセスモジュールおよびエキスパートシステムの統合（Ｉｎｔｅｇｒａｔｉｏｎ  ｏｆ  Ｐｒｏｃｅｓｓ  Ｍｏｄｕｌｅｓ  ａｎｄ  Ｅｘｐｅｒｔ  Ｓｙｓｔｅｍｓ  ｉｎ  Ｐｒｏｃｅｓｓ  Ｐｌａｎｔｓ）」���代理人整理番号第０６００５／４１１１３号）、「統合された環境におけるカスタマイズされたプロセスグラフィックディスプレイ層を有するプロセスプラントユーザインタフェースシステム（Ａ  Ｐｒｏｃｅｓｓ  Ｐｌａｎｔ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ  Ｓｙｓｔｅｍ  Ｈａｖｉｎｇ  Ｃｕｓｓｔｏｍｉｚｅｄ  Ｐｒｏｃｅｓｓ  Ｇｒａｐｈｉｃ  Ｄｉｓｐｌａｙ  Ｌａｙｅｒｓ  ｉｎ  ａｎ  Ｉｎｔｅｇｒａｔｅｄ  Ｅｎｖｉｒｏｎｍｅｎｔ）」（代理人整理番号第０６００５／４１１１４号）、「プロセス環境におけるスクリプト化されたグラフィック（Ｓｃｒｉｐｔｅｄ  Ｇｒａｐｈｉｃｓ  ｉｎ  ａ  Ｐｒｏｃｅｓｓ  Ｅｎｖｉｒｏｎｍｅｎｔ）」（代理人整理番号第０６００５／４１１１５号）、「プロセス構成および制御環境へのグラフィック統合（Ｇｒａｐｈｉｃｓ  Ｉｎｔｅｇｒａｔｉｏｎ  ｉｎｔｏ  ａ  Ｐｒｏｃｅｓｓ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  ａｎｄ  Ｃｏｎｔｒｏｌ  Ｅｎｖｉｒｏｎｍｅｎｔ）」（代理人整理番号第０６００５／４１１１６号）、「プロセス環境における複数の視覚化のあるグラフィックス要素（Ｇｒａｐｈｉｃ  Ｅｌｅｍｅｎｔ  ｗｉｔｈ  Ｍｕｌｔｉｐｌｅ  Ｖｉｓｕａｌｉｚａｔｉｏｎ  ｉｎ  ａ  Ｐｒｏｃｅｓｓ  Ｅｎｖｉｒｏｎｍｅｎｔ）」（代理人整理番号第０６００５／４１１１７号）、「統合プロセス制御システムインタフェースのためのグラフィックディスプレイ構成フレームワーク（Ｇｒａｐｈｉｃ Ｄｉｓｐｌａｙ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ｆｒａｍｅｗｏｒｋ  ｆｏｒ  Ｕｎｉｆｉｅｄ  Ｐｒｏｃｅｓｓ  Ｃｏｎｔｒｏｌ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｆａｃｅ）」（代理人整理番号第０６００５／４１１２４号）、「プロセスプラントユーザインタフェースにおけるマークアップ言語をベースにした動的プロセスグラフィックス（Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ−Ｂａｓｅｄ，Ｄｙｎａｍｉｃ  Ｐｒｏｃｅｓｓ  Ｇｒａｐｈｉｃｓ  ｉｎ  ａ  Ｐｒｏｃｅｓｓ  Ｐｌａｎｔ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）」（代理人整理番号第０６００５／４１１２７号）、「プロセス制御データを修正するための方法および装置（Ｍｅｔｈｏｄｓ  ａｎｄ  Ａｐｐａｒａｔｕｓ  ｆｏｒ  Ｍｏｄｉｆｙｉｎｇ  Ｐｒｏｃｅｓｓ  Ｃｏｎｔｒｏｌ  Ｄａｔａ）」（代理人整理番号第０６００５／５９１６２２号と第２００４０／５９−１１６２２号）、「プロセス制御データにアクセスするための方法および装置（Ｍｅｔｈｏｄｓ  ａｎｄ  Ａｐｐａｒａｔｕｓ  ｆｏｒ  Ａｃｃｅｓｓｉｎｇ  Ｐｒｏｃｅｓｓ  Ｃｏｎｔｒｏｌ  Ｄａｔａ）」（代理人整理番号第０６００５／５９１６２３号および第２００４０／５９−１１６２３号）、「プロセス制御システムのための統合グラフィック実行時インタフェース（Ｉｎｔｅｇｒａｔｅｄ  Ｇｒａｐｈｉｃａｌ  Ｒｕｎｔｉｍｅ  Ｉｎｔｅｒｆａｃｅ  ｆｏｒ  Ｐｒｏｃｅｓｓ  Ｃｏｎｔｒｏｌ  Ｓｙｓｔｅｍｓ）」（代理人整理番号第０６００５／５９１６２８号および第２００４０／５９−１１６２８号）、「プロセス制御システムのためのサービス指向アーキテクチャ（Ｓｅｒｖｉｃｅ−Ｏｒｉｅｎｔｅｄ  Ａｒｃｈｉｔｅｃｔｕｒｅ  ｆｏｒ  Ｐｒｏｃｅｓｓ  Ｃｏｎｔｒｏｌ  Ｓｙｓｔｅｍｓ）」（代理人整理番号第０６００５／５９１６２９号およ���第２００４０／５９−１１６２９号）である。
【０００２】
本発明は、概してプロセスプラントに関し、より詳細にはプロセスプラント制御アーキテクチャのシステムレベルでユーザ表示、シミュレーションおよび制御を統合できるようにするインテリジェント制御シミュレーション環境に関する。
【背景技術】
【０００３】
化学関連プロセス、石油関連プロセス、または他のプロセスで使用されるシステム等の分散型プロセス制御システムは、通常、アナログバス、デジタルバスまたはアナログ／デジタル結合バスを介して１台以上のフィールドデバイスに通信可能に結合されている１台以上のプロセスコントローラを含む。例えば、バルブ、バルブポジショナ、スイッチおよび送信機（例えば、温度センサ、圧力センサ、水位センサ、および流量センサ）であってもよいフィールドデバイスはプロセス環境内に配置され、バルブの開閉、プロセスパラメータの測定等のプロセス機能を実行する。周知のＦｉｅｌｄｂｕｓプロトコルに準拠しているスマートフィールドデバイスも制御計算、アラーム機能、およびコントローラ内で一般的に実現されている他の制御機能を実行してもよい。また通常はプラント環境の中に配置されるプロセスコントローラは、フィールドデバイスによって行われるプロセス測定および／またはフィールドデバイスに関する他の情報を示す信号を受信し、プロセス制御決定を下し、受信された情報に基づいて制御信号を発生させ、ＨＡＲＴデバイスおよびＦｉｅｌｄｂｕｓフィールドデバイス等のフィールドデバイスで実行されている制御モジュールまたはブロックと連携調整する、例えば異なる制御モジュールを起動するコントローラアプリケーションを実行する。コントローラ内の制御モジュールはフィールドデバイスに通信回線上で制御信号を送信し、それによってプロセスの動作を制御する。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
通常、フィールドデバイスおよびコントローラからの情報は、一般的にコントロールルームまたはより厳しいプラント環境から離れた他の場所に設置されているオペレータワークステーション、パーソナルコンピュータ、データヒストリアン、レポートジェネレータ、集中データベース等の１台以上の他のハードウェアデバイスがデータハイウェイ上で利用できる。これらのハードウェアデバイスは、オペレータが、プロセス制御ルーチンの設定値を変更し、コントローラまたはフィールドデバイス内の制御モジュールの動作を修正し、プロセスの現状を表示し、フィールドデバイスおよびコントローラによって生成されるアラームを表示し、人員をトレーニングするまたはプロセス制御ソフトウェアをテストする目的でプロセスの動作をシミュレーションし、構成データベースを保持し、更新する等のプロセスに関する機能を実行できるようにし得るアプリケーションを実行する。
【０００５】
１つの例として、エマーソンプロセスマネジメント（Ｅｍｅｒｓｏｎ Ｐｒｏｃｅｓｓ  Ｍａｎａｇｅｍｅｎｔ）より販売されているＤｅｌｔａＶ（登録商標）制御システムは、プロセスプラント内の様々な場所に配置される異なるデバイスに記憶され、それらにより実行される複数のアプリケーションを含む。１つ以上のオペレータワークステーションに常駐する構成アプリケーションにより、ユーザはプロセス制御モジュールを作成または変更し、データハイウェイを介して専用の分散型コントローラにこれらのプロセス制御モジュールをダウンロードできる。通常、これらの制御モジュールは、それに対する入力に基づいて制御スキームの中で機能を実行し、制御スキームの中で他の機能ブロックに対して出力を提供するオブジェクト指向プログラミングプロトコルのオブジェクトである通信可能に相互接続されている機能ブロックから構成されている。構成アプリケーションは、設計者が、オペレータにデータを表示するために、およびオペレータが設定点等の設定値をプロセス制御ルーチン内で変更可能とするために表示アプリケーションによって使用されるオペレータインタフェースを作成または変更できるようにしてもよい。各々の専用コントローラ、およびいくつかのケースではフィールドデバイスは実際のプロセス制御機能を実現するためにそこに割り当てられ、ダウンロードされる制御モジュールを起動するコントローラアプリケーションを記憶し、実行する。１つ以上のオペレータワークステーションで実行されてもよい表示アプリケーションはデータハイウェイを介してコントローラアプリケーションからデータを受信し、このデータをプロセス制御システムの設計者、オペレータ、またはユーザインタフェースを使用するユーザに表示し、オペレータビュー、エンジニアビュー、技術者ビュー等の多くの異なるビューのいずれかを提供してもよい。構成データベースアプリケーションは、現在のプロセス制御ルーチン構成およびそれに関連付けられているデータを記憶するために、データハイウェイに接続されているさらに追加のコンピュータで実行してもよいが、データヒストリアンアプリケーションは、通常、データハイウェイ全体で提供されるデータの一部またはすべてを収集し、記憶するデータヒストリアンデバイスの中に記憶され、それによって実行される。代わりに、構成データベースは構成アプリケーションと同じワークステーションに配置されてもよい。
【０００６】
上記に注記されたように、オペレータディスプレイアプリケーションは、通常、ワークステーションの内の１つ以上でシステム全体において実現され、プラント内の制御システムまたはデバイスの動作状態に関して、事前設定されたディスプレイをオペレータまたは保守人員に提供する。通常、これらのディスプレイはプロセスプラント内でコントローラまたはデバイスによって生成されるアラームを受信するアラームディスプレイ、プロセスプラント内のコントローラおよび他のデバイスの動作状態を示す制御ディスプレイ、プロセスプラント内のデバイスの動作状態を示す保守ディスプレイ等の形式を取る。これらのディスプレイは、一般的に、プロセスプラント内のプロセス制御モジュールまたはデバイスから受信される情報またはデータを、公知の方法で表示するように事前設定されている。いくつかの公知のシステムでは、ディスプレイは物理要素または論理要素と関連付けられているグラフィックを有し、物理要素または論理要素についてのデータを受信するために物理要素または論理要素に通信可能に結び付けられているオブジェクトを使用することにより作成される。オブジェクトは、例えば、タンク半分が一杯になっていることを描くために、流量センサによって測定される流量を描くために等、受信されたデータに基づいて表示画面上のグラフィックを変更してもよい。ディスプレイのために必要とされる情報はプロセスプラント内部のデバイスまたは構成データベースから送信されるが、この情報はその情報を含むディスプレイをユーザに提供するためだけに使用される。その結果、アラームを生成するため、プラント内の問題を検知するため等に使用されるすべての情報とプログラミングは、プロセスプラント制御システムの構成の間にコントローラおよびフィールドデバイス等のプラントと関連付けられている異なるデバイスによって生成され、異なるデバイスの内部で構成されなければならない。その時点で初めてこの情報がプロセス動作中の表示のためにオペレータディスプレイに送信される。
【０００７】
エラー検知および他のプログラミングは、異なるコントローラで実行中の制御ループに関連する条件、エラー、アラーム等、および個々のデバイス内部の問題を検知するために有用であるが、プロセスプラント内部の複数の、多様に配置されている可能性のあるデバイスからのデータを分析することにより検知されなければならないシステムレベルの状態またはエラーを認識するためにプロセス制御システムをプログラミングすることは困難である。またさらに、オペレータディスプレイは、通常、オペレータまたは保守人員にこのようなシステムレベルの状態情報を表示するまたは提示するために使用されてはおらず、いずれの場合においても、ディスプレイ内の異なる要素についての情報またはデータのこれらの代わりのソースを用いてオペレータディスプレイ内でオブジェクトを動画化することは困難である。この事実は特に、通常、ディスプレイ上の２つのデバイスの間で繋げられている単純な線で示されているパイプの中の流体の流量、コンベヤベルト上の原材料の移動等の材料の流れの動画およびモデル化に関して当てはまる。さらに、現在、材料がプラントを通過するにつれて、流量状態と質量平衡等のプラント内部での特定の状態を検知する組織化された方法、つまりシステムレベルでこれらの機能を実行するためにそれほど容易に実現可能ではないシステムはない。
【０００８】
同様に、シミュレーションアクティビティ（作業）は、通常、プロセスプラントのオンライン環境で実行される表示アクティビティおよび制御アクティビティとは別に実行されなければならないため、プロセスプラントまたはプロセスプラントの一部をセットアップする、あるいは作成することは困難な場合がある。またさらに、プラントのシミュレーションが作成される場合、このシミュレーションをオペレータディスプレイと、あるいはプラントの中で実現されている制御モジュールと統合することは、不可能ではなくとも困難である。
【課題を解決するための手段】
【０００９】
プロセスプラントの構成を容易にするためのシステムが開示されている。該システムはプロセスグラフィックスエディタとプロセスモジュールエディタとを含み得る。プロセスグラフィックスエディタはプロセスプラント内の物理的なエンティティのグラフィック表現の作成および／または修正を容易にし得る。プロセスグラフィックスエディタを使用して作成されるおよび／または修正されるグラフィックス表現は、例えばワークステーションのモニタ上などディスプレイ装置で表示されてもよい。プロセスモジュールエディタはプロセスモジュールの作成および／または修正を容易にし得る。プロセスモジュールはプロセスプラント内の１つ以上の対応する物理的なエンティティを表す１つ以上の相互接続されるプロセスオブジェクトを含んでよい。プロセスモジュールの中のプロセスオブジェクトの０個、１個、以上がプロセスプラント内の物理的なエンティティのシミュレーション／モデル化動作のためのシミュレーション機能および／またはモデル化機能を含んでよい。
【００１０】
該システムは、プロセスグラフィックスエディタとプロセスモジュールエディタに通信可能に結合されている監視プログラムモジュール（例えば監視プログラムアプリケーション）も含んでよい。監視プログラムモジュールが、プロセスグラフィックスエディタを使用してプロセスプラント内の物理エンティティのグラフィック表現に行われる変更を検知できる場合がある。このような変更の検知に応えて、監視プログラムモジュールはプロセスモジュールエディタに、もしあれば、プロセスモジュールに対応して、物理エンティティのグラフィック表現に対応する変更を加えるように指令を発し得る。
【００１１】
選択的に、監視プログラムモジュールはプロセスモジュールエディタを使用してプロセスモジュールに対して加えられる変更を検知できる可能性がある。このような変更の検知に応えて、監視プログラムモジュールはプロセスグラフィックスエディタに、もしあれば、プロセスモジュールに対応して、物理エンティティのグラフィック表現に対応する変更を加えるように指令を発し得る。
【発明を実施するための最良の形態】
【００１２】
図１を参照すると、スマートプロセスオブジェクトがプラント環境の中で強化された制御とシミュレーションを提供するために、ともに制御モジュールと統合されてもよいプロセスグラフィックディスプレイとプロセスモジュールを形成するために使用されるプロセスプラント１０の一例が詳細に描かれている。特に、プロセスプラント１０は、各々が、例えばＦｉｅｌｄｂｕｓインタフェース、Ｐｒｏｆｉｔｂｕｓインタフェース、ＨＡＲＴインタフェース、標準４−２０ｍａインタフェース等であってもよい、入力／出力（Ｉ／Ｏ）装置またはカード１８を介して１台以上のフィールドデバイス１４および１６に接続されている、１台以上のコントローラ１２を有する分散プロセス制御システムを使用している。コントローラ１２は、例えばイーサネット（登録商標）リンクであってもよいデータハイウェイ２４を介して、１つ以上のホストワークステーションまたはオペレータワークステーション２０と２２にも結合されている。データベース２８はデータハイウェイ２４に接続されてよく、パラメータ、ステータス、およびプラント１０内のコントローラおよびフィールドデバイスと関連付けられている他のデータを収集し、記憶するデータヒストリアンとして、およびコントローラ１２およびフィールドデバイス１４と１６にダウンロードされ、それらの中に記憶されるようなプラント１０の中のプロセス制御システムの現在の構成を記憶する構成データベースとして動作する。コントローラ１２、Ｉ／Ｏカード１８およびフィールドデバイス１４と１６は、通常、場合により厳しいプラント環境の中で下方におよびプラント環境全体に位置しているが、オペレータワークステーション２０と２２およびデータベース２８は通常コントロールルーム内、あるいはコントローラまたは保守人員が容易に評価できる他のあまり厳しくない環境に配置される。
【００１３】
公知のように、一例としてエマーソンプロセスマネジメント（Ｅｍｅｒｓｏｎ  Ｐｒｏｃｅｓｓ  Ｍａｎａｇｅｍｅｎｔ）によって販売されているＤｅｌｔａＶ（登録商標）コントローラであってもよいコントローラ１２の各々は、任意の数の異なった、個別に実行される制御モジュールまたはブロック２９を使用して制御戦略を実現するコントローラアプリケーションを記憶し、実行する。制御モジュール２９の各々は、一般的に機能ブロックと呼ばれているものから構成することができ、各機能ブロックは全体的な制御ルーチンの一部つまりサブルーチンであり、プロセスプラント１０の中でプロセス制御ループを実現するために（リンクと呼ばれる通信を介して）他の機能ブロックと連動して動作する。周知のように、オブジェクト指向プログラミングプロトコル内でオブジェクトであってもよい機能ブロックは、通常、送信機、センサ、または他のプロセスパラメータ測定装置と関連付けられているもの等の入力機能、ＰＩＤ、ファジー論理当制御を実行する制御ルーチンと関連付けられているもの等の制御機能、またはプロセスプラント１０内でなんらかの物理的な機能を実行するためにバルブ等の何らかのデバイスの動作を制御する出力機能の内の１つを実行する。言うまでもなく、モデル予測コントローラ（ＭＰＣ）、オプティマイザ等のハイブリッドタイプおよび他のタイプの複雑な機能ブロックが存在する。ＦｉｅｌｄｂｕｓプロトコルおよびＤｅｌｔａＶ（登録商標）システムプロトコルは、オブジェクト指向プログラミングプロトコルで設計され、実現される制御モジュールと機能ブロックを使用する一方で、制御モジュールは例えば順次機能ブロック、ラダー論理回路等を含む任意の所望の制御プログラミングスキームを使用して設計することができ、機能ブロックまたは任意の他の特定のプログラミング技法を使用して設計され、実現されることに制限されるものではない。
【００１４】
図１に描かれているプラント１０では、コントローラ１２に接続されているフィールドデバイス１４と１６は標準４−２０ｍａデバイスであってよく、プロセッサとメモリを含む、あるいは他の任意の所望のタイプのデバイスであってもよい、ＨＡＲＴ（登録商標）、Ｐｒｏｆｉｔｂｕｓ（登録商標）、またはＦＯＵＮＤＡＴＩＯＮ（登録商標）Ｆｉｅｌｄｂｕｓフィールドデバイス等のスマートフィールドデバイスであってもよい。（図１で参照番号１６を付与されている）Ｆｉｅｌｄｂｕｓ（登録商標）フィールドデバイス等のこれらデバイスのいくつかは、コントローラ１２内で実現される制御戦略と関連付けられる、機能ブロック等のモジュールまたはサブモジュールを記憶し、実行してもよい。図１にＦｉｅｌｄｂｕｓ（登録商標）デバイス１６の２台の異なるデバイスの中に配置されるものとして図１に描かれている機能ブロック３０は、周知のようにプロセス制御を実現するためにコントローラ１２の中で制御モジュール２９の実行と関連して実行されてもよい。言うまでもなく、フィールドデバイス１４と１６はセンサ、バルブ、送信機、ポジショナ等の任意のタイプのデバイスであってよく、Ｉ／Ｏデバイス１８はＨＡＲＴ（登録商標）、Ｆｉｅｌｄｂｕｓ（登録商標）、Ｐｒｏｆｉｔｂｕｓ（登録商標）等の任意の所望の通信プロトコルまたはコントローラプロトコルに準拠する任意のタイプのＩ／Ｏデバイスであってもよい。
【００１５】
図１のプロセスプラント１０では、ワークステーション２０は、プロセスプラント１０の中で接続されているデバイス、装置等に関して機能を表示して、提供するために（他のタイプのユーザもユーザタイプについてカスタマイズされたディスプレイ層と関連して本明細書に後述されるように存在してもよいが、本明細書では構成エンジニアおよびオペレータと呼ばれることもある）任意の許可されたユーザがアクセスできるオペレータインタフェースアプリケーションおよび他のデータ構造３２の一組を含む。該一組のオペレータインタフェースアプリケーション３２は、ワークステーション２０のメモリ３４に記憶され、一組のアプリケーション３２の中のアプリケーションまたはエンティティの各々はワークステーション２０と関連するプロセッサ３６で実行されるように適応される。一組のアプリケーション３２全体がワークステーション２０に記憶されているものとして描かれているが、これらのアプリケーションまたは他のエンティティのいくつかはプラント１０の中の、またはプラント１０に関連付けられた他のワークステーションまたはコンピュータデバイスに記憶され、実行されるであろう。さらに、一組のアプリケーションはワークステーション２０と関連付けられているディスプレイ画面３７に、または携帯端末、ラップトップコンピュータ、他のワークステーション、プリンタ等を含む他の所望のディスプレイ画面またはディスプレイ装置にディスプレイ出力を提供できる。同様に、一組のアプリケーション３２の中のアプリケーションは分割され、２台以上のコンピュータまたは機械上で実行されてよく、相互に連動して動作するように構成されてもよい。
【００１６】
一般的に、一組のアプリケーション３２によって、３つの異なるタイプのエンティティの作成と使用が可能になり、その動作は、強化された制御機能、シミュレーション機能および表示機能をプロセスプラント１０の中で提供するためにともに統合されてもよい。より詳細には、一組のアプリケーション３２は（一般的にはプロセスプラントの一部に関するオペレータディスプレイを提供する）プロセスグラフィックディスプレイ３５、（一般的にはプロセスプラントの一部のシミュレーションを提供する）プロセスモジュール３９、および一般的にはプロセスのオンライン制御を提供または実行する、制御モジュール２９等のプロセス制御モジュールを作成し、実現するために使用されてもよい。プロセス制御モジュール２９は概して技術で周知であり、機能ブロック制御モジュール等の任意のタイプの制御モジュールを含んでよい。より詳細に後述されるプロセスグラフィックディスプレイ要素３５は、オペレータ等のユーザに、プロセスプラントおよびその中の要素の動作、構成またはセットアップについての情報を提供するために、一般的にはオペレータ、エンジニアまたは他のディスプレイによって使用される要素である。プロセスモジュール３９は、通常プロセスグラフィックディスプレイ要素３５に密接に結び付けられ、プロセスプラントの、あるいはプロセスグラフィックディスプレイ３５に描かれている方法で接続されているその中の異なる要素のいくつかの動作のシミュレーションを実行するために使用されてもよい。プロセスグラフィックディスプレイ３５およびプロセスモジュール３９は、ラップトップ型コンピュータ、携帯端末等を含む、プロセス制御プラント１０に関連付けられている任意の他のコンピュータにダウンロードされ、その中で実行できるであろうが、プロセスグラフィックディスプレイ３５およびプロセスモジュール３９は、ワークステーション２０と２２に記憶され、それらによって実行されるものとして描かれている。
【００１７】
図２は、ワークステーション２０の一組のアプリケーション３２の中のアプリケーションとデータ構造または他のエンティティのいくつかを示している。特に、一組のアプリケーション３２は制御モジュール、プロセスモジュール、および制御モジュール、（プロセスフローモジュールとも呼ばれる）プロセスモジュール、および関連グラフィックディスプレイを作成するために構成エンジニアによって使用されるグラフィックディスプレイ構成アプリケーション３８を含む。制御モジュール構成アプリケーション３８は任意の標準的な、または公知の制御モジュール構成アプリケーションであってもよいが、プロセスモジュールおよびグラフィックディスプレイ構成アプリケーション（複数の場合がある）は１つ以上のスマートプロセスオブジェクトを使用してプロセスモジュールおよびグラフィックディスプレイを作成してよく、その性質がより詳細に後述されるであろう。またさらに、プロセスモジュールおよびプロセスグラフィック構成アプリケーション３８は個別に示される一方、１つの構成アプリケーションはこれらのタイプの要素の両方ともを作成可能とする。
【００１８】
スマートプロセスオブジェクト４２のライブラリ４０は、プロセスモジュール３９およびグラフィックディスプレイ３５を作成するために構成アプリケーション３８によってアクセスされ、コピーされ、使用され得る例すなわちテンプレートのスマートプロセスオブジェクト４２を含む。理解されるように、構成アプリケーション３８は、１つ以上のプロセスモジュール３９を作成するために使用されてよく、その各々は１つ以上のスマートプロセスオブジェクト４２から構成されるあるいは作成され、プロセスモジュールメモリ４６に記憶されている１つ以上のプロセスフローまたはシミュレーションアルゴリズム４５を含んでよい。さらに、構成アプリケーション３８は、１つ以上のグラフィックディスプレイ３５を作成するために使用されてよく、その各々は１つ以上のスマートプロセスオブジェクト４２から構成される、あるいは作成され、ともに接続されている任意の数のディスプレイ要素を含んでよい。グラフィックディスプレイ３５ｂの内の１つは拡大された形式で図２に描かれており、パイプ、導管、電力ケーブル、コンベヤ等であってもよい接続要素によって相互接続されている、バルブ、タンク、センサおよびフロートランスミッタ等のプロセス要素の集合の描写を含む。
【００１９】
実行エンジン４８は、グラフィックディスプレイ３５によって定義されるようにオペレータ向けの１つ以上のプロセスディスプレイを作成するために、およびプロセスモジュール３９と関連付けられるシミュレーション機能を実現するために実行時中にグラフィックディスプレイ３５とプロセスモジュール３９の各々を操作するまたは実現する。実行エンジン４８は、全体をプロセスモジュール３９で実現される論理、および特にそれらのモジュールの中のスマートプロセスオブジェクトを定義する規則データベース５０を使用してもよい。実行エンジン４８は、プロセスモジュール３９の機能を実現するためにプロセスモジュール３９の中のみではなく、プラント１０の中でもプロセス要素間の接続を定義する接続マトリクス５２を使用してもよい。
【００２０】
図２は、より詳細にスマートプロセスオブジェクト４２ｅの内の１つを示している。スマートプロセスオブジェクト４２ｅはテンプレートスマートプロセスオブジェクトの内の１つであるとして描かれているが、他のスマートプロセスオブジェクトが概して、スマートプロセスオブジェクト４２ｅに関して説明されているように、同じ、または類似する要素、特長、パラメータ等を含むこと、およびこれらの要素、特長およびパラメータの詳細または値がそのスマートプロセスオブジェクトの性質と用途に応じて、スマートプロセスオブジェクトごとに変更、または変えられてもよいことが理解されるであろう。さらに、スマートプロセスオブジェクト４２ｅはオブジェクト指向プログラミング環境の中のオブジェクトであってよく、したがってデータストア、入力と出力、およびそれと関連付けられるメソッドを含んでよい一方、このスマートプロセスオブジェクトは任意の他の所望のプログラミングパラダイムまたはプロトコルによって作成され、その中で実現されてもよい。
【００２１】
理解されるように、インスタンスを作成される前のスマートプロセスオブジェクト４２ｅは、図１のプロセスプラント１０の中の物理エンティティまたは論理エンティティ等のある特定のタイプのエンティティと関連付けられているオブジェクトである。しかしながら、コピーされ、インスタンスを作成された後、スマートプロセスオブジェクト４２ｅはプロセスプラントの中のある特定のエンティティに結び付けられてもよい。いずれの場合においても、スマートプロセスオブジェクト４２ｅは、スマートプロセスオブジェクト４２ｅが結び付けられている論理エンティティから受信され、あるいは論理エンティティに関するデータを記憶するために使用されるスマートプロセスデータストア５３を含む。データストア５３は、製造メーカ、改訂、名称、種別等の、スマートプロセスオブジェクト４２ｅが関連するエンティティについての一般的な情報または恒久的な情報を記憶するデータストア５３ａを含む。データストア５３ｂは、パラメータデータ、ステータスデータ、入力データと出力データ、コスト、またはそれがプロセスプラント１０の中に過去に存在したとき、または現在存在しているときの、エンティティと関連付けられるデータを含む、スマートプロセスオブジェクト４２ｅが関連するエンティティについての他のデータ等の可変データまたは変化するデータを記憶してもよい。言うまでもなく、スマートプロセスオブジェクト４２ｅは、任意の所望の通信リンクを介してエンティティ自体から、イーサネット（登録商標）バス２４を介してヒストリアン２８から、または任意の他の所望の方法で、周期的に、または非周期的にこのデータ（例えばコストデータ）を受信するように構成、あるいはプログラミングされてもよい。データストア５３ｃは、スマートプロセスオブジェクト４２ｅが関連し、図１のワークステーション２０と関連付けられている画面３７等の、オペレータインタフェースを介してオペレータへの実際のディスプレイのために使用されるエンティティのグラフィック表現を記憶してもよい。言うまでもなく、グラフィック表現は、パラメータによって定義される情報、またはデータストア５３ｂに記憶されるようなエンティティについての他の可変データ等のエンティティについての情報のプレースホルダ（データストア５３ｃ内で下線により記される）を含んでよい。このパラメータデータは、ディスプレイ装置３７上でグラフィックディスプレイ３５の内の１つの一部としてオペレータに提示されるとき、グラフィックプレースホルダに表示されてもよい。グラフィック表現（およびスマートプロセスオブジェクト４２ｅ）は、オペレータまたは構成エンジニアが、グラフィック表現によって描かれているように、プロセス要素に上流または下流の構成要素を取り付けることが可能となる（データストア５３ｃの中で「Ｘ」で記される）所定の接続点も含んでよい。言うまでもなく、これらの接続点により、スマートプロセスオブジェクト４２ｅは、プロセスモジュール内で構成されるものとしてそのスマートオブジェクトに接続される要素を認識することも可能となり、パイプ、ダクト等、その要素等に関連付けられるストリーム等、使用されなければならないひとつのタイプの接続要素を指定してもよい。
【００２２】
データストア５３ｃは、選択的に複数のグラフィック表現を記憶してもよい。例えば、異なるグラフィック表現はエンジニアリングビュー、保守ビュー、オペレータビュー、管理者ビュー、トレーナービュー、練習生ビュー等の異なるビューに対応してもよい。特定のグラフィック表現は、例えば特定のビューのためにグラフィックディスプレイを作成する際に活用されてもよい。グラフィック表現を作成するためのシステムおよび方法の一例は、「プロセス構成および制御環境へのグラフィックスの統合（ＧＲＡＰＨＩＣＳ  ＩＮＴＥＧＲＡＴＩＯＮ  ＩＮＴＯ  Ａ  ＰＲＯＣＥＳＳ  ＣＯＮＦＩＧＵＲＡＴＩＯＮ  ＡＮＤ  ＣＯＮＴＲＯＬ  ＥＮＶＩＲＯＮＭＥＮＴ）」（代理人整理番号第０６００５／４１１１６号）と題される一般的に所有されている出願に説明されている。言うまでもなく、グラフィック表現を作成するための他の適切なシステムおよび方法も使用できる。
【００２３】
スマートプロセスオブジェクト４２ｅは、スマートプロセスオブジェクト４２ｅが使用されるプロセスモジュールの内部または外部で他のスマートプロセスオブジェクトとの通信を可能にするために１つ以上の入力５４および出力５６も含んでよい。他のスマートプロセスオブジェクトへの入力５４と出力５６の接続は、他のスマートプロセスオブジェクトをこれらの入力と出力に単に接続することにより、あるいはスマートプロセスオブジェクト間で発生しなければならない特定の通信を指定することにより、プロセスモジュールの構成中に構成エンジニアによって構成されてもよい。これらの入力と出力のいくつかは、前述されたようにスマートプロセスオブジェクトのための所定の接続ポイントでスマートプロセスオブジェクトに接続されるものとして定義されてもよい。これらの入力５４と出力５６は、規則データベース５０内の一組の規則およびプラント１０の中の異なるデバイスまたはエンティティの間で接続を定義する接続マトリクス５２によって決定または定義されてもよい。それらと関連付けられているデータストアまたはバッファを含む入力５４と出力５６は、一般的に、他のスマートプロセスオブジェクトからスマートプロセスオブジェクト４２ｅにデータの通信を提供するために、あるいはスマートプロセスオブジェクト４２ｅの中に記憶され、あるいはスマートプロセスオブジェクト４２ｅによって生成されるデータの通信を他のスマートプロセスオブジェクトに提供するために使用される。これらの入力および出力は、スマートプロセスオブジェクト４２ｅと、コントローラ１２、フィールドデバイス１４、１６等の中の制御モジュール等のプロセス制御システム内の他のオブジェクトとの間で通信を提供するために使用されてもよい。
【００２４】
図２に描かれているように、スマートプロセスオブジェクト４２ｅは、スマートプロセスオブジェクト４２ｅが使用されるプロセスモジュールの実行中にスマートプロセスオブジェクト４２ｅによって実現されるアルゴリズムであってもよい（図２でメソッド６０ａ、６０ｂ、および６０ｃとして描かれている）０個、１個以上個のメソッド６０を記憶するために使用されるメソッド記憶装置５８も含む。一般的に、メソッド記憶装置５８に記憶されているメソッド６０は、プロセスプラント１０またはプラント１０内のエンティティについての情報を突き止めるために、データ記憶部分５３ａと５３ｂの中に記憶されているデータ、および他のスマートプロセスオブジェクトから取得されるデータ、または入力５４と出力５６を介して構成データベースまたはヒストリアン２８等の他のソースからのデータも使用する。例えば、メソッド６０はスマートプロセスオブジェクト４２ｅによって定義されるエンティティと関連付けられる質が劣るまたは不良の動作状態、プロセスプラント１０の中のそのまたは他のエンティティと関連付けられるエラー等を決定してもよい。メソッド６０は、スマートプロセスオブジェクトのタイプまたはクラスに基づいて事前に設定または提供されてよく、毎回スマートプロセスオブジェクト４２ｅが実行時中に実行エンジン４８の中で実行されるたびに実行されるであろう。スマートプロセスオブジェクト４２ｅ等のスマートプロセスオブジェクトの中で提供されてもよいいくつかの例示的なメソッド６０は漏れ、デッドバンド、不動作時間、移動、可変、状態監視、コスト計算、またはエンティティと関連付けられる他の状態を検知することを含む。
【００２５】
メソッド６０は、そのプロセスエンティティを通って流れる材料に関してスマートプロセスオブジェクトと関連付けられるプロセスエンティティの動作をシミュレーションする上で役立てるめに提供されてもよい。このようにして、メソッド６０は、要素の動作をシミュレーションし、提供されている入力に基づいて予想出力を計算するために、質量平衡、エネルギーバランス、流量、温度、組成、蒸気状態、およびプラント１０の中で材料と関連付けられる他のシステムレベルまたはストリームレベルのパラメータを計算するために提供されてもよい。言うまでもなく、これらはスマートプロセスオブジェクト４２ｅに記憶され、それによって実行できるメソッドの内の数個に過ぎず、使用され得る他の多くのメソッドがあり、このようなメソッドは、通常表現されているエンティティのタイプ、他の要因のみではなく、そのエンティティがプロセスプラント内でどのように接続され、使用されるのかによっても決定されている。スマートプロセスオブジェクト４２ｅがシステムレベルの状態、エラー等を検知するメソッドを記憶し、実行してもよい一方、これらのメソッドはプロセス制御モジュールとループ等のデバイス、論理要素、および他の非システムレベルエンティティについての他の情報を決定するために使用されてもよいことに留意することが重要である。所望の場合、メソッド６０は、Ｃ、Ｃ＋＋、Ｃ＃等の任意の所望のプログラミング言語でプログラミング、または提供されてもよいか、あるいは実行中にスマートプロセスオブジェクト４２ｅのために実行されなければならない規則データベース５０の中で適用可能な規則に参照、あるいは適用可能な規則を定義してもよい。
【００２６】
所望の場合、各スマートプロセスオブジェクトは、プロセスモジュール内で接続される場合にスマートプロセスオブジェクトのシミュレーション動作を定義するために使用されてもよい適用可能なアルゴリズムまたはメソッドのライブラリを含んでよい。このようなライブラリは図２のスマートプロセスオブジェクト４２ｅのためのプルダウンメニュー６１に描かれており、類似するメニューは各々の他のスマートプロセスオブジェクトと関連付けられてもよい。構成エンジニアは、このスマートプロセスオブジェクトが、例えばプルダウンメニュー６１を介して（メソッド１、メソッド２等と呼ばれている）シミュレーションアルゴリズムのライブラリの内の１つを選択することによりプロセスモジュール３９に格納される場合にスマートプロセスオブジェクトのシミュレーション動作を定義してもよい。このようにして、構成エンジニアは、スマートプロセスオブジェクトがモデル化するために使用されているプロセスのタイプまたは性質に依存しているスマートプロセスオブジェクトのために異なるシミュレーション動作を定義してもよい。
【００２７】
所望の場合、構成エンジニアは、スマートプロセスブロックによって定義されるプロセス要素のシミュレーション動作を定義するために、代わりに独自仕様のアルゴリズムまたは他のユーザによって供給されたアルゴリズムを使用してもよい。（プルダウンメニュー６１で「ユーザ定義」エントリとして描かれている）このようなユーザによって定義されたアルゴリズムは、そのスマートプロセスオブジェクトがプロセスモジュール３９の中に格納されるか、あるいはその中で使用される場合にスマートプロセスオブジェクトに提供され、その中に記憶されてもよい。この機能により、ユーザはシミュレーション動作をカスタマイズし、それによりさらに優れた、またはさらに正確なシミュレーションを提供できる。所望の場合、およびさらに詳しく後述されるように、スマートプロセスオブジェクト４２ｅまたは各プロセスモジュール３９は、スマートプロセスオブジェクト内のシミュレーションアルゴリズムの使用を無効にし、代わりにプロセスモジュールの動作を、ＨＹＳＹＳ（登録商標）によって提供されるもの等のハイファイシミュレーションパッケージまたはプログラムによって決定させる（電子スイッチまたはフラグ等の）オペレータが作動可能なスイッチを含んでよい。このケースでは、スマートプロセスオブジェクトまたはプロセスモジュールは、スマートプロセスオブジェクト自体の中でシミュレーションアルゴリズムを使用することと対照的にハイファイシミュレーションからシミュレーションによるパラメータデータを取得する。
【００２８】
グラフィックディスプレイ３５またはプロセスモジュール３９の実行エンジン４８による実行中、エンジン４８は、グラフィックディスプレイ３５またはプロセスモジュール３９内のスマートプロセスオブジェクトの各々に入力５４と出力５６によって定義される通信を実現し、メソッド６０によって提供される機能を実行するために、それらのオブジェクトの各々にメソッド６０を実現してもよい。上記に注記されたように、メソッド６０の機能はスマートプロセスオブジェクトの中のプログラミングに位置してもよいか、あるいはそれらの規則によって定義される機能を実現するために、スマートプロセスオブジェクトのタイプ、クラス、識別、タグ名等に基づいて、エンジン４８が実行する規則データベース５０内の一組の規則によって定義されてもよい。
【００２９】
スマートプロセスオブジェクト４２ｅのインスタンスが、スマートプロセスオブジェクト４２ｅが関連付けられるプロセスモジュールの関連でタグまたは一意の名前を有しており、このタグまたは一意の名前がスマートプロセスオブジェクト４２ｅへ、およびスマートプロセスオブジェクト４２ｅから通信を提供するために使用されてよく、実行時中に実行エンジン４８によって参照されてもよいことを注記されたい。プロセスモジュールタグは制御システム構成の中で一意でなければならない。このタグ付け規約により、プロセスモジュール３９の中の要素は、プロセスグラフィックディスプレイ３５、プロセスモジュール３９、および制御モジュール２９の他の中の要素によっても参照できる。またさらに、スマートプロセスオブジェクト４２ｅのパラメータは単純な値のような単純なパラメータ、構造化されたパラメータ、または予想される装置とそれと関連付けられている属性を知っているスマートパラメータである場合がある。スマートパラメータは、すべての信号が同じ装置内で送信されているか、あるいは適切に変換されていることを保証するために、プロセス規則エンジンまたは実行エンジン４８によって解釈、使用できる。スマート規則は、オペレータ向けのスマートアラーム戦略および／またはインタフェースを作成するためにスマートプロセスオブジェクト（またはプロセスモジュール）のためのアラームのグループをオンにし、オフにするために使用することもできる。またさらに、スマートプロセスオブジェクトクラスは、スマートプロセスオブジェクトと、それが解釈またはアクセスする必要のあるプロセス変数との間の公知のリンケージを提供するために、プラント１０のプロセス制御戦略の中で装置とモジュールクラスと関連付けることができる。
【００３０】
スマートプロセスオブジェクトは、プロセスグラフィックディスプレイまたはプロセスモジュールの中で使用されるとき、これらのスマートオブジェクトがオフモード、起動モード、および通常モード等の実行時中の異なるモードにされてもよいように動作モード、ステータス、アラーム動作も含んでよく、その現在の動作状態に基づいてオブジェクトと関連付けられるステータスを提供してよく、パラメータ範囲外、限定、高可変性等の検知された状態に基づいてアラームを提供してもよい。スマートプロセスオブジェクトは、それらをクラスライブラリで分類する、複合構造でともに収集する等を行うことが可能となるクラス／サブクラス階層も有してもよい。さらに、スマートプロセスオブジェクトは、スマートプロセスオブジェクトが、その関連エンティティがいつビジーなのか、あるいは例えばプラント１０内でバッチ制御プロセスによっていつ取得されるのかを認識可能とするために、制御モジュールおよび他のオブジェクト等の他の要素からの情報を活用してもよい。
【００３１】
スマートプロセスオブジェクトは、ポンプ、タンク、バルブ等の物理装置、あるいはプロセス領域、測定、またはアクチュエータ、制御戦略等の論理エンティティ等の任意の所望のプロセスエンティティと関連付けられてもよい。いくつかのケースでは、スマートプロセスオブジェクトは、コネクタ、このような配管、導管、配線、コンベヤ、あるいは材料、電気、ガス等をプロセスの中のある点から別の点へ移動する任意の他のデバイスまたはエンティティと関連付けられてもよい。本明細書ではスマートリンクまたはコネクタ要素と呼ばれることもあるコネクタと関連付けられているスマートプロセスオブジェクトには（実際のデバイスまたはコネクタ自体にタグが付けられていない、あるいはプロセスプラント１０内で通信できない場合でも）タグも付けられ、一般的にはプロセスの中の他の要素間の材料の流れを表すために使用される。
【００３２】
スマートリンクは、異なる材料または現象（電気等）がいかにして接続（例えば、蒸気、電気、水、汚水等）を通って流れるのかを定義する特性またはパラメータを含む。これらのパラメータは、コネクタを通る流れ（一般的な速度、摩擦係数、乱流または非乱流、電磁のような流れのタイプ等）のタイプと性質およびコネクタを通る流れの考えられる１つ以上の方向を示し得る。スマートリンクは、スマートリンクが接続するソースおよび宛先オブジェクトの単位が一致することを保証するプログラミングまたはメソッドを含んでよく、一致しない場合には変換を実行してもよい。スマートリンクのメソッドは、実際のコネクタを通る流れの速度または性質、物理的な接続の長さとサイズ、トランスポート遅延等を推定するためにモデルまたはアルゴリズムを使用してコネクタを通る流れをモデル化してもよい。（摩擦パラメータ等の）スマートプロセスオブジェクトのために記憶されているパラメータがこれらのメソッドで使用されてもよい。したがって、本質的には、スマートリンクまたはコネクタ要素は、スマートプロセスオブジェクトが他の上流オブジェクトと下流オブジェクトまたはエンティティを認識できるようにする。スマートリンクが、例えば他のオブジェクトとの間の接続、システム内の液体、ガス、電気等の流体のタイプ、他のエンティティがこのスマートプロセスオブジェクトのエンティティの上流および下流にあるエンティティの上流側と下流側、任意の所望の、または便宜的な材料、流体、電流等の方向を定義してもよいことは言うまでもない。一実施形態では、実質的にはプロセスフローモジュールの実行の前に行列５２が作成されてよく、プラント内の異なるデバイス間の相互接続をスマートリンクのために、したがって異なるスマートプロセスオブジェクト間の相互接続を定義してもよい。つまり、実行エンジン４８は上流エンティティと下流エンティティを確定し、それによりスマートプロセスオブジェクト及びスマートプロセスオブジェクトと関連付けられるメソッドの間の通信を定義するために行列５２を使用してもよい。またさらに、一組以上の規則が、スマートプロセスオブジェクト内のメソッドについて必要に応じて相互に反応し合うため、および必要に応じて相互にデータを取得するためにスマートプロセスオブジェクトによって使用されるために、ならびに出力接続と関連付けられるスマートオブジェクトの影響を解消するために提供されてもよい。
【００３３】
所望の場合、スマートプロセスオブジェクト４２ｅは、オブジェクトのタイプに適用可能であってよく、あるいはスマートプロセスオブジェクト４２ｅが関連するデバイスの（臨界および用途に応じて）インスタンスに特化された重要な文書に対するＵＲＬ等のホットリンクも含んでよい。該文書はユーザに特定のものであってもよいのみではなくベンダによって供給されてもよい。文書のいくつかの例は、構成、起動、および停止の手順、操作と保守の文書を含む。所望の場合、オペレータはオブジェクトまたは関連デバイスのためにインスタンスに特化した（存在する場合）総称的な文書を立ち上げるためにオペレータディスプレイに表示されるようにオブジェクトをクリックしてもよい。また、オペレータは、システムソフトウェアに関係なく、保守要求、操作上の問題の記録等の文書を追加／削除／変更できることがある。さらに、これらのホットリンクは、オペレータインタフェースの中のオブジェクトに知識リンクを追加する能力を提供するため、オブジェクトに関連する適切な情報へのクイックナビゲーションに備えるため、およびカスタマに特化したオブジェクトタイプに、またはオブジェクトに特化したインスタンスに特定の作業指示書を追加する能力を提供するために、ユーザによって設定可能または変更可能であってもよい。
【００３４】
プロセスモジュールおよびプロセスグラフィックスは異なるスマートプロセスオブジェクトの相互接続によりともに作成されるものとして前述されているが、それらは個別に作成されてもよい。例えば、プロセスグラフィックはスマートプロセスオブジェクトを使用して作成されてよく、完了時、そのグラフィックのためのプロセスモジュールはグラフィックディスプレイの中のグラフィックス要素およびそれらの相互接続に基づいて生成されてもよい。代わりに、プロセスモジュールはスマートプロセスオブジェクトを使用して最初に作成されてよく、いったん作成されると、そのプロセスモジュールのためのグラフィックディスプレイはプロセスモジュールを作成するために使用されるスマートプロセスオブジェクト内のグラフィックディスプレイ要素を使用して構成アプリケーション３８によって自動的に生成されてもよい。またさらに、プロセスモジュールとグラフィックディスプレイは個別に作成されてよく、これら２つのエンティティの中の個々の要素は相互に参照する（例えば、グラフィックディスプレイとプロセスモジュールの中の要素のタグ特性を使用する）ことにより手動でともに結び付けられてもよい。この機構を通じて、スマートプロセスオブジェクトは複数のディスプレイによって参照され得る。いずれの場合においても、いったん作成されると、プロセスグラフィックディスプレイおよび関連付けられるプロセスモジュールは、それらは所望によりまたは必要に応じてパラメータと情報を相互に通信するが、無関係にまたは個別に実行されてもよい。
【００３５】
より包括的にするため、プロセスグラフィックディスプレイとプロセスモジュール内で、あるいはプロセスグラフィックディスプレイとプロセスモジュールを作成するために使用されてもよいスマートプロセスオブジェクトの特定の考えられる機能および例が、より詳細に後述されるであろう。その後、説明される要素と特長を使用して作成されるプロセスグラフィックディスプレイとプロセスモジュールが高度な制御機能とシミュレーション機能を提供するために制御モジュールとどのように統合されてもよいのかが説明される。言うまでもなく、スマートプロセスオブジェクト要素と特長が本明細書に説明されている要素および特長に制限されず、他の特長および要素が、そのように望まれる場合には、プロセスグラフィックディスプレイとプロセスモジュールの内の１つまたは両方の中で使用できる、あるいはプロセスグラフィックディスプレイとプロセスモジュールの内の１つまたは両方を作成するために使用できることが理解されるであろう。
【００３６】
一般的に、所定のグラフィックス要素のセットが、ユーザがプロセスプラントを反映するオペレータディスプレイまたはグラフィックディスプレイを構築可能とするために構成アプリケーションに設けられてもよい。これらのグラフィックス要素はオンライン測定および制御システムと接続するアクチュエータを動的に示すことを目的とする。さらに、プロセス動作を反映する未測定のパラメータは、プロセスモジュールで提供されるオンラインプロセスシミュレーションを使用して計算されてもよく、関連グラフィックディスプレイの一体化した部分として示されてもよい。
【００３７】
さらに、エンジニアリングまたはトレーニングシミュレーションのために使用されるオフライン環境では、プロセスモジュールによって提供されるプロセスシミュレーションは、グラフィックス要素の中のプロセス測定値の代わりに、および関連付けられた制御モジュールの中で使用されてもよい。関連付けられたプロセスモジュールによって計算されるこれらの値は、プロセスグラフィックスに描かれている手動外乱値のみではなくアクチュエータ位置または状態にも基づいてもよい。このようにして、グラフィックディスプレイと制御モジュールは、オンライン、つまり制御状況と、オフライン、つまりシミュレーション状況の両方で使用されてもよい。また、グラフィックス要素の静的な部分は多くのケースでは公知のグラフィックスライブラリに含まれている三次元成分と同様に表示されるが、これらのグラフィックス要素の追加の一意の特長またはプロパティ、これらの要素とともに表示される情報、および制御システムＩ／Ｏおよびプロセスシミュレーションモジュールへのリンクは、多くのグラフィックス要素の考えられるタイプと例に関して前述される。
【００３８】
一般的に、スマートプロセスオブジェクトと関連付けられるプロセスモジュールの中のグラフィックス要素とシミュレーションアルゴリズムは、ストリーム要素、プロセス接続要素、アクチュエータ要素、処理要素、測定要素および推定プロパティ要素を含む多くの異なるタイプのプロセス要素の内の１つに該当する。一般的に、ストリーム要素はプロセスプラント内での材料のストリームを定義し、組成、密度、流量、温度、圧力、重量、および／または該材料の流れを定義する任意の他のパラメータを示すためにグラフィックディスプレイに露呈されてもよい。ストリーム要素はプロセスモジュールの入力時に定義され、プロセスモジュールの中の要素に提供され、それによりプロセスモジュールを通過する材料のストリームをモデル化し、グラフィックディスプレイに描くことをできるようにしてもよい。同様に、ストリーム要素は、グラフィックディスプレイの中で、グラフィックディスプレイにより描かれるプロセスプラントの部分の材料出力を描くためにプロセスモジュールの出力時または最後に描かれてもよい。ストリーム要素は、異なるグラフィックディスプレイ（および関連プロセスモジュール）が相互にいかにして接続しているのかを定義するためにも使用されてもよい。例えば、あるプロセスモジュールの出力ストリームは別のプロセスモジュールの入力ストリームであってよく、他のプロセスモジュールの入力ストリームで使用される値を指定してもよい。ストリームは以下の４つの部分、つまり（ｐＨストリーム等の）名前、（流れ入力等の）方向、（流量、圧力、温度等の）測定値、および（窒素、アンモニア等の）組成を含んでよい。ただし、ストリームはそのように所望の場合他のパーツまたはパラメータを有することができるであろう。
【００３９】
プロセス接続要素は、固形物、液体または蒸気、および気体等のプロセスの内部の物質があるデバイスから別のデバイスへいかにして送達または搬送されるのかを定義する。プロセスを通過する材料の流れを明確に描くために、パイプ、ダクト、およびコンベヤを含む三種類の異なったタイプのプロセス接続が使用されてもよい。電気化学プロセス等における電力潮流をアドレス指定するための電気ケーブル等の）他の接続要素も使用されてもよいことは言うまでもない。配管は、通常、液体および高圧蒸気またはプラント内での気体の流れを描くために使用される。一般的にダクトはプラント内の低圧ガスの流れを描く（そしてシミュレーションする）ために使用される。一般的にコンベヤは処理装置間での固形物の移動を描く（そしてシミュレーションする）ために使用される。その結果として、各プロセス接続要素は、パイプ接続、ダクト接続、またはデバイスの入力または出力時に材料を提供するために使用されるコンベヤ接続等の接続のタイプを定義する。
【００４０】
所望の場合、接続により移送されている材料の特性は上流入力により決定される。接続が完了したか否かを定義する接続ステータス変数が加えられるこの情報は、グラフィックディスプレイ上で接続要素の特性として利用できるようにされてもよい。接続要素は処理要素出力、アクチュエータ要素出力またはストリーム要素出力で開始してもよい。同様に、接続要素は処理要素入力、アクチュエータ要素入力またはストリーム入力時に終了してもよい。
【００４１】
接続要素の特性は、カーソルがグラフィックディスプレイの接続要素上に置かれると自動的に表示されてもよい。また、接続要素と関連付けられている特性は接続要素の上に（下記に定義される）測定要素または推定特性要素を置くことにより恒久的なディスプレイに表示されてもよい。所望の場合、接続要素は（ストリーム出力、処理要素出力またはアクチュエータ要素出力等の）要素出力上で左マウスボタンを押し続け、マウスのボタンを押し続ける間にカーソルを要素入力上に配置することにより作成されてもよい。接続が無事に確立されるために、上流要素と下流要素の入力タイプと出力タイプ（パイプ、ダクト、またはコンベヤ）は一致しなければならない。接続は上流要素のタイプを自動的に取る。
【００４２】
所望の場合、配管要素はパイプ接続のようなプロセスグラフィックディスプレイに示され、あるいは描くことができ、ダクト要素（例えば空気またはガス）はダクトとして示すことができ、コンベヤ要素はコンベヤベルトとして示されてもよい。配管要素、ダクト要素およびコンベヤ要素の接続は、処理要素の間で自動的に経路を定義することができ、矢印は流れの方向を示すためにこれらの要素の描写の外部に表示されてもよい。上流出力が２つの接続に共通である場合には、「Ｔ」個の要素はパイプ、ダクト、またはコンベヤの中に含まれてもよい。「Ｔ」個の要素は複数の出力を結合するために使用されてもよい。コンベヤ要素の色または他のグラフィック特性は、運転中／停止中、流れている／流れていない、詰まっている等のそのステータスを示すために変化してもよい。一般的に、コンベヤに沿った材料の流れはコンベヤに接続されているモータ駆動により決定される。したがって（より詳細に後述されるアクチュエータ要素である）モータ駆動アクチュエータはコンベヤに接続されてもよい。さらに、（後述される）測定要素は、コンベヤあるいはパイプまたはダクト内の材料の速度、水分または重量等のコンベヤ、パイプまたはダクト上またはコンベヤ、パイプ、またはダクト内の材料の特性のパイプ要素、ダクト要素またはコンベヤ要素に関連する測定値の公開を可能とするためにパイプ要素、ダクト要素およびコンベヤ要素に接続できる。また、公開された特性要素は、例えば材料の組成等の測定されていないパイプ、ダクト、またはコンベヤ上、またはパイプ、ダクトまたはコンベヤ内の材料の特性を表示するために追加されてもよい。
【００４３】
所望の場合、配管接続要素、ダクト接続要素およびコンベヤ接続要素は、（例えば色の変化により）接続が失われたこと、および（例えば色の変化により）選択された特性（圧力、温度、長さ等）が構成された制限外にある旨をグラフィックに且つ動的に反映してもよい。さらに、関連プロセスモジュールによって計算されるパラメータはグラフィックに公開されてもよい。例えば、上流接続により提供される特性は、接続のステータスが不良であるのか、あるいは良好であるのかに関係なく、接続要素等の１つ以上の選択されたパラメータを制限し、接続要素により移送されている接続要素またはストリームについてオペレータに情報を与えるためにグラフィックディスプレイに公開されてもよい。
【００４４】
一般的に、アクチュエータ要素とは、ストリームに関して何らかの作動機能を実行し、異なる接続要素間、または処理要素と接続要素の間に置かれてもよい要素である。アクチュエータ要素の例は、（アクチュエータ付き）調整弁、（アクチュエータ付き）開閉弁、（モータ付き）ポンプ、（モータ付き）強制通風ファン、（モータ付き）誘引通風ファン、（開閉弁付き）エダクタ、（ドライブ付き）ダンパ、（可変速度モータ付き）フィーダ、（コンベヤ要素に取り付けられてもよい）コンベヤモータドライブ等を含む。
【００４５】
バルブ要素のグラフィック描写は、（例えば、動画による）目に見えないバルブ位置、（例えば、色の変化による）バルブの故障、（例えば、色の変化による）バルブ完全開放／閉鎖位置、およびそのバルブを制御している関連制御ブロックの（数字列または他の表示による）ＡＯ、ＤＯ、ＤＣ、設定点、ＰＶ、ＯＵＴ、モード等を動的に反映してもよい。（プロセスモジュールで使用される）バルブ要素と関連付けられているシミュレーション要素は、吐き出し圧力、質量流、液体温度、液組成、入口圧力および出口圧力等のバルブアクチュエータと関連するパラメータを計算するシミュレーションアルゴリズムを有してもよい。これらのシミュレーションによる、または計算されたパラメータは、そのように所望の場合、プロセスグラフィックに公開されてもよい。ただし、ユーザまたは構成エンジニアは、通常、バルブタイプ（線形、早開き、等しい割合、バルブサイジング等）と開から閉へのストローク時間のみではなく、バルブと関連する制御モジュール内のＡＯブロック、ＤＯブロックまたはＤＣブロックに対する参照も設定しなければならない。言うまでもなくバルブを通る材料へのバルブの作用をシミュレーションするために使用可能なシミュレーションアルゴリズムは、バルブの種別とサイジング情報に依存してもよい。
【００４６】
ポンプ要素のグラフィック描写は（例えば色の変化を使用して）モータステータス、（例えば、文字列を使用して）関連ＤＯまたはＤＣ機能ブロックモードと設定点、（可変速度ドライブが使用されている場合には）モータ速度、ＡＯ設定点、ＰＶ、（可変速度ドライブが使用されている場合には）ＯＵＴモード、および他の所望のパラメータを動的に反映してもよい。同様に、この要素のための（プロセスモジュールで使用される）プロセスシミュレーションは、吐き出し圧力、液組成、液体温度、および質量流等のパラメータを決定する、または計算してよく、そのパラメータはグラフィックディスプレイに開示されてもよい。ユーザはポンプタイプに基づいてポンプ曲線を定義する必要がある場合がある。しかしながら、ユーザはモータ起動／停止に関連するＤＯブロックまたはＤＣブロックに対する参照、（使用されている場合）可変速度ドライブのための関連ＡＯ機能ブロックに対する参照、およびポンプの動作の定義のためのポンプ曲線（例えば圧力対流量）を設定してもよい。
【００４７】
強制通風ファンまたは誘引通風ファンのアクチュエータ要素のグラフィック描写は、モータステータス、ＤＯ機能ブロックモードまたはＤＣ機能ブロックモードと設定点、（可変速度ドライブが使用されている場合には）モータ速度、ＡＯ設定点、（可変速度ドライブが使用される場合）ＰＶ、ＯＵＴ、ＤＯまたはＤＣ機能ブロックモード、および他の所望のパラメータを動的に反映し得る描写を有してもよく、その内のいずれかがグラフィック描写に公開されてもよい。この要素のための（プロセスモジュールで使用される）プロセスシミュレーション要素は、吐き出し圧力、ガス組成、ガス温度、およびガス質量流等のパラメータを決定または計算してよく、そのパラメータはグラフィックディスプレイに公開されてもよい。ユーザはモータ起動／停止のための関連ＤＣブロックに対する参照、（使用されている場合）可変速度ドライブのためのＡＯブロックに対する参照、およびファンのシミュレーションされる動作を定義するためのファン曲線（圧力対流量）を設定してもよい。
【００４８】
いくつかのケースでは、特定のタイプのアクチュエータは、パイプ、ダクト、またはコンベヤ等の特定のタイプの接続にのみ使用されてもよい。以下の表は典型的なアクチュエータ要素の例示的な接続制限を定義する。
【００４９】
【表１】
2007536632.tif 000003
【００５０】
処理要素はいくつかの方法でプラント内において材料またはストリームを処理するプラント装置を含む。一般的に、処理要素に対する、および処理要素からのすべての入力と出力は接続要素を介して行われる。標準処理要素はタンク（縦型と横型）、ヒータ、スタティックミキサー、リアクタ、ミキサー、エアヒータ、および単純な処理アクティビティまたは標準的な処理アクティビティを実行する他の要素を含む。ユーザは、サイズ、体積等、物理的な装置特性とともに要素に対する入力と出力の数を指定してもよい。これらの標準的な処理要素のシミュレーションアルゴリズムおよび静的表現は、それらがユーザによって修正できないように設定されてもよいが、設定時に前述されたように選択可能であってもよい。所望の場合に、他の、（蒸留塔、エバポレータ、セパレータ、ボイラ等の）通常はさらに複雑なプラント装置がカスタム処理要素として実現されてもよいことは言うまでもない。静的表現、このようなカスタム処理要素の入出力数とシミュレーションアルゴリズムは、ユーザインタフェース要件を満たすために修正されてもよい。カスタム処理要素はいったん定義されると、他の処理要素の作成において開始点として再利用または使用されてもよい合成物またはテンプレートとして保存されてもよい。
【００５１】
タンク標準処理要素は、タンクに対するパイプ接続に基づいて設定されてよく、タンク要素は（例えば、動的なアニメーションを使用して）タンク内の水位、および（例えば、色の変化を使用して）１００％また空の水位を動的に反映してもよい。タンクのためのプロセスモジュールシミュレーションは、グラフィックディスプレイを介して、出口温度、出口組成、液体温度およびタンクのシミュレーションによる水位等のパラメータを計算し、公開してもよい。しかしながら、システムにタンクを結び付けるために、ユーザまたは構成エンジニアは、入出力の接続数、タンクに対する完全な接続、（例えば、直径と高さ等の）サイズなどのタンク特性等を設定する必要がある場合がある。
【００５２】
ヒータ処理要素は、グラフィックディスプレイを介して、（例えば、色の変化を使用して）熱伝達率、出口製品温度、入口製品温度、（安定した低下を想定する）出口圧力等を動的に計算し、反映してもよい。ユーザまたは構成エンジニアは、ヒータに対する完全な接続、ヒータ表面積、およびクリーンな状態での熱伝達率を設定する必要がある場合がある。
【００５３】
言うまでもなく、スタティックミキサー、リアクタ、ミキサー、エアヒータ、熱交換器等の他の処理要素は、これらのタイプのデバイスに合わせてある表示機能およびシミュレーション機能を有してもよい。蒸留塔、エバポレータ、セパレータ、ボイラ等の基準外の処理要素は、容器に関連付けられたシミュレーションが、標準的な選択に含まれていない場合にはユーザ定義であるカスタム処理要素を使用してグラフィックに表現されてもよい。これらの要素における処理は、容器の各入力を各出力に関連付けるステップ応答モデルとして記述または定義されてもよい。入力は、ガスおよび／または液体のストリームであり得る。選択的に、ユーザは処理要素の入力と出力の関係性を記述する方程式を定義してよく、これらの方程式はシミュレーションを実行するために要素を使用してプロセスモジュールに記憶されてもよい。所望の場合、いくつかの単純な静的グラフ表現は、ユーザがカスタム処理要素と関連する静的グラフィックを迅速に作成する上で役立つために提供されてもよい。これらの単純なグラフィックが使用される場合には、ユーザは入出力接続の所望の数、およびカスタム処理要素によってサポートされている（パイプ、ダクト、コンベヤ等の）サポート接続のタイプだけを指定する必要がある場合がある。それに応じて、グラフィックアイテムが表示され、オペレータグラフィックの作成で即座に使用できる。所望の場合、プロセス要素の各入力と出力と関連付けられる利得およびあらゆるダイナミクスは、ユーザがシミュレーションアルゴリズムをステップ応答として指定することを選ぶ場合に指定されてもよい。ユーザはカスタムアルゴリズムを選択する場合、シミュレーションアルゴリズムを定義するためにユーザに表現エディタが与えられてもよい。選択された方法に基づき、カスタム処理要素出力の特性は異なって計算されてもよい。さらに、ユーザは個別のソフトウェアアセンブリで定義したアルゴリズムの１つ以上を参照してもよい。
【００５４】
さらに、複数の所定の合成物またはテンプレートがカスタム処理要素を作成するために提供されてもよい。これらのテンプレートは、例えば、出口ガスＯ2、出口ガスＣＯ、生成ストリーム、ボイラドラム水位、およびボイラ通風を計算するカスタムアルゴリズムを有するボイラテンプレートを含んでもよい。このようなテンプレートは、単一の燃料入力に基づいてもよい。しかしながら、テンプレートを修正することにより、複数の燃料でボイラをシミュレーションできる。他の所定のテンプレートは、噴霧乾燥機カスタム処理要素と連動して使用されてよく、セパレータの動作をモデル化するためにステップ応答モデルを含んでよい専用の容器−サイクロンセパレータテンプレートを含んでよい。同様に、コラムテンプレート、噴霧乾燥機、およびエバポレータ本体は、予想プロセス応答を定義するためにステップ応答モデルを活用してもよい。エバポレータでは、エネルギー入力および入力流量の濃度に基づいて、出口流量と蒸気放出の濃度が計算できる。複数のエバポレータ要素は、多重効用蒸発器を作成するために熱交換器とエダクタの要素とともに接続されてもよい。同様に、専用の容器スタックカスタムテンプレート処理要素はボイラ処理要素とともに使用されてもよい。この場合、入口の特性は、そのように所望の場合、修正を行わずに、あるいはスタック内で実行されるエミッション削減を反映するためにスタックを通して持続されてもよい。
【００５５】
グラフィックディスプレイとプロセスモジュールを作成するために使用できる他のタイプの要素は、測定要素とプロパティ要素とを含む。測定要素は、物理的な送信機と関連付けられる測定値にアクセスするためにグラフィックディスプレイで使用されてもよい送信機要素、およびスイッチ要素を含む。一般的に、送信機要素は、不良ステータスまたは不確実なステータス、制御モジュールの中で関連付けられたＡＩ機能ブロックのモード、実際の送信機（センサ）と関連付けられた測定値と測定装置等、あるいは実際の送信機と関連付けられた他のデータを動的に反映してもよい。オフラインモード（またはシミュレーションモード）では、送信機要素は、ＡＩブロックまたはＰＣＩブロックと関連付けられた値より、むしろプロセスモジュールによって提供されるシミュレーション値にアクセスし、表示するために使用されてもよいか、あるいはシミュレーションによる制御ルーチンで使用される測定値として制御ブロック内の関連ＡＩブロックに測定値を提供するために使用されてもよい。送信機要素は、接続要素に、または処理要素に追加することができ、このような送信機要素がディスプレイに追加されるとき、ユーザは概して、測定値を提供しているコントローラスキームで関連付けられたＡＩブロック、ＰＣＩブロック、またはＤＩブロックを特定する必要があるであろう。オンラインモードでは、測定の値はこの測定要素の隣に示されてもよい。オフラインモード（つまりシミュレーションモード）では、（対応するプロセスモジュールにより作成されるような）測定のシミュレーションされる値が自動的に表示されてもよい。オンライン動作では、ユーザは測定が失敗した場合にシミュレーションによる値に制御とディスプレイを切り替えることを選ぶことができる。
【００５６】
スイッチ要素は、不良ステータスまたは不確実なステータス、関連ＤＩ（例えば手動またはＯＳ）のモード、およびスイッチの離散値（オン、オフ等）を動的に反映してもよい。オフラインシミュレーションモードにある間、ユーザは、シミュレーション値または手動値およびステータスを選択することにより、およびスイッチの値とステータスを手動で入力することによりグラフィックディスプレイおよび制御モジュールのスイッチパラメータにアクセスし、変更するためにスイッチディスプレイを使用してもよい。しかしながら、一般的に、ユーザは、制御スキームで関連ＤＩブロックに対する参照、切り替えをトリガする要素特性に対する参照、およびスイッチの状態の変化に関連付けられた制限とデッドバンドを提供することによりスイッチ要素を設定しなければならない。
【００５７】
推定される特性要素は、一般的にはプロセスモジュールにより決定されるようなシステムの推定特性を公開し、その要素の任意の特性を表示するために接続要素または処理要素に追加されてもよい。この要素が接続要素に、または１台の装置に置かれると、ユーザは表示される特性をブラウズし、選択できる。したがって、物理的な測定によって入手できないシミュレーション特性は、推定特性要素を使用することにより表示されてもよい。このような推定特性要素は、良好／不良な接続、推定特性値（複数の場合がある）および関連範囲または変化の範囲外にある特性を動的に反映してもよい。一般的に、ユーザは表示される特性（複数の場合がある）に対する参照、および該特性が範囲外にある場合に要素の範囲と色変化を設定しなければならない。
【００５８】
理解されるように、送信機要素および推定特性要素を処理要素、アクチュエータ要素、および接続要素に取り付けることにより、これらのプロセス要素の入出力に関連付けられていた特性はオンライン動作またはオフラインシミュレーションの間に参照されてもよい。これらの特性はグラフィックディスプレイで可視にされてもよい。
【００５９】
一般的に、オペレータは、プロセス１０の動作中のインプリメンテーションのために、あるいはシミュレーション環境でのインプリメンテーションのために、１つ以上のプロセスモジュール３９またはグラフィックディスプレイを作成するために構成アプリケーション３８を起動または実行してもよい。一実施形態では、構成アプリケーション３８は、構成エンジニアに、図３に描かれているもの等の構成ディスプレイ（表示）を提示する。図３から分かるように、構成ディスプレイ６４はライブラリまたはテンプレートセクション、および構成セクション６６を含む。テンプレートセクション６５は、図２のスマートプロセスオブジェクト４２ｅを含んでもよく、前述された接続要素、測定要素、ストリーム要素、処理要素、および推定特性要素のいずれかであってもよい、テンプレートスマートプロセスオブジェクト６７のセットの描写を含む。所望の場合、グラフィック定義だけを有する非スマート要素６８も提供されてもよい。本来、テンプレート６７と６８は、プロセスモジュールまたはグラフィックディスプレイ（または両方）の中でスマートプロセスオブジェクトのインスタンスを作成するために、構成セクション６６の上にドラッグアンドドロップされてもよい総称的なオブジェクトである。部分的に完了したプロセスグラフィックディスプレイ３５ｃは、１個のバルブ、２つのタンク、２台のポンプ、１台のフロートランスミッタ、および流路コネクタにより相互接続されている２台のセンサを含むものとして描かれており、前述されたようにスマートリンクまたはコネクタ要素であってよく、ストリーム出力を提供してもよい。グラフィックディスプレイ３５が、スマートプロセスオブジェクトと非スマート要素の両方から構成されてもよいことが注記されるであろう。
【００６０】
グラフィックディスプレイ３５ｃ（つまりプロセスモジュール）等のグラフィックディスプレイを作成すると、構成エンジニアは、スマートプロセスオブジェクト６７とテンプレートセクション６５に描かれている要素６８を選択し、構成セクション６６上にドラッグし、それらを任意の所望の場所にドロップしてもよい。一般的に、構成エンジニアは、１個以上のスマートデバイスプロセスオブジェクト６７ａと、デバイスを示している非スマート要素６８を選択し、構成セクション６６の上にドラッグする。構成エンジニアは、次に構成セクション６６の中のスマートデバイスプロセスオブジェクトをスマートコネクタプロセスオブジェクト６７ｂと相互接続し、入出力ストリーム６７ｃをディスプレイに入れてもよい。さらに、静的テキスト要素等の非スマート要素がディスプレイに追加されてもよい。構成エンジニアは、ポップアップ特性メニュー等を使用してこのプロセスの間にスマートプロセスオブジェクトの各々の特性を変更してよく、特に、これらのスマートプロセスオブジェクトと関連するメソッド、パラメータ、タグ、名前、ホットリンク、モード、クラス、入出力等を変更してもよい。プロセスエンジニアまたは構成エンジニアが、通常、プロセス構成、領域等を表す所望の要素の各々を用いてプロセスモジュールを作成すると、構成エンジニアはモジュールと関連する規則または他の機能を定義してもよい。このような規則は、質量平衡と流量の計算のような、システムレベルのメソッドの性能と関連付けられるもの等の実行規則であってもよい。プロセスエンジニアまたはオペレータは、プロセスディスプレイがオンラインである場合に有用となると考えられるトレンドとフェースプレートを追加することを決定してもよい。グラフィックディスプレイ３５ｃの作成後、構成エンジニアはメモリにそのディスプレイを保存してよく、その時点で、または後で、そのディスプレイのインスタンスを作成し、実行エンジン４８がグラフィックディスプレイを提供できるように実行エンジン４８にそのディスプレイをダウンロードしてもよい。プロセスグラフィックディスプレイ要素とは対照的にプロセスモジュール要素のために異なるグラフィックが描写されてもよいが、構成エンジニアが同じようにまたは類似した方法でプロセスモジュールを作成可能となることは言うまでもない。さらに、オペレータは、プラントを運転中に詳細のレベルをオンにすることを選んでよい。例えば、詳細のレベルの内の１つは各接続での組成を示すであろう。
【００６１】
上記に注記されたように、プロセスグラフィックまたはプロセスモジュールには特殊タグが与えられてもよい。例えば、グラフィックディスプレイまたはプロセスモジュールの中のスマートプロセスオブジェクト要素にはプロセス制御システムの中で選択される１台の装置またはルート等の他の要因に基づいて、例えば実行エンジン４８が実行時に記入または選択できるエイリアスを含むタグを与えられてもよい。プロセス制御システムでエイリアス名および間接的な参照を使用することは、本発明の譲受人に譲渡され、これにより本明細書に参照することにより明示的に組み込まれている米国特許番号第６，３８５，４９６号に詳しく説明されている。これらの技法のいずれかは、本明細書に説明されているスマートプロセスオブジェクトのためのタグを提供し、解消する（ｒｅｓｏｌｖｅ）ために使用されてもよい。エイリアス等を使用すると、同じプロセスモジュールが装置等のセットのための異なるビューを含んでよく、あるいは装置等のセットのための異なるビューをサポートするために使用されてもよい。
【００６２】
図３のディスプレイ６４は、プロセスモジュールまたはグラフィックディスプレイの異なるビューのためのタブ（ビュー１、ビュー２、およびビュー３）を描いている。これらのタブは、プロセスに関連する異なるユーザのための異なるビューに、その中の同じスマートプロセスオブジェクトのいくつかを使用してアクセスし、作成するために使用されてもよい。
【００６３】
一般的に、構成エンジニアがプロセスモジュールまたはグラフィックディスプレイを作成すると、構成アプリケーション３８はスマートプロセスオブジェクトを、その間の接続とともにデータベースに自動的に記憶する。このデータベースは、次に、例えば、同じスマートプロセスオブジェクトの内の１つ以上を使用して異なったビューを提供してもよい他のプロセスモジュールとグラフィックディスプレイを作成するために使用できる。このようにして、構成エンジニアは第２のビューを作成すると、データベース内ですでに作成され、記憶されているようなスマートプロセスオブジェクトと、第２のビューにそのスマートプロセスオブジェクトを入れるためにそれを用いて記憶されるあらゆるメソッドを簡単に参照できる。したがって、データベースは、プロセス制御モジュールおよびグラフィックディスプレイが作成されるにつれて入力することができ、データベースはプロセスフローデータベース内にすでに存在しているスマートプロセスオブジェクトを使用して他のビュー、モジュールおよびグラフィックディスプレイを作成し、実行するために任意の時点で使用できる。このようなデータベースを使用して、該データベース内の各スマートプロセスオブジェクトは、プロセスモジュールをサポートしてもよいか、プロセスモジュールで使用され、複数のグラフィックディスプレイで参照されてもよい。やはり理解されるように、プロセスモジュールは、これらのモジュールのためにディスプレイを構築してから、プロセスモジュール内で使用される、あるいはプロセスモジュールと関連付けられるフローアルゴリズムを指定することにより構築されてもよい。言うまでもなく、個々のプロセスモジュールは異なるコンピュータ全体に拡散され、異なるコンピュータによって実行されてよく、プロセスモジュールは同じコンピュータ上または異なるコンピュータ上のいずれかで、相互に連動して動作するために相互に通信可能に接続されてもよい。これらが行われると、入出力ストリームは、外部でプロセスモジュールに対してともに参照される。
【００６４】
上記に注記されたように、構成エンジニアは、プロセスモジュールまたはグラフィックディスプレイの作成の一部として、プロセスモジュールのシミュレーションアルゴリズムを取り付ける、または提供してもよい。これらのシミュレーションアルゴリズムは、プロセスモジュールによって描かれている、またはモデル化されているプロセスに関して質量平衡計算、流量計算、効率計算、経済計算等の、特定のプロセス特性またはシステムレベルの特性を計算する、または決定するために事前設定されてもよい。その結果、プロセスモジュール自体が、モード、ステータス、およびアラーム動作を有してよく、ワークステーションに割り当てることができ、ディスプレイダウンロードの一部としてダウンロードされてもよい。所望の場合、シミュレーションアルゴリズムは、質量平衡、または加熱平衡、流量経路選択、流量効率、流量最適化、プロセスシミュレーションに関連する経済計算、またはプロセスモジュールのスマートプロセスオブジェクトに提供されるデータを使用する他の所望の計算を実行するために実行エンジン４８によって実行されてもよい。またさらに、これらのシミュレーションアルゴリズムは、制御戦略、つまりコントローラ、フィールドデバイス等に関連付けられ、それらにダウンロードされる制御モジュールからのパラメータにアクセスしてよく、逆にこれらの制御モジュールにデータまたは情報を提供してもよい。
【００６５】
実行エンジン４８が、すべてのディスプレイ上で構成されるすべてのプロセスオブジェクトとリンクを合併したもの全体でプロセスアルゴリズムを実行可能とするために必要とされることが理解されるであろう。したがって、（プロセスモジュール内の）シミュレーションアルゴリズムは、任意の関連付けられたグラフィックディスプレイがロードされている、つまり呼び出され、ユーザに情報を表示しているか否かに関係なく実行するであろう。言うまでもなく、シミュレーションアルゴリズムはプロセス全体１０で、またはプロセス１０の定義されている部分集合全体で照合されてもよい。任意の特定のプロセスモジュールの実行中、実行エンジン４８は、そのプロセスモジュールに関連するグラフィックディスプレイに基づいて、プロセスモジュール内の相互接続されているオブジェクトまたはエンティティを描写するオペレータまたはオペレータインタフェースにディスプレイを与えてもよい。ディスプレイのパラメータ、グラフィック等は、プロセスモジュールの内部のスマート要素の構成と相互接続によって決定される。さらに、このディスプレイまたは他のディスプレイで提供されるアラームと他の情報は、スマートプロセスオブジェクト内のメソッド、および特定のプロセスモジュールと関連付けられたシミュレーションアルゴリズムによって定義され、生成されてもよい。所望の場合、たとえ実行エンジン４８がプロセスフローモジュールを実行し続け、それによってそれと関連するメソッド、アラーム動作、フローアルゴリズム等を実行しても、実行エンジン４８は複数のオペレータインタフェースにプロセスモジュールのためのディスプレイを提供してよく、あるいはディスプレイを提供しないように構成または設定されてもよい。
【００６６】
所望の場合、プロセスモジュールは、グラフィックディスプレイから自動的に生成されてよく（あるいは逆もまた同様）、プロセスモジュールが利用可能な機能がプロセスグラフィックス要素によって決定されてもよい。プロセスモジュールが好ましくはプロセスグラフィックディスプレイを遮断する（ｓｈａｄｏｗ）ために構築されてもよいという点は明らかである。その結果、ユーザがプロセスグラフィックディスプレイを構成すると、ユーザは質量ストリームまたはエネルギーストリーム等のプロセスモジュールについての追加の情報を含む能力を有する。これらのストリームは、シミュレーション機能ブロックによって必要とされる開始状態を確立するためにプロセスモジュールで使用される。
【００６７】
加えて、プロセスモジュールは、コンピュータで実行される実際のソフトウェアモジュールであるため、それらが制御モジュールと関連するパラメータ、制御戦略、ディスプレイ等を使用するために参照する、およびコントローラモジュールによって参照されることも可能である。また、この機能を使用すると、プロセスモジュールがプロセスグラフィックディスプレイとは無関係に作成されることも可能である。
【００６８】
一般的に、プロセスモジュールは処理要素、ストリームおよびそれらの関連接続から構成される。プロセスグラフィックス要素と（プロセスモジュールの中の）シミュレーション要素の間には１対１の対応があるため、ユーザは、グラフィックディスプレイを構築し、そのディスプレイから対応するプロセスモジュールを自動的に生成することが可能であろう。所望の場合に、ユーザがプロセスモジュールを作成してから、スマートプロセスオブジェクト内のグラフィックスを使用してそのモジュールからグラフィックディスプレイを自動的に作成してもよいのは言うまでもない。しかしながら、プロセスモジュールの自動生成を可能にするためには、ユーザが、測定要素と推定特性要素に関連するアクチュエータ要素特性、接続要素特性または処理要素特性を識別する必要がある可能性がある。ユーザがプロセスグラフィックを作成する前に、あるいはいくつかのケースでは、制御モジュールが構築される前に、プロセスシミュレーションを作成する必要がある場合もある。シミュレーションが構築された後、制御モジュールのＩ／Ｏブロックに対する参照を記入することができるであろう。また、関連グラフィックディスプレイが作成されると、既存のプロセスモジュールにブラウズし、特性基準を設定することが可能になるであろう。
【００６９】
いくつかのケースでは、プロセスグラフィックスはプロセスシミュレーションを構築するために必要とされるすべての詳細を含む必要はない可能性がある。したがって、ユーザが、プロセスグラフィックスから自動的に作成されたシミュレーションモジュールまたはプロセスモジュールを編集可能とするためにエディタを提供することが望ましい。また、複数のプロセスグラフィックスが同じ１台の装置を表示する必要がある場合があるため、プロセスグラフィックの構築では、要素が既存のプロセスモジュールを参照できることが必要である場合がある。
【００７０】
一般的に、処理要素に対応するシミュレーションには共通の構造がある。所望の場合、ブロック入力接続およびこのシミュレーションのパラメータは、制御モジュールに対する参照が必要とされないようにプロセスモジュールに記憶される。さらに、シミュレーションによりサポートされる入出力接続の数は拡張可能に定義されてよく、シミュレーション実行の結果はシミュレーション出力接続において、あるいはシミュレーションのパラメータとして反映されてよく、シミュレーションアルゴリズムはステップ応答として定義されてもよいか、あるいはユーザによって入力されてもよい。シミュレーションアルゴリズムがユーザによって入力されると、ユーザは出力ごとに無関係にダイナミクスを指定してもよい。
【００７１】
またさらに、パラメータの共通集合は入力接続と出力接続のためにサポートされてもよい。入力接続と出力接続と関連するパラメータは、アレイパラメータまたは構造としてブロック間で通信されてもよく、接続ステータス（例えば、良好、不良、制限されている等の）接続ステータス、質量流パラメータ、圧力パラメータ、温度パラメータ、特殊熱パラメータ、密度パラメータ、流れ不可（ｆｌｏｗ  ｎｏｔ  ｐｏｓｓｉｂｌｅ）パラメータ、圧力／流量ネットワークパラメータのための圧力基準、圧力／流量ネットワークパラメータのための流量基準等のパラメータを含んでよい。いくつかのケースでは、ストリームの組成等の他のパラメータがシミュレーションアルゴリズムで提供され、使用されてもよい。この要件をサポートするためには、標準的な、拡張されたストリーム要素が提供されてもよい。拡張されたストリーム要素構成の一部として、ユーザはストリーム要素を定義するためのデータの所定のグループの集合を選択してもよい。このような拡張された接続は、この情報を活用するブロックに接続できるようにされるだけである。一般的に、拡張パラメータはグループ名と多くの特殊要素を含んでよい。例えば、ボイラ処理要素に対する燃料入力ストリームが、燃料セットを含む燃料の成分、つまり燃料の中の炭素、水素、硫黄、酸素、水分、および窒素の量（所望の場合すべて重量％）を含んでよい。別の例としては、タービン発電機処理要素は、蒸気ストリームを使用してよく、関連付けられたシミュレーションへの接続は蒸気セット、段階に入る蒸気エンタルピー（実際）、段階を出る蒸気エンタルピー（実際）、（等エントロピー膨張の場合）蒸気エンタルピー等を含む拡張されたパラメータセットを使用してもよい。
【００７２】
拡張されたグループセットは、プロセスモジュールの中のシミュレーション要素がハイファイシミュレーションパッケージに対するインタフェースとして使用される場合に使用されてもよい。このケースでは、いくつかのストリームの組成はプロセスグラフィックで可視にできる。また、所望の場合、対話型エディタは、グラフィックディスプレイで提示されるための制御モジュールのための関連フェースプレートと詳細ディスプレイのみではなく、グラフィックディスプレイにも表示される値を作成または修正することを容易にするために提供されてもよい。
【００７３】
図４は、上述された要素と構成アプリケーションを使用して作成されてもよい例示的なグラフィックディスプレイ１００を示している。特に、グラフィックディスプレイ１００は、水、酸、および塩基からホワイトビネガーを生産するプロセスプラントの一部を示している。図４に描かれているように、プロセスグラフィックディスプレイ１００は、塩基フィード、酸フィード、水フィードおよび冷却水のストリームを定義する４つのストリーム要素１０２をそれに対する入力時に含む。塩基フィードストリーム１０２はバルブ１０６の形を取るアクチュエータ要素に配管接続要素１０４を通して送達される。バルブ１０６の出力は配管接続要素１０４を介してミキサー１０８の第１の入力に接続される。同様に、酸フィード１０２は送信機要素１１０に接続されてから、ミキサー１０８に接続されている追加のバルブ１１２に接続される。酸フィード１０２と送信機１１０、送信機とバルブ１１２、およびバルブ１１２とミキサー１０８が、配管接続要素１１４を介して接続される。
【００７４】
容易に分かるように、ミキサー１０８の出力は配管および２台の送信機１２４と１２６を介して熱交換器１２２に接続される。冷却水ストリーム１０２はバルブ１２８を介して熱交換器１２２に送達され、リターン水ストリーム要素１３１を生成するためにバルブ１３０を介して熱交換器を出る。同様に、熱交換器１２２の出力は出力酢酸ストリーム要素１３６を提供するために送信機要素１３２とバルブ１３４を通って送達される。特に常に呼び出されていないが、グラフィックディスプレイの要素はすべてのケースで配管接続要素を介して相互に接続される。
【００７５】
ディスプレイ要素自体の特性として生成されてよく、送信機、および推定された特性要素、あるいは制御モジュールの中のブロックを参照する要素の形を取った個別の要素であってもよいディスプレイボックス１４０は、異なる要素と関連するプロセス変数（ＰＶ）値、設定点（ＳＰ）値、ＯＵＴ値等のパラメータを示すまたは公開するためにグラフィックディスプレイ１００に描かれている。さらに、ユーザが要素の内のいくつかの上にカーソルを置かなければならない場合、ディスプレイ１００は参照された要素と関連付けられた他の値を描いてもよい。例えば、（酢酸ストリーム出力１３６等の）ストリーム要素の内の１つの上にカーソルを置くと、グラフィックはプロセスの中のこの点での酸のストリームの組成、圧力、温度、密度、流量等を示す。言うまでもなく、グラフィックディスプレイ１００上に表示されている値およびパラメータは（制御システム内のＡＩブロックから等）プロセス制御システム内の実際の参照される送信機から、あるいは要素の機能をシミュレーションするプロセスモジュールシミュレーション要素から送達されてもよい。図４のグラフィックディスプレイ１００は、ホワイトビネガーを作るプロセスの動作中に、あるいは例えば設計アクティビティまたはオペレータトレーニングアクティビティを実行するために使用されるそのプロセスのシミュレーションを実現するためにユーザに提供されてもよい。
【００７６】
図５は、異なるグラフィックディスプレイ（および同様に異なるプロセスモジュール）がプロセスプラントのさらの多くを描写する（またはシミュレーションする）さらに高いレベルのディスプレイ（またはプロセスモジュール）を形成するためにともにどのように接続されてもよいのかを示す。図５のディスプレイ１５０では、プロセスグラフィック１００は名前またはラベルおよび接続点としてストリーム入力と出力のセットを有するボックスの中に折り畳まれる。所望の場合、ユーザは、そのグラフィックを選択し、そのグラフィックの上を例えばダブルクリックすることにより、図５のプロセスグラフィック１００を図４に示されるグラフィックに拡大してもよい。さらに、他の折り畳まれたグラフィックディスプレイ１５２と１５４は、入力ストリーム要素１５６と１５８を介して冷却水フィードにのみではなく、塩基フィード、酸フィードおよび水フィードにも接続しているものとして描かれている。プロセスグラフィックディスプレイ１００のストリーム出力１３６は、ホワイトビネガー用の保持タンク１６２のストリーム入力１６０に接続される。同様に、プロセスグラフィックディスプレイ１５２と１５４のストリーム出力は、各々モルトビネガー（ｍａｌｔ  ｖｉｎｅｇａｒ）とｐｉｃｋｅｌｉｎｇビネガーのための保持タンク１６３と１６４のストリーム入力に接続されている。理解されるように、プロセスグラフィックス１５２と１５４は、各々モルトビネガーとピッケリングビネガー（ｐｉｃｋｅｌｉｎｇ  ｖｉｎｅｇａｒ）を作るプロセスプラントの部分のためのグラフィックを提供するように構成され、該プロセスプラントのこれらのセクションに関するデータとグラフィックビューは、これらのディスプレイを拡大することにより表示されてもよい。
【００７７】
しかしながら、図５は、プロセスプラントの異なるグラフィックセクションが、ストリーム要素の間の接続を介してともに接続されてもよいことを示す。特に、ストリーム要素は、接続要素と関連する開始特性を定義するためにディスプレイに含まれてもよい。また、ストリーム要素は、ディスプレイ間の接続点として使用されてもよい。このようなディスプレイの間のシート外（ｏｆｆ−ｓｈｅｅｔ）の接続のために、ユーザは参照される接続を含む関連ディスプレイを即座に呼び出すためにストリームをクリックしてもよい。したがって、一般的に、ストリーム要素の質量／組成は、通常、プロセス入力の開始特性、つまり開始原料組成等を定義するために、あるいは別のディスプレイ上でストリーム接続へのリンクを定義するために使用される。接続は質量／組成ストリーム要素の入力または出力で行われてもよい。ストリーム要素の場合、一般的にユーザは（システムの中で一意でなければならない）ストリームの名前、（基準入力または入力接続がない場合には）ストリームの特性、（ストリームが複数の成分から構成される場合）ストリームの異なる成分の質量分立、圧力または質量流、温度、比熱、密度、必要とされる接続タイプ（パイプ、ダクト、コンベヤ）および（別のディスプレイ上でストリームにアクセスするために使用される場合）参照される入力ストリームを設定してもよい。同様にエネルギーストリーム要素は、ＢＴＵ／ＨＲ転送等のプロセス入力と関連付けられる開始エネルギーを定義するため、あるいは別のディスプレイでのストリーム接続のエネルギー特性へのリンクを定義するために使用されてもよい。
【００７８】
図５は、異なる折り畳まれたグラフィックディスプレイを相互接続するためのストリームの使用を示しているが、同じ手順は異なるプロセスモジュールを相互接続し、異なるプロセスモジュールの相互接続を描写）するために使用できることになる。特に、プロセスモジュールは、名前およびストリーム要素入出力を描くために折り畳むことができ、これらの折り畳まれたプロセスモジュールは、異なるプロセスモジュールのストリーム出力とストリーム入力の間の通信接続またはリンクの描写を使用して他のプロセスモジュールに通信可能に結び付けられ、または接続できることになる。
【００７９】
図６は、図４のグラフィックディスプレイ１００に相当するプロセスモジュール１００ａを示している。これから分かるように、プロセスモジュール１００ａは、図４のグラフィックディスプレイに描かれている物理的な要素の各々についてスマートオブジェクトシミュレーションを表すブロックを含む。理解を容易にするために、図４の要素に対応する図６の各々のシミュレーションブロックは「ａ」が付け加えられた同じ参照番号で示されている。したがって、図６のミキサーシミュレーションボックス１０８ａは、図４に描かれているミキサー１０８に対応するシミュレーションである。同様に、バルブシミュレーションブロック１０６ａ、１１２ａおよび１１８ａは、各々図４に描かれているバルブ１０６、１１２、および１１８に対応し、通信可能に結び付けられている。
【００８０】
図６のプロセスモジュール１００ａは、このようにしてグラフィックディスプレイ１００に描かれている要素ごとに（スマートプロセスオブジェクトと関連付けられるか、あるいはスマートプロセスオブジェクトにより指定される関数ブロックとして表現されてもよい）プロセスシミュレーション要素を含み、これらのシミュレーションブロックはグラフィックディスプレイ１００に指定される方法で、および指定される接続要素を使用して相互接続される。所望の場合、プロセスモジュール１００ａは、グラフィックディスプレイ１００の作成後、あるいはグラフィックディスプレイ１００の作成中にも自動的に作成されてもよい。
【００８１】
上記で示されたように、プロセスモジュール１００の中のプロセスシミュレーション要素の各々は、これらのシミュレーション要素への入力時に提供される材料のストリーム（複数の場合がある）のプロセスおよび性質で使用される機械装置の動作に基づいたシミュレーション機能（例えば、アルゴリズム、規則、伝達関数等）を含む。これらのシミュレーションは、処理要素、アクチュエータ要素、および送信機要素の各々の中のＳＩＭブロックにより図６に描かれている。デバイスのダイナミクスとストリームに対する影響は、それによってプロセスモジュール１００ａの中でモデル化またはシミュレーションされてもよい。アクチュエータ要素および処理要素と関連付けられたシミュレーションブロックのために利用できるいくつかの考えられる特性は、（入口温度、流量および熱容量に基づいた）出口温度、（入口質量流と要素の中の蓄積に基づいた）出口流量、（装置全体での仮定される圧力低下または下流圧力に基づいた）出口圧力および（完全混合および入口組成に基づいた）出口組成であってもよい。カスタム計算が実現されるとき、出口特性に関連付けられる内蔵ダイナミクスは、例えばプロセス入力の変換に対する不動作時間が加えられた一次プラスデッドタイム（ｆｉｒｓｔ-ｏｒｄｅｒ−ｐｌｕｓ−ｄｅａｄｔｉｍｅ）応答に基づいて追加されてもよい。ユーザは、所望の各々の計算された特性と関連付けられた不動作時間および遅延を指定してもよい。送信機とスイッチ等のプロセス測定要素、および接続要素の場合、参照される特性にダイナミクスが導入されないことが想定されてもよい。しかしながら、そのように所望の場合、遷移と他の特性はモデル化されてもよい。しかしながら、多くのケースでは、上流接続からの特性は下流接続に即座に反映されてもよい。
【００８２】
プロセスモジュール１００ａを使用すると、プロセスグラフィック１００に描かれているプラントの部分の動作をシミュレーションできる。このシミュレーションは、プロセスモジュール１００ａ内のシミュレーション要素からの値がグラフィックディスプレイ１００のグラフィックスに自動的に通信され、そこに表示され、制御モジュールで使用されてもよいのでディスプレイ１００と統合される。同様に、トレーニングインストラクタはプロセスモジュール１００ａによって実行されるシミュレーションで特性を達成するまたは変更するためにディスプレイを使用してもよい。
【００８３】
所望の場合、ＨＹＳＹＳ（登録商標）、ＣＡＰＥ等のハイファイシミュレーションは、測定要素およびアクチュエータ要素のためのＩ／Ｏ基準を定義してから、これらの基準を使用して、シミュレーションでＩ／Ｏを実行するために、例えばＨＹＳＹＳ（登録商標）内で現在使用されているＤＣＳインタフェーステーブルを作成することによりシミュレーション特長に加えられてもよい。標準処理要素テンプレートは、ハイファイプロセスシミュレーションを構築するために使用されてもよい、ＨＹＳＹＳ（登録商標）（または他のハイファイシミュレーション）成分ごとに定義されてもよい。このようなハイファイシミュレーション１６５はプロセスモジュール１００ａに通信可能に接続されているものとして図６に描かれている。このケースでは、ユーザはプロセスモジュール１００ａの中のシミュレーション要素の各々で提供されるシミュレーションを無効にし、代わりにハイファイシミュレーション１６５によって提供されるシミュレーションパラメータを使用することを選択してもよい。ユーザは、（プロセスモジュール１００ａの中に設定される電子スイッチ、フラグ等であってもよい）スイッチ１６６を起動することによりハイファイシミュレーション１６５の使用を指定してもよい。
【００８４】
一般的に、スイッチ１６６がハイファイシミュレーション１６５を使用するために設定されるとき、プロセスモジュール１００ａ内の関連シミュレーション機能ブロックはシャドーブロックとして働く。つまりそれらのシミュレーションアルゴリズム（ＳＩＭブロック）は実行されず、代わりにブロックパラメータがハイファイシミュレーション１６５によって読み書きされる。しかしながら、プロセスモジュール１００ａは、依然として同じパラメータと他の情報をプロセスグラフィックと制御モジュールに通信し、（最終的にはハイファイシミュレーション１６５で使用するために）プロセスグラフィック１００、および制御モジュール２９から情報を受信する。
【００８５】
理解されるように、このようにしてプロセスモジュールを使用することは、オペレータ、エンジニア等が表示し、使用できるようにプロセスプラント内でハイファイシミュレーションパッケージ（ソフトウェア製品）を接続する（つまり、プロセスモジュール１００ａと関連付けられたプロセスグラフィックディスプレイ１００を使用する）容易且つ便利な方法となる。特に、プロセスモジュールのストリームパラメータは、ハイファイシミュレーションまで接続、あるいはハイファイシミュレーション内でモデル化される流れと関連付けられてよく、プロセスモジュールの中の経路移動（ｐａｔｈｉｎｇ）は自動的に構造化され、あるいはハイファイシミュレーションの中の経路移動と関連付けることができる。実際には、プロセスモジュールは、このケースでは、プロセスプラント制御およびシミュレーション環境で使用される制御モジュールおよびグラフィックディスプレイにハイファイシミュレーション内のデータをマッピングする便利な方法となる変数つまりデータプレースホルダとして使用される。
【００８６】
またさらに、プロセスモジュールおよび関連グラフィックディスプレイは、通例ハイファイシミュレーションプロバイダによってユーザにとって高い価格で現在生産されている、ハイファイシミュレーション用の個別のディスプレイを提供するニーズを削減するまたは排除する。代わりに、プロセスモジュールはすでにグラフィックディスプレイに結び付けられているため、プロセスモジュールがハイファイシミュレーションパッケージに接続されると、グラフィックディスプレイはユーザにハイファイシミュレーションパッケージにより計算されるように情報を提供するために、およびユーザまたはオペレータがハイファイシミュレーションパッケージに対する入力を操作可能とするために使用されてもよい。またさらに、プロセスモジュールは制御モジュールに通信可能に接続されるため、ハイファイシミュレーションパッケージによって生成されるパラメータまたはデータは、オンライン制御アクティビティを実行するために制御モジュールで使用されてもよい。このようにしてプロセスモジュールを使用すると、ハイファイシミュレーションパッケージは、制御モジュールと統合されることに加え、制御モジュールに並列で実行できる。
【００８７】
前述の説明から理解されるように、プロセスモジュールおよびグラフィックディスプレイは、グラフィックディスプレイによって描かれているプロセスプラントの動作をシミュレーションするプロセスモジュールとともに、プロセスプラント１０のセクションのオペレータビューを提供するために、統合的に作成、実行されてもよい。有利なことに、プロセスモジュールおよびグラフィックディスプレイは、プロセスプラントのそのセクションまたは部分に関して制御アクティビティを実行する、さらに１つ以上の制御モジュールと（例えば、通信可能に接続される等）統合されてもよい。したがって、図１に描かれている制御モジュール２９は、図１に描かれているプロセスモジュール３９とグラフィックディスプレイ３５の内の１つ以上と通信可能に統合されてもよい。言うまでもなく、通信モジュール２９、プロセスモジュール３９、およびグラフィックディスプレイ３５は、特定のケースで所望の、または必要とされるように、図１に描かれているもの以外のプラント１０の中の他のコンピュータまたはデバイスで実現されてもよい。
【００８８】
図７Ａおよび図７Ｂは制御モジュール２９、プロセスモジュール３９およびグラフィックディスプレイ３５の統合をより詳細に示している。特に、グラフィックディスプレイ３５は、リサイクルタンク１８２の出力と直列で接続されているバルブ１８６とともに、リサイクルタンク１８２とポンプ１８４の入力に接続されているバルブ１８０を含む。要素１８０から１８６は、（名前が付けられていない）配管接続要素を介してともに接続され、ストリーム要素はそれらの点での材料のストリームを定義するためにグラフィックディスプレイ３５の入力と出力で提供される。
【００８９】
グラフィックディスプレイ３５の構成の結果、グラフィックディスプレイ３５と同時に作成されてもよいプロセスモジュールは、グラフィックディスプレイ３５の中に描かれている物理的な要素に対応するバルブ要素１８０ａ、タンク要素１８２ａ、ポンプ要素１８４ａおよびバルブ要素１８６ａの形を取るプロセスシミュレーション要素を含む。グラフィックディスプレイ３５と関連する（グラフィックディスプレイ３５に描かれている）物理的な要素の少なくともいくつかを制御する制御モジュール２９は、グラフィックディスプレイ３５によって、およびプロセスモジュール３９によって描かれている要素の中で制御を提供する、あるいはそれらと関連する相互接続された機能ブロックの集合を含む。この例では、制御モジュール２９は、２つの制御ループ１９０と１９２を含む。第１の制御ループ１９０は、タンク１８２の中への流体の流れについての流量入力情報を受け取るアナログ入力（ＡＩ）機能ブロックと、ＰＩＤ制御を実行する比例積分微分（ＰＩＤ）制御機能ブロックと、タンク１８２の中へ材料の所望の流れを達成するためにバルブ１８０を操作するアナログ出力（ＡＯ）機能ブロックとを有する。同様に、制御ループ１９２は、タンク１８２内の水位センサによって測定されるようなタンク水位情報を提供するＡＩ機能ブロック、ＰＩＤ制御ブロック、およびタンク１８２内の流体の水位の制御を達成するためにバルブ１８６を操作するためにＰＩＤ制御ブロックから制御信号を受信するＡＯ機能ブロックとを含む。制御モジュール２９は、例えばポンプ１８４のオン／オフ状態または動作を示し、そのように所望の場合、タンク１８２に関して制御アクティビティを実行するために、制御ループ１９０と１９２によって使用されてもよい離散入力（ＤＩ）も含む。
【００９０】
理解されるように、グラフィックディスプレイ３５、プロセスモジュール３９、および制御モジュール２９内の要素のいずれかは、さらに詳しく説明されるように、それらの要素の他と（関連通信タグを介して）通信し、それによってさらに優れたまたは強化された制御ディスプレイ、シミュレーションディスプレイおよびオペレータディスプレイを提供してもよい。例えば、図７Ｂに描かれているように、ループ１９０のＰＩＤ制御ブロックは、ＰＩＤ制御要素により使用されている電流フロー設定点を表示するために、グラフィックディスプレイ３５に情報を提供するように構成、あるいはこれらの要素の間の矢印が付けられた線で示されるように、グラフィックディスプレイ３５から制御モジュール２９で使用される設定点を読み取ってもよい。同様に、プロセスモジュール３９のタンク要素１８２ａは、要素１８２ａの中でシミュレーションアルゴリズムによって決定されるように、タンクのシミュレーションされる水位を示すプロセス制御モジュール２９の制御ループ１９２のＡＩ機能ブロックにシミュレーション出力を提供してもよい。このシミュレーションによるタンク水位は、オペレータによって見られるために追加情報としてグラフィックディスプレイ２９上に描かれてもよい。
【００９１】
所望の場合、制御ループ１９２のＡＯブロックは、グラフィックディスプレイ３５のバルブ１８６に情報を提供し、バルブ１８６から情報を受信してもよい。さらに、ループ１９２のＡＯ機能ブロックは、プロセスモジュール３９のバルブ要素１８６ａにその制御出力を提供するように構成できる。このケースでは、バルブ要素１８６ａは、物理的な要素になんらかの誤動作があるか否かを判断するために、制御ループ１９２で測定されている実際のバルブ位置に、バルブ位置のための予測値を比較してもよい。一定量での差異のケースでは、プロセスモジュール３９は、障害のあるセンサ等のプロセスプラント内の潜在的な問題を示すグラフィックディスプレイ３５上でアラームまたは警告を生成するソフトウェアを含んでよい。図７Ｂにも描かれているように、バルブ要素１８６ａは、オペレータに表示される、あるいはオペレータが利用可能となるように、グラフィックディスプレイ３５にシミュレーションによる測定値またはパラメータを提供してもよい。このようなシミュレーションによる測定値またはパラメータは、バルブ１８６からのシミュレーションによる、または予測された流量、あるいはバルブ１８６と関連する、任意の他のシミュレーションによるパラメータを示してもよい。言うまでもなく、実際の測定データ、シミュレーションデータ、またはグラフィック表示データを含む他の所望の情報またはデータは、さらに優れたまたは強化された制御、シミュレーションまたはディスプレイを提供するために、グラフィックディスプレイ３５、プロセスモジュール３９および制御モジュール２９内の要素に提供されてもよい。
【００９２】
一般的に、プロセスモジュールを制御モジュールと、および所望の場合、さらにグラフィックディスプレイと統合させることにより生じる可能性を有する多数の優位点がある。１つのケースでは、前述されたようにプロセスモジュールによって実行されるシミュレーションは、シミュレーションによるまたは予測された測定値、パラメータまたは他のプロセス値を、システム内の潜在的な問題を検知するために制御モジュールによって提供される測定された、または計算されたパラメータと比較してもよい。例えば、プロセスモジュール３９によって計算されるようなバルブの中からの流量と、プロセス自体の中で測定されるようなバルブの中からの流量の大きな差異は、何らかのデバイス問題が存在することを示すアラームを生成する理由となる可能性がある。逆に、制御モジュール２９は、制御モジュール２９が知っている障害のあるセンサ、あるいは、既にアクティブではない、または制御モジュールが使用できない他の要素に関する状況で強化された制御を提供するためにシミュレーションによるパラメータを使用してもよい。このケースでは、制御モジュール２９は、オペレータの関与を必要とせず、プロセスを停止する必要もなく、（障害があるものとして知られている、不良ステータスを有する可能性のある等の）測定値またはパラメータを、プロセスモジュールにより作成されるようなシミュレーションによる出力で自動的に置換できる。選択的に、制御モジュール２９は、測定値またはパラメータがシミュレーションによる値で置換されていた時間の量を監視することができ、特定の時間量の後にシミュレーションによる値の使用を停止できる。例えば、制御モジュールは、特定の時間量の後に障害のある値またはパラメータの使用を開始できるであろう。また、シミュレーション制御データと実際の制御データの両方を同じディスプレイに表示することは、オペレータまたはユーザが、シミュレーションモードで有用、さらに優れた設計行動を実行するために有用等、プラント内の問題を検知する場合に役立つ可能性がある。
【００９３】
図８は、制御モジュール２００がいかにしてプロセスモジュール２０２（それにより該プロセスモジュール２０２と関連する任意のグラフィックディスプレイ）と通信可能に統合されてもよいのかのより詳細な図である。図８の制御モジュール２００は、例えばモデル予測制御（ＭＰＣ）機能ブロック等の、多重入力／多重出力制御ブロックであってもよい制御機能ブロック２０７にその出力が接続されている３つのＡＩ機能ブロック２０４、２０５、および２０６を含む。制御ブロック２０７からの３つの制御出力は、例えば混合のためにミキサーに異なる流体を提供するプロセス内の例えばバルブを制御してもよい、３つのＡＯ機能ブロック２０８、２０９および２１０の制御入力に送信される。
【００９４】
プロセスモジュール２０２は、制御モジュール２００によって制御されるミキサーとバルブを有するプロセスの部分と関連付けられている。特に、プロセスモジュール２０２は（プロセスモジュール２０２の左側で矢印によって示されている）ミキサー要素２１４の中への３つのストリームの流れをシミュレーションするバルブ（アクチュエータ要素）２１１、２１２、および２１３を有する。バルブ要素２１５は、プロセスモジュール２０２の右側の出力ストリームを定義するためにミキサー要素２１４の中から流体の流れをシミュレーションし、送信機要素２１７は、ミキサー要素２１４を出る流体の測定された組成を示し（またはシミュレーションし）てもよい。明確にするために、接続要素はプロセスモジュール２０２で単純な線として描かれていることに注意されたい。
【００９５】
この場合、ＡＩ機能ブロック２０４から２０６に対する制御入力は成分センサ、流量センサまたは（プロセスモジュール２０２の中の）送信機２１７によって描かれているプロセスプラント内の他のセンサによって提供されてもよいが、ＡＯ機能ブロック２０８から２１０は、（プロセスモジュール２０２内の）バルブ２１１から２１３により描かれているプロセスプラントのバルブの動作を制御してもよい。
【００９６】
分かるように、プロセスモジュール２０２と制御モジュール２００の中の論理要素は、所望の方法でまたは有用な方法で、プロセスモジュール２０２から制御モジュール２００に通信可能に相互接続されてよく、逆の場合も同じである。１つの例では、（点線２１８によって描かれている）通信接続は（ミキサー２１４で材料組成のシミュレーションによる測定値を表示する）プロセスモジュール２０２の送信機要素２１７の出力と、プロセス制御モジュール２００の中のＡＩブロック２１６のシミュレーションによる入力ＳＩＭ＿ＩＮの間で構成されてもよい。このようにして、ミキサー２１４の流体の水位のシミュレーションによる測定値はＡＩブロック２０６に与えられ、ＡＩブロック２０６は、例えば、そのブロックの制御入力（ＩＮ）での信号が不良ステータスを有する、あるいは何らかの理由から障害があると知られている場合に、このシミュレーションによる入力を使用してもよい。このようにして、ＡＩブロック２０６は、実際の物理的な測定が有効ではない、または利用できない場合にＡＩブロック２０６と関連する測定の近似値を提供し、それにより制御モジュール２００は障害のあるセンサが存在する場合に機能し、制御を提供し続けることができる。このような接続により、制御モジュール２００も、（シミュレーションプロセスモジュール２０２によって提供されるような）有効なシミュレーションデータがオフラインのオペレータトレーニングの間に、あるいは制御モジュール２００をテストするために使用される、シミュレーションモードで実行できるようになる場合がある。
【００９７】
代わりに、または加えて、（点線２１９で描かれている）通信接続は、プロセス制御モジュール２００の中のＡＯブロック２０８の出力と、プロセスプラントのＡＯブロック２０８によって制御されている実際のバルブをモデル化するバルブ要素２１１の入力の間で構成されてもよい。ここでは、バルブ要素２１１は、シミュレーションによるデータ（つまりバルブ要素２１１のＳＩＭブロックにより計算された測定値とパラメータ）が正しいか否か、つまり実際の制御ルーチン２００で使用されるデータと一致するか否かを判断するために、実際のバルブから取得される、あるいは実際のバルブに送信されるデータを使用してもよい。かなりの差異がある場合には、プロセスモジュール２０２は、潜在的な問題を示すアラームまたは警告を生成してもよく、あるいはプロセスモジュール２０２内でより優れたまたはより正確なシミュレーションを提供するために本物のデータを使用してもよい。例えば、バルブ要素２１１は、シミュレーションにおいて実際のバルブ位置を反映するためにバルブ要素２１１の位置についてＳＩＭブロック内の実際の制御データを使用してもよい。言うまでもなく、プロセスモジュール２０２と制御モジュール２００の中の要素の間の他の接続が、強化された制御および／またはシミュレーションを実行するためにこれらの２つのモジュールの間のいずれかの方向でデータフローを提供させられてもよい。またさらに、プロセスモジュール２０２または制御モジュール２００からのデータのいずれかは、プロセスモジュール２０２と関連付けられるグラフィックディスプレイを介して自動的にオペレータが利用できるようにされてもよい。
【００９８】
所望の場合、プロセスモジュールは、プロセス制御ネットワークまたはプロセスプラント内で冗長な機能を提供し、シミュレーションしてもよい。特に、プロセスモジュールは、プロセスプラントの中に配置される冗長なデバイス、冗長な制御ブロック等、（例えば、バックアップ冗長要素が引き継がなければならないとき等を含む）実際の冗長な機能の動作をシミュレーションし、実際の冗長な要素の動作を検知する、またはシミュレーションすることができてもよい。さらに、所望の場合、そのシミュレーション機能を備えたプロセスモジュールはプロセスプラントの中の冗長な一組の要素の内の１つとして使用されてもよい。このケースでは、プロセスモジュール（またはその任意の部分）は、一次（および実際の物理的な）デバイスの故障時、または一次（および実際の物理的な）デバイスと関連する検知された問題がある場合に、バックアップデータまたは冗長データ（信号、計算等）として動作してもよい。このケースでは、冗長な要素として働くプロセスモジュールは、冗長な機能を提供するために任意の公知の方法で（制御動作または検知動作を実行する）制御モジュールと通信可能に相互接続されてもよい。プロセスプラント内でのこのプロセスモジュールの冗長な要素としての使用は、プロセスモジュールが前述されたように１つ以上のハイファイシミュレーションパッケージに接続されている場合に特に有効である。
【００９９】
本明細書に説明されているスマートプロセスオブジェクト、グラフィック表示要素およびプロセスモジュールの機能は、オペレータワークステーション２０で動作してよく、プラント１０の中のコントローラ、フィールドデバイス等にダウンロードされ、それらの中で構成される必要はなく、それがこの機能を実現、表示、変更等しやすくする。さらに、この情報のすべては通常、プロセスプラント１０内の各コントローラとフィールドデバイスが使用できないのに対し、通常システムレベルでのデバイスに関する情報はすべて一般的にオペレータワークステーション２０が、および特に実行エンジン４８が使用できるため、この機能によりシステムレベルの決定をプロセスデバイス、コントローラ等の中においてよりさらに容易に下すことができるようになる。しかしながら、このようにすることが有利であるとき、プリミティブ等のプロセスモジュールと関連する論理のいくつかが、プロセスプラントの中の下方でデバイス、装置およびコントローラに埋め込まれてもよい。統合されたプロセス制御モジュールとグラフィックディスプレイを作成するためにスマートプロセスオブジェクトを使用することにより、実行エンジン４８は、例えば、最小量のユーザ構成アクティビティで漏れを自動的に検知し、スマートアラームを生成し、プラント１０の中の流量と質量平衡を計算し、追跡調査し、プラント１０内の損失を追跡調査し、プラント１０にさらに高いレベルの診断を提供し、エンジニアリング設計およびオペレータトレーニングの間にプラントの動作をシミュレーションすることができるようになる。
【０１００】
図９は、実行エンジン４８と、分散制御戦略を有するプロセスプラント内でそれによって使用されるプロセスモジュールとグラフィックディスプレイを統合する１つの考えられる方法を示している。図９に描かれているように、実行エンジン４８による実行中にオペレータにディスプレイを提供するプロセスモジュールによって作成される、あるいはプロセスモジュールと関連付けられるディスプレイクラス定義２２０は、制御戦略文書の中で所望の方法でこれらのディスプレイクラス定義を使用し、編成してもよい制御構成データベースツールとエンジニアリングツール２２２に提供される。プロセスアルゴリズム２２４は、実行時の前にこれらのディスプレイクラス定義に接続されてよく、それからディスプレイクラス定義とそれに結び付けられたフローアルゴリズムのインスタンスが作成され、（１つ以上のワークステーションの中の１つ以上の実行エンジン４８の形で実現されてもよい）グラフィックディスプレイ／プロセスモジュール実行環境２２６に提供されてもよい。グラフィックディスプレイ／プロセスモジュール実行時環境１２６は、実行中にコードを解析するために（つまり、ジャストインタイムのオブジェクトコード変換を実行するために）ダウンロードスクリプトパーサ２２８を使用し、ディスプレイクラスのために提供される、あるいはディスプレイクラスに結び付けられるフローアルゴリズムまたは他の規則ベースのプロシージャを実行するために規則ベースの実行エンジン２３０を使用する。このプロセス中、グラフィックディスプレイ／プロセスモジュール実行時環境２２６は、制御モジュール実行時環境２３２にデータまたは情報を提供するために、あるいは制御モジュール実行時環境２３２からデータまたは他の情報にアクセスするために、プロセスに関連するコントローラおよびフィールドデバイスで実行されてもよい制御モジュール実行時環境２３２と通信してもよい。言うまでもなく、グラフィックディスプレイ／プロセスモジュール実行時環境２２６は、図１のイーサネット（登録商標）バス２４等の所望の、あるいは事前に設定された通信ネットワークを使用して、制御モジュール実行時環境２３２と通信してもよい。またさらに、本明細書に説明されているグラフィックディスプレイ、プロセスモジュール、および制御モジュールを標準プロセス制御システムまたはプロセスプラントに統合する他の方法も使用されてもよい。
【０１０１】
再び図２を参照すると、構成アプリケーション３８は、プロセスモジュールを表示する、作成する、および／または編集するための１つ以上のアプリケーションを提供してもよい。一つの実施形態では、プロセスモジュールの初期定義が、プロセスモジュールのプロセスグラフィック設計に基づいて自動的に作成されてもよい。また、プロセスモジュールは、プロセスモジュールエディタを使用して作成、または修正されてもよい。プロセスブロックおよび／またはカスタムプロセスブロックの標準的なセットは、プロセスプラントの一部をシミュレーションするために使用されてもよいプロセスモジュールを作成するために使用されてもよい。プロセスモジュールは、例えばオペレータのトレーニングのためにオフラインシミュレーションで使用されてもよい。また、プロセスモジュールを用いて作成されたプロセスシミュレーションの部分は、プロセスシミュレーションの一部として計算されてもよい特性、将来の値、およびデータの性能を示すためにオンラインシステムで使用されてもよい。
【０１０２】
図１０乃至図１３は、例えば、プロセスモジュール３９および／またはグラフィックディスプレイ３５を作成する／使用する等、構成エンジニアのプロセスの間に図２の構成アプリケーション３８によって作成されてもよい例示的な画面表示を示している。理解されるように、図１０乃至図１３の画面表示は、例えばプロセスプラント１０の構成を描く組織系統図構造および／またはプロセスプラントを構成する、および／またはプロセスプラントの部分の動作をシミュレーションするために使用されてもよい要素を描く組織系統図構造を提供してもよい画面の左側にあるエクスプローラビューを含む。同様に、図１０乃至図１３の画面表示はその右側に１つ以上の情報ビューを含む。これらの情報ビューは、エクスプローラビューの中の要素の内の選択された要素についての追加の情報を提供する。
【０１０３】
スマートプロセスオブジェクトおよび／または非スマートプロセスオブジェクト等の多くの標準プロセスオブジェクトは、プロセスモジュールの作成を支援するために提供されてもよい。また、カスタムプロセスオブジェクトは、エンドユーザまたはエンドユーザンカテゴリ（例えば精製装置）のために作成されてもよい。同様に、エンドユーザはプロセスモジュールを作成するために使用されてもよいユーザ定義プロセスオブジェクト（特殊プロセスオブジェクト）を作成してもよい。標準プロセスオブジェクト、カスタムプロセスオブジェクト、および／または特殊プロセスオブジェクトは、プロセスモジュールを作成する際に使用するためにライブラリに記憶されてもよい。ユーザは使用可能なプロセスオブジェクトを表示するためにライブラリをブラウジングしてよく、該プロセスオブジェクトについての情報を表示するために、該プロセスオブジェクトを編集する等のためにプロセスオブジェクトを選択することができてもよい。図１０は、エクスプローラ部分３０４と、ライブラリの中のプロセスオブジェクトにアクセスするために使用できる情報部分３０８を有する例示的なディスプレイ３００の一部である。エクスプローラ部分３０４は、ライブラリフォルダ３１４を有するツリー構造３１２を含む。ライブラリフォルダ３１４は、例えば、プロセスモジュールの作成を支援するために提供される異なるカテゴリのプロセスオブジェクトに対応してもよい複数のサブフォルダ３２０を含むプロセスブロックテンプレートフォルダ３１６を含む。さらに、ライブラリフォルダ３１４は、それ自体、例えば構成アプリケーション３８のエンドユーザにより設計されるプロセスオブジェクトを記憶するために複数のサブフォルダを含むことがあるカスタムプロセスブロックフォルダ３２４を含んでよい。
【０１０４】
ユーザが例えばエクスプローラ部分３０４でカテゴリを選択する場合、選択されたカテゴリのコンテンツは情報部分３０８に示されてもよい。同様に、ユーザが、例えばエクスプローラ部分３０４でプロセスブロックを選択する場合、選択したプロセスブロックに関する情報は情報部分３０８に示されてもよい。
【０１０５】
図１１は、プロセスブロックテンプレートフォルダ３１６の中のアイテム３２６が、例えばマウス、タッチスクリーン、スタイラス、タッチパッド、キーボード等を介して選択された、例示的なディスプレイ３００の一部である。情報部分３０８は、選択されたプロセスブロックアイテム３２６について、パラメータ３２８と１つ以上のシミュレーションアルゴリズム３３０を表示する。また、情報部分３０８は、プロセスブロックを表示するために以前作成された１つ以上の３−Ｄ動的ダイナモ３３４を表示してもよい。
【０１０６】
選択的に情報部分３０８でさらに多くの情報またはさらに少ない情報を示すことができるであろう。例えば、ディスプレイ３００は、パラメータ３２８のデフォルト値等の追加情報が描かれてもよいより詳細なビューを可能にしてもよい。ユーザは、デフォルト値を選択してから、例えばキーボードを介して新しい値を入力することによりデフォルト値を変更できてもよい。また、ユーザは情報部分３０８でプロセスブロックまたはダイナモを選択する（例えば、上で「右クリックする」）ことにより該プロセスブロックに関連するプロセスブロックまたはダイナモを編集するためのアプリケーションを起動できてもよい。該選択に応えて、ウィンドウまたはディスプレイは、ユーザが、例えば該プロセスブロックおよび／またはダイナモを編集可能とするために表示されてもよい。
【０１０７】
ユーザが、例えば、プロセスモジュールを表示、編集等するためにすでに作成されているプロセスモジュールをブラウジングしたい場合がある。図１２は、すでに作成されたプロセスモジュールをブラウジングするために使用されてもよいエクスプローラ部分３５４と情報部分３５８を有する例示的なディスプレイ３５０の一部である。エクスプローラ部分３５４は、プロセスプラント１０の物理および／または論理領域に対応するフォルダを含んでよい階層構造３６２を含む。例えば、ツリー構造３６３はプロセスプラントの「ＡＲＥＡ＿Ａ」に対応するフォルダ３６６を含む。フォルダ３６６はシミュレーションフォルダ３７０、制御フォルダ３７２、およびディスプレイフォルダ３７４を含む。例えば、シミュレーションフォルダ３７０がユーザによって選択されると、フォルダ３７０内で使用できるプロセスモジュール３７８が情報部分３５８に表示されてもよい。選択的に、フォルダ３７０内で使用可能なプロセスモジュール３７８が階層３６２で表示されてもよい。ユーザは例えば情報部分３５８でプロセスモジュールの選択（例えば、上で「右クリックする」）によってプロセスモジュールを編集するためのアプリケーションを起動できてもよい。
【０１０８】
図１３は、プロセスプラント１０内で特定のノード（例えば、ワークステーション、コントローラ等）によって実行されるプロセスモジュールを割り当てるために使用できる例示的なディスプレイ４００の一部である。ディスプレイはエクスプローラ部分４０４と情報部分４０８を含む。エクスプローラ部分４０４は、プロセスプラント１０内のワークステーションに対応するフォルダ４１６と４１８を含んでよいツリー構造４１２を含む。フォルダ４１８は、プロセスモジュールフォルダ４２０を含む。プロセスモジュールは、プロセスモジュールに対応するアイテムをフォルダ４２０、またはオプションでフォルダ４１８にドラッグすることによりフォルダ４１８に対応するノードに割り当てることができる。図１２と図１３を参照すると、一例として、アイテム３７８の１つまたは両方が、該１つまたは両方のアイテム３７８を、フォルダ４１８に対応するノードに割り当てるためにフォルダ４１８またはフォルダ４２０までドラッグできるであろう。
【０１０９】
図１４は、プロセスモジュールを作成し、修正するためのエディタに対応する例示的なディスプレイ４５０である。ディスプレイ４５０は、作業空間部分４５４、プロセスブロックパレット部分４５８、パラメータ部分４６２およびツールバーを含む。ディスプレイ４５０は、新しいプロセスモジュールを作成する、および／または既存のプロセスモジュールを編集するために使用されてもよい。プロセスブロックパレット部分４５８は、複数のカテゴリのプロセスオブジェクトの内の１つを選択するために、プルダウンメニュー等のユーザインタフェース機構４６６を含んでよい。選択されたプロセスオブジェクトカテゴリに対応するプロセスオブジェクトテンプレートは部分４７０に描かれてもよい。プロセスオブジェクトカテゴリの例は、ストリームと接続に関連付けられたカテゴリ、アクチュエータと関連付けられたカテゴリ、標準プロセス装置と関連付けられたカテゴリ、カスタムプロセス装置と関連付けられたカテゴリ、ユーザ定義プロセス装置と関連付けられたカテゴリ等を含んでよい。ユーザは、例えば、部分４７０からプロセスオブジェクトテンプレートをドラッグし、それを作業空間部分４５４にドロップできるであろう。プロセスオブジェクトを表すブロックが作業空間部分４５４で（例えば、マウスクリックを介して）選択されると、選択されたプロセスオブジェクトに対応するパラメータはパラメータ部分４６２に示されてもよい。
【０１１０】
ストリーム要素は、プロセスモジュールによってシミュレーションされるプロセスの開始点と編集点を定義するために使用されてもよい。ガス、液体、または固体のストリームの処理は、例えば標準処理ブロック、カスタム処理ブロックおよび特殊処理ブロックの組み合わせによって実行されてよく、処理オブジェクト間の流れの調節は、例えば接続要素とアクチュエータ要素によって決定される。シミュレーションで使用される構成要素は、パレット部分４５８から作業空間部分４５４の中に適切なブロックと要素をドラッグすることにより定義されてもよい。処理オブジェクト間のプロセスフローは、流路内のブロックの入力と出力を接続するために、例えばマウスを使用することにより定義されてもよい。ストリームの特性は流路内の各接続により自動的に搬送されてもよい。各接続により搬送されてもよい特性の例は、質量流、圧力、温度、密度、または比熱の内の１つ以上を含む（または何も含まない）。また、接続ステータスは特性値とともに搬送されてもよい。選択的に、ユーザはストリームの組成を加えてもよい。組成がストリームに追加されると、この追加された情報は流路内の要素によってサポートされる。
【０１１１】
図１５は、単純なタンクに対応するプロセスモジュール５００の一例である。プロセスモジュール５００は、例えば、図１４のディスプレイ等のエディタのディスプレイを使用して作成可能となる。プロセスモジュール５００は、ストリーム要素５０４、５０８および５１２を含む。ストリーム要素は一定のプロセス状態（例えば供給圧力）を提供するために構成、あるいはそれらは他のモジュールにおけるストリームに対する基準として働いてもよい（例えば、ストリーム要素は別のモジュールに情報を渡すために使用される）。ストリーム要素５０８は別のモジュールを参照し、参照されたモジュール／ストリームの表示５１４は、ストリーム要素５０８の下に自動的に表示される。同様に、ストリーム要素５１２は別のモジュールを参照し、参照されたモジュール／ストリームの表示５１６はストリーム要素５０８の下に自動的に表示される。
【０１１２】
ユーザは、タンク水位等の、要素の入力、出力または内部計算値の特定の特性またはパラメータを公開することを選んでよい。すると特性またはパラメータ名が、対応するブロックの中に表示され、値はプロセスモジュールの実行中に特性またはパラメータ名の脇の作業空間内に表示される。
【０１１３】
シミュレーションで使用されるプロセスオブジェクトは、関連する装置および／または制御モジュールの物理特性に対応するパラメータを有してもよい。このようにして、ストリームとプロセスオブジェクトがいったんプロセスモジュールで定義されると、これらの要素のパラメータはプロセス要件および制御システム要件に一致するように構成されてもよい。再び図１４を参照すると、プロセスオブジェクトが作業空間部分４５４で選択されると、そのプロセスオブジェクトの構成可能なパラメータ（例えば、ｃｖ、高さ等）がパラメータ部分４６２に自動的に示されてもよい。パラメータ部分４６２に示されるパラメータの内の1つを選択する（例えばダブルクリックする）ことにより、関連するパラメータ値を修正できるように、ダイアログディスプレイが提供されてもよい。
【０１１４】
図１６は、作業空間部分４５４に入れられるプロセスオブジェクトを表すプロセスブロック５５０を有する図１４の例示的なディスプレイ４５０の説明図である。プロセスブロック５５０が選択されている。このようにして、プロセスブロック５５０に対応するパラメータがパラメータ部分に表示される。パラメータ５５４がパラメータ部分４６２で選択されている。このシナリオでは、パラメータ５５４はバルブ位置に関連する機能ブロック基準パラメータである。パラメータ５５４が選択された結果、パラメータ５５４を修正できるように例示的なディスプレイ５６０等のディスプレイが表示されてもよい。例えば、パラメータ５５４は、特定の制御またはプロセスモジュール内のパラメータを特定の出力プロセスオブジェクトに関連付けるために修正されてもよい。例えば、ディスプレイ５６０は、ユーザがプロセスオブジェクトおよび制御モジュールまたはプロセスモジュールを選択できるようにしてもよいボタン５６４を含む。
【０１１５】
図１６Ｂは、パラメータ部分４６０に機能ブロック基準パラメータを追加するために例示的なディスプレイ４５０を使用することの説明図である。図１６Ａと同様に、プロセスブロック５５０が選択されており、したがってプロセスブロック５５０に対応するパラメータがパラメータ部分４６２に表示されている。パラメータ５７０がパラメータ部分４６２で選択されている。このシナリオでは、ユーザは、メニュー５７４を介して、パラメータ５７０と関連付けられる別のモジュールのプロセスオブジェクトを割り当てることを選んだ。パラメータ５７０が、別のモジュールの機能ブロックに参照可能とするために、例示的なディスプレイ５８２のようなディスプレイが表示されてもよい。例えば、ディスプレイ５８２は、ユーザがプロセスオブジェクトおよび制御モジュールまたはプロセスモジュールを選択できるようにしてもよいボタン５８６を含んでいる。それに応じて、機能ブロック基準パラメータ５９０がパラメータ部分４６０に追加される。
【０１１６】
制御システムの内部で測定される容器水位等のプロセスパラメータは、例えばディスプレイ５６０のようなディスプレイを使用して関連するプロセスオブジェクト内で参照できる。オフライントレーニングでは、この基準は、例えば入力機能ブロックのシミュレーションパラメータを更新するために使用されてもよい。オンラインシステムでは、この基準は測定された値にアクセスするため、および例えば、この測定値を使用してシミュレーションの誤差を補正するために使用されてもよい。また、オンラインシステムの測定が失敗すると、オペレータはシミュレーションによる値を使用することを選んでよい。
【０１１７】
測定値が1台の装置で標準である場合、その装置と関連するプロセスオブジェクトはその測定値に対応する基準パラメータを含んでよい。他の測定値が制御システムで入手できる場合には、これらの測定値の１つ以上がプロセスモジュールに追加されてもよい。例えば、ユーザはプロセスモジュールのプロセスブロックを右クリックできるであろう。ユーザは次に測定値を選択するため、および測定値が関連付けられる内部パラメータまたは出口ストリーム特性を選択するために使用できるであろう１つ以上のディスプレイを提供されてもよい。いったんこの参照が行われると、該測定値に対応する基準パラメータが、プロセスブロック選択時に該測定値に対応する基準パラメータがパラメータ部分４６２に自動的に表示されてもよい。
【０１１８】
図１７は、特性、パラメータ、および／または測定の値が制御モジュールからプロセスモジュールの中に自動的に引き入れられてもよいことを示している。さらに、特性、パラメータ、および／または測定の値に対応するシミュレーションによる特性およびパラメータ値が制御モジュールに自動的に送信されてもよい。例えば、プロセスモジュール６００は、タンクに対応するプロセスオブジェクト６０４と調整弁に対応するプロセスオブジェクト６０８を含んでよい。制御モジュール６２０は、ＰＩＤ制御機能ブロック６２８にタンクの水位測定値を提供する入力ブロック６２４を含んでもよい。ＰＩＤ制御機能ブロック６２８の出力は調整弁に対応する出力ブロック６３２に提供されてもよい。測定されたタンク水位は入力ブロック６２４から取得され、プロセスオブジェクト６０４に提供されてもよい。同様に、シミュレーションによるタンク水位はプロセスオブジェクト６０４から取得され、入力ブロック６２４に提供されてもよい。また、測定されたバルブ位置は出力ブロック６３２から取得され、プロセスオブジェクト６０８に提供されてもよい。同様に、シミュレーションによるバルブ位置はプロセスオブジェクト６０８から取得され、出力ブロック６３２に提供されてもよい。
【０１１９】
図１４に関して前述されたように、プロセスモジュールを作成し、修正するためのエディタは、プロセスモジュールを作成するためにユーザによって使用できる種々のタイプのプロセスオブジェクトを提供してもよい。例えば、標準プロセスオブジェクトおよびカスタムプロセスオブジェクトが提供されてもよい。カスタムプロセスオブジェクトは、エンドユーザによって提供される要件のセットに応じてエンドユーザのために、またはエンドユーザによって設計されるプロセスオブジェクトを含んでよい。カスタムプロセスブロックは例えば複雑なプロセス装置をシミュレーションするために使用されてよく、装置の動作をシミュレーションするために（ステップ応答モデル、第１の原則モデル等の）１つ以上のモデルを使用してもよい。例えば、ステップ応答モデルは、反応、容器の中で完全とは言えない混合等をシミュレーションするために使用されてもよい。カスタムプロセスオブジェクトは、例えば装置のための出力ストリーム特性／パラメータおよび／または内部測定値と関連する内部特性／パラメータを生成するためにこのようなモデルを活用してもよい。１つ以上の入力ストリームの選択された特性がモデルに対する入力として提供されてもよい。カスタムプロセスオブジェクトは、例えば条件が理想的であるという仮定に基づいて他のパラメータ／特性を生成してもよい。
【０１２０】
図１４を参照すると、カスタムオブジェクトのインスタンスは、部分４５８からブロックをドラッグし、例えば作業空間部分４５４に該ブロックをドロップすることによりプロセスモジュールに追加されてもよい。カスタムプロジェクトオブジェクトと関連する動的応答が、表示され、修正されてもよい。例えば、ユーザはカスタムオブジェクトを表すブロックの上で右クリックし、メニューから「特性」を選択できるであろう。ここで図１８を参照すると、例示的なディスプレイ６５０等のディスプレイがそれに応じて表示されてもよい。ディスプレイ６５０は部分６５４のオブジェクトについて定義されるモデルを示す。部分６５８はモデルと関連する特性／パラメータが統合しているか、あるいは統合していないか否かを示す。
【０１２１】
図１９を参照すると、モデルに関するさらに多くの情報が表示されてもよい。例えば、例示的なディスプレイ６７０は、階層ビューの中の異なるモデルを表示する部分６７４を含む。モデル６７８が選択され、異なる特性／パラメータと関連するステップ応答が部分６８２に表示される。ここで図２０を参照すると、モデルと関連する特性／パラメータを選択することにより、その特性／パラメータに関するさらなる詳細が表示されてもよい。例示的なディスプレイ７００では、パラメータ７０４は部分７０８で選択されている。関連するステップ応答は、情報部分７１２にさらに詳しく示されている。
【０１２２】
ディスプレイ７００の一部７１６は、ユーザが応答を修正できるようにする。例えば、ユーザがボタン７２０を選択すると、図２１の例示的なディスプレイ７３０等のディスプレイがユーザに表示されてもよい。ディスプレイ７３０によって、ユーザは利得、不動作時間、一次時間制約制、二次時間制約、リードタイム制約等のモデルのパラメータを修正できる。再び図２０を参照すると、ユーザはステップ応答をグラフィックで設計するためにボタン７４０と７４４を活用できるであろう。
【０１２３】
ユーザは、初期の状態および定常状態までの時間等のモデルの他のパラメータを修正できてもよい。例えば、図２２は、初期状態および／またはモデルの定常状態までの時間を修正するために使用されてもよい例示的なディスプレイ７５０である。ディスプレイ７５０はナビゲーション部分７５４と情報部分７５８とを含む。ユーザが初期状態インジケータ７１２を選択すると、初期状態および／または定常状態までの時間に関する情報が情報部分７０８に表示される。ユーザは情報部文７０８を介して多様な初期状態および／または定常状態までの時間を修正できる。例えば、ユーザはある特定の初期状態または定常状態までの時間に対応する値を選択してから、該値を修正する、または新しい値を入力できるであろう。
【０１２４】
前述されたようにモデルを作成する代わりに、モデルは別のソフトウェアツールを使用して作成することもできるであろう。それからモデルをインポートできる。例えば、有限インパルス応答（ＦＩＲ）モデル等の作成されたモデルの表現はテキストファイルの定義されたフォーマットに記憶できるであろう。次に、モデルはテキストファイルを使用してインポートできる。定義されたフォーマットは、例えば、入力ストリーム名と出力ストリーム名、および内部パラメータの名前が、モデルが対応するプロセスオブジェクトのストリームとパラメータ定義に一致しなければならないことを指定できるであろう。
【０１２５】
プロセスモジュールエディタにより、ユーザは新しいプロセスオブジェクトを作成することもできる。このようなプロセスオブジェクトはプロセスプラントエンティティの動作をシミュレーションするために１つ以上のタイプのモデルを活用できる。例えば、ユーザはステップ応答モデルおよび第１の主要モデル等の１つ以上のタイプのモデルから選択できてもよい。単なる１つの例として、モデルはＣ、Ｃ＋＋、Ｃ＃、ビジュアルＢＡＳＩＣ等のプログラミング言語を使用して作成されてもよい。
【０１２６】
再び図１４を参照すると、ユーザは、例えばディスプレイ４５０の「ファイル」メニューから「新規」を選択することにより、あるいは「ファイル」メニューの「新規」選択に対応するツールバーのアイコンを選択することにより新しいプロセスオブジェクトを作成することを選んでよい。
【０１２７】
次に、図２３の例示的なディスプレイ７８０のようなディスプレイがユーザに表示されてもよい。ディスプレイ７８０によってユーザは、プルダウンメニュー７８４等のユーザインタフェース機構を介して新しいプロセスモジュールを作成するのか、新しいプロセスオブジェクトを作成するのか等を選択できる。ユーザが新しいプロセスオブジェクトを作成することを選ぶ場合には、ディスプレイ７８０によりユーザは、ボタン７８６等のユーザインタフェース機構を介して既存のプロセスオブジェクトから起動するか否かを選択できる。また、ディスプレイ７８０によって、ユーザはプルダウンメニュー７８８等のユーザインタフェース機構を介して新しいプロセスオブジェクトによって活用されるモデルのタイプを選択できる。例示的なディスプレイ７８０では、ユーザはステップ応答モデルまたは第１の主要モデルから選択してもよい。第１の主要モデルは、Ｃ、Ｃ＋＋、Ｃ＃、ビジュアルＢＡＳＩＣ等のプログラミング言語を使用して指定されてもよい。
【０１２８】
ステップ応答モデルが選択される場合、図２４の例示的なディスプレイ８００のようなディスプレイがユーザに表示されてもよい。ディスプレイ８００はナビゲーション部分８０２と情報部分８０４を含む。ナビゲーション部分８０２は、定義できるプロセスブロックの異なる態様に対応する複数のインジケータを含んでもよい。例えば、ナビゲーション部分８０２は、定義できるプロセスブロックの異なる態様に対応する複数のインジケータを含んでもよい。例えば、ナビゲーション部分８０２は、ストリームとパラメータのインジケータ８０６、モデルセットアップインジケータ８０８、およびモデルインジケータ８１０を含んでもよい。ユーザがストリームおよびパラメータインジケータ８０６を選択すると、情報部分は、ユーザが入力ストリーム、出力ストリーム、パラメータ等を定義できるユーザインタフェース機構８１２を含んでもよい。例えば、入力ストリームと出力ストリームの場合、ユーザは、ストリーム名、ストリームのタイプ（例えば、液体、固体、または気体）、位置、組成等を定義し得る。
【０１２９】
ここで図２５を参照すると、ユーザがタブ８１４を選択する場合、ユーザが、ユーザにとって可視とならなければならないプロセスオブジェクトのパラメータを追加または修正可能とするために情報部分８０４が変更されてもよい。ユーザは、例えばパラメータの名前、パラメータの単位、アクセス（読み取り専用、読み書き等）、パラメータの低い限度および／または高い限度、位置等の内の１つ以上を定義できてもよい（または何も定義できなくてもよい）。
【０１３０】
ユーザは、入力ストリームと出力ストリームの属性およびステップ応答モデルによって活用されるパラメータを指定し得る。図２６を参照すると、ユーザがモデルセットアップインジケータ８０８を選択する場合、情報部分は、ユーザが入力ストリームと出力ストリームの属性およびステップ応答モデルによって活用されるパラメータを指定できるように修正されてもよい。例えば、ユーザが「追加」８２０ボタンを選択すると、ユーザがパラメータを追加し、パラメータが統合された応答を有さなければならないか否かを指定できるようにディスプレイ８２４が表示される。
【０１３１】
さらに、ユーザはステップ応答モデルを定義してもよい。例えば、ユーザがディスプレイ部分８０２の中でモデルインジケータ８１０を選択する（例えば「右クリックする」）と、「新規」選択を含むメニューが表示されてもよい。ここで図２７を参照すると、ユーザがメニューから「新規」を選択すると、デフォルト名の付いたモデルインジケータ８３０がディスプレイ部分８０２の中のモデルインジケータ８１０の下で追加されてもよい。さらに、モデルに対応するインジケータ８３２、８３４、および８３６がディスプレイ部分８０２でも追加されてもよい。さらに、情報部分８０４は、ユーザが例えばテキスト記述および定常状態までの時間パラメータ等のモデルに関する情報を追加できるように修正されてもよい。モデルと初期状態は、例えば図２０から図２２に関して前述された方法と同様の方法で指定されてもよい。
【０１３２】
ここで図２３と図２８を参照すると、ユーザが例えばディスプレイ７８０を介して新しいプロセスオブジェクトにより活用される第１の主要モデルを選択すると、プロセスオブジェクトエディタは例示的なディスプレイ８５０等のディスプレイを活用してユーザに提供されてもよい。ディスプレイ８５０は、入力ストリームと出力ストリームの表示を表示するための部分８５４と、パラメータの表示を表示するための部分８５６を含んでよい。いくつかのパラメータがすべてのプロセスオブジェクトにとって標準であってよく、したがって部分８５６に最初に示されてもよい。ディスプレイ８５０は、シミュレーションのためのアルゴリズムを指定するための部分８５８も含んでよい。該部分８５８は、（例えば、初期、実行、後、等の）異なる動作モードを選択するためのタブ８６０、８６２および８６４を含んでよい。ユーザは、例えば、部分８６６にＣ、Ｃ＋＋、Ｃ＃等のプログラミング言語でアルゴリズムを入力してもよい。
【０１３３】
さらにユーザはプロセスオブジェクトを作成する際にストリームおよび／またはパラメータを追加し得る。例えば、部分８５４で右クリックすることにより、ユーザは「新規」選択を有するメニューを提供されてもよい。ユーザが「新規」選択を選択すると、図２９の例示的なディスプレイ８７０等のディスプレイはユーザに表示されてもよい。ディスプレイ８７０を使用すると、ユーザは例えば、名前、接続使用（例えばＩＮまたはＯＵＴ）、位置、ストリームタイプ（例えば、液体、固体、または気体）、および／または存在する場合は関連組成を定義できてもよい。同様に、ユーザはストリームを右クリックしてから、右クリックに応えて表示されるメニューから「修正」要素を選ぶことにより既存のストリームを修正できるであろう。ディスプレイ８７０に類似したディスプレイが、ストリームを修正するために使用できるであろう。
【０１３４】
別の例として再び図２８を参照すると、部分８５６で右クリックすることにより、ユーザは「新規」選択を有するメニューを提供されてもよい。ユーザが「新規」選択を選択すると、図３０の例示的なディスプレイ８９０等のディスプレイがユーザに選択されてもよい。ディスプレイ８９０を使用すると、ユーザは名前、パラメータタイプ（例えば、浮動小数点、ブール（演算子）、離散、機能ブロック基準、文字列、指定セット等）単位、アクセス（例えば、読み取り専用、読み書き等）、位置、低い限度値と高い限度値、デフォルト値、ユーザにとってパラメータが可視でなければならないか否か等を定義できてもよい。同様に、ユーザはパラメータを右クリックしてから、右クリックに応えて表示されるメニューから「修正」要素を選ぶことができるであろう。ディスプレイ８９０に類似したディスプレイはパラメータを修正するために使用できるであろう。
【０１３５】
指定されたパラメータタイプに応じてディスプレイ８９０等のディスプレイに異なるフィールドが表示できるであろう。例えば、パラメータタイプが機能ブロック基準として選択される場合、参照されてもよい（例えば、入力、出力、ＡＩ、ＤＩ、ＰＣＩ、ＡＯ、ＤＯ、ＤＶ等の）指定ブロック基準の名前とブロック（複数の場合がある）のタイプが表示されてもよい。
【０１３６】
当業者が認識するように、プロセスモジュールはプロセスをシミュレーションする上で役立つためのモデルの複数のタイプを活用できる。例えば、プロセスモジュールの中の別のプロセスオブジェクトが第１の主要モデルを活用してもよいが、プロセスモジュールの中の１つのプロセスオブジェクトはステップ応答モデルを活用してもよい。さらに、ユーザはプロセスオブジェクトまたはプロセスモジュールと関連してあらゆるモデルを活用しないことを選んでよい。別のインプリメンテーションでは、少なくとも１つのプロセスオブジェクトが複数の異なるタイプのモデルを活用できてもよい。例えば、別のパラメータが第１の主要モデルを活用してもよいのに対し、プロセスオブジェクトの１つのパラメータはステップ応答モデルを活用してもよい。
【０１３７】
ストリーム要素は、モジュールによって実現されるシミュレーションの開始点と終了点を定義するために使用されてもよい。使用され得るストリーム要素のタイプは、ユーザ定義特性値がシミュレーションで使用され得るストリーム要素、上流ブロックで決定される特性がストリーム特性値として反映されるストリーム要素、このストリームに構成されるパラメータが外部出力ストリームの特性値を読み取るために使用され、ストリーム特性値として使用されるストリーム要素、上流ブロックによってストリーム要素に渡される特性値が構成されたパラメータを使用して外部入力ストリームに書き込まれるストリーム要素等を含む。アクセスされ、構成され得るストリームパラメータはストリームタイプに応じて変化してもよい。
【０１３８】
ユーザ定義特性値がシミュレーションで使用されるストリーム要素は、例えば、プロセスシミュレーションで開始点を定義するために使用されてもよい。入力ストリームがプロセスモジュールに追加されると、それはモジュールのために選択されたデフォルト接続タイプをデフォルトによって取られる。ディスプレイの作業空間部分でストリームをクリックすることにより、出力特性値とストリームと関連する構成可能パラメータが作業空間部分とは個別のディスプレイの一部に示される。
【０１３９】
前述されたように、ユーザは、グラフィックディスプレイを作成し、次にそのディスプレイから対応するプロセスモジュールを自動的に生成し得るし、および／または逆も同様である。図３１は、対応するプロセスグラフィックからプロセスモジュールを、および／または逆もまた同様に自動的に生成するために使用されてもよい例示的なシステム９００のブロック図である。システム９００は、プロセスグラフィックスとプロセスモジュールの編集を容易にするための編集スタジオ９０４と、編集されているプロセスグラフィックスとプロセスモジュールを記憶するためのクライアントモデル９０８と、およびデータベース９１２とを含む。システム９００の少なくともいくらかが例えばソフトウェアを介して実現されてもよい。
【０１４０】
編集スタジオ９０４とクライアントモデル９０８は、ワークステーション、サーバ等の１つ以上のコンピューティングシステムによって実現できる。図１を参照すると、編集スタジオ９０４および／またはクライアントモデル９０８は、例えば操作ワークステーション２０および／または操作ワークステーション２２によって少なくとも部分的に実現できる。例えば、編集スタジオ９０４および／またはクライアントモデル９０８は、操作ワークステーション２０によってのみ、あるいはワークステーション２２によってのみ実現できる。別のインプリメンテーションでは、編集スタジオ９０４および／またはクライアントモデル９０８は、ワークステーション２０がクライアントとして動作し、他のコンピューティングシステムがクライアントサーバ装置でサーバとして動作する別のコンピューティングシステムと連動して操作ワークステーション２０によって実現できる。構成データベース２８は、例えばデータベース９１２を含むことができる。
【０１４１】
編集スタジオ９０４は、プロセスグラフィックスの編集を容易にするためにプロセスグラフィックスエディタ９１６を、および編集プロセスモジュールを容易にするためにプロセスモジュールエディタ９２０を含んでもよい。プロセスグラフィックスエディタ９１６は、要素をどのように描画する必要があるのか（例えば、線の重さ、色、陰影等）に関する指示のような描画情報９２４と接続されてもよい。プロセスグラフィックスエディタ９１６は、例えば図３のディスプレイ６４等のユーザインタフェースディスプレイを生成し得る。プロセスモジュールエディタ９２０は、クライアントモデル９０８と接続されてもよい。プロセスグラフィックスエディタ９１６は、例えば図１４のディスプレイ４５０等のユーザインタフェースディスプレイを生成し得る。
【０１４２】
編集スタジオ９０４は、プロセスグラフィックスエディタ９１６およびプロセスモジュールエディタ９２０で講じられる編集処置を調整するための監視プログラムモジュール９３２も含んでよい。例えば、プロセスグラフィックスエディタ９１６は、プロセスグラフィックスを編集するまたは作成する際にユーザによって講じられる編集処置を監視プログラムモジュール９３２に通知してもよい。監視プログラムモジュール９３２は、次にプロセスグラフィックスと関連するプロセスモジュールに関して対応する処置を講じるためにプロセスモジュールエディタ９２０に指令を発する。別の例として、プロセスモジュールエディタ９２０は、プロセスモジュールを編集する、または作成する際にユーザによって講じられる編集処置を監視プログラムモジュール９３２に通知してもよい。監視プログラムモジュール９３２は、次に、プロセスモジュールと関連するプロセスグラフィックスに関して対応する処置を講じるためにプロセスグラフィックスエディタ９１６に指令を発する。このようにして、システム９００は、プロセスグラフィックスの作成または編集に基づいてプロセスモジュールの自動生成または編集を容易にしてもよい。
【０１４３】
いくつかの例示的なシナリオが、システム９００の動作を描くために説明されるであろう。１つのシナリオでは、ユーザはプロセスグラフィックスエディタ９１６を使用してアクチュエータに対応するグラフィックスブロックをプロセスグラフィックスに追加する。プロセスグラフィックスエディタ９１６は、次に、アクチュエータブロックがプロセスグラフィックスに追加された旨を監視プログラムモジュール９３２に通知してもよい。監視プログラムモジュール９３２はプロセスモジュールエディタ９２０に、プロセスグラフィックスに対応するプロセスモジュールにアクチュエータに対応するプロセスブロックを追加するように指令を発する。同様なシナリオでは、ユーザはプロセスモジュールエディタ９２０を使用してポンプに対応するプロセスオブジェクトをプロセスモジュールに追加する。プロセスモジュールエディタ９２０は、ポンプオブジェクトがプロセスモジュールに追加された旨を監視プログラムモジュール９３２に通知してもよい。監視プログラムモジュール９３２は、次に、プロセスグラフィックスエディタ９１６に、ポンプに対応するグラフィックスブロックをプロセスモジュールに対応するプロセスグラフィックスに追加するように指令を発する。
【０１４４】
別のシナリオでは、ユーザはプロセスグラフィックスエディタ９１６を使用してプロセスグラフィックスからグラフィックスブロックを削除する。プロセスグラフィックスエディタ９１６は、次に、グラフィックスブロックがプロセスグラフィックから削除された旨を監視プログラムモジュール９３２に通知する。監視プログラムモジュール９３２は、次に、プロセスモジュールエディタ９２０に、プロセスグラフィックスに対応するプロセスモジュールからプロセスグラフィックスに対応するプロセスブロックを削除するように指令を発する。同様のシナリオでは、ユーザはプロセスモジュールエディタ９２０を使用してプロセスモジュールからプロセスオブジェクトを削除する。プロセスモジュールエディタ９２０は、次に、プロセスグラフィックスがプロセスモジュールから削除された旨を監視プログラムモジュール９３２に通知する。監視プログラムモジュール９３２は、次に、プロセスグラフィックスエディタ９１６に、プロセスモジュールに対応するプロセスグラフィックスからポンプに対応するグラフィックスブロックを削除するように指令を発する。
【０１４５】
クライアントモデル９０８は、編集スタジオ９０４によって作成され、プロセスグラフィックス９３６とグラフィックスライブラリ９４０を含んでもよい。プロセスグラフィックスエディタ９１６は、クライアントモデルプロセスグラフィックス９３６に作用し、グラフィックスライブラリ９４０の中に設けられるグラフィックスブロックを活用してもよい。クライアントモデルプロセスグラフィックス９３６は、当初、データベース９１２の中のデータベースプロセスグラフィックス９４４に基づいて作成されてもよい。以後、クライアントモデル９０８が、クライアントモデルプロセスグラフィックス９３６で加えられた変更を反映するために、データベース９１２の中のデータベースプロセスグラフィックス９４４を更新する。このような更新は、例えば、クライアントモデルプロセスグラフィックス９３６の変更に応えて、ユーザ要求に応えて、周期的に、ユーザがプロセスグラフィックスまたはプロセスモジュールの編集または作成の完了を示すとき等に発生してもよい。
【０１４６】
クライアントモデル９０８は、クライアントモデルプロセスモジュール９４８とプロセスブロックライブラリ９５２も含んでよい。プロセスモジュールエディタ９２０は、クライアントモデルプロセスモジュール９４８に作用し、プロセスブロックライブラリ９５２に設けられるプロセスブロックを活用してもよい。クライアントモデルプロセスモジュール９４８は、データベース９１２の中のプロセスモジュール複製９５６またはデータベースプロセスモジュール９６０に基づいて初期に作成されてもよい。例えば、プロセスモジュール複製９５６は、初期にデータベースプロセスモジュール９６０に基づいて作成可能となる。以後、クライアントモデル９０８は、クライアントモデルプロセスモジュール９４８で加えられた変更を反映するためにデータベース９１２の中のプロセスモジュール複製９５６を更新されてもよい。このような更新は、例えば、クライアントモデルプロセスモジュール９４８の変更に応えて、ユーザ要求に応えて、周期的に、ユーザがプロセスグラフィックスまたはプロセスモジュールの編集の完了または作成の完了を示すとき等には作成してもよい。例えば、ユーザがプロセスグラフィックスまたはプロセスモジュールの編集の完了または作成の完了を示すと、プロセスモジュール複製９５６がデータベースプロセスモジュール９６０を更新するために使用されてもよい。
【０１４７】
動作中、ユーザは、例えばプロセスグラフィックスを編集する、または作成するためにプロセスグラフィックスエディタ９１６を活用してもよい。ユーザがプロセスグラフィックスに加える変更は、クライアントモデルプロセスグラフィックス９３６として記憶されてもよい。また、クライアントモデルプロセスグラフィックス９３６に対する変更は、次に前述されたようにデータベースプロセスグラフィックス９４４に伝搬される。さらに、ユーザがプロセスグラフィックスに加える変更は、プロセスグラフィックスに対応するプロセスモジュールで反映される。すなわち、プロセスグラフィックスエディタ９１６は、プロセスグラフィックスに対する変更の表示を監視プログラムモジュール９３２に送信される。次に、監視プログラムモジュール９３２は対応するモジュールに対応した変更を加えるためにプロセスモジュールエディタ９２０に指令を送信する。プロセスモジュールに対する変更はクライアントモデルプロセスモジュール９４８として記憶される。また、クライアントモデルプロセスモジュール９４８に対する変更は、前述されたように、プロセスモジュール複製９５６とデータベースプロセスグラフィックス９４４に伝搬されてもよい。
【０１４８】
同様に、ユーザは、例えばプロセスモジュールを編集するまたは作成するためにプロセスモジュールエディタ９２０を活用してもよい。ユーザがプロセスモジュールに加える変更は、クライアントモデルプロセスモジュール９４８として記憶されてもよい。また、クライアントモデルプロセスモジュール９４８に対する変更は、次に、前述されたように、プロセスモジュール複製９５６およびデータベースプロセスグラフィックス９４４に伝搬される。さらに、ユーザがプロセスモジュールに加える変更は、プロセスモジュールに対応するプロセスグラフィックスに反映される。すなわち、プロセスモジュールエディタ９２０は、プロセスモジュールに対する変更の表示を監視プログラムモジュール９３２に送信される。次に、監視プログラムモジュール９３２は、対応するグラフィックスに対する対応する変更を加えるためにプロセスグラフィックスエディタ９１６に指令を送信する。プロセスグラフィックスに対する変更は、クライアントモデルプロセスグラフィックス９３６として記憶される。また、クライアントモデルプロセスグラフィックス９３６に対する変更は、次に前述されたようにデータベースプロセスグラフィックス９４４に伝搬される。
【０１４９】
監視プログラムモジュール９３２に関して、それは概してプロセスグラフィックスエディタ９１６からプロセスグラフィックスに対する変更の表示を受信する。次に、監視プログラムモジュール９３２は、プロセスモジュールに対するどの変更が、プロセスグラフィックスに対するこれらの変更に相当するのかを決定する。次に、監視プログラムモジュール９３２は、プロセスモジュールエディタ９２０に指令を発する。プロセスグラフィックスに対するいくつかの変更の場合、監視プログラムモジュール９３２は、対応するプロセスモジュールに対応する変更がないと判断する。例えば、プロセスグラフィックスのグラフィックス要素の色の変更はプロセスモジュールにおける対応する変更を有さない場合がある。
【０１５０】
監視プログラムモジュール９３２は、プロセスグラフィックスに対する変更の表示を受信すると、プロセスモジュールに対するどの変更が、プロセスグラフィックスに対する変更に相当するのかを判断する。また、監視プログラムモジュール９３２は、プロセスグラフィックスに対する変更に相当するプロセスモジュールに対する変更を、周期的に、プロセスグラフィックスに対する変更の特定数の表示が受信されたとき、ユーザが、それが変更をプロセスモジュールに伝搬させることを希望することを示す場合に、ユーザがプロセスグラフィックスの編集または作成が完了したことを示すとき等に決定する。同様に、監視プログラムモジュール９３２は、それがプロセスグラフィックスに対する変更の表示を受け取った直後に、あるいは監視プログラムモジュール９３２が指令を決定した直後に、プロセスモジュールエディタ９２０に指令を発する。また、監視プログラムモジュール９３２は、プロセスモジュールエディタ９２０に、周期的に、プロセスグラフィックスに対する変更の特定数の表示が受け取られたとき、特定数の指令が決定されたとき、ユーザが、それが変更をプロセスモジュールに伝搬させることを希望することを示すとき、ユーザがプロセスグラフィックスの編集または作成が完了したことを示すとき等に指令を発する。
【０１５１】
同様に、監視プログラムモジュール９３２は、概してプロセスモジュールエディタ９２０からプロセスモジュールに対する変更の表示を受け取る。次に、監視プログラムモジュール９３２は、プロセスグラフィックスに対するどの変更がプロセスモジュールに対するこれらの変更に相当するのかを決定する。次に、監視者プログラムモジュール９３２は、プロセスグラフィックスエディタ９１６に指令を発する。プロセスモジュールに対するいくつかの変更の場合、監督者モジュール９３２は対応するプロセスグラフィックスに対する対応する変更がないと判断する。
【０１５２】
いくつかのケースでは、システム９００は、プロセスグラフィックスに基づいてプロセスモジュールの構成を自動的に完了できない場合がある。このようなケースでは、ユーザはプロセスモジュールの構成を完了するためにプロセスモジュールエディタ９２０を活用できる。例えば、図７Ａと図７Ｂに関して前述されたように、制御モジュールはプロセスモジュールおよび／またはプロセスグラフィックスと統合されてもよい。システム９００は、プロセスグラフィックスに基づいて制御モジュールのプロセスモジュールと統合を自動的に決定できない場合がある。したがって、ユーザは構成を完了する場合に役立てるためにプロセスモジュールエディタ９２０または何らかの他のツールを活用できるであろう。
【０１５３】
図３２は、プロセスモジュールを構成する場合に役立てるためにしようされてもよい例示的なディスプレイ１０００である。例示的なディスプレイ１０００は、例えば、図１の構成アプリケーション３８によって生成されてもよい。図３２に示されるように、プロセスモジュールを描くプロセスモジュール部分１００４は、プロセスモジュールと関連する制御モジュールを描く制御モジュール部分１００８に近接して表示できるであろう。プロセスモジュール部分１００４はバルブブロック１０１２、タンクブロック１０１４、ポンプブロック１０１６、およびバルブブロック１０１８を含む。バルブブロック１０１２の出力はタンクブロック１０１４の入力に接続され、ポンプブロック１０１６の入力はタンクブロック１０１４の出力に接続される。ポンプブロック１０１６の出力はバルブブロック１０１８の入力に接続される。バルブブロック１０１２の入力とバルブブロック１０１８の出力はストリーム要素（ラベルは付けられていない）に接続される。バルブブロック１０１２、タンクブロック１０１４、ポンプブロック１０１６、およびバルブブロック１０１８は、配管要素（ラベルは付けられていない）を介して直列で接続される。
【０１５４】
制御モジュール部分１００８は、プロセスモジュール部分１００４のブロックと関連する物理要素の内の少なくともいくつかを制御する制御モジュールに対応する。制御モジュール部分１００８は、プロセスモジュール部分１００４に描かれている要素の中で、あるいは要素と関連する制御を提供する相互接続されている機能ブロックのセットを含む。制御モジュールは、第１の制御ループ１０２４と第２の制御ループ１０２８を含む。第１の制御ループ１０２４はタンク１０１４の中への流体の流れに付いての流体入力情報を受信することを目的とするＡＩ機能ブロック１０３２、ＰＩＤ制御を実行することを目的とするＰＩＤ制御機能ブロック１０３４、およびバンク１０１４の中への材料の所望の流れを達成するためにバルブ１０１２を操作することを目的とするＡＯ機能ブロック１０３６を含む。同様に、制御ループは、タンク１０１４内で水位センサによって測定されるようなタンク水位情報を提供することを目的とするＡＩ機能ブロック１０４０、ＰＩＤ制御ブロック１０４２、およびバルブ１０１８を操作し、タンク１０１４内の流体の水位の制御を達成するためにＰＩＤ制御ブロックから制御信号を受信するＡＯ機能ブロック１０４４を含む。部分１００８に描かれている制御モジュールも、例えば、タンク１０１４に関して制御アクティビティを実行するために、そのように所望の場合に、制御ループ１０２４と１０２８によって使用されてもよい、ポンプ１０１６のオン／オフ状態または動作を示すことを目的とするＤＩ機能ブロック１０５０を含む。
【０１５５】
ディスプレイ１００４内に描かれているプロセスモジュールとディスプレイ１００８に描かれている制御モジュールを統合するために、ユーザはプロセス変調部分１００４の要素と制御モジュール部分１００８の関連要素をグラフィックに選択することによりディスプレイ１０００を活用してもよい。例えば、ユーザはマウス、スタイラス、タッチスクリーン等を用いて、例えば、ユーザがプロセスモジュール部分１００４の中の要素にリンクすることを希望する制御モジュール部分１００８の中の要素を選択できるであろう。制御モジュール部分１００８内の要素を選択した後に、ユーザは、次に、例えば、制御モジュール部分１００８内で選択された要素と関連付けられなければならないプロセスモジュール部分１００４内の要素を「右クリックする」、「ダブルクリックする」等によって選択できるであろう。要素が、制御モジュール要素が関連付けられるあろう複数のパラメータを有する場合、ユーザはポップアップウィンドウメニュー、チェックボックス等を使用して、パラメータの内の１つを選択するようにプロンプトを出されるであろう。例えば、ユーザはＡＯブロック１０３６を最初に選択できるであろう。次に、ユーザはバルブ１０１２でダブルクリックできるであろう。このようにして、ユーザはＡＯ機能ブロックが、タンク１０１４内への材料の所望の流れに影響を及ぼすためにバルブ１０１２を操作することを指定できる。
【０１５６】
同様に、ユーザは、制御モジュール部分１００８内のＡＩ機能ブロック１０３２をグラフィックで選択し、次にプロセスモジュール部分１００４のタンクブロック１０１４を選択できる。タンクブロック１０１４はそれと関連付けられる複数のパラメータ（例えば、タンクの中への流れ、タンクレベル等）を有することがあるため、ユーザはタンクブロック１０１４を選択することに応えてタンクパラメータの内の１つを選ぶようにプロンプトを出される。例えば、ユーザは、ポップアップウィンドウ、メニュー、チェックボックス等を介して入力フローパラメータまたはタンクレベルパラメータの間で選ぶようにプロンプトを出される。するとユーザは入力フローパラメータを選択できる。
【０１５７】
前述された例では、ユーザは最初に制御モジュール部分の要素を選んでから、プロセスモジュール部分の関連要素を選ぶが、ユーザは最初にプロセスモジュール部分の要素を選んでから、制御モジュール部分の関連要素を選ぶことができる。
【０１５８】
別の例としては、ユーザは、制御モジュール部分１００８に描かれている制御モジュール、およびプロセスモジュール部分１００４に描かれているプロセスモジュールのビューの提示を受け、生後モジュールとプロセスモジュールの要素は描かれているが、それらの相互接続は描かれていない。例えば、プロセスモジュールのビューは、バルブ１０１２、タンク１０１４、ポンプ１０１６、およびバルブ１０１８がプロセスモジュールの要素であるとして描かれている階層ビューとなるであろう。同様に、制御モジュール１００８のビューは、制御ループ１０２４、制御ループ１０２８、およびＤＩ機能ブロックが制御モジュールの要素であるとして描かれている階層ビューであろう。ＡＩ機能ブロック１０３６、ＰＩＤ機能ブロック１０３４、およびＡＯ機能ブロック１０３６は、制御ループ１０２４の要素であるとして描かれてよく、ＡＩ機能ブロック１０４０、ＰＩＤ機能ブロック１０４２、およびＡＯ機能ブロック１０４４は制御ループ１０２８の要素であるとして描かれてもよい。ユーザは、次に、前述された方法に類似した方法で、プロセスモジュールの階層ビューの要素、および制御モジュールの階層ビューの中の関連要素をグラフィックに選択できる。
【０１５９】
実現時に、本明細書に説明されているソフトウェアのいずれかは磁気ディスク、レーザディスク、または他の記憶媒体上でのように任意のコンピュータ読取可能メモリ内に、コンピュータまたはプロセッサ等のＲＡＭまたはＲＯＭ内に記憶されてもよい。同様に、このソフトウェアは、例えばコンピュータ読取可能ディスクまたは他の可搬型のコンピュータ記憶機構上で、あるいは電話回線、インターネット、ワールドワイドウェブ、任意の他のローカルエリアネットワークまたは広域ネットワーク等の上を含む、（その配信が可搬型の記憶媒体を介してこのようなソフトウェアを提供することと同じである、もしくは取替え可能であると見なされる）任意の公知のまたは所望の配信方法を使用してユーザ、プロセスプラントまたはオペレータワークステーションに送達されてもよい。さらに、このソフトウェアは、変調または暗号化を行わずに直接的に提供、あるいは通信チャネル上で送信される前に、任意の適切な変調搬送波および／または暗号化技法を使用して変調される、および／または暗号化されてもよい。
【０１６０】
本発明は、例示的となることだけを目的とし、本発明の制限的となることを目的としない特定な例に関して説明されてきたが、変更、追加または削除が本発明の精神または範囲から逸脱することなく開示されている実施形態に加えられてもよいことが当業者に明らかとなる。
【図面の簡単な説明】
【０１６１】
【図１】プロセスモジュールとグラフィックディスプレイを作成し、プロセスプラントの動作をシミュレーションするためにスマートプロセスオブジェクトを使用するディスプレイルーチンを実現するオペレータワークステーションを含む、プロセスプラント内に配置される分散プロセス制御ネットワークのブロック図である。
【図２】プロセスプラント内で強化された機能を実現するために使用され得る、図１のオペレータワークステーションに記憶されるスマートプロセスオブジェクトとプロセスモジュールを含む、アプリケーションと他のエンティティのセットの論理ブロック図である。
【図３】オブジェクトライブラリに記憶されているスマートプロセスオブジェクトを使用して、プロセスグラフィックスディスプレイまたはプロセスモジュールを作成するために構成エンジニアが使用する構成画面の簡略化された描写である。
【図４】多くのスマートプロセスオブジェクトのグラフィックディスプレイ要素を相互接続することにより作成される、プロセスプラント内のストリームと接続要素の描写を含む、プロセスグラフィックスディスプレイの一例の詳細な描写である。
【図５】プラントのさらに大きなグラフィックディスプレイに相互接続される、図４のプロセスグラフィックディスプレイを含む、最小化されたプロセスグラフィックディスプレイのセットを示す図である。
【図６】図４のプロセスグラフィックディスプレイと関連するプロセスモジュールの描写であり、ハイファイシミュレーションルーチンのそれとの相互接続も描く。
【図７Ａ】プロセスプラント内で統合されるような、グラフィックディスプレイ、プロセスモジュール、および制御モジュール間の通信相互接続を描く論理ブロック図である。
【図７Ｂ】プロセスプラント内で統合されるような、グラフィックディスプレイ、プロセスモジュール、および制御モジュール間の通信相互接続を描く論理ブロック図である。
【図８】高度の制御機能とシミュレーション機能を提供するために制御モジュール内で機能ブロックとそのブロックが相互接続される例示的なプロセスモジュールの簡略化された描写である。
【図９】スマートプロセスオブジェクトを使用するプロセスモジュールが、いかにして既存のプロセス制御ネットワーク内で作成され、実現されてもよいのかの論理ブロック図である。
【図１０】ライブラリ内のプロセスオブジェクトにアクセスするために使用できる例示的なディスプレイの一部である。
【図１１】ディスプレイの左側部分のアイテムが選択された図１０のディスプレイの一例である。
【図１２】すでに作成されたプロセスモジュールをブラウジングするために使用され得るディスプレイの一例の一部である。
【図１３】プロセスプラント内の特定のノードによって実行されるプロセスモジュールを割り当てるために使用できるディスプレイの一例の一部である。
【図１４】プロセスモジュールを作成し、修正するためのエディタと関連する例示的なディスプレイである。
【図１５】簡略なタンクに対応するプロセスモジュールの説明図である。
【図１６Ａ】プロセスモジュール内のプロセスオブジェクトのパラメータを修正することに関連するディスプレイの一例を示す図である。
【図１６Ｂ】別のモジュール内の機能ブロックと、プロセスモジュール内のプロセスブロックのパラメータを関連付けるためのディスプレイの一例を示す図である。
【図１７】プロセスモジュールの中に制御モジュールから自動的に引き入れられる特性、パラメータ、および／または測定の値の説明図である。
【図１８】プロセスモジュール内のプロセスオブジェクトのために定義されていたモデルを示すためのディスプレイの一例である。
【図１９】選択されたモデルの異なる特性／パラメータと関連するステップ応答を示すためのディスプレイの一例である。
【図２０】ステップ応答を表示し、編集するためのディスプレイの一例である。
【図２１】利得、不動作時間、一次時間制約、二次時間制約、およびリードタイム制約等のモデルのパラメータを修正するためのディスプレイの一例である。
【図２２】初期状態および／またはモデルの定常状態までの時間を修正するために使用されてもよいディスプレイの一例である。
【図２３】プロセスオブジェクトにより活用されるモデルのタイプを選択するためのディスプレイの一例である。
【図２４】プロセスオブジェクトのモデル関連パラメータを表示するおよび／または編集するためのディスプレイの一例である。
【図２５】左側部分の「ストリームとパラメータ」フォルダが選択された図２４のディスプレイの一例である。
【図２６】ユーザがステップ応答モデルにより活用されるパラメータを追加することを選択した図２４のディスプレイの一例を描く。
【図２７】それによりユーザが新しいモデルのテキスト記述等の新しいモデルに関する情報を追加できるようになる図２４のディスプレイの一例を描く。
【図２８】プロセスプロジェクトにより活用される第１の主要モデルを指定するためのディスプレイの一例である。
【図２９】ストリームエレメントの特性を追加する、または修正するためのディスプレイの一例である。
【図３０】パラメータの特性を追加する、または修正するためのディスプレイの一例である。
【図３１】対応するプロセスグラフィックからプロセスモジュールを、および／または逆も同様に対応するプロセスモジュールからプロセスグラフィックを自動的に生成するために使用されてもよいシステムの一例のブロック図である。
【図３２】プロセスモジュールの構成に役立てるために使用されてもよいディスプレイの一例である。
【図１】
2007536632.tif 000004
【図２】
2007536632.tif 000005
【図３】
2007536632.tif 000006
【図４】
2007536632.tif 000007
【図５】
2007536632.tif 000008
【図６】
2007536632.tif 000009
【図７Ａ】
2007536632.tif 000010
【図７Ｂ】
2007536632.tif 000011
【図８】
2007536632.tif 000012
【図９】
2007536632.tif 000013
【図１０】
2007536632.tif 000014
【図１１】
2007536632.tif 000015
【図１２】
2007536632.tif 000016
【図１３】
2007536632.tif 000017
【図１４】
2007536632.tif 000018
【図１５】
2007536632.tif 000019
【図１６Ａ】
2007536632.tif 000020
【図１６Ｂ】
2007536632.tif 000021
【図１７】
2007536632.tif 000022
【図１８】
2007536632.tif 000023
【図１９】
2007536632.tif 000024
【図２０】
2007536632.tif 000025
【図２１】
2007536632.tif 000026
【図２２】
2007536632.tif 000027
【図２３】
2007536632.tif 000028
【図２４】
2007536632.tif 000029
【図２５】
2007536632.tif 000030
【図２６】
2007536632.tif 000031
【図２７】
2007536632.tif 000032
【図２８】
2007536632.tif 000033
【図２９】
2007536632.tif 000034
【図３０】
2007536632.tif 000035
【図３１】
2007536632.tif 000036
【図３２】
2007536632.tif 000037
【国際調査報告】
2007536632.tif 000038
2007536632.tif 000039