(57)【要約】【課題】センサノードに対してノードプログラムを配信する際にセンサノードで消費する無線通信電力を削減する。【解決手段】プログラム配信装置１０で、距離データ１４Ｂに基づいて配信先ノードまでの最短経路を計算し、最短経路を構成するセンサノード２０が配信順に記載された配信リスト１４Ｃをノードプログラム１４Ａに添付し、これら配信データを当該配信リスト１４Ｃに基づき無線通信により配信する。センサノード２０で、無線通信により受信した配信データに含まれる配信リスト１４Ｃで指定された次のセンサノード２０へ、センサネットワークを介して当該配信データを無線通信により配信し、当該配信データが自ノード宛の場合は当該配信データ内のノードプログラム１４Ａを記憶部２４へ格納する。【選択図】  図１
2010098565.tif 000002
【特許請求の範囲】
【請求項１】
無線通信によりセンサネットワークを構成する複数のセンサノードを含み、前記センサノードでセンシングしたセンサデータを前記センサネットワークを介して収集するセンサネットワークシステムであって、
前記センサノードのうちのいずれかの配信先ノードに対し、前記センサネットワークを介してノードプログラムを無線通信により配信するプログラム配信装置を備え、
前記プログラム配信装置は、前記センサノード相互間の距離および前記センサノードと自装置との距離を示す距離データに基づいて、前記配信先ノードまでの最短経路を計算する経路計算部と、前記最短経路を構成する前記センサノードが配信順に記載された配信リストを前記ノードプログラムに添付し、これら配信データを当該配信リストに基づき無線通信により配信するプログラム配信部とを備え、
前記センサノードは、前記センサネットワークを介して前記配信データを無線通信により受信し、当該配信データに含まれる配信リストで指定された次のセンサノードへ、前記センサネットワークを介して当該配信データを無線通信により転送し、当該配信データが自ノード宛の場合は当該配信データ内のノードプログラムを記憶部へ格納するプログラム転送部を備える
ことを特徴とするセンサネットワークシステム。
【請求項２】
請求項１に記載のセンサネットワークシステムにおいて、
前記センサノードは、異なる位置に配置された複数の無線通信部を備え、
前記経路計算部は、前記センサノードの無線通信部相互間の無線区間距離および前記センサノードの無線通信部と自装置の無線通信部との無線区間距離を示す距離データに基づいて、前記配信先ノードまでの最短経路を計算し、
前記プログラム配信部は、前記最短経路を構成する前記センサノードの受信用および送信用の無線通信部が配信順に記載された配信リストを前記ノードプログラムに添付し、これら配信データを当該配信リストに基づき自装置の無線通信部から配信する
ことを特徴とするセンサネットワークシステム。
【請求項３】
請求項２に記載のセンサネットワークシステムにおいて、
前記プログラム転送部は、自ノードの無線通信部で受信した配信データの配信リストから自ノードの受信用および送信用の無線通信部に関する自区間情報を切り取った後、残りの配信リストと前記ノードプログラムとからなる新たな配信データを、当該自区間情報で指定された自ノードの送信用無線通信部から、残りの配信リストで指定された次ノードの受信用無線通信部へ転送することを特徴とするセンサネットワークシステム。
【請求項４】
請求項２に記載のセンサネットワークシステムにおいて、
前記経路計算部は、前記配信先ノードまでの無線区間距離の総和が同一である複数の最短経路が計算された場合、前記各センサノードと当該センサノードの無線通信部との有線区間における有線区間距離を示す距離データに基づいて、それぞれの最短経路のうち、当該最短経路に含まれる有線区間距離の総和が最も小さいものを、前記ノードプログラムを配信するための最短経路として選択することを特徴とするセンサネットワークシステム。
【請求項５】
無線通信によりセンサネットワークを構成する複数のセンサノードを含み、前記センサノードでセンシングしたセンサデータを前記センサネットワークを介して収集するセンサネットワークシステムで用いられ、前記センサノードのうちのいずれかの配信先ノードに対し、前記センサネットワークを介して無線通信によりノードプログラムを配信するプログラム配信装置であって、
前記センサノード相互間の距離および前記センサノードと自装置との距離を示す距離データに基づいて、前記配信先ノードまでの最短経路を計算する経路計算部と、
前記最短経路を構成する前記センサノードが配信順に記載された配信リストを前記ノードプログラムに添付し、これら配信データを当該配信リストに基づき無線通信により配信するプログラム配信部と
を備えることを特徴とするプログラム配信装置。
【請求項６】
請求項５に記載のプログラム配信装置において、
前記センサノードは、異なる位置に配置された複数の無線通信部を備え、
前記経路計算部は、前記センサノードの無線通信部相互間の無線区間距離および前記センサノードの無線通信部と自装置の無線通信部との無線区間距離を示す距離データに基づいて、前記配信先ノードまでの最短経路を計算し、
前記プログラム配信部は、前記最短経路を構成する前記センサノードの受信用および送信用の無線通信部が配信順に記載された配信リストを前記ノードプログラムに添付し、これら配信データを当該配信リストに基づき自装置の無線通信部から配信する
ことを特徴とするプログラム配信装置。
【請求項７】
請求項６に記載のプログラム配信装置において、
前記経路計算部は、前記配信先ノードまでの無線区間距離の総和が同一である複数の最短経路が計算された場合、前記各センサノードと当該センサノードの無線通信部との有線区間における有線区間距離を示す距離データに基づいて、それぞれの最短経路のうち、当該最短経路に含まれる有線区間距離の総和が最も小さいものを、前記ノードプログラムを配信するための最短経路として選択することを特徴とするプログラム配信装置。
【請求項８】
無線通信によりセンサネットワークを構成する複数のセンサノードと、前記センサノードのうちのいずれかの配信先ノードに対し、前記センサネットワークを介して無線通信によりノードプログラムを配信するプログラム配信装置とを含み、前記センサノードでセンシングしたセンサデータを前記センサネットワークを介して収集するセンサネットワークシステムで用いられるセンサノードであって、
前記センサネットワークを介して前記配信データを無線通信により受信し、当該配信データに含まれる配信リストで指定された次のセンサノードへ、前記センサネットワークを介して当該配信データを無線通信により転送し、当該配信データが自ノード宛の場合は当該配信データ内のノードプログラムを記憶部へ格納するプログラム転送部を備える
ことを特徴とするセンサノード。
【請求項９】
請求項８に記載のセンサノードにおいて、
異なる位置に配置された複数の無線通信部を備え、
前記配信リストは、前記最短経路を構成する前記センサノードの受信用および送信用の無線通信部が配信順に記載されたリストからなり、
前記プログラム転送部は、自ノードの無線通信部で受信した配信データの配信リストから自ノードの受信用および送信用の無線通信部に関する自区間情報を切り取った後、残りの配信リストと前記ノードプログラムとからなる新たな配信データを、当該自区間情報で指定された自ノードの送信用無線通信部から、残りの配信リストで指定された次ノードの受信用無線通信部へ転送する
ことを特徴とするセンサノード。
【請求項１０】
無線通信によりセンサネットワークを構成する複数のセンサノードを含み、前記センサノードでセンシングしたセンサデータを前記センサネットワークを介して収集するセンサネットワークシステムで用いられ、前記センサノードのうちのいずれかの配信先ノードに対し、前記センサネットワークを介して無線通信によりノードプログラムを配信するプログラム配信装置のコンピュータに、
前記センサノード相互間の距離および前記センサノードと自装置との距離を示す距離データに基づいて、前記配信先ノードまでの最短経路を計算する経路計算ステップと、
前記最短経路を構成する前記センサノードが配信順に記載された配信リストを前記ノードプログラムに添付し、これら配信データを当該配信リストに基づき無線通信により配信するプログラム配信ステップと
を実行させるプログラム。
【請求項１１】
無線通信によりセンサネットワークを構成する複数のセンサノードと、前記センサノードのうちのいずれかの配信先ノードに対し、前記センサネットワークを介して無線通信によりノードプログラムを配信するプログラム配信装置とを含み、前記センサノードでセンシングしたセンサデータを前記センサネットワークを介して収集するセンサネットワークシステムで用いられるセンサノードのコンピュータに、
前記センサネットワークを介して前記配信データを無線通信により受信し、当該配信データに含まれる配信リストで指定された次のセンサノードへ、前記センサネットワークを介して当該配信データを無線通信により転送し、当該配信データが自ノード宛の場合は当該配信データ内のノードプログラムを記憶部へ格納するプログラム転送ステップを実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、センサノード技術に関し、特にセンサノード上で実行されるプログラムを配信する技術に関する。
【背景技術】
【０００２】
センサネットワークシステムは、室内に配置されている家具、食器、器具、道具、装置などの固体状の物体、および床、壁、天井、支柱のような建築物の一部をなす物体に、演算処理機能、無線通信機能、センシング機能を有する小型のセンサノードを取り付け、これらセンサノードでネットワークを形成して、個々のセンサノードで取得したセンサデータを収集するシステムである。
【０００３】
従来、このようなセンサノードで実行されるノードプログラムを変更する方法には、無線通信機能を用いてノードプログラムを変更する手法がある（例えば、被特許文献１など参照）。この手法は、プログラム配信装置（サーバ）に用意したノードプログラムを、指定したセンサノードに対して無線通信機能を用いて送付し、センサノード上のノードプログラムを書き換えている。
【０００４】
【非特許文献１】T.Liu, C.M.Sadler, P.Zhang,and M.Martonosi,"Implementing software on resource constrained mobile sensors: experiences with impala and zebranet," In Proc. or the 2nd Intl. Conf. on Mobile systems, applications, and services (MobiSys), pp.256-269 (2004).
【発明の開示】
【発明が解決しようとする課題】
【０００５】
センサノード上のプログラムを配信する際に、プログラム配信装置（サーバ）とセンサノードとの間で行う無線通信方式としては、プログラム配信装置とノードプログラムを書き換える対象となるセンサノードとの間で直接無線通信を行う方式と、他の１つ以上のセンサノードを経由してノードプログラムを対象のセンサノードまで無線通信を繰り返して送信する方式がある。
ここで、無線通信方式を用いる場合、センサノードが消費する電力は、直接、無線通信を行う二者間の通信区間距離の２乗に比例する。このため、電力消費を抑えるためには、無線通信を行う二者間の無線区間距離を短くすることが重要である。しかし、従来の方式では二者間の無線区間距離が考慮されていないため、無線通信にかかる電力コストが増大する可能性がある。
【０００６】
本発明はこのような課題を解決するためのものであり、センサノードに対してノードプログラムを配信する際にセンサノードで消費する無線通信電力を削減できるセンサネットワークシステム、プログラム配信装置、センサノード、およびプログラムを提供することを目的としている。
【課題を解決するための手段】
【０００７】
このような目的を達成するために、本発明にかかるセンサネットワークシステムは、無線通信によりセンサネットワークを構成する複数のセンサノードを含み、センサノードでセンシングしたセンサデータをセンサネットワークを介して収集するセンサネットワークシステムであって、センサノードのうちのいずれかの配信先ノードに対し、センサネットワークを介してノードプログラムを無線通信により配信するプログラム配信装置を備え、プログラム配信装置は、センサノード相互間の距離およびセンサノードと自装置との距離を示す距離データに基づいて、配信先ノードまでの最短経路を計算する経路計算部と、最短経路を構成するセンサノードが配信順に記載された配信リストをノードプログラムに添付し、これら配信データを当該配信リストに基づき無線通信により配信するプログラム配信部とを備え、センサノードは、センサネットワークを介して配信データを無線通信により受信し、当該配信データに含まれる配信リストで指定された次のセンサノードへ、センサネットワークを介して当該配信データを無線通信により転送し、当該配信データが自ノード宛の場合は当該配信データ内のノードプログラムを記憶部へ格納するプログラム転送部を備えている。
【０００８】
この際、センサノードに、異なる位置に配置された複数の無線通信部を設け、経路計算部で、センサノードの無線通信部相互間の無線区間距離およびセンサノードの無線通信部と自装置の無線通信部との無線区間距離を示す距離データに基づいて、配信先ノードまでの最短経路を計算し、プログラム配信部で、最短経路を構成するセンサノードの受信用および送信用の無線通信部が配信順に記載された配信リストをノードプログラムに添付し、これら配信データを当該配信リストに基づき自装置の無線通信部から配信するようにしてもよい。
【０００９】
また、プログラム転送部で、自ノードの無線通信部で受信した配信データの配信リストから自ノードの受信用および送信用の無線通信部に関する自区間情報を切り取った後、残りの配信リストとノードプログラムとからなる新たな配信データを、当該自区間情報で指定された自ノードの送信用無線通信部から、残りの配信リストで指定された次ノードの受信用無線通信部へ転送するようにしてもよい。
【００１０】
また、経路計算部で、配信先ノードまでの無線区間距離の総和が同一である複数の最短経路が計算された場合、各センサノードと当該センサノードの無線通信部との有線区間における有線区間距離を示す距離データに基づいて、それぞれの最短経路のうち当該最短経路に含まれる有線区間距離の総和が最も小さいものを、ノードプログラムを配信するための最短経路として選択するようにしてもよい。
【００１１】
また、本発明にかかるプログラム配信装置は、無線通信によりセンサネットワークを構成する複数のセンサノードを含み、センサノードでセンシングしたセンサデータをセンサネットワークを介して収集するセンサネットワークシステムで用いられ、センサノードのうちのいずれかの配信先ノードに対し、センサネットワークを介して無線通信によりノードプログラムを配信するプログラム配信装置であって、センサノード相互間の距離およびセンサノードと自装置との距離を示す距離データに基づいて、配信先ノードまでの最短経路を計算する経路計算部と、最短経路を構成するセンサノードが配信順に記載された配信リストをノードプログラムに添付し、これら配信データを当該配信リストに基づき無線通信により配信するプログラム配信部とを備えている。
【００１２】
この際、センサノードに、異なる位置に配置された複数の無線通信部を設け、経路計算部で、センサノードの無線通信部相互間の無線区間距離およびセンサノードの無線通信部と自装置の無線通信部との無線区間距離を示す距離データに基づいて、配信先ノードまでの最短経路を計算し、プログラム配信部で、最短経路を構成するセンサノードの受信用および送信用の無線通信部が配信順に記載された配信リストをノードプログラムに添付し、これら配信データを当該配信リストに基づき自装置の無線通信部から配信するようにしてもよい。
【００１３】
また、経路計算部で、配信先ノードまでの無線区間距離の総和が同一である複数の最短経路が計算された場合、各センサノードと当該センサノードの無線通信部との有線区間における有線区間距離を示す距離データに基づいて、それぞれの最短経路のうち当該最短経路に含まれる有線区間距離の総和が最も小さいものを、ノードプログラムを配信するための最短経路として選択するようにしてもよい。
【００１４】
また、本発明にかかるセンサノードは、無線通信によりセンサネットワークを構成する複数のセンサノードと、センサノードのうちのいずれかの配信先ノードに対し、センサネットワークを介して無線通信によりノードプログラムを配信するプログラム配信装置とを含み、センサノードでセンシングしたセンサデータをセンサネットワークを介して収集するセンサネットワークシステムで用いられるセンサノードであって、センサネットワークを介して配信データを無線通信により受信し、当該配信データに含まれる配信リストで指定された次のセンサノードへ、センサネットワークを介して当該配信データを無線通信により転送し、当該配信データが自ノード宛の場合は当該配信データ内のノードプログラムを記憶部へ格納するプログラム転送部を備えている。
【００１５】
この際、異なる位置に配置された複数の無線通信部を備え、配信リストとして、最短経路を構成するセンサノードの受信用および送信用の無線通信部が配信順に記載されたリストを用い、プログラム転送部で、自ノードの無線通信部で受信した配信データの配信リストから自ノードの受信用および送信用の無線通信部に関する自区間情報を切り取った後、残りの配信リストとノードプログラムとからなる新たな配信データを、当該自区間情報で指定された自ノードの送信用無線通信部から、残りの配信リストで指定された次ノードの受信用無線通信部へ転送するようにしてもよい。
【００１６】
また、本発明にかかるプログラムは、無線通信によりセンサネットワークを構成する複数のセンサノードを含み、センサノードでセンシングしたセンサデータをセンサネットワークを介して収集するセンサネットワークシステムで用いられ、センサノードのうちのいずれかの配信先ノードに対し、センサネットワークを介して無線通信によりノードプログラムを配信するプログラム配信装置のコンピュータに、センサノード相互間の距離およびセンサノードと自装置との距離を示す距離データに基づいて、配信先ノードまでの最短経路を計算する経路計算ステップと、最短経路を構成するセンサノードが配信順に記載された配信リストをノードプログラムに添付し、これら配信データを当該配信リストに基づき無線通信により配信するプログラム配信ステップとを実行させる。
【００１７】
また、本発明にかかる他のプログラムは、無線通信によりセンサネットワークを構成する複数のセンサノードと、センサノードのうちのいずれかの配信先ノードに対し、センサネットワークを介して無線通信によりノードプログラムを配信するプログラム配信装置とを含み、センサノードでセンシングしたセンサデータをセンサネットワークを介して収集するセンサネットワークシステムで用いられるセンサノードのコンピュータに、センサネットワークを介して配信データを無線通信により受信し、当該配信データに含まれる配信リストで指定された次のセンサノードへ、センサネットワークを介して当該配信データを無線通信により転送し、当該配信データが自ノード宛の場合は当該配信データ内のノードプログラムを記憶部へ格納するプログラム転送ステップを実行させる。
【発明の効果】
【００１８】
本発明によれば、１つ以上のセンサノードを介して、指定されたセンサノードへノードプログラムを配信する際、その配信経路として通信区間距離の最も短いセンサノード間がそれぞれ選択されるため、各センサノードで消費する無線通信電力を最小限まで削減することができる。
【発明を実施するための最良の形態】
【００１９】
次に、本発明の実施の形態について図面を参照して説明する。
［一実施の形態の構成］
まず、図１を参照して、本発明の一実施の形態にかかるセンサネットワークシステムについて説明する。図１は、本発明の一実施の形態にかかるセンサネットワークシステムの構成を示すブロック図である。
【００２０】
このセンサネットワークシステムは、無線通信によりセンサネットワークを構成する複数のセンサノード２０と、センサノードのうちのいずれかの配信先ノードに対し、センサネットワークを介してノードプログラムを無線通信により配信するプログラム配信装置１０とから構成されている。
【００２１】
本実施の形態では、プログラム配信装置１０で、センサノード２０相互間の距離およびセンサノード２０と自装置１０との距離を示す距離データに基づいて、配信先ノードまでの最短経路を計算し、最短経路を構成するセンサノード２０が配信順に記載された配信リストをノードプログラムに添付し、これら配信データを当該配信リストに基づき無線通信により配信している。また、センサノード２０で、センサネットワークを介して配信データを無線通信により受信し、当該配信データに含まれる配信リストで指定された次のセンサノード２０へ、センサネットワークを介して当該配信データを無線通信により配信し、当該配信データが自ノード宛の場合は当該配信データ内のノードプログラムを記憶部へ格納している。
【００２２】
［プログラム配信装置］
次に、図１を参照して、本実施の形態にかかるプログラム配信装置１０の構成について詳細に説明する。
図１のプログラム配信装置１０は、全体としてサーバ装置やパーソナルコンピュータなどの情報処理装置からなり、主な機能部として、無線通信部１１、操作入力部１２、画面表示部１３、記憶部１４、および演算処理部１５が設けられている。
【００２３】
無線通信部１１は、専用の無線通信回路からなり、演算処理部１５からの制御に基づいて、センサノード２０と無線通信を行う機能を有している。
操作入力部１２は、キーボードやマウスなどの操作入力装置からなり、オペレータの操作を検出して演算処理部１５へ出力する機能を有している。
画面表示部１３は、ＬＣＤやＰＤＰなどの画面表示装置からなり、演算処理部１５から出力された操作メニューや配信リストなどの各種情報を画面表示する機能を有している。
【００２４】
記憶部１４は、ハードディスクやメモリなどの記憶装置からなり、演算処理部１５での処理に用いる各種処理情報やプログラム１４Ｐを記憶する機能を有している。
プログラム１４Ｐは、プログラム配信装置１０に設けられている入出力インターフェース部（図示せず）を介して、外部装置や記録媒体から読み込まれ予め記憶部１４に格納されたプログラムである。演算処理部１５により読み出されて実行されることにより、演算処理部１５の各種処理部を実現する。
【００２５】
記憶部１４で記憶する主な処理情報として、ノードプログラム１４Ａ、距離データ１４Ｂ、および配信リスト１４Ｃがある。
ノードプログラム１４Ａは、センサノード２０で実行されるプログラムである。プログラム配信装置１０に設けられている入出力インターフェース部（図示せず）を介して、外部装置や記録媒体から読み込まれ予め記憶部１４に格納され、必要に応じてセンサノード２０へ配信される。なお、プログラム配信装置１０の演算処理部１５に、ノードプログラム１４Ａのソースコードをユーザが記述し、これをコンパイルしてノードプログラム１４Ａを生成する処理部を設けてもよい。
【００２６】
距離データ１４Ｂは、各センサノード２０相互間の距離、および各センサノード２０とプログラム配信装置１０との距離を示すデータである。この際、各センサノード２０が異なる位置に配置された複数の無線通信部を備えている場合、距離データ１４Ｂとして、各センサノード２０の個々の無線通信部相互間の無線区間距離、および各センサノード２０の個々の無線通信部とプログラム配信装置１０の無線通信部との無線区間距離を示すデータを用いる。
【００２７】
配信リスト１４Ｃは、プログラム配信装置１０から、センサノード２０のうちノードプログラム１４Ａの配信先となる配信先ノードまでの最短経路を構成する各センサノード２０が配信順に記載されたリストである。また、各センサノード２０が異なる位置に配置された複数の無線通信部を備えている場合、配信リスト１４Ｃとして、最短経路を構成する各センサノードの受信用および送信用の無線通信部が配信順に記載されたリストを用いる。
【００２８】
演算処理部１５は、ＣＰＵなどのマイクロプロセッサとその周辺回路を有し、記憶部１４からプログラム１４Ｐを読み出して実行することにより、上記ハードウェアとプログラム１４Ｐとを協働させて、各種処理部を実現する機能を有している。
演算処理部１５で実現される主な処理部として、経路計算部１５Ａとプログラム配信部１５Ｂがある。
【００２９】
経路計算部１５Ａは、記憶部１４の距離データ１４Ｂに基づいて、プログラム配信装置１０から配信先ノードまでの最短経路を計算する機能を有している。最短経路を計算する具体的なアルゴリズムについては、公知の技術を利用すればよい。また、最短経路を評価する距離として、プログラム配信装置１０から配信先ノードまでの経路上に位置するプログラム配信装置１０およびセンサノード２０のうち、直接無線通信を行う二者間の直線距離の２乗の総和を用いてもよい。これは、センサノード２０が消費する電力は、直接、無線通信を行う二者間の通信区間距離の２乗に比例するからである。
このようにして、プログラム配信装置１０から配信先ノードまでの最短経路を選択することにより、プログラム配信に必要となるセンサネットワークシステム全体での無線消費電力を最小限に削減できる。
【００３０】
プログラム配信部１５Ｂは、経路計算部１５Ａで計算された最短経路を構成する各センサノード２０が配信順に記載された配信リスト１４Ｃを生成して記憶部１４へ保存する機能と、この配信リスト１４Ｃを記憶部１４のノードプログラム１４Ａに添付して配信データを生成する機能と、この配信データを配信リスト１４Ｃに基づき無線通信部１１により配信する機能とを有している。この際、各センサノード２０が異なる位置に配置された複数の無線通信部を備えている場合、最短経路を構成する各センサノード２０の受信用および送信用の無線通信部が配信順に記載された配信リスト１４Ｃを生成する。
【００３１】
［センサノード］
次に、図１を参照して、本実施の形態にかかるセンサノード２０の構成について詳細に説明す。
図１のセンサノード２０は、演算処理機能、無線通信機能、センシング機能を有する小型の電子機器からなり、例えば室内に配置されている家具、食器、器具、道具、装置などの固体状の物体、および床、壁、天井、支柱のような建築物の一部をなす物体に取り付けられて、周囲の状況をセンシングし、得られたセンサデータをセンサネットワークを介して無線通信で送信する機能を有している。
【００３２】
センサノード２０には、主な機能部として、１つ以上の無線通信部２１（２１Ａ〜２１Ｎ）、センシング部２２、記憶部２４、および演算処理部２５が設けられている。なお、図１のセンサノードＸ，Ｙ，Ｚは、いずれも同様の構成を有しているものとする。
【００３３】
無線通信部２１は、専用の無線通信回路からなり、演算処理部２５からの制御に基づいて、他のセンサノード２０やプログラム配信装置１０と無線通信を行う機能を有している。この際、無線通信部２１で用いられる具体的な通信方式としては、ＺｉｇＢｅｅ（登録商標：IEEE802.15.4）や無線ＬＡＮ（IEEE802.11シリーズ）、ＵＷＢ（Ultra Wide Band：IEEE 802.15.3a）に類する電波を用いた通信、赤外線通信、磁気による通信、可視光による通信方式がある。
【００３４】
図１の例では、１つのセンサノードに、配置位置の異なる複数の無線通信部２１Ａ〜２１Ｎが設けられている。なお、これら無線通信部２１と演算処理部２５とは、有線の信号線により接続されており、両者間におけるデータ送受信については、両者間の距離による消費電力の差は、他のセンサノードとの間の無線通信にかかる電力と比較して、無視できる程度に小さいものと考える。
【００３５】
また、センサノード２０の各無線通信部２１には、センサネットワーク上で固有のＩＤが予め付与されており、このＩＤを用いて配信データの送信元および送信先を特定する。この際、ＩＤとして無線通信方式で用いるアドレスを用いてもよく、ＩＤとアドレスとの対応表を記憶部２４に設定しておいてもよい。
【００３６】
センシング部２２は、センサノード２０の周囲の状況を示す各種物理量をセンシングするセンサである。具体的なセンシング部２２の構成としては、加速度センサ、ジャイロセンサ、画像センサ、温度センサ、湿度センサ、磁気センサ。照度センサ、心拍センサ。血圧センサ、音声センサのうちのひとつ、あるいは複数の組み合わせによって実現される。
【００３７】
記憶部２４は、メモリなどの記憶装置からなり、演算処理部２５での処理に用いる各種処理情報やノードプログラム２４Ｐを記憶する機能を有している。
ノードプログラム２４Ｐは、無線通信部２１を介してプログラム配信装置１０から配信されて予め記憶部１４に格納されたプログラムである。演算処理部２５により読み出されて実行されることにより、演算処理部２５の各種処理部を実現する。
【００３８】
演算処理部２５は、ＣＰＵなどのマイクロプロセッサとその周辺回路を有し、記憶部２４からノードプログラム２４Ｐを読み出して実行することにより、上記ハードウェアとノードプログラム２４Ｐとを協働させて、各種処理部を実現する機能を有している。この際、演算処理部２５では、Ｌｉｎｕｘ  ＯＳに類するオペレーティングシステムを用いてノードプログラム２４Ｐを実行してもよく、特別なオペレーティングシステムを持たず、機械語で記述されたノードプログラム２４Ｐを直接実行するようにしてもよい。
【００３９】
演算処理部２５で実現される主な処理部として、ノード処理部２５Ａとプログラム転送部２５Ｂがある。
ノード処理部２５Ａは、センシング部２２でセンシングしたセンサデータを無線通信部２１から送信する機能を有している。
プログラム転送部２５Ｂは、センサネットワークを介して配信データを無線通信部２１で受信する機能と、当該配信データに含まれる配信リストで指定された次のセンサノード２０へ、センサネットワークを介して当該配信データを無線通信部２１から転送する機能と、当該配信データが自ノード宛の場合は当該配信データ内のノードプログラム２４Ｐを記憶部２４へ格納する機能とを有している。
【００４０】
［プログラム配信装置の動作］
次に、図２および図３を参照して、本発明の一実施の形態にかかるプログラム配信装置１０の動作について説明する。図２は、本発明の一実施の形態にかかるプログラム配信装置のプログラム配信処理を示すフローチャートである。図３は、無線通信部の配置例である。
【００４１】
図３の配置例において、プログラム配信装置Ｓ（１０）と配信先ノードであるセンサノードＹ（２０）との間にセンサノードＸ（２０）が存在しており、最短経路としては、センサノードＸを経由してプログラム配信装置ＳからセンサノードＹへの経路が選択される。また、センサノードＸには、３つの無線通信部ＸＡ，ＸＢ，ＸＣが接続されているとともに、センサノードＹには、３つの無線通信部ＹＡ，ＹＢ，ＹＣが接続されている。
以下では、各センサノード２０が異なる位置に配置された複数の無線通信部２１を備えているものとし、プログラム配信装置Ｓの記憶部１４に予め格納されているノードプログラム１４Ａを、プログラム配信装置ＳからセンサノードＸを経由してセンサノードＹまで配信する場合を例として説明する。
【００４２】
プログラム配信装置Ｓの演算処理部１５は、操作入力部１２で検出されたオペレータのプログラム配信要求操作に応じて、図２のプログラム配信処理を実行する。
まず、演算処理部１５は、経路計算部１５Ａにより、記憶部１４の距離データ１４Ｂに基づいて、プログラム配信装置Ｓからプログラム配信要求操作で指示された配信先ノードまでの最短経路を計算する（ステップ１００）。
【００４３】
この場合、距離データ１４Ｂは、各センサノード２０の個々の無線通信部２１相互間の無線区間距離、および各センサノード２０の個々の無線通信部２１とプログラム配信装置１０の無線通信部１１との無線区間距離を示すデータで構成されている。したがって、経路計算部１５Ａは、各センサノード２０において受信用および送信用として用いる無線通信部２１を特定した最短経路を計算する。
【００４４】
このうち、センサノードＸでは、複数の無線通信部ＸＡ，ＸＢ，ＸＣのうちプログラム配信装置ＳＡの無線通信部ＳＡと通信可能な１つ以上の無線通信部のうちから、無線通信部ＳＡと最も無線通信距離が短い無線通信部ＸＡが、センサノードＸの受信用無線通信部として選択され、センサノードＹの無線通信部ＹＡと最も無線通信距離が短い無線通信部ＸＣがセンサノードＸの受信用無線通信部として選択されている。また、センサノードＹでは、複数の無線通信部ＹＡ，ＹＢ，ＹＣのうちセンサノードＸの無線通信部ＸＣと通信可能な１つ以上の無線通信部のうちから、無線通信部ＸＣと最も無線通信距離が短い無線通信部ＹＡがセンサノードＹの受信用無線通信部として選択されている。
【００４５】
次に、プログラム配信部１５Ｂは、経路計算部１５Ａで計算された最短経路を構成する各センサノードＸ，Ｙの受信用および送信用の無線通信部２１が配信順に記載された配信リスト１４Ｃを生成して記憶部１４へ保存する（ステップ１０１）。
図３の無線通信部の配置例では、配信リスト１４Ｃとして、前述した送信用および受信用となる無線通信部のＩＤが配信順に記載された「ＳＡ，ＸＡ，ＸＣ，ＹＡ」という配信リスト３１Ｓが生成される。
【００４６】
続いて、プログラム配信部１５Ｂは、生成した配信リスト１４Ｃのうちから、自区間情報、すなわち自装置に接続されている無線通信部１１に関するＩＤを切り取り（ステップ１０２）、残りの配信リスト３１Ｘとノードプログラム１４Ａとから配信データを生成する（ステップ１０３）。
したがって、図３の例では、最初に生成した配信リスト３１Ｓの内容が「ＳＡ，ＸＡ，ＸＣ，ＹＡ」となり、このうち自区間情報３２Ｓである無線通信部１１のＩＤ「ＳＡ」を切り取り、残りの配信リスト３１Ｘの内容は「ＸＡ，ＸＣ，ＹＡ」となる。
【００４７】
この後、プログラム配信部１５Ｂは、自装置の無線通信部１１のうちから、切り取った自区間情報３２Ｓで指定されている無線通信部ＳＡを配信データの送信元として選択するとともに（ステップ１０４）、残りの配信リスト３１Ｘの先頭に指定されているセンサノードＸの無線通信部ＸＡ（２１）を配信データの送信先として選択する（ステップ１０５）。そして、これら送信元および送信先のＩＤに対応するアドレスをそれぞれ配信データに添付して、送信元となる無線通信部ＳＡから配信データを送信し（ステップ１０６）、一連のプログラム配信処理を終了する。
【００４８】
［センサノードの動作］
次に、図４を参照して、本発明の一実施の形態にかかるセンサノード２０の動作について説明する。図４は、本発明の一実施の形態にかかるセンサノードのプログラム転送処理を示すフローチャートである。
ここでは、図３に示したように、プログラム配信装置Ｓ（１０）から配信されたノードプログラム１４Ａを、センサノードＸ（２０）を経由してセンサノードＹ（２０）まで配信する場合を例として説明する。
【００４９】
センサノードＸの演算処理部２５は、プログラム配信装置Ｓから送信された配信データを、無線通信部ＸＡ（２１）を介してプログラム転送部２５Ｂにより受信した場合、図４のプログラム転送処理を実行する。
まず、プログラム転送部２５Ｂは、受信した配信データに含まれる配信リスト３１Ｘのうちから、自区間情報、すなわち自ノードＸに接続されている無線通信部２１に関するＩＤを切り取る（ステップ２００）。したがって、図３の例では、配信リスト３１Ｘの内容が「ＸＡ，ＸＣ，ＹＡ」であるから、自区間情報３２Ｘとして「ＸＡ，ＸＣ」が切り取られ、残りの配信リスト３１Ｙの内容が「ＹＡ」となる。
【００５０】
ここで、プログラム転送部２５Ｂは、残りの配信リスト３１Ｙに配信先があるかどうか確認し（ステップ２０１）、この場合には配信先として「ＹＡ」が残っていることから（ステップ２０１：ＹＥＳ）、残りの配信リスト３１Ｙと配信データに含まれているノードプログラム１４Ａとから新たな配信データを生成する（ステップ２０２）。
【００５１】
この後、プログラム配信部１５Ｂは、自ノードの無線通信部２１のうちから、切り取った自区間情報３２Ｓの最後尾で指定されている無線通信部ＸＣを配信データの送信元として選択するとともに（ステップ２０３）、残りの配信リスト３１Ｙの先頭に指定されているセンサノードＹの無線通信部ＹＡ（２１）を配信データの送信先として選択する（ステップ２０４）。そして、これら送信元および送信先のＩＤに対応するアドレスをそれぞれ新たな配信データに添付して、送信元となる無線通信部ＸＣから配信データを送信し（ステップ２０５）、一連のプログラム転送処理を終了する。
【００５２】
一方、センサノードＹの演算処理部２５は、センサノードＸから送信された配信データを、無線通信部ＹＡ（２１）を介してプログラム転送部２５Ｂにより受信した場合、前述と同様に、図４のプログラム転送処理を実行する。
まず、プログラム転送部２５Ｂは、受信した配信データに含まれる配信リスト３１Ｙのうちから、自区間情報、すなわち自ノードＹに接続されている無線通信部２１に関するＩＤを切り取る（ステップ２００）。したがって、図３の例では、配信リスト３１Ｙの内容が「ＹＡ」であるから、自区間情報３２Ｙとして「ＹＡ」が切り取られ、残りの配信リストの内容が空白となる。
【００５３】
ここで、プログラム転送部２５Ｂは、残りの配信リストに配信先があるかどうか確認し（ステップ２０１）、この場合には配信先として何も残っていないことから（ステップ２０１：ＮＯ）、配信データからノードプログラム１４Ａを抽出し、記憶部２４へノードプログラム２４Ｐとして格納し（ステップ２０６）、一連のプログラム転送処理を終了する。この際、更新前のノードプログラムが実行されている場合、当該ノードプログラムの実行を停止して、新たなノードプログラム２４Ｐを上書きした後、新たなノードプログラム２４Ｐを実行すればよい。
【００５４】
［一実施の形態の効果］
このように、本実施の形態では、プログラム配信装置１０で、センサノード２０相互間の距離およびセンサノード２０と自装置１０との距離を示す距離データ１４Ｂに基づいて、配信先ノードまでの最短経路を計算し、最短経路を構成するセンサノード２０が配信順に記載された配信リスト１４Ｃをノードプログラム１４Ａに添付し、これら配信データを当該配信リスト１４Ｃに基づき無線通信により配信している。
【００５５】
また、本実施の形態では、センサノード２０で、センサネットワークを介して配信データを無線通信により受信し、当該配信データに含まれる配信リスト１４Ｃで指定された次のセンサノード２０へ、センサネットワークを介して当該配信データを無線通信により配信し、当該配信データが自ノード宛の場合は当該配信データ内のノードプログラム１４Ａを記憶部２４へ格納している。
【００５６】
したがって、１つ以上のセンサノード２０を介して、指定されたセンサノード２０へノードプログラム１４Ａを配信する際、その配信経路として通信区間距離の最も短いセンサノード２０間がそれぞれ選択されるため、各センサノード２０で消費する無線通信電力を最小限まで削減することができる。
【００５７】
また、本実施の形態では、各センサノード２０に、異なる位置に配置された複数の無線通信部２１を設け、プログラム配信装置１０において、経路計算部１５Ａで、センサノード２０の無線通信部２１相互間の無線区間距離およびセンサノード２０の無線通信部２１と自装置１０の無線通信部１１との無線区間距離を示す距離データ１４Ｂに基づいて、配信先ノードまでの最短経路を計算し、プログラム配信部１５Ｂで、最短経路を構成するセンサノード２０の受信用および送信用の無線通信部２１が配信順に記載された配信リスト１４Ｃをノードプログラム１４Ａに添付し、これら配信データを当該配信リスト１４Ｃに基づき自装置１０の無線通信部１１から配信するようにしてもよい。
【００５８】
これにより、各センサノード２０の異なる位置に配置された複数の無線通信部２１を用いて、ノードプログラム１４Ａを配信する場合には、その配信経路として通信区間距離の最も短いセンサノード２０の無線通信部２１間がそれぞれ選択されるため、各センサノード２０で消費する無線通信電力をより正確に削減することができる。
【００５９】
また、本実施の形態では、各センサノード２０において、プログラム転送部２５Ｂで、自ノード２０の無線通信部２１で受信した配信データの配信リスト３１から自ノード２０の受信用および送信用の無線通信部２１に関する自区間情報３２を切り取った後、残りの配信リスト３１とノードプログラム１４Ａとからなる新たな配信データを、当該自区間情報３２で指定された自ノードの送信用無線通信部２１から、残りの配信リスト３１で指定された次ノードの受信用無線通信部２１へ転送するようにしてもよい。
これにより、複雑な処理を必要とすることなく、プログラム配信装置１０で選択された最適経路に基づいて、ノードプログラムを適切に配信先ノードまで転送することが可能となる。
【００６０】
なお、各センサノード２０に無線通信部２１が１つしか接続されていない場合や各無線通信部２１の設置位置がほぼ同じ場合には、センサノード２０に予め付与されている固有のＩＤを用いればよく、距離データ１４Ｂや配信リスト１４Ｃについても、センサノード２０のＩＤを用いて記述すればよい。
【００６１】
また、本実施の形態では、記憶部１４の距離データ１４Ｂに、各センサノードとその無線通信部とを結ぶ有線区間における有線区間距離を予め設定しておき、プログラム配信装置１０から配信先ノードまでの最短経路を計算する際、この有線区間距離も考慮して最短経路を計算してもよい。
具体的には、プログラム配信装置１０の経路計算部１５Ａにおいて、配信先ノードまでの無線区間距離の総和が同一である複数の最短経路が計算された場合、各センサノード２０と当該センサノードの無線通信部２１とを結ぶ有線区間における有線区間距離を示す距離データに基づいて、それぞれの最短経路のうち、当該最短経路に含まれる有線区間距離の総和が最も小さいものを、ノードプログラムを配信するための最短経路として選択してもよい。
これにより、無線区間および有線区間の両方で最も距離が短い経路を選択することができ、配信先ノードまでノードプログラムを配信するための経路として、最も信頼性の高い経路を選択することが可能となる。
【図面の簡単な説明】
【００６２】
【図１】本発明の一実施の形態にかかるセンサネットワークシステムの構成を示すブロック図である。
【図２】本発明の一実施の形態にかかるプログラム配信装置のプログラム配信処理を示すフローチャートである
【図３】無線通信部の配置例である。
【図４】本発明の一実施の形態にかかるセンサノードのプログラム転送処理を示すフローチャートである。
【符号の説明】
【００６３】
１…センサネットワークシステム、１０，Ｓ…プログラム配信装置、１１，ＳＡ…無線通信部、１２…操作入力部、１３…画面表示部、１４…記憶部、１４Ａ…ノードプログラム、１４Ｂ…距離データ、１４Ｃ…配信リスト、１４Ｐ…プログラム、１５…演算処理部、１５Ａ…経路計算部、１５Ｂ…プログラム配信部、２０，Ｘ，Ｙ，Ｚ…センサノード、２１，２１Ａ〜２１Ｎ，ＸＡ，ＸＢ，ＸＣ，ＹＡ，ＹＢ，ＹＣ…無線通信部、２２…センシング部、２４…記憶部、２４Ｐ…ノードプログラム、２５…演算処理部、２５Ａ…ノード処理部、２５Ｂ…プログラム転送部、３１，３１Ｓ，３１Ｘ，３１Ｙ…配信リスト、３２，３２Ｓ，３２Ｘ，３２Ｙ…自区間情報。
【図１】
2010098565.tif 000003
【図２】
2010098565.tif 000004
【図３】
2010098565.tif 000005
【図４】
2010098565.tif 000006