説明

無線通信システム、子局装置、親局装置及び無線通信システム制御方法

【課題】ネットワーク全体の消費電力を抑えつつ、各ノード間の伝播路情報を収集できる無線通信システム、子局装置、親局装置及び無線通信システム制御方法を提供する。
【解決手段】ハブ及び複数のノード1を有する無線通信システムであって、ノード1は、所定の通信期間において、他のノードがハブに向けて送信した信号を取得する無線制御部101と、無線制御部101により取得された信号から伝播路情報を算出するRSSI計算部105と、算出した伝播路情報をハブへ送信するRSSIテーブル作成部106を備える。ハブは、各ノード1が送信した伝播路情報を受信する無線制御部と、受信した伝播路情報を集約するRSSIテーブル集約部とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、無線通信システム、子局装置、親局装置及び無線通信システム制御方法に関する。
【背景技術】
【0002】
通信システムには、ネットワークの接続形態としてスター型、ツリー型及びメッシュ型といった接続形態がある。また、通信システムにおいて、コンピュータやハブといったネットワークの構成要素はノードと呼ばれる。
【0003】
ノード同士が平等に通信を行うメッシュ型のネットワークでは、隣接するノード同士が互いに通信を行う。そのため、メッシュ型のネットワークでは、各ノードからの送信信号の受信電界強度(以下、RSSI(Received Signal Strength Indication:受信電界強度)値という。)を取得することはスター型やツリー型のネットワークに比べて容易である。しかし、メッシュ型のネットワークでは、ノード同士が通信を行うタイミングが予測困難であり、常に通信できる状態にしておかねばならず、ネットワーク全体をスリープさせることが難しいため、低消費電力化が困難である。
【0004】
これに対して、スター型やツリー型のネットワークでは、上位のノードが下位のノードを管理する。そのため、ネットワーク上の各ノードの同期を取ることが容易であり、接続形態をスター型やツリー型とすることで、低消費電力ネットワークが実現できる。
【0005】
ただし、スター型やツリー型のネットワークの場合、各ノードは、自己を子局としたときの上位に位置する親局であるノード、及び自己を親局としたときの下位に位置する子局であるノードとのみ通信する。例えば、スター型やツリー型の一番末端に位置する子局では、その親局となるノードであるハブとのみ通信を行う。すなわち、あるハブの子局同士となるノード間では直接は通信を行なわない。したがって、ハブの子局は、そのハブの他の子局のRSSI値を入手することは難しい。そのため、子局間の通信におけるRSSI値から子局間の距離を推定し、その推定した距離を用いて各子局の位置を推定するなどの測位アルゴリズムをスター型やツリー型の通信システムに適用することは困難であった。
【0006】
メッシュ型のネットワークを用いた従来技術としては、無線通信端末同士の通信における受信強度から無線通信端末間の距離を求め、GPSによる測位結果とを比較し、自端末のGPS測位の結果を修正する技術が提案されている。また、中央局の呼び出しに対する各移動局からの応答信号を基地局で受信して受信電界強度を求め、求めた受信電界強度から移動局の位置を推定する従来技術がある。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2006−343161号公報
【特許文献2】特開平8−172663号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかしながら、メッシュ型のネットワークを用いた場合は、上述したように低消費電力化が困難である。そのため、例えば、放牧している牛に子局としての発信機を取り付けた場合には、発信機の電池がすぐに無くなってしまい、情報が取得できなくなるおそれがある。また、中央局の呼び出しに対する各移動局からの応答信号を基地局で受信して受信電界強度を求める従来技術では、移動局間の距離は分からないため、移動局の位置特定の精度が低くなってしまう。
【0009】
開示の技術は、上記に鑑みてなされたものであって、ネットワーク全体の消費電力を抑えながら、各ノードの測位を容易に行うことができる無線通信システム、子局装置、親局装置及び無線通信システム制御方法を提供することを目的とする。
【課題を解決するための手段】
【0010】
本願の開示する無線通信システム、子局装置、親局装置及び無線通信システム制御方法は、一つの態様において、親局及び複数の子局を有する。そして、前記子局は、所定の通信期間において、他の前記子局である他局が前記親局に向けて送信した信号を取得する他局信号取得部と、前記他局信号取得部により取得された信号から伝播路情報を算出する伝播路情報取得部と、算出した前記伝播路情報を前記親局へ送信する伝播路情報送信部とを備える。また、前記親局は、各前記子局が送信した伝播路情報を受信する伝播路情報受信部と、受信した前記伝播路情報を集約する伝播路情報集約部とを備える。
【発明の効果】
【0011】
本願の開示する無線通信システム、子局装置、親局装置及び無線通信システム制御方法の一つの態様によれば、ネットワーク全体の消費電力を抑えながら、各ノードの測位を容易に行うことができるという効果を奏する。
【図面の簡単な説明】
【0012】
【図1】図1は、実施例1に係る無線通信システムの全体構成図である。
【図2】図2は、実施例1に係るノードの機能を表すブロック図である。
【図3】図3は、RSSIテーブルの一例の図である。
【図4】図4は、実施例1に係るハブの機能を表すブロック図である。
【図5】図5は、実施例1におけるRSSI行列の生成を説明するための図である。
【図6】図6は、実施例1に係る無線通信システムにおける信号の送受信を説明するための図である。
【図7】図7は、実施例1に係る無線通信システムの通信処理のフローチャートである。
【図8】図8は、RSSI取得及びデータ送信処理のフローチャートである。
【図9】図9は、データ送信処理のフローチャートである。
【図10】図10は、実施例1の変形例1におけるRSSI行列の生成を説明するための図である。
【図11】図11は、実施例2に係る無線通信システムにおける信号の送受信を説明するための図である。
【図12】図12は、実施例2に係る無線通信システムの通信処理のフローチャートである。
【図13】図13は、実施例2に係るRSSI取得及びデータ送信処理のフローチャートである。
【図14】図14は、実施例2に係るデータ送信処理のフローチャートである。
【図15】図15は、実施例4に係るハブの機能を表すブロック図である。
【図16】図16は、拡張RSSI行列の一例を表す図である。
【図17】図17は、ノードのハードウェア構成図である。
【図18】図18は、ハブのハードウェア構成図である。
【発明を実施するための形態】
【0013】
以下に、本願の開示する無線通信システム、子局装置、親局装置及び無線通信システム制御方法の実施例を図面に基づいて詳細に説明する。なお、以下の実施例により本願の開示する無線通信システム、子局装置、親局装置及び無線通信システム制御方法が限定されるものではない。
【実施例1】
【0014】
図1は、実施例1に係る無線通信システムの全体構成図である。図1に示すように本実施例に係る無線通信システムは、無線通信システムにおける子局であるノード1A〜1G及びハブ2を有している。
【0015】
ここで、以下の説明では、無線通信システムにおける子局を「ノード」と言う。また、図1では、6個のノードを記載しているが、ノードの数に特に制限は無い。図1には、代表としてノード1A〜1Gのみを記載しているが、実際にはノード1A〜1Gはn個のノードを表しているものとする。
【0016】
ノード1A〜1Gには、識別子であるノード番号がそれぞれに与えられている。そして、本実施例では、例えば、ノード1A〜1Gは牛や豚などに取り付けられ、牛や豚などの脈拍や体温といった生態情報を取得する。本実施例では、ノード番号は、1〜nまでの数字が連番でn個それぞれのノードに与えられているものとする。以下では、ノード番号i(i=1、2、・・・、n)を識別子とするノードをノード#iと表す場合がある。
【0017】
ハブ2は、本実施例に係る無線通信システムにおけるノード1A〜1Gに対する親局である。
【0018】
そして、本実施例に係る無線通信システムは、スター型の接続形態を有しているものとする。具体的には、ノード1A〜1Gはハブ2と通信を行い、ノード1A〜1Gは互いに直接通信を行うことはない。図1におけるノード1A〜1Gのそれぞれからハブ2へ向かう実線矢印は、ノード1A〜1Gとハブ2との間で無線による通信が行なわれていることを示している。これに対して、ノード1A〜1Gの間には実線矢印を記載しておらず、これにより、ノード1A〜1Gのそれぞれの間で直接通信が行われていないことを示している。また、ノード1A〜1Gのそれぞれを結ぶ点線は、ノード1A〜1Gのそれぞれの間の距離を表している。本実施例では、例えば、ノード1A〜1Gは、取得した生体情報をハブ2へ送信する。ここで、本実施例では、スター型の接続形態の場合について説明するが、ツリー型の接続形態についても同様に利用可能である。
【0019】
さらに、本実施例に係る無線通信システムは、TDMA(Time Division Multiple Access)を用いてノード1A〜1Gとハブ2との間で通信を行なっている。TDMAとは、通信に用いる周波数を一定時間ごとに分割して共有する多重化方式のことである。すなわち、ノード1A〜1Gは、ハブ2からそれぞれに与えられた一定時間の間にハブ2との通信を行う。このTDMAを用いた通信の動作は後で詳細に説明する。
【0020】
以下では、ノード1A〜1Gのそれぞれを特に区別しない場合には、単に「ノード1」という。
【0021】
図2は、実施例1に係るノードの機能を表すブロック図である。ノード1は、無線制御部101、スケジューラ102、タイマ制御部103、電源制御部104、RSSI計算部105、RSSIテーブル作成部106、センサ制御部107、メモリ制御部108及び記憶部109を有している。また、ノード1は、無線制御部101に接続するアンテナを有している。
【0022】
無線制御部101は、ハブ2との間の無線通信を制御する。無線制御部101は、後述する電源制御部104により自装置に電源が投入されアクティブ状態になると、無線通信が可能な状態となる。また、無線制御部101は、時計を有している。
【0023】
そして、無線制御部101は、ビーコン(Beacon)をアンテナを介してハブ2から受信する。ビーコンは、同期情報及び通信時間の割り当ての情報などが含まれたハブ2から各ノード1への報知情報である。ビーコンには、ビーコン番号が付加されている。ビーコン番号とは、各ビーコンを識別するための情報であり、ビーコン番号によっていつ送信されたビーコンかを判別することができる。無線制御部101は、受信したビーコンからビーコン番号を取得する。そして、無線制御部101は、ビーコンをスケジューラ102へ出力する。さらに、無線制御部101は、ビーコン及びビーコン番号をRSSI計算部105へ出力する。
【0024】
また、無線制御部101は、センシングデータの入力をセンサ制御部107から受ける。さらに、無線制御部101は、自装置の通信可能スロットの開始及び終了の通知をタイマ制御部103から受ける。そして、タイマ制御部103からの通知に応じて、無線制御部101は、自装置の通信可能スロットの期間に、センシングデータをアンテナを介してハブ2へ送信する。
【0025】
また、無線制御部101は、RSSIテーブルの入力をRSSIテーブル作成部106から受ける。そして、無線制御部101は、受信したRSSIテーブルをアンテナを介してハブ2へ送信する。
【0026】
また、無線制御部101は、自装置がアクティブな状態のときに、他のノードがハブ2へ送信したパケットがある場合、アンテナを介してそのパケットを受信する。ここで、他のノードとは、ハブ2の子局となっている自装置以外のノードである。例えば、図1におけるノード1Aに対する他のノードとは、ノード1B〜1Gである。パケットには、そのパケットを送信したノード番号が付加されている。そして、無線制御部101は、受信したパケットからノード番号を取得する。また、無線制御部101は、他のノードからのパケットを受信した時刻を自己の時計から取得する。そして、無線制御部101は、受信した他のノードからのパケット、ノード番号及び受信時刻をRSSI計算部105へ出力する。
【0027】
また、無線制御部101は、電源制御部104により自装置の電源が切られスリープ状態になると、無線通信を行わなくなる。
【0028】
スケジューラ102は、ビーコンが送信されるタイミングを予め記憶している。例えば、スケジューラ102は、1日1回のある特定の時間をビーコンが送信されるタイミングとして記憶している。他の例としては、システム全体が起動された時にビーコンが送信されるとして、システム全体が起動された時にノード1を待ちうけ状態にしてもよい。そして、スケジューラ102は、ビーコンが送信されるタイミングをタイマ制御部103へ出力する。
【0029】
また、スケジューラ102は、ハブ2から送信されたビーコンの入力を無線制御部101から受ける。そして、スケジューラ102は、受信したビーコンから同期情報と通信時間の割り当ての情報を取得する。以下では、ハブ2から割り当てられた通信可能時間を通信可能スロットと呼ぶ場合がある。そして、スケジューラ102は、同期情報をタイマ制御部103へ出力する。また、スケジューラ102は、他のノードの通信可能スロットの期間にも自装置を通信可能とするタイミングを予め記憶している。例えば、スケジューラ102は、ビーコン受信後初めての通信可能スロット、及びその後自装置の通信可能スロットのタイミングが10回到来する毎に、他のノードの通信可能スロットの期間にも自装置を通信可能とするなど記憶している。ここで、スケジューラ102は、例えば、自装置が何番目の通信可能スロットを使用するかを記憶しており、自装置の通信可能スロットの後所定時間が経過すると他のノードの通信可能スロットとなり、さらに所定時間が経過すると他のノードの通信可能スロットとなることを記憶しいている。そして、スケジューラ102は、自装置の通信可能スロットよりも前の他のノードの通信可能スロットについても同様に記憶している。これにより、スケジューラ102は、他のノードの通信可能スロットのスケジュールも把握することができる。また、他の方法としては、ビーコンの中に他のノードの通信可能スロットも記載されており、スケジューラ102は、ビーコンに記載されている他のノードの通信可能時間を参照することで、他のノードの通信可能スロットのスケジュールを把握してもよい。そして、スケジューラ102は、通信可能スロットの情報及び他のノードの通信可能スロットの期間に自装置を通信可能とするタイミングをタイマ制御部103へ出力する。
【0030】
タイマ制御部103は、時計を有している。タイマ制御部103は、ビーコンが送信されるタイミングの入力をスケジューラ102から受ける。そして、タイマ制御部103は、自己の時計を用いて、ビーコンが送信されるタイミングになると、電力供給の開始を電源制御部104に指示する。その後、ビーコンが送信されるタイミングが終了すると、タイマ制御部103は、電力供給の終了を電源制御部104に指示する。
【0031】
ここで、本実施例では、ビーコンが送信されるタイミングをスケジューラ102が記憶しているが、これは他の方法でも良く、例えば、タイマ制御部103がビーコンが送信されるタイミングを予め記憶していてもよい。
【0032】
また、タイマ制御部103は、同期情報をスケジューラ102から受ける。そして、タイマ制御部103は、同期情報を用いて、自己が有する時計におけるハブ2との通信タイミングの同期を取る。
【0033】
また、タイマ制御部103は、自装置の通信可能スロットの情報及び他のノードの通信可能スロットの期間に自装置を通信可能とするタイミングの入力をスケジューラ102から受ける。
【0034】
そして、タイマ制御部103は、自己の時計を用いて、自装置の通信可能スロットの開始の時刻になると、電力供給の開始を電源制御部104に指示する。その後、通信可能スロットの終了の時刻になると、タイマ制御部103は、電力供給の終了を電源制御部104に指示する。また、タイマ制御部103は、自装置の通信可能スロットの開始及び終了を無線制御部101へ通知する。
【0035】
また、タイマ制御部103は、他のノードの通信可能スロットの期間に自装置を通信可能とするタイミングになると、電力供給の開始を電源制御部104に指示する。その後、他のノードの通信可能スロットの期間の終了の時刻になると、タイマ制御部103は、電力供給の終了を電源制御部104に指示する。
【0036】
電源制御部104は、自装置における電源の投入及び切断を制御している。例えば、電源制御部104は、無線制御部101、RSSI計算部105、RSSIテーブル作成部106、センサ制御部107、メモリ制御部108及び記憶部109に対する電力の供給及び停止を制御する。本実施例では、電源制御部104から各部への電源供給用の線の図示を省略している。
【0037】
電源制御部104は、電力供給の開始の指示をタイマ制御部103から受けると、電源を投球して各部に電力供給を開始する。電源制御部104により電源が投入され各部へ電力が供給されると、ノード1はアクティブ状態となる。
【0038】
また、電源制御部104は、電力供給の終了の指示をタイマ制御部103から受けると、電源を切断して各部に対する電源供給を停止する。電源制御部104により電源が切断され各部への電力が停止されると、ノード1はスリープ状態となる。ノード1は、スリープ状態となることで電力消耗を低減することができる。
【0039】
RSSI計算部105は、ビーコン及びビーコン番号の入力を無線制御部101から受ける。そして、RSSI計算部105は、受信したビーコンからハブ2からの信号におけるRSSI値を算出する。例えば、RSSI計算部105は、受信した信号の振幅からその信号の受信レベルを取得し、取得した受信レベルを用いてRSSI値を求めることができる。ここで、本実施例ではビーコンを用いてハブ2からの信号におけるRSSIを算出しているが、この処理は省くことも可能である。
【0040】
そして、RSSI計算部105は、算出したハブ2からの信号におけるRSSI値及びビーコン番号を、記憶部109への格納命令と共にメモリ制御部108へ出力する。ここで、本実施例では、ビーコンを受信した時刻を特定するために、ビーコン番号を用いているが、受信時刻が分かれば他の情報でも良く、例えば、無線制御部101がビーコンを受信した時刻を用いてもよい。
【0041】
また、RSSI計算部105は、他のノードからのパケットの入力を無線制御部101から受ける。そして、RSSI計算部105は、受信した他のノードからのパケットから当該ノードからの信号におけるRSSI値を算出する。また、RSSI計算部105は、パケットの送信元のノード番号及び受信時刻の入力を無線制御部101から受ける。
【0042】
そして、RSSI計算部105は、算出した他のノードからの信号におけるRSSI値、ノード番号及び時刻情報を、記憶部109への格納命令と共にメモリ制御部108へ出力する。ここで、本実施例では、RSSI値の取得にあたって、一つのパケットを用いてRSSI値の計算を行う場合で説明しているが、これは他の方法でもよい。例えば、複数のパケットから複数のRSSI値を計算し、算出した複数のRSSI値を平均化したものをRSSI値としてもよい。
【0043】
記憶部109は、メモリやハードディスクなどの記憶装置である。
【0044】
メモリ制御部108は、記憶部109へのデータの読書きを制御する。メモリ制御部108は、ハブ2からの信号におけるRSSI値及びビーコン番号の入力をRSSI計算部105から受ける。そして、メモリ制御部108は、ハブ2からの信号におけるRSSI値及びビーコン番号を対応付けて記憶部109へ記憶させる。
【0045】
また、メモリ制御部108は、他のノードからの信号におけるRSSI値、ノード番号及び時刻情報の入力を格納命令と共にRSSI計算部105から受ける。そして、メモリ制御部108は、他のノードからの信号におけるRSSI値、ノード番号及び時刻情報をそれぞれ対応付けて記憶部109へ記憶させる。
【0046】
また、メモリ制御部108は、RSSI値の読み出し要求をRSSIテーブル作成部106から受ける。そして、メモリ制御部108は、指定されたRSSI値を記憶部109から読み出し、RSSIテーブル作成部106へ出力する。
【0047】
センサ制御部107は、例えば、牛や豚などに取り付けられ、体温や脈拍などの生体情報を取得するためのセンサを制御する。センサ制御部107は、予め決められた時刻になるとセンサにより検出されたセンシングデータを取得する。そして、センサ制御部107は、取得したセンシングデータをRSSIテーブル作成部106へ出力する。
【0048】
RSSIテーブル作成部106は、RSSIテーブルのフォーマットを予め記憶している。図3は、RSSIテーブルの一例の図である。本実施例では、RSSIテーブル作成部106は、図3に示すようなRSSIテーブルのフォーマットを記憶している。図3は、ノード1のノード番号がiの場合のRSSIテーブルの例である。RSSIテーブルの先頭のデータ301として、ビーコン番号が格納される。また、データ301の次のデータ302として、ハブ2からの信号におけるRSSI値が格納される。またデータ302の次のデータ303として、ノード#i+1のノード番号であるi+1及びノード#i+1からのパケットの受信時刻が格納されている。また、データ303の次のデータ304として、ノード#i+1からの信号のRSSI値が格納されている。また、データ305には、ノード番号i+2のノード番号であるi+2及びノード#i+2からのパケットの受信時刻が格納されている。また、データ305の次のデータ306として、ノード#i+2からの信号のRSSI値が格納されている。その後、RSSIテーブルには、ノード番号を1ずつインクリメントしながらノード番号nまで、ノード番号及びそのノード番号を有するノードからの信号のRSSI値が格納されている。すなわち、図3では、ノード#i+1及びノード#i+2を例に表しているが、実際には図3のRSSIテーブルは、ノード#nまで記載されている。このように、本実施例では、RSSIテーブル作成部106は、自分のノード番号iより大きいノード番号i+1〜nを有するノードからの信号のRSSI値を記載するRSSIテーブルのフォーマットを記憶している。ただし、RSSIテーブルには、ノード番号i+1〜nを有するノードのうちノード#iにおいてで信号が受信できないノードがある場合には、そのノードからの信号のRSSI値は記載されない。
【0049】
RSSIテーブル作成部106は、センシングデータの入力をセンサ制御部107から受ける。また、RSSIテーブル作成部106は、記憶部109からの各RSSI値、ビーコン番号、ノード番号及び受信時刻の読み出しをメモリ制御部108に要求する。そして、RSSIテーブル作成部106は、メモリ制御部108により読み出された各RSSI値、ビーコン番号、ノード番号及び受信時刻を取得する。RSSIテーブル作成部106は、記憶しているフォーマットに対して取得した各RSSI値、ビーコン番号、ノード番号及び受信時刻に記載されたデータの情報を用いて、図3に示すようなRSSIテーブルを作成する。
【0050】
そして、RSSIテーブル作成部106は、作成したRSSIテーブル及びセンシングデータを無線制御部101へ出力する。
【0051】
次に、図4を参照して、本実施例に係るハブの構成について説明する。図4は、実施例1に係るハブの機能を表すブロック図である。図4に示すように、本実施例に係るハブ2は、無線制御部201、ビーコン生成部202、スケジューラ203、タイマ制御部204、メモリ制御部205、記憶部206、I/O制御部207、RSSIテーブル集約部208及び電源制御部209を有している。
【0052】
無線制御部201は、ノード1との間の無線通信を制御する。無線制御部201は、ビーコンをビーコン生成部202から受ける。そして、無線制御部201は、タイマ制御部204からビーコ送信の指示を受けて、取得したビーコンをブロードキャストし、ハブ2の子局である全てのノード1に送信する。
【0053】
また、無線制御部201は、各ノード1のそれぞれに割り当てた各通信可能スロットの間に、スロットが割り当てられているノード1からセンシングデータを受信する。また、無線制御部201は、各ノード1のそれぞれに割り当てたいずれかの通信可能スロットにおいて、スロットが割り当てられているノード1からRSSIテーブルを受信する。例えば、無線制御部201は、各ノード1から通信可能スロットの10回に1回の割合で、RSSIテーブルを受信する。そして、無線制御部201は、受信したセンシングデータをI/O制御部207へ出力する。また、無線制御部201は、受信したRSSIテーブルを記憶部206への格納命令と共にメモリ制御部205へ出力する。
【0054】
ビーコン生成部202は、ハブ2の子局である各ノード1の通信可能スロットの長さ及び各ノード1の通信可能スロットの間の待機時間などを、スケジューラ203から取得する。また、ビーコン生成部202は、タイマ制御部204から取得した自装置の動作クロックの情報及び時刻を用いて同期情報を生成する。さらに、ビーコン生成部202は、スケジューラ203から取得した通信可能スロットに関する情報を用いて、各ノード1の通信可能スロットの割り当て情報を求める。そして、ビーコン生成部202は、同期情報及び各ノードの通信可能スロットの割り当て情報を含むビーコンを生成する。
【0055】
ビーコン生成部202は、生成したビーコンを無線制御部201へ出力する。
【0056】
スケジューラ203は、操作者から指定されたビーコンの送信タイミングを予め記憶している。また、スケジューラ203は、操作者から指定された、ハブ2の子局である各ノード1の通信可能スロットの長さ及び各ノード1の通信可能スロットの間の待機時間などを記憶している。さらに、本実施例では、スケジューラ203は、1日のハブ2の動作開始時刻及び動作終了時刻を記憶している。例えば、スケジューラ203は、朝の決められた時間にハブ2の動作を開始させ、夜の決められた時間にハブ2の動作を終了させるスケジュールを記憶している。
【0057】
スケジューラ203は、ハブ2の動作開始時時刻をタイマ制御部204に通知する。その後、スケジューラ203は、ビーコンの送信タイミングをタイマ制御部204へ送信する。さらに、スケジューラ203は、ハブ2の子局である各ノード1の通信可能スロットの長さ及び各ノード1の通信可能スロットの間の待機時間をビーコン生成部202へ送信する。また、スケジューラ203は、ハブ2の動作終了時刻をタイマ制御部204へ通知する。
【0058】
タイマ制御部204は、動作開始時刻をスケジューラ203から受信する。そして、タイマ制御部204は、動作開始時刻になると各部への電力供給の開始を電源制御部209へ指示する。また、タイマ制御部204は、動作終了時刻をスケジューラ203から受信する。そして、タイマ制御部204は、動作終了時刻になると各部への電力供給の停止を電源制御部209へ指示する。
【0059】
また、タイマ制御部204は、クロック生成器から動作クロックを取得する。そして、タイマ制御部204は、動作クロック及び時刻をビーコン生成部202へ出力する。
【0060】
さらに、タイマ制御部204は、ビーコンの送信タイミングになると、無線制御部201へビーコンの送信を指示する。
【0061】
電源制御部209は、各部への電力供給の開始の指示をタイマ制御部204から受ける。そして、電源制御部209は、電源を投入し、各部に対して電力供給を開始する。また、電源制御部209は、各部への電力供給の停止の指示をタイマ制御部204から受ける。そして、電源制御部209は、電源を切断し、各部に対して電力供給を停止する。
【0062】
記憶部206は、メモリやハードディスクなどの記憶装置である。
【0063】
メモリ制御部205は、各ノード1から受信したRSSIテーブルの入力を無線制御部201から受ける。そして、メモリ制御部205は、各ノードから受信したRSSIテーブルを記憶部206へ順次格納していく。
【0064】
RSSIテーブル集約部208は、ハブ2の子局である全てのノード1からのRSSIテーブルが記憶部206に格納されるまで待機する。ここで、RSSIテーブル集約部208は、RSSIテーブルに記載されている各RSSIに対応する受信時間を参照することで、各ノード1作成されたRSSIテーブルから互いに近い時刻のRSSI値を抽出することができる。そして、ハブ2の子局である全てのノード1からのRSSIテーブルが揃うと、RSSIテーブル集約部208は、メモリ制御部205を介して記憶部206からRSSIテーブルを取得する。そして、RSSIテーブル集約部208は、RSSI行列を生成する。
【0065】
ここで、RSSIテーブル集約部208によるRSSI行列の生成について詳細に説明する。ここでは、ノード#i(i=1、2、・・・、n)からノード#j(j=1、2、・・・、n)に送信された信号におけるRSSI値をSij(i≠j)と表す。そして、RSSI行列は、i行j列の値をSijとし、Sii=0とした行列である。このような、RSSI行列から、測位計算アルゴリズムを用いることで、各ノード1の間の相対的位置を推定することができる。
【0066】
記憶部206に格納されているノード#iから受信したRSSIテーブルには、Sij(i<j)のRSSI値が格納されている。すなわち、記憶部206に格納されているRSSIテーブルのいずれかにSijがある場合、SjiはいずれのRSSIテーブルにも存在しない。そこで、存在するSijの値を配置し、存在しないSijの値を0として表した行列が図5の行列401である。ここで、図5は、実施例1におけるRSSI行列の生成を説明するための図である。そこで、RSSIテーブル集約部208は、電波の双対性を利用してSij=Sjiとみなす。すなわち、行列401の矢印で表すように、矢印の始点の値が終点の値として挿入される。これにより、RSSIテーブル集約部208は、RSSI行列402を生成する。
【0067】
RSSIテーブル集約部208は、生成したRSSI行列をI/O制御部207へ出力する。
【0068】
I/O制御部207は、外部装置との間のデータの入出力を制御する。I/O制御部207は、センシングデータの入力を無線制御部201から受ける。そして、I/O制御部207は、受信したセンシングデータを上位サーバ(不図示)へ出力する。
【0069】
また、I/O制御部207は、RSSI行列の入力をRSSIテーブル集約部208から受ける。そして、I/O制御部207は、受信したRSSI行列を上位サーバへ出力する。
【0070】
上位サーバは、センシングデータを集めて、データ管理を行う。また、上位サーバは、I/O制御部207から出力されたRSSI行列を取得する。そして、上位サーバは、取得したRSSI行列に対して測位計算アルゴリズムを用いて各ノード1の相対位置推定を行う。ここで、本実施例では、親局は、RSSI値を集約してRSSI行列を作成し作成したRSSI行列の転送を行なっているものとしたが、上位サーバで行う相対位置推定の機能を親局に持たせてもよい。
【0071】
次に、図6を参照して、本実施例に係る無線通信システムにおける信号の送受信について説明する。図6は、実施例1に係る無線通信システムにおける信号の送受信を説明するための図である。図6において紙面に向かって左から右へ向かう矢印は時間の経過を表している。また、矢印上に配置された各矩形が信号を表している。さらに、各矩形を結ぶ矢印は信号の送受信を表しており、矢印の始端が送信された信号を表し、矢印の先端が受信された信号を表している。そして、時間経過を表す矢印の始端側に記載された装置名がその矢印上で表される信号の送受信を行う装置を表している。例えば、図6の紙面に向かって一番上の時間経過を表す矢印上で表される信号の送受信はハブ2が行うものである。さらに、時間経過を表す矢印の紙面に向かって上側のTXの部分が各装置における信号の送信を表し、時間経過を表す矢印の紙面に向かって下側のRXの部分が各装置における信号の受信を表している。また、図6における一点鎖線で囲われた領域は、対応する装置がアクティブ状態になっていることを表している。逆に、一点鎖線で囲われていない領域では、装置はスリープ状態になっている。ここでは、ハブ2及びノード#1〜#3を有する無線通信システムを例に説明する。
【0072】
図6に示すように、本実施例では、ハブ2は常にアクティブになっている。信号501は、ビーコンを表している。ノード#1〜#3は、ビーコンが送信されるタイミングでアクティブになる。そして、ハブ2は、ビーコンをブロードキャストする。これに対して、ノード#1〜#3は、それぞれハブ2が送信したビーコンを受信する。そして、ノード#1〜#3は、受信したビーコンから、それぞれに割り当てられた通信可能スロットを取得する。ノード#1は、L1で表される通信可能スロットが割り当てられている。また、ノード#2は、L2で表される通信可能スロットが割り当てられている。また、ノード#3は、L3で表される通信可能スロットが割り当てられている。
【0073】
ビーコン受信後初めてのノード#1に割り当てられた通信可能スロットL1のタイミングで、ノード#1〜#3全てがアクティブとなる。そして、L1の期間において、ノード#1はハブ2に対してセンシングデータを含む信号502を送信する。この時、ノード#2及び#3は、ノード#1がハブ2に向けて送信した信号502を取得する。
【0074】
同様に、ビーコン受信後初めてのノード#2に割り当てられた通信可能スロットL2のタイミングで、ノード#1〜#3全てがアクティブとなる。そして、L2の期間において、ノード#2はハブ2に対してセンシングデータを含む信号503を送信する。この時、ノード#1及び#3は、ノード#2がハブ2に向けて送信した信号503を取得する。
【0075】
同様に、ビーコン受信後初めてのノード#3に割り当てられた通信可能スロットL3のタイミングで、ノード#1〜#3全てがアクティブとなる。そして、L3の期間において、ノード#3はハブ2に対してセンシングデータを含む信号504を送信する。この時、ノード#1及び#2は、ノード#3がハブ2に向けて送信した信号504を取得する。
【0076】
次のノード#1に割り当てられた通信可能スロットL1のタイミングでは、RSSI取得を取得しないので、ノード#1のみがアクティブとなる。そして、L1の期間において、ノード#1はハブ2に対してセンシングデータを含む信号505を送信する。この場合、ノード#2及び#3は、アクティブ状態で無いので、信号505の取得は行なわない。
【0077】
同様に、次のノード#2に割り当てられた通信可能スロットL2のタイミングでは、RSSI取得を取得しないので、ノード#2のみがアクティブとなる。そして、L2の期間において、ノード#2はハブ2に対してセンシングデータを含む信号506を送信する。この場合、ノード#1及び#3は、アクティブ状態で無いので、信号506の取得は行なわない。
【0078】
同様に、次のノード#3に割り当てられた通信可能スロットL3のタイミングでは、RSSI取得を取得しないので、ノード#3のみがアクティブとなる。そして、L3の期間において、ノード#3はハブ2に対してセンシングデータを含む信号507を送信する。この場合、ノード#1及び#2は、アクティブ状態で無いので、信号507の取得は行なわない。
【0079】
次に、図7、図8、図9を参照して、本実施例に係る無線通信システムの通信処理の流れについて説明する。図7は、実施例1に係る無線通信システムの通信処理のフローチャートである。図8は、RSSI取得及びデータ送信処理のフローチャートである。図9は、データ送信処理のフローチャートである。まず、図7を参照して、全体的な通信処理の流れを説明する。図7は、ノード1がスリープの状態から始まり、1回の通信処理を行う場合のフローである。実際には、図7の通信処理のフローは、電源が切られるまで繰り返される。
【0080】
タイマ制御部103は、スケジューラ102から通知されたビーコンが送信されるタイミングが到来したか否かを判定する(ステップS101)。
【0081】
ビーコンが送信されるタイミングが到来した場合(ステップS101:肯定)、タイマ制御部103は、電力の供給を電源制御部104に指示する。電源制御部104は、電源の供給開始の指示を受けて、電源を投入して各部へ電力を供給することで、自装置をアクティブにする(ステップS102)。
【0082】
次に、無線制御部101は、ハブ2から送信されたビーコンを受信する(ステップS103)。
【0083】
そして、RSSI計算部105は、ビーコン及びビーコン番号の入力を無線制御部101から受ける。その後、RSSI計算部105は、受信したビーコンを用いて、ハブ2からの信号におけるRSSIを算出する(ステップS104)。
【0084】
そして、メモリ制御部108は、ビーコン番号及びハブ2からの信号におけるRSSIの入力をRSSI計算部105から受ける。そして、メモリ制御部108は、ビーコン番号及びハブ2からの信号におけるRSSIを対応付けて記憶部109に格納する(ステップS105)。
【0085】
また、スケジューラ102は、ビーコンの入力を無線制御部101から受ける。そして、スケジューラ102は、ビーコンから同期情報及び通信可能スロットの情報を取得する。タイマ制御部103は、同期情報及び通信可能スロットの情報の入力をスケジューラ102から受ける。そして、タイマ制御部103は、同期処理及び通信可能スロットの周期確認などを実行する(ステップS106)。
【0086】
その後、ビーコンが送信されるタイミングが経過すると、電源制御部104は、電源を切断して各部への電力の供給を停止し、自装置をスリープにする(ステップS113)。
【0087】
これに対して、ビーコンが送信されるタイミングで無い場合(ステップS101:否定)、タイマ制御部103は、スケジューラ102から通知されたRSSI取得周期か否かを判定する(ステップS107)。ここで、RSSI周期とは、上述した他のノードからの信号におけるRSSIを取得するタイミングのことであり、例えば、本実施例では10回の自装置の通信可能スロットに1回の割合で到来する。
【0088】
RSSI取得周期の場合(ステップS107:肯定)、タイマ制御部103は、電力の供給を電源制御部104に指示する。電源制御部104は、電源の供給開始の指示を受けて、電源を投入して各部へ電力を供給することで、自装置をアクティブにする(ステップS108)。
【0089】
そして、ノード1は、RSSI取得及びデータ送信処理を実行する(ステップS109)。ステップS109におけるRSSI取得及びデータ送信処理については、図8を用いて後で詳細に説明する。
【0090】
その後、電源制御部104は、電源を切断して各部への電力の供給を停止し、自装置をスリープにする(ステップS113)。
【0091】
一方、RSSI取得周期で無い場合(ステップS107:否定)、タイマ制御部103は、自装置の通信可能スロットのタイミングが到来しているか否かを判定する(ステップS110)。タイマ制御部103は、通信可能スロットのタイミングが到来していないと判定した場合(ステップS110:否定)、ステップS101へ戻る。
【0092】
これに対して、通信可能スロットのタイミングが到来している場合(ステップS110:肯定)、タイマ制御部103は、電力の供給を電源制御部104に指示する。電源制御部104は、電源の供給開始の指示を受けて、電源を投入して各部へ電力を供給することで、自装置をアクティブにする(ステップS111)。
【0093】
そして、ノード1は、データ送信処理を実行する(ステップS112)。ステップS112におけるデータ送信処理については、図9を用いて後で詳細に説明する。
【0094】
その後、電源制御部104は、電源を切断して各部への電力の供給を停止し、自装置をスリープにする(ステップS113)。
【0095】
次に、図8を参照して、図7のステップS109におけるRSSI取得及びデータ送信処理について説明する。
【0096】
RSSIの取得周期に自装置がアクティブになると、無線制御部101は、タイマ制御部103から通知により、自装置の通信可能スロットか否かを判定する(ステップS201)。
【0097】
自装置の通信可能スロットで無い場合(ステップS201:否定)、無線制御部101は、他のノードがハブ2に向けて送信したパケットを受信したか否かを判定する(ステップS202)。パケットを受信していない場合(ステップS202:否定)、無線制御部101は、パケットを受信するまで待機する。
【0098】
これに対して、パケットを受信した場合(ステップS202:肯定)、RSSI計算部105は、無線制御部101により受信されたパケットを用いてRSSI値を算出する(ステップS203)。
【0099】
メモリ制御部108は、RSSI計算部105からノード番号、時刻情報及びRSSI値の情報を受信する。そして、メモリ制御部108は、ノード番号、時刻情報及びRSSI値の情報をそれぞれ対応付けて記憶部109に格納する(ステップS204)。
【0100】
これに対して、自装置の通信可能スロットの場合(ステップS201:肯定)、無線制御部101は、未送信のRSSIテーブルがあるか否かを判定する(ステップS205)。
【0101】
未送信のRSSIテーブルが無い場合(ステップS205:否定)、無線制御部101は、センサ制御部107から受信したセンシングデータをハブ2へ送信する(ステップS206)。
【0102】
一方、未送信のRSSIテーブルがある場合(ステップS205:肯定)、無線制御部101は、センサ制御部107から受信したセンシングデータと共にRSSIテーブル作成部106が作成したRSSIテーブルをハブ2へ送信する(ステップS207)。
【0103】
そして、無線制御部101は、自装置を含むハブ2の子局であるノード全ての通信可能スロットが終了したか否かを判定する(ステップS208)。
【0104】
ノード全ての通信可能スロットが終了していない場合(ステップS208:否定)、タイマ制御部103は、自装置又は他のノードの通信可能スロットの終了時刻が到来すると、電源制御部104に対して電力供給の停止を指示する。電源制御部104は、タイマ制御部103からの指示を受けて、電源を切断して各部への電力供給を停止することで、自装置をスリープにする(ステップS209)。
【0105】
その後、タイマ制御部103は、ハブ2の全ての子局の通信可能スロットのうち、次の通信可能スロットが到来したか否かを判定する(ステップS210)。
【0106】
次の通信可能スロットが到来していない場合(ステップS210:否定)、タイマ制御部103は、次の通信可能スロットが到来するまで待機する。
【0107】
これに対して、次の通信可能スロットが到来している場合(ステップS210:肯定)、タイマ制御部103は、電力の供給を電源制御部104に指示する。電源制御部104は、電源の供給開始の指示を受けて、電源を投入して各部へ電力を供給することで、自装置をアクティブにし(ステップS211)、ステップS201へ戻る。
【0108】
そして、ノード全ての通信可能スロットが終了すると(ステップS208:肯定)、無線制御部101は、RSSI取得及びデータ送信処理を終了する。
【0109】
ここで、本実施例では、ハブ2からノード#iへのデータ送信は行っていないが、実際には、ハブ2からノード#iへのデータ送信が行われる場合がある。その場合、例えば、図8のステップS204の後に、ノード#iが、パケットが自装置宛か否かの判定を行い、ペイロードを見るか否かを決定するというステップが加わる。
【0110】
次に、図9を参照して、図7のステップS112におけるデータ送信処理について説明する。
【0111】
無線制御部101は、未送信のRSSIテーブルがあるか否かを判定する(ステップS301)。
【0112】
未送信のRSSIテーブルが無い場合(ステップS301:否定)、無線制御部101は、センサ制御部107から受信したセンシングデータをハブ2へ送信する(ステップS302)。
【0113】
一方、未送信のRSSIテーブルがある場合(ステップS301:肯定)、無線制御部101は、センサ制御部107から受信したセンシングデータと共にRSSIテーブル作成部106が作成したRSSIテーブルをハブ2へ送信する(ステップS303)。その後、無線制御部101は、データ送信処理を終了する。
【0114】
ここで、本実施例では、伝播路情報としてRSSIを用いて説明したが、これは他の伝播路の状態を表す情報であれば他の情報でも良く、例えば、ノード間の距離に相当する伝播遅延や、ノード間の相対速度に相当するドプラシフトなどを用いても良い。例えば、伝播遅延やドプラシフトなどを伝播路情報として用いる場合、あるノードにおいて、他のノードがハブに送信したパケットを受信した時刻を用いることで、あるノードと他のノードとの間の伝播遅延やドプラシフトなどを求めることができる。
【0115】
以上に説明したように、本実施例に係る無線通信システムは、特定のタイミングで、あるノードの通信可能スロットの間に、他のノードを通信可能にしておき、あるノードがハブへ送信したパケットを取得する。言い換えれば、実際の送信先はハブであるパケットを他のノードが傍受する。そして、その傍受したパケットを用いて、傍受側のノードは、パケットの送信元のノードからの信号における伝播路情報であるRSSIを求め、求めたRSSIの情報をハブに通知する。そして、ハブは、各ノードから送信されるRSSIの情報をまとめることで、各ノードの相対位置を求めることができるRSSI行列を生成する。そして、本実施例に係る無線通信システムは、ツリー型又はスター型の接続形態を有し、TDMAの方式を用いて通信を行っている。
【0116】
すなわち、ツリー型又はスター型の接続形態を採用することで消費電力を抑えながら、各ノード間の伝播路情報を取得することができる。さらに、各ノード間の伝播路情報からRSSI行列などを作成することで、各ノードの相対的位置を把握することができる。
【0117】
また、本実施例では、自装置のノード番号より大きいノード番号を有するノードからの信号におけるRSSIのみをハブに送信するので、ネットワーク全体から見て、ノードからハブへのデータ送信量を削減することができ、RSSIデータ収集のためのネットワークの負荷を低減することができる。特に、本実施例では、すべてのノードからの信号におけるRSSIをハブに送信した場合に比べて、約半分のデータ送信量に抑えることができる。
【0118】
ここで、本実施例では、データ送信量を抑えるため自装置のノード番号より大きいノード番号を有するノードからの信号におけるRSSIのみをハブに送信するとした。しかし、全てのノードからの信号におけるRSSIを送信した場合でも、ツリー型又はスター型の接続形態を採用することで消費電力を抑えながら、各ノード間の伝播路情報を取得することができるという効果は得ることができる。
【0119】
(変形例1)
また、実施例1では、ハブへのデータ送信量を抑えるために、RSSIテーブル作成部106は、自装置のノード番号より大きいノード番号を有するノードからの信号におけるRSSIの情報のみをRSSIテーブルに記載するとした。しかし、ハブ2へ送信するRSSIの情報の選択方法は、最終的にハブにおいて各ノード間全てのRSSIが取得できれば他の方法でもよい。そこで、以下に、ハブ2へ送信するRSSIの情報の選択方法の他の例を説明する。
【0120】
例えば、RSSIテーブル作成部106は、自装置よりも大きく且つ偶数であるノード番号を有するノードからの信号におけるRSSI値、及び自装置よりも小さく且つ奇数のノード番号を有するノードからの信号におけるRSSI値を抽出する。そして、RSSIテーブル作成部106は、抽出したRSSI値をRSSIテーブルに記載するとしてもよい。
【0121】
逆に、RSSIテーブル作成部106は、自装置よりも大きく且つ奇数であるノード番号を有するノードからの信号におけるRSSI値、及び自装置よりも小さく且つ偶数のノード番号を有するノードからの信号におけるRSSI値を抽出する。そして、RSSIテーブル作成部106は、抽出したRSSI値をRSSIテーブルに記載するとしてもよい。
【0122】
例えば、前段の選択方法を採用した場合、ハブ2のRSSIテーブル集約部208は、各ノードから受信したRSSIテーブルから図10に示す行列403を生成することができる。図10は、実施例1の変形例1におけるRSSI行列の生成を説明するための図である。
【0123】
そして、RSSIテーブル集約部208は、電波の双対性を利用してSij=Sjiとみなす。すなわち、行列403の矢印で表すように、矢印の始点の値が終点の値として挿入される。これにより、RSSIテーブル集約部208は、全てのノード間のRSSIを網羅するRSSI行列404を生成することができる。
【0124】
(変形例2)
また、次のような方法でハブに送信するRSSIの選択を行ってもよい。RSSIテーブル作成部106は、他のノードから送信されたパケットを無線制御部101から取得する。そして、RSSIテーブル作成部106は、取得したパケットの中身を確認し、RSSIテーブルがそのパケットに含まれており、且つそのRSSIテーブルに自装置からの信号によるRSSI値が記録されているか否かを判定する。自装置からの信号によるRSSI値が記録されている場合、RSSIテーブル作成部106は、そのパケットを送信したノードのパケットから得たRSSI値はRSSIテーブルに記載しないようにする。
【0125】
この方法でも、あるノードからの信号によるRSSIをハブ2に送信しない場合、当該あるノードにおける自装置から送信した信号によるRSSIがハブ2に送信されていることは保証される。そこで、電波の双対性を利用してSij=Sjiとみなすことで、他の場合と同様に、RSSIテーブル集約部208は、全てのノード間のRSSIを網羅するRSSI行列を生成することができる。
【実施例2】
【0126】
次に、実施例2に係る無線通信システムについて説明する。本実施例に係る無線通信システムは、通信方式としてCSMA(Carrier Sense Multiple Access)を採用していることが実施例1と異なるものである。そこで、以下の説明では、RSSI取得周期における各ノードの動作及び、その他のタイムスロットにおける各ノードの動作について主に説明する。本実施例に係るノードも、図1のブロック図で表される。また、本実施例に係るハブも、図4で表される。そして、本実施例において、実施例1と同じ符号を有するノード及びハブの各部は、特に説明の無い限り同じ機能を有しているものとする。
【0127】
本実施例に係るノード1におけるスケジューラ102は、ビーコンが送信されるタイミングを記憶している。また、スケジューラ102は、無線制御部101により受信されたビーコンからCSMA期間を取得する。そして、スケジューラ102は、CSMA期間をタイマ制御部103へ通知する。また、本実施例に係るスケジューラ102は、繰り返されるCSMA期間のうち、そのCSMA期間の間常に自装置をアクティブとしておく期間の繰返し周期を予め記憶している。このCSMA期間の間常に自装置をアクティブとしておく期間の繰り替えし周期がRSSI取得周期にあたる。例えば、スケジューラ102は、10回のCSMA期間毎に1回のRSSI取得期間とすることを記憶している。
【0128】
無線制御部101は、電源制御部104により各部に対して電源が供給され自装置がアクティブになると、タイマ制御部103からRSSI取得期間である旨の通知があるか否かを判定する。
【0129】
RSSI取得期間である旨の通知がなければ、通常のCSMA期間であり、無線制御部101は、キャリアセンスを行い、他のノードからのパケットの送信の有無を確認する。そして、無線制御部101は、他のノードからのパケットの送信がある場合、タイマ制御部103に対して通信が行えない旨の通知を行う。そして、無線制御部101は、他のノードからのパケットの送信が無ければ、センシングデータを送信する。そして、センシングデータ送信完了後、無線制御部101は、通信完了をタイマ制御部103に通知する。
【0130】
これに対して、RSSI取得期間である旨の通知があれば、無線制御部101は、キャリアセンスを行い、他のノードからのパケットの送信があれば、当該パケットを受信する。また、他のノードからのパケットの送信が無ければセンシングデータを送信する。そして、センシングデータ送信後も、CSMA期間の間、無線制御部101は、他のノードからのパケットの受信を行う。
【0131】
タイマ制御部103は、ビーコンが送信されるタイミングをスケジューラ102から取得する。そして、タイマ制御部103は、ビーコンが送信されるタイミングになると、電源制御部に対して各部への電力の供給を指示する。
【0132】
また、タイマ制御部103は、CSMA期間の通知、又は、CSMA期間と共にRSSI取得期間である旨の通知をスケジューラ102から受ける。
【0133】
タイマ制御部103は、CSMA期間である通知のみを受けると、タイマ制御部103は、電源制御部104に対して各部への電力供給を停止する指示を出し、さらにCSMA期間の間、ランダムに時間を待ち、各部への電力供給を電源制御部104に指示する。そして、タイマ制御部103は、無線制御部101から通信が行えない旨の通知を受けると、電源制御部104に対して各部への電力供給を停止する指示を出し、再度CSMA期間の間にランダムに時間を待ち、各部への電力供給を電源制御部104に指示する。そして、無線制御部101から通信完了の通知を受けると、タイマ制御部103は、電源制御部104に対して各部への電力供給を停止する指示を出し、次のCSMA期間まで待機する。
【0134】
これに対して、CSMA期間と共にRSSI取得期間である旨の通知を受けると、タイマ制御部103は、CSMA期間の間自装置をアクティブにしたままにし、さらに、RSSI取得期間である旨を無線制御部101へ通知する。その後、CSMA期間が終了するタイミングで、タイマ制御部103は、電源制御部104に対して各部への電力供給の停止を指示する。
【0135】
次に、ハブ2について説明する。
【0136】
スケジューラ203は、操作者から指定されたCSMA期間及びCSMA期間の繰返し周期を予め記憶している。また、スケジューラ203は、ビーコンの送信タイミングを予め記憶している。
【0137】
そして、スケジューラ203は、CSMA期間及びCSMA期間の繰返し周期をビーコン生成部202へ出力する。また、スケジューラ203は、ビーコンの送信タイミング、CSMA期間及びCSMA期間の繰返し周期をタイマ制御部204へ出力する。
【0138】
また、タイマ制御部204は、クロック生成器から動作クロックを取得する。そして、タイマ制御部204は、動作クロック及び時刻をビーコン生成部202へ出力する。
【0139】
また、タイマ制御部204は、ビーコンの送信タイミング、CSMA期間及びCSMA期間の繰返し周期をスケジューラ203から受ける。そして、タイマ制御部204は、ビーコンの送信タイミングになると、無線制御部201へビーコンの送信を指示する。さらにタイマ制御部204は、ビーコンの送信タイミングになると、各部への電力供給の開始を電源制御部209に指示する。さらに、タイマ制御部204は、CSMA期間が終了すると各部への電力供給の停止を電源制御部209に指示する。
【0140】
電源制御部209は、各部への電力供給の開始の指示をタイマ制御部204から受ける。そして、電源制御部209は、電源を投入し、各部に対して電力供給を開始する。また、電源制御部209は、各部への電力供給の停止の指示をタイマ制御部204から受ける。そして、電源制御部209は、電源を切断し、各部に対して電力供給を停止する。
【0141】
RSSIテーブル集約部208は、RSSIテーブルに記載されているビーコン番号を参照する。そして、RSSIテーブル集約部208は、同じビーコン番号が付加されたRSSIテーブルに記載されたRSSI値を取得する。RSSIテーブル集約部208は、同じビーコン番号が付加されたRSSIテーブルを用いることで、同じビーコン周期にあるRSSI値を取得することができる。ただし、これは別の方法でも良く、実施例1と同様に、RSSIテーブル集約部208は、各RSSIの受信時間を参照することで、各ノード1作成されたRSSIテーブルから近い時刻のRSSI値を抽出してもよい。
【0142】
次に、図11を参照して、本実施例に係る無線通信システムにおける信号の送受信について説明する。図11は、実施例2に係る無線通信システムにおける信号の送受信を説明するための図である。図11における、矢印、矩形及び装置名などの表示は図6と同様である。ここでは、ハブ2及びノード#1〜#3を有する無線通信システムを例に説明する。ここでは、最初のCSMA期間がRSSI期間であり、次のCSMA期間が通常のCSMA期間である場合で説明する。
【0143】
図11に示すように、本実施例では、ハブ2はビーコンの送信タイミングからCSMA期間である期間L4の間アクティブになっている。すなわち、本実施例では、ハブ2は、CSMA期間終了から次のビーコンの送信タイミングまでスリープ状態となる。ノード#1〜#3は、信号511であるビーコンが送信されるタイミングでアクティブになる。そして、ハブ2は、ビーコンをブロードキャストする。これに対して、ノード#1〜#3は、それぞれハブ2が送信したビーコンを受信する。そして、ノード#1〜#3は、受信したビーコンから、それぞれにCSMA期間を取得する。
【0144】
ノード#1〜#3は、RSSI取得期間であるので、ビーコン受信後からCSAM期間終了までの間、すなわち、図11における期間L4の間アクティブとなる。ここでは、最初にノード#1が、ハブ2に対してセンシングデータを含む信号512を送信する。この時、ノード#2及び#3は、ノード#1がハブ2に向けて送信した信号512を取得する。
【0145】
次に、ノード#2が、ハブ2に対してセンシングデータを含む信号513を送信する。この時、ノード#1及び#3は、ノード#2がハブ2に向けて送信した信号513を取得する。
【0146】
最後に、ノード#3が、ハブ2に対してセンシングデータを含む信号514を送信する。この時、ノード#1及び#2は、ノード#3がハブ2に向けて送信した信号514を取得する。
【0147】
その後、CSMA期間が終了すると、ハブ2及びノード#1〜#3は全てスリープ状態となる。
【0148】
次のビーコンである信号515の送信タイミングが来ると、ハブ2及びノード#1〜#3は全てアクティブとなる。そして、このCSMA期間では、RSSI取得を取得しないので、ノード#1〜#3の内、データを送信できるノードのみがアクティブとなる。
【0149】
ここでは、最初にノード#1が、ハブ2に対して前回のCSMA期間に取得したRSSIデータを含むRSSIテーブル及びセンシングデータを含む信号516を送信する。この時、ノード#2及び#3は、スリープ状態である。
【0150】
次に、ノード#2が、ハブ2に対して前回のCSMA期間に取得したRSSIデータを含むRSSIテーブルセンシングデータを含む信号517を送信する。この時、ノード#1及び#3は、スリープ状態である。
【0151】
最後に、ノード#3が、ハブ2に対して前回のCSMA期間に取得したRSSIデータを含むRSSIテーブルセンシングデータを含む信号518を送信する。この時、ノード#1及び#2は、スリープ状態である。
【0152】
次に、図12、図13、図14を参照して、本実施例に係る無線通信システムの通信処理の流れについて説明する。図12は、実施例2に係る無線通信システムの通信処理のフローチャートである。図13は、実施例2に係るRSSI取得及びデータ送信処理のフローチャートである。図14は、実施例2に係るデータ送信処理のフローチャートである。まず、図12を参照して、全体的な通信処理の流れを説明する。図12は、ノード1がスリープの状態から始まり、1回の通信処理を行う場合のフローである。実際には、図12の通信処理のフローは、電源が切られるまで繰り返される。
【0153】
タイマ制御部103は、スケジューラ102から通知されたビーコンが送信されるタイミングが到来したか否かを判定する(ステップS401)。ビーコンが送信されるタイミングが到来していない場合(ステップS401:否定)、タイマ制御部103は、ビーコンが送信されるタイミングまで待機する。
【0154】
ビーコンが送信されるタイミングが到来した場合(ステップS401:肯定)、タイマ制御部103は、電力の供給を電源制御部104に指示する。電源制御部104は、電源の供給開始の指示を受けて、電源を投入して各部へ電力を供給することで、自装置をアクティブにする(ステップS402)。
【0155】
次に、無線制御部101は、ハブ2から送信されたビーコンを受信する(ステップS403)。
【0156】
そして、スケジューラ102は、ビーコンの入力を無線制御部101から受ける。そして、スケジューラ102は、ビーコンから同期情報及びCSMA期間の情報を取得する。タイマ制御部103は、同期情報及びCSMA期間の情報の入力をスケジューラ102から受ける。そして、タイマ制御部103は、同期処理及びCSMA期間の周期確認などを実行する(ステップS404)。
【0157】
次に、タイマ制御部103は、今回のCSMA期間がRSSI取得期間か否かを判定する(ステップS405)。
【0158】
RSSI取得期間の場合(ステップS405:肯定)、ノード1は、RSSI取得処理及びデータ送信処理を実行する(ステップS406)。ステップS406におけるRSSI取得及びデータ送信処理については、図13を用いて後で詳細に説明する。
【0159】
これに対して、RSSI取得期間でない場合(ステップS405:否定)、ノード1は、データ送信処理を実行する(ステップS407)。ステップS407におけるデータ送信処理については、図14を用いて後で詳細に説明する。
【0160】
次に、図13を参照して、図12のステップS406におけるRSSI取得及びデータ送信処理について説明する。
【0161】
RSSI計算部105は、ビーコン及びビーコン番号の入力を無線制御部101から受ける。その後、RSSI計算部105は、受信したビーコンを用いて、ハブ2からの信号におけるRSSIを算出する(ステップS501)。
【0162】
メモリ制御部108は、ビーコン番号及びハブ2からの信号におけるRSSIの入力をRSSI計算部105から受ける。そして、メモリ制御部108は、ビーコン番号及びハブ2からの信号におけるRSSI値を対応付けて記憶部109に格納する(ステップS502)。
【0163】
無線制御部101は、バックオフカウンタをリセットする(ステップS503)。そして、無線制御部101は、キャリアセンスを行う(ステップS504)。
【0164】
無線制御部101は、キャリアセンスにより他のノードからのパケットを受信したか否かを判定する(ステップS505)。パケットを受信した場合(ステップS505:肯定)、RSSI計算部105は、他のノードからのパケットを無線制御部101から取得する。そして、RSSI計算部105は、受信したパケットを用いて、パケットの送信元のノードからの信号によるRSSIを算出する(ステップS506)。
【0165】
メモリ制御部108は、ノード番号、受信時刻及びRSSIの入力をRSSI計算部105から受ける。そして、メモリ制御部108は、ノード番号、受信時刻及びRSSIのそれぞれを対応付けて記憶部109に格納し(ステップS507)、ステップS503へ戻る。
【0166】
これに対して、パケットを受信しない場合(ステップS505:否定)、無線制御部101は、バックオフカウンタをデクリメントする(ステップS508)。
【0167】
そして、無線制御部101は、バックオフカウンタが0になったか否かを判定する(ステップS509)。無線制御部101は、バックオフカウンタが0で無いと判定した場合(ステップS509:否定)、ステップS504へ戻る。
【0168】
これに対して、バックオフカウンタが0の場合(ステップS509:肯定)、無線制御部101は、センサ制御部107から取得したセンシングデータをハブ2へ送信する(ステップS510)。
【0169】
その後、タイマ制御部103は、CSMA期間が終了したか否かを判定する(ステップS511)。
【0170】
CSMA期間が終了していない場合(ステップS511:否定)、無線制御部101は、キャリアセンスにより他のノードからのパケットを受信したか否かを判定する(ステップS512)。パケットを受信した場合(ステップS512:肯定)、RSSI計算部105は、他のノードからのパケットを無線制御部101から取得する。そして、RSSI計算部105は、受信したパケットを用いて、パケットの送信元のノードからの信号によるRSSIを算出する(ステップS513)。
【0171】
メモリ制御部108は、ノード番号、受信時刻及びRSSIの入力をRSSI計算部105から受ける。そして、メモリ制御部108は、ノード番号、受信時刻及びRSSIのそれぞれを対応付けて記憶部109に格納し(ステップS514)、ステップS511へ戻る。
【0172】
これに対して、無線制御部101が、パケットを受信していないと判定した場合(ステップS512:否定)、ステップS511へ戻る。
【0173】
一方、CSMA期間が終了た場合(ステップS511:肯定)、タイマ制御部103は、各部への電力供給の停止を電源制御部104に指示する。その後、電源制御部104は、電源を切断して各部への電力の供給を停止し、自装置をスリープにする(ステップS515)。
【0174】
次に、図14を参照して、図12のステップS407におけるデータ送信処理について説明する。
【0175】
タイマ制御部103は、各部への電力供給の停止を電源制御部104に指示する。その後、電源制御部104は、電源を切断して各部への電力の供給を停止し、自装置をスリープにする(ステップS601)。
【0176】
そして、タイマ制御部103は、通信を開始するか否かを判定する(ステップS602)。通信を開始しない場合(ステップS602:否定)、タイマ制御部103は、通信を開始するまで待機する。
【0177】
これに対して、通信を開始する場合(ステップS602:肯定)、タイマ制御部103は、各部への電力の供給を電源制御部104に指示する。その後、電源制御部104は、電源を投入して各部へ電力を供給し、自装置をアクティブにする(ステップS603)。
【0178】
無線制御部101は、バックオフカウンタをリセットする(ステップS604)。そして、無線制御部101は、キャリアセンスを行う(ステップS605)。
【0179】
無線制御部101は、キャリアセンスにより他のノードからのパケットを受信したか否かを判定する(ステップS606)。無線制御部101が、パケットを受信したと判定した場合(ステップS606:肯定)、ステップS601へ戻る。
【0180】
これに対して、パケットを受信しない場合(ステップS606:否定)、無線制御部101は、バックオフカウンタをデクリメントする(ステップS607)。
【0181】
そして、無線制御部101は、バックオフカウンタが0になったか否かを判定する(ステップS608)。無線制御部101は、バックオフカウンタが0で無いと判定した場合(ステップS608:否定)、ステップS605へ戻る。
【0182】
これに対して、バックオフカウンタが0の場合(ステップS608:肯定)、無線制御部101は、センサ制御部107から取得したセンシングデータをハブ2へ送信する(ステップS609)。
【0183】
その後、電源制御部104は、電源を切断して各部への電力の供給を停止し、自装置をスリープにする(ステップS610)。
【0184】
以上に説明したように、本実施例2に係る無線通信システムによれば、CSMAの方式の通信を用いた場合でも、消費電力を抑えながら、各ノード間の伝播路情報を取得することができる。さらに、各ノード間の伝播路情報からRSSI行列などを作成することで、各ノードの相対的位置を把握することができる。
【実施例3】
【0185】
次に、実施例3に係る無線通信システムについて説明する。本実施例に係る無線通信システムは、予め決められた閾値よりも高い値を有するRSSI値のみをハブに送信することが実施例1及び実施例2と異なるものである。そこで、以下では、送信するRSSI値の制限について主に説明する。本実施例に係るノードも、図1のブロック図で表される。また、本実施例に係るハブも、図4で表される。そして、本実施例において、実施例1と同じ符号を有するノード及びハブの各部は、特に説明の無い限り同じ機能を有しているものとする。特にハブについては、ノードへ送信するビーコンの内容が異なるだけであり、他は実施例1と同様であるので、説明は省略する。
【0186】
RSSIテーブル作成部106は、RSSI値の閾値を予め記憶している。ここで、ノードの測位をするにあたりRSSI値が低すぎる場合、ノードの測位のデータとして好ましくないデータとなってしまう。そのため、無線通信システムの運用状況によってノードの測位に使用可能なRSSI値の最低値が閾値として決定される。このため、閾値は、無線通信システムの運用状況によって決定されることが好ましい。
【0187】
RSSIテーブル作成部106は、実施例1と同様に、自装置のノード番号より大きいノード番号を有する他のノードからの信号によるRSSI値を、メモリ制御部108を介して記憶部109から抽出する。さらに、RSSIテーブル作成部106は、抽出したRSSI値と閾値を比較し、閾値より大きいRSSI値を抽出する。
【0188】
そして、RSSIテーブル作成部106は、閾値より大きいRSSI値を用いてRSSIテーブルを作成する。RSSIテーブルの作成の詳細は実施例1と同様である。
【0189】
そして、RSSIテーブル作成部106は、作成したRSSIテーブルを無線制御部101へ出力する。
【0190】
以上に説明したように、本実施例にかかる無線通信装置は、測位に用いることが好ましくないRSSI値をハブに送信することを抑えることができる。これにより、よりハブへのデータ送信量を削減することができ、RSSIデータ収集のためのネットワークの負荷を低減することができる。
【0191】
また、本実施例では、送信するRSSI値の数を制限する方法として、RSSI値の大きさを閾値として用いたが、この閾値は、測位に用いることが好ましくないデータを区別することができれば他の値でもよい。例えば、RSSI値の分散値を用いてもよいし、また、RSSI値の大きさと分散値とを組み合わせて用いてもよい。例えば、分散値を用いる場合には、それ以上であれば電波が不安定になると予想される分散値を閾値として設定し、その閾値よりも小さい分散値を有するRSSI値をハブに送信することが考えられる。
【0192】
また、以上では、実施例1を基に説明を行なったが、実施例2に対しても本実施例の構成を付加することができる。
【実施例4】
【0193】
次に、実施例4に係る無線通信装置について説明する。本実施例に係る無線通信装置は、RSSI行列を生成するにあたり、各RSSI値に補正を行い、送信電力を規格化することが実施例1と異なるものである。そこで、以下では、RSSI行列の生成について主に説明する。本実施例に係るノードも、図1のブロック図で表される。これに対して、本実施例に係るハブは、図15で表される。図15は、実施例4に係るハブの機能を表すブロック図である。本実施例に係るノード及びハブのいずれも、実施例1と同じ符号を有する各部は、特に説明の無い限り同じ機能を有しているものとする。特にノードについては、実施例1と同様であるので、説明は省略する。
【0194】
図15に示すように、本実施例に係るハブ2は、実施例1の構成に加えて、RSSI計算部210をさらに有している。
【0195】
RSSI計算部210は、各ノード1から送信された信号の入力を無線制御部201から受ける。そして、RSSI計算部210は、受信した信号のRSSI値を算出する。すなわち、RSSI計算部210は、各ノード1からハブ2へ向けた信号によるそれぞれのRSSI値を算出する。以下では、各ノード1からハブ2へ向けた信号によるRSSI値を「子親間のRSSI値」と呼ぶ。そして、RSSI計算部210は、算出した子親間のRSSI値及びその子親間のRSSI値の基になったパケットの送信元のノード番号を記憶部206への格納命令とともにメモリ制御部205へ出力する。
【0196】
メモリ制御部205は、無線制御部201から受信した各ノード1から送られてきたRSSIテーブルを記憶部206へ格納する。また、メモリ制御部205は、RSSI計算部210から受信した子親間のRSSI値及びノード番号を対応させて記憶部206へ格納する。
【0197】
RSSIテーブル集約部208は、ハブ2の子局である全てのノード1からRSSIを受信した後、メモリ制御部205を介して記憶部206から、格納されている全てのRSSIテーブル、子親間のRSSI値及び子親間のRSSI値に対応するノード番号を取得する。
【0198】
さらに、RSSIテーブル集約部208は、RSSIテーブルから、そのRSSIテーブルを送信したノード1が受信したハブ2からの信号によるRSSI値を取得する。ここで、ノード1が受信したハブ2からの信号によるRSSI値を「親子間のRSSI値」と言う。
【0199】
ここで、各ノード1の送信電力が一定でない場合がある。各ノード1の送信電力が一定で無い場合、大きい送信電力を有するノード1から送信された信号のRSSI値は大きくなり、小さい送信電力を有するノード1から送信された信号のRSSI値は小さくなってしまう。このように、送信電力が一定で無い場合、RSSIの値が各ノードの送信電力に影響されるため、取得したRSSI値をそのまま用いても正確な測位ができない。そこで、本実施例に係るRSSIテーブル集約部208は、RSSI値から送信電力の影響を除くため、送信電力を規格化する補正値を算出する。そして、RSSIテーブル集約部208は、その補正値により各RSSI値を補正を行った後にRSSI行列を作成する。
【0200】
そこで、以下にRSSIテーブル集約部208による補正値の算出及びRSSI行列の作成について説明する。ここで、ハブ2を表す付加番号を「0」として、子親間のRSSI値をS0i(iはノード番号であり、i=1、2、・・・、n)とする。また、親子間のRSSI値をSi0とする。さらに、本実施例では、実施例1と同様に、各RSSIテーブルには、そのRSSIテーブルを作成したノードよりノード番号の大きいノードからの信号によるRSSI値が含まれているものとする。すなわち、RSSIテーブル集約部208は、各RSSIテーブルからSij(i,j=1,2,・・・,n、i<j)を取得することができる。
【0201】
RSSIテーブル集約部208は、取得したSi0(i=1,2,・・・,n)、S0i(i=1,2,・・・,n)、及びSij(i,j=1,2,・・・,n、i<j)から図16に示す拡張RSSI行列410を生成する。図16は、拡張RSSI行列の一例を表す図である。
【0202】
そして、RSSIテーブル集約部208は、子親間のRSSI値(S0i)及び親子間のRSSI値(Si0)を用いて、電波の双対性を利用して、送信電力を規格化するための補正値Δiを算出する。具体的には、RSSIテーブル集約部208は、子親間のRSSI値(S0i)から親子間のRSSI値(Si0)を減算して補正値Δiを算出する。すなわち、Δi=S0i−Si0となる。これは、本来ハブ2とノード1とが同じ送信電力であれば電波の双対性からRSSIは同じ値となり、差分は0になるはずであるが、ノード1の送信電力がハブ2とずれていれば差分がΔiとして求められる。したがって、ハブ2の送信電力を基準として、各ノード1の送信電力を規格化することができる。
【0203】
次に、RSSIテーブル集約部208は、各Sij(i,j=1,2,・・・,n、i<j)に対して補正値Δiを適用して補正を行う。具体的には、RSSIテーブル集約部208は、各Sij(i,j=1,2,・・・,n、i<j)から補正値Δiを減算してSij´を求める。すなわち、Sij´=Sij−Δiとなる。そこで、RSSIテーブル集約部208は、求めたSij´を用いて図5の行列401と同様のRSSI行列を作成する。
【0204】
そして、RSSIテーブル集約部208は、実施例1と同様に、電波の双対性を利用して、Sij´=Sji´として、RSSI行列を完成させる。
【0205】
その後、RSSIテーブル集約部208は、生成したRSSI行列をI/O制御部207を介して上位サーバへ送信する。
【0206】
以上に説明したように、本実施例に係る無線通信システムでは、各ノードの送信電力で規格化したRSSI値を用いてRSSI行列を生成している。したがって、各ノードの送信電力の影響を除いたRSSI行列が生成でき、より正確に各ノードの測位を行うことができる。
【0207】
また、以上では、実施例1を基に説明を行なったが、実施例2〜3のいずれに対しても本実施例の構成を付加することができる。
【実施例5】
【0208】
次に、実施例5に係る無線通信システムについて説明する。本実施例に係る無線通信システムは、RSSI値のデータのビット数を削減してハブにデータを送信することが実施例1と異なるものである。そこで、以下では、ノードにおけるビット数の削減及びハブにおけるRSSI行列の生成について主に説明する。本実施例に係るノードも、図1のブロック図で表される。また、本実施例に係るハブも、図4で表される。そして、本実施例において、実施例1と同じ符号を有するノード及びハブの各部は、特に説明の無い限り同じ機能を有しているものとする。
【0209】
また、以下では、ノード#iを例に説明する。すなわち、RSSI値を表すSijの添えiは、自装置を表しているものとする。
【0210】
RSSIテーブル作成部106は、メモリ制御部108を介して記憶部109からSij(i<j)及びハブ2から自装置への信号によるRSSI(以下では、「Si0」と表す)を取得する。
【0211】
そして、RSSIテーブル作成部106は、SijとSi0との差分Dijを求める。すなわち、Dij=Sij−Si0である。
【0212】
次に、RSSIテーブル作成部106は、Dijの上位1ビットを削除してDij´とする。ここで、Zigbee(登録商標)やWiFi(登録商標)などのシステムでは、RSSI値は1dBの解像度で、8ビット(255段階)で表現される。しかし、実際には、ノード1及びハブ2が受信可能な信号のダイナミックレンジは高々80dBであり、適切に規格化できれば7bitでも表現することができる。そこで、本実施例では、1ビットを削除するとした。ただし、信号のダイナミックレンジがより小さければさらにビットを削減することができ、削減するビットは、無線通信システムの環境に合わせて設定することが好ましい。例えば、信号のダイナミックレンジが64bit以下であることが分かっているなどの条件があれば、Dijから2ビットを削除することもできる。
【0213】
そして、RSSIテーブル作成部106は、RSSIを表す値をDij´としてRSSIテーブルを作成する。そして、このRSSIテーブルには、実施例1で説明したように、ビーコンを用いて取得したハブ2から自装置への信号によるRSSIであるSi0も含まれている。その後、このRSSIテーブルは、無線制御部101によってハブ2に送信される。
【0214】
次に、ハブ2におけるRSSIテーブル集約部208によるRSSI行列の作成について説明する。
【0215】
ハブ2の子局である全てのノード1からRSSIテーブルが記憶部206に格納されると、RSSIテーブル集約部208は、メモリ制御部205を介してRSSIテーブルを取得する。
【0216】
そして、RSSIテーブル集約部208は、各RSSIテーブルからDij´を取得する。また、RSSIテーブル集約部208は、各RSSIテーブルからS0iを取得する。
【0217】
次に、RSSIテーブル集約部208は、Dij´にS0iを加算して、絶対値データSij´に復元する。すなわち、Sij´´=Dij´+S0iである。
【0218】
そして、RSSIテーブル集約部208は、実施例1と同様に、電波の双対性を利用して、Sij´´=Sji´´として、RSSI行列を完成させる。
【0219】
その後、RSSIテーブル集約部208は、生成したRSSI行列をI/O制御部207を介して上位サーバへ送信する。
【0220】
以上に説明したように、本実施例に係る無線通信システムでは、送信するRSSIのビット数を削減してハブに送信することができる。したがって、よりハブへのデータ送信量を削減することができ、RSSIデータ収集のためのネットワークの負荷を低減することができる。
【0221】
また、以上では、実施例1を基に説明を行なったが、実施例2〜4のいずれに対しても本実施例の構成を付加することができる。
【0222】
さらに、実施例2〜5においても、実施例1と同様に、RSSI以外の他の伝播路の状態を表す情報であれば他の伝播路情報を用いてもよく、例えば、ノード間の距離に相当する伝播遅延や、ノード間の相対速度に相当するドプラシフトなどを用いてもよい。
【0223】
〔ハードウェア構成〕
次に、図17及び図18を参照して、以上の各実施例に係るノード及びハブのハードウェア構成について説明する。図17は、ノードのハードウェア構成図である。図18は、ハブのハードウェア構成図である。
【0224】
本実施例に係るノードは、図17に示すように、メモリ601、センサ602、プロセッサ603、RFトランシーバ604、クロック生成器606及び電源回路607を有している。
【0225】
メモリ601、センサ602、RFトランシーバ604、アンテナ605、クロック生成器606及び電源回路607は、それぞれプロセッサ603と接続されている。また、アンテナ605は、RFトランシーバ604と接続されている。
【0226】
メモリ601は、記憶装置であり、例えば、図1に示す記憶部109の機能を実現する。また、メモリ601は、図1に示した無線制御部101、スケジューラ102、タイマ制御部103、RSSI計算部105、RSSIテーブル作成部106、センサ制御部107、メモリ制御部108などによる処理を実現する各種プログラムを記憶している。
【0227】
RFトランシーバ604は、アンテナ605を介してハブ2と通信を行う。例えば、RFトランシーバ604、プロセッサ603及びメモリ601により、図1に示した無線制御部101の機能が実現される。
【0228】
クロック生成器606は、動作の基準となるクロックを生成する。例えば、クロック生成器606、プロセッサ603及びメモリ601により、図1に示したタイマ制御部103の機能が実現される。
【0229】
電源回路607は、各部に対して電力の供給を行う回路である。例えば、電源回路607、プロセッサ603及びメモリ601により、図1に示した電源制御部104の機能が実現される。
【0230】
センサ602は、生体情報などの所定の情報の検出を行う。例えば、センサ602、プロセッサ603及びメモリ601により、図1に示したセンサ制御部107の機能を実現する。
【0231】
また、プロセッサ603及びメモリ601は、例えば、図1に示した、スケジューラ102、RSSI計算部105、RSSIテーブル作成部106及びメモリ制御部108などの機能を実現する。
【0232】
例えば、プロセッサ603は、メモリ601に記憶されている各種プログラムを読み出して、メモリ601上に各種機能を実現するプロセスを生成する。そして、プロセッサ603は、各部と共に、メモリ601上に生成されたプロセスを実行することで、各種処理を行う。
【0233】
また、本実施例に係るハブは、図18に示すように、メモリ701、外部I/O702、プロセッサ703、RFトランシーバ704、アンテナ705、クロック生成器706及び電源回路707を有している。
【0234】
メモリ701、外部I/O702、RFトランシーバ704、クロック生成器706及び電源回路707は、それぞれプロセッサ703と接続されている。また、アンテナ705は、RFトランシーバ704と接続されている。
【0235】
メモリ701は、記憶装置であり、例えば、図4に示す記憶部206の機能を実現する。また、メモリ701は、図4に示した無線制御部201、ビーコン生成部202、タイマ制御部204、メモリ制御部205、I/O制御部207、RSSIテーブル集約部208などによる処理を実現する各種プログラムを記憶している。
【0236】
RFトランシーバ704は、アンテナ705を介してノード1と通信を行う。例えば、RFトランシーバ704、プロセッサ703及びメモリ701により、図4に示した無線制御部201の機能が実現される。
【0237】
クロック生成器706は、動作の基準となるクロックを生成する。例えば、クロック生成器706、プロセッサ703及びメモリ701により、図4に示したタイマ制御部204の機能が実現される。
【0238】
電源回路707は、各部に対して電力の供給を行う回路である。例えば、電源回路707、プロセッサ703及びメモリ701により、図4に示した電源制御部209の機能が実現される。
【0239】
外部I/O702は、生体情報などの所定の情報の検出を行う。例えば、外部I/O702、プロセッサ703及びメモリ701により、図4に示したI/O制御部207の機能を実現する。
【0240】
また、プロセッサ703及びメモリ701は、例えば、図4に示した、ビーコン生成部202、スケジューラ203、タイマ制御部204、メモリ制御部205及びRSSIテーブル集約部208などの機能を実現する。
【0241】
例えば、プロセッサ703は、メモリ701に記憶されている各種プログラムを読み出して、メモリ701上に各種機能を実現するプロセスを生成する。そして、プロセッサ703は、各部と共に、メモリ701上に生成されたプロセスを実行することで、各種処理を行う。
【符号の説明】
【0242】
1 ノード(子局)
2 ハブ(親局)
101 無線制御部
102 スケジューラ
103 タイマ制御部
104 電源制御部
105 RSSI計算部
106 RSSIテーブル作成部
107 センサ制御部
108 メモリ制御部
109 記憶部
201 無線制御部
202 ビーコン生成部
203 スケジューラ
204 タイマ制御部
205 メモリ制御部
206 記憶部
207 I/O制御部
208 RSSIテーブル集約部
209 電源制御部
210 RSSI計算部

【特許請求の範囲】
【請求項1】
親局及び複数の子局を有する無線通信システムであって、
前記子局は、
所定の通信期間において、他の前記子局である他局が前記親局に向けて送信した信号を取得する他局信号取得部と、
前記他局信号取得部により取得された信号から前記他局と自装置との間の伝播路情報を算出する伝播路情報取得部と、
算出した前記伝播路情報を前記親局へ送信する伝播路情報送信部とを備え、
前記親局は、
各前記子局が送信した伝播路情報を受信する伝播路情報受信部と、
受信した前記伝播路情報を集約する伝播路情報集約部とを備えた
ことを特徴とする無線通信システム。
【請求項2】
前記親局は、各前記子局に対してそれぞれ異なる前記所定の通信期間の割り当てを報知する報知部をさらに備え、
前記子局は、前記親局から報知された前記所定の通信期間を受信する通信期間受信部をさらに備え、
前記他局信号取得部は、前記通信期間受信部により受信された前記所定の通信期間を基に、他の前記子局である他局に割り当てられた前記所定の通信期間において、該他局が前記親局へ送信した信号を取得する
ことを特徴とする請求項1に記載の無線通信システム。
【請求項3】
前記親局は、各前記子局に共通の前記所定の通信期間の割り当てを報知する報知部をさらに備え、
前記子局は、前記親局から報知された前記所定の通信期間を受信する通信期間受信部をさらに備え、
前記他局信号取得部は、前記通信期間受信部により受信された前記所定の通信期間において、他の前記子局である他局が前記親局へ送信した信号を取得する
ことを特徴とする請求項1に記載の無線通信システム。
【請求項4】
伝播路情報送信部は、予め決められた伝播路情報の重複を回避する所定の規則に従い他局を抽出し、抽出した前記他局が送信した信号に基づく前記伝播路情報のみを送信することを特徴とする請求項1〜3のいずれか一つに記載の無線通信システム。
【請求項5】
各前記子局は、それぞれ異なる自己を表すノード番号を有しており、
伝播路情報送信部は、前記ノード番号が自装置より大きい他局を抽出する
ことを特徴とする請求項4に記載の無線通信システム。
【請求項6】
各前記子局は、それぞれ異なる自己を表すノード番号を有しており、
伝播路情報送信部は、前記ノード番号が偶数又は奇数の一方であり前記ノード番号が自装置より大きい他局、及び前記ノード番号が偶数又は奇数の他方であり前記ノード番号が自装置より小さい他局を抽出する
ことを特徴とする請求項4に記載の無線通信システム。
【請求項7】
各前記子局は、それぞれ異なる自己を表すノード番号を有しており、
伝播路情報送信部は、前記他局信号取得部により取得された信号における自装置からの信号に基づく前記伝播路情報の有無を確認し、自装置からの信号に基づく前記伝播路情報が無い信号を送信した他局を抽出する
ことを特徴とする請求項4に記載の無線通信システム。
【請求項8】
前記親局は、
各前記子局から自装置に向けて送信された信号を基に、各前記子局からの信号における前記伝播路情報である親子間伝播路情報を算出する親子間伝播路情報算出部を備え、
前記伝播路情報取得部は、前記親局から受信した信号を基に親子間伝播路情報を算出し、
前記伝播路情報送信部は、前記伝播路情報取得部により算出された前記親子間伝播路情報を前記親局へ送信し、
前記伝播路情報集約部は、各前記子局から受信した親子間伝播路情報及び前記親子間伝播路情報算出部により算出された前記親子間伝播路情報を用いて補正値を算出し、算出した前記補正値を基に各前記子局から受信した伝播路情報を補正した値を伝播路情報として用いる
ことを特徴とする請求項1〜7のいずれか一つに記載の無線通信システム。
【請求項9】
前記伝播路情報取得部は、前記親局から受信した信号を基に親子間伝播路情報を算出し、
前記伝播路情報送信部は、前記他局との間の伝播路情報と前記親子間伝播路情報との差分を基に前記伝播路情報の上位ビットを削除することでビット幅を削減した伝播路情報を前記親局に送信する
ことを特徴とする請求項1〜8のいずれか一つに記載の無線通信システム。
【請求項10】
前記伝播路情報は、受信電界強度、もしくはドプラ周波数又は信号遅延時間の子局同士の相対量のいずれかであることを特徴とする請求項1〜9のいずれか一つに記載の無線通信システム。
【請求項11】
前記伝播路情報取得部は、前記伝播路情報として受信電界強度を取得し、
前記伝播路情報送信部は、前記受信電界強度の大きさ及び分散値を基に、前記親局に送る受信電界強度の数を所定数に制限する
ことを特徴とする請求項1〜10のいずれか一つに記載の無線通信システム。
【請求項12】
前記親局は、各前記子局間の距離を求める距離算出部をさらに備えたことを特徴とする請求項1〜11のいずれか一つに記載の無線通信システム。
【請求項13】
親局及び複数の子局を有する無線通信システムの制御方法であって、
各前記子局に、
所定の通信期間において、他の前記子局である他局が前記親局へ送信した信号を取得させ、
取得させた信号から前記他局と自装置との間の伝播路情報を算出させ、
算出させた前記伝播路情報を前記親局へ送信させ、
前記親局に、
各前記子局が送信した伝播路情報を受信させ、
受信させた前記伝播路情報を基に、各前記子局間の距離を求めさせる
ことを特徴とする無線通信システム制御方法。
【請求項14】
所定の通信期間において、他の子局装置である他局が親局装置に向けて送信した信号を取得する他局信号取得部と、
前記他局信号取得部により取得された信号から前記他局と自装置との間の伝播路情報を算出する伝播路情報取得部と、
算出した前記伝播路情報を前記親局装置へ送信する伝播路情報送信部とを備えた
ことを特徴とする子局装置。
【請求項15】
複数の子局の親局装置であって、
所定の通信期間において、他の子局である他局が前記親局装置に向けて送信した信号を取得する他局信号取得部と、前記他局信号取得部により取得された信号から前記他局と前記信号を取得した子局との間の伝播路情報を算出する伝播路情報取得部と、算出した前記伝播路情報を前記親局装置へ送信する伝播路情報送信部とを有する各前記子局が送信した前記伝播路情報を受信する伝播路情報受信部と、
受信した前記伝播路情報を集約する伝播路情報集約部と、
を備えたことを特徴とする親局装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate