(57)【要約】【課題】プロセスプラント内のデバイスの現在の状況などのプロセス環境に関する情報を一人以上のユーザに表示するためにプロセス環境で使用されるグラフィック・エレメント及びグラフィック・ディスプレイが提供される。【解決手段】グラフィック・エレメント及びディスプレイはプロセスプラントの構成の際にプロセスプラント内の各種論理的及び物理的エレメントと関連付けられてもよく、あるいは構成されて制御ルーチンなどの他の構成アイテムと共にプロセスプラント内のハードウェアにダウンロードされてもよい。グラフィック・エレメント及びグラフィック・ディスプレイは作成されてライブラリに格納され、プラント内の各種論理的もしくは物理的エンティティと関連付けられることにより構成されてもよい。【選択図】図３
2015092403.tif 000002
【特許請求の範囲】
【請求項１】
実行可能なグラフィック・ディスプレイをプロセス環境内で使用する方法であって、前記方法は、
プロセスプラント内のデータソースとバインディングされる一以上の視覚的表示及び一以上のパラメータを含めて一以上の実行可能なグラフィック・ディスプレイを作成し、
前記一以上の実行可能なグラフィック・ディスプレイの各々のための役割を格納し、
前記一以上の実行可能なグラフィック・ディスプレイのために定義された役割に応じて前記一以上の実行可能なグラフィック・ディスプレイをディスプレイデバイスに割り当てる、
ことを含む、方法。
【請求項２】
前記一以上の実行可能なグラフィック・ディスプレイが前記ディスプレイデバイスに割り当てられる方法に応じて前記一以上の実行可能なグラフィック・ディスプレイをダウンロードすることを更に含む、請求項１に記載の方法。
【請求項３】
前記一以上の実行可能なグラフィック・ディスプレイの各々のための役割を格納することは、前記一以上の実行可能なグラフィック・ディスプレイの一つのためのオペレータ・インタフェース役割を格納することを含む、請求項１に記載の方法。
【請求項４】
前記一以上の実行可能なグラフィック・ディスプレイの各々のための役割を格納することは、前記一以上の実行可能なグラフィック・ディスプレイの一つのためのメンテナンス・インタフェース役割を格納することを含む、請求項１に記載の方法。
【請求項５】
前記一以上の実行可能なグラフィック・ディスプレイの各々のための役割を格納することは、前記一以上の実行可能なグラフィック・ディスプレイの一つのためのシミュレーション・インタフェース役割を格納することを含む、請求項１に記載の方法。
【請求項６】
前記一以上の実行可能なグラフィック・ディスプレイをディスプレイデバイスに割り当てることは、前記一以上の実行可能なグラフィック・ディスプレイに関して格納された前記役割に応じて前記一以上の実行可能なグラフィック・ディスプレイを前記ディスプレイデバイスの一以上の機能的サブシステムに割り当てることを含む、請求項１に記載の方法。
【請求項７】
前記一以上の実行可能なグラフィック・ディスプレイをディスプレイデバイスに割り当てることは、前記ディスプレイデバイスと関連付けられた装置に応じて前記一以上の実行可能なグラフィック・ディスプレイをディスプレイデバイスに割り当てることを含む、請求項１に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
［関連出願］
本願は米国仮出願第６０／５６７９８０号、「プロセス制御システムを用いた表示・監視及び対話のためのグラフィカル・ユーザインタフェース（Graphical User Interface for Representing, Monitoring, and Interacting with Process Control Systems）」（２００４年５月４日出願。当該特許出願の全開示内容を参照によって本願明細書に援用する）に関連する通常出願であり、当該仮出願について優先権を主張する。本願は、米国特許出願第１０／６２５４８１号、「プロセスプラントにおけるグラフィック・ディスプレイ・エレメント、プロセス・モジュール及び制御モジュールの統合（Integration of Graphic Display Elements, Process Modules and Control Modules in Process Plants）」（２００３年７月２１日出願、２００４年８月５日公開（特許文献１）。また、米国特許出願第１０／２７８４６９号「プロセスプラントにおけるスマート・プロセス・モジュール及びオブジェクト（Smart Process Modules and Objects in Process Plants）」（２００２年１０月２２日出願、２００４年４月２２日公開（特許文献２）。当該特許の全開示内容を参照によって本願明細書に援用する）の一部継続出願）の関連出願である。また、本願は米国特許出願第１０／３６８１５１号「プロセスプラント構成システムにおけるモジュール・クラス・オブジェクト（Module Class Objects in Process Plant Configuration System）」（２００３年２月１８日出願、２００４年１０月７日公開（特許文献３）。当該特許の全開示内容を参照によって本願明細書に援用する）の関連出願である。また、本願は同日付で国際（PCT）出願された以下の特許出願（当該特許出願の全開示内容を参照によって本願明細書に援用する）の関連出願である。「プロセス環境における関連グラフィック・ディスプレイ（Associated Graphic Displays in a Process Environment）」（代理人事件番号第０６００５／４１１１１号）、「ユーザにより構成可能なプロセス制御システムのための警報及び警報傾向（User Configurable Alarms and Alarm Trending for Process Control System）」（代理人事件番号第０６００５／４１１１２号）、「プロセスプラントにおけるプロセス・モジュールとエキスパート・システムの統合（Integration of Process Modules and Expert Systems in Process Plants）」（代理人事
件番号第０６００５／４１１１３号）、「統合環境におけるカスタマイズド・プロセス・グラフィック・ディスプレイ層を有するプロセスプラント・ユーザインタフェース・システム（A Process Plant User Interface System Having Customized Process Graphic Display Layers in an Integrated Environment）」（第０６００５／４１１１４号）、「プロセス構成及び制御環境へのグラフィック統合（Graphics Integration into a Process Configuration and Control Environment）」（代理人事件番号第０６００５／４１１１６号）、「プロセス環境における複合的ビジュアライゼーションを伴うグラフィック・エレメント（Graphic Element with Multiple Visualizations in a Process Environment）」（代理人事件番号第０６００５／４１１１７号）、「プロセスプラントにおけるグラフィック・ディスプレイ・エレメント及びプロセス・モジュール構成システム（Systemfor Configuring Graphic Display Elements and Process Modules in Process Plants
）」（代理人事件番号第０６００５／４１１１８号）、「統合プロセス制御システム・インタフェースのためのグラフィック・ディスプレイ構成の枠組み（Graphic Display Configuration Framework for Unified Process Control System Interface）」（代理人事件番号第０６００５／４１１２４号）、「プロセスプラント・ユーザインタフェースにおけるマークアップ言語ベースの動的プロセス・グラフィックス（Markup Language-Based, Dynamic Process Graphics in a Process Plant User Interface）」（代理人事件番号第０６００５／４１１２７号）、「プロセス制御データ修正方法及び装置（Methods and Apparatus for Modifying Process Control Data）」（代理人事件番号第０６００５／５９１６２２号及び第２００４０／５９-１１６２２号）、「プロセス制御データへのアクセス方法及び装置（Methods and Apparatus for Accessing Process Control Data）」（代理人事件番号第０６００５／５９１６２３号及び第２００４０／５９-１１６２３号）、「プロセス制御システムのための統合グラフィカル・ランタイム・インタフェース（Integrated Graphical Runtime Interface for Process Control Systems）」（代理人事件番号第０６００５／５９１６２８号及び第２００４０／５９-１１６２８号）、「プロセス制御システムのためのサービス関連アーキテクチャ（Service-Oriented Architecture for Process Control Systems）」（代理人事件番号第０６００５／５９１６２９号及び第２００４０／５９-１１６２９号）。
【０００２】
本発明はプロセスプラントに係り、詳細にはプラントの構成、制御、メンテナンス及びシミュレーションに関する各種作業において共通グラフィック・ディスプレイ・エレメントの作成・使用を可能とする、プロセス制御及びシミュレーション・システムのシステムレベルにおけるグラフィック・ディスプレイ・エディタ及びグラフィック・ディスプレイ・オブジェクトの統合とその利用に関する。
【背景技術】
【０００３】
例えば化学物質や石油などの処理に利用される分散型プロセス制御システムは、通常アナログバス、デジタルバスもしくはアナログ／デジタル複合バスを介して通信することで一以上の現場装置に接続された一以上のプロセス・コントローラを備える。現場装置として例えばバルブ、バルブポジショナ、スイッチ、トランスミッタ（温度センサ、圧力センサ、レベルセンサ及び流量センサなど）が挙げられ、これらはプロセス環境に置かれ、バルブの開閉やプロセス・パラメータの測定などのプロセス機能を実行する。スマート現場装置としてFOUNDATION（登録商標）Fieldbusプロトコルなどの公知のFieldbusプロトコルに従った現場装置などが挙げられるが、これらも制御計算、警報機能、一般にコントローラ内部で実施されるその他の制御機能を実行できる。プロセス・コントローラは一般にプラント環境に置かれ、現場装置により行われるプロセス測定値を表す信号及び／又は当該現場装置に関するその他の情報を受信し、例えばプロセス制御の決定、受信情報に基づく制御信号の生成、及びHART及びFieldbus現場装置などの現場装置において実行される制御モジュール又はブロックとの協調を行う異なる制御モジュールを実行する制御アプリケーションを実行する。コントローラ内の制御モジュールは通信回線を介して現場装置に制御信号を送り、プロセス動作を制御する。
【０００４】
通常、現場装置及びコントローラからの情報は、データ・ハイウェイを介して一以上の他のハードウェア・デバイスにおいて利用できる。ハードウェア・デバイスとしては、一般に厳しいプラント環境とは離れた制御室や他の場所に配置されるオペレータ・ワークステーション、パーソナルコンピュータ、データ履歴作成プログラム、レポート作成プログラム、集中データベースなどが挙げられる。これらのハードウェア・デバイスは、例えばプロセス制御ルーチンの設定を変更する、コントローラもしくは現場装置内での制御モジュールの動作を修正する、現在のプロセス状態を表示する、現場装置及びコントローラにより生成された警報を表示する、要員の育成やプロセス制御ソフトウェアのテストの目的のためにプロセス動作をシミュレーションする、構成データベースを保持・更新するなど、当該プロセスに関連する各種機能をオペレータにより実行可能とするためのアプリケーションを実行する。
【０００５】
一例として、エマーソン・プロセス・マネジメント（Emerson Process Management）社より市販されるDeltaV（登録商標）制御システムは、プロセスプラント内の様々な場所に配置された異なる装置中に格納され、実行される多数のアプリケーションを含む。一以上のオペレータ・ワークステーションに配置される構成アプリケーションは、ユーザがプロセス制御モジュールを作成あるいは変更し、これらのプロセス制御モジュールをデータ・ハイウェイを介して専用の分散型コントローラにダウンロードすることを可能とする。通常、これらの制御モジュールは、入力に基づいて制御スキームにおいて機能を実行し、制御スキームの他の機能ブロックに対し出力を行うオブジェクト指向プログラミング・プロトコルのオブジェクトである、通信により相互接続された機能ブロックで構成される。また、構成アプリケーションは、表示アプリケーションがオペレータにデータを表示するために利用するオペレータ・インタフェースを設計者が作成あるいは変更し、またプロセス制御ルーチンにおいてオペレータが設定値などの設定を変更することを可能とする。各専用コントローラ、あるいは場合によっては現場装置は、実際のプロセス制御機能を実施すべく割り当てられダウンロードされた制御モジュールを実行する制御アプリケーションを格納・実行する。一以上のオペレータ・ワークステーションで実行できる表示アプリケーションは、データ・ハイウェイを介して制御アプリケーションからデータを受信し、ユーザインタフェースを利用してこのデータをプロセス制御システム設計者、オペレータ、あるいはユーザに対し表示する。また、表示アプリケーションはオペレータ用ビュー、エンジニア用ビュー、技術者用ビューなど、任意数の異なるビューを提供してもよい。通常、データ履歴作成アプリケーションはデータ・ハイウェイを介してデータの一部もしくは全部を集め、格納するデータ履歴作成装置に格納され、実行される。一方、構成データベース・アプリケーションはデータ・ハイウェイに接続された更に別のコンピュータ上で実行され、現在のプロセス制御ルーチン構成及びそれに関連するデータを格納してもよい。あるいは、構成データベースは構成アプリケーションと同じワークステーションに配置されてもよい。
【０００６】
プロセス制御環境で使用される制御アプリケーション及びサポート・アプリケーションの数及びタイプが増えるにつれ、ユーザがこれらのアプリケーションを効果的に構成・利用できるように異なるグラフィカル・ディスプレイ・アプリケーションが提供されてきた。例えば、グラフィカル・ディスプレイ・アプリケーションは、構成エンジニアがプロセスプラント内の制御装置にダウンロードされる制御プログラムをグラフィックを用いて作成することを可能とするため、制御構成アプリケーションをサポートすべく利用されている。また、グラフィカル・ディスプレイ・アプリケーションは、例えば制御オペレータがプロセスプラントもしくはプロセスプラントの各エリアの現在の機能を視認する、メンテナンス担当者がプロセスプラント内のハードウェア・デバイスの状態を視認する、プロセスプラントのシミュレーションを行う、ことを可能とすべく利用されている。但し、従来これらのグラフィカル・ディスプレイ・アプリケーションは、当該グラフィカル・ディスプレイ・アプリケーションが関連付けられた特定のアプリケーションの一部として、あるいは特定のアプリケーションをサポートする目的で作成されており、こうしたグラフィカル・ディスプレイ・アプリケーションの有用性は一般にその特定の処理機能に限定されていた。制御オペレータもしくは他のオペレータをサポートすべく作成されたグラフィカル・プログラムを、例えばメンテナンス、構成もしくはシミュレーション機能において利用することは不可能ではないとしても困難である。
【０００７】
特定の例として、プロセス制御構成アプリケーションの中には、現在、機能ブロック・テンプレート・オブジェクトや、場合によっては制御モジュールテンプレート・オブジェクトなどの、プロセスプラント用制御ストラテジを作成するために利用されるテンプレート・オブジェクトのライブラリを有するものがある。テンプレート・オブジェクトは、当該テンプレート・オブジェクトに関連するデフォルトプロパティ、設定及び方法を含み、グラフィカル構成アプリケーションを利用するエンジニアがこれらのテンプレート・オブジェクトを選択し、選択したテンプレート・オブジェクトのコピーを実質的に構成画面に配置して制御モジュールの開発に供することができる。テンプレート・オブジェクトを選択し構成画面に配置するプロセスにおいて、エンジニアはこれらのオブジェクトの入力及び出力を相互に接続し、これらのパラメータ、名称、タグ、及び他のプロパティを変更し、プロセスプラント内の特定の用途に合わせて特定の制御モジュールを作成する。このような制御モジュールを一以上作成すると、エンジニアは当該制御モジュールのインスタンスを生成し、プロセスプラントの動作中に実行させるべく当該インスタンスを適切なコントローラや現場装置にダウンロードすることができる。
【０００８】
次いで、エンジニアは異なるグラフィカル・ディスプレイ（表示）作成アプリケーションを利用し、ディスプレイ作成アプリケーションにおいてディスプレイ・オブジェクトを選択・構築することにより、プロセスプラント内のオペレータやメンテナンス担当者に対して一以上のディスプレイを作成してもよい。通常、これらのディスプレイは、システムワイドベースで一以上のワークステーションで実施され、プラント内の制御システムもしくは各種装置の動作状態に関する事前構成ディスプレイをオペレータもしくはメンテナンス担当者に提供する。一般にこれらのディスプレイは、プロセスプラント内の各種コントローラもしくは各種デバイスにより発生される警報を受信・表示する警報ディスプレイ、プロセスプラント内の各種コントローラもしくは各種デバイスの動作状態を表示する制御ディスプレイ、及びプロセスプラント内の各種デバイスの機能状態を表示するメンテナンス・ディスプレイなどの形態をとる。但し、一般にこれらのディスプレイは、プロセスプラント内の各種プロセス制御モジュールもしくは各種装置から受信した情報もしくはデータを公知の方法にて表示すべく事前構成されている。システムによっては、ディスプレイは物理的もしくは論理的エレメントを表示し、当該物理的もしくは論理的エレメントに関するデータを受信すべく当該物理的もしくは論理的エレメントに通信によりバインディングされたグラフィック描写により作成される。ディスプレイ画面のグラフィックは、受信したデータが、例えばタンクが半分満たされていることを示したり、流量センサにより測定される流量を示したりするなどの一定のイベントに応じて変更されてもよい。しかし、構成、オペレータ制御、メンテナンス及びシミュレーション作業に利用されるグラフィック・ディスプレイは、一般に異なるグラフィカル・エディタを利用し、相互に別々に作成される。更に、これらのディスプレイの限定的なグラフィカル機能は実施が困難であり、任意のグラフィカル・オブジェクトの一部として実施されない。
【０００９】
ゆえに、制御構成アプリケーションと同様に、ディスプレイ作成アプリケーションは、タンク、バルブ、センサ、並びにスライドバー、オン／オフスイッチなどのオペレータ制御ボタンなどのテンプレート・グラフィカル・ディスプレイ・アイテムを有していてもよい。これらのアイテムはオペレータ・ディスプレイ、メンテナンス・ディスプレイなどを作成するため任意の所望の構成で画面に配置されてもよい。画面に配置されると、個々のグラフィック・アイテムは、プロセスプラントの内部動作に関する何らかの情報又はディスプレイをユーザに提供する形で画面上で相互接続される。しかし、グラフィカル・ディスプレイを動画化するためには、ディスプレイ作成者は、グラフィック・アイテムとプロセスプラント内の関連するデータソースとの間の通信リンクを特定することで、各グラフィカルアイテムを、センサによる測定データやバルブ位置を示すデータなどのプロセスプラント内で発生するデータと手動でバインディングしなくてはならない。このプロセスは退屈であり、時間を浪費する上、間違いが多い。
【００１０】
制御構成アプリケーション内の制御テンプレート・オブジェクト及びディスプレイ作成アプリケーション内のディスプレイ・アイテムはコピーが可能であり、多くの異なる制御モジュールやグラフィカル・ディスプレイの作成に利用できるため便利である。一方、プロセスプラント内の異なる設備について同一の制御モジュール及びグラフィカル・ディスプレイを大量に作成することが必要なことも多い。例えば、中型から大型のプロセスプラントでは、同一の基本的な汎用制御モジュール及びディスプレイを用いて制御・表示できる同一もしくは類似の設備の多数のインスタンスを有する。しかし、これらの多数の制御モジュール及びディスプレイを作成するには、汎用制御モジュールもしくはディスプレイ・モジュールを作成し、次いでこれらを適用できる設備の各異なる部分についてこの汎用制御もしくはディスプレイ・モジュールのコピーを作成する。当然ながら、コピーを作成した後、当該制御モジュールもしくはディスプレイ・モジュールが取り付けられる特定の設備を特定すべく、構成アプリケーションにおいて新たな制御モジュールもしくはディスプレイ・モジュールを各々手動で変更し、またこれらの制御モジュール及びディスプレイ・モジュールの全てについてインスタンスを生成し、プロセス制御システムにダウンロードすることが必要である。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】米国特許公開第２００４／０１５３８０４号
【特許文献２】米国特許公開第２００４／００７５６８９号
【特許文献３】米国特許公開第２００４／０１９９９２５号
【発明の開示】
【発明が解決しようとする課題】
【００１２】
しかしながら、上述の制御モジュール及びディスプレイ・アイテムはモジュール式ではない。ゆえに、コピーした後、当該制御モジュール及びディスプレイが関連付けられるプラント内の設備を特定するため適切な構成アプリケーションを利用して制御モジュール及びディスプレイを各々手動で個別に変更せねばならない。同一タイプの設備（重複設備）が数多く重複しているプラントでは、このプロセスは退屈であり、時間を浪費する上、オペレータによる間違いを生じやすい。更に、これらの異なる制御モジュール及びディスプレイはいったんプログラムされると相互を認識しない。従って、いったん作成された制御モジュールを変更するために、エンジニアもしくはオペレータは手動で異なる重複設備について異なる制御モジュールの各々に同一の変更を加えねばならない。この作業は時間の浪費であり、退屈である。プラント内の異なる組の重複設備について作成されるグラフィカル・ビューについても同様の問題がある。すなわち、特定の制御モジュールもしくは特定のグラフィカル・ビューが作成され（個別にもしくはテンプレート・オブジェクトからコピーされ）プラント内の特定の組の設備とバインディングされると、この制御モジュールもしくはグラフィカル・ビューは、同一もしくは類似の他の制御モジュール又はグラフィカル・ディスプレイを自動認識することなく、システム中で別々のエンティティ又はオブジェクトとして存在する。この結果、特定のタイプのあらゆる制御モジュール及びグラフィカル・ディスプレイに適用できる変更を、これらのモジュール及びディスプレイに対し個別に行わなくてはならない。この問題は、プラント内の同一設備の異なる機能コンテキスト（例えば制御ビューイング、メンテナンス・ビューイング及びシミュレーション機能）についてグラフィカル・ビューが作成される場合に更に顕著である。この場合、各グラフィカル・ビューは相互に知らされもしくは認識されることなく別々に作成される。
【００１３】
従って、グラフィック・ディスプレイがプロセスプラントで実行される異なる汎用作業に利用される異なるアプリケーションに提供され、関連付けられている一方、これらのグラフィック・ディスプレイ及び関連するグラフィック・ディスプレイ・エディタは一般にこれらがサポートすべく作成されたアプリケーションの機能レベルにおいて一般に追加される。この結果、グラフィカル・エディタは、それが存在する範囲において、ユーザが特定のアプリケーションで必要とされる特定の機能をサポートするグラフィックを作成することを可能とするのみである。従前のプロセスプラントはプラント構成及びサポートに関連して実行される様々なあるいは多数の作業のグラフィカルニーズに基づいて使用されもしくはグラフィカルニーズによりサポートされるグラフィカル・ディスプレイ・エディタを提供しなかった。ゆえに、例えば、制御構成アクションをサポートし、又は制御構成アクションを可能とすべく使用されるグラフィカル・ディスプレイ・エディタはユーザによる制御プログラムの作成のみを可能とし、オペレータやメンテナンス・ディスプレイの要求や機能をサポートしていなかった。同様に、プラントの運転中に制御オペレータやメンテナンス技術者に提供されるオペレータ・ビュー、メンテナンス・ビューなどを作成するために使用されるグラフィック・ディスプレイ・エディタは、構成アクション、シミュレーション・アクションなどと関連付けられた機能をサポートしていなかった。グラフィカル・ディスプレイに関する要求が制御構成機能レベル、メンテナンス・サポート機能レベル、制御オペレータ・サポート機能レベル及びシミュレーション・サポート機能レベルなど、プロセスプラントにおける個々の機能レベルにおいてサポートされた結果、これらの各種エディタにより作成される様々なディスプレイの一つ一つはプラント内の同一構成要素のモデル化及び表示となってしまうであろう。これはプロセスプラントの様々な担当者がグラフィカル・ディスプレイに関して同じ作業を繰り返すことにつながる。このように同じ作業を繰り返すことが、異なる用途について同一のプロセス・エレメントを表示する異なるグラフィカル・ディスプレイを作成するために必要とされるのみならず、異なるディスプレイ・アプリケーションに使用されるグラフィック・エレメントをこれらが関連付けられたプロセスプラント内の実際のハードウェアもしくはソフトウェア・エレメントとバインディングする際にも必要とされる。
【００１４】
プロセスプラントにおける各種作業に関するグラフィカル・サポートは事実が起こった後、及び実行中の実際の作業の一部として提供されるため、グラフィカル・サポートは、共通グラフィックスが作成されプラントの各種異なる機能レベルにおいてプラント内で使用されることを可能とする形ではプラント環境において統合されない。グラフィックスが統合されないことにより、異なる機能に関して実際に作成されるグラフィックスが機能ごと、アプリケーションごとに異なってしまう。このため、ユーザがある特定のタイプのグラフィカル・ディスプレイに精通している場合でも、プラント内の異なる作業もしくは機能と関連付けられた別のディスプレイを視認する必要が生じた場合にユーザの混乱を招くおそれがある。同様に、既述の如く、プラントの各種異なる機能レベルでグラフィック・ディスプレイ・サポートを提供することは、ディスプレイを作成する際及び当該ディスプレイ内のエレメントをプラント内の実際のハードウェア・エレメントもしくはソフトウェア・エレメントと適切に結び付ける際の両方においてグラフィック・サポートの重複を生じる。
【００１５】
また、異なるコントローラ上で実行されている制御ループと関連付けられた状態、エラー、警報などの検出、及び個々の装置内の問題の検出には、エラー検出や他のプログラミングが有用である。従来、このようなエラー検出はプロセスプラントの異なる機能レベルにおいて実行され、これらの異なる機能的作業に関して作成されたグラフィカル・ディスプレイ上に表示されていた。よって、プロセスプラント内の異なる、様々に配置された装置からのデータを分析することにより検出する必要のあるシステムレベル状態もしくはエラーを認識するためのプロセス制御システムをプログラミングすることは困難であった。また、こうしたシステムレベル状態に関する情報をオペレータもしくはメンテナンス担当者に対し表示もしくは呈示する目的で作成されていないオペレータ・ディスプレイ上にこのようなタイプのエラーを表示することは更に困難であった。また、オペレータ・ディスプレイ内でディスプレイ内の異なるエレメントに関する情報もしくはデータのこれらの代替ソースを用いてオブジェクトを動画化することは困難である。
【課題を解決するための手段】
【００１６】
プロセスプラント内のデバイスの現在の状況などのプロセス環境に関する情報を一人以上のユーザに表示するためにプロセス環境で使用されるグラフィック・エレメント及びグラフィック・ディスプレイが提供される。グラフィック・エレメント及びディスプレイはプロセスプラントの構成の際にプロセスプラント内の各種論理的及び物理的エレメントと関連付けられてもよく、あるいは構成されて制御ルーチンなどの他の構成アイテムと共にプロセスプラント内のハードウェアにダウンロードされてもよい。詳細には、グラフィック・エレメント及びグラフィック・ディスプレイは作成されてライブラリに格納され、プラント内の各種論理的もしくは物理的エンティティと関連付けられることにより構成されてもよい。構成プロセスの間、グラフィック・エレメント及びグラフィック・ディスプレイは、ランタイムにおいてグラフィック・ディスプレイが実行されるハードウェアを定義するほか、これらのディスプレイがディスプレイ目的でバインディングされるプロセス・エンティティを定義するため、プラント構成の別の場所に定義されたプラントの領域、装置、プロセス・モジュール、制御ルーチンもしくは制御ストラテジと関連付けられてもよく、あるいはインタフェースもしくはディスプレイデバイスと関連付けられてもよい。また、グラフィック・ディスプレイの各々はオペレータ・ビュー、メンテナンス・ビューなどの役割もしくは機能的用途とともに定義されてもよく、ランタイム環境におけるグラフィック・ディスプレイの適切なアクセス及び使用を定義するためにこれらの役割を利用してもよい。
【図面の簡単な説明】
【００１７】
【図１】プロセスプラント内に配置され、ディスプレイ・ルーチン及びプロセスプラント内の各種機能と関連付けられた他のアプリケーションを実行するオペレータ・ワークステーション、並びにプラントの各種機能エリアの各々についてグラフィック・ディスプレイ・エレメント及びグラフィック・ディスプレイを作成するために利用できるシステムレベル・グラフィカル・サポートを提供するワークステーションを含む分散型プロセス制御ネットワークのブロック図である。
【図２】プロセスプラント制御、視認及びシミュレーション・システムにおけるシステムレベル・グラフィカル・サポートの統合を示す論理的ブロック図である。
【図３】グラフィック・エレメント及びディスプレイが作成される構成環境、並びにグラフィック・エレメント及びディスプレイが実行され得るランタイム環境の論理図である。
【図４】グラフィカル・エディタにより作成され、ユーザがポンプエレメントの形のグラフィック・エレメントを作成もしくは編集することを可能とする簡略ディスプレイ画面である。
【図５】リアクタの形のグラフィック・エレメントを作成しているところを示す、グラフィカル・エディタにより作成された別のディスプレイ画面である。
【図６】各種ビジュアライゼーションがグラフィック・エレメントとバインディングされもしくは関連付けられる方法を示すブロック図である。
【図７】グラフィック・エレメントと関連付けられた第一のプロパティビューを示す画面ディスプレイの一部を示す図である。
【図８】グラフィック・エレメントと関連付けられた第二のプロパティビューを示す画面ディスプレイの一部を示す図である。
【図９】グラフィック・エレメントのプロパティと関連付けられたアクションを示すディスプレイ画面のアクション／アニメーションセクションを示す図である。
【図１０】ビジュアルトリガがグラフィック・エレメントのプロパティ及びビジュアライゼーションと統合され得る方法を示すブロック図である。
【図１１】グラフィック・エレメントのビジュアライゼーションのための変換アニメーションを提供もしくは定義するために使用できるダイアログボックスを示す図である。
【図１２】グラフィック・エレメントのビジュアライゼーションのための、カラー・アニメーションを含むプロパティ・アニメーションを提供もしくは定義するために使用できるダイアログボックスを示す図である。
【図１３】決定表を通じてグラフィック・エレメントをランタイム環境とバインディングし得る方法を示す概略図である。
【図１４】プロセス環境において多数の異なるデータソースとバインディングされたディスプレイ・エレメントを示すブロック図である。
【図１５】多数のディスプレイ・エレメント及びコネクタからグラフィック・ディスプレイを生成しているところを示す、グラフィカル・エディタにより生成されるディスプレイ画面である。
【図１６】グラフィック・ディスプレイ内に配置されたグラフィック・エレメントと関連付けられた各種ビジュアライゼーションを示すグラフィック・ディスプレイを作成するためのディスプレイ画面である。
【図１７】相互接続された各種グラフィック・エレメント及びコネクタからなるグラフィック・ディスプレイと関連付けられたディスプレイ画面である。
【図１８】図１７のディスプレイ内のエレメントに関する制御パネル及びフェイスプレートを示す、図１７のグラフィック・ディスプレイを介してアクセス可能な１組のグラフィック・ディスプレイ画面である。
【図１９】各種ディスプレイ・エレメントからなる石灰窯炉を図示し、プロセスプラント内で各種他のアプリケーション及びデータソースからデータを提供するグラフィック・ディスプレイのディスプレイ画面である。
【図２０】（A）乃至（E）はオペレータ・ビュー、エンジニアリング・ビュー、ビジネス・ビュー、シミュレーション・ビュー及びメンテナンス・ビューを含む、同一の外観及び雰囲気を有する石灰窯炉の異なるビューを示すグラフィック・ディスプレイ画面である。
【図２１】（A）及び（B）は図２０（A）乃至２０（E）に示す石灰窯炉を実行するのに利用される制御ルーチンと関連付けられたディスプレイ画面である。
【図２２】物理的レベル及び機能レベルを含む各種レベルにおける、各種異なるグラフィック・ディスプレイ間の関連を示すブロック図である。
【図２３】構成システムと関連付けられたグラフィカル構成階層を示す第一の構成画面である。
【図２４】グラフィック・エレメント及びグラフィック・ディスプレイが構成システム内の他のエレメントに割り当てられ、統合される一方法を示すグラフィカル構成階層を示す第二の構成画面である。
【図２５】一以上のグラフィック・ディスプレイがプロセスプラント構成システム内で割り当てられる方法の概略を示す、ユーザに提供され得るダイアログボックスを示す図である。
【発明を実施するための形態】
【００１８】
図１は各種機能エリアにシステム・レベル・グラフィカル・サポートが提供された例示的プロセスプラント１０を示す。一般に、プロセスプラント１０は、入力／出力（I／O）デバイスもしくはカード１８を介して一以上の現場装置１４及び１６に各々接続された一以上のコントローラ１２を含む、分散型プロセス制御システムを備える。入力／出力（I／O）デバイスもしくはカード１８として、例えばFieldbusインタフェース、Profibusインタフェース、HARTインタフェース、標準型４-２０maインタフェースが挙げられる。コントローラ１２は、例えばイーサネット（登録商標）（Ethernet（登録商標））リンクなどのデータ・ハイウェイ２４を介して一以上のホスト・ワークステーションもしくはオペレータ・ワークステーション２０乃至２３と結合される。データベース２８はデータ・ハイウェイ２４と接続されてもよく、且つプラント１０内の各種コントローラ及び各種現場装置と関連付けられたパラメータ、状態及び他のデータを収集し格納するデータ履歴作成プログラムとして、及び／又はコントローラ１２及び現場装置１４及び１６にダウンロードされ格納されるとプラント１０内のプロセス制御システムの現在の構成を格納する構成データベースとして動作する。また、プロセスプラント１０においてグラフィカル・サポートを提供すべく、本願明細書に記載した方法にて作成されたグラフィカル・オブジェクトをデータベース２８に格納してもよい。コントローラ１２、I／Oカード１８及び現場装置１４及び１６は通常はプラント環境に配置され、且つしばしば苛酷なプラント環境に分散される。一方、オペレータ・ワークステーション２０乃至２３及びデータベース２８は通常は制御担当者やメンテナンス担当者が容易にアクセスできる制御室などのそれほど苛酷でない環境に配置される。但し、場合によってはこれらの機能の実施にあたりハンドヘルドデバイスを用いてもよい。通常ハンドヘルドデバイスはプラント内の様々な場所に携行される。
【００１９】
公知のように、各コントローラ１２、例えばエマーソン・プロセス・マネジメント（Emerson Process Management）社より市販されるDeltaV（登録商標）コントローラは、任意数の異なる、個別に実行される制御モジュールもしくは制御ブロック２９を用いて制御ストラテジを実施するコントローラ・アプリケーションを格納し、実行する。各制御モジュール２９は一般に機能ブロックと呼ばれているもので構成できる。各機能ブロックは制御ルーチン全体の一部もしくはサブルーチンであり、（リンクと呼ばれる通信により）他の機能ブロックと連動して動作し、プロセスプラント１０内のプロセス制御ループを実施する。周知のように機能ブロックはオブジェクト指向プログラミング・プロトコルのオブジェクトとすることができ、且つ一般にトランスミッタ、センサもしくは他のプロセス・パラメータ測定装置、例えばＰＩＤ、ファジーロジックなどの制御を実行する制御ルーチンと関連付けられた制御機能と関連付けられた入力機能、あるいはプロセスプラント１０内で何らかの物理的機能を実行すべくバルブなどの何らかの装置の動作を制御する出力機能のいずれかを実行する。当然ながらモデル予測コントローラ（MPC）、オプチマイザなどのハイブリッドタイプや他のタイプの複合的機能ブロックも存在する。Fieldbusプロトコル及びDeltaVシステムプロトコルはオブジェクト指向プログラミング・プロトコルにおいて設計され実施される制御モジュール及び機能ブロックを利用する。一方、制御モジュールはシーケンシャル機能ブロック、ラダーロジックなどの任意の所望の制御プログラミングスキームを用いて設計でき、機能ブロックや任意の他の特定のプログラミング技術を利用して設計・実施されるものに限定されない。
【００２０】
図１に示されたプラント１０では、コントローラ１２に接続された現場装置１４及び１６は標準型４-２０ma装置、プロセッサ及びメモリを備えるHART、Profibus、もしくはFOUNDATION（登録商標）Fieldbus現場装置などのスマート現場装置、あるいは任意の他の所望のタイプの装置とすることができる。これらの装置のうち、例えばFieldbus現場装置（図１で参照番号１６で示す）は、コントローラ１２で実施される制御ストラテジと関連付けられた機能ブロックなどのモジュールもしくはサブモジュールを格納し、実行してもよい。公知のように、図１では２つの異なるFieldbus現場装置１６に設置されている機能ブロック３０は、プロセス制御を実施すべくコントローラ１２内の制御モジュール２９の実行と連動して実行されてもよい。当然ながら、現場装置１４及び１６はセンサ、バルブ、トランスミッタ、ポジショナなど任意のタイプの装置とすることができる。I／O装置１８はHART、Fieldbus、Profibusなど任意の所望の通信プロトコルもしくはコントローラ・プロトコルに適合した任意のタイプのI／O装置とすることができる。
【００２１】
図１のプロセスプラント１０では、ワークステーション２０乃至２３はプラント１０内の同一もしくは異なる担当者により実行される各種異なる機能のために利用される各種アプリケーションを有していてもよい。ワークステーション２０乃至２３はそれぞれ各種アプリケーション、プログラム、データ構造などを格納するメモリ３１と、メモリ３１に格納された任意のアプリケーションを実行するために使用できるプロセッサ３２とを備える。図１の例では、ワークステーション２０は構成ワークステーションとして示され、一以上の構成アプリケーション３３を含む。構成アプリケーション３３は、認可された構成エンジニアが制御モジュール２９及び３０などの制御ルーチンもしくは制御モジュールを作成し、プラント１０の各種コントローラ１２及び装置１６にダウンロードするためにアクセスすることが可能な、例えば制御モジュール作成アプリケーション、オペレータインタフェースアプリケーション及び他のデータ構造を有していてもよい。ワークステーション２１は制御オペレータ視認ワークステーションとして包括的に図１に示されており、プロセスプラント１０の運転中に、オペレータがプロセスプラント１０内もしくはプラントの各セクションで起こっていることを視認・制御することを可能とすべく制御オペレータに各種ディスプレイを提供し得る多数のディスプレイ・アプリケーション３４を有する。アプリケーション３４は、制御オペレータが制御機能を実行するのをアシストし得る、制御診断アプリケーション、チューニング・アプリケーション、レポート生成アプリケーション、あるいは任意の他の制御サポート・アプリケーションなどのサポート・アプリケーション３４aを含んでいてもよい。同様に、ワークステーション２２はメンテナンス表示ワークステーションとして図示され、様々なメンテナンス担当者がプラント１０のメンテナンスに関する要求を視認し、各種装置１２、１４、１６の動作状態及び運転状態を視認するために使用し得る多数のメンテナンス・アプリケーション３５を含む。当然ながら、アプリケーション３５は、メンテナンス担当者がプラント１０内のメンテナンス機能を実行するのをアシストするために利用し得るメンテナンス診断アプリケーション、較正アプリケーション、振動分析アプリケーション、レポート生成アプリケーションもしくは任意の他のメンテナンスサポート・アプリケーションなどのサポート・アプリケーション３５aを含んでいてもよい。また、ワークステーション２３はシミュレーション・ワークステーションとして表示されており、トレーニング目的、プラントのメンテナンス及び制御をアシストするためのプラントモデル化目的など任意の目的のためにプラント１０やプラント１０の各種セクションの動作をシミュレートするために利用できる多数のシミュレーション・アプリケーション３６を含む。一般にワークステーション２０乃至２３の各々はキーボードやマウスなどの他の標準的な周辺機器に加え、ディスプレイ画面３７を備える。
【００２２】
図１では各種構成、制御、メンテナンス及びシミュレーションの各種アプリケーション３３乃至３６は、これらの機能のいずれか一つについて専用のワークステーションに配置されているものとして示されているが、これらのもしくは他のプラント機能に関連付けられた各種アプリケーション３３乃至３６はプラント１０に関する要求及び設定に応じてプラント１０内の同一のもしくは異なるワークステーションあるいはコンピュータに配置されてもよいことを理解されたい。よって、例えば一以上のシミュレーション・アプリケーション３６及び制御アプリケーション３３が同一のワークステーション２０乃至２３で実行され、別の個々のシミュレーション・アプリケーション３６もしくは別の個々の制御アプリケーション３３が別のワークステーション２０乃至２３で実行されてもよい。
【００２３】
従来、プラント１０の異なる機能エリアで使用される異なるアプリケーションの開発は独立して行われていた。従って、構成アプリケーション３３の開発はシミュレーション・アプリケーション３６、メンテナンス・アプリケーション３５もしくはオペレータ制御アプリケーション３４と統合されていなかった。実際、多くの例において、プラントは別の会社やソフトウェア供給会社により開発され、事実上プラント１０内の他のソフトウェアとは独立して実行されるべく開発された異なる機能エリアのためのアプリケーションを含んでいることがある。プラント１０の各種機能エリアと関連付けられた様々なアプリケーションが各々独立して開発され、動作することの結果、一般にプラント職員はそれぞれの構成機能レベル、オペレータ制御機能レベル、メンテナンス機能レベル及びシミュレーション機能レベルにおいてプラントを別々に構成・設定することが必要であった。詳細には、一般に同じもしくは別のプラント職員がそれぞれの機能レベルにおいて新しいデータ構造及びグラフィック・ディスプレイを作成するための様々なプログラムを利用しなければならない。ゆえに、図１に関しては、各種アプリケーション３３乃至３６の各々について、実行された構成、制御、メンテナンス及びシミュレーション機能は一般にプラント職員がこれらの構成、オペレータ制御、メンテナンス及びシミュレーション機能を実行するのをアシストすべく異なるグラフィック・ディスプレイ・エディタ及びデータベース構造を含みもしくは利用していた。多くの例において、これらの異なるグラフィック・ディスプレイ・エディタ及びデータベースは、プラント１０の同一のセクションもしくはエリア、あるいはプラント１０内の同一ハードウェアを表示・モデル化するための異なるグラフィック・ディスプレイを作成すべく、並びに構成、オペレータ制御、メンテナンス又はシミュレーション作業に関連してプロセスプラント内で何が起こっているかを視認・認識することを異なるプラント職員がアシストすべく利用されていた。
【００２４】
各種アプリケーション３３乃至３６及びプラント１０内の各種機能のための関連するディスプレイは、一般に異なる人及び異なる会社によって相互に独立して開発・実施されることがあったため、プロセスプラントの異なる機能エリアで作成・使用されるグラフィック・ディスプレイはグラフィカル・ビジュアライゼーションを提供するという観点からは一貫したもしくは容易に理解できる形では統合されていなかった。この結果、プラントの異なる各種機能レベルにおいてグラフィック・ディスプレイを独立的に作成・実行すると、機能間でグラフィック・ディスプレイの外観が異なり、機能エリア全体にわたる一貫した外観や雰囲気を有するグラフィック・ディスプレイは得られなかった。また、独立的に作成することでプラントの同一セクション又はエリアの異なる機能用途のグラフィック・ディスプレイを作成するにあたり同一作業を重複することが必要となり、このようにして作成されたグラフィック・ディスプレイが、プラント１０の機能レベルにおいて分離されたプラント１０内のコントローラ１２、現場装置１４、１６などの各種デバイスと結合され、これらのデバイスからのデータを受け取ることが必要となる。このことから、異なるディスプレイについて同一のハードウェア・エレメントをトラックするためデータベース構造をコピーする必要があった。ゆえに、例えば、従来メンテナンス目的でプラント１０のあるセクションを図示するメンテナンス・ディスプレイを作成するために第一のアプリケーション（例えば、アプリケーション３５の一つ）を使用し、プラント１０のこの同じセクションを制御の目的で図示する制御オペレータ・ディスプレイを作成するために第二のアプリケーション（例えば、アプリケーション３４の一つ）を使用する。異なるディスプレイ・エディタにより別々に作成されたこれらのディスプレイは外観・雰囲気が互いに大きく異なり、ユーザがメンテナンス・ディスプレイとオペレータ・ディスプレイとの間を混乱なく、各タイプのディスプレイについて訓練を受ける必要なくして行き来するのは困難であった。同様に、異なるアプリケーション３４及び３５において両方のディスプレイを別々に作成する際に努力が二重にされ、場合により同一であったり異なったりするデータをこれらのハードウェア・エレメントから受け取るためにメンテナンス・ディスプレイ及び制御オペレータ・ディスプレイをプラント１０内の同一ハードウェア・エレメントにバインディングし、接続するためのデータベース構造を作成するために追加の作業が必要であった。
【００２５】
こうした非効率を回避しプラント１０内に広用途に用いることができ理解しやすいグラフィックを提供するため、プラント１０の構成、オペレータ・ビューイング、メンテナンス・ビューイング、シミュレーション及びその他の機能エリアを含む、プラント１０の各種機能エリアの各々のグラフィック・ディスプレイ及びデータ構造に関する要求をサポートすべく、プロセスプラント１０のシステムレベルにおいてグラフィカル・サポート層が提供される。このサポートのシステムレベルを図２に示す。図２にはプラント動作レベル４０，プラント機能レベル４２及びシステムレベル４４が図示されている。図２よりわかるように、プラント運転レベル４０は制御ルーチンもしくは制御モジュール２９，３０を実行するコントローラ１２、現場装置１４、１６などの他、プラント１０内でプラントのランタイムにおいてプラント作業を実施すべく実行される他のソフトウェアを含む。図解ではプラント機能レベル４２は構成機能ブロック４６、制御機能ブロック４７、メンテナンス機能ブロック４８及びシミュレーションブロック４９を含んでいるが、エンジニアリング機能やビジネス機能などの他の機能や異なる機能も同様に含んでいてもよい。構成機能ブロック４６は、制御ストラテジもしくは制御モジュールを提供するため、プラント運転レベル４０内の構成要素とインタフェースもしくは通信する構成ルーチン３３を実施する。制御機能ブロック４７は、オペレータが開始したプラント１０内の変更を実施し、制御ディスプレイ３４を介してオペレータに情報を提供し、制御アプリケーション３４aに関するデータを取得するため、プラント運転レベル４０内の各種物理的及び論理的構成要素と通常は直接インタフェースもしくは通信する制御ビューイング及び他のアプリケーション３４及び３４aを含む。メンテナンス機能ブロック４８は、メンテナンス処理を実施し、メンテナンス・ディスプレイ３５を介してメンテナンスデータもしくは情報をメンテナンス担当者に提供し、診断アプリケーション３５aを実行するため、プラント運転レベル４０内の各種物理的及び論理的構成要素と通常は直接インタフェースもしくは通信するメンテナンスルーチン及びアプリケーション３５及び３５ａを含む。同様に、シミュレーション機能ブロック４９はプラント１０のシミュレーションを実行し、プラント１０に関するデータを取得するためプラント運転レベル４０内の構成要素と通信により接続され得るシミュレーション・ルーチン３６を含む。
【００２６】
図２に示すように、システムレベルサポート層４４は、例えば各種機能エリア４６乃至４９で使用されるソフトウェア・オブジェクト、グラフィック・エレメント及びグラフィック・ディスプレイなどの共通データベース及びディスプレイ構造の作成及びメンテナンスを可能とすべく、プラント機能層４２内の各機能ブロック４６乃至４９と結合されこれらをサポートする。具体的には、システムレベルサポート層４４は、機能ブロック４６乃至４９の各々で実行されるグラフィカル作業を統合し、共通データベース構造及びシステムサポート層４４で作成されるグラフィック・エレメントを用いて開発されることを可能とするアプリケーション、データベース及びグラフィカル・サポートエレメントを含む。このシステムレベルサポートを提供するには、システムサポート層４４はグラフィカル・エディタ５０及びグラフィカル・オブジェクトデータベース５２を含んでいてもよい。グラフィカル・エディタ５０はグラフィック・エレメント５４及びグラフィック・ディスプレイ５６を作成するために利用されてもよく、一方グラフィック・オブジェクトデータベース５２はエレメント５４及びディスプレイ５６を、エディタ５２及びブロック４６乃至４９の各種アプリケーションによりアクセス可能なメモリに格納する。データベース５２は、グラフィック・エレメント５４をプラント運転レベル４０内の個々のハードウェア・エレメント及びソフトウェア・エレメントに接続する他のオブジェクト５８及びデータ構造を更に格納してもよい。また、データベース５２は、更なるグラフィック・エレメントもしくはディスプレイを作成するためにグラフィック・エレメントもしくはディスプレイ・テンプレートもしくはプリミティブを格納してもよい。図２よりわかるように、グラフィック・ディスプレイ・エレメント５４、ディスプレイ５６及び他のデータベース構造５８はこれらの機能ブロックと関連付けられたグラフィックを作成し使用する機能ブロック４６乃至４９のいずれかもしくは全てにより利用されてもよい。
【００２７】
一般に、システムレベルサポートブロック４４は、異なる機能コンテキストの同一のプラント機能について異なるグラフィック・エレメントを繰り返し作成する必要性を軽減もしくはなくし、機能エリア４６乃至４９の各々においてユーザがこれらの機能エリアに関連付けられたグラフィカル・ビューに表示されている設備と関連付けられたデータに結合することを容易にすべく、図１のプロセスプラント１０で利用されるグラフィックを全機能エリア４６乃至４９において統合する方法を提供する。当然ながら、システムレベルサポート層４４は機能エリア４６乃至４９の各々における多数のアプリケーション、機能エリア４６乃至４９のうち異なるエリアの異なるアプリケーションなどのためにグラフィック及びデータベースサポートを提供するために利用されてもよい。
【００２８】
再び図１を参照すると、システムレベルサポートブロック４４は追加的ワークステーションもしくはユーザインタフェース６０を用いて実施されてもよい。追加的ワークステーションもしくはユーザインタフェース６０は他のワークステーション２０乃至２３の各々と接続されていてもよい。ワークステーション６０は一般にグラフィックエディタ５０及びデータベース５２を格納してもよく、所望により他のエレメント５４、５６及び５８を格納してもよい。また、ワークステーション６０は別々のワイヤードもしくはワイヤレス通信接続（図１に点線で図示）を介してもしくは任意の他の所望の方法にて、データバス２４を介してワークステーション２０乃至２３と通信により接続されていてもよい。図１の構成では、ワークステーション６０はユーザがグラフィック・エレメントを作成し、そのエレメントを一以上のグラフィック・ディスプレイとしてグループ化するのを可能とすべくディスプレイ・エディタ５０を格納し、実行する。この両方を本願明細書ではディスプレイ・モジュールと呼んでいる。次いで、これらのディスプレイ・モジュールは、図２に図示する機能ブロック４６乃至４９の各々によりアクセス・利用されるデータベース５２に格納され、各種ワークステーション２０乃至２３で実施されてもよい。図示の目的で、システムレベルブロック４４及び機能レベルブロック４６乃至４９の機能は図１の異なるもしくは別々のワークステーション２０乃至２３及び６０で実施されるように図示しているが、これらの各種ブロックのいずれかに関連付けられた任意のもしくは全てのアプリケーションはプロセスプラント１０内の同一のもしくは異なるワークステーションあるいは他のコンピュータ上で実施できることを理解されたい。ゆえに、グラフィックエディタ５０は他のワークステーション２０乃至２３のいずれか、もしくはプラント１０内の任意の他のコンピュータ上に格納され実行されることができ、スタンドアロンあるいは別々のコンピュータにある必要はない。
【００２９】
上述したように、図２のシステムレベル層４４は各種機能環境で用いられ得るシステム・レベル・ディスプレイ及びデータベースオブジェクトを実施し、同時により高いレベルのディスプレイ性能を提供する。一般に、図２のシステムレベル４４で作成されたディスプレイ・オブジェクトは、グラフィック・エレメント及びグラフィック・ディスプレイとしてカテゴライズできる。グラフィック・エレメントはバルブ、センサ、ポンプ、コントローラなどのハードウェア・デバイスなどのプラント内の特定の物理的エンティティと関連付けられた、一般にプリミティブ（基本的）もしくは低いレベルのディスプレイ・オブジェクトである。一般にグラフィック・ディスプレイは１組の相互接続されたグラフィック・エレメントで構成され、プラント内のユニット、エリアなどのより複雑なハードウェア・セットの表示・モデル化のために利用され、異なるハードウェア間の相互接続を含む。また、グラフィック・ディスプレイは、プラントから、あるいはワークステーション２０乃至２３及び６０で実行される診断アプリケーション及びビジネスアプリケーションなどの他のアプリケーションから提供されるグラフ、チャート及び他のデータを含んでいてもよい。
【００３０】
図３は、グラフィック・エレメント及びグラフィック・ディスプレイが存在し得る２つの環境、すなわち構成環境７０及びランタイム環境７２におけるグラフィック・エレメント及びグラフィック・ディスプレイの開発・利用の概略を示す。一般に、グラフィック・エレメント７４（別々のエレメント・オブジェクト７４a、７４bなどとして図示される）の形態をとるディスプレイ・オブジェクトと、グラフィック・ディスプレイ７６（別々のディスプレイ・オブジェクト７６a、７６bなどとして図示される）は、例えば、ディスプレイ・エディタ５０を用いて構成環境７０で作成される。作成された後、オブジェクト７４及び７６はデータベース５２に保存されてもよい。オブジェクト７４及び７６はプロセスプラント１０内の特定のハードウェアもしくは論理的エレメントとバインディングされていないジェネリックオブジェクトを定義する、本願明細書でディスプレイ・モジュール・クラス・オブジェクトと呼んでいるクラス・オブジェクトとして作成されてもよい。しかしながら、クラス・オブジェクトは、クラス・オブジェクトと同一の基本プロパティを有していながらプロセスプラント１０内の特定のハードウェアと結び付けられすなわちバインディングされたランタイム・グラフィカル・オブジェクトの作成に用いられてもよい。とはいえ、一般にクラス・オブジェクトはクラス・オブジェクトからインスタンスを生成されるチルドレン・オブジェクトに依然バインディングされており、このためクラス・オブジェクトに対する変更は、チルドレン・オブジェクトがランタイム環境内でインスタンスを生成された場合であっても自動的にチルドレン・オブジェクトに伝搬される。
【００３１】
図３に示すように、各グラフィック・エレメント・オブジェクト７４は、様々な状況でグラフィック・エレメントを有用とする多数の構成要素を含む。詳細には、各グラフィック・エレメント７４は一以上のビジュアライゼーション７７、任意数のパラメータもしくはプロパティ７８、スクリプトもしくはトリガを用いて実施され得る任意数のアクションもしくはアニメーション７９、及びバインディング８０を含む。一般に、各ビジュアライゼーション７７はグラフィック・エレメント７４がランタイム環境７２において実施される際にディスプレイ画面に実際に表示される視覚的プロパティもしくは視覚的エレメントを定義する。通常、ビジュアライゼーションは物理的・論理的装置もしくは装置のグループの表示を定義するが、ビジュアライゼーションは他のエンティティを表示することもできる。ビジュアライゼーション７７はエンティティのグラフィカル表示の仕様を定義する任意の所望の表示もしくはプログラミングパラダイムを用いてランタイム環境７２において実施されてもよい。ある実施形態において、ビジュアライゼーション７７は、オブジェクトベースであることから標準型のWindows（登録商標）タイプのディスプレイ上でビジュアライゼーションを容易に実施できディスプレイ環境間で移植可能とする方法を提供する、Microsoft（登録商標）社により提供される公知の制御であるPGXMLもしくはAvalon制御を用いて実施されてもよい。この特徴については後述するが、同時係属中の出願（「プロセスプラントのユーザインタフェースにおけるマークアップ言語ベースのダイナミック・プロセス・グラフィック（Markup Language-Based, Dynamic Process Graphics in a Process Plant User Interface）」（代理人事件番号第０６００５／４１１２７号）同出
願を参照により本願明細書に援用する。）にも記載がある。
【００３２】
一般に、パラメータ及びプロパティ７８は、ビジュアライゼーションにより表示されているエンティティと関連した変数、あるいは静的もしくは可変の固有プロパティなどの他のプロパティを定義し、これらのプロパティはエレメント７４の作成者によって定義できる。同様に、アクション及びアニメーション７９は、ルーチン又はプログラム（プロパティ値などに基づいてプロセス・エンティティの状態を検出する、プロパティに対する変換を実行するスクリプトとして実施されてもよい）、ビジュアライゼーション７７がディスプレイ画面に表示される際にビジュアライゼーション７７上でもしくはビジュアライゼーション７７によって実行されるグラフィック・ビジュアライゼーションもしくは挙動を変更するルーチンを含んでもよいアニメーション・ルーチン、あるいはユーザがプロセスへの入力に対する変更など、プロセスへの変更を行うべく、ビジュアライゼーション７７を利用しもしくはビジュアライゼーション７７と対話することを可能とするルーチンを定義する。これらのアクション及びアニメーションは、ビジュアライゼーション７７により興味深く、理解しやすく、有用なグラフィカル・プロパティを付与し、ユーザがビジュアライゼーション７７と対話できるようにする。ある場合において、これらのアクションもしくはアニメーションは、色の変更、回転、サイズ及び拡大縮小の変更、スキューイングなど、ビジュアライゼーション、色を付ける、及びアニメーションの色、サイズ（例えば、高さ及び幅、ラインサイズ、フォント）の変更の形態をとってもよい。これらのアクション及びアニメーションは、グラフィック・エレメント７４にグラフィックプロパティ及びユーザ対話プロパティを付与する。バインディング８０は静的バインディング、固定バインディング、もしくは別名（aliases）を使用するバインディングとしてもよく、グラフ
ィック・エレメント７４がランタイム環境７２において表示の一部として実施される際に、パラメータもしくはプロパティ７８がランタイム環境７２においてデータ、タグ又は他のエンティティとバインディングされる方法を定義する。基本的に、各グラフィック・エレメント７４のためのバインディング８０は、グラフィック・エレメント７４がプラント環境の別の場所に定義された一以上のエンティティ又はデータ・エレメントに結合される方法を確立し、従って実際のランタイム環境７２とグラフィック・エレメント７４との間のインタフェースを定義する。
【００３３】
図３に示すように、各グラフィック・ディスプレイ・オブジェクトは、一以上のグラフィック・エレメント８１、コネクタ・エレメント８２、アクション及びアニメーション８３、プロパティ８４及びバインディング８５への参照もしくはコピーなどの多数の構成要素を含む。一般に、グラフィック・ディスプレイ７６は、パイプ、ライン、コンベヤベルトなどを表示するコネクタ・エレメント８２と視覚的に結合されてもよい各種グラフィック・エレメント８１の対話を表示するディスプレイであってもよい。このようなコネクタ・オブジェクトは、特許文献１に記載されている。図３の点線は、グラフィック・ディスプレイ・オブジェクト７６ａによる、グラフィック・エレメント７４のうちの１つへの参照を示す。グラフィック・エレメント７４を参照するグラフィック・ディスプレイ７６は、当該グラフィック・エレメント７４のプロパティ、パラメータ、アクション及びアニメーションなどの全てを含むことが理解されよう。グラフィック・エレメント７４と同様に、各グラフィック・ディスプレイ７６は、各グラフィック・ディスプレイ７６と関連付けられると共に例えばディスプレイ上のアニメーション、ユーザインタフェースにおける対話、データ操作などを実行する一以上の付加的なアクションもしくはアニメーションを含んでいてもよい。同様に、各グラフィック・ディスプレイ７６はディスプレイと関連付けられた任意数のプロパティを含んでいてもよい。通常これらのプロパティは当該ディスプレイに表示されたユニット、エリア、その他のエレメントグループのプロパティを定義する。バインディング８５はグラフィック・ディスプレイ７６がプラント環境の別の場所に定義された一以上のエンティティ又はデータ・エレメントに結合される方法を定義し、従って実際のランタイム環境７２とグラフィック・ディスプレイ７６との間のインタフェースを定義する。
【００３４】
いったん作成されると、グラフィック・エレメント７４及びグラフィック・ディスプレイ７６は、例えば図１のワークステーション２０乃至２３のいずれかにおけるランタイム環境７２においてバインディングされ、実行されてもよい。詳細には、グラフィック・エレメント７４もしくはグラフィック・ディスプレイ７６がクラス・オブジェクトとして作成され、データベース５２に格納されると、当該エレメントもしくはディスプレイは実際のランタイムオブジェクトとしてインスタンスを生成され、ランタイム環境７２において実行されてもよい。ブロック８６で示すように、インスタンス生成プロセスは、オブジェクト７４及び７６で定義されるバインディングを満たす。バインディングは、プロセスプラントもしくはプロセス制御システム内で、プロセスプラント内の実際のエンティティと、プラント１０内のディスプレイ装置上で実行されるグラフィック・オブジェクトとの間に特定の接続を与えるための、適切な可変名称、タグ、別名などを記載した一以上の決定表を使用して行ってもよい。バインディングプロセスの一部として、オブジェクト７４及び７６は決定表により定義されるプロセスプラント内のデータソースに接続し、これによりプロセスプラント１０に論理的に、通信により接続されるべくプラントへのアクセス権を得る。
【００３５】
ブロック８７で示されるように、ディスプレイ・エレメント７４もしくはグラフィック・ディスプレイ７６は、例えば構成ディスプレイ、制御オペレータ・ディスプレイ、メンテナンス・ディスプレイ、シミュレーション・ディスプレイなどを含む、ランタイム環境７２内の多数の異なる機能において、あるいは多数の異なる機能の一部として実行されてもよい。また、ディスプレイ・オブジェクト７４及び７６は、システムレベル機能、例えば予測制御もしくは予測メンテナンス機能、システムレベルエラー検出、診断などを含む、図２に示す機能レベルの様々な一つからのデータを用いるシステムレベル機能を実行する際に利用されてもよい。実際には、ディスプレイ７６は、構成環境７０でいったん作成され、データベース５２に格納されると、様々な別の作業に利用されることができる。更に、ディスプレイ・オブジェクト７４及び７６はワークステーション９０、ラップトップコンピュータ９１、パーソナル・データ・アシスタント（PDA）や電話装置などのハンドヘルドデバイス９２、もしくは多数の監視を有する大画面ディスプレイなどの任意の他の専門ディスプレイ９３などの任意の所望のディスプレイもしくはコンピュータ・ハードウェア上で実行されてもよい。所望により、単一のグラフィック・ディスプレイ７６を層状に積み重ね、構成ビュー、オペレータ・ビュー、メンテナンス・ビュー、シミュレーション・ビューなどの一以上のビューを含むものとしてもよい。あるいは、これらの各種機能のために作成されたディスプレイ全体にわたって一貫した外観と雰囲気を与えるため、同一もしくは類似のグラフィック・エレメント８１を用いてこれらの別々のビューを提供すべく別々のグラフィック・ディスプレイ７６を構成してもよい。
【００３６】
ブロック９５で示されるように、ランタイム環境７２に配置されるためには、グラフィック・エレメント７４もしくはグラフィック・ディスプレイ７６はコピーされ、もしくはインスタンスを生成され、ランタイムマシンにロードされてもよい。一般にディスプレイ・オブジェクト７４もしくは７６は、呼び出された場合もしくは実際にランタイムマシンで実行される際にのみランタイム環境７２にバインディングされることが望ましい。これをランタイム・バインディングと呼ぶ。ディスプレイ・オブジェクトが実際にランタイム・コンピュータ上で実行されているとき、インスタンスを生成された各オブジェクトのための決定表はランタイム環境において満たされもしくはバインディングされるのみである。この処理により、当該ディスプレイ・オブジェクトのビジュアライゼーション、制御、スクリプトなどを含むディスプレイ・オブジェクトが、当該オブジェクトのビジュアライゼーションが実際にディスプレイ画面上にレンダリングされている際にのみ実行され、処理電力を消費することが確実となる。従って、ディスプレイ・オブジェクトは、当該オブジェクトがランタイム・コンピュータ上で実行されているときにのみランタイム環境７２とバインディングされていることが好ましい。これは、ディスプレイ・オブジェクト７４及び７６が、これらのオブジェクトにより作成されるビジュアライゼーションを視認するユーザの作業により定義される形で間欠的にランタイム環境７２に接続されてもよいことを意味する。すなわち、これらのオブジェクトは、視認される必要があるときにランタイム環境７２にバインディングされ、ユーザが視認していないとき、すなわちユーザがこれらのオブジェクトがビジュアライゼーションを提供している画面を最小化したりクローズしたりしたときなどにバインディングを解除すなわち解放されてもよい。
【００３７】
従って、ディスプレイ・オブジェクト７４及び７６は、スタンドアロン環境、すなわち構成環境７０で作成されてもよいが、プロセスプラント環境内で定義された他のオブジェクトもしくはデータ構造もしくはプロセスプラント環境内で実行される任意のアプリケーションとバインディングされもしくは接続されていてもよいオブジェクトである。該オブジェクトは、例えば、任意の制御、シミュレーション、メンテナンス、もしくは構成環境において定義される、オブジェクト、データ構造、アプリケーションなどを含む。更に、いったん作成されると、ディスプレイ・オブジェクト７４及び７６は、物理的もしくは論理的プロセス・エンティティに直接的に直接参照、変数もしくはタグを通じて定義された決定表を介して、あるいは、別名、変数及びパラメータを用いることで間接的にバインディングされてもよい。別名、変数及びパラメータはディスプレイ・オブジェクト７４もしくは７６がランタイム環境７２内にダウンロードされもしくはインスタンスを生成される際に、あるいは、場合によってディスプレイ・オブジェクト７４もしくは７６が実際にランタイム環境７２内で実行される際に決定されてもよい。
【００３８】
図３のディスプレイ・エディタ５０は、ディスプレイ・オブジェクト７４及び７６の使いやすさや融通性を高めるため、ディスプレイ・オブジェクト７４及び７６が詳細なレベルで作成できるようにしてもよい。例えば、よりプリミティブな物理的及び論理的エンティティのプロパティ及びオペレーションを定義すべくグラフィック・エレメント７４を最初に作成し、次いで一以上のグラフィック・エレメント７４を相互に接続することでより複雑な物理的もしくは論理的エンティティ、もしくは物理的もしくは論理的エンティティのグループを描写するより高レベルのもしくはより複雑なディスプレイを作成することでグラフィック・ディスプレイ７６を作成してもよい。当然ながら、ユーザがより簡単に、より高レベルのディスプレイ・オブジェクトを作成することができるよう、グラフィカル・エレメント７４及びグラフィカル・ディスプレイ７６の両方を様々なカテゴリに格納し、アクセスしてもよい。
【００３９】
図４はディスプレイ・エディタ５０により作成できる例示的画面ディスプレイ１００を示す。ポンプ（Pump）に関するグラフィック・エレメント作成プロセスにおいて描画される画面１００は、主編集セクション１０２、エレメント階層セクション１０４、プロパティ定義セクション１０６及びビジュアライゼーション・セクション１０８を含む。主編集セクション１０２はユーザもしくは設計者が当該グラフィック・エレメントのビジュアライゼーションを定義もしくは作成し、従って当該グラフィック・エレメント（ここではビジュアライゼーション１０９によって図示されるポンプ）の視覚的プロパティを定義するための作業空間を提供する。一般にエレメント階層セクション１０４は、主編集セクション１０２内のビジュアライゼーション１０９と関連付けられた構成要素を提供する。図４の例では、階層セクション１０４は主編集セクション１０２で定義されているビジュアライゼーションが円形（Circle１と称する）及び２つの矩形（Rect１及びRect２と称する）のプリミティブもしくはサブエレメントを含むことを示す。図４には示していないが、階層セクション１０４はビジュアライゼーション１０９について定義されたスクリプト、ビジュアルトリガなどの、アニメーション、アクション及び他のディスプレイ・プロパティの表示を含んでいてもよい。
【００４０】
プロパティ定義セクション１０６は、編集セクション１０２に示されたビジュアライゼーション１０９と関連付けられたグラフィック・エレメントについて現在定義された固有プロパティを含む、全てのプロパティを示す。図４の例示画面１００にはビジュアライゼーション１０９と関連付けられたポンプのオン／オフを定義するIsOnプロパティ、及びビジュアライゼーション１０９と関連付けられたポンプの速度を定義する速度（Speed）プロパティを含む２つのプロパティが示されている。ユーザもしくは設計者は、プロパティ定義セクション１０６内の他の変数、プロパティなどの名称、タイプ及びバインディングを定義することにより当該グラフィック・エレメントに他のプロパティ及びパラメータを追加することができ、これによりグラフィック・エレメント他の態様を定義する。図４のセクション１０６に示された２つのプロパティは、ブール及び浮動小数点変数としてリストされているが、他のタイプの変数を代わりに用いたり、追加して用いたりしてもよい。従って、セクション１０６で定義されるプロパティは例えばアレイ、表、リストもしくは任意の他のタイプの変数もしくはデータ構造であってもよい。
【００４１】
所望により、画面１００内で定義されているグラフィック・エレメントは、当該グラフィック・エレメントと関連付けられた多数のビジュアライゼーションを含んでいてもよい。それぞれのビジュアライゼーションはビジュアライゼーション・セクション１０８において描写され、個別に選択されて主編集セクション１０２に配置されてもよい。例えば、図４のビジュアライゼーション・セクション１０８には２つのビジュアライゼーション１１０A及び１１０Bが示されているが、作成されているグラフィック・エレメントに関して任意の他の数及びタイプのビジュアライゼーションを定義してもよい。グラフィック・エレメント作成プロセスの間、各ビジュアライゼーションは、セクション１０８のビジュアライゼーションの表示を右クリックもしくはダブルクリックすることで、あるいはビジュアライゼーションの表示を編集セクション１０２にドラッグアンドドロップすることで、主編集セクション１０２に配置されてもよい。主編集セクション１０２に配置されると、ビジュアライゼーションはディスプレイ・プロパティの定義もしくは再定義を行うべく編集されてもよい。一般に、ビジュアライゼーションのうちの一つは、作成されているグラフィック・エレメントのためのデフォルト・ビジュアライゼーションとして設定もしくは定義される。デフォルト設定は、デフォルト・ビジュアライゼーションをハイライトする、図４のビジュアライゼーション１１０Aについて図示されているようにビジュアライゼーション１０８内で点線で囲む、あるいは任意の他の方法など、いくつかの方法で表示できる。
【００４２】
一般に、エレメント・エディタ５０により作成されたビジュアライゼーションは、定義された方法で配置されもしくはグループ化される各種形状の一以上の複合で構成されてもよい。このようなビジュアライゼーションを複合形状体と呼ぶことができる。例えば、複合形状体は円形、線形、点、多角形、正方形、矩形、三角形、あるいは他の単純なグラフィック形状を含んでいてもよい。このように定義されると、複合形状体を構成する異なる形状の各々に別々のアクションもしくはアニメーションを適用もしくは関連付けることができる。当然ながら複合形状体はエレメントのより精巧な芸術的表現を含んでいてもよい。複合形状体を定義もしくは作成するため、ユーザもしくは設計者は任意数のプリミティブ・グラフィック・エレメントを主編集セクション１０２に加え、これらのプリミティブを任意の所望の方法にてグループ化してもよい。いったん作成されると、複合形状体は例えばランタイムでXAMLオブジェクトとして実施される実際のオブジェクトのためのビジュアライゼーションを定義する。このビジュアライゼーションはグラフィック・エレメントがランタイム環境で使用される際にビジュアライゼーションとして画面もしくはディスプレイに表示される。複合形状体を構成する形状もしくはプリミティブは、階層セクション１０４の複合階層に図示されてもよい。
単一のグラフィック・エレメントについて多数のビジュアライゼーションを作成することで、異なるビジュアライゼーションが異なる状況で、もしくは異なる用途に使用されることが可能となる。これによりプラント内で異なる目的のために作成されるディスプレイが同一のグラフィカル・エレメントから作成できる（すなわち同一のグラフィカル・クラス・オブジェクトから作成される）一方で、共通エレメントの異なるビジュアライゼーションを表示できる。例えば、ビジュアライゼーション１１０A及び１１０Bなどのうち異なるビジュアライゼーションを異なる機能的状況で使用することができ、これにより、グラフィック・エレメントが制御オペレータのディスプレイの一部として使用される場合には第一のビジュアライゼーション１１０Aを用い、グラフィック・エレメントがメンテナンス・ディスプレイの一部として使用される場合には第二のビジュアライゼーション１１０Bを用い、シミュレーション・ディスプレイにおいてポンプエレメントが使用される場合は第三のビジュアライゼーション（図示せず）を用いることができる。一方、異なるタイプのディスプレイ装置においてディスプレイ目的で異なるビジュアライゼーションを用いてもよい。例えば、グラフィック・エレメントの第一のビジュアライゼーションは一般的なコンピュータもしくはワークステーションでの使用に適しており、別のビジュアライゼーションはPDAや電話装置のようなハンドヘルドデバイスで使用される際に利点を有するべく作成されてもよいし、更に別のビジュアライゼーションは大画面ディスプレイ、もしくは多数の画面監視用に作成されてもよい。当然ながら、グラフィック・エレメントのための異なるビジュアライゼーションを、当該ビジュアライゼーションが表示されるディスプレイのサイズに基づいて誂えることもできる。これにより、典型的なコンピュータ画面などの比較的大きい画面に適合すべく第一のビジュアライゼーションを作成し、PDAやワイヤレス電話装置などのハンドヘルドデバイスのディスプレイ画面などのかなり小さい画面に適合すべく第二のビジュアライゼーションを作成してもよい。従って、同一のグラフィック・エレメントのための異なるビジュアライゼーションが異なるランタイム・デバイスで使用されてもよい。
【００４３】
一方、グラフィック・エレメントの開発サイクルの異なるタイミングにおいて異なるビジュアライゼーションをグラフィック・エレメントに加えてもよい。例えば、グラフィック・エレメントの最初の作成の際に、見栄えのよいビジュアライゼーションの描画もしくは生成を行うことのできない構成エンジニアがまず、予備的及び基本的な性質をもつプリミティブ・ビジュアライゼーション（棒線画図など）を作成し、このビジュアライゼーションを当該タイミングにおけるグラフィック・エレメントの一部として保存してもよい。別の日あるいは別のタイミングで、熟練した製図工もしくはアーティストがより精巧で芸術的な見栄えのよいビジュアライゼーションを作成してもよく、この第二のビジュアライゼーションを代替的ビジュアライゼーションとしてグラフィック・エレメントに追加してもよい。所望により、このとき第二のビジュアライゼーションをデフォルト・ビジュアライゼーションとして設定し、この第二のビジュアライゼーションがランタイム・ディスプレイに表示されもしくはランタイム・ディスプレイで利用できるよう、この第二のビジュアライゼーションがマスタもしくはクラス・グラフィック・エレメントからインスタンスを生成された全てのランタイムグラフィック・エレメントを通じて伝搬されてもよい。
【００４４】
別の例において、ディスプレイの異なるテーマ、グラフィカル基準、規範もしくはスタイルをサポートすべく、同一のグラフィック・エレメントについて異なるビジュアライゼーションが提供されてもよい。公知のように、異なる産業ではポンプ、バルブ、センサ及び他のプロセスプラント・エンティティを表現する際に異なるグラフィック規範もしくはグラフィカル基準を用いるのが一般的である。従って、石油産業とガス産業では製薬業とは異なるグラフィカル基準を用いている。エレメント・エディタ５０を用いると、石油及びガス規範及び製薬規範などの多数のグラフィカル基準もしくは規範をサポートすべく、各グラフィック・エレメントについて異なるビジュアライゼーションを提供することができる。このように、同一のグラフィック・エレメントが、例えば異なる産業で受け入れられるもしくは有用なディスプレイのような、異なるディスプレイ基準もしくは規範あるいはテーマをサポートすべく作成されたグラフィック・ディスプレイで用いられてもよい。更に、ユーザが各種芸術的タイプのディスプレイを作成することを可能とすべく、芸術的スタイルなどの異なるグラフィカルスタイルが異なるビジュアライゼーションで用いられてもよい。当然ながら、あくまでこれらは同一のグラフィック・エレメントに多数のビジュアライゼーションを提供することの利点の一例であり、これらの多数のビジュアライゼーションの他の用途も存在する。
【００４５】
所望により、グラフィック・エレメントは、定義されもしくは当該グラフィック・エレメントに関連付けられた一以上のグラフィカル挙動を有してもよい。詳細には、設計者もしくは作成者は、ビジュアライゼーションが画面に表示されている際に、グラフィック・エレメントの各ビジュアライゼーションについて回転、線形変換、背景の変更、色の変更、リサイズ、色階調アニメーション、不透明アニメーション、フォント特性アニメーション、ビデオ及びスタート／ストップ機能などのビデオ機能、二次元もしくは三次元の変更などのアニメーションを定義してもよい。この動的挙動を加えるために、ユーザはグラフィック・エレメントを選択し、アニメーション（アニメーション・ルーチンとも呼ばれる）をビジュアライゼーションに加えることを選択してもよい。ここにおいて、ユーザは、選択されたアニメーションに関する構成情報を入力してもよく、あるいは、例えばダイアログボックス、表現エディタなどを利用して入力できるスクリプトを用いて所望の挙動を定義してもよい。定義されるとこれらのスクリプトは階層セクション１０４の階層に表れる。スクリプトは、基本的にランタイム作業の間、当該ディスプレイ・エレメントのためのビジュアライゼーションが表示されもしくは画面に提示されている際に、ディスプレイ・エレメントの一部として実行されるプログラムもしくはルーチンである。これらの挙動もしくはスクリプトは、必須ではないが、当該グラフィック・エレメントについて定義された一以上のプロパティもしくはパラメータとバインディングされ、及びそれらのプロパティもしくはパラメータ上で動作されてもよい。例えば、スクリプトは、グラフィック・エレメントのプロパティ・セクション１０６で定義されるプロパティのうち一つの値に基づいて、グラフィック・エレメントのビジュアライゼーションの色を変更すべくグラフィック・エレメントと関連付けられていてもよい。例えば、IsOnプロパティ（ランタイム環境とバインディングされている）が真であるとき、すなわちポンプがオンにされたとき、ポンプ・ビジュアライゼーション１０９の色は黄色から緑色へ変更してもよい。あるいは、スクリプトはポンプエレメントについて定義され、ポンプの速度プロパティ値を設定点と比較し、速度プロパティ値が一定のレベルを上回った場合には、ビジュアライゼーション１０９内のある種のグラフィック・アニメーションを発生させてもよい。このアニメーションとして、例えば、ポンプを赤色に変更させる、ポンプを回転させる、ポンプ内のモータが回転していることを表示する、ポンプ・ビジュアライゼーションを拍動もしくは振動させるなどが挙げられる。
【００４６】
例えば、あるビジュアライゼーションについて、当該ビジュアライゼーションに関するアニメーションもしくは他の挙動を提供すべく定義されたスクリプトは、当該ビジュアライゼーションを構成する複合形状体の個々の形状もしくはプリミティブにおいて、あるいは複合形状体の多数の形状において作動すべく設計されてもよい。スクリプトはランタイム環境における実際の物理的エレメントとバインディングされた固有プロパティにおいて作動しもしくは固有プロパティを利用するため、これらのスクリプトは、実際のプラント運転に基づいて、もしくは当該グラフィック・エレメントと関連付けられた実際のエンティティのプロパティを反映するプロセスプラントの他のエリアからのデータに基づいて、ビジュアライゼーションを変更することを可能とする。
【００４７】
異なるタイプのグラフィック・エレメントは、当該グラフィック・エレメントと共に用いるのに適した異なるグラフィックを有していてもよいことが理解されよう。従ってグラフィック・エレメントに対して提供される挙動は、本願明細書に例示したものに限定されない。例えば、機材を回転させることに関するグラフィック・エレメントは、振動に関するグラフィック、移動、色の変更などを提供するスクリプトを含んでいてもよいし、センサなどの機材に関するグラフィック・エレメントはオーバーリミット状態、アンダーリミット状態、較正が必要な状態などを描写したスクリプトを含んでいてもよい。当然ながら、グラフィック・エレメントについて任意のプロパティを利用もしくは定義でき、これらのプロパティは概ね表示されているエンティティのタイプに基づく。また、異なるビジュアライゼーションについて異なる挙動を提供するため、異なるビジュアライゼーションのそれぞれについて様々なスクリプトが提供されてもよいことが理解されよう。一方、スクリプトによってはグラフィック・エレメントと関連付けられた各ビジュアライゼーションに挙動を提供するために用いられてもよい。
【００４８】
また、スクリプトもしくは他のルーチンは当該グラフィック・エレメントに関する一以上のパラメータに基づいた関連する物理的エンティティについて一定の状態を検出すべく、グラフィック・エレメントと関連付けられていてもよい。これらの状態は、当該エンティティと関連付けられた通信状態、装置状態、値状態などの状態を含む、物理的状態を含むエンティティ状態の検出を含んでもよい。検出された全ての状態は、当該スクリプトにより生成された状態もしくは値とバインディングされたアニメーションもしくは他のアクションもしくは挙動によりグラフィック上に反映されてもよい。例えば、関連付けられたポンプの過熱状態を、当該ポンプエレメントに関する一以上のパラメータ、すなわち図４のプロパティ・セクション１０６で定義されもしくは表示された一以上のパラメータ、に基づいて検出する、ポンプグラフィック・エレメントのためのスクリプトが提供されてもよい。他の例として、スクリプトはポンプの過振動、もしくは任意の他の状態を検出すべくグラフィック・エレメントについて提供されてもよい。過熱もしくは過振動などの状態が検出されると、当該グラフィック・エレメントと関連付けられたアニメーションもしくは他のアクションが当該状態に関して作動され、当該グラフィック・エレメントのビジュアライゼーション内もしくはビジュアライゼーション上において当該状態のグラフィカル表示が提供される。
【００４９】
図５はディスプレイ・エディタ５０で作成し得る他の例示的画面ディスプレイ１１２を図示したものである。図４の画面１００と同様に、画面ディスプレイ１１２は主編集セクション１１４、パレットビュー１１６、階層ビュー１１８及びプロパティビュー１２０を含む。リアクタ・エレメント１２２の第一のビジュアライゼーションが主編集セクション１１４に表示されている。階層ビュー１１８に示されるように、エレメントのタイトルはReactor１であり、このエレメントはVisual１（デフォルト・ビジュアライゼーション）、Visual２及びVisual３と称される３つのビジュアライゼーションを含む。階層ビュー１１８の見出しであるVisual１の下に示すように、第一のビジュアライゼーションは矩形（Rectangle）エレメントと楕円形（Ellipse）エレメントを含むキャンバス背景から構成される。ビジュアライゼーションの現在定義されているプロパティ、ここでは名称、高さ及び幅はプロパティビュー１２０にリストされている。階層ビュー１１８においてビジュアライゼーションが選択されると、当該ビジュアライゼーションと関連付けられたチャイルドプリミティブもしくはエレメントのいずれかが編集ビュー１１４に表示され、現在選択されているエレメントのプロパティがプロパティビュー１２０に表示される。
【００５０】
画面１１２において、パレットビュー１１６はビジュアライゼーションの作成に用いることのできる多数の基本エレメントを含む。例えば、パレットビュー１１６は、ボタン（Buttons）、テキストボックス（Text boxes）、スライダ（Sliders）、ノブなどの１組の基本ＵＩ（ユーザインタフェース）エレメント（Basic UI Elements）、１組の基本パネル（Panels）及び１組の基本形状（Basic Shapes）を含む。定義されたパネルは、キャンバスエリアに対する座標によりユーザがエレメントを明示的に位置決めできるエリアを定義するキャンバスパネル、ユーザがエレメントを相互に水平もしくは垂直に配置できるドックパネル、及び表示されたフロー方向と共にフローパネルエリア内の内容物を無効化、ラップ、及び位置決めするために用い得るフローパネルを含んでいてもよい。フロー方向は、左から右、上から下、もしくは右から左、上から下など、例えば上、右、左及び下の任意の組合せとしてもよい。更に、パレットビュー１１６の基本形状はISA（Instrument Society of America）シンボル、トランスミッタシンボル、バルブシンボル、PI&D図シンボルもしくは他の制御シンボルなど、あるいは任意の他の所望の形状を含むものとしてもよい。これらの形状は全てグラフィック・エレメントの作成に使用できる。
【００５１】
当然ながら、例えば基本的な制御エレメント、デバイスなどの他の基本エレメントは、定義されているグラフィック・エレメントに関するビジュアライゼーションを作成するために用いるパレットビュー１１６のプリミティブとして提供されてもよい。また、パレットビュー１１６は、ユーザが他の任意の有用な形状をパレットビュー１１６から編集ビュー１１４へドラッグすることができるよう作成されてもよいユーザ定義カテゴリもしくはエレメントのリストを提供してもよい。必要に応じて、このようなユーザ定義カテゴリへのアクセスは当該カテゴリもしくはエレメントの作成者であるユーザに限定されてもよく、当該カテゴリもしくはエレメントは特定のユーザと関連付けられたユーザ選好ファイルに保存されてもよい。しかし、ビルトイン・カテゴリ及びパレットアイテムは、データベースに格納されてもよく、地球上の全てのユーザによって利用可能としてもよい。いずれの場合でも、パレットビュー１１６はグラフィック・エレメントを形成するために用いてもよいプリミティブ・エレメントのライブラリを表示するか、当該ライブラリへのアクセスを提供すべく利用されてもよい。これらのライブラリは例えば所望によりロックされ、作り替えられ（versioned）、特定のユーザに限定されてもよい。
【００５２】
既述の如く、グラフィック・エレメントに関する任意のビジュアライゼーションは当該ビジュアライゼーションと関連付けられたアニメーション及び／又はアクションを有していてもよく、このようなアニメーションもしくはアクションは画面１１２のアクション／アニメーション・ビュー１２３に表示されてもよい。ビジュアライゼーションがアニメーションもしくはアクションを含む場合、これらのアニメーションもしくはアクションは、星形などの特殊な記号を用いて階層状に表示されてもよい。階層ビュー１１８において選択される場合、ビジュアライゼーションのために定義される任意のアクションもしくはアニメーションあるいはビジュアライゼーションのサブエレメントはアクション／アニメーション・ビュー１２３に表示される。アクションもしくはアニメーションは、ビュー１２３のこのようなアクションもしくはアニメーションを定義することによって、あるいはこのようなアクションもしくはアニメーションを階層ビュー１１８に加えることによって、作成され割り当てられることが可能である。ユーザがアクションもしくはアニメーションを作成又は編集しようとするとき、エディタ５０はダイアログボックスもしくは編集ボックスを設け、この特徴を完全に特定しもしくは定義することを可能とする。当然ながら、アクションもしくはアニメーションは、スクリプト、ビジュアルトリガ又は他のプログラムを使用して定義されてもよい。
【００５３】
画面１１２を使用している間、ユーザ又は設計者は、パレットビュー１１６の異なるアイテムをドラッグアンドドロップするか、あるいは選択し、これらのアイテムを編集ビュー１１４に配置して所望のビジュアライゼーションを作成することにより、エレメントのビジュアライゼーションを作成してもよい。一以上のツールバー１２４を用いて、新たなビジュアライゼーションやアニメーションを追加したり、アニメーションを削除、移動、編集したり、プリミティブもしくはエレメントを例えば後ろから前へ配置したり、コネクタ・エレメントを表示させたり、作成中のビジュアライゼーションへの接続を可能としたり、異なるプリミティブが相互に位置決めされるようグループ化したり、ラインやテキストなどの静的エレメントを追加したりするなどの標準的な編集機能を提供してもよい。
【００５４】
図６に示すように、グラフィック・エレメント１３０は多数のビジュアライゼーション１３２もしくは当該グラフィック・エレメント１３０と関連付けられた視覚的表示を有していてもよい。当該グラフィック・エレメント１３０が使用される異なるタイミングもしくは異なるディスプレイにおいて異なるビジュアライゼーション１３２を使用できることが理解されよう。前述したように、任意のビジュアライゼーション１３２は、任意数のプリミティブ１３４並びにアニメーション及びアクション１３６で構成されていてもよい。また、グラフィック・エレメント１３０は、ビジュアライゼーション１３２に変更を行い、当該ビジュアライゼーション１３２と関連付けられたビジュアルトリガを作動するため、アクション及びアニメーション１３６と結合されもしくはアクション及びアニメーション１３６により使用されてもよい任意数のプロパティもしくはパラメータ１３８を含んでいてもよい。また、ビジュアライゼーション１３２又はビジュアライゼーション１３２を形成している個々のプリミティブは、マウスカーソルを移動させたりマウスクリックを行うなどの事前定義されたイベントに関して定義されたアクションを有していてもよい。これらのアクション（ルーチンとも呼ばれる）は、グラフィック・エレメント１３０の挙動を更にカスタマイズし、ユーザが例えばランタイム環境に変更を施すためにビジュアライゼーション１３２と対話することを可能とすべく、イベントハンドラが設定もしくは定義されることを可能とする。詳細には、ユーザは値もしくは他の数字、もしくは情報を入力し、ビジュアライゼーション上のスライダバーなどのエレメントを移動させ、あるいは例えばビジュアライゼーション内のプロパティを変更すべく何らかの他のアクションを起こすることによって、ビジュアライゼーション１３２と対話してもよい。このビジュアライゼーション・プロパティの変更は、スクリプトを介して又は直接的に、変数を変更するためにプロセスランタイム変数などのプロセス入力に結合されてもよい。詳細には、ビジュアライゼーション・プロパティは、プロセス入力とバインディングされたグラフィック・エレメントについて定義されたプロパティと接続されていてもよい。このように、ユーザは、プロセスもしくはシミュレーション環境などの他のランタイム環境を変更しもしくはプロセスもしくはシミュレーション環境などの他のランタイム環境に入力を提供すべく、アクションもしくはアニメーション・ルーチンを介してビジュアライゼーションと対話してもよい。
【００５５】
必要に応じて、ビジュアライゼーション１３２は、ユーザにより指定されることにより、あるいはプログラムで指定されることにより、グラフィック・エレメント１３０に接続されてもよい。詳細には、グラフィック・エレメント１３０は、ビジュアライゼーションが例えばグラフィック・エレメントにより表示されている当該エレメントの製造業者、あるいは、当該グラフィック・エレメントと関連付けられた装置状態などの他のパラメータに基づいてプログラムにより変更されることを可能とする当該グラフィック・エレメント１３０と関連付けられた列挙プロパティを表示してもよい。
【００５６】
既述の如く、図５のプロパティビュー１２０は、階層ビュー１１８において選択されたアイテムについて定義された、ゆえに主編集ビュー１１４に表示されたアイテムについて定義されたプロパティ及びイベントを提供しもしくは表示する。ユーザは、例えばツールバーのボタンを使用してプロパティビュー１２０におけるプロパティ、固有プロパティ及びイベントの間で切り換えることができる。図７は、固有プロパティが示されている、プロパティビュー１２０Aを示す。同ビュー１２０AにはここではIsOn及び速度プロパティが示されている。この場合、プロパティビュー１２０Aは、これらの変数のデータ形式及びこれらの変数に関する任意のデフォルト設定を示す。既述の如く、ユーザは、列挙、表構造などを含む任意の所望のデータ形式でプロパティを定義すべく、このプロパティリストに対し追加、削除もしくは編集を行うことができる。必要に応じて、プロパティビュー１２０は、これらのプロパティについて定義される任意のランタイム・バインディングを表示してもよい。これらのランタイム・バインディングは一定の変数又はタグであってもよいし、あるいはランタイムにおいてもしくはランタイムマシンへグラフィック・エレメントをダウンロードする際に記入される別名を使用するタグであってもよい。
【００５７】
グラフィック・エレメントについて定義されるプロパティの値はアニメーション、アクション、その他のトリガ条件として使用されてもよく、これらの挙動は当該グラフィック・エレメントに関連付けられた一以上のスクリプトにより定義されてもよい。例えば、モータがOnプロパティを有し、当該Onプロパティが真である場合、作動しているモータのアニメーションはグラフィック・ディスプレイ上で起動されてもよい。また、例えば矩形形状のプリミティブフィルプロパティなどのプリミティブ・プロパティは、グラフィック・エレメント・プロパティにおける変更がプリミティブ・プロパティに影響を与えるよう、グラフィック・エレメント・プロパティとバインディングされてもよい。同様に、ビジュアライゼーションに対する変更はプロパティに結合されてもよく、これによりビジュアライゼーションに対する変更はプロパティ値に変更を生じてもよい。
【００５８】
必要に応じて、エディタ５０は、ユーザがグラフィック・エレメント・プロパティとアニメーションもしくはアクションとの間のより望ましい形で結合するために一以上の変換機能を特定することを可能とする。例えば、ユーザがTankLevel（タンク内の内容物の高さ（タンクレベル）を定義する）のグラフィック・エレメント・プロパティをプリミティブ・プロパティ矩形フィルにバインディングし、これによりビジュアライゼーションの一部として定義されたプリミティブについて色を付けることでタンク内の内容物の高さをグラフィック表示しようとする。但し、この場合ユーザは、タンクレベルが第一レベルと第二レベルの間にある場合に矩形のフィルを緑色に設定し、タンクレベルが第二レベルと第三レベルの間にある場合に矩形のフィルを黄色に設定し、タンクレベルが第三レベルを上回る場合に矩形のフィルを赤色に設定するよう、プロパティ（TankLevel）を列挙された設定もしくは状態に変換する変換機能を定義してもよい。この変換機能は当該グラフィック・エレメントと共に実行されるスクリプトもしくは任意の他のプログラムとして定義され、プロパティ値を長さ、フォント名、ローカライズドストリング、持続時間、回転、色階調度、不透明、ブラシパターンなどに変更するなどの任意の所望のプロパティ変換を発生すべく利用されてもよい。同様に、変換ルーチンは、ビジュアライゼーションを通じてユーザからの入力を任意の所望のプロパティ値に変換する。
【００５９】
他の例として、変換機能を利用してグラフィック・エレメント・プロパティもしくはパラメータを外部参照とバインディングしてもよい。ここで、エディタ５０は、ユーザが、当該グラフィック・エレメントがランタイム環境で使用される際にソース値（ランタイム変数）を目的値（グラフィカル変数）に、もしくはその逆に変換すべく自動的に適用される一以上の変換機能を特定することを可能とする。例えば、速度を数値として提供するデータソースにバインディングされていてもよい速度目的変数は、ソース変数の値に基づいて「低速」「中速」「高速」のいずれかを示すストリングなどのストリングタイプ変数に変換されてもよい。また、このような変換機能はユニットの変換もしくは他の変換を提供するために使用されてもよい。いずれの場合でもこれらの変換機能はスクリプトもしくは他のプログラムとして実施されてもよく、グラフィック・エレメントについてアクションもしくはアニメーションを提供し、もしくは当該グラフィック・エレメントに関するディスプレイ・プロパティに影響を与える目的で使用されてもよい。
【００６０】
当然ながら、プロセス制御内の異なる物理的エレメントについて作成される異なるタイプのグラフィック・エレメントに任意の所望のプロパティを定義してもよい。例えば、ポンプエレメントはポンプ状態（例えば、オンもしくはオフ）、圧力入力プロパティ、圧力出力プロパティ、流量入力プロパティ及び流量出力プロパティを含んでいてもよい。同様に、アクチュエータと共に使用される調節バルブは、例えば名称プロパティ、濃度入力プロパティ、濃度出力プロパティ、流量入力プロパティ、流量出力プロパティ、圧力入力プロパティ、圧力出力プロパティ、温度入力プロパティ、温度出力プロパティ、バルブ位置プロパティ、バルブ開及びバルブ閉プロパティ（このプロパティはバルブが常に開であるか閉であるかを定義してもよい）、設定点、プロセス値、バルブタイプ（線形、クイックオープニング、イコールパーセンテージなど）などを含んでいてもよい。当然ながらこのリストは包括的であることを意図していない。更にこれらのプロパティはいずれもグラフィック・エレメントに関するアニメーションもしくはアクションと接続することができる。
【００６１】
図８は、階層ビュー１１８（図５）中で選択されたエレメント（ここではReactor１エレメント）に関するグラフィック・エレメント・プロパティと関連するアニメーション及びバインディングを表示するために使用できる第二のプロパティビュー１２０Bを表す。図８のプロパティビュー１２０Bは、IsOnプロパティがグラフィック・エレメントのビジュアルの各種構成要素と関連する方法を示す。詳細には、表エントリ１４０により示されるように、ビジュアライゼーションの背景に関連し、IsOnプロパティの値に基づいて動作する１つのアニメーションが存在する。表エントリ１４２は、IsOnプロパティとの間のバインディングを示し、IsOnプロパティをビジュアライゼーション中の背景エレメントもしくはプリミティブと関連付けるアニメーション、スクリプト及び変換にアクセスするために用いることもできる。この場合、ユーザは、表エントリ・ボックス１４０及び１４２のボタンを選択することにより追加情報を取得できる。例えば、ユーザは表エントリ１４０のボタンを選択することにより、IsOnパラメータの値に基づいてビジュアライゼーションの背景色を変更するアニメーションにアクセスできる。このようなアニメーション・ボタンをクリックすると、エディタ５０がアニメーションの管理及び構成を行うことを可能とするプロパティ・アニメーション・ダイアログボックスを開くようにしてもよい。また、ボックス１４２のバインディングボタンをクリックすることによりバインディングの実行・管理を行うことができ、これによりエディタ５０がバインディングの「作成・表示及び編集を可能とするダイアログボックスを開く。当然ながら当該グラフィック・エレメントに関する他のプロパティについての同様の画面が設けられてもよく、プロパティ画面１２０Ｂに表示されるプロパティリストは階層ビュー１１８で現在選択されているアイテムに応じたものとなる。
【００６２】
再び図５を参照する。階層ビュー１１８においてビジュアライゼーションが選択されると、プロパティビュー１２０は、名称、ビジュアライゼーションについての一意的な識別子を与えるＩＤを表示し、このビジュアライゼーションが当該グラフィック・エレメントについてのデフォルト・ビジュアライゼーションに設定されるか否かを表示する。階層ビュー１１８もしくはプロパティビュー１２０は、当該ビジュアライゼーションがロックされているか否か、すなわち当該ビジュアライゼーションの変更の可否を示してもよい。
【００６３】
また、階層セクション１１８からコネクタ・エレメントが選択されると、プロパティビュー１２０は当該コネクタ・エレメントのプロパティを示す。コネクタ・エレメントのプロパティとして、コネクタ形状（流体ライン、電気ライン、ガスライン、円形もしくは正方形ダクト、コンベヤベルトなど）、当該接続がデバイスへの接続であるかデバイスからの接続であるか（すなわちグラフィック・エレメントにより示されているエンティティに対する材料の流れ方向）、必要なもしくは可能な最小接続数、最大接続数、接続の幅及び高さ、グラフィック・エレメントに対する接続の位置（上側、左側など）の表示が挙げられる。
【００６４】
階層ビュー１１８でプリミティブが選択されると、プロパティビュー１２０は当該プリミティブのプロパティを表示する。プリミティブのプロパティとしては、ＩＤ、カテゴリの記載、プリミティブが選択可能であるか否か、プリミティブが可視的であるか否か、プリミティブのサイズ、長さもしくはその他の形状もしくは性質の定義、背景色及び当該プリミティブに関するフィルスペースが挙げられる。当然ながら、階層ビュー１１８中の他の任意のアイテムを選択しても当該アイテムのプロパティがプロパティビュー１２０に表示される。プロパティのタイプ及び性質は選択されたアイテムの性質に依存する。
【００６５】
必要に応じて、階層ビュー１１８中で選択された階層アイテムの各々もしくは全てと関連付けられたイベントを表示するためのイベント・シートが与えられてもよい。このようなイベント・シートは、ユーザがグラフィック・エレメントに関して、クリックやマウスカーソルの移動などのアクションを行う際に発生するイベントを含むことができる。このようなイベントはユーザがグラフィック・エレメントもしくはグラフィック・エレメントの一部の上でマウスをクリックした際に発生する動作、あるいは当該グラフィック・エレメントのビジュアライゼーションもしくはビジュアライゼーションの一部の上にマウスカーソルを移動させる際に発生する動作を定義する。このイベント・シートの一部として、ユーザは、当該イベントが発生すると実行されるスクリプト（ここでは、ルーチンと呼んでいる）を定義しもしくはスクリプトにアクセスするためにスクリプトエディタへのアクセス権を与えられてもよい。
【００６６】
更に、必要に応じて、グラフィック・エレメントは当該グラフィック・エレメントと関連付けられたカスタム・イベントを有していてもよい。通常、カスタム・イベントは何らかの外部のイベントの結果として定義されるイベント、あるいはグラフィック・エレメントのユーザが行ったアクションの結果として外部のアプリケーションもしくはデータソースとの通信を必要とするイベントである。基本的に、グラフィック・イベントは、グラフィック・エレメントのビジュアライゼーションに関してアクションが発生したことを信号で知らせるべくグラフィック・エレメントによって送られるメッセージである。含有アプリケーション（containing application）もしくはグラフィック・エレメントを実施するランタイム・アプリケーションは、例えばC#構文を用いて、又は任意の周知の方法にてイベント通知に登録することにより、これらのイベントを捕捉できる。ある例では、含有アプリケーションはポンプ過熱カスタム・イベントに登録してもよく、起動されるとユーザがイベントを処理することを可能とすべくスクリプトもしくは他のルーチンを実行するマイハンドラ機能を提供する。グラフィック・エレメントが制御オペレータ画面の一部として実施される場合に、これらのカスタム・イベントは特に有用である。この場合、例えばグラフィック・エレメント自体が、ポンプ熱プロパティ（外部の測定値と結び付いている）を設定点又は他の許容値と比較することでイベント状態を決定することができ、ユーザにイベントを通知し、アプリケーション、スクリプト、ダイアログなどを実施することにより、ユーザがイベント（ここではポンプの過熱）を処理することを可能とする。すなわち、このイベント処理プロセスを可能とするには、エレメント・エディタ５０はユーザがイベントに関する議論（すなわちイベントとして認識されているもの及びあるイベントの発生により生じるイベント）を定義することを可能とする。
【００６７】
当然ながら、必要に応じてグラフィック・エレメントはAvalon制御クラスから継承される標準的なイベントを提供してもよい。公知のように、AvalonオブジェクトもしくはＡｖａｌｏｎ制御は、ユーザインタフェース上へのベクトルグラフィックのレンダリングをサポートするMicrosoft社のＬｏｎｇｈｏｒｎオペレーティングシステムのためのAvalonユーザインタフェース・アーキテクチャに関するMicrosoft社により定義されたグラフィックである。これらの標準的なイベントは、例えばフェイスプレート表示又はデバイス詳細表示のビューをクリック又はダブルクリック（マウス）イベントと結び付けることを含んでいてもよい。例えば、グラフィック・エレメントのビジュアライゼーションの結び付きの部分がマウスクリックもしくはダブルクリックされたことを報知するイベントであるクリック又はダブルクリック・イベントにより、ビジュアライゼーションにより表示されている装置もしくはエンティティに関するフェイスプレートもしくは詳細ディスプレイのディスプレイを起動し、表示されているエンティティの状態、設計、製造などに関するより完全で詳細な情報をユーザに提示することができる。当然ながら、標準的なイベントを含む他のイベントとして、キーが押下されたか否かを報知するキーの上下イベント、マウスによる入力、マウスの空中停止、マウスの移動、マウスホイールなどのアクションを含むマウスイベント、あるいは任意のその他のユーザが開始するイベントが挙げられる。
【００６８】
このように、グラフィック・エレメントイベントは、必要に応じて、グラフィック・エレメントのプロパティ中の変更に応じて、プリミティブイベントのためのイベントハンドラなどのイベントハンドラのスクリプト中で、あるいは変換機能中に起動されてもよい。また、グラフィック・エレメントのプリミティブは、例えばマウスやキーボードを介したユーザとの対話により起動され得るイベントを表示できる。これらのイベントは、形状及びプリミティブレベルでグラフィック・エレメントと対話するためのオプションをユーザに提供する。開発者は例えば、C#メソッドを用いてイベントハンドラを特定することにより、グラフィック・エレメント内のイベントを処理できる。
【００６９】
再び図５を参照すると、アクション／アニメーション・ビュー１２３は、編集ビュー１１４に現在表示されているビジュアライゼーションに関して定義された変換アニメーション及びプロパティ・アニメーションのリストを提示もしくは表示してもよい。ユーザは、例えばビュー１２３の１列をダブルクリックしてエディタ５０に例えば変換アニメーション・ダイアログボックス又はプロパティ・アニメーション・ダイアログボックスなどの、ユーザが選択したアニメーションを編集できるようにするダイアログボックスを表示させてもよい。通常は現在選択されているビジュアライゼーションのアニメーションだけが表示されるが、「全て表示（Show-All）」ボックス１４４を選択することにより全てのビジュアライゼーションについてアニメーション及びアクションを表示することができる。アニメーションに例えば「レバーを動画化」「モータを回転」などの意味のある名称もしくは描写を付与する場合、アクション／アニメーション・ビュー１２３は当該ビジュアライゼーションについて定義されるアニメーション挙動が容易に視認・アクセス可能なものとする。図９は、IsOnプロパティについて定義されるアクションを示す例示的アクション／アニメーション・ビュー１２３Aを示す。この場合、IsOnプロパティ（Property）が真（True）である場合、ビジュアライゼーションVisual１のプリミティブRectangle１が「赤色（Red）」のフィル値（Value）を用いてフィル（Fill）アクションを実施する。同様に、IsOnプロパティが真であり、ビジュアライゼーションVisual１のプリミティブEllipse１が偽（False）の値を用いて可視化（Visible）アクションを実施する（例えば、非可視化する）。当然ながら、アクション及びアニメーションはビジュアライゼーションの別々のプリミティブに関して別に定義されてもよいが、これらのアクション及びアニメーションはより複雑で見栄えのよいアニメーションを提示すべく、同一のイベント、トリガもしくはプロパティ変更が行われる際に同時に動作してもよい。また、アクション及びアニメーションは、サイズの拡大、色付けなど、あるいはオフにされるまでの間連続的に発生する繰り返し動作などの、単一の動作を実行することを含んでもよい。
【００７０】
図１０は、グラフィック・エレメント１５２の固有プロパティなどのプロパティに基づいてグラフィック・エレメント１５２のビジュアライゼーション１５０においてビジュアルトリガ１４８を実施できる方法を示す。詳細には、グラフィック・エレメント１５２の一以上の固有プロパティは、当該ビジュアルトリガ１４８について定義される一以上のプロパティトリガ１５４（図１０では、３つ）により監視される。各プロパティトリガはスクリプトを用いて実施してもよく、点線１５５で示されるように一定のグラフィック・エレメント・プロパティ値に関して監視を行うことができる。次いで、各プロパティトリガは、点線１５６で示すように、ビジュアライゼーション１５０の一以上のプリミティブ・プロパティ値を設定でき、このとき監視されたグラフィック・エレメント・プロパティ値は特定の条件を満たす。ゆえに、例えばプロパティトリガ１５４のうちの１つは、これらのプロパティの一以上の値が特定範囲内に入ったときを決定する目的で、一以上のグラフィック・エレメント・プロパティを監視してもよい。この条件が満たされると、プロパティトリガ１５４の１つはアニメーション又は他の視覚的スクリプトを例えばビジュアライゼーション１５０のプリミティブもしくは他のエレメント上で実行させ、ビジュアルトリガ１４８を提示する。当然ながら、ビジュアルトリガ１４８の一部として多数の同時変更又はアニメーションを行うべく多数のプロパティトリガ１５４が同時に動作してもよいし、あるいは、例えば異なる固有プロパティ上で又は同一の固有プロパティの異なる値に基づいて異なるプロパティトリガ１５４が各々独立して動作し、異なるタイミングでもしくは異なるプロセス状況に応答してビジュアルトリガ１４８の異なる動作を提供してもよい。このように、色の変更やアニメーションなどは、グラフィック・エレメント１５２の固有プロパティの値に基づいて、ビジュアライゼーション１５０に提示されることができる。
【００７１】
エディタ５０は、必要に応じて現在選択されているビジュアライゼーションの全てのプロパティトリガを列挙したビジュアルトリガパネルを提供しもしくは表示してもよい。このようなパネルは図９に例示されている。図９のパネルにおいて、エレメント・プロパティ（Element Property）の列はグラフィック・エレメント・プロパティ名を列挙し、第一の値（Value）の列は現在見られているグラフィック・エレメント・プロパティ値を表し
、目標（Target）の列は変更されるビジュアライゼーションもしくはプリミティブ識別を表し、パス（Path）の列は変更中のプリミティブ・プロパティであり、第二の値（Value
）の列は現在見られているグラフィック・エレメント・プロパティ値が満たされると適用されるプリミティブ・プロパティである。当然ながらアニメーション及び他のビジュアライゼーションの変更はこの構造を用いて行うことができる。
【００７２】
図１１は、ユーザが変換アニメーションを特定することをアシストし又は可能にすべく用いられる変換アニメーション（Transform Animation）・ダイアログボックス１６０を示す。図示するように、変換アニメーション・ダイアログボックス１６０は、ユーザがアニメーション中の移動を定義する画素の方向及び距離を特定できる移動（Move）セクション１６２、ユーザがアニメーションの回転方向及び角度を特定できる回転（Rotate）セクション１６４、及びユーザがアニメーションの水平方向及び垂直方向における拡大縮小の度合いを特定でき、またアスペクト比を固定するか否かを特定できる拡大縮小（Scale）セクション１６６を含む。ダイアログボックス１６０は、ユーザが動画化の際に水平方向及び垂直方向においてスキューを特定できるスキュー（Skew）セクション１６８を更に含む。設定（Setting）セクション１７０では、ユーザがアニメーションを連続的なものとするか否かを定め、その他の移動、回転、拡大縮小、スキューの各々を行うことを可能とする。また、プレビュー（Preview）・ボックス１７２は、アニメーションのプレビューを示すことができる。
【００７３】
当然ながら、アニメーションは一定時間にわたり値が変化するオブジェクトである。プロパティ・アニメーションは、アニメーションをプリミティブ・プロパティと関連付けることによって達成され得る。プロパティ・アニメーションは、テキストの色を変更したり、又は線などのエレメントを点滅させたりするなど、微小なものであってもよい。一方、プロパティ・アニメーションは多角形などの頂点を動画化する場合のようにより複雑であってもよい。当然ながら例外はあるものの、他のアニメーションは、プリミティブの色の追加や変更、サイズ（幅、長さ、ポイントサイズなど）の変更、プリミティブの移動、回転、スキューイング、拡大縮小を含んでもよい。更に別のアニメーションは、プリミティブレベルあるいはビジュアライゼーション全体の一部としてなど、ビジュアライゼーションの任意のレベルで提供されることができる。当然ながら、所望により多数のアニメーションが任意の特定のビジュアライゼーションもしくはビジュアライゼーションの任意の特定のプリミティブに提示されもしくは適用されることができる。また、特定のビジュアライゼーションもしくはビジュアライゼーションのプリミティブと関連付けられた多数のアニメーションが、プロパティ値の変化やマウスイベントなどのユーザが開始した起動イベントに基づいて、同時に、もしくは別々のタイミングで動作してもよい。
【００７４】
図１２は、ユーザがアニメーションのプロパティを定義もしくは変更することでアニメーションを定義することを可能とする、エディタ５０によって作成され得るプロパティ・アニメーション（Property Animation）・ダイアログボックス１８０を示す。ダイアログボックス１８０は、境界（Bounds）定義セクション１８２及びタイムライン（Timeline）定義セクション１８４を含む。境界定義セクション１８２は、アニメーションの境界を設けもしくは定義する。詳細には、「〜から（From）」プロパティがアニメーションの開始値を定義し「〜まで（To）」プロパティがアニメーションの終了値を定義する。タイムライン定義セクション１８４は、アニメーションの持続時間、アニメーションの開始時間及び終了時間を定義する。持続時間（Duration）プロパティはアニメーションが完了するまでの時間の長さを定義し、開始時刻（Begin Time）プロパティはアニメーションの開始時刻に対する時間オフセットを定義し、終了時刻プロパティは開始時刻に対してアニメーションの終了時刻を定義する。速度（Speed）定義セクション１８６では、ユーザはスライドバーなどにより速度、加速、減速を特定できる。速度（Speed）プロパティはアニメーションの速度を定義し、加速（Acceleration）プロパティは時間の増加と共にアニメーションの移動速度を上げ、減速（Deceleration）プロパティは時間の増加と共にアニメーションの移動速度を下げることは明白である。反復（Repeat）定義セクション１８８は、ユーザが、例えば指定回数、指定カウント（Count）、一定時間（Duration）もしくはオフにされるまで連続して反復されるなど、アニメーションの反復方法を定義することを可能とする。
【００７５】
ダイアログボックス１８０を通じてアクセスできる更なるアニメーション・ダイアログボックス１９０は、境界定義セクション１８２を使用する際に、アニメーションの境界として使用される異なる色を特定するために用いてもよい。ユーザがアニメーションのプロパティとして別の非数値を選択することを可能とする同様のダイアログボックスが用いられてもよい。図示されていないが、このダイアログボックスもしくは他のダイアログボックスを用いて他のアニメーションプロパティを選択しもしくは特定してもよい。例えば、オートリバースプロパティは、アニメーションの順方向の進行が完了した後、逆方向の進行を行うか否かを示すブール値を定義するために用いられてもよく、「by」プロパティはアニメーションがその開始値を変更する合計量を定義するために用いられてもよい。相対速度プロパティは、時間が親アニメーション（すなわちビジュアライゼーションの親エレメントと関連付けられたアニメーション）と比較して、アニメーションについて時間が経過する相対速度を定義するために用いられてもよい。例えば値１は、アニメーションが親アニメーションと同一速度で進行することを示し、値２はアニメーションが親アニメーションの２倍の速度で進行することを示してもよい。
【００７６】
図示されてはいないが、アニメーションのスタイル、サイズ、フォント及びテキストの色、もしくはこれらの変更を設定するためにダイアログボックスを用いてもよい。また、エッジもしくは線の形式、又は線の太さ及び色の設定、及びこれらのプロパティの変更を行うためストロークプロパティダイアログボックスを用いてもよい。
【００７７】
グラフィック・ダイアログボックスは、グラフィック・エレメントの他の機能を編集するために用いてもよい。例えば、グラフィック・エレメント・プロパティをグラフィック・エレメントに追加したり、グラフィック・エレメント・プロパティをランタイム環境にバインディングしたりすることを含む、ニュープロセス・グラフィックスを作成するためにグラフィック・ダイアログボックスを用いてもよい。このようなバインディング・ダイアログボックスは、ユーザがバインディングを行うために所望のタグ、変数、名称などの場所を確認するために制御システムもしくは他のランタイム環境内に定義された異なるタグもしくは変数をブラウズすることを可能とするブラウザを提供してもよい。同様に、ビジュアライゼーションの追加、ビジュアルトリガの追加、グラフィック・エレメント又はディスプレイのブラウジング、及びイベントの追加のために他のダイアログボックスを利用してもよい。
【００７８】
従って、当然ながらグラフィカル・エディタ５０はグラフィック・エレメント固有プロパティの定義に対するサポート、グラフィック・エレメントビジュアライゼーションのサポートを提供する。当該サポートは、グラフィック・プリミティブもしくは形状を作成し、操作すること、特に変換アニメーション（回転、変換、拡大縮小及びスキューイング）やプロパティ・アニメーション（長さアニメーション、色アニメーションなど）などのダイナミック挙動を追加すること、及びダイナミック挙動の実行を起動する条件を定義すること、を含む。また、グラフィカル・エディタ５０は、グラフィック・エレメントを順序化してxmlブロブとするためのサポートや、グラフィック・エレメントをカテゴライズしてグラフィック・エレメント・ライブラリを作成するためのサポートなど、データベースにグラフィック・エレメントを格納し、検索するためのサポートを提供する。更に、システムは、ユーザ定義カテゴリ又は設定にグラフィック・エレメントを格納する、このようなグラフィック・エレメントを固定もしくは保護する、グラフィック・エレメントをユーザ定義もしくは他の有用なカテゴリに格納する、グラフィック・エレメントをバージョン化するなども行う。
【００７９】
いずれの場合でも、いったん作成されれば、グラフィック・エレメントはプロセスプラントのランタイム環境内のプロセス変数や他のデータとはバインディングされない形でグラフィック・エレメントデータベースに格納される。この格納されたグラフィック・エレメントは、必ずしも任意のディスプレイに使用されなくてもよく、このエレメントが、現在、ランタイム環境にダウンロードされ、プロセスプラント又はプロセス制御システム中の特定の実際のもしくはシミュレートされた物理的エレメントとバインディングされることができるなどのように利用することができる。バインディングされると、プロセス変数、設定点、流速などの、グラフィック・エレメントの固有プロパティはランタイム環境中のデータ参照と結び付けられバインディングされる。
【００８０】
図１３は、プロセスプラントもしくはプロセスプラント内で使用されるプロセス制御システムにおいてグラフィック・エレメントが実際の物理的構成要素もしくはエレメントと結び付けられもしくはバインディングされる方法を図示する。詳細には、各グラフィック・エレメント１９２は、基本的にエレメントに関するビジュアライゼーションを定義するXAML１９４、及び関連付けられたスクリプト１９６、アニメーション１９８、トリガ２００、アクション２０２及びイベント２０４を含む。グラフィック・エレメント１９２は、ＸＡＭＬ１９４に関連した、利用可能であるかもしくは開放され、ＸＡＭＬ１９４に開示された全てのレファレンスをリストしもしくは含む参照表２０６を含む。参照表２０６は、基本的にグラフィック・エレメントのプロパティ及びパラメータのほか、スクリプト１９６、アニメーション１９８、トリガ２００、アクション２０２及びイベント２０４によって使用される他の任意の変数又はレファレンスから構成され、もしくはこれらを含む。参照表２０６中の変数もしくはエンティティは変数、表、他のプログラムの表エントリ、もしくはプロセス制御システムの他の場所に定義された任意の他の形式もしくは種類のデータを参照しもしくはこれらに結合されていてもよい。
【００８１】
図１３に示すように、決定表２０８は、レファレンスもしくは変数を実際のプロセス制御環境もしくは他のランタイム環境と結び付けるために利用される。一般に、決定表２０８は直接もしくは別名を用いてレファレンスを定義してもよく、グラフィック・エレメント１９２が実際にはランタイム環境の特定のディスプレイに使用されるべく構成されランタイムマシンにダウンロードされる場合には、決定表２０８は当該グラフィック・エレメント１９２のために提示されもしくは作成される。決定表２０８は、ディスプレイ中のグラフィック・エレメント１９２の動作前もしくは動作間に別名及び他のパラメータを決定し、決定したデータコネクションを参照表２０６と結び付け、参照表２０６内の変数とプロセス制御システムもしくは他のランタイム環境中の実際のデータソースとをバインディングする。
【００８２】
ランタイムにおけるプロセス制御システム内の処理電力の浪費を防止するため、処理電力を使用するグラフィック・エレメント及びグラフィック・ディスプレイは、いずれのディスプレイ画面にも表示されておらず、もしくは使用されていない場合は、ランタイム環境とバインディングされた状態で維持される必要はない。代わりに、グラフィック・エレメント１９２が実行されもしくはランタイム環境において画面に表示されている場合にのみ、決定表２０８はグラフィック・エレメント１９２の参照表２０６とバインディングされていてもよい。
【００８３】
各グラフィック・エレメントは参照表２０６及び決定表２０８を利用してプロセス制御システムもしくはランタイム環境と結び付けられるため、また、グラフィック・エレメントがシステムレベルで作成され、ランタイム環境もしくはランタイムマシンにコピーされ、ロードされた後でバインディングが行われるため、グラフィック・エレメント１９２は異なるタイミングで、異なる用途で、異なるデータソースにバインディングされてもよい。また、グラフィック・エレメント１９２は、制御活動、メンテナンス活動、モデル化活動、シミュレーション活動、構成活動などと関連付けられたデータソースなど、図２の異なる機能エリア４２内のデータソースを含む、任意数の異なるソースにより発生されもしくは任意数の異なるソースを介して利用できるデータとバインディングされていてもよい。
【００８４】
例えば、図１４に示すように、ディスプレイ・エレメント１９２は、大幅にタイプが異なるデータソースから発生されもしくは当該データソースから利用可能なデータと結び付けられてもよく、また当該データを表示しもしくは処理すべく利用されてもよい。これらのデータソースは、公知のDeltaV制御システムのような制御プログラムなどの制御環境データソース２１０、公知のOPC接続インタフェースを介して他のシステムとの接続を提供するOPCデータソース２１２、公知のAMSシステムなどのメンテナンスデータソース２１４、公知のオベーション（Ovation）システムなどの高レベルのシステムもしくはビジネスシステム２１６、そして競合制御アプリケーションなどの競合システム２１８を利用するデータソースさえも含んでいてもよい。このように、グラフィック・エレメント１９２は、任意のアプリケーションからのデータが同時に動作することを意図されていない競合システムと関連付けられたアプリケーションを含む広範なタイプのアプリケーションからのデータもしくは広範なタイプのアプリケーションから発生したデータである場合であっても、データを表示し、当該システム内の任意のアプリケーションからのデータを用いてもしくは物理的エレメントのビジュアライゼーションをシステムレベルで表示するために利用できる。従って、グラフィック・エレメント及びグラフィック・エレメントから作成されるグラフィック・ディスプレイはシステムレベルで作成されるため、これらは、異なるタイプのソフトウェアがプラント内の異なるハードウェアもしくはソフトウェア構成要素にアクセスしもしくはその上で実行される場合であっても、プラント内で発生していることのビジュアライゼーションを任意の目的で提供するために使用できる。
【００８５】
グラフィック・エレメントがモジュール方式であることから、公知のもしくは十分サポートされたデバイス記述言語（ＤＤＬ）で書かれたデバイス記述（ＤＤ）からグラフィック・エレメントを自動的もしくは半自動的に作成することが可能である。詳細には、デバイスの製造業者は一般に製造する各デバイスについて、当該デバイスと関連付けられたパラメータ、デバイスとの通信方法、デバイスリミットなどを定義するＤＤをＤＤＬで提供する。その結果、グラフィック・エレメント作成アプリケーションは、デバイスのタイプや当該デバイスと関連付けられた重要なパラメータ、リミットなどを判断すべく、当該デバイスのためのＤＤをＤＤＬで読み、これらのパラメータを当該デバイスのためのグラフィック・エレメントに固有のプロパティもしくはパラメータとして定義することができる。プログラムは、基本形状からなる複合体を当該デバイスのビジュアライゼーションとして選択もしくは定義し、ＤＤからの情報に基づいて、あるいは当該デバイスのＤＤにより定義されるデバイスタイプのデバイスについて格納されたテンプレートに基づいて、当該デバイスの基本的なアクション及びアニメーションを提供するために使用する一以上の一般的なスクリプトを選択してもよい。必要に応じて、この過程において、プログラムは当該デバイスに関する情報の提供、もしくは当該グラフィック・エレメントで使用するアニメーション、ビジュアライゼーション、プリミティブなどについての選択をユーザに求めてもよい。
【００８６】
グラフィック・エレメントをより完全で十分に定義されたものとするため、プログラムはセンサ、バルブ、モータ、タンクなどのタイプの異なるデバイスのために各種一般的なグラフィカル・テンプレートを格納してもよい。プログラムは、当該デバイスのＤＤにより定義されるデバイスタイプに基づいて、使用するテンプレート・グラフィック・エレメントを決定してもよい。必要に応じて、テンプレートはグラフィック・エレメントにおいて使用できる各種選択肢もしくはオプションを提供しもしくは有していてもよく、これらの選択肢はデバイスのＤＤ中の情報に基づいて、あるいはユーザ入力に基づいて決定されてもよい。従って、例えばテンプレートはセンサなどのデバイスの各種サブタイプと関連付けられた各種固有のパラメータを提供してもよい。また、プログラムはＤＤ中の情報に基づいてグラフィック・エレメントのために定義される固有のパラメータを決定してもよい。
【００８７】
基本的な各種スクリプトはテンプレートの一部として提供されてもよく、ビジュアライゼーションのための挙動を提供すべく用いられてもよい。また、グラフィック・エレメントにおいて使用されるスクリプトは、デバイスタイプなどのＤＤに基づいて、あるいは、必要に応じてユーザへの質問に基づいて自動的に選択されてもよい。これらのリミットは、例えば正常すなわち定格動作速度、定義された超過速度又は速度不足状態もしくはリミットなどであってもよい。別の例として、デバイスがセンサである場合、センサの現在の検出値、センサの破損の有無を示すグラフィックなどと関連付けられたグラフィックを提供するためにセンサの高値及び低値を用いてもよい。
【００８８】
このように、デバイスのためのＤＤ中で定義されるようなデバイスタイプ及びデバイスの公知の特徴に基づいて当該グラフィック・エレメントのための一定の基本的なスクリプト、グラフィック・アニメーション、ビジュアライゼーション及び固有のパラメータを定義することによりデバイスがプロセスプラント内に設置されもしくは認識される際に、基本的なグラフィック・エレメントが当該デバイスに関するＤＤから自動的に作成されてもよい。このようにグラフィック・エレメントを自動作成することは、ユーザが新たに追加されたデバイスをグラフィックスに自動的に統合する助けとなり、デバイスに関してグラフィック編集を行う場合、ユーザが実行する作業が少なく、このためデバイスは、当該デバイスのためのＤＤがシステムにロードされると、少なくとも基本的なレベルにおいてグラフィック・ディスプレイ中で自動的にサポートされる。すなわち、ユーザはシステムに当該デバイスのＤＤを提供し、ＤＤからデバイスのためのグラフィック・エレメントを作成するためにプログラムを実行することにより、デバイスのためのＤＤからグラフィック・エレメントを自動的に作成できる。その後、デバイスのためのビジュアライゼーションをモデル化しもしくは提供する一以上のディスプレイにおいて、このグラフィック・エレメントを使用することが可能となり、ユーザは当該デバイスのためのグラフィック・エレメントを手動で作成することなくデバイスをモデル化したり、あるいはデバイスをグラフィック・ディスプレイ中に表示したりすることができる。
【００８９】
上述したように、いったん図３のグラフィック・エレメント７４が多数作成されると、図３のディスプレイ７６のような一以上のディスプレイを作成するためにグラフィカル・エディタ５０を用いてもよい。実際、必要に応じて、ディスプレイ・エディタ５０はユーザもしくは購入者に多数の事前構成グラフィック・エレメントを提供してもよい。事前構成グラフィック・エレメントは異なる産業もしくは異なる機能的用途などのためのビジュアライゼーションなど、当該ディスプレイ・エディタ５０と関連付けられたビジュアライゼーションを有してもよい。次いで、グラフィカル・エディタ５０はユーザがカスタム・エレメントを作成することを可能とし、またグラフィック・ディスプレイ７６を作成もしくは構築することを可能とする。
【００９０】
一般に、ディスプレイ７６を作成するために、ユーザは、グラフィック・エレメント７４のライブラリ及び他の視覚のエレメントから選択し、選択したエレメントを配置してディスプレイを構築する。グラフィック・ディスプレイの完成後、得られたデータ構造又はオブジェクトは、単一の定義付けエンティティとして定義される各種エレメント、固有プロパティ及びビジュアライゼーションの全てを有するディスプレイ・クラス・オブジェクトとして構成データベースなどのデータベースに格納されてもよい。但し、このディスプレイ・クラス・オブジェクトはプロセス変数との結び付きを解かれ、また任意のランタイム・ディスプレイで必ずしも使用されない。必要に応じて、このクラス・オブジェクトは、全てXMLエンティティとして格納され、結び付けられたビジュアライゼーション、スクリプトなどを有するXMLブロブとしてデータベースに格納されてもよい。その後、このクラス・オブジェクトから個々のグラフィック・ディスプレイが作成され、これらの個々のグラフィック・ディスプレイはオペレータ・ワークステーションもしくは他のランタイム環境に割り当てられ、ダウンロードされてもよい。
【００９１】
ディスプレイがダウンロードされる際、ディスプレイ中のグラフィック・エレメント定義はAvalon制御に変換され、編集されてアセンブリをなし、ターゲットマシンすなわちランタイムマシンに配備される。それ自体がAvalonエンティティであるディスプレイは編集された制御アセンブリを参照し、加えてAvalon制御を制御もしくはメンテナンス・ランタイム・アプリケーションなどの後部データソースと接続するデータ・アダプタとして機能するカスタムデータソースが生成される。このように、グラフィック・ディスプレイ（並びに必要に応じて個々のグラフィック・エレメント）はある言語で作成され、別の言語もしくは形式（例えばXMLブロブとして）格納され、第三の言語もしくは形式（例えば実行可能な各種言語のいずれかで書かれたスクリプトに結合されたAvalon制御として）実行されてもよい。
【００９２】
ここで図１５を参照すると、ユーザが一以上のディスプレイを作成できる画面２２０がグラフィカル・エディタ５０によって作成される。一般に、グラフィック・ディスプレイは、プラント内の物理的装置を表す相互に接続されたエレメントで構成され、これらの装置と関連する追加情報を含みもしくは表示してもよい。グラフィック・ディスプレイ中の各グラフィック・エレメントは、プロセス変数、定数もしくは他の外部の値と同じである固有プロパティのセットを含む。また、上述したように各グラフィック・エレメントは例えば色の変更やアニメーションなどの動的挙動を含むいくつかの視覚的表示を含んでいてもよい。更に、グラフィック・ディスプレイは、テキストやボックスなどの静的エレメント、ユーザが何らかの方法でディスプレイと対話することを可能とするユーザ・ダイナモ（Dynamos）、プロセスもしくは他の情報をユーザに表示できる可変ボックスを含んでいてもよい。
【００９３】
グラフィック・エレメントのための図５の編集画面１１２と同様に、図１５の例示的ディスプレイ・エディタ画面２２０は、グラフィック・ディスプレイが構築される主編集キャンバス２２４と、テンプレート・グラフィック・エレメント、プリミティブもしくは他のライブラリ・エレメントを表示し、これらの各種エレメントを選択して主編集キャンバス２２４にドラッグアンドドロップすることができるパレットセクション２２６とを含む。主編集キャンバス２２４は、ユーザがプリミティブもしくは複合体グラフィックの作成・編集のための対話を行うためのダイアグラム・ビューを提供し、特徴を編集・表示するベクトルグラフィックを提供する。エディタ５０では、ユーザは、編集キャンバス２２４に現在表示されているディスプレイフレームの内側もしくは外側の無限の空間のいずれかの場所に、グラフィック・エレメントなどのグラフィック・オブジェクトを配置できる。従って、主編集キャンバス２２４は現在作成されている一部のディスプレイのみを表示し、ユーザがビューをパンすることでディスプレイの他の部分を表示させたり、ビューの拡大レベルを変えるためにズームイン及びズームアウトを行ったり、任意のタイミングにおいてディスプレイ上で作業を行う最も便利な向きとするためにビューを回転させたりしてもよい。但し、当然ながらグラフィック・オブジェクトの全ての描画及び操作は主編集キャンバス２２４上で完結する。描画の際の補助として、ビューのＸ−Ｙ位置をルーラー２２７から読み取り、ツールバー２２８上のドロップダウン・リストに拡大レベルを表示し且つズーム・ポップアップ上のエントリを選択することで変更できるようにしてもよい。
【００９４】
更に、画面２２０は、主編集キャンバス２２４中のエレメントの階層表示もしくはリストを表示する階層セクション２３０、キャンバス２２４において作成されているディスプレイと関連する、あるいはキャンバス２２４中のハイライトされたエレメントと関連するプロパティもしくはパラメータの一覧を表示するプロパティ・セクション２３２、異なるパラメータもしくは特徴がプロセス制御システムもしくは他の任意のランタイム環境中でエレメントとバインディングされる方法を表示しもしくは方法の一覧を示すバインディング・セクション２３４、を含む。更に、画面２２０は、キャンバス２２４で作成中のグラフィック・ディスプレイと関連付けられた各種ビューや層の一覧を示すツールバー２３６を含む。詳細には、任意の特定のディスプレイは、例えばオペレータ・ディスプレイ、メンテナンス・ディスプレイ、シミュレーション・ディスプレイ、モデル化ディスプレイ、エンジニアリング・ディスプレイ、ビジネス・ディスプレイなど、異なる状況において異なる人々によって使用され得る各種層もしくはビューを有していてもよい。図１５の例示的画面２２０において、ツールバー２３６は、一般的な制御オペレータの視界を提供するオペレーション・ビュー（現在主編集キャンバス１０２に示される）、一般的なエンジニアの視界を提供するエンジニアリング／メンテナンス・ビュー、及び、作成中のディスプレイに表示されているプロセスプラントもしくはプロセスプラントの一部をシミュレートするために用いられるシミュレーション・ビューを提供するトレーニング・ビューとして図示された３つのビューもしくはレベルを含む。図１５の主編集キャンバス２２４ではいずれのエレメントも選択されていなため、プロパティ・セクション２３２には作成中のディスプレイの現在の名称、幅や高さ、作成者が提供する記述、名称、背景記述及び作成者がディスプレイについて格納することを望む任意の他の情報、などのディスプレイ特徴が表示されている。同様に、図１５の主編集キャンバス２２４には実際のエレメントが配置されていないため、階層セクション２３０にはディスプレイの名称のみが表示され、バインディング・セクション２３４にはバインディングは表示されていない。
【００９５】
ディスプレイの作成中、ユーザは、パレットセクション２２６中で定義されるエレメントカテゴリのセットのうちの１つを介して当該エレメントにアクセスすることによって、グラフィック／エレメントなどのエレメントを主編集キャンバス２２４上に配置できる。図１５の例では、パレットセクション２２６は主編集キャンバス２２４に配置することが可能で、且つ相互に接続されて完全なディスプレイを形成する、アクチュエータ・エレメント、演算及び制御エレメント、処理エレメント、プロパティ及び測定値、形状、ユーザインタフェース制御及びユーザ定義エレメントなど、異なるエレメントカテゴリを表示している。当然ながら、任意の他の種類及びカテゴリもしくはサブカテゴリの事前定義されたエレメントはパレットビュー２２６により提供されもしくはパレットビュー２２６によりアクセスされてもよい。この例では、アクチュエータはバルブ及び他のアクチュエータ・エレメントを含んでいてもよく、演算及び制御エレメントは、コントローラ表示、ＰＩＤ制御ループや他のタイプの制御ループなどの制御ループ、機能ブロック、制御モジュールなど、任意の制御関連エレメントを含んでいてもよい。処理エレメントは、図１５に示すように、タンク、リアクタ、ミキサもしくは何らかの方法で材料を処理するその他のエレメント、並びに任意の他のタイプのデバイス、ユニットなどを含んでいてもよい。プロパティ及び測定値は、プロセス変数、警報など、ランタイム環境中のプロパティ又は測定値もしくは他のデータを表示すべく設計されたボックス又はディスプレイ・エレメントを含んでいてもよい。形状は、プリミティブもしくは他の事前定義された形状であってもよく、ユーザインタフェース制御は、当該ディスプレイへの入力を行うためにユーザがディスプレイ上で操作できるボタン、スライダ、ノブ、ツールボックスなどの各種ユーザインタフェース制御エレメントを含んでいてもよい。当然ながら、ユーザ定義エレメントは、グラフィック・エレメントからなる他の任意のグラフィック・エレメントもしくはより高レベルのエレメントなどの任意の事前定義されたエレメントも含んでいてもよい。場合によっては、ユーザ定義エレメントは、プロセスユニット、プロセスプラントエリアもしくは他のより高レベルのプロセス・エンティティを含んでいてもよい。上述したように、ユーザ定義エレメントへのアクセスは、エディタ５０を使用しているユーザを識別することで制限されてもよく、また世界中からアクセスできるようにしてもよい。当然ながら、任意の他エレメント、形状なども、組織化された、ユーザが容易にアクセスできる形でパレットビュー２２６の任意の適切な見出しの下に配置することができる。
【００９６】
ユーザが混合タンクなどのエレメントを主編集キャンバス２２４に配置すると、このエレメントは当該エレメントのためのデフォルト・ビジュアライゼーションを使用してキャンバス２２４においてレンダリングされてもよい。この場合、グラフィック階層セクション２３０はエレメントを表示し、図５に示した方法で当該グラフィック・エレメントと関連付けられたビジュアライゼーション、アニメーション、プリミティブなどの、当該エレメントのサブエレメントの階層を提供する。また、グラフィック・エレメントがランタイム環境とバインディングされていてもよいビジュアライゼーションもしくはアニメーションを含むキャンバス２２４に表示される場合、バインディング指示セクション２３４に現在定義されているバインディングが表示される。
【００９７】
必要に応じて、ユーザは任意の所望の方法でグラフィック・エレメントを選択することで、主編集キャンバス２２４もしくはパレットセクション２２６のビジュアライゼーションを選択もしくは変更できる。ユーザはマウスポインタがエレメント上にある状態で右クリックすることでアクセス可能なドロップダウン・リスト又はボックスを使用するか、又は階層セクション２３０内の別のビジュアライゼーションを選択するか、もしくは任意の他の所望の方法で、このビジュアライゼーションの選択機能を実行してもよい。図１６は、主編集キャンバス２２４の一部と画面２２０のパレットセクション２２６を示す。ここでは、垂直タンク（Vertical Tank）エレメント２４０が、パレットセクション２２６から主編集キャンバス２２４に配置されるところが示されている。垂直タンクエレメント２４０は、テンプレート又はパレットセクション２２６に示されるクラス垂直タンクエレメント２４１のコピー又は生成されたインスタンスである。但し、編集キャンバス２２４でディスプレイを作成する際に、垂直タンク２４０のために使用されるビジュアライゼーションとして、マウスポインタがビジュアライゼーション２４０上にあるときにマウスを右クリックすることでアクセスできるサイドバー２４２に示されるビジュアライゼーション１乃至８(Visualizations 1-8)を含む、垂直タンク２４０の更なるビジュアライゼーションが選択されてもよい。パレットセクション２２６に表示されるように、テンプレート・タンクエレメント２４１の可能なビジュアライゼーションを取得しもしくは視認するため、パレットセクション２２６のテンプレート垂直タンクエレメント２４１上で右クリックすることによって、同様のタイプのサイドバー表示２４３を取得してもよい。サイドバー２４２で異なるビジュアライゼーションを選択することにより、キャンバス２２４で使用されるタンクエレメント２４０のビジュアライゼーションが変更される。サイドバー２４３の異なるビジュアライゼーションを選択することにより、テンプレート・タンクエレメント２４１のためのパレットセクション２２６に格納されたデフォルト設定もしくはデフォルト・ビジュアライゼーションが変更される。
【００９８】
ディスプレイ作成にあたりパレットセクション２２６からグラフィック・エレメント及び他のエレメントを選択することにまた、ユーザは、線などの基本的な描画ツール、正方形、矩形、円形、五角形などの形状、テキストなどを取得すべく図１５に示されるツールバー２２８からアイテムを使用もしくは選択することができ、またディスプレイ中に線を描きもしくはテキストを追加するためにこれらの単純な描画ツールもしくはエレメントを使用することができる。更に、ユーザは、ツールバー２２８に示されるツールバーコネクタ・エレメント２４５を使用してキャンバス２２４内のディスプレイにコネクタ・エレメントを追加してもよい。コネクタ・エレメント２４５は、選択されると、例えば、ドロップダウンメニュー、ダイアログボックスなどを用いて、ディスプレイ中で使用されるコネクタのリストをユーザに提供してもよい。コネクタ・エレメントとして、パイプ、コンベヤベルト、電気ライン、流体フローライン、あるいはタンク、ミキサ、ポンプなどの実際のハードウェア・エレメントをバルブ、センサなどの別のハードウェア・エレメントに接続するための他のタイプのコネクタが挙げられる。このようなコネクタ・エレメント、及びバルブ、タンク、ポンプなどの異なる物理的装置の表示間にコネクタ・エレメントを設けることに関しては、特許文献１に詳しい説明がある（当該特許出願を参照によって本願明細書に援用する）。また、コネクタ・エレメントを用いることで、ユーザは作成中の、グラフィック・エレメントのための上述した異なるエレメントについて定義されたコネクタポイントと結合されたディスプレイ内の異なるエレメント間を相互接続することができる。例えば、パイプコネクタはパイプコネクタ・ポイントを有する別のエレメントへの取り付けに用いてもよく、ダクトコネクタはダクトコネクタ・ポイントを設けられたエレメントへの取り付けに用いてもよい。必要に応じて、エディタ５０は、ユーザが、バルブやタンクの接続ポイントにより定義される適切なタイプのコネクタを有するバルブやタンクなどの異なるグラフィック・エレメントを接続することのみを可能とする、接続ルールを実施してもよい。当然ながら、接続エレメントの外観は、接続エレメントを用いて作成されているディスプレイに、よりよい外観及び雰囲気を与えるべく、接続タイプに基づいて異なっていてもよい。
【００９９】
当然ながら、ツールバー２２８は、ベクトル描画ツール、及び典型的な「ファイル（File）」オプション（新規作成、開く、上書き保存、名前を付けて保存、閉じる、終了など）、「編集（Edit）」オプション（元に戻す、繰り返し、切り取り、コピー、貼り付け、削除など）、「検索（Find）」オプションなどの標準的なコマンドもしくは機能を含んでいてもよい。更に、ツールバー２２８は、グラフィック・エレメント固有プロパティを追加するために用いることのできる「プロパティ追加（Add Property）」機能、グラフィック・イベントを追加するために用いることのできる「イベント追加（Add Event）」機能、ユーザがビジュアライゼーションを追加することを可能とする「ビジュアライゼーション追加（Add Visualization）」機能、ダイアログボックスを開いて、作成するトリガについての情報をユーザが入力できるようにする「ビジュアルトリガ追加（Add Visual Trigger）」などのグラフィック関連コマンドを提供するメニュー項目を含んでいてもよい。また、メニューはフォーマット（Format）機能（例えばテキスト、線及び二次元・三次元画像のための「テキスト（Text）」、「線（Line）」及び「フィル（Fill）」プロパティに関連した設定）、及びオブジェクトをグループ化もしくはグループ解除する、前から後にオブジェクトの順序を選択する、垂直方向及び水平方向にオブジェクトを位置合わせするなどの「形状（Shape）」機能を設けてもよい。更に、ツールバー・メニュー２２８は、ユーザがオブジェクトにアニメーションを適用することを可能とする機能を提供してもよい。このようなアニメーションは、スキューイング、回転、もしくは形状の拡大縮小を行い、エレメントの回転もしくはフリップを行うべく、例えばエレメントの幅、色、形状などを動画化することでエレメントのプリミティブに対して、あるいはオブジェクトの一以上のエレメントに対して適用されてもよい。当然ながら、ユーザは、ディスプレイ内の各エレメントと関連するアニメーション及びアクションにアクセスすることができ、適切なダイアログボックスもしくは他のプログラミングツールを用いてこれらのアニメーション及びアクションを変更できる。
【０１００】
当然ながら、ユーザもしくは設計者はディスプレイ・エディタ５０を使用できる。詳細には、測定値、アクチュエータ及びプロセス機器を動的に示すことができる標準的な二次元もしくは三次元グラフィック・エレメントからなるグラフィック・ディスプレイを迅速且つ容易に作成するために図１５の画面２２０とのインタフェース接続を行うことができる。また、制御及び演算と関連付けられた静的エレメント及びユーザ・ダイナモはディスプレイ中でサポートされ、提供されてもよい。更に、ユーザは、グラフィック・ディスプレイを異なるユーザが利用する場合のインタフェースに関する要求に対処するため、例えば、表示もしくは周辺情報がわずかに異なる同一のエレメントを用いてオペレータ・ディスプレイ、メンテナンス・ディスプレイ、シミュレーション・ディスプレイを作成することにより、層を定義してもよい。
【０１０１】
図１７は、グラフィカル・エディタ５０を使用して作成できる制御オペレータ・ディスプレイの形をとる、例示的ディスプレイのディスプレイ画面３００を示す。ディスプレイ画面３００は、ここでは流体フローラインであるコネクタ・エレメント３１６によってバルブエレメント３１２、及びポンプエレメント３１４と接続されたリアクタ・エレメント３１０を含む。流体フローもしくはストリームエレメント３１８は、画面３００に表示されたプラントのセクションに出入りする材料のストリームを参照することを可能とする。当然ながら、ディスプレイ画面３００中のグラフィックは個々のグラフィック・エレメントに関して上述した方法で開発された高決定グラフィック、アニメーション、アクション、ビジュアルトリガなどを含んでいてもよい。当然ながら、アニメーション、アクション、ビジュアルトリガ、流体フローエレメントなどを含む追加のグラフィックは、ディスプレイ・レベルで追加されてもよい。このように、アニメーション及びユーザアクションは、ディスプレイに組み込まれてもよい。例えば、この機能を利用して、モータがオンであるかトリップ（trip）されているか、バルブの動作状態や位置などのプロセス機器の状態を示すようプロセス機器の静的グラフィック構成要素を変更してもよい。更に、（例えば充填技術を用いて）充填されているタンクのレベルを示したり、動作を表示するディスプレイ変更（アニメーション）を通じてアジテータの状態を示したりするなど、装置に関連する動的データを示すためにアニメーションを利用してもよい。同様に、ディスプレイ３００の外部で作成され、且つディスプレイ３００の構成要素の動作に関連するプロセス・データもしくは他のデータを表示すべく画面３００に配置されてもよい。
【０１０２】
所望により、ディスプレイ３００は更に、ユーザがディスプレイ画面３００との対話を通じてランタイム環境に関する追加的情報を視認したりアクションを起こしたりすることを可能とする方法でユーザが画面３００とインタフェースで接続されることを可能とするダイナモあるいはユーザインタフェース・ボタン３２０A及び３２０Bを含んでいてもよい。場合によっては、これらの対話は、グラフィック・エレメントに関して上述したようにビジュアルトリガ又はアクションにより実施されてもよい。例えば、ボタン３２０Aは、冷却塔（Cooling Tower）の構造に関する情報の更なる表示をユーザに提供し、ボタン３２０Bはリアクタ３１０用のフェイスプレート・ディスプレイを提供してもよい。従って、ディスプレイ３００は、場合により過去においては例えばIn-Tools、Auto-Cad、及びVisioなどのWindowsメタファイル、ベクトル描画、JPEG及びビットマップ画像フォーマットを含む多数の異なるソースからインポートされたグラフィックに基づいていた三次元構成要素を用いてプロセスもしくはプロセスの一部を構成する設備の部品を表示するエレメントのセットを含むが、現在、画面３００は例えば回転、定寸、拡大縮小、スキューイング、色の変更などをエレメントレベルで実行するアニメーションを含んでいてもよい。これにより、より興味を起こさせ、現実的なアニメーションを提供し、従ってよりわかりやすいディスプレイを提供する。
【０１０３】
更に、ノブ、ダイヤル、スライドバー及びボタンなどの基本的なユーザインタフェース構成要素は、ディスプレイ３００に示されてもよく、また制御システムもしくは他のランタイム環境中の情報もしくは制御と動的にリンクされていてもよい。また、データ・ビューエレメント又はダイナモは、制御機能、警報、イベントなどの測定値と関連付けられたキーパラメータを提供しもしくは図示してもよい。例えば、ダイナモは、制御ループパラメータに関連した情報を有する更なる画面を表示するために用いられてもよく、エンジニアリングユニットがダイナモにより表示される値のコンテキストを提供すべくダイナモの隣に表示されてもよい。制御ループと関連付けられたプロセス警報の状態は、制御パラメータ値の背景色の変更などの色の変更を通じてダイナモに反映されてもよい。また、ディスプレイのクラッタを除去するため、ループが設計された通常の動作モードでないという事実が色の変更を通じて表示されてもよい。当然ながら、このようなダイナモは、任意の標準に合致すべく実行されてもよい。
【０１０４】
ある例では、オペレータがユーザ・インタラクティブな構成要素又はダイナモにアクセスすると、スクリプトもしくは他のプログラムはフェイスプレート・ディスプレイもしくは制御パネルディスプレイなどの更なる画面又はディスプレイを引き出してもよい。その一例を図１８に示す。例えば、ユーザが画面３００に示されるボタン３２０Bなどのユーザインタフェース・ボタンにアクセスすると、リアクタ３１０用のフェイスプレートがオペレータに表示され、オペレータはリアクタ３１０に関する詳細を変更したり視認したりするためにこのフェイスプレートを使用してもよい。図１８の例では、フェイスプレート情報３５０は、ユーザが画面３００のボタン３２０Aを通じてアクセスすることができるリアクタ３１０のための制御ループ（FIG２#28／TC２-1と称する）と関連付けられている。フェイスプレート３５０の部分３５０Aを用いると、ユーザはボタン３５２（ボタン３５２の動作はアクションルーチンにより定義される）を使用してモード（カスケードから例えばマニュアルもしくはオートに）を変更したり、スライダ・ディスプレイ３５４上の動作パラメータの現在値を視認したり、矢印３５５を用いて制御ループと関連付けられた設定点を変更したりすることができる。また、ユーザはリミット及び表示セクション３５０Bの制御ループのチューニング・パラメータに関する情報を得ることができ、セクション３５６のシミュレーション機能を利用可能とすることができる。所望により、セクション３５０Aのボタン３５８を選択することで、セクション３５０Aのビューからセクション３５０Bを得ることもできる。同様に、ユーザは、傾向データや診断データなどの制御ループに関する更なる情報にアクセスでき、あるいは他のボタン３５８を介してループ・チューニング・プログラムなどの診断プログラムにアクセスし、これを実行してもよい。このように、ディスプレイ３００上でユーザの実行したアクションや許可されたアクションに応答して、ディスプレイ３００を介して任意の他の活動、画面及びアクションにアクセスできる。
【０１０５】
制御システムが装置の類似した部品の定義における別名の使用をサポートする場合、動的ディスプレイ構成要素はディスプレイ画面３００において選択される装置の部品に基づいて動的参照をサポートすべく設計されていてもよい。この場合、表示オブジェクトの一部として一般に定義されるオブジェクトタグ又はグラフィカル属性の代わりに事前構成された別名及び属性を用いてもよい。類似する表示オブジェクトは異なるI／O位置に接続され、異なるグラフィカル属性、外観及びセキュリティを表示してもよいことから、この別名機能は高度な柔軟性及びリユーザビリティをサポートする。こうした機能によりプラント内の重複設備の異なる部品について類似のディスプレイ・オブジェクトや類似のディスプレイを作成し直す必要がなくなる。このように、プラント内の同一構成、同一用途の異なるハードウェア・ユニットに対して同一のグラフィック・ディスプレイを利用することができる。
【０１０６】
当然ながら図１７のディスプレイ画面３００はツールバーをサポートすべく設計されていてもよい。ツールバーは、画面３００上部に表示されるツールバーのほか、あるいは画面３００上部に表示されるツールバーを設けず、水平（ディスプレイ下部）及び垂直（ディスプレイ右側）のツールバーとしてもよい。所望により、日時表示、警報の認知や警報の停止に必要な警報ディスプレイへ直接アクセスできる警報リストの表示、警報サマリーディスプレイもしくはメニュー、メインメニューもしくは他の標準的なメニューもしくはディスプレイ、状態ディスプレイなどへのナビゲーションなどをサポートするデフォルト・ツールバーを設けてもよい。
【０１０７】
図１９はより高度なディスプレイ、すなわちより多くのエレメント、接続、ユーザインタフェース・アクション、ダイナモ及び他のデータ参照と関連付けられたディスプレイ画面４００を示す。詳細には、画面４００は、空気及び他の燃焼燃料製品がポンピングされ、もしくはポンプ４１２、バルブ４０４及び窯バレル乾燥機４０８の入力４０６に対するコネクタ・エレメントに供給される、石灰窯装置の動作を示す。同様に、タンク４０９内のプロセス物質は、バレル乾燥機４０８を介して石灰を輸送するシートコンベヤ装置４１０から供給される。当然ながら、画面４００に表示されたこれらの各エレメント及び他の装置は、個々に作成され、上述したように画面４００中に配置され得るグラフィック・エレメントであってもよい。バレル乾燥機４０８の入力４０６は、画面４００を見る人に対し窯装置の運転を明確に示すため、乾燥機４０８の運転中に火もしくは炎４１５を表す動画化されたグラフィック・エレメントを含んでいてもよい。更に、乾燥機４０８の様々な箇所における温度をダイナモ又は温度表示ボックス４１６で表示し、必要に応じてこれらの様々な箇所における温度は、火を表すアニメーションの色、乾燥機４０８又は他の任意の方法を介して表示されてもよい。同様に、フード圧、窯速度、全空気量、メタノール、入力、一次空気入力、二次空気入力、オイル入力及びガス入力などの他のプロセス・パラメータは、図１９に示すようなパラメータ・ボックスで示されてもよい。ボックス内の変数の値はプロセス制御システム内の特定の参照と結び付けられ、もしくは特定の参照から取得される。当然ながら画面４００には石灰窯装置の他の物理的構成要素も示されている。
【０１０８】
しかし、制御システムもしくは制御システム中のデバイスからのデータを処理する他のアプリケーションなど、ランタイム環境内の他のデータソースから取得できる他の様々な情報が画面４００に表示されてもよい。このようなアプリケーションとして制御アプリケーション、メンテナンス・アプリケーション、診断アプリケーション、ビジネスアプリケーションなどが挙げられる。例えば、ディスプレイ画面４００の上部中央部に、システム温度（℃）対時間を示す傾向グラフ４２０が表示され、データ履歴作成アプリケーションもしくは傾向アプリケーションと結合されて自動的にこのデータをプロットする。同様に、画面４００の左側上部に、窯の利益、エネルギー使用量、生産率などのビジネス上の側面をトラックするビジネスアプリケーションにより提供されてもよい窯４１２の動作概要を提供するチャート４２２を表示してもよい。更に、ディスプレイ画面４００上部のユーザインタフェース・ボタン４２４を選択することにより、過去の傾向、ヘルプ情報、窯の情報、制御上の制約、窯エネルギー及び他の情報など、ユーザにとって有用なその他の情報にアクセスできるようにしてもよい。また、警報バナー４３０もしくは他のバナーを画面４００下部に表示し、警報アプリケーションと結合してもよい。当然ながら、ディスプレイ画面４００のこれらのエレメント及び機能は全て、上述したディスプレイ・エディタ５０の特徴を用いてディスプレイ上に表示されプログラムされてもよい。更にこれら及び他の機能は任意の所望の方法にてグラフィック・ディスプレイに結合されてもよい。また、より有用でわかりやすい視覚的情報をユーザに表示し、関連する情報をユーザが画面４００からより直接的に視認することができるよう、画面４００に任意の所望のアニメーション及びグラフィック・アクションを表示してもよい。
【０１０９】
このように、図１９に示すように、コントローラ・サブシステムによりアクセスされるプロセス・エレメント、メンテナンス・アプリケーション、制御アプリケーション、診断アプリケーション、チューニング・アプリケーション及びビジネスアプリケーションの形態のアプリケーション、データ履歴作成アプリケーションなどのデータベースもしくは任意の他のデータソースからの過去のデータもしくは傾向データ、などの各種異なるデータソースからの情報を画面４００に表示してもよい。また、ユーザがディスプレイにリンクを設けることで、画面４００から他の情報もしくはディスプレイに直接アクセスしてもよい。このように、画面４００により示されるディスプレイは、より多くの情報をより有用な方法でユーザに提供する。
【０１１０】
共通セットのグラフィック・エレメント、接続エレメントなどを用いて任意のグラフィック・ディスプレイを作成するためにエディタ５０を利用できることから、ディスプレイ・エディタ５０は類似のもしくは関連するディスプレイを容易に作成するために利用できる。このようなディスプレイは、同一セットのプラントハードウェアと関連付けられもしくは同一セットのプラントハードウェアを表示できるが、制御オペレータ用、シミュレーション用、メンテナンス用など異なる用途のためには当該ハードウェアに関する異なる情報を表示してもよい。この場合、プラントもしくはプラントの一セクションと関連付けられたハードウェア・エレメントを表示するための共通ディスプレイもしくはベース・ディスプレイを作成し、このベース・ディスプレイを用いて、別の用途もしくは別のユーザタイプについては別の情報を用いて別のディスプレイを作成してもよい。
【０１１１】
図２０A乃至２０Eは、石灰窯装置について作成された、同一構成の同一の基本的ハードウェア・エレメントを表示し、同一のビジュアライゼーションを利用しているが、異なる機能的用途のために異なる情報を追加したディスプレイを例示している。当該ディスプレイは、オペレータ・ビュー、エンジニアビュー、マネージャビュー、シミュレーション・ビュー及びメンテナンス・ビューを含む。上記のように、図２０A乃至２０Eの各ディスプレイは同一の基本的グラフィック・エレメントを使用する同一のディスプレイ・エディタにより作成されたため、外観及び雰囲気が同じであり、表示された情報についての理解と、それがプラント内のハードウェアとどのように関連しているかについての理解が維持されている間はナビゲートが容易である。
【０１１２】
詳細には、図２０Aは、石灰、及び窯乾燥機５０８のコールド端５０６にポンプ５０４により原料を供給する泥（mud）供給源５０２（ストリームエレメントであってもよい）を有する窯装置のオペレータ・ビュー５００を示す。コンベヤ５１０は窯乾燥機５０８の高温端５１２から被処理石灰を除去し、石灰をタンク５１４に入れる。製造ラインもしくはストリームエレメント５１６は、タンク５１４から供給された製品（石灰）の量を示す。同様に、燃料源ストリームインジケータ５２０からの燃料はバルブ５２２を介して窯乾燥機５０８の高温端５１２に供給される。インジケータの色によりバルブの動作を視覚的に表示してもよい。送風機５２４は、空気をポンピングし、ダクトコネクタ・エレメント５２６を介して窯乾燥機５０８の高温端５１２に送り、ここで空気が燃料と混合される。窯乾燥機５０８の動作状態を示すため、窯乾燥機５０８の高温端において火又は炎５２８などのアニメーションを表示してもよい。同様に、誘導ファン５３０は追加の配管５３２を介して窯乾燥機５０８のコールド端５０６から空気を引き出し、スタック・ストリームエレメント５３４により示されるようにこの空気をスタックに送信する。更に、例えばシステムの様々な部品の温度、窯乾燥機５０８のバレル速度、空気及び燃料の流量などの様々なプロセス・パラメータの値を示す各種変数又はパラメータ・ボックスが表示される。このハードウェア及びこれらの変数ボックスは、図２０A乃至２０Eの画面全体を通じて共通であり、これらのディスプレイの外観及び雰囲気を同一とする基本エレメントを提供する。
【０１１３】
但し、図２０A乃至２０Eの各画面は、プラント中で異なる機能に応じて設けられる追加情報、ユーザインタフェース・ボタン及びアクションを含む。例えば、図２０Aの画面５００はオペレータ・ビューであり、ボックス５４０に実験室試験で測定・推定・提供された残留炭酸塩量、ボックス５４２に窯の総エネルギー及び比エネルギーを示し、傾向グラフ５４４に最適動作を達成するための重要な要素であるモデル予測制御ルーチンによって提供される温度の過去の傾向及び将来の傾向を示す。更に、画面５００は、ユーザが制御ループ情報、エレメントの更なる動作情報など、関連する項目に関する追加情報を視認できる各種ユーザインタフェース・ボタンもしくはダイナモ５４８を提供する。
【０１１４】
図２０Bの画面５５０は、図２０Aのビューときわめて類似しているエンジニアリング・ビューを示す。エンジニアリング・ビュー５５０は、制御において重要な測定位置や、基本制御システムとモデル予測制御システムが動作を最適化すべく協働する方法を示す信号パスを点線５５２で表している。図２０Cの画面５６０は、窯装置の基本動作を示すものの、システムの個々の構成要素もしくは制御ループに関する追加情報を提供するユーザインタフェース・ボタンを設けていないマネジメント・ビューを提供する。また、マネジメント・ビュー５６０は、前日もしくは前月の実験室測定値から総エネルギー、比エネルギー及び残留炭酸塩量（未変換供給）を示すチャート５６２を含む。この情報は、例えばビジネス・コンピュータ上で実行されるビジネスアプリケーションから提供されてもよい。
【０１１５】
また、図２０Dは、シミュレートする人がシミュレーションされたシステム内でパラメータを変更したり、シミュレーション結果を視認したりすることができるシミュレーション・ビュー５７０を提供する。シミュレーション・ビュー５７０は、例えばオペレータ訓練や、動作の異なる将来のモードのテストのために利用できる。図２０Dに示すように、シミュレートする人は、画面５７０の一以上のユーザインタフェース・ボタンによりシミュレーションオペレータに提供される一以上のダイアログボックス５７０を介してパラメータを変更できる。プロセスのシミュレーション・ビュー５７０は訓練の際はオフライン状態とし、将来の課題を検出する際に有用となり得る追加情報を提供する際はオンライン状態としてもよい。装置のタイプや装置の接続は、オペレータグラフィックスの作成においてシミュレーション機能を有すスマートオブジェクト又はグラフィック・エレメントを使用した結果としてわかるため、プロセスシミュレーションはグラフィックスから作成できる。これらのスマートオブジェクトについては特許文献１に詳しい記載がある。
【０１１６】
同様に、図２０Eは、窯装置内の装置の状態に関する情報、及び窯装置内の装置の状態への情報を提供するメンテナンス・ビュー５８０を示す。ビュー５８０では、装置の故障は装置が正常である状態を示す表示５８２及び５８４で示されてもよい。この場合、表示５８２及び５８４（図２０Eではこの全てをラベリングしてはいない）は半円形であり、色を付けることで現在監視している装置の状態を表示しもしくは特定する。ビュー５８０において、表示５８４は最適な状態ではない装置を示す。当然ながら、これらの表示５８２及び５８４は、メンテナンス・アプリケーションもしくは診断アプリケーションから提供されてもよい。また、当然ながら、プロセスの問題が検出されると、メンテナンス技術者は画面５８０を利用して問題を掘り下げ、問題解決のための推奨手順を見出すことができる。例えば、目の詰まった泥フィルタを洗う必要があるとする。そのためには供給を停止し、窯をアイドルモードとする。これらの動作はビュー２０Aのオペレータ・ビュー５００から実行されてもよい。また、動作は上流側のプロセス問題から生じ得る過剰な砂に関する供給品質をチェックすることを認識する。よって、この一例で示すように、問題の検出及び解決などのような異なる機能間の様々な対話は、同じ外観及び雰囲気を有し、ナビゲートが楽な異なるビュー間で切り替えることで単純かつ容易に行うことができる。当然ながら、図２０A乃至２０Eの各種画面の情報はディスプレイ上で階層化されてもよく、あるいは必要に応じて、画面のユーザに基づいてのみ表示されてもよい。また、各エレメントもしくはスマートオブジェクトについて表示される情報は、ユーザもしくはユーザを識別することにより変更されてもよい。
【０１１７】
更に、図２０A乃至２０Eのディスプレイに対し追加のディスプレイが提供されたり関連付けられたりしてもよい。追加のディスプレイは、例えば、図２１A及び２１Bに示すような制御構成ディスプレイをであってもよい。図２１Aの制御ディスプレイ５８５は、各種制御信号が図２０A乃至２０Eに示される窯装置の各種ハードウェア・エレメントに送られ、あるいはこれらのハードウェア・エレメントからコントローラに送られる方法を表示する。また、これらの制御エレメントと関連付けられたタグもしくは可変名称も表示される。２１Bの制御ディスプレイ５９０は、図２０A乃至２０Eの窯装置の制御を実施する制御ルーチンを示す、制御モジュールを表示する。特には示されていないが、図２１Aの制御表示５８５は画面２０A乃至２０Eの同一エレメントを使用して（これらのエレメントと関連付けられた同一もしくは異なるビジュアライゼーションにより）作成されてもよいし、別のエレメントを使用して作成されてもよい。同様に、図２１A及び２１Bのディスプレイ５８５及び５９０はディスプレイ・エディタ５０を使用して作成されてもよいことから、これらのディスプレイは上述したグラフィック機能もしくはアニメーション機能を備えていてもよい。また、制御ディスプレイ５８５及び５９０は、例えば図２０Aのオペレータ・ビュー５００を介して、オペレータ・ビュー５００上のユーザインタフェース・ボタン５４８を通じてアクセスされてもよい。これによりオペレータはオペレータ・ビュー５００から現在の制御設定に容易にアクセスできる。
【０１１８】
このように、上記説明よりわかるように、関連付けられた各種ディスプレイがエディタ５０により作成でき、これらのディスプレイは多くの方法で階層化され得る。すなわち、ディスプレイは関連するビュー、すなわちオペレータ・ビュー、ビジネス・ビュー、シミュレーション・ビュー、メンテナンス・ビュー及びエンジニアリング・ビューを提供すべく上述のごとく階層化されてもよい。これらのビューは相互に容易にアクセスできる。更に、プラントの特定の階層的構造、論理的構造もしくは物理的構造を反映した方法にて異なるディスプレイを階層化しあるいは結び付けてもよい。従って、ディスプレイはプラントの異なる物理的エリアもしくは地理的エリアに作成されてもよい。よって、プラントの主要エリアを表示する１つのディスプレイを作成し、プラントの各エリアにおける例えば装置ベースの基本構造を示す追加的ディスプレイを作成してもよい。また、各装置について更に別のディスプレイを作成してもよい。いわばユーザはプラントのより小さいセクションと関連付けられた更なる詳細をディスプレイを通じて掘り下げることができる。別の例として、プラントの異なるセクションもしくは部分に関するディスプレイをユーザインタフェース・ボタンと結び付けることができ、これによりオペレータはプラントの物理的に結び付けられた別々のセクションもしくはプラント構成要素を論理的に視認すべく、異なるディスプレイを容易に前後にスクロールすることができる。
【０１１９】
このタイプの階層化は、図２２の図によって更に詳細に説明される。すなわち、一般的もしくは全体的なプラント概要ディスプレイ６００は、プラント全体の基本レベル構造もしくは高レベル構造を表示するディスプレイを提供してもよい。但し、プラント概要ディスプレイ６００はプラントの任意の特定のセクションもしくは部分に関する更なる詳細は提供しない。ユーザはプラントのエリアAに関する一以上のディスプレイ６０２又はプラントのエリアBに関する一以上のディスプレイ６０４を引き出すべく、プラントの任意の特定のセクションもしくはプラントのエリアを選択し（ユーザインタフェース・ボタンを使用する）あるいは当該エリアまで掘り下げることが可能である。図２２に示すように、エリアAはエリアAに関連付けられたｎ個の別々のディスプレイを有していてもよい。これらのディスプレイは全て、プラントの当該エリアを通じたプロセスフローあるいはプラントのエリアAと関連付けられた何らかの別の論理的構造を反映すべく、論理的に相互に順次接続されている、６０２a、６０２b、...６０２nとラベリングされたエリアAのｎ個のディスプレイには、ユーザがあるディスプレイから次のディスプレイへスクロールを行うことができる方法でページごとに前後に進むタイプのアクションによりアクセスすることができる。このように、ユーザは、オペレータにとっても意味をなす方法で、ディスプレイを介してエリアAのあるセクションからエリアAの他のセクションに容易にスクロールすることができる。また、図２１に示すように、オペレータは、ディスプレイ６０２a乃至６０２nのうち別々のディスプレイから事前定義された情報又は他のディスプレイ情報を得ることができる。従って、オペレータは、エリアAのディスプレイを見ているとき、ディスプレイ６０２a中のキーパラメータの事前定義された傾向を表示する更なるディスプレイ６１０を見ることもできる。同様に、ディスプレイ６０２bを見ているとき、オペレータはスタートアップ及びシャットダウン手順に関する情報を有するドキュメント６１２のリストにアクセスしてもよい。当然ながら、ユーザは、ディスプレイ６０２a、６０２b、その他の間で前後にスクロールすることができる。
【０１２０】
同様に、ｍ個のディスプレイ６０４a乃至６０４ｍを含んで示されるエリアBを見ているとき、ユーザはディスプレイ内の前進もしくは後退（次もしくは前）ボタンを用いて詳細度のレベルが等しいディスプレイ間をスクロールできる。これによりオペレータもしくは他のユーザは、当該プロセスの表示されたセクションの上流もしくは下流の情報を含むディスプレイにアクセスすることができる。更に、現在のディスプレイ内のエレメントと関連付けられた他の情報を取得するため、別のディスプレイにアクセスすることができるダイナモ又は他のユーザインタフェース・ボタンが提供されてもよい。これらのツールを用いると、ディスプレイ階層を作成することができる。ディスプレイ階層から、概要ディスプレイを用いて各プロセスエリアのキーディスプレイにアクセスできる。
【０１２１】
また、図２０A乃至２０Eに示すように、ディスプレイはプラントの同一セクションもしくは部分に関して存在し、例えばオペレータアクション、メンテナンスアクション、シミュレーション・アクション、ビジネスアクション、エンジニアリング・アクションなどの異なる機能的目的のために使用される多数のディスプレイを階層化してもよい。これらの別々の機能的ディスプレイは、図２２ではディスプレイ６０２a、６０２bなどの下で階層化表示されており、所望により相互にアクセスできる。従って、オペレータもしくはユーザがビュー６０２aを見ているとき、ユーザはメンテナンス・ビュー、シミュレーション・ビュー、ビジネス・ビューなど、プラントの当該セクションに関する他の機能的ディスプレイとの間でビューを切り換えたり、他の機能的ディスプレイにアクセスしたりすることができる。当然ながら、同一の基本的ディスプレイ・エレメントを用いてメンテナンス・ビュー、オペレータ・ビュー、シミュレーション・ビューなどをこのように階層化することで、これらのビュー間での切り換えが容易となり、プラント内の異なる機能に対して、プラント内で起こっていることをよりよく理解できるようになる。
【０１２２】
この別の機能を実施するにあたり、グラフィック・ディスプレイは当該グラフィック・ディスプレイに関して意図された役割（もしくは機能）の表示を含んで作成されてもよい。このような役割として、例えばフェイスプレート・ディスプレイ、詳細ディスプレイ、一次制御ディスプレイ、概略ディスプレイ、メンテナンス・ディスプレイ、ビジネス・ディスプレイ、シミュレーション・ディスプレイあるいは任意のユーザ定義による役割が挙げられる。この役割はディスプレイの一部であり、グラフィック・ディスプレイがランタイム間に当該ディスプレイの用途及び当該ディスプレイへのアクセスを定義するため制御モジュールもしくはハードウェア・デバイスに割り当てられる際に使用されてもよい。グラフィック・ディスプレイに割り当てられた役割の表示は、あるディスプレイが構成システムもしくはプラントのどのセクションに割り当てられるかを表示するために使用されてもよい。また、この役割情報は、特定のユーザがどのディスプレイにアクセスするかをそのユーザが実行するジョブに基づいて決定するために使用されてもよい。例えば、制御オペレータは、シミュレーション・ディスプレイもしくはビジネス・ディスプレイとして定義されるグラフィック・ディスプレイを見たりアクセスしたりする可能性が少ない。
【０１２３】
上述のグラフィック・ディスプレイ機能は、重要な装置の状態を容易に監視できるよう、特別なディスプレイを作成するために用いることもできる。このようなディスプレイ例として、装置のシャットダウン、振動監視、バーナ管理、煤煙換気装置の動作、及び安全システム状態に関するファーストアウト表示が挙げられる。当然ながら、関連付けられたディスプレイは情報を要約すべく作成されてもよい。例えば煤煙換気装置などの作動中の装置がアニメーションを含む場合、アニメーションは事実上オペレータが当該システムの動作に迅速にアクセスするか動作を迅速に理解することを可能とすべく用いられてもよい。更に、大部分の制御システムの演算機能は作業コストや作業効率などの計算をオンラインで行うために利用することができる。このような情報はオペレータのグラフィック・ディスプレイに容易に組み込むことができ、オペレータはこの情報を用いてプロセス動作を改善することができる。また、様々な技術を用いてサブシステム情報を制御システムに統合してもよい。これにより、より高いレベルのディスプレイからサブシステム情報へのアクセスを可能とすべく標準的なグラフィックス及びダイナモを用いてオペレータ・ディスプレイを作成することができる。場合によっては、情報（例えば、シートゲージング情報）を表示するためにマトリクス値の３Dプロッティングを行ってもよい。
【０１２４】
また、グラフィック・エレメント及びディスプレイは、柔軟性及び速度を提供すべくMicrosoft社のAvalon制御などのベクトルグラフィックスを用いて実行されると有利である。ベクトルグラフィックスを使用すると、作成中のディスプレイを拡大・縮小したり、特定のディスプレイマシンに合わせてサイズを変更したり、拡大縮小を用いるアニメーションを提供したりすることを可能とする拡大縮小が可能なグラフィックスが利用できる。
【０１２５】
一般に、また「各プロセス・グラフィック・ディスプレイとそこに含まれるグラフィック・ディスプレイ・エレメントの作成（The Creation of Each Process Graphic Display, and Graphic Display Element Contained Therein）」と題された本願の同時係属出願
に詳細な記載があるように、第一の宣言的フォーマットで説明される各テキスト記述に記録される。各記載のスクリプトコマンドは、レンダリングされるグラフィックスは複雑となるが、ディスプレイを定義するための効率的・非メモリ集約的機構を提供する。宣言的フォーマットならびにスクリプトコマンドは、多くの異なるマークアップ言語の任意の一つに基づいていてもよい。より詳しくは、XMLに基づくマークアップ言語は、各ディスプレイ及びディスプレイ・エレメントについてレンダリング定義（XMLブロブとも呼ばれる）を説明する際に利用できる。これらのディスプレイ及びエレメントがプロセスランタイム環境にダウンロードされる前に構成ライブラリもしくはデータベースに格納される際にXMLブロブが利用されてもよい。アニメーションなどの高度なグラフィックスをサポートするため、ベクトルグラフィックス方式に従ってマークアップ言語を用いてこのようなグラフィックスを定義してもよい。
【０１２６】
上記のように、また「プロセスプラント・ユーザインタフェースにおけるマークアップ言語ベースの動的プロセス・グラフィックス（Markup Language-Based, Dynamic ProcessGraphics in a Process Plant User Interface）」と題された本願の同時係属出願（当該出願を参照によって本願明細書に援用する）に詳細な記載があるように、プロセス・グラフィックスの動的性質は、オンラインもしくはシミュレーション条件の変更に伴ってプロセスプラント・パラメータの現在の値を反映すべく設計される。この目的のため、プロセス・グラフィックスはこのような変更を反映しているデータのデータソースとリンクされていてもよい。従って、XMLベースの各記載は、一般に当該データに応じて変更される各動的グラフィック・パラメータ（例えば、タンク内部の色の変更）についてデータソース位置を識別する一以上のデータソース参照を含んでいてもよい。また、データソース位置は、エディタを介した構成の間、後で特定されるべく開いたままとされてもよい。これによりスクリプトは後で特定されるデータソースもしくは経路情報を参照するための別名もしくはプレースホルダを識別する。プロセス・グラフィック・ディスプレイ（例えばイベント処理などの挙動）のデータソース情報及び他の特徴がXMLベースの記載により特定されるため、XMLベースの言語はPGXMLすなわちプロセス・グラフィックスXMLと呼ぶことができる。
【０１２７】
プロセス・グラフィック・ディスプレイ及びその構成エレメントを定義するための構成及び設計作業が完了すると、構成エンジニアもしくは他のユーザは、プロセス・グラフィックスをオペレータ・ワークステーションもしくは他のユーザディスプレイデバイスにダウンロードするための準備としてPGXML記述を選択・処理してもよい。一般に、グラフィック・ディスプレイ及びディスプレイ・エレメントの各PGXML記述は、（i）使用されるグラフィックス・レンダリングエンジンを有するベクトルグラフィック形式と互換性のあるスクリプト、（ii）ディスプレイのデータソース参照及び他の任意の非グラフィックス機能（例えば挙動）を特定する指示を有するコード、を生成すべく処理される。スクリプトのベクトルグラフィック形式は、宣言的もしくはXMLベースの言語であってもよい。Microsoft社のAvalonユーザインタフェース・アーキテクチャを利用する実施形態では、ベクトルグラフィック・スクリプトは、Microsoft社のXAMLで記述されてもよい。他の実施形態はオープンソースフォーマット、SVG（拡大縮小自在のベクトルグラフィック）を利用してもよい。コードはC#もしくは他の任意の適切なプログラム言語で記述されてもよい。
【０１２８】
ある実施形態では、次いでベクトルグラフィック・スクリプト及び関連するコードが結び付けられ、オペレータ・ワークステーションもしくは他のユーザディスプレイデバイスに関して実行可能コマンドを記載したファイルにコンパイルされる。この目的では、各プロセス・グラフィック・ディスプレイ及びグラフィック・ディスプレイ・エレメントについてそれぞれのダイナミックリンクライブラリ（DLL）ファイルが作成されてもよい。いずれの場合でも、ベクトルグラフィック・スクリプト及び関連するコードのこのようなコンパイル作業は、ネットワークデータ・トランスミッション要求を最小化する目的でダウンロード前に実行されてもよい。
【０１２９】
いったん作成されると、グラフィック・エレメント及びグラフィック・ディスプレイは汎用もしくはテンプレート・オブジェクトとして構成データベースに格納されてもよく、ランタイム環境で使用される前にクラス・ベースあるいは非クラス・ベース・オブジェクトもしくはエレメントとして格納されてもよい。一般に、本願明細書に記載されたグラフィック・エレメント及びグラフィック・ディスプレイは、特許文献３（当該特許公開を参照によって本願明細書に援用する）に記載があるように、ディスプレイ・モジュールの形式のモジュールとしてもよい。クラス・モジュール（オブジェクト）は、プロセスプラントもしくはプロセス制御システムの特定のハードウェアもしくはデバイスとバインディングされすなわち結び付けられていないクラス・モジュール（オブジェクト）であるが、このオブジェクトからプロセスプラントもしくはプロセス制御システムとバインディングされた他のオブジェクトのインスタンスを生成してもよい。一般に、プロセスプラント、及び詳細にはプロセスプラントのランタイム環境を構成するため、図１の構成ワークステーション２０に示される構成アプリケーション３３のうちの１つのような構成エンジンを用いて、グラフィック・オブジェクト（グラフィック・エレメント及びグラフィック・ディスプレイを含む）をプロセスプラント内の他の論理的エンティティ及び物理的エンティティと関連付けてもよい。エンティティとしては、制御モジュール、装置モジュール（例えば、ユニットモジュール）、プロセス・モジュールなどの論理的エンティティもしくはオペレータ・ワークステーションもしくは他のディスプレイデバイスなどの物理的エンティティが挙げられる。場合によっては、グラフィック・オブジェクトはクラス・オブジェクトであってもよく、装置モジュール・クラス・オブジェクト又は制御モジュール・クラス・オブジェクトなどの他のクラス・オブジェクトと関連付けられていてもよい。また。グラフィック・オブジェクトは個々のオブジェクトであってもよく、また、プロセスプラント内の装置とバインディングされ、例えばコントローラ、ワークステーションもしくはプロセスプラント内の装置の他の部品にダウンロードされたオブジェクトのようにインスタンスを生成されたオブジェクトであってもよい。
【０１３０】
このように、上記グラフィック・エレメント及びグラフィック・ディスプレイは、特許文献３に記載されるように、他のクラス・オブジェクトがライブラリに格納されライブラリ内で構成され、プロセス制御システムの種々のセクションもしくはサブセクションにダウンロードされる場合と同様の方法にてプロセスプラント構成システム内で構成され、プロセスプラントのランタイム環境においてハードウェアにダウンロードされてもよい。すなわち、図１のデータベース２８のような構成データベースのデータに関して動作する構成エンジンは、図２３及び図２４に示されるような構成データベース階層（例えば図２３及び２４において、例示される）を利用する。これによりユーザはプロセスプラントの構成を視認し、変更することができる。図２３の構成階層画面７００では、制御システム７０２（DeltaV制御システムとしてラベリングされている）のための構成データベースがライブラリ（Library）セクション７０４、システム構成（System Configuration）セクション７０６及び結果検索（Search Results）セクション７０８を含む。
【０１３１】
ライブラリセクション７０４は、ランタイム環境に割り当てもしくはダウンロードされず、テンプレートもしくは汎用及びバインディングされていないオブジェクトとして格納されたクラス・オブジェクト及び他のオブジェクト定義を含む。図２３に示すように、ライブラリセクション７０４は制御モジュール（Control Modules）セクション７１０、デバイス（Devices）セクション７１２、プロセス・モジュール（Process Modules）セクション７１４及びオペレータ・インタフェース（Operator Interface）セクション７１６、並びにバッチ（Batch）セクション及び安全指示システム（Safety Instrument Systems）セクション（参照数字により表示されていない）を含む。
【０１３２】
制御モジュールセクション７１０が拡張されていないが、構成データベースのこのセクションは一般に、プロセスプラント内の各種コントローラ及び他の制御デバイスで使用されるべくプロセスプラントのために作成された制御モジュール・テンプレートや制御モジュール・クラス・オブジェクトなどの異なる制御モジュールを含む。また、デバイスセクション７１２は、例えばプロセスプラント内で使用されているバルブ、センサ、コントローラ、ワークステーションなどの実際のデバイスもしくはデバイスタイプの表示、並びにプロセスプラント内の異なるデバイスもしくはハードウェアと関連付けられた論理的エレメントを定義するデバイスクラスオブジェクト、装置クラス・オブジェクトなどの表示を含む、デバイスオブジェクトの表示を含む。また、プロセス・モジュールセクション７１４はプロセスプラントのために作成される各種プロセス・モジュールを含む。各種プロセス・モジュールは、これらのプロセス・モジュールについて定義されるプロセスモジュール・テンプレート及びプロセスブロック定義を含む。このようなプロセス・モジュールについては特許文献３に詳しい記載があるので、本願明細書では説明を省略する。
【０１３３】
しかし、図２３に示されるように、構成階層７００のオペレータ・インタフェースセクション７１６には上記グラフィック・オブジェクトと関連付けられた情報が格納される。すなわち、グラフィックスセクション７２０はシステムのために作成される各種グラフィック・エレメント及びグラフィック・ディスプレイを定義する各種複合的プロセス・グラフィック定義、グラフィック・クラス・オブジェクト及びグラフィック・テンプレートを含む。なお、一般に複合的プロセス・グラフィック定義セクションは、システムのために作成されたグラフィック・エレメントを含み、プロセスグラフィック・クラスセクションは上述の方法で作成されたグラフィック・ディスプレイをクラス・オブジェクトとして含む。一方、プロセス・グラフィック・テンプレートは非クラス化ベースのディスプレイを含んでいてもよい。一般に、構成データベースのこのセクションに格納されるグラフィック・オブジェクトは他のオブジェクトの作成に用いることもでき、グラフィック・エレメント及びグラフィック・ディスプレイがプロセスプラント内の各種ハードウェア及びソフトウェアとバインディングされる方法を定義すべく構成プロセスの間に用いることもできる。また、オペレータ・インタフェースセクション７１６の下のレイアウト（Layout）セクション７２２はオペレータ・インタフェースに関する様々なレイアウトを定義する。役割（Roles）セクション７２４は、オペレータ・インタフェース上で実施され得る各種役割のほか、グラフィック・ディスプレイ及びエレメントのそれぞれによって実行される役割を定義する。
【０１３４】
従って、構成階層７００で示すような構成データベースは、グラフィック・エレメントとグラフィック・ディスプレイを汎用テンプレート、クラス・オブジェクト、あるいは特定の又は個々のエレメントもしくはディスプレイとして格納するセクションを含んでいてもよい。特定の又は個々のエレメントもしくはディスプレイは特定のプロセス・エンティティとはバインディングされていないものの、特定のプロセス・エンティティとバインディングされるエレメントもしくはディスプレイを定義するために利用できる。一般に、構成エンジニアもしくは他のユーザは、階層７００を利用して、後述する方法でグラフィック・ディスプレイ機能を有するようプロセスプラントを構成してもよい。
【０１３５】
図２４は、システム構成の一部として、プロセスグラフィック・エレメント及びグラフィック・ディスプレイがプロセスプラントの各種論理的及び物理的エンティティと関連付けられる様子を示すべくシステム構成セクション７０６が拡張された階層画面７３０を示す。特にシステム構成セクション７０６の下のプロセス・グラフィックス（Process Graphics）セクション７３４は、一般にランタイム環境で使用されるためにプロセスプラントにダウンロードされている各種グラフィック・ディスプレイを定義する。プロセスグラフィックスセクション７３４にはフェイスプレート・ディスプレイ、オペレータ・ディスプレイ、詳細ディスプレイ、メンテナンス・ディスプレイ、シミュレーション・ディスプレイなどが含まれ、一般に、プロセスグラフィックスセクション７３４のグラフィック・ディスプレイ及びエレメントは、プロセスグラフィックスセクション７３４がシステム構成全体に適用されると、プロセスプラント内の各ディスプレイユニット（例えばワークステーションやその他のディスプレイデバイス）にダウンロードされる。しかし、グラフィック・エレメント及びディスプレイはダウンロードされる代わりにシステム構成の制御ストラテジ（Control Strategies）セクション７３６や物理的ネットワーク（Physical Network）セクション７４０などの特定のセクションと関連付けられてもよい。これにより、これらのグラフィック・エレメント及びディスプレイが利用できるディスプレイデバイスが制限される。
【０１３６】
一般に、制御ストラテジセクション７３６は、プロセスプラントの異なる物理的セクション及び論理的セクションに割り当てられた各種制御ルーチン、あるいはこれらのセクションに関して実施されるストラテジを定義する。各種グラフィック・ディスプレイ（ここでも、フェイスプレート・ディスプレイ、制御ディスプレイ、メンテナンス・ディスプレイなど、任意のタイプのディスプレイとしてよい）が、例えば制御モジュール（Control Module）セクション７４６などのエリアに割り当てられたモジュールを処理するため、またプロセス・モジュール７４８などのエリアに割り当てられたモジュールを処理するため、制御ストラテジセクション７３６の例えばエリア（例えばArea#A７４２及びArea#B７４４と称されるエリア）などの特定のサブディヴィジョンもしくはサブカテゴリに割り当てられてもよい。従って、図２４に示すように、ディスプレイセクション７５０がArea#Aセクション７４２と関連付けられ、これはプラントのArea#Aについて、またArea#Aにおいて用いられる全てのディスプレイを定義する。故障していなければ、これらのディスプレイからアクセスできる様々なサブ画面と同様に、フォルダ７５０の下のディスプレイはArea#Aの異なるセットのハードウェアと関連付けられた、図２２の異なるディスプレイ６０２a乃至６０２nのような様々なディスプレイのほか、図２２のディスプレイ６１０及び６１２のような、これらのディスプレイからアクセス可能な各種サブディスプレイを含んでもよい。ディスプレイについて定義される役割は、これらのディスプレイが相互からあるいはディスプレイデバイスを使用しているオペレータにアクセスできる方法を示してもよい。従って、図２２について述べたように、ユーザはプラントのArea#Aの異なる部分を見たり、高レベルのディスプレイでは詳細が表示されない高レベルのディスプレイの特定部分のより詳細なディスプレイなどの、任意の特定領域に関する詳細を見たりするためにセクション７５０のディスプレイをスクロールしてもよい。
【０１３７】
また、制御モジュールセクション７４６の下のディスプレイ（Display）アイコン７５２で示されるように、Area#Aセクション７４２内の特定の制御モジュールにディスプレイを割り当ててもよい。この場合、ディスプレイ７５２は、制御モジュール・ループ（LOOPと称される）と関連付けられ、当該特定の制御ループと関連付けられた制御オペレータ・ディスプレイであってもよい。また、ディスプレイについて定義された役割は、制御ディスプレイの一部としてオペレータステーション内でその役割を表示してもよい。また、Area#Bセクション７４４に関して示すように、一般にディスプレイ７５４はエリアと関係していてもよく、一方ディスプレイ７５６はエリアに割り当てられる特定のプロセス・モジュールと関連付けられていてもよい。この場合、ディスプレイアイコン７５６はArea#Bの装置と関連付けられるプロセス・モジュールである、PMOD２と称されるプロセス・モジュールと関連付けられる。PMOD２は、例えばユニットモジュールもしくは装置モジュール、あるいは任意の他のタイプのプロセス・モジュールであってもよい。
【０１３８】
このように、一般に制御ストラテジセクション７３６の下に示されるように、構成システム内で特定の制御定義が作成されると、ディスプレイは特定の制御ストラテジもしくは制御定義と関連付けられてもよい。図２４の例に示すように、ディスプレイは例えばエリアセクション７４２及び７４４のようなエリアベース、制御モジュール７５０のような制御モジュールベース、あるいはディスプレイセクション７５６により示されるようなプロセスモジュールベースで、定義された制御定義と関連付けられていてもよい。また、必要に応じて、装置アイテムは役割と関連付けられ、これによりこれらの役割と関連付けられたディスプレイへの装置エレメントによる動的なアクセスが可能となる。このような装置役割及びディスプレイは、プロセスグラフィックスセクション７３４に格納されてもよい。
【０１３９】
また、ディスプレイはオペレータ・ワークステーションや他のディスプレイデバイスなどの、プロセスプラント内の実際のハードウェア・エレメントに割り当てられもしくは関連付けられることができる。従って、物理的ネットワークセクション７４０の下に示されるように、特定のディスプレイが特定のオペレータ・ワークステーションや、ディスプレイを有する他のランタイムマシンに割り当てられてもよい。図２４の特定の例では、物理的ネットワークセクション７４０は、CTLR1と称されるコントローラ、構成ステーションとしてもよいProPlusステーション、オペレータステーション（Operator Station）７６２と称されるオペレータ・ワークステーションなどの、関連付けられたハードウェアを有する制御ネットワーク（Control Network）７６０を含む。プラント内の特定のワークステーションもしくはユーザインタフェースを定義しもしくはこれらと関連付けられたオペレータステーション７６２は警報及びイベント機能、オペレータ活動、連続履歴作成機能及びこれらと関連したシミュレーション活動を含む。但しメンテナンス活動、ビジネス活動などその他の活動又は機能が関連付けられていてもよく、任意の特定のユーザインタフェース上で実行されてもよい。このように、特定のユーザインタフェースがプロセスプラント内の役割に割り当てられてもよく、あるいは特定のユーザインタフェースが当該ディスプレイデバイスに格納されもしくはダウンロードされる役割に関するディスプレイを有していてもよい。
【０１４０】
図２４に示したように、ディスプレイ７６４及び７６６は、オペレータ機能又は活動のほか、ワークステーション７６２で実行されるシミュレーション機能又は活動にも割り当てられる。図２４には示されていないが、ディスプレイは例えばプロセスプラント内の他のノードと関連するディスプレイデバイスなど、他のディスプレイデバイスに割り当てられ、これらのディスプレイデバイス上で実施されてもよい。更に、オペレータ・ワークステーションもしくは他のランタイムディスプレイマシン内の特定の機能にディスプレイを割り当てることで、オペレータ機能、シミュレーション機能、メンテナンス機能など、これらのディスプレイがランタイム環境内で実行し得る役割もしくは機能を決定できる。当然ながら、これらの各種機能は構成システムが設定した方法で、同一のディスプレイデバイスもしくは別のディスプレイデバイス上で実行され得る。また、構成階層７３０ではオペレータ・ワークステーションに割り当てられたディスプレイを示しているが、ディスプレイはPDA、電話デバイス、ビジネスワークステーションなどハンドヘルド・コンピュータ・ディスプレイデバイスのほか、他の任意の所望のタイプのディスプレイデバイスのような、他のタイプのディスプレイデバイスに割り当てられてもよい。
【０１４１】
構成エンジンは、構成エンジニアなどのユーザが構成階層を利用し、プロセス・グラフィック・ディスプレイがプロセスプラント内でバインディングされダウンロードされる方法を定義し、管理することを可能とする。一般に、構成エンジニアなどのユーザは、ユーザが他のオブジェクトに対して行うことができる方法と同じ方法で、構成システム内のディスプレイ・オブジェクトの作成、削除、名前の変更、割り当て及びダウンロードを行うことができる。詳細には、構成エンジンは、ディスプレイをどこに割り当てて実行するかを定義し、ランタイム間にこれらのディスプレイがバインディングされるべきプロセスエンティティ（論理的及び物理的）を定義することにより、グラフィック・ディスプレイがプロセスプラントの構成に統合されることを可能とする。所望により、構成階層画面（例えば図２３及び図２４の画面）は、必要なダウンロードを示し、ディスプレイ上でバージョン管理を実施するために用いられてもよい。
【０１４２】
構成は、構成システム内の多数のレベルで発生することが可能である。まず、構成エンジニアがディスプレイ・クラス・オブジェクトをライブラリセクション７０４のモジュール・クラス・オブジェクトと関連させてもよい。これにより装置モジュール・クラス・オブジェクト、エリアモジュール・クラス・オブジェクトなどの特定のディスプレイ・クラス・オブジェクトが特定のモジュール・クラス・オブジェクトにバインディングされる。次いで、モジュール・クラス・オブジェクトがインスタンスを生成され、プロセスプラントの特定部分に割り当てられる（又は構成される）と、インスタンスを生成されたモジュール・オブジェクトと関連付けられたディスプレイ・オブジェクト（例えばグラフィック・ディスプレイ）はモジュール・オブジェクトと共に同じハードウェアにバインディングされる。これにより、プラント内の適切なハードウェアにグラフィック・ディスプレイを割り当て、このグラフィック・ディスプレイオブジェクトを適切なハードウェアにダウンロードするために更なる作業を行う必要がなくなる。代わりに、この場合、グラフィック・ディスプレイ・オブジェクトは、当該オブジェクトがバインディングされたモジュール・オブジェクトの構成に倣う。また、ディスプレイ・クラス・オブジェクトがモジュール・クラス・オブジェクトと関連付けられると、上述のごとく、モジュール・クラス・オブジェクトに対して変更がなされると、関連付けられたディスプレイ・クラス・オブジェクト内の同一エレメントにこの変更が自動的に伝搬される。次いでこれらの変更はグラフィック・ディスプレイの実際のインスタンスを生成されたバージョンに伝搬される。ある例では、グラフィック・ディスプレイがループ（Loop）と呼ばれる制御モジュールを含むミキサ（装置クラス・オブジェクト）を含み、この制御モジュールが選択され名前を変更された場合、構成システムはLoopへの参照を新しい名前に自動的に変更し、グラフィック・ディスプレイのバインディングが確実に新しい名前で更新されるようにしてもよい。但し、当該変更がランタイムシステムで行われるよう、新たに変更された実際のディスプレイがランタイムマシンにダウンロードされる必要がある。所望により、例えば青色の三角形を適切なグラフィック・ディスプレイアイコンの隣に配置するなど、構成階層内に格納される際に、ダウンロードが必要とされている旨の表示をディスプレイの隣に配置してもよい。
【０１４３】
一方、ディスプレイは、プロセスプラント又は構成システム内の異なる構成要素に別々にもしくは直接割り当てられてもよい。すなわち、図２４に示すように、個々のディスプレイは、システム構成セクション７３４の下のプロセスグラフィックスセクション７３４に配置されてもよい。これらのディスプレイは、例えばライブラリセクション７０２において選択され、セクション７３４にドラッグアンドドロップされることによりこのセクションに配置されてもよい。当然ながら、階層７３０の特定のセクションにグラフィック・ディスプレイを移動させる方法として他の方法も可能である。いずれの場合も、セクション７３４のグラフィック・ディスプレイは、例えば、フェイスプレート・ディスプレイ又は他のクラス・ベースもしくは非クラス・ベースのディスプレイを含み、一般にプラント内の全てのワークステーション、あるいはプラントの、システム構成セクション７０６によりカバーされるセクションにダウンロードされることが可能である。
【０１４４】
但し、ユーザは、ディスプレイにアクセスするプロセス制御システム内のワークステーション（もしくは他のディスプレイデバイス）の識別を管理し、従ってこれらのディスプレイが使用され得るデバイスの識別を管理するため、プロセスグラフィックスセクション７３４からディスプレイを取り出し、特定のサブセクションに配置することもできる。特定のディスプレイを論理的もしくは物理的プラントセクションに割り当てるには、ユーザは、例えばグラフィック・ディスプレイを選択し、当該グラフィック・ディスプレイを構成階層７３０の特定のセクションにドラッグアンドドロップしてもよい。これにより当該グラフィック・ディスプレイと、当該ディスプレイが関連付けられる論理的もしくは物理的エンティティとの関連を定義できる。この構成工程が行われる際、ディスプレイがドロップされもしくは関連付けられた構成のセクションに基づいて、ディスプレイのための決定表が自動的に記入されてもよい。
【０１４５】
例えば、ディスプレイをランタイム環境と関連付けるため、グラフィック・ディスプレイはライブラリセクション７０２からドラッグされプロセスグラフィックスセクション７０６にドロップされてもよい。また、例えばプロセスグラフィックスセクション７３４のディスプレイは、例えばArea#Aディスプレイ（Displays）セクション７５０（このディスプレイをArea#Aエンティティ及び機能に特有の、任意のArea#Aディスプレイデバイスで一般的に利用できるディスプレイとする）、Area#Bディスプレイ（Displays）セクション７５４などの他のセクションに移動されてもよい。同様に、グラフィック・ディスプレイは、例えばLoop（ディスプレイフォルダ７５２により示される）と称される制御モジュールと関連付けられるなど、論理的エンティティのサブセクションと関連付けられてもよい。これによりこれらのディスプレイがこの論理的エンティティに特有のディスプレイとなり、この制御ループ機能を実行するマシンもしくはこの制御ループ機能と関連付けられたと定義されたマシンでのみ利用可能となる。更に、ディスプレイはオペレータステーション７６２内のオペレータ機能やオペレータステーション７６２内のシミュレーション機能７７０により定義されるような特定のディスプレイデバイスや、ディスプレイデバイスの機能的サブセクションに割り当てられてもよい。更に、詳細は割愛するが、グラフィック・ディスプレイがプロセスプラント内で関連付けられ使用される方法を定義するため、ユーザはグラフィック・ディスプレイをエリア、セル、ユニット、装置モジュールのほか、別の制御セクションに割り当ててもよい。
【０１４６】
ディスプレイがArea#A又はArea#Bのようにエリア指定により定義されて例えば制御ストラテジなどの論理的エンティティに割り当てられる場合、グラフィック・ディスプレイはこれらの論理的エンティティが割り当てられた物理的インタフェース（例えばワークステーション）に割り当てられる。同様に、ディスプレイがユニット、セルもしくは装置モジュールに割り当てられる際、ディスプレイは当該ユニット、セルもしくは装置モジュールが割り当てられたワークステーションもしくは他のインタフェースデバイスに割り当てられる。
【０１４７】
モジュールが多数のグラフィック・ディスプレイを含む場合、モジュールはこれらのディスプレイのための役割や各ディスプレイが果たす役割を定義してもよい。これらはディスプレイ作成の際に当該グラフィック・ディスプレイに割り当てられる役割表示により定義される。任意のディスプレイデバイス内におけるこれらのディスプレイへのアクセスは、当該ディスプレイに対して定義された役割と関連付けられてもよく、また役割により制限されてもよい。また、ディスプレイがエリア又はモジュールに割り当てられる場合、このディスプレイへの参照はこのディスプレイが所属するエリアもしくはモジュールのディスプレイフォルダにおいてグラフィック・ディスプレイとして表示されてもよい。いったんディスプレイがエリア又はモジュールに割り当てられると、ディスプレイへの参照はこのエリアもしくはモジュールが所有し、よってこのディスプレイはこのエリアもしくはモジュールへの任意の割り当てもしくは移動に従うことになる。一方、エリアもしくはモジュールがワークステーションに割り当てられる際、そのエリアもしくはモジュールに所属するディスプレイは当該ディスプレイの役割により定義されるように当該ワークステーションのオペレータサブシステムもしくは機能に自動的に割り当てられる。当然ながら、個々のグラフィック・ディスプレイは、構成階層の物理的ネットワークセクション７４０におけるインタフェースデバイスの特定のインタフェースデバイス又はサブシステムの中でもしくはこれらの下に直接配置されることにより、ディスプレイデバイスのオペレータサブシステムに直接割り当てられてもよい。
【０１４８】
このように、ディスプレイは、構成画面７３０内で個々のエンティティにドラッグアンドドロップされることにより、個々のノード、制御エリア、制御モジュール、プロセス・モジュールもしくは他の論理的制御エンティティのほか、これらの個々のディスプレイデバイス及びサブシステムに割り当てられてもよい。当然ながら、必要に応じて、多数のステーションに同一のディスプレイを割り当ててもよく、各ディスプレイ（ダウンロードされもしくは単に割り当てられた）の状態は、階層７３０内の各種フォルダにおいて各ディスプレイの名前をつけたアイコンで表示されてもよい。所望により、階層７３０では、グラフィック・ディスプレイがメモリにおいてロックされたタイミングや、グラフィック・ディスプレイがディスク上の仮想メモリに保持されているか否かを表示するための別のアイコンを用いてもよい。
【０１４９】
一般に、グラフィック・ディスプレイは、ディスプレイ・コンテント（例えばディスプレイがディスプレイ画面に視覚的に現れる方法を定義するXAMLスクリプト）、ローカル表及び参照から成っている。参照は、他のディスプレイへの参照のほか、制御パラメータなどのランタイムパラメータへの参照、ディスプレイ制御、ランタイム別名（そのいくつかはランタイムでバインディングされる）への参照、ローカル表の参照及びグローバル表への参照とすることができる。一般に、構成エンジンはグラフィック・エレメント（XAML）のグラフィック部分を参照とは別に処理する。そして、ディスプレイを取り扱い、使用することをより容易にする。すなわち、構成システムは、構成階層で実行される割り当てに基づき、動的な別名を使用しない参照に記入することにより、構成プロセスの間にディスプレイをバインディングできる。よって、例えば、ユーザがプロセスグラフィックスセクション７３４もしくは構成階層７３０のライブラリセクション７０４から特定エリアもしくは制御モジュールにグラフィック・ディスプレイをドラッグアンドドロップする場合、グラフィック・ディスプレイ内の参照を当該エリアもしくはモジュールと関連付けられた特定のエレメントとバインディングすべく、グラフィック内でバインディングが自動的に行われる。このように、ユーザが実行している構成に基づいてバインディングのダウンロードが自動的に行われてもよい。これによりユーザがこれらのバインディングを特定するために手動で実行しなくてはならない作業の量が減少する。
【０１５０】
更に、決定していないバインディングが構成ステップにある場合、構成エンジンは、当該バインディングや参照を変更するなどして、このバインディングを決定するための情報を提供するようユーザに質問してもよい。また、必要に応じて、Microsoft社のExcel（登録商標）などの表計算プログラムのような大規模編集ツールを利用して、構成プロセスにおいて構成エンジニアが決定を記入もしくは定義しあるいはパラメータをバインディングすることをアシストしてもよい。いずれの場合も、これらの構成ステップは、グラフィック・ディスプレイがランタイム環境で使用されることを可能とする、図１３に関連して議論した決定表２０８に記入する。よって、ユーザは、一般にユーザが特許文献３に記載されているプロセス・モジュールに対する方法と概ね同じ方法でグラフィック・ディスプレイ（及びグラフィック・エレメント）のバインディング及びダウンロードを実行してもよい。
【０１５１】
当然ながら、ユーザもしくは構成エンジニアは、グラフィック・ディスプレイ上でクリックし、グラフィック・ディスプレイを階層７３０外へ移動させ、あるいは当該グラフィック・ディスプレイの作成を割り当てないようにするダイアログボックスを結合させることで、グラフィック・ディスプレイを割り当てないこともできる。また、ユーザは特定のグラフィック・ディスプレイ又はグラフィック・ディスプレイのセットが割り当てられる方法を視認することができ、このような情報は例えば図２５に示されるダイアログボックス８００により与えられてもよい。図２５のダイアログボックス８００は、２台のディスプレイ、Display１及びDisplay２の各々がプロセスプラント中で構成される方法を示す。詳細には、ダイアログボックス８００は、各々のディスプレイがどこで使用されるか（例えば、Display１はArea#Aと呼ばれるプラントエリアのMod１と呼ばれる制御モジュールにおいて使用される、など）、ディスプレイが割り当てられる物理的ステーション（例えば、Display１は、Oper１と呼ばれるオペレータステーションに割り当てられる、など）、及び当該ディスプレイが果たす役割（例えば、Display１は、各用途の主要ディスプレイである、など）を示す。
【０１５２】
ディスプレイの役割は所望の方法で変更でき、また、役割は、グラフィック・ディスプレイが割り当てられる構成システムの一部や、グラフィック・ディスプレイを利用できる人すなわちどの機能が利用できるかを示してもよい。グラフィック・ディスプレイは、所望により多数の役割を果たすために用いられてもよい。当然ながら、上述のごとくユーザがワークステーションもしくは他のディスプレイデバイスにエリア、あるいはある種のモジュールを割り当てると、そのエリアもしくはモジュールに関連付けられた任意のディスプレイは当該ワークステーションに割り当てられる。このため当該エリアもしくは他のモジュールのためのグラフィカル・サポートがワークステーションに確実に提供される。また、グラフィック・ディスプレイがワークステーションもしくは他のディスプレイデバイスに割り当てられると、グラフィック・ディスプレイは、当該グラフィック・ディスプレイがシミュレーション・ディスプレイ、オペレータ・ディスプレイであるか否かなど、当該グラフィック・ディスプレイの役割に基づいてワークステーションのサブシステムに割り当てられてもよい。また、ユーザはグラフィック・ディスプレイをワークステーションもしくは他のディスプレイデバイスの特定のサブシステムにドラッグアンドドロップしてもよい。役割が誤って割り当てられた場合、構成システムはダイアログボックスを表示し、誤った割り当てがなされている旨をユーザに表示し、あるいはユーザが当該グラフィック・ディスプレイの役割を変更することを許可する。
【０１５３】
図２３及び図２４の構成エンジンもしくは構成階層を用いて適切なもしくは所望の割り当てを実行すると、ユーザ・オペレータはグラフィック・ディスプレイの実際のダウンロードを行ってもよい。これにより、構成システムで定義された用途及び役割のために構成階層７３０で定義された適切なオペレータ・ワークステーションにグラフィック・ディスプレイが実際にダウンロードされる。ダウンロードの間、エリア、ループ、制御モジュール、プロセス・モジュールなどへの割り当てのほか、オペレータ・ワークステーションもしくは他のディスプレイデバイスへの割り当てに基づいてディスプレイ中のバインディングが決定される。
【０１５４】
所望により、構成階層（図２３参照）の結果検索セクション７０８は、ユーザが任意の個々のグラフィック・ディスプレイもしくはグラフィック・ディスプレイで使用されるグラフィック・エレメントをプロセスプラントもしくは構成システム全体から検索することを可能とする。すなわち、構成エンジンは、ユーザと関連付けされると、特定のグラフィック・ディスプレイもしくはグラフィック・エレメントを検索し、検索の結果を結果検索セクション７０８に格納してもよい。これにより任意の特定のグラフィック・エレメントもしくはグラフィック・ディスプレイの用途の完全なリストを提供できる。このような検索により、変更を行うユーザが、どのグラフィック・ディスプレイに変更が必要か、あるいはその変更を行うためにはどのダウンロードが必要か、などを視認することができる。
【０１５５】
実施にあたり、ここに記載したソフトウェアはいずれも磁気ディスク、レーザーディスクもしくは他の格納媒体などのコンピュータ可読メモリやコンピュータ又はプロセッサなどのRAMもしくはROM内に格納されてもよい。同様に、このソフトウェアは、例えば、コンピュータ可読ディスクや他の可搬型コンピュータ格納機構に格納し、あるいは電話線、インターネット、ワールドワイドウェブ（WWW）、任意の他のローカルエリア・ネットワーク、広域ネットワークなどの通信チャネルを介して転送するなどの公知又は所望の搬送方法により、ユーザ、プロセスプラント又はオペレータ・ワークステーションに搬送されてもよい（搬送することは、ソフトウェアを可搬型格納媒体を通じて提供することと同義もしくは相互変換可能であるとみなされる）。更に、このソフトウェアは変調や暗号化を経ずに直接提供されてもよいし、通信チャネル上で伝送される前に任意の変調搬送波及び／又は暗号化技術を利用して変調及び／又は暗号化されてもよい。
【０１５６】
本発明を特定の例を参照しながら説明したが、これらはあくまで例であり、本発明を限定する意図はない。本願明細書に開示された実施形態に、本発明の精神及び範囲を逸脱することなく変更、追加、削除を行いうることは当業者には明白である。
【図１】
2015092403.tif 000003
【図２】
2015092403.tif 000004
【図３】
2015092403.tif 000005
【図４】
2015092403.tif 000006
【図５】
2015092403.tif 000007
【図６】
2015092403.tif 000008
【図７】
2015092403.tif 000009
【図８】
2015092403.tif 000010
【図９】
2015092403.tif 000011
【図１０】
2015092403.tif 000012
【図１１】
2015092403.tif 000013
【図１２】
2015092403.tif 000014
【図１３】
2015092403.tif 000015
【図１４】
2015092403.tif 000016
【図１５】
2015092403.tif 000017
【図１６】
2015092403.tif 000018
【図１７】
2015092403.tif 000019
【図１８】
2015092403.tif 000020
【図１９】
2015092403.tif 000021
【図２０Ａ】
2015092403.tif 000022
【図２０Ｂ】
2015092403.tif 000023
【図２０Ｃ】
2015092403.tif 000024
【図２０Ｄ】
2015092403.tif 000025
【図２０Ｅ】
2015092403.tif 000026
【図２１Ａ】
2015092403.tif 000027
【図２１Ｂ】
2015092403.tif 000028
【図２２】
2015092403.tif 000029
【図２３】
2015092403.tif 000030
【図２４】
2015092403.tif 000031
【図２５】
2015092403.tif 000032