(57)【要約】【課題】サービス品質を向上させる通信制御装置、通信制御システム、通信制御方法及び通信制御プログラムを提供する。【解決手段】データ取得部１１は、所定の処理を実行するための通知情報をＢＬＥデバイス２１のそれぞれから繰り返し取得する。接続制御部１２は、ＢＬＥデバイス２０を検出し、データ取得部１１により既に取得された通知情報を基に、各ＢＬＥデバイス２１から取得する通知情報のそれぞれの所定の処理への影響を数値化した値を求め、求めた影響を数値化した値を基にＢＬＥデバイス２１を選択し、データ取得部１１による選択したＢＬＥデバイス２１からの通知情報の取得を停止させ、ＢＬＥデバイス２０との接続を確立する。【選択図】図２
2018174447.tif 000002
【特許請求の範囲】
【請求項１】
所定の処理を実行するための通知情報を複数の端末装置のそれぞれから繰り返し取得するデータ取得部と、
接続可能な特定の端末装置を検出し、前記データ取得部により既に取得された前記通知情報を基に、各前記端末装置から取得する前記通知情報のそれぞれの前記所定の処理への影響を数値化した値を求め、求めた前記影響を数値化した値を基に前記端末装置を選択し、前記データ取得部による選択した前記端末装置からの前記通知情報の取得を待機させ、前記特定の端末装置との接続を確立する接続制御部と
を備えたことを特徴とする通信制御装置。
【請求項２】
前記データ取得部は、各前記通知情報を取得した際の各前記通知情報の送信元の各前記端末装置との間の通信状態を取得し、
前記接続制御部は、前記データ取得部により既に取得された前記通知情報及び前記通信状態を基に前記影響を数値化した値を求める
ことを特徴とする請求項１に記載の通信制御装置。
【請求項３】
前記接続制御部は、前記影響を数値化した値が閾値以下となる端末装置のうち、前記通知情報を取得するタイミングが最も直近の前記端末装置を選択することを特徴とする請求項１又は２に記載の通信制御装置。
【請求項４】
前記接続制御部は、前記特定の端末装置の接続が再接続か否かを判定し、前記再接続の場合、前記データ取得部により既に取得された前記通知情報を基に、前記特定の端末装置から取得する前記通知情報の前記所定の処理への影響を数値化した特定値を求め、前記特定値を用いて前記端末装置を選択することを特徴とする請求項１〜３のいずれか一つに記載の通信制御装置。
【請求項５】
前記データ取得部は、前記接続制御部による前記特定の端末装置との接続の確立後、前記特定の端末装置から前記通知情報を取得することを特徴とする請求項１〜４のいずれか一つに記載の通信制御装置。
【請求項６】
通信制御装置、複数の端末装置、及び、処理実行装置を有する通信制御システムであって、
前記端末装置は、
通知情報の取得を繰り返す取得部と、
前記取得部による取得された前記通知情報を前記通信制御装置へ送信する送信部とを備え、
前記処理実行装置は、各前記端末装置から送信されたそれぞれの前記通知情報を用いて所定の処理を実行し、
前記通信制御装置は、
前記通知情報を複数の端末装置のそれぞれから取得するデータ取得部と、
接続可能な特定の端末装置を検出し、前記データ取得部により既に取得された前記通知情報を基に、各前記端末装置から取得する前記通知情報のそれぞれの前記所定の処理への影響を数値化した値を求め、求めた前記影響を数値化した値を基に前記端末装置を選択し、前記データ取得部による選択した前記端末装置からの前記通知情報の取得を待機させ、前記特定の端末装置との接続を確立する接続制御部と
を備えたことを特徴とする通信制御システム。
【請求項７】
所定の処理を実行するための通知情報を複数の端末装置のそれぞれから取得し、
接続可能な特定の端末装置を検出し、
既に取得した前記通知情報を基に、各前記端末装置から取得する前記通知情報のそれぞれの前記所定の処理への影響を数値化した値を求め、
求めた前記影響を数値化した値を基に前記端末装置を選択し、
選択した前記端末装置からの前記通知情報の取得を待機し、前記特定の端末装置との接続を確立し、
各前記端末装置及び前記特定の端末装置から前記通知情報を取得する
ことを特徴とする通信制御方法。
【請求項８】
所定の処理を実行するための通知情報を複数の端末装置のそれぞれから取得し、
接続可能な特定の端末装置を検出し、
既に取得した前記通知情報を基に、各前記端末装置から取得する前記通知情報のそれぞれの前記所定の処理への影響を数値化した値を求め、
求めた前記影響を数値化した値を基に前記端末装置を選択し、
選択した前記端末装置からの前記通知情報の取得を待機し、前記特定の端末装置との接続を確立し、
各前記端末装置及び前記特定の端末装置から前記通知情報を取得する
処理をコンピュータに実行させることを特徴とする通信制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信制御装置、通信制御システム、通信制御方法及び通信制御プログラムに関する。
【背景技術】
【０００２】
近年、センサ又は所定の情報を収集する機器などの多数のデバイスからデータを収集し、サービスに活用するＩｏＴ（Internet  of  Things）ソリューションが普及してきている。ＩｏＴソリューションとしては、例えば、工場の生産性及び品質向上、又は、エネルギー利用効率化のためのソリューションなどが挙げられる。
【０００３】
また、ＩｏＴで用いられるデバイスとして、最近ではＢＬＥ（Bluetooth（登録商標）  Low  Energy）デバイスの使用が増加している。ＢＬＥは、近距離無線通信規格であるため、電波の届く範囲に配置されたＧＷ（Gate  Way）装置を経由してＢＬＥデバイスから送出されるデータである通知情報をセンタサーバに収集するような構成が用いられることが多い。ＧＷ装置によるＢＬＥデバイスからのデータ取得方法には、２つの方法がある。いずれの方法においても、ＧＷ装置がＢＬＥデバイスの検出のための処理であるスキャンという処理と、ＢＬＥデバイスが自己の存在を通知するメッセージであるａｄｖｅｒｔｉｓｅメッセージが用いられる。
【０００４】
一方のデータ取得方法では、ＧＷ装置は、スキャンを実行中にＢＬＥデバイスから出力されたａｄｖｅｒｔｉｓｅメッセージを受信した場合、ａｄｖｅｒｔｉｓｅメッセージの出力元のＢＬＥデバイスとデータの送受信を行い、通知情報を取得する。以下では、このデータ取得方法を用いて通知情報を送信するＢＬＥデバイスを「ビーコン型」のＢＬＥデバイスという。ビーコン型のＢＬＥデバイスの中には、ａｄｖｅｒｔｉｓｅメッセージの中に通知情報を組み込みＧＷ装置へ送信する種類の装置も含まれる。
【０００５】
また、他方のデータ取得方法では、ＧＷ装置は、スキャンを実行中にＢＬＥデバイスから出力されたａｄｖｅｒｔｉｓｅメッセージを受信した場合、ａｄｖｅｒｔｉｓｅメッセージの出力元のＢＬＥデバイスとの間で接続処理を行う。そして、ＧＷ装置は、接続処理が完了し接続が確立したＢＬＥデバイスとデータの送受信を行い、通知情報を取得する。既に接続が確立しているＢＬＥデバイスから通知情報を取得する場合には、ＧＷ装置は、スキャン、ａｄｖｅｒｔｉｓｅメッセージの受信及び接続処理を行わずに、通知情報を取得する。以下では、このデータ取得方法を用いて通知情報を送信するＢＬＥデバイスを「接続型」のＢＬＥデバイスという。
【０００６】
ここで、ＧＷ装置は、接続型のＢＬＥデバイスとの間における接続処理の実行中に、スキャンやデータの送受信を行うと接続処理が終了してしまい、ＢＬＥデバイスとの間の接続が確立しない。このことから、ＧＷ装置は、接続処理中はスキャンによるＢＬＥデバイスの検出及び他のＢＬＥデバイスからの通知情報の取得は行わない。そのため、１つのＧＷ装置の配下に複数のＢＬＥデバイスがある場合、ＧＷ装置は、接続型のＢＬＥデバイスとの接続処理を行うと、その間は他のＢＬＥデバイスが送信する通知情報を取得しない。そのため、通知情報の欠落が発生し、ＢＬＥデバイスの通知情報を提供するサービスの品質が低下してしまう。
【０００７】
このようなサービスの低下を回避するため、いくつかの方法が考えらえる。例えば、ＧＷ装置が複数のインタフェースを持つ方法が考えらえる。これにより、ＧＷ装置は、接続処理とスキャンによるＢＬＥデバイスの検出及び他のＢＬＥデバイスからの通知情報の取得とを並行して行うことが可能となる。また、例えば、他のＢＬＥデバイスからの通知情報の受信間隔を監視し、データの送受信を行わない時間帯に接続処理を実行する方法がある。
【０００８】
また、通信制御の技術として、電波環境の悪い端末の接続の優先度を下げて複数の端末との接続を行う従来技術がある。また、輻輳時に、遅延可能なデータの転送を遅延させる従来技術がある。また、送受信するデータが提供するサービスの種類に応じてチャネル時間の割り当てを変更する従来技術がある。さらに、近距離無線通信を行う機器に優先度を付加して優先度順に接続を行う従来技術がある。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２０１３−２１１８１５号公報
【特許文献２】特表２００６−５２０５５０号公報
【特許文献３】特開２００５−１９８３０５号公報
【特許文献４】特開２００６−３１９９４６号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかしながら、ＧＷ装置に複数のインタフェースを搭載する方法では、運用後に通信インタフェースの追加が要求されることが考えられるが、導入及び運用のコストが大きくなるため追加が困難である。すなわち、接続型のＢＬＥデバイスの追加時の他のＢＬＥデバイスの通知情報の取得への影響を抑えることは困難であり、サービス品質が低下するおそれがある。また、他のＢＬＥデバイスがデータの送受信を行わない時間帯に接続処理を実行する方法では、ＢＬＥデバイスが多数存在する場合には隙間の時間が短くなり接続が完了しないおそれがある。また、電波状況の悪化などから隙間の時間を用いた接続に時間がかかってしまった場合、他のＢＬＥデバイスの通知情報を取りこぼしてしまうおそれがある。
【００１１】
また、電波環境の悪い端末の接続の優先度を下げて複数の端末との接続を行う従来技術を用いても、接続型のＢＬＥデバイスの接続による他のＢＬＥデバイスの情報取得への影響を軽減することは困難であり、サービス品質が低下するおそれがある。これは、輻輳時に遅延可能なデータの転送を遅延させる従来技術や、サービスの種類に応じてチャネル時間の割り当てを変更する従来技術や、優先度順に接続を行う従来技術を用いても同様である。
【００１２】
開示の技術は、上記に鑑みてなされたものであって、サービス品質を向上させる通信制御装置、通信制御システム、通信制御方法及び通信制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
本願の開示する通信制御装置、通信制御システム、通信制御方法及び通信制御プログラムの一つの態様において、データ取得部は、所定の処理を実行するための通知情報を複数の端末装置のそれぞれから繰り返し取得する。接続制御部は、接続可能な特定の端末装置を検出し、前記データ取得部により既に取得された前記通知情報を基に、各前記端末装置から取得する前記通知情報のそれぞれの前記所定の処理への影響を数値化した値を求め、求めた前記影響を数値化した値を基に前記端末装置を選択し、前記データ取得部による選択した前記端末装置からの前記通知情報の取得を待機させ、前記特定の端末装置との接続を確立する。
【発明の効果】
【００１４】
１つの側面では、本発明は、サービス品質を向上させることができる。
【図面の簡単な説明】
【００１５】
【図１】図１は、情報収集システムのシステム構成図である。
【図２】図２は、ＧＷ装置のブロック図である。
【図３】図３は、通知情報テーブルの一例を表す図である。
【図４】図４は、電波強度テーブルの一例を表す図である。
【図５】図５は、デバイステーブルの一例を表す図である。
【図６】図６は、必要度テーブルの一例を表す図である。
【図７】図７は、実施例１に係るＧＷ装置による接続処理のシーケンス図である。
【図８】図８は、必要度算出処理のフローチャートである。
【図９】図９は、接続タイミング決定処理のフローチャートである。
【図１０】図１０は、各ＢＬＥデバイスの必要度の違いによる接続タイミングの変化を説明するための図である。
【図１１】図１１は、再接続における接続タイミング決定処理のフローチャートである。
【図１２】図１２は、再接続における接続対象のＢＬＥデバイスの必要度の違いによる接続タイミングの変化を説明するための図である。
【図１３】図１３は、ＧＷ装置のハードウェア構成図である。
【図１４】図１４は、ＢＬＥデバイスのハードウェア構成図である。
【発明を実施するための形態】
【００１６】
以下に、本願の開示する通信制御装置、通信制御システム、通信制御方法及び通信制御プログラムの実施例を図面に基づいて詳細に説明する。なお、以下の実施例により本願の開示する通信制御装置、通信制御システム、通信制御方法及び通信制御プログラムが限定されるものではない。
【実施例１】
【００１７】
図１は、情報収集システムのシステム構成図である。図１に示すように、本実施例に係る情報収集システム１００は、ＧＷ装置１、ＢＬＥデバイス２、センタサーバ３及びアプリケーションサーバ４を有する。この情報収集システム１００が、「通信制御システム」の一例にあたる。
【００１８】
アプリケーションサーバ４は、ＢＬＥデバイス２から通知された通知情報の送信要求をセンタサーバ３へ送信する。その後、アプリケーションサーバ４は、指定した通知情報をセンタサーバ３から取得する。そして、アプリケーションサーバ４は、収集した通知情報を用いて所定の処理を行う。このアプリケーションサーバ４が、「処理実行装置」の一例にあたる。
【００１９】
本実施例では、アプリケーションサーバ４は、ＢＬＥデバイス２から通知された通知情報により異常の発生を検知するための異常値をＢＬＥデバイス２毎に有する。アプリケーションサーバ４は、異常値を用いて異常を判定するための判定条件をセンタサーバ３へ送信する。
【００２０】
センタサーバ３は、１つ又は複数のＧＷ装置１と接続される。センタサーバ３は、ＢＬＥデバイス２から収集された通知情報を接続されたＧＷ装置１から受信する。そして、センタサーバ３は、受信した通知情報を蓄積する。その後、センタサーバ３は、アプリケーションサーバ４から送信要求を受信すると、蓄積した通知情報の中から指定されたデータを取り出してアプリケーションサーバ４へ送信する。
【００２１】
また、センタサーバ３は、各ＢＬＥデバイス２の判定条件をアプリケーションサーバ４から受信する。そして、センタサーバ３は、受信した各ＢＬＥデバイス２の判定条件を、各ＢＬＥデバイス２が接続されたＧＷ装置１へ送信する。
【００２２】
ここで、図１では、センタサーバ３とアプリケーションサーバ４とを別のサーバとして記載したが、実際には１つの装置にセンタサーバ３及びアプリケーションサーバ４の機能を搭載させてもよい。
【００２３】
ＧＷ装置１は、複数のＢＬＥデバイス２が接続される。以下では、ＧＷ装置１に接続されたＢＬＥデバイス２を、そのＧＷ装置１の配下のＢＬＥデバイス２という。ＢＬＥデバイス２は、多数配置されるため、ＧＷ装置１の管理可能台数を超える場合が多く、また、１台のＧＷ装置１の負荷軽減のために、１つのセンタサーバ３に対してＧＷ装置１は複数配置されることが多い。
【００２４】
ＧＷ装置１は、スキャンを実行し、一定時間間隔でａｄｖｅｒｔｉｓｅメッセージを配下のＢＬＥデバイス２から受信する。ＢＬＥデバイス２がビーコン型の場合、ＧＷ装置１は、ａｄｖｅｒｔｉｓｅメッセージの送信元のＢＬＥデバイス２にデータの送信要求を送信する。その後、ＧＷ装置１は、送信要求への応答として、通知情報をデータの送信要求の送信先のＢＬＥデバイス２から受信する。このＧＷ装置１が、「通信制御装置」の一例にあたる。
【００２５】
また、ＢＬＥデバイス２が接続型の場合、ＧＷ装置１は、ａｄｖｅｒｔｉｓｅメッセージの送信元のＢＬＥデバイス２との間で接続処理を実行し接続を確立する。接続確立後、ＧＷ装置１は、接続を確立したＢＬＥデバイス２に対して一定時間間隔でデータの送信要求を送信する。その後、ＧＷ装置１は、送信要求への応答として、通知情報をデータの送信要求の送信先のＢＬＥデバイス２から受信する。接続処理については後で詳細に説明する。
【００２６】
ＢＬＥデバイス２は、予め決められた情報を取得する。例えば、ＢＬＥデバイス２は、設置された場所の温度の情報や湿度の情報を取得する。そして、ＢＬＥデバイス２は、取得した情報を通知情報としてＧＷ装置１へ送信する。このＢＬＥデバイス２が、「端末装置」の一例にあたる。
【００２７】
次に、図２を参照して、ＧＷ装置１による接続型のＢＬＥデバイス２の接続処理について説明する。図２は、ＧＷ装置のブロック図である。ＢＬＥデバイス２１は、既に通知情報をＧＷ装置１へ送信したことのあるＢＬＥデバイス２である。接続型又はビーコン型の何れでもよい。接続型の場合、ＢＬＥデバイス２１は、既にＧＷ装置１に接続されているＢＬＥデバイス２である。ＢＬＥデバイス２１は、複数存在する。以下では、ＧＷ装置１が、通知情報の受信を継続中のＢＬＥデバイス２をデータ収集デバイスという場合がある。また、ＢＬＥデバイス２０は、これから接続処理が行われる接続型のＢＬＥデバイス２である。以下では、これから接続処理が行われる接続型のＢＬＥデバイス２を、接続対象のＢＬＥデバイスという。
【００２８】
図２に示すように、ＧＷ装置１は、データ取得部１１、接続制御部１２、必要度管理部１３、通知情報管理部１４、電波強度管理部１５及びデバイス管理部１６を有する。
【００２９】
データ取得部１１は、データの送信要求などを行い、通知情報をＢＬＥデバイス２１から受信する。そして、データ取得部１１は、受信した通知情報及び取得時刻を通知情報管理部１４へ出力する。また、データ取得部１１は、通知情報を含むパケットの受信時に、受信したパケットを用いてＢＬＥデバイス２１との間の電波強度を含む接続状況を取得する。そして、データ取得部１１は、電波強度を電波強度管理部１５へ出力する。この電波強度を含む接続状況が、「通信状態」の一例にあたる。
【００３０】
また、データ取得部１１は、ＢＬＥデバイス２０の接続完了の通知を接続制御部１２から受ける。その後、データ取得部１１は、ＢＬＥデバイス２０から通知情報の受信を開始し、受信したＢＬＥデバイス２０からの通知情報を通知情報管理部１４へ出力する。また、データ取得部１１は、ＢＬＥデバイス２０との間の電波強度を電波強度管理部１５へ出力する。
【００３１】
通知情報管理部１４は、記憶装置を有する。そして、通知情報管理部１４は、自己の記憶装置の中に図３に示すような通知情報テーブル１４１を有する。図３は、通知情報テーブルの一例を表す図である。
【００３２】
通知情報管理部１４は、送信元のＢＬＥデバイス２１の識別情報とともに通知情報及び取得時刻の入力をデータ取得部１１から受ける。ここでは、通知情報管理部１４は、ＢＬＥデバイス２１の識別情報として、デバイスＩＤ（Identifier）を取得する。そして、通知情報管理部１４は、デバイスＩＤに対応させて、取得した通知情報及び取得時刻を通知情報テーブル１４１に登録する。また、通知情報管理部１４は、送信元のＢＬＥデバイス２１の識別情報及び通知情報をセンタサーバ３へ送信する。
【００３３】
電波強度管理部１５は、記憶装置を有する。そして、電波強度管理部１５は、自己の記憶装置の中に図４に示すような電波強度テーブル１５１を有する。図４は、電波強度テーブルの一例を表す図である。
【００３４】
電波強度管理部１５は、電波強度を取得したパケットの送信元のＢＬＥデバイス２１の識別情報とともに電波強度の入力をデータ取得部１１から受ける。電波強度管理部１５も、ＢＬＥデバイス２１の識別情報として、デバイスＩＤを取得する。そして、電波強度管理部１５は、デバイスＩＤに対応させて、取得した電波強度を電波強度テーブル１５１に登録する。
【００３５】
デバイス管理部１６は、記憶装置を有する。そして、デバイス管理部１６は、ＢＬＥデバイス２１が登録されたデバイステーブル１６１を自己の記憶装置の中に有する。図５は、デバイステーブルの一例を表す図である。
【００３６】
ここで、デバイス管理部１６は、ＢＬＥデバイス２１の判定条件をセンタサーバ３から受信する。そして、デバイス管理部１６は、受信した判定条件をＢＬＥデバイス２１に対応させてデバイステーブル１６１に登録する。ここで、判定条件は、異常状態を判定するための閾値である異常値と、その異常値を用いて判定するための条件を有する。例えば、図５に示す温度が４０℃より大きいという判定条件の場合、異常値は４０℃である。
【００３７】
ＢＬＥデバイス２０との間の接続が確立された後に、デバイス管理部１６は、ＢＬＥデバイス２０の識別情報であるデバイスＩＤ及びデータ取得周期を接続制御部１２から取得する。そして、デバイス管理部１６は、ＢＬＥデバイス２０のエントリをデバイステーブル１６１に追加する。その後、デバイス管理部１６は、センタサーバ３から受信したＢＬＥデバイス２１の判定条件をデバイステーブル１６１に登録する。
【００３８】
さらに、デバイス管理部１６は、データ取得部１１からデータの取得元であるＢＬＥデバイス２１を含むＢＬＥデバイス２の情報を取得する。そして、デバイス管理部１６は、デバイステーブル１６１においてデータ収集中か否かを表す情報をＢＬＥデバイス２毎に付加する。例えば、図５において、データ収集中という項目において丸がついているＢＬＥデバイス２は、通知情報の受信の対象としているＢＬＥデバイス２を表す。また、データ収集中という項目において丸がついていないＢＬＥデバイス２は、通知情報の受信の対象から外れたＢＬＥデバイス２を表す。ここで、通知情報の受信の対象から外れたＢＬＥデバイス２とは、例えば、通知情報の受信を行っていたが、電波状況が悪くなり通知情報が取得困難となったＢＬＥデバイス２である。本実施例では、通知情報の受信の対象から外れたＢＬＥデバイス２の情報をデバイステーブル１６１に残したが、デバイス管理部１６は、通知情報の受信の対象から外れたＢＬＥデバイス２の情報をデバイステーブル１６１から削除してもよい。
【００３９】
必要度管理部１３は、記憶装置を有する。そして、必要度管理部１３は、自己の記憶装置に図６に示す必要度テーブル１３１を記憶する。ここで、図６は、必要度テーブルの一例を表す図である。必要度については、後で詳細に説明する。
【００４０】
接続制御部１２は、ＢＬＥデバイス２０からａｄｖｅｒｔｉｓｅメッセージを受信する。接続制御部１２は、ａｄｖｅｒｔｉｓｅメッセージの送信元のＢＬＥデバイス２０を接続対象のＢＬＥデバイス２０として検出する。次に、接続制御部１２は、接続対象であるＢＬＥデバイス２０との接続処理を行うタイミングを決定する処理を実行する。以下に、ＢＬＥデバイス２０との接続処理を行うタイミングを決定する処理の詳細について説明する。
【００４１】
接続制御部１２は、デバイス管理部１６が有するデバイステーブル１６１からデータ収集中のＢＬＥデバイス２１を抽出する。次に、接続制御部１２は、抽出したデータ収集中のＢＬＥデバイス２１の中から１つ選択する。
【００４２】
次に、接続制御部１２は、選択したＢＬＥデバイス２１の一定時間前からその時点までにおける通知情報を通知情報管理部１４か有する通知情報テーブル１４１から取得する。ここで、例えば、ＢＬＥデバイス２１が１〜１０秒毎に計測値を通知情報として送信する場合であれば、接続制御部１２は、一定時間を１０分などとする。そして、接続制御部１２は、取得した通知情報の平均値及び分散値を求める。
【００４３】
次に、接続制御部１２は、選択したＢＬＥデバイス２１の異常値をデバイス管理部１６が有するデバイステーブル１６１から取得する。そして、接続制御部１２は、求めた通知情報の平均値と取得した異常値の差分を求める。
【００４４】
さらに、接続制御部１２は、選択したＢＬＥデバイス２１の電波強度を電波強度管理部１５が有する電波強度テーブル１５１から取得する。
【００４５】
そして、接続制御部１２は、平均値と異常値との差分、通知情報の分散値及び電波強度を次の数式１に用いて、選択したＢＬＥデバイス２１の必要度を計算する。
【００４６】
【数１】
2018174447.tif 000003
【００４７】
ここで、必要度は、通知情報の平均値と異常値との差分が大きいほど小さくなる。すなわち、直近の通知情報が異常値に近く、異常が発生する可能性が高い場合に必要度は高くなる。また、必要度は、変化量が大きいほど大きくなる。すなわち、変化量が大きく次に送られてくる通知情報が予測できず、異常が発生する可能性が高い場合に必要度は高くなる。また、必要度は、電波強度が強いほど小さくなる。すなわち、電波状況が悪く通知情報が取得できる可能性が低いために取得に挑戦する回数を増やしたほうが良いＢＬＥデバイス２の必要度が高くなる。言い換えれば、必要度は、アプリケーションサーバ４が実行する所定の処理に対して与える影響を数値化した値といえる。
【００４８】
接続制御部１２は、算出した必要度を必要度管理部１３へ出力する。接続制御部１２は、上述した必要度の算出処理を繰り返して全てのＢＬＥデバイス２１の必要度を求める。
【００４９】
次に、接続制御部１２は、必要度管理部１３が有する必要度テーブル１３１に登録されたＢＬＥデバイス２１の情報を必要度の降順にソートする。そして、接続制御部１２は、ソートされた必要度テーブル１３１の情報の中から、必要度が高い順にＢＬＥデバイス２１を順次選択する。
【００５０】
ここで、接続制御部１２は、各ＢＬＥデバイス２１の次回の通知情報の取得をスキップしてよいか否かを判定するための必要度の閾値を予め記憶する。そして、接続制御部１２は、選択したＢＬＥデバイス２１の必要度が閾値未満か否かを判定する。選択したＢＬＥデバイス２１の必要度が閾値以上の場合、接続制御部１２は、次のＢＬＥデバイス２１の判定に移行する。
【００５１】
これに対して、選択したＢＬＥデバイス２１の必要度が閾値未満の場合、接続制御部１２は、デバイス管理部１６が有するデバイステーブル１６１から選択したＢＬＥデバイス２１のデータ取得周期を取得する。そして、接続制御部１２は、選択したＢＬＥデバイス２１の次回の通知情報の取得のタイミングを求める。次回の通知情報の取得のタイミングは、例えば、その時点から次回の通知情報の取得までの時間である。
【００５２】
そして、接続制御部１２は、求めた選択したＢＬＥデバイス２１の次回の通知情報の取得のタイミングを記憶し、次のＢＬＥデバイス２１の判定に移行する。接続制御部１２は、順次判定を繰り返してデータ収集中の全てのＢＬＥデバイス２１の判定を行う。その後、接続制御部１２は、ＢＬＥデバイス２１の中に必要度が閾値未満のＢＬＥデバイス２が存在したか否かを判定する。
【００５３】
必要度が閾値未満のＢＬＥデバイス２が存在する場合、接続制御部１２は、必要度が閾値未満のＢＬＥデバイス２１の中で、次回の通知情報の取得のタイミングが最も直近のＢＬＥデバイス２１を特定する。そして、接続制御部１２は、特定したＢＬＥデバイス２１の次回の通知情報の取得のタイミングで、接続対象のＢＬＥデバイス２０の接続処理を実行すると決定する。
【００５４】
一方、ＢＬＥデバイス２１の必要度が閾値以上の場合、接続制御部１２は、必要度が最低のＢＬＥデバイス２１を特定する。そして、接続制御部１２は、特定したＢＬＥデバイス２１の次回の通知情報の取得のタイミングで、接続対象のＢＬＥデバイス２０の接続処理を実行すると決定する。
【００５５】
その後、特定したＢＬＥデバイス２１の次回の通知情報の取得のタイミングが到来すると、接続制御部１２は、接続対象のＢＬＥデバイス２０の接続処理を実行する。接続対象のＢＬＥデバイス２０との間の接続が確立すると、接続制御部１２は、接続の確立をデータ取得部１１へ通知するとともに、ＢＬＥデバイス２０の識別情報及びデータの取得周期をデバイス管理部１６に通知する。
【００５６】
すなわち、最終的にはより近いタイミングを選択するがそれを別にすれば、接続制御部１２は、異常値が設定されている場合には、異常が発生し難い状況にあるＢＬＥデバイス２１の通知情報の取得のタイミングを接続処理にあてる。また、本実施例では、接続制御部１２は、通知情報が取得できる可能性が高いＢＬＥデバイス２１の通知情報の取得タイミングを優先的に接続処理にあてる。
【００５７】
ここで、接続制御部１２が接続処理を実行する間は、データ取得部１１はＢＬＥデバイス２１から通信情報を取得しない。すなわち、データ取得部１１はＢＬＥデバイス２３の通知情報の収集を待機するといえる。
【００５８】
また、本実施例では、異常値が設定されたＢＬＥデバイス２１を例に説明したが、異常値が設定されていない場合、接続制御部１２は、次に送られてくる通知情報の予測が可能なＢＬＥデバイス２１の通知情報の取得のタイミングを接続処理に充てる。これは、次に送られてくる通知情報がある程度予測可能な場合、通知情報を取得しなくてもアプリケーションサーバ４が実行する処理への影響が少ないからである。
【００５９】
次に、図７を参照して、本実施例に係るＧＷ装置１による接続型のＢＬＥデバイス２の接続処理の流れについて説明する。図７は、実施例１に係るＧＷ装置による接続処理のシーケンス図である。図７では、ＢＬＥデバイス２１〜２３がデータ取得中のＢＬＥデバイス２であり、ＢＬＥデバイス２４が以前にデータの取得を行ったが現在はデータを取得していないＢＬＥデバイス２である。また、ＢＬＥデバイス２１及び２３は、ビーコン型のＢＬＥデバイス２であり、ＢＬＥデバイス２２は、接続型のＢＬＥデバイス２である。また、ＢＬＥデバイス２０が接続対象となるＢＬＥデバイス２である。さらに、図７では、ＢＬＥデバイス２０〜２４を記載したが、これは一例であり、ＧＷ装置１の配下のＢＬＥデバイス２は他にも存在する。
【００６０】
アプリケーションサーバ４は、判定条件をセンタサーバ３へ送信する（ステップＳ１）。
【００６１】
センタサーバ３は、判定条件をアプリケーションサーバ４から受信する。そして、センタサーバ３は、判定条件をＧＷ装置１へ送信する（ステップＳ２）。
【００６２】
ＧＷ装置１のデバイス管理部１６は、判定条件をセンタサーバ３から受信する。そして、デバイス管理部１６は、デバイステーブル１６１において各ＢＬＥデバイス２１〜２３に対応する判定条件を登録する。その後、ＧＷ装置１のデータ取得部１１は、通知情報をＢＬＥデバイス２１〜２３から収集する（ステップＳ３）。そして、通知情報管理部１４は、データ取得部１１により収集されたＢＬＥデバイス２１〜２３の通知情報を通知情報テーブル１４１に登録する。
【００６３】
ここで、ステップＳ３における通知情報の取得の処理の詳細について説明する。接続制御部１２は、ａｄｖｅｒｔｉｓｅメッセージをＢＬＥデバイス２１から受信する（ステップＳ３１）。そして、接続制御部１２は、ＢＬＥデバイス２１からのａｄｖｅｒｔｉｓｅメッセージの受信をデータ取得部１１に通知する。データ取得部１１は、ａｄｖｅｒｔｉｓｅメッセージの受信の通知を受けると、収集要求をａｄｖｅｒｔｉｓｅメッセージの送信元のＢＬＥデバイス２１に送信する（ステップＳ３２）。ＢＬＥデバイス２１は、収集要求への応答として通知情報をＧＷ装置１のデータ取得部１１へ送信する（ステップＳ３３）。
【００６４】
また、データ取得部１１は、接続が確立中のＢＬＥデバイス２２に対して定期的に収集要求を送信する（ステップＳ３４）。そして、ＢＬＥデバイス２２は、収集要求への応答として通知情報をＧＷ装置１のデータ取得部１１へ送信する（ステップＳ３５）。
【００６５】
また、接続制御部１２は、ａｄｖｅｒｔｉｓｅメッセージをＢＬＥデバイス２３から受信する（ステップＳ３６）。その後、データ取得部１１は、収集要求をＢＬＥデバイス２３に送信する（ステップＳ３７）。ＢＬＥデバイス２３は、収集要求への応答として通知情報をＧＷ装置１のデータ取得部１１へ送信する（ステップＳ３８）。ＧＷ装置１は、他のデータ収集デバイスであるＢＬＥデバイス２からも通知情報を受信することでステップＳ３を完了する。ここで、ＢＬＥデバイス２４は通知情報の受信の対象から外れているため、ＧＷ装置１は、ＢＬＥデバイス２４からの通知情報を取得しない。
【００６６】
その後、ＧＷ装置１の接続制御部１２は、ＢＬＥデバイス２０からａｄｖｅｒｔｉｓｅメッセージを受信する（ステップＳ４）。
【００６７】
次に、ＧＷ装置１の接続制御部１２は、ＢＬＥデバイス２１〜２３を含むデータ収集デバイスの必要度を算出する（ステップＳ５）。
【００６８】
そして、ＧＷ装置１の接続制御部１２は、算出した各データ収集デバイスの必要度を用いて接続タイミングを決定する（ステップＳ６）。すなわち、接続制御部１２は、どのＢＬＥデバイス２の通知情報の収集タイミングでＢＬＥデバイス２０との間の接続処理を実行するかを決定する。ここでは、接続制御部１２は、ＢＬＥデバイス２３の通知情報の収集タイミングでＢＬＥデバイス２０との間の接続処理を実行すると決定する。
【００６９】
その後、ＧＷ装置１のデータ取得部１１は、ＢＬＥデバイス２１及び２２に対する通知情報の収集処理を実行する（ステップＳ７）。
【００７０】
そして、ＢＬＥデバイス２３の通知情報の収集タイミングで、ＧＷ装置１の接続制御部１２は、ＢＬＥデバイス２０との間の接続処理を実行する（ステップＳ８）。この場合、ＧＷ装置１のデータ取得部１１は、ＢＬＥデバイス２３のタイミングＰにおける通知情報は取得しない。すなわち、データ取得部１１はＢＬＥデバイス２３の通知情報の収集を待機し、タイミングＰの１回分スキップする。
【００７１】
その後、ＧＷ装置１のデータ取得部１１は、他のデータ収集デバイスに対する通知情報の収集処理を実行する（ステップＳ９）。これにより、データ取得部１１は、ＢＬＥデバイス２３以外のデータ収集デバイスの通知情報を全て取得できる。
【００７２】
その後、ＢＬＥデバイス２０との間の接続が確立しているので、ＧＷ装置１のデータ取得部１１は、ＢＬＥデバイス２０〜２３を含むデータ収集デバイスに対する通知情報の収集処理を実行する（ステップＳ１０）。
【００７３】
次に、図８を参照して、本実施例に係るＧＷ装置１による必要度算出処理の流れについて説明する。図８は、必要度算出処理のフローチャートである。図８のフローチャートで示される処理は、図７のステップＳ５で実行される処理の一例にあたる。
【００７４】
データ取得部１１は、通知情報をデータ収集デバイスであるＢＬＥデバイス２から収集する。また、データ取得部１１は、通知情報の送信に用いられたパケットを用いて各ＢＬＥデバイス２の電波強度などの接続状況を計測し収集する（ステップＳ１０１）。そして、データ取得部１１は、各データ収集デバイスの通知情報を通知情報管理部１４へ送信する。通知情報管理部１４は、各データ収集デバイスの通知情報を通知情報テーブル１４１に登録する。また、データ取得部１１は、各ＢＬＥデバイス２の電波強度を電波強度管理部１５へ送信する。電波強度管理部１５は、各ＢＬＥデバイス２の電波強度を電波強度テーブル１５１へ登録する。
【００７５】
次に、接続制御部１２は、ａｄｖｅｒｔｉｓｅメッセージを受信することで、接続対象のＢＬＥデバイス２を検出する（ステップＳ１０２）。
【００７６】
次に、接続制御部１２は、データ収集デバイスであるＢＬＥデバイス２をデバイス管理部１６が有するデバイステーブル１６１から抽出する（ステップＳ１０３）。
【００７７】
次に、接続制御部１２は、抽出したＢＬＥデバイス２から１つＢＬＥデバイス２を選択する（ステップＳ１０４）。
【００７８】
次に、接続制御部１２は、選択したＢＬＥデバイス２の一定時間の通知情報を通知情報管理部１４が有する通知情報テーブル１４１から取得する。そして、接続制御部１２は、選択したＢＬＥデバイス２の通知情報の平均値及び分散値を算出する（ステップＳ１０５）。
【００７９】
次に、接続制御部１２は、選択したＢＬＥデバイス２に設定された異常値をデバイス管理部１６が有するデバイステーブル１６１から取得する（ステップＳ１０６）。そして、接続制御部１２は、選択したＢＬＥデバイス２の通知情報の平均値と異常値との差分を算出する。
【００８０】
次に、接続制御部１２は、選択したＢＬＥデバイス２の電波強度を電波強度管理部１５が有する電波強度テーブル１５１から取得する（ステップＳ１０７）。
【００８１】
そして、接続制御部１２は、数式１に選択したＢＬＥデバイス２の通知情報の平均値と異常値との差分、通知情報の分散値及び電波強度を用いることで、選択したＢＬＥデバイス２の必要度を算出する（ステップＳ１０８）。その後、接続制御部１２は、算出した必要度を必要度管理部１３へ出力する。必要度管理部１３は、選択されたＢＬＥデバイス２に対応させて必要度を必要度テーブル１３１に登録する。
【００８２】
その後、接続制御部１２は、抽出したＢＬＥデバイス２の全ての選択が完了したか否かを判定する（ステップＳ１０９）。選択していないＢＬＥデバイス２が残っている場合（ステップＳ１０９：否定）、接続制御部１２は、ステップＳ１０４へ戻る。
【００８３】
これに対して、抽出したＢＬＥデバイス２の全ての選択が完了した場合（ステップＳ１０９：肯定）、接続制御部１２は、必要度算出処理を終了する。
【００８４】
次に、図９を参照して、本実施例に係るＧＷ装置１による接続タイミング決定処理の流れについて説明する。図９は、接続タイミング決定処理のフローチャートである。図９のフローチャートで示される処理は、図７のステップＳ６で実行される処理の一例にあたる。
【００８５】
接続制御部１２は、データ収集デバイスであるＢＬＥデバイス２をデバイス管理部１６が有するデバイステーブル１６１から抽出する（ステップＳ１１１）。ここで、接続制御部１２は、図８で示した必要度算出処理の中でのデータ収集デバイスの抽出結果を使用してもよい。
【００８６】
次に、接続制御部１２は、必要度管理部１３が有する必要度テーブル１３１を用いて、抽出したＢＬＥデバイス２を必要度の降順に並び替える（ステップＳ１１２）。
【００８７】
次に、接続制御部１２は、並び替えたＢＬＥデバイス２の先頭から順にＢＬＥデバイス２を選択していくことで、未選択のＢＬＥデバイス２のうち最も必要度が高いＢＬＥデバイス２を選択する（ステップＳ１１３）。
【００８８】
そして、接続制御部１２は、選択したＢＬＥデバイス２の必要度が閾値未満か否かを判定する（ステップＳ１１４）。選択したＢＬＥデバイス２の必要度が閾値以上の場合（ステップＳ１１４：否定）、接続制御部１２は、ステップＳ１１６へ進む。
【００８９】
これに対して、選択したＢＬＥデバイス２の必要度が閾値未満の場合（ステップＳ１１４：肯定）、接続制御部１２は、デバイス管理部１６が有するデバイステーブル１６１に登録された選択したＢＬＥデバイス２のデータ取得周期を取得する。そして、接続制御部１２は、データ取得周期を用いて選択したＢＬＥデバイス２の次回の通知情報の送受信タイミングを取得する（ステップＳ１１５）。
【００９０】
その後、接続制御部１２は、抽出したＢＬＥデバイス２の選択が全て完了したか否かを判定する（ステップＳ１１６）。選択していないＢＬＥデバイス２が残っている場合（ステップＳ１１６：否定）、接続制御部１２は、ステップＳ１１３へ戻る。
【００９１】
これに対して、抽出したＢＬＥデバイス２の全ての選択が完了した場合（ステップＳ１１６：肯定）、接続制御部１２は、抽出したＢＬＥデバイス２の中に必要度が閾値未満のＢＬＥデバイス２が存在するか否かを判定する（ステップＳ１１７）。
【００９２】
必要度が閾値未満のＢＬＥデバイス２が存在する場合（ステップＳ１１７：肯定）、接続制御部１２は、最も近い通知情報の送受信タイミングを接続対象のＢＬＥデバイス２の接続タイミングと決定する（ステップＳ１１８）。
【００９３】
一方、必要度が閾値未満のＢＬＥデバイス２が存在しない場合（ステップＳ１１７：否定）、接続制御部１２は、必要度が最低のＢＬＥデバイス２の通知情報の送信タイミングを接続対象のＢＬＥデバイス２の接続タイミングと決定する（ステップＳ１１９）。
【００９４】
次に、図１０を参照して、データ収集中の各ＢＬＥデバイス２の必要度の違いによる接続対象のＢＬＥデバイス２の接続タイミングの変化について説明する。図１０は、各ＢＬＥデバイスの必要度の違いによる接続タイミングの変化を説明するための図である。
【００９５】
ここでは、データ収集デバイスとしてＢＬＥデバイス＃１〜＃７が存在する場合で説明する。グラフ２０１は、横軸で時間の経過を表し、且つ、各ＢＬＥデバイス＃１〜＃７の通知情報の送受信タイミングを表す。時刻Ｔ１〜Ｔ７は、それぞれＢＬＥデバイス＃１〜＃７の通知情報の送受信タイミングである。ここで、ＢＬＥデバイス＃１〜＃７のそれぞれの必要度を＃１〜＃７とする。そして、必要度は、＃１＞＃２＞＃３＞＃４＞＃５＞＃６＞＃７であるとする。
【００９６】
グラフ２０２は、閾値が＃５より大きく＃４より小さい場合の接続タイミングの選択を表すグラフである。この場合、＃５〜＃７が閾値より小さい。グラフ２０２では、丸で囲まれた時刻Ｔ５〜Ｔ７が、必要度が閾値より小さいＢＬＥデバイス２の通知情報の送受信タイミングを表す。この場合、接続制御部１２は、時刻Ｔ５〜Ｔ６の中で最も近い送受信タイミングである時刻Ｔ６を接続対象のＢＬＥデバイス２の接続タイミングとして決定する。すなわち、この場合の接続対象のＢＬＥデバイス２の接続タイミングは、グラフ２０２において太い矢印で表されるタイミングとなる。
【００９７】
これに対して、グラフ２０３は、閾値が＃３より大きく＃２より小さい場合の接続タイミングの選択を表すグラフである。この場合、＃３〜＃７が閾値より小さい。グラフ２０３では、丸で囲まれた時刻Ｔ３〜Ｔ７が、必要度が閾値より小さいＢＬＥデバイス２の通知情報の送受信タイミングを表す。この場合、接続制御部１２は、時刻Ｔ３〜Ｔ６の中で最も近い送受信タイミングである時刻Ｔ４を接続対象のＢＬＥデバイス２の接続タイミングとして決定する。すなわち、この場合の接続対象のＢＬＥデバイス２の接続タイミングは、グラフ２０３において太い矢印で表されるタイミングとなる。
【００９８】
このように、データ収集デバイスの中に必要度が低いＢＬＥデバイス２が多いほど、接続対象のＢＬＥデバイス２の接続タイミングは早くなる。逆に、データ収集デバイスの中に必要度が高いＢＬＥデバイス２が多いほど、接続対象のＢＬＥデバイス２の接続タイミングは遅くなる。
【００９９】
以上に説明したように本実施例に係るＧＷ装置は、接続型のＢＬＥデバイスを検出した場合、各データ取集デバイスの必要度を算出し、必要度が閾値よりも低いＢＬＥデバイスの通知情報の送受信タイミングを、接続対象のＢＬＥデバイスの接続処理にあてる。これにより、必要度が低く取りこぼした場合にアプリケーションの処理に与える影響が大きい通知情報の取りこぼしを軽減しつつ、接続型のＢＬＥデバイスを接続し通知情報を取得することが可能となる。したがって、通知情報を用いたサービスのサービス品質を向上させることができる。
【０１００】
（変形例）
実施例１では、必要度の算出に、平均値と異常値との差分、分散値及び電波強度を用いた。しかし、取りこぼした場合にアプリケーションが実行する処理に与える影響が大きいか否かを判定できる値が求められるのであれば必要度の算出方法はこれに限らない。例えば、電波強度を用いずに、異常が発生する可能性に注目して、接続制御部１２は、平均値と異常値との差分及び分散値を用いて必要度を算出してもよい。
【０１０１】
また、接続制御部１２は、取りこぼしの発生の可能性を判定するための電波状況を表す情報として、電波強度以外にも、通知状況の取りこぼし頻度を用いてもよい。取りこぼしの頻度が低ければ、データを取りこぼす可能性が高いと考えられるため、通知情報の受信をなるべく多くの回数行うことが好ましい。
【０１０２】
この場合、データ取得部１１は、通知情報を取得できなかった場合、対象のＢＬＥデバイス２の識別とともに通知情報を取得できなかった旨を通知情報管理部１４に通知する。
【０１０３】
通知情報管理部１４は、通知情報を取得できなかった旨の通知をデータ取得部１１から受ける。そして、通知情報管理部１４は、取得できなかった通知情報の送信元のＢＬＥデバイス２の識別情報に対応させて通知情報の取りこぼしを通知情報テーブル１４１に登録する。
【０１０４】
接続制御部１２は、必要度算出処理において、データ収集デバイスである各ＢＬＥデバイス２の所定期間における通知情報の取りこぼし回数を通知情報管理部１４が有する通知情報テーブル１４１から求める。そして、接続制御部１２は、データ収集デバイスである各ＢＬＥデバイス２の所定期間における通知情報の取りこぼし回数をデータの取りこぼし頻度とする。このデータの取りこぼし頻度が、「通信状態」の一例にあたる。
【０１０５】
次に、接続制御部１２は、平均値と異常値との差分、通知情報の分散値、電波強度及びデータの取りこぼしの頻度を次の数式２に用いて、各ＢＬＥデバイス２１の必要度を計算する。
【０１０６】
【数２】
2018174447.tif 000004
【０１０７】
このように必要度を求める条件を増やすことで、接続制御部１２は、取りこぼした場合にアプリケーションの処理に与える影響が大きいか否かをより正確に判定することができる必要度を取得することができる。
【０１０８】
また、以上の説明では、異常値が設定されたＢＬＥデバイス２を対象とする場合について説明したが、異常値が設定されていないＢＬＥデバイス２であっても、ＧＷ装置１は、必要度に応じて接続タイミングを決定することができる。
【０１０９】
その場合、例えば、接続制御部１２は、データ収集デバイスであるＢＬＥデバイス２の通知情報の分散値を算出し、分散値を必要度として接続対象のＢＬＥデバイス２の接続タイミングを決定することができる。
【０１１０】
ここで、分散値の大小により、その分散値を有するＢＬＥデバイス２の通知情報の変化が直近で大きいか否かを判定することができる。すなわち、分散値が小さければ、通知情報の変化が小さいので、次回の通知情報も同じような値になると予測することができるので、その通知情報を取得しなくてもアプリケーションが実行する処理に与える影響を抑えることができる。そのため、異常値が設定されていないＢＬＥデバイス２であっても、接続制御部１２は、分散値を用いて接続タイミングを決定することができる。また、この場合も、接続制御部１２は、電波状況を加味して接続タイミングを決定してもよい。
【実施例２】
【０１１１】
次に実施例２について説明する。本実施例に係るＧＷ装置は、接続型のＢＬＥデバイスを再接続する場合、以前の情報から接続対象のＢＬＥデバイスの必要度を求めて、求めた必要度を用いて接続タイミングを決定することが実施例１と異なる。本実施例係る情報収集システムも図１で表される。また、本実施例係るＧＷ装置も図２で表される。以下では、再接続時の接続タイミングの決定について主に説明し、実施例１と同じ各部の機能については説明を省略する。
【０１１２】
図２を用いて説明する。接続制御部１２は、ａｄｖｅｒｔｉｓｅメッセージを受信し、接続対象のＢＬＥデバイス２０を検出する。接続制御部１２は、デバイス管理部１６が有するデバイステーブル１６１の中に検出したＢＬＥデバイス２０の識別情報が登録されており、且つ、データ収集中を表す情報が登録されていないことを確認する。そして、接続制御部１２は、今回のＢＬＥデバイス２０の接続が再接続であると判定する。
【０１１３】
次に、接続制御部１２は、接続対象のＢＬＥデバイス２０の過去の一定時間における通知情報を通知情報管理部１４が有する通知情報テーブル１４１から取得する。ここで、過去の一定時間とは、例えば、接続対象のＢＬＥデバイス２０の通知情報を最後に受信した時刻から特定の時間前までの時間である。そして、接続制御部１２は、取得した通知情報を用いて、接続対象のＢＬＥデバイス２０の通知情報の平均値及び分散値を算出する。
【０１１４】
また、接続制御部１２は、接続対象のＢＬＥデバイス２０の異常値をデバイス管理部１６が有するデバイステーブル１６１から取得する。そして、接続制御部１２は、接続対象のＢＬＥデバイス２０の通知情報の平均値と異常値との差分を算出する。
【０１１５】
さらに、接続制御部１２は、接続対象のＢＬＥデバイス２０から最後に通知情報を受信した際の電波強度を接続対象のＢＬＥデバイス２０の電波強度として、電波強度管理部１５の電波強度テーブル１５１から取得する。すなわち、この場合、電波強度管理部１５は、ＢＬＥデバイス２０を含む接続が切れた接続型のＢＬＥデバイス２の電波強度の情報を保持しておく。
【０１１６】
そして、接続制御部１２は、数式１に平均値と異常値との差分、分散値及び電波強度を用いて接続対象のＢＬＥデバイス２０の必要度を算出する。この場合、接続制御部１２は、接続対象のＢＬＥデバイス２０の必要度を閾値として用いる。この接続対象のＢＬＥデバイス２０の必要度が、「特定値」の一例にあたる。
【０１１７】
次に、接続制御部１２は、データ収集デバイスであるＢＬＥデバイス２１をデバイス管理部１６が有するデバイステーブル１６１から抽出する。そして、接続制御部１２は、各ＢＬＥデバイス２１の必要度を算出する。
【０１１８】
次に、接続制御部１２は、各ＢＬＥデバイス２１の必要度が接続対象のＢＬＥデバイス２０の必要度未満か否かを判定する。そして、接続制御部１２は、必要度が接続対象のＢＬＥデバイス２０の必要度未満のＢＬＥデバイス２１の通知情報の次回の送受信タイミングを取得する。
【０１１９】
必要度が接続対象のＢＬＤデバイス２０の必要度未満のＢＬＥデバイス２が存在する場合、接続制御部１２は、必要度がＢＬＤデバイス２０の必要度未満のＢＬＥデバイス２１の中で、次回の通知情報の取得のタイミングが最も直近のＢＬＥデバイス２１を特定する。そして、接続制御部１２は、特定したＢＬＥデバイス２１の次回の通知情報の取得のタイミングで、接続対象のＢＬＥデバイス２０の接続処理を実行すると決定する。
【０１２０】
一方、ＢＬＥデバイス２１の必要度がＢＬＤデバイス２０の必要度以上の場合、接続制御部１２は、必要度が最低のＢＬＥデバイス２１を特定する。そして、接続制御部１２は、特定したＢＬＥデバイス２１の次回の通知情報の取得のタイミングで、接続対象のＢＬＥデバイス２０の接続処理を実行すると決定する。
【０１２１】
その後、特定したＢＬＥデバイス２１の次回の通知情報の取得のタイミングが到来すると、接続制御部１２は、接続対象のＢＬＥデバイス２０の接続処理を実行する。接続対象のＢＬＥデバイス２０との間の接続が確立すると、接続制御部１２は、接続の確立をデータ取得部１１へ通知するとともに、ＢＬＥデバイス２０の識別情報及びデータの取得周期をデバイス管理部１６に通知する。
【０１２２】
次に、図１１を参照して、本実施例に係るＧＷ装置１による接続タイミング決定処理の流れについて説明する。図１１は、接続タイミング決定処理のフローチャートである。ここでは、接続対象のＢＬＥデバイス２の再接続を行う場合で説明する。
【０１２３】
接続制御部１２は、データ収集デバイスであるＢＬＥデバイス２をデバイス管理部１６が有するデバイステーブル１６１から抽出する（ステップＳ２０１）。
【０１２４】
次に、接続制御部１２は、必要度管理部１３が有する必要度テーブル１３１を用いて、抽出したＢＬＥデバイス２を必要度の降順に並び替える（ステップＳ２０２）。
【０１２５】
次に、接続制御部１２は、接続対象のＢＬＥデバイス２の必要度を算出する（ステップＳ２０３）。ここでは、接続タイミングを決定する際に接続対象のＢＬＥデバイス２の必要度の算出を行ったが、これは他のタイミングでもよく、接続制御部１２は、例えば、データ収集デバイスの必要度を算出するときに算出してもよい。
【０１２６】
次に、接続制御部１２は、並び替えたＢＬＥデバイス２の先頭から順にＢＬＥデバイス２を選択していくことで、未選択のＢＬＥデバイス２のうち最も必要度が高いＢＬＥデバイス２を選択する（ステップＳ２０４）。
【０１２７】
そして、接続制御部１２は、選択したＢＬＥデバイス２の必要度が接続対象のＢＬＥデバイス２の必要度未満か否かを判定する（ステップＳ２０５）。選択したＢＬＥデバイス２の必要度が接続対象のＢＬＥデバイス２の必要度以上の場合（ステップＳ２０５：否定）、接続制御部１２は、ステップＳ２０７へ進む。
【０１２８】
これに対して、選択したＢＬＥデバイス２の必要度が接続対象のＢＬＥデバイス２の必要度未満の場合（ステップＳ２０５：肯定）、選択したＢＬＥデバイス２の次回の通知情報の送受信タイミングを取得する（ステップＳ２０６）。
【０１２９】
その後、接続制御部１２は、抽出したＢＬＥデバイス２の選択が全て完了したか否かを判定する（ステップＳ２０７）。選択していないＢＬＥデバイス２が残っている場合（ステップＳ２０７：否定）、接続制御部１２は、ステップＳ２０４へ戻る。
【０１３０】
一方、抽出したＢＬＥデバイス２の全ての選択が完了した場合（ステップＳ２０７：肯定）、接続制御部１２は、必要度が接続対象のＢＬＥデバイス２の必要度未満のＢＬＥデバイス２が存在するか否かを判定する（ステップＳ２０８）。
【０１３１】
必要度が接続対象のＢＬＥデバイス２の必要度未満のＢＬＥデバイス２が存在する場合（ステップＳ２０８：肯定）、接続制御部１２は、最も近い通知情報の送受信タイミングを接続対象のＢＬＥデバイス２の接続タイミングと決定する（ステップＳ２０９）。
【０１３２】
一方、必要度がＢＬＤデバイス２０の必要度未満のＢＬＥデバイス２が存在しない場合（ステップＳ２０８：否定）、接続制御部１２は、必要度が最低のＢＬＥデバイス２の通知情報の送信タイミングを接続対象のＢＬＥデバイス２の接続タイミングと決定する（ステップＳ２１０）。
【０１３３】
次に、図１２を参照して、再接続時の接続対象の各ＢＬＥデバイス２の必要度の違いによる接続タイミングの変化について説明する。図１２は、各再接続における接再接続における接続対象のＢＬＥデバイスの必要度の違いによる接続タイミングの変化を説明するための図である。
【０１３４】
ここでは、データ収集デバイスとしてＢＬＥデバイス＃１〜＃７が存在する場合で説明する。グラフ２１１は、横軸で時間の経過を表し、且つ、各ＢＬＥデバイス＃１〜＃７の通知情報の送受信タイミングを表す。時刻Ｔ１〜Ｔ７は、それぞれＢＬＥデバイス＃１〜＃７の通知情報の送受信タイミングである。ここで、ＢＬＥデバイス＃１〜＃７のそれぞれの必要度を＃１〜＃７とする。そして、必要度は、＃１＞＃２＞＃３＞＃４＞＃５＞＃６＞＃７であるとする。さらに、接続対象のＢＬＥデバイス２の必要度をＮとする。
【０１３５】
グラフ２１２は、接続対象のＢＬＥデバイス２の必要度が＃５より大きく＃４より小さい場合の接続タイミングの選択を表すグラフである。この場合、＃５〜＃７がＮより小さい。グラフ２０２では、丸で囲まれた時刻Ｔ５〜Ｔ７が、必要度がＮより小さいＢＬＥデバイス２の通知情報の送受信タイミングを表す。この場合、接続制御部１２は、時刻Ｔ５〜Ｔ６の中で最も近い送受信タイミングである時刻Ｔ６を接続対象のＢＬＥデバイス２の接続タイミングとして決定する。すなわち、この場合の接続対象のＢＬＥデバイス２の接続タイミングは、グラフ２１２において太い矢印で表されるタイミングとなる。
【０１３６】
これに対して、グラフ２１３は、接続対象のＢＬＥデバイス２の必要度が＃３より大きく＃２より小さい場合の接続タイミングの選択を表すグラフである。この場合、＃３〜＃７がＮより小さい。グラフ２０３では、丸で囲まれた時刻Ｔ３〜Ｔ７が、必要度がＮより小さいＢＬＥデバイス２の通知情報の送受信タイミングを表す。この場合、接続制御部１２は、時刻Ｔ３〜Ｔ６の中で最も近い送受信タイミングである時刻Ｔ４を接続対象のＢＬＥデバイス２の接続タイミングとして決定する。すなわち、この場合の接続対象のＢＬＥデバイス２の接続タイミングは、グラフ２１３において太い矢印で表されるタイミングとなる。
【０１３７】
このように、再接続の場合、接続対象のＢＬＥデバイス２の必要度が高いほど、接続対象のＢＬＥデバイス２であるＢＬＥデバイス２の接続タイミングは早くなる。逆に、接続対象のＢＬＥデバイス２の必要度が低いほど、接続対象のＢＬＥデバイス２の接続タイミングは遅くなる。
【０１３８】
以上に説明したように本実施例に係るＧＷ装置は、再接続をする場合に、接続対象のＢＬＥデバイスの必要度を閾値として用いて接続タイミングを決定する。これにより、必要度が低く取りこぼした場合にアプリケーションの処理に与える影響が大きい通知情報の取りこぼしをより軽減しつつ、接続型のＢＬＥデバイスを接続し通知情報を取得することが可能となる。したがって、通知情報を用いたサービスのサービス品質をより向上させることができる。
【０１３９】
（ハードウェア構成）
図１３は、ＧＷ装置のハードウェア構成図である。ＧＷ装置１は、ＣＰＵ（Central  Processing  Unit）９０１、ＨＤＤ（Hard  Disk  Drive）９０２、メモリ９０３、通信インタフェース９０４、入力装置９０５及び出力装置９０６を有する。
【０１４０】
入力装置９０５は、キーボード及びマウスなどである。また、出力装置９０６は、モニタなどである。操作者は、入力装置９０５及び出力装置９０６を用いて、ＧＷ装置１に対してデータの入力を行う。通信インタフェース９０４は、図１に例示した、センタサーバ３及びＢＬＥデバイス２と通信を行うためのインタフェースである。
【０１４１】
ＨＤＤ９０２は、補助記憶装置である。ＨＤＤ９０２は、例えば、図２に例示した通知情報管理部１４、電波強度管理部１５及びデバイス管理部１６が有する記憶装置の機能を有する。例えば、ＨＤＤ９０２は、必要度テーブル１３１、通知情報テーブル１４１、電波強度テーブル１５１及びデバイステーブル１６１を記憶する。また、ＨＤＤ９０２は、図２に例示した、データ取得部１１、接続制御部１２、必要度管理部１３、通知情報管理部１４、電波強度管理部１５及びデバイス管理部１６の機能を実現するためのプログラムを含む各種プログラムを記憶する。
【０１４２】
ＣＰＵ９０１は、ＨＤＤ９０２、メモリ９０３、通信インタフェース９０４、入力装置９０５及び出力装置９０６とバスで接続される。ＣＰＵ９０１は、ＨＤＤ９０２に記憶された各種プログラムを読み出してメモリ９０３上に展開し実行する。これにより、ＣＰＵ９０１は、図２に例示した、データ取得部１１、接続制御部１２、必要度管理部１３、通知情報管理部１４、電波強度管理部１５及びデバイス管理部１６の機能を実現する。
【０１４３】
図１４は、ＢＬＥデバイスのハードウェア構成図である。ＢＬＥデバイス２は、図１４に示すように、ＣＰＵ９１１、メモリ９１２、通信インタフェース９１３及びセンサ９１４を有する。
【０１４４】
通信インタフェース９１３は、図１に例示したＧＷ装置１と通信を行うためのインタフェースである。センサ９１４は、所定の情報を取得するための装置である。センサ９１４は、例えば、温度計測機、湿度計測器又は照度計測器などである。
【０１４５】
メモリ９１２は、センサ９１４が取得した情報を通信インタフェース９１３を介してＧＷ装置１へ送信する機能を実現するためのプログラムを含む各種プログラムを記憶する。
【０１４６】
ＣＰＵ９１１は、メモリ９１２、通信インタフェース９１３及びセンサ９１４とバスで接続される。ＣＰＵ９１１は、メモリ９１２から各種プログラムを読み出して展開して実行することで、センサ９１４が取得した情報を通信インタフェース９１３を介してＧＷ装置１へ送信する機能を実現する。
【符号の説明】
【０１４７】
１  ＧＷ装置
２  ＢＬＥデバイス
３  センタサーバ
４  アプリケーションサーバ
１１  データ取得部
１２  接続制御部
１３  必要度管理部
１４  通知情報管理部
１５  電波強度管理部
１６  デバイス管理部
２０〜２４  ＢＬＥデバイス
１００  情報収集システム
【図１】
2018174447.tif 000005
【図２】
2018174447.tif 000006
【図３】
2018174447.tif 000007
【図４】
2018174447.tif 000008
【図５】
2018174447.tif 000009
【図６】
2018174447.tif 000010
【図７】
2018174447.tif 000011
【図８】
2018174447.tif 000012
【図９】
2018174447.tif 000013
【図１０】
2018174447.tif 000014
【図１１】
2018174447.tif 000015
【図１２】
2018174447.tif 000016
【図１３】
2018174447.tif 000017
【図１４】
2018174447.tif 000018