IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ フィッシャー−ローズマウント システムズ,インコーポレイテッドの特許一覧

特許7398189方法、コンピューティングデバイスおよびシステム
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-06
(45)【発行日】2023-12-14
(54)【発明の名称】方法、コンピューティングデバイスおよびシステム
(51)【国際特許分類】
   G05B 23/02 20060101AFI20231207BHJP
【FI】
G05B23/02 Z
【請求項の数】 15
【外国語出願】
(21)【出願番号】P 2018171534
(22)【出願日】2018-09-13
(65)【公開番号】P2019075098
(43)【公開日】2019-05-16
【審査請求日】2021-09-13
(31)【優先権主張番号】62/558,345
(32)【優先日】2017-09-13
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】62/567,225
(32)【優先日】2017-10-02
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】512132022
【氏名又は名称】フィッシャー-ローズマウント システムズ,インコーポレイテッド
(74)【代理人】
【識別番号】110002860
【氏名又は名称】弁理士法人秀和特許事務所
(74)【代理人】
【識別番号】100113608
【弁理士】
【氏名又は名称】平川 明
(74)【代理人】
【識別番号】100138357
【弁理士】
【氏名又は名称】矢澤 広伸
(72)【発明者】
【氏名】アーロン シー. ジョーンズ
(72)【発明者】
【氏名】マイケル ジー. オット
(72)【発明者】
【氏名】ジュリアン ケー. ナイドー
(72)【発明者】
【氏名】デボラ アール. コルクレイジャー
(72)【発明者】
【氏名】カレン ジョンソン
【審査官】影山 直洋
(56)【参考文献】
【文献】特開平05-080813(JP,A)
【文献】特開2015-022511(JP,A)
【文献】特開2012-084162(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 23/02
(57)【特許請求の範囲】
【請求項1】
モジュール制御システムの構成を効率的に管理するための方法であって、
1つ以上のプロセッサによって、ワークステーションとモジュール制御システムとの間の通信連結を検出することと、
前記検出された通信連結に応答して、前記ワークステーションのメモリに格納されたアクティブプロジェクトが前記モジュール制御システムのメモリに格納された保存されたプロジェクトと一致するか否かを判定することであって、前記アクティブプロジェクト及び前記保存されたプロジェクトの各々が、前記モジュール制御システムの動作を制御するためのそれぞれの調整されたデータセットを含む、判定することと、
前記アクティブプロジェクトと前記保存されたプロジェクトとが一致しない場合に、
前記1つ以上のプロセッサによって、前記アクティブプロジェクトが前記モジュール制御システムに適正であるか否かを判定し、
前記アクティブプロジェクトが前記モジュール制御システムに対して不適正である場合に、前記モジュール制御システムの前記メモリから前記ワークステーションの前記メモリ内の前記アクティブプロジェクトに、前記保存されたプロジェクトの少なくとも一部分を転送するための制御を、対話型ユーザインターフェースを介して自動的に提供することと、を含む、方法。
【請求項2】
前記アクティブプロジェクトが前記モジュール制御システムに不適正である場合に、
(i)前記ワークステーションが、前記モジュール制御システムの前記メモリ内に前記アクティブプロジェクトを保存することを防止することと、
(ii)前記ワークステーションが、分散型制御システムの1つ以上のプロトコルを使用して、通信セッションを確立することを防止することと、
の少なくとも1つをさらに含む、請求項1に記載の方法。
【請求項3】
前記アクティブプロジェクトが前記モジュール制御システムに対して不適正である場合に、前記ワークステーションの前記メモリに格納された複数の候補アクティブプロジェクトの中から異なるアクティブプロジェクトを選択するための制御を、前記ユーザインターフェースを介して自動的に提供することをさらに含む、請求項1または2に記載の方法。
【請求項4】
前記モジュール制御システムの前記メモリに格納された前記保存されたプロジェクトに割り当てられた名前に基づいて、前記モジュール制御システムの前記メモリから転送された前記保存されたプロジェクトの前記少なくとも一部分について提案された名前を自動的に生成することをさらに含む、請求項3に記載の方法。
【請求項5】
前記アクティブプロジェクトと前記保存されたプロジェクトとが一致しない場合に、
前記アクティブプロジェクトと前記保存されたプロジェクトとの間で競合する項目のリストを生成することと、
前記アクティブプロジェクトに転送するための前記項目のリスト内の個々の項目を選択するための制御を、前記ユーザインターフェースを介して提供することと、をさらに含む、請求項1から4のいずれか1項に記載の方法。
【請求項6】
前記項目のリスト内の各項目について、
(i)項目名、(ii)項目タイプ、(iii)構成タイプ、及び(iv)前記項目の最後の編集のタイムスタンプのうちの少なくとも1つの標示を提供することをさらに含む、請求項5に記載の方法。
【請求項7】
前記項目のリストは、第1の項目のリストであり、
前記方法は、前記アクティブプロジェクトと前記保存されたプロジェクトとが一致しない場合に、
前記保存されたプロジェクトに含まれ、かつ前記アクティブプロジェクトに含まれない第2の項目のリストを生成することと、
前記アクティブプロジェクトに転送するための前記第2の項目のリスト内の個々の項目を選択するための制御を、前記ユーザインターフェースを介して提供することと、をさらに含む、請求項5または6に記載の方法。
【請求項8】
前記アクティブプロジェクトと前記保存されたプロジェクトとが一致するか否かを判定することは、前記1つ以上のプロセッサによって、前記アクティブプロジェクト及び前記保存されたプロジェクトのそれぞれのタイムスタンプを比較することを含む、請求項1から7のいずれか1項に記載の方法。
【請求項9】
前記モジュール制御システムから前記ワークステーションを切断するためのコマンドを、前記ユーザインターフェースを介して受信することと、
前記コマンドに応答して、前記保存されたプロジェクトの新しいバージョンとして、前記アクティブプロジェクトの少なくとも一部分を前記ワークステーションの前記メモリに転送するための制御を自動的に提供することと、をさらに含む、請求項1から8のいずれか1項に記載の方法。
【請求項10】
前記保存されたプロジェクトの新しいバージョンとして、前記アクティブプロジェクトの少なくとも一部分を前記ワークステーションの前記メモリに転送するための第1の制御を提供することと、
前記モジュール制御システムが前記保存されたプロジェクトのデータに従って動作し始めるように、前記モジュール制御システムの前記メモリに格納された前記アクティブプロジェクトを展開するための第2の制御を提供することと、をさらに含む、請求項1に記載の方法。
【請求項11】
前記検出された通信連結に応答して、
前記モジュール制御システムにアクセスするための認証情報を、前記ユーザインターフェースを介して自動的に要求することと、
前記認証情報が不適正である場合に、前記モジュール制御システムへのアクセスを防止することと、をさらに含む、請求項1から10のいずれか1項に記載の方法。
【請求項12】
前記検出された通信連結に応答して、
前記ワークステーションのネットワーク設定が適正であるか否かを判定することと、
前記ワークステーションの前記ネットワーク設定が不適正である場合に、訂正されたネットワーク設定を適用するために対話型制御を提供することと、をさらに含む、請求項1から11のいずれか1項に記載の方法。
【請求項13】
前記モジュール制御システムの前記メモリから前記ワークステーションの前記メモリに、前記保存されたプロジェクトの少なくとも一部分を転送するための制御を提供することは、前記モジュール制御システムの前記メモリから、前記ワークステーションの前記メモリに保存される新しいアクティブプロジェクトに、前記保存されたプロジェクトの全体を転送する制御を提供することを含む、請求項1から11のいずれか1項に記載の方法。
【請求項14】
コンピューティングデバイスであって、
1つ以上のプロセッサと、
ユーザインターフェースと、
前記コンピューティングデバイスをモジュール制御システムに通信可能に連結するインターフェースと、
(i)モジュール制御システムの動作を制御するための調整されたデータセットを含む少なくとも1つのアクティブプロジェクトと、(ii)前記1つ以上のプロセッサによって実行されるときに、請求項1から13のいずれか1項に記載の方法を実行するように構成されたモジュール制御システムアシスタントを実装する命令と、を格納する非一時的メモリと、を備える、コンピューティングデバイス。
【請求項15】
システムであって、
モジュール制御システムであって、
前記モジュール制御システムの制御論理を実装するモジュールコントローラであって、特に分散型制御システムのプラットフォームで使用されるために開発された、コントローラと、
前記制御論理に従ってプロセスプラント内で物理的機能を行うように構成される装置と、
前記モジュール制御システムの動作を制御するための調整されたデータセットを含む保存されたプロジェクトを格納するメモリと、を含む、モジュール制御システムと、
スタンドアロンワークステーションであって、
1つ以上のプロセッサと、
ユーザインターフェースと、
前記スタンドアロンワークステーションを前記モジュール制御システムに通信可能に連結するインターフェースと、
(i)少なくとも1つのアクティブプロジェクトと、(ii)前記1つ以上のプロセッサによって実行されるときに、前記スタンドアロンワークステーションの前記メモリ内の前記少なくとも1つのアクティブプロジェクトと前記モジュール制御システムの前記メモリ内の前記保存されたプロジェクトとの間のデータを同期させるように構成されたモジュール制御システムアシスタントを実装する命令と、をその上に格納する非一時的メモリと、を含むスタンドアロンワークステーションと、を備える、システム。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本出願は、2017年9月13日及び2017年10月2日にそれぞれ出願された米国仮出願第62/558,345号及び第62/567,225号に対する優先権を主張するものであり、これらの開示全体は、参照により本明細書に明示的に組み込まれる。
【0002】
本開示は、概して、プロセス制御においてスキッドマウントシステム等のモジュール制御システムを使用することに関し、具体的には、スタンドアロンモードで動作するスキッドマウントシステムの構成を効率的に管理することに関する。
【背景技術】
【0003】
今日、様々な業界で使用されているモジュール制御システムは、水の煮沸、液体のろ過、または熱交換の制御等の特定の機能を提供することのできる完全制御システムである。モジュール制御システムは、典型的には、スキッドマウントシステム、または単に「スキッド」として実装され、そう呼ばれる理由は、システムがフレーム内に閉じ込められ、容易に運ばれるからである。スキッドは、分解されて再び組み立てられることなく一体型ユニットとして工場に供給され、典型的には、製造業者によって事前に構成され得る。スキッドは、概して、例えば、プログラマブル論理コントローラ(PLC)、弁またはボイラー等の特殊装置、及び圧力または温度センサ等のセンサを含む。
【0004】
一方、分散型制御システム(DCS)は、化学、石油化学、精製、製薬、飲食品、電力、セメント、上下水道、油及びガス、パルプ及び紙、ならびに鋼鉄を含む様々なプロセス産業においても使用され、単一の場所または遠隔地で動作するバッチ、フェドバッチ、及び連続プロセスを制御するために使用される。プロセスプラントは、典型的には、アナログ、デジタル、もしくはアナログ/デジタル一体型バスを介して、または無線通信リンクもしくはネットワークを介して、1つ以上のフィールドデバイスと通信可能に連結した1つ以上のプロセスコントローラを含む。集合的には、様々なデバイスは、監視、制御、及びデータ収集機能を行って、プロセス、安全停止システム、火災及びガス検出システム、機械健全性監視システム、保守システム、判定サポート、ならびに他のシステムを制御する。
【0005】
例えば、バルブ、バルブポジショナ、スイッチ、及び送信器(例えば、温度、圧力、レベル、及び流速センサ)であり得るフィールドデバイスは、プロセス環境内に配置され、概して、バルブの開放または閉鎖、プロセスパラメータの測定等の物理的機能またはプロセス制御機能を行って、プロセスプラントまたはシステム内で実行中の1つ以上のプロセスを制御する。周知のFieldbusプロトコルに準拠するフィールドデバイス等のスマートフィールドデバイスは、制御計算、アラーム機能、及びコントローラ内で一般に実装される他の制御機能も行い得る。プロセスコントローラも、典型的には、プラント環境内に位置し、このプロセスコントローラは、フィールドデバイスによって行われるプロセス測定を示す信号及び/またはフィールドデバイスに関する他の情報を受信し、例えば、プロセス制御判定を行い、受信した情報に基づいて制御信号を生成し、HART(登録商標)、WirelessHART(登録商標)、及びFOUNDATION(登録商標)Fieldbusフィールドデバイス等のフィールドデバイスで行われる制御モジュールまたはブロックと連携する、異なる制御モジュールを起動するコントローラアプリケーションを実行する。コントローラの制御モジュールは、通信線またはリンクを通じて、制御信号をフィールドデバイスに送信し、それによって、プロセスプラントまたはシステムの少なくとも一部分の動作を制御する。
【0006】
フィールドデバイス及びコントローラからの情報は、制御室もしくはより厳しいプラント環境から離れた他の場所に典型的に配置される、オペレータワークステーション、パーソナルコンピュータもしくはコンピューティングデバイス、データヒストリアン、レポートジェネレータ、集中データベース、または他の集中管理コンピューティングデバイス等の1つ以上の他のハードウェアデバイスに対して、通常、データハイウェイを通じて利用可能になる。これらのハードウェアデバイスの各々は、典型的には、プロセスプラントにわたって、またはプロセスプラントの一部分にわたって集中化される。これらのハードウェアデバイスは、例えば、オペレータが、プロセス制御ルーチンの設定の変更、コントローラもしくはフィールドデバイス内の制御モジュールの動作の修正、プロセスの現在の状態の閲覧、フィールドデバイス及びコントローラにより生成されたアラームの閲覧、担当者の訓練もしくはプロセス制御ソフトウェアの試験を目的としたプロセスの動作のシミュレーション、構成データベースの保守及び更新等の、プロセスの制御及び/またはプロセスプラントの動作に関する機能を行うことを可能にし得るアプリケーションを起動する。ハードウェアデバイス、コントローラ、及びフィールドデバイスが利用するデータハイウェイは、有線通信パス、無線通信パス、または有線及び無線通信パスの組み合わせを含んでもよい。
【0007】
例として、Emerson Process Managementによって販売されている、DeltaV(商標)制御システムは、プロセスプラント内の多様な場所に位置する異なるデバイス内に格納され、それらの異なるデバイスによって実行される多数のアプリケーションを含む。1つ以上のワークステーションまたはコンピューティングデバイスに存在する構成アプリケーションは、ユーザによる、プロセス制御モジュールの作成または変更、及びデータハイウェイを介した、これらのプロセス制御モジュールの、専用分散型コントローラへのダウンロードを可能にする。典型的には、これらの制御モジュールは、通信可能に相互接続された機能ブロックで構成され、これらの機能ブロックは、それに対する入力に基づき制御スキーム内で機能を行い、出力を制御スキーム内の他の機能ブロックに提供するオブジェクト指向プログラミングプロトコル内のオブジェクトである。また、構成アプリケーションは、データをオペレータに対して表示するため、かつプロセス制御ルーチン内の設定点等の設定のオペレータによる変更を可能にするために閲覧アプリケーションが使用するオペレータインターフェースを、構成エンジニアが作成または変更することを可能にし得る。各専用コントローラ、及び一部の場合においては、1つ以上のフィールドデバイスは、実際のプロセス制御機能を実装するために、それらに割り当てられてダウンロードされた制御モジュールを実行するそれぞれのコントローラアプリケーションを格納及び実行する。閲覧アプリケーションは、1つ以上のオペレータワークステーション(またはオペレータワークステーション及びデータハイウェイと通信接続された1つ以上のリモートコンピューティングデバイス)上で実行されてもよく、この閲覧アプリケーションは、コントローラアプリケーションからデータハイウェイを介してデータを受信し、ユーザインターフェースを使用してこのデータをプロセス制御システム設計者、オペレータ、またはユーザに表示して、オペレータのビュー、エンジニアのビュー、技術者のビュー等の多数の異なるビューのうちのいずれかを提供してもよい。データヒストリアンアプリケーションは、典型的には、データハイウェイをわたって提供されたデータの一部または全てを収集及び格納するデータヒストリアンデバイスに格納され、それによって実行される一方で、構成データベースアプリケーションは、現在のプロセス制御ルーチン構成及びそれに関連付けられたデータを格納するために、データハイウェイに取り付けられたさらに離れたコンピュータで起動し得る。あるいは、構成データベースは、構成アプリケーションと同じワークステーションに位置してもよい。
【0008】
プロセス制御及び産業オートメーションシステムで動作するデバイスは、有線または無線で相互接続され、FOUNDATION(商標)Fieldbus、HART(登録商
標)、またはProfibus等の産業通信プロトコルを使用して通信し得る。さらに、Modbus等のプロトコルは、PLCを相互接続するために開発されている。またさらに、標準産業オートメーションプロトコルに加えて、プロセス制御システム内のノードを相互接続するための独自のプロトコルが存在する。DeltaVはそのようなプロトコルの一例である。一般に、これらのプロトコルは、測定、アラート、及び状態報告、プロセス変数またはオートメーションパラメータに影響を及ぼすコマンド、デバイスをアクティブ化または非アクティブ化するコマンド等を搬送するためのフォーマットを指定する。典型的な産業通信プロトコルはまた、プロトコルの構文に従って特定のデバイスの製造業者によって定義された定義済みコマンドまたは複数の定義済みコマンドを介して、デバイス構成をサポートする。
【0009】
一般に、分散型制御システムは非常に複雑で機能豊富である。ストレージ及びデプロイメントは、典型的には、DCSで分離されており、多数のデータベースは構成データを格納し、共有アクセスポイントがない場合がある。DCSとは対照的に、PLCは、典型的には、簡易的なソフトウェア、限られた機能、及び非常に簡易的なプロジェクトストレージを有し、ランタイムデプロイメントと緊密に連結されることが多い。さらに、PLCデバイスは、典型的には、ランタイム及び構成データをデバイス自体に格納する。
【0010】
モジュール制御システムは、従来のPLCよりも堅牢であるが、DCSのように多くの機能は含まれておらず、モジュール制御システムの管理に利用可能であるデータベース及びソフトウェアアプリケーションがそれほど多くない。モジュール制御システムがDCSのノードとしてではなくスタンドアロンモードで動作する状況では、エンジニアは、複雑なソフトウェアスイートまたは多数のデータベースの複雑さを伴わずに、DCSで利用可能な機能に類似した機能にアクセスすることを望み得る。
【発明の概要】
【0011】
スキッドマウントシステム等の本開示のモジュール制御システムは、スタンドアロンモードで、場合によっては分散型制御システム内のノードとして動作するように構成される。モジュール制御システムは、他のコントローラとは独立してモジュール制御システムの制御論理を実行することができるモジュールコントローラを含む。モジュール制御システムがスタンドアロンモードで動作するとき、オペレータは、例えば、ラップトップコンピュータまたはタブレットコンピュータ等のコンピューティングデバイス上で実装されるワークステーションを使用してモジュール制御システムにアクセスすることができる。以下スキッドアシスタントまたはモジュールアシスタントと呼ばれるアシスタントソフトウェアアプリケーションによって、モジュール制御システムの構成及び管理が容易になる。様々な実装及び/またはシナリオでは、モジュールアシスタントによって、オペレータがモジュール制御システム構成を更新し、構成の特定のバージョンとの同期を確認し、修正またはコピーのための構成をリトリーブし、構成にエラーが含まれているか否かを判定することが可能になる。いくつかの実装では、アシスタントソフトウェアアプリケーションは、モジュール制御システムに新しい構成を提供するタイミングを制御して、モジュールコントローラがモジュール制御システムのメモリにアクセスする頻度を減少させるが、いくつかの実装では比較的遅い。他の実装では、アシスタントソフトウェアアプリケーションは、即座に、例えば、実質的にリアルタイムで、構成データをモジュール制御システムに提供する。
【0012】
スキッドアシスタントは、ワークステーションと、モジュール制御システム、またはより一般的には、制御システムのノードとの間の複数のレベルの通信連結を提供することができる。例示的に実装において、スキッドアシスタントは、物理層における接続が検出されたときに、適正な連結が接続段階におけるものであるかどうかを確認し、その後、再度、認証段階において連結を確認して、オペレータがモジュール制御システムと対話するこ
とを適切に承認されているかどうかを判定し、次いで、再度、プロジェクト検証段階において、アクティブプロジェクトがモジュール制御システムに適正であるかどうかを判定する。このように、スキッドアシスタントは、モジュール制御システムのリムーバブルメモリカード、または別のタイプの好適なメモリへのアクティブプロジェクトの誤ったバックアップを防止する。さらに、スキッドアシスタントは、分散型制御システムのプロトコルを使用して、分散型制御システムとモジュール制御システムとの間の誤った通信を防止し、かつ、そうでなければ、分散型制御システムによって使用される情報を交換する。例えば、スキッドアシスタントは、モジュール制御システムのノードへの間違った構成のダウンロード、またはワークステーションを介したモジュール制御システムのノードに対する間違ったランタイム情報の表示を防止することができる。
【0013】
これらの技術の一例示的実施形態は、モジュール制御システムの構成を効率的に管理するための方法である。この方法は、1つ以上のプロセッサによって、ワークステーションとモジュール制御システムとの間の通信連結を検出することと、検出された通信連結に応答して、ワークステーションのメモリに格納されたアクティブプロジェクトがモジュール制御システムのメモリに格納された保存されたプロジェクトと一致するか否かを判定することであって、アクティブプロジェクト及び保存されたプロジェクトの各々が、モジュール制御システムの動作を制御するためのそれぞれの調整されたデータセットを含む、判定することと、アクティブプロジェクトと保存されたプロジェクトとが一致しない場合に、アクティブプロジェクトがモジュール制御システムに適正であるか否かを判定し、アクティブプロジェクトがモジュール制御システムに不適正である場合に、モジュール制御システムのメモリからワークステーションのメモリ内のアクティブプロジェクトに、保存されたプロジェクトの少なくとも一部分を転送するための制御を、対話型ユーザインターフェースを介して自動的に提供することと、を含む。
【0014】
これらの技術の別の例示的実施形態は、1つ以上のプロセッサと、ユーザインターフェースと、コンピューティングデバイスをモジュール制御システムに通信可能に連結するインターフェースと、非一時的メモリとを備えるコンピューティングデバイスである。メモリは、モジュール制御システムの動作を制御するための調整されたデータセットを含む少なくとも1つのアクティブプロジェクトを格納する。メモリはまた、1つ以上のプロセッサによって実行されるときに、(i)コンピューティングデバイスとモジュール制御システムとの間の通信連結を検出し、(ii)アクティブプロジェクトが、モジュール制御システムのメモリに格納された保存されたプロジェクトに一致するか否かを判定し、(iii)アクティブプロジェクトと保存されたプロジェクトとが一致しない場合に、アクティブプロジェクトがモジュール制御システムに適正であるか否かを判定し、アクティブプロジェクトがモジュール制御システムに不適正である場合に、モジュール制御システムのメモリからコンピューティングデバイスのメモリ内のアクティブプロジェクトに保存されたプロジェクトの少なくとも一部分を転送するための制御を、ユーザインターフェースを介して自動的に提供する、ように構成されたモジュール制御システムアシスタントを実装する命令も格納する。
【0015】
これらの技術のさらに別の例示的実施形態は、モジュール制御システム及びスタンドアロンワークステーションを備えるシステムである。モジュール制御システムは、
モジュール制御システムの制御論理を実装するモジュールコントローラであって、分散型制御システムのプラットフォーム上にネイティブに構築される、コントローラと、制御論理に従ってプロセスプラント内の物理的機能を行うように構成された装置と、モジュール制御システムの動作を制御するための調整されたデータセットを含む保存されたプロジェクトを格納するメモリと、を含む。スタンドアロンワークステーションは、1つ以上のプロセッサと、ユーザインターフェースと、スタンドアロンワークステーションをモジュール制御システムに通信可能に連結するインターフェースと、(i)少なくとも1つのアク
ティブプロジェクト及び(ii)1つ以上のプロセッサによって実行されるときに、スタンドアロンワークステーションのメモリ内の少なくとも1つのアクティブプロジェクトとモジュール制御システムのメモリ内の保存されたプロジェクトとの間でデータを同期させるように構成されたモジュール制御システムアシスタントを実装する命令を格納する非一時的メモリと、を含む。
【図面の簡単な説明】
【0016】
図1】スタンドアロンモードで動作するように構成されたモジュール制御システムと、モジュール制御システムの構成を管理するように構成されたアシスタントアプリケーションを実行するエンジニアリングステーションとして動作するコンピュータとのブロック図である。
図2】多数のモジュール制御システムのブロック図であり、図1のアシスタントアプリケーションの単一のインスタンスがその構成を管理し得る。
図3】エンジニアリングワークステーションとモジュール制御システムのメモリとの間の、図1のアシスタントアプリケーションを介した相互作用を概略的に示す。
図4】いくつかのシナリオにおいてモジュール制御システムを統合し得る分散型プロセス制御システムのブロック図である。
図5A図1のアシスタントアプリケーションが、接続、構成管理、切断、及び管理機能にそれぞれアクセスを提供するようにオペレータに提示し得る例示的対話型スクリーンを示す。
図5B図1のアシスタントアプリケーションが、接続、構成管理、切断、及び管理機能にそれぞれアクセスを提供するようにオペレータに提示し得る例示的対話型スクリーンを示す。
図5C図1のアシスタントアプリケーションが、接続、構成管理、切断、及び管理機能にそれぞれアクセスを提供するようにオペレータに提示し得る例示的対話型スクリーンを示す。
図5D図1のアシスタントアプリケーションが、接続、構成管理、切断、及び管理機能にそれぞれアクセスを提供するようにオペレータに提示し得る例示的対話型スクリーンを示す。
図6A】オペレータがコミッションされたモジュール制御システムに接続するときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図6B】オペレータがコミッションされたモジュール制御システムに接続するときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図6C】オペレータがコミッションされたモジュール制御システムに接続するときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図6D】オペレータがコミッションされたモジュール制御システムに接続するときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図6E】オペレータがコミッションされたモジュール制御システムに接続するときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図6F】オペレータがコミッションされたモジュール制御システムに接続するときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図7A】オペレータがバックアップストレージから新しいアクティブプロジェクトに構成をリトリーブするときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図7B】オペレータがバックアップストレージから新しいアクティブプロジェクトに構成をリトリーブするときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図8A】オペレータがモジュール制御システムをデコミッションせずにコミッションされたモジュール制御システム上でパスワードを変更することを望む場合に、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図8B】オペレータがモジュール制御システムをデコミッションせずにコミッションされたモジュール制御システム上でパスワードを変更することを望む場合に、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図9A】オペレータがコミッションされたモジュール制御システムに接続するときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図9B】オペレータがコミッションされたモジュール制御システムに接続するときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図9C】オペレータがコミッションされたモジュール制御システムに接続するときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図9D】オペレータがコミッションされたモジュール制御システムに接続するときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図9E】オペレータがコミッションされたモジュール制御システムに接続するときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図10A】オペレータがバックアップストレージから構成をリトリーブするときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図10B】オペレータがバックアップストレージから構成をリトリーブするときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図11】アクティブプロジェクトが取り付けられたコントローラに不適正である場合に、図1のアシスタントアプリケーションがオペレータに提示し得る例示的対話型スクリーンを示す。
図12A】オペレータがアクティブプロジェクトをバックアップするときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図12B】オペレータがアクティブプロジェクトをバックアップするときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図12C】オペレータがアクティブプロジェクトをバックアップするときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図12D】オペレータがアクティブプロジェクトをバックアップするときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図12E】オペレータがアクティブプロジェクトをバックアップするときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図13A】オペレータが新しいプロジェクトを作成するときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図13B】オペレータが新しいプロジェクトを作成するときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図13C】オペレータが新しいプロジェクトを作成するときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図13D】オペレータが新しいプロジェクトを作成するときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図13E】オペレータが新しいプロジェクトを作成するときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図14A】オペレータがプロジェクトのプロパティを編集するときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図14B】オペレータがプロジェクトのプロパティを編集するときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図14C】オペレータがプロジェクトのプロパティを編集するときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図15A】オペレータがアクティブプロジェクトを切り替える場合に、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図15B】オペレータがアクティブプロジェクトを切り替える場合に、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図15C】オペレータがアクティブプロジェクトを切り替える場合に、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図16A】オペレータがプロジェクトを削除するときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図16B】オペレータがプロジェクトを削除するときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図16C】オペレータがプロジェクトを削除するときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図17A】オペレータがプロジェクトをコピーするときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図17B】オペレータがプロジェクトをコピーするときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図17C】オペレータがプロジェクトをコピーするときに、図1のアシスタントアプリケーションがオペレータに提示し得る対話型スクリーンの例示的シーケンスを示す。
図18】オペレータがアクティブプロジェクトをドライブにバックアップするときに、図1のアシスタントアプリケーションがオペレータに提示し得る例示的対話型スクリーンを示す。
図19】オペレータがアクティブプロジェクトを比較してドライブからリトリーブするときに、図1のアシスタントアプリケーションがオペレータに提示し得る例示的対話型スクリーンを示す。
図20】オペレータがドライブから新しいプロジェクトを作成するときに、図1のアシスタントアプリケーションがオペレータに提示し得る例示的対話型スクリーンを示す。
図21図1のシステムで実装可能なモジュール制御システムの構成を効率的に管理するための例示的方法のフロー図である。
【発明を実施するための形態】
【0017】
図1は、Ethernet接続14を介してコンピュータ12に連結された、スキッドマウントシステムで動作し得るモジュールコントローラ10の一例を示す。モジュールコントローラ10は、例えば、汎用(例えば、CPU、GPU)または専用(例えば、ASIC、FPGA)ハードウェアを含み得る1つ以上のプロセッサ20を含む。1つ以上のプロセッサ20は、メモリモジュール22、ユーザインターフェース24、ローカル構成データベース26、ローカルエリアネットワークインターフェース28、及び産業オートメーションインターフェース29に連結される。
【0018】
メモリ22は、オペレーティングシステム30を格納する。いくつかの実装では、オペレーティングシステム30は、モジュールコントローラ10が多数のサービス及びアプリケーションを同時に実行することを可能にするQNX等のリアルタイムオペレーティングシステムである。例えば、構成モジュール32は、制御論理モジュール34と同時に実行し得る。構成モジュール32は、モジュール制御システム11をオフラインにすることを必要とせずに、コンピュータ12から構成データを受信し、受信した構成データをローカル構成データベース26等に格納してローカル構成データベース26からデータをリトリーブし、リトリーブしたデータをコンピュータ12等に提供し得る。制御論理モジュール34は、フィールドデバイス40A~Cにコマンドを送信し、かつフィールドデバイス40A~Cからデータを受信することによって制御論理を実行し続けてもよい。モジュールコントローラ10は、フィールドデバイス40A~Cと共に、モジュール制御システム11を実装する。
【0019】
メモリカード23は、モジュールコントローラ10に取り外し可能に連結され得る。メモリ23は、例えば、セキュアデジタル(SD)カードであり得る。いくつかの実装では、メモリ23は、アクティブプロジェクトのバックアップバージョン(以下に論じるように、様々な構成データを含む)を格納し得る。より一般的には、モジュールコントローラ10は、任意の適切な種類のリムーバブルメモリを含み得る。
【0020】
ユーザインターフェース24は、オペレータがモジュールコントローラ10及び/またはフィールドデバイス40A~Cの状態を閲覧することを可能にするパネルであってもよい。パネルは、モジュールコントローラ10のハウジング内に配置されたタッチスクリーンであってもよい。
【0021】
構成データベース26は、メモリモジュール22に、または別個のモジュールに実装されてもよい。いくつかの実装では、構成データベース26が実装されるメモリモジュールはフラッシュメモリである。構成データベース26は、比較的小さなテーブルのセットとして、または例えばSQLクエリをサポートするより堅牢なリレーショナルデータベースとして実装され得る。
【0022】
LANインターフェースは、有線Ethernetインターフェースであってもよい。いくつかの実装では、LANインターフェースは、セキュリティ強化のために無線通信をサポートしない。産業オートメーションインターフェース28は、Profibus、Modbus、HART等のプロトコルをサポートし得る。
【0023】
いくつかのシナリオでは、図4を参照して以下に論じるように、システム11等の本開示のモジュール制御システムは、プロセス制御システムによって使用されるプラットフォームとは異なるプラットフォーム上に構築されたプロセス制御システムに統合され得る。モジュール制御システムのプラットフォームは、独占的である場合がある。この場合、モジュールコントローラは、オープンプラットフォーム通信(OPC)通信プロトコルまたはModbus等の標準プロトコルを使用して、プロセス制御システムのノードと通信し得る。
【0024】
コンピュータ12は、ラップトップコンピュータ、タブレットコンピュータ、ハンドヘルド専用電子デバイス等であり得る。コンピュータ12は、1つ以上のプロセッサ42、ユーザインターフェース44、及びメモリ46を含み得る。場合によっては、コンピュータ12は、モジュール制御システム11にアクセスするために、アクセスキーまたは他のセキュリティ情報を格納するハードウェアドングル(混乱を回避するために図示せず)に接続される。
【0025】
メモリ46は、本明細書においてスキッドアシスタント、PKアシスタント、またはモジュール制御システム(簡略化のために「モジュールアシスタント」)と呼ばれ得るアシスタントソフトウェアアプリケーション50を格納することができ、1つ以上のプロセッサ42上で実行可能な命令のセットとして実装される。メモリ46はまた、多数のモジュール制御システム構成52も格納し得る。モジュールアシスタント50は、ユーザが様々なバージョン及び様々なモジュール制御システムのモジュール制御システム構成に名前を付けることを可能にし得る。より一般的には、本開示のモジュールアシスタント50は、任意の適切なモジュール制御システムで動作し得る。
【0026】
図2を参照すると、モジュールアシスタント50等のアシスタントソフトウェアアプリケーションは、多数のモジュール制御システム62A~Cの構成を管理するためにコンピュータ60において動作し得る。コンピュータ60は、上述のコンピュータ12と同様であり得る。異なる状況では、モジュール制御システム62A~Cの構成は、互いに同じまたは異なっていてもよい。例えば、モジュールアシスタント62Aによって、ユーザがモジュール制御システム62Aから構成Aを効率的にリトリーブし、リトリーブされた構成Aをモジュール制御システム62Cに適用することが可能になり得る。モジュール制御システム62Cは、異なる構成Bを有することができる。
【0027】
オペレータは、同じコンピュータ60を使用して、システム62A~Cの構成を管理し、構成の差異(例えば、構成A対構成B)をチェックし、構成のエラーをチェックし(例えば、構成A対、コンピュータ62のメモリに格納されたベンチマーク構成)、構成をコピーし、構成を削除し、システム62A~Cのそれぞれのモジュールコントローラへの構成の適用をアクティブ化すること等ができる。
【0028】
集中位置から個々のコントローラに構成がダウンロードされる(または、ハンドヘルドが使用される場合、コントローラからワークステーションまで伝搬され、集中データベースに格納される)DCSとは異なり、スタンドアロンモードで動作するモジュール制御システムは、他のシステムと自動的に同期されない。これにより、DCSには一般的に存在しない問題が発生する可能性があり、アシスタントソフトウェアアプリケーションは、構成データのバージョンを管理し、かつコピー、編集、エラーチェック、及び他の機能を提供することにより、エラーの確率を低下させ得る。
【0029】
図3は、コンピュータ12または60等のエンジニアリングワークステーションに格納され得るアクティブプロジェクト70と、11、62A、62B、または62C等のモジ
ュール制御システムのメモリに格納され得るアクティブプロジェクトバックアップ72との間の、モジュールアシスタント50を介した相互作用を概略的に示す。エンジニアリングワークステーションは、スタンドアロンマシンとして動作し、モジュールアシスタント50を介してモジュール制御システムのコントローラとプロジェクトデータを交換するように構成される。プロジェクトは、分散型制御システム(例えば、DeltaV)の構成ファイル、分散型制御システムの動作情報(例えば、リアルタイムデータ、アラーム、セキュリティデータ)、デバイス設定、資産管理データ等の調整されたデータセットであり得る。プロジェクトは、モジュールコントローラのためのプレースホルダを含み得る。プレースホルダは、プロジェクトにおいてコミッションまたはデコミッションされ得る。
【0030】
モジュールアシスタント50によって、プロジェクト全体またはプロジェクトの選択された部分の交換が容易になり得る。この場合、セーブ(またはバックアップ)動作は、概念的にダウンロード動作から分離される。言い換えれば、モジュールアシスタント50は、この構成をモジュール制御システムにダウンロードせずに、上述のメモリカード23等のモジュール制御システムのメモリに新しい構成を保存し得る。これにより、任意のフェーズ及び任意の手順のプロジェクトのサポートが可能になる。さらに、このアプローチにより、モジュール制御システムがいつメモリモジュールにアクセスするかをユーザがより良く制御することが可能になる。
【0031】
図3に示すように、モジュールアシスタント50は、モジュールコントローラのリムーバブルメモリにアクティブプロジェクト70を転送し、アクティブプロジェクトバックアップ72として保存するバックアップ動作80をサポートし得る。モジュールアシスタント50はまた、アクティブプロジェクトバックアップ72をリトリーブするためにリトリーブ動作82をサポートし得る。次いで、モジュールアシスタント50は、プロジェクト72とプロジェクト70とを比較し、プロジェクト72とプロジェクト70とをマージし、またはプロジェクト70にプロジェクト72をコピーして、例えば、対応するデータを他のモジュール制御システムに転送し得る。
【0032】
一般に、モジュールアシスタント50は、モジュールコントローラのコミッショニング状態とアクティブプロジェクトのコミッショニング状態との様々な組み合わせをサポートし、場合によっては、エンジニアリングワークステーションのオペレータに特定のアクションを自動的に提案し得る。モジュールアシスタント50は、ワークステーションがモジュールコントローラに接続されていると判定すると、これらの可能なアクションを識別し得る。例えば、モジュールアシスタント50を実行するスタンドアロンエンジニアリングワークステーションがモジュールコントローラに接続する場合、及びエンジニアリングワークステーションのネットワーク設定が適正である場合、モジュールアシスタント50は、アクティブプロジェクト70のモジュールコントローラのプレースホルダがコミッションされていない場合、及び物理的モジュールコントローラがコミッションされていない場合に、コミッショニングステップを行う必要があることをオペレータに通知し得る。アクティブプロジェクト70のプレースホルダがコミッションされているが、物理的モジュールコントローラがコミッションされていない場合、モジュールアシスタント50は、コミッショニングステップを行うようにユーザにプロンプトし得る。この場合、ユーザはまずプレースホルダをデコミッションしてから、プレースホルダを再コミッションし得る。
【0033】
アクティブプロジェクト70のプレースホルダとモジュールコントローラとの両方がコミッションされると、モジュールアシスタント50は、コミッションされた構成データ(すなわち、プロジェクト)を比較し得る。一致しなければ、モジュールアシスタント50は、ユーザにパスワードをプロンプトし、アクティブプロジェクト70を取り付けられたモジュールコントローラ内のプロジェクトと整合させるように実行可能な異なるアクションを通じてオペレータを案内し得る。具体的には、モジュールアシスタント50は、取り
付けられたモジュールコントローラに適正であるプロジェクトに切り替えることを提案し得る(上述のように、コンピュータ12または60は、異なるモジュールコントローラと共に使用可能である多数のプロジェクトを格納し得る)。代替として、モジュールアシスタント50は、構成データをモジュールコントローラから新しいアクティブプロジェクト内にリトリーブすることを提案し得る。さらに別の代替として、モジュールアシスタント50は、オペレータが異なるモジュールコントローラに接続できることを提案し得る。そうではなく、一致する場合、モジュールアシスタント50は、ユーザにパスワードをプロンプトし、アクティブプロジェクト70と取り付けられたモジュールコントローラ内のプロジェクトとが整合していることをユーザに通知し得るだけである。
【0034】
アクティブプロジェクト70のプレースホルダがコミッションされていない場合、及びモジュールコントローラがコミッションされている場合、モジュールアシスタント50はユーザにパスワードをプロンプトし、アクティブプロジェクト70をモジュールコントローラの構成に整合させ、オペレータがモジュールコントローラに適正であるプロジェクトに切り替えることを提案し、またはモジュールコントローラの構成を新しいアクティブプロジェクトにリトリーブし、もしくはモジュールコントローラの構成を現在のアクティブプロジェクト70にリトリーブし、またはワークステーションを異なるモジュールコントローラに接続し得る。
【0035】
モジュールシステム50がスタンドアロンモードで動作するモジュール制御システムと相互作用する例示的シナリオの前に、モジュール制御システムの分散型制御システムへの例示的統合について、図4を参照して考察される。上述のように、実装のうちの少なくともいくつかのモジュール制御システムは、スタンドアロンノードとして動作し、または分散型制御システムにシームレスに統合されてもよく、分散型ノードとして動作し得る。
【0036】
図4は、分散型制御システム122を実装する例示的プロセスプラント100を示す。典型的であるように、分散型プロセス制御システム122は、例えば、Fieldbusインターフェース、Profibusインターフェース、HARTインターフェース、標準4~20mAインターフェース等であり得る入力/出力(I/O)デバイスまたはカード148を介して、1つ以上のフィールドデバイスまたはスマートデバイス144及び146に各々が接続された1つ以上のコントローラ140を有する。コントローラ140はまた、データハイウェイ154を介して1つ以上のホストまたはオペレータワークステーション150、152に連結され、データハイウェイ154は、例えば、Ethernetリンクまたはローカルエリアネットワーク(LAN)リンクに適切な別のリンクであってもよい。プロセスデータデータベース158は、データハイウェイ154に接続されてもよく、パラメータ、状態、ならびにプラント100内のコントローラ及びフィールドデバイスに関連付けられた他のデータを収集及び格納するように動作する。プロセスプラント100の動作中、プロセスデータデータベース158は、コントローラ140から、及び間接的に、データハイウェイ154を介してデバイス144~146からプロセスデータを受信し得る。
【0037】
構成データベース160は、コントローラ140ならびにフィールドデバイス144及び146内にダウンロードされてそこに格納される、プラント100内のプロセス制御システム122の現在の構成を格納する。構成データベース60は、プロセス制御システム122のうちの1つまたはいくつかの制御ストラテジ、デバイス144及び146の構成パラメータ、プロセス制御機能へのデバイス144及び146の割り当て、ならびにプロセスプラント100に関連する他の構成データを定義するプロセス制御機能を格納する。構成データベース160は、さらに、プロセスプラント100の要素の様々なグラフィック表示を提供するために、グラフィックオブジェクトをさらに格納し得る。格納されたグラフィックオブジェクトのうちのいくつかは、プロセス制御機能に対応する場合があり(
例えば、特定のPIDループに開発されたプロセスグラフィック)、他のグラフィックオブジェクトは、デバイス固有であり得る(例えば、圧力センサに対応するグラフィック)。
【0038】
プロセスプラント100はまた、混乱を回避するために図4には示されていないデータハイウェイ154に連結された他のデータベースを含み得る。例えば、データヒストリアンは、イベント、アラーム、コメント、及びオペレータが取った一連のアクションを格納し得る。イベント、アラーム、及びコメントは、個々のデバイス(例えば、バルブ、送信器)、通信リンク(例えば、有線Fieldbusセグメント、WirelessHART通信リンク)、またはプロセス制御機能(例えば、所望の温度設定点を維持するためのPI制御ループ)に関連し得る。さらに、知識レポジトリは、参照、オペレータログブック入力、ヘルプトピック、またはオペレータ及び保守技術者がプロセスプラント100の監督時に有用とみなし得るこれら及び他の文書へのリンクを格納し得る。またさらに、ユーザデータベースは、オペレータまたは保守技術者等のユーザに関する情報を格納し得る。
【0039】
これらのデータベースの各々は、任意の所望の種類のメモリ及びデータを格納するための任意の所望のまたは既知のソフトウェア、ハードウェア、またはファームウェアを有する、任意の所望の種類のデータストレージまたは収集ユニットであり得る。当然ながら、データベースは、別個の物理的デバイス内に存在する必要はない。したがって、いくつかの実施形態では、これらのデータベースのいくつかは、共有データプロセッサ上に実装される。一般に、より多いまたはより少ないデータベースを利用して、上述のデータベースによって集合的に格納及び管理されたデータを格納することが可能である。
【0040】
コントローラ140、I/Oカード148、ならびにフィールドデバイス144及び146は、典型的には、時に厳しいプラント環境全体に分散される一方で、オペレータワークステーション150及び152ならびにデータベース158、160等は、通常、制御室またはコントローラ、保守、及び他の様々なプラント担当者が容易に評価できる他のより厳しくない環境に位置する。しかしながら、場合によっては、ハンドヘルドデバイスを使用してこれらの機能を実装してもよく、これらのハンドヘルドデバイスは、典型的には、プラント内の様々な場所に持ち運ばれる。
【0041】
例としてEmerson Process Managementによって販売されているDeltaV(商標)コントローラであり得るコントローラ140の各々は、任意の数の、独立して実行される異なる制御モジュールまたはブロック170を使用して、制御ストラテジを実装するコントローラアプリケーションを格納及び実行する。制御モジュール170の各々は、一般に機能ブロックと呼ばれるもので構成され得、各機能ブロックは、制御ルーチン全体の一部またはサブルーチンであり、他の機能ブロックと共に動作して(リンクと呼ばれる通信を介して)、プロセスプラント100内でプロセス制御ループを実装する。周知のように、オブジェクト指向プログラミングプロトコル中のオブジェクトであり得る機能ブロックは、典型的には、送信器、センサ、もしくは他のプロセスパラメータ測定デバイスに関連付けられるもの等の入力機能、PID、ファジー論理等の制御を行う制御ルーチンに関連付けられるもの等の制御機能、またはバルブ等の何らかのデバイスの動作を制御して、プロセスプラント10内で何らかの物理的機能を行う出力機能のうちの1つを行う。当然ながら、ハイブリッド及び他の種類の複雑な機能ブロック、例えばモデル予測コントローラ(MPC)、オプティマイザ等が存在する。Fieldbusプロトコル及びDeltaVシステムプロトコルが、オブジェクト指向プログラミングプロトコル中で設計かつ実装された制御モジュール及び機能ブロックを使用する一方、制御モジュールは、例えば、逐次機能ブロック、ラダー論理等を含む任意の所望の制御プログラミングスキームを使用して設計され得、機能ブロックまたは任意の他の特定のプログラミ
ング技術を使用した設計及び実装に限定されない。コントローラ40の各々はまた、アプリケーションのAMS(登録商標)スイートをサポートしてもよく、予測知能を使用して、機械設備、電気システム、プロセス装置、計器、フィールド及びスマートフィールドデバイス144、146、ならびにバルブを含むプロダクションアセットの可用性及び性能を改善してもよい。
【0042】
図1に示されるプラント100では、コントローラ112に接続されたフィールドデバイス144、146は、標準4~20mAデバイスであってもよく、プロセッサ及びメモリを含む、HART、Profibus、もしくはFOUNDATION(商標)Fieldbusフィールドデバイス等のスマートフィールドデバイスであってもよく、または任意の他の所望の種類のデバイスであってもよい。Fieldbusフィールドデバイス(図1の参照番号146で表示される)等のこれらのデバイスのいくつかは、コントローラ140に実装された制御ストラテジに関連付けられたモジュールまたは機能ブロック等のサブモジュールを格納及び実行してもよい。図1にFieldbusフィールドデバイス146の2つの異なるデバイスに配置されて示される機能ブロック172は、周知のように、コントローラ140内の制御モジュール170の実行と共に実行されて、プロセス制御を実装してもよい。当然ながら、フィールドデバイス144及び146は、センサ、バルブ、送信器、ポジショナ等の任意の種類のデバイスであってもよく、I/Oデバイス148は、任意の所望の通信またはコントローラプロトコル、例えばHART、Fieldbus、Profibus等に準拠する、任意の種類のI/Oデバイスであってもよい。
【0043】
ワークステーション150及び152は、メモリ180に格納された命令を実行する1つ以上のプロセッサ182を含み得る。この命令は、プロセスプラント10の動作中に様々な表示を提供する閲覧アプリケーション184を部分的に実装し、オペレータがプロセスプラント100内、またはより大きなプラントでは一般的であるように、プロセスプラント100のセクション内の様々な動作を閲覧及び制御することを可能にし得る。閲覧アプリケーション184は、制御診断アプリケーション、チューニングアプリケーション、レポート生成アプリケーション、または制御機能を行う際にオペレータを支援するために使用され得る任意の他の制御サポートアプリケーション等のサポートアプリケーションを含み得るか、またはそれと連携し得る。さらに、閲覧アプリケーション184によって、プラント100の保守ニーズを監督する保守技術者が、例えば、様々なデバイス140、144、及び146の動作状態または作動状態を閲覧することが可能になる。閲覧アプリケーションはまた、保守診断アプリケーション、較正アプリケーション、振動解析アプリケーション、報告生成アプリケーション、またはプラント100内の保守機能を行う際に保守技術者を支援するために使用され得る任意の他の保守サポートアプリケーション等のサポートアプリケーションを含んでもよい。
【0044】
引き続き図4を参照すると、例示的モジュール制御システム200は、図1のモジュール制御システム1と同様に実装され得る。モジュール制御システム200は、モジュールコントローラ202、構成データベース204、及びフィールドデバイス210を含み得る特殊装置を含む。モジュール制御システム200は、デバイス202、204、及び210~114が物理的フレーム220内に存在するスキッドマウントシステムであり得る。モジュール制御システム200は、スタンドアロンモードで動作し、制御された方式でポンプ液等のプラント内で比較的複雑な機能を行い、水を加熱してタンク内の一定温度を維持し、ろ過機能等を行うように構成され得る。このために、モジュール制御システム200は、バルブ、タンク、センサ等を含み得る。
【0045】
モジュールコントローラ202は、分散型制御システム122のプラットフォーム上にネイティブに構築され得る。言い換えれば、モジュールコントローラ202は、特に分散
型制御システム122での使用のために開発されている一方で、自律的な動作も可能である。このために、モジュールコントローラ202は、仲介を必要としないファームウェア及び/またはソフトウェア機能(ファームウェア及び/またはソフトウェアのポーティング/アダプテーションレイヤまたは対応するアプリケーションプログラミングインターフェイス(API)機能等)を含み、分散型制御システム122のノードと相互作用し得る。特定のソフトウェアアーキテクチャのモジュールコントローラ202は、分散型制御システム122の他のコントローラと1つ以上のソフトウェアレイヤを共有する。いずれにしても、分散型制御システム122のプラットフォームにネイティブであるため、モジュールコントローラ202の構成、セキュリティ機構、及び通信は、分散型制御システム122と完全に互換性がある。
【0046】
構成データベース204は、例えば、ハードディスクまたはフラッシュドライブ等の非一時的コンピュータ可読メモリに格納され得る。コンピュータ可読メモリ及びモジュールコントローラ202は、実装に応じて、別々の単一のチップセットの一部として提供され得る。
【0047】
製造業者は、モジュール制御システム200を組み立てて、PIDループのゲイン値、フィールドデバイス210の名前及びタグ、ライセンス、ロケール等の設定値及び他のパラメータを用いてモジュール制御システム200のパラメータを構成することができる。製造業者はまた、パラメータセキュリティを設定することもできる。例えば、製造業者は、ゲイン値を制限された制御の一部とし、この変数のロック解除のために適切なキーを提供したときにのみ、この値が変更されることを必要とする。場合によっては、製造業者は、モジュール制御システム200を一体型ユニットとして輸送するために完全に組み立てることができる。
【0048】
図4に示すように、モジュール制御システム200は、データハイウェイ154を介してプラント100及び分散型制御システム122に連結され得る。例えば、ラップトップコンピュータであり得るホスト240は、マージアシスタントアプリケーションを実行して、モジュール制御システム200を分散型制御システム122にマージすることを容易にし得る。あるいは、マージアシスタント250は、オペレータワークステーション250または252に実装され得る。動作中、マージアシスタント250は、構成データベース204から集中構成データベース160に構成データを効率的かつ正確にマージすることによってオペレータを支援する。場合によっては、マージアシスタント250はまた、構成データベース160内項目との競合を解決するために、構成データベース204内の項目の名前の変更または再ラベル付けに関する自動提案も生成する。次いで、マージアシスタント250は、更新された構成データを構成データベース204にロードする。場合によっては、ホスト240は、構成データが更新されている間にモジュール制御システム200の構成データを格納する。
【0049】
別の実装によると、マージアシスタント250は、モジュール制御システムを分散型制御システム122に統合することによって導入された新しい構成データを分散し、それによって構成データベース160に新しいデータをインポートする必要性を排除する。具体的には、構成データをコピーするのではなく、マージアシスタント250は、分散型制御システム122の範囲内の一意性を確実にするために、構成データベース204を新しいタグによりその場で更新し得る。このように、マージアシスタント250は、モジュール制御システムを分散型制御システムに統合するのに必要な時間を短縮することができ、場合によっては「インスタントインポート」を提供することさえできる。
【0050】
図4はモジュール制御システム200を1つだけ示しているが、多数のモジュール制御システムを分散型プロセス制御システム122に統合してもよい。マージアシスタント2
50は、この場合、データハイウェイ154に連結されたモジュール制御システムを検出し、対応する構成を集中構成データベース160に反復的にマージすることができる。
【0051】
図5A~20に示すように、モジュールアシスタント50は、スタンドアロンモードで動作するモジュール制御システムに関連する様々な動作を容易にするための様々な対話型スクリーンを提供し得る。
【0052】
具体的には、図5A~Dは、接続、構成管理、切断、及び管理機能へのアクセスを提供するように、モジュールアシスタント50がユーザに提示し得る例示的対話型スクリーンを示す。「接続」機能は、概して、モジュールアシスタント50が実行しているスタンドアロンコンピュータ(コンピュータ20または60等)が、スタンドアロンコンピュータが接続されているモジュールコントローラと整合することを可能にする。モジュールアシスタント50は、スタンドアロンコンピュータ及びモジュールコントローラ内の構成データが一致するか否かをユーザに通知するための「ワンストップ場所」を有利に提供し得る。図5Aの例示的対話型スクリーンは、物理的モジュールコントローラとの接続の要約を提供し、該当する場合は潜在的な問題をユーザに通知する。一般に、モジュールアシスタント50は、ユーザがパスワードを入力したとき、アクティブプロジェクトが適正であるとき、及びスタンドアロンコンピュータのネットワーク設定が適正であるときに、適切な整合を検出する。さらに、モジュールアシスタント50は、アクティブプロジェクトが取り付けられたモジュールコントローラに不適正であるときに、特定のアイコンを表示し得る。モジュールアシスタント50はまた、例えば、他の問題が検出されたときに、フラグの形式でアイコンを提供し得る。
【0053】
本例示的実装では、モジュールアシスタント50は、切断機能300を提供して、リムーバブルメモリカード(例えば、図1のメモリカード23を参照)にデータをバックアップすることをユーザにリマインドする。構成管理機能302は、ユーザがプロジェクトを比較及びリトリーブすることを可能にする。プロジェクト管理機能304は、ユーザがどのプロジェクトが利用可能であるかを見て、作成、削除、コピー等の動作を行うことを可能にする。図5Dに示すように、モジュールアシスタント50は、「類似アクティブ」フラグの適切な値を表示して、プロジェクトにアクティブプロジェクトと同じコミッショニングデータがあるか否かを標示し得る。また、図5Dに示すように、モジュールアシスタント50は、「類似アクティブ」フラグの適切な値を表示して、特定のプロジェクトが取り付けられたモジュールコントローラに適正であるか否かを標示し得る。モジュールアシスタント50は、プロジェクトが取り付けられたモジュールコントローラに不適正である場合に、情報310または別の適切な推奨を表示することができる。
【0054】
例示的シナリオでは、ポータブルコンピュータを使用するユーザは、コミッションされたモジュールコントローラに接続する。ポータブルコンピュータのネットワークカード設定は、モジュールコントローラとの通信目的では不適正であり、アクティブプロジェクトは、モジュールコントローラに不適正である。モジュールアシスタント50は、最初に、モジュールコントローラが検出されているが、ユーザのコンピュータのネットワーク設定が完全な通信を許可していないことをユーザに通知し得る。例示的実装では、モジュールアシスタント50は、エクスプローラウィンドウ(例えば、DeltaVエクスプローラウィンドウと同様であってもよい)内にネットワークの階層ビューを表示する。階層ビューは、物理ネットワークの下に、モジュールコントローラとポータブルコンピュータとが接続されていない制御ネットワークカテゴリがあることを標示する。
【0055】
次いで、ユーザは、制御320をアクティブ化して、DeltaV(図6A)等の分散型制御システムのネットワーク設定を適用しようと試みることができる。適用されたネットワーク設定が適正である場合、モジュールコントローラはモジュールアシスタント50
を介して認証を要求する(図6B)。次いで、モジュールアシスタント50は、アクティブプロジェクトが不適正であると判定し、適切な通知をユーザに提供し得る(図6C)。次いで、ユーザは適切なプロジェクトに切り替えることができる(図6D及び6E)。次いで、モジュールアシスタント50は、ポータブルコンピュータとモジュールコントローラとの間の接続が適正であることをユーザに通知する(図6F)。
【0056】
次いで、ユーザは、プロジェクトバックアップ(図3に示すプロジェクト72等)から新しいアクティブプロジェクトに構成をリトリーブすることを選択してもよい。モジュールアシスタント50は、それぞれのラジオボタンを介して選択可能ないくつかの対話型オプションを提供することができ、ユーザは、所望のオプションを選択し、ユーザは、制御350を続行してもよい(図7A)。次いで、モジュールアシスタント50は、モジュールコントローラのプロジェクトバックアップからのプロジェクトの名前で名前を自動入力し得る(図7B)。
【0057】
別の例示的シナリオでは、ユーザは、コミッションされたモジュールコントローラ上でパスワードを変更することを望む場合がある。このシナリオにおけるユーザは、コミッションされたモジュールコントローラで既に認証されている。ユーザは、モジュールコントローラをデコミッションせずにパスワードを変更することを望む。ユーザは、適切な制御をアクティブ化させ(図8A)、モジュールアシスタント50は、パスワードの変更が成功したときに適切な通知を提供する(図8B)。
【0058】
別の例示的シナリオでは、ユーザは、バックアップされていない特定の変更を有し、別のユーザも同様に変更を行っている。具体的には、ユーザは、自分のポータブルコンピュータをモジュールコントローラに接続する前に、いくつかの編集を行っている。ユーザがモジュールコントローラに接続し、モジュールアシスタント350は、モジュールコントローラがユーザのパーソナルコンピュータに格納された構成データから欠落している特定の変更を有することをユーザに通知する。ユーザは、モジュールコントローラのプロジェクトストレージからこの構成をリトリーブすることを判定する。ユーザは、モジュールアシスタント50によって提供された制御370をアクティブ化する(図9A)。それに応答して、モジュールアシスタント50は、競合する項目のレポート380を生成する(図9B)。モジュールアシスタント50は、より新しい日付及びタイムスタンプを視覚的に強調し得る(例えば、図9Bに示すように、ハイライトまたは下線によって)。次いで、ユーザは、特定の項目のチェックボックス400をアクティブにし、これらの項目をリトリーブすることができる(図9C)。次いで、モジュールアシスタント50は、選択された項目をリトリーブし、進行状況を表示し得る(図9D及び9E)。
【0059】
別のシナリオによると、ユーザは基本ライセンスを有する。ユーザは、バックアッププロジェクトからリトリーブする(図10A)が、モジュールアシスタント50は詳細な比較を表示しない(図10B)。
【0060】
別の例示的シナリオでは、アクティブプロジェクトは、取り付けられたモジュールコントローラに不適正である。モジュールアシスタント50は、図11に示すような適切な通知を提供する。
【0061】
別の例示的シナリオでは、ユーザは、アクティブプロジェクトをバックアップする。ユーザは、モジュールアシスタント50によって提供された制御を使用し(図12A)、モジュールアシスタント50は、バックアップの効果に関する警告を提供する(図12B)。モジュールアシスタント50は、バックアップが進行中であることをユーザに通知する。バックアップが完了すると、モジュールアシスタント50は、「キャンセル」ボタンを「閉じる」に変更し、「バックアップ」ボタンを無効にし得る(図12C及び12D)。
モジュールアシスタント50は、もしあれば失敗、及びそれに対応する理由をユーザに通知し得る(図12E)。
【0062】
ユーザは、時々、アクティブプロジェクトのバックアップを忘れる場合がある。例示的シナリオでは、ユーザのポータブルコンピュータは、コミッションされたモジュールコントローラに取り付けられる。ユーザがケーブルを切断するか、またはポータブルコンピュータとモジュールコントローラとの間の接続を切断すると、モジュールアシスタント50は通知(例えばポップアップウィンドウ)を自動的に生成し、アクティブプロジェクトがバックアップされていないことをユーザに通知し得る。ポップアップウィンドウは、図12A~Eに示すスクリーン等の切断されたスクリーンにユーザを直接案内するための対話型制御を含み得る。いくつかの実装では、モジュールアシスタント50は、タスクバーにコンテキストメニューオプションを提供して、例えば、ユーザが切断されたスクリーンに直接進むことを可能にし得る。
【0063】
別のシナリオでは、ユーザはプロジェクトを作成することを望む。図5Dを参照して上述したシナリオと同様に、モジュールアシスタント50は、ユーザが「プロジェクト管理」タブを選択したときに、「類似アクティブ」フラグ及び「適正」フラグを表示し得る。(図13A)モジュールアシスタント50は、ユーザにプロジェクト名をプロンプトし(図13B)、新しいプロジェクト名を受信し(図13D)、プロジェクトを作成し得る(図13E)。具体的には、モジュールアシスタント50は、最初に「作成」ボタンを無効にして、有効なプロジェクト名が入力された場合にのみこのボタンを有効にし得る。このために、モジュールアシスタント50は、長さ、名前及び日付制限、プロジェクトタイプ制限等の任意の適切な基準を適用し得る。プロジェクトが作成されるとき(図13D)、モジュールアシスタント50は、プロセスの中断を回避するために「キャンセル」及び「作成」ボタンを無効にし得る。モジュールアシスタント50は、完了時に「キャンセル」ボタンを「閉じる」に変更し得る(図13E)。
【0064】
別のシナリオでは、ユーザはプロジェクトのプロパティを編集することを望む。モジュールアシスタント50は、ユーザに、アクティブプロジェクトのプロパティを編集することを促し得る(図14A)。ユーザが「適用」をクリックすると、モジュールアシスタント50は動作を開始し、プロセスの中断を防止するためにボタンを無効にする(図14B)。完了すると、モジュールアシスタント50は、ボタンを有効にし得る(図14C)。
【0065】
別のシナリオでのユーザは、アクティブプロジェクトを切り替える。モジュールアシスタント50は、状態/警告ウィンドウ450を生成する。モジュールアシスタント50は、上記のシナリオと同様の進捗をユーザに通知する(図15B及び15C)。
【0066】
ユーザがアクティブプロジェクトを削除することを望む場合、モジュールアシスタント50は適切な警告を生成し得る(図16A)。削除を望まない場合、モジュールアシスタント50は、上記のシナリオと同様の進捗をユーザに通知する(図16B及び16C)。
【0067】
ユーザがプロジェクトをコピーすることを望む場合、モジュールアシスタント50は非アクティブプロジェクトのコピーを許可し得る(図17A)。次いで、モジュールアシスタント50は、上記のシナリオと同様の進捗をユーザに通知する(図17B及び17C)。
【0068】
モジュールアシスタント50はまた、ユーザが、アクティブプロジェクトをポータブルコンピュータまたは別の適切なストレージ上のドライブにバックアップすることを可能にし得る(図18)。ユーザがドライブからのプロジェクトを比較及びリトリーブすることを望む場合、モジュールアシスタント50は比較/リトリーブダイアログを提供し得る(
図19)。ユーザがドライブ内のバックアップに基づいて新しいプロジェクトを作成することを望む場合、モジュールアシスタント50は適切なダイアログボックスを提供し得る(図20)。
【0069】
いくつかの実装では、モジュールアシスタント50は、ユーザがドングルを有するモジュールコントローラだけと通信することを要求し得る。ポータブルコンピュータに取り付けられていない場合、モジュールアシスタント50は、特定の機能を非アクティブ化し、ユーザに他の機能の提供を継続し得る。例えば、モジュールアシスタント50は、「接続」タブ下のネットワーク設定セクションの機能を有効にし、システムドングルが認証セクションに存在しない(及び全ての制御を無効にする)というメッセージを提供し、プロジェクト情報セクションのアクティブプロジェクトの名前のみを表示し得る。「管理構成」及び「切断」タブの下では、モジュールアシスタント50は、欠落しているドングルに関するメッセージを表示し、全ての制御を無効にし得る。「プロジェクト管理」タブの下では、モジュールアシスタント50は、ドングルが取り付けられたときと同じ機能を引き続き提供し得る。
【0070】
次に、図21は、モジュール制御システムの構成を効率的に管理するための例示的方法500のフロー図を示す。方法500は、例えば、図1のシステムに実装され得るより具体的な例として、方法500は、モジュール制御システムアシスタント50において実装され得る。
【0071】
方法500は、スタンドアロンワークステーションとモジュールコントローラとの間の接続が検出されるブロック502で開始する。例えば、図1を参照すると、モジュール制御システムアシスタント50は、コンピュータ12がモジュールコントローラ10に通信可能に接続されていることを検出し得る。例えば、図5Aに示すように、モジュール制御システムアシスタント50は、コントローラがワークステーションのユーザインターフェースを介して取り付けられているという通知を提供し得る。
【0072】
場合によっては、モジュール制御システムアシスタント50は、モジュールコントローラへの接続を検出するが、ワークステーションがモジュールコントローラと情報を交換できないと判定する。例えば、スタンドアロンワークステーションのネットワーク設定によって、通信スタックの特定のレイヤーのアクティブ化が妨げられ得る。モジュール制御システムアシスタント50は、ブロック504でネットワーク設定が適正であるか否かを検出し、設定が不適正である場合に、モジュール制御システムアシスタント50は、分散型制御システムに適用可能なネットワーク設定を適用するための対話型スクリーンを提供し得る(例えば、図5参照)。これらの設定は、IPアドレス、サブネットマスク、デフォルトゲートウェイ等に影響する可能性がある。
【0073】
ブロック506において、オペレータは認証され得る。例えば、図6A及び6Bに示すように、認証情報は、ログイン情報及びパスワード情報を含み得る。
【0074】
次に、ブロック508において、スタンドアロンワークステーションのメモリに格納されたプロジェクト(「アクティブプロジェクト」)は、モジュールコントローラのメモリ(例えば、メモリカード23)内のプロジェクトと比較される。このために、任意の適切なファイル比較技術が使用され得、またはモジュール制御システムアシスタント50は、対応するバージョン識別子を比較し得る。2つのプロジェクトが同一でない場合、モジュール制御システムアシスタント50は、アクティブプロジェクトがモジュールコントローラに適正であるか否かを判定し得る。モジュール制御システムアシスタント50は、例えば、アクティブプロジェクトが、モジュールコントローラが動作するモジュール制御システムの種類、モジュール制御システムが装備されているコンポーネントのタイプ等を指定
するメタデータを含むか否かを判定し得る。
【0075】
アクティブプロジェクトがモジュールコントローラに適正であることが判定された場合、ブロック510でモジュール制御システムアシスタント50は、モジュールコントローラから構成をリトリーブするための1つ以上の制御を提供し得る(例えば、図9Aを参照)。場合によっては、モジュールコントローラに保存されたプロジェクトの一部分のみが、ワークステーションに保存されたアクティブプロジェクトにマージされる。ブロック512において、モジュール制御システムアシスタント50は、アクティブプロジェクトに適用するための個々の要素または項目を選択するための制御を提供し得る。例えば、図9Bに示すように、モジュール制御システムアシスタント50は、個々の項目の名称、構成の種類等を指定し、オペレータが様々な特徴に基づいてこれらの項目をグループ化することを可能にし得る。
【0076】
「processing(処理すること)」、「computing(コンピューティングすること)」、「calculating(計算すること)」、「determining(判定すること)」、「presenting(提示すること)」、「displaying(表示すること)」等の単語を本明細書において使用して議論することは、1つ以上のメモリ(例えば、揮発性メモリ、不揮発性メモリ、またはそれらの組み合わせ)内の物理的(例えば、電子的、磁気的、もしくは光学的)量として表されるデータを操作または変換する機械(例えば、コンピュータ)、レジスタ、または情報を受信、格納、送信、もしくは表示する他の機械構成要素のアクションまたはプロセスを指す場合がある。
【0077】
ソフトウェアに実装される場合、本明細書に記載されるアプリケーション、サービス、エンジン、ルーチン、及びモジュールはいずれも、コンピュータもしくはプロセッサのRAMもしくはROM等における磁気ディスク、レーザディスク、固体メモリデバイス、分子メモリストレージデバイス、光ディスク、または他のストレージ媒体等の、任意の有形の非一時的コンピュータ可読メモリに格納されてもよい。本明細書に開示される例示的システムは、他の構成要素の中でも、ハードウェア上で実行されるソフトウェア及び/またはファームウェアを含むように開示されているが、そのようなシステムが単に例証的であるに過ぎず、限定的であるとみなされるべきではないことに留意されたい。例えば、これらのハードウェア、ソフトウェア、及びファームウェア構成要素のうちのいずれかまたは全てが、ハードウェアにのみ、ソフトウェアにのみ、あるいはハードウェア及びソフトウェアの任意の組み合わせで、埋め込まれ得ることが企図される。したがって、当業者は、提供された例がこのようなシステムを実装する唯一の方式ではないことを容易に理解するであろう。
【0078】
したがって、本開示の技術について具体的な例を参照して説明したが、これらの例は単に例証的であることを意図し、本発明の限定であることを意図せず、変更、追加、または削除が、本発明の趣旨及び範囲から逸脱することなく、開示された実施形態に対して行われてもよいことが当業者には明らかであろう。
図1
図2
図3
図4
図5A
図5B
図5C
図5D
図6A
図6B
図6C
図6D
図6E
図6F
図7A
図7B
図8A
図8B
図9A
図9B
図9C
図9D
図9E
図10A
図10B
図11
図12A
図12B
図12C
図12D
図12E
図13A
図13B
図13C
図13D
図13E
図14A
図14B
図14C
図15A
図15B
図15C
図16A
図16B
図16C
図17A
図17B
図17C
図18
図19
図20
図21