(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0020】
以下、本発明に係る、ノード装置、ノード装置制御方法、及び、ノード装置制御プログラム、の各実施形態について
図1〜
図5を参照しながら説明する。
【0021】
<第1実施形態>
(構成)
図1に示したように、第1実施形態に係るセンサネットワークシステム1は、1つのシンクノード101と、複数のセンサノード201,202,…と、を備える。
【0022】
複数のセンサノード201,202,…は、互いに異なる位置に配置される。複数のセンサノード201,202,…のそれぞれは、他のセンサノード201,202,…との間で、無線による通信を行うように構成されている。本例では、複数のセンサノード201,202,…のそれぞれは、互いに無線信号を送受信することが可能な領域内に位置する他のセンサノード201,202,…との間で、無線による通信を行うように構成されている。
【0023】
複数のセンサノード201,202,…のそれぞれは、物理量を検出し、当該検出された物理量を表すセンサデータを取得する。複数のセンサノード201,202,…のそれぞれは、取得されたセンサデータを収容するパケットを、他のセンサノード201,202,…を介して、シンクノード101へ送信する。即ち、複数のセンサノード201,202,…は、無線マルチホップネットワークを構成している。なお、複数のセンサノード201,202,…は、無線マルチホップネットワーク以外のネットワーク(例えば、無線ネットワーク等)を構成していてもよい。
【0024】
シンクノード101は、複数のセンサノード201,202,…のそれぞれにより送信されたパケットを受信することにより、センサデータを収集する。
【0025】
センサネットワークシステム1は、ネットワークトポロジ(例えば、木構造を有するネットワークトポロジ)を形成するように構成される。即ち、シンクノード101、及び、センサノード201,202,…のそれぞれは、無線通信を行うことにより、ネットワークトポロジにおけるノードを構成している。また、本明細書において、シンクノード101、及び、センサノード201,202,…のそれぞれは、ノード装置とも呼ばれる。
【0026】
図2に示したように、センサノード201は、無線通信部310と、ルーティング機能部320と、センサ部330と、アプリケーション機能部340と、を備える。
【0027】
無線通信部310は、無線信号を送受信するためのアンテナ311を備える。無線通信部310は、他のノード(シンクノード101、及び、センサノード202,…)との間でアンテナ311を介して無線通信を行う。無線通信部310は、無線通信を行うことにより受信した無線信号が表す情報をルーティング機能部320へ出力する。更に、無線通信部310は、無線通信を行うことにより、ルーティング機能部320によって出力された情報を表す無線信号を他のノードへ送信する。
【0028】
本例では、無線通信部310は、IEEE(Institute of Electrical and Electronics Engineers)802.11により定められた方式に従って無線通信を行う。なお、無線通信部310は、他の方式(例えば、IEEE802.15.1により定められた方式、IEEE802.15.4により定められた方式、Bluetooth(登録商標)、ZigBee(登録商標)、又は、省電力無線等)に従って無線通信を行うように構成されていてもよい。
【0029】
ルーティング機能部320は、予め定められたルーティングプロトコルに従ってネットワークトポロジを形成するための機能を有する。ここでは、この機能のうちの本発明に係る部分を主として説明する。
【0030】
ルーティング機能部320は、無線情報取得部321と、パケット送受信部322と、プロトコル処理部323と、タイマ管理部324と、ルーティング情報記憶部325と、を備える。なお、パケット送受信部322、及び、プロトコル処理部323は、要求受信手段、及び、応答情報送信手段を構成している。
【0031】
無線情報取得部321は、周辺ノードから無線信号を受信した場合、当該周辺ノードに対する通信状態情報を取得する。周辺ノードは、他のノード(シンクノード101、及び、センサノード202,…)のうちの、自ノード(センサノード201)と無線通信可能なノードである。
【0032】
ここで、通信状態情報は、自ノードの通信状態を表す情報であり、且つ、ネットワークトポロジを形成するための情報である。本例では、通信状態情報は、周辺ノードから受信した無線信号の強度(受信強度)、当該無線信号の遅延時間(例えば、当該無線信号が送信されてから受信されるまでに要した時間等)、又は、ロス率(例えば、送信されたパケットの数に対する、受信されないパケットの数の割合、又は、データの誤り率等)等を表す情報である。
【0033】
なお、通信状態情報は、自ノード又は周辺ノードからシンクノード101までのホップ数を表すホップ数情報を含んでいてもよい。
【0034】
無線情報取得部321は、取得された通信状態情報を、当該通信状態情報を取得する基となった無線信号を送信してきた周辺ノード(送信元ノード)と対応付けて(本例では、周辺ノードを識別するためのノード識別情報と対応付けて)ルーティング情報記憶部325に記憶させる。
【0035】
パケット送受信部322は、無線通信部310により受信された無線信号が表すパケットを取得する。パケット送受信部322は、取得されたパケットに収容されている、情報、又は、要求を取得し、取得された、情報、又は、要求を323をプロトコル処理部323へ出力する。
【0036】
また、パケット送受信部322は、プロトコル処理部323により、情報、又は、要求が出力された場合、当該情報、又は、要求を収容するパケットを生成する(即ち、情報、又は、要求をパケットにマッピング(変換)する)。パケット送受信部322は、無線通信部310を介して、生成されたパケットを自ノードに対して設定された送信先としての他ノード(他のノード)へ送信する。
【0037】
ここで、パケットに収容される、情報、又は、要求は、情報送信要求、通信状態情報、接続要求、又は、接続応答である。
【0038】
情報送信要求は、通信状態情報の送信を要求する情報である。本例では、情報送信要求は、複数のノードにより受信されるように宛先が設定され且つ応答情報の送信を要求する応答送信要求を構成している。また、本例では、情報送信要求は、送信元のノードを特定するための情報を含む。また、本例では、通信状態情報は、応答情報を構成している。
【0039】
接続要求は、接続先となるノードを特定するための情報を含み、当該特定されたノードとの接続を要求する情報である。本例では、接続要求は、後続情報を構成している。接続応答は、要求された接続を許可する旨を表す情報である。
【0040】
また、プロトコル処理部323は、パケット送受信部322により出力された、情報、又は、要求を受け付ける。プロトコル処理部323は、受け付けられた、情報、又は、要求が、通信状態情報である場合において、当該通信状態情報が、自ノードが送信した情報送信要求に対して他のノードから送信された通信状態情報である場合、受信通信状態情報としての当該通信状態情報を当該他のノードと対応付けてルーティング情報記憶部325に記憶させる。
【0041】
その後、プロトコル処理部323は、自ノードが送信した情報送信要求に対する通信状態情報を送信してきたノードの中から、ネットワークトポロジにおける接続先であるノードを、受信通信状態情報に基づいて決定する。そして、プロトコル処理部323は、接続先として決定したノードを特定するための情報を含む接続要求をパケット送受信部322へ出力する。
【0042】
また、プロトコル処理部323は、受け付けられた、情報、又は、要求が、情報送信要求である場合、当該情報送信要求が収容されていたパケットの送信元であるノード(送信元ノード)を特定し、特定された送信元ノードと対応付けてルーティング情報記憶部325に記憶されている通信状態情報を取得する。
【0043】
そして、プロトコル処理部323は、当該情報送信要求が受信されてから、所定の待機時間が経過するまで、当該情報送信要求に対する応答情報としての通信状態情報の送信(即ち、パケット送受信部322への出力)を待機する。
【0044】
そして、プロトコル処理部323は、通信状態情報の送信を待機している間に、送信元ノードにより送信された後続情報としての接続要求が受け付けられた場合、当該通信状態情報の送信を中止する。
【0045】
一方、プロトコル処理部323は、通信状態情報の送信を待機している間に、送信元ノードにより送信された後続情報としての接続要求が受け付けられなかった場合、上記取得された通信状態情報をパケット送受信部322へ出力する。これにより、パケット送受信部322は、通信状態情報を収容するパケットを、無線通信部310を介して送信する。
【0046】
即ち、プロトコル処理部323は、情報送信要求が受信された回数よりも、通信状態情報を送信する回数を少なくするように構成されている、と言うことができる。
【0047】
ここで、待機時間は、送信元ノードと対応付けて記憶されている(即ち、上記取得された)通信状態情報が表す受信強度に応じて予め定められる。本例では、待機時間は、受信強度が小さくなるほど長くなるように定められる。例えば、待機時間は、受信強度が−70dBm以上である場合に2秒に設定され、受信強度が−70dBm未満であり且つ−90dBm以上である場合に5秒に設定され、受信強度が−90dBm未満である場合に8秒に設定される。
【0048】
なお、プロトコル処理部323は、センサノードの密度(単位面積あたりに配置されているセンサノードの数)、及び/又は、センサネットワークシステム1に要求される応答時間の上限値等に応じて、待機時間が変更可能に構成されていてもよい。
【0049】
また、プロトコル処理部323は、自ノードをセンサネットワークシステム1において識別するための情報(例えば、ノード番号等)に基づいて待機時間を決定するように構成されていてもよい。また、プロトコル処理部323は、擬似乱数を生成し、生成された擬似乱数に基づいて待機時間を決定するように構成されていてもよい。
【0050】
また、プロトコル処理部323は、CMSA/CA(Carrier Sense Multiple Access/Collision Avoidance)機能によって定められるバックオフ時間を待機時間として用いるように構成されていてもよい。
【0051】
即ち、あるノードに対する待機時間は、他のいずれかのノードに対する待機時間と異なる値を有するように設定される。
【0052】
具体的には、プロトコル処理部323は、情報送信要求を受け付けると、通信状態情報を取得し、取得された通信状態情報が表す受信強度に応じて定められた待機時間をタイマ管理部324へ出力する。
【0053】
そして、プロトコル処理部323は、後述するタイムアウト通知をタイマ管理部324から受け付けるまでの間(待機期間)に、上記情報送信要求に対して、他のノードから送信元ノードへ送信された通信状態情報を受信したか否かを判定する。
【0054】
プロトコル処理部323は、待機期間内に、送信元ノードが、上記情報送信要求に対する通信状態情報を受信したときに送信する接続要求が受け付けられなかった(即ち、受信されなかった)場合、通信状態情報を送信元ノードへ送信する(即ち、パケット送受信部322へ出力する)。一方、プロトコル処理部323は、待機期間内に、上記接続要求が受け付けられた場合、通信状態情報を送信元ノードへ送信しない。
【0055】
また、プロトコル処理部323は、受け付けられた、情報、又は、要求が、接続要求である場合において、接続要求により特定される、接続先となるノードが自ノードであるとき、接続応答を送信する。
【0056】
タイマ管理部324は、時間を計測するタイマを有する。タイマ管理部324は、ルーティング機能部320又はプロトコル処理部323により出力された待機時間を受け付ける。タイマ管理部324は、待機時間を受け付けた場合、タイマが時間を計測することにより、当該待機時間を受け付けた時点から当該待機時間だけ後の時点にて、タイムアウト通知を、当該待機時間の出力元(即ち、ルーティング機能部320又はプロトコル処理部323)へ出力する。
【0057】
ルーティング情報記憶部325は、無線情報取得部321により取得された通信状態情報と、プロトコル処理部323により受け付けられた受信通信状態情報と、を記憶する。更に、ルーティング情報記憶部325は、形成されたネットワークトポロジに基づいた情報であり、且つ、パケットの転送先を表す情報であるルーティング情報(本例では、自ノードに対する送信先としての他ノードを特定するための情報)を記憶する。
【0058】
本例では、センサネットワークシステム1は、2つのノードが接続されることにより形成されたネットワークトポロジに基づくルーティング情報を各ノードのルーティング情報記憶部325に記憶させるように構成される。
【0059】
センサ部330は、物理量(本例では、温度)を検出する。なお、センサ部330は、物理量として、湿度、消費電力量(単位時間あたりに消費された電力の量)、ガスの使用量、水道の使用量、又は、音声等を検出するように構成されていてもよい。
【0060】
アプリケーション機能部340は、予め設定された取得周期が経過する毎に、センサ部330により検出された物理量を表すセンサデータを取得する。本例では、センサデータは、検出された物理量そのものを表すデータである。なお、アプリケーション機能部340は、予め設定された期間においてセンサ部330により検出された物理量に基づく値(例えば、平均値、及び、分散等)を表すセンサデータを取得するように構成されていてもよい。
【0061】
アプリケーション機能部340は、取得されたセンサデータをルーティング機能部320へ出力する。
【0062】
なお、アプリケーション機能部340は、センサノード201を用いてサービスを行う際にユーザーにより機能が追加されるように構成されていてもよい。例えば、センサノード201がスマートメータを構成する場合、アプリケーション機能部340は、電気機器を制御するように構成されていてもよい。
【0063】
パケット送受信部322は、アプリケーション機能部340によりセンサデータが出力された場合、当該センサデータを収容するパケットを生成する(即ち、センサデータをパケットにマッピング(変換)する)。パケット送受信部322は、無線通信部310を介して、生成されたパケットを自ノードに対して設定された送信先としての他ノードへ送信する。
【0064】
パケット送受信部322は、無線通信部310を介して、他ノードのそれぞれにより送信されたパケットを受信する。パケット送受信部322は、パケットを受信した場合、受信されたパケットのそれぞれが収容するセンサデータを収容するパケットを、無線通信部310を介して、自ノードに対して設定された送信先としての他ノードへ送信する。
【0065】
なお、他のセンサノード202,203,…のそれぞれも、センサノード201と同様の構成を有している。
【0066】
また、シンクノード101は、センサノード201と同様に、無線通信部と、ルーティング機能部と、アプリケーション機能部と、を備える。
更に、シンクノード101は、受信したセンサデータと、当該センサデータの送信元であるセンサノードを識別するためのノード識別情報と、を対応付けて記憶(蓄積)する。
【0067】
なお、シンクノード101は、取得されたセンサデータを自ノードが備える記憶装置に記憶するように構成されていたが、当該センサデータを他の装置(例えば、サーバ等)へ送信するように構成されていてもよい。
【0068】
また、シンクノード101は、センサ部330と同様の機能と、アプリケーション機能部340と同様の機能と、を有し、自ノードにおいてもセンサデータを取得するように構成されていてもよい。
【0069】
(作動)
次に、上述したセンサネットワークシステム1の作動について説明する。
本例では、センサネットワークシステム1は、プロアクティブ型のルーティングプロトコルに従って作動する。即ち、各センサノード201,202,…が定期的に(即ち、予め設定された更新周期が経過する毎に)、ネットワークトポロジを形成するための処理を実行する。これにより、ネットワークトポロジが更新される。
【0070】
いま、
図3に示したように、5つのセンサノード201〜205に着目して説明を続ける。本例では、センサノード201が、周辺に存在するノードを探索する場合を想定する。
【0071】
先ず、
図4に示したように、センサノード201は、ブロードキャスト方式に従って情報送信要求を送信する(ステップS101)。なお、情報送信要求は、周辺探索メッセージとも呼ばれる。また、ブロードキャスト方式は、メッセージに含まれる宛先アドレスとして、ブロードキャストアドレスを設定することにより、すべてのノードを宛先として設定する方式である。なお、センサノード201は、メッセージに含まれる宛先アドレスとして、複数のノードを特定するアドレスが設定された方式に従って情報送信要求を送信するように構成されていてもよい。
【0072】
センサノード201により送信された周辺探索メッセージは、
図3における破線の円R202内に位置するノード(本例では、センサノード202〜205)により受信される。
【0073】
図3における破線の円R201は、センサノード201により送信された無線信号の受信強度が−70dBm以上である領域を示している。また、
図3における破線の円R202は、センサノード201により送信された無線信号の受信強度が−90dBm以上である領域を示している。
【0074】
即ち、本例では、センサノード202,203は、センサノード201により送信された無線信号の受信強度が−70dBm以上である領域に位置している。また、センサノード204,205は、センサノード201により送信された無線信号の受信強度が−70dBm未満であり且つ−90dBm以上である領域に位置している。
【0075】
なお、周辺探索メッセージは、ネットワークトポロジにおけるセンサノード201の状態、及び、シンクノード101までのホップ数等を表す情報を含んでいてもよい。
【0076】
センサノード202〜205のそれぞれは、センサノード201により送信された周辺探索メッセージを受信する。このとき、センサノード202〜205のそれぞれは、通信状態情報を取得する。
【0077】
上記仮定に従えば、センサノード202,203のそれぞれは、受信強度として、−70dBm以上の値を取得する。従って、センサノード202,203のそれぞれは、情報送信要求を受信してから、受信強度に応じて定められた待機時間としての2秒が経過するまでの間、通信状態情報の送信を待機する。なお、通信状態情報は、周辺探索応答メッセージとも呼ばれる。
【0078】
次いで、センサノード202は、情報送信要求を受信してから待機時間が経過した時点にて、情報送信要求を送信してきたノードである送信元ノード(センサノード201)により送信された後続情報としての接続要求を受信したか否かを判定する。なお、接続要求は、接続要求メッセージとも呼ばれる。本例では、センサノード202は、送信元ノード201により送信された接続要求を受信していない。
【0079】
従って、センサノード202は、情報送信要求を受信してから待機時間が経過した時点にて、通信状態情報を送信元ノードとしてのセンサノード201へ送信する(ステップS102)。
【0080】
また、センサノード203も、センサノード202と同様に、情報送信要求を受信してから待機時間が経過した時点にて、通信状態情報を送信元ノードとしてのセンサノード201へ送信する(ステップS103)。
【0081】
なお、本例では、CMSA/CA機能によって定められるバックオフ時間が異なることにより、センサノード202により通信状態情報が送信される時点と、センサノード203により通信状態情報が送信される時点と、が僅かに相違する。
【0082】
一方、センサノード204,205のそれぞれは、受信強度として、−70dBm未満であり且つ−90dBm以上の値を取得する。従って、センサノード204,205のそれぞれは、情報送信要求を受信してから、受信強度に応じて定められた待機時間としての5秒が経過するまでの間、通信状態情報の送信を待機する。
【0083】
そして、センサノード201は、自ノードが送信した情報送信要求に対する通信状態情報を送信してきたノード(本例では、センサノード202、及び、センサノード203)の中から、ネットワークトポロジにおける接続先であるノードを、受信通信状態情報に基づいて決定する。
【0084】
ここでは、センサノード201が、センサノード202を接続先として決定する場合を想定する。この場合、センサノード201は、接続先として決定したノードを特定するための情報を含む接続要求メッセージを送信する(ステップS104)。
【0085】
センサノード201により送信された接続要求メッセージは、
図3における破線の円R202内に位置するノード(本例では、センサノード202〜205)により受信される。
【0086】
センサノード202は、センサノード201により送信された接続要求メッセージを受信すると、センサノード201との接続を許可する旨を表す接続応答情報をセンサノード201へ送信する(ステップS105)。なお、接続応答情報は、接続応答メッセージとも呼ばれる。これにより、ネットワークトポロジにおいて、センサノード201とセンサノード202とが接続される。
【0087】
一方、センサノード204は、情報送信要求を受信してから待機時間が経過した時点にて、情報送信要求を送信してきたノードである送信元ノード(センサノード201)により送信された後続情報としての接続要求を受信したか否かを判定する。本例では、センサノード204は、通信状態情報の送信を待機している間に、センサノード201により送信された接続要求メッセージを受信している。
【0088】
従って、センサノード204は、通信状態情報の送信を中止する(即ち、通信状態情報を送信しない)。同様に、センサノード205も、通信状態情報の送信を待機している間に、センサノード201により送信された接続要求メッセージを受信しているから、通信状態情報の送信を中止する。
【0089】
なお、センサノード204は、情報送信要求を受信してから待機時間が経過するまでの間に、情報送信要求を送信してきたノードである送信元ノード(センサノード201)により送信された後続情報としての接続要求を受信した場合、当該接続要求を受信した時点にて通信状態情報の送信を中止するように構成されていてもよい。
【0090】
また、センサノード204は、情報送信要求を受信してから待機時間が経過した時点、及び、後続情報を受信した時点、以外の時点にて、通信状態情報の送信を中止するか否かを決定するように構成されていてもよい。
【0091】
仮に、すべてのノード(センサノード202〜205)が応答情報としての周辺探索応答メッセージを送信する場合、周辺探索応答メッセージが4回、送信される。これに対し、本例では、周辺探索応答メッセージが送信される回数は、2回に削減されている。
【0092】
以上、説明したように、第1実施形態に係るノード装置101,201,202,…によれば、応答情報(本例では、通信状態情報)が無駄に送信されることを抑制することができる。
【0093】
また、第1実施形態に係るノード装置101,201,202,…によれば、応答送信要求、及び、後続情報の両方が送信されているにもかかわらず、ノード装置が、応答送信要求、及び、後続情報の一方を受信できない事態が生じる可能性を低減することができる。この結果、応答情報が送信される回数を確実に低減することができる。
【0094】
また、第1実施形態に係るノード装置101,201,202,…によれば、送信元ノードが応答送信要求に対する応答情報を受信していない場合に、応答送信要求を受信したノード装置は、当該応答送信要求に対する応答情報の送信を中止しない。従って、送信元ノードは、応答送信要求に対する応答情報を確実に受信することができる。
【0095】
このように、上記構成によれば、ノード装置の密度が比較的高い場合であっても、通信負荷を十分に低減することができる。
【0096】
更に、第1実施形態に係るノード装置101,201,202,…は、待機時間を、受信強度が小さくなるほど長くなる値に決定する。
【0097】
これによれば、受信強度が大きいノード装置ほど優先して、応答情報を送信元ノードへ送信することができる。これにより、例えば、受信強度が大きいノード装置ほど優先して、ネットワークトポロジにおいて送信元ノードと接続することができる。この結果、無線信号における誤り率を低減することができるので、通信負荷が無駄に過大となることを回避することができる。
【0098】
加えて、第1実施形態に係るノード装置101,201,202,…は、物理量を検出し、当該検出された物理量を表すセンサデータをネットワークトポロジにおいて接続された他のノード装置へ送信する。
【0099】
ところで、複数のセンサノードが比較的近くに配置されている場合、当該複数のセンサノードにより検出される物理量が比較的近い値である可能性が高い。従って、送信元ノードは、比較的近くに配置されている複数のセンサノードのすべてから応答情報を受信する必要がないことがある。従って、上記構成によれば、応答情報が無駄に送信されることを抑制することができる。
【0100】
なお、第1実施形態の変形例に係るノード装置において、情報送信要求が応答送信要求を構成し、通信状態情報が応答を構成していたが、応答送信要求は、通信状態情報以外の応答の送信を要求する情報であってもよい。
【0101】
例えば、ノード装置は、IEEE802.15.4シリーズにより定められた方式に従って無線通信を行う無線通信システムを構成していてもよい。この場合、ノード装置は、応答送信要求として、Beacon Requestメッセージを用い、且つ、応答情報として、Beaconメッセージを用い、且つ、後続情報として、Association Requestメッセージを用いるように構成されることが好適である。この場合、情報送信要求は、送信元のノードを特定するための情報を含んでいなくてもよい。
【0102】
即ち、この場合、応答送信要求を送信してきたノード装置(第1の送信元ノード)と異なるノード装置(第2の送信元ノード)により送信された後続情報が受信された場合であっても、ノード装置は、上記応答送信要求に対する応答情報の送信を中止するように構成される。この場合、第1の送信元ノードは、応答送信要求を送信した場合において、いずれの応答情報も受信しなかったとき、再度、応答送信要求を送信するように構成されることが好適である。
【0103】
また、第1実施形態の変形例に係るノード装置において、情報送信要求は、送信元のノードを特定するための情報を含んでいなくてもよい。
【0104】
また、第1実施形態の変形例に係るノード装置において、応答送信要求を送信してきたノード装置(第1の送信元ノード)と異なるノード装置(第2の送信元ノード)により送信された後続情報が受信された場合であっても、ノード装置は、上記応答送信要求に対する応答情報の送信を中止するように構成されていてもよい。この場合、第1の送信元ノードは、応答送信要求を送信した場合において、いずれの応答情報も受信しなかったとき、再度、応答送信要求を送信するように構成されることが好適である。
【0105】
また、第1実施形態の変形例に係るノード装置において、待機時間は、受信強度が小さくなるほど長くなる値に設定されていたが、受信強度が予め設定された範囲内にある場合に最短である値に設定され、且つ、受信強度が当該範囲外にある場合に、受信強度が小さくなるほど長くなる値に設定されてもよい。
【0106】
また、第1実施形態の変形例に係るノード装置において、待機時間は、受信強度に応じて定められていたが、受信強度以外の通信状態を表す情報に応じて定められていてもよい。
【0107】
また、第1実施形態の変形例に係るノード装置は、情報送信要求を受信した場合、センサネットワークシステムにおける、自ノードが有する役割に基づいて、待機時間を変更するように構成されていてもよい。例えば、シンクノードは、シンクノード以外のノードが用いる待機時間よりも短い時間を待機時間として用いるように構成されていてもよい。
【0108】
また、第1実施形態の変形例に係るノード装置は、情報送信要求を受信した場合、センサネットワークシステムにおける、送信元ノード(情報送信要求を送信してきたノード)が有する役割に基づいて、待機時間を変更するように構成されていてもよい。
【0109】
例えば、ネットワークトポロジが木構造を有する(即ち、ネットワークトポロジがツリートポロジである)場合、ノード装置は、少なくとも1つの子ノードを有するノード(クラスタヘッドノード)と、子ノードを1つも有しないノード(エンドノード)と、のそれぞれに対して異なる値を待機時間として決定することが好適である。
【0110】
例えば、ノード装置は、送信元ノードがクラスタヘッドノードである場合、送信元ノードがエンドノードである場合よりも短い時間を待機時間として決定するように構成されることが好適である。
【0111】
なお、センサネットワークシステムにおけるノードの役割は、IEEE802.15.4、又は、ZigBeeにおける、ルーター、コーディネーター、及び、エンドポイント等であってもよいし、ルーティングプロトコルにおけるMPR(Multi Point Relay)集合に参加しているか否か、であってもよい。
【0112】
なお、第1実施形態の変形例に係るノード装置は、応答送信要求を受信してから待機時間が経過するまでの間に、後続情報を受信していない場合であっても、予め設定された送信中止条件が成立したとき、応答情報の送信を中止するように構成されていてもよい。例えば、送信中止条件は、自ノードの通信状態よりも他ノードの通信状態の方が良好である、という条件である。この場合、ノード装置は、他ノードにより送信された応答情報に基づいて、送信中止条件が成立するか否かを判定する。なお、送信中止条件は、ルーティングプロトコル、又は、ネットワークトポロジの構築方法に応じて設定されていてもよい。
【0113】
また、第1実施形態の変形例に係るノード装置は、応答送信要求を送信してから、予め設定された回数だけ、当該応答送信要求に対する応答情報を受信するまでの間、後続情報の送信を待機するように構成されていてもよい。
【0114】
また、第1実施形態に係るノード装置は、センサノードを構成していたが、センサノード以外の無線通信装置を構成していてもよい。
【0115】
<第2実施形態>
次に、本発明の第2実施形態に係るノード装置について
図5を参照しながら説明する。
第2実施形態に係るノード装置1000は、無線通信を行うことにより、ネットワークトポロジにおけるノードを構成する装置である。
【0116】
更に、このノード装置1000は、
複数のノードにより受信されるように宛先が設定され且つ応答情報の送信を要求する応答送信要求を、他のノード装置である送信元ノードから受信する要求受信部(要求受信手段)1001と、
上記応答送信要求が受信された場合、当該応答送信要求に対する上記応答情報を送信する応答情報送信部(応答情報送信手段)1002と、
を備える。
【0117】
更に、応答情報送信部1002は、上記応答送信要求が受信され、その後、上記送信元ノードが上記応答情報を受信したときに送信する後続情報が受信された場合、当該応答送信要求に対する上記応答情報の送信を中止するように構成される。
【0118】
送信元ノードが応答送信要求を送信した場合、当該応答送信要求を受信したノード装置は、当該応答送信要求に対する応答情報を送信する。更に、送信元ノードは、この応答情報を受信した場合、後続情報を送信する。
【0119】
ところで、送信元ノードは、応答送信要求を送信した場合において、当該応答送信要求に対する応答情報をあるノード装置から受信したとき、当該応答送信要求に対する、他のノード装置からの応答情報を受信する必要がないことがある。従って、上記構成によれば、応答情報が無駄に送信されることを抑制することができる。
【0120】
また、応答送信要求と後続情報とは、同一の送信元ノードから送信される。従って、上記構成によれば、応答送信要求、及び、後続情報の両方が送信されているにもかかわらず、ノード装置が、応答送信要求、及び、後続情報の一方を受信できない事態が生じる可能性を低減することができる。この結果、応答情報が送信される回数を確実に低減することができる。
【0121】
また、上記構成によれば、送信元ノードが応答送信要求に対する応答情報を受信していない場合に、応答送信要求を受信したノード装置は、当該応答送信要求に対する応答情報の送信を中止しない。従って、送信元ノードは、応答送信要求に対する応答情報を確実に受信することができる。
【0122】
このように、上記構成によれば、ノード装置の密度が比較的高い場合であっても、通信負荷を十分に低減することができる。
【0123】
以上、上記実施形態を参照して本願発明を説明したが、本願発明は、上述した実施形態に限定されるものではない。本願発明の構成及び詳細に、本願発明の範囲内において当業者が理解し得る様々な変更をすることができる。
【0124】
なお、上記各実施形態においてノード装置の各機能は、回路等のハードウェアにより実現されていた。ところで、ノード装置は、処理装置と、プログラム(ソフトウェア)を記憶する記憶装置と、を備えるとともに、処理装置がそのプログラムを実行することにより、各機能を実現するように構成されていてもよい。この場合、プログラムは、コンピュータが読み取り可能な記録媒体に記憶されていてもよい。例えば、記録媒体は、フレキシブルディスク、光ディスク、光磁気ディスク、及び、半導体メモリ等の可搬性を有する媒体である。
【0125】
また、上記実施形態の他の変形例として、上述した実施形態及び変形例の任意の組み合わせが採用されてもよい。
【0126】
<付記>
上記実施形態の一部又は全部は、以下の付記のように記載され得るが、以下には限られない。
【0127】
(付記1)
無線通信を行うことにより、ネットワークトポロジにおけるノードを構成するノード装置であって、
複数のノードにより受信されるように宛先が設定され且つ応答情報の送信を要求する応答送信要求を、他のノード装置である送信元ノードから受信する要求受信手段と、
前記応答送信要求が受信された場合、当該応答送信要求に対する前記応答情報を送信する応答情報送信手段と、
を備え、
前記応答情報送信手段は、前記応答送信要求が受信され、その後、前記送信元ノードが前記応答情報を受信したときに送信する後続情報が受信された場合、当該応答送信要求に対する前記応答情報の送信を中止するように構成されたノード装置。
【0128】
送信元ノードが応答送信要求を送信した場合、当該応答送信要求を受信したノード装置は、当該応答送信要求に対する応答情報を送信する。更に、送信元ノードは、この応答情報を受信した場合、後続情報を送信する。
【0129】
ところで、送信元ノードは、応答送信要求を送信した場合において、当該応答送信要求に対する応答情報をあるノード装置から受信したとき、当該応答送信要求に対する、他のノード装置からの応答情報を受信する必要がないことがある。従って、上記構成によれば、応答情報が無駄に送信されることを抑制することができる。
【0130】
また、応答送信要求と後続情報とは、同一の送信元ノードから送信される。従って、上記構成によれば、応答送信要求、及び、後続情報の両方が送信されているにもかかわらず、ノード装置が、応答送信要求、及び、後続情報の一方を受信できない事態が生じる可能性を低減することができる。この結果、応答情報が送信される回数を確実に低減することができる。
【0131】
また、上記構成によれば、送信元ノードが応答送信要求に対する応答情報を受信していない場合に、応答送信要求を受信したノード装置は、当該応答送信要求に対する応答情報の送信を中止しない。従って、送信元ノードは、応答送信要求に対する応答情報を確実に受信することができる。
【0132】
このように、上記構成によれば、ノード装置の密度が比較的高い場合であっても、通信負荷を十分に低減することができる。
【0133】
(付記2)
付記1に記載のノード装置であって、
前記応答情報送信手段は、前記応答送信要求が受信されてから、所定の待機時間が経過するまで、当該応答送信要求に対する前記応答情報の送信を待機するとともに、当該応答情報の送信を待機している間に、前記送信元ノードにより送信された前記後続情報が受信された場合、当該応答情報の送信を中止するように構成されたノード装置。
【0134】
(付記3)
付記2に記載のノード装置であって、
前記応答情報送信手段は、前記ネットワークトポロジにおけるノードを構成する他のノード装置に対する値と異なる値を有するように前記待機時間が設定されるように構成されたノード装置。
【0135】
(付記4)
付記2又は付記3に記載のノード装置であって、
前記応答情報送信手段は、前記待機時間を、前記受信された応答送信要求としての無線信号の強度である受信強度に基づいて決定するように構成されたノード装置。
【0136】
(付記5)
付記4に記載のノード装置であって、
前記応答情報送信手段は、前記待機時間を、前記受信強度が小さくなるほど長くなる値に決定するように構成されたノード装置。
【0137】
これによれば、受信強度が大きいノード装置ほど優先して、応答情報を送信元ノードへ送信することができる。これにより、例えば、受信強度が大きいノード装置ほど優先して、ネットワークトポロジにおいて送信元ノードと接続することができる。この結果、無線信号における誤り率を低減することができるので、通信負荷が無駄に過大となることを回避することができる。
【0138】
(付記6)
付記1乃至付記5のいずれかに記載のノード装置であって、
前記応答情報は、自ノードの通信状態を表す情報であり且つ前記ネットワークトポロジを形成するための情報である通信状態情報であり、
前記後続情報は、前記送信元ノードと、当該送信元ノードにより受信された前記応答情報を送信したノード装置と、を接続するための情報である、ノード装置。
【0139】
(付記7)
付記1乃至付記6のいずれかに記載のノード装置であって、
物理量を検出し、当該検出された物理量を表すセンサデータを前記ネットワークトポロジにおいて接続された他のノード装置へ送信するように構成されたセンサノードであるノード装置。
【0140】
ところで、複数のセンサノードが比較的近くに配置されている場合、当該複数のセンサノードにより検出される物理量が比較的近い値である可能性が高い。従って、送信元ノードは、比較的近くに配置されている複数のセンサノードのすべてから応答情報を受信する必要がないことがある。従って、上記構成によれば、応答情報が無駄に送信されることを抑制することができる。
【0141】
(付記8)
無線通信を行うことにより、ネットワークトポロジにおけるノードを構成するノード装置に適用され、
複数のノードにより受信されるように宛先が設定され且つ応答情報の送信を要求する応答送信要求を、他のノード装置である送信元ノードから受信し、
前記応答送信要求が受信され、その後、前記送信元ノードが前記応答情報を受信したときに送信する後続情報が受信されなかった場合、当該応答送信要求に対する前記応答情報を送信し、一方、当該応答送信要求が受信され、その後、当該後続情報が受信された場合、当該応答送信要求に対する当該応答情報の送信を中止する、ノード装置制御方法。
【0142】
(付記9)
付記8に記載のノード装置制御方法であって、
前記応答送信要求が受信されてから、所定の待機時間が経過するまで、当該応答送信要求に対する前記応答情報の送信を待機するとともに、当該応答情報の送信を待機している間に、前記送信元ノードにより送信された前記後続情報が受信された場合、当該応答情報の送信を中止する、ノード装置制御方法。
【0143】
(付記10)
付記9に記載のノード装置制御方法であって、
前記ネットワークトポロジにおけるノードを構成する他のノード装置に対する値と異なる値を有するように前記待機時間が設定される、ノード装置制御方法。
【0144】
(付記11)
無線通信を行うことにより、ネットワークトポロジにおけるノードを構成するノード装置に、
複数のノードにより受信されるように宛先が設定され且つ応答情報の送信を要求する応答送信要求を、他のノード装置である送信元ノードから受信し、
前記応答送信要求が受信され、その後、前記送信元ノードが前記応答情報を受信したときに送信する後続情報が受信されなかった場合、当該応答送信要求に対する前記応答情報を送信し、一方、当該応答送信要求が受信され、その後、当該後続情報が受信された場合、当該応答送信要求に対する当該応答情報の送信を中止する、処理を実行させるためのノード装置制御プログラム。
【0145】
(付記12)
付記11に記載のノード装置制御プログラムであって、
前記処理は、
前記応答送信要求が受信されてから、所定の待機時間が経過するまで、当該応答送信要求に対する前記応答情報の送信を待機するとともに、当該応答情報の送信を待機している間に、前記送信元ノードにより送信された前記後続情報が受信された場合、当該応答情報の送信を中止するように構成されたノード装置制御プログラム。
【0146】
(付記13)
付記12に記載のノード装置制御プログラムであって、
前記処理は、
前記ネットワークトポロジにおけるノードを構成する他のノード装置に対する値と異なる値を有するように前記待機時間が設定されるように構成されたノード装置制御プログラム。