以下、本発明の一実施形態を、図面を参照して説明する。
本発明におけるセンサノードの位置づけと機能を明らかにするため、まずビジネス顕微鏡システムについて説明する。ここで、ビジネス顕微鏡とは、人間に装着したセンサノードでその人間の状況を観測し、組織アクティビティとして人物間の関係性と現在の組織の評価(パフォーマンス)を図示して組織の改善に役立てるためのシステムである。また、センサノードで取得される対面検出・行動・音声等に関するデータを、総称して広く組織ダイナミクスデータと呼ぶ。
図1 は、一つの実施形態であるビジネス顕微鏡システムにおいて実行される処理の全体の流れを示す説明図である。図示の都合上分割して示してあるが、各々図示された各処理は相互に連携して実行される。複数の名札型センサノード(NNa、NNb− − −NNi、NNj)による組織ダイナミクスデータの取得(BMA)から、組織アクティビティとして人物間の関係性と現在の組織の評価(パフォーマンス)を解析(BMC)し、表示(BMD)するまでの流れを示す。
まず、図1を用いて組織ダイナミクスデータ取得(BMA)について説明する。名札型センサノードA(NNa)は、加速度センサ(ACC)、赤外線送受信器(TRIR)、マイクロホン(MIC)等のセンサ類、赤外線送受信器から得られた対面情報を表示する画面(IRD)、また図示は省略するが、マイクロコンピュータ及び無線送信機能を有する。
加速度センサ(ACC)は、名札型センサノードA(NNa)の加速度(すなわち、名札型センサノードA(NNa)を装着している人物A(図示省略)の加速度)を検出する。赤外線送受信器(TRIR)は、名札型センサノードA(NNa)の対面状態(すなわち、名札型センサノードA(NNa)が他の名札型センサノードと対面している状態)を検出する。なお、名札型センサノードA(NNa)が他の名札型センサノードと対面していることは、名札型センサノードA(NNa)を装着した人物Aが、他の名札型センサノードを装着した人物と対面していることを示す。マイクロホン(MIC)は、名札型センサノードA(NNa)の周囲の音声を検出する。
本実施の形態のシステムでは、複数の名札型センサノード(図1の名札型センサノードA(NNa)〜名札型センサノードJ(NNj))を備える。各名札型センサノードは、それぞれ、一人の人物に装着される。例えば、名札型センサノードA(NNa)は人物Aに、名札型センサノードB(NNb)は人物B(図示省略)に装着される。人物間の関係性を解析し、さらに、組織のパフォーマンスを図示するためである。
なお、名札型センサノードB(NNb)〜名札型センサノードJ(NNj)も、名札型センサノードA(NNa)と同様、センサ類、マイクロコンピュータ及び無線送信機能を備える。以下の説明において、名札型センサノードA(NNa)〜名札型センサノードJ(NNj)のいずれにも当てはまる説明をする場合、及び、それらの名札型センサノードを特に区別する必要がない場合、名札型センサノード(NN)と記載する。
各名札型センサノード(NN)は、常時(又は短い間隔で繰り返し)センサ類によるセンシングを実行する。そして、各名札型センサノード(NN)は、取得したデータ(センシングデータ)を、所定の間隔で無線によって送信する。データを送信する間隔は、センシング間隔と同じであってもよいし、センシング間隔より大きい間隔であってもよい。このとき送信されるデータには、センシングした時刻と、センシングした名札型センサノード(NN)の固有の識別子(ID)が付与される。データの無線送信をまとめて実行するのは、送信による電力消費を抑えることによって、人が装着したままで、名札型センサノード(NN)の使用可能状態を長時間維持するためである。また、全ての名札型センサノード(NN)において同一のセンシング間隔が設定されていることが、後の解析のためには望ましい。
<ビジネス顕微鏡システムの全体構成>
次に、図2(a)、図2(b)を参照して、実施の形態のビジネス顕微鏡システムを実現するセンサネットワークシステムの全体構成を説明する。図2(a)、図2(b)における形の異なる5種類の矢印は、それぞれ、時刻同期、アソシエイト、取得したセンシングデータの格納、データ解析のためのデータの流れ、及び制御信号を表している。
ビジネス顕微鏡システムは、名刺型センサノード(NN)と、基地局(GW)、センサネットサーバ(SS)、アプリケーションサーバ(AS)、クライアント(CL)から構成される。それぞれの機能はハードウェアまたはソフトウェア、あるいはその組み合わせによって実現されるものであり、必ずしも機能ブロックがハードウェア実体を伴うとは限らない。
図2(a)は、センサノードの一実施例である名札型センサノード(NN)の構成を示しており、名札型センサノード(NN)は人間の対面状況を検出するための複数の赤外線送受信部(TRIR1〜TRIR4)、装着者の動作を検出するための三軸加速度センサ(ACC)、装着者の発話と周囲の音を検出するためのマイク(MIC)、名札型センサノードの裏表検知のための照度センサ(LS1F、LS1B)、温度センサ(THM)の各種センサを搭載する。搭載するセンサは一例であり、装着者の対面状況と動作を検出するために他のセンサを使用してもよい。
本実施例では、赤外線送受信部を4組搭載する。赤外線送受信部(TRIR1〜TRIR4)は、名札型センサノード(NN)の固有識別情報である端末情報(TRMT)を正面方向に向かって定期的に送信し続ける。他の名札型センサノード(NNm)を装着した人物が略正面(例えば、正面又は斜め正面)に位置した場合、名札型センサノード(NN)と他の名札型センサノード(NNm)は、それぞれの端末情報(TRMT)を赤外線で相互にやり取りする。このため、誰と誰が対面しているのかを記録することができる。
各赤外線送受信部は一般に、赤外線送信のための赤外発光ダイオードと、赤外線フォトトランジスタの組み合わせにより構成される。赤外線ID送信部IrIDは、自らのIDであるTRMTを生成して赤外線送受信モジュールの赤外線発光ダイオードに対して転送する。本実施例では、複数の赤外線送受信モジュールに対して同一のデータを送信することで、全ての赤外線発光ダイオードが同時に点灯する。もちろん、それぞれ独立のタイミング、別のデータを出力してもよい。
また、赤外線送受信部TRIR1〜TRIR4の赤外線フォトトランジスタによって受信されたデータは、論理和回路(IROR)によって論理和が取られる。つまり、最低どれか一つの赤外線受光部でID受光されていれば名札型センサノードにIDとして認識される。もちろん、IDの受信回路を独立して複数持つ構成でもよい。この場合、それぞれの赤外線送受信モジュールに対して送受信状態が把握できるので、例えば、対面する別の名札型センサノードがどの方向にいるかなど付加的な情報を得ることも可能である。
センサによって検出した物理量SENSDはセンサデータ格納制御部(SDCNT)によって、記憶部STRGに格納される。物理量は無線通信制御部TRCCによって送信パケットに加工され、送受信部TRSRによって基地局GWに対し送信される。
このとき、記憶部STRGから物理量SENSDを取り出し、無線送信するタイミングを生成するのが通信タイミング制御部TRTMGである。通信タイミング制御部TRTMGは、複数のタイミングを生成する複数のタイムベースを持つ。
記憶部に格納されるデータには、現在センサによって検出した物理量SENSDの他、過去に蓄積した物理量CMBDや、名札型センサノードの動作プログラムであるファームウェアを更新するためのデータFMUDがある。
本実施例の名札型センサノード(NN)は、外部電源接続検出回路(PDET)により、外部電源(EPOW)が接続されたことを検出し、外部電源検出信号(PDETS)を生成する。外部電源検出信号(PDETS)によって、タイミング制御部(TRTMG)が生成する送信タイミングを切り替えるタイムベース切替部(TMGSEL)、または無線通信されるデータを切り替えるデータ切替部(TRDSEL)が本実施例の特有の構成である。図2(a)では一例として、送信タイミングとして、タイムベース1(TB1)とタイムベース(TB2)の2つのタイムベースを、外部電源検出信号PDETSによってタイムベース切替部TMGSELが切り替える構成を図示している。また、通信されるデータとして、センサから得た物理量データSENSDと、過去に蓄積した物理量データCMBDと、ファームウェア更新データFMUDとから、外部電源検出信号PDETSによってデータ切替部TRDSELが切り替える構成を図示している。
照度センサ(LS1F、LS1B)は、それぞれ名札型センサノード(NN)の前面と裏面に搭載される。照度センサLS1FとLS1Bにより取得されるデータは、センサデータ格納制御部SDCNTによって記憶部STRGに格納されると同時に、裏返り検知部(FBDET)によって比較される。名札が正しく装着されているときは、前面に搭載されている照度センサLS1Fが外来光を受光し、裏面に搭載されている照度センサLS1Bは名札型センサノード本体と装着者との間に挟まれる位置関係となるため、外来光を受光しない。このとき、LS1Bで検出される照度より、LS1Fで検出される照度の方が大きな値を取る。一方で、名札型センサノードが裏返った場合、LS1Bが外来光を受光し、LS1Fが装着者側を向くため、LS1Fで検出される照度より、LS1Bで検出される照度の方が大きくなる。
ここで、LS1Fで検出される照度と、LS1Bで検出される照度を裏返り検知部FBDETで比較することで、名札ノードが裏返って、正しく装着していないことが検出できる。FBDETで裏返りが検出されたとき、スピーカSPにより警告音を発生して装着者に通知する。
マイクロホン(MIC)は、音声情報を取得する。音声情報によって、「騒々しい」又は「静か」等の周囲の環境を知ることができる。さらに、人物の声を取得・分析することによって、コミュニケーションが活発か停滞しているのか、相互に対等に会話をやり取りしているか一方的に話しているのか、怒っているのか笑っているのか、などの対面コミュニケーションを分析することができる。さらに、人物の立ち位置等の関係で赤外線送受信器TRIRが検出できなかった対面状態を、音声情報及び加速度情報によって補うこともできる。
マイクMICで取得される音声は、音声波形及び、それを積分回路AVGで積分した信号の両方を取得する。積分した信号は、取得した音声のエネルギーを表す。
三軸加速度センサ(ACC)は、ノードの加速度すなわちノードの動きを検出する。このため、加速度データから、名札型センサノードを装着した人物の動きの激しさや、歩行などの行動を解析することができる。さらに、複数の名札型センサノードが検出した加速度の値を比較することによって、それらの名札型センサノードを装着した人物間のコミュニケーションの活性度や相互のリズム、相互の相関等を解析できる。
本実施例の名札型センサノードでは、三軸加速度センサACCで取得されるデータは、センサデータ格納制御部SDCNTによって記憶部STRGに格納されると同時に、上下検知回路UDDETによって名札の向きを検出する。これは、三軸加速度センサで検出される加速度は、装着者の動きによる動的な加速度変化と、地球の重力加速度による静的加速度の2種類が観測されることを利用している。
表示装置LCDDは、名札型センサノードを胸に装着しているときは、装着者の所属、氏名などの個人情報を表示する。つまり、名札として振舞う。一方で、装着者が名札型センサノードを手に持ち、表示装置LCDDを自分の方に向けると、名札型センサノードの転地が逆になる。このとき、上下検知回路UDDETによって生成される上下検知信号UDDETSにより、表示装置LCDDに表示される内容と、ボタンの機能を切り替える。本実施例では、上下検知信号UDDETSの値により、表示装置LCDDに表示させる情報を、表示制御DISPによって生成される赤外線アクティビティ解析(ANA)による解析結果と、名札表示DNMとを切り替える例を示している。
赤外線送受信器(TRIR)がノード間で赤外線IDを送受信することによって、名札型センサノードが他の名札型センサノードと対面したか否か、すなわち、名札型センサノード)を装着した人物が他の名札型センサノードを装着した人物と対面したか否かが検出される。このため、名札型センサノードは、人物の正面部に装着されることが望ましい。上述の通り、名札型センサノードは、さらに、加速度センサ(ACC)等のセンサを備える。名札型センサノードにおけるセンシングのプロセスが、図1における組織ダイナミクスデータ取得(BMA)に相当する。
名札型センサノードは多くの場合には複数存在し、それぞれが近い基地局(GW)と結びついてパーソナルエリアネットワーク(PAN)を形成している。
名札型センサノード(NN)の温度センサ(THM)は名札型センサノードのある場所の温度を、照度センサ(LS1F)は名札型センサノード(NN)の正面方向などの照度を取得する。これによって、周囲の環境を記録することができる。例えば、温度及び照度に基づいて、名札型センサノード(NN)が、ある場所から別の場所に移動したこと等を知ることもできる。
装着した人物に対応した入出力装置として、ボタン1〜3(BTN1〜3)、表示装置(LCDD)、スピーカ(SP)等を備える。
記憶部(STRG)は、具体的にはハードディスク、フラッシュメモリなどの不揮発記憶装置で構成され、名札型センサノード(NN)の固有識別番号である端末情報(TRMT)、センシングの間隔、及び、ディスプレイへの出力内容等の動作設定(TRMA)を記録している。この他にも記憶部(STRG)は一時的にデータを記録することができ、センシングしたデータを記録しておくために利用される。そして、保存データ領域がなくなった場合には、センサデータ格納制御部により、センシングデータと対応づけて記録される時刻に基づいて古いデータから順に削除され、新しいデータが優先して保存される。
通信タイミング制御部(TRTMG)は、時刻情報を保持し、一定間隔でその時刻情報を更新する時計である。時間情報は、時刻情報が他の名札型センサノードとずれることを防ぐために、基地局(GW)から送信される時刻情報GWCSDによって定期的に時刻を修正する。
センサデータ格納制御部(SDCNT)は、記憶部(STRG)に記録された動作設定(TRMA)に従って、各センサのセンシング間隔などを制御し、取得したデータを管理する。
時刻同期は、基地局(GW)から時刻情報を取得して時計を修正する。時刻同期は、後述するアソシエイトの直後に実行されてもよいし、基地局(GW)から送信された時刻同期コマンドに従って実行されてもよい。
無線通信制御部(TRCC)は、データを送受信する際に、送信間隔の制御、及び、無線の送受信に対応したデータフォーマットへの変換を行なう。無線通信制御部(TRCC)は、必要であれば、無線でなく有線による通信機能を持ってもよい。無線通信制御部(TRCC)は、他の名札型センサノード(NN)と送信タイミングが重ならないように輻輳制御を行なうこともある。
アソシエイト(TRTA)は、図2(b)に示す基地局(GW)とパーソナルエリアネットワーク(PAN)を形成するためのリクエストTRTAQと、その応答TRTARを送受信し、データを送信すべき基地局(GW)を決定する。アソシエイト(TRTA)は、名札型センサノード(NN)の電源が投入されたとき、及び、名札型センサノード(NN)が移動した結果それまでの基地局(GW)との送受信が絶たれたときに実行される。アソシエイト(TRTA)の結果、名札型センサノード(NN)は、その名札型センサノード(NN)からの無線信号が届く近い範囲にある一つの基地局(GW)と関連付けられる。
送受信部(TRSR)は、アンテナを備え、無線信号の送信及び受信を行なう。必要があれば、送受信部(TRSR)は、有線通信のためのコネクタを用いて送受信を行なうこともできる。送受信部TRSRによって送受信されるデータTRSRDは、基地局(GW)との間でパーソナルエリアネットワーク(PAN)を介して転送される。
図2(b)に示す基地局(GW)は、名札型センサノード(NN)とセンサネットサーバ(SS)を仲介する役目を持つ。無線の到達距離を考慮して、居室・職場等の領域をカバーするように複数の基地局(GW)が配置される。
基地局(GW)は、送受信部(BASR)、記憶部(GWME)、時計(GWCK)及び制御部(GWCO)を備える。
送受信部(BASR)は、名札型センサノード(NN)からの無線を受信し、基地局(GW)への有線又は無線による送信を行なう。さらに、送受信部(BASR)は、無線を受信するためのアンテナを備える。
記憶部(GWME)は、ハードディスク、フラッシュメモリのような不揮発記憶装置で構成される。記憶部(GWME)には、少なくとも動作設定(GWMA)、データ形式情報(GWMF)、端末管理テーブル(GWTT)、及び基地局情報(GWMG)が格納される。動作設定(GWMA)は、基地局(GW)の動作方法を示す情報を含む。データ形式情報(GWMF)は、通信のためのデータ形式を示す情報、及び、センシングデータにタグを付けるために必要な情報を含む。端末管理テーブル(GWTT)は、現在アソシエイトできている配下の名札型センサノード(NN)の端末情報(TRMT)、及び、それらの名札型センサノード(NN)を管理するために配布しているローカルIDを含む。基地局情報(GWMG)は、基地局(GW)自身のアドレスなどの情報を含む。また、記憶部(GWME)には名札型センサノードの更新されたファームウェア(GWFW)を一時的に格納する。
記憶部(GWME)には、さらに、制御部(GWCO)中の中央処理部CPU(図示省略)によって実行されるプログラムが格納されてもよい。
時計(GWCK)は時刻情報を保持する。一定間隔でその時刻情報は更新される。具体的には、一定間隔でNTP(Network Time Protocol)サーバ(TS)から取得した時刻情報によって、時計(GWCK)の時刻情報が修正される。
制御部(GWCO)は、CPU(図示省略)を備える。CPUが記憶部(GWME)に格納されているプログラムを実行することによって、センシングデータセンサ情報の取得タイミング、センシングデータの処理、名札型センサノード(NN)やセンサネットサーバ(SS)への送受信のタイミング、及び、時刻同期のタイミングを管理する。具体的には、CPUが記憶部(GWME)に格納されているプログラムを実行することによって、無線通信制御・通信制御部(GWCC)、端末管理情報修正(GWTF)、アソシエイト(GWTA)、時刻同期管理(GWCD)及び時刻同期(GWCS)等の処理を実行する。
無線通信制御・通信制御部(GWCC)は、無線又は有線による名札型センサノード(NN)及びセンサネットサーバ(SS)との通信のタイミングを制御する。また、無線通信制御・通信制御部(GWCC)は、受信したデータの種類を区別する。具体的には、無線通信制御・通信制御部(GWCC)は、受信したデータが一般のセンシングデータであるか、アソシエイトのためのデータであるか、時刻同期のレスポンスであるか等をデータのヘッダ部分から識別して、それらのデータをそれぞれ適切な機能に渡す。
なお、無線通信制御・通信制御部(GWCC)は、記憶部(GWME)に記録されたデータ形式情報(GWMF)を参照して、送受信のために適した形式にデータを変換し、データの種類を示すためのタグ情報を付け加えるデータ形式変換(GWDF)を実行する。
アソシエイト(GWTA)は、名札型センサノード(NN)から送られてきたアソシエイト要求TRTAQに対する応答TRTARを送信し、各名札型センサノード(NN)に割り付けたローカルIDを送信する。アソシエイトが成立したら、アソシエイト(GWTA)は、端末管理テーブル(GWTT)を修正する端末管理情報修正(GWTF)を行なう。
時刻同期管理(GWCD)は、時刻同期を実行する間隔及びタイミングを制御し、時刻同期するように命令を出す。あるいは、この後説明するセンサネットサーバ(SS)が時刻同期管理(GWCD)を実行することによって、センサネットサーバ(SS)からシステム全体の基地局(GW)に統括して命令を送ってもよい。
時刻同期(GWCS)は、ネットワーク上のNTPサーバ(TS)に接続し、時刻情報の依頼及び取得を行なう。時刻同期(GWCS)は、取得した時刻情報に基づいて、時計(GWCK)を修正する。そして、時刻同期(GWCS)は、名札型センサノード(NN)に時刻同期の命令と時刻情報(GWCSD)を送信する。
図2(b)のセンサネットサーバ(SS)は、全ての名札型センサノード(NN)から集まったデータを管理する。具体的には、センサネットサーバ(SS)は、基地局(GW)から送られてくるデータをデータベースに格納し、また、アプリケーションサーバ(AS)及びクライアント(CL)からの要求に基づいてセンシングデータを送信する。さらに、センサネットサーバ(SS)は、基地局(GW)からの制御コマンドを受信し、その制御コマンドから得られた結果を基地局(GW)に返信する。
センサネットサーバ(SS)は、送受信部(SSSR)、記憶部(SSME)及び制御部(SSCO)を備える。時刻同期管理(GWCD)がセンサネットサーバ(SS)で実行される場合、センサネットサーバ(SS)は時計も必要とする。
送受信部(SSSR)は、基地局(GW)、アプリケーションサーバ(AS)及びクライアント(CL)との間で、データの送信及び受信を行なう。具体的には、送受信部(SSSR)は、基地局(GW)から送られてきたセンシングデータを受信し、アプリケーションサーバ(AS)又はクライアント(CL)へセンシングデータを送信する。
記憶部(SSME)は、ハードディスクやフラッシュメモリなどの不揮発記憶装置によって構成され、少なくとも、パフォーマンスデータベース(SSMR)、データ形式情報(SSMF)、センシングデータベース(SSDB)及び端末管理テーブル(SSTT)を格納する。さらに、記憶部(SSME)は、制御部(SSCO)のCPU(図示省略)によって実行されるプログラムを格納してもよい。更に、記憶部SSMEには、端末ファームウェア登録部(TFI)において格納された名札型センサノードの更新されたファームウェア(SSFW)を一時的に格納する。
パフォーマンスデータベース(SSMR)は、名札型センサノード(NN)から又は既存のデータから入力された、組織や個人に関する評価(パフォーマンス)を、時刻データと共に記録するためのデータベースである。パフォーマンスデータベース(SSMR)は、図1のパフォーマンスデータベース(PDB)と同じものである。このパフォーマンスデータは、パフォーマンス入力部(MRPI)から入力される。
データ形式情報(SSMF)には、通信のためのデータ形式、基地局(GW)でタグ付けされたセンシングデータを切り分けてデータベースに記録する方法、及び、データの要求に対する対応方法等が記録されている。後で説明するように、データ受信の後、データ送信の前には必ずこのデータ形式情報(SSMF)が通信制御部(SSCC)によって参照され、データ形式変換(SSDF)とデータ振り分け(SSDS)が行われる。
センシングデータベース(SSDB)は、各名札型センサノード(NN)が取得したセンシングデータ、名札型センサノード(NN)の情報、及び、各名札型センサノード(NN)から送信されたセンシングデータが通過した基地局(GW)の情報等を記録しておくためのデータベースである。加速度、温度等、データの要素ごとにカラムが作成され、データが管理される。また、データの要素ごとにテーブルが作成されてもよい。どちらの場合にも、全てのデータは、取得された名札型センサノード(NN)のIDである端末情報(TRMT)と、取得された時刻に関する情報とが関連付けて管理される。
端末管理テーブル(SSTT)は、どの名札型センサノード(NN)が現在どの基地局(GW)の管理下にあるかを記録しているテーブルである。基地局(GW)の管理下に新たに名札型センサノード(NN)が加わった場合、端末管理テーブル(SSTT)は更新される。
制御部(SSCO)は、中央処理部CPU(図示省略)を備え、センシングデータの送受信やデータベースへの記録・取り出しを制御する。具体的には、CPUが記憶部(SSME)に格納されたプログラムを実行することによって、通信制御(SSCC)、端末管理情報修正(SSTF)及びデータ管理(SSDA)等の処理を実行する。
通信制御部(SSCC)は、有線又は無線による基地局(GW)、アプリケーションサーバ(AS)及びクライアント(CL)との通信のタイミングを制御する。また、通信制御部(SSCC)は、上述の通り、送受信するデータの形式を、記憶部(SSME)内に記録されたデータ形式情報(SSMF)に基づいて、センサネットサーバ(SS)内におけるデータ形式、又は、各通信相手に特化したデータ形式に変換する。さらに、通信制御(SSCC)は、データの種類を示すヘッダ部分を読み取って、対応する処理部へデータを振り分ける。具体的には、受信されたデータはデータ管理(SSDA)へ、端末管理情報を修正するコマンドは端末管理情報修正(SSTF)へ振り分けられる。送信されるデータの宛先は、基地局(GW)、アプリケーションサーバ(AS)又はクライアント(CL)に決定される。
端末管理情報修正(SSTF)は、基地局(GW)から端末管理情報を修正するコマンドを受け取った際に、端末管理テーブル(SSTT)を更新する。
データ管理(SSDA)は、記憶部(SSME)内のデータの修正・取得及び追加を管理する。例えば、データ管理(SSDA)によって、センシングデータは、タグ情報に基づいてデータの要素別にデータベースの適切なカラムに記録される。センシングデータがデータベースから読み出される際にも、時刻情報及び端末情報に基づいて必要なデータを選別し、時刻順に並べ替える等の処理が行われる。
センサネットサーバ(SS)が、基地局(GW)を介して受け取ったデータを、データ管理(SSDA)によってパフォーマンスデータベース(SSMR)及びセンシングデータベース(SSDB)に整理して記録することが、図1における組織ダイナミクスデータ整列(BMB)に相当する。
図2(b)に示すアプリケーションサーバ(AS)は、センシングデータを解析及び処理する。アプリケーションサーバ(AS)は、センサネットサーバ(SS)およびクライアント(CL)とネットワーク(NW)で接続されている。
クライアント(CL)からの依頼を受けて、又は、設定された時刻に自動的に、解析アプリケーション(ASA)が起動する。解析アプリケーション(ASA)は、センサネットサーバ(SS)に依頼を送って、必要なセンシングデータを取得する。さらに、解析アプリケーション(ASA)は、取得したデータを解析し、解析されたデータをクライアント(CL)に返す。あるいは、解析アプリケーション(ASA)は、解析されたデータをそのまま解析データベース(ASMD)に記録しておいてもよい。そして、解析されたデータは、アプリケーションサーバ、クライアント端末、あるいはセンサノードの表示装置に表示される。このセンシングデータを解析して表示することが図1における解析(BMC)、表示(BMD)に相当する。
本発明のデータ管理方式の特徴について、図2(b)を用いて説明する。ノードからの送受信データ(TRSRD)には、センシングシーケンス番号範囲通知を含めることができる。センシングシーケンス番号範囲通知を受信した基地局は、そのままセンサネットサーバ(SS)へ転送する。センシングシーケンス番号範囲通知を受信したセンサネットサーバ(SS)はデータ管理(SSDA)部において、記憶部(SSME)部のセンシングデータベース(SSDB)を検索する。このセンシングデータベース(SSDB)においてデータ欠損が見つかった場合、データ管理(SSDA)部は、その欠損データを指定し、センサノードに対してその欠損データを再送するよう命令を発行する。
<ビジネス顕微鏡名札型センサノードの外観>
図3は、名札型センサノードの構造の一実施例を示す外観図である。名札型センサノードはストラップ取り付け部NSHにネックストラップまたはクリップを取り付け、人の首または胸に装着して使用する。
ストラップ取り付け部NSHがある面を上面、対向する面を下面と定義する。また、名札型センサノードを装着した際に相手方に向く面を前面、前面に対向する面を裏面と定義する。さらに、名札型センサノード前面から見て左側に位置する面を左側面、左側面に対向する面を右側面と定義する。同図(a)は上面図、同図(b)は前面図、同図(c)は下面図、同図(d)は裏面図、同図(e)は左側面図を示している。
図3(b)の前面図に示すとおり、名札型センサノードの前面には液晶表示装置(LCDD)が配置される。本液晶表示装置に表示される内容は、後述するとおり相手方に向いている際には装着者の所属や名前などの名札としての表示Bを、装着者の方に向いている際には、装着者向けの組織アクティビティフィードバックデータが表示される。
名札型センサノードの表面の材質は透明であり、内部に挿入したカードCRDがケース材質を通して外から見えるようにする。名札型センサノードの内部に挿入したカード(CRD)を交換することにより名札表面のデザインを変更することができる。
以上により、本名札型センサノードは一般の名札とまったく同様に人間に装着でき、なんら装着者に違和感を感じさせること無くセンサによる物理量の取得を行うことを可能にする。
同図(a)、(b)の上面図、前面図中のLEDランプLED1、LED2は、装着者および装着者に対面する人間に名札型センサノードの状態を通知するために使用される。LED1、LED2は前面及び上面に導光され、名札型センサノードを装着した状態で、点灯状態を装着者と、装着者と対面する者の双方から視認することができる。
名札型センサノードは先に説明したようにスピーカSPを内蔵し、装着者および装着者に対面する人間にブザーや音声で名札型センサノードの状態を通知するために使用される。マイクMICは、名札型センサノード装着者の発話及び周囲の音を取得する。
照度センサLS1F、LS1Bは、それぞれ名札型センサノード前面と裏面にそれぞれ配置される。LS1F、LS1Bで取得される照度値から、装着した名札型センサノードが裏返っていることを検出し、装着者に通知する。
同図(e)から明らかなように、名札型センサノード左側面には、BTN1、BTN2、BTN3の3個のボタンが配置され、無線通信の動作モードの変更や、液晶表示画面の切り替えを行う。
名札型センサノードの下面には、名札型センサノードの電源ON/OFFを切り替える電源スイッチPSW、名札型センサノードの起動プログラムをリセットするためのリセットボタンRBTN、クレイドルを接続するためのクレイドルコネクタCRDIF、外部拡張コネクタEXPTを備える。クレイドルとは、充電器の機能を有するものであり、名札型センサノードがクレイドルに接続されると、外部から電源が常時供給される。なお、本実施例では、クレイドルは、基地局の無線通信圏内にあり、周囲に無線通信の障害となる障害物がないような無線通信状態がよい場所に設置されている。
名札型センサノードの前面には、複数の赤外線送受信部TRIR1〜4を配置する。赤外線送受信部を複数備えることが本実施例の名札型センサノードに特有な構造である。名札型センサノード自身の識別番号(TRMT)を赤外線によって間欠的に送信し、また対面者の装着する名札型センサノードが送信する識別番号を受信する機能を持つ。これにより、いつ、どの名札型センサノードが対面したかが記録され、装着した人間同士の対面状況が検出できる。図3に示す実施例では、TRIR1〜4の4個の赤外線送受信部をセンサノード上部に配置した例を示している。
図4は、本発明の第1の実施形態におけるシステムブロック図である。図4の特徴は、各センサノードが、複数基地局のいずれかと無線通信を行うことである。この構成によって、センサノードの現在位置情報を基地局単位で取得でき、1台あたりの基地局の負荷を軽減することができる。
図4の実施形態は、複数のセンサノードSN(SN1、SN2、SN3、SN4)と、複数のクレイドルCR(CR1、CR2、CR3、CR4)と、基地局BS(BS1、BS2)、イントラネット/インターネットNW、サーバSEVERから構成される。センサノードSNと基地局BSの間は、無線通信WRで接続される。基地局とサーバ間のイントラネット/インターネットNWは、有線または無線通信である。
センサノードは、一定周期毎にセンシングを行う。センシングは、例えば加速度の場合、2秒間に50Hzで3軸x、y、z方向のサンプリングを行う。サンプリング値は、例えばx、y、zの順で取得し、次に時系列で取得する。また、最初にサンプリングした時刻をそのセンシングのタイムスタンプ値とする。センシングしたデータは、すべてセンサノードに搭載したメモリに格納する。センシングの後、センサノードはセンシングデータを無線送信用のフレーム内に格納する。
図5は、本発明におけるセンシングシーケンス番号の振り方の例である。本実施例では、シーケンス番号とセンシングシーケンス番号を別個に設けることを特徴とする。これにより、センシングデータの欠損が生じた場合に、管理サーバはフレーム単位の欠損であるか、1周期のデータ全体の欠損であるかを区別することができる。これにより、管理サーバが欠損データの検索に要する時間を短縮でき、処理負荷を軽減することができる。
具体的には、所定の周期で間欠動作を行うセンサノードは、同一周期にセンシングしたデータには同一のセンシングシーケンス番号を振る。センシングシーケンス番号は、センシング周期毎に1ずつ値を大きくする。
1周期の間のセンシングデータ量は、本実施例で無線送信単位となる1フレームのデータ量を超える場合がある。その場合のセンシングデータは、フレームを分割して無線送信する。この時、各無線フレームに含まれるセンシングシーケンス番号は、同一周期間のセンシングであるため、同一のセンシングシーケンス番号が振られる。
センサノードは、複数タイプのセンサを搭載し、センシングを行っている。図5に示した例では、赤外線、加速度、音声エネルギ、音声ゼロクロス(音声データのスカラー量が0付近の所定値を通過する値)の4タイプのセンシングデータを送信している。このうち、赤外線は1フレーム、それ以外は、加速度は5フレーム、音声エネルギは2フレーム、音声ゼロクロスは2フレームといった形で分割送信している。この時、すべてのフレームのセンシングシーケンス番号には同一値“1”を入れることになる。また、シーケンス番号は無線送信フレーム毎に1ずつ増やす。従って、1周期目の1フレームから10フレームに対し、シーケンス番号はそれぞれ1から10となる。2周期目以後も同様となる。
図6において、本実施形態のシステム要素毎の動作を説明する。センサノードは間欠的に動作し、1周期において観測したデータを無線フレーム内に格納する。無線フレームには、センシングデータの他、センシングデータの種類、センシングデータのシーケンス番号、無線送信のシーケンス番号、センサノードの固有ID、タイムスタンプ等が含まれる。
センサノードは、センシングや無線送信を行っていない時間帯は、センサ部や無線部マイコンなどをスリープモード(休眠状態)にさせる。タイマにより一定時間経過したときに、マイコンなどを通常モードに復帰させ(起動状態)、センシングや無線通信を行う。
図6では、1周期の間に観測したセンシングデータを、5フレーム(6−01、6−02、6−03、6−04、6−05)に分割して無線送信する例を示している。この5フレームは、センシングデータのシーケンス番号は同一となり、無線送信のシーケンス番号は送信順に1ずつ昇順に増加している。
この無線送信が成功したか否かは、基地局無線部(6−RFGW1)が返送するAcknowledgment信号(センシングデータを受信したことを示す信号)をセンサノードが受信したか否かで判定する。センサノードが無線送信を行ったにもかかわらず、一定時間経過後もセンサノードが基地局からのAcknowledgment信号を受信しなかった場合、センサノードはその無線送信が失敗したと判定し、送信失敗フラグを付与し、その無線フレームのデータをメモリに格納する。ここで、送信失敗フラグとは、基地局からのAcknowledgment信号を受信できなかった否かを示すデータ、つまり、無線送信を失敗したか否かを示すデータである。ただし、センサノードは無線送信に成功した場合も無線フレームのデータをメモリに格納する。その時は、送信失敗フラグは付与せず、これと区別する。
この5フレーム分割無線送信は、各分割送信の時間間隔が通常(例えば10分に1回センシングを行って無線送信する場合)の無線送信より短いため、通常より無線送受信に失敗する確率が高くなる。ここでは、3分割目のフレーム(6−03)が送信失敗した場合を例として説明する。
センサノードが送信した無線フレームは、基地局無線部が受信する。基地局無線部が受信したこの無線フレームは、基地局ホスト(6−HGW1)に転送される。なお、図6では、基地局の機能として、センサノードと無線通信を行う基地局無線部、センシングデータの処理や管理等を行う基地局ホストと別々の装置で構成される例を示しているが、一体の装置で構成することもできる。
基地局ホストは、同一センシングシーケンス番号が付与された同一センシングデータの種類の分割フレームを結合する。図6では、1分割目のフレーム(6−11)と2分割目のフレーム(6−12)を結合してフレーム(6−21)とし、4分割目のフレーム(6−14)と5分割目のフレーム(6−15)を結合してフレーム(6−24)とする。これは、無線通信の制約上、1フレームで送信できなかったセンシングデータをまとめて管理するためである。なお、管理サーバにおいてフレームの結合処理を行うことも可能である。
同一センシングシーケンス番号が振られた分割フレームのうち、基地局ホストに到達しなかった3分割目のフレーム(6−13)に関して、そのフレーム部分のセンシングデータ領域にはNULL値を代入して分割フレームを結合する。この時、結合後のフレームには、データが欠損していることを示すNULLフラグ(6−10)を付与する。NULLフラグは、それが認識できればどんな値を入れてもよい。ここでは、無線フレームにおける各フィールドの最小サイズは1Byteを想定しているので、“FF”の値とする。
基地局ホストにおいては、センサノードから受信したデータに、その基地局ホストのIPアドレスおよび、基地局無線部との通信に用いているポート番号情報を付加する。これによって、センサノードのデータがどの基地局無線部およびどの基地局ホストを通過したかを知ることができる。このように、センサノードから送信される分割フレームは、結合され、上記情報を付加されて、管理サーバに送信される。
管理サーバは、基地局ホストから送信されたデータを受信する。その受信時刻を付与した後、DBのテーブルに1行毎に格納する。DBのテーブルは、センシングデータの種類毎、またセンシング時刻の日付毎に分ける。図6の例では、このセンシングデータには一部NULLが含まれる。
センサノード(6−SN3)をクレイドル(6−CR1)に接続させたとき、クレイドルに接続されたことをトリガに、メモリに保存しているセンシングデータのうち送信失敗フラグが付与されているセンシングデータを、再度送信する。
この送信は、センシング時刻が古いデータから順番に連続的に送信する。この一連の再送信を、以下、ノード主導まとめ送りと呼ぶ(6−3)。ノード主導まとめ送りにおいては、同一センシング周期の分割送信の際に、送信失敗したフレームが1個以上あれば、その分割フレームをすべて再度送信する。ノード主導まとめ送りで送信されるデータには、ノード主導まとめ送り送信フラグを付与する。
このように、クレイドルに接続されたことをトリガとしてセンシングデータをまとめて送信することにより、無線通信状態がよい環境で送信することができる。いいかえれば、基地局との無線通信環境が良好状態になったことを、クレイドルとの接続により検知してまとめ送りを開始する。さらには、クレイドルと接続されることにより外部電源から常時給電されるため、まとめ送りの最中に電源が不足することはなく、確実にセンシングデータを送信することができる。
ノード主導まとめ送りで送信されるデータは、通常データと同様に、基地局無線部(6−RFGW2)から基地局ホストを経由して管理サーバへ送信される。管理サーバは、ノード主導まとめ送りで送信されたデータを、DBのテーブルに格納する。
ノード主導まとめ送りが終了した時、センサノードはセンシングシーケンス番号範囲通知を無線送信する(6−4)。これは、センサノードがどのデータを保持しているかを管理サーバに知らせるためのものであり、センサノードが保持している最新センシングシーケンス番号値と最古センシングシーケンス番号値で指定する。このセンシングシーケンス番号の範囲を受信した管理サーバは、そのセンシングシーケンス番号の範囲内のセンシングデータをDBから検索する。
管理サーバは、DBのセンシングシーケンス番号の範囲内の欠損データを、直前に受信したセンシングシーケンス番号範囲通知に含まれるセンサノードIDをキーに検索する。欠損データは、センシングシーケンス番号の連続・非連続、および、NULLフラグ有無によって判定する。
管理サーバは、欠損データ(6−23)に関して、再送信命令をセンサノードに対し発行する。欠損データの指定は、センシングシーケンス番号で行う。すなわち、欠損が含まれるデータに対応するセンシングシーケンス番号を指定して、管理サーバは再送信命令を発行する。図6では、6−23がDBのテーブルに格納されたセンシングデータの中の欠損部である。この6−23を含むDBのテーブルの行には、NULLフラグ(6−20)が含まれている。このため、管理サーバは、この行のセンシングデータを再送信するよう、サーバ主導まとめ送り要求をセンサノードに対して発行する(6−5)。
この要求を受信したセンサノードは、要求のあったセンシングシーケンス番号のセンシングデータを再度送信する。この一連の再送信を、以下、サーバ主導まとめ送りと呼ぶ(6−6)。
センシングシーケンス番号の範囲内のセンシングデータに欠損がなくなるまで、サーバ主導まとめ送り(6−4)〜(6−6)を繰り返す。
センシングシーケンス番号の範囲内のセンシングデータに欠損がなくなった時、サーバ主導まとめ送りを終了するため、管理サーバはサーバ主導まとめ送り完了通知を発行する(6−7)。サーバ主導まとめ送り完了通知を受信したセンサノードは、スリープ状態に移行する。
このように、あらかじめ、無線送信済みのデータのうち、ノードが基地局からAcknowledgment信号を受信できなかったデータを再度無線送信して大部分のデータ欠損を先に補完しておき、その後管理サーバがデータ欠損を検索し、それでもデータ欠損がある場合はそのデータ欠損の再送命令を端末に対して発行することによって、通信量や管理サーバの負荷を増大させることなく、データロスを回避することが可能となる。
図7は、センシングデータのデータ欠損分布の例を示している。ここではどのデータが欠損しているかを表すための最小単位を2Byteとしている。
図7(a)は、ある時間帯に連続してデータが欠損している場合である。この時は、管理サーバがセンサノードに再送信命令を発行する際、どのデータが欠損しているかを表すためには、欠損開始のセンシングシーケンス番号と欠損終了のセンシングシーケンス番号の値のみ指定すればよい。すなわち、どのデータが欠損しているかを表すために、4Byteのデータサイズが必要となる。
一方、図7(b)は、データが不連続にN箇所で欠損している場合である。この時は、管理サーバがセンサノードに再送信命令を発行する際、どのデータが欠損しているかを表すためには、欠損開始のセンシングシーケンス番号と欠損終了のセンシングシーケンス番号の組がN個必要となる。すなわち、データ欠損が不連続に分布している場合、欠損データを指定するためには、4Byte×Nのデータサイズが必要となり、多くのデータ量が必要となる。
ビジネス顕微鏡システムに代表されるセンサネットワークシステムでは、多数の人がセンサノードを所持しており、かつ、図6で説明したように一つのセンサノードから無線送信されるデータ量は多くなる。一方で、センサノードを所持する人が移動して基地局の無線通信領域を出入りすることにより、無線通信のデータ通信量はランダムに変動する。そのため、実際のデータ欠損分布の傾向は、図7(a)より図7(b)により近い。
このように、図7(b)のように非連続にデータ欠損が分布している時、すべての欠損データを管理サーバからのコマンドにより補完しようとすると、管理サーバの処理負荷が大きくなり、かつ、通信量が増大して通信帯域に影響を及ぼす。そこで、無線通信環境が良好状態になった場合にセンサノードがバックアップとして記録したセンシングデータを送信することにより大部分のデータ欠損を補完し、その後サーバから欠損データの補完命令を送信する。当該補完命令を受けたセンサノードが欠損のあるセンシングデータを送信することにより、通信量や負荷を増大させることなく、データ欠損部を補完することが可能となる。
図8は、本実施形態におけるまとめ送りに関するセンサノードの状態遷移図である。通常動作状態(8−1)において、クレイドルに差されるとクレイドル接続フラグ(クレイドルに接続されたことを示すデータ)を無線送信した後(8−2)、ノード主導まとめ送り状態(8−3)に遷移する。
この後、ノードは自身のメモリに保存しているセンシングデータのうち、最新のセンシングシーケンス番号と最古のセンシングシーケンス番号を無線送信する(センシングシーケンス番号範囲通知)(8−4)。
この後、センサノードは待機状態(8−5)に遷移する。待機状態(8−5)において、一定時間内にまとめ送り要求コマンドを受信した場合は、コマンド応答を返信し(8−6)、サーバ主導まとめ送り状態(8−7)に遷移する。待機状態(8−5)において、一定時間内にまとめ送り要求コマンドを受信しなかった場合は、再度センシングシーケンス番号範囲通知を無線送信する(8−8)。この時、残リトライ回数を1減少させる。ここで、残リトライ回数とは、センシングシーケンス番号範囲通知の再送信を許容する回数であり、予めセンサノードに設定されている。
サーバ主導まとめ送り状態(8−7)において、まとめ送りデータの送信が完了した時点で、残リトライ回数を1減少させ、センシングシーケンス番号範囲通知を無線送信後(8−9)、待機状態(8−5)に遷移する。
残リトライ回数が0になった時、または、ノードがサーバ主導まとめ送り完了通知を受信した時、管理サーバに対してサーバ主導まとめ送り終了通知を送信し(8−10)、ノードは待機状態(8−5)からスリープ状態(8−11)に遷移する。このように、残リトライ回数が0になった時はスリープ状態に遷移することにより、他のセンサノードと管理サーバとの通信への影響をなくすことができる。つまり、他のセンサノードの無線帯域を確保しうる。
スリープ状態(8−11)において、クレイドルに接続されている間は定期的に起きて、ハートビート無線送信を行う(8−12)。これにより、センサノードが正常な状態であることを基地局、管理サーバに通知することができる。クレイドルから抜かれた場合は、クレイドル非接続フラグ(クレイドルから接続解除されたことを示すデータ)を送信後(8−13)、通常動作状態(8−1)に遷移する。
このように、ノード主導まとめ送り完了後、センシングシーケンス番号範囲通知を送信することによって、センサノードが現在保持しているデータを特定することが可能となり、管理サーバはデータ欠損を検索する範囲を限定できる。
図9は、本実施形態におけるまとめ送りに関する管理サーバの状態遷移図である。待機状態(9−1)において、センシングシーケンス番号範囲通知を受信した後、DBチェック状態(9−2)に遷移する。DBチェック状態においては、センサノードからのセンシングシーケンス番号範囲通知で指定された範囲内のセンシングシーケンス番号について、DBのセンシングデータの欠損を検索する。指定された範囲内にデータ欠損が全くなかった場合(9−3)は、まとめおくり終了通知発行状態(9−4)に遷移し、サーバ主導まとめ送り終了通知を無線送信した後、待機状態(9−1)に遷移する。
DBチェックの結果、データ欠損が存在し、かつ、その時点での基地局への発行中のコマンドが所定数(例えば7個)以上ある場合(9−5)、コマンド空き待ち状態(9−6)に遷移する。コマンド空き待ち状態において、発行中のコマンドが所定数(例えば7個)未満になった時(9−7)、まとめ送り要求コマンド発行状態に遷移する(9−8)。また、DBチェックの結果、データ欠損が存在し、かつ、その時点での基地局への発行中のコマンドが所定数(例えば7個)未満の場合には(9−9)、まとめ送り要求コマンド発行状態に遷移する。このように、発行中のコマンドが所定数以上の場合には、コマンド空き状態に遷移することにより、管理サーバから基地局、センサノードへのコマンド送信に際して通信輻輳を回避するとともに、センサノードへのコマンドを確実に送達しうる。
まとめ送り要求コマンド発行状態において、まとめ送り要求コマンドを発行した後、コマンド応答受信待ち状態(9−10)に遷移する。コマンド応答受信待ち状態において、センサノードから一定時間内にまとめ送り要求コマンド応答を受信した場合(9−11)、まとめ送り受信状態(9−12)に遷移する。一定時間内にまとめ送り要求コマンド応答を受信しない場合には、まとめ送り要求コマンド発行状態に遷移し(9−13)、再度まとめ送り要求コマンドを発行する。
まとめ送り受信状態において、センサノードからまとめ送りデータを受信した場合、そのデータをDBに格納する(9−14)。一方、センサノードからセンシングシーケンス番号範囲通知を受信したとき(9−15)、残リトライ回数を1減少させ(9−16)、残リトライ回数が0より大きい場合には、DBチェック状態に遷移させる。残リトライ回数が0の場合は、まとめ送り終了通知発行状態(9−4)に遷移する。
まとめ送り受信状態(9−12)において、一定時間経過した後もまとめ送りデータを受信しない場合(9−17)、残リトライ回数を1減少させ(9−18)、残リトライ回数が0より大きい場合は、まとめ送り要求コマンド発行状態(9−8)に遷移する。残リトライ回数が0の場合は、まとめおくり終了通知発行状態(9−4)に遷移し、サーバ主導まとめ送り終了通知を無線送信した後、待機状態(9−1)に遷移する。ここで、残リトライ回数とは、DBチェックの再実施、あるいは、まとめ送り要求コマンドの再発行を許容する回数であり、予め管理サーバに設定されている。
このように、管理サーバは、センサノードから送信されるセンシングシーケンス番号範囲に基づいてDBを確認し、欠損データがある場合には、センサノードに当該欠損データを再送信させるためのコマンドを送信する。これにより、欠損のあるセンシングデータを補完することができる。さらに、1回のまとめ送り要求コマンドを発行する際に、残リトライ回数を1ずつ減少させて残リトライ回数が0になった時はまとめ送り終了通知を発行することによって、管理サーバはひとつのセンサノードのみとまとめ送りに関する通信を行い続けることを回避することが可能となる。つまり、他のセンサノードとの通信を確保しうる。
図10は、本実施形態におけるまとめ送りの正常時のシーケンス図である。ノードがクレイドルに差されると(10−1)、ノードはクレイドル接続フラグを無線送信する(10−2)。このデータは、DBに格納される(10−3)。
クレイドル接続フラグを無線送信した後(10−2)、ノードはノード主導まとめ送り(10−4)を行なう。このデータは、DBに格納される(10−5)。
ノード主導まとめ送り(10−4)を終了したノードは、センシングシーケンス番号範囲通知を無線送信する(10−6)。これを受信した管理サーバは、センシングシーケンス番号範囲通知に指定された範囲内のセンシングシーケンス番号のセンシングデータのデータ欠損をDBより検索する(10−7)。検索の結果、欠損していたデータのセンシングシーケンス番号を記録し、連続的なデータ欠損について欠損開始と欠損終了のセンシングシーケンス番号の組を含むまとめ送り要求コマンド(10−8)を作成する。
まとめ送り要求コマンド(10−8)を受信した基地局は、まとめ送り要求コマンド(10−8)を無線フォーマットのまとめ送り要求コマンド(10−9)に変換してセンサノードに送信する。
まとめ送り要求コマンド(10−9)を受信したノードは、まとめ送り要求コマンド応答(10−10)を基地局へ返送する。さらにこのとき、ノードはまとめ送り要求のあったセンシングシーケンス番号のセンシングデータに関して、図5に示すセンシングデータタイプごとにセンシング時刻が古いデータからまとめ送り(10−11)を行う。このまとめ送りデータはDBに格納される(10−12)。
このまとめ送りが一旦終了したら、ノードは、センシングシーケンス番号範囲通知(10−13)を無線送信し、残リトライ回数を1減少させる。これを受信した管理サーバは再度DBのデータ欠損をチェックする(10−14)。
ノードは、センシングシーケンス番号範囲通知の残リトライ回数が1になった時(10−15)、DBチェックを行う(10−16)。管理サーバは、DBをチェック後、まとめ送り要求コマンド(10−17)を送信する。まとめ送り要求コマンド(10−18)を受信したノードは、まとめ送り要求コマンド応答(10−19)を返答する。その後、送信要求のあったデータをまとめ送り(10−20)する。前記データを受信した管理サーバはDBにデータを格納する(10−21)。まとめ送りデータを完了したら、サーバ主導まとめ送り終了通知(10−22)を送信する。
このように、1回のまとめ送りが完了するたびに、センシングシーケンス番号範囲通知を行うことによって、ノードのまとめ送りシーケンスが終了したことを管理サーバに通知することができる。さらに、センシングシーケンス番号範囲通知を行うたびに残リトライ回数を1ずつ減少させ、残リトライ回数が0になったときにノード主導まとめ送りを終了させることにより、他のセンサノードと管理サーバとの通信への影響をなくすことができる。
図11は、本実施形態におけるまとめ送りのデータ欠損が正常に補完された場合のシーケンス図である。ノードをクレイドルに差されると(11−1)、ノードはクレイドル接続フラグを無線送信する(11−2)。このデータは、DBに格納される(11−3)。
クレイドル接続フラグを無線送信した後(11−2)、ノードはノード主導まとめ送り(11−4)を行なう。このデータは、DBに格納される(11−5)。
ノード主導まとめ送り(11−4)を終了したノードは、センシングシーケンス番号範囲通知(11−6)を無線送信する。これを受信した管理サーバは、センシングシーケンス番号範囲通知に指定された範囲内のセンシングシーケンス番号のセンシングデータのデータ欠損をDBより検索する(11−7)。検索の結果、欠損していたデータのセンシングシーケンス番号を記録し、連続的なデータ欠損について欠損開始と欠損終了のセンシングシーケンス番号の組を含むまとめ送り要求コマンド(11−8)を作成する。
まとめ送り要求コマンド(11−8)を受信した基地局は、まとめ送り要求コマンド(11−8)を無線フォーマットのまとめ送り要求コマンド(11−9)に変換してセンサノードに送信する。
まとめ送り要求コマンド(11−9)を受信したノードは、まとめ送り要求コマンド応答(11−10)を基地局へ返送する。さらにこのとき、ノードはまとめ送り要求のあったセンシングシーケンス番号のセンシングデータに関して、図5に示すセンシングデータタイプごとにセンシング時刻が古いデータからまとめ送り(11−11)を行う。このまとめ送りデータはDBに格納される(11−12)。
このまとめ送りが一旦終了したら、ノードは、センシングシーケンス番号範囲通知(11−13)を無線送信し、残リトライ回数を1減少させる。これを受信した管理サーバは再度DBのデータ欠損をチェックする(11−14)。
残リトライ回数が0でない場合でも、このデータ欠損チェックにおいて、データ欠損がなかった場合、サーバはノードに対し、サーバ主導まとめ送り終了通知(11−15)を発行する。サーバ主導まとめ送り終了通知(11−15)を受信したノードは、まとめ送りモードからスリープモードへ移行する。
このように、残リトライ回数が2以上であっても、DBを検索してそのデータ欠損が見つからなかった場合、管理サーバからノードに対してサーバ主導まとめ送り完了通知を送信することによって、その時点でまとめ送りシーケンスを終了することが可能となる。
図12は、本実施形態におけるまとめ送りのノードタイムアウト時のシーケンス図である。ノードがクレイドルに差されると(12−1)、ノードはクレイドル接続フラグを無線送信する(12−2)。このデータは、DBに格納される(12−3)。
クレイドル接続フラグを無線送信した後(12−2)、ノードはノード主導まとめ送り(12−4)を行なう。このデータは、DBに格納される(12−5)。
ノード主導まとめ送り(12−4)を終了したノードは、センシングシーケンス番号範囲通知を無線送信する(12−6)。これを受信した管理サーバは、センシングシーケンス番号範囲通知に指定された範囲内のセンシングシーケンス番号のセンシングデータのデータ欠損をDBより検索する(12−7)。検索の結果、欠損していたデータのセンシングシーケンス番号を記録し、連続的なデータ欠損について欠損開始と欠損終了のセンシングシーケンス番号の組を含むまとめ送り要求コマンド(12−8)を作成する。
まとめ送り要求コマンド(12−8)を受信した基地局は、まとめ送り要求コマンド(12−8)を無線フォーマットのまとめ送り要求コマンド(12−9)に変換する。
ただし、このとき基地局において遅延が発生し、一定時間経過してもまとめ送り要求コマンド(12−9)をノードが受信しなかった場合タイムアウトと判定して、残リトライ回数を1減少させ、ノードはセンシングシーケンス番号範囲通知イベント(12−10)を送信する。
このように、ノードにタイムアウトを設けることによって、ノードが管理サーバや基地局からの応答を待ち続ける状態を回避することが可能となる。これにより、基地局からセンサノードへのまとめ送り要求が遅延した場合であっても、データ欠損の補完処理を迅速かつ確実にしうる。
図13は、本実施形態におけるまとめ送りの管理サーバタイムアウト時のシーケンス図である。ノードをクレイドルに差されると(13−1)、ノードはクレイドル接続フラグを無線送信する(13−2)。このデータは、DBに格納される(13−3)。
クレイドル接続フラグを無線送信した後(13−2)、ノードはノード主導まとめ送り(13−4)を行なう。このデータは、DBに格納される(13−5)。
ノード主導まとめ送り(13−4)を終了したノードは、センシングシーケンス番号範囲通知(13−6)を無線送信する。これを受信した管理サーバは、センシングシーケンス番号範囲通知に指定された範囲内のセンシングシーケンス番号のセンシングデータのデータ欠損をDBより検索する(13−7)。検索の結果、欠損していたデータのセンシングシーケンス番号を記録し、連続的なデータ欠損について欠損開始と欠損終了のセンシングシーケンス番号の組を含むまとめ送り要求コマンド(13−8)を作成する。
まとめ送り要求コマンド(13−8)を受信した基地局は、まとめ送り要求コマンド(13−8)を無線フォーマットのまとめ送り要求コマンド(13−9)に変換してセンサノードに送信する。
まとめ送り要求コマンド(13−10)を受信したノードは、まとめ送り要求コマンド応答(13−10)を基地局へ返送し、まとめ送りデータを送信する(13−11)。
ただし、このとき基地局において遅延が発生し、一定時間経過してもサーバ主導まとめ送りデータ(13−11)(13−12)を管理サーバが受信しなかった場合、タイムアウトと判定して、残リトライ回数を1減少させ、管理サーバはまとめ送り要求コマンド(13−13)を送信する。
このように、管理サーバにタイムアウトを設けることによって、管理サーバがノードや基地局からの応答を待ち続ける状態を回避することが可能となる。これにより、基地局から管理サーバへのまとめ送りデータの送信が遅延した場合であっても、データ欠損の補完処理を迅速かつ確実にしうる。
図14は、センサノードから管理サーバに送信されるセンシングシーケンス番号範囲通知フォーマットの一例である。Application Headerは、アプリケーションの種別を表す。Data Typeは、データの種別を表す。Message Typeは、そのデータが観測データなのかコマンドなのかを表す。Sequence Numは、シーケンス番号を表す。異常が発生した場合に異常を示すデータとなる異常フラグ、リザーブ、まとめ送り残リトライ回数が格納される。
このように、最古センシングシーケンス番号と最新センシングシーケンス番号とを送信することによって、管理サーバはデータ欠損を検索する範囲を限定できる。
図15は、管理サーバからセンサノードに送信されるサーバ主導まとめ送り要求フォーマットの一例である。Application Headerはアプリケーションの種別を表す。Data Typeはデータの種別を表す。Message Typeはそのデータが観測データなのかコマンドなのかを表す。Sequence Numはシーケンス番号を表す。
センシングデータタイプは、まとめ送りを要求するセンシングデータの種別を表す。まとめ送り残リトライ回数は、残り後何回まとめ送りを実行するかを表す。分割フレーム数は、サーバ主導まとめ送り要求を無線フレームとして分割送信する際、分割フレームの何番目であるかを表す。分割フレーム総数は、分割フレームの合計個数を表す。センシングシーケンス番号組数は、開始センシングシーケンス番号と終了とセンシングシーケンス番号の組数の個数を表す。開始センシングシーケンス番号は、欠損データにおいて連続的なセンシングシーケンス番号の開始の値を表す。終了センシングシーケンス番号(15−12)は、欠損データにおいて連続的なセンシングシーケンス番号の終了の値を表す。
このように、開始センシングシーケンス番号と終了とセンシングシーケンス番号の組を無線フォーマットに含めることによって、欠損データを指定することが可能となる。
図16は、管理サーバからセンサノード、あるいは、センサノードから管理サーバに送信されるサーバ主導まとめ送り終了通知フォーマットの一例である。Application Headerはアプリケーションの種別を表す。Data Typeはデータの種別を表す。Message Typeはそのデータが観測データなのかコマンドなのかを表す。Sequence Numはシーケンス番号を表す。
このように、サーバ主導まとめ送り終了通知フォーマットにシーケンス番号を加えることによって、どのタイミングにおいてサーバ主導まとめ送り終了通知が発行されたかを知ることができる。
図17は、基地局からノードに対するまとめ送りの制御である。基地局には、複数ノードからのまとめ送りデータ(17−GRF)が集中する際、特に負荷が高くなる。基地局からまとめ送りを同時に行なうノード数を制限することによって、この負荷を軽減させる。
具体的には、基地局ホスト(17−HGW1)が同時にまとめ送りされているノード数を管理し、一定以上のノードからまとめ送りデータを受信した場合、いずれかのノードにまとめ送り休止命令(17−stop)を発行し、これを受信したノード(17−SN3)は一定時間動作を休止する。この操作によって、1基地局において同時にまとめ送りを行うノード数を制限することが可能となり、基地局の負荷を軽減することができる。さらに、管理サーバへの負荷もこのまとめ送り制御によって、一定以下に抑えることが可能となる。
このように、一基地局において、同時にまとめ送りを許容するノード数を制限することによって、基地局および管理サーバの負荷を低減することができる。
以上、本発明の実施形態について説明したが、本発明は上記実施形態に限定されるものでなく、種々変形実施可能であり、上述した各実施形態を適宜組み合わせることが可能であることは、当業者に理解されよう。
NN…名刺型センサノード、PDET…外部電源接続検出部、TRCC…無線通信制御部、TRSR…送受信部、PDETS…外部電源検出信号、GW…基地局、TS…NTPサーバ、SS…センサネットサーバ、AS…アプリケーションサーバ、CL…クライアント、HGW…基地局ホスト、RFGW…基地局無線部、SN…センサノード、CR…クレイドル、DB…データベース、GRF…まとめ送り。