(57)【要約】マルチプレクサが実質的にソフトウェアの形態で実施され、それによりマルチプレクサが監視プラットフォームとともに１つのユニットに一体化されることが可能になる。マルチプレクサは、デバイスのアドレスと、それらのデバイスが接続された対応するポート／チャネルとのマッピングを記憶するデータベースを含むことができる。ソフトウェアで実施されるエミュレーションブロックが、各コマンド／応答中のアドレスを調べ、そのコマンド／応答を適切に転送する。ソフトウェアによる実施のため、コマンドの一部が（転送されないように）阻止されることができる。別の態様によれば、応答を生成するために必要なデータが（デバイスから取り出す代わりに）コントローラブロックから取り出されることができ、それによりデバイスのオーバーヘッドを低減する。
2006516782.tif 000002
【特許請求の範囲】
【請求項１】
資産管理システムとアドレス指定可能な複数の遠隔デバイスとの間の通信を提供する制御システムであって、前記アドレス指定可能な複数の遠隔デバイスが使用されて製造プロセスを実施し、前記制御システムは、
前記資産管理システムから、前記アドレス指定可能な複数の遠隔デバイスに対する複数のコマンドを受け取るように結合され、前記複数のコマンドそれぞれを、前記アドレス指定可能な複数の遠隔デバイスのうち対応するデバイスに送るソフトウェアコンポーネントを備える、制御システム。
【請求項２】
前記アドレス指定可能な複数の遠隔デバイスは、対応する複数の経路でコントローラブロックに接続され、前記コントローラブロックは、前記アドレス指定可能な遠隔デバイスのステータスを表す信号を前記複数の経路で受け取り、前記製造プロセスを実施し、前記制御システムはさらに、前記コントローラブロックと連動して動作するように構成された監視ソフトウェアプログラムを備える、請求項１に記載の制御システム。
【請求項３】
前記ソフトウェアコンポーネントは、ソフトウェアマルチプレクサを備え、前記監視ソフトウェアプログラムおよび前記ソフトウェアマルチプレクサは、単一のユニットに集積化される、請求項２に記載の制御システム。
【請求項４】
前記コントローラブロックを備える総合ハードウェアコンポーネントをさらに備え、前記総合ハードウェアコンポーネントは、前記ソフトウェアマルチプレクサから前記複数のコマンドを受け取り、前記複数のコマンドを前記複数の経路を使用して前記アドレス指定可能な複数の遠隔デバイスに送るように設計される、請求項３に記載の制御システム。
【請求項５】
前記ソフトウェアマルチプレクサは、Ｃｏｎｔｒｏｌ  Ｎｅｔプロトコルを使用して前記複数のコマンドを前記総合ハードウェアコンポーネントに送る、請求項４に記載の制御システム。
【請求項６】
前記総合ハードウェアコンポーネントは、前記複数のコマンドに対応する複数の応答を受け取り、前記複数の応答を前記ソフトウェアマルチプレクサに送り、前記ソフトウェアマルチプレクサは、前記複数の応答を前記資産管理システムに送る、請求項５に記載の制御システム。
【請求項７】
前記ソフトウェアマルチプレクサは、前記アドレス指定可能な複数の遠隔デバイスのアドレスと対応する複数の経路とのマッピングを記憶する不揮発性メモリを備える、請求項３に記載の制御システム。
【請求項８】
前記ソフトウェアマルチプレクサは、前記単一のユニットが初期化される時に前記マッピングを前記不揮発性メモリに記憶するポピュレーションブロックを備える、請求項７に記載の制御システム。
【請求項９】
前記ソフトウェアマルチプレクサは、第１のコマンドに対する応答を生成するためのデータが前記コントローラブロックで使用可能であるか否かを決定し、前記データが前記コントローラブロックで使用可能である場合、前記ソフトウェアマルチプレクサは、前記データを前記コントローラブロックから取り出す、請求項３に記載の制御システム。
【請求項１０】
前記ソフトウェアマルチプレクサは、前記第１のコマンドが指向する対応するデバイスにアクセスせずに、前記資産管理システムに前記応答を送信する、請求項９に記載の制御システム。
【請求項１１】
前記ソフトウェアマルチプレクサは、Ｃｏｎｔｒｏｌ  Ｎｅｔを使用して前記コントローラブロックから前記データを取り出す、請求項１０に記載の制御システム。
【請求項１２】
前記ソフトウェアマルチプレクサは、第２のコマンドを受け取り、前記第２のコマンドの実行が、前記第２のコマンドが対象とする第２のアドレス指定可能な遠隔デバイスの構成を変えるか否かを決定し、前記第２のアドレス指定可能な遠隔デバイスが稼動中である場合、前記ソフトウェアマルチプレクサは、前記第２のコマンドを阻止する、請求項３に記載の制御システム。
【請求項１３】
前記アドレス指定可能な複数の遠隔デバイスはそれぞれ、ハイウエイアドレス指定可能遠隔トランスデューサ（ＨＡＲＴ）デバイスを含む、請求項１に記載の制御システム。
【請求項１４】
システムにマルチプレクサをエミュレートさせる１つまたは複数の命令シーケンスを担持するコンピュータ可読媒体であって、前記マルチプレクサは、資産管理システムとアドレス指定可能な複数の遠隔デバイスとの間に提供され、前記１つまたは複数の命令シーケンスが前記システムに含まれる１つまたは複数のプロセッサによって実行されると、前記１つまたは複数のプロセッサに、
前記資産管理システムから複数のコマンドを受け取るステップと、
前記複数のコマンドそれぞれを、前記アドレス指定可能な複数の遠隔デバイスのうち対応するデバイスに送るステップと、
の動作を生じさせるコンピュータ可読媒体。
【請求項１５】
前記アドレス指定可能な複数の遠隔デバイスのアドレスと、対応する複数の経路とのマッピングを不揮発性メモリに記憶するステップをさらに備える、請求項１４に記載のコンピュータ可読媒体。
【請求項１６】
前記記憶するステップは、前記システムが初期化される時に行われる、請求項１５に記載のコンピュータ可読媒体。
【請求項１７】
第１のコマンドに対する応答を生成するためのデータがコントローラブロックで使用可能であるか否かを決定するステップと、
前記データが前記コントローラブロックで使用可能である場合、前記データを前記コントローラブロックから取り出すステップと、
をさらに備える、請求項１４に記載のコンピュータ可読媒体。
【請求項１８】
前記第１のコマンドが指向する対応するアドレス指定可能な遠隔デバイスにアクセスすることなく、前記資産管理システムに前記応答を送信するステップをさらに備える、請求項１７に記載のコンピュータ可読媒体。
【請求項１９】
前記ソフトウェアマルチプレクサは、Ｃｏｎｔｒｏｌ  Ｎｅｔを使用して前記コントローラブロックから前記データを取り出す、請求項１８に記載のコンピュータ可読媒体。
【請求項２０】
第２のコマンドを受け取るステップと、
前記第２のコマンドの実行が、前記第２のコマンドが指向する第２のアドレス指定可能な遠隔デバイスの構成を変えるか否かを決定するステップと、
前記第２のアドレス指定可能な遠隔デバイスが稼動中であり、前記第２のコマンドの実行が前記構成を変える場合は、前記第２のコマンドを阻止するステップと、
をさらに備える、請求項１４に記載のコンピュータ可読媒体。
【請求項２１】
前記アドレス指定可能な複数の遠隔デバイスはそれぞれ、ハイウエイアドレス指定可能遠隔トランスデューサ（ＨＡＲＴ）デバイスからなる請求項１４に記載のコンピュータ可読媒体。
【請求項２２】
資産管理システムとアドレス指定可能な複数の遠隔デバイスとの間に設けられるマルチプレクサであって、
前記資産管理システムから複数のコマンドを受け取る資産マネジャインタフェースと、
ソフトウェア命令の形態で実施され、前記複数のコマンドそれぞれを受け取り、対応するコマンドを送るべき、前記アドレス指定可能な複数の遠隔デバイスのうち特定の遠隔デバイスを決定し、前記アドレス指定可能な複数の遠隔デバイスのうち前記特定の遠隔デバイスに対応するコマンドを送るエミュレーションブロックと、
を備えるマルチプレクサ。
【請求項２３】
前記アドレス指定可能な複数の遠隔デバイスのアドレスと、対応する複数の経路とのマッピングを記憶する不揮発性メモリをさらに備え、前記複数の経路はそれぞれ、前記アドレス指定可能な複数の遠隔デバイスのうち対応する遠隔デバイスに接続される、請求項２２に記載のマルチプレクサ。
【請求項２４】
前記エミュレーションブロックは、前記マルチプレクサが初期化される時に前記マッピングを生成し且つ記憶するポピュレーションブロックを備える、請求項２３に記載のマルチプレクサ。
【請求項２５】
第１のコマンドに対する応答を生成するためのデータが、前記アドレス指定可能な複数の遠隔デバイスに接続されたコントローラブロックで使用可能であるか否かを決定するコマンドハンドラおよびフロー制御ブロックと、
前記データが前記コントローラブロックで使用可能である場合に、前記コントローラブロックから前記データを取り出すパラメータアクセスブロックと
をさらに備える、請求項２２に記載のマルチプレクサ。
【請求項２６】
前記コマンドハンドラおよびフロー制御は、前記第１のコマンドが指向する対応するアドレス指定可能な遠隔デバイスにアクセスせずに、前記資産管理システムに前記応答を送信する、請求項２５に記載のマルチプレクサ。
【請求項２７】
前記エミュレーションブロックは、Ｃｏｎｔｒｏｌ  Ｎｅｔを使用して前記コントローラブロックから前記データを取り出す、請求項２６に記載のマルチプレクサ。
【請求項２８】
前記コマンドハンドラおよびフロー制御ブロックは、第２のコマンドを受け取り、前記第２のコマンドの実行が、前記第２のコマンドが指向する第２のアドレス指定可能な遠隔デバイスの構成を変えるか否かを決定し、前記第２のアドレス指定可能な遠隔デバイスが稼動中であり、前記第２のコマンドの実行が前記構成を変える場合は、前記第２のコマンドを阻止する、請求項２５に記載のマルチプレクサ。
【請求項２９】
前記アドレス指定可能な複数の遠隔デバイスはそれぞれ、ハイウエイアドレス指定可能遠隔トランスデューサ（ＨＡＲＴ）デバイスからなる、請求項２２に記載のマルチプレクサ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般には、製造プラントで使用される制御システムに関し、より具体的には、そのようなプラントで使用されるアドレス指定可能な遠隔デバイスを制御する、総合制御システムを実施する方法および装置に関する。
【背景技術】
【０００２】
制御システムは、一般に、製造プラントなどの環境で所望の工程を実施するために各種の遠隔デバイス（現場機器とも称する）の動作を調整および制御する。そして、各デバイスは、センサ（温度、フロー、圧力などの各種の可変量を測定する）、制御要素（バルブやスイッチなど）、および発信機（所望の情報を送信する）などの構成要素を含む。
【０００３】
各種の制御要素を操作する決定は、しばしば、製造工程を実施するデバイス内のいくつかの可変量（温度、フロー、圧力など）の状態（あるいはステータス）に基づく。したがって、一般に、センサは、対象とする状態を監視し、監視された情報をコントローラブロックに送信するように実施される。例えば、圧力発信機は圧力を測定し、フロー発信機は２つの異なる位置の間の密度とフローを測定し、発信機を使用して、測定されたパラメータを表す信号を送信する。コントローラブロックは、測定されたパラメータに基づいて（デバイスの）制御要素に制御信号を送信して、所望の製造工程を実施することができる。
【０００４】
遠隔デバイスは、しばしばアドレス指定できるように実施され、すなわち、対応するデバイスを識別するアドレスが提供される。そのようなアドレスは、多くの場合、資産管理システムなどのシステムにより、コマンド（特定のデバイスを対象とする）を送信し、それに対応する情報を受け取るために使用される。よく知られるように、資産管理システムは、一般に、デバイス名、タイプ、デバイスの使用回数、様々な状態（デバイスが受けた温度、圧力など）などの各種のステータスに関連する情報を保持し、そのようなステータス情報が、定期保全などの各種のオペレーション管理作業に使用される。
【０００５】
しばしば、デバイスと資産管理システム間のそのようなすべての通信を可能にするためにマルチプレクサが使用される。一般に、マルチプレクサは、資産管理システムから受け取ったコマンドをデバイスの１つ（コマンド中のアドレスによって特定される）に送り、同様に、対応するデバイスから受け取った応答を資産管理システムに送る。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
一実施形態では、マルチプレクサは、実質的にハードウェア形態で実現される。一般に、ハードウェアを利用する手法は、新しい機能を容易に実現することができない。例えば、ハードウェアを利用した実施に新しい機能を追加するには、新しいモジュールを追加することが必要となる場合があり、ハードウェアモジュールを追加するには、通例、ソフトウェアによる実現よりもはるかに多くの労力と費用が必要とされる。
【０００７】
さらに、ハードウェアによる実現は、比較的高コストであり、追加的なスペースも消費する。マルチプレクサ、コントローラブロック、資産管理システムなどのための複数のユニットを使用するために、コストとスペースの要件が増大する。そのため、新しい機能を追加する、および／またはスペース／コストの要件を最小に抑える、より高い柔軟性を提供する方法および装置が必要とされる。
【課題を解決するための手段】
【０００８】
本発明の一態様によれば、マルチプレクサが、実質的にソフトウェア命令の形態で実施される。このマルチプレクサは、製造プロセスを実施するアドレス指定可能な遠隔デバイスを対象とするコマンドを資産管理システムから受け取る資産マネジャインタフェースを含むことができる。ソフトウェア命令の形態で実現されるエミュレーションブロック（同じくマルチプレクサに含まれる）が、各コマンドを送るべき特定のデバイスを決定し、決定された特定のデバイスに対応するコマンドを送ることができる。
【０００９】
ソフトウェア実現は、追加的な機能が容易に追加されることを可能にする。また、ソフトウェア実現により、制御システムの実施の全コストを最小に抑えることもできる。ソフトウェア実現は、いくつかの例とともに下記で述べるいくつかの他の特性も提供する。一実施形態では、関連技術分野でよく知られるＨＡＲＴプロトコルに従って要求と応答が生成される。
【００１０】
本発明の別の態様によれば、エミュレーションブロックは、第１のコマンドに対する応答を生成するためのデータがコントローラブロックで得られるかどうかを決定するコマンドハンドラおよびフロー制御ブロックを含む。データがコントローラブロックで得られる場合は、パラメータアクセスブロックが、そのデータをコントローラブロックから取り出す。そのような状況では、コマンドハンドラおよびフロー制御ブロックは、第１のコマンドが指向する対応するデバイスにアクセスすることなく、資産管理システムに応答を送信する。
【００１１】
本発明の今一つの態様によれば、コマンドハンドラおよびフロー制御ブロックは、第２のコマンドを受け取り、第２のコマンドの実行が、第２のコマンドが指向する第２のデバイスの構成を変化させるか否かを決定する。第２のデバイスが稼動中（プラントオペレーションを制御している）であり、第２のコマンドの実行がその構成を変化させる（変化がプラントオペレーションの制御を妨害する可能性がある）場合、コマンドハンドラおよびフロー制御ブロックは、第２のコマンドを阻止する（送らない）。その結果、望ましくない構成の変化を避けることができる。
【００１２】
本発明の別の実施形態では、監視プラットフォームがマルチプレクサとともに単一のユニットに集積化される（マルチプレクサがソフトウェア命令の形態で実現されるため）。これらの両コンポーネントは、関連技術分野でよく知られるＣｏｎｔｒｏｌ  Ｎｅｔなどのプロトコルを使用して、共有経路でＩ／Ｏカードと通信することができる。
【００１３】
マルチプレクサの一実施形態は、デバイスのアドレスと、対応する経路（Ｉ／Ｏカードのポート／チャネル番号など）とのマッピングを記憶する不揮発性メモリ（データベースなど）を含むことができる。この不揮発性メモリは、マルチプレクサが初期化される時に設置されることができる。
【発明を実施するための最良の形態】
【００１４】
本発明のさらなる特徴と利点、ならびに本発明の各種実施形態の構造と動作について、添付図面を参照して以下で詳細に説明する。図面では、同様の参照符号は、一般に同一の要素、機能的に類似する要素、および／または構造的に類似する要素を指す。ある要素が最初に現れる図面は、対応する参照符号の一番左の数字で表される。
【００１５】
添付図面を参照して本発明を説明する。
１．概要
本発明の一態様によれば、マルチプレクサ（アドレス指定可能な遠隔デバイスを資産管理システムに接続する）と監視プラットフォーム（製造工程を実施するコントローラブロックと直接インタフェースをとる）が、１つのユニットに集積される。このような集積化により、配線の必要性と、制御システムの実現全体の費用を節減することが可能になる。加えて、１つのユニットでより多くの情報を得られるため、例を用いて以下に説明するように、いくつかの利点を得ることができる。
【００１６】
本発明の別の態様は、アドレス指定可能な遠隔デバイスを資産管理システムに接続するマルチプレクサを実質的にソフトウェア形態で実現することを可能にする。ソフトウェアによる実現は、コストの低下と、物理的な面積／スペースの要件の低減につながる可能性がある。ソフトウェア実現は、下記でより詳細に説明するようにいくつかの他の特性を可能にする。
【００１７】
本発明の今ひとつの態様によれば、マルチプレクサは、デバイスからデータをあらかじめ取り出し、記憶されたデータを要求するコマンドが受け取られたときにそのデータを前送する。この事前の取り出しにより、コマンドを迅速に処理できる可能性がある。
【００１８】
本発明のさらに別の態様は、特にデバイスが稼動中である（すなわちプラントオペレーションを制御している）時に、マルチプレクサがデバイスの望ましくない再構成（資産管理システムからの書き込みコマンドなど）を阻止できるようにする。
【００１９】
本発明のいくつかの態様について、例示のための例を参照して下記で説明する。本発明の完全な理解を提供するために、多数の具体的な詳細、関係、および方法が述べられることを理解されたい。しかし、当業者は、本発明は、それらの具体的な詳細の１つまたは複数がなくとも、あるいは他の方法を用いて実現できることを容易に理解されよう。他の例では、本発明をあいまいにするのを回避するために、よく知られた構造あるいは動作は詳細に述べない。
【００２０】
本発明の一部の態様は、本発明の少なくとも一部の態様を実現していない、制御システムの実現の理解に基づいて明確に理解することができる。そのため、そのような実現を初めに以下で詳細に説明する。
２．本発明の少なくとも一部の態様を実現していない実施形態
図１は、本発明の少なくとも一部の態様を実現していない製造プラント中の制御システム例の詳細を示すブロック図である。以下の実施形態は、単に例示として、ＨＩＧＨＷＡＹ  ＡＤＤＲＥＳＳＡＢＬＥ  ＲＥＭＯＴＥ  ＴＲＡＮＳＤＵＣＥＲ（ハイウエイ・アドレス可能遠隔トランスデューサ：ＨＡＲＴ）プロトコルを参照して説明する。ただし、本発明の各種態様は、他のプロトコルを使用して実現することができる。ＨＡＲＴプロトコルについては、合衆国７８７５９テキサス州オースチンＲｅｓｅａｒｃｈ  Ｂｏｕｌｅｖａｒｄ  ９３９０，Ｓｕｉｔｅ  Ｉ＿３５０のＨＡＲＴ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｆｏｕｎｄａｔｉｏｎ（通信基礎）から入手可能な文献「ＨＡＲＴ  Ｆｉｅｌｄ  Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ  Ｐｒｏｔｏｃｏｌ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ（ＨＡＲＴ分野通信プロトコル仕様）  ＨＣＦ＿ＳＰＥＣ＿１２  Ｒｅｖ  ６．０：Ｒｅｌｅａｓｅｄ  ｏｎ  １８ｔｈ  Ａｐｒｉｌ  ２００１」（ｈｔｔｐ：／／ｗｗｗ．ｈａｒｔｃｏｍｍ．ｏｒｇ）にさらに詳細に説明される。同文献は、全体が本願に組み込まれる。
【００２１】
図に示す制御システムは、ＨＡＲＴデバイス１１０−１から１１０−Ｍ、資産管理システム１２０、コントローラブロック１３０、ＨＡＲＴマルチプレクサ１４０、監視プラットフォーム１５０、および端末パネル１６０−１から１６０−Ｎ（ＭおよびＮは整数）を含む。各構成要素について以下で詳細に説明する。
【００２２】
ＨＡＲＴデバイス１１０−１から１１０−Ｍは、所望プロセスの制御を支援する各種動作を行う。また、ＨＡＲＴデバイス１１０−１から１１０−Ｍはそれぞれ、４−２０ｍＡアナログ信号とデジタルデータの組み合わせを生成し、送信する。このアナログ信号成分は、測定された可変量を示し、デジタルデータは、資産管理システム１２０から受け取られたＨＡＲＴコマンドへの応答として生成される。ＨＡＲＴデバイス１１０−１から１１０−Ｍはそれぞれ、対応する同じケーブルを使用して、アナログ信号成分とデジタルデータの両方を、端末パネル１６０−１から１６０−Ｎの対応するパネルに送信する。例えば、ＨＡＲＴデバイス１１０−１は、ケーブル１１６−１Ａを使用してアナログ成分とデジタルデータの両方を送信する。
【００２３】
ＨＡＲＴデバイス１１０−１から１１０−Ｍはそれぞれ、ＨＡＲＴコマンドを（資産管理システム１２０から）受け取り、応答を生成することもできる。ＨＡＲＴコマンドが受け取られるケーブルと同じケーブルを使用して応答を送信することができる。各ＨＡＲＴデバイスには、一意のアドレス（製造者識別子、デバイスタイプ、およびデバイス番号を含む）が割り当てられ、それにより各ＨＡＲＴコマンドが特定のＨＡＲＴデバイスに誘導され、各応答が特定のＨＡＲＴデバイスから発信されたものと識別されることが可能になる。
【００２４】
端末パネル１６０−１から１６０−Ｎはそれぞれ、ＨＡＲＴデバイス１１０−１から１１０−Ｍの対応するものから、４−２０ｍＡアナログ成分とデジタルデータの両方を受け取る。アナログ成分は、コントローラブロック１３０に直接送信され、デジタルデータは、ＨＡＲＴマルチプレクサ１４０に送信される。経路１６３−１は、複数の物理線を含み、各線は、対応するＨＡＲＴデバイスによって生成されたアナログ信号成分を送信する。同様に、経路１６７−１も複数の物理線を含み、各線は、対応するＨＡＲＴデバイスによって生成された（および、対応するＨＡＲＴデバイスを対象とする）デジタルデータを送信する。
【００２５】
監視プラットフォーム１５０は、経路１５３のＣｏｎｔｒｏｌ  Ｎｅｔプロトコルを使用して、各種のコントローラブロック（図を簡潔にするために１つのブロック１３０のみを図示する）とのインタフェースをとって、監視および制御（すなわちステータス情報を調べ、製造プロセスを制御するコマンドを発行する）、設定の管理（コントローラブロック１３０の論理的動作を指定する）、および警告管理（温度や圧力が高レベルに上がった場合にユーザに通知するなど）などのタスクを行う。一般に、監視プラットフォームは、プラントで実現しようとする製造プロセスの制御に関連するタスクを行う。
【００２６】
Ｃｏｎｔｒｏｌ  Ｎｅｔプロトコルについては、合衆国フロリダ州３３４９８＿６７９７ボカ・ラトンＳｔａｔｅ  Ｒｏａｄ  ７  ＃Ｆ６，ＰＭＢ  ３１５のＣｏｎｔｒｏｌ  Ｎｅｔ  Ｉｎｔｅｒｎａｔｉｏｎａｌ（コントロール・ネット・インターナショナル）から入手可能な文献「Ｃｏｎｔｒｏｌ  Ｎｅｔ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ  Ｖｅｒ  ２．０」１９９８年３月３１日  （ｈｔｔｐ：／／ｗｗｗ．ｃｏｎｔｒｏｌｎｅｔ．ｏｒｇ）にさらに詳細に説明される。同文献は、全体が本願に組み込まれる。一実施形態では、監視プラットフォーム１５０は、本特許出願の譲受人であるＨｏｎｅｙｗｅｌｌ社（ｗｗｗ．ｈｏｎｅｙｗｅｌｌ．ｃｏｍ）から入手可能なＥｘｐｅｒｉｏｎ  Ｓｅｒｖｅｒを使用して実現される。
【００２７】
コントローラブロック１３０は、ＨＡＲＴデバイス１１０−１から１１０−Ｍによって生成された４−２０ｍＡアナログ信号を受信し、監視プラットフォーム１５０からダウンロードされる、あらかじめ定義された対応するロジックに基づいて、（図示しない、製造プロセスを支援するデバイス内の）各種の制御要素に制御信号を送信する。例えば、ＨＡＲＴデバイス１１０−１が温度計を含み、受信されたアナログ信号が、温度が所定の閾値を超えていることを示す場合、コントローラブロック１３０は、エネルギー供給（温度上昇の原因となった）を遮断する、あるいは減少させる制御信号を（図示しない別の経路で）送信することができる。コントローラブロック１３０から端末パネル１６０−Ｎへの接続は、図を簡潔にするために図１には示していない。
【００２８】
あらかじめ定義されたロジックは、所定の閾値や制御信号の形式／宛先などの情報を含む。一実施形態では、コントローラブロック１３０は、複数の入出力（Ｉ／Ｏ）カードを含み、各Ｉ／Ｏカードは、例えば８チャネルや１６チャネルなどの複数のＩ／Ｏチャネルを含むことができる。各Ｉ／Ｏチャネルは、ＨＡＲＴデバイス１１０−１から１１０−Ｍのいずれか１つから／へアナログ信号（入力／出力）を受信または送信するように構成されることができる。
【００２９】
資産管理システム１２０は、ＨＡＲＴデバイス１１０−１から１１０−Ｍに各種のＨＡＲＴコマンドを送信して動作を変更する、あるいは、各種の情報（例えばサポートされる最大温度などのステータスや動作能力に関連する情報）を要求する。ＨＡＲＴコマンドは、経路１２４を使用して送信されることができる（そして応答が受信されることができる）。ＨＡＲＴコマンドを使用して、関連技術分野でよく知られるように、ＨＡＲＴデバイスの較正などの各種機能を提供することができる。
【００３０】
ＨＡＲＴマルチプレクサ１４０は、資産管理システム１２０から受け取ったＨＡＲＴコマンドを、対応するＨＡＲＴデバイスに送るように動作する。同様に、ＨＡＲＴマルチプレクサ１４０は、ＨＡＲＴデバイスから受け取った応答を資産管理システム１２０に転送するように動作する。図では、ＨＡＲＴマルチプレクサ１４０は、スレーブマルチプレクサ（ｍｕｘ）モジュール１７０−１から１７０−Ｋとマスタマルチプレクサ（ｍｕｘ）モジュール１８０を含み、これらの構成要素はすべて、実質的にハードウェア形態で実現される。一実施形態では、マスタマルチプレクサとスレーブマルチプレクサは、それぞれ、ドイツ、マンハイムＫｏｎｉｇｓｂｅｒｇｅｒ  Ａｌｌｅｅ  ８７，６８３０７のＰｅｐｐｅｒ＋Ｆｕｃｈｓ有限責任会社から入手可能なＫＦＤ２−ＨＭＭ−１６製品とＫＦＤ２−ＨＭＳ−１６製品に相当する。
【００３１】
スレーブマルチプレクサモジュール１７０−１から７０−Ｋはそれぞれ複数の線に接続され、各線は、対応するＨＡＲＴデバイスへの接続を提供する（対応する端末パネルを介して）。各線を使用して、対応するＨＡＲＴデバイスとの間でデータを送受信する。資産管理システム１２０から（マスタマルチプレクサモジュール１８０を介して）データパケット（「デジタルデータ」）が受信されると、アドレスフィールドが調べられてそのデータパケットを特定の線に送る。一方、ＨＡＲＴデバイスから受信されたデータパケットは、マスタマルチプレクサモジュール１８０に送られる。
【００３２】
マスタマルチプレクサモジュール１８０は、資産管理システム１２０から受信された各データパケットを、データパケット中にあるＨＡＲＴアドレスに基づいて、スレーブマルチプレクサモジュール１７０−１から１７０−Ｋの１つに、または、直接端末パネル（端末パネル１６０−Ｍを参照して図示する）に送信する。したがって、複数のマルチプレクサをカスケード接続することができ、一部のマルチプレクサは、スレーブとマスタの両方として動作することが理解できよう。スレーブマルチプレクサモジュール１７０−１から１７０Ｋは、この場合もＨＡＲＴアドレスに基づいて、対応する端末パネル１６０−１から１６０−Ｎにデジタルデータを送信する。
【００３３】
図１には例示として、数個の代表的な構成要素のみを示す。しかし、製造プラントの制御システムは、より多くの構成要素を含むことができる。例えば、一実施形態では、経路１２４は、最高で３１個のマスタマルチプレクサモジュール１８０を駆動することができる。各マスタマルチプレクサモジュール１８０は、１６個のスレーブマルチプレクサモジュールを駆動することができ、各スレーブマルチプレクサモジュールは、最高１６個のＨＡＲＴデバイスを制御することができ、その結果合計７９３６個のＨＡＲＴデバイスとなる。
【００３４】
図１のシステムが持ついくつかの課題例（あるいは改善すべき領域）を参照して説明を続ける。そのような課題が本発明の各種特徴によって対処される方式を次に説明する。
３．課題の例
図１の実施形態に伴う課題の１つは、構成要素の数である。一般に、構成要素が多くなると、コストが高くなり、したがって望ましくない場合がある。
【００３５】
別の課題は、ＨＡＲＴデバイスに送信されるＨＡＲＴコマンドをコントロールすることができないことである。例えば、資産管理システム１２０は、プラントが稼動中時にＨＡＲＴデバイスにＨＡＲＴコマンドを送信することができ、ＨＡＲＴデバイスでそのようなＨＡＲＴコマンドを実行することが望ましくない場合がある。例えば、ＨＡＲＴコマンドは、信号の動作範囲を特定の領域（較正など）に設定することができるが、製造プロセスの適正な動作を支援するために何らかの他の領域が必要とされる場合があるため、そのようなコマンドの実行が望ましくない場合がある。
【００３６】
もう１つの課題は、異なる構成要素（資産管理システム１２０、コントローラブロック１３０、監視プラットフォーム１５０など）に情報が断片化されることであり、その結果いくつかの非効率性につながる可能性がある。例えば、コントローラブロック１３０は、ＨＡＲＴコマンドを使用して資産管理システム１２０から要求される情報と同じ情報を含むことができ、ＨＡＲＴデバイスは、そのコマンドを処理してその情報を提供することを強制される場合がある。一般には、ＨＡＲＴデバイスのオーバーヘッドを最小にすることが望ましい。
【００３７】
上記および他の問題（改良の見込み）は、下記で詳細に述べる本発明の各種態様によって対処される。
４．構成要素数の減少
図２は、本発明の一態様による、ＨＡＲＴデバイスを制御することができる方式を説明するブロック図である。例示として、図１を参照して説明を提供する。ただし、ここに提供される開示に基づき当業者には明らであるように、本発明の各種態様は、いくつかの他の実施形態／環境で実現することができる。
【００３８】
したがって、図２は、資産管理システム１２０およびＨＡＲＴデバイス１１０−１から１１０−Ｍとともに動作する、総合ソフトウェアコンポーネント２５０と総合ハードウェアコンポーネント２７０を含んでいる。図１と比較すると、監視プラットフォーム１５０とＨＡＲＴマルチプレクサ１４０が、総合ソフトウェアコンポーネント２５０に一体化されていることが理解できよう。また、コントローラブロック１３０と端末パネル１６０−１〜１６０−Ｎが、総合ハードウェアコンポーネント２７０に一体化されている。
【００３９】
図示するように、総合ハードウェアコンポーネント２７０は、ＨＡＲＴデバイス１１０−１から１１０−Ｍからの線（１１６−１Ａおよび１１６−１Ｂを含む）に接続される。一実施形態では、総合ハードウェアコンポーネント２７０は、いくつかのユニットを含み、各ユニットは、プロセッサ（図示せず）と複数のＩ／Ｏカードを含む。各Ｉ／Ｏカードは、入力チャネル（ＨＡＲＴコマンドとアナログ信号成分の両方が受信される）または出力チャネル（製造プロセスに関連するアナログおよびデジタル両方の制御信号が送信される）のいずれかをサポートするポートを含む。ユニット間の通信は、Ｃｏｎｔｒｏｌ  Ｎｅｔを使用して実施される。
【００４０】
総合ハードウェアコンポーネント２７０（またはその中のＩ／Ｏカード）は、ＨＡＲＴデバイスから受信されるアナログ信号成分とＨＡＲＴデジタルデータを分配する（端末パネル１６０−１から１６０−Ｎに相当）。デジタルデータは、下記で説明するように資産管理システム１２０に送られる。アナログ信号成分は、内部で処理されて製造プロセスを実施する（コントローラブロック１３０に相当）。総合ハードウェアコンポーネント２７０は、いくつかの市販製品を使用して実現されることができる。総合ハードウェアコンポーネント２７０の一実施形態は、本願の譲受人であるＨｏｎｅｙｗｅｌｌ  Ｉｎｔｅｒｎａｔｉｏｎａｌ社から市販されるようなＣｏｎｔｒｏｌ  Ｎｅｔ互換製品を使用して実施される。
【００４１】
総合ソフトウェアコンポーネント２５０は、監視プラットフォーム１５０とＨＡＲＴマルチプレクサ１４０の両方によって提供される機能を実現することができる。したがって、監視プラットフォーム１５０は、構成管理、イベント管理などのタスクを実施することができる。そのような実施は、周知の方式で行われることができる。一実施形態では、ソフトウェア命令（および必要とされるその他の関連ハードウェア）が監視プラットフォーム１５０に追加されて総合ソフトウェアコンポーネント２５０を実施する。したがって、Ｃｏｎｔｒｏｌ  Ｎｅｔプロトコル（上述した）を経路２５７で実施して、総合ハードウェアコンポーネント２７０と、総合ソフトウェアコンポーネント２５０の監視プラットフォーム１５０部分との間のインタフェースをサポートすることができる。
【００４２】
本発明の別の態様によれば、同じ経路２５７が、コマンドを送信し、応答を受信するためにも使用される。そのため、総合ハードウェアコンポーネント２７０は、監視プラットフォーム１５０部分とコントローラブロック１３０間のインタフェースのための経路と、（ＨＡＲＴデバイスとの間で）コマンド／応答を渡す経路の２つの論理経路もサポートする必要がある場合がある。これらのコマンドと応答は、上述のＣｏｎｔｒｏｌ  Ｎｅｔプロトコルを使用してトンネリング（カプセル化）されることができる。一実施形態では、ゲートウェイオブジェクト指向のする未接続のＣｏｎｔｒｏｌ  Ｎｅｔメッセージタイプを使用してトンネリングが実施され、そのオブジェクトとともにいくつかのサービスを定義して要求と応答を実現することができる。
【００４３】
総合ソフトウェアコンポーネント２５０の例示的実施の詳細を参照して説明を続ける。
５．総合ソフトウェアコンポーネント
図３は、本発明の一実施形態における総合ソフトウェアコンポーネント２５０の詳細を示すブロック図である。総合ソフトウェアコンポーネント２５０は、処理装置（ＣＰＵ）３１０、ランダムアクセスメモリ（ＲＡＭ）３２０、ストレージ３３０、ディスプレイインタフェース３６０、Ｉ／Ｏカードインタフェース３７０、ネットワークインタフェース３７５、ＲＳ−２３２インタフェース３８０、および入力インタフェース３９０を含む。各構成要素について下記でさらに詳細に説明する。
【００４４】
ディスプレイインタフェース３６０は、例えばＨＡＲＴデバイスから受け取られるステータス情報に基づく各種の警告を表す出力信号（図示しない表示装置に対する、ＨＡＲＴデバイスのステータス情報を表すディスプレイ信号など）を提供する。入力インタフェース３９０（図示しないキーボードおよび／またはマウスなどとのインタフェースなど）は、人が、総合ソフトウェアコンポーネント２５０に必要な入力を提供することを可能にする（バルブを閉じる、デバイスのパラメータ値を変更するなど）。ディスプレイインタフェース３６０および入力インタフェース３９０は、例えばユーザが総合ソフトウェアコンポーネント２５０と対話できるようにするために使用することができる。
【００４５】
ＲＳ−２３２インタフェース３８０は、総合ソフトウェアコンポーネント２５０が資産管理システム１２０からＨＡＲＴコマンドを受け取り、システム１２０に応答を送信できるようにする接続性を提供する。ＲＳ−２３２プロトコルは、所望の接続性を提供する例示的プロトコルを表す。そのような接続性を提供するために他のプロトコルを使用することもできる。同様に、ネットワークインタフェース３７５は、ＴＣＰ／ＩＰなどのプロトコルを使用して他のシステムへの接続性を提供する。ＲＳ−２３２インタフェース３８０、ネットワークインタフェース３７５、ディスプレイインタフェース３６０、および入力インタフェース３９０は、周知の方式で実現されることができる。
【００４６】
Ｉ／Ｏカードインタフェース３７０は、総合ハードウェアコンポーネント２７０と通信するための物理インタフェース、電気インタフェース、およびプロトコルインタフェースを提供する。一般に、Ｉ／Ｏカードインタフェース３７０は、総合ハードウェアコンポーネント２７０に転送するためにＣＰＵ３１０からコマンドを受け取る。Ｉ／Ｏカードインタフェース３７０は、ＣＰＵ３１０に前送するために総合ハードウェアコンポーネント２７０から応答を受け取る。一実施形態では、Ｉ／Ｏカードインタフェース３７０は、関連技術で知られるＲＳ−２３２プロトコルと合致するように実現される。
【００４７】
２次メモリ３３０は、ハードドライブ３３５および取り外し可能ストレージドライブ３３７などのユニットを含むことができる。図にはメモリユニットは総合ソフトウェアコンポーネント２５０の中に提供されるものと示すが、メモリは外部のユニットから提供されることもできることは理解されたい（ネットワークファイル共有、ストレージエリアネットワークなどの技術を使用して）。
【００４８】
２次ストレージ３３０は、例えば監視プラットフォーム１５０およびＨＡＲＴマルチプレクサ１４０の動作を行うためのソフトウェア命令およびデータを記憶することができ、この記憶により、総合ソフトウェアコンポーネント２５０は、本発明によるいくつかの機能を提供することができる。一般に、２次ストレージ３３０は、データおよび／またはソフトウェア命令が記憶された１つまたは複数の機械可読媒体を提供する。
【００４９】
このデータおよび命令の一部またはすべては、取り外し可能記憶装置３４０で提供することができ、データと命令は、取り外し可能記憶装置３３７によって読み出され、ＣＰＵ３１０に提供されることができる。フロッピー（登録商標）ドライブ、磁気テープドライブ、ＣＤ−ＲＯＭドライブ、ＤＶＤドライブ、フラッシュメモリ、取り外し可能メモリチップ（ＰＣＭＣＩＡカード、ＥＰＲＯＭ）は、そのような取り外し可能ストレージドライブ３３７の例である。
【００５０】
ＲＡＭ３２０は、経路３５０でストレージ３３０から命令とデータを受け取り、実行のためにＣＰＵ３１０に命令を提供する。ＣＰＵ３１０は、１つまたは複数のプロセッサを含むことができる。そのプロセッサの一部は、ＲＡＭ３２０から提供される命令を実行する汎用プロセッサとすることができる。一部のプロセッサは、特定のタスク（ＨＡＲＴコマンドの処理や警告管理など）に適合された特殊目的プロセッサとすることができる。特殊目的プロセッサも、ＲＡＭ３２０から命令を提供することができる。一般に、ＣＰＵ３１０は、各種タイプのメモリ媒体（ＲＡＭ３２０、ストレージ３３０、および取り外し可能記憶ユニット３４０を含む）から命令のシーケンスを読み出し、その命令を実行して本発明の各種機能を提供する。
【００５１】
この文献では、用語「コンピュータプログラム製品」は、一般に、取り外し可能記憶装置３４０またはハードドライブ３３５に設置されたハードディスクを指すために使用される。このコンピュータプログラム製品は、総合ソフトウェアコンポーネント２５０にソフトウェアを提供する手段である。上記のように、ＣＰＵ３１０は、そのようなコンピュータ可読媒体からソフトウェア命令を取り出し、その命令を実行して本発明の各種機能を提供することができる。
【００５２】
詳細には、ＨＡＲＴマルチプレクサ１４０によって提供される機能は、多くの点では、総合ソフトウェアコンポーネント２５０中で実行されるそのような命令を実行することによりサポートされる。下記で述べるように、ソフトウェア命令によってサポートされる、ＨＡＲＴマルチプレクサ１４０を実施することができる方式を参照して説明を続ける。
６．ソフトウェアマルチプレクサ
図４は、本発明の一実施形態におけるソフトウェアマルチプレクサ４００の詳細を説明するブロック図である。ソフトウェアマルチプレクサ４００は、ＨＡＲＴマルチプレクサ１４０の動作をエミュレートする。エミュレーションとは、一般に、実質的点で内部実装を変えて、（ＨＡＲＴマルチプレクサ１４０と）同様のインタフェースを他の相互作用デバイス（この場合はＨＡＲＴデバイス、総合ハードウェアコンポーネント２７０、および資産管理システム１２０）に提供することを意味する。ここでは、ソフトウェアマルチプレクサ４００は、ソフトウェア形態で実現され、下記でいくつかの例とともに説明するように、ハードウェア実現では得られない機能を提供するように拡張されることができる。
【００５３】
例示として、図１および２を参照してソフトウェアマルチプレクサ４００を説明する。ただし、ソフトウェアマルチプレクサ４００は、他の環境でも同様に実現されることができる。ソフトウェアマルチプレクサ４００は、資産管理インタフェース４１０と、エンジニアリング・リポジトリ・データベース（ＥＲＤＢ）および監視コントロールネットアクセス４２０と、マルチプレクサエミュレーションおよびデータベース４３０の３層に論理的に分割される。各層の動作を以下で説明する。
【００５４】
初めに、ＥＲＤＢは、制御システムの各種要素の構成についての各種情報を保持する構成データベース（外部に提供されるものなど。図示せず）を指すことを理解すると助けとなる。例えば、その情報は、総合ソフトウェアコンポーネント２５０がシミュレートすることを必要とする可能性があるＨＡＲＴマルチプレクサの数、ＨＡＲＴ対応デバイスが存在する総合ハードウェアコンポーネント２７０の特定チャネル（ポート）等を指定することができる。
【００５５】
引き続き図４を参照すると、ＥＲＤＢおよび監視コントロールネットアクセス４２０は、構成データベースアクセスブロック４２５と監視コントロールネットアクセスブロック４２７の２つのモジュールを含む。マルチプレクサエミュレーションおよびデータベース４３０は、コマンドパーサ４４０、コマンドハンドラおよびフロー制御４５０、ハードウェアマルチプレクサマッパ４６０、パラメータアクセス４６５、ポピュレーションブロック４６７、ＭＵＸデータベース４７０、データベースアクセス４８０、および機器リスト４９０を含む。各モジュールについて以下で詳細に説明する。
【００５６】
資産管理インタフェース４１０は、ＲＳ−２３２インタフェース３８０を介して資産管理システム１２０からＨＡＲＴコマンドを受け取り、資産管理システム１２０に応答を送信することができる。資産管理インタフェース４１０は、受け取ったＨＡＲＴコマンドをコマンドパーサ４４０に送信する。送られる応答は、コマンドハンドラおよびフロー制御ブロック４５０から受け取られることができる。構成データベースアクセスブロック４２５は、ＥＲＤＢへのアクセスを可能にする。ＥＲＤＢとのインタフェースは、互換性のあるプロトコル（Ｍｉｃｒｏｓｏｆｔから入手可能なＤＣＯＭプロトコルなど）を使用して実現されることができる。
【００５７】
監視コントロールネットアクセスブロック４２７は、コマンドハンドラおよびフロー制御４５０から受け取ったＨＡＲＴコマンドをＩ／Ｏカードインタフェース３７０に渡す。同様に、監視コントロールネットアクセスブロック４２７は、ＨＡＲＴデバイスから受け取った対応する応答を、コマンドハンドラおよびフロー制御４５０に渡すこともできる。また、監視コントロールネットアクセスブロック４２７は、総合ハードウェアコンポーネント２７０内で利用可能な各種パラメータへのアクセスを可能にすることができる。
【００５８】
ポピュレーションブロック４６７は、ＥＲＤＢから構成に関連する情報を取り出し、適切な措置を取る。例えば、取り出される情報は、ソフトウェアマルチプレクサ４００によってシミュレートされることが必要とされるＨＡＲＴマルチプレクサの数、および、総合ハードウェアコンポーネント２７０に含まれるＩ／Ｏカードとポートの数を示すことができる。この情報は次いでコマンドハンドラおよびフロー制御４５０に渡され、コマンドハンドラおよびフロー制御４５０は、受け取った情報に合致するコマンドを渡す。
【００５９】
また、ポピュレーションブロック４６７は、監視コントロールネットアクセスブロック４２７とのインタフェースをとって、ＨＡＲＴデバイスに関連する各種データを取り出すことができる。例えば、各ポート／チャネルのマシンアドレスを特定することができ、データベースアクセス４８０とのインタフェースをとることにより、ポート番号へのマシンアドレスのマッピング（およびその逆）をマルチプレクサデータベース４７０に記憶することができる。一実施形態では、ポピュレーションブロック４６７は、起動時にＥＲＤＢから情報を取り出し、述べたように、関連する動作を行う。
【００６０】
コマンドパーサ４４０は、資産管理インタフェース４１０からＨＡＲＴコマンドを受け取り、そのＨＡＲＴコマンドを解析してあらかじめ指定された構文との整合性を保証し、経路４４５でそのコマンドをコマンドハンドラおよびフロー制御４５０に渡す。
【００６１】
マルチプレクサデータベース４７０は、各種の情報を記憶し、アクセスするためのストレージを提供する。一実施形態では、マルチプレクサデータベース４７０は、ＨＡＲＴアドレス、ＨＡＲＴデバイスが接続されるＩ／Ｏカードおよびチャネルアドレス、ＨＡＲＴデバイスの名前、長形式アドレス指定、ＨＡＲＴデバイスが接続された特定のマルチプレクサ（ソフトウェアマルチプレクサ４００が２つ以上のマルチプレクサをエミュレートすることを想定）などを記憶する。マルチプレクサデータベース４７０は、総合ソフトウェアコンポーネント２５０が再初期化（電源投入など）された場合でもデータの少なくとも一部を再度入手できるように、不揮発性メモリとして実施されることができる。データベースアクセス４８０は、マルチプレクサデータベース４７０への各種アクセス（読み出しおよび書き込み）を制御および調整する。データベースアクセス４８０は、マルチプレクサデータベース４７０の実施と一致するように実現される必要がある。
【００６２】
機器リスト４９０は、現在ソフトウェアマルチプレクサ４００にサービスされているＨＡＲＴデバイスの一覧である（エミュレートされるマルチプレクサごと）。このリストは、各エントリの索引と、対応するＨＡＲＴデバイスのＨＡＲＴアドレスを含むことができる。コマンドを送信する際にＨＡＲＴアドレス全体を使用する代わりに、資産管理システム１２０は、索引を使用して、コマンドの対象とする特定のＨＡＲＴデバイスを利便に指定することができる。上記のように、ＨＡＲＴアドレスは、製造者識別子、デバイスタイプ識別子、およびデバイス番号を含むことができる。機器リスト４９０を表すデータもマルチプレクサデータベース４７０に記憶されることができる。
【００６３】
ハードウェアマルチプレクサマッパ４６０は、各アドレス（マシンアドレスまたは索引の形態）を、対応するＨＡＲＴデバイスが存在する、対応するＩ／Ｏカードとポート番号にマップする。アドレスが索引の形態で提供される場合、機器リスト４９０を調べてマッピングを行うことができる。マルチプレクサデータベース４７０で得ることができる情報をそのようなマッピングに使用することができる。マッピングに対する要求は、一般にはコマンドハンドラおよびフロー制御４５０から受け取られる。
【００６４】
ハードウェアマルチプレクサマッパ４６０は、機器リスト４９０を対象とする各種の他のコマンドをサポートする。例えば、全リストを提供させるコマンドが（コマンドハンドラおよびフロー制御４５０から）受け取られる場合があり、ハードウェアマルチプレクサマッパ４６０は、対応するデータを提供する。また、リストを変更するコマンド（特定エントリの削除など）も、機器リスト４９０とのインタフェースを取ることにより適宜サポートされることができる。
【００６５】
コマンドハンドラおよびフロー制御４５０は、受け取られたコマンドごとに応答を生成し（他のコンポーネントとのインタフェースを取ることにより）、その応答を経路４５１で資産管理インタフェース４１０に渡す。各コマンドに対して応答が生成されることを確実にし、その応答が適切なヘッダなどとともに生成されることを確実にするために、コマンドハンドラおよびフロー制御４５０は、保留コマンドリストを保持する（例えばＲＡＭ３２０に）。各コマンドは、ソフトウェアマルチプレクサ４００またはＨＡＲＴデバイスを対象とすることができ、コマンドハンドラおよびフロー制御４５０は、適切な処理を行うためにコマンドを調べる。宛先は、受け取られるコマンドに含まれるアドレスを調べることによって決定することができる。
【００６６】
コマンドを転送する特定のチャネルおよびＩ／Ｏカードは、ハードウェアマルチプレクサマッパ４６０とのインタフェースを取ることによって特定されることができる。コマンドハンドラおよびフロー制御４５０は、ＨＡＲＴコマンド、Ｉ／Ｏカードおよびチャネルアドレスを経路４５２で監視コントロールネットアクセスブロック４２７に送信し、監視コントロールネットアクセスブロック４２７は、次いで、ＨＡＲＴコマンドを対応するＨＡＲＴデバイスに送信する。コマンドハンドラおよびフロー制御４５０は、そのコマンドをＩ／Ｏカードに送信した後にそのコマンドが処理されていることを知らせるステータスメッセージを送信することができる。チャネルアドレスが有効であり、対応するＨＡＲＴデバイスへのコマンドの転送が成功した場合は、Ｉ／Ｏカードから別のステータスメッセージが受け取られることができる。
【００６７】
コマンドが監視コントロールネットアクセスブロック４２７に送られる際には、ハンドル（コマンドの一意の識別子）が受け取られることができる。対応する応答とともに同じハンドルが受け取られることができ、したがって、先に送信されたコマンドに応答を関連付けることができる。したがって、複数の資産管理システムがある場合、またはソフトウェアマルチプレクサ４００が複数のＨＡＲＴマルチプレクサをエミュレートする場合は、ハンドルを使用して応答を正しいコマンドに関連付けることができる。ハンドルを使用して、監視コントロールネットアクセスブロック４２７にある保留コマンドのステータスを問い合わせることができる。
【００６８】
一実施形態では、保留コマンドの待ち行列が各Ｉ／Ｏカードと関連付けられて保持され、一度に１つのみのコマンドがＩ／Ｏカードに送信され、そのＩ／Ｏカードに対する残りのコマンドは、先のコマンドに応答が受信されるまで待ち行列に入れられる。すなわち、次のコマンドは、現在のコマンドに対する応答が受信されるまで送信されない（あるいはタイマが切れるまで。その場合は、現在のコマンドに対して応答が受信されないものとみなす）。保留コマンドと同じコマンドが受け取られた場合、コマンドハンドラおよびフロー制御４５０は、資産管理インタフェース４１０を介して経路４５１で待機信号を送信し、受け取ったコマンドを無視してよい。そうでない場合は、対応する情報を取り出した後にコマンドに対する応答が経路４５１で送信される。
【００６９】
コマンドハンドラおよびフロー制御４５０は、現在ＨＡＲＴマルチプレクサ１４０にサービスされているＨＡＲＴデバイスのリストに関連する各種コマンドを受け取ることができる。例えば、あるコマンドは、（各ＨＡＲＴデバイスに関連付けられた索引とともに）リストを要求することができ、別のコマンドは、リストの項目の削除を要求することができる。コマンドハンドラおよびフロー制御４５０は、ハードウェアマルチプレクサマッパ４６０とのインタフェースを取ってそのようなコマンドを処理する。一般には、そのような各コマンドに関連付けられたハードウェアマルチプレクサマッパ４６０から応答が受け取られ、コマンドハンドラおよびフロー制御４５０は、資産管理インタフェース４１０を使用して資産管理システム１２０にその応答を送信する。
【００７０】
パラメータアクセス４６５は、そのようなコマンドの情報が総合ハードウェアコンポーネント２７０中で得られる場合に、コマンドの効率的な処理を可能にする。図１の実施形態は、そのようなコマンドを対応するＨＡＲＴデバイスに転送することができ、ＨＡＲＴデバイスに過度に多くのコマンドを送信しないことが望ましい場合がある。本発明の一態様は、下記でさらに詳しく述べるように、ＨＡＲＴデバイスに送信されるコマンドの数を可能な限り少なくする。
７．ＨＡＲＴデバイスへのアクセスを最少に抑えながらコマンドに応答する
図５は、本発明の一実施形態における、ＨＡＲＴデバイスへのアクセスを可能な限り抑えながら、コマンドが処理されることが可能な方法を説明するフローチャートである。この方法は、例示として図４を参照して説明する。ただし、この方法は、他の実施形態でも実現されることができる。ステップ５０１で方法が開始し、ステップ５１０に制御が渡される。
【００７１】
ステップ５１０で、コマンドパーサ４４０が、資産管理インタフェース４１０からコマンドを受け取り、受け取ったコマンドをコマンドハンドラおよびフロー制御４５０に渡す。
【００７２】
ステップ５２０で、コマンドハンドラおよびフロー制御４５０が、そのコマンドが、総合ハードウェアコンポーネント２７０でデータが得られるタイプのコマンドであるか否かを決定する。例えば、ＨＡＲＴプロトコルのコマンド０は、製造者識別子、デバイスタイプなどのデバイス固有のデータを得ることに関連し、これらのデータは、１つのデバイスについて変化せず、総合ハードウェアコンポーネント２７０で得ることができる。これに対し、コマンド３３は、動的な可変量についてのデータ（変化する可能性のあるデータ）を得るためのコマンドである。０のようなコマンドの場合、コントロールはステップ５４０に移る。そうでない場合、制御はステップ５６０に移る。
【００７３】
ステップ５４０で、コマンドハンドラおよびフロー制御４５０が、コマンドに対応するデータを（総合ハードウェアコンポーネント２７０から）フェッチする。このような取り出しには既存の監視コマンドを使用することができる。次いで、制御はステップ５９０に移る。総合ハードウェアコンポーネント２７０でデータを得ることができない場合、コマンドは、特定のＨＡＲＴデバイスに誘導することができる（下記のステップ５６０のように）。
【００７４】
ステップ５６０で、コマンドハンドラおよびフロー制御４５０は、コマンドをＨＡＲＴデバイスに誘導（転送）する。そのような転送には経路２５７のＣｏｎｔｒｏｌ  Ｎｅｔプロトコルを使用することができる。
【００７５】
ステップ５８０で、ステップ５４０または５６０で送られたコマンドに応答してデータが受け取られる。ステップ５９０で、コマンドハンドラおよびフロー制御４５０が、取り出したデータをコマンドへの応答として渡す。ステップ５９９で方法が終了する。
【００７６】
したがって、要求されるデータが総合ハードウェアコンポーネント２７０自体で得られる場合は、ソフトウェアマルチプレクサ４００は、少なくとも一部のコマンドに対しては、ＨＡＲＴデバイスのデータにアクセスせずに、データを取り出すことができる。少なくとも、頻繁には変化しない情報、あるいは総合ハードウェアコンポーネント２７０中で更新されている可能性のある情報を要求するコマンドについては、図５の手法を使用してＨＡＲＴデバイスへのアクセス回数を最少にすることができる。その結果、ＨＡＲＴデバイスのオーバーヘッドを最小にすることに加えて、ＨＡＲＴデバイスへの経路で利用できる帯域幅が、最適な形で利用されることができる。
【００７７】
さらに、ソフトウェアを利用した実施で一般に得られる柔軟性により、下記で例とともにさらに説明するように、ソフトウェアマルチプレクサ４００は、特定タイプのコマンドが送られないようにすることができる。
８．一部コマンドの前送の阻止
図６は、本発明の一実施形態における、ソフトウェアマルチプレクサ４００が特定のＨＡＲＴコマンドの前送を阻止することが可能な方式を説明するフローチャートである。この方法は、例示として図４の構成要素を参照して説明する。ただし、この方法は、いくつかの他の実施形態でも実施されることができる。ステップ６０１で方法が開始し、直ちに制御がステップ６１０に移る。
【００７８】
ステップ６１０で、ソフトウェアマルチプレクサ４００が、資産管理システム１２０から、ＨＡＲＴデバイスを対象とするコマンドを受け取る。一部タイプのコマンドをＨＡＲＴデバイスに送らないことが望ましい場合がある。例えば、コマンドが、対応するＨＡＲＴデバイスの動作を変える書き込みコマンドであり、ＨＡＲＴデバイスが現在稼動中の場合は、そのコマンドをそれ以上前送することを阻止することが望ましい場合がある。そのような阻止が実現される方式を以下でさらに詳しく説明する。
【００７９】
ステップ６３０で、コマンドハンドラおよびフロー制御４５０は、コマンドが、対応するＨＡＲＴデバイスの動作を変える可能性のある書き込み動作であるかどうかを決定する。書き込み動作である場合、制御は６４０に移り、それ以外の場合はステップ６５０に移る。
【００８０】
ステップ６４０で、コマンドハンドラおよびフロー制御４５０は、ＨＡＲＴデバイス（コマンドが対象とする）が動作中であるかどうかを調べる。ＨＡＲＴデバイスの動作ステータスは、Ｃｏｎｔｒｏｌ  Ｎｅｔを使用して周知の方式で総合ハードウェアコンポーネント２７０とのインタフェースを取ることによって調べることができる。ＨＡＲＴデバイスが稼動中の場合、制御はステップ６８０に移り、それ以外の場合、制御はステップ６５０に移る。
【００８１】
ステップ６５０で、コマンドハンドラおよびフロー制御４５０は、コマンドをＨＡＲＴデバイス（コマンドの宛先アドレスで指定される）に転送する。次いで制御はステップ６９９に移り、方法が終了する。
【００８２】
ステップ６８０で、コマンドハンドラおよびフロー制御４５０は、コマンドを無視して（前送しなくて）よい。ステップ６９０で、コマンドが処理されることができないことを伝える通知が資産管理システム１２０に送信されることができる。この通知は、任意の知られるプロトコルを使用して経路１２４で送信されることができる。次いで制御はステップ６９９に移る。
【００８３】
このように、ソフトウェアマルチプレクサ４００は、図６に関して上述した方式と同様の方式を使用して、望ましくないコマンドがＨＡＲＴデバイスに前送されないようにすることができる。このフローチャートの基礎となる手法は、一般には、阻止される必要がある特定タイプのコマンド（状況）に沿うように変更される必要がある。ソフトウェアマルチプレクサ４００が実質的にソフトウェア形態で実現されるため、そのような阻止は、利便に実現されることができる。
９．結論
上記で本発明の各種実施形態を説明したが、それらの実施形態は単なる例として提示したものであり、限定ではないことを理解されたい。したがって、本発明の範囲は、上記の例示的実施形態によっては限定されず、添付の特許請求の範囲とその均等物に従ってのみ定義されるべきである。
【図面の簡単な説明】
【００８４】
【図１】本発明が実施されることができる例示的環境を示すブロック図である。
【図２】本発明の各種態様によって提供される構成要素を使用して製造プロセスを実現することができる方式を説明するブロック図である。
【図３】実質的にソフトウェア形態で実施される総合ソフトウェアコンポーネントの一実施形態を説明するブロック図である。
【図４】本発明の一実施形態におけるソフトウェアマルチプレクサの内部実施を説明するブロック図である。
【図５】本発明の一実施形態でＨＡＲＴデバイスへのＨＡＲＴコマンドの数を最小に抑えることができる方式を説明するフローチャートである。
【図６】本発明の一実施形態で阻止されることが望まれるコマンドを阻止することができる方式を説明するフローチャートである。
【図１】
2006516782.tif 000003
【図２】
2006516782.tif 000004
【図３】
2006516782.tif 000005
【図４】
2006516782.tif 000006
【図５】
2006516782.tif 000007
【図６】
2006516782.tif 000008
【国際調査報告】
2006516782.tif 000009
2006516782.tif 000010
2006516782.tif 000011
2006516782.tif 000012