(57)【特許請求の範囲】
【請求項１】
センシングデータを取得するセンサと、
前記センシングデータ及び無線ノードのＩＤである第１ノードＩＤ情報を含む第１送信情報を生成する第１コントローラと、前記第１送信情報を基地局に送信する第１無線処理部とを有する無線ノードと、
無線で通信可能な領域に前記無線ノードが存在する場合、前記無線ノードから前記基地局への送信情報を傍受する第２無線処理部と、前記傍受した送信情報から当該無線ノードのノードＩＤ情報を抽出し、前記抽出したノードＩＤ情報である第２ノードＩＤ情報及びロケータノードのＩＤである第３ノードＩＤ情報を含む第２送信情報を生成する第２コントローラとを有するロケータノードと、
前記第１送信情報を受信した場合に、前記第１ノードＩＤ情報を抽出し、前記第２送信情報を受信した場合、前記第２ノードＩＤ情報及び前記第３ノードＩＤ情報を抽出し、アドレス変換テーブルを用いて上記第１又は第２及び第３ノードＩＤ情報を、システム全体で一意に定まる識別子である第１又は第２及び第３ノードグローバルアドレスに変換するノード通信処理部と、
前記第１又は第２及び第３ノードグローバルアドレスを含むノード検出情報をサーバへ送信するノード管理部と、
を有する基地局と、
前記ノード検出情報を受信するイベントアクション制御部と、
前記ロケータノードのノードグローバルアドレスと前記ロケータノードの位置とを対応付けるロケータノード位置テーブルを記録する記憶部と、
複数の前記ノード検出情報が受信された場合であって、前記第１ノードグローバルアドレスと前記第２ノードグローバルアドレスが同じ場合に、前記第３グローバルアドレスに対応する前記ロケータノードの位置を、前記無線ノードの位置に対応付けるデータベース制御部を有するサーバと、
から構成されるセンサネットシステム。
【請求項２】
請求項１に記載のセンサネットシステムにおいて、
前記サーバは複数の基地局を管理し、
前記複数の基地局はそれぞれ前記基地局と、前記基地局が管理する無線ノード、ロケータノードで構成されるネットワークを識別するネットワークＩＤを有し、
前記ノードＩＤ情報は、前記無線ノード及び前記ロケータノードが属するネットワークのネットワークＩＤを含み、
前記複数の基地局それぞれの前記ノード通信処理部は、前記ノードＩＤ情報から抽出される無線ノード及びロケータノードそれぞれのネットワークＩＤが前記基地局のネットワークＩＤと同じ場合に、前記ノードグローバルアドレスへの変換を行うセンサネットシステム。
【請求項３】
請求項１に記載のセンサネットシステムであって、
前記サーバはさらに、ロケータノードの検知領域を変更する指示を基地局に送信するコマンド制御部を備え、
前記無線ノードが前記基地局の通信領域に存在し前記ロケータノードの検知領域に存在しない場合であって、
前記ノード通信処理部は、前記第１送信情報を受信し、
前記データベース制御部において、受信した第１ノードグローバルアドレスと同じ第２ノードグローバルアドレスが存在しないことを判定した場合、
前記コマンド制御部は、前記指示を前記センサノード管理部に送信し、
前記第２無線処理部は、前記ノード通信処理部を介して前記指示を受け、
前記第２コントローラが前記指示に基づいて前記第２無線処理部を制御することにより、前記第２無線処理部が前記第１送信データを傍受するセンサネットシステム。
【請求項４】
請求項１乃至３の何れかに記載のセンサネットシステムにおいて、
複数のロケータノードの検知領域が重なる領域に無線ノードが存在する場合であって、
前記複数のロケータノードが前記無線ノードから前記基地局への送信情報を傍受した場合、
前記データベース制御部は、前記記録部に記録された前記複数のロケータノードが前記無線ノードを検知した履歴に基づいて、１のロケータノードを選択し、前記選択したロケータノードのノードグローバルアドレスに基づいて上記ノードの位置を特定するセンサネットシステム。
【請求項５】
請求項１乃至４の何れかに記載のセンサネットシステムであって、
前記ロケータノードは、前記送信情報を傍受する傍受モードと、前記ノードＩＤ情報を抽出する検出処理モードと、前記第２送信情報を送信する通信モードと、を有し、
前記第２コントローラが前記第２無線処理部を制御することにより、前記傍受モードで前記送信情報を傍受すると前記検出処理モードに移行し、前記ノードＩＤ情報を抽出すると前記通信モードに移行し、前記第２送信情報を送信すると前記傍受モードに移行するセンサネットシステム。
【請求項６】
請求項５に記載のセンサネットシステムであって、
前記ロケータノードは、前記傍受モードに移行後、前記検出処理モードで所定時間内に同じノードＩＤ情報を抽出した場合には、前記傍受モードに移行し、
前記同じノードＩＤ情報を抽出した最新の時刻から前記所定時間内に前記同じノードＩＤ情報を抽出しない場合には、前記ノードの上記検出領域からの離脱を示す情報を前記基地局に送信するセンサネットシステム。
【請求項７】
請求項１乃至６の何れかに記載のセンサネットシステムであって、
前記第２無線処理部が前記送信情報を傍受した電波の電波強度が所定の値を超える場合に、
前記第２コントローラは、前記傍受した送信情報から前記第２ノードＩＤ情報を抽出するセンサネットシステム。
【請求項８】
請求項１乃至６の何れかに記載のセンサネットシステムであって、
前記第２無線処理部は、受信する電波の電波強度を増幅する増幅器を有し、
前記増幅器は、予め設定された増幅率で、前記第２無線処理部が前記送信情報を傍受した電波の電波強度を増幅し、
前記第２コントローラは、前記増幅された電波強度が所定の値を超える場合に前記傍受した送信情報から前記第２ノードＩＤ情報を抽出するセンサネットシステム。
【請求項９】
請求項５または６に記載のセンサネットシステムであって、
前記ノードは前記第１送信情報を送信する前に所定の情報を生成するアクチュエータをさらに有し、
前記ロケータノードは、前記所定の情報を検知手段により検知し、前記傍受モードを開始するセンサネットシステム。
【請求項１０】
基地局にセンサネット位置特定方法を実行させるセンサネット位置特定プログラムであって、
無線ノードから送信されるセンシングデータと第１ノードＩＤ情報を含む第１送信情報と、ロケータノードが傍受した無線ノードから送信された送信情報に含まれるノードＩＤ情報である第２ノードＩＤ情報とロケータノードのＩＤである第３ノードＩＤ情報を含む第２送信情報とを受信し、
前記第１及び第２送信情報から、前記第１ノードＩＤ情報、前記第２ノードＩＤ情報及び前記第３ノードＩＤ情報を抽出し、アドレス変換テーブルを用いて上記第１、第２及び第３ノードＩＤ情報を、システム全体で一意に定まる識別子である第１、第２及び第３ノードグローバルアドレスに変換し、
前記第１及び第２ノードグローバルアドレスが同じ場合に、前記第３ノードグローバルアドレスと前記ロケータノードの位置とを対応づけデータベースを持つサーバに、前記第１、第２及び第３ノードグローバルアドレスを送信するセンサネット位置特定プログラム。
【請求項１１】
請求項１０に記載のセンサネット位置特定プログラムであって、
前記サーバは複数の基地局を管理し、
前記複数の基地局はそれぞれ上記基地局と、前記基地局が管理する無線ノード、ロケータノードで構成されるネットワークを識別するネットワークＩＤを有し、
前記ノードＩＤ情報は、前記無線ノード及び前記ロケータノードが属するネットワークのネットワークＩＤを含み、
上記複数の基地局はそれぞれ、前記ノードＩＤ情報から抽出される無線ノード及びロケータノードそれぞれのネットワークＩＤが前記基地局のネットワークＩＤと同じ場合に、前記変換を行うセンサネット位置特定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、人や物の状態や位置等の状況変化を連続的に追跡可能なセンサネットワークシステムに関し、特に移動体の位置特定が有効な分野に関する。
【背景技術】
【０００２】
従来から、建物や市街地等での人の行動に対するセキュリティ管理、倉庫や店舗等の流通過程の物品管理、医療施設や家庭での人の健康や安全管理、愛玩動物や家畜の状態監視等の分野では、人や物品、動物等の移動体に、個体を識別可能なＩＤを外部に伝達する手段を設けたタグをつけ、外部からタグの情報を読み取ることによって移動体の管理を行う方法が提案され、また実用化されてきた。  
移動体を管理する上で、ＩＤによる個体の識別に加えて重要な管理情報の一つに移動体の位置がある。移動体のＩＤと位置を、それらが観測された時間と組み合わせることによって、特定の移動体の現在地、移動の経路、複数の移動体間の関係、観測フィールドとの関係等の情報が得られる。上記の分野では、これらの情報から、例えば施設内作業者による立入り制限区域への侵入、商品の流通経路のトレース、患者の居場所確認等の状況を把握することができる。
【０００３】
移動体の位置を特定する方法としては、ＩＤを発信するタグとして携帯電話等の無線端末と、無線端末と通信する基地局を用いる方法が開示されている。例えば、無線通信基地局を通信領域が重ならないように配置し、無線端末が最も近い基地局と通信した時点で、その無線端末の位置を通信した基地局の位置とする方法がある。
【０００４】
また、無線端末の信号が基地局に到達するまでの時間を計測する手段を設け、無線端末からの信号電波を少なくとも３つ以上の基地局が同時に受信し、電波が到達した時間差の計測結果に基づいて各基地局と端末間の距離を推定し、３辺測量の原理で位置を特定する方法がある（例えば、特許文献１参照）。
【０００５】
さらに、時間差の代わりに端末から受信した信号の電波強度の差から各基地局と端末間の距離を推定し、３辺測量の原理で位置を特定する方法がある（例えば、特許文献２参照）。
【０００６】
また、３辺測量の原理で無線端末の位置を特定する方法として、電波強度の統計的なモデルを対象空間毎にトレーニングによって決定し、このモデルを用いて測定誤差を軽減する方法がある（例えば、特許文献３及び特許文献４参照）。
【０００７】
【特許文献１】特開平８−１２９０６１号公報
【特許文献２】特開平１１−１７８０４２号公報
【特許文献３】特開２００４−１１２４８２号公報
【特許文献４】特開２００５−５２５００３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
上記背景技術の適用分野において移動体につけるタグとして無線端末を用いる場合、無線の通信可能距離が長い方が通信先の基地局の設置間隔を広くすることができるという点で有利である。一方で、いずれの適用分野についても、移動体の位置はできるだけ精度よく観測することが求められる。
【０００９】
これに対し、通信相手の基地局位置を無線端末の位置とする従来の方法は、端末−基地局間の通信距離が長い場合には、誤差が大きくなるという問題がある。
【００１０】
特許文献１、および特許文献２が開示する３辺測量に基づいた位置特定方法は、少なくとも３つ以上の基地局を位置特定の基準として用いるため、同時に３つ以上の基地局と端末が通信を行えるように、基地局を十分密に配置する必要がある。また、端末位置の推定を精度よく行うためには、それぞれの基地局の位置を予め正確に決定しておく必要がある。
【００１１】
また、特許文献１が開示する時間差を用いた距離推定に基づいた３辺測量の方法は、できるだけ高い測定精度を得るためには、基地局が端末と通信した時間を正確に比較する必要があるため、基地局間で厳密に時間同期を行う手段が必要である。 
特許文献２が開示する電波強度を用いた距離推定に基づいた３辺測量の方法は、できるだけ高い測定精度を得るためには、電波強度を正確に計測する必要がある。しかし、上記背景技術分野の適用場所においては、さらには壁や床、設置物の配置や素材、存在する人や物品等の電波を吸収あるいは反射する物体の存在、湿度、他の電波の影響等、伝搬環境の静的、動的な状態によって電波強度が影響を受けるため、精度よく端末の位置を特定することは難しい。この点、特許文献３及び４は統計的モデル決定を開示するが、対象空間の特性を網羅的に測定してモデル化する必要がある。また、位置決定に複雑な計算を行う必要がある。
【００１２】
さらに、上記従来技術は、いずれも端末−基地局間の距離は、最長で通信可能距離の最大値まで広がる場合があり、端末と基地局の間に電波を遮蔽する物体がひとつ、あるいは複数存在する、あるいは出現する可能性がある。その場合には位置特定が不可能になる。また、上記従来技術は通常、端末が測位のための信号を送信する必要がある。
【課題を解決するための手段】
【００１３】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、下記のとおりである。センシングデータを取得するセンサと、上記センシングデータ及びノードＩＤ情報を含む第１の送信データを生成する第１のコントローラと、上記第１の送信データを基地局に送信する第１の無線処理部と、を有するノードと、ロケータノードの検知領域にノードが存在する場合に、上記ノードから基地局への送信データを傍受する第２の無線処理部と、上記送信データからノードＩＤ情報を抽出し、上記抽出したノードＩＤ情報、及びロケータノードＩＤ情報を含む第２の送信データを生成する第２のコントローラと、を有するロケータノードと、基地局の通信領域に上記ノードが存在する場合に、上記第１の送信データを受信して第１のノードＩＤ情報を抽出し、上記ロケータノードから上記第２の送信データが送信される場合に、上記第２の送信データを受信して第２のノードＩＤ情報及び上記ロケータノードＩＤ情報を抽出するノード通信処理部と、上記第１の送信データ、上記第２の送信データの少なくとも何れかから抽出したＩＤ情報をサーバに送信するノード管理部と、を有する基地局と、上記ＩＤ情報を受信するイベントアクション制御部と、上記ロケータノードＩＤ情報と上記ロケータノードの位置とを対応づけるロケータノード位置テーブルを記録する記録部と、上記受信したＩＤ情報及び上記ロケータノード位置テーブルを用いて、上記検知領域及び上記通信領域の少なくとも何れかに存在するノードの位置を特定するデータベース制御部と、を有するサーバ、から構成されるセンサネットシステム。
【発明の効果】
【００１４】
基地局とセンサノード間の正確な距離の推定する必要がなくなり、基地局の厳密な位置決めが不要となる。また、基地局間の正確な時間同期が不要となり、基地局を密に配置する必要がなくなる。さらに、電波強度変動の影響を低減するための複雑な計算が不要となる。また、センサノードは測位のための信号を送信する必要はなく、センサノードの消費電力を低減することができる。
【発明を実施するための最良の形態】
【００１５】
本発明は、ロケータノードを用いてノードの位置を特定することにより、基地局の厳密な位置決めなど、複雑な処理を必要としないことを特徴とする。
【００１６】
以下、本発明の実施形態を添付図面に基づいて説明する。
図１は、センサノードからの通信を傍受する位置特定用ロケータノードを用いてセンサノードの位置を特定するセンサネットワークシステムの構成図である。本明細書では一実施形態として、基地局ＢＳＴ、分散データ処理サーバＤＤＳ、ディレクトリサーバＤＲＳを開示するが、これらの構成を１のデータ処理サーバ内に備え、１のデータ処理サーバで実行することも可能である。
【００１７】
＜センサネットワークシステムＳＮＳ構成の概要＞
センサノードＷＳＮ（無線センサノード）、ＭＳＮ（無線モバイルセンサノード）は、所定の位置に設置され、あるいは所定の物あるいは人等に取り付けられ、環境に関する情報や取り付けられた物に関する情報を収集し、その情報を基地局ＢＳＴ−１〜ｎに送信するノードである。センサノードには、無線により基地局ＢＳＴ−１〜ｎに接続される無線センサノードＷＳＮ、無線モバイルセンサノードＭＳＮと、有線によりネットワークＮＷＫ−ｎに接続される有線センサノードＦＳＮが含まれる。
【００１８】
固定的に設置される無線センサノードＷＳＮは、例えば、搭載されたセンサが周期的に周囲の状況をセンシングして、予め設定された基地局ＢＳＴへ直接、あるいは無線を中継するルータＲＴＲを介してセンシング情報を送信する。無線モバイルセンサノードＭＳＮは、ヒトが持ち歩く、クルマに搭載する等、移動体に設置して移動可能であることを前提とし、至近の基地局ＢＳＴへ直接、あるいは至近のルータＲＴＲを介してルータＲＴＲが接続している基地局ＢＳＴへ情報を中継して送信する。
【００１９】
また、ロケータノードLCNは所定の位置に設置され、周囲に存在するセンサノードを検知して、検知したセンサノードの情報を基地局ＢＳＴ−１〜ｎへ直接、あるいは無線を中継するルータＲＴＲを介して送信するノードである。ロケータノードＬＣＮは、センサノードが基地局ＢＳＴ、あるいはルータＲＴＲに送信した通信を傍受する機能を有し、ロケータノードＬＣＮから予め定めた特定の距離内にセンサノードが出現した場合に該センサノードを検知して、検知情報を基地局ＢＳＴに送信する。
【００２０】
なお、ルータＲＴＲは、センサノードＷＳＮあるいはＭＳＮと基地局の間に１つだけ存在しても良いし、複数のルータＲＴＲを１本のパスで接続して中継するマルチホップ型、あるいは複数のルータＲＴＲをメッシュ状に接続して中継するメッシュ型の中継ネットワークを構成しても良い。
【００２１】
ここで、無線センサノードの全体（総称）を指すときにはＷＳＮまたはＭＳＮとし、個々の無線センサノードを指すときには、ＷＳＮ−１〜ｎあるいはＭＳＮ−１〜ｎのように添え字を付して表す。他の構成要素についても以下同様に、総称を示す際には添え字無しで表し、個々を示す際には添え字「−１〜ｎ」を付すものとする。
【００２２】
各基地局ＢＳＴ−１〜ｎには、１つまたは複数の無線センサノードＷＳＮ、ＭＳＮ、ロケータノードＬＣＮが接続され、各基地局ＢＳＴ−１〜ｎは、ネットワークＮＷＫ−２〜ｎを介して各センサノードからのデータを収集する分散データ処理サーバＤＤＳ−１〜ｎに接続される。なお、ネットワークＮＷＫ−２〜ｎは、基地局ＢＳＴと分散データ処理サーバ（分散サーバ）ＤＤＳとを接続する。分散データ処理サーバＤＤＳは、システム規模の大きさによって、その接続数を変えることができる。また、センサノードＷＳＮまたはＭＳＮ、ロケータノードＬＣＮと基地局ＢＳＴ間の通信は、今後特に説明しない限りは上述のように直接行われる場合も、ルータＲＴＲによる中継ネットワークを介して行われる場合もあるものとし、本実施例で説明するセンサネットワークシステムには、該中継ネットワークを制御する機能を備えるものとする。中継ネットワークを制御する機能については、一般の無線中継ネットワークで使用されている機能を適用可能であるため、ここでは詳細には記述しない。
【００２３】
各分散データ処理サーバＤＤＳ−１〜ｎは、無線及び有線センサノード（以下、分散データ処理サーバＤＤＳへの接続手段を特に限定しない場合には単に「センサノード」と表記する場合もある）や、ロケータノードＬＣＮが検出したデータ等を格納するディスク装置ＤＳＫと、図示しないＣＰＵ及びメモリを備えて所定のプログラムを実行し、後述するようにセンサノードからの測定データを収集し、予め規定した条件に従って、データの格納、データの加工、さらにはネットワークＮＷＫ−１を介してディレクトリサーバ（管理サーバ）ＤＲＳもしくは他のサーバへの通知やデータ転送などのアクションを行う。なお、ネットワークＮＷＫ−１は、ＬＡＮやインターネット等で構成される。
【００２４】
ここで、センサノードから収集したデータは、主には、センサノードを識別する固有のＩＤおよびセンシングされた数値データであり、また、ロケータノードＬＣＮから収集したデータは、主にロケータノードＬＣＮを識別する固有のＩＤおよびロケータノードＬＣＮが検出したセンサノードを識別する固有のＩＤであり、各々が時系列に応じた変化を示すが、そのままではアプリケーションシステムＡＰＳが容易に利用可能な形式にはなっていない。そこで、ディレクトリサーバＤＲＳでは、予め設定された定義に基づいて、センサノードの出力データをアプリケーションシステムＡＰＳが利用しやすい実世界モデル（ヒト、モノ、状態、など）に変換してアプリケーションシステムＡＰＳに提供する。
【００２５】
なお、分散データ処理サーバＤＤＳ−１〜ｎがデータを収集する対象は、自身が接続されたネットワークＮＷＫ−２〜ｎの基地局ＢＳＴに所属するセンサノードやロケータノードＬＣＮ、他の基地局ＢＳＴから移動してきた無線センサノードＭＳＮである。また、有線センサノードＦＳＮは、分散データ処理サーバＤＤＳ−１〜ｎに接続するようにしてもよい。もちろん、有線センサノードＦＳＮを基地局ＢＳＴに接続し、基地局ＢＳＴが有線センサノードＦＳＮを無線センサノードと同等に管理することもできる。
【００２６】
ネットワークＮＷＫ−１には、分散データ処理サーバＤＤＳから送られたセンシング情報に関連づけられた実世界モデルを管理するディレクトリサーバＤＲＳと、ディレクトリサーバＤＲＳや分散データ処理サーバＤＤＳ及び基地局ＢＳＴ、センサノードの設定及び管理を行う管理者端末ＡＤＴと、このディレクトリサーバＤＲＳの情報を利用するアプリケーションシステムＡＰＳが接続される。なお、管理者端末は、センサノードを管理するセンサ管理者と、センサネットワークのサービスを管理するサービス管理者用にそれぞれ用意しても良い。
【００２７】
ディレクトリサーバＤＲＳは、図示しないＣＰＵ、メモリ及びストレージ装置を備えて所定のプログラムを実行し、後述するように、有意な情報に関連づけられたオブジェクトを管理する。すなわち、アプリケーションシステムＡＰＳが、アプリケーションインタフェースを介して実世界モデルに対してアクセスを要求すると、ディレクトリサーバＤＲＳは実世界モデルに該当する測定データを所有する分散データ処理サーバＤＤＳ−１〜ｎにアクセスし、該当する測定データを取得し、そのセンシングデータを、必要あればアプリケーションシステムＡＰＳが利用しやすい形に変換してアプリケーションシステムＡＰＳに渡す。
【００２８】
この例では、センサノードやロケータノードＬＣＮを接続して通信を行う基地局ＢＳＴ、ＢＳＴを経由したセンサノードやロケータノードＬＣＮの情報を収集する分散データ処理サーバＤＤＳ、分散データ処理サーバＤＤＳのセンシング情報に関連づけられた実世界モデルを管理するディレクトリサーバＤＲＳを用いてセンサネットシステムを構成したが、上述したように基地局ＢＳＴ、分散データ処理サーバＤＤＳ、ディレクトリサーバＤＲＳを同一のハードウェア上に構成しても良い。なお、ノード−基地局間の通信を比較的近距離の無線等で構成する例では、ノードから通信可能な距離内に基地局を配置する必要がある。この時、基地局機能のみを分離すればひとつの基地局の構成は単純になり、サイズやコストを下げる事が可能になるため、観測フィールドの様々な場所に多数配置するができる。その結果として、フィールド全体を比較的安価に通信可能エリアにすることができる。一方で、分散データ処理サーバは、例えば１つの観測フィールドに１つ配置してフィールド全体のノードの管理やデータ収集を行い、また、ディレクトリサーバは、複数の観測フィールドを統括する構成にすれば、処理の分散化や、センサネットシステムの統括管理が行いやすくなるという効果が得られる。
【００２９】
図２は、図１に示したセンサネットワークシステムの機能ブロック図である。ここでは、説明を簡易にするため、図１の分散データ処理サーバＤＤＳ−１〜ｎのうち分散データ処理サーバＤＤＳ−１の詳細のみを示し、また、分散データ処理サーバＤＤＳ−１に接続された基地局ＢＳＴ−１〜ｎのうち基地局ＢＳＴ−１のみを示す。他の分散データ処理サーバＤＤＳや基地局ＢＳＴも同様に構成される。以下、各部の構成について説明する。
【００３０】
＜基地局ＢＳＴ＞
基地局ＢＳＴは、予め設定された配下の無線センサノードＷＳＮ、ＭＳＮ、有線センサノードＦＳＮ、およびロケータノードＬＣＮについて管理を行い、各センサノード、ロケータノードＬＣＮが測定したデータや、ノード自身の状態データ等を分散データ処理サーバＤＤＳに送信する。
【００３１】
ノード通信処理部ＮＣＰは、センサノードやロケータノードからの通信を受信し、受信内容に含まれるノードのアドレス情報を、アドレス変換テーブルＡＣＴを用いて分散データ処理サーバＤＤＳを含む上位システムで使用するアドレスフォーマットに変換する。また、受信内容に含まれるセンシング結果や、残電池容量や通信リトライ回数等のセンサノード自身の状態等、種々のデータを抽出する。
【００３２】
本実施例においては、ノード−基地局間の通信時に、ノードを特定するアドレス情報として、ローカルアドレスとＰＡＮ（Ｐｅｒｓｏｎａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）  ＩＤを用いる。ここで、ＰＡＮ  ＩＤとは、１の基地局ＢＳＴと、基地局ＢＳＴに接続された無線センサノードＷＳＮ、およびロケータノードＬＣＮで構成される無線ネットワーク単位で割り当てられるＩＤである。つまり、各構成要素がどのネットワークに属するかを識別するため、１のＰＡＮに属するノード、ロケータノード、基地局には同一のＰＡＮ  ＩＤが付与される。また、センサノードやロケータノードが持つローカルアドレスは、それぞれのノードが所属するＰＡＮの中でユニークになるように予め割り当てる。従って、ＰＡＮ  ＩＤとローカルアドレスの組み合わせによってノードのＩＤはセンサネットシステムＳＮＳの中で一意に決定される。また、後述するグローバルアドレスは、センサネットシステムの中で各ノードに付与されるか、あるいは予め各ノードに割り当てられているＩＤである。
【００３３】
ここで、本明細書では、センサノードが有するＰＡＮ  ＩＤであるＳ＿ＰＩＤとローカルアドレスＳ＿ＬＡＤをセンサノードＩＤ情報、ロケータノードが有するＬ＿ＰＩＤとローカルアドレスＬ＿ＬＡＤをロケータノードＩＤ情報と定義する。
【００３４】
一方で、センサノードやロケータノードは、他のセンサネットシステム、あるいは他の類似システムに所属するノードとの混同を避けるために、他のシステムに所属するノードが混在する可能性がある領域内では一意な識別を行う必要がある。また、分散データ処理サーバＤＤＳやディレクトリサーバＤＲＳ、アプリケーションシステムＡＰＳにおいて、他のシステムのノード情報を統合して処理する場合には、すべてのノードを一意に識別する必要がある。このために、各ノードには個体識別のためのグローバルアドレスを割り当てる。
【００３５】
通常、各ＰＡＮに所属するノード数は、該ノード群が所属するセンサネットシステムＳＮＳ、および他のシステム全体に所属するノード数に対し少なくなる。したがって、グローバルアドレスを表現するのに必要なデータサイズに比べ、ローカルアドレスを表現するのに必要なデータサイズを小さくする事ができる。これにより、同一ＰＡＮ内のノード−基地局間のローカルな通信の際には、通信時に付加するノードのアドレスデータサイズを小さくする事ができ、結果として全体の通信データ量を少なくする事が可能になる。特に帯域の制限された無線通信を行う場合では、通信データ量を少なくすることにより通信時間が短縮されるため、伝送路占有時間節約の面においても、センサノードの電力消費量削減の面においても有利になる。
【００３６】
上述したように、図２に示すノード処理部ＮＣＰがアドレス変換テーブルＡＣＴを用いて、ローカルアドレスからグローバルアドレスへの変換を行う。なお、図２では、ノード−基地局間通信で用いるノードのアドレスフォーマットと、分散処理サーバＤＤＳを含む上位システムで使用するアドレスフォーマットが異なる場合の例を開示したが、通信データ量に制約が無い場合は、両者を同じにしても実用上問題が無い場合もある。その場合はアドレス変換テーブルＡＣＴは不要になる。
【００３７】
イベント監視部ＥＶＭは、ノード通信処理部ＮＣＰにより取得した該センサノードやロケータノードのＩＤ情報であるグローバルアドレスと、センシング結果やノード状態情報をイベントとして監視する。また、センシング結果やノードの状態等の内容に応じて、データ変換や異常判定等予め設定された判定条件に基づいて行われる処理結果をセンサノード管理部ＳＮＭに通知する。
【００３８】
コマンド制御部ＣＭＣ−Ｂでは、後述する分散データ処理サーバＤＤＳ−１のコマンド制御部ＣＭＣ−Ｄとの間でコマンドの送受を行う。例えば、分散データ処理サーバＤＤＳ−１からのコマンドに応じて、基地局ＢＳＴ−１のパラメータの設定を実行したり、基地局ＢＳＴ−１の状態パラメータの設定を実行したり、センサノードやロケータノードＬＣＮの状態を分散データ処理サーバＤＤＳ−１へ送信したりする。
【００３９】
センサノード管理部ＳＮＭは、分散データ処理サーバのイベントアクション制御部ＥＡＣとデータ通信を行う。具体的には、センサノード管理部ＳＮＭが管理するセンサノードやロケータノードＬＣＮのセンシング結果やノードの状態情報の処理結果をイベント監視部ＥＶＭから受け取り、予め定めた送信条件に従ってＮＷＫ−２を介し、分散データ処理サーバＤＤＳに送信する。
【００４０】
また、センサノード管理部ＳＮＭは、自身が管理するセンサノードやロケータノードＬＣＮの管理情報（稼動状態、残電力など）を保持する。そして、分散データ処理サーバＤＤＳ−１からセンサノードやロケータノードＬＣＮに関する問い合わせがあった場合には、各センサノード、ロケータノードＬＣＮに代わって、管理情報を通知する。つまり、多数のセンサノード、ロケータノードＬＣＮを受け持つ分散データ処理サーバＤＤＳ−１は、センサノードやロケータノードＬＣＮの管理を基地局ＢＳＴに委ねることで、自身の負荷を低減することができる。
【００４１】
また、センサノード管理部ＳＮＭは、イベント監視部ＥＶＭが異常を検出した場合には、センサノードやロケータノードＬＣＮの管理情報を更新し、分散データ処理サーバＤＤＳ−１へ異常のあったセンサノードあるいはロケータノードＬＣＮを通知する。なお、センサノードあるいはロケータノードＬＣＮの異常とは、センサノードあるいはロケータノードＬＣＮからの応答がない場合や、センサノードあるいはロケータノードＬＣＮの電力が予め設定したしきい値以下になった場合、センシング値が予め定めた正常値の範囲を逸脱した場合など、センサノードあるいはロケータノードＬＣＮの機能が停止または停止に至る状態を示す。
【００４２】
また、センサノード管理部ＳＮＭは、コマンド制御部ＣＭＣ−ＤからセンサノードやロケータノードＬＣＮに対するコマンド（出力タイミングの設定）を受けた場合には、このコマンドをセンサノードやロケータノードＬＣＮに送信して設定を行い、設定の完了を示す通知をセンサノードやロケータノードＬＣＮから受信した後に、センサノードやロケータノードＬＣＮの管理情報を更新する。なお、センサノードやロケータノードＬＣＮの出力タイミングは、例えば、無線センサノードＷＳＮが基地局ＢＳＴ−１にデータを周期的に送信する際の周期を示す。
【００４３】
＜分散データ処理サーバＤＤＳ＞
分散データ処理サーバＤＤＳ−１は、以下の構成を備える。
ディスク装置ＤＳＫは、データベースＤＢを格納する。
コマンド制御部ＣＭＣ−Ｄは、基地局ＢＳＴ及び後述するディレクトリサーバＤＲＳと通信を行って、コマンド等の送受信を行う。
【００４４】
イベントアクション制御部ＥＡＣは、基地局のセンサノード管理部からのデータを受信する。具体的には、センサノードやロケータノードＬＣＮからの測定データを基地局ＢＳＴから受信するたびに、測定データに含まれるセンサノードやロケータノードＬＣＮのＩＤを取得し、後述するテーブル（図２７のイベントテーブルＥＴＢ）からセンサノードやロケータノードＬＣＮのＩＤに対応するイベントの発生ルールを読み込んで、測定データの値に応じたイベントの発生の有無を判定する。さらに、センサノードのＩＤに該当するイベントの発生に対応するアクションを実行する。
【００４５】
アクション実施の内容としては、アプリケーション開発者やシステム設計者などにより予め設定されたルールに基づいて、測定データを加工データに変換したり、測定データと加工データとをデータベース制御部ＤＢＣを通じてデータベースＤＢへ格納したり、また、ディレクトリサーバＤＲＳに通知を行ったりなどの処理を含む。
【００４６】
本実施形態では、図１で示すように、複数の基地局ＢＳＴに対して、これらのいくつかを地域的（または、場所的）に集約する複数の分散データ処理サーバＤＤＳを配置することで、多数のセンサノードおよびロケータノードＬＣＮからの情報を分散して処理することが可能になる。例えば、オフィスなどではフロア毎に分散データ処理サーバＤＤＳを設け、工場などでは建屋毎に分散データ処理サーバＤＤＳを設ければよい。
【００４７】
分散データ処理サーバＤＤＳ−１のディスク装置ＤＳＫは、基地局ＢＳＴから受信したセンサノードＷＳＮ、ＭＳＮ、ＦＳＮ、ロケータノードＬＣＮの測定データ、これらの測定データを加工した加工データ、基地局ＢＳＴや無線センサノードＷＳＮ、ＭＳＮ、有線センサノードＦＳＮおよびロケータノードＬＣＮに関する装置データ、およびロケータノードＬＣＮのＩＤ情報とロケータノードＬＣＮの設置位置情報を予め関連づけたロケータノード位置テーブルをデータベースＤＢとして格納する。
【００４８】
分散データ処理サーバＤＤＳ−１のデータベース制御部ＤＢＣは、イベントアクション制御部ＥＡＣから送られたセンサノードやロケータノードＬＣＮの出力である測定データをデータベースＤＢに格納する。また、必要に応じて測定データを数値処理したり、他データと融合することにより得られる加工データをデータベースＤＢに格納したりする。なお、装置データは管理者端末ＡＤＴなどからの要求に応じて随時更新される。
【００４９】
さらに、ロケータノードＬＣＮが検出したセンサノードＩＤ情報に対し、該ロケータノードＩＤ情報からロケータノード位置テーブルを用いて設置位置を呼び出してセンサノードの位置として関連づけ、センサノードの位置とセンシングデータを対応づけてディレクトリサーバＤＲＳに送信する。なお、複数のロケータノードＬＣＮのセンサノード検知領域の重複領域内にセンサノードが存在した際等、複数のロケータノードから同一のセンサノードのＩＤ情報が同期して送られてきた場合には、上記イベントアクション制御部ＥＡＣで説明したイベント発生に対応するアクションの１つとして予め設定された、後述する複数のロケータノードがセンサノードを検知した場合の処理を実行することにより、センサノードの位置を関連づける。
【００５０】
＜ディレクトリサーバＤＲＳ＞
複数の分散データ処理サーバＤＤＳを管理するディレクトリサーバＤＲＳは、以下の構成を備える。  セッション制御部ＳＥＳは、ネットワークＮＫＷ−１を介して接続されたアプリケーションシステムＡＰＳや管理者端末ＡＤＴからの通信を制御する。
【００５１】
モデル管理部ＭＭＧは、アプリケーションシステムが利用し易い実世界のモデル（オブジェクト）と、分散データ処理サーバＤＤＳがセンサノードから収集した測定データもしくは加工データ、ロケータノードから収集したセンサノード検出情報に基づいて決定したセンサノードの位置情報との対応関係を実世界モデルテーブルＭＴＢに設定した実世界モデルリストＭＤＬによって管理する。
【００５２】
ディレクトリサーバＤＲＳは、実世界モデルに相当する測定データもしくは加工データの存在場所の位置情報（ＵＲＬなどのリンク）も管理している。つまり、アプリケーションシステム開発者は、実世界モデルを指定することで、時々刻々と変化するセンサノードやロケータノードＬＣＮの測定情報にダイレクトにアクセス可能となる。センサノードやロケータノードＬＣＮからの測定データ、加工データおよび位置情報データの履歴は、時間の経過につれて増大するのに対し、実世界モデル情報は時間が経過してもサイズが変化することはなく、その内容のみが変化する。この実世界モデルの詳細については後述する。
【００５３】
なお、実世界モデルテーブルＭＴＢは、ディレクトリサーバＤＲＳの所定のストレージ装置（図示省略）などに格納される。
【００５４】
ディレクトリサーバＤＲＳのアクション制御部ＡＣＣは、分散データ処理サーバＤＤＳのイベントアクション制御部ＥＡＣやコマンド制御部ＣＭＣ−Ｄと通信を行って、アプリケーションシステムＡＰＳや管理者端末ＡＤＴからのイベントアクションの設定要求を受け付ける。そして、受け付けたイベントまたはアクションの内容を実世界モデルテーブルＭＴＢの情報を参照して解析し、解析結果に応じたディレクトリサーバＤＲＳと分散データ処理サーバＤＤＳ−１〜ｎ間の機能分担を設定する。なお、一つのアクションやイベントは、一つの分散データ処理サーバＤＤＳだけではなく、複数の分散データ処理サーバＤＤＳ−１〜ｎに関与する場合もある。
【００５５】
検索エンジンＳＥＲは、セッション制御部ＳＥＳが受け付けたオブジェクトに対する検索要求に基づいて、実世界モデルテーブルＭＴＢの情報を参照し、分散データ処理サーバＤＤＳのデータベースＤＢに対して検索を実行する。
【００５６】
なお、検索要求がクエリーであれば、クエリーの内容に従ったデータベースＤＢの対応付けと、クエリーのＳＱＬ（Structured Query Language）変換を実行し、検索を実行する。なお、検索対象となるデータベースＤＢは、複数の分散データ処理サーバＤＤＳにまたがる場合がある。また、最新データ取得（ストリーム）はアクション制御部ＡＣＣのアクションの設定にて対応できる。例えば、該当のデータを常にアプリケーションシステムＡＰＳに転送するようなアクションの設定を、該当する分散データ処理サーバＤＤＳのイベントアクション制御部ＥＡＣに設定しておけばよい。
【００５７】
次に、装置管理部ＮＭＧは、ネットワークＮＷＫ−１に接続されてセンサネットワークを構成する分散データ処理サーバＤＤＳと、分散データ処理サーバＤＤＳに接続された基地局ＢＳＴ、基地局ＢＳＴに接続されたセンサノードやロケータノードＬＣＮを統合的に管理するものである。装置管理部ＮＭＧでは、分散データ処理サーバＤＤＳ、基地局ＢＳＴ、センサノード、ロケータノードＬＣＮの登録や検索に関するインターフェースを管理者端末ＡＤＴ等に提供し、それぞれの装置の状態や、センサノードがロケータノードＬＣＮの状態を管理する。
【００５８】
装置管理部ＮＭＧは、分散データ処理サーバＤＤＳや基地局ＢＳＴ、センサノード、ロケータノードＬＣＮに対してコマンドを発行することができ、このコマンドによりセンサネットワークのリソースを管理する。なお、センサノードやロケータノードＬＣＮは上位となる基地局ＢＳＴのコマンド制御部ＣＭＣ−Ｂを介して装置管理部ＮＭＧからコマンドを受け、基地局ＢＳＴは上位の分散データ処理サーバＤＤＳのコマンド制御部ＣＭＣ−Ｄを介して装置管理部ＮＭＧからコマンドを受ける。
【００５９】
なお、コマンド制御部ＣＭＣ−Ｄを介して装置管理部ＮＭＧが発行するコマンドとしては、例えば、リセット、パラメータ設定、データ消去、データ転送、定型イベント／アクション設定等がある。
【００６０】
＜センサノードの一例＞
次に、センサノードの一例を図３および図４に示す。
図３は、無線センサノードＷＳＮの一例を示すブロック図である。
センサＳＳＲは、測定対象の状態量（温度、湿度、照度、位置等）または状態量の変化を測定する。
アクチュエータＡＡＴは、ＬＥＤやスピーカー、振動モータ、液晶表示モニタ等の出力デバイスおよびそれらを駆動するドライバで構成される。
【００６１】
無線処理部ＷＰＲは、基地局ＢＳＴから送られてきたコマンドや応答等の無線通信を、アンテナＡＮＴを介してＬＮＡ（ローノイズアンプ）で増幅した後受信する受信回路と、センサノードＷＳＮで生成した信号を、ＰＡ（パワーアンプ）で増幅した後アンテナＡＮＴを介して基地局ＢＳＴに送信する送信回路と、受信回路、送信回路をコントローラＣＮＴからの制御信号に基づいて制御する制御回路で構成される。
【００６２】
コントローラＣＮＴは、予め設定された周期、もしくは不定期にセンサＳＳＲの測定データを読み込み、この測定データに予め設定したセンサノードのＩＤを加えて無線処理部ＷＰＲに転送する。測定データにはセンシングを行った時間情報をタイムスタンプとして与える場合もある。また、無線処理部ＷＰＲを介して受信したコマンドや、センシング結果、予め指定されている処理手順に基づいてアクチュエータＡＡＴを制御し、出力デバイスを駆動する。さらに、電源ＰＯＷを制御してセンサノードを構成する各要素の電力供給状態を制御する。なお、図３には図示していないが、コントローラＣＮＴブロックには、種々のデータや制御プログラムを保持するためのメモリ等のストレージデバイスが含まれる。
【００６３】
また、コントローラＣＮＴは受信したコマンドを解析して、所定の処理（例えば、設定変更など）を行う。また、コントローラＣＮＴは、電源ＰＯＷの残電力（または充電量）を監視し、残電力がしきい値を下回ると、無線処理部ＷＰＲから基地局ＢＳＴに対して電力がなくなる警報を送信する。
【００６４】
無線処理部ＷＰＲでは、限りのある電力で長時間測定を行うため、間欠的に動作して電力消費を低減させることが望ましい。例えば、図４で示すように、スリープ状態ＳＬＰではコントローラＣＮＴはセンサＳＳＲの駆動を停止し、所定のタイミングでスリープ状態から動作状態ＷＡＫに切り替わって、センサＳＳＲを駆動して測定データを送信するように構成する。
【００６５】
電源ＰＯＷは、基地局ＢＳＴと通信を行う無線処理部ＷＰＲと、各ブロックＳＳＲ、ＡＡＴ、ＣＮＴ、ＷＰＲに電力を供給する。また、電池（二次電池を含む）を利用するのが一般的であると考えられるが、それに限定されず、太陽電池や振動発電等の自律発電機構を具備する、あるいはモバイルセンサノードでなければ、外部電源から電源を供給する構成とすることもできる。
【００６６】
なお、図３は一つのセンサノードに一つのセンサＳＳＲ、およびアクチュエータＡＡＴを備えた例であるが、複数のセンサＳＳＲ、およびアクチュエータＡＡＴを配置しても良い。あるいは、センサＳＳＲに代わって、固有の識別子ＩＤを格納したメモリを設けても良く、センサノードをタグとして使用しても良い。また、無線モバイルセンサノードＭＳＮ、有線センサノードＦＳＮも図３、図４と同様に構成することが可能である。
【００６７】
＜ロケータノードの一例＞
ロケータノードＬＣＮの例を図７から図１４に示す。
図７は、ロケータノードＬＣＮの一構成例である。ロケータノードは、少なくとも、センサノードから基地局への通信を傍受及び基地局ＢＳＴとの通信を行う無線処理部ＷＰＲと、各ブロックＣＮＴ、ＷＰＲに電力を供給する電源ＰＯＷと、無線処理部ＷＰＲ、および電源ＰＯＷを制御するコントローラＣＮＴと、送受信を行うアンテナＡＮＴから構成される。コントローラＣＮＴは、傍受した情報にロケータノードのＩＤを加えて無線処理部に転送する。図７におけるコントローラＣＮＴ、無線処理部ＷＰＲ、電源ＰＯＷ、およびアンテナＡＮＴは、図３における無線センサノードＷＳＮと全く同じ構成要素で構成する事ができる。ロケータノードＬＣＮの主たる目的は、近傍のセンサノードの通信を傍受して、その情報を基地局ＢＳＴに伝送することであるため、図３に記載されているセンサＳＳＲ、アクチュエータＡＡＴは記載されていないが、図３の無線センサノードＷＳＮ構成例と同様に、センサＳＳRとアクチュエータＡＡＴを搭載していても良い。従って、図３の無線センサノードＷＳＮと全く同じハードウェアでロケータノードＬＣＮを構成する事も可能である。
【００６８】
ロケータノードＬＣＮは、少なくとも近傍のセンサノードの通信を傍受するノード傍受モードと、基地局ＢＳＴとの間で通信を行う通信モードを備える。通常の通信モードでは、基地局ＢＳＴとの通信を安定に行うために、通信可能距離ができるだけ大きくなるように設定し、ノード傍受モードでは、アプリケーションの位置特定精度要求に応じて、センサノード検知領域ＮＤＡを設定する。このセンサノード検知領域の設定は、コントローラが無線処理部を制御することにより行う。
【００６９】
図７の構成例は、通信モードとノード傍受モードをひとつのハードウェア構成で実現する例である。例えば、通信モードにおけるロケータノードＬＣＮ−基地局ＢＳＴ間の最大通信可能距離をＡm、ノード傍受モードにおける検知領域半径をBｍ（Ａ＞B）と設定する場合、図７の無線処理部ＷＰＲにおけるローノイズアンプＬＮＡおよび受信回路において、通信モード時は最大Ａm遠方の基地局ＢＳＴから到達する電波を受信し、ノード傍受モード時は、最大Bmを超える距離だけ離れたセンサノードからの通信は検知しないようにする必要がある。
【００７０】
このための第１の方法は、ＲＳＳＩ（Ｒｅｃｅｉｖｅｄ  Ｓｉｇｎａｌ  Ｓｔｒｅｎｇｔｈ  Ｉｎｄｉｃａｔｏｒ）と呼ばれる電波強度の指標を用いる方法である。つまり、該ＲＳＳＩの値がBmであるセンサノードから発信された電波を傍受した際の強度を閾値とし、ノード傍受モード時には、傍受した電波のＲＳＳＩが該閾値より大きい場合にのみ、傍受した電波からセンサノードのＩＤ情報を取得して伝送する方法である。閾値を調整することにより検知領域の半径を変更することができる。
【００７１】
閾値を超えるかどうかの判定は、受信回路を制御する制御回路で行っても良いし、コントローラＣＮＴで行う事も可能である。
【００７２】
第２の方法は、ローノイズアンプＬＮＡのゲインを予め設定した距離に合わせて調整する方法である。通常、ＬＮＡのゲインは、受信した電波強度に応じて、これを最大利得で扱うようＡＧＣ（オートゲインコントロール）機能等によって調整する。これにより、受信電波の強度の差を吸収し、以降の受信処理に必要な信号レベルに増幅して受信処理を行うことが可能になる。ただし、受信レベルが小さすぎると、ノイズに埋もれる等により信号の信頼性が保証できなくなるため、ＡＧＣで最大に増幅してもある信号レベルを超えない信号は有効な信号とみなさず無視する等の処理が必要になる。
【００７３】
これに対し、予め設定した検知領域半径に等しい距離だけ離れたセンサノードの発信した電波強度を、受信可能な最小レベルとして扱うように設定すれば、該電波強度を下回る信号を受信した際には有効な信号として扱う事ができなくなる。そのための設定方法として、ＬＮＡのゲインを検知領域半径に等しい距離のノードが発信した電波強度が受信可能な最小レベルとなる値に固定すれば、ノード傍受モード時に、予め設定した検知領域内に存在するセンサノードの通信のみを検知する事が可能になる。また、ゲインの固定値を調整することにより検知領域の半径を変更する事ができる。また、ＬＮＡのゲインを、上記最小レベルを上限とし、ＡＧＣによって増幅することにより、以後の処理のための信号レベルを最適値に調整しても良い。この場合は、ＡＧＣで実際に適用した増幅率の情報を後の受信処理部に通知し、もとの信号レベル値がわかるようにする必要がある。
【００７４】
なお、上記第１の方法と、第２の方法を組み合わせて使用することも可能である。
一般に発信源から受信器のアンテナに届く無線電波は、発信源から直接届く直接波と、壁や床、天井、設置物等による反射、回折、透過の結果、複数の経路（マルチパス）を経由して届く間接波を重ね合せたものになる。それぞれの電波は、アンテナまでの経路が異なるために伝搬距離が異なり、その結果到達時間がずれる。このために生じる位相差によって、電波が強めあったり弱めあったりする（マルチパスフェージング）。電波の伝達条件は、発信源と受信回路の位置、周囲環境の空間的、時間的特性によって変化するため、到達した電波の強度は一定にはならない。この電波強度のゆれにより、検知領域の設定半径には誤差が生じることがある。通常、発信源と受信器アンテナ間の距離が長いほど、マルチパスフェージングの影響は大きくなると考えられる。
【００７５】
一方、ロケータノードＬＣＮを用いてセンサノードの位置を特定する本発明の方法は、電波強度を用いた距離推定に基づいた３辺測量の方法に比べ、発信源と受信器アンテナ間の距離が短くなるため、マルチパスフェージングによる測定誤差の影響が小さくなることが期待できる。これにより、測定精度があがり、また電波強度変動の影響を低減する複雑な計算を必要としないため、処理速度が向上する。
【００７６】
図８は、上記通信モードとノード傍受モードを、それぞれに適したアンテナに切り替えることによって実現する例である。図８の構成では、通信用アンテナＣＡＴと傍受用アンテナＳＡＴを切り替えるスイッチを設け、通信時は通信用アンテナＣＡＴを接続し、ノード傍受時は傍受用アンテナＳＡＴを接続する。傍受用アンテナＳＡＴには、通信用アンテナＣＡＴより受信感度の低いアンテナを用い、アンテナ感度は、設定したい検知領域半径に合わせて調整する。
【００７７】
図９は、通信用と傍受用に受信回路を２つ用意する構成例である。無線処理部ＷＰＲ内に、通信用処理部CPRと、傍受用処理部ＳＰＲを設ける。通信用処理部CPRは、通信モード時に基地局ＢＳＴの信号を受信するための受信回路と、基地局ＢＳＴに信号を発信するための発信回路を持つ。傍受用処理部ＳＰＲは、ノード傍受モード時に、予め設定した検知領域半径内に存在するセンサノードの通信のみを傍受するように調整した受信回路を持つ。制御回路は、通信モード時には通信用処理部ＣＰＲを用いて通信を行い、ノード傍受モード時には、傍受用処理部ＳＰＲを用いてセンサノードの通信を傍受する。本構成例の場合は、通信モードとノード傍受モードを同時に実行することが可能である。また、図１０に示すように、通信用処理部に通信用アンテナＣＡＴ、傍受用処理部に傍受用アンテナＳＡＴを接続しても良い。
【００７８】
＜ロケータノードによるセンサノードの位置の特定＞
図５（Ａ）〜（Ｃ）は、ロケータノードＬＣＮによるモバイルセンサノード検知方法を説明する図である。ロケータノードＬＣＮは、センサネットワークＳＮＳの一構成要素として位置づけられ、センサノードと同じ通信方式によって基地局ＢＳＴと通信する。ロケータノードＬＣＮは、前述したように予め設定された領域内でセンサノードから基地局への通信を傍受し、該センサノードのＩＤ等の情報を抽出して基地局ＢＳＴを介して分散データ処理サーバＤＤＳに伝送する。
【００７９】
図５(Ａ)は、ロケータノード及びセンサノードが基地局と通信領域内に存在し、かつセンサノードがロケータノードの検知領域内に存在する場合である。基地局は、センサノードからセンシングデータとセンサノードＩＤ情報を含むデータ、及びロケータノードから傍受したセンサノードＩＤ情報とロケータノードＩＤ情報を含むデータを受信する。また、サーバは、基地局から受信したデータに含まれる２つセンサノードＩＤ情報が同じ場合に、ロケータノードの位置をセンサノードの位置とする。これにより、センシングデータとノードの位置を対応づけることができる。
【００８０】
図５（Ｂ）は、ロケータノードのみ基地局と通信領域内に存在し、かつセンサノードがロケータノードの検知領域に存在する場合である。基地局は、ロケータノードからの送信データのみ受信し、センサノードからの送信データを受信しない。これにより、サーバは、センサノードがロケータノードの検知範囲内かつ基地局と通信領域外に存在することを検出する。なお、該センサノードは、ロケータノードが属するセンサネットシステムが管理しているセンサノードでなくても良い。その場合は、ロケータノードの検知領域内に所属不明のセンサノードが存在する事を検出する。この時、センサノードの送信データが、該センサネットシステムが管理するセンサノードと同じフォーマットであれば、所属不明のセンサノードのＩＤ情報を取得し、フォーマットが異なる場合は、所属、およびＩＤ不明のセンサノードであることを示す情報をサーバに送信する。これにより、サーバ、あるいはアプリシステムにおいて、所属不明のセンサノードが存在する事をシステム管理者に通知する事ができる。
【００８１】
図５（Ｃ）は、ロケータノード及びセンサノードが基地局と通信領域内に存在し、かつセンサノードがロケータノードの検知範囲外に存在する場合である。基地局は、センサノードから受信する送信データからセンサノードＩＤ情報を抽出するが、抽出したセンサノードＩＤ情報と同じセンサノードＩＤ情報を含むデータをロケータノードから受信しない。これにより、サーバは、センサノードが基地局との通信範囲内かつロケータノードの検知範囲外に存在することを検出する。
【００８２】
このように、本発明ではロケータノードを用いて、ロケータノードの検知領域、及び基地局の通信領域の少なくとも何れかに存在するノードの位置を特定する。そのため、３辺測量方式と比較して、基地局と端末間の正確な距離を推定する必要がなく、基地局の厳密な位置決めが不要となる。また、基地局間の正確な時間同期が不要となる。基地局を密に配置することが不要となり、コストが低減される。さらに、ロケータノードは、壁や床、設置物など遮蔽物による電波強度に影響を与える要素を考慮して、ユーザが所望とする場所に設置できるため、電波強度変動を低減するための複雑な計算が不要となる。さらには、センサノードはあくまで基地局に対してセンシングデータを送信するだけであって、位置測位のための信号を基地局やロケータノードに送信する必要がない。そのため、センサノードの消費電力を低減することができる。
【００８３】
図６は、ロケータノードＬＣＮによって移動体の位置を特定する概念を示している。ここでは人ＰＳ−１を移動体とし、人ＰＳ−１がモバイルセンサノードＭＳＮ−１を持っているものとする。ＬＣＮ−１〜３はそれぞれロケータノードを表し、ＮＤＡ−１〜３は、ロケータノードＬＣＮ−１〜３それぞれがセンサノードの通信を傍受可能なセンサノード検知領域を表している。今、人ＰＳ−１はロケータノードＬＣＮ−１の検知領域ＮＤＡ−１内に存在するため、モバイルセンサノードＭＳＮ−１が基地局と通信を行った際に、ロケータノードＬＣＮ−１が該通信を傍受し、ＭＳＮ−１のＩＤ情報を取得して分散データ処理サーバＤＤＳに伝送する。分散データ処理サーバＤＤＳは、各ロケータノードＬＣＮの設置位置情報をテーブル（図２におけるＤＳＫ内のロケータノード位置テーブル）として管理しており、ロケータノードＬＣＮ−１によるモバイルセンサノードＭＳＮ−１検知情報に基づいて、ＭＳＮ−１を持っている人ＰＳ−１の位置がロケータノードＬＣＮ−１付近であると判断する。次に、人ＰＳ−１がロケータノードＬＣＮ−２の検知領域ＮＤＡ−２内に移動したとする。この領域内でモバイルノードＭＳＮ−１が通信を行うと、ロケータノードＬＣＮ−２がその通信を傍受することによってＭＳＮ−１の存在を検知し、ＭＳＮ−１のＩＤ情報を該通信から取得して分散データ処理サーバＤＤＳに伝送する。分散データ処理サーバＤＤＳは、ロケータノード位置テーブルに基づいて、ＭＳＮ−１を持っている人ＰＳ−１の位置がロケータノードＬＣＮ−２付近であると判断する。このように、移動体が移動しながらロケータノードＬＣＮの検知領域ＮＤＡ内で通信を行う度に、センサネットワークシステムＳＮＳは、移動体の位置を、近傍のロケータノードＬＣＮの位置として特定する事が可能になる。
【００８４】
図２０〜２２を用いて、センサノードの位置を特定する方法の詳細を説明する。
図２０は、無線センサノードＷＳＮが発信した通信を、ロケータノードＬＣＮが傍受した場合のデータフローの例を説明する図である。
無線センサノードＷＳＮからは、センサノードの送信時通信パケット例として図示するように、センサネットのＰＡＮ  ＩＤであるＳ＿ＰＩＤとローカルアドレスＳ＿ＬＡＤをパケットヘッダに持ち、センサ値等のデータ（Ｄａｔａ１、Ｄａｔａ２．．．）をデータフィールドに持つパケットが基地局ＢＳＴに送信される。図３の無線センサノードの構成を例にとると、コントローラＣＮＴからの指示等によりセンサＳＳＲが取得したセンサ値（Ｄａｔａ１、Ｄａｔａ２．．．）は、コントローラＣＮＴ内の図示されていないストレージデバイスに保持されている該無線センサノードＷＳＮ自身のローカルアドレスＳ＿ＬＡＤと、自身が所属するＰＡＮ  ＩＤであるＳ＿ＰＩＤとともに通信パケットに加工され、無線処理部ＷＰＲを介して送出される。
【００８５】
ロケータノードＬＣＮで行う処理について、図２１を用いて説明する。ロケータノードＬＣＮは、ロケータノードの電源投入時、またはリセット時には（Ｓ１０１）、接続可能な基地局を検索して接続するために、複数存在する無線チャンネルｃｈ−ｉ（ｉ＝１〜N）を順番に使用して（Ｓ１０２）、ロケータノードが持つグローバルアドレスと共に接続要求信号を送信する（Ｓ１０３）。これに対し特定の基地局から接続許可信号を受信した時に（Ｓ１０４）、そのチャンネルｃｈ−ｉを使用チャンネルとして決定し（Ｓ１０５）、該基地局が指定したＰＡＮ  ＩＤとローカルアドレスを取得して以降の通信で使用する（Ｓ１０６）。本フローは、基地局からの接続許可信号を受信するまで繰り返す（S１０７、Ｓ１０８）。どの無線チャンネルからも接続許可信号を受信しなかった場合は、応答できる基地局が通信範囲に無いものと判定し、指定時間スリープした後リトライする（Ｓ１０９）。
【００８６】
基地局との接続が確立した後、ロケータノードはノード傍受モードで待機し（Ｓ１１０）、定期的にノードからの通信検出を行ってノードの通信を検知した時にノードのＰＡＮ  ＩＤ、ローカルアドレス、ＲＳＳＩを取得する（Ｓ１１１、Ｓ１１２）。ノードの通信を検知できなかった場合はノード傍受モードに復帰する。
【００８７】
ノードのＰＡＮ  ＩＤ、ローカルアドレス、ＲＳＳＩを取得したら検知処理モードに移行し、検知処理を実行する（Ｓ１１３）。検知処理によって取得したノードのＰＡＮ  ＩＤとローカルアドレスが、予め定めた値の範囲に含まれる有効なＰＡＮ  ＩＤとローカルアドレスであった場合には（Ｓ１１４）、通信モードに移行し（Ｓ１１５）、ロケータノード自身のＰＡＮ  ＩＤ、ローカルアドレスとともに、検知したセンサノードのＰＡＮ  ＩＤ、ローカルアドレス、検知処理モードＭＯＤＥ、および通信を傍受した際の電波強度ＲＳＳＩを基地局ＢＳＴに送信した後（Ｓ１１６）、ノード傍受モードに復帰する。
【００８８】
なお、取得したＰＡＮ  ＩＤとローカルアドレスが有効と認められなかった場合には、無視するか異常検知情報を基地局ＢＳＴに送信する等の例外処理を行った後（Ｓ１１７）ノード傍受モードに復帰する。
【００８９】
図７のロケータノードＬＣＮの構成を例にとると、無線処理部ＷＰＲが無線センサノードＷＳＮのパケットを傍受し、コントローラＣＮＴに送る。コントローラＣＮＴは、該パケットのパケットヘッダからＳ＿ＰＩＤとＳ＿ＬＡＤを取得し、コントローラＣＮＴ内の図示されていないストレージデバイスに保持されているロケータノードＬＣＮ自身のローカルアドレスL＿ＬＡＤと、自身が所属するＰＡＮ  ＩＤのＬ＿ＰＩＤとともに通信パケットに加工され、無線処理部ＷＰＲを介して送出される。
【００９０】
図２０の例では、その他分散データ処理サーバＤＤＳやアプリケーションで利用する情報として、図１１〜１４で説明するノード検知処理モード（逐次送信型のノード検出信号か、適時送信型のノード検出信号か）ＭＯＤＥ、および無線センサノードＷＳＮの通信を傍受した時の電波強度ＲＳＳＩも合わせて送信している。ロケータノードＬＣＮが図１４で説明する適時通信型で動作している場合は、無線センサノードＷＳＮがロケータノードＬＣＮの検知領域から離脱した際に、ノード離脱信号を通信パケットとして送信する。この場合のデータフィールドには、少なくとも無線センサノードＷＳＮのＰＡＮ  ＩＤであるＳ＿ＰＩＤ、ローカルアドレスＳ＿ＬＡＤ、およびノード検知処理モード（適時通信型のノード離脱信号であることを示すモード）ＭＯＤＥを含む。
【００９１】
次に、基地局ＢＳＴで行う処理について図２２を用いて説明するが、特に本発明に関連するセンサノードやロケータノードＬＣＮからの通信パケットを受信した際の処理のみを記載し、初期設定や終了処理、サーバ間処理等、基地局ＢＳＴが行う他の処理に関する記載は省略する。
【００９２】
基地局は、ノードからの通信を受信する準備が完了した時点で（Ｓ２０１）、ノードからの通信を受信するモードで待機し（Ｓ２０２）、無線センサノードやロケータノードＬＣＮから送信された通信パケットを受信した時（Ｓ２０３）、受信パケットヘッダからノードのＰＡＮ  ＩＤとローカルアドレスを取得する（S２０４）。そして、ＰＡＮ  ＩＤが基地局ＢＳＴの所属するＰＡＮ  ＩＤと等しい場合に、正しいＰＡＮ  ＩＤと判定し（Ｓ２０５）、ローカルアドレス⇔グローバルアドレス変換テーブルを用いてＰＡＮ  ＩＤとローカルアドレスをグローバルアドレスに変換する（Ｓ２０６）。
【００９３】
受信した通信パケットが無線センサノードＷＳＮから送信された場合は、ＰＡＮ  ＩＤはＳ＿ＰＩＤ、ローカルアドレスはＳ＿ＬＡＤとなり、グローバルアドレスはＳ＿ＧＡＤとなる。また、受信した通信パケットがロケータノードＬＣＮから送信された場合は、ＰＡＮ  ＩＤはＬ＿ＰＩＤ、ローカルアドレスはL＿ＬＡＤとなり、グローバルアドレスはＬ＿ＧＡＤとなる。
【００９４】
基地局ＢＳＴは、センサネット管理部ＳＮＭで管理されているグローバルアドレスを照合し、受信したパケットに含まれるローカルアドレスを変換したグローバルアドレスが無線センサノードＷＳＮに付与されたものである場合には（Ｓ２０８）、受信したパケットのデータフィールドからセンシングデータＤａｔａ１、Ｄａｔａ２、．．．を取得する（Ｓ２０９）。データ処理サーバＤＤＳに送信した後（Ｓ２１０）、ノードからの通信を受信するモードに復帰する。正しいＰＡＮ  ＩＤと判定されなかった際には、無視するか、異常検知情報として例外処理した後（Ｓ２０７）、ノードからの通信を受信するモードに復帰する。
【００９５】
受信したパケットに含まれるローカルアドレスを変換したグローバルアドレスがロケータノードＬＣＮに付与されたものである場合には（Ｓ２１１）、データフィールドから検知した無線センサノードのＰＡＮ  ＩＤとローカルアドレスを取得する（Ｓ２１２）。該ＰＡＮ  ＩＤが、基地局ＢＳＴが所属するＰＡＮ  ＩＤと等しい場合に、正しいＰＡＮ  ＩＤと判定し（Ｓ２１４）、ローカルアドレス⇔グローバルアドレス変換テーブルを用いてＰＡＮ  ＩＤとローカルアドレスをグローバルアドレスに変換する（Ｓ２１５）。正しいＰＡＮ  ＩＤと判定されなかった際には、無視するか、異常検知情報として例外処理した後（Ｓ２１７）、ノードからの通信を受信するモードに復帰する。そして、ロケータノードのグローバルアドレス、検知したセンサノードのグローバルアドレス、ノード検知処理モードＭＯＤＥ、検知した通信の電波強度ＲＳＳＩを分散データ処理サーバＤＤＳに送信する（Ｓ２１６）。受信したパケットが無線センサノードＷＳＮ、ロケータノードＬＣＮのいずれでもない場合は、無視するか、異常検知情報として例外処理した後（Ｓ２１３）、ノードからの通信を受信するモードに復帰する。
【００９６】
分散データ処理サーバのＤＢＣは、受信したＷＳＮのＳ＿ＧＡＤとＬＣＮに含まれるＳ＿ＧＡＤとを照合し、同じ場合には、Ｌ＿ＧＡＤの位置をＳ＿ＧＡＤの位置とする。さらに、ロケータノード位置テーブルを用いて、Ｓ＿ＧＡＤの位置を特定する。
【００９７】
なお、センサノードが別の基地局のネットワークに移動した場合には、ノードからの要求に対して通常その移動先の基地局のＰＡＮ  ＩＤが新たに付与されるが、その新しいＰＡＮ  ＩＤの付与が行われる前の段階で、センサノードが基地局と通信を行い、またロケータノードがその通信を傍受することもありうる。上記の説明では、そのようなセンサノードのＰＡＮ  ＩＤが、基地局の所属するＰＡＮ  ＩＤと異なる場合に、例えば無視するか、異常検知情報として処理する等の例外処理を行うようにしている。しかし、基地局ＢＳＴが、他のＰＡＮに所属する別の基地局ＢＳＴ’のローカルアドレス⇔グローバルアドレス変換テーブルを持つようにすれば、基地局ＢＳＴと同じＰＡＮに所属するロケータノードＬＣＮが、別のＰＡＮに所属する無線センサノードＷＳＮ’の通信パケットを傍受した場合でも、該通信パケットに含まれるＰＡＮ  ＩＤとローカルアドレスをグローバルアドレスに変換することが可能になる。
【００９８】
また、ロケータノードの検知領域内に別のロケータノードが存在する場合、タイミングによっては、ひとつのロケータノードＬＣＮ−１が別のロケータノードＬＣＮ−２を検知する可能性がある。この場合は検知した側のロケータノードＬＣＮ−１が送信したノード検出信号パケットを、検知された側のロケータノードＬＣＮ−２が逆に検知し、ノード検出信号パケットを送信し、再びＬＣＮ−１がそのパケットを検知するといった巡回状態になる。そこで、ロケータノードのノード傍受モードに一定のパケット不感時間を設け、同一ノードから短時間に連続して送信された通信を検知した際には無視する等の制御を行う。
【００９９】
例えば、他のノードが発信した通信パケットをロケータノードＬＣＮが検知して検出信号パケットを送信するまでの時間に、処理検出処理にかかる時間を加え、さらに適当なマージン時間を加えた時間を不感時間とすれば良い。この不感時間に比較して、同一のセンサノードが通信パケットを発信する間隔を十分長く設定すれば、センサノードからの通信を検出しそこなう事は無い。なお、各ノードが発信する通信パケットに、予めノードの種別をあらわす識別符号を付加しておき、ロケータノードがパケットを受信した時に、受信したパケットがロケータノードの識別符号を含む場合にはノード検知処理を行わないようにしても良い。あるいは、各ロケータノード内のストレージデバイスに、検知する可能性のあるロケータノードのローカルアドレスを保持しておき、検知処理を行う前にアドレス照合を行って、受信したパケットに含まれるローカルアドレスが、保持してあるロケータノードのローカルアドレスと一致する場合にはノード検知処理を行わないようにする事も可能である。
【０１００】
本実施例では、ロケータノードが送信するノード検出信号パケットのデータフィールドに検知したセンサノードのＰＡＮ  ＩＤとローカルアドレスを入れたが、ノード検出信号パケットヘッダのロケータノードのショートアドレス格納領域に検知したセンサノードのローカルアドレスを入れ、データフィールドにロケータノードが保持しているグローバルアドレスを入れて送信することも可能である。この場合、基地局は、センサノードからの通信パケットと同じ処理ルーチンを用いてパケットヘッダのローカルアドレスのみをグローバルアドレスに変換し、データフィールドに格納されているロケータノードのグローバルアドレスを、センサ値とみなしてそのまま分散データ処理サーバＤＤＳに送信すれば良い。そのため、基地局内に、ロケータノードからのパケットかどうかを判定し、ロケータノードからのパケットの場合にのみデータフィールドからセンサノードのローカルアドレスを取得してグローバルアドレスに変換するという処理部を設ける必要がなくなり、基地局の処理が単純になる。
【０１０１】
＜ロケータノードの状態変化＞
図１１は、センサノードがロケータノードの検知領域内に存在する時の、センサノードの状態変化と、それに対応したロケータノードの状態変化を説明する図である。センサノードは、定期的、あるいはセンシング結果等なんらかのイベントドリブンで通信を行うものとし、通信モードと非通信モードを交互に繰り返しているとする（図１１の下のグラフ）。
【０１０２】
一方、ロケータノードはノード傍受モード、検知処理モード、通信モードの３つのモードを遷移するものとする（図１１の上のグラフ）。ロケータノードが傍受モードにある時に（図２１のＳ１１０）、センサノードが通信を行うと、ロケータノードはその通信を検知し、検知処理モードに移行する（図２１のＳ１１３）。検知処理モードでは、傍受したセンサノードの信号からセンサノードのＩＤ情報を取得し、通信モードに移行して（図２１のＳ１１５）、取得したセンサノードのＩＤ情報を送信（図２１のＳ１１６）した後、また傍受モードに移行する。ロケータノードは、センサノードからの通信を傍受する度に逐次一連の動作を行う。このように、自動的に傍受モードに戻るため、より多くの情報を取得することができる。
【０１０３】
図１２は、ロケータノードの検知領域にセンサノードが２つ存在する場合の状態変化を説明する図である。ロケータノードは、センサノード１の通信を検知した時にはセンサノード１のＩＤ情報をノード１検出信号として送信し、センサノード２の通信を検知した時にはセンサノード２のＩＤ情報をノード２検出信号として送信する。仮に、ロケータノードがノード傍受モード以外のモード時にセンサノードの通信が起きた場合は、ロケータノードはセンサノードの通信を傍受する事ができないが、この場合は次の通信時に傍受する。ロケータノードがセンサノードの通信を傍受できない期間をできるだけ短くするために、ロケータノード、およびセンサノードの通信時間を短くする、あるいはセンサノードの通信を再送する等の工夫を行っても良い。
【０１０４】
図１３は、センサノードが移動して、ロケータノードの検知領域からはずれた際の状態変化を説明する図である。図中に示すようにセンサノードが検知圏内に存在している間は、図１１と同様の状態変化を繰り返すが、センサノードが検知圏内から離脱した後は、ロケータノードはセンサノードの通信を検知できないため、ノード検出信号がロケータノードから送信されない。
【０１０５】
図１１から１３は、いずれもロケータノードがセンサノードの通信を傍受するたびに検知信号を送信する逐次通信型の方法であるが、センサノードの通信頻度が高い場合や、ロケータノードの検知領域内に多数のセンサノードが存在する場合には、ロケータノードから送信される検知信号の通信頻度が高くなり、トラフィックが増加する。
【０１０６】
そこで、図１４に示すようにロケータノードが最初にセンサノードの通信を検知した時にノード検出信号を送信し、ロケータノードがセンサノードの通信を検知できなくなった時に離脱信号を送信する適時通信型の方法を用いても良い。
【０１０７】
図１４においては、センサノードがロケータノードの検知領域に入った後、最初に行った通信をロケータノードが検知し、ノード検出信号を送信する。ロケータノードは、非検知判定時間を持ち、該非検知判定時間以内に同じセンサノードから次の通信を傍受した際には、センサノードの検知は行うが、検出信号は送信しない。センサノードが検知圏内から離脱した場合、あるいは他の要因で以後の通信が行われなかった場合等、最後に検知した通信から非検知判定時間以内に、ロケータノードが同じセンサノードから次の通信を検知できなかった場合には、ロケータノードは、非検知判定時間経過後にセンサノードが離脱したことを示す情報をセンサノードＩＤ情報に付加し、ノード離脱信号として送信する。
【０１０８】
また、非検知判定時間はセンサノードごとに規定される時間であって、あるセンサノードの非検知判定時間以内に異なるセンサノードから通信を検知しても、非検知判定時間の計測には影響しない。非検知判定時間は、予め定めた一律の値を用いても良いし、あるいは検知したセンサノードの通信間隔に合わせて調整した値を用いても良い。このためには、ロケータノード内のメモリにセンサノードのＩＤあるいは種類と、それに対応して非検知判定時間を決定する情報を記述したテーブルを保持し、検知したセンサノードのＩＤからテーブルを参照することにより、非検知判定時間を決定して設定する。または、最初にノード検出信号を送信した際に分散データ処理サーバＤＤＳに問い合わせ、非検知判定時間を決定する情報をＤＤＳからのコマンドとして受信して設定する事も可能である。
【０１０９】
ロケータノードを逐次通信型で動作させるか、適時通信型で動作させるかは、ロケータノードのコントローラＣＮＴに予め選択した処理を行うように実装する事も可能である。また、両方の方法を備え、ロケータノードに付属させたディップスイッチ等により切り替えても良い。さらに、システム管理者やアプリケーション開発者が選択した方法を、ディレクトリサーバＤＲＳ、分散処理サーバＤＤＳ、および基地局ＢＳＴを経由してコマンドとしてロケータノードに送信し、切り替える事も可能である。無線通信の伝送路の混雑状況等を観測する手段を設け、伝送路が混雑している場合には適時通信型、そうでない場合には逐次通信型を選択して切り替えコマンドをロケータノードに送信する処理をセンサネットシステムＳＮＳの機能によりアクションとして登録し、混雑状況をイベントとして取得した時に、分散データ処理サーバＤＤＳのイベントアクション制御部により判定して切り替えても良い。
【０１１０】
＜ロケータノードの配置＞
図１５〜１８は、観測フィールドにロケータノードを配置する例である。図中の示した小さい丸がロケータノードＬＣＮ、大きい丸がその検知領域ＳＮＡを表している。
図１５は、観測フィールド全域を複数のロケータノードの検知領域ＳＮＡでカバーする設定例である。この設定では、検知領域の半径ａを大きくすることにより、少ないロケータノードで観測フィールド全域をほぼカバーする事ができる。
【０１１１】
図１６は、同じ数のロケータノードを用いて、比較的小さい検知半径bをもつ検知領域を設定した例である。この設定では、少ないロケータノードで高い精度で位置を特定する事が可能であるが、観測フィールドの全域をカバーしていないため、センサノードの位置を特定できない領域がある。このような場合には、例えばモバイルセンサノードが検知された時間とロケータノードの配置をもとにモバイルセンサノードの移動速度、および移動方向を計算し、最後に観測された地点から現在までの移動方向と距離を時間積分することにより、おおよその位置を推定することができる。これにより、少ないロケータノードでも観測フィールドの全域をカバーすることができる。移動速度、移動方向の計算、およびこれに基づく位置推定は、アプリケーションシステムＡＰＳかディレクトリサーバＤＲＳで行う。
【０１１２】
図１７は、比較的小さい検知半径bの検知領域を持つ多数のロケータノードを、観測フィールドに密に配置する例である。この設定によれば、高い位置特定精度で観測フィールド全体を網羅する事が可能である。
【０１１３】
図１８は、観測フィールドの状況に合わせてロケータノードLCNの配置、および検知領域ＳＮＡの半径を設定する例である。例えば、おおよその位置がわかればよい領域は大きな検知半径ｄのロケータノードを粗く、細かく位置を特定したい領域には小さな検知半径ｂのロケータノードを密に配置する。その中間の領域には、中間の検知半径ｃのロケータノードを配置することにより、ロケータノードの数を大きく増やさずに、必要な精度と網羅性を実現することができる。
このように、ロケータノードの数と配置、検知領域の検知半径を調整することにより、観測フィールド、およびアプリケーションに最適な設定で位置特定を行う事が可能になる。
【０１１４】
図１９は、ロケータノードＬＣＮのノード傍受モード時に、アンテナに指向性を持たせる、もしくはアンテナの周囲に電波遮蔽物を設置する等により検知領域に指向性を制御した場合の例である。例えば店舗の商品陳列棚にロケータノードを設置し、モバイルセンサノードの位置を特定するアプリケーションを想定した場合、モバイルセンサノードが陳列棚の間の通路のどちら側にあるかを把握したい場合には、アンテナの回りに遮蔽物を設置する、指向性のあるアンテナを用いる等により検知領域の形状が上方からみて例えば半円になるように制御すれば、検知領域を設定した方向のみに限定する事が可能になる。また、例えば金属性の陳列棚等、十分な電波遮蔽を得られる設置物を遮蔽物として利用しても良い。
【０１１５】
＜センサネットワークの設置例＞
図２３は、分散データ処理サーバＤＤＳに接続されるセンサノードおよびロケータノードの設置例を示す図である。図５の例では、オフィスビルの各フロアに基地局、ロビー、廊下、部屋、エレベータ等にロケータノードを設置し、ビル内にいる人にモバイルセンサノードを設置した例を示している。この例では、無線センサノードを適用した例として説明するが、分散データ処理サーバとセンサノードとを無線通信で接続するか、有線通信で接続するかは、適宜選択すればよい。
【０１１６】
図２３のビル内には、例えば１階には、居室１に基地局ＢＳＴ−１、第１会議室に基地局ＢＳＴ−２が設置されている。また、２階には、居室３に基地局ＢＳＴ−３、第２会議室にＢＳＴ−４−２が設置されている。さらに、３階には、居室５に基地局ＢＳＴ−５、第３会議室に基地局ＢＳＴ−６が設置されている。エレベータの籠ＥＬＶに基地局ＢＳＴ−７が設置されている。
【０１１７】
一方、ビル内の各所、人等の移動体の位置を特定したい場所に、ロケータノードLCNを設置する。図５では、出入り口、ロビー、会議室、居室にそれぞれＬＣＮ−１〜１０が設置されている。ビル内にいる人ＰＳ−１は、例えば名札形状のモバイルセンサノードＭＳＮ−１を装着する。また、ＷＳＮ−１からＷＳＮ−１０は、据置き型の無線センサノードを示している。これらの無線センサノードは、例えば出入り口に設置して人感センサで人の出入りを検知したり、居室や会議室に設置して温度センサ、湿度センサ、照度センサで気温、湿度、明るさの絶対量あるいは変化を検知したりする。
【０１１８】
センサノードＭＳＮ−１、およびＷＳＮ−１からＷＳＮ−１０、およびロケータノードＬＣＮ−１〜１０は、それぞれがビル内に配置された基地局ＢＳＴ−１からＢＳＴ−７のいずれかと無線通信を行うことによってセンサを用いて検知した状態量または状態量の変化、あるいはセンサノードを検知した際のノード検出信号を送信する。基地局ＢＳＴ−１からＢＳＴ−７は、センサノードやロケータノードから受信した状態量または状態量の変化を、図１に示したネットワークＮＷＫ−２からＮＷＫ−Ｎを介して分散データ処理サーバＤＤＳに送信する。
【０１１９】
＜センサネットワークの動作概念＞
次に、センサネットワークＳＮＳの動作の概要について、図２４を用いて説明する。図２４は、実世界モデルの具体的な形であるオブジェクトとセンサノードの測定データの関連を示すブロック図である。
【０１２０】
図１、２を用いて説明したディレクトリサーバＤＲＳは、図２４に示すように実世界モデルとして予め以下に述べるようなオブジェクト（ＯＢＪ−１からＯＢＪ−６）を生成し、実世界モデルテーブルＭＴＢの実世界モデルリストＭＤＬに定義する。ここでは、図２３のオフィスビルを利用する人物ＰＳ−１の場合を示し、図２４に示した無線センサノードＭＳＮ−１を、この人物が装着しているものとする。
【０１２１】
モバイルセンサノードＭＳＮ−１の位置情報は、測定データ１（図２５のデータ格納先）が指し示す分散データ処理サーバＤＤＳに格納されるよう、装置管理部ＮＭＧで定義されている。モバイルセンサノードＭＳＮ−１の位置情報は、ＭＳＮ−１を検出したロケータノードＬＣＮの位置として定義する。
【０１２２】
そして、実世界モデルテーブルＭＴＢの実世界モデルリストＭＤＬには、人ＰＳ−１の位置というオブジェクト（ＯＢＪ−１）は、測定データ１（ＬＩＮＫ−１）という格納先にデータの実体があることが定義され、実世界モデルと実際のデータの格納位置との対応関係が管理されている。つまり、実世界モデルリストＭＤＬにおいて、人ＰＳ−１の位置（ＯＢＪ−１）というオブジェクトは、測定データ１（ＬＩＮＫ−１）に対応する分散データ処理サーバＤＤＳの格納位置に関連付けられている。図２４の例では、人ＰＳ−１の位置を示す無線センサノードＭＳＮ−１の位置情報（どこの基地局ＢＳＴに存在するか）は、例えば分散データ処理サーバＤＤＳ−１のディスク装置ＤＳＫ１に格納される。
【０１２３】
アプリケーションシステムＡＰＳからは、ＰＳ−１位置（ＯＢＪ−１）の値はディレクトリサーバＤＲＳの実世界モデルテーブルＭＴＢに存在するようにアクセスできるが、実際のデータはディレクトリサーバＤＲＳではなく、予め設定された分散データ処理サーバＤＤＳ−１のディスク装置ＤＳＫ１に格納されるのである。
【０１２４】
また、ＰＳ−１移動速度（ＯＢＪ−２）というオブジェクトは、移動するセンサノードＭＳＮ−１の移動速度情報が測定データ２（ＬＩＮＫ−２）に格納されるよう、実世界モデルテーブルＭＴＢに定義される。モバイルセンサノードＭＳＮ−１の移動速度の求め方は特に限定しないが、最も単純な方法としては移動するセンサノードＭＳＮ−１を検出するロケータノードＬＣＮが切り替わる時間から求めることができる。さらに、測定データ２に対応する分散データ処理サーバＤＤＳと格納位置が定義される。例えば、分散データ処理サーバＤＤＳ−２のディスク装置ＤＳＫ２に格納する。
【０１２５】
ＰＳ−１ノード装着（ＯＢＪ−３）というオブジェクトは、名札型無線センサノードＭＳＮ−１のクリップ等に取り付けたスイッチ等により着脱を検出することによって判定したノード装着状態が測定データ３（ＬＩＮＫ−３）に格納されるよう、実世界モデルテーブルＭＴＢに定義される。さらに、測定データ３に対応する分散データ処理サーバＤＤＳと格納位置が定義される。例えば、ＭＳＮ−１に取り付けられたスイッチの状態は、例えば分散データ処理サーバＤＤＳ−３のディスク装置ＤＳＫ３に格納する。
【０１２６】
周囲気温（ＯＢＪ−４）というオブジェクトは、人ＰＳ−１が接続した基地局（例えばＢＳＴ−１）に接続している無線センサノード（例えば図２３におけるＷＳＮ−３）の温度センサが測定した温度情報が測定データ４（ＬＩＮＫ−４）に格納されるよう、実世界モデルテーブルＭＴＢに定義される。さらに、測定データ４に対応する分散データ処理サーバＤＤＳと格納位置が定義される。例えば、無線センサノードＷＳＮ−３からの温度は、例えば分散データ処理サーバＤＤＳ−４のディスク装置ＤＳＫ４に格納する。
【０１２７】
ＰＳ−１ゲート通過（ＯＢＪ−５）というオブジェクトは、人ＰＳ−１が接続した基地局（例えばＢＳＴ−１）に接続している無線センサノード（例えばＷＳＮ−２）の人感センサが測定した人検知情報が測定データ５（ＬＩＮＫ−５）に格納されるよう、実世界モデルテーブルＭＴＢに定義される。さらに、測定データ５に対応する分散データ処理サーバＤＤＳと格納位置が定義される。例えば、図２３における無線センサノードＷＳＮ−２からの人検知情報は分散データ処理サーバＤＤＳ−５のディスク装置ＤＳＫ５に格納する。
【０１２８】
周囲明るさ（ＯＢＪ−５）というオブジェクトは、人ＰＳ−１が接続した基地局（例えばＢＳＴ−１）に接続している無線センサノード（例えば図２３におけるＷＳＮ−３）の照度センサが測定した照度情報が測定データ６（ＬＩＮＫ−６）に格納されるよう、実世界モデルテーブルＭＴＢに定義される。さらに、測定データ６に対応する分散データ処理サーバＤＤＳと格納位置が定義される。例えば、無線センサノードＷＳＮ−３からの照度は、例えば分散データ処理サーバＤＤＳ−６のディスク装置ＤＳＫ６に格納する。
【０１２９】
このように、実世界モデルテーブルＭＴＢに定義された各オブジェクトＯＢＪは、測定データに対応する格納先（ＬＩＮＫ）を格納しており、アプリケーションシステムＡＰＳからは目的のデータがディレクトリサーバＤＲＳに存在するように見えるが、実際のデータは分散データ処理サーバＤＤＳに格納される。
【０１３０】
そして、情報の格納先ＬＩＮＫには、センサノードが測定した測定データまたは測定データをアプリケーションシステムが利用しやすい形に変換した加工データなど、アプリケーションシステムが利用可能なデータの格納位置が設定されている。センサノードからの測定データは各分散データ処理サーバＤＤＳで収集・蓄積され、さらに、後述するようにイベントアクションが設定されていれば、測定データに対して加工などが加えられ、加工データとして所定の分散データ処理サーバＤＤＳに格納されていく。
【０１３１】
実際のセンサノードからのデータ収集、データの蓄積、データの加工は分散データ処理サーバＤＤＳで行われ、ディレクトリサーバＤＲＳでは、実世界モデルと情報の格納先及びセンサノードの定義などが管理される。
【０１３２】
これにより、アプリケーションシステム開発者はセンサノードの所在を意識する必要がなく、オブジェクトＯＢＪを検索することで、センサノードの測定値（または加工データ）に対応する所望のデータを得ることができるのである。
【０１３３】
そして、ディレクトリサーバＤＲＳは、オブジェクトＯＢＪ毎の格納先（リンク先）を管理し、実際のデータは分散データ処理サーバＤＤＳが格納し、処理するので、センサノードの数が膨大になったとしても、データ処理サーバＤＤＳの負荷が過大になるのを防ぐことができるのである。つまり、多数のセンサノードを使用しながら、ディレクトリサーバＤＲＳと分散データ処理サーバＤＤＳ及びアプリケーションシステムＡＰＳを接続するネットワークＮＷＫ−１のトラフィックが過大になるのを抑制できるのである。
【０１３４】
測定開始から所定時間経過した状態では、分散データ処理サーバのディスク装置ＤＳＫ１〜６にセンサノードからの実際の測定データが書き込まれ、時間の経過とともにデータ量は増大する。しかしながら、ディレクトリサーバＤＲＳの実世界モデルテーブルＭＴＢのモデルリストＭＤＬに設定されたオブジェクトＯＢＪ−１〜６に対応する格納先ＬＩＮＫ−１〜６は、時間が経過しても情報量は変化することなく、格納先ＬＩＮＫ−１〜６が指し示す情報の内容が変化するだけである。
【０１３５】
なお、図２４の例では、オブジェクト毎に異なるデータ処理サーバに格納している例を示しているが、異なるオブジェクトを同じデータ処理サーバのディスク装置に格納することができることはいうまでもない。データ処理の扱い易さ等から、どのオブジェクトの測定データをどのデータ処理サーバに格納するかを決めておけばよい。
【０１３６】
＜測定データとイベントの関係＞
次に、分散データ処理サーバＤＤＳで収集される測定データと、測定データに基づくイベントアクションの関係を図２５、図２６、図２７に示す。
図２５は、ディレクトリサーバＤＲＳが管理するセンサ情報テーブルＳＴＢの例である。センサ情報テーブルＳＴＢは実世界モデルテーブルＭＴＢに格納されている。センサ情報テーブルＳＴＢには、測定データに付与されるデータＩＤ毎に、センサ種別、センシング情報の意味、計測値、設置場所、センシングの間隔、データ格納先が格納されている。ここでは、一つのセンサノードが複数種類のセンシングデータと関連づけられることを考慮して、測定データ毎にＩＤを付与しているが、一つのセンサノードが一種類のセンシングデータとしか関連づけられない場合は、データＩＤに代えてセンサノードＩＤを用いることができる。また、図２５に示したセンサ情報テーブルに格納する情報の例は一例であって、センサネットワークシステムの管理の必要性に応じて格納する情報の増減は可能である。
【０１３７】
図２６において、分散データ処理サーバＤＤＳのイベントアクション制御部ＥＡＣには、ディレクトリサーバインターフェースＤＳＩを介して、基地局ＢＳＴから収集される測定データをイベントに対応付けるイベントテーブルＥＴＢを備える。イベントテーブルＥＴＢは、図２７で示すように、センサノード毎に割り当てられて測定データに付与されるデータＩＤ（ＤＩＤ）と、測定データに関してイベントの発生判断条件であるＥＶＴと、測定データをデータベースＤＢに格納するか否かを決定するデータ格納ＤＨＬとから１レコードが構成されている。
【０１３８】
例えば、図中、データＩＤが「ＸＸＸ」の測定データは、その値がＡ１より大のときにイベントの発生をディレクトリサーバＤＲＳに通知する。またデータＩＤが「ＸＸＸ」の測定データは、データ到着時にディスク装置ＤＳＫに測定データを書き込むように設定される。
【０１３９】
分散データ処理サーバＤＤＳでは、基地局ＢＳＴから受信した測定データを、まず、センシングデータＩＤ抽出部ＩＤＥで受け付け、測定データに付与されているＩＤであるデータＩＤを抽出する。また、センシングデータＩＤ抽出部ＩＤＥは、測定データを最新データメモリＬＤＭに送る。
【０１４０】
抽出されたデータＩＤはイベント検索部ＥＶＳに送られて、イベントテーブルＥＴＢを検索し、データＩＤが一致するレコードがあれば、当該レコードのイベント内容ＥＶＴと測定データをイベント発生判定部ＥＶＭに送る。
【０１４１】
イベント発生判定部ＥＶＭでは、測定データの値とイベント内容ＥＶＴを比較して、条件を満たせばイベントの発生を、ディレクトリサーバインターフェースＤＳＩを通じてディレクトリサーバＤＲＳに通知する。また、イベント発生判定部ＥＶＭは、データ格納ＤＨＬの要求を最新データメモリに伝える。
【０１４２】
ＤＢ制御部ＤＢＣは、イベントテーブルＥＴＢのデータ格納ＤＨＬがＹＥＳとなっているデータについては、最新データメモリＬＤＭからデータを受け取り、ディスク装置ＤＳＫに書き込みを行う。
【０１４３】
分散データ処理サーバＤＤＳは、ディレクトリサーバインターフェースＤＳＩがディレクトリサーバＤＲＳより測定データの参照要求を受信した場合、データアクセス受け付け部ＤＡＲに当該アクセス要求を送る。
【０１４４】
データアクセス受け付け部ＤＡＲでは、アクセス要求が最新のデータであれば、アクセス要求に含まれるデータＩＤに対応する測定データを最新データメモリＬＤＭから読み込んで、ディレクトリサーバインターフェースＤＳＩへ返送する。あるいは、アクセス要求が過去のデータであれば、アクセス要求に含まれるデータＩＤに対応する測定データをディスク装置ＤＳＫから読み込んで、ディレクトリサーバインターフェースＤＳＩへ返送する。
【０１４５】
このように、分散データ処理サーバＤＤＳでは、基地局ＢＳＴから収集したセンサノードのデータのうち、最新のデータを最新データメモリＬＤＭに保持し、さらに、後で参照が必要と予想されるデータについてのみディスク装置ＤＳＫに記録する。また、イベントが発生時のデータのみ、データをディスク装置ＤＳＫに記録する設定も可能である。この場合には、周期的（観測間隔）に収集するデータによるディスク使用量増加を防ぐことができる。以上の方法により、ひとつの分散データ処理サーバＤＤＳで複数の基地局ＢＳＴ（つまり、多数のセンサノード）を管理することが可能となる。
【０１４６】
＜アクション制御部＞
図２８は、ディレクトリサーバＤＲＳのアクション制御部ＡＣＣの詳細を示すブロック図である。
アクション制御部ＡＣＣは、複数の分散データ処理サーバＤＤＳのイベントアクション制御部ＥＡＣから受信したイベント発生に基づいて、予め設定した動作（アクション）を自動的に行うものである。
【０１４７】
このため、アクション制御部ＡＣＣは、セッション制御部ＳＥＳを介してアプリケーションシステムＡＰＳからアクション設定を受け付けるアクション受け付け部ＡＲＣと、受け付けたアクションを、モデル管理部（ＭＭＧ）を介して実世界モデルテーブルＭＴＢの情報を参照して分析し、分析結果に応じてディレクトリサーバＤＲＳと分散データ処理サーバＤＤＳ間の機能（または負荷）分担を設定するアクション分析部ＡＡＮと、アクションの定義及び実行を管理するアクション管理部ＡＭＧと、アプリケーションシステムＡＰＳからの設定要求に応じたイベントとアクションの関係を格納するアクションテーブルＡＴＢと、アクションテーブルＡＴＢで定義されたイベントを監視するように分散データ処理サーバＤＤＳ−１〜ｎに指令を送出するイベント監視指示部ＥＭＮと、各分散データ処理サーバＤＤＳ−１〜ｎで発生したイベント通知を受信するイベント受信部ＥＲＣと、受信したイベントとアクションテーブルＡＴＢの定義に基づいて、所定動作を実行するアクション実行部ＡＣＥとから構成される。
【０１４８】
アクションの登録について、図２９のタイミングチャートを参照しながら説明する。図２９では、まず、アプリケーションシステム管理者がアプリケーションシステムＡＰＳからディレクトリサーバＤＲＳのアクション制御部ＡＣＣに接続し、アクションの設定を要求する。例えば、アクションの一例として、出入口等のゲートをＸさんが通過するのを監視し、アプリケーションシステムＡＰＳに通知を送信する、というアクションを設定する場合について説明する。
【０１４９】
アクション制御部ＡＣＣのアクション受付部ＡＲＣは、このアクションの設定要求を受け付けると、アクション分析部ＡＡＮに当該アクションの設定を要求する。アクション分析部ＡＡＮは、監視対象のデータＩＤを選択し、さらにその測定データがどのようになったらイベントを発生させるか決定する。すなわち、「Ｘさんのゲート通過」という実世界の事象をセンサネットシステムに蓄積されるセンシングデータにより判定可能なモデルとして構築する。
【０１５０】
ここで、Ｘさん＝人ＰＳ−１の場合、図２４に示したように既に実世界モデルテーブルＭＴＢにモデルが定義されているので、実世界モデルリストＭＤＬからデータＩＤ（「Ｘ２」とする）とデータを格納する情報格納先（分散データ処理サーバＤＤＳ１）を取得する。
【０１５１】
次に、アクション管理部ＡＭＧでは、「Ｘさんのゲート通過」というイベントを分散データ処理サーバＤＤＳで発生させるため、上記選択したセンサノードを管理する分散データ処理サーバＤＤＳに対して「Ｘさんのゲート通過」というイベントを発生するように指令を送出する。そして、アクション管理部ＡＭＧは、アクションテーブルＡＴＢに「アプリケーションシステムに通知を送信する」というアクションを設定し、当該アクションを実行するイベントのＩＤとして、上記センサノードＩＤを設定する。
【０１５２】
ディレクトリサーバＤＲＳのアクション管理部ＡＭＧから指令を受けた分散データ処理サーバＤＤＳでは、図３０で示すように、実世界モデルリストＭＤＬから取得したデータＩＤ＝Ｘ２について、ゲート通過という条件「００」と、アクションとして行うべきイベントの通知先にディレクトリサーバＤＲＳのアクション制御部ＡＣＣを登録する。
【０１５３】
具体的に、図２４の例を用いて説明する。ディレクトリサーバＤＲＳはオブジェクトＯＢＪ−１（無線センサノードＭＳＮ−１の位置情報）を管理するデータ処理サーバＤＤＳ−１に対して、図３０に示すイベントテーブルＥＴＢを登録させる。ここで、条件「００」が当該ゲートを通信範囲に含む基地局のＩＤとすれば、人ＰＳ−１が当該ゲートを通過したときにオブジェクトＯＢＪ−１（無線センサノードＭＳＮ−１の位置情報）に対応するデータＩＤ（Ｘ２）の値は「００」の値を返すことになる。このように、実世界の事象とセンシング情報とが関係づけられ、Ｘ２＝００の条件が成立した場合に、データ処理サーバＤＤＳ−１はディレクトリサーバのアクション制御部ＡＣＣに対して、イベント発生を通知する。
いうまでもなく、以上のイベント発生条件は一例である。例えば、ゲートに付加された人感センサの情報と人ＰＳ−１の位置情報との双方を用いてイベント発生条件とすることも可能であろう。
【０１５４】
また、図３１のアクションテーブルＡＴＢはディレクトリサーバＤＲＳのアクションデーブルＡＴＢであり、監視対象のイベントＩＤを示すデータＩＤ欄には、「ＰＳ−１のゲート通過」を示すデータＩＤ＝Ｘ２が設定される。また、イベントの条件欄には、分散データ処理サーバＤＤＳ−１からのイベント発生の受信が設定され、ディレクトリサーバＤＲＳが実行するアクション欄には、アプリケーションシステムＡＰＳへの通知が設定される。さらに、アクションのパラメータ欄にはアプリケーションシステムＡＰＳを示すＩＰアドレスが設定される。
【０１５５】
アクション管理部ＡＭＧがアクションテーブルＡＴＢに登録するアクションは、図３１で示すように、データＩＤ＝Ｘ２のイベントを受信したことをイベントの条件とし、アプリケーションへシステムへの通知というアクションを、パラメータ欄に記載したアドレスに対して実行するよう設定する。
【０１５６】
上述のように、一つのイベント発生から一つのアクションを行うものを単一アクションとし、上記のようなアクションの設定は図３２で示す流れとなる。すなわち、アプリケーションシステムＡＰＳからディレクトリサーバＤＲＳのアクション制御部ＡＣＣに対してアクションの設定要求が行われ、アクションの分析とイベントの監視指示がアクション制御部ＡＣＣで生成され、分散データ処理サーバＤＤＳのイベントアクション制御部ＥＡＣにてイベントテーブルＥＴＢが定義される。その後、アクション制御部ＡＣＣのアクション管理部ＡＭＧは、イベント受信部ＥＲＣに対して、上記設定したイベント（データＩＤ＝Ｘ２）の監視を指示する。これにより一連のアクションの設定が完了したことをアクション制御部ＡＣＣはアプリケーションシステムに通知する。
【０１５７】
＜アクションの実行＞
図３３は、設定したアクションの実行を示すタイムチャートである。
監視対象のセンサノードの測定データがイベント発生条件の「００」に変化して、Ｘさんのゲート通過が判定されると、分散データ処理サーバＤＤＳ−１は、データＩＤ＝Ｘ２に関するイベント通知を発生する。
【０１５８】
このイベント発生は、分散データ処理サーバＤＤＳからディレクトリサーバＤＲＳに通知され、図２８のイベント受信部ＥＲＣが受信する。ディレクトリサーバＤＲＳのアクション管理部ＡＭＧは、受信したイベントのＩＤから図３１のアクションテーブルＡＴＢを検索し、該当するアクションの有無を判定する。受信したＩＤ＝Ｘ２のイベントは、アクションテーブルＡＴＢに定義があるので、アクション管理部ＡＭＧは、アクション実行部ＡＣＥに対してアクションテーブルＡＴＢのアクションとパラメータを通知する。
【０１５９】
アクション実行部ＡＣＥは、アプリケーションシステムＡＰＳに対して人ＰＳ−１がゲートを通過した旨を連絡し、アクションを実行する。そして、アプリケーションシステムＡＰＳはアクション結果を受信する。
【０１６０】
なお、以上は一つのイベント発生でひとつのアクションを行う例について述べたが、２つ以上のイベント発生条件が全て成立したらあるアクションを実行するように設定してもよく、一つのイベント発生で複数のアクションを行うように設定することもできる。
【０１６１】
以上述べたような、イベント−アクション制御は、ディレクトリサーバで実行することも、データ処理サーバで実行することも可能であり、これはイベントとアクションの内容によって定めることが望ましい。例えば、イベントの判定が一つのデータ処理サーバに格納されているデータで実行できるのであればディレクトリサーバの負荷、通信経路の負荷を軽くするためにも、データ処理サーバで実行することが望ましい。一方、複数のデータ処理サーバにデータが分散している場合には、ディレクトリサーバで実行しても良いし、ある一つのデータ処理サーバにイベントの判定を割り当てても良い。
【０１６２】
＜ロケータノード−センサノード間の距離推定＞
図３４〜３６は、ロケータノードＬＣＮの検知領域ＳＮＡの設定方法を説明する図である。
図３４には、ロケータノードＬＣＮ−１〜３が配置されており、無線センサノードＷＳＮがある。各々のロケータノード、およびセンサノードはセンサネットシステムＳＮＳに所属するいずれかの基地局に接続しているものとする。今、各ロケータノードＬＣＮ−１〜３の現在の検知領域ＳＮＡ−１−ａ、ＳＮＡ−２−ａ、ＳＮＡ−３−ａは、検知半径がそれぞれ１−ａ、２−ａ、３−ａに設定されているとする。図３４の状態では、センサノードＷＳＮは、いずれのロケータノードの検知領域内にも存在しないため、ロケータノードＬＣＮ−１〜３には検知されない。ただし、基地局との間の通信が確立されていれば、センサノードから基地局へデータが送信され、センサネットシステムＳＮＳの基地局ＢＳＴ、分散データ処理サーバＤＤＳ、ディレクトリサーバＤＲＳの各階層で接続されているセンサノードは管理されるため、ＷＳＮが存在する事はわかっている。このような状況の場合に、センサノードＷＳＮの場所を特定するために、検知領域ＳＮＡの検知半径を調整する。
【０１６３】
図３５は、ロケータノードＬＣＮ−１〜３の検知領域の検知半径を、ＳＮＡ−１−ｂ、ＳＮＡ−２−ｂ、ＳＮＡ−３−ｂに広げた様子を示している。各ロケータノードＬＣＮ−１〜３は、それぞれが予め定めたノード非検知判定時間を超過してもセンサノードを検知しなかった場合に、コントローラＣＮＴに予め設定しておいた処理機能を用いてそれぞれの検知領域の検知半径を広げる。図３５では、この処理により、ロケータノードＬＣＮ−３の検知領域ＳＮＡ−３−ｂにセンサノードＷＳＮが入るため、ロケータノードＬＣＮ−３がセンサノードＷＳＮを検知することができるようになる。この時、センサノードＷＳＮとロケータノードＬＣＮ−３の距離は、３−ａから３−ｂの間であると推定する事ができる。
【０１６４】
図３６は、図３５のタイミングで検知領域を拡大した後、それぞれに設定されているノード非検知判定時間を超過しても未だセンサノードを検出していないロケータノードＬＣＮ−１、２が、さらに検知領域を拡大した様子を示している。図３６においては、ロケータノードＬＣＮ−２の検知領域ＳＮＡ−２−ｃの範囲にセンサノードＷＳＮが入ったことにより、ロケータノードＬＣＮ−２がセンサノードＷＳＮを検知することができるようになる。この時、センサノードＷＳＮとロケータノードＬＣＮ−２の距離は、２−bから２−cの間であると推定する事ができる。
【０１６５】
同様にＬＣＮ−１についてもセンサノードＷＳＮが検知できるまで検知領域を拡大していくことが可能である。この結果、３つ以上のロケータノードから同時にひとつのセンサノードＷＳＮを検出することができれば、推定した距離を用いて３辺測量を行うことにより、センサノードＷＳＮの座標を計算することができる。
【０１６６】
上記で説明した検知領域拡大方法とは逆に、それぞれのロケータノードごとに予め定めた一定時間の間に、規定の頻度以上同一の、あるいは複数のセンサノードを検出した場合に、センサノードが検知できなくなるまで検知領域を縮小することもできる。この場合は、最後にセンサノードを検知できた検知領域半径を、設定値に固定する。
【０１６７】
このように、一連の検知領域調整方法を、複数のセンサノードが存在する観測フィールドで時間的に連続して行えば、観測フィールド内のロケータノードの検知領域を自動的に調整する事が可能になる。
【０１６８】
上記で説明したロケータノードの検知領域ＳＮＡの調整自体は、各ロケータノードのコントローラが無線処理部を制御することにより行う。検知領域調整開始のトリガは、分散データ処理サーバＤＤＳのコマンド制御部からの制御コマンドを、基地局ＢＳＴを介してロケータノードが受け取ることによって与えられる。また、検知領域を広げるもしくは狭めるといった検知半径の調整要否、及び調整する程度の判断はイベントアクション制御部において行われ、その判断結果を上記制御コマンドに含めることも可能である。
【０１６９】
分散データ処理サーバＤＤＳでは、イベントアクション制御部ＥＡＣにおいて、センサノードが基地局に接続されていることが確認されているにも関わらず、予め定めた時間を経過しても、該センサノードが所属する基地局に所属するいずれのロケータノードからも該センサノードの検出信号を受信しないという条件をイベントとして登録する。また、ロケータノードに対し検知領域調整開始コマンドをコマンド制御部ＣＭＣ−Ｄを介して発行するというアクションを登録する。そして、該イベントが発生したときに、該アクションを実行する。
【０１７０】
ロケータノードは、検知領域の調整が完了した際に、その時の検知領域半径設定値を、基地局、分散データ処理サーバＤＤＳを介してディレクトリサーバＤＲＳに通知する。ディレクトリサーバＤＲＳでは、検知領域半径の情報に基づいて、検出したセンサノードの位置精度を実世界モデル情報として図２４に示した実世界モデルテーブルＭＴＢに格納し、アプリケーションシステムＡＰＳからの要求に従って分散データ処理サーバ、基地局を介してロケータノードに通知する。 
なお、各ロケータノードに対する基地局からのコマンドが、ロケータノードから基地局への送信に対する応答としてロケータノードに送信される通信方式を用いている場合は、ロケータノードから基地局への送信がなければコマンドを受信することができない。ロケータノードは通常傍受モードで待機しているため、図９あるいは図１０に示したように通信モードと傍受モードを並列動作可能な構成である場合を除き、ノード検出信号、あるいはノード離脱信号を送信した時にのみコマンドを受信可能である。そこで、各ロケータノードに、センサノードを検知していない時間を計測する手段を設け、予め定めた一定時間センサノードを検出しなかった場合には、ロケータノードから基地局に、センサノード非検知信号を送信し、検知領域調整を指示するコマンドを受信するようにしても良い。あるいは、上位システムに問い合わせずに直ちに検知領域調整を開始することも可能である。
【０１７１】
この時、ロケータノードに時間計測手段を設け、検知領域調整を行うタイミングを予め特定の時間に設定することによって同期させ、対象となるロケータノードの検知領域半径を一斉に変更するようにしてもよい。これにより、センサノードが通信を行った際に、すべての対象ロケータノードが新しい検知領域で検知処理を行う事ができるため、調整を早く完了することができる。
【０１７２】
また、対象とするセンサノードがモバイルセンサノードＭＳＮであった場合には、センサノードが移動する可能性があるため、検知領域半径を一斉に変更することにより、全てのロケータノードが、モバイルセンサノードの発信した同じ通信を元に調整を行うことが可能になり、より正確な検知領域半径調整を行うことができる。
【０１７３】
＜複数のロケータノードがセンサノードを検知した場合＞
図３７に示すように、複数のロケータノード（例えばＬＣＮ−１、ＬＣＮ−２、ＬＣＮ−３）がひとつのセンサノードＷＳＮを検知した場合、いずれかのロケータノード位置をセンサノードＷＳＮの位置として決定することが必要となる。ロケータノードの位置をセンサノードの位置とするのではなく、より細かい位置特定が必要な場合には、電波強度ＲＳＳＩ等を加重とする加重平均を取ることにより、ロケータノード間の中間的な位置を推定することも可能であるが、ここでは、どれか１つのロケータノードを選択する方法について開示する。
【０１７４】
第１の方法は、各ロケータノードが傍受したセンサノードの送信信号のＲＳＳＩを測定する手段を設け、その絶対値が最も大きいロケータノードを選択する方法である。
第２の方法は、各ロケータノードによるセンサノードの検知の時間連続性に基づいて決定する方法である。図３８は、ロケータノードＬＣＮ−１〜ＬＣＮ−３のそれぞれが、センサノードＷＳＮの各通信のタイムスロット毎にセンサノードＷＳＮを検知した例を表している。図中の矢印は、ロケータノードがセンサノードを検知したことを示す。複数のロケータノードがセンサノードを検知した時は、図に示すように、その時点からみて過去に連続して検知したスロット数が最も多いロケータノードが選択される。これにより、人の通過等、電波伝搬に影響を及ぼす物体の通過等により突発的にセンサノード検知状態が変化した場合の影響を回避する事が可能になる。この判定処理は、分散データ処理サーバＤＤＳのイベントアクション制御部において実行する。この時、ロケータノードによるセンサノードの検出履歴は、分散データ処理サーバのディスクＤＳＫ内のデータベースＤＢに測定データ／属性として格納しておく。なお、第１の方法と第２の方法を組み合せて用いても良い。また、前述したように、１のロケータノードのみセンサノードを検知するよう各ロケータノードの検知領域を縮小してもよい。
【０１７５】
＜ロケータノードの動作タイミング＞
ロケータノードは、基地局との通信を行っている時以外は、センサノードの通信を傍受するノード傍受モードで待機する事を想定している。したがって、通常は常時無線処理部が動作していることになり、結果として電力消費が大きくなる。このため、小型電池等による長時間連続動作は困難である。そこで、ロケータノードの電力消費を節減する方法を開示する。
【０１７６】
第１の方法は、センサノードが通信するタイミングに合わせてノード傍受モードに移行し、それ以外の時間はスリープする方法である。無線通信のプロトコルによっては、同一のＰＡＮに所属するノードが同期して通信を行うタイミングを調整する。例えばＺｉｇＢｅｅ無線規格では、ＰＡＮ全体を調整するコーディネータと呼ばれるデバイスが、定期的にビーコン信号を発信し、他のノードは、ビーコン信号によって規定された期間のみ通信を行う。このような通信方式を用いる場合は、ロケータノードについても、ビーコン信号によって規定された通信期間のみセンサノードの通信を傍受すれば良いため、この期間以外の期間はスリープすることによって電力消費を節減することができる。
【０１７７】
ロケータノードの電力消費を節減する第２の方法は、センサノードが通信することをなんらかの手段で検知し、該検知結果をトリガにノード傍受モードに移行する方法である。例えば、センサノードが通信する直前に、例えばスピーカーや赤外線ＬＥＤ等、センサノード自身が持つアクチュエータＡＴＴを動作させ、出力された音や光などの情報を発信する。ロケータノードは、該情報をロケータノードが持つ検知手段で検知する。
【０１７８】
図３９は、本方法を適用する場合のロケータノードの構成例である。図３９は、図７で説明したロケータノードの構成例に、センサＳＳＲを追加したものである。センサＳＳＲは、電源ＰＯＷから電力を供給され、例えばマイク等の音圧を感知するセンサが、予め定めた音圧レベルを超える音をセンシングした場合や、フォトダイオード等の赤外線受光センサが、予め定めた発光量を検知した等、センシング対象を検知するのに十分な量の情報をセンシングした際に、割込信号をコントローラＣＮＴに伝送する機能を有する。コントローラＣＮＴは、割込信号部ＩＮＴが該割込信号を受信した際に、ロケータノードをノード傍受モードに移行する。センサの消費電力が十分小さく、また、割込信号を受信してノード傍受モードに移行するのに必要な機能以外の機能を停止することが出来る場合には、センサノードの電力消費を節減することができる。センサＳＳＲの例としては、例えば移動体の動きを検知する人感センサやマイクロ波センサ、センサノードが通信の直前にスピーカーから出力した可聴音または超音波等を検出するマイク、ノードが通信の直前に赤外線ＬＥＤを発光させ、これを受光するフォトダイオードやフォトトランジスタ等がある。なお、ここでは、図７の構成への追加例についてのみ記載するが、図８〜図１０の構成についても同様に追加可能なことは明らかである。
【０１７９】
＜ロケータノード機能のその他の応用方法＞
ここまでに開示したロケータノードの機能は、基本的に専用ハードウェアを用いて実現することを想定しているが、ロケータノードの機能は、通常のセンサノードの構成で実現できる。そのため、例えば観測フィールドに据え置いて使用する据置型センサノードをロケータノードとして使用したり、無線マルチホップネットワークやメッシュネットワークの中継器や基地局の無線処理部をロケータノードとして使用したりすることも可能である。さらに、モバイルセンサノードＭＳＮをロケータノードとして使用することもできる。
【０１８０】
これにより、モバイルセンサノードを持って移動することにより、据置型センサノードの設置位置を特定することができる。この場合は、例えばモバイルセンサノードにＧＰＳ等の位置特定手段を設け、据置型センサノードを検知した時のモバイルセンサノードの位置をＧＰＳで計測し、据置型センサノードのＩＤ情報と共に基地局に伝送し、据置型センサノードの位置を特定する。さらに、モバイルセンサノードによって他のモバイルセンサノードを検知すれば、人のプレゼンス情報として利用する事ができる。
【０１８１】
なお、本実施形態における処理フローはプログラムとして構成し、各制御部や各処理部はコンピュータでプログラムを読み取ることにより実行できる。
以上、本発明の例を説明したが、本発明は上記実施例に限定されるものではなく、種々変形可能であり、上述した各実施例を適宜組み合わせることが可能であることは当業者に理解されよう。
【産業上の利用可能性】
【０１８２】
以上のように、本発明によれば、  建物や市街地等での人の行動に対するセキュリティ管理、倉庫や店舗等の流通過程の物品管理、医療施設や家庭での人の健康や安全管理、愛玩動物や家畜の状態監視等の分野において、人や物品、動物等の移動体の位置を特定する事が可能になるため、施設内作業者による立入り制限区域への侵入、商品の流通経路のトレース、患者の居場所確認等の状況をきめ細かく把握することができるようになる。
【図面の簡単な説明】
【０１８３】
【図１】ロケータノードを用いてセンサノードの位置を特定するセンサネットワークシステムの一例を示す構成図である。
【図２】センサネットワークの機能の一例を示すブロック図である。
【図３】無線センサノードＷＳＮの一例を示すブロック図である。
【図４】無線センサノードの動作状態の一例を示すグラフで、時間と消費電流の関係を示す。
【図５Ａ】ロケータノードＬＣＮによるモバイルセンサノード検知方法の一例を説明する図である。
【図５Ｂ】ロケータノードＬＣＮによるモバイルセンサノード検知方法の一例を説明する図である。
【図５Ｃ】ロケータノードＬＣＮによるモバイルセンサノード検知方法の一例を説明する図である。
【図６】ロケータノードＬＣＮによって移動体の位置を特定する概念の一例を説明する図である。
【図７】ロケータノードＬＣＮの一例を示すブロック図である。
【図８】ロケータノードＬＣＮの一例を示すブロック図である。
【図９】ロケータノードＬＣＮの一例を示すブロック図である。
【図１０】ロケータノードＬＣＮの一例を示すブロック図である。
【図１１】ロケータノードの状態変化の一例を説明する図である。
【図１２】ロケータノードの状態変化の一例を説明する図である。
【図１３】ロケータノードの状態変化の一例を説明する図である。
【図１４】ロケータノードの状態変化の一例を説明する図である。
【図１５】観測フィールドにロケータノードを配置する例である。
【図１６】観測フィールドにロケータノードを配置する例である。
【図１７】観測フィールドにロケータノードを配置する例である。
【図１８】観測フィールドにロケータノードを配置する例である。
【図１９】ロケータノードの指向性を制御した場合の例である。
【図２０】データフローの例を説明する図である。
【図２１】ロケータノードの処理フローの一例を説明する図である。
【図２２】基地局の処理フローの一例を説明する図である。
【図２３】無線センサノード等の配置の一例を示す説明図である。
【図２４】オブジェクトとセンサノードの測定データの関連の一例を示すブロック図である。
【図２５】センサ情報テーブルの一例を示す説明図である。
【図２６】分散データ処理サーバＤＤＳのイベントアクション制御部の一例を示すブロック図である。
【図２７】イベントテーブルの一例を説明する図である。
【図２８】ディレクトリサーバＤＲＳのアクション制御部ＡＣＣの一例を示すブロック図である。
【図２９】アクションテーブルの一例を説明する図である。
【図３０】分散データ処理サーバＤＤＳのイベントテーブルのエントリの一例を示す説明図である。
【図３１】ディレクトリサーバＤＲＳのアクションテーブルのエントリの一例を示す説明図である。
【図３２】単一のアクションの設定の流れの一例を示すタイムチャートである。
【図３３】単一のアクションの応答の流れの一例を示すタイムチャートである。
【図３４】ロケータノードの検知領域の設定方法の一例を説明する図である。
【図３５】ロケータノードの検知領域の設定方法の一例を説明する図である。
【図３６】ロケータノードの検知領域の設定方法の一例を説明する図である。
【図３７】複数のロケータノードがセンサノードを検知した場合の選択方法の一例を説明する図である。
【図３８】複数のロケータノードがセンサノードを検知した場合の選択方法の一例を説明する図である。
【図３９】センサを持つロケータノードの構成例を示す図である。
【符号の説明】
【０１８４】
ＤＲＳ：ディレクトリサーバ、ＤＤＳ：分散データ処理サーバ、ＷＳＮ、ＭＳＮ、ＦＳＮ：センサノード、ＬＣＮ：ロケータノード、ＢＳＴ：基地局、ＮＤＡ：ノード検知領域、ＭＭＧ： モデル管理部、ＭＴＢ：実世界モデルテーブル、ＮＷＫ：ネットワーク、ＡＰＳ：アプリケーションシステム、ＳＮＳ：センサネットワークシステム。
【図１】
0004682912.tif 000002
【図２】
0004682912.tif 000003
【図３】
0004682912.tif 000004
【図４】
0004682912.tif 000005
【図５Ａ】
0004682912.tif 000006
【図５Ｂ】
0004682912.tif 000007
【図５Ｃ】
0004682912.tif 000008
【図６】
0004682912.tif 000009
【図７】
0004682912.tif 000010
【図８】
0004682912.tif 000011
【図９】
0004682912.tif 000012
【図１０】
0004682912.tif 000013
【図１１】
0004682912.tif 000014
【図１２】
0004682912.tif 000015
【図１３】
0004682912.tif 000016
【図１４】
0004682912.tif 000017
【図１５】
0004682912.tif 000018
【図１６】
0004682912.tif 000019
【図１７】
0004682912.tif 000020
【図１８】
0004682912.tif 000021
【図１９】
0004682912.tif 000022
【図２０】
0004682912.tif 000023
【図２１】
0004682912.tif 000024
【図２２】
0004682912.tif 000025
【図２３】
0004682912.tif 000026
【図２４】
0004682912.tif 000027
【図２５】
0004682912.tif 000028
【図２６】
0004682912.tif 000029
【図２７】
0004682912.tif 000030
【図２８】
0004682912.tif 000031
【図２９】
0004682912.tif 000032
【図３０】
0004682912.tif 000033
【図３１】
0004682912.tif 000034
【図３２】
0004682912.tif 000035
【図３３】
0004682912.tif 000036
【図３４】
0004682912.tif 000037
【図３５】
0004682912.tif 000038
【図３６】
0004682912.tif 000039
【図３７】
0004682912.tif 000040
【図３８】
0004682912.tif 000041
【図３９】
0004682912.tif 000042