以下、本発明に係るセンサデータ管理システムの一実施形態について、図面を用いて説明する。
本実施形態のセンサデータ管理システムは、図1に示すように、センサ101を有し、このセンサ101からのセンサデータを外部へ無線送信する複数のセンサ機器100と、各センサ機器100からのセンサデータを管理する管理サーバ200と、複数のセンサ機器100と管理サーバ200との間の通信を中継する中継装置300と、センサ機器100からのセンサデータに基づいて各種サービスを提供するサービス提供装置400と、を備えている。管理サーバ200とサービス提供装置400と中継装置300とは、ネットワークNを介して、通信可能に接続されている。
センサ機器100は、前述したセンサ101と、各種演算を実行するCPU102と、CPU102のワークエリアであるRAM103と、無線の搬送波処理を行うRF(Radio Frequency)処理部104と、無線アンテナ105と、表示部106と、スイッチ107a,107bと、センサ機器固有情報テーブル111が設定されているEEPROM110と、各種プログラムが格納されているROM120と、を有している。
スイッチ107a,107bとしては、電源の入切を行うための電源スイッチ107aと、ユーザIDの要求や消去のトリガーとなるユーザID処理指示スイッチ107bとがある。
ROM120には、管理サーバ200に対してユーザIDの送信を要求するためのユーザID要求プログラム121と、管理サーバ200に対してユーザIDの消去を要求すると共に、センサ機器100自身が保持しているユーザIDを消去するためのユーザID消去プログラム122と、センサ101からのセンサデータを管理サーバ200へ送るためのセンサデータ送信プログラム123とが、格納されている。さらに、図示されていないが、このROM120には、実際の送信処理や受信処理を行う通信プログラムも格納されている。
EEPROM110は、電気的にデータ消去可能な半導体メモリである。このEEPROM110に設定されているセンサ機器固有情報テーブル111には、図3に示すように、当該センサ機器100の機種を特定する機種ID「0001」が格納されている機種ID欄111aと、当該センサ機器100を一意に識別するためのセンサ機器ID「ABCDEF」が格納されている機器ID欄111bと、当該センサ機器100の無線識別子「00:01:02:03:04:05:06:07」が格納されている無線識別子欄111cと、当該センサ機器100を利用するユーザを一意に識別するユーザID「000000001」が格納されるセンサユーザID111dとが設けられている。これらの欄のうち、機種ID欄111a,機器ID欄111b、無線識別子欄111cのデータは、いずれも、ユーザによる利用開始前、例えば、当該センサ機器100の製造最終段階で格納される。また、センサユーザID欄111dのユーザID「000000001」は、後述するように、ユーザによる利用開始時に格納される。
中継装置300は、図2に示すように、ネットワークNとの通信インタフェース301と、各種演算を実行するCPU302と、CPU302のワークエリアであるRAM303と、複数のセンサ機器100との間の無線の搬送波処理を行うRF(Radio Frequency)処理部304と、無線アンテナ305と、表示部306と、中継装置固有情報テーブル311が設定されているEEPROM310と、パケット転送プログラム321が格納されているROM320と、を有している。
中継装置固有情報テーブル311には、図4に示すように、当該中継装置300を一意に識別するための機器ID「ZZZZZZ」が格納されている機器ID欄311aと、当該中継装置300の無線識別子「08:09:0A:0B:0C:0D:0E:0F」が格納されている無線識別子欄311bと、当該中継装置300のネットワーク識別子「08:09:0A:0D:0E:0F」が格納されている無線識別子欄311cと、当該中継装置300のIPアドレス「192.168.0.11」が格納されるIPアドレス欄311dと、サブネットマスク「255.255.255.0」が格納されているサブネットマスク欄311eと、デフォルゲートウェイ「192.168.0.254」が格納されているデフォルトゲートウェイ欄311fと、管理サーバ200のIPアドレス「153.234.12.167」が格納されている管理サーバIPアドレス欄311gとが設けられている。これらの欄のデータは、いずれも、中継装置300の設置時等に格納される。
管理サーバ200は、図1に示すように、各種演算を実行するCPU202と、CPU202のワークエリアであるRAM203と、ネットワークNとの通信インタフェース304と、ハードディスクドライブ装置等の記憶装置220と、を有している。
記憶装置220には、ユーザIDの登録処理を行うためのユーザID登録プログラム221と、センサ機器100からのユーザID要求に応答するためのユーザID要求応答プログラム222と、センサ機器100からのセンサデータ等のセンサ情報を管理するためのセンサ情報管理プログラム223と、実際の送信処理や受信処理を行う通信プログラム(図示されていない)とが、格納されている。なお、以上のプログラムをまとめると、センサデータ管理プログラムとなる。この記憶装置220には、さらに、センサ機器IDと関連付けてユーザIDが登録されるID要求テーブル211と、サービス提供装置400からのSOユーザIDと管理サーバ200自身が設定したセンサユーザIDとが関連付けて記憶されるID変換テーブル212と、センサ機器100からのセンサデータ等のセンサ情報が記憶されるセンサ情報テーブル213とが、設定されている。
ID要求テーブル211は、図5に示すように、センサ機器ID「ABCDEF」が格納される機器ID欄211aと、センサユーザID「000000001」が格納されるセンサユーザID欄211bと、センサ機器100からのユーザIDの登録及び消去に関する要求のコード「1」or「0」が格納される要求コード欄211cが設けられている。機器ID欄211aのセンサ機器ID「ABCDEF」は、該当センサ機器100の出荷時点等、該当センサ機器100がユーザに渡る前に格納される。センサユーザID欄211bのセンサユーザID「000000001」は、後述するように、サービス提供装置400からID登録要求があった時点で格納される。要求コード欄211cの要求コードは、後述するように、登録を意味する「1」か、消去を意味する「0」が格納される。
ID変換テーブル212には、図6に示すように、管理サーバ200自身が設定したセンサユーザID「00000001」が格納されるセンサユーザID欄212aと、サービス提供装置400からの送られてきたSOユーザIDが格納されるSOユーザID欄212bとが設けられている。これらの欄のデータは、いずれも、後述するように、サービス提供装置400からユーザID登録要求があった時点で格納される。なお、ユーザIDとして、SOユーザIDとセンサユーザIDを用いているのは、ユーザ自身の好みに応じてユーザIDを定めてもらうために、SOユーザIDを用いている意義がある一方で、このSOユーザIDはデータ長が一定でないこと、さらに、このSOユーザIDが系統立てたものでなく管理が面倒であること等の理由により、これを補うために、データ長が一定で系統立てたものであるセンサユーザIDを用いる意義もあるからである。
センサ情報テーブル213には、図7に示すように、センサユーザID「00000001」が格納されるセンサユーザID欄213aと、センサ機器100のセンサ101によるセンシング時刻が格納されるセンシング時刻欄213bと、センサ機器100の機種ID「0001」が格納される機種ID欄213cと、センサ機器100のセンサ101によるセンサデータ「48.1」が格納されるセンサデータ欄213dとが設けられている。これらの欄のデータは、後述するように、センサ機器100からセンサ情報が送られてきた時点で格納される。
サービス提供装置400は、図1に示すように、各種演算を実行するCPU402と、CPU402のワークエリアであるRAM403と、ネットワークNとの通信インタフェース404と、ハードディスクドライブ装置等の記憶装置420と、を有している。
記憶装置420には、このサービス提供装置400からのサービス提供を受けるユーザに関する情報を登録するためのユーザ登録プログラム421と、ユーザに所定のサービスを提供するためのサービス提供プログラム422と、格納されている。さらに、この記憶装置420には、ユーザに関する情報が登録されるユーザ登録テーブル411が、設定されている。
ユーザ登録テーブル411は、図8に示すように、ユーザ名「トウキョウ タロウ」が格納されるユーザ名欄411aと、ユーザ自身が定めたSOユーザID「testuser 1」が格納されるSOユーザID欄411bと、ユーザのメールアドレス「t-tokyo@abc」が格納されるメールアドレス欄411cと、ユーザに与えられたセンサ機器100の機種ID「0001」が格納される機種ID欄411dと、このセンサ機器100の機器ID「ABCDEF」が格納される機器ID欄411eとが、設けられている。この他、ユーザ登録テーブル411には、図示されていないが、ユーザの住所が格納されるユーザ住所欄、ユーザの電話番号が格納されるユーザ電話番号欄、提供サービスの種別が格納される提供サービス種欄等も設けられている。これらの欄のデータは、いずれも、ユーザが登録処理を行った時点で格納される。
次に、センサデータ管理システムの動作について説明する。なお、以下では、便宜上、プログラムを動作主体として説明するが、実際には、プログラムを実行するCPUが動作主体である。
まず、図9に示すシーケンス図に従って、サービス提供装置400及び管理サーバ200でのユーザの情報登録処理について説明する。
あるユーザが、サービス提供装置400から所定のサービスの提供を希望する場合、このサービス提供装置400にユーザ自身の情報を登録する。この登録にあたり、サービス提供装置400のユーザ登録プログラム421が起動し、ユーザ登録処理(T401)を実行する。このユーザ登録処理(T401)では、ユーザ登録プログラム421が、ユーザから、ユーザ名、ユーザ自身が定めたSOユーザID、ユーザのメールアドレス、ユーザの住所、提供サービスの種別等の入力を受け付け、これらをユーザ登録テーブル411(図8)に格納する。ユーザ登録プログラム421は、複数種のセンサ機器のうちから、ユーザが指定した提供サービス種別に応じたセンサ機器の機種IDを特定すると共に、その機器IDを特定して、機種ID及び機器IDをユーザ情報テーブル411(図8)に格納する。なお、ここでは、ユーザが、提供サービス種別として「ゆっくり減量」を指定し、これに対して、ユーザ登録プログラム421が、センサ機器の機種IDとして、体重計のIDを特定したとする。すなわち、センサ100として体重計を備えたセンサ機器100を特定したとする。
ユーザ登録プログラム421は、続いて、このユーザのSOユーザID及び機器IDのID登録パケットを生成して、これを管理サーバ200へ送信する(T402)。このID登録パケットは、図18に示すように、パケット名1801、機器ID1802、SOユーザID1803、要求コード1804を含んでいる。ここでのパケット名1801は、ユーザID登録を意味する例えば「0x01」であり、要求コード1804は「登録」を意味する「1」である。なお、このパケット名は、送信先のアドレス等と共に、このパケットのヘッダに挿入され、機器ID、SOユーザID、要求コードは、このパケットのペイロードに挿入される。
管理サーバ200の通信プログラムが、サービス提供装置400からのID登録パケットを受信すると、すなわち、サービス提供装置400からのID登録要求を受け付けると、サービス提供装置400へACKを返す(T201)と共に、管理サーバ200のユーザID登録プログラム221が起動させる。このユーザID登録プログラム221は、ID登録パケットのペイロードに挿入されている機器ID、SOユーザID、要求コードを取得し、SOユーザID「testuser1」に対応するセンサユーザID「000000001」を生成して、SOユーザID「testuser1」とこのセンサユーザID「000000001」とを関連付けて、ID変換テーブル212(図6)に格納すると共に、機器ID「ABCDEF」、センサユーザID「000000001」、要求コード「1」をユーザ登録テーブル211(図5)に格納する(T202)。
以上で、サービス提供装置400及び管理サーバ200におけるユーザの情報登録処理が終了する。
次に、図10に示すシーケンス図に従って、センサ機器100におけるユーザIDの登録処理について説明する。なお、センサ機器100におけるユーザIDの登録処理の前提として、既に、このセンサ機器100を利用するユーザの情報登録処理が終わっており、センサ機器100のセンサ機器固有情報テーブル111(図3)には、センサユーザIDを除く全てのデータが格納されているものとする。
センサ機器100のユーザID処理指示スイッチ107bが「登録」になると、センサ機器100のユーザID要求プログラム121が起動し、中継装置300へユーザID要求パケットを無線送信する(T111)。このユーザID要求パケットは、図19(a)に示すように、パケット名と機器IDのデータを含むパケットである。このパケットのパケット名は、「ユーザID要求」であり、機器IDは、センサ機器固有情報テーブル111(図3)の機器ID欄111bに格納されているセンサ機器ID「ABCDEF」である。
中継装置300のパケット転送プログラム321が、センサ機器100からユーザID要求パケットを受信すると、このセンサ機器100に対してACKを返すと共に、ユーザID要求パケットを管理サーバ200へ送信する(T312)。このユーザID要求パケットは、図20(a)に示すように、センサ機器100から送られてきたユーザID要求パケットに含まれるパケット名1901及び機器ID1902の他に、このユーザID要求パケットの送信元であるセンサ機器100の無線識別子2001を含んでいる。
管理サーバ200の通信プログラムがこのユーザID要求パケットを受信すると、このパケットに含まれているパケット名「ユーザID要求」により、管理サーバ200のユーザID要求応答プログラム222を起動させる。このユーザID要求応答プログラム222は、ユーザID要求パケットに含まれている機器ID「ABCDEF」をキーとして、ID要求テーブル211(図5)を検索して、機器ID「ABCDEF」に対応するセンサユーザID「000000001」を抽出する(T221)。次に、ユーザID要求応答プログラム222は、このセンサユーザID「000000001」を含むユーザID要求応答パケットを中継装置300へ返す(T212)。このユーザID要求応答パケットは、図20(b)に示すように、パケット名1903と、センサユーザID1904と、送信先無線識別子2002とを含んでいる。この応答パケットの送信先無線識別子2002は、図20(a)で説明したユーザ要求パケットの送信元識別子2001と同じデータ、つまり、センサ機器の無線識別である。
中継装置300のパケット転送プログラム311が、管理サーバ200からユーザID要求応答パケットを受信すると、管理サーバ200へACKを返すと共に(T313)、このユーザID要求応答パケットに含まれている送信先無線識別子2002により特定される送信先へ、つまりユーザID要求パケットの送信元であるセンサ機器100へ、ユーザID要求応答パケットを転送する(T314)。このユーザID要求応答パケットには、図19(b)に示すように、パケット名1903とセンサユーザID1904とを含んでいる。
センサ機器100のユーザID要求プログラム121が、中継装置300からユーザID要求応答パケットを受信すると、この応答パケットに含まれているセンサユーザIDを、センサ機器固有情報テーブル111(図3)のセンサユーザID欄111dに格納する(T113)。
一方、管理サーバ200のユーザID要求応答プログラム222は、ユーザID応答パケットを送出すると(T212)、ID要求テーブル211(図5)から、センサユーザID「000000001」で機器ID「ABCDEF」のレコードを削除する(T213)。
以上で、センサ機器100におけるユーザIDの登録処理が終了する。
次に、図11に示すシーケンス図に従って、センサ機器100によるセンサデータの送出から、このセンサデータに基づくサービス提供装置400によるサービス提供までの処理について説明する。
センサ機器100のセンサデータ送信プログラム123は、センサ101からセンサデータを受け付けると、このデータ受付時刻をセンサ101によるセンシング時刻とし、センサデータ及びセンシング時刻を含むセンサ情報パケットを生成し(T121)、これを中継装置300へ無線送信する(T122)。なお、このセンサデータ送信プログラム123は、先に説明したユーザIDの登録処理が終了し、且つセンサ機器100の電源が入っている状態であれば常時起動している。
センサ機器100から中継装置300へ無線送信されるセンサ情報パケットは、図19(c)に示すように、パケット名「センサ情報」1905と、機種ID「ABCDEF」1902と、センサユーザID「000000001」1904と、センサデータ1906と、センシング時刻1907とを含んでいる。
中継装置300のパケット転送プログラム321は、センサ機器100からセンサ情報パケットを受信すると、センサ機器100へACKを返すと共に(T321)、センサ情報パケットを管理サーバ200へ転送する(T322)。このセンサ情報パケットには、図20(c)に示すように、センサ機器100からセンサ情報パケットに含まれているパケット名「センサ情報」1905と、機種ID「ABCDEF」1902と、センサユーザID「000000001」1904と、センサデータ1906と、センシング時刻1907の他に、送信元無線識別子2001が含まれている。
管理サーバ200の通信プログラムが中継装置300からセンサ情報パケットを受信すると、中継装置300へACKを返すと共に(T221)、このパケットに含まれているパケット名「センサ情報」により、管理サーバ200のセンサ情報管理プログラム223を起動させる。そして、このセンサ情報管理プログラム223は、センサ情報パケットに含まれているユーザID要求パケットに含まれている機種ID「ABCDEF」とセンサユーザID「000000001」とセンサデータとセンシング時刻とを、センサ情報テーブル213(図7)に登録する。
以下、管理サーバ200は、センサ機器100から中継装置300を介してセンサ情報パケットを受信する毎に、センサデータ等をセンサ情報テーブル213に登録する。
一方、サービス提要装置400のサービス提供プログラム422は、ユーザにサービスを提供する時刻になると(T421)、このユーザに関するセンサ情報を要求するセンサ情報要求パケットを管理サーバ200へ送信する(T422)。なお、ここでは、センサ情報要求パケットの送信トリガーをサービス提供時刻としているが、本発明はこれに限定されるものでなく、例えば、サービス提供装置400がユーザからサービス提供の依頼を受けた時点で、センサ情報要求パケットを送信するようにしてもよい。
サービス提供装置400から送信されるセンサ情報要求パケットは、図18(b)に示すように、パケット名「センサ情報要求」1805と、SOユーザID「testuser 1」1803とを含む。
管理サーバ200の通信プログラムがこのセンサ情報要求パケットを受信すると、このパケットに含まれているパケット名「センサ情報要求」により、管理サーバ200のセンサ情報管理プログラム223を起動させる。そして、このセンサ情報管理プログラム223は、センサ情報要求パケットに含まれているSOユーザID「testuser 1」に対応するセンサ情報を抽出する(T223)。この際、センサ情報管理プログラム223は、まず、ID変換テーブル212(図6)を参照して、SOユーザID「testuser 1」に対応するセンサユーザID「000000001」を取得し、このセンサユーザID「000000001」に関するセンサデータ及びセンシング時刻の全てをセンサ情報テーブル213(図7)から抽出する。そして、このセンサ情報管理プログラム223は、センサユーザID「000000001」に関するセンサデータ及びセンシング時刻の全て又は予め定められた数のデータを含むセンサ情報パケットをサービス提供装置400へ送信する(T224)。
ここで重要な点は、センサ機器100からは、センサデータと機器IDのみならず、センサユーザIDも併せて送られてきて、これらをまとめて、管理サーバー200のセンサ情報テーブル213(図7)に格納しているため、センサユーザIDと機器IDとの対応関係を取るためのテーブルが不要になるばかりか、センサユーザIDに対応する機器IDのセンサデータをセンサ情報テーブル(このテーブルは、機器IDとセンサデータとが対応付けられて格納されている)から検索する必要もなくなる。
管理サーバ200からのセンサ情報パケットは、図18(c)に示すように、パケット名「センサ情報」1806と、SOユーザID「testuser 1」1803、センサ情報1807とを含んでいる。このパケットのセンサ情報1807には、前述したように、センサユーザID「000000001」に関するセンサデータ及びセンシング時刻の全て又は予め定められた数のデータを含んでいる。
サービス提供装置400のサービス提供プログラム422が、このセンサ情報パケットを受信すると、このセンサ情報パケットに含まれているセンサ情報を解析して(T423)、この解析結果を当該ユーザのメールアドレス先へ送信する(T424)。センサ情報の解析方法としては、センサ情報に含まれているセンサデータの時系列的な変化が予め定められている複数のパターンのうち、いずれのパターンに該当するかを調べ、あるパターンに該当する場合には、このパターンに対して予め定められたコメントを解析結果とする。ここでのコメントとしては、例えば、「あなたは、急激な減量により健康を損なうおそれがあります。過度の減食は止めましょう。」等がある。
次に、図12に示すシーケンス図に従って、センサユーザIDの消去処理について説明する。
センサユーザIDの消去は、例えば、ユーザが現行サービスの提供を止める等の理由で、センサ機器100を回収する場合等に生じる。このため、図12に示す処理の前処理として、サービス提供装置400のユーザ登録プログラム421は、ユーザから現行サービスの中止等の処理依頼を受け、この依頼に応じて、管理サーバ200へID消去パケットを送信する。このID消去パケットは、基本的に、図18(a)に示すID登録パケットと同じであるが、パケット名が「ユーザID消去」となり、要求コードが「0(消去)」となる。管理サーバ200の通信プログラムがこのID消去パケットを受信すると、ユーザID登録プログラム221を起動させる。このユーザID登録プログラム221は、ID変換テーブル212から、ID消去パケットに含まれているSOユーザIDに対応したセンサユーザIDを取得し、ID消去パケットに含まれている機器ID及び要求コード「0(消去)」と共に、ID要求テーブル211(図5)に格納する。以上で前処理は終了する。
センサ機器100のユーザID処理指示スイッチ107bが「消去」になると、センサ機器100のユーザID消去プログラム122が起動し、中継装置300へユーザID消去要求パケットを無線送信する(T131)。このユーザID消去要求パケットは、図19(d)に示すように、パケット名「ユーザID消去要求」1908と、機器ID1902と、センサユーザID1904とを含むパケットである。
中継装置300のパケット転送プログラム321は、センサ機器100からユーザID消去要求パケットを受信すると、センサ機器100へACKを返すと共に(T331)、ユーザID消去要求パケットを管理サーバ200へ転送する(T332)。このユーザID消去要求パケットには、図20(d)に示すように、センサ機器100からユーザID消去要求パケットに含まれているパケット名「ユーザID消去要求」1908と、機器ID1902と、センサユーザID1904の他に、送信元無線識別子2001が含まれている。
管理サーバ200の通信プログラムがユーザID消去要求パケットを受信すると、ユーザID要求応答プログラム222を起動させる。このユーザID要求応答プログラム222は、ID要求テーブル211(図5)中に、ユーザID消去要求パケットに含まれている機器ID及びセンサユーザIDに対応し、且つ要求コードが「0(消去)」のレコードの有無を検索する(T232)。該当レコードがあれば、中継装置300に対してユーザID消去応答パケットを送信した後、ID要求テーブル211(図5)から該当レコードを削除する(T233)。
中継装置300のパケット転送プログラム321は、管理サーバ200からユーザID消去応答パケットを受信すると、管理サーバ200へACKを返すと共に(T333)、ユーザID消去応答パケットをセンサ機器100へ転送する(T334)。
センサ機器100のユーザID消去プログラム122は、中継装置300からユーザID消去応答パケットを受信すると、中継装置300へACKを返すと共に(T132)、センサ機器固有情報テーブル111(図3)からセンサユーザIDを消去する(T133)。
以上で、センサユーザIDの消去処理は終了する。なお、センサ機器100が管理サーバ200へユーザID消去要求パケットを送っているのは、管理サーバ200、さらにはサービス提供装置400に、センサ機器100に格納されていたセンサユーザ1Dの消去動作を認識させるためである。このため、管理サーバ200及びサービス提供装置400にこの認識をさせる必要がない場合には、当然、センサ機器100が管理サーバ200へユーザID消去要求パケットを送る必要がなく、センサ機器100のユーザID処理指示スイッチ107bが「消去」になると、直ちに、センサ機器固有情報テーブル111(図3)からセンサユーザIDを消去するようにしてもよい。
次に、センサデータ管理システムの個々の装置の主要動作について、図13〜図17を用いて説明する。
まず、図13に示すフローチャートに従って、管理サーバ200のユーザID登録処理及びユーザID消去前処理について説明する。なお、このユーザID登録処理は、図9に示すシーケンス図中のユーザID登録処理(T202)に対応する。
管理サーバ200の通信プログラムは、サービス提供装置400からID登録パケット(図18(a))又はID消去パケットを受信すると(S1301)、このパケットのパケット名を調べ(S1302)、パケット名が「ユーザID登録」又は「ユーザID消去」であれば、このパケットの送信元であるサービス提供装置400へACKを返した後(S1303)、ユーザID登録プログラム221を起動させる(S1304)。また、パケット名が「センサ情報」であれば、図11のシーケンス図を用いて説明したように、センサ情報管理プログラム223を起動させる。また、パケット名が「ユーザID要求」や「ユーザID消去要求」である場合には、図14を用いて後述するように、ユーザID要求応答プログラム222を起動させる。
ユーザID登録プログラム221は、まず、ID変換テーブル212(図6)中に、このID登録パケット(図18(a))に含まれているSOユーザIDが存在するか否かを調べる(S1305)、該当SOユーザIDが無ければ(S1305でYesの場合)、すなわち、先に受信したパケットはID登録パケットであれば、ステップ1307に進み、該当SOユーザIDが在れば(S1305でNoの場合)、すなわち、先に受信したパケットがID消去パケットである、または以前にID登録パケットを要求したことがあれば、このID変換テーブル212からセンサユーザIDを取得し(S1306)、ステップ1309に進む。
S1305で、該当SOユーザIDが無いと判断して、ステップ1307に進むと、予め定められた桁数のセンサユーザIDを生成する。このセンサユーザIDは、SOユーザIDと1対1の関係である。次に、ID変換テーブル212に、SOユーザIDとセンサユーザIDとを関連付けて格納する(S1308)。そして、ID要求テーブル211に、ID登録パケット(図18(a))に含まれている機器ID及び要求コードと、ステップ1307で生成したセンサユーザID又はステップ1306で取得したセンサユーザIDを格納する(S1309)。
以上で、管理サーバ200によるユーザID登録処理及びユーザID消去前処理は終了する。
次に、管理サーバ200よるID要求応答処理及びID消去要求処理について、図14に示すフローチャートに従って説明する。なお、管理サーバ200よるID要求応答処理は、図10のシーケンス図中のT211〜T213の処理に対応し、ID消去要求処理は、図12のシーケンス図中のT231〜T233の処理に対応する。
管理サーバ200の通信プログラムは、中継装置300からID要求パケット(図20(a))又はID消去要求パケット(図20(d))を受信すると(S1401)、このパケットのパケット名を調べ(S1402)、パケット名が「ユーザID要求」又は「ユーザID消去要求」であれば、このパケットの送信元であるサービス提供装置400へACKを返した後(S1303)、ユーザID要求応答プログラム222を起動させる(S1403)。
ユーザID要求応答プログラム222は、受信したパケットがID要求パケットであれば、ユーザID要求テーブル211(図5)中に、ID要求パケット(図20(a)中に含まれている機器IDと同じ機器IDで且つ要求コードが「1(登録)」のレコードがあるか否かを判断し(S1404)、機器IDと同じ機器IDで且つ要求コードが「1(登録)」のレコードがあれば、このレコードのセンサユーザIDを含むユーザID要求パケットを中継装置300へ送信する(S1405)。該当レコードが無ければ、エラーパケットを中継装置300へ送信して(S1409)、処理を終了する。
また、ユーザID要求応答プログラム222は、受信したパケットがID消去要求パケットであれば、ユーザID要求テーブル211(図5)中に、ID消去要求パケット(図20(a)中に含まれている機器IDと同じ機器IDで且つ要求コードが「0(消去)」のレコードがあるか否かを判断し(S1406)、機器IDと同じ機器IDで且つ要求コードが「0(消去))」のレコードがあれば、ユーザID消去応答パケットを中継装置300へ送信する(S1407)。該当レコードが無ければ、エラーパケットを中継装置300へ送信して(S1409)、処理を終了する。
ユーザID要求応答プログラム222は、中継装置300へユーザID応答パケット又はユーザID消去応答パケットを送信すると(S1405orS1407)、ユーザID要求テーブル211(図5)から該当レコードを消去して(S1408)、処理を終了する。
次に、中継装置300によるパケット転送処理について、図15に示すフローチャートに従って説明する。なお、このパケット転送処理は、パケット転送プログラム321により実行される。
中継装置300のパケット転送プログラム321は、パケットを受信すると(S1501)、このパケットの送信元へACKを返す(S1502)。次に、このパケットの送信元がセンサ機器100であるか否かを判断し(S1503)、このパケットの送信元がセンサ機器100である場合には、このパケットのデータにさらに、送信元無線識別子(センサ機器100の無線識別子)を付加してパケット化し、これを管理サーバ200へ送信する。また、受信したパケットの送信元がセンサ機器でない場合には、送信元が管理サーバ200か否かを判断する(S1505)、送信元が管理サーバである場合には、このパケットに含まれている送信先無線識別子のセンサ機器100へパケットを送信する。ステップ1505の判断で送信元が管理サーバ200ではないと判断すると、そのまま終了する。
以上で、中継装置300によるパケット転送処理が終了する。
次に、センサ機器100によるユーザID要求及びユーザID登録処理について、図16に示すフローチャートに従って説明する。なお、この処理は、図10のシーケンス図におけるT111〜T113に対応する。
センサ機器100のユーザID処理指示スイッチ107bが「登録」になると、ユーザID要求プログラム121が起動し(S1601)、中継装置300へユーザID要求パケットを無線送信する(S1602)。
次に、ユーザID要求プログラム121は、中継装置300からACKを受信した後(S1603)、この中継装置300からのパケットを待つ(S1604)。中継装置300からパケットを受信すると、この中継装置300へACKを返した後(S1605)、このパケットがユーザID応答パケットであるか否かを判断する(S1606)。このパケットがユーザID応答パケットであれば、センサ機器固有情報テーブル111(図3)に、このユーザID応答パケット(図19(b))に含まれているセンサユーザIDを格納した後(S1608)、正常終了を表示部106に表示させて、処理を終了する。
また、ステップ1606の判断で、ステップ1604で受信したパケットがユーザID応答パケットではないと判断した場合、エラーを表示部106に表示させて、処理を終了する。
次に、センサ機器100によるユーザID消去要求及びユーザID消去処理について、図16に示すフローチャートに従って説明する。なお、この処理は、図12のシーケンス図におけるT131〜T133に対応する。
センサ機器100のユーザID処理指示スイッチ107bが「消去」になると、ユーザID要求プログラム121が起動し(S1701)、中継装置300へユーザID消去要求パケットを無線送信する(S1702)。
次に、ユーザID要求プログラム121は、中継装置300からACKを受信した後(S1703)、この中継装置300からのパケットを待つ(S1704)。中継装置300からパケットを受信すると、この中継装置300へACKを返した後(S1705)、このパケットがユーザID消去応答パケットであるか否かを判断する(S1706)。このパケットがユーザID消去応答パケットであれば、センサ機器固有情報テーブル111(図3)からセンサユーザIDを消去した後(S1708)、正常終了を表示部106に表示させて、処理を終了する。
また、ステップ1706の判断で、ステップ1704で受信したパケットがユーザID消去応答パケットではないと判断した場合、エラーを表示部106に表示させて、処理を終了する。
以上のように、本実施形態では、センサ機器100は、センサデータと共に、センサ機器ID及びセンサユーザID等を管理サーバに送り、管理サーバ200は、センサ機器100から送られてきたセンサデータ、センサ機器ID、センサユーザID等を相互に関連付けて記憶するので、センサデータの利用にあたり、複数のセンサ機器ID毎のセンサデータから、特定のセンサユーザIDのセンサデータを検索する手間を省くことができる。このため、センサ機器IDとセンサユーザIDとを関連付けてID要求テーブル211に一時的に登録しているものの、一旦、センサ機器100にセンサユーザIDを知らせた後は、このID要求テーブル211の該当レコードを削除しているので、管理サーバ200のデータ記憶量の削減を図ることもできる。
また、本実施形態では、センサ機器100へのセンサユーザIDの登録にあたり、センサデータを送信する通信手段を利用して、管理サーバ200からセンサユーザIDを受信し、これを登録しているので、ユーザIDを入力するために、別途、入力手段を設ける必要が無く、センサ機器100の小型化を図ることもできる。
なお、以上の実施形態では、センサ機器100へのセンサユーザIDの登録処理、及びセンサ機器100からのセンサユーザIDの消去処理で、スイッチ107bの操作をトリガーとしているが、本発明は、これに限定されるものではなく、例えば、センサ機器100が、一旦、利用者に納品されると、回収されるまで、電源ONの状態で使用されるような場合には、この電源ONを登録処理のトリガーとし、この電源OFFを消去処理のトリガーとしてもよい。
また、以上の実施形態では、ユーザを一意に定める識別してとして、SOユーザIDとセンサユーザIDの二つを用いているが、いずれか一方のIDのみを用いるようにしてもよい。
100:センサ機器、101:センサ、102:CPU、103:RAM、104:RF処理部、105:アンテナ、106:表示部、107:スイッチ、110:EEPROM、111:センサ機器固有情報テーブル、200:管理サーバ、202:CPU、203:RAM、204:通信インタフェース、211:ID要求テーブル、212:ID変換テーブル、213:センサ情報テーブル、221:ユーザID登録プログラム、222:ユーザID要求応答プログラム、223:センサ情報管理プログラム、300:中継装置、400:サービス提供装置