(57)【要約】      （修正有）【課題】構成要素を、図形要素オブジェクトを構成するための構成表示ビュー上に提示する。【解決手段】図形要素オブジェクトは、プロセス制御表示ビュー上でインスタンス化されることになり、プロセスプラント内のプロセス実体に対応する。構成要素オブジェクトは、図形要素オブジェクトの属性に対するプロパティのセットを有し、構成表示ビューがインスタンス化される構成表示オブジェクトへのリンクを含む。構成要素オブジェクトのインスタンス化は、図形要素オブジェクトの属性に対するプロパティのセットの視覚表現と、プロパティのセットからの構成要素において構成されたプロパティに対応するデータを送信するための図形要素オブジェクトへのリンクとを含む。構成されたプロパティは、図形要素の少なくとも１つの構成された属性に対応する。【選択図】図５
2019091410.tif 000002
【特許請求の範囲】
【請求項１】
プロセスプラント内に含まれるプロセス実体に対応するプロセス制御表示ビュー上にインスタンス化される図形要素オブジェクトを構成するための構成表示ビュー上に提示された構成要素であって、前記構成要素が、
前記プロセスプラントの構成環境内で、前記図形要素オブジェクトの属性に対するプロパティのセットに対応する構成要素オブジェクトのインスタンス化の実行を含み、前記構成要素オブジェクトが、構成可能であり、前記構成要素オブジェクトが、前記構成表示ビューがインスタンス化される構成表示オブジェクトへのリンクを含み、前記構成要素オブジェクトの前記インスタンス化の前記実行が、
前記図形要素オブジェクトの前記属性に対する前記プロパティのセットの視覚表現と、
前記プロパティのセットからの、前記構成要素において構成されたプロパティに対応するデータを送信するための前記図形要素オブジェクトへのリンクであって、前記構成されたプロパティが、前記図形要素の少なくとも１つの構成された属性に対応する、リンクとを含む、構成要素。
【請求項２】
前記構成要素オブジェクトが、前記プロセスプラントの前記構成環境内で構成可能である、請求項１に記載の構成要素。
【請求項３】
前記構成表示オブジェクトが、前記プロパティのセットが前記構成要素オブジェクトに対応するように選択される前記図形要素オブジェクトの前記属性に対する複数のプロパティに対応する、請求項２に記載の構成要素。
【請求項４】
前記複数のプロパティが、前記プロパティのセットが前記構成要素オブジェクトに対応するように選択された１つ以上のプロパティのセットを含む、請求項３に記載の構成要素。
【請求項５】
前記１つ以上のプロパティのセットが、前記プロセスプラントの前記構成環境内で構成可能である、請求項４に記載の構成要素。
【請求項６】
前記１つ以上のプロパティのセットが、前記複数のプロパティからプロパティを追加し、及び／またはプロパティのセットからプロパティを削除するように構成可能である、請求項５に記載の構成要素。
【請求項７】
前記１つ以上の複数のプロパティが、前記複数のプロパティのうちの選択されたものを含むプロパティのセットを作成するように構成可能である、請求項４に記載の構成要素。
【請求項８】
前記構成表示ビューのインスタンス化が、前記構成要素オブジェクトが構成されるときの前記構成要素オブジェクトのインスタンス化のプレビューを含む、請求項２に記載の構成要素。
【請求項９】
前記構成要素オブジェクトの前記インスタンス化の前記構成を記憶することをさらに含み、前記構成が、前記プロパティのセットからの、前記構成要素において構成された前記プロパティの値を含む、請求項２に記載の構成要素。
【請求項１０】
前記構成要素オブジェクトの前記インスタンス化の前記構成を記憶することが、前記図形要素オブジェクトの前記属性の前記プロパティの前記値を読み取ることと、前記プロパティの前記値を、前記構成要素オブジェクトの前記インスタンス化の前記構成の少なくとも一部として記憶することと、を含む、請求項９に記載の構成要素。
【請求項１１】
前記構成要素オブジェクトの前記インスタンス化の前記構成を記憶することが、前記構成要素オブジェクト内の前記プロパティの選択された値を読み取ることと、前記プロパティの前記値を、前記構成要素オブジェクトの前記インスタンス化の前記構成の少なくとも一部として記憶することと、を含む、請求項９に記載の構成要素。
【請求項１２】
前記構成表示オブジェクトのインスタンスが、前記図形要素オブジェクトに対する１つ以上の属性の視覚表現を含む、請求項１に記載の構成要素。
【請求項１３】
前記図形要素オブジェクトに対する前記１つ以上の属性が、形状を含み、前記プロパティのセットが、前記形状の多数の視覚表現を含む、請求項１２に記載の構成要素。
【請求項１４】
前記プロパティのセットが、前記形状の線幅、前記形状の色、及び前記形状に対するラベルのフォントのうちの１つ以上に対するオプションを含む、請求項１３に記載の構成要素。
【請求項１５】
前記図形要素オブジェクトに対する前記１つ以上の属性が、動的なグラフィカル挙動を含み、前記プロパティのセットが、前記動的なグラフィカル挙動の多数の視覚表現を含む、請求項１２に記載の構成要素。
【請求項１６】
前記プロパティのセットが、前記動的なグラフィカル挙動のアニメーション、及び前記動的なグラフィカル挙動の提示のうちの１つ以上に対するオプションを含む、請求項１５に記載の構成要素。
【請求項１７】
前記プロパティのセットからの前記構成要素内で構成された前記プロパティが、前記図形要素オブジェクトに対する形状のプロパティを含み、前記図形要素オブジェクトに対する前記形状が、前記構成表示ビューの前記インスタンス化において構成される、請求項１に記載の構成要素。
【請求項１８】
方法であって、
プロセスプラントの構成環境内の構成要素オブジェクトインスタンスにおいて、前記構成環境内の図形要素オブジェクトの少なくとも一部の構成の指標を受信することであって、
前記構成要素オブジェクトインスタンスが、（ｉ）前記プロセスプラントの構成環境において、構成要素オブジェクトから構成され、かつ前記図形要素オブジェクトに対するプロパティのセットを定義し、（ｉｉ）前記構成要素オブジェクトから前記構成環境にインスタンス化され、（ｉｉｉ）前記構成環境内で、構成表示オブジェクトのインスタンスにおいて実行され、前記構成表示オブジェクトインスタンスが、前記図形要素オブジェクトを構成するための複数のプロパティを定義する、受信することと、
前記構成の定義を生成し、前記定義された構成を前記図形要素オブジェクトにリンクし、それによって、前記構成定義を、前記図形要素オブジェクトのインスタンス化で使用させることと、
ランタイム環境内で、前記構成定義を前記図形要素オブジェクトインスタンスの前記少なくとも一部に適用し、それによって、構成された図形要素オブジェクトインスタンスを生成することと、
前記ランタイム環境内で、表示オブジェクトインスタンス内の前記構成された図形要素オブジェクトインスタンスを実行することであって、前記表示オブジェクトインスタンスが、（ｉ）前記構成環境において、表示オブジェクトから構成され、（ｉｉ）前記表示オブジェクトから前記ランタイム環境にインスタンス化され、（ｉｉｉ）前記ランタイム環境内で実行され、それによって、それぞれのプロセス要素にリンクされる、実行することと、を含む、方法。
【請求項１９】
前記構成表示オブジェクトが、前記図形要素オブジェクトに対する複数のプロパティに対応し、前記図形要素オブジェクトに対する前記プロパティのセットが、前記構成要素オブジェクトに対応するように、前記複数のプロパティから選択される、請求項１８に記載の方法。
【請求項２０】
前記複数のプロパティが、１つ以上のプロパティのセットを含み、前記図形要素オブジェクトに対する前記プロパティのセットが、前記構成要素オブジェクトに対応するように、前記１つ以上のプロパティのセットから選択される、請求項１９に記載の方法。
【請求項２１】
前記構成表示オブジェクトが、前記構成要素オブジェクトが構成されるときの前記構成要素オブジェクトのインスタンス化のプレビューを含む、請求項１８に記載の方法。
【請求項２２】
前記図形要素オブジェクトの少なくとも前記一部の構成の指標を受信することが、前記構成要素オブジェクトの前記インスタンス化の記憶された構成を受信することを含み、前記記憶された構成が、前記図形要素オブジェクトに対して、前記プロパティのセットから前記構成要素オブジェクトにおいて構成された前記図形要素オブジェクトに対するプロパティの値を含む、請求項１８に記載の方法。
【請求項２３】
前記構成の前記定義を記憶することをさらに含み、前記構成の前記定義が、前記図形要素オブジェクトに対して、前記プロパティのセットからの前記構成要素において構成されたプロパティの値を含む、請求項１８に記載の方法。
【請求項２４】
前記構成の前記定義を記憶することが、前記図形要素オブジェクトの前記プロパティの前記値を読み取ることと、前記プロパティの前記値を、前記構成要素オブジェクトの前記インスタンス化の前記構成の少なくとも一部として記憶することと、を含む、請求項２３に記載の方法。
【請求項２５】
前記構成の前記定義を記憶することが、前記構成要素オブジェクト内の前記プロパティの選択された値を読み取ることと、前記プロパティの前記値を、前記構成要素オブジェクトの前記インスタンス化の前記構成の少なくとも一部として記憶することと、を含む、請求項２３に記載の方法。
【請求項２６】
前記構成の前記定義を生成することが、前記図形要素オブジェクトのプロパティの値を生成することを含む、請求項１８に記載の方法。
【請求項２７】
前記構成要素オブジェクトインスタンスが、前記図形要素オブジェクトに対する１つ以上の属性の視覚表現を含む、請求項１８に記載の方法。
【請求項２８】
前記図形要素オブジェクトに対する前記１つ以上の属性が、形状を含み、前記プロパティのセットが、前記形状の多数の視覚表現を含む、請求項２７に記載の方法。
【請求項２９】
前記プロパティのセットが、前記形状の線幅、前記形状の色、及び前記形状に対するラベルのフォントのうちの１つ以上に対するオプションを含む、請求項２８に記載の方法。
【請求項３０】
前記図形要素オブジェクトに対する前記１つ以上の属性が、動的なグラフィカル挙動を含み、前記プロパティのセットが、前記動的なグラフィカル挙動の多数の視覚表現を含む、請求項２７に記載の方法。
【請求項３１】
前記プロパティのセットが、前記動的なグラフィカル挙動のアニメーション、及び前記
動的なグラフィカル挙動の提示のうちの１つ以上に対するオプションを含む、請求項３０に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、２０１７年８月３１日出願の米国特許出願第１５／６９２，４５０号、発明の名称「Ｄｅｒｉｖｅｄ  ａｎｄ  Ｌｉｎｋｅｄ  Ｄｅｆｉｎｉｔｉｏｎｓ  ｗｉｔｈ  Ｏｖｅｒｒｉｄｅ」に対する利益及び優先権を主張する一部継続出願であり、これは２０１３年１０月８日出願の米国特許出願第１４／０４８，５１６号、発明の名称「Ｄｅｒｉｖｅｄ  ａｎｄ  Ｌｉｎｋｅｄ  Ｄｅｆｉｎｉｔｉｏｎｓ  ｗｉｔｈ  Ｏｖｅｒｒｉｄｅ」に対する利益及び優先権を主張し、これは２０１２年１０月８日出願の米国仮特許出願第６１／７１１，１１０号、発明の名称「Ｐｒｏｃｅｓｓ  Ｐｌａｎｔ  Ｃｏｎｆｉｇｕｒａｔｉｏｎｓ  Ｕｓｉｎｇ  Ｆｌｅｘｉｂｌｅ  Ｏｂｊｅｃｔｓ」に対する利益及び優先権を主張し、これは、及び２０１２年１０月８日出願の米国仮特許出願第６１／７１１，１０５号、発明の名称「Ｃｏｎｆｉｇｕｒａｂｌｅ  Ｕｓｅｒ  Ｄｉｓｐｌａｙｓ  Ｉｎ  Ａ  Ｐｒｏｃｅｓｓ  Ｃｏｎｔｒｏｌ  Ｓｙｓｔｅｍ」に対する利益及び優先権を主張し、その内容全体は、参照により本明細書に組み入れられる。
【０００２】
さらに、本出願は、２０１３年１０月８日出願の米国特許出願第１４／０４８，５３３号、元の発明の名称「Ｄｙｎａｍｉｃａｌｌｙ  Ｒｅｓｕａｂｌｅ  Ｃｌａｓｓｅｓ」に関連し、その内容全体は、参照により本明細書に組み入れられる。本出願はまた、２０１３年１０月８日出願の米国特許出願第１４／０４８，４９６号、元の発明の名称「Ｍｅｔｈｏｄ  Ａｎｄ  Ａｐｐａｒａｔｕｓ  Ｆｏｒ  Ｍａｎａｇｉｎｇ  Ｐｒｏｃｅｓｓ  Ｃｏｎｔｒｏｌ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ」に関連し、その内容全体は、参照により本明細書に組み入れられる。
【０００３】
本発明は、概してプロセスプラントに関し、より特定的には、プロセスプラントまたはプロセス制御システムの構成及び動作の目視におけるフレキシブルなオブジェクトの使用に関する。
【背景技術】
【０００４】
化学プラント、石油プラント、または他のプロセスプラント内で使用されるもののような、分散型プロセス制御システムは、アナログバス、デジタルバス、または混合アナログ／デジタルバスを介して１つ以上のフィールドデバイスに通信可能に連結された１つ以上のプロセスコントローラを典型的に含む。フィールドデバイスは、例えば、バルブ、バルブポジショナ、スイッチ、及び送信機（例えば、温度、圧力、レベル、及び流量センサ）であり得るが、プロセス環境内に配置され、バルブを開くことまたは閉じること、プロセスパラメータを測定すること等のようなプロセス機能を実行する。公知のＦｉｅｌｄｂｕｓプロトコルに準拠するフィールドデバイス等の、スマートフィールドデバイスは、制御計算、アラーム機能、及びコントローラ内で一般に実装される他の制御機能もまた実行し得る。プロセスコントローラは、これもまた同様に典型的にはプラント環境内に配置されるが、フィールドデバイスによって行われるプロセス測定を示す信号及び／またはフィールドデバイスに関する他の情報を受信し、例えば、プロセス制御判断を行い、受信した情報に基づき制御信号を生成し、ＨＡＲＴ及びＦＯＵＮＤＡＴＩＯＮ（登録商標）Ｆｉｅｌｄｂｕｓフィールドデバイス等の、フィールドデバイスで実行される制御モジュールまたはブロックと連携する、異なる制御モジュールを実行するコントローラアプリケーションを実行する。コントローラ内の制御モジュールは、制御信号を通信線上でフィールドデバイスに送信し、これによってプロセスプラントの動作を制御する。
【０００５】
フィールドデバイス及びコントローラからの情報は、制御室またはより過酷なプラント
環境から離れた他の位置内に典型的に配置されたオペレータワークステーション、パーソナルコンピュータ、データヒストリアン、レポートジェネレータ、集中データベース等のような１つ以上の他のハードウェアデバイスに対して、通信データハイウェイ上で通常、利用可能とされる。これらのハードウェアデバイスは、アプリケーションを実行させ、これは、例えば、オペレータが、プロセス制御ルーチンの設定変更、コントローラまたはフィールドデバイス内の制御モジュールの動作の修正、プロセスの現在の状態の閲覧、フィールドデバイス及びコントローラによって生成された警報の閲覧、従業員の訓練またはプロセス制御ソフトウェアのテストの目的のためのプロセスの動作の模擬、構成データベースの維持及び更新等のような、プロセスに関する機能を実行することを可能にする。
【０００６】
例として、Ｅｍｅｒｓｏｎ  Ｐｒｏｃｅｓｓ  Ｍａｎａｇｅｍｅｎｔによって販売されている、ＤｅｌｔａＶ（商標）制御システムは、プロセスプラント内の多様な場所に配置された異なるデバイス内に記憶され、それら異なるデバイスによって実行される複数のアプリケーションを含む。１つ以上のオペレータワークステーション内に備わる、構成アプリケーションは、ユーザによる、プロセス制御モジュールの作成または変更、及びデータハイウェイを介した、これらのプロセス制御モジュールの、専用分散型コントローラへのダウンロードを可能にする。典型的には、これらの制御モジュールは、通信可能に相互接続された機能ブロックで構成され、これらの機能ブロックは、それに対する入力に基づき制御スキーム内で機能を実行し、出力を制御スキーム内の他の機能ブロックに提供するオブジェクト指向プログラミングプロトコル内のオブジェクトである。また、構成アプリケーションは、データをオペレータに対して表示するため、かつプロセス制御ルーチン内の設定点等の設定のオペレータによる変更を可能にするために閲覧アプリケーションが使用するオペレータインターフェイスを、構成設計者が作成または変更することを可能にし得る。各専用コントローラ、及び一部の場合においては、１つ以上のフィールドデバイスは、実際のプロセス制御機能を実装するために、それらに割り当てられてダウンロードされた制御モジュールを実行するそれぞれのコントローラアプリケーションを記憶及び実行する。閲覧アプリケーションは、１つ以上のオペレータワークステーション（またはオペレータワークステーション及びデータハイウェイと通信可能に接続された１つ以上のリモートコンピューティングデバイス）上で実行され得、この閲覧アプリケーションは、コントローラアプリケーションからデータハイウェイを経由してデータを受信し、ユーザインターフェースを使用してこのデータをプロセス制御システム設計者、オペレータ、またはユーザに表示して、オペレータのビュー、エンジニアのビュー、技術者のビュー等のいくつかの異なるビューのうちのいずれかを提供し得る。データヒストリアンアプリケーションが、典型的には、データハイウェイにわたって提供されたデータの一部またはすべてを収集及び記憶するデータヒストリアンデバイスに記憶され、それによって実行される一方で、構成データベースアプリケーションは、現在のプロセス制御ルーチン構成及びそれと関連付けられたデータを記憶するために、データハイウェイに取り付けられたさらに離れたコンピュータで実行され得る。あるいは、構成データベースは、構成アプリケーションと同じワークステーション内に配置されてもよい。
【０００７】
現在、構成アプリケーションは、機能ブロックテンプレートオブジェクト、及び一部の場合において制御モジュールテンプレートオブジェクト等の、テンプレートオブジェクトまたはアイテムのライブラリを典型的に含む。これらの構成アプリケーションは、プロセスプラントのための制御方策を構成するために、及びプロセスプラントのユーザインターフェースで表示ビューを提供するために使用される。テンプレートオブジェクトはすべて、それらと関連付けられたデフォルトプロパティ、設定、及び方法を有する。構成アプリケーションを使用するエンジニアは、これらのテンプレートオブジェクトを選択し、モジュール、例えば、制御モジュールを展開するために、選択したテンプレートオブジェクトのコピーを構成画面内に本質的に配置することができる。テンプレートオブジェクトを選択して構成画面内に配置するプロセス中に、エンジニアは、これらのオブジェクトの入力
及び出力を相互接続させ、プロセスプラント内の特定の用途のための特定制御モジュールを作成するためにそれらのパラメータ、名称、タグ、及び他のプロパティを変更する。１つ以上のこのような制御モジュールを作成した後、エンジニアは、作成されたモジュールをライブラリ内または構成データ記憶エリア内に記憶し得る。次いで、エンジニアは、制御モジュールをインスタンス化し（例えば、制御モジュールに対応する実行可能なファイルを作成する）、制御モジュールを、適切なコントローラ（複数可）またはフィールドデバイス、及びプロセスプラントの動作中の実行のための、他のプロセス要素に、ダウンロードすることができる。
【０００８】
その後、エンジニアは、一般的に、表示作成アプリケーション内で表示オブジェクトを選択及び構築することによって、プロセスプラント内でオペレータ、保守従業員等に対する１つ以上の表示を作成する。これらの表示は、ワークステーションのうちの１つ以上内でシステム基盤全体に典型的に実装され、プラント内の制御システムまたはデバイスの動作状態に関してオペレータまたは保守従業員に予め構成された表示を提供する。典型的には、これらの表示は、プロセスプラント内部のコントローラまたはデバイスによって生成されたアラームを受信及び表示するアラーム表示、コントローラ及び他のデバイスの動作状態がプロセスプラント内部で制御されていることを示す制御表示、プロセスプラント内部のデバイスの機能状態を示す保守表示等の形態を取る。これらの表示は、一般には、プロセス制御モジュール、デバイス、またはプロセスプラント内部の他のプロセス要素から受信された情報またはデータを、既知の方法で表示するように予め構成される。一部の既知のシステムにおいて、表示は、物理的要素または論理的要素と関連付けられた図形を各々有し、かつ物理的要素または論理的要素に関するデータを受信するために物理的要素または論理的要素に各々通信可能に紐付けられるオブジェクトの使用を通して作成される。オブジェクトは、例えば、タンクが半分満たされていることを例解する、流量センサによって測定された流量を例解する等のために、受信したデータに基づいて表示画面上で図形を変更し得る。
【０００９】
制御構成アプリケーションと同様に、表示作成アプリケーションは、タンク、バルブ、センサ、スライドバーのようなオペレータ制御ボタン、オン／オフスイッチ等のようなテンプレート図形表示アイテムを有し得、これらは、オペレータ表示、保守表示等を作成するために任意の所望の構成で画面上に配置され得る。テンプレート図形表示アイテムは、構成オブジェクトとともにテンプレートライブラリ内に記憶され得るか、または異なるテンプレートライブラリ内に記憶され得る。画面上に配置されるとき、個々の図形アイテムは、プロセスプラントの内部作業の一部の情報または表示を異なるユーザに提供する様式で画面上に相互接続され得る。しかしながら、図形表示をアニメーション化するために、表示作成者は、図形アイテムとプロセスプラント内の関連するデータソースとの間の通信リンクを特定することによって、センサによって測定されたデータまたはバルブ位置の指標等のようなプロセスプラント内で生成されたデータに図形アイテムの各々を手動で結び付けなければならない。このプロセスは、冗長であり、時間がかかり、エラーを伴い得る。さらに、表示が一度作成されると、それは、その構成及びレイアウト内で静止する。
【００１０】
制御構成アプリケーション内の制御テンプレートオブジェクト及び表示作成アプリケーション内の表示アイテムは、それらが多くの異なる制御モジュール及び図形表示を作成するためにコピー及び使用されることができるので、好都合であるが、プロセスプラント内の異なる設備及びディスプレイのための大量の同じ制御モジュール及び図形表示を作成する必要性がしばしば存在する。例えば、大規模プロセスプラントに対する多くの媒体は、同一の基本汎用制御モジュール及びディスプレイを使用して制御及び閲覧され得る同一または類似設備の大量のインスタンスを有する。
【００１１】
この問題に対処するために、米国特許第７，０４３，３１１号（この開示の全体は、本
明細書の参照によって本明細書に明白に組み込まれる）は、ユーザが大量の制御モジュール、ユニットもしくは設備モジュール、または表示モジュールを共通モジュールクラスオブジェクトから作成することを可能にするように、モジュールクラスオブジェクトとも呼ばれるクラスオブジェクト（また本明細書ではクラスオブジェクトまたはクラスと概して称される）を使用するプロセスプラント構成システムを開示する。これらの制御モジュール、設備モジュール、または表示モジュールは、モジュールクラスオブジェクトまたはクラスオブジェクトのインスタンスとして作成され、モジュールクラスオブジェクトの特徴及びプロパティのすべてを含み、これによって単一または共通クラスモジュールオブジェクトから複数の類似制御オブジェクト、設備オブジェクト、または表示オブジェクトを作成することを容易にする。インスタンスは、次に、それら自体の子オブジェクトを有し得、このためオブジェクトは、複数世代関係または複数レベル関係を有し得る。その後、モジュールクラスオブジェクトから作成されたインスタンス、子オブジェクト、またはマルチレベル子オブジェクトの各々は、そのそれぞれの親オブジェクトに対する変更を行って記憶することによって、自動的に変更され得る。例えば、モジュールインスタンスは、モジュールクラスオブジェクトへのそれらの接続を保持し、クラスモジュールが変更されるかまたは更新されると自動的に更新される。同様に、クラスオブジェクトではない親オブジェクトから作成された子オブジェクト及びマルチレベル子オブジェクトは、親オブジェクトに対する変更を行って記憶することによって、自動的に変更され得る。一実施形態では、子オブジェクトのうちの少なくともいくつかが、ライブラリから論理的及び／または物理的に分離されたシステム構成データ記憶エリアまたは他のデータ記憶エリアに記憶される。
【００１２】
しかしながら、例えば、プロセスプラントで使用される典型的な制御システムでは、定義されなければならない数百もの類似したアイテム（例えば、制御モジュールまたは表示要素）がある可能性がある。これらのアイテムは、例えば流れまたは圧力の制御に関連付けられた制御方策に加えて、図形表示においてこれらの制御方策を表現するために使用される表示コンポーネントを含む。ここで、これらの共通のアイテムを構成するためにクラスまたはモジュールクラスオブジェクトを使用する構成システムを実装することがきわめて典型的であり、構成システムは、モジュールクラスオブジェクトのライブラリを含み、ユーザが、プラントで使用するための任意の特定のモジュールクラスオブジェクトの多くのコピーまたはインスタンスを生産することを可能にする。これらのシステムでは、オブジェクトに対する修正は、最初にモジュールクラスオブジェクトになされなければならず、これはその後、これらの変更がモジュールクラスオブジェクトのインスタンス、子オブジェクト、及びマルチレベル子オブジェクト（もしあれば）のすべてに自動的に伝播されるようにする。実際、これらの構成システムは、モジュールインスタンスにおけるパラメータ値の変更等の小さな調整のみがモジュールインスタンスに直接なされることを可能にするように設計される。例えば、制御方策のための典型的なクラス挙動は、クラスアイテムのインスタンスが、パラメータレベルでのみ修正されることを可能にし、その特定のパラメータが変更を認められている場合のみ、モジュールクラス内部からのアクセスを可能にする。結果として、多くの異なるモジュールクラスオブジェクトは、小量または軽微な量だけ互いに異なるプロセスプラントアイテム（例えば、プラント設備）を構成するように開発されなければならない。不運なことに、これらのモジュールクラスオブジェクトがより一層定義されると、構成クラスオブジェクトを使用することによって得られる元の生産性ゲインは低減する。
【００１３】
またさらには、上記で言及されたように、クラスベースの構成アイテムを使用する現在の構成システムは、典型的には、クラスアイテムに変更がなされると、その変更がそのクラスのモジュールインスタンスのすべてに速やかに伝播されることを確実にするように設計される。この特徴は、構成システム内に設計されるが、これは、インスタンスが実際にそれらの定義に対するそれぞれ各自の親アイテムまたはオブジェクト（例えば、クラスア
イテムまたはオブジェクト）を共有するか、またはそれらを指し示すためである。この自動変更伝播特徴は、制御システム設計を設計の初期段階でより容易かつより効果的にするが、いったん制御システムが設置されプラント内で稼働開始すると、特定のモジュールクラスオブジェクトに関連付けられたインスタンスのすべてを同時に変更することが許容可能ではないか、または実際的ではない場合がある。重要なことには、所与のモジュールクラスオブジェクトは、典型的にはその寿命の一部として多くの変更を経験する。モジュールクラスオブジェクトが作成された後、モジュールクラスに対する後続の変更（構造的変更またはパラメータ値変更であり得る）は、結果として、それに対する変更をモジュールインスタンスに、１つ以上の子オブジェクトに、及び／または他のモジュールクラス、例えば派生されたモジュールクラスに分散する必要がある修正されたモジュールクラスをもたらす。しかしながら、実施上は、プラント内で稼働している各影響を受けた子オブジェクトは、実際のプロセス設備上で個々に試験されて検証される必要がある場合があり、そのため、ユーザは、モジュールクラスオブジェクトに対する変更を、数か月または数年にわたって遅らせ、そのクラスオブジェクトに対するモジュールインスタンスのすべてを更新するための適切な時間にわたって待機する必要がある場合がある。また、モジュールクラスオブジェクトに対する変更は、派生されたオブジェクトに自動的に分散されるため、モジュールクラスに対する単一の変更は、数百、場合によっては数千ものモジュールインスタンス及び子オブジェクトに影響する可能性がある。多くのプロセス産業は、プラント動作フェーズ中、プラントの多数のエリアに及んで必要とされる結果として起こる破壊的なダウンロードに対処できていない。結果として、制御システムは、初期にはモジュールクラスオブジェクトに紐付けされたモジュールインスタンスとともに設計されており、最終的にはシステムがプラント動作フェーズに入る前にクラスレス制御モジュールにコンバートされるこれらのインスタンスに対してのみ設計されている。
【００１４】
上述の様々な理由から、クラスインスタンスは、多くのケースでは、クラスインスタンスに変更がなされることを可能にするように、元のクラスオブジェクトから離脱されるかまたは分離され、これは結果として、インスタンスのすべてに対して速やかに伝播されることなく、新しいクラスモジュールを作成するか、またはクラスオブジェクトに変更がなされることを可能にする。しかしながら、この動作は、そもそもクラスベースの構成オブジェクトを使用する利点を打ち壊す。
【００１５】
クラス／インスタンス接続が切断されていないより小さなシステムであっても、クラス内のインスタンスのすべてに影響を及ぼすことなく、制御オブジェクトに対する新しい変更を定義しデバッグすることは依然として困難であるが、これは、一方では新しい変更をインスタンスに実装することが可能ではないためであり、かつ他方では、クラスオブジェクトに対する任意の変更がなされると、この変更がクラスオブジェクトの各インスタンスに自動的に適用されるためである。ここで再度、子オブジェクトのうちの１つ、例えば、インスタンスは、クラスオブジェクトから一時的に離脱されなければならず、それによって、新しい変更が設計され、インスタンス上で試験されることができるようにされる。このケースでは、変更は、いったん完了すると、クラスオブジェクトに対して手動でなされなければならず、ユーザは、試験のために使用されるインスタンスを一層し、インスタンスをその正しいクラスオブジェクトに再度取り付けなければならない。ゆえに、事実上、これらの問題に対処するために、ユーザは、試験を目的として元のクラスオブジェクトからより一層多くのクラスを離脱させることによって、インスタンス間のわずかなばらつきを処理するために別個のクラスオブジェクト全体を作成しなければならず、またはクラス概念を完全にあきらめなければならない。
【００１６】
またさらには、今日の市場で使用されているほとんどの構成システムは、制御システム用の図形表示に対するクラスを使用していない。典型的には、図形は、制御方策とは別個に定義され、１つの図形アイテムは、多数の異なる制御方策クラスとともに使用されるこ
とが多い。このように、特定の図形アイテムに対して変更がなされると、ユーザは、変更された図形アイテムが、制御方策インスタンスのすべて、表示のすべてとともに働くことを検証しなければならない。制御方策に対する修正がなされ、制御方策クラスが先に言及されたように拡散すると、各インスタンスに対する各図形アイテムは、検証される必要があり、これは、時間を浪費させるようにし、実際的ではない。
【００１７】
図形ユーティリティは、同様の図形アイテムを更新するために使用されることができるが、ユーティリティは、選択された図形アイテムのすべてを同一にする。このように、最終的には、このソリューションは、図形アイテムに対するクラスを使用することに類似している。さらに、図形にインスタンスの相違を設計することは、困難であり、プログラミングスキルを必要とする。多種多様なバリエーションが可能であり、実際には図形アイテムに予想されるため、特別なフォームを使用して、いずれのバリエーションが共通の図形オブジェクトから作成された図形表示アイテムの各々におけるオーバーライド構造に許可されているかまたは有効にされているかを特定するシステムを設計する必要がある。これらのバリエーションは、例えば変更を特定すること、例えばインスタンス上のユーザが、アイテムの一部に対する回転を定義し、何の文字列及び変数を表示に示さなければならないか、及びいずれのものがオプションであるか等を選択することを可能にすることを含む。この前もっての設計なくしては、図形オブジェクトがそれらにわずかな変更すら行うことはできない。不運なことに、図形アイテムの許容可能な変更を設計または予め特定することを試みる構成システムは、図形アイテムのバリエーションが非常に一般的であると、すぐに使用不可能になる。結果として、図形をコスト効率よく維持することは、制御システム内部での継続中の課題であり、図形を維持するステップが制御構成システムで使用される制御モジュールクラスに対してなされる変更と連係していなければならない場合は、悪化するのみである。
【００１８】
より一般的には、ユーザは、表示を再使用可能なグラフィカルコンポーネントに構成し、元のグラフィカル定義からなされる変更を目視することが可能であることを望む。加えて、ユーザは、定義に対し１つの場所で変更を行い、これらの変更をグラフィカル定義が使用される表示に適用し、その様々な表示になされる特定の変更を維持することが可能であることを望む。現在、いくつかの表示システムでは、表示コンポーネントは、ダイナモにグループ分けされることができ、これは、矩形等の基本形状と、アニメーション及びイベントハンドラ挙動で構成されたテキストブロックとの組み合わせである。これらの基本形状は、プラントの一部からの設備またはデータを表現するために、様々な組み合わせに構成されることができる。いくつかのダイナモは、典型的には、表示構成システムの一部としてボックス外に設けられ、一方他のダイナモは、プロジェクト設計によって作成及び維持され、さらに他のダイナモは、カスタマによって構成される。現在、これらのダイナモが表示上で使用されると、元のダイナモを使用する各インスタンスに対する表示内に、完全なコピーが置かれる。しかしながら、元のダイナモに戻るハードリンクはない。しかしながら、各インスタンスは、ダイナモの数個の態様、例えばアニメーション表現パス、位置方位、またはこの特定の表示が、表示要素が使用されるユーザインターフェースの現在の表示フィールド内に適合することを可能にすることが必要とされる他の視覚的態様を変更する場合がある。
【００１９】
この手法に対するいくつかの課題及び制限がある。概して言えば、カスタマは、金銭的コストを最小限にするよう努力し、かつ表示の品質及び信頼性を最大にするよう努力している。しかしながら、常に１つ以上の変更が、ダイナモ定義に対し必要である。マスタまたは元のダイナモに対する変更がなされた後、カスタマは、その特定のダイナモを使用するすべての表示を更新することによって、これらの変更を生産に導入する必要がある。しかしながら、変更されている元のダイナモとそのコピーとの間にハードリンクがないため、どこでダイナモが使用されているかを判定することは、重大な問題である。典型的には
、各作成されたダイナモは、ダイナモの名称及びバージョンを記憶するための文字列フィールドを含む。しかしながら、この技法を使用するカスタマすべてではないが、いずれにしてもこのフィールドは、編集セッション中にユーザによって不注意でクリアされるかまたは削除され、その結果オリジナルのダイナモへの名付けられた接続を失う可能性がある。また、既存のダイナモから新しいダイナモが作成され、この参照値が更新されない場合、文字列は、元のダイナモの名称及びバージョンに対する不正確な参照を有する。さらに、差異が表示に対する、またはダイナモに対する変更であった場合、ダイナモにおいて何が異なるのかを知ることのみが可能であり、その理由はわからない。このように、本来のダイナモに変更がなされる場合、ユーザにとって、特定の表示で使用されている特定のダイナモに変更を組み入れることが必要であるかを判定することは困難である。
【００２０】
またさらには、ユーザは、新しいダイナモに対するインスタンスを更新し、インスタンス特有の変更を保持することができるが、ユーザは、典型的には、いずれの変更が新しいマスタにあり、いずれがインスタンス特有であるかがわからず、そのため、表示アイテム内部のいずれの差異が適所に残されるべきかを判定できない。現在、ダイナモの新しいバージョンに更新することは、表示上に構成された値を置換するためのダイナモの完全な再コピーを必要とする。このプロセスは、インスタンス専用の表示アイテムに対するあらゆる変更を上書きする。結果として、ユーザはその後、表示アイテムまたはインスタンスに対し先になされたすべての変更を手動で再度適用しなければならず、ユーザが変更のうちのいくつかを忘れた場合、これらの変更は失われる。この動作は、オペレータ表示の品質に悪影響を及ぼし、また、手動プロセスを強いるためさらに長い時間がかかる。またさらには、元となるダイナモレベルは、ただ１つのレベル深さである。結果として、ダイナモは、他のダイナモからではなく、基本形状からのみ構築されることができ、これが、他のダイナモの基礎として使用されるダイナモの設定を構築することを妨げる。
【発明の概要】
【００２１】
構成システムは、図形要素の属性のプロパティ、例えば、図形要素の形状、動的挙動等を構成するための簡略化された構成ペインまたはフォームを使用する。簡略化された構成ペインは、オブジェクトとして設けられ、これはスクリプトを使用する代わりに、他のオブジェクト例えば図形要素オブジェクトに構成され、発行され及び参照することができる。このように、構成要素は、構成システムにおいてすべての可能なプロパティを曝露するのではなく、特定の図形要素に最も一般的に使用されるプロパティを含むように構成され得、これは数千もの数があり得る。例えば、バルブに対する図形要素オブジェクトは、特定の形状及び指定を有し得る。そのような図形要素に対する共通のプロパティは、形状に対する充填色、形状に対する線幅、フォント、フォントサイズ及び動的挙動を含む。バルブ図形要素に対する構成要素は、充填色、線幅、フォント、フォントサイズ及び動的挙動に対するオプションのセットを含むように構成され得る。構成要素がインスタンス化されると、ユーザは、バルブ図形要素に対するプロパティを構成するためのオプションの設定を提示する。図形要素オブジェクトは、構成要素オブジェクトにリンクされ結び付けられ、それによって、インスタンス化されると、図形要素は、構成要素オブジェクトにおいて定義されたプロパティとともに表示される。そして、構成要素オブジェクトに対する後続の変更は、構成要素オブジェクトにリンクされた図形要素オブジェクトに伝播される。
【図面の簡単な説明】
【００２２】
【図１】プロセスプラントまたはプロセス制御システム内に配置された例示的な分散型プロセス制御ネットワークのブロック図であり、プロセスプラントまたはプロセス制御システムに対する制御及び表示活動を構成するために、モジュールクラスオブジェクトを使用する構成アプリケーションを実装するワークステーションを含んでいる。
【図２】図１の反応装置ユニットの図である。
【図３】図２の反応装置ユニットで使用される集計器設備実体の図である。
【図４】図２の反応装置ユニットで使用される出口バルブシステムの図である。
【図５】モジュールクラスオブジェクトと、ユニット、設備、制御、及び表示タイプのモジュールクラスオブジェクトに対する関連するモジュールオブジェクトとの間の相互関係を例解する例示的な論理図である。
【図６】反応装置ユニットモジュールクラスオブジェクトの例示的な論理図であり、これは図１のプラント内部の反応装置に対する構成活動を行うために使用されることができる。
【図７】構成オペレータによって、モジュールクラスオブジェクトを使用してプロセスプラントを構成するために使用され得る構成画面の一例の説明である。
【図７Ａ】構成オペレータによって、図形要素を構成するためのユーザインターフェースを構成するために使用され得る構成画面の第２の例の説明である。
【図７Ｂ】構成オペレータによって、図７Ａの構成されたユーザインターフェースを使用して図形要素を構成するために使用され得る構成画面の第３の例の説明である。
【図８】ユーザが、図１のプロセス制御システムのライブラリに記憶されたモジュールオブジェクトを修正する一例のシナリオのブロック図である。
【図９】ユーザが、図１のプロセス制御システムのライブラリに記憶されたモジュールオブジェクトを修正する第２の例のシナリオのブロック図である。
【図１０】付加的なアクションを含む、図９の第２の例のシナリオのブロック図である。
【図１１】ユーザが、図１のプロセス制御システムのシステム構成データ記憶エリアに記憶されたモジュールオブジェクトを修正する第３の例のシナリオのブロック図である。
【図１２】例示のバルブグラフィカル要素の３つの可能なビューを図示する。
【図１３】例示の形状使用パターンの図を図示する。
【図１４】例示のネストされた形状使用パターンのクラス図を図示する。
【図１５】抽出された、ネストされた形状使用の一例を図示する。
【図１６】例示の派生パターンの図を図示する。
【図１７】ネストされた派生パターンの一例の図を図示する。
【図１８】定義に基づいて作成された形状使用の一例を図示する。
【図１９】使用パターンに適用されたフィールド値上書き微調整の一例を図示する。
【図２０】派生パターンに適用されたフィールド値上書き微調整の一例を図示する。
【図２１】多数のレベルでのオブジェクトに対する多数の修正または微調整の一例を図示する。
【００２３】
実施形態の説明
ここで図１を参照すると、プロセスプラント１０は、例えば、イーサーネット接続またはバス１５を介して大量のワークステーション１４に連結された１つ以上のプロセスコントローラ１２を含む。コントローラ１２はまた、複数の組の通信線またはバス１８を介してプロセスプラント１０内のデバイスまたは設備に連結され、コントローラ１２ａに接続された一組の通信線１８のみが、図１には例解されている。通信線またはバス１８は、例えば、有線接続、無線接続、または有線接続及び無線接続の組み合わせであり得る。コントローラ１２は、Ｆｉｓｈｅｒ−Ｒｏｓｅｍｏｕｎｔ  Ｓｙｓｔｅｍｓ，Ｉｎｃ．によって販売されているＤｅｌｔａＶ（商標）コントローラを使用して、あくまで一例として実装され得るが、プロセスプラント１０全体に分散されたフィールドデバイス及びフィールドデバイス内の機能ブロック等の制御要素と通信することができることで、１つ以上のプロセス制御ルーチン１９を実行し、これによってプロセスプラント１０またはプロセスプラント１０内で動作する１つ以上のプロセスの所望の制御を実装する。ワークステーション１４（これは、例えばパーソナルコンピュータであってもよい）を１人以上の構成エンジニアによって使用して、コントローラ１２によって実行されるようにプロセス制御ルーチン１９を、かつワークステーション１４または他のコンピュータによって実行されるよ
うに表示ルーチンを設計し、コントローラ１２と通信して、そのようなプロセス制御ルーチン１９をコントローラ１２にダウンロードし得る。さらに、ワークステーション１４は、プロセスプラント１０の動作中にプロセスプラント１０またはその要素に属する情報を受信及び表示する表示ルーチンを実行し得る。
【００２４】
ワークステーション１４の各々は、構成設計アプリケーション、及び表示アプリケーションまたは閲覧アプリケーション等のアプリケーションを記憶するための、ならびにプロセスプラント１０の構成に属する構成データ等のデータを記憶するためのメモリ２０を含む。また、ワークステーション１４の各々は、構成エンジニアが、プロセス制御ルーチン及び他のルーチンを設計し、これらのプロセス制御ルーチンをコントローラ１２に、もしくは他のコンピュータにダウンロードするか、または情報を収集してそれをプロセスプラント１０の動作中にユーザに表示することを可能にするためのアプリケーションを実行するプロセッサ２１を含む。いくつかの実施形態において、遠隔コンピューティングデバイスは、構成エンジニアがワークステーション１４から遠隔でアプリケーションを実行し得るように、ワークステーション１４と通信可能に接続している（例えば、ネットワークまたはウェブ基盤インターフェースを介して）。
【００２５】
またさらに、コントローラ１２の各々は、制御アプリケーション及び通信アプリケーションを記憶するメモリ２２、ならびに任意の既知の様式で制御及び通信アプリケーションを実行するプロセッサ２４を含む。１つの場合において、コントローラ１２の各々は、複数の異なる、独立して実行される制御モジュールまたはブロック１９を使用して制御方策を実装するコントローラアプリケーションを記憶及び実行する。制御モジュール１９は、機能ブロックと一般に称されるものから各々構成され得、各機能ブロックは、制御ルーチン全体の一部またはサブルーチンであり、例えば、プロセスプラント１０によって実行される１つ以上のプロセスの動作を制御するために、プロセスプラント１０内のプロセス制御ループを実装するように他の機能ブロックと併せて動作する（リンクと呼ばれる通信を介して）。
【００２６】
公知のように、機能ブロックは、オブジェクト指向プログラミングプロトコル内のオブジェクトであり得るが、送信機、センサ、または他のプロセスパラメータ測定デバイス等のフィールドデバイスと関連付けられるような入力機能か、ＰＩＤ、ファジー論理等の制御を実行する制御ルーチンと関連付けられるような制御機能か、またはプロセスプラント１０内の一部の物理的機能を実行するために、バルブまたは他のフィールドデバイス等の一部のデバイスの動作を制御する出力機能のうちの１つを典型的に実行する。当然のことながら、ハイブリッド及び他のタイプの複合型機能ブロック、例えばモデル予測コントローラ（ＭＰＣ）、オプティマイザ等が存在する。Ｆｉｅｌｄｂｕｓプロトコル及びＤｅｌｔａＶシステムプロトコルは、オブジェクト指向プログラミングプロトコルで設計及び実施される制御モジュール及び機能ブロックを使用するが、制御モジュールは、例えば逐次機能チャート、ラダー論理等を含む任意の所望の制御プログラミング方式を使用して設計することができ、機能ブロックまたは任意の他の特定のプログラミング技法を使用して設計することに限定されない。
【００２７】
ワークステーション１４は、プロセス制御ルーチン１９内の制御要素を例解する表示画面及びこれらの制御要素が、プロセスプラント１０の制御を提供するように構成される様式を介して、コントローラ１２内のプロセス制御ルーチン１９の図形描写をユーザに提供し得る。図１のシステムにおいて、構成データベース２５は、コントローラ１２及びワークステーション１４によって使用される構成データを記憶するように、かつ一部の場合において、将来の使用のためにプロセスプラント１０内で生成されたデータを収集及び記憶することによってデータヒストリアンとして働くように、イーサーネットバス１５に接続される。一実施形態において、構成データベース２５は、ライブラリアイテム（例えば、
テンプレート及びクラスモジュール）及び構成データに対応するシステム構成アイテム（例えば、ライブラリアイテムから作成されたオブジェクト）を含み得る。このように、構成データベース２５は、ライブラリデータ記憶エリアとシステム構成記憶エリアとに論理的及び／または物理的に仕切られ得る。
【００２８】
図１に例解されるプロセスプラント１０において、コントローラ１２ａは、バス１８を介して、本明細書では反応装置＿０１、反応装置＿０２、及び反応装置＿０３と称される３組の類似構成の反応装置（プラント１０内の複製設備である）に通信可能に接続される。反応装置＿０１は、反応装置容器または反応装置タンク１００、反応装置容器１００内に酸、アルカリ、及び水をそれぞれ提供する流体入口ラインを制御するために接続された３つの入力バルブシステム（設備実体である）１０１、１０２及び１０３、ならびに反応装置容器１００の流体流出を制御するために接続された出口バルブシステム１０４を含む。センサ１０５は、レベルセンサ、温度センサ、圧力センサ等の任意の所望のタイプのセンサであり得るが、反応装置容器１００内またはその近傍に配設される。この考察の目的に対して、センサ１０５は、レベルセンサであると仮定される。さらに、共有ヘッダバルブシステム１１０は、反応装置の各々、反応装置＿０１、反応装置＿０２、及び反応装置＿０３の上流の水ライン上に接続されて、これらの反応装置の各々への水の流れを制御するためのマスタ制御を提供する。
【００２９】
同様に、反応装置＿０２は、反応装置容器２００、３つの入力バルブシステム２０１、２０２及び２０３、出口バルブシステム２０４、ならびにレベルセンサ２０５を含み、一方で反応装置＿０３は、反応装置容器３００、３つの入力バルブシステム３０１、３０２及び３０３、出口バルブシステム３０４ならびにレベルセンサ３０５を含む。図１の例において、反応装置である、反応装置＿０１、反応装置＿０２、及び反応装置＿０３は、入力バルブシステム１０１、２０１、及び３０１が酸を提供すること、入力バルブシステム１０２、２０２、及び３０２がアルカリを提供すること、ならびに入力バルブシステム１０３、２０３、及び３０３が、共有水ヘッダ１１０と併せて、水を反応装置容器１００に提供することによって、塩を生成し得る。出口バルブシステム１０４、２０４、及び３０４は、図１の右に導かれる流れラインの外に生成物を送り、図１の下に導かれる流れラインの外に廃棄物または他の望まれない物質を排出するように動作され得る。
【００３０】
コントローラ１２ａは、反応装置ユニット、反応装置−０１、反応装置＿０２、及び反応装置＿０３に関する１つ以上の動作を実行するためにこれらの要素の動作を制御するように、バス１８を介してバルブシステム１０１〜１０４、１１０、２０１〜２０４及び３０１〜３０４、ならびにセンサ１０５、２０５及び３０５に通信可能に連結される。このような動作は、概してフェーズと呼ばれるが、例えば、反応装置容器１００、２００、３００を充填すること、反応装置容器１００、２００、３００内の物質を加熱すること、反応装置容器１００、２００、３００の廃棄物を放出すること、反応装置容器１００、２００、３００を洗浄すること等を含み得る。
【００３１】
図１に図示されたバルブ、センサ、及び他の機器は、例えばＦｉｅｌｄｂｕｓデバイス、標準的４−２０ｍａデバイス、ＨＡＲＴデバイス、無線ＨＡＲＴデバイス等を含む任意の所望の種類またはタイプの機器であってもよく、任意の既知または所望の通信プロトコル、例えばＦｉｅｌｄｂｕｓプロトコル、ＨＡＲＴプロトコル、無線ＨＡＲＴプロトコルまたは他の無線プロトコル、４−２０ｍａアナログプロトコル等を使用して、コントローラ１２（例えば、コントローラ１２または１２ａのいずれか）と通信し得る。概して、プロセス環境内部に位置し、プロセスの制御に直接影響する機能（例えば、バルブの開閉等の物理的機能、制御アルゴリズムまたはループで使用される測定機能、及び／または他の機能）を行うデバイスは、本明細書では「フィールドデバイス」と称される。
【００３２】
またさらに、他のタイプのデバイスは、本明細書で考察される原理によって、コントローラ１２に接続され、それによって制御され得る。例えば、コントローラ１２は、１つ以上の入力／出力（Ｉ／Ｏ）デバイス（図示せず）に接続され得、これは次に、１つ以上のフィールドデバイスに接続され得る。Ｉ／Ｏデバイスは、典型的には、１つ以上のフィールドデバイス、コントローラ１２、及び／またはプロセス制御システム間の通信を可能にするように、コントローラ１２によって使用される。このように、Ｉ／Ｏデバイスはまた、プロセスを制御するために制御アルゴリズムまたはループの直接的な実行の参加者であり得る。  したがって、コントローラ、Ｉ／Ｏデバイス、及びフィールドデバイスは、本明細書において、概して及び分類上、「プロセス制御デバイス（ｐｒｏｃｅｓｓ  ｃｏｎｔｒｏｌ  ｄｅｖｉｃｅ）」と称される。当然のことながら、「プロセス制御デバイス」という用語は、コントローラ、Ｉ／Ｏデバイス、及びフィールドデバイスのみに限定されず、プロセスプラントまたはプロセス制御システム内でプロセスを制御するために実行されることになる制御アルゴリズム、及び／またはループに参加するか、もしくはそれらに対して要求される他のデバイスも含み得る。
【００３３】
加えて、他の数及びタイプのコントローラが、プロセスプラント１０と関連付けられた他のデバイスまたはエリアを制御するためにプラント１０内で接続され得、このような追加のコントローラの動作は、任意の所望の様式で図１に例解されたコントローラ１２ａの動作と調整され得る。いくつかの実施形態において、図１のプロセスプラント１０は、プラント１０内または外等のアクセスポイント、プラント１０内の無線ネットワーク及び有線ネットワーク間のゲートウェイ、他のネットワークへのゲートウェイ、中継器、ルータ等のような、プロセスプラント１０内の無線通信（図示せず）のための１つ以上のノードを含む。無線通信のためのこれらのノードは、コントローラ１２、ワークステーション１４、構成データベース２５、フィールドデバイス、他の無線有効ノード、及び他のデータベースまたはデータ記憶デバイスに通信可能に連結され得る（有線プロトコル、無線プロトコル、またはそれらの組み合わせを使用して）。
【００３４】
一般的に述べると、図１のプロセスプラント１０は、例えば、ワークステーション１４またはコントローラ１２ａのうちの一方がバッチ実行ルーチンを実行するバッチプロセスを実装するように使用され得、バッチ実行ルーチンは、特定タイプの塩等の生成物を生成するために必要とされる一連の異なるステップ（一般にフェーズと称される）を実行するために１つ以上の反応装置ユニット（及び他の設備）の動作を指図する高位制御ルーチンである。異なるフェーズを実装するために、バッチ実行ルーチンは、実行されることになるステップ、ステップと関連付けられた量及び時間、ならびにステップの順序を特定する、レシピと一般に称されるものを使用する。１つのレシピに対するステップは、例えば、適切な物質または成分で反応装置容器を充填すること、反応装置容器内で物質を混合すること、一定時間、一定温度に反応装置容器内の物質を加熱すること、反応装置容器を空にすること、及び次いで、次のバッチ運転に備えて準備するために反応装置容器を洗浄することを含み得る。ステップの各々は、バッチ運転のフェーズを定義し、コントローラ１２ａ内のバッチ実行ルーチンは、これらのフェーズの各々１つに対して異なる制御アルゴリズムを実行する。当然のことながら、特定の物質、物質の量、加熱温度、時間等は、異なるレシピについて異なり得、結果的に、これらのパラメータは、製造または生成されている生成物及び使用されているレシピに応じて、バッチ運転ごとに変化し得る。当業者には、制御ルーチン及び構成は、本明細書では図１に図示された反応装置内でのバッチ実行のために説明されているが、制御ルーチンは、他の所望のデバイスを制御して、任意の他の所望のバッチプロセス実行を行うか、または所望であれば、継続的なプロセス実行を行うために使用され得ることが理解されよう。
【００３５】
また理解されるように、バッチプロセスの同じフェーズまたはステップが、同じ時間または異なる時間に図１の異なる反応装置ユニットの各々に実装され得る。さらに、図１の
反応装置ユニットが同じ数及びタイプの設備を概して含むので、特定フェーズのための同じ包括的フェーズ制御ルーチンは、この包括的フェーズ制御ルーチンが、異なる反応装置ユニットと関連付けられた異なるハードウェアまたは設備を制御するために修正される必要があることを除いて、異なる反応装置ユニットの各々を制御するために使用され得る。例えば、反応装置＿０１に対する充填フェーズ（反応装置ユニットが充填される）を実装するために、充填制御ルーチンが、一定時間、例えば、容器１００が充填されたことをレベルメータ１０５が検知するまで、入力バルブシステム１０１、１０２及び１０３と関連付けられた１つ以上のバルブを開くことになる。しかしながら、この同一制御ルーチンは、バルブシステム１０１、１０２及び１０３の代わりにバルブシステム２０１、２０２及び２０３と関連付けられたものとなる入力バルブの指定を単に変更することによって、かつレベルメータ１０５の代わりにレベルメータ２０５になるようにレベルメータの指定を変更することによって、反応装置＿０２に対する充填フェーズを実装するために使用され得る。
【００３６】
図２は、図１の反応装置のうちの１つ、特に反応装置＿０１をより詳細に図示する。図１に同様に図示されるように、図２の反応装置＿０１は、反応装置タンク１００と、タンク１００内への酸、アルカリ、及び水の入力のための入力バルブシステム１０１、１０２、１０３及び１１０と、タンク１００及びレベルセンサ１０５から物質を除去するための出口バルブシステム１０４とを含む。図２にさらに図示されるように、入力バルブシステム１０１、１０２、及び１１０の各々は、集計器と称される同様の設備実体を使用し、これは、互いに対して平行に配設された２つのバルブと、２つのバルブの下流に配設された流量測定装置とを含む。入力バルブシステム１０１の集計器は、図３にさらに詳細に図示され、粗バルブ１０１ａという名称のオンオフ型バルブと、精密バルブ１０１ｂという名称のオンオフ型バルブと、バルブ１０１ａ及び１０１ｂの下流に配設された流量計１０１ｃとを含む。集計器１０１は、流量計１０１ｃによってなされた測定値を使用して酸の入力を制御するために使用される、集計器と関連付けられた１つ以上の制御モジュールまたはルーチンを有する。第１のそのような制御ルーチンは、粗バルブ１０１ａ及び精密バルブ１０１ｂを使用して、集計器１０１を通して高速な流れ制御を行い得、一方で第２のそのような制御ルーチンは、粗バルブ１０１ａ及び精密バルブ１０１ｂを使用して、集計器１０１を通して正確な流れ制御を行い得る。
【００３７】
図２から理解されるように、アルカリ入力バルブシステム１０２は、粗バルブ１０２ａ、精密バルブ１０２ｂ、流量計１０２ｃを有する集計器を含み、共有の水入力バルブシステム１１０は、粗バルブ１１０ａ、精密バルブ１１０ｂ、及び流量計１１０ｃを含む。集計器１０１、１０２、及び１１０の各々は、それらの内部に同じタイプの複製設備を有するが、それらは、同じユニット、すなわち反応装置＿０１ユニット上の異なる場所で使用される。同じように、反応装置＿０２及び反応装置＿０３もまた、入力バルブシステム２０１、２０２、３０１及び３０２での集計を含む。
【００３８】
同様に、出口バルブシステム１０４は、３つのバルブを含む別の複製設備である。図４に最もよく図示されるように、出口バルブシステム１０４は、タンク１００から放出されるあらゆる物質に対して開放されることになっている主出口バルブ１０４ａと、タンク１００から生成物を送り出すために主出口バルブ１０４ａとともに開放されることになっている生成物バルブ１０４ｂと、タンク１００から排出または保護システム内に物質、例えば廃棄物、洗浄液等を排出するために、主出口バルブ１０４ａとともに開放されることになっている排出バルブ１０４ｃとを含む。当然ながら、１つ以上の制御ルーチンは、出口バルブシステム１０４に関連付けられ、タンク１００を閉じるか、タンク１００を排出するか、またはタンク１００から生成物を空けるように、バルブ１０４ａ、１０４ｂ及び１０４ｃのステートを制御する。
【００３９】
プロセス構成を作成し変更するために、図１のワークステーション１４のうちの１つに記憶された構成アプリケーション５０は、プロセス制御プラント１０の構成に使用されるモジュールクラスオブジェクト５２のセットを含む。モジュールクラスオブジェクトは、大量の複製設備組を有するプラントを構成するときに特に有用である。一般的に述べると、異なるモジュールクラスオブジェクト５２は、プロセスプラント１０内部で複製または使用される異なるタイプの物理ユニットまたは機器の各々に対して、プロセスプラント１０内部で複製または使用される制御活動のタイプの各々に対して、プロセスプラント１０内部で複製または使用される異なるタイプの表示アプリケーションの各々等に対して作成することができる。いったん作成されると、モジュールクラスオブジェクト５２を使用して、モジュールクラスオブジェクトに対応するプロセスプラント１０の要素を構成することができる。
【００４０】
モジュールクラスオブジェクト５２は、本質的に包括的バージョンのプロセス実体であり、かつ任意の特定プロセス実体に紐付けられていないが、それらと関連付けられたより低位のオブジェクトまたはインスタンス５３、５４、５５及び５６（本明細書ではモジュールオブジェクトまたはモジュールブロックと称される）を有し得る。本明細書で使用される「プロセス実体（ｐｒｏｃｅｓｓ  ｅｎｔｉｔｙ）」という用語は、一体的に識別、分類、またはグループ化され得るプロセスプラント１０または環境のサブセットを概して指す。例えば、プロセス実体は、プラントの物理的エリア、設備のタイプ、制御機能のタイプ、関連する表示グループ、または他の分類であり得る。プロセス実体は、他のプロセス実体を含み得る。例えば、「バルブ（ｖａｌｖｅ）」に対応するプロセス実体は、「ガスバルブ（ｇａｓ  ｖａｌｖｅ）」または「水バルブ（ｗａｔｅｒ  ｖａｌｖｅ）」等のより低位のプロセス実体を含み得、より低位のプロセス実体「水バルブ」は、「単一方向水バルブ（ｕｎｉｄｉｒｅｃｔｉｏｎａｌ  ｗａｔｅｒ  ｖａｌｖｅ）」及び「両方向水バルブ（ｂｉｄｉｒｅｃｔｉｏｎａｌ  ｗａｔｅｒ  ｖａｌｖｅ）」等のさらに低位のプロセス実体を含み得る。
【００４１】
上で言及されるように、本明細書で使用される際、モジュールクラスオブジェクトは、概して、プロセス実体の包括的または分類上の指標である。モジュールオブジェクト５３、５４、５５、５６は、モジュールクラスオブジェクトから作成または派生され得、したがって作成元または派生元のモジュールクラスオブジェクトと同じ構造及びプロパティを受け継ぎ得る。しかしながら、各モジュールオブジェクトは、プロセスプラント１０内の特定の実体に紐付けられる。したがって、単一モジュールクラスオブジェクト５２は、特定タイプの反応装置ユニットを表すように作成され得るが（それらの反応装置ユニットがプラント１０内に存在する数にかかわらず）、一方で異なるモジュールオブジェクト５３は、プラント１０内に実際に存在するそのタイプの異なる反応装置ユニットの各々に対して存在し得るか、または作成され得る。
【００４２】
モジュールクラスオブジェクトから作成または派生されたモジュールオブジェクトは、モジュールクラスオブジェクトと関連付けられ、かつモジュールクラスオブジェクトによって所有される。結果として、モジュールクラスオブジェクトになされた変更は、そのモジュールクラスオブジェクトと関連付けられたモジュールオブジェクトの各々内で反映され得るか、またはそれらに伝播され得る。それゆえに、多数のモジュールオブジェクトが特定のモジュールクラスオブジェクトから作成されているとともに、異なるモジュールオブジェクトの各々が異なるプロセス実体に紐付けられているとき、異なるモジュールオブジェクトの各々は、モジュールクラスオブジェクトを単純に変更し、かつ変更を関連するモジュールオブジェクトに下位に伝播させることによって変更され得る。考察されるように、伝播は、モジュールクラスオブジェクトが変更されたときに自動的に生じ得るか、または伝播の時間は選択され得る。
【００４３】
図１のモジュールクラスオブジェクト５２は、オブジェクト指向プログラミング環境またはオブジェクト指向プログラミング言語でオブジェクトと一般に称されるものであり得る。結果として、これらのオブジェクトは、他のオブジェクトを所有するか、またはそれらを参照する能力を有する。一般的に述べると、モジュールクラスオブジェクト５２は、制御ルーチン、設備、またはプロセス実体と関連付けられた他の要素等の個々の要素の指標または定義とともに、これらの個々の要素が互いに相互作用する様式、例えば、物理的要素が相互接続される方式、または論理的要素が物理的要素と併せて動作する方式の定義または指標を含み得る、高位のオブジェクトである。言い換えると、モジュールクラスオブジェクトは、例えば、オブジェクト指向プログラミング言語内のオブジェクトであり得、これは、プロセスプラント１０内の設備、制御要素、ディスプレイ等の特定の１つまたはグループの制御及び閲覧のための基礎を提供し、プロセス制御プラント１０内の異なる複製設備を構成するために使用されることになるその要素の多くのインスタンスを作成するために有用であり得る。
【００４４】
基本的に、各モジュールクラスオブジェクトは、異なる制御アプリケーション及び／または表示アプリケーションのすべての形式のプロセス実体の包括的定義、またはその実体を制御するためにコントローラ１２によって、もしくはその実体に関する表示活動を実行するためにワークステーション１４によって使用されることになるその実体に適用可能なルーチンを含む構成コンテナである。モジュールクラスオブジェクトは、任意の性質のプロセス実体、例えばユニット、機器、制御実体、表示アプリケーション等を表し得る。プロセスプラント１０の構成中、モジュールクラスオブジェクトを使用して、任意の数の異なるプロセス実体に対して、モジュールクラスオブジェクトによって提供された定義に適合するプロセス実体の構成インスタンスを作成してもよく、各構成インスタンス（モジュールクラスオブジェクトから作成されたモジュールオブジェクト）は、異なる実際のプロセス実体に関連付けられるかまたは紐付けられる。これらの異なるモジュールオブジェクトは、他のルーチンの中でも、プロセスプラント１０内部に配設されたような特定のプロセス実体に結び付けられた制御ルーチン及び／または表示ルーチンを含み、これらの制御ルーチンは、図１のコントローラ１２にダウンロードされその内部で使用されて、プロセス実体上で実際の制御活動を行うことが可能であり、表示ルーチンは、ワークステーション１４においてダウンロードされて、プロセスプラント１０の動作中、実体に対して実際の表示活動を行うことが可能である。
【００４５】
異なるタイプのモジュールクラスオブジェクトは、異なる範囲のプロセス実体を反映し得、それゆえに、異なる範囲のプロセス実体上またはそれに関して動作するように構成された制御ルーチン及び／または表示ルーチンを含有する。ユニット等のプロセス実体の範囲がより広くなればなるほど、より多くの制御ルーチン及び／または表示ルーチンがモジュールクラスオブジェクトと典型的に関連付けられることになり、それらのモジュールクラスオブジェクトを使用してプラントの区分を構成することがより簡単になる。しかしながら、モジュールクラスオブジェクトと関連付けられたプロセス実体の範囲が広くなればなるほど、プロセスがその範囲で複製設備を含むことになる見込みが低下し、したがって、モジュールクラスオブジェクトが大規模に有用である見込みが低下する。逆に、モジュールクラスオブジェクトと関連付けられたプロセス実体の範囲が狭くなればなるほど、モジュールクラスオブジェクトがプラントの様々な異なる位置で使用され得る見込みが増加するが、任意の特定インスタンス内でそのモジュールクラスオブジェクトを使用するときに実行される構成の量が低下する。いずれにしても、モジュールクラスオブジェクトは、構成が制御モジュールレベルよりも高位の抽象概念で異なる複製設備に対して実行されることを可能にし、これは、特に、ユニットレベル等の広い範囲のモジュールクラスオブジェクトを使用するときに、複製ユニット及び他の設備を含むプロセスプラントを構成することをより簡単かつより短時間で行う。
【００４６】
その結果、複数レベルのオブジェクトが可能である。例えば、モジュールクラスオブジェクト５２から作成されたインスタンス５３、５４、５５、５６に対応するオブジェクト（例えば、「インスタンスオブジェクト（ｉｎｓｔａｎｃｅ  ｏｂｊｅｃｔ）」）は、それ自体が一組の１つ以上のインスタンス子オブジェクト（図示せず）に対する親オブジェクトであり得る。インスタンス子オブジェクトの１つ以上は、さらに別のレベルの子オブジェクトに対する親オブジェクト等であり得る。本明細書で使用される際、「プロセス要素オブジェクト（ｐｒｏｃｅｓｓ  ｅｌｅｍｅｎｔ  ｏｂｊｅｃｔ）」は、概して、バルブ、センサ、図形形状、またはコントローラ等の構成がダウンロードされる要素のプロセス実体に対応する最低位のオブジェクトを指す。したがって、プロセス要素オブジェクトは、子オブジェクトを有しないインスタンスオブジェクトであり得る。
【００４７】
一例において、プロセス制御システムを構成するとき、構成エンジニアは、図１の異なる反応装置用等の、プロセスプラント内で複製された異なる要素に対する単一モジュールクラスオブジェクトを作成し得る。その後、構成エンジニアは、図１の実際の反応装置の各々に対するモジュールクラスオブジェクト（モジュールオブジェクト）のインスタンスを作成し得る。各々このように作成されたモジュールオブジェクトは、図１の反応装置のうちの１つを動作させるようにコントローラ１２ａによって使用される制御ルーチンを含むことになり、図１の反応装置のうちの１つ内の設備に具体的に紐付けられるか、または結び付けられる。これらの制御ルーチンは、その後、コントローラ１２ａにダウンロードされ、プロセスプラント１０の動作中に使用することができる。しかしながら、一度作成されると、モジュールオブジェクトの各々は、モジュールクラスオブジェクトに依然として紐付けられ、モジュールオブジェクト等へのアクセスを提供または拒絶するために、変更されることになるモジュールクラスオブジェクトによって制御され得る。
【００４８】
プロセスプラント内で構成活動を実行するためにプロセスプラント内で作成または使用され得る、多くの異なる可能なタイプのモジュールクラスオブジェクトが存在するが、例として本明細書で考察される４つの具体的なタイプは、ユニットモジュールクラスオブジェクト、設備モジュールクラスオブジェクト、制御モジュールクラスオブジェクト、及び表示モジュールクラスオブジェクトが挙げられる。一般的に述べると、各々異なるタイプのモジュールクラスオブジェクトは、プロセスプラント１０内の異なる範囲の制御または使用に対して設計または意図される。ユニットモジュールクラスオブジェクトは、プロセスプラント内の設備の幅広い範囲に対する制御活動を表すために（及び構成するために）使用されることが意図される。特に、ユニットモジュールクラスオブジェクトは、例えば、図１の反応装置等の、一部の既知の様式で互いに共同して機能する個々の要素を有する相互関係のある一組の設備（典型的に複製設備）をモデル化すること、またはそれらを構成するために使用されることが意図される。
【００４９】
設備モジュールクラスオブジェクトは、プロセスプラント内のより狭い範囲の物理的設備に対する制御活動を表すために（及び構成するために）使用されることが意図される。設備モジュールクラスオブジェクトと関連付けられた設備は、概して、ユニットのサブシステムを作成するバルブ、流量計等のような、１つ以上の物理的実体であり、設備モジュールクラスオブジェクトは、設備の部品上で実行されることになる、コマンド駆動型アルゴリズム（ＣＤＡ）、状態駆動型アルゴリズム（ＳＤＡ）、シーケンシャルファンクションチャート（ＳＦＣ）アルゴリズム、機能ブロック図（ＦＢＤ）アルゴリズム、フェーズアルゴリズム等であり得る、１つ以上のコマンドまたはアルゴリズムを含み得る。したがって、設備モジュールクラスオブジェクトは、ユニット内で使用されるその設備上で基礎的な一組の機能を提供するためにユニット内の複数低位構成要素または実体の制御を構成することを目的とする。既知のように、コマンド駆動型アルゴリズム（コマンド駆動型制御論理）は、低位構成要素が機能を実現するために複数のステップを通して調整されなければならないときに使用される。例えば、バルブは、別のバルブが開かれて、その後、閉
じられる間に、特定時間開かれた後に、閉じられる必要があり得る。図３の集計器１０１は、このタイプのコマンド駆動型アルゴリズムを使用し、まず粗バルブ及び精密バルブを起動させ、その後流量計の読み取り値に基づいて操作し、集計器を通した所望の総流量を提供する。ステート駆動型アルゴリズム（ステート駆動型制御論理）は、単一のステップで操作されることができる異なる低位構成要素のステートを特定し得る。そのようなコマンド駆動型アルゴリズムは、図４の出口バルブシステム１０４で使用され得、その内部の異なるバルブのステートは、出口バルブシステム１０４の所望のステートに基づいて、タンク１００を閉じるか、タンク１００を排出するか、またはタンク１００から生成物を送り出すように異なって（しかし単一のステップで）制御される。
【００５０】
制御モジュールクラスオブジェクトは、プロセスプラント内の個々の制御要素または制御モジュールを表すために（及び構成するために）使用されることが意図される。制御モジュールクラスオブジェクトは、バルブ、メータ等のようなプラント実体上、設備の部品上またはさらにユニット上で実行されることになる特定のタイプの制御を提供または指定する。一般的に述べると、制御モジュールクラスオブジェクトは、コントローラ内で実行されることになる一部の制御モジュールを定義する一組の通信可能に相互接続された機能ブロック等の、プロセスプラント内の複製された制御活動を実行するために有用な特定タイプの制御プログラミングを提供する。ほとんどの場合において、制御モジュールクラスオブジェクトは、単一デバイスまたは関連する一組のデバイスを操作するために包括的制御方策を提供し得る。
【００５１】
表示モジュールクラスオブジェクトは、プロセスプラント１０の動作中に、制御オペレータ等のユーザによって閲覧されることになる表示活動を表すために（及び構成するために）使用されることが意図される。したがって、表示モジュールクラスオブジェクトは、図１のオペレータワークステーション１４内の一定タイプの表示を生成するために必要とされるプログラミングと、その表示がプラント１０の動作中にプラントから適切な情報を取得することを可能にするためにワークステーション１４（及びプロセスプラント１０内の任意の他のデバイス）のうちの１つ以上内で動かされることを必要とされるプログラミングと、を特定し得る。表示クラスモジュールのタイプは、例えば、警報表示、構成閲覧表示、動作閲覧表示、診断表示等を含む。当然のことながら、表示モジュールクラスオブジェクトは、プロセスプラント内の物理的要素もしくは実体の任意の所望の範囲を表す表示か、またはそれに紐付けられた表示を提供し得る。例えば、表示モジュールクラスオブジェクトは、エリア全体、ユニット、設備の部品、制御要素、またはプロセスプラント１０内のこれらの要素の任意の組み合わせに関する情報を表示し得る。
【００５２】
図５を参照すると、階層グラフは、図１の構成アプリケーション５０内で使用される異なるタイプのモジュールクラスオブジェクト間の相互接続、及びモジュールクラスオブジェクトとこれらのモジュールクラスオブジェクトから展開されたモジュールオブジェクトとの間の相互関係を例解する。図５のグラフの最上位で始まる、モジュールクラスオブジェクト（または本明細書では同義的に「クラスオブジェクト（ｃｌａｓｓ  ｏｂｊｅｃｔ）」と称される）は、モジュールクラスタイプによって、ユニットモジュールクラスタイプ４００、設備モジュールクラスタイプ４０２、制御モジュールクラスタイプ４０４、及び表示モジュールクラスタイプ４０６のうちの１つに分離される。当然のことながら、他のタイプのモジュールクラスオブジェクトが、単に例示的なモジュールクラスタイプである本明細書で例解された４つのタイプを伴って、同様に提供または使用されてもよい。個々のモジュールクラスオブジェクト（これは、例えば、オブジェクト指向プログラミング言語の高位オブジェクトであり得、明瞭化のために二重輪郭線によって図５に表される）は、異なるタイプのモジュールクラス４００、４０２、４０４、及び４０６の各々に属する。特に、プロセスプラント１０内の異なるユニットまたはユニットタイプに対する大量の異なるユニットモジュールクラスオブジェクトが存在し得る。例えば、反応装置ユニッ
トクラスモジュールオブジェクト４１０は、プロセスプラント１０内の反応装置の特定のタイプまたは構成を表し得る。同様に、パッケージャユニットモジュールクラスオブジェクト４１２は、プロセスプラント１０内のパッケージユニットの特定のタイプまたは構成を表し得、乾燥機ユニットクラスモジュールオブジェクト４１４は、プロセスプラント１０内の乾燥機ユニットの特定のタイプまたは構成を表し得る。当然のことながら、物理的構成において互いとは異なる反応装置を表すように、１つよりも多い反応装置ユニットモジュールクラスオブジェクトが存在してもよい。さらに、ユニットモジュールオブジェクトによって表され得るか、またはモデル化され得るプラント内の異なるタイプのユニットのすべてをリスト化するように試みることはなく、当業者は、ユニットモジュールクラスオブジェクトによってモデル化され得るか、または表され得る異なるタイプのプラント内の多くの異なるタイプのユニットが存在することを認識するであろう。
【００５３】
同様に、プロセスプラント１０内の異なるタイプの設備を表す、モデル化及び構成するために使用される多くの異なる設備モジュールクラスオブジェクトが存在し得る。図５に例解される例は、集計器設備モジュールクラスオブジェクト４１６及び出口バルブ設備モジュールクラスオブジェクト４１８を含み、この各々は、プロセスプラント１０内の異なるタイプの設備（及び好ましくは複製設備）と関連付けられる。同様に、オン／オフバルブ制御モジュールクラスオブジェクト４２２、レベルセンサ制御モジュールクラスオブジェクト４２４、及び流量計制御モジュールクラスオブジェクト４２６として図５に例解された、多くの異なるタイプの制御モジュールクラスオブジェクトが存在し得る。さらに、表示モジュールクラスオブジェクトは、警報表示モジュールクラスオブジェクト４３２、閲覧表示モジュールクラスオブジェクト４３４、及び診断表示モジュールクラスオブジェクト４３６として図５に例解される。当然のことながら、任意の他の所望のユニットモジュールクラスオブジェクト、設備モジュールクラスオブジェクト、制御モジュールクラスオブジェクト、及び表示モジュールクラスオブジェクトが、本明細書で説明される原理によって、プロセスプラント１０の構成アプリケーション５０内で作成及び使用されてもよい。
【００５４】
各モジュールクラスオブジェクトは、それらと関連付けられるか、またはそれらによって所有されるサブオブジェクトを有し得る。これらのサブオブジェクトは、それら自体内のモジュールクラスオブジェクトであり得るか、または図５に例解されるように、それらが属するモジュールクラスオブジェクトのインスタンスとして作成されるモジュールオブジェクトであり得る。このようなインスタンスは、本明細書では、それらの基になるか、またはそれらが作成される、モジュールクラスオブジェクトの「モジュールオブジェクト（ｍｏｄｕｌｅ  ｏｂｊｅｃｔ）」、「インスタンス」、「インスタンスオブジェクト」、もしくは「モジュールインスタンスオブジェクト（ｍｏｄｕｌｅ  ｉｎｓｔａｎｃｅ  ｏｂｊｅｃｔ）」と同義的に称される。図５は、反応装置ユニットモジュールクラスオブジェクト４１０が、反応装置＿０１（符号４４０ａ）、反応装置＿０２（符号４４０ｂ）、及び反応装置＿０３（符号４４０ｃ）と名付けられた３つの反応装置モジュールオブジェクトを有し、これらの反応装置モジュールオブジェクトが、図１のそれぞれの反応装置クラスオブジェクト４１０に対応する（つまり結び付けられる）ことを例解する。図５はまた、水１、酸１、酸２、アルカリ１、及びアルカリ２（符号４４０ｄ〜４４０ｈ）と名付けられた５つの異なる子モジュールオブジェクトを有するか、または所有するとして、集計器設備モジュールクラスオブジェクト４１６を例解する。同様に、オン／オフバルブ制御モジュールクラスオブジェクト４２２は、粗大＿バルブ１、粗大＿バルブ２、粗大＿バルブ３、精密＿バルブ１、精密＿バルブ２、及び精密＿バルブ３（符号４４０ｉ〜４４０ｎ）と名付けられた子モジュールオブジェクトを含むとして例解される。加えて、図５は、警報表示モジュールオブジェクト４３２に基づく警報＿Ａ図形要素オブジェクト４４０ｏ、閲覧表示モジュールオブジェクト４３４に基づく温度＿センサ＿Ｂ図形要素４４０ｐ及び制御＿モジュール＿Ｃ図形要素４４０ｑ、ならびに診断表示モジュールオブジェク
ト４３６に基づくテスト＿モジュール＿Ｄ図形要素４４０ｒ及びポンプ＿Ｅ図形要素４４０ｓを例解する。同様に、図５の他のユニット、設備、制御、及び表示モジュールクラスオブジェクトの各々は、それらと関連付けられた１つ以上のモジュールオブジェクトを有し得る。しかしながら、簡素化のため、これらのモジュールオブジェクトは、図５に例解されていない。
【００５５】
図５のグラフにおいて、反応装置＿０１、反応装置＿０２、及び反応装置＿０３ユニットモジュールオブジェクト、酸１、酸２、アルカリ１、アルカリ２、及び水１集計器（設備）モジュールオブジェクト（符号４４０ａ〜ｈ）、粗大＿バルブ１、粗大＿バルブ２、粗大＿バルブ３、精密＿バルブ１、精密＿バルブ２、及び精密＿バルブ３制御モジュールオブジェクト（符号４４０ｉ〜４４０ｎ）、警報＿Ａ、温度＿センサ＿Ｂ、制御＿モジュール＿Ｃ、テスト＿モジュール＿Ｄ、ポンプ＿Ｅ図形要素オブジェクト（符号４４０ｏ〜４４０ｓ）、ならびに他のユニット、設備、制御、及び表示モジュールオブジェクトの各々は、プロセスプラント１０内のユニット、設備、制御モジュール、表示アプリケーション、及び図形または図形表示要素等の、プロセスプラント１０内の実際のプロセス要素に紐付けられた個々のオブジェクトである。このように、オブジェクト４４０ａ〜４４０ｓは、「プロセス要素オブジェクト（ｐｒｏｃｅｓｓ  ｅｌｅｍｅｎｔ  ｏｂｊｅｃｔ）」、「プロセス要素モジュールオブジェクト（ｐｒｏｃｅｓｓ  ｅｌｅｍｅｎｔ  ｍｏｄｕｌｅ  ｏｂｊｅｃｔ）」、または「要素オブジェクト（ｅｌｅｍｅｎｔ  ｏｂｊｅｃｔ）」として本明細書では同義的に言及される。同様に、オブジェクト４４０ａ〜４４０ｓの各々は、そのそれぞれの「親（ｐａｒｅｎｔ）」または「親オブジェクト（ｐａｒｅｎｔ
ｏｂｊｅｃｔ）」４１０〜４３６の「子（ｃｈｉｌｄ）」または「子オブジェクト（ｃｈｉｌｄ  ｏｂｊｅｃｔ）」である。例えば、プラント１０内で使用される複数の物理的酸集計器が存在するので、構成ルーチン内で作成された複数の酸集計器プロセス要素モジュールオブジェクトが存在することになり、別個の子酸集計器プロセス要素モジュールオブジェクトが、プラント１０内に存在する個々の酸集計器の各々に対して存在する。しかしながら、子である別個の集計器プロセス要素モジュールオブジェクトの各々は、同一の親集計器モジュールクラスオブジェクト４１６に紐付けられるか、または所有される。当然のことながら、図５のグラフは、限定された数のモジュールクラスオブジェクト、モジュールオブジェクト、インスタンスオブジェクト、及びそれらと関連付けられたプロセス要素オブジェクトのみを例解するが、他のタイプのモジュールクラスオブジェクトが提供されてもよく、任意の所望の数のモジュールオブジェクト、インスタンスオブジェクト、及びプロセス要素オブジェクトが、異なるモジュールクラスオブジェクトの各々から作成されてもよいことが理解されるであろう。
【００５６】
さらに、親オブジェクトの子であるオブジェクトは、それ自体が子オブジェクトを有し得る。例えば、クラスオブジェクト流量計制御モジュール４２６は、２つの子インスタンスオブジェクト、例えば、「水＿流量計モジュール（Ｗａｔｅｒ＿Ｆｌｏｗ＿Ｍｅｔｅｒ
ｍｏｄｕｌｅ）」及び「溶媒＿流量計モジュール（Ｓｏｌｖｅｎｔ＿Ｆｌｏｗ＿Ｍｅｔｅｒ  ｍｏｄｕｌｅ）」（例解せず）を含み得る。水＿流量計モジュールは、「水＿流量計＿１（Ｗａｔｅｒ＿Ｆｌｏｗ＿Ｍｅｔｅｒ＿１）」及び「水＿流量計＿２（Ｗａｔｅｒ＿Ｆｌｏｗ＿Ｍｅｔｅｒ＿２）」等の、プロセスプラント１０内のそれぞれの実際の流量計要素に対応するそれぞれの子プロセス要素モジュールオブジェクトを含み得る。このように、プロセス要素オブジェクト「水＿流量計＿１」及び「水＿流量計＿２」は、流量計制御モジュール４２６に基づいた「水＿流量計モジュール」に基づく。
【００５７】
図５のモジュールクラスオブジェクトの各々（及びそれゆえに図５のモジュールオブジェクトの各々）は、オブジェクトの一部として、モジュールを定義または構成する物理的または論理的プロセス要素の定義または指標を含み得、所望される場合、これらのプロセス要素が、プロセスプラント１０内の一部の活動を実行するために物理的または論理的の
いずれかにおいて互いに相互作用する様式を含み得る。例えば、ユニットモジュールクラスオブジェクトは、ユニットとして定義されているプロセス実体内のまたはそれを構成する物理的かつ制御要素のすべての指標を典型的に含むことになる。ユニットモジュールクラスオブジェクトはまた、個々の一部の特定の構成及びそれらの一部がユニットとして動作するようにどのように物理的にともに紐付けられるかを定義し得る。同様に、設備モジュールクラスオブジェクトは、設備の部品及びコマンドとして定義された実体を制御するために使用されることになる制御ルーチンまたは制御モジュールを典型的に含むことになり、これは、一部が、プラント１０内に配設されたときに設備の部品として動作するように、物理的または論理的のいずれかにおいて相互作用する様式を定義するために制御ルーチンまたは制御モジュールを使用する。同様に、各制御モジュールクラスオブジェクトは、プラント内で実行されることになる、典型的に何らかの種類の制御アルゴリズムの形態で、制御活動を定義することになる。また、各表示モジュールクラスオブジェクトは、とりわけ、表示画面構成、表示されることになる情報、及びプロセスプラント１０の様々な要素を表して表示画面上に提示されることになる図形または図形要素、ならびに、もしあれば、指定されたタイプのユニット、設備、プラントのエリア、またはプラント１０内の任意の他の物理的もしくは論理的実体について、収集されることになるデータ、及び収集されたデータ上で実行されることになるデータ操作を定義し得る。
【００５８】
モジュールクラス定義の一部として、モジュールクラスオブジェクトは、それらの中で組み込まれるか、または使用されることになる他のモジュールクラスオブジェクトを指し得るか、もしくは定義し得る。この場合、そのモジュールクラスオブジェクトから作成されたモジュールオブジェクトは、モジュールクラスレベルで定義された関係に従って他のモジュールクラスオブジェクトから作成された他のモジュールオブジェクトを組み込むか、参照するか、または含むことになる。厳密に必要ではないが、ユニットモジュールクラスオブジェクトは、他のユニットモジュールクラスオブジェクト、設備モジュールクラスオブジェクト、制御モジュールクラスオブジェクト、及び表示モジュールクラスオブジェクトを組み込み得るが、一方で設備モジュールクラスオブジェクトは、他の設備モジュールクラスオブジェクト、制御モジュールクラスオブジェクト、及び表示モジュールクラスオブジェクトを組み込み得る。制御モジュールクラスオブジェクトは、他の制御モジュールクラスオブジェクト及び表示モジュールクラスオブジェクトを組み込むか、または参照し得る。しかしながら、所望される場合、他のモジュールクラスオブジェクト相互関係が同様に使用されてもよい。これらの組み込み関係は、図５のグラフの下部で大きい矢印によって例解され、表示モジュールクラスオブジェクトのうちのいずれかが、制御モジュールクラスオブジェクト、設備モジュールクラスオブジェクト、及びユニットモジュールクラスオブジェクトのうちのいずれかに含まれ得るか、またはそれらによって参照され得ることと、制御モジュールクラスオブジェクトのうちのいずれかが、設備モジュールクラスオブジェクト及びユニットモジュールクラスオブジェクトのうちのいずれかに含まれ得るか、またはそれらによって参照され得ることと、設備モジュールクラスオブジェクトのうちのいずれかが、ユニットモジュールクラスオブジェクトのうちのいずれかに含まれ得るか、またはそれらによって参照され得ることと、を示す。モジュールクラスオブジェクトが同一タイプの他のモジュールクラスオブジェクトを組み込み得ることが理解されるであろう。例えば、ユニットモジュールクラスオブジェクトは、その定義の一部として、別のユニットモジュールクラスオブジェクトを組み込み得る。同様に、設備モジュールクラスオブジェクトは、別の設備モジュールクラスオブジェクトを含み得、制御モジュールクラスオブジェクトは、別の制御モジュールクラスオブジェクトを含み得、表示モジュールクラスオブジェクトは、別の表示モジュールクラスオブジェクトを含み得る。当然のことながら、所望される場合、モジュールクラスオブジェクトは、複数回、別のモジュールクラスオブジェクトを使用または組み込み得る。例えば、反応装置ユニットモジュールクラスオブジェクトは、反応装置ユニットモジュールクラスオブジェクトによってモデル化されている反応装置が集計器の複数のインスタンスを含むので、集計器設備モジュールクラス
オブジェクトを多数回、組み込むか、または使用し得る。
【００５９】
第１のモジュールクラスオブジェクトが第２のモジュールクラスオブジェクトを組み込むか、または使用するとき、第１のモジュールクラスオブジェクトから作成されたか、またはそのインスタンスとしての任意のモジュールオブジェクトが、第２のモジュールクラスオブジェクトから作成されたか、またはそのインスタンスとしてのモジュールオブジェクトを組み込むか、または使用することになることがまた理解されるであろう。したがって、反応装置ユニットモジュールクラスオブジェクト４１０は、その要素または一部として集計器モジュールクラスオブジェクト４１６を使用し、反応装置＿０１モジュールオブジェクトは、その要素または一部として、酸１モジュールオブジェクト４４０ｅ等の集計器モジュールオブジェクトのうちの１つを使用するか、または含むことになる。同様に、集計器設備モジュールクラスオブジェクトが出口バルブ設備モジュールクラスオブジェクトを組み込むか、または含む場合、集計器設備モジュールクラスオブジェクトから作成されたモジュールオブジェクトは、例えば、集計器＿１のように一意的に命名されることになるが、出口バルブ設備モジュールクラスオブジェクトから作成され、かつ、例えば、出口＿バルブ＿２として一意的に命名されたモジュールオブジェクトを含むことになる。このように、モジュールクラスオブジェクトレベルで定義されるモジュールクラスオブジェクト間の関係は、これらのモジュールクラスオブジェクトから展開または作成されたモジュールオブジェクト内で反映される。モジュールクラスオブジェクト（及びそれゆえにモジュールオブジェクト）間のこの相互関係または参照は、構成活動中のオブジェクトの優れた可変性及び高い移動可能性を可能にし、そのため、制御モジュールクラスオブジェクト及び設備モジュールクラスオブジェクト等の初期モジュールクラスオブジェクトが作成された後、ユニットモジュールクラスオブジェクト等のより複雑なモジュールクラスオブジェクトが、初期モジュールクラスオブジェクトを参照することによって、容易に作成され得る。当然のことながら、モジュールクラスオブジェクトが他のモジュールクラスオブジェクトを参照または使用し得るが、それらはさらにまたは代わりに、関連するモジュールクラスオブジェクトを有しない、バルブ、センサ等の単なるオブジェクトまたはプロセス要素オブジェクトを定義または使用することができる。これらの単なるオブジェクトまたはプロセス要素オブジェクトは、モジュールクラスオブジェクト自体の中で、それらのために使用される制御ルーチンに関して完全に定義されることになる。
【００６０】
例示の反応装置ユニットモジュールクラスオブジェクト４１０が図６に図示され、ユニットモジュールクラスオブジェクトに関連付けられるかまたはその内部に存在する実体を記述または定義する１つの方法を示す。図６に図示されるように、反応装置ユニットモジュールクラスオブジェクト４１０は、モジュールクラスオブジェクトが存在しないプロセスプラント１０内部の簡易なオブジェクトまたはプロセス要素オブジェクトであるタンク５００の指標を含む。タンク５００は、点線で図示されているが、これは、制御またはタンクに対する入出力活動を行う必要がある制御または低レベルの活動がないためである。結果として、タンク５００は、反応装置ユニットモジュールクラスオブジェクト４１０と関連付けられた他のオブジェクト間の相互関係を例解するためのみに含まれる。また、反応装置ユニットモジュールクラスオブジェクト４１０は、それぞれ酸、アルカリ及び水と名付けられた３つの集計器５０１、５０２及び５１０を含み、これらは、図５の集計器設備モジュールクラスオブジェクト４１６に対する３つの異なる基準である。水集計器モジュールクラスオブジェクト５１０は、点線によって分離されたユニットモジュールクラスオブジェクト４１０のセクションに図示され、共有されたモジュールクラスオブジェクトであり、ゆえに、ユニットモジュールクラスオブジェクト４１０は、このオブジェクトに対して、他のユニットモジュールクラスオブジェクトと共有された制御を有することを示す。図６の出口オブジェクト５０４は、図５の出口バルブ設備モジュールクラスオブジェクト４１８に対する参照であり、レベルセンサ５０５は、図５のレベルセンサ制御モジュールクラスオブジェクト４２４に対する参照であり、水＿ｉｎバルブ５０３は、簡易なバ
ルブ要素であり得る（かつ、ユニットモジュールクラスオブジェクト４１０内部に完全に画定され得る）か、または構成方策においてどこかに定義されたバルブ制御モジュールクラスオブジェクトの基準であり得るバルブオブジェクトに対する参照である。また、反応装置ユニットモジュールクラスオブジェクト４１０の異なる実体またはパーツ間の物理的相互接続が、これらの異なる要素間の相互接続を確定する目的のために図示されている。上記で言及されたように、任意のタイプのユニットモジュールクラスオブジェクト４１０または他のモジュールクラスオブジェクトは、モジュールクラスオブジェクト（それと関連付けられた任意の汎用制御ルーチンを含む）内部に完全に定義された簡易な要素を含むことができ、及び／またはモジュールクラスオブジェクトの外部に定義されたモジュールクラスオブジェクトに対する参照を含むことができる。
【００６１】
ユニットモジュールクラスオブジェクト４１０は、反応装置閲覧表示５２０及び反応装置警報表示５２２と呼ばれる２つの例示的な表示モジュールクラスオブジェクトを含み、これらは、図５の閲覧表示モジュールクラスオブジェクト４３４及び警報表示モジュールクラスオブジェクト４３２に対する参照である。これらのオブジェクトは、ステート（例えば、タンクの充填レベル）及び反応装置ユニットモジュールクラスオブジェクト４１０内に定義された反応装置ユニットの設備またはパーツのうちのいずれかに関連付けられた警報を表示するための汎用表示活動を定義する。同様に、ユニットモジュールクラスオブジェクト４１０は、他の要素、例えばボックス５２４において供与、混合、排出及びフラッシュフェーズクラスオブジェクトとして図示されたフェーズクラスオブジェクトを含み得、これらの各々が、ユニットモジュールクラスオブジェクト４１０によって定義されたユニット上で動作する汎用制御ルーチンを定義する。ユニットモジュールクラスオブジェクトは、フェーズクラスオブジェクトに対するゼロ以上の関連付けを有することができる。フェーズクラスオブジェクト５２４は、任意の所望の方法でユニットモジュールクラスオブジェクト４１０のどこかに定義され、その中にインポートされることができる。ある意味、フェーズクラス５２４は、ユニットモジュールクラスオブジェクト４１０によって定義されたユニット上で、異なる機能、例えばユニットを充填すること、ユニットを加熱すること、ユニットを空にすること、ユニットを洗浄すること等を行うように動作し得るコマンドまたはルーチンである。
【００６２】
また、ユニットモジュールクラスオブジェクト４１０は、このユニットモジュールクラスオブジェクト４１０から構成アプリケーション５０（図１）によって作成されたモジュールクラスオブジェクトに対する参照を記憶するメモリまたはセクション５２６を含み得る。セクション５２６は、基本的には、ユニットモジュールクラスオブジェクト４１０から作成され、それによって所有されるモジュールオブジェクトのリストである。（当然ながら、このリストまたは所有されたモジュールオブジェクトの他の表示は、任意の所望の方法でワークステーション内に、または構成アプリケーション５０によって記憶されることができ、ユニットモジュールクラスオブジェクト４１０に物理的に収容されなくてもよい。）いずれにしても、図６の例では、ユニットモジュールクラスオブジェクト４１０は、モジュールクラスオブジェクト反応装置＿０１  ４４０ａ、反応装置＿０２  ４４０ｂ、反応装置＿０３  ４４０ｃ等を所有し、それらの各々が、反応装置ユニットモジュールクラスオブジェクト４１０から作成されている。
【００６３】
また、ユニットモジュールクラスオブジェクト４１０は、構成活動中またはその後のいずれかにおいて、ユニットモジュールクラスオブジェクト４１０によって実行されることができる方法５３０のセットを含む。方法５３０は、ユニットモジュールクラスオブジェクト４１０に対してなされた変更を、ユニットモジュールクラスオブジェクト４１０によって所有されたモジュールオブジェクト５２６の各々に自動的に伝播する変更管理方法またはアプリケーションを含み得る。他の方法は、ユニットモジュールクラスオブジェクト４１０に対し、及び／またはそれによって所有されたユニットモジュールオブジェクト５
２６に対しセキュリティまたはアクセス制御を行うセキュリティ制御方法、またはユーザもしくは構成エンジニアが、モジュールクラスオブジェクトまたはそこから作り出された任意のモジュールオブジェクトに対する変更パラメータ及び／またはセキュリティパラメータを特定することを可能にする方法を含み得る。当然ながら、異なる方法５３０は、ユニットモジュールクラスオブジェクト４１０での、またはそれに対する任意の他の手順を行ってもよい。
【００６４】
所望であれば、ユニットモジュールクラスオブジェクト４１０は、モジュールクラスオブジェクト４１０に対してなされた変更がユニットモジュールオブジェクト５２６に伝播される方法に加えて、セキュリティアクセスがユニットモジュールオブジェクト５２６においてセットアップされる方法で制御し得る。この機能性を提供するための１つの方法は、ユニットモジュールクラスオブジェクト４１０内部で１つ以上のフラグまたはパラメータを設定し、変更がユニットモジュールオブジェクト５２６に伝播され、セキュリティがユニットモジュールオブジェクト５２６で取り扱われる方法を特定することである。特に、１つ以上の変更伝播パラメータは、ユニットモジュールクラスオブジェクト４１０に対してなされた変更が、モジュールクラスオブジェクト５２６のうちの１つ以上に自動的に伝播されるか否かを特定するように設定され得る。これらの変更伝播パラメータは、ユニットモジュールオブジェクト５２６に記憶され得、ユニットモジュールクラスオブジェクトに対してなされた変更がユニットモジュールオブジェクトに反映されるかを、ユニットモジュールオブジェクト全体に対して、またはサブ要素についてサブ要素ごとに特定し得る。例えば、ユニットモジュールクラスオブジェクト４１０は、ユニットモジュールクラスオブジェクト４１０から作成された各ユニットモジュールオブジェクトにおいて設定され、ユニットモジュールクラスオブジェクト４１０に対してなされた変更がユニットモジュールオブジェクトで自動的に反映されることを可能または不可能にし得るグローバル変更パラメータ５３４（「Ｃ」で標示）を含み得る。同じように、各サブ要素またはブロック、例えばブロック５０１〜５０５、５１０、５２０及び５２２は、そのブロックのみに対して、ユニットモジュールクラスオブジェクト４１０内のそのブロックに対してなされた変更がユニットモジュールオブジェクトに反映されるかを特定する変更パラメータ５３６を含み得る。当然ながら、ユニットモジュールオブジェクトの異なるブロックが、異なって設定されてもよく、それによって、例えば、ユニットモジュールクラスオブジェクト４１０の酸ブロック５０１に対してなされた変更が、モジュールオブジェクト５２６のうちの特定の１つの対応する酸ブロックに伝播されるが、ユニットモジュールクラスオブジェクト４１０のアルカリブロック５０２に対してなされた変更が、ユニットモジュールオブジェクトのうちの特定の１つのアルカリブロックに伝播されないようにされる。さらに、ユニットモジュールクラスオブジェクトから作成された異なるユニットモジュールオブジェクトが、互いに異なって設定された変更パラメータを有してもよく、それによって、ユニットモジュールクラスオブジェクト４１０内部のアルカリブロック５０２に対してなされた変更がユニットモジュールオブジェクト５２６の第１の１つの対応するアルカリブロックに伝播されるが、ユニットモジュールオブジェクト５２６の第２の１つの対応するアルカリブロックに伝播されないようにされる。当然ながら、ユニットモジュールクラスオブジェクト４１０の変更管理方法は、ユニットモジュールオブジェクト５２６の変更パラメータにアクセスしてそれを使用し、ユニットモジュールクラスオブジェクト４１０において変更がなされたときに、それらのオブジェクト内部で変更を行い得るまたは行い得ない。
【００６５】
同様に、ユニットモジュールクラスオブジェクト４１０は、ユニットモジュールオブジェクト５２６の各々においてセキュリティまたはアクセスが制御される方法を特定する１つ以上のセキュリティパラメータを含み得る。ユニットモジュールクラスオブジェクト４１０は、反応装置ユニットモジュールクラスオブジェクト４１０から作成された反応装置ユニットモジュールオブジェクト全体に対して任意の所望のレベルのセキュリティを提供
し得、及び／またはユニットモジュールクラスオブジェクト４１０の各サブ要素に対して、例えばブロック５０１〜５０５、５１０、５２０、５２２等の各々に対して、異なるセキュリティパラメータ５４０を含み得るグローバルセキュリティパラメータ５３８（「Ｓ」で標示）を含み得、例えば、ブロック上のそれらのブロックの各々に対してブロックごとにセキュリティのレベルを特定する。グローバルセキュリティパラメータ５３８は、事前認可されたセキュリティアクセスレベルを有するものを除き、ユニットモジュールクラスオブジェクトをすべてのユーザにロックするロッキングパラメータであり得る。当然ながら、セキュリティパラメータ５３８及び５４０は、多数の異なるレベルのセキュリティのうちの１つ、例えばアクセス不可、制限されたアクセス、特定のタイプまたは識別子のユーザに対するアクセス等を特定し得、セキュリティレベルは、同じユニットモジュールクラスオブジェクトから作成された異なるブロックにおいて、及び異なるユニットモジュールオブジェクトにおいて異なるように設定され得る。所望であれば、セキュリティ対策の一部が、ユニットモジュールクラスオブジェクトに関連付けられた１つ以上の方法またはアルゴリズム上での暗号化を提供することを含んでもよい。
【００６６】
ユニットモジュールクラスオブジェクト４１０の変更及びセキュリティパラメータが、デフォルト値に設定されてもよく、ユニットモジュールクラスオブジェクト４１０から作成された各ユニットモジュールオブジェクト５２６の対応する変更及びセキュリティパラメータが、作成されたときにこのデフォルト値をとってもよいことが理解されよう。しかしながら、デフォルト変更及びセキュリティパラメータもまた、これらのユニットモジュールオブジェクトが作成された後、ユニットモジュールオブジェクト５２６において（正しいセキュリティアクセスを有するユーザによって）個々に変更されてもよい。本明細書において、変更及びセキュリティパラメータが、反応装置ユニットモジュールクラスオブジェクトに関して述べられているが、同様の変更及びセキュリティパラメータが、他のタイプのユニットモジュールクラスオブジェクトに加えて、任意の所望のタイプの設備モジュールクラスオブジェクト、制御モジュールクラスオブジェクト、表示モジュールクラスオブジェクト等に提供されてもよい。
【００６７】
所望であれば、ユニットモジュールクラスオブジェクト４１０は、ユニットまたはユニットモジュールクラスオブジェクト４１０に関連付けられたユニットまたはユニットの任意のサブ要素に関連付けられた文書化を含む、ユニットクラスモジュールオブジェクトに記憶されるかまたはそれに関連付けられた文書化に対する参照、例えばＵＲＬまたは他の参照を含んでもよい。そのような参照が、図６に参照５４９として図示される。
【００６８】
図６に示された実施形態は、変更パラメータ及びセキュリティパラメータが、ユニットモジュールクラスオブジェクト４１０に関連付けられているとして、及びモジュールクラスオブジェクト４１０の子または派生されたオブジェクトに適用されたときに変更伝播及びセキュリティガイドラインを示すとして描画されている。いくつかの実施形態では、変更パラメータ及び／またはセキュリティパラメータは、付加的または代替的には、モジュールクラスオブジェクト４１０のそれぞれの子オブジェクトまたはそれぞれの派生されたオブジェクトに（例えば、反応装置オブジェクト４４０ａに）関連付けられ得、それぞれの子または派生されたオブジェクトが変更を受信するかまたは１つ以上の親オブジェクトからセキュリティ制限を組み込むか否かに関するガイドラインを示し得る。
【００６９】
図７は、構成エンジニアがモジュールクラスオブジェクトを作成及び使用してプロセスプラント１０を構成するプロセス中に、図１の構成アプリケーション５０によって作成され得る画面表示を描画する。概して、画面表示は、画面の左手側のエクスプローラビューを含み、これは、プロセスプラント１０の構成を描画する組織的ツリー構造を提供する。同じように、画面表示は、概してその右手側に１つ以上の情報ビューを含む。これらの情報ビューは、エクスプローラビュー内の要素のうちの選択された１つに関するさらなる情
報を提供する。情報ビュー内でユーザに表示されるかまたはユーザによって変更されることが可能である情報は、異なるモジュールクラスオブジェクトまたはそのサブ要素の各々に対して設定された図６の制御及びセキュリティパラメータによって判定されるかまたは制御され得る。このように、エクスプローラビュー内部の特定の要素は、モジュールクラスオブジェクトにおいて設定されたセキュリティ及び制御パラメータに基づいて、閲覧及び／または変更のためユーザに対して表示可能であるかまたは露出され得、エクスプローラビューに描画されたモジュールオブジェトに伝播され得る。当然ながら、既に説明されたように、情報は、常時隠されていてもよく、ユーザによってパスワードまたは他のセキュリティコードを入力することによってのみ表示可能または変更可能であってもよく、常時表示可能であるが変更可能でなくてもよく、常時表示可能かつ変更可能であってもよく、またはこれらまたは他のセキュリティ及び変更パラメータの任意の他の組み合わせであってもよい。またさらには、所望であれば、要素の表示可能性、視認性、または変更可能性は、エクスプローラビュー内に、強調表示、グレー表示、色、または要素がより詳細に表示されるかまたは変更されることができるユーザに知らせるための任意の他の技法を使用して示され得る。
【００７０】
図７では、画面表示６００は、表示の左手側に描画されたエクスプローラ構成ビュー６０２の一部を含む。エクスプローラビュー６０２の一部は、ユニットモジュールクラスオブジェクト６０４、設備モジュールクラスオブジェクト６０６及び制御モジュールクラスオブジェクト６０８を含む数多くのモジュールクラスオブジェクトを記憶するライブラリを図示する。反応装置ユニットモジュールクラスオブジェクト６１０（図６の反応装置ユニットモジュールクラスオブジェクト４１０に対応し得る）は、ユニットモジュールクラスライブラリ６０４内部に記憶され、供与、混合、排出及びフラッシュフェーズクラスオブジェクト、酸、アルカリ、水、及び出口設備モジュールクラスオブジェクト、水＿ｉｎ及びレベル＿メータ制御モジュールクラスオブジェクト及び他のオブジェクトを所望のように含む数多くのサブ要素の指標を含む。このように、ユニットモジュールクラスライブラリ６０４内で定義された場合、反応装置ユニットモジュールクラスオブジェクト６１０は、フェーズクラスの指標に加えて、設備モジュールクラスオブジェクト及び制御モジュールクラスオブジェクトの指標を含む。反応装置ユニットモジュールクラスオブジェクト６１０は、画面６００内で選択されるため、その要素は、画面６００の右手側６１２により詳細に描画される。
【００７１】
またさらには、設備モジュールクラスライブラリ６０６は、集計器設備モジュールクラスオブジェクト６１４（図７の集計器設備モジュールクラスオブジェクト４１６に対応し得る）と、反応装置＿出口設備モジュールクラスオブジェクト６１６とを含む。集計器設備モジュールクラスオブジェクト６１４は、アルゴリズム（例えば、図７のアルゴリズム５６４のうちの１つ）の、コマンド＿００００１、コマンド＿００００２及びコマンド＿００００３と呼ばれる３つの異なる部分を含む。また、モジュールクラスオブジェクト６１４は、粗＿バルブ及び精密＿バルブ（オンオフ型制御モジュールクラスオブジェクトである）及び流量＿メータ（流量計タイプの制御モジュールクラスオブジェクトである）と呼ばれる制御モジュールオブジェクトに対する参照も含む。またさらには、反応装置＿出口設備モジュールクラスオブジェクト６１６は、ステート＿００００１、ステート＿００００２及びステート＿００００３と呼ばれる異なるステートを有するステート駆動型制御アルゴリズム、対象、駆動、監視及びリードバックモジュール及び出口、排出及び生成物バルブ制御モジュールオブジェクト（これらは、出口、排出及び生成物と名付けられたオンオフ制御モジュールクラスオブジェクトタイプのモジュールブロックの指標またはそれらに対する参照であり得るか、または簡易なオブジェクトであり得る）を含む。集計器及び反応装置＿出口モジュールクラスオブジェクト６１４及び６１６に関連付けられたコマンド及びコマンド駆動型アルゴリズムは、任意の所望のルーチンであってもよく、それらのコマンドとともに使用される設備モジュールクラスオブジェクト内部のモジュールオブ
ジェクトを参照してもよい。特に、設備モジュールクラスオブジェクトのＣＤＡまたはＳＤＡコマンドアルゴリズムは、それらのモジュールの名称を組み入れ、アルゴリズムを行うときにいずれの設備が操作されるかを示すことによって、制御モジュール（または他の設備モジュール）に言及する式またはアクションを含み得る。アルゴリズム内部の制御モジュール（または別の設備モジュール）の名称の使用は、アルゴリズムが位置する設備モジュールオブジェクトによって参照されるかまたはそれに関連付けられた制御モジュールオブジェクトを特定し、設備モジュールオブジェクトが設備モジュールクラスオブジェクトから作成されると、特定の名称が結び付けられるかまたはインスタンス化される。
【００７２】
当然ながら、所望であれば、図７に図示された画面及び同様の画面が、構成エンジニアによって使用され、供与または他のフェーズクラス内部の、または他のモジュール、例えばユニットモジュールクラスオブジェクト、設備モジュールクラスオブジェクト、及び表示モジュールクラスオブジェクトのうちのいずれかに対する制御アルゴリズムを作成及び特定し、それによって任意の所望のモジュールクラスオブジェクトを作成し得る。上述のように１つ以上のモジュールクラスオブジェクトを作成した後、構成エンジニアはその後、これらのモジュールクラスオブジェクトを使用して、プロセスプラント１０内部に要素を構成し得る。
【００７３】
設備または制御モジュールのうちのいずれもが、ユニットモジュールクラスオブジェクト内部で、共有または非共有モジュールオブジェクトとして指定されることができる。非共有モジュールオブジェクトは、非共有モジュールオブジェクトが作成されるより高レベルのモジュールオブジェクトによって完全に所有される。共有モジュールオブジェクトは、１つを超えるより高レベルのモジュールオブジェクトに所有されるかまたはそれに関連付けられる。モジュールオブジェクトの共有または非共有の性質は、エクスプローラビュー内のモジュールオブジェクトの記述に影響を及ぼす。特に、非共有モジュールオブジェクトの指定は、結果として、モジュールオブジェクトが制御方策内部のより高レベルのオブジェクトの下でのみ描画されることになり、一方で共有モジュールオブジェクトの指定は、結果として、共有モジュールブロックまたはモジュールオブジェクトが、その要素に加えて、エクスプローラヒエラルキー内のスタンドアローンのモジュールオブジェクトを共有するより高レベルのモジュールオブジェクトの各々の下で描画されることになる。
【００７４】
同じような方法で、構成エンジニアは、任意の他のユニットモジュールクラスオブジェクト、設備モジュールクラスオブジェクト及び制御モジュールクラスオブジェクトに加えて、表示モジュールクラスオブジェクトを使用し、そこで説明された原理に従って、プロセス制御環境内部の構成要素ユニット、設備、制御要素及び表示要素を作成し得ることが理解されよう。さらに、構成エンジニアは、ユニットモジュールクラスオブジェクトのうちの１つ以上を変更し、それらの変更をそれらのユニットモジュールクラスオブジェクトに関連付けられたモジュールオブジェクトの各々に伝播しておくことによって、異なるプロセス実体の構成に対する変更をグローバルベースでなし得る。この特徴により、構成が既に作成された後に、構成内部での変更がより簡単かつより時間をかけずに行われる。また、構成エンジニアは、モジュールクラスオブジェクト内部にセキュリティパラメータを設定することによって、構成システム内部のモジュールオブジェクトの異なる要素またはコンポーネントに対するアクセスレベルを特定し得る。上記で言及されたように、構成エンジニアは、任意のレベルで、例えばユニットモジュールレベル、設備モジュールレベル、制御モジュールレベル及び表示モジュールレベルで、モジュールごとにセキュリティを特定し得る。このように、ユニットモジュールオブジェクトのいくつかの要素は、視認可能であってもよく、一方で他のものは、視認可能でなくてもよい。
【００７５】
図７Ａは、構成エンジニアまたはオペレータが簡略化された構成ユーザインターフェース（ＵＩ）を作成及び使用し、それによってプロセスプラント１０を構成するためのグラ
フィカルオブジェクトを作成し使用するプロセス中に、図１の構成アプリケーション５０によって作成され得る画面表示を描画する。いったん構成されると、簡略化された構成ＵＩは、構成要素オブジェクトとして記憶され得、これは、インスタンス化されると、次に構成表示オブジェクトをインスタンス化し、結果として、簡略化された構成ＵＩの構成中に定義されたプロパティのセットを使用してグラフィカルオブジェクトを構成するための構成表示ビューをもたらす。図７の画面表示と同様に、画面表示は、画面の左手側にエクスプローラビューを含み、これは、図形要素を構成するための構成ＵＩに含まれるプロパティ及び／またはプロパティグループを含む、構成ＵＩの構成を描画する組織的構造を提供する。同じように、画面表示は、概してその右手側に１つ以上の情報ビューを含む。図７Ａでは、情報ビューは、エクスプローラビュー内の要素のうちの選択された１つに関するさらなる情報を提供する。図７の画面表示と同様に、情報ビュー内でユーザに表示されるかまたはユーザによって変更されることが可能である情報は、異なるプロパティグループまたはそのプロパティの各々に対して設定された図６の制御及びセキュリティパラメータによって判定されるかまたは制御され得る。
【００７６】
図７Ａでは、画面表示７００は、表示７００の左手側に描画されたエクスプローラ構成ビュー７０２の一部を含む。エクスプローラビュー７０２の一部は、プロパティモジュールクラスオブジェクト７０４を含む数多くのモジュールクラスオブジェクトを記憶するライブラリを図示する。プロパティモジュールクラスオブジェクト７０４は、図形要素の個々のプロパティまたはプロパティグループであってもよい。例えば、以下の図１２を参照すると、バルブの図形要素モジュールまたはＧＥＭは、モジュール名（すなわち「ＤＡＴＡＤＡＴＡ」）及び形状を定義する数個のオブジェクトを含み、ここで、形状は、２つの三角形、半円、及び三角形と半円との間の２つの接続線で構成される。ひいては、バルブＧＥＭに対する形状は、線幅及び充填色等のプロパティを有し得、名称は、フォントスタイル、フォントサイズ及びフォント色等のプロパティを有し得る。付加的なプロパティは、動的挙動、動的挙動オプション、フォント等を含み得るがこれらに限定されず、各々が、ＧＥＭの構成における値によって定義され得る。バルブＧＥＭに対するプロパティは、エクスプローラビュー７０２において、「クイック編集」として、グループを作り上げる個々のプロパティ（「モジュールプロパティ」）とともに示されるプロパティモジュールクラスオブジェクト７０４にプロパティグループとしてセーブされ得る。代替的に、またはプロパティグループとともに、プロパティは、エクスプローラビュー７０２内に個々に提示され得る。このように、簡略化された構成ＵＩが作成されかつ構成されると、構成エンジニアまたはオペレータは、簡略化された構成ＵＩに含まれる個々のプロパティまたはプロパティグループを定義するライブラリアイテムのうちの１つ以上を選択し得る。
【００７７】
図７Ａのツールメニューに見られるように、プロパティグループが加えられ得るか７０６、個々のプロパティが加えられ得るか７０８、またはエクスプローラビュー７０２から選択されたプロパティ及びプロパティグループが削除され得る７１０。例えば、バルブに対する簡略化されたユーザインターフェースが構成されている場合、エクスプローラビュー７０２は、バルブに対するすべてのプロパティグループを提示し得る。そして、構成エンジニアまたはオペレータは、プロパティグループを加えるか、付加的なプロパティグループを作成するか、または簡略化された構成ＵＩを構成するための既存のプロパティグループを修正し得る。
【００７８】
プロパティグループ「クイック編集」の選択は、結果として、情報ビュー７１２内にプロパティを表示させる。情報ビュー７１２では、構成エンジニアまたはオペレータは、本明細書では「プレビュー」とも称される第２の情報ビュー７１４内に示される簡略化された構成ＵＩを構成する。この例では、簡略化された構成ＵＩは、プレビュー７１４内で簡略化された構成ＵＩが構成されているとして示される。例えば、情報ビュー７１２に見られるように、簡略化された構成ＵＩのタイトルは、「クイック構成」であり、これはプレ
ビュー内に示される。一例では、簡略化された構成ＵＩは、基本プロパティのデフォルト構成、例えばサイズ及び位置である。プレビュー７１４は、簡略化された構成ＵＩが図形要素に対する適正なプロパティを有するかを確かめるために図形要素の使用をなすあらゆる必要性を取り除く。
【００７９】
概して言えば、図形要素に対するプロパティの数は、数千に達し得る。例えば、各図形要素は、形状を有し得、ここで、形状はクラスキャンバス内部に記憶され、数は数千に達し得る。さらには、各形状は、数多くのプロパティ、例えば色及び線幅を有する。このことは、結果として、大部分のプロパティに対して使用し得なかったとしても、選定される構成エンジニアに対するプロパティ数を多くする。簡略化された構成ＵＩは、図形オブジェクトの構成エンジニアまたはオペレータに対し、図形オブジェクトの属性（例えば、形状）を構成するために使用する可能性が最も高いプロパティのセットを許可する。このように、簡略化された構成ＵＩは、図形オブジェクトに対して構成される一般的に使用されるプロパティを露出し、プロパティをユーザフレンドリな名称で、論理的順序またはグルーピングで露出する。図７Ａの表示画面７００は、簡略化された構成ＵＩが、図形オブジェクトの構成のために一般的に使用されるプロパティを含むように構成され、異なる簡略化された構成ＵＩが異なる図形オブジェクト（例えば、反応装置、バルブ等）に対して構成されることを可能にする。
【００８０】
図形オブジェクトにリンクされているかまたは結び付けられた構成要素オブジェクト、例えばＧＥＭは、図形オブジェクトのプロパティに対する定義／値を提供するために図形オブジェクトがインスタンス化されるときに要求される。例えば、バルブＧＥＭがインスタンス化されると、構成要素オブジェクトがインスタンス化され得、バルブＧＥＭ属性のプロパティに対する値が表示ビューに送信され表示される。
【００８１】
図７Ｂは、簡略化された構成ＵＩ（「バルブタイプ」）の画面表示８００を描画し、これは、図７Ａを参照して上述されたように、図１の構成アプリケーション５０を使用して作成され得る。画面表示８００は、表示８００の左手側に描画されたエクスプローラ構成ビュー８０２の一部と、表示８００の右手側の情報ビュー８０４とを含む。エクスプローラビュー８０２の一部は、数多くの簡略化された構成ＵＩ（「ＧＥＭ構成ペイン」）を記憶し得るライブラリを図示する、これは、タイプごとに（例えば、「バルブタイプ」）記憶され得る。簡略化された構成ＵＩの選択は、結果として、情報ビュー８０４内に簡略化された構成ＵＩを表示させる。情報ビュー８０４では、バルブタイプの構成中に定義されたような、バルブに対するプロパティのセットが表示され、それによって、構成エンジニアまたはオペレータは、ひいてはバルブＧＥＭを構成するためにバルブＧＥＭの様々なプロパティに対する値を定義することができるようにされる。いくつかのケースでは、値は、直接入力（例えば、テキストボックス）によって、またはドロップダウンメニューからのオプションの選択によって定義され得る。一例では、デフォルト値、例えば図形要素の形状に対するデフォルト線幅及び色、及び図形要素の表示された名称のためのデフォルトフォント及びフォントサイズは、図形要素のプロパティのいくつかまたはすべてに対して提供され得る。
【００８２】
バルブＧＥＭのプレビュー８０６は、それが構成されているとき、かつ図形要素の使用を作成する前に表示され得る。概して、簡略化された構成ＵＩは、図形要素オブジェクトを構成するための構成標示を提供し、ここで、図形要素オブジェクトは、プロセス制御表示ビュー上で後にインスタンス化され、プロセスプラント内部のプロセス実体に対応する。簡略化された構成ＵＩは、プロパティのセットを簡略化された構成ＵＩの構成に定義されたとして提示し、該セット内の各プロパティは、図形要素オブジェクトの属性に対する値を特定するように選択可能かつ定義可能である。例えば、バルブタイプは、バルブのプロパティに対する３つの選択可能なオプション８０４−故障閉鎖、故障開放及びホールド
を提供するように構成された。この例では、故障閉鎖のオプションが選択され、バルブのプレビュー８０２（すなわち「ＦＣ」）に反映されている。
【００８３】
上記で触れたように、簡略化された構成ＵＩは、図形要素の属性に対する様々なプロパティのデフォルト値とともに生成され得る。図７Ｂを一例として使用して、バルブＧＥＭのデフォルト動的挙動は、「ホールド」（すなわち、バルブがその位置（例えば、開または閉）に維持される）として定義され得る。一方、図形要素は、再構成のための画面８００内にロードされ得る。すなわち、図形要素は、既にその属性に対するプロパティの基準構成を有している。簡略化された構成ＵＩにおけるデフォルト値に対する図形要素のプロパティの再構成ではなく、図形要素の基本構成の値が、図形要素からキャプチャされ８１０（例えば、読み取られ）、情報ビュー８０４を生成するために使用されてもよい。このように、構成エンジニアまたはオペレータが図形要素の１つまたはすべてより少ない値を変更することのみが必要である場合、彼／彼女は、すべてのプロパティ値を再定義しなければならないことを免れる。例えば、バルブ８０６の動的挙動のみが「ホールド」から「故障閉鎖」に変更された場合（すなわち、故障の場合、バルブが閉じる）、ユーザは、バルブＧＥＭの基本構成をキャプチャ８１０し、バルブに対する動的挙動のリストから「故障閉鎖」を選択し、「故障閉鎖」プロパティをキャプチャ８１２し、バルブＧＥＭの動的挙動プロパティを更新し得る。バルブＧＥＭの更新は、更新されたプロパティをバルブＧＥＭの図形要素オブジェクトにリンクし結び付け、プロパティ構成を構成要素オブジェクトとして記憶し得、それによって、バルブＧＥＭがインスタンス化されるときはいつも、図形要素オブジェクトが構成要素オブジェクトからプロパティを読み取り、表示オブジェクトが構成されたプロパティを有する図形要素オブジェクトをロードするようにされる。
【００８４】
当然ながら、いったん構成システムが完了し、モジュールオブジェクトがプロセスプラント１０内部の個々のプロセス実体に結び付けられると、これらのモジュールに関連付けられた制御及び表示モジュールまたは要素が、プロセスプラント１０の動作中の実行のために、図１の正しいコントローラ１２、デバイス、及びワークステーション１４にダウンロードされ得る。
【００８５】
本明細書で説明された技法、システム及び方法は、フレキシブルなクラスオブジェクト、インスタンスオブジェクト及びプロセス要素オブジェクトを使用した、プロセスプラント及びプロセス制御システムの構成を考慮している。一例では、親オブジェクトに対する変更または修正の伝播は、１つ以上のそれぞれの子オブジェクトに対してフェーズ化されるかまたは遅延され、それによって、構成更新のタイミングが、プロセスプラント内で制御され得るようにされる。フェージング及び／または遅延は、一実施形態では、ユーザによって示され、異なる子オブジェクトに対しては異なってもよい。別の例では、親オブジェクトに対してなされた変更は、選択された子オブジェクトに対して適用されるが、親の子オブジェクトのすべてには適用されない。ユーザは、変更が適用される所望の子オブジェクトの選択を示し得る。また別の例では、子オブジェクトに対してなされた変更は、その親オブジェクトに対して、及び／または１つ以上の子オブジェクトに対して、選択的に適用される。変更が適用されることになる所望の親及び／または子オブジェクトの選択は、ユーザによって示され得る。加えて、または代替的に、ユーザは、変更の自動分散及び／またはインスタンス化（例えば、実行可能なファイルの作成）なしに、様々なオブジェクトに対するドラフト変更または修正をなし得る。異なるドラフト変更のセットは、様々なオブジェクトの異なるバージョンとして保存され得、プロセスプラントのランタイムまたはリアルタイム動作のライブ動作に影響することなく、オフラインで試験され得る。
【００８６】
さらに、本明細書で説明された技術、システム、及び方法は、プロセス制御システムまたはプラント１０のライブラリ（例えば、テンプレート及び／もしくはユーザ作成ライブラリオブジェクト）内に記憶されたアイテムまたはオブジェクトに適用する。代替的また
は追加的に、本技術、システム、及び方法は、プロセス制御システムまたはプラント１０の構成データベース２５内に記憶されたアイテムまたはオブジェクトに適用し、これは、一部の場合において、ライブラリアイテムもしくはオブジェクトから少なくとも部分的に作成されるか、または派生される。
【００８７】
またさらに、本明細書で説明されたフレキシブル構成技術及びオブジェクトのうちの１つ以上は、図１のプロセスプラント１０等のプロセスプラント内、または他の好適なプロセスプラントもしくはプロセス制御システム内で使用され得る。一例において、本明細書で説明された技術のうちの１つ以上は、図１の１つ以上のワークステーション１４上で実行される構成アプリケーション５０によって実行される。別の例において、本明細書で説明された技術のうちの１つ以上は、アプリケーションにアクセスする遠隔アプリケーション（例えば、ウェブクライアントまたは他の遠隔アクセス手段）によって少なくとも部分的に実行される。いくつかの実施形態において、フレキシブル構成技術のうちの１つ以上は、本明細書で説明されたもの以外の他の構成技術との組み合わせで使用される。
【００８８】
さらに、本明細書で説明されたフレキシブル構成技術及びオブジェクトは、図５に説明されたもの等のモジュールクラスを使用して実装される。しかしながら、本明細書で説明されたフレキシブル構成技術は、他の好適なモジュールクラス、ソフトウェアアーキテクチャ、及び／またはプログラミング技術を使用して実装され得る。
【００８９】
アイテムまたはオブジェクトドラフト：
先で考察されたように、本明細書で説明されたフレキシブル構成技術、システム、及び方法の実施形態は、ランタイムプロセスプラントまたはランタイムプロセス制御システムに不利に影響を及ぼし得るダウンロードを必要とすることなく、ユーザがライブラリ及びシステム構成アイテムまたはオブジェクトに対する変更を行うことを可能にする。ライブラリアイテムまたはライブラリオブジェクトは、概して、集中的にアクセス可能な位置またはライブラリ（例えば、ワークステーション１４に対して、ならびに他のインターフェース及びコンピューティングデバイスに対してアクセス可能である、構成データベース２５または他の記憶デバイス）内に記憶されたテンプレートオブジェクトである。システム構成アイテムまたはシステム構成オブジェクト（及び一部のライブラリアイテムまたはライブラリオブジェクト）は、概して、１つ以上のライブラリアイテムに基づくか、またはそれらから派生される。一部のアイテム及びオブジェクトについて、少なくとも一部の態様は、ユーザによってカスタマイズされる。
【００９０】
本明細書で使用される「アイテム（アイテム）」という用語は、クラスオブジェクト、インスタンスオブジェクト、またはプロセス要素オブジェクト等のオブジェクトを概して指す。アイテムは、ライブラリ内に記憶され得るか（例えば、「ライブラリアイテム（ｌｉｂｒａｒｙ  ｉｔｅｍ）」もしくは「ライブラリオブジェクト（ｌｉｂｒａｒｙ  ｏｂｊｅｃｔ）」）、またはアイテムは、システム構成データ記憶エリア内に記憶され得る（例えば、「構成アイテム（ｃｏｎｆｉｇｕｒａｔｉｏｎ  ｉｔｅｍ）」もしくは「構成オブジェクト（ｃｏｎｆｉｇｕｒａｔｉｏｎ  ｏｂｊｅｃｔ）」）。加えて、本明細書で使用される「アイテム」という用語はまた、オブジェクト、例えば、オブジェクトのコンテンツの少なくとも一部に対する内部であり、かつそれによって定義されるアイテムを概して意味する。オブジェクトの考えられる内部アイテムは、例えば方法、アクション、データフィールドまたは他の属性、入力、出力、Ｉ／Ｏのタイプ（例えば、コントローラ、例えば図１のコントローラ１２または１２ａがそれを通してシステムと通信する入出力カードまたはデバイスのタイプ）、機能または使用、定義、パラメータ値、親オブジェクトに対する参照、子オブジェクトに対する参照、親オブジェクトでも子オブジェクトでもない別のオブジェクトに対する参照、及び他の内部アイテムを含む。内部アイテムは、絶対的に定義され得るか（例えば、データフィールドが定数値もしくは定数式を記憶する）、ま
たは内部アイテムは、絶対値、絶対式、別のオブジェクト、もしくは別の参照を参照することによる等、相対的に定義され得る。例えば、図形表示要素オブジェクトによって定義された内部アイテムは、親オブジェクトに対する参照、１つ以上のフィールド、トリガ、機能、ビュー定義、イベントハンドラ、アニメーション、プレースホルダ、パラメータ、テーブル等を含み得る。別の例では、制御モジュール要素オブジェクトによって定義された内部アイテムは、親オブジェクトに対する参照、１つ以上の入力、出力、パラメータ、機能ブロック、相互接続、フィールド式、外部参照、アクション、アルゴリズム、遷移等を含み得る。
【００９１】
用語「リンクされた」アイテムは、概して本明細書で使用される場合、その構造及び初期値が親オブジェクトまたはアイテムから派生されるかまたは作成され、及び／またはその構造または初期値が子オブジェクトまたはアイテムに提供されるオブジェクトまたはアイテムを指す。このように、リンクされたアイテムは、親アイテムであってもよい。加えて、または代替的には、リンクされたアイテムは、子アイテムであってもよい。したがって、「リンクされていない」アイテムは、概して本明細書で使用される場合、親オブジェクトを有しておらず、いずれの子オブジェクトも有していないアイテムまたはオブジェクトを指す。リンクすること（例えば、親／子オブジェクト関係の指標を維持すること）は、ユーザが親アイテムまたはオブジェクトの構造及び初期値を定義し、その後同じ構造及び初期値を、インスタンスまたは子オブジェクトと共有することを可能にする。例えば、ユーザがクラスオブジェクトのすべてのインスタンスに影響する修正または変更を行うことを望む場合、ユーザは、クラスオブジェクトを単に修正し、変更は、クラスオブジェクトのリンクされたインスタンスに分散されるかまたは伝播される。
【００９２】
本明細書で使用される「現在のアイテム（ｃｕｒｒｅｎｔ  ｉｔｅｍ）」または「現在のオブジェクト（ｃｕｒｒｅｎｔ  ｏｂｊｅｃｔ）」という用語は、インスタンス化され（及び一部の場合においてダウンロードされ）、かつプロセスプラント１０内の対応するプロセス要素のランタイム中に実行され得るアイテムまたはオブジェクトを指す。例えば、現在のプロセス要素制御オブジェクトがインスタンス化されると、現在のプロセス要素制御オブジェクトに対応する実行可能な構成コードが、プロセス要素、例えば図１のコントローラ１２または１２ａにダウンロードされ、コントローラ１２または１２ａは、ランタイム中、インスタンス化された現在のプロセス要素制御オブジェクトによって定義されたような機能、入力、出力、及び他の条件に従って動作するように構成される。別の例において、現在の図形表示ビューオブジェクトは、現在の図形表示ビューオブジェクト内に含まれた定義に対応するビューがユーザインターフェース上で構築及び提示されたとき、ユーザインターフェースでインスタンス化される。典型的には、オブジェクトによって定義された特定の内部アイテムになされた変更は、オブジェクトによって定義された他の内部アイテムに典型的に影響を及ぼさない。
【００９３】
「修正（ｍｏｄｉｆｉｃａｔｉｏｎ）」及び「微調整（ｔｗｅａｋ）」という用語は、その親オブジェクトへのリンクを維持しつつ、オブジェクトのコンテンツに対する１つ以上の変更を指すために、本明細書において同義的に使用される。現在のアイテムまたはオブジェクトに対する修正または変更の一例は、現在のアイテムまたはオブジェクトに対する、新しいパラメータまたは動作の追加等の新しい内部アイテムの追加である。追加的または代替的に、修正は、現在のプロセス要素オブジェクトの既存アイテムを削除することを含み得、及び／またはオブジェクトによる定義済みのアイテムの値、式、もしくは参照を変更することを含み得る。一部のシナリオにおいて、修正は、特定のアイテムの無効化を含み、これにより特定のアイテムは、インスタンス化中に無視される。例えば、特定のインスタンスオブジェクトにおいて、ユーザは、親クラスオブジェクト内で定義されるアイテムを無効化し得る。このような能力は、ユーザが、クラスの残りのものよりも低機能を有するが、依然としてコアクラス機能を含むインスタンスを定義することを可能にする
。いずれの無効化されたコンテンツも、視覚的に弱められるか、不可視化されるか、またはそうでなければ描画されず、ランタイム中に使用されない。無効化されたコンテンツは、いつでもユーザによって再び有効化され得る。概して、修正は、親オブジェクト内の参照がそれぞれの子オブジェクト内の定数値に対して解決されるとき等の、定数値または定数式に対する参照を解決することを含み得る。
【００９４】
いずれの修正、変更、及びそれらの組み合わせも、クラスアイテムもしくはクラスオブジェクト、インスタンスアイテムもしくはインスタンスオブジェクト、プロセス要素アイテムもしくはプロセス要素オブジェクト、または内部アイテムに対して行われ得る。インスタンスオブジェクト及び他の子オブジェクトの場合において、子オブジェクトに対する変更または修正は、一実施形態において、その親から除去されている子オブジェクト内では結果として生じない。例えば、インスタンスオブジェクトに対する修正は、インスタンスオブジェクトをそのクラスから除去せず、さらに、ユーザによってそのように指定されない限り、同一クラスの他のインスタンスに影響を与えない。一実施形態では、子オブジェクトによって定義されたアイテムに対する変更または修正は、子オブジェクト内部のフラグまたは他の指示によって示され、クラスレベルにおいてアイテムと干渉しないように、そのようにラベル付けされ得る。このように、この柔軟性は、親オブジェクトの拡散を低減し、その子アイテムまたはオブジェクト間でのさらなる変動を可能にすることによって、多種多様なアプリケーションに適用可能な単一の親アイテムまたはオブジェクトを作成し得る。
【００９５】
加えて、ユーザは、アイテムまたはオブジェクトに対する修正の設定をドラフトとして保存することも可能である。概して、ドラフトオブジェクトは、ランタイムプロセスプラントまたはシステム、例えばプロセスプラントのリアルタイム動作環境に影響を及ぼすことなく、試験を行うことが可能である。（ドラフトオブジェクトの「試験」は、本明細書で使用される場合、概してドラフトオブジェクト自体への初期チェックを行って、変更または修正が正確であるかを判定するための能力を指すが、典型的には、ドラフトオブジェクトが他のドラフトとともにある環境内で稼働することを必要とするであろう完全な工場受け入れ試験を含意しない。）
【００９６】
一実施形態では、特定のオブジェクトに対するただ１つのドラフトが、同時に存在し得る。一実施形態では、多数の異なるドラフトが、特定のオブジェクトに対して存在し得る。ユーザは、ドラフトオブジェクトを加えるか、削除するか、または修正することが可能であり得る。いくつかの実施形態では、ドラフトオブジェクトのバージョン制御が利用可能である。ドラフトオブジェクトは、フラグ、フィールド、またはオブジェクトに含まれるかまたはそれに関連付けられた他の表示によって、ドラフトとして特定され得る。一実施形態では、ドラフトオブジェクトは、現在インスタンス化されたオブジェクトの子オブジェクトとして、現在のオブジェクトの親オブジェクトの子オブジェクトとして、または現在のオブジェクトの派生元のライブラリオブジェクトの子オブジェクトとして記憶される。いくつかのシナリオでは、ドラフトオブジェクトに対応する他の情報（例えば、著者、記憶時間等）もまた、記憶され得る。
【００９７】
現在のオブジェクトに対する異なる修正を包含する異なるドラフトが、（例えば、同時に）作成及び記憶され得る。異なるドラフトが、本質的に連続し得る。例えば、第１のドラフトは、レガシープロセスデバイスを構成することに対応し得、第２のドラフトは、より新しいモデルのプロセスデバイスを構成することに対応し得る。異なるドラフトは、内容が異なり得る。例えば、第１のドラフトは、製造者Ａによって作られた、特定の機能を行うためのバルブを構成することに対応し得、第２のドラフトは、製造者Ｂによって作られた、同様の機能を行うためのバルブを構成することに対応し得る。もちろん、連続及び／または内容変更の任意の組み合わせが、ドラフトのセットにわたって、例えばユーザに
よって所望されるように明示されてもよい。
【００９８】
ドラフトは、概してインスタンス化されるかまたはダウンロードされることが許可されていないが、それらが分散及びダウンロードされることを可能にするエディションに発行される前に、それらが正しく稼働することを保証するために試験されることが許可されている。このように、ユーザは、現在のアイテムまたはオブジェクトに対する修正を行い、修正をドラフトとして記憶することが可能である。ユーザはドラフトが許容可能であると見なすと、ユーザは、ドラフトを発行し、アイテムまたはオブジェクトの新しいエディション、例えば「発行された」または「承認された」アイテムまたはオブジェクトを生成し得る。アイテムまたはオブジェクトの新しいエディションは、記憶され、プロセスプラントまたはシステム内へのインスタンス化またはダウンロードのために利用可能である。
【００９９】
エディション
このように、エディションは、ユーザがプロセス要素に対する変更を追跡及び制御することを助ける。特に、アイテムまたはオブジェクトは、その寿命の一部として変更を経験し得る。最初に、オブジェクトが作成され、オブジェクトに対する各々の後続の変更（機能ブロックの追加／削除等の構造的なものか、あるいはパラメータ値の変更のいずれか）は、典型的にはその子オブジェクトに分散または伝播される。しかし、ライブプロセスプラント動作の間、親アイテムまたはオブジェクトに対する変更（及び、特に不完全で承認されていないかまたは試験されていない変更）は、制御されていない方法で、ランタイムシステムに入ることが防止されるべきである。したがって、本明細書で説明されたフレキシブルな構成技法及びオブジェクトは、ユーザが変更の分散及び伝播を制御することを可能にするための「エディション」を含む。本明細書で使用される場合、「エディション」は概して、承認または発行されており、ランタイム環境内へのインスタンス化のために利用可能である、現在のオブジェクトに対するドラフト修正を指す。エディションまたは発行は、プロセスプラントまたはプロセス制御システム内にインスタンス化されることが可能であり、一方で、ドラフトは、インスタンス化されることが許可されていない。
【０１００】
一実施形態では、ドラフトは、ユーザがそのように示した場合（例えば、ユーザがドラフトを承認した後にのみ）エディション内に発行される。したがって、オブジェクトのプロセス要素アイテムに対するドラフト修正が承認されると、プロセス要素アイテムまたはオブジェクトのステートは、インスタンス化が防止されるかまたは許可されていない第１のステート（例えば、「ドラフト」ステート）から、インスタンス化が許可されている第２のステート（例えば、「発行済」ステート）に変更し得る。一実施形態では、好適なセキュリティ許容度を有する認可されたユーザのみが、ドラフトをエディション内に発行すること（例えば、ドラフト修正を承認して、発行された修正またはエディションを生成すること）を許可される。多数のドラフトが利用可能である場合、ユーザは、多数のドラフトのうちのどれがエディションに発行されるかを選択し得る。
【０１０１】
オブジェクトのエディションは、フラグ、フィールド、またはオブジェクトに含まれるかまたはそれに関連付けられた他の表示によって、特定され得る。一実施形態では、エディションまたは発行された修正済みオブジェクトは、その親として、修正されたオブジェクトのドラフト、現在のオブジェクト、別のエディション、別のオブジェクト、またはライブラリオブジェクトを示すかまたはそれにリンクする別個のオブジェクトとして記憶される。いくつかのシナリオでは、オブジェクトのエディションに対応する他の情報（例えば、著者、発行時間等）もまた、記憶され得る。一実施形態では、子アイテムまたはオブジェクトは、親オブジェクトのエディション及び親オブジェクト自体の両方にリンクされ得る。
【０１０２】
オブジェクトの多数のエディションが利用可能であるとき、ユーザは、一実施形態では
、多数のエディションのうちのどれがインスタンス化されるべきかを示すかまたは選択し得る。例えば、ユーザは、オブジェクトの異なるエディションが、プロセスプラント内部の異なるプロセス要素でインスタンス化されることを示し得る。代替的にまたは加えて、ユーザは、エディションに対する、または異なるエディションに対する異なる時点のインスタンス化を示し得る。また、ユーザは、いくつかのケースでは、エディションを削除するか、使用不能にするか、または編集し得る。
【０１０３】
いくつかの実施形態では、ただ１つのドラフト（及び、多数のドラフトではない）が、記憶されることが許可される。そのような実施形態では、現在のオブジェクトの現在のエディションのみが、ユーザによって編集されることを許可される。このように、編集後、ユーザは、ドラフト修正済みオブジェクトを保存し、ユーザが指示すると、ドラフト修正済みオブジェクトは、オブジェクトの新しい現在のエディションとして発行される。一実施形態では、先の現在のエディションは、それにリンクされた任意の子オブジェクトを有していない場合、及び唯一のエディションではない場合、例えばライブラリアイテムまたはオブジェクトのケースでは、自動的に削除され得る。このように、現在のエディションが任意の子オブジェクトを有していない場合、現在のエディションに対する修正の後続の発行は、現在のエディションを単に置き換えるかまたは上書きし得る（例えば、付加的な現在のエディションは作成されない）。一実施形態では、１つ以上の先の現在のエディションは、ユーザから隠され得るかまたはユーザに対してアクセス不可能にされ得る。
【０１０４】
一実施形態では、少なくとも１つの子オブジェクトを有する親アイテムまたはオブジェクトを発行することは、子オブジェクトの新しい現在のエディションを自動的に発生させる。一実施形態では、オブジェクトを名称変更することは、オブジェクトの新しいエディションを作成しないが、オブジェクトによって定義された内部アイテムを名称変更することは、名称変更された内部アイテムをドラフトとして保存し、名称変更された内部アイテムドラフトを内部アイテムの新しいエディションとして発行することを必要とする。
【０１０５】
一実施形態では、発行されたアイテムまたはオブジェクトが、別の発行されたアイテムまたはオブジェクトに参照されるかまたはそれに組み入れられると（かつ任意には、多数のレベルのオブジェクトにそのようにネストされると）、最内部のアイテムまたはオブジェクトの新しいエディションを作成することによって、ネスティングのすべてのレベルにおいて、包含されたアイテムまたはオブジェクトの各々の新しいエディションが自動的に作成され得る。
【０１０６】
変更及び修正の分散または伝播
用語「分散」及び「伝播」は、本明細書においては同義的に使用され、概して親オブジェクトから子オブジェクトへの、及び／または子オブジェクトからその親オブジェクトへの構造（例えば、制御オブジェクトに対する機能ブロック使用、ダイナモ使用、形状、パラメータタイプ、ワイヤ等、及び例えば、図形要素オブジェクトに対するアニメーション、ビュー定義、形状、コネクタ等）及びパラメータ値の転送を指す。典型的には、エディションまたは発行されたオブジェクトにおける修正または変更は、伝播される。一実施形態では、オブジェクトの発行されたエディションに含まれる変更されたアイテムのみが伝播される。一実施形態では、オブジェクトのエディション全体が伝播される。
【０１０７】
ポリシー設定は、オブジェクトごとに、またはアイテムごとに分散または伝播プロセスを制御し得る。一実施形態では、ポリシー設定は、ユーザ、例えば構成設計者またはシステムアドミニストレータによって変更可能である。変更しているポリシー設定へのアクセスは、いくつかの構成システムにおいて確実に制御される。分散または伝播ポリシー設定は、少なくとも２つの可能な値、すなわち自動及びユーザ操作を含む。一例では、ポリシーが、ライブラリで定義された設備アイテムに対して自動に設定された場合、新しいエデ
ィションにおいて発行されたライブラリに記憶された設備アイテムに対する変更または修正はその後、設備アイテムの任意のリンクされたアイテムに自動的かつ速やかに伝播され、結果として、リンクされたアイテムの新しいエディションが発行される。
【０１０８】
しかし、オブジェクトのポリシーがユーザ操作に設定された場合、新しく発行された変更は、リンクされたアイテムに自動的かつ速やかには伝播されない。代わりに、ユーザは、手動で伝播を開始し（または、スクリプトを作成するかもしくは伝播を開始することに類似する）リンクされたアイテムを選択された時点で選択する。上記のライブラリに記憶された設備アイテムの例では、そのポリシーがユーザ操作に設定された場合、ユーザは、特定の子システム構成アイテムを選択し、発行された変更を特定された時点で受信し得る。さらに、ライブラリに記憶された設備アイテムの多数の記憶されたエディションがある場合、ユーザは、多数のエディションのうちのどれが、どの時点で伝播されるかを示し得る。
【０１０９】
したがって、本明細書で説明されたフレキシブルな構成技法及びオブジェクトは、ユーザが親オブジェクト（例えば、クラスオブジェクト）に変更を加え、変更が分散されるかまたは伝播される子オブジェクト（例えば、インスタンスオブジェクト）を特定し、伝播が生じるときを特定することを可能にする。このように、発行後、親オブジェクトに対してなされた変更は、変更を必要とする子オブジェクトに対してのみ速やかに伝播され得るが、一方で他の子オブジェクトは、後で変更とともに更新され得る。変更または修正の受信側の選択は、プロセス実体または要素ごとに実行され得るか、またはグループごとに（例えば、プラントのエリア、ある製造者のすべてのデバイス、リリースＸを作動させるすべてのデバイス、一定の試験生産ライン内のすべてのメータ等）実行され得る。そのような分散及び伝播における選択性は、ランタイム中のプラント性能を増大させ得るが、これは、すべての子オブジェクトが一度に更新されないためである。さらに、変更及び修正は、最適化されかつ制御された方法で、プロセスプラント内にフェーズ化され得る。
【０１１０】
一実施形態では、少なくとも１つの子オブジェクト、そしてまた多数の既存のエディションを有する親アイテムに対しては、分散または伝播ポリシー設定を変更することは、親オブジェクトの任意の発行された現在のインスタンス化されたエディションに影響しない。しかしながら、親アイテムまたはオブジェクトのコンテンツが続いて変更された場合、コンテンツ変更は、その子アイテムまたはオブジェクトのすべてに伝播され、それによって、子は、結果として得られる親オブジェクトの現在のエディションを使用し、先のエディションは削除されるかまたは使用不能にされる。
【０１１１】
一実施形態では、親オブジェクトからのパラメータ値の伝播または分散は、値が子オブジェクトにおいてオーバーライドされていない場合にのみ生じる。
【０１１２】
親オブジェクトと同様に、子オブジェクト（例えば、インスタンスオブジェクトまたはプロセス要素オブジェクト）に対してなされた変更または修正もまた、それぞれの親オブジェクト（例えば、クラスオブジェクトまたはインスタンスオブジェクト）に選択的に伝播されるかまたは分散され得る。伝播のタイミング及び／またはコンテンツは、一実施形態では、ユーザによって選択される。このように、子オブジェクトにおける変更は、親オブジェクトに対して伝播され得、これはひいては、他の子オブジェクトに対する変更を伝播し得る。
【０１１３】
一実施形態では、ユーザは、子オブジェクトによって定義された特定のアイテムが、親オブジェクトから隠される（例えば、使用不能にされる）ことを示し得る。例えば、子オブジェクトに特定のパラメータ値が加えられるが、概して親オブジェクト及び親オブジェクトの他の子には適用可能ではない場合、親オブジェクトに対する伝播中は、特定のパラ
メータ値は、フラグを付けられるか、さもなければ隠されるかもしくは使用不能にされ得る。
【０１１４】
インスタンス化：
エディションは、一実施形態において、ユーザによってインスタンス化のために選択され得る。選択されたエディションのインスタンス化は、選択されたエディションによって定義された内部アイテムに従って、ランタイム中に実行する対応するプロセス要素を結果としてもたらす。例えば、制御オブジェクトの場合では、ユーザは、制御オブジェクトの特定の発行されたエディションが、ランタイムシステム内の対応するデバイスにダウンロードされることを所望する。ユーザは、ダウンロードエディションを選択されたエディションから生成し、かつダウンロードエディションをランタイムシステム内のプロセス要素に送信するようにシステムに命令する。このように、ランタイム中に、プロセス要素は、制御オブジェクトの既存のエディションを実行し、ここで、エディションに含まれる修正を包含する構成を含む。別の例において、ユーザは、表示ビュー上に含まれる発行された図形表示要素オブジェクトをインスタンス化するように構成システムに命令する。構成システムは、図形表示要素オブジェクトの実行エディションを作成する。対応する表示ビューがランタイムで構築されるとき、図形表示オブジェクトの実行エディションが実行され、それぞれの図形要素が表示ビュー上に含まれることを結果としてもたらす。複数のエディションが利用可能であるとき、ユーザは、複数のエディションのうちのどれがインスタンス化されるべきかを選択し得る。
【０１１５】
インスタンス化の上記の例では、インスタンス化は、ユーザによって特定されるかもしくは示された時点で、またはユーザによって特定されるかもしくは示されたイベント後、行われる。いくつかの実施形態では、ユーザは、オブジェクトのエディションが、発行後速やかにインスタンス化されることを示し得る。例えば、ユーザは、エディションに対応する子オブジェクトの第１のセットのインスタンス化が、発行後速やかに実行され、エディションに対応する子オブジェクトの第２のセットのインスタンス化が、特定量の時間にわたって遅延され、エディションに対応する子オブジェクトの第３のセットのインスタンス化が、ユーザがインスタンス化を明確に要求するまで遅延されることを示し得る。このように、本明細書で説明されたフレキシブルな構成システム技法及びオブジェクトによって、ユーザは、いつ、そしていずれの修正が様々なプロセス制御要素においてインスタンス化されるかを制御することが可能である。
【０１１６】
もちろん、本明細書で説明された技法及びオブジェクトは、ユーザに、オブジェクトまたはアイテムのコンテンツをよりフレキシブルに修正し、プロセスプラントまたはプロセス制御システム内部での分散及び修正のタイミングをよりフレキシブルに管理するための機能性及び能力を提供する。例えば、ユーザは、オブジェクトのインスタンス及び使用を作成し、オブジェクトのコピーを作成し、オブジェクトから派生されたアイテムを作成し、内部アイテム（例えば、使用及びインスタンス）を修正して付加的な構造を加え、オブジェクトに、及び使用及びインスタンスに含まれる内部アイテム（例えば、パラメータ及びプロパティ値）を修正し、選択された内部アイテム、リンク及び非リンクオブジェクトを隠すかまたは使用不能にし、及び／またはアイテムまたはオブジェクトに対する変更の伝播及び分散を制御することが可能であり得る。
【０１１７】
例示的なシナリオ
次に、プロセスプラントまたはプロセス制御システム内のフレキシブルな構成の特徴、性能及び動作を例解するために、数個の例示のシナリオが提供される。これらの例示のシナリオは、図１〜７のいずれかによって、またはそれらの組み合わせによって例解される技法の任意の１つ以上の部分によって実施され得る。これらの例示のシナリオは、限定することは意図されておらず、本明細書においては、本明細書で説明された技法、システム
及び方法の概念、利点及び使用のうちのいくつかを例解するために提供される。加えて、これらのシナリオは、可能なシナリオの網羅的なセットではない。さらに、これらの例示のシナリオは、概してライブラリアイテムまたはオブジェクトに言及するが、シナリオは、プロセスプラントまたはプロセス制御システム内部の他のアイテム及びオブジェクト、例えばシステム構成オブジェクト、図形及び表示オブジェクト、インスタンスオブジェクト、プロセス要素オブジェクト、クラスオブジェクト等に容易に適用され得る。
【０１１８】
図８に図示された第１の例示のシナリオでは、ユーザは、ライブラリアイテムまたはオブジェクト１０００を作成、変更または修正するためのタスクを行うかまたは１つ以上のコマンドを実行する。一実施形態では、コマンドは、例えばワークステーション１４または他のユーザインターフェースを介して、構成システムで受信される。ユーザがライブラリアイテムまたはオブジェクト１０００を作成及び編集し、それを保存すると、アイテムのドラフト１００２が記憶される。ユーザは、ドラフト１００２に対し付加的な編集を行い得る。ある時点で、ユーザは、アイテムの変更及び発行１００５を承認する。発行１００５は、この第１の例示のシナリオにおけるライブラリアイテム１０００がいかなる子も有していない場合、結果として、ライブラリアイテム１０００の新しいエディション１００８をもたらす。新しいエディション１００８は、プロセスプラントまたはプロセス制御環境のランタイム環境内へのインスタンス化に利用可能である。
【０１１９】
図９に図示された第２の例示のシナリオでは、ライブラリアイテム１０１０は、子アイテムまたはオブジェクト１０１２を有し得、例えば、ライブラリアイテム１０１０は、別のライブラリアイテムに、またはシステム構成アイテム１０１２にリンクされる。この第２のシナリオでは、ユーザは、ライブラリアイテム１０１０に対する変更を行い、それをドラフト修正ライブラリアイテム１０１３として記憶する。ある時点で、ドラフト１０１３に対する変更が承認され、ユーザは、ドラフト１０１３を発行し、変更を含むライブラリエディション１０１４の現在のエディションを生成する。ユーザは、例えばプロセスプラントの動作フェーズ、職員、手順の問題、及び／または他の懸念を考慮して、どのようにしてライブラリアイテム１０１０に対する変更がその子１０１２に分散されるかまたは伝播されるかを制御することを希望する。ユーザ操作による分散は、変更または修正が最適な時点で（例えば、正規のサポートチームがバルブをブロックするために適所にある等）分散されることが可能であるときに、プロセスプラントでの（例えば、精油所での）動作を改善し得る。
【０１２０】
ライブラリアイテム１０１０の現在のエディション１０１４の制御された伝播または分散を達成するために、ユーザは、ライブラリアイテム１０１０に対する分散プロセスを制御するポリシー設定を設定する。一実施形態では、ポリシー設定は、ライブラリアイテム１０１０に対応し得る。一実施形態では、ポリシー設定は、ライブラリアイテム１０１０の使用または子１０１２に対応し得る。一実施形態では、ポリシー設定は、２つのオプション、自動１０１８及びユーザ操作１０１５を含み得る。ポリシーが自動１０１８に設定されると、ライブラリアイテム１０１０の発行された現在のエディション１０１４（または、発行されたエディション１０１４に含まれる変更）は、ライブラリアイテム１０１０から子アイテム１０１２に自動的に分散１０１８される。ポリシー設定がユーザ操作１０１５である場合、ユーザは、現在のエディション１０１４のドラフト１０２２を作成し得る。ドラフト１０２２は、今度は、子アイテム１０１２の新しい現在のエディション１０２５として発行され得る。
【０１２１】
図１０に示されるように、システム構成アイテム１０１２の新しい現在のエディション１０２５がインスタンス化され得る。例えば、システム構成アイテム１０１２が制御または機能ブロックに対応する場合、現在のエディション１０２５は、ダウンロードエディション１０２８に変換され得、これは、実行のエディション１０３２として、対応するラン
タイムアイテム１０３０内に（例えば、自動的にまたはユーザ表示によって）ダウンロードされ得る。別の例では、システム構成アイテム１０１２が図形要素に対応する場合、図形要素の現在のエディションは、グラフィカルアイテムを含む表示ビューが構築されるとランタイムでインスタンス化される。
【０１２２】
一方、図９に戻って参照すると、分散ポリシー設定がユーザ操作１０１８を示すと、ユーザは、ライブラリアイテム１０１０になされた変更を、その子アイテム１０１２の各々に所望のように手動で伝播するかまたは分散し得る。基本的には、ライブラリアイテム１０１０の現在のエディション１０１４は、ユーザコマンド１０１８（これは、ユーザによって明確に入力されるかスクリプトに含まれてもよい）によって子アイテム１０１２に対するライブラリから「引き出され」る。一例では、ユーザは、対象の子アイテム（例えば、システム構成アイテム１０１２）を選択し、ライブラリアイテム１０１０の現在のエディション１０１４（または、その内部での修正）が対象の子アイテム１０１２に伝播されることを要求する１０１８。伝播されると、システム構成アイテム１０１２のドラフト１０２２が作成及び記憶される。ユーザは、ドラフトシステム構成アイテム１０２２に対する付加的な編集をしてもよく、またはしなくてもよい。いくつかの所望の時点において、ユーザは、ドラフトシステム構成アイテム１０２２を発行し、結果として、インスタンス化されることができるシステム構成アイテム１０１２の新しいエディション１０２５をもたらす。
【０１２３】
先のシナリオは、ライブラリアイテム１０００及び１０１０に対する修正を説明する。しかしながら、ライブラリアイテム１０１０のみが修正可能ではない。図１１は、ユーザがライブラリテンプレートではないシステム構成アイテム１０４０に直接変更を行うシナリオを図示する。ユーザは、構成アイテム１０４０に対する変更をドラフト１０４２として保存し、ドラフト１０４２が承認された後、ユーザは、ドラフト１０４２をアイテム１０４０の現在のエディション１０４５に発行する。図１１に示された例では、ユーザは、ダウンロードエディション１０４８が（例えば、実行可能に）生成されることを要求し、その後続いて、アイテム１０４０のダウンロードエディション１０４８がランタイムアイテム１０５０に伝送されることを要求し、それによって、実行しているエディション１０５２が、対応するランタイムアイテム１０５０に含まれ、それによって実行されるようにされる。
【０１２４】
本明細書で説明されたフレキシブルな技法及びオブジェクトを例解する他の可能なシナリオは、以下を含む。
【０１２５】
１．ユーザは、多数のエディションを有するライブラリアイテムをコピーする。
このシナリオでは、分散ポリシー設定は、ユーザ操作に設定される。多数のエディションを有するライブラリアイテムが、ライブラリ内に存在する。
【０１２６】
ユーザは、ライブラリアイテムをコピーして、異なる名称を有する新しいライブラリアイテムを作る。結果として得られたライブラリアイテムのコピーは、元のライブラリアイテムの現在のエディションに一致する単一のエディションを有する。しかしながら、新しいライブラリアイテムは、単なるコピーであり、元のライブラリアイテムに対する後続の変更によって影響されない。
【０１２７】
２．ユーザは、別のライブラリアイテムからライブラリアイテムを派生させる。
アイテム（例えば、表示またはフェースプレート）は、ライブラリ内に存在する。アイテムは、例えば、１つの送信機及び２つのバルブを示す単一のタンクを有する。
【０１２８】
ユーザは、第１のライブラリアイテムから派生された新しいライブラリアイテムのドラ
フトを作成するためのコマンドを選択する。そして、ユーザは、第２の送信機を加えるようにドラフトを修正し、ドラフトを保存し、ドラフトを派生されたライブラリアイテムの第１のエディションとして発行する。
【０１２９】
続いて、ユーザは、第３のバルブを加えるように元のライブラリアイテムを修正し、元のライブラリアイテムのドラフトを保存し、ドラフトをエディション内に発行する。そして、ユーザは、修正された元のライブラリアイテムのエディションを分散する。分散の結果として、派生されたライブラリアイテムは、ここで３つのバルブを包含する。
【０１３０】
３．ユーザが多数のエディションを有するライブラリアイテムのインスタンスを作成する。
分散設定は、ユーザ操作に設定され、このシナリオでは、ただ１つの現在のエディションが、いつでも利用可能である。ユーザは、ライブラリアイテムを作成し、ライブラリアイテムの第１のインスタンスを作成する。そして、ユーザは、元のライブラリアイテムを修正し、修正をドラフトとして保存し、修正された元のライブラリアイテムを発行する。発行は、結果として元のライブラリアイテムの新しいエディションをもたらす。
【０１３１】
次に、ユーザは、ライブラリアイテムの第２のインスタンスを作成する。第２のインスタンスは、ライブラリアイテムの現在のエディション（例えば、修正された元のライブラリアイテム）に基づくが、第１のインスタンスは影響を受けない。すなわち、第１のインスタンスは、修正なしに元のライブラリアイテムに基づいたままである。
【０１３２】
一実施形態では、新しいインスタンスまたは使用が、多数のエディションを有するライブラリアイテムから作成されると、新しいインスタンスまたは使用は、ライブラリアイテムの現在の利用可能なエディションを参照する。
【０１３３】
４．ユーザは、多数のエディションを有するライブラリアイテムの使用を作成する。
このシナリオは、先のシナリオに類似しているが、インスタンスに代えて、ライブラリアイテムの使用を伴う。このシナリオでは、ただ１つの現在のエディションが、一度に利用可能である。新しい使用が、多数のエディションを有するアイテムから作成されると、新しい使用は、ライブラリアイテムの現在の利用可能なエディションに基づく。
【０１３４】
５．ユーザは、使用を有するライブラリアイテムを修正する。
このシナリオでは、システム構成アイテムは、ライブラリアイテムに基づく。システム構成アイテムは、ライブラリアイテムの使用（例えば、モジュール内部の複合機能ブロック使用）を含む。変更の分散は、ユーザ操作に設定される。
【０１３５】
ユーザは、システム構成アイテムが基礎とするライブラリアイテムを変更し、ライブラリアイテムが多数のライブラリアイテムのエディションがあることを示すための視覚的指標（例えば、スタックされたアイコン）をここで有することを確認する。ユーザは、ライブラリアイテム上の参照ビューを開き、例えばシステム構成アイテムに含まれるような、ライブラリアイテムの新しい（今現在の）エディションを使用していない使用（モジュール内の複合機能ブロック使用）があることを目視する。
【０１３６】
６．ユーザは、別のライブラリアイテムにおける使用を有するライブラリアイテムを修正する。
このシナリオは、先のシナリオに類似しているが、使用が、システム構成アイテムではなく、別のライブラリアイテムに含まれる。このシナリオでは、分散ポリシーのみが、システム構成アイテムに対する分散を制御し、ユーザ操作に設定したまま維持される。ライブラリアイテムに対する変更は、ポリシー設定に関係なく、他のライブラリアイテム内部
の使用に自動的に分散される。すなわち、ライブラリアイテムに対する分散は、「自動」にデフォルト設定され、修正されることが可能ではない。分散は、影響を受けたライブラリアイテムが他のライブラリアイテムによって使用されるそれら自体である場合、繰り返し使用され、新しいエディションは、別のライブラリアイテムに対する変更によって影響を受けなかったすべてのライブラリアイテムに対して作成される。
【０１３７】
いくつかの実施形態では、修正可能なポリシー設定は、ライブラリアイテムに利用可能であり、異なる修正可能なポリシー設定は、構成アイテム等の非ライブラリアイテムに利用可能である。
【０１３８】
７．ユーザは、インスタンスを有するライブラリアイテムを修正する。
このシナリオでは、ライブラリアイテムのインスタンス（例えば、モジュールインスタンス）は、システム構成アイテムとして記憶される。分散は、ユーザ操作に設定される。
【０１３９】
ユーザは、ライブラリアイテムを変更し、ライブラリアイテムが多数のエディションがあることを示すための視覚的指標（例えば、スタックされたアイコン）をここで有することを確認する。ユーザは、ライブラリアイテム上の参照ビューを開き、ライブラリアイテムの新しい（今現在の）エディションを使用していないシステム構成インスタンスがあることを目視する。
【０１４０】
８．ユーザは、派生されたライブラリアイテムを有するライブラリアイテムを修正する。
このシナリオでは、親ライブラリアイテムは、システム構成アイテムによって次に使用される派生されたライブラリアイテムによって使用される。システム構成アイテムに対する分散は、ユーザ操作に設定され、ライブラリアイテム対する分散は、修正可能ではなく、自動にデフォルト設定される。
【０１４１】
ユーザは、親ライブラリアイテムを修正する。ライブラリアイテム分散設定が自動である場合、派生されたライブラリアイテムは、自動的に更新される。しかしながら、派生されたライブラリに基づくシステム構成アイテムは、構成アイテムに対する分散設定がユーザ操作に設定されていると更新されない。このように、システム構成アイテムは、派生されたライブラリアイテムの先のエディションを使用し続ける。ユーザは、親ライブラリアイテム上の参照ビューを開き、派生されたライブラリアイテムが親ライブラリアイテムの現在のエディションを使用しているが、システム構成アイテムはそうではないことを確認することによってこれを目視することができる。
【０１４２】
９．ユーザは、ライブラリアイテムのコンテクストにおける使用を更新する。
先のシナリオに基づいて、ユーザは、ライブラリアイテムのすべてのインスタンスが更新されてはいないことを示す、ライブラリアイテムに対応するスタックされたアイコンを目視する。システム構成アイテムに対する分散は、ユーザ操作に設定される。
【０１４３】
ユーザは、ライブラリアイテム上の参照ビューを開き、各々がライブラリアイテムを使用する、２つの表示に対応する２つの列を目視する。そして、ユーザは、ライブラリアイテムの現在の更新されたエディションを使用するように、表示のうちの１つを変更する。ユーザは表示を開くと、ユーザは、ライブラリアイテムの現在の更新されたエディション、例えば、表示及び任意のライブラリアイテム使用の両方が、それらが現在の更新されたエディションを使用していることを示すことを目視する。
【０１４４】
その後、ユーザは、第２の表示上の参照ビューを開き、ライブラリアイテムの現在の更新されたエディションを使用するための使用を変更する。ユーザは、第２の表示を保存し、使用のアピアランスは、ライブラリアイテムの現在の更新されたエディションを使用す
ることを示す。
【０１４５】
ユーザ変更の結果として、ライブラリアイテムの第１のエディションにリンクされたアイテムは、システム内には存在せず、そして、第１のエディションは、システムによって自動的に削除される。他の実施形態では、第１のエディションは、使用不能または非活動に設定され得る。
【０１４６】
ユーザは、現在のものでない使用を複数選択し、それらを現在のエディションに更新するように選ぶことができる。ライブラリアイテム上のインジケータは、すべてのインスタンスが最新のエディションを使用しているときには消え得る。使用またはインスタンスが複数選択操作中に更新されることができないイベントでは、使用またはインスタンスがスキップされ、更新は次のアイテムに進む。更新の終わりには、ユーザには、アイテムが首尾よく更新されなかったことが示される。
【０１４７】
１０．ユーザは、ライブラリアイテムのコンテクストにおけるライブラリアイテム使用を更新する。
一実施形態では、ライブラリアイテムに対する変更は、システム構成分散ポリシー設定に関係なく、他のライブラリアイテム内部の使用に自動的に分散される。いくつかの実施形態では、異なるライブラリ分散ポリシー設定は、そのように行うための許可を有するユーザによって利用可能であり得るかまたは修正可能であり得る。
【０１４８】
１１．ユーザは、ライブラリアイテムのコンテクストにおけるインスタンスを更新する。
このシナリオは、従来のクラスベースのモジュール挙動を拡張する。ライブラリアイテムが存在し、ライブラリアイテムのインスタンスは、システム構成アイテムとして記憶される。しかし、インスタンスは、ライブラリアイテムの現在のエディションを使用していない。システム構成オブジェクトに対する分散は、ユーザ操作に設定される。
【０１４９】
ユーザは、ライブラリアイテムを選択し、参照ビューを開く。ユーザは、システム構成インスタンスがライブラリアイテムの現在のエディションを使用していないことを目視し、そして、ユーザは、インスタンスを選択し、「最新にする」コマンドを実行する。このコマンドは、結果として、ライブラリアイテムの現在のエディションを使用するインスタンスのドラフトを新しくする。そして、ユーザは、システム構成インスタンスのドラフトを編集及び／または発行するためのステップを取り得る。
【０１５０】
１２．ユーザは、ライブラリアイテムのコンテクストにおいて派生されたアイテムを更新する。
ユーザは、他のライブラリアイテムに基づかないライブラリアイテムを作成することが許可されている。例えば、ユーザは、あらゆる連結なしに親ライブラリモジュールを作成し得、そして、連結を付加することにより、親ライブラリモジュールのすべての能力を有する派生されたライブラリモジュールを作成し得る。親ライブラリモジュールのアルゴリズムに対する変更は、派生されたライブラリモジュールまで流れることができ、それによって、ユーザは、１つの場所で定義されたアルゴリズムを有することによって、利益を得る。
【０１５１】
１３．ユーザは、使用のコンテクストにおける使用を更新する。
このシナリオでは、ユーザは、現在のエディションを使用するために使用を更新することを所望している。例えば、制御モジュールオブジェクトは、システム構成オブジェクトとして記憶され、単一の入力コネクタを有する単一のエディション複合ブロックの機能ブロック使用を含む。単一のエディション複合ブロックは、ライブラリアイテムであり、システム構成オブジェクトに対する分散は、ユーザ操作に設定される。ユーザは、ライブラ
リ内の複合ブロックを修正して、別の入力コネクタを加え、複合ブロックに対する新しい現在のエディションを作成する。ユーザは、ライブラリ複合ブロックが多数のエディションを有することを示す図形を目視することができる。
【０１５２】
次に、ユーザは、特定の制御モジュール上の機能ブロック使用を選択し、「最新にする」コマンドを選択する。特定の制御モジュールの使用は、現在のエディションを使用するように更新し、そして、付加的な入力コネクタを示す。先のライブラリ複合ブロックエディションがシステムで使用されていない場合、図形は、ライブラリ複合ブロックがもはや多数のエディションを有していないことを示すように変更される。
【０１５３】
１４．ユーザは、ライブラリアイテム使用のコンテクストにおけるライブラリアイテム使用を更新する。
派生されたアイテムのように、他のライブラリアイテム内のライブラリアイテム使用（例えば、機能ブロック）は、構成アイテムに対する分散ポリシー設定に関係なく、自動更新にデフォルト設定され得る。しかしながら、いくらかの干渉に起因して、変更が別のライブラリアイテムに自動的に分散されることができない場合、ユーザは、ライブラリアイテム使用を手動で補正し得る。
【０１５４】
１５．ユーザは、インスタンスのコンテクストにおけるインスタンスを更新する。
このシナリオでは、ライブラリモジュールは単一のエディションを有し、ライブラリモジュールのインスタンスはシステム構成アイテムとして記憶される。システム構成アイテムに対する分散は、ユーザ操作に設定される。ユーザは、ライブラリモジュールを修正し、変更を発行する。ライブラリモジュールに関連付けられた表示の図形は、ライブラリ複合ブロックが多数のエディションを有することを示す。
【０１５５】
ユーザは、モジュールインスタンスを選択し、「最新にする」コマンドを選択する。ライブラリモジュールの現在の修正されたエディションを使用するインスタンスのドラフトが作成される。そして、ユーザは、モジュールインスタンスの新しい現在のエディションを作成するようにドラフトを作成することができる。先のライブラリモジュールエディションがもはやシステムのどこでも使用されていない場合、ライブラリに関連付けられた多数のエディションインジケータは、表示から取り除かれる。
【０１５６】
１６．ユーザは、設備アイテムに包含されたすべてのインスタンスを更新する。
このシナリオは、先のシナリオに類似しているが、更新が設備アイテムのコンテクスト、例えばエリア、セル、またはユニットにおいて行われることを除く。単一のエディションを有するライブラリモジュールが存在し、モジュールの２つのインスタンスが、一エリア下のシステム構成内に存在する。システム構成に対する分散は、ユーザ操作に設定される。ユーザは、ライブラリモジュールを修正し、ライブラリ複合ブロックが多数のエディションを有することを示す図形が提供される。
【０１５７】
コンテクスト（例えば、エリア）に対応する表示上では、エリアもまた、最新ではないインスタンスを有するとしてマークされる。エリアビューを拡大すると、２つのモジュールインスタンスが、最新ではないとしてマークされる。ユーザは、エリアを選択し、「最新にする」コマンドを選択する。ライブラリモジュールの最新のエディションを使用するインスタンスのドラフトが作成される。ユーザは、モジュールインスタンスの新しい現在のエディションを作成するようにドラフトを発行し得、これによって、表示から「最新ではない」マーキングが消される。先のライブラリモジュールエディションがもはやシステムのどこでも使用されていない場合、ライブラリモジュールに対応する多数のエディションインジケータもまた、表示から取り除かれ得る。
【０１５８】
１７．ユーザは、派生されたアイテムのコンテクストにおいて派生されたアイテムを更新する。
ライブラリは、２つのアイテム、ライブラリ表示ＤＩＳＰ１と、ＤＩＳＰ１から派生されたライブラリ表示ＤＩＳＰ２とを記憶する。ユーザは、ＤＩＳＰ１を変更して、テキストフィールドを加え、ＤＩＳＰ１を発行し、ＤＩＳＰ１を分散する。したがって、ＤＩＳＰ２は、テキストフィールドとともに自動的に更新される。
【０１５９】
同様に、ライブラリは、それに関連付けられたフェースプレートを有し得るライブラリデバイスタイプＶＡＬＶＥを記憶する。また、ライブラリは、ＶＡＬＶＥから派生され、ＶＡＬＶＥによって使用されるフェースプレートに対する付加的な情報を含むライブラリデバイスタイプＤＶＣを記憶する。加えて、ライブラリは、特定用途向けライブラリデバイスタイプＭｆｃｔｒＤＶＣを記憶し、これがひいては、ＤＶＣに対するフェースプレートにまたさらなる情報を加える。ユーザがＶＡＬＶＥに対するパラメータ値を変更すると、パラメータ値は、ＤＶＣ及びＭｆｃｔｒＤＶＣがパラメータ値をオーバーライドしないときには、ＤＶＣ及びＭｆｃｔｒＤＶＣの両方において自動的に更新される。
【０１６０】
上記に対する追加として、ユーザは、ＭｆｃｔｒＤＶＣデバイスタイプからこのデバイスタイプを派生させることによって、特定用途向けデバイスタイプＭｆｃｔｒＤＶＣ−重要サービスを作成する。その際に、ユーザは、パラメータのうちの１つをオーバーライドする。この追加シナリオでは、ユーザがＶＡＬＶＥの同じパラメータの値を変更すると、パラメータ値は、ＤＶＣ及びＭｆｃｔｒＤＶＣにおいて自動的に更新されるが、これは、ＤＶＣ及びＭｆｃｔｒＤＶＣがパラメータ値をオーバーライドしないためである。しかしながら、パラメータ値は、ユーザがパラメータ値をオーバーライドしているため、ＭｆｃｔｒＤＶＣ−重要サービスにおいては変更されない。
【０１６１】
このように、一実施形態では、他のアイテムから派生されたライブラリアイテムは、システム構成アイテムに対する分散ポリシー設定にかかわらず、親ライブラリアイテムが変更されると常に更新される。しかしながら、干渉に起因して、親ライブラリアイテムの現在のエディションは、構造的変更を有する派生されたライブラリアイテムへは、自動的には伝播され得ない。ユーザが問題を補正した後、ユーザは、派生されたライブラリアイテムを手動で更新し得る。
【０１６２】
１８．ユーザは、結果として規則違反となる使用を更新する。
このシナリオでは、システム構成オブジェクトに対する分散は、自動に設定される。しかしながら、ライブラリアイテムに対してなされた変更を分散することは、規則（例えば、データベース規則）が違反された場合、子システム構成インスタンスのいくつかまたはすべてを更新することが可能ではない場合がある。この不具合は、分散が発行の後のステップに紐づけられているときにライブラリアイテムを保存すると、ユーザに対して明らかにはならない場合がある。実際、新しいエディションは、不具合が発見される前に、他のリンクされたアイテムによって既に使用中である場合がある。この状況では、ユーザは、ライブラリアイテムを編集して不具合を補正し得、それによって、すべてのインスタンスが規則違反なしに使用可能であるライブラリアイテムの新しい現在のエディションを生成する。
【０１６３】
例解するために、新しい使用を有する新しいエディションへの更新は、インスタンスに加えられた使用の名称と干渉する。例えば、ライブラリは、ＵＳＡＧＥ１と名付けられた使用とともにライブラリモジュールＬＭを記憶する。ライブラリモジュールＬＭのシステム構成インスタンスＭＡ及びＭＢは、エリアＡｒｅａＡに存在する。そして、ユーザは、使用ＵＳＡＧＥ２をインスタンスＭＡに加える。
【０１６４】
ユーザは、使用ＵＳＡＧＥ２をライブラリモジュールＬＭに加え、ライブラリモジュールＬＭを発行し、それを分散する。インスタンスＭＡは既に使用ＵＳＡＧＥ２を有しているため、インスタンスＭＡは、最新ではないままにされ、「最新ではない」インジケータは、インスタンスＭＡに対応する。しかしながら、インスタンスＭＢは、そのような使用を有しておらず、首尾よく更新される。
【０１６５】
１９．ユーザは、ユーザ操作から自動システム構成分散に切り替えた後、ライブラリアイテムを保存する。
このシナリオでは、ライブラリアイテムは、多数の表示によって使用される。１つの表示は、現在のエディションを使用しており、一方で他の表示は、先のエディションを使用している。ユーザは、ユーザ操作から自動分散に切り替える。分散をユーザ操作から自動分散に変更することは、表示に影響しない。
【０１６６】
システム構成分散設定が自動に設定されている間、ユーザは、ライブラリアイテムを修正する。結果的に、ライブラリアイテムのすべてのインスタンスが、現在の修正されたエディションを使用するように更新される。システム構成インスタンスのすべてが更新されるため、ライブラリアイテムのより古いエディションはもはや参照されず、自動的に削除され得る。ライブラリアイテムに対するアイコンが変更されて、１つのエディションのみが存在することを示す。
【０１６７】
２０．ユーザは、ライブラリアイテムの現在のエディションを使用していないインスタンスをダウンロードする。
ユーザは、プロセス要素に、ライブラリアイテムの現在のエディションを使用していないシステム構成インスタンスをダウンロードし得る。ダウンロード要求は、結果としてダウンロード警告を表示させ得る。
【０１６８】
２１．ユーザは、ライブラリアイテムの現在のエディションを使用していない使用を有するオブジェクトをダウンロードする。
ユーザは、プロセス要素に、ライブラリアイテムの現在のエディションを含んでいないシステム構成インスタンスをダウンロードし得る。ダウンロード要求は、結果としてダウンロード警告を表示させ得る。
【０１６９】
２２．ユーザは、ライブラリアイテムを包含するファイルをインポートする。
このシナリオでは、ユーザは、ファイルをインポートし、ファイル内のアイテムのリストは、ユーザに提示される。ユーザは、各アイテムに対するインポート挙動（例えば、スキップ、上書き等）から選択され得る。
【０１７０】
上記の例示のシナリオが例解するように、ユーザは、本明細書で説明されたフレキシブルな構成技法、システム及び方法を使用して、少なくとも以下のアクションまたはコマンドを行うことが可能であり得る。
【０１７１】
編集−アイテムまたはオブジェクトを開き、場合によっては修正。ユーザは、ドラフトまたはエディションを開き得る。
【０１７２】
ドラフトとして保存−開かれた（かつ、場合によっては修正された）アイテムをドラフトとして保存。
【０１７３】
試験−ドラフトオブジェクトをダウンロードまたはインスタンス化することなく、ドラフトオブジェクトを稼働。
【０１７４】
承認−発行に対するドラフトを承認。
【０１７５】
発行−ドラフトを取り、それを現在のエディションにする。典型的には、発行は、ドラフトが承認された後に実行される。
【０１７６】
生成−発行されるかまたは現在のエディションからダウンロードまたはランタイムエディションを生成。
【０１７７】
伝送−エディションをランタイムに伝送。
【０１７８】
ダウンロード−ダウンロードエディションをランタイムに送信する伝送コマンドの一実施形態。典型的には、ダウンロードは、システム構成アイテムのコンテクスト内で実行される。
【０１７９】
分散／伝播／更新−特定のオブジェクトエディションに対してなされた修正で更新。特定のオブジェクトに対する修正の更新、分散または伝播は、結果として多数の他のリンクされたオブジェクト、例えば、子オブジェクト及び／または親オブジェクトを更新し得る。
【０１８０】
ライブラリから更新−ライブラリオブジェクトから派生された子オブジェクトに対するライブラリオブジェクトエディションに対する修正を更新（例えば、分散または伝播）。ライブラリオブジェクトの更新または伝播は、結果として多数のレベルのリンクされた子を更新し得る。このように、ユーザは、例えば、ライブラリアイテムの現在のエディションから、インスタンスまたは派生されたアイテム使用を生成し得る。
【０１８１】
削除−記憶部からオブジェクトまたはアイテムを削除。
【０１８２】
検証−アイテムまたはオブジェクトのエラーについて点検。ドラフト及びエディションの両方が、検証されることができる。
【０１８３】
差異−オブジェクトまたはアイテムの様々なエディション間の差異を判定。
【０１８４】
参照−アイテムまたはオブジェクトに関連付けられた参照を判定。
【０１８５】
いくつかの実施形態では、上記のアクションまたはコマンドのうちの１つ以上が、隠されるか、またはエンドユーザに利用可能でなくてもよい。例えば、生成及び伝送コマンドを組み合わせて、ダウンロードコマンドにしてもよく、またはユーザは、ユーザが正規の許可を有していない限り、アイテムを削除することが許されていない場合がある。
【０１８６】
一実施形態では、ユーザは、フレキシブルな構成システムに、アイテムまたはオブジェクトに対するドラフト、現在の発行されたエディション、及びダウンロードエディション間の任意の差異を示すことを要求することが可能である。例えば、ユーザは、ドラフトと現在の発行されたエディション、ドラフトとバージョン制御における任意のエディション、ドラフトとダウンロードエディション、２つの異なるドラフト、２つの異なる現在のエディション、現在のエディション及びダウンロードエディション、及び他の組み合わせの間の差異を目視することを要求し得る。
【０１８７】
一実施形態では、ユーザは、直接リンクされた子オブジェクトが特定のオブジェクトの現在のエディションを使用しているか否かにかかわらず、構成システムに、特定のオブジェクトのすべての直接リンクされた子を表示することを要求することが可能である。反対
に、一実施形態では、ユーザもまた、子オブジェクトがその親オブジェクトの現在のエディションを使用しているかを判定するためのビューを要求することが可能である。
【０１８８】
パッケージ
いくつかの実施形態では、上述されたドラフト、発行及びインスタンス化の技法は、オブジェクトのグループに適用され得る。グループまたは複数のオブジェクトは、本明細書では概して「パッケージ」と称される。一実施形態では、パッケージのメンバは、ユーザによって選択される。パッケージのメンバのうちの少なくともいくつかは、いくつかのケースでは、製造者または供給者によってボックス外（ＯＯＢ）に提供される。
【０１８９】
例えば、ＯＯＢパッケージは、「スターター」ライブラリアイテムのセット（例えば、モジュール、複合、表示、デバイス等）を含み得る。ユーザは、アイテムのスターターコレクションから様々なアイテムを選択し、プロセスソリューション、例えば制御ループまたはプロセスモデルを作成し得る。ユーザが、カスタマイズされたオブジェクトをＯＯＢパッケージに加える場合、ユーザは、補強されたＯＯＢパッケージを、スターターパッケージとは異なるパッケージとして指定し得る。
【０１９０】
別の例示のパッケージは、特定のプロセス、例えば、ボイラパッケージまたは反応装置パッケージの問題に適合された構成実装を含み得る。そのようなパッケージは、典型的には、プロセス制御問題に対する完全なソリューションとして使用され、それ自体が、本明細書では「ソリューションパッケージ」と称される。一実施形態では、ソリューションパッケージは、パッケージのインスタンスを行ったときに適用されるオプションのインスタンス化規則を含む。例えば、ボイラパッケージがインスタンス化されると、規則は、どのようにしてパッケージ内のすべてのアイテムが、ネーミング規則に従って、文字列置換を使用して、名付けられるかを提示することができる。
【０１９１】
アイテムまたはオブジェクトと同様に、現在のパッケージに対して、１つ以上のドラフトを作成または編集してもよい。ドラフトパッケージは、エディションに発行され得、エディションは、インスタンス化のために選択され得る。一実施形態では、ユーザがパッケージの新しいエディションを保存することを欲する場合、新しいエディションが先のエディションにとって代わり得るか、または新しいエディションは、先のエディションと並行して保存され得る。
【０１９２】
これらのパッケージドラフト、パッケージ発行、及びパッケージインスタンス化の技法は、ユーザに、また別のレベルの柔軟性を提供する。一例示の（しかし、非限定的な）シナリオでは、ライブラリパッケージは、パッケージの第１のドラフトとして作成され記憶される。例えば、ライブラリパッケージは、ボイラの、または反応装置のテンプレート構成に対応する。パッケージの第１のドラフトは、第１のエディションとして発行されて記憶され、そしてプロセスプラントまたはシステム内部にインスタンス化される。続いて第１のエディションが修正され（例えば、問題を補正するため、及び／またはボイラに、または反応装置に機能性を加えるため）、続いてパッケージの第２のエディションとして発行される。パッケージの第２のエディションをインスタンス化するためのユーザ表示を受信すると、パッケージの第１のバージョンから更新されたパッケージの第２のエディションに含まれるアイテムのみが、インスタンス化される。さらに、ユーザは、論理、性能、帯域幅、及び／または他の制約によって必要とされると、様々な更新されたアイテムのインスタンス化のタイミングを示し得る。第２のエディションの使用が何らかの理由で終了されることを要する場合、第１のエディションは、プロセスプラントまたはシステム内部に再インスタンス化され得る。
【０１９３】
グラフィカルまたは表示アイテムまたはオブジェクト
ここでフレキシブルなグラフィカルまたは表示アイテムまたはオブジェクトを考察すると、「表示」は、概して、本明細書で参照される場合、ランタイム時にオペレータによって個々に開かれて目視されることができるグラフィカル実体（例えば、最も粒度の細かい実体）である。典型的には、フレキシブルなグラフィカルまたは表示アイテムまたはオブジェクトは、他のグラフィカルオブジェクトから構成され、オブジェクトライブラリに、またはシステム構成データ記憶実体に記憶され得る。表示は、プロセス要素のランタイム中、実行に対して発行されたエディションをダウンロードすることによってインスタンス化され得るか、またはリアルタイムで、もしくはランタイム時に、例えばオペレータが特定の表示ビューが構築されることを要求したときにインスタンス化され得る。フレキシブルなグラフィカルアイテムまたはオブジェクトによって定義され得る表示のタイプは、例えば以下を含む。
【０１９４】
１）動作表示：動作表示は、概して、プロセスプラント内で実行する間、プロセス内部へのウィンドウまたはプロセスの表現を提供する。典型的には、表示ビューは、ＧＥＭ及び他のライブラリ及び／またはシステム構成オブジェクトから構成され、ローカルまたはリモートユーザインターフェース上でインスタンス化され得る。
【０１９５】
２）ダッシュボード表示：ダッシュボード表示は、オペレータ及びプラント作業員に主要な数値指標を提供する。ダッシュボード表示は、ライブラリ及び／またはシステム構成オブジェクトから構成され、ローカルまたはリモートユーザインターフェース上でインスタンス化され得る。いくつかの実施形態では、ダッシュボード表示上に含まれる限定された能力、特徴、または図形は、ランタイム時にオペレータによって構成及びインスタンス化され得る。ダッシュボード上に含まれる能力、特徴、及び図形要素ならびに形状は、本明細書では概して「ガジェット」と称される。概して言えば、ガジェットは、ランタイム時に利用可能であるとしてマークされ、ダッシュボード表示上に位置することができるＧＥＭである。このように、本明細書で使用される場合、用語「ＧＥＭ」は、概して、ガジェットであるＧＥＭ及びガジェットではないＧＥＭの両方を指す。ダッシュボード及びガジェットの例は、２０１２年１０月８日出願の同時継続中の米国仮特許出願第６１／７１１，１０５号、発明の名称「Ｃｏｎｆｉｇｕｒａｂｌｅ  Ｕｓｅｒ  Ｄｉｓｐｌａｙｓ  ｉｎ  ａ  Ｐｒｏｃｅｓｓ  Ｃｏｎｔｒｏｌ  Ｓｙｓｔｅｍ」に提供され、その内容全体は、参照により本明細書に組み入れられる。
【０１９６】
３）レイアウト表示：レイアウト表示は、ユーザインターフェース上の領域またはエリアを提供し、ユーザがその上に他の表示を組織化することを可能にする。レイアウト表示によって、ユーザは、単一の監視画面上に、または数個の監視画面にわたって、表示の配置を作成することが可能である。
【０１９７】
４）フォーム表示：フォーム表示は、構成またはランタイム中のデータエントリのためのユーザインターフェースを提供する。ユーザは、フォーム表示を利用してオブジェクトを作成または修正し、構成またはランタイムデータを入力し、値を入力し、概して表示アイテム及びオブジェクトを操作し得る。
【０１９８】
表示は、典型的には１つ以上のビューを包含し、それら各々が表示の異なる視覚表現である。表示の各々のビューは、形状（例えば、矩形、楕円形、及び他の形状）及び／または制御（例えば、ラベルまたはテキストボックス）を包含し得、かつオブジェクトライブラリに記憶されるか、またはシステム構成データ記憶実体のように、対応するオブジェクトを有し得る。いくつかの形状、例えば矩形のテキストボックスまたはスタックペインは、構成システムに組み込まれかつその中に記憶され得る（例えば、システムとともにコンパイルされて登録される）。ユーザによって他の形状を作成してもよく、対応する形状オブジェクトがオブジェクトライブラリに、またはシステム構成ＧＥＭまたはガジェットと
して記憶されてもよい。
【０１９９】
先に述べたように、ＧＥＭまたはガジェットは、１つ以上の形状と挙動とを組み合わせた再利用可能な形状である。ＧＥＭｓ及びガジェットは、ユーザによって作成され、エディション内に発行され、構成システム内にオブジェクトとして、例えばライブラリ内に、またはシステム構成内に記憶され得る。ＧＥＭは、他のオブジェクトにリンクされてもよく、ＧＥＭオブジェクトに対する後続の変更が、他のＧＥＭ及び表示において、例えば先に説明されたような方法で、ＧＥＭのすべての使用に伝播されてもよい。一実施形態では、ボックス外（ＯＯＢ）形状、ＧＥＭ、ガジェット及び表示（いくつかのケースでは、カスタマの特定の産業に対応する）は、構成システムのライブラリに、例えばプリミティブオブジェクトのセットまたはオブジェクトの「スターターセット」として設けられる。
【０２００】
表示と同じように、ＧＥＭは、１つ以上の視覚表現またはビューを包含し得る。ＧＥＭビューの各々は、１つ以上の組み込まれた、及び／または作成された形状を含む。図１２は、例示のバルブＧＥＭの３つの可能なビュー、すなわち垂直ビュー１０６０ａ、水平ビュー１０６０ｂ、及び交互水平ビュー１０６０ｃを図示する。ＧＥＭのビューを使用して、異なるレベルの詳細、形状の配置を提示することができるか、またはＧＥＭに関する異なる焦点の情報を提示することができる。
【０２０１】
比較的静的な形状及びビューに加えて、表示、ＧＥＭまたはガジェットは、オペレータがプロセスデータを目視するか、プロセスデータを通してナビゲートするか、またはプロセスデータを変更することを可能にする動的挙動を包含してもよい。動的挙動は、例えばアニメーション及びイベント処理を含み得、それらの両方が以下に述べられる。
【０２０２】
アニメーションは、プロセスプラント内部の情報ソースからのプロセスデータを、表示上の様々な形状にマッピングし、プロセスデータをテキストで、またはグラフィカルな方法で示す。アニメーションの結果は、形状のフィールドに（例えば、テキストフィールドに、または視認フィールドに）適用され得、それによって、情報ソースのフィールド値を変更すると、アニメーションが変更されるようにされる。このように、アニメーションは、プロセスデータが機能（例えば、数学的機能）によって操作され、生プロセスデータを意味のある視覚表現に変換することを可能にする。例えば、アニメーションは、矩形形状に適用されて、タンクレベルに対する矩形の充填パーセンテージを示してもよく、またはアニメーションは、テキスト形状に適用され、パーセンテージ値テキストで表示してもよい。
【０２０３】
イベントハンドラは、例えばマウスクリック、キーボード操作、及びアクセラレータの主要な動き等のイベントへ定義された応答を行うように構成される。定義された応答は、例えば別の表示のナビゲート、警報の通知、プロセス設定点の変更、データ入力、及び他のそのようなアクションであってもよい。
【０２０４】
ＧＥＭは、多数の視覚表現またはビューに含まれ得るため、ＧＥＭに関連付けられたアニメーション及びイベントハンドラは、いったん作成され、そして様々なビューで再使用され、異なる指向または表現のデータを提供することができる。このように、ＧＥＭを作成し、ＧＥＭ使用をその様々なビューの各々に対して修正するために必要であるカスタムコードの量が低減され得る。
【０２０５】
ＧＥＭを多くのオブジェクト及び情報ソースにわたって再使用可能にするために、一実施形態では、アニメーション及びイベントハンドラパスは、プレースホルダによって部分的または完全にトークン化される。プレースホルダ値の値は、ＧＥＭの特定の使用を構成するときに提供されてもよく、またはプレースホルダ値は、ランタイム時にプログラムさ
れて設定されてもよい。アニメーション及びイベントハンドラは、プレースホルダを参照し得、それによって、プレースホルダの値が、ランタイム時に参照に代入され、特定のオブジェクトに対するパスを決定するようにされる。加えて、ＧＥＭと同様に、表示もまた、表示が再使用可能であり得るように、プレースホルダにサポートされ得る。表示インスタンスは、様々なプレースホルダに対する値を提供することによって、構成の一部として作成されるか、またはランタイム時に動的に作成されることができる。
【０２０６】
いくつかの実施形態では、情報の再使用及び共有は、グローバルセットを使用することによって生じさせる。グローバルセットは、構成設計者が、多くの無関係な表示及びＧＥＭにわたって、例えば、クライアントヒューマンマシンインターフェース（ＨＭＩ）セッションの寿命にわたって、ステート及び挙動を構成することを可能にする。グローバルセット内のアイテムは、あらゆる表示またはＧＥＭによって参照されてもよく、かつ使用されてもよく、その結果、多くのアイテム間での再使用及び共有が可能になる。一実施形態では、グローバルセット内の各アイテムは、グローバルセットに対応するオブジェクトにリンクされたオブジェクトに記憶される。
【０２０７】
いくつかの実施形態では、情報の再使用及び共有は、スタイル及び／またはスタイルセットを使用することによって生じさせる。スタイルは、フィールド名及び値の対の集合であり、スタイルセットは、スタイルの集合である。一実施形態では、すべての形状は、スタイルをサポートする。形状がユーザによって表示またはＧＥＭのビューに加えられると、スタイルフィールドは、スタイルセットの所望のスタイルに設定されることができる。結果として、加えられた形状は、各フィールドに対するスタイルにおいて定義された値を使用する。スタイル及びスタイルセットは、それぞれのオブジェクトによって、構成システムにおいて表現され得る。
【０２０８】
いくつかの実施形態では、名称付き定数は、ユーザの、名称−値の対の作成における柔軟性を可能にする。例えば、図形要素オブジェクト内部のフィールドは、名称付き定数を、タイトルフォントまたはタンク本体色等の値として割り当られる。名称定数は、プロジェクト規定が作成され、フィールド値に割り当てられることを可能にする。プロジェクト規定が変更された場合、名称付き定数値は、１つの中央箇所で更新されることができる。名称付き定数は、例えば、名称、タイトル、記述、及びデータタイプを含み得る。形状使用、アニメーション、コンバータ、テーブル、グローバルセット及びスタイル上のフィールド等の任意のフィールド値が、値に、または名称付き定数に設定されてもよい。
【０２０９】
パターン
表示オブジェクトは、１つ以上のパターン、例えば使用パターンまたは派生パターンによって、互いに、また他のオブジェクトと関連し得る。加えて、または代替的には、構成オブジェクトは、１つ以上のパターンによって、互いに、また他のオブジェクトと関連し得る。異なるタイプのパターンの使用は、相互に排他的である必要はない。例えば、様々な態様の数個のパターンを組み合わせてもよい。
【０２１０】
使用パターンは、概して定義に基づくオブジェクトのコンテインメントまたはグルーピングである。図１３は、形状使用設計パターンの一例の図を図示する。使用パターンでは、グラフィカルオブジェクト１０６２ａの定義は、１つ以上の他のグラフィカルアイテム１０６２ｃの１つ以上の使用１０６２ｂを含む。インスタンス化されると、これらの使用１０６２ｂは、表示の１つのビュー上に提示されたグラフィカルオブジェクト１０６２ａによって定義されたグラフィカル形状を表現する。各使用１０６２ｂは、フィールド、イベント、及び挙動等の内部アイテムに対するデフォルトを含む定義を有し得る。一実施形態では、そのような内部アイテムが構成され得る。
【０２１１】
形状使用パターンは、所望であれば、多数のレベルをネストされてもよい。図１４は、例示のネストされた形状使用設計パターンのクラス図を図示する。例えば、表示は、ＧＥＭを包含することができ、これは、別のＧＥＭまたは形状を包含することができる。
【０２１２】
図１５は、抽出された、ネストされた形状使用の一例を図示する。図１５では、使用Ｃ１（参照１０６５ａ）は、使用Ｂ１（参照１０６５ｂ）の定義に基づく。  ユーザは、別の使用からの１つ以上の内部アイテムを修正（例えば、オーバーライドまたは微調整）し得る。例えば、図１５では、使用Ｃ１（参照１０６５ｃ）の変更は、微調整である。
【０２１３】
オブジェクトが関連し得る別のパターンは、派生パターンである。例示の派生パターンの図を、図１６に図示する。派生パターンは、集約を使用することなく定義が拡張される（上述の形状使用パターンのケースのように）ことを可能にする。特に、派生パターンは、ヒエラルキ内の別のレベルを作成することなく、新しい定義１０６８ａの作成を可能にする。このように、「根拠」定義１０６８ａにおけるすべての内部アイテムは、派生された定義１０６８ｂに含まれる。
【０２１４】
派生パターンは、ネストされた多数のレベルであってもよく、例えば、派生された定義は、別の派生された定義に基づいてもよく、これは、最終的には派生されていない定義の根拠となり得る。任意の所望の数のネストされたレベルが可能であり得る。図１７は、ネストされた派生パターンの一例を図示し、新しい定義１０７０ａが第１の派生された定義１０７０ｂから作成され、第１の派生された定義は第２の派生された定義１０７０ｃから作成され、第２の派生された定義は、派生されていない定義（図示せず）から作成されている。
【０２１５】
フレキシブルなアイテム及びオブジェクト
先に述べたように、オブジェクトは、フレキシブルに定義され、構成システムで使用され得る。フレキシブルなオブジェクトは、１つ以上の内部アイテムを含み、これはひいては、一実施形態では別のオブジェクトによって定義され得る。構成システムに含まれ得るフレキシブルなアイテム、オブジェクト、及び内部アイテムの説明は、以下の通りである。これらの説明は、グラフィカルまたは表示オブジェクトのコンテクストで提示されているが、本明細書で述べられた概念及び属性は、構成オブジェクトにも適用される。
【０２１６】
フィールドは、所与のオブジェクトのステートまたは属性を表現する内部アイテムである。例えば、矩形サイズは、幅フィールド及び高さフィールドに記憶される。各フィールドは、名称及び値を有し得る。一実施形態では、フィールドに関連付けられた付加的なメタデータは、フィールドの他の属性、例えば、フィールドがアニメーション化されることができるか否か、フィールドが読み取り専用であるか否か、及びフィールドのデータタイプを示す。メタデータは、例えば所与のオブジェクトの構成に使用され得る。フィールドの値は、文字列等の簡易なデータタイプであってもよく、または別のオブジェクトに対する参照、例えば、ライブラリオブジェクト、形状オブジェクト、またはプロセス要素オブジェクトであってもよい。フィールドの値は、一実施形態では、ユーザによって修正されるかまたはオーバーライドされてもよい。
【０２１７】
プレースホルダは、定義されたアイテムが多数の他のオブジェクトにわたって使用されることを可能にする一般化された内部アイテムである。例えば、表示オブジェクトに対しては、プレースホルダは、アニメーション及びイベントハンドラが、様々な図形または表示オブジェクト及び情報ソースパスにわたって一般化され再使用されることを可能にする図形アイテムであり得る。このように、プレースホルダは、間接処置のレベルを提供し、ランタイム時に値によって解決される。いくつかの実施形態では、プレースホルダは、ネストされ得る。
【０２１８】
パラメータは、フィールドのステートまたは属性を表現する内部アイテムである。例えば、表示及びグラフィカルオブジェクトに対しては、パラメータは、値及びステータスを有する図形アイテムであり得る。パラメータは、ＧＥＭ、ガジェット、表示及びダッシュボード、レイアウト及びフォーム、グローバルセット等の図形アイテムに加えられ得る。パラメータは、典型的にはランタイム中は可視ではない。しかしながら、パラメータは、値を参照する式を作成することによって、ランタイム中のオブジェクトの可視態様に影響し得る（例えば、アニメーション）。ユーザは、パラメータをオブジェクトに加え得るが、いくつかの実施形態では、ユーザは、パラメータを特定のライブラリアイテムまたはプリミティブオブジェクトに加えることが可能ではない場合がある。
【０２１９】
機能は、特定のオブジェクトに対する挙動を提供する内部アイテムである。例えば、表示及びグラフィカルオブジェクトでは、機能は、グループまたはグローバルセットから提供された図形アイテムまたは一般的挙動であり得る。例えば、一グループの視覚アイテムは、付加形状（）機能を提供し得るか、またはグローバルセットは、オープン表示（）機能を提供し得る。  いくつかの機能は、ユーザによって組み込まれ得、そのため修正可能ではない場合がある。他の機能が、ユーザによって作成されてもよい。機能は、一実施形態では、プログラミングＡＰＩまたはスクリプトを介してランタイム中に実行され得る。加えて、機能は、１つ以上の引数、例えば、定数、フィールドの値、別のオブジェクトに対する参照、またはパラメータに対する参照を取り得る。いくつかのインスタンスでは、機能は、値、例えば、定数、フィールドの値、別のオブジェクトに対する参照、またはパラメータに対する参照を返し得る。
【０２２０】
アニメーションは、情報ソースまたはオブジェクトから内部アイテムのフィールドにデータをマッピングする内部アイテムである。例えば、表示または図形オブジェクトに対しては、アニメーションは、矩形の充填パーセントフィールドに、またはラベルのテキストプロパティにデータをマッピングし得る。アニメーションは、式の参照された値が変更されると再評価され、及び／または再計算される式を含む。加えて、アニメーションは、対象フィールド、例えば、再計算された式の結果で更新されることになる親オブジェクト上のフィールドに関連付けられる。このように、ランタイム時に、アニメーションの計算値が変更されると、対象フィールドは、再計算された値で更新され、それによって画面描画を変更させる。一実施形態では、アニメーションは、更新頻度を含み、数式結果を変換するためのコンバータを含み得る。
【０２２１】
コンバータは、アニメーションの数式結果を最終的なアニメーション結果に変換する内部アイテムである。例えば、変換は、数式の再計算された値（結果）、結果のデータタイプまたはフォーマット、結果及びデータタイプの両方を変換し得るか、または変換は、数式の結果にいくつかの他のタイプの変換を行い得る。各コンバータタイプは、ユーザによって構成されることができる特定のフィールドを含み得る。
【０２２２】
イベントは、アクション及び応答を定義するオブジェクトの内部アイテムである。イベントの定義は、典型的にはイベントトリガ、例えばユーザクリック、マウスの動き、マウスのホバリング、またはデータ変更を含む。任意には、イベントはまた、トリガを作動させると１つ以上の応答機能または挙動を実行するイベントハンドラによって定義される。イベントハンドラは、ユーザによって構成され得るか、予め構成された定義へのＯＯＢ挙動として提供され得るか、または特定の形状への組み込まれた挙動として提供され得る。特定のイベントに対するイベントハンドラを加えることは、カスタマが、特定のトリガに基づく挙動を作成することを可能にする。
【０２２３】
各イベントトリガは、１つ以上の特定の引数をサポートし得る。概して、イベントトリ
ガは、イベントトリガを作動させるオブジェクトを示す送信側引数を含む。加えて、イベントトリガは、イベントのタイプに適切であるオプションの引数、例えば作動時に送信される情報を含み得る。例えば、マウスクリックトリガは、送信側引数のみを有し得、一方でマウス移動トリガは、送信側引数と、マウス移動トリガが作動されると送信されるマウス位置座標（例えば、Ｘ、Ｙ）とを有し得る。いくつかのケースでは、イベントは、ユーザアクションに基づいて作動されないが、オブジェクトのフィールド値またはシステムステートが、例えば初期状態から定常ステートに変更されると作動される。
【０２２４】
いくつかの実施形態では、イベントハンドラは、イベントトリガに対して構成される。これらの実施形態では、イベントハンドラは、イベントトリガが作動されると呼び出され、トリガ作動に応答して１つ以上の機能を実行する。一実施形態では、ユーザは、利用可能な機能（例えば、表示、ウィンドウ、またはグローバルセットに利用可能な機能）とともに実行されるカスタム挙動または論理を含むように、イベントハンドラを定義する。
【０２２５】
テーブルは、入力値及び出力結果を有する１つ以上のデータ構造を含む内部アイテムである。テーブルは、一実施形態では、テーブルコンバータとともに使用され、入力値を１つのデータタイプから別に変換し得る。例えば、図形オブジェクトに対しては、テーブル使用は、プロセス値を色にコンバートするか、またはプロセス値を文字列にコンバートすることを含み得る。このように、テーブルは、入力値の範囲に対する結果を構成するための非プログラミング的方法を提供する。テーブルは、入力値の完全一致で、または入力値の範囲で動作し得る。
【０２２６】
形状オブジェクトは、複雑かつ特化された視覚アイテムの視覚表現、例えばＧＥＭ及び表示を作成するためにともに組み合わせられた、基本的な一般化された視覚的構築ブロックである。いくつかの形状オブジェクトは、組み込みであってもよく（例えば、構成システムで実行可能にインストールされたＯＯＢを有していてもよく）、本明細書ではプリミティブ形状と称される。プリミティブ形状は、数個のカテゴリ、例えば寸法形状（例えば、矩形、線、楕円）、他の形状が配置されることができるコンテナ（例えば、グループ、パネル、グリッド）、または制御（例えば、テキストボックス、ドロップダウンコンボボックスまたはバッチリスト制御、トレンド）のうちの１つに属し得る。
【０２２７】
各形状は（プリミティブであってもなくても）定義を有する。定義は、例えば１つ以上のフィールド、アニメーション、イベントトリガを有するイベント、ハンドラ、及び／または接続点を含み得る。一実施形態では、形状は、スタイルフィールドをサポートし得る。典型的には、ほとんどの形状は、構成可能かつ修正可能である。例えば、矩形は、構成システムの組み込みとして設けられ、ユーザは、フィールド値を設定し、イベントまたはアニメーションを矩形使用に加えることによって、矩形オブジェクトを修正し得る。ユーザは、修正された矩形形状を新しいオブジェクトとして保存し得、それを承認後発行し得る。
【０２２８】
図１８は、矩形の定義１０７８に基づいて作成された形状使用Ｒｅｃｔ１（参照１０７５）の一例を図示する。ユーザは、幅１０８０ａ及び高さ１０８０ｂフィールドの値を、矩形定義のデフォルト値から変更している。加えて、ユーザは、幅フィールドを対象とするアニメーション１０８２ａを加えており、値を適切にスケール変更するために範囲コンバータ１０８２ｂを加えている。また、ユーザは、クリックイベント１０８５ｂに対して、使用１０７５上にイベントハンドラ１０８５ａを加えており、イベントハンドラは、オープン表示（）機能を呼び出すように構成されている。一実施形態では、特にオーバーライドされたフィールド（例えば、１０８０ａ、１０８０ｂ）のみが残されている。すなわち、形状使用１０７５は、定義１０７８にリンクバックし、値がオーバーライドされていない任意のフィールドは、定義１０７８（または、いくつかのケースではスタイル）から
生じる。例えば、矩形定義１０７８のフォアグラウンドブラシが青からグレーに変更された場合、フォアグラウンドブラシをオーバーライドしていない任意の使用（例えば、使用Ｒｅｃｔ１  １０７５）は、変更が矩形定義１０７８エディションから伝播された後、青のフォアグラウンドブラシを有する。
【０２２９】
幾何学的形状定義に関し、グループ形状は、数個の形状が、視認性、サイズ変更、割付／指向、及びイベント等のアクションに対する１つの形状として扱われることを可能にする。このように、グループ形状は、各自それぞれの（Ｘ，Ｙ）座標方位を相対的に維持する多数の形状のコピーである。グループのフィールド及びイベントの挙動及びどのようにしてこれらがグループ内部に包含された形状のフィールド及びイベントに影響するかは、構成可能であってもよい。例えば、ダイナモは、グループ形状の１つのタイプである。
【０２３０】
パネル形状は、グループ形状と同様であってもよいが、包含された形状のレンダリングの（例えば、サイズ、位置、配置等における）より特定的な制御を可能にし得る。パネル内部のアイテムは、概してパネルの特定のエリアに対し命令されるかまたはドッキングされ、グループと異なり、相対的座標設置を有していない。パネルは、正確なアイテム数がわかっていない場合に、ユーザにアイテムを制御するための能力とパネルまたは包含されたウィンドウがサイズ変更されるときに、アイテムごとに個々に移動させる必要なく、アイテムを視覚的に配置するための能力とを与える。また、パネルは、ブランクスペースを除去し重複を避けるために他のアイテムの位置を調整することによって、アイテムがパネル内部で加えられるか、除去されるか、または隠されたときの挙動を提供する。
【０２３１】
コネクタ使用は、プロセスプラント内の物理的にリンクしている要素、例えばワイヤ、管、ダクト、またはコンベヤを表現する。構成中、接続点は、形状使用への接続使用の接続の指標を意味する。コネクタ使用は、構成中に形状使用が移動したときに、コネクタを追跡、経路変更及びサイズ変更することを可能にする。特に、コネクタは、その定義されたアルゴリズム及び設定に従って、追従及び経路設定される。このように、コネクタは、表示上に他の表示オブジェクトとともにリンクし、それぞれのプロパティ及び挙動によって定義された形状である。表示上に位置し、接続されると、コネクタは、異なる形状使用の周囲に経路設定されることが可能である。構成ユーザは、コネクタの割付または経路設定を修正し、デフォルト視覚要素を定義し、及び／またはコネクタ使用の接続点を修正することができる。
【０２３２】
レイヤは、現在のタスクと干渉し得るか、または形状使用の不注意による修正を防止し得る、形状を隠してロックすることによって、構成時にユーザの編集経験を組織化し改善するために使用されることができる別のタイプの表示オブジェクトである。レイヤは、表示定義及び／またはＧＥＭビュー定義の構成を支援するように、形状使用を組織化するための方法を提供する。また、レイヤは、例えばヘルプ、メンテナンスまたは診断レイヤ等の詳細を示したり隠したりすることによって、ランタイム特徴を提供するような組織化された形状を提供するためにも使用することができる。
【０２３３】
特に、ビューは、１つ以上のレイヤを有し得る。ビュー内部の形状は、特定のレイヤに関連付けられ得る（例えば、形状オブジェクト及びレイヤオブジェクトがリンクされ得る）。特定のレイヤが構成のみとして、または構成及びランタイムの両方として指定されることができる。レイヤは、可視であるかまたは隠されることができる。レイヤは、不注意による選択または修正を防止するようにロック及びロック解除されることができる。レイヤの視認性が変更されると、値は、包含されたＧＥＭ使用に名称で一致するすべてのレイヤに再帰的に伝播し得る。例えば、「ヘルプ」レイヤの視認性は、ヘルプレイヤに関連付けられたあらゆるＧＥＭ使用に適用される。
【０２３４】
ユーザ作成アイテム及びオブジェクト
上述のフレキシブルなオブジェクトのうちの少なくともいくつかは、ユーザによって作成され得る。
【０２３５】
表示−ランタイム時にユーザによって開かれることができる視覚アイテム等。表示は、典型的には、動作しているプロセスのビューを表現するか、またはプロセスの特定のエリアに関する詳細を提供する。
【０２３６】
ＧＥＭ及びガジェット−プロセス内部のプロセス要素または他の実体を表現し、表示または他のＧＥＭ上に含まれ得る（例えば、位置し得る）構成された形状等。例えば、デバイス、制御モジュール、ダイナモ、表示ビューまたは他のプロセス要素は、ＧＥＭによって表現され得る。ＧＥＭは、プラントまたはプロセス内部のプロセスの同じタイプの設備またはパーツの異なるインスタンスを表現するように、再使用可能であるように構成され得る。このように、ＧＥＭは、構成されて一度試験されるが、他のＧＥＭ及び表示で多数回使用され得る。典型的には、ＧＥＭは、名称、タイトル、記述、選択されたビュー及び他のフィールド、例えばテーブル、イベント、パラメータ及び機能を含む。ＧＥＭは、例えば他のＧＥＭにおいて、または表示内部でネストされることができる。典型的には、ＧＥＭは、ＧＥＭの１つ以上の対応する視覚表現を提供する１つ以上のビュー定義を有する。デフォルトビューは、ＧＥＭに設けられ得、いくつかの実施形態では、ユーザは、デフォルトビューを変更することが可能であり得る。もちろん、ユーザは、ＧＥＭによって定義されたフィールドのうちのいずれも変更することが可能であり得る。
【０２３７】
ガジェットは、一実施形態では、ランタイム時に利用可能であり、ダッシュボード表示上に位置することができるＧＥＭである。オペレータは、例えば、ランタイム中にガジェットを作成及び修正することが可能であり得る。
【０２３８】
ＧＥＭ定義は、別のＧＥＭ定義から派生され得る。ＧＥＭが別のＧＥＭから派生されると、派生されたＧＥＭは、元となるＧＥＭからのすべてのビューを含む。ユーザは、派生されたＧＥＭのこれらのビューを修正し得るか、または派生されたＧＭＥに付加的なビューを加え得る。付加的なビューは、独立していてもよく、現在のＧＥＭ定義に定義された既存のビューから派生されてもよく、または元となるＧＥＭ定義から作成されてもよい。
【０２３９】
ＧＥＭが表示のビューまたは別のＧＥＭのビュー内に位置すると、一実施形態では、位置されたＧＥＭは、形状使用になる（例えば矩形またはグループ等の組み込み式形状使用を加えることに類似する）。しかしながら、位置されたＧＥＭは、それぞれ各自の定義にリンクバックされたままにされ、使用に対する変更は、伝播設定及び方策に基づいて伝播される。
【０２４０】
ＧＥＭ使用（例えば、サイズ変更）を修正することは、一実施形態では、グループ使用を修正することに類似する。加えて、ＧＥＭまたはガジェットは、構成設計者に提示される標準化されるかまたは部分的に標準化されたフォームを使用して構成され得る。
【０２４１】
ビュー−表示またはＧＥＭ内部の視覚表現等。各表示またはＧＥＭは１つ以上の定義されたビューを有し得る。視覚的またはグラフィカルなアイテム（例えば、形状及び他のＧＥＭ）が、ビュー定義に加えられ得る。ビューは、独立していてもよく、同じ親定義またはベースの親定義の内部の別のビューから派生されてもよい。
【０２４２】
独立したビュー定義は、典型的には、それら全体のコンテンツ及び情報、例えば形状、静的に構成されたフィールド値、アニメーション、及びイベントハンドラを定義する。このように、独立したビュー定義は、包含されている表示またはＧＥＭ定義内部の任意の他
のビュー定義に基づいていない。しかしながら、表示またはＧＥＭ定義は、独立し、共通のビューから派生されない多数のビューを有し得る。
【０２４３】
一方、派生されたビュー定義は、典型的には同じコンテナ定義内部の別のビュー定義に基づく。コンテナ定義が派生されると、ビュー定義は、コンテナ定義の元となる定義のビューから派生されることができる。例えば、表示ＡがビューＡ及びビューＢを定義する場合。表示Ｂが表示Ａから派生されると、その後表示Ｂは、デフォルトでビューＡ及びビューＢを有するが、ビューＣをビューＢから派生されたとして定義し得る。
【０２４４】
ビュー定義は、ユーザが構成し得るかまたはユーザがこれらのフィールドを対象にするアニメーションを加え得る既知のフィールドのセットを含み得る。また、ビュー定義は、ユーザがイベントハンドラを加え得る、既知のトリガを有する１つ以上のイベントを含み得る。加えて、特定のビュー定義は、形状使用、例えば、元となるビューからのすべての使用に加えて、特定のビュー定義に加えられた任意の形状使用を含む。ビューは、名称スペースを設けてもよく、それによって、ビュー定義内部のアイテムがユニークに名付けられるようにされる。
【０２４５】
グローバルセット−リリースされていない表示、ガジェット及びＧＥＭから参照されることができるステート（例えば、値）及び挙動（例えば、機能）を保持する構成されたアイテム等。概して、グローバルセットは、いかなる視覚表現もランタイム時に有していないが、ランタイム時に利用可能である。グローバルセットは、単一のものとしてマークされ得るか、またはグローバルセットは、オブジェクトのインスタンスまたはグループに対応し得る。このように、グローバルセットは、多くのオブジェクト間で情報を共有し再使用するための方法を提供する。
【０２４６】
スタイル及びスタイルセット−１つの場所で変更され、一貫性を維持するために形状使用または他の視覚アイテムのセット全体にわたって適用され得るフィールド名称及び値（例えば、フィールド／値の対）の集合等。スタイルセットは、スタイルの集合であり、典型的には名称、タイトル、記述、及び場合によっては他のフィールドを含む。一実施形態では、形状がスタイルセットを有していると、スタイル内のフィールドに対する値は、フィールドがオーバーライドされておらず、アニメーション化されていない場合、形状に適用される。スタイルセットは、編集可能かつ版付け可能であり得る。
【０２４７】
このように、上述されたように、構成システムは、視覚的または図形アイテムのロバストなセットをサポートし、それらの各々がそれぞれのオブジェクトによって定義される。視覚的または図形アイテムのセットは、例えば、１つ以上の表示定義、ダッシュボード、レイアウト、ＧＥＭ定義、ガジェット定義、グローバルセット、組み込み式形状定義、グループ定義、ビュー定義、形状使用、グループ使用、ダイナモ、ＧＥＭ使用、ガジェット使用、クローム使用、領域使用、パネル使用、接続点、コネクタ、アニメーション、コンバータ、イベントトリガ、イベントハンドラ、プレースホルダ、パラメータ、機能、テーブル、名称セット、スタイル、及び／またはスタイルセットを含み得る。視覚的または図形アイテムのセットの少なくとも一部が、ユーザによって作成または修正され得る。
【０２４８】
さらに、各視覚的または図形アイテムを定義するオブジェクトは、例えば、１つ以上の内部アイテム、例えばフィールド、イベントトリガ、機能、ビュー定義、イベントハンドラ、アニメーション、プレースホルダ、パラメータ、テーブル、名称セット、コンバータ、組み込み式形状の使用、ＧＥＭの使用、ガジェットの使用、クローム使用、領域使用、グループ使用、ダイナモ、パネル使用、接続点、コネクタ、グローバルセット、スタイルセット、及び／またはスタイルを含み得る。視覚的または図形アイテムのオブジェクトにおいて定義された内部アイテムの各々は、構成システムに組み込まれるか、ユーザによっ
て加えられるか、定義によって構成されるか、または別のアイテムに参照され得る。
【０２４９】
変更、修正、及び微調整
先に述べたように、ユーザは、オブジェクト定義のコンテンツを変更、修正、または微調整し得る。すなわち、ユーザは、オブジェクトの１つ以上の内部アイテムを変更し、一方でそれぞれの元となるその定義へのリンクを維持し得る。これらの変更、修正または微調整は、例えばオブジェクトのコンテンツ（例えば、フィールドまたは他の内部アイテム）に対する付加、削除、及び／または修正を含み得る。さらに、これらの変更は、エディション内に発行されると、概してオブジェクトの元となる定義よりも優先度が高く、新しいエディションが伝播されたときに修正された定義からの変更が適用されることをさらに可能にし得る。例えば、定義に包含されたアイテム（例えば、ＧＥＭ）が修正され、使用または派生されたビューにおいて微調整された場合、微調整は優先度が高い。しかしながら、アイテムが元となる定義外に削除されると、使用または派生された定義に対する微調整は失われる。例えば、元となる定義に包含されたアイテム（例えば、ＧＥＭ）が削除されるが、それは使用または派生された定義において先に微調整されていた。この例では、微調整が失われる。さらに、元となる定義に包含されたアイテム（例えば、ＧＥＭ）が修正されたが、使用または派生された定義において削除されている場合、元となる定義に対する変更は、使用または派生された定義に伝播されない。
【０２５０】
一実施形態では、特定の子オブジェクトまたは使用への微調整は、一実施形態では、元となる定義に押し戻され得る。一例では、元となる定義は、子に対してなされた微調整を含む新しいエディションに更新され、微調整は、子から除去される。
【０２５１】
図１９〜２１は、様々な視覚アイテム及びオブジェクトに対してなされ得る修正または微調整の例を図示する。特に、図１９は、使用パターンに適用されたフィールド値上書き微調整の一例を図示する。図１９では、幅フィールド値１０９０ａ及び高さフィールド値１０９０ｂは、オーバーライドされている。
【０２５２】
図２０は、派生パターンに適用されたフィールド値上書き微調整の一例を図示する。図２０では、幅フィールド値１０９２ａ及び高さフィールド値１０９２ｂは、オーバーライドされている。
【０２５３】
図２１は、多数のレベルでのオブジェクトに対する多数の修正または微調整の一例を図示する。特に、図２１は、どのようにしてより低い定義に適用された微調整が次のレベルに対するデフォルト値になるか（例えば、参照１０９５ａ〜１０９５ｃ）、どのようにして値が多数のレベルでオーバーライドされ得るか（例えば、参照１０９８ａ、１０９８ｂ）、及びどのようにして最も外側の定義に対するオーバーライドが高い優先度を有するか（例えば、参照１１００）を図示する。
【０２５４】
図１９〜２１に図示されるように、微調整することは、一実施形態では、使用パターン及び派生パターンで実行され得る。さらに、微調整または修正は、構成アイテムまたはオブジェクトに対して、及び／または視覚的または図形アイテムまたはオブジェクトに対してなされ得る。例えば、視覚的または図形アイテムのセットは、例えば、１つ以上の表示定義、ダッシュボード、レイアウト、ＧＥＭ定義、ガジェット定義、グローバルセット、組み込み式形状定義、グループ定義、ビュー定義、形状使用、グループ使用、ダイナモ、ＧＥＭ使用、ガジェット使用、クローム使用、領域使用、パネル使用、接続点、コネクタ、アニメーション、コンバータ、イベントトリガ、イベントハンドラ、プレースホルダ、パラメータ、機能、テーブル、名称セット、スタイル、及び／またはスタイルセットを含み得る。さらに、微調整は、他のオブジェクト定義に含まれる１つ以上のオブジェクト、例えばフィールド、イベントトリガ、機能、ビュー定義、イベントハンドラ、アニメーシ
ョン、プレースホルダ、パラメータ、テーブル、名称セット、コンバータ、組み込み式形状の使用、ＧＥＭの使用、ガジェットの使用、クローム使用、領域使用、グループ使用、ダイナモ、パネル使用、接続点、コネクタ、グローバルセット、スタイルセット、及び／またはスタイル上で実行され得る。
【０２５５】
実装される場合、本明細書で説明された方法及び技法のいずれかまたはそれらの一部は、１つ以上の非一時的有形コンピュータ可読記憶媒体またはメモリ、例えばコンピュータもしくはプロセッサのＲＡＭもしくはＲＯＭ等における磁気ディスク、レーザディスク、光ディスク、半導体メモリ、他のメモリデバイス、または他の記憶媒体等に記憶された既存のソフトウェアによって実行され得る。
【０２５６】
先述のテキストは、数多くの異なる実施形態の詳細な説明を述べているが、本特許の範囲は、本特許の終わりに述べられた特許請求の範囲の文言及びその等価物によって定義されることが理解されるべきである。詳細な説明は、単に例示的なものとして解釈されるべきであり、すべての可能な実施形態を説明することは、不可能ではない場合でも非現実的であるので、すべての可能な実施形態を説明するものではない。数多くの代替の実施形態は、現在の技術または本特許の出願日以降に開発された技術のいずれかを用いて実施されることができ、これらは依然として特許請求の範囲及びそのすべての等価物内に含まれる。例示を目的とし、かつ限定を目的とせず、本明細書における開示は、少なくとも以下の態様を意図する。
【０２５７】
１．プロセスプラント内に含まれるプロセス実体に対応するプロセス制御表示ビュー上にインスタンス化される図形要素オブジェクトを構成するための構成表示ビュー上に提示された構成要素であって、構成要素が、プロセスプラントの構成環境内で、図形要素オブジェクトの属性に対するプロパティのセットに対応する構成要素オブジェクトのインスタンス化の実行を含み、構成要素オブジェクトが、構成可能であり、構成要素オブジェクトが、構成表示ビューがインスタンス化される構成表示オブジェクトへのリンクを含み、構成要素オブジェクトのインスタンス化の実行が、図形要素オブジェクトの属性に対するプロパティのセットの視覚表現と、プロパティのセットからの、構成要素において構成されたプロパティに対応するデータを送信するための図形要素オブジェクトへのリンクであって、構成されたプロパティが、図形要素の少なくとも１つの構成された属性に対応する、リンクとを含む、構成要素。
【０２５８】
２．構成要素オブジェクトが、プロセスプラントの構成環境内で構成可能である、態様１に記載の構成要素。
【０２５９】
３．構成表示オブジェクトが、プロパティのセットが構成要素オブジェクトに対応するように選択される図形要素オブジェクトの属性に対する複数のプロパティに対応する、態様１または２のいずれか１つに記載の構成要素。
【０２６０】
４．複数のプロパティが、プロパティのセットが構成要素オブジェクトに対応するように選択された１つ以上のプロパティのセットを含む、態様１〜３のいずれか１つに記載の構成要素。
【０２６１】
５．１つ以上のプロパティのセットが、プロセスプラントの構成環境内で構成可能である、態様１〜４のいずれか１つに記載の構成要素。
【０２６２】
６．１つ以上のプロパティのセットが、複数のプロパティからプロパティを追加し、及び／またはプロパティのセットからプロパティを削除するように構成可能である、態様１〜５のいずれか１つに記載の構成要素。
【０２６３】
７．１つ以上の複数のプロパティが、複数のプロパティのうちの選択されたものを含むプロパティのセットを作成するように構成可能である、態様１〜６のいずれか１つに記載の構成要素。
【０２６４】
８．構成表示ビューのインスタンス化が、構成要素オブジェクトが構成されるときの構成要素オブジェクトのインスタンス化のプレビューを含む、態様１〜７のいずれか１つに記載の構成要素。
【０２６５】
９．構成要素オブジェクトのインスタンス化の構成を記憶することをさらに含み、構成が、プロパティのセットからの、構成要素において構成されたプロパティの値を含む、態様１〜９のいずれか１つに記載の構成要素。
【０２６６】
１０．構成要素オブジェクトのインスタンス化の構成を記憶することが、図形要素オブジェクトの属性のプロパティの値を読み取ることと、プロパティの値を、構成要素オブジェクトのインスタンス化の構成の少なくとも一部として記憶することと、を含む、態様１〜９のいずれか１つに記載の構成要素。
【０２６７】
１１．構成要素オブジェクトのインスタンス化の構成を記憶することが、構成要素オブジェクト内のプロパティの選択された値を読み取ることと、プロパティの値を、構成要素オブジェクトのインスタンス化の構成の少なくとも一部として記憶することと、を含む、態様１〜１０のいずれか１つに記載の構成要素。
【０２６８】
１２．構成表示オブジェクトのインスタンスが、図形要素オブジェクトに対する１つ以上の属性の視覚表現を含む、態様１〜１１のいずれか１つに記載の構成要素。
【０２６９】
１３．図形要素オブジェクトに対する１つ以上の属性が、形状を含み、プロパティのセットが、形状の多数の視覚表現を含む、態様１〜１２のいずれか１つに記載の構成要素。
【０２７０】
１４．プロパティのセットが、形状の線幅、形状の色、及び形状に対するラベルのフォントのうちの１つ以上に対するオプションを含む、態様１〜１３のいずれか１つに記載の構成要素。
【０２７１】
１５．図形要素オブジェクトに対する１つ以上の属性が、動的なグラフィカル挙動を含み、プロパティのセットが、動的なグラフィカル挙動の多数の視覚表現を含む、態様１〜１４のいずれか１つに記載の構成要素。
【０２７２】
１６．プロパティのセットが、動的なグラフィカル挙動のアニメーション、及び動的なグラフィカル挙動の提示のうちの１つ以上に対するオプションを含む、態様１〜１５のいずれか１つに記載の構成要素。
【０２７３】
１７．プロパティのセットからの構成要素において構成されたプロパティが、図形要素オブジェクトに対する形状のプロパティを含み、図形要素オブジェクトに対する形状が、構成表示ビューのインスタンス化において構成される、態様１〜１６のいずれか１つに記載の構成要素。
【０２７４】
１８．方法であって、プロセスプラントの構成環境内の構成要素オブジェクトインスタンスにおいて、構成環境内の図形要素オブジェクトの少なくとも一部の構成の指標を受信することであって、構成要素オブジェクトインスタンスが、（ｉ）プロセスプラントの構成環境において、構成要素オブジェクトから構成され、かつ図形要素オブジェクトに対す
るプロパティのセットを定義し、（ｉｉ）構成要素オブジェクトから構成環境にインスタンス化され、（ｉｉｉ）構成環境内で、構成表示オブジェクトのインスタンスにおいて実行され、構成表示オブジェクトインスタンスが、図形要素オブジェクトを構成するための複数のプロパティを定義する、受信することと、構成の定義を生成し、定義された構成を図形要素オブジェクトにリンクし、それによって、構成定義を、図形要素オブジェクトのインスタンス化で使用させることと、ランタイム環境内で、構成定義を図形要素オブジェクトインスタンスの少なくとも一部に適用し、それによって、構成された図形要素オブジェクトインスタンスを生成することと、ランタイム環境内で、表示オブジェクトインスタンス内の構成された図形要素オブジェクトインスタンスを実行することであって、表示オブジェクトインスタンスが、（ｉ）構成環境において、表示オブジェクトから構成され、（ｉｉ）表示オブジェクトからランタイム環境にインスタンス化され、（ｉｉｉ）ランタイム環境内で実行され、それによって、それぞれのプロセス要素にリンクされる、実行することと、を含む、方法。
【０２７５】
１９．構成表示オブジェクトが、図形要素オブジェクトに対する複数のプロパティに対応し、図形要素オブジェクトに対するプロパティのセットが、構成要素オブジェクトに対応するように、複数のプロパティから選択される、態様１８に記載の方法。
【０２７６】
２０．複数のプロパティが、１つ以上のプロパティのセットを含み、図形要素オブジェクトに対するプロパティのセットが、構成要素オブジェクトに対応するように、１つ以上のプロパティのセットから選択される、態様１８または１９のいずれか１つに記載の方法。
【０２７７】
２１．構成表示オブジェクトが、構成要素オブジェクトが構成されるときの構成要素オブジェクトのインスタンス化のプレビューを含む、態様１８〜２０のいずれか１つに記載の方法。
【０２７８】
２２．図形要素オブジェクトの少なくとも一部の構成の指標を受信することが、構成要素オブジェクトのインスタンス化の記憶された構成を受信することを含み、記憶された構成が、図形要素オブジェクトに対して、プロパティのセットから構成要素オブジェクトにおいて構成された図形要素オブジェクトに対するプロパティの値を含む、態様１８〜２１のいずれか１つに記載の方法。
【０２７９】
２３．構成の定義を記憶することをさらに含み、構成の定義が、図形要素オブジェクトに対して、プロパティのセットからの構成要素において構成されたプロパティの値を含む、態様１８〜２２のいずれか１つに記載の方法。
【０２８０】
２４．構成の定義を記憶することが、図形要素オブジェクトのプロパティの値を読み取ることと、プロパティの値を、構成要素オブジェクトのインスタンス化の構成の少なくとも一部として記憶することと、を含む、態様１８〜２３のいずれか１つに記載の方法。
【０２８１】
２５．構成の定義を記憶することが、構成要素オブジェクト内のプロパティの選択された値を読み取ることと、プロパティの値を、構成要素オブジェクトのインスタンス化の構成の少なくとも一部として記憶することと、を含む、態様１８〜２４のいずれか１つに記載の方法。
【０２８２】
２６．構成の定義を生成することが、図形要素オブジェクトのプロパティの値を生成することを含む、態様１８〜２５のいずれか１つに記載の方法。
【０２８３】
２７．構成表示オブジェクトインスタンスが、図形要素オブジェクトに対する１つ以上
の属性の視覚表現を含む、態様１８〜２６のいずれか１つに記載の方法。
【０２８４】
２８．図形要素オブジェクトに対する１つ以上の属性が、形状を含み、プロパティのセットが、形状の多数の視覚表現を含む、態様１８〜２７のいずれか１つに記載の方法。
【０２８５】
２９．プロパティのセットが、形状の線幅、形状の色、及び形状に対するラベルのフォントのうちの１つ以上に対するオプションを含む、態様１８〜２８のいずれか１つに記載の方法。
【０２８６】
３０．図形要素オブジェクトに対する１つ以上の属性が、動的なグラフィカル挙動を含み、プロパティのセットが、動的なグラフィカル挙動の多数の視覚表現を含む、態様１８〜２９のいずれか１つに記載の方法。
【０２８７】
３１．プロパティのセットが、動的なグラフィカル挙動のアニメーション、及び動的なグラフィカル挙動の提示のうちの１つ以上に対するオプションを含む、態様１８〜３０のいずれか１つに記載の方法。
【０２８８】
前述の方法のいずれか、または前述の方法の任意の組み合わせを行うように構成された装置。
【図１】
2019091410.tif 000003
【図２】
2019091410.tif 000004
【図３】
2019091410.tif 000005
【図４】
2019091410.tif 000006
【図５】
2019091410.tif 000007
【図６】
2019091410.tif 000008
【図７】
2019091410.tif 000009
【図７Ａ】
2019091410.tif 000010
【図７Ｂ】
2019091410.tif 000011
【図８】
2019091410.tif 000012
【図９】
2019091410.tif 000013
【図１０】
2019091410.tif 000014
【図１１】
2019091410.tif 000015
【図１２】
2019091410.tif 000016
【図１３】
2019091410.tif 000017
【図１４】
2019091410.tif 000018
【図１５】
2019091410.tif 000019
【図１６】
2019091410.tif 000020
【図１７】
2019091410.tif 000021
【図１８】
2019091410.tif 000022
【図１９】
2019091410.tif 000023
【図２０】
2019091410.tif 000024
【図２１】
2019091410.tif 000025
【外国語明細書】
2019091410000001.pdf