オブジェクト間マッピング方法、オブジェクト間マッピングプログラム、ゲートウェイ装置、機器管理システム
【課題】ネットワーク構成の変更に容易に対応可能で、マッピングに要するメンテナンスコストを削減することのできるオブジェクト間マッピング方法及びそのプログラム、その方法を設備機器管理ネットワークにおいて実行するゲートウェイ装置及びその装置を用いた機器管理システムを得る。
【解決手段】各オブジェクトのインスタンスが備える属性同士の対応関係を定義する属性マッピングテーブルと、属性値に対して実行する機能を属性毎に対応付ける機能マッピングテーブルと、を格納した書き換え可能な記憶手段を設け、各オブジェクト同士のマッピングを行う際には、属性マッピングテーブルを参照して、マッピング対象オブジェクトのインスタンスが備える属性同士を対応付けるとともに、機能マッピングテーブルを参照して、当該各属性に対して実行する機能を対応付けることを特徴とする。
【解決手段】各オブジェクトのインスタンスが備える属性同士の対応関係を定義する属性マッピングテーブルと、属性値に対して実行する機能を属性毎に対応付ける機能マッピングテーブルと、を格納した書き換え可能な記憶手段を設け、各オブジェクト同士のマッピングを行う際には、属性マッピングテーブルを参照して、マッピング対象オブジェクトのインスタンスが備える属性同士を対応付けるとともに、機能マッピングテーブルを参照して、当該各属性に対して実行する機能を対応付けることを特徴とする。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、異種ネットワークに接続されるオブジェクト同士のマッピングを行う方法及びそのプログラム、その方法を設備機器管理ネットワークにおいて実行するゲートウェイ装置及びその装置を用いた機器管理システムに関するものである。
【背景技術】
【0002】
従来、『レスポンスの向上と、プログラム開発工数の削減と、マッピングデータの設定を省力化を可能とするゲートウェイ装置を得る。』ことを目的とした技術として、『第一の通信処理手段30aと、第二の通信処理手段30eと、被管理機器11の情報を保持する第一のデータベース30dと、第一のデータベース管理手段30cと、第一のデータベース30dが機器管理装置21の必要とする情報に変換された第二のデータベース30gと、第二のデータベース管理手段30fと、第一のデータベース30dと第二のデータベース30gの対応する項目を一致させるデータベースマッピング手段30hと、各手段にコマンドを配送し、該コマンドを、データベースマッピング手段30hを介して変換させながら転送するコマンド配送手段30bと備えている。』というものがある(特許文献1)。
【特許文献1】特開2000−244551号公報(要約)
【発明の開示】
【発明が解決しようとする課題】
【0003】
上記従来技術のような異種ネットワーク間におけるマッピングでは、通常、各々のネットワークに接続される機器のモデルであるオブジェクトのインスタンス同士、もしくはインスタンスの属性(プロパティ)同士のマッピングが行われ、これを通じて相互にデータ交換が行われる。
これにより、ネットワーク構成が変更になった等の理由でインスタンスの属性が変更された場合でも、マッピング情報のみを変更すれば容易に対応可能である。
一方、各種変換処理やデータ交換に付随して実行される各種処理などの機能は、上記マッピングによっても対応関係を変更することができず、そのインスタンスが表す機器の種類毎に固定されているため、物件対応やメンテナンス時に機能を変更する必要が生じた場合には、ソフトウェア自体の書き替えを行う必要があり、メンテナンスコストがかかるという課題があった。
本発明は、上記のような課題を解決し、ネットワーク構成の変更に容易に対応可能で、マッピングに要するメンテナンスコストを削減することのできるオブジェクト間マッピング方法及びそのプログラム、その方法を設備機器管理ネットワークにおいて実行するゲートウェイ装置及びその装置を用いた機器管理システムを得ることを目的とする。
【課題を解決するための手段】
【0004】
本発明に係るオブジェクト間マッピング方法は、
異種ネットワークに接続されるオブジェクト同士の対応関係を定義する(以下、マッピングと呼ぶ)方法であって、
前記各オブジェクトのインスタンスが備える属性同士の対応関係を定義する属性マッピングテーブルと、
前記属性に対して実行する機能を前記属性毎に対応付ける機能マッピングテーブルと、
を格納した書き換え可能な記憶手段を設け、
前記各オブジェクト同士のマッピングを行う際には、
前記属性マッピングテーブルを参照して、マッピング対象オブジェクトのインスタンスが備える属性同士を対応付けるとともに、
前記機能マッピングテーブルを参照して、当該各属性に対して実行する機能を対応付ける
ことを特徴とするものである。
【発明の効果】
【0005】
本発明に係るオブジェクト間マッピング方法によれば、オブジェクトのインスタンス同士及び属性同士のマッピングに加えて、各オブジェクトが備える機能のマッピングを容易に変更することができるので、ネットワーク構成の変更に容易に対応可能で、マッピングに要するメンテナンスコストを削減することのできるオブジェクト間マッピング方法が得られる。
【発明を実施するための最良の形態】
【0006】
実施の形態1.
図1は、本発明の実施の形態1に係るゲートウェイ装置の機能を概念的に示した模式図である。
本実施の形態1に係るゲートウェイ装置は、管理側ネットワーク(以下、一例として「BACnet」を取り上げる。詳細は後述。)の管理オブジェクトのインスタンスを管理するBACnetインスタンスDB100と、被管理機器である設備機器を接続したネットワーク(以下「設備ネット」)における各設備機器の現在状況を、その設備機器を表すオブジェクトのインスタンスとして管理する設備ネットインスタンスDB101とを備える。
BACnetインスタンスDB100と設備ネットインスタンスDB101は、各オブジェクトの属性(プロパティ)及び属性値を保持する。
また、本実施の形態1に係るゲートウェイ装置は、BACnet機能DB102と、設備ネット機能DB103とを備える。
BACnet機能DB102は、BACnet上で提供される各種機能、すなわちデータの操作・監視やデータ交換の際に行われる各種変換処理やデータ交換に付随して実行される各種処理を記述した関数群を保持・管理している。
同様に、設備ネット機能DB103は、設備ネット上で提供される各種機能を記述した関数群を保持・管理している。
マッピングDB104は、BACnet上のインスタンス情報及び各種機能と、設備ネット上のインスタンス情報及び各種機能とを対応付けるマッピングデータを保持・管理している。
マッピング実行手段105は、マッピングDB104を参照して、BACnet上のインスタンスと設備ネット上のインスタンスをマッピングする処理を行なう。マッピング処理の目的や内容については後述する。
なお、「インスタンス情報」とは、インスタンスが備える属性及び属性値のことをいう。
【0007】
マッピング実行手段105は、CPUやマイコンなどの演算装置上で実行されるソフトウェアで実装することができる。
また、各DBは、RAM、HDD、フラッシュメモリなどの書込み可能な記憶装置上に実装することができる。実装方式は、マトリクス状の行列データとしてもよいし、関係テーブル形式で格納してもよい。また、中間にRDBMSのようなミドルウェアを媒介させてもよい。以下の説明では、テーブル形式で格納しているものとする。
なお、図1においては、ゲートウェイ装置が各ネットワークに接続するためのネットワークインターフェースを省略しているが、通信プロトコルに応じて適宜必要なインターフェースを備えているものとする。
【0008】
図2は、BACnetインスタンスDB100の構成とデータの例を示すものである。
BACnetインスタンスDB100は、例えばテーブル形式で構成することができる(以下の各DBも同様)。図2の構成例では、「インスタンスID」列、「属性ID」列、「属性値」列を有する。
(1)「インスタンスID」列
本列は、BACnet側に構成される管理オブジェクトの個々のインスタンスを特定するためのIDを格納する。BACnet上の管理オブジェクトの具体例は、後述の図9で説明する。
(2)「属性ID」列
本列は、「インスタンスID」列の値で特定されるインスタンスが備える属性(プロパティ)を特定するためのIDを格納する。本列の値は、属性を特定するためのIDでもよいし、名称が重複しないのであれば、属性名で直接的に特定するようにしてもよい。
管理オブジェクトの種類が異なれば、備える属性も異なるため、本列の値は「インスタンスID」列で特定される管理オブジェクト毎に異なる場合がある。また、1つの管理オブジェクトが複数の属性を備える場合もあるため、同じ「インスタンスID」列の値を持つ行が複数存在する場合もある。
なお、図2のデータ例では、「属性ID=85」は、「現在値」という属性のことを指す。
(3)「属性値」列
本列は、「インスタンスID」列と「属性ID」列の値で特定される属性の実値を格納する。
【0009】
図3は、設備ネットインスタンスDB101の構成とデータの例を示すものである。
設備ネットインスタンスDB101の列構成は、BACnetインスタンスDB100と同様である。ただし、格納される値は、設備ネットに接続されている個々の設備機器を表す情報である。
(1)「インスタンスID」列
本列は、設備ネットに接続されている個々の設備機器を特定するためのIDを格納する。具体的には、その設備機器を表すオブジェクトのインスタンスIDが格納される。
(2)「属性ID」列
本列は、「インスタンスID」列で特定される設備機器が備える属性を特定するためのIDを格納する。本列の値は、属性を特定するためのIDでもよいし、名称が重複しないのであれば、属性名で直接的に特定するようにしてもよい。
設備機器の種類が異なれば、備える属性名も異なるため、本列の値は「インスタンスID」列で特定される設備機器毎に異なる場合がある。また、1つの設備機器が複数の属性を備える場合もあるため、同じ「インスタンスID」列の値を持つ行が複数存在する場合もある。
図3のデータ例では、「インスタンスID=5001」で特定される設備機器は、「属性ID=0」の属性(運転状態)、「属性ID=1」の属性(運転モード)、「属性ID=2」の属性(設定温度)を備える。
同様に、「インスタンスID=7001」で特定される設備機器は、「属性ID=10」の属性(点灯状態)、「属性ID=11」の属性(調光状態)を備える。
(3)「属性値」列
本列は、「インスタンスID」列と「属性ID」列の値で特定される設備機器の属性の実値を格納する。
図3のデータ例では、「インスタンスID=5001」で特定される設備機器の「属性ID=2」の属性(設定温度)の値は「29」であることが分かる。
【0010】
図4は、BACnet機能DB102の構成とデータの例を示すものである。図4の構成例では、BACnet機能DB102は「機能ID」列、「機能名」列、「機能説明」列を有する。
「機能ID」列は、BACnet上で提供される各種機能、すなわちデータの操作・監視やデータ交換の際に行われる各種変換処理やデータ交換に付随して実行される各種処理を記述した関数を特定するためのIDを格納する。
「機能名」列は、「機能ID」列の値で特定される関数の名称を格納する。本列の値は、関数名そのものでもよいし、関数ポインタなどを用いて間接的に関数を特定するものでもよい。
「機能説明」列は、「機能ID」列で特定される関数の簡単な機能説明を格納する。本列は、便宜的に設けられたものであるため、省略してもよい。
【0011】
図5は、設備ネット機能DB103の構成とデータの例を示すものである。
設備ネット機能DB103の列構成は、BACnet機能DB102と同様である。ただし、格納される値は、設備ネット上で提供される各種機能を記述した関数のID、名称、機能説明である。
【0012】
なお、上記各DBの具体的な実装方式は、例えばテーブルを構成するフラットファイルとしてもよいし、ソフトウェア上で実現される仮想的なテーブルとしてもよい。
【0013】
ここで、図1の残りの構成の説明を行う前に、従来技術におけるマッピング処理の目的とその内容、並びに課題について説明する。
【0014】
図16は、ビル内の設備機器ネットワーク管理システムの構成を説明するものである。
ビル1601の各フロアには、エアコンや照明といった設備機器が敷設される。各フロアごとに、これら設備機器を接続する設備機器ネットワーク1605a〜1605c(以下、「設備ネット」と略す場合もある)が構成されている。各設備ネット内には、同種の機器を取り纏めるコントローラが接続され、その配下に同種の設備機器が接続される。
また、ビル1601内の各フロアに敷設された設備機器を統合管理するための機器管理装置1602が、管制室等に設置されている。
上述の管理対象設備機器のことを、「被管理機器」と呼ぶ。
なお、図16中の各フロアのゲートウェイ装置は、設備ネットで用いられる複数の通信プロトコルに対応したものを想定しているため、各フロアのゲートウェイ装置は1台のみとしたことを付言しておく。
【0015】
一般に、機器管理装置1602は、各設備機器と通信して監視・制御するためのプロトコルとして、標準規格であるBACnetプロトコルを用いることが多い。一方、各フロアに敷設される設備機器や制御盤は、必ずしも同一メーカによるものとは限らず、またBACnetプロトコルにより直接監視・制御できるものとは限らない。
そこで、両ネットワークの間にゲートウェイ装置1604a〜1604cをフロア毎に各1台設け、そのゲートウェイ装置と各コントローラを接続し、通信プロトコルが異なっても、命令を相互変換して情報通信可能とする構成がとられる。以下、ステップを追って説明する。
【0016】
(1)BACnetプロトコルによる通信
図16の機器管理装置1602は、各設備機器を制御する際に、BACnetプロトコルを用いて通信を行い、命令コマンドを送信する。命令コマンドは、各フロアのゲートウェイ装置1604a〜1604cに到達する。
(2)各プロトコルに対応したインスタンスの構成
各フロアのゲートウェイ装置1604a〜1604cは、BACnetプロトコルに対応した管理オブジェクトのインスタンスを内部に構成し、機器管理装置1602が送信した命令コマンド等を受け取る。
また、設備ネット上のプロトコルに対応した設備機器インスタンスを内部に構成し、上記のBACnetプロトコル上の管理オブジェクトのインスタンスと対応付ける(マッピング)。
(3)命令コマンドの変換と実行
ゲートウェイ装置1604a〜1604cは、BACnetプロトコルに対応した管理オブジェクトのインスタンスと、これにマッピングされた、設備ネット上のプロトコルに対応した設備機器インスタンスとの間で、命令コマンドを変換する。
次に、設備ネット上のプロトコルで命令実行対象の設備機器と通信を行い、機器管理装置1602が発行した命令コマンドを実行する。
【0017】
このように、ゲートウェイ装置1604a〜1604cは、両側に接続されるネットワーク間で命令コマンドを変換し、相互に通信可能とする機能を有する。命令コマンドの変換の際に、オブジェクト同士のマッピングが行われる。
【0018】
一方、ゲートウェイ装置1604a〜1604cには、ネットワークの構成変更に柔軟に対応可能とする役割もある。
上述のように、命令コマンドの変換は、オブジェクト同士のマッピングによって行われるが、仮にネットワークに接続される設備機器の構成が変更になった場合でも、このマッピングの内容を再設定するのみで対応可能であり、ゲートウェイ装置1604a〜1604c自体を取り替えたり、あるいはプログラムの書き換えを行ったりする必要はない。
【0019】
しかし、このようなオブジェクト同士のマッピングを再設定するのみでは、対応することができない場合も存在する。以下、具体例を交えて説明する。
【0020】
図17は、ビル内の設備ネットワークの設備機器接続状況を示すものである。図17の上図はビル1601のあるフロア、下図は別のビル1602のあるフロアの接続状況を示している。
いずれのビルにおいても、第1ゲートウェイ装置1604a配下の第1設備ネットワーク1605a上に、エアコンや照明などの設備機器が接続されている。ここでは説明の簡単のため、コントローラは省略している。
一般に、ビル毎もしくは同一のビル内のフロア毎に、第1ゲートウェイ装置1604a配下に接続される設備機器の種類や数、ネットワーク上の配置が異なる。そのため、第1ゲートウェイ装置1604aは、これら設備機器が備える属性に合わせて、柔軟にオブジェクトの属性を変更できることが望ましい。特許文献1に示す技術は、このような柔軟な属性変更を可能としたものである。
【0021】
ところが、オブジェクトの属性変更のみでは、設備機器の構成変更に対応できない場合が存在する。
例えば、図17の上図の設備機器構成において、エアコンの動作状態が「可動」から「停止」に変化した場合には、第1設備ネットワーク1605a内に状態変化通知を発報するように、第1ゲートウェイ装置1604aを設定していたものとする。
一方、図17の下図の設備機器構成において同じ設定を適用すると、エアコンの台数が多いため、状態変化通知を発報することにより操作の応答速度が遅くなってしまう、といったケースが存在する。この場合、状態変化通知の発報頻度を減らす必要がある。
このように、ゲートウェイ装置を接続する設備機器ネットワークの個々の状況により、ゲートウェイ機器に求められる機能の詳細が異なる場合がある。
【0022】
この場合、特許文献1に示すような従来技術を用いていると、以下に説明するような不都合が生じる。
従来のゲートウェイ装置においては、各設備機器オブジェクトはインスタンス単位又は属性単位でマッピングされている。
しかし、上述のように、各設備機器の「属性」変更に対応するのみならず、個々の設備機器の属性に対して実行する「機能」を変更する必要がある場合、インスタンス単位又は属性単位のマッピングを変更するだけでは、オブジェクト同士の命令コマンドの対応関係を変更することはできない。
結局のところ、ゲートウェイ装置のプログラムを書き換える以外に対応手段がなく、メンテナンスコストがかかるという課題があった。
さらには、設備機器の管理ネットワークにおいては、上述のように細かな単位でマッピングを変更することを求められる頻度が高く、よって従来技術の課題となっていたのである。
【0023】
本発明は、このような課題を解決すべく、インスタンス単位・属性単位でのマッピングに加えて、各ネットワーク上で提供する機能をもマッピングにより変更可能とするゲートウェイ装置を提案するものである。
以下は、図1の残りの構成の説明に戻る。
【0024】
図6は、マッピングDB104が備える属性マッピングテーブル104a(図示せず)の構成とデータ例を示すものである。
属性マッピングテーブル104aは、「インスタンスID_A」列、「属性ID_A」列、「属性値_A」列、「インスタンスID_B」列、「属性ID_B」列、「属性値_B」列を有する。
「インスタンスID_A」列〜「属性値_A」列の内容は、BACnetインスタンスDB100の内容と同様である。また、「インスタンスID_B」列〜「属性値_B」列の内容は、設備ネットインスタンスDB101の内容と同様である。
即ち、本テーブルによって、BACnet上の設備機器インスタンスが備える属性値と、設備ネット上の設備機器インスタンスが備える属性値が、相互に対応付けられることとなる。
図6のデータ例では、「インスタンスID_A=0x0100000A」で特定されるBACnet上の設備機器インスタンスの「現在値=0」は、「インスタンスID_B=5001」で特定される設備ネット上の設備機器インスタンスの「運転状態=0」に対応付けられることとなる。
【0025】
図7は、マッピングDB104が備える機能マッピングテーブル104b(図示せず)の構成とデータ例を示すものである。本テーブルは、BACnet上の設備機器インスタンスが備える各属性と、その属性に対して実行する機能との関係を定義するものである。
機能マッピングテーブル104bは、「インスタンスID」列、「属性ID」列、「機能ID」列を有する。
「インスタンスID」列と「属性ID」列の内容は、BACnetインスタンスDB100のものと同様である。
「機能ID」列は、「インスタンスID」列と「属性ID」列の値で特定される属性に対して実行する関数を特定するためのIDが格納される。このIDの値は、BACnet機能DB102の「機能ID」列に格納されているいずれかの値が格納される。
図7のデータ例では、「インスタンスID=0x0100000A」で特定されるBACnet上の設備機器インスタンスの「現在値」属性は、「機能ID=0001」で特定される関数(「WriteProperty」関数)によって変更等が行われることが分かる。
【0026】
図8は、マッピングDB104が備える機能マッピングテーブル104c(図示せず)の構成とデータ例を示すものである。本テーブルは、設備ネット上の設備機器インスタンスが備える各属性と、その属性に対して実行する機能との関係を定義するものである。
機能マッピングテーブル104cの構成は、機能マッピングテーブル104bと同様であるが、格納されるデータが設備ネット上の設備機器インスタンスに関するものである点のみが異なる。
図8のデータ例では、「インスタンスID=5001」で特定される設備ネット上の設備機器インスタンスの「運転状態」属性は、「機能ID=1002」で特定される関数(「setInfProperty」関数)によって変更等が行われることが分かる。
【0027】
図9は、以上の図2〜図8で説明した各DBによるマッピング関係を概念的に示したものである。以下、具体的に説明する。
【0028】
(1)設備機器「エアコン」の「運転状態」属性
設備ネットに接続されている設備機器「エアコン」は、属性「運転状態」を持つ。
設備ネットで用いられる通信プロトコル上では、「運転状態」属性値が「0」であれば「停止」、「4」であれば「運転中」を表すものとする。
このような2値を取る属性は、BACnetプロトコル上では「Binary Output」というオブジェクトで表現される。「Binary Output」オブジェクトの「現在値」属性は、「0」「1」のいずれかの値を取る。
BACnetインスタンスDB100において、「Binary Output」オブジェクトの「インスタンスID=0x0100000A」で表されるインスタンスの「現在値」属性を登録するとともに、設備ネットインスタンスDB101において、「エアコン」オブジェクトの「インスタンスID=5001」で表されるインスタンスの「運転状態」属性を登録する。
また、マッピングDB104の属性マッピングテーブル104aにおいて、両者の対応関係を定義する。
図9では、911が上記「Binary Output」オブジェクトのインスタンス、910が「エアコン」オブジェクトのインスタンスを表し、それぞれの「インスタンスID」は、各インスタンスの「インスタンスID」に示している通りである。また、914は属性同士の対応関係を表す。
「Binary Output」インスタンス911の「現在値」属性は、図2の1行目のデータにより表されている。
「エアコン」インスタンス910の「運転状態」属性は、図3の1行目のデータにより表されている。
両者の対応関係914は、図6の1〜2行目のデータにより表されている。
以上のマッピング設定により、「Binary Output」インスタンス911の「現在値」属性(0|1)が、「エアコン」インスタンス910の「運転状態」属性(0|4)に対応付けられる。
【0029】
(2)設備機器「エアコン」の「運転モード」属性
設備ネットに接続されている設備機器「エアコン」は、属性「運転モード」を持つ。
設備ネットで用いられる通信プロトコル上では、「運転モード」属性値が「0」であれば「冷房」、「1」であれば「暖房」、「2」であれば「ドライ」を表すものとする。
このような複数の状態値を取る属性は、BACnetプロトコル上では「Multi−state Output」というオブジェクトで表現される。ここでの「Multi−state Output」オブジェクトの「現在値」属性は、「0」「1」「2」のいずれかの値を取るものとする。
BACnetインスタンスDB100において、「Multi−state Output」オブジェクトの「インスタンスID=0x03800001」で表されるインスタンスの「現在値」属性を登録するとともに、設備ネットインスタンスDB101において、「エアコン」オブジェクトの「インスタンスID=5001」で表されるインスタンスの「運転モード」属性を登録する。
また、マッピングDB104の属性マッピングテーブル104aにおいて、両者の対応関係を定義する。
図9では、912が上記「Multi−state Output」オブジェクトのインスタンスを表し、「インスタンスID」は、912の「インスタンスID」に示している通りである。915は属性同士の対応関係を表す。
「Multi−state Output」インスタンス912の「現在値」属性は、図2の2行目のデータにより表されている。
「エアコン」インスタンス910の「運転モード」属性は、図3の2行目のデータにより表されている。
両者の対応関係915は、図6の3行目のデータにより表されている。なお、記載の都合上、「属性値_A=1」と「属性値_B=1」の対応関係のみを図示したが、「属性値_A」「属性値_B」が取り得る全ての値について、対応関係を定義してもよい。
以上のマッピング設定により、「Multi−state Output」インスタンス911の「現在値」属性(0|1|2)が、「エアコン」インスタンス910の「運転モード」属性(0|1|2)に対応付けられる。
【0030】
(3)設備機器「エアコン」の「設定温度」属性
設備ネットに接続されている設備機器「エアコン」は、属性「設定温度」を持つ。
設備ネットで用いられる通信プロトコル上では、「設定温度」属性は当該エアコンの設定温度値を表し、「16」〜「32」の整数値を取るものとする。
これは、BACnetプロトコル上では、「運転モード」属性と同様に「Multi−state Output」というオブジェクトで表現される。ここでの「Multi−state Output」オブジェクトの「現在値」属性は、「0」〜「16」のいずれかの値を取るものとする。
BACnetインスタンスDB100において、「Multi−state Output」オブジェクトの「インスタンスID=0x03800002」で表されるインスタンスの「現在値」属性を登録するとともに、設備ネットインスタンスDB101において、「エアコン」オブジェクトの「インスタンスID=5001」で表されるインスタンスの「設定温度」属性を登録する。
また、マッピングDB104の属性マッピングテーブル104aにおいて、両者の対応関係を定義する。
図9では、913が上記「Multi−state Output」オブジェクトのインスタンスを表し、「インスタンスID」は、913の「インスタンスID」に示している通りである。916は属性同士の対応関係を表す。
なお、「運転モード」属性に対応する「Multi−state Output」オブジェクトのインスタンスと区別するため、「インスタンスID」列にはそれぞれ異なる値を格納する。
「Multi−state Output」インスタンス913の「現在値」属性は、図2の3行目のデータにより表されている。
「エアコン」インスタンス910の「設定温度」属性は、図3の3行目のデータにより表されている。
両者の対応関係916は、図6の4行目のデータにより表されている。なお、記載の都合上、「属性値_A=13」と「属性値_B=29」の対応関係のみを図示したが、「属性値_A」「属性値_B」が取り得る全ての値について、対応関係を定義してもよい。
以上のマッピング設定により、「Multi−state Output」インスタンス911の「現在値」属性(0〜16)が、「エアコン」インスタンス910の「設定温度」属性(16〜32)に対応付けられる。
【0031】
(4)BACnet上の機能マッピング
図9において、BACnet上の各インスタンス911〜913が備える「現在値」属性は、「WriteProperty」関数で書き換えるものとする。
そこで、BACnet上の各インスタンス911〜913が備える「現在値」属性と、BACnet機能DB102に登録している「WriteProperty」関数950との対応関係を定義する。
図9において、951〜953がこれらの対応関係を表す。また、図7の各行のデータが、同関係を表している。
【0032】
(5)設備ネット上の機能マッピング
図9において、設備ネット上の「エアコン」オブジェクトのインスタンス910が備える「運転状態」属性と「設定温度」属性は、「setInfProperty」関数で書き換えるものとする。
そこで、設備ネット上の「エアコン」オブジェクトのインスタンス910が備える「運転状態」「設定温度」属性と、設備ネット機能DB103に登録している「setInfProperty」関数940との対応関係を定義する。
図9において、941〜942がこれらの対応関係を表す。また、図8の1行目と3行目のデータが、同関係を表している。
【0033】
また、設備ネット上の「エアコン」オブジェクトのインスタンス910が備える「運転モード」属性は、「setProperty」関数で書き換えるものとする。
そこで、設備ネット上の「エアコン」オブジェクトのインスタンス910が備える「運転モード」属性と、設備ネット機能DB103に登録している「setProperty」関数930との対応関係を定義する。
図9において、931がこれらの対応関係を表す。また、図8の2行目のデータが、同関係を表している。
【0034】
以上では、インスタンス情報(オブジェクト、属性、属性値)同士のマッピングを行った後、機能を各属性にマッピングするという概念・手順での説明を行ったが、BACnet、設備ネット双方においてそれぞれ各属性に対して機能を対応付け、それら属性を包含するインスタンス情報と機能の対同士をBACnet、設備ネット間で対応付けるという概念・手順でもよい。
また、以上の説明では対応付けは1:1で行ったが、一般にN:Mで対応関係を定義してもよい。
【0035】
次に、上述のマッピング情報を用いて行われる具体的な動作の一例を説明する。
【0036】
図10は、BACnet側から命令コマンドを発行し、設備ネット側の設備機器を操作する際の、第1ゲートウェイ装置1604aの動作フローである。第1ゲートウェイ装置1604aは図1〜図8で説明した構成を備えているものとする。
ここでは、図16のようなビル内において、機器管理装置1602が図9の「Binary Output」インスタンス911を操作することにより、「エアコン」インスタンス910の「運転状態」属性を操作する場合の動作を例に取り説明する。
【0037】
(S1010)
初期状態では、あらかじめ図2〜図8の各データベースが構成されており、同各図に示すデータが格納済みであるものとする。また、「Binary Output」インスタンス911の「現在値」属性値は「0」、「エアコン」インスタンス910の「運転状態」の属性値は「0」とする。
(S1020)
機器管理装置1602は、第1設備管理ネットワーク1605aに接続されているエアコンに対し、運転を開始すべき旨の命令を送信する。この命令は、BACnetプロトコルで送信される。即ち、「Binary Output」インスタンス911の「現在値」属性値を、「0」から「1」に変更すべき旨の「WriteProperty」命令コマンドが送信される。
送信された「WriteProperty」命令コマンドは、第1ゲートウェイ装置1604aに到達する。
(S1030)
第1ゲートウェイ装置1604aは、「WriteProperty」関数を実行し、BACnetインスタンスDB100の1行目のデータを「属性値=0」から「属性値=1」に更新する。このとき、「インスタンスID=0x0100000A」と「属性ID=85(現在値)」をキーとする。
(S1040)
マッピング実行手段105は、属性マッピングテーブル104aを検索し、「Binary Output」インスタンス911の「現在値」属性に対応付けられた、設備ネット上のインスタンスの属性値を検索する。
ここでは、「Binary Output」インスタンス911のインスタンスID「0x0100000A」、属性ID「85(現在値)」、属性値「1」を検索キーとする。
検索の結果、「インスタンスID_B=5001」「属性ID_B=0(運転状態)」「属性値_B=4」のデータが見つかる。これは、図9の「エアコン」インスタンス910の「運転状態」属性に相当する。
(S1050)
マッピング実行手段105は、機能マッピングテーブル104cを検索し、「エアコン」インスタンス910の「運転状態」属性に対応する関数を取得する。
ここでは、「エアコン」インスタンス910のインスタンスID「5001」と、属性ID「0(運転状態)」とを検索キーとする。
検索の結果、「機能ID=1002」のデータが見つかる。
(S1060)
マッピング実行手段105は、「機能ID=1002」をキーにして、設備ネット機能DB103を検索する。検索の結果、「setInfProperty」関数を実行すべきことが分かる。
(S1070)
第1ゲートウェイ装置1604aは、「setInfProperty」関数を実行し、設備ネットインスタンスDB101の1行目のデータを「運転状態=0」から「運転状態=4」に更新するとともに、第1設備管理ネットワーク1605aに接続されている該当エアコンの運転を開始するよう、命令コマンドを発行する。また、「setInfProperty」関数の内容に従って、第1設備管理ネットワーク1605a内に当該エアコンの運転状態変化通知が発報される。
【0038】
なお、図10の各ステップにおいて、各DB内に該当データが見付からない場合は、適宜エラー処理を行って終了するようにしてもよい。エラー処理の内容は、例えば所定のエラーコードを各ネットワーク上のプロトコルに従って返信するようにしてもよいし、特段の処置が必要でなければ、リクエストをそのまま破棄するようにしてもよい。
【0039】
次に、マッピングDB104が格納するデータの書き換えについて説明する。
マッピングDB104のデータ書き換えが必要となるのは、図17で説明したように、ネットワーク構成の変更が行われたときや、ゲートウェイ装置を別のビル・商業施設などに設置するときなどである。
例えば、図9において「エアコン」の「運転状態」属性は「setInfProperty」関数がマッピングされているが、別のビルに設置する際には状態変化の通知が不要であるような場合が考えられる。
従来のゲートウェイ装置では、インスタンス単位または属性単位でのマッピングは可能であったが、機能マッピングを変更する際には、ソフトウェアの書き替えを行わなければならなかった。
本発明に係るゲートウェイ装置では、上記の場合を例に取ると、図8に示した機能マッピングテーブル104cの1行目のデータを、「機能ID=1001」に書き換えるのみでよく、メンテナンスのための追加開発やメンテナンス作業自体の手間を大幅に削減することができる。
【0040】
なお、マッピングDB104のデータ書き換えを実際に行う際には、例えば専用のコネクタ端子を備えたメンテナンス端末をゲートウェイ装置に直接接続するなどして、書き換えのためのデータをゲートウェイ装置に送り込むようにすればよい。その他、物理的な媒体(FD、CD、メモリカード等のメモリデバイス等)を介して設定するなどしてもよい。またこれらを組合せて設定するようにしてもよい。
例えばデフォルト値は規定のデータの一部として搭載し、その後の各種変更対応はネットワーク経由で設定する、等とすることができる。
【0041】
本実施の形態1においては、各インスタンスDBとマッピングテーブルを個別に構築したが、データ内容に重複があるため、記憶容量節約等の観点から、インスタンスDBを省略してもよい。
また、マッピングテーブルは、インスタンスDBの各行同士の対応関係のみを格納するように構成してもよい。
【0042】
また、機能マッピングテーブル104bと機能マッピングテーブル104cは、別々のテーブルとして構成せずに、インスタンスIDの重複に配慮しつつ単一のテーブルとして構成してもよい。これについては、実施の形態2で詳説する。
【0043】
また、属性マッピングテーブル104aにおいて、属性値毎の対応関係を定義するように構成したが、例えば1行目や3行目のデータのように、両ネットワークにおける属性値が等しく、「インスタンスID」と「属性ID」のみが異なる場合は、「インスタンスID_A」「属性ID_A」と「インスタンスID_B」「属性ID_B」の関係のみを定義してもよい。
その他、両ネットワークにおける属性値が所定の変換式で関係付けられる場合も、同様にすることができる。
【0044】
以上のように、本実施の形態1に係るゲートウェイ装置は、マッピングDB104上に属性マッピングテーブル104a、機能マッピングテーブル104b、及び機能マッピングテーブル104cを備え、オブジェクト同士のマッピングを行う際に、これら各テーブルを参照して、インスタンスの属性値・機能のマッピングを行う。
そのため、図17で説明したように、属性値が変更されず、要求される機能のみが変更になった場合でも、ソフトウェア自体を書き換える必要がなく、マッピングDB104に格納しているデータを書き換えるのみで、容易に対応することができる。これにより、従前行っていた個別対応のための追加開発やそのためのメンテナンス作業を、大幅に削減することができる。
【0045】
また、属性マッピングテーブル104a、機能マッピングテーブル104b、及び機能マッピングテーブル104cは、上述のような機能マッピングを、各設備機器インスタンスが備える属性値単位で実施できるような列構成を採っている。
そのため、従前のゲートウェイ装置のように、機能マッピングをインスタンス単位で行うのではなく、属性値単位で行うことができるので、以下のような効果を奏する。
即ち、従前のゲートウェイ装置においては、設備機器オブジェクトの機能のみが変更になった場合は、当該オブジェクトの定義そのものが変更になったことを意味するため、オブジェクトの機能を実装するソフトウェア自体を変更する必要があったが、本実施の形態1においては、オブジェクトが備える属性及び機能をオブジェクト定義から切り離して個別に組み合わせ可能となるように構成したため、オブジェクトの属性や機能がアドホックに変更されても、その組み合わせ情報であるマッピングデータを書き換えるのみで、容易に対応することができるのである。
【0046】
実施の形態2.
実施の形態1では、マッピングDB104の1構成例を示し、インスタンスの属性・属性値をマッピングするとともに、インスタンスが備える機能もマッピングすることのできるゲートウェイ装置の構成を説明した。
本発明の実施の形態2では、マッピングDB104が格納している機能マッピングテーブルの、別の構成例について説明する。
【0047】
図11は、マッピングDB104が格納している機能マッピングテーブル104dの構成とデータ例を示すものである。
図11に示す機能マッピングテーブル104dは、実施の形態1で説明した機能マッピングテーブル104b(図7)と機能マッピングテーブル104c(図8)を一体的に構成したものである。各列の内容は、図7及び図8で説明したものと同様である。
本実施の形態2においては、機能マッピングテーブル104bと機能マッピングテーブル104cに替えて図11に示す機能マッピングテーブル104dを構成する。このテーブルを参照することにより、BACnet側で実行される機能と、設備ネット側で実行される機能とを、「インスタンス・属性・機能」単位で即座に対応付けることができる。
【0048】
図12は、本実施の形態2に係るゲートウェイ装置が備える各DBによるマッピング関係を概念的に示したものである。
実施の形態1で説明した図9と異なるのは、BACnet機能DB102と設備ネット機能DB103の対応関係971が新たに設けられた点である。図9の951、914、941で表される対応関係は、この971に集約することができる。
なお、図面の記載の簡潔のため、対応関係931、942、952、953は記載を省略する。
【0049】
本実施の形態2で新たに設けた機能マッピングテーブル104dは、上記の対応関係971を表している。例えば1行目のデータは、以下のように解釈することができる。
(1)左半分の3列
「Binary Output」インスタンス911の「現在値」属性と、「機能ID=0001」で表される関数(WriteProperty)とが対応付けられていることを表し、971の左端に相当する。
(2)右半分の3列
「エアコン」インスタンス910の「運転状態」属性と、「機能ID=1002」で表される関数(setInfProperty)とが対応付けられていることを表し、971の右端に相当する。
(3)1行目のデータ全体
上記(1)(2)が1行目に格納されていることにより、971の左端と右端が接続されていることを表す。即ち、「Binary Output」インスタンス911の「現在値」属性を「WriteProperty」関数で更新等したときは、「エアコン」インスタンス910の「運転状態」属性を「setInfProperty」で更新等すべきことが分かる。
【0050】
図13は、本実施の形態2において、BACnet側から命令コマンドを発行し、設備ネット側の設備機器を操作する際の、第1ゲートウェイ装置1604aの動作フローである。実施の形態1で説明した図10と同様の動作を例に取り説明する。
【0051】
(S1310)〜(S1340)
図10のステップS1010〜1040と同様であるため、説明を省略する。
(S1350)
マッピング実行手段105は、「Binary Output」インスタンス911のインスタンスID「0x0100000A」、属性ID「85(現在値)」、機能ID「0001」をキーとして、機能マッピングテーブル104dを検索する。
検索の結果、「インスタンスID_B=5001」「属性ID_B=0(運転状態)」「機能ID_B=1002」のデータが見つかる。
(S1360)
マッピング実行手段105は、「機能ID_B=1002」をキーにして、設備ネット機能DB103を検索する。検索の結果、「setInfProperty」関数を実行すべきことが分かる。
(S1370)
第1ゲートウェイ装置1604aは、「setInfProperty」関数を実行し、設備ネットインスタンスDB101の1行目のデータを「運転状態=0」から「運転状態=4」に更新するとともに、第1設備管理ネットワーク1605aに接続されている該当エアコンの運転を開始するよう、命令コマンドを発行する。また、「setInfProperty」関数の内容に従って、第1設備管理ネットワーク1605a内に当該エアコンの運転状態変化通知が発報される。
【0052】
なお、本実施の形態2において、図9の931〜953で表される対応関係を971に集約したが、951、914,941で表される対応関係と971を並存させてもよい。この場合、個々の状況に応じて適切な対応関係を辿って相手側ネットワークの機能を実行することができるので、構成の柔軟性がさらに増す。
【0053】
また、図12において、機能マッピングテーブル104dにより対応関係971が構成されることを説明したが、機能マッピングテーブルの構成によっては、これ以外の対応関係を構成することもできる。
例えば、新たな機能マッピングテーブル104eを設け、「機能ID_A」列と「機能ID_B」列を設ける。それぞれの列に、BACnet機能DB102の「機能ID」列の値と、設備ネット機能DB103の「機能ID」列の値を格納する。これにより、両ネットワーク上の機能を直接的に対応付けることができる。これは、例えば図12の例で言うと、「WriteProperty」関数950と「setProperty」関数930を接続するようなことに相当する。他の関数についても同様である。
【0054】
実施の形態3.
実施の形態1〜2では、マッピングDB104の構成について主に説明し、データ書き換えの具体的な方法については一般的な手法を用いるものとした。
本発明の実施の形態3では、マッピングDB104を書き換えるためのマッピングデータの受信方法について、別の実装例を説明する。
【0055】
図14は、図16と同様のビル内設備ネットワークにおいて、第1ゲートウェイ装置1604aのマッピングDB104を書き換える作業を説明するものである。ネットワーク構成は簡略化して記載している。
マッピングDB104の書き換え作業は、実施の形態1で述べたように第1ゲートウェイ装置1604aにメンテナンス端末を直結して行ってもよいが、図14に示すように、BACnetネットワーク1603にメンテナンス端末1401を接続し、オペレータ1402の操作によりネットワーク経由でマッピングデータを送り込むようにしてもよい。
以下、第1ゲートウェイ装置1604aがマッピングデータを受信するために備える構成を説明する。
【0056】
図15は、第1ゲートウェイ装置1604aの構成を示す機能ブロック図である。
第1ゲートウェイ装置1604aは、受信手段110、マッピング設定手段120を備える。その他の構成は図1と同様であるため、同じ符号を付して説明を省略する。
受信手段110は、図14のメンテナンス端末1401が送信したマッピングデータを受信する。通信プロトコルは、TCP/IP(Transfer Control Protocol/Internet Protocol)上の任意のプロトコルなど、適宜適切な方式を用いる。
【0057】
受信手段110は、メンテナンス端末1401が送信したマッピングデータを含むネットワークパケットを受信可能なネットワークインターフェースと、これを処理する回路ないしソフトウェアとからなる。
ネットワークインターフェースは、BACnetネットワーク1603と接続するために設けられているものと共用でもよいし、別途メンテナンス用のネットワークインターフェースを設けてもよい。
ネットワークパケットを処理する回路ないしソフトウェアは、例えばTCP上の特定のポートを開いてIPパケットを待ち受けるように構成することができる。
【0058】
マッピング設定手段120は、CPUやマイコンなどの演算装置上で実行されるソフトウェアで実装することができる。マッピング実行手段105と一体的に構成してもよい。
【0059】
受信手段110は、メンテナンス端末1401が送信したマッピングデータを含むネットワークパケットを受信すると、そのデータをマッピング設定手段120に引き渡す。
マッピング設定手段120は、受け取ったデータからマッピングデータを抽出し、抽出したマッピングデータを基に、各DBの該当データを更新する。各DBの更新後は、更新後のデータに基づき、オブジェクト同士のマッピングを再度行い、最新のマッピング情報を用いてネットワーク間の情報通信を行う。
【0060】
なお、図14ではメンテナンス装置1401をBACnetネットワーク1603に接続してマッピングデータを送信する形態を説明したが、これに限られるものではなく、第1設備機器ネットワーク1605a側からマッピングデータを送信してもよい。
この場合、受信手段110を、BACnetネットワーク1603と第1設備機器ネットワーク1605aの双方の通信プロトコルに対応できるように構成すると、実装上の手間がかかるため、いずれのネットワークからマッピングデータを送信するか一概に決められない場合には、マッピングデータの受信は一般的なTCP/IP上のプロトコルを用いることが好ましい。
【0061】
その他、インターネットを介したサーバ上にマッピングデータを配置しておき、そのサーバから第1ゲートウェイ装置1604aに対して定期的に最新のマッピングデータを配信するプッシュ配信方式も実現可能であるし、反対に、第1ゲートウェイ装置1604aが最新のマッピングデータを取得するため定期的にそのサーバにアクセスする、プル配信方式も可能である。
【0062】
また、ここではマッピングDBのデータを書き換えるマッピング設定手段120について説明したが、各インスタンスDB及び機能DBについても、同様に書き換える手段を設けてもよい。
【0063】
以上のように、本実施の形態3に係るゲートウェイ装置は、受信手段110とマッピング設定手段120を備え、マッピングデータを含むネットワークパケットによりマッピングDB104のデータを更新可能とした。
そのため、マッピングDB104のデータ更新をリモートメンテナンスにより行うことが可能となり、メンテナンスコストのさらなる削減に資する。
【0064】
実施の形態4.
以上説明した実施の形態1〜3では、設備機器管理ネットワークにおけるゲートウェイ装置について説明した。しかし、本発明の本質は、これ以外にも適用可能なものである。本発明の実施の形態4では、その一例を説明する。
【0065】
直接通信することのできないオブジェクト同士をマッピングして相互に情報通信可能とするためのソフトウェアとして、ORB(Object Request Broker)がある。これは、オブジェクトが他のオブジェクトと通信する時に使用する共通インターフェース若しくはそのためのソフトウェアを総称的に表す用語である。
実施の形態1〜3で説明したマッピング実行手段105の処理をソフトウェアとして実装しコンピュータに実行させれば、異種ネットワークに接続されるオブジェクト同士の対応関係を定義する(マッピング)ソフトウェアが構成される。
これをサーバ上に実装し、ネットワーク上の中継点に設置するなどすれば、ORB機能を提供するサーバを構成することができる。実施の形態1〜3のゲートウェイ装置も、ORBサーバの1実装形態として実現することも可能である。
【0066】
以上のように、本実施の形態4によれば、実施の形態1〜3で説明したマッピング実行手段105の処理をソフトウェアとして実装したので、実施の形態1〜3のゲートウェイ装置と同様の動作をするオブジェクト間マッピングソフトウェアが得られる。
このオブジェクト間マッピングソフトウェアを、例えばORBサーバ上に実装することにより、設備機器管理ネットワーク以外の異種ネットワークにおいても、オブジェクト間のマッピングを柔軟に行うことができ、マッピングに要するメンテナンスコストの削減に資する。
【図面の簡単な説明】
【0067】
【図1】実施の形態1に係るゲートウェイ装置の機能を概念的に示した模式図である。
【図2】BACnetインスタンスDB100の構成とデータの例を示すものである。
【図3】設備ネットインスタンスDB101の構成とデータの例を示すものである。
【図4】BACnet機能DB102の構成とデータの例を示すものである。
【図5】設備ネット機能DB103の構成とデータの例を示すものである。
【図6】マッピングDB104が備える属性マッピングテーブル104aの構成とデータ例を示すものである。
【図7】マッピングDB104が備える機能マッピングテーブル104bの構成とデータ例を示すものである。
【図8】マッピングDB104が備える機能マッピングテーブル104cの構成とデータ例を示すものである。
【図9】以上の図2〜図8で説明した各DBによるマッピング関係を概念的に示したものである。
【図10】BACnet側から命令コマンドを発行し、設備ネット側の設備機器を操作する際の、第1ゲートウェイ装置1604aの動作フローである。
【図11】マッピングDB104が格納している機能マッピングテーブル104dの構成とデータ例を示すものである。
【図12】実施の形態2に係るゲートウェイ装置が備える各DBによるマッピング関係を概念的に示したものである。
【図13】実施の形態2において、BACnet側から命令コマンドを発行し、設備ネット側の設備機器を操作する際の、第1ゲートウェイ装置1604aの動作フローである。
【図14】図16と同様のビル内設備ネットワークにおいて、第1ゲートウェイ装置1604aのマッピングDB104を書き換える作業を説明するものである。
【図15】第1ゲートウェイ装置1604aの構成を示す機能ブロック図である。
【図16】ビル内の設備機器ネットワーク管理システムの構成を説明するものである。
【図17】図16のビル1601の最上階フロアの間取り図を示すものである。
【符号の説明】
【0068】
100 BACnetインスタンスDB、101 設備ネットインスタンスDB、102 BACnet機能DB、103 設備ネット機能DB、104 マッピングDB、104a 属性マッピングテーブル、104b〜104d 機能マッピングテーブル、105 マッピング実行手段、110 受信手段、120 マッピング設定手段、910 「エアコン」オブジェクトのインスタンス、911 「Binary Output」オブジェクトのインスタンス、912 「Multi−state Output」オブジェクトのインスタンス、913 「Multi−state Output」オブジェクトのインスタンス、920 「照明」オブジェクトのインスタンス、1401 メンテナンス端末、1402 オペレータ、1601 ビル、1602 機器管理装置、1603 BACnetネットワーク、1604a〜1604c ゲートウェイ装置、1605a〜1605c 設備機器ネットワーク。
【技術分野】
【0001】
本発明は、異種ネットワークに接続されるオブジェクト同士のマッピングを行う方法及びそのプログラム、その方法を設備機器管理ネットワークにおいて実行するゲートウェイ装置及びその装置を用いた機器管理システムに関するものである。
【背景技術】
【0002】
従来、『レスポンスの向上と、プログラム開発工数の削減と、マッピングデータの設定を省力化を可能とするゲートウェイ装置を得る。』ことを目的とした技術として、『第一の通信処理手段30aと、第二の通信処理手段30eと、被管理機器11の情報を保持する第一のデータベース30dと、第一のデータベース管理手段30cと、第一のデータベース30dが機器管理装置21の必要とする情報に変換された第二のデータベース30gと、第二のデータベース管理手段30fと、第一のデータベース30dと第二のデータベース30gの対応する項目を一致させるデータベースマッピング手段30hと、各手段にコマンドを配送し、該コマンドを、データベースマッピング手段30hを介して変換させながら転送するコマンド配送手段30bと備えている。』というものがある(特許文献1)。
【特許文献1】特開2000−244551号公報(要約)
【発明の開示】
【発明が解決しようとする課題】
【0003】
上記従来技術のような異種ネットワーク間におけるマッピングでは、通常、各々のネットワークに接続される機器のモデルであるオブジェクトのインスタンス同士、もしくはインスタンスの属性(プロパティ)同士のマッピングが行われ、これを通じて相互にデータ交換が行われる。
これにより、ネットワーク構成が変更になった等の理由でインスタンスの属性が変更された場合でも、マッピング情報のみを変更すれば容易に対応可能である。
一方、各種変換処理やデータ交換に付随して実行される各種処理などの機能は、上記マッピングによっても対応関係を変更することができず、そのインスタンスが表す機器の種類毎に固定されているため、物件対応やメンテナンス時に機能を変更する必要が生じた場合には、ソフトウェア自体の書き替えを行う必要があり、メンテナンスコストがかかるという課題があった。
本発明は、上記のような課題を解決し、ネットワーク構成の変更に容易に対応可能で、マッピングに要するメンテナンスコストを削減することのできるオブジェクト間マッピング方法及びそのプログラム、その方法を設備機器管理ネットワークにおいて実行するゲートウェイ装置及びその装置を用いた機器管理システムを得ることを目的とする。
【課題を解決するための手段】
【0004】
本発明に係るオブジェクト間マッピング方法は、
異種ネットワークに接続されるオブジェクト同士の対応関係を定義する(以下、マッピングと呼ぶ)方法であって、
前記各オブジェクトのインスタンスが備える属性同士の対応関係を定義する属性マッピングテーブルと、
前記属性に対して実行する機能を前記属性毎に対応付ける機能マッピングテーブルと、
を格納した書き換え可能な記憶手段を設け、
前記各オブジェクト同士のマッピングを行う際には、
前記属性マッピングテーブルを参照して、マッピング対象オブジェクトのインスタンスが備える属性同士を対応付けるとともに、
前記機能マッピングテーブルを参照して、当該各属性に対して実行する機能を対応付ける
ことを特徴とするものである。
【発明の効果】
【0005】
本発明に係るオブジェクト間マッピング方法によれば、オブジェクトのインスタンス同士及び属性同士のマッピングに加えて、各オブジェクトが備える機能のマッピングを容易に変更することができるので、ネットワーク構成の変更に容易に対応可能で、マッピングに要するメンテナンスコストを削減することのできるオブジェクト間マッピング方法が得られる。
【発明を実施するための最良の形態】
【0006】
実施の形態1.
図1は、本発明の実施の形態1に係るゲートウェイ装置の機能を概念的に示した模式図である。
本実施の形態1に係るゲートウェイ装置は、管理側ネットワーク(以下、一例として「BACnet」を取り上げる。詳細は後述。)の管理オブジェクトのインスタンスを管理するBACnetインスタンスDB100と、被管理機器である設備機器を接続したネットワーク(以下「設備ネット」)における各設備機器の現在状況を、その設備機器を表すオブジェクトのインスタンスとして管理する設備ネットインスタンスDB101とを備える。
BACnetインスタンスDB100と設備ネットインスタンスDB101は、各オブジェクトの属性(プロパティ)及び属性値を保持する。
また、本実施の形態1に係るゲートウェイ装置は、BACnet機能DB102と、設備ネット機能DB103とを備える。
BACnet機能DB102は、BACnet上で提供される各種機能、すなわちデータの操作・監視やデータ交換の際に行われる各種変換処理やデータ交換に付随して実行される各種処理を記述した関数群を保持・管理している。
同様に、設備ネット機能DB103は、設備ネット上で提供される各種機能を記述した関数群を保持・管理している。
マッピングDB104は、BACnet上のインスタンス情報及び各種機能と、設備ネット上のインスタンス情報及び各種機能とを対応付けるマッピングデータを保持・管理している。
マッピング実行手段105は、マッピングDB104を参照して、BACnet上のインスタンスと設備ネット上のインスタンスをマッピングする処理を行なう。マッピング処理の目的や内容については後述する。
なお、「インスタンス情報」とは、インスタンスが備える属性及び属性値のことをいう。
【0007】
マッピング実行手段105は、CPUやマイコンなどの演算装置上で実行されるソフトウェアで実装することができる。
また、各DBは、RAM、HDD、フラッシュメモリなどの書込み可能な記憶装置上に実装することができる。実装方式は、マトリクス状の行列データとしてもよいし、関係テーブル形式で格納してもよい。また、中間にRDBMSのようなミドルウェアを媒介させてもよい。以下の説明では、テーブル形式で格納しているものとする。
なお、図1においては、ゲートウェイ装置が各ネットワークに接続するためのネットワークインターフェースを省略しているが、通信プロトコルに応じて適宜必要なインターフェースを備えているものとする。
【0008】
図2は、BACnetインスタンスDB100の構成とデータの例を示すものである。
BACnetインスタンスDB100は、例えばテーブル形式で構成することができる(以下の各DBも同様)。図2の構成例では、「インスタンスID」列、「属性ID」列、「属性値」列を有する。
(1)「インスタンスID」列
本列は、BACnet側に構成される管理オブジェクトの個々のインスタンスを特定するためのIDを格納する。BACnet上の管理オブジェクトの具体例は、後述の図9で説明する。
(2)「属性ID」列
本列は、「インスタンスID」列の値で特定されるインスタンスが備える属性(プロパティ)を特定するためのIDを格納する。本列の値は、属性を特定するためのIDでもよいし、名称が重複しないのであれば、属性名で直接的に特定するようにしてもよい。
管理オブジェクトの種類が異なれば、備える属性も異なるため、本列の値は「インスタンスID」列で特定される管理オブジェクト毎に異なる場合がある。また、1つの管理オブジェクトが複数の属性を備える場合もあるため、同じ「インスタンスID」列の値を持つ行が複数存在する場合もある。
なお、図2のデータ例では、「属性ID=85」は、「現在値」という属性のことを指す。
(3)「属性値」列
本列は、「インスタンスID」列と「属性ID」列の値で特定される属性の実値を格納する。
【0009】
図3は、設備ネットインスタンスDB101の構成とデータの例を示すものである。
設備ネットインスタンスDB101の列構成は、BACnetインスタンスDB100と同様である。ただし、格納される値は、設備ネットに接続されている個々の設備機器を表す情報である。
(1)「インスタンスID」列
本列は、設備ネットに接続されている個々の設備機器を特定するためのIDを格納する。具体的には、その設備機器を表すオブジェクトのインスタンスIDが格納される。
(2)「属性ID」列
本列は、「インスタンスID」列で特定される設備機器が備える属性を特定するためのIDを格納する。本列の値は、属性を特定するためのIDでもよいし、名称が重複しないのであれば、属性名で直接的に特定するようにしてもよい。
設備機器の種類が異なれば、備える属性名も異なるため、本列の値は「インスタンスID」列で特定される設備機器毎に異なる場合がある。また、1つの設備機器が複数の属性を備える場合もあるため、同じ「インスタンスID」列の値を持つ行が複数存在する場合もある。
図3のデータ例では、「インスタンスID=5001」で特定される設備機器は、「属性ID=0」の属性(運転状態)、「属性ID=1」の属性(運転モード)、「属性ID=2」の属性(設定温度)を備える。
同様に、「インスタンスID=7001」で特定される設備機器は、「属性ID=10」の属性(点灯状態)、「属性ID=11」の属性(調光状態)を備える。
(3)「属性値」列
本列は、「インスタンスID」列と「属性ID」列の値で特定される設備機器の属性の実値を格納する。
図3のデータ例では、「インスタンスID=5001」で特定される設備機器の「属性ID=2」の属性(設定温度)の値は「29」であることが分かる。
【0010】
図4は、BACnet機能DB102の構成とデータの例を示すものである。図4の構成例では、BACnet機能DB102は「機能ID」列、「機能名」列、「機能説明」列を有する。
「機能ID」列は、BACnet上で提供される各種機能、すなわちデータの操作・監視やデータ交換の際に行われる各種変換処理やデータ交換に付随して実行される各種処理を記述した関数を特定するためのIDを格納する。
「機能名」列は、「機能ID」列の値で特定される関数の名称を格納する。本列の値は、関数名そのものでもよいし、関数ポインタなどを用いて間接的に関数を特定するものでもよい。
「機能説明」列は、「機能ID」列で特定される関数の簡単な機能説明を格納する。本列は、便宜的に設けられたものであるため、省略してもよい。
【0011】
図5は、設備ネット機能DB103の構成とデータの例を示すものである。
設備ネット機能DB103の列構成は、BACnet機能DB102と同様である。ただし、格納される値は、設備ネット上で提供される各種機能を記述した関数のID、名称、機能説明である。
【0012】
なお、上記各DBの具体的な実装方式は、例えばテーブルを構成するフラットファイルとしてもよいし、ソフトウェア上で実現される仮想的なテーブルとしてもよい。
【0013】
ここで、図1の残りの構成の説明を行う前に、従来技術におけるマッピング処理の目的とその内容、並びに課題について説明する。
【0014】
図16は、ビル内の設備機器ネットワーク管理システムの構成を説明するものである。
ビル1601の各フロアには、エアコンや照明といった設備機器が敷設される。各フロアごとに、これら設備機器を接続する設備機器ネットワーク1605a〜1605c(以下、「設備ネット」と略す場合もある)が構成されている。各設備ネット内には、同種の機器を取り纏めるコントローラが接続され、その配下に同種の設備機器が接続される。
また、ビル1601内の各フロアに敷設された設備機器を統合管理するための機器管理装置1602が、管制室等に設置されている。
上述の管理対象設備機器のことを、「被管理機器」と呼ぶ。
なお、図16中の各フロアのゲートウェイ装置は、設備ネットで用いられる複数の通信プロトコルに対応したものを想定しているため、各フロアのゲートウェイ装置は1台のみとしたことを付言しておく。
【0015】
一般に、機器管理装置1602は、各設備機器と通信して監視・制御するためのプロトコルとして、標準規格であるBACnetプロトコルを用いることが多い。一方、各フロアに敷設される設備機器や制御盤は、必ずしも同一メーカによるものとは限らず、またBACnetプロトコルにより直接監視・制御できるものとは限らない。
そこで、両ネットワークの間にゲートウェイ装置1604a〜1604cをフロア毎に各1台設け、そのゲートウェイ装置と各コントローラを接続し、通信プロトコルが異なっても、命令を相互変換して情報通信可能とする構成がとられる。以下、ステップを追って説明する。
【0016】
(1)BACnetプロトコルによる通信
図16の機器管理装置1602は、各設備機器を制御する際に、BACnetプロトコルを用いて通信を行い、命令コマンドを送信する。命令コマンドは、各フロアのゲートウェイ装置1604a〜1604cに到達する。
(2)各プロトコルに対応したインスタンスの構成
各フロアのゲートウェイ装置1604a〜1604cは、BACnetプロトコルに対応した管理オブジェクトのインスタンスを内部に構成し、機器管理装置1602が送信した命令コマンド等を受け取る。
また、設備ネット上のプロトコルに対応した設備機器インスタンスを内部に構成し、上記のBACnetプロトコル上の管理オブジェクトのインスタンスと対応付ける(マッピング)。
(3)命令コマンドの変換と実行
ゲートウェイ装置1604a〜1604cは、BACnetプロトコルに対応した管理オブジェクトのインスタンスと、これにマッピングされた、設備ネット上のプロトコルに対応した設備機器インスタンスとの間で、命令コマンドを変換する。
次に、設備ネット上のプロトコルで命令実行対象の設備機器と通信を行い、機器管理装置1602が発行した命令コマンドを実行する。
【0017】
このように、ゲートウェイ装置1604a〜1604cは、両側に接続されるネットワーク間で命令コマンドを変換し、相互に通信可能とする機能を有する。命令コマンドの変換の際に、オブジェクト同士のマッピングが行われる。
【0018】
一方、ゲートウェイ装置1604a〜1604cには、ネットワークの構成変更に柔軟に対応可能とする役割もある。
上述のように、命令コマンドの変換は、オブジェクト同士のマッピングによって行われるが、仮にネットワークに接続される設備機器の構成が変更になった場合でも、このマッピングの内容を再設定するのみで対応可能であり、ゲートウェイ装置1604a〜1604c自体を取り替えたり、あるいはプログラムの書き換えを行ったりする必要はない。
【0019】
しかし、このようなオブジェクト同士のマッピングを再設定するのみでは、対応することができない場合も存在する。以下、具体例を交えて説明する。
【0020】
図17は、ビル内の設備ネットワークの設備機器接続状況を示すものである。図17の上図はビル1601のあるフロア、下図は別のビル1602のあるフロアの接続状況を示している。
いずれのビルにおいても、第1ゲートウェイ装置1604a配下の第1設備ネットワーク1605a上に、エアコンや照明などの設備機器が接続されている。ここでは説明の簡単のため、コントローラは省略している。
一般に、ビル毎もしくは同一のビル内のフロア毎に、第1ゲートウェイ装置1604a配下に接続される設備機器の種類や数、ネットワーク上の配置が異なる。そのため、第1ゲートウェイ装置1604aは、これら設備機器が備える属性に合わせて、柔軟にオブジェクトの属性を変更できることが望ましい。特許文献1に示す技術は、このような柔軟な属性変更を可能としたものである。
【0021】
ところが、オブジェクトの属性変更のみでは、設備機器の構成変更に対応できない場合が存在する。
例えば、図17の上図の設備機器構成において、エアコンの動作状態が「可動」から「停止」に変化した場合には、第1設備ネットワーク1605a内に状態変化通知を発報するように、第1ゲートウェイ装置1604aを設定していたものとする。
一方、図17の下図の設備機器構成において同じ設定を適用すると、エアコンの台数が多いため、状態変化通知を発報することにより操作の応答速度が遅くなってしまう、といったケースが存在する。この場合、状態変化通知の発報頻度を減らす必要がある。
このように、ゲートウェイ装置を接続する設備機器ネットワークの個々の状況により、ゲートウェイ機器に求められる機能の詳細が異なる場合がある。
【0022】
この場合、特許文献1に示すような従来技術を用いていると、以下に説明するような不都合が生じる。
従来のゲートウェイ装置においては、各設備機器オブジェクトはインスタンス単位又は属性単位でマッピングされている。
しかし、上述のように、各設備機器の「属性」変更に対応するのみならず、個々の設備機器の属性に対して実行する「機能」を変更する必要がある場合、インスタンス単位又は属性単位のマッピングを変更するだけでは、オブジェクト同士の命令コマンドの対応関係を変更することはできない。
結局のところ、ゲートウェイ装置のプログラムを書き換える以外に対応手段がなく、メンテナンスコストがかかるという課題があった。
さらには、設備機器の管理ネットワークにおいては、上述のように細かな単位でマッピングを変更することを求められる頻度が高く、よって従来技術の課題となっていたのである。
【0023】
本発明は、このような課題を解決すべく、インスタンス単位・属性単位でのマッピングに加えて、各ネットワーク上で提供する機能をもマッピングにより変更可能とするゲートウェイ装置を提案するものである。
以下は、図1の残りの構成の説明に戻る。
【0024】
図6は、マッピングDB104が備える属性マッピングテーブル104a(図示せず)の構成とデータ例を示すものである。
属性マッピングテーブル104aは、「インスタンスID_A」列、「属性ID_A」列、「属性値_A」列、「インスタンスID_B」列、「属性ID_B」列、「属性値_B」列を有する。
「インスタンスID_A」列〜「属性値_A」列の内容は、BACnetインスタンスDB100の内容と同様である。また、「インスタンスID_B」列〜「属性値_B」列の内容は、設備ネットインスタンスDB101の内容と同様である。
即ち、本テーブルによって、BACnet上の設備機器インスタンスが備える属性値と、設備ネット上の設備機器インスタンスが備える属性値が、相互に対応付けられることとなる。
図6のデータ例では、「インスタンスID_A=0x0100000A」で特定されるBACnet上の設備機器インスタンスの「現在値=0」は、「インスタンスID_B=5001」で特定される設備ネット上の設備機器インスタンスの「運転状態=0」に対応付けられることとなる。
【0025】
図7は、マッピングDB104が備える機能マッピングテーブル104b(図示せず)の構成とデータ例を示すものである。本テーブルは、BACnet上の設備機器インスタンスが備える各属性と、その属性に対して実行する機能との関係を定義するものである。
機能マッピングテーブル104bは、「インスタンスID」列、「属性ID」列、「機能ID」列を有する。
「インスタンスID」列と「属性ID」列の内容は、BACnetインスタンスDB100のものと同様である。
「機能ID」列は、「インスタンスID」列と「属性ID」列の値で特定される属性に対して実行する関数を特定するためのIDが格納される。このIDの値は、BACnet機能DB102の「機能ID」列に格納されているいずれかの値が格納される。
図7のデータ例では、「インスタンスID=0x0100000A」で特定されるBACnet上の設備機器インスタンスの「現在値」属性は、「機能ID=0001」で特定される関数(「WriteProperty」関数)によって変更等が行われることが分かる。
【0026】
図8は、マッピングDB104が備える機能マッピングテーブル104c(図示せず)の構成とデータ例を示すものである。本テーブルは、設備ネット上の設備機器インスタンスが備える各属性と、その属性に対して実行する機能との関係を定義するものである。
機能マッピングテーブル104cの構成は、機能マッピングテーブル104bと同様であるが、格納されるデータが設備ネット上の設備機器インスタンスに関するものである点のみが異なる。
図8のデータ例では、「インスタンスID=5001」で特定される設備ネット上の設備機器インスタンスの「運転状態」属性は、「機能ID=1002」で特定される関数(「setInfProperty」関数)によって変更等が行われることが分かる。
【0027】
図9は、以上の図2〜図8で説明した各DBによるマッピング関係を概念的に示したものである。以下、具体的に説明する。
【0028】
(1)設備機器「エアコン」の「運転状態」属性
設備ネットに接続されている設備機器「エアコン」は、属性「運転状態」を持つ。
設備ネットで用いられる通信プロトコル上では、「運転状態」属性値が「0」であれば「停止」、「4」であれば「運転中」を表すものとする。
このような2値を取る属性は、BACnetプロトコル上では「Binary Output」というオブジェクトで表現される。「Binary Output」オブジェクトの「現在値」属性は、「0」「1」のいずれかの値を取る。
BACnetインスタンスDB100において、「Binary Output」オブジェクトの「インスタンスID=0x0100000A」で表されるインスタンスの「現在値」属性を登録するとともに、設備ネットインスタンスDB101において、「エアコン」オブジェクトの「インスタンスID=5001」で表されるインスタンスの「運転状態」属性を登録する。
また、マッピングDB104の属性マッピングテーブル104aにおいて、両者の対応関係を定義する。
図9では、911が上記「Binary Output」オブジェクトのインスタンス、910が「エアコン」オブジェクトのインスタンスを表し、それぞれの「インスタンスID」は、各インスタンスの「インスタンスID」に示している通りである。また、914は属性同士の対応関係を表す。
「Binary Output」インスタンス911の「現在値」属性は、図2の1行目のデータにより表されている。
「エアコン」インスタンス910の「運転状態」属性は、図3の1行目のデータにより表されている。
両者の対応関係914は、図6の1〜2行目のデータにより表されている。
以上のマッピング設定により、「Binary Output」インスタンス911の「現在値」属性(0|1)が、「エアコン」インスタンス910の「運転状態」属性(0|4)に対応付けられる。
【0029】
(2)設備機器「エアコン」の「運転モード」属性
設備ネットに接続されている設備機器「エアコン」は、属性「運転モード」を持つ。
設備ネットで用いられる通信プロトコル上では、「運転モード」属性値が「0」であれば「冷房」、「1」であれば「暖房」、「2」であれば「ドライ」を表すものとする。
このような複数の状態値を取る属性は、BACnetプロトコル上では「Multi−state Output」というオブジェクトで表現される。ここでの「Multi−state Output」オブジェクトの「現在値」属性は、「0」「1」「2」のいずれかの値を取るものとする。
BACnetインスタンスDB100において、「Multi−state Output」オブジェクトの「インスタンスID=0x03800001」で表されるインスタンスの「現在値」属性を登録するとともに、設備ネットインスタンスDB101において、「エアコン」オブジェクトの「インスタンスID=5001」で表されるインスタンスの「運転モード」属性を登録する。
また、マッピングDB104の属性マッピングテーブル104aにおいて、両者の対応関係を定義する。
図9では、912が上記「Multi−state Output」オブジェクトのインスタンスを表し、「インスタンスID」は、912の「インスタンスID」に示している通りである。915は属性同士の対応関係を表す。
「Multi−state Output」インスタンス912の「現在値」属性は、図2の2行目のデータにより表されている。
「エアコン」インスタンス910の「運転モード」属性は、図3の2行目のデータにより表されている。
両者の対応関係915は、図6の3行目のデータにより表されている。なお、記載の都合上、「属性値_A=1」と「属性値_B=1」の対応関係のみを図示したが、「属性値_A」「属性値_B」が取り得る全ての値について、対応関係を定義してもよい。
以上のマッピング設定により、「Multi−state Output」インスタンス911の「現在値」属性(0|1|2)が、「エアコン」インスタンス910の「運転モード」属性(0|1|2)に対応付けられる。
【0030】
(3)設備機器「エアコン」の「設定温度」属性
設備ネットに接続されている設備機器「エアコン」は、属性「設定温度」を持つ。
設備ネットで用いられる通信プロトコル上では、「設定温度」属性は当該エアコンの設定温度値を表し、「16」〜「32」の整数値を取るものとする。
これは、BACnetプロトコル上では、「運転モード」属性と同様に「Multi−state Output」というオブジェクトで表現される。ここでの「Multi−state Output」オブジェクトの「現在値」属性は、「0」〜「16」のいずれかの値を取るものとする。
BACnetインスタンスDB100において、「Multi−state Output」オブジェクトの「インスタンスID=0x03800002」で表されるインスタンスの「現在値」属性を登録するとともに、設備ネットインスタンスDB101において、「エアコン」オブジェクトの「インスタンスID=5001」で表されるインスタンスの「設定温度」属性を登録する。
また、マッピングDB104の属性マッピングテーブル104aにおいて、両者の対応関係を定義する。
図9では、913が上記「Multi−state Output」オブジェクトのインスタンスを表し、「インスタンスID」は、913の「インスタンスID」に示している通りである。916は属性同士の対応関係を表す。
なお、「運転モード」属性に対応する「Multi−state Output」オブジェクトのインスタンスと区別するため、「インスタンスID」列にはそれぞれ異なる値を格納する。
「Multi−state Output」インスタンス913の「現在値」属性は、図2の3行目のデータにより表されている。
「エアコン」インスタンス910の「設定温度」属性は、図3の3行目のデータにより表されている。
両者の対応関係916は、図6の4行目のデータにより表されている。なお、記載の都合上、「属性値_A=13」と「属性値_B=29」の対応関係のみを図示したが、「属性値_A」「属性値_B」が取り得る全ての値について、対応関係を定義してもよい。
以上のマッピング設定により、「Multi−state Output」インスタンス911の「現在値」属性(0〜16)が、「エアコン」インスタンス910の「設定温度」属性(16〜32)に対応付けられる。
【0031】
(4)BACnet上の機能マッピング
図9において、BACnet上の各インスタンス911〜913が備える「現在値」属性は、「WriteProperty」関数で書き換えるものとする。
そこで、BACnet上の各インスタンス911〜913が備える「現在値」属性と、BACnet機能DB102に登録している「WriteProperty」関数950との対応関係を定義する。
図9において、951〜953がこれらの対応関係を表す。また、図7の各行のデータが、同関係を表している。
【0032】
(5)設備ネット上の機能マッピング
図9において、設備ネット上の「エアコン」オブジェクトのインスタンス910が備える「運転状態」属性と「設定温度」属性は、「setInfProperty」関数で書き換えるものとする。
そこで、設備ネット上の「エアコン」オブジェクトのインスタンス910が備える「運転状態」「設定温度」属性と、設備ネット機能DB103に登録している「setInfProperty」関数940との対応関係を定義する。
図9において、941〜942がこれらの対応関係を表す。また、図8の1行目と3行目のデータが、同関係を表している。
【0033】
また、設備ネット上の「エアコン」オブジェクトのインスタンス910が備える「運転モード」属性は、「setProperty」関数で書き換えるものとする。
そこで、設備ネット上の「エアコン」オブジェクトのインスタンス910が備える「運転モード」属性と、設備ネット機能DB103に登録している「setProperty」関数930との対応関係を定義する。
図9において、931がこれらの対応関係を表す。また、図8の2行目のデータが、同関係を表している。
【0034】
以上では、インスタンス情報(オブジェクト、属性、属性値)同士のマッピングを行った後、機能を各属性にマッピングするという概念・手順での説明を行ったが、BACnet、設備ネット双方においてそれぞれ各属性に対して機能を対応付け、それら属性を包含するインスタンス情報と機能の対同士をBACnet、設備ネット間で対応付けるという概念・手順でもよい。
また、以上の説明では対応付けは1:1で行ったが、一般にN:Mで対応関係を定義してもよい。
【0035】
次に、上述のマッピング情報を用いて行われる具体的な動作の一例を説明する。
【0036】
図10は、BACnet側から命令コマンドを発行し、設備ネット側の設備機器を操作する際の、第1ゲートウェイ装置1604aの動作フローである。第1ゲートウェイ装置1604aは図1〜図8で説明した構成を備えているものとする。
ここでは、図16のようなビル内において、機器管理装置1602が図9の「Binary Output」インスタンス911を操作することにより、「エアコン」インスタンス910の「運転状態」属性を操作する場合の動作を例に取り説明する。
【0037】
(S1010)
初期状態では、あらかじめ図2〜図8の各データベースが構成されており、同各図に示すデータが格納済みであるものとする。また、「Binary Output」インスタンス911の「現在値」属性値は「0」、「エアコン」インスタンス910の「運転状態」の属性値は「0」とする。
(S1020)
機器管理装置1602は、第1設備管理ネットワーク1605aに接続されているエアコンに対し、運転を開始すべき旨の命令を送信する。この命令は、BACnetプロトコルで送信される。即ち、「Binary Output」インスタンス911の「現在値」属性値を、「0」から「1」に変更すべき旨の「WriteProperty」命令コマンドが送信される。
送信された「WriteProperty」命令コマンドは、第1ゲートウェイ装置1604aに到達する。
(S1030)
第1ゲートウェイ装置1604aは、「WriteProperty」関数を実行し、BACnetインスタンスDB100の1行目のデータを「属性値=0」から「属性値=1」に更新する。このとき、「インスタンスID=0x0100000A」と「属性ID=85(現在値)」をキーとする。
(S1040)
マッピング実行手段105は、属性マッピングテーブル104aを検索し、「Binary Output」インスタンス911の「現在値」属性に対応付けられた、設備ネット上のインスタンスの属性値を検索する。
ここでは、「Binary Output」インスタンス911のインスタンスID「0x0100000A」、属性ID「85(現在値)」、属性値「1」を検索キーとする。
検索の結果、「インスタンスID_B=5001」「属性ID_B=0(運転状態)」「属性値_B=4」のデータが見つかる。これは、図9の「エアコン」インスタンス910の「運転状態」属性に相当する。
(S1050)
マッピング実行手段105は、機能マッピングテーブル104cを検索し、「エアコン」インスタンス910の「運転状態」属性に対応する関数を取得する。
ここでは、「エアコン」インスタンス910のインスタンスID「5001」と、属性ID「0(運転状態)」とを検索キーとする。
検索の結果、「機能ID=1002」のデータが見つかる。
(S1060)
マッピング実行手段105は、「機能ID=1002」をキーにして、設備ネット機能DB103を検索する。検索の結果、「setInfProperty」関数を実行すべきことが分かる。
(S1070)
第1ゲートウェイ装置1604aは、「setInfProperty」関数を実行し、設備ネットインスタンスDB101の1行目のデータを「運転状態=0」から「運転状態=4」に更新するとともに、第1設備管理ネットワーク1605aに接続されている該当エアコンの運転を開始するよう、命令コマンドを発行する。また、「setInfProperty」関数の内容に従って、第1設備管理ネットワーク1605a内に当該エアコンの運転状態変化通知が発報される。
【0038】
なお、図10の各ステップにおいて、各DB内に該当データが見付からない場合は、適宜エラー処理を行って終了するようにしてもよい。エラー処理の内容は、例えば所定のエラーコードを各ネットワーク上のプロトコルに従って返信するようにしてもよいし、特段の処置が必要でなければ、リクエストをそのまま破棄するようにしてもよい。
【0039】
次に、マッピングDB104が格納するデータの書き換えについて説明する。
マッピングDB104のデータ書き換えが必要となるのは、図17で説明したように、ネットワーク構成の変更が行われたときや、ゲートウェイ装置を別のビル・商業施設などに設置するときなどである。
例えば、図9において「エアコン」の「運転状態」属性は「setInfProperty」関数がマッピングされているが、別のビルに設置する際には状態変化の通知が不要であるような場合が考えられる。
従来のゲートウェイ装置では、インスタンス単位または属性単位でのマッピングは可能であったが、機能マッピングを変更する際には、ソフトウェアの書き替えを行わなければならなかった。
本発明に係るゲートウェイ装置では、上記の場合を例に取ると、図8に示した機能マッピングテーブル104cの1行目のデータを、「機能ID=1001」に書き換えるのみでよく、メンテナンスのための追加開発やメンテナンス作業自体の手間を大幅に削減することができる。
【0040】
なお、マッピングDB104のデータ書き換えを実際に行う際には、例えば専用のコネクタ端子を備えたメンテナンス端末をゲートウェイ装置に直接接続するなどして、書き換えのためのデータをゲートウェイ装置に送り込むようにすればよい。その他、物理的な媒体(FD、CD、メモリカード等のメモリデバイス等)を介して設定するなどしてもよい。またこれらを組合せて設定するようにしてもよい。
例えばデフォルト値は規定のデータの一部として搭載し、その後の各種変更対応はネットワーク経由で設定する、等とすることができる。
【0041】
本実施の形態1においては、各インスタンスDBとマッピングテーブルを個別に構築したが、データ内容に重複があるため、記憶容量節約等の観点から、インスタンスDBを省略してもよい。
また、マッピングテーブルは、インスタンスDBの各行同士の対応関係のみを格納するように構成してもよい。
【0042】
また、機能マッピングテーブル104bと機能マッピングテーブル104cは、別々のテーブルとして構成せずに、インスタンスIDの重複に配慮しつつ単一のテーブルとして構成してもよい。これについては、実施の形態2で詳説する。
【0043】
また、属性マッピングテーブル104aにおいて、属性値毎の対応関係を定義するように構成したが、例えば1行目や3行目のデータのように、両ネットワークにおける属性値が等しく、「インスタンスID」と「属性ID」のみが異なる場合は、「インスタンスID_A」「属性ID_A」と「インスタンスID_B」「属性ID_B」の関係のみを定義してもよい。
その他、両ネットワークにおける属性値が所定の変換式で関係付けられる場合も、同様にすることができる。
【0044】
以上のように、本実施の形態1に係るゲートウェイ装置は、マッピングDB104上に属性マッピングテーブル104a、機能マッピングテーブル104b、及び機能マッピングテーブル104cを備え、オブジェクト同士のマッピングを行う際に、これら各テーブルを参照して、インスタンスの属性値・機能のマッピングを行う。
そのため、図17で説明したように、属性値が変更されず、要求される機能のみが変更になった場合でも、ソフトウェア自体を書き換える必要がなく、マッピングDB104に格納しているデータを書き換えるのみで、容易に対応することができる。これにより、従前行っていた個別対応のための追加開発やそのためのメンテナンス作業を、大幅に削減することができる。
【0045】
また、属性マッピングテーブル104a、機能マッピングテーブル104b、及び機能マッピングテーブル104cは、上述のような機能マッピングを、各設備機器インスタンスが備える属性値単位で実施できるような列構成を採っている。
そのため、従前のゲートウェイ装置のように、機能マッピングをインスタンス単位で行うのではなく、属性値単位で行うことができるので、以下のような効果を奏する。
即ち、従前のゲートウェイ装置においては、設備機器オブジェクトの機能のみが変更になった場合は、当該オブジェクトの定義そのものが変更になったことを意味するため、オブジェクトの機能を実装するソフトウェア自体を変更する必要があったが、本実施の形態1においては、オブジェクトが備える属性及び機能をオブジェクト定義から切り離して個別に組み合わせ可能となるように構成したため、オブジェクトの属性や機能がアドホックに変更されても、その組み合わせ情報であるマッピングデータを書き換えるのみで、容易に対応することができるのである。
【0046】
実施の形態2.
実施の形態1では、マッピングDB104の1構成例を示し、インスタンスの属性・属性値をマッピングするとともに、インスタンスが備える機能もマッピングすることのできるゲートウェイ装置の構成を説明した。
本発明の実施の形態2では、マッピングDB104が格納している機能マッピングテーブルの、別の構成例について説明する。
【0047】
図11は、マッピングDB104が格納している機能マッピングテーブル104dの構成とデータ例を示すものである。
図11に示す機能マッピングテーブル104dは、実施の形態1で説明した機能マッピングテーブル104b(図7)と機能マッピングテーブル104c(図8)を一体的に構成したものである。各列の内容は、図7及び図8で説明したものと同様である。
本実施の形態2においては、機能マッピングテーブル104bと機能マッピングテーブル104cに替えて図11に示す機能マッピングテーブル104dを構成する。このテーブルを参照することにより、BACnet側で実行される機能と、設備ネット側で実行される機能とを、「インスタンス・属性・機能」単位で即座に対応付けることができる。
【0048】
図12は、本実施の形態2に係るゲートウェイ装置が備える各DBによるマッピング関係を概念的に示したものである。
実施の形態1で説明した図9と異なるのは、BACnet機能DB102と設備ネット機能DB103の対応関係971が新たに設けられた点である。図9の951、914、941で表される対応関係は、この971に集約することができる。
なお、図面の記載の簡潔のため、対応関係931、942、952、953は記載を省略する。
【0049】
本実施の形態2で新たに設けた機能マッピングテーブル104dは、上記の対応関係971を表している。例えば1行目のデータは、以下のように解釈することができる。
(1)左半分の3列
「Binary Output」インスタンス911の「現在値」属性と、「機能ID=0001」で表される関数(WriteProperty)とが対応付けられていることを表し、971の左端に相当する。
(2)右半分の3列
「エアコン」インスタンス910の「運転状態」属性と、「機能ID=1002」で表される関数(setInfProperty)とが対応付けられていることを表し、971の右端に相当する。
(3)1行目のデータ全体
上記(1)(2)が1行目に格納されていることにより、971の左端と右端が接続されていることを表す。即ち、「Binary Output」インスタンス911の「現在値」属性を「WriteProperty」関数で更新等したときは、「エアコン」インスタンス910の「運転状態」属性を「setInfProperty」で更新等すべきことが分かる。
【0050】
図13は、本実施の形態2において、BACnet側から命令コマンドを発行し、設備ネット側の設備機器を操作する際の、第1ゲートウェイ装置1604aの動作フローである。実施の形態1で説明した図10と同様の動作を例に取り説明する。
【0051】
(S1310)〜(S1340)
図10のステップS1010〜1040と同様であるため、説明を省略する。
(S1350)
マッピング実行手段105は、「Binary Output」インスタンス911のインスタンスID「0x0100000A」、属性ID「85(現在値)」、機能ID「0001」をキーとして、機能マッピングテーブル104dを検索する。
検索の結果、「インスタンスID_B=5001」「属性ID_B=0(運転状態)」「機能ID_B=1002」のデータが見つかる。
(S1360)
マッピング実行手段105は、「機能ID_B=1002」をキーにして、設備ネット機能DB103を検索する。検索の結果、「setInfProperty」関数を実行すべきことが分かる。
(S1370)
第1ゲートウェイ装置1604aは、「setInfProperty」関数を実行し、設備ネットインスタンスDB101の1行目のデータを「運転状態=0」から「運転状態=4」に更新するとともに、第1設備管理ネットワーク1605aに接続されている該当エアコンの運転を開始するよう、命令コマンドを発行する。また、「setInfProperty」関数の内容に従って、第1設備管理ネットワーク1605a内に当該エアコンの運転状態変化通知が発報される。
【0052】
なお、本実施の形態2において、図9の931〜953で表される対応関係を971に集約したが、951、914,941で表される対応関係と971を並存させてもよい。この場合、個々の状況に応じて適切な対応関係を辿って相手側ネットワークの機能を実行することができるので、構成の柔軟性がさらに増す。
【0053】
また、図12において、機能マッピングテーブル104dにより対応関係971が構成されることを説明したが、機能マッピングテーブルの構成によっては、これ以外の対応関係を構成することもできる。
例えば、新たな機能マッピングテーブル104eを設け、「機能ID_A」列と「機能ID_B」列を設ける。それぞれの列に、BACnet機能DB102の「機能ID」列の値と、設備ネット機能DB103の「機能ID」列の値を格納する。これにより、両ネットワーク上の機能を直接的に対応付けることができる。これは、例えば図12の例で言うと、「WriteProperty」関数950と「setProperty」関数930を接続するようなことに相当する。他の関数についても同様である。
【0054】
実施の形態3.
実施の形態1〜2では、マッピングDB104の構成について主に説明し、データ書き換えの具体的な方法については一般的な手法を用いるものとした。
本発明の実施の形態3では、マッピングDB104を書き換えるためのマッピングデータの受信方法について、別の実装例を説明する。
【0055】
図14は、図16と同様のビル内設備ネットワークにおいて、第1ゲートウェイ装置1604aのマッピングDB104を書き換える作業を説明するものである。ネットワーク構成は簡略化して記載している。
マッピングDB104の書き換え作業は、実施の形態1で述べたように第1ゲートウェイ装置1604aにメンテナンス端末を直結して行ってもよいが、図14に示すように、BACnetネットワーク1603にメンテナンス端末1401を接続し、オペレータ1402の操作によりネットワーク経由でマッピングデータを送り込むようにしてもよい。
以下、第1ゲートウェイ装置1604aがマッピングデータを受信するために備える構成を説明する。
【0056】
図15は、第1ゲートウェイ装置1604aの構成を示す機能ブロック図である。
第1ゲートウェイ装置1604aは、受信手段110、マッピング設定手段120を備える。その他の構成は図1と同様であるため、同じ符号を付して説明を省略する。
受信手段110は、図14のメンテナンス端末1401が送信したマッピングデータを受信する。通信プロトコルは、TCP/IP(Transfer Control Protocol/Internet Protocol)上の任意のプロトコルなど、適宜適切な方式を用いる。
【0057】
受信手段110は、メンテナンス端末1401が送信したマッピングデータを含むネットワークパケットを受信可能なネットワークインターフェースと、これを処理する回路ないしソフトウェアとからなる。
ネットワークインターフェースは、BACnetネットワーク1603と接続するために設けられているものと共用でもよいし、別途メンテナンス用のネットワークインターフェースを設けてもよい。
ネットワークパケットを処理する回路ないしソフトウェアは、例えばTCP上の特定のポートを開いてIPパケットを待ち受けるように構成することができる。
【0058】
マッピング設定手段120は、CPUやマイコンなどの演算装置上で実行されるソフトウェアで実装することができる。マッピング実行手段105と一体的に構成してもよい。
【0059】
受信手段110は、メンテナンス端末1401が送信したマッピングデータを含むネットワークパケットを受信すると、そのデータをマッピング設定手段120に引き渡す。
マッピング設定手段120は、受け取ったデータからマッピングデータを抽出し、抽出したマッピングデータを基に、各DBの該当データを更新する。各DBの更新後は、更新後のデータに基づき、オブジェクト同士のマッピングを再度行い、最新のマッピング情報を用いてネットワーク間の情報通信を行う。
【0060】
なお、図14ではメンテナンス装置1401をBACnetネットワーク1603に接続してマッピングデータを送信する形態を説明したが、これに限られるものではなく、第1設備機器ネットワーク1605a側からマッピングデータを送信してもよい。
この場合、受信手段110を、BACnetネットワーク1603と第1設備機器ネットワーク1605aの双方の通信プロトコルに対応できるように構成すると、実装上の手間がかかるため、いずれのネットワークからマッピングデータを送信するか一概に決められない場合には、マッピングデータの受信は一般的なTCP/IP上のプロトコルを用いることが好ましい。
【0061】
その他、インターネットを介したサーバ上にマッピングデータを配置しておき、そのサーバから第1ゲートウェイ装置1604aに対して定期的に最新のマッピングデータを配信するプッシュ配信方式も実現可能であるし、反対に、第1ゲートウェイ装置1604aが最新のマッピングデータを取得するため定期的にそのサーバにアクセスする、プル配信方式も可能である。
【0062】
また、ここではマッピングDBのデータを書き換えるマッピング設定手段120について説明したが、各インスタンスDB及び機能DBについても、同様に書き換える手段を設けてもよい。
【0063】
以上のように、本実施の形態3に係るゲートウェイ装置は、受信手段110とマッピング設定手段120を備え、マッピングデータを含むネットワークパケットによりマッピングDB104のデータを更新可能とした。
そのため、マッピングDB104のデータ更新をリモートメンテナンスにより行うことが可能となり、メンテナンスコストのさらなる削減に資する。
【0064】
実施の形態4.
以上説明した実施の形態1〜3では、設備機器管理ネットワークにおけるゲートウェイ装置について説明した。しかし、本発明の本質は、これ以外にも適用可能なものである。本発明の実施の形態4では、その一例を説明する。
【0065】
直接通信することのできないオブジェクト同士をマッピングして相互に情報通信可能とするためのソフトウェアとして、ORB(Object Request Broker)がある。これは、オブジェクトが他のオブジェクトと通信する時に使用する共通インターフェース若しくはそのためのソフトウェアを総称的に表す用語である。
実施の形態1〜3で説明したマッピング実行手段105の処理をソフトウェアとして実装しコンピュータに実行させれば、異種ネットワークに接続されるオブジェクト同士の対応関係を定義する(マッピング)ソフトウェアが構成される。
これをサーバ上に実装し、ネットワーク上の中継点に設置するなどすれば、ORB機能を提供するサーバを構成することができる。実施の形態1〜3のゲートウェイ装置も、ORBサーバの1実装形態として実現することも可能である。
【0066】
以上のように、本実施の形態4によれば、実施の形態1〜3で説明したマッピング実行手段105の処理をソフトウェアとして実装したので、実施の形態1〜3のゲートウェイ装置と同様の動作をするオブジェクト間マッピングソフトウェアが得られる。
このオブジェクト間マッピングソフトウェアを、例えばORBサーバ上に実装することにより、設備機器管理ネットワーク以外の異種ネットワークにおいても、オブジェクト間のマッピングを柔軟に行うことができ、マッピングに要するメンテナンスコストの削減に資する。
【図面の簡単な説明】
【0067】
【図1】実施の形態1に係るゲートウェイ装置の機能を概念的に示した模式図である。
【図2】BACnetインスタンスDB100の構成とデータの例を示すものである。
【図3】設備ネットインスタンスDB101の構成とデータの例を示すものである。
【図4】BACnet機能DB102の構成とデータの例を示すものである。
【図5】設備ネット機能DB103の構成とデータの例を示すものである。
【図6】マッピングDB104が備える属性マッピングテーブル104aの構成とデータ例を示すものである。
【図7】マッピングDB104が備える機能マッピングテーブル104bの構成とデータ例を示すものである。
【図8】マッピングDB104が備える機能マッピングテーブル104cの構成とデータ例を示すものである。
【図9】以上の図2〜図8で説明した各DBによるマッピング関係を概念的に示したものである。
【図10】BACnet側から命令コマンドを発行し、設備ネット側の設備機器を操作する際の、第1ゲートウェイ装置1604aの動作フローである。
【図11】マッピングDB104が格納している機能マッピングテーブル104dの構成とデータ例を示すものである。
【図12】実施の形態2に係るゲートウェイ装置が備える各DBによるマッピング関係を概念的に示したものである。
【図13】実施の形態2において、BACnet側から命令コマンドを発行し、設備ネット側の設備機器を操作する際の、第1ゲートウェイ装置1604aの動作フローである。
【図14】図16と同様のビル内設備ネットワークにおいて、第1ゲートウェイ装置1604aのマッピングDB104を書き換える作業を説明するものである。
【図15】第1ゲートウェイ装置1604aの構成を示す機能ブロック図である。
【図16】ビル内の設備機器ネットワーク管理システムの構成を説明するものである。
【図17】図16のビル1601の最上階フロアの間取り図を示すものである。
【符号の説明】
【0068】
100 BACnetインスタンスDB、101 設備ネットインスタンスDB、102 BACnet機能DB、103 設備ネット機能DB、104 マッピングDB、104a 属性マッピングテーブル、104b〜104d 機能マッピングテーブル、105 マッピング実行手段、110 受信手段、120 マッピング設定手段、910 「エアコン」オブジェクトのインスタンス、911 「Binary Output」オブジェクトのインスタンス、912 「Multi−state Output」オブジェクトのインスタンス、913 「Multi−state Output」オブジェクトのインスタンス、920 「照明」オブジェクトのインスタンス、1401 メンテナンス端末、1402 オペレータ、1601 ビル、1602 機器管理装置、1603 BACnetネットワーク、1604a〜1604c ゲートウェイ装置、1605a〜1605c 設備機器ネットワーク。
【特許請求の範囲】
【請求項1】
異種ネットワークに接続されるオブジェクト同士の対応関係を定義する(以下、マッピングと呼ぶ)方法であって、
前記各オブジェクトのインスタンスが備える属性同士の対応関係を定義する属性マッピングテーブルと、
前記属性に対して実行する機能を前記属性毎に対応付ける機能マッピングテーブルと、
を格納した書き換え可能な記憶手段を設け、
前記各オブジェクト同士のマッピングを行う際には、
前記属性マッピングテーブルを参照して、マッピング対象オブジェクトのインスタンスが備える属性同士を対応付けるとともに、
前記機能マッピングテーブルを参照して、当該各属性に対して実行する機能を対応付ける
ことを特徴とするオブジェクト間マッピング方法。
【請求項2】
前記属性マッピングテーブルは、以下の各列を備えたことを特徴とする請求項1に記載のオブジェクト間マッピング方法。
(1)第1オブジェクトのインスタンスを特定するためのIDを格納する列
(2)(1)列の値で特定されるインスタンスが備える属性を特定するためのIDを格納する列
(3)(2)列の値で特定される属性の値を格納する列
(4)第2オブジェクトのインスタンスを特定するためのIDを格納する列
(5)(4)列の値で特定されるインスタンスが備える属性を特定するためのIDを格納する列
(6)(5)列の値で特定される属性の値を格納する列
【請求項3】
前記機能マッピングテーブルは、以下の各列を備えたことを特徴とする請求項1又は請求項2に記載のオブジェクト間マッピング方法。
(1)オブジェクトのインスタンスを特定するためのIDを格納する列
(2)(1)列の値で特定されるインスタンスが備える属性を特定するためのIDを格納する列
(3)(2)列の値で特定される属性に対して実行する機能を特定するためのIDを格納する列
【請求項4】
請求項1ないし請求項3のいずれかに記載のオブジェクト間マッピング方法をコンピュータに実行させることを特徴とするオブジェクト間マッピングプログラム。
【請求項5】
被管理機器を接続する第1ネットワークと、機器管理装置を接続する第2ネットワークの間に設けられ、
前記被管理機器を表す第1オブジェクトと、当該被管理機器の操作、監視、又はメンテナンス操作を実行する第2オブジェクトとを対応付け(以下、マッピングと呼ぶ)、
前記第2オブジェクトに対して操作、監視、又はメンテナンス操作を実行することにより、当該第2オブジェクトにマッピングされている前記被管理機器の操作、監視、又はメンテナンスを実行するゲートウェイ装置であって、
前記第1オブジェクト及び前記第2オブジェクトそれぞれのインスタンスが備える属性同士の対応関係を定義する属性マッピングテーブルと、
前記属性に対して実行する機能を前記属性毎に対応付ける機能マッピングテーブルと、
を格納した書き換え可能な記憶手段と、
前記第1オブジェクトと前記第2オブジェクトのマッピングを実行するマッピング実行手段とを備え、
前記マッピング実行手段は、
前記第1オブジェクトと前記第2オブジェクトのマッピングを行う際には、
前記属性マッピングテーブルを参照して、マッピング対象オブジェクトのインスタンスが備える属性同士を対応付けるとともに、
前記機能マッピングテーブルを参照して、当該各属性に対して実行する機能を対応付ける
ことを特徴とするゲートウェイ装置。
【請求項6】
前記属性マッピングテーブルは、以下の各列を備えたことを特徴とする請求項5に記載のゲートウェイ装置。
(1)第1オブジェクトのインスタンスを特定するためのIDを格納する列
(2)(1)列の値で特定されるインスタンスが備える属性を特定するためのIDを格納する列
(3)(2)列の値で特定される属性の値を格納する列
(4)第2オブジェクトのインスタンスを特定するためのIDを格納する列
(5)(4)列の値で特定されるインスタンスが備える属性を特定するためのIDを格納する列
(6)(5)列の値で特定される属性の値を格納する列
【請求項7】
前記機能マッピングテーブルは、以下の各列を備えたことを特徴とする請求項5又は請求項6に記載のゲートウェイ装置。
(1)オブジェクトのインスタンスを特定するためのIDを格納する列
(2)(1)列の値で特定されるインスタンスが備える属性を特定するためのIDを格納する列
(3)(2)列の値で特定される属性に対して実行する機能を特定するためのIDを格納する列
【請求項8】
前記第1ネットワーク又は前記第2ネットワークから、前記記憶手段に格納するデータを受信する受信手段と、
前記受信手段が受け取った前記データを前記記憶手段に格納するとともに、当該データの内容に基づいて、前記属性マッピングテーブル又は前記機能マッピングテーブルを更新するマッピング設定手段と、
を備え、
前記マッピング実行手段は、
更新後の内容に基づいて、前記第1オブジェクトと前記第2オブジェクトのマッピングを再度行うことを特徴とする請求項5ないし請求項7のいずれかに記載のゲートウェイ装置。
【請求項9】
前記第1ネットワークに接続された1ないし複数の被管理機器と、
前記第2ネットワークに接続された機器管理装置と、
前記第1ネットワークと前記第2ネットワークの間に設けられた請求項5ないし請求項8のいずれかに記載のゲートウェイ装置と、
を有することを特徴とする機器管理システム。
【請求項1】
異種ネットワークに接続されるオブジェクト同士の対応関係を定義する(以下、マッピングと呼ぶ)方法であって、
前記各オブジェクトのインスタンスが備える属性同士の対応関係を定義する属性マッピングテーブルと、
前記属性に対して実行する機能を前記属性毎に対応付ける機能マッピングテーブルと、
を格納した書き換え可能な記憶手段を設け、
前記各オブジェクト同士のマッピングを行う際には、
前記属性マッピングテーブルを参照して、マッピング対象オブジェクトのインスタンスが備える属性同士を対応付けるとともに、
前記機能マッピングテーブルを参照して、当該各属性に対して実行する機能を対応付ける
ことを特徴とするオブジェクト間マッピング方法。
【請求項2】
前記属性マッピングテーブルは、以下の各列を備えたことを特徴とする請求項1に記載のオブジェクト間マッピング方法。
(1)第1オブジェクトのインスタンスを特定するためのIDを格納する列
(2)(1)列の値で特定されるインスタンスが備える属性を特定するためのIDを格納する列
(3)(2)列の値で特定される属性の値を格納する列
(4)第2オブジェクトのインスタンスを特定するためのIDを格納する列
(5)(4)列の値で特定されるインスタンスが備える属性を特定するためのIDを格納する列
(6)(5)列の値で特定される属性の値を格納する列
【請求項3】
前記機能マッピングテーブルは、以下の各列を備えたことを特徴とする請求項1又は請求項2に記載のオブジェクト間マッピング方法。
(1)オブジェクトのインスタンスを特定するためのIDを格納する列
(2)(1)列の値で特定されるインスタンスが備える属性を特定するためのIDを格納する列
(3)(2)列の値で特定される属性に対して実行する機能を特定するためのIDを格納する列
【請求項4】
請求項1ないし請求項3のいずれかに記載のオブジェクト間マッピング方法をコンピュータに実行させることを特徴とするオブジェクト間マッピングプログラム。
【請求項5】
被管理機器を接続する第1ネットワークと、機器管理装置を接続する第2ネットワークの間に設けられ、
前記被管理機器を表す第1オブジェクトと、当該被管理機器の操作、監視、又はメンテナンス操作を実行する第2オブジェクトとを対応付け(以下、マッピングと呼ぶ)、
前記第2オブジェクトに対して操作、監視、又はメンテナンス操作を実行することにより、当該第2オブジェクトにマッピングされている前記被管理機器の操作、監視、又はメンテナンスを実行するゲートウェイ装置であって、
前記第1オブジェクト及び前記第2オブジェクトそれぞれのインスタンスが備える属性同士の対応関係を定義する属性マッピングテーブルと、
前記属性に対して実行する機能を前記属性毎に対応付ける機能マッピングテーブルと、
を格納した書き換え可能な記憶手段と、
前記第1オブジェクトと前記第2オブジェクトのマッピングを実行するマッピング実行手段とを備え、
前記マッピング実行手段は、
前記第1オブジェクトと前記第2オブジェクトのマッピングを行う際には、
前記属性マッピングテーブルを参照して、マッピング対象オブジェクトのインスタンスが備える属性同士を対応付けるとともに、
前記機能マッピングテーブルを参照して、当該各属性に対して実行する機能を対応付ける
ことを特徴とするゲートウェイ装置。
【請求項6】
前記属性マッピングテーブルは、以下の各列を備えたことを特徴とする請求項5に記載のゲートウェイ装置。
(1)第1オブジェクトのインスタンスを特定するためのIDを格納する列
(2)(1)列の値で特定されるインスタンスが備える属性を特定するためのIDを格納する列
(3)(2)列の値で特定される属性の値を格納する列
(4)第2オブジェクトのインスタンスを特定するためのIDを格納する列
(5)(4)列の値で特定されるインスタンスが備える属性を特定するためのIDを格納する列
(6)(5)列の値で特定される属性の値を格納する列
【請求項7】
前記機能マッピングテーブルは、以下の各列を備えたことを特徴とする請求項5又は請求項6に記載のゲートウェイ装置。
(1)オブジェクトのインスタンスを特定するためのIDを格納する列
(2)(1)列の値で特定されるインスタンスが備える属性を特定するためのIDを格納する列
(3)(2)列の値で特定される属性に対して実行する機能を特定するためのIDを格納する列
【請求項8】
前記第1ネットワーク又は前記第2ネットワークから、前記記憶手段に格納するデータを受信する受信手段と、
前記受信手段が受け取った前記データを前記記憶手段に格納するとともに、当該データの内容に基づいて、前記属性マッピングテーブル又は前記機能マッピングテーブルを更新するマッピング設定手段と、
を備え、
前記マッピング実行手段は、
更新後の内容に基づいて、前記第1オブジェクトと前記第2オブジェクトのマッピングを再度行うことを特徴とする請求項5ないし請求項7のいずれかに記載のゲートウェイ装置。
【請求項9】
前記第1ネットワークに接続された1ないし複数の被管理機器と、
前記第2ネットワークに接続された機器管理装置と、
前記第1ネットワークと前記第2ネットワークの間に設けられた請求項5ないし請求項8のいずれかに記載のゲートウェイ装置と、
を有することを特徴とする機器管理システム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【公開番号】特開2008−158716(P2008−158716A)
【公開日】平成20年7月10日(2008.7.10)
【国際特許分類】
【出願番号】特願2006−345364(P2006−345364)
【出願日】平成18年12月22日(2006.12.22)
【出願人】(000006013)三菱電機株式会社 (33,312)
【Fターム(参考)】
【公開日】平成20年7月10日(2008.7.10)
【国際特許分類】
【出願日】平成18年12月22日(2006.12.22)
【出願人】(000006013)三菱電機株式会社 (33,312)
【Fターム(参考)】
[ Back to top ]