数あるコンポーネントの中でも、ハードウェア上で実行されるソフトウェアおよび/またはファームウェアを含む例示的な方法および装置を以下に説明するが、これらの例は、単に例示的なものであることに留意すべきであって、限定的であると見なされるべきではない。例えば、ハードウェア、ソフトウェア、およびファームウェアコンポーネントのいずれかまたはすべてが、ハードウェア専用に、ソフトウェア専用に、またはハードウェアとソフトウェアの任意の組み合わせで、実現され得ることが企図される。したがって、以下は例示的な方法および装置を説明するが、当業者は、提供される例は、かかる方法および装置を実装するための唯一の様式ではないことを容易に理解するであろう。
一般的に、本明細書に説明される例示的な方法および装置は、プロセス制御システムに関連するビジュアルオブジェクト図のユーザインターフェース環境内で使用することができる。1つ以上のビジュアルオブジェクト図が、プロセス制御システムの構成および/または動作に関連する様々な要員によって使用され得る。より具体的には、本明細書に説明される例示的なビジュアルオブジェクト図のユーザインターフェースは、例えば、プロセス監視アプリケーション、アラーム管理アプリケーション、プロセストレンド分析および/または履歴アプリケーション、バッチ処理アプリケーション、キャンペーン管理アプリケーション、統計アプリケーション、ストリーミングビデオアプリケーション、高度な制御アプリケーション等の、1つ以上のプロセス制御アプリケーションを制御および/または構成するために使用することができる。
より一般的には、本明細書に説明される例示的なビジュアルオブジェクト図のユーザインターフェースは、プロセス制御システムの開発、展開、構成、設計、カスタマイズ、動作、メンテナンス、および/または支援に関連するアプリケーションをホストするために使用することができる。例えば、情報技術要員、構成エンジニア、システムオペレータ、技術サポートエンジニア、ソフトウェア開発エンジニア、テストエンジニア等の要員は、本明細書に説明される例示的なビジュアルオブジェクト図のユーザインターフェースの様々な態様を利用して、プロセス制御システムの制御要素を制御および構成することができる。
ビジュアルオブジェクト図は、機能ブロック、埋め込まれた複合オブジェクト、ステップ、および/または1つ以上のプロセス制御ルーチン(および/またはアルゴリズムの表示表現として使用され得る、任意の他のビジュアルオブジェクト図のオブジェクトを含み得る。開発グループは、例えば、Emerson Process Managementの企業であるFisher−Rosemount Systems,Inc.から販売されている、DeltaV(登録商標)制御システム等の制御システムを使用して、プロセス制御アルゴリズムを作成することができる。
プロセス制御アルゴリズム(例えば、プロセスまたはルーチン)は、フィールドデバイス(例えば、バルブ、バルブポジショナ、スイッチ、トランスミッタ、温度、圧力および流速センサ等)からの入力を処理し、その入力に基づいて1つ以上の制御動作を計算し、計算された制御動作に基づいて出力を生成してフィールドデバイスを作動させることによって、1つ以上のプロセスコントローラを介してプロセス制御システムを制御する。プロセス制御アルゴリズムは、1つ以上の相互接続された機能ブロックとして表すことができる。機能ブロックは、プロセス制御アルゴリズム内の動作および情報の流れに対応して、配置および/または相互接続され得る。各機能ブロックは、1つ以上のプロセス制御機能および/またはアプリケーションを実装するように定義され得る。例えば、機能ブロックは、プロセス制御システムから入力を受信し、プロセス制御システムへの出力を生成し、プロセス制御入力および/もしくはパラメータに基づいてパラメータを計算し、入力および/もしくはパラメータを監視して、入力および/もしくはパラメータを格納する、ならびに/または制御動作を計算することができる。
機能ブロックからの出力は、典型的にはリンク(例えば、通信経路)を介して別の機能ブロックの入力に伝送される。各入力および/または出力は、1つ以上のフィールドデバイスからの入力および/または出力に対応し得る。また、入力および/または出力は、機能ブロックに関連する1つ以上の計算および/または操作に対応する中間値であり得る。
例示的なビジュアルオブジェクト図のユーザインターフェースは、プロセス制御システムに結合されたワークステーションのディスプレイ(例えば、モニタ)内で、機能ブロックおよびそれらの相互接続を管理および/または表示する。オペレータは、マウス、キーボード、および/または任意の他の入力デバイスを介して、機能ブロックを変更、移動、追加、再定義、削除、および/または接続することにより、プロセス制御アルゴリズムを修正することができる。例えば、比例/積分/微分(PID)機能ブロックの出力を制御計算機能ブロックの入力に結合し、制御計算機能ブロックのフィードバック出力をPID機能ブロックに結合することにより、プロセス制御アルゴリズム内に制御ループが作成され得る。
機能ブロックは、各機能ブロックがどのように表示されるかを説明する画像情報を規定するビューパラメータを含む、これに結合される、および/またはこれに関連する。また、機能ブロックは、機能ブロックのそれぞれに対するデータソースを規定するデータパラメータを含む、これに結合される、および/またはこれに関連する。データソースは、フィールドデバイス、他のプロセス制御機器、および/または他の機能ブロックによって生成されるデータを含み得る。さらに、機能ブロックは、各機能ブロックの入力および/または出力を規定するプロセス制御パラメータを含む。これらのプロセス制御パラメータは、機能ブロックが他の連結された機能ブロックからデータを受信および/または伝送するノード(例えば、交差)を定義するので、機能ブロック内のプロセス制御パラメータは、交差点と称され得る。また、機能ブロックを結合するリンクは、各リンクがどのように表示されるかを規定するビューパラメータを含む。リンクは、リンクのエンドポイントを規定するデータパラメータを含み得る。例えば、第1の機能ブロックの出力パラメータを、第2の機能ブロックの入力パラメータに接続または結合するリンクは、関連するデータパラメータの中に、機能ブロックの出力および入力パラメータへの参照を含み得る。また、リンクに関連するビューパラメータは、第1の機能ブロックの出力パラメータと、第2の機能ブロックの入力パラメータとの交差点への参照を含み得る。ビューパラメータ内の参照の結果として、リンクは、第1の機能ブロックと第2の機能ブロックの交差点を結合しているように表示される。
典型的なプロセス制御戦略は、比較的多数の相互接続された機能ブロックに対応するプロセス制御アルゴリズムに基づいている。これらの相互接続された機能ブロックは、ワークステーションのディスプレイ内に表示することができる。多数の機能ブロックおよび複雑な相互接続は、機能ブロックの小さいセットを隔離および/または修正に対する課題を、プロセス制御オペレータに提供する場合がある。例えば、オペレータが、機能ブロックのうちのいくつかをデバッグおよび/または再配置しようと試みた場合に、他の機能ブロックは、混乱を引き起こす、および/または不適切な接続もしくは接続喪失をもたらす可能性がある。
本明細書に説明される例示的な方法および装置は、プロセス制御オペレータが、より効率的かつ効果的に所望の機能ブロックを修正することができるように、規定された機能ブロック(例えば、ビジュアルオブジェクト図内のビジュアルオブジェクト)を非表示にするために使用することができる。各機能ブロックは、結合された機能ブロックに対する機能ブロックの関係を定義するキーパラメータを含む。結合された機能ブロックは、階層構造内の親機能ブロックである場合があり、これにより、選択された機能ブロックが非表示である場合に、キーパラメータを介してその機能ブロックの規定された親機能ブロックに結合される。
非表示にされる機能ブロックが選択された場合に、本明細書に説明される例示的な方法および装置は、選択された機能ブロックのキーパラメータを決定することができる。その後、例示的な方法および装置は、結合された機能ブロック(例えば、親機能ブロック)内で、キーパラメータから交差点へのリンクを決定する。例示的な方法および装置は、選択された機能ブロックに関連するビューパラメータおよびリンクに関連するビューパラメータを、隣接する機能ブロックに関連するビューパラメータに結合させることができる。そして、選択された機能ブロックが他のプロセス制御パラメータを含まない場合は、例示的な方法および装置は、リンクおよび選択された機能ブロックを非表示にすることができる。
選択された機能ブロックが他のプロセス制御パラメータを含む例では、本明細書に説明される例示的な方法および装置は、他のプロセス制御パラメータに関連するリンクを決定する。その後、例示的な方法および装置は、これらのリンクが、親機能ブロック、非表示にされる他の機能ブロック、または非表示にされるように規定されていない機能ブロックにも対応するかどうかを決定する。その後、例示的な方法および装置は、キーパラメータ、および非表示にされる他の機能ブロックのためのリンクを決定し、規定されたすべての機能ブロックが非表示にされるまで、これらの動作を繰り返すことができる。
図1は、例示的なプロセス制御アルゴリズムプロセッサ102を含む、例示的なプロセス制御システム100を示すブロック図である。プロセス制御アルゴリズムプロセッサ102は、ワークステーション104(例えば、アプリケーションステーション、オペレータステーション等)内に表示され得るビジュアルオブジェクト図103を管理および/または処理する。ワークステーション104は、ローカルエリアネットワーク(LAN)108(例えば、アプリケーション制御ネットワーク(ACN))を介して、プロセス制御コントローラ106に通信可能に結合される。この例では、プロセス制御アルゴリズムプロセッサ102は、ワークステーション104内に実装されている。代替として、または追加として、プロセス制御アルゴリズムプロセッサ102は、プロセス制御アルゴリズムルーチンを管理および/または操作するために、コントローラ106内に含まれ得る。
ワークステーション104は、1つ以上の情報技術アプリケーション、ユーザ対話型アプリケーション、および/または通信アプリケーションに関連する動作を実施するように構成され得る。例えば、ワークステーション104は、ワークステーション104およびコントローラ106が、任意の所望の通信媒体(例えば、無線、有線等)およびプロトコル(例えば、HTTP、SOAP等)を用いて、他のデバイスまたはシステムと通信できるようにするプロセス制御関連アプリケーションおよび通信アプリケーションに関連する動作を実施するように構成され得る。ワークステーション104は、グラフィカルインターフェース内で、プロセス制御アルゴリズムルーチンのパラメータおよび/または機能からプロセス制御プロセスを作成、管理および/または修正するようにも構成され得る。ワークステーション104は、任意の好適なコンピュータシステムまたは処理システム(例えば、図9のプロセッサシステム900)を用いて実装することができる。例えば、ワークステーション104は、シングルプロセッサのパーソナルコンピュータ、シングルまたはマルチプロセッサのワークステーション等を用いて実装され得る。
ワークステーション104をコントローラ106に結合するLAN108は、任意の所望の通信媒体およびプロトコルを用いて実装することができる。例えば、LAN108は、有線または無線のイーサネット(登録商標)通信スキームに基づき得る。しかしながら、任意の他の好適な通信媒体およびプロトコルを用いることもできる。さらに、単一のLANが示されているが、1つより多くのLANおよび適切な通信ハードウェアをワークステーション104内に用いて、ワークステーション104とそれぞれの類似するワークステーション(図示せず)との間に冗長通信経路を提供することができる。
図1の例示的なプロセス制御システム100では、例示的なワークステーション104が、プロセス制御オペレータに、コントローラ106によって処理されるプロセス制御データを閲覧および/または修正するためのアクセスを提供する。コントローラ106は、ワークステーション104または任意の他のワークステーションを用いて、システムエンジニアまたは他のシステム要員によって生成され、コントローラ106にダウンロードされてインスタンス化された、1つ以上のプロセス制御アルゴリズムルーチンを実施することができる。コントローラ106は、例えば、Emerson Process Managementの企業であるFisher−Rosemount Systems, Inc.から販売されているDeltaV(登録商標)コントローラであってもよい。しかしながら、代わりに任意の他のコントローラが用いられてもよい。さらに、図1には1つのコントローラのみが示されているが、任意の所望の種類または種類の組み合わせの追加のコントローラが、LAN108に結合され得る。
コントローラ106は、デジタルデータバス114および入力/出力(I/O)デバイス116を介して、フィールドデバイス110a〜bおよびポンプ112を含む複数のプロセス制御デバイスに結合され得る。プロセス制御ルーチンの実行中、コントローラ106は、フィールドデバイス110a〜bおよびポンプ112と情報(例えば、コマンド、構成情報、測定情報、ステータス情報等)を交換することができる。この情報は、プロセス制御ルーチン機能内のパラメータを含み得る。例えば、コントローラ106にはプロセス制御ルーチンが提供され得、該ルーチンは、コントローラ106によって実行されると、コントローラ106にフィールドデバイス110a〜bおよびポンプ112へのコマンドを送信させて、フィールドデバイス110a〜bおよびポンプ112に指定された動作(例えば、測定、バルブの開/閉、有効化/無効化等を実施する)を実施させ、かつ/またはデジタルデータパス114を介して、情報(例えば、測定データ)を、ワークステーション102によってアクセス可能なコントローラ106に通信させる。
例示した図1の例では、プロセス制御アルゴリズムプロセッサ102は、ポンプ112を制御し、かつ/または、ポンプ112とインターフェース接続するための特性および構成情報を定義するように、ワークステーション104で構成される。ポンプ112は、コントローラ106内に実装され、かつ/またはコントローラ106によって実行され得るプロセス制御アルゴリズムプロセッサ102によって操作される、プロセス制御ルーチンを介して制御することができる。また、プロセス制御アルゴリズムプロセッサ102は、フィールドデバイス110a〜bを制御し、かつ/またはこれとインターフェース接続するための特性および構成情報を定義する。フィールドデバイス110a〜bは、他の種類のセンサまたは測定デバイス、アクチュエータ等を含む、任意の種類のプロセス制御デバイス(複数を含む)であり得る。また、フィールドデバイス110a〜bは、例えば、タンク、バット、混合機、ボイラ、ヒータ等のプロセス制御機器を含み得る。
例示した図1の例では、デバイス110a〜bおよび112は、周知のFoundation(登録商標)Fieldbusプロトコルを用いて、デジタルデータパス114を介して通信するように構成されたフィールドバス対応デバイスである。Foundation(登録商標)Fieldbusの基準に準拠して、デジタルデータバス114は、測定および制御デバイス(例えば、デバイス110a〜bおよび112)に通信可能に結合されるように構成された、デジタル、双方向、マルチドロップの通信バスである。例示した例では、I/Oデバイス116は、コントローラ106ならびにデバイス110a〜bおよび112を、Fieldbusプロトコルまたは他の種類の通信プロトコル(例えば、Profibusプロトコル、HARTプロトコル等)を用いることができる他のフィールドデバイスに接続することを可能にする、I/Oサブシステムインターフェースを用いて実装される。例えば、I/Oデバイス116は、Fieldbusプロトコルと他の通信プロトコルとの間を翻訳する1つ以上のゲートウェイを含み得る。追加のI/Oデバイス(I/Oデバイス116と類似するかまたは同一である)は、追加のフィールドデバイスのグループが、コントローラ106と通信できるようにするように、コントローラ106と連結されてもよい。
例示的なプロセス制御アルゴリズムプロセッサ102は、I/Oデバイス116を介してフィールドデバイス110a〜bおよび112を管理するための、1つ以上の制御ルーチンを管理する。制御ルーチンは、プロセス監視アプリケーション、アラーム管理アプリケーション、プロセストレンド分析および/または履歴アプリケーション、バッチ処理および/またはキャンペーン管理アプリケーション、統計アプリケーション、ストリーミングビデオアプリケーション、高度な制御アプリケーション等を含み得る。コントローラ106は、プロセス制御ルーチンを制御および/または管理するために、プロセス制御アルゴリズムプロセッサ102を含み得る。ワークステーション104のオペレータは、プロセス制御アルゴリズムプロセッサ102にアクセスして、プロセス制御ルーチンおよび/またはプロセス制御ルーチンに関連するデータを修正および/または閲覧することができる。ワークステーション104を使用するオペレータは、ビジュアルオブジェクト図103を介して、プロセス制御ルーチンおよび/またはデータを修正することができる、および/または、それらにアクセスすることができる。
例示的なビジュアルオブジェクト図103は、1つ以上のプロセス制御ルーチン(例えば、プロセス制御アルゴリズム)を表す、かつ/または含む、相互接続された機能ブロックを含む。各機能ブロックは、1つ以上のプロセス制御機能および/またはアプリケーションを実装するように定義され得る。例えば、機能ブロックは、プロセス制御システムから入力を受信し、プロセス制御システムへの出力を生成し、プロセス制御入力および/もしくはパラメータに基づいてパラメータを計算し、入力および/もしくはパラメータを監視して、入力および/もしくはパラメータを格納する、ならびに/または制御動作を計算することができる。
ビジュアルオブジェクト図103は、プロセス制御ルーチンおよび/またはアルゴリズムの画像表現である。プロセス制御アルゴリズムプロセッサ102は、プロセス制御ルーチンと対応するビジュアルオブジェクト図103との調整を管理する。機能ブロックに関連する機能性は、プロセス制御アルゴリズムプロセッサ102および/またはコントローラ106によるプロセス制御ルーチンの一環として実装される。したがって、ユーザが、プロセス制御データにアクセスする、および/または1つ以上の機能ブロックを修正する場合、プロセス制御アルゴリズムプロセッサ102が、ビジュアルオブジェクト図103と対応するプロセス制御ルーチンとの間の修正を調整する。他の実装では、プロセス制御アルゴリズムプロセッサ102は、修正されたビジュアルオブジェクト図(例えば、ビジュアルオブジェクト図103)をプロセス制御ルーチン内にコンパイルして、該プロセス制御ルーチンをコントローラ106内に格納することができる。
各機能ブロックは、結合された機能ブロックに対する機能ブロックの関係を定義するキーパラメータを含む。結合された機能ブロックは、階層構造内の親機能ブロックである場合があり、これにより、選択された機能ブロックが非表示である場合に、それの規定された親機能ブロックに結合される。機能ブロックは、他の一次的および/または二次的な機能ブロック(例えば、親以外の機能ブロック、サブレベルの機能ブロック)に結合された一次的な機能ブロック(例えば、親機能ブロック)を有する階層構造において、編成され得る。二次的な機能ブロックのそれぞれは、サブレベルの機能ブロックに、さらに結合されてもよく、各サブレベルの機能ブロックは、より低いレベルの機能ブロック等に結合され、等々となる。
機能ブロックに通信可能に結合する各機能ブロックおよび/または各リンクは、ビューパラメータおよび/またはデータパラメータに関連し得る。ビューパラメータは、ワークステーション104内のプロセス制御アルゴリズムプロセッサ102によって、機能ブロックおよび/またはリンクがどのように表示されるかを規定することができる。例えば、ビューパラメータは、機能ブロック内で表示される形状、サイズ、色、および/またはテキストを示すフィールドを含み得る。また、ビューパラメータは、機能ブロックおよび/またはリンクがワークステーション104によって非表示にされる(すなわち、表示されない)かどうかを示すフィールドを含み得る。さらに、ビューパラメータは、機能ブロック内に含まれる各プロセス制御パラメータのための参照フィールドを含み得る。これらの参照フィールドは、機能ブロックのパラメータを、隣接する機能ブロックのパラメータに結合させるために使用されるリンクを、参照することができる。リンクに関連するビューパラメータは、機能ブロックおよび/またはリンク内のどのプロセス制御パラメータが、ワークステーション104によって結合されたように表示されるかを規定する参照フィールドを含み得る。
データパラメータは、関連する機能ブロックおよび/またはリンクが、どのようにプロセス制御データを処理および/または参照するのかを規定するデータフィールドを含む。例えば、機能ブロックに関連するデータパラメータは、機能ブロック内のそれぞれのプロセス制御パラメータのためのデータ参照フィールドを含み得る。データ参照フィールドは、関連するプロセス制御データにアクセスするために、プロセス制御システム100内の位置を規定する。各参照フィールドは、プロセス制御データの位置のユニフォームリソースロケータ(URL)アドレス、ネットワークアドレス、および/またはデータベースのアドレスを含み得る。リンクに関連するデータパラメータは、どのプロセス制御パラメータに、機能ブロック内および/またはリンクが機能的に結合するかを規定する参照フィールドを含み得る。例えば、リンクに関連するデータパラメータは、第1の機能ブロック内の出力パラメータおよび第2の機能ブロック内の入力パラメータを参照する、データ参照フィールドを含み得る。したがって、出力パラメータによって生成および/または参照されるデータは、関連するデータパラメータにおけるデータ参照フィールドを用いて、リンクによって第2の機能ブロックの入力パラメータに転送される。
図1の例では、プロセス制御アルゴリズムプロセッサ102は、フィールドデバイス110a〜bおよびポンプ112を管理するプロセス制御ルーチンを含む、および/または該ルーチンに関連する、ビジュアルオブジェクト図103を管理する。また、コントローラ106は、プロセス制御ルーチンを用いてフィールドデバイス110a〜bおよび112を管理するために、プロセス制御アルゴリズムプロセッサ102を含み得る。フィールドデバイス110a〜bは、プロセス制御ルーチンに圧力入力のデータ値を提供する圧力センサおよび/または圧力トランスミッタを含む。その後、ルーチンは、PIDフィードバックループ内でこれらの入力値を利用および/または処理して、圧力信号が、測定された圧力が規定された圧力範囲内であることを示しているかどうかを決定する。圧力が規定範囲外である場合は、プロセス制御ルーチンがポンプ112の速度を変更するための制御動作を計算する。プロセス制御ルーチンは、I/Oデバイス116を介してポンプ112にルーティングされる制御信号を、コントローラ106を介して生成し、ポンプ112に、その速度を変更して、測定される圧力を規定の圧力範囲内にするように命令する。
プロセス制御オペレータは、ワークステーション104によって表示されるビジュアルオブジェクト図103を介して、プロセス制御ルーチンを修正および/または閲覧することができる。場合によって、ビジュアルオブジェクト図103は、プロセス制御ルーチンを実装するために、比較的大多数の機能ブロックを含み得る。これらの場合には、多数の機能ブロックおよび複雑な相互接続は、機能ブロックの小さいセットを隔離および/または修正に対する課題を、オペレータに提供する場合がある。例えば、オペレータが、圧力PIDルーチンを変更するために、機能ブロックのうちのいくつかをデバッグおよび/または再配置しようと試みた場合に、ビジュアルオブジェクト図103内の他の機能ブロックは、混乱を引き起こす、および/または不適切な接続もしくは接続喪失の可能性をもたらす可能性がある。
オペレータは、より効率的かつ効果的に圧力PID機能ブロックを修正するために、機能ブロックのうちのいくつかを非表示にすることができる。例えば、オペレータが、非表示にされる機能ブロックを選択した場合、プロセス制御アルゴリズムプロセッサ102は、選択された機能ブロックのためのキーパラメータを決定する。その後、例示的なプロセス制御アルゴリズムプロセッサ102は、非表示にされるように規定されていない結合された機能ブロック(例えば、親機能ブロック)内で、キーパラメータから交差点までのリンクを決定する。プロセス制御アルゴリズムプロセッサ102は、選択された機能ブロックに関連するビューパラメータおよびリンクに関連するビューパラメータを、隣接する親機能ブロックに関連するビューパラメータに結合させる。そして、選択された機能ブロックが他のプロセス制御パラメータを含まない場合は、プロセス制御アルゴリズムプロセッサ102は、リンクおよび選択された機能ブロックを非表示にする。
選択された機能ブロックが他のプロセス制御パラメータを含む例では、例示的なプロセス制御アルゴリズムプロセッサ102は、他のプロセス制御パラメータに関連するリンクを決定する。その後、例示的なプロセス制御アルゴリズムプロセッサ102は、これらのリンクが、親機能ブロック、非表示にされる他の機能ブロック、または非表示にされるように規定されていない機能ブロックにも対応するかどうかを決定する。その後、プロセス制御アルゴリズムプロセッサ102は、非表示にされる他の機能ブロックのためのキーパラメータ、およびリンクを決定し、非表示にされるように規定されたすべての機能ブロックが非表示にされるまで、これらの動作を繰り返すことができる。
機能ブロックおよび/またはリンクは、プロセス制御アルゴリズムプロセッサ102が、機能ブロックおよび/またはリンクの対応するビューパラメータ内に非表示フラグをトグルおよび/または設定した場合に、プロセス制御アルゴリズムプロセッサ102によって非表示にされるように規定されている。代替として、プロセス制御アルゴリズムプロセッサ102は、表示フィールドを非表示に設定することによって、および/または表示特性をヌル値に設定することによって、リンクおよび/または機能ブロックを非表示にすることができる。
例示的なプロセス制御アルゴリズムプロセッサ102は、ビューパラメータ内に含まれる非表示情報を格納する。ビジュアルオブジェクト図103が閉じられて、後に再び開かれた場合、プロセス制御アルゴリズムプロセッサ102は、どの機能ブロックおよび/またはリンクが非表示にされるように規定されているかを決定する。ビューパラメータの格納により、プロセス制御オペレータは、現在および/または未来のセッションのために、ビジュアルオブジェクト図103内で同じ機能ブロックを非表示にすることができる。また、プロセス制御アルゴリズムプロセッサ102は、オペレータによって非表示が解除されるまたは表示化されるように規定された機能ブロックおよび/またはリンクの非表示を解除するまたは表示化することができる。機能ブロックの非表示を解除する、すなわち表示化するために、プロセス制御アルゴリズムプロセッサ102は、結合された非表示にされていない機能ブロックから、表示化されるように選択された機能ブロックへのリンクを決定する。その後、プロセス制御アルゴリズムプロセッサ102は、表示化されるように選択されたリンクおよび機能ブロックの対応するビューパラメータを、隣接する機能ブロックに関連するビューパラメータから切り離す。その後、プロセス制御アルゴリズムプロセッサ102は、選択された機能ブロックおよび対応するリンクを表示化する。プロセス制御アルゴリズムプロセッサ102は、選択された機能ブロックが、非表示が解除されるまたは表示化されるように選択されている可能性がある他の機能ブロックに結合されているかどうかを決定し、もしそうである場合は、それらの機能ブロックおよび対応するリンクを表示化する。プロセス制御アルゴリズムプロセッサ102は、図2と併せてより詳細に説明される。
例示的なプロセス制御システム100は、以下により詳細に説明される例示的な方法および装置が有利に利用され得るシステムの、1つの種類を例示するために提供される。しかしながら、本明細書に説明される例示的な方法および装置は、所望に応じて、図1に示す例示的なプロセス制御システム100より複雑、またはより複雑でない他のシステムにおいて、および/または、プロセス制御活動、企業管理活動、通信活動等に関連して使用されるシステムにおいて、有利に利用され得る。
図2は、図1の例示的なプロセス制御アルゴリズムプロセッサ102のブロック図である。例示的なプロセス制御アルゴリズムプロセッサ102は、同時に操作され得る複数のビジュアルオブジェクト図(例えば、ビジュアルオブジェクト図103)を管理および/または処理することができるか、または代替として、プロセス制御アルゴリズムプロセッサ102は、他のプロセス制御アルゴリズムプロセッサが他のビジュアルオブジェクト図を処理している間に、ビジュアルオブジェクト図103を処理することができる。さらに、例示的なプロセス制御アルゴリズムプロセッサ102は、プロセス制御アルゴリズムプロセッサ102の動作に関連する情報を管理および/または格納するために、追加のメモリおよび/またはプロセッサを含み得る。
プロセス制御アルゴリズムプロセッサ102は、ビジュアルオブジェクト図103内の機能ブロックおよび/またはリンクについて、プロセス制御オペレータの命令および/または選択を受信するための入力受信機202を含む。例示的な受信機202は、ワークステーション104から、命令、コマンド、および/または選択を受信する。命令は、ビジュアルオブジェクト図103内で非表示にするまたは非表示を解除する1つ以上の機能ブロックおよび/またはリンクの選択を含み得る。また、命令は、ビジュアルオブジェクト図を開くおよび/または閉じるための要求を含み得る。さらに、入力受信機202は、ビジュアルオブジェクト図内の機能ブロックおよび/または機能ブロック間のリンクを修正、追加、および/または削除する命令を受信することができる。命令を受信すると、入力受信機202は、命令を、ビジュアルオブジェクト図プロセッサ204を用いて処理するためのフォーマットに変換する。その後、入力受信機202は、変換された命令をビジュアルオブジェクト図プロセッサ204に転送する。例えば、入力受信機202は、1つ以上の機能ブロックを選択し、非表示にするまたは非表示を解除するデジタルメッセージ(例えば、8バイトワード)を受信することができる。これらのメッセージを受信すると、入力受信機202は、メッセージを、ビジュアルオブジェクト図プロセッサ204によって解読可能な、コード化された命令に変換する。
1つ以上のビジュアルオブジェクト図を管理するために、図2の例示的なプロセス制御アルゴリズムプロセッサ102は、ビジュアルオブジェクト図プロセッサ204を含む。例示的なビジュアルオブジェクト図プロセッサ204は、入力受信機202から命令を受信し、命令内の情報に基づいて1つ以上のビジュアルオブジェクト図を処理する。ビジュアルオブジェクト図プロセッサ204は、ビジュアルオブジェクト図を開くまたは閉じる、ビジュアルオブジェクト図内の機能ブロックを追加、削除、および/もしくは修正する、プロセス制御データにアクセスする、ならびに/または、ビジュアルオブジェクト図内の機能ブロックおよびリンクの表示を管理することができる。また、ビジュアルオブジェクト図プロセッサ204は、選択された機能ブロックおよび/またはリンクの非表示および/または非表示の解除を管理する。
機能ブロックを追加、削除、および/または変更することによってビジュアルオブジェクト図が修正される例では、ビジュアルオブジェクト図プロセッサ204は、これらの修正をプロセス制御プロセッサ206に転送する。修正を受信すると、プロセス制御プロセッサ206は、該修正に基づいて、対応するプロセス制御ルーチンを更新する。他の例では、ビジュアルオブジェクト図プロセッサ204は、ビジュアルオブジェクト図に対する修正をコンパイルし、対応するプロセス制御ルーチンを生成して、該プロセス制御ルーチンをプロセス制御プロセッサ206に伝送することができる。このように、ビジュアルオブジェクト図プロセッサ204は、プロセス制御ルーチン(例えば、ビジュアルオブジェクト図)の画像表現を、図1のプロセス制御プロセッサ206および/またはコントローラ106によって実行可能な対応するアルゴリズムに変換する。代替的な実装では、ビジュアルオブジェクト図プロセッサ204は、ビジュアルオブジェクト図を修正してメモリに格納することができる。その後、プロセス制御プロセッサ206および/またはコントローラ106は、ビジュアルオブジェクト図をプロセス制御ルーチン内にコンパイルし、該ルーチンを用いてプロセス制御システムの管理を継続することができる。
例示的なプロセス制御プロセッサ206は、プロセス制御ルーチンを実施、管理、および/または操作することができる。他の例では、プロセス制御プロセッサ206は、プロセス制御ルーチンをメモリに格納する、プロセス制御ルーチンをコントローラ106に読み取り可能なフォーマットにコンパイルする、および/または、プロセス制御ルーチンをコントローラ106に伝送することができる。その後、コントローラ106は、プロセス制御ルーチンを実施することができる。プロセス制御プロセッサ206は、コントローラ106および/またはコントローラ106と通信するワークステーション104内の他のコンポーネントに通信可能に結合され得る。他の例では、プロセス制御プロセッサ206はコントローラ106内に含まれ得る。
ビジュアルオブジェクト図および/または機能ブロックにアクセスするために、例示的なビジュアルオブジェクト図プロセッサ204は、機能ブロックデータベース205に通信可能に結合されている。例示的な機能ブロックデータベース205は、ビジュアルオブジェクト図および/またはデフォルトの機能ブロックを格納する。ビジュアルオブジェクト図プロセッサ204は、ビジュアルオブジェクト図および/または機能ブロックにアクセスするために機能ブロックデータベース205にアクセスし、オペレータからのコマンドに基づいて、ビジュアルオブジェクト図を追加および/または修正する。さらに、ビジュアルオブジェクト図プロセッサ204は、ビジュアルオブジェクト図および/または修正された機能ブロックを、機能ブロックデータベース205に格納することができる。機能ブロックデータベース205は、EEPROM、RAM、ROM、および/または任意の他の種類のメモリを用いて実装され得る。
図2の例示的なビジュアルオブジェクト図プロセッサ204は、受信された命令のうちのいずれかが、非表示にするおよび/または非表示を解除する機能ブロックの選択を含むかどうかを決定する。機能ブロックが選択されている場合は、ビジュアルオブジェクト図プロセッサ204は、選択された機能ブロックを、機能ブロックマネージャ208および/またはビューパラメータマネージャ210に転送する。ビジュアルオブジェクト図プロセッサ204は、対応するビジュアルオブジェクト図内の機能ブロックに参照を転送することによって、機能ブロックのメモリにおける位置を転送することによって、および/または機能ブロックを含むビジュアルオブジェクト図を転送することによって、機能ブロックを転送することができる。
また、機能ブロックマネージャ208および/またはビューパラメータマネージャ210が、選択された機能ブロックおよび/またはリンクを非表示にするおよび/または非表示を解除すると、ビジュアルオブジェクト図プロセッサ204は、ワークステーション104で表示された状態から非表示にされた機能ブロックを解除することによって、および/または非表示を解除された機能ブロックを追加して表示されるようにすることによって、対応するビジュアルオブジェクト図を修正する。また、いくつかの実装では、ビジュアルオブジェクト図プロセッサ204は、親機能ブロック内で画像指示を表示して、結合されたサブレベルの機能ブロックが非表示であることを示すことができる。
図2の例示的な機能ブロックマネージャ208は、どの機能ブロックが非表示にされるまたは非表示を解除されるべきであるかという命令を含む、ビジュアルオブジェクト図プロセッサ204からの命令を受信する。機能ブロック(例えば、第1の機能ブロック)を非表示にする命令を受信すると、機能ブロックマネージャ208は、第1の機能ブロック内のプロセス制御パラメータから第2の機能ブロック(例えば、親機能ブロック)内の交差点へのリンクを決定する。機能ブロックマネージャ208は、第1の機能ブロック内のどのプロセス制御パラメータが、キープロセス制御パラメータに対応するかを識別することにより、リンクを決定することができる。キープロセス制御パラメータは、プロセス制御オペレータおよび/または機能ブロックのデザイナによって規定され得る。
第2の機能ブロックへのリンクを決定すると、機能ブロックマネージャ208は、第2の機能ブロックが非表示にされるように選択されているかどうかを決定する。第2の機能ブロックが非表示にされるように選択された場合は、機能ブロックマネージャ208は、第2の機能ブロックの親機能ブロックへのリンクを識別するために、第2の機能ブロック内のキーパラメータを決定する。機能ブロックマネージャ208は、より高いレベルの親機能ブロックが非表示にされるように規定されなくなるまで、より高いレベルの機能ブロックの決定を継続することができる。例えば、第2の機能ブロックが非表示にされると規定されていない場合、機能ブロックマネージャ208は、第1の機能ブロック内の他のパラメータを決定し、リンクを介してこれらのパラメータに結合された機能ブロックを識別する。これらの機能ブロックのうちのいずれかが非表示にされると選択された場合、機能ブロックマネージャ208は、次に、それらの機能ブロック内のキーパラメータおよび/またはパラメータを識別して、サブレベルの機能ブロックが非表示にされるかどうかを決定する。
第1の機能ブロック内のパラメータ、およびこれらのパラメータに結合されたどの機能ブロックが非表示にされるかを識別すると、例示的な機能ブロックマネージャ208は、これらの機能ブロックおよび/またはこれらの機能ブロックを結合するリンクを非表示にする。機能ブロックマネージャ208は、非表示にされる機能ブロックおよび/またはリンクに関連するビューパラメータのそれぞれの中にフラグを設定するようにビューパラメータマネージャ210に命令を送信することにより、機能ブロックおよび/またはリンクを非表示にすることができる。また、機能ブロックマネージャ208は、対応するビジュアルオブジェクト図内の表示から機能ブロックおよび/またはリンクを除去するようにビジュアルオブジェクト図プロセッサ204に命令を送信することにより、機能ブロックを非表示にすることができる。
例示的な機能ブロックマネージャ208は、リンクに関連するデータパラメータを参照することにより、どの機能ブロックプロセス制御パラメータが、どのリンクに結合されているかを決定することができる。リンクに関連するデータパラメータは、どの機能ブロックプロセス制御パラメータがリンクに結合されているかを識別する参照フィールドを含み得る。これらの参照フィールドは、URLアドレス、対応するプロセス制御パラメータおよび/または機能ブロックの参照識別値、ディレクトリ内の位置、データベース内での位置、および/またはプロセス制御パラメータに対する任意の他のプロセス制御メモリの位置によって、機能ブロックを識別することができる。また、機能ブロックに関連するデータパラメータは、どのリンクが関連するプロセス制御パラメータおよび/または機能ブロックに結合されているかを規定する参照フィールドを含み得る。これらの参照フィールドは、対応するリンク、リンクのURLアドレス、および/またはリンクに対する任意の他のプロセス制御メモリの位置の識別子を含み得る。
また、例示的な機能ブロックマネージャ208は、1つ以上の機能ブロックの非表示を解除する命令を受信することができる。少なくとも第1の機能ブロックの非表示を解除する命令を受信すると、機能ブロックマネージャ208は、非表示が解除されるように選択された機能ブロックの親機能ブロックを決定する。機能ブロックマネージャ208は、非表示が解除されるように選択された機能ブロック内のキーパラメータを識別することにより、親機能ブロックを決定することができる。その後、機能ブロックマネージャ208は、同じく非表示が解除されるように規定されている第1の機能ブロックに結合された他のリンクおよび/または機能ブロックの識別を継続する。非表示が解除される機能ブロックおよび/またはリンクを識別すると、これらが表示され得るように、機能ブロックマネージャ208は、ビューパラメータマネージャ210に命令を送信して、これらの機能ブロックおよび/またはリンクに関連するビューパラメータを修正することができる。また、機能ブロックマネージャ208は、ビジュアルオブジェクト図プロセッサ204に、対応するビジュアルオブジェクト図内の規定された機能ブロックおよび/またはリンクの非表示を解除するように命令を送信することができる。
図2の例示的なビューパラメータマネージャ210は、非表示が解除されるおよび/または非表示にされるように規定されたリンクおよび/または機能ブロックに関連するビューパラメータ内の非表示フラグを修正するように、機能ブロックマネージャ208から命令を受信する。また、ビューパラメータマネージャ210は、非表示にされるように規定された機能ブロックおよび/またはリンクに関連するビューパラメータを、親機能ブロックに関連するビューパラメータに結合させることができる。同様に、ビューパラメータマネージャ210は、非表示が解除されるように規定された機能ブロックおよび/またはリンクに関連するビューパラメータを、親機能ブロックに関連するビューパラメータから切り離すことができる。
例示的なビューパラメータマネージャ210は、機能ブロックおよび/またはリンクに関連するビューパラメータにアクセスして、非表示スイッチをトグルすることにより、非表示フラグを修正することができる。他の例では、ビューパラメータマネージャ210は、非表示参照フィールドにおいて「非表示」または「非表示の解除」を規定することにより、および/または、非表示ビットを設定することにより、ビューパラメータ内に非表示フラグを設定することができる。非表示フラグを設定することに加えて、ビューパラメータマネージャ210は、サブレベルの機能ブロックが非表示であることを示すために、親機能ブロック内の交差点で指示を設定および/または規定することができる。
ビューパラメータは、機能ブロックおよび/またはリンクが、ビジュアルオブジェクト図の中でどのように表示され得るかを規定する。例えば、色、高さ、線の太さ等の画像表示特性を規定するフィールドに加えて、ビューパラメータは、リンクおよび/または機能ブロックが、どのように隣接する機能ブロックおよび/またはリンクに結合されたように表示され得るかを規定するフィールドを含み得る。また、ビューパラメータは、機能ブロックが非表示にされる(例えば、ビジュアルオブジェクト図の中に表示されない)かどうか、および/または、ビューパラメータが、非表示にされるように規定されていない機能ブロックのビューパラメータにリンクされるかどうかを規定するフィールドを含み得る。さらに、ビューパラメータは、サブレベルの機能ブロックが非表示であるという指示に伴って、機能ブロック内のパラメータが表示されるかどうかを示すフィールドを含む。この指示は、シェーディング等の画像指示および/または機能ブロックの参照名等のテキスト指示および/または非表示にされた機能ブロックに関連するプロセス制御パラメータを含み得る。
例示的なビューパラメータマネージャ210は、ビューパラメータ内の参照フィールドを修正することによって、非表示にされるように規定された機能ブロックおよび/またはリンクに関連するビューパラメータを連結させることができる。例えば、非表示にされる機能ブロックに関連するビューパラメータは、非表示参照フィールドを含み得る。ビューパラメータマネージャ210は、親機能ブロックのビューパラメータに対応する非表示参照フィールドにおいて、参照を追加することができる。代替として、親機能ブロックも非表示にされるように規定されている場合は、ビューパラメータマネージャ210は、非表示にされるように規定されていない次に高い階層機能ブロックに、参照非表示フィールド内の参照を追加することができる。さらに、ビューパラメータマネージャ210は、親機能ブロック内の交差点に非表示参照フィールド内の参照を追加することによって、非表示にされる機能ブロックおよび/またはリンクのビューパラメータを結合させることができる。
非表示にされる機能ブロックに関連するビューパラメータを、非表示にされない機能ブロックのビューパラメータに参照することにより、オペレータは、機能ブロックが非表示であるにもかかわらず、非表示にされていない機能ブロックを介して、非表示にされた機能ブロックに関連するビューパラメータ内のデータにアクセスすることができる。このデータは、機能ブロックの非表示を解除するオプションを含み得る。また、いくつかの例では、非表示にされる機能ブロックをサブレベルの非表示にされない機能ブロックに結合するリンクは、該リンクが、サブレベルの機能ブロックを非表示にされた機能ブロックの親に結合させるように、修正され得る。これらの例では、ビューパラメータマネージャ210は、リンクに関連するビューパラメータ内のリンク参照が、プロセス制御パラメータおよび/または親機能ブロック内の交差点を含むように、修正する。
また、ビューパラメータマネージャ210は、非表示が解除されるように選択された機能ブロックのビューパラメータを、まだ非表示にされていない機能ブロックから切り離すことができる。これらの例では、ビューパラメータマネージャ210は、非表示参照リンクを関連するビューパラメータから除去して、リンク参照が、非表示が解除されるように規定された機能ブロック内のプロセス制御パラメータを含むように、修正することができる。
例示的なビューパラメータマネージャ210および/または機能ブロックマネージャ208は、メモリ220内のビューパラメータおよび/またはデータパラメータにアクセスする、および/または、該パラメータを格納することができる。例示的なメモリ220は、データパラメータメモリ222およびビューパラメータメモリ224を含み得る。メモリ220、データパラメータメモリ222、および/またはビューパラメータメモリ224は、EEPROM、RAM、ROM、および/または任意の他の種類のメモリを用いて実装され得る。
例示的なデータパラメータメモリ222は、ビジュアルオブジェクト図内の機能ブロックおよび/またはリンクに関連するデータパラメータを含む。例示的なビューパラメータメモリ224は、ビジュアルオブジェクト図内の機能ブロックおよび/またはリンクに関連するビューパラメータを含む。新しく作成される機能ブロックおよび/またはリンクのそれぞれについて、ビューパラメータおよび/またはデータパラメータがメモリ220内で作成および格納され得る。さらに、プロセス制御オペレータおよび/または管理者は、対応する機能ブロックおよび/またはリンクにアクセスすることなく、メモリ220内の任意のデータパラメータおよび/またはビューパラメータを直接修正することができる。これらの場合には、データおよび/またはビューパラメータに対して行われる変更は、対応するビジュアルオブジェクト図および/またはプロセス制御ルーチン内で更新およびコンパイルされ得る。
ビジュアルオブジェクト図(例えば、ビジュアルオブジェクト図103)の表示を管理するために、例示的なプロセス制御アルゴリズムプロセッサ102は、ビジュアルオブジェクト表示体212を含む。例示的なビジュアルオブジェクト表示体212は、ビジュアルオブジェクト図プロセッサ204からビジュアルオブジェクト図を受信して、どの機能ブロックおよび/またはリンクを表示するかを決定する。ビジュアルオブジェクト表示体212は、機能ブロックおよび/またはリンクのそれぞれに関連するビューパラメータにアクセスして、どれが非表示にされるように設定されているかを決定することにより、表示する機能ブロックおよび/またはリンクを認識することができる。その後、ビジュアルオブジェクト表示体212は、設定された非表示フラグを含まない機能ブロックを表示する。また、ビジュアルオブジェクト表示体212は、リンクのビューパラメータ内のリンク参照にアクセスして、どのプロセス制御パラメータおよび/または交差点がどのリンクによって結合されているかを決定することにより、これらの機能ブロックを結合するリンクを表示する。
また、ビジュアルオブジェクト表示体212は、親機能ブロック内の1つ以上の交差点で指示を表示して、1つ以上のサブレベルの機能ブロックが非表示であることを示すことができる。この指示は、非表示にされた機能ブロック内で、非表示にされた機能ブロックおよび/または結合されたプロセス制御パラメータを識別する図記号、アイコン、シェーディング、および/またはテキストを含み得る。代替として、指示は、プロセス制御パラメータの値、プロセス制御パラメータの名称、プロセス制御パラメータのステータス、プロセス制御パラメータの識別番号、プロセス制御パラメータの位置、関連する機能ブロックの名称、または関連する機能ブロックの識別番号を含み得る。
図2の例示的なビジュアルオブジェクト表示体212は、オペレータが、指示を有する交差点上をスクロールした場合に、ハイライトされたテキストを表示することができる。カーソルで交差点上をスクロールすることにより、ビジュアルオブジェクト表示体212は、どの機能ブロックおよび/またはリンクが非表示にされており、その交差点に結合されているかのリストを表示することができる。これらの場合には、ビジュアルオブジェクト図プロセッサ204は、オペレータが交差点上をスクロールしたというコマンドを、入力受信機202から受信することができる。その後、ビジュアルオブジェクト図プロセッサ204は、コマンドをビジュアルオブジェクト表示体212に転送する。その後、ビジュアルオブジェクト表示体212は、交差点が指示を含むかどうかを決定し、非表示にされた機能ブロックおよび/またはリンクをリストしたテキストボックスを表示する。その後、オペレータは、リストされた非表示にされた機能ブロックのうちの1つ以上を選択することができる。リストされた非表示にされた機能ブロックのうちの1つを選択すると、プロセス制御アルゴリズムプロセッサ102は、次に、これらの機能ブロックおよび対応するリンクの非表示を解除する。
図2には、プロセス制御アルゴリズムプロセッサ102を実装する例示的な様式が示されているが、図2に示すインターフェース、データ構造、要素、プロセスおよび/またはデバイスのうちの1つ以上が、組み合わせ、分割、再配置、省略、排除、および/または任意の他の様式で実装され得る。例えば、図2に示す例示的な入力受信機202、例示的なビジュアルオブジェクト図プロセッサ204、例示的なプロセス制御プロセッサ206、例示的な機能ブロックマネージャ208、例示的なビューパラメータマネージャ210、例示的なビジュアルオブジェクト表示体212、例示的な機能ブロックデータベース205、および/または例示的なメモリ220は、例えば、1つ以上のコンピュータデバイスおよび/またはコンピュータプラットフォーム(例えば、図9の例示的な処理プラットフォーム910)によって実行される機械によるアクセス可能または読み取り可能な命令を用いて、別個に、および/または任意の組み合わせにおいて、実装され得る。
さらに、例示的な入力受信機202、例示的なビジュアルオブジェクト図プロセッサ204、例示的なプロセス制御プロセッサ206、例示的な機能ブロックマネージャ208、例示的なビューパラメータマネージャ210、例示的なビジュアルオブジェクト表示体212、例示的な機能ブロックデータベース205、例示的なメモリ220、および/またはより一般的には、プロセス制御アルゴリズムプロセッサ102は、ハードウェア、ソフトウェア、ファームウェア、ならびに/またはハードウェア、ソフトウェアおよび/もしくはファームウェアの任意の組み合わせを用いて、実装され得る。したがって、例えば、例示的な入力受信機202、例示的なビジュアルオブジェクト図プロセッサ204、例示的なプロセス制御プロセッサ206、例示的な機能ブロックマネージャ208、例示的なビューパラメータマネージャ210、例示的なビジュアルオブジェクト表示体212、例示的な機能ブロックデータベース205、例示的なメモリ220のうちのいずれか、および/または、より一般的には、プロセス制御アルゴリズムプロセッサ102は、1つ以上のサーキット(複数を含む)、プログラム可能なプロセッサ(複数を含む)、特定用途向け集積回路(ASIC)(複数を含む)、プログラム可能な論理デバイス(PLD)(複数を含む)、および/またはフィールドプログラム可能ロジックデバイス(FPLD)(複数を含む)等を用いて、実装され得る。
図3は、機能ブロック302〜308およびリンク310〜316を含む、図1の例示的なビジュアルオブジェクト図103の図である。簡潔にするために、例示的なビジュアルオブジェクト図103は、機能ブロック302〜308を示す。しかしながら、他の例では、ビジュアルオブジェクト図103は、追加のリンクによって結合された追加の機能ブロックを含み得る。例えば、典型的なプロセス制御システムは、リンクによって結合された数十個の相互接続された機能ブロックを含み得る。
例示的な機能ブロック302〜308は、アラーム内にPIDフィードバックループを実装するために相互に結合される。機能ブロック302は、入力値およびフィードバック値に基づいて出力を計算するために、PID制御アルゴリズムおよび/またはルーチンを含み得る。出力値はOUTパラメータに対応し、入力値はINパラメータに対応し、フィードバック値は機能ブロック302内のBKCAL_INパラメータに対応する。機能ブロック302のINパラメータは、リンク310を介して、機能ブロック306のOUTパラメータに通信可能に結合される。
例示的な機能ブロック306は、1つ以上のフィールドデバイスからプロセス制御データ値を受信して、PID1機能ブロック302のために受信したデータをパラメータ化された値に変換することができる。その後、FT−101機能ブロック306は、OUTパラメータを介して、PID1機能ブロック302のINパラメータに該値を伝送する。出力値を計算すると、PID1機能ブロックは、リンク312経由でOUTパラメータを介して、機能ブロック304内のCAS_INパラメータに該出力値を出力する。例示的な機能ブロック304は、受信した出力値に基づいて制御動作および/または較正値を計算するために、出力値を用いることができる。その後、FY‐101機能ブロック304は、リンク316経由でOUTパラメータを介して、この制御動作をALARM1機能ブロック308内のINパラメータに伝送することができる。また、FY‐101機能ブロック304は、BKCAL_OUTパラメータを介して較正値を伝送することができる。
例示的な機能ブロック302〜208およびリンク310〜316のそれぞれは、ビューパラメータおよびデータパラメータ320〜350に関連する。例えば、機能ブロック306は、FT−101のビューパラメータ320およびFT−101データパラメータ322に関連する。FT−101のビューパラメータ320は、FT−101機能ブロック306がビジュアルオブジェクト図103内でどのように表示されるかを規定し、FT−101データパラメータ322は、OUTパラメータのためのデータソースを規定する。また、データパラメータ322は、リンク310への参照を含み得る。LINK1のビューパラメータ324は、機能ブロック306のOUTパラメータおよび機能ブロック302のINパラメータへの参照フィールドを含み得る。さらに、LINK1のデータパラメータ326は、機能ブロック306のOUTパラメータおよび機能ブロック302のINパラメータへの参照を含み得る。同様に機能ブロック302、304、および308、ならびにリンク312〜316は、それぞれのビューパラメータおよびデータパラメータ328〜350に関連する。
ビューパラメータおよびデータパラメータ320〜350は、図2のメモリ220中に格納され得る。機能ブロック302〜308および/またはリンクのそれぞれは、メモリ220内で、それぞれのビューパラメータおよび/またはデータパラメータ320〜350にアクセスすることにより、表示データおよび/またはプロセス制御データを参照することができる。また、ビジュアルオブジェクト図103、機能ブロック302〜308、およびリンク312〜316は、メモリ220に格納され得る。代替として、ビジュアルオブジェクト図103は、メモリ220から分離された別のメモリに格納され得る。
ワークステーション(例えば、ワークステーション104)を使用するプロセス制御オペレータは、機能ブロック302〜308のうちの1つ以上および/またはリンク310〜316のうちの1つ以上を、非表示にするように選択することができる。オペレータは、非表示にされる各機能ブロック302〜308および/またはリンク310〜316を、独立して選択することができる。代替として、オペレータは、非表示にされる機能ブロック302〜308を、カーソルを用いてハイライトするおよび/または丸で囲むことができる。オペレータは、ビジュアルオブジェクト図103内の非表示機能および/またはビジュアルオブジェクト図103に関連する制御パネル上の非表示機能を選択することにより、機能ブロック302〜308が非表示にされるように規定することができる。他の例では、オペレータは、キーボード上で「ホットキー」を指定するか、またはカーソルで右クリックして、機能ブロック302〜308および/またはリンク310〜316のうちから選択されたものを非表示にすることができる。
非表示にする機能ブロック304を選択することによって、図1および図2のプロセス制御アルゴリズムプロセッサ102は、機能ブロック304内のキーパラメータを決定する。この例では、CAS_INパラメータがキーパラメータとして指定され得る。その後、プロセス制御アルゴリズムプロセッサ102は、機能ブロック302(例えば、親機能ブロック)のCAS_INキーパラメータおよびOUTパラメータに結合されたリンク312を識別する。その後、プロセス制御アルゴリズムプロセッサ102は、機能ブロック304内のBKCAL_OUTパラメータおよびOUTパラメータを識別し、リンク314および316がこれらのパラメータに結合されていると決定することができる。その後、プロセス制御アルゴリズムプロセッサ102は、それぞれのリンク314および316に結合された機能ブロック302および308を識別する。機能ブロック314は親機能ブロックであり、機能ブロック308は非表示にされるように規定されていないサブレベルの機能ブロックであるため、プロセス制御アルゴリズムプロセッサ102は、機能ブロック304に加えてリンク312および314を非表示にする。また、リンク316は、データパラメータ346を介して機能ブロック304に機能的に結合されているにもかかわらず、機能ブロック302に結合されているように見えるように修正される。
図4は、非表示にされた例示的なFY‐101機能ブロック304を有する、図3の例示的なビジュアルオブジェクト図103の図である。データパラメータ322、326、330、334、338、342、346、および350、ならびにメモリ220には図3からの変更がないので、簡潔にするために図4には例示されていない。また、機能ブロック302〜308および/またはリンク310〜316は、データパラメータ322、326、330、334、338、342、346、および350に、図3と同じ様式で関連する。
図4の例では、プロセス制御オペレータは、機能ブロック304が非表示にされるように選択している。機能ブロック304を選択すると、図1および図2のプロセス制御アルゴリズムプロセッサ102が、機能ブロック304ならびに対応するリンク312および316を非表示にする。ALARM1機能ブロック308は、非表示にされるように規定されていないため、リンク316に関連するLINK3のビューパラメータ340は、該リンクが機能ブロック308のINパラメータを機能ブロック302のOUTパラメータに結合しているように表示されるように、修正される。しかしながら、リンク318に関連するデータパラメータ342には変更がなく、継続して機能ブロック308のINパラメータを機能ブロック304のOUTパラメータに結合させる。これにより、ビジュアルオブジェクト図103は、機能ブロック304がまだ表示されているかのように機能できるようにすることができる。
機能ブロック304を非表示にすることにより、FY‐101のビューパラメータ336、LINK2のビューパラメータ332、およびLINK4のビューパラメータ内での非表示フラグのステータスが「非表示」に変更される。また、FY‐101のビューパラメータ336、LINK2のビューパラメータ332、およびLINK4のビューパラメータは、機能ブロック302に関連するPID1のビューパラメータ328に結合される。また、FY‐101のビューパラメータ336およびLINK2のビューパラメータ332は、OUTパラメータ(例えば、交差点)に結合され得、LINK4のビューパラメータ344は、機能ブロック302のBKCAL_INパラメータに結合され得る。これらの交差点は、非表示にされた機能ブロック304に機能的に結合された機能ブロック302の一部である。
また、機能ブロック304を非表示にすることにより、機能ブロック302のOUTパラメータおよび/または交差点は、FY‐101機能ブロック304の識別値のシェーディングの画像指示およびテキスト指示とともに表示される。同様に、機能ブロック302のBKCAL_INパラメータおよび/または交差点は、FY‐101機能ブロック304の識別値のシェーディングの画像指示およびテキスト指示とともに表示される。プロセス制御オペレータが、カーソルでこれらの交差点上をスクロールした場合、機能ブロック304の非表示を解除するオプションを含むダイアログボックスが現れ得る。
その後、プロセス制御オペレータは、機能ブロック308を非表示にするように選択することができる。機能ブロック308を選択すると、プロセス制御アルゴリズムプロセッサ102は、INパラメータがキーパラメータであると決定する。INパラメータをキーパラメータとして識別すると、例示的なプロセス制御アルゴリズムプロセッサ102は、結合されたリンク316を識別する。その後、プロセス制御アルゴリズムプロセッサ102は、機能ブロック302がリンク316に結合されて表示されていると決定する。付加的または代替的に、プロセス制御アルゴリズムプロセッサ102は、リンク316が機能ブロック304に機能的に結合されていると決定することができる。機能ブロック308が、非表示にされるように規定された他の機能ブロックに結合されていないことを決定すると、プロセス制御アルゴリズムプロセッサ102は、機能ブロック308およびリンク316を非表示にする。他の例では、プロセス制御オペレータは、機能ブロック302〜308のうちの1つ以上を同時に非表示にするように選択することができる。
図5は、例示的な非表示にされたALARM1機能ブロック308およびリンク316を有する、図4の例示的なビジュアルオブジェクト図103の図である。機能ブロック308およびリンク316を非表示にすると、ALARM1のビューパラメータ348およびLINK3のビューパラメータ340の非表示フラグが「非表示」に設定され、PID1のビューパラメータ328に結合される。また、ALARM1のビューパラメータ348およびリンク3のビューパラメータ340は、機能ブロック302のOUTパラメータおよび/または交差点に結合され得る。したがって、プロセス制御オペレータが、機能ブロック302のOUTパラメータ上をカーソルでスクロールした場合、非表示にされた機能ブロック304および308のリストが表示される。
その後、プロセス制御オペレータは、機能ブロック306を非表示にするように選択することができる。機能ブロック306を選択すると、プロセス制御アルゴリズムプロセッサ102は、OUTパラメータがキーパラメータであると決定する。OUTパラメータをキーパラメータとして識別すると、例示的なプロセス制御アルゴリズムプロセッサ102は、結合されたリンク310を識別する。その後、プロセス制御アルゴリズムプロセッサ102は、リンク310に結合された機能ブロック302を識別する。機能ブロック306が、非表示にされるように規定された他の機能ブロックに結合されていないことを決定すると、プロセス制御アルゴリズムプロセッサ102は、機能ブロック306およびリンク310を非表示にする。
図6は、例示的な非表示にされたFT−101の機能ブロック306およびリンク310を有する、図5の例示的なビジュアルオブジェクト図103の図である。機能ブロック306およびリンク310を非表示にすると、FT−101のビューパラメータ320およびLINK1のビューパラメータ324の非表示フラグが「非表示」に設定され、PID1のビューパラメータ328に結合される。また、FT−101のビューパラメータ320およびリンク1のビューパラメータ324は、機能ブロック302のINパラメータおよび/または交差点に結合され得る。したがって、プロセス制御オペレータが、機能ブロック302のINパラメータ上をカーソルでスクロールした場合、非表示にされた機能ブロック306のリストが表示される。
プロセス制御オペレータは、非表示にされた機能ブロック304〜308を有するビジュアルオブジェクト図103を格納することができる。その後、ビジュアルオブジェクト図103を開くと、機能ブロック302〜308は非表示にされたままになる。また、プロセス制御オペレータは、機能ブロック304〜308のうちのいずれか1つを、非表示を解除するまたは表示化するように選択することができる。プロセス制御オペレータが、少なくとも1つの機能ブロック304〜308の非表示を解除するように選択した場合は、プロセス制御アルゴリズムプロセッサ102は、関連するビューパラメータを切り離し、ビジュアルオブジェクト図の中で表示されるべき関連するリンクの非表示を解除する。
図7A、図7B、図7C、および図8は、図1および/または図2の例示的なプロセス制御アルゴリズムプロセッサ102、例示的なビジュアルオブジェクト図プロセッサ204、例示的な機能ブロックマネージャ208、例示的なビューパラメータマネージャ210、および/または例示的なビジュアルオブジェクト表示体212を実装するために実行され得る、例示的な方法のフローチャートである。図7A、図7B、図7C、および図8の例示的な方法は、プロセッサ、コントローラおよび/または任意の他の好適な処理デバイスを用いて実行され得る。例えば、図7A、図7B、図7C、および図8の例示的な方法は、フラッシュメモリ、CD、DVD、フロッピー(登録商標)ディスク、ROM、RAM、プログラム可能なROM(PROM)、電子的にプログラム可能なROM(EPROM)、電子的に削除可能なPROM(EEPROM)、光記憶ディスク、光記憶デバイス、磁気記憶ディスク、磁気記憶デバイス等の任意の有形コンピュータ可読媒体、ならびに/または、方法またはデータ構造の形態でプログラムコードおよび/もしくは命令を保持または格納するために使用され得、プロセッサ、汎用もしくは特殊用途のコンピュータ、またはプロセッサを有する他の機械(例えば、図9と関連して以下に考察される例示的なプロセッサプラットフォーム910)によってアクセスされ得る、任意の他の媒体に格納される、コード化された命令の中に実現され得る。上記の組み合わせも、コンピュータ可読媒体の範囲内に含まれる。
方法は、例えば、プロセッサ、汎用コンピュータ、特殊用途コンピュータ、または特殊用途の処理機械に、1つ以上の特定の方法を実装させる命令および/またはデータを含む。代替として、図7A、図7B、図7C、および図8の例示的な方法のいくつかまたはすべては、ASIC(複数を含む)、PLD(複数を含む)、FPLD(複数を含む)、離散論理、ハードウェア、ファームウェア等の任意の組み合わせ(複数を含む)を用いて実装され得る。
また、図7A、図7B、図7C、および図8の例示的な方法のいくつかまたはすべては、代わりに、手動操作を用いて、または前途の技法のうちのいずれかの任意の組み合わせ、例えば、ファームウェア、ソフトウェア、離散論理、および/またはハードウェアの任意の組み合わせとして、実装され得る。さらに、図7A、図7B、図7C、および図8の例示的な動作を実装する多くの他の方法が利用され得る。例えば、ブロックの実行の順序が変更され得る、および/または、説明したブロックのうちの1つ以上が、変更、排除、分割、または組合され得る。また、図7A、図7B、図7C、および図8の例示的な方法のうちのいずれかまたはすべては、例えば、別個の処理スレッド、プロセッサ、デバイス、離散論理、回路等を用いて、順次に実行され得る、および/または、並行して実行され得る。
図7A、図7B、および図7Cの例示的な方法700は、図1のプロセス制御システム100内のビジュアルオブジェクト図103の一部を非表示にする。他の例示的な方法700は、ビジュアルオブジェクト図103の他のセクションにおいて他の機能ブロックを非表示にするために実装され得、または代替として、他のビジュアルオブジェクト図において機能ブロックを非表示にするために実装され得る。また、複数の例示的な方法700は、非表示にされるように順次選択されるビジュアルオブジェクト図(例えば、ビジュアルオブジェクト図103)内の機能ブロックとして、並行してまたは順番に実行され得る。
図7Aの例示的な方法700は、ビジュアルオブジェクト図(例えば、ビジュアルオブジェクト図103)内の第1の機能ブロックが非表示にされるように選択された場合に開始する。例示的な方法700は、第1の機能ブロックの選択を受信する(ブロック702)。別の例では、機能ブロックのグループが非表示にされるように選択され得る。複数の機能ブロックが非表示にされる場合は、例示的な方法700は、選択された機能ブロックのグループ内で第1の機能ブロックを選択し、続けて第1の機能ブロックと、第1の機能ブロックに結合された任意の選択された機能ブロックとを非表示にする。例示的な方法700を実行する時点で、追加的な選択された機能ブロックが存在する場合は、例示的な方法700は、1つ以上の他の選択された第1の機能ブロックを識別し、非表示にされるように選択された他の第1の機能ブロックおよび任意の結合された機能ブロックを非表示にすることができる。例えば、2つの異なるグループの機能ブロックが非表示にされるように選択され得る。グループのそれぞれが、相互接続された機能ブロックを含む。例示的な方法700は、第1のグループにおいて第1の機能ブロックを選択し、第1のグループにおいて選択された機能ブロックを続けて非表示にする。その後、例示的な方法700は、第2のグループにおいて第1の機能ブロックを選択し、第2のグループにおいて選択された機能ブロックを続けて非表示にする。他の例示的な実装において、例示的な方法700は、機能ブロックのそれぞれのグループを同時に非表示にすることができる。
図7Aの例示的な方法700は、第1の機能ブロックに関連する第1のビューパラメータが識別された場合に継続する(ブロック704)。その後、例示的な方法700は、第1の機能ブロック内のキープロセス制御パラメータを決定する(ブロック706)。キープロセス制御パラメータは、プロセス制御システム100のオペレータによって規定され得る、および/または、第1の機能ブロックのために事前に定義され得る。その後、例示的な方法700は、キープロセス制御パラメータに対応するリンクを決定する(ブロック708)。リンクは、第1の機能ブロック内のキープロセス制御パラメータを含むエンドポイントを有するリンクについて、リンクのデータベースを検索することにより決定され得る。代替として、リンクは、該リンクを識別するキーパラメータ内の、および/または該パラメータに関連する、参照によって決定され得る。次に、例示的な方法700は、リンクに関連する第2のビューパラメータを識別する(ブロック710)。
その後、例示的な方法700は、リンクのエンドポイントによって参照された第2の機能ブロック(例えば、親機能ブロック)内の交差点を決定する(ブロック712)。交差点は、第1の機能ブロック内のキープロセス制御パラメータにリンクを介して結合された第2の機能ブロック内のプロセス制御パラメータに対応する。続いて、例示的な方法700は、第2の機能ブロックに関連する第3のビューパラメータを識別する(ブロック714)。次に、例示的な方法700は、第1の機能ブロックに関連する第1のビューパラメータおよびリンクに関連する第2のビューパラメータを、第2の機能ブロックに関連する第3のビューパラメータに結合させる(ブロック716)。
その後、例示的な方法700は、第2の機能ブロック内の交差点で、結合された指示を表示する(ブロック718)。結合された指示は、ハイライトされたアイコンの画像、押下されたボタンの画像、および/または非表示にされた機能ブロックの任意の他の画像表現を含み得る。また、例示的な方法700は、結合された指示に隣接するテキストを表示することにより、非表示にされる第1の機能ブロックのビジュアル表現を表示することができる。テキストは、第1の機能ブロックの名称、第1の機能ブロックに対応する識別番号、キープロセス制御パラメータの識別番号または名称、キープロセス制御パラメータのステータス、キープロセス制御パラメータの位置、および/またはキープロセス制御パラメータに関連する値に対応し得る。
図7Bの例示的な方法700は、結合された指示を第2の機能ブロック内の交差点で表示した時点で、リンクが非表示である場合に、継続する(ブロック720)。リンクは、表示からリンクを除去することによって、ビジュアルオブジェクト図からリンクを除去することによって、および/またはリンクに関連する第2のビューパラメータ内に非表示フラグを設定することによって、非表示にされ得る。次に、例示的な方法700は、第1の機能ブロック内に追加のプロセス制御パラメータが存在するかどうかを決定する(ブロック722)。第1の機能ブロック内に追加のプロセス制御パラメータが存在しない場合は、例示的な方法700は、第1の機能ブロックを非表示にして(ブロック724)、終了する。第1の機能ブロックは、表示から第1の機能ブロックを除去することによって、ビジュアルオブジェクト図から第1の機能ブロックを除去することによって、および/または第1の機能ブロックに関連する第1のビューパラメータ内に非表示フラグを設定することによって、非表示にされ得る。
しかしながら、第1の機能ブロック内に追加のプロセス制御パラメータが存在する場合は(ブロック722)、例示的な方法700は、追加のプロセス制御パラメータのうちの1つを選択して、選択されたプロセス制御パラメータに関連する第2のリンクを決定する(ブロック726)。その後、例示的な方法700は、選択されたプロセス制御パラメータに関連する第2のリンクが、第2の機能ブロック内の交差点を参照するかどうかを決定する(ブロック728)。リンクが、第2の機能ブロック以外の機能ブロック(例えば、第1の機能ブロックの親以外の機能ブロック)を参照する場合は、例示的な方法700は、その後、親以外の機能ブロックが非表示にされるかどうかを決定する(ブロック730)。
親以外の機能ブロックが非表示にされない場合は、例示的な方法700は、第2のリンクを、第2の機能ブロックの第2の交差点に結合させる(ブロック732)。第2の交差点は、第1の機能ブロックからのリンクを結合させた交差点と同じであり得るか、または、代替として、第2の交差点は、第2の機能ブロック内の異なるプロセス制御パラメータに対応し得る。第2のリンクを第2の交差点に結合させることによって、例示的な方法700は、非表示にされていない親以外の機能ブロックと第2の機能ブロックとの間のリンクを表示する。いくつかの例示的な実装では、方法700は、リンクに関連するビューパラメータを第2の交差点に結合させることにより、第2のリンクを第2の交差点に結合させることができる。また、例示的な方法700は、結合された指示を第2の交差点で表示する(ブロック734)。その後、例示的な方法700は、例示的な方法700によって処理されていない第1の機能ブロック内に、追加の任意のプロセス制御パラメータが存在するかどうかを決定する(ブロック722)。
第1の機能ブロック内の選択されたプロセス制御パラメータに関連する第2のリンクが、第2の機能ブロック内の交差点を参照する場合(ブロック728)、例示的な方法700は、第2のリンクに関連するビューパラメータを、第2の機能ブロックに関連する第3のビューパラメータに結合させる(ブロック736)。その後、例示的な方法700は、第2の機能ブロック内の対応する交差点で、結合された指示を表示し(ブロック738)、リンクを非表示にする(ブロック740)。例示的な方法700は、例示的な方法700によって処理されていない任意の追加のプロセス制御パラメータが、第1の機能ブロック内に存在するかどうかを決定することにより(ブロック722)、図7Bにおいて継続する。
親以外の機能ブロックが非表示にされる場合は(ブロック730)、例示的な方法700は、親以外の機能ブロックに関連するビューパラメータを、第2の機能ブロックに関連する第3のビューパラメータに結合させる(ブロック742)。その後、例示的な方法700は、第2の機能ブロック内の対応する交差点で、結合された指示を表示し(ブロック744)、第2のリンクおよび親以外の機能ブロックを非表示にする(ブロック746)。
また、方法700は、任意の追加のプロセス制御パラメータおよび対応するリンクが、親以外の機能ブロック内に存在するかどうかを決定することができる。追加のプロセス制御パラメータが存在する場合は、方法700は、階層プロセスにおいて、どの他の機能ブロックおよび関連するリンクが非表示にされるべきであるかの決定を継続することが可能である。親以外の機能ブロックおよび親以外の機能ブロックにリンクされた任意の他の機能ブロックを非表示にすると、例示的な方法700は、例示的な方法700によって処理されていない任意の追加のプロセス制御パラメータが、第1の機能ブロック内に存在するかどうかを決定することにより(ブロック722)、図7Bにおいて継続する。第1の機能ブロック内に追加のプロセス制御パラメータが存在しない場合は、例示的な方法700は、第1の機能ブロックを非表示にして(ブロック724)、終了する。
図8の例示的な方法800は、図1のプロセス制御システム100内で、ビジュアルオブジェクト図103の一部の非表示を解除する。他の例示的な方法800は、ビジュアルオブジェクト図103の他のセクションにおいて、他の機能ブロックの非表示を解除するために実装され得、また、代替として、他のビジュアルオブジェクト図において、機能ブロックの非表示を解除するために実装され得る。また、複数の例示的な方法800は、非表示を解除されるように順次選択されるビジュアルオブジェクト図(例えば、ビジュアルオブジェクト図103)内の機能ブロックとして、並行してまたは順番に実行され得る。
図8の例示的な方法800は、ビジュアルオブジェクト図(例えば、図1のビジュアルオブジェクト図103)の選択が受信された場合に開始する(ブロック802)。その後、例示的な方法800は、選択されたビジュアルオブジェクト図を開く(ブロック804)。方法800は、ワークステーション(例えば、ワークステーション104)のディスプレイ内で、選択されたビジュアルオブジェクト図を開くことができる。また、ビジュアルオブジェクト図を開くことにより、例示的な方法800は、非表示にされるように規定されていない機能ブロックおよび対応するリンクを表示する。
例示的な方法800は、非表示にするように設定されていないビューパラメータを有する機能ブロック(例えば、階層的なビジュアルオブジェクト図の構造における、親機能ブロックおよび/または親以外の機能ブロック)を識別することによって継続する(ブロック806)。その後、例示的な方法800は、非表示にするように設定されていないビューパラメータに関連する機能ブロックに対応するリンクを識別する(ブロック808)。次に、例示的な方法800は、非表示にするように設定されていないビューパラメータに関連する機能ブロックおよび/またはリンクを表示する(ブロック810)。例示的な方法800は、非表示フラグのステータスおよび/または関連するビューパラメータ内の非表示フィールドをチェックすることにより、非表示にするように設定されていないリンクおよび/または機能ブロックを識別することができる。
その後、例示的な方法800は、非表示を解除する機能ブロックの選択を受信したかどうかを決定する(ブロック812)。いずれかの機能ブロックの非表示を解除するように選択された機能ブロックが存在しない場合には、例示的な方法800は終了する。しかしながら、例示的な方法800が、少なくとも1つの非表示を解除する機能ブロックの選択を受信した場合は(ブロック812)、方法800は、非表示を解除するように選択された機能ブロックと、通信可能に結合された非表示を解除された第1の機能ブロック(例えば、親機能ブロック)との間のリンクを決定する(例えば、識別する)(ブロック814)。例示的な方法800は、交差点に関連する非表示にされた機能ブロックに対応する1つ以上の指示を表示するために、第1の機能ブロック内の交差点を選択しているオペレータから、1つ以上の機能ブロックの非表示を解除する選択を受信することができる。その後、オペレータは、非表示にされた機能ブロックの指示を選択して、その機能ブロックの非表示を解除することができる。
非表示が解除されるように選択された機能ブロックに関連するリンクを決定すると、例示的な方法800は、選択された機能ブロックおよび/または対応するリンクに関連するビューパラメータを、第1の機能ブロックに関連するビューパラメータから切り離す(ブロック816)。その後、例示的な方法800は、選択された機能ブロックおよび/または対応するリンクを表示する(ブロック818)。対応するリンクは、選択された機能ブロックと第1の機能ブロックとの間のリンクを含み得る。
次に、例示的な方法800は、非表示が解除されるように選択された追加の機能ブロックが存在するかどうかを決定する(ブロック820)。非表示が解除されるように選択されたが、まだ非表示が解除されていない、少なくとも1つの追加の機能ブロックが存在する場合には、例示的な方法800は、非表示を解除するように選択された機能ブロックと、通信可能に結合された非表示が解除された機能ブロックとの間のリンクを決定する(ブロック814)。しかしながら、非表示を解除する追加の機能ブロックが存在しない場合には(ブロック820)、例示的な方法800は終了する。
図9は、本明細書に説明される例示的な方法および装置を実装するために使用され得る、例示的なプロセッサシステム910のブロック図である。例えば、例示的なプロセッサシステム910に類似するまたはそれと同一のプロセッサシステムは、図1および/または図2の例示的なプロセス制御アルゴリズムプロセッサ102、例示的なビジュアルオブジェクト図プロセッサ204、例示的なプロセス制御プロセッサ206、例示的な機能ブロックマネージャ208、および/または例示的なビューパラメータマネージャ210を実装するために使用され得る。例示的なプロセッサシステム910は、複数の周辺機器、インターフェース、チップ、メモリ等を含むように以下に説明されているが、これらの要素のうちの1つ以上は、例示的なプロセス制御アルゴリズムプロセッサ102、例示的なビジュアルオブジェクト図プロセッサ204、例示的なプロセス制御プロセッサ206、例示的な機能ブロックマネージャ208、および/または例示的なビューパラメータマネージャ210のうちの1つ以上を実装するために使用される他の例示的なプロセッサシステムから、省略され得る。
図9に示すように、プロセッサシステム910は、相互接続バス914に結合されたプロセッサ912を含む。プロセッサ912はレジスタセットまたはレジスタ空間916を含み、それは図9において完全にオンチップとして描かれているが、しかし、代替として、完全にまたは部分的にオフチップとして設置され、専用の電気的接続を介して、および/または相互接続バス914を介して、プロセッサ912に直接結合されていてもよい。プロセッサ912は、任意の好適なプロセッサ、処理ユニット、またはマイクロプロセッサであり得る。図9には示していないが、システム910は、マルチプロセッサシステムであり得、したがって、プロセッサ912と同等であるかまたはそれに類似し、相互接続バス914に通信可能に結合される、1つ以上の追加のプロセッサを含み得る。
図9のプロセッサ912は、メモリコントローラ920および周辺入力/出力(I/O)コントローラ922を含む、チップセット918に結合されている。周知のとおり、典型的には、チップセットは、I/Oおよびメモリ管理機能、ならびにチップセット918に結合された1つ以上のプロセッサによってアクセス可能であるまたは使用される、複数の汎用および/または特殊用途レジスタ、タイマー等を提供する。メモリコントローラ920は、プロセッサ912(または、複数のプロセッサが存在する場合は複数のプロセッサ)が、システムメモリ924および大容量メモリ925にアクセスできるようにする機能を実施する。
システムメモリ924は、例えば、スタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)、フラッシュメモリ、リードオンリーメモリ(ROM)等の、任意の所望の種類の揮発性および/または非揮発性メモリを含み得る。大容量メモリ925は、任意の所望の種類の大容量記憶デバイスを含み得る。例えば、例示的なプロセッサシステム910がプロセス制御アルゴリズムプロセッサ102(図2)を実装するために使用される場合は、大容量メモリ925は、ハードディスクドライブ、光学ドライブ、テープ記憶デバイス等を含み得る。代替として、例示的なプロセッサシステム910が機能ブロックデータベース205を実装するために使用される場合は、メモリ220、データパラメータメモリ222、および/またはビューパラメータメモリ224、大容量メモリ925は、ソリッドステートメモリ(例えば、フラッシュメモリ、RAMメモリ等)、磁気メモリ(例えば、ハードドライブ)、または機能ブロックデータベース205における大容量記憶に好適な任意の他のメモリ、メモリ220、データパラメータメモリ222、および/またはビューパラメータメモリ224を含み得る。
周辺I/Oコントローラ922は、プロセッサ912が、周辺入力/出力(I/O)デバイス926および928ならびにネットワークインターフェース930と、周辺I/Oバス932を介して通信できるようにする機能を実施する。I/Oデバイス926および928は、例えば、キーボード、ディスプレイ(例えば、液晶ディスプレイ(LCD)、陰極線管(CRT)ディスプレイ等)、ナビゲーションデバイス(例えば、マウス、トラックボール、容量性タッチパッド、ジョイスティック等)等の、任意の所望の種類のI/Oデバイスであり得る。ネットワークインターフェース930は、例えば、プロセッサシステム910が別のプロセッサシステムと通信できるようにする、イーサネット(登録商標)デバイス、非同期転送モード(ATM)デバイス、802.11デバイス、DSLモデム、ケーブルモデム、セルラーモデム等であり得る。
メモリコントローラ920およびI/Oコントローラ922は、図9においてチップセット918内の別個の機能ブロックとして描かれているが、これらのブロックによって実施される機能は、単一の半導体回路に統合され得るか、または、2つ以上の別個の集積回路を用いて実装され得る。
上で説明した例示的な方法および/または装置の少なくともいくつかは、コンピュータプロセッサ上で起動する1つ以上のソフトウェアおよび/またはファームウェアプログラムを用いて実装される。しかしながら、特定用途向け集積回路、プログラム可能なロジックアレイおよび他のハードウェアデバイスを含むがこれに限定されない、専用のハードウェアの実装も、同様に、本明細書に説明される例示的な方法および/または装置の一部またはすべてを、全体的であれ部分的であれ、実装するために構成され得る。さらに、分散処理またはコンポーネント/オブジェクト分散処理、並列処理、または仮想機械処理を含むがこれに限定されない、代替のソフトウェアの実装も、本明細書に説明される例示的な方法および/またはシステムを実装するために構成され得る。
本明細書に説明される例示的なソフトウェアおよび/またはファームウェアの実装は、磁気媒体(例えば、磁気ディスクまたはテープ)、光ディスク等の光磁気もしくは光学媒体、あるいはメモリカードまたは1つ以上のリードオンリー(非揮発性)メモリ、ランダムアクセスメモリ、もしくは他の書き換え可能(揮発性)メモリを収容する他のパッケージ等のソリッドステート媒体、等の有形記憶媒体上に格納されることに、留意すべきである。したがって、本明細書に説明される例示的なソフトウェアおよび/またはファームウェアは、上で説明したような有形記憶媒体または後続の記憶媒体の上に格納され得る。特定の基準およびプロトコルに準拠して、上記明細書が例示的なコンポーネントおよび機能を説明する範囲で、本特許の範囲は、かかる基準およびプロトコルに限定されないことを理解されたい。例えば、インターネットおよび他のパケット交換型ネットワーク伝送(例えば、伝送制御プロトコル(TCP)/インターネットプロトコル(IP)、ユーザデータグラムプロトコル(UDP)/IP、ハイパーテキストマークアップ言語(HTML)、ハイパーテキスト転送プロトコル(HTTP))のそれぞれの基準は、現在の最先端の例を代表するものである。かかる基準は、同じ一般的な機能性を有する、より迅速またはより効率的な均等物によって周期的に取って代わられる。したがって、同じ機能を有する交換基準およびプロトコルは、本特許によって企図されるものと均等物であり、添付の特許請求の範囲の範疇に含まれることが意図される。
また、本特許は、ハードウェア上で実行されるソフトウェアまたはファームウェアを含む例示的な方法および装置を開示するが、かかるシステムは単なる例示であって、限定的であると見なされるべきではないことに留意されたい。例えば、これらのハードウェアおよびソフトウェアコンポーネントのうちのいずれかまたはすべては、ハードウェアのみ、ソフトウェアのみ、ファームウェアのみ、またはハードウェア、ファームウェアおよび/またはソフトウェアの何らかの組み合わせにおいて、実現され得ることが企図される。したがって、上記明細書では例示的な方法、システム、および機械アクセス可能媒体について説明したが、その例はかかるシステム、方法、および機械アクセス可能媒体を実装するための唯一の様式ではない。つまり、特定の例示的な方法、システム、および機械アクセス可能媒体を本明細書に説明してきたが、本特許の対象範囲はこれらに限定されるものではない。それどころか、本特許は、文言上、または均等論の下で、適正に添付の特許請求の範囲内に含まれるすべての方法、システム、および機械アクセス可能な媒体を対象とする。