無線通信システム
【課題】間接通信の還路でもエンドデバイスと宛先デバイスとの間の通信が途切れないようにする。エンドデバイスの消費電力の増大を抑える。
【解決手段】エンドデバイス1において、宛先デバイス2−3との間の直接通信が行えなくなった場合、宛先デバイス2−3との親子関係を解除し、直接通信可能な圏内に位置する他のルータ2(例えば、ルータ2−1)と親子関係を結び、この親子関係を結んだルータ2−1を仮の親デバイスとして、宛先デバイス2−3との間の代理通信方式による間接通信を行う。エンドデバイス1において、間接通信中、宛先デバイス2−3との間の直接通信が可能か否かを定期的にチェックし、直接通信が可能となった場合、仮の親デバイス2−1との親子関係を解除し、宛先デバイス2−3との親子関係を復帰し、直接通信を再開する。
【解決手段】エンドデバイス1において、宛先デバイス2−3との間の直接通信が行えなくなった場合、宛先デバイス2−3との親子関係を解除し、直接通信可能な圏内に位置する他のルータ2(例えば、ルータ2−1)と親子関係を結び、この親子関係を結んだルータ2−1を仮の親デバイスとして、宛先デバイス2−3との間の代理通信方式による間接通信を行う。エンドデバイス1において、間接通信中、宛先デバイス2−3との間の直接通信が可能か否かを定期的にチェックし、直接通信が可能となった場合、仮の親デバイス2−1との親子関係を解除し、宛先デバイス2−3との親子関係を復帰し、直接通信を再開する。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、ツリー構造の無線通信システムに関するものである。
【背景技術】
【0002】
近年、無線通信を利用して、環境計測・監視・制御などを行うシステムが増加している。この環境計測・監視・制御などを行う無線通信システムでは、対象エリアが比較的広い、又は、対象エリア内に無線通信の障害物が多々存在する場合が多い。このような場合、対象エリアをカバーするためには、受信器と送信器の設置位置や電波状況等の環境により直接通信できなくても、他のデバイスを中継して通信を行うことができる無線通信ネットワークを利用することが有利である。
【0003】
この種の無線通信ネットワークとして、ジグビー(Zigbee(登録商標))プロトコルを利用した無線通信ネットワークが考えられている(例えば、特許文献1、特許文献2参照)。以下、このジグビープロトコルを利用した無線通信ネットワークをジグビーネットワークと呼ぶ。
【0004】
ジグビーネットワークは、ツリー構造の無線通信ネットワークであり、次のような3種類のデバイスによって構成される。
〔デバイスA(ノードA)〕
コーディネータと呼ばれ、ネットワークの基層(最上位)に唯一存在し、下位のデバイスと接続通信する。また、ネットワーク全体の総合親局の役割を果たすとともに、自己と親子の接続関係(以下、単に親子関係と呼ぶ)を結ぶデバイスに通信アドレス(ネットワークアドレス)を付番する。
【0005】
〔デバイスB(ノードB)〕
ルータと呼ばれ、コーディネータよりも下層に存在し、上位のデバイスおよび下位のデバイスと接続通信でき、コーディネータからの命令を受けるとともに、下位のデバイス(ルータ、又はエンドデバイス)を接続することができ、それらデバイスに対しては局地的な親局の役割を果たす。また、自己と親子関係を結ぶデバイスに通信アドレス(ネットワークアドレス)を付番する。例えば、空調制御システムではVAVコントローラなどがルータとされる。
【0006】
〔デバイスC(ノードC)〕
エンドデバイスと呼ばれ、ネットワークの各枝の末端(最下位)に存在し、親子関係を結んだ上位のデバイス(親デバイス)と接続通信でき、他のデバイスの親局にはならない。例えば、空調制御システムでは、温度センサや湿度センサなどのセンサがエンドデバイスとされる。
【0007】
このジグビーネットワークでは、各ノードの種別や階層を定義するために、通信アドレスとは別に論理アドレスが各ノードに設定される。この論理アドレスは、システム構成に応じて個別に定められ、通常、手動で設定される。
【0008】
また、このジグビーネットワークにおいて、エンドデバイスは、電源投入時、自己の論理アドレスから割り出される送信先の上位のデバイスの論理アドレスを含む論理アドレス問合せメッセージをマルチキャストで直接通信可能な圏内に位置する上位のデバイスへ送り、この論理アドレス問合せメッセージに含まれる論理アドレスが自己の論理アドレスと一致する上位のデバイスからの論理アドレス応答メッセージを受けて、その上位のデバイスとの間で親子関係を結び、この親子関係を結んだ上位のデバイス(親デバイス)を宛先デバイスとし、この宛先デバイスに対して直接、メッセージの送信を行う。この場合のエンドデバイスと宛先デバイスとの間の通信を直接通信と呼ぶ。
【0009】
また、このジグビーネットワークにおいて、エンドデバイスは、宛先デバイスとの間の直接通信中、マルチパスフェージングなどの電波変動の影響を受けて通信不能に陥った場合、宛先デバイスとの親子関係を解除し、直接通信可能な圏内に位置する他の上位のデバイスと親子関係を結び、この親子関係を結んだ上位のデバイスを仮の親デバイスとし、この仮の親デバイスを通して宛先デバイス(本来の親デバイス)に対して間接的に、メッセージの送信を行う。この場合のエンドデバイスと宛先デバイスとの間の通信を間接通信と呼ぶ。なお、マルチパスフェージングとは、複数の通信電波反射経路の間に発生する位相差により受信電波が打ち消され、受信ができなくなる現象をいう。
【0010】
このジグビーネットワークにおいて、エンドデバイスが間接通信を行う場合、仮の親デバイスが宛先デバイスまでのルート探索を実行することにより、最適なルートで宛先デバイスへのメッセージの送信が行われる。具体的には、エンドデバイスからのメッセージの送信時にルート探索を指定することで、仮の親デバイスが現在の電波状況に最適なルートをメッシュ構造から選択し、メッセージを転送する。これにより、1つの通信経路がマルチパスフェージングなどの電波変動の影響を受けて通信不能に陥ったとしても、他の通信経路を探索して通信を継続することができる。このため、エンドデバイスから宛先デバイスまでの往路では、メッセージ転送が途中で途切れてしまうことはない。
【0011】
しかしながら、宛先デバイスからエンドデバイスまでの還路では、返送先がエンドデバイスとなるため、宛先デバイスにおいてエンドデバイスまでのルート探索を行うことができない。このため、従来においては、通信アドレスのツリー・ルート情報に基づいた単一のルートに従って、宛先デバイスからエンドデバイスまでメッセージの返信を行うようにしており、電波状況などによってはメッセージ転送が途中で途切れてしまうことがあった。
【先行技術文献】
【特許文献】
【0012】
【特許文献1】特開2006−5928号公報
【特許文献2】特開2006−42370号公報
【発明の概要】
【発明が解決しようとする課題】
【0013】
そこで、本出願人は、先頃、エンドデバイスが自己の親デバイス以外の上位のデバイスを宛先デバイスとしてとしてメッセージを送信する場合、エンドデバイスから自己の親デバイスに対して、送信元のアドレスとして自己の通信アドレスと、最終的な送信先のアドレスとして宛先デバイスの通信アドレスとを、代理通信を実行するか否かの情報として代理通信要求情報と、ルート探索を実行するか否かの情報としてルート探索要求情報とを少なくとも含む代理要求メッセージを送信し、宛先デバイスへのメッセージの送信を行う発明(以下、代理通信方式の発明と呼ぶ)を提案した(特願2010−193531号)。この代理通信方式の発明において、自己の親デバイスを仮の親デバイス、宛先デバイスを本来の親デバイスと考えれば、仮の親デバイスに代理要求メッセージが送信され、この仮の親デバイスを通して宛先デバイス(本来の親デバイス)との間の代理通信方式による間接通信が行われるものとなる。
【0014】
この場合、仮の親デバイスは、エンドデバイスからのメッセージに含まれるルート探索要求情報がルート探索を実行することを示していた場合、自デバイスから宛先デバイスまでの往還ルートの探索を実行する。また、エンドデバイスからのメッセージに含まれる代理通信要求情報が代理通信を実行することを示していた場合、そのメッセージに含まれている送信元のアドレス(エンドデバイスの通信アドレス)と最終的な送信先のアドレス(宛先デバイスの通信アドレス)との対を代理情報として記憶する一方、そのメッセージに含まれている送信元のアドレスを自己の通信アドレスに書き替えて宛先デバイスへの代理メッセージとし、この代理メッセージを探索された往ルートに従う次の送信先のデバイスへ送信する。
【0015】
宛先デバイスは、仮の親デバイスからの代理メッセージを受信した場合、仮の親デバイスにより探索された還ルートに従う次の送信先のデバイスに対して、返信元のアドレスとして自己の通信アドレスを、最終的な返信先のアドレスとして仮の親デバイスの通信アドレスを少なくとも含むメッセージを返信する。仮の親デバイスは、宛先デバイスからのメッセージを受信した場合、そのメッセージに含まれている返信元のアドレスと一致するアドレスが代理情報中に最終的な送信先のアドレスとして存在するか否かを確認し、代理情報中に一致するアドレスが存在することが確認された場合、その一致するアドレス(宛先デバイスの通信アドレス)と対として記憶されている代理情報中の送信元のアドレス(エンドデバイスの通信アドレス)を読み出し、宛先デバイスからのメッセージに含まれている返信先のアドレスをその読み出した送信元のアドレスに書き替え、そのメッセージをエンドデバイスに返信する。この際、仮の親デバイスは、その時に用いた代理情報(エンドデバイスの通信アドレスと宛先デバイスの通信アドレスとの対)を削除する。これにより、エンドデバイスから宛先デバイスまでの往路だけではなく、宛先デバイスからエンドデバイスまでの還路でも、メッセージ転送が途中で途切れてしまうことがなくなる。
【0016】
しかしながら、この場合、仮の親デバイスを通しての間接通信はマルチホップで行われるため、一般的に通信時間が長くなる。そのため、消費電力が増大し、エンドデバイスを電池駆動とする場合、電池寿命が短くなる虞がある。
【0017】
本発明は、このような課題を解決するためになされたもので、その目的とするところは、間接通信の還路でもエンドデバイスと宛先デバイスとの間の通信が途切れることがなく、かつ、エンドデバイスの消費電力の増大を抑えることができる無線通信システムを提供することにある。
【課題を解決するための手段】
【0018】
このような目的を達成するために本発明は、最下位に位置するエンドデバイスと、このエンドデバイスと直接通信可能な圏内に位置する複数の上位デバイスとを備え、上位デバイスの1つをエンドデバイスからのメッセージの最終的な送信先である宛先デバイスとするツリー構造の無線通信システムにおいて、エンドデバイスは、宛先デバイスと親子関係を結び、当該宛先デバイスに対して直接、メッセージの送信を行う直接通信手段と、直接通信手段からのメッセージに対する宛先デバイスからの応答メッセージが受信されない場合、宛先デバイスとの親子関係を解除し、他の上位デバイスと親子関係を結び、この親子関係を結んだ上位デバイスを仮の親デバイスとし、この仮の親デバイスに対して送信元のアドレスとして自己の通信アドレスを、最終的な送信先のアドレスとして宛先デバイスの通信アドレスを、代理通信を実行するか否かの情報として代理通信要求情報を、ルート探索を実行するか否かの情報としてルート探索要求情報を少なくとも含む代理要求メッセージを送信し、宛先デバイスへの間接的なメッセージの送信を開始する間接通信手段と、間接通信手段による宛先デバイスへの間接的なメッセージの送信が行われている間、所定の周期で、宛先デバイスとの間の直接通信が可能か否かを確認する直接通信復帰確認手段と、直接通信復帰確認手段によって宛先デバイスとの間の直接通信が可能になったことが確認された場合、仮の親デバイスとの親子関係を解除し、宛先デバイスとの間の親子関係を復帰させ、直接通信手段による宛先デバイスへのメッセージの直接送信を再開させる直接通信再開手段とを備えることを特徴とする。
【0019】
本発明において、エンドデバイスは、直接通信可能な圏内に位置する宛先デバイスと親子関係を結び、この宛先デバイスを親デバイス(本来の親デバイス)として直接通信を行う。ここで、マルチパスフェージングなどの電波変動の影響を受けて、宛先デバイスとの間の直接通信が不能になると、宛先デバイスとの親子関係を解除し、他の上位デバイスと親子関係を結び、この親子関係を結んだ上位デバイスを仮の親デバイスとし、この仮の親デバイスを通して宛先デバイスとの間の代理通信方式による間接通信を開始する。これにより、間接通信の往路だけではなく、間接通信の還路でもエンドデバイスと宛先デバイスとの間の通信が途切れることがなくなる。
【0020】
また、本発明において、エンドデバイスは、宛先デバイスとの間で間接通信を行っている間、所定の周期で、宛先デバイスとの間の直接通信が可能か否かを確認し、宛先デバイスとの間の直接通信が可能になったことを確認すると、仮の親デバイスとの親子関係を解除し、宛先デバイスとの間の親子関係を復帰させ、宛先デバイスとの間の直接通信を再開する。これにより、マルチパスフェージングなどの電波変動の影響を受けている間だけ、エンドデバイスと宛先デバイスとの間の通信が間接通信となり、それ以外の間は直接通信となるため、エンドデバイスの消費電力の増大が抑えられる。
【発明の効果】
【0021】
本発明によれば、エンドデバイスにおいて、宛先デバイスとの間で直接通信が行えなくなった場合、直接通信から代理通信方式による間接通信に切り替えられるので、間接通信の往路だけではなく、間接通信の還路でもエンドデバイスと宛先デバイスとの間の通信が途切れることがなくなる。
また、本発明によれば、エンドデバイスにおいて、間接通信を行っている間、所定の周期で、宛先デバイスとの間の直接通信が可能か否かが確認され、宛先デバイスとの間の直接通信が可能になったことが確認された場合、間接通信から直接通信に切り替えられるので、エンドデバイスの消費電力の増大が抑えられ、エンドデバイスを電池駆動とする場合、電池寿命を長くすることができるようになる。
【図面の簡単な説明】
【0022】
【図1】本発明に係る無線通信システムの一実施の形態として構築されたジグビーネットワークの要部を示す図である。
【図2】このジグビーネットワークにおけるエンドデバイスと宛先デバイスとの間の通信が直接通信から間接通信へ切り替えられる場合のシーケンス図である。
【図3】このジグビーネットワークにおけるエンドデバイスと宛先デバイスとの間の通信が直接通信から間接通信へ切り替えられる場合のシーケンス図(図2に続くシーケンス図)である。
【図4】このジグビーネットワークにおけるエンドデバイスと宛先デバイスとの間の通信が直接通信から間接通信へ切り替えられた状態を示す図である。
【図5】このジグビーネットワークにおける間接通信に切り替えられた状態でのエンドデバイスから宛先デバイスへのメッセージの送信時のシーケンス図である。
【図6】このジグビーネットワークにおける間接通信に切り替えられた状態での宛先デバイスからエンドデバイスへのメッセージの返信時のシーケンス図である。
【図7】このジグビーネットワークにおける間接通信中のリトライ送信を説明するシーケンス図である。
【図8】このジグビーネットワークにおけるエンドデバイスと宛先デバイスとの間の通信が間接通信から直接通信へ切り替えられる場合のシーケンス図である。
【図9】このジグビーネットワークにおけるエンドデバイスと宛先デバイスとの間の通信が間接通信から直接通信へ切り替えられる場合のシーケンス図(図8に続くシーケンス図)である。
【図10】このジグビーネットワークにおけるエンドデバイスと宛先デバイスとの間の通信が間接通信から直接通信へ切り替えられた状態を示す図である。
【図11】このジグビーネットワークにおけるエンドデバイスの要部の機能ブロック図である。
【図12】このジグビーネットワークにおける仮の親デバイスの要部の機能ブロック図である。
【図13】このジグビーネットワークにおける転送デバイスの要部の機能ブロック図である。
【図14】このジグビーネットワークにおける宛先デバイスの要部の機能ブロック図である。
【発明を実施するための形態】
【0023】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。
図1はこの発明に係る無線通信システムの一実施の形態として構築されたジグビーネットワークの要部を示す図である。同図において、1は最下位に位置するエンドデバイス、2−1〜2−3はエンドデバイス1と直接通信可能な圏内に位置する複数のルータ(上位デバイス)、3はコーディネータである。
【0024】
このジグビーネットワークにおいて、エンドデバイス1の通信アドレスは「0x0ff7」、ルータ2−1の通信アドレスは「0x0001」、ルータ2−2の通信アドレスは「0x0002」、ルータ2−3の通信アドレスは「0x0003」、コーディネータ3の通信アドレスは「0x0000」とされている。また、エンドデバイス1の論理アドレスは「#0301」、ルータ2−1の論理アドレスは「#01」、ルータ2−2の論理アドレスは「#02」、ルータ2−3の論理アドレスは「#03」、コーディネータ3の論理アドレスは「#0」とされている。
【0025】
また、このジグビーネットワークにおいて、エンドデバイス1は、電源投入時、自己の論理アドレス「#0301」から割り出される送信先の上位のデバイスの論理アドレス「#03」を含む論理アドレス問合せメッセージをマルチキャストで直接通信可能な圏内に位置するルータ2(2−1〜2−3)へ送り、この論理アドレス問合せメッセージに含まれる論理アドレス「#03」が自己の論理アドレスと一致するルータ2−3からの論理アドレス応答メッセージを受けて、このルータ2−3との間で親子関係を結び、この親子関係を結んだルータ2−3を親デバイスとし、この親デバイス2−3との間で直接通信を行っている。
【0026】
すなわち、エンドデバイス1を送信元デバイスとした場合、この送信元デバイスからのメッセージの最終的な送信先(宛先)を親デバイス2−3とし、この親デバイス2−3との間で直接通信を行っている。以下、親デバイス2−3を宛先デバイスと呼ぶ。
【0027】
なお、エンドデバイス1は、宛先デバイス2−3からの論理アドレス応答メッセージから宛先デバイス2−3の通信アドレス「0x0003」を取得し、この取得した宛先デバイス2−3の通信アドレス「0x0003」を親デバイスの通信アドレスとしてメモリに記憶している。また、宛先デバイス2−3は、論理アドレス問合せメッセージからエンドデバイス1の通信アドレス「0x0ff7」を取得し、この取得した通信アドレス「0x0ff7」を子デバイスの通信アドレスとしてメモリに記憶している。
【0028】
〔直接通信から間接通信への切り替え〕
図2および図3にエンドデバイス1と宛先デバイス2−3との間の通信が直接通信から間接通信へ切り替えられる場合のシーケンス図を示す。以下、このシーケンス図を参照しながら、エンドデバイス1と宛先デバイス2−3との間の通信が直接通信から間接通信へ切り替えられる様子を説明する。
【0029】
〔直接通信〕
エンドデバイス1は、宛先デバイス2−3にメッセージの送信を行う(図2:矢印(1))。その後、エンドデバイス1は、宛先デバイス2−3からの返信の時限監視を行う。
【0030】
宛先デバイス2−3は、エンドデバイス1からのメッセージを受信すると、エンドデバイス1に対して応答メッセージを送信する(図2:矢印(2))。
【0031】
エンドデバイス1は、時限監視がタイムアウトする前に宛先デバイス2−3からの応答メッセージを受信すると、宛先デバイス2−3へのメッセージの送信が正常に行われたと判断する。
【0032】
このようにして、通常は、エンドデバイス1が定期的にメッセージの送信を繰り返し、エンドデバイス1と宛先デバイス2−3との間の直接通信が行われている。
【0033】
〔マルチパスフェージングによる通信断の発生〕
ここで、エンドデバイス1と宛先デバイス2−3との間の直接通信の経路にマルチパスフェージングによる通信断が発生すると、エンドデバイス1から送信されるメッセージに対し(図2:矢印(3))、宛先デバイス2−3からの応答メッセージが受信されないため(図2:矢印(4))、エンドデバイス1の時限監視がタイムアウトする。
【0034】
この場合、エンドデバイス1は、N回のリトライ送信を行う(図2:矢印(5)〜(8))。このN回のリトライ送信でも、宛先デバイス2−3からの応答メッセージが受信されなければ、エンドデバイス1と宛先デバイス2−3との間の直接通信にマルチパスフェージングによる通信断が発生したと判断する。
【0035】
なお、N回のリトライ送信の途中で、宛先デバイス2−3からの応答メッセージが受信されるならば、エンドデバイス1と宛先デバイス2−3との間の直接通信を継続する。
【0036】
〔ネットワークからの離脱〕
エンドデバイス1は、マルチパスフェージングによる通信断が発生したと判断すると、宛先デバイス2−3との親子関係を解除し、ネットワークから離脱する(図3:(1))。但し、宛先デバイス2−3の通信アドレスは、本来の親デバイスの通信アドレスとしてそのまま記憶し続ける。
【0037】
〔ネットワークへの再参加〕
エンドデバイス1は、ネットワークから離脱した後、直接通信可能な圏内に位置する他のルータ2の子デバイスとして、ネットワークに再参加する。このネットワークへの再参加は次のようにして行う。
【0038】
エンドデバイス1は、直接通信可能な圏内に位置するルータ2(2−1〜2−3)にビーコン要求メッセージ(Beacon request)をマルチキャスト送信する(図3:矢印(2))。直接通信可能な圏内に位置するルータ2(2−1〜2−3)は、ビーコン要求メッセージを受信すると、自分が受信している送信元のエンドデバイス1の電波強度(RSSI)を含むビーコン応答メッセージ(Beacon response)をエンドデバイス1に返信する(図3:矢印(3))。
【0039】
エンドデバイス1は、直接通信可能な圏内に位置するルータ2(2−1〜2−3)からのビーコン応答メッセージを受信すると、そのビーコン応答メッセージに含まれる電波強度を取り出し、電波強度の強いデバイス(X個)をメモリに候補として記憶する。そして、このメモリに記憶した候補のデバイス(X個)に対して、ネットワーク参加を試みる。
【0040】
この場合、最初は、電波強度が1番強い候補のデバイスに対してアソシエーション要求メッセージ(Association request)を送信し、このアソシエーション要求メッセージに対する応答メッセージとしてアソシエーション応答メッセージ(Association response)が受信されない場合には、電波強度が次に強い候補のデバイスに対してアソシエーション要求メッセージを送信する、という動作を繰り返す。
【0041】
この例では、電波強度が1番強い候補のデバイスとしてルータ2−2を選択し、この選択したルータ2−2に対してアソシエーション要求メッセージを送信している(図3:矢印(4))。そして、ルータ2−2からのアソシエーション応答メッセージが受信されないので(図3:矢印(5))、次に電波強度が強い候補のデバイスとしてルータ2−1を選択し、この選択したルータ2−1に対してアソシエーション要求メッセージを送信し(図3:矢印(6))、ルータ2−1からのアソシエーション応答メッセージを受信している(図3:矢印(7))。
【0042】
なお、この場合、宛先デバイス2−3が候補になることもあるが、この時点で宛先デバイス2−3を親デバイスとしてネットワークへ再参加した場合、通信が不安定になる可能性がある。このため、宛先デバイス2−3のみが候補となる場合を除き、原則として宛先デバイス2−3は除外する。宛先デバイス2−3が候補になったか否かについては、その通信アドレスが本来の親デバイスの通信アドレスとしてメモリに記憶されているので、その情報を参照して判断する。
【0043】
また、全ての候補のデバイスに対してアソシエーション要求メッセージを送信したにも拘わらず、アソシエーション応答メッセージが受信されない場合には、ビーコン要求メッセージのマルチキャスト送信からの処理へと戻る(図3の矢印(2))。
【0044】
エンドデバイス1は、ルータ2−1からのアソシエーション応答メッセージを受信すると(図3:矢印(7))、ルータ2−1と親子関係を結び、この親子関係を結んだルータ2−1を仮の親デバイスとし、代理通信方式による間接通信を開始する。
【0045】
このようにして、エンドデバイス1は、宛先デバイス2−3との間の直接通信中、マルチパスフェージングによる通信断が発生すると、ルータ2−1を仮の親デバイスとする代理通信方式による間接通信に切り替える(図4参照)。
【0046】
〔代理通信方式による間接通信〕
〔エンドデバイスから宛先デバイスへのメッセージの送信(往路)〕
図5にエンドデバイス1から宛先デバイス2−3へのメッセージの送信時のシーケンス図を示す。以下、このシーケンス図を参照しながら、エンドデバイス1からのメッセージが仮の親デバイス2−1を通して宛先デバイス2−3に送られる様子を説明する。
【0047】
〔エンドデバイス(送信元)〕
エンドデバイス1は、データを含むメッセージM1の送信時、そのメッセージM1中の、MAC層の送信元アドレスに自己の通信アドレス「0x0ff7」を、MAC層の送信先アドレスに仮の親デバイス2−1の通信アドレス「0x0001」を、NWK層の送信元アドレスに自己の通信アドレス「0x0ff7」を、NWK層の送信先アドレスに宛先デバイス2−3の通信アドレス「0x0003」を書き込む。なお、このメッセージM1において、MAC層の送信先アドレスは次の送信先のアドレスを示し、NWK層の送信先アドレスは最終的な送信先(宛先)のアドレスを示す。
【0048】
また、エンドデバイス1は、メッセージM1中の、NWK層のフレームコントロールの代理通信要求ビットを「1」(セット)とし、ルート探索要求ビットを「1」(セット)とする。なお、代理通信要求ビットはメッセージM1の送信毎にそのビットを「1」とするが、ルート探索要求ビットは初回送信時、または、アプリケーション層が双方向通信のタイムアウトを検出した場合のリトライ送信時にのみ、そのビットを「1」とする。
【0049】
そして、エンドデバイス1は、このメッセージM1を代理要求メッセージとして仮の親デバイス2−1へ送信する(図5:矢印(1))。
【0050】
〔仮の親デバイス〕
仮の親デバイス2−1は、エンドデバイス1からのメッセージM1を受信すると、このメッセージM1中のNWK層のフレームコントロールを確認する。ここで、NWK層のフレームコントロールにおいて、ルート探索要求ビットが「1」とされていれば、NWK層の送信先アドレスから宛先デバイス2−3の通信アドレス「0x0003」を取得し、自デバイスから宛先デバイス2−3までの往還ルートの探索を実行する(図5:(2))。この往還ルートの探索により、仮の親デバイス2−1から宛先デバイス2−3までの往還ルートを決めるルーティングテーブルRTB1〜3が各デバイス内に作成される。
【0051】
そして、仮の親デバイス2−1は、この往還ルートの探索の実行後、NWK層のフレームコントロールにおけるルート探索要求ビットを「0」(クリア)とする。なお、この例において、往ルートは、ルータ2−1(仮の親デバイス)→ルータ2−2(転送デバイス)→ルータ2−3(宛先デバイス)として作成されるものとする。また、還ルートは、ルータ2−3(宛先デバイス)→ルータ2−2(転送デバイス)→ルータ2−1(仮の親デバイス)として作成されるものとする。
【0052】
また、仮の親デバイス2−1は、メッセージM1のNWK層のフレームコントロールにおいて、代理通信要求ビットが「1」とされていれば、NWK層の送信元アドレスとNWK層の送信先アドレスを読み取り、この読み取ったNWK層の送信元アドレスとNWK層の送信先アドレスとの対を代理情報として送信要求テーブルTB1に登録(セット)する(図5:(3))。
【0053】
この場合、メッセージM1中のNWK層の送信元アドレスはエンドデバイス1の通信アドレス「0x0ff7」とされ、NWK層の送信先アドレスは宛先デバイス2−3の通信アドレス「0x0003」とされているので、この通信アドレス「0x0ff7」と「0x0003」の対を代理情報として送信要求テーブルTB1に登録する。この送信要求テーブルTB1は仮の親デバイス2−1のメモリに記憶される。
【0054】
また、仮の親デバイス2−1は、送信要求テーブルTB1への代理情報の登録後、メッセージM1中のNWK層の送信元アドレスを自アドレスに書き替える。この場合、NWK層の送信元アドレスはエンドデバイス1の通信アドレス「0x0ff7」とされているので、この通信アドレス「0x0ff7」を仮の親デバイス2−1の通信アドレス「0x0001」に書き替える。そして、仮の親デバイス2−1は、NWK層のフレームコントロールにおける代理通信要求ビットを「0」(クリア)とする。
【0055】
次に、仮の親デバイス2−1は、ルーティングテーブルRTB1から次の送信先のデバイスの通信アドレス(次転送アドレス)を取得し、MAC層の送信先アドレスを次転送アドレスに書き替える。この場合、次転送アドレスはルータ2−2の通信アドレス「0x0002」として取得されるので、MAC層の送信先アドレスを「0x0002」に書き替える。また、これと合わせて、MAC層の送信元アドレスを自アドレス、すなわち仮の親デバイス2−1の通信アドレス「0x0001」に書き替える。
【0056】
そして、仮の親デバイス2−1は、この書き替えられたメッセージM1を代理メッセージM1’とし、この代理メッセージM1’を、次の送信先のデバイスであるルータ2−2(転送デバイス)へ送信する(図5:矢印(4))。なお、代理メッセージM1’は、NWK層の送信元アドレスが仮の親デバイス2−1の通信アドレス「0x0001」に書き替えられていることを大きな特徴としている。
【0057】
〔転送デバイス〕
転送デバイス2−2は、仮の親デバイス2−1からの代理メッセージM1’を受信すると、この代理メッセージM1’中のNWK層のフレームコントロールを確認する。この場合、NWK層のフレームコントロールにおいて、代理通信要求ビットは「0」とされているので、代理通信の処理は行わず、ルーティングテーブルRTB2から次の送信先のデバイスの通信アドレス(次転送アドレス)を取得し、MAC層の送信先アドレスを次転送アドレスに書き替える。この場合、次転送アドレスはルータ2−3の通信アドレス「0x0003」として取得されるので、MAC層の送信先アドレスを「0x0003」に書き替える。また、これと合わせて、MAC層の送信元アドレスを自アドレス、すなわち転送デバイス2−2の通信アドレス「0x0002」に書き替える。
【0058】
そして、転送デバイス2−2は、この書き替えられた代理メッセージM1’を代理メッセージM1”とし、次の送信先のデバイスであるルータ2−3(宛先デバイス)へ送信する(図5:矢印(5))。なお、代理メッセージM1”において、NWK層の送信元アドレスは、仮の親デバイス2−1の通信アドレス「0x0001」のままである。
【0059】
〔宛先デバイス(送信先)〕
宛先デバイス2−3は、転送デバイス2−2からの代理メッセージM1”を受信すると、この受信した代理メッセージM1”を処理する。
【0060】
〔宛先デバイスからエンドデバイスへのメッセージの返信(還路)〕
図6に宛先デバイス2−3からエンドデバイス1へのメッセージの返信時のシーケンス図を示す。以下、このシーケンス図を参照しながら、宛先デバイス2−3からのメッセージが仮の親デバイス2−1を通してエンドデバイス1へ送られる様子を説明する。
【0061】
〔宛先デバイス(返信元)〕
宛先デバイス2−3は、転送デバイス2−2からの代理メッセージM1”(図5参照)を受信すると、この代理メッセージM1”中のNWK層の送信元アドレスから仮の親デバイス2−1の通信アドレス「0x0001」を取得する。
【0062】
宛先デバイス2−3は、データを含むメッセージM2の返信時、そのメッセージM2中の、MAC層の返信元アドレスに自己の通信アドレス「0x0003」を、MAC層の返信先アドレスにルーティングテーブルRTB3から次の返信先の通信アドレス(次転送アドレス)として取得されるルータ2−2の通信アドレス「0x0002」を書き込む。また、NWK層の返信元アドレスに自己の通信アドレス「0x0003」を、NWK層の返信先アドレスに仮の親デバイス2−1の通信アドレス「0x0001」を書き込む。また、NWK層のフレームコントロールの代理通信要求ビットを「0」(クリア)とする。
【0063】
そして、宛先デバイス2−3は、このメッセージM2を次の返信先のデバイスであるルータ2−2(転送デバイス)へ返信する(図6:矢印(1))。
【0064】
〔転送デバイス〕
転送デバイス2−2は、宛先デバイス2−3からのメッセージM2を受信すると、このメッセージM2中のNWK層のフレームコントロールを確認する。この場合、NWK層のフレームコントロールにおいて、代理通信要求ビットは「0」とされているので、代理通信の処理は行わず、ルーティングテーブルRTB2から次の返信先のデバイスの通信アドレス(次転送アドレス)を取得し、MAC層の返信先アドレスを次転送アドレスに書き替える。この場合、次転送アドレスはルータ2−1の通信アドレス「0x0001」として取得されるので、MAC層の返信先アドレスを「0x0001」に書き替える。また、これと合わせて、MAC層の返信元アドレスを自アドレス、すなわち転送デバイス2−2の通信アドレス「0x0002」に書き替える。
【0065】
そして、転送デバイス2−2は、この書き替えられたメッセージM2をメッセージM2’とし、次の返信先のデバイスであるルータ2−1(仮の親デバイス)へ送信する(図6:矢印(2))。なお、メッセージM2’において、NWK層の返信先アドレスは、仮の親デバイス2−1の通信アドレス「0x0001」のままである。
【0066】
〔仮の親デバイス〕
仮の親デバイス2−1は、転送デバイス2−2からのメッセージM2’を受信すると、そのメッセージM2’中のNWK層の返信元アドレスと一致するアドレスが送信要求テーブルTB1中にNWK層の送信先アドレスとして存在するか否かを確認する。この場合、メッセージM2’中のNWK層の返信元アドレスは「0x0003」であり、送信要求テーブルTB1に登録されているNWK層の送信先アドレスは「0x0003」であり、送信要求テーブルTB1中に一致するアドレスが存在する。
【0067】
仮の親デバイス2−1は、送信要求テーブルTB1中に一致するアドレスが存在することを確認すると、その一致するアドレスと対として登録されているNWK層の送信元アドレスを読み出し、メッセージM2’中のNWK層の返信先アドレスをその読み出したNWK層の送信元アドレスに書き替えるとともに、その時に用いた送信要求テーブルTB1中の代理情報(NWK層の送信元アドレスと送信先アドレスとの対)を削除(クリア)する。
【0068】
この場合、送信要求テーブルTB1に「0x0003」と対として登録されているNWK層の送信元アドレスは「0x0ff7」であるので、メッセージM2’中のNWK層の返信先アドレス「0x0001」を「0x0ff7」に書き替える。そして、送信要求テーブルTB1に登録されているNWK層の送信元アドレス「0x0ff7」と送信先のアドレス「0x0003」との対を削除する。
【0069】
また、仮の親デバイス2−1は、メッセージM2’中のMAC層の返信先アドレスを「0x0ff7」に書き替え、これと合わせて、MAC層の返信元アドレスを自アドレス、すなわち仮の親デバイス2−1の通信アドレス「0x0001」に書き替える。
【0070】
そして、仮の親デバイス2−1は、この書き替えられたメッセージM2’をメッセージM2”とし、エンドデバイス1へ返送する(図6:矢印(3))。
【0071】
なお、仮の親デバイス2−1は、送信要求テーブルTB1にメッセージM2’中のNWK層の返信元アドレスと一致するNWK層の送信先アドレスが存在しなかった場合、そのメッセージM2’を自アドレス宛てのメッセージとして処理する。
【0072】
〔エンドデバイス(返信先)〕
エンドデバイス1は、仮の親デバイス2−1からのメッセージM2”を受信すると、この受信したメッセージM2”を処理する。
【0073】
なお、エンドデバイス1は、メッセージM1の送信後(図5:矢印(1))、宛先デバイス2−3からの返信の時限監視を行い、宛先デバイス2−3からの返信がなく、時限監視がタイムアウトする場合、N回のリトライ送信を行う。このN回のリトライ送信の途中で、宛先デバイス2−3からの返信が確認されれば、初回の代理通信が成功したと判断して、2回目以降の代理通信に移行する。N回のリトライ送信でも、宛先デバイス2−3からの返信が確認されなければ、マルチパスフェージングによる通信断が発生したと判断し、ネットワークからの離脱からの処理へと戻る(図3:(1))。
【0074】
2回目以降の代理通信では、メッセージM1中の、 NWK層のフレームコントロールの代理通信要求ビットを「1」(代理通信)とするが、ルート探索要求ビットは「0」(ルート探索なし)とする。この場合も、エンドデバイス1は、メッセージM1の送信後(図7:矢印(1))、宛先デバイス2−3からの返信の時限監視を行う。
【0075】
エンドデバイス1は、宛先デバイス2−3からの返信がなく、時限監視がタイムアウトする場合、N回のリトライ送信を行う(図7:矢印(12))。この時のリトライ送信では、ルート探索ありでメッセージM1を送信する。このN回のリトライ送信の途中で、宛先デバイス2−3からの返信が確認されれば(図7:矢印(18))、探索された経路で代理通信を継続する。N回のリトライ送信でも、宛先デバイス2−3からの返信が確認されなければ、マルチパスフェージングによる通信断が発生したと判断し、ネットワークからの離脱からの処理へと戻る(図3:(1))。
【0076】
このようにして、本実施の形態では、エンドデバイス1において、宛先デバイス2−3との間で直接通信が行えなくなった場合、直接通信から代理通信方式による間接通信に切り替えられるので、間接通信の往路だけではなく、間接通信の還路でもエンドデバイス1と宛先デバイス2−3との間の通信が途切れることがなくなる。
【0077】
〔間接通信から直接通信への切り替え〕
図8および図9にエンドデバイス1と宛先デバイス2−3との間の通信が間接通信から直接通信へ切り替えられる場合のシーケンス図を示す。以下、このシーケンス図を参照しながら、エンドデバイス1と宛先デバイス2−3との間の通信が間接通信から直接通信へ切り替えられる様子を説明する。
【0078】
〔間接通信中の直接通信の可否の確認〕
エンドデバイス1は、宛先デバイス2−3と間接通信を行っている間、所定の周期(例えば、3分に1回)で、自己の論理アドレス「#0301」から、例えば、#以降の2文字(#03)を所得するなどのルールによって割り出される送信先の上位のデバイスの論理アドレス「#03」を含む論理アドレス問合せメッセージを、直接通信可能な圏内に位置するルータ2(2−1〜2−3)へマルチキャストで送信する(図8:矢印(1))。
【0079】
この時、エンドデバイス1は、送信されたメッセージがネットワーク全体にフラッディングしないように、ホップ数=1ホップを指定する。また、論理アドレス問合せメッセージの送信後、その論理アドレス問合せメッセージに対する返信を時限監視する。
【0080】
直接通信可能な圏内に位置するルータ2(2−1〜2−3)は、エンドデバイス1からの論理アドレス問合せメッセージを受信すると、この論理アドレス問合せメッセージから論理アドレス「#03」を取り出し、自己の論理アドレスと比較する。ここで、ルータ2(2−1〜2−3)は、自己の論理アドレスと一致すれば、少なくとも自己の論理アドレスを含む論理アドレス応答メッセージをエンドデバイス1にダイレクト送信する。自己の論理アドレスと一致しない場合には、何も応答しない。
【0081】
この例では、宛先デバイス2−3の論理アドレスが「#03」であり、論理アドレス問合せメッセージから取り出される論理アドレス「#03」と一致するので、宛先デバイス2−3が論理アドレス応答メッセージをエンドデバイス1にダイレクト送信するが、エンドデバイス1からの矢印(1)での論理アドレス問合せメッセージの送信時、直接通信の経路にはマルチパスフェージングによる通信断が発生しているので、宛先デバイス2−3が論理アドレス応答メッセージを送信したとしても(図8:矢印(2))、この送信された論理アドレス応答メッセージがエンドデバイス1において受信されることはない。
【0082】
これに対し、直接通信の経路のマルチパスフェージングによる通信断が解消されると、エンドデバイス1から送信される論理アドレス問合せメッセージに対して(図8:矢印(3))、宛先デバイス2−3が送信する論理アドレス応答メッセージがエンドデバイス1において受信されるものとなる(図8:矢印(4))。
【0083】
この場合、エンドデバイス1は、時限監視がタイムアウトする前に宛先デバイス2−3からの論理アドレス応答メッセージを受信すると、直接通信の経路のマルチパスフェージングによる通信断が解消されたと仮判断する。また、この時、エンドデバイス1は、メモリに記憶している宛先デバイス2−3の通信アドレスを更新する。
【0084】
そして、エンドデバイス1は、人の移動などにより一時的に通信断が解消されたのかもしれないので、宛先デバイス2−3に対してループバックテストをN回行って、通信断の最終判断を行う。このループパックテストは次のようにして行う。
【0085】
エンドデバイス1は、宛先デバイス2−3に対して、ループバックテスト要求メッセージ(確認要求メッセージ)を送信する(図8:矢印(5))。その後、エンドデバイス1は、宛先デバイス2−3からの返信の時限監視を行う。
【0086】
宛先デバイス2−3は、ループバックテスト要求メッセージを受信すると、エンドデバイス1に対してループバックテスト応答メッセージ(確認応答メッセージ)を返信する(図8:矢印(6))。
【0087】
エンドデバイス1は、時限監視がタイムアップする前にループバックテスト応答メッセージを受信すると、ループバックテスト成功と判断する。時限監視がタイムアウトしたら、ループバックテスト失敗と判断する。
【0088】
エンドデバイス1は、このループバックテストの実行回数を1回とし、このループバックテストが連続してN回成功した場合に(図8:矢印(7),(8))、通信断が解消されたと最終判断する。すなわち、宛先デバイス2−3との間の直接通信が可能になったと最終判断する。
【0089】
なお、ループバックテストの成功回数がN回未満なら、通信断が解消されていないと判断し、論理アドレス問合せメッセージの送信からの処理へと戻る(図8:矢印(1))。
【0090】
〔直接通信の再開〕
エンドデバイス1は、宛先デバイス2−3との間の直接通信が可能になったと最終判断すると、宛先デバイス2−3へ直接接続要求メッセージを送る(図9:矢印(1))。その後、エンドデバイス1は、宛先デバイス2−3からの返信の時限監視を行う。
【0091】
宛先デバイス2−3は、エンドデバイス1からの直接接続要求メッセージを受信すると、エンドデバイス1に対して直接接続応答メッセージを返信する(図9:矢印(2))。この時、宛先デバイス2−3は、エンドデバイス1を子デバイスとして登録する。
【0092】
エンドデバイス1は、時限監視がタイムアップする前に直接接続応答メッセージを受信すると、直接接続成功と判断する。なお、時限監視がタイムアップしたら、直接接続失敗と判断し、論理アドレス問合せメッセージの送信からの処理へと戻る(図8:矢印(1))。
【0093】
エンドデバイス1は、直接接続成功と判断すると、仮の親デバイス2−1へデバイス離脱要求を送る(図9:矢印(3)。仮の親デバイス2−1は、デバイス離脱要求を受信すると、エンドデバイス1をネットワークから離脱させる。この時、仮の親デバイス2−1は、エンドデバイス1の子デバイスとしての登録を削除する。これにより、ルータ2−1は仮の親デバイスから解放される。
【0094】
エンドデバイス1は、ネットワークから離脱した後、宛先デバイス2−3の子デバイスとして、ネットワークに再参加する。このネットワークへの再参加は次のようにして行う。
【0095】
エンドデバイス1は、宛先デバイス2−3にオーハン通知メッセージ(Orphan notification)メッセージを送信する(図9:矢印(4))。その後、エンドデバイス1は、宛先デバイス2−3からの返信の時限監視を行う。
【0096】
宛先デバイス2−3は、オーハン通知メッセージを受信すると、エンドデバイス1にオーハン確認メッセージ(Orphan realignment)を送信する(図9:矢印(5))。
エンドデバイス1は、時限監視がタイムアップする前にオーハン確認メッセージを受信すると、ネットワークへの参加が成功したと判断する。
【0097】
これにより、宛先デバイス2−3との間の親子関係が復帰し、宛先デバイス2−3との間の直接通信が再開される。すなわち、宛先デバイス2−3が親デバイスに戻り、エンドデバイス1と宛先デバイス2−3との間の通信が間接通信から直接通信に切り替えられ(図10参照)、エンドデバイス1と宛先デバイス2−3との間の直接通信が再開される(図2:矢印(1),(2))。
【0098】
このようにして、本実施の形態では、エンドデバイス1において、間接通信を行っている間、所定の周期で、宛先デバイス2−3との間の直接通信が可能か否かが確認され、宛先デバイス2−3との間の直接通信が可能になったことが確認された場合、間接通信から直接通信に切り替えられるので、エンドデバイス1の消費電力の増大が抑えられ、エンドデバイス1を電池駆動とする場合、電池寿命を長くすることができるようになる。
【0099】
〔機能ブロック図〕
図11は上述したジグビーネットワークにおけるエンドデバイス1の要部の機能ブロック図、図12は仮の親デバイス2−1の要部の機能ブロック図、図13は転送デバイス2−2の要部の機能ブロック図、図14は宛先デバイス2−3の要部の機能ブロック図である。エンドデバイス1、仮の親デバイス2−1、転送デバイス2−2、宛先デバイス2−3は、プロセッサや記憶装置からなるハードウェアと、これらのハードウェアと協働して各種機能を実現させるプログラムとによって実現される。
【0100】
エンドデバイス1は、宛先デバイス間親子関係締結部1Aと、直接通信処理部1Bと、宛先デバイス間親子関係解除部1Cと、仮の親子関係締結部1Dと、直接通信復帰確認部1Eと、直接通信再開指令部1Fと、仮の親子関係解除部1Gと、アドレス情報記憶部1Hと、間接通信処理部1Jとを備えている。間接通信処理部1Jはメッセージ処理部1Kとメッセージ受信部1Lとメッセージ送信部1Mとを備えている。
【0101】
エンドデバイス1において、宛先デバイス間親子関係締結部1Aは、宛先デバイス2−3との間で親子関係を結び、この宛先デバイス2−3を親デバイスとしてネットワークへ参加する。直接通信処理部1Bは、宛先デバイス間親子関係締結部1Aによって親子関係が結ばれた宛先デバイス2−3との間で、直接通信を行う。この宛先デバイス間親子関係締結部1Aと直接通信処理部1Bとの組み合わせが本発明でいう直接通信手段に相当する。
【0102】
なお、宛先デバイス間親子関係締結部1Aは、アドレス情報記憶部1Hに記憶されている自己の論理アドレス「#0301」から宛先デバイス2−3の論理アドレス「#03」を割り出し、アドレス情報記憶部1Hに記憶されている自己の通信アドレス「0x0ff7」を読み出し、宛先デバイス2−3との間で親子関係を結ぶ。また、宛先デバイス2−3の通信アドレス「0x0003」を取得し、アドレス情報記憶部1Hに記憶させる。
【0103】
宛先デバイス間親子関係解除部1Cは、直接通信処理部1Bにおいて宛先デバイス2−3からの応答メッセージが受信されない場合、宛先デバイス2−3との間の直接通信が不能となったと判断し、宛先デバイス2−3との間の親子関係を解除する。これにより、エンドデバイス1がネットワークから離脱する。
【0104】
仮の親子関係締結部1Dは、宛先デバイス間親子関係解除部1Cが宛先デバイス2−3との間の親子関係を解除したことを受けて、直接通信可能な圏内に位置する他のルータ2(この例では、ルータ2−1)と親子関係を結び、この親子関係を結んだルータ2−1を仮の親デバイスとしてネットワークへ再参加する。また、このネットワークへの再参加と同時に、間接通信処理部1Jへ間接通信の開始を指示する。また、仮の親デバイス2−1の通信アドレス「0x0001」を取得し、アドレス情報記憶部1Hに記憶させる。
【0105】
直接通信復帰確認部1Eは、間接通信処理部1Jによって宛先デバイス2−3との間で間接通信が行われている間、所定の周期で、宛先デバイス2−3との間の直接通信が可能か否かを確認する。この場合、アドレス情報記憶部1Hに記憶されている自己の論理アドレス「#0301」から宛先デバイス2−3の論理アドレス「#03」を割り出し、所定の周期で、論理アドレス「#03」を含む論理アドレス問合せメッセージをマルチキャスト送信し、この論理アドレス問合せメッセージに対する論理アドレス応答メッセージが受信された場合に、宛先デバイス2−3との間の直接通信が可能になったと判断する。
【0106】
この直接通信復帰確認部1Eが本発明でいう直接通信復帰確認手段に相当する。また、宛先デバイス間親子関係解除部1Cと仮の親子関係締結部1Dと間接通信処理部1Jとの組み合わせが本発明でいう間接通信手段に相当する。
【0107】
なお、宛先デバイス2−3には、図14に示されるように、論理アドレス確認応答部23Eが設けられている。論理アドレス確認応答部23Eは、エンドデバイス1からの論理アドレス問合せメッセージを受信した場合、この論理アドレス問合せメッセージに含まれる論理アドレスがアドレス情報記憶部23Aに記憶されている自己の論理アドレスと一致するか否かを判断し、自己の論理アドレスと一致する場合、エンドデバイス1に対して論理アドレス応答メッセージを送信する。この論理アドレス確認応答部23Eが本発明でいう論理アドレス確認応答手段に相当する
【0108】
直接通信再開指令部1Fは、直接通信復帰確認部1Eによって宛先デバイス2−3との間の直接通信が可能になったことが確認された場合、間接通信処理部1Jに間接通信の終了を指示すると共に、仮の親子関係解除部1Gに仮の親デバイス2−1との間の親子関係の解除を指示し、宛先デバイス間親子関係締結部1Aに宛先デバイス2−3との間の親子関係の復帰を指示する。これにより、仮の親デバイス2−1との間の親子関係が解除され(ネットワークから離脱)、宛先デバイス2−3との間の親子関係が復帰され(ネットワークへ再参加)、直接通信処理部1Bによる宛先デバイス2−3との間の直接通信が再開される。この直接通信再開指令部1Fが本発明でいう直接通信再開手段に相当する。
【0109】
〔間接通信:エンドデバイスから宛先デバイスへのメッセージの送信(往路)〕
間接通信処理部1Jにおいて、メッセージ処理部1Kは、宛先デバイス2−3にメッセージを送信する場合、アドレス情報記憶部1H中の自己の通信アドレス「0x0ff7」、仮の親デバイス2−1の通信アドレス「0x0001」、宛先デバイス2−3の通信アドレス「0x0003」を取得し、仮の親デバイス2−1へのメッセージM1(図5参照)を作成する。このメッセージM1には、ルート探索要求情報(ルート探索要求ビット)や代理通信要求情報(代理通信要求ビット)なども含まれる。
【0110】
この作成されたメッセージM1は、メッセージ送信部1Mより、仮の親デバイス2−1へ送信される。エンドデバイス1からのメッセージM1は仮の親デバイス2−1(図12)の第1のメッセージ受信部21Bで受信される。第1のメッセージ受信部21Bは、メッセージM1に含まれるルート探索要求情報がルート探索を実行することを示していた場合、すなわちルート探索要求ビットが「1」であった場合、往還ルート探索実行部21Cにルート探索の実行を指示する。この指示を受けて、往還ルート探索実行部21Cがルート探索を実行し、仮の親デバイス2−1から宛先デバイス2−3までの往還ルートを決めるルーティングテーブルRTB1〜3が各デバイス内に作成される。
【0111】
また、第1のメッセージ受信部21Bは、メッセージM1に含まれる代理通信要求情報が代理通信を実行することを示していた場合、すなわち代理通信要求ビットが「1」であった場合、その旨をメッセージM1と合わせて代理情報記憶部21Dおよび代理メッセージ送信部21Eに知らせる。
【0112】
代理情報記憶部21Dは、第1のメッセージ受信部21Bからの代理通信を実行する旨の知らせを受けて、メッセージM1に含まれているNWK層の送信元のアドレス(エンドデバイス1の通信アドレス「0x0ff7」)と送信先(最終的な送信先(宛先))のアドレス(宛先デバイス2−3の通信アドレス「0x0003」)を代理情報として記憶する。
【0113】
代理メッセージ送信部21Eは、第1のメッセージ受信部21Bからの代理通信を実行する旨の知らせを受けて、メッセージM1に含まれているNWK層の送信元のアドレス(エンドデバイス1の通信アドレス「0x0ff7」)を自己の通信アドレス(仮の親デバイス2−1の通信アドレス「0x0001」)に書き替える。また、MAC層の送信元アドレスを自己の通信アドレスとし、MAC層の送信先アドレスをルーティングテーブルRTB1に従う次の送信先のデバイスの通信アドレスとし、ルート探索要求ビットおよび代理通信要求ビットを「0」とする。そして、この書き替えを行ったメッセージM1を代理メッセージM1’として(図5参照)、次の送信先のデバイス(転送デバイス2−2)へ送信する。
【0114】
この仮の親デバイス2−1において、第1のメッセージ受信部21Bが本発明でいうメッセージ受信手段に相当し、往還ルート探索実行部21Cが往還ルート探索実行手段に相当し、代理情報記憶部21Dと代理メッセージ送信部21Eとの組合せが代理メッセージ送信処理手段に相当する。
【0115】
仮の親デバイス2−1からの代理メッセージM1’は、転送デバイス2−2(図13)の第1のメッセージ受信部22Bで受信され、第1のメッセージ転送部22Cへ送られる。第1のメッセージ転送部22Cは、代理メッセージM1’中のMAC層の送信元アドレスを自己の通信アドレスとし、MAC層の送信先アドレスをルーティングテーブルRTB2に従う次の送信先のデバイスの通信アドレスとし、このMAC層の送信元および送信先のアドレスを書き替えた代理メッセージM1’をM1”として(図5参照)、次の送信先のデバイス(宛先デバイス2−3)へ送信する。
【0116】
転送デバイス2−2からの代理メッセージM1”は、宛先デバイス2−3(図14)のメッセージ受信部23Cで受信され、メッセージ処理部23Bへ送られる。メッセージ処理部23Bは送られてきた代理メッセージM1”を処理する。
【0117】
〔間接通信:宛先デバイスからエンドデバイスへのメッセージの返信(還路)〕
メッセージ処理部23Bは、ルーティングテーブルRTB3から次の返信先の通信アドレス(転送デバイス2−2の通信アドレス「0x0002」)を取得し、メッセージM2を作成する。このメッセージM2中、メッセージ処理部23Bは、MAC層の返信元アドレスを自己の通信アドレス「0x0003」とし、MAC層の返信先アドレスを次の返信先の通信アドレス「0x0002」とし、NWK層の返信元アドレスを自己の通信アドレス「0x0003」とし、NWK層の返信先アドレスを仮の親デバイス2−1の通信アドレス「0x0001」とする。また、代理通信要求ビットを「0」とする(図6参照)。この作成されたメッセージM2は、メッセージ返信部23Dより、転送デバイス2−2へ返信される。
【0118】
この宛先デバイス2−3において、メッセージ処理部23Bとメッセージ返信部23Dとの組合せが、本発明でいうメッセージ返信処理手段に相当する。
【0119】
宛先デバイス2−3からのメッセージM2は、転送デバイス2−2の第2のメッセージ受信部22Dで受信され、第2のメッセージ転送部22Eへ送られる。第2のメッセージ転送部22Eは、メッセージM2中のMAC層の返信元アドレスを自己の通信アドレスとし、MAC層の返信先アドレスをルーティングテーブルRTB2に従う次の送信先のデバイスの通信アドレスとし、このMAC層の送信元および送信先のアドレスを書き替えたメッセージM2をM2’として(図6参照)、次の返信先のデバイス(仮の親デバイス2−1)へ返信する。
【0120】
転送デバイス2−2からのメッセージM2’は、仮の親デバイス2−1の第2のメッセージ受信部21Fで受信され、代理情報確認部21Gへ送られる。代理情報確認部21Gは、メッセージM2’中のNWK層の返信元アドレスと一致するアドレスが代理情報記憶部21DにNWK層の送信先アドレスとして存在するか否かを確認し、存在すればその旨をメッセージM2’と合わせて代理通信解除部21Hへ知らせる。
【0121】
代理通信解除部21Hは、代理情報確認部21Gからの一致するアドレスが存在する旨の知らせを受けて、その一致するアドレスと対として記憶されているNWK層の送信元アドレスを読み出し、メッセージM2’中のNWK層の返信先アドレスをその読み出したNWK層の送信元アドレスに書き替えるともに、その時に用いたNWK層の送信元アドレスと送信先アドレスとの対を代理情報記憶部21Dから削除する。この代理通信解除部21Hで書き替えられたメッセージM2’は、メッセージM2”としてメッセージ返送部21Iへ送られ、エンドデバイス1へ返送される。
【0122】
この仮の親デバイス2−1において、代理情報確認部21Gが本発明でいう代理情報確認手段に相当し、代理通信解除部21Hが本発明でいう代理通信解除手段に相当し、メッセージ返送部21Iが本発明でいうメッセージ返送手段に相当する。
【0123】
仮の親デバイス2−1からのメッセージM2”は、エンドデバイス1のメッセージ受信部1Lで受信され、メッセージ処理部1Kへ送られる。メッセージ処理部1Kは送られてきたメッセージM2”を処理する。
【0124】
なお、転送デバイス2−2や宛先デバイス2−3において、メッセージの送受信が途切れた場合には、仮の親デバイス2−1に対して所定のエラーメッセージを送信し、このエラーメッセージを受信した仮の親デバイス2−1が再度、往還ルート探索を実行し、この探索により各デバイスに再作成されたルーティングテーブルに従って、メッセージの送受信を再開するようにしてもよい。
【0125】
また、本発明は、間接通信を代理通信方式とすることを特徴とするが、通信アドレスのツリー・ルート情報に基づいた単一のルートに従って、宛先デバイスからエンドデバイスまでメッセージの返信を行うようにする通常の間接通信方式においても、直接通信が可能か否かを確認するようにし、間接通信から直接通信への切り替えを行うようにしてもよい。
【産業上の利用可能性】
【0126】
本発明の無線通信システムは、通信幹線を無線化したメッシュ構造の中規模、大規模の監視制御システムなど様々な分野で利用することが可能である。具体的には、VAV(可変風量調節)による居室内空調システムへの適用などが考えられる。
【符号の説明】
【0127】
1…エンドデバイス、2…ルータ、2−1…仮の親デバイス、2−2…転送デバイス、2−3…宛先デバイス、3…コーディネータ、TB1…送信要求テーブル、RTB1、RTB2、RTB3…ルーティングテーブル、M1,M1’,M1”…メッセージ、M2,M2’,M2”…メッセージ、1A…宛先デバイス間親子関係締結部、1B…直接通信処理部、1C…宛先デバイス間親子関係解除部、1D…仮の親子関係締結部、1E…直接通信復帰確認部、1F…直接通信再開指令部、1G…仮の親子関係解除部、1H…アドレス情報記憶部、1J…間接通信処理部、1K…メッセージ処理部、1L…メッセージ受信部、1M…メッセージ送信部、21A…アドレス情報記憶部、21B…第1のメッセージ受信部、21C…往還探索実行部、21D…代理情報記憶部、21E…代理メッセージ送信部、21F…第2のメッセージ受信部、21G…代理情報確認部、21H…代理通信解除部、21I…メッセージ返送部、22A…アドレス情報記憶部、22B…第1のメッセージ受信部、22C…第1のメッセージ転送部、22D…第2のメッセージ受信部、22E…第2のメッセージ転送部、23A…アドレス情報記憶部、23B…メッセージ処理部、23C…メッセージ受信部、23D…メッセージ返信部、23E…論理アドレス確認応答部。
【技術分野】
【0001】
この発明は、ツリー構造の無線通信システムに関するものである。
【背景技術】
【0002】
近年、無線通信を利用して、環境計測・監視・制御などを行うシステムが増加している。この環境計測・監視・制御などを行う無線通信システムでは、対象エリアが比較的広い、又は、対象エリア内に無線通信の障害物が多々存在する場合が多い。このような場合、対象エリアをカバーするためには、受信器と送信器の設置位置や電波状況等の環境により直接通信できなくても、他のデバイスを中継して通信を行うことができる無線通信ネットワークを利用することが有利である。
【0003】
この種の無線通信ネットワークとして、ジグビー(Zigbee(登録商標))プロトコルを利用した無線通信ネットワークが考えられている(例えば、特許文献1、特許文献2参照)。以下、このジグビープロトコルを利用した無線通信ネットワークをジグビーネットワークと呼ぶ。
【0004】
ジグビーネットワークは、ツリー構造の無線通信ネットワークであり、次のような3種類のデバイスによって構成される。
〔デバイスA(ノードA)〕
コーディネータと呼ばれ、ネットワークの基層(最上位)に唯一存在し、下位のデバイスと接続通信する。また、ネットワーク全体の総合親局の役割を果たすとともに、自己と親子の接続関係(以下、単に親子関係と呼ぶ)を結ぶデバイスに通信アドレス(ネットワークアドレス)を付番する。
【0005】
〔デバイスB(ノードB)〕
ルータと呼ばれ、コーディネータよりも下層に存在し、上位のデバイスおよび下位のデバイスと接続通信でき、コーディネータからの命令を受けるとともに、下位のデバイス(ルータ、又はエンドデバイス)を接続することができ、それらデバイスに対しては局地的な親局の役割を果たす。また、自己と親子関係を結ぶデバイスに通信アドレス(ネットワークアドレス)を付番する。例えば、空調制御システムではVAVコントローラなどがルータとされる。
【0006】
〔デバイスC(ノードC)〕
エンドデバイスと呼ばれ、ネットワークの各枝の末端(最下位)に存在し、親子関係を結んだ上位のデバイス(親デバイス)と接続通信でき、他のデバイスの親局にはならない。例えば、空調制御システムでは、温度センサや湿度センサなどのセンサがエンドデバイスとされる。
【0007】
このジグビーネットワークでは、各ノードの種別や階層を定義するために、通信アドレスとは別に論理アドレスが各ノードに設定される。この論理アドレスは、システム構成に応じて個別に定められ、通常、手動で設定される。
【0008】
また、このジグビーネットワークにおいて、エンドデバイスは、電源投入時、自己の論理アドレスから割り出される送信先の上位のデバイスの論理アドレスを含む論理アドレス問合せメッセージをマルチキャストで直接通信可能な圏内に位置する上位のデバイスへ送り、この論理アドレス問合せメッセージに含まれる論理アドレスが自己の論理アドレスと一致する上位のデバイスからの論理アドレス応答メッセージを受けて、その上位のデバイスとの間で親子関係を結び、この親子関係を結んだ上位のデバイス(親デバイス)を宛先デバイスとし、この宛先デバイスに対して直接、メッセージの送信を行う。この場合のエンドデバイスと宛先デバイスとの間の通信を直接通信と呼ぶ。
【0009】
また、このジグビーネットワークにおいて、エンドデバイスは、宛先デバイスとの間の直接通信中、マルチパスフェージングなどの電波変動の影響を受けて通信不能に陥った場合、宛先デバイスとの親子関係を解除し、直接通信可能な圏内に位置する他の上位のデバイスと親子関係を結び、この親子関係を結んだ上位のデバイスを仮の親デバイスとし、この仮の親デバイスを通して宛先デバイス(本来の親デバイス)に対して間接的に、メッセージの送信を行う。この場合のエンドデバイスと宛先デバイスとの間の通信を間接通信と呼ぶ。なお、マルチパスフェージングとは、複数の通信電波反射経路の間に発生する位相差により受信電波が打ち消され、受信ができなくなる現象をいう。
【0010】
このジグビーネットワークにおいて、エンドデバイスが間接通信を行う場合、仮の親デバイスが宛先デバイスまでのルート探索を実行することにより、最適なルートで宛先デバイスへのメッセージの送信が行われる。具体的には、エンドデバイスからのメッセージの送信時にルート探索を指定することで、仮の親デバイスが現在の電波状況に最適なルートをメッシュ構造から選択し、メッセージを転送する。これにより、1つの通信経路がマルチパスフェージングなどの電波変動の影響を受けて通信不能に陥ったとしても、他の通信経路を探索して通信を継続することができる。このため、エンドデバイスから宛先デバイスまでの往路では、メッセージ転送が途中で途切れてしまうことはない。
【0011】
しかしながら、宛先デバイスからエンドデバイスまでの還路では、返送先がエンドデバイスとなるため、宛先デバイスにおいてエンドデバイスまでのルート探索を行うことができない。このため、従来においては、通信アドレスのツリー・ルート情報に基づいた単一のルートに従って、宛先デバイスからエンドデバイスまでメッセージの返信を行うようにしており、電波状況などによってはメッセージ転送が途中で途切れてしまうことがあった。
【先行技術文献】
【特許文献】
【0012】
【特許文献1】特開2006−5928号公報
【特許文献2】特開2006−42370号公報
【発明の概要】
【発明が解決しようとする課題】
【0013】
そこで、本出願人は、先頃、エンドデバイスが自己の親デバイス以外の上位のデバイスを宛先デバイスとしてとしてメッセージを送信する場合、エンドデバイスから自己の親デバイスに対して、送信元のアドレスとして自己の通信アドレスと、最終的な送信先のアドレスとして宛先デバイスの通信アドレスとを、代理通信を実行するか否かの情報として代理通信要求情報と、ルート探索を実行するか否かの情報としてルート探索要求情報とを少なくとも含む代理要求メッセージを送信し、宛先デバイスへのメッセージの送信を行う発明(以下、代理通信方式の発明と呼ぶ)を提案した(特願2010−193531号)。この代理通信方式の発明において、自己の親デバイスを仮の親デバイス、宛先デバイスを本来の親デバイスと考えれば、仮の親デバイスに代理要求メッセージが送信され、この仮の親デバイスを通して宛先デバイス(本来の親デバイス)との間の代理通信方式による間接通信が行われるものとなる。
【0014】
この場合、仮の親デバイスは、エンドデバイスからのメッセージに含まれるルート探索要求情報がルート探索を実行することを示していた場合、自デバイスから宛先デバイスまでの往還ルートの探索を実行する。また、エンドデバイスからのメッセージに含まれる代理通信要求情報が代理通信を実行することを示していた場合、そのメッセージに含まれている送信元のアドレス(エンドデバイスの通信アドレス)と最終的な送信先のアドレス(宛先デバイスの通信アドレス)との対を代理情報として記憶する一方、そのメッセージに含まれている送信元のアドレスを自己の通信アドレスに書き替えて宛先デバイスへの代理メッセージとし、この代理メッセージを探索された往ルートに従う次の送信先のデバイスへ送信する。
【0015】
宛先デバイスは、仮の親デバイスからの代理メッセージを受信した場合、仮の親デバイスにより探索された還ルートに従う次の送信先のデバイスに対して、返信元のアドレスとして自己の通信アドレスを、最終的な返信先のアドレスとして仮の親デバイスの通信アドレスを少なくとも含むメッセージを返信する。仮の親デバイスは、宛先デバイスからのメッセージを受信した場合、そのメッセージに含まれている返信元のアドレスと一致するアドレスが代理情報中に最終的な送信先のアドレスとして存在するか否かを確認し、代理情報中に一致するアドレスが存在することが確認された場合、その一致するアドレス(宛先デバイスの通信アドレス)と対として記憶されている代理情報中の送信元のアドレス(エンドデバイスの通信アドレス)を読み出し、宛先デバイスからのメッセージに含まれている返信先のアドレスをその読み出した送信元のアドレスに書き替え、そのメッセージをエンドデバイスに返信する。この際、仮の親デバイスは、その時に用いた代理情報(エンドデバイスの通信アドレスと宛先デバイスの通信アドレスとの対)を削除する。これにより、エンドデバイスから宛先デバイスまでの往路だけではなく、宛先デバイスからエンドデバイスまでの還路でも、メッセージ転送が途中で途切れてしまうことがなくなる。
【0016】
しかしながら、この場合、仮の親デバイスを通しての間接通信はマルチホップで行われるため、一般的に通信時間が長くなる。そのため、消費電力が増大し、エンドデバイスを電池駆動とする場合、電池寿命が短くなる虞がある。
【0017】
本発明は、このような課題を解決するためになされたもので、その目的とするところは、間接通信の還路でもエンドデバイスと宛先デバイスとの間の通信が途切れることがなく、かつ、エンドデバイスの消費電力の増大を抑えることができる無線通信システムを提供することにある。
【課題を解決するための手段】
【0018】
このような目的を達成するために本発明は、最下位に位置するエンドデバイスと、このエンドデバイスと直接通信可能な圏内に位置する複数の上位デバイスとを備え、上位デバイスの1つをエンドデバイスからのメッセージの最終的な送信先である宛先デバイスとするツリー構造の無線通信システムにおいて、エンドデバイスは、宛先デバイスと親子関係を結び、当該宛先デバイスに対して直接、メッセージの送信を行う直接通信手段と、直接通信手段からのメッセージに対する宛先デバイスからの応答メッセージが受信されない場合、宛先デバイスとの親子関係を解除し、他の上位デバイスと親子関係を結び、この親子関係を結んだ上位デバイスを仮の親デバイスとし、この仮の親デバイスに対して送信元のアドレスとして自己の通信アドレスを、最終的な送信先のアドレスとして宛先デバイスの通信アドレスを、代理通信を実行するか否かの情報として代理通信要求情報を、ルート探索を実行するか否かの情報としてルート探索要求情報を少なくとも含む代理要求メッセージを送信し、宛先デバイスへの間接的なメッセージの送信を開始する間接通信手段と、間接通信手段による宛先デバイスへの間接的なメッセージの送信が行われている間、所定の周期で、宛先デバイスとの間の直接通信が可能か否かを確認する直接通信復帰確認手段と、直接通信復帰確認手段によって宛先デバイスとの間の直接通信が可能になったことが確認された場合、仮の親デバイスとの親子関係を解除し、宛先デバイスとの間の親子関係を復帰させ、直接通信手段による宛先デバイスへのメッセージの直接送信を再開させる直接通信再開手段とを備えることを特徴とする。
【0019】
本発明において、エンドデバイスは、直接通信可能な圏内に位置する宛先デバイスと親子関係を結び、この宛先デバイスを親デバイス(本来の親デバイス)として直接通信を行う。ここで、マルチパスフェージングなどの電波変動の影響を受けて、宛先デバイスとの間の直接通信が不能になると、宛先デバイスとの親子関係を解除し、他の上位デバイスと親子関係を結び、この親子関係を結んだ上位デバイスを仮の親デバイスとし、この仮の親デバイスを通して宛先デバイスとの間の代理通信方式による間接通信を開始する。これにより、間接通信の往路だけではなく、間接通信の還路でもエンドデバイスと宛先デバイスとの間の通信が途切れることがなくなる。
【0020】
また、本発明において、エンドデバイスは、宛先デバイスとの間で間接通信を行っている間、所定の周期で、宛先デバイスとの間の直接通信が可能か否かを確認し、宛先デバイスとの間の直接通信が可能になったことを確認すると、仮の親デバイスとの親子関係を解除し、宛先デバイスとの間の親子関係を復帰させ、宛先デバイスとの間の直接通信を再開する。これにより、マルチパスフェージングなどの電波変動の影響を受けている間だけ、エンドデバイスと宛先デバイスとの間の通信が間接通信となり、それ以外の間は直接通信となるため、エンドデバイスの消費電力の増大が抑えられる。
【発明の効果】
【0021】
本発明によれば、エンドデバイスにおいて、宛先デバイスとの間で直接通信が行えなくなった場合、直接通信から代理通信方式による間接通信に切り替えられるので、間接通信の往路だけではなく、間接通信の還路でもエンドデバイスと宛先デバイスとの間の通信が途切れることがなくなる。
また、本発明によれば、エンドデバイスにおいて、間接通信を行っている間、所定の周期で、宛先デバイスとの間の直接通信が可能か否かが確認され、宛先デバイスとの間の直接通信が可能になったことが確認された場合、間接通信から直接通信に切り替えられるので、エンドデバイスの消費電力の増大が抑えられ、エンドデバイスを電池駆動とする場合、電池寿命を長くすることができるようになる。
【図面の簡単な説明】
【0022】
【図1】本発明に係る無線通信システムの一実施の形態として構築されたジグビーネットワークの要部を示す図である。
【図2】このジグビーネットワークにおけるエンドデバイスと宛先デバイスとの間の通信が直接通信から間接通信へ切り替えられる場合のシーケンス図である。
【図3】このジグビーネットワークにおけるエンドデバイスと宛先デバイスとの間の通信が直接通信から間接通信へ切り替えられる場合のシーケンス図(図2に続くシーケンス図)である。
【図4】このジグビーネットワークにおけるエンドデバイスと宛先デバイスとの間の通信が直接通信から間接通信へ切り替えられた状態を示す図である。
【図5】このジグビーネットワークにおける間接通信に切り替えられた状態でのエンドデバイスから宛先デバイスへのメッセージの送信時のシーケンス図である。
【図6】このジグビーネットワークにおける間接通信に切り替えられた状態での宛先デバイスからエンドデバイスへのメッセージの返信時のシーケンス図である。
【図7】このジグビーネットワークにおける間接通信中のリトライ送信を説明するシーケンス図である。
【図8】このジグビーネットワークにおけるエンドデバイスと宛先デバイスとの間の通信が間接通信から直接通信へ切り替えられる場合のシーケンス図である。
【図9】このジグビーネットワークにおけるエンドデバイスと宛先デバイスとの間の通信が間接通信から直接通信へ切り替えられる場合のシーケンス図(図8に続くシーケンス図)である。
【図10】このジグビーネットワークにおけるエンドデバイスと宛先デバイスとの間の通信が間接通信から直接通信へ切り替えられた状態を示す図である。
【図11】このジグビーネットワークにおけるエンドデバイスの要部の機能ブロック図である。
【図12】このジグビーネットワークにおける仮の親デバイスの要部の機能ブロック図である。
【図13】このジグビーネットワークにおける転送デバイスの要部の機能ブロック図である。
【図14】このジグビーネットワークにおける宛先デバイスの要部の機能ブロック図である。
【発明を実施するための形態】
【0023】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。
図1はこの発明に係る無線通信システムの一実施の形態として構築されたジグビーネットワークの要部を示す図である。同図において、1は最下位に位置するエンドデバイス、2−1〜2−3はエンドデバイス1と直接通信可能な圏内に位置する複数のルータ(上位デバイス)、3はコーディネータである。
【0024】
このジグビーネットワークにおいて、エンドデバイス1の通信アドレスは「0x0ff7」、ルータ2−1の通信アドレスは「0x0001」、ルータ2−2の通信アドレスは「0x0002」、ルータ2−3の通信アドレスは「0x0003」、コーディネータ3の通信アドレスは「0x0000」とされている。また、エンドデバイス1の論理アドレスは「#0301」、ルータ2−1の論理アドレスは「#01」、ルータ2−2の論理アドレスは「#02」、ルータ2−3の論理アドレスは「#03」、コーディネータ3の論理アドレスは「#0」とされている。
【0025】
また、このジグビーネットワークにおいて、エンドデバイス1は、電源投入時、自己の論理アドレス「#0301」から割り出される送信先の上位のデバイスの論理アドレス「#03」を含む論理アドレス問合せメッセージをマルチキャストで直接通信可能な圏内に位置するルータ2(2−1〜2−3)へ送り、この論理アドレス問合せメッセージに含まれる論理アドレス「#03」が自己の論理アドレスと一致するルータ2−3からの論理アドレス応答メッセージを受けて、このルータ2−3との間で親子関係を結び、この親子関係を結んだルータ2−3を親デバイスとし、この親デバイス2−3との間で直接通信を行っている。
【0026】
すなわち、エンドデバイス1を送信元デバイスとした場合、この送信元デバイスからのメッセージの最終的な送信先(宛先)を親デバイス2−3とし、この親デバイス2−3との間で直接通信を行っている。以下、親デバイス2−3を宛先デバイスと呼ぶ。
【0027】
なお、エンドデバイス1は、宛先デバイス2−3からの論理アドレス応答メッセージから宛先デバイス2−3の通信アドレス「0x0003」を取得し、この取得した宛先デバイス2−3の通信アドレス「0x0003」を親デバイスの通信アドレスとしてメモリに記憶している。また、宛先デバイス2−3は、論理アドレス問合せメッセージからエンドデバイス1の通信アドレス「0x0ff7」を取得し、この取得した通信アドレス「0x0ff7」を子デバイスの通信アドレスとしてメモリに記憶している。
【0028】
〔直接通信から間接通信への切り替え〕
図2および図3にエンドデバイス1と宛先デバイス2−3との間の通信が直接通信から間接通信へ切り替えられる場合のシーケンス図を示す。以下、このシーケンス図を参照しながら、エンドデバイス1と宛先デバイス2−3との間の通信が直接通信から間接通信へ切り替えられる様子を説明する。
【0029】
〔直接通信〕
エンドデバイス1は、宛先デバイス2−3にメッセージの送信を行う(図2:矢印(1))。その後、エンドデバイス1は、宛先デバイス2−3からの返信の時限監視を行う。
【0030】
宛先デバイス2−3は、エンドデバイス1からのメッセージを受信すると、エンドデバイス1に対して応答メッセージを送信する(図2:矢印(2))。
【0031】
エンドデバイス1は、時限監視がタイムアウトする前に宛先デバイス2−3からの応答メッセージを受信すると、宛先デバイス2−3へのメッセージの送信が正常に行われたと判断する。
【0032】
このようにして、通常は、エンドデバイス1が定期的にメッセージの送信を繰り返し、エンドデバイス1と宛先デバイス2−3との間の直接通信が行われている。
【0033】
〔マルチパスフェージングによる通信断の発生〕
ここで、エンドデバイス1と宛先デバイス2−3との間の直接通信の経路にマルチパスフェージングによる通信断が発生すると、エンドデバイス1から送信されるメッセージに対し(図2:矢印(3))、宛先デバイス2−3からの応答メッセージが受信されないため(図2:矢印(4))、エンドデバイス1の時限監視がタイムアウトする。
【0034】
この場合、エンドデバイス1は、N回のリトライ送信を行う(図2:矢印(5)〜(8))。このN回のリトライ送信でも、宛先デバイス2−3からの応答メッセージが受信されなければ、エンドデバイス1と宛先デバイス2−3との間の直接通信にマルチパスフェージングによる通信断が発生したと判断する。
【0035】
なお、N回のリトライ送信の途中で、宛先デバイス2−3からの応答メッセージが受信されるならば、エンドデバイス1と宛先デバイス2−3との間の直接通信を継続する。
【0036】
〔ネットワークからの離脱〕
エンドデバイス1は、マルチパスフェージングによる通信断が発生したと判断すると、宛先デバイス2−3との親子関係を解除し、ネットワークから離脱する(図3:(1))。但し、宛先デバイス2−3の通信アドレスは、本来の親デバイスの通信アドレスとしてそのまま記憶し続ける。
【0037】
〔ネットワークへの再参加〕
エンドデバイス1は、ネットワークから離脱した後、直接通信可能な圏内に位置する他のルータ2の子デバイスとして、ネットワークに再参加する。このネットワークへの再参加は次のようにして行う。
【0038】
エンドデバイス1は、直接通信可能な圏内に位置するルータ2(2−1〜2−3)にビーコン要求メッセージ(Beacon request)をマルチキャスト送信する(図3:矢印(2))。直接通信可能な圏内に位置するルータ2(2−1〜2−3)は、ビーコン要求メッセージを受信すると、自分が受信している送信元のエンドデバイス1の電波強度(RSSI)を含むビーコン応答メッセージ(Beacon response)をエンドデバイス1に返信する(図3:矢印(3))。
【0039】
エンドデバイス1は、直接通信可能な圏内に位置するルータ2(2−1〜2−3)からのビーコン応答メッセージを受信すると、そのビーコン応答メッセージに含まれる電波強度を取り出し、電波強度の強いデバイス(X個)をメモリに候補として記憶する。そして、このメモリに記憶した候補のデバイス(X個)に対して、ネットワーク参加を試みる。
【0040】
この場合、最初は、電波強度が1番強い候補のデバイスに対してアソシエーション要求メッセージ(Association request)を送信し、このアソシエーション要求メッセージに対する応答メッセージとしてアソシエーション応答メッセージ(Association response)が受信されない場合には、電波強度が次に強い候補のデバイスに対してアソシエーション要求メッセージを送信する、という動作を繰り返す。
【0041】
この例では、電波強度が1番強い候補のデバイスとしてルータ2−2を選択し、この選択したルータ2−2に対してアソシエーション要求メッセージを送信している(図3:矢印(4))。そして、ルータ2−2からのアソシエーション応答メッセージが受信されないので(図3:矢印(5))、次に電波強度が強い候補のデバイスとしてルータ2−1を選択し、この選択したルータ2−1に対してアソシエーション要求メッセージを送信し(図3:矢印(6))、ルータ2−1からのアソシエーション応答メッセージを受信している(図3:矢印(7))。
【0042】
なお、この場合、宛先デバイス2−3が候補になることもあるが、この時点で宛先デバイス2−3を親デバイスとしてネットワークへ再参加した場合、通信が不安定になる可能性がある。このため、宛先デバイス2−3のみが候補となる場合を除き、原則として宛先デバイス2−3は除外する。宛先デバイス2−3が候補になったか否かについては、その通信アドレスが本来の親デバイスの通信アドレスとしてメモリに記憶されているので、その情報を参照して判断する。
【0043】
また、全ての候補のデバイスに対してアソシエーション要求メッセージを送信したにも拘わらず、アソシエーション応答メッセージが受信されない場合には、ビーコン要求メッセージのマルチキャスト送信からの処理へと戻る(図3の矢印(2))。
【0044】
エンドデバイス1は、ルータ2−1からのアソシエーション応答メッセージを受信すると(図3:矢印(7))、ルータ2−1と親子関係を結び、この親子関係を結んだルータ2−1を仮の親デバイスとし、代理通信方式による間接通信を開始する。
【0045】
このようにして、エンドデバイス1は、宛先デバイス2−3との間の直接通信中、マルチパスフェージングによる通信断が発生すると、ルータ2−1を仮の親デバイスとする代理通信方式による間接通信に切り替える(図4参照)。
【0046】
〔代理通信方式による間接通信〕
〔エンドデバイスから宛先デバイスへのメッセージの送信(往路)〕
図5にエンドデバイス1から宛先デバイス2−3へのメッセージの送信時のシーケンス図を示す。以下、このシーケンス図を参照しながら、エンドデバイス1からのメッセージが仮の親デバイス2−1を通して宛先デバイス2−3に送られる様子を説明する。
【0047】
〔エンドデバイス(送信元)〕
エンドデバイス1は、データを含むメッセージM1の送信時、そのメッセージM1中の、MAC層の送信元アドレスに自己の通信アドレス「0x0ff7」を、MAC層の送信先アドレスに仮の親デバイス2−1の通信アドレス「0x0001」を、NWK層の送信元アドレスに自己の通信アドレス「0x0ff7」を、NWK層の送信先アドレスに宛先デバイス2−3の通信アドレス「0x0003」を書き込む。なお、このメッセージM1において、MAC層の送信先アドレスは次の送信先のアドレスを示し、NWK層の送信先アドレスは最終的な送信先(宛先)のアドレスを示す。
【0048】
また、エンドデバイス1は、メッセージM1中の、NWK層のフレームコントロールの代理通信要求ビットを「1」(セット)とし、ルート探索要求ビットを「1」(セット)とする。なお、代理通信要求ビットはメッセージM1の送信毎にそのビットを「1」とするが、ルート探索要求ビットは初回送信時、または、アプリケーション層が双方向通信のタイムアウトを検出した場合のリトライ送信時にのみ、そのビットを「1」とする。
【0049】
そして、エンドデバイス1は、このメッセージM1を代理要求メッセージとして仮の親デバイス2−1へ送信する(図5:矢印(1))。
【0050】
〔仮の親デバイス〕
仮の親デバイス2−1は、エンドデバイス1からのメッセージM1を受信すると、このメッセージM1中のNWK層のフレームコントロールを確認する。ここで、NWK層のフレームコントロールにおいて、ルート探索要求ビットが「1」とされていれば、NWK層の送信先アドレスから宛先デバイス2−3の通信アドレス「0x0003」を取得し、自デバイスから宛先デバイス2−3までの往還ルートの探索を実行する(図5:(2))。この往還ルートの探索により、仮の親デバイス2−1から宛先デバイス2−3までの往還ルートを決めるルーティングテーブルRTB1〜3が各デバイス内に作成される。
【0051】
そして、仮の親デバイス2−1は、この往還ルートの探索の実行後、NWK層のフレームコントロールにおけるルート探索要求ビットを「0」(クリア)とする。なお、この例において、往ルートは、ルータ2−1(仮の親デバイス)→ルータ2−2(転送デバイス)→ルータ2−3(宛先デバイス)として作成されるものとする。また、還ルートは、ルータ2−3(宛先デバイス)→ルータ2−2(転送デバイス)→ルータ2−1(仮の親デバイス)として作成されるものとする。
【0052】
また、仮の親デバイス2−1は、メッセージM1のNWK層のフレームコントロールにおいて、代理通信要求ビットが「1」とされていれば、NWK層の送信元アドレスとNWK層の送信先アドレスを読み取り、この読み取ったNWK層の送信元アドレスとNWK層の送信先アドレスとの対を代理情報として送信要求テーブルTB1に登録(セット)する(図5:(3))。
【0053】
この場合、メッセージM1中のNWK層の送信元アドレスはエンドデバイス1の通信アドレス「0x0ff7」とされ、NWK層の送信先アドレスは宛先デバイス2−3の通信アドレス「0x0003」とされているので、この通信アドレス「0x0ff7」と「0x0003」の対を代理情報として送信要求テーブルTB1に登録する。この送信要求テーブルTB1は仮の親デバイス2−1のメモリに記憶される。
【0054】
また、仮の親デバイス2−1は、送信要求テーブルTB1への代理情報の登録後、メッセージM1中のNWK層の送信元アドレスを自アドレスに書き替える。この場合、NWK層の送信元アドレスはエンドデバイス1の通信アドレス「0x0ff7」とされているので、この通信アドレス「0x0ff7」を仮の親デバイス2−1の通信アドレス「0x0001」に書き替える。そして、仮の親デバイス2−1は、NWK層のフレームコントロールにおける代理通信要求ビットを「0」(クリア)とする。
【0055】
次に、仮の親デバイス2−1は、ルーティングテーブルRTB1から次の送信先のデバイスの通信アドレス(次転送アドレス)を取得し、MAC層の送信先アドレスを次転送アドレスに書き替える。この場合、次転送アドレスはルータ2−2の通信アドレス「0x0002」として取得されるので、MAC層の送信先アドレスを「0x0002」に書き替える。また、これと合わせて、MAC層の送信元アドレスを自アドレス、すなわち仮の親デバイス2−1の通信アドレス「0x0001」に書き替える。
【0056】
そして、仮の親デバイス2−1は、この書き替えられたメッセージM1を代理メッセージM1’とし、この代理メッセージM1’を、次の送信先のデバイスであるルータ2−2(転送デバイス)へ送信する(図5:矢印(4))。なお、代理メッセージM1’は、NWK層の送信元アドレスが仮の親デバイス2−1の通信アドレス「0x0001」に書き替えられていることを大きな特徴としている。
【0057】
〔転送デバイス〕
転送デバイス2−2は、仮の親デバイス2−1からの代理メッセージM1’を受信すると、この代理メッセージM1’中のNWK層のフレームコントロールを確認する。この場合、NWK層のフレームコントロールにおいて、代理通信要求ビットは「0」とされているので、代理通信の処理は行わず、ルーティングテーブルRTB2から次の送信先のデバイスの通信アドレス(次転送アドレス)を取得し、MAC層の送信先アドレスを次転送アドレスに書き替える。この場合、次転送アドレスはルータ2−3の通信アドレス「0x0003」として取得されるので、MAC層の送信先アドレスを「0x0003」に書き替える。また、これと合わせて、MAC層の送信元アドレスを自アドレス、すなわち転送デバイス2−2の通信アドレス「0x0002」に書き替える。
【0058】
そして、転送デバイス2−2は、この書き替えられた代理メッセージM1’を代理メッセージM1”とし、次の送信先のデバイスであるルータ2−3(宛先デバイス)へ送信する(図5:矢印(5))。なお、代理メッセージM1”において、NWK層の送信元アドレスは、仮の親デバイス2−1の通信アドレス「0x0001」のままである。
【0059】
〔宛先デバイス(送信先)〕
宛先デバイス2−3は、転送デバイス2−2からの代理メッセージM1”を受信すると、この受信した代理メッセージM1”を処理する。
【0060】
〔宛先デバイスからエンドデバイスへのメッセージの返信(還路)〕
図6に宛先デバイス2−3からエンドデバイス1へのメッセージの返信時のシーケンス図を示す。以下、このシーケンス図を参照しながら、宛先デバイス2−3からのメッセージが仮の親デバイス2−1を通してエンドデバイス1へ送られる様子を説明する。
【0061】
〔宛先デバイス(返信元)〕
宛先デバイス2−3は、転送デバイス2−2からの代理メッセージM1”(図5参照)を受信すると、この代理メッセージM1”中のNWK層の送信元アドレスから仮の親デバイス2−1の通信アドレス「0x0001」を取得する。
【0062】
宛先デバイス2−3は、データを含むメッセージM2の返信時、そのメッセージM2中の、MAC層の返信元アドレスに自己の通信アドレス「0x0003」を、MAC層の返信先アドレスにルーティングテーブルRTB3から次の返信先の通信アドレス(次転送アドレス)として取得されるルータ2−2の通信アドレス「0x0002」を書き込む。また、NWK層の返信元アドレスに自己の通信アドレス「0x0003」を、NWK層の返信先アドレスに仮の親デバイス2−1の通信アドレス「0x0001」を書き込む。また、NWK層のフレームコントロールの代理通信要求ビットを「0」(クリア)とする。
【0063】
そして、宛先デバイス2−3は、このメッセージM2を次の返信先のデバイスであるルータ2−2(転送デバイス)へ返信する(図6:矢印(1))。
【0064】
〔転送デバイス〕
転送デバイス2−2は、宛先デバイス2−3からのメッセージM2を受信すると、このメッセージM2中のNWK層のフレームコントロールを確認する。この場合、NWK層のフレームコントロールにおいて、代理通信要求ビットは「0」とされているので、代理通信の処理は行わず、ルーティングテーブルRTB2から次の返信先のデバイスの通信アドレス(次転送アドレス)を取得し、MAC層の返信先アドレスを次転送アドレスに書き替える。この場合、次転送アドレスはルータ2−1の通信アドレス「0x0001」として取得されるので、MAC層の返信先アドレスを「0x0001」に書き替える。また、これと合わせて、MAC層の返信元アドレスを自アドレス、すなわち転送デバイス2−2の通信アドレス「0x0002」に書き替える。
【0065】
そして、転送デバイス2−2は、この書き替えられたメッセージM2をメッセージM2’とし、次の返信先のデバイスであるルータ2−1(仮の親デバイス)へ送信する(図6:矢印(2))。なお、メッセージM2’において、NWK層の返信先アドレスは、仮の親デバイス2−1の通信アドレス「0x0001」のままである。
【0066】
〔仮の親デバイス〕
仮の親デバイス2−1は、転送デバイス2−2からのメッセージM2’を受信すると、そのメッセージM2’中のNWK層の返信元アドレスと一致するアドレスが送信要求テーブルTB1中にNWK層の送信先アドレスとして存在するか否かを確認する。この場合、メッセージM2’中のNWK層の返信元アドレスは「0x0003」であり、送信要求テーブルTB1に登録されているNWK層の送信先アドレスは「0x0003」であり、送信要求テーブルTB1中に一致するアドレスが存在する。
【0067】
仮の親デバイス2−1は、送信要求テーブルTB1中に一致するアドレスが存在することを確認すると、その一致するアドレスと対として登録されているNWK層の送信元アドレスを読み出し、メッセージM2’中のNWK層の返信先アドレスをその読み出したNWK層の送信元アドレスに書き替えるとともに、その時に用いた送信要求テーブルTB1中の代理情報(NWK層の送信元アドレスと送信先アドレスとの対)を削除(クリア)する。
【0068】
この場合、送信要求テーブルTB1に「0x0003」と対として登録されているNWK層の送信元アドレスは「0x0ff7」であるので、メッセージM2’中のNWK層の返信先アドレス「0x0001」を「0x0ff7」に書き替える。そして、送信要求テーブルTB1に登録されているNWK層の送信元アドレス「0x0ff7」と送信先のアドレス「0x0003」との対を削除する。
【0069】
また、仮の親デバイス2−1は、メッセージM2’中のMAC層の返信先アドレスを「0x0ff7」に書き替え、これと合わせて、MAC層の返信元アドレスを自アドレス、すなわち仮の親デバイス2−1の通信アドレス「0x0001」に書き替える。
【0070】
そして、仮の親デバイス2−1は、この書き替えられたメッセージM2’をメッセージM2”とし、エンドデバイス1へ返送する(図6:矢印(3))。
【0071】
なお、仮の親デバイス2−1は、送信要求テーブルTB1にメッセージM2’中のNWK層の返信元アドレスと一致するNWK層の送信先アドレスが存在しなかった場合、そのメッセージM2’を自アドレス宛てのメッセージとして処理する。
【0072】
〔エンドデバイス(返信先)〕
エンドデバイス1は、仮の親デバイス2−1からのメッセージM2”を受信すると、この受信したメッセージM2”を処理する。
【0073】
なお、エンドデバイス1は、メッセージM1の送信後(図5:矢印(1))、宛先デバイス2−3からの返信の時限監視を行い、宛先デバイス2−3からの返信がなく、時限監視がタイムアウトする場合、N回のリトライ送信を行う。このN回のリトライ送信の途中で、宛先デバイス2−3からの返信が確認されれば、初回の代理通信が成功したと判断して、2回目以降の代理通信に移行する。N回のリトライ送信でも、宛先デバイス2−3からの返信が確認されなければ、マルチパスフェージングによる通信断が発生したと判断し、ネットワークからの離脱からの処理へと戻る(図3:(1))。
【0074】
2回目以降の代理通信では、メッセージM1中の、 NWK層のフレームコントロールの代理通信要求ビットを「1」(代理通信)とするが、ルート探索要求ビットは「0」(ルート探索なし)とする。この場合も、エンドデバイス1は、メッセージM1の送信後(図7:矢印(1))、宛先デバイス2−3からの返信の時限監視を行う。
【0075】
エンドデバイス1は、宛先デバイス2−3からの返信がなく、時限監視がタイムアウトする場合、N回のリトライ送信を行う(図7:矢印(12))。この時のリトライ送信では、ルート探索ありでメッセージM1を送信する。このN回のリトライ送信の途中で、宛先デバイス2−3からの返信が確認されれば(図7:矢印(18))、探索された経路で代理通信を継続する。N回のリトライ送信でも、宛先デバイス2−3からの返信が確認されなければ、マルチパスフェージングによる通信断が発生したと判断し、ネットワークからの離脱からの処理へと戻る(図3:(1))。
【0076】
このようにして、本実施の形態では、エンドデバイス1において、宛先デバイス2−3との間で直接通信が行えなくなった場合、直接通信から代理通信方式による間接通信に切り替えられるので、間接通信の往路だけではなく、間接通信の還路でもエンドデバイス1と宛先デバイス2−3との間の通信が途切れることがなくなる。
【0077】
〔間接通信から直接通信への切り替え〕
図8および図9にエンドデバイス1と宛先デバイス2−3との間の通信が間接通信から直接通信へ切り替えられる場合のシーケンス図を示す。以下、このシーケンス図を参照しながら、エンドデバイス1と宛先デバイス2−3との間の通信が間接通信から直接通信へ切り替えられる様子を説明する。
【0078】
〔間接通信中の直接通信の可否の確認〕
エンドデバイス1は、宛先デバイス2−3と間接通信を行っている間、所定の周期(例えば、3分に1回)で、自己の論理アドレス「#0301」から、例えば、#以降の2文字(#03)を所得するなどのルールによって割り出される送信先の上位のデバイスの論理アドレス「#03」を含む論理アドレス問合せメッセージを、直接通信可能な圏内に位置するルータ2(2−1〜2−3)へマルチキャストで送信する(図8:矢印(1))。
【0079】
この時、エンドデバイス1は、送信されたメッセージがネットワーク全体にフラッディングしないように、ホップ数=1ホップを指定する。また、論理アドレス問合せメッセージの送信後、その論理アドレス問合せメッセージに対する返信を時限監視する。
【0080】
直接通信可能な圏内に位置するルータ2(2−1〜2−3)は、エンドデバイス1からの論理アドレス問合せメッセージを受信すると、この論理アドレス問合せメッセージから論理アドレス「#03」を取り出し、自己の論理アドレスと比較する。ここで、ルータ2(2−1〜2−3)は、自己の論理アドレスと一致すれば、少なくとも自己の論理アドレスを含む論理アドレス応答メッセージをエンドデバイス1にダイレクト送信する。自己の論理アドレスと一致しない場合には、何も応答しない。
【0081】
この例では、宛先デバイス2−3の論理アドレスが「#03」であり、論理アドレス問合せメッセージから取り出される論理アドレス「#03」と一致するので、宛先デバイス2−3が論理アドレス応答メッセージをエンドデバイス1にダイレクト送信するが、エンドデバイス1からの矢印(1)での論理アドレス問合せメッセージの送信時、直接通信の経路にはマルチパスフェージングによる通信断が発生しているので、宛先デバイス2−3が論理アドレス応答メッセージを送信したとしても(図8:矢印(2))、この送信された論理アドレス応答メッセージがエンドデバイス1において受信されることはない。
【0082】
これに対し、直接通信の経路のマルチパスフェージングによる通信断が解消されると、エンドデバイス1から送信される論理アドレス問合せメッセージに対して(図8:矢印(3))、宛先デバイス2−3が送信する論理アドレス応答メッセージがエンドデバイス1において受信されるものとなる(図8:矢印(4))。
【0083】
この場合、エンドデバイス1は、時限監視がタイムアウトする前に宛先デバイス2−3からの論理アドレス応答メッセージを受信すると、直接通信の経路のマルチパスフェージングによる通信断が解消されたと仮判断する。また、この時、エンドデバイス1は、メモリに記憶している宛先デバイス2−3の通信アドレスを更新する。
【0084】
そして、エンドデバイス1は、人の移動などにより一時的に通信断が解消されたのかもしれないので、宛先デバイス2−3に対してループバックテストをN回行って、通信断の最終判断を行う。このループパックテストは次のようにして行う。
【0085】
エンドデバイス1は、宛先デバイス2−3に対して、ループバックテスト要求メッセージ(確認要求メッセージ)を送信する(図8:矢印(5))。その後、エンドデバイス1は、宛先デバイス2−3からの返信の時限監視を行う。
【0086】
宛先デバイス2−3は、ループバックテスト要求メッセージを受信すると、エンドデバイス1に対してループバックテスト応答メッセージ(確認応答メッセージ)を返信する(図8:矢印(6))。
【0087】
エンドデバイス1は、時限監視がタイムアップする前にループバックテスト応答メッセージを受信すると、ループバックテスト成功と判断する。時限監視がタイムアウトしたら、ループバックテスト失敗と判断する。
【0088】
エンドデバイス1は、このループバックテストの実行回数を1回とし、このループバックテストが連続してN回成功した場合に(図8:矢印(7),(8))、通信断が解消されたと最終判断する。すなわち、宛先デバイス2−3との間の直接通信が可能になったと最終判断する。
【0089】
なお、ループバックテストの成功回数がN回未満なら、通信断が解消されていないと判断し、論理アドレス問合せメッセージの送信からの処理へと戻る(図8:矢印(1))。
【0090】
〔直接通信の再開〕
エンドデバイス1は、宛先デバイス2−3との間の直接通信が可能になったと最終判断すると、宛先デバイス2−3へ直接接続要求メッセージを送る(図9:矢印(1))。その後、エンドデバイス1は、宛先デバイス2−3からの返信の時限監視を行う。
【0091】
宛先デバイス2−3は、エンドデバイス1からの直接接続要求メッセージを受信すると、エンドデバイス1に対して直接接続応答メッセージを返信する(図9:矢印(2))。この時、宛先デバイス2−3は、エンドデバイス1を子デバイスとして登録する。
【0092】
エンドデバイス1は、時限監視がタイムアップする前に直接接続応答メッセージを受信すると、直接接続成功と判断する。なお、時限監視がタイムアップしたら、直接接続失敗と判断し、論理アドレス問合せメッセージの送信からの処理へと戻る(図8:矢印(1))。
【0093】
エンドデバイス1は、直接接続成功と判断すると、仮の親デバイス2−1へデバイス離脱要求を送る(図9:矢印(3)。仮の親デバイス2−1は、デバイス離脱要求を受信すると、エンドデバイス1をネットワークから離脱させる。この時、仮の親デバイス2−1は、エンドデバイス1の子デバイスとしての登録を削除する。これにより、ルータ2−1は仮の親デバイスから解放される。
【0094】
エンドデバイス1は、ネットワークから離脱した後、宛先デバイス2−3の子デバイスとして、ネットワークに再参加する。このネットワークへの再参加は次のようにして行う。
【0095】
エンドデバイス1は、宛先デバイス2−3にオーハン通知メッセージ(Orphan notification)メッセージを送信する(図9:矢印(4))。その後、エンドデバイス1は、宛先デバイス2−3からの返信の時限監視を行う。
【0096】
宛先デバイス2−3は、オーハン通知メッセージを受信すると、エンドデバイス1にオーハン確認メッセージ(Orphan realignment)を送信する(図9:矢印(5))。
エンドデバイス1は、時限監視がタイムアップする前にオーハン確認メッセージを受信すると、ネットワークへの参加が成功したと判断する。
【0097】
これにより、宛先デバイス2−3との間の親子関係が復帰し、宛先デバイス2−3との間の直接通信が再開される。すなわち、宛先デバイス2−3が親デバイスに戻り、エンドデバイス1と宛先デバイス2−3との間の通信が間接通信から直接通信に切り替えられ(図10参照)、エンドデバイス1と宛先デバイス2−3との間の直接通信が再開される(図2:矢印(1),(2))。
【0098】
このようにして、本実施の形態では、エンドデバイス1において、間接通信を行っている間、所定の周期で、宛先デバイス2−3との間の直接通信が可能か否かが確認され、宛先デバイス2−3との間の直接通信が可能になったことが確認された場合、間接通信から直接通信に切り替えられるので、エンドデバイス1の消費電力の増大が抑えられ、エンドデバイス1を電池駆動とする場合、電池寿命を長くすることができるようになる。
【0099】
〔機能ブロック図〕
図11は上述したジグビーネットワークにおけるエンドデバイス1の要部の機能ブロック図、図12は仮の親デバイス2−1の要部の機能ブロック図、図13は転送デバイス2−2の要部の機能ブロック図、図14は宛先デバイス2−3の要部の機能ブロック図である。エンドデバイス1、仮の親デバイス2−1、転送デバイス2−2、宛先デバイス2−3は、プロセッサや記憶装置からなるハードウェアと、これらのハードウェアと協働して各種機能を実現させるプログラムとによって実現される。
【0100】
エンドデバイス1は、宛先デバイス間親子関係締結部1Aと、直接通信処理部1Bと、宛先デバイス間親子関係解除部1Cと、仮の親子関係締結部1Dと、直接通信復帰確認部1Eと、直接通信再開指令部1Fと、仮の親子関係解除部1Gと、アドレス情報記憶部1Hと、間接通信処理部1Jとを備えている。間接通信処理部1Jはメッセージ処理部1Kとメッセージ受信部1Lとメッセージ送信部1Mとを備えている。
【0101】
エンドデバイス1において、宛先デバイス間親子関係締結部1Aは、宛先デバイス2−3との間で親子関係を結び、この宛先デバイス2−3を親デバイスとしてネットワークへ参加する。直接通信処理部1Bは、宛先デバイス間親子関係締結部1Aによって親子関係が結ばれた宛先デバイス2−3との間で、直接通信を行う。この宛先デバイス間親子関係締結部1Aと直接通信処理部1Bとの組み合わせが本発明でいう直接通信手段に相当する。
【0102】
なお、宛先デバイス間親子関係締結部1Aは、アドレス情報記憶部1Hに記憶されている自己の論理アドレス「#0301」から宛先デバイス2−3の論理アドレス「#03」を割り出し、アドレス情報記憶部1Hに記憶されている自己の通信アドレス「0x0ff7」を読み出し、宛先デバイス2−3との間で親子関係を結ぶ。また、宛先デバイス2−3の通信アドレス「0x0003」を取得し、アドレス情報記憶部1Hに記憶させる。
【0103】
宛先デバイス間親子関係解除部1Cは、直接通信処理部1Bにおいて宛先デバイス2−3からの応答メッセージが受信されない場合、宛先デバイス2−3との間の直接通信が不能となったと判断し、宛先デバイス2−3との間の親子関係を解除する。これにより、エンドデバイス1がネットワークから離脱する。
【0104】
仮の親子関係締結部1Dは、宛先デバイス間親子関係解除部1Cが宛先デバイス2−3との間の親子関係を解除したことを受けて、直接通信可能な圏内に位置する他のルータ2(この例では、ルータ2−1)と親子関係を結び、この親子関係を結んだルータ2−1を仮の親デバイスとしてネットワークへ再参加する。また、このネットワークへの再参加と同時に、間接通信処理部1Jへ間接通信の開始を指示する。また、仮の親デバイス2−1の通信アドレス「0x0001」を取得し、アドレス情報記憶部1Hに記憶させる。
【0105】
直接通信復帰確認部1Eは、間接通信処理部1Jによって宛先デバイス2−3との間で間接通信が行われている間、所定の周期で、宛先デバイス2−3との間の直接通信が可能か否かを確認する。この場合、アドレス情報記憶部1Hに記憶されている自己の論理アドレス「#0301」から宛先デバイス2−3の論理アドレス「#03」を割り出し、所定の周期で、論理アドレス「#03」を含む論理アドレス問合せメッセージをマルチキャスト送信し、この論理アドレス問合せメッセージに対する論理アドレス応答メッセージが受信された場合に、宛先デバイス2−3との間の直接通信が可能になったと判断する。
【0106】
この直接通信復帰確認部1Eが本発明でいう直接通信復帰確認手段に相当する。また、宛先デバイス間親子関係解除部1Cと仮の親子関係締結部1Dと間接通信処理部1Jとの組み合わせが本発明でいう間接通信手段に相当する。
【0107】
なお、宛先デバイス2−3には、図14に示されるように、論理アドレス確認応答部23Eが設けられている。論理アドレス確認応答部23Eは、エンドデバイス1からの論理アドレス問合せメッセージを受信した場合、この論理アドレス問合せメッセージに含まれる論理アドレスがアドレス情報記憶部23Aに記憶されている自己の論理アドレスと一致するか否かを判断し、自己の論理アドレスと一致する場合、エンドデバイス1に対して論理アドレス応答メッセージを送信する。この論理アドレス確認応答部23Eが本発明でいう論理アドレス確認応答手段に相当する
【0108】
直接通信再開指令部1Fは、直接通信復帰確認部1Eによって宛先デバイス2−3との間の直接通信が可能になったことが確認された場合、間接通信処理部1Jに間接通信の終了を指示すると共に、仮の親子関係解除部1Gに仮の親デバイス2−1との間の親子関係の解除を指示し、宛先デバイス間親子関係締結部1Aに宛先デバイス2−3との間の親子関係の復帰を指示する。これにより、仮の親デバイス2−1との間の親子関係が解除され(ネットワークから離脱)、宛先デバイス2−3との間の親子関係が復帰され(ネットワークへ再参加)、直接通信処理部1Bによる宛先デバイス2−3との間の直接通信が再開される。この直接通信再開指令部1Fが本発明でいう直接通信再開手段に相当する。
【0109】
〔間接通信:エンドデバイスから宛先デバイスへのメッセージの送信(往路)〕
間接通信処理部1Jにおいて、メッセージ処理部1Kは、宛先デバイス2−3にメッセージを送信する場合、アドレス情報記憶部1H中の自己の通信アドレス「0x0ff7」、仮の親デバイス2−1の通信アドレス「0x0001」、宛先デバイス2−3の通信アドレス「0x0003」を取得し、仮の親デバイス2−1へのメッセージM1(図5参照)を作成する。このメッセージM1には、ルート探索要求情報(ルート探索要求ビット)や代理通信要求情報(代理通信要求ビット)なども含まれる。
【0110】
この作成されたメッセージM1は、メッセージ送信部1Mより、仮の親デバイス2−1へ送信される。エンドデバイス1からのメッセージM1は仮の親デバイス2−1(図12)の第1のメッセージ受信部21Bで受信される。第1のメッセージ受信部21Bは、メッセージM1に含まれるルート探索要求情報がルート探索を実行することを示していた場合、すなわちルート探索要求ビットが「1」であった場合、往還ルート探索実行部21Cにルート探索の実行を指示する。この指示を受けて、往還ルート探索実行部21Cがルート探索を実行し、仮の親デバイス2−1から宛先デバイス2−3までの往還ルートを決めるルーティングテーブルRTB1〜3が各デバイス内に作成される。
【0111】
また、第1のメッセージ受信部21Bは、メッセージM1に含まれる代理通信要求情報が代理通信を実行することを示していた場合、すなわち代理通信要求ビットが「1」であった場合、その旨をメッセージM1と合わせて代理情報記憶部21Dおよび代理メッセージ送信部21Eに知らせる。
【0112】
代理情報記憶部21Dは、第1のメッセージ受信部21Bからの代理通信を実行する旨の知らせを受けて、メッセージM1に含まれているNWK層の送信元のアドレス(エンドデバイス1の通信アドレス「0x0ff7」)と送信先(最終的な送信先(宛先))のアドレス(宛先デバイス2−3の通信アドレス「0x0003」)を代理情報として記憶する。
【0113】
代理メッセージ送信部21Eは、第1のメッセージ受信部21Bからの代理通信を実行する旨の知らせを受けて、メッセージM1に含まれているNWK層の送信元のアドレス(エンドデバイス1の通信アドレス「0x0ff7」)を自己の通信アドレス(仮の親デバイス2−1の通信アドレス「0x0001」)に書き替える。また、MAC層の送信元アドレスを自己の通信アドレスとし、MAC層の送信先アドレスをルーティングテーブルRTB1に従う次の送信先のデバイスの通信アドレスとし、ルート探索要求ビットおよび代理通信要求ビットを「0」とする。そして、この書き替えを行ったメッセージM1を代理メッセージM1’として(図5参照)、次の送信先のデバイス(転送デバイス2−2)へ送信する。
【0114】
この仮の親デバイス2−1において、第1のメッセージ受信部21Bが本発明でいうメッセージ受信手段に相当し、往還ルート探索実行部21Cが往還ルート探索実行手段に相当し、代理情報記憶部21Dと代理メッセージ送信部21Eとの組合せが代理メッセージ送信処理手段に相当する。
【0115】
仮の親デバイス2−1からの代理メッセージM1’は、転送デバイス2−2(図13)の第1のメッセージ受信部22Bで受信され、第1のメッセージ転送部22Cへ送られる。第1のメッセージ転送部22Cは、代理メッセージM1’中のMAC層の送信元アドレスを自己の通信アドレスとし、MAC層の送信先アドレスをルーティングテーブルRTB2に従う次の送信先のデバイスの通信アドレスとし、このMAC層の送信元および送信先のアドレスを書き替えた代理メッセージM1’をM1”として(図5参照)、次の送信先のデバイス(宛先デバイス2−3)へ送信する。
【0116】
転送デバイス2−2からの代理メッセージM1”は、宛先デバイス2−3(図14)のメッセージ受信部23Cで受信され、メッセージ処理部23Bへ送られる。メッセージ処理部23Bは送られてきた代理メッセージM1”を処理する。
【0117】
〔間接通信:宛先デバイスからエンドデバイスへのメッセージの返信(還路)〕
メッセージ処理部23Bは、ルーティングテーブルRTB3から次の返信先の通信アドレス(転送デバイス2−2の通信アドレス「0x0002」)を取得し、メッセージM2を作成する。このメッセージM2中、メッセージ処理部23Bは、MAC層の返信元アドレスを自己の通信アドレス「0x0003」とし、MAC層の返信先アドレスを次の返信先の通信アドレス「0x0002」とし、NWK層の返信元アドレスを自己の通信アドレス「0x0003」とし、NWK層の返信先アドレスを仮の親デバイス2−1の通信アドレス「0x0001」とする。また、代理通信要求ビットを「0」とする(図6参照)。この作成されたメッセージM2は、メッセージ返信部23Dより、転送デバイス2−2へ返信される。
【0118】
この宛先デバイス2−3において、メッセージ処理部23Bとメッセージ返信部23Dとの組合せが、本発明でいうメッセージ返信処理手段に相当する。
【0119】
宛先デバイス2−3からのメッセージM2は、転送デバイス2−2の第2のメッセージ受信部22Dで受信され、第2のメッセージ転送部22Eへ送られる。第2のメッセージ転送部22Eは、メッセージM2中のMAC層の返信元アドレスを自己の通信アドレスとし、MAC層の返信先アドレスをルーティングテーブルRTB2に従う次の送信先のデバイスの通信アドレスとし、このMAC層の送信元および送信先のアドレスを書き替えたメッセージM2をM2’として(図6参照)、次の返信先のデバイス(仮の親デバイス2−1)へ返信する。
【0120】
転送デバイス2−2からのメッセージM2’は、仮の親デバイス2−1の第2のメッセージ受信部21Fで受信され、代理情報確認部21Gへ送られる。代理情報確認部21Gは、メッセージM2’中のNWK層の返信元アドレスと一致するアドレスが代理情報記憶部21DにNWK層の送信先アドレスとして存在するか否かを確認し、存在すればその旨をメッセージM2’と合わせて代理通信解除部21Hへ知らせる。
【0121】
代理通信解除部21Hは、代理情報確認部21Gからの一致するアドレスが存在する旨の知らせを受けて、その一致するアドレスと対として記憶されているNWK層の送信元アドレスを読み出し、メッセージM2’中のNWK層の返信先アドレスをその読み出したNWK層の送信元アドレスに書き替えるともに、その時に用いたNWK層の送信元アドレスと送信先アドレスとの対を代理情報記憶部21Dから削除する。この代理通信解除部21Hで書き替えられたメッセージM2’は、メッセージM2”としてメッセージ返送部21Iへ送られ、エンドデバイス1へ返送される。
【0122】
この仮の親デバイス2−1において、代理情報確認部21Gが本発明でいう代理情報確認手段に相当し、代理通信解除部21Hが本発明でいう代理通信解除手段に相当し、メッセージ返送部21Iが本発明でいうメッセージ返送手段に相当する。
【0123】
仮の親デバイス2−1からのメッセージM2”は、エンドデバイス1のメッセージ受信部1Lで受信され、メッセージ処理部1Kへ送られる。メッセージ処理部1Kは送られてきたメッセージM2”を処理する。
【0124】
なお、転送デバイス2−2や宛先デバイス2−3において、メッセージの送受信が途切れた場合には、仮の親デバイス2−1に対して所定のエラーメッセージを送信し、このエラーメッセージを受信した仮の親デバイス2−1が再度、往還ルート探索を実行し、この探索により各デバイスに再作成されたルーティングテーブルに従って、メッセージの送受信を再開するようにしてもよい。
【0125】
また、本発明は、間接通信を代理通信方式とすることを特徴とするが、通信アドレスのツリー・ルート情報に基づいた単一のルートに従って、宛先デバイスからエンドデバイスまでメッセージの返信を行うようにする通常の間接通信方式においても、直接通信が可能か否かを確認するようにし、間接通信から直接通信への切り替えを行うようにしてもよい。
【産業上の利用可能性】
【0126】
本発明の無線通信システムは、通信幹線を無線化したメッシュ構造の中規模、大規模の監視制御システムなど様々な分野で利用することが可能である。具体的には、VAV(可変風量調節)による居室内空調システムへの適用などが考えられる。
【符号の説明】
【0127】
1…エンドデバイス、2…ルータ、2−1…仮の親デバイス、2−2…転送デバイス、2−3…宛先デバイス、3…コーディネータ、TB1…送信要求テーブル、RTB1、RTB2、RTB3…ルーティングテーブル、M1,M1’,M1”…メッセージ、M2,M2’,M2”…メッセージ、1A…宛先デバイス間親子関係締結部、1B…直接通信処理部、1C…宛先デバイス間親子関係解除部、1D…仮の親子関係締結部、1E…直接通信復帰確認部、1F…直接通信再開指令部、1G…仮の親子関係解除部、1H…アドレス情報記憶部、1J…間接通信処理部、1K…メッセージ処理部、1L…メッセージ受信部、1M…メッセージ送信部、21A…アドレス情報記憶部、21B…第1のメッセージ受信部、21C…往還探索実行部、21D…代理情報記憶部、21E…代理メッセージ送信部、21F…第2のメッセージ受信部、21G…代理情報確認部、21H…代理通信解除部、21I…メッセージ返送部、22A…アドレス情報記憶部、22B…第1のメッセージ受信部、22C…第1のメッセージ転送部、22D…第2のメッセージ受信部、22E…第2のメッセージ転送部、23A…アドレス情報記憶部、23B…メッセージ処理部、23C…メッセージ受信部、23D…メッセージ返信部、23E…論理アドレス確認応答部。
【特許請求の範囲】
【請求項1】
最下位に位置するエンドデバイスと、このエンドデバイスと直接通信可能な圏内に位置する複数の上位デバイスとを備え、前記上位デバイスの1つを前記エンドデバイスからのメッセージの最終的な送信先である宛先デバイスとするツリー構造の無線通信システムにおいて、
前記エンドデバイスは、
前記宛先デバイスと親子の接続関係を結び、当該宛先デバイスに対して直接、メッセージの送信を行う直接通信手段と、
前記直接通信手段からのメッセージに対する前記宛先デバイスからの応答メッセージが受信されない場合、前記宛先デバイスとの親子の接続関係を解除し、他の上位デバイスと親子の接続関係を結び、この親子の接続関係を結んだ上位デバイスを仮の親デバイスとし、この仮の親デバイスに対して送信元のアドレスとして自己の通信アドレスと、最終的な送信先のアドレスとして前記宛先デバイスの通信アドレスと、代理通信を実行するか否かの情報として代理通信要求情報と、ルート探索を実行するか否かの情報としてルート探索要求情報とを少なくとも含む代理要求メッセージを送信し、前記宛先デバイスへの間接的なメッセージの送信を開始する間接通信手段と、
前記間接通信手段による前記宛先デバイスへの間接的なメッセージの送信が行われている間、所定の周期で、前記宛先デバイスとの間の直接通信が可能か否かを確認する直接通信復帰確認手段と、
前記直接通信復帰確認手段によって前記宛先デバイスとの間の直接通信が可能になったことが確認された場合、前記仮の親デバイスとの親子の接続関係を解除し、前記宛先デバイスとの間の親子の接続関係を復帰させ、前記直接通信手段による前記宛先デバイスへのメッセージの直接送信を再開させる直接通信再開手段と
を備えることを特徴とする無線通信システム。
【請求項2】
請求項1に記載された無線通信システムにおいて、
前記直接通信復帰確認手段は、
前記間接通信手段による前記宛先デバイスへの間接的なメッセージの送信が行われている間、所定の周期で、前記宛先デバイスの論理アドレスを含む論理アドレス問合せメッセージをマルチキャスト送信し、この論理アドレス問合せメッセージに対する前記宛先デバイスからの論理アドレス応答メッセージが受信された場合に、前記宛先デバイスとの間の直接通信が可能になったと判断し、
前記宛先デバイスは、
前記エンドデバイスからの論理アドレス問合せメッセージを受信した場合、当該メッセージに含まれる論理アドレスが自己の論理アドレスと一致するか否かを判断し、自己の論理アドレスと一致する場合、前記エンドデバイスに対して前記論理アドレス応答メッセージを送信する論理アドレス確認応答手段
を備えることを特徴とする無線通信システム。
【請求項3】
請求項1に記載された無線通信システムにおいて、
前記間接通信手段は、
前記直接通信手段からのメッセージに対する前記宛先デバイスからの応答メッセージが受信されない場合、前記宛先デバイスとの親子の接続関係を解除した後、前記上位デバイスに対してビーコン要求メッセージをマルチキャスト送信し、このビーコン要求メッセージに対する前記上位デバイスからのビーコン応答メッセージに含まれる電波強度に基づいて前記仮の親デバイスを特定する
ことを特徴とする無線通信システム。
【請求項4】
請求項2に記載された無線通信システムにおいて、
前記直接通信復帰確認手段は、
前記論理アドレス問合せメッセージに対する前記宛先デバイスからの論理アドレス応答メッセージが受信された場合、前記宛先デバイスに対して確認要求メッセージを送信し、この確認要求メッセージに対する確認応答メッセージが所定時間内に返送されてきたことを確認した回数を1回とし、前記確認要求メッセージに対する確認応答メッセージが連続して所定回数確認された場合に、前記宛先デバイスとの間の直接通信が可能になったと判断する
ことを特徴とする無線通信システム。
【請求項5】
請求項1に記載された無線通信システムにおいて、
前記仮の親デバイスは、
前記エンドデバイスからのメッセージを受信するメッセージ受信手段と、
前記受信されたエンドデバイスからのメッセージに含まれるルート探索要求情報がルート探索を実行することを示していた場合、自デバイスから前記宛先デバイスまでの往還ルートの探索を実行する往還ルート探索実行手段と、
前記受信されたエンドデバイスからのメッセージに含まれる代理通信要求情報が代理通信を実行することを示していた場合、そのメッセージに含まれている前記送信元のアドレスと前記最終的な送信先のアドレスとの対を代理情報として記憶する一方、そのメッセージに含まれている前記送信元のアドレスを自己の通信アドレスに書き替えて前記宛先デバイスへの代理メッセージとし、この代理メッセージを前記探索された往ルートに従う次の送信先のデバイスへ送信する代理メッセージ送信処理手段と
を備えることを特徴とする無線通信システム。
【請求項6】
請求項5に記載された無線通信システムにおいて、
前記宛先デバイスは、
前記仮の親デバイスからの代理メッセージを受信した場合、前記仮の親デバイスにより探索された還ルートに従う次の送信先のデバイスに対して、返信元のアドレスとして自己の通信アドレスを、最終的な返信先のアドレスとして前記仮の親デバイスの通信アドレスを少なくともむメッセージを返信するメッセージ返信処理手段を備え、
前記仮の親デバイスは、
前記宛先デバイスからのメッセージを受信した場合、そのメッセージに含まれている返信元のアドレスと一致するアドレスが前記代理情報中に最終的な送信先のアドレスとして存在するか否かを確認する代理情報確認手段と、
この代理情報確認手段によって前記代理情報中に一致するアドレスが存在することが確認された場合、その一致するアドレスと対として記憶されている代理情報中の送信元のアドレスを読み出し、前記宛先デバイスからのメッセージに含まれている返信先のアドレスをその読み出した送信元のアドレスに書き替えるとともに、その時に用いた代理情報を削除する代理通信解除手段と、
この代理通信解除手段によって書き替えられた前記宛先デバイスからのメッセージを前記エンドデバイスに返送するメッセージ返送手段と
を備えることを特徴とする無線通信システム。
【請求項1】
最下位に位置するエンドデバイスと、このエンドデバイスと直接通信可能な圏内に位置する複数の上位デバイスとを備え、前記上位デバイスの1つを前記エンドデバイスからのメッセージの最終的な送信先である宛先デバイスとするツリー構造の無線通信システムにおいて、
前記エンドデバイスは、
前記宛先デバイスと親子の接続関係を結び、当該宛先デバイスに対して直接、メッセージの送信を行う直接通信手段と、
前記直接通信手段からのメッセージに対する前記宛先デバイスからの応答メッセージが受信されない場合、前記宛先デバイスとの親子の接続関係を解除し、他の上位デバイスと親子の接続関係を結び、この親子の接続関係を結んだ上位デバイスを仮の親デバイスとし、この仮の親デバイスに対して送信元のアドレスとして自己の通信アドレスと、最終的な送信先のアドレスとして前記宛先デバイスの通信アドレスと、代理通信を実行するか否かの情報として代理通信要求情報と、ルート探索を実行するか否かの情報としてルート探索要求情報とを少なくとも含む代理要求メッセージを送信し、前記宛先デバイスへの間接的なメッセージの送信を開始する間接通信手段と、
前記間接通信手段による前記宛先デバイスへの間接的なメッセージの送信が行われている間、所定の周期で、前記宛先デバイスとの間の直接通信が可能か否かを確認する直接通信復帰確認手段と、
前記直接通信復帰確認手段によって前記宛先デバイスとの間の直接通信が可能になったことが確認された場合、前記仮の親デバイスとの親子の接続関係を解除し、前記宛先デバイスとの間の親子の接続関係を復帰させ、前記直接通信手段による前記宛先デバイスへのメッセージの直接送信を再開させる直接通信再開手段と
を備えることを特徴とする無線通信システム。
【請求項2】
請求項1に記載された無線通信システムにおいて、
前記直接通信復帰確認手段は、
前記間接通信手段による前記宛先デバイスへの間接的なメッセージの送信が行われている間、所定の周期で、前記宛先デバイスの論理アドレスを含む論理アドレス問合せメッセージをマルチキャスト送信し、この論理アドレス問合せメッセージに対する前記宛先デバイスからの論理アドレス応答メッセージが受信された場合に、前記宛先デバイスとの間の直接通信が可能になったと判断し、
前記宛先デバイスは、
前記エンドデバイスからの論理アドレス問合せメッセージを受信した場合、当該メッセージに含まれる論理アドレスが自己の論理アドレスと一致するか否かを判断し、自己の論理アドレスと一致する場合、前記エンドデバイスに対して前記論理アドレス応答メッセージを送信する論理アドレス確認応答手段
を備えることを特徴とする無線通信システム。
【請求項3】
請求項1に記載された無線通信システムにおいて、
前記間接通信手段は、
前記直接通信手段からのメッセージに対する前記宛先デバイスからの応答メッセージが受信されない場合、前記宛先デバイスとの親子の接続関係を解除した後、前記上位デバイスに対してビーコン要求メッセージをマルチキャスト送信し、このビーコン要求メッセージに対する前記上位デバイスからのビーコン応答メッセージに含まれる電波強度に基づいて前記仮の親デバイスを特定する
ことを特徴とする無線通信システム。
【請求項4】
請求項2に記載された無線通信システムにおいて、
前記直接通信復帰確認手段は、
前記論理アドレス問合せメッセージに対する前記宛先デバイスからの論理アドレス応答メッセージが受信された場合、前記宛先デバイスに対して確認要求メッセージを送信し、この確認要求メッセージに対する確認応答メッセージが所定時間内に返送されてきたことを確認した回数を1回とし、前記確認要求メッセージに対する確認応答メッセージが連続して所定回数確認された場合に、前記宛先デバイスとの間の直接通信が可能になったと判断する
ことを特徴とする無線通信システム。
【請求項5】
請求項1に記載された無線通信システムにおいて、
前記仮の親デバイスは、
前記エンドデバイスからのメッセージを受信するメッセージ受信手段と、
前記受信されたエンドデバイスからのメッセージに含まれるルート探索要求情報がルート探索を実行することを示していた場合、自デバイスから前記宛先デバイスまでの往還ルートの探索を実行する往還ルート探索実行手段と、
前記受信されたエンドデバイスからのメッセージに含まれる代理通信要求情報が代理通信を実行することを示していた場合、そのメッセージに含まれている前記送信元のアドレスと前記最終的な送信先のアドレスとの対を代理情報として記憶する一方、そのメッセージに含まれている前記送信元のアドレスを自己の通信アドレスに書き替えて前記宛先デバイスへの代理メッセージとし、この代理メッセージを前記探索された往ルートに従う次の送信先のデバイスへ送信する代理メッセージ送信処理手段と
を備えることを特徴とする無線通信システム。
【請求項6】
請求項5に記載された無線通信システムにおいて、
前記宛先デバイスは、
前記仮の親デバイスからの代理メッセージを受信した場合、前記仮の親デバイスにより探索された還ルートに従う次の送信先のデバイスに対して、返信元のアドレスとして自己の通信アドレスを、最終的な返信先のアドレスとして前記仮の親デバイスの通信アドレスを少なくともむメッセージを返信するメッセージ返信処理手段を備え、
前記仮の親デバイスは、
前記宛先デバイスからのメッセージを受信した場合、そのメッセージに含まれている返信元のアドレスと一致するアドレスが前記代理情報中に最終的な送信先のアドレスとして存在するか否かを確認する代理情報確認手段と、
この代理情報確認手段によって前記代理情報中に一致するアドレスが存在することが確認された場合、その一致するアドレスと対として記憶されている代理情報中の送信元のアドレスを読み出し、前記宛先デバイスからのメッセージに含まれている返信先のアドレスをその読み出した送信元のアドレスに書き替えるとともに、その時に用いた代理情報を削除する代理通信解除手段と、
この代理通信解除手段によって書き替えられた前記宛先デバイスからのメッセージを前記エンドデバイスに返送するメッセージ返送手段と
を備えることを特徴とする無線通信システム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【公開番号】特開2012−209819(P2012−209819A)
【公開日】平成24年10月25日(2012.10.25)
【国際特許分類】
【出願番号】特願2011−74850(P2011−74850)
【出願日】平成23年3月30日(2011.3.30)
【出願人】(000006666)アズビル株式会社 (1,808)
【Fターム(参考)】
【公開日】平成24年10月25日(2012.10.25)
【国際特許分類】
【出願日】平成23年3月30日(2011.3.30)
【出願人】(000006666)アズビル株式会社 (1,808)
【Fターム(参考)】
[ Back to top ]