(57)【特許請求の範囲】
【請求項１】
常時電力が供給される商用電源、充電が可能な充電電源、充電が不可能な電池電源のいずれかで動作する複数のソースノードを有したアドホックネットワークにおいて、前記ソースノードは、自己の電源が前記した商用電源、充電電源、電池電源のいずれであるかの電源種別を検知すると共にその電源の残存電力量を計測して、前記電源種別および残存電力量を親ノードに送信する機能を備え、前記親ノードは、前記ソースノードから送信された電源種別および残存電力量によって演算される残存電力コスト、並びに中継するソースノードの数によって決まる遅延コストから、前記ネットワーク内におけるソースノードの中から運用時間を最長化して中継するソースノードのルートを選択する経路設定部を備えている無線通信システム。
【請求項２】
前記経路設定部は、遅延コストと残存電力コストでは、残存電力コストの大小に関わらず遅延コストの小さい経路を優先し、遅延コストが同じ場合、残存電力コストの小さい経路を優先するようにした請求項１に記載の無線通信システム。
【請求項３】
前記残存電力コストは、残存電力が閾値として設定した残存電力以下になったことを表す閾値ビットと、電源種別および残存電力の変化傾向によって演算される電源状態ビットと、残存電力量によって演算される残存電力ビットによって構成されることを特徴とする請求項１または請求項２に記載の無線通信システム。
【請求項４】
常時電力が供給される商用電源、充電が可能な充電電源、充電が不可能な電池電源のいずれかで動作する複数のソースノードを有したアドホックネットワークにおいて、前記ソースノードは、自己の電源が前記した商用電源、充電電源、電池電源のいずれであるかの電源種別を検知すると共に、その電源の残存電力量およびソースノードからの通信を中継する中継通信時間を計測して親ノードに送信する機能を備え、前記親ノードは、前記ソースノードから送信された電源種別、残存電力量および中継通信時間によって演算される予想消費電力コスト、並びに中継するソースノードの数によって決まる遅延コストから、前記ネットワーク内におけるソースノードの中から運用時間を最長化して中継するソースノードのルートを選択する経路設定部を備えている無線通信システム。
【請求項５】
前記経路設定部は、遅延コストと予想消費電力コストでは、予想消費電力コストの大小に関わらず遅延コストの小さい経路を優先し、遅延コストが同じ場合、予想消費電力コストの小さい経路を優先するようにした請求項４に記載の無線通信システム。
【請求項６】
前記予想消費電力コストは、残存電力が閾値として設定した残存電力以下になったことを表す閾値ビットと、電源種別および残存電力の変化傾向によって演算される電源状態ビットと、中継通信時間によって演算される予想消費電力と残存電力量から算出される予想残存電力ビットによって構成されることを特徴とする請求項４または請求項５に記載の無線通信システム。
【請求項７】
前記ソースノードは、遅延コストとして非常時用遅延コストを固定的に設定できるようにした請求項１乃至請求項６のいずれか１項に記載の無線通信システム。 
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、包括的にワイヤレス通信ネットワークに関連し、詳しくにはアドホックネットワークのルート選択を最適にするようにした無線通信システムに関するものである。
【背景技術】
【０００２】
アドホックネットワークでは、送受信機を有したソースノードが複数配置され、ネットワークインフラまたは集中管理がない状態で互いに通信するようになっている。ソースノードは携帯電話、パソコン、またはセンサ等の装置で構成される。
ネットワーク内のソースノードは、それ自体の間にルーティングを確立して、それぞれのネットワークを形成する。送受信機の伝送範囲の制限により、ソースノードからのメッセージは、目的のノードに届く前に１つまたは複数のソースノードを中継ノードとして経由することがある。
【０００３】
従来のアドホックネットワークは、ソースノードを経由して目的のソースノードにデータを送る場合のルート選択において、ソースノードの電池の残存電力を最大化する方法として、各ソースノードの残存電力および各ルートに関連する遅延コストを求め、それらを元に通信を中継するルートを選択するようにしたものが知られている（例えば、特許文献1参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−１６００６２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
アドホックネットワークは、充電可能な電池で動作する充電式のソースノードと、充電が出来ない電池で動作する電池式のソースノードで構成されることがある。
従来のアドホックネットワークでは、充電式のソースノードと電池式のソースノードは残存電力という判断基準において同列に扱われていた。
そのため、通信を中継するソースノードとして充電式のソースノードと電池式のソースノードが選択できる場合、一時的に充電式のソースノードの残存電力が、電池式のソースノードの残存電力より低下した時は電池式のソースノードが選択されていた。
【０００６】
この場合、残存電力の回復がみこめない電池式のソースノードの電力が消費されるため、やがて電池式のソースノードの運用が停止することになり、通信を行うルートが途絶えることになる。つまり、ネットワーク全体の運用時間が短縮されることになる。
【０００７】
この発明は上記のような課題を解決するためになされたものであり、アドホックネットワークにおいて、通信を中継するソースノードの選択を各ソースノードの電源特性に応じて選択することで、ソースノードの電力消費を押さえ、ネットワーク全体動作の最長化を実現することを目的とした無線通信システムを提供することにある。
【課題を解決するための手段】
【０００８】
この発明の無線通信システムは、常時電力が供給される商用電源、充電が可能な充電電源、充電が不可能な電池電源のいずれかで動作する複数のソースノードを有したアドホックネットワークにおいて、ソースノードは、自己の電源が前記した商用電源、充電電源、電池電源のいずれであるかの電源種別を検知すると共にその電源の残存電力量を計測して、電源種別および残存電力量を親ノードに送信する機能を備え、親ノードは、ソースノードから送信された電源種別および残存電力量によって演算される残存電力コスト、並びに中継するソースノードの数によって決まる遅延コストから、ネットワーク内におけるソースノードの中から運用時間を最長化して中継するソースノードのルートを選択する経路設定部を備えたものである。
【０００９】
また、この発明の無線通信システムは、常時電力が供給される商用電源、充電が可能な充電電源、充電が不可能な電池電源のいずれかで動作する複数のソースノードを有したアドホックネットワークにおいて、ソースノードは、自己の電源が前記した商用電源、充電電源、電池電源のいずれであるかの電源種別を検知すると共に、その電源の残存電力量およびソースノードからの通信を中継する中継通信時間を計測して親ノードに送信する機能を備え、親ノードは、ソースノードから送信された電源種別、残存電力量および中継通信時間によって演算される予想消費電力コスト、並びに中継するソースノードの数によって決まる遅延コストから、ネットワーク内におけるソースノードの中から運用時間を最長化して中継するソースノードのルートを選択する経路設定部を備えたものである。
【発明の効果】
【００１０】
この発明は、通信を中継するソースノードの経路設定において、各ソースノードの電源種別および残存電力量によって演算される残存電力コスト、並びに中継するソースノードの数によって決まる遅延コストから、運用時間を最長化して中継するソースノードを選択するようにしているから、ソースノードの電力消費を押さえ、ネットワーク全体動作の最長化を実現することができる。
【図面の簡単な説明】
【００１１】
【図１】この発明の実施の形態１におけるネットワークの構成を示す図である。
【図２】この発明の実施の形態１のソースノードの構成図である。
【図３】この発明の実施の形態１の親ノードの構成図である。
【図４】この発明の実施の形態１における残存電力コストのビットイメージ図である。
【図５】この発明の実施の形態１の経路設定の動作を示すフローチャートである。
【図６】この発明の実施の形態１の各ノードの動作を示すフローチャートである。
【図７】この発明の実施の形態２におけるネットワークの構成を示す図である。
【図８】この発明の実施の形態２のソースノードの構成図である。
【図９】この発明の実施の形態２の親ノードの構成図である。
【図１０】この発明の実施の形態２の経路設定の動作を示すフローチャートである。
【図１１】この発明の実施の形態２の各ノードの動作を示すフローチャートである。
【図１２】この発明の実施の形態３におけるネットワークの構成を示す図である。
【発明を実施するための形態】
【００１２】
実施の形態１．
以下、この発明の実施の形態１における無線通信システムとしてアドホックネットワークの場合を図１〜図６に基づいて説明する。
図１はアドホックネットワークの構成を示し、ネッワークを構成する複数のノードは、ネッワークの内の全てのソースノードを管理し通信を統制する親ノード１００と、情報を集めるセンサなどのソースノード２００ａと、親ノード１００とソースノード２００ａの間において情報を中継するソースノード２００ｂ、２００ｃとで構成されている。ソースノード２００ａからの情報は通信を中継するソースノード２００ｂまたは２００ｃを経由して親ノード１００に収集される。
【００１３】
各ソースノード２００ａ〜２００ｃの電源には、常時電力が供給される商用電源と、充電が可能な充電電源と、充電が不可能な電池電源のいずれかで動作するようになっている
。図１においては、ソースノード２００ｂは充電が可能な充電電源、ソースノード２００ｃは充電が不可能な電池電源で示している。
ソースノード２００ａから親ノード１００への通信経路において、中継するソースノード２００ｂ、２００ｃは複数のソースノードから選べるようになっている。
【００１４】
図２はソースノード２００ａ〜２００ｃ（総称する場合は２００）の構成図を示し、各ソースノード２００は、自己の電源２０１の種別を電源種別検知部２０２で検知でき、検知した電源種別を電源種別記録部２０３に記録する。また、残存電力量を残存電力量計測部２０４で計測し、残存電力量記録部２０５に記録する。また、残存電力量閾値設定部２０６に閾値電力量を任意に設定できるとともに、最大電源容量登録部２０７に最大電源容量を登録できる。
ソースノード２００は、電源種別記録部２０３に記録した電源種別と、残存電力量記録部２０５に記録した残存電力量と、残存電力量閾値設定部２０６に設定した閾値電力と、最大電源容量登録部２０７に登録した最大電源容量とを、送受信部２０８を経由して親ノード１００に送信できる。
【００１５】
また、経路設定部２０９には、経路を選択する際のノードが設定されており、例えば、ソースノード２００ａの経路設定部２０９には親ノード１００への経路としてソースノード２００ｂもしくは２００ｃが記録されている。またソースノード２００ｂ、２００ｃの経路設定部２０９には親ノード１００への経路として親ノード１００が記録されている。また、親ノード１００で選択された経路により自己のソースノード２００が選択された場合に、それを受信して経路を設定する。
【００１６】
図３は親ノード１００の構成図を示し、親ノード１００は送受信部１０１を経由して管理する全ソースノード２００からのデータ情報を受信する。ソースノード２００から送信された電源種別は電源種別記録部１０２に記録する。ソースノード２００から送信された残存電力量は残存電力量記録部１０３に記録する。また、ソースノード２００から送信された閾値電力量は残存電力量閾値記録部１０４に記録する。また、ソースノード２００から送信された最大電源容量は最大電源容量記録部１０５に記録する。こうして親ノード１００は、１個のソースノード２００に対して、複数の電源種別と残存電力量と閾値電力量と最大電源容量とを管理可能とする。
【００１７】
また、親ノード１００は任意の時間に、管理する全ソースノード２００の電源種別と残存電力量の現在値を収集し管理する。
なお、ネットワーク全体における、最大残存電力量は全ソースノード２００の最大電源容量から自動的に計算することもできるし、任意に設定することもできる。
【００１８】
遅延コスト演算部１０６は、中継（ホップ）数から遅延コストを演算する。通信は、送信元のソースノードと受信先のソースノードで直接通信する場合と、バケツリレーのように別のソースノードを中継（ホップ）して通信する場合では、後者の場合により多くの通信時間が必要となる。この現象を“遅延”と定義し、「遅延の（量）」は中継段数と比例するため、中継（ホップ）数から一義的に「遅延コスト」を算出することができる。通信を行なう場合、このコストが小さいものを選択して行なうことになる。
【００１９】
残存電力コスト演算部１０７は、閾値ビット演算部１０８と、電源状態ビット演算部１０９と、残存電力ビット演算部１１０によって構成される。
閾値ビット演算部１０８は、残存電力が閾値として設定した残存電力以下になったことを表す１ビットの閾値ビットを演算し、電源状態ビット演算部１０９は、電源種別および残存電力の変化傾向によって演算される数ビットの電源状態ビットを演算し、残存電力ビット演算部１１０は、残存電力量によって演算される数ビットの残存電力ビットを演算する。
【００２０】
閾値ビット演算部１０８は、残存電力量記録部１０３に記録された残存電力量と、残存電力量閾値記録部１０４に記録された残存電力量閾値を各ソースノード毎に呼び出し、残存電力が残存電力閾値以下に低下した場合を“１”とし、残存電力閾値以上の時は“０”とする。
【００２１】
電源状態ビット演算部１０９は、電源種別が充電電源のソースノード２００に対しては、前回収集して電源種別記録部１０２に記録された電源種別と、残存電力量記録部１０３に記録された残存電力量を呼び出し、前回収集した残存電力量と比較し、残存電力量の傾向を“増加”、“維持”、“減少”に区別する。
前回収集時と電源種別が異なる場合や、前回値が未計測の場合は“維持”を基本とする。
【００２２】
そして、電源状態ビット演算部１０９は、“常時電源”＜“充電電源でかつ残存電力が増加傾向”＜“充電電源でかつ残存電力が維持傾向”＜“充電電源でかつ残存電力が減少傾向”＜“電池電源”という大小関係になるように演算する。電源状態ビットのビット数は必要に応じて任意に設定できる。
例えば電源状態ビットを３ビットで表す場合、常時電源の場合を“０００”、充電電源でかつ残存電力が増加傾向の場合を“００１”、充電電源でかつ残存電力が維持傾向の場合を“０１０”、充電電源でかつ残存電力が減少傾向の場合を“０１１”、電池電源の場合を“１００”とする。
【００２３】
残存電力ビット演算部１１０は、残存電力量記録部１０３に記録された残存電力量、残存電力量閾値記録部１０４に記録された残存電力量閾値および最大電源容量記録部１０５に記録された最大電源容量を呼び出し、全ソースノードの残存電力量を符号化し残存電力ビットを演算する。
残存電力ビットは、ネットワークの全ソースノード１００の最大電池容量を最小とし、各ソースノードの閾値残存電力量を最大とするように符号化する。また、残存電力が閾値以下の場合は最大値で固定とする。残存電力ビットのビット数は必要に応じて任意に設定できる。
例えば残存電力ビットを４ビットで表す場合、最大ビットは“１１１１”、最小ビットは“００００”となるため、ネットワークの中で最大電池容量を有しフル充電された電池の残存電力ビットは“００００”となり、閾値まで残存電力が減った場合“１１１１”となる。常時電源のソースノードの残存電力ビットは任意の値に設定可能である。
【００２４】
残存電力コスト演算部１０７は、閾値ビット演算部１０８で演算された閾値ビット、電源状態ビット演算部１０９で演算された電源状態ビット、残存電力ビット演算部１１０で演算された残存電力ビットを、この順で組み合わせて演算する。
例えば、閾値ビットを１ビット、電源状態ビットを３ビット、残存電力ビットを４ビットで表現する時、常時電源を有するソースノードの残存電力コストは“００００００００”（＝閾値ビット“０”，電源状態ビット“０００”，残存電力ビット“００００”）となり、閾値以下の残存電力しかなく、充電中（増加傾向）の充電電源を有するソースノードの残存電力コストは“１００１１１１１”（＝閾値ビット“１”，電源状態ビット“００１”，残存電力ビット“１１１１”）と表される。
【００２５】
残存電力コスト演算部１０７で演算された残存電力コストのビットイメージ図は図４に示す通りとなる。この残存電力コストのビット全体をひとつの２ビットの数として捉えた場合、大きな桁（左側）に位置するビットがコスト比較において支配的になる。
経路設定部１１１は、遅延コスト演算部１０６で演算された遅延コスト、残存電力コス
ト演算部１０７で演算された残存電力コストを入力して、ネットワーク内におけるソースノード２００の中からコストが最小となるように、すなわち運用時間を最長化して中継するソースノードのルートを選択して設定する。
【００２６】
経路設定部１１１におけるルーティングを図５のフローチャートに基づいて説明する。ルーティングはコストが小さいソースノードが優先されるように決定する。
まず、コストの優先順位は遅延コストと残存電力コストでは遅延コストが優先される。よって、ステップＳ１１は、残存電力コストの大小の関わらず遅延コストの小さい経路が優先され、ステップＳ１３の経路設定となる。次にステップＳ１１において、遅延コストが同じ場合、ステップＳ１２は、残存電力コストの小さい経路が優先され、ステップＳ１３の経路設定となる。
【００２７】
ステップＳ１２において、例えば、同じ残存電力ビットのソースノードが有っても、電源状態が充電電源と電池電源と違えば、電源状態ビットが小さいため、残存電力コストが小さくなる充電電源が優先される。
また、同じ充電電源で、同じ残存電力ビットのソースノードが有っても、残存電力が増加傾向のソースノードと残存電力が減少傾向のソースノードが有った場合、電源状態ビットが小さくなる残存電力が増加傾向のソースノードが優先される。
また、同じ電源状態ビットのソースノードが有れば、残存電力ビットが小さくなる残存電力量の大きいソースノードが優先される。
【００２８】
このコスト計算により、残存電力コスト演算において、電源状態ビットを残存電力ビットより支配的にすることが可能となるため、残存電力量だけでルーティングを決定していた従来の方式と比較して、回復が不可能な電池電源式のソースノードの使用を回避することができる。その結果、残存電力が不足し停止する電池電源式のソースノードを減らすことが可能となり、ネットワークの運用時間の最長化を実現する。
【００２９】
なお、閾値の例外として、残存電力量が閾値電力量以下の時は、最大コストになるため、電源種別、残存電力量によらず常に優先順位は最も低くなり、通信量を減らすことが可能となる。
しかし、通信を中継するソースノードに残存電力が閾値以下のソースノードしか選択できない場合は、電源種別、残存電力量で優先度が決定される。
【００３０】
親ノード１００は、遅延コスト、残存電力コストから決定した各ソースノードの通信を中継するソースノード２００に対して、送受信部１０１を経由して通信の中継を請け負うソースノード２００を通知する。
親ノード１００は、各ソースノード２００に対して、親ノードへの通信をする場合に、１ホップ目に通信するソースノードを通知する。
【００３１】
次に、図６に示すフローチャートに基づき、この発明の実施の形態１における各ノードの動作を説明する。
ステップＳ４００において、親ノード１００は各ソースノード２００に対して、残存電力量および電源種別の送信を要求する。ステップＳ４１０において、ソースノード２００は親ノード１００からの要求に基づき、自ノードの残存電力量を計測し、電源種別を検知する。ステップＳ４１１において、各ソースノード２００は計測した残存電力量および検知した電源種別を親ノード１００に送信する。
【００３２】
ステップＳ４０１は、親ノード１００が各ソースノード２００から送信された残存電力量および電源種別を受信し、それぞれ残存電力量記録部１０３および電源種別記録部１０２に記録する。ステップＳ４０２は、遅延コスト演算部１０６において、中継（ホップ）数から遅延コストを演算する。ステップＳ４０３は、前回収集した残存電力量と電源種別を確認する。ステップＳ４０４は、電源種別は前回収集したものと同じかどうか比較する。もし同じ（Ｙｅｓ）であればステップＳ４０５に進み、異なる（Ｎｏ）場合はステップＳ４０７に進む。
【００３３】
ステップＳ４０５は、ソースノード２００の電源が充電電源かどうか確認する。もし電源が充電電源の場合（Ｙｅｓ）はステップＳ４０６に進み、充電電源以外の場合（Ｎｏ）はステップＳ４０７に進む。ステップＳ４０６は、残存電力量の傾向を演算して、残存電力が“増加”、“維持”、“減少”のどれかを区別する。ステップＳ４０７は、閾値ビット演算部１０８で演算された閾値ビット、電源状態ビット演算部１０９で演算された電源状態ビット、残存電力ビット演算部１１０で演算された残存電力ビットを、この順で組み合わせて残存電力コストを演算する。
【００３４】
ステップＳ４０８は、ステップＳ４０２で演算された遅延コストと、ステップＳ４０７で演算され残存電力コストに基づき、経路設定部１１１において、ネットワーク内におけるソースノードの中から運用時間を最長化して中継するソースノードのルートを選択して経路設定を行なう。この経路設定は、図５に示したフローチャートにより行なうので、ここでは説明を省略する。
ステップＳ４０９は、親ノード１００は経路が決定したソースノード２００に対して、送受信部１０１を経由して通信の中継を請け負うソースノード２００に経路情報を通知し、親ノード１００は経路設定終了となる。
【００３５】
ステップＳ４１２は、親ノード１００からの経路情報をソースノード２００の送受信部２０８で受信する。ステップＳ４１３は、受信した経路情報により、自己のソースノード２００の経路設定部２０９に経路情報を設定し、ソースノード２００は経路設定終了となる。
【００３６】
以上のように、この発明の実施の形態１では、通信を中継するソースノードの経路設定において、ソースノードの残存電力量のみならず、各ソースノードの電源種別を考量して決定しているから、ソースノードの電力消費を押さえ、ネットワーク全体動作の最長化を実現することができる。
【００３７】
実施の形態２．
次に、この発明の実施の形態２における無線通信システムとしてアドホックネットワークの場合を図７〜図１０に基づいて説明する。
図７はアドホックネットワークの構成を示し、ネッワークを構成する複数のノードは、ネッワークの内の全てのソースノードを管理し通信を統制する親ノード１００と、情報を集めるセンサなどのソースノード２００ａ、２００ｄ、２００ｅと、親ノード１００とソースノード２００ａ、２００ｄ、２００ｅの間において情報を中継するソースノード２００ｂ、２００ｆとで構成されている。ソースノード２００ａ、２００ｄ、２００ｅからの情報は通信を中継するソースノード２００ｂまたは２００ｆを経由して親ノード１００に収集される。
【００３８】
各ソースノード２００ａ〜２００ｆの電源には、常時電力が供給される商用電源と、充電が可能な充電電源と、充電が不可能な電池電源のいずれかで動作するようになっている。図７においては、中継をするソースノード２００ｂ、２００ｆはどちらも充電が可能な充電電源で示している。
ソースノード２００ａから親ノード１００への通信経路において、中継するソースノード２００ｂ、２００ｆは図示していない複数のソースノードからも選べるようになっている。
また、ソースノードには、長時間通信をするソースノード２００ａと、短時間しか通信をしないソースノード２００ｄ、２００ｅがある。
【００３９】
この時、実施の形態１では、通信による単位時間あたりの電力消費を考慮していないため、その時コストが最小となったソースノードに中継する通信が集中し電力が大量に消費されることになる。
また、コストが最小とはならなかったソースノードには、逆に中継する通信が無いため電力消費が小さくなる。経路選択のためのコスト演算する時間間隔が短い場合は、その時々の残存電力コストに合わせて適時切り替えわるので、消費電力は平均化できるが、経路選択するためのコスト演算を行う時間間隔が長い場合は、通信を中継するソースノードの消費電力が集中的に消費され、ネットワークの運用時間の短縮につながることになる。
そこで、実施の形態２の発明は、通信量から消費電力予測コストを演算し、消費電力量の平均化を図ることで、特定のソースノードの電力消費が極端に増えることを防ぐようにしたものである。
【００４０】
図８はソースノード２００の構成図を示し、中継するソースノード２００はソースノードからの通信の中継に費やした中継通信時間を、通信を中継するソースノード別に通信時間計測部２１０で計測し、通信時間記録部２１１に記録する。その他の構成は実施の形態１の図２と同じにつき、同一または相当部分には同じ符号を付して説明を省略する。
送受信部２０８は、電源種別記録部２０３に記録した電源種別と、残存電力量記録部２０５に記録した残存電力量と、残存電力量閾値設定部２０６に設定した閾値電力と、最大電源容量登録部２０７に登録した最大電源容量と、通信時間記録部２１１に記録した通信時間を親ノード１００に送信する。
【００４１】
図９は親ノード１００の構成図を示し、親ノード１００は送受信部１０１を経由して管理する全ソースノード２００からのデータ情報を受信する。ソースノード２００から送信された電源種別、残存電力量、閾値電力量、最大電源容量および通信時間は、それぞれ電源種別記録部１０２、残存電力量記録部１０３、残存電力量閾値記録部１０４、最大電源容量記録部１０５および通信時間記録部１１２に記録される。こうして親ノード１００は、１個のソースノード２００に対して、複数の電源種別と残存電力量と閾値電力量と最大電源容量と通信時間を管理可能とする。
【００４２】
また、親ノード１００は任意の時間に、管理する全ソースノード２００の電源種別と残存電力量および通信時間の最新値を収集し管理する。
予想消費電力コスト演算部１１３は、閾値ビット演算部１０８と、電源状態ビット演算部１０９と、予想残存電力ビット演算部１１４によって構成され、実施の形態１で示した残存電力コスト演算部１０７に代わるものである。その他の構成は実施の形態１の図３と同じにつき、同一または相当部分には同じ符号を付して説明を省略する。
【００４３】
次に、予想消費電力コスト演算部１１３について詳しく説明する。
閾値ビット演算部１０８と電源状態ビット演算部１０９の動作は実施の形態１と同じである。予想残存電力ビット演算部１１４は、残存電力量記録部１０３に記録された残存電力量、残存電力量閾値記録部１０４に記録された残存電力量閾値、最大電源容量記録部１０５に記録された最大電源容量および通信時間記録部１１２に記録された通信時間を呼び出し、全ソースノードの予想残存電力量を符号化し予想残存電力ビットを演算する。
【００４４】
上記した予想残存電力ビットは次の式（１）で求まる。
予想残存電力ビット
＝残存電力ビット＋Σ予想消費電力ビット＜中継を依頼するソースノード※
の組合せの和＞・・・・・（１）
※：中継を依頼するソースノード＝図７における２００ａ、２００ｄ、２００ｅ
【００４５】
上記の予想消費電力ビットは、中継するソースノードの残存電力量の変化量と該当ソースノードの通信時間から算出する。
残存電力量の変化量（消費電力量）は前回計測時の残存電力量と現在の残存電力量から算出する。
また、そのソースノードを経由する全ソースノードの通信時間でソースノード毎の単位時間あたりの単位予想残存電力量を算出する。単位予想残存電力量に次回計測までの予測通信時間を掛けることで予想消費電力量となる。
これを中継するソースノードの符号化ルールで符号化することで予想消費電力ビットとなる。
なおこの時、複数のソースノードで共有していた中継通信時間は、各ソースノードの中継通信時間に加えてもよい。また、非通信時間に消費される消費電力量は除いてもよい。
【００４６】
以上のことを式に表すと、次の通りとなる。
予想消費電力ビット＝Ｆ（単位予想残存電力量、次回計測までの予想通信時間）
予想消費電力ビット＜中継を依頼するソースノード毎＞＝符号化した予想消費電力量
予想消費電力量＜中継を依頼するソースノード毎＞
＝単位予想残存電力量＊次回計測までの予想通信時間＜中継を依頼するソース
ノード毎＞・・・・（２）
単位予想残存電力量＜中継を依頼するソースノード毎＞
＝残存電力量の変化量／中継通信時間＜中継を依頼するソースノード毎＞
残存電力量の変化量＝前回収集時の残存電力量―現在収集時の残存電力量
【００４７】
予想消費電力コスト演算部１１３は、閾値ビット演算部１０８で演算された閾値ビット、電源状態ビット演算部１０９で演算された電源状態ビット、予想残存電力ビット演算部１１４で演算された予想残存電力ビットを、この順で組み合わせて演算する。
【００４８】
例えば、閾値ビットを１ビット、電源状態ビットを３ビット、予想残存電力ビットを４ビットで表現し、残存電力量が減少傾向の充電電源の電源状態ビットを“１００”で表す場合、ソースノードの予想残存電力ビットが“１０１１”で表せる時、予想消費電力コストは“０１００１０１１”（＝閾値ビット“０”，電源状態ビット“１００”，予想残存電力ビット“１０１１”）と表せる。
【００４９】
予想消費電力コスト演算部１１３で演算された予想消費電力コストと、遅延コスト演算部１０６で演算された遅延コストが経路設定部１１１に入力され、経路設定される。経路設定部１１１におけるルーティングを図１０のフローチャートに基づいて説明する。ルーティングはコストが小さいソースノードが優先されるように決定する。
まず、コストの優先順位は遅延コストと予想消費電力コストでは遅延コストが優先される。よって、ステップＳ２１は、予想消費電力コストの大小の関わらず遅延コストの小さい経路が優先され、ステップＳ２３の経路設定となる。次にステップＳ２１において、遅延コストが同じ場合、ステップＳ１２は、予想消費電力コストの小さい経路が優先され、ステップＳ２３の経路設定となる。
【００５０】
ステップＳ２２において、例えば、同じ予想消費電力ビットのソースノードが有っても、電源状態が充電電源と電池電源と違えば、電源状態ビットが小さいため、予想消費電力コストが小さくなる充電電源が優先される。
また、同じ充電電源で、同じ予想消費電力ビットのソースノードが有っても、予想消費電力が増加傾向のソースノードと予想消費電力が減少傾向のソースノードが有った場合、電源状態ビットが小さくなる予想消費電力が減少傾向のソースノードが優先される。
また、同じ電源状態ビットのソースノードが有れば、予想消費電力ビットが大きくなる予想消費電力量の小さいソースノードが優先される。
【００５１】
このコスト計算により、中継するソースノードの電力消費の偏りが改善され、ネットワークの運用時間の最長化に繋げることができる。
親ノード１００は、遅延コスト、予想消費電力コストから決定した各ソースノードの通信を中継するソースノード２００に対して、送受信部１０１を経由して通信の中継を請け負うソースノード２００を通知する。
親ノード１００は、各ソースノード２００に対して、親ノードへの通信をする場合に、１ホップ目に通信するソースノードを通知する。
【００５２】
次に、図１１に示すフローチャートに基づき、この発明の実施の形態２における各ノードの動作を説明する。
ステップＳ８００において、親ノード１００は各ソースノード２００に対して、残存電力量、電源種別および中継通信時間の送信を要求する。ステップＳ８１３において、ソースノード２００は親ノード１００からの要求に基づき、自ノードの残存電力量を計測し、電源種別を検知する。ステップＳ８１４において、各ソースノード２００は計測した残存電力量、検知した電源種別および中継通信時間を親ノード１００に送信する。
【００５３】
ステップＳ８０１は、親ノード１００が各ソースノード２００から送信された残存電力量、電源種別および中継通信時間を受信し、それぞれ残存電力量記録部１０３、電源種別記録部１０２および通信記録部１１２に記録する。ステップＳ８０２は、遅延コスト演算部１０６において、中継（ホップ）数から遅延コストを演算する。ステップＳ８０３は、前回収集した残存電力量と電源種別を確認する。ステップＳ８０４は、電源種別は前回収集したものと同じかどうか比較する。もし同じ（Ｙｅｓ）であればステップＳ８０５に進み、異なる（Ｎｏ）場合はステップＳ８０７に進む。
【００５４】
ステップＳ８０５は、ソースノード２００の電源が充電電源かどうか確認する。もし電源が充電電源の場合（Ｙｅｓ）はステップＳ８０６に進み、充電電源以外の場合（Ｎｏ）はステップＳ８０７に進む。ステップＳ８０６は、残存電力量の傾向を演算して、残存電力が“増加”、“維持”、“減少”のどれかを区別する。ステップＳ８０７は、式（２）により予想消費電力量を求め、それを符号化した予想消費電力ビットを演算する。ステップＳ８０８は、式（１）により予想残存電力ビットを演算する。ステップＳ８０９は、あるソースノードの通信を中継できる複数のソースノードにおいて、予想残存電力ビットの最大値が最小となっているか判断する。
【００５５】
このステップＳ８０９における動作を具体的に説明する。例えば、図７において、中継するソースノード２００ｂと２００ｆの残存電力ビットが“０１００”で、ソースノード２００ｄの予想消費電力ビットが“００１０”、ソースノード２００ａの予想消費電力ビットが“１０００”、ソースノード２００ｅの予想消費電力ビットが“０００１”の時、ソースノード２００ｄ、２００ａ，２００ｅがソースノード２００ｆを経由して通信する場合は、ソースノード２００ｂと２００ｆの予想残存電力ビットはそれぞれ“０１００”、“１１１１”となり、この組合せの予想残存電力ビットの最大値は“１１１１”となる。
同じ条件で、ソースノード２００ｄ、２００ｅがソースノード２００ｂを経由して通信し、ソースノード２００ａがソースノード２００ｆを経由して通信する場合は、ソースノード２００ｂと２００ｆの予想残存電力ビットはそれぞれ“０１１１”、“１１００”となり、この組合せの予想残存電力ビットの最大値は“１１００”となる。よって、この二つを比較した場合、後者の組合せが、「予測残存電力ビットの最大値が最も小さくなる組合せ」となり、こちらが選ばれる。
【００５６】
ステップＳ８１０は、閾値ビット演算部１０８で演算された閾値ビット、電源状態ビット演算部１０９で演算された電源状態ビット、予想残存電力ビット演算部１１４で演算された予想残存電力ビットを、この順で組み合わせて予想消費電力コストを演算する。
ステップＳ８１１は、ステップＳ８０２で演算された遅延コストと、ステップＳ８１０で演算され予想消費電力コストに基づき、経路設定部１１１において、ネットワーク内におけるソースノードの中から運用時間を最長化して中継するソースノードのルートを選択して経路設定を行なう。この経路設定は、図１０に示したフローチャートにより行なうので、ここでは説明を省略する。
【００５７】
ステップＳ８１２は、親ノード１００は経路が決定したソースノード２００に対して、送受信部１０１を経由して通信の中継を請け負うソースノード２００に経路情報を通知し、親ノード１００は経路設定終了となる。
ステップＳ８１５は、親ノード１００からの経路情報をソースノード２００の送受信部２０８で受信する。ステップＳ８１６は、受信した経路情報により、自己のソースノード２００の経路設定部２０９に経路情報を設定し、ソースノード２００は経路設定終了となる。
【００５８】
以上のように、この発明の実施の形態２では、中継する全ソースノードの残存電力ビットとそのソースノードを中継して通信する全ソースノードの予想消費電力ビットから、予想残存電力ビットの最大値が最も小さくなる中継するソースノードと通信するソースノードの組み合わせを算出する。この組合せで算出された予想残存電力ビットで予想消費電力コストが演算される。
このコスト計算により、中継するソースノードの電力消費の偏りが改善され、ネットワークの運用時間の最長化に繋げることができる。
【００５９】
実施の形態３．
次に、この発明の実施の形態３における無線通信システムとしてアドホックネットワークの場合を図１２に基づいて説明する。
図１２はアドホックネットワークの構成を示し、ネッワークを構成する複数のノードは、ネッワークの内の全てのソースノードを管理し通信を統制する親ノード１００と、情報を集めるセンサなどのソースノード２００ａと、親ノード１００とソースノード２００ａの間において情報を中継するソースノード２００ｃ、２００ｇ、２００ｈ、２００ｉとで構成されている。ソースノード２００ａからの情報は通信を中継するソースノード２００ｃ、２００ｇ〜２００ｉのいずれかを経由して親ノード１００に収集される。
【００６０】
図１２においては、中継するソースノードのうち、ソースノード２００ｃは充電が不可能な電池電源で、ソースノード２００ｇ〜２００ｉは常時電力が供給される商用電源で示している。
普段は遅延コストが大きくなっても常時電源が取れるルートにソースノードを配置し通信しているが、停電時の対策用に電池電源式のソースノードをバックアップ用に設置する場合もある。この電池電源式のソースノードを用いて通信した時に遅延コストが小さくなる場合、この電池電源式のソースノードが優先的に使われるため、バックアップの用を成さないことになる。そのため、停電時などのネットワークの運用時間が短くなる。
そこで、実施の形態３の発明は、非常用遅延コストを固定的に設定することで、バックアップ用に電池電源式のソースノードを設定できるようにしたものである。
【００６１】
例えば、図１２において、中継（ホップ）数を４ビットの遅延コストで表し、その符号化ルールが「ホップ数を１０進数表記から４桁の２進表記に変えること」である時、ソースノード２００ａから親ノード１００まで実線で記載された経路を使って通信を行う場合
、４ホップとなるため、遅延コストは“０１００”となる。一方、ソースノード２００ａから親ノード１００まで破線で記載された経路を使う場合、２ホップとなるため、遅延コストは“００１０”となる。
【００６２】
通常は遅延コストの小さい破線の経路が選択されることになるが、ソースノード２００ｃは電池電源式のソースノードであるため、なるべく中継をさせたくない。そこで、ソースノード２００ｃを経由する経路の遅延コストを常に“１０００”とする。
こうすれば、遅延コストが常に最大となるので、ソースノード２００ｇ、２００ｈ、２００ｉが通信できない状態にならない限り、経路選択時に、ソースノード２００ｃを経由する経路は選択されないようにすることができる。
この時設定した固定的な遅延コスト“１０００”を「非常用遅延コスト」と定義している。非常用遅延コストは遅延コストの最大値以上の値とする。一般的にはネットワークの最大ホップ数で決まる。
【符号の説明】
【００６３】
１００：親ノード、                    ２００、２００ａ〜２００ｉ：ソースノード、
１０１：送受信部、                    １０２：電源種別記録部、
１０３：残存電力量記録部、            １０４：残存電力量閾値記録部、
１０５：最大電源容量記録部、          １０６：遅延コスト演算部、
１０７：残存電力コスト演算部、        １０８：閾値ビット演算部、
１０９：電源状態ビット演算部、        １１０：残存電力ビット演算部、
１１１：経路設定部、                  １１２：通信時間記録部、
１１３：予想消費電力コスト演算部、    １１４：予想残存電力ビット演算部、
２０１：電源、                        ２０２：電源種別検知部、
２０３：電源種別記録部、              ２０４：残存電力量計測部、
２０５：残存電力量記録部、            ２０６：残存電力量閾値設定部、
２０７：最大電源容量登録部、          ２０８：送受信部、
２０９：経路設定部、                  ２１０：通信時間計測部、
２１１：通信時間記録部。
【図１】
0005351133.tif 000002
【図２】
0005351133.tif 000003
【図３】
0005351133.tif 000004
【図４】
0005351133.tif 000005
【図５】
0005351133.tif 000006
【図６】
0005351133.tif 000007
【図７】
0005351133.tif 000008
【図８】
0005351133.tif 000009
【図９】
0005351133.tif 000010
【図１０】
0005351133.tif 000011
【図１１】
0005351133.tif 000012
【図１２】
0005351133.tif 000013