(57)【特許請求の範囲】
【請求項１】
複数のデバイスから、前記デバイスが取得した取得情報と前記デバイスの電池の残量を示す残量情報とを、中継装置を経由して受信する処理部と、
受信した前記取得情報と前記残量情報とを記憶する記憶部と、を有し、
前記処理部は、いずれかのデバイスの前記残量情報が所定値を下回る場合に、前記デバイスが選択する中継装置を経由して前記取得情報と前記残量情報とを受信する第１のモードから、前記複数のデバイスから１つまたは複数の前記中継装置との通信状態を示す通信情報をさらに受信し、前記残量情報と前記通信情報とに基づいて前記複数のデバイスの中継装置を決定し、決定した前記中継装置を前記複数のデバイスに通知し、前記取得情報と前記残量情報とを、決定した前記中継装置を経由して受信する、第２のモードに切り替え、
前記第２のモードに切り替えた後、前記残量情報が前記所定値を下回らなくなった場合に、前記第２のモードから前記第１のモードに切り替える、
情報処理装置。
【請求項２】
請求項１において、
前記処理部は、いずれかのデバイスの前記残量情報が前記所定値を示す閾値を下回るか、または、いずれかのデバイスの前記残量情報が、前記複数のデバイスの残量情報の平均から所定の度合いを減じた前記所定値を下回る場合に、前記第１のモードから前記第２のモードに切り替える、
情報処理装置。
【請求項３】
請求項１において、
前記処理部は前記第２のモードにおいて、前記デバイスから前記中継装置への無線通信の再送回数を含む前記通信情報をさらに受信し、前記残量情報が第１のデバイスより少ない第２のデバイスの前記中継装置を、前記第２のデバイスが接続する複数の前記中継装置のうち前記再送回数が少ない前記中継装置に決定する、
情報処理装置。
【請求項４】
複数のデバイスから、前記デバイスが取得した取得情報と前記デバイスの電池の残量を示す残量情報とを、中継装置を経由して受信する処理部と、
受信した前記取得情報と前記残量情報とを記憶する記憶部と、を有し、
前記処理部は、いずれかのデバイスの前記残量情報が所定値を下回る場合に、前記デバイスが選択する中継装置を経由して前記取得情報と前記残量情報とを受信する第１のモードから、前記複数のデバイスから１つまたは複数の前記中継装置との通信状態を示す通信情報をさらに受信し、前記残量情報と前記通信情報とに基づいて前記複数のデバイスの中継装置を決定し、決定した前記中継装置を前記複数のデバイスに通知し、前記取得情報と前記残量情報とを、決定した前記中継装置を経由して受信する、第２のモードに切り替え、
前記第２のモードにおいて、前記デバイスから前記中継装置への無線通信の再送回数を含む前記通信情報をさらに受信し、前記残量情報が第１のデバイスより少ない第２のデバイスの前記中継装置を、前記第２のデバイスが接続する複数の前記中継装置のうち前記再送回数が少ない前記中継装置に決定する、
情報処理装置。
【請求項５】
複数のデバイスから、前記デバイスが取得した取得情報と前記デバイスの電池の残量を示す残量情報とを、前記デバイスが選択する中継装置を経由して受信する第１のモードを実行し、
いずれかのデバイスの前記残量情報が所定値を下回る場合に、前記第１のモードから、前記複数のデバイスから１つまたは複数の前記中継装置との通信状態を示す通信情報をさらに受信し、前記残量情報と前記通信情報とに基づいて前記複数のデバイスの中継装置を決定し、決定した前記中継装置を前記複数のデバイスに通知し、前記取得情報と前記残量情報とを、決定した前記中継装置を経由して受信する、第２のモードに切り替え、
前記第２のモードに切り替えた後、前記残量情報が前記所定値を下回らなくなった場合に、前記第２のモードから前記第１のモードに切り替える、
処理をコンピュータに実行させる制御プログラム。
【請求項６】
処理部が、複数のデバイスから、前記デバイスが取得した取得情報と前記デバイスの電池の残量を示す残量情報とを、前記デバイスが選択する中継装置を経由して受信する第１のモードを実行し、
処理部が、いずれかのデバイスの前記残量情報が所定値を下回る場合に、前記第１のモードから、前記複数のデバイスから１つまたは複数の前記中継装置との通信状態を示す通信情報をさらに受信し、前記残量情報と前記通信情報とに基づいて前記複数のデバイスの中継装置を決定し、決定した前記中継装置を前記複数のデバイスに通知し、前記取得情報と前記残量情報とを、決定した前記中継装置を経由して受信する、第２のモードに切り替え、
前記第２のモードに切り替えた後、前記残量情報が前記所定値を下回らなくなった場合に、前記第２のモードから前記第１のモードに切り替える、
情報処理装置の制御方法。
【請求項７】
取得情報と電池の残量を示す残量情報とをそれぞれ送信する複数のデバイスと、
前記複数のデバイス受信した前記取得情報と前記残量情報を、中継して情報処理装置に送信する複数の中継装置と、
前記取得情報と前記残量情報とを受信する前記情報処理装置と、を有し
前記情報処理装置は、
受信した前記取得情報と前記残量情報とを記憶する記憶部と、
いずれかのデバイスの前記残量情報が所定値を下回る場合に、前記デバイスが選択する中継装置を経由して前記取得情報と前記残量情報とを受信する第１のモードから、前記複数のデバイスから１つまたは複数の前記中継装置との通信状態を示す通信情報をさらに受信し、前記残量情報と前記通信情報とに基づいて前記複数のデバイスの中継装置を決定し、決定した前記中継装置を前記複数のデバイスに通知し、前記取得情報と前記残量情報とを、決定した前記中継装置を経由して受信する、第２のモードに切り替え、前記第２のモードに切り替えた後、前記残量情報が前記所定値を下回らなくなった場合に、前記第２のモードから前記第１のモードに切り替える処理部と、を有する、
情報処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、制御プログラム、情報処理装置の制御方法、及び、情報処理システムに関する。
【背景技術】
【０００２】
情報処理装置が、センサを備える複数のデバイスのそれぞれが取得したデータを、ゲートウェイ等の中継装置を経由して収集し、収集したデータに基づいて所定の処理を行う情報処理システムがある。それぞれのデバイスは、データを取得する場所に固定して設置され、近距離無線通信を介して、ゲートウェイにデータを送信する。また、ゲートウェイは、有線または無線を介して、デバイスから受信したデータを、情報処理装置に送信する。
【０００３】
また、各デバイスは電池を備え、電池によって駆動する。したがって、デバイスの電池が切れた場合、作業員はデバイスが設置された場所に訪問し、電池の交換や充電等のメンテナンスを行う。
【０００４】
情報処理システムは、１つのデバイスに対して、１つまたは複数のゲートウェイを配置する。各デバイスは、例えば、接続するゲートウェイをそれぞれ選択し、選択したゲートウェイを介して、データを情報処理装置に送信する。
【０００５】
電池を備えるデバイスの通信経路に関する技術については、特許文献１、２に記載される。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特表２００５−５２６４１６号公報
【特許文献２】特開２００６−２１１３８９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、デバイスが接続先のゲートウェイを選択する場合、電池残量の少ないデバイスの、ゲートウェイへの再送回数が多くなり、電力消費が増加してしまう場合がある。これにより、電池残量の少ないデバイスの寿命が短くなり、各デバイスの電池残量に基づく情報処理システムの寿命が短くなってしまう。情報処理システムの寿命が短くなることにより、メンテナンスにかかるコストが増加してしまう。
【０００８】
１つの側面は、本発明は、デバイスの電池残量に基づくシステムの寿命を長期化する情報処理装置、制御プログラム、情報処理装置の制御方法、及び、情報処理システムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
第１の側面によれば、複数のデバイスから、前記デバイスが取得した取得情報と前記デバイスの電池の残量を示す残量情報とを、中継装置を経由して受信する処理部と、受信した前記取得情報と前記残量情報とを記憶する記憶部と、を有し、前記処理部は、いずれかのデバイスの前記残量情報が所定値を下回る場合に、前記デバイスが選択する中継装置を経由して前記取得情報と前記残量情報とを受信する第１のモードから、前記複数のデバイスから１つまたは複数の前記中継装置との通信状態を示す通信情報をさらに受信し、前記残量情報と前記通信情報とに基づいて前記複数のデバイスの中継装置を決定し、決定した前記中継装置を前記複数のデバイスに通知し、前記取得情報と前記残量情報とを、決定した前記中継装置を経由して受信する、第２のモードに切り替える。
【発明の効果】
【００１０】
第１の側面によれば、デバイスの電池残量に基づくシステムの寿命を長期化できる。
【図面の簡単な説明】
【００１１】
【図１】図１は、本実施の形態における情報処理システム１００のネットワーク構成を説明する図である。
【図２】図１に示した情報処理システム１００のデバイス間の電池残量の偏りを説明する図である。
【図３】本実施の形態のセンタサーバ１０の制御の態様を模式的に説明する図である。
【図４】図１に示したセンタサーバ１０のハードウェア構成図である。
【図５】図４に示したセンタサーバ１０のデータ収集プログラム２１０のソフトウェアブロックの構成図である。
【図６】図４、図５に示した、デバイス情報テーブル３１０の一例を説明する図である。
【図７】図４、図５に示した、デバイス接続先制御情報テーブル３１１の一例を説明する図である。
【図８】図１〜図３に示したデバイス３０ａのハードウェア構成図である。
【図９】図８に示したデバイス３０ａのソフトウェアブロックの構成図である。
【図１０】図８、図９に示した制御情報テーブル４１１の一例を説明する図である。
【図１１】自律制御から集中制御への切り替え処理の流れを説明するシーケンス図である。
【図１２】集中制御から自律制御への切り替え処理の流れを説明するシーケンス図である。
【図１３】集中制御に切り替えた後のデバイス情報テーブル３１０−１を示す図である。
【図１４】図１１、図１２で説明した、送信センサデータ、制御情報通知要求、送信制御データ、及び、接続先制御通知のフォーマットの一例を示す図である。
【図１５】図５に示したセンタサーバ１０のデータ収集プログラム２１０の、制御の切り替え判定処理の流れを説明するフローチャート図である。
【図１６】図５に示したデータ収集プログラム２１０の、送信センサデータ及び送信制御データの受信処理の流れを説明するフローチャート図である。
【図１７】図９に示したデバイス３０のデータ送信プログラム４１０の、センサデータの送信処理の流れを説明するフローチャート図である。
【図１８】図９に示したデバイス３０のデータ送信プログラム４１０の、接続先制御通知の受信に応答した制御切り替え処理の流れを説明するフローチャート図である。
【図１９】図９に示したデバイス３０のデータ送信プログラム４１０の、制御情報通知要求受信時の処理の流れを説明するフローチャート図である。
【図２０】図９に示したデバイス３０のデータ送信プログラム４１０の、接続先切り替え処理の流れを説明するフローチャート図である。
【図２１】図１〜図３に示したゲートウェイ２０のハードウェア構成図である。
【図２２】図２１に示したゲートウェイ２０のソフトウェアブロックの構成図である。
【発明を実施するための形態】
【００１２】
以下、図面にしたがって本発明の実施の形態について説明する。ただし、本発明の技術的範囲はこれらの実施の形態に限定されず、特許請求の範囲に記載された事項とその均等物まで及ぶものである。
【００１３】
［情報処理システム］
図１は、本実施の形態における情報処理システム１００のネットワーク構成を説明する図である。図１の情報処理システム１００は、Ｍ２Ｍ（Machine to Machine：Ｍ２Ｍ）に基づくシステムである。Ｍ２Ｍは、機械同士がネットワークを介して互いに情報をやり取りすることにより、高度な制御や動作を行うシステムを示す。
【００１４】
図１の情報処理システム１００は、センタサーバ（情報処理装置）１０と、複数のゲートウェイ（中継装置）２０−１〜２０−３と、複数のデバイス３０ａ〜３０ｆとを有する。図１に示すセンタサーバ１０は、例えば、クラウドコンピューティング等によって実現されるサーバを示す。ゲートウェイ２０は、デバイス３０とセンタサーバ１０との通信を中継する装置である。
【００１５】
各デバイス３０ａ〜３０ｆは、近距離無線通信を介して、ゲートウェイ２０−１〜２０−３（ゲートウェイ２０ともいう）と接続する（図中の点線）。近距離通信は、例えば、数十メートル程度の通信エリアの無線通信を示し、ジグビー（ZigBee（登録商標））、ブルートゥース（Bluetooth（登録商標））等に基づく無線通信を示す。また、ゲートウェイ２０は、無線通信または有線通信を介して、センタサーバ１０と接続する（図中の直線）。無線通信に基づく場合、ゲートウェイ２０は、例えば、ＬＴＥ（Long Term Evolution：ＬＴＥ）や３Ｇ（3rd Generation）等の規格にしたがって、センタサーバ１０と接続する。
【００１６】
図１に示す、各デバイス３０は、センシングする場所に固定的に位置する。また、各デバイス３０は、それぞれセンサを備え、センサが検出したデータを取得する。各デバイス３０は、定期的に、データを取得し、ゲートウェイ２０を経由して取得データ（センサデータともいう）をセンタサーバ１０に送信する。
【００１７】
なお、各デバイス３０は、必ずしもセンサを備えている必要はない。取得データは、デバイス３０が備える、別の機器やプログラム等が検出したデータであってもよい。また、図１の例では、６つのデバイス３０ａ〜３０ｆ（デバイス３０ともいう）を例示しているが、情報処理システム１００は、実際は、多量のデバイス３０を有する。
【００１８】
センタサーバ１０は、複数のデバイス３０から収集した取得データに基づいて、所定の処理を行う。例えば、図１に示す情報処理システム１００がマンホールの下水管理システムである場合、センタサーバ１０は、マンホールに設置された水位センサが観測した水位データ（取得データ）を各デバイス３０から収集する。そして、センタサーバ１０は、収集した水位データのうち、閾値を超える水位データがある場合に、当該水位データのデバイス３０の近隣の住民への警告通知等を行う。または、センタサーバ１０は、収集した水位データを、作業員のための情報として出力する。
【００１９】
なお、情報処理システム１００は、下水管理システムに限定されるものではない。情報処理システム１００は、橋梁やトンネル等の振動管理システムであってもよい。振動管理システムのセンタサーバ１０は、各デバイス３０から振動データを収集し、収集した振動データに基づいて、点検業務や補修業務等を行う。
【００２０】
また、デバイス３０のそれぞれは電池を備え、電池によって駆動する。デバイス３０の電力消費は、データの送信処理による電力消費の割合が大きい。また、デバイス３０の電池が切れると、作業員は、デバイス３０が設置された場所に訪問し、電池の交換や充電等のメンテナンスを行う。デバイス３０は、遠隔地や作業性の困難な場所に設置されている場合があり、作業員による電池の交換や充電等の作業の負荷に応じて、メンテナンスにかかるコストが増加する。
【００２１】
また、図１に示す情報処理システム１００は、１つのデバイス３０に対して、複数のゲートウェイ２０を冗長して配置する。デバイス３０とゲートウェイ２０との無線環境は、設置環境の変化に応じて変動する。したがって、無線環境が悪化すると、ゲートウェイ２０はデバイス３０からデータを受信できないことがある。また、ゲートウェイ２０が処理するデータ量が許容量を超えた場合、パケットの衝突が多発し、データの送信エラーが生じ易い。
【００２２】
したがって、情報処理システム１００は、デバイス３０からのデータの受信の信頼性を高め、各ゲートウェイ２０が処理するデータ量を許容量に収めるために、１つのデバイス３０に対して、複数のゲートウェイ２０を冗長に配置する。複数のゲートウェイ２０は、互いに異なる周波数チャンネル（ＣＨ）の設定を有する。
【００２３】
［自律制御］
それぞれのデバイス３０は、例えば、接続可能な複数のゲートウェイ２０から、最適なゲートウェイ２０を選択する。各デバイス３０は、例えば、電波強度や再送回数等に基づいて、接続先のゲートウェイ２０を選択する。電波強度は、デバイス３０とゲートウェイ２０との無線通信の電波の強さを示す。電波強度が高いほど、送信エラーが発生する確率は低い。再送回数は、ゲートウェイ２０へのデータの送信エラーに伴う再送の回数を示す。
【００２４】
各デバイス３０は、接続中のゲートウェイ２０との無線環境が悪化した場合に、無線環境の良い他のゲートウェイ２０と接続する。これにより、デバイス３０は、センサデータの再送回数を抑制する。デバイス３０は、例えば、接続中のゲートウェイ２０の電波強度が所定の閾値を下回ると、ゲートウェイ２０との接続を切断し、周囲のゲートウェイ２０の中から、電波強度が所定の閾値以上のゲートウェイ２０を選択する。そして、デバイス３０は、選択したゲートウェイと同一の周波数チャンネルを設定して接続する。または、各デバイス３０は、再送回数の小さいゲートウェイ２０を接続先として選択してもよい。
【００２５】
このように、デバイス３０は、当該デバイス３０にとって最適なゲートウェイ２０を選択する。各デバイス３０が自律的にゲートウェイ２０を選択できることにより、センタサーバ１０は、各デバイス３０とゲートウェイ２０との間の経路を制御しなくてもよい。これにより、センタサーバ１０の処理の負荷を抑制可能になるとともに、経路の制御にかかる通信処理が発生しない。
【００２６】
一方、各デバイス３０は、他のデバイス３０を考慮せずに、接続先のゲートウェイ２０を選択する。したがって、電池残量の少ないデバイス３０の、接続するゲートウェイ２０へのセンサデータの再送回数が多くなることがある。データの送信処理の増加に応じて電力消費が増加することにより、電池残量の少ないデバイス３０の電池残量がさらに減少する。これにより、デバイス間で、電池残量の偏りが生じ易くなる。
【００２７】
図２は、図１に示した情報処理システム１００のデバイス間の電池残量の偏りを説明する図である。図２において、図１で示したものと同一のものは、同一の記号で示す。図２は、図１に示したゲートウェイ２０−１〜２０−３のうち、ゲートウェイ２０−１、２０−２を示す。また、図２は、図１に示したデバイス３０ａ〜３０ｆに加えて、さらにデバイス３０ｇ、３０ｈを示す。また、図２は、センタサーバ１０の図示を省略している。
【００２８】
図２の例において、デバイス３０ａ〜３０ｆとゲートウェイ２０−１との間の電波強度は高く、デバイス３０ａ〜３０ｆとゲートウェイ２０−２との間の電波強度は低い。したがって、デバイス３０ａ〜３０ｆのそれぞれは、例えば、接続先のゲートウェイ２０として、ゲートウェイ２０−１を選択する。これにより、ゲートウェイ２０−１に、複数のデバイス３０ａ〜３０ｆの接続が集中し、データ量が、ゲートウェイ２０−１の処理能力及び無線容量の許容量を超える場合がある。これにより、パケットの衝突が多発し、センサデータの再送回数が増加することにより、通信のデータ量がさらに増加する。再送回数の増加が継続することにより、デバイス３０ａ〜３０ｆの電力消費が増加する。
【００２９】
また、例えば、デバイス３０ｆは、再送回数を抑えるために、ゲートウェイ２０−１より電波強度は弱いものの、再送回数が少ないゲートウェイ２０−２を接続先に選択し直す。図２の例によると、デバイス３０ｆの電池残量ＢＰｆは、デバイス３０ａ〜３０ｅの電池残量ＢＰａ〜ＢＰｅに対して少ない。したがって、電池残量ＢＰａ〜ＢＰｅが多いデバイス３０ａ〜３０ｅが、電波強度の高いゲートウェイ２０−１と接続し、電池残量ＢＰｆが少ないデバイス３０ｆが、電波強度の低いゲートウェイ２０−２と接続する状態が発生する。
【００３０】
これにより、電池残量ＢＰｆが少ないデバイス３０ｆの電力消費が増加し、デバイス３０ｆの電池残量ＢＰｆがさらに減少することにより、デバイス間の電池残量に偏りが生じる。情報処理システム１００は、デバイス３０ｆの電池が切れた場合、全てのデバイス３０ａ〜３０ｈ（デバイス３０ともいう）のセンサデータを収集できなくなる。即ち、デバイス３０ｆの電池残量が少なくなることにより、情報処理システム１００の寿命が短くなる。
【００３１】
なお、デバイス３０が備える電池の特性に応じて、送信処理にかかる電力消費が異なることがある。また、温度等のデバイス３０の環境要因に応じて、電池の劣化度合いがデバイス間で異なることにより、送信処理による電力消費も異なる。このように、デバイス間の再送回数が同様であっても、デバイス間の電池残量に偏りが生じることがある。
【００３２】
［本実施の形態］
したがって、本実施の形態のセンタサーバ１０は、いずれかのデバイス３０の電池残量（残量情報）が、所定値を下回るか否かを判定し、下回ると判定した場合に、第１のモードから、第２のモードに切り替える。
【００３３】
センタサーバ１０は、第１のモードでは、デバイス３０が選択するゲートウェイ２０を経由して、センサデータ（取得情報）と残量情報とを受信する。以下、各デバイス３０が接続先のゲートウェイ２０を選択する態様を自律制御と称する。センタサーバ１０は、第２のモードでは、各デバイス３０から、ゲートウェイ２０との通信状態を示す通信情報（制御データ）をさらに受信し、残量情報と通信情報とに基づいて各デバイス３０のゲートウェイ２０を決定する。そして、センタサーバ１０は、決定したゲートウェイ２０を各デバイス３０に通知し、センサデータと残量情報とを決定したゲートウェイ２０を経由して受信する。以下、センタサーバ１０が全てのデバイス３０の接続先のゲートウェイ２０を決定する態様を集中制御と称する。
【００３４】
集中制御によると、センタサーバ１０は、電池残量ＢＰｆの少ないデバイス３０ｆのみに、電波強度の強いゲートウェイ２０−１を割り当てることができる。つまり、センタサーバ１０は、デバイス３０ｆの接続先をゲートウェイ２０−１に決定し、電池残量ＢＰａ〜ＢＰｅが多いデバイス３０ａ〜３０ｅの接続先を、別のゲートウェイ２０−２に決定する。
【００３５】
これにより、デバイス３０ｆの再送回数を低減させ、データの送信処理にかかる電力消費を抑えることができる。電池残量ＢＰｆの少ないデバイス３０ｆの電力消費が低減することにより、デバイス３０ｆの寿命が長くなる。これにより、各デバイス３０ａ〜３０ｈの電池残量に基づく、情報処理システム１００の寿命が長期化する。
【００３６】
図３は、本実施の形態のセンタサーバ１０の制御の態様を模式的に説明する図である。図３において、図１、図２で示したものと同一のものは、同一の記号で示す。図３は、情報処理システム１００が、図１に示したゲートウェイ２０−１〜２０−３に加えて、ゲートウェイ２０−４〜２０−８を有する場合を示す。
【００３７】
図３の上の模式図ＭＤ１は、自律制御（第１のモード）の態様を示す。模式図ＭＤ１によると、いずれのデバイス３０ａ〜３０ｈの電池残量ＢＰａ〜ＢＰｈ（電池残量ＢＰともいう）も十分である。つまり、模式図ＭＤ１によると、いずれのデバイス３０ａ〜３０ｈの電池残量ＢＰａ〜ＢＰｈも、所定値を下回っていない。したがって、センタサーバ１０は、自律制御にしたがって、各デバイス３０ａ〜３０ｈが選択したゲートウェイ２０−１〜２０−８を経由して、センサデータを収集する。
【００３８】
各デバイス３０は、例えば、接続可能なゲートウェイ２０のうち、電波強度、再送回数のいずれかまたは両方に基づいて、デバイス３０にとって最適な接続先のゲートウェイ２０を選択する。これにより、デバイス３０は、データ送信時のエラーの発生率を抑え、再送処理に伴う電力消費を抑えることができる。図３の模式図ＭＤ１の例によると、デバイス３０ａは、接続可能なゲートウェイ２０−１、２０−２から最適なゲートウェイ２０を選択し、当該ゲートウェイ２０を介してセンサデータを送信する。
【００３９】
図３の下の模式図ＭＤ２は、集中制御（第２のモード）の態様を示す。図２で説明したとおり、自律制御を採用する場合、デバイス間の電池残量ＢＰの偏りが生じ易い。図３の模式図ＭＤ２は、自律制御を継続することにより、デバイス間の電池残量ＢＰの偏りが生じた状態を示す。デバイス３０ｂの電池残量ＢＰｂ、及び、デバイス３０ｇの電池残量ＢＰｇは、所定値を下回っているため、センタサーバ１０は、自律制御から集中制御に切り替える。
【００４０】
集中制御によると、センタサーバ１０は、全てのデバイス３０ａ〜３０ｈの接続先のゲートウェイ２０−１〜２０−８を決定する。センタサーバ１０は、各デバイス３０ａ〜３０ｈから、接続可能なゲートウェイ２０との通信状態を示す通信情報（制御データともいう）をさらに受信し、電池残量ＢＰと制御データとに基づいて各デバイス３０ａ〜３０ｈの接続先のゲートウェイ２０を決定する。通信状態を示す通信情報は、デバイス３０が接続可能な１つまたは複数のゲートウェイ２０との通信の状態を示す。通信情報は、例えば、再送回数等を含む。
【００４１】
図３の模式図ＭＤ２の例によると、センタサーバ１０は、電池残量ＢＰｂ、ＢＰｇの少ないデバイス３０ｂ、３０ｇの接続先を、通信情報に基づいて通信状態の良いゲートウェイ２０−２、２０−７にそれぞれ優先的に決定する。また、センタサーバ１０は、電池残量ＢＰａ、ＢＰｈの多いデバイス３０ａ、３０ｈの接続先を、ゲートウェイ２０−２、２０−７とは異なるゲートウェイ２０−１、２０−８にそれぞれ決定する。
【００４２】
これにより、センタサーバ１０は、電池残量ＢＰｂ、ＢＰｇが少ないデバイス３０ｂ、３０ｇの電力消費を減少させることができる。したがって、センタサーバ１０は、デバイス間の電池残量ＢＰを平滑化し、デバイス３０ｂ、３０ｇの寿命を長期化することができる。これにより、センタサーバ１０は、デバイス３０ａ〜３０ｈの電池残量ＢＰａ〜ＢＰｈに基づく情報処理システム１００の寿命を長期化することができる。
【００４３】
このように、センタサーバ１０は、情報処理システム１００の寿命が短くなってしまった場合に、集中制御に切り替えることによってデバイス間の電池残量ＢＰの偏りを平滑化し、情報処理システム１００の寿命を長期化できる。または、センタサーバ１０は、情報処理システム１００の寿命が短くなる傾向にある場合に、集中制御に切り替えることによってデバイス間の電池残量ＢＰの偏りを平滑化し、情報処理システム１００の寿命を長期化することができる。寿命の長期化により、電池のメンテナンスにかかるコストを抑えることが可能になる。
【００４４】
なお、集中制御に切り替えることにより、各デバイス３０からの制御データの収集処理が生じ、通信のデータ量が増加する。ゲートウェイ２０とセンタサーバ１０との通信に、データ量の増加に応じて課金が生じる無線回線を採用する場合、通信のデータ量の増加に伴い、通信にかかるコストが増加する。
【００４５】
また、制御データの送信処理によって各デバイス３０の電力消費が増加する。また、情報処理システム１００が、例えば、膨大な量のゲートウェイ２０を有する場合、各デバイス３０から制御データの収集処理が生じることに伴う、センタサーバ１０の通信処理の負荷は大きい。さらに、センタサーバ１０が、デバイス３０とゲートウェイ２０との全ての組み合わせから最適な組み合わせを算出する処理の負荷も大きい。
【００４６】
これに対し、本実施の形態におけるセンタサーバ１０は、いずれかのデバイス３０の電池残量ＢＰが所定値を下回った場合にのみ、集中制御に切り替える。これにより、センタサーバ１０は、情報処理システム１００の寿命を長期化する際の、通信コスト、センタサーバ１０の通信処理や算出処理の負荷、及び、電力消費を抑えることができる。また、集中制御に基づくことにより、通信のコストが増加するものの、寿命の長期化により電池のメンテナンスにかかるコストが低減するため、総合的なコストを抑えることが可能になる。
【００４７】
次に、図４、図５にしたがって、本実施の形態におけるセンタサーバ１０のハードウェア構成及びソフトウェアブロック図を説明する。また、図８、図９にしたがって、本実施の形態におけるデバイス３０のハードウェア構成及びソフトウェアブロック図を説明する。
【００４８】
［センタサーバのハードウェア構成］
図４は、図１に示したセンタサーバ１０のハードウェア構成図である。図４に示すセンタサーバ１０は、例えば、ＣＰＵ１０１、メモリ１０２、補助記憶装置１０３、通信インタフェース部１０４、入力装置１０５、出力装置１０６を有する。各部は、バス１０７を介して相互に接続する。メモリ１０２は、ＲＡＭ（Random Access Memory：ＲＡＭ）２０１や不揮発性メモリ２０２等を備える。入力装置１０５は、例えば、キーボードやマウス等を示し、出力装置１０６は、例えば、ディスプレイである。
【００４９】
ＣＰＵ１０１は、バス１０７を介してメモリ１０２等と接続するとともに、センタサーバ１０全体の制御を行う。通信インタフェース部１０４は、アンテナ１０８を介して、ゲートウェイ２０や他の装置（図示せず）と無線通信にしたがってデータの送受信等を行う。アンテナ１０８は、無線電波による各種データの送受信を行う。なお、通信インタフェース部１０４は、有線通信にしたがって、ゲートウェイ２０や他の装置（図示せず）と接続してもよい。メモリ１０２のＲＡＭ２０１は、ＣＰＵ１０１が処理を行うデータ等を記憶する。補助記憶装置１０３は、例えば、各種情報を記憶するハードディスク（Hard disk drive：ＨＤＤ）である。
【００５０】
メモリ１０２の不揮発性メモリ２０２は、ＣＰＵ１０１が実行するＯＳ（Operating System：ＯＳ）のプログラムを格納する領域（図示せず）を備える。また、不揮発性メモリ２０２は、データ収集プログラム格納領域２１０と、アプリケーションプログラム格納領域２１１とを備える。不揮発性メモリ２０２は、例えば、不揮発性半導体メモリ等を示す。
【００５１】
データ収集プログラム格納領域２１０のデータ収集プログラム（以下、データ収集プログラム２１０と称する）は、ＣＰＵ１０１の実行によって、各デバイス３０からデータを収集する。データ収集プログラム２１０の処理の詳細は、図５にしたがって説明する。アプリケーションプログラム格納領域２１１のアプリケーションプログラム（以下、アプリケーションプログラム２１１と称する）は、ＣＰＵ１０１の実行によって、データ収集プログラム２１０が収集したデータの集計や分析処理を行う。
【００５２】
また、補助記憶装置１０３は、デバイス情報格納領域３１０（以下、デバイス情報テーブル３１０と称する）と、デバイス接続先制御情報格納領域３１１（以下、デバイス接続先制御情報テーブル３１１と称する）とを有する。デバイス情報テーブル３１０は、データ収集プログラム２１０が収集した各デバイス３０のデータを記憶するテーブルである。デバイス情報テーブル３１０の詳細は、図６にしたがって後述する。デバイス接続先制御情報テーブル３１１は、各デバイス３０の接続指定のゲートウェイ２０の情報を記憶するテーブルである。デバイス接続先制御情報テーブル３１１の詳細は、図７にしたがって後述する。
【００５３】
［センタサーバのソフトウェアブロック］
図５は、図４に示したセンタサーバ１０のデータ収集プログラム２１０のソフトウェアブロックの構成図である。図５において、図４で示したものと同一のものは、同一の記号で示す。
【００５４】
図５に示すように、図４に示したデータ収集プログラム２１０は、制御モジュール２２１、接続制御切り替えモジュール２２２、接続先最適化モジュール２２３を有する。各モジュール２２１〜２２３の処理の詳細は、図１５、図１６のフローチャート図で後述する。
【００５５】
制御モジュール２２１は、各モジュール２２２、２２３を制御するとともに、各デバイス３０からゲートウェイ２０を中継して受信するデータをデバイス情報テーブル３１０（図４）に記憶する。
【００５６】
接続制御切り替えモジュール２２２は、デバイス情報テーブル３１０を参照して、自律制御と集中制御との切り替えの有無を判定するとともに、各制御に応じた処理を行う。また、接続制御切り替えモジュール２２２は、自律制御から集中制御に切り替える場合に、接続先最適化モジュール２２３に、全てのデバイス３０の接続先のゲートウェイ２０の最適化を指示する。また、接続制御切り替えモジュール２２２は、決定した、各デバイス３０の接続先のゲートウェイ２０の情報を、デバイス接続先制御情報テーブル３１１（図４）に記憶する。
【００５７】
接続先最適化モジュール２２３は、接続制御切り替えモジュール２２２の指示に応答して、デバイス情報テーブル３１０を参照し、計算処理にしたがって、全てのデバイス３０の接続先に指定するゲートウェイ２０を決定する。
【００５８】
［デバイス情報テーブル］
図６は、図４、図５に示した、デバイス情報テーブル３１０の一例を説明する図である。デバイス情報テーブル３１０は、例えば、デバイス３０のＭＡＣ（Media Access Control：ＭＡＣ）アドレスを識別情報として、電池残量、送信頻度、再送回数、及び、電波強度の項目を有する。電池残量は、デバイス３０を駆動する電池の残量情報を示す。送信頻度（回／ｓｅｃ）は、１秒当たりのセンサデータの送信回数を示す。再送回数は、所定の期間における、各ゲートウェイ２０へのセンサデータの送信エラーに伴う再送回数を示す。電波強度（ｄＢｍ（decibel-milliwatts））は、各ゲートウェイ２０との間の電波強度を示す。
【００５９】
図６に示す、デバイスアドレス「ａａａａ」のデバイス３０は、図１〜図３に示したデバイス３０ａを示す。また、デバイスアドレス「ｂｂｂｂ」のデバイス３０は、デバイス３０ｂを示し、デバイスアドレス「ｃｃｃｃ」のデバイス３０は、デバイス３０ｃを示す。また、図６に示す、ゲートウェイ「ＧＷ１」〜「ＧＷ４」は、図３に示したゲートウェイ２０−１〜２０−４に対応する。図７で後述するデバイス接続先制御情報テーブル３１１についても同様である。
【００６０】
図６に示すデバイス情報テーブル３１０によると、デバイス３０ａの電池残量は９０％であって、送信頻度は「０．１」である。即ち、デバイス３０ａは、１０秒に１回、センサデータをセンタサーバ１０に送信する。また、デバイス情報テーブル３１０によると、デバイス３０ａは、ゲートウェイ「ＧＷ１」２０−１、ゲートウェイ「ＧＷ２」２０−２、及びゲートウェイ「ＧＷ４」２０−４と接続可能である。
【００６１】
また、図６に示すデバイス情報テーブル３１０によると、デバイス３０ａからゲートウェイ「ＧＷ１」２０−１への再送回数は５回、ゲートウェイ「ＧＷ２」２０−２への再送回数は１回、ゲートウェイ「ＧＷ４」２０−４への再送回数は１０回である。つまり、デバイス３０ａと接続可能なゲートウェイ２０のうち、ゲートウェイ「ＧＷ２」２０−２への再送回数が一番少ない。
【００６２】
また、図６に示すデバイス情報テーブル３１０によると、デバイス３０ａとゲートウェイ「ＧＷ１」２０−１との電波強度は「−７０ｄＢｍ」である。また、デバイス３０ａとゲートウェイ「ＧＷ２」２０−２との電波強度は「−４５ｄＢｍ」、ゲートウェイ「ＧＷ４」２０−４との電波強度は「−８８ｄＢｍ」である。つまり、デバイス３０ａと接続可能なゲートウェイ２０のうち、ゲートウェイ「ＧＷ２」２０−２との電波強度が一番高い。
【００６３】
図６に示す、デバイス情報テーブル３１０は、他のデバイス３０ｂ、３０ｃについても、同様にして、電池残量、送信頻度、再送回数、及び、電波強度の情報を有する。図６に示すデバイス情報テーブル３１０によると、デバイス３０毎に、送信頻度が異なる。このように、各デバイス３０は、異なる送信頻度にしたがって、異なる種類のセンサデータを送信してもよい。
【００６４】
［デバイス接続先制御情報テーブル］
図７は、図４、図５に示した、デバイス接続先制御情報テーブル３１１の一例を説明する図である。図７の（Ａ）は、自律制御におけるデバイス接続先制御情報テーブル３１１ａの一例を示し、図７の（Ｂ）は、集中制御におけるデバイス接続先制御情報テーブル３１１ｂの一例を示す。
【００６５】
デバイス接続先制御情報テーブル３１１ａ、３１１ｂは、各デバイス３０の接続指定のゲートウェイ２０の項目を有する。接続指定のゲートウェイ２０は、センタサーバ１０が決定した、各デバイス３０の接続先のゲートウェイ２０を示す。
【００６６】
図７の（Ａ）に示すデバイス接続先制御情報テーブル３１１ａは、自律制御を採用する場合のテーブルであるため、接続指定のゲートウェイ２０の項目に情報を有しない。一方、図７の（Ｂ）に示すデバイス接続先制御情報テーブル３１１ｂは、集中制御を採用する場合のテーブルであるため、接続指定のゲートウェイ２０の項目に情報を有する。具体的に、デバイス３０ａの接続指定のゲートウェイ２０は、ゲートウェイ「ＧＷ１」２０−１である。また、デバイス３０ｂの接続指定のゲートウェイ２０はゲートウェイ「ＧＷ２」２０−２、デバイス３０ｃの接続指定のゲートウェイ２０はゲートウェイ「ＧＷ３」２０−３である。
【００６７】
次に、図２１、図２２にしたがって、本実施の形態におけるゲートウェイ２０のハードウェア構成及びソフトウェアブロック図を説明する。
【００６８】
［ゲートウェイのハードウェア構成図］
図２１は、図１〜図３に示したゲートウェイ２０のハードウェア構成図である。図２１に示すゲートウェイ２０は、例えば、ＣＰＵ５０１、メモリ５０２、通信インタフェース部５０３を有する。各部は、バス５０５を介して相互に接続する。メモリ５０２は、ＲＡＭ５２０や不揮発性メモリ５２１等を備える。
【００６９】
ＣＰＵ５０１は、バス５０５を介してメモリ５０２等と接続するとともに、ゲートウェイ２０全体の制御を行う。通信インタフェース部５０３は、アンテナ５０４を介して、デバイス３０やセンタサーバ１０とデータの送受信等を行う。アンテナ５０４は、無線電波による各種データの送受信を行う。なお、通信インタフェース部５０３は、有線通信にしたがって、センタサーバ１０とデータの送受信等を行ってもよい。
【００７０】
メモリ５０２のＲＡＭ５２０は、ＣＰＵ５０１が処理を行うデータ等を記憶する。メモリ５０２の不揮発性メモリ５２１は、ＣＰＵ５０１が実行するＯＳのプログラムを格納する領域（図示せず）を備える。また、不揮発性メモリ５２１は、データ中継プログラム格納領域５１０を備える。不揮発性メモリ５２１は、例えば、不揮発性半導体メモリ等を示す。データ中継プログラム格納領域５１０のデータ中継プログラム（以下、データ中継プログラム５１０と称する）は、ＣＰＵ１０１の実行によって、センサデータの中継処理を実現する。データ中継プログラム５１０の処理の詳細については、図２２にしたがって説明する。
【００７１】
［ゲートウェイのソフトウェアブロック］
図２２は、図２１に示したゲートウェイ２０のソフトウェアブロックの構成図である。図２２に示すように、図２１に示したデータ中継プログラム５１０は、制御モジュール５１１と中継モジュール５１２を有する。
【００７２】
制御モジュール５１１は、中継モジュール５１２の処理を管理する。また、中継モジュール５１２は、デバイス３０からセンタサーバ１０を宛先とするデータを受信すると、受信したデータを無線通信または有線通信にしたがってセンタサーバ１０に送信する。また、中継モジュール５１２は、センタサーバ１０からデバイス３０を宛先とするデータを受信すると、受信したデータを近距離無線通信にしたがってデバイス３０に送信する。
【００７３】
次に、デバイス３０のハードウェア構成、及び、ソフトウェアブロック図を説明する。図８、図９は、図３に示した複数のデバイス３０ａ〜３０ｈのうち、デバイス３０ａの例を示すが、他のデバイス３０ｂ〜３０ｈについても同様である。
【００７４】
［デバイスのハードウェア構成図］
図８は、図１〜図３に示したデバイス３０ａのハードウェア構成図である。図８に示すデバイス３０ａは、例えば、ＣＰＵ３０１、メモリ３０２、センサ３０３、通信インタフェース部３０４、バッテリ３０５を有する。各部は、バス３０６を介して相互に接続する。メモリ３０２は、ＲＡＭ４０１や不揮発性メモリ４０２等を備える。
【００７５】
ＣＰＵ３０１は、バス３０６を介してメモリ３０２等と接続するとともに、デバイス３０ａ全体の制御を行う。センサ３０３は、水位や、温度、振動等の計測情報を検出する検出手段である。センサ３０３は、例えば、水位センサ、温度センサ、振動センサ等である。通信インタフェース部３０４は、アンテナ３０７を介して、ゲートウェイ２０と近距離無線通信にしたがってデータの送受信等を行う。アンテナ３０７は、無線電波による各種データの送受信を行う。バッテリ３０５は、デバイス３０ａを稼働させるための電力を供給する電源手段である。バッテリ３０５は、例えば、乾電池やリチウムイオン等の充電式電池を示すが、これに限定されるものではない。
【００７６】
メモリ３０２のＲＡＭ４０１は、ＣＰＵ３０１が処理を行うデータ等を記憶する。メモリ３０２の不揮発性メモリ４０２は、ＣＰＵ３０１が実行するＯＳのプログラムを格納する領域（図示せず）を備える。また、不揮発性メモリ４０２は、データ送信プログラム格納領域４１０、制御情報格納領域４１１を備える。不揮発性メモリ４０２は、例えば、不揮発性半導体メモリ等を示す。
【００７７】
データ送信プログラム格納領域４１０のデータ送信プログラム（以下、データ送信プログラム４１０と称する）は、ＣＰＵ１０１の実行によって、センサデータの取得処理、及び、送信処理を実現する。データ送信プログラム４１０の処理の詳細については、図９にしたがって説明する。制御情報格納領域４１１（以下、制御情報テーブル４１１と称する）は、電池残量、制御データ（送信頻度、再送回数、電波強度）、及び、接続指定のゲートウェイ２０の情報を記憶する。制御情報テーブル４１１の詳細は、図１０にしたがって後述する。
【００７８】
［デバイスのソフトウェアブロック］
図９は、図８に示したデバイス３０ａのソフトウェアブロックの構成図である。図９において、図８で示したものと同一のものは、同一の記号で示す。図９に示すように、図８に示したデータ送信プログラム４１０は、制御モジュール４２１、センシングモジュール４２２、電池残量取得モジュール４２３、接続先制御切り替えモジュール４２４、接続先切り替えモジュール４２５を有する。各モジュール４２１〜４２５の処理の詳細については、図１７〜図２０にしたがって後述する。
【００７９】
制御モジュール４２１は、各モジュール４２２〜４２５を制御する。また、制御モジュール４２１は、定期的に、センシングモジュール４２２に対するセンサデータの取得指示や、電池残量取得モジュール４２３に対する電池の残量情報の取得指示を行う。また、制御モジュール４２１は、取得したセンサデータ及び残量情報の送信処理を制御し、送信処理の再送回数や残量情報を制御情報テーブル４１１（図８）に記憶する。
【００８０】
センシングモジュール４２２は、制御モジュール４２１の指示に応じて、センサ３０３（図８）が検出したセンサデータを取得する。電池残量取得モジュール４２３は、制御モジュール４２１の指示に応じて、バッテリ３０５（図８）の電池の残量情報（電池残量ともいう）を取得する。
【００８１】
接続先制御切り替えモジュール４２４は、センタサーバ１０による自律制御と集中制御との切り替え指示に応答して、制御情報テーブル４１１を更新する。また、接続先制御切り替えモジュール４２４は、センタサーバ１０からの要求に応じて、制御データをセンタサーバ１０に送信する。接続先切り替えモジュール４２５は、制御情報テーブル４１１を更新するとともに、自律制御の場合に、ゲートウェイ２０を選択する。
【００８２】
［制御情報テーブル］
図１０は、図８、図９に示した制御情報テーブル４１１の一例を説明する図である。図１０の（Ａ）は、自律制御における制御情報テーブル４１１ａの一例を示し、図１０の（Ｂ）は、集中制御における制御情報テーブル４１１ｂの一例を示す。
【００８３】
制御情報テーブル４１１ａ、４１１ｂは、電池残量、送信頻度、再送回数、電波強度の情報及び、接続指定のゲートウェイ２０の項目を有する。各項目は、図６のデバイス情報テーブル３１０及び図７のデバイス接続先制御情報テーブル３１１ａ、３１１ｂで説明したとおりである。
【００８４】
図１０の（Ａ）（Ｂ）に示す制御情報テーブル４１１ａ、４１１ｂは、デバイス３０ａの制御情報テーブル４１１であるため、図６に示したデバイス情報テーブル３１０が含むデバイス３０ａの情報と同様の情報を有する。
【００８５】
また、図１０の（Ａ）に示す、自律制御における制御情報テーブル４１１ａは、図７の（Ａ）で説明したデバイス接続先制御情報テーブル３１１ａと同様にして、接続指定のゲートウェイ２０の項目に情報を有しない。また、図１０の（Ｂ）に示す、集中制御における制御情報テーブル４１１ｂは、図７の（Ｂ）で説明したデバイス接続先制御情報テーブル３１１ｂと同様にして、接続指定のゲートウェイ２０の項目に情報を有する。
【００８６】
次に、図１１にしたがって自律制御から集中制御への切り替え処理の流れを、図１２にしたがって集中制御から自律制御への切り替え処理の流れを説明する。
【００８７】
［自律制御から集中制御への切り替え］
図１１は、自律制御から集中制御への切り替え処理の流れを説明するシーケンス図である。図１１において、図３で示したものと同一のものは、同一の記号で示す。図１１は、複数のデバイス３０ａ〜３０ｈ（デバイス群３０、各デバイス３０ともいう）とセンタサーバ１０と間の信号の送受信の流れにしたがって、自律制御から集中制御への切り替え処理の流れを説明する。また、各デバイス３０はゲートウェイ２０を介してセンタサーバ１０に情報を送信するが、説明を簡易にするために、図１１はゲートウェイ２０の図示を省略する。
【００８８】
デバイス群３０は、１０秒等の所定の時間毎に、センサデータ及び残量情報を取得して送信センサデータを生成し、当該デバイス３０が選択したゲートウェイ（図１１に図示せず）２０を介して、センタサーバ１０に送信する（ａ１）。送信センサデータのフォーマットは、図１４にしたがって後述する。
【００８９】
センタサーバ１０は、デバイス群３０から送信センサデータを受信し、各デバイス３０のセンサデータ及び残量情報を取得する（ａ２）。なお、各デバイス３０は、センタサーバ１０や他の装置（図示せず）から受信した取得指示に応答して、センサデータ及び残量情報を取得し、センタサーバ１０に送信してもよい。
【００９０】
センタサーバ１０は、受信したデバイス群３０の残量情報に基づいて、電池残量の平均（以下、平均電池残量と称する）を算出する（ａ３）。そして、センタサーバ１０は、いずれかのデバイス３０の電池残量が、所定値を下回るか否かを判定し、下回ると判定した場合に自律制御から集中制御に切り替える。所定値は、閾値、または、平均電池残量から所定の度合いを減じた値を示す。つまり、センタサーバ１０は、いずれかのデバイス３０の電池残量が、閾値を下回るか否か、または、平均電池残量から所定の度合い以上、下回るか否かを判定し、下回ると判定した場合に自律制御から集中制御に切り替える。閾値、及び、所定の度合いは、例えば、予め、検証等にしたがって設定される値を示す。
【００９１】
いずれかのデバイス３０の電池残量が閾値を下回る状態は、少なくとも１つのデバイス３０の寿命が短くなることにより、情報処理システム１００の寿命が所定の期間以下に短くなった場合を示す。また、いずれかのデバイス３０の電池残量が、平均電池残量から所定の度合いを減じた値を下回る状態は、少なくとも１つのデバイス３０の電池残量が他のデバイス３０の電池残量に対して乖離して減少している場合を示す。または、デバイス群３０の電池残量の標準偏差が大きい場合を示す。つまり、デバイス間の電池残量に偏りが生じ、情報処理システム１００の寿命が短くなる傾向にあることを示す。
【００９２】
したがって、センタサーバ１０は、情報処理システム１００の寿命が短くなった場合、または、情報処理システム１００の寿命が短くなる傾向にある場合に、自律制御から集中制御に切り替える。これにより、センタサーバ１０は、電池残量の少ないデバイス３０の電力消費を抑制してデバイス間の電池残量を平滑化し、情報処理システム１００の寿命を長期化する。なお、センタサーバ１０は、いずれかのデバイス３０の電池残量が、閾値を下回り、かつ、平均電池残量から所定の度合いを減じた値を下回る場合に、自律制御から集中制御に切り替えてもよい。
【００９３】
本実施の形態における閾値は、「２０％」である。また、本実施の形態における所定の度合いは、「２５％」である。図６で説明したデバイス情報テーブル３１０によると、デバイス３０ａの電池残量は「９０％」、デバイス３０ｂの電池残量は「４０％」、デバイス３０ｃの電池残量は「８０％」である。したがって、いずれのデバイス３０ａ〜３０ｃの電池残量も、閾値「２０％」を下回っていない。一方、デバイス３０ａ〜３０ｃの平均電池残量は、「７０％（＝（９０％＋４０％＋８０％）÷３）」であって、デバイス３０ｂの電池残量「４０％」は、平均電池残量「７０％」から所定の度合い「２５％」を減算した値「４５％」を下回っている。したがって、センタサーバ１０は、集中制御に切り替える。
【００９４】
集中制御に切り替える場合、センタサーバ１０は、集中制御への切り替えを指示する制御情報通知要求を、ゲートウェイ２０を介してデバイス群３０に送信する（ａ４）。制御情報通知要求のフォーマットは、図１４にしたがって後述する。デバイス群３０は、制御情報通知要求の受信に応答して、制御データ（送信頻度、再送回数、電波強度）を取得する（ａ５）。そして、各デバイス３０は、制御データを含む送信制御データを生成し、各デバイス３０が選択したゲートウェイ２０を介して、センタサーバ１０に送信する（ａ６）。送信制御データのフォーマットについては、図１４にしたがって後述する。
【００９５】
センタサーバ１０は、デバイス群の送信制御データを受信すると（ａ７）、デバイス群３０の残量情報と制御データとに基づいて、全てのデバイス３０の接続先のゲートウェイ２０を最適化し、決定する（ａ８）。
【００９６】
本実施の形態のセンタサーバ１０は、電池残量が他のデバイス（第１のデバイス）３０より少ないデバイス（第２のデバイス）３０の接続先を、接続可能なゲートウェイ２０のうち再送回数が少ないゲートウェイ２０に決定する。つまり、センタサーバ１０は、電池残量の少ないデバイス３０に、再送回数が少ないゲートウェイ２０を優先的に割り当てる。これにより、センタサーバ１０は、電力残量の少ないデバイス３０の電力消費を抑制し、デバイス間の電力残量を平滑化できる。全てのデバイス３０の接続先のゲートウェイ２０の最適化処理の詳細は、図１５で後述する。
【００９７】
なお、センタサーバ１０は、電池残量の少ないデバイス３０に、距離が近く電波環境の良いゲートウェイ２０を優先的に割り当ててもよい。または、センタサーバ１０は、電池残量の少ないデバイス３０に、再送回数が少ないゲートウェイ２０か、距離が近く電波環境の良いゲートウェイ２０のいずれかまたは両方を優先的に割り当ててもよい。
【００９８】
センタサーバ１０は、決定した各デバイス３０の接続先のゲートウェイ２０の情報を、デバイス接続先制御情報テーブル３１１（図７）に記憶し、接続先のゲートウェイ２０の情報を含む接続先制御通知をそれぞれデバイス３０に送信する（ａ９）。接続先制御通知のフォーマットについては、図１４にしたがって後述する。各デバイス３０は、接続先制御通知の受信に応答して、接続先制御通知が含む接続指定のゲートウェイ２０の情報を、制御情報テーブル４１１ｂ（図１０）に記憶し、接続先のゲートウェイ２０を変更する（ａ１０）。
【００９９】
このように、本実施の形態におけるセンタサーバ１０は、いずれかのデバイス３０の電池残量が所定値を下回った場合に、自律制御から集中制御に切り替える。これにより、センタサーバ１０は、情報処理システム１００の寿命の終盤に集中制御に切り替え、寿命を長期化することができる。これにより、電池のメンテナンスにかかるコストを抑えることが可能になる。
【０１００】
また、センタサーバ１０は、いずれかのデバイス３０の電池残量が、閾値を下回るか否か、または、平均電池残量から所定の度合い以上、下回るか否かを判定し、下回ると判定した場合に自律制御から集中制御に切り替える。これにより、センタサーバ１０は、情報処理システム１００の寿命が短くなった場合、または、短くなる傾向がある場合を検知し、寿命を長期化することができる。
【０１０１】
また、センタサーバ１０は、いずれかのデバイス３０の電池残量が所定値を下回った場合にのみ、集中制御に切り替える。これにより、寿命の長期化を実現しながら、制御データの収集による通信のコストや電力消費、センタサーバ１０の負荷等の増加度合いを抑制可能になる。また、メンテナンスにかかるコストを抑制できることにより、通信及びメンテナンスのコストを含む、総合的なコストを抑えることが可能になる。
【０１０２】
［集中制御から自律制御への切り替え］
センタサーバ１０は、自律制御から集中制御に切り替えた後、さらに、判定処理を行い、下回っていないと判定した場合、集中制御から自律制御に切り替えてもよい。図１１で説明したとおり、いずれかのデバイス３０の電池残量が、平均電池残量から所定の度合い以上、下回る状態は、デバイス間の電池残量に偏りが生じ、情報処理システム１００の寿命が短くなる傾向にあることを示す。
【０１０３】
したがって、平均電池残量から所定の度合い以上下回ったことにより集中制御に切り替えた場合、集中制御を継続することによってデバイス間の電池残量が平滑化され、いずれのデバイス３０の電池残量も所定値を下回っていない状態に遷移する場合がある。即ち、平均電池残量から所定の度合い以上、下回っていない状態に遷移する場合がある。したがって、センタサーバ１０は、集中制御から自律制御に戻し、集中制御による消費リソース（通信のコストやセンタサーバ１０の負荷、デバイス３０の電力消費等）を抑制する。
【０１０４】
集中制御に基づく消費リソースの増加と、情報処理システム１００の寿命の長期化とは、トレードオフの関係にある。つまり、自律制御に基づくことにより、通信コストやセンタサーバ１０の負荷、制御データの収集に基づくデバイス３０の電力消費等を抑えることができるものの、デバイス間の電池残量の偏りが生じ易く、電池残量に基づく情報処理システム１００の寿命が短くなる。
【０１０５】
一方、集中制御に基づくことにより、情報処理システム１００の寿命を長期化できるものの、通信コストやセンタサーバ１０の負荷、電力消費等が増加する。なお、デバイス３０とゲートウェイ２０との間の無線環境の変化に追従するために、高頻度に、全てのデバイス３０の接続先のゲートウェイ２０を決定する場合がある。これにより、さらに、集中制御に基づく消費リソースが増加する。
【０１０６】
したがって、本実施の形態におけるセンタサーバ１０は、デバイス群３０の電池残量の変化に応じて、さらに、集中制御から自律制御に切り替える。つまり、センタサーバ１０は、電池残量の変化に応じて、自律制御と集中制御とを適宜、切り替える。これにより、センタサーバ１０は、効率的に、情報処理システム１００の寿命と、通信コスト等との最適化を実現できる。
【０１０７】
図１２は、集中制御から自律制御への切り替え処理の流れを説明するシーケンス図である。図１２において、図１１で示したものと同一のものは、同一の記号で示す。図１１と同様にして、図１２はゲートウェイ２０の図示を省略する。
【０１０８】
デバイス群３０は、定期的に、センサデータ及び残量情報を取得して送信センサデータを生成し、センタサーバ１０が決定したゲートウェイ（図１２に図示せず）２０を介して、センタサーバ１０に送信する（ａ１１）。
【０１０９】
センタサーバ１０は、デバイス群３０から送信センサデータを受信し、各デバイス３０のセンサデータ及び残量情報を取得する（ａ１２）。センタサーバ１０は、受信したデバイス群３０の残量情報に基づいて、平均電池残量を算出する（ａ１３）。そして、図１１で説明したとおり、センタサーバ１０は、いずれかのデバイス３０の電池残量が、閾値を下回るか否か、または、平均電池残量から所定の度合い以上下回るか否かを判定し、下回ると判定した場合は継続して、集中制御を採用する。一方、下回っていないと判定した場合、センタサーバ１０は、集中制御から自律制御に切り替える。
【０１１０】
図１３は、集中制御に切り替えた後のデバイス情報テーブル３１０−１を示す図である。図１３に示すデバイス情報テーブル３１０−１は、図６に示したデバイス情報テーブル３１０の、ある期間経過後のテーブルを示す。
【０１１１】
デバイス３０ａの電池残量は、図６のデバイス情報テーブル３１０では「９０％」であるのに対し、図１３のデバイス情報テーブル３１０−１では「７０％」に減少している。また、デバイス３０ｂの電池残量は、図６のデバイス情報テーブル３１０では「４０％」であるのに対し、図１３のデバイス情報テーブル３１０−１では「３０％」に減少している。また、デバイス３０ｃの電池残量は、図６のデバイス情報テーブル３１０では「８０％」であるのに対し、図１３のデバイス情報テーブル３１０−１では「５０％」に減少している。
【０１１２】
図１３のデバイス情報テーブル３１０−１に示すように、集中制御に基づくことにより、電池残量の少ないデバイス３０ｂの電池の減少度合いが小さく、デバイス間の電池残量が平滑化している。したがって、いずれのデバイス３０ａ〜３０ｃの電池残量も、平均電池残量「５０％（＝（７０％＋３０％＋５０％）÷３）」から所定の度合い「２５％」以上、下回っていない。また、いずれのデバイス３０ａ〜３０ｃの電池残量も、閾値「２０％」を下回っていない。したがって、センタサーバ１０は、集中制御から自律制御に切り替える。
【０１１３】
図１２に戻り、自律制御に切り替える場合、センタサーバ１０は、自律制御への切り替えを指示する接続先制御通知を、各デバイス３０に送信する（ａ１４）。接続先制御通知のフォーマットについては、図１４にしたがって後述する。各デバイス３０は、接続先制御通知の受信に応答して、制御情報テーブル４１１ｂ（図１０）に記憶した、接続指定のゲートウェイ２０の情報を削除する（ａ１５）。これにより、各デバイス３０は、デバイス３０が選択したゲートウェイ２０を介して、センサデータ及び残量情報をセンタサーバ１０に送信する。
【０１１４】
なお、センタサーバ１０は、集中制御から自律制御に戻した後、再び、いずれかのデバイス３０の電池残量が所定値を下回った場合には、図１１で説明したように、自律制御から集中制御に再度、切り替える。このように、センタサーバ１０は、情報処理システム１００と、通信のコストやセンタサーバ１０の負荷、電力消費等とを、容易に最適化できる。
【０１１５】
［データのフォーマット］
図１４は、図１１、図１２で説明した、送信センサデータ、制御情報通知要求、送信制御データ、及び、接続先制御通知のフォーマットの一例を示す図である。
【０１１６】
図１４の（Ａ）は、送信センサデータのフォーマットの一例を示す。図１４の（Ａ）に示す送信センサデータは、ヘッダ部（図示せず）に、送信元アドレスＭａ１、宛先アドレスＭａ２、及び、残量情報Ｍａ３を有し、ボディ部（図示せず）にセンサデータＭａ４を有する。送信元アドレスＭａ１はデバイス３０のアドレスを示し、宛先アドレスＭａ２はセンタサーバ１０のアドレスを示す。残量情報Ｍａ３及びセンサデータＭａ４は、前述したとおりである。
【０１１７】
図１４の（Ｂ）は、制御情報通知要求のフォーマットの一例を示す。制御情報通知要求は、ヘッダ部（図示せず）に、送信元アドレスＭｂ１、宛先アドレスＭｂ２を有し、ボディ部（図示せず）に制御情報通知要求指示Ｍｂ３を有する。送信元アドレスＭｂ１はセンタサーバ１０のアドレスを示し、宛先アドレスＭｂ２はデバイス３０のアドレスを示す。制御情報通知要求指示Ｍｂ３は、制御データのセンタサーバ１０への送信指示を示す。
【０１１８】
図１４の（Ｃ）は、送信制御データのフォーマットの一例を示す。送信制御データは、ヘッダ部（図示せず）に、送信元アドレスＭｃ１、宛先アドレスＭｃ２を有し、ボディ部（図示せず）に、送信頻度Ｍｃ３、再送回数Ｍｃ４、電波強度Ｍｃ５を有する。送信元アドレスＭｃ１はデバイス３０のアドレスを示し、宛先アドレスＭｃ２はセンタサーバ１０のアドレスを示す。送信頻度Ｍｃ３、再送回数Ｍｃ４、電波強度Ｍｃ５は、図６で説明したとおりである。
【０１１９】
図１４の（Ｄ）は、接続先制御通知のフォーマットの一例を示す。接続先制御通知は、ヘッダ部（図示せず）に、送信元アドレスＭｄ１、宛先アドレスＭｄ２を有し、ボディ部（図示せず）に接続先制御指示Ｍｄ３を有する。送信元アドレスＭｄ１はセンタサーバ１０のアドレスを示し、宛先アドレスＭｄ２はデバイス３０のアドレスを示す。接続先制御指示Ｍｄ３は、自律制御から集中制御への切り替え時は、接続指定のゲートウェイ２０の情報を有し、集中制御から自律制御への切り替え時は、接続指定のゲートウェイ２０の情報を有しない。
【０１２０】
次に、センタサーバ１０の処理の詳細を、図１５〜図１６のフローチャート図にしたがって説明する。また、デバイス３０の処理の詳細を図１７〜図２０のフローチャート図にしたがって説明する。図１５〜図１６では、図６、図１３に示したデバイス情報テーブル３１０、及び、図７に示したデバイス接続先制御情報テーブル３１１にしたがって説明する。
【０１２１】
［センタサーバ：制御の切り替え処理］
図１５は、図５に示したセンタサーバ１０のデータ収集プログラム２１０の、制御の切り替え判定処理の流れを説明するフローチャート図である。
【０１２２】
Ｓ１１：データ収集プログラム２１０の接続制御切り替えモジュール２２２は、制御モジュール２２１の指示に応答して、デバイス情報テーブル３１０（図６）から、全てのデバイス３０の電池残量を取得する。また、接続制御切り替えモジュール２２２は、全てのデバイス３０の電池残量の平均値を、平均電池残量として算出する。
【０１２３】
Ｓ１２：接続制御切り替えモジュール２２２は、いずれかのデバイス３０の電池残量が所定値を下回ったか否かを判定する。具体的に、接続制御切り替えモジュール２２２は、いずれかのデバイス３０の電池残量が閾値を下回る、または、工程Ｓ１１で算出した平均電池残量から所定の度合い以上下回るか否かを判定する。
【０１２４】
Ｓ１３：工程Ｓ１２の判定の結果、下回ると判定した場合（Ｓ１２のＹｅｓ）、接続制御切り替えモジュール２２２は、全てのデバイス３０に、制御情報通知要求（図１４の（Ｂ））を送信する。接続制御切り替えモジュール２２２は、自律制御を採用していた場合は、自律制御から集中制御に切り替え、既に集中制御を採用している場合は、継続して集中制御を採用する。
【０１２５】
図１１で説明したとおり、図６で説明したデバイス情報テーブル３１０によると、デバイス３０ｂの電池残量「４０％」は、平均電池残量「７０％」から所定の度合い「２５％」を減算した値「４５％」を下回る（Ｓ１２のＹｅｓ）。したがって、接続制御切り替えモジュール２２２は、全てのデバイス３０ａ〜３０ｃに、制御情報通知要求（図１４の（Ｂ））を送信する（Ｓ１３）。各デバイス３０ａ〜３０ｃは、制御情報通知要求の受信に応答して、送信制御データ（図１４の（Ｃ））をセンタサーバ１０に送信する。デバイス３０ａ〜３０ｃの処理の詳細は、図１９のフローチャート図にしたがって後述する。
【０１２６】
Ｓ１４：接続制御切り替えモジュール２２２は、デバイス３０から、送信制御データ（図１４の（Ｃ））を受信し、送信制御データが含む制御データをデバイス情報テーブル３１０（図６）に格納する。そして、接続制御切り替えモジュール２２２は、全てのデバイス３０の接続先のゲートウェイ２０の最適化処理を、接続先最適化モジュール２２３に指示する。
【０１２７】
継続して集中制御を採用する場合、接続制御切り替えモジュール２２２は、再び、全てのデバイス３０の接続先のゲートウェイ２０の最適化処理を、接続先最適化モジュール２２３に指示する。これにより、定期的に、各デバイス３０の接続先のゲートウェイ２０を、電波環境の変化に応じた最適なゲートウェイ２０に更新することが可能になる。
【０１２８】
接続先最適化モジュール２２３は、デバイス情報テーブル３１０（図６）を参照して、各デバイス３０の電池残量及び制御データを取得し、計算処理にしたがって、全てのデバイス３０の接続先のゲートウェイ２０を決定する。接続先最適化モジュール２２３は、電池残量が少ないデバイス３０の接続先のゲートウェイ２０を再送回数の少ないゲートウェイ２０に優先的に決定することにより、全てのデバイス３０の接続先のゲートウェイ２０を最適化する。
【０１２９】
（最適化処理）
具体的に、本実施の形態では、接続先最適化モジュール２２３は、デバイス３０とゲートウェイ２０の組み合わせパターンを複数、抽出する。次に、接続先最適化モジュール２２３は、電池残量、送信頻度、再送回数に基づいて、各組み合わせパターンにおける、各デバイス３０の稼働時間を算出する。そして、接続先最適化モジュール２２３は、電池残量の少ないデバイス３０の稼働時間が長くなる組み合わせパターンを選択し、各デバイス３０の接続先のゲートウェイ２０を決定する。
【０１３０】
再送回数が大きくなるほど、稼働時間は短くなる。したがって、電池残量の少ないデバイス３０の稼働時間が長くなる組み合わせパターンは、電池残量の少ないデバイス３０の再送回数が少なくなる組み合わせパターンを示す。接続先最適化モジュール２２３は、例えば、式１「ｂ／ｐ／（ｔ＋ｒ）」にしたがって、各デバイス３０の稼働時間（秒）を算出する。
【０１３１】
式１における値「ｂ％」は、バッテリ３０５の蓄電可能容量における、１回のセンサデータの送信処理の電力消費の割合を示し、値「ｐ％」は、バッテリ３０５の電池残量を示す。したがって、部分式「ｂ／ｐ」は、電池残量が「０％」になるまでの所要送信回数を示す。また、式１における値「ｔ（回／ｓｅｃ）」は、データの収集頻度を示し、値「ｒ（回／ｓｅｃ）」は、１秒当たりの、送信処理に伴う再送頻度を示す。したがって、部分式「（ｔ＋ｒ）」は、再送を含む、１秒当たりの送信頻度を示す。
【０１３２】
つまり、式１は、電池残量が「０％」になるまでの所要送信回数「ｂ／ｐ」を、１秒当たりの再送を含む送信頻度「（ｔ＋ｒ）」にしたがって除算することにより、電池残量が「０％」になるまでの所要時間、即ち、稼働時間（秒）を算出する式である。
【０１３３】
接続先最適化モジュール２２３は、例えば、式２「同時接続数×（再送回数／最大同時接続数）」にしたがって、１回の送信処理当たりの再送頻度「ｒ（回／ｓｅｃ）」を算出する。式２は、同時接続数が複数の場合における再送頻度の算出式を示し、同時接続数に応じて、再送回数を線形増加させることにより、再送頻度を算出する式である。
【０１３４】
式２における最大同時接続数は、デバイス３０の接続候補のゲートウェイ２０が接続可能なデバイス３０の総数を示す。また、式２における同時接続数は、組み合わせパターンにおける、接続候補のゲートウェイ２０と接続するデバイス３０の総数を示す。再送回数は、最大同時接続数の状況下の再送回数を示す。
【０１３５】
例えば、接続候補のゲートウェイ２０の最大同時接続数が値「１０」、同時接続数が値「３」、再送回数が「５」回の場合、接続先最適化モジュール２２３は、再送頻度「１．５｛＝３×（５／１０）｝（回／ｓｅｃ）」を算出する。再送頻度「１．５（回／ｓｅｃ）」は、１秒当たり１．５回の再送が生じ得ることを示す。また、接続候補のゲートウェイ２０の最大同時接続数が値「１０」、同時接続数が値「８」、再送回数が「５」回の場合、接続先最適化モジュール２２３は、再送頻度「４｛＝８×（５／１０）｝（回／ｓｅｃ）」を算出する。
【０１３６】
なお、接続候補のゲートウェイ２０と未接続であるため再送回数が不明の場合、接続先最適化モジュール２２３は、接続候補のゲートウェイ２０との電波強度が同程度のゲートウェイ２０への再送回数を、再送回数として取得する。
【０１３７】
なお、最適化処理の方法は、上記の方法に限定されるものではない。接続先最適化モジュール２２３は、デバイス間の稼働時間のばらつきが少なくなるように、各デバイス３０の接続先のゲートウェイ２０を決定してもよい。また、接続先最適化モジュール２２３は、稼働時間に基づくことなく、電池残量の少ないデバイス３０に再送回数が少ないゲートウェイ２０を割り当てることによって、最適化処理を行ってもよい。または、接続先最適化モジュール２２３は、電池残量の少ないデバイス３０に再送回数が少なく電波強度の高いゲートウェイ２０を割り当てることによって、最適化処理を行ってもよい。
【０１３８】
Ｓ１５：工程Ｓ１４の後、接続制御切り替えモジュール２２２は、デバイス接続先制御情報テーブル３１１（図７）を参照し、自律制御を採用しているか否かを判定する。接続制御切り替えモジュール２２２は、デバイス接続先制御情報テーブル３１１が接続指定のゲートウェイ２０の情報を有する場合、集中制御を採用している旨、判定し、有していない場合、自律制御を採用している旨、判定する。
【０１３９】
Ｓ１６：集中制御を採用していると判定した場合（Ｓ１５のＮｏ）、接続制御切り替えモジュール２２２は、接続先のゲートウェイ２０が変更になるデバイス３０を抽出する。即ち、接続制御切り替えモジュール２２２は、継続して集中制御を採用する場合、接続指定のゲートウェイ２０が変化したデバイス３０を抽出する。
【０１４０】
Ｓ１７：接続制御切り替えモジュール２２２は、工程Ｓ１６で抽出したデバイス３０を対象として、接続指定のゲートウェイ２０の情報を含む接続先制御通知（図１４の（Ｄ））を送信する。これにより、通信のデータ量を抑制することが可能になる。一方、自律制御を採用していると判定した場合（Ｓ１５のＹｅｓ）、接続制御切り替えモジュール２２２は、全てのデバイス３０を対象として、工程Ｓ１４で決定した、接続指定のゲートウェイ２０の情報を含む接続先制御通知（図１４の（Ｄ））を送信する。
【０１４１】
接続制御切り替えモジュール２２２は、決定した、全てのデバイス３０の接続先のゲートウェイ２０を、デバイス接続先制御情報テーブル３１１ｂ（図７）に更新する。図７の（Ｂ）のデバイス接続先制御情報テーブル３１１ｂによると、電池残量の少ないデバイス３０ｂの接続先は、再送回数の少ないゲートウェイ「ＧＷ２」２０−２である。また、他のデバイス３０ａ、３０ｃの接続先は、ゲートウェイ「ＧＷ２」２０−２以外のゲートウェイ２０である。つまり、デバイス３０ｂのみが、再送回数の少ないゲートウェイ「ＧＷ２」２０−２と接続する。
【０１４２】
これにより、接続制御切り替えモジュール２２２は、デバイス３０ｂの電力消費を抑え、デバイス３０ｂの寿命を長期化できる。つまり、デバイス間の電池残量を平滑化し、情報処理システム１００の寿命を長期化することが可能になる。なお、図７の例では、デバイス３０ｂのみが、再送回数の少ないゲートウェイ「ＧＷ２」２０−２と接続するがこの例に限定されるものではない。例えば、デバイス３０ｂの再送回数が増加しないのであれば、他のデバイス３０ａ、３０ｃがゲートウェイ「ＧＷ２」２０−２と接続してもよい。
【０１４３】
Ｓ１８：工程Ｓ１２の判定によって、いずれのデバイス３０の残量情報も閾値を下回っていない、かつ、平均電池残量から所定の度合い以上下回っていないと判定した場合（Ｓ１２のＮｏ）、接続制御切り替えモジュール２２２は、自律制御を採用する。接続制御切り替えモジュール２２２は、デバイス接続先制御情報テーブル３１１（図７）を参照し、自律制御を採用していたか否かを判定する。
【０１４４】
Ｓ１９：自律制御を採用していなかった場合（Ｓ１８のＮｏ）、即ち、集中制御を採用していた場合、接続制御切り替えモジュール２２２は、集中制御から自律制御に切り替える。図１３で説明したデバイス情報テーブル３１０によると、前述したとおり、いずれのデバイス３０ａ〜３０ｃの電池残量も、閾値「２０％」、及び、平均電池残量「５０％」から所定の度合い「２５％」を減算した値「２５％」を下回っていない（Ｓ１２のＮｏ）。したがって、接続制御切り替えモジュール２２２は、集中制御から自律制御に切り替える旨、判定する。
【０１４５】
具体的に、接続制御切り替えモジュール２２２は、全てのデバイス３０に、接続指定のゲートウェイ２０の情報を有してない接続先制御通知（図１４の（Ｄ））を送信する。各デバイス３０は、接続先制御通知に応答して、図１０に示す制御情報テーブル４１１の接続指定のゲートウェイ２０の情報を削除する。
【０１４６】
一方、自律制御を採用していた場合（Ｓ１８のＹｅｓ）、即ち、自律制御を継続して採用する場合、接続制御切り替えモジュール２２２は、工程Ｓ１９の処理を行わない。
【０１４７】
［センタサーバ：送信センサデータ、送信制御データの受信処理］
図１６は、図５に示したデータ収集プログラム２１０の、送信センサデータ及び送信制御データの受信処理の流れを説明するフローチャート図である。図１６の（Ａ）は、送信センサデータの受信処理を説明するフローチャート図である。
【０１４８】
Ｓ２１：制御モジュール２２１は、送信センサデータ（図１４の（Ａ））を受信すると、ヘッダ部が含む残量情報を取得する。そして、制御モジュール２２１は、残量情報を、送信元のデバイス３０のＭＡＣアドレスを識別情報として、デバイス情報テーブル３１０（図６）に記憶する。
【０１４９】
Ｓ２２：制御モジュール２２１は、送信センサデータのボディ部が含むセンサデータを取得し、アプリケーションプログラム２１１に送信する。アプリケーションプログラム２１１は、センサデータの処理を開始する。アプリケーションプログラム２１１は、センサデータに基づいて分析や集計処理を行う。
【０１５０】
なお、送信センサデータ（図１４の（Ａ））は、ヘッダ部に残量情報を有するが、ボディ部に残量情報を有していてもよい。制御モジュール２２１は、ボディ部が含む残量情報を取得し、残量情報を除外したボディ部のデータをアプリケーションプログラム２１１に送信してもよい。
【０１５１】
図１６の（Ｂ）は、送信制御データの受信処理を説明するフローチャート図である。
【０１５２】
Ｓ３１：制御モジュール２２１は、送信制御データ（図１４の（Ｃ））を受信すると、送信制御データが含む制御データ（送信頻度、再送回数、電波強度）を取得する。そして、制御モジュール２２１は、制御データを、送信元のデバイス３０のＭＡＣアドレスを識別情報として、デバイス情報テーブル３１０（図６）に記憶する。
【０１５３】
［デバイス：センサデータの送信処理］
図１７は、図９に示したデバイス３０のデータ送信プログラム４１０の、センサデータの送信処理の流れを説明するフローチャート図である。
【０１５４】
Ｓ４１：データ送信プログラム４１０の制御モジュール４２１は、送信頻度に応じた所定の時間毎に、センシングモジュール４２２に指示し、センサ３０３が観測したセンサデータを取得する。
【０１５５】
Ｓ４２：データ送信プログラム４１０の制御モジュール４２１は、送信頻度に応じた所定の時間毎に、電池残量取得モジュール４２３に指示し、バッテリ３０５の残量情報を取得する。
【０１５６】
Ｓ４３：制御モジュール４２１は、工程Ｓ４１で取得したセンサデータ、及び、工程Ｓ４２で取得した残量情報を含む、送信センサデータ（図１４の（Ａ））を生成する。
【０１５７】
Ｓ４４：制御モジュール４２１は、生成した送信センサデータを、センタサーバ１０に送信する。制御情報テーブル４１１（図１０）が接続指定のゲートウェイ２０の情報を有する場合、制御モジュール４２１は、接続指定のゲートウェイ２０を介して、送信データをセンタサーバ１０に送信する。一方、制御情報テーブル４１１が接続指定のゲートウェイ２０の情報を有していない場合、制御モジュール４２１は、接続先のゲートウェイ２０を選択し、当該ゲートウェイ２０を介して送信データをセンタサーバ１０に送信する。
【０１５８】
Ｓ４５：制御モジュール４２１は、送信時のＭＡＣ層における再送回数を、制御情報テーブル４１１（図１０）に再送回数として記憶する。また、制御モジュール４２１は、送信頻度を制御情報テーブル４１１に記憶する。
【０１５９】
［デバイス：接続先制御通知の受信時の処理］
図１８は、図９に示したデバイス３０のデータ送信プログラム４１０の、接続先制御通知の受信に応答した制御切り替え処理の流れを説明するフローチャート図である。
【０１６０】
Ｓ５１：制御モジュール４２１は、接続先制御通知（図１４の（Ｄ））の受信に応答して、接続先制御切り替えモジュール４２４に、接続先制御の切り替えを指示する。接続先制御切り替えモジュール４２４は、接続先制御通知の接続先制御指示が、接続先のゲートウェイ２０の情報を有するか否かに基づいて、自律制御への切り替えを指示する通知であるか否かを判定する。
【０１６１】
Ｓ５２：自律制御への切り替えを指示する通知である場合（Ｓ５１のＹｅｓ）、接続先制御切り替えモジュール４２４は、制御情報テーブル４１１（図１０）が有する接続指定のゲートウェイ２０の情報を削除する。
【０１６２】
Ｓ５３：一方、集中制御を指示する通知である場合（Ｓ５１のＮｏ）、接続先制御切り替えモジュール４２４は、接続先制御通知が含む接続指定のゲートウェイ２０の情報を制御情報テーブル４１１（図１０）に記憶（更新）する。
【０１６３】
Ｓ５４：制御情報テーブル４１１の更新に応じて、接続先制御切り替えモジュール４２４は、接続先を更新後の接続指定のゲートウェイ２０に切り替える。
【０１６４】
［デバイス：制御情報通知要求受信時の処理］
図１９は、図９に示したデバイス３０のデータ送信プログラム４１０の、制御情報通知要求受信時の処理の流れを説明するフローチャート図である。
【０１６５】
Ｓ６１：接続先制御切り替えモジュール４２４は、制御情報通知要求（図１４の（Ｂ））の受信に応答して、制御情報テーブル４１１（図１０）を参照し、周囲のゲートウェイ２０との電波強度を取得する。
【０１６６】
Ｓ６２：接続先制御切り替えモジュール４２４は、制御情報テーブル４１１（図１０）を参照し、周囲のゲートウェイ２０への再送回数を取得する。
【０１６７】
Ｓ６３：接続先制御切り替えモジュール４２４は、制御情報テーブル４１１（図１０）を参照し、ゲートウェイ２０へのセンサデータの送信頻度を取得する。
【０１６８】
Ｓ６４：接続先制御切り替えモジュール４２４は、工程Ｓ６１〜Ｓ６３で取得した制御データ（電波強度、再送回数、送信頻度）を含む送信制御データ（図１４の（Ｃ））を生成する。
【０１６９】
Ｓ６５：接続先制御切り替えモジュール４２４は、制御情報テーブル４１１（図１０）が接続指定のゲートウェイ２０の情報を有する場合、当該ゲートウェイ２０の情報を取得し、ゲートウェイ２０の情報を有していない場合、ゲートウェイ２０を選択する。
【０１７０】
Ｓ６６：接続先制御切り替えモジュール４２４は、工程Ｓ６５で取得または選択したゲートウェイ２０を介して、工程Ｓ６４で生成した送信制御データ（図１４の（Ｃ））を、センタサーバ１０に送信する。
【０１７１】
［デバイス：接続先切り替え処理］
図２０は、図９に示したデバイス３０のデータ送信プログラム４１０の、接続先切り替え処理の流れを説明するフローチャート図である。
【０１７２】
Ｓ７１：データ送信プログラム４１０の接続先切り替えモジュール４２５は、定期的に、制御情報テーブル４１１（図１０）が接続指定のゲートウェイ２０の情報を記憶していないかを判定する。
【０１７３】
Ｓ７２：接続先のゲートウェイ２０を記憶していない場合（Ｓ７１のＹｅｓ）、即ち、自律制御に基づく場合、接続先切り替えモジュール４２５は、接続中のゲートウェイ２０との電波環境が悪化したか否かを判定する。例えば、接続先切り替えモジュール４２５は、電波強度に基づいて、電波環境が悪化したか否かを判定する。
【０１７４】
Ｓ７３：接続中のゲートウェイ２０の電波環境が悪化した場合（Ｓ７２のＹｅｓ）、接続先切り替えモジュール４２５は、周囲のゲートウェイ２０との電波強度等の電波環境を測定し、制御情報テーブル４１１ａ（図１０）に記憶する。なお、接続先切り替えモジュール４２５は、電波環境を制御情報テーブル４１１ａに記憶せずに、センタサーバ１０からの制御情報通知要求の受信時に、電波環境を測定してもよい。
【０１７５】
Ｓ７４：接続先切り替えモジュール４２５は、電波環境の良いゲートウェイ２０を接続先のゲートウェイ２０として選択し、接続する。例えば、接続先切り替えモジュール４２５は、電波強度、再送回数のいずれかまたは両方に基づいてゲートウェイ２０を選択する。
【０１７６】
Ｓ７５：工程Ｓ７１の判定の結果、接続指定のゲートウェイ２０の情報を記憶している場合（Ｓ７１のＮｏ）、即ち、集中制御に基づく場合、接続先切り替えモジュール４２５は、周囲のゲートウェイ２０との電波環境を測定する。そして、接続先切り替えモジュール４２５は、測定した電波環境を制御情報テーブル４１１ｂ（図１０）に記憶する。
【０１７７】
なお、工程Ｓ７２の判定の結果、接続中のゲートウェイ２０との電波環境が悪化していない場合（Ｓ７２のＮｏ）、接続先切り替えモジュール４２５は、工程Ｓ７３、Ｓ７４の処理を行わない。
【０１７８】
［他の実施の形態］
図１５のフローチャート図によると、接続制御切り替えモジュール２２２は、いずれかのデバイス３０の電池残量が所定値を下回ると判定する都度（Ｓ１２のＹｅｓ）、全てのデバイス３０の接続先のゲートウェイ２０の最適化処理を行う（Ｓ１３、Ｓ１４）。即ち、接続制御切り替えモジュール２２２は、集中制御を継続する場合、デバイス群３０の送信センサデータを受信する間隔毎に、最適化処理を行う。
【０１７９】
したがって、特に、デバイス群３０の送信センサデータの送信間隔が短い場合、通信コストやセンタサーバ１０の負荷が高くなる。したがって、接続制御切り替えモジュール２２２は、送信センサデータの受信頻度よりも、少ない頻度にしたがって、最適化処理を行ってもよい。例えば、接続制御切り替えモジュール２２２は、下回ると判定した場合に、前回の最適化処理から所定の期間、経過している場合にのみ、各デバイス３０に制御情報通知要求を送信し、最適化処理を行う。
【０１８０】
これにより、集中制御に伴う、通信コストやセンタサーバ１０の負荷等の増加度合いを抑制することが可能になる。したがって、センタサーバ１０は、より効果的に、各デバイス３０の制御データの送信処理によるコストの増加を抑えながら、情報処理システム１００の寿命を長期化することができる。
【０１８１】
なお、本実施の形態は、複数のデバイス３０を経由する経路を含むマルチホップ環境における経路生成にも適用可能である。センタサーバ１０は、経路のうち、ゲートウェイ２０と、当該ゲートウェイ２０と直接、接続するデバイス３０との部分経路の生成処理に、本実施の形態の処理を適用する。これにより、デバイス３０の電力消費を抑えながら、情報処理システム１００を長寿命化する、マルチホップ環境の部分経路を生成可能になる。
【０１８２】
以上の実施の形態をまとめると、次の付記のとおりである。
【０１８３】
（付記１）
複数のデバイスから、前記デバイスが取得した取得情報と前記デバイスの電池の残量を示す残量情報とを、中継装置を経由して受信する処理部と、
受信した前記取得情報と前記残量情報とを記憶する記憶部と、を有し、
前記処理部は、いずれかのデバイスの前記残量情報が所定値を下回る場合に、前記デバイスが選択する中継装置を経由して前記取得情報と前記残量情報とを受信する第１のモードから、前記複数のデバイスから１つまたは複数の前記中継装置との通信状態を示す通信情報をさらに受信し、前記残量情報と前記通信情報とに基づいて前記複数のデバイスの中継装置を決定し、決定した前記中継装置を前記複数のデバイスに通知し、前記取得情報と前記残量情報とを、決定した前記中継装置を経由して受信する、第２のモードに切り替える、
情報処理装置。
【０１８４】
（付記２）
付記１において、
前記処理部は、いずれかのデバイスの前記残量情報が前記所定値を示す閾値を下回るか、または、いずれかのデバイスの前記残量情報が、前記複数のデバイスの残量情報の平均から所定の度合いを減じた前記所定値を下回る場合に、前記第１のモードから前記第２のモードに切り替える、
情報処理装置。
【０１８５】
（付記３）
付記１または２において、
前記処理部は、前記第２のモードに切り替えた後、前記残量情報が前記所定値を下回らなくなった場合に、前記第２のモードから前記第１のモードに切り替える、
情報処理装置。
【０１８６】
（付記４）
付記１乃至３のいずれかにおいて、
前記処理部は前記第２のモードにおいて、前記デバイスから前記中継装置への無線通信の再送回数を含む前記通信情報をさらに受信し、前記残量情報が第１のデバイスより少ない第２のデバイスの前記中継装置を、前記第２のデバイスが接続する複数の前記中継装置のうち前記再送回数が少ない前記中継装置に決定する、
情報処理装置。
【０１８７】
（付記５）
付記１乃至４のいずれかにおいて、
前記処理部は前記第１のモードにおいて、前記デバイスが、１つまたは複数の前記中継装置との無線通信の電波強度、前記デバイスから前記中継装置への無線通信の再送回数のいずれかまたは両方に基づいて選択する前記中継装置を介して、前記取得情報と前記残量情報とを受信する、
情報処理装置。
【０１８８】
（付記６）
付記３において、
前記処理部は、前記第２のモードに切り替えた後、前記残量情報が前記所定値を下回る場合に前記第２のモードの処理を行う、
情報処理装置。
【０１８９】
（付記７）
複数のデバイスから、前記デバイスが取得した取得情報と前記デバイスの電池の残量を示す残量情報とを、前記デバイスが選択する中継装置を経由して受信する第１のモードを実行し、
いずれかのデバイスの前記残量情報が所定値を下回る場合に、前記第１のモードから、前記複数のデバイスから１つまたは複数の前記中継装置との通信状態を示す通信情報をさらに受信し、前記残量情報と前記通信情報とに基づいて前記複数のデバイスの中継装置を決定し、決定した前記中継装置を前記複数のデバイスに通知し、前記取得情報と前記残量情報とを、決定した前記中継装置を経由して受信する、第２のモードに切り替える、
処理をコンピュータに実行させる制御プログラム。
【０１９０】
（付記８）
付記７において、
前記切り替えは、いずれかのデバイスの前記残量情報が前記所定値を示す閾値を下回るか、または、いずれかのデバイスの前記残量情報が、前記複数のデバイスの残量情報の平均から所定の度合いを減じた前記所定値を下回る場合に、前記第１のモードから前記第２のモードに切り替える、
制御プログラム。
【０１９１】
（付記９）
付記７または８において、
前記切り替えは、前記第２のモードに切り替えた後、前記残量情報が前記所定値を下回らなくなった場合に、前記第２のモードから前記第１のモードに切り替える、
制御プログラム。
【０１９２】
（付記１０）
付記７乃至９のいずれかにおいて、
前記切り替えは、前記第２のモードにおいて、前記デバイスから前記中継装置への無線通信の再送回数を含む前記通信情報をさらに受信し、前記残量情報が第１のデバイスより少ない第２のデバイスの前記中継装置を、前記第２のデバイスが接続する複数の前記中継装置のうち前記再送回数が少ない前記中継装置に決定する、
制御プログラム。
【０１９３】
（付記１１）
付記７乃至１０のいずれかにおいて、
前記切り替えは、前記第１のモードにおいて、前記デバイスが、１つまたは複数の前記中継装置との無線通信の電波強度、前記デバイスから前記中継装置への無線通信の再送回数のいずれかまたは両方に基づいて選択する前記中継装置を介して、前記取得情報と前記残量情報とを受信する、
制御プログラム。
【０１９４】
（付記１２）
付記９において、
前記切り替えは、前記第２のモードに切り替えた後、前記残量情報が前記所定値を下回る場合に前記第２のモードの処理を行う、
制御プログラム。
【０１９５】
（付記１３）
処理部が、複数のデバイスから、前記デバイスが取得した取得情報と前記デバイスの電池の残量を示す残量情報とを、前記デバイスが選択する中継装置を経由して受信する第１のモードを実行し、
処理部が、いずれかのデバイスの前記残量情報が所定値を下回る場合に、前記第１のモードから、前記複数のデバイスから１つまたは複数の前記中継装置との通信状態を示す通信情報をさらに受信し、前記残量情報と前記通信情報とに基づいて前記複数のデバイスの中継装置を決定し、決定した前記中継装置を前記複数のデバイスに通知し、前記取得情報と前記残量情報とを、決定した前記中継装置を経由して受信する、第２のモードに切り替える、
情報処理装置の制御方法。
【０１９６】
（付記１４）
付記１３において、
前記切り替えは、いずれかのデバイスの前記残量情報が前記所定値を示す閾値を下回るか、または、いずれかのデバイスの前記残量情報が、前記複数のデバイスの残量情報の平均から所定の度合いを減じた前記所定値を下回る場合に、前記第１のモードから前記第２のモードに切り替える、
情報処理装置の制御方法。
【０１９７】
（付記１５）
付記１３または１４において、
前記切り替えは、前記第２のモードに切り替えた後、前記残量情報が前記所定値を下回らなくなった場合に、前記第２のモードから前記第１のモードに切り替える、
情報処理装置の制御方法。
【０１９８】
（付記１６）
付記１３乃至１５のいずれかにおいて、
前記切り替えは、前記第２のモードにおいて、前記デバイスから前記中継装置への無線通信の再送回数を含む前記通信情報をさらに受信し、前記残量情報が第１のデバイスより少ない第２のデバイスの前記中継装置を、前記第２のデバイスが接続する複数の前記中継装置のうち前記再送回数が少ない前記中継装置に決定する、
情報処理装置の制御方法。
【０１９９】
（付記１７）
付記１３乃至１６のいずれかにおいて、
前記切り替えは、前記第１のモードにおいて、前記デバイスが、１つまたは複数の前記中継装置との無線通信の電波強度、前記デバイスから前記中継装置への無線通信の再送回数のいずれかまたは両方に基づいて選択する前記中継装置を介して、前記取得情報と前記残量情報とを受信する、
情報処理装置の制御方法。
【０２００】
（付記１８）
付記１５において、
前記切り替えは、前記第２のモードに切り替えた後、前記残量情報が前記所定値を下回る場合に前記第２のモードの処理を行う、
情報処理装置の制御方法。
【０２０１】
（付記１９）
取得情報と電池の残量を示す残量情報とをそれぞれ送信する複数のデバイスと、
前記複数のデバイス受信した前記取得情報と前記残量情報を、中継して情報処理装置に送信する複数の中継装置と、
前記取得情報と前記残量情報とを受信する前記情報処理装置と、を有し
前記情報処理装置は、
受信した前記取得情報と前記残量情報とを記憶する記憶部と、
いずれかのデバイスの前記残量情報が所定値を下回る場合に、前記デバイスが選択する中継装置を経由して前記取得情報と前記残量情報とを受信する第１のモードから、前記複数のデバイスから１つまたは複数の前記中継装置との通信状態を示す通信情報をさらに受信し、前記残量情報と前記通信情報とに基づいて前記複数のデバイスの中継装置を決定し、決定した前記中継装置を前記複数のデバイスに通知し、前記取得情報と前記残量情報とを、決定した前記中継装置を経由して受信する、第２のモードに切り替える処理部と、を有する、
情報処理システム。
【０２０２】
（付記２０）
付記１９において、
前記情報処理装置の前記処理部は、前記第２のモードに切り替えた後、前記残量情報が前記所定値を下回らなくなった場合に、前記第２のモードから前記第１のモードに切り替える、
情報処理システム。
【符号の説明】
【０２０３】
１００：情報処理システム、１０：センタサーバ、１０１：ＣＰＵ、１０２：メモリ、１０３：補助記憶装置、１０４：通信インタフェース部、１０５：入力装置、１０６：出力装置、１０８：アンテナ、２０（２０−１〜２０−８）：ゲートウェイ、３０（３０ａ〜３０ｈ）：デバイス、３０１：ＣＰＵ、３０２：メモリ、３０３：センサ、３０４：通信インタフェース部、３０５：バッテリ、３０７：アンテナ
【図１】
0006531426.tif 000002
【図２】
0006531426.tif 000003
【図３】
0006531426.tif 000004
【図４】
0006531426.tif 000005
【図５】
0006531426.tif 000006
【図６】
0006531426.tif 000007
【図７】
0006531426.tif 000008
【図８】
0006531426.tif 000009
【図９】
0006531426.tif 000010
【図１０】
0006531426.tif 000011
【図１１】
0006531426.tif 000012
【図１２】
0006531426.tif 000013
【図１３】
0006531426.tif 000014
【図１４】
0006531426.tif 000015
【図１５】
0006531426.tif 000016
【図１６】
0006531426.tif 000017
【図１７】
0006531426.tif 000018
【図１８】
0006531426.tif 000019
【図１９】
0006531426.tif 000020
【図２０】
0006531426.tif 000021
【図２１】
0006531426.tif 000022
【図２２】
0006531426.tif 000023