(57)【要約】【課題】データ欠落やデータ遅延を抑制できる制御装置等を提供する。【解決手段】制御装置は、取得部と、予測部と、算出部と、割当部とを有する。取得部は、複数のデバイスから測定データを取得する。予測部は、取得した測定データを用いて指定時刻の予測データを予測する。算出部は、測定データと予測データとの誤差をデバイス毎に算出する。割当部は、デバイス毎の誤差に基づき、指定時刻の測定データを通知するタイミングが重なるデバイス毎に通知タイミングを割り当てる。【選択図】図５
2018101962.tif 000002
【特許請求の範囲】
【請求項１】
複数のデバイスから測定データを取得する取得部と、
取得した測定データを用いて指定時刻の予測データを予測する予測部と、
前記測定データと前記予測データとの誤差を前記デバイス毎に算出する算出部と、
前記デバイス毎の誤差に基づき、前記指定時刻の前記測定データを通知するタイミングが重なるデバイス毎に通知タイミングを割り当てる割当部と
を有することを特徴とする制御装置。
【請求項２】
前記割当部は、
前記指定時刻の前記測定データを通知するタイミングが重なる前記デバイスが所定数を超える場合に、前記誤差に基づき、前記デバイス毎に前記通知タイミングを割り当てることを特徴とする請求項１に記載の制御装置。
【請求項３】
前記割当部は、
前記指定時刻の前記測定データを通知するタイミングが重なる前記デバイスの内、データ属性がリアルタイムのあるデバイスに前記指定時刻以前の前記通知タイミングを割当てることを特徴とする請求項１に記載の制御装置。
【請求項４】
前記割当部は、
前記指定時刻の前記測定データを通知するタイミングが重なる前記デバイスの内、前記誤差の大きいデバイスに前記指定時刻付近の前記通知タイミングを割り当てることを特徴とする請求項３に記載の制御装置。
【請求項５】
前記割当部は、
前記指定時刻の前記測定データを通知するタイミングが重なる前記デバイスの内、前記測定データを格納可能にする記憶媒体を有し、前記データ属性が前記リアルタイムなしのデバイスの場合に、当該デバイスに前記指定時刻での測定及び当該デバイスに前記指定時刻以後の前記通知タイミングを割当てることを特徴とする請求項３に記載の制御装置。
【請求項６】
複数のデバイスから測定データを取得し、
取得した測定データを用いて指定時刻の予測データを予測し、
前記測定データと前記予測データとの誤差を前記デバイス毎に算出し、
前記デバイス毎の誤差に基づき、前記指定時刻の前記測定データを通知するタイミングが重なるデバイス毎に通知タイミングを割り当てる
処理を実行することを特徴とする制御方法。
【請求項７】
コンピュータに、
複数のデバイスから測定データを取得し、
取得した測定データを用いて指定時刻の予測データを予測し、
前記測定データと前記予測データとの誤差を前記デバイス毎に算出し、
前記デバイス毎の誤差に基づき、前記指定時刻の前記測定データを通知するタイミングが重なるデバイス毎に通知タイミングを割り当てる
処理を実行させることを特徴とする制御プログラム。
【請求項８】
複数のデバイスと、前記デバイスを管理する制御装置とを有する制御システムであって、
前記制御装置は、
前記デバイスから測定データを取得する取得部と、
取得した測定データを用いて指定時刻の予測データを予測する予測部と、
前記測定データと前記予測データとの誤差を前記デバイス毎に算出する算出部と、
前記デバイス毎の誤差に基づき、前記指定時刻の前記測定データを通知するタイミングが重なるデバイス毎に通知タイミングを割り当てる割当部と
を有することを特徴とする制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御装置、制御方法、制御プログラム及び制御システムに関する。
【背景技術】
【０００２】
複数のデバイス内のセンサ等で測定したデータを収集するセンサシステムとしては、例えば、河川や下水道の氾濫等を監視するＩｏＴソリューションや、道路や橋梁等の異常を検出するＩｏＴソリューション等がある。センサシステムでは、デバイスの近くに配置されたＧＷ（Gateway）を経由して各デバイスのデータ、例えば、複数のデバイスから同一時刻の測定データを収集する場合がある。この場合、ＧＷは、同一時刻の測定データの収集のため、各デバイスの通知タイミングが重なることで複数のデバイスからの測定データの衝突や再送が発生する。
【０００３】
センサシステムでは、複数のデバイスからＧＷへの測定データの通知タイミングが重なる場合に、通知タイミングを所定時間間隔の通信スロットに時分割し、各通信スロットに各デバイスの測定データの通知タイミングを割り当てる。その結果、ＧＷとデバイスとの間でデータ衝突やデータ再送を回避している。しかも、センサシステムでは、デバイス毎に優先度を設け、その優先度に応じて各デバイスの通知タイミングを変更している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第５６４１３８１号公報
【特許文献２】特開２０１４−２０９３１１号公報
【特許文献３】国際公開第２０１２／０５６５５１号
【特許文献４】特開２０１２−１９５７０５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
センサシステムでは、各デバイスから同一時刻の測定データをＧＷに通知するタイミングが重なる場合、優先度に応じて各デバイスの通知タイミングを変更している。しかしながら、センサシステムでは、同一優先度のデバイスが複数存在する場合、各デバイスの通知タイミングを変更できず、データ衝突やデータ再送を回避できない。その結果、データ欠落やデータ遅延が生じる。
【０００６】
一つの側面では、データ欠落やデータ遅延を抑制できる制御装置等を提供することを目的とする。
【課題を解決するための手段】
【０００７】
一つの態様の制御装置は、取得部と、予測部と、算出部と、割当部とを有する。取得部は、複数のデバイスから測定データを取得する。予測部は、取得した測定データを用いて指定時刻の予測データを予測する。算出部は、前記測定データと前記予測データとの誤差を前記デバイス毎に算出する。割当部は、前記デバイス毎の誤差に基づき、前記指定時刻の前記測定データを通知するタイミングが重なるデバイス毎に通知タイミングを割り当てる。
【発明の効果】
【０００８】
一つの側面として、データ欠落やデータ遅延を抑制できる。
【図面の簡単な説明】
【０００９】
【図１】図１は、実施例１のセンサシステムの一例を示す説明図である。
【図２】図２は、デバイスのハードウェア構成の一例を示す説明図である。
【図３】図３は、サーバのハードウェア構成の一例を示す説明図である。
【図４】図４は、ＧＷのハードウェア構成の一例を示す説明図である。
【図５】図５は、ＧＷ内のＣＰＵの機能構成の一例を示す説明図である。
【図６】図６は、属性テーブルの構成の一例を示す説明図である。
【図７】図７は、予測難易度テーブルの構成の一例を示す説明図である。
【図８】図８は、センサシステムの処理動作の一例を示す説明図である。
【図９】図９は、データ予測処理に関わるＧＷ内のＣＰＵの処理動作の一例を示すフローチャートである。
【図１０】図１０は、予測難易度更新処理に関わるＧＷ内のＣＰＵの処理動作の一例を示すフローチャートである。
【図１１】図１１は、第１のタイミング割当処理に関わるＧＷ内のＣＰＵの処理動作の一例を示すフローチャートである。
【図１２】図１２は、実施例１の各デバイスのタイミング割当動作の一例を示す説明図である。
【図１３】図１３は、実施例２の第２のタイミング割当処理に関わるＧＷ内のＣＰＵの処理動作の一例を示すフローチャートである。
【図１４】図１４は、実施例２の各デバイスのタイミング割当動作の一例を示す説明図である。
【図１５】図１５は、実施例３の第３のタイミング割当処理に関わるＧＷ内のＣＰＵの処理動作の一例を示すフローチャートである。
【図１６】図１６は、実施例３の各デバイスのタイミング割当動作の一例を示す説明図である。
【図１７】図１７は、実施例４のＧＷ内のＣＰＵの機能構成の一例を示す説明図である。
【図１８】図１８は、状況テーブルの構成の一例を示す説明図である。
【図１９】図１９は、第４のタイミング割当処理に関わるＧＷ内のＣＰＵの処理動作の一例を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下、図面に基づいて、本願の開示する制御装置、制御方法、制御プログラム及び制御システムの実施例を詳細に説明する。尚、本実施例により、開示技術が限定されるものではない。また、以下に示す実施例は、矛盾を起こさない範囲で適宜組み合わせても良い。
【実施例１】
【００１１】
図１は、実施例１のセンサシステム１の一例を示す説明図である。図１に示すセンサシステム１は、複数のデバイス２と、複数のＧＷ(Gateway)３と、サーバ４とを有する。デバイス２は、センサ機能を内蔵し、ＧＷ３との間で無線通信を確立する端末装置である。ＧＷ３は、デバイス２との間で無線通信を確立すると共に、サーバ４との間で通信を確立し、各デバイス２の測定データを収集する制御装置である。サーバ４は、ＧＷ３経由で各デバイス２からの測定データを収集する、例えば、パソコン等の情報処理装置である。尚、サーバ４は、パソコン等の情報処理装置に限定されるものではなく、例えば、クラウドサーバ等であっても良い。
【００１２】
図２は、デバイス２のハードウェア構成の一例を示す説明図である。図２に示すデバイス２は、デバイス側通信ＩＦ(Interface)１１と、センサ１２と、デバイス側メモリ１３と、デバイス側ＣＰＵ１４と、バス１５とを有する。デバイス側通信ＩＦ１１は、ＧＷ３との間の無線通信を確立する通信ＩＦである。センサ１２は、例えば、河川水位を測定する。デバイス側メモリ１３は、各種情報を記憶する領域である。デバイス側ＣＰＵ１４は、デバイス２全体を制御する。バス１５は、デバイス側通信ＩＦ１１、センサ１２、デバイス側メモリ１３、デバイス側ＣＰＵ１４との間で情報を転送する経路である。
【００１３】
図３は、サーバ４のハードウェア構成の一例を示す説明図である。図３に示すサーバ４は、サーバ側通信ＩＦ２１と、サーバ側入力部２２と、サーバ側出力部２３と、サーバ側ＨＤＤ（Hard  Disk  Drive）２４と、サーバ側メモリ２５と、サーバ側ＣＰＵ２６と、バス２７とを有する。サーバ側通信ＩＦ２１は、ＧＷ３との間の通信を確立する通信ＩＦである。サーバ側入力部２２は、例えば、操作部等の入力ＩＦである。サーバ側出力部２３は、例えば、表示部等の出力ＩＦである。サーバ側ＨＤＤ２４は、各種情報を記憶する領域である。サーバ側メモリ２５は、各種情報を記憶する領域と、サーバ側ＣＰＵ２６が実行する各種情報を展開する作業領域とを有する。サーバ側ＣＰＵ２６は、サーバ４全体を制御する。バス２７は、サーバ側通信ＩＦ２１、サーバ側入力部２２、サーバ側出力部２３、サーバ側ＨＤＤ２４、サーバ側メモリ２５、サーバ側ＣＰＵ２６との間で情報を伝送する経路である。
【００１４】
図４は、ＧＷ３のハードウェア構成の一例を示す説明図である。図４に示すＧＷ３は、通信ＩＦ３１と、入力部３２と、出力部３３と、ＨＤＤ３４と、メモリ３５と、ＣＰＵ３６と、バス３７とを有する。通信ＩＦ３１は、デバイス２との間の無線通信を確立すると共に、サーバ４との間の通信を確立する通信ＩＦである。入力部３２は、例えば、操作部等の入力ＩＦである。出力部３３は、例えば、表示部等の出力ＩＦである。ＨＤＤ３４は、各種情報を記憶する領域である。メモリ３５は、プログラム等の各種情報を記憶する領域と、ＣＰＵ３６が実行する各種情報を展開する作業領域とを有する。ＣＰＵ３６は、ＧＷ３全体を制御する。ＣＰＵ３６は、メモリ３５に格納されたプログラムを展開し、プログラムに対応した処理機能としてプロセスを実行する。バス３７は、通信ＩＦ３１、入力部３２、出力部３３、ＨＤＤ３４、メモリ３５、ＣＰＵ３６との間で情報を伝送する経路である。
【００１５】
図５は、ＧＷ３内のＣＰＵ３６の機能構成の一例を示す説明図である。ＣＰＵ３６は、処理機能として、取得部４１と、予測部４２と、負荷検出部４３と、属性管理部４４と、予測難易度管理部４５と、制御部４６とを有する。メモリ３５は、属性テーブル５１と、予測難易度テーブル５２とを有する。取得部４１は、所定の通知タイミングで各デバイス２から測定値（実測データ）及び測定時刻等の測定データを収集する。予測部４２は、例えば、指定時刻の実測データと、指定時刻の過去の実測データとに基づき、指定時刻の予測データを算出する。尚、指定時刻は、例えば、後述するアプリ側で指定した測定時刻である。予測データは、指定時刻前に指定時刻の実測データを予測した測定データである。予測部４２は、デバイスＩＤ毎に収集した過去の指定時刻の測定データの回帰分析を実行して指定時刻の予測データを算出する。負荷検出部４３は、例えば、指定時刻での通知タイミングが重なるデバイス２の台数を監視する。
【００１６】
属性管理部４４は、デバイス２毎のデータ属性を属性テーブル５１に記憶する。データ属性は、デバイス２のデータの属性、例えば、リアルタイムや非リアルタイムの属性を識別する情報である。図６は、属性テーブル５１の構成の一例を示す説明図である。図６に示す属性テーブル５１は、デバイスＩＤ５１Ａと、データ属性５１Ｂとを対応付けて記憶する。デバイスＩＤ５１Ａは、デバイス２を識別するＩＤである。データ属性５１Ｂは、デバイス２で測定した測定データの属性、例えば、リアルタイムや非リアルタイム等を識別するデータ属性である。
【００１７】
予測難易度管理部４５は、デバイス２毎の予測難易度を算出すると共に、デバイス２毎の予測難易度を予測難易度テーブル５２に記憶する。予測難易度管理部４５は、算出部４５Ａを有する。算出部４５Ａは、実測データと予測データとの間の誤差として予測難易度を算出する。算出部４５Ａは、指定時刻の予測データと、指定時刻の実測データとを二乗平均平方根誤差等を使用して、数１で誤差率を算出する。
【００１８】
【数１】
2018101962.tif 000003
【００１９】
図７は、予測難易度テーブル５２の構成の一例を示す説明図である。図７に示す予測難易度テーブル５２は、デバイスＩＤ５２Ａと、予測難易度５２Ｂとを対応付けて記憶している。デバイスＩＤ５２Ａは、デバイス２を識別するＩＤである。予測難易度５２Ｂは、デバイス２毎の実測データと予測データとの間の誤差率で示す指標である。制御部４６は、割当部４６Ａを有する。割当部４６Ａは、各デバイス２の予測難易度順位及び、各デバイス２のデータ属性に基づき、各デバイス２の通知タイミングを空きの通信スロット（以下、スロットと称する）に割当てる。空きスロットは、デバイス２毎にＧＷ３へ測定データを送信する際の送信時間帯を所定時間間隔に時分割した通信タイミングである。デバイス２に割り当てられた空きスロットは、当該デバイス２がＧＷ３に測定データを送信する通知タイミングである。
【００２０】
次に実施例１のセンサシステム１の動作について説明する。図８は、センサシステム１の処理動作の一例を示す説明図である。センサシステム１は、複数のデバイス２、ＧＷ３及びサーバ４の他に、サーバ４にアクセスするアプリ５を有する。アプリ５は、デバイス２の測定要求をサーバ４に通知する（ステップＳ１）。測定要求は、測定対象のデバイス２を識別するデバイスＩＤと、測定対象の時刻を示す指定時刻と、測定頻度と、測定データの属性を示すデータ属性とを有し、デバイス２の測定動作を要求するコマンドである。サーバ４は、アプリ５からの測定要求に応じてＧＷ３に測定要求を通知する（ステップＳ２）。ＧＷ３内の取得部４１は、測定要求に応じて収集要求を各デバイス２に通知する（ステップＳ３）。尚、収集要求は、各デバイス２に対して測定データの収集を要求するコマンドである。デバイス２は、ＧＷ３からの収集要求に応じて測定データをＧＷ３に通知する（ステップＳ４）。
【００２１】
ＧＷ３内の予測難易度管理部４５は、デバイス２毎の実測データと予測データとの誤差に基づき、デバイス２の予測難易度を算出する予測難易度算出処理を実行する（ステップＳ５）。ＧＷ３内の負荷検出部４３は、指定時刻での通知タイミングが重なるデバイス２の台数が所定台数を超えたか否かを判定する、すなわち通知タイミングの混雑度を判定する負荷判定処理を実行する（ステップＳ６）。
【００２２】
ＧＷ３内の制御部４６は、負荷判定処理にて指定時刻での通知タイミングが重なるデバイス２の台数が所定台数を超えた場合に、デバイス２毎に通知タイミングを割り当てる第１のタイミング割当処理を実行する（ステップＳ７）。制御部４６は、第１のタイミング割当処理で割当てられたデバイス２毎の通知タイミングを収集要求としてデバイス２に通知する（ステップＳ８）。尚、通知タイミングは、デバイス２のセンサ１２の測定時刻及び、デバイス２の測定データをＧＷ３に通知する際のスロットを識別するスロット番号で示す。各デバイス２は、通知タイミングに基づき、センサ１２を通じてデータを測定する。更に、各デバイス２は、ＧＷ３から取得した通知タイミングに基づき、測定データをＧＷ３に通知する（ステップＳ９）。
【００２３】
ＧＷ３は、デバイス２から測定データを受信した場合、指定時刻前、及び指定時刻後の測定データとそれまでに得られている履歴データを用いて指定時刻の予測データを予測するデータ予測処理を実行する（ステップＳ１０）。ＧＷ３は、予測した予測データをサーバ４に通知すると共に、指定時刻以後の測定データの場合、指定時刻に測定した測定データをサーバ４に通知する（ステップＳ１１）。更に、サーバ４は、ＧＷ３からのデバイス２毎の測定データ及び予測データをアプリ５に通知する（ステップＳ１２）。更に、ＧＷ３は、デバイス２毎の予測難易度を更新する予測難易度更新処理を実行する（ステップＳ１３）。
【００２４】
図９は、データ予測処理に関わるＧＷ３内のＣＰＵ３６の処理動作の一例を示すフローチャートである。ＧＷ３内のＣＰＵ３６内の取得部４１は、デバイス２から測定データを受信したか否かを判定する（ステップＳ２１）。尚、測定データは、デバイス２のセンサ１２で測定した測定値と、デバイス２の測定時刻を示すタイムスタンプとを有する。取得部４１は、測定データを受信した場合（ステップＳ２１肯定）、測定データ内のタイムスタンプが指定時刻であるか否かを判定する（ステップＳ２２）。尚、指定時刻は、アプリ５が指定する測定対象の時刻である。
【００２５】
取得部４１は、測定データ内のタイムスタンプが指定時刻の場合（ステップＳ２２肯定）、図９に示す処理動作を終了する。予測部４２は、測定データ内のタイムスタンプが指定時刻でない場合（ステップＳ２２否定）、受信した測定データと過去履歴の指定時刻の測定データとを用いて指定時刻の予測データを予測し（ステップＳ２３）、図９に示す処理動作を終了する。取得部４１は、デバイス２から測定データを受信しなかった場合（ステップＳ２１否定）、図９に示す処理動作を終了する。
【００２６】
ＧＷ３は、デバイス２から測定データを受信した場合、測定データ内のタイムスタンプが指定時刻でない場合、測定データと過去履歴の指定時刻の測定データとを用いて指定時刻の予測データを生成する。その結果、指定時刻前でも指定時刻の測定データを予測できる。
【００２７】
図１０は、予測難易度更新処理に関わるＧＷ３内のＣＰＵ３６の処理動作の一例を示すフローチャートである。ＣＰＵ３６内の予測難易度管理部４５は、デバイス２毎の実測データと予測データとの誤差率に基づき、デバイス２毎の予測難易度を算出し（ステップＳ３１）、デバイス２毎の予測難易度を予測難易度テーブル５２に登録する。
【００２８】
予測難易度管理部４５は、予測難易度テーブル５２を参照し、デバイス２毎の予測難易度に基づき、各デバイス２の今回の予測難易度順位を算出する（ステップＳ３２）。尚、予測難易度順位は、予測難易度が高いデバイス２から予測難易度が低いデバイス２を配列した順位である。予測難易度管理部４５は、今回の予測難易度順位と前回の予測難易度順位とを比較する（ステップＳ３３）。尚、予測難易度テーブル５２は、今回の予測難易度は勿論のこと、過去の予測難易度を管理しているものとする。
【００２９】
予測難易度管理部４５は、比較結果に基づき、今回の予測難易度順位に変化があるか否かを判定する（ステップＳ３４）。予測難易度管理部４５は、今回の予測難易度順位に変化がある場合（ステップＳ３４肯定）、デバイス２毎の通知タイミングを更新する第１のタイミング割当処理を実行し（ステップＳ３５）、図１０に示す処理動作を終了する。予測難易度管理部４５は、今回の予測難易度順位に変化がない場合（ステップＳ３４否定）、図１０に示す処理動作を終了する。
【００３０】
ＧＷ３は、今回の予測難易度順位と前回の予測難易度順位とを比較し、今回の予測難易度順位に変化がある場合、今回の予測難易度順位に基づき、各デバイス２の通知タイミングを割り当てる。その結果、予測難易度順位に応じて、各デバイス２の通知タイミングを変更できる。
【００３１】
図１１は、第１のタイミング割当処理に関わるＧＷ３内のＣＰＵ３６の処理動作の一例を示すフローチャートである。図１１においてＧＷ３内のＣＰＵ３６内の制御部４６内の割当部４６Ａは、予測難易度順位が第１位のデバイス２を指定する（ステップＳ４１）。割当部４６Ａは、属性テーブル５１を参照し、指定デバイス２のデータ属性がリアルタイムであるか否かを判定する（ステップＳ４２）。割当部４６Ａは、指定デバイス２のデータ属性がリアルタイムの場合（ステップＳ４２肯定）、指定時刻以前、かつ、指定時刻に最も近い空きスロットに指定デバイス２の通知タイミングを割り当てる（ステップＳ４３）。そして、割当部４６Ａは、予測難易度順位が次位のデバイス２があるか否かを判定する（ステップＳ４４）。
【００３２】
割当部４６Ａは、予測難易度順位が次位のデバイス２がある場合（ステップＳ４４肯定）、予測難易度順位が次位のデバイス２を指定し（ステップＳ４５）、指定デバイス２のデータ属性がリアルタイムであるか否かを判定すべく、ステップＳ４２に移行する。
【００３３】
割当部４６Ａは、指定デバイス２のデータ属性がリアルタイムでない場合（ステップＳ４２否定）、指定時刻に最も近い空きスロットが指定時刻前後両方にあるか否かを判定する（ステップＳ４６）。割当部４６Ａは、空きスロットが指定時刻前後両方にある場合（ステップＳ４６肯定）、指定時刻後、かつ、指定時刻に最も近い空きスロットに指定デバイス２の通知タイミングを割り当る（ステップＳ４７）。そして、割当部４６Ａは、次位のデバイス２があるか否かを判定すべく、ステップＳ４４に移行する。
【００３４】
割当部４６Ａは、空きスロットが指定時刻前後両方にない場合（ステップＳ４６否定）、指定時刻に最も近い空きスロットに指定デバイス２の通知タイミングを割り当て（ステップＳ４８）、次位のデバイス２があるか否かを判定すべく、ステップＳ４４に移行する。割当部４６Ａは、予測難易度順位が次位のデバイス２がない場合（ステップＳ４４否定）、図１１に示す処理動作を終了する。
【００３５】
ＧＷ３は、予測難易度が高く、かつ、指定デバイス２のデータ属性がリアルタイムの場合、指定時刻以前、かつ、指定時刻に最も近い空きスロットに指定デバイス２の通知タイミングを割り当てる。その結果、予測難易度が高く、かつ、データ属性がリアルタイムである場合、指定時刻以前で、なるべく指定時刻に近いタイミングで測定し、高精度の測定データを確保できる。
【００３６】
ＧＷ３は、指定デバイス２のデータ属性が非リアルタイム、かつ、指定時刻に最も近い空きスロットが指定時刻前後両方にある場合、指定時刻後、かつ、指定時刻に最も近い空きスロットに指定デバイス２の通知タイミングを割り当てる。その結果、データ属性が非リアルタイムのデバイス２であるため、指定時刻後で、なるべく指定時刻に近い通知タイミングを確保できる。
【００３７】
ＧＷ３は、指定デバイス２のデータ属性が非リアルタイム、かつ、指定時刻に最も近い空きスロットが指定時刻前後両方にない場合、指定時刻に最も近い空きスロットに指定デバイス２の通知タイミングを割り当てる。その結果、指定時刻に近い通知タイミングを確保できる。
【００３８】
図１２は、実施例１の各デバイス２のタイミング割当動作の一例を示す説明図である。尚、説明の便宜上、デバイスＡ及びＢのデータ属性がリアルタイム、デバイスＣ、Ｄ及びＥのデータ属性が非リアルタイムとする。更に、予測難易度順位は、デバイスＢの予測難易度が一番高く、デバイスＢ→デバイスＣ→デバイスＥ→デバイスＤ→デバイスＡの順位とする。
【００３９】
ＧＷ３は、予測難易度が高く、データ属性がリアルタイムであるデバイス２に通知タイミングを割り当てる第１のタイミング割当処理を実行することで、指定時刻ｔの空きスロットにデバイスＢの通知タイミングを割り当てる。尚、デバイスＢのスロット番号はｔとする。更に、ＧＷ３は、指定時刻ｔ＋１の空きスロットにデバイスＣの通知タイミングを割り当てる。尚、デバイスＣのスロット番号はｔ＋１とする。ＧＷ３は、指定時刻ｔ−１の空きスロットにデバイスＥの通知タイミングを割り当てる。尚、デバイスＥのスロット番号はｔ−１とする。ＧＷ３は、指定時刻ｔ＋２の空きスロットにデバイスＤの通知タイミングを割り当てる。尚、デバイスＤのスロット番号はｔ＋２とする。ＧＷ３は、指定時刻ｔ−２の空きスロットにデバイスＡの通知タイミングを割り当てる。尚、デバイスＡのスロット番号はｔ−２とする。
【００４０】
実施例１のセンサシステム１では、データ衝突やデータ再送を回避し、指定時刻の測定データを高精度に予測し、アプリ５に提供できる。その結果、データ欠落やデータ遅延を抑制できる。しかも、センサシステム１では、同一優先度のデバイス２が複数存在する場合、データ衝突やデータ再送を回避し、指定時刻の測定データを高精度に予測し、アプリ５に提供できる。
【００４１】
ＧＷ３は、予測難易度が高く、かつ、指定デバイス２のデータ属性がリアルタイムの場合、指定時刻以前、かつ、指定時刻に最も近い空きスロットに指定デバイス２の通知タイミングを割り当てる。その結果、予測難易度が高く、かつ、データ属性がリアルタイムである場合、指定時刻以前で、なるべく指定時刻に近い通知タイミングを確保できる。
【００４２】
ＧＷ３は、指定デバイス２のデータ属性が非リアルタイムの場合、指定時刻後、かつ、指定時刻に最も近い空きスロットに指定デバイス２の通知タイミングを割り当てる。その結果、データ属性が非リアルタイムのデバイス２であるため、指定時刻後で、なるべく指定時刻に近い通知タイミングを確保できる。
【００４３】
尚、上記実施例１では、デバイス２内に記憶媒体を有していない場合を例示したが、デバイス２内に記憶媒体を有する場合の実施の形態につき、実施例２として以下に説明する。尚、実施例１のセンサシステム１と同一の構成には同一符号を付すことで、その重複する構成及び動作の説明については省略する。
【実施例２】
【００４４】
実施例２のデバイス２は、記憶媒体を内蔵し、センサ１２で測定した測定値を記憶媒体に格納できる。図１３は、実施例２の第２のタイミング割当処理に関わるＧＷ３内のＣＰＵ３６の処理動作の一例を示すフローチャートである。図１３においてＧＷ３内のＣＰＵ３６内の制御部４６内の割当部４６Ａは、指定デバイス２のデータ属性がリアルタイムでない場合（ステップＳ４２否定）、指定時刻後、かつ、指定時刻に最も近い空きスロットに指定デバイス２の通知タイミングを割り当てる（ステップＳ５１）。そして、割当部４６Ａは、次位のデバイス２があるか否かを判定すべく、ステップＳ４４に移行する。
【００４５】
ＧＷ３は、指定デバイス２のデータ属性が非リアルタイムの場合、指定時刻後、かつ、指定時刻に最も近い空きスロットに指定デバイス２の通知タイミングを割り当てる。その結果、指定時刻後、かつ、指定時刻に最も近い通知タイミングを確保できる。
【００４６】
ＧＷ３は、予測難易度順位に基づき、指定デバイス２のデータ属性がリアルタイムの場合、指定時刻以前、かつ、指定時刻に最も近い空きスロットに指定デバイス２の通知タイミングを割り当てる。その結果、指定時刻以前、かつ、指定時刻に最も近い通知タイミングを確保できる。
【００４７】
図１４は、実施例２の各デバイス２のタイミング割当動作の一例を示す説明図である。尚、説明の便宜上、デバイスＡ及びＢは、データ属性がリアルタイム、かつ、記憶媒体を内蔵したタイプのデバイスとする。デバイスＣ、Ｄ及びＥは、データ属性が非リアルタイム、かつ、記憶媒体を内蔵したタイプのデバイスとする。予測難易度順位は、デバイスＢ→デバイスＣ→デバイスＥ→デバイスＤ→デバイスＡの順位とする。デバイスＡ〜Ｅは、記憶媒体を有するため、センサ１２で測定した測定データを記憶媒体に格納できる。
【００４８】
ＧＷ３は、第２のタイミング割当処理を実行することで、指定時刻ｔの空きスロットにデバイスＢの通知タイミングを割り当て、指定時刻ｔ＋１の空きスロットにデバイスＣの通知タイミングを割り当てる。ＧＷ３は、指定時刻ｔ＋２の空きスロットにデバイスＥの通知タイミングを割り当てる。ＧＷ３は、指定時刻ｔ＋３の空きスロットにデバイスＤの通知タイミングを割り当てる。ＧＷ３は、指定時刻ｔ−１の空きスロットにデバイスＡの通知タイミングを割り当てる。
【００４９】
実施例２のＧＷ３は、記憶媒体を有し、指定デバイス２のデータ属性が非リアルタイムの場合、指定時刻後、かつ、指定時刻に最も近い空きスロットに指定デバイス２の通知タイミングを割り当てる。その結果、指定時刻後、かつ、指定時刻に最も近い通知タイミングを確保できる。そして、データ欠落やデータ遅延を抑制できる。
【００５０】
ＧＷ３は、予測難易度順位に基づき、記憶媒体を有し、指定デバイス２のデータ属性がリアルタイムの場合、指定時刻以前、かつ、指定時刻に最も近い空きスロットに指定デバイス２の通知タイミングを割り当てる。その結果、指定時刻以前、かつ、指定時刻に最も近い通知タイミングを確保できる。
【００５１】
上記実施例１のデバイス２は記憶媒体を有しないタイプ、上記実施例２のデバイス２は記憶媒体を有するタイプを例示した。そこで、記憶媒体を有するタイプ及び有しないタイプのデバイス２が混在した場合のセンサシステム１の実施の形態につき、実施例３として以下に説明する。尚、実施例１及び実施例２のセンサシステム１と同一の構成には同一符号を付すことで、その重複する構成及び動作の説明については省略する。
【実施例３】
【００５２】
図１５は、第３のタイミング割当処理に関わるＧＷ３内のＣＰＵ３６の処理動作の一例を示すフローチャートである。図１５においてＧＷ３内のＣＰＵ３６内の制御部４６内の割当部４６Ａは、予測難易度テーブル５２を参照し、データ属性がリアルタイムのデバイス２及び記憶媒体なしのデバイス２の予測難易度で第１の予測難易度順位を生成する（ステップＳ６１）。尚、第１の予測難易度順位は、図１６の場合、デバイスＢ→デバイスＣ→デバイスＤ→デバイスＡとなる。割当部４６Ａは、第１の予測難易度順位に他のデバイス２、すなわち非リアルタイム属性、かつ、記憶媒体なしのデバイス２を追加して第２の予測難易度順位を生成する（ステップＳ６２）。尚、第２の予測難易度順位は、図１６の場合、デバイスＢ→デバイスＣ→デバイスＤ→デバイスＡ→デバイスＥとなる。
【００５３】
割当部４６Ａは、第２の予測難易度順位が第１位のデバイス２を指定する（ステップＳ６３）。割当部４６Ａは、属性テーブル５１を参照し、指定デバイス２のデータ属性がリアルタイムであるか否かを判定する（ステップＳ６４）。割当部４６Ａは、指定デバイス２のデータ属性がリアルタイムの場合（ステップＳ６４肯定）、指定時刻以前、かつ、指定時刻に最も近い空きスロットに指定デバイス２の通知タイミングを割り当てる（ステップＳ６５）。そして、割当部４６Ａは、第２の予測難易度順位が次位のデバイス２があるか否かを判定する（ステップＳ６６）。
【００５４】
割当部４６Ａは、第２の予測難易度順位が次位のデバイス２がある場合（ステップＳ６６肯定）、第２の予測難易度順位が次位のデバイス２を指定する（ステップＳ６７）。そして、割当部４６Ａは、指定デバイス２のデータ属性がリアルタイムであるか否かを判定すべく、ステップＳ６４に移行する。
【００５５】
割当部４６Ａは、指定デバイス２のデータ属性がリアルタイムでない場合（ステップＳ６４否定）、指定デバイス２内に記憶媒体があるか否かを判定する（ステップＳ６８）。割当部４６Ａは、指定デバイス２内に記憶媒体がない場合（ステップＳ６８否定）、指定時刻に最も近い空きスロットが指定時刻前後両方にあるか否かを判定する（ステップＳ６９）。割当部４６Ａは、空きスロットが指定時刻前後両方にある場合（ステップＳ６９肯定）、指定時刻後、かつ、指定時刻に最も近い空きスロットに通知タイミングを設定し（ステップＳ７０）、次位のデバイス２があるか否かを判定すべく、ステップＳ６６に移行する。
【００５６】
割当部４６Ａは、空きスロットが指定時刻前後両方にない場合（ステップＳ６９否定）、指定時刻に最も近い空きスロットに通知タイミングを設定し（ステップＳ７１）、次位のデバイス２があるか否かを判定すべく、ステップＳ６６に移行する。割当部４６Ａは、指定デバイス２内に記憶媒体がある場合（ステップＳ６８肯定）、指定時刻後、かつ、指定時刻に最も近い空きスロットに通知タイミングを設定すべく、ステップＳ７０に移行する。割当部４６Ａは、次位のデバイス２がない場合（ステップＳ６６否定）、図１５に示す処理動作を終了する。
【００５７】
ＧＷ３は、データ属性がリアルタイムのデバイス２及び記憶媒体なしのデバイス２で第１の予測難易度順位を生成する。更に、ＧＷ３は、第１の予測難易度順位に残りのデバイス２を追加して第２の予測難易度順位を生成する。ＧＷ３は、第２の予測難易度順位の高い順に、指定デバイス２のデータ属性がリアルタイムの場合、指定時刻以前、かつ、指定時刻に最も近い空きスロットに指定デバイス２の通知タイミングを割り当てる。その結果、第２の予測難易度順位の順位が高く、かつ、データ属性がリアルタイムである場合、指定時刻以前で、なるべく指定時刻に近いタイミングで測定し、高精度の測定データを確保できる。
【００５８】
ＧＷ３は、指定デバイス２のデータ属性が非リアルタイム、かつ、指定デバイス２が記憶媒体を有し、かつ、指定時刻に最も近い空きスロットが指定時刻前後両方にある場合、指定時刻後、かつ、指定時刻に最も近い空きスロットに指定デバイス２の通知タイミングを割り当てる。その結果、記憶媒体を有し、データ属性が非リアルタイムのデバイス２であるため、指定時刻後で、なるべく指定時刻に近い通知タイミングを確保できる。
【００５９】
ＧＷ３は、指定デバイス２のデータ属性が非リアルタイム、かつ、指定デバイス２が記憶媒体なしの場合、指定時刻後、かつ、指定時刻に最も近い空きスロットに指定デバイス２の通知タイミングを割り当てる。その結果、記憶媒体がなく、データ属性が非リアルタイムのデバイス２であるため、指定時刻後で、なるべく指定時刻に近い通知タイミングを確保できる。
【００６０】
ＧＷ３は、指定デバイス２のデータ属性が非リアルタイム、指定デバイス２が記憶媒体あり、かつ、指定時刻に最も近い空きスロットが指定時刻前後両方にない場合、指定時刻に最も近い空きスロットに指定デバイス２の通知タイミングを割り当てる。その結果、記憶媒体を有し、データ属性が非リアルタイムのデバイス２であるため、なるべく指定時刻に近い通知タイミングを確保できる。
【００６１】
図１６は、実施例３の各デバイス２のタイミング割当動作の一例を示す説明図である。尚、説明の便宜上、デバイスＡは、データ属性がリアルタイム、かつ、記憶媒体内蔵タイプのデバイス２、デバイスＢは、データ属性がリアルタイム、かつ、記憶媒体なしのデバイス２とする。デバイスＣは、データ属性が非リアルタイム、かつ、記憶媒体なしのデバイス２、デバイスＤは、データ属性がリアルタイム、かつ、記憶媒体なしのデバイス２、デバイスＥは、データ属性が非リアルタイム、かつ、記憶媒体内蔵タイプのデバイス２とする。第２の予測難易度順位は、デバイスＢ→デバイスＣ→デバイスＤ→デバイスＡ→デバイスＥとする。
【００６２】
ＧＷ３は、第３のタイミング割当処理を実行することで、指定時刻ｔの空きスロットにデバイスＢの通知タイミングを割り当て、指定時刻ｔ＋１の空きスロットにデバイスＣの通知タイミングを割り当てる。ＧＷ３は、指定時刻ｔ−１の空きスロットにデバイスＤの通知タイミングを割り当て、指定時刻ｔ−２の空きスロットにデバイスＡの通知タイミングを割り当てる。ＧＷ３は、指定時刻ｔ＋２の空きスロットにデバイスＥの通知タイミングを割り当てる。
【００６３】
実施例３のＧＷ３は、データ属性がリアルタイムのデバイス２及び記憶媒体なしのデバイス２で第１の予測難易度順位を生成する。更に、ＧＷ３は、第１の予測難易度順位に残りのデバイス２を追加して第２の予測難易度順位を生成する。ＧＷ３は、第２の予測難易度順位の高い順に、指定デバイス２のデータ属性がリアルタイムの場合、指定時刻以前、かつ、指定時刻に最も近い空きスロットに指定デバイス２の通知タイミングを割り当てる。その結果、第２の予測難易度順位の順位が高く、かつ、データ属性がリアルタイムである場合、指定時刻以前で、なるべく指定時刻に近いタイミングで測定し、高精度の測定データを確保できる。そして、データ欠落及びデータ遅延を抑制できる。
【００６４】
ＧＷ３は、指定デバイス２のデータ属性が非リアルタイム、かつ、指定デバイス２が記憶媒体を有し、かつ、指定時刻に最も近い空きスロットが指定時刻前後両方にある場合、指定時刻後、かつ、指定時刻に最も近い空きスロットに指定デバイス２の通知タイミングを割り当てる。その結果、記憶媒体を有し、データ属性が非リアルタイムのデバイス２であるため、指定時刻後で、なるべく指定時刻に近い通知タイミングを確保できる。
【００６５】
ＧＷ３は、指定デバイス２のデータ属性が非リアルタイム、かつ、指定デバイス２が記憶媒体ありの場合、指定時刻後、かつ、指定時刻に最も近い空きスロットに指定デバイス２の通知タイミングを割り当てる。その結果、記憶媒体を有し、データ属性が非リアルタイムのデバイス２であるため、指定時刻後で、なるべく指定時刻に近い通知タイミングを確保できる。
【００６６】
ＧＷ３は、指定デバイス２のデータ属性が非リアルタイム、指定デバイス２が記憶媒体あり、かつ、指定時刻に最も近い空きスロットが指定時刻前後両方にない場合、指定時刻に最も近い空きスロットに指定デバイス２の通知タイミングを割り当てる。その結果、記憶媒体がなく、データ属性が非リアルタイムのデバイス２であるため、なるべく指定時刻に近い通知タイミングを確保できる。
【００６７】
尚、上記実施例１乃至３のＧＷ３は、予測難易度順位に基づき、各デバイス２の通知タイミングを割り当てるようにした。しかしながら、ＧＷ３は、センサシステム１の起動時に得た予測難易度順位に基づき、各デバイス２の通知タイミングを変更した後、運用中では状況変化に応じて各デバイス２の通知タイミングを変更するようにしても良く、適宜変更可能である。その場合の実施の形態につき、実施例４として以下に説明する。
【実施例４】
【００６８】
図１７は、実施例４のＧＷ３内のＣＰＵ３６Ａの機能構成の一例を示す説明図である。ＣＰＵ３６Ａは、取得部４１と、予測部４２と、負荷検出部４３と、属性管理部４４と、予測難易度管理部４５と、制御部４６１とを有する。制御部４６１は、割当部４６Ｂを有する。メモリ３５は、属性テーブル５１及び予測難易度テーブル５２の他に、状況テーブル５３を有する。
【００６９】
図１８は、状況テーブル５３の構成の一例を示す説明図である。状況テーブル５３は、状況５３Ａと、通知タイミング５３Ｂとを対応付けて記憶する。状況５３Ａは、時刻及び天候、例えば、１２：００：晴、１２：００:雨等である。通知タイミング５３Ｂは、通信スロットを識別するスロットＩＤ毎に通知タイミングのデバイス２を識別するデバイスＩＤである。制御部４６１内の割当部４６Ｂは、現在の状況が時刻「１２：００」、天候が「晴」の場合、この状況に対応する通知タイミング（デバイスＡ→デバイスＥ→デバイスＢ→デバイスＣ→デバイスＤ）を状況テーブル５３から取得する。割当部４６Ｂは、取得した通知タイミングに基づき、各デバイス２に通知タイミングを通知する。また、割当部４６Ｂは、現在の状況が時刻「１８：００」、天候が「雨」の場合、この状況に対応する通知タイミング（デバイスＢ→デバイスＣ→デバイスＡ→デバイスＤ→デバイスＥ）を状況テーブル５３から取得する。割当部４６Ｂは、取得した通知タイミングに基づき、各デバイス２に通知タイミングを通知する。
【００７０】
図１９は、第４のタイミング割当処理に関わるＧＷ３内のＣＰＵ３６Ａの処理動作の一例を示すフローチャートである。ＣＰＵ３６Ａ内の制御部４６１内の割当部４６Ｂは、状況の変化を検出したか否かを判定する（ステップＳ８１）。尚、割当部４６Ｂは、現在の状況を検出し、その現在の状況と設定中の状況との変化で状況の変化を検出する。割当部４６Ｂは、状況の変化を検出した場合（ステップＳ８１肯定）、状況テーブル５３から現在の状況に対応する通知タイミングを取得する（ステップＳ８２）。
【００７１】
割当部４６Ｂは、取得した通知タイミングと現在の通知タイミングとを比較し（ステップＳ８３）、比較結果に基づき、通知タイミングに変化があるか否かを判定する（ステップＳ８４）。尚、割当部４６Ｂは、現在の通知タイミングを管理している。割当部４６Ｂは、通知タイミングに変化がある場合（ステップＳ８４肯定）、取得した通知タイミングに変更し（ステップＳ８５）、図１９に示す処理動作を終了する。
【００７２】
割当部４６Ｂは、通知タイミングに変化がない場合（ステップＳ８４否定）、図１９に示す処理動作を終了する。割当部４６Ｂは、状況の変化を検出しなかった場合（ステップＳ８１否定）、図１９に示す処理動作を終了する。
【００７３】
実施例４のＧＷ３は、状況の変化を検出した場合、状況テーブル５３から状況に対応する通知タイミングを取得し、取得した通知タイミングと設定中の通知タイミングとを比較し、取得した通知タイミングに変化がある場合、現在の通知タイミングに変更する。その結果、ＧＷ３は、運用中の場合、予測難易度を考慮することなく、現在の状況に応じた通知タイミングに変更できる。
【００７４】
上記実施例のセンサシステム１では、デバイス２とＧＷ３との間を無線通信で実行したが、例えば、ブルートゥース（登録商標）、ＷｉＦｉ（登録商標）ダイレクト等の無線ＬＡＮ通信等の近距離無線通信、通常無線通信、有線通信で実現しても良い。また、ＧＷ３とサーバ４との間も有線通信で実行したが、無線ＬＡＮ通信等で実行しても良く、適宜変更可能である。
【００７５】
上記実施例のＧＷ３は、例えば、タブレット端末やスマートフォン等で実行しても良く、サーバ４も、例えば、タブレット端末やスマートフォン等で実行しても良く、適宜変更可能である。また、ＧＷ３の機能をサーバ４が実行しても良く、適宜変更可能である。
【００７６】
上記実施例のアプリ５は、サーバ４から各デバイス２の測定データを取得したが、ＧＷ３から各デバイス２の測定データを取得しても良く、適宜設定変更可能である。
【００７７】
上記実施例では、所定時間間隔に時分割した空きスロットに各デバイス２に通知タイミングを割り当てるようにしたが、デバイス２の測定データの容量が１スロット以内で送信できない場合は２スロットを当該デバイス２の通知タイミングに割当てるものとする。
【００７８】
また、図示した各部の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各部の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。
【００７９】
更に、各装置で行われる各種処理機能は、ＣＰＵ（Central  Processing  Unit）、ＤＳＰ（Digital  Signal  Processor）やＦＰＧＡ（Field  Programmable  Gate  Array）等上で、その全部又は任意の一部を実行するようにしても良い。また、各種処理機能は、ＣＰＵ等で解析実行するプログラム上、又はワイヤードロジックによるハードウェア上で、その全部又は任意の一部を実行するようにしても良い。
【００８０】
各種情報を記憶する領域は、例えば、ＲＯＭ（Read  Only  Memory）や、ＳＤＲＡＭ（Synchronous  Dynamic  Random  Access  Memory）、ＭＲＡＭ（Magnetoresistive  Random  Access  Memory）やＮＶＲＡＭ（Non  Volatile  Random  Access  Memory）等のＲＡＭ（Random  Access  Memory）で構成しても良い。
【符号の説明】
【００８１】
１  センサシステム
２  デバイス
３  ＧＷ
４１  取得部
４２  予測部
４５Ａ  算出部
４６  制御部
４６Ａ  割当部
４６Ｂ  割当部
４６１  制御部
【図１】
2018101962.tif 000004
【図２】
2018101962.tif 000005
【図３】
2018101962.tif 000006
【図４】
2018101962.tif 000007
【図５】
2018101962.tif 000008
【図６】
2018101962.tif 000009
【図７】
2018101962.tif 000010
【図８】
2018101962.tif 000011
【図９】
2018101962.tif 000012
【図１０】
2018101962.tif 000013
【図１１】
2018101962.tif 000014
【図１２】
2018101962.tif 000015
【図１３】
2018101962.tif 000016
【図１４】
2018101962.tif 000017
【図１５】
2018101962.tif 000018
【図１６】
2018101962.tif 000019
【図１７】
2018101962.tif 000020
【図１８】
2018101962.tif 000021
【図１９】
2018101962.tif 000022