本発明の実施の形態について図面を参照しながら詳細に説明する。なお、図中同一または相当部分には同一符号を付してその説明は繰返さない。
図1は、この発明の実施の形態による無線センサーネットワークの概略図である。図1を参照して、この発明の実施の形態による無線センサーネットワーク10は、無線ノード1〜6と、サーバ7と、表示端末8とを備える。
無線ノード1〜6およびサーバ7は、無線通信空間に配置される。サーバ7は、パーソナルコンピュータ71と、無線ノード72とを含む。
無線ノード1〜6,72は、一定位置に固定され、または動物等の移動体に搭載される。
無線ノード1〜6,72は、例えば、IEEE802.15.4gに対応した920MHz帯で無線通信を行う。
無線ノード1〜6,72は、後述する方法によって、RPL:IPv6 Routing Protocol for Low−Power and Lossy Networks(RFC6550)を用いて各無線ノード1〜6からサーバ7(無線ノード72)までの経路を構築する。また、無線ノード1〜6,72は、後述する方法によって、RPLを用いて各無線ノード1〜6からサーバ7(無線ノード72)までの経路を維持する。
そして、無線ノード1〜6の各々は、センサーを備える場合、センサーによってセンサー値を検出し、その検出したセンサー値をサーバ7(無線ノード72)へ送信する。また、無線ノード1〜6の各々は、アクチュエータを備える場合、アクチュエータを制御するための制御指示をサーバ7から受信し、その受信した制御指示に従ってアクチュエータを動作させる。
この場合、無線ノード1〜6の各々は、後述する方法によって、他の無線ノードから受信したセンサー値を転送し、サーバ7または他の無線ノードから受信した制御指示を転送する。
無線ノード72は、無線ノード1〜6からセンサー値を受信し、その受信したセンサー値をパーソナルコンピュータ71へ出力する。
無線ノード72は、パーソナルコンピュータ71からアクチュエータを制御するための制御指示を受け、その受けた制御指示を無線ノード1〜6へ送信する。
パーソナルコンピュータ71は、無線ノード72からセンサー値を受け、その受けたセンサー値を記憶する。そして、パーソナルコンピュータ71は、その記憶したセンサー値をLAN(Local Area Network)またはWLAN(Wireless Local Area Network)を介して表示端末8へ送信して表示する。
パーソナルコンピュータ71は、アクチュエータを制御するための制御指示を表示端末8から受信し、その受信した制御指示を無線ノード72へ出力する。
表示端末8は、LANまたはWLANを介してセンサー値を受け、その受けたセンサー値を表示する。また、表示端末8は、アクチュエータの制御指示を外部から受け、その受けた制御指示をLANまたはWLANを介してパーソナルコンピュータ71へ送信する。
図2は、図1に示す無線ノード1の構成を示す概略図である。図2を参照して、無線ノード1は、ウェイクアップ信号受信機11と、無線通信モジュール12と、ホストシステム13と、タイマー14と、センサー15と、アクチュエータ16と、電源17とを含む。ホストシステム13は、ノード制御部131と、休止状態制御部132とを含む。
無線ノード1は、スリープ状態と、起動状態とを有する。スリープ状態および起動状態の定義については、後述する。
ウェイクアップ信号受信機11は、電源17から供給された電力によって駆動される。ウェイクアップ信号受信機11は、ウェイクアップ信号を受信し、その受信したウェイクアップ信号を復調してウェイクアップIDを抽出する。
ウェイクアップ信号受信機11は、無線ノード1のウェイクアップIDを予め保持している。そして、ウェイクアップ信号受信機11は、その抽出したウェイクアップIDが無線ノード1のウェイクアップIDに一致するか否かを判定する。
ウェイクアップ信号受信機11は、抽出したウェイクアップIDが無線ノード1のウェイクアップIDに一致すると判定したとき、起動信号DRVを生成し、その生成した起動信号DRVをホストシステム13へ出力する。
一方、ウェイクアップ信号受信機11は、抽出したウェイクアップIDが無線ノード1のウェイクアップIDに一致しないと判定したとき、抽出したウェイクアップIDを破棄し、ホストシステム13へ何も出力しない。
ウェイクアップ信号受信機11は、電源17からの電力の供給が停止されると、動作を停止する。
無線通信モジュール12は、電源17から供給された電力によって駆動される。無線通信モジュール12は、制御パケットまたはデータパケットを受信する。データパケットは、センサー値または制御指示を含む。無線通信モジュール12は、制御パケットまたはデータパケットを受信すると、その受信した制御パケットまたはデータパケットを復調してホストシステム13へ出力する。また、無線通信モジュール12は、ウェイクアップIDをホストシステム13から受け、その受けたウェイクアップIDを含むウェイクアップ信号を生成する。そして、無線通信モジュール12は、その生成したウェイクアップ信号を変調して送信する。更に、無線通信モジュール12は、制御パケットまたはデータパケットをホストシステム13から受け、その受けた制御パケットまたはデータパケットを変調して送信する。
ホストシステム13は、電源17から供給された電力によって駆動される。この場合、ホストシステム13は、起動状態において、例えば、5mWの電力W1で動作し、低消費電力状態において、例えば、5μWの電力W2で動作する。
ホストシステム13は、ESSIDまたはPANIDまたは送信先のMACアドレスを予め保持している。
ホストシステム13は、ウェイクアップ信号受信機11から起動信号DRVを受けたとき、またはタイマー14からの割込み制御によって起動状態へ移行する時刻になったとき、無線ノード1を起動状態へ移行させるための指示信号COM1を生成して電源17へ出力する。その後、ホストシステム13は、電源17から電力W1を受けると、起動状態へ移行する。
ホストシステム13のノード制御部131は、起動状態において、ESSIDまたはPANIDまたは送信先のMACアドレスのハッシュ値を演算して、他の無線ノードまたはサーバ7(=無線ノード72)をスリープ状態から起動状態へ移行させるためのウェイクアップIDを生成する。ノード制御部131は、その生成したウェイクアップIDを無線通信モジュール12へ出力する。その後、ノード制御部131は、制御パケットDIOを生成して無線通信モジュール12へ出力し、または無線通信モジュール12から制御パケットDIOを受ける。そして、ノード制御部131は、その受けた制御パケットDIOを処理し、その受けた制御パケットDIOに対する応答である制御パケットDAOを生成して無線通信モジュール12へ出力する。そうすると、ノード制御部131は、無線ノード1をスリープ状態へ移行させるための指示信号COM2を生成して電源17へ出力する。その後、ホストシステム13は、電源17から電力W2を受けるので、低消費電力状態へ移行する。
また、ノード制御部131は、起動状態において、センサー15からセンサー値を受けると、ESSIDまたはPANIDまたは送信先のMACアドレスのハッシュ値を演算して、他の無線ノードまたはサーバ7(=無線ノード72)をスリープ状態から起動状態へ移行させるためのウェイクアップIDを生成する。その後、ノード制御部131は、ウェイクアップIDを無線通信モジュール12へ出力する。そして、ノード制御部131は、センサー値を含むデータパケットを生成して無線通信モジュール12へ出力する。そうすると、ノード制御部131は、指示信号COM2を生成して電源17へ出力する。その後、ホストシステム13は、電源17から電力W2を受けるので、低消費電力状態へ移行する。
更に、ノード制御部131は、起動状態において、無線通信モジュール12からデータパケットを受ける。そして、ノード制御部131は、その受けたデータパケットを処理し、その処理したデータパケットを無線通信モジュール12へ出力する。そうすると、ノード制御部131は、指示信号COM2を電源17へ出力する。その後、ホストシステム13は、電源17から電力W2を受けるので、低消費電力状態へ移行する。
更に、ノード制御部131は、起動状態において、無線通信モジュール12から制御指示を受ける。そして、ノード制御部131は、その受けた制御指示に従ってアクチュエータ16を制御する。その後、ノード制御部131は、アクチュエータ制御応答を生成して無線通信モジュール12へ出力する。そうすると、ノード制御部131は、指示信号COM2を電源17へ出力する。その後、ホストシステム13は、電源17から電力W2を受けるので、低消費電力状態へ移行する。
休止状態制御部132は、経路情報とオンデマンド機能の有無とに基づいてスリープ状態を管理する。
タイマー14は、電源17から電力を常時受け、常時動作している。タイマー14は、無線ノード1の起動予告時刻が予め設定されている。そして、タイマー14は、時間を計測し、その計測した時間が起動予告時刻になると、起動予告時刻をノード制御部131へ出力する。
センサー15は、電源17から供給された電力によって駆動される。そして、センサー15は、センサー値を検出し、その検出したセンサー値をノード制御部131へ出力する。なお、センサー値は、例えば、温度、湿度、照度、電力、人感、CO2濃度および放射線量等である。
アクチュエータ16は、電源17から供給される電力によって駆動される。そして、アクチュエータ16は、ノード制御部131からの制御に従って動作を行う。
無線ノード1は、図2において、センサー15を削除した構成からなっていてもよく、アクチュエータ16を削除した構成からなっていてもよく、ウェイクアップ信号受信機11を削除した構成からなっていてもよい。即ち、無線ノード1は、ウェイクアップ信号受信機11、センサー15およびアクチュエータ16のうち、ウェイクアップ信号受信機11、またはセンサー15、またはウェイクアップ信号受信機11およびアクチュエータ16を少なくとも備える構成からなっていればよい。
なお、図1に示す無線ノード2〜6,72の各々も、図2において説明した無線ノード1と同じ構成からなる。
そして、無線センサーネットワーク10においては、ウェイクアップ信号受信機11、センサー15およびアクチュエータ16を備える無線ノード、ウェイクアップ信号受信機11、センサー15およびアクチュエータ16のうち、ウェイクアップ信号受信機11およびアクチュエータ16を備える無線ノード、ウェイクアップ信号受信機11、センサー15およびアクチュエータ16のうち、センサー15のみを備える無線ノードおよびウェイクアップ信号受信機11を備えない無線ノード等が混在していてもよい。
図3は、図1に示すサーバ7の構成を示す概略図である。図3を参照して、サーバ7は、パーソナルコンピュータ71と、無線ノード72と、RS−232C73,74と含む。
パーソナルコンピュータ71は、RS−232C73,74によって無線ノード72に接続される。パーソナルコンピュータ71は、RS−232C73を介して制御指示等を無線ノード72へ出力し、RS−232C74を介してセンサー値等を無線ノード72から受ける。なお、無線ノード72のホストシステム16がRS−232C73,74に接続される。
図4は、図3に示すパーソナルコンピュータ71の構成を示す概略図である。図4を参照して、パーソナルコンピュータ71は、Webサーバ711と、データベース712とを含む。
Webサーバ711は、RS−232C74を介して無線ノード72から送信元のアドレスとセンサー値とを受け、その受けた送信元のアドレスおよびセンサー値を相互に対応付けてデータベース712に格納する。
Webサーバ711は、LANまたはWLANを介して表示端末8からセンサー値の閲覧要求を受け、またはLANまたはWLANを介して表示端末8の表示画面に描画する。
データベース712は、センサー値を送信元のアドレスに対応付けて記憶する。
図5は、制御パケットDIOの構成図である。図5を参照して、制御パケットDIOは、rootのアドレスと、送信先と、送信元と、ID格納部と、Rankと、DTSNとを含む。
rootのアドレスは、サーバ7のアドレス、即ち、無線ノード72のアドレスからなる。
送信先は、制御パケットDIOの送信先の無線ノードのアドレスからなる。送信元は、制御パケットDIOを生成した無線ノードのアドレスからなる。ID格納部は、ESSIDまたはPANIDからなる。Rankは、256×n(nは、正の整数)からなり、サーバ7(=無線ノード72)からのホップ数が1ホップ増加するごとに“256”づつ増加する。そして、Rankは、数値が小さい程、rootに近いことを表わす。DTSNは、正の整数からなり、1つの無線ノード(=サーバ7の無線ノード72および無線ノード1〜6のいずれか)が新たな制御パケットDIOを生成するごとに“1”づつ増加する。DTSNは、各無線ノード1〜6が同じ無線ノードから制御パケットDIOを受信した場合に、制御パケットDAOを送信するか否かの判定基準になる。より具体的には、各無線ノード1〜6は、同じ無線ノードから制御パケットDIOを受信した場合に、その受信した制御パケットDIOのDTSNが、以前に受信した制御パケットDIOのDTSNよりも増加していると判定したとき、制御パケットDAOを送信し、受信した制御パケットDIOのDTSNが、以前に受信した制御パケットDIOのDTSNよりも増加していないと判定したとき、制御パケットDAOを送信しない。そして、DTSNが増加していることは、親ノードが変更されたことに相当する。
図6は、制御パケットDAOの構成図である。図6を参照して、制御パケットDAOは、親ノードのアドレスと、送信元と、DAOSequenceとを含む。
親ノードのアドレスは、制御パケットDAOを生成する無線ノードよりも1ホップだけroot側に存在し、制御パケットDAOを生成する無線ノードが無線通信可能な全ての無線ノードのアドレスからなる。
送信元は、制御パケットDAOを生成する無線ノードのアドレスからなる。DAOSequenceは、制御パケットDAOのシーケンス番号である。そして、DAOSequenceの初期値は、“240”である。DAOSequenceは、“0”〜“255”の範囲の整数からなる。DAOSequenceは、新たな制御パケットDAOが送信される毎にインクリメントされる。DAOSequenceが“128”よりも小さい場合、最大値は、“127”であり、DAOSequenceが“128”以上である場合、最大値は、“255”である。DAOSequenceは、“255”の次に、“0”になり、その後、“1”づつインクリメントされる。
制御パケットDAOが新しいか否かは、次の方法によって決定される。ここでは、比較する2つのDAOSequenceをそれぞれA,Bとする。
(i)Aが“128”〜“255”であり、Bが“0”〜“127”である場合
・(256+B−A)がSEQUENCE_WINDOW(=16)以下である場合、Aは、Bよりも小さい。
・(256+B−A)がSEQUENCE_WINDOW(=16)よりも大きい場合、Bは、Aよりも小さい。
そして、大きい方(AまたはB)を有する制御パケットDAOが新しいと判定される。
(ii)両方の値が“127”以下、または“128”以上である場合
・2つの値の差の絶対値がSEQUENCE_WINDOW(=16)以下である場合、比較結果がそのまま結果となる。
・2つの値の差の絶対値がSEQUENCE_WINDOW(=16)よりも大きい場合、同期されていないと判定され、2つのA,Bは、比較できないと判定される。
この場合、受信した制御パケットDAOが最新であると判定しないか、最後に受信したDAOSequenceを有する制御パケットDAOを最新であると判定してもよい。
図7は、ルーティングテーブルの構成図である。図7を参照して、ルーティングテーブルRTは、送信先と、次の無線ノードと、ホップ数と、Rankとを含む。送信先、次の無線ノード、ホップ数およびRankは、相互に対応付けられる。
送信先は、ウェイクアップ信号、制御パケットDIO,DAO,DISおよびデータパケット等の受信先の無線ノードのMACアドレスMACaddからなる。次の無線ノードは、送信先までの経路上においてルーティングテーブルRTを保持する無線ノードに送信先側で隣接する無線ノードのMACアドレスMACadd_NBからなる。
ホップ数は、ルーティングテーブルRTを保持する無線ノードから送信先の無線ノードまでのホップ数hからなる。Rankは、送信先の無線ノードのサーバ7に対する近さの程度を示し、r=256×n(=256,512,768,・・・)からなる。
図8は、図1に示す無線センサーネットワーク10における無線ノード1,2、サーバ7および表示端末8の配置状態を示す図である。
図8を参照して、無線ノード72,1,2は、それぞれ、電波範囲REG1〜REG3を有する。無線ノード72は、2つの電波範囲REG1,REG2が重なった領域に存在する。無線ノード1は、3つの電波範囲REG1〜REG3が重なった領域に存在する。無線ノード2は、2つの電波範囲REG2,REG3が重なった領域に存在する。
このように、自己の電波範囲がサーバ7まで届かない無線ノードが存在する状態において、各無線ノード1〜6からサーバ7までの経路の構築が行われる。
経路の構築方法について説明する。図9は、経路を構築するときの動作を説明するためのフローチャートである。図9を参照して、経路を構築する動作が開始されると、サーバ7の無線ノード72において、ノード制御部131は、タイマー14から起動予告時刻を受けると、指示信号COM1を生成して電源17へ出力する。そして、無線ノード72は、起動状態へ移行する。そうすると、ノード制御部131は、無線通信モジュール12が送信するウェイクアップ信号のウェイクアップIDとしてブロードキャストIDを選択する。そして、ノード制御部131は、その選択したブロードキャストIDを無線通信モジュール12へ出力する。なお、ブロードキャストIDは、電波範囲内の全ての無線ノードを起動状態へ移行させるためのIDである。
無線ノード72の無線通信モジュール12は、ブロードキャストIDを受けると、その受けたブロードキャストIDを含むウェイクアップ信号WuSを生成し、その生成したウェイクアップ信号WuSをブロードキャストする(ステップS1)。
無線ノード1のウェイクアップ信号受信機11は、ウェイアップ信号WuSを受信し、その受信したウェイクアップ信号WuSを復調してブロードキャストIDを取得する。そうすると、無線ノード1のウェイクアップ信号受信機11は、ブロードキャストIDが、予め保持したウェイクアップID(=ブロードキャストID)に一致すると判定し、起動信号DRVを生成してホストシステム13へ出力する。
無線ノード1のホストシステム13において、ノード制御部131は、起動信号DRVをウェイクアップ信号受信機11から受けると、指示信号COM1を生成して電源17へ出力する。無線ノード1の電源17は、指示信号COM1に応じて、ウェイクアップ信号受信機11への電力の供給を停止し、電力W1をホストシステム13へ供給し、駆動に必要な電力を無線通信モジュール12およびセンサー15等へ供給する。これによって、無線ノード1は、スリープ状態から起動状態へ移行する(ステップS2)。
その後、無線ノード1のノード制御部131は、無線ノード1のアドレスMACadd1を含む起動通知を生成し、その生成した起動通知を無線通信モジュール12へ出力する。そして、無線ノード1の無線通信モジュール12は、起動通知をノード制御部131から受け、その受けた起動通知をブロードキャストする。
無線ノード72において、無線通信モジュール12は、起動通知を受信する。そして、無線ノード72において、ホストシステム13のノード制御部131は、無線通信モジュール12から起動通知を受け、無線ノード1が起動したことを検知する。
そうすると、無線ノード72のノード制御部131は、サーバ7(=無線ノード72)のアドレスMACadd72からなるrootのアドレスと、無線ノード1のMACアドレスMACadd1からなる送信先と、サーバ7(=無線ノード72)のアドレスMACadd72からなる送信元と、ESSIDまたはPANIDからなるID格納部と、256からなるRankと、1からなるDTSNとを含むDIO1=[MACadd72/MACadd1/MACadd72/ESSID/256/1]を生成し、その生成したDIO1=[MACadd72/MACadd1/MACadd72/ESSID/256/1]を無線通信モジュール12へ出力する。無線ノード72の無線通信モジュール12は、DIO1=[MACadd72/MACadd1/MACadd72/ESSID/256/1]を変調し、その変調したDIO1=[MACadd72/MACadd1/MACadd72/ESSID/256/1]を送信する(ステップS3)。
その後、無線ノード72のノード制御部131は、指示信号COM2を生成して電源17へ出力する。無線ノード72の電源17は、指示信号COM2に応じて、電力W2をホストシステム13へ供給し、駆動に必要な電力をウェイクアップ信号受信機11へ供給し、無線通信モジュール12、センサー15およびアクチュエータ16への電力の供給を停止する。これによって、無線ノード72は、起動状態からスリープ状態へ移行する。
一方、無線ノード1の無線通信モジュール12は、DIO1=[MACadd72/MACadd1/MACadd72/ESSID/256/1]を受信し(ステップS4)、その受信したDIO1=[MACadd72/MACadd1/MACadd72/ESSID/256/1]をノード制御部131へ出力する。
無線ノード1のノード制御部131は、DIO1=[MACadd72/MACadd1/MACadd72/ESSID/256/1]を無線通信モジュール12から受け、その受けたDIO1=[MACadd72/MACadd1/MACadd72/ESSID/256/1]の先頭のアドレスMACadd72を参照して、rootがサーバ7(=無線ノード72)であることを検知する。また、無線ノード1のノード制御部131は、DIO1の2個目のアドレスMACadd1を参照して、DIO1の送信先が無線ノード1であることを検知する。更に、無線ノード1のノード制御部131は、DIO1の3個目のアドレスMACadd72を参照してDIO1の送信元がサーバ7(=無線ノード72)であることを検知する。更に、無線ノード1のノード制御部131は、“256”からなるRankおよび“1”からなるDTSNをDIO1から取り出して保持する。そして、無線ノード1のノード制御部131は、“256”からなるRankに基づいて、サーバ7から無線ノード1までのホップ数が“1”であることを検知する。“256”のRankは、Rankの最小値であり、無線ノード1は、その最小値である“256”からなるRankをサーバ7から直接受信したからである。また、無線ノード1のノード制御部131は、サーバ7が最小のRankを有するので、サーバ7が無線ノード1の親ノードであることを検知する。
そうすると、無線ノード1のノード制御部131は、ルーティングテーブルRTの送信先にMACadd72を格納し、次の無線ノードにMACadd72を格納し、ホップ数に“1”を格納し、Rankに“256”を格納する。そして、無線ノード1のノード制御部131は、“256”のRankに基づいて、無線ノード1のRankが“512”からなることを検知し、“512”のRankを保持する。
その後、無線ノード1のノード制御部131は、DIOを最初に受信したので、“1”からなるDTSNに基づいて、DTSNが増加したことを検知し、DAOを送信すると判定する。
そうすると、無線ノード1のノード制御部131は、無線通信モジュール12が送信するウェイクアップ信号のウェイクアップIDとしてユニキャストIDを生成する。なお、ユニキャストIDは、電波範囲内の特定の無線ノードを起動させるためのIDである。
DAOは、サーバ7(=無線ノード72)へ送信されるので、ノード制御部131は、DIO1に含まれるMACadd72に基づいて、上述した方法によってユニキャストIDを生成する。
そして、無線ノード1のノード制御部131は、その生成したユニキャストIDを無線通信モジュール12へ出力する。
無線ノード1の無線通信モジュール12は、ユニキャストIDを受け、その受けたユニキャストIDを含むウェイクアップ信号WuSを生成し、その生成したウェイクアップ信号WuSをユニキャストする(ステップS5)。
無線ノード72のウェイクアップ信号受信機11は、ウェイクアップ信号WuSを受信し、その受信したウェイクアップ信号WuSを復調してユニキャストIDを取得する。そして、無線ノード72のウェイクアップ信号受信機11は、ユニキャストIDが、予め保持したウェイクアップIDに一致すると判定し、起動信号DRVを生成してホストシステム13へ出力する。
無線ノード72のノード制御部131は、起動信号DRVをウェイクアップ信号受信機11から受けると、指示信号COM1を生成して電源17へ出力する。無線ノード72の電源17は、指示信号COM1に応じて、ウェイクアップ信号受信機11への電力の供給を停止し、電力W1をホストシステム13へ供給し、駆動に必要な電力を無線通信モジュール12およびセンサー15等へ供給する。これによって、無線ノード72は、スリープ状態から起動状態へ移行する(ステップS6)。
その後、無線ノード72は、無線ノード1と同じ方法によって起動通知を生成してブロードキャストする。
そうすると、無線ノード1のノード制御部131は、無線ノード72から送信された起動通知に応じて、MACアドレスMACadd72からなる親ノードのアドレスと、MACアドレスMACadd1からなる送信元と、“1”からなるDAOSequenceとを含むDAO1=[MACadd72/MACadd1/1]を生成して無線通信モジュール12へ出力する。
そして、無線ノード1の無線通信モジュール12は、DAO1=[MACadd72/MACadd1/1]を変調し、その変調したDAO1=[MACadd72/MACadd1/1]を送信する(ステップS7)。
その後、無線ノード1は、上述した無線ノード72と同じ動作によって起動状態からスリープ状態へ移行する。
無線ノード72の無線通信モジュール12は、DAO1=[MACadd72/MACadd1/1]を受信し(ステップS8)、その受信したDAO1=[MACadd72/MACadd1/1]をノード制御部131へ出力する。
無線ノード72のノード制御部131は、無線通信モジュール12からDAO1=[MACadd72/MACadd1/1]を受ける。そして、無線ノード72のノード制御部131は、DAO1の先頭のアドレスMACadd72および2番目のアドレスMACadd1を参照して、無線ノード1がサーバ7の子ノードであることを検知する。無線ノード72は、無線ノード1からDAO1を直接受信したからである。そうすると、無線ノード72のノード制御部131は、ルーティングテーブルRTの送信先および次の無線ノードにアドレスMACadd1を格納し、ホップ数に“1”を格納し、Rankに“512”を格納する。この場合、無線ノード72のノード制御部131は、DAO1を無線ノード1から直接受信したので、サーバ7から無線ノード1までのホップ数が“1”であることが解る。また、無線ノード72のノード制御部131は、サーバ7から無線ノード1までのホップ数が“1”であるので、無線ノード1のRankが“512”であることが解る。
その後、無線ノード1は、ステップS1におけるサーバ7(=無線ノード72)の動作と同じ動作を実行し、ウェイクアップ信号WuSをブロードキャストする(ステップS9)。
そして、無線ノード2は、ステップS2における無線ノード1の動作と同じ動作によってスリープ状態から起動状態へ移行し(ステップS10)、アドレスMACadd2を含む起動通知をブロードキャストする。
その後、無線ノード1は、起動通知を受信すると、ステップS3におけるサーバ7(=無線ノード72)の動作と同じ動作によってDIOを送信し(ステップS11)、起動状態からスリープ状態へ移行する。
無線ノード2は、DIOを受信し(ステップS12)、その受信したDIOに基づいて、上述した無線ノード1と同じ方法によってルーティングテーブルRTに新たな経路の経路情報を格納する。また、無線ノード2は、受信したDIOに含まれるRank(=512)に基づいて、自己のRankが“768”であることを検知し、“768”からなるRankを保持する。更に、無線ノード2は、受信したDIOに含まれるDTSNの数値が増加していることを検知し、DAOを送信すると判定する。
そうすると、無線ノード2は、ステップS5における無線ノード1の動作と同じ動作によってウェイクアップ信号WuSをユニキャストする(ステップS13)。
無線ノード1は、ステップS2における動作と同じ動作によって、スリープ状態から起動状態へ移行し(ステップS14)、無線ノード1のアドレスMACadd1を含む起動通知をブロードキャストする。
無線ノード2は、起動通知を受信すると、ステップS7における動作と同じ動作によってDAOを送信する(ステップS15)。その後、無線ノード2は、起動状態からスリープ状態へ移行する。
無線ノード1は、DAOを受信し(ステップS16)、DAOに含まれるDAOSequenceに基づいて、上述した方法によって、受信したDAOが最新であると判定し、DAOを転送すべきと判定する。
そして、無線ノード1は、ステップS5の動作と同じ動作によってウェイクアップ信号WuSを送信する(ステップS17)。
そして、サーバ7の無線ノード72は、ステップS6における動作と同じ動作によってスリープ状態から起動状態へ移行し(ステップS18)、無線ノード72のアドレスMACadd72を含む起動通知をブロードキャストする。
その後、無線ノード1は、起動通知を受信すると、ステップS6における動作と同じ動作によってDAOを送信する(ステップS19)。
サーバ7の無線ノード72は、DAOを受信し(ステップS20)、DAOの親ノードのアドレスがMACadd1からなり、送信元がMACアドレスMACadd2からなるので、ルーティングテーブルRTの送信先にMACアドレスMACadd2を格納し、次の無線ノードにMACアドレスMACadd1を格納し、ホップ数に“2”を格納し、Rankに“768”を格納してルーティングテーブルRTを更新する。なお、無線ノード72は、自己から無線ノード1までのホップ数が“1”であることが無線ノード1を送信先とする経路に対応してルーティングテーブルRTに既に格納されており、無線ノード2の親ノードが無線ノード1であるので、自己から無線ノード2までのホップ数が“2”であることを検知できる。また、無線ノード72は、無線ノード1のRankが“512”であることが無線ノード1を送信先とする経路に対応してルーティングテーブルRTに既に格納されており、無線ノード2の親ノードが無線ノード1であるので、無線ノード2のRankが“768”であることを検知できる。
以降、サーバ7(=無線ノード72)および無線ノード1〜6は、上述した動作を繰り返し実行し、サーバ7から各無線ノード1〜6までの経路を確立し、その確立した経路の経路情報を含むルーティングテーブルRTを作成する。そして、無線ノード72は、その作成したルーティングテーブルRTに基づいて、無線ノード1〜6,72のトポロジー状態を示すトポロジー図を作成して保持する。
なお、図9に示すステップS1,S5,S9,S13,S17においては、ウェイクアップ信号WuSを複数回連続して送信するようにしてもよい。これにより、無線ノード1〜6,72は、正確に、ウェイクアップ信号WuSを受信して起動状態へ移行できる。
図9に示すフローチャートにおいて、サーバ7の無線ノード72は、DIOを送信する場合、ウェイクアップ信号をブロードキャストして無線ノード1を起動状態へ移行させ、その後、DIOを送信する(ステップS1〜S3参照)。そして、無線ノード72は、DIOの送信を完了すると、スリープ状態へ移行する。
また、無線ノード1は、ウェイクアップ信号に応じて起動状態へ移行すると、DIOを受信し、DAOを送信する場合、ウェイクアップ信号をユニキャストして無線ノード72を起動状態へ移行させ、その後、DAOを送信する(ステップS4,S5,S7参照)。そして、無線ノード1は、DAOの送信を完了すると、スリープ状態へ移行する。
更に、無線ノード1は、DIOを送信する場合、ウェイクアップ信号をブロードキャストして無線ノード2を起動状態へ移行させ、その後、DIOを送信する(ステップS9〜S11参照)。そして、無線ノード1は、DIOの送信を完了すると、スリープ状態へ移行する。
更に、無線ノード2は、ウェイクアップ信号に応じて起動状態へ移行すると、DIOを受信し、DAOを送信する場合、ウェイクアップ信号をユニキャストして無線ノード1を起動状態へ移行させ、その後、DAOを送信する(ステップS12,S13,S15参照)。そして、無線ノード2は、DAOの送信を完了すると、スリープ状態へ移行する。
更に、無線ノード1は、ウェイクアップ信号に応じて起動状態へ移行すると、DAOを受信し、DAOを転送する場合、ウェイクアップ信号をユニキャストしてサーバ7の無線ノード72を起動状態へ移行させ、その後、DAOを送信する(ステップS16,S17,S19参照)。そして、無線ノード1は、DAOの送信を完了すると、スリープ状態へ移行する。
このように、無線ノード1,2,72の各々は、起動状態へ移行すると、必要な動作を行った後、スリープ状態へ移行する。そして、起動状態においては、無線ノード1は、無線ノード2から受信したDAOの転送が必要な場合、DAOの送信を完了した後にスリープ状態へ移行する。その結果、無線ノード2から送信されたDAOは、迅速にサーバ7へ届けられる。つまり、各無線ノード1,2,72は、必要な場合のみ起動状態へ移行して必要な動作を行った後、スリープ状態へ移行する。
従って、各無線ノード1〜6,72の消費電力を低減できる。
図10は、図9に示すフローチャートに従って構築されるトポロジーの例を示す図である。
図10を参照して、図9に示すステップS1〜S8が実行されることにより、無線ノード1がサーバ7に接続される(図10の(a)参照)。
その後、図9に示すステップS9〜S20が実行されることにより、無線ノード2が無線ノード1に接続される(図10の(b)参照)。
そして、図9に示すステップS1〜ステップS20が繰り返し実行されることにより、無線ノード3がサーバ7に接続され(図10の(c)参照)、無線ノード4が無線ノード3に接続され、無線ノード5が無線ノード3に接続され、無線ノード6が無線ノード4に接続される(図10の(d)参照)。
rootノードである無線ノード72がルーティングテーブルRTを作成する場合、無線ノード72は、無線ノード1〜6の各々が作成した制御パケットDAOを受信し、その制御パケットDAOには、制御パケットDAOを作成した無線ノード(=無線ノード1〜6のいずれか)の親ノードのアドレスが格納されている。従って、無線ノード72は、無線ノード1〜6の各々が作成した制御パケットDAOを順次受信することによって、図10の(d)に示すトポロジーを把握できる。
このように、無線センサーネットワーク10においては、ループ状の経路が存在せず、かつ、ツリー構造のトポロジーがRPLに従って構築される。
そして、サーバ7の無線ノード72がrootであり、無線ノード1,3の親ノードが無線ノード72である。また、無線ノード1は、無線ノード2の親ノードであり、無線ノード3は、無線ノード4,5の親ノードである。更に、無線ノード4は、無線ノード6の親ノードである。
一方、無線ノード1,3は、無線ノード72の子ノードであり、無線ノード4,5は、無線ノード3の子ノードであり、無線ノード6は、無線ノード4の子ノードである。
その結果、無線ノード72は、2つの無線ノード1,3を子ノードとして持ち、無線ノード1は、1つの無線ノード2を子ノードとして持ち、無線ノード3は、2つの無線ノード4,5を子ノードとして持ち、無線ノード4は、1つの無線ノード6を子ノードとして持つ。
このように、無線ノード1〜6,72は、RPLに従って、各無線ノードの親ノードが1個であるようにトポロジーを構築する。
また、同じ値からなるRankを含む複数のDIOを受信した場合、各無線ノードは、単位時間当たりに送受信されるDIOの送受信数である送受信確率を演算し、その演算した送受信確率が最大であるDIOを送信した無線ノードを親ノードとして選択する。
図9に示すフローチャートは、定期的(例えば、30分ごと)に実行され、または新たな無線ノードが無線センサーネットワーク10に参入したときに実行され、または各無線ノード1〜6の親ノードが変更または削除されたときに実行される。また、図9に示すフローチャートは、トポロジーが変化したときに実行される。
新たな無線ノードが無線センサーネットワーク10に参入した場合、新たに参入した無線ノードは、DIOの送信要求であるDISをブロードキャストする。そして、DISを受信した無線ノードがDIOを送信することによって図9に示すフローチャートが実行され、新たなトポロジーが構築される。
図11は、図7に示すルーティングテーブルRTの具体例を示す図である。なお、図11に示すルーティングテーブルRT−1は、図10の(d)に示す無線ノード4におけるルーティングテーブルRTである。
図11を参照して、無線ノード4のルーティングテーブルRT−1は、送信先として、無線ノード3,6,72を有する。送信先が無線ノード3(MACadd3)である場合、送信先に対応する「次の無線ノード」には、無線ノード3のMACアドレスMACadd3が格納される。そして、送信先に対応する「ホップ数」には、“1”が格納される。また、送信先に対応する「Rank」には、“512”が格納される。
無線ノード4は、無線ノード3で生成された制御パケットDIOを無線ノード3から受信し、その受信した制御パケットDIOに含まれる送信元が無線ノード3(=MACadd3)であることを検知することにより、無線ノード3が自己に隣接する無線ノードであること、および無線ノード3までのホップ数が“1”であることを検知する。また、無線ノード4は、無線ノード3から受信した制御パケットDIOに含まれる「Rank」に“512”が格納されていることを検知し、無線ノード3の「Rank」が“512”であることを検知する。従って、無線ノード4は、ルーティングテーブルRT−1の第1行目の経路情報を作成できる。
また、無線ノード4は、無線ノード3から受信した制御パケットDIOに含まれる「Rank」が“512”であり、制御パケットDIOに含まれる「rootのアドレス」がMACadd72であることを検知すると、自己の「Rank」が“768”(=512+256)であることを検知する。そして、無線ノード4は、自己の「Rank」が“768”であり、「Rank」は、1ホップごとに“256”づつ増加するので、“768”を“256”で除算し、その除算結果“3”から“1”を減算することにより、無線ノード72までのホップ数(=2)を取得する。なお、除算結果“3”から“1”を減算するのは、無線ノード72の「Rank」が“256”であるので、ホップ数を求めるには、「Rank」が何回増加したかを求める必要があるからである。また、「rootのアドレス」がMACadd72であるので、無線ノード4は、送信先としての無線ノード72に対応する「Rank」が“256”であることが解る。更に、無線ノード4は、制御パケットDIOを無線ノード3から受信し、無線ノード72までのホップ数が“2”であるので、送信先としての無線ノード72に対応する「次の無線ノード」が無線ノード3(=MACadd3)であることを検知する。従って、無線ノード4は、ルーティングテーブルRT−1の第2行目の経路情報を作成できる。
更に、無線ノード4は、無線ノード6から制御パケットDAOを受信し、その受信した制御パケットDAOに含まれる送信元(=MACadd6)に基づいて、無線ノード6が自己に隣接する子ノードであることを検知する。制御パケットDAOに含まれる「親ノードのアドレス」がMACadd4(=無線ノード4)からなり、制御パケットDAOは、制御パケットDIOの応答であり、かつ、上り方向(各無線ノード1〜6からサーバ7(=無線ノード72)への方向)で送信される制御パケットである。従って、無線ノード4は、無線ノード6が自己の子ノードであることを検知する。また、無線ノード4は、制御パケットDAOを無線ノード6から直接受信したので、無線ノード6までのホップ数が“1”であることを検知する。更に、無線ノード4は、自己の「Rank」が“768”であり、無線ノード6までのホップ数が“1”であるので、無線ノード6の「Rank」が“1024”であることを検知する。従って、無線ノード4は、ルーティングテーブルRT−1の第3行目の経路情報を作成できる。
なお、サーバ7(=無線ノード72)が制御指示を含むデータパケットを無線ノード6へ送信する場合、サーバ7(=無線ノード72)は、無線ノード72から無線ノード6までの経路情報(=無線ノード72→無線ノード1→無線ノード4→無線ノード6)と制御指示とを含むデータパケットを生成して送信する。従って、経路情報(=無線ノード72→無線ノード1→無線ノード4→無線ノード6)上の無線ノード1,4の各々は、経路情報(=無線ノード72→無線ノード1→無線ノード4→無線ノード6)を参照することによって、自己から2ホップ以上離れた無線ノードを送信先とする経路情報をルーティングテーブルRTに格納できる。
その結果、無線ノード1〜6の各々は、無線センサーネットワーク10を構成する全ての無線ノードを送信先とする経路情報をルーティングテーブルRTに格納できる。
図12は、ウェイクアップ信号受信機11の搭載の有無、オンデマンド機能の有無、トポロジー位置および給電可否の相互の関係を示す対応表を示す図である。
図12を参照して、対応表TBL1は、ウェイクアップ信号受信機11の搭載の有無と、オンデマンド機能の有無と、トポロジー位置と、給電可否とを含む。ウェイクアップ信号受信機11の搭載の有無、オンデマンド機能の有無、トポロジー位置および給電可否は、相互に対応付けられる。
なお、対応表TBL1において、トポロジー位置における“×”は、各無線ノード1〜6,72が中継ノードでないことを意味し、トポロジー位置における“○”は、各無線ノード1〜6,72が中継ノードであることを意味する。
また、給電可否は、ウェイクアップ信号受信機11への給電の可否を示す。
更に、オンデマンド機能とは、各無線ノード1〜6がサーバ7(=無線ノード72)からの要求に対して所望の動作を行う必要がある機能を言う。
ウェイクアップ信号受信機11が搭載されていない場合、オンデマンド機能の有無および各無線ノード1〜6,72が中継ノードであるか否かに拘わらず、ウェイクアップ信号受信機11へ、常時、給電しない。
また、ウェイクアップ信号受信機11が搭載されており、オンデマンド機能が無く、中継ノードでないとき、ウェイクアップ信号受信機11へ、常時、給電しない。
更に、ウェイクアップ信号受信機11が搭載されており、オンデマンド機能が無く、中継ノードである場合、各無線ノード1〜6,72が起動状態へ移行すると、ウェイクアップ信号受信機11へ給電せず、各無線ノード1〜6,72がスリープ状態へ移行すると、ウェイクアップ信号受信機11へ給電する。
更に、ウェイクアップ信号受信機11が搭載されており、オンデマンド機能が有り、中継ノードでない場合、各無線ノード1〜6,72が起動状態へ移行すると、ウェイクアップ信号受信機11へ給電せず、各無線ノード1〜6,72がスリープ状態へ移行すると、ウェイクアップ信号受信機11へ給電する。
更に、ウェイクアップ信号受信機11が搭載されており、オンデマンド機能が有り、中継ノードである場合、各無線ノード1〜6,72が起動状態へ移行すると、ウェイクアップ信号受信機11へ給電せず、各無線ノード1〜6,72がスリープ状態へ移行すると、ウェイクアップ信号受信機11へ給電する。
このように、ウェイクアップ信号受信機11が搭載されている場合、少なくとも、オンデマンド機能が有るか、中継ノードであれば、無線ノード1〜6,72の起動状態においてウェイクアップ信号受信機11へ給電せず、無線ノード1〜6,72のスリープ状態においてウェイクアップ信号受信機11へ給電する。
従って、オンデマンド機能の有無およびトポロジー位置に基づいてウェイクアップ信号受信機11への給電の可否を決定することによって、無線ノード1〜6,72単位で消費電力を低減できる。
各無線ノード1〜6,72の休止状態制御部132は、ルーティングテーブルRTおよび対応表TBL1を保持している。また、各無線ノード1〜6,72の休止状態制御部132は、自己が搭載された無線ノードがウェイクアップ信号受信機11を搭載しているか否かを示す情報が予め設定されている。更に、各無線ノード1〜6,72の休止状態制御部132は、自己が搭載された無線ノードがアクチュエータ16を搭載しているか否かを示す情報が予め設定されている。そして、各無線ノード1〜6,72の休止状態制御部132は、ルーティングテーブルRTを参照して、自己が搭載された無線ノードが中継ノードであるか否かを判定する。この場合、休止状態制御部132は、ルーティングテーブルRTのRankに、自己のRankよりも大きい値が格納されていれば、自己が搭載された無線ノードが中継ノードであると判定し、ルーティングテーブルRTのRankに、自己のRankよりも大きい値が格納されていなければ、自己が搭載された無線ノードが中継ノードでない(即ち、末端ノードである)と判定する。
また、各無線ノード1〜6,72の休止状態制御部132は、自己が搭載された無線ノードにアクチュエータ16が搭載されていれば、オンデマンド機能有りと判定し、自己が搭載された無線ノードにアクチュエータ16が搭載されていなければ、オンデマンド機能無しと判定する。
オンデマンド機能とは、上述したように、各無線ノード1〜6がサーバ7(=無線ノード72)からの要求に対して所望の動作を行う必要がある機能を言い、サーバ7は、アクチュエータ16を搭載した無線ノードへアクチュエータ16の制御要求を送信し、アクチュエータ16を搭載した無線ノードは、サーバ7(=無線ノード72)からの制御要求を受信してアクチュエータ16を制御する。その結果、アクチュエータ16を搭載した無線ノードは、サーバ7からの要求に対して所望の動作を行う必要がある機能を有する。従って、アクチュエータ16の搭載の有無によって、オンデマンド機能の有無を判定できる。
そして、各無線ノード1〜6,72の休止状態制御部132は、予め設定されたウェイクアップ信号受信機11を搭載しているか否かを示す情報によって、自己が搭載された無線ノードがウェイクアップ信号受信機11を搭載していないと判定したとき、対応表TBL1を参照して、ウェイクアップ信号受信機11へ常時給電しないと決定する。
また、各無線ノード1〜6,72の休止状態制御部132は、予め設定されたウェイクアップ信号受信機11を搭載しているか否かを示す情報によって、自己が搭載された無線ノードがウェイクアップ信号受信機11を搭載していると判定したとき、オンデマンド機能の有無と、自己が搭載された無線ノードが中継ノードであるか否かとを上述した方法によって更に判定し、その判定結果および対応表TBL1に基づいてウェイクアップ信号受信機11への給電の可否を決定する。
その後、各無線ノード1〜6,72の休止状態制御部132は、その決定結果を示す信号をノード制御部131へ出力する。
図13は、各無線ノード1〜6,72の状態を定義する状態図である。図13を参照して、状態図STE1は、ノードの状態と、ホストシステム13の状態と、無線通信モジュール12の状態と、ウェイクアップ信号受信機11の状態とを含む。
ノードの状態、ホストシステム13の状態、無線通信モジュール12の状態、およびウェイクアップ信号受信機11の状態は、相互に対応付けられる。
なお、図13において、“○”は、給電されていることを表し、“△”は、低消費電力状態を表し、“×”は、電力が供給されていないことを表す。
ノードの状態が起動状態である場合、ホストシステム13および無線通信モジュール12は、給電され、ウェイクアップ信号受信機11は、対応表TBL1により決定されるように給電されない。従って、ウェイクアップ信号受信機11、無線通信モジュール12およびホストシステム13の状態によって起動状態であるか否かを判定するとき、ホストシステム13および無線通信モジュール12が動作しており、ウェイクアップ信号受信機11が動作していない状態が起動状態である。
また、ノードの状態がスリープ状態である場合、ホストシステム13は、低消費電力状態であり、無線通信モジュール12は、給電されず、ウェイクアップ信号受信機11は、対応表TBL1により決定されるように給電される。従って、ウェイクアップ信号受信機11、無線通信モジュール12およびホストシステム13の状態によって起動状態であるか否かを判定するとき、ホストシステム13および無線通信モジュール12が動作しておらず、ウェイクアップ信号受信機11が動作している状態がスリープ状態である。
図14は、バッテリによる給電、バッテリ残量および給電可否の対応関係を示す対応表を示す図である。
図14を参照して、対応表TBL2は、バッテリによる給電と、バッテリ残量がしきい値を下回ることと、給電可否とを含む。バッテリによる給電、バッテリ残量がしきい値を下回ること、および給電可否は、相互に対応付けられる。
図14において、バッテリによる給電において、“×”は、電源17がバッテリによって構成されていないこと(即ち、電源17がコンセントに接続されていること)を表し、“○”は、電源17がバッテリによって構成されていることを表す。
また、バッテリ残量がしきい値を下回ることにおいて、“×”は、バッテリ残量がしきい値を下回っていないことを表し、“○”は、バッテリ残量がしきい値を下回っていることを表す。そして、しきい値は、例えば、バッテリの満充電量の25%である。
また、給電可否は、ウェイクアップ信号受信機11への給電可否を表す。
バッテリによって給電されていないとき、各無線ノード1〜6,72が起動状態へ移行すると、ウェイクアップ信号受信機11へ給電せず、各無線ノード1〜6,72がスリープ状態へ移行すると、ウェイクアップ信号受信機11へ給電する。
また、バッテリによって給電されており、かつ、バッテリ残量がしきい値を下回っていないとき、各無線ノード1〜6,72が起動状態へ移行すると、ウェイクアップ信号受信機11へ給電せず、各無線ノード1〜6,72がスリープ状態へ移行すると、ウェイクアップ信号受信機11へ給電する。
更に、バッテリによって給電されており、かつ、バッテリ残量がしきい値を下回るとき、ウェイクアップ信号受信機11へ常時給電しない。即ち、各無線ノード1〜6,72が起動状態およびスリープ状態のいずれかに拘わらず、ウェイクアップ信号受信機11へ給電しない。
このように、バッテリ残量によってウェイクアップ信号受信機11への給電可否を選択することによって、各無線ノード1〜6,72自体が消費する電力を低減し、各無線ノード1〜6,72の動作期間を長くできる。
バッテリ残量によってウェイクアップ信号受信機11への給電可否を選択する場合、各無線ノード1〜6,72の休止状態制御部132は、対応表TBL2およびしきい値を保持しているとともに、電源17がバッテリによって構成されているか否かを示す情報が予め設定されている。そして、各無線ノード1〜6,72の休止状態制御部132は、電源17からバッテリ残量を受ける。
従って、各無線ノード1〜6,72の休止状態制御部132は、電源17がバッテリによって構成されているか否かを示す情報、バッテリ残量およびしきい値に基づいて、対応表TBL2に従って、ウェイクアップ信号受信機11への給電可否を決定し、その決定した給電可否の結果を示す信号をノード制御部131へ出力する。
図15は、センサー搭載有無、常時監視タイプおよび給電可否の対応関係を示す対応表を示す図である。
図15を参照して、対応表TBL3は、センサー搭載有無と、常時監視タイプと、給電可否とを含む。センサー搭載有無、常時監視タイプ、および給電可否は、相互に対応付けられる。
センサー搭載有無において、“×”は、センサーを搭載していないことを表し、“○”は、センサーを搭載していることを表す。
また、常時監視タイプとは、常時電力を必要とするタイプであることを表し、常時監視タイプにおいて、“×”は、通信時に給電すれば良いタイプのセンサーであることを表し、“○”は、窓の開閉センサー等の常時給電を必要とするタイプのセンサーを表す。
更に、給電可否は、センサーへの給電可否を表す。
センサーが搭載されていない場合、センサーへ常時給電しない。
また、センサー15が搭載されており、かつ、センサー15が常時監視タイプのセンサーでないとき、各無線ノード1〜6,72が起動状態へ移行すると、センサー15へ給電し、各無線ノード1〜6,72がスリープ状態へ移行すると、センサー15へ給電しない。
更に、センサー15が搭載されており、センサー15が常時監視タイプのセンサーであるとき、センサー15へ常時給電する。即ち、各無線ノード1〜6,72が起動状態およびスリープ状態のいずれであるかに拘わらず、センサー15へ給電する。
このように、センサー15の搭載有無およびセンサー15の種別によってセンサー15への給電可否を選択することによって、無線ノード1〜6,72の全体が消費する電力を低減できる。
センサー15への給電可否を選択する場合、各無線ノード1〜6,72の休止状態制御部132は、対応表TBL3を保持しており、センサーの搭載の有無およびセンサーの種別が予め設定されている。
従って、各無線ノード1〜6,72の休止状態制御部132は、センサーの搭載の有無、およびセンサーの種別に基づいて、対応表TBL3に従って、センサー15への給電可否を決定し、その決定した給電可否の結果を示す信号をノード制御部131へ出力する。
図16は、アクチュエータ搭載有無、常時制御タイプおよび給電可否の対応関係を示す対応表を示す図である。
図16を参照して、対応表TBL4は、アクチュエータ搭載有無と、常時制御タイプと、給電可否とを含む。アクチュエータ搭載有無、常時制御タイプ、および給電可否は、相互に対応付けられる。
アクチュエータ搭載有無において、“×”は、アクチュエータを搭載していないことを表し、“○”は、アクチュエータを搭載していることを表す。
また、常時制御タイプとは、常時電力を必要とするタイプであることを表し、常時制御タイプにおいて、“×”は、接点を制御するような通信時に給電し、切替えるタイプのアクチュエータであることを表し、“○”は、モータ等の常時給電を必要とするタイプのアクチュエータを表す。
更に、給電可否は、アクチュエータへの給電可否を表す。
アクチュエータが搭載されていない場合、アクチュエータへ常時給電しない。
また、アクチュエータ16が搭載されており、かつ、アクチュエータ16が常時制御タイプのアクチュエータでないとき、各無線ノード1〜6,72が起動状態へ移行すると、アクチュエータ16へ給電し、各無線ノード1〜6,72がスリープ状態へ移行すると、アクチュエータ16へ給電しない。
更に、アクチュエータ16が搭載されており、アクチュエータ16が常時制御タイプのアクチュエータであるとき、アクチュエータ16へ常時給電する。即ち、各無線ノード1〜6,72が起動状態およびスリープ状態のいずれであるかに拘わらず、アクチュエータ16へ給電する。
このように、アクチュエータ16の搭載有無およびアクチュエータ16の種別によってアクチュエータ16への給電可否を選択することによって、無線ノード1〜6,72の全体が消費する電力を低減できる。
アクチュエータ16への給電可否を選択する場合、各無線ノード1〜6,72の休止状態制御部132は、対応表TBL4を保持しており、アクチュエータ16の搭載の有無およびアクチュエータ16の種別が予め設定されている。
従って、各無線ノード1〜6,72の休止状態制御部132は、アクチュエータの搭載の有無、およびアクチュエータの種別に基づいて、対応表TBL4に従って、アクチュエータ16への給電可否を決定し、その決定した給電可否の結果を示す信号をノード制御部131へ出力する。
図17は、各無線ノード1〜6,72の状態を定義する別の状態図である。図17を参照して、状態図STE2は、ノードの状態と、ホストシステム13の状態と、無線通信モジュール12の状態と、センサー15の状態と、アクチュエータ16の状態と、ウェイクアップ信号受信機11の状態とを含む。
ノードの状態、ホストシステム13の状態、無線通信モジュール12の状態、センサー15の状態、アクチュエータ16の状態およびウェイクアップ信号受信機11の状態は、相互に対応付けられる。
なお、図17においても、“○”は、給電されていることを表し、“△”は、低消費電力状態を表し、“×”は、電力が供給されていないことを表す。
ノードの状態が起動状態である場合、ホストシステム13および無線通信モジュール12は、給電され、センサー15は、対応表TBL3によって決定されるように給電され、アクチュエータ16は、対応表TBL4によって決定されるように給電され、ウェイクアップ信号受信機11は、対応表TBL1,2により決定されるように給電されない。従って、ウェイクアップ信号受信機11、無線通信モジュール12、ホストシステム13、センサー15およびアクチュエータ16の状態によって各無線ノード1〜6,72が起動状態であるかスリープ状態であるかを判定する場合、ホストシステム13および無線通信モジュール12が動作しており、センサー15およびアクチュエータ16が動作しており、ウェイクアップ信号受信機11が動作していない状態が起動状態である。
また、ノードの状態がスリープ状態である場合、ホストシステム13は、低消費電力状態であり、無線通信モジュール12は、給電されず、センサー15は、対応表TBL3によって決定されるように給電されず、アクチュエータ16は、対応表TBL4によって決定されるように給電されず、ウェイクアップ信号受信機11は、対応表TBL1,2により決定されるように給電される。従って、ウェイクアップ信号受信機11、無線通信モジュール12、ホストシステム13、センサー15およびアクチュエータ16の状態によって各無線ノード1〜6,72が起動状態であるかスリープ状態であるかを判定する場合、無線通信モジュール12、センサー15およびアクチュエータ16が動作しておらず、ホストシステム13が低消費電力状態であり、ウェイクアップ信号受信機11が動作している状態がスリープ状態である。
また、ウェイクアップ信号受信機11、無線通信モジュール12、ホストシステム13およびアクチュエータ16の状態によって各無線ノード1〜6,72が起動状態であるかスリープ状態であるかを判定する場合、上述した起動状態であるかスリープ状態であるかの判定におけるセンサー15の動作を削除すればよい。
更に、ウェイクアップ信号受信機11、無線通信モジュール12、ホストシステム13およびセンサー15の状態によって各無線ノード1〜6,72が起動状態であるかスリープ状態であるかを判定する場合、上述した起動状態であるかスリープ状態であるかの判定におけるアクチュエータ16の動作を削除すればよい。
更に、無線通信モジュール12、ホストシステム13およびセンサー15の状態によって各無線ノード1〜6,72が起動状態であるかスリープ状態であるかを判定する場合、上述した起動状態であるかスリープ状態であるかの判定におけるウェイクアップ信号受信機11およびアクチュエータ16の動作を削除すればよい。
なお、タイマー14および電源17は、スリープ状態および起動状態とは無関係であり、常時、動作している。
図18は、ウェイクアップ信号受信機への給電動作を説明するためのフローチャートである。
図18を参照して、一連の動作が開始されると、各無線ノード1〜6,72の休止状態制御部132は、予め設定されたウェイクアップ信号受信機11が搭載されているか否かを示す情報に基づいて、ウェイクアップ信号受信機11が搭載されているか否かを判定する(ステップS21)。
ステップS21において、ウェイクアップ信号受信機11が搭載されていると判定されたとき、各無線ノード1〜6,72の休止状態制御部132は、上述した方法によって、自己が搭載された無線ノードがオンデマンド機能を有するか否かを更に判定する(ステップS22)。
ステップS22において、自己が搭載された無線ノードがオンデマンド機能を有しないと判定されたとき、各無線ノード1〜6,72の休止状態制御部132は、上述した方法によって、自己が搭載された無線ノードが中継ノードであるか否かを更に判定する(ステップS23)。
そして、ステップS22において、自己が搭載された無線ノードがオンデマンド機能を有すると判定されたとき、またはステップS23において、自己が搭載された無線ノードが中継ノードであると判定されたとき、各無線ノード1〜6,72の休止状態制御部132は、自己が搭載された無線ノードが起動状態へ移行したか否かを更に判定する(ステップS24)。この場合、各無線ノード1〜6,72の休止状態制御部132は、自己に給電されている電力が低消費電力状態において給電されている電力よりも多い場合、起動状態へ移行したと判定し、自己に給電されている電力が低消費電力状態において給電されている電力であるとき、起動状態でない(=スリープ状態である)と判定する。
ステップS24において、自己が搭載された無線ノードが起動状態へ移行したと判定されたとき、各無線ノード1〜6,72の休止状態制御部132は、対応表TBL1を参照して、ウェイクアップ信号受信機11へ給電しないと決定する(ステップS25)。
そして、各無線ノード1〜6,72の休止状態制御部132は、ウェイクアップ信号受信機11へ給電しないことを示す信号PW_WU_NOを生成してノード制御部131へ出力する。
各無線ノード1〜6,72のノード制御部131は、休止状態制御部132からの信号PW_WU_NOに応じて、ウェイクアップ信号受信機11への給電を停止することを指示する指示信号COM_WU_NOを生成して電源17へ出力する。そして、各無線ノード1〜6,72の電源17は、指示信号COM_WU_NOに応じて、ウェイクアップ信号受信機11への給電を停止する(ステップS26)。
一方、ステップS24において、起動状態へ移行していないと判定されたとき、各無線ノード1〜6,72の休止状態制御部132は、対応表TBL1を参照して、ウェイクアップ信号受信機11へ給電すると決定する(ステップS27)。
そして、各無線ノード1〜6,72の休止状態制御部132は、ウェイクアップ信号受信機11へ給電することを示す信号PW_WU_SPLを生成してノード制御部131へ出力する。
各無線ノード1〜6,72のノード制御部131は、休止状態制御部132からの信号PW_WU_SPLに応じて、ウェイクアップ信号受信機11へ給電することを指示する指示信号COM_WU_SPLを生成して電源17へ出力する。そして、各無線ノード1〜6,72の電源17は、指示信号COM_WU_SPLに応じて、ウェイクアップ信号受信機11へ給電する(ステップS28)。
一方、ステップS21において、ウェイクアップ信号受信機11を搭載していないと判定されたとき、またはステップS23において、自己が搭載された無線ノードが中継ノードでないと判定されたとき、各無線ノード1〜6,72の休止状態制御部132は、対応表TBL1を参照して、ウェイクアップ信号受信機11へ常時給電しないと決定する(ステップS29)。
そして、各無線ノード1〜6,72の休止状態制御部132は、ウェイクアップ信号受信機11へ常時給電しないことを示す信号PW_WU_NO_alwを生成してノード制御部131へ出力する。
各無線ノード1〜6,72のノード制御部131は、休止状態制御部132からの信号PW_WU_NO_alwに応じて、ウェイクアップ信号受信機11へ常時給電しないことを指示する指示信号COM_WU_NO_alwを生成して電源17へ出力する。そして、各無線ノード1〜6,72の電源17は、指示信号COM_WU_NO_alwに応じて、ウェイクアップ信号受信機11への給電を常時停止する(ステップS30)。
そして、ステップS26,S28,S30のいずれかの後、一連の動作が終了する。
なお、ステップS22の“YES”からステップS24へ移行する経路は、オンデマンド機能を有し、かつ、中継ノードである場合と、オンデマンド機能を有し、かつ、中継ノードでない場合との両方を含む。対応表TBL1においては、オンデマンド機能を有し、かつ、中継ノードである場合、およびオンデマンド機能を有し、かつ、中継ノードでない場合、給電可否の内容が同じであるからである。
図19は、ウェイクアップ信号受信機への給電動作を説明するための別のフローチャートである。
図19に示すフローチャートは、図18に示すフローチャートのステップS21〜ステップS23をステップS31,S32に代えたものであり、その他は、図18に示すフローチャートと同じである。
図19を参照して、一連の動作が開始されると、各無線ノード1〜6,72の休止状態制御部132は、上述した方法によって、バッテリによる給電であるか否かを判定する(ステップS31)。
ステップS31において、バッテリによる給電であると判定されたとき、各無線ノード1〜6,72の休止状態制御部132は、バッテリ残量がしきい値を下回るか否かを更に判定する(ステップS32)。
ステップS32において、バッテリ残量がしきい値を下回らないと判定されたとき、またはステップS31において、バッテリによる給電でないと判定されたとき、上述したステップS24〜ステップS28が実行される。
一方、ステップS32において、バッテリ残量がしきい値を下回ると判定されたとき、上述したステップS29,S30が順次実行される。
そして、ステップS26,S28,S30のいずれかの後、一連の動作が終了する。
なお、ステップS25においては、各無線ノード1〜6,72の休止状態制御部132は、対応表TBL2を参照して、ウェイクアップ信号受信機11へ給電しないと決定する。
また、ステップS27においては、各無線ノード1〜6,72の休止状態制御部132は、対応表TBL2を参照して、ウェイクアップ信号受信機11へ給電すると決定する。
更に、ステップS29においては、各無線ノード1〜6,72の休止状態制御部132は、対応表TBL2を参照して、ウェイクアップ信号受信機11へ常時給電しないと決定する。
図20は、ウェイクアップ信号受信機への給電動作を説明するための更に別のフローチャートである。
図20に示すフローチャートは、図18に示すフローチャートのステップS22,S23とステップS24との間に図19に示すフローチャートのステップS31,S32を追加したものであり、その他は、図18に示すフローチャートと同じである。
図20を参照して、ステップS22において、オンデマンド機能を有すると判定されたとき、上述したステップS31,S32が順次実行される。
このように、各無線ノード1〜6,72の休止状態制御部132は、図20に示すフローチャートに従って、ウェイクアップ信号受信機11の搭載の有無、オンデマンド機能の有無、中継ノードか否か、およびバッテリ残量がしきい値を下回るか否かによってウェイクアップ信号受信機11への給電可否を決定する。
なお、ステップS25においては、各無線ノード1〜6,72の休止状態制御部132は、対応表TBL1または対応表TBL2を参照して、ウェイクアップ信号受信機11へ給電しないと決定する。
また、ステップS27においては、各無線ノード1〜6,72の休止状態制御部132は、対応表TBL1または対応表TBL2を参照して、ウェイクアップ信号受信機11へ給電すると決定する。
更に、ステップS29においては、各無線ノード1〜6,72の休止状態制御部132は、対応表TBL1または対応表TBL2を参照して、ウェイクアップ信号受信機11へ常時給電しないと決定する。
なお、図18から図20のいずれかに示すフローチャートは、定期的に実行される。例えば、図18から図20のいずれかに示すフローチャートは、RPLの制御パケットDIOの送信間隔ごとに実行され、より具体的には、5分または15分ごとに実行される。
図21は、センサーへの給電動作を説明するためのフローチャートである。図21を参照して、一連の動作が開始されると、各無線ノード1〜6,72の休止状態制御部132は、上述した方法によって、センサーを搭載しているか否かを判定する(ステップS41)。
ステップS41において、センサーを搭載していると判定されると、各無線ノード1〜6,72の休止状態制御部132は、上述した方法によって、センサーの種別が常時監視タイプであるか否かを更に判定する(ステップS42)。
ステップS42において、センサーの種別が常時監視タイプでないと判定されたとき、各無線ノード1〜6,72の休止状態制御部132は、上述した方法によって、自己が搭載された無線ノードが起動状態へ移行したか否かを更に判定する(ステップS43)。
ステップS43において、自己が搭載された無線ノードが起動状態へ移行したと判定されたとき、各無線ノード1〜6,72の休止状態制御部132は、対応表TBL3を参照して、センサー15へ給電すると決定する(ステップS44)。そして、各無線ノード1〜6,72の休止状態制御部132は、センサー15へ給電することを示す信号PW_SN_SPLを生成してノード制御部131へ出力する。
各無線ノード1〜6,72のノード制御部131は、休止状態制御部132からの信号PW_SN_SPLに応じて、センサー15へ給電することを指示する指示信号COM_SN_SPLを生成して電源17へ出力する。そして、各無線ノード1〜6,72の電源17は、指示信号COM_SN_SPLに応じて、センサー15へ給電する(ステップS45)。
一方、ステップS43において、自己が搭載された無線ノードが起動状態へ移行していないと判定されたとき、各無線ノード1〜6,72の休止状態制御部132は、対応表TBL3を参照して、センサー15へ給電しないと決定する(ステップS46)。そして、各無線ノード1〜6,72の休止状態制御部132は、センサー15へ給電しないことを示す信号PW_SN_NOを生成してノード制御部131へ出力する。
各無線ノード1〜6,72のノード制御部131は、休止状態制御部132からの信号PW_SN_NOに応じて、センサー15へ給電しないことを指示する指示信号COM_SN_NOを生成して電源17へ出力する。そして、各無線ノード1〜6,72の電源17は、指示信号COM_SN_NOに応じて、センサー15への給電を停止する(ステップS47)。
一方、ステップS42において、センサーの種別が常時監視タイプであると判定されたとき、各無線ノード1〜6,72の休止状態制御部132は、対応表TBL3を参照して、センサー15へ常時給電すると決定する(ステップS48)。そして、各無線ノード1〜6,72の休止状態制御部132は、センサー15へ常時給電することを示す信号PW_SN_SPL_alwを生成してノード制御部131へ出力する。
各無線ノード1〜6,72のノード制御部131は、休止状態制御部132からの信号PW_SN_SPL_alwに応じて、センサー15へ常時給電することを指示する指示信号COM_SN_SPL_alwを生成して電源17へ出力する。そして、各無線ノード1〜6,72の電源17は、指示信号COM_SN_SPL_alwに応じて、センサー15へ常時給電する(ステップS49)。
一方、ステップS41において、センサーを搭載していないと判定されたとき、各無線ノード1〜6,72の休止状態制御部132は、対応表TBL3を参照して、センサー15へ常時給電しないと決定する(ステップS50)。そして、各無線ノード1〜6,72の休止状態制御部132は、センサー15へ常時給電しないことを示す信号PW_SN_NO_alwを生成してノード制御部131へ出力する。
各無線ノード1〜6,72のノード制御部131は、休止状態制御部132からの信号PW_SN_NO_alwに応じて、センサー15へ常時給電しないことを指示する指示信号COM_SN_NO_alwを生成して電源17へ出力する。そして、各無線ノード1〜6,72の電源17は、指示信号COM_SN_NO_alwに応じて、センサー15への給電を常時停止する(ステップS51)。
そして、ステップS45,S47,S49,S51のいずれかの後、一連の動作が終了する。
各無線ノード1〜6,72の休止状態制御部132は、ウェイクアップ信号受信機11、センサー15およびアクチュエータ16のうち、センサー15のみを備える場合、またはウェイクアップ信号受信機11およびセンサー15を備える場合、図21に示すフローチャートに従ってセンサー15へ給電し、またはセンサー15への給電を停止する。
また、各無線ノード1〜6,72の休止状態制御部132は、ウェイクアップ信号受信機11、センサー15およびアクチュエータ16のうち、ウェイクアップ信号受信機11およびセンサー15を備える場合において、ウェイクアップ信号受信機11およびセンサー15への給電または給電停止を行うとき、図18から図20のいずれかに示すフローチャートと、図21に示すフローチャートとを並行して実行し、ウェイクアップ信号受信機11およびセンサー15へ給電し、またはウェイクアップ信号受信機11およびセンサー15への給電を停止する。
図22は、アクチュエータへの給電動作を説明するためのフローチャートである。図22を参照して、一連の動作が開始されると、各無線ノード1〜6,72の休止状態制御部132は、上述した方法によって、アクチュエータを搭載しているか否かを判定する(ステップS61)。
ステップS61において、アクチュエータを搭載していると判定されたとき、各無線ノード1〜6,72の休止状態制御部132は、上述した方法によって、アクチュエータの種別が常時制御タイプであるか否かを更に判定する(ステップS62)。
ステップS62において、アクチュエータの種別が常時制御タイプでないと判定されたとき、各無線ノード1〜6,72の休止状態制御部132は、上述した方法によって、自己が搭載された無線ノードが起動状態へ移行したか否かを更に判定する(ステップS63)。
ステップS63において、自己が搭載された無線ノードが起動状態へ移行したと判定されたとき、各無線ノード1〜6,72の休止状態制御部132は、対応表TBL4を参照して、アクチュエータ16へ給電すると決定する(ステップS64)。そして、各無線ノード1〜6,72の休止状態制御部132は、アクチュエータ16へ給電することを示す信号PW_ACT_SPLを生成してノード制御部131へ出力する。
各無線ノード1〜6,72のノード制御部131は、休止状態制御部132からの信号PW_ACT_SPLに応じて、アクチュエータ16へ給電することを指示する指示信号COM_ACT_SPLを生成して電源17へ出力する。そして、各無線ノード1〜6,72の電源17は、指示信号COM_ACT_SPLに応じて、アクチュエータ16へ給電する(ステップS65)。
一方、ステップS63において、自己が搭載された無線ノードが起動状態へ移行していないと判定されたとき、各無線ノード1〜6,72の休止状態制御部132は、対応表TBL4を参照して、アクチュエータ16へ給電しないと決定する(ステップS66)。そして、各無線ノード1〜6,72の休止状態制御部132は、アクチュエータ16へ給電しないことを示す信号PW_ACT_NOを生成してノード制御部131へ出力する。
各無線ノード1〜6,72のノード制御部131は、休止状態制御部132からの信号PW_ACT_NOに応じて、アクチュエータ16へ給電しないことを指示する指示信号COM_ACT_NOを生成して電源17へ出力する。そして、各無線ノード1〜6,72の電源17は、指示信号COM_ACT_NOに応じて、アクチュエータ16への給電を停止する(ステップS67)。
一方、ステップS62において、アクチュエータの種別が常時制御タイプであると判定されたとき、各無線ノード1〜6,72の休止状態制御部132は、対応表TBL4を参照して、アクチュエータ16へ常時給電すると決定する(ステップS68)。そして、各無線ノード1〜6,72の休止状態制御部132は、アクチュエータ16へ常時給電することを示す信号PW_ACT_SPL_alwを生成してノード制御部131へ出力する。
各無線ノード1〜6,72のノード制御部131は、休止状態制御部132からの信号PW_ACT_SPL_alwに応じて、アクチュエータ16へ常時給電することを指示する指示信号COM_ACT_SPL_alwを生成して電源17へ出力する。そして、各無線ノード1〜6,72の電源17は、指示信号COM_ACT_SPL_alwに応じて、アクチュエータ16へ常時給電する(ステップS69)。
一方、ステップS61において、アクチュエータを搭載していないと判定されたとき、各無線ノード1〜6,72の休止状態制御部132は、対応表TBL4を参照して、アクチュエータ16へ常時給電しないと決定する(ステップS70)。そして、各無線ノード1〜6,72の休止状態制御部132は、アクチュエータ16へ常時給電しないことを示す信号PW_ACT_NO_alwを生成してノード制御部131へ出力する。
各無線ノード1〜6,72のノード制御部131は、休止状態制御部132からの信号PW_ACT_NO_alwに応じて、アクチュエータ16へ常時給電しないことを指示する指示信号COM_ACT_NO_alwを生成して電源17へ出力する。そして、各無線ノード1〜6,72の電源17は、指示信号COM_ACT_NO_alwに応じて、アクチュエータ16への給電を常時停止する(ステップS71)。
そして、ステップS65,S67,S69,S71のいずれかの後、一連の動作が終了する。
各無線ノード1〜6,72の休止状態制御部132は、ウェイクアップ信号受信機11、センサー15およびアクチュエータ16のうち、ウェイクアップ信号受信機11およびアクチュエータ16を備える場合、図22に示すフローチャートに従ってアクチュエータ16へ給電し、またはアクチュエータ16への給電を停止する。
また、各無線ノード1〜6,72の休止状態制御部132は、ウェイクアップ信号受信機11、センサー15およびアクチュエータ16のうち、ウェイクアップ信号受信機11およびアクチュエータ16を備える場合において、ウェイクアップ信号受信機11およびアクチュエータ16への給電または給電停止を行うとき、図18から図20のいずれかに示すフローチャートと、図22に示すフローチャートとを並行して実行し、ウェイクアップ信号受信機11およびアクチュエータ16へ給電し、またはウェイクアップ信号受信機11およびアクチュエータ16への給電を停止する。
更に、各無線ノード1〜6,72の休止状態制御部132は、ウェイクアップ信号受信機11、センサー15およびアクチュエータ16の全てへの給電または給電停止を行うとき、図18から図20のいずれかに示すフローチャートと、図21に示すフローチャートと、図22に示すフローチャートとを並行して実行し、ウェイクアップ信号受信機11、センサー15およびアクチュエータ16へ給電し、またはウェイクアップ信号受信機11、センサー15およびアクチュエータ16への給電を停止する。
上記においては、オンデマンド機能、トポロジー位置およびバッテリ残量によってウェイクアップ信号受信機11への給電可否を決定することについて説明した。そして、オンデマンド機能を有さず、かつ、中継ノードでないとき、ウェイクアップ信号受信機11への給電は、常時停止される(対応表TBL1参照)。この場合、無線ノードは、末端ノードであり、タイマー14からの起動予告時刻を受けて間欠的に起動状態へ移行し、センサー15が検出したセンサー値をサーバ7(=無線ノード72)へ送信する。
このように、無線ノードが末端ノードとして機能する場合、ウェイクアップ信号受信機11は、常時動作が停止される。従って、アクチュエータ16を備える無線ノードは、末端ノードになれず、中継ノードとなる。アクチュエータ16を備える無線ノードは、サーバ7からの制御要求を受信するためにウェイクアップ信号受信機11を動作させる必要があるからである。
図23は、図1に示す無線センサーネットワーク10におけるセンサー値の転送動作を説明するためのフローチャートである。なお、図23において、無線ノード1が中継ノードであり、無線ノード2が末端ノードであるとして、センサー値の転送動作を説明する。
図23を参照して、無線ノード2において、ホストシステム13のノード制御部131は、タイマー制御部14から起動予告時刻を受けると、上述した方法によって無線ノード2を起動状態へ移行させる。
そして、無線ノード2のセンサー15は、センサー値を検出し、その検出したセンサー値をノード制御部131へ出力する。
無線ノード2のノード制御部131は、センサー15からセンサー値を受けると、ルーティングテーブルRTを参照して無線ノード2の親ノードとして無線ノード1を検出する。
そして、無線ノード2のノード制御部131は、無線ノード1のアドレスMACadd1とセンサー値とサーバ7のアドレスMACadd72とを無線通信モジュール12へ出力する。
また、無線ノード2のノード制御部131は、無線ノード1のアドレスMACadd1のハッシュ値を演算して無線ノード1を起動させるためのウェイクアップIDを求める。そして、無線ノード2のノード制御部131は、その求めたウェイクアップIDを無線通信モジュール12へ出力する。
その後、無線ノード2の無線通信モジュール12は、アドレスMACadd1と、センサー値と、アドレスMACadd72と、ウェイクアップIDとをノード制御部131から受ける。
そして、無線ノード2の無線通信モジュール12は、ウェイクアップIDを含むウェイクアップ信号WuSを生成し、その生成したウェイクアップ信号WuSを変調して2回連続して送信する(ステップS81)。
無線ノード1のウェイクアップ信号受信機11は、ウェイクアップ信号WuSを受信し、その受信したウェイクアップ信号WuSに基づいて、上述した方法によって起動状態へ移行し(ステップS82)、無線ノード1のアドレスMACadd1を含む起動通知をブロードキャストする。
無線ノード2は、起動通知を受信すると、無線ノード1が起動したことを検知する。そして、無線ノード2の無線通信モジュール12は、アドレスMACadd1と、センサー値と、無線ノード2のアドレスMACadd2と、サーバ7のアドレスMACadd72とを含むパケットPKT1=[MACadd72/MACadd1/MACadd2/センサー値]を生成し、その生成したパケットPKT1=[MACadd72/MACadd1/MACadd2/センサー値]を変調して送信する(ステップS83)。その後、無線ノード2は、起動状態からスリープ状態へ移行する。
無線ノード1は、無線ノード2からパケットPKT1=[MACadd72/MACadd1/MACadd2/センサー値]を受信する(ステップS84)。そして、無線ノード1は、パケットPKT1の先頭のアドレスがサーバ7のアドレスMACadd72であることを検知し、パケットPKT1をサーバ7へ転送すべきことを検知する。
そして、無線ノード1は、ステップS81における無線ノード2の動作と同じ動作によって、ウェイクアップ信号WuSを2回連続して送信する(ステップS85)。サーバ7の無線ノード72は、無線ノード2から送信されたウェイクアップ信号WuSを受信して、スリープ状態から起動状態へ移行し(ステップS86)、無線ノード72のアドレスMACadd72を含む起動通知をブロードキャストする。
無線ノード1は、起動通知を受信すると、パケットPKT1=[MACadd72/MACadd1/MACadd2/センサー値]のアドレスMACadd1をアドレスMACadd72に変えたパケットPKT2=[MACadd72/MACadd72/MACadd2/センサー値]を生成し、その生成したパケットPKT2=[MACadd72/MACadd72/MACadd2/センサー値]を変調して送信する(ステップS87)。そして、無線ノード1は、起動状態からスリープ状態へ移行する。
サーバ7の無線ノード72は、無線ノード1からパケットPKT2=[MACadd72/MACadd72/MACadd2/センサー値]を受信する(ステップS88)。そして、無線ノード72の無線通信モジュール12は、その受信したパケットPKT2から送信元のアドレスMACadd2およびセンサー値を取り出し、その取り出したアドレスMACadd2およびセンサー値をホストシステム13へ出力する。
そして、無線ノード72のホストシステム13は、無線通信モジュール12からアドレスMACadd2およびセンサー値を受け、その受けたアドレスMACadd2およびセンサー値をRS−232C74を介してパーソナルコンピュータ71へ出力する。
パーソナルコンピュータ71のWebサーバ712は、アドレスMACadd2およびセンサー値を受け、その受けたアドレスMACadd2およびセンサー値を相互に対応付けてデータベース712に格納する。
その後、無線ノード1は、タイマー割込みによってスリープ状態から起動状態へ移行し、センサー15によってセンサー値を検出する。そうすると、無線ノード1は、ステップS81における無線ノード2の動作と同じ動作によって、ウェイクアップ信号WuSを2回連続して送信する(ステップS89)。
サーバ7の無線ノード72は、無線ノード1から送信されたウェイクアップ信号WuSに応じてスリープ状態から起動状態へ移行し(ステップS90)、無線ノード72のアドレスMACadd72を含む起動通知をブロードキャストする。
無線ノード1は、起動通知を受信すると、ステップS83における無線ノード2の動作と同じ動作によって、センサー値を含むパケットPKT3=[MACadd72/MACadd72/MACadd1/センサー値]を送信する(ステップS91)。
サーバ7の無線ノード72は、パケットPKT3=[MACadd72/MACadd72/MACadd1/センサー値]を受信し(ステップS92)、パケットPKT3から送信元のアドレスMACadd1とセンサー値とを取り出す。そして、サーバ7は、ステップS88における動作と同じ動作によって、アドレスMACadd1およびセンサー値を相互に対応付けてデータベース712に格納する。
その後、表示端末8は、LANまたはWLANを介してセンサー値の閲覧要求をサーバ7へ送信する(ステップS93)。サーバ7において、パーソナルコンピュータ71のWebサーバ711は、閲覧要求に応じて、データベース712からセンサー値および送信元を読み出し、その読み出したセンサー値および送信元に基づいて、表示端末8の表示画面に無線ノード1〜6のトポロジーを描画するとともに、各無線ノード1〜6が配置された部分に対応するセンサー値を描画する(ステップS94)。
このように、図23に示すフローチャートに従って、無線ノード1〜6で検出されたセンサー値がサーバ7へ送信され、表示端末8に表示される。
図23に示すフローチャートにおいて、無線ノード2は、センサー値を送信する場合、ウェイクアップ信号を送信して無線ノード2を起動状態へ移行させ、その後、センサー値を送信する(ステップS81〜S83参照)。そして、無線ノード2は、センサー値の送信を完了すると、スリープ状態へ移行する。
また、無線ノード1は、ウェイクアップ信号に応じて起動状態へ移行すると、センサー値を受信し、センサー値を転送する場合、ウェイクアップ信号を送信して無線ノード72を起動状態へ移行させ、その後、センサー値を送信する(ステップS85,S86,S87参照)。そして、無線ノード1は、センサー値の転送を完了すると、スリープ状態へ移行する。
更に、無線ノード1は、自己のセンサー15が検出したセンサー値を送信する場合、ウェイクアップ信号を送信して無線ノード72を起動状態へ移行させ、その後、センサー値を送信する(ステップS89〜S91参照)。そして、無線ノード1は、センサー値の送信を完了すると、スリープ状態へ移行する。
このように、無線ノード1,2,72の各々は、センサー値のサーバ7への送信および転送動作において、起動状態へ移行すると、必要な動作を行った後、スリープ状態へ移行する。そして、起動状態においては、無線ノード1は、無線ノード2から受信したセンサー値を転送する場合、センサー値の転送を完了した後にスリープ状態へ移行する。その結果、無線ノード2から送信されたセンサー値は、迅速にサーバ7へ届けられる。つまり、各無線ノード1,2,72は、必要な場合のみ起動状態へ移行して必要な動作を行った後、スリープ状態へ移行する。
従って、センサー値のサーバ7への送信および転送動作において、無線ノード1,2,72の消費電力を低減できる。
なお、図23に示すステップS81,S85,S89においては、ウェイクアップ信号WuSは、1回以上送信されればよい。
図24は、図1に示す無線センサーネットワーク10におけるアクチュエータ16の制御動作を説明するためのフローチャートである。なお、図24においては、無線ノード1,2の両方が中継ノードであることを前提としてアクチュエータ16の制御動作を説明する。
図24を参照して、アクチュエータ16の制御が開始されると、表示端末8は、アクチュエータ16のリスト要求をサーバ7へ送信する(ステップS101)。
サーバ7のパーソナルコンピュータ71は、リスト要求を受信し、データベース712に格納された無線ノード1〜6のアドレスMACadd1〜MACadd6を読み出し、その読み出したアドレスMACadd1〜MACadd6をアクチュエータ16のリストとして表示端末8へ送信する(ステップS102)。
なお、アドレスMACadd1〜MACadd6をアクチュエータ16のリストとするのは、無線ノード1〜6は、全て、アクチュエータ16を備えているので、無線ノード1〜6のアドレスMACadd1〜MACadd6で無線ノード1〜6に備えられたアクチュエータ16を表すことにしたからである。
表示端末8は、アクチュエータ16のリストを受信すると、その受信したアクチュエータ16のリストを表示画面に表示する。そして、端末装置8は、キーボード等の入力装置を介して各アクチュエータ16に対する制御指示を受け付ける。
そうすると、表示端末8は、制御指示をサーバ7へ送信する(ステップS103)。
サーバ7のパーソナルコンピュータ71は、制御指示を受信し、その受信した制御指示をRC−232C73を介して無線ノード72へ出力する。
無線ノード72において、ホストシステム13のノード制御部131は、制御指示をパーソナルコンピュータ71から受け、その受けた制御指示を無線ノード2へ送信するために、ルーティングテーブルRTを参照して無線ノード72から無線ノード2までの経路=[MACadd72→MACadd1→MACadd2]を検出する。
その後、無線ノード72のノード制御部131は、経路=[MACadd72→MACadd1→MACadd2]と制御指示とを含むパケットPKT4=[[MACadd72→MACadd1→MACadd2]/制御指示]を生成して無線通信モジュール12へ出力する。
また、無線ノード72のノード制御部131は、制御指示の送信先として無線ノード1のアドレスMACadd1を検出し、その検出したアドレスMACadd1のハッシュ値を演算して無線ノード1を起動させるためのウェイクアップIDを求める。そして、無線ノード72のノード制御部131は、その求めたウェイクアップIDを無線通信モジュール12へ出力する。
その後、無線ノード72の無線通信モジュール12は、ウェイクアップIDを含むウェイクアップ信号WuSを生成し、その生成したウェイクアップ信号WuSを変調し、その変調したウェイクアップ信号WuSを2回連続して送信する(ステップS104)。
そして、無線ノード1は、図23に示すステップS82における動作と同じ動作によって、無線ノード72から送信されたウェイクアップ信号WuSに応じてスリープ状態から起動状態へ移行し(ステップS105)、無線ノード1のアドレスMACadd1を含む起動通知をブロードキャストする。
無線ノード72は、起動通知を受信すると、無線ノード1が起動したことを検知する。そして、無線ノード72の無線通信モジュール12は、パケットPKT4=[[MACadd72→MACadd1→MACadd2]/制御指示]を変調して送信する(ステップS106)。
無線ノード1の無線通信モジュール12は、パケットPKT4=[[MACadd72→MACadd1→MACadd2]/制御指示]を受信する(ステップS107)。そして、無線ノード1の無線通信モジュール12は、パケットPKT4をホストシステム13のノード制御部131へ出力する。
無線ノード1のノード制御部131は、パケットPKT4の経路=[MACadd72→MACadd1→MACadd2]を参照して、パケットPKT4を無線ノード2へ送信すべきことを検知する。
そして、無線ノード1のノード制御部131は、パケットPKT4を無線ノード2へ送信するために無線ノード2を起動させるためのウェイクアップIDを上述した方法によって求め、その求めたウェイクアップIDを無線通信モジュール12へ出力する。
その後、無線ノード1は、ステップS104における動作と同じ動作によって、ウェイクアップ信号WuSを変調し、その変調したウェイクアップ信号WuSを2回連続して送信する(ステップS108)。
無線ノード2は、無線ノード1から送信されたウェイクアップ信号WuSに応じて起動状態へ移行し(ステップS109)、無線ノード2のアドレスを含む起動通知をブロードキャストする。
無線ノード1は、起動通知を受信し、無線ノード2が起動したことを検知する。そして、無線ノード1の無線通信モジュール12は、パケットPKT4=[[MACadd72→MACadd1→MACadd2]/制御指示]を送信する(ステップS110)。
無線ノード2の無線通信モジュール12は、パケットPKT4=[[MACadd72→MACadd1→MACadd2]/制御指示]を受信し、その受信したパケットPKT4=[[MACadd72→MACadd1→MACadd2]/制御指示]をホストシステム13のノード制御部131へ出力する。
無線ノード2のノード制御部131は、パケットPKT4=[[MACadd72→MACadd1→MACadd2]/制御指示]を受け、その受けたパケットPKT4の経路=[MACadd72→MACadd1→MACadd2]を参照して、パケットPKT4の宛先が無線ノード2であることを検知する。そして、無線ノード2のノード制御部131は、パケットPKT4から制御指示を取り出し、その取り出した制御指示に従って、アクチュエータ16を制御する(ステップS111)。
アクチュエータ16の制御が完了すると、無線ノード2のノード制御部131は、アクチュエータ16の制御が完了したことを示すアクチュエータ制御応答を生成して無線通信モジュール12へ出力する。
その後、無線ノード2の無線通信モジュール12は、アクチュエータ制御応答を無線ノード1へ送信し(ステップS112)、起動状態からスリープ状態へ移行する。
そして、無線ノード1は、無線ノード2から受信したアクチュエータ制御応答をサーバ7へ転送し(ステップS113)、起動状態からスリープ状態へ移行する。
サーバ7の無線ノード72は、無線ノード1からアクチュエータ制御応答を受信し、その受信したアクチュエータ制御応答をRS−232C74を介してパーソナルコンピュータ71へ出力し、パーソナルコンピュータ71は、無線ノード72から受けたアクチュエータ制御応答をLANまたはWLANを介して表示端末8へ送信する(ステップS114)。そして、無線ノード72は、起動状態からスリープ状態へ移行する。これによって、アクチュエータ16の制御動作が終了する。
このように、サーバ7から無線ノード2へ制御指示を送信する場合、制御対象のアクチュエータ16を搭載した無線ノード2、およびサーバ7(=無線ノード72)から無線ノード2まで制御指示を中継する無線ノード1の全てが中継ノードとして機能する必要がある。
そして、無線ノード2に搭載されたアクチュエータ16を制御する場合にも、各無線ノード1,2は、必要な動作が終了すると、スリープ状態へ移行する。従って、各無線ノード1,2における消費電力を低減できる。
なお、図24に示すステップS104,S108においては、ウェイクアップ信号WuSは、1回以上送信されればよい。
無線センサーネットワーク10を構成する無線ノード1〜6,72の中には、ウェイクアップ信号受信機11を備えていない無線ノードExも存在する。そして、無線ノードExがセンサー15を備えている場合、多くのセンサー値を収集する観点から無線ノードExのセンサー15が検出したセンサー値もサーバ7へ収集する必要がある。
ウェイクアップ信号受信機11を備えていないが、センサー15を備える無線ノードが無線センサーネットワーク10に新たに参加する場合もある。無線センサーネットワーク10の有効な活用を図るためには、このような無線ノードも無線センサーネットワーク10に参加できるようにするのが好ましい。
そこで、以下においては、無線ノードExが最初から無線センサーネットワーク10に参加してセンサー値をサーバ7(=無線ノード72)へ送信する方法、および無線ノードExが無線センサーネットワーク10に新たに参加してセンサー値をサーバ7(=無線ノード72)へ送信する方法について説明する。
無線ノードExは、図2に示す無線ノード1の構成からウェイクアップ信号受信機11およびアクチュエータ16を削除した構成からなる。そして、無線ノードExは、間欠的に起動状態へ移行する。また、無線ノードExのノード制御部131は、無線ノードExが最初から無線センサーネットワーク10に参加している場合、サーバ7までの経路を構築する過程において、自己が親ノードになれないことを示す0xFFFFからなるRankを含む制御パケットDIOを生成して送信する。
また、無線ノードExのノード制御部131は、無線ノードExが無線センサーネットワーク10に新たに参加する場合、制御パケットDIOの送信を要求する制御パケットDISを生成して送信する。
図25は、ウェイクアップ信号受信機を備えていない無線ノードを含めて経路構築を行うときの動作を説明するためのフローチャートである。
図25を参照して、無線ノード1,2は、ウェイクアップ信号受信機11を搭載しており、無線ノードExは、ウェイクアップ信号受信機11を搭載していない。
無線ノードExは、上述した方法によってウェイクアップ信号WuSを生成し、その生成したウェイクアップ信号WuSを2回連続して送信する(ステップS121)。その後、無線ノードExのノード制御部131は、0xFFFF(Rankの最大値)からなるRankを含む制御パケットDIOを上述した方法によって生成し、その生成した制御パケットDIOを無線通信モジュール12へ出力する。そして、無線ノードExの無線通信モジュール12は、ノード制御部131から受けた制御パケットDIOを送信する(ステップS122)。
また、ウェイクアップ信号受信機11を搭載した無線ノード2は、上述した方法によってウェイクアップ信号WuSを生成し、その生成したウェイクアップ信号WuSを2回連続して送信する(ステップS123)。その後、無線ノード2は、上述した方法によって決定した値からなるRankを含む制御パケットDIOを生成して送信する(ステップS124)。
更に、無線センサーネットワーク10に新たに参加する無線ノードExは、ステップS121における動作と同じ動作によってウェイクアップ信号WuSを生成し、その生成したウェイクアップ信号WuSを2回連続して送信する(ステップS125)。
その後、無線ノードExのノード制御部131は、制御パケットDIOの送信を要求する制御パケットDISを生成し、その生成した制御パケットDISを無線通信モジュール12へ出力する。そして、無線ノードExの無線通信モジュール12は、制御パケットDISを送信する(ステップS126)。
無線ノード2は、無線ノードExから送信されたウェイクアップ信号WuSを受信して起動状態へ移行する。そして、無線ノード2の無線通信モジュール12は、無線ノードExから制御パケットDISを受信し、その受信した制御パケットDISをノード制御部131へ出力する。
無線ノード2のノード制御部131は、制御パケットDISの受信に応じて、無線ノードExが制御パケットDIOの送信を要求していることを検知し、上述した方法によって制御パケットDIOを生成し、その生成した制御パケットDIOを無線通信モジュール12へ出力する。
そして、無線ノード2の無線通信モジュール12は、制御パケットDIOを送信する(ステップS127)。
無線ノードExの無線通信モジュール12は、無線ノード2から送信された制御パケットDIOを受信し、その受信した制御パケットDIOをノード制御部131へ出力する。
無線ノードExのノード制御部131は、制御パケットDIOを無線通信モジュール12から受ける。そして、無線ノードExのノード制御部131は、上述した方法によって、制御パケットDAOを送信すると決定するとともに制御パケットDAOを生成して無線通信モジュール12へ出力する。その後、無線ノードExの無線通信モジュール12は、制御パケットDAOを送信する。
このように、無線ノードExは、最初から無線センサーネットワーク10における経路構築に参加している場合、間欠的に起動状態へ移行し、ウェイクアップ信号WuSを送信してから制御パケットDIOを送信する(ステップS121,S122参照)。そして、無線ノードExが送信する制御パケットDIOは、0xFFFFからなるRankを含む。その結果、0xFFFFからなるRankを含む制御パケットDIOを受信した無線ノードは、無線ノードExを親ノードとしない。従って、無線ノードExは、末端ノードとして無線センサーネットワーク10における経路を構築する。
また、ウェイクアップ信号受信機11を搭載する無線ノード2は、図9において説明した方法によってウェイクアップ信号WuSを送信し、その後、上述した方法によって決定した値からなるRankを含む制御パケットDIOを生成して送信する(ステップS123,S124参照)。
更に、無線ノードExは、無線センサーネットワーク10に新たに参加する場合、間欠的に起動状態へ移行してウェイクアップ信号WuSを送信し、その後、制御パケットDIOの送信を要求する制御パケットDISを送信する(ステップS125,S126参照)。そして、無線ノードExは、制御パケットDISを受信した無線ノード2から制御パケットDIOを受信する(ステップS127参照)。従って、無線ノードExは、無線センサーネットワーク10に新たに参加する場合でも、無線センサーネットワーク10における経路構築に参加できる。
従って、ウェイクアップ信号受信機11を搭載していない無線ノードExも含めて無線センサーネットワーク10における経路を構築することができる。
なお、ウェイクアップ信号受信機11を備えない場合として、ウェイクアップ信号受信機11、センサー15およびアクチュエータ16のうち、センサー15のみを備える場合が想定される。アクチュエータ16を備える場合、オンデマンド機能を有するので、ウェイクアップ信号受信機11が必ず必要になるからである。
従って、ウェイクアップ信号受信機11を備えない場合と、センサー15のみを備える場合とは、同じ意味内容である。
ウェイクアップ信号受信機11を備えない無線ノードExでは、ウェイクアップ信号受信機11へ給電する必要がない。また、無線ノードExにおいて、対応表TBL3に従ってセンサー15への給電可否が決定される。従って、無線ノードExにおける消費電力を低減できる。
なお、図25に示すステップS121,S123,S125においては、ウェイクアップ信号WuSは、1回以上送信されればよい。
図26は、無線センサーネットワーク10がウェイクアップ信号受信機を備えていない無線ノードを含む場合のセンサー値の送信方法を説明するための図である。
図26においても、無線ノード1,2は、ウェイクアップ信号受信機11を備えており、無線ノードExは、ウェイクアップ信号受信機11を備えていない。
無線ノード2は、図23のステップS81,S83における動作と同じ動作によって、ウェイクアップ信号WuSを2回連続して送信し、その後、センサー値を送信する(ステップS128,S129)。そして、無線ノード2は、センサー値を送信した後、スリープ状態へ移行する。無線ノード1は、無線ノード2からのウェイクアップ信号WuSに応じて起動し、無線ノード2からのセンサー値を受信する。そして、無線ノード1は、センサー値を受信すると、スリープ状態へ移行する。
無線ノードExは、タイマー14からの起動予告時刻によって間欠的に起動し、図25のステップS121における動作と同じ動作によってウェイクアップ信号WuSを生成して2回連続して送信する(ステップS130)。その後、無線ノードExは、センサー値を送信する(ステップS131)。そして、無線ノードExは、センサー値を送信した後、スリープ状態へ移行する。無線ノード2は、無線ノードExからのウェイクアップ信号WuSに応じて起動し、無線ノードExからのセンサー値を受信する。そして、無線ノード2は、センサー値を受信すると、スリープ状態へ移行する。
このように、ウェイクアップ信号受信機11を備えない無線ノードExは、間欠的に起動してセンサー値を送信する。従って、ウェイクアップ信号受信機11を備えない無線ノードExに搭載されたセンサー15が検出したセンサー値も収集できる。
上記においては、オンデマンド機能の有無およびトポロジー位置(中継ノードか否か)によってウェイクアップ信号受信機11への給電可否を決定することを説明した。
また、電源17の種別およびバッテリ残量によってウェイクアップ信号受信機11への給電可否を決定することを説明した。
更に、センサー搭載有無およびセンサーの種別によってセンサー15への給電可否を決定することを説明した。
更に、アクチュエータ搭載有無およびアクチュエータの種別によってアクチュエータ16への給電可否を決定することを説明した。
そして、給電可否を決定する対象は、ウェイクアップ信号受信機11、センサー15およびアクチュエータ16である。また、アクチュエータ16が搭載される場合、オンデマンド機能の必要性からウェイクアップ信号受信機11も搭載される。従って、各無線ノード1〜6,72は、(1)ウェイクアップ信号受信機11、センサー15およびアクチュエータ16のうち、ウェイクアップ信号受信機11およびセンサー15を備えるパターン、(2)ウェイクアップ信号受信機11、センサー15およびアクチュエータ16のうち、センサー15のみを備えるパターン、(3)ウェイクアップ信号受信機11、センサー15およびアクチュエータ16のうち、ウェイクアップ信号受信機11およびアクチュエータ16を備えるパターン、(4)ウェイクアップ信号受信機11、センサー15およびアクチュエータ16の全てを備えるパターンを有する。
しかし、上述した給電可否の決定方法は、無線センサーネットワーク10を構成する無線ノードに限らず、アドホック無線ネットワークのようにマルチホップで無線通信を行うネットワークを構成する無線ノードにも適用可能である。
そうすると、各無線ノード1〜6,72は、(5)ウェイクアップ信号受信機11、センサー15およびアクチュエータ16のうち、ウェイクアップ信号受信機11のみを備えるパターンも有する。
従って、この発明の実施の形態による無線装置は、当該無線装置をスリープ状態から起動状態へ移行させるためのウェイクアップ信号を受信するウェイクアップ信号受信機、センサーおよびアクチュエータのうち、ウェイクアップ信号受信機、またはセンサー、またはウェイクアップ信号受信機およびアクチュエータを少なくとも含むデバイス部と、電源と、デバイス部がウェイクアップ信号受信機を含む場合、当該無線装置がサーバからの要求に対して所望の動作を行う必要がある機能を示すオンデマンド機能と、当該無線装置が無線通信を中継する中継ノードであるか無線通信を中継しない末端ノードであるかを示す当該無線装置の種別とに基づいて、デバイス部のウェイクアップ信号受信機への給電の可否を判定し、デバイス部がセンサーを含む場合、センサーが常時電力を必要とする常時監視タイプのセンサーであるか否かを示すセンサーの種別に基づいてデバイス部のセンサーへの給電の可否を判定し、デバイス部がアクチュエータを含む場合、アクチュエータが常時電力を必要とする常時制御タイプのアクチュエータであるか否かを示すアクチュエータの種別に基づいてデバイス部のアクチュエータへの給電の可否を判定し、その判定した判定結果に応じて、デバイス部へ電力を供給するように電源を制御し、またはデバイス部への電力の供給を停止するように電源を制御する電力制御処理を行う電源制御部とを備えていればよい。
この構成によれば、ウェイクアップ信号受信機、センサーおよびアクチュエータの少なくとも1つへの給電が制御され、無線装置における消費電力を低減できるからである。
また、この発明の実施の形態による無線通信システムは、ウェイクアップ信号受信機を搭載した無線装置のみから構成されていてもよく、ウェイクアップ信号受信機を搭載した無線装置と、ウェイクアップ信号受信機を搭載しない無線装置とから構成されていてもよい。即ち、この発明の実施の形態による無線通信システムは、ウェイクアップ信号受信機を搭載した無線装置を含んでいればよい。そして、無線通信システムがウェイクアップ信号受信機を搭載しない無線装置を含む場合、ウェイクアップ信号受信機を搭載しない無線装置は、自己が末端ノードとして動作するように経路制御を行う経路制御部を備える。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した実施の形態の説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。