(57)【要約】【課題】検出データの無線伝送機能を有するセンサ装置において、消費電力を低く抑えつつ、高い時間精度で検出データを採取できるようにする。【解決手段】センサ装置１０は、センサ素子２１、ＣＰＵ２４、データ採取部２２、メモリ２８、無線通信部３０及び高精度時計部２６を備える。ＣＰＵ２４は、（ａ）高精度時計部２６より現在時刻を取得し、（ｂ）現在時刻に基づいて目標時刻に近接したか否かを判定し、（ｃ）目標時刻に近接していなければＣＰＵ２４をスリープモードとして所定のスリープ時間が経過したらアクティブモードに切り替えた後（ａ）〜（ｃ）の処理を繰り返し、（ｄ）目標時刻に近接していれば高精度時計部２６より現在時刻を取得して目標時刻になったらセンサ素子２１による検出データを採取し、その検出データを無線通信部３０により送信する。【選択図】        図２
2006309407.tif 000002
【特許請求の範囲】
【請求項１】
検出データの無線伝送機能を有するセンサ装置であって、
センサ素子と、
通常動作を行うアクティブモードと、タイマー機能のみを実行できるスリープモードとで動作可能なＣＰＵにより構成された制御部と、
前記センサ素子の出力を検出データとして採取するデータ採取部と、
前記採取された検出データを無線送信する無線通信部と、
前記制御部に現在時刻情報を供給する時計部と、を備え、
前記制御部は、
（ａ）前記時計部より現在時刻を取得する処理と、
（ｂ）前記取得した現在時刻に基づいて、指定された目標時刻に近接したか否かを判定する処理と、
（ｃ）前記（ｂ）の処理で、前記目標時刻に近接していないと判定された場合には、前記ＣＰＵを前記スリープモードに切り替え、所定のスリープ時間が経過したら前記ＣＰＵを前記アクティブモードに切り替えた後、（ａ）〜（ｃ）の処理を繰り返し、
（ｄ）前記（ｂ）の処理で、前記目標時刻に近接していると判定された場合には、前記時計部より取得される現在時刻が前記目標時刻になったら前記データ採取部により検出データを採取し、採取した検出データを前記無線通信部により送信する処理と、を実行することを特徴とするセンサ装置。
【請求項２】
前記制御部は、前記（ｃ）の処理において、前記取得した現在時刻から前記目標時刻までの時間差を算出し、前記所定のスリープ時間を、前記時間差が小さいほど小さな値に設定することを特徴とする請求項１記載のセンサ装置。
【請求項３】
前記制御部は、前記（ｃ）の処理において、前記時間差に１より小さい定数を乗じた値を前記所定のスリープ時間として設定することを特徴とする請求項２記載のセンサ装置。
【請求項４】
前記ＣＰＵは速度の異なる複数のクロック周波数で動作可能であり、
前記制御部は、前記ＣＰＵを最低速のクロック周波数で動作させて前記（ａ）〜（ｃ）の処理を実行し、前記（ｂ）の処理で前記目標時刻に近接していると判定された場合には、前記（ｄ）の処理を行うことなく、前記ＣＰＵの動作クロックをより高いクロック周波数に切り替えて前記（ａ）〜（ｃ）の処理を実行し、前記ＣＰＵの動作クロックが最高速のクロック周波数である場合に前記（ｂ）の処理で前記目標時刻に近接していると判定された場合に前記（ｄ）の処理を実行することを特徴とする請求項１〜３のうち何れか１項記載のセンサ装置。
【請求項５】
前記制御部は、前記（ｄ）の処理において、前記検出データにデータの採取時刻を付加して前記無線通信部により送信することを特徴とする請求項１〜４のうち何れか１項記載のセンサ装置。
【請求項６】
前記ＣＰＵによりアクセス可能なメモリを備え、
前記データ採取部により採取された検出データは前記メモリに格納され、
前記無線通信部は前記メモリに格納された検出データを無線送信することを特徴とする請求項１〜５のうち何れか１項記載のセンサ装置。
【請求項７】
前記制御部は、前記検出データが前記メモリに格納される都度、その検出データを前記無線通信部により送信することを特徴とする請求項６記載のセンサ装置。
【請求項８】
前記制御部は、前記無線通信部によるデータ送信が可能であるか否かを判定し、送信可能であれば、前記メモリに格納された検出データを先入れ先出し方式で前記無線通信部により送信することを特徴とする請求項６記載のセンサ装置。
【請求項９】
前記メモリには、当該センサ装置が前記センサ素子による検出データを採取すべき時刻が設定された動作制御テーブルが格納されており、前記制御部は前記動作制御テーブルに記録された時刻を前記目標時刻とすることを特徴とする請求項６〜８のうち何れか１項記載のセンサ装置。
【請求項１０】
前記データ採取部は、前記センサ素子の出力信号をＡＤ変換して前記検出データとして前記ＣＰＵに供給し、前記ＣＰＵが前記検出データを前記メモリに書き込むことを特徴とする請求項６〜９のうち何れか１項記載のセンサ装置。
【請求項１１】
前記データ採取部は前記センサ素子の出力信号をＡＤ変換して前記検出データとし、該ＡＤ変換された検出データはＤＭＡ機能により前記メモリに格納されることを特徴とする請求項６〜９のうち何れか１項記載のセンサ装置。
【請求項１２】
前記センサ装置は、前記センサ素子による検出データを送信するデータ検出モードと、他のセンサ装置から送信されてきた検出データを別のセンサ装置へ転送するデータ転送モードとで動作可能であることを特徴とする請求項１〜５のうち何れか１項記載のセンサ装置。
【請求項１３】
前記センサ装置は、前記センサ素子による検出データを送信するデータ検出モードと、他のセンサ装置から送信されてきた検出データを別のセンサ装置へ転送するデータ転送モードとで動作可能であり、
前記メモリには、当該センサ装置が、前記データ検出モードと前記データ転送モードの何れで動作すべきかの指定と、その動作時刻とが設定された動作制御テーブルが格納されており、前記制御部は前記動作制御テーブルに格納された動作時刻を前記目標時刻として、前記データ検出モードが指定されている場合には前記（ａ）〜（ｄ）の処理を実行し、前記データ転送モードが指定されている場合には、前記（ｄ）の処理において、検出データを採取して送信することに代えて、前記無線通信部により他のセンサ装置からの検出データを受信してその検出データを指定された送信先へ転送することを特徴とする請求項６〜１１のうち何れか１項記載のセンサ装置。
【請求項１４】
電源として電池を備えることを特徴とする請求項１〜１３のうち何れか１項記載のセンサ装置。
【請求項１５】
前記電池は充電池又は燃料電池であることを特徴とする請求項１４記載のセンサ装置。
【請求項１６】
センサ素子と、
通常動作を行うアクティブモードとタイマー機能のみを実行できるスリープモードとで動作可能なＣＰＵにより構成された制御部と、
前記センサ素子の出力を検出データとして採取するデータ採取部と、
前記採取された検出データを無線送信する無線通信部と、
前記制御部に現在時刻情報を供給する時計部とを備える、無線データ伝送機能を有するセンサ装置の動作方法であって、
前記制御部は、
（ａ）前記時計部より現在時刻を取得するステップと、
（ｂ）前記取得した現在時刻に基づいて、指定された目標時刻に近接したか否かを判定するステップと、
（ｃ）前記ステップ（ｂ）において、前記目標時刻に近接していないと判定された場合には、前記ＣＰＵを前記スリープモードに切り替え、所定のスリープ時間が経過したら前記ＣＰＵを前記アクティブモードに切り替えた後、ステップ（ａ）〜（ｃ）を繰り返すステップと、
（ｄ）前記ステップ（ｂ）において、前記目標時刻に近接していると判定された場合には、前記時計部より取得される現在時刻が前記目標時刻になったら前記データ採取部により検出データを採取し、採取した検出データを前記無線通信部により送信するステップと、
を実行することを特徴とするセンサ装置の動作方法。
【請求項１７】
請求項１２又は１３記載のセンサ装置を複数備えて構成されたセンサシステムであって、
前記複数のセンサ装置は、複数のクラスタに区分されており、
各クラスタには、同じクラスタ内のセンサ装置から送信された検出データを転送する機能を有するクラスタヘッドが設けられており、
各クラスタに属する各センサ装置による検出データは、同じクラスタ内の他のセンサ装置を経由して又は直接的に同じクラスタのクラスタヘッドへ送信され、このクラスタヘッドを経由して所定の処理装置へ転送されることを特徴とするセンサシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、センサ装置に係り、特に、センサによる検出データを無線伝送する機能を有するセンサ装置に関する。また、本発明は、このようなセンサ装置の動作方法及びこのようなセンサ装置を複数含んで構成されたセンサシステムにも関する。
【背景技術】
【０００２】
従来より、例えば、非特許文献１に開示されるように、加速度センサなどのセンサ素子を備え、センサ素子による検出データを無線伝送により外部へ出力する機能を持つセンサ装置が知られている。このセンサ装置は、センサ素子による検出信号をデジタル値に変換するＡＤ変換器と、デジタル値に変換されたデータを無線伝送する無線伝送部と、装置全体を制御するＣＰＵなどにより構成されている。このような無線伝送機能を持つセンサ装置によれば、多数のセンサ装置を配置する場合でも、各センサ装置にデータ出力用の配線をせずに済むため、センサの設置・移動等を簡便に行えるなどのメリットがある。
【非特許文献１】Jason Hill et al, "System Architecture Directions for Networked Sensors", [online], [平成１７年３月２３日検索], インターネット＜URL:http://www.tinyos.net/papers/tos.pdf#search='Jason%20Hill%20System%20architecture'
【発明の開示】
【発明が解決しようとする課題】
【０００３】
上記のように無線のデータ伝送が可能なセンサ装置の場合、電源を商用電源など外部から供給したのでは給電用の配線が必要となり、上記した無線化のメリットが減殺されてしまうので、電源として電池を用いることが前提となる。そのため、電池の消耗を抑えるべく、センサ装置の省電力化を図ることが必要となる。
【０００４】
センサ装置の省電力化を図るための手法として、センサ装置が備えるＣＰＵのスリープモードを利用することが考えられる。ＣＰＵのスリープモードは消費電力が極めて低く、タイマー機能のみを実行できる動作するモードである。
【０００５】
このスリープモードを利用した第１の手法としては、スリープモードで動作する上記タイマー機能により、予め設定されたデータ収集時刻になったことを検知したら、スリープモードからアクティブモード（ＣＰＵが通常動作するモード）に切り替えて、センサ素子からデータを採取して無線伝送する処理を実行し、この処理が終わったら再びスリープモードに切り替える方法が考えられる。
【０００６】
しかしながら、ＣＰＵが内蔵するタイマーは時間精度が悪いため、スリープモードからアクティブモードへの切り替えを、データ採取時刻に対して相当の余裕を持ったタイミングで行うことが必要となる。このため、ＣＰＵがアクティブモードで動作する時間が必要以上に長くなり、その分、消費電力が増加してしまうことになる。
【０００７】
また、第２の手法として、外部からデータ採取のコマンドを待ち受けて、コマンドに応答してセンサのデータを採取する方法も考えられる。この方法では、上記タイマー機能を利用して、タイマーがタイムアップする毎にＣＰＵをアクティブモードに切り替えて電界強度を測定し、その電界強度が閾値を超えていなければ再びスリープモードに切り替える。一方、電界強度が閾値を超えていれば、電波内容を解析し、その内容が上記コマンドであればセンサからデータを採取して無線伝送する。
【０００８】
この手法では、コマンドが発信されているかどうかを確認するために一定の時間間隔でスリープモードからアクティブモードへ切り替えなければならない。このため、上記時間間隔が短いと、アクティブモードへの切り替えが頻繁に行われることとなって消費電力が増大してしまう。一方、消費電力を抑えるために、上記時間間隔を長くすると、センサ装置がコマンドを確実に受信できるように、コマンドの送信を長時間継続して行わねばならなくなるため、コマンド送信側での消費電力が増大し、システム全体として省電力化を図れない。
【０００９】
本発明は上記の点に鑑みてなされたものであり、検出データの無線伝送機能を有するセンサ装置において、消費電力を低く抑えつつ、高い時間精度で検出データを採取できるようにすることを目的とする。
【課題を解決するための手段】
【００１０】
上記の目的を達成するため、本発明は、検出データの無線伝送機能を有するセンサ装置であって、
センサ素子と、
通常動作を行うアクティブモードと、タイマー機能のみを実行できるスリープモードとで動作可能なＣＰＵにより構成された制御部と、
前記センサ素子の出力を検出データとして採取するデータ採取部と、
前記採取された検出データを無線送信する無線通信部と、
前記制御部に現在時刻情報を供給する時計部と、を備え、
前記制御部は、
（ａ）前記時計部より現在時刻を取得する処理と、
（ｂ）前記取得した現在時刻に基づいて、指定された目標時刻に近接したか否かを判定する処理と、
（ｃ）前記（ｂ）の処理で、前記目標時刻に近接していないと判定された場合には、前記ＣＰＵを前記スリープモードに切り替え、所定のスリープ時間が経過したら前記ＣＰＵを前記アクティブモードに切り替えた後、（ａ）〜（ｃ）の処理を繰り返し、
（ｄ）前記（ｂ）の処理で、前記目標時刻に近接していると判定された場合には、前記時計部より取得される現在時刻が前記目標時刻になったら前記データ採取部により検出データを採取し、採取した検出データを前記無線通信部により送信する処理と、を実行することを特徴とする。
【００１１】
本発明によれば、スリープ時間が経過する毎にＣＰＵをスリープモードからアクティブモードに切り替えて時計部から現在時刻を取得し、目標時刻が近接していなければスリープモードに切り替え、目標時刻が近接していれば、現在時刻が目標時刻になった時点で検出データを採取する構成としたので、検出データを採取するまでの大部分の時間はＣＰＵを消費電力が小さいスリープモードで動作させつつ、時計部から取得した正確な現在時刻に基づき、高い時間精度で検出データを採取できる。
【００１２】
また、本発明において、前記制御部は、前記（ｃ）の処理において、前記取得した現在時刻から前記目標時刻までの時間差を算出し、前記所定のスリープ時間を、前記時間差が小さいほど小さな値に設定することとしてもよい。このようにすれば、目標時刻に近づくほどスリープ時間が短くなるので、スリープモードでの動作中に目標時刻に達してしまうのを防止できる。この場合、前記時間差に１より小さい定数を乗じた値を前記スリープ時間として設定することで、スリープモードでの動作中に目標時刻に達してしまうのをより確実に防止できる。
【００１３】
また、本発明において、前記ＣＰＵは速度の異なる複数のクロック周波数で動作可能であり、
前記制御部は、前記ＣＰＵを最低速のクロック周波数で動作させて前記（ａ）〜（ｃ）の処理を実行し、前記（ｂ）の処理で前記目標時刻に近接していると判定された場合には、前記（ｄ）の処理を行うことなく、前記ＣＰＵの動作クロックをより高いクロック周波数に切り替えて前記（ａ）〜（ｃ）の処理を実行し、前記ＣＰＵの動作クロックが最高速のクロック周波数である場合に前記（ｂ）の処理で前記目標時刻に近接していると判定された場合に前記（ｄ）の処理を実行することとしてもよい。
【００１４】
このようにすれば、目標時刻までの時間が長いときには、スリープモードにおけるタイマー機能の時間精度は悪いが消費電力のより小さい低速クロックでＣＰＵを動作させ、目標時刻に近づくにつれて、タイマー機能の時間精度が高い高速クロックに切り替えるので、データ検出の時間精度を犠牲にすることなく更なる低電力化を図ることができる。
【００１５】
また、本発明において、前記制御部は、前記（ｄ）の処理において、前記検出データにデータの採取時刻を付加して前記無線通信部により送信することとしてもよい。このようにすれば、検出データに付加された採取時刻に基づいて、複数のセンサ装置から収集した検出データの時間軸を合せることが可能となり、高い精度の同期性が得られる。
【００１６】
また、本発明のセンサ装置は、前記ＣＰＵによりアクセス可能なメモリを更に備え、前記データ採取部により採取された検出データは前記メモリに格納され、前記無線通信部は前記メモリに格納された検出データを無線送信することとしてもよい。
【００１７】
この場合、前記制御部は、前記検出データが前記メモリに格納される都度、その検出データを前記無線通信部により送信させることとしてもよいし、前記無線通信部によるデータ送信が可能であるか否かを判定し、送信可能であれば、前記メモリに格納された検出データを先入れ先出し（ＦＩＦＯ）方式で前記無線通信部により送信することとしてもよい。後者の場合、データ送信が不可能な場合にもデータ採取を続けて、データ送信が可能な状態になったら、メモリに格納したデータを送信することができる。
【００１８】
また、前記メモリには、当該センサ装置が前記センサ素子による検出データを採取すべき時刻が設定された動作制御テーブルが格納されており、前記制御部は前記動作制御テーブルに記録された時刻を前記目標時刻とすることとしてもよい。
【００１９】
また、前記データ採取部が前記センサ素子の出力信号をＡＤ変換して前記検出データとして前記ＣＰＵに供給し、前記ＣＰＵが前記検出データを前記メモリに書き込むこととしてもよいし、あるいは、前記データ採取部が前記センサ素子の出力信号をＡＤ変換して前記検出データとして採取し、該ＡＤ変換された検出データはＤＭＡ機能により前記メモリに格納されることとしてもよい。
【００２０】
また、本発明において、前記センサ装置は、前記センサ素子による検出データを送信するデータ検出モードと、他のセンサ装置から送信されてきた検出データを別のセンサ装置へ転送するデータ転送モードとで動作可能であることとしてもよい。このようにすれば、複数のセンサ装置をネットワーク化したときに、センサ装置をデータ中継装置として機能させることが可能となる。
【００２１】
この場合、前記メモリには、当該センサ装置が、前記データ検出モードと前記データ転送モードの何れで動作すべきかの指定と、その動作時刻とが設定された動作制御テーブルが格納されており、前記制御部は前記動作制御テーブルに格納された動作時刻を前記目標時刻として、前記データ検出モードが指定されている場合には前記（ａ）〜（ｄ）の処理を実行し、前記データ転送モードが指定されている場合には、前記（ｄ）の処理において、検出データを採取して送信することに代えて、前記無線通信部により他のセンサ装置からの検出データを受信してその検出データを指定された送信先へ転送することとしてもよい。
【００２２】
このようにデータ検出モードとデータ転送モードとで動作可能なセンサ装置を複数備えて構成されたセンサシステムにおいては、前記複数のセンサ装置が、複数のクラスタに区分され、各クラスタには、同じクラスタ内のセンサ装置から送信された検出データを転送する機能を有するクラスタヘッドが設けられ、各クラスタに属する各センサ装置による検出データは、同じクラスタ内の他のセンサ装置を経由して又は直接的に同じクラスタのクラスタヘッドへ送信され、このクラスタヘッドを経由して所定の処理装置へ転送されることとしてもよい。
【００２３】
また、本発明のセンサ装置は、電源として電池を備えることとしてもよく、その場合、電池は充電池又は燃料電池であることとしてもよい。
【００２４】
また、本発明は、センサ素子と、通常動作を行うアクティブモードとタイマー機能のみを実行できるスリープモードとで動作可能なＣＰＵにより構成された制御部と、前記センサ素子の出力を検出データとして採取するデータ採取部と、前記採取された検出データを無線送信する無線通信部と、前記制御部に現在時刻情報を供給する時計部とを備える、無線データ伝送機能を有するセンサ装置の動作方法であって、
前記制御部は、
（ａ）前記時計部より現在時刻を取得するステップと、
（ｂ）前記取得した現在時刻から、指定された目標時刻までの時間差を検出する処理と、
（ｃ）前記時間差に基づいて、前記目標時刻に近接したか否かを判定するステップと、
（ｄ）前記目標時刻に近接していないと判定された場合には、前記ＣＰＵを前記スリープモードに切り替えて、所定のスリープ時間が経過したら前記アクティブモードに切り替えた後、ステップ（ａ）〜（ｄ）の処理を繰り返し、前記目標時刻に近接していると判定された場合には、前記時計部より現在時刻を取得し、この現在時刻が前記目標時刻になったら前記データ採取部により前記センサ素子の出力を検出データとして採取するステップと、
（ｅ）前記採取した検出データを前記無線通信部により送信するステップと、
を実行することを特徴とする。
【発明の効果】
【００２５】
本発明によれば、検出データの無線伝送機能を有するセンサ装置において、消費電力を低く抑えつつ、高い時間精度で検出データを採取することが可能となる。
【発明を実施するための最良の形態】
【００２６】
以下、本発明の一実施形態であるセンサ装置について詳細に説明する。本実施形態においては、本発明のセンサ装置が、センサによる検出データを無線送信する動作モード（以下、データ検出モードという）と、他のセンサ装置から無線送信されてきたデータを別のセンサ装置等へ転送するモード（以下、データ転送モードという）とで動作することができるものとしている。
【００２７】
図１は、本実施形態のセンサ装置１０を複数ネットワーク化して構成されたシステムの一例を示す全体構成図である。同図に示す例では、複数のセンサ装置１０がクラスタＡ，Ｂ，Ｃ等にクラスタ化され、クラスタ毎に、クラスタヘッド１（１Ａ，１Ｂ，１Ｃ，・・・）が設けられている。クラスタヘッド１はセンサ装置１０及び他のクラスタヘッド１から送信されてきたデータを検出する機能を有する。すなわち、センサ装置１０のデータ検出モードを有さず、データ転送モードのみで動作する装置である。
【００２８】
各クラスタに属するセンサ装置１０は、その検出データを、同じクラスタに属する他のセンサ装置１０を経由して、あるいは、直接に、該当するクラスタヘッド１へ無線送信する。クラスタヘッド１は、クラスタ内の各センサ装置１０から送信されてきた検出データを、他のクラスタヘッド１を経由して、あるいは、直接に、処理コンピュータ２に接続されたゲートウェイ３へ送信する。例えば、図１において、クラスタＢに属するセンサ装置１０ａによる検出データはセンサ装置１０ｂを経由してクラスタヘッド１Ｂに転送され、さらに、クラスタヘッド１Ｃ〜１Ｅの何れかを介してゲートウェイ３へ転送され、ゲートウェイ３から処理コンピュータ２へ取り込まれる。
【００２９】
なお、各センサ装置１０及び各クラスタヘッド１には固有の識別ＩＤが付与され、各センサ装置１０からゲートウェイ３へのデータの伝送経路は、各センサ装置１０及び各クラスタヘッド１の動作制御テーブル（後述する）に設定されている。
【００３０】
図２は、本実施形態に係わるセンサ装置１０のブロック構成図である。同図に示す如く、センサ装置１０は、検出部２０、データ採取部２２、ＣＰＵ２４、高精度時計部２６、メモリ２８、無線通信部３０、低速クロック発生部３２、高速クロック発生部３４、及び電池３６を備えている。
【００３１】
検出部２０は一つ又は複数のセンサ素子２１により構成されている。センサ素子２１は、例えば加速度のように連続的に変化する物理量を検知し、その物理量に応じたアナログ信号をデータ採取部２２へ出力するセンサ素子である。
【００３２】
データ採取部２２は、検出部２０の各センサ素子２１から出力されたアナログ信号を適宜増幅したうえでデジタルデータに変換し、このデジタルデータを検出データとして採取する。採取された検出データは、ＣＰＵ２４により、あるいは、ＤＭＡ機能により、メモリ２８に格納される。
【００３３】
無線通信部３０は、ＣＰＵ２４による指令に応じて、メモリ２８に格納された検出データを、指定された送信先へ無線送信する。
【００３４】
ＣＰＵ２４は、センサ装置１０の各部を制御し、データ採取部２２からの検出データの読み込みや、無線通信部３０による検出データの送信及び他のセンサ装置１０からのデータ転送等の制御を行う。なお、ＣＰＵ２４は、通常の動作を行うアクティブモードと、タイマー機能のみが有効な、極めて低電力で動作するスリープモードとで動作することができる。
【００３５】
高精度時計部２６は、例えば電波時計やＧＰＳあるいは水晶時計等の高精度な時計により構成され、現在時刻情報をＣＰＵ２４に供給する。
【００３６】
低速クロック発生部３２及び高速クロック発生部３４はＣＰＵ２４の動作クロックを発生する。ＣＰＵ２４が低速クロック発生部３２及び高速クロック発生部３４の何れのクロックで動作するかは、ＣＰＵ２４がクロック選択命令を実行することにより設定することができるようになっている。
【００３７】
電池３６は、センサ装置１０の各部への電源を供給するものであり、典型的には、充電池が用いられるが、燃料電池を用いてもよい。また、電池は内蔵電池であってもよいし、外付け式の電池であってもよい。
【００３８】
図３は、センサ装置１０の動作を設定するための動作制御テーブル５０の一例である。この動作制御テーブル５０はメモリ２８に記憶されており、その内容は、適宜なユーザインタフェースによりユーザが設定可能である。
【００３９】
図３に示す如く、動作制御テーブル５０には、センサ装置１０が行うべき各動作について、その動作時刻及び動作内容が格納されている。具体的には、動作制御テーブル５０には、動作時刻欄５２、動作指定欄５４、送信元欄５６、送信先欄５８、及び検出動作詳細欄６０の各欄が設けられている。動作時刻欄５２には、センサ装置１０が動作を開始すべき時刻が設定され、動作指定欄５４には、センサ装置１０の動作区分（上記したデータ検出モード及びデータ転送モードの何れのモードで動作するかの区分）が設定される。送信元欄５６には、動作指定欄５４にデータ転送モードが設定されている場合に、転送すべきデータの送信元であるセンサ装置１０又はゲートウェイ１のＩＤが設定される。一方、送信先欄５８には、データの送信先であるセンサ装置１０又はゲートウェイ１のＩＤが設定される。また、検出動作詳細欄６０には、検出機能における検出動作の詳細が設定され、例えば、検出部２０が備える複数のセンサ素子２１のうちデータを採取すべきセンサの指定や、サンプリング周波数やデータバイト数等が設定される。
【００４０】
図３の例では、１１時５５分００秒にデータ検出モードでセンサ＃１、＃２、＃３からの検出データを採取して、ＩＤ＝１１２３のセンサ装置１０又はクラスタヘッド１へ送信し、１１時５６分３０秒にデータ転送モードでＩＤ＝１０４８のセンサ装置１０から送信されてきたデータをＩＤ＝１１２３のセンサ装置１０又はクラスタヘッド１へ転送するように設定されている。
【００４１】
なお、動作制御テーブル５０に設定されたセンサ装置１０が行うべき各動作を、以下、動作ジョブという。すなわち、図３の例では、１１：５５：００に実行すべきデータ検出モードの動作ジョブと、１１：５６：３０に実行すべきデータ転送モードの動作ジョブとが設定されていることになる。
【００４２】
以下、本実施形態においてセンサ装置１０のＣＰＵ２４が実行する処理について説明する。上記の通り、ＣＰＵ２４は、アクティブモードとスリープモードとで動作することができ、本実施形態では、ＣＰＵ２４の消費電力が小さいスリープモードを利用して消費電力を抑えつつ、高精度時計部２６から提供される高精度の時間情報に基づいて、高い時間精度で検出データを採取できるようにしている。なお、ＣＰＵ２４は、アクティブモードにおいてスリープ時間を設定してスリープモードへの移行命令を実行することにより、スリープモードへ切り替わり、スリープモード中はタイマー機能により時間をカウントし、上記設定されたスリープ時間が経過すると、スリープモードからアクティブモードに切り替わることができるようになっている。
【００４３】
図４及び図５は、本実施形態においてＣＰＵ２４が実行する処理ルーチンの流れを示すフローチャートである。この処理ルーチンは、図４のＳ１００において、ＣＰＵ２４がスリープモードからアクティブモードに切り替えられることにより起動される。以下の説明から分かるように、Ｓ１００におけるアクティブモードへの切り替え時には、ＣＰＵ２４は低速クロックで動作している。なお、図４及び図５に示すフローチャートには、センサ装置１０がセンサ検出モードの動作ジョブを実行する場合の処理を示している。
【００４４】
図４に示すＳ１００において、ＣＰＵ２４がアクティブモードに切り替わると、先ずＳ１０２において高精度時計部２６から現在時刻Ｔｃが読み込まれる。次に、Ｓ１０４において、次に実行すべき動作ジョブの動作時刻（以下、目標時刻Ｔｏという）と現在時刻Ｔｃとの時間差ΔＴ＝Ｔｏ−Ｔｃが計算される。そして、Ｓ１０６において、時間差ΔＴが、低速クロックモードに対応する所定の下限値ＴＬ以下となったか否かが判定される。
【００４５】
上記Ｓ１０６においてΔＴ≦ＴＬが不成立である場合は、目標時刻Ｔｏに近接していないと判定され、Ｓ１０８においてスリープ時間ＴｓがＴｓ＝ΔＴ×Ｃ（ただし、Ｃは１より小さい定数）により計算される。そして、Ｓ１１０においてスリープ時間Ｔｓがセットされ、ＣＰＵ２４がスリープモードに切り替えられてスリープタイマのカウントアップが開始される。以後、Ｓ１１２でスリープ時間Ｔｓが経過するまでスリープモードが維持され、スリープ時間Ｔｓが経過するとＳ１００においてアクティブモードに切り替えられて上記Ｓ１０２に戻る。
【００４６】
一方、Ｓ１０６においてΔＴ≦ＴＬが成立する場合は、目標時刻Ｔｏに近接したと判定され、Ｓ１２０においてＣＰＵ２４の動作クロックが、高速クロック発生部３４の高速クロックに切り替えられる。そして、Ｓ１２２で高精度時計部２６から現在時刻Ｔｃが読み込まれ、Ｓ１２４で目標時刻Ｔｏと現在時刻Ｔｃとの時間差ΔＴが計算され、Ｓ１２６で時間差ΔＴが高速クロックに対応した所定の下限値ＴＨ以下となったか否かが判定される。なお、下限値ＴＨの値は、低速クロックの場合の下限値ＴＬよりも小さな値に設定しておく。
【００４７】
Ｓ１２６においてΔＴ≦ＴＨが不成立である場合は、目標時刻Ｔｏに近接していないと判定され、上記Ｓ１０８〜Ｓ１１２と同様に、Ｓ１２８でスリープ時間Ｔｓ＝ΔＴ×Ｃが計算され、Ｓ１３０でスリープ時間ＴｓがセットされてＣＰＵ２４がスリープモードに切り替えられ、Ｓ１３２においてスリープ時間Ｔｓが経過すると、Ｓ１３４でアクティブモードに切り替えられた後、上記Ｓ１２２に戻る。
【００４８】
一方、Ｓ１２６においてΔＴ≦ＴＨが成立する場合は、目標時刻Ｔｏに近接したと判定され、図５のＳ１４０において、高精度時計部２６から現在時刻Ｔｃが読み込まれ、Ｓ１４２において目標時刻Ｔｏと現在時刻Ｔｃとの時間差ΔＴ＝Ｔｏ−Ｔｃが計算され、Ｓ１４４において時間差ΔＴが０以下になったか否かが判定される。その結果、ΔＴ≦０が不成立であれば、Ｓ１４０に戻る。一方、ΔＴ≦０が成立する場合は、目標時刻Ｔｏに達したことになる。この場合、Ｓ１４６において、データ採取部２２からセンサ素子２１（動作制御テーブル５０の検出動作詳細欄６０でセンサ番号が指定されている場合は、これに該当するセンサ素子２１）の検出データが取り込まれ、メモリ２８に格納される。その際、現在時刻Ｔｃをデータ採取時刻Ｔａとして、検出データに付帯させて格納する。次に、Ｓ１４８において、メモリ２８に格納された検出データが、無線通信部３０により、動作制御テーブル５０の送信先欄５８に設定されたＩＤのセンサ装置１０又はクラスタヘッド１へ無線送信される。この送信動作の詳細は後述する。
【００４９】
Ｓ１５０では、Ｓ１４８における検出データの送信が正常に行われたか否かが判定される。具体的には、各センサ装置１０及び各クラスタヘッド１は、自身宛のデータを受信すると、受信確認信号を返送するように構成されており、Ｓ１５０ではこの受信確認信号が返送されてきたか否かに基づいて、データ送信が正常に行われたか否かを判定する。その結果、データ送信が正常に行われたならばＳ１６０へ進む。一方、データ送信が正常に行われていなければ、Ｓ１５２において所定回数に達するまでデータが再送信され、データ送信が正常に行われた時点で今回のルーチンを終了する。また、所定回数再送信を行ってもデータ送信が正常に行われない場合は、Ｓ１５４においてエラー表示等の適宜なエラー処理が行われてＳ１６０へ進む。ただし、後述するように、Ｓ１５２で所定回数再送信しても正常に送信できない場合は、採取した検出データをメモリ２８に保持しておき、データ送信が可能になった時点で、保持した検出データを一括して送信するようにしてもよい。
【００５０】
Ｓ１６０では、動作制御テーブル５０から、次に実行すべき動作ジョブが読み出され、その動作時刻が新たな目標時刻Ｔｏとして設定される。そして、Ｓ１６２において、高精度時計部２６から現在時刻Ｔｃが取得され、Ｓ１６４において時間差Ｔｏ−Ｔｃが計算され、Ｓ１６６においてＣＰＵ２４の動作クロックが低速クロックに切り替えられた後、図４のＳ１０８に戻る。これにより、ＣＰＵ２４はスリープモードに切り替えられ、以後、次の動作ジョブについて上記と同じ処理が行われる。
【００５１】
なお、図４及び図５のフローチャートでは、センサ装置１０がデータ検出モードの動作ジョブを実行する場合の処理を示したが、データ転送モードの動作ジョブについては、Ｓ１４６における検出データの取り込み処理の代わりに、動作制御テーブル５０の送信元欄５６で指定された送信元からデータを受信し、Ｓ１４８でそのデータを転送先へ送信する処理を行えばよい。
【００５２】
ここで、上記Ｓ１４８における検出データの送信処理について説明する。図６は、本実施形態において、センサ装置１０の無線通信部３０により送信されるデータの構成を示す図である。同図に示す如く、データは、検出部２０による検出データが格納されるデータ本体部６０と、ヘッダー部７０とにより構成されている。ヘッダー部７０は、当該データを送信したセンサ装置１０のＩＤ（送信者ＩＤ）７２、データ本体部６０に格納された検出データを検出したセンサ装置１０のＩＤ（検出者ＩＤ）７４、及び検出データの検出時刻７６により構成されている。
【００５３】
センサ装置１０がデータ検出モードで動作する場合、図５のＳ１４８で検出データを送信するにあたり、Ｓ１４６で取り込んだ検出データをデータ本体部６０に格納し、検出時刻Ｔａを検出時刻７６として格納し、自身のＩＤを送信者ＩＤ７２及び検出者ＩＤ７４として格納したデータを無線通信部３０により送信する。また、センサ装置１０がデータ転送モードで動作する場合は、他のセンサ装置１０から受信したデータのうち送信者ＩＤ７２を自身のＩＤに書き換えて送信する。
【００５４】
上記図４及び図５に示すルーチンによれば、先ず、ＣＰＵ２４を低速クロックで動作させ、目標時刻と現在時刻との時間差が下限値ＴＬ以下（Ｓ１０６でｙｅｓ）となるまで、スリープモードへの切り替え（Ｓ１１０）とスリープ時間Ｔｓ経過後のアクティブモードへの切り替え（Ｓ１１４）を繰り返す。その際、スリープ時間Ｔｓは、目標時刻と現在時刻との時間差ΔＴに１より小さい所定値Ｃを掛けた値に設定される（Ｓ１０８）ので、目標時刻Ｔｏに近づくにつれて、スリープ時間Ｔｓは次第に短くなる。
【００５５】
時間差ΔＴが下限値ＴＬ以下になったら、ＣＰＵ２４を高速クロックに切り替えて（Ｓ１２０）、時間差ΔＴが高速クロックに対応した下限値ＴＨ０以下になるまで、上記と同様に、スリープモードへの切り替え（Ｓ１３０）とスリープ時間Ｔｓ経過後のアクティブモードへの切り替え（Ｓ１３４）を繰り返す。そして、時間差ΔＴが下限値ＴＨ以下になったら、以後は常時アクティブモードとして、高精度時計部２６から高精度な現在時刻を取得し、目標時刻Ｔｏに達したら検出データの取り込み及び送信の処理を行う。
【００５６】
このように、本実施形態では、目標時刻Ｔｏまでの時間が長い場合は、基本的にはＣＰＵ２４をスリープモードで動作させ、時々、アクティブモードに切り替えて高精度時計部２６から高精度の現在時刻を取得し、目標時刻との時間差ΔＴを判定する構成としている。このため、目標時刻Ｔｏに達するまでの時間の大部分は、ＣＰＵ２４が消費電力の極めて小さいスリープモードで動作することになるので、センサ装置１０の消費電力を小さく抑えることができる。
【００５７】
また、上記のように、目標時刻Ｔｏに近づくほどスリープ時間Ｔｓを短く設定することにより、スリープモードでの動作時間をなるべく長く確保しながらも、スリープモードでの動作中に目標時刻Ｔｏに達してしまうのを防止して、確実に、目標時刻Ｔｏでデータ採取を行うことが可能である。
【００５８】
また、目標時刻Ｔｏまでの時間が長い間（時間差ΔＴが下限値ＴＬより大きい間）は、スリープ時間のカウント精度が低くても支障がないため、消費電力の小さな低速クロックで動作させることにより、更なる省電力化を図ることができる。そして、時間差ΔＴが下限値ＴＬ以下になったら高速クロックに切り替え、さらに、時間差ΔＴが下限値ＴＨ以下になったら、常時アクティブモードにして高精度時計部２６から高精度の時刻を取得することで、消費電力を極力抑えつつ、目標時刻Ｔｏになったことを正確に検知して、検出データの読み込みを行うことができる。
【００５９】
なお、上記実施形態では、ＣＰＵ２４が低速クロックと高速クロックの２段階のクロック速度で動作するものとしたが、クロックの切り替えを行わずに、Ｓ１２６で時間差ΔＴが下限値以下と判定されれば、直ちにＳ１４０以降の処理に進むこととしてもよい。一方、ＣＰＵ２４が３段階以上のクロック速度で動作するものとしてもよく、その場合は、図４及び図５のルーチンを、最低速のクロック速度から始めて、時間差ΔＴが下限値以下になったら１段高速のクロックへ切り替え、最高速のクロックで時間差ΔＴが下限値以下になったら、図５のＳ１４０以降の処理を実行するようにすればよい。
【００６０】
以上説明したように、本実施形態によれば、センサ装置１０の省電力化を図りつつ、目標時刻Ｔｏに対して極めて高精度のタイミングで検出部２０による検出データを採取することができる。そして、センサ装置１０の消費電力が小さくなることで、電池３６の持続時間も長くなるので、電池３６として、充電不可能な電池を用いる場合は電池の交換頻度を抑えることができ、充電池を用いる場合は充電頻度を抑えることができ、また、燃料電池を用いる場合は燃料の補充頻度を抑えることができるなど、システム全体を効率的に運用することが可能になる。
【００６１】
特に、加速度センサのように検出対象が高速かつ連続的に変化する信号の場合には、その波形を再現するために高いサンプリング周波数で多量のデータを採取することが必要となって無線送信にも長時間かかり、その分、消費電力も大きくなってしまうため、省電力化への要求は大きい。したがって、本発明のセンサ装置は、加速度センサのように高速かつ連続的に変化する物理量を検出するセンサの場合に極めて有効である。
【００６２】
また、各センサ装置１０が高い時間精度で検出データを採取できることで、図１に示すように複数のセンサ装置１０が設けられる場合にも、これらセンサ装置１０を正確に同期させて動作させることができる。なお、センサ装置１０を完全に同期させることができない場合であっても、各センサ装置１０において、高精度時計部２６により取得した高精度の時刻を図６に示すように検出時刻７６として検出データに付帯させることができるので、コンピュータ２が複数のセンサ装置１０からのデータを読み込んだ後で、それらデータの時間軸を整合させることで、高い精度の同期性を得ることも可能である。
【００６３】
また、図１に示すように、複数のセンサ装置１０をクラスタに分割し、各クラスタ１内のセンサ装置１０を同じタイミングで作動させ、同時に作動させる必要のない他のクラスタ内のセンサ装置１０は休止させておくことができる。すなわち、必要なクラスタに属するセンサ装置１０のみをアクティブモードに起動し、他のセンサ装置１０はスリープモードに維持することができるので、システム全体の消費電力を抑えることもできる。
【００６４】
また、各センサ装置１０がデータ検出モードとデータ転送モードとで動作する機能を有し、各動作ジョブについて動作モードと動作時刻とを個々に設定できるので、特定のセンサ装置１０で検出したデータを、必要最小限のセンサ装置１０やクラスタヘッド１のみを起動させるだけでコンピュータ１２へ伝送することができる。例えば、図１において、センサ装置１０ａの検出データがセンサ装置１０ｂ→クラスタヘッド１Ｂ→クラスタヘッド１Ｄ→ゲートウェイ３の経路で伝送されるものとすれば、この経路上のセンサ装置１０ｂ、クラスタヘッド１Ｂ、及びクラスタヘッド１Ｄのみアクティブモードに起動させれば、センサ装置１０ａの検出データをゲートウェイ３を介してコンピュータ２へ伝送することができ、他のセンサ装置１０等はスリープモードのままでよいので、システム全体の消費電力を抑えることができる。具体的には、センサ装置１０ａをデータ検出モードで動作させ、センサ装置１０ｂ、クラスタヘッド１Ｂ及びクラスタヘッド１Ｄをデータ転送モードで動作させるように各装置の動作ジョブを設定し、他の装置は休止状態とするのである。
【００６５】
この場合、データ伝送には時間がかかるので、データ伝送時間を考慮して各装置の動作時間を時間をずらせて設定すれば、更なる省電力化を図ることが可能である。例えば、上記の例において、センサ装置１０ａのデータ検出モードでの動作時刻に対して、センサ装置１０ｂ、クラスタヘッド１Ｂ、及びクラスタヘッド１Ｅの動作時刻を、データ転送時間に応じて順次所定時間ずつ遅らせる。これにより、センサ装置１０ｂ、クラスタヘッド１Ｂ、及びクラスタヘッド１Ｅを、データ転送動作が必要となるタイミングの直前までスリープモードとすることができる。すなわち、本実施形態では、高精度時計部２６による高精度の時間情報に基づいてセンサ装置１０やクラスタヘッド１を動作させることができるため、各センサ装置１０やクラスタヘッド１の動作時刻をデータ伝送時間まで考慮して細かく設定でき、これにより、更なる省電力化を図ることができる。
【００６６】
なお、上記の説明では、センサ装置１０が検出データを採取する都度、送信する（以下、このような送信方式を随時送信という）ものとしたが、これに限らず、複数回分の検出データを一括して送信する（以下、このような送信方式を一括送信という）ようにしてもよい。
【００６７】
図７は、随時送信と一括送信について、データ採取、メモリアクセス、及び、データ送信の各動作のタイミングを示す図である。同図（ａ）に示すように、随時送信では、検出データを採取してメモリに書き込む都度、送信動作が行われるが、同図（ｂ）に示すように、一括送信では、メモリ２８に保持された複数回分の検出データを一括して送信するので、送信回数が少なくなる。データ送信においては、図６に示す構成のデータのほか、データフォーマット等を示すパケットが付随する。したがって、一括送信の場合には、随時送信の場合に比べて、このような付随パケットの量が少なくなって、トータルの送信時間が短くて済み、その結果、消費電力を更に抑えることができるという効果が得られる。
【００６８】
上記した一括送信によれば、次のような効果も得られる。図１に示すようにクラスタに分割した構成の場合、一括送信によれば、あるクラスタで繰り返し検出データを採取しながら、別のクラスタで、複数回分の検出データをまとめて送信することが可能である。例えば図１において、クラスタＡにおける検出データを、クラスタＢのクラスタヘッド１Ｂを経由して送信するように設定されているとする。この場合、クラスタＢがデータ送信を行っている間は、クラスタヘッド１Ｂが占有されているため、クラスタＡの検出データを送信できないのであるが、一括送信によれば、クラスタＢでのデータ送信中は、クラスタＡの各センサ装置１０が検出データをメモリ２８に保持しておき、クラスタＢのデータ送信が終わってクラスタヘッド１Ｂが開放された時点で、メモリ２８に保持した検出データを一括して送信することができる。このように、一括送信を行うことにより、各クラスタにおいて、他のクラスタの動作状態の影響を受けずに自由にかつ正確に検出データの採取時刻を設定することが可能となる。
【００６９】
図８は、上記した一括送信を実現するためのメモリ２８へのデータ記憶方法の一例を示す。同図に示す例では、メモリ２８をＦＩＦＯ（First In First Out）メモリとして構成し、採取した検出データＤ１，Ｄ２，Ｄ３，・・・Ｄｎを順次メモリ２８に格納し、データ送信が可能になったタイミングで、時間的に先に格納された検出データから順次送信していく。
【００７０】
なお、随時送信を行うか、一括送信を行うかを、そのときの状況に応じてＣＰＵ２４が制御するようにしてもよい。具体的には、先ず、ＣＰＵ２４は無線通信部３０によるデータ送信が可能な状況であるか否かを判定する。この判定は、例えば、データ送信先へダミーのデータを送信し、これに対する受信確認信号が返送されてきたか否かに基づいて行うことができる。その結果、データ送信が可能であれば、検出データを送信し（随時送信）、一方、データ送信が不可能な状況であれば、図８に示すように検出データをメモリ２８に順次格納していき、データ送信が可能となった時点でメモリ２８に格納されたデータをＦＩＦＯ方式で送信（一括送信）するのである。すなわち、図５のフローチャートにおいて、Ｓ１５２で所定回数再送信を試みても正常に送信できない場合に、Ｓ１５４でエラー処理をするのではなく、検出データをメモリ２８に保持し、データ送信が可能になったら保持したデータを一括して送信することにより一括送信が実現できる。
【００７１】
なお、高精度時計部２６として電波時計やＧＰＳを用いた場合は、校正しなくても常に正確な時刻を検知できるが、センサ装置１０の設置環境によっては、電波時計やＧＰＳの電波を受信できず、水晶時計を用いざるをえないこともある。その場合、適宜なタイミングで、各センサ装置１０に時刻校正用の時間情報を外部から供給すると共に、センサ装置１０のデータ転送機能を用いて、全センサ装置へ一斉に時刻校正コマンドを送信し、この時刻校正コマンドに応じて、各センサ装置１０が外部から供給された時刻情報に基づいて自己の水晶時計を校正するようにしてもよい。
【図面の簡単な説明】
【００７２】
【図１】本発明の一実施形態であるセンサ装置を複数ネットワーク化して構成されたシステムの一例を示す全体構成図である。
【図２】本実施形態に係わるセンサ装置１０のブロック構成図である。
【図３】本実施形態のセンサ装置の動作を設定するための動作制御テーブル５０の一例である。
【図４】本実施形態においてセンサ装置が備えるＣＰＵが実行する処理ルーチンの流れを示すフローチャート（その１）である。
【図５】本実施形態においてセンサ装置が備えるＣＰＵが実行する処理ルーチンの流れを示すフローチャート（その２）である。
【図６】本実施形態においてセンサ装置から送信されるデータの構成を示す図である。
【図７】本実施形態においてセンサ装置の動作タイミングを随時送信と一括送信の場合について示すタイムチャートである。
【図８】一括送信を実現するためのメモリへのデータ記憶方法の一例を示す図である。
【符号の説明】
【００７３】
１０  センサ装置                ２０  検出部
２１  センサ素子                ２２  データ採取部
２４  ＣＰＵ                    ２６  高精度時計部
２８  メモリ                    ３０  無線通信部
３２  低速クロック発生部        ３４  高速クロック発生部
３６  電池                      ５０  動作制御テーブル
５２  動作時刻欄                ５４  動作指定欄
５６  送信元欄                  ５８  送信先欄
６０  検出動作詳細欄
【図２】
2006309407.tif 000003
【図３】
2006309407.tif 000004
【図４】
2006309407.tif 000005
【図５】
2006309407.tif 000006
【図６】
2006309407.tif 000007
【図７】
2006309407.tif 000008
【図８】
2006309407.tif 000009
【図１】
2006309407.tif 000010