(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6651510
(24)【登録日】2020年1月24日
(45)【発行日】2020年2月19日
(54)【発明の名称】遠隔端末のための機器階層構造
(51)【国際特許分類】
H04Q 9/00 20060101AFI20200210BHJP
G05B 23/02 20060101ALI20200210BHJP
【FI】
H04Q9/00 321D
G05B23/02 Z
H04Q9/00 301B
【請求項の数】20
【全頁数】16
(21)【出願番号】特願2017-518125(P2017-518125)
(86)(22)【出願日】2015年10月2日
(65)【公表番号】特表2017-533645(P2017-533645A)
(43)【公表日】2017年11月9日
(86)【国際出願番号】US2015053779
(87)【国際公開番号】WO2016054541
(87)【国際公開日】20160407
【審査請求日】2018年10月2日
(31)【優先権主張番号】3149/MUM/2014
(32)【優先日】2014年10月4日
(33)【優先権主張国】IN
(73)【特許権者】
【識別番号】514279150
【氏名又は名称】ブリストル, インコーポレイテッド, ディー/ビー/エー リモート オートメイション ソリューションズ
(74)【代理人】
【識別番号】110000556
【氏名又は名称】特許業務法人 有古特許事務所
(72)【発明者】
【氏名】ティワリ, ニーラジ ディー.
(72)【発明者】
【氏名】ヴァンデラ, リチャード ジェイ.
【審査官】
田部井 和彦
(56)【参考文献】
【文献】
特開2009−222132(JP,A)
【文献】
特開2001−202324(JP,A)
【文献】
国際公開第2014/151586(WO,A1)
【文献】
特開2010−267048(JP,A)
【文献】
特開2013−182390(JP,A)
【文献】
特開平04−347798(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04M 1/00−19/00
H04Q 1/00− 9/00
G08B 1/00−31/00
G05B 23/02
(57)【特許請求の範囲】
【請求項1】
複数の遠隔端末のうち少なくとも一つがブローカエージェントである前記複数の遠隔端末に通信可能に結合されるホストおよび、前記複数の遠隔端末に通信可能に結合される複数のフィールド機器であって、当該複数のフィールド機器の少なくとも一部が1つまたは複数の物理的機能を実行して、前記プロセスプラントで実行するプロセスを制御する、複数のフィールド機器を含むプロセスプラントの機器階層を構築するためのシステムであって、
前記システムは、
前記複数の遠隔端末に通信可能に結合され、前記ホストにおいて動作する階層ビルダモジュール及び前記遠隔端末において動作するHART階層報告モジュールを含む階層生成エンジンであって、
前記階層生成エンジンは、前記複数の遠隔端末および前記複数のフィールド機器それぞれを示し、前記複数の遠隔端末および前記複数のフィールド機器との親子関係が記載された機器識別情報であって、前記ブローカエージェントとして構成される前記遠隔端末に保存されるそれぞれの機器識別情報を取得し、
前記それぞれの機器識別情報を、前記階層生成エンジンがアクセス可能なローカルメモリに保存し、
前記それぞれの機器識別情報を使用して、前記複数の遠隔端末および前記複数のフィールド機器に含まれる1つまたは複数の対の遠隔端末およびフィールド機器間のそれぞれの親子関係を示している前記機器階層の少なくとも一部を構築し、
前記構築された機器階層の少なくとも一部が、前記ホストにアクセス可能となるように構成される、システム。
【請求項2】
前記それぞれの機器識別情報は、前記複数のフィールド機器に含まれるフィールド機器のそれぞれの機器タイプ、それぞれの機器識別またはそれぞれの機器タグのうちの少なくとも1つを更に含む請求項1に記載のシステム。
【請求項3】
前記それぞれの機器識別情報は、前記フィールド機器の前記それぞれの機器タグを更に含み、前記ローカルメモリは、前記フィールド機器の前記それぞれの機器タグである1つの機器タグだけを保存する、請求項2に記載のシステム。
【請求項4】
前記ローカルメモリに保存される前記フィールド機器の前記1つの機器タグは、前記フィールド機器の複数の機器タグのうちの最も長い機器タグである、請求項3に記載のシステム。
【請求項5】
前記フィールド機器は、有線フィールド機器または無線フィールド機器の一方である、請求項2に記載のシステム。
【請求項6】
前記フィールド機器は、有線HARTフィールド機器または無線HARTフィールド機器の一方である、請求項5に記載のシステム。
【請求項7】
前記機器階層の前記少なくとも一部は、前記機器階層の少なくとも第1の部分であり、前記それぞれの機器識別情報は、第1の機器識別情報であり、前記階層生成エンジンは、前記複数のフィールド機器及び複数の遠隔端末に通信可能に結合され、
前記階層生成エンジンはさらに、
前記機器階層の前記少なくとも第1の部分の構築後、前記複数のフィールド機器及び複数の遠隔端末から送信された、1つまたは複数の通信に含まれる第2の機器識別情報を、前記ローカルメモリに保存し、かつ、
(i)前記機器階層の前記少なくとも第1の部分を再構築する、または(ii)前記保存された第2の機器識別情報を使用して、前記機器階層の少なくとも第2の部分を構築するのうち少なくとも一方を行うよう構成される、請求項1に記載のシステム。
【請求項8】
前記複数のフィールド機器から送信された前記1つまたは複数の通信は、HARTコマンド番号0のメッセージを含み、前記第2の機器識別情報は、前記HARTコマンド番号0のメッセージに対して送信された応答を含む、請求項7に記載のシステム。
【請求項9】
前記複数のフィールド機器のうちの前記1つまたは複数は、前記複数のフィールド機器の少なくとも第1のサブセットであり、
前記階層生成エンジンはさらに、
前記機器階層の前記少なくとも第1の部分の構築後に、前記遠隔端末から、前記複数のフィールド機器の少なくとも第2のサブセットに含まれる各フィールド機器のそれぞれの機器状態またはそれぞれの通信状態のうちの少なくとも一方を取得する、かつ
i)前記機器階層の前記少なくとも第1の部分を再構築する、または(ii)前記それぞれの機器状態または前記それぞれの通信状態のうちの少なくとも一方を使用して、前記機器階層の少なくとも第2の部分を構築するのうちの少なくとも一方を行うよう構成される、請求項1に記載のシステム。
【請求項10】
前記階層ビルダモジュールは、ソフトウェアモジュールとしての前記ホストに含まれる、請求項1に記載のシステム。
【請求項11】
前記HART階層報告モジュールは、ソフトウェアモジュールとしての前記遠隔端末に含まれる、請求項1に記載のシステム。
【請求項12】
前記ブローカエージェントとして構成された前記遠隔端末は、それぞれが、それぞれの複数のフィールド機器に結合される、複数の遠隔端末に含まれ、前記階層生成エンジンはさらに、前記複数の遠隔端末のそれぞれに対応するそれぞれの機器階層の少なくとも一部を構築するよう構成される、請求項1に記載のシステム。
【請求項13】
ユーザインタフェースで、前記機器階層の前記構築された少なくとも一部の表示を提供するよう構成されるホストをさらに備える、請求項1に記載のシステム。
【請求項14】
前記階層ビルダモジュールの少なくとも一部は、ソフトウェアモジュールとしての前記ホストに含まれる、請求項13に記載のシステム。
【請求項15】
複数の遠隔端末の少なくとも一つがブローカエージェントとして構成された、前記複数の遠隔端末に通信可能に結合されるホスト、および前記複数の遠隔端末に通信可能に結合される複数のフィールド機器であって、当該複数のフィールド機器の少なくとも一部が1つまたは複数の物理的機能を実行して、前記プロセスプラントで実行されるプロセスを制御する、複数のフィールド機器を含むプロセスの機器階層を構築するための方法であって、
前記ホストで前記ブローカエージェントとして構成された前記遠隔端末から、前記複数のフィールド機器および前記複数の遠隔端末それぞれの、それらの機器の親子関係が記載されたそれぞれの機器識別情報であって、前記ブローカエージェントとして構成される前記遠隔端末に保存される、前記複数のフィールド機器および前記複数の遠隔端末それぞれの、それぞれの機器識別情報を取得するステップと、
前記取得したそれぞれの機器識別情報を、前記ホストがアクセス可能な第1のメモリに保存するステップと、
前記保存されたそれぞれの機器識別情報を使用して、前記複数のフィールド機器および前記複数の遠隔端末に含まれる1つまたは複数の対のフィールド機器および1または複数の遠隔端末間のそれぞれの親子関係を示している前記機器階層の少なくとも一部を構築するステップと、
前記プロセスプラントの1つまたは複数の他の機器が使用する前記機器階層の前記構築された少なくとも一部を、前記第1のメモリまたは第2のメモリのうちの少なくとも一方に保存するステップとを備える、方法。
【請求項16】
前記複数のフィールド機器それぞれの、それぞれの前記機器識別情報を取得することは、前記複数のフィールド機器に含まれるフィールド機器のそれぞれの機器タイプ、それぞれの機器識別またはそれぞれの機器タグのうちの少なくとも1つを取得することを含む、請求項15に記載の方法。
【請求項17】
前記取得した機器識別情報を保存することは、前記複数のフィールド機器に含まれるフィールド機器の1つの機器タグのみを保存することを含む、請求項15に記載の方法。
【請求項18】
前記複数のフィールド機器それぞれの、それぞれの前記機器識別情報を取得することは、前記複数のフィールド機器に含まれる有線フィールド機器または無線フィールド機器のそれぞれの機器識別情報を取得することを含む、請求項15に記載の方法。
【請求項19】
前記取得した機器識別情報は、第1の取得した機器識別情報であり、
前記第1の取得した機器識別情報を使用して、前記機器階層の前記少なくとも一部を構築した後、前記複数のフィールド機器から送信された1つまたは複数のメッセージに含まれる第2の機器識別情報を取得するステップと、
前記取得した第2の機器識別情報を、前記第1のメモリに保存するステップと、
(i)前記機器階層の前記少なくとも一部を再構築するステップ、または(ii)前記保存された第2の機器識別情報を使用して、前記機器階層の少なくとも他の部分を構築するステップの少なくとも一方をさらに備える、請求項15に記載の方法。
【請求項20】
前記複数のフィールド機器の前記1つまたは複数は、前記複数のフィールド機器の少なくとも第1のサブセットであり、
前記ブローカエージェントとして構成された前記遠隔端末から、前記複数のフィールド機器の少なくとも第2のサブセットに含まれる各フィールド機器のそれぞれの機器状態またはそれぞれの通信状態のうちの少なくとも一方を取得するステップと、
i)前記機器階層の前記少なくとも第1の部分を再構築するステップ、または(ii)前記それぞれの機器状態または前記それぞれの通信状態のうちの少なくとも一方を使用して、前記機器階層の少なくとも第2の部分を構築するステップの少なくとも一方をさらに備える、請求項15に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、一般に、プロセスプラントシステムに関し、より詳細には、プロセス制御およびデータ取得システムにおけるサーバアクションを構成することに関する。
【背景技術】
【0002】
本明細書に提供される背景技術の記載は、一般に本開示の背景を提示するためのものである。この背景技術の項に記載される範囲において、本発明者の作業ならびに出願時に従来技術として認められなかった本記載の態様は、本開示に対する従来技術として、明確にも暗示的にも認められていない。
【0003】
化学、石油または他のプロセスプラントに使用されるような、分散プロセス制御システムは、典型的には、アナログ、デジタルまたはアナログ/デジタルバスの組み合わせ、あるいは無線通信リンクまたはネットワークを介して、1つまたは複数のフィールド機器に通信可能に結合される1つまたは複数のプロセスコントローラを含む。このフィールド機器は、例えば、バルブ、バルブポジショナ、スイッチおよびトランスミッタ(例えば、温度センサ、圧力センサ、レベルセンサおよび流量センサ)であってもよく、プロセス環境内に配置され、一般に、バルブの開閉、プロセスパラメータの測定、などの物理的またはプロセス制御機能を実行して、プロセスプラントまたはシステム内で実行する1つまたは複数のプロセスを制御する。周知のフィールドバスプロトコルに準拠するフィールド機器などのスマートフィールド機器はまた、制御計算、警報機能およびコントローラ内に共通して実装される他の制御機能を実行することができる。このプロセスコントローラはまた、典型的にはプラント環境内に配置されて、センサおよび/またはフィールド機器によってなされるプロセス測定を示す信号ならびに/あるいはフィールド機器に関する情報を受信し、受信した情報に基づいて、プロセス制御決定をする、制御信号を生成する、かつHART(登録商標)、Wireless HART(登録商標)およびFOUNDATION(登録商標)フィールドバスフィールド機器などのフィールド機器で実行されている制御モジュールまたはブロックと調和して動く、例えば、別の制御モジュールを動かすコントローラアプリケーションを実行する。このコントローラ内の制御モジュールは、制御信号を通信ラインまたはリンクを通じてフィールド機器に送信し、それによりプロセスプラントまたはシステムの少なくとも1部分の動作を制御する。
【0004】
フィールド機器およびコントローラからの情報は、通常、データハイウェイを通じて1つまたは複数の他のハードウェア機器に対し入手可能にされる。ハードウェア機器の例としては、オペレータワークステーション、パーソナルコンピュータまたはコンピューティングデバイス、データヒストリアン、リポートジェネレータ、集中データベース、あるいは典型的には制御ルームまたはより厳しいプラント環境から離れた他の場所に配置される他の集中管理コンピューティングデバイスなどが挙げられる。こうしたハードウェア機器のそれぞれは、典型的には、プロセスプラントにわたって、またはプロセスプラントの一部にわたって集中化されている。こうしたハードウェア機器は、例えば、オペレータが、プロセスを制御する、かつ/またはプロセスプラントを作動させることに関する機能を実行することを可能にするアプリケーションを実行しする。制御する機能の例として、プロセス制御ルーチンの設定の変更、コントローラまたはフィールド機器内の制御モジュールの動作の修正、プロセスの現在の状態の監視、フィールド機器およびコントローラにより生成される警報の監視、人材教育またはプロセス制御ソフトウェアのテストを目的としたプロセスの動作のシミュレーション、構成データベースの維持および更新などが挙げられる。このハードウェア機器によって利用されるデータハイウェイ、コントローラおよびフィールド機器は、有線通信パス、無線通信パス、またはそれらの組み合わせを含むことができる。
【0005】
分散プロセス制御システムは、1つまたは複数の遠隔端末(RTU)を含むことができ、その遠隔端末は、フィールド機器に結合されたフローコンピュータを実装可能である。したがって、RTUは、「フローコンピュータ」または単に「コントローラ」と呼ばれることがある。RTUは、例えば、有線ハイウェイアドレス可能遠隔トランスデューサ(HART)フィールド機器に接続するためのI/Oモジュールおよび無線HARTフィールド機器に接続するためのI/Oモジュールを含むことができる。資産管理システム(AMS)などの、監視制御およびデータ取得システムを実装するマシンホストは、1つまたは複数のRTUと通信して、RTUに接続されたフィールド機器に関する情報を収集することができる。場合によっては、独立した専用ホストに実装可能なHARTサーバは、HARTフィールド機器にインタフェースを提供する。このAMSおよびHARTのサーバは、リモートアクセスサービス(RAS)方式にしたがって、動作することができる。例えば、AMSは、RASホストシステムインタフェース(HSI)を使用するRASのネットワークインタフェースと対話することができる。このAMSは、複数のイーサネット(登録商標)ポートを介してRAS HARTサーバに接続し、種々の種類のデータおよび/またはコマンドを渡すことができる。
【0006】
このAMSが、RTUからフィールド機器の情報を収集する目的の1つは、機器識別、親子関係の判定を含む、フィールド機器の完全な階層を構築することである。このAMSは、ホストマシンのオペレータのため階層の視覚化および/またはテキスト記述を生成することができる。HARTプロトコル(「HART機器」)を使用して通信する機器に対して、AMSは、HARTサーバを介して機器階層を要求することができ、HARTサーバは一般に、HARTコマンドのシーケンスを機器それぞれに送信して、必要な情報を収集する。より具体的には、このシーケンスは、機器識別を取得するコマンド番号0、機器の所定のパラメータを指定し、記述する、いわゆる、ショートタグを取得するコマンド番号13、機器によっては、機器の追加のパラメータを記述する、いわゆる、ロングタグを取得するコマンド番号20を含むことができる。この情報を収集する段階は、必要な情報を収集するためにHART機器当たり8〜12秒かかる場合がある。大きいメッシュネットワークで動作する無線HART機器では、このステップにさらに長くかかる場合がある。
【0007】
結果として、RTUの全体の機器階層を構築することは、時間がかかる作業であり、持続時間は接続されたHART機器の数に大きく依存する。
【発明の概要】
【0008】
ホストマシンで動作する階層ビルダは、遠隔端末(RTU)に結合されるフィールド機器の階層を構築するが、RTUは、フィールド機器に直接照会せずに、ホストマシンに結合されている。このRTUは、フィールド機器の情報をローカルメモリに保存できるが、ホストマシンは、フィールド機器の識別のみを保存できる。このホストマシンのオペレータが、階層記述の更新を要求すると、ホストマシンは、フィールド機器の識別を含むRTUへの機器情報の要求を送信する。これに応じて、このRTUは、ローカルメモリからこの情報を取得し、取得した情報を階層ビルダへ提供する。このように、この階層ビルダは、機器階層を早く効率的に構築するために要求される情報を取得することができる。
【0009】
フィールド機器は、HARTプロトコルに準拠し、ホストに保存された機器識別は、HARTコマンド番号0(またはその適切な部分)に対する応答に対応することができる。このRTUは、コマンド番号13および20などの機器タグならびに現在の機器の状態を取得するためのHARTコマンドに対する応答を保存することができる。このRTUは、HARTの応答をキャッシュし、機器情報をホストに報告し、パススルーコマンドを処理するHART階層報告モジュールを実装することができる。このホストマシンおよびHART階層報告モジュールで動作する階層ビルダは、階層生成エンジンの構成要素として動作することができる。さらに、冗長を取り除くため、ホストは、ショート機器タグおよびロング機器タグを保存するのではなく、どのHART機器に対しても、1つの機器タグのみを保存することができる。より具体的には、このRTUは、入手可能な場合、有線HARTフィールド機器に対しては、ショート機器タグだけ、無線HARTフィールド機器に対しては、ロング機器タグだけを保存することができ(そうでなければ、このRTUは、無線HARTフィールド機器に対して、ショート機器タグを保存できる)、ホストは、このRTUのメモリ内で入手可能な同じタグを保存することができる。
【図面の簡単な説明】
【0010】
【
図1】
図1は、本開示の技術を使用して、RTUが機器情報をキャッシュして、ホストマシンがフィールド機器階層を構築することを可能にする例示的なプロセスプラントまたはプロセス制御システムの一部のブロック図である。
【
図2】
図2は、
図1のシステムで、動作可能な例示的なホストのブロック図である。
【
図3】
図3は、
図1のシステムで、動作可能な例示的な階層生成エンジンのブロック図である。
【
図4】
図4は、
図3の階層生成エンジンが構築可能な例示的な機器階層の概略図である。
【
図5】
図5は、本開示の技術による、機器階層を構築するためのホスト、RTUおよびいくつかのフィールド機器の間の情報の流れを図示する例示的なメッセージ通信図である。
【
図6】
図6は、
図1のRTUに実装可能なキャッシュを使用して機器情報を管理する例示的な方法の流れ図である。
【発明を実施するための形態】
【0011】
概要
一般的に、本開示の階層生成エンジンは、RTUに結合されるフィールド機器の階層を早く効率的に生成する。例示的な階層生成エンジンは、ホストマシンで動作する階層ビルダおよびRTUで動作するHART階層報告モジュールを含むことができる。第1の例では、このRTUは、フィールド機器にHARTコマンドを送信して、それぞれの機器識別、機器タグを決定し、機器タグを取得する。このRTUは、すばやくアクセス可能なキャッシュとして動作することができる、データベース内にこの情報を保存する。保存される情報は、機器タグを含むことができる。一例示的な実施例によれば、このRTUは、HART機器ごとにタグだけを保存する。このRTUはまた、取得した情報をホストマシンに転送することができる。
【0012】
階層ビルダは、ホストマシンのメモリに機器識別情報(または単に「機器識別」)を保存することができる。より具体的な例として、この階層ビルダは、ハードディスクなどの永続メモリにHARTコマンド番号0に対する応答を保存することができる。ホストマシンのオペレータが、階層情報を再構築または「リフレッシュ」したい場合、この階層ビルダは、RTUに機器情報要求を送信する。これに応じて、このRTUは、HARTコマンドをフィールド機器に再送せずに、RTUのメモリから機器情報を取得する。そして、このRTUは、機器情報をホストマシンに転送する。一例示的な実施形態では、このRTUは、今RTUに接続されているHART機器それぞれの機器状態および通信状態を転送する。
【0013】
ホストマシンで動作する階層ビルダが、RTUの更新された階層を構築するために必要な情報を取得すると、階層ビルダは、その階層の文字または視覚表現を生成する。このように、このホストマシンは、直接フィールド機器に照会せずに、このインスタンスの階層を再構築する。複数のRTUが、ホストマシンにアクセス可能なとき、オペレータは、特定のRTU、いくつかのRTUまたはアクセス可能なRTUの階層を再構築するよう要求することができる。したがって、この階層ビルダは、RTUでキャッシュされた情報を使用して、完全な階層または階層の所望の部分のみを構築することができる。さらに、この階層ビルダは、階層の特定の部分を再構築し、以前構築された階層の1つまたは複数の部分を変更せずに使用することができる。
【0014】
明確にするために記すと、機器階層を構築するための技術は、HART機器を参照して以下で主に論じられる。しかし、類似の技術が、他の種類のフィールド機器および産業自動化プロトコル(例えば、フィールドバス、Profibus)、特に機器情報を取得するためにメッセージを交換することが必要なプロトコルにも、適用可能であることが理解されよう。さらに、こうした技術は一般に、中間ブローカ機器または「エージェント」、特に多くの機器を含む巨大システムを使用して、ホストが遠隔機器からデータを取得するシステムで使用可能である。言い換えると、RTUは、中間ブローカ機器の一例に過ぎず、このホストマシンは、本開示の技術とともに使用可能な中央装置の一例に過ぎない。同様に、HARTフィールド機器は、本開示の技術が適用される遠隔装置のほんの一例である。
例示的なシステムおよび機器
【0015】
図1は、RTU12が、フィールド機器20に関する情報を取得、保存およびホスト14に報告するために動作する例示的なシステム10のブロック図である。このフィールド機器20は、 有線HART機器20A〜20Eおよび/または無線HART機器22A〜22Dを含むことができる。この有線フィールド機器20A〜20Eは、有線リンク24A〜24Cを介して通信可能である。この無線HART機器22A〜22Dは、対の機器の間で複数の通信リンクを介して無線メッシュネットワーク26内で動作する。このフィールド機器20は、バルブ、バルブポジショナ、スイッチ、センサ(例えば、温度センサ、圧力センサ、振動センサ、流量センサまたはpHセンサ)、ポンプ、ファンなどの任意の種類の機器であってよい。このフィールド機器20は、例えば、バルブの開閉、プロセスパラメータの測定などのプロセスまたはプロセス制御ループ内で、制御、監視および/または物理的機能を実行する。フィールド機器20に加えて、RTU12は、例えば、他のネットワークに対するアダプタまたはゲートウェイなどの他の遠隔装置に結合可能である、
【0016】
このRTU12は、任意の好適な汎用または埋め込み処理装置を含むことができるプロセッサ30、プロセッサ30により可読の任意の好適な永続および/または非永続記憶コンポーネントを含むことができるメモリ32、有線HARTカード34および無線カードHARTカード36を含むことができる。それぞれのカード34および36は、HART通信プロトコルに準拠するメッセージを送信および受信する様に構成される。このRTU12は、カード34を介して有線フィールド機器20A〜20Eに、カード36を介して無線フィールド機器22A〜22Dに、そして、少なくとも一部の実施形態では、無線アクセスポイント40にアクセス可能である。
【0017】
簡略化のために、
図1では、1台のホストマシン、1つのRTU、および1枚の有線カードおよび1枚の無線カードを介してRTUに結合されるフィールド機器のみを図示している。しかし、一般には、このシステム10は、追加の装置、通信リンクおよび通信ネットワークを含むことができる。例えば、実施形態によっては、このシステム10は、アクセスポイント、他のプロセスプラントへのゲートウェイ(例えば、イントラネットまたは企業広域ネットワークを介して)、外部システムへのゲートウェイ(例えば、インターネットへ)、ヒューマンインタフェース(HMI)装置、サーバ、データシステム(例えば、プロセスデータベース、ヒストリアンを含む)、コントローラ、コントローラ内で作動する入出力(I/O)カード、ルータ、追加の有線通信ネットワーク、追加の無線通信ネットワークなどを含むことができる。
【0018】
このメモリ32は、HART階層報告モジュール50を実装するプロセッサ30で実行可能なソフトウェアおよび/またはファームウェア命令を保存することができる。動作中、このモジュール50は、HARTコマンドをフォーマットし、フィールド機器20へ送信し、HARTコマンドへの応答をフィールド機器20から受信して、パススルーコマンドをホスト14とフィールド機器20との間で送信する。このモジュール50が、送受信することができる例示的なHARTコマンドは、
図4を参照してより詳細を論じられる。また、HART機器およびHARTコマンドは、本開示の技術を使用可能な通信プロセス制御情報の標準のほんの一例に過ぎないことに留意されたい。
【0019】
このモジュール50は、メモリ32の任意の好適な部分であってよいHART階層キャッシュ52の有線および/または無線フィールド機器20の情報を保存することができる。このキャッシュ52は、リレーショナルデータベースの1つまたは幾つかのテーブルとして、または任意の他の好適なデータ構造を使用して、実装可能である。一例示的な実施形態では、このキャッシュ52は、各フィールド機器20に対して、機器識別、機器タイプおよび機器タグを含むそれぞれの記録60を保存する。機器識別は、コマンド番号0に対する応答とすることができる。既知の通り、HART機器は、8文字の「ショートタグ」を報告し、HART機器によっては(rev7)、32文字の「ロングタグ」を報告することができる。さらに、このキャッシュ52は、RTU12が「見える」通りにフィールド機器の現状態を保存することができる。この状態は、たとえば、「動作中」または「オフライン」であってもよい。幾つかの実施形態においては、このモジュール50は、幾つかのフィールド機器20で両方のタグが入手可能な場合であっても、フィールド機器20のそれぞれの1つのタグをキャッシュ52に保存し、ホスト14に報告する。
【0020】
ホスト14からのコマンドに応じて機器情報を収集することに加えて、このモジュール50またはRTU12内で動作する他のコンポーネントは、機器20からの現在の情報でキャッシュ52を最新の状態に維持することができる。一般に、このRTU12は、フィールド機器20が開始した状態更新を受信し、または更新情報を求めてフィールド機器20を定期的にポーリングすることなどができる。
【0021】
一実施形態では、このホスト14は、
図2に示すように実装される。ホスト100は、メモリ104に結合される1つまたは複数のプロセッサ102を含む。この1つまたは複数のプロセッサ102は、例えば、汎用中央演算処理装置(CPUs)であってよい。このメモリ104は、1つまたは複数のプロセッサ102によって可読な任意の好適な記録媒体であってよく、永続および/または非永続コンポーネントを含んでもよい。このホスト100はまた、1つまたは複数のディスプレイ、タッチスクリーン、キーボード、スピーカ、マイクロフォンなどの任意の好適な組み合わせを含むユーザインタフェース106を含むことができる。設計エンジニア、計装エンジニア、技術者などのオペレータは、ユーザインタフェース106を操作して、コマンドを指定し、ホスト100から出力を受信する。さらに、このホスト100は、1つまたは複数のネットワークインタフェース108を含んで、それを介して、RTUを含む遠隔機器にアクセスできる。1つまたは複数のネットワークインタフェース108は、好適な有線および無線通信をサポートすることができる。
【0022】
メモリ104は、1つまたは複数のプロセッサ102で実行可能な命令ならびにこれらの命令が動作するデータを保存することができる。具体的には、このメモリ104は、プロセスプラントで動作するフィールド機器に関する情報、より具体的には、フィールド機器が動作するプロセス制御プラントに関する情報をオペレータに提供する、資産管理システム(AMS)110の命令を保存することができる。実施形態によっては、このAMS110は、プロセス制御プラントを操作する様々な態様を監視し制御する分散ソフトウェアシステムの唯一のコンポーネントとして動作することができる。このメモリ104はさらに、HART通信プロトコルに準拠するコマンドを生成し受信するよう構成されるHART通信コントローラ112を保存することができる。さらに、このメモリ104は、HART機器識別データ116を保存することができ、それは、RTUが報告する機器識別のテーブルとして実装可能である。
【0023】
実施形態によっては、この機器識別データ116は、HARTコマンド番号0に対する応答を含む。例えば、一実施形態では、このホスト100が、HARTコマンド番号0に対する完全な応答を機器識別として保存する。この機器識別は、拡張された機器タイプコード、改訂レベルおよび機器識別番号を含むことができる。他の実施形態においては、このホスト100は、機器識別として機器識別番号だけを保存する。より一般的には、こうした実施形態では、機器識別データ116は、HARTコマンド番号0に対する応答の全体または任意の好適な部分を含むことができる。実施形態によっては、この機器識別データ116は、対応するHART機器の寿命の期間変化しない統計的永続データである。
【0024】
AMS110は、階層ビルダ120を含むことができる。動作中、この階層ビルダ120は、RTUなどの遠隔機器から機器識別を受信し、この機器識別をHART機器識別データ116の一部としてメモリ104に保存し、この保存された機器識別を使用して、更新されたHART機器情報を効率的に要求し、遠隔機器から受信する。この階層ビルダ120は、HART機器間での親子関係の記載を含む所定のRTUに結合されたHART機器に関する情報を受信すると、その機器階層の文字および/または視覚表現を生成することができる。
【0025】
さらに明確にするために記すと、
図3は、上記で論じたフィールド機器階層を生成するコンポーネントの一部またはすべてを含むことができる例示的な階層生成エンジン150を示している。この実施形態の階層生成エンジン150は、階層ビルダ152、HART階層報告モジュール154、HART機器識別情報156およびHART階層キャッシュ158を含む。一部の実施形態によれば、この階層ビルダ152は、ホストマシンで動作し、このHART階層報告モジュール154は、RTUまたはフィールド機器に通信可能に結合される他の好適な機器で動作する。しかし、より一般的には、このモジュール152および154は、任意の好適な方法で2つ以上の機械の間に分散可能である。このモジュール152および154それぞれは、ソフトウェア、ファームウェア、ハードウェアまたはそれらの任意の好適な組み合わせを使用して、実装可能である。このモジュール152および154は、データ156および158をそれぞれ利用することができ、それぞれのデータが、1つまたは複数のメモリモジュールに保存可能で、任意の好適なデータ構造を使用して整理可能である。
例示的な機器階層
【0026】
次に、
図4は、階層ビルダ120または152が構築可能な、例示的な階層200の概略図を示している。上述のように、この階層ビルダ120または152はまた、階層200の任意の好適な視覚化または文字記述を生成することができる。例えば、この階層ビルダ120または152は、階層の各ノードに図を含んで、機器または通信チャネルの対応するタイプを示すことができる。
図4では、タイプ202の標識は、すでに拡張されたブランチに対応し、タイプ204の標識は、さらにノードおよび/またはサブブランチを示すために拡張可能なブランチに対応する。
【0027】
一般的に、機器階層は、RTUネットワーク内のHART機器の組織を記述する。典型的な機器階層は、ネットワークトポロジおよび以下の情報を記述する。(i)RTUネームおよびタイプ、(ii)HARTカード/モジュール、および(iii)有線チャネル。無線HARTでは、階層で、チャネルが指定されていない可能性があり、すべての無線HART機器が、同じチャネル上にあると見なす場合がある。所定のチャネル上のHART機器では、情報は、機器タグ、機器ホストパスおよびHARTコマンド番号0への応答を含む。しかし、実施形態によっては、HARTコマンド番号0への応答の一部は省略可能である。
【0028】
この階層200は、HART機器をモジュールノード(例えば、ノード210)およびチャネルモード(例えば、ノード220)の下に示している。ノードのコンポーネントは、機器タグおよび機器識別情報を含んでいる。より詳細を以下で論じるように、HART機器は、ショートタグ、および、場合によっては、ロングタグを含むことができる。この機器識別情報は、HARTコマンド番号0に対する応答とすることができる。無線HART機器の場合、階層200は、最上位にHARTサーバノード(例えば、230)および低いレベルに無線HARTアダプタノード(例えばノード250および252)と共に無線HART機器ノード(例えば、ノード240および242)を含んでいる。無線HARTアダプタに結合される有線機器は、サブ機器ノード(例えば、ノード260および262)として、階層200中に表すことができる。一般に、この階層200は、単一のRTUまたは複数のRTUに対応することができ、測定値を生成する、またはプロセスプラントならびにサーバ、アダプタ、ルータ、通信チャネルなどで物理的機能を実行するセンサ、アクチュエータ、ポジショナ、他の機器を表す任意の数のノードを含むことができる。
機器階層の生成
【0029】
ここで、
図5を参照すると、メッセージ通信
図250は、ホスト252、RTU254、および、まとめて「フィールド機器256」と呼ばれる、いくつかのフィールド機器256A、256B〜256Nとの間の情報の例示的な流れを示している。
図1および2を参照して上記で説明した、このホスト252は、ホスト14および/またはホスト100と類似でもよく、このRTU254は、RTU12と類似でもよく、フィールド機器256は、フィールド機器20と類似でもよい。
図5では、矢印は、有線または無線通信チャネルを介して、表示の方向の情報の流れを表している。各矢印は、1つのコマンドまたはメッセージまたは、場合によっては、一連のコマンドまたはメッセージに対応することができる。
【0030】
キャッシュ母集団ステージ260の間、ホスト252またはRTU254は、一連のコマンドを生成して、フィールド機器256から情報を収集する。続く再構築ステージ262の間、このホスト252は、RTU254に類似の情報を照会し、このRTU254は、フィールド機器256に照会せずに、RTU256のローカルのメモリから情報を取得する。図示の実施形態では、ホスト252は、パススルーHARTコマンドをRTUに送信するが、他の実施形態においては、このホスト252は、他の非HART通信プロトコルに準拠するメッセージをRTU254に送信し、それに応じて、RTU254は、HARTコマンドをフォーマットして、フィールド機器256に送信することができる。HARTは、フィールド機器、コントローラ、ホストマシンなどとの間でプロセス制御情報を交換するための通信プロトコルのほんの一例であり、他の実施形態においては、機器252、254および256は他の好適なプロトコルを使用してもよいことに再度留意されたい。
【0031】
図5に示すように、ホスト252は、ステージ260で、1つまたは複数のHARTコマンド270をフィールド機器256AのRTU254へ送信することができる。このHARTコマンド270は、個々のフィールド機器に対して特定であることができ、または、1つのHARTコマンドが、複数のフィールド機器のためのデータを要求するために送信可能である。ホスト252は、コマンド270を生成する前に、RTU254が追加されたことを検知し、RTU254に要求を送信して、RTU254が装備する有線および無線HARTカードを識別するよう求める場合がある。RTU254は、ホスト252がコマンド270を生成するのに必要な情報を提供しても良い。
【0032】
このコマンド270は、1つが入手可能なとき、(i)フィールド機器がその固有の識別を報告することを要求する、コマンド番号0、(ii)フィールド機器からショートタグを読み出すコマンド番号13、および(iii)フィールド機器からロングタグを読み出すコマンド番号20を含むことができる。RTU254は、コマンド270をコマンド272Aとしてフィールド機器256Aへ渡し(転送し)、応答272Bを受信する。
【0033】
RTU254は、この受信した応答をキャッシュに(イベント274)保存することができる。具体的には、RTU254は、機器識別、機器タイプおよびデータベースの機器タグデータを保存することができ、ローカルでアクセス可能なメモリ内の任意の好適なデータ構造を使用して、それらを実装可能である。RTU254が、
図1に示すRTU12と同様に実装される場合、HART階層報告モジュール50は、この情報をHART階層キャッシュ52に保存することができる。そして、RTU254は、要求された情報をメッセージ276としてホスト252へ転送することができる。ホスト252は、機器識別をローカルメモリに保存することができる(イベント278)。この機器識別は、HARTコマンド番号0に対する完全な応答またはその応答の所定の部分を含むことができる。
【0034】
ホスト252およびRTU254は、
図5に概略を示すように、フィールド機器256B〜256Nの同様のメッセージを交換することができる。すなわち、ステージ260の間、RTU254は、フィールド機器256A、256B〜256NからのHARTコマンドに対する応答を収集およびキャッシュして、ホスト252は、機器の識別をキャッシュしている。しかし、場合によって、RTU254はまた、定期的なRTU254からの要求に応答して、またはそうでなければ、ホスト252からの要求以外のイベントに応答して、フィールド機器256A、256B〜256Nのデータを収集する。これらのケースでは、RTU254は、フィールド機器256A、256B〜256Nのデータをホスト252へ転送せずに、そのデータをキャッシュすることができる。さらに、実施形態によっては、このRTU254は、HARTコマンド270またはコマンドタイプに基づいてRTU254で発したコマンドに対する応答を選択的にキャッシュすることができる。例えば、一実施形態のRTUは、対応するフィールド機器とより遅いデータを交換せず、キャッシュされたデータを使用してホスト252の次のコマンド番号0に対して応答するように、コマンド番号0に対する応答をキャッシュする。さらに、実施形態によっては、RTU254は、ホスト252のHARTコマンド270のすべてをパススルーメッセージとして扱うことができ、これらのパススルーメッセージに対する応答をキャッシュしない、またはそうでなければ、別の方法で処理することができる。こうした実施形態では、RTU254は、フィールド機器256A、256B〜256NがRTU254で発せられたコマンドに応じて提供するデータだけをキャッシュする。
【0035】
イベント274および278に続く時点で、ホスト252は、RTU254が結合される(メッセージ280)HART機器に関して、RTU254に照会することができる。複数のHARTコマンドを、フィールド機器2256A、256B〜256Nそれぞれに送信するのではなく、RTU254は、ローカルメモリの機器情報をルックアップして(イベント282)、ホスト252の照会に応答することができる(メッセージ284)。より具体的には、ホスト252は、機器識別をRTU254へ送信し、RTU254は、それを使用して、機器情報をルックアップすることができる。RTU254が、指定された機器の情報を見つけられない場合、このRTU254は、対応する有線または無線HARTカードを介して、コマンド番号0を送信することができる(しかし、実施形態によっては、ホスト252は、ホスト252のローカルのキャッシュだけに依存して、機器階層を再構築する)。また、場合によっては、このRTU254は、フィールド機器256A、256B〜256Nから受信した応答に対するタイムスタンプを保存することができ、ホスト252からの要求に応じて、キャッシュされたデータが古くない、すなわち、要求の時間に対してある特定の時間間隔の範囲内にある場合のみ、ホスト252にキャッシュされたデータを提供することができる。あるいは、このRTU254は、このタイムスタンプをメッセージ(複数可)284の一部としてホスト252に報告することができる、あるいは、このタイムスタンプを使用して、HARTコマンドをフィールド機器に送信して、新しい応答を取得して、その新しい応答でホスト252に応じるか、または、キャッシュされたデータを使用してすぐにホスト252に応答するかどうかを動的に決定することができる。
【0036】
図6は、上述のRTU12または254などのRTUで実装可能な、機器情報をキャッシュするための例示的な方法300の流れ図である。この方法は、ソフトウェア、ファームウェア、ハードウェアまたはそれらの任意の好適な組み合わせで実装可能である。
【0037】
方法302は、ブロック300で開始して、そこで、HARTコマンドへの応答が、受信され、キャッシュされる。上述のように、所定のフィールド機器に対して、RTUは、その機器の機器タグおよび現在の状態を保存することができる。RTUはまた、ホストに提供する(ブロック304、実施形態によっては、フィールド機器の寿命の間に一度は実行される可能性がある)ものと同じ機器識別を保存するまたは同じ機器識別でテーブルをインデックス化することができる。このように、ホストは、RTUが情報をキャッシュするフィールド機器を明白に参照することができる。
【0038】
次に、ブロック306で、RTUに結合された所定のフィールド機器に関する情報の要求が受信される。その要求は、機器識別を含む可能性がある。ブロック308で、このフィールド機器に関する情報は、機器識別を使用してローカルキャッシュに配置され、ブロック310でホストに提供される。上述のように、フィールドの情報がローカルメモリで見つけられない場合、1つまたは複数のHARTコマンドが送信されて、フィールド機器に照会することができる。例えば、HARTコマンド番号0が、送信可能である。
その他の選択肢
【0039】
上記論述を全体的に参照すると、代替案の一部は、初期階層ビルドからのHARTコマンド番号0の応答を排除することを含むことができる。言い換えると、RTUは、コマンド番号0に対する応答を転送することを省略して、ホストでの階層の構築プロセスを早め、この情報を、バックグラウンドタスクの一部としてまたは後の時間に提供することができる。
【0040】
さらに、一実施形態によれば、ホストは、履歴データに基づいた初期の階層を表示する。そして、ホストは、更新されたHART機器情報を収集するために1つまたは複数のRTUを介して、バックグラウンドタスクを起動する。このように、ホストは、RTUおよび/またはホストにキャッシュされた機器情報を使用して階層を素早く表示して、新しいネットワーク構成にしたがって、情報を更新する。
【0041】
さらに、一実施形態では、RTUは、RTUに結合されるすべてのHART機器に対するHARTコマンド番号0の応答をキャッシュすることができる。RTUは、パススルーHARTメッセージをホストから受信すると、HARTフィールド機器にパススルーメッセージを送信せずに、キャッシュされたデータを使用して、パススルーHARTコマンドに応答することができる。この実施形態では、ホストは、RTUがキャッシュされたデータを使用して応答するか、実際はパススルーHARTコマンドを再送信しているかを意識する必要がないことに留意されたい。言い換えると、ホストは、RTUでのキャッシング技術を特にサポートするよう構成される必要はない。
総論
【0042】
上述から、本開示の技術は、ホスト装置がフィールド機器で入手できる外部データに依存することを低減し、すでに入手可能なローカル情報を効率的に使用することが理解されよう。上述の特定の実施例では、RTUは、フィールド機器の最新情報を維持し、ある状況では、ホストおよびフィールド機器が、パススルー機器としてRTUを使用し、HARTコマンド/メッセージを交換することを不要にする。
【0043】
さらに、遠隔装置から静的情報を取得することに、比較的時間がかかり、将来情報が要求される可能性が高い状況では、本開示の技術により、遠隔装置から再度同じ情報を要求するのではなく、機器がローカルにアクセス可能なメモリに静的情報を保存することが可能になる。より具体的には、上述の例示的な実施形態および例では、ユーザが、機器階層を再構築するまたは同じHART機器をまだ有しているRTUに再接続するとき、そのRTUは、ローカルでアクセス可能なメモリからHARTコマンド番号0に対する応答を素早く取得し、ホストに該応答を提供することができる。
【0044】
さらに、本開示の技術は、データの冗長を低減する。上述の通り、RTUは、すべてのHART機器に対する1つのタグを保存することができ、ホストは、ホストで階層を生成するのに十分な、同じ1つのタグを保存することができる。
【0045】
特に明記されていない限り、「処理する」、「計算する」、「算出する」、「決定する」、「特定する」、「提示する」、「表示する」などの用語を使用する本明細書の論述は、1つまたは複数のメモリ(例えば、揮発性メモリ、不揮発性メモリまたはそれらの組み合わせ)、レジスタ、または情報を取得、保存、送信または表示する他の機械のコンポーネント内の物理(例えば、電子的、磁気的または光学的)量として表されるデータを操作または変換する機械(例えば、コンピュータ)の行為または処理を指すことができる。
【0046】
本明細書に記載するアプリケーション、サービス、エンジン、ルーチンおよびモジュールのいずれかは、ソフトウェアで実装される場合、任意の有形非一過性コンピュータ可読メモリに保存可能であり、例として、磁気ディスク、レーザディスク、ソリッドステートメモリ装置、分子メモリ記憶装置、光ディスクまたは他の記憶媒体、コンピュータのRAMまたはROM,あるいはプロセッサなどが挙げられる。本明細書に開示する例示的なシステムは、他のコンポーネントから、ハードウェア上で実行されるソフトウェアおよび/またはファームウェアを含むものとして開示されるが、こうしたシステムは、単に例示であり、限定的であると見なされるべきではないことに留意されたい。例えば、これらのハードウェア、ソフトウェアおよびファームウェアコンポーネントのいずれかまたはすべては、ハードウェアにおいてのみ、ソフトウェアにおいてのみ、またはハードウェアとソフトウェアの任意の組み合わせにおいて具現化可能と考えられる。したがって、同業者ならば、提供された例が、こうしたシステムを実装する唯一の方法でないことをすぐに理解するであろう。
【0047】
このように、本発明は、特定の実施例を参照して説明してきたが、それらは、例示のみを目的としており、本発明を限定するものではなく、本発明の趣旨および範囲を逸脱しない範囲で、本開示の実施形態に変更、追加または削除を実施可能であることは、同業者には明らかであろう。