以下、本発明の実施形態について図面を参照して説明する。
まず、無線通信システムの概要について、図1及び図2を参照して説明する。図1は、本実施形態に係る無線通信システムの構成の一例を示す図である。図1に示すように、この無線通信システムは、複数の無線通信装置1と、集約装置2と、を備える。無線通信システムは、無線メッシュネットワークを構成しており、時分割通信方式により通信する。
この無線通信システムにおいて、所定の範囲内に配置された複数の無線通信装置1及び集約装置2は、互いに無線通信が可能である。無線通信装置1は、例えば、温度センサや加速度センサなどの任意のセンサを搭載し、センサにより測定したセンサ情報を無線で送信する。以下では、無線通信装置1がセンサ情報を送信する場合を例に説明するが、無線通信装置1が送信する情報は、センサ情報に限られない。
各無線通信装置1が送信したセンサ情報は、他の無線通信装置1に中継され、或いは、直接的に集約装置2に送信される。集約装置2は、各無線通信装置1から送信されたセンサ情報を集約する。集約装置は、例えば、無線通信機能を備えたサーバである。
図2は、図1の無線通信システムを模式的にネットワークトポロジーの形態で示した図である。図2において、アルファベットは各無線通信装置1、根は集約装置2、矢印は情報の伝達経路を示す。矢印の元は情報の送信元であり、矢印の先は情報の送信先を示す。
以下の説明において、無線通信システムを構成する無線通信装置1及び集約装置2をノードといい、各無線通信装置1を無線ノードX、集約装置2を根ノードという。Xは、各無線ノードのID(以下、「ノードID」という)であり、図中のアルファベットと対応する。
また、ある無線ノードXのセンサ情報が根ノードに到達するまでに、そのセンサ情報が送信又は中継される回数を、ホップ数という。例えば、図2の無線ノードAのセンサ情報は、無線ノードAが送信すると根ノードに到達する。したがって、無線ノードAのホップ数は1となる。また、無線ノードEのセンサ情報は、無線ノードEが送信し、無線ノードBが中継すると根ノードに到達する。したがって、無線ノードEのホップ数は2となる。
また、複数の無線ノードXのうち、根ノードに近い(根ノードまでのホップ数が小さい)側を上流側、根ノードから遠い(根ノードまでのホップ数が大きい)側を下流側という。
また、情報を送受信する2つの無線ノードのうち、上流側の無線ノード又は根ノードを親ノード、下流側の無線ノードを子ノードという。例えば、図2の無線ノードBの親ノードは根ノードであり、子ノードは無線ノードE,F,Gである。
次に、本実施形態におけるフレーム(frame)について説明する。本実施形態に係る無線通信システムが採用する時分割通信方式では、無線通信システムの1サイクル分の動作時間が予め設定されている。この動作時間をフレームという。無線通信システムは、このフレームを繰り返すことにより動作する。
図3は、本実施形態に係るフレームの一例を示す図である。図3に示すように、フレームは、複数のスロット(slot)に時分割されている。スロットとは、無線通信システムにおける各ノードの動作の単位時間のことである。フレームが60スロットに時分割され、各スロットの時間が1分の場合、1つのフレームの時間は1時間となる。
また、フレームには、複数のスロット群が設定されている。スロット群とは、連続する複数のスロットを含む期間のことである。スロット群は、各スロット群が重複しないように、無線通信システムにおける最大ホップ数N個以上設定される。図3の例では、フレームには、N個のスロット群が設定されている。
例えば、フレームが300スロットに時分割され、最大ホップ数Nが10である場合、連続する30スロットを含むスロット群が10個設定されてもよいし、連続する20スロットを含むスロット群が15個設定されてもよい。各スロット群に含まれるスロットの数は同一であってもよいし、異なってもよい。また、フレームには、スロット群が設定されない期間があってもよい。
また、各スロット群は、無線通信システムを構成するノードの台数以上のスロットが含まれるように設定される。例えば、無線通信システムが9台の無線ノードと、1台の根ノードと、により構成される場合、各スロット群は、10個以上のスロットが含まれるように設定される。
また、無線通信システムに新たな無線ノードが接続されることが想定される場合には、各スロット群は、接続されるノードの台数を考慮した数のスロットが含まれるように設定される。例えば、現在の無線通信システムが10台のノードにより構成され、将来的に10台の新たな無線ノードの接続が見込まれる場合、各スロット群は、20個以上のスロットを含むように設定される。
また、各スロット群には、それぞれランク値Rが割当てられる。ランク値Rとは、無線ノードのホップ数を示す値のことである。上記のように、無線通信システムにおける最大ホップ数がNの場合、各スロット群には、1〜Nのランク値Rがそれぞれ割当てられる。
この際、フレームにおいて時間が早いスロット群ほど、大きなランク値Rが割当てられ、時間が遅いスロット群ほど、小さなランク値Rが割当てられる。例えば、図3のフレームの1番目のスロット群には、ランク値Nが割当てられ、最後のスロット群には、ランク値1が割当てられている。以下、ランク値Rが割当てられたスロット群を、スロット群Rという。例えば、ホップ数はランク値Rと同じ値である。
また、各スロット群に含まれる各スロットには、無線通信システムを構成する各ノードのノードIDが割当てられる。図3の例では、各スロット群の各スロットには、時間の早いスロットから順に、無線ノードA,B,C,・・・,根ノードのノードIDが割当てられている。なお、スロットに対してノードIDを割当てる順番は、図3の例に限られず、任意である。また、各スロット群には、ノードIDが割当てられていないスロットが含まれてもよい。また、ノードIDを割当てる順番は、スロット群毎に異なってもよい。以下、無線ノードXのノードIDが割当てられたスロットを、スロットXという。
また、無線通信システムに新たな無線ノードが接続されることが想定される場合には、各スロット群には、未接続の無線ノードのノードIDが割当てられたスロットが含まれてもよい。未接続の無線ノードのノードIDの割当ては、未接続の無線ノードのノードIDが予めわかっている場合、そのノードIDをスロットに割当てることにより可能である。
一方、未接続の無線ノードのノードIDが不明な場合には、各スロットに、無線通信システムに接続した順番に応じた番号を予め割当て、割当てた番号と、無線ノードのノードIDと、を無線ノードが接続した順に対応付ければよい。例えば、無線通信システムに3台の無線ノードが接続されており、そこに4台目の新たな無線ノードXが接続した場合、スロットの番号4にXを対応付ける。これにより、新たな無線ノードXのノードIDが、番号4を割当てられたスロットに割当てられる。
以上説明した通り、本実施形態では、フレームに対して、予め複数のスロット群が設定される。そして、各スロット群には、それぞれランク値が割当てられる。各スロット群に含まれる各スロットには、それぞれ無線ノードのノードIDが割当てられる。以下の説明において、無線ノードが割当てられたスロットは、無線ノードのノードIDが割当てられたスロットに相当する。
以上の設定情報は、フレーム情報として、各ノードに記憶される。各ノードは、フレーム情報を利用して送信処理、受信処理、及び接続処理を実行する。以下、各無線ノードの送信処理、受信処理、及び接続処理について、それぞれ説明する。
まず、各無線ノードの送信処理について説明する。各無線ノードは、自ノードのホップ数を示すランク値Rを有し、ランク値Rに基づいて、自ノードの送信スロットを決定し、使用する。送信スロットとは、無線ノードが、情報を送信するスロットのことである。無線ノードは、送信スロットにおいて、自ノードのセンサ情報の送信と、子ノードから受信したセンサ情報の中継と、を実行する。
具体的には、各無線ノードXは、自ノードのランク値Rを割当てられたスロット群Rのスロットのうち、自ノードが割当てられたスロットXを、送信スロットとして使用する。すなわち、ランク値Rを有する無線ノードXの送信スロットは、スロット群RのスロットXとなる。
図4は、こうして決定された送信スロットの一例を示す図である。例えば、図4の例では、無線ノードAは、ホップ数が1であるため、ランク値1(R=1)を有する。この無線ノードAは、スロット群1のスロットA(無線ノードAを割当てられたスロット)を送信スロットとして使用する。
本実施形態では、各無線ノードが上記のように送信スロットを決定する。この結果、センサ情報の伝達経路において下流側に位置する(ホップ数が大きい)無線ノードほど、フレームにおいて時間が早いスロットを、送信スロットして割当てられる。
例えば、図4の無線ノードIに着目すると、無線ノードIから根ノードまでの情報伝達経路は、下流側から順に無線ノードI,E,B、根ノードにより構成される。そして、図4からわかるように、これらの無線ノードの送信スロットは、無線ノードI,E,B、根ノードの順に時間が早い。
このように各無線ノードの送信スロットが割当てられることにより、各無線ノードから根ノードまでの情報伝達時間を短縮することができる。具体的には、情報伝達時間を1フレーム以内にすることができる。
また、各無線ノードの送信スロットとして異なるスロットが割当てられるため、送信信号の衝突を避けることができる。
次に、各無線ノードの受信処理について説明する。各無線ノードは、自ノードのランク値Rに基づいて、受信処理を実行する第1の受信期間及び第2の受信期間をそれぞれ決定し、使用する。
第1の受信期間は、無線ノードが子ノードから無線信号を受信する期間である。無線ノードは、第1の受信期間の間に子ノードから受信した無線信号に含まれるセンサ情報を、自ノードの送信スロットの間に親ノードに中継する。無線ノードは、子ノードの送信スロットを含むように第1の受信期間を決定する。
ある無線ノードXの子ノードYのランク値は、無線ノードXのランク値より1大きくなる。すなわち、無線ノードXのランク値がRの場合、子ノードYのランク値は(R+1)となる。このため、子ノードYの送信スロットは、スロット群(R+1)のスロットYとなる。無線ノードXは、スロット群(R+1)のスロットYを含む期間を、第1の受信期間として決定する。
例えば、無線ノードXは、スロット群(R+1)を第1の受信期間として決定してもよい。これは、図4の無線ノードEが、スロット群3を第1の受信期間として決定する場合に相当する。このように第1の受信期間を決定することにより、無線ノードXは、子ノードYのノードIDを把握していない場合であっても、子ノードYからの無線信号を受信することができる。
また、無線ノードXは、スロット群(R+1)のスロットYを第1の受信期間として決定してもよい。これは、図4の無線ノードEが、スロット群3のスロットH,Iを第1の受信期間として決定する場合に相当する。このように第1の受信期間を決定することにより、無線ノードXは、受信処理を実行する期間を短縮し、消費電力を低減できる。
第2の受信期間は、無線ノードが親ノードからの無線信号を受信する期間である。無線ノードは、第2の受信期間の間に受信した無線信号に基づいて、現在の親ノードの適否の判断や、新たな親ノードの選択を行う。無線ノードは、親ノードの送信スロットを含むように第2の受信期間を決定する。
ある無線ノードXの親ノードZのランク値は、無線ノードXのランク値より1小さくなる。すなわち、無線ノードXのランク値がRの場合、親ノードZのランク値は(R−1)となる。このため、親ノードZの送信スロットは、スロット群(R−1)のスロットZとなる。無線ノードXは、スロット群(R−1)のスロットZを含む期間を、第2の受信期間として決定する。
例えば、無線ノードXは、スロット群(R−1)を第2の受信期間として決定してもよい。これは、図4の無線ノードEが、スロット群1を第2の受信期間として決定する場合に相当する。このように第2の受信期間を決定することにより、親ノードZから無線信号を受信し、親ノードZの適否を判断することができる。また、無線ノードXは、ランク値(R−1)を有する各無線ノードからの無線信号を受信し、受信した無線信号に基づいて、新たな親ノードを選択することができる。
また、無線ノードXは、スロット群(R−1)のスロットZを第2の受信期間として決定してもよい。これは、図4の無線ノードEが、スロット群1のスロットBを第2の受信期間として決定する場合に相当する。このように第2の受信期間を決定することにより、無線ノードXは、受信処理を実行する期間を短縮し、消費電力を低減できる。
図5及び図6は、送信スロット、第1の受信期間、及び第2の受信期間の一例を示す図である。図5の例では、無線ノードI(R=3)の送信スロットはスロット群3のスロットI、第1の受信期間はスロット群4、第2の受信期間はスロット群2となっている。図6の例では、無線ノードI(R=3)の送信スロットはスロット群3のスロットI、第1の受信期間はスロット群4のスロットL,M、第2の受信期間はスロット群2のスロットEとなっている。図5及び図6では、送信スロット、第1の受信期間、及び第2の受信期間を除く期間、無線ノードIは、信号の送受信ができないスリープ状態となっている。スリープ状態となることにより、無線ノードIは、消費電力を低減できる。スリープ状態について、詳しくは後述する。
次に、各無線ノードの接続処理について説明する。接続処理とは、無線通信システムに接続されていない無線ノード(以下、「新たな無線ノード」という)を、無線通信システムに接続するための処理のことである。接続処理には、接続要求処理と、接続受付処理と、が含まれる。
接続要求処理は、新たな無線ノードが、接続済みの候補ノードに接続要求を送信する処理である。候補ノードとは、新たな無線ノードの親ノード候補となるノードのことである。接続要求とは、新たな無線ノードが、候補ノードに対して、自ノードを子ノードとして接続するように要求する信号である。接続要求には、新たな無線ノードのノードIDと、候補ノードのノードIDと、が含まれる。
新たな無線ノードは、候補ノード探索期間の間、無線信号を受信し、受信した無線信号に基づいて、候補ノードを決定する。候補ノード探索期間は、例えば、1フレームである。そして、新たな無線ノードは、接続要求期間の間、決定した候補ノードに接続要求を送信する。接続要求期間は、候補ノードの接続受付期間の一部又は全部である。接続受付期間について、詳しくは後述する。
接続受付処理は、候補ノードが、新たな無線ノードから接続要求を受信し、新たな無線ノードからの接続の可否を判断し、判断した結果を新たな無線ノードに返信する処理である。候補ノードは、例えば、既に接続済みの子ノードの台数や、現在のペイロードの大きさに基づいて、接続を可否の判断を行う。
候補ノードが接続を承認した場合、新たな無線ノードは、候補ノードの子ノードとして、無線通信システムに接続される。すなわち、候補ノードが、新たな無線ノードの親ノードとなる。
接続済みの各無線ノードは、上記の接続受付処理を実行するための接続受付期間を決定する。接続受付期間とは、無線ノードが、自ノード宛ての接続要求を受け付ける(受信処理する)期間のことである。各無線ノードの接続受付期間は、以下の要件を満たすのが好ましい。
第1の要件は、接続受付期間が、自ノードの送信スロットと重複しないことである。接続受付期間が、自ノードの送信スロットと重複すると、送信スロットの間に送信処理及び接続受付処理を実行しなければならず、処理が煩雑になったり、処理が間に合わなくなったりする恐れがある。また、自ノードが送信した信号と、自ノード宛ての接続要求と、が衝突し、接続要求を受信できない恐れがある。
第2の要件は、接続受付期間が、他ノードの送信スロットと重複しないことである。接続受付期間が、他ノードの送信スロットと重複すると、他ノードが送信した信号と、接続要求と、が衝突し、接続要求を受信できない恐れがある。
第3の要件は、接続受付期間が、他ノードの接続受付期間と重複しないことである。自ノードの接続受付期間と、他ノードの接続受付期間と、が重複すると、自ノード宛ての接続要求と、他ノード宛ての接続要求と、が衝突し、接続要求を受信できない恐れがある。
第1の要件から第3の要件を満たす無線ノードXの接続受付期間として、無線ノードXと異なるランク値を割当てられたスロット群における、無線ノードXを割当てられたスロットXが挙げられる。
図7は、このような接続受付期間の一例を示す図である。図7は、ランク値4を有する無線ノードXの接続受付期間を示している。図7の例では、無線ノードXは、スロット5を割当てられている。
図7に示すように、無線ノードXの送信スロットは、スロット群4のスロット5となる。これに対して、無線ノードXの接続受付期間は、スロット群4以外のスロット群における、スロット5である。
スロット群4以外のスロット群のスロット5は、無線ノードX及び他の無線ノードにより送信スロットとして使用されず、かつ、他の無線ノードの接続受付期間としても使用されない。したがって、スロット群4以外のスロット群のスロット5は、第1乃至第3の要求をいずれも満たす。
無線ノードXは、自ノードのランク値Rに基づいて、ランク値R以外を割当てられたスロット群における、自ノードを割当てられたスロットXの1つ又は複数を、接続受付期間として決定すればよい。
また、予めフレームの先頭に、接続受付用スロット群が設けられていてもよい。この場合、各無線ノードは、接続受付用スロット群における、自ノードのスロットを接続受付期間として決定すればよい。こうして決定された各無線ノードの接続受付期間は、上記の第1の要件から第3の要件を全て満たす。
接続受付用スロット群を設定することにより、フレームの先頭で行う他の処理と同時に接続受付処理を行えるため、全体の処理を効率化できる。また、接続済みの全ての無線ノードの接続受付期間が同スロット群となるため、新たな無線ノードが接続要求を送信するスロット群を変更する必要がない。これにより、接続要求処理を単純化できる。
以上説明した通り、各無線ノードの接続受付期間を第1の要件から第3の要件を満たすように決定することにより、接続要求と他の無線信号との衝突を抑制し、接続要求の受信精度を向上させることができる。
さらに、ランク値Rを有する無線ノードXの接続受付期間は、自ノードのランク値Rより2以上大きいランク値を割当てられたスロット群のスロットXとすることができる。理由は、以下の通りである。
無線ノードXに接続を要求した新たな無線ノードのセンサ情報は、無線ノードXにより、できるだけ早く中継されることができる。しかしながら、無線ノードXの接続受付期間が、(R−1)以下のランク値を割当てられたスロット群のスロットXである場合、この接続受付期間に新たな無線ノードが接続されたとしても、新たな無線ノードのセンサ情報が無線ノードXにより受信されるのは、次のフレームにおける新たな無線ノードの送信スロットとなる。
例えば、図7の無線ノードXの接続受付期間がスロット群3のスロット5である場合、あるフレームのスロット群3のスロット5に接続された新たな無線ノードのセンサ情報は、次のフレームのスロット群5に無線ノードXにより受信される。
これは、無線ノードXの接続受付期間が、ランク値(R+1)を割当てられたスロット群(R+1)のスロットXである場合も同様である。なぜなら、新たな無線ノードに、スロットXより早いスロットが割当てられることがあり得るためである。
例えば、図7の無線ノードXの接続受付期間がスロット群5のスロット5である場合、あるフレームのスロット群5のスロット5に、スロット1が割当てられた新たな無線ノードが接続されると、接続された新たな無線ノードのセンサ情報は、次のフレームのスロット群5のスロット1に無線ノードXにより受信される。
結果として、ランク値Rを有する無線ノードXの接続受付期間が、(R+1)以下のランク値を割当てられたスロット群のスロットXである場合、新たな無線ノードのセンサ情報が中継されるのは、新たな無線ノードが無線通信システムに接続されたフレームの次のフレームとなり得る。
これに対して、無線ノードXの接続受付期間が、(R+2)以上のランク値を割当てられたスロット群のスロットXである場合、この接続受付期間に新たな無線ノードが接続されると、新たな無線ノードのセンサ情報が無線ノードXにより受信されるのは、新たな無線ノードが接続されたフレームと同じフレームとなる。
例えば、図7の無線ノードXの接続受付期間がスロット群6のスロット5である場合、あるフレームのスロット群6のスロット5に接続された新たな無線ノードのセンサ情報は、そのフレームのスロット群5に無線ノードXにより受信される。
結果として、ランク値Rを有する無線ノードXの接続受付期間が、(R+2)以上のランク値を割当てられたスロット群のスロットXである場合、新たな無線ノードのセンサ情報が中継されるのは、新たな無線ノードが無線通信システムに接続されたフレームと同じフレームとなる。
このように、ランク値Rを有する無線ノードXの接続受付期間を、自ノードのランク値Rより2以上大きいランク値が割当てられたスロット群のスロットXとすることにより、新たな無線ノードのセンサ情報の中継を早く開始することができる。具体的には、新たな無線ノードのセンサ情報の中継を、新たな無線ノードが接続されたフレームと同じフレームに開始することができる。
なお、各無線ノードの接続受付期間が複数ある場合には、新たな無線ノードは、候補ノードに接続要求を送信する前に、受信処理を実行し、他の無線ノードが同じ候補ノードに接続要求を送信していないか確認してもよい。新たな無線ノードは、他の無線ノードが接続要求を送信していない場合には、自ノードの接続要求を送信する。また、新たな無線ノードは、他の無線ノードが接続要求を送信していた場合には、次の接続受付期間に再度接続要求処理を実行する。
これにより、同じ候補ノードに対する複数の接続要求が衝突することを抑制し、接続要求の受信精度を向上させることができる。
次に、本実施形態に係る無線通信装置1の構成について、図8を参照して説明する。本実施形態に係る無線通信装置1は、上記の無線通信システムを自律的に構成する。図8は、無線通信装置1の構成の一例を示す図である。図8の無線通信装置1は、送受信アンテナ11と、無線通信部12と、を備える。
送受信アンテナ11は、無線信号を受信する。送受信アンテナ11が受信する無線信号は、自ノードの近くの他のノードが送信した無線信号である。したがって、送受信アンテナ11は、複数の他のノードからの無線信号を受信し得る。送受信アンテナ11は、受信した無線信号を電気信号に変換して無線通信部12に入力する。
また、送受信アンテナ11は、無線通信部12から出力された電気信号を無線信号に変換して送信する。
無線通信部12は、後述するように、ベースバンド回路やRF回路により構成される。図8には、無線通信部12の機能構成が示されている。図8に示すように無線通信部12は、送受信部13と、宛先判定部14と、中継情報記憶部15と、送信情報生成部16と、送信先ノード決定部17と、タイミング決定部18と、フレーム情報記憶部19と、を備える。
送受信部13は、無線信号の受信処理を実行する。具体的には、送受信部13は、送受信アンテナ11から入力された電気信号に所定の信号処理を施し、受信した無線信号から受信情報を取得する。信号処理には、AD変換や所定の通信プロトコルに従った復号化などの処理が含まれる。
受信情報には、送信元ノードのランク値と、送信元ノードのセンサ情報と、送信元ノードのノードIDと、送信元ノードの中継情報と、送信先ノードのノードIDと、が含まれる。
送信元ノードとは、送受信部13が受信した受信情報を送信したノードのことである。送信先ノードとは、送信元ノードが情報の宛先として指定したノードのことである。ノードIDとは、各ノードの固有の識別子である。中継情報とは、送信元ノードが中継した、他のノードのセンサ情報である。
また、送受信部13は、無線信号の送信処理を実行する。具体的には、送受信部13は、送信情報生成部16が生成した送信情報に所定の信号処理を施して電気信号に変換し、送受信アンテナ11に出力する。信号処理には、DA変換や所定の通信プロトコルに従った符号化などの処理が含まれる。
送信情報には、自ノードのランク値と、自ノードのセンサ情報と、自ノードのノードIDと、自ノードの中継情報と、送信先ノードのノードIDと、が含まれる。
送受信部13が無線信号の受信処理及び送信処理を実行するタイミングは、タイミング決定部18により決定される。
宛先判定部14は、送受信部13から受信情報を取得し、受信情報の宛先が自ノードであるか判定する。宛先判定部14は、受信情報に含まれる送信先ノードのノードIDが自ノードのノードIDである場合、受信情報の宛先が自ノードであると判定する。
中継情報記憶部15は、宛先判定部14により自ノードが宛先と判定された受信情報を、中継情報として一時的に記憶する。
送信情報生成部16は、送信情報及び接続要求を生成する。送信情報生成部16は、例えば、中継情報記憶部15に記憶された中継情報に、自ノードのランク値と、自ノードのセンサ情報と、自ノードのノードIDと、送信先ノードのノードIDと、を付加することにより、送信情報を生成する。
また、送信情報生成部16は、自ノードのランク値と、自ノードのノードIDと、送信先ノードのノードIDと、を含む接続要求を生成する。
自ノードのランク値及び送信先ノードのノードIDは、送信先ノード決定部17から取得すればよい。また、自ノードのノードIDは、フレーム情報記憶部19から取得すればよい。送信情報生成部16により生成された送信情報は、送受信部13に入力される。
送信先ノード決定部17は、送受信部13から受信情報を取得し、取得した受信情報に基づいて、送信情報の宛先となる送信先ノードを決定する。自ノードが接続済みの場合、送信先ノード決定部17は、第2の受信期間に受信した受信情報に基づいて、送信先ノード(親ノード)を決定する。送信先ノード決定部17は、例えば、ランク値が自ノードのランク値より1以上小さいノードの中で、無線信号の信号強度が最も大きい無線ノードを送信先ノード(親ノード)として決定する。
また、自ノードが未接続の場合、送信先ノード決定部17は、候補ノード探索期間の間、送受信部13に受信処理を実行させる。そして、候補ノード探索期間の間に受信した受信情報に基づいて、送信先ノード(候補ノード)を決定する。送信先ノード決定部17は、例えば、無線信号の信号強度が最も大きい無線ノードを、送信先ノード(候補ノード)として決定する。
また、送信先ノード決定部17は、決定した送信先ノードに基づいて、自ノードのランク値を決定する。具体的には、送信先ノード決定部17は、決定した送信先ノードのランク値より1大きいランク値を、自ノードのランク値として決定する。
タイミング決定部18は、自ノードのランク値と、フレーム情報とに基づいて、自ノードの送信処理、受信処理、接続受付処理、及び接続要求処理などのタイミングを決定する。具体的には、タイミング決定部18は、送信スロット、第1の受信期間、第2の受信期間、接続受付期間、及び接続要求期間を決定する。フレーム情報とは、上述の通り、無線通信システムにおけるフレーム、スロット群、及びスロットなどの設定情報のことである。
タイミング決定部18は、まず、送信先ノード決定部17が決定した自ノードのランク値Rと、フレーム情報と、に基づいて、送信スロットが含まれるスロット群を選択する。次に、タイミング決定部18は、選択したスロット群に含まれるスロットの中から、自ノードのノードIDが割当てられたスロットを、送信スロットとして決定する。
これにより、ランク値Rの無線ノードXの送信スロットが、スロット群RのスロットXに決定される。各無線通信装置1が、このように送信スロットを決定することにより、上述のスロット割当て方法が実現される。
タイミング決定部18は、送信スロットを決定する前に、同期処理を行ってもよい。同期処理とは、自ノードでカウントしている時刻を、他のノードとの間で同期させる処理のことである。
タイミング決定部18は、例えば、受信情報に含まれる送信元ノードのランク値及びノードIDと、フレーム情報と、に基づいて、送信元ノードの送信時刻(送信スロット)を取得する。タイミング決定部18は、この送信時刻に自ノードの送受信部13による信号処理時間を加算した時刻と、自ノードでカウントしている時刻と、を比較することにより、同期処理を行うことができる。なお、タイミング決定部18は、送信元ノードからの無線信号の伝播に要する時間を考慮して同期処理を行ってもよい。
また、タイミング決定部18は、送信先ノード決定部17が決定した自ノードのランク値Rと、フレーム情報と、に基づいて、第1の受信期間を決定する。第1の受信期間は、自ノードのランク値Rより1大きいランク値(R+1)を割当てられたスロット群(R+1)であってもよいし、スロット群(R+1)における子ノードYが割当てられたスロットYであってもよい。
また、タイミング決定部18は、送信先ノード決定部17が決定した自ノードのランク値Rと、フレーム情報と、に基づいて、第2の受信期間を決定する。第2の受信期間は、自ノードのランク値Rより1小さいランク値(R−1)を割当てられたスロット群(R−1)であってもよいし、スロット群(R−1)における親ノードZが割当てられたスロットZであってもよい。
また、タイミング決定部18は、送信先ノード決定部17が決定した自ノードのランク値Rと、フレーム情報と、に基づいて、接続受付期間を決定する。タイミング決定部18は、自ノードのランク値Rと異なるランク値を割当てられた1つ又は複数のスロット群における、自ノードが割当てられたスロットXを、接続受付期間として決定する。タイミング決定部18は、自ノードのランク値Rより2以上大きいランク値を割当てられた1つ又は複数のスロット群における、自ノードが割当てられたスロットXを、接続受付期間として決定するのが好ましい。
また、タイミング決定部18は、自ノードが未接続の場合、送信先ノード決定部17が決定した送信先ノードのノードID及びランク値と、フレーム情報と、に基づいて、接続要求期間を決定する。タイミング決定部18は、送信先ノードのノードID及びランク値に基づいて、送信先ノードの接続受付期間を取得し、送信先ノードの接続受付期間に基づいて、接続要求期間として決定する。タイミング決定部18は、送信先ノードの接続受付期間の全部を接続要求期間として決定してもよいし、送信先ノードの接続受付期間の一部を接続要求期間として決定してもよい。
フレーム情報記憶部19は、フレーム情報を記憶する。フレーム情報は、予め登録されていてもよいし、無線通信により登録及び更新されてもよい。フレーム情報には、フレームの長さ及び開始時刻、各スロット群に割当てられたランク値、及び各スロットに割当てられたノードID(又は番号)、などの情報が含まれる。また、フレーム情報記憶部19には、自ノードの情報(ノードIDなど)が記憶される。
スリープ制御部20は、自ノードの動作状態を、起床状態又はスリープ状態に制御する。起床状態とは、無線通信装置1が情報の送受信を可能な状態のことである。起床状態では、送受信部13が動作している。
これに対して、スリープ状態とは、無線通信装置1が情報の送受信を不能な状態のことである。スリープ状態では、送受信部13の動作が休止している。また、スリープ状態では、時刻のカウントやスリープ制御部20などを除く、一部の演算処理も休止する。このため、スリープ状態は、起床状態に比べて無線通信装置1の消費電力が低くなる。
スリープ制御部20は、自ノードが情報を送信する期間(送信スロット)、接続要求期間、情報を受信する期間(第1の受信期間、第2の受信期間)、及び接続受付期間に、自ノードを起床状態とし、それ以外の期間に自ノードをスリープ状態とする。以下では、無線通信部12が起床状態からスリープ状態に移行することを、「スリープする」といい、スリープ状態から起床状態に移行することを「起床する」という。
次に、無線通信装置1のハードウェア構成について、図9を参照して説明する。図9は、本実施形態に係る無線通信装置1のハードウェア構成の一例を示す図である。図9の無線通信装置1は、アンテナ11と、ベースバンド回路111と、RF回路121と、を備える。
ベースバンド回路111及びRF回路121により、無線通信部12の機能が実現される。ベースバンド回路111及びRF回路121は、まとめて1チップの集積回路(IC)として構成されてもよいし、別々のチップで構成されてもよい。
ベースバンド回路111は、制御回路112と、送信処理回路113と、受信処理回路114と、DA変換器115,116と、AD変換器117,118と、を備える。ベースバンド回路111は、1チップのベースバンドLSI又はベースバンドICであってもよいし、図9に示すように、IC131と、IC132と、の2チップのICを備えてもよい。
図9の例では、IC131は、DA変換器115と,116と、AD変換器117,118と、を備える。IC132は、制御回路112と、送信処理回路113と、受信処理回路114と、を備える。各ICに含まれる構成の分け方は、これに限られない。また、ベースバンド回路111は、3つ以上のICにより構成されてもよい。
制御回路112は、他のノードとの通信に関する処理を行う。具体的には、制御回路112は、データフレーム、制御フレーム及び管理フレームの3種類のMACフレームを扱い、MAC層において規定される各種の処理を実行する。
また、制御回路112は、MAC層より上位層(例えば、TCP/IPやUDP/IP、さらにその上層のアプリケーション層など)の処理を実行してもよい。上述の無線通信部12の各機能構成は、プログラムを制御回路112が実行することにより実現されてもよい。プログラムは、制御回路112が備えるメモリに記憶しておけばよい。
送信処理回路113は、制御回路112からMACフレームを受け取る。送信処理回路113は、MACフレームへのプリアンブル及びPHYヘッダの追加や、MACフレームの符号化や変調を実行する。これにより、送信処理回路113は、MACフレームをPHYパケットに変換する。
DA変換器115,116は、送信処理回路113が出力したPHYパケットをDA変換する。図9の例では、DA変換器は2系統設けられ、並列処理しているが、DA変換器は1つでもよいし、アンテナの数だけ設けられる構成も可能である。
RF回路121は、例えば、1チップのRFアナログICや高周波ICである。RF回路121は、ベースバンド回路111とまとめて1チップに構成されてもよいし、送信回路122を備えるICと、受信処理回路を備えるICと、の2チップにより構成されてもよい。RF回路121は、送信回路122と、受信回路123と、を備える。
送信回路122は、DA変換器115,116によりDA変換されたPHYパケットにアナログ信号処理を行う。送信回路122が出力したアナログ信号が、アンテナを介して無線で送信される。送信回路122は、送信フィルタ、ミキサ、及びパワーアンプ(PA)などを備える。
送信フィルタは、DA変換器115,116によりDA変換されたPHYパケットの信号から、所望帯域の信号を抽出する。ミキサは、発振装置から供給される一定周波数の信号を利用して、送信フィルタによりフィルタリング後の信号を無線周波数にアップコンバートする。プリアンプは、アップコンバート後の信号を増幅する。増幅後の信号がアンテナに供給され、無線信号が送信される。
受信回路123は、アンテナで受信した信号にアナログ信号処理を行う。受信回路123が出力した信号は、AD変換器117,118に入力される。受信回路123は、LNA(低雑音増幅器)、ミキサ、及び受信フィルタなどを備える。
LNAは、アンテナで受信した信号を増幅する。ミキサは、発振装置から供給される一定周波数の信号を利用して、増幅後の信号をベースバンドにダウンコンバートする。受信フィルタは、ダウンコーバート後の信号から所望帯域の信号を抽出する。抽出後の信号は、AD変換器117,118に入力される。
AD変換器117,118は、受信回路123からの入力信号をAD変換する。図9の例では、AD変換器は2系統設けられ、並列処理しているが、AD変換器は1つであってもよいし、AD変換器がアンテナの数だけ設けられる構成でもよい。
受信処理回路114は、AD変換器117,118によりAD変換されたPHYパケットを受け取る。受信処理回路114は、PHYパケットの復調及び復号化や、PHYパケットからのプリアンブル及びPHYヘッダの除去などを行う。これにより、受信処理回路114は、PHYパケットをMACフレームに変換する。受信処理回路114による処理後のフレームは、制御回路112に入力される。
なお、図9の例では、DA変換器115,116及びAD変換器117,118は、ベースバンド回路111に配置されているが、RF部121に配置されるように構成することも可能である。
次に、本実施形態に係る無線通信装置1の動作について、図10及び図11を参照して説明する。図10は、無線通信装置1の接続要求処理の一例を示すフローチャートである。無線通信装置1は、電源の投入時や、接続済みの親ノードが不適と判断した場合に、接続要求処理を実行する。なお、以下では、無線通信装置1は、フレーム情報及び自ノードIDを予め記憶しているものとする。
接続要求処理が開始されると、まず、送受信部13が、親ノードの候補となる候補ノードを探索する(ステップS1)。具体的には、送受信部13は、候補ノード探索期間の間、受信処理を実行する。候補ノード探索期間は、例えば、1フレームであるが、これに限られない。
送受信部13は、候補ノード探索期間の間に無線信号を受信すると、無線信号に含まれる受信情報を取得し、取得した受信情報を記憶する。具体的には、送受信部13は、送信元ノードのノードIDと、送信元ノードのランク値と、無線信号の信号強度と、を無線信号毎に記憶する。信号強度は、例えば、RSSI(Received Signal Strength Indicator)であるが、これに限られない。
候補ノード探索期間が終了すると、送受信部13は、記憶した情報を送信先ノード決定部17に渡す。そして、送信先ノード決定部17は、受け取った情報に基づいて、候補ノードを決定する(ステップS2)。
送信先ノード決定部17は、例えば、無線信号の信号強度が最も大きいノードを、候補ノードとして決定する。また、自ノードが接続済みの場合、送信先ノード決定部17は、自ノードのランク値より1以上小さいランク値を有するノードの中で、無線信号の信号強度が最も大きいノードを候補ノードとして決定してもよい。
送信先ノード決定部17は、決定した候補ノードのランク値より1大きいランク値を、自ノードのランク値として決定する。
次に、送信先ノード決定部17は、送信情報生成部16に接続要求の生成を指示する。送信情報生成部16は、自ノードのランク値及びノードIDと、送信先ノード(候補ノード)のノードIDと、を含む接続要求を生成する(ステップS3)。
また、タイミング決定部18は、候補ノードのランク値及びノードIDと、フレーム情報と、に基づいて、候補ノードの接続受付期間を取得し、取得した接続受付期間の少なくとも一部を、接続要求期間として決定する(ステップS4)。例えば、図7の無線ノードXが候補ノードである場合、タイミング決定部18は、スロット群6のスロット5を、接続要求期間として決定する。
そして、タイミング決定部18が決定した接続要求期間が開始すると、送受信部13は、送信情報生成部16から接続要求を受け取り、無線信号に変換して送信する(ステップS5)。送受信部13は、接続要求期間の間、接続要求を継続的に送信してもよいし、所定の回数だけ送信してもよい。
その後、接続要求期間の間に、送受信部13が、候補ノードから接続を承認する無線信号を受信した場合(ステップS6のYES)、無線通信装置1は、候補ノードの子ノードとして、無線通信システムに接続される(ステップS7)。
一方、接続要求期間の間に、送受信部13が、候補ノードから接続を承認する無線信号を受信しなかった場合(ステップS6のNO)、処理はステップS2に戻り、送信先ノード決定部17は、新たな候補ノードを決定する。このとき、処理はステップS1に戻り、無線通信装置1は、再度、候補ノードの探索を行ってもよい。
図11は、接続済みの無線通信装置1の1フレーム分の通常動作の一例を示すフローチャートである。以下では、無線通信装置1は、ランク値Rを有する無線ノードXであり、子ノードY及び親ノードZと接続されているものとする。また、無線ノードXの接続受付期間は、スロット群(R+2)のスロットXであるものとする。
図11に示すように、無線ノードXは、接続受付期間が開始するまでスリープする(ステップS8)。
接続受付期間(スロット群(R+2)のスロットX)が開始すると、スリープ制御部20は、無線ノードXを起床させる。起床した無線ノードXは、接続受付期間の間、接続受付処理を実行する(ステップS9)。具体的には、送受信部13が無線信号を受信し、受信情報を取得し、宛先判定部14が、自ノード宛ての接続要求であるか判定する。無線信号が自ノード宛ての接続要求であった場合、送受信部13は、接続の可否を判断し、判断結果に応じた信号を、接続要求の送信元の新たな無線ノードに返信する。返信する信号は、送信情報生成部16により生成すればよい。
その後、接続受付期間が終了すると、送受信部13は、接続受付処理を終了し、スリープ制御部20が無線ノードXをスリープさせる。無線ノードXは、第1の受信期間が開始するまで、スリープする(ステップS10)。
第1の受信期間が開始すると、スリープ制御部20は、無線ノードXを起床させる。第1の受信期間は、例えば、スロット群(R+1)又はスロット群(R+1)のスロットYである。起床した無線ノードXは、第1の受信期間の間、子ノードYからの無線信号の受信処理を実行する(ステップS11)。
具体的には、送受信部13が無線信号を受信し、信号処理によって無線信号に含まれるセンサ情報を取得する。次に、宛先判定部14が、取得したセンサ情報が自ノード宛てであるか判定する。センサ情報が自ノード宛てであった場合、中継情報記憶部15がセンサ情報を記憶する。そして、送信情報生成部16が、中継情報記憶部15に記憶されたセンサ情報、自ノードのセンサ情報、自ノードのノードID及びランク値、送信先ノードのノードIDなどを含む送信情報を生成する。
その後、第1の受信期間が終了すると、無線ノードXは、子ノードYからの無線信号の受信処理を終了し、スリープ制御部20が無線ノードXをスリープさせる。無線ノードXは、送信スロットが開始するまで、スリープする(ステップS12)。
送信スロット(スロット群RのスロットX)が開始すると、スリープ制御部20は、無線ノードXを起床させる。起床した無線ノードXは、送信スロットの間、自ノードのセンサ情報の送信処理を実行する(ステップS13)。具体的には、送受信部13が、送信情報生成部16が生成した送信情報を送信する。この送信情報には、上述の通り、子ノードYから受信したセンサ情報が含まれる。したがって、送信情報を送信することにより、自ノードのセンサ情報とともに、子ノードYからの受信したセンサ情報が送信(中継)される。送受信部13は、送信情報の送信を、送信スロットの間、継続的に送信してもよいし、所定の回数だけ送信してもよい。
その後、送信スロットが終了すると、無線ノードXは、自ノードのセンサ情報の送信処理を終了し、スリープ制御部20が無線ノードXをスリープさせる。無線ノードXは、第2の受信期間が開始するまで、スリープする(ステップS14)。
第2の受信期間が開始すると、スリープ制御部20は、無線ノードXを起床させる。第2の受信期間は、例えば、スロット群(R−1)又はスロット群(R−1)のスロットZである。起床した無線ノードXは、第2の受信期間の間、親ノードZからの無線信号の受信処理を実行する(ステップS14)。具体的には、送受信部13が無線信号を受信し、受信情報を取得する。そして、送受信部13は、無線信号の信号強度や受信情報に基づいて、親ノードZの適否を判断する。例えば、送受信部13は、親ノードZからの無線信号の信号強度が所定値以下である場合、親ノードZは不適と判断する。この場合、無線ノードXは、図10の接続要求処理により、新たな親ノードを決定し、接続すればよい。また、第2の受信期間が、スロット群(R−1)である場合には、第2の受信期間の間に受信した無線信号に基づいて、新たな親ノードを決定してもよい。例えば、無線ノードXは、受信した無線信号の信号強度が最大の無線ノードを、新たな親ノードとして決定すればよい。これにより、ランク値(R−1)を有する無線ノードの中から、新たな親ノードを決定することができる。
その後、第2の受信期間が終了すると、無線ノードXは、親ノードZからの無線信号の受信処理を終了し、スリープ制御部20が無線ノードXをスリープさせる。無線ノードXは、フレームが終了するまで、スリープする(ステップS16)。以降、無線ノードXは、次のフレームの接続受付期間が開始するまで、スリープしたままである(ステップ8)。
以上説明した通り、本実施形態に係る無線通信装置は、自ノードのランク値を有するスロット群における、自ノードが割当てられたスロットを、送信スロットとして決定する。これにより、情報伝達時間が1フレーム以内の無線通信システムを、自動的に構築することができる。
また、本実施形態に係る無線通信装置は、自ノードのランク値と異なるランク値を割当てられたスロット群における、自ノードが割当てられたスロットを、接続受付期間として決定する。これにより、無線通信装置は、自ノードへの、接続要求と他の無線信号との衝突を抑制し、接続要求の受信精度を向上させることができる。
また、本実施形態に係る無線通信装置は、自ノードのランク値より2以上大きいランク値を割当てられたスロット群における、自ノードが割当てられたスロットを、接続受付期間として決定することもできる。新たな無線ノードのセンサ情報の中継を早く開始することができる。
なお、本発明は上記各実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記各実施形態に開示されている複数の構成要素を適宜組み合わせることによって種々の発明を形成できる。また例えば、各実施形態に示される全構成要素からいくつかの構成要素を削除した構成も考えられる。さらに、異なる実施形態に記載した構成要素を適宜組み合わせてもよい。