図1は、センサシステムの一例を示す構成図である。センサシステムは、制御サーバ1と、複数のゲートウェイ装置(GW装置)3と、複数のセンサ装置(#1〜#9)2を有する。なお、「#1」〜「#9」は、センサ装置2を識別するセンサIDである。また、センサ装置2は、本例では9台設けられているが、台数に限定はない。
制御サーバ1は、センサ制御装置の一例であり、例えばインターネットなどのネットワークに接続されている。制御サーバ1は、GW装置3を介して各センサ装置2と通信する。GW装置3は、ルーティング機能を有し、制御サーバ1と各センサ装置2の間の通信を中継する。
複数のセンサ装置2は、所定の範囲FD内に分散して配置されている。複数のセンサ装置2は、例えば、河川、下水道、道路、橋梁などに設置され、計測処理を実行することにより、その異常を検出する。このため、例えば、河川や下水道の場合、氾濫が検出され、道路や橋梁の場合、老朽化などによる不具合が検出される。
複数のセンサ装置2は、センサ値を順次に計測し制御サーバ1に送信する。より具体的には、複数のセンサ装置2は、一例として、センサID「#1」〜「#9」の昇順に従いセンサ値を計測する。このため、全センサ装置2は、同時に計測を行うことがないので、省電力化が実現される。各センサ装置2は、計測のたびにセンサ値を制御サーバ1に送信し、制御サーバ1は、各センサ装置2から受信したセンサ値に基づき異常を検出する。
センサ装置2の計測の順序は、予め制御サーバ1から設定される。なお、この設定を「スケジュール設定」と表記する。
図2には、センサシステムの異常検出動作の一例が示されている。符号G1は、センサ装置2のスケジュール設定を示す。
複数のセンサ装置2は、センサID「#1」〜「#9」の順に従い、矢印で示される計測タイミングでセンサ値を計測する。制御サーバ1は、各センサ装置(#1〜#9)2にセンシング期間T1〜T9を割り当てる。センシング期間T1〜T9は、センサ装置(#1〜#9)2の計測の所要時間であり、同一であっても互いに異なっていてもよい。制御サーバ1は、各センサ装置2のセンシング期間T1〜T9の合計時間Tpを1周期(以下、「センシング周期」と表記)として、スケジュール設定を行う。
各センサ装置2は、センサ値を計測する計測状態と、制御サーバ1の指示を待ってセンサ値を計測する待機状態と、センサ値の計測を行わないスリープ状態とを有する。センサ装置2の消費電力は、スリープ状態が最も低く、その次に待機状態が低い。制御サーバ1は、スケジュール設定において、各センシング期間T1〜T9における各センサ装置2の状態を、計測状態、待機状態、及びスリープ状態から選択する。なお、計測状態は第1状態の一例であり、待機状態は第2状態の一例であり、及びスリープ状態は第3状態の一例である。
制御サーバ1は、各センシング期間T1〜T9に応じたセンサ装置(#1〜#9)2を計測状態に設定する。例えば、センシング期間T1ではセンサ装置(#1)2が計測状態に設定され、センシング期間T2ではセンサ装置(#2)2が計測状態に設定される。
また、制御サーバ1は、各センシング期間T1〜T9において、計測状態のセンサ装置2と相関関係を有するセンサ装置2を待機状態に設定する。例えば、制御サーバ1は、計測状態のセンサ装置2から一定の距離内にあるセンサ装置2を待機状態に設定する。なお、相関関係は所定の関係の一例である。
一例として、図1に示されるように、センサ装置(#6)2、センサ装置(#8)2、及びセンサ装置(#9)2が、一定の距離の範囲A内に設置されていると仮定する。この場合、制御サーバ1は、センサ装置(#6)2、センサ装置(#8)2、及びセンサ装置(#9)2の1つが計測状態であるとき、他の2つが待機状態となるようにスケジュール設定を行う。このため、例えば、センサ装置(#9)2が計測状態であるとき、センサ装置(#6)2及びセンサ装置(#8)2は、それぞれ、待機状態となる。
再び図2を参照すると、符号G2〜G4は、センサ装置(#9)2、センサ装置(#6)2、及びセンサ装置(#8)2のセンサ値の時刻に対する変化をそれぞれ示す。制御サーバ1は、各センサ装置2から受信したセンサ値を所定の閾値TH1と比較し、その比較結果に基づき異常を検出する。
より具体的には、制御サーバ1は、センサ値>TH1が満たされる場合、異常を検出する。ここで、センサ値>TH1は所定の第1条件の一例である。つまり、制御サーバ1は、センサ値が所定の第1条件を満たす場合、異常を検出する。
しかし、各センサ装置2は、順次にセンサ値を計測するため、仮に閾値TH1だけで異常検出を行うとすると、特定のセンサ装置2のセンシング対象範囲内だけに異常が発生した場合、異常を検出するまでの所要時間が、各センサ装置2が継続的にセンシングを行う場合より長くなる。例えば、各センシング期間T1〜T9を10秒とすると、センシング周期Tpは90秒(=10秒×9個)となる。このため、あるセンサ装置2の計測の直後に、そのセンサ装置2のセンシング対象範囲内だけに異常が発生した場合、異常を検出するまでには約90秒を要する。
そこで、制御サーバ1は、閾値TH1だけでなく、閾値TH1より小さい閾値TH2を用いて異常を予測する。より具体的には、制御サーバ1は、異常が予測された場合、センサ値の送信元のセンサ装置2と相関関係を有する他のセンサ装置2に計測を指示する。
例えば、符号G2で示されるように、計測状態のセンサ装置(#9)2が時刻Tsに計測したセンサ値S9が、閾値TH2より大きく閾値TH1より小さい場合、制御サーバ1は異常を予測する。そして、制御サーバ1は、センサ装置(#9)2から一定の距離の範囲A内にあるセンサ装置(#6)2及びセンサ装置(#8)2に計測を指示する。
センサ装置(#6)2及びセンサ装置(#8)2は、上述したように、センサ装置(#9)2が計測状態であるとき、待機状態である。このため、センサ装置(#8)2は、符号G4で示されるように、制御サーバ1の指示に従い、時刻Ts’’においてセンサ値S8を計測する。しかし、センサ値S8は、閾値TH2より大きいが、閾値TH1より小さいため、制御サーバ1は異常を検出しない。
一方、センサ装置(#6)2は、符号G3で示されるように、制御サーバ1の指示に従い、時刻Ts’においてセンサ値S6を計測する。センサ値S6は、閾値TH1より大きいため、制御サーバ1は異常を検出する。
このように、制御サーバ1は、センサ装置2から受信したセンサ値が、閾値TH1以下である場合、センサ値と閾値TH2を比較する。そして、制御サーバ1は、その比較結果に応じ、センサ値の送信元のセンサ装置2と相関関係を有するセンサ装置に計測を指示する。
より具体的には、制御サーバ1は、センサ値≦TH1の場合、センサ値>TH2が満たされるとき、センサ装置2に計測を指示する。ここで、TH1≧センサ値>TH2は、上記の第1条件より緩和された第2条件の一例である。すなわち、制御サーバ1は、センサ値が、第1条件を満たさず、第2条件を満たす場合、センサ値の送信元のセンサ装置と相関関係を有するセンサ装置2にセンサ値の計測を指示する。
このため、制御サーバ1は、センサ値が第1条件を満たさないために異常を検出できない場合、センサ値が、第1条件より緩い第2条件を満たせば、異常を予測することができる。このとき、制御サーバ1は、センサ値の送信元のセンサ装置2と相関関係を有するセンサ装置2にセンサ値の計測を指示するため、そのセンサ装置2から受信したセンサ値に基づき異常を検知することができる。
したがって、制御サーバ1は、センサ装置2の計測の順序を待たずに、迅速に異常を検知することができる。上記の例の場合、制御サーバ1は、センサ装置(#6)2のセンシング期間T6の到来を待たずに、センサ装置(#6)2に計測を指示するため、迅速に異常を検知することができる。よって、異常検出の所要時間が短縮される。
また、制御サーバ1は、上記の例のように、センサ値の送信元のセンサ装置(#9)2から所定の距離内にあるセンサ装置(#6,#8)2にセンサ値の計測を指示する。所定の距離内にあるセンサ装置2は、センシング対象の異常が発生した場合、少なからずセンサ値に影響が出るため、制御サーバ1は、効果的に異常を検知することができる。なお、制御サーバ1は、計測の指示対象のセンサ装置2を、距離に限らず、センサ値の実測値やシミュレーション値などに基づき決定してもよい。
なお、本例において、センサ値は、異常の発生に伴い増加するが、これに限定されず、異常の発生に伴い低下するものであってもよい。このとき、制御サーバ1は、第1条件であるセンサ値<TH1が満たされるとき、異常を検出する。また、制御サーバ1は、閾値TH1より大きい閾値TH2を用いて、第2条件であるTH1≦センサ値<TH2が満たされるとき、センサ値の送信元のセンサ装置2と相関関係を有するセンサ装置2にセンサ値の計測を指示する。これにより、上述した内容と同様の効果が得られる。
次に、センサ装置2及び制御サーバ1の構成を説明する。
図3は、センサ装置2の一例を示す構成図である。センサ装置2は、CPU(Central Processing Unit)20、ROM(Read Only Memory)21、RAM(Random Access Memory)22、不揮発性メモリ23、センサデバイス25、バッテリインターフェース部(バッテリINF部)26、バッテリ27、及び通信ポート24を有する。CPU20は、互いに信号の入出力ができるように、ROM21、RAM22、不揮発性メモリ23、通信ポート24、センサデバイス25、及びバッテリINF部26と、データバス29を介して接続されている。
バッテリ27は、センサ装置2に給電を行う。バッテリINF部26は、バッテリ27に接続されたアナログ回路などを含み、バッテリ27の残量を検出する。センサデバイス25は、センサ値を計測する。
ROM21は、CPU20を駆動するプログラムが格納されている。RAM22は、CPU20のワーキングメモリとして機能する。通信ポート24は、例えばPHY(Physical Layer)/MAC(Media Access Control)デバイスであり、制御サーバ1との間でそれぞれパケットを送受信する。なお、パケットとしてIP(Internet Protocol)パケットが挙げられるが、これに限定されない。
CPU20は、ROM21からプログラムを読み込むと、機能として、制御部200、状態管理部201、計測部202、バッテリ監視部203、及び通信処理部204が形成される。また、不揮発性メモリ23には、スケジュール設定情報SCが記憶されている。
制御部200は、センサ装置2の全体的な動作を制御する。状態管理部201、計測部202、バッテリ監視部203、及び通信処理部204は、制御部200の制御に従い各種の処理を実行する。状態管理部201は、スケジュール設定情報SCに従いセンサ装置2の状態を管理する。なお、スケジュール設定情報SCは、制御サーバ1から送信される。
より具体的には、状態管理部201は、センサ装置2の状態を、計測状態、待機状態、及びスリープ状態の間で切り替える。計測状態の場合、計測部202は、センサデバイス25によりセンサ値を計測する。待機状態の場合、センサデバイス25への給電は停止制御される。また、計測部202は、待機状態の場合、制御サーバ1からの計測の指示を受信したとき、センサデバイス25への給電を再開し、センサデバイス25によりセンサ値を計測する。
また、スリープ状態の場合、センサ装置2のほとんどの部分への給電が停止制御される。このため、上述したように、センサ装置2の消費電力は、スリープ状態が最も低く、その次に待機状態が低い。
計測部202は、センサデバイス25からセンサ値を取得し、制御部200に出力する。制御部200は、通信処理部204にセンサ値を出力する。
通信処理部204は、通信ポート24を介した通信を処理する。通信処理部204は、計測部202が取得したセンサ値を制御サーバ1に送信し、制御サーバ1から計測の指示を受信する。通信処理部204は、計測の指示を制御部200に出力する。制御部200は、計測の指示を計測部202に出力する。計測部202は、計測の指示に従い、センサデバイス25からセンサ値を取得する。
バッテリ監視部203は、バッテリINF部26によりバッテリ27の残量を監視する。バッテリ監視部203は、バッテリINF部26から残量を取得して、残量が所定値以下である場合、例えば警報を外部に出力する。
図4は、制御サーバ1の一例を示す構成図である。制御サーバ1は、CPU10、ROM11、RAM12、HDD(Hard Disk Drive)13、複数の通信ポート14、入力装置15、及び出力装置16を有する。CPU10は、互いに信号の入出力ができるように、ROM11、RAM12、HDD13、複数の通信ポート14、入力装置15、及び出力装置16と、データバス19を介して接続されている。
入力装置15は、制御サーバ1に情報を入力する装置である。入力装置15としては、例えばキーボード、マウス、及びタッチパネルなどが挙げられる。入力装置15は、入力された情報を、データバス19を介しCPU10に出力する。
出力装置16は、制御サーバ1の情報を出力する装置である。出力装置16としては、例えばディスプレイ、タッチパネル、及びプリンタなどが挙げられる。出力装置16は、CPU10からデータバス19を介して情報を取得して出力する。
ROM11は、CPU10を駆動するプログラムが格納されている。RAM12は、CPU10のワーキングメモリとして機能する。通信ポート14は、例えばPHY/MACデバイスであり、複数のセンサ装置2との間でそれぞれパケットを送受信する。
CPU10は、ROM11からプログラムを読み込むと、機能として、制御部100、通信処理部101、センサ値処理部102、相関情報生成部103、スケジュール管理部104、及び閾値調整部105が形成される。また、HDD13には、センサ位置情報130、センサ相関情報131、センサ状態テーブル132、センサ履歴情報133、及びスケジュール設定情報SCが記憶されている。
制御部100は、制御サーバ1の全体的な動作を制御する。通信処理部101、センサ値処理部102、相関情報生成部103、スケジュール管理部104、及び閾値調整部105は、制御部100の制御に従い各種の処理を実行する。
通信処理部101は、通信ポート14を介した通信を処理する。通信処理部101は、受信部の一例であり、複数のセンサ装置2が順次に計測し送信したセンサ値を受信する。通信処理部101は、受信したセンサ値を制御部100に出力する。制御部100は、センサ値をセンサ値処理部102に出力する。
センサ値処理部102は、センサ値が上記の第1条件を満たす場合、異常を検出する。より具体的には、センサ値処理部102は、センサ値>TH1の場合、異常を検出する。センサ値処理部102は、異常を検出したとき、その旨を制御部100に通知する。制御部100は、異常検出の通知を受けると、例えば、通信処理部101から警報を外部に出力する。
センサ値処理部102は、センサ値が第1条件を満たさず、上記の第2条件を満たす場合、センサ値の送信元のセンサ装置2と相関関係を有するセンサ装置2にセンサ値の計測を指示する。より具体的には、センサ値処理部102は、TH1≧センサ値>TH2の場合、センサ値の送信元のセンサ装置2と相関関係を有するセンサ装置2にセンサ値の計測を指示する。このため、制御サーバ1は、上述したように、異常検出の所要時間を短縮することができる。
また、センサ値処理部102は、センサ値の送信元のセンサ装置2から所定の距離内にあるセンサ装置2にセンサ値の計測を指示する。このため、制御サーバ1は、効果的に異常を検出することができる。
相関情報生成部103は、センサ位置情報130に基づきセンサ相関情報131を生成する。センサ位置情報130は、例えば、図1に示されるような各センサ装置2の位置を示す情報である。センサ位置情報130としては、各センサ装置2の緯度及び経度が挙げられるが、これに限定されない。
相関情報生成部103は、センサ位置情報130から各センサ装置2の間の距離を算出し、距離に基づいて各センサ装置2の間の相関関係の有無を判定する。相関情報生成部103は、例えば、2つのセンサ装置2の間の距離が所定値以下の場合、その2つのセンサ装置2の間には相関関係があると判定し、センサ相関情報131を生成する。
図5には、センサ相関情報131の一例が示されている。センサ相関情報131は、各センサ装置2の間の相関関係を示す。
センサ相関情報131は、各センサ装置2のセンサID「#1」〜「#9」に対応する相関センサIDを示す。相関センサIDは、センサ装置2と相関関係を有する他のセンサ装置2のセンサIDである。例えば、センサ装置(#1)2は、センサ装置(#2)2及びセンサ装置(#4)2と相関関係を有し、センサ装置(#2)2は、センサ装置(#1)2、センサ装置(#3)2、及びセンサ装置(#5)2と相関関係を有する。
スケジュール管理部104は、センサ相関情報131に基づき、スケジュール設定情報SCを生成する。スケジュール設定情報SCは、後述するように、センシング期間T1〜T9ごとの各センサ装置2の状態(計測状態、待機状態、またはスリープ状態)を示す。
また、スケジュール管理部104は、設定処理部の一例であり、スケジュール設定情報SCに基づき複数のセンサ装置2に対し設定を行う。スケジュール設定情報SCは、複数のセンサ装置2がセンシング期間T1〜T9ごとに順次に計測状態となり、計測状態のセンサ装置2と相関関係を有するセンサ装置2が待機状態となり、他のセンサ装置2がスリープ状態となるように生成される。
図6は、スケジューリング処理の一例を示すフローチャートである。本処理は、制御サーバ1の起動時、または周期的に実行される。
スケジュール管理部104は、変数i(i:1,2,3,・・・9)を1にセットする(ステップSt11)。次に、スケジュール管理部104は、センサ装置2の計測の順番に基づき、複数のセンサ装置(#1〜#9)2から1つを選択する(ステップSt12)。なお、計測の順番は、例えば、入力装置15から入力された情報、または通信ポート14から受信した情報から決定される。
次に、スケジュール管理部104は、センシング期間Tiにおけるセンサ装置(#i)2の状態を計測状態(記号「MR」と表記)とする(ステップSt13)。次に、スケジュール管理部104は、センサ相関情報131に基づき、センサ装置(#i)と相関関係を有する他のセンサ装置2の相関センサIDを検索する(ステップSt14)。例えば、変数i=1の場合、図5の例では相関センサIDとして「#2」,「#4」が検索される。
次に、スケジュール管理部104は、センシング期間Tiにおける相関センサIDに該当するセンサ装置2の状態を待機状態(記号「WT」と表記)とする(ステップSt15)。次に、スケジュール管理部104は、センシング期間Tiにおける他のセンサ装置2の状態をスリープ状態(記号「SL」と表記)とする(ステップSt16)。
次に、スケジュール管理部104は、変数i=9が成立するか否かを判定する(ステップSt17)。スケジュール管理部104は、変数i=9が成立する場合(ステップSt17のYes)、処理を終了する。また、スケジュール管理部104は、変数i=9が成立しない場合(ステップSt17のNo)、変数iに1を加算し(ステップSt18)、再びステップSt12の処理を実行する。このようにして、スケジューリング処理は実行される。
図7には、スケジュール設定の一例が示されている。スケジュール設定は、上記のスケジューリング処理により生成される。
スケジュール設定では、センシング期間T1〜T9ごとに各センサ装置(#1〜#9)2の状態が定められている。例えば、センシング期間T1において、センサ装置(#1)2は計測状態(MR)であり、センサ装置(#1)2と相関関係を有するセンサ装置(#2)2及びセンサ装置(#4)2は待機状態であり、他のセンサ装置(#3、#5〜#9)2はスリープ状態である。
また、センシング期間T2において、センサ装置(#2)2は計測状態(MR)であり、センサ装置(#2)2と相関関係を有するセンサ装置(#1)2、センサ装置(#3)2、及びセンサ装置(#5)2は待機状態であり、他のセンサ装置(#4、#6〜#9)2はスリープ状態である。
このように、スケジュール管理部104は、複数のセンサ装置2がセンシング期間T1〜T9ごとに順次に計測状態となり、計測状態のセンサ装置2と相関関係を有するセンサ装置2が待機状態となり、他のセンサ装置2がスリープ状態となるように、スケジュールを設定する。
したがって、各センシング期間T1〜T9において1つのセンサ装置2だけが計測状態となり、他のセンサ装置2は待機状態またはスリープ状態となるため、省電力化が可能となる。例えば、センサ装置2の個数を、一般化してN個とし、各センサ装置2と相関関係を有するセンサ装置2の個数を全体の1/r(r>1)とし、待機状態の消費電力が計測状態の消費電力の1/p(p>1)とする。この場合、全センサ装置2の消費電力は、各センサ装置2が継続的にセンシングを行う場合の(1/N+1/pr)倍となる。このため、pが十分に大きければ、効果的に省電力化することが可能である。したがって、本実施例によると、異常検出の所要時間の短縮と省電力化の両方が可能となる。
図8は、スケジュール設定処理の一例を示すシーケンス図である。スケジュール管理部104は、スケジューリング処理を行うと、図7に例示されるスケジュール設定からスケジュール設定情報SCを生成する。
スケジュール管理部104は、センサ装置2ごとにスケジュール設定情報SCを送信する。スケジュール設定情報SCには、例えば、符号Xで示されるスクリプトコードが含まれる。センサ装置2の状態管理部201は、スクリプトコードを受信すると、「start time」である時刻「12:00:00」に状態制御処理を起動し、「schedule」で示される動作を実行する。「schedule」において、「sensing」は、「start time」の時刻を基準とする計測状態の開始時刻、「wait」は、「start time」の時刻を基準とする待機状態の開始時刻である。
このため、状態管理部201は、センサ装置2を時刻「12:00:00」に計測状態とし、計測が終了すると、その30秒後に待機状態とする。次に、状態管理部201は、センサ装置2を30秒後に待機状態とし、さらにその30秒後に待機状態とする。最後に、状態管理部201は、「period」が示す時間「270」に基づき、センサ装置2を120秒後(=270−150)に計測状態とする。この処理は、スケジュール設定情報SCが更新されるまで繰り返される。なお、「wait time」は、待機状態の待機時間を示す。
再び図4を参照すると、スケジュール管理部104は、スケジュール設定情報SCからセンサ状態テーブル132を生成する。センサ状態テーブル132は、各センサ装置2が計測状態であるときに待機状態となるセンサ装置2のセンサID(以下、「待機センサID」と表記)を示す。
図9には、センサ状態テーブル132の一例が示されている。センサ状態テーブル132には、各センサ装置2のセンサIDに対応する待機センサIDが登録されている。例えば、センサ装置(#1)2が計測状態であるとき、センサ装置(#2)2及びセンサ装置(#4)2は待機状態となる。
再び図4を参照すると、センサ値処理部102は、TH1≧センサ値>TH2の場合、センサ状態テーブル132を参照して、待機状態のセンサ装置2を検索し、そのセンサ装置2に計測を指示する。例えば、センサ値処理部102は、センサ装置(#1)2から受信したセンサ値が、TH1≧センサ値>TH2を満たす場合、センサ状態テーブル132から検索されたセンサ装置(#2)2及びセンサ装置(#4)2に計測を指示する。
また、センサ値処理部102は、各センサ装置2から受信したセンサ値の第1条件及び第2条件の判定結果を、判定時刻とともにセンサ履歴情報133として、HDD13に記録する。閾値調整部105は、後述するように、センサ履歴情報133に基づいて閾値TH2を調整する。
図10は、センサ値の処理の一例を示すフローチャートである。本処理は、例えばセンシング期間T1〜T9ごとに実行される。
センサ値処理部102は、センサ装置2からセンサ値を受信したか否かを判定する(ステップSt1)。センサ値処理部102は、センサ値を受信していない場合(ステップSt1のNo)、処理を終了する。センサ値処理部102は、センサ値を受信した場合(ステップSt1のYes)、センサ値と閾値TH1を比較する(ステップSt2)。
センサ値処理部102は、センサ値>TH1の場合(ステップSt2のYes)、つまり、センサ値が第1条件を満たす場合、異常を検出する(ステップSt3)。また、センサ値≦TH1の場合(ステップSt2のNo)、つまり、センサ値が第1条件を満たさない場合、センサ値と閾値TH2を比較する(ステップSt4)。
センサ値処理部102は、センサ値≦TH2の場合(ステップSt4のNo)、つまり、センサ値が第2条件を満たさない場合、処理を終了する。センサ値処理部102は、センサ値>TH2の場合(ステップSt4のYes)、つまり、センサ値が第2条件を満たす場合、センサ状態テーブル132から待機センサIDを検索する(ステップSt5)。次に、センサ値処理部102は、待機センサIDのセンサ装置2に計測を指示する(ステップSt6)。
次に、センサ値処理部102は、計測を指示したセンサ装置2から受信したセンサ値を閾値TH1と比較する(ステップSt7)。センサ値処理部102は、センサ値>TH1の場合(ステップSt7のYes)、異常を検出する(ステップSt8)。また、センサ値≦TH1の場合(ステップSt7のNo)、処理を終了する。このようにして、センサ値の処理は実行される。
図11は、センサ装置2の計測処理の一例を示すフローチャートである。本処理は、例えば周期的に実行される。
計測部202は、自装置の状態が計測状態であるか否かを判定する(ステップSt21)。計測部202は、自装置の状態が計測状態である場合(ステップSt21のYes)、センサデバイス25によりセンサ値を計測する(ステップSt22)。次に、計測部202は、通信処理部204によりセンサ値を制御サーバ1に送信する(ステップSt23)。
計測部202は、自装置の状態が計測状態ではない場合(ステップSt21のNo)、自装置の状態が待機状態であるか否かを判定する(ステップSt24)。計測部202は、自装置の状態がスリープ状態である場合(ステップSt24のNo)、処理を終了する。
計測部202は、自装置の状態が待機状態である場合(ステップSt24のYes)、制御サーバ1から計測の指示を受信したか否かを判定する(ステップSt25)。計測部202は、計測の指示を受信していない場合(ステップSt25のNo)、処理を終了する。また、計測部202は、計測の指示を受信した場合(ステップSt25のYes)、センサ値を計測し(ステップSt22)、制御サーバ1に送信する(ステップSt23)。このようにして、センサ装置2は計測処理を実行する。
図12は、計測処理の一例を示すシーケンス図である。図12では、センサ装置(#1)2のセンシング期間T1を例に挙げるが、他のセンサ装置(#2〜#9)2のセンシング期間T2〜T9の場合も同様の動作が行われる。
センシング期間T1において、センサ装置(#1)2は計測状態であり(符号SQ1)、センサ装置(#2)2及びセンサ装置(#4)2は待機状態である(符号SQ2,SQ3)。センサ装置(#1)2は、センサ値S1を計測し(符号SQ4)、制御サーバ1に送信する。
制御サーバ1は、センサ装置(#1)2から受信したセンサ値S1が、第2条件であるTH1≧S1>TH2を満たすと判定する(符号SQ5)。制御サーバ1は、センサ状態テーブル132から検索した待機センサID「#2」,「#4」に基づき、センサ装置(#2)2及びセンサ装置(#4)2に計測を指示する。
センサ装置(#2)2は、指示に従いセンサ値S2を計測して制御サーバ1に送信する(符号SQ7)。センサ装置(#4)2は、指示に従いセンサ値S4を計測して制御サーバ1に送信する(符号SQ6)。
制御サーバ1は、センサ装置(#4)2から受信したセンサ値S4が閾値TH1以下であると判定し(符号SQ8)、センサ装置(#2)2から受信したセンサ値S2が閾値TH1より大きいと判定する(符号SQ9)。このため、制御サーバ1は、センサ値S2に基づき異常を検出する(符号SQ10)。
また、閾値調整部105は、相関関係を有する2以上のセンサ装置2からそれぞれ受信したセンサ値の第1条件及び第2条件の成否に基づき、第2条件を調整する。より具体的には、閾値調整部105は、センサ値と閾値TH1,TH2の比較結果に基づき、閾値TH2を調整する。
図13は、閾値調整部105の処理の一例を示すフローチャートである。本処理は、例えば周期的に実行される。
閾値調整部105は、センサ値と閾値TH1を比較する(ステップSt31)。閾値調整部105は、センサ値>TH1の場合(ステップSt31のYes)、センサ相関情報131から、センサ値の送信元のセンサ装置2と相関センサIDをセンサ相関情報131から検索する(ステップSt32)。
次に、閾値調整部105は、例えば、現在のセンシング期間T1〜T9以前の周期Tpの範囲内で、相関センサIDに対応するセンサ履歴情報133を検索する(ステップSt33)。次に、閾値調整部105は、検索結果に基づき、該当するセンサ値>TH2の履歴の有無を判定する(ステップSt34)。閾値調整部105は、センサ値>TH2の履歴がある場合(ステップSt34のYes)、処理を終了する。
また、閾値調整部105は、センサ値>TH2の履歴がない場合(ステップSt34のNo)、閾値TH2を所定値だけ低下させる(ステップSt35)。このため、センサ値>TH1のセンサ装置2と相関関係を有するセンサ装置2のセンサ値が、センサ値>TH1のセンサ装置2のセンシング期間T1〜T9以前のセンシング期間T1〜T9において、閾値TH2より大きくならない場合、閾値TH2が低下する。つまり、閾値調整部105は、センサ値が第1条件を満たすにも関わらず、相関関係を有するセンサ装置2のセンサ値が第2条件を満たさない場合、第2条件が満たされるように閾値TH2が低下する。
また、閾値調整部105は、センサ値≦TH1の場合(ステップSt31のNo)、センサ値を閾値TH2と比較する(ステップSt36)。閾値調整部105は、センサ値≦TH2の場合(ステップSt36のNo)、処理を終了する。次に、閾値調整部105は、センサ値>TH2の場合(ステップSt36のYes)、センサ相関情報131から、センサ値の送信元のセンサ装置2と相関センサIDをセンサ相関情報131から検索する(ステップSt37)。
次に、閾値調整部105は、相関センサIDのセンサ装置2からセンサ値を受信する(ステップSt38)。次に、閾値調整部105は、センサ値を閾値TH1と比較する(ステップSt39)。閾値調整部105は、センサ値>TH1の場合(ステップSt39のYes)、処理を終了する。
また、閾値調整部105は、センサ値≦TH1の場合(ステップSt39のNo)、変数jに1を加算する(ステップSt40)。なお、変数jは、センサ装置2の起動時に0に初期化されている。
次に、閾値調整部105は、変数jを所定値jmaxと比較する(ステップSt41)。閾値調整部105は、j≦jmaxの場合(ステップSt41のNo)、処理を終了する。閾値調整部105は、j>jmaxの場合(ステップSt41のYes)、閾値TH2を所定値だけ増加させ(ステップSt42)、変数jを0とする(ステップSt43)。
このため、センサ値>TH2のセンサ装置2と相関関係を有するセンサ装置2のセンサ値が、センサ値>TH2のセンサ装置2のセンシング期間T1〜T9以後のセンシング期間T1〜T9において、閾値TH1より大きくならない場合がjmax回繰り返されると、閾値TH2が増加する。つまり、閾値調整部105は、センサ値が第2条件を満たすにも関わらず、相関関係を有するセンサ装置2のセンサ値が第1条件を満たさない場合、第2条件が満たされないように閾値TH2が増加する。このようにして、閾値調整部105は、処理を実行する。
これまで述べた実施例において、制御サーバ1は、2つの閾値TH1,TH2を用いて異常を検出したが、これに限定されない。制御サーバ1は、閾値TH2より小さい閾値TH3をさらに用いて異常を検出することもできる。
図14A及び図14Bには、センサシステムの異常検出動作の他例が示されている。本例では、センサ装置(#9)2、センサ装置(#9)2と相関関係を有するセンサ装置(#6,#8)2、及びそのセンサ装置(#6,#8)2と相関関係を有するセンサ装置(#3,#5,#7)を挙げて説明する。図14A及び図14Bにおいて、符号G5〜G9は、センサ装置(#9)2、センサ装置(#6,#8)2、及びセンサ装置(#3,#5,#7)2のセンサ値の時刻に対する変化をそれぞれ示す。
図14Aに示されるように、センサ値処理部102は、TH2≧センサ値>TH3の場合、センサ値の送信元のセンサ装置(#9)2と相関関係を有するセンサ装置(#6、#8)2に計測を指示する。また、図14Bに示されるように、センサ値処理部102は、TH1≧センサ値>TH2の場合、センサ値の送信元のセンサ装置(#9)2と相関関係を有するセンサ装置(#6,#8)2、及びそのセンサ装置(#6,#8)2と相関関係を有するセンサ装置(#3,#5,#7)に計測を指示する。ここで、TH2≧センサ値>TH3は、上記の第2条件より緩和された第3条件の一例である。
すなわち、センサ値処理部102は、センサ値が第1条件及び第2条件を満たさず、第3条件を満たす場合、センサ値の送信元のセンサ装置(#9)2と相関関係を有するセンサ装置(#6、#8)2に計測を指示する。また、センサ値処理部102は、センサ値が第1条件を満たさず、第2条件を満たす場合、センサ値の送信元のセンサ装置(#9)2と相関関係を有するセンサ装置(#6,#8)2、及びそのセンサ装置(#6,#8)2と相関関係を有するセンサ装置(#3,#5,#7)に計測を指示する。
センサ装置(#9)2は、符号G5で示されるように、時刻Tsにおいてセンサ値を検出し、制御サーバ1に送信する。センサ値処理部102は、センサ装置(#9)2から受信したセンサ値がTH2≧センサ値>TH3を満たすため、異常を予測して、センサ装置(#6,#8)2に計測を指示する。
センサ装置(#6,#8)2は、計測の指示に従い、符号G6で示されるように、時刻Ts’においてセンサ値を検出し、制御サーバ1に送信する。センサ値処理部102は、センサ装置(#6,#8)2から受信したセンサ値が閾値TH1より小さいため、異常を検出できない。
センサ装置(#9)2は、符号G7で示されるように、時刻Tsにおいてセンサ値を検出し、制御サーバ1に送信する。センサ値処理部102は、センサ装置(#9)2から受信したセンサ値がTH1≧センサ値>TH2を満たすため、異常を予測して、センサ装置(#6,#8)2及びセンサ装置(#3,#5,#7)2に計測を指示する。
センサ装置(#6,#8)2は、計測の指示に従い、符号G8で示されるように、時刻Ts’においてセンサ値を検出し、制御サーバ1に送信する。センサ値処理部102は、センサ装置(#6,#8)2から受信したセンサ値が閾値TH1より小さいため、異常を検出できない。
また、センサ装置(#3,#5,#7)2は、計測の指示に従い、符号G9で示されるように、時刻Ts’’においてセンサ値を検出し、制御サーバ1に送信する。センサ値処理部102は、センサ装置(#3,#5,#7)2から受信したセンサ値が閾値TH1より大きいため、異常を検出することができる。
このように、制御サーバ1は、閾値TH2より低い閾値TH3を用いて、低い閾値TH3を超える場合は相関の高いセンサの異常を予測し、高い閾値TH2を超える場合はさらに広範囲のセンサの異常を予測するため、センサ値に応じ高感度で異常を検出することができる。
なお、本例において、センサ値は、異常の発生に伴い増加するが、これに限定されず、異常の発生に伴い低下するものであってもよい。このとき、制御サーバ1は、閾値TH3を用いて、第3条件であるTH2≦センサ値<TH3が満たされるとき、センサ値の送信元のセンサ装置2と相関関係を有するセンサ装置2にセンサ値の計測を指示する。また、制御サーバ1は、第2条件であるTH1≦センサ値<TH2が満たされるとき、センサ値の送信元のセンサ装置2と相関関係を有するセンサ装置2及びそのセンサ装置2相関関係を有するセンサ装置2にセンサ値の計測を指示する。これにより、上述した内容と同様の効果が得られる。
また、本例では、制御サーバ1は、センサ値の送信元のセンサ装置2と相関関係を有するセンサ装置2を示す第1待機センサIDと、そのセンサ装置2相関関係を有するセンサ装置2を示す第2待機センサIDとを含むセンサ状態テーブル132を生成する。第1待機センサID及び第2待機センサIDは、以下のようにスケジューリング処理により決定される。
図15は、スケジューリング処理の他例を示すフローチャートである。図15において、図6と共通する処理については同一の符号を付し、その説明を省略する。
スケジュール管理部104は、センサ相関情報131に基づき、センサ装置(#i)と相関関係を有する他のセンサ装置2の相関センサIDを検索する(ステップSt14)。このとき、スケジュール管理部104は、検索した相関センサIDを第1待機センサIDとしてセンサ状態テーブル132に登録する。
また、スケジュール管理部104は、ステップSt15の実行後、センサ相関情報131から、ステップSt14で検索した相関センサIDのセンサ装置2の相関センサIDを検索する(ステップSt15a)。このとき、スケジュール管理部104は、検索した相関センサIDを第2待機センサIDとしてセンサ状態テーブル132に登録する。
そして、スケジュール管理部104は、検索した相関センサIDのセンサ装置2の状態を待機状態とする(ステップSt15b)。このようにして、スケジューリング処理は実行される。
図16には、本例のスケジュール設定が示されている。図7と比較すると理解されるように、本例では、計測状態のセンサ装置2と相関関係を有するセンサ装置2だけでなく、そのセンサ装置2と相関関係を有するセンサ装置2も待機状態とされるため、待機状態のセンサ装置2が増加する。
また、図17には、本例のセンサ状態テーブル132が示されている。制御サーバ1は、例えば、センサ装置(#2)2のセンサ値がTH2≧センサ値>TH3を満たす場合、センサID「#1」に対応する第1待機センサID「#1」,「#3」,「#5」及び第2待機センサID「#4」,「#6」,「#8」を検索し、該当するセンサ装置2に計測を指示する。
図18は、本例のセンサ値の処理を示すフローチャートである。図18において、図10と共通する処理については同一の符号を付し、その説明を省略する。
センサ値処理部102は、センサ値>TH2の場合(ステップSt4のYes)、つまり、センサ値が第2条件を満たす場合、センサ状態テーブル132から第1待機センサID及び第2待機センサIDを検索する(ステップSt5a)。次に、センサ値処理部102は、第1待機センサID及び第2待機センサIDの各センサ装置2に計測を指示する(ステップSt6a)。その後、ステップSt7の処理が実行される。
また、センサ値処理部102は、センサ値≦TH2の場合(ステップSt4のNo)、センサ値と閾値TH3を比較する(ステップSt9a)。センサ値処理部102は、センサ値≦TH3の場合(ステップSt9aのNo)、つまり、センサ値が第3条件を満たさない場合、処理を終了する。センサ値処理部102は、センサ値>TH3の場合(ステップSt9aのYes)、つまり、センサ値が第3条件を満たす場合、センサ状態テーブル132から第1待機センサIDを検索する(ステップSt9b)。
次に、センサ値処理部102は、第1待機センサIDのセンサ装置2に計測を指示する(ステップSt9c)。その後、ステップSt7の処理が実行される。このようにして、センサ値の処理は実行される。
これまで述べた実施例において、制御サーバ1は、複数のセンサ装置2の間の相関関係のみに基づき、計測の指示対象のセンサ装置2、つまり待機状態とするセンサ装置2を決定するが、これに限定されない。制御サーバ1は、例えば、複数のセンサ装置2の間の相関関係だけでなく、各センサ装置2のバッテリ27の残量に基づき、待機状態とするセンサ装置2を決定してもよい。
図19は、制御サーバ1の他例を示す構成図である。図19において、図4と共通する構成については同一の符号を付し、その説明を省略する。
制御サーバ1は、CPU10、ROM11、RAM12、HDD13、複数の通信ポート14、入力装置15、及び出力装置16を有する。CPU10は、ROM11からプログラムを読み込むと、機能として、制御部100、通信処理部101、センサ値処理部102、相関情報生成部103、スケジュール管理部104、閾値調整部105、及びバッテリ情報収集部106が形成される。また、HDD13には、センサ位置情報130、センサ相関情報131a、センサ状態テーブル132、センサ履歴情報133、バッテリ情報134、及びスケジュール設定情報SCが記憶されている。
バッテリ情報収集部106は、収集部の一例であり、複数のセンサ装置2からバッテリ27の残量を示すバッテリ情報134を収集する。バッテリ情報収集部106は、各センサ装置2に要求することによりバッテリ情報134を収集してもよいし、各センサ装置2が例えば周期的に送信したバッテリ情報134を収集してもよい。バッテリ情報収集部106は、各センサ装置2のバッテリ情報134をHDD13に格納する。
スケジュール管理部104は、HDD13内のバッテリ情報134に基づきスケジューリング処理を行う。
図20は、本例のスケジュール設定処理を示すシーケンス図である。制御サーバ1は、各センサ装置(#1〜#9)2からバッテリ情報を受信する。制御サーバ1は、バッテリ情報に基づいてスケジューリング処理を実行し、各センサ装置2にスケジュール設定情報を送信する。
スケジュール管理部104は、計測状態のセンサ装置2と相関関係を有するセンサ装置2のうち、バッテリ27の残量が所定量THb以上のセンサ装置2を待機状態とする。このため、センサ値処理部102は、TH1≧センサ値>TH2の場合、センサ値の送信元のセンサ装置2と相関関係を有するセンサ装置2のうち、バッテリ27の残量が所定量THb以上のセンサ装置2に計測を指示する。
すなわち、センサ値処理部102は、受信したセンサ値が、第1条件を満たさず、第2条件を満たす場合、センサ値の送信元のセンサ装置2と相関関係を有し、バッテリ27の残量が所定量THb以上であるセンサ装置2にセンサ値の計測を指示する。このため、バッテリ27の残量が少ないセンサ装置2には計測が指示されないので、バッテリ27の寿命を延ばすことができる。
また、スケジュール管理部104は、計測状態のセンサ装置2と相関関係を有するセンサ装置2のうち、バッテリ27の残量が所定量THbより小さいセンサ装置2と相関関係を有するセンサ装置2を待機状態とする。このため、センサ値処理部102は、TH1≧センサ値>TH2の場合、センサ値の送信元のセンサ装置2と相関関係を有するセンサ装置2のうち、バッテリ27の残量が所定量THbより少ないセンサ装置2と相関関係を有するセンサ装置2に計測を指示する。
すなわち、センサ値処理部102は、受信したセンサ値が、第1条件を満たさず、第2条件を満たす場合、センサ値の送信元のセンサ装置2と相関関係を有し、バッテリ27の残量が所定量THbより少ないセンサ装置2と相関関係を有するセンサ装置2にセンサ値の計測を指示する。このため、制御サーバ1は、バッテリ27の残量が所定量THbより少ないセンサ装置2を計測の指示対象から除外した場合でも、除外したセンサ装置2と相関関係を有するセンサ装置2のセンサ値に基づき、高感度で異常を検出することができる。以下に本例の動作を述べる。
図21には、本例のセンサ相関情報131a及びバッテリ情報134が示されている。センサ相関情報131aには、各センサIDに対応する相関センサID、及びその相関センサIDのセンサ装置2に対する相関度が登録されている。相関度は、相関関係の強さの指標であり、高いほど、相関関係が強いことを示す。例えば、センサID「#8」について相関センサID「#7」のセンサ装置2に対する相関度は0.9であり、他の相関度より高いため、センサ装置(#8)2とセンサ装置(#7)2の相関関係は他より強い。
また、バッテリ情報134には、各センサIDのセンサ装置2のバッテリ27の残量を示す。例えば、センサ装置(#1)2のバッテリ27の残量は20(%)である。
図22は、本例のスケジューリング処理を示すフローチャートである。図22において、図6と共通する処理については同一の符号を付し、その説明を省略する。
スケジュール管理部104は、相関センサIDを検索した後(ステップSt14)、バッテリ情報134を参照し、相関センサIDのセンサ装置2のうち、バッテリ27の残量が所定量THb以上であるセンサ装置2の有無を判定する(ステップSt14a)。スケジュール管理部104は、バッテリ27の残量が所定量THb以上であるセンサ装置2がない場合(ステップSt14aのNo)、後述するステップSt15cの処理を実行する。
また、スケジュール管理部104は、バッテリ27の残量が所定量THb以上であるセンサ装置2がある場合(ステップSt14aのYes)、センシング期間Tiにおけるそのセンサ装置2の状態を待機状態とする(ステップSt15)。このように、スケジュール管理部104は、バッテリ27の残量が所定量THb以上であるセンサ装置2を待機状態とする。したがって、センサ値処理部102は、センサ値が第2条件を満たす場合、センサ値の送信元のセンサ装置2と相関関係を有するセンサ装置2のうち、バッテリ27の残量が所定量THb以上であるセンサ装置2に計測を指示する。
次に、スケジュール管理部104は、相関センサIDのセンサ装置2のうち、バッテリ27の残量が所定量THbより少ないセンサ装置2の有無を判定する(ステップSt15h)。スケジュール管理部104は、バッテリ27の残量が所定量THbより少ないセンサ装置2がない場合(ステップSt15hのNo)、他のセンサ装置2の状態をスリープ状態とする(ステップSt16)。
また、スケジュール管理部104は、バッテリ27の残量が所定量THbより少ないセンサ装置2がある場合(ステップSt15hのYes)、そのセンサ装置2と、バッテリ27の残量が所定量THbより多いセンサ装置2とが相関関係を有するか否かを判定する(ステップSt15i)。スケジュール管理部104は、該当するセンサ装置2同士が相関関係を有する場合(ステップSt15iのYes)、上記のステップSt16の処理を実行する。
スケジュール管理部104は、該当するセンサ装置2同士が相関関係を有していない場合(ステップSt15iのNo)、センサ相関情報131から、バッテリ27の残量が所定量THbより少ないセンサ装置2に対応する相関センサIDを検索する(ステップSt15c)。次に、スケジュール管理部104は、バッテリ27の残量が所定量THbより少ないセンサ装置2、及び検索した相関センサIDのセンサ装置2から2つのセンサ装置2を選択することにより組み合わせを生成する(ステップSt15d)。ただし、スケジュール管理部104は、計測状態のセンサ装置(#i)2を組み合わせから除外する。
V=相関度×バッテリ残量×センサ装置2の重複数 ・・・(1)
次に、スケジュール管理部104は、上記の式(1)に従い、組み合わせごとに評価値Vを算出する(ステップSt15e)。なお、評価値Vの算出例については後述する。
次に、スケジュール管理部104は、最大の評価値Vの組み合わせを選択する(ステップSt15f)。次に、スケジュール管理部104は、選択した組み合わせの各センサ装置2の期間Tiにおける状態を待機状態とする(ステップSt15g)。このため、バッテリ27の残量が所定量THbより少ないセンサ装置2と相関関係を有するセンサ装置2が待機状態とされる。
したがって、センサ値処理部102は、センサ値が第2条件を満たす場合、センサ値の送信元のセンサ装置2と相関関係を有し、バッテリ27の残量が所定量THbより少ないセンサ装置2と相関関係を有するセンサ装置2にセンサ値の計測を指示する。
その後、ステップSt16の処理が実行される。このようにして、スケジューリング処理は実行される。なお、スケジュール管理部104は、スケジューリング処理により生成されたスケジュール設定に基づきセンサ状態テーブル132を生成する。
次に、上記のスケジューリング処理の例を述べる。以下の例では、バッテリ27の残量に関する所定量THbを30(%)とする。
(例1)
ステップSt12の処理でセンサ装置(#2)2が選択された場合、ステップSt14の処理では、図21に示されたセンサ相関情報131からセンサID「#1」,「#3」,「#5」が検索される。図21に示されたバッテリ情報134に基づくと、該当するセンサ装置(#1)2、センサ装置(#3)2、及びセンサ装置(#5)2のうち、センサ装置(#3)2のバッテリ27の残量は60(%)であり、閾値THb以上である。また、センサ装置(#3)2は、センサ相関情報131から、センサ装置(#1)2及びセンサ装置(#5)2と相関関係を有していない。
このため、ステップSt15cの処理において、センサ装置(#1)2に対応する相関センサID「#2」,「#4」、及びセンサ装置(#5)2に対応する相関センサID「#2」,「#4」,「#6」,「#8」が検索される。次に、ステップSt15dの処理において、以下のセンサ装置2の組み合わせが生成される。ただし、計測状態として設定されたセンサ装置(#2)2は、組み合わせから除外される。
組み合わせ(1):センサ装置(#1)2とセンサ装置(#4)2
組み合わせ(2):センサ装置(#1)2とセンサ装置(#5)2
組み合わせ(3):センサ装置(#1)2とセンサ装置(#6)2
組み合わせ(4):センサ装置(#1)2とセンサ装置(#8)2
組み合わせ(5):センサ装置(#4)2とセンサ装置(#4)2
組み合わせ(6):センサ装置(#4)2とセンサ装置(#5)2
組み合わせ(7):センサ装置(#4)2とセンサ装置(#6)2
組み合わせ(8):センサ装置(#4)2とセンサ装置(#8)2
次に、ステップSt15eの処理において、各組み合わせ(1)〜(8)の評価値Vが、図20のセンサ相関情報131及びバッテリ情報134に基づき、上記の式(1)に従って、以下のように算出される。
組み合わせ(1):V=0.8×20+0.5×70=51
組み合わせ(2):V=0.8×20+0.5×20=26
組み合わせ(3):V=0.8×20+0.6×80=64
組み合わせ(4):V=0.8×20+0.5×30=28
組み合わせ(5):V=0.6×70×2+0.5×70×2=154
組み合わせ(6):V=0.6×70+0.5×20=52
組み合わせ(7):V=0.6×70+0.6×80=90
組み合わせ(8):V=0.6×70+0.6×80=54
したがって、ステップSt15fの処理で最大の評価値Vの組み合わせ(5)が選択され、ステップSt15gの処理では、該当するセンサ装置(#4)2が待機状態とされる。
(例2)
ステップSt12の処理でセンサ装置(#4)2が選択された場合、ステップSt14の処理では、図21に示されたセンサ相関情報131からセンサID「#1」,「#5」,「#7」が検索される。図21に示されたバッテリ情報134に基づくと、該当するセンサ装置(#1)2、センサ装置(#5)2、及びセンサ装置(#7)2のうち、センサ装置(#7)2のバッテリ27の残量は90(%)であり、閾値THb以上である。また、センサ装置(#7)2は、センサ相関情報131から、センサ装置(#1)2及びセンサ装置(#5)2と相関関係を有していない。
このため、ステップSt15cの処理において、センサ装置(#1)2に対応する相関センサID「#2」,「#4」、及びセンサ装置(#5)2に対応する相関センサID「#2」,「#4」,「#6」,「#8」が検索される。次に、ステップSt15dの処理において、以下のセンサ装置2の組み合わせが生成される。ただし、計測状態として設定されたセンサ装置(#4)2は、組み合わせから除外される。
組み合わせ(1):センサ装置(#1)2とセンサ装置(#2)2
組み合わせ(2):センサ装置(#1)2とセンサ装置(#5)2
組み合わせ(3):センサ装置(#1)2とセンサ装置(#6)2
組み合わせ(4):センサ装置(#1)2とセンサ装置(#8)2
組み合わせ(5):センサ装置(#2)2とセンサ装置(#2)2
組み合わせ(6):センサ装置(#2)2とセンサ装置(#5)2
組み合わせ(7):センサ装置(#2)2とセンサ装置(#6)2
組み合わせ(8):センサ装置(#2)2とセンサ装置(#8)2
次に、ステップSt15eの処理において、各組み合わせ(1)〜(8)の評価値Vが、図20のセンサ相関情報131及びバッテリ情報134に基づき、上記の式(1)に従って、以下のように算出される。
組み合わせ(1):V=0.6×20+0.5×40=32
組み合わせ(2):V=0.6×20+0.5×20=22
組み合わせ(3):V=0.6×20+0.6×80=60
組み合わせ(4):V=0.6×20+0.4×30=24
組み合わせ(5):V=0.8×40×2+0.5×40×2=104
組み合わせ(6):V=0.8×40+0.5×20=42
組み合わせ(7):V=0.8×40+0.6×80=80
組み合わせ(8):V=0.8×40+0.5×30=47
したがって、ステップSt15fの処理で最大の評価値Vの組み合わせ(5)が選択され、ステップSt15gの処理では、該当するセンサ装置(#2)2が待機状態とされる。
(例3)
ステップSt12の処理でセンサ装置(#7)2が選択された場合、ステップSt14の処理では、図21に示されたセンサ相関情報131からセンサID「#4」,「#8」が検索される。図21に示されたバッテリ情報134に基づくと、該当するセンサ装置(#4)2及びセンサ装置(#8)2のうち、センサ装置(#4)2のバッテリ27の残量は70(%)であり、閾値THb以上である。また、センサ装置(#4)2は、センサ相関情報131から、センサ装置(#8)2と相関関係を有していない。
このため、ステップSt15cの処理において、センサ装置(#8)2に対応する相関センサID「#5」,「#7」,「#9」が検索される。次に、ステップSt15dの処理において、センサ装置(#5)2、センサ装置(#8)2、及びセンサ装置(#9)2が抽出される。本例では、該当するセンサ装置2が1つであるため、組み合わせではなく、個別のセンサ装置2が抽出される。ただし、計測状態として設定されたセンサ装置(#7)2は除外される。
次に、ステップSt15eの処理において、センサ装置(#5)2、センサ装置(#8)2、及びセンサ装置(#9)2の各評価値Vが、図20のセンサ相関情報131及びバッテリ情報134に基づき、上記の式(1)に従って、以下のように算出される。
センサ装置(#5)2:V=0.4×20=8
センサ装置(#8)2:V=0.9×30=27
センサ装置(#9)2:V=0.4×60=24
したがって、ステップSt15fの処理で最大の評価値Vのセンサ装置(#8)2が選択され、ステップSt15gの処理では、センサ装置(#8)2が待機状態とされる。
図23には、本例のスケジュール設定が示されている。例えば、センシング期間T2において、センサ装置(#5)2は、計測状態のセンサ装置(#2)2と相関関係を有するが、バッテリ27の残量が20(%)<THb(=30(%))であるため、待機状態(「WT」)とはされず、スリープ状態(「SL」)とされる。このため、制御サーバ1は、センサ装置(#5)2に計測を指示しないので、センサ装置(#5)2のバッテリ27の寿命を延ばすことができる。
また、センシング期間T2において、センサ装置(#4)2は、スリープ状態のセンサ装置(#5)2と相関関係を有するため、上記の例1のように評価値Vに基づき、待機状態(「WT」)とされる。このため、制御サーバ1は、センサ装置(#5)2を計測の指示対象から除外した場合でも、除外したセンサ装置(#5)2と相関関係を有するセンサ装置(#4)2のセンサ値に基づき、高感度で異常を検出することができる。
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、処理装置が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体(ただし、搬送波は除く)に記録しておくことができる。
プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD(Digital Versatile Disc)、CD−ROM(Compact Disc Read Only Memory)などの可搬型記録媒体の形態で販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
上述した実施形態は本発明の好適な実施の例である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変形実施可能である。
なお、以上の説明に関して更に以下の付記を開示する。
(付記1) 複数のセンサ装置が順次に計測し送信したセンサ値を受信する受信部と、
該受信した前記センサ値が、所定の第1条件を満たす場合、異常を検出し、前記受信した前記センサ値が、前記所定の第1条件を満たさず、前記所定の第1条件より緩和された第2条件を満たす場合、前記複数のセンサ装置のうち、前記センサ値の送信元のセンサ装置と所定の関係を有するセンサ装置に前記センサ値の計測を指示するセンサ値処理部とを有することを特徴とするセンサ制御装置。
(付記2) 前記センサ値処理部は、前記複数のセンサ装置のうち、前記センサ値の送信元のセンサ装置から所定の距離内にあるセンサ装置に前記センサ値の計測を指示することを特徴とする付記1に記載のセンサ制御装置。
(付記3) 前記複数のセンサ装置からバッテリの残量を示す情報を収集する収集部を有し、
前記センサ値処理部は、前記受信した前記センサ値が、前記所定の第1条件を満たさず、前記第2条件を満たす場合、前記複数のセンサ装置のうち、前記センサ値の送信元のセンサ装置と前記所定の関係を有し、前記バッテリの残量が所定量以上であるセンサ装置に前記センサ値の計測を指示することを特徴とする付記1または2に記載のセンサ制御装置。
(付記4) 前記センサ値処理部は、前記受信した前記センサ値が、前記所定の第1条件を満たさず、前記第2条件を満たす場合、前記複数のセンサ装置のうち、前記センサ値の送信元のセンサ装置と前記所定の関係を有し、前記バッテリの残量が所定量より少ないセンサ装置と前記所定の関係を有するセンサ装置に前記センサ値の計測を指示することを特徴とする付記3に記載のセンサ制御装置。
(付記5) 前記複数のセンサ装置のうち、前記所定の関係を有する2以上のセンサ装置からそれぞれ受信した前記センサ値の前記所定の第1条件及び前記第2条件の成否に基づき、前記第2条件を調整する調整部を有することを特徴とする付記1乃至4の何れかに記載のセンサ制御装置。
(付記6) 前記センサ値処理部は、
前記受信した前記センサ値が、前記所定の第1条件及び前記第2条件を満たさず、前記第2条件より緩和された第3条件を満たす場合、前記複数のセンサ装置のうち、前記センサ値の送信元のセンサ装置と前記所定の関係を有するセンサ装置に前記センサ値の計測を指示し、
前記受信した前記センサ値が、前記所定の第1条件を満たさず、前記第2条件を満たす場合、前記複数のセンサ装置のうち、前記センサ値の送信元のセンサ装置と前記所定の関係を有するセンサ装置、及び該センサ装置と前記所定の関係を有するセンサ装置に前記センサ値の計測を指示することを特徴とする付記1乃至5の何れかに記載のセンサ制御装置。
(付記7) 前記複数のセンサ装置は、前記センサ値を計測する第1状態と、前記センサ値処理部の指示を待って前記センサ値を計測する第2状態と、前記センサ値の計測を行わない第3状態とを有し、
前記複数のセンサ装置が所定の期間ごとに順次に前記第1状態となり、前記複数のセンサ装置のうち、前記第1状態のセンサ装置と前記所定の関係を有するセンサ装置が前記第2状態となり、他のセンサ装置が前記第3状態となるように、前記複数のセンサ装置に対し設定を行う設定処理部を有することを特徴とする付記1または2に記載のセンサ制御装置。
(付記8) センサ制御装置と、
センサ値を順次に計測し前記センサ制御装置に送信する複数のセンサ装置とを有し、
前記センサ制御装置は、
前記センサ値を受信する受信部と、
該受信した前記センサ値が、所定の第1条件を満たす場合、異常を検出し、前記受信した前記センサ値が、前記所定の第1条件を満たさず、前記所定の第1条件より緩和された第2条件を満たす場合、前記複数のセンサ装置のうち、前記センサ値の送信元のセンサ装置と所定の関係を有するセンサ装置に前記センサ値の計測を指示するセンサ値処理部とを有し、
前記複数のセンサ装置は、前記センサ値処理部から指示を受けたとき、前記センサ値を計測して、前記センサ制御装置に送信することを特徴とするセンサシステム。
(付記9) 前記センサ値処理部は、前記複数のセンサ装置のうち、前記センサ値の送信元のセンサ装置から所定の距離内にあるセンサ装置に前記センサ値の計測を指示することを特徴とする付記8に記載のセンサシステム。
(付記10) 前記複数のセンサ装置からバッテリの残量を示す情報を収集する収集部を有し、
前記センサ値処理部は、前記受信した前記センサ値が、前記所定の第1条件を満たさず、前記第2条件を満たす場合、前記複数のセンサ装置のうち、前記センサ値の送信元のセンサ装置と前記所定の関係を有し、前記バッテリの残量が所定量以上であるセンサ装置に前記センサ値の計測を指示することを特徴とする付記8または9に記載のセンサシステム。
(付記11) 前記センサ値処理部は、前記受信した前記センサ値が、前記所定の第1条件を満たさず、前記第2条件を満たす場合、前記複数のセンサ装置のうち、前記センサ値の送信元のセンサ装置と前記所定の関係を有し、前記バッテリの残量が所定量より少ないセンサ装置と前記所定の関係を有するセンサ装置に前記センサ値の計測を指示することを特徴とする付記10に記載のセンサシステム。
(付記12) 前記複数のセンサ装置のうち、前記所定の関係を有する2以上のセンサ装置からそれぞれ受信した前記センサ値の前記所定の第1条件及び前記第2条件の成否に基づき、前記第2条件を調整する調整部を有することを特徴とする付記8乃至11の何れかに記載のセンサシステム。
(付記13) 前記センサ値処理部は、前記受信した前記センサ値が、前記所定の第1条件及び前記第2条件を満たさず、前記第2条件より緩和された第3条件を満たす場合、前記複数のセンサ装置のうち、前記センサ値の送信元のセンサ装置と前記所定の関係を有するセンサ装置に前記センサ値の計測を指示することを特徴とする付記8乃至12の何れかに記載のセンサシステム。
(付記14) 前記複数のセンサ装置は、前記センサ値を計測する第1状態と、前記センサ値処理部の指示を待って前記センサ値を計測する第2状態と、前記センサ値の計測を行わない第3状態とを有し、
前記複数のセンサ装置が所定の期間ごとに順次に前記第1状態となり、前記複数のセンサ装置のうち、前記第1状態のセンサ装置と前記所定の関係を有するセンサ装置が前記第2状態となり、他のセンサ装置が前記第3状態となるように、前記複数のセンサ装置に対し設定を行う設定処理部を有することを特徴とする付記8または9に記載のセンサシステム。
(付記15) 複数のセンサ装置が順次に計測し送信したセンサ値を受信する工程と、
該受信した前記センサ値が、所定の第1条件を満たす場合、異常を検出し、前記受信した前記センサ値が、前記所定の第1条件を満たさず、前記所定の第1条件より緩和された第2条件を満たす場合、前記複数のセンサ装置のうち、前記センサ値の送信元のセンサ装置と所定の関係を有するセンサ装置に前記センサ値の計測を指示する工程とを、コンピュータが実行することを特徴とするセンサ制御方法。
(付記16) 前記センサ値の計測を指示する工程において、前記複数のセンサ装置のうち、前記センサ値の送信元のセンサ装置から所定の距離内にあるセンサ装置に前記センサ値の計測を指示することを特徴とする付記15に記載のセンサ制御方法。
(付記17) 前記複数のセンサ装置からバッテリの残量を示す情報を収集する工程を、前記コンピュータが実行し、
前記センサ値の計測を指示する工程において、前記受信した前記センサ値が、前記所定の第1条件を満たさず、前記第2条件を満たす場合、前記複数のセンサ装置のうち、前記センサ値の送信元のセンサ装置と前記所定の関係を有し、前記バッテリの残量が所定量以上であるセンサ装置に前記センサ値の計測を指示することを特徴とする付記15または16に記載のセンサ制御方法。
(付記18) 前記センサ値の計測を指示する工程において、前記受信した前記センサ値が、前記所定の第1条件を満たさず、前記第2条件を満たす場合、前記複数のセンサ装置のうち、前記センサ値の送信元のセンサ装置と前記所定の関係を有し、前記バッテリの残量が所定量より少ないセンサ装置と前記所定の関係を有するセンサ装置に前記センサ値の計測を指示することを特徴とする付記17に記載のセンサ制御方法。
(付記19) 前記複数のセンサ装置のうち、前記所定の関係を有する2以上のセンサ装置からそれぞれ受信した前記センサ値の前記所定の第1条件及び前記第2条件の成否に基づき、前記第2条件を調整する工程を、前記コンピュータが実行することを特徴とする付記15乃至18の何れかに記載のセンサ制御方法。
(付記20) 前記センサ値の計測を指示する工程において、
前記受信した前記センサ値が、前記所定の第1条件及び前記第2条件を満たさず、前記第2条件より緩和された第3条件を満たす場合、前記複数のセンサ装置のうち、前記センサ値の送信元のセンサ装置と前記所定の関係を有するセンサ装置に前記センサ値の計測を指示し、
前記受信した前記センサ値が、前記所定の第1条件を満たさず、前記第2条件を満たす場合、前記複数のセンサ装置のうち、前記センサ値の送信元のセンサ装置と前記所定の関係を有するセンサ装置、及び該センサ装置と前記所定の関係を有するセンサ装置に前記センサ値の計測を指示することを特徴とする付記15乃至19の何れかに記載のセンサ制御方法。
(付記21) 前記複数のセンサ装置は、前記センサ値を計測する第1状態と、前記指示を待って前記センサ値を計測する第2状態と、前記センサ値の計測を行わない第3状態とを有し、
前記複数のセンサ装置が所定の期間ごとに順次に前記第1状態となり、前記複数のセンサ装置のうち、前記第1状態のセンサ装置と前記所定の関係を有するセンサ装置が前記第2状態となり、他のセンサ装置が前記第3状態となるように、前記複数のセンサ装置に対し設定を行う工程を、前記コンピュータが実行することを特徴とする付記15または16に記載のセンサ制御方法。
(付記22) 複数のセンサ装置が順次に計測し送信したセンサ値を受信し、
該受信した前記センサ値が、所定の第1条件を満たす場合、異常を検出し、前記受信した前記センサ値が、前記所定の第1条件を満たさず、前記所定の第1条件より緩和された第2条件を満たす場合、前記複数のセンサ装置のうち、前記センサ値の送信元のセンサ装置と所定の関係を有するセンサ装置に前記センサ値の計測を指示する、処理を、コンピュータに実行させることを特徴とするセンサ制御プログラム。
(付記23) 前記センサ値の計測を指示する処理において、前記複数のセンサ装置のうち、前記センサ値の送信元のセンサ装置から所定の距離内にあるセンサ装置に前記センサ値の計測を指示することを特徴とする付記22に記載のセンサ制御プログラム。
(付記24) 前記複数のセンサ装置からバッテリの残量を示す情報を収集する処理を、前記コンピュータが実行し、
前記センサ値の計測を指示する処理において、前記受信した前記センサ値が、前記所定の第1条件を満たさず、前記第2条件を満たす場合、前記複数のセンサ装置のうち、前記センサ値の送信元のセンサ装置と前記所定の関係を有し、前記バッテリの残量が所定量以上であるセンサ装置に前記センサ値の計測を指示することを特徴とする付記22または23に記載のセンサ制御プログラム。
(付記25) 前記センサ値の計測を指示する処理において、前記受信した前記センサ値が、前記所定の第1条件を満たさず、前記第2条件を満たす場合、前記複数のセンサ装置のうち、前記センサ値の送信元のセンサ装置と前記所定の関係を有し、前記バッテリの残量が所定量より少ないセンサ装置と前記所定の関係を有するセンサ装置に前記センサ値の計測を指示することを特徴とする付記24に記載のセンサ制御プログラム。
(付記26) 前記複数のセンサ装置のうち、前記所定の関係を有する2以上のセンサ装置からそれぞれ受信した前記センサ値の前記所定の第1条件及び前記第2条件の成否に基づき、前記第2条件を調整する処理を、前記コンピュータが実行することを特徴とする付記22乃至25の何れかに記載のセンサ制御プログラム。
(付記27) 前記センサ値の計測を指示する処理において、
前記受信した前記センサ値が、前記所定の第1条件及び前記第2条件を満たさず、前記第2条件より緩和された第3条件を満たす場合、前記複数のセンサ装置のうち、前記センサ値の送信元のセンサ装置と前記所定の関係を有するセンサ装置に前記センサ値の計測を指示し、
前記受信した前記センサ値が、前記所定の第1条件を満たさず、前記第2条件を満たす場合、前記複数のセンサ装置のうち、前記センサ値の送信元のセンサ装置と前記所定の関係を有するセンサ装置、及び該センサ装置と前記所定の関係を有するセンサ装置に前記センサ値の計測を指示することを特徴とする付記22乃至26の何れかに記載のセンサ制御プログラム。
(付記28) 前記複数のセンサ装置は、前記センサ値を計測する第1状態と、前記指示を待って前記センサ値を計測する第2状態と、前記センサ値の計測を行わない第3状態とを有し、
前記複数のセンサ装置が所定の期間ごとに順次に前記第1状態となり、前記複数のセンサ装置のうち、前記第1状態のセンサ装置と前記所定の関係を有するセンサ装置が前記第2状態となり、他のセンサ装置が前記第3状態となるように、前記複数のセンサ装置に対し設定を行う処理を、前記コンピュータが実行することを特徴とする付記22または23に記載のセンサ制御プログラム。