(57)【要約】      （修正有）【課題】効率的にデータを収集できるデータ収集システムを提供する。【解決手段】データ収集システムは、ネットワークを介してサーバに接続される情報処理装置と、情報処理装置と通信可能であり、所定のイベントに関する所定のデータを検出するセンサから所定のデータを取得する通信ノードとを含み、情報処理装置は、サーバから所定のイベントの発生時刻を取得する時刻取得部と、時刻取得部によって取得されたイベントの発生時刻よりも通信ノードの起動時間だけ前の起動開始時刻を求める時刻算出部と、時刻算出部によって求められる起動開始時刻を通信ノードに送信する第１通信部とを有し、通信ノードは、第１通信部から受信する起動開始時刻に起動を開始し、起動が完了するとセンサによって検出される所定のデータを取得するデータ取得部と、データ取得部によって取得される所定のデータを第１通信部に送信する第２通信部とを有する。【選択図】図９
2020087301.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介してサーバに接続される情報処理装置と、前記情報処理装置と通信可能な通信ノードであって、所定のイベントに関する所定のデータを検出するセンサから前記所定のデータを取得する通信ノードとを含むデータ収集システムであって、
前記情報処理装置は、
前記サーバから前記所定のイベントの発生時刻を取得する時刻取得部と、
前記時刻取得部によって取得されたイベントの発生時刻よりも前記通信ノードの起動時間だけ前の起動開始時刻を求める時刻算出部と、
前記時刻算出部によって求められる起動開始時刻を前記通信ノードに送信する第１通信部と、
を有し、
前記通信ノードは、
前記第１通信部から受信する前記起動開始時刻に起動を開始し、起動が完了すると前記センサによって検出される所定のデータを取得するデータ取得部と、
前記データ取得部によって取得される所定のデータを前記第１通信部に送信する第２通信部と
を有する、データ収集システム。
【請求項２】
前記所定のイベントの発生時刻は、前記サーバによって、所定の乗り物の時刻表に含まれる時刻に基づいて求められる、請求項１記載のデータ収集システム。
【請求項３】
前記所定のイベントの発生時刻は、前記所定の乗り物の時刻表に含まれる時刻と、前記所定の乗り物の時刻表に含まれる位置と、前記センサが前記所定のデータを検出する検出位置とに基づいて前記サーバによって求められる、前記所定の乗り物が前記検出位置を通過する通過時刻である、請求項２記載のデータ収集システム。
【請求項４】
前記所定のイベントの発生時刻は、前記サーバによって、前記センサが前記所定のデータを検出する検出位置を所定の乗り物が通過する通過時刻として求められる、請求項１記載のデータ収集システム。
【請求項５】
前記検出位置は、道路に沿って所定の構造物が設けられた位置であり、
前記センサは、前記所定のデータとして前記所定の構造物の変位を検出する、請求項３又は４記載のデータ収集システム。
【請求項６】
ネットワークを介してサーバに接続されるとともに、所定のイベントに関する所定のデータを検出するセンサから前記所定のデータを取得する通信ノードと通信可能な情報処理装置であって、
前記サーバから前記所定のイベントの発生時刻を取得する時刻取得部と、
前記時刻取得部によって取得されたイベントの発生時刻よりも前記通信ノードの起動時間だけ前の起動開始時刻を求める時刻算出部と、
前記時刻算出部によって求められる起動開始時刻を前記通信ノードに送信する通信部と
を含む、情報処理装置。
【請求項７】
ネットワークを介してサーバに接続される情報処理装置と通信可能であり、所定のイベントに関する所定のデータを検出するセンサから前記所定のデータを取得する通信ノードであって、
前記情報処理装置が前記サーバから受信する前記所定のイベントの発生時刻よりも前記通信ノードの起動時間だけ前の起動開始時刻が前記情報処理装置によって求められ、前記起動開始時刻を前記情報処理装置から受信すると、前記起動開始時刻に起動を開始し、起動が完了すると前記センサによって検出される所定のデータを取得するデータ取得部と、
前記データ取得部によって取得される所定のデータを前記情報処理装置に送信する通信部と
を含む、通信ノード。
【請求項８】
ネットワークを介してサーバに接続される情報処理装置と、前記情報処理装置と通信可能な通信ノードであって、所定のイベントに関する所定のデータを検出するセンサから前記所定のデータを取得する通信ノードとを含むデータ収集システムにおけるデータ収集方法であって、
前記情報処理装置は、
前記サーバから前記所定のイベントの発生時刻を取得し、
前記取得したイベントの発生時刻よりも前記通信ノードの起動時間だけ前の起動開始時刻を求め、
前記求めた起動開始時刻を前記通信ノードに送信し、
前記通信ノードは、
前記情報処理装置から受信した前記起動開始時刻に起動を開始し、起動が完了すると前記センサによって検出される所定のデータを取得し、
前記取得した所定のデータを前記情報処理装置に送信する、データ収集方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ収集システム、情報処理装置、通信ノード、及びデータ収集方法に関する。
【背景技術】
【０００２】
従来より、測定対象物の測定対象部位の状態を測定するセンサと、前記センサの測定情報を無線送信する機能を有する通信部とを有するセンサタグと、前記通信部から無線送信された測定情報を受信する機能を有するリーダーライターとを備えるセンサシステムがある。
【０００３】
前記センサタグは、前記通信部が第１の送信時間間隔で前記センサの測定情報を無線送信する第１の状態と、前記通信部が前記第１の送信時間間隔よりも短い第２の送信時間間隔で前記センサの測定情報を無線送信する第２の状態とを切り換え可能に構成される。
【０００４】
前記第１の状態では、前記通信部が第１のキャリアセンス時間間隔でキャリアセンスを行い、前記第２の状態では、前記通信部が前記第１のキャリアセンス時間間隔よりも短い第２のキャリアセンス時間間隔でキャリアセンスを行うことを特徴とする（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１３−１０９５６１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、従来のセンサシステムは、第１の状態では第１の測定時間間隔で測定を行い、第２の状態では第１の測定時間間隔よりも長い第２の測定時間間隔で測定を行っている。このため、第１の測定時間間隔及び第２の測定時間間隔のいずれで測定を行っている場合においても、測定時間間隔の間で測定対象になる事象が発生した場合には、事象が発生した時点と、事象発生直後の所定期間とにおける測定データを取得できなくなる。特に、第１状態で待機しているときに事象が発生して第２状態への切り替えが遅れると、測定データを取得できない期間が長くなる。
【０００７】
センサによる測定を常時行えば、測定データを取得できない期間を無くすことはできるが、消費電力が増大するため、効率的にデータを収集することができなくなる。
【０００８】
そこで、効率的にデータを収集できるデータ収集システム、情報処理装置、通信ノード、及びデータ収集方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の実施の形態のデータ収集システムは、ネットワークを介してサーバに接続される情報処理装置と、前記情報処理装置と通信可能な通信ノードであって、所定のイベントに関する所定のデータを検出するセンサから前記所定のデータを取得する通信ノードとを含むデータ収集システムであって、前記情報処理装置は、前記サーバから前記所定のイベントの発生時刻を取得する時刻取得部と、前記時刻取得部によって取得されたイベントの発生時刻よりも前記通信ノードの起動時間だけ前の起動開始時刻を求める時刻算出部と、前記時刻算出部によって求められる起動開始時刻を前記通信ノードに送信する第１通信部と、を有し、前記通信ノードは、前記第１通信部から受信する前記起動開始時刻に起動を開始し、起動が完了すると前記センサによって検出される所定のデータを取得するデータ取得部と、前記データ取得部によって取得される所定のデータを前記第１通信部に送信する第２通信部とを有する。
【発明の効果】
【００１０】
効率的にデータを収集できるデータ収集システム、情報処理装置、通信ノード、及びデータ収集方法を提供することができる。
【図面の簡単な説明】
【００１１】
【図１】実施の形態のデータ収集システム１０を示す図である。
【図２】情報サーバ５０を実現するコンピュータシステム２０の斜視図である。
【図３】コンピュータシステム２０の本体部２１内の要部の構成を説明するブロック図である。
【図４】情報サーバ５０の構成を示す図である。
【図５】ゲートウェイ１００の構成を示す図である。
【図６】センサノード２００の構成を示す図である。
【図７】センサノード２００のモードを説明する図である。
【図８】ゲートウェイ１００とセンサノード２００の設置場所の一例を示す図である。
【図９】センサノード２００のパーシャルスリープモードを利用した測定手法を説明する図である。
【図１０】時刻表データの一例を示す図である。
【図１１】スリープモードを利用した測定手法を説明する図である。
【図１２】ゲートウェイ１００の制御装置１１０がセンサノード２００Ａ〜２００Ｅを初期化する処理を示すフローチャートである。
【図１３】センサノード２００Ａ〜２００Ｅの初期化の処理を示すフローチャートである。
【図１４】ゲートウェイ１００が実行する処理を示すフローチャートである。
【図１５】センサノード２００Ａ〜２００Ｅが実行する処理を示すフローチャートである。
【図１６】ゲートウェイ１００が実行する処理を示すフローチャートである。
【図１７】センサノード２００が実行する処理を示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下、本発明のデータ収集システム、情報処理装置、通信ノード、及びデータ収集方法を適用した実施の形態について説明する。
【００１３】
＜実施の形態＞
図１は、実施の形態のデータ収集システム１０を示す図である。データ収集システム１０は、情報サーバ５０、測定サーバ７０、ゲートウェイ１００、及びセンサノード２００を含む。以下では、データ収集システム１０が情報サーバ５０及び測定サーバ７０を含む形態について説明するが、データ収集システム１０は、情報サーバ５０及び／又は測定サーバ７０を含まない形態であってもよい。
【００１４】
データ収集システム１０は、ゲートウェイ１００が情報サーバ５０から入手するイベントの発生時刻に基づいて、イベント発生時刻よりも起動時間だけ早い時刻にセンサノード２００を起動し、イベントによって生じる事象を最初からセンサノード２００で測定することによって、効率的にデータ収集を行うシステムである。データ収集の条件は、測定サーバ７０によって指定される。
【００１５】
イベントは、一例として、乗り物が所定の場所を通過することである。所定の場所は、一例として、道路沿いにある構造物としての橋梁であり、センサノード２００によって事象が測定される測定対象である。
【００１６】
また、イベントによって生じる事象は、一例として、乗り物が橋梁を通過することによって生じる振動である。また、乗り物とは、車両、電車、汽車、船、飛行機、馬車等であり、人、動物、又は荷物等を乗せて移動するものである。
【００１７】
情報サーバ５０は、インターネット５００を介して測定サーバ７０及びゲートウェイ１００とデータ通信可能に接続されている。情報サーバ５０は、サーバの一例である。情報サーバ５０は、一例として、時刻表データ、道路交通データ等を保持しており、センサノード２００の動作に必要なデータ等をゲートウェイ１００に送信する。ゲートウェイ１００に送信されるデータの１つは、イベント発生時刻を表すデータである。
【００１８】
測定サーバ７０は、利用者によってデータ収集の条件が入力されると、インターネット５００を介してデータ収集の条件を情報サーバ５０及びゲートウェイ１００に通知する。また、測定サーバ７０は、ゲートウェイ１００を介して、センサノード２００によって検出されたデータを収集する。
【００１９】
ゲートウェイ１００は、インターネット５００を介して情報サーバ５０及び測定サーバ７０とデータ通信可能に接続されるとともに、無線通信網を介してセンサノード２００とデータ通信可能に接続されている。ゲートウェイ１００は、情報サーバ５０及び測定サーバ７０とセンサノード２００との間でプロトコルの変換等の処理を行う他に、以下のような処理を行う。
【００２０】
ゲートウェイ１００は、情報サーバ５０から入手するイベント発生時刻を表すデータに基づいて、イベント発生時刻よりも起動時間だけ早い時刻にセンサノード２００を起動し、センサノード２００に測定データを取得させる。また、ゲートウェイ１００は、センサノード２００から測定データを取得し、情報サーバ５０に送信する。
【００２１】
ゲートウェイ１００は、情報サーバ５０とセンサノード２００との間に位置する情報処理装置又はデータ集約装置の一例である。
【００２２】
センサノード２００は、所定のイベントに関する所定のデータを検出するセンサを内蔵し、ゲートウェイ１００から受信するコマンドに応じてセンサの検出値を表すデータをゲートウェイ１００に送信する。センサノード２００は、通信ノードの一例である。
【００２３】
図２は、情報サーバ５０を実現するコンピュータシステム２０の斜視図である。図２に示すコンピュータシステム２０は、本体部２１、ディスプレイ２２、キーボード２３、マウス２４、及びモデム２５を含む。
【００２４】
本体部２１は、ＣＰＵ（Central  Processing  Unit：中央演算装置）、ＨＤＤ（Hard  Disk  Drive：ハードディスクドライブ）、及びディスクドライブ等を内蔵する。ディスプレイ２２は、本体部２１からの指示により画面２２Ａ上に処理結果等を表示する。ディスプレイ２２は、例えば、液晶モニタであればよい。キーボード２３は、コンピュータシステム２０に種々の情報を入力するための入力部である。マウス２４は、ディスプレイ２２の画面２２Ａ上の任意の位置を指定する入力部である。モデム２５は、外部のデータベース等にアクセスして他のコンピュータシステムに記憶されているプログラム等をダウンロードする。
【００２５】
コンピュータシステム２０に情報サーバ５０としての機能を持たせるプログラムは、ディスク２７等の可搬型記録媒体に格納されるか、モデム２５等の通信装置を使って他のコンピュータシステムの記録媒体２６からダウンロードされ、コンピュータシステム２０に入力されてコンパイルされる。
【００２６】
コンピュータシステム２０に情報サーバ５０としての機能を持たせるプログラムは、コンピュータシステム２０を情報サーバ５０として動作させる。このプログラムは、例えばディスク２７等のコンピュータ読み取り可能な記録媒体に格納されていてもよい。コンピュータ読み取り可能な記録媒体は、ディスク２７、ＩＣカードメモリ、フロッピー（登録商標）ディスク等の磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＵＳＢ(Universal  Serial  Bus)メモリ等の可搬型記録媒体に限定されるものではない。コンピュータ読み取り可能な記録媒体は、モデム２５又はＬＡＮ等の通信装置を介して接続されるコンピュータシステムでアクセス可能な各種記録媒体を含む。
【００２７】
なお、ここでは情報サーバ５０を実現するコンピュータシステム２０について説明したが、測定サーバ７０を実現するコンピュータシステムも同様の構成を有する。このため、以下では、測定サーバ７０も図２に示すコンピュータシステム２０によって実現されるものとして説明する。
【００２８】
図３は、コンピュータシステム２０の本体部２１内の要部の構成を説明するブロック図である。本体部２１は、バス３０によって接続されたＣＰＵ３１、ＲＡＭ又はＲＯＭ等を含むメモリ部３２、ディスク２７用のディスクドライブ３３、及びハードディスクドライブ（ＨＤＤ）３４を含む。
【００２９】
なお、コンピュータシステム２０は、図２及び図３に示す構成のものに限定されず、各種周知の要素を付加してもよく、又は代替的に用いてもよい。
【００３０】
図４は、情報サーバ５０の構成を示す図である。情報サーバ５０は、制御部５１、データベース５２、通信部５３、及びアンテナ５４を有する。ここでは、乗り物が路線バスを含む車両であり、情報サーバ５０がイベント発生時刻をゲートウェイ１００に送信する形態について説明する。なお、測定対象の橋梁は、測定サーバ７０のキーボード２３又はマウス２４（図２参照）への入力操作によって指定され、インターネット５００を介して情報サーバ５０に入力される。
【００３１】
イベント発生時刻は、車両が橋梁に進入する時刻である。情報サーバ５０が保持する道路交通データは、地図データに含まれる各道路（各リンク）を走行する車両の位置（場所）を表す位置データを有する。位置データはリアルタイムで変化するものであり、スマートフォン端末機のようにＧＰＳ(Global  Positioning  System)装置と通信機能を有する端末機の移動履歴を表すデータとして、情報サーバ５０によって取得される。このような位置データは、ＧＰＳ装置と通信機能を有する端末機であれば、スマートフォン端末機以外のものからも取得することが可能である。
【００３２】
位置データの時間的な変化から車両の速度を求めることができるため、測定対象の橋梁に車両が進入する時刻を事前に予測することができる。なお、位置データは、車両のものに限らず歩行者及び自転車等のものも含まれる。このため、一例として、速度が所定速度（例えば、３０ｋｍ／ｈ）以上である位置データを車両の位置データとして取り扱えばよい。このように、道路交通データから車両が橋梁に進入する時刻（イベント発生時刻）を取得することができる。
【００３３】
また、イベント発生時刻は、時刻表データからも取得される。例えば、測定対象の橋梁を運行経路に含む路線バスがある場合に、橋梁を挟む２つの停留所の時刻表を用いれば、路線バスが所定の橋梁を通過する時間帯を特定できる。
【００３４】
路線バスが橋梁を通過する時刻を時刻表データから直接的に求めることはできないため、ここでは、測定対象の橋梁を挟む路線バスの２つの停留所の時刻表のうち、路線バスの進行方向において橋梁の手前側にある停留所の時刻表データが表す時刻表が、路線バスが橋梁を通過する時刻として取り扱う。
【００３５】
すなわち、測定対象の橋梁を挟む路線バスの２つの停留所の時刻表のうち、進行方向において橋梁の手前側にある停留所の時刻表データに含まれる路線バスの発車時刻をイベント発生時刻として取り扱う。
【００３６】
制御部５１は、測定対象の橋梁を通行する車両が橋梁に進入する時刻を算出し、ゲートウェイ１００に送信する。また、制御部５１は、測定対象の橋梁を挟む２つの停留所の時刻表データをデータベース５２から抽出し、通信部５２を介してゲートウェイ１００に送信する。
【００３７】
データベース５２は、時刻表データ、道路交通データ等を格納する。これらのうち、時刻表データについては、データベース５２は、予め所定の地域に含まれる複数の停留所の時刻表データを格納する形態であってもよい。この場合には、制御部５１は、キーボード２３又はマウス２４（図２参照）を介して入力される２つの停留所の時刻表データをデータベース５２に予め格納されている複数の時刻表データから抽出すればよい。
【００３８】
また、測定サーバ７０のキーボード２３又はマウス２４（図２参照）を介して入力される２つの停留所の時刻表データを制御部５１がインターネット５００を介してバス会社のホームページ等からダウンロードし、データベース５２は、ダウンロードされた時刻表データを格納する形態であってもよい。また、データベース５２は、これら２つの形態を組み合わせた形態で時刻表データを格納してもよい。
【００３９】
通信部５３は、アンテナ５４を介してインターネット５００に接続するモデム等である。
【００４０】
図５は、ゲートウェイ１００の構成を示す図である。ゲートウェイ１００は、制御装置１１０、通信部１２０、及びアンテナ１３０を有する。
【００４１】
制御装置１１０は、ＣＰＵ、ＲＡＭ又はＲＯＭ等を含むメモリ部、及び、ハードディスクドライブ（ＨＤＤ）等を含むコンピュータシステムによって実現される。制御装置１１０のコンピュータシステムとしての構成は、図３に示すコンピュータシステム２０と同様である。
【００４２】
制御装置１１０は、主制御部１１１、時刻取得部１１２、時刻算出部１１３、及びメモリ１１４を有する。主制御部１１１、時刻取得部１１２、及び時刻算出部１１３は、制御装置１１０が実行するプログラムの機能（ファンクション）を機能ブロックとして示したものである。また、メモリ１１４は、制御装置１１０のメモリを機能的に表したものである。
【００４３】
主制御部１１１は、ゲートウェイ１００の制御を統括する処理部であり、時刻取得部１１２、時刻算出部１１３が実行する処理以外の処理を実行する。主制御部１１１は、例えば、ブート開始時刻、測定時間をセンサノード２００に送信し、測定データを測定サーバ７０に送信する処理等を行う。
【００４４】
時刻取得部１１２は、イベント発生時刻を取得する。より具体的には、時刻取得部１１２は、車両が橋梁に進入する時刻と、時刻表データとを情報サーバ５０から取得する。時刻取得部１１２によって取得される時刻表データは、センサノード２００で振動を測定する対象になる橋梁を挟む路線バスの２つの停留所の時刻表を表すデータである。
【００４５】
時刻算出部１１３は、車両が橋梁に進入する時刻から、センサノード２００のブート時間を差し引いたブート開始時刻を求める。ブート開始時刻は、センサノード２００がブートを開始する時刻（ブート開始時刻）を表す。ブート開始時刻は、起動開始時刻の一例である。
【００４６】
また、時刻算出部１１３は、時刻取得部１１２によって取得される２つの時刻表データのうち、橋梁の手前側に位置する停留所の時刻表データが表す時刻表から、センサノード２００のブート時間を差し引いたタイムテーブルを作成する。このタイムテーブルは、センサノード２００がブートを開始する時刻（ブート開始時刻）を表す。
【００４７】
メモリ１１４は、ゲートウェイ１００が処理を行うために必要なプログラム及びデータを格納するとともに、センサノード２００から受信する検出値を表すデータを一時的に格納する。また、メモリ１１４は、ゲートウェイ１００が処理を行うために必要なその他のデータ等を格納する。
【００４８】
通信部１２０は、アンテナ１３０を介して情報サーバ５０との間でデータの送受信を行う。また、通信部１２０は、アンテナ１３０を介してセンサノード２００に測定コマンド及び切替コマンドを送信するとともに、センサノード２００から各種通知とデータ（加速度データ）を受信する。通信部１２０は、第１通信部の一例である。
【００４９】
図６は、センサノード２００の構成を示す図である。センサノード２００は、ＰＭＵ(Power  Management  Unit)２１０、制御装置２２０、センサ２３０、通信部２４０、及びアンテナ２５０を含む。センサノード２００には、外部の電源から電力が供給される。
【００５０】
ＰＭＵ２１０は、制御部２１１とタイマ２１２を有する。ＰＭＵ２１０は、外部の電源から供給される電力を制御装置２２０、センサ２３０、及び通信部２４０に割り振る。ＰＭＵ２１０は、制御装置２２０によって設定されるモードに応じて、電力の割り振りを行う。割り振りの制御は、ＰＭＵ２１０の制御部２１１が行う。タイマ２１２は、スリープモードにおけるスリープ時間のカウントを行う。
【００５１】
制御装置２２０は、センサノード２００の制御を行う処理部であり、マイクロコンピュータによって実現される。マイクロコンピュータは、ＣＰＵと、ＲＡＭ又はＲＯＭ等を含むメモリ部とを有する。
【００５２】
制御装置２２０は、主制御部２２１、モード切替部２２２、及びメモリ２２３を含む。主制御部２２１とモード切替部２２２は、制御装置２２０が実行するプログラムの機能（ファンクション）を機能ブロックとして示したものである。また、メモリ２２３は、制御装置２２０のメモリを機能的に表したものである。
【００５３】
主制御部２２１は、センサノード２００の制御を統括する処理部であり、モード切替部２２２が実行するモード切替処理以外の処理を実行する。例えば、主制御部２２１は、ゲートウェイ１００から受信する測定コマンドに応じてセンサ２３０の検出値を表すデータを取得し、ゲートウェイ１００に送信する。主制御部２２１は、データ取得部の一例である。
【００５４】
モード切替部２２２は、ゲートウェイ１００から受信する切替コマンドに応じて、センサノード２００のモードを起動モード、スリープモード、及びパーシャルスリープモードのうちのいずれか１つに設定する。これらのモードについては、図７を用いて後述する。
【００５５】
メモリ２２３は、センサノード２００が処理を行うために必要なプログラム及びデータを格納するとともに、センサ２３０の検出値を表すデータを一時的に格納する。また、メモリ２２３は、センサノード２００が処理を行うために必要なその他のデータ等を格納する。
【００５６】
センサ２３０は、一例として３軸加速度であり、３軸（ＸＹＺ）方向の加速度を検出する。センサ２３０は、制御装置２２０の主制御部２２１から入力される指令に応じて３軸方向の加速度を検出し、検出した加速度を表すデータ（加速度データ）を通信部２４０に出力する。
【００５７】
通信部２４０は、送受信部２４１、送信部２４２、及びビーコン出力部２４３を有し、アンテナ２５０に接続されている。通信部２４０は、第２通信部の一例である。送受信部２４１は、アンテナ２５０を介してゲートウェイ１００との間でデータの送受信を行う。送受信部２４１は、ゲートウェイ１００から測定コマンド及び切替コマンドを受信し、センサノード２００の起動が完了したことを表す起動完了通知、及び、データ（加速度データ）のサンプリング（測定）が完了したことを表すサンプリング完了通知等をゲートウェイ１００に送信する。
【００５８】
送信部２４２は、センサ２３０によって検出されたデータ（加速度データ）をアンテナ２５０を介してゲートウェイ１００に送信する。ビーコン出力部２４３は、アンテナ２５０を介してビーコン信号を放射する。ビーコン信号は、各センサノード２００のＩＤ(Identifier)を含む。センサノード２００は、ゲートウェイ１００にコマンドをリクエストするとき等にビーコン信号をビーコン出力部２４３に放射させる。
【００５９】
アンテナ２５０は、送受信部２４１、送信部２４２、及びビーコン出力部２４３によるデータ等の送信及び受信を行うことができるアンテナであればよい。アンテナ２５０は、データ等の形式及び通信規格等に応じた１又は複数のアンテナである。
【００６０】
図７は、センサノード２００のモードを説明する図である。センサノード２００のモードは、ゲートウェイ１００から受信する切替コマンドに応じて、モード切替部２２２によって起動モード、スリープモード、及びパーシャルスリープモードのうちのいずれか１つに設定される。
【００６１】
図７（Ａ）に示す起動モードでは、ＰＭＵ２１０、制御装置２２０、センサ２３０、及び通信部２４０は、モード切替部２２２とビーコン出力部２４３を除いて起動している状態（起動状態（オンの状態））になる。このため、図７（Ａ）では、モード切替部２２２とビーコン出力部２４３を除いてＰＭＵ２１０、制御装置２２０、センサ２３０、及び通信部２４０を白く示し、モード切替部２２２とビーコン出力部２４３をグレーで示す。起動モードでは、センサノード２００は、センサ２３０を利用してデータ（加速度データ）のサンプリングを行う。
【００６２】
図７（Ｂ）に示すスリープモードでは、タイマ２１２とモード切替部２２２を除いて、ＰＭＵ２１０、制御装置２２０、センサ２３０、及び通信部２４０は起動していない状態（休眠状態）になる。このため、図７（Ｂ）ではＰＭＵ２１０、制御装置２２０、センサ２３０、及び通信部２４０をグレーで示し、タイマ２１２とモード切替部２２２はオンになるため白く示す。
【００６３】
スリープモードでは、タイマ２１２がスリープ時間のカウントを行い、スリープ時間のカウントが終了すると、制御装置２２０、センサ２３０、通信部２４０にリセット信号を送信し、センサノード２００は測定時間が終了するまで起動モードになる。測定時間が終了すると、センサノード２００は、起動モードを終了し、スリープモードに戻る。
【００６４】
図７（Ｃ）に示すパーシャルスリープモードは、タイマ２１２、送受信部２４１、送信部２４２を除いて、ＰＭＵ２１０と通信部２４０が起動している状態（起動状態（オンの状態））になり、制御装置２２０とセンサ２３０が起動していない状態（休眠状態）になる。このため、図７（Ｃ）ではＰＭＵ２１０と通信部２４０を白く示し、オフになるタイマ２１２、送受信部２４１、送信部２４２、制御装置２２０、及びセンサ２３０をグレーで示す。このように、パーシャルスリープモードとは、ＰＭＵ２１０と通信部２４０が起動しており、制御装置２２０とセンサ２３０が起動していない状態である。
【００６５】
パーシャルスリープモードでは、通信部２４０がゲートウェイ１００から起動指令を受信すると、制御装置２２０とセンサ２３０が起動し、センサノード２００は測定時間が終了するまで起動モードになる。測定時間が終了すると、センサノード２００は、起動モードを終了し、パーシャルスリープモードに戻る。
【００６６】
図８は、ゲートウェイ１００とセンサノード２００の設置場所の一例を示す図である。ゲートウェイ（ＧＷ:Gateway）１００と複数のセンサノード２００は、一例として、橋梁１に設置される。以下では、複数のセンサノード２００を区別する場合にはセンサノード２００Ａ、２００Ｂ、２００Ｃ、２００Ｄ、２００Ｅと称し、区別しない場合には単にセンサノード２００と称す。
【００６７】
図８では、ゲートウェイ１００は、橋梁１の橋桁１Ａの一端側に設置され、センサノード２００Ａ、２００Ｃ、２００Ｅは、橋桁１Ａに設置され、センサノード２００Ｂ、２００Ｄは、アーチ１Ｂに設置されている。
【００６８】
センサノード２００Ａは、ゲートウェイ１００と直接的に通信を行い、センサノード２００Ｂ、２００Ｃは、センサノード２００Ａと通信し、センサノード２００Ｄ、２００Ｅは、センサノード２００Ｂ、２００Ｃと通信する。このように、センサノード２００Ａ〜２００Ｅは、メッシュ構造として捉えることができるネットワーク構造を構築している。
【００６９】
センサノード２００Ａ〜２００Ｅのセンサ２３０は、車両の通行に伴って橋梁１に生じる振動の加速度を測定する。橋梁１の振動には固有の周波数の振動があるが、橋梁１の橋桁１Ａ又はアーチ１Ｂ等にひび等の破損部分があると、振動の周波数が変動する。データ収集システム１０は、このような橋梁１の異常を発見するために設けられている。
【００７０】
図９は、センサノード２００のパーシャルスリープモードを利用した測定手法を説明する図である。ここでは、センサノード２００がパーシャルスリープモードから起動モードに切り替わって、データをサンプリングする手法について説明する。
【００７１】
情報サーバ５０の制御部５１は、道路交通データに含まれる位置データの時間変化から車両５Ａの速度ｖを抽出するとともに、道路交通データに含まれる地図データを利用して車両５Ａの現在地から橋梁１の直前の測定開始点までの距離Ｌ１と、測定開始点から橋梁１の直後の測定終了点までの距離Ｌ２とを抽出する。
【００７２】
制御部５１は、車両５Ａが測定開始点に到達するまでの所要時間（Ｌ／ｖ）を求め、所要時間を現在時刻に加算することにより、車両５Ａが橋梁１に進入する時刻ｔｓｓを求める。また、制御部５１は、測定開始点から測定終了点までの測定時間（Ｌ２／ｖ）を求める。
【００７３】
制御部５１によって求められた時刻ｔｓｓと、測定開始点から測定終了点までの測定時間（Ｌ２／ｖ）とを表すデータは、情報サーバ５０からゲートウェイ１００に送信される。なお、車両５Ａが橋梁１に進入する時刻ｔｓｓに測定時間（Ｌ２／ｖ）を加算した時刻を測定終了時刻ｔｅとする。
【００７４】
ゲートウェイ１００の制御装置１１０の時刻取得部１１２は、車両５Ａが橋梁１に進入する時刻ｔｓｓを取得し、時刻算出部１１３は、時刻ｔｓｓからブート時間Ｔｂを減算し、ブート開始時刻ｔｂｓを求める。
【００７５】
主制御部１１１は、ブート開始時刻ｔｂｓに起動指令をセンサノード２００に送信する。なお、時刻ｔｓｓは、車両５Ａが橋梁１に進入する時刻ｔｓｓであるとともに、センサノード２００によるサンプリングが開始する時刻である。
【００７６】
このため、センサノード２００は、ブート開始時刻ｔｂｓにおいて起動指令を受信すると起動モードに切り替わってブートを開始し、車両５Ａが橋梁１に進入する時刻ｔｓｓから測定時間（Ｌ２／ｖ）にわたってデータのサンプリングを行い、測定終了時刻ｔｅでサンプリングを終了する。サンプリングが終了すると、センサノード２００はパーシャルスリープモードに戻る。図９に示すようなサンプリングの処理は、パーシャルスリープモードが選択された場合に行われる。
【００７７】
なお、ブート時間Ｔｂは、複数のセンサノード２００のすべてのブートが完了するまでの時間であり、実際の計測値を用いるが、所定のマージン（余裕時間）を含ませておけばよい。マージンは、例えば、計測した時間の１０％程度である。ブート時間Ｔｂを設定する際に実際に計測した時間を用いれば、起動が最も速いセンサノード２００Ａに対して、起動が最も遅いセンサノード２００Ｄ又は２００Ｅの起動が完了するまでの遅延時間がブート時間Ｔｂに含まれることになる。このため、メッシュ構造で接続されているセンサノード２００Ａ〜２００Ｅのうち、起動が最も遅いセンサノード２００Ｄ又は２００Ｅの起動が完了してから測定を行うことができる。これは、複数のセンサノード２００がツリー構造で接続されている場合も同様である。
【００７８】
図１０は、時刻表データの一例を示す図である。路線バス５Ｂの停留所（１）〜（５）があり、停留所（５）行きと、停留所（３）行きの路線バス５Ｂがある。図１１は、スリープモードを利用した測定手法を説明する図である。ここでは、センサノード２００がスリープモードから起動モードに切り替わって、データをサンプリングする手法について説明する。
【００７９】
停留所（３）と（４）の間に橋梁１がある場合に、時刻表による停留所（３）の発車時刻ｔ３[ｎ]は、７：１５、１０：４５、１５：１５であり、停留所（４）の発車時刻ｔ４[ｎ]は、７：２０、１０：５５、１５：２０である。
【００８０】
発車時刻ｔ３[ｎ]、ｔ４[ｎ]のｎは、０以上の整数であり、始発からの何番目の発車であるかを示す。このため、停留所（３）の始発の発車時刻ｔ３[０]は７：１５、２本目の発車時刻ｔ３[１]は１０：４５、３本目の発車時刻ｔ３[２]は１５：１５であり、停留所（４）の始発の発車時刻ｔ４[０]は７：２０、２本目の発車時刻ｔ４[１]は１０：５０、３本目の発車時刻ｔ４[２]は１５：２０である。
【００８１】
情報サーバ５０の制御部５１は、停留所（３）及び（４）の時刻表データをゲートウェイ１００に送信する。
【００８２】
ゲートウェイ１００の制御装置１１０の時刻取得部１１２は、２つの時刻表データを受信すると、橋梁１の手前側の停留所（３）の時刻表データから発車時刻ｔ３[ｎ]を読み出し、時刻算出部１１３は、発車時刻ｔ３[ｎ]からブート時間Ｔｂを減算し、ブート開始時刻ｔｂｓ[ｎ]を含むタイムテーブルを作成する。
【００８３】
ここで、ブート時間Ｔｂが１分の場合は、始発のブート開始時刻ｔｂｓ[０]は７：１４、２本目のブート開始時刻ｔｂｓ[１]は１０：４４、３本目のブート開始時刻ｔｂｓ[２]は１５：１４である。
【００８４】
また、時刻算出部１１３は、測定時間を求める。測定時間は、橋梁１の直前の停留所（３）の発車時刻ｔ３[ｎ]から橋梁１の直後の停留所（４）の発車時刻ｔ４[ｎ]までの時間であり、５分になる。
【００８５】
主制御部１１１は、ブート開始時刻ｔｂｓ[ｎ]と測定時間とセンサノード２００に送信する。
【００８６】
この結果、センサノード２００によって、ブート開始時刻ｔｂｓ[ｎ]にブートが開始され、ブート時間Ｔｂが経過した時点でサンプリングが開始され、測定時間にわたってサンプリングが行われる。図１０に示すようなサンプリングの処理は、スリープモードが選択された場合に行われる。
【００８７】
図１２は、ゲートウェイ１００の制御装置１１０がセンサノード２００Ａ〜２００Ｅを初期化する処理を示すフローチャートである。前提条件として、停留所（３）と（４）の間にある橋梁１を車両５Ａ（路線バス５Ｂを含む）が通過するときにセンサノード２００Ａ〜２００Ｅで振動を表すデータ（加速度データ）をサンプリングすることが測定サーバ７０に入力されており、このことが情報サーバ５０及びゲートウェイ１００に通知されていることとする。
【００８８】
主制御部１１１は、測定サーバ７０から処理を開始するコマンドを受信すると処理をスタートする。
【００８９】
主制御部１１１は、初期化用の起動指令をすべてのセンサノード２００Ａ〜２００Ｅに送信する（ステップＳ１）。初期化用の起動指令は、初期化を行うためにセンサノード２００Ａ〜２００Ｅにブートを開始させる指令である。センサノード２００Ａ〜２００Ｅは、初期化用の起動指令を受信するとブートを開始し、ブートが完了するとゲートウェイ１００に起動完了通知を送信する。
【００９０】
主制御部１１１は、ステップＳ１で初期化用の起動指令をすべてのセンサノード２００Ａ〜２００Ｅに送信してから、センサノード２００Ａ〜２００Ｅの起動完了通知を受信するまでの応答時間を計測する（ステップＳ２）。初期化用の起動指令に対する応答時間は、センサノード２００Ａ〜２００Ｅのネットワーク全体のブート時間Ｔｂとして用いるために計測される。
【００９１】
図８に示すように５個のセンサノード２００Ａ〜２００Ｅがメッシュ構造で接続されている場合には、ゲートウェイ１００に最も近いセンサノード２００Ａを介してセンサノード２００Ｂ〜２００Ｅの起動完了通知を受信する。
【００９２】
ここで、ステップＳ２で計測する応答時間は、初期化用の起動指令をセンサノード２００Ａ〜２００Ｅに送信してから、センサノード２００Ａ〜２００Ｅのブートが完了し、すべての起動完了通知がゲートウェイ１００によって受信されるまでの時間である。このため、初期化用の起動指令をセンサノード２００Ａ〜２００Ｅに送信してから、センサノード２００Ａ〜２００Ｅのブートが完了までの時間よりも少し長い。したがって、センサノード２００Ａ〜２００Ｅのネットワーク全体のブート時間Ｔｂとして用いるのに好適である。
【００９３】
主制御部１１１は、測定サーバ７０から入力される選択モードがスリープモード又はパーシャルスリープモードのいずれであるかを判定する（ステップＳ３）。選択モードは、スリープモード及びパーシャルスリープモードのうち、利用者によって選択され測定サーバ７０に入力されているモードである。利用者は、道路における車両５Ａの通行量、及び／又は、スリープモードとパーシャルスリープモードにおけるデータの取得し易さ等に応じて、スリープモード又はパーシャルスリープモードを選択することができる。
【００９４】
主制御部１１１は、ステップＳ３においてパーシャルスリープモードが選択されていると判定した場合は、センサノード２００Ａ〜２００Ｅにパーシャルスリープモードに移行するコマンドを送信する（ステップＳ４）。この結果、センサノード２００Ａ〜２００Ｅは、図７（Ｃ）に示すパーシャルスリープモードに移行する。
【００９５】
一方、ステップＳ３において主制御部１１１によってスリープモードが選択されていると判定された場合は、時刻取得部１１２は、２つの時刻表データの送信を情報サーバ５０にリクエストし、情報サーバ５０から取得する（ステップＳ５）。
【００９６】
時刻取得部１１２によって２つの時刻表データが取得されると、時刻算出部１１３は、発車時刻ｔ３[ｎ]からブート時間Ｔｂを減算し、ブート開始時刻ｔｂｓ[ｎ]を含むタイムテーブルを作成するとともに、２つの時刻表データから測定時間を計算する（ステップＳ６）。
【００９７】
主制御部１１１は、センサノード２００Ａ〜２００Ｅにブート開始時刻ｔｂｓ[ｎ]までスリープモードに移行するコマンドを送信する（ステップＳ７）。ブート開始時刻ｔｂｓ[ｎ]になると、センサノード２００Ａ〜２００Ｅは測定時間が終了するまで起動モードになる。
【００９８】
主制御部１１１は、ステップＳ７の処理を終えるとフローをステップＳ３１（図１４参照）に進行させる。
【００９９】
図１３は、センサノード２００Ａ〜２００Ｅの初期化の処理を示すフローチャートである。図１３には、内容が同一の２つのフローチャートを左右に並べて示し、右側のフローチャートの文言を省略する。左側のフローチャートは、ゲートウェイ１００と直接的に通信を行うセンサノード２００Ａが実行する処理を示し、右側のフローチャートは、センサノード２００Ａと通信を行うセンサノード２００Ｂ〜２００Ｅが実行する処理を示す。
【０１００】
ここでは、センサノード２００Ａの処理として説明する。また、図１２に示すゲートウェイ１００の処理と同一の前提条件の下で説明する。
【０１０１】
主制御部２２１は、センサノード２００Ａの電源が投入されると処理をスタートする。
【０１０２】
主制御部２２１は、ビーコン出力部２４３にビーコン信号を出力させる（ステップＳ１１）。ビーコン出力部２４３は、所定時間（例えば、１秒）おきにアンテナ２５０からビーコン信号を出力する。
【０１０３】
主制御部２２１は、ゲートウェイ１００から初期化用の起動指令を受信したかどうかを判定する（ステップＳ１２）。主制御部２２１は、初期化用の起動指令を受信するまでステップＳ１１及びＳ１２の処理を繰り返し実行する。
【０１０４】
主制御部２２１は、初期化用の起動指令を受信した（Ｓ１２：ＹＥＳ）と判定すると、ブートを開始する（ステップＳ１３）。
【０１０５】
主制御部２２１は、他のセンサノード２００Ｂ〜２００Ｅとネットワークを構築するために、他のセンサノード２００Ｂ〜２００Ｅに初期化用の起動指令を転送する（ステップＳ１４）。
【０１０６】
主制御部２２１は、他のすべてのセンサノード２００Ｂ〜２００Ｅからブートが完了したことを表す起動完了通知を受信すると、他のすべてのセンサノード２００Ｂ〜２００Ｅとネットワークを構築する（ステップＳ１５）。ステップＳ１５の処理では、通信可能な範囲内にあるセンサノード２００同士がネットワークを構築する。これにより、図８に示すようなメッシュ構造のネットワークが構築される。
【０１０７】
主制御部２２１は、センサノード２００Ａ〜２００Ｅのブートが完了したことを表す起動完了通知をゲートウェイ１００に送信する（ステップＳ１６）。
【０１０８】
主制御部２２１は、ゲートウェイ１００からコマンドを受信するために待機する（ステップＳ１７）。このとき、センサノード２００Ａ〜２００Ｅは、図７（Ａ）の起動状態である。
【０１０９】
主制御部２２１は、ゲートウェイ１００からコマンドを受信したかどうかを判定する（ステップＳ１８）。主制御部２２１は、ゲートウェイ１００からコマンドを受信していない（Ｓ１８：ＮＯ）と判定すると、フローをステップＳ１７にリターンする。この結果、主制御部２２１は、ゲートウェイ１００からスリープモード又はパーシャルスリープモードのいずれかに移行するコマンドを受信するまでステップＳ１７及びＳ１８の処理が繰り返し実行される。
【０１１０】
主制御部２２１は、スリープモード又はパーシャルスリープモードへ移行するコマンドを受信した（Ｓ１８：ＹＥＳ）と判定すると、受信したコマンドを他のセンサノード２００Ｂ〜２００Ｅに転送する（ステップＳ１９）。
【０１１１】
主制御部２２１は、受信したコマンドがスリープモード又はパーシャルスリープモードのいずれであるかを判定する（ステップＳ２０）。
【０１１２】
主制御部２２１は、ステップＳ２０においてスリープモードであると判定すると、ブート開始時刻ｔｂｓ[ｎ]にウェイクアップするようにＰＭＵ２１０のタイマ２１２を設定する（ステップＳ２１）。
【０１１３】
主制御部２２１は、タイマ２１２の設定を終えるとスリープモードに移行する（ステップＳ２２）。これにより、センサノード２００Ａはスリープモードになる。
【０１１４】
一方、主制御部２２１は、ステップＳ２０においてパーシャルスリープモードであると判定すると、パーシャルスリープモードに移行する（ステップＳ２３）。これにより、センサノード２００Ａはパーシャルスリープモードになる。モードの切替は、モード切替部２２２が行う。
【０１１５】
図１４は、ゲートウェイ１００が実行する処理を示すフローチャートである。図１４に示す処理は、図１２に示すステップＳ７に続く処理であり、センサノード２００Ａ〜２００Ｅがスリープモードに設定されている状態から始まる。
【０１１６】
主制御部１１１は、センサノード２００Ａから起動完了通知を受信したかどうかを判定する（ステップＳ３１）。センサノード２００Ａから送信される起動完了通知は、すべてのセンサノード２００Ａ〜２００Ｅのブートが完了したことを表す起動完了通知である。
【０１１７】
主制御部１１１は、測定時間をセンサノード２００Ａ〜２００Ｅに送信する（ステップＳ３２）。測定時間は、橋梁１の直前の停留所（３）の発車時刻ｔ３[ｎ]から橋梁１の直後の停留所（４）の発車時刻ｔ４[ｎ]までの時間であり、５分になる。
【０１１８】
主制御部１１１は、センサノード２００Ａから測定データを受信する（ステップＳ３３）。
【０１１９】
主制御部１１１は、センサノード２００Ａからサンプリング完了通知を受信したかどうかを判定する（ステップＳ３４）。ゲートウェイ１００がセンサノード２００Ａから受信するサンプリング完了通知は、センサノード２００Ａ〜２００Ｅによるサンプリングが完了したことを表す通知である。なお、主制御部１１１は、サンプリング完了通知を受信していない（Ｓ３４：ＮＯ）と判定すると、フローをステップＳ３３にリターンする。
【０１２０】
主制御部１１１は、測定サーバ７０から入力される選択モードがスリープモード又はパーシャルスリープモードのいずれであるかを判定する（ステップＳ３５）。
【０１２１】
主制御部１１１は、ステップＳ３５においてスリープモードが選択されていると判定した場合は、ブート開始時刻ｔｂｓ[ｎ]を送信する（ステップＳ３６）。ステップＳ３６で設定されるブート開始時刻ｔｂｓ[ｎ]は、路線バス５Ｂの時刻表において、ステップＳ２１において設定したブート開始時刻ｔｂｓ[ｎ]よりも１台後の路線バス５Ｂに対応したブート開始時刻である。
【０１２２】
主制御部１１１は、ステップＳ３６の処理を終えるとフローをステップＳ３１にリターンする。これにより、スリープモードが続行される。
【０１２３】
一方、主制御部１１１は、ステップＳ３５においてパーシャルスリープモードが選択されていると判定した場合は、センサノード２００Ａ〜２００Ｅにパーシャルスリープモードに移行するコマンドを送信する（ステップＳ３７）。この結果、すべてのセンサノード２００Ａ〜２００Ｅは、図７（Ｃ）に示すパーシャルスリープモードに移行する。
【０１２４】
主制御部１１１は、ステップＳ３７の処理を終えるとフローをステップＳ６１（図６７参照）に進行させる。
【０１２５】
図１５は、センサノード２００Ａ〜２００Ｅが実行する処理を示すフローチャートである。図１５に示す処理は、図１３に示すステップＳ２２に続く処理であり、センサノード２００Ａ〜２００Ｅがスリープモードにある状態から始まる。また、図１５では、図１３と同様に、センサノード２００Ａの処理について説明する。
【０１２６】
タイマ２１２からリセット信号が出力され、モード切替部２２２によってスリープモードから起動モードに切り替えられると、主制御部２２１は、起動モードであるかどうかを判定する（ステップＳ４１）。ステップＳ４１の処理は、起動モードであると判定するまで繰り返し実行される。
【０１２７】
タイマ２１２は、スリープ時間のカウントが終了すると（ブート開始時刻ｔｂｓ[ｎ]にウェイクアップすると）リセット信号を制御装置２２０、センサ２３０、通信部２４０に送信する。これにより、モード切替部２２２によってスリープモードから起動モードに切り替えられる。
【０１２８】
主制御部２２１は、起動モードである（Ｓ４１：ＹＥＳ）と判定すると、ブートを開始する（ステップＳ４２）。ブートが開始される時刻は、ブート開始時刻ｔｂｓ[ｎ]である。
【０１２９】
主制御部２２１は、他のセンサノード２００Ｂ〜２００Ｅとネットワークを構築するために、他のセンサノード２００Ｂ〜２００Ｅにネットワーク構築指令を送信する（ステップＳ４３）。センサノード２００Ｂ〜２００Ｅは既にブートを開始しており、ネットワーク構築指令を受信すると、ネットワーク構築指令を転送し、ブートが完了した後に通信可能範囲内にあるセンサノード２００とネットワークを構築する。
【０１３０】
主制御部２２１は、他のすべてのセンサノード２００Ｂ〜２００Ｅからブートが完了したことを表す起動完了通知を受信する（ステップＳ４４）。この状態では、センサノード２００Ａ〜２００Ｅのネットワークが構築されている。
【０１３１】
主制御部２２１は、センサノード２００Ａ〜２００Ｅのブートが完了したことを表す起動完了通知をゲートウェイ１００に送信する（ステップＳ４５）。
【０１３２】
主制御部２２１は、ゲートウェイ１００から測定時間を取得する（ステップＳ４６）。ここでは、測定時間は、橋梁１の直前の停留所（３）の発車時刻ｔ３[ｎ]から橋梁１の直後の停留所（４）の発車時刻ｔ４[ｎ]までの時間であり、５分である。主制御部２２１は、タイマで５分をカウントし始める。
【０１３３】
主制御部２２１は、センサ２３０にデータをサンプリングさせる（ステップＳ４７）。
【０１３４】
主制御部２２１は、センサノード２００Ａのセンサ２３０がサンプリングしたデータをゲートウェイ１００に送信するとともに、センサノード２００Ｂ〜２００Ｅのセンサ２３０がサンプリングしたデータをゲートウェイ１００に転送（中継）する（ステップＳ４８）。
【０１３５】
主制御部２２１は、測定時間を経過したかどうかを判定する（ステップＳ４９）。主制御部２２１は、測定時間を経過していない（Ｓ４９：ＮＯ）と判定すると、フローをステップＳ４７にリターンする。この結果、ステップＳ４７〜Ｓ４９の処理が繰り返し実行され、センサノード２００Ａ〜２００Ｅのセンサ２３０によってデータがサンプリングされる。
【０１３６】
主制御部２２１は、ステップＳ４９において測定時間を経過した（Ｓ４９：ＹＥＳ）と判定すると、センサノード２００Ａ〜２００Ｅによるサンプリングが完了したことを表すサンプリング完了通知をゲートウェイ１００に送信する（ステップＳ５０）。
【０１３７】
主制御部２２１は、ゲートウェイ１００からコマンドを受信したかどうかを判定する（ステップＳ５１）。主制御部２２１は、ゲートウェイ１００からコマンドを受信していない（Ｓ５１：ＮＯ）と判定すると、コマンドを受信するまでステップＳ５１の処理を繰り返し実行する。
【０１３８】
主制御部２２１は、受信したコマンドがスリープモード又はパーシャルスリープモードのいずれであるかを判定する（ステップＳ５２）。
【０１３９】
主制御部２２１は、ステップＳ５２においてスリープモードであると判定すると、ブート開始時刻ｔｂｓ[ｎ]にウェイクアップするようにタイマ２１２を設定する（ステップＳ５３）。ステップＳ５３で設定されるブート開始時刻ｔｂｓ[ｎ]は、ゲートウェイ１００がステップＳ３６においてセンサノード２００に送信したブート開始時刻ｔｂｓ[ｎ]である。
【０１４０】
主制御部２２１は、スリープモードに移行する（ステップＳ５４）。これにより、センサノード２００Ａはスリープモードに移行する。モードの切替は、モード切替部２２２が行う。
【０１４１】
一方、主制御部２２１は、ステップＳ５２においてパーシャルスリープモードであると判定すると、パーシャルスリープモードに移行する（ステップＳ５５）。これにより、センサノード２００Ａはパーシャルスリープモードに移行する。
【０１４２】
主制御部２２１は、ステップＳ５５の処理を終えるとフローをステップＳ８１（図１７参照）に進行させる。
【０１４３】
図１６は、ゲートウェイ１００が実行する処理を示すフローチャートである。図１６に示す処理は、図１２に示すステップＳ４に続く処理であり、センサノード２００Ａ〜２００Ｅがパーシャルスリープモードに設定されている状態から始まる。
【０１４４】
時刻取得部１１２は、情報サーバ５０に対してリクエストを行い、情報サーバ５０から車両５Ａが橋梁１に進入する時刻ｔｓｓと測定時間（Ｌ２／ｖ）を受信したかどうかを判定する（ステップＳ６１）。時刻取得部１１２は、時刻ｔｓｓと測定時間（Ｌ２／ｖ）を受信するまでステップＳ６１の処理を繰り返し実行する。
【０１４５】
時刻算出部１１３は、時刻ｔｓｓからブート時間Ｔｂを減算し、ブート開始時刻ｔｂｓを求める（ステップＳ６２）。
【０１４６】
主制御部１１１は、ステップＳ６２で求められたブート開始時刻ｔｂｓが経過したかどうかを判定する（ステップＳ６３）。ステップＳ６３の処理は、ブート開始時刻ｔｂｓが経過するまで繰り返し実行される。
【０１４７】
主制御部１１１は、ステップＳ６３においてブート開始時刻ｔｂｓが経過した（Ｓ６３：ＹＥＳ）と判定すると、起動指令をセンサノード２００Ａ〜２００Ｅに送信する（ステップＳ６４）。起動指令は、センサノード２００Ａ〜２００Ｅを直ちにパーシャルスリープモードから起動モードに遷移させる指令である。
【０１４８】
主制御部１１１は、測定時間（Ｌ２／ｖ）をセンサノード２００Ａ〜２００Ｅに送信する（ステップＳ６５）。
【０１４９】
主制御部１１１は、センサノード２００Ａから測定データを受信する（ステップＳ６６）。
【０１５０】
主制御部１１１は、センサノード２００Ａからサンプリング完了通知を受信したかどうかを判定する（ステップＳ６７）。ゲートウェイ１００がセンサノード２００Ａから受信するサンプリング完了通知は、センサノード２００Ａ〜２００Ｅによるサンプリングが完了したことを表す通知である。なお、主制御部１１１は、サンプリング完了通知を受信していない（Ｓ６７：ＮＯ）と判定すると、フローをステップＳ６６にリターンする。
【０１５１】
主制御部１１１は、選択モードがスリープモード又はパーシャルスリープモードのいずれであるかを判定する（ステップＳ６８）。
【０１５２】
主制御部１１１は、ステップＳ６８においてパーシャルスリープモードが選択されていると判定した場合は、すべてのセンサノード２００Ａ〜２００Ｅにパーシャルスリープモードで待機するコマンドを送信する（ステップＳ６９）。この結果、センサノード２００Ａ〜２００Ｅは、パーシャルスリープモードで待機する。
【０１５３】
一方、主制御部１１１は、ステップＳ６８においてスリープモードが選択されていると判定した場合は、センサノード２００Ａ〜２００Ｅにスリープモードに移行するコマンドと、ブート開始時刻ｔｂｓ[ｎ]とを送信する（ステップＳ７０）。
【０１５４】
主制御部１１１は、ステップＳ７０の処理を終えるとフローをステップＳ３１（図１４参照）に進行させる。
【０１５５】
図１７は、センサノード２００が実行する処理を示すフローチャートである。図１７に示す処理は、図１３に示すステップＳ２３に続く処理であり、センサノード２００Ａ〜２００Ｅがパーシャルスリープモードにある状態から始まる。
【０１５６】
主制御部２２１は、ビーコン出力部２４３にビーコン信号を出力させる（ステップＳ８１）。ビーコン出力部２４３は、所定時間（例えば、１秒）おきにアンテナ２５０からビーコン信号を出力する。
【０１５７】
主制御部２２１は、ゲートウェイ１００から起動指令を受信したかどうかを判定する（ステップＳ８２）。主制御部２２１は、起動指令を受信するまでステップＳ８１及びＳ８２の処理を繰り返し実行する。
【０１５８】
主制御部２２１は、起動指令を受信した（Ｓ８２：ＹＥＳ）と判定すると、ブートを開始する（ステップＳ８３）。
【０１５９】
主制御部２２１は、他のセンサノード２００Ｂ〜２００Ｅとネットワークを構築するために、他のセンサノード２００Ｂ〜２００Ｅに起動指令を転送する（ステップＳ８４）。
【０１６０】
主制御部２２１は、他のすべてのセンサノード２００（２００Ｂ〜２００Ｅ）からブートが完了したことを表す起動完了通知を受信すると、他のすべてのセンサノード２００Ｂ〜２００Ｅとネットワークを構築する（ステップＳ８５）。ステップＳ８５の処理では、通信可能な範囲内にあるセンサノード２００同士がネットワークを構築する。これにより、図８に示すようなメッシュ構造のネットワークが構築される。
【０１６１】
主制御部２２１は、センサノード２００Ａ〜２００Ｅのブートが完了したことを表す起動完了通知をゲートウェイ１００に送信する（ステップＳ８６）。
【０１６２】
主制御部２２１は、ゲートウェイ１００から測定時間（Ｌ２／ｖ）を取得する（ステップＳ８７）。
【０１６３】
主制御部２２１は、センサ２３０にデータをサンプリングさせる（ステップＳ８８）。
【０１６４】
主制御部２２１は、センサノード２００Ａのセンサ２３０がサンプリングしたデータをゲートウェイ１００に送信するとともに、センサノード２００Ｂ〜２００Ｅのセンサ２３０がサンプリングしたデータをゲートウェイ１００に転送（中継）する（ステップＳ８９）。
【０１６５】
主制御部２２１は、測定時間を経過したかどうかを判定する（ステップＳ９０）。主制御部２２１は、測定時間を経過していない（Ｓ９０：ＮＯ）と判定すると、フローをステップＳ８８にリターンする。この結果、ステップＳ８８〜Ｓ９０の処理が繰り返し実行され、センサノード２００Ａ〜２００Ｅのセンサ２３０によってデータがサンプリングされる。
【０１６６】
主制御部２２１は、ステップＳ９０において測定時間を経過した（Ｓ９０：ＹＥＳ）と判定すると、センサノード２００Ａ〜２００Ｅによるサンプリングが完了したことを表すサンプリング完了通知をゲートウェイ１００に送信する（ステップＳ９１）。
【０１６７】
主制御部２２１は、ゲートウェイ１００からコマンドを受信したかどうかを判定する（ステップＳ９２）。主制御部２２１は、ゲートウェイ１００からコマンドを受信していない（Ｓ９２：ＮＯ）と判定すると、コマンドを受信するまでステップＳ９２の処理を繰り返し実行する。
【０１６８】
主制御部２２１は、受信したコマンドがスリープモード又はパーシャルスリープモードのいずれであるかを判定する（ステップＳ９３）。
【０１６９】
主制御部２２１は、ステップＳ９３においてパーシャルスリープモードであると判定すると、フローをステップＳ８１にリターンする。この場合、センサノード２００Ａ〜２００Ｅは、パーシャルスリープモードで待機することになる。
【０１７０】
一方、主制御部２２１は、ステップＳ９３においてスリープモードであると判定すると、ブート開始時刻ｔｂｓ[ｎ]にウェイクアップするようにタイマ２１２を設定する（ステップＳ９４）。
【０１７１】
主制御部２２１は、スリープモードに移行する（ステップＳ９５）。これにより、センサノード２００Ａはスリープモードに移行する。モードの切替は、モード切替部２２２が行う。
【０１７２】
主制御部２２１は、ステップＳ９５の処理を終えるとフローをステップＳ４１（図１５参照）に進行させる。
【０１７３】
以上のように、センサノード２００がパーシャルスリープモードで待機しているときは、イベントが発生する時刻ｔｓｓよりもブート時間Ｔｂだけ前のブート開始時刻ｔｂｓからセンサノード２００がブートを開始し、イベント発生時（時刻ｔｓｓ）にはブートが完了してセンサ２３０でデータをサンプリングできる状態になっている。このため、イベント発生時（時刻ｔｓｓ）からサンプリングを開始できる。
【０１７４】
また、センサノード２００がスリープモードで待機しているときは、停留所の発車時刻ｔ３[ｎ]からブート時間Ｔｂを減算したブート開始時刻ｔｂｓ[ｎ]からセンサノード２００がブートを開始し、イベント発生時（時刻ｔｓｓ）にはブートが完了してセンサ２３０でデータをサンプリングできる状態になっている。このため、イベント発生時からサンプリングを開始する。
【０１７５】
このように、センサノード２００がパーシャルスリープモード及びスリープモードのいずれで待機している場合でも、車両５Ａ又は路線バス５Ｂが橋梁１に進入するときから橋梁１を通過し終えるまでに橋梁１に生じる振動（加速度）のデータを取得することができる。
【０１７６】
したがって、効率的にデータを収集できるデータ収集システム１０、ゲートウェイ１００、センサノード２００、及びデータ収集方法を提供することができる。
【０１７７】
また、データ収集システム１０は、イベントが発生していない状態ではパーシャルスリープモード及びスリープモードで待機するセンサノード２００を含んでいるため、イベントが発生していないときのデータはサンプリングしない。特に、橋梁１が都市から遠く離れた地方の交通量の少ない地域にあり、１時間の交通量が数台程度であるような場合には、イベントが発生していない時間が圧倒的に長い。このような場合に、センサノード２００の代わりに常時起動モードで待機するセンサ装置を用いると、膨大な量のデータを取得するため、膨大な大きさのメモリが必要になり、通信するデータ量が膨大になる。また、このようなセンサ装置は非常に高価である。
【０１７８】
これに対して、センサノード２００は、イベント発生時にのみ起動し、かつ、イベント発生時よりもブート時間だけ前のブート開始時刻ｔｂｓから起動する。このため、メモリ２２３は小さくて済み、通信するデータ量も少なくて済む。また、このようなセンサノード２００とゲートウェイ１００を含むデータ収集システム１０は、非常に安価で実現できる。
【０１７９】
したがって、比較的手軽に設置することができ、より多くの場所に設置することが容易である。
【０１８０】
なお、以上では、イベントが乗り物（車両５Ａ又は路線バス５Ｂ）が橋梁１を通過することであり、イベントによって生じる事象が橋梁１に生じる振動であり、センサノード２００のセンサ２３０で橋梁１に生じる振動の加速度を計測する形態について説明した。
【０１８１】
しかしながら、上記以外のデータ収集システム１０は様々な用途に利用可能である。例えば、センサ２３０の代わりに変位を検出するセンサを用いて、車両５Ａ又は路線バス５Ｂが通過する前に、道路沿いの崖の変位を検出してもよい。崖崩れが生じるおそれがあることを車両５Ａ又は路線バス５Ｂの通過前に検知できれば、事故を未然に防ぐことができる。
【０１８２】
また、以上では、センサノード２００がセンサ２３０を含む形態について説明したが、センサノード２００からセンサ２３０を分離した構成であってもよい。この場合は、ＰＭＵ２１０、制御装置２２０、通信部２４０、及びアンテナ２５０を含む通信ノードに、センサ２３０が接続された構成にすればよい。
【０１８３】
以上、本発明の例示的な実施の形態のデータ収集システム、情報処理装置、通信ノード、及びデータ収集方法について説明したが、本発明は、具体的に開示された実施の形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【０１８４】
以上の実施の形態に関し、さらに以下の付記を開示する。
（付記１）
ネットワークを介してサーバに接続される情報処理装置と、前記情報処理装置と通信可能な通信ノードであって、所定のイベントに関する所定のデータを検出するセンサから前記所定のデータを取得する通信ノードとを含むデータ収集システムであって、
前記情報処理装置は、
前記サーバから前記所定のイベントの発生時刻を取得する時刻取得部と、
前記時刻取得部によって取得されたイベントの発生時刻よりも前記通信ノードの起動時間だけ前の起動開始時刻を求める時刻算出部と、
前記時刻算出部によって求められる起動開始時刻を前記通信ノードに送信する第１通信部と、
を有し、
前記通信ノードは、
前記第１通信部から受信する前記起動開始時刻に起動を開始し、起動が完了すると前記センサによって検出される所定のデータを取得するデータ取得部と、
前記データ取得部によって取得される所定のデータを前記第１通信部に送信する第２通信部と
を有する、データ収集システム。
（付記２）
前記所定のイベントの発生時刻は、前記サーバによって、所定の乗り物の時刻表に含まれる時刻に基づいて求められる、付記１記載のデータ収集システム。
（付記３）
前記所定のイベントの発生時刻は、前記所定の乗り物の時刻表に含まれる時刻と、前記所定の乗り物の時刻表に含まれる位置と、前記センサが前記所定のデータを検出する検出位置とに基づいて前記サーバによって求められる、前記所定の乗り物が前記検出位置を通過する通過時刻である、付記２記載のデータ収集システム。
（付記４）
前記所定のイベントの発生時刻は、前記サーバによって、前記センサが前記所定のデータを検出する検出位置を所定の乗り物が通過する通過時刻として求められる、付記１記載のデータ収集システム。
（付記５）
前記検出位置は、道路に沿って所定の構造物が設けられた位置であり、
前記センサは、前記所定のデータとして前記所定の構造物の変位を検出する、付記３又は４記載のデータ収集システム。
（付記６）
ネットワークを介してサーバに接続されるとともに、所定のイベントに関する所定のデータを検出するセンサから前記所定のデータを取得する通信ノードと通信可能な情報処理装置であって、
前記サーバから前記所定のイベントの発生時刻を取得する時刻取得部と、
前記時刻取得部によって取得されたイベントの発生時刻よりも前記通信ノードの起動時間だけ前の起動開始時刻を求める時刻算出部と、
前記時刻算出部によって求められる起動開始時刻を前記通信ノードに送信する通信部と
を含む、情報処理装置。
（付記７）
ネットワークを介してサーバに接続される情報処理装置と通信可能であり、所定のイベントに関する所定のデータを検出するセンサから前記所定のデータを取得する通信ノードであって、
前記情報処理装置が前記サーバから受信する前記所定のイベントの発生時刻よりも前記通信ノードの起動時間だけ前の起動開始時刻が前記情報処理装置によって求められ、前記起動開始時刻を前記情報処理装置から受信すると、前記起動開始時刻に起動を開始し、起動が完了すると前記センサによって検出される所定のデータを取得するデータ取得部と、
前記データ取得部によって取得される所定のデータを前記情報処理装置に送信する通信部と
を含む、通信ノード。
（付記８）
ネットワークを介してサーバに接続される情報処理装置と、前記情報処理装置と通信可能な通信ノードであって、所定のイベントに関する所定のデータを検出するセンサから前記所定のデータを取得する通信ノードとを含むデータ収集システムにおけるデータ収集方法であって、
前記情報処理装置は、
前記サーバから前記所定のイベントの発生時刻を取得し、
前記取得したイベントの発生時刻よりも前記通信ノードの起動時間だけ前の起動開始時刻を求め、
前記求めた起動開始時刻を前記通信ノードに送信し、
前記通信ノードは、
前記情報処理装置から受信した前記起動開始時刻に起動を開始し、起動が完了すると前記センサによって検出される所定のデータを取得し、
前記取得した所定のデータを前記情報処理装置に送信する、データ収集方法。
【符号の説明】
【０１８５】
１０  データ収集システム
５０  情報サーバ
１００  ゲートウェイ
１１０  制御装置
１１１  主制御部
１１２  時刻取得部
１１３  時刻算出部
１２０  通信部
２００  センサノード
２１０  ＰＭＵ
２１２  タイマ
２２０  制御装置
２２１  主制御部
２２２  モード切替部
２３０  センサ
２４０  通信部
【図１】
2020087301.tif 000003
【図２】
2020087301.tif 000004
【図３】
2020087301.tif 000005
【図４】
2020087301.tif 000006
【図５】
2020087301.tif 000007
【図６】
2020087301.tif 000008
【図７】
2020087301.tif 000009
【図８】
2020087301.tif 000010
【図９】
2020087301.tif 000011
【図１０】
2020087301.tif 000012
【図１１】
2020087301.tif 000013
【図１２】
2020087301.tif 000014
【図１３】
2020087301.tif 000015
【図１４】
2020087301.tif 000016
【図１５】
2020087301.tif 000017
【図１６】
2020087301.tif 000018
【図１７】
2020087301.tif 000019