(57)【特許請求の範囲】
【請求項１】
所定の周期で情報を測定するセンサと、
前記センサが測定した情報を送信する無線通信部と、
前記センサ及び無線通信部を制御するコントローラと、を備えたセンサノードにおいて、
前記コントローラは、
前記所定の周期で前記センサを起動するクロック部と、
前記センサが最新の情報の測定を行うと、該測定された最新の情報を送信することにより無線通信の状態を判定する無線通信状態判定部と、
前記判定した無線通信状態が情報の送信に適さない状態の場合には、前記測定した最新の情報を格納する記憶部と、
前記判定した無線通信状態が情報の送信に適した状態の場合には、前記記憶部に格納された前記情報を送信する情報送信部と、を備えたことを特徴とするセンサノード。
【請求項２】
前記無線通信状態判定部は、
前記送信した情報に対する応答信号の受信を所定の時間まで待機する応答信号受信部と、
前記応答信号が受信できない場合には、前記測定した最新の情報の送信と、応答信号の受信とを所定の回数まで繰り返して実行させるリトライ部と、
前記リトライ部で応答信号を受信できなかった場合には、無線通信状態が情報の送信に適さない状態と判定する一方、前記応答信号を受信できた場合には無線通信状態が情報の送信に適した状態と判定することを特徴とする請求項１に記載のセンサノード。
【請求項３】
前記コントローラは、
前記センサが前記情報を測定した時刻を取得する時刻取得部をさらに有し、
前記記憶部は、
前記測定した情報に前記測定した時刻を付加して記憶し、
前記情報送信部は、測定した情報に前記測定した時刻を付加して送信することを特徴とする請求項１又は２に記載のセンサノード。
【請求項４】
前記時刻取得部は、標準時刻と現時の時刻を同期させる時刻同期部を有することを特徴とする請求項３に記載のセンサノード。
【請求項５】
前記情報送信部は、
前記記憶部に格納された前記情報をまとめて送信することを特徴とする請求項１乃至４の何れかに記載のセンサノード。
【請求項６】
前記記憶部は、不揮発性メモリを有し、前記測定した情報を前記不揮発性メモリに格納することを特徴とする請求項１に記載のセンサノード。
【請求項７】
前記コントローラは、前記電池の残量を検出する電池残量検出部をさらに有し、
前記記憶部は、
不揮発性メモリと揮発性メモリとを有し、前記検出した電池の残量が予め設定した値を超えているときには前記揮発性メモリに前記情報を格納する一方、前記検出した電池の残量が予め設定した値以下のときには前記不揮発性メモリに前記情報を格納することを特徴とする請求項１乃至５の何れかに記載のセンサノード。
【請求項８】
前記記憶部は、
前記検出した電池の残量が予め設定した値を超えているときには前記揮発性メモリに前記情報を格納する一方、前記検出した電池の残量が予め設定した値以下のときには前記揮発性メモリの情報を不揮発性メモリに退避させ、前記不揮発性メモリに前記情報を格納することを特徴とする請求項７に記載のセンサノード。
【請求項９】
前記記憶部は、前記格納する情報が前記揮発性メモリの容量を超えるときには、前記揮発性メモリと不揮発性メモリをひとつのメモリとして扱うことを特徴とする請求項７又は８に記載のセンサノード。
【請求項１０】
前記記憶部は、
前記揮発性メモリに設定した第１のリングバッファと、
前記不揮発性メモリに設定した第２のリングバッファと、を有し、
前記測定した情報を前記第１または第２のリングバッファに格納することを特徴とする請求項７乃至９の何れかに記載のセンサノード。
【請求項１１】
センサが所定の周期で情報を測定し、該測定した情報と測定した時刻とを送信するセンサノードとの間でデータの送受信を行う無線通信部と、
センサノードから受信した情報を格納するデータベースと、
前記無線通信部とデータベースを制御する制御部と、を備えた基地局において、
前記制御部は、
前記センサノードからデータを受信したときには当該センサノードに対して応答信号を送信する返信部と、
前記受信したデータから前記センサの測定した情報と時刻情報を抽出するデータ抽出部と、
前記時刻情報の順序で前記測定した時刻を並べ替えるソート部と、
前記並べ替えた測定情報と測定時刻を対にして前記データベースへ格納するデータ蓄積部と、を備え、
前記データ抽出部は、
前記受信したデータから当該基地局の配下への加入要求を抽出し、
前記加入要求に対して識別子を前記センサノードに付与するＩＤ付与部と、
前記センサノードが前記識別子を受け付けた後に、標準時刻を送信する時刻同期指示部と、を有することを特徴とする基地局。
【請求項１２】
所定の周期で情報を測定するセンサと、前記センサが測定した情報を基地局へ送信する第１の無線通信部と、前記センサ及び無線通信部を制御するコントローラと、前記コントローラと第１無線通信部と、から構成されたセンサノードと、
前記センサノードとの間でデータの送受信を行う第２の無線通信部と、前記センサノードから受信した情報を格納するデータベースと、前記第２無線通信部とデータベースを制御する制御部と、から構成された基地局と、を備えたセンサネットにおいて、
前記センサノードのコントローラは、
所定の周期で前記センサを起動するクロック部と、
前記センサが最新の情報の測定を行うと、該測定された最新の情報を送信することにより前記基地局との間の無線通信の状態を判定する無線通信状態判定部と、
前記判定した無線通信状態が情報の送信に適さない状態の場合には、前記測定した情報を格納する記憶部と、
前記判定した無線通信状態が情報の送信に適した状態の場合には、前記記憶部に格納された前記情報を送信する情報送信部と、を備え、
前記基地局の制御部は、
前記センサノードからデータを受信したときには当該センサノードに対して応答信号を送信する返信部を備え、
前記無線通信状態判定部は、前記応答信号の受信の有無に基づいて基地局との間の無線通信の状態を判定することを特徴とするセンサネット。
【請求項１３】
所定の周期で情報を測定するセンサを備えたセンサノードが前記情報を基地局へ送信するセンシングデータの送信方法であって、
前記センサを所定の周期で起動し、
前記センサが最新の情報の測定を行うと、該測定した最新の情報を前記基地局へ送信し、
該最新の情報の送信により前記基地局との間の無線通信の状態を判定し、
前記判定した無線通信状態が情報の送信に適さない状態の場合には、前記測定した情報をセンサノードの記憶装置に格納し、
前記判定した無線通信状態が情報の送信に適した状態の場合には、前記記憶装置に格納された前記情報を送信することを特徴とするセンシングデータの送信方法。
【請求項１４】
前記センシングデータ送信方法は、
前記送信した情報に対する基地局からの応答信号を受信したか否かを判定し、
前記判定結果が応答信号を受信していないときには前記送信を行い、前記判定を所定の回数まで繰り返し、
前記所定の回数に達した後に前記応答信号を受信していないときには、前記無線通信状態が情報の送信に適さないと判定し、前記応答信号を受信したときには、前記無線通信状態が情報の送信に適すると判定することにより、前記基地局との間の無線通信の状態を判定することを特徴とする請求項１３に記載のセンシングデータの送信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、センサネットで利用可能な無線通信機能付きのセンサノードと基地局の改良に関する。
【背景技術】
【０００２】
近年、センサに無線通信機能を有する小型の電子回路を付加して、現実世界の様々な情報をリアルタイムに情報処理装置に取り込むネットワークシステム（以下、センサネットという）が検討されている。センサネットには幅広い応用が考えられており、例えば、無線回路、プロセッサ、センサ、電池を集積した小型電子回路により、脈拍等の生体情報を常時モニタし、モニタ結果は無線通信により診断装置等に送信され、モニタ結果に基づいて健康状態を判定するといったような医療応用も考えられている（例えば、特許文献１〜７）。
【０００３】
センサネットを広く実用化するためには、無線通信機能、センサ、および、電池等の電源を搭載する電子回路（以下、センサノードという）を、長時間に渡ってメンテナンスフリー、かつセンサデータを送信し続けられるものとし、かつ外形も小型化することが重要になる。このため、超小型でどこにでも設置できるセンサノードの開発が進められている。現段階では、実用上、１年程度の期間、電池交換をせずに使用可能であることが、メンテナンスコストおよび使い勝手の両面から必要と考えられている。
【特許文献１】特開２０００−０４１９５２号
【特許文献２】特開２００１−０７０２６６号
【特許文献３】特開２００３−１１８４２１号
【特許文献４】特開２００４−２７５２７２号
【特許文献５】特開平０９−０７５３１１号
【特許文献６】特開平０９−１１３６５３号
【特許文献７】特開２００３−０００５５１号
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記従来のセンサノードでは、定期的にセンサを駆動してセンサデータを収集する構成となっている（例えば、特許文献５）。
【０００５】
そして、センサノードで収集したセンシングデータは、無線通信により基地局などへ送信され、基地局などには各センサノードのセンシングデータが蓄積される。脈拍などの生体情報を収集するセンサノードでは常時人体に装着する必要があるが、人体が基地局から離れた位置や無線通信の状態が不安定な位置にいるときでは、センシングデータを送信できない場合がある。
【０００６】
また、据置型のセンサノードでも、設置場所の周囲に無線通信状態に影響を与える機器や設備がある場合でも無線通信状態が不安定なときはセンシングデータを基地局へ送信できない場合がある。
【０００７】
このような状況で、センサノードが基地局を探索したり応答信号を待つ動作を継続すると、限られた電池の容量を無駄に消費することになり、センサノードの電池交換時期（または充電時期）が早まり、メンテナンス回数が増大して使い勝手が低下する、という問題がある。
【０００８】
センサノードが脈拍などの生体情報を測定する場合では、センシングデータを蓄積する基地局側は、時系列的なセンシングデータの欠落をできるだけ回避したい。特に、生体情報を監視するセンサネットでは、ある時点の生体情報も重要ではあるが、時系列的な生体情報の変化も捉えることで監視の精度を向上させたいという要求がある。
【０００９】
しかし、上記従来のセンサノードでは、所定の測定タイミングになるとセンサを駆動して測定を開始し、測定したセンシングデータをそのまま基地局へ送信するため、無線通信状態が悪い環境では、センシングデータが欠落する場合があった。
【００１０】
そこで本発明は、上記問題点に鑑みてなされたもので、電池の消耗を抑制しながらもセンシングデータの欠落を抑制可能なセンサノード及びセンサネットを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明は、所定の周期で情報を測定するセンサと、前記センサが測定した情報を基地局へ送信する第１の無線通信部と、前記センサ及び無線通信部を制御するコントローラと、と、から構成されたセンサノードと、前記センサノードとの間でデータの送受信を行う第２の無線通信部と、前記センサノードから受信した情報を格納するデータベースと、前記第２無線通信部とデータベースを制御する制御部と、から構成された基地局と、を備えたセンサネットにおいて、
前記センサノードのコントローラは、所定の周期で前記センサを起動するクロック部と、前記センサが最新の情報の測定を行うと、該測定された最新の情報を送信することにより前記基地局との間の無線通信の状態を判定する無線通信状態判定部と、前記判定した無線通信状態が情報の送信に適さない状態の場合には、前記測定した最新の情報を格納する記憶部と、前記判定した無線通信状態が情報の送信に適した状態の場合には、前記記憶部に格納された前記情報を送信する情報送信部と、を備え、前記基地局の制御部は、前記センサノードからデータを受信したときには当該センサノードに対して応答信号を送信する返信部を備え、前記無線通信状態判定部は、前記応答信号の受信の有無に基づいて基地局との間の無線通信の状態を判定する。
【発明の効果】
【００１２】
センサノードは所定の周期で起動してセンサで最新の情報を測定し、基地局へ送信する。センサノードから送信した最新の測定情報に対して基地局からの応答信号を受信できないような無線通信状態の場合、情報の送信に適さないと判定して情報の送信をあきらめて、記憶部に蓄積することでセンサノードの電池の無駄な消費を防ぐことが可能となる。つまり、測定した最新の情報を送信することで無線通信状態の良否を判定し、その後の記憶部の内容を送信するか否かを決定できるため、無線通信状態のみを確認する動作は不要となって、電池の消耗を抑制できる。
【００１３】
そして、次回の測定情報の送信時に無線通信状態が情報の送信に適する状態であれば、最新の測定情報を基地局へ送信した後に、記憶部に蓄積しておいた過去の測定情報を送信する。このため無線通信状態の不安定な環境であっても、無線通信状態の良いときには基地局へ最新の測定情報と蓄積しておいた測定情報を送信でき、基地局では測定情報の欠損を抑制することが可能となる。また、無線通信状態の不安定な場所をなくすために、基地局を複数設置すること、センサノードと基地局の無線通信を中継するための中継器を設置すること、などコストをかけることなく、測定情報の欠損を抑制することが可能となる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明の一実施形態を添付図面に基づいて説明する。
【００１５】
図１は、第１の実施形態を示し、本発明を腕輪型（または腕時計型）のセンサノードＳＮ１に適用した例を示す正面図である。このセンサノードＳＮ１は主に装着者の脈拍を測定する。
【００１６】
＜センサノードの概要＞
四辺を有する方形のケースＣＡＳＥ１の中央には、メッセージなどを表示する表示装置ＬＭｏｎ１が配置される。なお、表示装置ＬＭｏｎ１としては液晶表示装置などを採用することができる。そして、腕時計における１２時方向のケースＣＡＳＥ１端部である第１辺から腕時計における６時方向のケースＣＡＳＥ１端部であり、第１辺と対向する第２辺には、センサノードＳＮ１を腕に固定するためのバンドＢＡＮＤ１が取り付けられる。なお、図１ではセンサノードＳＮ１を左腕（ＷＲＩＳＴ１）に装着した状態を示す。
【００１７】
ケースＣＡＳＥ１の下端のバンドＢＡＮＤ１と表示装置ＬＭｏｎ１の間には、緊急スイッチＳＷ１と測定スイッチＳＷ２が腕の長さ方向に沿うように、後述する基板ＢＯ２に配置され、ケースＣＡＳＥ１の表面に露出しており、装着者により操作可能となっている。なお、スイッチＳＷ１は、例えば、装着者が緊急時に操作することで外部に緊急を通知し、スイッチＳＷ２は、生体情報（脈拍等）を測定する場合や、表示装置ＬＭｏｎ１からの問いかけなどに対して装着者が応答する際などに操作されるものである。これらのスイッチとしては、典型的には押しボタンタイプのスイッチが使用可能であるが、その他のタイプのスイッチも使用可能である。
【００１８】
そして、ケースＣＡＳＥ１の上端のバンドＢＡＮＤ１と表示装置ＬＭｏｎ１の間には、ケースＣＡＳＥ１の内部の基板ＢＯ２上にアンテナＡＮＴ１が配置される。このアンテナＡＮＴ１は、例えば、いわゆる高誘電体を使用したチップ型誘電体アンテナである。
【００１９】
センサノードＳＮ１は、脈拍を測定する脈拍センサ、体温または周囲温度を測定する温度センサ、装着者（生体）の動きを検出するセンサ、典型的には加速度センサで構成することができる。なお、加速度センサに限らずに、動きを検出可能なセンサならば他のタイプのセンサも使用可能である。
【００２０】
図２は、ケースＣＡＳＥ１の底面に配置した脈拍センサの配置を示す説明図である。本発明の腕輪型センサノードＳＮ１で使用する脈拍センサは赤外線発光ダイオードと受光素子としてのフォトトランジスタで構成される。なお、受光素子としては、フォトトランジスタ以外にもフォトダイオードも使用可能である。ケースＣＡＳＥ１の底面に設けた３つの開口部Ｈ１〜Ｈ３に、一対の赤外線発光ダイオード（発光素子）ＬＥＤ１、ＬＥＤ２とフォトトランジスタ（受光素子）ＰＴ１を設け、各素子が皮膚と対向するように配置され、脈拍センサを構成する。
【００２１】
この脈拍センサは、赤外線発光ダイオードＬＥＤ１、２で発生させた赤外光を皮下の血管に照射し、血流変動による血管からの散乱光の強度変化をフォトトランジスタＰＴ１にて検知し、その強度変化の周期から脈拍を推定する。
【００２２】
ここで、ケースＣＡＳＥ１の底面の、ケースＣＡＳＥ１の上下方向（腕時計における１２時と６時）を結ぶ線の中央部で直交する軸線ａｘに沿って赤外線発光ダイオードＬＥＤ１、２とフォトトランジスタＰＴ１が並ぶよう赤外線発光ダイオードＬＥＤ１、２とフォトトランジスタＰＴ１とを後述する基板ＢＯ３上に配置し、さらに、フォトトランジスタＰＴ１を挟むように赤外線発光ダイオードＬＥＤ１とＬＥＤ２の間にフォトトランジスタＰＴ１を配置する。
【００２３】
つまり、安定して脈拍を取得するためには、効率良く血流変動を捉えることが重要となる。図２に示す本発明に特有な配置、すなわち、赤外線発光ダイオードＬＥＤ１とＬＥＤ２及びフォトトランジスタＰＴ１を一直線に配置する事により、本腕輪型センサノードＳＮ１を腕に装着した際に、腕を流れる血管に、つまり、血管内の血流に沿った形で、ＬＥＤ１、２とフォトトランジスタ列を配置する事が可能となる。さらに、図２に示すように、腕輪型センサノードＳＮの中心に、これらの赤外ＬＥＤ１、２およびフォトトランジスタＰＴ１を配置することにより、ユーザ（装着者）が動いた場合にも、赤外線発光ダイオードＬＥＤ１、２およびフォトトランジスタＰＴ１を、腕、つまり、センシング対象の血管に密着させる事が可能となる。その結果、安定して、血流変動による赤外散乱光の強度変動を効率よくフォトトランジスタＰＴ１によって捉える事が可能となる。
【００２４】
＜センサノードの構成＞
図３は、センサノードＳＮ１の内部とセンサネットの全体の構成を示すブロック図である。
【００２５】
図３において、センサノードＳＮ１は、演算処理を行うプロセッサＣＰＵ１と、基地局ＢＳ１０との間でアンテナＡＮＴ１を介して無線通信を行う無線通信部ＲＦと、電源遮断後の記憶保持動作を行わずに書き換え可能なメインメモリＲＡＭ（揮発性メモリ＝ＤＲＡＭまたはＳＲＡＭ）と、記憶保持動作が可能でセンサノードＳＮ１を制御するプログラムを格納する書き換え可能なフラッシュメモリＦＲＯＭと、記憶保持動作が可能で書き換え可能な不揮発性メモリＥＥＰＲＯＭと、時刻をカウントするリアルタイムクロックＲＴＣと、生体情報を測定するセンサＳＮＳと、情報を表示する表示装置ＬＭｏｎ１と、センサノードＳＮ１を駆動するための電池ＢＡＴを備える。また、電池ＢＡＴ１は、例えば、充電可能な二次電池（リチウムイオン２次電池）などで構成することができる。
【００２６】
センサＳＮＳは、上述の脈拍センサ、温度センサ、加速度センサの複数のセンサで構成されるが、以下の説明では、これら複数のセンサを総称してセンサＳＮＳとする。
【００２７】
プロセッサＣＰＵ１は常時動作しているのではなく、リアルタイムクロックＲＴＣの割り込みにより所定周期（例えば、５分など）毎に起動し、センサＳＮＳから生体情報を測定し、測定した生体情報と測定時刻をセンシングデータとして基地局ＢＳ１０に送信した後、スタンバイモード（ソフトウェアスタンバイ）に移行して次の割り込みを待つ。スタンバイモード（ソフトウェアスタンバイ）では、生体情報を測定するセンサＳＮＳへの電源供給は遮断し、プロセッサＣＰＵ１は、リアルタイムクロックＲＴＣの割込みのみが受け付けられる状態で待機するため、消費電力（例えば、１μＡ以下）を抑えることが可能となる。つまり、センサノードＳＮ１の構成要素は、間欠的に動作することで電池ＢＡＴの消費を抑制する。なお、センサノードＳＮ１で行われる処理については、後述する。また、センサノードＳＮ２、ＳＮ３もセンサノードＳＮ１と同様に構成される。
【００２８】
＜センサネットの概要＞
図３のセンサネットは、本発明の腕輪型センサノードＳＮ１を使用して、健康管理センサネットシステムを構築した例を示すシステム構成図である。
【００２９】
図３において、ＳＮ１〜ＳＮ３が本発明の腕輪型センサノードである。例えば、ユーザＵＳ１の健康状態をモニタする目的で、ユーザの腕に装着される。これら腕輪型センサノードＳＮ１〜ＳＮ３は、無線ＷＬ１〜ＷＬ３により、基地局ＢＳ１０と無線通信を行う。各センサノードＳＮ１〜３は、センシングした温度や脈拍等のデータを基地局ＢＳ１０に送信する。
【００３０】
基地局ＢＳ１０は、アンテナＡＮＴ１０、無線通信インタフェースＲＦ１０、プロセッサＣＰＵ１０、メモリＭＥＭ１０、二次記憶装置ＳＴＲ１０、表示装置ＤＩＳＰ１０、ユーザインタフェース装置ＵＩ１０、および、ネットワークインタフェースＮＩ１０から構成される。このうち、二次記憶装置ＳＴＲ１０は、典型的には、ハードディスク等で構成される。そして二次記憶装置ＳＴＲ１０には、基地局ＢＳ１０は配下のセンサノードＳＮ１〜ＳＮ３から収集したデータを蓄積するデータベースＳＤＢ１が格納される。また、表示装置ＤＩＳＰ１０はＣＲＴ等で構成される。ユーザインタフェース装置ＵＩ１０は、典型的には、キーボード／マウス等である。
【００３１】
なお、基地局ＢＳ１０は、センサノードＳＮ１〜３との無線通信以外にも、例えば、ネットワークインタフェースＮＩ１０経由で、広域ネットワーク網ＷＡＮ１０を介して、遠隔地にある管理サーバＳＶ１０、モニタ端末ＭＴ１０、時刻サーバＴＳＶ１０とも通信可能である。管理サーバＳＶ１０は、図示しないＣＰＵ、メモリ、二次記憶装置及びネットワークインタフェースを備え、基地局ＢＳ１０から収集したセンシングデータをデータベースなどを用いて管理する。時刻サーバＴＳＶ１０、モニタ端末ＭＴ１０も、同様にＣＰＵ、メモリ、二次記憶装置及びネットワークインタフェースを備える。そしてタイムサーバＴＳＶ１０は、広域ネットワーク網ＷＡＮ１０に接続された計算機に対して標準時刻の提供を行う。なお、広域ネットワーク網ＷＡＮ１０には、典型的には、インターネット等が使用可能である。
【００３２】
ここで、基地局ＢＳ１０は二次記憶装置ＳＴＲ１０に格納されるデータベースＳＤＢ１を管理し、蓄積したセンサノードＳＮ１〜ＳＮ３のセンシングデータを管理サーバＳＶ１０等に提供する。また、基地局ＢＳ１０は時刻サーバＴＳＶ１０から標準時刻を取得して、配下のセンサノードＳＮ１〜ＳＮ３に標準時刻を提供して、時刻を同期させる。基地局ＢＳ１０のデータベースＳＤＢ１には、センサノードＳＮ１〜ＳＮ３から受信したセンシングデータが格納され、例えば、一つのセンシングデータは、受信時刻、センシングデータの取得時刻、センサの状態（生体情報の測定に関する状態）、取得した温度、加速度、脈拍などから構成される。
【００３３】
以上のような構成により、センサノードＳＮ１〜ＳＮ３は、所定の時間周期でプロセッサＣＰＵ１を起動し、生体情報を測定する。センサノードＳＮ１〜３の処理の概要について説明する。センサノードＳＮ１〜ＳＮ３は測定した生体情報と、測定時刻（取得時刻）をセンシングデータとしてメインメモリＲＡＭに書き込む。そして、基地局ＢＳ１０と通信を行って、メインメモリＲＡＭ上の最新のセンシングデータを送信する。
【００３４】
基地局ＢＳ１０はセンサノードＳＮ１〜ＳＮ３が送信したセンシングデータを正常に受信すると、センサノードＳＮ１〜ＳＮ３に対して応答信号ＡＣＫを送信する。センサノードＳＮ１〜ＳＮ３は送信したセンシングデータに対する応答信号ＡＣＫを受信すると、通信を終了して再びソフトウェアスタンバイの状態に移行し、次の時間周期まで待機状態となる。
【００３５】
一方、センサノードＳＮ１〜ＳＮ３が基地局ＢＳ１０から遠く無線通信の状態が悪い場合や、電波障害などでセンサノードＳＮ１〜ＳＮ３が基地局ＢＳ１０に接続できない場合は、センシングデータの送信をさらに所定回数まで行う。この所定回数は自由に設定可能である。その後、基地局ＢＳ１０からの応答信号ＡＣＫを受信できなければ、センサノードＳＮ１〜ＳＮ３は、メインメモリＲＡＭ上の最新のセンシングデータを保持し、今回のデータ送信をあきらめて次回の起動時まで待機する。プロセッサＣＰＵ１は待機状態に移行する前に、メインメモリＲＡＭ上の最新のセンシングデータをメインメモリＲＡＭに設定したリングバッファまたは不揮発性メモリＥＥＰＲＯＭに設定したリングバッファに最新のセンシングデータを書き込んで蓄積しておく。
【００３６】
所定の時間周期が経過してリアルタイムクロックＲＴＣの割り込みによりプロセッサＣＰＵ１が起動すると、生体情報を測定して測定時刻を加えたセンシングデータとして基地局ＢＳ１０に送信する。このとき、基地局ＢＳ１０から応答信号ＡＣＫを受信できれば、上記メインメモリＲＡＭまたは不揮発性メモリＥＥＰＲＯＭのリングバッファに保持していた過去の未送信のセンシングデータをまとめて（連続的に）送信する。
【００３７】
以上のような処理により、センサノードＳＮ１〜ＳＮ３と基地局ＢＳ１０の間で接続が成立しない場合には、センサノードＳＮ１〜ＳＮ３の記憶部に保持しておくことで、無線通信状態が悪いときにデータの送信を繰り返して無駄に電池ＢＡＴの電力を消費するのを抑制する。そして、次回以降の通信時に、基地局ＢＳ１０へのデータ送信が成功したときには、センサノードＳＮ１〜ＳＮ３の記憶部に保持しておいた過去のセンシングデータをまとめて送信することで、基地局ＢＳ１０のデータベースＳＤＢ１に蓄積するセンシングデータの欠落を防ぐのである。
【００３８】
図４は、図３の健康管理センサネットシステムにて各センサノードＳＮ１〜３と基地局ＢＳ１０との間で送受信されるパケットの一例を示す。なお、以下ではセンサノードＳＮ１〜ＳＮ３は同様であるのでセンサノードＳＮ１についてのみ説明を行う。
【００３９】
図４（ａ）は、時刻サーバＴＳＶ１０の標準時刻にセンサノードＳＮ１〜ＳＮ３のリアルタイムクロックＲＴＣを同期させるため、基地局ＢＳ１０からセンサノードＳＮ１〜ＳＮ３へ送信する時刻設定コマンドデータのパケットである。
【００４０】
センサノードＳＮ１〜ＳＮ３と基地局ＢＳ１０の間で送受信を行うパケットは、宛先のノードＩＤを格納するヘッダー部ＰＨＤと、送信するデータの種別を格納するデータタイプＰＤＴと、データを格納するペイロード部ＰＬＤとから構成される。
【００４１】
この時刻設定コマンドデータの場合、ヘッダー部ＰＨＤにはセンサノードＳＮ１〜ＳＮ３のノードＩＤが格納され、データタイプＰＤＴには時刻設定を示す値が格納され、ペイロード部ＰＬＤには時刻のデータが格納される。
【００４２】
図４（ｂ）は、センサノードＳＮ１〜ＳＮ３が時刻の設定を完了したときに基地局ＢＳ１０に送信する時刻設定完了データのパケットである。この時刻設定完了データの場合、ヘッダー部ＰＨＤには基地局ＢＳ１０のノードＩＤが格納され、データタイプＰＤＴには時刻設定完了を示す値が格納され、ペイロード部ＰＬＤには時刻のデータが格納される。
【００４３】
図４（ｃ）は、センサノードＳＮ１〜ＳＮ３が測定したセンシングデータを基地局ＢＳ１０に送信する送信データのパケットである。このセンシングデータの場合、ヘッダー部ＰＨＤには基地局ＢＳ１０のノードＩＤが格納され、データタイプＰＤＴにはセンシングデータを示す値が格納され、ペイロード部ＰＬＤにはセンシングデータを取得した時刻（取得時刻）、測定した温度、加速度、脈拍のデータが格納される。
【００４４】
なお、上述したように、センサノードＳＮ１〜ＳＮ３は、データ送信が正常に完了しなかった場合には、図４（ｃ）の送信データパケットのうち、取得時刻、温度、加速度及び脈拍を一群のセンシングデータとしてメインメモリＲＡＭまたは不揮発性メモリＥＥＰＲＯＭのリングバッファに格納し、次回の送信が成功するまで保持する。
【００４５】
図4（ｄ）は、センサノードＳＮ１〜ＳＮ３が基地局ＢＳ１０へ送信するアソシエーションリクエストのパケットである。このアソシエーションリクエストの場合、ヘッダー部ＰＨＤには基地局ＢＳ１０のノードＩＤが格納され、データタイプＰＤＴにはアソシエーションリクエストを示す値が格納され、ペイロード部ＰＬＤにはセンサノードＳＮ１の無線通信部ＲＦに設定されたＭＡＣアドレスなどの固有の識別子が格納される。
【００４６】
＜センサノードの制御＞
図５は、センサノードＳＮ１と基地局ＢＳ１０で行われる通信制御の一例を示すフローチャートある。図中制御プロフラムＰ１００は、センサノードＳＮ１で実行する処理を示し、制御プロフラムＰ２００は基地局ＢＳ１０で実行する処理を示す。これらの２つのルーチンＰ１００、Ｐ２００は、図中破線で示すような通信が行われる。
【００４７】
まず、センサノードＳＮ１で実行される制御ルーチンＰ１００について以下に説明する。
【００４８】
センサノードＳＮ１の電源を投入すると（Ｐ１０１）、接続可能な基地局ＢＳ１０の配下に加入する基地局加入手続Ｐ１１０が実行される。
【００４９】
基地局加入手続Ｐ１１０では、まず、基地局ＢＳ１０へアソシエーションリクエスト（加入要求）を送信する（Ｐ１１１）。このとき、センサノードＳＮ１は無線通信部ＲＦに設定されたＭＡＣアドレスなどの固有の識別子を基地局ＢＳ１０に送る。
【００５０】
次に、アソシエーションリクエストに対する応答信号ＡＣＫの受信を待つ（Ｐ１１２）。応答信号ＡＣＫを受信するとアソシエーションリクエストが正常に基地局ＢＳ１０で受理されたと判定してアソシエーション結果の受信を待つ（Ｐ１１３）。
【００５１】
一方、所定期間（数msec）を経過しても応答信号ＡＣＫが受信できない場合には、Ｐ１１１の処理に戻ってアソシエーションリクエストを送信する。ただし、所定の回数（例えば、３回）を上限としてＰ１１１、Ｐ１１２の処理を繰り返し、所定の回数を超えて応答信号ＡＣＫを受信できなければ、無線通信状態が悪いと判定し、Ｐ１１５へ進む。所定回数は自由に設定可能である。Ｐ１１５では、表示装置ＬＭｏｎ１に基地局ＢＳ１０への加入が失敗したことを表示して処理を終了する。これにより、無線通信状態が悪い場合や、基地局ＢＳ１０に障害が発生しているときには、センサノードＳＮ１がアソシエーションリクエストを際限なく行い電池ＢＡＴを無駄に消費するのを防止する。
【００５２】
Ｐ１１３では、センサノードＳＮ１がアソシエーション結果を受信すると、基地局ＢＳ１０へ応答信号ＡＣＫを送信する（Ｐ１１４）。そして、基地局ＢＳ１０とセンサノードＳＮ１の時刻を同期させる時刻同期処理Ｐ１２０に進む。なお、アソシエーション結果としては、例えば、基地局ＢＳ１０がセンサノードＳＮ１に付与したノードＩＤを通知する。以降、センサノードＳＮ１は基地局ＢＳ１０が付与したノードＩＤで管理される。なお、センサノードＳＮ１と基地局ＢＳ１０との無線通信の伝送レートと無線チャネルは予め設定した値とする。伝送レートと無線チャネルを固定とすることで、センサノードＳＮ１の制御プログラムを簡易にして、プロセッサＣＰＵ１の負荷を減らすことができ、消費電力を抑制することができる。
【００５３】
一方、Ｐ１１３で所定時間（数百ｍｓｅｃ）を経過してもアソシエーション結果を受信することができない場合には、上記Ｐ１１５に進んで基地局ＢＳ１０への加入が失敗したことを表示装置ＬＭｏｎ１に表示する。これにより、無線通信状態が悪化したり基地局ＢＳ１０に障害が発生した場合に、アソシエーション結果を無制限に待って、無駄に電池ＢＡＴを消費するのを防止する。なお、Ｐ１１５に進んだ場合には、所定時間（例えば、１０分）を経過した後、Ｐ１１１に戻って基地局加入手続Ｐ１１０を再度実行する。
【００５４】
上記基地局加入手続Ｐ１１０が完了すると、センサノードＳＮ１は基地局ＢＳ１０と時刻を同期する時刻同期処理Ｐ１２０を実行する。
【００５５】
センサノードＳＮ１は、時刻設定要求コマンドを基地局ＢＳ１０に送信する（Ｐ１２１）。Ｐ１２２ではこの時刻設定要求コマンドに対する応答信号ＡＣＫを待ち、応答信号ＡＣＫを受信した場合には正常に時刻設定要求コマンドが受け付けられたと判定してＰ１２３に進む。一方、所定期間（数msec）を経過しても応答信号ＡＣＫが受信できない場合には、Ｐ１２１の処理に戻って時刻設定要求コマンドを再度送信する。ただし、Ｐ１２１の処理の繰り返しは所定の回数（例えば、３回）を上限として、所定の回数を超えて応答信号ＡＣＫを受信できなければ、無線通信状態が悪いと判定し、Ｐ１２８へ進む。この所定回数は自由に設定可能である。  Ｐ１２３では、基地局ＢＳ１０から時刻設定コマンドデータ（図４（ａ）参照）の受信を待つ。基地局ＢＳ１０から時刻設定コマンドデータを受信した場合にはＰ１２４へ進んで、基地局ＢＳ１０へ応答信号ＡＣＫを返信する。一方、所定時間内に時刻設定コマンドデータを受信できない場合にはＰ１２８に進む。
【００５６】
Ｐ１２４で応答信号ＡＣＫを返信した後、センサノードＳＮ１のリアルタイムクロックＲＴＣの値を、受信した時刻に設定する（Ｐ１２５）。そして、センサノードＳＮ１は図４（ｂ）に示した時刻設定完了データを基地局ＢＳ１０に送信する（Ｐ１２６）。Ｐ１２７では、時刻設定完了データに対する基地局ＢＳ１０からの応答信号ＡＣＫを待つ。基地局ＢＳ１０から応答信号ＡＣＫを受信した場合には、時刻同期処理Ｐ１２０を完了して次のセンシング初期値設定処理Ｐ１３０に進む。一方、所定時間（例えば、数msec）を経過しても応答信号ＡＣＫを受信できない場合にはＰ１２８へ進む。
【００５７】
上記Ｐ１２２、Ｐ１２３、Ｐ１２７で基地局ＢＳ１０から応答信号ＡＣＫを受信できなかった場合には、基地局ＢＳ１０との時刻同期が失敗したことを表示装置ＬＭｏｎ１に表示する。これにより、無線通信状態が悪化したり基地局ＢＳ１０に障害が発生した場合に、時刻設定コマンドの送信を無制限に繰り返したり、応答信号ＡＣＫを無制限に待って、無駄に電池ＢＡＴを消費するのを防止する。なお、Ｐ１２８に進んだ場合には、所定時間（例えば、１０分）を経過した後、Ｐ１２１に戻って時刻同期処理Ｐ１２０を再度実行する。
【００５８】
なお、基地局ＢＳ１０は、所定の周期で時刻サーバＴＳＶ１０に標準時刻を問い合わせて、基地局ＢＳ１０のリアルタイムクロックＲＴＣを標準時刻に同意させておく。
【００５９】
ここで、センサノードＳＮ１のリアルタイムクロックＲＴＣで使用する時刻のデータフォーマットを図１７に示す。一般にＵＮＩＸ（登録商標）などの汎用ＯＳでは、基準の日時からのシリアル値で日時を表現しており、日時の表示を行う際には、シリアル値を人間が理解可能な「年月日、時分秒」に換算している。
【００６０】
一方、センサノードＳＮ１では、できるだけプロセッサＣＰＵ１の演算量を減らすことで、電池ＢＡＴの消費をできるだけ減らす必要がある。このため、センサノードＳＮ１のリアルタイムクロックＲＴＣの時刻データは、図１７で示すように、上位ビットから「年月日時分秒曜日」を３２ビットで表すデータフォーマットを用いる。基地局ＢＳ１０との時刻同期処理Ｐ１２０の際には、基地局ＢＳ１０は自己の時刻データをセンサノードＳＮ１で使用する３２ビットの時刻データフォーマットに変換し、図４（ａ）に示したペイロード部ＰＬＤの時刻データに格納し、センサノードＳＮ１へ送信する。
【００６１】
センサノードＳＮ１では、時刻を表示する際にリアルタイムクロックＲＴＣの値をそのまま表示すればよいので、上述のような時刻データの変換処理が発生せず、演算処理の量を削減して電池ＢＡＴの消費を抑制できる。
【００６２】
次に、センシング初期値設定処理Ｐ１３０について説明する。本発明のセンサネットシステムでは、センサノードＳＮ１が自発的に所定の周期でセンシングデータを基地局ＢＳ１０に送信している。このためセンサノードＳＮ１は、センシングデータを基地局ＢＳ１０に送信する所定の周期をセンシング初期値設定処理Ｐ１３０で初期化して、測定を実行する稼働状態へ移行する。
【００６３】
センシング初期値設定処理Ｐ１３０の処理では、不揮発性メモリＥＥＰＲＯＭに予め格納された制御パラメータ（初期値）を読み込んで、リアルタイムクロックＲＴＣの割り込み周期（例えば、５分）を設定する（Ｐ１３１）。この処理により、プロセッサＣＰＵ１は所定の周期で起動して生体情報の測定と、生体情報と測定時刻の送信を間欠的に繰り返す。
【００６４】
センシング初期値設定処理Ｐ１３０が終了すると、メモリ領域の初期化処理Ｐ１３５へ進む。メモリ領域の初期化処理について図１６のフローチャートを参照しながら以下に説明する。
【００６５】
メインメモリＲＡＭの変数領域ＶＡＬから遅延送信データ保存場所に格納されたモードを読み出す（Ｐ１７３０）。次に、Ｐ１７３１〜Ｐ１７３４はＲＡＭモードの処理を示す。まず、Ｐ１７３１では、不揮発性メモリＥＥＰＲＯＭのパラメータ領域ＰＲＭからＲＡＭリングバッファサイズを読み込んで、メインメモリＲＡＭに読み込んだサイズに応じた領域を設定する。Ｐ１７３２〜Ｐ１７３４では、ＲＡＭ未送信データ数、ＲＡＭ書き込みアドレス、ＲＡＭ読み出しアドレスをそれぞれ初期設定する。
【００６６】
次に、Ｐ１７３５では、現在の送信未了データの保存モードが混在モードであるかを判定する。混在モードの場合にはＰ１７３６へ進み、そうでない場合にはＰ１７４０へ進む。
【００６７】
混在モードの場合は、まず、Ｐ１７３６で不揮発性メモリＥＥＰＲＯＭのパラメータ領域ＰＲＭからＥＥＰＲＯＭリングバッファサイズを読み込んで、不揮発性メモリＥＥＰＲＯＭに読み込んだサイズに応じた領域を設定する。Ｐ１７３７〜Ｐ１７３９では、ＥＥＰＲＯＭ未送信データ数、ＥＥＰＲＯＭ書き込みアドレス、ＥＥＰＲＯＭ読み出しアドレスをそれぞれ初期設定する。
【００６８】
次に、Ｐ１７４０で不揮発性メモリＥＥＰＲＯＭのパラメータ領域ＰＲＭからＥＥＰＲＯＭ退避データ有フラグを読み込んで、当該フラグがセットされているか否かを判定する。このフラグがセットされていればＰ１７４１〜Ｐ１７４３の退避パラメータ復帰処理を行う。まず、Ｐ１７４１では、メインメモリＲＡＭから退避したデータからＥＥＰＲＯＭ未送信データ数を読み込んで、パラメータ領域ＰＲＭのＥＥＰＲＯＭ未送信データ数に設定する。同様に、Ｐ１７４２、Ｐ１７４３では、メインメモリＲＡＭから退避したデータからＥＥＰＲＯＭ書き込みアドレスとＥＥＰＲＯＭ読み出しアドレスを読み込んで、パラメータ領域ＰＲＭのＥＥＰＲＯＭ書き込みアドレスとＥＥＰＲＯＭ読み出しアドレスに設定する。この処理により、メインメモリＲＡＭから退避したデータを、ＥＥＰＲＯＭモードで利用することができる。
【００６９】
次に、センシングデータ送信処理Ｐ１４０に移行する。センシングデータ送信処理Ｐ１４０では、まず、プロセッサＣＰＵ１はスタンバイ状態で待機しており、リアルタイムクロックＲＴＣからの割り込みを待つ（Ｐ１４１）。リアルタイムクロックＲＴＣは上記Ｐ１３１で設定された所定の周期でプロセッサＣＰＵ１に割り込みをかける（Ｐ１４２）。プロセッサＣＰＵ１はリアルタイムクロックＲＴＣにより起動（起動状態）して以下のＰ１４３〜Ｐ１４８の処理を実行した後、再びＰ１４１に戻りスタンバイ状態へ戻る。
【００７０】
プロセッサＣＰＵ１が起動状態になると、センサＳＮＳを起動して加速度センサ、脈拍センサ、温度センサの順で生体情報を取得する（Ｐ１４３）。より具体的には、加速度センサの測定値に基づいて、センサノードＳＮ１の装着者が脈拍の測定に適した安静状態であるか否かを判定し、安静状態であれば脈拍センサを駆動して脈拍の測定を行う。安静状態でなければ、加速度センサと温度センサが測定した生体情報を測定する。
【００７１】
センサＳＮＳの生体情報の測定が完了すると、測定した生体情報と測定時刻はメインメモリＲＡＭ上の最新データ格納領域（後述）へ一時的に格納される。そして、図４（ｃ）に示すように、生体情報の取得時刻と、温度、加速度、脈拍を対にしたセンシングデータから送信データパケットを生成してセンシングデータを基地局ＢＳ１０に送信する（Ｐ１４４）。
【００７２】
次に、Ｐ１４５ではこの送信データに対する基地局ＢＳ１０からの応答信号ＡＣＫを待ち、応答信号ＡＣＫを受信した場合には正常に送信データが受け付けられたと判定してＰ１４６に進む。一方、所定期間（数msec）を経過しても基地局ＢＳ１０から応答信号ＡＣＫが受信できない場合には、Ｐ１４４の処理に戻って送信データパケットを再度送信する。ただし、Ｐ１４４の処理の繰り返しは所定の回数（例えば、３回）を上限として、所定の回数を超えて応答信号ＡＣＫを受信できなければ、無線通信状態が悪い（無線通信状態がセンシングデータの送信に適さない状態）と判定し、Ｐ１４７へ進む。
【００７３】
センシングデータの送信が正常に完了した場合には、Ｐ１４６に進んで後述するメインメモリＲＡＭに設定されたリングバッファＲＮＧ１または不揮発性メモリＥＥＰＲＯＭに設定されたリングバッファＲＮＧ２に、送信が完了していないセンシングデータが残っているかを判定する。つまり、この場合は、無線通信状態がセンシングデータの送信に適した状態であると判定できる。リングバッファＲＮＧ１またはＲＮＧ２に送信未了のセンシングデータ（遅延送信データ）が残っている場合には、Ｐ１４８へ進んで該当するリングバッファから送信未了のセンシングデータを読み出し、Ｐ１４４に戻って送信データパケットを生成して基地局ＢＳ１０に送信する。そして、Ｐ１４６の判定で送信未了のセンシングデータがなくなるまでＰ１４８、Ｐ１４４、Ｐ１４５の処理を繰り返す。Ｐ１４６の判定で送信未了のセンシングデータについて全て送信が完了すると、Ｐ１４１に戻ってプロセッサＣＰＵ１をスタンバイ状態に移行させ、次の周期まで待機する。
【００７４】
上記Ｐ１４５の処理で、送信データに対する応答信号ＡＣＫが基地局ＢＳ１０から受信できなかった場合のＰ１４７では、初回の送信データの送信が失敗したときには、メインメモリＲＡＭ上の最新データ格納位置に格納されているセンシングデータを、現在の書き込み対象となっているリングバッファに格納し、次回のプロセッサＣＰＵ１の起動時まで待機する。また、送信未了のセンシングデータを送信している際にデータ送信が失敗した場合には、現在読み出し対象となっているリングバッファのポインタ（読み出しアドレス）を一つ戻す。
【００７５】
こうして、センシングデータの送信時には送信に失敗すると、所定の回数までデータ送信をリトライするが、所定の回数を超えた場合には、最新のセンシングデータをリングバッファに格納し、次回のデータ送信まで待機する。つまり、センサノードＳＮ１は所定の周期で起動してセンシングデータを基地局ＢＳ１０に送るが、基地局ＢＳ１０から応答信号ＡＣＫがない場合には無線通信状態が悪い場合や基地局ＢＳ１０に障害があると推測できる。このため、データ送信のリトライを際限なく繰り返した場合には、容量に限りのある電池ＢＡＴの残量を使い果たす恐れがある。
【００７６】
そこで、本発明は、データ送信に失敗したときのリトライは数回程度に留めておき、無駄な電池ＢＡＴの消費を抑制する。同時に、測定した生体情報は測定時刻からなるセンシングデータは対にしてリングバッファに格納しておく。そして、無線通信状態の良くなったときには、最新のセンシングデータに続いて過去の送信未了のセンシングデータをまとめて送ることで、電池ＢＡＴの消耗を抑制しながらも基地局ＢＳ１０に蓄積するセンシングデータの欠落を抑制するのである。
【００７７】
＜センサノードのメモリ構成＞
次に、センサノードＳＮ１で使用されるメモリの構成について説明する。図３で示したように、センサノードＳＮ１にはフラッシュメモリＦＲＯＭ、不揮発性メモリＥＥＰＲＯＭ及びメインメモリＲＡＭの３種のメモリが搭載されている。フラッシュメモリＦＲＯＭには制御ルーチンＰ１００等のプログラムが格納される。メインメモリＲＡＭには図７で示すように、最新のセンシングデータを格納する最新データ格納領域ＬＤＡ、送信未了データの格納先に関する情報（アドレス等）と、第１のリングバッファＲＮＧ１が設定される。不揮発性メモリＥＥＰＲＯＭにはセンサノードＳＮ１の制御パラメータＰＲＭと第２のリングバッファＲＮＧ２が設定される。
【００７８】
本発明では、データ送信に失敗したときに最新のセンシングデータをリングバッファに順次蓄積し、基地局ＢＳ１０との送信が成功したときに、最新のセンシングデータに続いて送信未了となっていた過去のセンシングデータをまとめて送信する。
【００７９】
さらに、メモリへの書き込み動作中の消費電力を低減するため、電池ＢＡＴの容量（残量）が十分な場合には、書き込み時の電圧が低いメインメモリＲＡＭのリングバッファＲＮＧ１に送信未了のセンシングデータを書き込む。一方、電池ＢＡＴの容量が所定値以下となる低容量時には、メインメモリＲＡＭの記憶保持動作が停止しても送信未了のセンシングデータが消去されないように不揮発性メモリＥＥＰＲＯＭのリングバッファＲＮＧ２に格納先を切り替える。
【００８０】
これにより、電池ＢＡＴの容量が十分高い場合には、書き込み時の消費電力が少なく書き込み回数の制限もないメインメモリＲＡＭにセンシングデータを格納することで、センサノードＳＮ１の低消費電力化を図ることができる。さらに、書き込み回数に制限のある不揮発性メモリＥＥＰＲＯＭの使用を抑制することで、センサノードＳＮ１の耐久性を向上させるのである。また、不揮発性メモリＥＥＰＲＯＭにセンシングデータを書き込む領域をリングバッファＲＮＧ２とすることで、同一のアドレスが頻繁に更新されるのを防ぎ、センシングデータの書き込む領域の書き込み回数をほぼ均等にすることができ、不揮発性メモリＥＥＰＲＯＭの使用期間を延長することができるのである。
【００８１】
また、電池ＢＡＴの容量が十分あるときに、無線通信状態が悪くメインメモリＲＡＭのリングバッファＲＮＧ１に空きがなくなった場合には、不揮発性メモリＥＥＰＲＯＭのリングバッファＲＮＧ２に引き続いて送信未了のセンシングデータを格納するようにしても良い。この場合、メインメモリＲＡＭのリングバッファＲＮＧ１と不揮発性メモリＥＥＰＲＯＭのリングバッファＲＮＧ２を連結して、ひとつのリングバッファとして機能させる。これにより、送信未了のセンシングデータを保存するメモリ領域を拡大することができる。
【００８２】
＜不揮発性メモリＥＥＰＲＯＭ＞
まず、制御パラメータと送信未了のセンシングデータ（未送信データ）を格納する不揮発性メモリＥＥＰＲＯＭの内容について図６を参照しながら説明する。
【００８３】
不揮発性メモリＥＥＰＲＯＭには、センサノードＳＮ１の制御データを保持するパラメータ格納部ＰＲＭと、メインメモリＲＡＭのリングバッファＲＮＧ１から退避した送信未了のセンシングデータを格納するリングバッファＲＮＧ２が設定される。
【００８４】
パラメータ格納部ＰＲＭには、基地局ＢＳ１０から割り当てられたノードＩＤと、基地局ＢＳ１０と通信を行う周波数を格納する無線チャネルと、基地局ＢＳ１０と通信を行う速度を格納する伝送レートと、リアルタイムクロックＲＴＣの割り込み発生周期（プロセッサＣＰＵ１の起動間隔）を格納する起動間隔と、赤外線発光ダイオードの光量を格納するＬＥＤ強度と、メインメモリＲＡＭに設定されたリングバッファＲＮＧ１の容量を格納するＲＡＭのリングバッファサイズと、不揮発性メモリＥＥＰＲＯＭに設定されたリングバッファＲＮＧ２の容量を格納するＥＥＰＲＯＭリングバッファサイズの領域を含む。さらに、不揮発性メモリＥＥＰＲＯＭには、メインメモリＲＡＭから不揮発性メモリＥＥＰＲＯＭへデータを退避するか否かを判定するためのしきい値を格納する退避電圧設定値と、不揮発性メモリＥＥＰＲＯＭのリングバッファＲＮＧ２にメインメモリＲＡＭから退避したデータがあるか否かを示す退避データ有フラグと、リングバッファＲＮＧ２に格納されている送信未了のセンシングデータの数を示す未送信データ数と、リングバッファＲＮＧ２に新たなセンシングデータを書き込む位置を示す書き込みアドレスと、リングバッファＲＮＧ２から送信未了のセンシングデータを読み出す位置を示す読み出しアドレスと、を含んでいる。
【００８５】
後述するように、電池ＢＡＴの電圧が退避電圧設定値に格納されたしきい値を下回ると、プロセッサＣＰＵ１はメインメモリＲＡＭ上のリングバッファＲＮＧ１の送信未了のセンシングデータを、ＥＥＰＲＯＭのリングバッファＲＮＧ２に転送する。このとき、プロセッサＣＰＵ１は、書き込みアドレスに設定された不揮発性メモリＥＥＰＲＯＭのアドレスからセンシングデータを書き込み、退避データ有フラグをセットし、リングバッファＲＮＧ２に書き込んだ送信未了のセンシングデータの数を未送信データ数に書き込み、書き込みが終了した次のアドレスを次回の書き込みアドレスとして書き込みアドレスに設定する。なお、読み出しアドレスは、送信未了のセンシングデータの送信が完了する度にリングバッファＲＮＧ２のアドレスをインクリメントして後進する。
【００８６】
リングバッファＲＮＧ２には、送信未了のセンシングデータを格納するｎ個のアドレス＃１〜＃ｎが設定され、各アドレス＃１〜＃ｎには、センシングデータを取得した時刻と、センシングデータとして温度センサが測定した温度、加速度センサが測定した加速度、脈拍センサが測定した脈拍数が格納される。リングバッファＲＮＧ２は、アドレス＃１から書き込みまたは読み出しを開始し、最終のアドレス＃ｎに達すると、次のアドレス＃１に戻し、所定のメモリ空間を循環して使用する。なお、センシングデータを格納する際にアドレスが一周した場合には、最も古いセンシングデータを格納した次のアドレスを上書きし、新しいセンシングデータを優先して格納する。
【００８７】
＜メインメモリＲＡＭ＞
次に、最新の生体情報と送信未了の生体情報（未送信データ）を格納するメインメモリＲＡＭの内容について図７を参照しながら説明する。
【００８８】
メインメモリＲＡＭには、センサノードＳＮ１の制御用変数などを格納する変数領域ＶＡＬと、送信未了のセンシングデータを格納するリングバッファＲＮＧ１が設定される。
【００８９】
変数領域ＶＡＬには、送信未了のセンシングデータ（遅延送信データ）がメインメモリＲＡＭと不揮発性メモリＥＥＰＲＯＭの何れ、または両方に記憶されているか保存場所を示す遅延送信データ保存場所が設定される。遅延送信データ保存場所には、例えば、「０」のときメインメモリＲＡＭのリングバッファＲＮＧ１のみに送信未了のセンシングデータを格納するＲＡＭモードを示し、「１」のとき不揮発性メモリＥＥＰＲＯＭのリングバッファＲＮＧ２のみに送信未了のセンシングデータを格納するＥＥＰＲＯＭモードを示し、「２」のときにはリングバッファＲＮＧ１とリングバッファＲＮＧ２を連結して両方のメモリに送信未了のセンシングデータを格納する混在モードを示す。
【００９０】
変数領域ＶＡＬには、不揮発性メモリＥＥＰＲＯＭのリングバッファＲＮＧ２に格納されている送信未了のセンシングデータの数を示すＥＥＰＲＯＭ未送信データ数と、リングバッファＲＮＧ２に新たなセンシングデータを書き込む位置を示すＥＥＰＲＯＭ書き込みアドレスと、リングバッファＲＮＧ２から送信未了のセンシングデータを読み出す位置を示すＥＥＰＲＯＭ読み出しアドレスと、メインメモリＲＡＭのリングバッファＲＮＧ１に格納されている送信未了のセンシングデータの数を示すＲＡＭ未送信データ数と、リングバッファＲＮＧ１に新たなセンシングデータを書き込む位置を示すＲＡＭ書き込みアドレスと、リングバッファＲＮＧ１から送信未了のセンシングデータを読み出す位置を示すＲＡＭ読み出しアドレスと、を含んでいる。
【００９１】
上記したように、電池ＢＡＴの電圧が退避電圧設定値に格納されたしきい値を超えていれば、プロセッサＣＰＵ１はメインメモリＲＡＭ上のリングバッファＲＮＧ１に送信未了のセンシングデータを書き込み、しきい値以下であれば、リングバッファＲＮＧ１の内容をＥＥＰＲＯＭのリングバッファＲＮＧ２に転送し、以降の送信未了のセンシングデータをリングバッファＲＮＧ２に書き込む。
【００９２】
メインメモリＲＡＭへの書き込みは、プロセッサＣＰＵ１が、ＲＡＭ書き込みアドレスに設定されたリングバッファＲＮＧ１のアドレスからセンシングデータを書き込み、ＲＡＭ未送信データ数をインクリメントし、書き込みが終了した次のアドレスを次回の書き込みアドレスとしてＲＡＭ書き込みアドレスに設定する。なお、ＲＡＭ読み出しアドレスは、送信未了のセンシングデータの送信が完了する度にリングバッファＲＮＧ１のアドレスをインクリメントして後進する。なお、リングバッファＲＮＧ２への書き込みは、上記図６と同様である。
【００９３】
リングバッファＲＮＧ１には、上記図６の送信未了のセンシングデータを格納するｎ個のアドレス＃Ａ１〜＃Ａｎが設定され、各アドレス＃Ａ１〜＃Ａｎには、生体情報を取得した時刻と、生体情報として温度センサが測定した温度、加速度センサが測定した加速度、脈拍センサが測定した脈拍数が格納される。
【００９４】
遅延送信データ保存場所が「０」の場合、リングバッファＲＮＧ１は、アドレス＃Ａ１から書き込みまたは読み出しを開始し、最終のアドレス＃Ａｎに達すると、次のアドレスを＃Ａ１に戻し、所定のメモリ空間を循環して使用する。なお、センシングデータを格納する際にアドレスが一周した場合には、最も古いセンシングデータを格納した次のアドレスを上書きし、新しいセンシングデータを優先して格納する。
【００９５】
また、遅延送信データ保存場所が「２」の場合、リングバッファＲＮＧ１は、アドレス＃Ａ１から書き込みまたは読み出しを開始し、最終のアドレス＃Ａｎに達すると、次のアドレスをリングバッファＲＮＧ２の＃１に設定し、２つのメモリ空間を循環して使用する。なお、センシングデータを格納する際にアドレスが一周した場合には、最も古いセンシングデータを格納した次のアドレスを上書きし、新しいセンシングデータを優先して格納する。
【００９６】
なお、フラッシュメモリＦＲＯＭについては、センサノードＳＮ１の制御プロフラムＰ１００を格納しているだけであるので、詳述はしない。
【００９７】
＜送信未了データ保存処理＞
次に、図５のＰ１４７で行われる送信未了のセンシングデータ（遅延送信データ）の書き込み処理の一例について、図８のフローチャートに基づいて説明する。
【００９８】
送信未了のセンシングデータを保存する際には、まず、電池ＢＡＴの残量（容量）が十分であるか否かを判定し、電池ＢＡＴの残量（電圧）が予め設定したＥＥＰＲＯＭ退避電圧設定値以下の場合、メインメモリＲＡＭのリングバッファＲＮＧ１に格納されたセンシングデータを不揮発性メモリＥＥＰＲＯＭに転送して、送信過去のセンシングデータを不揮発性メモリＥＥＰＲＯＭ上で保護する（Ｐ１５０１）。
【００９９】
このＰ１５０１の具体的な処理の一例を、図９に示す。
【０１００】
図９において、電池残量（電圧）と不揮発性メモリＥＥＰＲＯＭに格納されたＥＥＰＲＯＭデータ退避電圧設定値とを比較し（Ｐ１７００）、測定した電池ＢＡＴの電圧がＥＥＰＲＯＭデータ退避電圧設定値以下であればＰ１７０１に進んでメインメモリＲＡＭのデータ（変数領域ＶＡＬ及びリングバッファＲＮＧ１）を不揮発性メモリＥＥＰＲＯＭに退避させる。このとき、不揮発性メモリＥＥＰＲＯＭのＥＥＰＲＯＭデータ退避フラグをＯＮにセットし、以降はＥＥＰＲＯＭモードで動作する。
【０１０１】
一方、測定した電池ＢＡＴの電圧がＥＥＰＲＯＭデータ退避電圧設定値を超えていれば、Ｐ１７０６に進んでリングバッファＲＮＧ１に送信未了のセンシングデータを書き込むＲＡＭモードを設定し、処理を終了する。
【０１０２】
メインメモリＲＡＭのデータを不揮発性メモリＥＥＰＲＯＭに退避させた後には、基地局ＢＳ１０に電池ＢＡＴの残量が不足していることを通知する（Ｐ１７０２）。基地局ＢＳ１０からの応答信号ＡＣＫを受信すると（Ｐ１７０３）、Ｐ１７０４で電池ＢＡＴの電圧が予め設定したノード動作限界値未満であるか否かを判定する。電池ＢＡＴの電圧がノード動作限界値未満の場合には、Ｐ１７０５へ進んで電源を遮断してセンサノードＳＮ１を停止させる。一方、電池ＢＡＴの電圧がノード動作限界値以上であれば、そのまま処理を終了する。
【０１０３】
以上の処理により、図１０で示すように、電池ＢＡＴの電圧が時間の経過と共に低下して、ＥＥＰＲＯＭデータ退避電圧設定値を下回るとメインメモリＲＡＭのデータを不揮発性メモリＥＥＰＲＯＭに退避させ、基地局ＢＳ１０に電池ＢＡＴの残量が不足していることを通知する。さらに電池ＢＡＴの電圧が低下して所定のノード動作限界値を下回ると、電源を遮断しセンサノードＳＮ１を停止させる。したがって、電池ＢＡＴの残量がＥＥＰＲＯＭデータ退避電圧設定値を超えている期間は、基本的にＲＡＭモードで動作してリングバッファＲＮＧ１に送信未了のセンシングデータを書き込み、電池ＢＡＴの残量が低下するとＥＥＰＲＯＭモードで動作してリングバッファＲＮＧ２へ送信未了のセンシングデータを格納する。このように、電池ＢＡＴの残量がノード動作限界値より低下して、揮発性メモリの内容が消去されても、不揮発性メモリＥＥＰＲＯＭにセンシングデータが退避されているので、電池ＢＡＴを交換もしくは再充電することで過去のデータを読み出すことが可能となる。
【０１０４】
電池残量チェック処理を終えると、図８のＰ１５０２へ進み、送信未了のセンシングデータの書き込み動作がＥＥＰＲＯＭモードであるかを判定する。ＥＥＰＲＯＭモードであればＰ１５０７で不揮発性メモリＥＥＰＲＯＭに送信未了のセンシングデータを書き込む。ＲＡＭモードの場合では、混在モードへ移行するか否かを判定するためＰ１５０３の遅延送信データ保存サイズチェック処理へ進む。
【０１０５】
ここで、上記Ｐ１５０７で行われるＥＥＰＲＯＭ書き込み処理は、図１１で示すフローチャートのようになる。
【０１０６】
まず、不揮発性メモリＥＥＰＲＯＭのパラメータ格納部ＰＲＭのＥＥＰＲＯＭ未送信データ数に１を加算してインクリメントする（Ｐ１７１０）。次に、パラメータ格納部ＰＲＭからＥＥＰＲＯＭ書き込みアドレス（ポインタ）を読み込んで、リングバッファＲＮＧ２の該当アドレスに最新のセンシングデータを書き込む（Ｐ１７１１）。そして、書き込みが完了すると、ＥＥＰＲＯＭ書き込みアドレスに所定値を加算してインクリメントし、次の書き込み位置に更新する（Ｐ１７１２）。ただし、現在のＥＥＰＲＯＭ書き込みアドレスに所定値を加算した結果が図６に示す最終アドレス＃ｎを超える場合は、リングバッファＲＮＧ２の先頭アドレス＃１を設定する。
【０１０７】
次に、Ｐ１５０３で行われる遅延送信データ保存サイズチェック処理は、図１２で示すように、メインメモリＲＡＭのリングバッファＲＮＧ１が一杯になると、不揮発性メモリＥＥＰＲＯＭのリングバッファＲＮＧ２を連結して２つのリングバッファをひとつのリングバッファとして利用する混在モードへ移行する。メインメモリＲＡＭのリングバッファＲＮＧ１のＲＡＭ書き込みアドレスが最大容量（図７の＃Ａｎ）に達していれば、メインメモリＲＡＭの変数領域ＶＡＬの遅延送信データ保存場所に「２」を設定し、混在モードに設定する。なお、混在モードでは、メモリＲＡＭのリングバッファＲＮＧ１と不揮発性メモリＥＥＰＲＯＭのリングバッファＲＮＧ２のどちらに書き込むかを識別するため、変数領域ＶＡＬの遅延送信データ保存場所にモードを示す識別子に加えて、書き込み場所を示す識別子を付加する。例えば、混在モードでメインメモリＲＡＭのリングバッファＲＮＧ１に書き込むときには「３０」を設定し、混在モードで不揮発性メモリＥＥＰＲＯＭのリングバッファＲＮＧ２に書き込むときには「３１」を設定する。
【０１０８】
次に、図８のＰ１５０４では、変数領域ＶＡＬの遅延送信データ保存場所の値から混在モードであるか否かを判定する。混在モードであればＰ１５０５に進み、混在モードでなければＲＡＭモードであるので、Ｐ１５０６に進んでメインメモリＲＡＭに最新のセンシングデータを書き込む。
【０１０９】
Ｐ１５０５では、遅延送信データ保存場所の識別子から今回書き込みを行う場所を決定し、メインメモリＲＡＭのリングバッファＲＮＧ１に書き込む場合はＰ１５０６に進み、不揮発性メモリＥＥＰＲＯＭのリングバッファＲＮＧ２に書き込む場合はＰ１５０７へ進む。
【０１１０】
なお、Ｐ１５０６のＲＡＭ書き込み処理は、図１１のＥＥＰＲＯＭ書き込み処理と同様に行われる。つまり、メインメモリＲＡＭの変数領域ＶＡＬのＲＡＭ未送信データ数に１を加算してインクリメントする。次に、変数領域ＶＡＬからＲＡＭ書き込みアドレス（ポインタ）を読み込んで、リングバッファＲＮＧ１の該当アドレスに最新のセンシングデータを書き込む。そして、書き込みが完了すると、ＲＡＭ書き込みアドレスに所定値を加算してインクリメントし、次の書き込み位置に更新する。ただし、現在のＲＡＭ書き込みアドレスに所定値を加算した結果が図７に示す最終アドレス＃Ａｎを超える場合は、リングバッファＲＮＧ１の先頭アドレス＃Ａ１を設定する。
【０１１１】
以上の処理により、無線通信状態の悪化や基地局ＢＳ１０の障害などで、送信したセンシングデータに対する応答信号ＡＣＫを受信できないときには、電池ＢＡＴの残量に応じてメインメモリＲＡＭまたは不揮発性メモリＥＥＰＲＯＭのリングバッファＲＮＧ１、２のいずれかに最新のセンシングデータが格納され、次回の送信成功時まで保持される。
【０１１２】
＜送信未了データ送信処理＞
以上のように、リングバッファＲＮＧ１、２に格納された送信未了のセンシングデータは、次回のプロセッサＣＰＵ１の起動時に、図５のＰ１４６で送信未了のセンシングデータの有無を判定した後、Ｐ１４８で読み出されてＰ１４４で基地局ＢＳ１０に送信される。
【０１１３】
まず、Ｐ１４６の処理は、図１３示すように、メインメモリＲＡＭの変数領域ＶＡＬからＲＡＭ未送信データ数を読み込んで、この値が１以上であるか（Ｐ１７２０）、または、不揮発性メモリＥＥＰＲＯＭのＥＥＰＲＯＭ未送信データ数を読み込んで、この値が１以上であるか（Ｐ１７２１）、何れかの条件を満たしたときに、Ｐ１４８の送信未了データ読み出し処理に進む。
【０１１４】
Ｐ１４８の未了データ読み出し処理を図１４のフローチャートに示す。図１４において、Ｐ１８０１でメインメモリＲＡＭのＲＡＭ未送信データ数を読み込む。ＲＡＭ未送信データ数が０を超えていればＰ１８０２に進んでメインメモリＲＡＭのリングバッファＲＮＧ１からデータを読み出す。ＲＡＭ未送信データ数が０の場合には、Ｐ１８０３に進む。
【０１１５】
Ｐ１８０３では、メインメモリＲＡＭのＥＥＰＲＯＭ未送信データ数を読み込む。ＥＥＰＲＯＭ未送信データ数が０を超えていればＰ１８０４に進んで不揮発性メモリＥＥＰＲＯＭのリングバッファＲＮＧ２からデータを読み出す。ＥＥＰＲＯＭ未送信データ数が０の場合には処理を終了する。
【０１１６】
ここで、Ｐ１８０２のＲＡＭ読み出し処理を図１５のフローチャートに示す。図１５において、メインメモリＲＡＭの変数領域ＶＡＬからＲＡＭ読み出しアドレスを参照し、当該アドレス指し示すリングバッファＲＮＧ１からデータを読み出す（Ｐ１８１０）。
【０１１７】
次に、変数領域ＶＡＬのＲＡＭ未送信データ数から１を減算してデクリメントする（Ｐ１８１１）。次に、変数領域ＶＡＬからＲＡＭ読み出しアドレス（ポインタ）を次の読み出し位置に更新する（Ｐ１８１２）。ただし、現在のＲＡＭ読み出しアドレスに所定値を加算した結果が図７に示す最終アドレス＃Ａｎを超える場合は、リングバッファＲＮＧ１の先頭アドレス＃Ａ１を次回の読み出し位置に設定する。なお、図示はしないが、Ｐ１８０５のＥＥＰＲＯＭ読み出し処理もメインメモリＲＡＭのリングバッファＲＮＧ１と同様に行われる。
【０１１８】
以上のように、遅延送信データ読み出し処理では、図５のＰ１４７で電池ＢＡＴの残量や送信未了データの容量などに応じて設定された保存モードに応じてリングバッファＲＮＧ１、２から一つずつ送信未了データを読み込んで、最新のセンシングデータの後に順次基地局ＢＳ１０へ送信することができるのである。
【０１１９】
＜基地局の処理＞
次に、図５のＰ２００に示した基地局ＢＳ１０の制御プログラムの動作の一例について以下に説明する。
【０１２０】
図５において基地局ＢＳ１０の電源を投入すると（Ｐ２０１）、基地局ＢＳ１０のリソースの初期化処理が実行される（Ｐ２１０）。この初期化処理では、センサノードＳＮ１〜ＳＮ３と無線通信を行うための無線チャネルの設定が行われる（Ｐ２１１）。
【０１２１】
初期化処理が完了すると、センサノードＳＮ１〜ＳＮ３（以下、単にセンサノードとする）からの受信待機処理が実行される（Ｐ２２０）。受信待機処理では、Ｐ２２１でセンサノードからの受信を待って、センサノードからの受信があるとＰ２２２で、送信を行ったセンサノードに対して応答信号ＡＣＫを送信する。
【０１２２】
次に、基地局ＢＳ１０はＰ２３０で受信したパケットのデータタイプ部ＰＤＴを解析して、アソシエーションリクエスト（加入要求）であるかセンシングデータであるかを判定する。アソシエーションリクエストであればＰ２４０のアソシエーション処理へ進み、センシングデータであればＰ２６０のセンシングデータ受信処理へ進む。
【０１２３】
アソシエーション処理では、要求を行ったセンサノードに対して基地局ＢＳ１０の配下でユニークなノードＩＤを決定し、アソシエーション結果としてノードＩＤをセンサノードに通知する（Ｐ２４１）。そして、Ｐ２４２で該当するセンサノードからの応答信号ＡＣＫを待ち、応答信号ＡＣＫを受信するとＰ２５０の時刻同期処理へ進む。一方、所定期間内に応答信号ＡＣＫを受信できない場合には、Ｐ２４１へ戻って再びアソシエーション結果を送信してから応答信号ＡＣＫを待つ。この処理を所定の回数（例えば、３回）繰り返しても応答信号ＡＣＫを受信できない場合には、決定したノードＩＤを消去してからＰ２２０の受信待機処理へ戻る。
【０１２４】
時刻同期処理では、まず、センサノードからの時刻設定コマンドの受信を待つ（Ｐ２５１）。この受信待ちは、所定の時間（数百ｍｓｅｃ）待機しても該当するセンサノードから要求がなければＰ２２０の受信待機処理へ戻る。一方、所定時間内に時刻設定コマンドを受信すると、応答信号ＡＣＫをセンサノードに返信し（Ｐ２５２）、図１７に示したフォーマットで時刻情報を送信する（Ｐ２５３）。このとき、基地局ＢＳ１０で稼働するＯＳの時刻フォーマットから図１７に示すフォーマットへの変換を行う。なお、図示はしないが基地局ＢＳ１０は所定の周期で時刻サーバＴＳＶ１０と時刻の同期をとる。次に、Ｐ２５４では時刻情報を送ったセンサノードからの応答信号ＡＣＫを待ち、所定時間待っても応答信号ＡＣＫを受信できない場合には、再びＰ２５３へ戻って現在の時刻を送信する。そして、Ｐ２５４では、センサノードからの応答信号ＡＣＫを受信できない場合には、上記Ｐ２５３、Ｐ２５４の処理を所定の回数まで繰り返し、その後はＰ２２０の受信待機処理に戻る。Ｐ２５４でセンサノードからの応答信号ＡＣＫを受信すると、Ｐ２５５ではセンサノードからの時刻設定完了通知を待つ。この処理も、上記と同様に所定時間内に時刻設定完了通知を受信できなければ処理を終了してＰ２２０の受信待機処理へ戻る。時刻設定完了通知を受信するとＰ２５６で該当するセンサノードに応答信号ＡＣＫを送信して処理を終了し、Ｐ２２０に戻る。
【０１２５】
次に、Ｐ２３０でセンシングデータと判定された場合のセンシングデータ受信処理（Ｐ２６０）へ進む。Ｐ２６１では、受信したセンシングデータを取得時刻順でソートしてからデータベースＳＤＢ１に格納する（Ｐ２６２）。データベースＳＤＢ１への格納が終了すると、再びＰ２２０の受信待機処理へ戻る。なお、ソート処理はデータベースＳＤＢ１に格納した後に実施しても良い。
【０１２６】
本発明のセンサノードでは、前回のセンシングデータの送信に失敗した場合、所定のリングバッファＲＮＧ１、２にセンシングデータを格納しておき、次に最新のセンシングデータの送信に成功すると、リングバッファＲＮＧ１、２に格納していたセンシングデータをまとめて連続的に基地局ＢＳ１０に送信する。このとき、リングバッファＲＮＧ１に格納されたセンシングデータを繰り返して送ることになる。例えば、図７に示したように、リングバッファＲＮＧ１のアドレスの先頭＃Ａ１から順に終端のアドレス＃Ａｎへ向けて送信が行われる。このため、基地局ＢＳ１０では、最新のセンシングデータを受信した後に、古いセンシングデータが時系列的に送られてくることになる。
【０１２７】
センサノードは、リングバッファＲＮＧ１、２に格納されたデータを送信している際にデータ送信が失敗した場合には、現在読み出し対象になっているリングバッファのポインタ（読み出しアドレス）を一つ戻して、スタンバイ状態に進む。また、リングバッファＲＮＧ１、２に格納されたデータを送信している際は、リアルタイムクロックＲＴＣからの割込みを受け付けることなく、現在読み出し対象になっているリングバッファのデータの送信を続ける。これにより、簡潔かつ安定した処理が可能となる。なお、リングバッファＲＮＧ１、２に格納されたデータを送信している際に、リアルタイムクロックＲＴＣからの割込みを受け付けて、割込みを受け付けた際に読み出し対象になっているリングバッファのポインタ（読み出しアドレス）を一つ戻し、センシングを実行したあとにその最新データに続けて、再びリングバッファのデータを送信しても良い。これにより、最新のセンシングデータを重要とみなして優先して送信することができ、データの欠落を防ぐことも可能となる。また、センシングした最新のデータを送信せずリングバッファに格納しておき、既にリングバッファに格納されている読み出し途中であったデータを送信した後、最新のセンシングデータを送信することもできる。
【０１２８】
そこで、基地局ＢＳ１０では受信したセンシングデータについて、センシングデータに含まれる取得時刻順、センサノード毎にソートを実施することにより、データベースＳＤＢ１上では各センサノードのセンシングデータを時系列的に管理することができるのである。
【０１２９】
＜センサノードの消費電力＞
次に、上述したセンサノードの消費電力について以下に説明する。まず、図１８はセンサノードがスタンバイ状態からリアルタイムクロックＲＴＣのタイマ割り込みで起動し、正常にセンシングデータの送信を行った場合を示す。
【０１３０】
時間ＴＣ１は、プロセッサＣＰＵ１がソフトウェアスタンバイモードにあり、消費電流は最も小さいＩ１（例えば、１μＡ以下）に抑えられている。そして、リアルタイムクロックＲＴＣが所定の時間を経過すると、時間ＴＣ２に入り、リアルタイムクロックＲＴＣ割り込みを発生し、プロセッサＣＰＵ１を起動して待機状態から図５のＰ１００を開始する。プロセッサＣＰＵ１の起動により時間ＴＣ２では、Ｉ２（＝５ｍＡ）の電流に増大する。
【０１３１】
生体情報の測定は時間ＴＣ３にて実行される。温度センサ、加速度センサ、脈拍センサを順次作動させて温度、加速度、脈拍を測定する。この時間ＴＣ３の期間が最大の消費電流となり、Ｉ１＋Ｉ３（＝１０〜５０ｍＡ）の電力を消費する。
【０１３２】
生体情報のセンシングが完了すると、各センサをオフにしてから、時間ＴＣ４にて無線通信部ＲＦの駆動を開始する。そして、時間ＴＣ４の期間で基地局ＢＳ１０と通信を行って上述のようにデータの送信やコマンドの受信を行う。この時間ＴＣ４の期間の消費電流はＩ１＋Ｉ４（＝２０ｍＡ）となり、２番目に大きな消費電流となる。
【０１３３】
時間ＴＣ４のセンシングデータの送信と応答信号ＡＣＫの受信が終了すると、無線通信部ＲＦをオフにしてから、期間ＴＣ５でメインメモリＲＡＭまたはＥＥＰＲＯＭに送信未了データがないかを判定する。この期間の消費電流は期間ＴＣ２と同じＩ１＋Ｉ２となる。そして、送信未了データがなければ、期間ＴＣ６でプロセッサＣＰＵ１の待機状態に移行する。リアルタイムクロックＲＴＣなどの設定を行ってからプロセッサＣＰＵ１は時間ＴＣ６で待機状態に移行し、上記ＴＣ１〜ＴＣ５のサイクルを繰り返す。
【０１３４】
図１９は、センサノードがセンシングデータを送信し、基地局ＢＳ１０からの応答信号ＡＣＫを正常に受信できずにリングバッファＲＮＧ２へ書き込んだ場合を示す。期間ＴＣ１〜ＴＣ４及びＴ６は、前記図１８の正常な例と同一である。期間ＴＣ５１では、基地局ＢＳ１０からの応答信号ＡＣＫを受信できなかったため、不揮発性メモリＥＥＰＲＯＭに測定したセンシングデータを書き込む。この期間ＴＣ５１では、不揮発性メモリＥＥＰＲＯＭへの書き込み電流が上記電流Ｉ２に加算された電流Ｉ５となり、３番目に高い消費電力となる。書き込みが完了した後は、上記図１８と同様に再びスタンバイ状態となり、電流はＩ１に抑制される。
【０１３５】
しかしながら、本発明では、基地局ＢＳ１０からの応答信号ＡＣＫの受信待ちとセンシングデータの再送を所定回数（例えば、３回）に留めているため、第２位の消費電力となる送受信期間ＴＣ４を短くすることで、電池ＢＡＴの消耗を抑制することができる。さらに上述したＲＡＭモードでは、さらに書き込みに要する電流を低減できるので、電池ＢＡＴの消耗をさらに抑制して、電池ＢＡＴのメンテナンス期間を増大することが可能となる。
【０１３６】
図２０は、前記図１９でリングバッファＲＮＧ１または２へ書き込んだ送信未了データを基地局ＢＳ１０に送信する例を示す。期間ＴＣ１〜ＴＣ５までは前記図１８と同様に生体情報を測定し、センシングデータを基地局ＢＳ１０へ送信し、応答信号ＡＣＫを受信している。今回の場合、前回（図１９）の起動時に基地局ＢＳ１０からの応答信号ＡＣＫを受信できずに、送信未了データをリングバッファに書き込んでいるので、この送信未了データを基地局ＢＳ１０へ送信する。
【０１３７】
基地局ＢＳ１０からの応答信号ＡＣＫを受信に成功した後の期間ＴＣ５では、リングバッファＲＮＧ１または２に送信未了データがあるか否かを判定する。前回のセンシングデータがリングバッファＲＮＧ１または２に格納されているので、期間ＴＣ７ではメインメモリＲＡＭまたは不揮発性メモリＥＥＰＲＯＭから送信未了データを読み出す。このため、期間ＴＣ７では再び消費電流が上昇して第４位の高さのＩ６となる。
【０１３８】
読み出しが終わると、再び基地局ＢＳ１０に送信を行うため期間ＴＣ４１では、無線通信部ＲＦを動作させるため消費電流がＩ４まで上昇する。基地局ＢＳ１０からの応答信号ＡＣＫを受信した後には、期間ＴＣ５１で残りの送信未了データがないかを判定する。この例では、リングバッファＲＮＧ１または２の送信未了データを全て送信したので、期間ＴＣ６へ移行して再びスタンバイ状態に戻る。
【０１３９】
このように、本発明ではデータを所定の間隔で取得することにより消費電力を抑える。つまり、センシングデータの取得、送信未了データの書き込みと読み出し、センシングデータの送受信以外は待機状態にあり、待機状態の期間は消費電力を大幅（例えば1μＡ以下）に抑えることができる。また、最新のセンシングデータを送って無線通信状態を確認する。つまり、所定の間隔でセンシングを行うセンサノードが、通常の動作である最新のセンシングデータの送信により通信状態の良否を判定できるため、通信状態のみを確認するような処理は不要となり、電池ＢＡＴの消耗を抑制できる。さらに、最新のセンシングデータの送信に成功すると、リングバッファＲＮＧ１または２に格納されているセンシングデータをまとめて送信する。これにより、データ送受信やメモリのアクセスで使用する電力を極力抑えることが可能となり、電池ＢＡＴで長期間作動する必要のあるセンサノードの耐久性を向上することができる。
【０１４０】
図２１は、センサノードＳＮ１を装着した人の移動（位置）と、基地局ＢＳ１０におけるセンサノードＳＮ１の受信感度の関係を示したものである。図中受信感度は１以上であれば基地局ＢＳ１０とセンサノードＳＮ１は通信可能である。
【０１４１】
時刻Ｔ０〜Ｔ１の期間では、センサノードＳＮ１が基地局ＢＳ１０から遠く離れており、送受信が行えない状態である。この期間にプロセッサＣＰＵ１が起動した場合には、センサノードＳＮ１は基地局ＢＳ１０からの応答信号ＡＣＫを受信することができないため、リングバッファＲＮＧ１または２にセンシングデータを蓄積することになる。センサノードＳＮ１の装着者が基地局ＢＳ１０に向けて移動すると、時刻Ｔ１からセンサノードＳＮ１は基地局ＢＳ１０と通信可能になる。
【０１４２】
この時刻Ｔ１の直後にセンサノードＳＮ１のプロセッサＣＰＵ１が起動した場合、まず、センサノードＳＮ１は最新のセンシングデータを基地局ＢＳ１０に送信し、その後、リングバッファＲＮＧ１または２に格納されている過去のセンシングデータを古い順に基地局ＢＳ１０へ送信することができる。ただし、時刻Ｔ１〜Ｔ２の期間ではセンサノードＳＮ１の装着者が基地局ＢＳ１０へ近づくように移動しているため、基地局ＢＳ１０の受信感度は変動する。例えば、時刻Ｔ１１では、一時的に受信感度が０になり、センサノードＳＮ１は基地局ＢＳ１０と通信を行うことができない。この時刻Ｔ１１の時点で、センサノードＳＮ１が基地局ＢＳ１０と通信中であれば、基地局ＢＳ１０からの応答信号ＡＣＫを受信できなくなるため、蓄積したセンシングデータの送信を途中で中断する。このとき、読み出しを中断したリングバッファＲＮＧ１または２のアドレスが、次回の読み出し開始位置として、メインメモリＲＡＭのＥＥＰＲＯＭ読み出しアドレスまたはＲＡＭ読み出しアドレスに設定される。
【０１４３】
センサノードＳＮ１の装着者が基地局ＢＳ１０に近接する時刻Ｔ２〜Ｔ３の期間では、受信感度が高いレベルで安定するので、上記時刻Ｔ１１で中断したセンシングデータを安定して送信することができる。そして、時刻Ｔ３〜Ｔ４ではセンサノードＳＮ１の装着者が基地局ＢＳ１０から離れた位置に移動し、図示のように受信感度が変動する。このように、基地局ＢＳ１０の通信可能範囲でも受信感度が変動するため、瞬間的に受信感度が０になる場合もある。このため、センサノードＳＮ１と基地局ＢＳ１０は通信可能範囲内でも通信が遮断されることになり、本発明のように無線通信状態が悪化したときには測定したセンシングデータをメインメモリＲＡＭや不揮発性メモリＥＥＰＲＯＭなどの記憶装置に格納しておき、無線通信状態が回復したときにまとめて蓄積したセンシングデータを送信することで、センサノードＳＮ１の電池ＢＡＴの無駄な消耗を防ぎながら、基地局ＢＳ１０のデータベースＳＤＢ１ではデータの欠落を抑制して時系列的なセンシングデータを蓄積することができるのである。
【０１４４】
上記のような受信感度の変動は図２２、図２３に示すような住居の位置と図２４、図２５に示すセンサノードＳＮ１の送信強度に起因する。
【０１４５】
図２２において、台所の近傍のテーブル上に基地局ＢＳ１０を設置した場合、図中「○」は無線通信状態が良好な位置を示し、「△」は無線通信状態がやや不安定な位置を示す。一方、腕輪型のセンサノードＳＮ１を人体に装着した場合の送信強度は図２４、図２５で示すようになる。
【０１４６】
図２４において、腕輪型センサノードＳＮ１を右手に装着し、装着者の前方正面を１８０度（−１８０度）、右側を−９０度、左側を９０度、真後ろを０度とした場合、センサノードＳＮ１の平面上の送信強度は図２５のようになる。無線通信を行う周波数帯域として２．４ＧＨｚ帯を利用する場合、人体は電波を吸収するため、図２５のように、装着者の右前方で送信強度が高く、左前方から背後にかけては送信強度が弱くなる。
【０１４７】
このため、図２２の住居において基地局ＢＳ１０から離れた玄関などの無線通信状態が良好な位置であっても、装着者が基地局ＢＳ１０に背を向けている状態では無線通信状態が悪化する場合がある。また、受信感度がやや不安定な廊下側のタンスの近辺などでは、装着者が基地局ＢＳ１０に背を向けている状態では、無線通信状態が悪化してセンサノードＳＮ１のセンシングデータを基地局ＢＳ１０に送信できない状態が生じる。図２２のように、全般的に無線通信状態が良好な住居においても装着者の向きと、基地局ＢＳ１０の位置の関係に応じて無線通信状態は変化する。さらに、図２３で示すように無線通信状態が善本的に悪い住居の場合では、無線通信状態はさらに不安定になる。
【０１４８】
図２３において、図中「○」は無線通信状態が良好な位置を示し、「△」は無線通信状態がやや不安定な位置を示し、「×」は無線通信状態が悪い位置を示す。この住居の例では、図２２と同様な間取りではあるが、基地局ＢＳ１０をベランダ側のテーブルから遠い廊下側の部屋に設置しているため、居室間の壁などの影響を受けて全般的に無線通信状態が悪くなっている。この図２３の住居の場合、センサノードＳＮ１が基地局ＢＳ１０へセンシングデータを送信可能な位置は、無線通信状態の良好な基地局ＢＳ１０を設置した部屋と、玄関、洗面所、タンスのある部屋などであり、やや不安定ではあるがテーブル近傍でも送信可能な場合がある。
【０１４９】
上記図２５で示したようなセンサノードＳＮ１の送信強度特性を考慮すると、装着者が基地局ＢＳ１０が離れたテーブルや台所、和室などにいる場合ではセンシングデータを送信できず、また、無線通信状態がやや不安定なテーブル近傍でも、装着者が基地局ＢＳ１０を背にしている場合では、通信を行うことができない場合がある。
【０１５０】
しかし、本発明のセンサノードＳＮ１では、基地局ＢＳ１０からの応答信号ＡＣＫを受信できない状態ではセンシングデータの送信を所定回数であきらめて、メインメモリＲＡＭまたは不揮発性メモリＥＥＰＲＯＭの記憶装置に蓄積することで電池ＢＡＴの無駄な消費を防ぐ。そして、次回のセンシングデータの送信時に基地局ＢＳ１０との通信に成功すると、記憶装置に蓄積しておいた過去のセンシングデータを送信する。このため図２３のように全般的に無線通信状態の悪い住居であっても、装着者が基地局ＢＳ１０の近傍や通信状態の良い位置でプロセッサＣＰＵ１の起動周期になると、センシングデータを基地局ＢＳ１０へ送信することができる。これにより、無線通信状態の変動などにより基地局ＢＳ１０は、センシングデータの欠損を抑制することが可能となる。
【０１５１】
＜第２実施形態＞
図２６は第２の実施形態を示し、前記第１実施形態のセンサノードＳＮ１〜ＳＮ３には加速度センサと脈拍センサに代わって湿度センサを設け、温度センサと湿度センサにより厨房及び食堂の温度、湿度を無線ＷＬ１０〜ＷＬ１２により、基地局ＢＳ１０で収集、管理するセンサネットを示している。基地局ＢＳ１０は、収集した温度、湿度を表示するモニタＰＣ（ＭＴ２）と、収集した温度、湿度を保存するデータベースＤＢ２と接続される。
【０１５２】
この第２実施形態では、センサノードＳＮ１〜ＳＮ３を厨房と食堂の所定の位置に固定した点が第１実施形態とは相違し、また、厨房内にセンサノードＳＮ１〜ＳＮ３と基地局ＢＳ１０の無線通信周波数と同じ帯域を使用する機器（電子レンジなど）を厨房内に備えこの機器の作動状態に応じてセンサネットの無線通信状態が変動する。
【０１５３】
厨房には調理台ＣＭ１〜ＣＭ３が所定の位置に配置され、厨房の隣には基地局ＢＳ１０を備えた厨房事務所が設置される。なお、厨房事務所は、壁ＷＡ１とドアＤＲ１により厨房とは仕切られる。厨房と食堂の間にはカウンタＣＴ１が設置される。
【０１５４】
センサノードＳＮ１は食堂の所定の位置に固定され、センサノードＳＮ２はカウンタＣＴ１の所定の位置に固定され、センサノードＳＮ３は調理台ＣＭ３に固定される。また、この調理台ＣＭ３には電子レンジＲＧ１が設置される。この電子レンジＲＧ１は、上記のようにセンサネットの無線周波数（例えば、２．４ＧＨＺ帯）と同じ帯域の電磁波を使用する。
【０１５５】
各センサノードＳＮ１〜ＳＮ３は、前記第１実施形態と同様に所定の周期でプロセッサＣＰＵ１を起動して最新のセンシングデータを基地局ＢＳ１０へ送信する。そして、基地局ＢＳ１０からの応答信号ＡＣＫを受信できない場合には、所定回数だけ送信をリトライし、基地局ＢＳ１０からの応答信号ＡＣＫを受信できなければ、センサノードＳＮ１〜ＳＮ３の記憶装置（メインメモリＲＡＭまたは不揮発性メモリＥＥＰＲＯＭ）にセンシングデータを蓄積する。次回のセンシングデータの送信にすると、センサノードＳＮ１〜ＳＮ３は、記憶装置に蓄積しておいた過去のセンシングデータをまとめて送信する。
【０１５６】
センサネットの無線通信状態は、電子レンジＲＧ１が作動中に悪化する。さらに、厨房事務所のドアＤＲ１の閉鎖や、センサノードＳＮ１〜ＳＮ３への人体ＵＳ１０、１１の接近、あるいは貨物用カートの接近によっても無線通信状態が悪化する。
【０１５７】
このため、固定されたセンサノードＳＮ１〜ＳＮ３は、前記第１実施形態のような移動可能なセンサノードと同様に、絶えず無線通信状態が変動する状態にある。
【０１５８】
例えば、センサノードＳＮ３は、電子レンジＲＧ１が作動中の場合にプロセッサＣＰＵ１の起動周期になると、基地局ＢＳ１０と交信できずに最新のセンシングデータを記憶装置に蓄積する。そして、電子レンジＲＧ１が作動していないときにプロセッサＣＰＵ１の起動周期になると、最新のセンシングデータの送信に成功してから蓄積しておいた過去のセンシングデータを送信することができる。他のセンサノードＳＮ２、ＳＮ３も同様であり、電子レンジＲＧ１の作動中にドアＤＲ１が閉鎖されたり、電磁波吸収体である人体が接近すると、基地局ＢＳ１０との通信を行えないことがあり、自身の記憶装置にセンシングデータを格納しておき、無線通信状態が良好になった時点で基地局ＢＳ１０へセンシングデータの送信することになる。
【０１５９】
このように、本発明では移動可能なセンサノードに加えて固定式（据置型）のセンサノードであっても無線通信状態が変化するものであれば適用することができる。そして、前記第１実施形態と同様に、センサノードＳＮ１〜ＳＮ３の電池ＢＡＴの無駄な消費を抑制してメンテナンス周期を拡大することができる。また、無線通信状態の変動にかかわらず、基地局ＢＳ１０では、各センサノードＳＮ１〜ＳＮ３のセンシングデータを受信することが可能となって、センシングデータの欠損を抑制することができる。
【０１６０】
なお、上記各実施形態では、センサノードＳＮ１のメモリに電源遮断時に記憶保持動作を行わない読み書き可能なメインメモリＲＡＭと電源遮断時に記憶保持動作を行う不揮発性メモリＥＥＰＲＯＭとを組み合わせて使用する例を示したが、不揮発性メモリＥＥＰＲＯＭのみを使用してもよい。この場合、メインメモリＲＡＭを削除できるので部品点数を削減することができる。あるいは、メインメモリＲＡＭとフラッシュメモリＦＲＯＭの組み合わせを用いて、フラッシュメモリＦＲＯＭにリングバッファＲＮＧ２を設定してもよい。
【０１６１】
なお、上記第１実施形態では基地局ＢＳ１０と時刻サーバＴＳＶ１０を独立した場合を示したが、基地局ＢＳ１０が時刻サーバの機能を有していても良い。また、上記第1実施形態では基地局ＢＳ１０が有する二次記憶装置ＳＴＲ１０にデータベースＳＤＢ１の機能を有するが、基地局ＢＳ１０とデータベースＳＤＢ１を独立させても良い。さらに、広域ネットワーク網ＷＡＮ１０には、基地局ＢＳ１０と、モニタ端末ＭＴ１０と、管理サーバＳＶ１０とが一台づつ図示してあるが、それぞれ複数存在しても良い。
【０１６２】
なお、本実施形態における処理フローはプログラムとして構成し、コンピュータでプログラムを読み取ることで実行することができる。
【０１６３】
以上、本発明の例を説明したが、本発明は上記実施例に限定されるものではなく種々変形実施可能であり、上述した各実施例を適宜組み合わせることが可能であることは当業者に理解されよう。
【産業上の利用可能性】
【０１６４】
以上のように、本発明では、無線通信により基地局へセンシングデータを送信するセンサノード及びセンサネットに適用することができる。そして、複数のセンサを搭載しながら極めて低い消費電力で長期間に渡ってセンサノードを継続的に使用できるため、メンテナンスフリーで長期間の使用が要求されるセンサノード及びセンサネットに適用することができる。
【図面の簡単な説明】
【０１６５】
【図１】本発明の第１実施形態を示す腕輪型センサノードの正面及びアンテナの配置を示す部分透視図で、センサノードを左腕に装着した場合を示す。
【図２】ケースの底面を表面側から透視した場合の脈拍センサの配置を示す説明図。
【図３】本発明の腕輪型センサノードにより実現される健康管理センサ・ネットワーク・システムの構成例を示したブロック図。
【図４】センサノードと基地局ＢＳ１０で送受信されるデータフォーマットの一例を示し、（ａ）は時刻設定コマンドデータを示し、（ｂ）は時刻設定完了データを示し、（ｃ）は送信データを示し、（ｄ）はアソシエーションリクエストデータを示す。
【図５】センサノードで実行される制御プログラムと、基地局で実行される制御プログラムの一例を示すフローチャート。
【図６】不揮発性メモリＥＥＰＲＯＭの構成を示すブロック図。
【図７】メインメモリＲＡＭの構成を示すブロック図。
【図８】図５のＰ１４７で行われる遅延送信データ保存処理のサブルーチンを示すフローチャート。
【図９】図８のＰ１５０１で行われる電池残量チェック処理のサブルーチンを示すフローチャート。
【図１０】電池ＢＡＴの電圧と時間の経過を示すグラフで、ＥＥＰＲＯＭデータ退避電圧設定値とノード動作限界の関係を示す。
【図１１】図８のＰ１５０７で行われるＥＥＰＲＯＭ書き込み処理のサブルーチンを示すフローチャート。
【図１２】遅延送信データ保存サイズと時間の関係を示すグラフで、メインメモリＲＡＭのリングバッファＲＮＧ１とＥＥＰＲＯＭの保存先を切り替える条件を示す。
【図１３】図５のＰ１４５で行われる送信未了データ判定のサブルーチンを示すフローチャート。
【図１４】図５のＰ１４８で行われる送信未了データ読み出し処理のサブルーチンを示すフローチャート。
【図１５】図１４のＰ１８０３で行われるＲＡＭ読み出し処理のサブルーチンを示すフローチャート。
【図１６】図５のＰ１３５で行われる初期化処理のサブルーチンを示すフローチャート。
【図１７】センサノードの時刻データのフォーマットを示す説明図。
【図１８】センサノードの正常な送受信時の消費電流と時間の関係を示すグラフ。
【図１９】センサノードの送受信時の消費電流と時間の関係を示すグラフで、基地局ＢＳ１０からの応答信号ＡＣＫを受信できなかった場合を示す。
【図２０】センサノードの正常な送受信時の消費電流と時間の関係を示すグラフで、前回の起動時にセンシングデータを蓄積した場合を示す。
【図２１】センサノードと基地局の位置関係に応じた基地局における受信感度と時間の関係を示すグラフ。
【図２２】センサネットを備えた住居の平面図。
【図２３】センサネットを備えた他の住居の平面図。
【図２４】センサノードの装着位置と、人体の向きを示す説明図。
【図２５】人体の向きに応じたセンサノードの送信強度を示すグラフ。
【図２６】本発明の第２の実施形態を示すセンサ・ネットワーク・システムの構成例を示したブロック図。
【符号の説明】
【０１６６】
ＳＮ１〜ＳＮ３  センサノード
ＳＮＳ  センサ
ＢＡＴ  電池
ＣＰＵ１  プロセッサ
ＲＡＭ  メインメモリ
ＥＥＰＲＯＭ  不揮発性メモリ
ＦＲＯＭ  フラッシュメモリ
ＲＴＣ  リアルタイムクロック
ＢＳ１０  基地局
ＳＤＢ１  データベース
ＴＳＶ１０  時刻サーバ
【図１】
0004714025.tif 000002
【図２】
0004714025.tif 000003
【図３】
0004714025.tif 000004
【図４】
0004714025.tif 000005
【図５】
0004714025.tif 000006
【図６】
0004714025.tif 000007
【図７】
0004714025.tif 000008
【図８】
0004714025.tif 000009
【図９】
0004714025.tif 000010
【図１０】
0004714025.tif 000011
【図１１】
0004714025.tif 000012
【図１２】
0004714025.tif 000013
【図１３】
0004714025.tif 000014
【図１４】
0004714025.tif 000015
【図１５】
0004714025.tif 000016
【図１６】
0004714025.tif 000017
【図１７】
0004714025.tif 000018
【図１８】
0004714025.tif 000019
【図１９】
0004714025.tif 000020
【図２０】
0004714025.tif 000021
【図２１】
0004714025.tif 000022
【図２２】
0004714025.tif 000023
【図２３】
0004714025.tif 000024
【図２４】
0004714025.tif 000025
【図２５】
0004714025.tif 000026
【図２６】
0004714025.tif 000027