(57)【要約】【課題】  本発明は簡単に低いコストでシステムの変化や性能向上に適応できる種々の応用をサポートできるセンサネットワークの動作方法を提供することを目的としている。【解決手段】  本発明の方法は、複数のノード20〜24と少なくとも１つのリソース26, 27とを備え、リソースは感知装置（例えばカメラまたはマイクロホン）またはその他の周辺装置（例えば記憶装置または記録装置）である。ネットワーク中のノードはリソースがそれに対して利用可能であることおよびリソースのタイプを決定し、そのリソースのタイプに基づいてノードは１以上の論理的ノードの名称と関連付けられ、論理的ノードの名称に基づいて、そのノードは少なくとも１つの機能を実行するために命令を獲得する。【選択図】    図２
2005045784.tif 000002
【特許請求の範囲】
【請求項１】
複数のプログラム可能なネットワークノードと少なくとも１つのリソースとを具備しているネットワークを動作させる方法において、
少なくとも１つのプログラム可能なネットワークノードによって、少なくとも１つのリソースがそれに対して利用可能であることを決定し、
その少なくとも１つのプログラム可能なネットワークノードによって、少なくとも１つの利用可能なリソースのタイプを決定し、
決定されたタイプに基づいて１以上の論理的ノードの名称と前記少なくとも１つのプログラム可能なネットワークノードとを関連付け、各論理的ノードの名称はリソースのタイプと関連しており、
少なくとも１つの機能を実行するために命令を前記少なくとも１つのプログラム可能なネットワークノードに供給し、その供給された命令は１以上の論理的ノードの名称に基づいて決定されるネットワークの動作方法。
【請求項２】
命令は他のネットワークノードまたは外部の入力手段から与えられる請求項１記載の方法。
【請求項３】
命令はプログラム可能なネットワークノードによりアクセス可能なローカルメモリから与えられる請求項１記載の方法。
【請求項４】
少なくとも１つのリソースがそれに対して利用可能であることを決定するステップは、
少なくとも１つのプログラム可能なネットワークノードによって、リソースに対するリクエストを放送し、
少なくとも１つのプログラム可能なネットワークノードによって、少なくとも１つのリソースから少なくとも１つの応答を受取り、その応答は少なくとも１つのリソースが利用可能であることを示している請求項１記載の方法。
【請求項５】
利用可能なリソースのタイプは、カメラ、マイクロホン、温度センサ、聴取装置、ガス検出器、光検出器、オーディオ／イメージ／ビデオレコーダまたはプレーヤ、記憶装置、またはその他の周辺機器の１以上のものである請求項１記載の方法。
【請求項６】
少なくとも１つのプログラム可能なネットワークノードによって、その少なくとも１つのプログラム可能なネットワークノードと関連している１以上の論理的ノードの名称に基づいて少なくとも１つの機能を行うための少なくとも１つの命令を実行する請求項１記載の方法。
【請求項７】
少なくとも１つのプログラム可能なネットワークノードによる少なくとも１つの命令の実行は、
少なくとも１つの利用可能なリソースを介してセンサの入力を受取り、
１以上の論理的ノードの名称に基づいてネットワーク中で複数のプログラム可能なネットワークノードの１以上のものにセンサの入力を供給する請求項６記載の方法。
【請求項８】
少なくとも１つの機能の実行は、１以上の論理的ノードの名称に基づいてネットワーク中で複数のプログラム可能なネットワークノードの１以上のものからセンサの入力を受取る請求項６記載の方法。
【請求項９】
少なくとも１つの利用可能なリソースを介してセンサの入力を供給するステップをさらに含んでいる請求項８記載の方法。
【請求項１０】
少なくとも１つの機能の実行は、
少なくとも１つの利用可能なリソースを介してセンサの入力を受取り、
ネットワーク中の複数のプログラム可能なネットワークノードに対してセンサの入力が利用可能であることを放送し、
センサの入力を受取るリクエストに応答してネットワーク中で複数のプログラム可能なネットワークノードの１以上のものにセンサの入力を供給する請求項６記載の方法。
【請求項１１】
少なくとも１つのプログラム可能なネットワークノードはユーザと関連しさらに、
ユーザとして関連しているネットワーク中の少なくとも１つのプログラム可能なネットワークノードにセンサの入力を供給する請求項１０記載の方法。
【請求項１２】
さらに、センサの入力を受取るリクエストに応答するプログラム可能なネットワークノードがネットワーク中に存在しない場合にはセンサの入力を記憶する請求項１１記載の方法。
【請求項１３】
さらに、センサの入力が記憶された後、ネットワーク中の少なくとも１つのプログラム可能なネットワークノードからセンサに対するリクエストを受取り、
記憶されたセンサの入力がリクエストされたネットワーク中の少なくとも１つのプログラム可能なネットワークノードにセンサの入力を供給する請求項１２記載の方法。
【請求項１４】
複数のプログラム可能なネットワークノードと少なくとも１つのリソースとを具備しているネットワークを動作させる方法において、
少なくとも１つのプログラム可能なネットワークノードによって、少なくとも１つのリソースがそれに対して利用可能であることを決定し、
その少なくとも１つのプログラム可能なネットワークノードによって、少なくとも１つの利用可能なリソースの１以上の能力を決定し、
少なくとも１つの利用可能なリソースの１以上の能力に基づいて１以上の論理的ノードの名称と前記少なくとも１つのプログラム可能なネットワークノードとを関連付け、各論理的ノードの名称はリソースのタイプと関連しており、
１以上の論理的ノードの名称に基づいて少なくとも１つの機能を実行するために少なくとも１つのプログラム可能なネットワークノードを制御するネットワークの動作方法。
【請求項１５】
１以上の論理的ノードの名称に基づいて少なくとも１つの機能を実行するために少なくとも１つのプログラム可能なネットワークノードを制御するステップは、
少なくとも１つのプログラム可能なネットワークノードを制御してプログラム可能なネットワークノードにアクセス可能であるが記憶されない１以上の命令を使用して少なくとも１つの機能を実行する請求項１４記載の方法。
【請求項１６】
少なくとも１つのリソースが利用可能であるリクエストを決定するステップは、
少なくとも１つのプログラム可能なネットワークノードによって、リソースに対するリクエストを放送し、
少なくとも１つのプログラム可能なネットワークノードによって少なくとも１つのリソースからの少なくとも１つの応答を受取り、その応答は少なくとも１つのリソースが利用可能であることを示している請求項１４記載の方法。
【請求項１７】
利用可能なリソースのタイプは、カメラ、マイクロホン、温度センサ、聴取装置、ガス検出器、光検出器、オーディオ／イメージ／ビデオレコーダまたはプレーヤ、メモリ、またはその他の周辺機器の１以上のものである請求項１４記載の方法。
【請求項１８】
少なくとも１つのプログラム可能なネットワークノードによる少なくとも１つの命令の実行において、
少なくとも１つのプログラム可能なネットワークノードに関連する１以上の論理的ノードの名称に基づいて少なくとも１つの機能を実行する請求項１４記載の方法。
【請求項１９】
少なくとも１つのプログラム可能なネットワークノードによる少なくとも１つの命令の実行において、
少なくとも１つの利用可能なリソースを介してセンサの入力を受取り、
１以上の論理的ノードの名称に基づいてネットワーク中で複数のプログラム可能なネットワークノードの１以上のものにセンサの入力を供給する請求項１８記載の方法。
【請求項２０】
少なくとも１つの機能の実行は、１以上の論理的ノードの名称に基づいてネットワーク中で複数のプログラム可能なネットワークノードの１以上のものからセンサの入力を受取るステップを含んでいる請求項１８記載の方法。
【請求項２１】
少なくとも１つの利用可能なリソースにセンサの入力を供給するステップをさらに含んでいる請求項２０記載の方法。
【請求項２２】
少なくとも１つの機能の実行は、
少なくとも１つの利用可能なリソースを介してセンサの入力を受取り、
ネットワーク中の複数のプログラム可能なネットワークノードに対してセンサの入力が利用可能であることを放送し、
センサの入力を受取るリクエストに応答してネットワーク中で複数のプログラム可能なネットワークノードの１以上のものにセンサの入力を供給するステップを含んでいる請求項１８記載の方法。
【請求項２３】
少なくとも１つのプログラム可能なネットワークノードはユーザと関連しさらに、
ユーザとして関連しているネットワーク中の少なくとも１つのプログラム可能なネットワークノードにセンサの入力を供給する請求項２２記載の方法。
【請求項２４】
さらに、センサの入力を受取るリクエストに応答するプログラム可能なネットワークノードがネットワーク中に存在しない場合にはセンサの入力を記憶する請求項２３記載の方法。
【請求項２５】
さらに、センサの入力が記憶された後、ネットワーク中の少なくとも１つのプログラム可能なネットワークノードからセンサ入力に対するリクエストを受取り、
記憶されたセンサの入力がリクエストされたネットワーク中の少なくとも１つのプログラム可能なネットワークノードにそのセンサの入力を供給する請求項２４記載の方法。
【請求項２６】
複数のプログラム可能なネットワークノードおよびリソースを具備しているネットワークを動作させる方法において、
第１のプログラム可能なネットワークノードを付勢し、
第１のプログラム可能なネットワークノードによりユーザと関連されているネットワークに放送し、
第２のプログラム可能なネットワークノードを第１のリソースと関連させ、
第２のプログラム可能なネットワークノードが第１のリソースを制御できるようにするために第１の命令のセットを第２のプログラム可能なネットワークノードに対して利用可能にし、
第１のリソースを介してセンサ入力を受取り、
第１のプログラム可能なネットワークノードにおいてネットワークを介してユーザにセンサ入力を送信するネットワークの動作方法。
【請求項２７】
複数のプログラム可能なネットワークノードおよびリソースを具備しているネットワークを動作させる方法において、
１以上のプログラム可能なネットワークノードに１以上の論理的ノードの名称を記録し、この１以上の論理的ノードの名称はそれぞれリソースのタイプと関連しており、
第１のプログラム可能なネットワークノードにより第１の論理的ノードの名称と関連されているプログラム可能なネットワークノードからの入力をリクエストし、
第１の論理的ノードの名称と関連されているプログラム可能なネットワークノードにより第２のプログラム可能なネットワークノードと関連されているリソースからセンサ入力を受取り、
第１のプログラム可能なネットワークノードへセンサ入力を送信するネットワークの動作方法。
【請求項２８】
少なくとも１つのリソースがそれに対して利用可能であることを決定し、
その少なくとも１つの利用可能なリソースのタイプを決定し、
決定されたタイプに基づいて１以上の論理的ノードの名称とプロセッサとを関連付け、各論理的ノードの名称はリソースのタイプと関連しており、
少なくとも１つの機能を実行するために命令を獲得し、その命令は１以上の論理的ノードの名称に基づいて決定されているプロセッサをエネーブルための命令を含むメモリを備えているプロセッサ。
【請求項２９】
プロセッサはネットワークを介して通信することが可能であり、命令はネットワークノードまたは外部入力手段から獲得される請求項２８記載のプロセッサ。
【請求項３０】
メモリはまたプロセッサによって獲得された命令を記憶する請求項２８記載のプロセッサ。
【請求項３１】
前記少なくとも１つの利用可能なリソースのタイプは、カメラ、マイクロホン、温度センサ、聴取装置、ガス検出器、光検出器、オーディオ／イメージ／ビデオレコーダまたはプレーヤ、メモリ、またはその他の周辺機器の１以上のものである請求項２８記載のプロセッサ。
【請求項３２】
プロセッサと関連している１以上の論理的ノードの名称に基づいて少なくとも１つの機能を行うために少なくとも１つの命令を実行することをプロセッサに可能にする命令をさらに含んでいる請求項２８記載のプロセッサ。
【請求項３３】
少なくとも１つの命令をプロセッサに実行させる命令は、
少なくとも１つの利用可能なリソースを介してセンサの入力を受取り、
１以上の論理的ノードの名称に基づいてネットワーク中で１以上のプログラム可能なネットワークノードにセンサの入力を供給することをプロセッサに可能にさせる請求項３２記載のプロセッサ。
【請求項３４】
少なくとも１つの機能の実行は、１以上の論理的ノードの名称に基づいてネットワーク中で複数のプログラム可能なネットワークノードの１以上のものからセンサの入力を受取る動作を含んでいる請求項３２記載のプロセッサ。
【請求項３５】
プログラム可能なネットワークノードと通信することのできる１以上のリソースから入力を受信する通信手段と、
処理手段により実行可能な１以上の命令のセットを記憶するメモリと、
処理手段とを具備し、その処理手段は、
少なくとも１つのリソースがそれに対して利用可能であることを少なくとも１つのプログラム可能なネットワークノードによって決定し、
少なくとも１つのプログラム可能なネットワークノードによってその少なくとも１つの利用可能なリソースのタイプを決定し、
決定されたタイプに基づいて１以上の論理的ノードの名称とプロセッサとを関連付け、各論理的ノードの名称はリソースのタイプと関連しており、
少なくとも１つの機能を実行するために命令を少なくとも１つのプログラム可能なネットワークノードに提供するために命令を実行し、与えられた命令は１以上の論理的ノードの名称に基づいて決定されるプログラム可能なネットワークノード。
【請求項３６】
リソースはプログラム可能なネットワークノードに接続されて動作する感知手段である請求項３５記載のプログラム可能なネットワークノード。
【請求項３７】
感知装置はプログラム可能なネットワークノードの範囲内に物理的に位置されている感知手段であり、無線通信によりプログラム可能なネットワークノードと通信可能である請求項３５記載のプログラム可能なネットワークノード。
【請求項３８】
メモリに記憶された１以上の命令のセットの少なくとも１つは、少なくとも１つのリソースのタイプが決定された後に通信手段により受信される請求項３５記載のプログラム可能なネットワークノード。
【請求項３９】
プログラム可能なネットワークノードと通信することのできる１以上のリソースから入力を受信する通信手段と、
処理手段により実行可能な１以上の命令のセットを記憶するメモリと、
命令を実行する処理手段とを具備し、その処理手段は、
少なくとも１つのリソースがそれに対して利用可能であることを少なくとも１つのプログラム可能なネットワークノードによって決定し、
少なくとも１つのプログラム可能なネットワークノードによってその少なくとも１つの利用可能なリソースの１以上の能力を決定し、
少なくとも１つの利用可能なリソースの１以上の能力に基づいて１以上の論理的ノードの名称と少なくとも１つのプログラム可能なネットワークノードとを関連付け、各論理的ノードの名称はリソースのタイプと関連しており、
１以上の論理的ノードの名称に基づいて少なくとも１つの機能を実行するために少なくとも１つのプログラム可能なネットワークノードを制御するプログラム可能なネットワークノード。
【請求項４０】
リソースはプログラム可能なネットワークノードに接続されて動作する感知手段である請求項３９記載のプログラム可能なネットワークノード。
【請求項４１】
感知装置はプログラム可能なネットワークノードの範囲内に物理的に位置されている感知手段であり、無線通信によりプログラム可能なネットワークノードと通信可能である請求項３９記載のプログラム可能なネットワークノード。
【請求項４２】
メモリに記憶された１以上の命令のセットの少なくとも１つは、少なくとも１つのリソースのタイプが決定された後に通信手段により受信される請求項３９記載のプログラム可能なネットワークノード。
【請求項４３】
カバー領域に地理的に分散されている複数のプログラム可能なネットワークノードを具備しているネットワーク感知システムにおいて、
各プログラム可能なネットワークノードは１以上の他のプログラム可能なネットワークノードと通信することが可能であり、
各プログラム可能なネットワークノードは、１以上のリソースまたは１以上の他のプログラム可能なネットワークノードからの入力を受信する通信手段と、
処理手段により実行可能な１以上の命令のセットを記憶するメモリと、
メモリに記憶されている命令を実行する処理手段とを具備し、
その処理手段は、
少なくとも１つのリソースがそれに対して利用可能であることを少なくとも１つのプログラム可能なネットワークノードによって決定し、
少なくとも１つのプログラム可能なネットワークノードによってその少なくとも１つの利用可能なリソースのタイプを決定し、
決定されたタイプに基づいて１以上の論理的ノードの名称と少なくとも１つのプログラム可能なネットワークノードとを関連付け、各論理的ノードの名称はリソースのタイプと関連しており、
少なくとも１つの機能を実行する命令を少なくとも１つのプログラム可能なネットワークノードに供給するように動作し、与えられた命令は１以上の論理的ノードの名称に基づいて決定するように構成されているネットワーク感知システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的にセンサネットワークに関し、特に、感知、計算、およびネットワーク化能力を有する装置のネットワークの自動プログラミングに関する。
【背景技術】
【０００２】
インテリジェントなセンサおよびマイクロセンサの利用可能性は無線センサネットワークの開発は促進されている。無線センサネットワークは環境の監視が有用な情報を提供する可能性の高い状態で特に事実上無限に応用がある。センサネットワークの応用の幾つかの例には遠隔的な健康管理、農業、環境コンプライアンス、構造物、状態ベースの保守、軍事的監視および医療災害等が含まれる。
【０００３】
通常のセンサネットワークは種々の出版物により研究されている。信頼性のために、通常のセンサネットワークは高度に冗長でなければならない。すなわち、多数のセンサが展開され、それにより１以上のセンサが動作できなくなった場合にも必要な情報が依然として高い信頼性で収集され、報告されることができる。無線ネットワークの進歩により、高度に冗長なシステムがますます適用しやすくなったが、展開および動作のためのコストが高価になる欠点がある。
【０００４】
さらに、収集された情報のネットワーク経路設定は多くのネットワークアーキテクチャに大きく影響する。全てのノードが単一のホップで全ての他のノードに到達することのできないネットワークでは、中継機構が要求される。さらに、ノードが頻繁に往来するセンサネットワークでは、ネットワークがどのように故障に対応するかによりネットワークの性能および信頼性に影響する。一般的に、ノードの故障の場合にダイナミックに再構成することのできるネットワーク、特にセンサネットワークが望まれ、その場合に無線周波数環境が変化するとき接続が迅速に変化してノードのバッテリ電力が予測できない方法で消耗する可能性がある。
【０００５】
センサとして多数のカメラを使用するカメラ監視システムのような通常のセンサネットワークでは、カメラは固定され、カメラの位置が侵入者に知られた場合には、監視システムの有効性は妥協される可能性がある。さらに、カメラの移動にはしばしばコストのかかるシステムの再構成を必要とする。
【０００６】
無線技術は、センサの一部または全部が拘束のないおよび／または移動体であってもよいセンサシステム展開を可能にする。さらに、多くの応用において、多数の、または全てのセンサは大きく減衰されないで動作する必要がある。それはセンサは物理的にアクセスできない位置或いは危険な位置に配備される可能性があるためである。例えば、軍用の状態監視のために使用されるセンサネットワークにおけるセンサは敵の領域に展開される可能性があり、或いは有害な化学物質のレベルを測定するために使用されるセンサは有害な化学物質の危険なレベルの場所に配備される可能性がある。少なくともこれらの理由のために、多くの研究が広範囲で、自己形成可能で、フレキシブルでプログラム可能である無線センサネットワークを展開するために行われている。
【０００７】
センサデータは物理的なセンサの位置と関連しているから、センサの空間的座標位置を決定することは重要である。事実、位置決定技術を完成するために必要なデータを得るために多くの努力が注がれている。コスト、サイズ、或いはパワーについての制約および視線の制約がＧＰＳのようなグローバルな位置決定技術を妨げている。この場合に自己形成センサネットワークは他の局所化された方法を使用することを必要とし、それはたとえばネットワーク自体におけるセンサの使用を含んでいる。
【０００８】
伝統的なセンサネットワークは、考えているある応用により展開される制限を受け、それ故、高度に特定されたソフトウエアおよび／または形態の予想を有している。例えば、多くのシステムが同じハードウエアおよびソフトウエアを大量に共用しているにもかかわらず、別々のセンサネットワークが家庭の安全、家庭の安全監視、幼児の監視、および老人のホームケア等のために開発されている。同じ応用であってもセンサノードの向上およびそれらの機能性が高価なシステムの再構成およびソフトウエアの変更を招いている。
【特許文献１】米国特許５，９７１，５９７
【特許文献２】米国特許６，０５２，７８４
【特許文献３】米国特許６，２０８，２４７
【特許文献４】米国特許６，６０４，１４０
【特許文献５】米国特許６，６６５，７１７
【特許文献６】米国特許６，６９７，６４９
【非特許文献１】Kasten,O，他Swiss Federal Institute of Technology ，ＰＡＣＴ2001，１〜10頁
【非特許文献２】Crossbow Technology 社“Stargate Data Sheet ”2004年6 月29日http//www.xbow.com/Products/productsdetail.aspx?＝85
【非特許文献３】Adjie-Winoto,W，他、ACM Symposium on Operating System Principles(SOSP'99) 、1999年12月 186〜201 頁
【非特許文献４】Heidemann,J.他、USC Information Science and Computer Science Department,18回ACM Symposium on Operating System Principles、2001年10月、1 〜14頁
【非特許文献５】Levis,P.他、Computer Science Division 、カリホルニア大学バークレイ、インテル社1 〜11頁
【非特許文献６】Bulusu,N. 他Proceedings of the 6th International Symposium on Communication Theory and Applications (ISCTA'01)、英国2001年 7月、1-6 頁
【非特許文献７】He,T. 他  Department of Computer Science、バージニア大学1 〜24頁
【非特許文献８】Henderson T.C.他  School of Computer、ユタ大学2003年 3月 1〜13頁
【非特許文献９】Ye,W. 他  University of Southem California and Computer Science Department、カリホルニア大学1 〜10頁
【非特許文献１０】Rodzevski A.他  Intelligent Systems Groupe School of  Technology and Sciety 、Maimo 大学 1〜4 頁
【非特許文献１１】Horton M. 他  Sensor、2002年 4月 1〜8 頁
【非特許文献１２】Wanges W,M. 他  Sensor、2000年 5月 1〜8 頁
【非特許文献１３】Xu,Y、Department of Science and Engineering ペンシルベニア州立大学、In Proc.International Conference on DISTRIBUTED Computing System、2003年 5月、1 〜2 頁
【非特許文献１４】“Smart Dust”2003年 7月 3日http//www.bsac.eecs.berkeley.edu/warneke/SmartDust/index.html ．8 頁
【非特許文献１５】Crossbow Technology 社“WSC100無線スマート1/0 ”無線センサネットワーク85頁
【発明の開示】
【発明が解決しようとする課題】
【０００９】
したがって、同じセンサネットワークが、実行可能でシステムの変化や性能向上に簡単に低いコストで適応できる種々の応用をサポートできる方法およびシステムが必要とされている。例えば、ネットワークは新しいセンサおよび装置の自動的な構成および装備をサポートできなければならない。さらに、ネットワーク技術およびリソースとは独立した方法でセンサネットワークをプログラムすることのできるセンサ適用プログラマを可能にする新しいセンサネットワークプログラミング環境が必要とされている。
【課題を解決するための手段】
【００１０】
したがって、本発明の１実施形態は、複数のノードと少なくとも１つのリソースとを具備しているセンサネットワークを動作させる方法およびシステムに関しており、それにおいてはリソースは感知装置（例えばカメラまたはマイクロホン）またはその他の周辺装置（例えば記憶装置または記録装置）であることができる。本発明の１実施形態によれば、ネットワーク中の少なくとも１つのノードは、少なくとも１つのリソースがそれに対して利用可能であることおよびリソースのタイプをを決定する。そのリソースのタイプに基づいてノードは１以上の論理的ノードの名称と関連付けられる。論理的ノードの名称に基づいて、そのノードは少なくとも１つの機能を実行するために命令を獲得する。
【００１１】
本発明の別の実施形態はプロセッサであり、それは命令を記憶するメモリを含み、その命令は少なくとも１つのリソースがそれに対して利用可能であることをプロセッサが決定することを可能にし、少なくとも１つの利用可能なリソースのタイプを決定し、決定されたタイプに基づいて１以上の論理的ノードの名称とプロセッサとを関連付け、各論理的ノードの名称がリソースのタイプと関連しており、少なくとも１つの機能を実行するために命令を獲得し、与えられた命令は１以上の論理的ノードの名称に基づいて決定される。
【００１２】
本出願の一部を構成する添付図面により本発明の幾つかの実施形態を例示して詳細な説明と共に本発明の原理を説明する。
【発明を実施するための最良の形態】
【００１３】
添付図面を参照にして本発明の実施形態を以下詳細に説明する。同じ参照符号は図面全体を通しておなじまたは類似する部分をしめすために使用されている。
【００１４】
［例示的ネットワーク］
本発明のセンサネットワークは複数のノードと少なくとも１つのリソースとを備えている。リソースは、マイクロホン、ガス検出器、光検出器、運動検出器、聴取装置、超音波装置、サーモメータのようなセンサ、或いはオーディオ、ビデオ、イメージの記憶、表示、演奏または記録に使用される周辺装置であることができる。リソースはノード内に埋設され、またはノードと関連していてもよい。ノード内に埋設されたリソースはノードの物理的な限定範囲内に配置されてもよく、或いはノードに物理的に取付けられてもよい。ノードと関連しているリソースはノードから物理的に離れていてもよいが、ノードと接続され、または無線通信のように通信できるように動作することができる。
【００１５】
図１は本発明によるノード100 の例示的な構成を示している。例示的なノード100 は例えばプロセッサ110 、メモリ120 、ネットワークインターフェース130 およびセンサインターフェース140 を備えている。ノード100 はまた電源（図示せず）を備え、それは例えば標準電力、太陽電池、またはバッテリでよい。上述したように、ノード100 は随意的にノード100 内に埋設されたセンサ150 を有していてもよく、または例えばバスのような通信リンクを介して接続されていてもよい。その代わりにノード100 は随意的にノード100 から物理的に遠隔位置にあり、通信リンク160 によって接続されているセンサ150 を有していてもよく、その場合には、通信リンク160 は例えば無線通信であってもよい。
【００１６】
本発明の例示的な実施形態では、１以上のノードはマイクロ制御装置クラスのノードである。例えば、マイクロ制御装置クラスのノード中のプロセッサ110 は、例えばＡＲＭ社により市販されているＡＲＭ７のような６４ＭＨｚ、３２ビットのプロセッサ、或いはその他の類似のクラスのプロセッサで構成されることができる。メモリ120 はＲＡＭ、フラッシュメモリ、またはＲＡＭとフラッシュメモリの組合わせであってもよい。メモリ120 は動作ノード100 に対するシステムソフトウエア、ネットワークプロトコルスタック、ネットワーク経路設定プロトコルおよびリソースを動作させるためのその他のソフトウエアまたはドライバを記憶している。メモリ120 は、ネットワーク中リソースを発見するためのアプリケーションコードまたはソフトウエアのようなネットワークにより使用するための他のソフトウエアを記憶することもできる。
【００１７】
別のノードはバークレイのカリフォルニア大学（ＵＣＢ）によって開発されたモート（ｍｏｔｅ）のような小さい、低パワーノードであってもよい。ＵＣＢのモートはミリメートルから数センチメートルの範囲の大きさの非常に小型のコンピュータであり、周囲の環境についての情報を収集するためのセンサを備えている。現在のモートは例えば１ｍｍ×２ｍｍの大きさであり、特に１２８Ｋｂのフラッシュメモリを有する８ビットプロセッサと、数十メートルのＲＦ範囲を有するＦＳＫ無線送信機のような通信装置と、低電力電源と、センサとを有している。モートは小型のＯＳで動作することが可能な、イベント駆動マルチスレッド動作システムであり、ＵＣＢにおいて開発ディベロッパにより開発されたＮｅｓＣ、Ｃ状言語で書かれたアプリケーションである。ある実施形態では、１以上のノードはスマートダストであってもよく、それはＵＣＢによって開発されたさらに小型の別のスマートノードである。
【００１８】
ノード100 の別の適当な例はSystronics社により提供されたＪスタンプである。Ｊスタンプは１×２インチの大きさであり、３２ビットの制御装置と、２Ｍｂのメモリと、ネーチブ実行Ｊａｖａ（登録商標）ハードウエアから構成され、それはパワー効率がよく、しかもその計算力は強力である。ソフトウエアはＪａｖａで開発され、ノードにロードされる。
【００１９】
ノード100 におけるネットワークインターフェース130 はネットワーク中の他のノードおよびリソースと通信する任意の利用可能な手段を含んでいる。本発明の１実施形態ではノードの一部または全部は物理そう標準に基づく無線技術を使用して通信することができる。例えばブルーツース(Bluetooth) ＲＦ標準方式を使用して通信することができる装置はブルーツース技術と両立する無線周波数チップを有することができる。
【００２０】
本発明による無線センサネットワークにおけるノードは、物理層の上の層で例えば搬送波感知多元アクセス（ＣＳＭＡ）（ＩＥＥＥ802.11）のような媒体アクセス制御（ＭＡＣ）を使用して互いに通信することができる。
【００２１】
センサインターフェース140 は、センサがプロセッサ110 および／またはメモリ120 との間で情報を交換することを可能にする標準的なインターフェースでよい。例えば、センサ150 がノード100 に物理的に埋設され、または接続されている場合には、センサインターフェース140 は標準的なバスおよびそれに伴うプロトコルでよい。しかしながら、センサ150 が遠隔のノード100 に位置している場合には、センサインターフェース140 は無線インターフェースおよびそれに伴うプロトコルである。幾つかの実施形態では、センサインターフェース140 はアナログデジタル変換器および／またはマルチプレクサを備えていてもよい。
【００２２】
コンピュータの当業者は他の適当な、もっと小型のコンピュータ装置が用途によっては適当であることを認識するであろう。さらに、ノード100 は電話、パーソナルデジタルアシスタント（ＰＤＡ）、ＲＦＩＤリーダまたはその他の携帯型のコンピュータ装置のような装置であってもよい。
【００２３】
上述のように本発明によるセンサネットワークは、１以上のリソースを有する１以上のノードを備えている。ネットワーク中のノード100 の一部または全部は１以上のリソースとインターフェースするためのドライバのようなソフトウエアを備えることもできる。その代わりに、ノード100 の一部または全部はネットワークで個々のリソースとダイナミックにインターフェースするソフトウエアを得てもよい。そのようなソフトウエアは、例えば、ノード100 がその付近の特定のリソースと関連する機会を有することを検出したときノード100 にダウンロードされることができる。
【００２４】
［論理的ネットワークの動作］
上述のように、本発明によるセンサネットワークは、１以上のリソースを有する１以上のノードを備えている。少なくとも１つの実施形態では、全てのノードは、家庭、倉庫、病院のような監視領域に地理的に分散して配置されている。ネットワークのユーザは自動車であってもよく、すなわちユーザはその領域を中心に移動してもよい。ネットワーク中の各ノードは予め環境を知っておらず、付勢または動作過程においてネットワーク環境を決定する。本発明の１実施形態では、ネットワーク中の一部または全部のノードは論理的ノードの名称と関連している。さらに、一部または全部のノードはそれらの関連する論理的ノードの名称に基づいてそれらの機能を行うようにダイナミックに構成することができる。論理的レベルのプログラミングの使用は、任意の特定の装置の正確な物理的位置を知る必要なく、“カメラ”、“マイクロホン”、または“ユーザ”のような論理的ノードの名称を使用してプログラムを書くことを可能にする。
【００２５】
インターネットおよび多くのネットワークはＩＰアドレス208.154.23.54 のようなネットワークアドレスを使用する。しかしながら、これらのアドレスはノードの空間的アドレス、すなわち、緯度、経度、高度、またはｘ，ｙ，ｚ座標と相関性を有していない。ある実施形態では、応答するノードの空間的アドレスを知る必要はない。しかしながら、空間的情報が必要である場合には、任意のノードの空間的アドレスは多くの既知の方法の任意のものにより決定されることができる。例えば、ある実施形態では、１以上のノードは例えばグローバル位置決定システム（ＧＰＳ）のようなノードの空間的アドレスを決定する手段を有している可能性がある。特定のノードがＧＰＳ装置を有していない場合には、それを有している他のノードと通信することにより自分の位置を決定することができる。
【００２６】
本発明の１実施形態を図２を参照にして説明する。図２は本発明によるネットワークノードとリソースを示している。図２は例えば電子的に監視される家庭、倉庫、病院を示している。
【００２７】
図２に示された実施形態において、ノード20,21,22,23,24はマイクロ制御装置クラスのノードであってよい。ノード26と27は埋設されたリソースを有するものであってもよい。例えばノード26は埋設されたマイクロホンを有するノードであり、ノード27は埋設された温度センサを有するノードである。ノード40は例えばマイクロ制御装置クラスのノードであり、例えば記憶ノードとして動作する。図２ではユーザはノード21の付近に示されている。
【００２８】
図３は、図２に示されたネットワークを動作するための例示的な方法のステップを示している。図２の１以上のノードが付勢される（ステップ310 ）。１以上のノードの付勢は例えば全体としてネットワークが最初に付勢されたとき、または事象が発生したときに発生する。例えば１以上の個々のノードが付勢されない状態に保持される可能性があり、長期間に対してエネルギを保存するために“休眠”している可能性もある。そのようなノードは事象が発検出されたときには休眠から目覚めて付勢されることができる。ある実施形態においては、１以上のノードはタイマーを使用して、ある時間でそれ自身および／または他のノードを付勢する。さらに、ネットワーク中の幾つかのノードは“ピコネット”として組織化され、近隣のノードのグループを同期された休眠にすることも可能である。
【００２９】
付勢されたとき、ノードは利用可能な１以上のリソースを決定する。例えば、ノード20はマイクロホン50が近くにあることを感知し、ノード22はカメラ51が近くにあることを感知する。ノード21はセンサを身に付け或いは携帯しているユーザが近くにいることを感知し、或いはユーザはノード21で登録されていることを感知する。その登録は、例えばユーザがボタンを押すことにより、またはユーザがそのノードと対話することにより、或いはノードがはイメージ認識技術によりユーザを検出することにより行われる。
【００３０】
ノードはそれに利用可能な１以上のリソースを決定することができ、例えば、それが通信に利用できることの注意を放送して誰かの回答があるの待機する。別の実施形態において、ノードはリソースにより送られた放送を聴いてそれを利用するリソースを決定することもできる。
【００３１】
いずれにせよ、ノードがリソースを検出したとき、それは特定のリソースと通信するのに必要なソフトウエアを有しているかについて決定する（ステップ330 ）。例えば、ノード20はマイクロホン50が近くにありそれと通信することを望んでいることを決定する。ノード20はその後、マイクロホン50と通信するための必要なソフトウエアを有しているかを決定する。有していないとき、ノード20はネットワークによりそのようなソフトウエアを獲得する（ステップ335 ）。例えば、ノード20はネットワークによりマイクロホン50のためのドライバに対するリクエストを放送する。その後ノード20は、適当なドライバを得ることをノード20に可能にするアドレスまたは情報を含むリクエストに対する応答を獲得する。ある実施形態では、ノード20は遠隔的に制御され、すなわち、ノード20を動作させる命令またはソフトウエアはノード20以外のネットワーク上のどこかに位置していてもよいが、ノード20を動作させるために使用することができる。
【００３２】
ノードが付勢され、それに対して利用可能な１以上のリソースを決定した後、それは１以上の他のノード或いはネットワーク全体にその役割または能力を放送しアナウンスしてもよい（ステップ340 ）。例えば、ノード21は論理的ノード名称“ユーザ”と関連し、それ自身をユーザとしてネットワークにアナウンスし、ユーザがノード21に登録されたことを示すか、或いはそれでなければそのノード21がユーザと通信できることを示す。同様にノード20は論理的ノード名称“マイクロホン”と関連し、それがマイクロホンと関連していることを示すメッセージをネットワークに放送する。
【００３３】
ノードはまた役割または情報が利用可能になったときにノードが行う役割、或いはノードが受取る情報のタイプを示すために論理的ノードの名称と関連されることができる。例えばノード21はまたそれ自身論理的ノード名称“ディスプレイ”と関連し、それがディスプレイを有するのみならず、利用可能になったときにカメラまたはビデオカメラからイメージデータを受取るようなものであることを示している。
【００３４】
ノードが論理的ノード名称と関連する場合には、データはリソースから得られ（ステップ345 ）、情報のタイプに関するリクエストは未処理であり（ステップ350 ）、ノードは受信された情報を直ちにリクエストしているノードに転送する（ステップ355 ）。
【００３５】
例えば、図２を参照にして説明すると、ノード20はマイクロホン50がそれに対して利用可能か否かを決定し、論理的ノード名称“マイクロホン”と関連付ける。マイクロホン50が例えばドアをノックするような音を検出した場合には、このデータはそのような情報をリクエストする他のノードへ分配するために利用できる。もしも、他のノードが例えば論理的ノード名称“スピーカ”をリクエストしたならば、それによって可聴データを使用することを所望すること、および／または能力のあることを示す。ノード20はそのような情報を論理的ノード名称“スピーカ”と関連するノードへ送信する。ノード20はまた音響をリクエストしているノードへそれを伝送することを望んでいることをネットワークへ放送する。
【００３６】
ある実施形態では、ノード20はまた例えばユーザがネットワークにより登録されたことを見るためにチェックする。家庭監視の例のネットワークの“ユーザ”は例えば家庭監視システム中のマイクロホンにより検出された音を特定することを望んでいる家屋の所有者であってもよい。
【００３７】
しかしながら、リソースからデータがなにも得られていない場合には、ノードは単に待機する（ステップ347 ）。リソースからデータが利用できるがそのデータのタイプに対する目立ってリクエストがない場合には、そのデータは記憶される（ステップ360 ）。例えばマイクロホン50がドアをノックする音を検出してノード20が論理的ノード名称“マイクロホン”と関連付けられているが、論理的ノード名称“スピーカ”と関連付けられたノードがなく、論理的ノード名称“ユーザ”と関連付けられたノードもない。その場合にはそのデータは、このタイプのデータがリクエストされるときまでノード40中に記憶されることができる。例えばユーザが家に戻り再び“ユーザ”としてネットワークと関連されたときそのユーザは記憶装置からそのデータを呼び返すことができる。
【００３８】
ある実施形態では、ネットワーク中のノードはまた情報を提供するために共同動作をするようにダイナミックにプログラムされてもよい。例えば、ノード20がマイクロホンの役割を行うことが検出されたとき、ノード20は、音が検出されたならば近くの１位状のカメラが付勢されて対応するビデオ画像または静止画像を収集する動作を行うようにダイナミックにプログラムされることができる。例えば、マイクロホンが音を検出したならば、ノード20は論理的ノード名称“カメラ”を登録されたノードを捜し、論理的ノード名称“ユーザ”を有するノードへビデオ画像または静止画像を送る。この例のようにノード22が論理的ノード名称“カメラ”を登録されている場合には、ノード22はビデオをノード21へ送る。
【００３９】
図４は、上述の例示的な実施形態のタイプで生じる可能性のあるユーザと関連したノード21へノード20および22から情報を通信する経路を示している。ユーザがノード21と関連しているならば、ノード20はノード29に音を送信し、そのノード29はノード25へそれを送信し、そのノード25はノード27へそれを送信し、最終的にノード21へ送信し、このノード21でそれはユーザへ配送される。同様に、カメラ51から収集されたビデオデータはノード22へ送信され、そのノード22はノード28、ノード40、およびノード26を介してノード21へ送信される。この例では、これらの経路のいずれかのノードのどれかが故障し、または利用できなくなった場合には、情報は別の経路を通ってノード21へ導かれることができる。アドホックネットワークに対する通常の経路設定プロトコルがこれらの経路を計算するために使用されることができる。
【００４０】
もしも、図２に示され、上述された例で、１より多くの経路が特定のノード名称と関連しているならば、ネットワークはどのリソースが応答に最も適しているかを決定するプロセスを使用する。例えばカメラ52が付勢され、論理的ノード名称“カメラ”と関連しているならば、２つのリソースはカメラとして登録され、カメラ51はノード22と関連し、カメラ52はノード24と関連している。この場合に、ノード20は例えばどのカメラが最もその必要に適しているかを決定するようにプログラムされている。もしも、カメラ51がその必要により適している、例えばより近くであり、より高い解像度を有し、より良好な角度であり、或いはその事象に関して利用可能な情報の品質を改善する他の方法で適していると決定された場合には、ノード20はネットワークにユーザに送られるビデオはカメラ51から来るべきであると通報する。
【００４１】
多くの応用においてユーザを含む多くのノードの任意のものが移動体であってもよい。移動体ユーザは例えばノード21の範囲から外へ移動してノード26の範囲に入ってもよい。ノード21がユーザがもはやその範囲内にいない（例えば取付けたセンサともはや通信することができないことを検出しまたはユーザによって運ばれることにより）ことを検知した場合には、ノード21はネットワークにユーザが利用可能ではないことを放送してもよい。この場合には、ユーザが別のノードの範囲に移動するまで、或いは別のノードで登録されるまで登録されたユーザは存在しない。その代わりにノード26は自動的にユーザがその範囲に移動してユーザがノード26と関連していることを放送できることを検出してもよい。ユーザが利用可能ではないことをノード21がまだ公表していない場合には、コンタクトしたノード26によりノード21とユーザとの関係を抹消するようにユーザがネットワークをトリガーしてもよい。
【００４２】
ユーザまたは任意のノードが利用可能ではない期間中、リソースにより収集されたデータは待機しているそのようなリクエストがないときには記憶されてもよい。例えば、ノード20または22がデータを有しており、ネットワーク中のノードと関連しているユーザがないことが決定されたときには、ノード20または22はデータを記憶することができる。本発明のネットワークにおいては、ネットワーク中の１以上のノードはすでにデータを記憶する役割を行うノードの能力を示している“記憶”のような論理的ノード名称と関連していてもよい。そうであれば、ノード20または22は論理的ノード名称“記憶”と関連している１以上のノードにデータを記憶することができる。ある実施形態では、ネットワークプロトコルに応じて、ノード20または22は記憶のリクエストを放送して承認を待機し、データをその記憶位置へ送っることもできる。
【００４３】
図５は、例えば、ノード40が論理的ノード名称“記憶”と関連し、および／または記憶の能力のあるノード20および／または22に応答してもよい。図５はノード20および22から記憶ノード40への情報の例示的な通信路を示している。
【００４４】
データがノード40に記憶され、データに対するリクエストが後で公表または刊行された場合には、そのデータは記憶ノード40からリクエストしている人に転送されてもよい。例えば、図６に示されているように、ユーザはノード21の領域範囲に移動して戻る可能性がある。ノード21はユーザがその領域範囲に移動して戻ったことを検知し（例えばユーザに取付けられまたは携帯されているセンサト通信できることを検出することにより）、ユーザが利用可能であることをネットワークに放送することができる。記憶ノード40は図６に示されているようにノード26を介してノード21へ情報を転送することができる。
【００４５】
上述したようにネットワーク中の各ノードは付勢されたときその関連を設定することができ、それはネットワークの最初の付勢で生じる。ネットワーク中の各ノードは別の時間に同様にその関連を再設定または設定することができる。例えば、１以上のノードは周期的に再評価されてその関連を再放送されてもよい。少なくとも１つの実施形態において、１以上のノードはネットワークの状態または形態の変更時にその関連を再評価および再放送することをトリガーされてもよい。再放送はネットワーク中のノードその到達できる経路を更新することを可能にする。
【００４６】
本発明のその他の実施形態はここに開示された本発明の明細および実際の構成を考慮すれば当業者には明白であろう。ここに開示された明細および実際の構成は単なる例示であり、本発明の技術的範囲は特許請求の範囲の記載によってのみ規定される。
【図面の簡単な説明】
【００４７】
【図１】本発明によるノード100 の例示的構成の概略図。
【図２】本発明によるノードおよびリソースのネットワークの概略図。
【図３】図２に示されたネットワークを動作させる例示的な方法のステップを示すフロー図。
【図４】ノード20および22からユーザと関係するノード21への情報の通信経路を示す概略図。
【図５】ノード20および22から記憶ノード40への情報の通信経路を示す概略図。
【図６】ノード40からユーザと関係するノード21への情報の通信路を示す概略図。
【図１】
2005045784.tif 000003
【図２】
2005045784.tif 000004
【図３】
2005045784.tif 000005
【図４】
2005045784.tif 000006
【図５】
2005045784.tif 000007
【図６】
2005045784.tif 000008