(57)【要約】【課題】安価な構成で、システム内の全てのアドレスの重複を検出できるようにする。【解決手段】ルータ２０からコーディネータ１０へ、エンドデバイス３０からコーディネータ１０へ、自己に割り当てられたアドレスを自己の識別情報を付加して定期的に送信する。コーディネータ１０において、ルータ２０やエンドデバイス３０から送信されてきたアドレスをそのアドレスに付加されている識別情報と対応づけて重複検出用アドレステーブルＴＡに書き込む。また、送信されてきたアドレスが既に重複検出用アドレステーブルＴＡに書き込まれていた場合、そのアドレスに対応するテーブルＴＡ中の識別情報と送信されてきたアドレスに付加されている識別情報とを比較し、両者が異なっていれば、送信されてきたアドレスを重複アドレスとして検出する。【選択図】  図１
2008148029.tif 000002
【特許請求の範囲】
【請求項１】
最上位に位置する第１のデバイスと、最下位に位置し自己のメモリに自己に割り当てられたアドレスを記憶する第２のデバイスとを少なくとも備えたツリー構造の無線通信システムにおいて、
前記第２のデバイスは、
自己に割り当てられたアドレスに自己の識別情報を付加して前記第１のデバイスへ定期的に送信する手段を備え、
前記第１のデバイスは、
前記第２のデバイスより送信されてくるアドレスをそのアドレスに付加されている識別情報と対応づけてメモリに保存する手段と、
前記第２のデバイスより送信されてきたアドレスが既に前記メモリに保存されていた場合、そのアドレスと対応して保存されている識別情報と送信されてきたアドレスに付加されている識別情報とを比較し、両者が異なっていた場合、前記送信されてきたアドレスを重複アドレスとして検出する手段と
を備えることを特徴とする無線通信システム。
【請求項２】
請求項１に記載された無線通信システムにおいて、
前記第１のデバイスは、さらに、
前記重複アドレスが検出された場合、その重複アドレスを前記メモリより削除するとともに、下位のデバイスに重複アドレスの削除要求をブロードキャストで送る手段を備え、
前記第２のデバイスは、さらに、
前記第１のデバイスからの重複アドレスの削除要求を受けて、自己に割り当てられているアドレスが重複アドレスであった場合、そのアドレスを自己のメモリから削除する手段と、
前記重複アドレスを削除した後、上位の任意のデバイスに再接続要求を行い、そのデバイスからアドレスを取得する手段と
を備えることを特徴とする無線通信システム。
【請求項３】
最上位に位置する第１のデバイスと、最下位に位置し自己のメモリに自己に割り当てられたアドレスを記憶する第２のデバイスと、この第１のデバイスと第２のデバイスとの間に位置し自己のメモリに自己に割り当てられたアドレスを記憶する第３のデバイスとを少なくとも備えたツリー構造の無線通信システムにおいて、
前記第２のデバイスおよび第３のデバイスは、
自己に割り当てられたアドレスに自己の識別情報を付加して前記第１のデバイスへ定期的に送信する手段を備え、
前記第１のデバイスは、
前記第２のデバイスおよび第３のデバイスより送信されてくるアドレスをそのアドレスに付加されている識別情報と対応づけてメモリに保存する手段と、
前記第２のデバイスおよび第３のデバイスより送信されてきたアドレスが既に前記メモリに保存されていた場合、そのアドレスと対応して保存されている識別情報と送信されてきたアドレスに付加されている識別情報とを比較し、両者が異なっていた場合、前記送信されてきたアドレスを重複アドレスとして検出する手段と
を備えることを特徴とする無線通信システム。
【請求項４】
請求項３に記載された無線通信システムにおいて、
前記第１のデバイスは、さらに、
前記重複アドレスが検出された場合、その重複アドレスを前記メモリより削除するとともに、下位のデバイスに重複アドレスの削除要求をブロードキャストで送る手段を備え、
前記第２および第３のデバイスは、さらに、
前記第１のデバイスからの重複アドレスの削除要求を受けて、自己に割り当てられているアドレスが重複アドレスであった場合、そのアドレスを自己のメモリから削除する手段と、
前記重複アドレスを削除した後、上位の任意のデバイスに再接続要求を行い、そのデバイスからアドレスを取得する手段と
を備えることを特徴とする無線通信システム。
【請求項５】
最上位に位置する第１のデバイスと、最下位に位置し自己のメモリに自己に割り当てられたアドレスを記憶する第２のデバイスと、この第１のデバイスと第２のデバイスとの間に位置し自己のメモリに自己に割り当てられたアドレスを記憶する第３のデバイスとを少なくとも備えたツリー構造の無線通信システムにおいて、
前記第２のデバイスは、
自己に割り当てられたアドレスに自己の識別情報を付加して上位のデバイスへ定期的に送信する手段を備え、
前記第３のデバイスは、
自己に割り当てられたアドレスに自己の識別情報を付加して上位のデバイスへ定期的に送信する手段と、
１階層下のデバイスより定期的に送信されてくるアドレスをそのアドレスに付加されている識別情報と対応づけて第１のメモリに保存する手段と、
１階層下のデバイスより定期的に送信されてきたアドレスが既に前記第１のメモリに保存されていた場合、そのアドレスと対応して保存されている識別情報と送信されてきたアドレスに付加されている識別情報とを比較し、両者が異なっていた場合、前記送信されてきたアドレスを重複アドレスとして検出する手段とを備え、
前記第１のデバイスは、
１階層下のデバイスより定期的に送信されてくるアドレスをそのアドレスに付加されている識別情報と対応づけて第２のメモリに保存する手段と、
１階層下のデバイスより定期的に送信されてきたアドレスが既に前記第２のメモリに保存されていた場合、そのアドレスと対応して保存されている識別情報と送信されてきたアドレスに付加されている識別情報とを比較し、両者が異なっていた場合、前記送信されてきたアドレスを重複アドレスとして検出する手段と
を備えることを特徴とする無線通信システム。
【請求項６】
請求項５に記載された無線通信システムにおいて、
前記第１のデバイスは、さらに、
前記重複アドレスが検出された場合、その重複アドレスを前記第２のメモリより削除するとともに、下位のデバイスに重複アドレスの削除要求をブロードキャストで送る手段を備え、
前記第３のデバイスは、さらに、
前記重複アドレスが検出された場合、その重複アドレスを前記第１のメモリより削除するとともに、下位のデバイスに重複アドレスの削除要求をブロードキャストで送る手段と、
上位のデバイスからの重複アドレスの削除要求を受けて、自己に割り当てられているアドレスが重複アドレスであった場合、そのアドレスを自己のメモリから削除する手段と、
前記重複アドレスを削除した後、上位の任意のデバイスに再接続要求を行い、そのデバイスからアドレスを取得する手段とを備え、
前記第２のデバイスは、さらに、
上位のデバイスからの重複アドレスの削除要求を受けて、自己に割り当てられているアドレスが重複アドレスであった場合、そのアドレスを自己のメモリから削除する手段と、
前記重複アドレスを削除した後、上位の任意のデバイスに再接続要求を行い、そのデバイスからアドレスを取得する手段と
を備えることを特徴とする無線通信システム。
【請求項７】
下位のデバイスより定期的に送信されてくるアドレスをそのアドレスに付加されている識別情報と対応づけてメモリに保存する手段と、
前記下位のデバイスより定期的に送信されてきたアドレスが既に前記メモリに保存されていた場合、そのアドレスと対応して保存されている識別情報と送信されてきたアドレスに付加されている識別情報とを比較し、両者が異なっていた場合、前記送信されてきたアドレスを重複アドレスとして検出する手段と
を備えることを特徴とするデバイス。
【請求項８】
請求項７に記載されたデバイスにおいて、さらに、
前記重複アドレスが検出された場合、その重複アドレスを前記メモリより削除するとともに、下位のデバイスに重複アドレスの削除要求をブロードキャストで送る手段
を備えることを特徴とするデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ツリー構造の無線通信システムおよびこの無線通信システムに用いられるデバイスに関するものである。
【背景技術】
【０００２】
近年、無線通信を利用して、環境計測・監視・制御などを行うシステムが増加している。この環境計測・監視・制御などを行う無線通信システムでは、対象エリアが比較的広い、又は、対象エリア内に無線通信の障害物が多々存在する場合が多い。このような場合、対象エリアをカバーするためには、受信器と送信器の設置位置や電波状況等の環境により直接通信できなくても、他のデバイスを中継して通信を行うことができる無線通信ネットワークを利用することが有利である。
【０００３】
この種の無線通信ネットワークとして、ジグビー（Ｚｉｇｂｅｅ（登録商標））プロトコルを利用した無線通信ネットワークが考えられている（例えば、特許文献１、特許文献２参照）。以下、このジグビープロトコルを利用した無線通信ネットワークをジグビーネットワークと呼ぶ。
【０００４】
ジグビーネットワークは、ツリー構造の無線通信ネットワークであり、次のような３種類のデバイスによって構成される。
〔デバイスＡ（ノードＡ）〕
コーディネータと呼ばれ、ネットワークの基層（最上位）に唯一存在し、下位デバイスと接続通信でき、ネットワーク内の全てのデバイスに対して命令するとともに、各デバイス固有の情報および各デバイスから送られてくる情報の収集を統括する。また、ネットワーク全体の総合親局の役割を果たすとともに、自己と親子関係を結ぶデバイスにアドレスを付番する。
【０００５】
〔デバイスＢ（ノードＢ）〕
ルータと呼ばれ、コーディネータよりも下層に存在し、上位デバイスおよび下位デバイスと接続通信でき、コーディネータからの命令を受けるとともに、下位デバイス（ルータ、又はエンドデバイス）を接続することができ、それらデバイスに対しては局地的な親局の役割を果たす。また、自己と親子関係を結ぶデバイスにアドレスを付番する。
【０００６】
〔デバイスＣ（ノードＣ）〕
エンドデバイスと呼ばれ、ネットワークの末端（最下位）に存在し、上位デバイスと接続通信でき、他のデバイスの親局にはならない。例えば、空調制御システムでは、温度センサや湿度センサなどのセンサがエンドデバイスとされる。
【０００７】
なお、ジグビーネットワークの各デバイスには、接続可能な下位デバイスの最大個数Ｃｍと、ツリー構造の階層の最深度Ｌｍがネットワークパラメータとして定められる。
【０００８】
図１３にジグビーネットワークの単純な例を示す。同図において、１は最上位（第０層）に位置するコーディネータ、２−１，２−２はコーディネータ１の下層（第１層）に位置するルータ、３−１，３−２および３−３，３−４はルータ２−１および２−２の下層（第２層（最下位））に位置するエンドデバイスである。
【０００９】
なお、この例において、コーディネータ１の識別番号は＃０、ルータ２−１，２−２の識別番号は＃１，＃２、エンドデバイス３−１〜３−４の識別番号は＃３〜＃６として設定されているものとする。これらの識別番号＃０〜＃６は、デバイス毎に固有に定められたものであり、変わることはない。また、このジグビーネットワークにおいて、コーディネータ１には、ネットワーク全体に対して付番可能なアドレスとしてアドレスブロックＡＤ０〜ＡＤ６が定められ、このアドレスブロックのうち「ＡＤ０」が自己のアドレスとして割り当てられるものとする。
【００１０】
コーディネータ１に対して、ルータ２−１を接続する場合、ルータ２−１をコーディネータ１に近づけて電源をオンとする。すると、ルータ２−１からコーディネータ１へアソシエイト（参加申請）と呼ばれる接続要求（以下、アソシエイト接続要求と呼ぶ）が送られる。コーディネータ１は、ルータ２−１からのアソシエイト接続要求を受けて、ルータ２−１に対してアドレスＡＤ１を割り当てるとともに、ルータ２−１の識別番号＃１とルータ２−１に割り当てたアドレスＡＤ１とを対応づけて親子関係有り（「○」）として接続情報テーブルＴ０に書き込む。また、ルータ２−１へ、下位のデバイスへ付番可能なアドレスとして、アドレスＡＤ１を含むアドレスブロック「ＡＤ１〜ＡＤ３」を送る。
【００１１】
次に、ルータ２−２をコーディネータ１に近づけて電源をオンとすると、ルータ２−２からコーディネータ１へアソシエイト接続要求が送られる。コーディネータ１は、ルータ２−２からのアソシエイト接続要求を受けて、ルータ２−２に対してアドレスＡＤ４を割り当てるとともに、ルータ２−２の識別番号＃２とルータ２−２に割り当てたアドレスＡＤ４とを対応づけて親子関係有りとして接続情報テーブルＴ０に書き込む。また、ルータ２−２へ、下位のデバイスへ付番可能なアドレスとして、アドレスＡＤ４を含むアドレスブロック「ＡＤ４〜ＡＤ６」を送る。
【００１２】
エンドデバイス３−１をルータ２−１に近づけて電源をオンとすると、エンドデバイス３−１からルータ２−１へアソシエイト接続要求が送られる。ルータ２−１は、エンドデバイス３−１からのアソシエイト接続要求を受けて、エンドデバイス３−１に対してアドレスＡＤ２を割り当てるとともに、エンドデバイス３−１の識別番号＃３とエンドデバイス３−１に割り当てたアドレスＡＤ２とを対応づけて親子関係有りとして接続情報テーブルＴ１に書き込む。
【００１３】
エンドデバイス３−２をルータ２−１に近づけて電源をオンとすると、エンドデバイス３−２からルータ２−１へアソシエイト接続要求が送られる。ルータ２−１は、エンドデバイス３−２からのアソシエイト接続要求を受けて、エンドデバイス３−２に対してアドレスＡＤ３を割り当てるとともに、エンドデバイス３−２の識別番号＃４とエンドデバイス３−２に割り当てたアドレスＡＤ３とを対応づけて親子関係有りとして接続情報テーブルＴ１に書き込む。以下同様にして、各デバイスにアドレスが割り当てられる。
【００１４】
このジグビーネットワークでは、例えばエンドデバイス３−１の電源がオフとされると、エンドデバイス３−１に割り当てられたアドレスＡＤ２が消失する。この場合、電源をオンとし、再起動すると、エンドデバイス３−１からルータ２−１へオーファンと呼ばれる接続要求（以下、オーファン接続要求と呼ぶ）が送られ、ルータ２−１が記憶している接続情報テーブルＴ１中のエンドデバイス３−１の識別番号＃３に対応するアドレスＡＤ２が読み出され、エンドデバイス３−１に再度割り当てられる。
【００１５】
また、このジグビーネットワークでは、例えばエンドデバイス３−１とルータ２−１との間の伝送路に電波障害などが発生した場合、エンドデバイス３−１からの情報（例えば、温度計測値、湿度計測値など）がルータ２−１で受信できなくなる。この場合、エンドデバイス３−１は人手によって、ルータ２−２が送信圏内にあれば、新たにルータ２−２とエンドデバイス３−１とで親子関係を結び、エンドデバイス３−１は自己の情報をルータ２−２へ送り、さらにその情報は上位のデバイスに送られる。これにより、通信経路が新たに規定され、エンドデバイス３−１からの情報が継続してコーディネータ１へ送られるものとなる。
【００１６】
なお、図１３には単純な例を示したが、実際には最上位のコーディネータ１と最下位のエンドデバイス３との間にはルータ２が何層も位置し、さらにルータ２の数やエンドデバイス３の数も増大し、大規模なネットワークとされる。
【００１７】
【特許文献１】特開２００６−５９２８号公報
【特許文献２】特開２００６−４２３７０号公報
【特許文献３】特開２００５−６４８４８号公報
【特許文献４】特開２００５−２０４０１６号公報
【発明の開示】
【発明が解決しようとする課題】
【００１８】
しかしながら、上述したジグビーネットワークでは、ルータ２が下位のデバイスにアドレスを割り当てた後に、故障等によりルータ２内の接続情報テーブルＴ１が失われることがある。ここで、接続情報テーブルＴ１が失われたルータ２に新たなデバイスが親子接続を求めた場合、既に割り当てられているアドレスをその親子接続を求めたデバイスに重複して割り当ててしまう可能性がある。
【００１９】
例えば、今、図１４（ａ）に示すように、ルータ２−１の接続情報テーブルＴ１には、エンドデバイス３−１との親子関係が定められているが、エンドデバイス３−２との親子関係はまだ定められていないものとする。ここで、何らかの異常によりルータ２−１内の接続情報テーブルＴ１が消失し（図１４（ｂ））、ルータ２−１とエンドデバイス３−１との親子関係が失われたとする。このような状態で、例えばエンドデバイス３−２をルータ２−１に近づけて電源をオンとすると（図１４（ｃ））、エンドデバイス３−２からルータ２−１へアソシエイト接続要求が送られ、ルータ２−１との間で親子関係が結ばれる。
【００２０】
この場合、ルータ２−１は、下位のデバイスへ割り当て可能なアドレスとしてアドレスＡＤ２とＡＤ３が残されているものと判断し、エンドデバイス３−２に対してアドレスＡＤ２を割り当てるとともに、エンドデバイス３−２の識別番号＃４とエンドデバイス３−２に割り当てたアドレスＡＤ２とを対応づけて親子関係有りとして接続情報テーブルＴ１に書き込む。
【００２１】
このため、エンドデバイス３−１のアドレスとエンドデバイス３−２のアドレスとが同じアドレスＡＤ２となり、アドレスの重複が生じ、コーディネータ１への情報が混乱してしまう。このようなアドレスの重複は、ルータ２−１，２−２との間でも同様にして生じる虞れがある。
【００２２】
なお、ジグビーネットワークではないが、特許文献３や特許文献４には、アドレスの重複の問題を解決するための技術が示されている。これらの特許文献では、他のデバイスと自由に接続可能なデバイスの内部に、重複アドレス検出機能を設けている。この技術を上述したジグビーネットワークに応用すると、全てのデバイスに重複アドレス検出機能を付加することになり、非常に高価なシステムとなってしまう。
【００２３】
本発明は、このような課題を解決するためになされたもので、その目的とするところは、安価な構成で、システム内の全てのアドレスの重複を検出することができる無線通信システムを提供することにある。
【課題を解決するための手段】
【００２４】
このような目的を達成するために、第１発明（請求項１に係る発明）は、最上位に位置する第１のデバイスと、最下位に位置し自己のメモリに自己に割り当てられたアドレスを記憶する第２のデバイスとを少なくとも備えたツリー構造の無線通信システムにおいて、第２のデバイスに、自己に割り当てられたアドレスに自己の識別情報を付加して第１のデバイスへ定期的に送信する手段を設け、第１のデバイスに、第２のデバイスより送信されてくるアドレスをそのアドレスに付加されている識別情報と対応づけてメモリに保存する手段と、第２のデバイスより送信されてきたアドレスが既にメモリに保存されていた場合、そのアドレスと対応して保存されている識別情報と送信されてきたアドレスに付加されている識別情報とを比較し、両者が異なっていた場合、送信されてきたアドレスを重複アドレスとして検出する手段とを設けたものである。
【００２５】
この第１発明によれば、例えば、第１のデバイスをコーディネータ、第２のデバイスをルータもしくはエンドデバイスとする２層のツリー構造の無線通信システムとした場合、ルータもしくはエンドデバイスからコーディネータへ、自己に割り当てられたアドレスが自己の識別情報を付加して定期的に送信される。コーディネータは、ルータもしくはエンドデバイスからアドレスが送信されてきた場合、そのアドレスとそのアドレスに付加されている識別情報とを対応づけてメモリに保存する。また、コーディネータは、ルータもしくはエンドデバイスからアドレスが送信されてきた場合、そのアドレスが既にメモリに保存されているか否かを確認し、メモリに保存されていた場合、そのアドレスと対応して保存されている識別情報と送信されてきたアドレスに付加されている識別情報とを比較する。ここで、両者が異なっていれば、送信されてきたアドレスを重複アドレスとして検出する。この場合、重複アドレスを検出する機能はコーディネータのみに設ければよく、他のデバイス（ルータ、エンドデバイス）には不要なので、システム内の全てのアドレスの重複を安価な構成で検出することが可能となる。
【００２６】
第２発明（請求項２に係る発明）は、第１発明において、第１のデバイスに、重複アドレスが検出された場合、その重複アドレスをメモリより削除するとともに、下位のデバイスに重複アドレスの削除要求をブロードキャストで送る手段を設け、第２のデバイスに、第１のデバイスからの重複アドレスの削除要求を受けて、自己に割り当てられているアドレスが重複アドレスであった場合、そのアドレスを自己のメモリから削除する手段と、重複アドレスを削除した後、上位のデバイスに再接続要求を行い、そのデバイスからアドレスを取得する手段とを設けたものである。
【００２７】
この第２発明によれば、例えば、第１のデバイスをコーディネータ、第２のデバイスをルータもしくはエンドデバイスとする２層のツリー構造の無線通信システムとした場合、コーディネータは、重複アドレスを検出すると、その重複アドレスをメモリより削除し、下位のデバイス（ルータ、エンドデバイス）に重複アドレスの削除要求をブロードキャストで送る。
ルータもしくはエンドデバイスは、コーディネータからの重複アドレスの削除要求を受けて、自己に割り当てられているアドレスが重複アドレスであった場合、そのアドレスを自己のメモリから削除する。そして、この重複アドレスの削除後、上位の任意のデバイス（コーディネータ）に再接続要求を行い、そのデバイスからアドレスを取得する。
これにより、同じアドレスが割り当てられていたデバイスに異なるアドレスが与えられ、システム内のアドレスの重複が自動的に解消される。
【００２８】
第３発明（請求項３に係る発明）は、最上位に位置する第１のデバイスと、最下位に位置し自己のメモリに自己に割り当てられたアドレスを記憶する第２のデバイスと、この第１のデバイスと第２のデバイスとの間に位置し自己のメモリに自己に割り当てられたアドレスを記憶する第３のデバイスとを少なくとも備えたツリー構造の無線通信システムにおいて、第２のデバイスおよび第３のデバイスに、自己に割り当てられたアドレスに自己の識別情報を付加して第１のデバイスへ定期的に送信する手段を設け、第１のデバイスに、第２のデバイスおよび第３のデバイスより送信されてくるアドレスをそのアドレスに付加されている識別情報と対応づけてメモリに保存する手段と、第２のデバイスおよび第３のデバイスより送信されてきたアドレスが既にメモリに保存されていた場合、そのアドレスと対応して保存されている識別情報と送信されてきたアドレスに付加されている識別情報とを比較し、両者が異なっていた場合、送信されてきたアドレスを重複アドレスとして検出する手段とを設けたものである。
【００２９】
この第３発明によれば、例えば、第１のデバイスをコーディネータ、第２のデバイスをエンドデバイス、第３のデバイスをルータとする３層のツリー構造の無線通信システムとした場合、ルータからコーディネータへ、またエンドデバイスからルータを介してコーディネータへ、自己に割り当てられたアドレスが自己の識別情報を付加して定期的に送信される。コーディネータは、ルータやエンドデバイスからアドレスが送信されてきた場合、そのアドレスとそのアドレスに付加されている識別情報とを対応づけてメモリに保存する。また、コーディネータは、ルータやエンドデバイスからアドレスが送信されてきた場合、そのアドレスが既にメモリに保存されているか否かを確認し、メモリに保存されていた場合、そのアドレスと対応して保存されている識別情報と送信されてきたアドレスに付加されている識別情報とを比較する。ここで、両者が異なっていれば、送信されてきたアドレスを重複アドレスとして検出する。この場合、重複アドレスを検出する機能はコーディネータのみに設ければよく、他のデバイス（ルータ、エンドデバイス）には不要なので、システム内の全てのアドレスの重複を安価な構成で検出することが可能となる。
【００３０】
第４発明（請求項４に係る発明）は、第３発明において、第１のデバイスに、重複アドレスが検出された場合、その重複アドレスをメモリより削除するとともに、下位のデバイスに重複アドレスの削除要求をブロードキャストで送る手段を設け、第２および第３のデバイスに、第１のデバイスからの重複アドレスの削除要求を受けて、自己に割り当てられているアドレスが重複アドレスであった場合、そのアドレスを自己のメモリから削除する手段と、重複アドレスを削除した後、上位の任意のデバイスに再接続要求を行い、そのデバイスからアドレスを取得する手段とを設けたものである。
【００３１】
この第４発明によれば、例えば、第１のデバイスをコーディネータ、第２のデバイスをエンドデバイス、第３のデバイスをルータとする３層のツリー構造の無線通信システムとした場合、コーディネータは、重複アドレスを検出すると、その重複アドレスをメモリより削除し、下位のデバイス（ルータ、エンドデバイス）に重複アドレスの削除要求をブロードキャストで送る。
ルータは、コーディネータからの重複アドレスの削除要求を受けて、自己に割り当てられているアドレスが重複アドレスであった場合、そのアドレスを自己のメモリから削除する。そして、この重複アドレスの削除後、上位の任意のデバイス（コーディネータ）に再接続要求を行い、そのデバイスからアドレスを取得する。
エンドデバイスもルータと同様に、コーディネータからの重複アドレスの削除要求を受けて、自己に割り当てられているアドレスが重複アドレスであった場合、そのアドレスを自己のメモリから削除する。そして、この重複アドレスの削除後、上位の任意のデバイス（ルータ）に再接続要求を行い、そのデバイスからアドレスを取得する。
これにより、同じアドレスが割り当てられていたデバイスに異なるアドレスが与えられ、システム内のアドレスの重複が自動的に解消される。
【００３２】
第５発明（請求項５に係る発明）は、最上位に位置する第１のデバイスと、最下位に位置し自己のメモリに自己に割り当てられたアドレスを記憶する第２のデバイスと、この第１のデバイスと第２のデバイスとの間に位置し自己のメモリに自己に割り当てられたアドレスを記憶する第３のデバイスとを少なくとも備えたツリー構造の無線通信システムにおいて、第２のデバイスに、自己に割り当てられたアドレスに自己の識別情報を付加して上位のデバイスへ定期的に送信する手段を設け、第３のデバイスに、自己に割り当てられたアドレスに自己の識別情報を付加して上位のデバイスへ定期的に送信する手段と、１階層下のデバイスより定期的に送信されてくるアドレスをそのアドレスに付加されている識別情報と対応づけて第１のメモリに保存する手段と、１階層下のデバイスより定期的に送信されてきたアドレスが既に第１のメモリに保存されていた場合、そのアドレスと対応して保存されている識別情報と送信されてきたアドレスに付加されている識別情報とを比較し、両者が異なっていた場合、送信されてきたアドレスを重複アドレスとして検出する手段とを設け、第１のデバイスに、１階層下のデバイスより定期的に送信されてくるアドレスをそのアドレスに付加されている識別情報と対応づけて第２のメモリに保存する手段と、１階層下のデバイスより定期的に送信されてきたアドレスが既に第２のメモリに保存されていた場合、そのアドレスと対応して保存されている識別情報と送信されてきたアドレスに付加されている識別情報とを比較し、両者が異なっていた場合、送信されてきたアドレスを重複アドレスとして検出する手段とを設けたものである。
【００３３】
この第５発明によれば、例えば、第１のデバイスをコーディネータ、第２のデバイスをエンドデバイス、第３のデバイスをルータとする３層のツリー構造の無線通信システムとした場合、エンドデバイスから上位のデバイス（ルータ）へ、自己に割り当てられたアドレスが自己の識別情報を付加して定期的に送信される。また、ルータから上位のデバイス（コーディネータ）へ、自己に割り当てられたアドレスが自己の識別情報を付加して定期的に送信される。
ルータは、１階層下のデバイス（エンドデバイス）からアドレスが送信されてきた場合、そのアドレスとそのアドレスに付加されている識別情報とを対応づけて第１のメモリに保存する。また、ルータは、１階層下のデバイス（エンドデバイス）からアドレスが送信されてきた場合、そのアドレスが既に第１のメモリに保存されているか否かを確認し、第１のメモリに保存されていた場合、そのアドレスと対応して保存されている識別情報と送信されてきたアドレスに付加されている識別情報とを比較する。ここで、両者が異なっていれば、送信されてきたアドレスを重複アドレスとして検出する。
コーディネータは、１階層下のデバイス（ルータ）からアドレスが送信されてきた場合、そのアドレスとそのアドレスに付加されている識別情報とを対応づけて第２のメモリに保存する。また、コーディネータは、１階層下のデバイス（ルータ）からアドレスが送信されてきた場合、そのアドレスが既に第２のメモリに保存されているか否かを確認し、第２のメモリに保存されていた場合、そのアドレスと対応して保存されている識別情報と送信されてきたアドレスに付加されている識別情報とを比較する。ここで、両者が異なっていれば、送信されてきたアドレスを重複アドレスとして検出する。
この場合、重複アドレスを検出する機能はコーディネータおよびルータのみに設ければよく、エンドデバイスには不要なので、システム内の全てのアドレスの重複を安価な構成で検出することが可能となる。
【００３４】
第６発明（請求項６に係る発明）は、第５発明において、第１のデバイスに、重複アドレスが検出された場合、その重複アドレスを第２のメモリより削除するとともに、下位のデバイスに重複アドレスの削除要求をブロードキャストで送る手段を設け、第３のデバイスに、重複アドレスが検出された場合、その重複アドレスを第１のメモリより削除するとともに、下位のデバイスに重複アドレスの削除要求をブロードキャストで送る手段と、上位のデバイスからの重複アドレスの削除要求を受けて、自己に割り当てられているアドレスが重複アドレスであった場合、そのアドレスを自己のメモリから削除する手段と、重複アドレスを削除した後、上位の任意のデバイスに再接続要求を行い、そのデバイスからアドレスを取得する手段とを設け、第２のデバイスに、上位のデバイスからの重複アドレスの削除要求を受けて、自己に割り当てられているアドレスが重複アドレスであった場合、そのアドレスを自己のメモリから削除する手段と、重複アドレスを削除した後、上位の任意のデバイスに再接続要求を行い、そのデバイスからアドレスを取得する手段を設けたものである。
【００３５】
この第６発明によれば、例えば、第１のデバイスをコーディネータ、第２のデバイスをエンドデバイス、第３のデバイスをルータとする３層のツリー構造の無線通信システムとした場合、コーディネータは、重複アドレスを検出すると、その重複アドレスを第２のメモリより削除し、下位のデバイス（ルータ）に重複アドレスの削除要求をブロードキャストで送る。ルータは、重複アドレスを検出すると、その重複アドレスを第１のメモリより削除し、下位のデバイス（エンドデバイス）に重複アドレスの削除要求をブロードキャストで送る。
ルータは、コーディネータからの重複アドレスの削除要求を受けると、自己に割り当てられているアドレスが重複アドレスであった場合、そのアドレスを自己のメモリから削除する。そして、重複アドレスの削除後、上位の任意のデバイス（コーディネータ）に再接続要求を行い、そのデバイスからアドレスを取得する。
エンドデバイスは、ルータからの重複アドレスの削除要求を受けると、自己に割り当てられているアドレスが重複アドレスであった場合、そのアドレスを自己のメモリから削除する。そして、重複アドレスの削除後、上位の任意のデバイス（ルータ）に再接続要求を行い、そのデバイスからアドレスを取得する。
これにより、同じアドレスが割り当てられていたデバイスに異なるアドレスが与えられ、システム内のアドレスの重複が自動的に解消される。
【００３６】
なお、本発明において、ツリー構造の無線通信システムは、３層のツリー構造に限られるものではなく、第１のデバイスと第２のデバイスで構成された２層のツリー構造としてもよく、また、第１のデバイスと第２のデバイスとの間に第３のデバイスを何層も設けた４層以上のツリー構造としてもよい。更に、このツリー構造の無線通信システムにおいて、第１のデバイスは１つであるが、第２のデバイスや第３のデバイスは状況に応じて多数設けられる。また、本発明は、無線通信システムとしてではなく、デバイス単体として構成することもできる。この場合、デバイスに、下位のデバイスより定期的に送信されてくるアドレスをそのアドレスに付加されている識別情報と対応づけてメモリに保存する手段と、下位のデバイスより送信されてきたアドレスが既にメモリに保存されていた場合、そのアドレスと対応して保存されている識別情報と送信されてきたアドレスに付加されている識別情報とを比較し、両者が異なっていた場合、送信されてきたアドレスを重複アドレスとして検出する手段とを設ける（第７発明（請求項７に係る発明））。また、重複アドレスが検出された場合、その重複アドレスをメモリより削除するとともに、下位のデバイスに重複アドレスの削除要求をブロードキャストで送る手段を設ける（第８発明（請求項８に係る発明））。この場合、デバイスは、コーディネータであってもよいし、ルータであってもよい。
【発明の効果】
【００３７】
第１発明によれば、第２のデバイスから自己に割り当てられたアドレスを自己の識別情報を付加して第１のデバイスへ定期的に送信するようにし、第１のデバイスにおいて、第２のデバイスより送信されてきたアドレスが既にメモリに保存されていた場合、そのアドレスと対応して保存されている識別情報と送信されてきたアドレスに付加されている識別情報とを比較し、両者が異なっていた場合、送信されてきたアドレスを重複アドレスとして検出するようにしたので、重複アドレスを検出する機能を第１のデバイスのみに設けるようにして、システム内の全てのアドレスの重複を安価な構成で検出することが可能となる。
第２発明によれば、第１のデバイスにおいて重複アドレスが検出された場合、第１のデバイスより下位のデバイスへ重複アドレスの削除要求をブロードキャストで送ることにより、重複アドレスを削除し、同じアドレスが割り当てられていたデバイスに異なるアドレスを与えるようにして、システム内の全てのアドレスの重複を自動的に解消することが可能となる。
【００３８】
第３発明によれば、第２のデバイスおよび第３のデバイスから自己に割り当てられたアドレスを自己の識別情報を付加して第１のデバイスへ定期的に送信するようにし、第１のデバイスにおいて、第２のデバイスおよび第３のデバイスより送信されてきたアドレスが既にメモリに保存されていた場合、そのアドレスと対応して保存されている識別情報と送信されてきたアドレスに付加されている識別情報とを比較し、両者が異なっていた場合、送信されてきたアドレスを重複アドレスとして検出するようにしたので、重複アドレスを検出する機能を第１のデバイスのみに設けるようにして、システム内の全てのアドレスの重複を安価な構成で検出することが可能となる。
第４発明によれば、第１のデバイスにおいて重複アドレスが検出された場合、第１のデバイスより下位のデバイスへ重複アドレスの削除要求をブロードキャストで送ることにより、重複アドレスを削除し、同じアドレスが割り当てられていたデバイスに異なるアドレスを与えるようにして、システム内の全てのアドレスの重複を自動的に解消することが可能となる。
【００３９】
第５発明によれば、第２のデバイスおよび第３のデバイスから自己に割り当てられたアドレスを自己の識別情報を付加して上位のデバイスへ定期的に送信するようにし、第１のデバイスおよび第３のデバイスにおいて、１階層下のデバイスより定期的に送信されてきたアドレスが既にメモリに保存されていた場合、そのアドレスと対応して保存されている識別情報と送信されてきたアドレスに付加されている識別情報とを比較し、両者が異なっていた場合、送信されてきたアドレスを重複アドレスとして検出するようにしたので、重複アドレスを検出する機能をコーディネータおよびルータのみに設けるようにして、システム内の全てのアドレスの重複を安価な構成で検出することが可能となる。
第６発明によれば、第１のデバイスにおいて重複アドレスが検出された場合、第１のデバイスより下位のデバイスへ重複アドレスの削除要求をブロードキャストで送ることにより、また第３のデバイスにおいて重複アドレスが検出された場合、第３のデバイスより下位のデバイスへ重複アドレスの削除要求をブロードキャストで送ることにより、重複アドレスを削除し、同じアドレスが割り当てられていたデバイスに異なるアドレスを与えるようにして、システム内の全てのアドレスの重複を自動的に解消することが可能となる。
【００４０】
第７発明によれば、デバイスに、下位のデバイスより定期的に送信されてくるアドレスをそのアドレスに付加されている識別情報と対応づけてメモリに保存する手段と、送信されてきたアドレスが既にメモリに保存されていた場合、そのアドレスと対応して保存されている識別情報と送信されてきたアドレスに付加されている識別情報とを比較し、両者が異なっていた場合、送信されてきたアドレスを重複アドレスとして検出する手段とを設けるようにしたので、重複アドレスを検出する機能をコーディネータのみに設けたり、コーディネータおよびルータのみに設けたりして、ツリー構造の無線通信システム内の全てのアドレスの重複を安価な構成で検出することが可能となる。
【００４１】
第８発明によれば、第７発明のデバイスに、重複アドレスが検出された場合、その重複アドレスをメモリより削除するとともに、下位のデバイスに重複アドレスの削除要求をブロードキャストで送る手段を設けるようにしたので、コーディネータより下位のデバイスへ重複アドレスの削除要求を与えたり、ルータより下位のデバイスへ重複アドレスの削除要求を与えたりして、重複アドレスを削除し、同じアドレスが割り当てられていたデバイスに異なるアドレスを与えるようにして、ツリー構造の無線通信システム内の全てのアドレスの重複を自動的に解消することが可能となる。
【発明を実施するための最良の形態】
【００４２】
以下、本発明を図面に基づいて詳細に説明する。
〔実施の形態１：重複検出機能をコーディネータのみに設けたシステム〕
図１はこの発明に係る無線通信システムの一例（実施の形態１）を示す概略図である。この無線通信システムは、ジグビーネットワークを利用した単純な例であり、最上位（第０層）に位置するコーディネータ１０と、最下位（第２層）に位置するエンドデバイス３０と、コーディネータ１０とエンドデバイス３０との間（第１層）に位置するルータ２０とによって構成される。
【００４３】
なお、この例において、コーディネータ１０の識別番号は＃０、ルータ２０−１，２０−２の識別番号は＃１，＃２、エンドデバイス３０−１〜３０−４の識別番号は＃３〜＃６として設定されているものとする。また、この無線通信システムにおいて、コーディネータ１０には、ネットワーク全体に対して付番可能なアドレスとしてアドレスブロックＡＤ０〜ＡＤ６が定められ、このアドレスブロックのうち「ＡＤ０」が自己のアドレスとして割り当てられるものとする。
【００４４】
この無線通信システムにおいても、図１３に示したジグビーネットワークと同様に、コーディネータ１０に対して、ルータ２０−１を接続する場合、ルータ２０−１をコーディネータ１０に近づけて電源をオンとする。すると、ルータ２０−１からコーディネータ１０へアソシエイト接続要求が送られ、コーディネータ１０との間で親子関係が結ばれる。これにより、ルータ２０−１へアドレスＡＤ１が割り当てられるとともに、コーディネータ１０の接続情報テーブルＴ０にルータ２０−１に割り当てたアドレスＡＤ１と識別番号＃１との対応関係が書き込まれる。
【００４５】
同様にして、コーディネータ１０とルータ２０−２との間、ルータ２０−１とエンドデバイス３０−１，３０−２との間、ルータ２０−２とエンドデバイス３０−３，３０−４との間で親子関係が結ばれる。これにより、ルータ２０−２へアドレスＡＤ４が割り当てられるとともに、コーディネータ１０の接続情報テーブルＴ０にルータ２０−２に割り当てたアドレスＡＤ４と識別番号＃２との対応関係が書き込まれる。また、エンドデバイス３０−１，３０−２にアドレスＡＤ２，ＡＤ３が割り当てられるとともに、ルータ２０−１の接続情報テーブルＴ１にエンドデバイス３０−１，３０−２に割り当てたアドレスＡＤ２，ＡＤ３と識別番号＃３，＃４との対応関係が書き込まれる。また、エンドデバイス３０−３，３０−４にアドレスＡＤ５，ＡＤ６が割り当てられるとともに、ルータ２０−２の接続情報テーブルＴ１にエンドデバイス３０−３，３０−４に割り当てたアドレスＡＤ５，ＡＤ６と識別番号＃５，＃６との対応関係が書き込まれる。
【００４６】
この無線通信システムにおいて、ルータ２０およびエンドデバイス３０は、自己に割り当てられたアドレスに自己の識別情報を付加し、コーディネータ１０に定期的に送信する機能を備えている。例えば、エンドデバイス３０−１は、自己に割り当てられたアドレスＡＤ２に自己の識別番号＃３を付加し、ルータ２０−１を経由し、コーディネータ１０に送る。ルータ２０−１は、自己に割り当てられたアドレスＡＤ１に自己の識別番号＃１を付加し、コーディネータ１０に送る。
【００４７】
また、この無線通信システムにおいて、コーディネータ１０は、ルータ２０およびエンドデバイス３０から定期的に送られてくるアドレスをそのアドレスに付加されている識別番号と対応づけて重複検出用アドレステーブルＴＡに書き込む機能（重複検出用アドレス保存機能）、ルータ２０およびエンドデバイス３０から定期的に送られてきたアドレスが既にテーブルＴＡに書き込まれていた場合、そのアドレスと対応して書き込まれている識別情報と通知アドレスに付加されている識別情報とを比較し、両者が異なっていた場合、送られてきたアドレスを重複アドレスとして検出する機能（重複アドレス検出機能）、重複アドレスが検出された場合、その重複アドレスを重複検出用アドレステーブルＴＡより削除するとともに、そのアドレスを要求アドレスとして、下位のデバイス（ルータ２０，エンドデバイス３０）に重複アドレスの削除要求をブロードキャストで与える機能（重複アドレス削除要求機能）、および下位のデバイスとの親子関係を定めた接続情報テーブルＴ０に重複アドレスが含まれていた場合、そのアドレスを含む接続情報を削除する機能（接続情報削除機能）を備えている。
【００４８】
また、この無線通信システムにおいて、ルータ２０およびエンドデバイス３０は、コーディネータ１０からの重複アドレスの削除要求を受けて、自己に割り当てられているアドレス（自アドレス）が重複アドレスであった場合、そのアドレスを削除する機能（重複アドレス削除機能）と、重複アドレスを削除した後、上位の任意のデバイスに再接続要求を行い、そのデバイスからアドレスを取得する機能（アドレス再取得機能）を有している。また、ルータ２０は、上述した重複アドレス削除機能、アドレス再取得機能に加えて、コーディネータ１０からの重複アドレスの削除要求を受けて、下位のデバイスとの親子関係を定めた接続情報テーブルＴ１に重複アドレスが含まれていた場合、そのアドレスを含む接続情報を削除する機能（接続情報削除機能）を有している。
【００４９】
図２にコーディネータ１０の概略的なブロック図を示す。コーディネータ１０は、処理部１０Ａと、ＲＡＭ１０Ｂと、ＥＥＰＲＯＭ１０Ｃと、ＲＦ回路（無線送受信回路）１０Ｄとを備えている。処理部１０Ａは、上述した重複検出用アドレス保存機能、重複アドレス検出機能、重複アドレス削除要求機能、接続情報削除機能の他、基本的な機能として、ネットワーク宣言機能、親ノード機能、通信機能（ノード間通信機能、通信中継機能）などを備えている。これらの機能は、処理部１０Ａが実行するプログラムに従う処理動作として得られる。なお、ＥＥＰＲＯＭ１０Ｃには、コーディネータ１０の識別番号、ネットワーク全体に対して付番可能なアドレスブロック、コーディネータ１０に対して割り当てられるアドレス、接続情報テーブルＴ０、重複検出用アドレステーブルＴＡなどが格納される。
【００５０】
図３にルータ２０の概略的なブロック図を示す。ルータ２０は、処理部２０Ａと、ＲＡＭ２０Ｂと、ＥＥＰＲＯＭ２０Ｃと、ＲＦ回路２０Ｄとを備えている。処理部２０Ａは、上述した重複アドレス削除機能、アドレス再取得機能、接続情報削除機能の他、基本的な機能として、親ノード機能、通信機能（ノード間通信機能、通信中継機能）などを備えている。これらの機能は、処理部２０Ａが実行するプログラムに従う処理動作として得られる。なお、ＥＥＰＲＯＭ２０Ｃには、ルータ２０の識別番号、上位のデバイスから送られてくる下位のデバイスに対して付番可能なアドレスブロック、接続情報テーブルＴ１などが格納される。ＲＡＭ２０Ｂには、ルータ２０に対して割り当てられるアドレスなどが格納される。
【００５１】
図４にエンドデバイス３０の概略的なブロック図を示す。エンドデバイス３０は、処理部３０Ａと、ＲＡＭ３０Ｂと、ＥＥＰＲＯＭ３０Ｃと、ＲＦ回路３０Ｄとを備えている。処理部３０Ａは、上述した重複アドレス削除機能、アドレス再取得機能の他、基本的な機能として、子ノード機能、通信機能（ノード間通信機能）などを備えている。これらの機能は、処理部３０Ａが実行するプログラムに従う処理動作として得られる。なお、ＥＥＰＲＯＭ３０Ｃには、エンドデバイス３０の識別番号などが格納される。ＲＡＭ３０Ｂには、エンドデバイス３０に対して割り当てられるアドレスなどが格納される。
【００５２】
〔アドレスの重複〕
この無線通信システムでは、ルータ２０が下位のデバイスにアドレスを割り当てた後に、何らかのアクシデントによりルータ２０内の接続情報テーブルＴ１が失われることがある。ここで、接続情報テーブルＴ１が失われたルータ２０に新たなデバイスが親子接続を求めた場合、既に割り当てられているアドレスをその親子接続を求めたデバイスに重複して割り当ててしまう可能性がある。
【００５３】
例えば、今、図５（ａ）に示すように、ルータ２０−１の接続情報テーブルＴ１には、エンドデバイス３０−１との親子関係が定められているが、エンドデバイス３０−２との親子関係はまだ定められていないものとする。ここで、何らかの異常によりルータ２０−１内の接続情報テーブルＴ１が消失し（図５（ｂ））、ルータ２０−１とエンドデバイス３０−１との親子関係が失われたとする。このような状態で、例えばエンドデバイス３０−２をルータ２０−１に近づけて電源をオンとすると（図５（ｃ））、エンドデバイス３０−２からルータ２０−１へアソシエイト接続要求が送られ、ルータ２０−１との間で親子関係が結ばれる。
【００５４】
この場合、ルータ２０−１は、下位のデバイスへ割り当て可能なアドレスとしてアドレスＡＤ２とＡＤ３が残されているものと判断し、エンドデバイス３０−２に対してアドレスＡＤ２を割り当てるとともに、エンドデバイス３０−２の識別番号＃４とエンドデバイス３０−２に割り当てたアドレスＡＤ２とを対応づけて親子関係有りとして接続情報テーブルＴ１に書き込む。このため、エンドデバイス３０−１のアドレスとエンドデバイス３０−２のアドレスとが同じアドレスＡＤ２となり、アドレスの重複が生じる。
【００５５】
〔重複アドレスの検出〕
エンドデバイス３０−２は、ルータ２０−１からアドレスＡＤ２が割り当てられると、定期的に、自己に割り当てられたアドレスＡＤ２に自己の識別番号＃４を付加し、ルータ２０−１を経由して、コーディネータ１０に送る（図５（ｄ））。
【００５６】
コーディネータ１０は、エンドデバイス３０−２から送られてくるアドレス（通知アドレス＋識別番号）を受信し（図６に示すステップ１０１のＹＥＳ）、エンドデバイス３０−２からの通知アドレスが重複検出用アドレステーブルＴＡに書き込まれているか否かをチェックする（ステップ１０２）。ここで、通知されたアドレスが重複検出用アドレステーブルＴＡに書き込まれていなかった場合には、通知されたアドレスをそのアドレスに付加されている識別番号と対応して重複検出用アドレステーブルＴＡに書き込む（ステップ１０３）。
【００５７】
通知されたアドレスが重複検出用アドレステーブルＴＡに書き込まれていた場合には、そのアドレスに対応する識別番号を重複検出用アドレステーブルＴＡから読み出して、通知されたアドレスに付加されている識別番号と比較する。ここで、識別番号が異なっていれば、通知されたアドレスを重複アドレスと判断し（ステップ１０４）、そのアドレスを対応する識別番号とともに重複検出用アドレステーブルＴＡから削除する（ステップ１０５）。
【００５８】
そして、重複アドレスと判断したアドレスが接続情報テーブルＴ０に含まれているか否かをチェックし（ステップ１０６）、接続情報テーブルＴ０に含まれていた場合には、その重複アドレスを含む接続情報を接続情報テーブルＴ０から削除したうえ（ステップ１０７）、下位のデバイスに重複アドレスの削除要求をブロードキャストで送る（ステップ１０８）。
【００５９】
なお、アドレスが同じで、識別番号も同じであれば、何もせずに、ステップ１０１へ戻る。また、識別番号が同じで、アドレスが異なる場合には、そのアドレスを重複検出用アドレステーブルＴＡから削除し（ステップ１０９）、通知されたアドレスをその識別番号に対応する新しいアドレスとして重複検出用アドレステーブルＴＡに書き込む（ステップ１０３）。
【００６０】
図５（ｄ）に示した例では、コーディネータ１０は、エンドデバイス３０−２からのアドレスＡＤ２を受信する（ステップ１０１のＹＥＳ）。この場合、通知されたアドレスＡＤ２は重複検出用アドレステーブルＴＡに書き込まれているので、そのアドレスに対応する識別番号＃３を重複検出用アドレステーブルＴＡから読み出して、通知アドレスＡＤ２に付加されている識別番号＃４と比較する。
【００６１】
この比較の結果、識別番号が異なるので、コーディネータ１０は、通知されたアドレスＡＤ２を重複アドレスと判断し（ステップ１０４）、そのアドレスＡＤ２を対応する識別番号とともに重複検出用アドレステーブルＴＡから削除する（ステップ１０５：図７（ａ））。
【００６２】
そして、通知されたアドレスＡＤ２が接続情報テーブルＴ０に含まれていないことを確認のうえ（ステップ１０６のＮＯ）、アドレスＡＤ２を要求アドレスとして、下位のデバイスに重複アドレスの削除要求をブロードキャストで送る（ステップ１０８、図７（ａ））。
【００６３】
なお、この例では、重複アドレスと判断されたアドレスＡＤ２に対応づけられている識別番号＃３も重複検出用アドレステーブルＴＡから削除するようにしたが、識別番号は削除せずに残しておくようにしてもよい。
【００６４】
〔アドレスの重複解消〕
ルータ２０は、コーディネータ１０からの重複アドレスの削除要求を受けて（図８：ステップ２０１のＹＥＳ）、要求アドレスが自アドレスであるか否かをチェックする（ステップ２０２）。要求アドレスが自アドレスであれば（ステップ２０２のＹＥＳ）、自アドレスを削除する（ステップ２０３）。要求アドレスが自アドレスでなければ（ステップ２０２のＮＯ）、その要求アドレスが接続情報テーブルＴ１に含まれているか否かをチェックする（ステップ２０６）。
【００６５】
この場合、要求アドレスはアドレスＡＤ２であり、自アドレスではないので、ステップ２０２のＮＯに応じてステップ２０６へ進み、要求アドレスＡＤ２が接続情報テーブルＴ１に含まれているか否かをチェックする。そして、要求アドレスＡＤ２が接続情報テーブルＴ１に含まれていることを確認し（ステップ２０６のＹＥＳ）、要求アドレスＡＤ２が含まれている接続情報を接続情報テーブルＴ１から削除する（ステップ２０７、図７（ｂ））。
【００６６】
なお、ルータ２０−１は、要求アドレスが自アドレスであった場合（ステップ２０２のＹＥＳ）、自身の電源をオフとすることによって、自アドレスを消去する（ステップ２０３）。そして、リスタートとし、上位の任意のデバイス（この例では、コーディネータ１０）にアソシエイト接続要求（再接続要求）を送り、そのデバイスからアドレスを取得する（ステップ２０４，２０５）。
【００６７】
エンドデバイス３０−１は、コーディネータ１０からの重複アドレスの削除要求を受けて（図９：ステップ３０１のＹＥＳ）、要求アドレスが自アドレスであるか否かをチェックする（ステップ３０２）。要求アドレスが自アドレスであれば（ステップ３０２のＹＥＳ）、自アドレスを削除する（ステップ３０３）。
【００６８】
この場合、要求アドレスはアドレスＡＤ２であり、自アドレスなので、ステップ３０２のＹＥＳに応じてステップ３０３へ進み、自身の電源をオフとすることによって、自アドレスを消去する（図７（ｂ））。そして、この電源のオフ後、所定時間経過した後、自身の電源をオン（リスタート）とし、上位の任意のデバイス（この例では、ルータ２０−１）にアソシエイト接続要求（再接続要求）を送り、そのデバイスからアドレスを取得する（ステップ３０４，３０５）。
【００６９】
この場合、図７（ｃ）に示すように、エンドデバイス３０−１からルータ２０−１にアソシエイト接続要求が送られ（矢印(１)）、ルータ２０−１の接続情報テーブルＴ１にアドレスＡＤ２と識別番号＃３との対応が親子関係ありとして書き込まれ（矢印(２)）、エンドデバイス３０−１にアドレスＡＤ２が割り当てられる（矢印（３））。
【００７０】
エンドデバイス３０−２は、コーディネータ１０からの重複アドレスの削除要求を受けて（図９：ステップ３０１のＹＥＳ）、要求アドレスが自アドレスであるか否かをチェックする（ステップ３０２）。要求アドレスが自アドレスであれば（ステップ３０２のＹＥＳ）、自アドレスを削除する（ステップ３０３）。
【００７１】
この場合、要求アドレスはアドレスＡＤ２であり、自アドレスなので、ステップ３０２のＹＥＳに応じてステップ３０３へ進み、自身の電源をオフとすることによって、自アドレスを消去する（図７（ｂ））。そして、この電源のオフ後、所定時間経過した後、自身の電源をオン（リスタート）とし、上位の任意のデバイス（この例では、ルータ２０−１）にアソシエイト接続要求（再接続要求）を送り、そのデバイスからアドレスを取得する（ステップ３０４，３０５）。
【００７２】
この場合、図７（ｃ）に示すように、エンドデバイス３０−３からルータ２０−１にアソシエイト接続要求が送られ（矢印(４)）、ルータ２０−１の接続情報テーブルＴ１にアドレスＡＤ３と識別番号＃４との対応が親子関係ありとして書き込まれ（矢印(５)）、エンドデバイス３０−２にアドレスＡＤ３が割り当てられる（矢印（６））。
【００７３】
なお、上述においては、エンドデバイス３０−１，３０−２間にアドレスの重複が生じた場合について説明したが、ルータ２０−１，２０−２間にアドレスの重複が生じたような場合にも、エンドデバイス３０−１，３０−２間と同様にして、コーディネータ１０でアドレスの重複が検出され、自動的に解消されるものとなる。
【００７４】
また、図１には単純な例を示したが、実際には最上位のコーディネータ１０と最下位のエンドデバイス３０との間にはルータ２０が何層も位置し、さらにルータ２０の数やエンドデバイス３０の数も増大し、大規模な無線通信システムとされる。このようなシステムにおいても、図１に示した場合と同様にして、コーディネータ１０でシステム内の全てのアドレスの重複を検出し、自動的に解消することができる。
【００７５】
このように、実施の形態１のシステムでは、コーディネータ１０のみにアドレスの重複検出機能を設ければよく、ルータ２０やエンドデバイス３０にはアドレスの重複検出機能を設けなくてもよいので、安価な構成で、システム内の全てのアドレスの重複を検出することができるという効果が得られる。
【００７６】
〔実施の形態２：コーディネータの重複アドレス検出機能をルータに分散させたシステム〕
実施の形態１では、コーディネータ１０のみでシステム内の全ての重複を検出するようにしているため、コーディネータ１０の処理負荷やシステム全体の通信負荷が大きくなる。そこで、実施の形態２では、コーディネータ１０の重複アドレス検出機能をルータ２０に分散させたシステムとし、コーディネータ１０の処理負荷やシステム全体の通信負荷を低減させるものとする。
【００７７】
この実施の形態２では、図１０に示すように、エンドデバイス３０−１，３０−２からルータ２０−１に定期的に自己のアドレスを自己の識別番号を付加して送るようにして、またエンドデバイス３０−３，３０−４からルータ２０−２に定期的に自己のアドレスを自己の識別番号を付加して送るようにして、ルータ２０−１および２０−２に１階層下のデバイスに対する重複検出用アドレステーブルＴＢを作成させる。また、ルータ２０−１，２０−２からコーディネータ１０に定期的に自己のアドレスを自己の識別番号を付加して送るようにして、コーディネータ１０に１階層下のデバイスに対する重複検出用アドレステーブルＴＡを作成させる。
【００７８】
〔アドレスの重複〕
例えば、今、図１１（ａ）に示すように、ルータ２０−１の接続情報テーブルＴ１には、エンドデバイス３０−１との親子関係が定められているが、エンドデバイス３０−２との親子関係はまだ定められていないものとする。また、ルータ２０−１の重複検出用アドレステーブルＴＢには、エンドデバイス３０−１のアドレスが識別番号と対応して書き込まれているものとする。
【００７９】
ここで、何らかの異常によりルータ２０−１内の接続情報テーブルＴ１が消失し（図１１（ｂ））、ルータ２０−１とエンドデバイス３０−１との親子関係が失われたとする。このような状態で、例えばエンドデバイス３０−２をルータ２０−１に近づけて電源をオンとすると（図１１（ｃ））、エンドデバイス３０−２からルータ２０−１へアソシエイト接続要求が送られ、ルータ２０−１との間で親子関係が結ばれる。
【００８０】
この場合、ルータ２０−１は、エンドデバイス３０−２に対してアドレスＡＤ２を割り当てるとともに、エンドデバイス３０−２の識別番号＃４とエンドデバイス３０−２に割り当てたアドレスＡＤ２とを対応づけて親子関係有りとして接続情報テーブルＴ１に書き込む。このため、エンドデバイス３０−１のアドレスとエンドデバイス３０−２のアドレスとが同じアドレスＡＤ２となり、アドレスの重複が生じる。
【００８１】
〔重複アドレスの重複検出〕
エンドデバイス３０−２は、ルータ２０−１からアドレスＡＤ２が割り当てられると、定期的に、自己に割り当てられたアドレスＡＤ２に自己の識別番号＃４を付加し、ルータ２０−１に送る（図１１（ｄ））。
【００８２】
ルータ２０−１は、エンドデバイス３０−２から送られてくるアドレス（通知アドレス＋識別番号）を受信し、エンドデバイス３０−２からの通知アドレスが重複検出用アドレステーブルＴＢに書き込まれているか否かをチェックする。この場合、通知されたアドレスＡＤ２は重複検出用アドレステーブルＴＢに書き込まれているので、そのアドレスに対応する識別番号＃３を重複検出用アドレステーブルＴＢから読み出して、通知されたアドレスＡＤ２に付加されている識別番号＃４と比較する。
【００８３】
この比較の結果、識別番号が異なるので、ルータ２０−１は、通知されたアドレスＡＤ２を重複アドレスと判断し、そのアドレスＡＤ２を対応する識別番号とともに重複検出用アドレステーブルＴＢから削除する（図１２（ａ））。また、通知されたアドレスＡＤ２が接続情報テーブルＴ１に含まれていることを確認し、そのアドレスＡＤ２を接続情報テーブルＴ１から削除したうえ、アドレスＡＤ２を要求アドレスとし、エンドデバイス３０−１および３０−２に重複アドレスの削除要求をブロードキャストで送る（図１２（ａ））。
【００８４】
〔アドレスの重複解消〕
エンドデバイス３０−１は、ルータ２０−１からの重複アドレスの削除要求を受けて、要求アドレスが自アドレスであるか否かをチェックする。この場合、要求アドレスはアドレスＡＤ２であり、自アドレスなので、自身の電源をオフとし、自己アドレスを消去する（図１２（ｂ））。
【００８５】
そして、この電源のオフ後、所定時間経過した後、自身の電源をオン（リスタート）とし、ルータ２０−１にアソシエイト接続要求（再接続要求）を送り、ルータ２０−２からアドレスＡＤ２を取得する（図１２（ｃ））。これにより、ルータ２０−１の接続情報テーブルＴ１には、アドレスＡＤ２がエンドデバイス３０−１の識別番号＃３と対応づけて、親子関係ありとして書き込まれる。
【００８６】
エンドデバイス３０−２は、ルータ２０−１からの重複アドレスの削除要求を受けて、要求アドレスが自アドレスであるか否かをチェックする。この場合、要求アドレスはアドレスＡＤ２であり、自アドレスなので、自身の電源をオフとし、自己アドレスを消去する（図１２（ｂ））。
【００８７】
そして、この電源のオフ後、所定時間経過した後、自身の電源をオン（リスタート）とし、ルータ２０−１にアソシエイト接続要求（再接続要求）を送り、ルータ２０−２からアドレスＡＤ３を取得する（図１２（ｃ））。これにより、ルータ２０−１の接続情報テーブルＴ１には、アドレスＡＤ３がエンドデバイス３０−２の識別番号＃４と対応づけて、親子関係ありとして書き込まれる。
【００８８】
エンドデバイス３０−１は、ルータ２０−１からアドレスＡＤ２が割り当てられると、定期的に、自己に割り当てられたアドレスＡＤ２に自己の識別番号＃３を付加し、ルータ２０−１へ送る。エンドデバイス３０−２も同様に、ルータ２０−１からアドレスＡＤ３が割り当てられると、定期的に、自己に割り当てられたアドレスＡＤ３に自己の識別番号＃４を付加し、ルータ２０−１へ送る。これにより、ルータ２０−１には、エンドデバイス３０−１および３０−２からの通知アドレスを識別番号と対応して書き込んだ重複アドレス検出用テーブルＴＢが作成される（図１２（ｄ））。
【００８９】
なお、上述においては、エンドデバイス３０−１，３０−２間にアドレスの重複が生じた場合について説明したが、ルータ２０−１，２０−２間にアドレスの重複が生じた場合には、エンドデバイス３０−１，３０−２間と同様にして、コーディネータ１０でアドレスの重複が検出され、自動的に解消されるものとなる。
【００９０】
また、図１０には単純な例を示したが、実際には最上位のコーディネータ１０と最下位のエンドデバイス３０との間にはルータ２０が何層も位置し、さらにルータ２０の数やエンドデバイス３０の数も増大し、大規模な無線通信システムとされる。このようなシステムにおいても、図１０に示した場合と同様にして、コーディネータ１０やルータ２０でシステム内の全てのアドレスの重複を検出し、自動的に解消することができる。
【００９１】
このように、実施の形態２のシステムでは、コーディネータ１０およびルータ２０のみにアドレスの重複検出機能を設ければよく、エンドデバイス３０にはアドレスの重複検出機能を設けなくてもよいので、安価な構成で、システム内の全てのアドレスの重複を検出することができるという効果が得られる。
【図面の簡単な説明】
【００９２】
【図１】本発明に係る無線通信システムの一例（実施の形態１）を示す概略図である。
【図２】この無線通信システムに用いるコーディネータの概略的なブロック図である。
【図３】この無線通信システムに用いるルータの概略的なブロック図である。
【図４】この無線通信システムに用いるエンドデバイスの概略的なブロック図である。
【図５】この無線通信システムにおける重複アドレスの検出の過程を説明する図である。
【図６】コーディネータにおける重複アドレスの検出時の処理動作を示すフローチャートである。
【図７】この無線通信システムにおけるアドレスの重複解消の過程を説明する図である。
【図８】ルータにおけるアドレスの重複解消時の処理動作を示すフローチャートである。
【図９】エンドデバイスにおけるアドレスの重複解理時の処理動作を示すフローチャートである。
【図１０】本発明に係る無線通信システムの他の例（実施の形態２）を示す概略図である。
【図１１】この無線通信システムにおける重複アドレスの検出の過程を説明する図である。
【図１２】この無線通信システムにおけるアドレスの重複解消の過程を説明する図である。
【図１３】従来のジグビーネットワークの単純な例を示す図である。
【図１４】このジグビーネットワークで生じる可能性のあるアドレスの重複を説明する図である。
【符号の説明】
【００９３】
１０…コーディネータ、１０Ａ…処理部、１０Ｂ…ＲＯＭ、１０Ｃ…ＥＥＰＲＯＭ、１０Ｄ…ＲＦ回路、２０（２０−１，２０−２）…ルータ、２０Ａ…処理部、２０Ｂ…ＲＯＭ、２０Ｃ…ＥＥＰＲＯＭ、２０Ｄ…ＲＦ回路、３０（３０−１〜３０−４）…エンドデバイス、３０Ａ…処理部、３０Ｂ…ＲＯＭ、３０Ｃ…ＥＥＰＲＯＭ、３０Ｄ…ＲＦ回路、Ｔ０，Ｔ１…接続情報テーブル、ＴＡ，ＴＢ…重複アドレス検出用テーブル。
【図１】
2008148029.tif 000003
【図２】
2008148029.tif 000004
【図３】
2008148029.tif 000005
【図４】
2008148029.tif 000006
【図５】
2008148029.tif 000007
【図６】
2008148029.tif 000008
【図７】
2008148029.tif 000009
【図８】
2008148029.tif 000010
【図９】
2008148029.tif 000011
【図１０】
2008148029.tif 000012
【図１１】
2008148029.tif 000013
【図１２】
2008148029.tif 000014
【図１３】
2008148029.tif 000015
【図１４】
2008148029.tif 000016