(57)【要約】【課題】通信規格のバージョンアップに対応させる。【解決手段】通信アダプタは、一例として、電気機器と接続するための接続インターフェースと、所定の通信規格で通信を行うネットワークに接続するための通信インターフェースと、所定の通信規格で定められた任意のバージョンに対応した処理を行うバージョン依存プログラムと、バージョン依存プログラムを用いて設定された電子機器の属性情報と、を記憶する記憶媒体を着脱可能な接続部と、ネットワークに接続された通信装置から、通信インターフェースを介して電気機器の属性情報の取得要求を受信した場合に、接続部に接続された記憶媒体からバージョン依存プログラムを呼び出して属性情報を取得し、属性情報を、通信装置に送信する制御部と、を備える。【選択図】図２
2015179913.tif 000002
【特許請求の範囲】
【請求項１】
電気機器と接続するための接続インターフェースと、
所定の通信規格で通信を行うネットワークに接続するための通信インターフェースと、
前記所定の通信規格で定められた任意のバージョンに対応した処理を行うバージョン依存プログラムと、前記バージョン依存プログラムを用いて設定された前記電子機器の属性情報と、を記憶する記憶媒体を着脱可能な接続部と、
前記ネットワークに接続された通信装置から、前記通信インターフェースを介して前記電気機器の前記属性情報の取得要求を受信した場合に、前記接続部に接続された前記記憶媒体から前記バージョン依存プログラムを呼び出して前記属性情報を取得し、前記属性情報を、前記通信装置に送信する制御部と、
を備える通信アダプタ。
【請求項２】
前記制御部は、さらに、前記取得要求を受信した場合に、前記属性情報にアクセスできるように前記バージョン依存プログラムの動的リンクを行い、前記記憶媒体から前記属性情報を受け取った後、前記バージョン依存プログラムの動的リンクを解除する、
請求項１に記載の通信アダプタ。
【請求項３】
前記接続部は、前記電子機器の稼働中に、前記記憶媒体と交換可能に構成されている、
請求項１又は２に記載の通信アダプタ。
【請求項４】
前記所定の通信規格は、ＥＣＨＯＮＥＴ（登録商標）規格である、
請求項１乃至３のいずれか一つに記載の通信アダプタ。
【請求項５】
前記通信インターフェースが、前記電子機器としての燃料電池を、前記ネットワークに接続するためのものであり、
前記接続部が、前記燃料電池から取得した前記属性情報として、前記燃料電池の状況を計測した計測値を記憶した記憶媒体を接続可能である、
請求項１乃至４のいずれか一つに記載の通信アダプタ。
【請求項６】
通信アダプタと記憶媒体とで構成される通信システムであって、
前記記憶媒体は、所定の通信規格で定められた任意のバージョンに対応した処理を行うバージョン依存プログラムと、前記バージョン依存プログラムを用いて設定された前記電子機器の属性情報と、を記憶し、
前記通信アダプタは、
電気機器と接続するための接続インターフェースと、
所定の通信規格で通信を行うネットワークに接続するための通信インターフェースと、
前記記憶媒体を着脱可能な接続部と、
前記ネットワークに接続された通信装置から、前記通信インターフェースを介して前記電気機器の前記属性情報の取得要求を受信した場合に、前記接続部に接続された前記記憶媒体から前記バージョン依存プログラムを呼び出して前記属性情報を取得し、前記属性情報を、前記通信装置に送信する制御部と、
を備える、
通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、通信アダプタ、及び通信システムに関する。
【背景技術】
【０００２】
従来から、家庭内や電気機器を接続するネットワークとして、ＥＣＨＯＮＥＴ（登録商標）規格が提案されている。当該ＥＣＨＯＮＥＴ（登録商標）規格は、エアコンや燃料電池、各種センサなどをオブジェクト化し、当該オブジェクトにアクセスすることで、これらの機器の状態を取得できる。このＥＣＨＯＮＥＴ規格は、現在も規格の策定が進められているため、当該オブジェクトから参照可能なプロパティが変更されることもある。
【０００３】
従来技術においては、接続された電気機器（電子機器をネットワークに接続するための通信アダプタを含む）間でＥＣＨＯＮＥＴ規格のバージョンが異なる場合を考慮して、送信側と受信側とのオブジェクト構成情報が一致する場合に限り、通信可能とする技術が提案されている。オブジェクト構成情報が異なる場合には、いずれか一方の電子機器のプログラムを書き換えて、一致させる必要がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−１８４５５１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、電気機器や、電子機器をネットワークに接続するための通信アダプタにおいて、ＥＣＨＯＮＥＴ規格のバージョンアップのためにプログラムを書き換えるのが難しい場合が多い。
【課題を解決するための手段】
【０００６】
実施形態の通信アダプタは、一例として、電気機器と接続するための接続インターフェースと、所定の通信規格で通信を行うネットワークに接続するための通信インターフェースと、所定の通信規格で定められた任意のバージョンに対応した処理を行うバージョン依存プログラムと、バージョン依存プログラムを用いて設定された電子機器の属性情報と、を記憶する記憶媒体を着脱可能な接続部と、ネットワークに接続された通信装置から、通信インターフェースを介して電気機器の属性情報の取得要求を受信した場合に、接続部に接続された記憶媒体からバージョン依存プログラムを呼び出して属性情報を取得し、属性情報を、通信装置に送信する制御部と、を備える。よって、一例としては、記憶媒体の着脱で所定の通信規格のバージョンの更新ができるため、バージョンの更新が容易になるという効果を奏する。
【０００７】
また、実施形態の通信アダプタにおいて、一例として、制御部は、さらに、取得要求を受信した場合に、属性情報にアクセスできるようにバージョン依存プログラムの動的リンクを行い、記憶媒体から属性情報を受け取った後、バージョン依存プログラムの動的リンクを解除する。よって、一例としては、記憶媒体が常にリンクされている訳ではないため、記憶媒体の着脱が容易になり、バージョンの更新が容易になるという効果を奏する。
【０００８】
また、実施形態の通信アダプタにおいて、一例として、接続部は、電子機器の稼働中に、記憶媒体の交換を可能とする。よって、一例としては、電子機器を停止させることなく記憶媒体の交換ができるため、バージョンの更新が容易になるという効果を奏する。
【０００９】
また、実施形態の通信アダプタにおいて、一例として、通信インターフェースによりネットワークに接続するための所定の通信規格が、ＥＣＨＯＮＥＴ規格である。よって、一例としては、ＥＣＨＯＮＥＴ規格のバージョンが変更された場合に、電子機器を対応させるのが容易になるという効果を奏する。
【００１０】
また、実施形態の通信アダプタにおいて、一例として、通信インターフェースが、電子機器として燃料電池を、ネットワークに接続するためのものであり、接続部が、燃料電池から取得した属性情報として、燃料電池の状況を計測した計測値を記憶した記憶媒体を接続可能である。よって、一例としては、常に動作させておく必要がある燃料電池であっても、停止させることなく通信規格のバージョンに対応させることができるという効果を奏する。
【００１１】
また、実施形態の通信システムにおいて、一例として、通信アダプタと記憶媒体とで構成される通信システムであって、記憶媒体は、所定の通信規格で定められた任意のバージョンに対応した処理を行うバージョン依存プログラムと、バージョン依存プログラムを用いて設定された電子機器の属性情報と、を記憶し、通信アダプタは、電気機器と接続するための接続インターフェースと、所定の通信規格で通信を行うネットワークに接続するための通信インターフェースと、記憶媒体を着脱可能な接続部と、ネットワークに接続された通信装置から、通信インターフェースを介して電気機器の属性情報の取得要求を受信した場合に、接続部に接続された記憶媒体からバージョン依存プログラムを呼び出して属性情報を取得し、属性情報を、通信装置に送信する制御部と、を備える。よって、一例としては、記憶媒体の着脱で所定の通信規格のバージョンの更新ができるため、バージョンの更新が容易になるという効果を奏する。
【図面の簡単な説明】
【００１２】
【図１】図１は、実施形態のネットワーク構成例を示した図である。
【図２】図２は、実施形態の通信アダプタのプログラム構成例を示した図である。
【図３】図３は、実施形態の燃料電池の機器オブジェクトが保持するプロパティ一覧を例示した図である。
【図４】図４は、実施形態のネットワークに接続されている蓄電池の機器オブジェクトが保持するプロパティ一覧を例示した図である。
【図５】図５は、実施形態のネットワークに接続されている太陽光発電の機器オブジェクトが保持するプロパティ一覧を例示した図である。
【図６】図６は、実施形態の通信アダプタにおけるプロパティの送信処理の手順を示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下の実施形態では、燃料電池をネットワークに接続するための通信アダプタの例について説明する。
【００１４】
図１は、本実施形態のネットワーク構成例を示した図である。図１に示されるように、本実施形態では、燃料電池１５０を、ＥＣＨＯＮＥＴ（登録商標）規格のネットワーク１８０に接続するために、通信アダプタ１００が設けられた例とする。そして、通信アダプタ１００と、情報処理装置１６０と、の間では、ＥＣＨＯＮＥＴ規格のネットワーク１８０を介して、情報の送受信を可能としている。
【００１５】
本実施形態の燃料電池１５０は、現在の状況を表すデータを出力するが、ＥＣＨＯＮＥＴ規格に対応していない例とする。そして、通信アダプタ１００は、燃料電池１５０と接続可能なアダプタであって、ＥＣＨＯＮＥＴ規格に対応しているものとする。通信アダプタ１００が、燃料電池１５０から出力された当該燃料電池１５０の状況を表すデータを取得し、管理する。そして、通信アダプタ１００は、他の通信端末（例えば情報処理装置１６０）に対して、燃料電池１５０に関する情報を、ＥＣＨＯＮＥＴ規格のネットワーク１８０を介して提供できる。
【００１６】
なお、本実施形態は、燃料電池１５０をＥＣＨＯＮＥＴ規格のネットワークに接続するための通信アダプタ１００の場合について説明するが、通信アダプタの接続対象を燃料電池に制限するものではなく、例えば各種センサ類や、ＥＣＨＯＮＥＴ規格に非対応の電気機器（例えば、エアコン、照明、給湯器、太陽光発電システム、蓄電池、スマート電力量計）でもよい。つまり、通信アダプタを用いることで、ＥＣＨＯＮＥＴ規格に非対応の電気機器を、ＥＣＨＯＮＥＴ規格のネットワークに接続し、ＥＣＨＯＮＥＴ規格に基づいた情報の交換を実現できる。
【００１７】
これにより、燃料電池１５０がＥＣＨＯＮＥＴ規格に対応していなくとも、燃料電池１５０の状況を、ＥＣＨＯＮＥＴ規格に対応した通信装置（例えば情報処理装置１６０）から把握できる。
【００１８】
ところで、ＥＣＨＯＮＥＴ規格は、現在規格作成の過渡期であるため、バージョンアップが頻繁に行われる。新しいバージョンアップに対応するためには、ＥＣＨＯＮＥＴ規格に対応した電気機器や通信アダプタのプログラムと機器オブジェクトとを更新する必要がある。なお、機器オブジェクトとは、ＥＣＨＯＮＥＴ規格のネットワークに接続されている電子機器の様々な属性情報（以下、プロパティとも称す）を保持するオブジェクトとする。
【００１９】
また、バージョンアップでは、機器オブジェクトのプロパティの追加や統廃合等が行われる場合がある。ところで、ＰＣなどの通信装置から、ＥＣＨＮＥＴ規格のネットワークに接続されている電気機器の状況を取得した場合、当該状況を表すプロパティを指定して、当該プロパティの送受信が行われる。このため、送信側と、受信側と、の間で機器オブジェクトが保持するプロパティが一致するように、ＥＣＨＯＮＥＴ規格のバージョンが同じであることが好ましい。
【００２０】
しかしながら、ＥＣＨＯＮＥＴ規格でネットワークに接続する電気機器は、例えば燃料電池１５０のように頻繁に買い換えないものも多いため、接続する電子機器の間でＥＣＨＯＮＥＴ規格のバージョンが異なるという状況が生じる可能性がある。
【００２１】
このように、通信アダプタを生産・販売した後に新しいバージョンに対応したい、さらには、別の機器に接続する通信アダプタとして使用したいという要望が存在する。従来は、通信アダプタのプログラムの更新をすることでこれら要望に対応可能であった。
【００２２】
また、近年インターネットを介して、テレビなどのファームウェア等の更新する技術があるが、ＥＣＨＯＮＥＴ規格は、電気機器の操作や状況を認識するための規格であって、このような更新は考慮されていない。さらには、燃料電池１５０のように、家の外に置かれる電気機器も存在する。これら電気機器は、ＥＣＨＯＮＥＴ規格のネットワークと接続できるものの、インターネットには接続しない場合も多く、インターネットを介した自動的なバージョンアップは難しい。
【００２３】
さらには、常に動作している電子機器については、常に監視を続けたいため、当該電気機器（例えば、燃料電池１５０）用の通信アダプタを、ＥＣＨＯＮＥＴ規格のバージョンアップのために停止させるのは好ましくない。そこで、本実施形態では、停止せずとも、容易にＥＣＨＯＮＥＴ規格をバージョンアップできる通信アダプタ１００を備えることとした。
【００２４】
通信アダプタ１００は、接続Ｉ／Ｆ１０１と、制御部１０２と、記憶媒体用インターフェース部１０３と、通信Ｉ／Ｆ１０４と、を備えている。
【００２５】
接続Ｉ／Ｆ１０１は、燃料電池１５０と接続するためのインターフェースとする。通信規格は、接続対象である燃料電池１５０と通信可能なものであればよい。
【００２６】
通信Ｉ／Ｆ１０４は、ＥＣＨＯＮＥＴ規格で通信を行うネットワークに接続するためのインターフェースとする。
【００２７】
制御部１０２は、（図示しない）ＣＰＵが、図示しない内蔵用メモリ内部の各種プログラムを実行することで実現される構成であって、少なくとも通信処理部１２１を備えている。また、制御部１０２は、通信アダプタ１００の起動時に各種プログラムを実行することで、通信アダプタ１００全体を制御できる。
【００２８】
通信処理部１２１は、接続Ｉ／Ｆ１０１を介して接続された燃料電池１５０との間で通信処理を行うとともに、ネットワーク１８０を介して接続された通信装置（例えば、情報処理装置１６０）との間で通信処理を行う。
【００２９】
通信処理部１２１は、燃料電池１５０と通信処理を行う際に、燃料電池１５０が認識可能な通信規格を用いた通信処理を行う。また、通信処理部１２１は、ネットワーク１８０を介して接続された通信装置（例えば、情報処理装置１６０）と通信処理を行う際に、ＥＣＨＯＮＥＴ規格に基づいた通信処理を行う。
【００３０】
本実施形態の制御部１０２は、通信処理などのＥＣＨＯＮＥＴ規格のバージョンに依存しない処理を行い、バージョンに依存する処理については、外部記憶媒体１０５にアクセスして行う。
【００３１】
記憶媒体用インターフェース部１０３は、外部記憶媒体１０５を着脱可能なインターフェースであって、外部記憶媒体１０５が接続された際には外部記憶媒体１０５との間でデータの送受信を可能とするインターフェースとする。
【００３２】
外部記憶媒体１０５は、機器オブジェクト記憶領域１１１と、規格バージョン依存部１１２と、インターフェース部１１３と、を記憶する。本実施形態は、外部記憶媒体１０５として、ＳＤカードを用いることが考えられるが、ＳＤカードに制限するものではなく、例えば、ＵＳＢメモリなど、着脱可能な記憶媒体であればよい。
【００３３】
また、外部記憶媒体１０５は、燃料電池１５０に関して、ＥＣＨＯＮＥＴ規格の任意のバージョンに依存する処理を行うために必要なプログラムと、機器オブジェクトと、が格納されている。本実施形態では、ＥＣＨＯＮＥＴ規格の所定のバージョンに依存する処理を行うために必要なプログラム（ライブラリ）として、規格バージョン依存部１１２を備えている。さらに、当該任意のバージョンに対応している機器オブジェクトを、機器オブジェクト記憶領域１１１に格納可能とする。
【００３４】
つまり、本実施形態の通信アダプタ１００では、ＥＣＨＯＮＥＴ規格のバージョンに依存する処理を外部記憶媒体１０５内で行うこととした。そして、通信アダプタ１００の制御部１０２には、バージョンに依存する構成を含んでいないため、ＥＣＨＯＮＥＴ規格でバージョン更新を行う際、外部記憶媒体１０５を交換することで実現できる。
【００３５】
インターフェース部１１３は、制御部１０２から、記憶媒体用インターフェース部１０３を介してアクセスする際のアクセス形式を定義したインターフェース部とする。アクセス形式としては、例えば、機器オブジェクトが保持するプロパティに対する、設定・操作（SET）、取得(GET)、及び通知(ANNOUNCE)が考えられる。
【００３６】
規格バージョン依存部１１２は、外部記憶媒体１０５において設定されているＥＣＨＯＮＥＴ規格のバージョンに依存する処理を行うための関数で構成されたライブラリとする。例えば、規格バージョン依存部１１２は、制御部１０２からの要求に応じて、当該バージョンに対応した機器オブジェクトに保持されている各種プロパティに対する設定・操作（SET）、取得(GET)、及び通知(ANNOUNCE)を行うための関数を保持している。
【００３７】
機器オブジェクト記憶領域１１１は、機器の現在の状況等を有する機器オブジェクトが格納されている。格納対象となる機器オブジェクトは、燃料電池１５０のみではなく、燃料電池１５０に関連する電気機器も含まれている。
【００３８】
図２は、本実施形態の通信アダプタ１００のプログラム構成例を示した図である。図２に示されるように、通信アダプタ１００は、制御部１０２内に、ＯＳ２１１と、共通処理部２１２と、を備えた上で、外部記憶媒体１０５にインターフェース部１１３と、規格バージョン依存部１１２と、を備えた構成とする。
【００３９】
このように、本実施形態のプログラム構成として、ＥＣＨＯＮＥＴ規格のバージョンに依存しない構成（通信処理部１２１、及び共通処理部２１２）を通信アダプタ１００の内部メモリに格納し、バージョンに依存する構成（規格バージョン依存部１１２）を外部記憶媒体１０５に格納することとした。そして、インターフェース部１１３が、規格バージョンにアクセスするためのアクセス形式を定義しておく。これにより、共通処理部２１２が当該アクセス形式に従った要求を行うことで、規格バージョン依存部１１２が、当該要求に応じた処理を行う。
【００４０】
ＯＳ２１１は、通信アダプタ１００の全体を制御するためにインストールされたオペレーティングシステムとする。本実施形態のＯＳ２１１としては、動的リンクを利用可能なオペレーションシステム（例えば、ＬＩＮＵＸ（登録商標））を用いる。
【００４１】
共通処理部２１２は、ＥＣＨＯＮＥＴ規格に対応する処理のうち、バージョンに依存しない処理を実行する。例えば、共通処理部２１２は、燃料電池１５０から現在の状況を表すデータを受信した場合に、外部記憶媒体１０５から規格バージョン依存部１１２を呼び出す。そして、規格バージョン依存部１１２は、燃料電池１５０の現在の状況を、自機器オブジェクト２２１のプロパティとして設定(SET)する。
【００４２】
他の例としては、共通処理部２１２は、ネットワーク１８０に接続された通信装置（例えば情報処理装置１６０）から、燃料電池１５０のプロパティの取得要求を受信した場合に、外部記憶媒体１０５から規格バージョン依存部１１２を呼び出す。そして、共通処理部２１２は、規格バージョン依存部１１２から、自機器オブジェクト２２１のプロパティを取得(GET)し、通信処理部１２１を介して通信装置に当該プロパティを送信する。
【００４３】
ところで、本実施形態では、外部記憶媒体１０５が常にリンクされた状態にするのではなく、アクセスしなければいけない場合に動的リンクを行うこととした。
【００４４】
例えば、本実施形態の共通処理部２１２は、燃料電池１５０から現在の状況を表すデータを受信した場合や、プロパティの取得要求を受信した場合に、外部記憶媒体１０５の規格バージョン依存部１１２に動的リンクを行う。そして、共通処理部２１２は、燃料電池１５０から現在の状況を表すデータをプロパティとして設定した後や、プロパティを受け取った後に動的リンクを解除する。
【００４５】
本実施形態の共通処理部２１２は、外部記憶媒体１０５に動的リンクを行う際に、ＯＳ２１１が格納しているインターフェース名リストを取得する。当該インターフェース名リストには、インターフェース名と、当該インターフェースのパスと、が定義されている。そこで、共通処理部２１２は、外部記憶媒体１０５のパスを取得する。本実施形態では、インターフェースとして、外部記憶媒体１０５に格納されているライブラリ（例えば、規格バージョン依存部１１２）が設定されている。
【００４６】
そして、共通処理部２１２は、外部記憶媒体１０５に格納されているライブラリのパス（換言すれば、機器オブジェクト等にアクセスするための規格バージョン依存部１１２が格納されているパス）を引数として、ＯＳ２１１のdlopen関数を実行する。dlopen関数は、外部記憶媒体１０５を利用するための動的ライブラリ（規格バージョン依存部１１２）をロードし、動的ライブラリにアクセスするためのハンドルを返す。共通処理部２１２は、当該ハンドルから、外部記憶媒体１０５を利用するための動的ライブラリ（規格バージョン依存部１１２）を呼び出せる。
【００４７】
そして、本実施形態の共通処理部２１２は、当該動的ライブラリに含まれている関数のポインタを取得するため、ハンドルを引数として、ＯＳ２１１のdlsym関数を実行する。これにより、動的にロードされたライブラリに含まれている関数を利用できる。そして、本実施形態では、インターフェース部１１３で定められたアクセス形式に従って、動的にロードされたライブラリに含まれている関数を利用することで、機器オブジェクトのプロパティへのアクセス（設定、取得等）を実現できる。
【００４８】
そして、外部記憶媒体１０５に対するアクセスが終了した場合には、dlclose関数を実行して動的ライブラリをアンロードさせる。
【００４９】
本実施形態の通信アダプタ１００では、必要に応じて外部記憶媒体１０５に格納されているライブラリを動的にロード／アンロードを行うこととした。
【００５０】
本実施形態の通信アダプタ１００においては、外部記憶媒体１０５のライブラリ（規格バージョン依存部１１２）が必要に応じてロードされる。このため、通常は、外部記憶媒体１０５のライブラリ（規格バージョン依存部１１２）がロードされていない状況となる。つまり、本実施形態の通信アダプタ１００は、外部記憶媒体１０５のライブラリ（規格バージョン依存部１１２）が通常ロードされていないため、燃料電池１５０及び通信アダプタ１００のうち少なくとも１つ以上が稼働中であるか否かにかかわらず、外部記憶媒体１０５の交換可能となる。
【００５１】
例えば、情報処理装置１６０のＥＣＨＯＮＥＴ規格のバージョンがアップした際、通信アダプタ１００及び燃料電池１５０の稼働中に、ユーザが通信アダプタ１００に接続されている外部記憶媒体１０５を交換できる。これにより、通信アダプタ１００及び燃料電池１５０を停止させずに、通信アダプタ１００と情報処理装置１６０のＥＣＨＯＮＥＴ規格のバージョンと一致させることができる。
【００５２】
このように本実施形態では、燃料電池１５０などの停止させることが難しい電子機器の通信アダプタ１００であっても、ＥＣＨＯＮＥＴ規格のバージョンアップを容易に実現できる。
【００５３】
そして、機器オブジェクト記憶領域１１１は、自機器（燃料電池１５０）のプロパティ（属性情報）を保持する自機器オブジェクト２２１と、他機器のプロパティ（属性情報）を保持する他機器オブジェクト２２２と、を格納している。
【００５４】
図３は、本実施形態の燃料電池１５０の自機器オブジェクト２２１が保持するプロパティ一覧を例示した図である。図３に示される自機器オブジェクト２２１の例では、プロパティ名称と、プロパティコードと、値と、が対応づけて記憶されている。図３に示される例は、ＥＣＨＯＮＥＴ規格でクラスグループコード“0x02”、クラスコード“0x7C”の燃料電池クラスにおけるプロパティ一覧とする。そして、本実施形態の通信アダプタ１００では、情報処理装置１６０等から指定要求を受け取った際に、プロパティコードも受け取るので、どのプロパティの値を送信すればよいのか特定できる。
【００５５】
図３に示されるように、燃料電池１５０から取得したプロパティ（属性情報）の値として、燃料電池１５０の状況を計測した計測値が格納される。これらプロパティ（属性情報）の値は、燃料電池１５０から送信された計測値とする。
【００５６】
また、本実施形態の機器オブジェクト記憶領域１１１は、自機器オブジェクト２２１のみではなく、自機器（燃料電池１５０）に関連する他の電気機器のプロパティ（属性情報）を保持する他機器オブジェクト２２２も格納している。これは、燃料電池１５０が、関連する他の電気機器の現在の状況を認識したい場合がある。このような、燃料電池１５０からの関連する電気機器の現在の状況の取得要求に対応するために、本実施形態の通信アダプタ１００は、他機器オブジェクト２２２を格納している。
【００５７】
図４は、本実施形態のネットワーク１８０に接続されている蓄電池の機器オブジェクトが保持するプロパティ一覧を例示した図である。図４に示される機器オブジェクトの例では、プロパティ名称と、プロパティコードと、値と、が対応づけて記憶されている。図４に示される例は、ＥＣＨＯＮＥＴ規格でクラスグループコード“0x02”、クラスコード“0x7D”の蓄電池クラスにおけるプロパティ一覧とする。なお、各プロパティの値には、共通処理部２１２が通信処理部１２１を介して蓄電池から取得した値が格納される。
【００５８】
図５は、本実施形態のネットワーク１８０に接続されている太陽光発電の機器オブジェクトが保持するプロパティ一覧を例示した図である。図５に示される機器オブジェクトの例では、プロパティ名称と、プロパティコードと、値と、が対応づけて記憶されている。図５に示される例は、ＥＣＨＯＮＥＴ規格でクラスグループコード“0x02”、クラスコード“0x79”の太陽強発電クラスにおけるプロパティ一覧とする。なお、各プロパティの値には、共通処理部２１２が通信処理部１２１を介して蓄電池から取得した値が格納される。
【００５９】
図４、図５に示される蓄電池や太陽光発電に関するプロパティ（属性情報）の値は、規格バージョン依存部１１２が動的にロードされた際に、共通処理部２１２に対して、蓄電池や太陽光発電のプロパティの取得要求を行うことで、格納された値とする。これにより、燃料電池１５０は、電力を供給する他の設備の状況を把握できるために、供給すべき電力量を推定できる。
【００６０】
次に、本実施形態の通信アダプタ１００におけるプロパティの送信処理について説明する。図６は、本実施形態の通信アダプタ１００における上述した処理の手順を示すフローチャートである。
【００６１】
まず、通信処理部１２１が、通信Ｉ／Ｆ１０４を介して、情報処理装置１６０から、燃料電池１５０の自機器オブジェクト２２１に含まれているプロパティの取得要求を受信する（ステップＳ６０１）。
【００６２】
共通処理部２１２が、ＯＳ２１１から、インターフェース名リストを取得する（ステップＳ６０２）。そして、共通処理部２１２は、取得したインターフェース名リストから、外部記憶媒体１０５のライブラリ（規格バージョン依存部１１２）が格納されているパスを読み出す（ステップＳ６０３）。
【００６３】
そして、共通処理部２１２は、読み出したパスを引数にして、ＯＳ２１１上でdlopen関数を実行し、外部記憶媒体１０５に格納されているライブラリ（規格バージョン依存部１１２）を動的にロードする（ステップＳ６０４）。
【００６４】
共通処理部２１２が、dlopen関数の実行結果として、ハンドルを取得したか否かを判定する（ステップＳ６０５）。取得していないと判定した場合（ステップＳ６０５：Ｎｏ）、エラーが生じているものとして、ステップＳ６１１に遷移する。
【００６５】
一方、共通処理部２１２が、ハンドルを取得したと判定した場合（ステップＳ６０５：Ｙｅｓ）、ハンドルを引数としてdlsym関数を実行し、ロードしたライブラリ（規格バージョン依存部１１２）に含まれている（プロパティを取得するための）関数のポインタを取得する（ステップＳ６０６）。
【００６６】
さらに、共通処理部２１２は、dlerror関数を実行する（ステップＳ６０７）。そして、共通処理部２１２は、dlerror関数の実行結果から、今回の処理中にエラーが発生しているか否かを確認する（ステップＳ６０８）。エラーが発生していると判定した場合（ステップＳ６０８：Ｙｅｓ）、処理を終了して、ステップＳ６１１に遷移する。
【００６７】
共通処理部２１２は、エラーが発生していないと判定した場合（ステップＳ６０８：Ｎｏ）、ステップＳ６０６で取得したポインタを用いて、ロードされたライブラリ（規格バージョン依存部１１２）の関数を実行する（ステップＳ６０９）。図６に示す処理手順では、機器オブジェクトのプロパティの値を取得する関数を呼び出すものとする。その際、インターフェース部１１３で定められたアクセス形式に従うものとする。
【００６８】
共通処理部２１２は、実行結果として、機器オブジェクトのプロパティの値を取得する（ステップＳ６１０）。そして、共通処理部２１２は、dlclose関数を呼び出して、ステップＳ６０４でロードしたライブラリ（規格バージョン依存部１１２）をアンロードする（ステップＳ６１１）。
【００６９】
その後、共通処理部２１２は、通信処理部１２１を介して、機器オブジェクトに含まれているプロパティの取得結果を、情報処理装置１６０に送信する（ステップＳ６１２）。なお、適切に取得できた場合には、取得結果はプロパティの値であり、取得できなかった場合は、取得結果はエラーが生じた旨の通知となる。
【００７０】
本実施形態では、燃料電池の通信アダプタの例について説明したが、空調施設の通信アダプタに適用してもよい。これにより空調施設の通信アダプタと、通信装置と、の間でＥＣＨＯＮＥＴ規格のバージョンをほぼ同時に更新することが可能となる。これにより、バージョンの更新より設定可能な温度が広がる等のメリットを享受できる。
【００７１】
なお、本実施形態では、電気機器間を接続するための通信規格としてＥＣＨＯＮＥＴ規格を用いた場合について説明したが、ＥＣＨＯＮＥＴ規格を用いた場合に制限するものではなく、他の通信規格を用いた場合に適用してもよい。
【００７２】
本実施形態では、ＥＣＨＯＮＥＴ規格のバージョンに依存する構成を、外部記憶媒体１０５に記憶させることで、燃料電池１５０とともに通信アダプタ１００を販売する際に、在庫品に対して、最新のバージョンが格納された外部記憶媒体１０５に交換して、出荷することで、消費者に対して常に最新バージョンが格納された通信アダプタ１００を提供できる。
【００７３】
従来、最新バージョンに更新する際に、ＲＯＭ等に格納されたプログラムの更新制御が行われていた。この場合に、更新制御を行う他の通信装置を通信アダプタと接続してから、更新制御を行う必要があった。しかしながら、本実施形態では、外部記憶媒体の交換でよいため、プログラム書き換えの際の負担を軽減することができる。
【００７４】
本実施形態の通信アダプタ１００では、バージョンに依存しない構成と、バージョンに依存する構成と、を分けたことで、バージョンの更新があった際に、バージョンに依存する構成のみ開発すればよいため、開発負担を軽減することができる。
【００７５】
さらに、本実施形態の通信アダプタ１００では、バージョンに依存する構成を外部記憶媒体に格納することで、当該外部記憶媒体の差し替えでバージョンの更新を行うことができるため、更新負担を軽減できる。例えば、メーカー担当者が現地でプログラムの書換えを行う必要を抑止できる。また、外部記憶媒体へのプログラムのダウンロードは容易なため、さらなる更新負担を軽減できる。
【００７６】
また、本実施形態の通信アダプタ１００では、外部記憶媒体１０５のプログラムは、生産後や販売後にユーザの手でＰＣ等からダウンロードを行い差し替えることが可能となり、更新負担を軽減できる。
【００７７】
また、本実施形態の通信アダプタ１００では、動的リンクの機能を用いて、必要に応じてアクセスするようにして、常にリンクさせておく必要がないため、容易に外部記憶媒体１０５の交換が可能となり、更新負担を軽減できる。また、バージョンアップする際に、通信アダプタ１００や接続先の電気機器（燃料電池１５０）を停止させる必要がないため、交換時の負担を軽減できる。
【００７８】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００７９】
１００…通信アダプタ、１０１…接続Ｉ／Ｆ、１０２…制御部、１０３…記憶媒体用インターフェース部、１０４…通信Ｉ／Ｆ、１０５…外部記憶媒体、１１１…機器オブジェクト記憶領域、１１２…規格バージョン依存部、１１３…インターフェース部、１２１…通信処理部、１５０…燃料電池、１６０…情報処理装置、１８０…ネットワーク、２１１…ＯＳ、２１２…共通処理部、２２１…自機器オブジェクト、２２２…他機器オブジェクト
【図１】
2015179913.tif 000003
【図２】
2015179913.tif 000004
【図３】
2015179913.tif 000005
【図４】
2015179913.tif 000006
【図５】
2015179913.tif 000007
【図６】
2015179913.tif 000008