(57)【要約】【課題】送信データのデータ量を削減する。【解決手段】情報処理装置により実行される送信制御プログラムにおいて、センサデータと、該センサデータを検出したセンサの識別情報と、を受信すると、他の情報処理装置が取得したセンサデータを、該センサデータを検出したセンサの識別情報に対応付けて記憶する記憶部を参照して、受信した前記センサの識別情報に対応付けられたセンサデータを特定し、受信した前記センサデータと、特定した前記センサデータとを比較し、比較結果に応じて、受信した前記センサデータを送信するか否かを判定する、処理を含む。【選択図】図１０
2018201154.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置により実行される送信制御プログラムにおいて、
センサデータと、該センサデータを検出したセンサの識別情報と、を受信すると、他の情報処理装置が取得したセンサデータを、該センサデータを検出したセンサの識別情報に対応付けて記憶する記憶部を参照して、受信した前記センサの識別情報に対応付けられたセンサデータを特定し、
受信した前記センサデータと、特定した前記センサデータとを比較し、
比較結果に応じて、受信した前記センサデータを送信するか否かを判定する、
処理を含むことを特徴とする送信制御プログラム。
【請求項２】
前記判定する処理では、受信した前記センサデータと、特定した前記センサデータとが異なる場合に、受信した前記センサデータを送信すると判定する、
ことを特徴とする請求項１記載の送信制御プログラム。
【請求項３】
前記判定する処理において、受信した前記センサデータを送信すると判定した場合に、受信した前記センサデータを前記他の情報処理装置に送信する、
処理を更にコンピュータに実行させることを特徴とする請求項２記載の送信制御プログラム。
【請求項４】
前記他の情報処理装置が取得したセンサデータと、該センサデータを検出したセンサの識別情報とを、前記他の情報処理装置から受信し、
受信した前記他の情報処理装置が取得したセンサデータと、該センサデータを検出したセンサの識別情報とを対応付けて前記記憶部に記憶させる、
処理を更にコンピュータに実行させることを特徴とする請求項１から３のいずれか１項記載の送信制御プログラム。
【請求項５】
前記他の情報処理装置が取得したセンサデータは、前記情報処理装置から受信したセンサデータのうち検出時刻が最も新しいセンサデータである、
ことを特徴とする請求項１から４のいずれか１項記載の送信制御プログラム。
【請求項６】
情報処理装置により実行される送信制御方法であって、
センサデータと、該センサデータを検出したセンサの識別情報と、を受信すると、他の情報処理装置が取得したセンサデータを、該センサデータを検出したセンサの識別情報に対応付けて記憶する記憶部を参照して、受信した前記センサの識別情報に対応付けられたセンサデータを特定し、
受信した前記センサデータと、特定した前記センサデータとを比較し、
比較結果に応じて、受信した前記センサデータを送信するか否かを判定する、
処理を含む送信制御方法。
【請求項７】
センサデータと、該センサデータを検出したセンサの識別情報と、を受信すると、他の情報処理装置が取得したセンサデータを、該センサデータを検出したセンサの識別情報に対応付けて記憶する記憶部を参照して、受信した前記センサの識別情報に対応付けられたセンサデータを特定し、
受信した前記センサデータと、特定した前記センサデータとを比較し、
比較結果に応じて、受信した前記センサデータを送信するか否かを判定する、
処理を実行する処理部を備える情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、送信制御プログラム、送信制御方法、及び情報処理装置に関する。
【背景技術】
【０００２】
Internet of Things（ＩｏＴ）における環境データ（例えば、温度、湿度、気圧等）のセンシングでは、センサが例えば、Bluetooth（登録商標） Low Energy（ＢＬＥ）等の無線通信技術を用いてセンサデータ（パケット）を発信し、ゲートウェイでそのセンサデータをリアルタイムに受信し処理する（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１５−１８８１４０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１の技術では、センサごとに当該センサが検出したセンサデータの送信をいずれのゲートウェイが担当するのかが予め決められている。したがって、各ゲートウェイは、センサデータを収集する収集サーバに、送信を担当するセンサのセンサデータを全て送信するため、ゲートウェイによっては送信データのデータ量が多くなる。
【０００５】
１つの側面では、本発明は、送信データのデータ量を削減することができる送信制御プログラム、送信制御方法、及び情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
一つの態様では、送信制御プログラムは、情報処理装置により実行される送信制御プログラムにおいて、センサデータと、該センサデータを検出したセンサの識別情報と、を受信すると、他の情報処理装置が取得したセンサデータを、該センサデータを検出したセンサの識別情報に対応付けて記憶する記憶部を参照して、受信した前記センサの識別情報に対応付けられたセンサデータを特定し、受信した前記センサデータと、特定した前記センサデータとを比較し、比較結果に応じて、受信した前記センサデータを送信するか否かを判定する、処理を含むことを特徴とする。
【発明の効果】
【０００７】
送信データのデータ量を削減することができる。
【図面の簡単な説明】
【０００８】
【図１】図１は、一実施形態に係るセンサネットワークシステムの構成を概略的に示す図である。
【図２】図２は、センサの機能ブロック図である。
【図３】図３は、出力データの一例を示す図である。
【図４】図４は、ゲートウェイ装置のハードウェア構成の一例を示す図である。
【図５】図５は、ゲートウェイ装置の機能ブロック図である。
【図６】図６は、センサデータテーブルの一例を示す図である。
【図７】図７は、ＧＷ監視テーブルの一例を示す図である。
【図８】図８は、センサデータ受信処理の一例を示すフローチャートである。
【図９】図９（ａ）〜図９（ｃ）は、図８の処理を説明するための図である。
【図１０】図１０は、変化データ送信処理の一例を示すフローチャートである。
【図１１】図１１（ａ）及び図１１（ｂ）は、図１０の処理を説明するための図である。
【図１２】図１２は、変化データ収集処理の一例を示すフローチャートである。
【図１３】図１３（ａ）〜図１３（ｄ）は、図１２の処理を説明するための図（その１）である。
【図１４】図１４（ａ）〜図１４（ｃ）は、図１２の処理を説明するための図（その２）である。
【図１５】図１５（ａ）及び図１５（ｂ）は、図１２の処理を説明するための図（その３）である。
【図１６】図１６の処理は、ゲートウェイ監視処理の一例を示すフローチャートである。
【図１７】図１７（ａ）〜図１７（ｃ）は、図１６の処理を説明するための図（その１）である。
【図１８】図１８（ａ）及び図１８（ｂ）は、図１６の処理を説明するための図（その２）である。
【図１９】図１９は、センサ監視処理の一例を示すフローチャートである。
【図２０】図２０は、センサ監視テーブルの一例を示す図である。
【発明を実施するための形態】
【０００９】
以下、センサネットワークシステムの一実施形態について、図１〜図２０に基づいて詳細に説明する。
【００１０】
図１には、一実施形態に係るセンサネットワークシステム１００の構成が概略的に示されている。図１に示すように、センサネットワークシステム１００は、ｎ個（ｎは任意の正の整数）のセンサＳ１〜Ｓｎと、情報処理装置としてのｍ個（ｍは任意の正の整数）のゲートウェイ装置ＧＷ１〜ＧＷｍと、収集装置８０と、を備える。各ゲートウェイ装置ＧＷ１〜ＧＷｍと、収集装置８０とはインターネット、Local Area Network（ＬＡＮ）、Wide Area Network（ＷＡＮ）等、有線又は無線のネットワーク９０を介して接続されている。また、ゲートウェイ装置ＧＷ１〜ＧＷｍ同士も、ネットワーク９０を介して接続されている。なお、以後の説明において、ゲートウェイ装置ＧＷ１〜ＧＷｍを特に区別する必要がない限り、ゲートウェイ装置ＧＷと記載する。
【００１１】
センサＳ１〜センサＳｎは、宛先を指定せずに検出したセンサデータをブロードキャストする。図２には、各センサＳ１〜Ｓｎの機能ブロック図が示されている。図２に示すように、各センサＳ１〜Ｓｎは、センサ部１１、出力データ生成部１２、送信部１３、及び制御部１４を備える。
【００１２】
センサ部１１は、所定間隔（例えば、５〜３０ミリ秒）でセンサデータ（例えば、温度、湿度、気圧等）を検出し、出力データ生成部１２に出力する。出力データ生成部１２は、制御部１４の制御の下、センサ部１１が検出したセンサデータを含む出力データを生成し、送信部１３に出力する。
【００１３】
図３は、出力データの一例を示す図である。図３に示すように、出力データは、例えば、センサの識別情報としての「センサＩＤ」、「種別」、「センサデータ」、及び「検出日時」のフィールドを備える。「センサＩＤ」のフィールドには、各センサＳ１〜Ｓｎを一意に識別するための識別子等が格納される。「種別」のフィールドには、各センサＳ１〜Ｓｎのセンサ部１１が検出するセンサデータの種別が格納される。例えば、センサＳ１のセンサ部１１が温度を検出する場合、図３に示すように、「種別」のフィールドには“温度”が格納される。「センサデータ」のフィールドには、各センサＳ１〜Ｓｎが検出した温度等の値が格納される。「検出日時」のフィールドには、センサ部１１がセンサデータを検出した時刻の情報が格納される。
【００１４】
図２に戻り、送信部１３は、制御部１４の制御の下、出力データ（図３参照）を無線通信により宛先を指定せずにブロードキャストする。ブロードキャストされた出力データは、当該出力データを受信可能なゲートウェイ装置ＧＷにより受信される。制御部１４は、各センサＳ１〜Ｓｎの動作を制御する。
【００１５】
収集装置８０は、例えば、クラウドサーバやストレージデバイスであり、各センサＳ１〜Ｓｎで検出されたセンサデータの収集・管理を行う。
【００１６】
ゲートウェイ装置ＧＷ１〜ＧＷｍは、センサＳ１〜Ｓｎが検出したセンサデータを受信し管理する。また、ゲートウェイ装置ＧＷ１〜ＧＷｍのいずれか１つはマスタゲートウェイ装置として機能し、後述する変化データを他のゲートウェイ装置ＧＷから受信して集約し、収集装置８０に送信する。
【００１７】
図４は、ゲートウェイ装置ＧＷのハードウェア構成の一例を示す図である。ゲートウェイ装置ＧＷは、図４に示すように、プロセッサとしてのCentral Processing Unit（ＣＰＵ）１１１、Read Only Memory（ＲＯＭ)１１２、Random Access Memory（ＲＡＭ)１１３、Hard Disk Drive（ＨＤＤ：記憶装置）１１４、ネットワークインタフェース１１５、及び、無線通信インタフェース１１６等を備えている。これらゲートウェイ装置ＧＷの構成各部は、バス１１８に接続されている。ＣＰＵ１１１は、ＲＯＭ１１２あるいはＨＤＤ１１４に格納されているプログラム（送信制御プログラムを含む）を実行することで、ゲートウェイ装置ＧＷを図５の各部として機能させる。
【００１８】
具体的には、図５に示すように、ＣＰＵ１１１がプログラムを実行することにより、ゲートウェイ装置ＧＷは、センサデータ受信部２０５、特定部及び比較部としてのセンサデータ処理部２１０、判定部としてのテーブル処理部２２０、監視処理部２６０、及び集約処理部２４０として機能する。本実施形態において、各ゲートウェイ装置ＧＷは同一の構成を有しているが、マスタゲートウェイ装置として機能するゲートウェイ装置ＧＷにおいては、センサデータ受信部２０５、センサデータ処理部２１０、及びテーブル処理部２２０は機能しないようになっている。また、マスタゲートウェイ装置以外のゲートウェイ装置ＧＷにおいては、集約処理部２４０は機能しないようになっている。
【００１９】
まず、マスタゲートウェイ装置以外のゲートウェイ装置ＧＷにおいて機能する、センサデータ受信部２０５、センサデータ処理部２１０、及びテーブル処理部２２０について説明する。
【００２０】
センサデータ受信部２０５は、センサＳ１〜Ｓｎがブロードキャストした、センサデータを含む出力データ受信し、受信した出力データをセンサデータ処理部２１０に出力する。
【００２１】
センサデータ処理部２１０は、センサデータ受信部２０５から入力された出力データに基づいて、センサデータテーブル２３０を更新する。
【００２２】
ここで、センサデータテーブル２３０について説明する。センサデータテーブル２３０は、各センサＳ１〜Ｓｎが検出したセンサデータを管理するテーブルである。図６は、センサデータテーブル２３０の一例を示す図である。図６に示すように、センサデータテーブル２３０は、例えば、「センサＩＤ」、「種別」、「前回値」、「今回値」、「変化フラグ」、及び「取得日時」のフィールドを備える。
【００２３】
「センサＩＤ」のフィールドには、出力データ（図３参照）の「センサＩＤ」のフィールドと同様に、各センサを一意に識別する識別子が格納される。「種別」のフィールドには、センサＩＤで識別されるセンサのセンサ部１１が検出するセンサデータの種別が格納される。例えば、センサ部１１が温度を検出する場合には、「種別」のフィールドには“温度”が格納され、気圧を検出する場合には“気圧”が格納される。
【００２４】
「前回値」のフィールドには、センサＩＤで識別されるセンサが検出したセンサデータとして、前回、マスタゲートウェイ装置から収集装置８０に送信された値が格納される。「今回値」のフィールドには、各センサＳ１〜Ｓｎから受信した出力データに含まれる「センサデータ」の値が格納される。「変化フラグ」のフィールドには、「今回値」に格納された値と「前回値」に格納された値とが異なる場合には、“１”が格納され、同じ場合には“０”が格納される。「取得日時」のフィールドには、受信した出力データに含まれる「検出時刻」の値が格納される。なお、各ゲートウェイ装置ＧＷは、受信した出力データに基づいてセンサデータテーブル２３０を更新するため、必ずしも全てのセンサＳ１〜Ｓｎのセンサデータがセンサデータテーブル２３０に登録されるわけではない。例えば、ゲートウェイ装置ＧＷ１は、センサＳ１〜Ｓ４から出力データを受信できるが、他のセンサからの出力データは受信できない場所に設置されているとする。この場合、センサデータテーブル２３０には、図６に示すように、センサＳ１〜Ｓ４のセンサデータが登録される。
【００２５】
テーブル処理部２２０は、他のゲートウェイ装置ＧＷから変化データ送信要求を受信すると、センサデータテーブル２３０から「変化フラグ」のフィールドに“１”が格納されているレコードを抽出し、変化データ（詳細は後述する）を生成する。テーブル処理部２２０は、生成した変化データを送信要求元のゲートウェイ装置ＧＷに送信する。
【００２６】
また、テーブル処理部２２０は、他のゲートウェイ装置ＧＷから最新データテーブル２５５を受信すると、自装置に保存されているセンサデータテーブル２３０と最新データテーブル２５５とを、受信した最新データテーブル２５５で上書きする。ここで、最新データテーブル２５５は、マスタゲートウェイ装置が収集装置８０に送信した、各センサＳ１〜Ｓｎの最新のセンサデータを格納したテーブルであり、センサデータテーブル２３０と同様の項目を備えている。最新データテーブル２５５の詳細については後述する。
【００２７】
次に、マスタゲートウェイ装置として機能するゲートウェイ装置ＧＷにおいて機能する集約処理部２４０について説明する。
【００２８】
集約処理部２４０は、他のゲートウェイ装置ＧＷに対し変化データの送信要求を送信し、受信した変化データを集約する。集約処理部２４０は、集約したデータに基づいて、マージデータテーブル２５０を更新する。集約処理部２４０は、マージデータテーブル２５０に基づいて、各センサＳ１〜Ｓｎのセンサデータを含む送信データを作成し、収集装置８０に送信する。また、集約処理部２４０は、マージデータテーブル２５０に基づいて、最新データテーブル２５５を更新し、更新した最新データテーブル２５５の内容を、他のゲートウェイ装置ＧＷに配信する。
【００２９】
次に、全てのゲートウェイ装置ＧＷにおいて機能する監視処理部２６０について説明する。
【００３０】
監視処理部２６０は、他のゲートウェイ装置ＧＷにInternet Control Message Protocol（ＩＣＭＰ）エコー要求を送信し、その結果に基づいて、ＧＷ監視テーブル２７０を更新する。
【００３１】
ここで、ＧＷ監視テーブル２７０は、各ゲートウェイ装置ＧＷの状況を管理するテーブルである。図７は、ＧＷ監視テーブル２７０の一例を示す図である。図７に示すように、ＧＷ監視テーブル２７０は、例えば、「ＧＷ名」、「ＩＰアドレス」、「マスタ装置順位」、「ＩＣＭＰ状況」及び「ＩＣＭＰ送信可最終日時」のフィールドを備える。
【００３２】
「ＧＷ名」のフィールドには、各ゲートウェイ装置ＧＷの名称が格納される。「ＧＷ名」のフィールドに、各ゲートウェイ装置ＧＷを識別する識別子を格納してもよい。「ＩＰアドレス」のフィールドには、各ゲートウェイ装置ＧＷに割り当てられているＩＰアドレスの情報が格納される。「マスタ装置順位」のフィールドには、各ゲートウェイ装置ＧＷをマスタゲートウェイ装置として機能させる場合の優先順位が格納されている。なお、「マスタ装置順位」のフィールドに“１”が格納されているゲートウェイ装置ＧＷが、マスタゲートウェイ装置として機能する。
【００３３】
「ＩＣＭＰ状況」のフィールドには、他のゲートウェイ装置ＧＷにＩＣＭＰエコー要求を送信した場合の結果が格納される。「ＩＣＭＰ状況」のフィールドに“ＯＫ”が格納されている場合、ＩＣＭＰエコー要求に対する応答があったことを示し、“ＮＧ”が格納されている場合、応答がなかったことを示す。「ＩＣＭＰ送信可最終日時」のフィールドには、ＩＣＭＰエコー要求に対する応答が最後に確認された日時が格納される。
【００３４】
監視処理部２６０は、ＧＷ監視テーブル２７０を更新すると、更新したＧＷ監視テーブル２７０を他のゲートウェイ装置ＧＷに配信する。また、監視処理部２６０は、他のゲートウェイ装置ＧＷからＧＷ監視テーブル２７０を受信した場合、自装置に保存されているＧＷ監視テーブル２７０を、受信したＧＷ監視テーブル２７０で上書きする。これにより、各ゲートウェイ装置ＧＷが相互に監視しあい、センサネットワークシステム１００内のゲートウェイ装置ＧＷの状況を共有できる。
【００３５】
また、マスタゲートウェイ装置として機能するゲートウェイ装置ＧＷの監視処理部２６０は、センサＳ１〜Ｓｎの状態を監視し、監視結果に基づいて各センサの状態を記録するセンサ監視テーブル２８０を更新する（詳細は後述する）。また、監視処理部２６０は、更新したセンサ監視テーブル２８０を、他のゲートウェイ装置ＧＷに配信する。マスタゲートウェイ装置が配信したセンサ監視テーブル２８０を受信したゲートウェイ装置ＧＷの監視処理部２６０は、自装置に保存されているセンサ監視テーブル２８０を、受信したセンサ監視テーブル２８０で上書きする。
【００３６】
次に、センサネットワークシステム１００において実行される処理について詳細に説明する。なお、以下の説明では、センサネットワークシステム１００がゲートウェイ装置ＧＷ１〜ＧＷ４とセンサＳ１〜Ｓ４とを備え、ゲートウェイ装置ＧＷ１〜ＧＷ４のうちゲートウェイ装置ＧＷ２がマスタゲートウェイ装置として機能する場合を例に説明する。
【００３７】
（センサデータ受信処理）
まず、マスタゲートウェイ装置（ＧＷ２）以外のゲートウェイ装置（ＧＷ１，ＧＷ３，ＧＷ４）のセンサデータ処理部２１０が実行するセンサデータ受信処理の一例について説明する。図８は、センサデータ受信処理の一例を示すフローチャートである。図８に示す処理は、センサデータ受信部２０５が、センサＳ１〜Ｓ４がブロードキャストした出力データを受信するたびに実行される。
【００３８】
図８の処理が開始されると、センサデータ処理部２１０は、受信した出力データ（図３参照）に含まれるセンサＩＤ（受信したセンサＩＤ）がセンサデータテーブル２３０（図６参照）に存在するか否かを判定する（ステップＳ１１）。
【００３９】
受信したセンサＩＤがセンサデータテーブル２３０に存在しない場合（ステップＳ１１：ＮＯ）、センサデータ処理部２１０は、センサデータテーブル２３０にレコードを追加する（ステップＳ１３）。このとき、センサデータ処理部２１０は、受信した出力データに基づいて、追加したレコードの「前回値」以外のフィールドを更新する。具体的には、「センサＩＤ」のフィールドに出力データの「センサＩＤ」の値を格納し、「今回値」のフィールドに「センサデータ」の値を格納し、「変化フラグ」のフィールドに“０”を格納し、「取得日時」のフィールドに「検出日時」の値を格納する。例えば、ゲートウェイ装置ＧＷ１に図９（ａ）に示すセンサデータテーブル２３０が保存されており、センサデータ受信部２０５が図９（ｂ）に示す出力データを受信したとする。この場合、図９（ａ）のセンサデータテーブル２３０には、受信したセンサＩＤ“Ｓ３”が存在しないため、センサデータ処理部２１０は、図９（ｃ）に示すように、センサデータテーブル２３０にセンサＩＤ“Ｓ３”のレコードを追加する。
【００４０】
ステップＳ１３の処理を終了すると、センサデータ処理部２１０は、図８の処理を終了する。
【００４１】
図８に戻り、一方、受信したセンサＩＤがセンサデータテーブル２３０に存在する場合（ステップＳ１１：ＹＥＳ）、センサデータ処理部２１０は、該当するセンサＩＤの「前回値」のフィールドに格納されている値と、受信した出力データのセンサデータ（受信したセンサデータ）とが異なるか否かを判定する（ステップＳ１５）。
【００４２】
「前回値」のフィールドに格納されている値と、受信したセンサデータとが異なる場合（ステップＳ１５：ＹＥＳ）、センサデータ処理部２１０は、該当するセンサＩＤの「今回値」及び「取得日時」のフィールドを更新する（ステップＳ１７）。具体的には、センサデータ処理部２１０は、「今回値」のフィールドに出力データの「センサデータ」の値を格納し、「取得日時」のフィールドに「検出日時」の値を格納する。
【００４３】
次に、センサデータ処理部２１０は、センサデータテーブル２３０の「変化フラグ」のフィールドに“１”を格納し（ステップＳ１９）、図８の処理を終了する。
【００４４】
一方、「前回値」のフィールドに格納されている値と、受信したセンサデータとが同一の場合（ステップＳ１５：ＮＯ）、センサデータ処理部２１０は、該当するレコードの「変化フラグ」のフィールドに“１”が格納されているか否かを判定する（ステップＳ２１）。
【００４５】
該当するレコードの「変化フラグ」のフィールドに“１”が格納されている場合（ステップＳ２１：ＹＥＳ）、センサデータ処理部２１０は、「変化フラグ」のフィールドに“０”を格納し（ステップＳ２３）、図８の処理を終了する。
【００４６】
一方、該当するレコードの「変化フラグ」のフィールドに“１”が格納されていない場合（ステップＳ２１：ＮＯ）、センサデータ処理部２１０は、ステップＳ２３の処理を行わずに、図８の処理を終了する。
【００４７】
（変化データ送信処理）
次に、マスタゲートウェイ装置（ＧＷ２）以外のゲートウェイ装置（ＧＷ１，ＧＷ３，ＧＷ４）のテーブル処理部２２０が実行する変化データ送信処理について説明する。図１０は、変化データ送信処理の一例を示すフローチャートである。図１０の処理は、常時実行される。
【００４８】
まず、テーブル処理部２２０は、他のゲートウェイ装置（ＧＷ２）から変化データ送信要求を受信したか否かを判定する（ステップＳ４１）。
【００４９】
他のゲートウェイ装置（ＧＷ２）から変化データ送信要求を受信していない場合（ステップＳ４１：ＮＯ）、テーブル処理部２２０は、他のゲートウェイ装置ＧＷから、変化データ送信要求を受信するまでステップＳ４１の判定を繰り返す。
【００５０】
一方、他のゲートウェイ装置ＧＷから変化データ送信要求を受信した場合（ステップＳ４１：ＹＥＳ）、テーブル処理部２２０は、センサデータテーブル２３０から「変化フラグ」のフィールドに“１”が格納されているレコードを抽出する（ステップＳ４３）。例えば、図１１（ａ）に示すセンサデータテーブル２３０では、「センサＩＤ」が“Ｓ１”のレコードにおいて「変化フラグ」のフィールドに“１”が格納されている。したがって、この場合、テーブル処理部２２０は、「センサＩＤ」が“Ｓ１”のレコードを抽出する。
【００５１】
次に、テーブル処理部２２０は、抽出したレコードを含む変化データを生成する（ステップＳ４５）。例えば、テーブル処理部２２０は、図１１（ｂ）に示すように、抽出したレコードを含む変化データを生成する。なお、変化データが備えるフィールドは、センサデータテーブル２３０と同様であるため、その説明を省略する。
【００５２】
次に、テーブル処理部２２０は、生成した変化データを、変化データ送信要求元のゲートウェイ装置ＧＷに送信し（ステップＳ４７）、ステップＳ４１に戻る。以上の処理により、テーブル処理部２２０は、前回収集装置８０に送信されたセンサデータ（前回値）から値が変化したセンサデータを送信し、値が同一のセンサデータは送信しないので、送信データのデータ量が削減される。
【００５３】
（変化データ収集処理）
次に、マスタゲートウェイ装置（ＧＷ２）の集約処理部２４０が実行する変化データ収集処理について説明する。図１２は、変化データ収集処理の一例を示すフローチャートである。図１２の処理は、常時実行される。
【００５４】
図１２の処理では、まず、集約処理部２４０は、収集装置８０に送信データ（詳細は後述する）を送信してから所定時間が経過したか否かを判定する（ステップＳ６１）。
【００５５】
収集装置８０に送信データを送信してから所定時間が経過していない場合（ステップＳ６１：ＮＯ）、集約処理部２４０は、所定時間が経過するまでステップＳ６１の判定を繰り返す。所定時間が経過した場合（ステップＳ６１：ＹＥＳ）、集約処理部２４０は、他のゲートウェイ装置（ＧＷ１，ＧＷ３，ＧＷ４）に変化データ送信要求を送信する（ステップＳ６３）。
【００５６】
次に、テーブル処理部２２０は、最新データテーブル２５５をマージデータテーブル２５０として複写する（ステップＳ６５）。前述したように、最新データテーブル２５５は、マスタゲートウェイ装置（ＧＷ２）が収集装置８０に送信した、各センサＳ１〜Ｓｎの最新のセンサデータを格納したテーブルであり、センサデータテーブルと同一のフィールドを備えている。マージデータテーブル２５０は、最新データテーブル２５５と同一のフィールドを備え、収集装置８０に送信するデータを作成する元となるデータを格納するためのテーブルである。
【００５７】
図１２に戻り、テーブル処理部２２０は、他のゲートウェイ装置（ＧＷ１，ＧＷ３，ＧＷ４）から受信した変化データを集約する（ステップＳ６７）。ここで、例えば、ゲートウェイ装置ＧＷ２が、図１３（ａ）〜図１３（ｃ）に示す変化データをそれぞれ、ゲートウェイ装置ＧＷ１，ＧＷ３，ＧＷ４から受信したとする。このとき、ゲートウェイ装置ＧＷ２のテーブル処理部２２０は、例えば、図１３（ａ）〜図１３（ｃ）に示す変化データを集約した集約データ（図１３（ｄ））を作成する。
【００５８】
図１２に戻り、テーブル処理部２２０は、集約データ内にセンサＩＤが同一のレコードが存在するか否かを判定する（ステップＳ６９）。集約データ内にセンサＩＤが同一のレコードが存在する場合（ステップＳ６９：ＹＥＳ）、テーブル処理部２２０は、センサＩＤが同一のレコードの間で「取得日時」を比較し、センサＩＤが同一のレコードのうち「取得日時」が最も新しいレコードを採用する（ステップＳ７１）。具体的には、例えば、テーブル処理部２２０は、取得日時が最も新しいレコードを残し、他のレコードは集約データから削除する。例えば、図１３（ｄ）に示す集約データでは、センサＩＤが“Ｓ３”であるレコードが２つ存在する。この場合、テーブル処理部２２０は、取得日時が最も新しい４行目のレコードを採用し、３行目のレコードを集約データから削除する（図１４（ａ）参照）。
【００５９】
図１２に戻り、集約データ内にセンサＩＤが同一のレコードが存在しない場合（ステップＳ６９：ＮＯ）、又は、ステップＳ７１の処理後、テーブル処理部２２０は、集約データに基づいて、マージデータテーブル２５０のレコードを更新する（ステップＳ７３）。例えば、図１４（ｂ）に示すマージデータテーブル２５０がステップＳ６５において作成されていた場合に、センサＩＤ“Ｓ１”〜“Ｓ３”の各レコードを更新し図１４（ａ）の集約データの各レコードで上書きし、図１４（ｃ）に示すマージデータテーブル２５０を得る。
【００６０】
図１２に戻り、テーブル処理部２２０は、マージデータテーブル２５０から、収集装置８０に送信する送信データを作成し、収集装置８０へ送信する（ステップＳ７５）。具体的には、テーブル処理部２２０は、図１５（ａ）に示すように、マージデータテーブル２５０から必要な情報（図１５（ａ）では、センサＩＤ、種別、今回値）を抽出して、送信データの対応するフィールドに格納する。また、テーブル処理部２２０は、送信データの「取得日時」のフィールドに、送信データの送信時刻を格納する。
【００６１】
図１２に戻り、テーブル処理部２２０は、送信データに基づいて、最新データテーブル２５５のレコードを更新する（ステップＳ７７）。具体的には、最新データテーブル２５５の各センサの「前回値」及び「今回値」のフィールドに送信データの「今回値」を格納し、「変化フラグ」のフィールドに“０”を格納し、「取得日時」のフィールドに、送信データの送信時刻を格納する。例えば、図１５（ａ）に示す送信データを収集装置８０に送信した場合、最新データテーブル２５５は、図１５（ｂ）となる。
【００６２】
図１２に戻り、テーブル処理部２２０は、ＧＷ監視テーブル２７０（図７参照）の「ＩＰアドレス」を参照し、各ゲートウェイ装置（ＧＷ１，ＧＷ３，ＧＷ４）へ最新データテーブル２５５を送信し（ステップＳ７９）、ステップＳ６１に戻る。
【００６３】
なお、他のゲートウェイ装置（ＧＷ２）から最新データテーブル２５５を受信したゲートウェイ装置（ＧＷ１，ＧＷ３，ＧＷ４）のテーブル処理部２２０は、自装置に保存されている最新データテーブル２５５及びセンサデータテーブル２３０を、受信した最新データテーブル２５５で上書きする。これにより、各ゲートウェイ装置（ＧＷ１，ＧＷ３，ＧＷ４）において、各センサＳ１〜Ｓｎの最新のセンサデータと、各センサＳ１〜Ｓｎが検出したセンサデータとを比較し、検出したセンサデータをマスタゲートウェイ装置（ＧＷ２）に送信するか否かを判定することができる。
【００６４】
（ゲートウェイ監視処理）
次に、各ゲートウェイ装置ＧＷ１〜ＧＷ４の監視処理部２６０が実行するゲートウェイ監視処理について説明する。図１６は、監視処理部２６０が実行するゲートウェイ監視処理の一例を示すフローチャートである。図１６の処理は、常時実行される。
【００６５】
監視処理部２６０は、前回ＩＣＭＰエコー要求を他のゲートウェイ装置ＧＷに送信してから、所定時間が経過したか否かを判定する（ステップＳ１０１）。所定時間が経過していない場合（ステップＳ１０１：ＮＯ）、監視処理部２６０は、所定時間が経過するまでステップＳ１０１の判定を繰り返す。
【００６６】
所定時間が経過した場合（ステップＳ１０１：ＹＥＳ）、監視処理部２６０は、各ゲートウェイ装置ＧＷへＩＣＭＰエコー要求を送信し、結果をＧＷ監視テーブル２７０の「ＩＣＭＰ状況」のフィールドに格納する（ステップＳ１０３）。例えば、ゲートウェイ装置ＧＷ２の監視処理部２６０がゲートウェイ装置ＧＷ１にＩＣＭＰエコー要求を送信した場合において、２０１７年３月１４日１２：００：００にはＩＣＭＰエコー要求に対する応答があったが、２０１７年３月１４日１２：００：２５では、ＩＣＭＰエコー要求に対する応答がなかったとする。この場合、ゲートウェイ装置ＧＷ２の監視処理部２６０は、図１７（ａ）に示すように、ＧＷ監視テーブル２７０のゲートウェイ装置ＧＷ１の「ＩＣＭＰ状況」のフィールドに“ＮＧ”を格納する。
【００６７】
次に、監視処理部２６０は、ＧＷ監視テーブル２７０において、「ＩＣＭＰ状況」のフィールドに所定時間以上“ＮＧ”が格納されているゲートウェイ装置ＧＷが存在するか否かを判定する（ステップＳ１０５）。
【００６８】
「ＩＣＭＰ状況」のフィールドに所定時間以上“ＮＧ”が格納されているゲートウェイ装置ＧＷが存在しない場合（ステップＳ１０５：ＮＯ）、ステップＳ１０１に戻る。
【００６９】
「ＩＣＭＰ状況」のフィールドに所定時間以上“ＮＧ”が格納されているゲートウェイ装置ＧＷが存在する場合（ステップＳ１０５：ＹＥＳ）、監視処理部２６０は、ＧＷ監視テーブル２７０において、該当するゲートウェイ装置ＧＷの「マスタ装置順位」を最下位とし、下位のマスタ装置順位を繰り上げる（ステップＳ１０７）。例えば、図１７（ａ）と図１７（ｂ）とを比較すると、ゲートウェイ装置ＧＷ１の「ＩＣＭＰ状況」のフィールドには“ＮＧ”が例えば３０秒以上格納されていることがわかる。この場合、監視処理部２６０は、ゲートウェイ装置ＧＷ１の「マスタ装置順位」を“２”から最下位である“４”に変更し、下位のマスタ装置順位である“３”及び“４”を１ずつ繰り上げる。この結果、図１７（ｃ）に示すように、ゲートウェイ装置ＧＷ３のマスタ装置順位が“２”となり、ゲートウェイ装置ＧＷ４のマスタ装置順位が“３”となる。また、例えば、図１８（ａ）に示すように、ゲートウェイ装置ＧＷ１のＧＷ監視テーブル２７０において、「マスタ装置順位」が“１”である、すなわち、マスタゲートウェイ装置として機能するゲートウェイ装置ＧＷ２の「ＩＣＭＰ状況」のフィールドに“ＮＧ”が所定時間（例えば、２０秒）以上、格納されていたとする。この場合、ゲートウェイ装置ＧＷ１の監視処理部２６０は、ゲートウェイ装置ＧＷ２の「マスタ装置順位」を“１”から最下位である“４”に変更し、下位のマスタ装置順位である“２”〜“４”を１ずつ繰り上げる。この結果、図１８（ｂ）に示すように、ゲートウェイ装置ＧＷ１のマスタ装置順位が“１”となり、ゲートウェイ装置ＧＷ１がマスタゲートウェイ装置として機能することとなる。このように、各ゲートウェイ装置ＧＷがゲートウェイ監視処理を行うことで、マスタゲートウェイ装置に障害が発生した場合に、自律的にマスタゲートウェイ装置の切替を行うことができる。
【００７０】
図１６に戻り、監視処理部２６０は、ＧＷ監視テーブル２７０の「ＩＰアドレス」を参照して各ゲートウェイ装置ＧＷへＧＷ監視テーブル２７０を配信し（ステップＳ１０８）、ステップＳ１０１に戻る。
【００７１】
なお、他のゲートウェイ装置ＧＷからＧＷ監視テーブル２７０を受信したゲートウェイ装置ＧＷの監視処理部２６０は、自装置に保存されているＧＷ監視テーブル２７０を、受信したＧＷ監視テーブル２７０で上書きする。これにより、全てのゲートウェイ装置ＧＷにおいて、各ゲートウェイ装置ＧＷの現在の状況が共有される。
【００７２】
（センサ監視処理）
次に、マスタゲートウェイ装置（ＧＷ２）の監視処理部２６０が実行するセンサ監視処理について説明する。図１９は、センサ監視処理の一例を示すフローチャートである。図１９の処理は、マスタゲートウェイ装置ＧＷ２の集約処理部２４０が変化データを受信するたびに実行される。
【００７３】
図１９の処理では、まず、監視処理部２６０は、センサ監視テーブル２８０において、変化データに含まれるセンサＩＤについて、「変化データ最終受信日時」のフィールドに変化データを受信した日時を格納する（ステップＳ１２１）。ここで、センサ監視テーブル２８０は、図２０に示すように、「センサＩＤ」及び「変化データ最終受信日時」のフィールドを備える。「センサＩＤ」のフィールドには、センサネットワークシステム１００が備える各センサＳ１〜Ｓｎの識別情報が格納される。「変化データ最終受信日時」のフィールドには、センサＩＤで識別されるセンサの変化データを最後に受信した日時が格納される。
【００７４】
次に、監視処理部２６０は、センサ監視テーブル２８０において、「変化データ最終受信日時」が所定時間以上更新されていないかレコードが存在するか否かを判定する（ステップＳ１２３）。「変化データ最終受信日時」が所定時間以上更新されていない場合、センサに何らかの異常が生じたために、センサ部１１が検出するセンサデータに変化がない可能性がある。あるいは、センサの周囲に鉄板等の遮蔽物が設置されたために、センサから送信された出力データがゲートウェイ装置ＧＷにおいて受信できていない可能性がある。そこで、本ステップでは、「変化データ最終受信日時」が所定時間以上更新されていないか否かに基づいて、センサ又はセンサの周囲に異常が発生している可能性があるか否かを判定している。
【００７５】
「変化データ最終受信日時」が所定時間以上更新されていないかレコードが存在する場合（ステップＳ１２３：ＹＥＳ）、監視処理部２６０は、該当するレコードのセンサに異常が発生した可能性があることを通知する（ステップＳ１２５）。例えば、監視処理部２６０は、収集装置８０に、異常が発生した可能性があるセンサのセンサＩＤを含む通知を送信する。あるいは、監視処理部２６０は、不図示の表示装置に、センサに異常が発生した可能性がある旨のメッセージを表示させる。例えば、図２０において、センサＩＤ“Ｓ４”のレコードは、変化データ最終時間が２５秒以上更新されていない。この場合、例えば、監視処理部２６０は、センサＩＤ“Ｓ４”のセンサに異常が発生している可能性があることを通知する。
【００７６】
図１９に戻り、ステップＳ１２５の処理後、又は、「変化データ最終受信日時」が所定時間以上更新されていないかレコードが存在しない場合（ステップＳ１２３：ＮＯ）、監視処理部２６０は、ＧＷ監視テーブル２７０の「ＩＰアドレス」を参照し、他のゲートウェイ装置（ＧＷ１，ＧＷ３，ＧＷ４）にセンサ監視テーブル２８０を配信し（ステップＳ１２７）、図１９の処理を終了する。
【００７７】
なお、センサ監視テーブル２８０を他のゲートウェイ装置（ＧＷ２）から受信したゲートウェイ装置（ＧＷ１，ＧＷ３，ＧＷ４）の監視処理部２６０は、自装置に保存されているセンサ監視テーブル２８０を、受信したセンサ監視テーブル２８０で上書きする。これにより、全てのゲートウェイ装置ＧＷで、センサ監視テーブル２８０の内容が共有される。最新のセンサ監視テーブル２８０を共有することで、自装置がマスタゲートウェイ装置となった場合に、最新のセンサ監視テーブル２８０に基づいてセンサ監視処理を行うことができる。
【００７８】
以上詳細に述べたように、本実施形態に係るゲートウェイ装置（ＧＷ１，ＧＷ３，ＧＷ４）によれば、センサデータ処理部２１０は、センサデータと、当該センサデータを検出したセンサのセンサＩＤ（識別情報）と、を受信すると、他のゲートウェイ装置（ＧＷ２）が取得したセンサデータを、当該センサデータを検出したセンサのセンサＩＤに対応付けて記憶するセンサデータテーブル２３０を参照して、受信したセンサＩＤに対応付けられたセンサデータを特定し、受信したセンサデータと、特定したセンサデータとを比較する。そして、テーブル処理部２２０は、比較結果に応じて、受信したセンサデータを送信するか否かを判定する。これにより、比較結果に応じて、受信したセンサデータを送信しないようにすることができるため、送信データのデータ量を削減することができる。
【００７９】
また、本実施形態において、テーブル処理部２２０は、受信したセンサデータと、特定したセンサデータとが異なる場合に、受信したセンサデータを送信すると判定する。これにより、受信したセンサデータと特定したセンサデータとが同一の場合には、受信したセンサデータが送信されないため、送信データのデータ量を削減することができる。
【００８０】
また、本実施形態において、テーブル処理部２２０は、受信したセンサデータを送信すると判定した場合に、受信したセンサデータを他のゲートウェイ装置（ＧＷ２）に送信する。これにより、値に変化があったセンサデータを、他のゲートウェイ装置（ＧＷ２）に提供することができる。
【００８１】
また、本実施形態において、テーブル処理部２２０は、他のゲートウェイ装置（ＧＷ２）が取得したセンサデータと、当該センサデータを検出したセンサのセンサＩＤとを、他のゲートウェイ装置（ＧＷ２）から受信し、受信した他のゲートウェイ装置（ＧＷ２）が取得したセンサデータと、当該センサデータを検出したセンサのセンサＩＤとを対応付けてセンサデータテーブル２３０に記憶させる。これにより、テーブル処理部２２０は、他のゲートウェイ装置（ＧＷ２）が管理しているセンサデータと、受信したセンサデータとの比較結果に応じて、受信したセンサデータを送信するか否かを判定することができる。
【００８２】
また、本実施形態において、他のゲートウェイ装置（ＧＷ２）が取得したセンサデータは、ゲートウェイ装置（ＧＷ１，ＧＷ３，ＧＷ４）から受信したセンサデータのうち検出時刻が最も新しいセンサデータである。これにより、テーブル処理部２２０は、他のゲートウェイ装置（ＧＷ２）が保持する検出時刻が最も新しいセンサデータと、受信したセンサデータとの比較結果に応じて、受信したセンサデータを送信するか否かを判定することができる。
【００８３】
また、本実施形態に係るセンサネットワークシステム１００によれば、複数のゲートウェイ装置（ＧＷ１，ＧＷ３，ＧＷ４）は、センサから当該センサが検出したセンサデータを受信し、受信したセンサデータとセンサデータを検出したセンサのセンサＩＤとをゲートウェイ装置ＧＷ２に送信する。ゲートウェイ装置ＧＷ２は、複数のゲートウェイ装置（ＧＷ１，ＧＷ３，ＧＷ４）から、センサデータと、センサデータを検出したセンサのセンサＩＤと、を受信すると、受信したセンサデータと、受信したセンサデータを検出したセンサのセンサＩＤとを対応付けて集約し、同一のセンサＩＤに対して複数のセンサデータが存在する場合、センサデータの検出時刻に基づいて、複数のセンサデータのうちいずれのセンサデータを採用するかを決定する。センサごとに、当該センサが検出したセンサデータの送信を担当するゲートウェイ装置を予め定めておく場合、あるゲートウェイ装置に故障等が発生すると、そのゲートウェイ装置が送信を担当しているセンサのセンサデータが送信されず、データ欠損が生じてしまう。一方、本実施形態では、複数のゲートウェイ装置（ＧＷ１，ＧＷ３，ＧＷ４）は、それぞれが受信したセンサデータ及び当該センサデータを検出したセンサのセンサＩＤをゲートウェイ装置ＧＷ２に送信し、ゲートウェイ装置ＧＷ２は、複数のゲートウェイ装置（ＧＷ１，ＧＷ３,ＧＷ４）から受信したセンサデータをマージした後、同一のセンサＩＤに対して複数のセンサデータがある場合には、センサデータの検出時刻に基づいて、採用するセンサデータを決定する。これにより、データ欠損が生じるのを低減することができる。
【００８４】
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、処理装置が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体（ただし、搬送波は除く）に記録しておくことができる。
【００８５】
プログラムを流通させる場合には、例えば、そのプログラムが記録されたDigital Versatile Disc（ＤＶＤ）、Compact Disc Read Only Memory（ＣＤ−ＲＯＭ）などの可搬型記録媒体の形態で販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【００８６】
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
【００８７】
上述した実施形態は本発明の好適な実施の例である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変形実施可能である。
【００８８】
なお、以上実施形態の説明に関して、更に以下の付記を開示する。
（付記１）情報処理装置により実行される送信制御プログラムにおいて、センサデータと、該センサデータを検出したセンサの識別情報と、を受信すると、他の情報処理装置が取得したセンサデータを、該センサデータを検出したセンサの識別情報に対応付けて記憶する記憶部を参照して、受信した前記センサの識別情報に対応付けられたセンサデータを特定し、受信した前記センサデータと、特定した前記センサデータとを比較し、比較結果に応じて、受信した前記センサデータを送信するか否かを判定する、処理を含むことを特徴とする送信制御プログラム。
（付記２）前記判定する処理では、受信した前記センサデータと、特定した前記センサデータとが異なる場合に、受信した前記センサデータを送信すると判定する、ことを特徴とする付記１記載の送信制御プログラム。
（付記３）前記判定する処理において、受信した前記センサデータを送信すると判定した場合に、受信した前記センサデータを前記他の情報処理装置に送信する、処理を更にコンピュータに実行させることを特徴とする付記２記載の送信制御プログラム。
（付記４）前記他の情報処理装置が取得したセンサデータと、該センサデータを検出したセンサの識別情報とを、前記他の情報処理装置から受信し、受信した前記他の情報処理装置が取得したセンサデータと、該センサデータを検出したセンサの識別情報とを対応付けて前記記憶部に記憶させる、処理を更にコンピュータに実行させることを特徴とする付記１から３のいずれかに記載の送信制御プログラム。
（付記５）前記他の情報処理装置が取得したセンサデータは、前記情報処理装置から受信したセンサデータのうち検出時刻が最も新しいセンサデータである、ことを特徴とする付記１から４のいずれか１項記載の送信制御プログラム。
（付記６）情報処理装置により実行される送信制御方法であって、センサデータと、該センサデータを検出したセンサの識別情報と、を受信すると、他の情報処理装置が取得したセンサデータを、該センサデータを検出したセンサの識別情報に対応付けて記憶する記憶部を参照して、受信した前記センサの識別情報に対応付けられたセンサデータを特定し、受信した前記センサデータと、特定した前記センサデータとを比較し、比較結果に応じて、受信した前記センサデータを送信するか否かを判定する、処理を含む送信制御方法。
（付記７）センサデータと、該センサデータを検出したセンサの識別情報と、を受信すると、他の情報処理装置が取得したセンサデータを、該センサデータを検出したセンサの識別情報に対応付けて記憶する記憶部を参照して、受信した前記センサの識別情報に対応付けられたセンサデータを特定し、受信した前記センサデータと、特定した前記センサデータとを比較し、比較結果に応じて、受信した前記センサデータを送信するか否かを判定する、処理を実行する処理部を備える情報処理装置。
（付記８）前記処理部は、受信した前記センサデータと、特定した前記センサデータとが異なる場合に、受信した前記センサデータを送信すると判定する、付記７記載の情報処理装置。
（付記９）前記処理部は、受信した前記センサデータを送信すると判定した場合に、受信した前記センサデータを前記他の情報処理装置に送信する、付記８記載の情報処理装置。
（付記１０）前記処理部は、前記他の情報処理装置が取得したセンサデータと、該センサデータを検出したセンサの識別情報とを、前記他の情報処理装置から受信し、受信した前記他の情報処理装置が取得したセンサデータと、該センサデータを検出したセンサの識別情報とを対応付けて前記記憶部に記憶させる、付記７から９のいずれかに記載の情報処理装置。
（付記１１）前記他の情報処理装置が取得したセンサデータは、前記情報処理装置から受信したセンサデータのうち検出時刻が最も新しいセンサデータである、ことを特徴とする付記７から１０のいずれかに記載の情報処理装置。
（付記１２）センサから該センサが検出したセンサデータを受信し、受信した前記センサデータと前記センサデータを検出したセンサの識別情報とを送信する複数の第１の情報処理装置と、前記複数の第１の情報処理装置から、前記センサデータと、前記センサデータを検出したセンサの識別情報と、を受信すると、受信した前記センサデータと、受信した前記センサデータを検出したセンサの識別情報とを対応付けてマージし、同一の前記センサの識別情報に対して複数のセンサデータが存在する場合、前記センサデータの検出時刻に基づいて、前記複数のセンサデータのうちいずれのセンサデータを採用するかを決定する第２の情報処理装置と、を備えることを特徴とするデータ収集システム。
【符号の説明】
【００８９】
Ｓ１〜Ｓｎ  センサ
１００  センサネットワークシステム
ＧＷ１〜ＧＷｍ  ゲートウェイ装置
２１０  センサデータ処理部
２２０  テーブル処理部
２３０  センサデータテーブル
【図１】
2018201154.tif 000003
【図２】
2018201154.tif 000004
【図３】
2018201154.tif 000005
【図４】
2018201154.tif 000006
【図５】
2018201154.tif 000007
【図６】
2018201154.tif 000008
【図７】
2018201154.tif 000009
【図８】
2018201154.tif 000010
【図９】
2018201154.tif 000011
【図１０】
2018201154.tif 000012
【図１１】
2018201154.tif 000013
【図１２】
2018201154.tif 000014
【図１３】
2018201154.tif 000015
【図１４】
2018201154.tif 000016
【図１５】
2018201154.tif 000017
【図１６】
2018201154.tif 000018
【図１７】
2018201154.tif 000019
【図１８】
2018201154.tif 000020
【図１９】
2018201154.tif 000021
【図２０】
2018201154.tif 000022