(57)【要約】【課題】プロセスプラントの環境設定及び監督を行うコンピュータシステムで用いられるユーザインターフェイスの環境設定を行う。【解決手段】各項目が複数のオブジェクトに対応する選択可能な項目の組を表示するためにナビゲーションペインを生成すること及び各制御操作部がプロセスプラント内の複数のオブジェクトで実行されるべきタスクに対応する選択可能な制御操作部の組を表示するためにコマンドペインを生成し、各ペインがそれぞれの位置にありかつそれぞれのサイズを有している複数のペインを画面領域の内側に生成し、複数のペインに関連し、複数のペインの位置と複数のペインのサイズとを指定するカスタマイゼーション要求をユーザから受信し、カスタマイゼーション要求に応じて複数のペインのカスタム・レイアウトを生成し、カスタム・レイアウトを記述するカスタム・レイアウト・データをユーザに対応するデータベース・レコードに格納する。【選択図】図１
2014044753.tif 000002
【特許請求の範囲】
【請求項１】
プロセスプラントの環境設定及び監督を行うコンピュータシステムで用いられるユーザインターフェイスの環境設定を行う方法であって、
各項目が複数のオブジェクトのそれぞれ１つに対応する選択可能な項目の組を表示するためにナビゲーションペインを生成すること、及び、各制御操作部が前記プロセスプラント内の前記複数のオブジェクトのうちの少なくとも１つで実行されるべきタスクに対応する選択可能な制御操作部の組を表示するためにコマンドペインを生成することを含み、各ペインがそれぞれの位置にあり、かつ、それぞれのサイズを有している複数のペインを画面領域の内側に生成することと、
前記複数のペインのうちの少なくとも１つのペインに関連し、そして、前記複数のペインのうちの前記少なくとも１つのペインの位置と、前記複数のペインのうちの前記少なくとも１つのペインのサイズとのうちの少なくとも１つを指定するカスタマイゼーション要求をユーザから受信することと、
前記カスタマイゼーション要求に応じて前記複数のペインのカスタム・レイアウトを生成することと、
前記カスタム・レイアウトを記述するカスタム・レイアウト・データを前記ユーザに対応するデータベース・レコードに格納することと、
を含む方法。
【請求項２】
前記複数のペインを生成することは、前記ナビゲーションペインを介して選択された前記複数のオブジェクトのうちの１つの環境設定又は編集のうちの少なくとも１つを実行するために２つ以上の主コンテンツペインを生成することをさらに含み、
前記カスタム・レイアウトを生成することは、前記カスタマイゼーション要求に応じて前記２つ又は主コンテンツペインの各々を互いに相対的に位置決めすることを含む、
請求項１に記載の方法。
【請求項３】
前記カスタマイゼーション要求は、前記ナビゲーションペインで適用されるべきフィルタをさらに指定し、前記フィルタは、前記選択可能な項目の組のうちの第１の部分が表示され、かつ、前記選択可能な項目の組のうちの第２の部分が表示されない際に従うルールを指定する、請求項２に記載の方法。
【請求項４】
前記ユーザの新しいログイン・セッションを識別したときに前記カスタム・レイアウト・データに応じて前記カスタム・レイアウトを自動的に復元することをさらに備える、請求項３に記載の方法。
【請求項５】
いくつかの役割と関連付けられている前記ユーザから役割選択を受信することをさらに含み、
前記カスタム・レイアウト・データを格納することは、前記カスタム・レイアウトを前記役割選択と関連付けることを含み、
前記カスタム・レイアウトを自動的に復元することは、前記ユーザの役割を識別すること、及び、前記役割を前記役割選択と比較することをさらに含む、
請求項４に記載の方法。
【請求項６】
前記カスタマイゼーション要求は、
前記主コンテンツ領域の中の複数のテキスト列の各々の配置と、
前記複数のテキスト列の各々のテキスト列のそれぞれのサイズと、
前記複数のテキスト列の各々のテキスト列のフォントサイズと、
のうちの少なくとも１つをさらに指定する、
請求項１に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願の相互参照）
本願は、名称が“Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ  ｆｏｒ  Ｃｏｎｆｉｇｕｒｉｎｇ  ａ  Ｐｒｏｃｅｓｓ  Ｃｏｎｔｒｏｌ  Ｓｙｓｔｅｍ”であり、２００８年９月２９日に出願された、米国仮特許出願第６１／１０１０５５号の利益を主張するものであり、その開示内容は参照により本明細書中に明示的に組み込まれる。
【０００２】
本発明は、一般にプロセス制御ネットワークに関し、より詳細には、プロセス制御環境における様々なコンポーネント及びサービスの環境設定を行うユーザインターフェイスに関する。
【背景技術】
【０００３】
化学プロセス、石油プロセス、又は、その他のプロセスで使用される分散プロセス制御システムのような分散プロセス制御システムは、典型的に、アナログバス、デジタルバス、又は、アナログ／デジタル併用バスを介して１台以上のフィールド機器に通信可能に接続されている１台以上のプロセスコントローラを含む。例えば、バルブ、バルブポジショナ、スイッチ、及び、トランスミッタ（例えば、温度センサ、圧力センサ、レベルセンサ、及び、流速センサ）でもよいフィールド機器は、プロセス環境の内部に位置し、バルブの開閉、プロセスパラメータの測定などのようなプロセス機能を実行する。周知のＦｉｅｌｄｂｕｓプロトコルに準拠するフィールド機器のようなスマートフィールド機器は、制御計算、警報機能、及び、コントローラ内部で一般に実施されるその他の制御機能をさらに実行することができる。同様に典型的にプラント環境内部に位置しているプロセスコントローラは、フィールド機器によって行われたプロセス測定、及び／又は、フィールド機器に関するその他の情報を示す信号を受信し、そして、例えば、プロセス制御決定を行い、受信された情報に基づいて制御信号を生成し、ＨＡＲＴ及びＦｉｅｌｄｂｕｓフィールド機器のようなフィールド機器において実行される制御モジュール又はブロックと協調する異なる制御モジュールを動かすコントローラ・アプリケーションを実行する。コントローラ内の制御モジュールは、通信回線を介してフィールド機器に制御信号を送信し、それによって、プロセスの運転を制御する。
【０００４】
フィールド機器及びコントローラからの情報は、通常は、データハイウェイを介して、典型的に、より過酷なプラント環境から離れた制御室、又は、他の場所に設置されているオペレータワークステーション、パーソナルコンピュータ、データヒストリアン、リポートジェネレータ、集中データベースなどの１台以上の他のハードウェア機器で利用できるようにされる。これらのハードウェア機器は、例えば、オペレータが、プロセス制御ルーチンの設定を変更すること、コントローラ又はフィールド機器内の制御モジュールの運転を修正すること、プロセスの現在状態を見ること、フィールド機器及びコントローラによって生成された警報を見ること、要員を訓練するか、若しくは、プロセス制御ソフトウェアをテストする目的でプロセスの運転をシミュレーションすること、環境設定データベースを維持更新することなどのようなプロセスに関する機能を実行することを可能にすることができ得るアプリケーションを動かす。
【０００５】
一例として、Ｅｍｅｒｓｏｎ  Ｐｒｏｃｅｓｓ  Ｍａｎａｇｅｍｅｎｔによって販売されるＤｅｌｔａＶ（登録商標）制御システムは、プロセスプラント内の多種多様の場所に位置している種々の機器内に記憶され、かつ、実行される多数のアプリケーションを含む。１台以上のオペレータワークステーションに存在する環境設定アプリケーションは、ユーザが、プロセス制御モジュールを作成又は変更し、かつ、データハイウェイを介して専用の分散コントローラへこれらのプロセス制御モジュールをダウンロードすることを可能にする。典型的に、これらの制御モジュールは、オブジェクト指向プログラミングプロトコル内のオブジェクトであり、入力に基づいて制御スキームの範囲内で機能を実行し、制御スキームの範囲内の他の機能ブロックに出力を供給する通信可能に相互接続された機能ブロックで構成されている。環境設定アプリケーションは、設計者が、データをオペレータに表示し、オペレータがプロセス制御ルーチン内で設定点のような設定を変更することを可能にするためにビューイング・アプリケーションによって使用されるオペレータインターフェイスを作成又は変更することをさらに可能にし得することができる。各専用コントローラと、一部の事例では、フィールド機器とは、実際のプロセス制御機能を実施するために、これらに割り当てられ、ダウンロードされた制御モジュールを動かすコントローラ・アプリケーションを記憶し実行する。１台以上のオペレータワークステーションで動かされてもよいビューイング・アプリケーションは、データハイウェイを介してコントローラ・アプリケーションからデータを受信し、ユーザインターフェイスを使用してこのデータをプロセス制御システム設計者、オペレータ、又は、ユーザに表示し、オペレータビュー、エンジニアビュー、技術者ビューなどのようなプロセス制御ルーチン又はモジュールの多数の異なるビューのうちのいずれかを提供してもよい。データ・ヒストリアン・アプリケーションは、典型的に、データハイウェイを介して提供されたデータの一部又は全部を収集し記憶するデータヒストリアン機器によって記憶され実行され、一方、環境設定データベース・アプリケーションは、現在のプロセス制御ルーチン環境設定とこれに関連付けられたデータとを記憶するためにデータハイウェイに取り付けられたさらなるコンピュータ内で作動し得る。代替的に、環境設定データベースは、環境設定アプリケーションと同じワークステーション内に置かれることがある。
【０００６】
プロセス制御環境で使用される制御アプリケーション、及び、サポート・アプリケーションの数、及び、種類が増加するのにつれて、ユーザがこれらのアプリケーションを効率的に環境設定し、使用することを可能にするために様々なグラフィカル表示アプリケーションが提供されている。例えば、グラフィカル表示アプリケーションは、環境設定エンジニアがプロセスプラント内の制御機器にダウンロードされるべき制御プログラムをグラフィカルに作成することを可能にするため制御環境設定アプリケーションをサポートするため使用されている。付加的に、グラフィカル表示アプリケーションは、制御オペレータがプロセスプラントの現在の機能性、又は、プロセスプラントの領域を見ることを可能にするため、保守要員がプロセスプラント内のハードウェア機器の状態を見ることを可能にするため、プロセスプラントのシミュレーションを可能にするためなどに使用されている。しかし、これらのグラフィカル表示アプリケーションは、これらのグラフィカル表示アプリケーションが関連付けられ、従って、有用性の点でこれらのグラフィカル表示アプリケーションが作成された目的である特定のプロセス機能に一般に制限されている特定のアプリケーションの一部として、又は、これらの特定のアプリケーションを独立にサポートするため、過去に、別々に作成されている。例えば、保守機能、環境設定機能、又は、シミュレーション機能に関与するコンテキストにおいて制御オペレータをサポートするため作成されたグラフィカル・プログラムを使用することは、不可能ではないとしても困難である。
【０００７】
さらに、既存のアプリケーションは、典型的に、所望のメニュー項目に到達するため、非常に多数回の選択のクリックを必要とする。特に、モジュールへの「ドリルダウン」に関心があるオペレータ、又は、保守要員は、しばしば多数のメニューを有効化し、多数のダイアログを精査し、応答することなどが必要である。多くの事例では、タスクをトリガする制御操作部は、直観的な方式で系統化されないので、習得するためにかなりの時間を必要とする。
【０００８】
別の態様では、コマンド選択肢及びコマンド特徴の数が増加し続けることは、プロセス制御設計、環境設定、及び管理をより複雑にし続ける。典型的なユーザは、多くの場合に画面上に多くの制御操作部及びメニュー項目を見るが、ユーザが実行するタスクに適用できるのは、これらの制御操作部又はメニュー項目の比較的小さい部分だけである。
【発明の概要】
【０００９】
プロセス制御システムの環境設定、監督、又は、トラブルシューティングを行うソフトウェアシステムは、利用可能な機能性のための視覚的制御操作部及びテキスト的制御操作部を都合良く体系化する直観的なタスクベースのユーザインターフェイスを含む。ユーザインターフェイスは、所望の機能性にアクセスするために必要な「クリック」又は他のコマンドの回数を削減し、直観的かつ都合の良い位置に制御操作部を位置決めし、所望の情報を表すために必要なウィンドウの数を削減し、特有のコンテキストに関連した制御操作部を表示し、所望の選択肢又は制御操作部を素早く識別するための視覚的キューをユーザに提示し、制御戦略を効率的に可視化する技術を実施し、かつ、ソフトウェアシステムを使用する全体的な利便性を改善する。ソフトウェアシステムは、例えば、プロセス制御システムの環境設定を行うこと、プロセス制御システムの環境設定を見ること、コントローラ及び物理的機器へ制御モジュールをダウンロードすること、連続制御及びバッチ制御のための制御論理を定義すること、プロセス制御システム内の製造レシピを作成、及び、編集すること、これらのレシピに従ってバッチ実行を制御すること、プラント施設を探査及び見ること、又は、これらの何れかの組み合わせの機能性をサポートし得る。一部の実施形態では、ソフトウェアシステムは、１つずつがエンジニアリングアクションのそれぞれの組をサポートするために適合した幾つかのアプリケーションを含むアプリケーションスイートである。例えば、一実施形態におけるソフトウェアスイートは、プロセスプラントの環境設定を行い、プロセスプラントの環境設定を視認及び更新し、制御モジュールを物理的エンティティへダウンロードするなどのエクスプローラ・アプリケーションと、プロセスプラントで用いるための制御戦略を設計する制御スタジオ・アプリケーションと、その他のアプリケーションとを含む。ソフトウェアスイートに含まれるこれらのアプリケーションの１つずつは、それぞれのユーザインターフェイスを含む。
【００１０】
一実施形態では、エクスプローラ・アプリケーションのユーザインターフェイスは、エクスプローラ・アプリケーションが、プロセスプラントで動作している物理的機器と、Ｆｉｅｌｄｂｕｓ機能ブロックを使用して定義された制御戦略のような論理構造体、例えば、選択された物理的又は論理的エンティティと関連付けられたプロセスパラメータと、機器及び制御戦略に適用可能であり、対応するデータベースに記憶された環境設定パラメータなどのような１個以上の選択項目の詳細ビューを提供する主コンテンツペインをサポートする。ユーザインターフェイスは、ユーザがプロセスプラント内の様々な物理的エンティティ及び論理的エンティティの位置をより容易に見つけ、かつ選択することを可能にするため様々な制御操作部及びインジケータを表示するようにナビゲーションペインと、運転の状態を表示する状態バーと、現在位置を指定するアドレスバーと、質及びサイズが低減されたグラフィック及び／又はテキストをユーザに提供するプレビューペインと、物理的エンティティ又は論理的エンティティの詳細な描写を提供する詳細ペインと、１個以上の環境設定データベース、ランタイム・データ、レシピ、及び、他のコンテンツの中の検索をサポートする瞬時検索ペインと、エクスプローラ・アプリケーションがエンジニアリングタスクを実行する制御操作部を提供するコマンドバーとのうちの少なくとも一部をさらにサポートする。
【００１１】
制御スタジオ・アプリケーションのユーザインターフェイスは、コンテンツを見て、作成し、そして、編集するための主コンテンツ／編集ペインをもさらに含む。例えば、ユーザは、分散制御システムの機能ブロック間の接続の設計及び環境設定を行い、かつ、製品レシピ等を定義してもよい。ユーザインターフェイスは、構造化及び体系化された方式におけるプロセス制御システムの物理的要素と論理的要素との間の関係を表現するナビゲーション階層ペインと、主ペインに示された数個のエンティティに関連した情報を提供するパラメータペインと、現在の警報又は事象データを表示する警報ペインと、物理的エンティティ又は論理的エンティティへの様々なオブジェクトの論理的接続を表示する参照ペインと、選択されたパラメータの傾向及び／又は履歴データを表示するウォッチペインと、パン・アンド・ズーム・ペインと、制御論理を定義する際に構築ブロックとして使用可能である制御要素を一覧するパレットペインとの一部又は全部をさらに含んでもよい。
【００１２】
ソフトウェアシステムの一部の実施形態のユーザインターフェイスは、特定のメニュー項目又は制御操作部を選択する履歴を反映するナビゲーション・インジケータの組をさらにサポートする。ユーザインターフェイスは、ユーザが主メニューから選択されたメニュー項目への経路を容易に復元させることができるように、各中間メニュー項目が選択された後にナビゲーション・インジケータの組を自動的に増大させる。一実施形態では、各ナビゲーション・インジケータは、さらに、ユーザ開始事象（例えば、マウスの左クリック事象）に応答してメニューのそれぞれのレベルに焦点を復元させる制御操作部である。
【００１３】
一部の実施形態では、少なくともソフトウェアシステムに含まれるアプリケーションのユーザインターフェイスは、例えば、ユーザが主コンテンツペイン内の項目の上にカーソルを置くとき、この項目の上に「ホバー」するポップアップウィンドウをさらにサポートする。ポップアップウィンドウは、項目と関連付けられた利用可能な特性、パラメータ、及び、制御操作部の一部を表示してもよい。一実施形態では、プロセスプラント内の機器を表現するグラフィック又はシンボルのため表示されるポップアップウィンドウは、機器の説明、ノード割り当て、機器のスキャンレート（例えば、機器が測定を生成する頻度）、及び、最後の修正日付を含む。実施形態では、この特徴は、ユーザによって選択的に有効化され、かつ、ポップアップウィンドウに表示された項目は、ユーザ構築可能である。
【００１４】
一態様では、ユーザインターフェイスは、ユーザの右クリック、あるいは、主コンテンツペイン内の項目の選択に応答して、削減されたメニュー選択を生成し、そして、別の制御操作部の作動と併せて項目上でのユーザ右クリックに応答して拡張されたメニュー選択の組を生成する。例えば、ユーザはできる。
【００１５】
一部の実施形態では、エクスプローラ・アプリケーション、制御スタジオアプリケーション、及び、ソフトウェアシステムと関連付けられた他のアプリケーションのユーザインターフェイスは、利用可能な制御操作部と、ソフトウェアシステムの選択肢とを「リボン」スタイル・メニューペインに表示する。メニューは、各タブが特有の機能性の特定の領域に関連した制御操作部又は選択肢のグループを有する数個のタブを含んでもよい。例えば、一方のタブは、「ホーム」と名付けられてもよく、クリップボード機能、履歴選択肢、ダウンロード機能、アルゴリズム編集選択肢などに関連した制御操作部を含んでもよく、別のタブは、「ビュー」と名付けられてもよく、パレットビュー選択肢、パラメータビュー選択肢、ウィンドウ配置選択肢などを含んでもよく、そして、タブは、「図表」、「設定」、などと名付けられてもよい。さらに、付加的なタブは、動作コンテキストに応じて、又は、オペレータアクションに応じて表されてもよい。
【００１６】
少なくとも一部の実施形態では、リボンが残りのタブと関連付けられた機能を隠すので、同時に焦点が合うのは１個のタブだけである。別のタブに割り当てられた機能にアクセスするため、ユーザは、例えば、タブの視覚的な識別子をクリックしてもよく、それによって、選択されたタブに焦点を合わせる。さらに、制御操作部及び選択肢は、ユーザがタブ上の所望の機能の位置を素早く見つけることに役立つように、各グループが明瞭にラベルを付けることにより、タブ毎にさらにグループ化される。例えば、「ホーム」タブは、「クリップボード」グループ分け、「モジュール」グループ分け、「挿入」グループ分けなどを含むことができる。各グループ分けは、垂直バー又は別の境界区切りによって付加的に分離されてもよい。
【００１７】
一部の実施形態では、各制御操作部は、テキストインジケータ及び視覚的インジケータ（例えば、制御操作部に対応する機能を明瞭に示唆するアイコン）を含んでもよい。付加的に、例えば、コンテキストに起因して利用できない機能は、「ゴースト」に、又は、そうでなければ、グレイアウトされた形で表示されることがある。他の実施形態では、ユーザインターフェイスは、これらの選択肢の利用可能性に応じて機能のアイコン及びテキスト記述子を動的に追加、又は、完全に取り除かれることがある。一部のこのような実施形態では、利用できない機能の提示の方式はユーザ選択可能であってもよい。
【００１８】
一実施形態では、ユーザインターフェイスは、使用に応じて制御操作部のレイアウトを自動的に最適化し得る。例えば、ユーザインターフェイスは、一般に使用される制御操作部を対応するタブ上のより目立つ位置に表示し得る。このため、ユーザインターフェイスは、ソフトウェアシステムによってサポートされる種々の機能の使用に対応する統計データを収集するソフトウェアモジュールと協働し得る。さらに、ユーザは、カスタムビューの一部としてソフトウェアシステムへのログイン時に表示されるべきペイン、及び、他のペインとの相対位置を選択し得る。付加的に、各カスタムビューは、１個以上の選択されたペイン、ビュー嗜好（例えば、詳細ビュー、リストビュー）、及び、他の選択肢のサイズを指定し得る。
【００１９】
一部の実施形態では、ユーザインターフェイスは、ソフトウェアシステムの所与の環境設定で利用できるタブ及びリボンにこれらの機能だけを含むことがある。例えば、ユーザがソフトウェアモジュールのための部分ライセンス、又は、利用可能なライセンスの一部だけを購入する場合、ユーザインターフェイスは、時にはタブ全体に対応することがある未払いの選択肢を完全に隠し得る。
【００２０】
一部の実施形態では、ユーザインターフェイスは、リボンメニューとは別個に、例えば、リボンメニューの上部にクイック・アクセス・ツールバーも表示する。このクイック・アクセス・ツールバーは、例えば、「保存」のような頻繁に使用される機能のためのテキスト識別子、アイコン、又は、両方を表示してもい。クイック・アクセス・ツールバーを介して利用できるようにされた制御操作部は、共通グループに対応する必要がなく、さらに同じタブに存在しないこともある。少なくとも一部の実施形態では、クイック・アクセス・ツールバーは、デフォルトの制御操作部の組と関連してユーザ構築可能であってもよい。
【００２１】
パン・アンド・ズーム・ペインのズーム特徴は、エクスプローラ・アプリケーション、制御スタジオ・アプリケーション、又は、制御システムと関連付けられた別のアプリケーションの主ペイン内のコンテンツの一部又は全部を拡大することが可能である。これらの実施形態のうちの一部では、ズーム機能は、ユーザが主ペインに提示されるグラフィックスの所望のサイズを容易に選択できるように、スライドバーでもよい。さらに、ユーザインターフェイスは、ユーザがズーム制御を操作するときにリアルタイムで主ペイン内に表示されたグラフィックスを拡大又は縮小できる。換言すると、ユーザは、選択されたサイズが満足できるかどうかを見るために、殆どのソフトウェア・アプリケーションにおいて一般的であるようにターゲット拡大率を入力する必要がない。
【００２２】
一部の実施形態では、制御スタジオ・アプリケーションのパレットペインは、例えば、ドラッグ・アンド・ドロップ・オペレーションによる主ペイン内の効率的な選択及び配置のためのアイコンを含む。アイコンは、制御ブロック又は他の機能要素に対応することがある。ユーザインターフェイスは、アイコンが表現する機能性に基づいて、又は、任意の他の原理に従って、アイコンをカテゴリにグループ分けされてもよい。ユーザインターフェイスは、さらに、ユーザが自分の特定の嗜好のためカスタムカテゴリを定義することを可能にし得る。該実施形態の一部では、ユーザインターフェイスは、例えば、観測されたシステム機能性の用法に基づいてカスタムカテゴリを自動的にポピュレートすることができる。
【００２３】
ユーザインターフェイスは、論理式の環境設定を行う式エディタをさらに含むことができる。ユーザインターフェイスは、制御スタジオ・アプリケーション、エクスプローラ・アプリケーション、企業レベル環境設定及びアセットを見る責任を担うアプリケーション、プラント施設の視認及びトラブルシューティングを行うアプリケーションなどからエディタを開始するユーザに応答して同じ式エディタを呼び出すことができる。
【００２４】
式エディタは、ユーザが構造化テキスト（例えば、関数、定数、オペランドなど）を直観的な方式で挿入することを可能にする。環境設定の努力を簡略化し、誤りの確率を低下させるため、式エディタは、例えば、リボンメニュー、リボンメニューのタブ、又は、タブのうちの１つの上の機能のグループでもよい対応するツールバーから利用できない選択肢及び制御操作部を自動的に除去し得る。好ましくは、式エディタ機能は、例えば、「オペレータ」、「機能ライブラリ」、「システム機能」、「編集機能」、「クリップボード機能」などのような数個のグループと共に単一のタブに配置される。実施形態では、式エディタは、開く、保存、元に戻すなどのような一般的なコマンドのための数個の制御操作部と共にクイック・アクセス・ツールバーを含むことができる。ユーザは、好ましくは、例えば、制御操作部を追加、削除、又は、再位置決めするために、クイック・アクセス・ツールバーを編集する能力を有する。一部の実施形態では、式エディタは、ユーザが共通コードを再使用するためコードスニペットを挿入することを可能にすることがある。さらに、式エディタは、ユーザが式エディタの編集ペイン中に入力したコマンドの正しい構文を自動的に表示することがある。
【００２５】
付加的に、ソフトウェアシステムは、ユーザインターフェイスによって表示されている別の１個以上のペインの現在コンテキストに基づいてメニュー項目の自動フィルタリング及び手動フィルタリングを提供し得る。例えば、ナビゲーションペインに表示された階層ツリー内の項目は、自動的に追加、削除、上下移動され、あるいは、カーソルが最も近接している主ペイン内の項目に基づいて、若しくは、ユーザがコマンドバーを介して有効化させるオペレーションに基づいて調節されることがある。別の実施形態では（又は、別の環境設定選択肢によれば）、ソフトウェアシステムは、ユーザのジョブ機能に従ってナビゲーションペイン内の項目をフィルタリングしてもよい。ソフトウェアシステムは、コマンドバー内のコマンドを同様にフィルタリングしてもよい。一部の実施形態では、フィルタリング選択肢は、カスタム環境設定の一部として保存される。
【００２６】
エクスプローラ・アプリケーションのユーザインターフェイスは、カスタム列レイアウトを定義するため、ユーザが主コンテンツ領域内の列の配置、サイジング、フィルタリング、グループ分け、及び、積み重ねのうちの少なくとも一部をカスタマイズすることをさらに可能にし得る。一般に、カスタム列レイアウトは、所望の量のテキストを画面に嵌め込むため、その都度、列を調節する必要性を取り除く。一実施形態では、ソフトウェアシステムは、次のセッション内のレイアウトを再構築するため（即ち、ユーザのログイン資格を認識した時）、生成されたレイアウトを自動的に保存する。ユーザは、様々な種類のタスクに対し、又は、他の技術的必要性に応じて数個のカスタム列レイアウトの環境設定をもし得る。
【００２７】
一部の実施形態では、ペインは、ユーザ嗜好に応じて、環境をカスタム化し易くするため、オン及びオフに切り替えること、サイズを変更すること、アンドック及び再ドックすること、そして、フロートすることが可能である。これらのユーザ嗜好及び他のユーザ嗜好は、レイアウトのカスタム化の一部として保存されてもよい。
【００２８】
制御スタジオ・アプリケーションの一部の実施形態では、制御スタジオ・アプリケーションのユーザインターフェイスは、ユーザインターフェイスの共通編集領域に配置可能である多数の編集ペインをサポートする。ユーザは、各ペインにおいて１個以上の論理ブロック（例えば、Ｆｉｅｌｄｂｕｓ機能ブロック）を環境設定及び視認することが可能である。異なったペイン内に表示された論理ブロックの間の相互作用を定義するプロセスを簡略化するため、ユーザインターフェイスは、ユーザが第１のペイン内に表示された論理ブロックの出力を選択し、ペインの境界を越えて第２のペインに表示された論理ブロックの入力までコネクタをドラッグし、かつ、接続を完了することを可能にする。ユーザインターフェイスは、ユーザインターフェイスの編集領域内の数個のペインをスパンする接続インジケータ（例えば、行）を表示することができる。別の実施形態では、ユーザインターフェイスは、接続が異なるペイン内の論理ブロックに結合された論理ブロックの各入力又は各出力で完了するペインを識別する（例えば、明瞭さのため色分けされることがある）タグを表示することができる。このようにして、ユーザは、すべての論理ブロックを単一のペインに配置することを試みることなく、又は、多数のダイアログウィンドウを開始することなく、論理ブロック間の接続を迅速かつ効率的に定義することができる。別の態様では、ユーザは、特有のペインにおいてこのペイン内で完了していないすべての接続を容易に識別することができる。この特徴は、多数のビューに亘る通信の端点を「探索」する必要性を取り除くことにより、制御戦略の検査及びデバッギングを非常に簡略化することができる。
【００２９】
別の態様では、ユーザインターフェイスは、ユーザが行い得る未来のアクションをより良く予測し、ユーザが実行している特注のタスクに応じてレイアウトを自動的に最適化するため、画面を自動的に変形し得る。ユーザインターフェイスは、最初に、当初のコマンドの組を備えるコマンドペイン、主コンテンツ／編集ペイン、ナビゲーションペイン、又は、他のデフォルトペインを含む画面をユーザに提示することができる。表示されたペインの各々は、デフォルトサイズであってもよく、他のすべてのペインと相対的にデフォルト位置であってもよい。コマンドペインを介して制御操作部を有効化するユーザに応答して、ユーザインターフェイスは、ユーザコマンドを実行用の実行エンジンへ伝搬するのに加えて、いくつかのアクションをとることができる。一部の実施形態では、ユーザインターフェイスは、１つ以上の付加的なペインを自動的に表示し、これらの付加的なペインに表示されるべき情報量に基づいてこれらの付加的なペインのサイズを定め、そして、新しいペインを収容するために以前に表示されたペインを調節してもよい。さらに、ユーザインターフェイスは、以前のユーザコマンド選択に関係しない制御操作部を隠す（例えば、取り去る）ことにより（又は、一部の実施形態では、ユーザの以前の制御選択に続いて呼び出される可能性が統計的に低い）、コマンドペイン内で制御操作部を自動的に調節し、以前の制御選択を考慮してユーザに関連することがある新しい制御操作部を追加し、制御操作部（例えば、ボタン、ボタンのグループ）の位置決め及びサイズを調節し、ペインの一部におけるフォントサイズを調節することなどができる。よって、ユーザは、ある種のオペレーションモードを選択した時、ペインを手動でアンドックし、有効化し、移動させ、又は、サイズ変更する必要がない。
【００３０】
一部の実施形態では、ユーザインターフェイスは、同様に、画面を変形し得、特に、ナビゲーションペイン内の選択に応答してペインを変形し得る。さらに、ユーザインターフェイスは、ユーザ嗜好（例えば、１０未満のフォントサイズなし）及び所定の原理（ダウンロード選択肢を有効化するユーザに応答して主コンテンツ／編集ペインの下に未解決の参照ペインを表示する）の両方に従って画面を変形させるために、ユーザがペインの位置決め、ペインのサイズ、テキスト、グラフィックスなどに関して自分の嗜好を保存することを可能にし得る。なおさらに、ユーザインターフェイスは、ユーザが実行している特有のタスクを調節し続けるためにオペレーションの多数の段階で画面を変形し得る。
【００３１】
別の態様では、ユーザインターフェイスは、バッチ制御のためのレシピ環境設定中にパラメータを関連付ける効率的な技術をサポートする。制御スタジオ・アプリケーションは、様々なプロシージャ、ユニットプロシージャ、オペレーション、及び、レシピのフェーズ・クラスの名前を一覧表にする対話型画面を表示し得る。一実施形態では、プロシージャ、ユニットプロシージャ、オペレーション、及び、フェーズ・クラスは、対話型テーブルを定義するためにそれぞれの列に表示される。フェーズ・クラス・パラメータをオペレーションのレベルに委ねるために、例えば、ユーザは、選択されたフェーズ・クラスのために定義されたパラメータを見るため所望のフェーズ・クラスの名前をクリックするか、又は、別の制御をし、パラメータを選択し、かつ、ターゲットオペレーションに対応して対話型テーブル内の位置に選択されたパラメータをドラッグ・アンド・ドロップしてもよい。ユーザインターフェイスは、次に、（例えば、データベース内に規則の組として格納された）所定の命名法を使用してパラメータ名を自動的に生成し、オペレーションに対応する対話型テーブルのセクションに新たに生成されたパラメータを表示し、そして、パラメータを委ねられたパラメータと関連付けることが可能であり、即ち、委ねられたフェーズ・クラス・パラメータと委ねられた先のオペレーションパラメータとの間にリンクを生成し、格納することが可能である。
【００３２】
実施形態の少なくとも一部において、ユーザインターフェイスは、ユーザが階層の数層を越えて、例えば、フェーズ・クラスのレベルからユニットプロシージャのレベルまでパラメータをドラッグ・アンド・ドロップすることをさらに可能にさせ、かつ、各中間レベルで関連付けられたテキスト記述子と共にパラメータを自動的に生成する。さらに、ユーザインターフェイスは、同じ又は類似したドラッグ・アンド・ドロップ・オペレーションを介して、事前に存在するパラメータへのパラメータの割り当てをサポートすることができる。このようにして、ユーザは、パラメータを委ねるか、又は、割り当てるために、多数のダイアログと相互作用する、又はコマンドを選択し作動させる（若しくはタイプする）必要がない。
【図面の簡単な説明】
【００３３】
【図１】プロセスプラント内に位置し、本開示のユーザインターフェイス生成技術の一部又は全部を実施するオペレータワークステーションを含む分散プロセス制御ネットワークのブロック図である。
【図２】図１のオペレータワークステーションに格納され、プロセスプラント内で強化された機能性を実施するため使用されることがあるスマート・プロセス・オブジェクト及びプロセスモジュールを含むアプリケーション及び他のエンティティの組の論理ブロック図である。
【図３】図１に示されたプロセス制御環境で使用されるべき制御論理の設計及びシミュレーションを行うソフトウェアモジュールの主ユーザインターフェイス・ウィンドウの実施例である。
【図４】フェーズ・クラス項目又はレシピ項目のためのツリーの既知の２ペインレイアウトを示す図である。
【図５】図１に示されたシステムのユーザインターフェイスによって生成された図４の項目の例示的なツリーレイアウトを示す図である。
【図６】図１に示されたシステムのユーザインターフェイスによって生成された環境設定タブのいくつかの実例を示す図である。
【図７】図１に示されたシステムのユーザインターフェイスによって生成された環境設定タブのいくつかの実例を示す図である。
【図８】図１に示されたシステムのユーザインターフェイスによって生成されることがある例示的なパラメータウィンドウを示す図である。
【図９】ユーザが編集用のパラメータのうちの１つを選択する図８のパラメータウィンドウの例示的な状態を示す図である。
【図１０】図８のパラメータウィンドウの別の状態を示す図である。
【図１１】図１に示されたシステムのユーザインターフェイスを用いてプロセス制御論理の環境設定を行うときに用いられる例示的なパレットを示す図である。
【図１２】図１に示されたシステムのユーザインターフェイスのズーム特徴の例示的な実施形態を示す図である。
【図１３】図１に示されたシステムのユーザインターフェイスに含まれ得る式エディタのいくつかの例示的な画面を示す図である。
【図１４】図１に示されたシステムのユーザインターフェイスに含まれ得る式エディタのいくつかの例示的な画面を示す図である。
【図１５】図１に示されたシステムのユーザインターフェイスに含まれ得る式エディタのいくつかの例示的な画面を示す図である。
【図１６】図１に示されたシステムのユーザインターフェイスによって生成されたリボンメニューのいくつかの例示的な動作状態を示す図である。
【図１７】図１に示されたシステムのユーザインターフェイスによって生成されたリボンメニューのいくつかの例示的な動作状態を示す図である。
【図１８】図１に示されたシステムのユーザインターフェイスによって生成されたリボンメニューのいくつかの例示的な動作状態を示す図である。
【図１９】図１に示されたシステムのユーザインターフェイスによって生成されたリボンメニューのいくつかの例示的な動作状態を示す図である。
【図２０】図１に示されたシステムのユーザインターフェイスによって生成されたリボンメニューのいくつかの例示的な動作状態を示す図である。
【図２１】図１に示されたシステムのユーザインターフェイスによって生成されたリボンメニューのいくつかの例示的な動作状態を示す図である。
【図２２】図１に示されたシステムのユーザインターフェイスによって生成されたリボンメニューのいくつかの例示的な動作状態を示す図である。
【図２３】図１に示されたシステムのユーザインターフェイスによって生成されたリボンメニューのいくつかの例示的な動作状態を示す図である。
【図２４】図１に示されたシステムのユーザインターフェイスによって生成されたリボンメニューのいくつかの例示的な動作状態を示す図である。
【図２５】図１に示されたシステムのユーザインターフェイスの付加的な画面を示す図である。
【図２６】図１に示されたシステムのユーザインターフェイスの付加的な画面を示す図である。
【図２７】図１のプロセス制御システム内の階層を定義する例示的な画面を示す図である。
【図２８】図１に示されたシステムで動作してもよい例示的なユーザインタフェース・ジェネレータのブロック図である。
【図２９】図１のシステムで使用される制御論理設計アプリケーションのユーザインターフェイスと一緒に動作してもよい例示的な接続及びパラメータ生成モジュールのブロック図である。
【図３０Ａ】ユーザが共通編集領域の範囲内で別個の独立に有効化及び制御されたペイン内に描かれた論理モジュール間の接続を定義するとき、図２８に示されたモジュールによって生成される例示的な画面を示す図である。
【図３０Ｂ】ユーザが共通編集領域の範囲内で別個の独立に有効化及び制御されたペイン内に描かれた論理モジュール間の接続を定義するとき、図２８に示されたモジュールによって生成される例示的な画面を示す図である。
【図３０Ｃ】ユーザが共通編集領域の範囲内で別個の独立に有効化及び制御されたペイン内に描かれた論理モジュール間の接続を定義するとき、図２８に示されたモジュールによって生成される例示的な画面を示す図である。
【図３１Ａ】図２８に示されたモジュールがレシピ環境設定中にパラメータを委ねることの一部として生成し得る例示的な画面を示す図である。
【図３１Ｂ】図２８に示されたモジュールがレシピ環境設定中にパラメータを委ねることの一部として生成し得る例示的な画面を示す図である。
【図３１Ｃ】図２８に示されたモジュールがレシピ環境設定中にパラメータを委ねることの一部として生成し得る例示的な画面を示す図である。
【図３１Ｄ】図２８に示されたモジュールがレシピ環境設定中にパラメータをレシピ階層の異なるレベル上の事前に存在するパラメータに割り当てる間に生成し得る例示的な画面を示す図である。
【図３２Ａ】図１に示されたシステムのユーザインターフェイスによって提供される画面変形の実例を概略的に示すブロック図である。
【図３２Ｂ】図１に示されたシステムのユーザインターフェイスによって提供される画面変形の実例を概略的に示すブロック図である。
【図３２Ｃ】図１に示されたシステムのユーザインターフェイスによって提供される画面変形の実例を概略的に示すブロック図である。
【図３３】図１に描かれた環境で動作するソフトウェアモジュールの主ユーザインターフェイス・ウィンドウの別の実例を示す図である。
【発明を実施するための形態】
【００３４】
制御戦略の定義、編集及びデバッギングを行い、制御戦略が実施されるプロセスプラントの運転を監督し、施設を管理し、他のアクションを実行するソフトウェアベースのプロセス制御システムは、エンジニアの人員、オペレータ、保守要員によって用いられる対話型ユーザインターフェイスを含んでもよい。コンテキスト固有の動的メニュー、直観的制御項目、環境設定可能なペインのレイアウトなどを提供することにより、ユーザインターフェイスは、プロセス制御環境内で所望のタスクを実行するための所要時間を削減する。さらに、レシピ環境設定中に多数のペインにかかる、又は、パラメータを委ね、かつ、リンクする可視的なコネクタを生成するマルチペイン編集及び実施技術をサポートすることにより、ほんの２つの実例だけを考慮すると、ユーザインターフェイスは、様々なエンジニアリングタスクを簡略化し、全体的なユーザ体験を改善する。このユーザインターフェイスが実施され得る例示的なプロセス制御システムが最初に図１及び図２を参照して検討される。ユーザインターフェイスの全部又はそれぞれの部分をサポートするアプリケーションに適用可能である様々な技術が図３〜図３１Ｃを参照して検討される。より詳細に後述されるように、これらのアプリケーションは、制御戦略を設計するアプリケーション（本明細書中では、制御スタジオ・アプリケーションとも称される）と、コントローラ、物理的機器、制御戦略のような様々な物理的エンティティ及び論理的エンティティと関連したデータの場所を見つけ、データを視認し、データの環境設定を行い、かつ、データをダウンロードするアプリケーション（本明細書中では、エクスプローラ・アプリケーションとも称される）とを含む。
【００３５】
Ｉ．  プロセス制御プラントにおけるオペレータ・インターフェイス・アプリケーション
ここで図１を参照すると、スマート及び／又は非スマート・プロセス・オブジェクトが両方共にプラント環境内で強化された制御及びシミュレーションを行うために制御モジュールと一体化されることがあるプロセス・グラフィック表示及びプロセスモジュールを形成するために使用される例示的なプロセスプラント１０が詳細に示される。具体的には、プロセスプラント１０は、例えば、Ｆｉｅｌｄｂｕｓインターフェイス、Ｐｒｏｆｉｂｕｓインターフェイス、ＨＡＲＴインターフェイス、標準的な４〜２０ｍＡインターフェイスなどでもよい入力／出力（Ｉ／Ｏ）機器若しくはカード１８を介して、それぞれが１台以上のフィールド機器１４及び１６に接続されている１台以上のコントローラ１２を有する分散プロセス制御システムを使用する。コントローラ１２は、例えば、イーサネット（登録商標）リンクでもよいデータハイウェイ２４を介して１台以上のホスト又はオペレータワークステーション２０及び２２にもさらに連結されている。データベース２８は、データハイウェイ２４に接続されてもよく、プラント１０内のコントローラ及びフィールド機器と関連付けられたパラメータと、状態と、他のデータとを収集及び記憶するデータヒストリアンとして動作し、及び／又は、コントローラ１２とフィールド機器１４及び１６との中にダウンロードされ、そして、記憶されるようなプラント１０内のプロセス制御システムの現在の環境設定を記憶する環境設定データベースとして動作する。コントローラ１２と、Ｉ／Ｏカード１８と、フィールド機器１４及び１６とは、典型的に、時には過酷であるプラント環境内に位置付けられ、かつ、全体に分散しているが、オペレータワークステーション２０及び２２と、データベース２８とは、通常は、制御者、又は、保守要員によって容易に評価できる制御室又は他のあまり過酷でない環境に位置している。
【００３６】
知られているように、一例として、Ｅｍｅｒｓｏｎ  Ｐｒｏｃｅｓｓ  Ｍａｎａｇｅｍｅｎｔによって販売されるＤｅｌｔａＶ（登録商標）コントローラでもよいコントローラ１２のそれぞれは、何台もの異なった、独立に実行される制御モジュール又はブロック２９を使用して制御戦略を実施するコントローラ・アプリケーションを記憶し実行する。制御モジュール２９のそれぞれは、各機能ブロックが制御ルーチン全体のうちの一部又はサブルーチンであり、プロセスプラント１０内でプロセス制御ループを実施するために（リンクと称される通信を介して）他の機能ブロックと共に動作する一般に機能ブロックと称されるもので構成されることができる。周知のように、オブジェクト指向プログラミングプロトコルにおけるオブジェクトであってもよい機能ブロックは、プロセスプラント１０内で、ある種の物理的機能を実行するために、典型的に、トランスミッタ、センサ、若しくは、他のプロセスパラメータ測定機器と関連付けられているような入力機能、ＰＩＤ、ファジィ論理などを実行する制御ルーチンと関連付けられているような制御機能、又は、バルブのようなある種の機器の動作を制御する出力機能のうちの１つを実行する。当然ながら、モデル予測コントローラ（ＭＰＣ）、最適化器などのようなハイブリッド型及びその他の型の複雑な機能ブロックが存在する。Ｆｉｅｌｄｂｕｓプロトコル及びＤｅｌｔａＶシステムプロトコルは、オブジェクト指向プログラミングプロトコルで設計され実施された制御モジュール及び機能ブロックを使用するが、制御モジュールは、例えば、逐次機能ブロック、ラダーブロックなどを含む任意の所望の制御プログラミングスキームを使用して設計することができ、機能ブロック又は任意の他の特有のプログラミング技術を使用して設計され実施されることに限定されない。
【００３７】
図１に示されたプラント１０では、コントローラ１２に接続されたフィールド機器１４及び１６は、標準的な４〜２０ｍＡ機器でもよく、ＨＡＲＴフィールド機器、Ｐｒｏｆｉｂｕｓフィールド機器、又は、ＦＯＵＮＤＡＴＩＯＮ（登録商標）Ｆｉｅｌｄｂｕｓフィールド機器のようなプロセッサ及びメモリを含むスマートフィールド機器でもよく、又は、任意の他の所望の型の機器であってもよい。Ｆｉｅｌｄｂｕｓフィールド機器（図１で参照番号１６とラベル付けされた）のようなこれらの機器のいくつかは、コントローラ１２内で実施される制御戦略と関連付けられた、機能ブロックのようなモジュール又はサブモジュールを記憶し実行し得る。Ｆｉｅｌｄｂｕｓフィールド機器１６のうちの異なる２台に配置されているような、図１に示された機能ブロック３０は、周知のプロセス制御を実施するため、コントローラ１２内の制御モジュール２９の実行と共に実行することができる。当然ながら、フィールド機器１４及び１６は、センサ、バルブ、トランスミッタ、ポジショナなどのようなどのような任意の型の機器であってもよく、かつ、Ｉ／Ｏ機器１８は、ＨＡＲＴ、Ｆｉｅｌｄｂｕｓ、Ｐｒｏｆｉｂｕｓなどのような任意の所望の通信又はコントローラプロトコルにも適合する任意の型のＩ／Ｏ機器でもよい。
【００３８】
図１のプロセスプラント１０では、ワークステーション２０は、オペレータ・インターフェイス・アプリケーション３２のスイートと、プロセスプラント１０内で接続された機器、ユニットなどに関する機能性を視認及び提供するため、任意の認可されたユーザ（例えば、環境設定エンジニア、オペレータ、保守技術者、シフトマネージャ、他の型のユーザ）によるアクセスが可能であるデータ構造とを含む。オペレータ・インターフェイス・アプリケーション３２のスイートは、ワークステーション２０のメモリ３４に格納され、アプリケーション３２のスイート内のアプリケーション又はエンティティの各々は、ワークステーション２０と関連付けられたプロセッサ３６で実行されるため適合している。アプリケーション３２のスイート全体は、ワークステーション２０内に格納されているように図示されているが、これらのアプリケーション又は他のエンティティの一部は、プラント１０内部の、又は、プラント１０と関連付けられた他のワークステーション又はコンピュータ機器に格納され、実行されることができる。さらに、アプリケーションのスイートは、ワークステーション２０と関連付けられた表示画面３７、又は、手持ち式機器、ラップトップ、他のワークステーション、プリンタなどを含む任意の他の所望の表示画面若しくは表示機器へ表示出力を提供することが可能である。同様に、アプリケーション３２のスイート内のアプリケーションは、２台以上のコンピュータ又は機械に分割され、実行されることあり、かつ、互いに連動して動作するように環境設定することがある。
【００３９】
一般的に言うと、アプリケーション３２のスイートは、３つの異なる種類のエンティティの作成及び使用を提供し、又は、可能にさせ、これらのエンティティのオペレーションは、プロセスプラント１０内で強化された制御機能、シミュレーション機能、及び、表示機能を提供するため一体的に統合することができる。より具体的には、アプリケーション３２のスイートは、（一般にプロセスプラントの一部分に関係しているオペレータ表示を提供する）プロセス・グラフィック表示３５と、（一般にプロセスプラントの一部分のシミュレーションを行う）プロセスモジュール３９と、一般にプロセスのオンライン制御を提供又は実行する制御モジュール２９のようなプロセス制御モジュールとを作成し実施するため使用されることがある。プロセス制御モジュール２９は、当該技術において一般的に周知であり、機能ブロック制御モジュールなどのような任意の型の制御モジュールを含んでもよい。以下に詳述されるプロセス・グラフィック表示要素３５は、一般に、プロセスプラント及びプロセスプラント内の要素のオペレーション、環境設定、又は、セットアップに関する情報をオペレータのようなユーザに提供するために、オペレータ、エンジニア、又は、他のディスプレイによって使用される要素である。プロセスモジュール３９は、一般にプロセス・グラフィック表示要素３５に緊密に結び付けられ、プロセスプラント、又は、プロセス・グラフィック表示３５に描かれているように接続されたプロセルプラント内の異なる要素の一部のオペレーションのシミュレーションを実行するため使用されることがある。プロセス・グラフィック表示３５及びプロセスモジュール３９は、ワークステーション２０及び２２に記憶され、実行されるように図示されているが、プロセス・グラフィック表示３５及びプロセスモジュール３９は、ラップトップ、手持ち式機器などを含むプロセス制御プラント１０と関連付けられた任意の他のコンピュータへダウンロードされ、これらにおいて実行することが可能である。
【００４０】
図２は、ワークステーション２０のアプリケーション３２のスイート内のアプリケーションとデータ構造又は他のエンティティとのうちの一部を示す。具体的には、アプリケーション３２のスイートは、制御モジュールと、プロセスモジュールと、制御モジュール、プロセスモジュール（プロセス・フロー・モジュールと呼ばれることもある）、及び、関連付けられたグラフィック表示を作成するため環境設定エンジニアによって使用されるグラフィック表示環境設定アプリケーション３８とを含む。一部の実施形態では、環境設定アプリケーション３８は、本明細書中で制御スタジオ・アプリケーション３８Ａと呼ばれる制御論理設計及び環境設定アプリケーションと、本明細書中でエクスプローラ・アプリケーション３８Ｂと呼ばれる、プロセスプラント内の様々なエンティティの場所を見つけ、環境設定を行い、制御モジュールを物理的エンティティへダウンロードするなどのアプリケーションとを含む。制御スタジオ・アプリケーション３８Ａは、どのような標準的又は既知の制御モジュール環境設定アプリケーションでもよいが、（複数の）プロセスモジュール及びグラフィック表示環境設定アプリケーションは、より詳細に後述される性質をもつ１つ以上のスマート・プロセス・オブジェクトを使用してプロセスモジュール及びグラフィック表示を作成することができる。さらに、プロセスモジュール及びプロセス・グラフィック環境設定アプリケーション３８は、別々に表示されているが、１つの環境設定アプリケーションは、これらの型の要素の両方を作成することが可能である。
【００４１】
スマート・プロセス・オブジェクト４２のライブラリ４０は、プロセスモジュール３９及びグラフィック表示３５を作成するため、環境設定アプリケーション３８によってアクセスされ、コピーされ、そして、使用される例示的な又はテンプレート・スマート・プロセス・オブジェクト４２を含む。理解されるように、環境設定アプリケーション３８は１つ以上のプロセスモジュール３９を作成するため使用されることがあり、各プロセスモジュール３９は、１つ以上のスマート・プロセス・オブジェクト４２で構成され、又は、１つ以上のスマート・プロセス・オブジェクト４２から作成され、プロセス・モジュール・メモリ４６に格納された１つ以上のプロセス・フロー又はシミュレーション・アルゴリズム４５を含むことがある。付加的に、環境設定アプリケーション３８は、１つ以上のグラフィック表示３５を作成するため使用されることがあり、各グラフィック表示３５は、１つ以上のスマート・プロセス・オブジェクト４２で構成され、又は、１つ以上のスマート・プロセス・オブジェクト４２から作成され、任意の数の互いに接続された表示要素を含むことがある。グラフィック表示３５ｂのうちの１つは、拡大形式で図２に示され、パイプ、導管、電源ケーブル、コンベヤなどでもよい接続要素によって相互接続されたバルブ、タンク、センサ、及び、フロートランスミッタのようなプロセス要素の組の描写を含む。
【００４２】
実行エンジン４８は、グラフィック表示３５によって定義されるようなオペレータのための１つ以上のプロセス表示を作成するため、及び、プロセスモジュール３９と関連付けられたシミュレーション機能性を実施するため、ランタイム中にグラフィック表示３５及びプロセスモジュール３９のそれぞれを作動するか、又は、実施する。実行エンジン４８は、全体としてプロセスモジュール３９で実施されるべき論理を定義するルールデータベース５０と、特にこれらのモジュール内のスマート・プロセス・オブジェクトとを使用し得る。実行エンジン４８は、さらに、プロセスモジュール３９のための機能性を実施するため、プラント１０内部の他にプロセスモジュール３９内部でプロセス要素間の接続を定義する接続マトリックス５２を使用し得る。
【００４３】
図２は、スマート・プロセス・オブジェクト４２ｅのうちの１つをより詳細に示す。スマート・プロセス・オブジェクト４２ｅは、テンプレート・スマート・プロセス・オブジェクトのうちの１つとして図示されているが、スマート・プロセス・オブジェクト４２ｅに関して説明されているように、他のスマート・プロセス・オブジェクトは一般に同一又は同様の要素、特徴、パラメータなどを含むこと、及び、これらの要素、特徴、及び、パラメータの細部又は値は、スマート・プロセス・オブジェクトの性質及び使用に依存して、スマート・プロセス・オブジェクト同士の間で変更又は変化させられることがわかる。さらに、スマート・プロセス・オブジェクト４２ｅは、オブジェクト指向プログラミング環境内のオブジェクトでもよく、よって、データストアと、入力及び出力と、これらと関連付けられた方法とを含むが、このスマート・プロセス・オブジェクトは、任意の他の所望のプログラミングパラダイム又はプロトコルによって作成することができ、かつ、任意の他の所望のプログラミングパラダイム又はプロトコル内で実施することができる。
【００４４】
理解されるように、スマート・プロセス・オブジェクト４２ｅは、インスタンス化される前に、図１のプロセスプラント１０の範囲内で物理的又は論理的エンティティのような特定の型のエンティティと関連付けられたオブジェクトである。しかし、コピーされ、インスタンス化された後、スマート・プロセス・オブジェクト４２ｅは、プロセスプラント内の特定のエンティティに結合されることがある。いずれにしても、スマート・プロセス・オブジェクト４２ｅは、スマート・プロセス・オブジェクト４２ｅが関連付けられた論理的エンティティから受信されるか、又は、この論理的エンティティに関係するデータを記憶するため使用されるデータストア５３を含む。データストア５３は、一般に、製造業者、改定、名前、型などのようなスマート・プロセス・オブジェクト４２ｅが関係するエンティティに関する一般的又は永続的な情報を記憶するデータストア５３ａを含む。データストア５３ｂは、プロセスプラント１０の内部に過去に存在していたか、又は、現在存在している、エンティティと関連付けられたデータを含む、スマート・プロセス・オブジェクト４２ｅが関係するエンティティに関するパラメータデータ、状態データ、入力及び出力データ、コスト、又は、他のデータのような可変データ又は変化するデータを記憶し得る。当然ながら、スマート・プロセス・オブジェクト４２ｅは、任意の所望の通信リンクを介してエンティティ自体から、イーサネット（登録商標）バス２４を介してヒストリアン２８から、又は、任意の他の所望の方式で、周期的又は非周期的にこのデータ（例えば、コストデータ）を受信するように環境設定又はプログラムされてもよい。データストア５３ｃは、スマート・プロセス・オブジェクト４２ｅが関係し、かつ、図１のワークステーション２０と関連付けられた画面３７のようなオペレータインターフェイスを介してオペレータへの実際の表示のため使用されたエンティティのグラフィカル表現を記憶し得る。当然ながら、グラフィカル表現は、データストア５３ｂに記憶されているようなエンティティに関するパラメータ又は他の可変データによって定義された情報などのような、エンティティに関する情報のための（データストア５３ｃ内で下線によってマークされた）プレースホルダを含むことができる。このパラメータデータは、グラフィカル表現がグラフィック表示３５のうちの１つの一部として表示機器３７上でオペレータに提示されるとき、グラフィカル・プレースホルダに表示されることがある。グラフィカル表現（及びスマート・プロセス・オブジェクト４２ｅ）は、グラフィカル表現によって描かれているように、オペレータ又は環境設定エンジニアが上流コンポーネント又は下流コンポーネントをプロセス要素に取り付けることを可能にさせる（データストア５３ｃ内に「Ｘ」によってマークされた）所定の接続点をさらに含むことができる。当然ながら、これらの接続点は、スマート・プロセス・オブジェクト４２ｅがプロセスモジュール内で環境設定されているようにこのスマート・プロセス・オブジェクトに接続されている要素を知ることもさらに可能にさせ、かつ、パイプ、ダクトなどのような使用されなければならない接続要素の型、及び、この要素と関連付けられたストリームなどを指定することがある。
【００４５】
スマート・プロセス・オブジェクト４２ｅは、スマート・プロセス・オブジェクト４２が使用されるプロセスモジュールの内部又は外部の他のスマート・プロセス・オブジェクトとの通信を可能にするため１つ以上の入力５４及び出力５６も含んでもよい。入力５４及び出力５６の他のスマート・プロセス・オブジェクトへの接続は、他のスマート・プロセス・オブジェクトをこれらの入力及び出力に単に接続することによって、又は、スマート・プロセス・オブジェクトの間で行われることになる特定の通信を指定することによってプロセスモジュールの環境設定中に環境設定エンジニアによって環境設定されることがある。これらの入力及び出力の一部は、前述されているように、スマート・プロセス・オブジェクトのための所定の接続点で接続されているスマート・プロセス・オブジェクトに接続されているとして定義されることがある。これらの入力５４及び出力５６は、ルールデータベース５０内のルールの組と、プラント１０内部の異なった機器又はエンティティの間の接続を定義する接続マトリックス５２とによってさらに決定又は定義されることがある。データストア、又は、データストアと関連付けられたバッファを含む入力５４及び出力５６は、一般的に言うと、他のスマート・プロセス・オブジェクトからスマート・プロセス・オブジェクト４２ｅへデータ通信を提供するため、又は、スマート・プロセス・オブジェクト４２ｅの内部に記憶されるか、若しくは、スマート・プロセス・オブジェクト４２ｅによって生成されたデータの他のスマート・プロセス・オブジェクトへの通信を提供するために使用される。これらの入力及び出力は、スマート・プロセス・オブジェクト４２ｅと、コントローラ１２、フィールド機器１４、１６などの内部の制御モジュールのような、プロセス制御システム内の他のオブジェクトとの間で通信を提供するためさらに使用されることがある。
【００４６】
図２に示されるように、スマート・プロセス・オブジェクト４２ｅは、スマート・プロセス・オブジェクト４２ｅが使用されるプロセスモジュールの実行中にスマート・プロセス・オブジェクト４２ｅによって実施されるべきアルゴリズムでもよい零個、１個又はそれ以上の方法６０（図２において方法６０ａ、６０ｂ及び６０ｃとして図示されている）を記憶するため使用される方法ストレージ５８をも含む。一般に、方法ストレージ５８に記憶された方法６０は、プロセスプラント１０又はプラント１０の内部のエンティティに関する情報を決定するために入力５４及び出力５６を介して、データストレージ部５３ａ及び５３ｂに記憶されたデータと、他のスマート・プロセス・オブジェクトから取得されたデータ、又は、環境設定データベース若しくはヒストリアン２８のような他のソースからのデータさえも使用する。例えば、方法６０は、スマート・プロセス・オブジェクト４２ｅによって定義されたエンティティと関連付けられた不良動作条件又は劣悪動作条件、及び、このエンティティ又はプロセスプラント１０内の他のエンティティと関連付けられたエラーなどを決定し得る。方法６０は、スマート・プロセス・オブジェクトの型又はクラスに基づいて、予め環境設定されるか、又は、提供されることができ、かつ、一般に、スマート・プロセス・オブジェクト４２ｅがランタイム中に実行エンジン４８内で実行されるたびに実行される。スマート・プロセス・オブジェクト４２ｅのようなスマート・プロセス・オブジェクト内に提供されることがある一部の例示的な方法６０は、リーク、不感帯、むだ時間、動き、変動性、条件監視、計算コスト、又は、エンティティと関連付けられた他の条件の検出を含む。
【００４７】
方法６０は、スマート・プロセス・オブジェクトと関連付けられたプロセスエンティティの中を流れる材料へのこのプロセスエンティティの作用をシミュレートすることを助けるためにさらに提供されることがある。よって、この方法６０は、提供された入力などに基づいて予測出力を計算するように要素の作用をシミュレートするため、質量バランス、エネルギーバランス、流量、温度、組成、蒸気状態、及び、プラント１０内の材料と関連付けられた他のシステムレベル又はストリームレベルのパラメータを計算するために提供されることがある。当然ながら、これらは、スマート・プロセス・オブジェクト４２ｅに記憶可能であり、かつ、スマート・プロセス・オブジェクト４２ｅによって動作することが可能である方法のほんのいくつかであり、かつ、使用されてもよい多くの他の方法が存在し、同時に、このような方法により、一般に、表現されているエンティティの型と、エンティティがプロセスプラント内で接続され、かつ、使用される方式に加えて、他の要因とによって決定される。なお、スマート・プロセス・オブジェクト４２ｅは、システムレベルの条件、エラーなどを検出する方法を記憶し、実行してもよいが、これらの方法は、機器と、プロセス制御モジュール及びループのような論理的要素と、他の非システムレベルのエンティティとに関する他の情報を決定するためにさらに使用されてもよいことに留意することが重要である。要望に応じて、方法６０は、Ｃ、Ｃ＋＋、Ｃ＃などのような任意の所望のプログラミング言語でプログラムされ、若しくは、提供されてもよく、又は、実行中にスマート・プロセス・オブジェクト４２ｅのため動作されるべきルールデータベース５０内で参照されてもよく、若しくは、適用可能なルールを定義することがある。
【００４８】
要望に応じて、各スマート・プロセス・オブジェクトは、プロセスモジュール内に接続されるときスマート・プロセス・オブジェクトのシミュレーション挙動を定義するため使用されることがある適用可能なアルゴリズム又は方法のライブラリを含んでもよい。このようなライブラリは、図２のスマート・プロセス・オブジェクト４２ｅのためのプルダウンメニュー６１の中に図示され、類似したメニューは１つずつの他のプロセス・オブジェクトと関連付けられることがある。環境設定エンジニアは、このスマート・プロセス・オブジェクトが、例えば、プルダウンメニュー６１を介してシミュレーション・アルゴリズム（方法１、方法２などと呼ばれる）のライブラリのうちの１つを選択することによりプロセスモジュール３９の中に置かれるとき、このスマート・プロセス・オブジェクトのシミュレーション挙動を定義し得る。このようにして、環境設定エンジニアは、スマート・プロセス・オブジェクトがモデル化するため使用される目的のプロセスの型又は性質に依存してスマート・プロセス・オブジェクトに対し異なったシミュレーション挙動を定義し得る。
【００４９】
要望に応じて、環境設定エンジニアは、代わりに、スマート・プロセス・ブロックによって定義されたプロセス要素のシミュレーション挙動を定義するため、専用のアルゴリズム又は他のユーザ供給アルゴリズムを提供し得る。このようなユーザ定義アルゴリズム（プルダウンメニュー６１の中に「ユーザ定義」エントリとして図示されている）は、スマート・プロセス・オブジェクトがプロセスモジュール３９の内部に置かれるか、又は、内部で使用されるときに、スマート・プロセス・オブジェクトに供給され、又は、記憶され得る。この機能性は、シミュレーション挙動がユーザによってカスタム化され、それによって、より良い又はより正確なシミュレーションを提供することを可能にする。要望に応じて、そして、より詳しく後述されるように、スマート・プロセス・オブジェクト４２又は各プロセスモジュール３９は、スマート・プロセス・オブジェクト内でのシミュレーション・アルゴリズムの使用を無効にさせ、かつ、その代わりに、ＨＹＳＹＳによって提供されるもののような高忠実性シミュレーション・パッケージ又はプログラムによってプロセスモジュールの挙動を決定させる（電子スイッチ又はフラグのような）オペレータ作動可能スイッチを含み得る。この場合、スマート・プロセス・オブジェクト又はプロセスモジュールは、スマート・プロセス・オブジェクト自体の内部のシミュレーション・アルゴリズムを使用するのではなく、高忠実性シミュレーションからシミュレーションされたパラメータデータを取得する。
【００５０】
実行エンジン４８によるグラフィック表示３５又はプロセスモジュール３９の実行中に、エンジン４８は、グラフィック表示３５又はプロセスモジュール３９の中のスマート・プロセス・オブジェクトの１つずつに入力５４及び出力５６によって定義された通信を実施し、かつ、方法６０によって提供される機能性を実行するためこれらのオブジェクトのそれぞれに対し方法６０を実施し得る。前述の通り、方法６０の機能性は、スマート・プロセス・オブジェクト内部のプログラミングの中に位置することがあり、又は、これらのルールによって定義された機能性を実施するため、スマート・プロセス・オブジェクトの型、クラス、識別報、タグ名などに基づいて、エンジン４８が実行するルールデータベース５０内部にルールの組によって定義されることある。
【００５１】
なお、スマート・プロセス・オブジェクト４２ｅのインスタンスは、これにスマート・プロセス・オブジェクト４２ｅが関連付けられたプロセスモジュールのコンテキストの内部にタグ又は一意の名を有し、かつ、このタグ又は固有名は、スマート・プロセス・オブジェクト４２ｅとの間で通信を提供するため使用されることがあり、ランタイム中に実行エンジン４８によって参照されることがあることに留意されたい。プロセス・モジュール・タグは、制御システム環境設定の範囲内で一意であるべきである。このタグ付け表現法は、プロセスモジュール３９内部の要素が他のプロセス・グラフィック表示３５、プロセスモジュール３９、及び、制御モジュール２９までもの内部の要素によって参照されることを可能にする。さらに、スマート・プロセス・オブジェクト４２ｅのパラメータは、単純な値のような単純なパラメータ、構造化パラメータ、又は、それらと関連付けられた予想ユニット及び属性がわかっているスマートパラメータとすることができる。スマートパラメータは、すべての信号が同じユニットで送信されること、又は、適切に変換されることを確実にするため、プロセス・ルール・エンジン又は実行エンジン４８によって解釈及び使用されることが可能である。スマートルールは、オペレータのためのスマート警報戦略及び／又はインターフェイスを作成するため、スマート・プロセス・オブジェクト（又はプロセスモジュール）の警報のグループのオンとオフとを切り替えるためにさらに使用されることが可能である。さらに、スマート・プロセス・オブジェクト・クラスは、解釈又はアクセスするために必要であるスマート・プロセス・オブジェクトとプロセス変数との間に既知のリンケージを設けるため、プラント１０のプロセス制御戦略内部の施設及びモジュールクラスと関連付けられることが可能である。
【００５２】
スマート・プロセス・オブジェクトは、プロセス・グラフィック表示又はプロセスモジュールで使用されるとき、オペレーションモード、状態、及び、警報挙動をさらも含み得るので、これらのスマート・オブジェクトは、ランタイム中に、オフモード、スタートアップモード、及び、通常モードのような異なったモードに置かれてもよく、その現在の状態に基づくオブジェクトに関連付けられた状態を提供してもよく、かつ、パラメータが範囲外、制限されている、高変動性などのような検出された条件に基づいて警報を出し得る。スマート・プロセス・オブジェクトは、スマート・プロセス・オブジェクトがクラスライブラリの中で分類すること、複合構造体の中に一緒に収集することなどを可能にするクラス／サブクラス階層をさらに有することができる。さらに、スマート・プロセス・オブジェクトは、スマート・プロセス・オブジェクトがこのスマート・プロセス・オブジェクトの関連付けられたエンティティがビジィ状態であるとき、又は、例えば、プラント１０内部のバッチ制御プロセスによって獲得されたときを認識することを可能にするため、制御モジュール及び他のオブジェクトのような他の要素からの情報を利用し得る。
【００５３】
スマート・プロセス・オブジェクトは、ポンプ、タンク、バルブといった物理的機器、又は、プロセス領域、測定器若しくはアクチュエータ、制御戦略等といった論理的エンティティのような任意の所望のプロセスエンティティと関連付けられることがある。一部の事例では、スマート・プロセス・オブジェクトは、プロセス内部のある点から別の点へ材料、電気、ガスなどを移動させる配管、導管、配線、コンベア、又は、任意の他の機器若しくはエンティティのようなコネクタと関連付けられることがある。本明細書中ではしばしばスマートリンク又はコネクタ要素と呼ばれるコネクタと関連付けられたスマート・プロセス・オブジェクト（実際の機器若しくはコネクタ自体がタグ付けされないか、又は、プロセスプラント１０の内部で通信する能力がないとしても）も、さらにタグ付けされ、そして、プロセスの中の他の要素間の材料流れを表現するために一般に使用される。
【００５４】
スマートリンクは、典型的に、どのような異なる材料又は現象（例えば、電気）が接続の中を流れるかを定義する特性又はパラメータを含む（例えば、蒸気、電気、水、汚水など）。これらのパラメータは、コネクタを通る流れの型及び性質（例えば、概略速度、摩擦係数、乱流又は非乱流のような流れの型、電磁波など）と、コネクタを通る流れの考えられる１つ以上の向きとを示してもよい。スマートリンクは、スマートリンクが接続するソースオブジェクトのユニット及びデスティネーションオブジェクトのユニットが適合することを確実にし、適合しない場合には変換を実行し得るプログラミング又は方法を含んでもよい。スマートリンクの方法は、実際のコネクタを通る流れの速度又は性質、物理的接続の長さ及びサイズ、輸送遅延などを推定するためのモデル又はアルゴリズムを用いてコネクタを通る流れをモデル化することもできる。スマート・プロセス・オブジェクトのため記憶されたパラメータ（例えば、摩擦パラメータ）は、これらの方法で使用されてもよい。よって、本質的に、スマートリンク又はコネクタ要素は、スマート・プロセス・オブジェクトが他の上流及び下流のオブジェクト又はエンティティを認識することを可能にする。当然ながら、スマートリンクは、任意の所望の方式又は慣用的な方式で、例えば、他のオブジェクト間の接続と、システム内部の液体、気体、電気などのような流体の型と、他のエンティティがこのスマート・プロセス・オブジェクトのためのエンティティの上流及び下流であるエンティティの上流側及び下流側と、材料、流体、電流などの流れの向きとを定義してもよい。一実施形態では、マトリックス５２は、プロセス・フロー・モジュールの実行前に作成されることがあり、スマートリンクに対しプラント内部の異なった機器間の相互接続、従って、異なったスマート・プロセス・オブジェクト間の相互接続を定義することがある。実際には、実行エンジン４８は、上流エンティティ及び下流エンティティを確認し、そして、それによって、スマート・プロセス・オブジェクトとこのスマート・プロセス・オブジェクトと関連付けられた方法との間の通信を定義するためにマトリックス５２を使用することがある。さらに、ルールの１つ以上の組が、スマート・プロセス・オブジェクト内部の方法のための必要に応じて、互いに相互作用し、相互にデータを取得するため、そして、出力接続と関連付けられたスマート・オブジェクトの影響を解決するためスマート・プロセス・オブジェクトによって使用されるように提供されることがある。
【００５５】
要望に応じて、スマート・プロセス・オブジェクト４２ｅは、オブジェクトの型に適用されることがあり、又は、スマート・プロセス・オブジェクト４２ｅが関係した機器の（重要度及びアプリケーションに依存した）インスタンスに特定でもよい主要文書へのＵＲＬのようなホットリンクをさらに含むことができる。この文書は、ベンダ供給でも、ユーザ特定でもよい。文書の一部の実例は、環境設定プロシージャ、スタートアッププロシージャ、及び、シャットダウンプロシージャと、運転及び保守文書とを含む。要望に応じて、オペレータは、オブジェクト又は関連付けられた機器のための（もしあれば）インスタンス特定の文書及び汎用的な文書を提示するためにオペレータ表示に表示されたようなオブジェクトをクリックし得る。同様に、オペレータは、システムソフトウェアと独立に、保守要求、運用問題の記録などのような文書を追加／削除／変更できることがある。さらに、これらのホットリンクは、知識リンクをオペレータインターフェイスの中のオブジェクトに追加する能力を提供し、オブジェクトと関連付けられた適切な情報への高速なナビゲーションを行い、かつ、カスタマに特定、オブジェクト型に特定、又は、オブジェクトのインスタンスにさえも特定である作業命令を追加する能力を提供するために、ユーザ環境設定可能又は変更可能でもよい。
【００５６】
プロセスモジュール及びプロセス・グラフィックスは、異なるスマート・プロセス・オブジェクトの相互接続によって一体的に作成されるものとして前述されているが、これらは別々に作成されてもよい。例えば、プロセス・グラフィックは、スマート・プロセス・オブジェクトを使用して作成されてもよく、完了したとき、このグラフィックのためのプロセスモジュールは、グラフィック表示の中のグラフィック要素及びこれらの相互接続に基づいて生成されてもよい。代替的に、プロセスモジュールは、スマート・プロセス・オブジェクトを使用して最初に作成されることがあり、一旦作成されると、このプロセスモジュールのためのグラフィック表示がプロセスモジュールを作成するため使用されたスマート・プロセス・オブジェクトの中のグラフィック表示要素を使用して環境設定アプリケーション３８によって自動的に生成されることがある。さらに、プロセスモジュール及びグラフィック表示は、別々に作成されることがあり、これらの２つのエンティティ内の個々の要素は、（例えば、グラフィック表示内の要素及びプロセスモジュール内の要素のタグ特性を使用して）互いに参照することにより手動で一体的に結合されることがある。このメカニズムを通じて、スマート・プロセス・オブジェクトは、多数の表示によって参照されることがある。いずれにしても、一旦作成されると、プロセス・グラフィック表示及び関連付けられたプロセスモジュールは、要望に応じて、又は、必要に応じて、典型的にパラメータ及び情報を相互に通信するが、独立又は別々に作動させられることがある。
【００５７】
一般的に言うと、事前定義グラフィック要素の組は、ユーザがプロセスプラントを反映するプロセス・グラフィック表示を構築することを可能にさせるため環境設定アプリケーションの中に設けられることがある。これらの表示は、制御システムとインターフェイスをとるオンライン測定器及びアクチュエータを動的に表示するように設計されたグラフィック表示要素を有し、その結果として、オンライン運転に関与するオペレータ又は他の要員によって典型的に監視及び利用される情報を提示することがある。その上、プロセス運転を反映する非測定パラメータは、プロセスモジュールに提供されたオンライン・プロセス・シミュレーションを使用して計算されることがあり、関連付けられたグラフィック表示の一体的な部分として表示されることがある。これらの方法及び他の方法では、プロセス・グラフィック表示は、エンジニアリング要員又は管理者のようなオペレータ以外のプラント要員によって典型的に監視され利用される情報を提供することがある。
【００５８】
付加的に、エンジニアリング又は訓練シミュレーションのため使用されることがあるオフライン環境では、プロセスモジュールによって提供されるプロセス・シミュレーション値は、そうでなければグラフィック要素及び関連付けられた制御モジュールによって提供される実際のプロセス測定値の代わりに使用及び／又は表示されることがある。関連付けられたプロセスモジュール又は第三者によるシミュレーション・アプリケーション（例えば、ＨＹＳＹＳ）によって計算されることがあるこれらのシミュレーション値は、実際のプラント設定（例えば、アクチュエータの位置又は状態）と、その他に、プロセス・グラフィック表示及びこれらのそれぞれのグラフィック表示要素を介して確立され、かつ、これらのプロセス・グラフィック表示及びこれらのそれぞれのグラフィック表示要素の中に描かれたユーザにより指定された外乱設定又は値とに基づくことがある。これらのために、プロセス・グラフィック表示のオフラインビューのためカスタム化されたプロセス・グラフィック表示のコンテンツ層が生成され、例えば、訓練コンテキストにおいて利用可能にされることがある。このプロセス・グラフィック表示のコンテンツ層に関するさらなる詳細は、後述される。
【００５９】
より一般的に、プロセス・グラフィック表示は、多数の異なるタイプの人員によって、オンライン又は制御状況と、オフライン又はシミュレーション状況との両方を含む多種多様のコンテキストで使用されることがある。このため、各プロセス・グラフィック表示は、これらの様々なコンテキスト、状況及び要員に専用の複数のコンテンツ層を有することがある。別個の独立した表示を有する従来のシステムとは異なって、これらの専用コンテンツ層は、同じ１つ以上のオブジェクトが異なるコンテンツ層のすべてを生成するため必要とされる情報と関連付けられているという意味で、オブジェクトを定義するため使用されるオブジェクトの一体化された部分である。その結果として、単一のプロセス・グラフィック表示のコンテンツ層は、ビュー毎に別個の表示を作成するため、環境設定エンジニア又は他の設計要員を必要とすることなく、カスタム化されたビューを提供する。
【００６０】
異なる機能（運転、エンジニアリング、保守、管理など）のためのカスタム化されたユーザインターフェイス表示を生成するため必要とされる情報の広がりは、グラフィック表示要素及びこのグラフィック表示要素と関連付けられたシミュレーション・アルゴリズムの柔軟性があり、かつ、拡張可能な組によって提供されサポートされる。ストリーム要素、プロセス接続要素、アクチュエータ要素、処理要素、測定要素、及び、推定特性要素といった多数の異なる型のプロセスプラント要素と対応し得るこれらのグラフィック表示要素は、予め定められてもよく、又は、そうでなければ、プロセス・グラフィックス表示及びこのプロセス・グラフィックス表示の広範な機能性を作成する際に利用可能にされてもよい。カスタム要素は、特定の型の上記プロセスプラント要素と、このような要素の複合形状と、基本グラフィック形状（例えば、線、円など）から構成される完全に新しい要素とを対象とするため、環境設定エンジニアによって作成又は生成されてもよい。
【００６１】
ストリーム要素は、一般に、プロセスプラントの中の材料のストリームを定義し、材料のストリームを定義する組成、密度、流れ、温度、圧力、重量、及び／又は、任意の他のパラメータを表すためにグラフィック表示に表されることがある。ストリーム要素は、プロセスモジュールの入力で定義され、プロセスモジュール内部の要素に供給され、それによって、プロセスモジュールを通る材料の流れがモデル化され、グラフィック表示に描かれることを可能にする。同様に、ストリーム要素は、グラフィック表示によって描かれたプロセスプラントの一部の材料出力をグラフィック表示に図示するため、プロセスモジュールの出力又は端部に図示されることがある。ストリーム要素は、どのように異なるグラフィック表示（及び関連付けられたプロセスモジュール）が互いに接続されているかを定義するためさらに使用されることがある。例えば、あるプロセスモジュール内の出力ストリームは、別のプロセスモジュール内の入力ストリームでもよく、他のプロセスモジュールの入力ストリームで使用される値を供給することがある。ストリームは、以下の４つの部分、即ち、名前（例えば、ｐＨストリーム）と、向き（例えば、流れ入力）と、測定（例えば、流れ、圧力、温度）と、組成（例えば、窒素、アンモニアなど）とを含むことができる。しかし、ストリームは、要望に応じて、他の部分又はパラメータを有することが可能である。
【００６２】
プロセス接続要素は、固体材料、液体及び蒸気、ならびに気体などのようなプラント内部の材料が一方の機器から別の機器へ供給又は運搬される方式を定義する。プロセスの中を通る材料流れを明瞭に図示するため、配管、ダクト及びコンベアを含む３つの異なる種類のプロセス接続が使用されることがある。当然ながら、電気化学プロセスの中で電力流を取り扱う電気ケーブルなどのような他の接続要素も同様に使用されることがある。配管は、プラント内部の液体及び高圧蒸気、又は、気体流を図示（及びシミュレート）するため一般に使用される。ダクトは、プラント内部の低圧気体流を図示（及びシミュレート）するため一般に使用される。コンベアは、処理ユニット間の固体材料の移動を図示（及びシミュレート）するため一般に使用される。その結果として、各プロセス接続要素は、材料を機器の入力又は出力に供給するため使用されるパイプ接続、ダクト接続、又は、コンベア接続のような接続の型を定義する。
【００６３】
要望に応じて、接続によって移動させられている材料の特性は、上流入力によって決定される。この情報と、接続が完全であるかどうかを定義する接続状態変数とは、接続要素の特性としてグラフィック表示上で利用できるようにされる。接続要素は、処理要素出力、アクチュエータ要素出力、又は、ストリーム要素出力で始まることがある。類似した方式で、接続要素は、処理要素入力、アクチュエータ要素入力、又は、ストリーム入力で終端することがある。
【００６４】
接続要素の特性は、カーソルがグラフィック表示上の中の接続要素の上に置かれるとき、自動的に表示されることがある。同様に、接続要素と関連付けられた特性は、測定量又は推定特性要素（後述される）を接続要素上に配置することにより永続的な表示のため現されることがある。要望に応じて、接続要素は、（ストリーム出力、処理要素出力、又は、アクチュエータ要素出力のような）要素出力の上で左マウスボタンを押さえ、そして、マウスのボタンを押している間に、カーソルを要素入力の上に位置決めすることにより作成されてもよい。接続の確立を成功させるためには、上流要素及び下流要素の入力型及び出力型（管、ダクト又はコンベア）は一致しなければならない。接続は、上流要素の型を自動的にとる。
【００６５】
要望に応じて、配管要素は、パイプ接続としてプロセス・グラフィック表示の中に表現又は描写されることが可能であり、ダクト要素（例えば、空気又は気体）は、ダクトとして表現可能であり、コンベア要素はコンベアベルトとして表現されてもよい。配管、ダクト及びコンベア要素接続は、処理要素の間を自動的にルーティングすることが可能であり、矢印が流れの向きを表現するためにこれらの要素の描写の外側に表示されることがある。上流出力が２つの接続に共通である場合、「Ｔ」要素がパイプ、ダクト、又は、コンベアの中に含まれることがある。同様に、「Ｔ」要素は、多数の出力を合成するため使用されることがある。コンベア要素の色又は他のグラフィック特性は、コンベア要素の状態、例えば、運転中／停止、フロー中／フロー無し、詰まり状態などを示すために変化することがある。一般的に言うと、コンベアに沿った材料流れは、コンベアに接続されたモータ・ドライブによって決定される。よって、モータ・ドライブ・アクチュエータ（より詳しく後述されるアクチュエータ要素）がコンベアに接続されることがある。付加的に、測定要素（後述される）は、コンベアの速度又はパイプ若しくはダクト内の材料の流量、コンベア、パイプ若しくはダクトの上若しくは中の、例えば、湿度若しくは重量のような、材料の特性などのような、パイプ要素、ダクト要素、又は、コンベア要素と関連付けられた測定量を表すことを可能にするため、パイプ要素、ダクト要素及びコンベア要素に接続されることが可能である。さらに、露出された特性要素は、測定されていないパイプ、ダクト、又は、コンベアの上若しくは中の、例えば、材料の組成のような表示特性に追加されることがある。
【００６６】
要望に応じて、配管接続要素、ダクト接続要素及びコンベア接続要素のそれぞれは、（例えば、色変化によって）接続の欠損と、（例えば、色変化によって）選択された特性（圧力、温度、長さなど）が（例えば、色変化によって）環境設定された限界の外側であることとをグラフ的及び動的に反映することがある。さらに、関連付けられたプロセスモジュールによって計算されたパラメータは、グラフィックに表されることがある。例えば、上流接続によって提供される特性と、接続状態が不良であるか、又は、良であるかと、接続要素の１つ以上の選択されたパラメータの限界などは、接続要素、又は、接続要素によって移動させられているストリームに関する情報をオペレータに提供するため、グラフィック表示に表されることがある。
【００６７】
一般的に言うと、アクチュエータ要素は、ストリームに関してある種の作動機能を実行する要素であり、異なる接続要素の間、又は、処理要素と接続要素との間に設置されることがある。アクチュエータ要素の実例は、調節バルブ（アクチュエータ付き）と、オン／オフ・バルブ（アクチュエータ付き）と、ポンプ（モーター付き）と、強制通風ファン（モーター付き）と、誘引通風ファン（モーター付き）と、排出装置（オン／オフ・バルブ付き）と、緩衝装置（ドライブ付き）と、送り装置（可変速モーター付き）と、コンベア・モーター・ドライブ（コンベア要素に取り付けられることがある）などを含む。
【００６８】
バルブ要素のグラフィック描写は、（例えば、アニメーションによって）推定バルブ位置と、（例えば、色変化によって）バルブ故障と、（例えば、色変化によって）バルブ全開／閉位置と、このバルブを制御する関連付けられた制御ブロックの（例えば、数字列又は他の標識によって）ＡＯ、ＤＯ、ＤＣ、設定点、ＰＶ、ＯＵＴ、モードなどを動的に反映してもよい。（プロセスモジュールで使用される）バルブ要素と関連付けられたシミュレーション要素は、吐き出し圧力、質量流れ、液体温度、液体組成、入口圧力、及び、出口圧力のようなバルブアクチュエータと関連付けられたパラメータを計算するシミュレーション・アルゴリズムを有することができる。これらのシミュレーション又は計算されたパラメータは、要望に応じて、プロセス・グラフィックに表されることがある。しかし、ユーザ、又は、環境設定エンジニアは、通常、バルブの他にバルブ型（例えば、リニア、急開放、イコールパーセンテージ、バルブサイズなど）、及び、開から閉へのストローク時間と関連付けられた制御モジュールの中のＡＯ、ＤＯ又はＤＣブロックへの参照の環境設定を行う必要がある。当然ながら、バルブの中を流れる材料上でのバルブの動作をシミュレーションするため利用できるシミュレーション・アルゴリズムは、バルブの型及びサイズ情報に依存することがある。
【００６９】
ポンプ要素のグラフィック描写は、（例えば、色変化を使用して）モーター状態と、（例えば、文字列を使用して）関連付けられたＤＯ又はＤＣ機能ブロックモード及び設定点と、（可変速ドライブが使用される場合に）モーター速度と、（可変速ドライブが使用される場合に）ＡＯ設定点、ＰＶ、ＯＵＴモードと、他の所望のパラメータとを動的に反映することがある。同様に、この要素のため（プロセスモジュールの中で使用される）プロセス・シミュレーションは、グラフィック表示に表されることがある吐き出し圧力、液体組成、液体温度、及び、質量流れのようなパラメータを決定又は計算することができる。ユーザは、ポンプ型に基づいてポンプ曲線を定義する必要があることがある。しかし、ユーザは、モーター始動／停止と関連付けられたＤＯ又はＤＣブロックへの参照、（使用される場合に）可変速ドライブのための関連付けられたＡＯ機能ブロックへの参照、及び、ポンプの動作を定義するポンプ曲線（例えば、圧力対流量）の環境設定を行うことができる。
【００７０】
強制通風ファン又は誘引ファンのアクチュエータ要素のグラフィック描写は、モーター状態と、ＤＯ又はＤＣ機能ブロックモード及び設定点と、（可変速ドライブが使用される場合に）モーター速度と、（可変速ドライブが使用される場合に）ＡＯ設定点、ＰＶ、ＯＵＴ、ＤＯ又はＤＣ機能ブロックモードと、他の所望のパラメータとを動的に反映する描写を有することがあり、これらのうちのいずれもがグラフィック表示に票されることがある。この要素のための（プロセスモジュールで使用される）プロセス・シミュレーション要素は、グラフィック表示に表されることがある吐き出し圧力、気体組成、気体温度、及び、気体質量流れのようなパラメータを決定又は計算することができる。ユーザは、モーター始動／停止のための関連付けられたＤＣブロックへの参照、（使用される場合に）可変速ドライブのためのＡＯブロックへの参照、及び、ファンのシミュレーションされたオペレーションを定義するファン曲線（圧力対流量）の環境設定を行うことができる。
【００７１】
処理要素は、ある種の方式でプラントの中の材料又はストリームを処理するプラント施設を含む。一般的に言うと、処理要素へのすべての入力及び処理要素からのすべての出力は、接続要素を通じて行われる。標準的な処理要素は、タンク（垂直及び水平）と、ヒーターと、静的ミキサと、反応炉と、ミキサと、空気加熱器と、ある種の単純又は標準的な処理アクションを実行する任意の他の要素とを含む。標準的な処理要素のため、ユーザは、例えば、サイズ、容積などの物理的な施設特性と共に要素への入力及び出力の数を指定することができる。このシミュレーション・アルゴリズム及びこれらの標準的な処理要素の静的表現は、ユーザによって修正されることができないように設定されることがあるが、しかし、前述されているように、環境設定時に選択可能にされることがある。当然ながら、要望に応じて、（蒸留塔、蒸発器、分離器、ボイラーなどのような）他の典型的により複雑なプラント施設は、カスタム処理要素として実施されることがある。静的表現と、入力及び出力の数と、このようなカスタム処理要素のシミュレーション・アルゴリズムとは、ユーザインターフェイス要件を満たすように修正されることがある。カスタム処理要素が定義されると、カスタム処理要素は、他の処理要素の作成中に再使用されるか又は開始点として使用される複合形状又はテンプレートとして保存されることがある。
【００７２】
タンク標準処理要素（垂直又は水平の何れか）は、タンクへのパイプ接続に基づいて環境設定されることがあり、そして、タンク要素は、（例えば、動的アニメーションを使用して）タンク内のレベルと、（例えば、色変化を使用して）１００％又は空のレベルとを動的に反映することがある。タンクのためのプロセス・モジュール・シミュレーションは、グラフィック表示を介して、出口温度と、出口組成と、液体温度と、シミュレーションされたタンクの液位とのようなパラメータを計算し表すことがある。しかし、タンクをシステムの中に結合するため、ユーザ又は環境設定エンジニアは、入力接続及び出力接続の数と、タンクへの完全な接続と、サイズ（例えば、直径及び高さ）のようなタンク特性などの環境設定を行うことが必要であることがある。
【００７３】
ヒーター処理要素は、グラフィック表示を介して、（例えば、色変化を使用して）熱伝達率と、出口製品温度と、入口製品温度と、（一定の降下を仮定して）出口圧力などを動的に計算及び反映することができる。ユーザ又は環境設定エンジニアは、ヒーターへの完全な接続と、ヒーター表面積と、汚れていないときのヒーター熱伝達率との環境設定を行うことが必要であり得る。
【００７４】
当然ながら、静的ミキサ、反応炉、ミキサ、空気加熱器、熱交換器などのような他の処理要素は、これらの型の機器に合わされた表示能力及びシミュレーション能力を有することがある。蒸留塔、蒸発器、分離器、ボイラーなどのような非標準的な処理要素は、ベッセルと関連付けられたシミュレーションが標準的な選択に含まれていない場合にユーザ定義されることがあるカスタム処理要素を使用して図式的に表現されることがある。これらの要素における処理は、ベッセルの各入力を各出力に関係付けるステップ応答モデルとして記述又は定義されることがある。入力は、気体ストリーム及び／又は液体ストリームでもよい。任意選択で、ユーザは、処理要素の入力と出力との間の関係を記述する式を定義することがあり、これらの式は、シミュレーションを実行するためこの要素を使用してプロセスモジュールに記憶されることがある。要望に応じて、一部の簡単な静的グラフ表現は、ユーザがカスタム処理要素と関連付けられた静的グラフィックスを素早く作成することを助けるために提供されることがある。これらの簡単なグラフィックスが使用される場合、ユーザは、所望の数の入力接続及び出力接続と、カスタム処理要素によってサポートされた接続の型（例えば、パイプ、ダクト、又は、コンベア）とを指定するだけでよいことがある。対応して、グラフィック項目が表示され、オペレータ・グラフィックの作成中に直ちに使用されることが可能である。要望に応じて、ユーザがシミュレーション・アルゴリズムをステップ応答として指定することを選択した場合に、プロセス要素の各入力及び出力と関連付けられた利得及び任意の運動学が指定されることがある。ユーザがカスタム・アルゴリズムを選択する場合、ユーザがシミュレーション・アルゴリズムを定義するため式エディタが提供されることがある。選択された方法に基づいて、カスタム処理要素出力の特性が別様に計算されることがある。さらに、ユーザは、ユーザが別個のソフトウェア・アセンブリにおいて定義したアルゴリズムのうちの１つ以上を参照することがある。
【００７５】
付加的に、いくつかの事前定義複合形状又はテンプレートがカスタム処理要素を作成するため提供されることがある。これらのテンプレートは、例えば、排出気体Ｏ２、排出気体ＣＯ、生成された蒸気、ボイラー・ドラム水位、及び、ボイラー通風を計算するカスタム・アルゴリズムを有するボイラー・テンプレートを含む。このようなテンプレートは、単一の燃料入力に基づくことがある。しかし、テンプレートを修正することにより、多数の燃料を用いるボイラーをシミュレーションすることが可能である。他の事前定義テンプレートは、噴霧乾燥器カスタム処理要素と共に使用されることがあり、かつ、分離器のオペレーションをモデル化するためにステップ応答モデルを含んでもよい専用のベッセル・サイクロン分離器テンプレートを含むことがある。同様に、カラムテンプレート、噴霧乾燥機、及び、蒸発器本体は、予想プロセス応答を定義するためステップ応答モデルを利用することがある。蒸発器では、エネルギー入力及び入力流れの濃度に基づいて、出口流れの濃度及び蒸気放出が計算できる。多数の蒸発器要素は、多効蒸発器を作成するために熱交換器要素及び排出装置要素と共に接続されることがある。同様に、専用のベッセル−スタック・カスタム・テンプレート処理要素は、ボイラー処理要素と共に使用されることがある。この場合、入口の特性は、要望に応じて修正されることなく、又は、スタックの中で実行される排出削減を反映するためスタックの中を運ばれる。
【００７６】
プロセス・グラフィック表示及びプロセスモジュールを作成するため使用できる別の型の要素は、測定要素及び特性要素を含む。測定要素は、物理的トランスミッタと関連付けられた測定値にアクセスするためグラフィック表示で使用されてもよいトランスミッタ要素と、スイッチ要素とを含む。一般に、トランスミッタ要素は、不良又は不確実な状態と、制御モジュールの中の関連付けられたＡＩ機能ブロックのモード、実際のトランスミッタ（センサ）と関連付けられた測定値及びユニットなど、又は、実際のトランスミッタと関連付けられた別のデータを動的に反映することができる。オフラインモード（又はシミュレーションモード）では、トランスミッタ要素は、ＡＩ若しくはＰＣＩブロックと関連付けられた値ではなく、プロセスモジュールによって供給されたシミュレーション値にアクセスし表示するため使用されることがあり、又は、シミュレーションされた制御ルーチンの中で使用されるべき測定量として測定値を制御モジュール内の関連付けられたＡＩブロックに供給するため使用されることがある。トランスミッタ要素は、接続要素、又は、処理要素に追加されることが可能であり、そして、このようなトランスミッタ要素が表示に追加されるとき、ユーザは、一般に、測定量を供給しているコントローラスキームの中で関連付けられたＡＩ、ＰＣＩ又はＤＩブロックを識別することが必要である。オンラインモードでは、測定の値は、この測定要素の次に表示されることがある。オフラインモード（又はシミュレーションモード）では、（対応するプロセスモジュールによって開発されるような）シミュレーションされた測定の値は、自動的に表示されてもよい。オンラインオペレーションでは、測定失敗の場合、ユーザは、制御及び表示をシミュレーションされた値に切り替えるように選択することが可能である。
【００７７】
スイッチ要素は、不良又は不確実な状態と、関連付けられたＤＩ（例えば、手動又はＯＳ）と、離散的なスイッチの値（オン、オフなど）とを動的に反映することがある。オフライン・シミュレーション・モードにあるとき、ユーザは、シミュレーション値又は手動値と状態とを選択することにより、そして、スイッチの値及び状態を手動で入力することにより、グラフィック表示及び制御モジュール内のスイッチパラメータにアクセスしこれを変更するため、スイッチ表示要素を使用することができる。しかし、ユーザは、一般に、制御スキーム内の関連付けられたＤＩブロックを参照し、スイッチをトリガする要素特性を参照し、スイッチの状態の変更と関連付けられた限界及び不感帯を提供することにより、スイッチ要素の環境設定を行うことがある。
【００７８】
推定特性要素は、一般に、プロセスモジュールによって決定されるようなシステムの推定特性を表し、かつ、この要素の任意の特性を表示するために接続又は処理要素に追加されることがある。この要素が接続要素又は施設の一部に設置されたとき、ユーザは、表示される特性を閲覧し選択することが可能である。よって、物理的な測定を通して利用できないシミュレーションされた特性は、推定特性要素の使用によって表されることがある。このような推定特性要素は、良／不良接続と、（複数の）推定特性値と、関連付けられた限界又は変更の範囲外である特性とを動的に反映することがある。ユーザは、一般に、表示されるべき（複数の）特性への参照と、この特性が限界の範囲外である場合に、この要素のための限界及び色変化との環境設定を行う必要がある。
【００７９】
理解されるように、トランスミッタ要素及び推定特性要素を処理要素、アクチュエータ要素、及び、接続要素に取り付けることにより、これらのプロセスプラント要素の入力及び出力と関連付けられた特性は、オンラインオペレーション中又はオフライン・シミュレーション中に参照されることがある。これらの特性は、プロセス・グラフィック表示の中でさらに可視化されることがある。
【００８０】
ＩＩ．  アプリケーション内の機能及びモジュールの効率的な表現
図３を参照すると、グラフィック表示環境設定アプリケーション３８（例えば、制御スタジオ・アプリケーション３８Ａ、エクスプローラ・アプリケーション３８Ｂ）のユーザインターフェイスは、プロセス環境設定、レシピ設計などに関連した機能性を体系化するいくつかのペインを備える主ウィンドウ２００を含んでもよい。より具体的には、主ウィンドウ２００は、主コンテンツ又はエディタペイン２１０と、ナビゲーション又はモジュール・エクスプローラ・ペイン２１２と、パラメータペイン２１４と、パレットペイン２１６と、パン・アンド・ズーム・ペイン２１８と、警報ペイン２２０と、アクションペイン２２２と、参照ペイン２２４と、ウォッチペインと、公式ペインと、マルチモード選択ペインなどを含んでもよい。さらに、ウィンドウ２００の生成の一部又は全部は、以下のより詳細な検討中、「リボン３００」と称されることもあるリボン・スタイル・メニュー３００のようなコマンドペインを含むことがある。
【００８１】
少なくとも一部の実施形態では、サポートされたウィンドウペインは、ユーザがエンジニアリング環境をカスタマイズし、より優れた効率を達成することを可能にするため、オン及びオフを切り替え、アンドックし、サイズ変更し、フロートし、又は、デスクトップ上のどこかへ移動してもよい。具体的には、主アプリケーションフレームの外側にペインをフロートすることにより、より大きいモジュールを視認又は修正するとき、ユーザが主コンテンツ又は編集ペイン２１０のためのより大きい「領地」を保有することを可能にする。
【００８２】
参照ペイン２２４は、環境設定アプリケーションの中の現在のモジュール又はレシピのためのすべての参照（例えば、読み出し、書き込み）を描写する。一般的に言うと、参照ペイン２２４は、論理的かつユーザに分かりやすい形で表示内に制御参照及びグローバル変数を一覧化し、ユーザ経験を改善するためにフィルタリング選択肢及びソーティング選択肢をサポートする。例えば、参照は、モジュール名、ユニット、プロセスセル、領域などに応じてソートされるか、又は、フィルタリングされる。ユーザコマンドに応答して、又は、事前に格納された設定に応じて、参照リストは、モジュール名だけを表示するか、又は、完全なモジュール経路を表示するために圧縮されることがある。制御参照リストは、無効参照（例えば、データベース内に存在しない参照）をさらに識別することがある。参照ペイン２２４は、主コンテンツペイン２１０、又は、現在編集されている別の表示に格納されたグローバル変数を一覧化するためさらに使用されることが可能である。
【００８３】
運転中に、ユーザは、オブジェクトと関連付けられた参照を見るため参照ペイン２２４を開く。実施形態では、参照ペイン２２４は、分析又は編集されているモジュール又はグラフィックオブジェクトが左列に一覧化され、編集されているモジュール又はグラフィック（例えば、データリンク）の外部にある参照が右列に一覧化される対話型テーブルを含む。さらに、参照が存在しないか、又は、他の理由のため解決できない場合、列「参照条件」は、「不良」のような参照条件を一覧化することができる。なお、さらに、別の列は、例えば、データベースの利用不可能性のような、参照が「不良」である理由についての考えられる理由に関して注釈又は忠告を一覧化する。
【００８４】
付加的又は代替的に、参照ペイン２２４は、例えば、Ｉ／Ｏのエラー状態、機器のエラー状態、又は、ランタイム中の参照の警戒状態を示すために「参照状態」列をさらに含むことが可能である。少なくとも一部に実施形態では、「参照条件」列及び「参照状態」列は、ランタイムデータベースが比較に使用するため利用可能な場合に限り、参照ペイン２２４にしめされる。このようにして、参照ペイン２２４の生成は、システム性能に悪影響を与えない。
【００８５】
要望に応じて、参照ペイン２２４は、アニメーションをプレビューするためさらに使用することができる。例えば、参照ペイン２２４の中の参照オブジェクトは選択されることができ、「シミュレーション」値は、データベースを使用することなく環境設定されたアニメーションをテストすることを可能にするため入力できる。このように、ユーザは、オブジェクト・アニメーションをテストするために専用アプリケーション又はペインを開始する必要がない。
【００８６】
さらに、参照ペイン２２４の中のエントリのソーティングは、「昇順」及び「降順」矢印制御操作部を介してアクセスすることができ、列ソートを可能にする。なお、さらに、ユーザが参照ペイン２２４の中の表現を選択すると、ユーザインターフェイスは、好ましくは、ナビゲーションペイン２１２内部の対応するオブジェクトを強調表示する。一実施形態では、参照ペイン２２４の中に一覧化された参照は、例えば、Ｅｘｃｅｌのような別のアプリケーションにエクスポート可能である。
【００８７】
一般に参照に関して、制御スタジオ・アプリケーション３８Ａ及び／又はエクスプローラ・アプリケーション３８Ｂは、例えば、機能ブロック及び式からの「読み出し」及び「書き込み」と、プラント領域、プロセスセル、バッチ実行モジュールの中のノード割り当てに関係するユニットモジュール、及び、ヒストリアンモジュールと、特定のライブラリの中のすべての機器及び機器テンプレートとのリストを表示するため、機器信号（Ｉ／Ｏ）タグのための参照リストをサポートすることができる。さらに、別名によって参照される制御モジュールは、参照として別名を含むことができるので、ユーザは、主コンテンツペイン２１０内のモジュール上で右クリックをすることにより、制御モジュールの上で「ホバリング」することより、又は、任意の他の所望の方式で別名を識別することが可能である。
【００８８】
引き続き図３を参照すると、パラメータペイン２１４は、ユーザがパラメータを修正するために別のダイアログを開始すること、又は、別のメニュー項目にアクセスすることを必要としないように、その場編集をサポートすることができる。さらに、パラメータペイン２１４は、グラフィック・オブジェクト・パラメータの編集をサポートし、オブジェクト・アニメーションにアクセスを提供することができる。なお、さらに、パラメータペイン２１４は、ユーザが選択されたオブジェクトの静的及び動的の両方の（アニメーション）特性を修正することを可能にし得る。
【００８９】
より詳細に後述されるように、ユーザは、１つ以上のデフォルトレイアウトを保存することが可能である。各レイアウトは、例えば、ペインの組、この組の中の各ペインのサイズ、フィルタ設定、及び、各ペインの場所を含むことがある。さらに、ユーザは、適切な制御操作部（例えば、ボタン、ダイアログなど）を作動させることにより、カスタム名を割り当てることができる。
【００９０】
別の態様では、ユーザインターフェイス３８は、ユーザがよく起こるタスクのための容易にアクセス可能なショートカットを作成することにより自分の環境をカスタマイズすることを可能にするためクイック・アクセス・ツールバー２４０をサポートする。実施形態では、このクイック・アクセス・ツールバー２４０は、ユーザが要望に応じて拡大又は縮小することがある保存、元に戻す、やり直しなどのような一般に使用されるコマンドのデフォルトの組を含むことがある。一部の実施形態では、ユーザインターフェイス３８は、クイック・アクセス・ツールバー２４０をリボン３００の上又は下に表示する選択肢を含む。
【００９１】
さらに、ユーザインターフェイス３８は、ライセンス契約されていない機能性又は未払いの機能性に関連したすべての視覚的標識を取り除くことがある。例えば、ソフトウェアモジュールがオペレータ・インターフェイス・アプリケーション３２のスイートにおいてプロセスバッチの環境設定を行い、プロセスバッチを実行するライセンスを見いだせないか、又は、認証できない場合、ユーザインターフェイス３８は、不適切な選択肢でユーザを混乱させ、画面２００を乱雑にすることを避けるため、ユーザからすべてのバッチ機能性及び選択肢を隠すことがある。
【００９２】
ユーザインターフェイス３８は、主コンテンツウィンドウ２００のペインがタイル／ウィンドウ状、タブ状、又は、別のビューで表示されるべきかどうかを決定するため「表示」選択肢をさらに提供する。ユーザインターフェイス３８は、このビューに表示されるべきウィンドウ又はペインの数を、例えば、４個に制限してもよい。ユーザは、これらのウィンドウの１つずつにおいて、付加的なオブジェクトを置き換える能力をさらに有する。
【００９３】
一実施形態では、制御スタジオ・アプリケーション３８Ａ及びエクスプローラ・アプリケーション３８Ｂのそれぞれのナビゲーションペイン２１２は、類似したモジュール・エクスプローラ・ウィンドウを表示することがある。図４は、垂直ナビゲーション用及び水平ナビゲーション用の２つのウィンドウを使用する「クラシック」階層ナビゲーションペインの２つの実例３１０及び３１２を図示し、図５は、各々が本開示内容の教示と整合性が取れているフェーズ論理モジュールとレシピペイン３２０及び３２２とをそれぞれに図示する。図５の実例では、矢印は、ナビゲーションと拡張選択とのため使用される。項目上のクリックは、主コンテンツ若しくは編集ペイン２１０に既に格納されているオブジェクトに焦点を合わせるか、又は、階層の中に格納されている複合形状若しくは他の環境設定項目に「ドリルダウン」する。この特徴は、環境設定を変更するため、環境設定エンジニアにより容易にモジュールをナビゲートさせ、所望の焦点を設定させ、そして、オブジェクトにアクセスさせることにより、使用の速度を改善する。さらに、この特徴は、レシピレベルからのフェーズへのドリルダウンの重要な強化をさらに実現し易くする。
【００９４】
図５に図示されるように、ナビゲーションペイン２１２は、物理的項目と論理的項目とが主コンテンツ／編集ペイン２１０又は別のペインに表示された情報にどの程度関連しているかに応じて、階層構造体（例えば、ツリー）の中に表示された物理的項目と論理的項目とを分離するために数個のタブをサポートし得る。例えば、図５におけるナビゲーションペイン２１２は、主コンテンツペイン２１０内で編集されているオブジェクトを一覧化する（左に描写された）「オープンモジュール」タブを含む。より詳細に後述されるように、アプリケーション３８Ａ及び３８Ｂのユーザインターフェイスは、編集ペイン２１０のような同じ型の多数のペインをさらにサポートしてもよい。これらの実施形態では、「オープンモジュール」タブは、あらゆる編集ペインの中で編集されているすべてのオブジェクトを一覧化することがある。
【００９５】
対照的に、（右に描写された）ナビゲーションペイン２１２の「すべてのモジュール」タブは、現在のモジュール又はレシピの中で利用することができるすべての既存の環境設定された項目を表示し得る。よって、実質上、「オープンモジュール」タブは、利用可能な項目の一部を選択するフィルタとしての役目を果たす。典型的なプロセス制御システムにおける項目の個数は、非常に大きくなる可能性があるので、２タブのアプローチは、ユーザが、例えば、関連性のある項目と構造体の残りとの関係を見るために、ナビゲーションペイン２１２の中でこれらの関連性のある項目を効率的に識別することを可能にする。
【００９６】
さらに、ナビゲーションペイン２１２は、コンテキストベースのフィルタリングのような他の型のフィルタリングを提供できる。環境設定エンジニアがレシピを開発するとき、例えば、ナビゲーションペイン２１２は、別個のタブの中のこの特有のレシピに関係しているオブジェクトを一覧化することができる。より具体的な実例として、環境設定エンジニアがレシピのオペレーションを定義している場合、一方のタブの中の項目のリストは、ステップとしてレシピに追加することができるフェーズ・クラスを含むことができるが、レシピに追加することができないフェーズ・クラスを含むことはできない。一方で、「すべてのモジュール」タブは、対応するデータベースの中で利用可能であるすべてのフェーズ・クラスを一覧化することができる。
【００９７】
ナビゲーションペイン２１２を２つ以上のタブとして提示することは、ユーザが実行しなければならないクリック又は他のアクションの回数を削減することが理解されるであろう。換言すると、ユーザは、ドラッグ・アンド・ドロップ・ステップ、既存の環境設定項目を割り当て／閲覧することなどを省略することができる。図６は、レシピプロシージャのコンテキストにおける、モジュール・エクスプローラ・ウィンドウ３３２の中のに環境設定タブ３３０を図示する。環境設定タブ３３０は、ユーザが既存のユニットプロシージャを対応する図に追加することを可能にさせる。
【００９８】
既存の環境設定セクションは、複合形状又はモジュールブロックをオープンモジュールに追加するために必要とされるクリックの回数を削減するため、複合形状及びモジュールを収容することがある。インサート・カスタム・ブロック「クラシック」選択肢を通してナビゲートする必要があるのではなく、ユーザは、項目をモジュールの中にそのままドラッグ・アンド・ドロップすることができる。図７は、モジュールが、例えば、制御スタジオと称されることがある全体的な制御アプリケーションにおいてオープンであるとき、別のモジュール・エクスプローラ・ウィンドウ３３４の中の環境設定タブ３３０の実例を図示する。
【００９９】
図８及び９は、本開示内容と整合性が取れたパラメータペイン３５０の１つの可能な実施形態を図示する。ユーザインターフェイス３８が直接的なタイピングによる値と関連付けられることを許可しないパラメータのための関連した選択、クリック、及び、関連したダイアログの回数を削減するため、ペイン３５０は、例えば、別個のダイアログを開始するのではなく、同じウィンドウ内で環境設定変更を行うことをサポートするように拡大する。よって、ユーザは、編集モードにおいて、ＰＩＤブロックのための制御選択肢行３５２をクリックしてもよい。典型的な既知システムは、この状況又は類似した状況において、別個のダイアログウィンドウを開始することになるが、本開示内容のパラメータペイン３５０のセクション３５６は、ユーザの選択を示すクリック又は別の事象に応答して拡大してもよい。拡大されたセクション３５６は、従って、図９に図示されるように、ユーザが１つ以上の選択肢を選択することを可能にする。
【０１００】
付加的に、ユーザインターフェイス３８は、パラメータフィルタリング能力を、既知のアプリケーションのうちの一部によって使用されるチェックボックスの代わりに、リボン３００の中に統合することができる。
【０１０１】
図１０は、図８及び９に図示されたパラメータペイン３５０のその場編集特徴を図示する。本実施例では、ペイン３５０は、パラメータ委ねることを容易にするためドラッグ・アンド・ドロップ・パラメータをサポートし得る。図１０は、レシピパラメータを備えるパラメータペイン３５０の１つの可能な実施形態を図示する。
【０１０２】
ＩＩＩ．  ペインの移動及び調節
一部の実施形態では、ペインは、最初に、デスクトップ上のデフォルト場所にドックされる。ユーザは、所望のペインのタイトルバーをクリックして、特に、ペインを異なる場所へ移動（「フロート」）することを可能にするフローティング制御を行うメニューを有効化することが可能である。ドックされたペインのタイトルバーは、ペイン名、自動隠蔽を有効化する制御操作部、及び、ペインを閉じる制御操作部を含んでいてもよい。フローティング制御操作部を介してフローティングペインに変換されると、ペインは、他のペインのエッジに「自動ドック」すること、編集ワークステーションの外側にドラッグされることなどが可能である。少なくとも一部の実施形態では、ドックされたもの及びフロートするものの両方はサイズ変更可能である。ドックされたペインがサイズ変更されるとき、スタジオ・アプリケーション３８Ａ又はエクスプローラ・アプリケーション３８Ｂのユーザインターフェイスは、あらゆるペインのコンテンツが依然として可視的であるように、１つ以上の隣接するドック型ペインを自動的にサイズ変更し得る。必要に応じて、ユーザインターフェイスは、ペインで使用されるテキストフォントのサイズをさらに調節（例えば、９から８にサイズを縮小すること）し得る。
【０１０３】
一実施形態では、環境設定アプリケーション３８のユーザインターフェイスは、ペインが主アプリケーションウィンドウの外側に位置することをさらに可能にすることができる。この特徴は、制御戦略若しくはグラフィックスを設計するため、又は、他のエンジニアリングタスクを実行するために、より整えられた空間を提供する。さらに、環境設定アプリケーション３８のユーザインターフェイスは、ドックされたペインを隠すために自動隠蔽特徴をサポートし、ペイン・タイトル・バーの名前だけを表示することが可能である。ユーザは、例えば、ドックされたペインのタイトルバーに配置された専用ボタンをクリックすることにより、この特徴を有効化することが可能である。隠されたペインが再起動されるとき、タイトルバーは、水平方向位置合わせを再開することが可能である。要望に応じて、隠されたペインは、他のドック型ペインと同様に位置決めされてもよい。
【０１０４】
ＩＶ．  レイアウトのカスタマイズ及び保存
ユーザは、特定のユーザに都合が良く、かつ、直観的である作業環境を定義するために、ナビゲーションペイン２１２に適用されるべきフィルタを選択又は定義し、コマンドペイン３００に表示されるべき制御操作部を選択し、要望に応じて、ペインを位置決め、サイズ変更し、積み重ね、グループ化し、そうでなければ調節し、フォントサイズ、色、背景、及び、他のテキスト又はグラフィック属性を選択し、かつ、さらなる調節を実行するため、本明細書中で検討された特徴の一部を有効化することが可能である。ユーザインターフェイスは、ユーザが、カスタム列レイアウトを定義するため、主コンテンツ領域内で列の位置決め、サイジング、フィルタリング、グループ分け、及び、積み重ねのうちの少なくとも一部をカスタマイズすることをさらに可能にさせ得る。前述されているように、ユーザは、クイック・アクセス・ツールバー２４０もカスタマイズすることが可能である。ユーザは、その後、定義された環境設定を保存し、要望に応じて、保存された環境設定を復元してもよい。一部の実施形態では、ユーザインターフェイスは、ユーザが好ましいレイアウトを後で復元できるようにするため、ログアウト時又は他の事象時に環境設定を自動的に保存してもよい。
【０１０５】
よって、あるユーザは、主として、プロセスプラントの領域「Ａ」において作業することがあるが、例えば、領域「Ｂ」及び「Ｃ」に関連したデータで自分の作業空間を乱雑にすることを望まないかもしれない。ユーザは、従って、領域「Ａ」と連動するため特に合わされたレイアウト、フィルタ、及び、他の好みをしかるべく保存してもよい。別の実例として、ユーザは、主に制御戦略に関心があり、個別の物理的機器には関心がないことがあり、機能ブロック図、ラダー図などのような論理的エンティティを見て編集するため調節されたフィルタ及びレイアウトをしかるべく保存してもよい。さらに、一部のユーザは、いくつかの役割を担うことがあるので、異なるオペレーションモードのためのいくつかのカスタムレイアウトを定義することがある。
【０１０６】
Ｖ．  環境設定アプリケーションにおけるパレットペイン
図１１は、パレットペイン４００の１つの可能な実施形態を図示する。この実例では、パレットペイン４００は、論理図又はプロシージャを設計する際に使用される様々な要素のためのアイコン４０２を含む。各アイコン４０２は、対応する機能に関する直観的な視覚的キュー（例えば、ブーリアンの「ｏｒ」に対する一般的なゲートシンボル）を含むことがあり、一部の実施形態では、テキスト識別子を含むことがある。ユーザは、任意のポインティング機器（例えば、マウス）を使用して所望のアイコン４０２を選択し、選択された項目をコンテンツ又は編集ペイン２１０のキャンバス領域にドラッグすることができる。デフォルトで、ユーザインターフェイス３８は、特徴を環境設定エンジニアに表すため、パレット４００の中にカスタム又はユーザ特定カテゴリを作成することができる。このようにして、環境設定エンジニアは、１つ以上のメニューを通って特徴にアクセスする必要がない。さらに、ユーザは、一般に使用される環境設定オブジェクトについての自分固有のリポジトリを作成するため、（例えば、ドラッグ・アンド・ドロップをすることにより）付加的な項目をカスタムパレットに追加することが可能である。ユーザは、要望に応じて、付加的にカテゴリの名前を付け直すことができる。
【０１０７】
ＶＩ．  環境設定アプリケーションにおけるズーム特徴
再び図３を参照すると、パン・アンド・ズーム・ペイン２１８は、大規模及び／又は複雑なモジュール及びレシピと連動しているとき、ユーザが対応する図をより巧くナビゲートすることを可能にすることによって、ユーザインターフェイス３８の全体的な使いやすさを改善する。図１２に図示されるように、ペイン４１０は、サイズが拡大又は縮小されることがあるオブジェクト又はオブジェクト４１２の集合を含むことがある。オブジェクト４１２は、例えば、プロセスプラント内の相互接続されたフィールド機器と、Ｆｉｅｌｄｂｕｓプロトコルを使用する制御スキームの機能ブロックと、レシピプロシージャ又はオペレーションのフェーズなどを表現してもよい。これらの実施形態の一部では、ズーム機能は、ユーザが主ペイン内に提示された所望のグラフィックスのサイズを容易に選択できるように、スライドバーであってもよい。さらに、ユーザインターフェイス３８は、ユーザがズーム制御を操作するとき、主ペイン２１０に表示されたグラフィックスをリアルタイムで拡大又は縮小してもよい。よって、ユーザは、殆どのソフトウェア・アプリケーションにおいて一般的であるように、選択されたサイズが満足できるかどうかを調べるために、ターゲット拡大率を入力する必要がない。
【０１０８】
ＶＩＩ．  式エディタ
図１３〜図１５は、ユーザと制御スタジオ・アプリケーション３８Ｂとの間の相互作用のため最適化された式エディタウィンドウ５０２を有する式エディタ５００を図示するが、式エディタ５００の他のアプリケーションもまた可能である。式エディタ５００は、編集、デバッグなどのような多数の運転モードをサポートすることができ、そして、式エディタウィンドウ５０２は、現在選択されているモードに応じて式エディタツールバー５１０を適合させることができる。一実施形態では、式エディタウィンドウ５０２は、いくつかの実例を挙げると、エンタープライズ・ビュー・アプリケーション及びエクスプローラ・アプリケーションをサポートするマスタ・アプリケーションから開始された単一のアプリケーションウィンドウである。構造化テキストエディタの外観及び挙動は、好ましくは、式を修正することができるすべての場所に関して同一である。図１３におけるウィンドウ５０２は、編集モードにある式エディタ５００の１つの可能な一般的なレイアウトを図示する。
【０１０９】
式エディタツールバー５１０は、直観的な形で、ユーザが任意の適用可能な構造化テキスト（例えば、関数、定数、オペランドなど）を挿入することを可能にすることがある。関数及びオペランドは、数学的オペランド、ブーリアン式、及び、他の構築物を含むことがある。一実施形態では、ツールバー５１０は、所与のコンテキストにおいて不可能であるか、又は、利用できない選択を可能にしない。よって、図１３の式エディタツールバー５１０は、例えば、ユーザが所与のモードでかつ現在の操作の状態で正当に呼び出すことができるこれらの選択肢及び制御操作部だけを表示する。
【０１１０】
前述されているように、関数及びコマンドは、論理形式でグループ分けされてもよい。図１３〜図１５に図示された実例は、ツールバー５１０のいくつかの可能な配置を図示する。さらに、クイック・アクセス・ツールバー５２０は、以下の一般的なコマンドすなわち、開く、保存、元に戻す、やり直し、印刷、フォント、注釈などへのショートカットを常に提供することができる。好ましくは、ユーザは、効率性及び使い勝手の良さを改善するため、式エディタ５００内でアクセス可能である任意のコマンドをクイック・アクセス・ツールバー５２０に追加する能力を有している。
【０１１１】
付加的に、式エディタ５００は、インテリジェント（例えば、ＩｎｔｅｌｌｉＳｅｎｓｅ）タイピング認識をサポートし得る。例えば、パラメータ名の後にピリオドが続けられるとき、式エディタ５００は、コード化効率を増加させるため、可能な選択のドロップ−ダウン・ボックスを提示してもよい。付加的に、式エディタ５００は、好ましくは、発見及び検索／置換機能性をサポートする。
【０１１２】
一実施形態では、式エディタ５００は、共通コードの挿入及び再使用を容易に実現し易くするためにコードスニペットをサポートする。この特徴を使用して、ユーザは、編集ウィンドウ５２４の中のコードのセクションを選択し、カスタム名付きのスニペットとして選択を保存することが可能である。ツールバー５１０は、ユーザが保存されたスニペットの組から選択することを可能にするために挿入スニペットコマンドのためのコマンドを含んでもよい。一部の実施形態では、スニペットの組は、クイック視覚的選択のための「ギャラリ−」としてツールバー５１０の動的部分に現れることがある。
【０１１３】
一部の実施形態では、ユーザが関数をタイプするか、又は、ツールバー５１０から関数を選択するとき、正しい構文が環境設定可能な項目のためのプレースホルダと共に編集ウィンドウ５２４が自動的に出現する。構文を「自動ペースト」する選択肢は、ユーザ選択可能な選択肢でもよく、好ましくは、デフォルトで有効である。付加的に、式エディタ５００は、すべてのコマンド及び関数のためのコンテキスト・センシティブ・ヘルプを提供してもよい。
【０１１４】
式エディタ５００がデバッグモードにあるとき、式検証ウィンドウはウォッチウィンドウに変化することがある。デフォルトで、ウォッチウィンドウ内の機能ブロック入力、出力、参照パラメータ、及び、ローカル変数のすべての値は、好ましくは、１つ以上の選択された値を除去するための選択肢と共に、現在値を獲得することができる。
【０１１５】
さらに、式エディタ５００がデバッグモードにあるとき、ツールバー５１０は、デバッギングオペレーションをサポートするために自動的に変化することがある。例えば、以下のデバッグコマンド／オペレーション、即ち、シングルステップ、ブレークポイントのトグル（多数のブレークポイントのためのサポート付き）、ブレークポイントまでの実行、１回だけ実行、先頭から実行、リセット／中止、ポーズ実行などのための制御操作部がツールバー５１０に現れることがある。
【０１１６】
ユーザがパラメータの上にマウスを置くとき、現在値は、パラメータの上にホバー形式で表示されることがある。ホバー・ポップアップが現れると、ユーザは、要望に応じて、この値を強制することができる。ホバー・ウィンドウの外観は、この値が強制されたことを視覚的に示すこともある。さらに、ホバー・ポップアップは、利用可能な特性、パラメータ、又は、制御操作部のうちの一部分を表示することができる。この一部分は、ユーザが特有の特性、パラメータ、又は、制御操作部を選択する可能性に基づいて選択されることがある。
【０１１７】
付加的に、式エディタ５００は、実行されている行を強調表示することにより現在プログラム位置及びコードの中の実行経路を示してもよい。この特徴は、複雑な条件付き論理を収容する式のために役立つことが理解されるであろう。別の態様では、オンラインモードから編集モードへの変更は、ブレークポイントを除去又は保持する選択肢を提供すべきである。
【０１１８】
ＶＩＩＩ．  コマンドペインにおけるコンテキスト固有コマンド表現の実例
図１６〜図２４は、様々な動作状態においてリボン３００で実施されるコマンドペインの付加的な実例を図示する。具体的には、図１６に図示された動作状態６０２は、１つの実例を挙げると、クリップボード機能が利用できないコンテキストにおける「ホーム」タブの選択に対応する。その一方で、ユーザインターフェイス３８は、コンテキストがダイアグラムモードと関連付けられた様々なオペレーションを必要とした可能性がある、と決定した場合がある。
【０１１９】
さらに、図１７は、「ダイアグラム」タブの選択に対応する動作状態６０２を図示し、図１８は、「ビュー」タブの選択に対応する動作状態６０４を図示し、図１９は、「セッティング」タブの選択に対応する動作状態６０６を図示する。その一方で、図２０〜図２４は、ユーザインターフェイス３８が、「項目」タブ、「ＳＦＣのためのオンライン」タブなどのような付加的なコンテキスト固有タブを提供する例示的な動作状態６０８〜６１６を図示する。
【０１２０】
最後に、図２５及び図２６は、付加的なユーザ選択肢の選択に対応するビュー７００及び７０４を図示する。具体的には、図２５は、モジュール準備に関連した付加的な選択肢のメニューを図示する。選択肢７０２は、例えば、空間制約又は相対的な使用頻度によって、リボン３００又はクイック・アクセス・バー２４０上に存在しないことがある。図２６を参照すると、ビュー７０４は、ユーザが選択したクイック・アクセス・ツールバー２４０のカスタマイズ選択肢に対応する。なお、少なくともビュー７００及び７０４において、ユーザインターフェイス３８は、例えば、コンテキスト特定及び視覚的リボン選択肢と、選択肢リストの形をした「従来式の」選択肢メニューとの両方に依拠してもよいことに留意されたい。
【０１２１】
一般的に言うと、リボン３００のようなコマンドペインは、前述されているように、共通アプリケーション領域又は他の原理に従って論理的にグループ分けされることがある任意の数の選択可能な制御操作部を含んでもよい。その一方で、ナビゲーションペイン２１２は、コントローラ、Ｉ／Ｏカード、スマート機器、レガシー機器のような多数の物理的オブジェクトと、制御戦略、領域、レシピなどのような論理的オブジェクトとを表示してもよい。オペレーション中に、制御スタジオ・アプリケーション３８Ａ又はエクスプローラ・アプリケーション３８Ｂのユーザインターフェイスは、リボン３００の中の制御操作部の選択に基づいてナビゲーションペイン２１２の中に表示された選択、及び／又は、ナビゲーションペイン２１２の中の選択に基づいてリボン３００の中に表示された制御操作部を動的に調節する。よって、ユーザがナビゲーションペイン２１２の中で特定の機器（例えば、バルブ）を選択した場合、ユーザインターフェイスは、適用不可能な制御操作部を自動的に除去し、及び／又は、新たに適用可能な制御操作部を追加する。同様に、ユーザは、ある物理的オブジェクト及び論理的オブジェクトに適用できないリボン３００（例えば、トレンド分析）を介して、あるオペレーションモードを可能にしてもよく、かつ、ナビゲーションペイン２１２は、従って、１つ以上のタブの下に一覧化されるオブジェクトの組を削減することができる。当然ながら、リボン３００は、リボン３００の中の選択に基づいてさらに自動的に調節されることがある。一部の実施形態では、ユーザインターフェイスは、いくつかの事象を考慮して、リボン３００又はナビゲーションペイン２１２を調節することができる（例えば、リボン３００がどのように調節されるべきかを決定する前に、ナビゲーションペイン２１２による特定の領域の選択とその後に続くレシピの選択とを検出する）。
【０１２２】
ＩＸ．  階層
別の態様では、ユーザインターフェイスは、エンジニアがシステム環境設定の様々な態様を可視化するのを助けるために高性能機能性の形式として階層をサポートすることができる。例えば、階層は、モジュールクラス構造体とインスタンスオーバーライドとを区別するため使用されることがある。一部の実施形態では、すべてのオブジェクトは、デフォルトで、第１の表示層に追加される。換言すると、任意の表示ガジェット又は表示ガジェット内のオブジェクトは、デフォルト層を用いて定義されてもよい。デフォルト層が表示の中に存在しない場合、この層は、自動的に作成され、表示内で可視的である。少なくとも制御スタジオ・アプリケーション３８Ｂでは、階層はユーザによる定義でもよい。実施形態では、階層は、リボン３００上のビュータブを介して選択されてもよい。表示は、すべての層が可視的であるとき、単一層として出現し作用してもよい。
【０１２３】
一実施形態では、制御スタジオ・アプリケーション３８Ｂのユーザインターフェイスは、物理的Ｉ／Ｏ経路に加えて機器タグ名を表示するために機器タグ層をサポートし、主コンテンツ領域２１０内に「トランスペアレント」方式で種々のオブジェクトを表示するためにクラス層をサポートし、主コンテンツ領域２１０内に「トランスペアレント」方式でクラスオブジェクトを表示するためにバリアント層をサポートし、選択された制御モジュール又はレシピと関連付けられたハイパーリンクのような知識項目を表示するために知識層をサポートし、選択された制御モジュール又はレシピと関連付けられた埋め込み文書又はコメントボックスを表示するために文書層をサポートし、かつ、主コンテンツ領域２１０の中に表示された制御モジュール又はレシピ図と関連付けられたすべてのグラフィックスを表示するためにグラフィックス層をサポートする。層ビューイングペイン７５４内のアイコン７５２をクリックした時に有効化された、層を環境設定するための例示的なダイアログ７５０は、図２７に図示される。
【０１２４】
Ｘ．  例示的なアーキテクチャ
図２８は、制御スタジオ・アプリケーション３８Ａ及びエクスプローラ・アプリケーション３８Ｂの一方又は両方で使用されてもよいユーザインターフェイス・コントローラ８００の実例を図示する。ユーザインターフェイス・コントローラ８００は、それぞれナビゲーションペイン２１２と、コマンドペイン３００と、主コンテンツペイン２１０とを生成し動的に調節するために、ナビゲーションペイン・コントローラ８０２と、コマンドペイン・コントローラ８０４と、主／コンテンツ編集ペイン・コントローラ８０６とを含むことができる。さらに、検索ペイン・コントローラ８０８、プレビューペイン・コントローラ８１０、パラメータペイン・コントローラ８１２、ステップ／アクション・ペイン・コントローラ８１４、パレットペイン・コントローラ８１６、及び、色ペイン・コントローラ８１８の各々は、制御スタジオ・アプリケーション３８Ａ及びエクスプローラ・アプリケーション３８Ｂの一方又は両方の中にそれぞれのペインを表示するために環境設定される。
【０１２５】
オペレーション中に、少なくともコントローラ８０２〜８０６は、特定のモジュールに適用可能であるオペレーションの範囲と、特定のオペレーションに適用可能である項目の範囲と、画面に表示される制御操作部又は項目の個数を削減することができる他の限界とを決定するコンテキスト・コントローラ８３０と相互に作用する。換言すると、コンテキスト・コントローラ８３０は、ユーザがどのタスクを現在実行中であるか、及び、タスクが何に制限されている可能性があるかを決定する。コンテキスト・コントローラ８３０は、単一セッションの中で典型的に実行されるオペレーションと、ユーザが典型的に一緒に考慮する項目などを決定するために統計データベース８３２とも相互に作用し得る。一部の実施形態では、コンテキスト・コントローラ８３０は、画面位置決め、サイジングを調節するために、及び、展開中のユーザアクションのコンテキストに基づいてランタイム中に画面を選択的に有効化又は無効化するために、より詳細に後述されるモーフィング技術をさらにサポートする。
【０１２６】
さらに、コンテキスト・コントローラ８３０は、ペイン編成、サイジングなどに関連したフィルタ及びカスタム設定を適用するために、フィルタリングモジュール８３４及びカスタム・レイアウト・コントローラ８３６と相互に作用し得る。図２８に図示されるように、フィルタリングモジュール８３４は、事前定義フィルタ・データベース８４０及びカスタム・フィルタ・データベース８４２の両方を参考にしてもよい。
【０１２７】
さらに、ユーザインターフェイス・コントローラ８００は、前述のその場編集をサポートするためにその場編集コントローラ８４４を含むことがある。その上、オペレーション／要素関連性データベース８４６は、オペレーションとこれらのオペレーションを実行することができる要素とに関連したコンテキスト・コントローラ８３０に情報を提供し得る。例えば、オペレーション／要素関連性データベース８４６は、パラメータ視認、パラメータを委ねること、パラメータ割り当てなどを含むレシピ上で実行することができるオペレーションのリストを指定し得る。その上、オペレーション／要素関連性データベース８４６又は統計データベース８３２は、ある特定の機能が呼び出される相対確率を指定し得る。一般的に言うと、これらのデータベースのうちの一方又は両方は、ユーザインターフェイス・コントローラ８００が、ユーザが特定の機能を呼び出す可能性を決定するのに役立つことができるので、より「人気の高い」選択肢がコマンドペイン３００に表示され、より人気の低い選択肢は、隠されるメニューに格下げされ、または、より一般的には、到達することがより困難であるメニューに格下げされることがある。
【０１２８】
次に、図２９は、設計制御論理及びデバッギング制御論理に固有である機能性の一部をサポートするために、制御スタジオ・アプリケーション３８Ａが付加的に含むことがあるコントローラ９００を図示する。具体的には、コントローラ９００は、前述の式編集を実施するために式エディタ９０２を含み、前述の接続技術を実施するために論理ブロック・マルチペイン・コネクタ９０４を含み、本明細書中で検討された技術の参照をサポートするために要素参照ジェネレータ９０６を含み、後述されるように、レシピ制御において委ねる技術及び割り当て技術を実施するためにパラメータを委ねる値のジェネレータを含んでもよい。論理ブロック・マルチペイン・コネクタ９０４は、いくつかの編集ペインの中で並列ユーザオペレーションをサポートするために、マルチビューモード・コネクタ９１０と相互に作用することがある。
【０１２９】
ＸＩ．  マルチモード・ビューにおける論理ブロック間の接続
図３０Ａを参照すると、編集領域９５０は、オペレータによる同時使用のため互いに隣接して配置された編集ペイン９５２及び９５４を含み得る。各編集ペイン９５２及び９５４は、前述の主編集ペイン２１０に類似した機能性の範囲を有することがある。ユーザは、例えば、個々の編集ペインの中の乱雑さを低減するために、ペイン９５２及び９５４のようないくつかの編集ペインと連動するように選択することがある。ペイン９５２及び９５４の各々は、独立にドッキング、フローティング、サイジングなどが行われることがある。図３０Ａ〜図３０Ｃの実例では、編集ペイン９５２及び９５４の各々は、それぞれのグラフィック９５６（バルブ）とグラフィック９５８（ポンプ）とを表示する。
【０１３０】
グラフィック９５６をグラフィック９５８に接続するため、ユーザは、適切な接続制御操作部（図示せず）を有効化し、ペイン９５２及び９５４のうちの一方で端点を選択し、ペインの境界の外側にある接続をペイン９５２及び９５４のもう一方の中のターゲットグラフィックにドラッグしてもよい（図３０Ｂを参照のこと）。例えば、ユーザは、バルブグラフィック９５６への入力を選択し、コネクタをポンプグラフィック９５８の出力へドラッグすることができる。ユーザインターフェイスは、有利にも、ユーザが異なった編集ペインの中に描写されたグラフィックスを接続できるようにする。新しい接続を明瞭に描写するため、ユーザインターフェイスは、グラフィックス９５６と９５８との間にコネクタ９６０をさらに描画することができる。なお、コネクタ９６０の１つの部分はペイン９５２の中にあり、別の部分はペイン９５４の中にあり、さらに別の部分は共通領域９５０の中にあることに留意されたい。一部の実施形態では、コネクタ９６０は、異なった色、スタイル（例えば、破線）、太さなどを使用して図示されることがある。ユーザは、引き続いて、ペイン９５２及び９５４のうちの一方を動かすことがあり、ユーザインターフェイスは、接続の図示を保持するためコネクタ９６０を自動的に調節する。
【０１３１】
さらに、ユーザインターフェイスは、バルブグラフィック９５６とポンプグラフィック９５８との間の接続を記述するデータ構造体を自動的に生成してもよい。付加的又は代替的に、ユーザインターフェイスは、図３０Ｃに図示されたタグ９６２及び９６４を生成してもよい。タグ９６２及び９６４の各々は、コネクタが結合されているペインを識別し得る。当然ながら、ユーザインターフェイスは、例えば、Ｆｉｅｌｄｂｕｓ機能ブロックのような論理的ブロックの間にコネクタを同様に生成することができる。さらに、共通領域９５０の中の編集ペインの個数は、３個、４個、又は、任意の他の所望の数でもよい。
【０１３２】
ＸＩＩ．  レシピ環境設定におけるパラメータを委ねること及び割り当て
図３１Ａ〜図３１ＤＤは、アプリケーション３８Ａ及び３８Ｂの一方又は両方がバッチ制御で使用されるレシピの環境設定を簡略化するためにサポートすることができるパラメータを委ねること及び割り当てを図示する。知られているように、バッチ実行環境で用いられるレシピは、典型的に、プロシージャレベルと、ユニットプロシージャレベルと、オペレーションレベルと、フェーズ（又はフェーズ・クラス）レベルの４レベルのルーチンに分割される。従って、主コンテンツペイン２１０のような編集ペインは、あるレシピのプロシージャ、ユニットプロシージャ、オペレーション、及び、フェーズ・クラスを表形式で表示することができる。図３１Ａ〜図３１Ｃに図示された例示的なシナリオでは、ユーザは、パラメータのリストを見るために、フェーズ・クラスＰＣ１を選択し、クラスＰＣ１をクリックしてもよい（図３１Ａ）。次に、ユーザは、パラメータＰＡＲＡＭ１を選択し、マウス又はキーボードを使用してこのパラメータをオペレーションＯＰ１へドラッグし、そして、このパラメータをオペレーションＯＰ１の「中に」ドロップする。これに応答して、ユーザインターフェイスは、パラメータＯＰ＿ＰＡＲＡＭ１を自動的に生成する（図３０Ｂ）。より具体的には、ユーザインターフェイスは、パラメータ名ＰＡＲＡＭ１に基づいて名前ＯＰ＿ＰＡＲＡＭ１を生成するために事前定義された命名表現法を適用し、プロシージャＰＣ１とオペレーションＯＰ１との間に委ねるためのリンクを自動的に生成し、即ち、レシピを実行するバッチがパラメータＰＡＲＡＭ１の解決をオペレーションレベルに委ねることを示す（換言すると、パラメータＰＡＲＡＭ１は、パラメータＯＰ＿ＰＡＲＡＭ１を使用してポピュレートされる）。ユーザインターフェイスは、自動的に作成されたパラメータを表示するため画面を更新もする。
【０１３３】
図３１Ｃに図示されるように、ユーザは、レシピ階層のいくつかのレベルにわたってパラメータをさ委ねることもできる。よって、ユーザは、パラメータＰＡＲＡＭ１を選択し、このパラメータをプロシージャの中にドロップすることが可能である。なお、この場合、ユーザインターフェイスは、ターゲットレベル及び各中間レベルで、対応する構造体と共に、いくつかのパラメータを生成することに留意されたい。よって、ユーザインターフェイスは、パラメータＰＲＣ＿ＰＡＲＡＭ１、ＵＰ＿ＰＡＲＡＭ１、及び、ＯＰ＿ＰＡＲＡＭ１を生成する。
【０１３４】
図３１Ｄを参照すると、パラメータを均等化するため、パラメータを既存のパラメータの中にさらにドラッグ・アンド・ドロップすることが可能である。本実例では、ユーザは、パラメータＰＡＲＡＭ１がオペレーションレベルパラメータＯＰ＿ＥＸＩＳＴＩＮＧ＿ＰＡＲの値に等しいことを指定する。一部の実施形態では、ユーザインターフェイスは、新たにリンクされたパラメータ間の接続を示すために画面を自動的に更新する。例えば、ユーザインターフェイスは、ソースパラメータ及びターゲットパラメータ（即ち、ＰＡＲＡＭ１及びＯＰ＿ＥＸＩＳＴＩＮＧ＿ＰＡＲ）をつなぐ直線のようなグラフィック標識を描画する。以上から、ユーザは、よって、退屈なダイアログを呼び出し、メニュー選択肢を通して検索し、そして、パラメータ名をタイプすることなく、レシピパラメータを操作することが可能であることに留意されたい。
【０１３５】
ＸＩＩＩ．  ユーザ画面のモーフィング
さらに、アプリケーション３８Ａ及び３８Ｂのユーザインターフェイスは、将来のユーザアクションをより良く予測し、ユーザの過去のアクションを考慮してユーザ向けに連続的に調節するため、画面の自動モーフィングをサポートし得る。モーフィングの実例は、図３２Ａ〜図３２Ｃに図示されている。
【０１３６】
ユーザインターフェイスは、当初のコマンドの組を備えるコマンドペインと、主コンテンツ／編集ペインと、ナビゲーションペインとを含む画面をユーザに最初に提示する（図３２Ａ）。表示されたペインの１つずつは、デフォルトサイズであり、他の全てのペインに対してデフォルト位置であってもよい。ユーザは、次に、例えば、ナビゲーションペインの中で選択された特有の項目を見るために、コマンドペイン内の制御操作部「ビュー」を有効化してもよい。ユーザにより要求されたビューを提供するのに加えて、ユーザインターフェイスは、将来のユーザアクションを予測して画面をモーフィング又は調節するため、自動的に付加的な対策を取ることができる。図３２Ｂに図示されるように、ユーザインターフェイスは、インテグリティ履歴ウィンドウ又はペインを自動的に生成し、新しい更新を受け入れるように主コンテンツペインのサイズを調節し、コマンドペインに表示された制御操作部を更新する、などをしてもよい。次のユーザコマンドに応答して、ユーザインターフェイスは、画面をさらに変形させることができる（図３２Ｃ）。
【０１３７】
よって、ユーザインターフェイスは、現在のユーザオペレーションのコンテキストに適応するように制御操作部、ペインサイズ、フォント、及び、他の属性を自動的に調節し得る。要望に応じて、ユーザインターフェイスは、ユーザによって行われた最後のアクションを越えて考慮し得、そして、ある数の以前のユーザコマンド（又は、ナビゲーションペインの中の選択部）に基づいて画面をモーフィングしてもよい。
【０１３８】
ＸＩＶ．  他の実例及びアプリケーション
図３３は、制御スタジオ・アプリケーション３８Ｂの別の例示的なペインレイアウトを図示する。このレイアウトは、例えば、（図３のレイアウトと比べて）別のユーザ嗜好、又は、異なったユーザの役割に対応してもよい。一般に、ユーザは、任意の所望のレイアウト及びフィルタリング環境設定を定義し保存することができる。
【０１３９】
さらに、前述の方法は、プロセス制御ネットワークに関連した他のソフトウェアシステム又はモジュールでも使用できることに留意されたい。前述の図面は、特定の型のソフトウェア・アプリケーションを図示するが、その中に示された原理は、プラント施設を調査する、制御変数（例えば、センサ読み値）を監督するなどのアプリケーションにも同様に適用され得る。
【０１４０】
本発明は、発明の単なる一例であり、限定ではないことが意図されている特定の実例に関して説明されているが、変更、追加、又は、削除が、本発明の精神及び範囲から逸脱することなく開示された実施形態になされてもよいことは、当業者に明白である。
【図３】
2014044753.tif 000003
【図６】
2014044753.tif 000004
【図７】
2014044753.tif 000005
【図８】
2014044753.tif 000006
【図９】
2014044753.tif 000007
【図１０】
2014044753.tif 000008
【図１１】
2014044753.tif 000009
【図１２】
2014044753.tif 000010
【図１３】
2014044753.tif 000011
【図１４】
2014044753.tif 000012
【図１５】
2014044753.tif 000013
【図１６】
2014044753.tif 000014
【図１７】
2014044753.tif 000015
【図１８】
2014044753.tif 000016
【図１９】
2014044753.tif 000017
【図２０】
2014044753.tif 000018
【図２１】
2014044753.tif 000019
【図２２】
2014044753.tif 000020
【図２３】
2014044753.tif 000021
【図２４】
2014044753.tif 000022
【図２５】
2014044753.tif 000023
【図２６】
2014044753.tif 000024
【図２７】
2014044753.tif 000025
【図１】
2014044753.tif 000026
【図２】
2014044753.tif 000027
【図４】
2014044753.tif 000028
【図５】
2014044753.tif 000029
【図２８】
2014044753.tif 000030
【図２９】
2014044753.tif 000031
【図３０Ａ】
2014044753.tif 000032
【図３０Ｂ】
2014044753.tif 000033
【図３０Ｃ】
2014044753.tif 000034
【図３１Ａ】
2014044753.tif 000035
【図３１Ｂ】
2014044753.tif 000036
【図３１Ｃ】
2014044753.tif 000037
【図３１Ｄ】
2014044753.tif 000038
【図３２Ａ】
2014044753.tif 000039
【図３２Ｂ】
2014044753.tif 000040
【図３２Ｃ】
2014044753.tif 000041
【図３３】
2014044753.tif 000042