以下、本発明の実施の形態を図面に基づいて説明する。
(実施形態)
図1は、本実施形態の制御システムの構成を示す。
なお、本実施形態の制御装置は、機器のユニキャストアドレスを収集する方法に特徴があり、制御装置は、収集したユニキャストアドレスを用いて制御対象の機器へ信号(制御信号、要求等)をユニキャストすることが一般的な処理である。以下の説明では、制御装置はマルチキャストによる送信が不可能であると判定した場合にのみユニキャストを用いる形態を説明しているが、この判定処理は必須の構成ではなく、本発明における実施形態の一例である。
制御システムは、制御装置1、中継装置2(ルータ)、機器3、DHCPサーバ(Dynamic Host Configuration Protocol server)4を主構成として備えており、戸建住宅、集合住宅の各住戸、店舗、事務所、ビルのテナント等に設置される。制御装置1、中継装置2、機器3、DHCPサーバ4は、LAN(Local Area Network)で構成された宅内ネットワークを介して互いに通信可能に構成される。制御装置1、DHCPサーバ4は、中継装置2との間で通信経路91を介して接続し、機器3は、中継装置2との間で通信経路92または通信経路93を介して接続している。中継装置2は、制御装置1−機器3間を伝送される信号を中継する。
なお、通信経路91〜93は、有線の通信経路(例えば、イーサネット(登録商標))、無線の通信経路(例えば、無線LAN)のいずれでもよいが、図1においては、通信経路91〜93を有線の通信経路としている。
また、通信経路91に接続する制御装置1およびDHCPサーバ4は、ハブ等の集線装置を介して同一の通信経路91に接続している。通信経路92に接続する複数の機器3は、集線装置を介して同一の通信経路92に接続し、通信経路93に接続する複数の機器3は、集線装置を介して同一の通信経路93に接続している。
そして制御装置1は、機器3を制御対象としており、機器3宛の信号を通信経路91に送出し、中継装置2が信号を中継して通信経路92,93へ転送することによって、信号が機器3へ送信される。中継装置2による転送処理は、信号の宛先に応じて、通信経路92,93の両方、または通信経路92,93のいずれか一方に対して行われる。機器3は、受信した信号に基づいて動作する。機器3は、空調装置、照明装置、分電盤内の電力量計等であり、空調装置の冷暖房時の目標温度、照明装置の調光レベル、電力量計の検針データの送信動作等が制御される。また、機器3は、制御装置1宛の信号を通信経路92または93に送出し、中継装置2が信号を中継して通信経路91へ転送することによって、信号が制御装置1へ送信される。なお、機器3の種類は、上述に限定されるものではなく、制御装置1の制御対象となる機器3であれば、その種類は限定されない。
制御装置1は、通信部10、制御部14、機器情報記憶部16、推定部17、探索部18を備える。通信部10は、第1送信部11、第2送信部12、受信部13を備える。制御装置1は、さらに経路判定部15を備えることが好ましい。この制御装置1は、マイクロコンピュータ等で構成されたコンピュータを搭載しており、このコンピュータがプログラムを実行することによって、制御装置1の各機能が実現されている。すなわち、このプログラムは、コンピュータを制御装置1として機能させることを特徴とする。
この制御装置1は、例えばHEMS(Home Energy Management System)コントローラで構成されることが好ましい。この場合、制御装置1は、監視対象の電力データ(消費電力、発電電力、蓄電電力等)を取得し、これらの電力データを用いてHEMSを構築する。HEMSにおいて、制御装置1は、電力データを適宜の提示装置に提示することによって、電力消費量を見える化する機能を有する。またHEMSにおいて、制御装置1は、電力データに基づいて、省電力化を目的とした機器3の制御を行う機能を有する。なお、制御装置1は、HEMSコントローラに限定されるものではない。
あるいは、制御装置1は、機器3を制御する専用コントローラ、汎用のパーソナルコンピュータで構成されてもよい。
制御部14は、第1送信部11、第2送信部12、受信部13の各動作を制御する。第1送信部11、第2送信部12、受信部13は、中継装置2との間で通信経路91を介して通信を行う。
第1送信部11は、マルチキャスト信号を通信経路91に送出することで、マルチキャスト送信を行う。制御装置1、機器3は、同一のマルチキャストグループを構成している。同一のマルチキャストグループを構成している制御装置1、機器3等の端末は、マルチキャストグループに共通のIPアドレスであるマルチキャストアドレスを送信先に設定されたマルチキャスト信号を受信する。すなわち、マルチキャストアドレスが信号に付加されることによって、マルチキャストグループに対するマルチキャスト送信が行われる。
第2送信部12は、ユニキャスト信号を通信経路91に送出することで、ユニキャスト送信を行う。制御装置1、機器3は、個別のIPアドレスであるユニキャストアドレスが割り付けられている。そして、ユニキャストアドレスが信号に付加されることによって、1対1のユニキャスト通信が行われる。
通信経路91は、有線の通信経路であればイーサネット(登録商標)の規格に沿った通信が行われ、無線の通信経路であれば無線LANの規格に沿った通信が行われる。
機器情報記憶部16は、制御装置1の制御対象となる機器3のそれぞれのユニキャストアドレス、MACアドレス等の登録情報が格納される。図2は、機器情報記憶部16に格納されているデータテーブルであり、機器3のそれぞれに、ユニキャストアドレス、MACアドレスが互いに対応付けられている。なお、図2では、機器3を区別するために、機器3a,3b,3cの符号を付している。
次に、制御システムにおける一般的な通信シーケンスについて説明する。なお、通信経路91上の制御装置1、通信経路92上の機器3、通信経路93上の機器3は、同一のマルチキャストグループに属している。さらに、制御装置1および機器3は、例えばECHONET(Energy Conservation& Homecare Network)規格またはECHONET Lite規格に沿った仕様となっている。なお、本システムで用いられる通信規格は、上述の規格に限定されるものではなく、他の通信規格を用いてもよい。
図3は、機器3を登録する通信シーケンスを示す。
制御装置1の制御部14は、機器3の登録時に第1送信部11に指示して、マルチキャストアドレスを付加したGet要求Y1を通信経路91に送出させることによって、Get要求Y1をマルチキャスト送信する。
中継装置2は、Get要求Y1を受信すると、Get要求Y1に付加されたマルチキャストアドレスからマルチキャスト信号であると認識して、同一のマルチキャストグループに属する機器3が存在する通信経路92,93へGet要求Y1を転送する。
機器3は、Get要求Y1に付加されたマルチキャストアドレスが自己のマルチキャストアドレスと同じ(マルチキャストグループが同じ)であるので、Get要求Y1を受信する。Get要求Y1には、送信元の制御装置1のユニキャストアドレスが付加されており、機器3は、制御装置1のユニキャストアドレスを取得することができる。
Get要求Y1を受信した機器3は、制御装置1のユニキャストアドレスを付加したGet応答Y2を通信経路92,93に送出することによって、Get応答Y2を制御装置1へユニキャスト送信する。
中継装置2は、Get応答Y2を受信すると、Get応答Y2に付加されたユニキャストアドレスからユニキャスト信号であると認識して、制御装置1が存在する通信経路91へGet応答Y2を転送する。
制御装置1の受信部13は、Get応答Y2に付加されたユニキャストアドレスが自己のユニキャストアドレスと同じであるので、Get応答Y2を受信する。Get応答Y2には、送信元の機器3のユニキャストアドレス、MACアドレス等の登録情報が付加されており、制御部14は、応答した機器3の登録情報を機器情報記憶部16に格納する。したがって制御装置1は、Get要求Y1をマルチキャスト送信することで、システム内に存在する機器3の登録情報を取得することができる。以降、制御装置1は、機器情報記憶部16に登録情報が格納されている機器3(登録済の機器3)に対して制御信号を送信して、機器3の動作を制御することができる。
次に、図4は、制御装置1による機器3の制御を行う通信シーケンスを示す。
制御装置1の制御部14は、第2送信部12に指示して、通信経路92上に存在する制御対象の機器3のユニキャストアドレスを付加したSet要求Y3を通信経路91に送出させることによって、Set要求Y3をユニキャスト送信する。
中継装置2は、Set要求Y3を受信すると、Set要求Y3に付加されたユニキャストアドレスからユニキャスト信号であると認識して、送信先の機器3が存在する通信経路92へSet要求Y3を転送する。
機器3は、Set要求Y3に付加されたユニキャストアドレスが自己のユニキャストアドレスと同じであれば、Set要求Y3を受信する。Set要求Y3には制御装置1が指示した制御内容も付加されており、機器3は、指示された制御内容に基づいて動作する。
Set要求Y3を受信した機器3は、制御装置1のユニキャストアドレスを付加したSet応答Y4を通信経路92に送出することによって、Set応答Y4を制御装置1へユニキャスト送信する。
中継装置2は、Set応答Y4を受信すると、Set応答Y4に付加されたユニキャストアドレスからユニキャスト信号であると認識して、制御装置1が存在する通信経路91へSet応答Y4を転送する。
制御装置1の受信部13は、Set応答Y4に付加されたユニキャストアドレスが自己のユニキャストアドレスと同じであるので、Set応答Y4を受信する。Set応答Y4を受信した制御装置1は、Set要求Y3の送信が完了したことを認識できる。
さらに、機器3は、Set要求Y3によって指示された動作を完了した場合、マルチキャストアドレスを付加した完了通知Y5を通信経路92に送出することによって、完了通知Y5をマルチキャスト送信する。完了通知Y5には、送信元の機器3の動作後の状態を示す状態パラメータが付加されている。
中継装置2は、完了通知Y5を受信すると、完了通知Y5に付加されたマルチキャストアドレスからマルチキャスト信号であると認識して、同一のマルチキャストグループに属する制御装置1が存在する通信経路91へ完了通知Y5を転送する。このとき、中継装置2は、同一のマルチキャストグループに属する機器3が存在する通信経路93へも完了通知Y5を転送する。
制御装置1の受信部13は、完了通知Y5に付加されたマルチキャストアドレスが自己のマルチキャストアドレスと同じであるので、完了通知Y5を受信する。完了通知Y5を受信した制御装置1は、完了通知Y5の状態パラメータに基づいて、送信元の機器3の動作後の状態を把握することができる。
次に、図5は、制御装置1以外の操作機器(例えば、機器3が備える操作部、リモコン等)によって機器3が制御された場合の通信シーケンスを示す。
通信経路92上の機器3は、操作機器によって指示された動作を完了した場合、マルチキャストアドレスを付加した完了通知Y6を通信経路92に送出することによって、完了通知Y6をマルチキャスト送信する。完了通知Y6には、送信元の機器3の動作後の状態を示す状態パラメータが付加されている。
中継装置2は、完了通知Y6を受信すると、完了通知Y6に付加されたマルチキャストアドレスからマルチキャスト信号であると認識して、同一のマルチキャストグループに属する制御装置1が存在する通信経路91へ完了通知Y6を転送する。このとき、中継装置2は、同一のマルチキャストグループに属する機器3が存在する通信経路93へも完了通知Y6を転送する。
制御装置1の受信部13は、完了通知Y6に付加されたマルチキャストアドレスが自己のマルチキャストアドレスと同じであるので、完了通知Y6を受信する。完了通知Y6を受信した制御装置1は、完了通知Y6の状態パラメータに基づいて、送信元の機器3の動作後の状態を把握することができる。
したがって、機器3が制御装置1以外の操作機器によって制御された場合でも、制御装置1は機器3の動作後の状態を把握することができる。すなわち、制御装置1が把握している機器3の状態と、機器3が把握している自己の状態とに乖離がなくなる。
上述のように、制御装置1−機器3間の通信においてマルチキャストは重要な役割を担っている。制御装置1が送信したマルチキャスト信号を中継装置2が転送しなければ、制御装置1は、機器登録時に機器3からGet応答Y2が返信されないため、機器登録が不可能となる。また、機器3が送信したマルチキャスト信号を中継装置2が転送しなければ、制御装置1は、機器3の制御完了時に完了通知Y5,Y6を機器3から受信できないため、制御装置1が保有する情報と機器3が保有する情報との間に乖離が発生する可能性がある。
中継装置2は、ポート21〜23(ネットワーク・インタフェース)を備えている。そして、中継装置2は、通信経路91(制御装置1の通信経路)が通信接続するポート21、通信経路92,93(機器3の通信経路)が通信接続するポート22,23のそれぞれにおいて、マルチキャスト信号を転送する必要の有無をポート毎に判別している。すなわち、中継装置2は、転送する必要がないと判断したポートにはマルチキャスト信号を転送しない。
例えば中継装置2として、IGMP(Internet Group Management Protocol)に対応したマルチキャスト対応ルータがある。IGMPとは、IPネットワーク上でマルチキャスト通信を行うために、マルチキャストグループへの参加・離脱を管理するプロトコルであり、RFC(RFC1112/2236/3376)で規格化されている。そして図6に示すように、中継装置2は、管理対象のネットワークにマルチキャスト信号の受信を希望する端末(制御装置1、機器3)が存在するか否かを調査するために、定期的にクエリY11(IGMP Query)をマルチキャストで送信する。特定のマルチキャストグループ宛のマルチキャスト信号の受信を希望する端末は、クエリY11を受信すると受信を希望するマルチキャストグループのアドレス(マルチキャストアドレス)を、レポートY12(IGMP Report)によって中継装置2に通知する。IGMP規格に対応した中継装置2においては、送信したクエリY11に対するレポートY12の返信があった場合、このレポートY12の返信があったポートに対してマルチキャスト信号Y13の転送を行う。
また図7に示すように、中継装置2は、送信したクエリY11に対するレポートY12の返信がないポートに対してはマルチキャスト信号Y13の転送を行わない。
よって、マルチキャスト信号の受信を希望する制御装置1、機器3は、IGMPに対応する(レポートY12を返信する)必要がある。
また、中継装置2は、IGMPを応用して、レポートY12を盗聴(Snooping)することで、中継装置2に具備されたポートのそれぞれへのマルチキャスト信号の転送可否を判断するSnooping機能を実行することができる。Snooping機能はIGMPの規格外であり、必要なポートのみにマルチキャスト信号が転送されることで、通信トラフィックを抑制することを目的としている。この中継装置2は、ポート毎にマルチキャスト信号の転送可否を設定したSnoopingテーブルを保持している。
中継装置2は、さらにマルチキャスト信号の転送期間(マルチキャスト転送期間)を管理することができる。中継装置2は、タイマを用いたマルチキャスト転送期間の計時をポート毎に行い、転送期間を超過したポートがある場合、このポートは、Snoopingテーブルにおいて転送否の設定がなされる。中継装置2は、Snoopingテーブルにおいて転送否の設定がなされたポートには、マルチキャスト信号を転送しない。
そして、中継装置2は、レポートY12を受信したポートに対してはタイマの計時動作をリセットすることによって、マルチキャスト転送期間を延長することができる。この場合、制御装置1、機器3は、中継装置2からクエリY11を受信しなくとも、一定周期でレポートY12を送信する必要がある。すなわち、制御装置1、機器3は、一定周期でレポートY12を送信しなければ、自己が接続する中継装置2からマルチキャスト信号が転送されなくなる。
例えば、図8に示すように、中継装置2は、機器3からレポートY12を受信してからマルチキャスト転送期間T1(例えば、5分)の計時を開始する。中継装置2は、マルチキャスト転送期間T1において制御装置1からマルチキャスト信号Y13を受信すると、機器3が接続されたポートからマルチキャスト信号Y13を転送する。しかし、中継装置2は、マルチキャスト転送期間T1を超過すると、制御装置1からマルチキャスト信号Y13を受信しても、機器3が接続されたポートからマルチキャスト信号Y13を転送しない。
上述のように、中継装置2の機能、設定によっては、中継装置2がマルチキャスト信号の転送を行わず、制御装置1が送信したマルチキャスト信号が到達しない機器3が発生する場合がある。例えば、ある時点では制御装置1から送信されたマルチキャスト信号が機器3に到達していたが、マルチキャスト転送期間の終了後には、制御装置1から送信されたマルチキャスト信号が機器3に到達しなくなる場合も考えられる。そこで、本実施形態の制御装置1は、経路判定部15による図9の処理を定期的に行って、中継装置2によるマルチキャスト信号の転送状況(中継装置2によるマルチキャスト信号の転送に不具合があるか否か)を判定する。
まず、制御装置1の経路判定部15は、判定処理を開始すると第1送信部11に指示して、マルチキャストアドレスを付加した第1応答要求を通信経路91に送出させることによって、第1応答要求をマルチキャスト送信する(S1)。第1応答要求とは、応答信号の返信を要求するマルチキャスト信号であり、中継装置2を介して第1応答要求を受信した機器3は、応答信号を制御装置1へユニキャスト送信する。このとき、機器3は、自己の登録情報を送信元情報として応答信号に付加する。
経路判定部15は、受信部13が中継装置2を介して応答信号を受信した場合、この応答信号に付加されている送信元情報(送信元の登録情報)から、応答信号の送信元の機器3を識別できる。そして、経路判定部15は、第1応答要求をマルチキャスト送信してから所定時間が経過するまでに、全ての登録済の機器3から応答信号を受信したか否かを判定する(S2)。
経路判定部15は、全ての登録済の機器3から応答信号を受信した場合、中継装置2によるマルチキャスト信号の転送処理に不具合がないと判定する(S3)。具体的に、経路判定部15は、通信経路91上(ポート21)に送出されたマルチキャスト信号が通信経路92,93(ポート22、23)に転送されていると判定する。言い換えれば、経路判定部15は、通信経路92,93(ポート22、23)はマルチキャストによる送信が可能であると判定する。
また、経路判定部15は、機器情報記憶部16に登録情報を格納されていない機器3から、第1応答要求に対する応答信号を受信した場合、この応答信号に付加されている登録情報(新規の機器3の登録情報)を機器情報記憶部16に格納する。なお、この新規の機器3の登録情報は、上述のステップS2における登録済の機器3には含まれない。
一方、経路判定部15は、1台以上の登録済の機器3から応答信号を受信しなかった場合、第2送信部12に指示して、応答信号を返信していない(未応答の)機器3のユニキャストアドレスを付加した第2応答要求を通信経路91に送出させる(S4)。すなわち、第2送信部12は、未応答の機器3のそれぞれに対して第2応答要求をユニキャスト送信する。第2応答要求とは、応答信号の返信を要求するユニキャスト信号であり、中継装置2を介して第2応答要求を受信した機器3は、応答信号を制御装置1へユニキャスト送信する。このとき、機器3は、自己の登録情報を送信元情報として応答信号に付加する。
経路判定部15は、受信部13が中継装置2を介して機器3から第2応答要求に対する応答信号を受信した場合、この応答信号に付加されている送信元情報から、応答信号の送信元の機器3を識別できる。そして、経路判定部15は、未応答の機器3の少なくとも1台から応答信号を受信したか否かを判定する(S5)。経路判定部15は、未応答の機器3の全てが応答信号を返信しなかった場合、中継装置2における転送処理の不具合の有無を判定しない(S6)。この場合、マルチキャストされた第1応答要求に対して機器3が応答しない要因として、送信先の機器3の不具合(機器3の電源停止、故障、撤去等)等が考えられる。
一方、経路判定部15は、未応答の機器3の少なくとも1台でも応答信号を返信すれば、中継装置2によるマルチキャスト信号の転送処理に不具合があると判定する(S7)。具体的に転送処理の不具合とは、通信経路91上(ポート21)に送出されたマルチキャスト信号が通信経路92,93の両方(ポート22、23の両方)、または通信経路92,93のいずれか一方(ポート22、23のいずれか一方)に転送されていない状態である。言い換えれば、経路判定部15は、ステップS5において応答信号を返信した機器3が用いる通信経路(ポート)はマルチキャストによる送信が不可能であると判定することができる。
また、経路判定部15は、ステップS1,S2の処理を複数回繰り返して、マルチキャスト信号に対する応答確認を複数回行うことが好ましい。例えば、通信経路92,93が無線の通信経路である場合、電波状況によっては、マルチキャスト信号が受信できない機器3や、応答信号が中継装置2に到達しない機器3が存在する可能性がある。そこで、経路判定部15は、マルチキャスト信号に対する応答確認を複数回行うことで、応答確認の精度を向上させることができる。
したがって、制御装置1は、マルチキャスト信号が到達しない登録済の機器3があった場合に、このマルチキャストの不通状態が、中継装置2におけるマルチキャスト信号の転送不具合を要因とするのか否かがわかる。すなわち、制御装置1は、中継装置2におけるマルチキャスト信号の転送不具合の有無を判別することができる。
また、経路判定部15は、ステップS5において応答信号を返信した機器3のポート情報に基づいて、中継装置2がマルチキャスト信号の転送処理を行わない通信経路(ポート)を判別することができる。すなわち、経路判定部15は、ステップS5において応答信号を返信した機器3が接続している通信経路(中継装置2のポート)に、マルチキャスト不通の不具合が発生していると判定できる。言い換えれば、経路判定部15は、ステップS5において応答信号を返信した機器3が用いる通信経路(ポート)はマルチキャストによる送信が不可能であると判定することができる。
具体的に、通信経路92(ポート22)に接続している機器3からは、第1応答要求に対する応答信号の返信があり、通信経路93(ポート23)に接続している機器3からは、第1応答要求に対する応答信号の返信がないとする。そして、通信経路93(ポート23)に接続している機器3から第2応答要求に対する応答信号の返信があった場合、経路判定部15は、通信経路93(ポート23)にマルチキャスト不通の不具合が発生していると判定できる。
また、制御装置1の機器情報記憶部16は、複数の機器3のそれぞれの登録情報を格納している。そして、経路判定部15は、以下の判定処理を行うことが好ましい。
例えば、機器情報記憶部16に、機器3が接続されているポートの情報(ポート情報)も格納することによって、経路判定部15は、同一のポート(同一の通信経路)に接続している機器3を区別できる。図1の機器3は、ポート22,23(通信経路92,93)のいずれかに対応付けられる。このポート情報は、ユーザまたは施工者によって機器情報記憶部16に格納される。そして、経路判定部15は、ステップS2において、第1応答要求に対する応答結果をポート22,23毎に整理する。すなわち、経路判定部15は、同一ポートに接続する機器3に、応答済の機器3(第1の機器3)と未応答の機器3(第2の機器3)とが混在している場合、このポートにマルチキャスト信号の転送不具合は発生していないと判定する。ここで、中継装置2は、ポート毎にマルチキャストの転送可否を判断しており、無線通信では、通信帯域毎に一つのポートが用意され、有線通信では、ケーブルの挿入口毎に一つのポートが用意されている。
そして、経路判定部15は、同一ポートに接続する機器3に、応答済の機器3と未応答の機器3とが混在している場合、この未応答の機器3に対してはステップS4において第2応答要求をユニキャスト送信させない。すなわち、経路判定部15は、同一ポートに接続している全ての登録済の機器3が第1応答要求に対して未応答である場合にのみ、このポートに接続している登録済の機器3へ、第2応答要求をユニキャスト送信させる。この場合、経路判定部15は、第2応答要求の送信の有無(送信する/送信しない)を通信経路毎に判断している。
すなわち、経路判定部15は、第1応答要求に対する応答信号を返信しない機器3(第1の機器3)が用いる通信経路が、第1応答要求に対する応答信号を返信する機器3(第2の機器3)が用いる通信経路と同じであるとする。このとき、経路判定部15は、第1の機器3が用いる通信経路はマルチキャストによる送信が可能であると判定して、第2応答要求の送信の有無を通信経路毎に判断することが好ましい。
この場合、制御装置1は、無駄な第2応答要求のユニキャスト送信を行うことがないので、経路判定部15の判定処理における通信トラフィックを抑制することができる。
そして、機器情報記憶部16に格納されている登録情報には、図2に示すように、マルチキャストによる信号送信が可能か否かを示すマルチキャストフラグが設定されている。経路判定部15は、判定結果に基づいて、機器3毎にマルチキャストによる信号送信の可否をマルチキャストフラグに設定する(1:マルチキャスト可、0:マルチキャスト不可)。制御装置1では、機器情報記憶部16を参照して、マルチキャストによる信号送信が可能である通信経路(ポート)を用いる機器3と、マルチキャストによる信号送信が不可能である通信経路(ポート)を用いる機器3とを識別できる。
しかしながら、上述の経路判定部15による判定処理は、登録済の機器3のみを対象にしており、制御装置1は、機器情報記憶部16に登録情報が格納されていない機器3と通信を行うことができない。
そこで、経路判定部15が図9の処理を実行して、中継装置2によるマルチキャスト信号の転送処理に不具合ありと判定したとする。この場合、制御装置1は、機器情報記憶部16に登録情報が格納されておらず、且つマルチキャスト不可能である機器3の登録情報を収集するために、図10の探索処理を実行する。
図1の宅内ネットワークには、DHCPサーバ4が設置されている。DHCPサーバ4は、宅内ネットワーク上の端末にユニキャストアドレスを割り付ける機能を有しており、制御装置1、機器3のそれぞれのユニキャストアドレスは、DHCPサーバ4によって割り付けられる。
まず、推定部17は、宅内ネットワーク上にDHCPサーバ4が存在するか否かを判定する(S11)。この判定方法は、制御装置1に割り付けられたユニキャストアドレスの有無を用いる方法と、DHCPディスカバーコマンドを用いる方法とがある。
前者の方法では、推定部17は、制御装置1にユニキャストアドレスが割り付けられているか否かを判別する。そして、制御装置1にユニキャストアドレスが割り付けられている場合、推定部17は、宅内ネットワーク上にDHCPサーバ4が存在すると判定する。後者の方法では、推定部17は、DHCPディスカバーコマンドをブロードキャスト送信し、DHCPディスカバーコマンドに対する応答があれば、宅内ネットワーク上にDHCPサーバ4が存在すると判定する。
推定部17は、宅内ネットワーク上にDHCPサーバ4が存在すると判定した場合、制御装置1に割り付けられたユニキャストアドレスから、機器3に割り付けられたユニキャストアドレスを推定する(S12)。DHCPサーバ4は、宅内ネットワーク上の端末に割り付けるユニキャストアドレスの範囲(ユニキャストアドレスのリース範囲)が予め決まっており、このリース範囲内のユニキャストアドレスを昇順で順次割り付ける。DHCPサーバ4が中継装置2に格納されている場合、ユニキャストアドレスのリース範囲には、中継装置2のメーカ毎に傾向がある。ユニキャストアドレスのリース範囲は、例えば「192.168.11.1」〜「192.168.11.254」に設定されている。そして、推定部17は、制御装置1に割り付けられたユニキャストアドレスの前後を、機器3に割り付けられたユニキャストアドレスとして推定する。
例えば、制御装置1のユニキャストアドレスが「192.168.11.5」であるとする。この場合、推定部17は、「192.168.11.5」より前のユニキャストアドレス「192.168.11.1」〜「192.168.11.4」を機器3に割り付けられたユニキャストアドレスとして推定できる。さらに、推定部17は、「192.168.11.5」より後の10個のユニキャストアドレス「192.168.11.6」〜「192.168.11.15」を機器3に割り付けられたユニキャストアドレスとして推定できる。すなわち、推定部17は、制御装置1に割り付けられたユニキャストアドレスの前の全ユニキャストアドレス、制御装置1に割り付けられたユニキャストアドレスの後の10個のユニキャストアドレスを推定範囲とすることができる。なお、推定部17の推定範囲は、上述の例に限定されない。
次に探索部18は、第2送信部12に指示して、推定範囲内のユニキャストアドレスのそれぞれを付加した探索信号を通信経路91に送出させる(S13)。このとき、探索部18は、推定範囲内のユニキャストアドレスから、登録情報に含まれているユニキャストアドレスは除いて探索信号を送信させることが好ましい。この場合、探索部18は、不必要な探索信号を送信することがなく、探索信号による通信トラフィックを抑制できる。すなわち、第2送信部12は、推定範囲内のユニキャストアドレスのそれぞれ(但し、登録情報に含まれているユニキャストアドレスは除く)に対して探索信号をユニキャスト送信する。探索信号とは、応答信号の返信を要求する機器探索用のユニキャスト信号であり、中継装置2を介して探索信号を受信した機器3は、応答信号を制御装置1へユニキャスト送信する。このとき、機器3は、自己の登録情報を送信元情報として応答信号に付加する。
また、推定部17は、DHCPサーバ4に割り付けられたユニキャストアドレスから、機器3に割り付けられたユニキャストアドレスを推定することもできる。
例えば、DHCPサーバ4のユニキャストアドレスが「192.168.11.1」であるとする。この場合、推定部17は、「192.168.11.1」より後の10個のユニキャストアドレス「192.168.11.2」〜「192.168.11.11」を機器3に割り付けられたユニキャストアドレスとして推定できる。すなわち、推定部17は、DHCPサーバ4に割り付けられたユニキャストアドレスの後の10個のユニキャストアドレスを推定範囲とすることができる。なお、推定部17の推定範囲は、上述の例に限定されない。
また、DHCPサーバ4は、機器3にユニキャストアドレスを割り付ける場合、DHCP関連のパケット(DHCPパケット)を機器3との間で送受信する。DHCPパケットとは、DHCPサーバ4から送信される「DHCP Offer」、「DHCP ACK」、機器3から送信される「DHCP Request」等である。これらのDHCPパケットには、機器3に割り付けられるユニキャストアドレスが格納されているものがあるので、DHCPパケットを参照すれば、機器3に割り付けられるユニキャストアドレスを知ることができる。なお、通信経路91〜93が無線の通信経路であり、信号が暗号化されている環境下であっても、同じネットワーク内の端末は、ブロードキャストで送信されるDHCPパケットであれば復号して、盗聴することができる。
そこで、推定部17は、受信部13が受信したDHCPパケットを盗聴することで、DHCPサーバ4が機器3に割り付けたユニキャストアドレスの範囲を、上述の推定範囲よりさらに絞り込むことができる。この場合、制御装置1は、探索信号による通信トラフィックを抑制することができる。
そして、探索部18は、受信部13が探索信号に対する応答信号を機器3から受信した場合、この応答信号に付加されている登録情報(ユニキャストアドレス、MACアドレス等)を抽出する。探索部18は、抽出した登録情報のうち、機器情報記憶部16に格納されていない新規の登録情報を、機器情報記憶部16に新たに格納する(S14)。この新たに格納された登録情報は、マルチキャストによる信号送信が不可能である通信経路(ポート)を用いる新たな機器3の登録情報である。すなわち、探索部18によって登録された新たな機器3の登録情報は、登録情報のマルチキャストフラグが「0」に設定される。
推定部17が推定したユニキャストアドレスは、制御装置1−機器3間の通信規格とは異なる他の通信規格を用いる他の端末に割り付けられた可能性もあるが、この場合は他の端末から応答信号が返信されない。なお、探索部18は、探索信号の送信先のアドレスから、探索信号に対して応答した機器3のユニキャストアドレスを機器情報記憶部16に格納することもできる。
制御部14は、機器情報記憶部16を参照して、マルチキャストによる信号送信が可能である通信経路(ポート)を用いる機器3と、マルチキャストによる信号送信が不可能である通信経路(ポート)を用いる機器3とを識別できる。
そこで、制御部14は、以降の通信において、マルチキャストによる信号送信が可能である通信経路(ポート)を用いる機器3に対しては、マルチキャスト送信を行う。また制御部14は、以降の通信において、マルチキャストによる信号送信が不可能である通信経路(ポート)を用いる機器3に対しては、ユニキャスト送信を行う。
このように、制御装置1は、機器情報記憶部16と、通信部10と、推定部17と、探索部18とを備えることを特徴とする。機器情報記憶部16は、制御対象の機器3に個別に割り当てられたユニキャストアドレスを格納する。通信部10は、ネットワーク通信を行い、機器3との間で信号を授受する。推定部17は、機器3にユニキャストアドレスを割り当てるDHCPサーバ4が存在するか否かを判定する。そして推定部17は、DHCPサーバ4が存在すれば、DHCPサーバ4が機器3へ割り当てるユニキャストアドレスを制御装置1のユニキャストアドレスまたはDHCPサーバ4のユニキャストアドレスに基づいて推定する。探索部18は、推定部17が推定したユニキャストアドレスに対して応答信号の返信を要求するユニキャスト信号である探索信号を通信部10にユニキャストで送信させる。そして、探索部18は、機器3が探索信号に対する応答信号を返信する場合、この機器3のユニキャストアドレスを、返信された応答信号に基づいて取得して機器情報記憶部16に格納するアドレス取得処理を行う。
したがって、制御装置1は、未知の機器3のユニキャストアドレスを取得することができる。
さらに、機器3が用いる通信経路についてマルチキャストによる送信が可能であるか否かを判定する経路判定部15を備えることが好ましい。機器3は、一つのマルチキャストグループに属している。通信部10は、応答信号の返信を要求するマルチキャスト信号である第1応答要求をマルチキャストグループにマルチキャストで送信する。さらに通信部10は、応答信号の返信を要求するユニキャスト信号である第2応答要求を機器3にユニキャストで送信する。経路判定部15は、機器3が第1応答要求に対する応答信号を返信せず、第2応答要求に対する応答信号を返信する場合、この機器3が用いる通信経路はマルチキャストによる送信が不可能であると判定する。探索部18は、経路判定部15によってマルチキャストによる送信が不可能である通信経路があると判定された場合、アドレス取得処理を行う。
したがって、制御装置1は、マルチキャスト信号が到達しない登録済の機器3があった場合に、このマルチキャストの不通状態が、マルチキャスト信号の転送不具合を要因とするのか否かがわかる。すなわち、制御装置1は、マルチキャスト信号の転送不具合の有無を判別することができる。
また、制御装置1は、機器情報記憶部16に登録情報が格納されておらず、且つマルチキャスト不可能である機器3の登録情報を収集することができる。而して、制御装置1は、マルチキャストによる通信が不可能な未知の機器3のユニキャストアドレスを取得することができる。
さらに、通信部10は、機器3のうち、マルチキャストによる送信が可能である通信経路を用いる機器3に対して信号をマルチキャストで送信することが好ましい。さらに通信部10は、機器3のうち、マルチキャストによる送信が不可能である通信経路を用いる機器3に対して信号をユニキャストで送信することが好ましい。
したがって、制御装置1は、中継装置2によるマルチキャスト信号の転送処理に不具合があっても、機器3との間の通信をできるだけ効率よく行うことができる。
さらに、通信部10は、機器3との間で授受される信号を中継する中継装置2を介して機器3との間で通信を行うことが好ましい。
この場合、制御装置1は、中継装置2によるマルチキャスト信号の転送処理に不具合がある場合でも、マルチキャストによる通信が不可能な未知の機器3のユニキャストアドレスを取得することができる。
また、制御装置1は、機器情報記憶部16に登録情報が格納されていない場合、図11のフローチャートにしたがって中継装置2によるマルチキャスト信号の転送状況を判定することが好ましい。
まず、推定部17は、宅内ネットワーク上にDHCPサーバ4が存在するか否かを判定する(S21)。この判定方法は、制御装置1に割り付けられたユニキャストアドレスの有無を用いる方法と、DHCPディスカバーコマンドを用いる方法とがある。
宅内ネットワーク上にDHCPサーバ4が存在すると推定部17が判定した場合、経路判定部15は、第1送信部11に指示して、第1応答要求をマルチキャスト送信する(S22)。
経路判定部15は、受信部13が第1応答要求に対する応答信号を機器3から受信した場合、この応答信号に付加されている登録情報を機器情報記憶部16に格納する(S23)。
次に、推定部17は、制御装置1に割り付けられたユニキャストアドレスから、機器3に割り付けられたユニキャストアドレスを推定する(S24)。推定部17は、制御装置1に割り付けられたユニキャストアドレスの前後を、機器3に割り付けられたユニキャストアドレスとして推定する。
次に経路判定部15は、第2送信部12に指示して、推定範囲内のユニキャストアドレスのそれぞれを付加した第2応答要求を通信経路91に送出させる(S25)。すなわち、第2送信部12は、推定範囲内のユニキャストアドレスのそれぞれに対して第2応答要求をユニキャスト送信する。
経路判定部15は、受信部13が探索信号に対する第2応答要求を機器3から受信した場合、この応答信号に付加されている登録情報を機器情報記憶部16に格納する(S26)。推定部17が推定したユニキャストアドレスは、制御装置1−機器3間の通信規格とは異なる他の通信規格を用いる他の端末に割り付けられた可能性もあるが、この場合は他の端末から応答信号が返信されない。
そして、経路判定部15は、機器情報記憶部16を参照して、マルチキャストされた第1応答要求に応答せず、ユニキャストされた第2応答要求のみに応答した機器3があるか否かを判定する(S27)。経路判定部15は、第2応答要求のみに応答した機器3がなければ、中継装置2における転送処理の不具合の有無を判定しない(S28)。この場合、応答要求に対して応答しない機器3があれば、この機器3の不具合(機器3の電源停止、故障、撤去等)等が応答しない要因として考えられる。
一方、第2応答要求のみに応答した機器3があれば、経路判定部15は、中継装置2によるマルチキャスト信号の転送処理に不具合があると判定する(S29)。具体的に転送処理の不具合とは、通信経路91上(ポート21)に送出されたマルチキャスト信号が通信経路92,93の両方(ポート22、23の両方)、または通信経路92,93のいずれか一方(ポート22、23のいずれか一方)に転送されていない状態である。言い換えれば、経路判定部15は、第2応答要求に対する応答信号のみを返信した機器3が用いる通信経路(ポート)はマルチキャストによる送信が不可能であると判定することができる。
また、推定部17は、DHCPサーバ4に割り付けられたユニキャストアドレスから、機器3に割り付けられたユニキャストアドレスを推定することもできる。
したがって、経路判定部15は、機器情報記憶部16に機器3のユニキャストアドレスが格納されていない場合でも、中継装置2におけるマルチキャスト信号の転送不具合の有無を判別することができる。
そして、制御部14は、経路判定部15の判定結果、探索部18の探索結果に基づいて、機器情報記憶部16の登録情報を追加、更新する。制御部14は、機器情報記憶部16の登録情報に基づいて、マルチキャストによる信号送信が可能である通信経路(ポート)を用いる機器3と、マルチキャストによる信号送信が不可能である通信経路(ポート)を用いる機器3とを識別できる。そこで、制御部14は、以降の通信において、マルチキャストによる信号送信が可能である通信経路(ポート)を用いる機器3に対しては、信号をマルチキャストで送信させる。また制御部14は、以降の通信において、マルチキャストによる信号送信が不可能である通信経路(ポート)を用いる機器3に対しては、信号をユニキャストで送信させる。
なお、DHCPサーバ4の設置箇所は、通信経路91上に限定されるものではなく、他の通信経路、他のネットワーク上に設置されてもよい。あるいは、DHCPサーバ4は、中継装置2内に実装されることも可能である。すなわち、DHCPサーバ4は、制御装置1、機器3にユニキャストアドレスを割り付けることができれば、その設置箇所は限定されない。
また、コンピュータを制御装置1として機能させるプログラムも、制御装置1と同様の効果を奏し得る。プログラムの提供形態としては、コンピュータに読み取り可能なROM(Read Only Memory)、光ディスク等の記録媒体に予め格納されている形態、インターネット等を含む広域通信網を介して記録媒体に供給される形態等がある。
なお、上述の実施の形態は本発明の一例である。このため、本発明は、上述の実施形態に限定されることはなく、この実施の形態以外であっても、本発明に係る技術的思想を逸脱しない範囲であれば、設計等に応じて種々の変更が可能であることは勿論である。