(57)【要約】  第１通信部４０は、第１の通信プロトコルにしたがって第１の機器と通信する。第２通信部４２は、第２の通信プロトコルにしたがって第２の機器と通信する。アクセス制御部３２は、第１の機器から送信された第２の機器への要求であって、第１の通信プロトコルに則した要求が第１通信部４０により受け付けられた場合、ルーティングテーブル５０を参照して、第２の機器が使用する通信プロトコルとして第２の通信プロトコルを識別する。アクセス制御部３２は、第２の通信プロトコルに対応する第２通信部４２に、第２の機器へ上記要求を送信する処理を委譲する。
2020170780.tif 000002
【特許請求の範囲】
【請求項１】
異なる複数種類の通信プロトコルに対応する複数の通信部と、
本装置に接続される複数の機器のそれぞれが使用する通信プロトコルを記憶する記憶部と、
制御部と、を備え、
前記複数の通信部は、
第１の通信プロトコルにしたがって第１の機器と通信する第１通信部と、
前記第１の通信プロトコルとは異なる第２の通信プロトコルにしたがって第２の機器と通信する第２通信部と、を含み、
前記制御部は、前記第１の機器から送信された前記第２の機器への要求であって、前記第１の通信プロトコルに則した要求が前記第１通信部により受け付けられた場合、前記記憶部を参照して、前記第２の機器が使用する通信プロトコルとして前記第２の通信プロトコルを識別し、前記複数の通信部のうち前記第２の通信プロトコルに対応する第２通信部に、前記第２の機器へ前記要求を送信する処理を委譲する、
ゲートウェイ装置。
【請求項２】
前記記憶部を第１記憶部と呼ぶとき、
本装置に接続される複数の機器に対応する複数のオブジェクトを記憶する第２記憶部をさらに備え、
前記第１通信部は、前記第１の機器から送信された前記第２の機器への要求を受け付けた場合に、前記第２の機器に対応するオブジェクトへの要求を前記制御部へ送信し、
前記制御部は、前記第２の機器に対応するオブジェクトが存在する場合、前記第２の機器へ前記要求を送信するための処理を継続する、
請求項１に記載のゲートウェイ装置。
【請求項３】
前記第２通信部は、前記要求への応答を前記第２の機器から受け付け、前記第２の機器に対応するオブジェクトを更新することの要求を前記制御部へ送信し、
前記制御部は、前記応答の内容をもとに、前記第２の機器に対応するオブジェクトを更新する、
請求項２に記載のゲートウェイ装置。
【請求項４】
前記第１の通信プロトコルを使用して通信可能な機器の情報として、前記第２の機器の情報を含む機器情報を前記第１の機器へ通知する通知部をさらに備える、
請求項１から３のいずれかに記載のゲートウェイ装置。
【請求項５】
前記第１の通信プロトコルは、エコーネットライトであり、
前記第２の通信プロトコルは、エコーネットライトとは異なるものである、
請求項１から４のいずれかに記載のゲートウェイ装置。
【請求項６】
ゲートウェイ装置が実行する方法であって、
前記ゲートウェイ装置は、
異なる複数種類の通信プロトコルに対応する複数の通信部と、
本装置に接続される複数の機器のそれぞれが使用する通信プロトコルを記憶する記憶部と、を備え、
前記複数の通信部は、
第１の通信プロトコルにしたがって第１の機器と通信する第１通信部と、
前記第１の通信プロトコルとは異なる第２の通信プロトコルにしたがって第２の機器と通信する第２通信部と、を含み、
前記第１の機器から送信された前記第２の機器への要求であって、前記第１の通信プロトコルに則した要求が前記第１通信部により受け付けられた場合、前記記憶部を参照して、前記第２の機器が使用する通信プロトコルとして前記第２の通信プロトコルを識別し、前記複数の通信部のうち前記第２の通信プロトコルに対応する第２通信部に、前記第２の機器へ前記要求を送信する処理を委譲する、
通信方法。
【請求項７】
ゲートウェイ装置に接続される複数の機器のそれぞれが使用する通信プロトコルを記憶する記憶部を備える前記ゲートウェイ装置により実行されるコンピュータプログラムであって、
異なる複数種類の通信プロトコルに対応する複数の通信モジュールと、
制御モジュールとを、備え、
前記複数の通信モジュールは、
第１の通信プロトコルにしたがって第１の機器と通信する第１通信モジュールと、
前記第１の通信プロトコルとは異なる第２の通信プロトコルにしたがって第２の機器と通信する第２通信モジュールと、を含み、
前記制御モジュールは、前記第１の機器から送信された前記第２の機器への要求であって、前記第１の通信プロトコルに則した要求が前記第１通信モジュールで受け付けられた場合、前記記憶部を参照して、前記第２の機器が使用する通信プロトコルとして前記第２の通信プロトコルを識別し、前記複数の通信モジュールのうち前記第２の通信プロトコルに対応する第２通信モジュールに、前記第２の機器へ前記要求を送信する処理を委譲する、
コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は通信技術に関し、特にゲートウェイ装置、通信制御方法およびコンピュータプログラムに関する。
【背景技術】
【０００２】
現在、住宅内において、エアコンや照明、太陽光発電装置等のネットワークへの接続、所謂「機器のＩｏＴ（Internet of Things）化」が普及しつつある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第４７４５３３７号
【発明の概要】
【発明が解決しようとする課題】
【０００４】
住宅等に設置された複数の機器のインタフェース（言い換えれば通信路）は１つではないことがあり、また、各機器が使用する通信プロトコルが異なることもある。このような状況下、住宅等に設置された複数の機器を効率的に連携させることが求められている。【０００５】
本開示はこうした状況に鑑みてなされたものであり、１つの目的は、異なるインタフェースに接続され、かつ、異なるプロトコルで動作する複数の機器の連携を好適に実現することにある。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明のある態様のゲートウェイ装置は、異なる複数種類の通信プロトコルに対応する複数の通信部と、本装置に接続される複数の機器のそれぞれが使用する通信プロトコルを記憶する記憶部と、制御部と、を備える。複数の通信部は、第１の通信プロトコルにしたがって第１の機器と通信する第１通信部と、第１の通信プロトコルとは異なる第２の通信プロトコルにしたがって第２の機器と通信する第２通信部と、を含む。制御部は、第１の機器から送信された第２の機器への要求であって、第１の通信プロトコルに則した要求が第１通信部により受け付けられた場合、記憶部を参照して、第２の機器が使用する通信プロトコルとして第２の通信プロトコルを識別し、複数の通信部のうち第２の通信プロトコルに対応する第２通信部に、第２の機器へ要求を送信する処理を委譲する。【０００７】
本発明の別の態様は、通信方法である。この方法は、ゲートウェイ装置が実行する方法であって、ゲートウェイ装置は、異なる複数種類の通信プロトコルに対応する複数の通信部と、本装置に接続される複数の機器のそれぞれが使用する通信プロトコルを記憶する記憶部と、を備える。複数の通信部は、第１の通信プロトコルにしたがって第１の機器と通信する第１通信部と、第１の通信プロトコルとは異なる第２の通信プロトコルにしたがって第２の機器と通信する第２通信部と、を含む。第１の機器から送信された第２の機器への要求であって、第１の通信プロトコルに則した要求が第１通信部により受け付けられた場合、記憶部を参照して、第２の機器が使用する通信プロトコルとして第２の通信プロトコルを識別し、複数の通信部のうち第２の通信プロトコルに対応する第２通信部に、第２の機器へ要求を送信する処理を委譲する。【０００８】
なお、以上の構成要素の任意の組合せ、本開示の表現を、システム、コンピュータプログラム、コンピュータプログラムを記録した記録媒体などの間で変換したものもまた、本開示の態様として有効である。
【発明の効果】
【０００９】
本開示によれば、異なるインタフェースに接続され、かつ、異なるプロトコルで動作する複数の機器の連携を好適に実現できる。
【図面の簡単な説明】
【００１０】
【図１】実施例の通信システムの構成を示す図である。
【図２】図１のゲートウェイの機能ブロックを示すブロック図である。
【図３】各通信部で実装される関数を示す図である。
【図４】ルーティングテーブルの例を示す図である。
【図５】通信システムの動作を示すシーケンス図である。
【発明を実施するための形態】
【００１１】
本開示における装置または方法の主体は、コンピュータを備えている。このコンピュータがプログラムを実行することによって、本開示における装置または方法の主体の機能が実現される。コンピュータは、プログラムにしたがって動作するプロセッサを主なハードウェア構成として備える。プロセッサは、プログラムを実行することによって機能を実現することができれば、その種類は問わない。プロセッサは、半導体集積回路（IC）、またはＬＳＩ（large scale integration）を含む１つまたは複数の電子回路で構成される。ここではＩＣやＬＳＩと呼んでいるが、集積の度合いによって呼び方が変わり、システムＬＳＩ、ＶＬＳＩ（very large scale integration）もしくはＵＳＬＩ（ultra large scale integration）と呼ばれるものであってもよい。ＬＳＩの製造後にプログラムされる、フィールド・プログラマブル・ゲート・アレイ（FPGA）、又はＬＳＩ内部の接合関係の再構成又はＬＳＩ内部の回路区画のセットアップができる再構成可能な論理デバイスも同じ目的で使うことができる。複数の電子回路は、１つのチップに集積されてもよいし、複数のチップに設けられてもよい。複数のチップは１つの装置に集約されていてもよいし、複数の装置に備えられていてもよい。プログラムは、コンピュータが読み取り可能なＲＯＭ、光ディスク、ハードディスクドライブなどの非一時的記録媒体に記録される。プログラムは、記録媒体に予め格納されていてもよいし、インターネット等を含む広域通信網を介して記録媒体に供給されてもよい。
【００１２】
図１は、実施例の通信システム１０の構成を示す。通信システム１０は、住宅等の建物内に構築されたものであり、複数のインタフェース（言い換えれば通信経路）と複数の機器を備える。複数の機器は、ネットワークに接続される所謂ＩｏＴ機器であり、例えば、エアコンや照明等の家電機器、スマートフォン等の情報機器、太陽光発電装置や蓄電装置等の住宅設備機器を含む。
【００１３】
インタフェース１は、ＩＰネットワークであり、通信プロトコルはエコーネットライト（「エコーネット」は登録商標）である。インタフェース１には、機器１１、機器１２、コントローラ２０、ルータ２２が接続される。コントローラ２０は、通信システム１０における各機器の動作を制御する装置である。例えば、コントローラ２０は、ＨＥＭＳ（Home Energy Management System）コントローラである。ルータ２２は、クラウド上のサーバ２４に接続される。
【００１４】
インタフェース２の通信プロトコルは、ＢＬＥ（Bluetooth Low Energy、「Bluetooth」は登録商標）である。インタフェース２には、機器１３と機器１４が接続される。インタフェース３の通信プロトコルは、シリアル通信である。インタフェース３には機器１５が接続される。インタフェース４の通信プロトコルは、特定小電力無線（９２０ＭＨｚ帯無線等）である。インタフェース４には、機器１６と機器１７が接続される。
【００１５】
図１に示すように、通信システム１０において複数の機器が接続されるインタフェースは１種類ではなく、また、各機器が使用する通信プロトコルも１種類ではない。異なるインタフェース上の、異なる通信プロトコルの機器を連携させるために、通信システム１０は、ゲートウェイ２６を備える。ゲートウェイ２６は、複数の機器間でのインタフェースの差異および通信プロトコルの差異を吸収し、それら複数の機器間で送受信されるデータを中継する通信装置である。
【００１６】
図２は、図１のゲートウェイ２６の機能ブロックを示すブロック図である。本開示のブロック図において示される各ブロックは、ハードウェア的には、コンピュータのＣＰＵ・メモリをはじめとする素子や機械装置で実現でき、ソフトウェア的にはコンピュータプログラム等によって実現されるが、ここでは、それらの連携によって実現される機能ブロックを描いている。これらの機能ブロックはハードウェア、ソフトウェアの組合せによっていろいろなかたちで実現できることは、当業者には理解されるところである。
【００１７】
ゲートウェイ２６は、通信部３０、アクセス制御部３２、オブジェクトデータベース３４を備える。図２に示す複数の機能ブロックの機能が実装された複数のモジュールを含むコンピュータプログラムが、記録媒体に格納され、その記録媒体を介してゲートウェイ２６のストレージにインストールされてもよい。または、上記のコンピュータプログラムが、通信網を介してゲートウェイ２６のストレージにインストールされてもよい。ゲートウェイ２６のＣＰＵは、上記のコンピュータプログラムをメインメモリに読み出して実行することにより、各機能ブロックの機能を発揮してもよい。
【００１８】
通信部３０は、外部装置と通信し、外部装置とデータを送受信する。通信部３０は、異なる複数種類の通信プロトコルに対応する第１通信部４０、第２通信部４２、第３通信部４４、第４通信部４６を含む。第１通信部４０、第２通信部４２、第３通信部４４、第４通信部４６を総称する場合、単に通信部と呼ぶ。
【００１９】
第１通信部４０は、インタフェース１に接続され、エコーネットライトのプロトコルに則して、コントローラ２０、ルータ２２、機器１１、機器１２と通信する。第２通信部４２は、インタフェース２に接続され、ＢＬＥのプロトコルに則して、機器１３、機器１４と通信する。第３通信部４４は、インタフェース３に接続され、シリアル通信のプロトコルに則して、機器１５と通信する。第４通信部４６は、インタフェース４に接続され、特小無線のプロトコルに則して、機器１６、機器１７と通信する。
【００２０】
第１通信部４０、第２通信部４２、第３通信部４４、第４通信部４６のそれぞれは、特定のインタフェースおよび特定の通信プロトコルに対応した処理が実装された複数の関数（ＡＰＩ（Application Programming Interface）とも言える）を備える。図３は、各通信部で実装される関数を示す。図３に示す関数のうち「init」「get」「set」は、外部機器から呼び出される関数であり、「tx」「rx」は、アクセス制御部３２から呼び出される関数である。
【００２１】
図２に戻り、オブジェクトデータベース３４は、ゲートウェイ２６に接続される複数の機器に対応する複数の仮想オブジェクトをメモリ上に保持する。例えば、オブジェクトデータベース３４は、機器１１に対応する仮想オブジェクト、機器１３に対応する仮想オブジェクト、機器１５に対応する仮想オブジェクトを記憶する。実施例の仮想オブジェクトは、対応する機器の識別情報（例えば後述のクラスＩＤおよびオブジェクトＩＤ）と、対応する機器の状態を示す情報を含む。
【００２２】
アクセス制御部３２は、複数の機器間でデータを中継するための処理を実行する。アクセス制御部３２は、ルーティングテーブル５０、通知部５１、検索部５２、特定部５４、転送部５６、更新部５８を含む。
【００２３】
ルーティングテーブル５０は、ゲートウェイ２６に接続される複数の機器のそれぞれについて、各機器が通信で使用する通信プロトコルに関する情報を記憶する。言い換えれば、ルーティングテーブル５０は、複数の機器と、各機器が接続されたインタフェースおよび各機器が使用する通信プロトコルとの対応関係を記憶する。変形例として、ルーティングテーブル５０は、複数の機器と、各機器につながる通信部（第１通信部４０、第２通信部４２・・・等）との対応関係を記憶してもよい。
【００２４】
図４は、ルーティングテーブルの例を示す。同図のルーティングテーブルは、機器１３に関するルーティングテーブルを示している。ルーティングテーブルの実オブジェクト列には、現実の機器１３に関するデータが格納される。実オブジェクト列のインタフェース／プロトコル種別には、機器１３が使用する通信プロコルの種別が記録される。実施例では、インタフェース／プロトコル種別は、複数の通信部のいずれかに予め対応付けられている。したがって、インタフェース／プロトコル種別は、機器１３が接続されたインタフェースに接続する通信部を特定可能な情報である。例えば、インタフェース／プロトコル種別がＢＬＥの場合、第２通信部４２が特定される。
【００２５】
実オブジェクト列のアドレス長とアドレスには、機器１３が接続されたインタフェース（すなわちインタフェース２）における機器１３のアドレスとその長さが記録される。実オブジェクト列のクラスＩＤとオブジェクトＩＤには、通信システム１０（実施例ではエコーネットライトのシステム内）において、機器１３を一意に識別するためのデータ、言い換えれば、機器１３を示すユニークなＩＤが記録される。
【００２６】
ルーティングテーブルの仮想オブジェクト列には、機器１３に対応する仮想オブジェクト（実施例ではエコーネットライトにおける仮想的なオブジェクト）に関するデータが格納される。仮想オブジェクト列のインタフェース／プロトコル種別には、エコーネットライトが記録される。仮想オブジェクト列のアドレス長とアドレスには、呼び出し側のインタフェース（実施例ではインタフェース１）における機器１３のアドレスとその長さが記録される。仮想オブジェクト列のクラスＩＤとオブジェクトＩＤには、通信システム１０（実施例ではエコーネットライトのシステム内）において、機器１３を一意に識別するためのデータ、言い換えれば、機器１３を示すユニークなＩＤが記録される。
【００２７】
図２の説明に戻る。以下、第１の通信プロトコルを使用する機器を第１の機器と呼び、第１の通信プロトコルとは異なる第２の通信プロトコルを使用する機器を第２の機器と呼ぶ。例えば、第１の通信プロトコルはエコーネットライトであってもよく、第１の機器はコントローラ２０であってもよい。また、第２の通信プロトコルはＢＬＥであってもよく、第２の機器は機器１３および機器１４であってもよい。
【００２８】
通知部５１は、予め定められた通知条件が満たされた場合に、第１の通信プロトコルを使用して通信可能な機器の情報として、第２の機器の情報を含む機器情報を第１の機器へ通知する。通知条件は、第１の機器が起動したことでもよく、また、第１の機器が起動したことを第１の機器から通知されたことでもよい。また、通知部５１は、先の通知から所定時間が経過したことを契機に、すなわち定期的に、最新の機器情報をゲートウェイ２６に接続された各機器へ通知してもよい。機器情報は、第２の機器に対応する仮想オブジェクトの情報を含んでもよく、例えば、１つ以上の第２の機器それぞれのクラスＩＤとオブジェクトＩＤの組を含んでもよい。
【００２９】
検索部５２は、第１の機器から送信された第２の機器への要求であって、第１の通信プロトコルに則した要求が受け付けられた場合、オブジェクトデータベース３４を検索して、要求先となる第２の機器が接続されているか否かを確認する。言い換えれば、検索部５２は、オブジェクトデータベース３４に、第２の機器に対応する仮想オブジェクトが存在するか否かを確認する。
【００３０】
特定部５４は、要求先となる第２の機器が接続されている場合、ルーティングテーブル５０を参照して、第２の機器が接続されているインタフェースおよび第２の機器が使用する通信プロトコルを特定する。例えば、特定部５４は、第２の機器に関するルーティングテーブル５０を参照して、実オブジェクト列のインタフェース／プロトコル種別を識別する。一部既述したが、特定部５４は、インタフェース／プロトコル種別と通信部との対応関係を保持する。特定部５４は、第２の機器が接続されているインタフェースおよび第２の機器が使用する通信プロトコルに対応する通信部（すなわち第１通信部４０〜第４通信部４６のいずれか）をさらに特定する。
【００３１】
転送部５６は、特定部５４により特定された、要求先となる第２の機器のインタフェースおよび通信プロトコルに対応する通信部へ、上記要求を送信する処理を委譲する。
【００３２】
更新部５８は、上記要求への応答が第２の機器から受け付けられた場合、その応答の内容をもとに、オブジェクトデータベース３４に記憶された仮想オブジェクトのうち第２の機器に対応する仮想オブジェクトを更新する。
【００３３】
以上の構成による通信システム１０の動作を説明する。
図５は、通信システム１０の動作を示すシーケンス図である。図５は、エコーネットライトを通信プロトコルとして使用するコントローラ２０から、ＢＬＥを通信プロトコルとして使用する機器１３へデータを書き込む場合の動作を示している。例えば、機器１３が照明機器の場合、以下の書き込み要求は、点灯を指示するデータであってもよい。
【００３４】
図５には不図示だが、ゲートウェイ２６の通知部５１は、コントローラ２０の起動が検知された場合等、所定条件が満たされた場合に、インタフェース１の通信プロトコルを使用して通信可能な機器を示す機器情報を、第１通信部４０を介してコントローラ２０へ通知する。機器情報は、例えば、エコーネットライトによる通信が可能な機器として、機器１３、機器１４、機器１５等の情報を含む。これにより、機器１３、機器１４、機器１５等に対して、エコーネットライト（言い換えればコントローラ２０が使用する通信プロトコル）によりアクセス可能であるとコントローラ２０に認識させることができる。
【００３５】
コントローラ２０は、機器１３への書き込み要求であって、エコーネットライトに則した書き込み要求をインタフェース１へ送信する（Ｓ１０）。エコーネットライトに則した書き込み要求は、エコーネットライトが定めるフォーマットおよび手順に準拠した書き込み要求である。例えば、エコーネットライトのオブジェクトとして、予め通知された機器１３のクラスＩＤとオブジェクトＩＤを指定した書き込み要求である。また、書き込み要求は、ゲートウェイ２６の第１通信部４０が公開する関数（図３）のうち「set」を呼び出し、書き込み先の機器１３（クラスＩＤおよびオブジェクトＩＤ）と書き込み内容とをパラメータとして指定するものであってもよい。
【００３６】
ゲートウェイ２６の第１通信部４０は、コントローラ２０から送信された書き込み要求を、インタフェース１を介して受信する（Ｓ１２）。第１通信部４０は、受信した書き込み要求をもとに、機器１３に対応する仮想オブジェクトへの書き込み要求をアクセス制御部３２へ送信する（Ｓ１４）。
【００３７】
アクセス制御部３２の検索部５２は、機器１３に対応する仮想オブジェクトへの書き込み要求を受け付けると、機器１３に対応する仮想オブジェクトがオブジェクトデータベース３４に記憶されているか否かを確認する（Ｓ１６）。検索部５２は、書き込み要求で指定されたクラスＩＤとオブジェクトＩＤの組を含む仮想オブジェクトがオブジェクトデータベース３４に記憶されていれば、書き込み先の機器に対応する仮想オブジェクトが記憶されていると判定し、言い換えれば、書き込み先の機器が接続されていると判定する。
【００３８】
機器１３に対応する仮想オブジェクトがオブジェクトデータベース３４に記憶されていれば、アクセス制御部３２は、機器１３へ書き込み要求を送信する処理を継続する。一方、機器１３に対応する仮想オブジェクトがオブジェクトデータベース３４に記憶されていなければ、アクセス制御部３２は、機器１３へ書き込み要求を送信する処理を中止する。
【００３９】
ここでは、機器１３に対応する仮想オブジェクトがオブジェクトデータベース３４に記憶されていたこととする。アクセス制御部３２の特定部５４は、ルーティングテーブル５０を参照して、機器１３の実際のインタフェースおよび通信プロトコルを特定し、そのインタフェースおよび通信プロトコルに対応する通信モジュール（この例では第２通信部４２）を特定する（Ｓ１８）。
【００４０】
具体的には、特定部５４は、ルーティングテーブル５０を参照して、機器１３に対応する仮想オブジェクトへの書き込み要求で指定されたクラスＩＤとオブジェクトＩＤの組み合わせを持つ実オブジェクトのデータを特定し、その実オブジェクトのデータに設定されたインタフェース／プロトコル種別である「ＢＬＥ」を特定してもよい。そして、特定部５４は、ＢＬＥに予め対応付けられた通信モジュールである第２通信部４２を特定してもよい。
【００４１】
アクセス制御部３２の転送部５６は、特定部５４により特定された第２通信部４２に、機器１３へ書き込み要求を送信する処理を委譲する（Ｓ２０）。具体的には、転送部５６は、第２通信部４２が公開する関数（図３）のうち「tx」を呼び出し、書き込み先の機器１３のアドレス（ルーティングテーブルに設定された機器１３の実アドレス）と、書き込み内容とをパラメータ（例えば引数）として指定してもよい。
【００４２】
第２通信部４２のtx関数は、ＢＬＥのプロトコル（フォーマットや手順等）に則してデータを送信するよう実装されている。第２通信部４２は、tx関数を実行し、ＢＬＥのプロトコルにしたがって、インタフェース２を介して、書き込み要求を機器１３へ送信する（Ｓ２２）。機器１３は、書き込み要求に応じて自機のデータを更新する（Ｓ２４）。例えば、機器１３が照明装置の場合、照明を点灯させる。機器１３は、書き込み完了を示すＢＬＥの応答電文をインタフェース２へ送信する（Ｓ２６）。
【００４３】
ゲートウェイ２６の第２通信部４２は、機器１３から送信されたＢＬＥの応答電文を、インタフェース２を介して受信する（Ｓ２８）。第２通信部４２は、受信した応答電文をもとに、機器１３に対応する仮想オブジェクトの更新要求（ここでは応答内容の書き込み要求）をアクセス制御部３２へ送信する（Ｓ３０）。アクセス制御部３２の更新部５８は、機器１３からの応答内容をもとに、オブジェクトデータベース３４に記憶された機器１３に対応する仮想オブジェクトのデータを更新する。例えば、機器１３からの応答内容が、機器１３の最新状態（例えば点灯中）を示す場合、更新部５８は、その最新状態を仮想オブジェクトに書き込む。
【００４４】
実施例のゲートウェイ２６によると、複数の機器間のインタフェース差異および通信プロトコル差異を吸収して、複数の機器の連携を容易にすることができる。例えば、図１に示したように、複数種類のプロトコルで動作する複数の機器が存在する場合にも、主たるインタフェース上で使用されるプロトコル（例えばエコーネットライト等）を用いて、上記複数の機器を制御可能になる。これにより、住宅棟に設置された機器の自動制御や、機器の状態の管理、機器の情報の見える化を促進することができる。
【００４５】
以上、本開示を実施例をもとに説明した。この実施例は例示であり、各構成要素あるいは各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本開示の範囲にあることは当業者に理解されるところである。
【００４６】
第１変形例を説明する。上記実施例では言及していないが、ゲートウェイ２６のオブジェクトデータベース３４に記憶される仮想オブジェクトのデータは、手動で設定されてもよく、自動で設定されてもよい。自動で設定される場合、ゲートウェイ２６は、オブジェクト設定部をさらに備えてもよい。オブジェクト設定部は、外部機器から送信された機器情報（インタフェース／プロトコル種別やアドレスを含む属性情報）が受け付けられた場合に、その機器情報をもとに、当該外部機器に対応する仮想オブジェクトのデータを設定し、オブジェクトデータベース３４に格納してもよい。その際、オブジェクト設定部は、当該外部機器に対してユニークなクラスＩＤとオブジェクトＩＤを付与してもよい。
【００４７】
同様に、ゲートウェイ２６のルーティングテーブル５０に記憶されるルーティングテーブルのデータは、手動で設定されてもよく、自動で設定されてもよい。自動で設定される場合、ゲートウェイ２６は、ルーティングテーブル設定部をさらに備えてもよい。ルーティングテーブル設定部は、外部機器から送信された機器情報（インタフェース／プロトコル種別やアドレスを含む属性情報）が受け付けられた場合、その機器情報をもとに、当該外部機器に関するルーティングテーブルのデータを設定し、ルーティングテーブル５０に格納してもよい。
【００４８】
ルーティングテーブル設定部は、外部機器から送信された機器情報が示すインタフェース／プロトコル種別やアドレス等に基づいて、ルーティングテーブルの実オブジェクト列の値を設定してもよい。その際、ルーティングテーブル設定部は、当該外部機器に対してユニークなクラスＩＤとオブジェクトＩＤを付与し、ルーティングテーブルに設定してもよい。また、ルーティングテーブル設定部は、外部機器に対する要求元の通信プロトコル（例えばエコーネットライト）に則した仮想オブジェクトの情報をルーティングテーブルの仮想オブジェクト列に設定してもよい。なお、仮想オブジェクトの自動設定と、ルーティングテーブルの自動設定は、一連の処理として実行されてもよい。
【００４９】
第２変形例を説明する。上記実施例では、インタフェース１（エコーネットライト）上のコントローラ２０から、インタフェース１以外に接続される機器を制御する例を示したが、インタフェース１に接続されるサーバ２４から、インタフェース１以外に接続される機器を制御する（例えばデータの取得または設定等）場合も、実施例と同様の処理シーケンスとなる。また、インタフェースＭ上の機器（Ｍは１以外）から、インタフェースＮ上の機器（Ｎ≠Ｍ）を制御する場合も、前者の機器を第１の機器、後者の機器を第２の機器として、実施例と同様の処理シーケンスとなる。
【００５０】
上述した実施例および変形例の任意の組み合わせもまた本開示の実施の形態として有用である。組み合わせによって生じる新たな実施の形態は、組み合わされる実施例および変形例それぞれの効果をあわせもつ。また、請求項に記載の各構成要件が果たすべき機能は、実施例および変形例において示された各構成要素の単体もしくはそれらの連携によって実現されることも当業者には理解されるところである。
【００５１】
実施例および変形例に記載の技術は、以下の項目によって特定されてもよい。
［項目１］
異なる複数種類の通信プロトコルに対応する複数の通信部（３０）と、
本装置に接続される複数の機器のそれぞれが使用する通信プロトコルを記憶する記憶部（５０）と、
制御部（３２）と、を備え、
前記複数の通信部（３０）は、
第１の通信プロトコルにしたがって第１の機器と通信する第１通信部（４０）と、
前記第１の通信プロトコルとは異なる第２の通信プロトコルにしたがって第２の機器と通信する第２通信部（４２）と、を含み、
前記制御部（３２）は、前記第１の機器から送信された前記第２の機器への要求であって、前記第１の通信プロトコルに則した要求が前記第１通信部（４０）により受け付けられた場合、前記記憶部（５０）を参照して、前記第２の機器が使用する通信プロトコルとして前記第２の通信プロトコルを識別し、前記複数の通信部（３０）のうち前記第２の通信プロトコルに対応する第２通信部（４２）に、前記第２の機器へ前記要求を送信する処理を委譲する、
ゲートウェイ装置（２６）。
このゲートウェイ装置によると、第１の機器と第２の機器との通信プロトコルの差異を吸収して、第１の機器と第２の機器とを連携させることができる。また、このゲートウェイ装置では、外部機器と実際に通信する処理を、個々の通信プロトコルに対応する各通信部が実行する。これにより、制御部には、個々の通信プロトコルに応じた処理の実装が不要になり、制御部の実装コストを低減することができる。
［項目２］
前記記憶部（５０）を第１記憶部（５０）と呼ぶとき、
本装置に接続される複数の機器に対応する複数のオブジェクトを記憶する第２記憶部（３４）をさらに備え、
前記第１通信部（４０）は、前記第１の機器から送信された前記第２の機器への要求を受け付けた場合に、前記第２の機器に対応するオブジェクトへの要求を前記制御部（３２）へ送信し、
前記制御部（３２）は、前記第２の機器に対応するオブジェクトが存在する場合、前記第２の機器へ前記要求を送信するための処理を継続する、
項目１に記載のゲートウェイ装置（２６）。
このゲートウェイ装置によると、通信部と制御部のインタフェースを統一でき、また、未接続の機器に対して要求を送信してしまうことを防止できる。
［項目３］
前記第２通信部（４２）は、前記要求への応答を前記第２の機器から受け付け、前記第２の機器に対応するオブジェクトを更新することの要求を前記制御部（３２）へ送信し、
前記制御部（３２）は、前記応答の内容をもとに、前記第２の機器に対応するオブジェクトを更新する、
項目２に記載のゲートウェイ装置（２６）。
このゲートウェイ装置によると、例えば、要求処理後の第２の機器の状態を、第２の機器に対応するオブジェクトに反映でき、要求処理後の第２の機器の状態に応じた中継処理を実行することができる。
［項目４］
前記第１の通信プロトコルを使用して通信可能な機器の情報として、前記第２の機器の情報を含む機器情報を前記第１の機器へ通知する通知部（５１）をさらに備える、
項目１から３のいずれかに記載のゲートウェイ装置（２６）。
このゲートウェイ装置によると、第２の機器が、第１の通信プロトコルを使用して通信可能な機器であることを第１の機器に認識させることができる。
［項目５］
前記第１の通信プロトコルは、エコーネットライトであり、
前記第２の通信プロトコルは、エコーネットライトとは異なるものである、
項目１から４のいずれかに記載のゲートウェイ装置（２６）。
このゲートウェイ装置によると、主たるインタフェース上で使用されるエコーネットライトを用いて、エコーネットライトとは異なる通信プロトコルを使用する機器を制御することができる。
［項目６］
ゲートウェイ装置（２６）が実行する方法であって、
前記ゲートウェイ装置（２６）は、
異なる複数種類の通信プロトコルに対応する複数の通信部（３０）と、
本装置に接続される複数の機器のそれぞれが使用する通信プロトコルを記憶する記憶部（５０）と、を備え、
前記複数の通信部（３０）は、
第１の通信プロトコルにしたがって第１の機器と通信する第１通信部（４０）と、
前記第１の通信プロトコルとは異なる第２の通信プロトコルにしたがって第２の機器と通信する第２通信部（４２）と、を含み、
前記第１の機器から送信された前記第２の機器への要求であって、前記第１の通信プロトコルに則した要求が前記第１通信部（４０）により受け付けられた場合、前記記憶部（５０）を参照して、前記第２の機器が使用する通信プロトコルとして前記第２の通信プロトコルを識別し、前記複数の通信部（３０）のうち前記第２の通信プロトコルに対応する第２通信部（４２）に、前記第２の機器へ前記要求を送信する処理を委譲する、
通信方法。
この通信方法によると、項目１と同様の効果を奏する。
［項目７］
ゲートウェイ装置（２６）に接続される複数の機器のそれぞれが使用する通信プロトコルを記憶する記憶部（５０）を備える前記ゲートウェイ装置（２６）により実行されるコンピュータプログラムであって、
異なる複数種類の通信プロトコルに対応する複数の通信モジュール（３０）と、
制御モジュール（３２）とを、備え、
前記複数の通信モジュール（３０）は、
第１の通信プロトコルにしたがって第１の機器と通信する第１通信モジュール（４０）と、
前記第１の通信プロトコルとは異なる第２の通信プロトコルにしたがって第２の機器と通信する第２通信モジュール（４２）と、を含み、
前記制御モジュール（３２）は、前記第１の機器から送信された前記第２の機器への要求であって、前記第１の通信プロトコルに則した要求が前記第１通信モジュール（４０）で受け付けられた場合、前記記憶部（５０）を参照して、前記第２の機器が使用する通信プロトコルとして前記第２の通信プロトコルを識別し、前記複数の通信モジュール（３０）のうち前記第２の通信プロトコルに対応する第２通信モジュール（４２）に、前記第２の機器へ前記要求を送信する処理を委譲する、
コンピュータプログラム。
このコンピュータプログラムによると、項目１と同様の効果を奏する。
【産業上の利用可能性】
【００５２】
本開示は、通信のゲートウェイ装置に適用することができる。
【符号の説明】
【００５３】
１０  通信システム、  ２６  ゲートウェイ、  ３０  通信部、  ３２  アクセス制御部、  ４０  第１通信部、  ４２  第２通信部、  ５１  通知部、  ５２  検索部、  ５４  特定部、  ５６  転送部、  ５８  更新部。
【図１】
2020170780.tif 000003
【図２】
2020170780.tif 000004
【図３】
2020170780.tif 000005
【図４】
2020170780.tif 000006
【図５】
2020170780.tif 000007
【国際調査報告】
2020170780.tif 000008
2020170780.tif 000009
2020170780.tif 000010
2020170780.tif 000011