通信システム
【課題】ネットワーク内の各ノードの低消費電力化を図るとともに、ネットワークの自動構築が可能な通信システムを提供する。
【解決手段】子ノードS0は報知情報に含まれているタイミング情報に基づいて次に受信する報知情報のタイミングを算出する。そして、管理ノードMから送信された報知情報の入力を受け付け、登録要求を送信する。さらに、管理ノードMから送信された報知情報の入力を受け付け、報知情報に含まれているスロット割当情報に基づいて、自己がネットワークに登録されているか否かを判断する。そして、自己がネットワークに登録されていると判断した場合に、管理ノードMから送信される応答要求を受信するタイミングを算出する。
【解決手段】子ノードS0は報知情報に含まれているタイミング情報に基づいて次に受信する報知情報のタイミングを算出する。そして、管理ノードMから送信された報知情報の入力を受け付け、登録要求を送信する。さらに、管理ノードMから送信された報知情報の入力を受け付け、報知情報に含まれているスロット割当情報に基づいて、自己がネットワークに登録されているか否かを判断する。そして、自己がネットワークに登録されていると判断した場合に、管理ノードMから送信される応答要求を受信するタイミングを算出する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、通信システムに関し、ネットワークを構築、維持、管理するための通信システムに関する。
【背景技術】
【0002】
近年、近距離無線通信ネットワークの需要が増大してきている。
この近距離無線通信ネットワーク(以下、単にネットワークとも称する)を実現する低コスト・低消費電力型の近距離無線通信規格として一例としてZigBee(登録商標)が策定されている(非特許文献1)。
【0003】
一般的に、ネットワークを構成するに当たっては、ネットワークにおけるノード(node)を複数接続するために、すべてのノードの所在を常に知っておくことが必要であるためノードの存在を検索する必要がある。
【0004】
このノードの存在を検索するために、ブロードキャスト通信(同報通信)が行なわれ、種々の方式が提案されている(特許文献1および2)。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2000−134235号公報
【特許文献2】特開2000−353143号公報
【非特許文献】
【0006】
【非特許文献1】IEEE Std.802.15.4-2003, IEEE Standard for Information Technology
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、従来のネットワークの構築において、ネットワーク内の各ノードがブロードキャスト通信に対して非同期に応答フレームを送信するため、受信側の管理ノードの通信部は、常に電力が供給された状態になければならず、低消費電力状態へ移行することができなかった。
【0008】
また、ネットワーク内の各ノードの個数等を予めパラメータとして設定しておく必要があり、ネットワークを動的に変更することは困難であった。
【0009】
本発明は上記のような問題を解決するためになされたものであって、ネットワーク内の各ノードの低消費電力化を図るとともに、ネットワークの自動構築が可能な通信システムを提供する。
【課題を解決するための手段】
【0010】
本発明の一実施例に従う通信システムは、複数の端末と、複数の端末の状態を管理する管理ノードとを備える。管理ノードは、データ通信の1サイクルを規定する、1スーパフレームの構成に従って、複数の端末との間でのデータ送受信を実行するための通信部と、管理ノード全体を制御する制御部とを含む。1スーパフレームは、1スーパフレームの構成を示す報知情報フレームをブロードキャスト送信する報知区間を少なくとも1つ含む。各端末は、報知情報フレームの内容に従って報知情報フレームに対する応答信号を出力する。制御部は、通信部を介して送信した報知情報フレームに対する応答信号を受信した場合には、1スーパフレームの構成に、報知情報フレームに対する応答信号を受信した端末との間でのデータの送受信を実行するために割り当てたデータ通信区間を追加する。データ通信区間の追加に従って、1スーパフレームの構成を示す報知情報フレームを更新する。更新された報知情報フレームを受信した複数の端末のうちの少なくとも1つは、更新された報知情報フレームに従って、自己のために割り当てられたデータ通信区間に同期して、管理ノードとの間でデータの送受信を実行する。
【発明の効果】
【0011】
本発明の一実施例によれば、通信システムは、報知情報フレームに対する応答信号を受信した端末との間でのデータの送受信を実行するために割り当てたデータ通信区間を追加して、報知情報フレームを更新する。端末は、更新された報知情報フレームに従って、自己のために割り当てられたデータ通信区間に同期して、管理ノードとの間でデータの送受信を実行するため、自己の以外のデータ通信区間はスリープ状態として低消費電力化を図ることが可能であるとともに、ネットワークの自動構築が可能である。また、管理ノードについても、いずれかの端末とのデータ通信区間以外の期間においてはスリープ状態として低消費電力化を図ることが可能である。
【図面の簡単な説明】
【0012】
【図1】本発明の実施の形態1に従うネットワークを形成するノードの概略を説明する図である。
【図2】本発明の実施の形態1に従う管理ノードから報知情報フレーム(以下、単に報知情報フレームとも称する)が送信される場合を説明する図である。
【図3】各子ノードSからそれぞれ応答フレームを送信する場合を説明する図である。
【図4】本発明の実施の形態1に従う管理ノードMの構成を示す図である。
【図5】本発明の実施の形態1に従う子ノードSのハードウェアの構成を説明する図である。
【図6】管理ノードMが起動された場合における報知情報フレームの送信を説明する図である。
【図7】本発明の実施の形態1に従う管理ノードMに子ノードSが未登録の状態において子ノードS0をネットワークへ登録する(管理ノードMに登録するとも称す)場合の処理の流れについて説明する図である。
【図8】本発明の実施の形態1に従う管理ノードMに子ノードSが未登録の状態において子ノードS0,S1を管理ノードMに登録する場合の処理の流れについて説明する図である。
【図9】本発明の実施の形態1に従う管理ノードMに既に子ノードS0,S1が登録されている状態において新たに子ノードS2を管理ノードMに登録する場合の処理の流れについて説明する図である。
【図10】管理ノード(後述する中継ノードRを含む)から子ノードに対して送信する無線フレームの構成について説明する図である。
【図11】子ノードから管理ノード(中継ノードRも含む)に対して送信する無線フレームの構成について説明する図である。
【図12】本発明の実施の形態1に従う管理ノードMにおけるデータ通信の処理の流れについて説明するフロー図である。
【図13】本発明の実施の形態1に従うスーパフレーム区間の設定処理について説明するフロー図である。
【図14】子ノードSにおけるデータ通信の処理の流れについて説明するフロー図である。
【図15】本発明の実施の形態1に従うサーチ開始の処理を説明するフロー図である。
【図16】子ノードSにおける受信区間および送信区間の設定を説明する図である。
【図17】本発明の実施の形態1に従う同期モードの処理を説明するフロー図である。
【図18】本発明の実施の形態1に従うエラー処理を説明するフロー図である。
【図19】管理ノードMにおけるデータ通信のチャネルが変更された場合の子ノードS0のチャネルの変更について説明する図である。
【図20】本発明の実施の形態2に従うネットワークを形成するノードの概略を説明する図である。
【図21】本発明の実施の形態2に管理ノードMおよび中継ノードRから送信される報知情報フレームを説明する図である。
【図22】本発明の実施の形態2に従う中継ノードRの構成を示す図である。
【図23】本発明の実施の形態2に従う中継ノードR0をネットワークに登録する場合の処理の流れについて説明する図である。
【図24】本発明の実施の形態2に従う中継ノードR0を用いて圏外ノードをネットワークに登録する場合の処理の流れについて説明する図である。
【図25】本発明の実施の形態2に従う管理ノードMと、中継ノードR0を用いた子ノードとのデータの流れについて説明する図である。
【図26】本発明の実施の形態2に従う管理ノードMと、中継ノードR0を用いた子ノードとのデータの別の流れについて説明する図である。
【図27】本発明の実施の形態2に従う中継ノードにおける同期モードの処理を説明するフロー図である。
【図28】本発明の実施の形態2に従う中継判定モードを説明するフロー図である。
【図29】本発明の実施の形態2に従う中継モードを説明するフロー図である。
【図30】管理ノードMおよび中継ノードRで管理している子ノードのID情報を説明する図である。
【発明を実施するための形態】
【0013】
(実施の形態1)
図1は、本発明の実施の形態1に従うネットワークを形成するノードの概略を説明する図である。
【0014】
図1を参照して、本例においてはある領域10に設けられた管理ノードMと、複数の子ノードS0〜S4(以下、総称して子ノードSとも称する)とが設けられている場合が示されている。例えば、領域10としては、ある部屋内を想定している。具体的には、ブロードキャスト通信が可能な範囲の領域を想定している。
【0015】
本発明の実施の形態1に従う管理ノードMは、ネットワークを構築して各子ノードSを管理するものとする。なお、管理ノードMおよび各子ノードSは、それぞれを識別する固有のID(Identification)情報を有しているものとする。
【0016】
図2は、本発明の実施の形態1に従う管理ノードから報知情報フレーム(以下、単に報知情報フレームとも称する)が送信される場合を説明する図である。
【0017】
図2を参照して、ここでは、ブロードキャスト通信として、管理ノードMから報知情報フレームが各子ノードSに送信される。
【0018】
各子ノードSは、管理ノードMから送信されたブロードキャスト通信として送信された報知情報フレームを受信して、応答フレームとして、ネットワーク接続参加への登録要求フレーム(以下、単に登録要求フレームとも称する)を送信する。
【0019】
図3は、各子ノードSからそれぞれ応答フレームを送信する場合を説明する図である。
図3に示されるように管理ノードMからの報知情報フレームを受信して、各子ノードS0〜S4はそれぞれ登録要求フレームを送信する。
【0020】
なお、後述するが、各子ノードS0〜S4のそれぞれから登録要求フレームが一斉に送信された場合には輻輳が発生することになるが、管理ノードMはその際には受信可能な1つの子ノードSから送信された登録要求フレームのみ受信し、ネットワークに登録するものとする。
【0021】
管理ノードMは、繰り返し報知情報フレームを送信し、当該報知情報フレームに応答した登録要求フレームに従って各子ノードSを1つずつネットワークに登録する。
【0022】
また、各子ノードSは、管理ノードMから送信される報知情報フレームに基づいて自己がネットワークに登録されたか否かを認識し、登録されていると判断した場合には、登録要求フレームを送信しない。したがって、ネットワークが構築されていくについて、輻輳を生じさせる子ノードSの個数は徐々に減少して、輻輳の問題は解消されることになる。
【0023】
図4は、本発明の実施の形態1に従う管理ノードMの構成を示す図である。
図4(A)を参照して、本発明の実施の形態1に従う管理ノードMは、CPU41と、RAM(Random Access Memory)42と、ROM(Read Only Memory)43と、HDD(Hard Disk Drive)44と、各部を接続する内部バス45と、キーボード47と、ディスプレイ48と、通信部49と、電源管理部46と、電界強度測定部46#と、タイマ45#とを含む。
【0024】
図4(A)は管理ノードMとしてPCを用いた場合の構成であるが、HDD44に変えて情報記憶媒体としての不揮発性メモリを有し、ディスプレイ48及びキーボード47は筐体に接続されて有するのではなく、リモート接続されたPCのディスプレイとキーボードを代用するようにすることも可能である。HDD44に代えた不揮発性メモリと、必要に応じてのリモート接続によるディスプレイとキーボードとを用いることで、管理ノードMがスリープ状態に容易に遷移することが可能となる。
【0025】
管理ノードMのCPU41は、管理ノードM全体を制御するとともに、ROM43に格納されているソフトウェアプログラムを読み込むことにより、子ノードSとの間で通信部49を介したデータ通信を実行する。データ通信の詳細については後述する。また、予めROM43には、管理ノードMの固有のID情報が格納されているものとする。
【0026】
RAM42をCPU41のワークメモリとして用いられる。また、HDD44は、子ノードSから送信されるデータを蓄積する記憶領域として用いられる。
【0027】
また、通信部49を介したネットワークが構築された子ノードSとの間のデータ通信状況をディスプレイ48に表示することが可能であるものとする。
【0028】
また、電源管理部46は、各部にそれぞれ供給する電力を管理し、CPU41からの指示に従って通常電力状態に復帰するために必要な電力供給以外は、全ての電力の供給を停止する、いわゆるスリープ状態である低消費電力状態に移行させることが可能である。
【0029】
電界強度測定部46#は、データ通信の際における外部環境の電界強度を測定する。
タイマ45#は、CPU41からの指示に従って設定された時刻となるまでカウントする。そして、設定された時刻となった場合に電源管理部46に通知する。低消費電力状態となっている場合に、電源管理部46は、当該タイマ45#からの通知に従って低消費電力状態から通常電力状態に復帰させる。
【0030】
図4(B)を参照して、ここでは、管理ノードMのソフトウェアでの機能ブロック図が示されている。
【0031】
具体的には、ソフトウェアにより実現される機能ブロックとしては、チャネル設定部144と、スーパフレーム設定部146と、データ送受信制御部148とを含む。
【0032】
チャネル設定部144は、電界強度測定部46#において測定した電界強度に従って最も干渉が少ないと考えられるデータ通信に最適なチャネル(周波数帯)を設定する。
【0033】
スーパフレーム設定部146は、通信部49を介した子ノードSとの間での1サイクルのデータ通信の各処理の内容を規定する。本例において、各処理のデータ通信区間のことをスロットとも称する。
【0034】
データ送受信制御部148は、スーパフレーム設定部146で設定されたスーパフレームに従った通信部49を介したデータ通信を子ノードSとの間で実行する。
【0035】
図5は、本発明の実施の形態1に従う子ノードSのハードウェアの構成を説明する図である。
【0036】
図5を参照して、子ノードSは、CPU11と、RAM(Random Access Memory)12と、ROM(Read Only Memory)13と、各部を接続する内部バス16と、通信部15と、電源管理部14と、タイマ17とを含む。
【0037】
子ノードSのCPU11は、子ノードS全体を制御するとともに、ROM13に格納されているソフトウェアプログラムを読み込むことにより管理ノードMとの間で通信部15を介したデータ通信を実行する。なお、予めROM13には、固有のID(Identification)情報が格納されているものとする。データ通信の詳細については後述する。
【0038】
電源管理部14は、各部にそれぞれ供給する電力を管理し、CPU11からの指示に従って例えば、消費電力の低減を図るために通信部15に対する電力の供給を停止させたり、逆にデータ通信の際に通信部15に対する電力を供給したりする。なお、図示しないが子ノードSは、一例としてバッテリで駆動するものとして、電源管理部14が当該バッテリを用いて各部に電力を供給するものとする。
【0039】
タイマ17は、必要に応じて計時情報をCPU11に出力する。
図6は、管理ノードMが起動された場合における報知情報フレームの送信を説明する図である。
【0040】
図6を参照して、時刻t0において管理ノードMの通信部49が起動された場合には、まず電界強度測定スキャンを実行する。電界強度測定スキャンとは、データ通信を実行する際における、複数の周波数帯(チャネル)のそれぞれにおける電界強度を測定する。
【0041】
具体的には、通信部49における電界強度測定部46#において複数のチャネルのそれぞれにおける電界強度を測定する。そして、チャネル設定部144は、測定された電界強度に従って、電界強度が最も低いチャネル(最も干渉が少ないチャネル)をデータ通信のチャネルに設定する。
【0042】
そして、時刻t1において設定したチャネルで報知情報フレームの送信を開始する。
通信部49は、初期状態として、1スーパフレーム区間として設定されたスロット0に従うデータ通信を実行する。
【0043】
本例においてスロット0は、報知情報フレームを送信する送信区間(T)と、報知情報フレームに応答した接続要求の受信を受け付ける受信区間(R)と、通信部49における処理を実行しないスリープ区間(S)と、スリープ状態(低消費電力状態)よりデータ送受信可能な状態(通常電力状態)に復帰するウェイクアップ区間(W)とで構成される。
【0044】
後述するがネットワークに子ノードSが登録されることによって、この1スーパフレーム区間は動的に変更されることになる。
【0045】
本例において、通信部49は、初期状態としてデータ通信の1サイクルである1スーパフレーム区間として設定されたスロット0に従う報知情報フレームを送信する処理を繰り返し実行する場合が示されている(時刻t1,t2,t3,t4,t5)。
【0046】
図7は、本発明の実施の形態1に従う管理ノードMに子ノードSが未登録の状態において子ノードS0をネットワークへ登録する(管理ノードMに登録するとも称す)場合の処理の流れについて説明する図である。
【0047】
図7を参照して、まず、管理ノードMから1スーパフレーム区間内のスロット0を使用して報知情報フレームが送信される。この場合、管理ノードMに子ノードSが未登録であるため、スーパフレーム構成情報の1スーパフレーム区間のスロット数は1、スロット割当情報には、子ノードSのIDは未格納である。
【0048】
本例においては、スーパフレーム区間ta0〜ta5のスロット0において管理ノードMから報知情報フレームが送信される場合が示されている。そして、時刻t10において、管理ノードMに未登録である子ノードS0の通信部15が起動され、管理ノードMを検索するための受信区間が開始される。
【0049】
子ノードS0は、時刻t10より受信区間(R)を開始後、管理ノードMより報知情報フレームを受信するまで受信区間(R)を継続する。なお、後述するが所定期間を経過した場合であっても報知情報フレームを受信できない場合には、チャネルの変更処理を実行する。
【0050】
子ノードS0は、時刻t11において、スーパフレーム区間ta2のスロット0において送信された管理ノードMからの報知情報フレームを受信する。すなわち、子ノードS0は、時刻t11に管理ノードMを検出したと判断する。
【0051】
子ノードS0は、管理ノードMより受信した報知情報フレームに含まれるスーパフレーム構成情報、タイミング情報に基づいて、次のスーパフレーム区間ta3における報知情報フレームを受信するためのウェイクアップ区間開始時刻t13を算出する。
【0052】
具体的には、一例として、子ノードS0は、スーパフレーム構成情報である1スーパフレーム区間内のスロット数、タイミング情報の1スロットの区間の長さと受信区間の長さとウェイクアップ時間とに基づいて、ウェイクアップ区間開始時刻t13を時刻t12を基準として「スロット数(1スーパフレーム区間内のスロット数)×1スロット区間の長さ−ウェイクアップ時間−受信区間の長さ」として算出する。そして、子ノードS0は、タイマ17を用いて算出した時刻t13となるまでカウントする。また、子ノードS0は、時刻t12よりスリープ区間(S)を開始し低消費電力状態へ移行する。なお、上記においては、ウェイクアップ区間開始時刻を時刻t12を基準として算出した場合について説明したが一例であり、たとえば時刻t11を基準として算出するようにしても良く、次の報知情報フレームを受信できさえすればどのように計算するようにしても良い。
【0053】
子ノードS0は、タイマ17を用いて時刻t12より開始したスリープ区間(S)満了後、時刻t13において低消費電力状態より通常電力状態(フレームのデータ送受信が可能な状態)へと復帰し、時刻t14より、管理ノードMから送信される報知情報フレームの受信を開始するための受信区間(R)を開始する。
【0054】
子ノードS0は、時刻t14より開始した受信区間(R)にて管理ノードMから送信された報知情報フレームを受信し、受信した報知情報フレームに含まれているスロット割当情報に自己のIDが格納されているか否かにより自己が管理ノードMに登録されているか否かを判断する。
【0055】
子ノードS0は、自己が管理ノードMに未登録であると判断した場合に、管理ノードMより受信した報知情報フレームに含まれるスーパフレーム構成情報、タイミング情報に基づいて、次のスーパフレーム区間ta4における報知情報フレームを受信するためのウェイクアップ区間開始時刻t17を算出する。ウェイクアップ区間開始時刻t17の算出については、時刻t13を算出した場合と同様である。
【0056】
そして、子ノードS0は、タイマ17を用いて算出した時刻t17となるまでカウントする。また、子ノードS0は、時刻t15において、管理ノードMへ自己のIDを格納した登録要求フレームの送信を開始する。そして、登録要求フレームの送信完了後、時刻t16からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0057】
管理ノードMにおいては、子ノードS0から受信した登録要求フレームに格納されているIDが、スロット割当情報に格納済みでない場合には、報知情報フレームのスーパフレーム構成情報のスロット数を加算する。具体的には、1スーパフレーム区間に子ノードS0とのデータ通信に用いられる1スロットを追加する処理が実行される。また、スロット割当情報に登録要求フレームに格納されていた子ノードS0のIDを格納する処理が実行される。
【0058】
子ノードS0は、タイマ17を用いてカウントした時刻t17となった場合に、時刻t16より開始したスリープ区間(S)を終了する。すなわち、子ノードS0は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS0は、スーパフレーム区間ta4のスーパフレームのスロット0の区間である時刻t18において、管理ノードMから送信される報知情報フレームの受信を開始するための受信区間(R)を開始する。
【0059】
子ノードS0は、時刻t18より開始した受信区間(R)にて、受信した報知情報フレームに含まれているスロット割当情報に自己のIDが格納されているか否かに基づいて自己がネットワークに登録されているか否かを判断する。
【0060】
子ノードS0は、自己がネットワークに登録されていると判断した場合には、登録要求フレームは送信しない。
【0061】
そして、子ノードS0は、自己がネットワークに登録されていると判断した場合、管理ノードMから自己に割り当てられたスロットを用いたデータ通信を実行するため、管理ノードMより受信した報知情報フレームに含まれるタイミング情報およびスロット割当情報に基づいて、同じスーパフレーム区間における自己に割り当てられたスロット(ここではスロット1)に対応する同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻t20を算出する。
【0062】
具体的には、スロット割当情報に含まれている自己に割り当てられたスロットの番号(本例では、スロット1)、タイミング情報に含まれている1スロットの区間の長さと、受信区間の長さと、ウェイクアップ時間とに基づいて、ウェイクアップ区間開始時刻t20を時刻t19を基準として、「スロット数(割り当てられたスロット番号)×1スロット区間の長さ−ウェイクアップ時間―受信区間の長さ」として算出する。
【0063】
なお、以下においても同様に報知情報フレームを受信するたびに子ノードSは、管理ノードMから自己に割り当てられたスロットを用いたデータ通信を実行するタイミングを算出するものとする。
【0064】
そして、子ノードS0は、タイマ17を用いて算出した時刻t20となるまでカウントする。また、子ノードS0は、時刻t19からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0065】
子ノードS0は、タイマ17を用いてカウントした時刻t20となった場合に、時刻t19より開始したスリープ区間(S)を終了する。すなわち、子ノードS0は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS0は、スーパフレーム区間ta4のスーパフレームのスロット1の区間である時刻t21において、管理ノードMから自己に割り当てられたスロット(本例ではスロット1)を使用して送信される同期フレームの受信を開始するための受信区間(R)を開始する。
【0066】
子ノードS0は、時刻t21より開始した受信区間(R)にて管理ノードMから送信された同期フレームを受信し、受信した同期フレームに自己のIDが格納されているか否かに基づいて自己に割り当てられたスロットか否かを判断する。本例では、自己のIDが格納されているものとする。
【0067】
子ノードS0は、受信した同期フレームに自己のIDが格納されていると判断した場合には、管理ノードMより、既に受信済みの報知情報フレームに含まれるスーパフレーム構成情報およびタイミング情報に基づいて、次のスーパフレーム区間における自己に割り当てられたスロットを使用して管理ノードMより送信される同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻t24を算出する。具体的には、スーパフレーム構成情報に含まれている1スーパフレーム区間のスロット数、タイミング情報に含まれている1スロットの区間の長さと、受信区間の長さと、ウェイクアップ時間とに基づいて、ウェイクアップ区間開始時刻t24を時刻t22を基準として、「スロット数(1スーパフレーム区間のスロット数)×1スロット区間の長さ−ウェイクアップ時間−受信区間の長さ」として算出する。以降、スーパフレームの構成に変更がない限り、以降、同じ値となる。
【0068】
なお、以下においても同様に自己に割当てられたスロットにおいて同期フレームを受信するたびに子ノードSは、管理ノードMから自己に割り当てられたスロットを用いたデータ通信を実行するタイミングを算出するものとする。
【0069】
そして、子ノードS0は、タイマ17を用いて算出した時刻t24となるまでカウントする。
【0070】
また、子ノードS0は、時刻t22において、管理ノードMへ自己のIDを格納した応答フレームの送信を開始する。そして、応答フレームの送信完了後、時刻t23からスリープ区間(S)を開始し低消費電力状態へ移行する。すなわち、以降、自己に割り当てられたスロット(本例ではスロット1)のみを使用して管理ノードMとの間でのデータ通信を実行し、スーパフレームの構成の変更が通知されるまで報知情報フレームの受信は必要としない。
【0071】
管理ノードMにおいては、子ノードS0から受信した応答フレームに格納されている子ノードS0のIDが、同スロットで既に送信済みの同期フレームに格納した、割り当てた子ノードS0のIDと一致した場合、子ノードS0がネットワーク内で正常に稼動していると判断する。
【0072】
なお、以下においても同様に応答フレームを受信するたびに管理ノードMは、同様の判断を行う。
【0073】
子ノードS0は、タイマ17を用いてカウントした時刻t24となった場合に、時刻t23より開始したスリープ区間(S)を終了する。すなわち、子ノードS0は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS0は、スーパフレーム区間ta5のスーパフレームのスロット1の区間である時刻t25において、管理ノードMから自己に割り当てられたスロット(本例ではスロット1)を使用して送信される同期フレームの受信を開始するための受信区間(R)を開始する。
【0074】
子ノードS0は、時刻t25より開始した受信区間(R)にて管理ノードMから送信された同期フレームを受信し、受信した同期フレームに自己のIDが格納されているか否かに基づいて自己に割り当てられたスロットか否かを判断する。本例では、自己のIDが格納されているものとする。
【0075】
子ノードS0は、受信した同期フレームに自己のIDが格納されていると判断した場合には、管理ノードMより、既に受信済みの報知情報フレームに含まれているスーパフレーム構成情報およびタイミング情報に基づいて、次のスーパフレーム区間における自己に割り当てられたスロットを使用して管理ノードMより送信される同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻を算出する。そして、子ノードS0は、上述したようにタイマ17を用いて算出した時刻となるまでカウントする。
【0076】
子ノードS0は、受信した同期フレームに自己のIDが格納されていると判断した場合には、時刻t26において、管理ノードMへ自己のIDを格納した応答フレームの送信を開始する。そして、応答フレームの送信完了後、時刻t27からスリープ区間(S)を開始し低消費電力状態へ移行する。以降、スーパフレームの構成が変わらない限り同様の動作を繰り返し行う。
【0077】
本発明の実施の形態1に従う方式においては、子ノードS0は、管理ノードMから送信されるフレームを受信するのみで、管理ノードM(接続先ノード)の検索が可能であり、接続先ノードを検索するために子ノードSより検索するためのフレームを非同期で送信する必要がなく、管理ノードMから一定間隔で送信されるフレームを受信することにより可能なため、ネットワーク全体のトラフィックも低減される。
【0078】
また、子ノードSは、管理ノードMより送信されるスーパフレーム構成情報を受信することにより自己に割り当てられた時間帯を占有してデータ通信が可能である。
【0079】
子ノードS0と管理ノードMとの間の同期確立後は、子ノードS0に割り当てられたスロットの区間を用いて、管理ノードMとの間でデータ通信を実行する。したがって、割当てられたスロット以外の区間及び使用しているスロット区間内のフレーム送受信区間以外においてはスリープ区間となり、また、割当てられたスロットにおいては、他の子ノードSがデータ通信を行わないため複数ノードによるフレーム送信によって生じる干渉によるフレームの再送も必要としないので、子ノードS0における消費電力を低減することが可能となる。
【0080】
図8は、本発明の実施の形態1に従う管理ノードMに子ノードSが未登録の状態において子ノードS0,S1を管理ノードMに登録する場合の処理の流れについて説明する図である。
【0081】
図8を参照して、スーパフレーム区間tb0について説明する。
管理ノードMは、スーパフレーム区間tb0内のスロット0を使用して報知情報フレームを送信する。この場合、管理ノードMに子ノードSは未登録であるため、スーパフレーム構成情報の1スーパフレーム区間のスロット数は1、スロット割当情報には、子ノードSのIDは未格納である。
【0082】
一方、時刻t30において、管理ノードMに対して未登録である子ノードS0,S1の通信部15が起動され管理ノードMを検索するための受信区間(R)が開始される。
【0083】
子ノードS0,S1は、時刻t30より受信区間(R)を開始後、管理ノードMよりスーパフレーム区間tb1のスロット0を使用する報知情報フレームを受信するまで受信区間(R)を継続する。なお、子ノードS0,S1は、後述するが所定期間を経過した場合であっても報知情報フレームを受信できない場合には、チャネルの変更処理を実行する。
【0084】
スーパフレーム区間tb1について説明する。
管理ノードMは、時刻t31においてスーパフレーム区間tb1内のスロット0を使用して報知情報フレームの送信を開始する。
【0085】
子ノードS0,S1は、時刻t30より受信区間(R)を開始後、時刻t32において、管理ノードMから報知情報フレームを受信する。すなわち、時刻t32に管理ノードMを検出したと判断する。
【0086】
子ノードS0,S1は、管理ノードMより受信した報知情報フレームに含まれるスーパフレーム構成情報およびタイミング情報に基づいて、次のスーパフレーム区間における報知情報フレームを受信するためのウェイクアップ区間開始時刻t35を算出する。
【0087】
具体的には、スーパフレーム構成情報の1スロットの区間の長さと、1スーパフレーム区間内のスロット数と、タイミング情報のウェイクアップ時間と、受信区間の長さとに基づいて、ウェイクアップ区間開始時刻t35を時刻t33を基準として、「スロット数(1スーパフレーム区間内のスロット数)×1スロット区間の長さ−ウェイクアップ時間―受信区間の長さ」として算出する。
【0088】
そして、子ノードS0,S1は、タイマ17を用いて算出した時刻t35となるまでカウントする。
【0089】
また、子ノードS0,S1は、時刻t33よりスリープ区間(S)を開始し、低消費電力状態へ移行する。
【0090】
子ノードS0,S1は、タイマ17を用いてカウントした時刻t35となった場合に、時刻t33より開始したスリープ区間(S)を終了する。すなわち、子ノードS0,S1は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS0,S1は、スーパフレーム区間tb2のスーパフレームのスロット0の区間である時刻t36より、管理ノードMから送信される報知情報フレームの受信を開始するための受信区間(R)を開始する。
【0091】
次に、スーパフレーム区間tb2について説明する。
管理ノードMは、時刻t36においてスーパフレーム区間内のスロット0を使用して報知情報フレームの送信を開始する。
【0092】
子ノードS0,S1は、時刻t36より開始した受信区間(R)にて、管理ノードMから送信された報知情報フレームを受信し、受信した報知情報フレームに含まれているスロット割当情報に自己のIDが格納されているか否かにより自己が管理ノードMに登録されているか否かを判断する。
【0093】
子ノードS0,S1は、自己が管理ノードMに未登録であると判断した場合に、管理ノードMより受信した報知情報フレームに含まれるスーパフレーム構成情報、タイミング情報に基づいて、次のスーパフレーム区間tb3における報知情報フレームを受信するためのウェイクアップ区間開始時刻t39を算出する。
【0094】
そして、子ノードS0,S1は、タイマ17を用いて算出した時刻t39となるまでカウントする。また、子ノードS0,S1は、時刻t37において、管理ノードMへ自己のIDを格納した登録要求フレームの送信を開始する。そして、登録要求フレームの送信完了後、時刻t38からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0095】
管理ノードMにおいては、子ノードS0あるいはS1から受信した登録要求フレームに格納されているIDが、スロット割当情報に格納済みでない場合には、報知情報フレームのスーパフレーム構成情報のスロット数を加算する。具体的には、1スーパフレーム区間に子ノードS0あるいはS1とのデータ通信に用いられる1スロットを追加する処理が実行される。また、スロット割当情報に登録要求フレームに格納されていた子ノードS0あるいはS1のIDを格納する処理が実行される。
【0096】
ここで、子ノードS0とS1とからの登録要求フレームには輻輳が発生しており、管理ノードMにおいては、子ノードS0からの登録要求フレームであることを識別できる程度に子ノードS0からの当該登録要求フレームを受信し、子ノードS1からの登録要求フレームであることを識別できる程度には子ノードS1からの当該登録要求フレームは受信しなかったものとする。
【0097】
これにより管理ノードMは、子ノードS0から受信した登録要求フレームに従って、報知情報フレームのスーパフレーム構成情報のスロット数を加算する。具体的には、1スーパフレーム区間に子ノードS0とのデータ通信に用いられる1スロットを追加する処理が実行される。また、スロット割当情報に登録要求フレームに格納されていた子ノードS0のIDを格納する処理が実行される(本例では、子ノードS0のIDが格納されるものとする)。
【0098】
スーパフレーム区間tb3について説明する。
子ノードS0,S1は、タイマ17を用いて算出した時刻t39となった場合に、時刻t38より開始したスリープ区間(S)を終了する。すなわち、子ノードS0,S1は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS0,S1は、スーパフレーム区間tb3のスーパフレームのスロット0の区間である時刻t40において、管理ノードMから送信される報知情報フレームの受信を開始するための受信区間(R)を開始する。
【0099】
子ノードS0,S1は、時刻t40より開始した受信区間(R)にて、受信した報知情報フレームに含まれているスロット割当情報に自己のIDが格納されているか否かに基づいて自己がネットワークに登録されているか否かを判断する。
【0100】
子ノードS0は、自己がネットワークに登録されていると判断した場合には、登録要求フレームは送信しない。ここでは、子ノードS0が登録されているものとする。一方、子ノードS1は登録されていないものとする。
【0101】
そして、子ノードS0は、自己がネットワークに登録されていると判断した場合、管理ノードMから自己に割り当てられたスロットを用いたデータ通信を実行するため、管理ノードMより受信した報知情報フレームに含まれるタイミング情報およびスロット割当情報に基づいて、同じスーパフレーム区間における自己に割り当てられたスロット(ここではスロット1)に対応する同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻t43を算出する。
【0102】
具体的には、スロット割当情報に含まれている自己に割り当てられたスロットの番号(本例では、スロット1)、タイミング情報に含まれている1スロットの区間の長さと、受信区間の長さと、ウェイクアップ時間とに基づいて、ウェイクアップ区間開始時刻t43を時刻t41を基準として、「スロット数(割り当てられたスロット番号)×1スロット区間の長さ−ウェイクアップ時間―受信区間の長さ」として算出する。
【0103】
なお、以下においても同様に報知情報フレームを受信するたびに子ノードSは、管理ノードMから自己に割り当てられたスロットを用いたデータ通信を実行するタイミングを算出するものとする。
【0104】
そして、子ノードS0は、タイマ17を用いて算出した時刻t43となるまでカウントする。また、子ノードS0は、時刻t41からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0105】
また、子ノードS0は、自己がネットワークに登録されていると判断した場合には、スーパフレーム区間tb3以降は登録要求フレームを送信しない。
【0106】
一方で、子ノードS1は、自己がネットワークに登録されていないと判断した場合に、管理ノードMより受信した報知情報フレームに含まれるスーパフレーム構成情報、タイミング情報に基づいて、次のスーパフレーム区間tb4における報知情報フレームを受信するためのウェイクアップ区間開始時刻t47を算出する。ウェイクアップ区間開始時刻t47の算出については、時刻t43を算出した場合と同様である。
【0107】
そして、子ノードS1は、タイマ17を用いて算出した時刻t47となるまでカウントする。また、子ノードS1は、時刻t41において、管理ノードMへ自己のIDを格納した登録要求フレームの送信を開始する。そして、登録要求フレームの送信完了後、時刻t42からスリープ区間(S)を開始し、低消費電力状態へ移行する。
【0108】
管理ノードMにおいては、子ノードS1から受信した登録要求フレームに格納されているIDが、スロット割当情報に格納済みでない場合には、報知情報フレームのスーパフレーム構成情報のスロット数を加算する。具体的には、1スーパフレーム区間に子ノードS1とのデータ通信に用いられる1スロットをさらに追加する処理が実行される。また、スロット割当情報に登録要求フレームに格納されていた子ノードS1のIDを格納する処理が実行される。
【0109】
この時点において、子ノードS1がネットワークに新たに登録されてネットワークの構成が変更されたことになる。
【0110】
したがって、1スーパフレーム区間の変更が発生するためそれまでネットワークに登録されていた子ノードSのデータ通信のタイミングがスロットの数により変更されることになる。
【0111】
それゆえ、管理ノードMは、ネットワークの構成が変更されたことを通知する変更通知をネットワークに登録されている子ノードS0に通知する。
【0112】
そして、変更通知を受けた子ノードS0は、次のスーパフレーム区間のスロット0の区間で送信される報知情報フレームを受信するものとする。
【0113】
子ノードS0は、タイマ17を用いてカウントした時刻t43となった場合に、時刻t41より開始したスリープ区間(S)を終了する。すなわち、子ノードS0は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS0は、スーパフレーム区間tb3のスーパフレームのスロット1の区間である時刻t44において、管理ノードMから自己に割り当てられたスロット(本例ではスロット1)を使用して送信される同期フレームの受信を開始するための受信区間(R)を開始する。
【0114】
子ノードS0は、時刻t44より開始した受信区間(R)にて管理ノードMから送信された同期フレームを受信し、受信した同期フレームに自己のIDが格納されているか否かに基づいて自己に割り当てられたスロットか否かを判断する。本例では、自己のIDが格納されているものとする。
【0115】
子ノードS0は、受信した同期フレームに自己のIDが格納されていると判断した場合には、上述したように次の管理ノードMより送信されるフレームを受信するためのタイミングを算出する。一方で、この場合には、上述したようにネットワークの構成が変更されたことを通知する変更通知が通知されている。
【0116】
子ノードS0は、管理ノードMから送信された同期フレームの中に変更通知が含まれていると判断した場合に、既に管理ノードMより受信した報知情報フレームに含まれるスーパフレーム構成情報、タイミング情報およびスロット割当情報に基づいて、次のスーパフレーム区間tb4における報知情報フレームを受信するためのウェイクアップ区間開始時刻t47を算出する。
【0117】
具体的には、一例として、子ノードS0は、スーパフレーム構成情報である1スーパフレーム区間内の残りのスロット数、タイミング情報の1スロットの区間の長さと受信区間の長さとウェイクアップ時間とに基づいて、ウェイクアップ区間開始時刻t47を時刻t45を基準として「スロット数(1スーパフレーム区間内の自身を含めた残りのスロット数)×1スロット区間の長さ−ウェイクアップ時間−受信区間の長さ」として算出する。そして、子ノードS0は、タイマ17を用いて算出した時刻t47となるまでカウントする。
【0118】
また、子ノードS0は、時刻t25において、管理ノードMへ自己のIDを格納した応答フレームの送信を開始する。そして、応答フレームの送信完了後、時刻t46からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0119】
管理ノードMにおいては、子ノードS0から受信した応答フレームに格納されている子ノードS0のIDが、同スロットで既に送信済みの同期フレームに格納した、割り当てた子ノードS0のIDと一致した場合、子ノードS0がネットワーク内で正常に稼動していると判断する。
【0120】
スーパフレーム区間tb4について説明する。
子ノードS0,S1は、それぞれタイマ17を用いて算出した時刻t47となった場合に、スリープ区間(S)を終了する。すなわち、子ノードS0,S1は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS0,S1は、スーパフレーム区間tb4のスーパフレームのスロット0の区間である時刻t48において、管理ノードMから送信される報知情報フレームの受信を開始するための受信区間(R)を開始する。
【0121】
子ノードS0,S1は、時刻t48より開始した受信区間(R)にて、受信した報知情報フレームに含まれているスロット割当情報に自己のIDが格納されているか否かに基づいて自己がネットワークに登録されているか否かを判断する。
【0122】
子ノードS0,S1は、自己がネットワークに登録されていると判断した場合には、登録要求フレームは送信しない。ここでは、子ノードS0,S1がともに登録されているものとする。
【0123】
そして、子ノードS0は、自己がネットワークに登録されていると判断した場合、管理ノードMから自己に割り当てられたスロットを用いたデータ通信を実行するため、管理ノードMより受信した報知情報フレームに含まれるタイミング情報およびスロット割当情報に基づいて、同じスーパフレーム区間における自己に割り当てられたスロット(ここではスロット1)に対応する同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻t51を算出する。
【0124】
ウェイクアップ区間開始時刻t51の算出については、時刻t43を算出した場合と同様である。
【0125】
そして、子ノードS0は、タイマ17を用いて算出した時刻t51となるまでカウントする。また、子ノードS0は、時刻t49からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0126】
一方、子ノードS1は、自己がネットワークに登録されていると判断した場合、管理ノードMから自己に割り当てられたスロットを用いたデータ通信を実行するため、管理ノードMより受信した報知情報フレームに含まれるタイミング情報およびスロット割当情報に基づいて、同じスーパフレーム区間における自己に割り当てられたスロット(ここではスロット2)に対応する同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻t55を算出する。
【0127】
ウェイクアップ区間開始時刻t55の算出については、時刻t43を算出した場合と同様である。
【0128】
そして、子ノードS1は、タイマ17を用いて算出した時刻t55となるまでカウントする。また、子ノードS1は、時刻t49からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0129】
子ノードS0は、タイマ17を用いてカウントした時刻t51となった場合に、時刻t49より開始したスリープ区間(S)を終了する。すなわち、子ノードS0は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS0は、スーパフレーム区間tb4のスーパフレームのスロット1の区間である時刻t52において、管理ノードMから自己に割り当てられたスロット(本例ではスロット1)を使用して送信される同期フレームの受信を開始するための受信区間(R)を開始する。
【0130】
子ノードS0は、時刻t52より開始した受信区間(R)にて管理ノードMから送信された同期フレームを受信し、受信した同期フレームに自己のIDが格納されているか否かに基づいて自己に割り当てられたスロットか否かを判断する。本例では、自己のIDが格納されているものとする。
【0131】
子ノードS0は、受信した同期フレームに自己のIDが格納されていると判断した場合には、管理ノードMより、既に受信済みの報知情報フレームに含まれるスーパフレーム構成情報およびタイミング情報に基づいて、次のスーパフレーム区間における自己に割り当てられたスロットを使用して管理ノードMより送信される同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻を算出する。そして、子ノードS0は、上述したようにタイマ17を用いて算出した時刻となるまでカウントする。
【0132】
子ノードS0は、受信した同期フレームに自己のIDが格納されていると判断した場合には、時刻t53において、管理ノードMへ自己のIDを格納した応答フレームの送信を開始する。そして、応答フレームの送信完了後、時刻t54からスリープ区間(S)を開始し低消費電力状態へ移行する。以降、自己に割り当てられたスロット(本例では、スロット1のみ)を使用して管理ノードMとの間でデータ通信を実行し、再度、スーパフレームの構成の変更が通知されるまで報知情報フレームの受信は必要としない。
【0133】
一方、子ノードS1は、タイマ17を用いてカウントした時刻t55となった場合に、時刻t49より開始したスリープ区間(S)を終了する。すなわち、子ノードS1は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS1は、スーパフレーム区間tb4のスーパフレームのスロット2の区間である時刻t56において、管理ノードMから自己に割り当てられたスロット(本例ではスロット2)を使用して送信される同期フレームの受信を開始するための受信区間(R)を開始する。
【0134】
子ノードS1は、時刻t56より開始した受信区間(R)にて管理ノードMから送信された同期フレームを受信し、受信した同期フレームに自己のIDが格納されているか否かに基づいて自己に割り当てられたスロットか否かを判断する。本例では、自己のIDが格納されているものとする。
【0135】
子ノードS1は、受信した同期フレームに自己のIDが格納されていると判断した場合には、管理ノードMより、既に受信済みの報知情報フレームに含まれるスーパフレーム構成情報およびタイミング情報に基づいて、次のスーパフレーム区間における自己に割り当てられたスロットを使用して管理ノードMより送信される同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻を算出する。そして、子ノードS1は、上述したようにタイマ17を用いて算出した時刻となるまでカウントする。
【0136】
子ノードS1は、受信した同期フレームに自己のIDが格納されていると判断した場合には、時刻t57において、管理ノードMへ自己のIDを格納した応答フレームの送信を開始する。そして、応答フレームの送信完了後、時刻t58からスリープ区間(S)を開始し低消費電力状態へ移行する。以降、自己に割り当てられたスロット(本例では、スロット2のみ)を使用して管理ノードMとの間でデータ通信を実行し、再度、スーパフレームの構成の変更が通知されるまで報知情報フレームの受信は必要としない。
【0137】
管理ノードMにおいては、子ノードS0,S1から受信した応答フレームに格納されている子ノードSのIDが、同スロットで既に送信済みの同期フレームに格納した割り当てた子ノードSのIDと一致した場合、子ノードSがネットワーク内で正常に稼動していると判断する。なお、応答フレームを受信するたびに管理ノードMは、同様の判断を行う。
【0138】
これにより、子ノードS0は、子ノードS1が新たにネットワークに登録されて1スーパフレーム区間を構成するスロット数が変更される当該場合であっても、再度、子ノードS0に割り当てられたスロットの区間を用いて、同期を確立して管理ノードMとの間でデータ通信を継続して実行することが可能となる。
【0139】
図9は、本発明の実施の形態1に従う管理ノードMに既に子ノードS0,S1が登録されている状態において新たに子ノードS2を管理ノードMに登録する場合の処理の流れについて説明する図である。
【0140】
図9を参照して、スーパフレーム区間tc0について説明する。
管理ノードMは、スーパフレーム区間tc0内のスロット0を使用して報知情報フレームを送信する。この場合、管理ノードMに既に子ノードS0,S1が登録済みであるため、報知情報フレームに含まれるスーパフレーム構成情報の1スーパフレーム区間のスロット数は3、スロット割当情報には、子ノードS0,S1のIDが格納済みである。具体的には、子ノードS0にはスロット1、子ノードS2にはスロット2が管理ノードMにより割り当てられているものとする。
【0141】
ここで、時刻t101以前の時刻において管理ノードMに未登録である子ノードS2の通信部15が起動され管理ノードMを検索するための受信区間が開始されたものとする。
【0142】
子ノードS2は、時刻t101以前の時刻において受信区間(R)を開始後、管理ノードMより次の報知情報フレームを受信するまで受信区間(R)を継続する。なお、子ノードS2は、後述するが所定期間を経過した場合であっても報知情報フレームを受信できない場合には、チャネルの変更処理を実行する。
【0143】
子ノードS2は、受信区間(R)を開始後、時刻t101において、管理ノードMから報知情報フレームを受信する。すなわち、時刻t101において管理ノードMを検出したと判断する。
【0144】
子ノードS2は、管理ノードMより受信した報知情報フレームに含まれるスーパフレーム構成情報およびタイミング情報に基づいて、次のスーパフレーム区間tc1における報知情報フレームを受信するためのウェイクアップ区間開始時刻t112を算出する。
【0145】
具体的には、スーパフレーム構成情報の1スロットの区間の長さ、1スーパフレーム区間内のスロット数と、タイミング情報のウェイクアップ時間と、受信区間の長さとに基づいて、「スロット数(1スーパフレーム区間内のスロット数)×1スロット区間の長さ−ウェイクアップ時間―受信区間の長さ」として算出する。
【0146】
そして、子ノードS2は、タイマ17を用いて算出した時刻t112となるまでカウントする。
【0147】
また、子ノードS2は、時刻t102よりスリープ区間(S)を開始し、低消費電力状態へ移行する。
【0148】
子ノードS0については、上述したように自己がネットワークに登録されていると判断した場合、管理ノードMから自己に割り当てられたスロットを用いたデータ通信を実行するため、管理ノードMより受信した報知情報フレームに含まれるタイミング情報およびスロット割当情報に基づいて、同じスーパフレーム区間における自己に割り当てられたスロット(ここではスロット1)に対応する同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻t104を算出する。
【0149】
そして、子ノードS0は、タイマ17を用いてカウントした時刻t104となった場合に、スリープ区間(S)を終了する。すなわち、子ノードS0は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS0は、スーパフレーム区間tc0のスーパフレームのスロット1の区間である時刻t105において、管理ノードMから自己に割り当てられたスロット(本例ではスロット1)を使用して送信される同期フレームの受信を開始するための受信区間(R)を開始する。
【0150】
子ノードS0は、時刻t105より開始した受信区間(R)にて管理ノードMから送信された同期フレームを受信し、受信した同期フレームに自己のIDが格納されているか否かに基づいて自己に割り当てられたスロットか否かを判断する。本例では、自己のIDが格納されているものとする。
【0151】
子ノードS0は、受信した同期フレームに自己のIDが格納されていると判断した場合には、管理ノードMより、既に受信済みの報知情報フレームに含まれるスーパフレーム構成情報およびタイミング情報に基づいて、次のスーパフレーム区間における自己に割り当てられたスロットを使用して管理ノードMより送信される同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻t116を算出する。そして、子ノードS0は、上述したようにタイマ17を用いて算出した時刻となるまでカウントする。
【0152】
また、子ノードS0は、受信した同期フレームに自己のIDが格納されていると判断した場合には、時刻t106において、管理ノードMへ自己のIDを格納した応答フレームの送信を開始する。そして、応答フレームの送信完了後、時刻t107からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0153】
また、子ノードS1については、上述したように自己がネットワークに登録されていると判断した場合、管理ノードMから自己に割り当てられたスロットを用いたデータ通信を実行するため、管理ノードMより受信した報知情報フレームに含まれるタイミング情報およびスロット割当情報に基づいて、同じスーパフレーム区間における自己に割り当てられたスロット(ここではスロット2)に対応する同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻t108を算出する。
【0154】
そして、子ノードS1は、タイマ17を用いてカウントした時刻t108となった場合に、スリープ区間(S)を終了する。すなわち、子ノードS1は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS1は、スーパフレーム区間tc0のスーパフレームのスロット2の区間である時刻t109において、管理ノードMから自己に割り当てられたスロット(本例ではスロット2)を使用して送信される同期フレームの受信を開始するための受信区間(R)を開始する。
【0155】
子ノードS1は、時刻t109より開始した受信区間(R)にて管理ノードMから送信された同期フレームを受信し、受信した同期フレームに自己のIDが格納されているか否かに基づいて自己に割り当てられたスロットか否かを判断する。本例では、自己のIDが格納されているものとする。
【0156】
子ノードS1は、受信した同期フレームに自己のIDが格納されていると判断した場合には、管理ノードMより、既に受信済みの報知情報フレームに含まれるスーパフレーム構成情報およびタイミング情報に基づいて、次のスーパフレーム区間における自己に割り当てられたスロットを使用して管理ノードMより送信される同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻t120を算出する。そして、子ノードS0は、上述したようにタイマ17を用いて算出した時刻となるまでカウントする。
【0157】
また、子ノードS1は、受信した同期フレームに自己のIDが格納されていると判断した場合には、時刻t110において、管理ノードMへ自己のIDを格納した応答フレームの送信を開始する。そして、応答フレームの送信完了後、時刻t111からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0158】
スーパフレーム区間tc1について説明する。
子ノードS2は、タイマ17を用いて算出した時刻t112となった場合に、スリープ区間(S)を終了する。すなわち、子ノードS2は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS2は、スーパフレーム区間tc1のスーパフレームのスロット0の区間である時刻t113において、管理ノードMから送信される報知情報フレームの受信を開始するための受信区間(R)を開始する。
【0159】
子ノードS2は、時刻t113より開始した受信区間(R)にて、受信した報知情報フレームに含まれているスロット割当情報に自己のIDが格納されているか否かに基づいて自己がネットワークに登録されているか否かを判断する。
【0160】
子ノードS2は、自己がネットワークに登録されていないと判断した場合に、管理ノードMより受信した報知情報フレームに含まれるスーパフレーム構成情報、タイミング情報に基づいて、次のスーパフレーム区間tc2における報知情報フレームを受信するためのウェイクアップ区間開始時刻t124を算出する。
【0161】
ウェイクアップ区間開始時刻t124の算出の方式については、上述したのと同様である。
【0162】
そして、子ノードS2は、タイマ17を用いて算出した時刻t124となるまでカウントする。
【0163】
また、子ノードS2は、時刻t114において、管理ノードMへ自己のIDを格納した登録要求フレームの送信を開始する。そして、登録要求フレームの送信完了後、時刻t115からスリープ区間(S)を開始し、低消費電力へ移行する。
【0164】
管理ノードMにおいては、子ノードS2から受信した登録要求フレームに格納されているIDが、スロット割当情報に格納済みでない場合には、報知情報フレームのスーパフレーム構成情報のスロット数を加算する。具体的には、1スーパフレーム区間に子ノードS2とのデータ通信に用いられる1スロットをさらに追加する処理が実行される。また、スロット割当情報に登録要求フレームに格納されていた子ノードS2のIDを格納する処理が実行される。
【0165】
この時点において、子ノードS2がネットワークに新たに登録されてネットワークの構成が変更されたことになる。
【0166】
したがって、1スーパフレーム区間が変更が発生するためそれまでネットワークに登録されていた子ノードS(本例では、子ノードS0,S1)のデータ通信のタイミングがスロットの数により変更されることになる。
【0167】
それゆえ、管理ノードMは、ネットワークの構成が変更されたことを通知する変更通知をネットワークに登録されている子ノードS(本例では、子ノードS0,S1)に通知する。
【0168】
そして、変更通知を受けた子ノードSは、次のスーパフレーム区間tc2のスロット0の区間で送信される報知情報フレームを受信するものとする。
【0169】
子ノードS0は、タイマ17を用いてカウントした時刻t116となった場合に、時刻t107より開始したスリープ区間(S)を終了する。すなわち、子ノードS0は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS0は、スーパフレーム区間tc1のスーパフレームのスロット1の区間である時刻t117において、管理ノードMから自己に割り当てられたスロット(本例ではスロット1)を使用して送信される同期フレームの受信を開始するための受信区間(R)を開始する。
【0170】
子ノードS0は、時刻t117より開始した受信区間(R)にて管理ノードMから送信された同期フレームを受信し、受信した同期フレームに自己のIDが格納されているか否かに基づいて自己に割り当てられたスロットか否かを判断する。本例では、自己のIDが格納されているものとする。
【0171】
子ノードS0は、受信した同期フレームに自己のIDが格納されていると判断した場合には、管理ノードMより、上述したように次の管理ノードMより送信されるフレームを受信するためのタイミングを算出する。一方で、この場合には、上述したようにネットワークの構成が変更されたことを通知する変更通知が通知されている。
【0172】
子ノードS0は、管理ノードMから送信された同期フレームの中に変更通知が含まれていると判断した場合に、既に管理ノードMより受信した報知情報フレームに含まれるスーパフレーム構成情報、タイミング情報およびスロット割当情報に基づいて、次のスーパフレーム区間tc2における報知情報フレームを受信するためのウェイクアップ区間開始時刻t124を算出する。
【0173】
具体的には、一例として、子ノードS0は、スーパフレーム構成情報である1スーパフレーム区間内の残りのスロット数、タイミング情報の1スロットの区間の長さと受信区間の長さとウェイクアップ時間とに基づいて、ウェイクアップ区間開始時刻t124を時刻t118を基準として「スロット数(1スーパフレーム区間内の自身を含めた残りのスロット数)×1スロット区間の長さ−ウェイクアップ時間−受信区間の長さ」として算出する。そして、子ノードS0は、タイマ17を用いて算出した時刻t124となるまでカウントする。
【0174】
また、子ノードS0は、時刻t118において、管理ノードMへ自己のIDを格納した応答フレームの送信を開始する。そして、応答フレームの送信完了後、時刻t119からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0175】
管理ノードMにおいては、子ノードS0から受信した応答フレームに格納されている子ノードS0のIDが、同スロットで既に送信済みの同期フレームに格納した、割り当てた子ノードS0のIDと一致した場合、子ノードS0がネットワーク内で正常に稼動していると判断する。
【0176】
子ノードS1は、タイマ17を用いてカウントした時刻t120となった場合に、時刻t111より開始したスリープ区間(S)を終了する。すなわち、子ノードS1は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS1は、スーパフレーム区間tc1のスーパフレームのスロット2の区間である時刻t121において、管理ノードMから自己に割り当てられたスロット(本例ではスロット2)を使用して送信される同期フレームの受信を開始するための受信区間(R)を開始する。
【0177】
子ノードS1は、時刻t121より開始した受信区間(R)にて管理ノードMから送信された同期フレームを受信し、受信した同期フレームに自己のIDが格納されているか否かに基づいて自己に割り当てられたスロットか否かを判断する。本例では、自己のIDが格納されているものとする。
【0178】
子ノードS1は、受信した同期フレームに自己のIDが格納されていると判断した場合には、管理ノードMより、上述したように次の管理ノードMより送信されるフレームを受信するためのタイミングを算出する。一方で、この場合には、上述したようにネットワークの構成が変更されたことを通知する変更通知が通知されている。
【0179】
子ノードS1は、管理ノードMから送信された同期フレームの中に変更通知が含まれていると判断した場合に、既に管理ノードMより受信した報知情報フレームに含まれるスーパフレーム構成情報、タイミング情報およびスロット割当情報に基づいて、次のスーパフレーム区間tc2における報知情報フレームを受信するためのウェイクアップ区間開始時刻t124を算出する。
【0180】
具体的には、一例として、子ノードS1は、スーパフレーム構成情報である1スーパフレーム区間内の残りのスロット数、タイミング情報の1スロットの区間の長さと受信区間の長さとウェイクアップ時間とに基づいて、ウェイクアップ区間開始時刻t124を時刻t122を基準として「スロット数(1スーパフレーム区間内の自身を含めた残りのスロット数)×1スロット区間の長さ−ウェイクアップ時間−受信区間の長さ」として算出する。そして、子ノードS1は、タイマ17を用いて算出した時刻t124となるまでカウントする。
【0181】
また、子ノードS1は、時刻t122において、管理ノードMへ自己のIDを格納した応答フレームの送信を開始する。そして、応答フレームの送信完了後、時刻t123からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0182】
管理ノードMにおいては、子ノードS1から受信した応答フレームに格納されている子ノードS1のIDが、同スロットで既に送信済みの同期フレームに格納した、割り当てた子ノードS1のIDと一致した場合、子ノードS1がネットワーク内で正常に稼動していると判断する。
【0183】
スーパフレーム区間tc2について説明する。
子ノードS0,S1,S2は、それぞれタイマ17を用いて算出した時刻t124となった場合に、スリープ区間(S)を終了する。すなわち、子ノードS0,S1,S2は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS0,S1,S2は、スーパフレーム区間tc2のスーパフレームのスロット0の区間である時刻t125において、管理ノードMから送信される報知情報フレームの受信を開始するための受信区間(R)を開始する。
【0184】
子ノードS0,S1,S2は、時刻t125より開始した受信区間(R)にて、受信した報知情報フレームに含まれているスロット割当情報に自己のIDが格納されているか否かに基づいて自己がネットワークに登録されているか否かを判断する。
【0185】
子ノードS0,S1,S2は、自己がネットワークに登録されていると判断した場合には、登録要求フレームは送信しない。ここでは、子ノードS0,S1,S2がともに登録されているものとする。
【0186】
そして、子ノードS0は、自己がネットワークに登録されていると判断した場合、管理ノードMから自己に割り当てられたスロットを用いたデータ通信を実行するため、管理ノードMより受信した報知情報フレームに含まれるタイミング情報およびスロット割当情報に基づいて、同じスーパフレーム区間における自己に割り当てられたスロット(ここではスロット1)に対応する同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻t128を算出する。
【0187】
ウェイクアップ区間開始時刻t128の算出については、上述した場合と同様である。
そして、子ノードS0は、タイマ17を用いて算出した時刻t128となるまでカウントする。また、子ノードS0は、時刻t126からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0188】
一方、子ノードS1は、自己がネットワークに登録されていると判断した場合、管理ノードMから自己に割り当てられたスロットを用いたデータ通信を実行するため、管理ノードMより受信した報知情報フレームに含まれるタイミング情報およびスロット割当情報に基づいて、同じスーパフレーム区間における自己に割り当てられたスロット(ここではスロット2)に対応する同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻t132を算出する。
【0189】
ウェイクアップ区間開始時刻t132の算出については、上述した場合と同様である。
そして、子ノードS1は、タイマ17を用いて算出した時刻t132となるまでカウントする。また、子ノードS1は、時刻t126からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0190】
また、子ノードS2は、自己がネットワークに登録されていると判断した場合、管理ノードMから自己に割り当てられたスロットを用いたデータ通信を実行するため、管理ノードMより受信した報知情報フレームに含まれるタイミング情報およびスロット割当情報に基づいて、同じスーパフレーム区間における自己に割り当てられたスロット(ここではスロット3)に対応する同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻t136を算出する。
【0191】
ウェイクアップ区間開始時刻t136の算出については、上述した場合と同様である。
そして、子ノードS2は、タイマ17を用いて算出した時刻t136となるまでカウントする。また、子ノードS2は、時刻t126からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0192】
子ノードS0は、タイマ17を用いてカウントした時刻t128となった場合に、時刻t126より開始したスリープ区間(S)を終了する。すなわち、子ノードS0は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS0は、スーパフレーム区間tc2のスーパフレームのスロット1の区間である時刻t129において、管理ノードMから自己に割り当てられたスロット(本例ではスロット1)を使用して送信される同期フレームの受信を開始するための受信区間(R)を開始する。
【0193】
子ノードS0は、時刻t129より開始した受信区間(R)にて管理ノードMから送信された同期フレームを受信し、受信した同期フレームに自己のIDが格納されているか否かに基づいて自己に割り当てられたスロットか否かを判断する。本例では、自己のIDが格納されているものとする。
【0194】
子ノードS0は、受信した同期フレームに自己のIDが格納されていると判断した場合には、管理ノードMより、既に受信済みの報知情報フレームに含まれるスーパフレーム構成情報およびタイミング情報に基づいて、次のスーパフレーム区間における自己に割り当てられたスロットを使用して管理ノードMより送信される同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻を算出する。そして、子ノードS0は、上述したようにタイマ17を用いて算出した時刻となるまでカウントする。
【0195】
子ノードS0は、受信した同期フレームに自己のIDが格納されていると判断した場合には、時刻t130において、管理ノードMへ自己のIDを格納した応答フレームの送信を開始する。そして、応答フレームの送信完了後、時刻t131からスリープ区間(S)を開始し低消費電力状態へ移行する。以降、自己に割り当てられたスロット(本例では、スロット1のみ)を使用して管理ノードMとの間でデータ通信を実行し、再度、スーパフレームの構成の変更が通知されるまで報知情報フレームの受信は必要としない。
【0196】
一方、子ノードS1は、タイマ17を用いてカウントした時刻t132となった場合に、時刻t126より開始したスリープ区間(S)を終了する。すなわち、子ノードS1は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS1は、スーパフレーム区間tc2のスーパフレームのスロット2の区間である時刻t133において、管理ノードMから自己に割り当てられたスロット(本例ではスロット2)を使用して送信される同期フレームの受信を開始するための受信区間(R)を開始する。
【0197】
子ノードS1は、時刻t133より開始した受信区間(R)にて管理ノードMから送信された同期フレームを受信し、受信した同期フレームに自己のIDが格納されているか否かに基づいて自己に割り当てられたスロットか否かを判断する。本例では、自己のIDが格納されているものとする。
【0198】
子ノードS1は、受信した同期フレームに自己のIDが格納されていると判断した場合には、管理ノードMより、既に受信済みの報知情報フレームに含まれるスーパフレーム構成情報およびタイミング情報に基づいて、次のスーパフレーム区間における自己に割り当てられたスロットを使用して管理ノードMより送信される同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻を算出する。そして、子ノードS1は、上述したようにタイマ17を用いて算出した時刻となるまでカウントする。
【0199】
子ノードS1は、受信した同期フレームに自己のIDが格納されていると判断した場合には、時刻t134において、管理ノードMへ自己のIDを格納した応答フレームの送信を開始する。そして、応答フレームの送信完了後、時刻t135からスリープ区間(S)を開始し低消費電力状態へ移行する。以降、自己に割り当てられたスロット(本例では、スロット2のみ)を使用して管理ノードMとの間でデータ通信を実行し、再度、スーパフレームの構成の変更が通知されるまで報知情報フレームの受信は必要としない。
【0200】
一方、子ノードS2は、タイマ17を用いてカウントした時刻t136となった場合に、時刻t126より開始したスリープ区間(S)を終了する。すなわち、子ノードS2は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS2は、スーパフレーム区間tc2のスーパフレームのスロット3の区間である時刻t137において、管理ノードMから自己に割り当てられたスロット(本例ではスロット2)を使用して送信される同期フレームの受信を開始するための受信区間(R)を開始する。
【0201】
子ノードS2は、時刻t137より開始した受信区間(R)にて管理ノードMから送信された同期フレームを受信し、受信した同期フレームに自己のIDが格納されているか否かに基づいて自己に割り当てられたスロットか否かを判断する。本例では、自己のIDが格納されているものとする。
【0202】
子ノードS2は、受信した同期フレームに自己のIDが格納されていると判断した場合には、管理ノードMより、既に受信済みの報知情報フレームに含まれるスーパフレーム構成情報およびタイミング情報に基づいて、次のスーパフレーム区間における自己に割り当てられたスロットを使用して管理ノードMより送信される同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻を算出する。そして、子ノードS2は、上述したようにタイマ17を用いて算出した時刻となるまでカウントする。
【0203】
子ノードS2は、受信した同期フレームに自己のIDが格納されていると判断した場合には、時刻t138において、管理ノードMへ自己のIDを格納した応答フレームの送信を開始する。そして、応答フレームの送信完了後、時刻t139からスリープ区間(S)を開始し低消費電力状態へ移行する。以降、自己に割り当てられたスロット(本例では、スロット3のみ)を使用して管理ノードMとの間でデータ通信を実行し、再度、スーパフレームの構成の変更が通知されるまで報知情報フレームの受信は必要としない。
【0204】
管理ノードMにおいては、子ノードS0,S1,S2から受信した応答フレームに格納されている子ノードSのIDが、同スロットで既に送信済みの同期フレームに格納した割り当てた子ノードSのIDと一致した場合、子ノードSがネットワーク内で正常に稼動していると判断する。なお、応答フレームを受信するたびに管理ノードMは、同様の判断を行う。
【0205】
これにより、子ノードS0,S1は、子ノードS2が新たにネットワークに登録されて1スーパフレーム区間を構成するスロット数が変更される当該場合であっても、再度、子ノードS0,S1に割り当てられたスロットの区間を用いて、同期を確立して管理ノードMとの間でデータ通信を継続して実行することが可能となる。
【0206】
図10は、管理ノード(後述する中継ノードRを含む)から子ノードに対して送信する無線フレームの構成について説明する図である。各々の無線フレームに含まれる同一の情報については、重複する説明は省略する。
【0207】
図10(A)を参照して、ここでは、報知情報フレームとして、ヘッダ情報d0、スーパフレーム構成情報d1、タイミング情報d2、管理ノード及び中継ノードのID情報d3,d4、スロット割当情報d5とで構成されている場合が示されている。
【0208】
ヘッダ情報d0は、当該無線フレームが報知情報フレームであることを示すデータが含まれている。
【0209】
スーパフレーム構成情報d1は、1スーパフレーム区間のスロット数、送信されるフレームのスロット番号等のデータが含まれている。スロット数は、スロット割当情報に何もデータが無い状態においては、スロット0のみの1である。また、スロット割当情報に複数の子ノードSのID情報が含まれている場合には、当該ID情報の個数にスロット0の個数1を足した数となる。スロット数は、スロットの区間の長さとともに、報知情報フレームを受信するタイミングを設定する際に用いられる。また、スロット番号は、本フレームが送信するために使用しているスロット番号の情報が格納されている。具体的には、スロット0が用いられるため報知情報フレームの場合には0が設定されている。
【0210】
報知情報フレーム更新番号は、現在報知中の報知情報フレームの番号であり、報知情報フレームに格納される情報に変更が発生した場合には更新(加算)される。
【0211】
タイミング情報d2は、管理ノードMとの間でのデータ通信を実行するタイミングを設定するための各種パラメータが含まれている。具体的には、スロットの区間の長さ、通信部49からデータを送信する区間(下りフレーム受信区間)の長さ、通信部49がデータを受信する区間(上りフレーム受信区間)の長さおよびウェイクアップ区間の長さ等が含まれている。なお、低消費電力状態であるスリープ区間の長さを含めるようにすることも可能である。なお、スロットの区間の長さからデータを送信する区間の長さおよびデータを受信する区間の長さ、ウェイクアップ区間の長さを減算すれば、スリープ区間(S)の長さを算出することが可能である。
【0212】
また、管理ノードMの通信部49からデータを送信する区間(下りフレーム受信区間)の長さに従って、子ノードSの通信部15がデータを受信する受信区間(R)が設定される。また、管理ノードMの通信部49がデータを受信する区間(上りフレーム受信区間)の長さに従って、子ノードSの通信部15がデータを送信する送信区間(T)の長さが設定される。また、子ノードSがデータを受信する区間に先立って、データの受信を可能な状態に設定するためのウェイクアップ区間(W)を規定するパラメータもタイミング情報に含められるものとする。
【0213】
当該ウェイクアップ区間(W)を設けることにより送信側がデータを送信した場合に受信側を確実に受信可能な状態に設定しておくことが可能となる。
【0214】
なお、当該ウェイクアップ区間(W)は、ノードの特性に従って適宜設定されるものとする。なお、これらの区間のパラメータは、予め固定値とする必要は無く例えばユーザの入力によりパラメータの調整が可能であるものとする。当該場合であっても報知情報フレームのタイミング情報に基づいて管理ノードMと子ノードSとの間のデータ通信が実行されるためネットワークにおけるデータ通信のタイミングを簡易に調整することが可能である。すなわち、子ノードの各ROMで当該情報を記憶しておく必要がない。
【0215】
管理ノードID情報d3は、管理ノードMのID情報、本例においてはID000とする。後述する子ノードSから管理ノードMに対して送信する際に用いられる。
【0216】
親ノードID情報d4は、登録要求フレームを受け付けた親ノードのID情報、管理ノードMが親ノードである場合には、管理ノードMのID情報である。また、中継ノードRが親ノードである場合には、中継ノードRのID情報である。当該ID情報を確認することにより、子ノードSは、自己の親ノードが管理ノードMであるか、中継ノードRであるかを判断することが可能となる。
【0217】
また、スロット割当情報d5は、ネットワークとして登録された、1スーパフレーム区間として追加されたスロットにそれぞれ対応する子ノードSのID(Identification)情報が設定される。スロット1に対応して子ノードS0のID003が登録されている場合が示されている。また、スロット2に対応して子ノードS1のID004が登録されている場合が示されている。なお、初期状態においては、ネットワークに登録されている子ノードSは存在しないためスロット割当情報d5には何もデータが無い状態となる。
【0218】
当該スロットに割り当てられた子ノードのID情報に従って、各子ノードは、自己がネットワークに登録されたかどうかを確認する。そして、それとともに順番に設けられたスロット番号に従って、自己が割り当てられたスロットが1スーパフレーム区間の最初から数えて何番目であるかを確認する。
【0219】
図10(B)を参照して、ここでは、同期フレームとして、ヘッダ情報d6、スーパフレーム構成情報d7、子ノードID情報d8、ユーザデータd9とで構成されている場合が示されている。
【0220】
ヘッダ情報d6は、当該無線フレームが同期フレームであることを示すデータが含まれている。
【0221】
スーパフレーム構成情報d7は、送信されるフレームのスロット番号、1スーパフレーム区間のスロット数、報知情報フレーム更新番号のデータが含まれている。当該同期フレームを受信したノードは、スロット番号と子ノードID情報の情報に基づき、自己に割り当てられたスロットの同期フレームであるか否かを判断する。
【0222】
また、報知情報フレーム更新番号は、当該同期フレームを送信した時点における、管理ノードMがネットワーク内に報知中の報知情報フレームの番号が格納され、報知情報フレームに格納される情報に変更が生じた場合に更新される。当該同期フレームを受信したノードは、自己が以前に受信した報知情報フレーム又は同期フレームに格納されていた報知情報フレーム番号と比較し、異なる番号が格納されている場合は報知情報フレームが更新されたものと判断し、次のスーパフレーム区間のスロット0で報知情報フレームを受信するためのスリープ期間設定等のタイミング設定を実行する。
【0223】
すなわち、報知情報フレームの番号が更新されることが変更通知に相当する。
子ノードID情報d8は、当該無線フレームを送信するスロットに割り当てたノードのID情報が格納される。
【0224】
ユーザデータd9については後述する。
図11は、子ノードから管理ノード(中継ノードRも含む)に対して送信する無線フレームの構成について説明する図である。各々の無線フレームに含まれる同一の情報については、重複する説明は省略する。
【0225】
図11(A)を参照して、ここでは、登録要求フレームとして、ヘッダ情報f0、登録ノードID情報f1とで構成されている場合が示されている。
【0226】
ヘッダ情報f0は、当該無線フレームが登録要求フレームであることを示すデータが含まれている。
【0227】
登録ノードID情報f1は、ネットワークへ参加を要求するノード(子ノード)のノードIDが格納される。
【0228】
当該登録要求フレームを受信した管理ノードMは、ネットワークへの参加を許可するか否かを判定し、許可する場合には、その後に管理ノードMが送信する報知情報フレームや同期フレームに格納する報知情報フレーム番号を更新する。また、スーパフレーム構成の変更(スロットの追加)は、次のスーパフレーム区間から行われる。ネットワークへの参加を許可しない場合は、これらの処理は行わない。これによりネットワークのセキュリティも強化することが可能である。
【0229】
図11(B)を参照して、ここでは、応答フレームとして、ヘッダ情報f2、子ノードID情報f3、スロット割当情報f4、ユーザデータf5とで構成されている場合が示されている。
【0230】
ヘッダ情報f2は、当該無線フレームが応答フレームであることを示すデータが含まれている。
【0231】
子ノードID情報f3は、当該無線フレームを送信する子ノードのID情報が格納される。当該無線フレームを受信する管理ノードMは、当該情報を参照して、自己の保持するスロット割当情報により当該無線フレームを送信してきた子ノードがネットワークへの参加を許可したノードであるかを確認する。ネットワークへの参加を許可していない子ノードからの無線フレームであった場合は、当該無線フレームを無視する。これにより、不正なノードからのアクセスを禁止してネットワークのセキュリティを強化することができる。
【0232】
スロット割当情報f4は、当該無線フレームを送信してきた子ノードが後述する中継ノードである場合に格納される。中継ノードがネットワークへ参加している場合、中継ノードRを介して更に子ノードがネットワークへ参加している。その場合、中継ノードRを介してネットワークへ参加している子ノードのID情報が格納される。
【0233】
中継ノードRからの応答フレームを受信した管理ノードMは、管理ノード自身が直接通信可能な子ノードと共に、中継ノードRが通信可能な子ノードについて、1スーパフレーム区間にスロットの割り当てを行う。
【0234】
次に、同期フレーム、応答フレームのユーザデータd9,f5について説明する。
ユーザデータは、ネットワークに参加をしているノード間において、データを送信するための無線フレーム内の領域である。ユーザデータの送信元と送信先の各々のノードを指定するID情報を格納する領域と、送信元から送信先へ送信すべきデータを格納するデータ領域とから構成される。このデータ領域に格納されるデータは、送信元から送信先への動作指示コマンドを含む。
【0235】
例えば、管理ノードMから子ノードS0へ、子ノードS0が取得したデータの転送を要求する場合、管理ノードMから子ノードS0への同期フレームにおいて、送信元ノードIDとして管理ノードMのID情報(ID000)を格納し、送信先ノードIDとして子ノードS0のID情報(ID001)を格納する。そして送信すべきデータとして、データの転送指示コマンドを送信元ノードIDに続いて送信する。
【0236】
子ノードS0は、ユーザデータに含まれている送信先ノードのIDを確認して自己宛か否か認識する。
【0237】
そして、子ノードS0は、当該ユーザデータが自己宛であると認識した場合には、データ転送指示コマンドへの応答としてデータを転送する場合は、子ノードS0から管理ノードMへの応答フレームにおいて、送信元ノードIDとして子ノードS0のID情報(ID001)、送信先ノードIDとして管理ノードMのID情報(ID000)を格納し、送信先ノードIDに続いて子ノードS0が取得したデータを送信する。
【0238】
別の例として、子ノードS1から子ノードS2へデータを送信する場合、子ノードS1が管理ノードMへ送信する応答フレームのユーザデータ領域に、送信先ノードIDとして子ノードS2のID情報(ID004)を格納し、送信元ノードIDとして子ノードS1のID情報(ID003)を格納する。そして送信すべきデータを送信元ノードIDに続いて送信する。
【0239】
子ノードS1からの応答フレームを受信した管理ノードMは、ユーザデータに含まれている送信先ノードのIDを確認して自己宛か否か認識する。
【0240】
そして、管理ノードMは、自己宛でないと認識した場合には、自己が管理するネットワーク内のノードに当該ID情報が含まれていれば、その子ノードに転送する。具体的には、子ノードS2へ送信する同期フレームのユーザデータ領域に、子ノードS1から受信した応答フレームのユーザデータ領域の情報を格納し、子ノードS2へ同期フレームを送信する。
【0241】
当該同期フレームを受信した子ノードS2は、ユーザデータに含まれている送信先ノードのIDを確認して自己宛か否か認識する。そして、送信先ノードIDにより自己宛のデータであるかを確認し、さらに、送信元ノードIDによりデータの送信元の確認をして、受信したデータが適切なデータであるかを判別することが可能となる。したがって、例えば、子ノードS1から子ノードS2へのデータの転送も可能である。
【0242】
また、転送すべきデータ量が多い場合は、子ノードS1及び子ノードS2の各々に割り当てられたスロット内のスリープ区間(S)をもデータ転送に使用可能である。更に1スロット内でデータの転送が完了できない場合は、複数回のスーパフレーム区間に亘ってデータの転送が行われる。
【0243】
図12は、本発明の実施の形態1に従う管理ノードMにおけるデータ通信の処理の流れについて説明するフロー図である。
【0244】
図12を参照して、まず電源が投入された場合に、CPU41はROM43に格納されたソフトウェアプログラムを読込むことにより当該フローにおけるデータ通信を開始する。
【0245】
まず、CPU41のデータ送受信制御部148は、通信部49に対してデータ通信のための初期設定を実行する(ステップS2)。
【0246】
そして、次に、チャネル設定部144は、電界強度測定部46#に指示して外部環境における電界強度を測定する(ステップS4)。
【0247】
そして、チャネル設定部144は、電界強度測定部46#における電界強度の測定に従ってデータ通信を実行する場合にデータ送受信における適切なチャネルを通信部49に対して設定する(ステップS6)。具体的には、他のネットワークでの通信との輻輳が最も起こり難いと判断できる外部電界強度が最も低いチャネルを優先使用する。
【0248】
次に、スーパフレーム設定部146は、スーパフレーム区間の設定処理を実行する(ステップS8)。スーパフレーム区間の設定処理については後述する。
【0249】
初期設定においては、1スーパフレーム区間はスロット0のみで構成されている。したがって、最初の1サイクルについては、ステップS8の処理をスキップすることも可能である。
【0250】
次に、データ送受信制御部148は、スーパフレーム設定部146により設定されたスーパフレーム区間に基づいて報知情報フレームを生成する(ステップS10)。具体的には、図10(A)で説明した報知情報フレームが生成される。
【0251】
そして、次に、データ送受信制御部148は、スーパフレーム設定部146において設定された1スーパフレーム区間におけるスロットを確認する(ステップS11)。
【0252】
そして、データ送受信制御部148は、1スーパフレーム区間に設定されたスロット0の送信区間(T)において通信部49を介して報知情報フレームを送信する(ステップS12)。
【0253】
そして、次に、データ送受信制御部148は、1スーパフレーム区間に設定されたスロット0の受信区間(R)において通信部49を介して登録要求フレームを受信したかどうかを判断する(ステップS14)。具体的には、図11(A)で説明した登録要求フレームを受信したかどうかを判断する。
【0254】
データ送受信制御部148は、ステップS14において、登録要求フレームを受信したと判断した場合(ステップS14においてYES)には、スロット追加フラグをオンにする(ステップS16)。
【0255】
一方、データ送受信制御部148は、ステップS14において、登録要求フレームを受信しなかったと判断した場合(ステップS14においてNO)には、次のステップS18に進む。
【0256】
なお、通信部49を介した受信区間Rが終了した場合に、データ送受信制御部148は、電源管理部46に対して各部への電源の供給の停止を指示する低消費電力状態への移行を指示する。これにより、管理ノードMは、スリープ区間(S)となる。なお、データ送受信制御部148は、スリープ区間(S)に入る前に次のスロットを開始するためのウェイクアップ区間開始時刻を算出する。そして、タイマ45#に対して算出した時刻を設定する。そして、タイマ45#は、算出した時刻となるまでカウントし、算出した時刻となった場合に電源管理部46に通知する。これにより、電源管理部46は、タイマ45#からの通知に従って低消費電力状態から通常電力状態に復帰させる。そして、データ送受信制御部148は、低消費電力状態から通常電力状態への復帰の後、次のスロットを開始する。上記の処理は、各スロット毎に繰り返し実行される。当該処理により管理ノードMは、送信区間(T)、受信区間(R)およびウェイクアップ区間(W)以外の区間は、スリープ区間(S)として間欠動作させて電源の供給を停止する低消費電力状態に移行させることが可能であり、消費電力を抑制することが可能である。
【0257】
そして、次に、ステップS18において、データ送受信制御部148は、1スーパフレーム区間に次のスロットがあるかどうかを判断する(ステップS18)。
【0258】
ステップS18において、データ送受信制御部148は、1スーパフレーム区間に次のスロットがあると判断した場合(ステップS18においてYES)には、次のステップS20に進む。
【0259】
一方、ステップS18において、データ送受信制御部148は、1スーパフレーム区間に次のスロットがないと判断した場合(ステップS18においてNO)には、ステップS4に戻る。すなわち、1スーパフレーム区間におけるデータ通信の1サイクルが終了して次のサイクルへと移行する。その際、再び、ステップS4において、チャネル設定部144は、電界強度測定部46#を用いて電界強度を測定して、電界強度の測定に従った適切なチャネルを通信部49に対して設定する。したがって、電波状況が悪くなった場合には、適切なチャネルに変更することが可能である。なお、チャネル設定部144によりチャネルを別チャネルに変更する場合には、以前のチャネルでデータ通信を実行していた子ノードSとのデータ通信は一時的に実行できなくなるが、スロット割当情報等を保持しておくことにより早期にネットワークを再構築することが可能である。
【0260】
ステップS18において、データ送受信制御部148は、1スーパフレーム区間に次のスロットがあると判断した場合(ステップS18においてYES)には、次にスロット追加フラグがオンされているかどうかを判断する(ステップS20)。
【0261】
ステップS20において、データ送受信制御部148は、スロット追加フラグがオンされていると判断した場合(ステップS20においてYES)には、データ送受信制御部148は、スロットに対応する同期フレーム(変更通知有)を生成する(ステップS21)。具体的には、図10(B)で説明した報知情報フレーム更新番号が更新された報知情報フレームが生成される。
【0262】
そして、次に、データ送受信制御部148は、通信部49を介してスロットに対応する同期フレーム(変更通知有)を送信する(ステップS22)。当該同期フレームを受信することにより、1スーパフレーム区間に変更があることを子ノードは判断することが可能である。
【0263】
ステップS20において、データ送受信制御部148は、スロット追加フラグがオンされていないと判断した場合(ステップS20においてNO)には、データ送受信制御部148は、スロットに対応する同期フレームを生成する(ステップS21)。具体的には、図10(B)で説明した報知情報フレーム更新番号は更新されない報知情報フレームが生成される。
【0264】
そして、次に、データ送受信制御部148は、通信部49を介してスロットに対応する同期フレームを送信する(ステップS24)。
【0265】
そして、次に、データ送受信制御部148は、通信部49を介してスロットに対応する同期フレームに対して応答フレームの受信があったどうかを判断する(ステップS26)。具体的には、図11(B)で説明した応答フレームを受信したかどうかを判断する。
【0266】
ステップS26において、データ送受信制御部148は、応答フレームの受信があったと判断した場合(ステップS26においてYES)には、応答フレームを取得する(ステップS28)。取得した応答フレームは、データ送受信制御部148の指示に従って、一例として、RAM42等の記憶領域に格納されるものとする。
【0267】
当該記憶領域に格納された各スロットに対応する応答フレームは、一例として、子ノードの存在確認として利用することが可能である。また、子ノードにセンサを設けるとともに、応答フレームのユーザデータの中に当該子ノードに設けたセンサのデータを含めることにより管理ノードMは、ネットワークが構成された各子ノードのセンサデータを取得して周囲の状況等を把握することも可能である。
【0268】
一方、ステップS26において、データ送受信制御部148は、応答フレームの受信がなかったと判断した場合(ステップS26においてNO)には、エラー判定とする(ステップS30)。例えば、エラー判定となる原因として、子ノードSの故障あるいはバッテリ交換の必要が生じた場合等が考えられる。
【0269】
なお、エラー判定となった結果は、データ送受信制御部148の指示に従って、一例として、RAM42等の記憶領域に格納されるものとする。当該エラー判定となった結果は、後述するスーパフレーム区間の設定処理の際に用いられる。
【0270】
そして、再びステップS18に戻る。なお、上述したように、各スロットにおける通信部49を介した受信区間Rが終了した場合に、データ送受信制御部148は、電源管理部46に対して各部への電源の供給の停止を指示する低消費電力状態への移行を指示する。これにより、管理ノードMは、スリープ区間(S)となる。
【0271】
ステップS18において、データ送受信制御部148は、1スーパフレーム区間に次のスロットがあるかどうかを判断(ステップS18)し、上記と同様の処理を繰り返す。すなわち、スロットが有る場合には、スロットに対応する同期フレームを生成して、通信部49を介して送信する。
【0272】
そして、全てのスロットに対する処理が終了した後、ステップS4に戻り、電界強度の測定をし、チャネルを設定した後、スーパフレーム区間の設定処理を実行する。
【0273】
なお、本例においては、1スーパフレーム区間におけるデータ通信の1サイクルが終了した場合に、ステップS4に戻って、電界強度の測定をし、チャネルを設定する場合について説明した。一方で、電界強度の測定およびチャネルの設定を1サイクル毎ではなく、複数サイクルが終了した場合に、実行するようにしても良い。
【0274】
図13は、本発明の実施の形態1に従うスーパフレーム区間の設定処理について説明するフロー図である。
【0275】
当該処理は、スーパフレーム設定部146で実行される処理であり、CPU41がROM43に格納されているソフトウェアプログラムを読み込むことにより実現されるものである。
【0276】
図13を参照して、まず、スーパフレーム設定部146は、1スーパフレーム区間に設定されている1つのスロットを選択する。この場合、選択するスロットは、スロット0以外のものとする。
【0277】
そして、次に、スーパフレーム設定部146は、選択したスロットに対応したエラー判定があるかどうかを判断する(ステップS34)。具体的には、RAM42等の記憶領域に格納されたエラー判定結果に基づいて、選択されたスロットに対応するエラー判定があるかどうかを判断する。
【0278】
ステップS34において、選択したスロットに対応したエラー判定があると判断した場合には、次のステップS36に進む。一方、ステップS34において、選択したスロットに対応したエラー判定がないと判断した場合には、ステップS40に進む。
【0279】
そして、次に、スーパフレーム設定部146は、前回からのエラー判定が所定回数以上継続しているかどうかを判断する(ステップS36)。
【0280】
ステップS36において、スーパフレーム設定部146は、前回からのエラー判定が所定回数以上継続していると判断した場合(ステップS36においてYES)には、スロットを削除する(ステップS38)。そして、次にステップS40に進む。すなわち、データ通信を継続できない状態にあるスロットについては削除することにより不要なスロットを削除してネットワーク内の通信負荷を軽減することが可能である。
【0281】
一方、ステップS36において、スーパフレーム設定部146は、前回からのエラー判定が所定回数以上継続していないと判断した場合(ステップS36においてNO)には、ステップS40に進む。
【0282】
次に、ステップS40において、スーパフレーム設定部146は、他のスロットがあるかどうかを判断する(ステップS40)。具体的には、1スーパフレーム区間に設定されている別のスロットがあるかどうかを判断する。別のスロットがあると判断した場合(ステップS40においてYES)には、ステップS32に戻り、当該スロットを選択して、上記の処理を繰り返す。
【0283】
ステップS40において、スーパフレーム設定部146は、他のスロットがないと判断された場合(ステップS40においてNO)には、スロット追加フラグがオンされているかどうかを判断する(ステップS42)。
【0284】
ステップS42において、スーパフレーム設定部146は、スロット追加フラグがオンされていると判断された場合(ステップS42においてYES)には、1スロットを追加する(ステップS44)。
【0285】
一方、スーパフレーム設定部146は、スロット追加フラグがオンされていないと判断された場合(ステップS42においてNO)には、ステップS44をスキップして、ステップS46に進む。
【0286】
そして、次に、スーパフレーム設定部146は、スロット数の変更があったかどうかを判断する(ステップS46)。
【0287】
ステップS46において、スーパフレーム設定部146は、スロット数の変更があったと判断した場合(ステップS46においてYES)には、スーパフレーム区間を更新する(ステップS48)。
【0288】
たとえば、1つのスロットの削除があった場合には、当該スロットを削除したスーパフレーム区間に設定する。また、1スロットの追加が有った場合には、当該スロットを追加したスーパフレーム区間に設定する。なお、当該スーパフレーム区間の更新に従って報知情報フレームの生成の際に、図10(A)で説明したスーパフレーム構成情報d1が更新される。例えば、1スーパフレーム区間のスロット数、スロット番号、報知情報フレーム更新番号が更新される。また、1スロットの追加に従って、スロット割当情報d5が更新される。例えば、スロットと、スロット追加フラグをオンにした登録要求フレームを送信した子ノードのID情報とが対応付けて格納される。なお、スロットの割当は、登録順ではなく、動的に変更することが可能であり、スーパフレームが更新される毎にスーパフレームを構成するスロットと各子ノードSとの割当の関係を変更するようにすることも可能である。当該処理により、管理ノードMと子ノードSとの間のデータ通信におけるセキュリティを強化することも可能である。
【0289】
一方、ステップS46においてスロット数の変更がなかったと判断された場合(ステップS46においてNO)には、ステップS48における処理をスキップして終了する(リターン)。
【0290】
当該処理に基づいて、1スーパフレーム区間が設定および更新される。そして、当該設定および更新された1スーパフレーム区間に基づいて報知情報フレームが生成される。
【0291】
すなわち、当該処理に基づいて、1スーパフレーム区間が更新され、ネットワークの構成が動的に変更されることになる。
【0292】
次に、本発明の実施の形態1に従う子ノードのデータ通信について説明する。
図14は、子ノードSにおけるデータ通信の処理の流れについて説明するフロー図である。
【0293】
図14を参照して、まず電源が投入された場合に、CPU11はROM13に格納されたソフトウェアプログラムを読込むことにより当該フローにおけるデータ通信を開始する。
【0294】
まず、CPU11は、通信部15に対してデータ通信のための初期設定を実行する(ステップS52)。なお、CPU11は、電源管理部14に通信部15への電源の供給を指示するものとする。
【0295】
そして、CPU11は、次に、管理ノードMのサーチを開始する(ステップS54)。
図15は、本発明の実施の形態1に従うサーチ開始の処理を説明するフロー図である。
【0296】
CPU11はROM13に格納されたソフトウェアプログラムを読込むことにより以下における処理を実行する。
【0297】
図15を参照して、CPU11は、通信部15に対してデータ送受信における初期チャネルを設定する(ステップS70)。
【0298】
次に、CPU11は、通信部15を介して、管理ノードMからの報知情報フレームを受信したかどうかを判断する(ステップS72)。
【0299】
ステップS72において、CPU11は、通信部15を介して、管理ノードMからの報知情報フレームを受信したと判断した場合(ステップS72においてYES)には、処理を終了する(リターン)。すなわち、当該設定されたチャネルで管理ノードMとのデータ通信が可能であることを確認したため次の処理に進む。
【0300】
一方、CPU11は、ステップS72において、管理ノードMからの報知情報フレームを受信できないと判断した場合には、次に、所定期間が経過したかどうかを判断する(ステップS74)。
【0301】
ステップS74において、CPU11は、所定期間が経過していないと判断した場合(ステップS74においてNO)には、再び、ステップS72に戻り、報知情報フレームを受信できるかどうかを判断する。
【0302】
一方、ステップS74において、CPU11は、所定期間が経過したと判断した場合(ステップS74においてYES)には、データ送受信におけるチャネルを変更する(ステップS76)。そして再びステップS72に戻り、当該変更したチャネルで報知情報フレームの受信が可能であるかどうかを確認する。そして、報知情報フレームの受信が可能となるまでチャネルを変更する。
【0303】
再び、図14を参照して、次に、CPU11は、報知情報フレームの受信に基づいて、タイミングの設定処理を実行する(ステップS56)。
【0304】
具体的には、受信した報知情報フレームのスーパフレーム構成情報d1に含まれている1スーパフレーム区間のスロット数、タイミング情報d2に含まれている1スロットの区間の長さ、受信区間の長さおよびウェイクアップ区間の長さに従って、次のフレームを受信するためのウェイクアップ区間開始時刻をタイマ17に設定する。また、管理ノードMとのデータ通信における受信および送信区間のタイミングを設定する。
【0305】
図16は、子ノードSにおける受信区間および送信区間の設定を説明する図である。
図16を参照して、ここでは、フレームを受信するフレーム受信区間までの間に受信可能状態である通常電力状態に設定するためのウェイクアップ区間、管理ノードMからの報知情報フレーム等のデータフレームを受信するためのフレーム受信区間、応答フレームを送信するフレーム送信区間、低消費電力状態であるスリープ区間がそれぞれ示されている。なお、ウェイクアップ区間、フレーム受信区間およびフレーム送信区間は、電源管理部14により、子ノードSの各部に電力が供給されている状態(電源ON)であり、スリープ区間は通常電力状態に復帰するために必要な電力供給以外は、各部に対する電力の供給が停止されている状態(電源OFF)である。
【0306】
ウェイクアップ区間は、図10(A)で説明したタイミング情報d2に含まれている、ウェイクアップ区間を規定するパラメータに従って設定される。
【0307】
フレーム受信区間は、図10(A)で説明したタイミング情報d2に含まれている、下りフレーム受信区間の長さに従って設定される。
【0308】
また、フレーム送信区間は、図10(A)で説明したタイミング情報d2に含まれている、上りフレーム受信区間の長さに従って設定される。
【0309】
また、スリープ区間は、図10(A)で説明したタイミング情報d2に含まれている、1スロットの区間の長さから、フレーム受信区間およびフレーム送信区間以外の残りの区間に設定される。
【0310】
なお、本例においては、電力が供給されている状態として、フレーム送信区間が設けられている場合について説明しているが、フレームを送信しない場合には、ウェイクアップ区間とフレーム受信区間のみとなる。
【0311】
したがって、子ノードSにおいても親ノードMと同様に、電源管理部14から常に電力の供給を受けない。具体的には、ウェイクアップ区間、フレーム受信区間およびフレーム送信区間以外の区間は、スリープ区間として電力の供給を受けない。したがって、子ノードSにおける消費電力を抑制することが可能である。なお、子ノードSにセンサ等が設けられている場合には、電力の供給が必要な部位にのみ電力を供給し、それ以外の各部については電力の供給を停止することにより、子ノードS全体としての消費電力を抑制することが可能である。
【0312】
再び、図14を参照して、次に、CPU11は、タイミングの設定処理を実行した後、報知情報フレームを受信したかどうかを判断する(ステップS58)。
【0313】
そして、CPU11は、ステップS58において、報知情報フレームを受信したと判断した場合(ステップS58においてYES)には報知情報フレームを分析する(ステップS60)。
【0314】
具体的には、報知情報フレームに含まれているスロット割当情報を分析する。
そして、CPU11は、報知情報フレームを分析した結果、スロット割当情報に自己のIDに対応するスロットの割当てがあるかどうかを判断する(ステップS62)。
【0315】
CPU11は、ステップS62において、スロット割当情報に自己のIDに対応するスロットの割当てがあると判断した場合(ステップS62においてYES)には、同期モードに移行する(ステップS64)。同期モードについては後述する。
【0316】
一方、CPU11は、ステップS62において、スロット割当情報に自己のIDに対応するスロットの割当てがないと判断した場合(ステップS62においてNO)には、登録要求フレームを送信する(ステップS66)。
【0317】
そして、再び、ステップS56に戻り、報知情報フレームに基づいて、次の受信するフレームのタイミングを設定して、上記処理を繰り返す。
【0318】
一方、ステップS58において、CPU11は、報知情報フレームの受信が無いと判断した場合(ステップS58においてNO)には、エラー判定とする(ステップS67)。なお、エラー判定となった結果は、CPU11の指示に従って、一例として、RAM12等の記憶領域に格納されるものとする。当該エラー判定となった結果は、後述するエラー処理の際に用いられる。
【0319】
そして、CPU11は、エラー処理を実行する(ステップS68)。エラー処理については後述する。
【0320】
次に、本発明の実施の形態1に従う同期モードについて説明する。
図17は、本発明の実施の形態1に従う同期モードの処理を説明するフロー図である。
【0321】
CPU11はROM13に格納されたソフトウェアプログラムを読込むことにより以下における処理を実行する。
【0322】
図17を参照して、CPU11は、報知情報フレームに含まれるタイミング情報と、スーパフレーム構成情報あるいはスロット割当情報とに基づいて、スロットの割当に従ったタイミングを設定する(ステップS90)。具体的には、例えば、自己のIDに対応してスロット1が割り当てられた場合には、受信した報知情報フレームのスーパフレーム構成情報d1に含まれている1スーパフレーム区間のスロット数あるいは、スロット割当情報d5に含まれている自己に割り当てられたスロットの番号、タイミング情報d2に含まれている1スロットの区間の長さ、受信区間の長さおよびウェイクアップ区間の長さに従って、自己に割り当てられたスロット(ここではスロット1)に対応する同期フレームを受信するための受信タイミングを設定する。具体的には、同期フレームを受信するためのウェイクアップ区間開始時刻を算出して、タイマ設定する。他のスロットに割り当てられている場合についても同様である。
【0323】
例えば、報知情報フレームを受信した同じスーパフレーム区間における自己に割り当てられたスロット(ここではスロット1)に対応する同期フレームを受信するためのタイミングとしてのウェイクアップ区間開始時刻は、「スロット数(割り当てられたスロット番号)×1スロット区間の長さ−ウェイクアップ時間―受信区間の長さ」として算出する。
【0324】
また、次のスーパフレーム区間における自己に割り当てられたスロットに対応する同期フレームを受信するためのタイミングとしてのウェイクアップ区間開始時刻は、「スロット数(1スーパフレーム区間内のスロット数)×1スロット区間の長さ−ウェイクアップ時間―受信区間の長さ」として算出する。
【0325】
そして、CPU11は、設定されたタイミングに従って同期フレームを受信したかどうかを判断する(ステップS98)。
【0326】
そして、ステップS98において、CPU11は、設定されたタイミングに従って同期フレームを受信した場合(ステップS98においてYES)には、応答フレームを送信する(ステップS100)。
【0327】
そして、次に、CPU11は、同期フレームの中に変更通知があるかどうかを判断する(ステップS102)。具体的には、上述したようにスーパフレーム構成情報の報知情報フレーム更新番号が更新されたかどうかに基づいて判断する。報知情報フレーム更新番号が更新されたと判断した場合には変更通知があると判断する。一方、報知情報フレーム更新番号が更新されていないと判断した場合には変更通知はないと判断する。
【0328】
ステップS102において、CPU11は、同期フレームの中に変更通知がないと判断された場合(ステップS102においてNO)には、再びステップS90に戻り、スロットの割当に従ったタイミング設定に従って同期フレームの受信に応答して、応答フレームを送信する。
【0329】
したがって、変更通知があるまで当該同期モードにおいて、割り当てられたスロットを用いた管理ノードMと子ノードSとのデータ通信が実行される。
【0330】
一方、ステップS102において、CPU11は、同期フレームの中に変更通知があると判断された場合(ステップS102においてYES)には、同期モードの処理を終了する(リターン)。すなわち、同期モードを終了して、再び、図14のステップS56に戻る。すなわち、再び、以前に受信した報知情報フレームのスーパフレーム構成情報d1、タイミング情報d2およびスロット割当情報d5に基づいて、次のスーパフレーム区間における報知情報フレームを受信するためのタイミングとしてのウェイクアップ区間開始時刻を算出して、当該タイミングをタイマ設定する。
【0331】
例えば、次のスーパフレーム区間における報知情報フレームを受信するためのタイミングとしてのウェイクアップ区間開始時刻は、「スロット数(1スーパフレーム区間内の自身を含めた残りのスロット数)×1スロット区間の長さ−ウェイクアップ時間−受信区間の長さ」として算出する。
【0332】
そして、ステップS58において、ウイェクアップ区間開始後の受信区間において、再び報知情報フレームを受信したかどうかを判断する。
【0333】
そして、報知情報フレームを受信した場合(ステップS58においてYES)には、報知情報フレームを分析して、1スーパフレーム区間が変更された場合においても、自己が割当られたスロットに同期した上述した同期モードにおけるデータ通信を実行する。
【0334】
本例においては、各子ノードSが変更通知に従って一斉に次のスーパフレーム区間における報知情報フレームを受信するためのタイミングを算出して、報知情報フレームを受信する。そして、当該報知情報フレームに基づいて、各子ノードがそれぞれ自己が割当られたスロットに同期した上述した同期モードにおけるデータ通信を実行する。したがって、管理ノードMは、各子ノードのそれぞれに対して受信するタイミングを規定する必要がなく、簡易な方式で各子ノードの受信するタイミングを変更することが可能である。
【0335】
一方、ステップS98において、CPU11は、設定された受信タイミングに従って同期フレームを受信しなかったと判断した場合(ステップS98においてNO)には、エラー判定とする(ステップS103)。なお、エラー判定となった結果は、CPU11の指示に従って、一例として、RAM12等の記憶領域に格納されるものとする。当該エラー判定となった結果は、後述するエラー処理の際に用いられる。
【0336】
そして、エラー処理を実行する(ステップS104)。エラー処理については後述する。そして、ステップS98に戻る。したがって、エラー処理の場合には、応答フレームの送信を停止して消費電力を低減することも可能である。
【0337】
エラー処理としては、図14におけるステップS68における処理および図17のステップS104における処理があるがともに同様の処理である。
【0338】
図18は、本発明の実施の形態1に従うエラー処理を説明するフロー図である。
CPU11はROM13に格納されたソフトウェアプログラムを読込むことにより以下における処理を実行する。
【0339】
図18を参照して、まず、CPU11は、エラー回数をカウントする(ステップS110)。具体的には、RAM12等に格納されているエラー判定となった結果の回数をカウントする。
【0340】
そして、次にCPU11は、所定回数以上エラー回数がカウントされているかどうかを判断する(ステップS112)。一例として、所定回数として3回に設定するものとする。すなわち、CPU11は、3回以上エラー回数がカウントされたと判断した場合(ステップS112においてYES)には「A」に進む。
【0341】
一方、CPU11は、所定回数以上エラー回数がカウントされていないと判断した場合(ステップS112においてNO)には、エラー処理を終了する(リターン)。すなわち、この場合においては、未だ所定回数以上、エラー回数がカウントされていないため再度、同様の処理を繰り返してエラー判定となるかどうかを確認する。
【0342】
ステップS112において、3回以上エラー回数がカウントされたと判断した場合には「A」である図14のステップS54のサーチを開始する。したがって、再び、チャネルの設定が報知情報フレームを受信するまで実行される。エラー判定の原因としては、通信障害等により管理ノードMにおけるデータ通信のチャネルが変更されて報知情報フレーム等が受信できない場合が想定される。
【0343】
したがって、チャネルが変更された場合には、同一のチャネルに設定しなければデータ通信を実行することができないため当該処理により適切なチャネルに再設定してデータ通信を実行することが可能となる。
【0344】
図19は、管理ノードMにおけるデータ通信のチャネルが変更された場合の子ノードS0のチャネルの変更について説明する図である。なお、本図以降、図示は省略しているが、スリープ区間と送信区間(又は受信区間)との間にはウェイクアップ区間が含まれ、図6〜9等での説明と同様に、スリープ区間からの復帰のためのタイマへの時間設定はウェイクアップ区間を考慮して決定する。
【0345】
図19を参照して、子ノードS0は、チャネル1で管理ノードMと時刻t60から開始されるスロット1を用いたデータ通信を実行している場合が示されている。
【0346】
そして、時刻t61において、管理ノードMは、電界強度の測定に従った適切なチャネルとして、チャネル3に変更した場合が示されている。
【0347】
時刻t62において、子ノードS0は、管理ノードMがチャネル3を用いたデータ通信に変更したため管理ノードMからのデータを受信することができない場合が示されている。当該状態が繰り返されることにより図18で説明したエラー処理に基づいて、再び図15で説明した管理ノードを検索するサーチが開始される。
【0348】
本例においては、時刻t63において、子ノードSの通信部15は、チャネル2に変更して報知情報フレームを受信しようとする場合が示されている。管理ノードMは、チャネル3を用いたデータ通信に変更したためこの場合においても管理ノードMからのデータを受信することができない場合が示されている。
【0349】
そして、時刻t65において、さらに、子ノードSの通信部15は、チャネル3で報知情報フレームを受信しようとする場合が示されている。
【0350】
そして、時刻t66において、管理ノードMから報知情報フレームを受信したものとする。すなわち、時刻t66に管理ノードMを検出したものとする。
【0351】
これに従って、子ノードS0は報知情報フレームを分析して、スロット割当情報が有るかどうかを判断する。そして、スロットの割当(本例においてはスロット1)があると判断した場合には、上述したように報知情報フレームに含まれるタイミング情報と、スロット割当情報とに基づいて、スロットの割当に従ったタイミングを設定する。具体的には、例えば、自己のIDに対応してスロット1が割り当てられた場合には、受信した報知情報フレームのスロット割当情報d5に含まれている自己に割り当てられたスロットの番号およびタイミング情報d2に含まれている1スロットの区間の長さ、受信区間の長さおよびウェイクアップ区間の長さに従って、自己に割り当てられたスロット(ここではスロット1)に対応する同期フレームを受信するための受信タイミングを設定する。
【0352】
そして、時刻t68において、管理ノードMからスロット1を用いた同期フレームを受信する。そして、時刻t69において、応答フレームを管理ノードMに送信して、以降、チャネル3によるスロット1を用いたデータ通信を再開する。
【0353】
したがって、通信障害等により管理ノードMにおけるデータ通信のチャネルが変更されて、一時的に管理ノードMとのデータ通信が切断された場合であってもチャネルを変更することによりネットワークを再構成することが可能である。すなわち、再びデータ通信を実行することが可能となる。
【0354】
上述したように、本発明の実施の形態1に従う方式により、ネットワークが自動的に再構成および再構築が可能となる。
【0355】
また、管理ノードMは、子ノードSが領域10外に移動するような場合には、ネットワークから外れたものとして管理することが可能である。一方で、新たに領域10内に子ノードSが移動するような場合には、ネットワークに新たに登録して管理することが可能であり、製造ライン等の部品等に子ノードSを装着することにより当該領域10内における部品の位置および状態等を子ノードSからの応答フレームによって管理ノード側は容易に管理することが可能である。
【0356】
(実施の形態2)
上記の実施の形態1においては、管理ノードMからのみ報知情報フレームが送信されて、管理ノードMからのブロードキャスト通信が可能な範囲にある子ノードSを管理(ネットワークを形成)する方式について説明した。
【0357】
本実施の形態2においては、管理ノードMからのブロードキャスト通信が可能な範囲ではない圏外にある子ノードに対しても管理可能な方式について説明する。
【0358】
図20は、本発明の実施の形態2に従うネットワークを形成するノードの概略を説明する図である。
【0359】
図20を参照して、本例においてはある領域10#に設けられた管理ノードMと、複数の子ノードS0〜S4と、中継ノードR0,R1とが設けられている場合が示されている。例えば、領域10#としては、ある部屋内を想定しているが、管理ノードMからのブロードキャスト通信によって届かない範囲の領域も想定しており、中継ノードR0,R1も含めたブロードキャスト通信によって届く範囲の領域を想定している。
【0360】
本発明の実施の形態2に従う管理ノードMおよび各子ノードSについては、実施の形態1で説明した管理ノードMおよびSと同様の構成であるためその説明は省略する。
【0361】
本発明の実施の形態2においては、中継ノードR0,R1(総称して中継ノードRとも称する)を新たに設けた場合について説明する。中継ノードR0,R1は、管理ノードMと、管理ノードMからのブロードキャスト通信によって届かない範囲にある子ノード(圏外ノードとも称する)との間のデータ通信を中継する機能(中継機能とも称する)を有する。なお、中継ノードRは、所定条件が満たされる場合に中継機能を開始し、当該中継機能が開始されない場合には、単なる子ノードとして動作する。なお、各子ノードS、中継ノードRは、それぞれを識別する固有のID(Identification)情報を有しているものとする。
【0362】
図21は、本発明の実施の形態2に管理ノードMおよび中継ノードRから送信される報知情報フレームを説明する図である。
【0363】
図21を参照して、ここでは、ブロードキャスト通信として、管理ノードMおよび中継ノードRから報知情報フレームが各子ノードSに送信される。
【0364】
図21に示されるように、中継ノードRからも報知情報フレームが送信されることにより、報知情報フレームが送信される領域が拡大し、圏外ノードも報知情報フレームを受信することが可能となる。
【0365】
そして、各子ノードSは、管理ノードMあるいは中継ノードRから送信されたブロードキャスト通信として送信された報知情報フレームを受信して、応答フレームとして、ネットワーク接続参加への登録要求フレームを送信する。
【0366】
管理ノードMのハードウェアの構成は、実施の形態1の図4で説明したのと同様であるのでその詳細な説明は繰り返さない。また、子ノードSの実施の形態1の図5で説明したのと同様であるのでその詳細な説明は繰り返さない。
【0367】
図22は、本発明の実施の形態2に従う中継ノードRの構成を示す図である。
図22(A)を参照して、本発明の実施の形態2に従う中継ノードRは、図5で説明した子ノードSと比較して、CPU11をCPU11#に置換するとともに、さらに、電界強度測定部20をさらに設けた点が異なる。他の点については同様であるのでその詳細な説明は繰り返さない。
【0368】
中継ノードRのCPU11#は、ROM13に格納されているソフトウェアプログラムを読み込むことにより、中継ノードR全体を制御する。CPU11#は、子ノードとして管理ノードMとの間で通信部15を介したデータ通信を実行するとともに、自己が管理ノードとなって子ノードSとの間で通信部49を介したデータ通信の中継処理を実行する。
【0369】
電界強度測定部20は、データ通信の際における外部環境の電界強度を測定する。
図22(B)を参照して、ここでは、CPU11#の管理ノードとして機能する場合における機能ブロック図が示されている。
【0370】
具体的には、CPU11#は、チャネル設定部22と、サブスーパフレーム設定部24と、データ送受信制御部26とを含む。
【0371】
チャネル設定部22は、電界強度測定部20において測定した電界強度に従ってデータ通信に最適なチャネル(周波数帯)を設定する。
【0372】
サブスーパフレーム設定部24は、通信部15を介した子ノード(圏外ノード)Sとの間での1サイクルのデータ通信の各処理の内容を規定する。本例において、各処理のことをスロットとも称する。
【0373】
データ送受信制御部26は、サブスーパフレーム設定部24で設定されたサブスーパフレームに従った通信部15を介したデータ通信を子ノードSとの間で実行する。
【0374】
図23は、本発明の実施の形態2に従う中継ノードR0をネットワークに登録する場合の処理の流れについて説明する図である。なお、中継ノードRは、上述したように中継機能を開始しない場合には、子ノードSと同様に動作する。なお、上述したように図示は省略するが、スリープ区間と送信区間(又は受信区間)との間にはウェイクアップ区間が含まれるものとする。スリープ区間からの復帰のためのタイマへの時間設定はウェイクアップ区間を考慮して決定する。
【0375】
図23を参照して、まず、管理ノードMから1スーパフレーム区間内のスロット0を使用して報知情報フレームが送信される。この場合、管理ノードMに中継ノードRが未登録であるため、スーパフレーム構成情報の1スーパフレーム区間のスロット数は1、スロット割当情報には、中継ノードRのIDは未格納である。
【0376】
本例においては、スーパフレーム区間td0〜td5のスロット0において管理ノードMから報知情報フレームが送信される場合が示されている。
【0377】
ここで、たとえば時刻t101において、管理ノードMに未登録である中継ノードR0の通信部15が起動され、管理ノードMを検索するための受信区間が開始される。
【0378】
中継ノードR0は、時刻t102において、スーパフレーム区間td1のスロット0において送信された管理ノードMからの報知情報フレームを受信する。すなわち、中継ノードR0は、時刻t102に管理ノードMを検出したと判断する。
【0379】
中継ノードR0は、管理ノードMより受信した報知情報フレームに含まれるスーパフレーム構成情報、タイミング情報に基づいて、上述したように次のスーパフレーム区間td3における報知情報フレームを受信するためのタイミングを算出してタイマ17を設定する。
【0380】
また、中継ノードR0は、時刻t103よりスリープ区間(S)を開始し低消費電力状態へ移行する。
【0381】
中継ノードR0は、タイマ17を用いてカウントしたスリープ区間(S)満了後、上述したように低消費電力状態より通常電力状態(フレームのデータ送受信が可能な状態)へと復帰し、時刻t104より、管理ノードMから送信される報知情報フレームの受信を開始するための受信区間(R)を開始する。
【0382】
中継ノードR0は、時刻t104より開始した受信区間(R)にて管理ノードMから送信された報知情報フレームを受信し、受信した報知情報フレームに含まれているスロット割当情報に自己のIDが格納されているか否かにより自己が管理ノードMに登録されているか否かを判断する。
【0383】
中継ノードR0は、自己が管理ノードMに未登録であると判断した場合に、管理ノードMより受信した報知情報フレームに含まれるスーパフレーム構成情報、タイミング情報に基づいて、次のスーパフレーム区間td4における報知情報フレームを受信するためのタイミングを算出してタイマ17を設定する。
【0384】
そして、中継ノードR0は、時刻t105において、管理ノードMへ自己のIDを格納した登録要求フレームの送信を開始する。そして、登録要求フレームの送信完了後、時刻t106からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0385】
管理ノードMにおいては、中継ノードR0から受信した登録要求フレームに格納されているIDが、スロット割当情報に格納済みでない場合には、報知情報フレームのスーパフレーム構成情報のスロット数を加算する。具体的には、1スーパフレーム区間に中継ノードR0とのデータ通信に用いられる1スロットを追加する処理が実行される。また、スロット割当情報に登録要求フレームに格納されていた中継ノードR0のIDを格納する処理が実行される。
【0386】
中継ノードR0は、タイマ17を用いてカウントしたスリープ区間(S)満了後、上述したように低消費電力状態より通常電力状態へと復帰し、時刻t107より、管理ノードMから送信される報知情報フレームの受信を開始するための受信区間(R)を開始する。
【0387】
中継ノードR0は、時刻t107より開始した受信区間(R)にて、受信した報知情報フレームに含まれているスロット割当情報に自己のIDが格納されているか否かに基づいて自己がネットワークに登録されているか否かを判断する。
【0388】
中継ノードR0は、自己がネットワークに登録されていると判断した場合には、登録要求フレームは送信しない。
【0389】
そして、中継ノードR0は、自己がネットワークに登録されていると判断した場合、管理ノードMから自己に割り当てられたスロットを用いたデータ通信を実行するため、管理ノードMより受信した報知情報フレームに含まれるタイミング情報およびスロット割当情報に基づいて、同じスーパフレーム区間における自己に割り当てられたスロット(ここではスロット1)に対応する同期フレームを受信するためのタイミングを算出してタイマ17を設定する。
【0390】
そして、中継ノードR0は、時刻t107#からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0391】
中継ノードR0は、タイマ17を用いてカウントしたスリープ区間(S)満了後、上述したように低消費電力状態より通常電力状態へと復帰し、時刻t108より、管理ノードMから自己に割り当てられたスロット(本例ではスロット1)を使用して送信される同期フレームの受信を開始するための受信区間(R)を開始する。
【0392】
中継ノードR0は、時刻t108より開始した受信区間(R)にて管理ノードMから送信された同期フレームを受信し、受信した同期フレームに自己のIDが格納されているか否かに基づいて自己に割り当てられたスロットか否かを判断する。本例では、自己のIDが格納されているものとする。
【0393】
中継ノードR0は、受信した同期フレームに自己のIDが格納されていると判断した場合には、管理ノードMより、既に受信済みの報知情報フレームに含まれるスーパフレーム構成情報およびタイミング情報に基づいて、次のスーパフレーム区間における自己に割り当てられたスロットを使用して管理ノードMより送信される同期フレームを受信するためのタイミングを算出してタイマ17を設定する。
【0394】
そして、中継ノードR0は、時刻t109において、管理ノードMへ自己のIDを格納した応答フレームの送信を開始する。そして、応答フレームの送信完了後、時刻t110からスリープ区間(S)を開始し低消費電力状態へ移行する。すなわち、以降、自己に割り当てられたスロット(本例ではスロット1)のみを使用して管理ノードMとの間でのデータ通信を実行し、スーパフレームの構成の変更が通知されるまで報知情報フレームの受信は必要としない。
【0395】
管理ノードMにおいては、中継ノードR0から受信した応答フレームに格納されている中継ノードR0のIDが、同スロットで既に送信済みの同期フレームに格納した、割り当てた中継ノードR0のIDと一致した場合、中継ノードR0がネットワーク内で正常に稼動していると判断する。
【0396】
なお、以下においても同様に応答フレームを受信するたびに管理ノードMは、同様の判断を行う。
【0397】
中継ノードR0は、タイマ17を用いてカウントしたスリープ区間(S)満了後、上述したように低消費電力状態より通常電力状態へと復帰し、時刻t112より、管理ノードMから自己に割り当てられたスロット(本例ではスロット1)を使用して送信される同期フレームの受信を開始するための受信区間(R)を開始する。
【0398】
中継ノードR0は、時刻t112より開始した受信区間(R)にて管理ノードMから送信された同期フレームを受信し、受信した同期フレームに自己のIDが格納されているか否かに基づいて自己に割り当てられたスロットか否かを判断する。本例では、自己のIDが格納されているものとする。
【0399】
中継ノードR0は、受信した同期フレームに自己のIDが格納されていると判断した場合には、管理ノードMより、既に受信済みの報知情報フレームに含まれているスーパフレーム構成情報およびタイミング情報に基づいて、次のスーパフレーム区間における自己に割り当てられたスロットを使用して管理ノードMより送信される同期フレームを受信するためのタイミングを算出してタイマ17を設定する。
【0400】
そして、中継ノードR0は、時刻t114において、管理ノードMへ自己のIDを格納した応答フレームの送信を開始する。そして、応答フレームの送信完了後、スリープ区間(S)を開始し低消費電力状態へ移行する。以降、スーパフレームの構成が変わらない限り同様の動作を繰り返し行う。
【0401】
したがって、中継ノードR0についても子ノードSと同様にネットワークに登録されて管理ノードMとの間での同期したデータ通信を実行する。
【0402】
図24は、本発明の実施の形態2に従う中継ノードR0を用いて圏外ノードをネットワークに登録する場合の処理の流れについて説明する図である。なお、中継ノードRとは、管理ノードMとの関係においては、子ノードSとして動作する。また、中継ノードR0は、圏外ノードS3に対して管理ノードとして動作する。
【0403】
図24を参照して、まず、管理ノードMは、1スーパフレーム区間としてスロット0〜3のスロットを設定しているものとする。
【0404】
スロット1は、子ノードS0に割り当てているものとする。また、スロット2は、中継ノードR0に割り当てているものとする。また、スロット3は、子ノードS1に割り当てているものとする。
【0405】
そして、子ノードS0,S1および中継ノードR0は、それぞれ割り当てられたスロットを用いた管理ノードMとの間で同期を確立したチャネル1を用いたデータ通信を実行しているものとする。一方、中継ノードR0は、管理ノードとしてチャネル1と異なるチャネル2を用いたデータ通信を実行する。
【0406】
そして、時刻t121から中継ノードRは、中継機能を開始しているものとする。具体的には、中継ノードRは、管理ノードとして、1サブスーパフレーム区間を構成するスロット0に対応する報知情報フレームを送信する。なお、中継ノードRが中継機能を開始している場合には、1スーパフレーム区間が固定された状態であることが必要である。一例として、本例の場合には、1スーパフレーム区間のスロットの個数が4個である状態が継続するものとする。一方、1スーパフレーム区間の個数が変更された場合には、中継機能は中断するものとする。また、中継ノードRから送信されるサブスーパフレーム区間に従う報知情報フレームは、上述した管理ノードMから送信される図10(A)で説明したスーパフレーム区間に従う報知情報フレームと基本的に同様の構成であるが親ノードID情報d4が異なる。本例の場合には、中継ノードRから報知情報フレームが送信されるため親ノードID情報は、中継ノードRのID情報が格納されて送信される。また、1サブスーパフレーム区間のスロット数によらず、中継ノードRから送信される報知情報フレームに格納されるスーパフレーム構成情報の1サブスーパフレーム区間のスロット数は1スーパフレーム区間のスロット数と同じ4個として固定される。また、中継ノードR0においては、サブスーパフレーム区間は最大3個のスロットしか拡張することはできない。1スーパフレーム区間のうちの1つのスロットは、管理ノードMとの間のデータ通信として用いる必要があるからである。本例においては管理ノードMとの間のデータ通信として用いるスロット部分を「リザーブ」と標記している。
【0407】
そして、次に、例えば時刻t120において圏外ノードS3の通信部15が起動され、管理ノードMを検索するための受信区間が開始される。
【0408】
圏外ノードS3は、時刻t120より受信区間(R)を開始後、管理ノードより報知情報フレームを受信するまで受信区間(R)を継続する。
【0409】
そして、圏外ノードS3は、時刻t121において、サブスーパフレーム区間sta0のスロット0において送信された管理ノード(中継ノードR0)から送信された報知情報フレームを受信する。すなわち、圏外ノードS3は、時刻t121に管理ノード(中継ノードR0)を検出したと判断する。
【0410】
圏外ノードS3は、管理ノード(中継ノードR0)より受信した報知情報フレームに含まれるスーパフレーム構成情報、タイミング情報に基づいて、次のサブスーパフレーム区間sta1における報知情報フレームを受信するタイミングを算出する。
【0411】
具体的には、一例として、圏外ノードS3は、スーパフレーム構成情報である1スーパフレーム区間内のスロット数、タイミング情報の1スロットの区間の長さと受信区間の長さとウェイクアップ時間とに基づいて、報知情報フレームを受信するためのウェイクアップ区間開始時刻を「スロット数(1スーパフレーム区間内のスロット数(固定値4))×1スロット区間の長さ−ウェイクアップ時間−受信区間の長さ」として算出する。そして、圏外ノードS3は、タイマ17を用いて算出した時刻となるまでカウントする。また、圏外ノードS3は、時刻t122においてスリープ区間(S)を開始し低消費電力状態へ移行する。
【0412】
そして、圏外ノードS3は、タイマ17を用いて算出した時刻後、スリープ区間(S)を終了して、低消費電力状態から通常電力状態に復帰させる。そして、時刻t123において、管理ノード(中継ノードR0)から送信される報知情報フレームの受信を開始するための受信区間(R)を開始する。
【0413】
圏外ノードS3は、時刻t123より開始した受信区間(R)にて管理ノードMから送信された報知情報フレームを受信し、受信した報知情報フレームに含まれているスロット割当情報に自己のIDが格納されているか否かにより自己が管理ノードMに登録されているか否かを判断する。
【0414】
圏外ノードS3は、自己が管理ノードMに未登録であると判断した場合に、管理ノード(中継ノードR0)より受信した報知情報フレームに含まれるスーパフレーム構成情報、タイミング情報に基づいて、次のサブスーパフレーム区間sta2における報知情報フレームを受信するタイミングを算出する。
【0415】
具体的には、一例として、圏外ノードS3は、スーパフレーム構成情報である1スーパフレーム区間内のスロット数、タイミング情報の1スロットの区間の長さと受信区間の長さとウェイクアップ時間とに基づいて、報知情報フレームを受信するためのウェイクアップ区間開始時刻を「スロット数(1スーパフレーム区間内のスロット数(固定値4))×1スロット区間の長さ−ウェイクアップ時間−受信区間の長さ」として算出する。そして、圏外ノードS3は、タイマ17を用いて算出した時刻となるまでカウントする。
【0416】
そして、圏外ノードS3は、時刻t124において、管理ノード(中継ノードR0)へ自己のIDを格納した登録要求フレームの送信を開始する。そして、登録要求フレームの送信完了後、時刻t125からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0417】
管理ノード(中継ノードR0)においては、子ノードS3から受信した登録要求フレームに格納されているIDが、スロット割当情報に格納済みでない場合には、スロット割当情報に登録要求フレームに格納されていた子ノードS3のIDを格納する処理が実行される。
【0418】
そして、圏外ノードS3は、タイマ17を用いて算出した時刻後、スリープ区間(S)を終了して、低消費電力状態から通常電力状態に復帰させる。そして、時刻t126において、管理ノード(中継ノードR0)から送信される報知情報フレームの受信を開始するための受信区間(R)を開始する。
【0419】
圏外ノードS3は、時刻t126より開始した受信区間(R)にて管理ノードMから送信された報知情報フレームを受信し、受信した報知情報フレームに含まれているスロット割当情報に自己のIDが格納されているか否かにより自己が管理ノードMに登録されているか否かを判断する。
【0420】
そして、圏外ノードS0は、自己がネットワークに登録されていると判断した場合、管理ノード(中継ノードR0)から自己に割り当てられたスロットを用いたデータ通信を実行するため、管理ノード(中継ノードR0)より受信した報知情報フレームに含まれるタイミング情報およびスロット割当情報に基づいて、同じサブスーパフレーム区間における自己に割り当てられたスロット(ここではスロット1)に対応する同期フレームを受信するためのタイミングを算出する。
【0421】
具体的には、スロット割当情報に含まれている自己に割り当てられたスロットの番号(本例では、スロット1)、タイミング情報に含まれている1スロットの区間の長さと、受信区間の長さと、ウェイクアップ時間とに基づいて、同期フレームを受信するためのウェイクアップ区間開始時刻を「スロット数(割り当てられたスロット番号)×1スロット区間の長さ−ウェイクアップ時間―受信区間の長さ」として算出する。そして、圏外ノードS3は、タイマ17を用いて算出した時刻となるまでカウントする。
【0422】
圏外ノードS3は、自己がネットワークに登録されていると判断した場合には、登録要求フレームは送信しない。
【0423】
そして、圏外ノードS3は、時刻t127からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0424】
圏外ノードS3は、タイマ17を用いて算出した時刻後、スリープ区間(S)を終了して、低消費電力状態から通常電力状態に復帰させる。そして、圏外ノードS3は、サブスーパフレーム区間sta2のスーパフレームのスロット1の区間である時刻t128において、管理ノード(中継ノードR0)から自己に割り当てられたスロット(本例ではスロット1)を使用して送信される同期フレームの受信を開始するための受信区間(R)を開始する。
【0425】
圏外ノードS3は、時刻t128より開始した受信区間(R)にて管理ノード(中継ノードR0)から送信された同期フレームを受信し、受信した同期フレームに自己のIDが格納されているか否かに基づいて自己に割り当てられたスロットか否かを判断する。本例では、自己のIDが格納されているものとする。
【0426】
圏外ノードS3は、受信した同期フレームに自己のIDが格納されていると判断した場合には、管理ノード(中継ノードR0)より、既に受信済みの報知情報フレームに含まれるスーパフレーム構成情報およびタイミング情報に基づいて、次のサブスーパフレーム区間における自己に割り当てられたスロットを使用して管理ノードMより送信される同期フレームを受信するためのタイミングを算出する。そして、圏外ノードS3は、タイマ17を用いて算出した時刻となるまでカウントする。
【0427】
なお、以下においても同様に自己に割当てられたスロットにおいて同期フレームを受信するたびに子ノードSは、管理ノードMから自己に割り当てられたスロットを用いたデータ通信を実行するタイミングを算出するものとする。
【0428】
また、圏外ノードS3は、時刻t129において、管理ノードMへ自己のIDを格納した応答フレームの送信を開始する。そして、応答フレームの送信完了後、時刻t130からスリープ区間(S)を開始し低消費電力状態へ移行する。すなわち、以降、自己に割り当てられたスロット(本例ではスロット1)のみを使用して管理ノード(中継ノードR0)との間でのデータ通信を実行し、スーパフレームの構成の変更が通知されるまで報知情報フレームの受信は必要としない。
【0429】
当該処理により、管理ノードMの報知情報フレームの受信可能な範囲にない圏外ノードについても中継ノードRを用いてネットワークに登録することが可能となる。
【0430】
図25は、本発明の実施の形態2に従う管理ノードMと、中継ノードR0を用いた子ノードとのデータの流れについて説明する図である。なお、中継ノードR0とは、管理ノードMとの関係においては、子ノードSとして動作する。また、中継ノードR0は、子ノード(圏外ノード)S3,S4に対して管理ノードとして動作する。
【0431】
図25を参照して、まず、管理ノードMは、1スーパフレーム区間としてスロット0〜3のスロットを設定しているものとする。
【0432】
1スーパフレーム区間におけるスロット1は、子ノードS0に割り当てているものとする。また、スロット2は、中継ノードR0に割り当てているものとする。また、スロット3は、子ノードS1に割り当てているものとする。
【0433】
そして、子ノードS0,S1および中継ノードR0は、それぞれ割り当てられたスロットを用いた管理ノードMとの間で同期を確立したチャネル1を用いたデータ通信を実行しているものとする。
【0434】
また、上述した方式に従って、中継ノードR0は、1サブスーパフレーム区間としてスロット0〜2のスロットを設定しているものとする。
【0435】
1サブスーパフレーム区間におけるスロット1は、子ノードS3に割り当てているものとする。また、スロット2は、子ノードS4に割り当てているものとする。
【0436】
そして、子ノードS0,S1および中継ノードR0は、それぞれ割り当てられたスロットを用いた管理ノードMとの間で同期を確立したチャネル2を用いたデータ通信を実行しているものとする。チャネルを異ならせることにより混信を防止し良好なデータ通信を確保することが可能である。
【0437】
また、子ノードS3,S4は、それぞれ割り当てられたスロットを用いた管理ノード(中継ノードR)との間で同期を確立したデータ通信を実行しているものとする。
【0438】
中継ノードR0は、管理ノードMとの関係において、時刻t140,t144に開始される自己に割り当てられたスロット2を用いたデータ通信に関して、同期フレームを受信して、時刻t142,t146において応答フレームを送信する。この応答フレームには、自己の中継ノードR0のデータと、中継ノードR0を管理ノードとする子ノードの情報も含められる。
【0439】
すなわち、中継ノードR0の応答フレームには、中継ノードR0のデータと、子ノードS3,S4のデータが1つの応答フレームとして管理ノードMに送信される。
【0440】
当該方式により、管理ノードMは、中継ノードR0を介して子ノードS3,S4のデータを取得することが可能となる。
【0441】
図26は、本発明の実施の形態2に従う管理ノードMと、中継ノードR0を用いた子ノードとのデータの別の流れについて説明する図である。なお、中継ノードRとは、管理ノードMとの関係においては、子ノードSとして動作する。また、中継ノードR0は、子ノード(圏外ノード)S3,S4に対して管理ノードとして動作する。
【0442】
図26を参照して、まず、管理ノードMは、1スーパフレーム区間としてスロット0〜3のスロットを設定しているものとする。
【0443】
1スーパフレーム区間におけるスロット1は、子ノードS0に割り当てているものとする。また、スロット2は、中継ノードR0に割り当てているものとする。また、スロット3は、子ノードS1に割り当てているものとする。
【0444】
そして、子ノードS0,S1および中継ノードR0は、それぞれ割り当てられたスロットを用いた管理ノードMとの間で同期を確立したデータ通信を実行しているものとする。
【0445】
また、上述した方式に従って、中継ノードR0は、1サブスーパフレーム区間としてスロット0〜2のスロットを設定しているものとする。
【0446】
1サブスーパフレーム区間におけるスロット1は、子ノードS3に割り当てているものとする。また、スロット2は、子ノードS4に割り当てているものとする。
【0447】
そして、子ノードS0,S1および中継ノードR0は、それぞれ割り当てられたスロットを用いた管理ノードMとの間で同期を確立したデータ通信を実行しているものとする。
【0448】
また、子ノードS3,S4は、それぞれ割り当てられたスロットを用いた管理ノード(中継ノードR0)との間で同期を確立したデータ通信を実行しているものとする。
【0449】
上記においては、管理ノードMから送信される同期フレームに対して、応答フレームを送信するのみであったが、中継ノードR0を介して行なわれる図10,11で説明したユーザデータの流れについて説明する。
【0450】
一例として、管理ノードMから圏外ノードS3が取得したデータの送信を要求する場合、時刻t148において、管理ノードMから中継ノードR0への通信に割り当てられたスロット2を用いたデータ通信に関して、同期フレーム中のユーザデータに含まれる送信元ノードIDとして管理ノードMのID情報(ID000)を格納し、送信先ノードIDとして圏外ノードS3のID情報(例えばID005)を格納する。そして送信すべきデータとして、データの転送指示コマンドを送信先ノードIDに続いて送信する。中継ノードR0は、かかる同期フレームを受信して、ユーザデータに含まれている送信先ノードのIDを確認して自己宛か否か認識する。
【0451】
管理ノードである中継ノードR0は、同期フレーム中の送信先ノードIDに指定されているIDが自己宛でないと認識した場合には、次に、自己が管理ノードとして管理する子ノード宛であるか否かを認識する。そして、自己が管理ノードとして管理する子ノード宛でもないと認識した場合には、応答フレームを用いて管理ノードMに送信する。
【0452】
一方、中継ノードR0は、自己が管理ノードとして管理する子ノード宛であると認識した場合には、当該データの転送指示コマンドを受けて、圏外ノードS3とのデータ通信に割り当てられている1サブスーパフレーム区間のスロット1を用いて、時刻t152において管理ノードMからの同期フレームに含まれるユーザデータを圏外ノードS3への同期フレームのユーザデータとして転送する。
【0453】
圏外ノードS3は、時刻t152においてスロット1を用いた中継ノードR0からの同期フレームを受信する。そして、当該同期フレームに含まれるユーザデータが自己宛であるか否かを認識する。そして、自己宛であると認識した場合には、同期フレームに含まれるデータ転送指示コマンドに応答して、時刻t153において自己が取得したデータを中継ノードR0への応答フレームにより送信する。具体的には、圏外ノードS3から管理ノードMへの応答フレームにおいて、送信元ノードIDとして圏外ノードS3のID情報(ID005)、送信先ノードIDとして管理ノードMのID情報(ID000)を格納し、送信先ノードIDに続いて圏外ノードS3が取得したデータを送信する。
【0454】
中継ノードR0は、圏外ノードS3からの応答フレームに含まれるユーザデータの送信先IDが管理ノードMのID情報(ID000)であることに応じて、中継ノードR0から管理ノードMへの通信に割り当てられたスロット2において、応答フレームを送信する。すなわち、中継ノードR0は、圏外ノードS3からの応答フレームに含まれるユーザデータを管理ノードMへの応答フレームのユーザデータとして転送する。
【0455】
別の例として、圏外ノードS3から圏外ノードS4へデータを送信する場合、圏外ノードS3が中継ノードRへ送信する応答フレームのユーザデータ領域に、送信先ノードIDとして圏外ノードS4のID情報(ID006)を格納し、送信元ノードIDとして圏外ノードS3のID情報(ID005)を格納する。そして送信すべきデータを送信元ノードIDに続いて送信する。
【0456】
圏外ノードS3からの応答フレームを受信した中継ノードRは、ユーザデータに含まれている送信先ノードのIDを確認して自己宛か否か認識する。
【0457】
そして、中継ノードRは、自己宛でないと認識した場合には、自己が管理するネットワーク内のノードに当該ID情報が含まれていれば、その子ノード(圏外ノード)に転送する。具体的には、圏外ノードS4へ送信する同期フレームのユーザデータ領域に、圏外ノードS3から受信した応答フレームのユーザデータ領域の情報を格納し、圏外ノードS4へ同期フレームを送信する。
【0458】
当該同期フレームを受信した圏外ノードS4は、ユーザデータに含まれている送信先ノードのIDを確認して自己宛か否か認識する。そして、送信先ノードIDにより自己宛のデータであるかを確認し、さらに、送信元ノードIDによりデータの送信元の確認をして、受信したデータが適切なデータであるかを判別することが可能となる。したがって、例えば、圏外ノードS3から圏外ノードS4へのデータの転送も可能である。
【0459】
また、中継ノードR0が管理する複数の子ノードからユーザデータの転送が行われる場合、各々の子ノードから中継ノードR0への応答フレームによるデータ転送は各々の子ノードに割り当てられたスロットにおいて行われ、中継ノードR0から管理ノードMへの応答フレームによるデータ転送は、各々の子ノードからのデータ転送とは異なるスーパフレーム区間のスロットを用いて行われる。
【0460】
このようにデータを順次転送することにより、異なるネットワーク階層間であったとしてもユーザデータの転送が可能となる。
【0461】
なお、上記は一例であり、例えば、管理ノードMから中継ノードR0に対して特別なコマンドを送信して中継ノードR0を介して特別なコマンドに基づく制御を実行するようにしても良い。
【0462】
本発明の実施の形態2に従う管理ノードMにおけるデータ通信の処理の流れについては、実施の形態1で説明した図12,13のフロー図と同様であるのでその詳細な説明については繰り返さない。
【0463】
子ノードおよび中継ノードにおけるデータ通信の処理の流れについても図14のフロー図と同様であるが、中継ノードに関して、同期モードにおける処理が異なる。
【0464】
図27は、本発明の実施の形態2に従う中継ノードにおける同期モードの処理を説明するフロー図である。
【0465】
CPU11#は、ROM13に格納されたソフトウェアプログラムを読込むことにより以下における処理を実行する。
【0466】
図27を参照して、CPU11#は、報知情報フレームに含まれるタイミング情報と、スーパフレーム構成情報あるいはスロット割当情報とに基づいて、スロットの割当に従ったタイミングを設定する(ステップS90)。具体的には、例えば、自己のIDに対応してスロット2が割り当てられた場合には、受信した報知情報フレームのスーパフレーム構成情報d1に含まれている1スーパフレーム区間のスロット数あるいは、スロット割当情報d5に含まれている自己に割り当てられたスロットの番号、タイミング情報d2に含まれている1スロットの区間の長さ、受信区間の長さおよびウェイクアップ区間の長さに従って、自己に割り当てられたスロット(ここではスロット2)に対応する同期フレームを受信するための受信タイミングを設定する。具体的には、同期フレームを受信するためのウェイクアップ区間開始時刻を算出して、タイマ設定する。他のスロットに割り当てられている場合についても同様である。
【0467】
例えば、報知情報フレームを受信した同じスーパフレーム区間における自己に割り当てられたスロット(ここではスロット2)に対応する同期フレームを受信するためのタイミングとしてのウェイクアップ区間開始時刻は、「スロット数(割り当てられたスロット番号)×1スロット区間の長さ−ウェイクアップ時間―受信区間の長さ」として算出する。
【0468】
また、次のスーパフレーム区間における自己に割り当てられたスロットに対応する同期フレームを受信するためのタイミングとしてのウェイクアップ区間開始時刻は、「スロット数(1スーパフレーム区間内のスロット数)×1スロット区間の長さ−ウェイクアップ時間―受信区間の長さ」として算出する。
【0469】
そして、CPU11#は、設定された受信タイミングに従って同期フレームを受信したかどうかを判断する(ステップS98)。
【0470】
そして、ステップS98において、CPU11#は、設定された受信タイミングに従って同期フレームを受信した場合(ステップS98においてYES)には、応答フレームを送信する(ステップS100)。
【0471】
そして、次に、CPU11#は、同期フレームの中に変更通知があるかどうかを判断する(ステップS102)。具体的には、上述したようにスーパフレーム構成情報の報知情報フレーム更新番号が更新されたかどうかに基づいて判断する。報知情報フレーム更新番号が更新されたと判断した場合には変更通知があると判断する。一方、報知情報フレーム更新番号が更新されていないと判断した場合には変更通知はないと判断する。
【0472】
ステップS102において、CPU11#は、同期フレームの中に変更通知がないと判断された場合(ステップS102においてNO)には、次に、中継モードの開始判定処理を実行する(ステップS120)。
【0473】
そして、CPU11#は、中継可能フラグがオンされたかどうかを判断する(ステップS122)。
【0474】
CPU11#は、ステップS122において、中継可能フラグがオンされていないと判断した場合(ステップS122においてNO)には、中継モードに入ることなく、再びステップS90に戻る。そして、スロットの割当に従ったタイミング設定に従って同期フレームの受信に応答して、応答フレームを送信する。
【0475】
したがって、中継モードに入らない場合においても変更通知があるまで同期モードにおいて、割り当てられたスロットを用いた管理ノードMと中継ノードRとのデータ通信が実行される。
【0476】
一方、ステップS122において、CPU11#は、中継可能フラグがオンされたと判断した場合(ステップS122においてYES)には、中継モードに入る(ステップS124)。そして、中継モード終了後、再び、ステップS90に戻り、スロットの割当に従ったタイミング設定に従って同期フレームの受信に応答して、応答フレームを送信する。
【0477】
したがって、中継モードに入った場合においても、中継モード終了後、変更通知があるまで同期モードにおいて、割り当てられたスロットを用いた管理ノードMと中継ノードRとのデータ通信が実行される。
【0478】
一方、ステップS102において、CPU11#は、同期フレームの中に変更通知があると判断された場合(ステップS102においてYES)には、同期モードの処理を終了する(リターン)。すなわち、同期モードを終了して、再び、図14のステップS56に戻る。以降の処理については、実施の形態1で説明したのと同様であるのでその詳細な説明は繰り返さない。なお、管理ノードMからの同期フレームに変更通知が含まれている場合には、1スーパフレーム区間が変更されるため中継ノードRと圏外ノードとのデータ通信を実行することができなくなる。すなわち、圏外ノードがネットワークから外れてしまうことになる。しかしながら、再び、中継ノードにおける同期モードが開始されるとともに、中継モードが開始されることにより、中継ノードRと圏外ノードとの間のデータ通信が実行されてネットワークが再構築されることになる。
【0479】
次に、中継判定モードについて説明する。
図28は、本発明の実施の形態2に従う中継判定モードを説明するフロー図である。
【0480】
CPU11#は、ROM13に格納されたソフトウェアプログラムを読込むことにより以下における処理を実行する。
【0481】
図28を参照して、CPU11#は、スーパフレーム区間を確認する。
そして、CPU11#は、スーパフレーム区間のスロット数が所定スロット以上あるかどうかを判断する(ステップS132)。所定スロット以上として、本例においては、一例として、3以上であるものとする。3以上でなければサブスーパフレーム区間において、圏外ノードとの間でデータ通信を実行するスロットを確保することができないからである。
【0482】
ステップS132において、CPU11#は、スーパフレーム区間のスロット数が所定スロット以上あると判断した場合(ステップS132においてYES)には、中継モードに入ることが可能であることを示す中継可能フラグをオンに設定する(ステップS134)。そして、処理を終了する(リターン)。一方、ステップS132において、CPU11#は、スーパフレーム区間のスロット数が所定スロット以上ないと判断した場合(ステップS132においてNO)には、中継モードに入ることが可能であることを示す中継可能フラグをオフに設定する(ステップS134)。そして、処理を終了する(リターン)。
【0483】
そして、中継可能フラグがオンに設定された場合に、中継モードに入る。
なお、本例においては、スーパフレーム区間が所定スロット以上であれば中継モードに入る場合について説明した。一方で、ネットワークの変更が通知される変更通知が有った場合には、中継モードは中断されるためスーパフレーム区間が変更されないような状況において、中継モードが開始されることが望ましい。したがって、中継可能フラグがオンとなる条件として、スーパフレーム区間が変更されないような状況となる所定期間が経過していることを付加するようにしても良い。
【0484】
図29は、本発明の実施の形態2に従う中継モードを説明するフロー図である。
CPU11#は、ROM13に格納されたソフトウェアプログラムを読込むことにより以下における処理を実行する。
【0485】
本発明の実施の形態2に従う中継ノードは、中継モードにおいて、管理ノードとして動作する。すなわち、CPU11#のチャネル設定部22は、電界強度測定部20に指示して外部環境における電界強度を測定する(ステップS140)。
【0486】
そして、チャネル設定部22は、電界強度測定部20における電界強度の測定に従ってデータ通信を実行する場合にデータ送受信における適切なチャネルを通信部15に対して設定する(ステップS141)。なお、チャネル設定部22は、適切なチャネルのうち管理ノードMとのデータ通信で用いられているチャネル以外のチャネルを選択する。例えば、管理ノードとの間でチャネル1が用いられている場合には、チャネル2を選択するものとする。当該処置により、混信を防止して良好な良好なデータ通信を確保することが可能となる。
【0487】
次に、サブスーパフレーム設定部24は、サブスーパフレーム区間の設定処理を実行する(ステップS142)。サブスーパフレーム区間の設定処理については、図13で説明したスーパフレーム区間の設定処理と同様であるのでその詳細な説明は繰り返さない。
【0488】
初期設定においては、1サブスーパフレーム区間はスロット0のみで構成されている。したがって、最初の1サイクルについては、ステップS142の処理をスキップすることも可能である。
【0489】
次に、データ送受信制御部26は、サブスーパフレーム設定部24により設定されたサブスーパフレーム区間に基づいて報知情報フレームを生成する(ステップS143)。具体的には、図10(A)で説明した報知情報フレームが生成される。なお、上述したように親ノードID情報d3は、中継ノードRのID情報が格納される。また、スーパフレーム構成情報d1の1サブスーパフレーム区間のスロット数は1スーパフレーム区間のスロット数と同じ値として固定される。
【0490】
そして、次に、データ送受信制御部26は、サブスーパフレーム設定部24において設定された1サブスーパフレーム区間におけるスロットを確認する(ステップS144)。
【0491】
そして、データ送受信制御部26は、1サブスーパフレーム区間に設定されたスロット0の送信区間(T)において通信部15を介して報知情報フレームを送信する(ステップS146)。
【0492】
そして、次に、データ送受信制御部26は、1サブスーパフレーム区間に設定されたスロット0の受信区間(R)において通信部15を介して登録要求フレームを受信したかどうかを判断する(ステップS148)。具体的には、図11(A)で説明した登録要求フレームを受信したかどうかを判断する。
【0493】
データ送受信制御部26は、ステップS148において、登録要求フレームを受信したと判断した場合(ステップS148においてYES)には、スロット追加フラグをオンにする(ステップS150)。なお、中継ノードが管理可能な子ノードの数はスーパフレーム区間により定まるため、例えば、サブスーパフレーム区間のスロットが既に最大個数に拡張されている場合には、スロット追加フラグはオンされないものとする。例えば、1スーパフレームの区間のスロット数が4でスロット0と別にスロット割当情報に2個のスロット1,2が割り当てられている場合には、さらにスロットを追加することはできないためスロット追加フラグはオンしないものとする。
【0494】
一方、データ送受信制御部26は、ステップS148において、登録要求フレームを受信しなかったと判断した場合(ステップS148においてNO)には、次のステップS152に進む。
【0495】
なお、通信部15を介した受信区間(R)が終了した場合に、データ送受信制御部26は、電源管理部14に対して各部への電源の供給の停止を指示する低消費電力状態への移行を指示する。これにより、中継ノードRは、スリープ区間(S)となる。なお、データ送受信制御部26は、スリープ区間(S)に入る前に次のスロットを開始するためのウェイクアップ区間開始時刻を算出する。そして、タイマ17に対して算出した時刻を設定する。そして、タイマ17は、算出した時刻となるまでカウントし、算出した時刻となった場合に電源管理部14に通知する。これにより、電源管理部14は、タイマ17からの通知に従って低消費電力状態から通常電力状態に復帰させる。そして、データ送受信制御部26は、低消費電力状態から通常電力状態への復帰の後、次のスロットを開始する。上記の処理は、各スロット毎に繰り返し実行される。当該処理により中継ノードRは、送信区間(T)、受信区間(R)およびウェイクアップ区間(W)以外の区間は、スリープ区間(S)として間欠動作させて電源の供給を停止する低消費電力状態に移行させることが可能であり、消費電力を抑制することが可能である。
【0496】
そして、次に、ステップS152において、データ送受信制御部26は、1サブスーパフレーム区間に次のスロットがあるかどうかを判断する(ステップS152)。
【0497】
ステップS152において、データ送受信制御部26は、1サブスーパフレーム区間に次のスロットがあると判断した場合(ステップS152においてYES)には、次のステップS154に進む。
【0498】
一方、ステップS154において、データ送受信制御部26は、1サブスーパフレーム区間に次のスロットがないと判断した場合(ステップS152においてNO)には、処理を終了する(リターン)。すなわち、上述したように中継モードを終了して、管理ノードMとの間でのデータ通信を実行する。
【0499】
データ送受信制御部26は、1サブスーパフレーム区間に次のスロットがあると判断した場合(ステップS152においてYES)には、次にスロット追加フラグがオンされているかどうかを判断する(ステップS154)。
【0500】
ステップS154において、データ送受信制御部26は、スロット追加フラグがオンされていると判断した場合(ステップS154においてYES)には、データ送受信制御部26は、スロットに対応する同期フレーム(変更通知有)を生成する(ステップS155)。具体的には、図10(B)で説明した報知情報フレーム更新番号が更新された報知情報フレームが生成される。
【0501】
そして、次に、データ送受信制御部26は、通信部15を介してスロットに対応する同期フレーム(変更通知有)を送信する(ステップS156)。当該同期フレームを受信することにより、1サブスーパフレーム区間に変更があることを子ノードは判断することが可能である。
【0502】
一方、ステップS154において、データ送受信制御部26は、スロット追加フラグがオンしていないと判断した場合(ステップS154においてNO)には、データ送受信制御部26は、スロットに対応する同期フレームを生成する(ステップS157)。具体的には、図10(B)で説明した報知情報フレーム更新番号は更新されない報知情報フレームが生成される。
【0503】
そして、次に、データ送受信制御部26は、通信部15を介してスロットに対応する同期フレームを送信する(ステップS158)。
【0504】
そして、次に、データ送受信制御部26は、通信部15を介してスロットに対応する同期フレームに対して応答フレームの受信があったどうかを判断する(ステップS160)。具体的には、図11(B)で説明した応答フレームを受信したかどうかを判断する。
【0505】
ステップS160において、データ送受信制御部26は、応答フレームの受信があったと判断した場合(ステップS160においてYES)には、応答フレームを取得する(ステップS162)。取得した応答フレームは、データ送受信制御部26の指示に従って、一例として、RAM12等の記憶領域に格納されるものとする。
【0506】
一方、ステップS160において、データ送受信制御部26は、応答フレームの受信がなかったと判断した場合(ステップS160においてNO)には、エラー判定とする(ステップS164)。なお、エラー判定となった結果は、データ送受信制御部26の指示に従って、一例として、RAM12等の記憶領域に格納されるものとする。当該エラー判定となった結果は、サブスーパフレーム区間の設定処理の際に用いられる。すなわち、エラー判定が所定個以上継続した場合にはスロットが削除される。
【0507】
そして、再びステップS152に戻る。なお、上述したように、各スロットにおける通信部15を介した受信区間Rが終了した場合に、データ送受信制御部26は、電源管理部14に対して各部への電源の供給の停止を指示する低消費電力状態への移行を指示する。これにより、管理ノードMは、スリープ区間(S)となる。
【0508】
ステップS152において、データ送受信制御部26は、1サブスーパフレーム区間に次のスロットがあるかどうかを判断(ステップS152)し、上記と同様の処理を繰り返す。すなわち、スロットが有る場合には、スロットに対応する同期フレームを通信部15を介して送信する。
【0509】
そして、全てのスロットに対する処理が終了した後、中継モードにおける処理を終了する(リターン)。そして、上述したように図27のステップS90に戻って、管理ノードMとの間でのデータ通信を実行する。その際、1サブスーパフレーム区間のスロットを用いて子ノードとのデータ通信をした内容(データ)をRAM12等から取得して、中継ノードRの応答フレームとして中継ノードRの情報とともに管理ノードMに送信されることになる。
【0510】
本発明の実施の形態2に従う方式において、中継ノードRと管理ノードMとの間の同期確立後は、中継ノードRを管理ノードとして動作させて、管理ノードMとの間での中継処理を実行することが可能となる。したがって、管理ノードMがデータ通信を実行することが可能な領域を中継ノードRを用いて拡大することが可能となる。
【0511】
したがって、管理ノードMは、子ノードSが移動するような場合においても、中継ノードRを用いることにより、広い範囲で子ノードSをネットワーク全体として管理することが可能となる。
【0512】
図30は、管理ノードMおよび中継ノードRで管理している子ノードのID情報を説明する図である。
【0513】
図30(A)を参照して、管理ノードMは、ここでは、1スーパフレーム区間のスロット数として5個である場合が示されている。スロット0を除くスロット1〜4に対してそれぞれ子ノードSのID情報が対応付けられて格納されている。
【0514】
具体的には、スロット1が子ノードS(ID001)、スロット2が中継ノードR(ID002)、スロット3が子ノードS(ID003)、スロット4が子ノードS(ID004)に割り当てられている場合が示されている。
【0515】
また、中継ノードR(ID002)は、さらに、複数の子ノードSを管理している。
図30(B)を参照して、ここでは、中継ノードRは、ここでは、1サブスーパフレーム区間のスロット数として4個である場合が示されている。スロット0を除くスロット1〜3に対してそれぞれ子ノードSのID情報が対応付けられて格納されている。
【0516】
具体的には、スロット1が子ノードS(ID005)、スロット2が子ノードS(ID006)、スロット3が子ノードS(ID007)に割り当てられている場合が示されている。
【0517】
したがって、当該中継ノードRが管理している複数の子ノードSのデータも管理ノードMに送信されるため図30(A)に示されるように管理ノードMのスロット2には、中継ノードR(ID002)とともに、中継ノードRが管理している子ノードS(ID005)、子ノードS(ID006)、が子ノードS(ID007)の情報も格納される。
【0518】
すなわち、子ノードS(ID005)、子ノードS(ID006)、が子ノードS(ID007)のデータや、中継ノードR(ID002)とともに、スロット2を用いて管理ノードMに送信される。
【0519】
逆に、管理ノードMから子ノード(ID007)にデータを送信する場合には、スロット2を用いて中継ノードR(ID002)を介して子ノード(ID007)にデータが送信される。
【0520】
したがって、管理ノードMは、ネットワーク内の全てのノード情報を一元管理することが可能である。管理ノードMは、直接のデータ通信を実行する子ノードを管理するとともに、中継ノードに関しては、中継ノードのスロット割当情報により中継ノードとデータ通信している子ノードを管理することが可能である。
【0521】
例えば、製造ライン等の部品等に子ノードSを装着することにより部品の位置および状態等を子ノードSからの応答フレームによって管理ノード側は容易に管理することが可能である。
【0522】
また、全ての子ノードSが管理ノードMと直接データ通信を実行する場合には、1スーパフレーム区間のスロット数が多くなり、データ通信の1サイクルが長期間となる可能性がある。それゆえ、本例においては、管理ノードMと中継ノードRとのデータ通信の区間以外の区間について、中継ノードを管理ノードとして動作させて、中継ノードRが自己の代わりにまとめて他の子ノードとのデータ通信を実行する。これにより、1スーパフレーム区間のスロット数を過大にする必要がなく、ネットワーク全体として効率的なデータ通信を実行することが可能である。
【0523】
また、本発明の実施の形態に従う通信システムのネットワークの構成としては、ピアトゥピア型、スター型、ツリー型の構成に対応することが可能である。
【0524】
なお、コンピュータを機能させて、上述のフローで説明したような制御を実行させる方法あるいは当該方法を実現するプログラムを提供することもできる。このようなプログラムは、コンピュータに付属するフレキシブルディスク、CD−ROM(Compact Disk-Read Only Memory)、ROM(Read Only Memory)、RAM(Random Access Memory)およびメモリカードなどの一時的でないコンピュータ読取り可能な記録媒体にて記録させて、プログラム製品として提供することもできる。あるいは、コンピュータに内蔵するハードディスクなどの記録媒体にて記録させて、プログラムを提供することもできる。また、ネットワークを介したダウンロードによって、プログラムを提供することもできる。
【0525】
なお、プログラムは、コンピュータのオペレーションシステム(OS)の一部として提供されるプログラムモジュールのうち、必要なモジュールを所定の配列で所定のタイミングで呼出して処理を実行させるものであってもよい。その場合、プログラム自体には上記モジュールが含まれずOSと協働して処理が実行される。このようなモジュールを含まないプログラムも、本発明にかかるプログラムに含まれ得る。
【0526】
また、本発明にかかるプログラムは他のプログラムの一部に組込まれて提供されるものであってもよい。その場合にも、プログラム自体には上記他のプログラムに含まれるモジュールが含まれず、他のプログラムと協働して処理が実行される。このような他のプログラムに組込まれたプログラムも、本発明にかかるプログラムに含まれ得る。
【0527】
提供されるプログラム製品は、ハードディスクなどのプログラム格納部にインストールされて実行される。なお、プログラム製品は、プログラム自体と、プログラムが記録された記録媒体とを含む。
【0528】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0529】
10 領域、12,42 RAM、13,43 ROM、14 電源管理部、15,49 通信部、16,45 内部バス、20,46# 電界強度測定部、22,144 チャネル設定部、24 サブスーパフレーム設定部、26,148 データ送受信制御部、46 電源管理部、47 キーボード、48 ディスプレイ、146 スーパフレーム設定部。
【技術分野】
【0001】
本発明は、通信システムに関し、ネットワークを構築、維持、管理するための通信システムに関する。
【背景技術】
【0002】
近年、近距離無線通信ネットワークの需要が増大してきている。
この近距離無線通信ネットワーク(以下、単にネットワークとも称する)を実現する低コスト・低消費電力型の近距離無線通信規格として一例としてZigBee(登録商標)が策定されている(非特許文献1)。
【0003】
一般的に、ネットワークを構成するに当たっては、ネットワークにおけるノード(node)を複数接続するために、すべてのノードの所在を常に知っておくことが必要であるためノードの存在を検索する必要がある。
【0004】
このノードの存在を検索するために、ブロードキャスト通信(同報通信)が行なわれ、種々の方式が提案されている(特許文献1および2)。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2000−134235号公報
【特許文献2】特開2000−353143号公報
【非特許文献】
【0006】
【非特許文献1】IEEE Std.802.15.4-2003, IEEE Standard for Information Technology
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、従来のネットワークの構築において、ネットワーク内の各ノードがブロードキャスト通信に対して非同期に応答フレームを送信するため、受信側の管理ノードの通信部は、常に電力が供給された状態になければならず、低消費電力状態へ移行することができなかった。
【0008】
また、ネットワーク内の各ノードの個数等を予めパラメータとして設定しておく必要があり、ネットワークを動的に変更することは困難であった。
【0009】
本発明は上記のような問題を解決するためになされたものであって、ネットワーク内の各ノードの低消費電力化を図るとともに、ネットワークの自動構築が可能な通信システムを提供する。
【課題を解決するための手段】
【0010】
本発明の一実施例に従う通信システムは、複数の端末と、複数の端末の状態を管理する管理ノードとを備える。管理ノードは、データ通信の1サイクルを規定する、1スーパフレームの構成に従って、複数の端末との間でのデータ送受信を実行するための通信部と、管理ノード全体を制御する制御部とを含む。1スーパフレームは、1スーパフレームの構成を示す報知情報フレームをブロードキャスト送信する報知区間を少なくとも1つ含む。各端末は、報知情報フレームの内容に従って報知情報フレームに対する応答信号を出力する。制御部は、通信部を介して送信した報知情報フレームに対する応答信号を受信した場合には、1スーパフレームの構成に、報知情報フレームに対する応答信号を受信した端末との間でのデータの送受信を実行するために割り当てたデータ通信区間を追加する。データ通信区間の追加に従って、1スーパフレームの構成を示す報知情報フレームを更新する。更新された報知情報フレームを受信した複数の端末のうちの少なくとも1つは、更新された報知情報フレームに従って、自己のために割り当てられたデータ通信区間に同期して、管理ノードとの間でデータの送受信を実行する。
【発明の効果】
【0011】
本発明の一実施例によれば、通信システムは、報知情報フレームに対する応答信号を受信した端末との間でのデータの送受信を実行するために割り当てたデータ通信区間を追加して、報知情報フレームを更新する。端末は、更新された報知情報フレームに従って、自己のために割り当てられたデータ通信区間に同期して、管理ノードとの間でデータの送受信を実行するため、自己の以外のデータ通信区間はスリープ状態として低消費電力化を図ることが可能であるとともに、ネットワークの自動構築が可能である。また、管理ノードについても、いずれかの端末とのデータ通信区間以外の期間においてはスリープ状態として低消費電力化を図ることが可能である。
【図面の簡単な説明】
【0012】
【図1】本発明の実施の形態1に従うネットワークを形成するノードの概略を説明する図である。
【図2】本発明の実施の形態1に従う管理ノードから報知情報フレーム(以下、単に報知情報フレームとも称する)が送信される場合を説明する図である。
【図3】各子ノードSからそれぞれ応答フレームを送信する場合を説明する図である。
【図4】本発明の実施の形態1に従う管理ノードMの構成を示す図である。
【図5】本発明の実施の形態1に従う子ノードSのハードウェアの構成を説明する図である。
【図6】管理ノードMが起動された場合における報知情報フレームの送信を説明する図である。
【図7】本発明の実施の形態1に従う管理ノードMに子ノードSが未登録の状態において子ノードS0をネットワークへ登録する(管理ノードMに登録するとも称す)場合の処理の流れについて説明する図である。
【図8】本発明の実施の形態1に従う管理ノードMに子ノードSが未登録の状態において子ノードS0,S1を管理ノードMに登録する場合の処理の流れについて説明する図である。
【図9】本発明の実施の形態1に従う管理ノードMに既に子ノードS0,S1が登録されている状態において新たに子ノードS2を管理ノードMに登録する場合の処理の流れについて説明する図である。
【図10】管理ノード(後述する中継ノードRを含む)から子ノードに対して送信する無線フレームの構成について説明する図である。
【図11】子ノードから管理ノード(中継ノードRも含む)に対して送信する無線フレームの構成について説明する図である。
【図12】本発明の実施の形態1に従う管理ノードMにおけるデータ通信の処理の流れについて説明するフロー図である。
【図13】本発明の実施の形態1に従うスーパフレーム区間の設定処理について説明するフロー図である。
【図14】子ノードSにおけるデータ通信の処理の流れについて説明するフロー図である。
【図15】本発明の実施の形態1に従うサーチ開始の処理を説明するフロー図である。
【図16】子ノードSにおける受信区間および送信区間の設定を説明する図である。
【図17】本発明の実施の形態1に従う同期モードの処理を説明するフロー図である。
【図18】本発明の実施の形態1に従うエラー処理を説明するフロー図である。
【図19】管理ノードMにおけるデータ通信のチャネルが変更された場合の子ノードS0のチャネルの変更について説明する図である。
【図20】本発明の実施の形態2に従うネットワークを形成するノードの概略を説明する図である。
【図21】本発明の実施の形態2に管理ノードMおよび中継ノードRから送信される報知情報フレームを説明する図である。
【図22】本発明の実施の形態2に従う中継ノードRの構成を示す図である。
【図23】本発明の実施の形態2に従う中継ノードR0をネットワークに登録する場合の処理の流れについて説明する図である。
【図24】本発明の実施の形態2に従う中継ノードR0を用いて圏外ノードをネットワークに登録する場合の処理の流れについて説明する図である。
【図25】本発明の実施の形態2に従う管理ノードMと、中継ノードR0を用いた子ノードとのデータの流れについて説明する図である。
【図26】本発明の実施の形態2に従う管理ノードMと、中継ノードR0を用いた子ノードとのデータの別の流れについて説明する図である。
【図27】本発明の実施の形態2に従う中継ノードにおける同期モードの処理を説明するフロー図である。
【図28】本発明の実施の形態2に従う中継判定モードを説明するフロー図である。
【図29】本発明の実施の形態2に従う中継モードを説明するフロー図である。
【図30】管理ノードMおよび中継ノードRで管理している子ノードのID情報を説明する図である。
【発明を実施するための形態】
【0013】
(実施の形態1)
図1は、本発明の実施の形態1に従うネットワークを形成するノードの概略を説明する図である。
【0014】
図1を参照して、本例においてはある領域10に設けられた管理ノードMと、複数の子ノードS0〜S4(以下、総称して子ノードSとも称する)とが設けられている場合が示されている。例えば、領域10としては、ある部屋内を想定している。具体的には、ブロードキャスト通信が可能な範囲の領域を想定している。
【0015】
本発明の実施の形態1に従う管理ノードMは、ネットワークを構築して各子ノードSを管理するものとする。なお、管理ノードMおよび各子ノードSは、それぞれを識別する固有のID(Identification)情報を有しているものとする。
【0016】
図2は、本発明の実施の形態1に従う管理ノードから報知情報フレーム(以下、単に報知情報フレームとも称する)が送信される場合を説明する図である。
【0017】
図2を参照して、ここでは、ブロードキャスト通信として、管理ノードMから報知情報フレームが各子ノードSに送信される。
【0018】
各子ノードSは、管理ノードMから送信されたブロードキャスト通信として送信された報知情報フレームを受信して、応答フレームとして、ネットワーク接続参加への登録要求フレーム(以下、単に登録要求フレームとも称する)を送信する。
【0019】
図3は、各子ノードSからそれぞれ応答フレームを送信する場合を説明する図である。
図3に示されるように管理ノードMからの報知情報フレームを受信して、各子ノードS0〜S4はそれぞれ登録要求フレームを送信する。
【0020】
なお、後述するが、各子ノードS0〜S4のそれぞれから登録要求フレームが一斉に送信された場合には輻輳が発生することになるが、管理ノードMはその際には受信可能な1つの子ノードSから送信された登録要求フレームのみ受信し、ネットワークに登録するものとする。
【0021】
管理ノードMは、繰り返し報知情報フレームを送信し、当該報知情報フレームに応答した登録要求フレームに従って各子ノードSを1つずつネットワークに登録する。
【0022】
また、各子ノードSは、管理ノードMから送信される報知情報フレームに基づいて自己がネットワークに登録されたか否かを認識し、登録されていると判断した場合には、登録要求フレームを送信しない。したがって、ネットワークが構築されていくについて、輻輳を生じさせる子ノードSの個数は徐々に減少して、輻輳の問題は解消されることになる。
【0023】
図4は、本発明の実施の形態1に従う管理ノードMの構成を示す図である。
図4(A)を参照して、本発明の実施の形態1に従う管理ノードMは、CPU41と、RAM(Random Access Memory)42と、ROM(Read Only Memory)43と、HDD(Hard Disk Drive)44と、各部を接続する内部バス45と、キーボード47と、ディスプレイ48と、通信部49と、電源管理部46と、電界強度測定部46#と、タイマ45#とを含む。
【0024】
図4(A)は管理ノードMとしてPCを用いた場合の構成であるが、HDD44に変えて情報記憶媒体としての不揮発性メモリを有し、ディスプレイ48及びキーボード47は筐体に接続されて有するのではなく、リモート接続されたPCのディスプレイとキーボードを代用するようにすることも可能である。HDD44に代えた不揮発性メモリと、必要に応じてのリモート接続によるディスプレイとキーボードとを用いることで、管理ノードMがスリープ状態に容易に遷移することが可能となる。
【0025】
管理ノードMのCPU41は、管理ノードM全体を制御するとともに、ROM43に格納されているソフトウェアプログラムを読み込むことにより、子ノードSとの間で通信部49を介したデータ通信を実行する。データ通信の詳細については後述する。また、予めROM43には、管理ノードMの固有のID情報が格納されているものとする。
【0026】
RAM42をCPU41のワークメモリとして用いられる。また、HDD44は、子ノードSから送信されるデータを蓄積する記憶領域として用いられる。
【0027】
また、通信部49を介したネットワークが構築された子ノードSとの間のデータ通信状況をディスプレイ48に表示することが可能であるものとする。
【0028】
また、電源管理部46は、各部にそれぞれ供給する電力を管理し、CPU41からの指示に従って通常電力状態に復帰するために必要な電力供給以外は、全ての電力の供給を停止する、いわゆるスリープ状態である低消費電力状態に移行させることが可能である。
【0029】
電界強度測定部46#は、データ通信の際における外部環境の電界強度を測定する。
タイマ45#は、CPU41からの指示に従って設定された時刻となるまでカウントする。そして、設定された時刻となった場合に電源管理部46に通知する。低消費電力状態となっている場合に、電源管理部46は、当該タイマ45#からの通知に従って低消費電力状態から通常電力状態に復帰させる。
【0030】
図4(B)を参照して、ここでは、管理ノードMのソフトウェアでの機能ブロック図が示されている。
【0031】
具体的には、ソフトウェアにより実現される機能ブロックとしては、チャネル設定部144と、スーパフレーム設定部146と、データ送受信制御部148とを含む。
【0032】
チャネル設定部144は、電界強度測定部46#において測定した電界強度に従って最も干渉が少ないと考えられるデータ通信に最適なチャネル(周波数帯)を設定する。
【0033】
スーパフレーム設定部146は、通信部49を介した子ノードSとの間での1サイクルのデータ通信の各処理の内容を規定する。本例において、各処理のデータ通信区間のことをスロットとも称する。
【0034】
データ送受信制御部148は、スーパフレーム設定部146で設定されたスーパフレームに従った通信部49を介したデータ通信を子ノードSとの間で実行する。
【0035】
図5は、本発明の実施の形態1に従う子ノードSのハードウェアの構成を説明する図である。
【0036】
図5を参照して、子ノードSは、CPU11と、RAM(Random Access Memory)12と、ROM(Read Only Memory)13と、各部を接続する内部バス16と、通信部15と、電源管理部14と、タイマ17とを含む。
【0037】
子ノードSのCPU11は、子ノードS全体を制御するとともに、ROM13に格納されているソフトウェアプログラムを読み込むことにより管理ノードMとの間で通信部15を介したデータ通信を実行する。なお、予めROM13には、固有のID(Identification)情報が格納されているものとする。データ通信の詳細については後述する。
【0038】
電源管理部14は、各部にそれぞれ供給する電力を管理し、CPU11からの指示に従って例えば、消費電力の低減を図るために通信部15に対する電力の供給を停止させたり、逆にデータ通信の際に通信部15に対する電力を供給したりする。なお、図示しないが子ノードSは、一例としてバッテリで駆動するものとして、電源管理部14が当該バッテリを用いて各部に電力を供給するものとする。
【0039】
タイマ17は、必要に応じて計時情報をCPU11に出力する。
図6は、管理ノードMが起動された場合における報知情報フレームの送信を説明する図である。
【0040】
図6を参照して、時刻t0において管理ノードMの通信部49が起動された場合には、まず電界強度測定スキャンを実行する。電界強度測定スキャンとは、データ通信を実行する際における、複数の周波数帯(チャネル)のそれぞれにおける電界強度を測定する。
【0041】
具体的には、通信部49における電界強度測定部46#において複数のチャネルのそれぞれにおける電界強度を測定する。そして、チャネル設定部144は、測定された電界強度に従って、電界強度が最も低いチャネル(最も干渉が少ないチャネル)をデータ通信のチャネルに設定する。
【0042】
そして、時刻t1において設定したチャネルで報知情報フレームの送信を開始する。
通信部49は、初期状態として、1スーパフレーム区間として設定されたスロット0に従うデータ通信を実行する。
【0043】
本例においてスロット0は、報知情報フレームを送信する送信区間(T)と、報知情報フレームに応答した接続要求の受信を受け付ける受信区間(R)と、通信部49における処理を実行しないスリープ区間(S)と、スリープ状態(低消費電力状態)よりデータ送受信可能な状態(通常電力状態)に復帰するウェイクアップ区間(W)とで構成される。
【0044】
後述するがネットワークに子ノードSが登録されることによって、この1スーパフレーム区間は動的に変更されることになる。
【0045】
本例において、通信部49は、初期状態としてデータ通信の1サイクルである1スーパフレーム区間として設定されたスロット0に従う報知情報フレームを送信する処理を繰り返し実行する場合が示されている(時刻t1,t2,t3,t4,t5)。
【0046】
図7は、本発明の実施の形態1に従う管理ノードMに子ノードSが未登録の状態において子ノードS0をネットワークへ登録する(管理ノードMに登録するとも称す)場合の処理の流れについて説明する図である。
【0047】
図7を参照して、まず、管理ノードMから1スーパフレーム区間内のスロット0を使用して報知情報フレームが送信される。この場合、管理ノードMに子ノードSが未登録であるため、スーパフレーム構成情報の1スーパフレーム区間のスロット数は1、スロット割当情報には、子ノードSのIDは未格納である。
【0048】
本例においては、スーパフレーム区間ta0〜ta5のスロット0において管理ノードMから報知情報フレームが送信される場合が示されている。そして、時刻t10において、管理ノードMに未登録である子ノードS0の通信部15が起動され、管理ノードMを検索するための受信区間が開始される。
【0049】
子ノードS0は、時刻t10より受信区間(R)を開始後、管理ノードMより報知情報フレームを受信するまで受信区間(R)を継続する。なお、後述するが所定期間を経過した場合であっても報知情報フレームを受信できない場合には、チャネルの変更処理を実行する。
【0050】
子ノードS0は、時刻t11において、スーパフレーム区間ta2のスロット0において送信された管理ノードMからの報知情報フレームを受信する。すなわち、子ノードS0は、時刻t11に管理ノードMを検出したと判断する。
【0051】
子ノードS0は、管理ノードMより受信した報知情報フレームに含まれるスーパフレーム構成情報、タイミング情報に基づいて、次のスーパフレーム区間ta3における報知情報フレームを受信するためのウェイクアップ区間開始時刻t13を算出する。
【0052】
具体的には、一例として、子ノードS0は、スーパフレーム構成情報である1スーパフレーム区間内のスロット数、タイミング情報の1スロットの区間の長さと受信区間の長さとウェイクアップ時間とに基づいて、ウェイクアップ区間開始時刻t13を時刻t12を基準として「スロット数(1スーパフレーム区間内のスロット数)×1スロット区間の長さ−ウェイクアップ時間−受信区間の長さ」として算出する。そして、子ノードS0は、タイマ17を用いて算出した時刻t13となるまでカウントする。また、子ノードS0は、時刻t12よりスリープ区間(S)を開始し低消費電力状態へ移行する。なお、上記においては、ウェイクアップ区間開始時刻を時刻t12を基準として算出した場合について説明したが一例であり、たとえば時刻t11を基準として算出するようにしても良く、次の報知情報フレームを受信できさえすればどのように計算するようにしても良い。
【0053】
子ノードS0は、タイマ17を用いて時刻t12より開始したスリープ区間(S)満了後、時刻t13において低消費電力状態より通常電力状態(フレームのデータ送受信が可能な状態)へと復帰し、時刻t14より、管理ノードMから送信される報知情報フレームの受信を開始するための受信区間(R)を開始する。
【0054】
子ノードS0は、時刻t14より開始した受信区間(R)にて管理ノードMから送信された報知情報フレームを受信し、受信した報知情報フレームに含まれているスロット割当情報に自己のIDが格納されているか否かにより自己が管理ノードMに登録されているか否かを判断する。
【0055】
子ノードS0は、自己が管理ノードMに未登録であると判断した場合に、管理ノードMより受信した報知情報フレームに含まれるスーパフレーム構成情報、タイミング情報に基づいて、次のスーパフレーム区間ta4における報知情報フレームを受信するためのウェイクアップ区間開始時刻t17を算出する。ウェイクアップ区間開始時刻t17の算出については、時刻t13を算出した場合と同様である。
【0056】
そして、子ノードS0は、タイマ17を用いて算出した時刻t17となるまでカウントする。また、子ノードS0は、時刻t15において、管理ノードMへ自己のIDを格納した登録要求フレームの送信を開始する。そして、登録要求フレームの送信完了後、時刻t16からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0057】
管理ノードMにおいては、子ノードS0から受信した登録要求フレームに格納されているIDが、スロット割当情報に格納済みでない場合には、報知情報フレームのスーパフレーム構成情報のスロット数を加算する。具体的には、1スーパフレーム区間に子ノードS0とのデータ通信に用いられる1スロットを追加する処理が実行される。また、スロット割当情報に登録要求フレームに格納されていた子ノードS0のIDを格納する処理が実行される。
【0058】
子ノードS0は、タイマ17を用いてカウントした時刻t17となった場合に、時刻t16より開始したスリープ区間(S)を終了する。すなわち、子ノードS0は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS0は、スーパフレーム区間ta4のスーパフレームのスロット0の区間である時刻t18において、管理ノードMから送信される報知情報フレームの受信を開始するための受信区間(R)を開始する。
【0059】
子ノードS0は、時刻t18より開始した受信区間(R)にて、受信した報知情報フレームに含まれているスロット割当情報に自己のIDが格納されているか否かに基づいて自己がネットワークに登録されているか否かを判断する。
【0060】
子ノードS0は、自己がネットワークに登録されていると判断した場合には、登録要求フレームは送信しない。
【0061】
そして、子ノードS0は、自己がネットワークに登録されていると判断した場合、管理ノードMから自己に割り当てられたスロットを用いたデータ通信を実行するため、管理ノードMより受信した報知情報フレームに含まれるタイミング情報およびスロット割当情報に基づいて、同じスーパフレーム区間における自己に割り当てられたスロット(ここではスロット1)に対応する同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻t20を算出する。
【0062】
具体的には、スロット割当情報に含まれている自己に割り当てられたスロットの番号(本例では、スロット1)、タイミング情報に含まれている1スロットの区間の長さと、受信区間の長さと、ウェイクアップ時間とに基づいて、ウェイクアップ区間開始時刻t20を時刻t19を基準として、「スロット数(割り当てられたスロット番号)×1スロット区間の長さ−ウェイクアップ時間―受信区間の長さ」として算出する。
【0063】
なお、以下においても同様に報知情報フレームを受信するたびに子ノードSは、管理ノードMから自己に割り当てられたスロットを用いたデータ通信を実行するタイミングを算出するものとする。
【0064】
そして、子ノードS0は、タイマ17を用いて算出した時刻t20となるまでカウントする。また、子ノードS0は、時刻t19からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0065】
子ノードS0は、タイマ17を用いてカウントした時刻t20となった場合に、時刻t19より開始したスリープ区間(S)を終了する。すなわち、子ノードS0は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS0は、スーパフレーム区間ta4のスーパフレームのスロット1の区間である時刻t21において、管理ノードMから自己に割り当てられたスロット(本例ではスロット1)を使用して送信される同期フレームの受信を開始するための受信区間(R)を開始する。
【0066】
子ノードS0は、時刻t21より開始した受信区間(R)にて管理ノードMから送信された同期フレームを受信し、受信した同期フレームに自己のIDが格納されているか否かに基づいて自己に割り当てられたスロットか否かを判断する。本例では、自己のIDが格納されているものとする。
【0067】
子ノードS0は、受信した同期フレームに自己のIDが格納されていると判断した場合には、管理ノードMより、既に受信済みの報知情報フレームに含まれるスーパフレーム構成情報およびタイミング情報に基づいて、次のスーパフレーム区間における自己に割り当てられたスロットを使用して管理ノードMより送信される同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻t24を算出する。具体的には、スーパフレーム構成情報に含まれている1スーパフレーム区間のスロット数、タイミング情報に含まれている1スロットの区間の長さと、受信区間の長さと、ウェイクアップ時間とに基づいて、ウェイクアップ区間開始時刻t24を時刻t22を基準として、「スロット数(1スーパフレーム区間のスロット数)×1スロット区間の長さ−ウェイクアップ時間−受信区間の長さ」として算出する。以降、スーパフレームの構成に変更がない限り、以降、同じ値となる。
【0068】
なお、以下においても同様に自己に割当てられたスロットにおいて同期フレームを受信するたびに子ノードSは、管理ノードMから自己に割り当てられたスロットを用いたデータ通信を実行するタイミングを算出するものとする。
【0069】
そして、子ノードS0は、タイマ17を用いて算出した時刻t24となるまでカウントする。
【0070】
また、子ノードS0は、時刻t22において、管理ノードMへ自己のIDを格納した応答フレームの送信を開始する。そして、応答フレームの送信完了後、時刻t23からスリープ区間(S)を開始し低消費電力状態へ移行する。すなわち、以降、自己に割り当てられたスロット(本例ではスロット1)のみを使用して管理ノードMとの間でのデータ通信を実行し、スーパフレームの構成の変更が通知されるまで報知情報フレームの受信は必要としない。
【0071】
管理ノードMにおいては、子ノードS0から受信した応答フレームに格納されている子ノードS0のIDが、同スロットで既に送信済みの同期フレームに格納した、割り当てた子ノードS0のIDと一致した場合、子ノードS0がネットワーク内で正常に稼動していると判断する。
【0072】
なお、以下においても同様に応答フレームを受信するたびに管理ノードMは、同様の判断を行う。
【0073】
子ノードS0は、タイマ17を用いてカウントした時刻t24となった場合に、時刻t23より開始したスリープ区間(S)を終了する。すなわち、子ノードS0は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS0は、スーパフレーム区間ta5のスーパフレームのスロット1の区間である時刻t25において、管理ノードMから自己に割り当てられたスロット(本例ではスロット1)を使用して送信される同期フレームの受信を開始するための受信区間(R)を開始する。
【0074】
子ノードS0は、時刻t25より開始した受信区間(R)にて管理ノードMから送信された同期フレームを受信し、受信した同期フレームに自己のIDが格納されているか否かに基づいて自己に割り当てられたスロットか否かを判断する。本例では、自己のIDが格納されているものとする。
【0075】
子ノードS0は、受信した同期フレームに自己のIDが格納されていると判断した場合には、管理ノードMより、既に受信済みの報知情報フレームに含まれているスーパフレーム構成情報およびタイミング情報に基づいて、次のスーパフレーム区間における自己に割り当てられたスロットを使用して管理ノードMより送信される同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻を算出する。そして、子ノードS0は、上述したようにタイマ17を用いて算出した時刻となるまでカウントする。
【0076】
子ノードS0は、受信した同期フレームに自己のIDが格納されていると判断した場合には、時刻t26において、管理ノードMへ自己のIDを格納した応答フレームの送信を開始する。そして、応答フレームの送信完了後、時刻t27からスリープ区間(S)を開始し低消費電力状態へ移行する。以降、スーパフレームの構成が変わらない限り同様の動作を繰り返し行う。
【0077】
本発明の実施の形態1に従う方式においては、子ノードS0は、管理ノードMから送信されるフレームを受信するのみで、管理ノードM(接続先ノード)の検索が可能であり、接続先ノードを検索するために子ノードSより検索するためのフレームを非同期で送信する必要がなく、管理ノードMから一定間隔で送信されるフレームを受信することにより可能なため、ネットワーク全体のトラフィックも低減される。
【0078】
また、子ノードSは、管理ノードMより送信されるスーパフレーム構成情報を受信することにより自己に割り当てられた時間帯を占有してデータ通信が可能である。
【0079】
子ノードS0と管理ノードMとの間の同期確立後は、子ノードS0に割り当てられたスロットの区間を用いて、管理ノードMとの間でデータ通信を実行する。したがって、割当てられたスロット以外の区間及び使用しているスロット区間内のフレーム送受信区間以外においてはスリープ区間となり、また、割当てられたスロットにおいては、他の子ノードSがデータ通信を行わないため複数ノードによるフレーム送信によって生じる干渉によるフレームの再送も必要としないので、子ノードS0における消費電力を低減することが可能となる。
【0080】
図8は、本発明の実施の形態1に従う管理ノードMに子ノードSが未登録の状態において子ノードS0,S1を管理ノードMに登録する場合の処理の流れについて説明する図である。
【0081】
図8を参照して、スーパフレーム区間tb0について説明する。
管理ノードMは、スーパフレーム区間tb0内のスロット0を使用して報知情報フレームを送信する。この場合、管理ノードMに子ノードSは未登録であるため、スーパフレーム構成情報の1スーパフレーム区間のスロット数は1、スロット割当情報には、子ノードSのIDは未格納である。
【0082】
一方、時刻t30において、管理ノードMに対して未登録である子ノードS0,S1の通信部15が起動され管理ノードMを検索するための受信区間(R)が開始される。
【0083】
子ノードS0,S1は、時刻t30より受信区間(R)を開始後、管理ノードMよりスーパフレーム区間tb1のスロット0を使用する報知情報フレームを受信するまで受信区間(R)を継続する。なお、子ノードS0,S1は、後述するが所定期間を経過した場合であっても報知情報フレームを受信できない場合には、チャネルの変更処理を実行する。
【0084】
スーパフレーム区間tb1について説明する。
管理ノードMは、時刻t31においてスーパフレーム区間tb1内のスロット0を使用して報知情報フレームの送信を開始する。
【0085】
子ノードS0,S1は、時刻t30より受信区間(R)を開始後、時刻t32において、管理ノードMから報知情報フレームを受信する。すなわち、時刻t32に管理ノードMを検出したと判断する。
【0086】
子ノードS0,S1は、管理ノードMより受信した報知情報フレームに含まれるスーパフレーム構成情報およびタイミング情報に基づいて、次のスーパフレーム区間における報知情報フレームを受信するためのウェイクアップ区間開始時刻t35を算出する。
【0087】
具体的には、スーパフレーム構成情報の1スロットの区間の長さと、1スーパフレーム区間内のスロット数と、タイミング情報のウェイクアップ時間と、受信区間の長さとに基づいて、ウェイクアップ区間開始時刻t35を時刻t33を基準として、「スロット数(1スーパフレーム区間内のスロット数)×1スロット区間の長さ−ウェイクアップ時間―受信区間の長さ」として算出する。
【0088】
そして、子ノードS0,S1は、タイマ17を用いて算出した時刻t35となるまでカウントする。
【0089】
また、子ノードS0,S1は、時刻t33よりスリープ区間(S)を開始し、低消費電力状態へ移行する。
【0090】
子ノードS0,S1は、タイマ17を用いてカウントした時刻t35となった場合に、時刻t33より開始したスリープ区間(S)を終了する。すなわち、子ノードS0,S1は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS0,S1は、スーパフレーム区間tb2のスーパフレームのスロット0の区間である時刻t36より、管理ノードMから送信される報知情報フレームの受信を開始するための受信区間(R)を開始する。
【0091】
次に、スーパフレーム区間tb2について説明する。
管理ノードMは、時刻t36においてスーパフレーム区間内のスロット0を使用して報知情報フレームの送信を開始する。
【0092】
子ノードS0,S1は、時刻t36より開始した受信区間(R)にて、管理ノードMから送信された報知情報フレームを受信し、受信した報知情報フレームに含まれているスロット割当情報に自己のIDが格納されているか否かにより自己が管理ノードMに登録されているか否かを判断する。
【0093】
子ノードS0,S1は、自己が管理ノードMに未登録であると判断した場合に、管理ノードMより受信した報知情報フレームに含まれるスーパフレーム構成情報、タイミング情報に基づいて、次のスーパフレーム区間tb3における報知情報フレームを受信するためのウェイクアップ区間開始時刻t39を算出する。
【0094】
そして、子ノードS0,S1は、タイマ17を用いて算出した時刻t39となるまでカウントする。また、子ノードS0,S1は、時刻t37において、管理ノードMへ自己のIDを格納した登録要求フレームの送信を開始する。そして、登録要求フレームの送信完了後、時刻t38からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0095】
管理ノードMにおいては、子ノードS0あるいはS1から受信した登録要求フレームに格納されているIDが、スロット割当情報に格納済みでない場合には、報知情報フレームのスーパフレーム構成情報のスロット数を加算する。具体的には、1スーパフレーム区間に子ノードS0あるいはS1とのデータ通信に用いられる1スロットを追加する処理が実行される。また、スロット割当情報に登録要求フレームに格納されていた子ノードS0あるいはS1のIDを格納する処理が実行される。
【0096】
ここで、子ノードS0とS1とからの登録要求フレームには輻輳が発生しており、管理ノードMにおいては、子ノードS0からの登録要求フレームであることを識別できる程度に子ノードS0からの当該登録要求フレームを受信し、子ノードS1からの登録要求フレームであることを識別できる程度には子ノードS1からの当該登録要求フレームは受信しなかったものとする。
【0097】
これにより管理ノードMは、子ノードS0から受信した登録要求フレームに従って、報知情報フレームのスーパフレーム構成情報のスロット数を加算する。具体的には、1スーパフレーム区間に子ノードS0とのデータ通信に用いられる1スロットを追加する処理が実行される。また、スロット割当情報に登録要求フレームに格納されていた子ノードS0のIDを格納する処理が実行される(本例では、子ノードS0のIDが格納されるものとする)。
【0098】
スーパフレーム区間tb3について説明する。
子ノードS0,S1は、タイマ17を用いて算出した時刻t39となった場合に、時刻t38より開始したスリープ区間(S)を終了する。すなわち、子ノードS0,S1は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS0,S1は、スーパフレーム区間tb3のスーパフレームのスロット0の区間である時刻t40において、管理ノードMから送信される報知情報フレームの受信を開始するための受信区間(R)を開始する。
【0099】
子ノードS0,S1は、時刻t40より開始した受信区間(R)にて、受信した報知情報フレームに含まれているスロット割当情報に自己のIDが格納されているか否かに基づいて自己がネットワークに登録されているか否かを判断する。
【0100】
子ノードS0は、自己がネットワークに登録されていると判断した場合には、登録要求フレームは送信しない。ここでは、子ノードS0が登録されているものとする。一方、子ノードS1は登録されていないものとする。
【0101】
そして、子ノードS0は、自己がネットワークに登録されていると判断した場合、管理ノードMから自己に割り当てられたスロットを用いたデータ通信を実行するため、管理ノードMより受信した報知情報フレームに含まれるタイミング情報およびスロット割当情報に基づいて、同じスーパフレーム区間における自己に割り当てられたスロット(ここではスロット1)に対応する同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻t43を算出する。
【0102】
具体的には、スロット割当情報に含まれている自己に割り当てられたスロットの番号(本例では、スロット1)、タイミング情報に含まれている1スロットの区間の長さと、受信区間の長さと、ウェイクアップ時間とに基づいて、ウェイクアップ区間開始時刻t43を時刻t41を基準として、「スロット数(割り当てられたスロット番号)×1スロット区間の長さ−ウェイクアップ時間―受信区間の長さ」として算出する。
【0103】
なお、以下においても同様に報知情報フレームを受信するたびに子ノードSは、管理ノードMから自己に割り当てられたスロットを用いたデータ通信を実行するタイミングを算出するものとする。
【0104】
そして、子ノードS0は、タイマ17を用いて算出した時刻t43となるまでカウントする。また、子ノードS0は、時刻t41からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0105】
また、子ノードS0は、自己がネットワークに登録されていると判断した場合には、スーパフレーム区間tb3以降は登録要求フレームを送信しない。
【0106】
一方で、子ノードS1は、自己がネットワークに登録されていないと判断した場合に、管理ノードMより受信した報知情報フレームに含まれるスーパフレーム構成情報、タイミング情報に基づいて、次のスーパフレーム区間tb4における報知情報フレームを受信するためのウェイクアップ区間開始時刻t47を算出する。ウェイクアップ区間開始時刻t47の算出については、時刻t43を算出した場合と同様である。
【0107】
そして、子ノードS1は、タイマ17を用いて算出した時刻t47となるまでカウントする。また、子ノードS1は、時刻t41において、管理ノードMへ自己のIDを格納した登録要求フレームの送信を開始する。そして、登録要求フレームの送信完了後、時刻t42からスリープ区間(S)を開始し、低消費電力状態へ移行する。
【0108】
管理ノードMにおいては、子ノードS1から受信した登録要求フレームに格納されているIDが、スロット割当情報に格納済みでない場合には、報知情報フレームのスーパフレーム構成情報のスロット数を加算する。具体的には、1スーパフレーム区間に子ノードS1とのデータ通信に用いられる1スロットをさらに追加する処理が実行される。また、スロット割当情報に登録要求フレームに格納されていた子ノードS1のIDを格納する処理が実行される。
【0109】
この時点において、子ノードS1がネットワークに新たに登録されてネットワークの構成が変更されたことになる。
【0110】
したがって、1スーパフレーム区間の変更が発生するためそれまでネットワークに登録されていた子ノードSのデータ通信のタイミングがスロットの数により変更されることになる。
【0111】
それゆえ、管理ノードMは、ネットワークの構成が変更されたことを通知する変更通知をネットワークに登録されている子ノードS0に通知する。
【0112】
そして、変更通知を受けた子ノードS0は、次のスーパフレーム区間のスロット0の区間で送信される報知情報フレームを受信するものとする。
【0113】
子ノードS0は、タイマ17を用いてカウントした時刻t43となった場合に、時刻t41より開始したスリープ区間(S)を終了する。すなわち、子ノードS0は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS0は、スーパフレーム区間tb3のスーパフレームのスロット1の区間である時刻t44において、管理ノードMから自己に割り当てられたスロット(本例ではスロット1)を使用して送信される同期フレームの受信を開始するための受信区間(R)を開始する。
【0114】
子ノードS0は、時刻t44より開始した受信区間(R)にて管理ノードMから送信された同期フレームを受信し、受信した同期フレームに自己のIDが格納されているか否かに基づいて自己に割り当てられたスロットか否かを判断する。本例では、自己のIDが格納されているものとする。
【0115】
子ノードS0は、受信した同期フレームに自己のIDが格納されていると判断した場合には、上述したように次の管理ノードMより送信されるフレームを受信するためのタイミングを算出する。一方で、この場合には、上述したようにネットワークの構成が変更されたことを通知する変更通知が通知されている。
【0116】
子ノードS0は、管理ノードMから送信された同期フレームの中に変更通知が含まれていると判断した場合に、既に管理ノードMより受信した報知情報フレームに含まれるスーパフレーム構成情報、タイミング情報およびスロット割当情報に基づいて、次のスーパフレーム区間tb4における報知情報フレームを受信するためのウェイクアップ区間開始時刻t47を算出する。
【0117】
具体的には、一例として、子ノードS0は、スーパフレーム構成情報である1スーパフレーム区間内の残りのスロット数、タイミング情報の1スロットの区間の長さと受信区間の長さとウェイクアップ時間とに基づいて、ウェイクアップ区間開始時刻t47を時刻t45を基準として「スロット数(1スーパフレーム区間内の自身を含めた残りのスロット数)×1スロット区間の長さ−ウェイクアップ時間−受信区間の長さ」として算出する。そして、子ノードS0は、タイマ17を用いて算出した時刻t47となるまでカウントする。
【0118】
また、子ノードS0は、時刻t25において、管理ノードMへ自己のIDを格納した応答フレームの送信を開始する。そして、応答フレームの送信完了後、時刻t46からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0119】
管理ノードMにおいては、子ノードS0から受信した応答フレームに格納されている子ノードS0のIDが、同スロットで既に送信済みの同期フレームに格納した、割り当てた子ノードS0のIDと一致した場合、子ノードS0がネットワーク内で正常に稼動していると判断する。
【0120】
スーパフレーム区間tb4について説明する。
子ノードS0,S1は、それぞれタイマ17を用いて算出した時刻t47となった場合に、スリープ区間(S)を終了する。すなわち、子ノードS0,S1は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS0,S1は、スーパフレーム区間tb4のスーパフレームのスロット0の区間である時刻t48において、管理ノードMから送信される報知情報フレームの受信を開始するための受信区間(R)を開始する。
【0121】
子ノードS0,S1は、時刻t48より開始した受信区間(R)にて、受信した報知情報フレームに含まれているスロット割当情報に自己のIDが格納されているか否かに基づいて自己がネットワークに登録されているか否かを判断する。
【0122】
子ノードS0,S1は、自己がネットワークに登録されていると判断した場合には、登録要求フレームは送信しない。ここでは、子ノードS0,S1がともに登録されているものとする。
【0123】
そして、子ノードS0は、自己がネットワークに登録されていると判断した場合、管理ノードMから自己に割り当てられたスロットを用いたデータ通信を実行するため、管理ノードMより受信した報知情報フレームに含まれるタイミング情報およびスロット割当情報に基づいて、同じスーパフレーム区間における自己に割り当てられたスロット(ここではスロット1)に対応する同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻t51を算出する。
【0124】
ウェイクアップ区間開始時刻t51の算出については、時刻t43を算出した場合と同様である。
【0125】
そして、子ノードS0は、タイマ17を用いて算出した時刻t51となるまでカウントする。また、子ノードS0は、時刻t49からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0126】
一方、子ノードS1は、自己がネットワークに登録されていると判断した場合、管理ノードMから自己に割り当てられたスロットを用いたデータ通信を実行するため、管理ノードMより受信した報知情報フレームに含まれるタイミング情報およびスロット割当情報に基づいて、同じスーパフレーム区間における自己に割り当てられたスロット(ここではスロット2)に対応する同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻t55を算出する。
【0127】
ウェイクアップ区間開始時刻t55の算出については、時刻t43を算出した場合と同様である。
【0128】
そして、子ノードS1は、タイマ17を用いて算出した時刻t55となるまでカウントする。また、子ノードS1は、時刻t49からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0129】
子ノードS0は、タイマ17を用いてカウントした時刻t51となった場合に、時刻t49より開始したスリープ区間(S)を終了する。すなわち、子ノードS0は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS0は、スーパフレーム区間tb4のスーパフレームのスロット1の区間である時刻t52において、管理ノードMから自己に割り当てられたスロット(本例ではスロット1)を使用して送信される同期フレームの受信を開始するための受信区間(R)を開始する。
【0130】
子ノードS0は、時刻t52より開始した受信区間(R)にて管理ノードMから送信された同期フレームを受信し、受信した同期フレームに自己のIDが格納されているか否かに基づいて自己に割り当てられたスロットか否かを判断する。本例では、自己のIDが格納されているものとする。
【0131】
子ノードS0は、受信した同期フレームに自己のIDが格納されていると判断した場合には、管理ノードMより、既に受信済みの報知情報フレームに含まれるスーパフレーム構成情報およびタイミング情報に基づいて、次のスーパフレーム区間における自己に割り当てられたスロットを使用して管理ノードMより送信される同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻を算出する。そして、子ノードS0は、上述したようにタイマ17を用いて算出した時刻となるまでカウントする。
【0132】
子ノードS0は、受信した同期フレームに自己のIDが格納されていると判断した場合には、時刻t53において、管理ノードMへ自己のIDを格納した応答フレームの送信を開始する。そして、応答フレームの送信完了後、時刻t54からスリープ区間(S)を開始し低消費電力状態へ移行する。以降、自己に割り当てられたスロット(本例では、スロット1のみ)を使用して管理ノードMとの間でデータ通信を実行し、再度、スーパフレームの構成の変更が通知されるまで報知情報フレームの受信は必要としない。
【0133】
一方、子ノードS1は、タイマ17を用いてカウントした時刻t55となった場合に、時刻t49より開始したスリープ区間(S)を終了する。すなわち、子ノードS1は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS1は、スーパフレーム区間tb4のスーパフレームのスロット2の区間である時刻t56において、管理ノードMから自己に割り当てられたスロット(本例ではスロット2)を使用して送信される同期フレームの受信を開始するための受信区間(R)を開始する。
【0134】
子ノードS1は、時刻t56より開始した受信区間(R)にて管理ノードMから送信された同期フレームを受信し、受信した同期フレームに自己のIDが格納されているか否かに基づいて自己に割り当てられたスロットか否かを判断する。本例では、自己のIDが格納されているものとする。
【0135】
子ノードS1は、受信した同期フレームに自己のIDが格納されていると判断した場合には、管理ノードMより、既に受信済みの報知情報フレームに含まれるスーパフレーム構成情報およびタイミング情報に基づいて、次のスーパフレーム区間における自己に割り当てられたスロットを使用して管理ノードMより送信される同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻を算出する。そして、子ノードS1は、上述したようにタイマ17を用いて算出した時刻となるまでカウントする。
【0136】
子ノードS1は、受信した同期フレームに自己のIDが格納されていると判断した場合には、時刻t57において、管理ノードMへ自己のIDを格納した応答フレームの送信を開始する。そして、応答フレームの送信完了後、時刻t58からスリープ区間(S)を開始し低消費電力状態へ移行する。以降、自己に割り当てられたスロット(本例では、スロット2のみ)を使用して管理ノードMとの間でデータ通信を実行し、再度、スーパフレームの構成の変更が通知されるまで報知情報フレームの受信は必要としない。
【0137】
管理ノードMにおいては、子ノードS0,S1から受信した応答フレームに格納されている子ノードSのIDが、同スロットで既に送信済みの同期フレームに格納した割り当てた子ノードSのIDと一致した場合、子ノードSがネットワーク内で正常に稼動していると判断する。なお、応答フレームを受信するたびに管理ノードMは、同様の判断を行う。
【0138】
これにより、子ノードS0は、子ノードS1が新たにネットワークに登録されて1スーパフレーム区間を構成するスロット数が変更される当該場合であっても、再度、子ノードS0に割り当てられたスロットの区間を用いて、同期を確立して管理ノードMとの間でデータ通信を継続して実行することが可能となる。
【0139】
図9は、本発明の実施の形態1に従う管理ノードMに既に子ノードS0,S1が登録されている状態において新たに子ノードS2を管理ノードMに登録する場合の処理の流れについて説明する図である。
【0140】
図9を参照して、スーパフレーム区間tc0について説明する。
管理ノードMは、スーパフレーム区間tc0内のスロット0を使用して報知情報フレームを送信する。この場合、管理ノードMに既に子ノードS0,S1が登録済みであるため、報知情報フレームに含まれるスーパフレーム構成情報の1スーパフレーム区間のスロット数は3、スロット割当情報には、子ノードS0,S1のIDが格納済みである。具体的には、子ノードS0にはスロット1、子ノードS2にはスロット2が管理ノードMにより割り当てられているものとする。
【0141】
ここで、時刻t101以前の時刻において管理ノードMに未登録である子ノードS2の通信部15が起動され管理ノードMを検索するための受信区間が開始されたものとする。
【0142】
子ノードS2は、時刻t101以前の時刻において受信区間(R)を開始後、管理ノードMより次の報知情報フレームを受信するまで受信区間(R)を継続する。なお、子ノードS2は、後述するが所定期間を経過した場合であっても報知情報フレームを受信できない場合には、チャネルの変更処理を実行する。
【0143】
子ノードS2は、受信区間(R)を開始後、時刻t101において、管理ノードMから報知情報フレームを受信する。すなわち、時刻t101において管理ノードMを検出したと判断する。
【0144】
子ノードS2は、管理ノードMより受信した報知情報フレームに含まれるスーパフレーム構成情報およびタイミング情報に基づいて、次のスーパフレーム区間tc1における報知情報フレームを受信するためのウェイクアップ区間開始時刻t112を算出する。
【0145】
具体的には、スーパフレーム構成情報の1スロットの区間の長さ、1スーパフレーム区間内のスロット数と、タイミング情報のウェイクアップ時間と、受信区間の長さとに基づいて、「スロット数(1スーパフレーム区間内のスロット数)×1スロット区間の長さ−ウェイクアップ時間―受信区間の長さ」として算出する。
【0146】
そして、子ノードS2は、タイマ17を用いて算出した時刻t112となるまでカウントする。
【0147】
また、子ノードS2は、時刻t102よりスリープ区間(S)を開始し、低消費電力状態へ移行する。
【0148】
子ノードS0については、上述したように自己がネットワークに登録されていると判断した場合、管理ノードMから自己に割り当てられたスロットを用いたデータ通信を実行するため、管理ノードMより受信した報知情報フレームに含まれるタイミング情報およびスロット割当情報に基づいて、同じスーパフレーム区間における自己に割り当てられたスロット(ここではスロット1)に対応する同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻t104を算出する。
【0149】
そして、子ノードS0は、タイマ17を用いてカウントした時刻t104となった場合に、スリープ区間(S)を終了する。すなわち、子ノードS0は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS0は、スーパフレーム区間tc0のスーパフレームのスロット1の区間である時刻t105において、管理ノードMから自己に割り当てられたスロット(本例ではスロット1)を使用して送信される同期フレームの受信を開始するための受信区間(R)を開始する。
【0150】
子ノードS0は、時刻t105より開始した受信区間(R)にて管理ノードMから送信された同期フレームを受信し、受信した同期フレームに自己のIDが格納されているか否かに基づいて自己に割り当てられたスロットか否かを判断する。本例では、自己のIDが格納されているものとする。
【0151】
子ノードS0は、受信した同期フレームに自己のIDが格納されていると判断した場合には、管理ノードMより、既に受信済みの報知情報フレームに含まれるスーパフレーム構成情報およびタイミング情報に基づいて、次のスーパフレーム区間における自己に割り当てられたスロットを使用して管理ノードMより送信される同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻t116を算出する。そして、子ノードS0は、上述したようにタイマ17を用いて算出した時刻となるまでカウントする。
【0152】
また、子ノードS0は、受信した同期フレームに自己のIDが格納されていると判断した場合には、時刻t106において、管理ノードMへ自己のIDを格納した応答フレームの送信を開始する。そして、応答フレームの送信完了後、時刻t107からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0153】
また、子ノードS1については、上述したように自己がネットワークに登録されていると判断した場合、管理ノードMから自己に割り当てられたスロットを用いたデータ通信を実行するため、管理ノードMより受信した報知情報フレームに含まれるタイミング情報およびスロット割当情報に基づいて、同じスーパフレーム区間における自己に割り当てられたスロット(ここではスロット2)に対応する同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻t108を算出する。
【0154】
そして、子ノードS1は、タイマ17を用いてカウントした時刻t108となった場合に、スリープ区間(S)を終了する。すなわち、子ノードS1は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS1は、スーパフレーム区間tc0のスーパフレームのスロット2の区間である時刻t109において、管理ノードMから自己に割り当てられたスロット(本例ではスロット2)を使用して送信される同期フレームの受信を開始するための受信区間(R)を開始する。
【0155】
子ノードS1は、時刻t109より開始した受信区間(R)にて管理ノードMから送信された同期フレームを受信し、受信した同期フレームに自己のIDが格納されているか否かに基づいて自己に割り当てられたスロットか否かを判断する。本例では、自己のIDが格納されているものとする。
【0156】
子ノードS1は、受信した同期フレームに自己のIDが格納されていると判断した場合には、管理ノードMより、既に受信済みの報知情報フレームに含まれるスーパフレーム構成情報およびタイミング情報に基づいて、次のスーパフレーム区間における自己に割り当てられたスロットを使用して管理ノードMより送信される同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻t120を算出する。そして、子ノードS0は、上述したようにタイマ17を用いて算出した時刻となるまでカウントする。
【0157】
また、子ノードS1は、受信した同期フレームに自己のIDが格納されていると判断した場合には、時刻t110において、管理ノードMへ自己のIDを格納した応答フレームの送信を開始する。そして、応答フレームの送信完了後、時刻t111からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0158】
スーパフレーム区間tc1について説明する。
子ノードS2は、タイマ17を用いて算出した時刻t112となった場合に、スリープ区間(S)を終了する。すなわち、子ノードS2は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS2は、スーパフレーム区間tc1のスーパフレームのスロット0の区間である時刻t113において、管理ノードMから送信される報知情報フレームの受信を開始するための受信区間(R)を開始する。
【0159】
子ノードS2は、時刻t113より開始した受信区間(R)にて、受信した報知情報フレームに含まれているスロット割当情報に自己のIDが格納されているか否かに基づいて自己がネットワークに登録されているか否かを判断する。
【0160】
子ノードS2は、自己がネットワークに登録されていないと判断した場合に、管理ノードMより受信した報知情報フレームに含まれるスーパフレーム構成情報、タイミング情報に基づいて、次のスーパフレーム区間tc2における報知情報フレームを受信するためのウェイクアップ区間開始時刻t124を算出する。
【0161】
ウェイクアップ区間開始時刻t124の算出の方式については、上述したのと同様である。
【0162】
そして、子ノードS2は、タイマ17を用いて算出した時刻t124となるまでカウントする。
【0163】
また、子ノードS2は、時刻t114において、管理ノードMへ自己のIDを格納した登録要求フレームの送信を開始する。そして、登録要求フレームの送信完了後、時刻t115からスリープ区間(S)を開始し、低消費電力へ移行する。
【0164】
管理ノードMにおいては、子ノードS2から受信した登録要求フレームに格納されているIDが、スロット割当情報に格納済みでない場合には、報知情報フレームのスーパフレーム構成情報のスロット数を加算する。具体的には、1スーパフレーム区間に子ノードS2とのデータ通信に用いられる1スロットをさらに追加する処理が実行される。また、スロット割当情報に登録要求フレームに格納されていた子ノードS2のIDを格納する処理が実行される。
【0165】
この時点において、子ノードS2がネットワークに新たに登録されてネットワークの構成が変更されたことになる。
【0166】
したがって、1スーパフレーム区間が変更が発生するためそれまでネットワークに登録されていた子ノードS(本例では、子ノードS0,S1)のデータ通信のタイミングがスロットの数により変更されることになる。
【0167】
それゆえ、管理ノードMは、ネットワークの構成が変更されたことを通知する変更通知をネットワークに登録されている子ノードS(本例では、子ノードS0,S1)に通知する。
【0168】
そして、変更通知を受けた子ノードSは、次のスーパフレーム区間tc2のスロット0の区間で送信される報知情報フレームを受信するものとする。
【0169】
子ノードS0は、タイマ17を用いてカウントした時刻t116となった場合に、時刻t107より開始したスリープ区間(S)を終了する。すなわち、子ノードS0は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS0は、スーパフレーム区間tc1のスーパフレームのスロット1の区間である時刻t117において、管理ノードMから自己に割り当てられたスロット(本例ではスロット1)を使用して送信される同期フレームの受信を開始するための受信区間(R)を開始する。
【0170】
子ノードS0は、時刻t117より開始した受信区間(R)にて管理ノードMから送信された同期フレームを受信し、受信した同期フレームに自己のIDが格納されているか否かに基づいて自己に割り当てられたスロットか否かを判断する。本例では、自己のIDが格納されているものとする。
【0171】
子ノードS0は、受信した同期フレームに自己のIDが格納されていると判断した場合には、管理ノードMより、上述したように次の管理ノードMより送信されるフレームを受信するためのタイミングを算出する。一方で、この場合には、上述したようにネットワークの構成が変更されたことを通知する変更通知が通知されている。
【0172】
子ノードS0は、管理ノードMから送信された同期フレームの中に変更通知が含まれていると判断した場合に、既に管理ノードMより受信した報知情報フレームに含まれるスーパフレーム構成情報、タイミング情報およびスロット割当情報に基づいて、次のスーパフレーム区間tc2における報知情報フレームを受信するためのウェイクアップ区間開始時刻t124を算出する。
【0173】
具体的には、一例として、子ノードS0は、スーパフレーム構成情報である1スーパフレーム区間内の残りのスロット数、タイミング情報の1スロットの区間の長さと受信区間の長さとウェイクアップ時間とに基づいて、ウェイクアップ区間開始時刻t124を時刻t118を基準として「スロット数(1スーパフレーム区間内の自身を含めた残りのスロット数)×1スロット区間の長さ−ウェイクアップ時間−受信区間の長さ」として算出する。そして、子ノードS0は、タイマ17を用いて算出した時刻t124となるまでカウントする。
【0174】
また、子ノードS0は、時刻t118において、管理ノードMへ自己のIDを格納した応答フレームの送信を開始する。そして、応答フレームの送信完了後、時刻t119からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0175】
管理ノードMにおいては、子ノードS0から受信した応答フレームに格納されている子ノードS0のIDが、同スロットで既に送信済みの同期フレームに格納した、割り当てた子ノードS0のIDと一致した場合、子ノードS0がネットワーク内で正常に稼動していると判断する。
【0176】
子ノードS1は、タイマ17を用いてカウントした時刻t120となった場合に、時刻t111より開始したスリープ区間(S)を終了する。すなわち、子ノードS1は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS1は、スーパフレーム区間tc1のスーパフレームのスロット2の区間である時刻t121において、管理ノードMから自己に割り当てられたスロット(本例ではスロット2)を使用して送信される同期フレームの受信を開始するための受信区間(R)を開始する。
【0177】
子ノードS1は、時刻t121より開始した受信区間(R)にて管理ノードMから送信された同期フレームを受信し、受信した同期フレームに自己のIDが格納されているか否かに基づいて自己に割り当てられたスロットか否かを判断する。本例では、自己のIDが格納されているものとする。
【0178】
子ノードS1は、受信した同期フレームに自己のIDが格納されていると判断した場合には、管理ノードMより、上述したように次の管理ノードMより送信されるフレームを受信するためのタイミングを算出する。一方で、この場合には、上述したようにネットワークの構成が変更されたことを通知する変更通知が通知されている。
【0179】
子ノードS1は、管理ノードMから送信された同期フレームの中に変更通知が含まれていると判断した場合に、既に管理ノードMより受信した報知情報フレームに含まれるスーパフレーム構成情報、タイミング情報およびスロット割当情報に基づいて、次のスーパフレーム区間tc2における報知情報フレームを受信するためのウェイクアップ区間開始時刻t124を算出する。
【0180】
具体的には、一例として、子ノードS1は、スーパフレーム構成情報である1スーパフレーム区間内の残りのスロット数、タイミング情報の1スロットの区間の長さと受信区間の長さとウェイクアップ時間とに基づいて、ウェイクアップ区間開始時刻t124を時刻t122を基準として「スロット数(1スーパフレーム区間内の自身を含めた残りのスロット数)×1スロット区間の長さ−ウェイクアップ時間−受信区間の長さ」として算出する。そして、子ノードS1は、タイマ17を用いて算出した時刻t124となるまでカウントする。
【0181】
また、子ノードS1は、時刻t122において、管理ノードMへ自己のIDを格納した応答フレームの送信を開始する。そして、応答フレームの送信完了後、時刻t123からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0182】
管理ノードMにおいては、子ノードS1から受信した応答フレームに格納されている子ノードS1のIDが、同スロットで既に送信済みの同期フレームに格納した、割り当てた子ノードS1のIDと一致した場合、子ノードS1がネットワーク内で正常に稼動していると判断する。
【0183】
スーパフレーム区間tc2について説明する。
子ノードS0,S1,S2は、それぞれタイマ17を用いて算出した時刻t124となった場合に、スリープ区間(S)を終了する。すなわち、子ノードS0,S1,S2は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS0,S1,S2は、スーパフレーム区間tc2のスーパフレームのスロット0の区間である時刻t125において、管理ノードMから送信される報知情報フレームの受信を開始するための受信区間(R)を開始する。
【0184】
子ノードS0,S1,S2は、時刻t125より開始した受信区間(R)にて、受信した報知情報フレームに含まれているスロット割当情報に自己のIDが格納されているか否かに基づいて自己がネットワークに登録されているか否かを判断する。
【0185】
子ノードS0,S1,S2は、自己がネットワークに登録されていると判断した場合には、登録要求フレームは送信しない。ここでは、子ノードS0,S1,S2がともに登録されているものとする。
【0186】
そして、子ノードS0は、自己がネットワークに登録されていると判断した場合、管理ノードMから自己に割り当てられたスロットを用いたデータ通信を実行するため、管理ノードMより受信した報知情報フレームに含まれるタイミング情報およびスロット割当情報に基づいて、同じスーパフレーム区間における自己に割り当てられたスロット(ここではスロット1)に対応する同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻t128を算出する。
【0187】
ウェイクアップ区間開始時刻t128の算出については、上述した場合と同様である。
そして、子ノードS0は、タイマ17を用いて算出した時刻t128となるまでカウントする。また、子ノードS0は、時刻t126からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0188】
一方、子ノードS1は、自己がネットワークに登録されていると判断した場合、管理ノードMから自己に割り当てられたスロットを用いたデータ通信を実行するため、管理ノードMより受信した報知情報フレームに含まれるタイミング情報およびスロット割当情報に基づいて、同じスーパフレーム区間における自己に割り当てられたスロット(ここではスロット2)に対応する同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻t132を算出する。
【0189】
ウェイクアップ区間開始時刻t132の算出については、上述した場合と同様である。
そして、子ノードS1は、タイマ17を用いて算出した時刻t132となるまでカウントする。また、子ノードS1は、時刻t126からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0190】
また、子ノードS2は、自己がネットワークに登録されていると判断した場合、管理ノードMから自己に割り当てられたスロットを用いたデータ通信を実行するため、管理ノードMより受信した報知情報フレームに含まれるタイミング情報およびスロット割当情報に基づいて、同じスーパフレーム区間における自己に割り当てられたスロット(ここではスロット3)に対応する同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻t136を算出する。
【0191】
ウェイクアップ区間開始時刻t136の算出については、上述した場合と同様である。
そして、子ノードS2は、タイマ17を用いて算出した時刻t136となるまでカウントする。また、子ノードS2は、時刻t126からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0192】
子ノードS0は、タイマ17を用いてカウントした時刻t128となった場合に、時刻t126より開始したスリープ区間(S)を終了する。すなわち、子ノードS0は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS0は、スーパフレーム区間tc2のスーパフレームのスロット1の区間である時刻t129において、管理ノードMから自己に割り当てられたスロット(本例ではスロット1)を使用して送信される同期フレームの受信を開始するための受信区間(R)を開始する。
【0193】
子ノードS0は、時刻t129より開始した受信区間(R)にて管理ノードMから送信された同期フレームを受信し、受信した同期フレームに自己のIDが格納されているか否かに基づいて自己に割り当てられたスロットか否かを判断する。本例では、自己のIDが格納されているものとする。
【0194】
子ノードS0は、受信した同期フレームに自己のIDが格納されていると判断した場合には、管理ノードMより、既に受信済みの報知情報フレームに含まれるスーパフレーム構成情報およびタイミング情報に基づいて、次のスーパフレーム区間における自己に割り当てられたスロットを使用して管理ノードMより送信される同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻を算出する。そして、子ノードS0は、上述したようにタイマ17を用いて算出した時刻となるまでカウントする。
【0195】
子ノードS0は、受信した同期フレームに自己のIDが格納されていると判断した場合には、時刻t130において、管理ノードMへ自己のIDを格納した応答フレームの送信を開始する。そして、応答フレームの送信完了後、時刻t131からスリープ区間(S)を開始し低消費電力状態へ移行する。以降、自己に割り当てられたスロット(本例では、スロット1のみ)を使用して管理ノードMとの間でデータ通信を実行し、再度、スーパフレームの構成の変更が通知されるまで報知情報フレームの受信は必要としない。
【0196】
一方、子ノードS1は、タイマ17を用いてカウントした時刻t132となった場合に、時刻t126より開始したスリープ区間(S)を終了する。すなわち、子ノードS1は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS1は、スーパフレーム区間tc2のスーパフレームのスロット2の区間である時刻t133において、管理ノードMから自己に割り当てられたスロット(本例ではスロット2)を使用して送信される同期フレームの受信を開始するための受信区間(R)を開始する。
【0197】
子ノードS1は、時刻t133より開始した受信区間(R)にて管理ノードMから送信された同期フレームを受信し、受信した同期フレームに自己のIDが格納されているか否かに基づいて自己に割り当てられたスロットか否かを判断する。本例では、自己のIDが格納されているものとする。
【0198】
子ノードS1は、受信した同期フレームに自己のIDが格納されていると判断した場合には、管理ノードMより、既に受信済みの報知情報フレームに含まれるスーパフレーム構成情報およびタイミング情報に基づいて、次のスーパフレーム区間における自己に割り当てられたスロットを使用して管理ノードMより送信される同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻を算出する。そして、子ノードS1は、上述したようにタイマ17を用いて算出した時刻となるまでカウントする。
【0199】
子ノードS1は、受信した同期フレームに自己のIDが格納されていると判断した場合には、時刻t134において、管理ノードMへ自己のIDを格納した応答フレームの送信を開始する。そして、応答フレームの送信完了後、時刻t135からスリープ区間(S)を開始し低消費電力状態へ移行する。以降、自己に割り当てられたスロット(本例では、スロット2のみ)を使用して管理ノードMとの間でデータ通信を実行し、再度、スーパフレームの構成の変更が通知されるまで報知情報フレームの受信は必要としない。
【0200】
一方、子ノードS2は、タイマ17を用いてカウントした時刻t136となった場合に、時刻t126より開始したスリープ区間(S)を終了する。すなわち、子ノードS2は、低消費電力状態より通常電力状態へ復帰させるウェイクアップ区間(W)を開始する。そして、子ノードS2は、スーパフレーム区間tc2のスーパフレームのスロット3の区間である時刻t137において、管理ノードMから自己に割り当てられたスロット(本例ではスロット2)を使用して送信される同期フレームの受信を開始するための受信区間(R)を開始する。
【0201】
子ノードS2は、時刻t137より開始した受信区間(R)にて管理ノードMから送信された同期フレームを受信し、受信した同期フレームに自己のIDが格納されているか否かに基づいて自己に割り当てられたスロットか否かを判断する。本例では、自己のIDが格納されているものとする。
【0202】
子ノードS2は、受信した同期フレームに自己のIDが格納されていると判断した場合には、管理ノードMより、既に受信済みの報知情報フレームに含まれるスーパフレーム構成情報およびタイミング情報に基づいて、次のスーパフレーム区間における自己に割り当てられたスロットを使用して管理ノードMより送信される同期フレームを受信するためのタイミングとしてウェイクアップ区間開始時刻を算出する。そして、子ノードS2は、上述したようにタイマ17を用いて算出した時刻となるまでカウントする。
【0203】
子ノードS2は、受信した同期フレームに自己のIDが格納されていると判断した場合には、時刻t138において、管理ノードMへ自己のIDを格納した応答フレームの送信を開始する。そして、応答フレームの送信完了後、時刻t139からスリープ区間(S)を開始し低消費電力状態へ移行する。以降、自己に割り当てられたスロット(本例では、スロット3のみ)を使用して管理ノードMとの間でデータ通信を実行し、再度、スーパフレームの構成の変更が通知されるまで報知情報フレームの受信は必要としない。
【0204】
管理ノードMにおいては、子ノードS0,S1,S2から受信した応答フレームに格納されている子ノードSのIDが、同スロットで既に送信済みの同期フレームに格納した割り当てた子ノードSのIDと一致した場合、子ノードSがネットワーク内で正常に稼動していると判断する。なお、応答フレームを受信するたびに管理ノードMは、同様の判断を行う。
【0205】
これにより、子ノードS0,S1は、子ノードS2が新たにネットワークに登録されて1スーパフレーム区間を構成するスロット数が変更される当該場合であっても、再度、子ノードS0,S1に割り当てられたスロットの区間を用いて、同期を確立して管理ノードMとの間でデータ通信を継続して実行することが可能となる。
【0206】
図10は、管理ノード(後述する中継ノードRを含む)から子ノードに対して送信する無線フレームの構成について説明する図である。各々の無線フレームに含まれる同一の情報については、重複する説明は省略する。
【0207】
図10(A)を参照して、ここでは、報知情報フレームとして、ヘッダ情報d0、スーパフレーム構成情報d1、タイミング情報d2、管理ノード及び中継ノードのID情報d3,d4、スロット割当情報d5とで構成されている場合が示されている。
【0208】
ヘッダ情報d0は、当該無線フレームが報知情報フレームであることを示すデータが含まれている。
【0209】
スーパフレーム構成情報d1は、1スーパフレーム区間のスロット数、送信されるフレームのスロット番号等のデータが含まれている。スロット数は、スロット割当情報に何もデータが無い状態においては、スロット0のみの1である。また、スロット割当情報に複数の子ノードSのID情報が含まれている場合には、当該ID情報の個数にスロット0の個数1を足した数となる。スロット数は、スロットの区間の長さとともに、報知情報フレームを受信するタイミングを設定する際に用いられる。また、スロット番号は、本フレームが送信するために使用しているスロット番号の情報が格納されている。具体的には、スロット0が用いられるため報知情報フレームの場合には0が設定されている。
【0210】
報知情報フレーム更新番号は、現在報知中の報知情報フレームの番号であり、報知情報フレームに格納される情報に変更が発生した場合には更新(加算)される。
【0211】
タイミング情報d2は、管理ノードMとの間でのデータ通信を実行するタイミングを設定するための各種パラメータが含まれている。具体的には、スロットの区間の長さ、通信部49からデータを送信する区間(下りフレーム受信区間)の長さ、通信部49がデータを受信する区間(上りフレーム受信区間)の長さおよびウェイクアップ区間の長さ等が含まれている。なお、低消費電力状態であるスリープ区間の長さを含めるようにすることも可能である。なお、スロットの区間の長さからデータを送信する区間の長さおよびデータを受信する区間の長さ、ウェイクアップ区間の長さを減算すれば、スリープ区間(S)の長さを算出することが可能である。
【0212】
また、管理ノードMの通信部49からデータを送信する区間(下りフレーム受信区間)の長さに従って、子ノードSの通信部15がデータを受信する受信区間(R)が設定される。また、管理ノードMの通信部49がデータを受信する区間(上りフレーム受信区間)の長さに従って、子ノードSの通信部15がデータを送信する送信区間(T)の長さが設定される。また、子ノードSがデータを受信する区間に先立って、データの受信を可能な状態に設定するためのウェイクアップ区間(W)を規定するパラメータもタイミング情報に含められるものとする。
【0213】
当該ウェイクアップ区間(W)を設けることにより送信側がデータを送信した場合に受信側を確実に受信可能な状態に設定しておくことが可能となる。
【0214】
なお、当該ウェイクアップ区間(W)は、ノードの特性に従って適宜設定されるものとする。なお、これらの区間のパラメータは、予め固定値とする必要は無く例えばユーザの入力によりパラメータの調整が可能であるものとする。当該場合であっても報知情報フレームのタイミング情報に基づいて管理ノードMと子ノードSとの間のデータ通信が実行されるためネットワークにおけるデータ通信のタイミングを簡易に調整することが可能である。すなわち、子ノードの各ROMで当該情報を記憶しておく必要がない。
【0215】
管理ノードID情報d3は、管理ノードMのID情報、本例においてはID000とする。後述する子ノードSから管理ノードMに対して送信する際に用いられる。
【0216】
親ノードID情報d4は、登録要求フレームを受け付けた親ノードのID情報、管理ノードMが親ノードである場合には、管理ノードMのID情報である。また、中継ノードRが親ノードである場合には、中継ノードRのID情報である。当該ID情報を確認することにより、子ノードSは、自己の親ノードが管理ノードMであるか、中継ノードRであるかを判断することが可能となる。
【0217】
また、スロット割当情報d5は、ネットワークとして登録された、1スーパフレーム区間として追加されたスロットにそれぞれ対応する子ノードSのID(Identification)情報が設定される。スロット1に対応して子ノードS0のID003が登録されている場合が示されている。また、スロット2に対応して子ノードS1のID004が登録されている場合が示されている。なお、初期状態においては、ネットワークに登録されている子ノードSは存在しないためスロット割当情報d5には何もデータが無い状態となる。
【0218】
当該スロットに割り当てられた子ノードのID情報に従って、各子ノードは、自己がネットワークに登録されたかどうかを確認する。そして、それとともに順番に設けられたスロット番号に従って、自己が割り当てられたスロットが1スーパフレーム区間の最初から数えて何番目であるかを確認する。
【0219】
図10(B)を参照して、ここでは、同期フレームとして、ヘッダ情報d6、スーパフレーム構成情報d7、子ノードID情報d8、ユーザデータd9とで構成されている場合が示されている。
【0220】
ヘッダ情報d6は、当該無線フレームが同期フレームであることを示すデータが含まれている。
【0221】
スーパフレーム構成情報d7は、送信されるフレームのスロット番号、1スーパフレーム区間のスロット数、報知情報フレーム更新番号のデータが含まれている。当該同期フレームを受信したノードは、スロット番号と子ノードID情報の情報に基づき、自己に割り当てられたスロットの同期フレームであるか否かを判断する。
【0222】
また、報知情報フレーム更新番号は、当該同期フレームを送信した時点における、管理ノードMがネットワーク内に報知中の報知情報フレームの番号が格納され、報知情報フレームに格納される情報に変更が生じた場合に更新される。当該同期フレームを受信したノードは、自己が以前に受信した報知情報フレーム又は同期フレームに格納されていた報知情報フレーム番号と比較し、異なる番号が格納されている場合は報知情報フレームが更新されたものと判断し、次のスーパフレーム区間のスロット0で報知情報フレームを受信するためのスリープ期間設定等のタイミング設定を実行する。
【0223】
すなわち、報知情報フレームの番号が更新されることが変更通知に相当する。
子ノードID情報d8は、当該無線フレームを送信するスロットに割り当てたノードのID情報が格納される。
【0224】
ユーザデータd9については後述する。
図11は、子ノードから管理ノード(中継ノードRも含む)に対して送信する無線フレームの構成について説明する図である。各々の無線フレームに含まれる同一の情報については、重複する説明は省略する。
【0225】
図11(A)を参照して、ここでは、登録要求フレームとして、ヘッダ情報f0、登録ノードID情報f1とで構成されている場合が示されている。
【0226】
ヘッダ情報f0は、当該無線フレームが登録要求フレームであることを示すデータが含まれている。
【0227】
登録ノードID情報f1は、ネットワークへ参加を要求するノード(子ノード)のノードIDが格納される。
【0228】
当該登録要求フレームを受信した管理ノードMは、ネットワークへの参加を許可するか否かを判定し、許可する場合には、その後に管理ノードMが送信する報知情報フレームや同期フレームに格納する報知情報フレーム番号を更新する。また、スーパフレーム構成の変更(スロットの追加)は、次のスーパフレーム区間から行われる。ネットワークへの参加を許可しない場合は、これらの処理は行わない。これによりネットワークのセキュリティも強化することが可能である。
【0229】
図11(B)を参照して、ここでは、応答フレームとして、ヘッダ情報f2、子ノードID情報f3、スロット割当情報f4、ユーザデータf5とで構成されている場合が示されている。
【0230】
ヘッダ情報f2は、当該無線フレームが応答フレームであることを示すデータが含まれている。
【0231】
子ノードID情報f3は、当該無線フレームを送信する子ノードのID情報が格納される。当該無線フレームを受信する管理ノードMは、当該情報を参照して、自己の保持するスロット割当情報により当該無線フレームを送信してきた子ノードがネットワークへの参加を許可したノードであるかを確認する。ネットワークへの参加を許可していない子ノードからの無線フレームであった場合は、当該無線フレームを無視する。これにより、不正なノードからのアクセスを禁止してネットワークのセキュリティを強化することができる。
【0232】
スロット割当情報f4は、当該無線フレームを送信してきた子ノードが後述する中継ノードである場合に格納される。中継ノードがネットワークへ参加している場合、中継ノードRを介して更に子ノードがネットワークへ参加している。その場合、中継ノードRを介してネットワークへ参加している子ノードのID情報が格納される。
【0233】
中継ノードRからの応答フレームを受信した管理ノードMは、管理ノード自身が直接通信可能な子ノードと共に、中継ノードRが通信可能な子ノードについて、1スーパフレーム区間にスロットの割り当てを行う。
【0234】
次に、同期フレーム、応答フレームのユーザデータd9,f5について説明する。
ユーザデータは、ネットワークに参加をしているノード間において、データを送信するための無線フレーム内の領域である。ユーザデータの送信元と送信先の各々のノードを指定するID情報を格納する領域と、送信元から送信先へ送信すべきデータを格納するデータ領域とから構成される。このデータ領域に格納されるデータは、送信元から送信先への動作指示コマンドを含む。
【0235】
例えば、管理ノードMから子ノードS0へ、子ノードS0が取得したデータの転送を要求する場合、管理ノードMから子ノードS0への同期フレームにおいて、送信元ノードIDとして管理ノードMのID情報(ID000)を格納し、送信先ノードIDとして子ノードS0のID情報(ID001)を格納する。そして送信すべきデータとして、データの転送指示コマンドを送信元ノードIDに続いて送信する。
【0236】
子ノードS0は、ユーザデータに含まれている送信先ノードのIDを確認して自己宛か否か認識する。
【0237】
そして、子ノードS0は、当該ユーザデータが自己宛であると認識した場合には、データ転送指示コマンドへの応答としてデータを転送する場合は、子ノードS0から管理ノードMへの応答フレームにおいて、送信元ノードIDとして子ノードS0のID情報(ID001)、送信先ノードIDとして管理ノードMのID情報(ID000)を格納し、送信先ノードIDに続いて子ノードS0が取得したデータを送信する。
【0238】
別の例として、子ノードS1から子ノードS2へデータを送信する場合、子ノードS1が管理ノードMへ送信する応答フレームのユーザデータ領域に、送信先ノードIDとして子ノードS2のID情報(ID004)を格納し、送信元ノードIDとして子ノードS1のID情報(ID003)を格納する。そして送信すべきデータを送信元ノードIDに続いて送信する。
【0239】
子ノードS1からの応答フレームを受信した管理ノードMは、ユーザデータに含まれている送信先ノードのIDを確認して自己宛か否か認識する。
【0240】
そして、管理ノードMは、自己宛でないと認識した場合には、自己が管理するネットワーク内のノードに当該ID情報が含まれていれば、その子ノードに転送する。具体的には、子ノードS2へ送信する同期フレームのユーザデータ領域に、子ノードS1から受信した応答フレームのユーザデータ領域の情報を格納し、子ノードS2へ同期フレームを送信する。
【0241】
当該同期フレームを受信した子ノードS2は、ユーザデータに含まれている送信先ノードのIDを確認して自己宛か否か認識する。そして、送信先ノードIDにより自己宛のデータであるかを確認し、さらに、送信元ノードIDによりデータの送信元の確認をして、受信したデータが適切なデータであるかを判別することが可能となる。したがって、例えば、子ノードS1から子ノードS2へのデータの転送も可能である。
【0242】
また、転送すべきデータ量が多い場合は、子ノードS1及び子ノードS2の各々に割り当てられたスロット内のスリープ区間(S)をもデータ転送に使用可能である。更に1スロット内でデータの転送が完了できない場合は、複数回のスーパフレーム区間に亘ってデータの転送が行われる。
【0243】
図12は、本発明の実施の形態1に従う管理ノードMにおけるデータ通信の処理の流れについて説明するフロー図である。
【0244】
図12を参照して、まず電源が投入された場合に、CPU41はROM43に格納されたソフトウェアプログラムを読込むことにより当該フローにおけるデータ通信を開始する。
【0245】
まず、CPU41のデータ送受信制御部148は、通信部49に対してデータ通信のための初期設定を実行する(ステップS2)。
【0246】
そして、次に、チャネル設定部144は、電界強度測定部46#に指示して外部環境における電界強度を測定する(ステップS4)。
【0247】
そして、チャネル設定部144は、電界強度測定部46#における電界強度の測定に従ってデータ通信を実行する場合にデータ送受信における適切なチャネルを通信部49に対して設定する(ステップS6)。具体的には、他のネットワークでの通信との輻輳が最も起こり難いと判断できる外部電界強度が最も低いチャネルを優先使用する。
【0248】
次に、スーパフレーム設定部146は、スーパフレーム区間の設定処理を実行する(ステップS8)。スーパフレーム区間の設定処理については後述する。
【0249】
初期設定においては、1スーパフレーム区間はスロット0のみで構成されている。したがって、最初の1サイクルについては、ステップS8の処理をスキップすることも可能である。
【0250】
次に、データ送受信制御部148は、スーパフレーム設定部146により設定されたスーパフレーム区間に基づいて報知情報フレームを生成する(ステップS10)。具体的には、図10(A)で説明した報知情報フレームが生成される。
【0251】
そして、次に、データ送受信制御部148は、スーパフレーム設定部146において設定された1スーパフレーム区間におけるスロットを確認する(ステップS11)。
【0252】
そして、データ送受信制御部148は、1スーパフレーム区間に設定されたスロット0の送信区間(T)において通信部49を介して報知情報フレームを送信する(ステップS12)。
【0253】
そして、次に、データ送受信制御部148は、1スーパフレーム区間に設定されたスロット0の受信区間(R)において通信部49を介して登録要求フレームを受信したかどうかを判断する(ステップS14)。具体的には、図11(A)で説明した登録要求フレームを受信したかどうかを判断する。
【0254】
データ送受信制御部148は、ステップS14において、登録要求フレームを受信したと判断した場合(ステップS14においてYES)には、スロット追加フラグをオンにする(ステップS16)。
【0255】
一方、データ送受信制御部148は、ステップS14において、登録要求フレームを受信しなかったと判断した場合(ステップS14においてNO)には、次のステップS18に進む。
【0256】
なお、通信部49を介した受信区間Rが終了した場合に、データ送受信制御部148は、電源管理部46に対して各部への電源の供給の停止を指示する低消費電力状態への移行を指示する。これにより、管理ノードMは、スリープ区間(S)となる。なお、データ送受信制御部148は、スリープ区間(S)に入る前に次のスロットを開始するためのウェイクアップ区間開始時刻を算出する。そして、タイマ45#に対して算出した時刻を設定する。そして、タイマ45#は、算出した時刻となるまでカウントし、算出した時刻となった場合に電源管理部46に通知する。これにより、電源管理部46は、タイマ45#からの通知に従って低消費電力状態から通常電力状態に復帰させる。そして、データ送受信制御部148は、低消費電力状態から通常電力状態への復帰の後、次のスロットを開始する。上記の処理は、各スロット毎に繰り返し実行される。当該処理により管理ノードMは、送信区間(T)、受信区間(R)およびウェイクアップ区間(W)以外の区間は、スリープ区間(S)として間欠動作させて電源の供給を停止する低消費電力状態に移行させることが可能であり、消費電力を抑制することが可能である。
【0257】
そして、次に、ステップS18において、データ送受信制御部148は、1スーパフレーム区間に次のスロットがあるかどうかを判断する(ステップS18)。
【0258】
ステップS18において、データ送受信制御部148は、1スーパフレーム区間に次のスロットがあると判断した場合(ステップS18においてYES)には、次のステップS20に進む。
【0259】
一方、ステップS18において、データ送受信制御部148は、1スーパフレーム区間に次のスロットがないと判断した場合(ステップS18においてNO)には、ステップS4に戻る。すなわち、1スーパフレーム区間におけるデータ通信の1サイクルが終了して次のサイクルへと移行する。その際、再び、ステップS4において、チャネル設定部144は、電界強度測定部46#を用いて電界強度を測定して、電界強度の測定に従った適切なチャネルを通信部49に対して設定する。したがって、電波状況が悪くなった場合には、適切なチャネルに変更することが可能である。なお、チャネル設定部144によりチャネルを別チャネルに変更する場合には、以前のチャネルでデータ通信を実行していた子ノードSとのデータ通信は一時的に実行できなくなるが、スロット割当情報等を保持しておくことにより早期にネットワークを再構築することが可能である。
【0260】
ステップS18において、データ送受信制御部148は、1スーパフレーム区間に次のスロットがあると判断した場合(ステップS18においてYES)には、次にスロット追加フラグがオンされているかどうかを判断する(ステップS20)。
【0261】
ステップS20において、データ送受信制御部148は、スロット追加フラグがオンされていると判断した場合(ステップS20においてYES)には、データ送受信制御部148は、スロットに対応する同期フレーム(変更通知有)を生成する(ステップS21)。具体的には、図10(B)で説明した報知情報フレーム更新番号が更新された報知情報フレームが生成される。
【0262】
そして、次に、データ送受信制御部148は、通信部49を介してスロットに対応する同期フレーム(変更通知有)を送信する(ステップS22)。当該同期フレームを受信することにより、1スーパフレーム区間に変更があることを子ノードは判断することが可能である。
【0263】
ステップS20において、データ送受信制御部148は、スロット追加フラグがオンされていないと判断した場合(ステップS20においてNO)には、データ送受信制御部148は、スロットに対応する同期フレームを生成する(ステップS21)。具体的には、図10(B)で説明した報知情報フレーム更新番号は更新されない報知情報フレームが生成される。
【0264】
そして、次に、データ送受信制御部148は、通信部49を介してスロットに対応する同期フレームを送信する(ステップS24)。
【0265】
そして、次に、データ送受信制御部148は、通信部49を介してスロットに対応する同期フレームに対して応答フレームの受信があったどうかを判断する(ステップS26)。具体的には、図11(B)で説明した応答フレームを受信したかどうかを判断する。
【0266】
ステップS26において、データ送受信制御部148は、応答フレームの受信があったと判断した場合(ステップS26においてYES)には、応答フレームを取得する(ステップS28)。取得した応答フレームは、データ送受信制御部148の指示に従って、一例として、RAM42等の記憶領域に格納されるものとする。
【0267】
当該記憶領域に格納された各スロットに対応する応答フレームは、一例として、子ノードの存在確認として利用することが可能である。また、子ノードにセンサを設けるとともに、応答フレームのユーザデータの中に当該子ノードに設けたセンサのデータを含めることにより管理ノードMは、ネットワークが構成された各子ノードのセンサデータを取得して周囲の状況等を把握することも可能である。
【0268】
一方、ステップS26において、データ送受信制御部148は、応答フレームの受信がなかったと判断した場合(ステップS26においてNO)には、エラー判定とする(ステップS30)。例えば、エラー判定となる原因として、子ノードSの故障あるいはバッテリ交換の必要が生じた場合等が考えられる。
【0269】
なお、エラー判定となった結果は、データ送受信制御部148の指示に従って、一例として、RAM42等の記憶領域に格納されるものとする。当該エラー判定となった結果は、後述するスーパフレーム区間の設定処理の際に用いられる。
【0270】
そして、再びステップS18に戻る。なお、上述したように、各スロットにおける通信部49を介した受信区間Rが終了した場合に、データ送受信制御部148は、電源管理部46に対して各部への電源の供給の停止を指示する低消費電力状態への移行を指示する。これにより、管理ノードMは、スリープ区間(S)となる。
【0271】
ステップS18において、データ送受信制御部148は、1スーパフレーム区間に次のスロットがあるかどうかを判断(ステップS18)し、上記と同様の処理を繰り返す。すなわち、スロットが有る場合には、スロットに対応する同期フレームを生成して、通信部49を介して送信する。
【0272】
そして、全てのスロットに対する処理が終了した後、ステップS4に戻り、電界強度の測定をし、チャネルを設定した後、スーパフレーム区間の設定処理を実行する。
【0273】
なお、本例においては、1スーパフレーム区間におけるデータ通信の1サイクルが終了した場合に、ステップS4に戻って、電界強度の測定をし、チャネルを設定する場合について説明した。一方で、電界強度の測定およびチャネルの設定を1サイクル毎ではなく、複数サイクルが終了した場合に、実行するようにしても良い。
【0274】
図13は、本発明の実施の形態1に従うスーパフレーム区間の設定処理について説明するフロー図である。
【0275】
当該処理は、スーパフレーム設定部146で実行される処理であり、CPU41がROM43に格納されているソフトウェアプログラムを読み込むことにより実現されるものである。
【0276】
図13を参照して、まず、スーパフレーム設定部146は、1スーパフレーム区間に設定されている1つのスロットを選択する。この場合、選択するスロットは、スロット0以外のものとする。
【0277】
そして、次に、スーパフレーム設定部146は、選択したスロットに対応したエラー判定があるかどうかを判断する(ステップS34)。具体的には、RAM42等の記憶領域に格納されたエラー判定結果に基づいて、選択されたスロットに対応するエラー判定があるかどうかを判断する。
【0278】
ステップS34において、選択したスロットに対応したエラー判定があると判断した場合には、次のステップS36に進む。一方、ステップS34において、選択したスロットに対応したエラー判定がないと判断した場合には、ステップS40に進む。
【0279】
そして、次に、スーパフレーム設定部146は、前回からのエラー判定が所定回数以上継続しているかどうかを判断する(ステップS36)。
【0280】
ステップS36において、スーパフレーム設定部146は、前回からのエラー判定が所定回数以上継続していると判断した場合(ステップS36においてYES)には、スロットを削除する(ステップS38)。そして、次にステップS40に進む。すなわち、データ通信を継続できない状態にあるスロットについては削除することにより不要なスロットを削除してネットワーク内の通信負荷を軽減することが可能である。
【0281】
一方、ステップS36において、スーパフレーム設定部146は、前回からのエラー判定が所定回数以上継続していないと判断した場合(ステップS36においてNO)には、ステップS40に進む。
【0282】
次に、ステップS40において、スーパフレーム設定部146は、他のスロットがあるかどうかを判断する(ステップS40)。具体的には、1スーパフレーム区間に設定されている別のスロットがあるかどうかを判断する。別のスロットがあると判断した場合(ステップS40においてYES)には、ステップS32に戻り、当該スロットを選択して、上記の処理を繰り返す。
【0283】
ステップS40において、スーパフレーム設定部146は、他のスロットがないと判断された場合(ステップS40においてNO)には、スロット追加フラグがオンされているかどうかを判断する(ステップS42)。
【0284】
ステップS42において、スーパフレーム設定部146は、スロット追加フラグがオンされていると判断された場合(ステップS42においてYES)には、1スロットを追加する(ステップS44)。
【0285】
一方、スーパフレーム設定部146は、スロット追加フラグがオンされていないと判断された場合(ステップS42においてNO)には、ステップS44をスキップして、ステップS46に進む。
【0286】
そして、次に、スーパフレーム設定部146は、スロット数の変更があったかどうかを判断する(ステップS46)。
【0287】
ステップS46において、スーパフレーム設定部146は、スロット数の変更があったと判断した場合(ステップS46においてYES)には、スーパフレーム区間を更新する(ステップS48)。
【0288】
たとえば、1つのスロットの削除があった場合には、当該スロットを削除したスーパフレーム区間に設定する。また、1スロットの追加が有った場合には、当該スロットを追加したスーパフレーム区間に設定する。なお、当該スーパフレーム区間の更新に従って報知情報フレームの生成の際に、図10(A)で説明したスーパフレーム構成情報d1が更新される。例えば、1スーパフレーム区間のスロット数、スロット番号、報知情報フレーム更新番号が更新される。また、1スロットの追加に従って、スロット割当情報d5が更新される。例えば、スロットと、スロット追加フラグをオンにした登録要求フレームを送信した子ノードのID情報とが対応付けて格納される。なお、スロットの割当は、登録順ではなく、動的に変更することが可能であり、スーパフレームが更新される毎にスーパフレームを構成するスロットと各子ノードSとの割当の関係を変更するようにすることも可能である。当該処理により、管理ノードMと子ノードSとの間のデータ通信におけるセキュリティを強化することも可能である。
【0289】
一方、ステップS46においてスロット数の変更がなかったと判断された場合(ステップS46においてNO)には、ステップS48における処理をスキップして終了する(リターン)。
【0290】
当該処理に基づいて、1スーパフレーム区間が設定および更新される。そして、当該設定および更新された1スーパフレーム区間に基づいて報知情報フレームが生成される。
【0291】
すなわち、当該処理に基づいて、1スーパフレーム区間が更新され、ネットワークの構成が動的に変更されることになる。
【0292】
次に、本発明の実施の形態1に従う子ノードのデータ通信について説明する。
図14は、子ノードSにおけるデータ通信の処理の流れについて説明するフロー図である。
【0293】
図14を参照して、まず電源が投入された場合に、CPU11はROM13に格納されたソフトウェアプログラムを読込むことにより当該フローにおけるデータ通信を開始する。
【0294】
まず、CPU11は、通信部15に対してデータ通信のための初期設定を実行する(ステップS52)。なお、CPU11は、電源管理部14に通信部15への電源の供給を指示するものとする。
【0295】
そして、CPU11は、次に、管理ノードMのサーチを開始する(ステップS54)。
図15は、本発明の実施の形態1に従うサーチ開始の処理を説明するフロー図である。
【0296】
CPU11はROM13に格納されたソフトウェアプログラムを読込むことにより以下における処理を実行する。
【0297】
図15を参照して、CPU11は、通信部15に対してデータ送受信における初期チャネルを設定する(ステップS70)。
【0298】
次に、CPU11は、通信部15を介して、管理ノードMからの報知情報フレームを受信したかどうかを判断する(ステップS72)。
【0299】
ステップS72において、CPU11は、通信部15を介して、管理ノードMからの報知情報フレームを受信したと判断した場合(ステップS72においてYES)には、処理を終了する(リターン)。すなわち、当該設定されたチャネルで管理ノードMとのデータ通信が可能であることを確認したため次の処理に進む。
【0300】
一方、CPU11は、ステップS72において、管理ノードMからの報知情報フレームを受信できないと判断した場合には、次に、所定期間が経過したかどうかを判断する(ステップS74)。
【0301】
ステップS74において、CPU11は、所定期間が経過していないと判断した場合(ステップS74においてNO)には、再び、ステップS72に戻り、報知情報フレームを受信できるかどうかを判断する。
【0302】
一方、ステップS74において、CPU11は、所定期間が経過したと判断した場合(ステップS74においてYES)には、データ送受信におけるチャネルを変更する(ステップS76)。そして再びステップS72に戻り、当該変更したチャネルで報知情報フレームの受信が可能であるかどうかを確認する。そして、報知情報フレームの受信が可能となるまでチャネルを変更する。
【0303】
再び、図14を参照して、次に、CPU11は、報知情報フレームの受信に基づいて、タイミングの設定処理を実行する(ステップS56)。
【0304】
具体的には、受信した報知情報フレームのスーパフレーム構成情報d1に含まれている1スーパフレーム区間のスロット数、タイミング情報d2に含まれている1スロットの区間の長さ、受信区間の長さおよびウェイクアップ区間の長さに従って、次のフレームを受信するためのウェイクアップ区間開始時刻をタイマ17に設定する。また、管理ノードMとのデータ通信における受信および送信区間のタイミングを設定する。
【0305】
図16は、子ノードSにおける受信区間および送信区間の設定を説明する図である。
図16を参照して、ここでは、フレームを受信するフレーム受信区間までの間に受信可能状態である通常電力状態に設定するためのウェイクアップ区間、管理ノードMからの報知情報フレーム等のデータフレームを受信するためのフレーム受信区間、応答フレームを送信するフレーム送信区間、低消費電力状態であるスリープ区間がそれぞれ示されている。なお、ウェイクアップ区間、フレーム受信区間およびフレーム送信区間は、電源管理部14により、子ノードSの各部に電力が供給されている状態(電源ON)であり、スリープ区間は通常電力状態に復帰するために必要な電力供給以外は、各部に対する電力の供給が停止されている状態(電源OFF)である。
【0306】
ウェイクアップ区間は、図10(A)で説明したタイミング情報d2に含まれている、ウェイクアップ区間を規定するパラメータに従って設定される。
【0307】
フレーム受信区間は、図10(A)で説明したタイミング情報d2に含まれている、下りフレーム受信区間の長さに従って設定される。
【0308】
また、フレーム送信区間は、図10(A)で説明したタイミング情報d2に含まれている、上りフレーム受信区間の長さに従って設定される。
【0309】
また、スリープ区間は、図10(A)で説明したタイミング情報d2に含まれている、1スロットの区間の長さから、フレーム受信区間およびフレーム送信区間以外の残りの区間に設定される。
【0310】
なお、本例においては、電力が供給されている状態として、フレーム送信区間が設けられている場合について説明しているが、フレームを送信しない場合には、ウェイクアップ区間とフレーム受信区間のみとなる。
【0311】
したがって、子ノードSにおいても親ノードMと同様に、電源管理部14から常に電力の供給を受けない。具体的には、ウェイクアップ区間、フレーム受信区間およびフレーム送信区間以外の区間は、スリープ区間として電力の供給を受けない。したがって、子ノードSにおける消費電力を抑制することが可能である。なお、子ノードSにセンサ等が設けられている場合には、電力の供給が必要な部位にのみ電力を供給し、それ以外の各部については電力の供給を停止することにより、子ノードS全体としての消費電力を抑制することが可能である。
【0312】
再び、図14を参照して、次に、CPU11は、タイミングの設定処理を実行した後、報知情報フレームを受信したかどうかを判断する(ステップS58)。
【0313】
そして、CPU11は、ステップS58において、報知情報フレームを受信したと判断した場合(ステップS58においてYES)には報知情報フレームを分析する(ステップS60)。
【0314】
具体的には、報知情報フレームに含まれているスロット割当情報を分析する。
そして、CPU11は、報知情報フレームを分析した結果、スロット割当情報に自己のIDに対応するスロットの割当てがあるかどうかを判断する(ステップS62)。
【0315】
CPU11は、ステップS62において、スロット割当情報に自己のIDに対応するスロットの割当てがあると判断した場合(ステップS62においてYES)には、同期モードに移行する(ステップS64)。同期モードについては後述する。
【0316】
一方、CPU11は、ステップS62において、スロット割当情報に自己のIDに対応するスロットの割当てがないと判断した場合(ステップS62においてNO)には、登録要求フレームを送信する(ステップS66)。
【0317】
そして、再び、ステップS56に戻り、報知情報フレームに基づいて、次の受信するフレームのタイミングを設定して、上記処理を繰り返す。
【0318】
一方、ステップS58において、CPU11は、報知情報フレームの受信が無いと判断した場合(ステップS58においてNO)には、エラー判定とする(ステップS67)。なお、エラー判定となった結果は、CPU11の指示に従って、一例として、RAM12等の記憶領域に格納されるものとする。当該エラー判定となった結果は、後述するエラー処理の際に用いられる。
【0319】
そして、CPU11は、エラー処理を実行する(ステップS68)。エラー処理については後述する。
【0320】
次に、本発明の実施の形態1に従う同期モードについて説明する。
図17は、本発明の実施の形態1に従う同期モードの処理を説明するフロー図である。
【0321】
CPU11はROM13に格納されたソフトウェアプログラムを読込むことにより以下における処理を実行する。
【0322】
図17を参照して、CPU11は、報知情報フレームに含まれるタイミング情報と、スーパフレーム構成情報あるいはスロット割当情報とに基づいて、スロットの割当に従ったタイミングを設定する(ステップS90)。具体的には、例えば、自己のIDに対応してスロット1が割り当てられた場合には、受信した報知情報フレームのスーパフレーム構成情報d1に含まれている1スーパフレーム区間のスロット数あるいは、スロット割当情報d5に含まれている自己に割り当てられたスロットの番号、タイミング情報d2に含まれている1スロットの区間の長さ、受信区間の長さおよびウェイクアップ区間の長さに従って、自己に割り当てられたスロット(ここではスロット1)に対応する同期フレームを受信するための受信タイミングを設定する。具体的には、同期フレームを受信するためのウェイクアップ区間開始時刻を算出して、タイマ設定する。他のスロットに割り当てられている場合についても同様である。
【0323】
例えば、報知情報フレームを受信した同じスーパフレーム区間における自己に割り当てられたスロット(ここではスロット1)に対応する同期フレームを受信するためのタイミングとしてのウェイクアップ区間開始時刻は、「スロット数(割り当てられたスロット番号)×1スロット区間の長さ−ウェイクアップ時間―受信区間の長さ」として算出する。
【0324】
また、次のスーパフレーム区間における自己に割り当てられたスロットに対応する同期フレームを受信するためのタイミングとしてのウェイクアップ区間開始時刻は、「スロット数(1スーパフレーム区間内のスロット数)×1スロット区間の長さ−ウェイクアップ時間―受信区間の長さ」として算出する。
【0325】
そして、CPU11は、設定されたタイミングに従って同期フレームを受信したかどうかを判断する(ステップS98)。
【0326】
そして、ステップS98において、CPU11は、設定されたタイミングに従って同期フレームを受信した場合(ステップS98においてYES)には、応答フレームを送信する(ステップS100)。
【0327】
そして、次に、CPU11は、同期フレームの中に変更通知があるかどうかを判断する(ステップS102)。具体的には、上述したようにスーパフレーム構成情報の報知情報フレーム更新番号が更新されたかどうかに基づいて判断する。報知情報フレーム更新番号が更新されたと判断した場合には変更通知があると判断する。一方、報知情報フレーム更新番号が更新されていないと判断した場合には変更通知はないと判断する。
【0328】
ステップS102において、CPU11は、同期フレームの中に変更通知がないと判断された場合(ステップS102においてNO)には、再びステップS90に戻り、スロットの割当に従ったタイミング設定に従って同期フレームの受信に応答して、応答フレームを送信する。
【0329】
したがって、変更通知があるまで当該同期モードにおいて、割り当てられたスロットを用いた管理ノードMと子ノードSとのデータ通信が実行される。
【0330】
一方、ステップS102において、CPU11は、同期フレームの中に変更通知があると判断された場合(ステップS102においてYES)には、同期モードの処理を終了する(リターン)。すなわち、同期モードを終了して、再び、図14のステップS56に戻る。すなわち、再び、以前に受信した報知情報フレームのスーパフレーム構成情報d1、タイミング情報d2およびスロット割当情報d5に基づいて、次のスーパフレーム区間における報知情報フレームを受信するためのタイミングとしてのウェイクアップ区間開始時刻を算出して、当該タイミングをタイマ設定する。
【0331】
例えば、次のスーパフレーム区間における報知情報フレームを受信するためのタイミングとしてのウェイクアップ区間開始時刻は、「スロット数(1スーパフレーム区間内の自身を含めた残りのスロット数)×1スロット区間の長さ−ウェイクアップ時間−受信区間の長さ」として算出する。
【0332】
そして、ステップS58において、ウイェクアップ区間開始後の受信区間において、再び報知情報フレームを受信したかどうかを判断する。
【0333】
そして、報知情報フレームを受信した場合(ステップS58においてYES)には、報知情報フレームを分析して、1スーパフレーム区間が変更された場合においても、自己が割当られたスロットに同期した上述した同期モードにおけるデータ通信を実行する。
【0334】
本例においては、各子ノードSが変更通知に従って一斉に次のスーパフレーム区間における報知情報フレームを受信するためのタイミングを算出して、報知情報フレームを受信する。そして、当該報知情報フレームに基づいて、各子ノードがそれぞれ自己が割当られたスロットに同期した上述した同期モードにおけるデータ通信を実行する。したがって、管理ノードMは、各子ノードのそれぞれに対して受信するタイミングを規定する必要がなく、簡易な方式で各子ノードの受信するタイミングを変更することが可能である。
【0335】
一方、ステップS98において、CPU11は、設定された受信タイミングに従って同期フレームを受信しなかったと判断した場合(ステップS98においてNO)には、エラー判定とする(ステップS103)。なお、エラー判定となった結果は、CPU11の指示に従って、一例として、RAM12等の記憶領域に格納されるものとする。当該エラー判定となった結果は、後述するエラー処理の際に用いられる。
【0336】
そして、エラー処理を実行する(ステップS104)。エラー処理については後述する。そして、ステップS98に戻る。したがって、エラー処理の場合には、応答フレームの送信を停止して消費電力を低減することも可能である。
【0337】
エラー処理としては、図14におけるステップS68における処理および図17のステップS104における処理があるがともに同様の処理である。
【0338】
図18は、本発明の実施の形態1に従うエラー処理を説明するフロー図である。
CPU11はROM13に格納されたソフトウェアプログラムを読込むことにより以下における処理を実行する。
【0339】
図18を参照して、まず、CPU11は、エラー回数をカウントする(ステップS110)。具体的には、RAM12等に格納されているエラー判定となった結果の回数をカウントする。
【0340】
そして、次にCPU11は、所定回数以上エラー回数がカウントされているかどうかを判断する(ステップS112)。一例として、所定回数として3回に設定するものとする。すなわち、CPU11は、3回以上エラー回数がカウントされたと判断した場合(ステップS112においてYES)には「A」に進む。
【0341】
一方、CPU11は、所定回数以上エラー回数がカウントされていないと判断した場合(ステップS112においてNO)には、エラー処理を終了する(リターン)。すなわち、この場合においては、未だ所定回数以上、エラー回数がカウントされていないため再度、同様の処理を繰り返してエラー判定となるかどうかを確認する。
【0342】
ステップS112において、3回以上エラー回数がカウントされたと判断した場合には「A」である図14のステップS54のサーチを開始する。したがって、再び、チャネルの設定が報知情報フレームを受信するまで実行される。エラー判定の原因としては、通信障害等により管理ノードMにおけるデータ通信のチャネルが変更されて報知情報フレーム等が受信できない場合が想定される。
【0343】
したがって、チャネルが変更された場合には、同一のチャネルに設定しなければデータ通信を実行することができないため当該処理により適切なチャネルに再設定してデータ通信を実行することが可能となる。
【0344】
図19は、管理ノードMにおけるデータ通信のチャネルが変更された場合の子ノードS0のチャネルの変更について説明する図である。なお、本図以降、図示は省略しているが、スリープ区間と送信区間(又は受信区間)との間にはウェイクアップ区間が含まれ、図6〜9等での説明と同様に、スリープ区間からの復帰のためのタイマへの時間設定はウェイクアップ区間を考慮して決定する。
【0345】
図19を参照して、子ノードS0は、チャネル1で管理ノードMと時刻t60から開始されるスロット1を用いたデータ通信を実行している場合が示されている。
【0346】
そして、時刻t61において、管理ノードMは、電界強度の測定に従った適切なチャネルとして、チャネル3に変更した場合が示されている。
【0347】
時刻t62において、子ノードS0は、管理ノードMがチャネル3を用いたデータ通信に変更したため管理ノードMからのデータを受信することができない場合が示されている。当該状態が繰り返されることにより図18で説明したエラー処理に基づいて、再び図15で説明した管理ノードを検索するサーチが開始される。
【0348】
本例においては、時刻t63において、子ノードSの通信部15は、チャネル2に変更して報知情報フレームを受信しようとする場合が示されている。管理ノードMは、チャネル3を用いたデータ通信に変更したためこの場合においても管理ノードMからのデータを受信することができない場合が示されている。
【0349】
そして、時刻t65において、さらに、子ノードSの通信部15は、チャネル3で報知情報フレームを受信しようとする場合が示されている。
【0350】
そして、時刻t66において、管理ノードMから報知情報フレームを受信したものとする。すなわち、時刻t66に管理ノードMを検出したものとする。
【0351】
これに従って、子ノードS0は報知情報フレームを分析して、スロット割当情報が有るかどうかを判断する。そして、スロットの割当(本例においてはスロット1)があると判断した場合には、上述したように報知情報フレームに含まれるタイミング情報と、スロット割当情報とに基づいて、スロットの割当に従ったタイミングを設定する。具体的には、例えば、自己のIDに対応してスロット1が割り当てられた場合には、受信した報知情報フレームのスロット割当情報d5に含まれている自己に割り当てられたスロットの番号およびタイミング情報d2に含まれている1スロットの区間の長さ、受信区間の長さおよびウェイクアップ区間の長さに従って、自己に割り当てられたスロット(ここではスロット1)に対応する同期フレームを受信するための受信タイミングを設定する。
【0352】
そして、時刻t68において、管理ノードMからスロット1を用いた同期フレームを受信する。そして、時刻t69において、応答フレームを管理ノードMに送信して、以降、チャネル3によるスロット1を用いたデータ通信を再開する。
【0353】
したがって、通信障害等により管理ノードMにおけるデータ通信のチャネルが変更されて、一時的に管理ノードMとのデータ通信が切断された場合であってもチャネルを変更することによりネットワークを再構成することが可能である。すなわち、再びデータ通信を実行することが可能となる。
【0354】
上述したように、本発明の実施の形態1に従う方式により、ネットワークが自動的に再構成および再構築が可能となる。
【0355】
また、管理ノードMは、子ノードSが領域10外に移動するような場合には、ネットワークから外れたものとして管理することが可能である。一方で、新たに領域10内に子ノードSが移動するような場合には、ネットワークに新たに登録して管理することが可能であり、製造ライン等の部品等に子ノードSを装着することにより当該領域10内における部品の位置および状態等を子ノードSからの応答フレームによって管理ノード側は容易に管理することが可能である。
【0356】
(実施の形態2)
上記の実施の形態1においては、管理ノードMからのみ報知情報フレームが送信されて、管理ノードMからのブロードキャスト通信が可能な範囲にある子ノードSを管理(ネットワークを形成)する方式について説明した。
【0357】
本実施の形態2においては、管理ノードMからのブロードキャスト通信が可能な範囲ではない圏外にある子ノードに対しても管理可能な方式について説明する。
【0358】
図20は、本発明の実施の形態2に従うネットワークを形成するノードの概略を説明する図である。
【0359】
図20を参照して、本例においてはある領域10#に設けられた管理ノードMと、複数の子ノードS0〜S4と、中継ノードR0,R1とが設けられている場合が示されている。例えば、領域10#としては、ある部屋内を想定しているが、管理ノードMからのブロードキャスト通信によって届かない範囲の領域も想定しており、中継ノードR0,R1も含めたブロードキャスト通信によって届く範囲の領域を想定している。
【0360】
本発明の実施の形態2に従う管理ノードMおよび各子ノードSについては、実施の形態1で説明した管理ノードMおよびSと同様の構成であるためその説明は省略する。
【0361】
本発明の実施の形態2においては、中継ノードR0,R1(総称して中継ノードRとも称する)を新たに設けた場合について説明する。中継ノードR0,R1は、管理ノードMと、管理ノードMからのブロードキャスト通信によって届かない範囲にある子ノード(圏外ノードとも称する)との間のデータ通信を中継する機能(中継機能とも称する)を有する。なお、中継ノードRは、所定条件が満たされる場合に中継機能を開始し、当該中継機能が開始されない場合には、単なる子ノードとして動作する。なお、各子ノードS、中継ノードRは、それぞれを識別する固有のID(Identification)情報を有しているものとする。
【0362】
図21は、本発明の実施の形態2に管理ノードMおよび中継ノードRから送信される報知情報フレームを説明する図である。
【0363】
図21を参照して、ここでは、ブロードキャスト通信として、管理ノードMおよび中継ノードRから報知情報フレームが各子ノードSに送信される。
【0364】
図21に示されるように、中継ノードRからも報知情報フレームが送信されることにより、報知情報フレームが送信される領域が拡大し、圏外ノードも報知情報フレームを受信することが可能となる。
【0365】
そして、各子ノードSは、管理ノードMあるいは中継ノードRから送信されたブロードキャスト通信として送信された報知情報フレームを受信して、応答フレームとして、ネットワーク接続参加への登録要求フレームを送信する。
【0366】
管理ノードMのハードウェアの構成は、実施の形態1の図4で説明したのと同様であるのでその詳細な説明は繰り返さない。また、子ノードSの実施の形態1の図5で説明したのと同様であるのでその詳細な説明は繰り返さない。
【0367】
図22は、本発明の実施の形態2に従う中継ノードRの構成を示す図である。
図22(A)を参照して、本発明の実施の形態2に従う中継ノードRは、図5で説明した子ノードSと比較して、CPU11をCPU11#に置換するとともに、さらに、電界強度測定部20をさらに設けた点が異なる。他の点については同様であるのでその詳細な説明は繰り返さない。
【0368】
中継ノードRのCPU11#は、ROM13に格納されているソフトウェアプログラムを読み込むことにより、中継ノードR全体を制御する。CPU11#は、子ノードとして管理ノードMとの間で通信部15を介したデータ通信を実行するとともに、自己が管理ノードとなって子ノードSとの間で通信部49を介したデータ通信の中継処理を実行する。
【0369】
電界強度測定部20は、データ通信の際における外部環境の電界強度を測定する。
図22(B)を参照して、ここでは、CPU11#の管理ノードとして機能する場合における機能ブロック図が示されている。
【0370】
具体的には、CPU11#は、チャネル設定部22と、サブスーパフレーム設定部24と、データ送受信制御部26とを含む。
【0371】
チャネル設定部22は、電界強度測定部20において測定した電界強度に従ってデータ通信に最適なチャネル(周波数帯)を設定する。
【0372】
サブスーパフレーム設定部24は、通信部15を介した子ノード(圏外ノード)Sとの間での1サイクルのデータ通信の各処理の内容を規定する。本例において、各処理のことをスロットとも称する。
【0373】
データ送受信制御部26は、サブスーパフレーム設定部24で設定されたサブスーパフレームに従った通信部15を介したデータ通信を子ノードSとの間で実行する。
【0374】
図23は、本発明の実施の形態2に従う中継ノードR0をネットワークに登録する場合の処理の流れについて説明する図である。なお、中継ノードRは、上述したように中継機能を開始しない場合には、子ノードSと同様に動作する。なお、上述したように図示は省略するが、スリープ区間と送信区間(又は受信区間)との間にはウェイクアップ区間が含まれるものとする。スリープ区間からの復帰のためのタイマへの時間設定はウェイクアップ区間を考慮して決定する。
【0375】
図23を参照して、まず、管理ノードMから1スーパフレーム区間内のスロット0を使用して報知情報フレームが送信される。この場合、管理ノードMに中継ノードRが未登録であるため、スーパフレーム構成情報の1スーパフレーム区間のスロット数は1、スロット割当情報には、中継ノードRのIDは未格納である。
【0376】
本例においては、スーパフレーム区間td0〜td5のスロット0において管理ノードMから報知情報フレームが送信される場合が示されている。
【0377】
ここで、たとえば時刻t101において、管理ノードMに未登録である中継ノードR0の通信部15が起動され、管理ノードMを検索するための受信区間が開始される。
【0378】
中継ノードR0は、時刻t102において、スーパフレーム区間td1のスロット0において送信された管理ノードMからの報知情報フレームを受信する。すなわち、中継ノードR0は、時刻t102に管理ノードMを検出したと判断する。
【0379】
中継ノードR0は、管理ノードMより受信した報知情報フレームに含まれるスーパフレーム構成情報、タイミング情報に基づいて、上述したように次のスーパフレーム区間td3における報知情報フレームを受信するためのタイミングを算出してタイマ17を設定する。
【0380】
また、中継ノードR0は、時刻t103よりスリープ区間(S)を開始し低消費電力状態へ移行する。
【0381】
中継ノードR0は、タイマ17を用いてカウントしたスリープ区間(S)満了後、上述したように低消費電力状態より通常電力状態(フレームのデータ送受信が可能な状態)へと復帰し、時刻t104より、管理ノードMから送信される報知情報フレームの受信を開始するための受信区間(R)を開始する。
【0382】
中継ノードR0は、時刻t104より開始した受信区間(R)にて管理ノードMから送信された報知情報フレームを受信し、受信した報知情報フレームに含まれているスロット割当情報に自己のIDが格納されているか否かにより自己が管理ノードMに登録されているか否かを判断する。
【0383】
中継ノードR0は、自己が管理ノードMに未登録であると判断した場合に、管理ノードMより受信した報知情報フレームに含まれるスーパフレーム構成情報、タイミング情報に基づいて、次のスーパフレーム区間td4における報知情報フレームを受信するためのタイミングを算出してタイマ17を設定する。
【0384】
そして、中継ノードR0は、時刻t105において、管理ノードMへ自己のIDを格納した登録要求フレームの送信を開始する。そして、登録要求フレームの送信完了後、時刻t106からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0385】
管理ノードMにおいては、中継ノードR0から受信した登録要求フレームに格納されているIDが、スロット割当情報に格納済みでない場合には、報知情報フレームのスーパフレーム構成情報のスロット数を加算する。具体的には、1スーパフレーム区間に中継ノードR0とのデータ通信に用いられる1スロットを追加する処理が実行される。また、スロット割当情報に登録要求フレームに格納されていた中継ノードR0のIDを格納する処理が実行される。
【0386】
中継ノードR0は、タイマ17を用いてカウントしたスリープ区間(S)満了後、上述したように低消費電力状態より通常電力状態へと復帰し、時刻t107より、管理ノードMから送信される報知情報フレームの受信を開始するための受信区間(R)を開始する。
【0387】
中継ノードR0は、時刻t107より開始した受信区間(R)にて、受信した報知情報フレームに含まれているスロット割当情報に自己のIDが格納されているか否かに基づいて自己がネットワークに登録されているか否かを判断する。
【0388】
中継ノードR0は、自己がネットワークに登録されていると判断した場合には、登録要求フレームは送信しない。
【0389】
そして、中継ノードR0は、自己がネットワークに登録されていると判断した場合、管理ノードMから自己に割り当てられたスロットを用いたデータ通信を実行するため、管理ノードMより受信した報知情報フレームに含まれるタイミング情報およびスロット割当情報に基づいて、同じスーパフレーム区間における自己に割り当てられたスロット(ここではスロット1)に対応する同期フレームを受信するためのタイミングを算出してタイマ17を設定する。
【0390】
そして、中継ノードR0は、時刻t107#からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0391】
中継ノードR0は、タイマ17を用いてカウントしたスリープ区間(S)満了後、上述したように低消費電力状態より通常電力状態へと復帰し、時刻t108より、管理ノードMから自己に割り当てられたスロット(本例ではスロット1)を使用して送信される同期フレームの受信を開始するための受信区間(R)を開始する。
【0392】
中継ノードR0は、時刻t108より開始した受信区間(R)にて管理ノードMから送信された同期フレームを受信し、受信した同期フレームに自己のIDが格納されているか否かに基づいて自己に割り当てられたスロットか否かを判断する。本例では、自己のIDが格納されているものとする。
【0393】
中継ノードR0は、受信した同期フレームに自己のIDが格納されていると判断した場合には、管理ノードMより、既に受信済みの報知情報フレームに含まれるスーパフレーム構成情報およびタイミング情報に基づいて、次のスーパフレーム区間における自己に割り当てられたスロットを使用して管理ノードMより送信される同期フレームを受信するためのタイミングを算出してタイマ17を設定する。
【0394】
そして、中継ノードR0は、時刻t109において、管理ノードMへ自己のIDを格納した応答フレームの送信を開始する。そして、応答フレームの送信完了後、時刻t110からスリープ区間(S)を開始し低消費電力状態へ移行する。すなわち、以降、自己に割り当てられたスロット(本例ではスロット1)のみを使用して管理ノードMとの間でのデータ通信を実行し、スーパフレームの構成の変更が通知されるまで報知情報フレームの受信は必要としない。
【0395】
管理ノードMにおいては、中継ノードR0から受信した応答フレームに格納されている中継ノードR0のIDが、同スロットで既に送信済みの同期フレームに格納した、割り当てた中継ノードR0のIDと一致した場合、中継ノードR0がネットワーク内で正常に稼動していると判断する。
【0396】
なお、以下においても同様に応答フレームを受信するたびに管理ノードMは、同様の判断を行う。
【0397】
中継ノードR0は、タイマ17を用いてカウントしたスリープ区間(S)満了後、上述したように低消費電力状態より通常電力状態へと復帰し、時刻t112より、管理ノードMから自己に割り当てられたスロット(本例ではスロット1)を使用して送信される同期フレームの受信を開始するための受信区間(R)を開始する。
【0398】
中継ノードR0は、時刻t112より開始した受信区間(R)にて管理ノードMから送信された同期フレームを受信し、受信した同期フレームに自己のIDが格納されているか否かに基づいて自己に割り当てられたスロットか否かを判断する。本例では、自己のIDが格納されているものとする。
【0399】
中継ノードR0は、受信した同期フレームに自己のIDが格納されていると判断した場合には、管理ノードMより、既に受信済みの報知情報フレームに含まれているスーパフレーム構成情報およびタイミング情報に基づいて、次のスーパフレーム区間における自己に割り当てられたスロットを使用して管理ノードMより送信される同期フレームを受信するためのタイミングを算出してタイマ17を設定する。
【0400】
そして、中継ノードR0は、時刻t114において、管理ノードMへ自己のIDを格納した応答フレームの送信を開始する。そして、応答フレームの送信完了後、スリープ区間(S)を開始し低消費電力状態へ移行する。以降、スーパフレームの構成が変わらない限り同様の動作を繰り返し行う。
【0401】
したがって、中継ノードR0についても子ノードSと同様にネットワークに登録されて管理ノードMとの間での同期したデータ通信を実行する。
【0402】
図24は、本発明の実施の形態2に従う中継ノードR0を用いて圏外ノードをネットワークに登録する場合の処理の流れについて説明する図である。なお、中継ノードRとは、管理ノードMとの関係においては、子ノードSとして動作する。また、中継ノードR0は、圏外ノードS3に対して管理ノードとして動作する。
【0403】
図24を参照して、まず、管理ノードMは、1スーパフレーム区間としてスロット0〜3のスロットを設定しているものとする。
【0404】
スロット1は、子ノードS0に割り当てているものとする。また、スロット2は、中継ノードR0に割り当てているものとする。また、スロット3は、子ノードS1に割り当てているものとする。
【0405】
そして、子ノードS0,S1および中継ノードR0は、それぞれ割り当てられたスロットを用いた管理ノードMとの間で同期を確立したチャネル1を用いたデータ通信を実行しているものとする。一方、中継ノードR0は、管理ノードとしてチャネル1と異なるチャネル2を用いたデータ通信を実行する。
【0406】
そして、時刻t121から中継ノードRは、中継機能を開始しているものとする。具体的には、中継ノードRは、管理ノードとして、1サブスーパフレーム区間を構成するスロット0に対応する報知情報フレームを送信する。なお、中継ノードRが中継機能を開始している場合には、1スーパフレーム区間が固定された状態であることが必要である。一例として、本例の場合には、1スーパフレーム区間のスロットの個数が4個である状態が継続するものとする。一方、1スーパフレーム区間の個数が変更された場合には、中継機能は中断するものとする。また、中継ノードRから送信されるサブスーパフレーム区間に従う報知情報フレームは、上述した管理ノードMから送信される図10(A)で説明したスーパフレーム区間に従う報知情報フレームと基本的に同様の構成であるが親ノードID情報d4が異なる。本例の場合には、中継ノードRから報知情報フレームが送信されるため親ノードID情報は、中継ノードRのID情報が格納されて送信される。また、1サブスーパフレーム区間のスロット数によらず、中継ノードRから送信される報知情報フレームに格納されるスーパフレーム構成情報の1サブスーパフレーム区間のスロット数は1スーパフレーム区間のスロット数と同じ4個として固定される。また、中継ノードR0においては、サブスーパフレーム区間は最大3個のスロットしか拡張することはできない。1スーパフレーム区間のうちの1つのスロットは、管理ノードMとの間のデータ通信として用いる必要があるからである。本例においては管理ノードMとの間のデータ通信として用いるスロット部分を「リザーブ」と標記している。
【0407】
そして、次に、例えば時刻t120において圏外ノードS3の通信部15が起動され、管理ノードMを検索するための受信区間が開始される。
【0408】
圏外ノードS3は、時刻t120より受信区間(R)を開始後、管理ノードより報知情報フレームを受信するまで受信区間(R)を継続する。
【0409】
そして、圏外ノードS3は、時刻t121において、サブスーパフレーム区間sta0のスロット0において送信された管理ノード(中継ノードR0)から送信された報知情報フレームを受信する。すなわち、圏外ノードS3は、時刻t121に管理ノード(中継ノードR0)を検出したと判断する。
【0410】
圏外ノードS3は、管理ノード(中継ノードR0)より受信した報知情報フレームに含まれるスーパフレーム構成情報、タイミング情報に基づいて、次のサブスーパフレーム区間sta1における報知情報フレームを受信するタイミングを算出する。
【0411】
具体的には、一例として、圏外ノードS3は、スーパフレーム構成情報である1スーパフレーム区間内のスロット数、タイミング情報の1スロットの区間の長さと受信区間の長さとウェイクアップ時間とに基づいて、報知情報フレームを受信するためのウェイクアップ区間開始時刻を「スロット数(1スーパフレーム区間内のスロット数(固定値4))×1スロット区間の長さ−ウェイクアップ時間−受信区間の長さ」として算出する。そして、圏外ノードS3は、タイマ17を用いて算出した時刻となるまでカウントする。また、圏外ノードS3は、時刻t122においてスリープ区間(S)を開始し低消費電力状態へ移行する。
【0412】
そして、圏外ノードS3は、タイマ17を用いて算出した時刻後、スリープ区間(S)を終了して、低消費電力状態から通常電力状態に復帰させる。そして、時刻t123において、管理ノード(中継ノードR0)から送信される報知情報フレームの受信を開始するための受信区間(R)を開始する。
【0413】
圏外ノードS3は、時刻t123より開始した受信区間(R)にて管理ノードMから送信された報知情報フレームを受信し、受信した報知情報フレームに含まれているスロット割当情報に自己のIDが格納されているか否かにより自己が管理ノードMに登録されているか否かを判断する。
【0414】
圏外ノードS3は、自己が管理ノードMに未登録であると判断した場合に、管理ノード(中継ノードR0)より受信した報知情報フレームに含まれるスーパフレーム構成情報、タイミング情報に基づいて、次のサブスーパフレーム区間sta2における報知情報フレームを受信するタイミングを算出する。
【0415】
具体的には、一例として、圏外ノードS3は、スーパフレーム構成情報である1スーパフレーム区間内のスロット数、タイミング情報の1スロットの区間の長さと受信区間の長さとウェイクアップ時間とに基づいて、報知情報フレームを受信するためのウェイクアップ区間開始時刻を「スロット数(1スーパフレーム区間内のスロット数(固定値4))×1スロット区間の長さ−ウェイクアップ時間−受信区間の長さ」として算出する。そして、圏外ノードS3は、タイマ17を用いて算出した時刻となるまでカウントする。
【0416】
そして、圏外ノードS3は、時刻t124において、管理ノード(中継ノードR0)へ自己のIDを格納した登録要求フレームの送信を開始する。そして、登録要求フレームの送信完了後、時刻t125からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0417】
管理ノード(中継ノードR0)においては、子ノードS3から受信した登録要求フレームに格納されているIDが、スロット割当情報に格納済みでない場合には、スロット割当情報に登録要求フレームに格納されていた子ノードS3のIDを格納する処理が実行される。
【0418】
そして、圏外ノードS3は、タイマ17を用いて算出した時刻後、スリープ区間(S)を終了して、低消費電力状態から通常電力状態に復帰させる。そして、時刻t126において、管理ノード(中継ノードR0)から送信される報知情報フレームの受信を開始するための受信区間(R)を開始する。
【0419】
圏外ノードS3は、時刻t126より開始した受信区間(R)にて管理ノードMから送信された報知情報フレームを受信し、受信した報知情報フレームに含まれているスロット割当情報に自己のIDが格納されているか否かにより自己が管理ノードMに登録されているか否かを判断する。
【0420】
そして、圏外ノードS0は、自己がネットワークに登録されていると判断した場合、管理ノード(中継ノードR0)から自己に割り当てられたスロットを用いたデータ通信を実行するため、管理ノード(中継ノードR0)より受信した報知情報フレームに含まれるタイミング情報およびスロット割当情報に基づいて、同じサブスーパフレーム区間における自己に割り当てられたスロット(ここではスロット1)に対応する同期フレームを受信するためのタイミングを算出する。
【0421】
具体的には、スロット割当情報に含まれている自己に割り当てられたスロットの番号(本例では、スロット1)、タイミング情報に含まれている1スロットの区間の長さと、受信区間の長さと、ウェイクアップ時間とに基づいて、同期フレームを受信するためのウェイクアップ区間開始時刻を「スロット数(割り当てられたスロット番号)×1スロット区間の長さ−ウェイクアップ時間―受信区間の長さ」として算出する。そして、圏外ノードS3は、タイマ17を用いて算出した時刻となるまでカウントする。
【0422】
圏外ノードS3は、自己がネットワークに登録されていると判断した場合には、登録要求フレームは送信しない。
【0423】
そして、圏外ノードS3は、時刻t127からスリープ区間(S)を開始し低消費電力状態へ移行する。
【0424】
圏外ノードS3は、タイマ17を用いて算出した時刻後、スリープ区間(S)を終了して、低消費電力状態から通常電力状態に復帰させる。そして、圏外ノードS3は、サブスーパフレーム区間sta2のスーパフレームのスロット1の区間である時刻t128において、管理ノード(中継ノードR0)から自己に割り当てられたスロット(本例ではスロット1)を使用して送信される同期フレームの受信を開始するための受信区間(R)を開始する。
【0425】
圏外ノードS3は、時刻t128より開始した受信区間(R)にて管理ノード(中継ノードR0)から送信された同期フレームを受信し、受信した同期フレームに自己のIDが格納されているか否かに基づいて自己に割り当てられたスロットか否かを判断する。本例では、自己のIDが格納されているものとする。
【0426】
圏外ノードS3は、受信した同期フレームに自己のIDが格納されていると判断した場合には、管理ノード(中継ノードR0)より、既に受信済みの報知情報フレームに含まれるスーパフレーム構成情報およびタイミング情報に基づいて、次のサブスーパフレーム区間における自己に割り当てられたスロットを使用して管理ノードMより送信される同期フレームを受信するためのタイミングを算出する。そして、圏外ノードS3は、タイマ17を用いて算出した時刻となるまでカウントする。
【0427】
なお、以下においても同様に自己に割当てられたスロットにおいて同期フレームを受信するたびに子ノードSは、管理ノードMから自己に割り当てられたスロットを用いたデータ通信を実行するタイミングを算出するものとする。
【0428】
また、圏外ノードS3は、時刻t129において、管理ノードMへ自己のIDを格納した応答フレームの送信を開始する。そして、応答フレームの送信完了後、時刻t130からスリープ区間(S)を開始し低消費電力状態へ移行する。すなわち、以降、自己に割り当てられたスロット(本例ではスロット1)のみを使用して管理ノード(中継ノードR0)との間でのデータ通信を実行し、スーパフレームの構成の変更が通知されるまで報知情報フレームの受信は必要としない。
【0429】
当該処理により、管理ノードMの報知情報フレームの受信可能な範囲にない圏外ノードについても中継ノードRを用いてネットワークに登録することが可能となる。
【0430】
図25は、本発明の実施の形態2に従う管理ノードMと、中継ノードR0を用いた子ノードとのデータの流れについて説明する図である。なお、中継ノードR0とは、管理ノードMとの関係においては、子ノードSとして動作する。また、中継ノードR0は、子ノード(圏外ノード)S3,S4に対して管理ノードとして動作する。
【0431】
図25を参照して、まず、管理ノードMは、1スーパフレーム区間としてスロット0〜3のスロットを設定しているものとする。
【0432】
1スーパフレーム区間におけるスロット1は、子ノードS0に割り当てているものとする。また、スロット2は、中継ノードR0に割り当てているものとする。また、スロット3は、子ノードS1に割り当てているものとする。
【0433】
そして、子ノードS0,S1および中継ノードR0は、それぞれ割り当てられたスロットを用いた管理ノードMとの間で同期を確立したチャネル1を用いたデータ通信を実行しているものとする。
【0434】
また、上述した方式に従って、中継ノードR0は、1サブスーパフレーム区間としてスロット0〜2のスロットを設定しているものとする。
【0435】
1サブスーパフレーム区間におけるスロット1は、子ノードS3に割り当てているものとする。また、スロット2は、子ノードS4に割り当てているものとする。
【0436】
そして、子ノードS0,S1および中継ノードR0は、それぞれ割り当てられたスロットを用いた管理ノードMとの間で同期を確立したチャネル2を用いたデータ通信を実行しているものとする。チャネルを異ならせることにより混信を防止し良好なデータ通信を確保することが可能である。
【0437】
また、子ノードS3,S4は、それぞれ割り当てられたスロットを用いた管理ノード(中継ノードR)との間で同期を確立したデータ通信を実行しているものとする。
【0438】
中継ノードR0は、管理ノードMとの関係において、時刻t140,t144に開始される自己に割り当てられたスロット2を用いたデータ通信に関して、同期フレームを受信して、時刻t142,t146において応答フレームを送信する。この応答フレームには、自己の中継ノードR0のデータと、中継ノードR0を管理ノードとする子ノードの情報も含められる。
【0439】
すなわち、中継ノードR0の応答フレームには、中継ノードR0のデータと、子ノードS3,S4のデータが1つの応答フレームとして管理ノードMに送信される。
【0440】
当該方式により、管理ノードMは、中継ノードR0を介して子ノードS3,S4のデータを取得することが可能となる。
【0441】
図26は、本発明の実施の形態2に従う管理ノードMと、中継ノードR0を用いた子ノードとのデータの別の流れについて説明する図である。なお、中継ノードRとは、管理ノードMとの関係においては、子ノードSとして動作する。また、中継ノードR0は、子ノード(圏外ノード)S3,S4に対して管理ノードとして動作する。
【0442】
図26を参照して、まず、管理ノードMは、1スーパフレーム区間としてスロット0〜3のスロットを設定しているものとする。
【0443】
1スーパフレーム区間におけるスロット1は、子ノードS0に割り当てているものとする。また、スロット2は、中継ノードR0に割り当てているものとする。また、スロット3は、子ノードS1に割り当てているものとする。
【0444】
そして、子ノードS0,S1および中継ノードR0は、それぞれ割り当てられたスロットを用いた管理ノードMとの間で同期を確立したデータ通信を実行しているものとする。
【0445】
また、上述した方式に従って、中継ノードR0は、1サブスーパフレーム区間としてスロット0〜2のスロットを設定しているものとする。
【0446】
1サブスーパフレーム区間におけるスロット1は、子ノードS3に割り当てているものとする。また、スロット2は、子ノードS4に割り当てているものとする。
【0447】
そして、子ノードS0,S1および中継ノードR0は、それぞれ割り当てられたスロットを用いた管理ノードMとの間で同期を確立したデータ通信を実行しているものとする。
【0448】
また、子ノードS3,S4は、それぞれ割り当てられたスロットを用いた管理ノード(中継ノードR0)との間で同期を確立したデータ通信を実行しているものとする。
【0449】
上記においては、管理ノードMから送信される同期フレームに対して、応答フレームを送信するのみであったが、中継ノードR0を介して行なわれる図10,11で説明したユーザデータの流れについて説明する。
【0450】
一例として、管理ノードMから圏外ノードS3が取得したデータの送信を要求する場合、時刻t148において、管理ノードMから中継ノードR0への通信に割り当てられたスロット2を用いたデータ通信に関して、同期フレーム中のユーザデータに含まれる送信元ノードIDとして管理ノードMのID情報(ID000)を格納し、送信先ノードIDとして圏外ノードS3のID情報(例えばID005)を格納する。そして送信すべきデータとして、データの転送指示コマンドを送信先ノードIDに続いて送信する。中継ノードR0は、かかる同期フレームを受信して、ユーザデータに含まれている送信先ノードのIDを確認して自己宛か否か認識する。
【0451】
管理ノードである中継ノードR0は、同期フレーム中の送信先ノードIDに指定されているIDが自己宛でないと認識した場合には、次に、自己が管理ノードとして管理する子ノード宛であるか否かを認識する。そして、自己が管理ノードとして管理する子ノード宛でもないと認識した場合には、応答フレームを用いて管理ノードMに送信する。
【0452】
一方、中継ノードR0は、自己が管理ノードとして管理する子ノード宛であると認識した場合には、当該データの転送指示コマンドを受けて、圏外ノードS3とのデータ通信に割り当てられている1サブスーパフレーム区間のスロット1を用いて、時刻t152において管理ノードMからの同期フレームに含まれるユーザデータを圏外ノードS3への同期フレームのユーザデータとして転送する。
【0453】
圏外ノードS3は、時刻t152においてスロット1を用いた中継ノードR0からの同期フレームを受信する。そして、当該同期フレームに含まれるユーザデータが自己宛であるか否かを認識する。そして、自己宛であると認識した場合には、同期フレームに含まれるデータ転送指示コマンドに応答して、時刻t153において自己が取得したデータを中継ノードR0への応答フレームにより送信する。具体的には、圏外ノードS3から管理ノードMへの応答フレームにおいて、送信元ノードIDとして圏外ノードS3のID情報(ID005)、送信先ノードIDとして管理ノードMのID情報(ID000)を格納し、送信先ノードIDに続いて圏外ノードS3が取得したデータを送信する。
【0454】
中継ノードR0は、圏外ノードS3からの応答フレームに含まれるユーザデータの送信先IDが管理ノードMのID情報(ID000)であることに応じて、中継ノードR0から管理ノードMへの通信に割り当てられたスロット2において、応答フレームを送信する。すなわち、中継ノードR0は、圏外ノードS3からの応答フレームに含まれるユーザデータを管理ノードMへの応答フレームのユーザデータとして転送する。
【0455】
別の例として、圏外ノードS3から圏外ノードS4へデータを送信する場合、圏外ノードS3が中継ノードRへ送信する応答フレームのユーザデータ領域に、送信先ノードIDとして圏外ノードS4のID情報(ID006)を格納し、送信元ノードIDとして圏外ノードS3のID情報(ID005)を格納する。そして送信すべきデータを送信元ノードIDに続いて送信する。
【0456】
圏外ノードS3からの応答フレームを受信した中継ノードRは、ユーザデータに含まれている送信先ノードのIDを確認して自己宛か否か認識する。
【0457】
そして、中継ノードRは、自己宛でないと認識した場合には、自己が管理するネットワーク内のノードに当該ID情報が含まれていれば、その子ノード(圏外ノード)に転送する。具体的には、圏外ノードS4へ送信する同期フレームのユーザデータ領域に、圏外ノードS3から受信した応答フレームのユーザデータ領域の情報を格納し、圏外ノードS4へ同期フレームを送信する。
【0458】
当該同期フレームを受信した圏外ノードS4は、ユーザデータに含まれている送信先ノードのIDを確認して自己宛か否か認識する。そして、送信先ノードIDにより自己宛のデータであるかを確認し、さらに、送信元ノードIDによりデータの送信元の確認をして、受信したデータが適切なデータであるかを判別することが可能となる。したがって、例えば、圏外ノードS3から圏外ノードS4へのデータの転送も可能である。
【0459】
また、中継ノードR0が管理する複数の子ノードからユーザデータの転送が行われる場合、各々の子ノードから中継ノードR0への応答フレームによるデータ転送は各々の子ノードに割り当てられたスロットにおいて行われ、中継ノードR0から管理ノードMへの応答フレームによるデータ転送は、各々の子ノードからのデータ転送とは異なるスーパフレーム区間のスロットを用いて行われる。
【0460】
このようにデータを順次転送することにより、異なるネットワーク階層間であったとしてもユーザデータの転送が可能となる。
【0461】
なお、上記は一例であり、例えば、管理ノードMから中継ノードR0に対して特別なコマンドを送信して中継ノードR0を介して特別なコマンドに基づく制御を実行するようにしても良い。
【0462】
本発明の実施の形態2に従う管理ノードMにおけるデータ通信の処理の流れについては、実施の形態1で説明した図12,13のフロー図と同様であるのでその詳細な説明については繰り返さない。
【0463】
子ノードおよび中継ノードにおけるデータ通信の処理の流れについても図14のフロー図と同様であるが、中継ノードに関して、同期モードにおける処理が異なる。
【0464】
図27は、本発明の実施の形態2に従う中継ノードにおける同期モードの処理を説明するフロー図である。
【0465】
CPU11#は、ROM13に格納されたソフトウェアプログラムを読込むことにより以下における処理を実行する。
【0466】
図27を参照して、CPU11#は、報知情報フレームに含まれるタイミング情報と、スーパフレーム構成情報あるいはスロット割当情報とに基づいて、スロットの割当に従ったタイミングを設定する(ステップS90)。具体的には、例えば、自己のIDに対応してスロット2が割り当てられた場合には、受信した報知情報フレームのスーパフレーム構成情報d1に含まれている1スーパフレーム区間のスロット数あるいは、スロット割当情報d5に含まれている自己に割り当てられたスロットの番号、タイミング情報d2に含まれている1スロットの区間の長さ、受信区間の長さおよびウェイクアップ区間の長さに従って、自己に割り当てられたスロット(ここではスロット2)に対応する同期フレームを受信するための受信タイミングを設定する。具体的には、同期フレームを受信するためのウェイクアップ区間開始時刻を算出して、タイマ設定する。他のスロットに割り当てられている場合についても同様である。
【0467】
例えば、報知情報フレームを受信した同じスーパフレーム区間における自己に割り当てられたスロット(ここではスロット2)に対応する同期フレームを受信するためのタイミングとしてのウェイクアップ区間開始時刻は、「スロット数(割り当てられたスロット番号)×1スロット区間の長さ−ウェイクアップ時間―受信区間の長さ」として算出する。
【0468】
また、次のスーパフレーム区間における自己に割り当てられたスロットに対応する同期フレームを受信するためのタイミングとしてのウェイクアップ区間開始時刻は、「スロット数(1スーパフレーム区間内のスロット数)×1スロット区間の長さ−ウェイクアップ時間―受信区間の長さ」として算出する。
【0469】
そして、CPU11#は、設定された受信タイミングに従って同期フレームを受信したかどうかを判断する(ステップS98)。
【0470】
そして、ステップS98において、CPU11#は、設定された受信タイミングに従って同期フレームを受信した場合(ステップS98においてYES)には、応答フレームを送信する(ステップS100)。
【0471】
そして、次に、CPU11#は、同期フレームの中に変更通知があるかどうかを判断する(ステップS102)。具体的には、上述したようにスーパフレーム構成情報の報知情報フレーム更新番号が更新されたかどうかに基づいて判断する。報知情報フレーム更新番号が更新されたと判断した場合には変更通知があると判断する。一方、報知情報フレーム更新番号が更新されていないと判断した場合には変更通知はないと判断する。
【0472】
ステップS102において、CPU11#は、同期フレームの中に変更通知がないと判断された場合(ステップS102においてNO)には、次に、中継モードの開始判定処理を実行する(ステップS120)。
【0473】
そして、CPU11#は、中継可能フラグがオンされたかどうかを判断する(ステップS122)。
【0474】
CPU11#は、ステップS122において、中継可能フラグがオンされていないと判断した場合(ステップS122においてNO)には、中継モードに入ることなく、再びステップS90に戻る。そして、スロットの割当に従ったタイミング設定に従って同期フレームの受信に応答して、応答フレームを送信する。
【0475】
したがって、中継モードに入らない場合においても変更通知があるまで同期モードにおいて、割り当てられたスロットを用いた管理ノードMと中継ノードRとのデータ通信が実行される。
【0476】
一方、ステップS122において、CPU11#は、中継可能フラグがオンされたと判断した場合(ステップS122においてYES)には、中継モードに入る(ステップS124)。そして、中継モード終了後、再び、ステップS90に戻り、スロットの割当に従ったタイミング設定に従って同期フレームの受信に応答して、応答フレームを送信する。
【0477】
したがって、中継モードに入った場合においても、中継モード終了後、変更通知があるまで同期モードにおいて、割り当てられたスロットを用いた管理ノードMと中継ノードRとのデータ通信が実行される。
【0478】
一方、ステップS102において、CPU11#は、同期フレームの中に変更通知があると判断された場合(ステップS102においてYES)には、同期モードの処理を終了する(リターン)。すなわち、同期モードを終了して、再び、図14のステップS56に戻る。以降の処理については、実施の形態1で説明したのと同様であるのでその詳細な説明は繰り返さない。なお、管理ノードMからの同期フレームに変更通知が含まれている場合には、1スーパフレーム区間が変更されるため中継ノードRと圏外ノードとのデータ通信を実行することができなくなる。すなわち、圏外ノードがネットワークから外れてしまうことになる。しかしながら、再び、中継ノードにおける同期モードが開始されるとともに、中継モードが開始されることにより、中継ノードRと圏外ノードとの間のデータ通信が実行されてネットワークが再構築されることになる。
【0479】
次に、中継判定モードについて説明する。
図28は、本発明の実施の形態2に従う中継判定モードを説明するフロー図である。
【0480】
CPU11#は、ROM13に格納されたソフトウェアプログラムを読込むことにより以下における処理を実行する。
【0481】
図28を参照して、CPU11#は、スーパフレーム区間を確認する。
そして、CPU11#は、スーパフレーム区間のスロット数が所定スロット以上あるかどうかを判断する(ステップS132)。所定スロット以上として、本例においては、一例として、3以上であるものとする。3以上でなければサブスーパフレーム区間において、圏外ノードとの間でデータ通信を実行するスロットを確保することができないからである。
【0482】
ステップS132において、CPU11#は、スーパフレーム区間のスロット数が所定スロット以上あると判断した場合(ステップS132においてYES)には、中継モードに入ることが可能であることを示す中継可能フラグをオンに設定する(ステップS134)。そして、処理を終了する(リターン)。一方、ステップS132において、CPU11#は、スーパフレーム区間のスロット数が所定スロット以上ないと判断した場合(ステップS132においてNO)には、中継モードに入ることが可能であることを示す中継可能フラグをオフに設定する(ステップS134)。そして、処理を終了する(リターン)。
【0483】
そして、中継可能フラグがオンに設定された場合に、中継モードに入る。
なお、本例においては、スーパフレーム区間が所定スロット以上であれば中継モードに入る場合について説明した。一方で、ネットワークの変更が通知される変更通知が有った場合には、中継モードは中断されるためスーパフレーム区間が変更されないような状況において、中継モードが開始されることが望ましい。したがって、中継可能フラグがオンとなる条件として、スーパフレーム区間が変更されないような状況となる所定期間が経過していることを付加するようにしても良い。
【0484】
図29は、本発明の実施の形態2に従う中継モードを説明するフロー図である。
CPU11#は、ROM13に格納されたソフトウェアプログラムを読込むことにより以下における処理を実行する。
【0485】
本発明の実施の形態2に従う中継ノードは、中継モードにおいて、管理ノードとして動作する。すなわち、CPU11#のチャネル設定部22は、電界強度測定部20に指示して外部環境における電界強度を測定する(ステップS140)。
【0486】
そして、チャネル設定部22は、電界強度測定部20における電界強度の測定に従ってデータ通信を実行する場合にデータ送受信における適切なチャネルを通信部15に対して設定する(ステップS141)。なお、チャネル設定部22は、適切なチャネルのうち管理ノードMとのデータ通信で用いられているチャネル以外のチャネルを選択する。例えば、管理ノードとの間でチャネル1が用いられている場合には、チャネル2を選択するものとする。当該処置により、混信を防止して良好な良好なデータ通信を確保することが可能となる。
【0487】
次に、サブスーパフレーム設定部24は、サブスーパフレーム区間の設定処理を実行する(ステップS142)。サブスーパフレーム区間の設定処理については、図13で説明したスーパフレーム区間の設定処理と同様であるのでその詳細な説明は繰り返さない。
【0488】
初期設定においては、1サブスーパフレーム区間はスロット0のみで構成されている。したがって、最初の1サイクルについては、ステップS142の処理をスキップすることも可能である。
【0489】
次に、データ送受信制御部26は、サブスーパフレーム設定部24により設定されたサブスーパフレーム区間に基づいて報知情報フレームを生成する(ステップS143)。具体的には、図10(A)で説明した報知情報フレームが生成される。なお、上述したように親ノードID情報d3は、中継ノードRのID情報が格納される。また、スーパフレーム構成情報d1の1サブスーパフレーム区間のスロット数は1スーパフレーム区間のスロット数と同じ値として固定される。
【0490】
そして、次に、データ送受信制御部26は、サブスーパフレーム設定部24において設定された1サブスーパフレーム区間におけるスロットを確認する(ステップS144)。
【0491】
そして、データ送受信制御部26は、1サブスーパフレーム区間に設定されたスロット0の送信区間(T)において通信部15を介して報知情報フレームを送信する(ステップS146)。
【0492】
そして、次に、データ送受信制御部26は、1サブスーパフレーム区間に設定されたスロット0の受信区間(R)において通信部15を介して登録要求フレームを受信したかどうかを判断する(ステップS148)。具体的には、図11(A)で説明した登録要求フレームを受信したかどうかを判断する。
【0493】
データ送受信制御部26は、ステップS148において、登録要求フレームを受信したと判断した場合(ステップS148においてYES)には、スロット追加フラグをオンにする(ステップS150)。なお、中継ノードが管理可能な子ノードの数はスーパフレーム区間により定まるため、例えば、サブスーパフレーム区間のスロットが既に最大個数に拡張されている場合には、スロット追加フラグはオンされないものとする。例えば、1スーパフレームの区間のスロット数が4でスロット0と別にスロット割当情報に2個のスロット1,2が割り当てられている場合には、さらにスロットを追加することはできないためスロット追加フラグはオンしないものとする。
【0494】
一方、データ送受信制御部26は、ステップS148において、登録要求フレームを受信しなかったと判断した場合(ステップS148においてNO)には、次のステップS152に進む。
【0495】
なお、通信部15を介した受信区間(R)が終了した場合に、データ送受信制御部26は、電源管理部14に対して各部への電源の供給の停止を指示する低消費電力状態への移行を指示する。これにより、中継ノードRは、スリープ区間(S)となる。なお、データ送受信制御部26は、スリープ区間(S)に入る前に次のスロットを開始するためのウェイクアップ区間開始時刻を算出する。そして、タイマ17に対して算出した時刻を設定する。そして、タイマ17は、算出した時刻となるまでカウントし、算出した時刻となった場合に電源管理部14に通知する。これにより、電源管理部14は、タイマ17からの通知に従って低消費電力状態から通常電力状態に復帰させる。そして、データ送受信制御部26は、低消費電力状態から通常電力状態への復帰の後、次のスロットを開始する。上記の処理は、各スロット毎に繰り返し実行される。当該処理により中継ノードRは、送信区間(T)、受信区間(R)およびウェイクアップ区間(W)以外の区間は、スリープ区間(S)として間欠動作させて電源の供給を停止する低消費電力状態に移行させることが可能であり、消費電力を抑制することが可能である。
【0496】
そして、次に、ステップS152において、データ送受信制御部26は、1サブスーパフレーム区間に次のスロットがあるかどうかを判断する(ステップS152)。
【0497】
ステップS152において、データ送受信制御部26は、1サブスーパフレーム区間に次のスロットがあると判断した場合(ステップS152においてYES)には、次のステップS154に進む。
【0498】
一方、ステップS154において、データ送受信制御部26は、1サブスーパフレーム区間に次のスロットがないと判断した場合(ステップS152においてNO)には、処理を終了する(リターン)。すなわち、上述したように中継モードを終了して、管理ノードMとの間でのデータ通信を実行する。
【0499】
データ送受信制御部26は、1サブスーパフレーム区間に次のスロットがあると判断した場合(ステップS152においてYES)には、次にスロット追加フラグがオンされているかどうかを判断する(ステップS154)。
【0500】
ステップS154において、データ送受信制御部26は、スロット追加フラグがオンされていると判断した場合(ステップS154においてYES)には、データ送受信制御部26は、スロットに対応する同期フレーム(変更通知有)を生成する(ステップS155)。具体的には、図10(B)で説明した報知情報フレーム更新番号が更新された報知情報フレームが生成される。
【0501】
そして、次に、データ送受信制御部26は、通信部15を介してスロットに対応する同期フレーム(変更通知有)を送信する(ステップS156)。当該同期フレームを受信することにより、1サブスーパフレーム区間に変更があることを子ノードは判断することが可能である。
【0502】
一方、ステップS154において、データ送受信制御部26は、スロット追加フラグがオンしていないと判断した場合(ステップS154においてNO)には、データ送受信制御部26は、スロットに対応する同期フレームを生成する(ステップS157)。具体的には、図10(B)で説明した報知情報フレーム更新番号は更新されない報知情報フレームが生成される。
【0503】
そして、次に、データ送受信制御部26は、通信部15を介してスロットに対応する同期フレームを送信する(ステップS158)。
【0504】
そして、次に、データ送受信制御部26は、通信部15を介してスロットに対応する同期フレームに対して応答フレームの受信があったどうかを判断する(ステップS160)。具体的には、図11(B)で説明した応答フレームを受信したかどうかを判断する。
【0505】
ステップS160において、データ送受信制御部26は、応答フレームの受信があったと判断した場合(ステップS160においてYES)には、応答フレームを取得する(ステップS162)。取得した応答フレームは、データ送受信制御部26の指示に従って、一例として、RAM12等の記憶領域に格納されるものとする。
【0506】
一方、ステップS160において、データ送受信制御部26は、応答フレームの受信がなかったと判断した場合(ステップS160においてNO)には、エラー判定とする(ステップS164)。なお、エラー判定となった結果は、データ送受信制御部26の指示に従って、一例として、RAM12等の記憶領域に格納されるものとする。当該エラー判定となった結果は、サブスーパフレーム区間の設定処理の際に用いられる。すなわち、エラー判定が所定個以上継続した場合にはスロットが削除される。
【0507】
そして、再びステップS152に戻る。なお、上述したように、各スロットにおける通信部15を介した受信区間Rが終了した場合に、データ送受信制御部26は、電源管理部14に対して各部への電源の供給の停止を指示する低消費電力状態への移行を指示する。これにより、管理ノードMは、スリープ区間(S)となる。
【0508】
ステップS152において、データ送受信制御部26は、1サブスーパフレーム区間に次のスロットがあるかどうかを判断(ステップS152)し、上記と同様の処理を繰り返す。すなわち、スロットが有る場合には、スロットに対応する同期フレームを通信部15を介して送信する。
【0509】
そして、全てのスロットに対する処理が終了した後、中継モードにおける処理を終了する(リターン)。そして、上述したように図27のステップS90に戻って、管理ノードMとの間でのデータ通信を実行する。その際、1サブスーパフレーム区間のスロットを用いて子ノードとのデータ通信をした内容(データ)をRAM12等から取得して、中継ノードRの応答フレームとして中継ノードRの情報とともに管理ノードMに送信されることになる。
【0510】
本発明の実施の形態2に従う方式において、中継ノードRと管理ノードMとの間の同期確立後は、中継ノードRを管理ノードとして動作させて、管理ノードMとの間での中継処理を実行することが可能となる。したがって、管理ノードMがデータ通信を実行することが可能な領域を中継ノードRを用いて拡大することが可能となる。
【0511】
したがって、管理ノードMは、子ノードSが移動するような場合においても、中継ノードRを用いることにより、広い範囲で子ノードSをネットワーク全体として管理することが可能となる。
【0512】
図30は、管理ノードMおよび中継ノードRで管理している子ノードのID情報を説明する図である。
【0513】
図30(A)を参照して、管理ノードMは、ここでは、1スーパフレーム区間のスロット数として5個である場合が示されている。スロット0を除くスロット1〜4に対してそれぞれ子ノードSのID情報が対応付けられて格納されている。
【0514】
具体的には、スロット1が子ノードS(ID001)、スロット2が中継ノードR(ID002)、スロット3が子ノードS(ID003)、スロット4が子ノードS(ID004)に割り当てられている場合が示されている。
【0515】
また、中継ノードR(ID002)は、さらに、複数の子ノードSを管理している。
図30(B)を参照して、ここでは、中継ノードRは、ここでは、1サブスーパフレーム区間のスロット数として4個である場合が示されている。スロット0を除くスロット1〜3に対してそれぞれ子ノードSのID情報が対応付けられて格納されている。
【0516】
具体的には、スロット1が子ノードS(ID005)、スロット2が子ノードS(ID006)、スロット3が子ノードS(ID007)に割り当てられている場合が示されている。
【0517】
したがって、当該中継ノードRが管理している複数の子ノードSのデータも管理ノードMに送信されるため図30(A)に示されるように管理ノードMのスロット2には、中継ノードR(ID002)とともに、中継ノードRが管理している子ノードS(ID005)、子ノードS(ID006)、が子ノードS(ID007)の情報も格納される。
【0518】
すなわち、子ノードS(ID005)、子ノードS(ID006)、が子ノードS(ID007)のデータや、中継ノードR(ID002)とともに、スロット2を用いて管理ノードMに送信される。
【0519】
逆に、管理ノードMから子ノード(ID007)にデータを送信する場合には、スロット2を用いて中継ノードR(ID002)を介して子ノード(ID007)にデータが送信される。
【0520】
したがって、管理ノードMは、ネットワーク内の全てのノード情報を一元管理することが可能である。管理ノードMは、直接のデータ通信を実行する子ノードを管理するとともに、中継ノードに関しては、中継ノードのスロット割当情報により中継ノードとデータ通信している子ノードを管理することが可能である。
【0521】
例えば、製造ライン等の部品等に子ノードSを装着することにより部品の位置および状態等を子ノードSからの応答フレームによって管理ノード側は容易に管理することが可能である。
【0522】
また、全ての子ノードSが管理ノードMと直接データ通信を実行する場合には、1スーパフレーム区間のスロット数が多くなり、データ通信の1サイクルが長期間となる可能性がある。それゆえ、本例においては、管理ノードMと中継ノードRとのデータ通信の区間以外の区間について、中継ノードを管理ノードとして動作させて、中継ノードRが自己の代わりにまとめて他の子ノードとのデータ通信を実行する。これにより、1スーパフレーム区間のスロット数を過大にする必要がなく、ネットワーク全体として効率的なデータ通信を実行することが可能である。
【0523】
また、本発明の実施の形態に従う通信システムのネットワークの構成としては、ピアトゥピア型、スター型、ツリー型の構成に対応することが可能である。
【0524】
なお、コンピュータを機能させて、上述のフローで説明したような制御を実行させる方法あるいは当該方法を実現するプログラムを提供することもできる。このようなプログラムは、コンピュータに付属するフレキシブルディスク、CD−ROM(Compact Disk-Read Only Memory)、ROM(Read Only Memory)、RAM(Random Access Memory)およびメモリカードなどの一時的でないコンピュータ読取り可能な記録媒体にて記録させて、プログラム製品として提供することもできる。あるいは、コンピュータに内蔵するハードディスクなどの記録媒体にて記録させて、プログラムを提供することもできる。また、ネットワークを介したダウンロードによって、プログラムを提供することもできる。
【0525】
なお、プログラムは、コンピュータのオペレーションシステム(OS)の一部として提供されるプログラムモジュールのうち、必要なモジュールを所定の配列で所定のタイミングで呼出して処理を実行させるものであってもよい。その場合、プログラム自体には上記モジュールが含まれずOSと協働して処理が実行される。このようなモジュールを含まないプログラムも、本発明にかかるプログラムに含まれ得る。
【0526】
また、本発明にかかるプログラムは他のプログラムの一部に組込まれて提供されるものであってもよい。その場合にも、プログラム自体には上記他のプログラムに含まれるモジュールが含まれず、他のプログラムと協働して処理が実行される。このような他のプログラムに組込まれたプログラムも、本発明にかかるプログラムに含まれ得る。
【0527】
提供されるプログラム製品は、ハードディスクなどのプログラム格納部にインストールされて実行される。なお、プログラム製品は、プログラム自体と、プログラムが記録された記録媒体とを含む。
【0528】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0529】
10 領域、12,42 RAM、13,43 ROM、14 電源管理部、15,49 通信部、16,45 内部バス、20,46# 電界強度測定部、22,144 チャネル設定部、24 サブスーパフレーム設定部、26,148 データ送受信制御部、46 電源管理部、47 キーボード、48 ディスプレイ、146 スーパフレーム設定部。
【特許請求の範囲】
【請求項1】
複数の端末と、
前記複数の端末の状態を管理する管理ノードとを備え、
前記管理ノードは、
データ通信の1サイクルを規定する、1スーパフレームの構成に従って、前記複数の端末との間でのデータ送受信を実行するための通信部と、
前記管理ノード全体を制御する制御部とを含み、
前記1スーパフレームは、前記1スーパフレームの構成を示す報知情報をブロードキャスト送信する報知区間を少なくとも1つ含み、
各前記端末は、前記報知情報の内容に従って前記報知情報に対する応答信号を出力し、
前記制御部は、
前記通信部を介して送信した前記報知情報に対する応答信号を受信した場合には、前記1スーパフレームの構成に、前記報知情報に対する応答信号を受信した端末との間でのデータの送受信を実行するために割り当てたデータ通信区間を追加し、
前記データ通信区間の追加に従って、前記1スーパフレームの構成を示す報知情報を更新し、
前記更新された報知情報を受信した前記複数の端末のうちの少なくとも1つは、前記更新された報知情報に従って、自己のために割り当てられた前記データ通信区間に同期して、前記管理ノードとの間でデータの送受信を実行する、通信システム。
【請求項2】
前記通信部は、前記データ通信区間において、前記割り当てられた前記複数の端末のうちの1つの端末に対してデータを要求するデータ要求信号を送信し、
前記データ要求信号を受信した前記割り当てられた前記複数の端末のうちの1つの端末は、前記データ要求信号に対して、データ応答信号を前記通信部に送信し、
前記データ通信区間の追加の指示に従って、前記1スーパフレームの構成を示す報知情報が更新された場合には、前記通信部は、前記データ通信区間において、前記1スーパフレームの構成が変更されたことを通知する通知信号を前記データ要求信号とともに送信し、
前記データ要求信号とともに前記通知信号を受信した受信した前記割り当てられた前記複数の端末のうちの1つの端末は、次の前記1スーパフレームに含まれる更新された報知情報を受信する、請求項1記載の通信システム。
【請求項3】
前記制御部は、複数の連続するサイクルにおいて、前記1スーパフレームに含まれる割り当てられた前記データ通信区間において、前記通信部を介して受信される、対応する端末からの前記データ要求信号に対する前記データ応答信号の受信が無いと判断した場合には、前記1スーパフレームの構成から、前記データ要求信号に対する応答がないデータ通信区間を消去する、請求項2記載の通信システム。
【請求項4】
各前記端末は、自己のために割り当てられた前記データ通信区間以外の期間は、スリープ状態に設定される、請求項1記載の通信システム。
【請求項5】
前記通信部は、前記データ通信を実行する際の電界強度を測定する電界強度測定部を含み、
前記電界強度測定部の測定結果に基づいて、複数の通信チャンネルのうちの1つの通信チャンネルを用いて、前記複数の端末との間での前記データ通信を実行する、請求項1記載の通信システム。
【請求項6】
前記複数の端末のうちの少なくとも1つの端末は、前記複数の端末のうちの少なくとも1つの別の端末と前記管理ノードとの間のデータを中継して送受信することが可能な中継端末であり、
前記中継端末は、前記更新された報知情報に従って、自己のために割り当てられた前記データ通信区間に同期して、前記管理ノードとの間でデータの送受信を実行し、
前記中継端末は、
前記1スーパフレームを構成する区間のうち前記自己のために割り当てられたデータ通信区間を用いて、前記管理ノードとデータ送受信を実行し、前記データ通信区間以外の区間を用いて、中継用のデータ通信の1中継サイクルを規定する、1サブスーパフレームの構成に従って、前記別の端末との間でのデータ送受信を実行するための中継通信部と、
前記中継端末全体を制御する中継制御部とを含み、
前記1サブスーパフレームは、前記1サブスーパフレームの構成を示すサブ報知情報をブロードキャスト送信するサブ報知区間を少なくとも1つ含み、
前記別の端末は、前記サブ報知情報の内容に従って前記サブ報知情報に対する応答信号を出力し、
前記中継制御部は、
前記中継通信部を介して送信した前記サブ報知情報に対する応答信号を受信した場合には、前記1サブスーパフレームの構成に、前記報知情報に対する応答信号を受信した端末との間でのデータの送受信を実行するために割り当てたデータ通信区間を追加し、
前記データ通信区間の追加に従って、前記1サブスーパフレームの構成を示すサブ報知情報を更新し、
前記更新されたサブ報知情報を受信した前記別の端末は、前記更新されたサブ報知情報に従って、自己のために割り当てられた前記データ通信区間に同期して、前記中継端末との間でデータの送受信を実行する、請求項1記載の通信システム。
【請求項1】
複数の端末と、
前記複数の端末の状態を管理する管理ノードとを備え、
前記管理ノードは、
データ通信の1サイクルを規定する、1スーパフレームの構成に従って、前記複数の端末との間でのデータ送受信を実行するための通信部と、
前記管理ノード全体を制御する制御部とを含み、
前記1スーパフレームは、前記1スーパフレームの構成を示す報知情報をブロードキャスト送信する報知区間を少なくとも1つ含み、
各前記端末は、前記報知情報の内容に従って前記報知情報に対する応答信号を出力し、
前記制御部は、
前記通信部を介して送信した前記報知情報に対する応答信号を受信した場合には、前記1スーパフレームの構成に、前記報知情報に対する応答信号を受信した端末との間でのデータの送受信を実行するために割り当てたデータ通信区間を追加し、
前記データ通信区間の追加に従って、前記1スーパフレームの構成を示す報知情報を更新し、
前記更新された報知情報を受信した前記複数の端末のうちの少なくとも1つは、前記更新された報知情報に従って、自己のために割り当てられた前記データ通信区間に同期して、前記管理ノードとの間でデータの送受信を実行する、通信システム。
【請求項2】
前記通信部は、前記データ通信区間において、前記割り当てられた前記複数の端末のうちの1つの端末に対してデータを要求するデータ要求信号を送信し、
前記データ要求信号を受信した前記割り当てられた前記複数の端末のうちの1つの端末は、前記データ要求信号に対して、データ応答信号を前記通信部に送信し、
前記データ通信区間の追加の指示に従って、前記1スーパフレームの構成を示す報知情報が更新された場合には、前記通信部は、前記データ通信区間において、前記1スーパフレームの構成が変更されたことを通知する通知信号を前記データ要求信号とともに送信し、
前記データ要求信号とともに前記通知信号を受信した受信した前記割り当てられた前記複数の端末のうちの1つの端末は、次の前記1スーパフレームに含まれる更新された報知情報を受信する、請求項1記載の通信システム。
【請求項3】
前記制御部は、複数の連続するサイクルにおいて、前記1スーパフレームに含まれる割り当てられた前記データ通信区間において、前記通信部を介して受信される、対応する端末からの前記データ要求信号に対する前記データ応答信号の受信が無いと判断した場合には、前記1スーパフレームの構成から、前記データ要求信号に対する応答がないデータ通信区間を消去する、請求項2記載の通信システム。
【請求項4】
各前記端末は、自己のために割り当てられた前記データ通信区間以外の期間は、スリープ状態に設定される、請求項1記載の通信システム。
【請求項5】
前記通信部は、前記データ通信を実行する際の電界強度を測定する電界強度測定部を含み、
前記電界強度測定部の測定結果に基づいて、複数の通信チャンネルのうちの1つの通信チャンネルを用いて、前記複数の端末との間での前記データ通信を実行する、請求項1記載の通信システム。
【請求項6】
前記複数の端末のうちの少なくとも1つの端末は、前記複数の端末のうちの少なくとも1つの別の端末と前記管理ノードとの間のデータを中継して送受信することが可能な中継端末であり、
前記中継端末は、前記更新された報知情報に従って、自己のために割り当てられた前記データ通信区間に同期して、前記管理ノードとの間でデータの送受信を実行し、
前記中継端末は、
前記1スーパフレームを構成する区間のうち前記自己のために割り当てられたデータ通信区間を用いて、前記管理ノードとデータ送受信を実行し、前記データ通信区間以外の区間を用いて、中継用のデータ通信の1中継サイクルを規定する、1サブスーパフレームの構成に従って、前記別の端末との間でのデータ送受信を実行するための中継通信部と、
前記中継端末全体を制御する中継制御部とを含み、
前記1サブスーパフレームは、前記1サブスーパフレームの構成を示すサブ報知情報をブロードキャスト送信するサブ報知区間を少なくとも1つ含み、
前記別の端末は、前記サブ報知情報の内容に従って前記サブ報知情報に対する応答信号を出力し、
前記中継制御部は、
前記中継通信部を介して送信した前記サブ報知情報に対する応答信号を受信した場合には、前記1サブスーパフレームの構成に、前記報知情報に対する応答信号を受信した端末との間でのデータの送受信を実行するために割り当てたデータ通信区間を追加し、
前記データ通信区間の追加に従って、前記1サブスーパフレームの構成を示すサブ報知情報を更新し、
前記更新されたサブ報知情報を受信した前記別の端末は、前記更新されたサブ報知情報に従って、自己のために割り当てられた前記データ通信区間に同期して、前記中継端末との間でデータの送受信を実行する、請求項1記載の通信システム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【公開番号】特開2011−217094(P2011−217094A)
【公開日】平成23年10月27日(2011.10.27)
【国際特許分類】
【出願番号】特願2010−82889(P2010−82889)
【出願日】平成22年3月31日(2010.3.31)
【出願人】(302062931)ルネサスエレクトロニクス株式会社 (8,021)
【Fターム(参考)】
【公開日】平成23年10月27日(2011.10.27)
【国際特許分類】
【出願日】平成22年3月31日(2010.3.31)
【出願人】(302062931)ルネサスエレクトロニクス株式会社 (8,021)
【Fターム(参考)】
[ Back to top ]