【文献】
島田秀輝他,EVANS:拡張現実感技術を用いた無線ネットワーク可視化システム,マルチメディア,分散,協調とモバイル(DICOMO2010)シンポジウム論文集 情報処理学会シンポジウムシリーズ Vol.2010 No.1,日本,社団法人情報処理学会,2010年 7月 7日,pp.2085−2090
【文献】
上田智章,センサ&計測教室3 磁界&超音波リアルタイム・ビューワの製作 センサで捕らえた物理量とウェブ・カメラで撮影した実画像を重ね描き,トランジスタ技術,日本,CQ出版社,第48巻,第2号(2011年2月号),pp.154−161
【発明を実施するための形態】
【0019】
以下、本発明の好適な実施の形態について、添付の図面を参照しつつ、詳細に説明する。
【0020】
<1. 第1の実施の形態>
図1は、第1の実施の形態におけるセンサネットワークシステム1の構成を示す図である。なお、第1の実施の形態におけるセンサネットワークシステム1は、家庭内に配置された電化製品において消費された電力量(情報)を収集するシステムを例に説明する。すなわち、詳細は後述するが、第1の実施の形態におけるセンサネットワークシステム1を構成するセンサノード2は、いわゆる電力測定センサであり、通常は家庭内に設置される。
【0021】
ただし、センサネットワークシステム1としては、例えば、家庭で育成されている動植物の近傍に環境センサ(気温センサや土壌センサ、湿度センサ等)を配置し、これらの環境センサから得られた情報を収集して動植物の育成を支援するシステムや、ガスや水漏れ、施錠状態等を監視するセンサを用いたセキュリティシステムなどであってもよい。すなわち、センサネットワークシステム1の用途は本実施の形態に示すものに限定されるものではない。そして、センサネットワークシステム1の用途に応じて、どのような機能を有するセンサノードがセンサノード2として採用されてもよい。
【0022】
図1に示すように、センサネットワークシステム1は、センサノード2と情報処理システム3とを備えている。ただし、センサネットワークシステム1が備えるセンサノード2の数は、
図1に示すように1つに限定されるものではなく、通常は、多数のセンサノード2によってセンサネットワークシステム1が形成される。
【0023】
図2は、第1の実施の形態におけるセンサノード2のブロック図である。第1の実施の形態におけるセンサノード2は、家庭内に配置された、対応する電化製品(例えば、冷蔵庫や電子レンジ、電気ポット、テレビ、電気カーペット等)に取り付けられ、当該対応する電化製品の消費電力量を測定し、情報処理システム3に送信する機能を有している。
【0024】
図2に示すように、センサノード2は、CPU20、記憶装置21、検出部22および通信部23を備えており、主に家庭内に設置される。
【0025】
CPU20は、記憶装置21に記憶されているプログラム210に従って動作することにより、センサノード2が備える各構成を制御する機能を有している。CPU20が提供する機能としては、例えば、記憶装置21へのデータの読み書き(アクセス制御)、検出部22に対するセンシング制御、通信部23を介してのゲートウェイ4あるいは情報処理端末7との間の通信制御等がある。
【0026】
記憶装置21は、各種データを記憶・保存しておく機能を有しており、特に、プログラム210および監視情報211を記憶する。また、
図2において図示を省略しているが、記憶装置21には、センサノード2を個別に識別するための情報(以下、「センサ識別子」と称する。)が記憶されている。センサノード2にセンサ識別子が付与されていることにより、センサネットワークシステム1において複数のセンサノード2が存在したとしても、それぞれのセンサノード2を識別しつつ、通信や監視情報211の管理等を行うことができる。
【0027】
このように、第1の実施の形態におけるセンサノード2は、CPU20および記憶装置21を備えることにより、コンピュータとしての機能および構成を備えている。なお、センサノード2がMCUを備え、マイクロコンピュータとして構成されていてもよい。
【0028】
検出部22は、センサノード2に対応する電化製品において消費された電力を測定し、監視情報211を作成する。検出部22により作成された監視情報211は、CPU20により、一旦、記憶装置21に記憶される。このようにセンサノード2が検出部22を備えることにより、センサノード2は、現実世界において、当該センサノード2に対応する電化製品によって消費された電力を表現した情報(消費電力量を表現した数値など)を監視情報211として取得する機能を発揮する。
【0029】
通信部23は、センサノード2が情報処理システム3との間でデータ通信を行う機能を提供する。第1の実施の形態における通信部23は、ゲートウェイ4との間では、無線通信および商用電力線8を用いたPLCによる有線通信を行うことができるように構成されている。
【0030】
一方、通信部23は、情報処理端末7との間では直接的な無線通信が可能となっている。ここにいう「直接的な無線通信」とは、センサノード2と情報処理端末7との間に、無線基地局や中継機等の装置を介在させることなく、データ通信が可能となる無線通信という意味である。いいかえれば、センサノード2の通信部23から送信された信号(電波信号や赤外線信号等が想定される)が、直接、情報処理端末7に受信される方式の無線通信を意味するものである。
【0031】
センサノード2と情報処理端末7との間で直接的な無線通信を実現する方式としては、従来から提案されているどのような無線方式が採用されてもよいが、例えば、IrDA(赤外線無線通信)やBluetooth、WiFi(Wireless Fidelity)などの規格が採用可能である。また、これらの無線通信方式は、センサノード2とゲートウェイ4との間の無線通信にも共通して採用されてもよい。
【0032】
このように、第1の実施の形態におけるセンサノード2は、情報処理端末7が無線通信の通信可能エリア内に存在すれば、直接的な無線通信を用いて情報処理端末7との間でデータ通信を行うことが可能である。また、情報処理端末7が無線通信の通信可能エリア内に存在しない場合には、センサノード2は、ゲートウェイ4およびルータ5を介して、情報処理端末7との間でデータ通信を行うことができる。
【0033】
なお、センサノード2と情報処理端末7との間で、どのルートを使用してデータ通信を行うかは、送受信する情報の種類によって選択されてもよい。例えば、監視情報211やセンサノード2に対する制御情報等はゲートウェイ4およびルータ5を介して送受信する。その一方で、センサノード2の存在を報知するビーコン信号等は直接的な無線通信により情報処理端末7に送信するようにしてもよい。
【0034】
第1の実施の形態では、センサノード2(検出部22)によって取得された監視情報211は、一旦、記憶装置21に記憶された後、通信スケジュールに従って、通信部23によりサーバ6に向けて送信される。
【0035】
さらに、センサノード2の外面には、ARマーカ24が貼付されている。ARマーカ24とは、AR(Augmented Reality)技術において、画像合成や音声出力等の対象となる物体を識別するためのマーカであり、一般的には二次元画像として提供される。ARマーカ24については、従来から提案されているAR技術を適宜採用することができるので、ここでは詳細な説明を省略する。ただし、少なくとも、ARマーカ24には、当該ARマーカ24が撮像された画像を画像解析することにより、当該ARマーカ24を特定(識別)するための識別子(以下、「マーカ識別子」と称する。)が含まれている。
【0036】
なお、ARマーカ24は必ずしもセンサノード2に貼付されていなければならないわけではない。例えば、冷蔵庫の消費電力を測定するためには、センサノード2を冷蔵庫の裏側に配置するのがよい場合がある。このような場合、冷蔵庫の裏側に配置されたセンサノード2に貼付されたARマーカ24を容易に撮像することはできない。したがって、このようにセンサノード2を直接撮像することが困難な場合などにおいては、ARマーカ24を当該冷蔵庫の外面等に貼付してもよい。また、例えば、複数のセンサノード2を一元的に管理するためのボードを作成し、当該ボードに全てのセンサノード2のARマーカ24を掲載するようにしてもよい。このような場合には、当該ボードを撮像するだけで、全てのセンサノード2のARマーカ24を撮像することが可能となり、管理が容易になる。
【0037】
また、ARマーカ24は、1つのセンサノード2について複数存在してもよい。上記例では、センサノード2の外面、冷蔵庫の外面および管理ボードのそれぞれにARマーカ24が貼付されていてもよい。また、その場合、ARマーカ24は完全に同一でなくてもよい。
【0038】
さらに、ARマーカ24をセンサノード2に貼付する手法は、接着剤が塗布されたシールを用いてもよいし、マグネット等により着脱自在に貼付してもよい。
【0039】
以上が、センサノード2についての説明である。なお、
図1には特に図示していないが、センサノード2は、電源部(商用電源から電力の供給を受けるための構成や太陽光発電パネル、電池等)を備えており、当該電源部から供給される電力により動作する。また、センサノード2は、ユーザによって操作される操作部(電源ボタンや設定ボタン、テンキー等)や、ユーザに状況を知らせる出力部(LEDやブザー等)等を備えていてもよい。
【0040】
図1に示す情報処理システム3は、ゲートウェイ4、ルータ5、サーバ6および情報処理端末7から構成されている。そして、情報処理システム3は、各装置(ゲートウェイ4、ルータ5、サーバ6および情報処理端末7)が、ネットワーク(インターネット9等)を介してデータ通信が可能な状態で接続された構成を有している。すなわち、情報処理システム3自体も、各装置がネットワークで接続されたネットワークシステムを構成している。これにより、詳細は後述するが、情報処理システム3は、センサノード2(より詳細には検出部22)により取得された監視情報211をネットワーク(商用電力線8や無線通信)を介して収集し、管理・分析する機能を有している。
【0041】
ゲートウェイ4は、センサノード2との通信をインターネット網に接続できる通信に変換する機能を有している。また、ルータ5は、ネットワークアドレス等を用いて、家庭内の装置(センサノード2や情報処理端末7等)を外部のインターネット9に接続する機能を提供する。なお、センサノード2が直接インターネット網に接続する機能を有する場合には、ゲートウェイ4を備えないシステム構成とすることもできる。
【0042】
サーバ6は、主にセンサネットワークシステム1を提供する企業等に設置されるコンピュータシステム(複数のコンピュータやネットワークから構成されてもよい。)であり、通常は、サービスが提供されている間は随時起動されている。また、サーバ6は、インターネット9を介して家庭内に配置された各装置とデータ通信が可能となるように接続されている。なお、
図1では、1つの家庭に設置されるシステムのみを図示しているが、一般には、各家庭にルータ5が設置され、複数の家庭においてサーバ6を共用するようにセンサネットワークシステム1が構築される。
【0043】
第1の実施の形態におけるサーバ6は、センサノード2から送信された監視情報211を受信し、格納しておくデータベース(図示せず)を備えている。また、サーバ6は、情報処理端末7からの要求に応じて、データベースに格納している監視情報211を情報処理端末7に向けて送信する機能も有している。
【0044】
一般にセンサノード2における記憶装置21の記憶容量を大きくすることには限界があり、監視情報211を記憶装置21に格納しておける時間には限界がある。したがって、センサノード2は、所定の通信間隔で監視情報211を情報処理システム3に向けて送信しなければ、データのオーバーフローを起こすことになる。しかし、センサネットワークシステム1がサーバ6(常時起動状態にある)を備えていることにより、ユーザが情報処理端末7をスタンバイさせていない期間においても、センサノード2によって取得された監視情報211を随時受け付けて蓄積することができる。
【0045】
また、サーバ6が、各家庭から送信される監視情報211を一元的に管理することにより、各家庭における監視情報211を比較分析あるいは統計学的に分析することもできる。したがって、個々の監視情報211に対する客観的で的確な状況判断が可能となり、それらをティーチング情報として監視情報211とともに情報処理端末7に送信することもできる。これによりユーザは、質のよいサービスの提供を受けることができるとともに、他人と競い合うという楽しみを得ることもでき、センサネットワークシステム1の利用が促進される。
【0046】
図3は、第1の実施の形態における情報処理端末7の構成を示すブロック図である。情報処理端末7は、各種データの演算を行うCPU70、プログラム710を記憶する記憶装置71、操作部72および表示部73を備えており、一般的なコンピュータとしての構成および機能を有している。また、情報処理端末7は、スピーカ74、撮像部75および通信部76を備えている。
【0047】
CPU70は、記憶装置71に記憶されているプログラム710に従って動作することにより、様々な情報処理を実行するとともに、情報処理端末7が備える各構成を制御する。なお、CPU70の動作については後述する。
【0048】
記憶装置71は、様々な情報を適宜記憶しておく装置である。例えば、記憶装置71は、プログラム710や演出元情報711、撮像部75によって取得された撮像情報712、操作部72により入力された指示情報714、通信部76により受信された監視情報211を記憶する。
【0049】
図3に示す演出元情報711とは、主に監視情報211を表現する媒体(以下、「表現媒体」と称する。)ごとに1つのレコードを構成する情報であって、当該レコードには、少なくとも表現媒体を識別するための識別子(以下、「表現媒体識別子」と称する。)が含まれている。表現媒体とは、主に動物や人物、擬人化された物体等のキャラクタが想定されるが、このような疑似生物に限定されるものではなく、例えば、操作ボタン等の物体が表現媒体であってもよいし、単なるメッセージであってもよい。演出元情報711についての詳細は後述する。
【0050】
また、記憶装置71は、CPU70により作成される報知履歴情報713を保存する機能も有している。報知履歴情報713とは、表示部73およびスピーカ74によって、実際にユーザに向けて報知された情報であるが詳細は後述する。
【0051】
図3において記憶装置71は1つのハードウェアとして図示しているが、実際の記憶装置71は、読み取り専用のROM(例えばブートROMなど)や、CPU70の一時的なワーキングエリアとして使用される比較的高速アクセス可能なRAM、あるいは、不揮発性の読み書き可能な比較的大容量のメモリ等、様々なハードウェアから構成されている。また、記憶装置71は、スロット等に装着されたメモリカードや記録カセット、CD−ROM等の可搬性の記録媒体が含まれてもよい。
【0052】
操作部72は、情報処理端末7に対して情報を入力するために、ユーザによって操作される。操作部72としては、各種ボタンやキー等が該当する。なお、第1の実施の形態における操作部72は、表示部73の画面に設けられた接触検出器(タッチパネル)を備えている。
【0053】
特に、操作部72は、センサノード2に対する制御情報(センシング間隔や検出感度、通信スケジュール等を決定するための情報)となる指示情報714を取得する機能を有している。これにより、ユーザは、情報処理端末7の操作部72を操作して、センサノード2を意図したとおりに動作させることが可能とされている。
【0054】
表示部73は、撮像部75により取得される撮像情報712とともにCPU70により作成される報知情報717(
図4参照)を画面に表示することにより、これらの情報をユーザに向けて出力する。表示部73は、画像を表示することが可能な表示装置(液晶パネル等)を備えているが、これ以外にも、ランプやLED等が表示部73として含まれていてもよい。
【0055】
スピーカ74は、音声を再生する装置である。詳細は後述するが、スピーカ74は、報知情報717に含まれる音声情報を再生することにより、これらの情報をユーザに向けて出力する。
【0056】
撮像部75は、レンズや光学素子等から構成される一般的なデジタルカメラであり、現実世界を撮像して撮像情報712を取得する。詳細は後述するが、特に、撮像部75は、センサノード2の外面に貼付されたARマーカ24を撮像するために使用される。また、本実施の形態では、情報処理端末7が撮像部75および通信部76を備えていることにより、撮像部75は通信部76と一体的な構造物を構成している。
【0057】
通信部76は、センサノード2との間で、直接的な無線通信を行う機能を有している。また、通信部76は、ルータ5との間で、無線通信を行う機能も有している。これにより、情報処理端末7は、ユーザにより入力された指示情報714をセンサノード2に向けて送信することが可能であるとともに、センサノード2またはサーバ6から監視情報211を受信することも可能である。
【0058】
また、通信部76が無線通信機能を有しているため、情報処理端末7は、携帯性のある装置として実現されており、ユーザは情報処理端末7を任意の場所に携帯して撮像部75による撮像を実行することができる。したがって、図示は省略しているが、情報処理端末7は、電池による駆動が可能なように構成されている。
【0059】
図4は、第1の実施の形態における情報処理端末7が備える機能ブロックをデータの流れとともに示す図である。
図4に示す特定部700、評価部701、作成部702および入出力制御部703は、CPU70がプログラム710に従って動作することにより実現される機能ブロックである。
【0060】
ここで、情報処理端末7が備える機能ブロックの説明を行う前に、演出元情報711と登録情報719について説明する。
【0061】
図5は、演出元情報711の構造を例示する図である。演出元情報711は、先述のように、表現媒体識別子(すなわち、表現媒体)ごとに1つのレコードを構成している。
【0062】
演出元情報711の各レコードにおいて、表現媒体識別子と、当該表現媒体識別子によって特定される表現媒体による演出情報718とが関連づけられている。演出情報718とは、当該表現媒体による演出パターンを表現した情報であり、例えば、あるキャラクタにおいて、当該キャラクタが全力で疾走している画像やそのときの音声、台詞あるいはBGM等を表現した情報である。
【0063】
演出元情報711において、1つの表現媒体識別子には、1以上の演出情報718が関連づけられている。
図5に示す例では、CHR0001という表現媒体識別子に対して、event1〜event(n)の演出情報718が関連づけられている。すなわち、
図5では、CHR0001という表現媒体識別子によって特定される表現媒体について、event1〜event(n)(すなわちn通り)の演出が用意されていることを示している。
【0064】
さらに、各演出情報718には、それぞれの演出情報718が選択される際の条件(以下、「演出選択条件」と称する。)が設定されており、これらの演出選択条件も、演出元情報711において各演出情報718と関連づけて格納されている。
図5に示す例では、event1が選択される条件として、「0≦vol<5」という演出選択条件が関連づけられている。ここで、「vol」とは、監視情報211の値であり、第1の実施の形態においては、電化製品の消費電力量である。
【0065】
すなわち、詳細は後述するが、1つの表現主体識別子に関連づけられた1以上の演出情報718は、演出選択条件が決定されれば、それに対応する1つの演出情報718を特定することができるようにされている。そして、監視情報211に応じて演出選択条件が設定されていることにより、センサネットワークシステム1においては、監視情報211(センサノード2において取得された情報であり、現実世界の状況に応じて動的に変化する。)に応じて、演出情報718を選択することができる。
【0066】
図5では、演出選択条件として、監視情報211に関わる部分のみ示しているが、実際には、さらに多くの演出選択条件が設定されている。例えば、後述する特定情報715に含まれるARマーカ24の大きさ、向き等に関する情報や距離情報716の値などが演出選択条件に設定されており、これらの違いによって選択される演出情報718が変化するように設定されている。したがって、例えば、監視情報211の値が同じであっても、ARマーカ24の向きが異なれば、表現媒体(キャラクタ)の向きが異なる画像となるように演出情報718が選択される。
【0067】
なお、1つの表現媒体識別子に関連づけられる演出情報718の数は、各表現媒体識別子ごとに異なっていてもよい。また、各表現媒体識別子ごとに、演出選択条件が異なっていてもよい。
【0068】
図6は、登録情報719の構造を例示する図である。詳細は後述するが、本実施の形態における登録情報719は、
図4に示す作成部702により作成され更新がされる。
【0069】
登録情報719は、
図6に示すように、表現媒体識別子ごとに1つのレコードが作成される。ここに格納される表現媒体識別子は、演出元情報711に格納されている表現媒体識別子である。言い換えれば、演出元情報711が格納されている情報処理端末7が、当該演出元情報711によって使用することができる表現媒体の一覧である。
【0070】
そして、登録情報719の各レコードにおいて、表現媒体識別子とセンサ識別子とマーカ識別子とが互いに関連づけられる。
図6に示す例では、表現媒体識別子「CHR0001」が格納されているレコードには、センサ識別子「SEN0001」と、マーカ識別子「MRK0001」とが格納されており、これらが互いに関連づけられていることを示している。これは、センサ識別子「SEN0001」で示されるセンサノード2には、マーカ識別子「MRK0001」で示されるARマーカ24が貼付されて(対応して)おり、当該センサノード2により取得される監視情報211は表現媒体識別子「CHR0001」で示される表現媒体によって表現されることを意味する。
【0071】
なお、登録情報719に格納されていないセンサ識別子で示されるセンサノード2は、未だ、センサネットワークシステム1に登録されていないことを意味する。また、
図6において「−」は、その項目には関連づけがされていないことを示す。すなわち、
図6に示す例では、表現媒体識別子「CHR0002」には、対応するセンサノード2が未だ割り当てられておらず、いわば未使用の表現媒体識別子であることを示す。また、「other」は、登録情報719に登録されていない識別子(センサ識別子またはマーカ識別子)については、表現媒体識別子「CHR(X)」で示される表現媒体が関連づけられることを意味するが詳細は後述する。
【0072】
図4に戻って、特定部700は、撮像部75により取得された撮像情報712を画像解析することにより複数のセンサノード2の中から報知対象となるセンサノード2を特定する。言い換えれば、センサネットワークシステム1は、特定部700により、報知対象となるセンサノード2が特定されたときには、ユーザに対して、当該センサノード2により取得された監視情報211に基づく報知を行う。
【0073】
報知対象となるセンサノード2を特定するための具体手法としては、特定部700が画像解析により撮像情報712からARマーカ24の画像を抽出する。撮像情報712からARマーカ24が抽出された場合には、特定部700は、当該ARマーカ24の画像からマーカ識別子を読み取る。そして、登録情報719を参照し、読み取ったマーカ識別子に関連づけられているセンサ識別子が存在する場合には、当該センサ識別子を取得して、読み取ったマーカ識別子とともに特定情報715におけるレコードを作成する。すなわち、特定情報715におけるレコードにセンサ識別子が格納されていれば、当該格納されているセンサ識別子により、報知対象となるセンサノード2が特定されていることを意味する。一方、読み取ったマーカ識別子に関連づけられているセンサ識別子が登録情報719において存在しない場合、特定部700は、読み取ったマーカ識別子により特定情報715におけるレコードを作成する。
【0074】
また、第1の実施の形態における特定部700は、ARマーカ24が抽出された撮像情報712に基づいて、当該撮像情報712に撮像されているARマーカ24の状態を画像解析により判定する機能も有している。これにより、ARマーカ24の撮像情報712における画像内の位置や大きさ(例えば画素数)、向き等を認識し、これらの情報をマーカ識別子に関連づけて特定情報715に含める。
【0075】
また、特定部700は、取得したARマーカ24の大きさと撮像部75の撮像範囲とに基づいて、ARマーカ24(センサノード2)と撮像部75(情報処理端末7)との距離を推定し、当該距離に関する情報をマーカ識別子に関連づけて特定情報715に含める。以下の説明では、特定部700によって推定されたセンサノード2と情報処理端末7との間の距離を「第1推定距離」と称する。
【0076】
なお、撮像情報712に撮像されているARマーカ24に基づいてどのような情報を取得するかは、ここに示したものに限定されるものではなく、また、これらを全て取得しなければならないわけでもない(ただし、先述のようにマーカ識別子を読み取ることは必要。)。撮像されたARマーカ24からどのような情報をどのような手法により読み取るかは、従来のAR技術に提案されている技術を適宜適用することができる。
【0077】
さらに、特定部700は、撮像情報712から画像が抽出されなくなったARマーカ24のマーカ識別子を特定し、当該マーカ識別子によって特定されるレコードを特定情報715から削除する機能も有している。このように、特定部700によって定期的に更新されることにより、特定情報715は、撮像情報712に撮像されている状態のARマーカ24に関する情報となる。
【0078】
図7は、特定情報715の構造を例示する図である。
図7に示す例では、撮像情報712において、マーカ識別子「MRK0001」で示されるARマーカ24と、マーカ識別子「MRK0002」で示されるARマーカ24とが抽出されたことを示している。すなわち、これらのARマーカ24が撮像情報712に撮像されていることがわかる。
【0079】
また、マーカ識別子「MRK0001」で示されるARマーカ24は、センサ識別子「SEN0001」で示されるセンサノード2に対応したARマーカであることが分かる。さらに、マーカ識別子「MRK0002」で示されるARマーカ24は、未だ登録されていない未知のセンサノード2のARマーカであることも分かる。
【0080】
評価部701は、通信部76における無線通信の状態を評価する。より詳細には、通信部76が直接的な無線通信を介してセンサノード2から受信した情報(
図4においてはセンサノード2から受信した監視情報211を例に示す。)について、そのときの無線通信における受信信号強度(RSSI:Received Signal Strength Indicator)を評価し、当該受信信号強度に応じて情報処理端末7(撮像部75および通信部76)とセンサノード2との距離を推定する。評価部701は、センサノード2から受信した情報に含まれているセンサ識別子と、当該受信した情報における受信信号強度に応じて推定した距離とを関連づけて距離情報716を作成する。以下の説明では、評価部701によって推定されたセンサノード2と情報処理端末7との間の距離を「第2推定距離」と称する。
【0081】
また、評価部701は、直接的な無線通信がとぎれたセンサノード2(例えば、所定の期間、応答のないセンサノード2)のセンサ識別子と、当該センサ識別子に関連づけられている第2推定距離とを距離情報716から削除する機能も有している。このように、評価部701によって定期的に更新されることにより、距離情報716は、情報処理端末7との間で、直接的な無線通信が確立されている状態のセンサノード2を示すセンサ識別子と、当該センサノード2における第2推定距離とを示す情報となる。
【0082】
作成部702は、
図4において図示を省略しているが、演出元情報711における表現媒体識別子と、センサ識別子と、マーカ識別子とを互いに関連づけ、
図3に示す登録情報719を作成する機能を有している。なお、登録情報719については、後述する。
【0083】
作成部702は、特定部700により特定された報知対象となるセンサノード2に対応した報知情報717を作成する。より詳細には、作成部702は、特定情報715を参照して、センサ識別子を取得し、当該センサ識別子を通信部76に伝達して、当該センサ識別子によって識別されるセンサノード2(報知対象となるセンサノード2)により取得された監視情報211を送信するように通信部76に要求させる。
【0084】
通信部76が監視情報211を受信すると、特定情報715から取得したセンサ識別子により登録情報719を参照し、当該センサ識別子に関連づけられている表現媒体識別子を取得する。そして、演出元情報711を参照し、取得した表現媒体識別子に関連づけられている演出情報718の中から、受信した監視情報211に応じて(当該監視情報211を演出選択条件の1つとして設定して)、演出情報718を選択し、選択した演出情報718を含む報知情報717を作成する。作成部702がこのようにして報知情報717を作成することにより、報知情報717は、対応するセンサノード2により取得された監視情報211に応じた演出情報718を含む情報として作成される。
【0085】
なお、報知情報717は、センサネットワークシステム1がユーザに向けて報知すべきと判定した情報である。したがって、監視情報211によらない情報(例えば、単に定期的に表示するメッセージ)や、演出元情報711から選択された演出情報718以外の情報(例えば、サーバ6からのティーチング情報)、あるいは、監視情報211自体やその一部等を含んでいてもよい。
【0086】
また、作成部702は、演出元情報711から演出情報718を選択する際の演出選択条件として、特定情報715に含まれるマーカ識別子以外の情報や、距離情報716等の情報を設定する。したがって、これらの情報によっても、選択される演出情報718が変化するため、よりバラエティーに富んだ表現(情報提供)が可能となる。
【0087】
入出力制御部703は、表示部73を制御して表示部73に様々な情報を視覚情報として表示させるとともに、スピーカ74を制御してスピーカ74に様々な情報を音声として再生させる。また、入出力制御部703は、ユーザにより操作部72に対する操作がされた場合に、当該操作に応じて指示情報714を作成する。すなわち、入出力制御部703は、情報処理端末7において、一種のGUIを提供する機能をも有している。
【0088】
特に、入出力制御部703は、撮像部75により取得された撮像情報712とともに作成部702により作成された報知情報717を、表示部73およびスピーカ74に出力させる。より詳細には、入出力制御部703は、報知情報717に含まれる画像に関する情報を撮像情報712にオーバーレイ(画像合成)させて表示部73の画面に表示させる。一方、入出力制御部703は、報知情報717に含まれる音声に関する情報をスピーカ74に再生させる。
【0089】
また、入出力制御部703は、入力された指示情報714によっては、当該指示情報714を作成部702に伝達する。これにより、作成部702は、ユーザの操作に応じて、報知情報717を更新する。例えば、報知情報717として、一旦、特定の演出のキャラクタを表示した後、ユーザが当該キャラクタの画像に触れる(タッチパネル操作に相当する)と、当該キャラクタが監視情報211について説明するような演出(あらたな演出情報718)の報知情報717を作成する。
【0090】
また、入出力制御部703は、表示部73およびスピーカ74に出力された情報を報知履歴情報713として記憶装置71に保存するとともに、保存された報知履歴情報713を表示部73やスピーカ74に再生させる機能も有している。報知履歴情報713としては、主に報知情報717が想定されるが、好ましくは当該報知情報717とともに出力された撮像情報712を含む。すなわち、入出力制御部703は、報知情報717を報知履歴情報713としてアーカイブする機能を有している。
【0091】
これにより、ユーザは、例えば、出現した演出(レアな演出など)を保存しておくことができ、他のユーザに見せて自慢したり、他のアプリケーションと連携させて利用したり、あるいは、サーバ6を介して特典を得たりすることができる。すなわち、ユーザに様々なバリエーションの楽しみ方を提供できる。なお、報知履歴情報713に含まれる報知情報717は、実際に出力された報知情報717の一部のみ(例えば演出情報718のみ)であってもよい。また、このような選択は、操作部72から入力される指示情報714に応じて決定されてもよい。
【0092】
以上が、第1の実施の形態におけるセンサネットワークシステム1の構成および機能の説明である。
【0093】
次に、センサネットワークシステム1を用いて、監視情報211を提供する方法について説明する。
【0094】
図8は、第1の実施の形態における情報提供方法を示す流れ図である。
図8は、主に、情報処理端末7の処理を示している。なお、
図8に示す処理が開始されるまでに、情報処理端末7は電源が投入されており、ルータ5との間の通信が確保されているものとする。また、以下の説明では説明を省略するが、センサネットワークシステム1では、センサノード2における監視情報211の取得、および、センサノード2からサーバ6への監視情報211の送信は、所定のスケジュールに従って実行されているものとする。
【0095】
図8に示す処理が開始されると、情報処理端末7は、消費電力量を確認するためのアプリケーションが起動されたか(ステップS1)、および、ユーザにより全ての処理を終了するように指示がされたか(ステップS4)を監視する状態となる。
【0096】
この状態において、消費電力量を確認するためのアプリケーションが起動されると、CPU70は、ステップS1においてYesと判定し、情報提供処理を実行する(ステップS2)。なお、当該アプリケーションが起動される契機として想定されるものとしては、例えば、ユーザによる起動指示、サーバ6からの警報受信(監視情報211による異常検出等)、センサノード2からの登録要求受信、当該アプリケーションを格納した記憶媒体の情報処理端末7への装着、情報処理端末7の電源投入などがある。
【0097】
図8に示すように、ステップS2の情報提供処理は、一旦、アプリケーションが起動されると、当該アプリケーションの終了が指示されるまで(ステップS3においてYesと判定されるまで)継続される。また、当該アプリケーションが起動されている状況において、全ての処理を終了するように指示がされた場合は、情報処理端末7は、まず、ステップS3においてYesと判定し、アプリケーションを終了した後、ステップS4においてYesと判定し、全ての処理を終了するものとする。
【0098】
図9は、ステップS2における情報提供処理を示す流れ図である。情報提供処理とは、特定情報作成処理(ステップS11)、距離情報作成処理(ステップS12)、第1出力処理(ステップS13)、第2出力処理(ステップS14)、および、指示受付処理(ステップS15)が、それぞれ並列処理される処理である。
【0099】
先述のように、情報提供処理は、アプリケーションの終了が指示されるまで継続される処理である。したがって、ステップS11ないしS15における処理は、情報提供処理が継続される間、随時、実行される処理である。
【0100】
図10は、特定情報作成処理を示す流れ図である。特定情報作成処理では、まず、撮像部75によって撮像情報712が取得される(ステップS110)。次に、特定部700によって、ステップS110において取得された撮像情報712に対する画像解析が実行される(ステップS111)。
【0101】
ステップS111では、撮像情報712からARマーカ24の画像を抽出する処理が行われ、ARマーカ24の画像が抽出された場合には、当該抽出されたARマーカの画像から、さらに、マーカ識別子、ARマーカ24の大きさ、向き、第1推定距離、位置等の情報が取得される。ステップS111では、複数のARマーカ24について画像が抽出された場合は、それぞれについてマーカ識別子、ARマーカ24の大きさ、向き、第1推定距離、位置等の情報の取得がされる。
【0102】
ステップS111の画像解析が終了すると、特定部700は、1つでもARマーカ24の画像が抽出されたか否かを判定する(ステップS112)。
【0103】
ARマーカ24の画像がまったく抽出されなかった場合、特定部700はステップS112においてNoと判定し、ステップS113ないしS118の処理をスキップし、特定情報715においてステップS117が実行されなかったレコード(この場合は全レコード)を特定情報715から削除する(ステップS119)。すなわち、撮像情報712に、ARマーカ24がまったく撮像されていない場合には、ステップS112においてNoと判定され、特定情報715の全レコードが削除される。
【0104】
ステップS111においてARマーカ24の画像が少なくとも1つ抽出された場合、特定部700はステップS112においてYesと判定し、抽出されたいずれかのARマーカ24の画像から認識されたマーカ識別子を取得する(ステップS113)。次に、特定部700は、特定情報715を参照し、ステップS113で取得したマーカ識別子が格納されているレコードが存在するか否かを判定する(ステップS114)。
【0105】
該当するレコードが存在する場合は、当該レコードを特定し(ステップS115)、当該レコードに、ステップS113で取得されたマーカ識別子とともに、ステップS111における画像解析において取得されたARマーカ24の大きさ、向き、第1推定距離、位置等の情報が上書きで格納される(ステップS117)。
【0106】
一方、ステップS114において該当するレコードが存在しない場合、特定部700は、特定情報715の新たなレコードを作成し、当該レコードに、ステップS113で取得されたマーカ識別子とともに、ステップS111における画像解析において取得されたARマーカ24の大きさ、向き、第1推定距離、位置等の情報を格納する(ステップS117)。
【0107】
特定部700は、ステップS111における画像解析において抽出された全てのARマーカについてステップS113ないしステップS117の処理が終了したか否かを判定する(ステップS118)。
【0108】
ステップS118において、全てのARマーカ24についての処理が未だ終了していない場合は、それらのARマーカ24についてステップS113からの処理を繰り返す。一方、全てのARマーカ24についての処理が終了している場合は、特定情報715のレコードのうち、今回の特定情報作成処理においてステップS117が実行されなかったレコードを特定情報715から削除する(ステップS119)。
【0109】
特定情報715のレコードについて、ステップS117が実行されなかったレコードとは、直前までの撮像情報712には撮像されていたが、今回の特定情報作成処理においては、撮像情報712に撮像されなくなったARマーカ24に関するレコードである。したがって、ステップS119において、このようなレコードを削除することにより、特定情報715には、最新の撮像情報712に撮像されているARマーカ24に関するレコードのみ存在する状態となる。
【0110】
ステップS119を実行すると、特定部700は特定情報作成処理を一旦終了して、
図9に示す処理に戻る。
【0111】
図11は、距離情報作成処理を示す流れ図である。距離情報作成処理では、まず、情報処理端末7とセンサノード2との間の直接的な無線通信についてリンクが張られているか否かの確認がされる(ステップS121)。言い換えれば、情報処理端末7との直接的な無線通信が可能なセンサノード2がステップS121において検出される。
【0112】
ステップS121における処理は、無線通信のネゴシエーションに関する従来の技術を適用できるが、例えば、情報処理端末7から周囲のセンサノード2に対して応答要求を送信し、これに応答したセンサノード2を検出するという方法が考えられる。
【0113】
次に、評価部701が、通信部76が直接的な無線通信によりセンサノード2から受信した情報が存在していることを確認することにより、少なくとも1つのセンサノード2との間で、リンクが確認できたか否かを判定する(ステップS121)。
【0114】
直接的な無線通信が可能なセンサノード2が1つも存在しないときは、評価部701は、ステップS121においてNoと判定し、距離情報716のレコードのうち、ステップS127が実行されなかったレコード(この場合は全レコード)を距離情報716から削除する(ステップS129)。すなわち、直接的な無線通信が可能なセンサノード2が周囲に存在しないとき、ステップS121においてNoと判定され、距離情報716の全レコードが削除される。
【0115】
ステップS120において、少なくとも1つのセンサノード2との間にリンクが確認でた場合、評価部701は、ステップS121においてYesと判定し、確認されたいずれかのセンサノード2から受信した情報からセンサ識別子を取得する(ステップS122)。
【0116】
次に、評価部701は、ステップS122においてセンサ識別子を取得した情報の受信信号強度に基づいて、当該情報を送信したセンサノード2(すなわちステップS122において取得したセンサ識別子で示されるセンサノード2)と、情報処理端末7との間の第2推定距離を推定する(ステップS123)。
【0117】
さらに、評価部701は、距離情報716を参照し、ステップS122において取得したセンサ識別子が格納されているレコードが距離情報716に存在しているか否かを判定する(ステップS124)。
【0118】
そして、該当するレコードが存在する場合(ステップS124においてYes)、当該レコードを特定し、当該レコードに、ステップS123において推定した第2推定距離を上書きで格納する(ステップS127)。
【0119】
一方、ステップS124において該当するレコードが存在しない場合(ステップS124においてNo)、評価部701は、距離情報716の新たなレコードを作成し、当該レコードに、ステップS123で推定した第2推定距離を格納する(ステップS127)。
【0120】
ステップS127を実行すると、評価部701は、ステップS120においてリンクが確認できた全てのセンサノード2について、ステップS122ないしS127の処理が終了したか否かを判定する(ステップS128)。
【0121】
ステップS128において、未だ、全てのセンサノード2についての処理が終了していない場合は、ステップS122に戻って処理を繰り返す。一方、ステップS128において、すでに全てのセンサノード2についての処理が終了している場合は、今回の距離情報作成処理においてステップS127が実行されなかった距離情報716のレコードを削除する(ステップS129)。
【0122】
距離情報716のレコードについて、ステップS127の処理が実行されなかったレコードとは、直前の距離情報作成処理においては直接的な無線通信が可能であったが、今回の距離情報作成処理においては直接的な無線通信が不能になったセンサノード2に関するレコードである。したがって、ステップS129において、このようなレコードを距離情報716から削除することにより、距離情報716は、情報処理端末7との間の直接的な無線通信が可能な状態のセンサノード2に関するレコードのみとなる。
【0123】
ステップS129を実行すると、評価部701は、距離情報作成処理を一旦終了し、
図9に示す処理に戻る。
【0124】
図12は、第1出力処理を示す流れ図である。第1出力処理とは、撮像情報712に撮像されているARマーカ24に対応したセンサノード2について、当該センサノード2により取得された監視情報211に応じた演出情報718を、表示部73およびスピーカ74に出力する処理である。
【0125】
第1出力処理では、まず、作成部702が特定情報715を参照し、当該特定情報715に未処理のレコードが存在するか否かを判定する(ステップS130)。ここで、未処理とは、後述するステップS131ないしS139に示す処理が実行されていないレコードのことである。
【0126】
すでに特定情報作成処理で説明したように、本実施の形態では、特定情報715に存在するレコードは、最新の撮像情報712において、ARマーカ24が撮像されているセンサノード2に関するレコードである。情報処理端末7は、このようなセンサノード2については、後述するステップS131ないしS139に示す処理を実行し、入出力制御部703が表示部73およびスピーカ74に報知情報717を出力させる。
【0127】
ステップS130においてNoと判定された場合、特定情報715に未処理のレコードがすでに存在しない状態であるので、作成部702は、第1出力処理を一旦終了して
図9の処理に戻る。
【0128】
一方、ステップS130においてYesと判定された場合、作成部702は、当該レコードからマーカ識別子を取得する(ステップS131)。次に、特定情報715において、当該マーカ識別子にセンサ識別子が関連づけられているか否かを判定することにより、当該マーカ識別子により示されるARマーカ24(撮像されているARマーカ24)に対応するセンサノード2が、すでにセンサネットワークシステム1に登録されているか否かを判定する(ステップS132)。
【0129】
ステップS131において取得したマーカ識別子により示されるARマーカ24に対応するセンサノード2が、未だセンサネットワークシステム1に登録されていない場合、作成部702は登録処理を実行し(ステップS133)、ステップS130の処理に戻る。なお、登録処理とは、未だセンサネットワークシステム1に登録されていないセンサノード2を、センサネットワークシステム1に登録する処理であるが、詳細は後述する。
【0130】
ステップS132においてYesと判定すると、作成部702は、登録情報719を参照し、ステップS131において取得したマーカ識別子に関連づけられているセンサ識別子および表現媒体識別子を取得する(ステップS134)。これにより、当該マーカ識別子により示されるARマーカ24に対応するセンサノード2が特定されるとともに、当該センサノード2に割り当てられた表現媒体が特定される。
【0131】
次に、作成部702は、ステップS134で取得したセンサ識別子を通信部76に伝達する。これにより、通信部76は、当該センサ識別子により示されるセンサノード2により取得された監視情報211を送信するように、センサノード2(あるいはサーバ6)に要求する。この要求に対しては、センサノード2から最新の監視情報211が送信されることが好ましいが、例えば、サーバ6のデータベースに蓄積されている監視情報211の中から最新の監視情報211が送信されてもよい。
【0132】
通信部76からの要求に対して送信された監視情報211を受信すると(ステップS135)、作成部702は受信した監視情報211を取得して演出選択条件とするとともに、ステップS134において取得したセンサ識別子が格納されているレコードが距離情報716に存在するか否かを判定する(ステップS136)。
【0133】
本実施の形態では、ステップS135において受信した監視情報211が、センサノード2から送信されたものであったとしても、ゲートウェイ4およびルータ5を介して受信されている場合もありうる。すなわち、必ずしも直接的な無線通信により受信されるとは限らず、当該無線通信が情報処理端末7との間で確立できているとも限らない。そこで、作成部702は、距離情報716を参照して、当該センサ識別子で示されるセンサノード2との間に、直接的な無線通信が確立されているか否かを判定するのである。
【0134】
ステップS136においてYesと判定すると、作成部702は、距離情報716から当該センサ識別子に関連づけられている第2推定距離を取得して、演出選択条件とする。
【0135】
一方、ステップS136においてNoと判定すると、作成部702は、ステップS137をスキップする。すなわち、第2推定距離は演出選択条件とはされない。ただし、当該センサノード2との間に、「直接的な無線通信が確立できていない」という事象は演出選択条件とされてもよい。
【0136】
センサノード2とARマーカ24とが比較的近距離に存在する場合であれば、ARマーカ24が撮像されている(特定情報715のレコードが存在する)にも関わらず、センサノード2との間の直接的な無線通信が確立できていない(距離情報716のレコードが存在しない)ということは、なんらかのトラブルが考えられる。しかし、センサノード2と離れた場所に設置された管理ボード等にARマーカ24が貼付されている場合、このような現象は、ただちにトラブルを示すものとはいえない。
【0137】
次に、作成部702は、特定情報715を参照し、ステップS131において取得したマーカ識別子に関連づけて格納されている情報(ARマーカ24の大きさ、向き、第1推定距離、位置等)を取得し、これらを演出選択条件とする。そして、ステップS134で取得した表現媒体識別子と、これまでに設定した演出選択条件によって、演出元情報711の当該表現媒体識別子に関連づけられている演出情報718の中から、当該演出選択条件に合致する演出情報718を選択する(ステップS138)。
【0138】
すでに説明したように、ステップS135において、監視情報211は演出選択条件に設定されている。したがって、作成部702がステップS138を実行することにより、演出情報718は、監視情報211に応じて選択される。
【0139】
なお、本実施の形態では、第1推定距離および第2推定距離の両方が求まるときには両者の平均値を演出選択条件として設定する。ただし、これらの値を重畳的に演出選択条件として設定してもよいし、いずれか一方を優先的に採用してもよい。このように、演出選択条件に、情報処理端末7(撮像部75)とセンサノード2との距離が設定されることにより、当該距離の変化によって選択される演出情報718を変更でき、表現媒体による演出を変化させることができる。
【0140】
演出情報718の選択が終了すると、作成部702は、選択した演出情報718を含む報知情報717を作成する。そして、入出力制御部703が、作成された報知情報717を撮像情報712とともに表示部73およびスピーカ74に出力させる(ステップS139)。より詳細には、報知情報717のうち画像に関する情報については撮像情報712に画像合成して表示部73に表示させるとともに、報知情報717のうち音声に関する情報についてはスピーカ74に再生させる。
【0141】
このように、情報処理端末7の撮像部75によって、センサノード2(ARマーカ24)を撮像することにより、当該ARマーカ24が撮像されている位置(主にセンサノード2の近傍)に、当該センサノード2により取得された監視情報211に応じた演出情報718を表示することができる。したがって、例えば、撮像しているセンサノード2に割り当てられた仮想的なキャラクタを、現実世界を表現した撮像情報712に合成して表示することができるとともに、当該キャラクタに現実世界の状況に応じて動的に変化する監視情報211を表現させることにより、仮想(バーチャル)と現実(リアル)との融合を図ることができる。これにより、センサネットワークシステム1は、ユーザが把握しやすい状態で監視情報211を提供できるとともに、ユーザを楽しませることができ、飽きさせないアプリケーションを提供することができる。
【0142】
なお、撮像情報712において抽出されたARマーカ24の画像は、当該撮像情報712において、入出力制御部703により他の画像に置換(あるいは修正)されてもよい。ARマーカ24の画像が表示部73に表示されたとしても、ユーザは当該画像を意味のある情報として認識することは困難である。それどころか、ARマーカ24の画像が表示されることによって、表示部73により提供される報知情報717が見づらくなるおそれもある。したがって、ARマーカ24の画像を、例えば、センサノード2の外面色で塗りつぶす等の画像処理を施すことにより、報知情報717がより見やすくなる効果がある。
【0143】
次に、ステップS133の登録処理について説明する。
【0144】
図13は、登録処理を示す流れ図である。登録処理が開始されると、まず、作成部702は、ステップS131において取得されたマーカ識別子に関連づけられている表現媒体識別子を登録情報719から取得する(ステップS21)。
【0145】
なお、当該マーカ識別子に対応するセンサノード2は、未だセンサネットワークシステム1に登録されていないので、ステップS21が実行されるときにおいて、当該マーカ識別子に一致するマーカ識別子は登録情報719には存在していない。しかし、このような場合、作成部702は、マーカ識別子「other(
図6参照)」に関連づけられている表現媒体識別子「CHR(X)」を取得する。すなわち、表現媒体識別子「CHR(X)」は、登録情報719において未登録のマーカ識別子(一致するマーカ識別子が存在しないマーカ識別子)対応する表現媒体識別子である。
【0146】
次に、作成部702は、ステップS134において取得したマーカ識別子に関連づけて格納されている情報(ARマーカ24の大きさ、向き、第1推定距離、位置等)を、特定情報715から取得して演出選択条件として設定する。そして、ステップS21において取得した表現媒体識別子に関連づけられている演出情報718の中から、当該演出選択条件に応じて演出情報718を選択する(ステップS22)。
【0147】
演出情報718の選択が完了すると、作成部702は、ステップS22において選択した演出情報718を含む報知情報717を作成する(ステップS23)。さらに、入出力制御部703が、撮像情報712とともに、ステップS23において作成された報知情報717を出力させる。
【0148】
表現媒体識別子「CHR(X)」で示される表現媒体は、いわば未登録のセンサノード2に割り当てられる表現媒体である。このような表現媒体として、例えば、表情等が判然としない影としてのキャラクタ等が考えられる。そして、このような正体不明のキャラクタが撮像情報712に合成されて、表示されることによって、ユーザは、当該センサノード2(ARマーカ24)が未登録であることを容易に理解する。
【0149】
ステップS24が実行されて、当該ARマーカ24が貼付されているセンサノード2が未登録であることを知らせる報知情報717が出力されると、入出力制御部703は当該センサノード2を登録するか否かの指示を受け付ける状態となる。この状態で、操作部72か操作され、登録することが指示されると、入出力制御部703はステップS25においてYesと判定する。一方、登録しないことが指示された場合は、入出力制御部703は、ステップS26ないしS29の処理をスキップして、登録処理を終了し、
図12の処理に戻る。
【0150】
ステップS25においてYesと判定されると、作成部702が、登録処理を行うことを演出選択条件に設定して、演出情報718の選択を行い、ステップS22において選択された演出情報718が変更される(ステップS26)。この変更された演出情報718に基づいて、ステップS23およびS24と同等の処理が実行され、表示部73の表示が変更される。例えば、このとき表示される表示媒体としては、ペアリングするための操作ボタン等が想定される。
【0151】
次に、CPU70は、未登録のセンサノード2から登録要求を示す信号を受信するまで待機する状態となる(ステップS27)。なお、この待機状態にはタイムアウト等のエラー処理が設けられていることが望ましい。
【0152】
ステップS27により待機状態にある間に、操作部72が操作されると(上記例における表示媒体としての操作ボタンがタッチされる等)、実質的に、撮像範囲内に存在するセンサノード2のみが受信できるレベルで、通信部76が登録要求の送信要求を送信する。これに応答して登録要求が受信されると(ステップS27においてYes)、作成部702は、当該受信された登録要求に含まれている当該登録要求を送信したセンサノード2を示すセンサ識別子を取得する(ステップS28)。
【0153】
このようにして新たに登録されるべきセンサノード2を示すセンサ識別子が取得されると、作成部702は、登録情報719を参照して、未だ、センサ識別子と関連づけられていない表現媒体識別子を特定する。さらに、特定した当該表現媒体識別子が格納されているレコード(登録情報719のレコード)に、ステップS131で取得したマーカ識別子とステップS28で取得したセンサ識別子とを格納することにより登録情報719を更新する(ステップS29)。これによって、新しく登録されたセンサノード2のセンサ識別子がセンサネットワークシステム1に取得されるとともに、当該センサノード2に、1つの表現媒体が割り当てられ、当該センサノード2に対応するARマーカ24のマーカ識別子も関連づけられる。
【0154】
ステップS29を実行すると、作成部702は、登録処理を終了して、
図12に示す処理に戻る。
【0155】
図14は、第2出力処理を示す流れ図である。第2出力処理とは、直接的な無線通信が確立しており、情報処理端末7の周囲にセンサノード2が存在している蓋然性が高いにもかかわらず、撮像情報712にはARマーカ24が撮像されていない場合において、報知情報717を出力する処理である。
【0156】
一般的なAR技術においては、ARマーカ24が撮像されない限り、報知情報717を表示することはできない。しかし、第1の実施の形態におけるセンサネットワークシステム1では、情報処理端末7とセンサノード2とが、直接的な無線通信を行う機能を有しているため、このような場合でも、適切な報知情報717を出力することが可能である。
【0157】
第2出力処理では、まず、作成部702が距離情報716を参照し、未処理のレコードが存在するか否かを判定する(ステップS141)。ステップS141において未処理のレコードとは、ステップS142ないしS149の処理がされていないレコードのことである。
【0158】
未処理のレコードが存在しない場合には、作成部702は、ステップS141においてNoと判定し、第2出力処理を一旦終了して
図9の処理に戻る。
【0159】
一方、未処理のレコードが存在する場合には、作成部702は、当該レコードに格納されているセンサ識別子を取得する(ステップS142)。このとき取得されるセンサ識別子は、情報処理端末7との間で、直接的な無線通信が確立されている状態のセンサノード2のセンサ識別子である。
【0160】
次に、作成部702は、ステップS142において取得されたセンサ識別子が特定情報715に格納されているか否かを判定する(ステップS143)。特定情報715に格納されているセンサ識別子とは、対応するARマーカ24が撮像情報712において撮像されているセンサノード2を示すセンサ識別子である。
【0161】
ステップS143においてYesと判定すると、作成部702は、当該センサ識別子で示されるセンサノード2が、撮像情報712によって特定可能であり、このようなセンサノード2に対しては、すでに説明した第1出力処理を優先させるべく、第2出力処理による報知情報717の出力(後述するステップS149)をスキップして、ステップS141の処理に戻る。
【0162】
ステップS142において取得したセンサ識別子が特定情報715に格納されていない場合(ステップS143においてNo)、作成部702は、登録情報719を参照して、当該センサ識別子が登録情報719に登録されているか否かをさらに判定する(ステップS144)。なお、このときのセンサ識別子は評価部701により特定されたセンサ識別子であり、当該センサ識別子は特定情報715には格納されていない(特定部700によっては特定されていない。)。したがって、評価部701は、後に作成される報知情報717の対象となるセンサノード2を、特定部700に代わって特定する場合があり、特定部700の機能を補う機能を有している。
【0163】
ステップS144においてNoと判定すると、作成部702は、登録されていないセンサノード2からの情報をたまたま受信したものと判定し、当該センサノード2については無視するため、やはりステップS149をスキップし、ステップS141の処理に戻る。このような場合にも登録処理を実行するとすると、例えば、別の家で稼働中のセンサノード2の電波が混信等により、当該情報処理端末7に誤って受信された場合に、不都合を生じる。したがって、センサネットワークシステム1では、先述のように、このようなセンサノード2(直接的な無線通信は確立しているが、ARマーカ24が撮像されてもおらず、かつ、登録もされていないセンサノード2)に関しては、無視するように扱う。
【0164】
ステップS144においてYesと判定すると、作成部702は、登録情報719を参照して、ステップS142において取得されたセンサ識別子に関連づけられている表現媒体識別子を取得する(ステップS145)。これにより、当該センサノード2の表現媒体が特定される。
【0165】
次に、作成部702は、距離情報716を参照し、当該センサ識別子に関連づけられている第2推定距離を取得して演出選択条件として設定する(ステップS146)。そして、演出元情報711を参照して、ステップS145で取得した表現媒体識別子に関連づけられている演出情報718の中から、設定されている演出選択条件に応じた演出情報718を選択する(ステップS147)。このように、センサネットワークシステム1では、例え、撮像情報712にARマーカ24が撮像されておらず、特定部700による各種状況の取得ができない場合であっても、評価部701によって推定される第2推定距離の違いに応じて、演出情報718を選択できる。すなわち、距離に応じた演出を出力できる。
【0166】
なお、センサノード2との間の通信が確立されていれば、ARマーカ24が撮像されていないセンサノード2についても監視情報211を受信することは可能である。したがって、ステップS147を実行する前に、当該監視情報211に応じて演出選択条件を設定してもよい。すなわち、第2推定距離のみならず、監視情報211に応じて演出情報718が選択されるようにしてもよい。
【0167】
演出情報718の選択が完了すると、作成部702は、選択した演出情報718を含む報知情報717を作成する(ステップS148)。そして、入出力制御部703が、撮像情報712とともに、ステップS148において作成された報知情報717を出力させる(ステップS149)。この場合、撮像情報712にはARマーカ24が撮像されていないので、報知情報717を撮像情報712におけるどの位置に表示させるかを決定する必要がある。しかし、このような場合の表示位置を予め設定しておけば、表示位置を容易に決定できるとともに、そのような位置に報知情報717が表示された場合には、ユーザは該当するセンサノード2(ARマーカ24)が撮像情報712に撮像されていなくとも、当該センサノード2が近傍に存在することを認識できる。なお、予め設定しておく表示位置としては、例えば、撮像範囲の端部付近等が考えられる。
【0168】
ARマーカ24を撮像しようと思えば、ユーザはARマーカ24の現実世界における存在場所をある程度知っている必要がある。しかし、他人が設置したセンサノード2について監視情報211を確認したい場合など、ユーザは必ずしもARマーカ24の存在場所を知っているとは限らない。しかし、センサネットワークシステム1は、例え、ARマーカ24を撮像できない状況であっても、ユーザに報知情報717(演出情報718)を出力することができる。直接的な無線通信が確立できる範囲は、撮像部75による撮像範囲より一般的に広いので、ユーザはセンサノード2の存在場所を正確に知っていなくても、センサノード2に関する何らかの情報を得ることができる。
【0169】
また、このときに出力される報知情報717は、第2推定距離に応じて変化させることができる。したがって、例えば、センサノード2に近づくほど当該センサノード2に割り当てられた表現媒体の表示サイズを大きくする、あるいは、距離に応じて表現媒体の反応に変化をつけるといった演出変更を行えば、ユーザは存在場所を知らないセンサノード2を報知情報717に従って探索するという楽しみ方もできる。また、楽しみながらセンサノード2を探索することにより、自然と、必要な監視情報211の収集、確認等が行えるという利点もあり、センサネットワークシステム1の利用が促進される。
【0170】
図15は、指示情報受付処理を示す流れ図である。指示情報受付処理とは、ユーザによる操作部72に対する操作を、状況に応じて解釈し、ユーザの意図した処理を実行する処理である。
【0171】
指示情報受付処理では、まず、入出力制御部703が操作部72が操作されたか否かを監視しており(ステップS151)、操作部72が操作されると、ステップS151においてYesと判定する。操作部72が操作されていないときは、入出力制御部703はステップS151においてNoと判定し、指示受付処理を一旦終了して
図9に示す処理に戻る。
【0172】
ステップS151においてYesと判定すると、入出力制御部703は、ユーザの操作部72に対する操作と、当該操作がされたときの状況(表示部73に表示されていた画像の種別や、タッチパネルに対する接触位置等)に応じて、指示情報714を作成する(ステップS152)。指示情報714が作成されると、当該指示情報714が意図するところの処理を実行し(ステップS153)、指示受付処理を終了して
図9に示す処理に戻る。
【0173】
情報提供処理が継続している間に操作部72を操作することにより、ユーザが意図する処理としては様々な処理が考えられる。
【0174】
例えば、演出情報718を選択しなおす処理である。キャラクタの表情により監視情報211が誇張された演出で出力されている状況で、当該キャラクタの画像が表示されている領域に触れると、キャラクタの表情を決定している演出情報718が他の演出情報718に選択しなおされる場合などである。そして、新たに選択された演出情報718を含む報知情報717が作成され出力されることにより、監視情報211の詳細が表示されたり、過去からの比較や他のユーザとの比較等が表示されたりする例が考えられる。
【0175】
また、第1の実施の形態では、電化製品の消費電力量が監視情報211として収集されるため、表示媒体を、対応する電化製品で表現することも考えられる。あるいは、さらに、キャラクタが当該電化製品を使用している態様で演出が出力されてもよい。
【0176】
また、センサノード2やサーバ6に送信する情報を指示情報714として作成し、当該指示情報714を通信部76に送信させる処理である。例えば、ユーザは、センサノード2のセンシング間隔や通信スケジュール、ロック等を制御する指示情報714を、通信部76からセンサノード2に向けて送信させることで、センサノード2を意図したように操作できる。
【0177】
さらに、操作部72が操作されることにより意図される処理としては、出力された報知情報717を報知履歴情報713として保存する処理もある。あるいは、保存されている報知履歴情報713を表示部73やスピーカ74に再生する処理もある。これにより、ユーザは、任意のタイミングで、報知情報717(演出情報718)をアーカイブし、後に、これを再生して楽しむことができる。
【0178】
以上が、第1の実施の形態におけるセンサネットワークシステム1により提供される、いわばシステムのプラットホームの説明である。
【0179】
次に、このようなプラットホームを用いて、どのようなアプリケーションが具体的に実現できるかについて説明する。ただし、すでに説明したものは省略する。
【0180】
例えば、消費電力を測定するセンサノード2には、雷神の外観を有するキャラクタを表現媒体として割り当てる、そして、消費電力量に応じて選択される演出情報718としては、消費電力が大きいときには雷神が顔を真っ赤にして太鼓をたたき、消費電力が小さいときには昼寝をしている等の演出を行うとユーザは直感的に監視情報211の内容を理解しやすい。あるいは、土壌水分、温度、湿度、日照などを検出するそれぞれのセンサノード2については、それぞれの監視情報211の属性を表現する妖精のキャラクタを表現媒体として割り当てるとよい。
【0181】
また、サーバ6から得られる過去からの経過に応じて、表現媒体としてのキャラクタが異なる状態に成長したり、イベントが発生したりすることも考えられる。
【0182】
また、上記実施の形態では、情報処理端末7の内部に設けられた記憶装置71に演出元情報711が記憶されていた。しかし、例えば、メモリカードのような着脱自在の記憶媒体により演出元情報711を提供し、当該メモリカードによって提供されるアプリケーションごとに、あるいは、当該メモリカードごとに、キャラクタが変更されるなどしてもよい。このような構成の具体例としては、あるアプリケーションを記憶したメモリカードが情報処理端末7に装着されているときには、当該アプリケーションに登場するキャラクタが各センサノード2に割り当てられたり、逆に、当該アプリケーションの進行にセンサノード2により取得される監視情報211が影響を与えたりすることも考えられる。
【0183】
また、情報処理端末7とセンサノード2との距離に応じて演出を変更することができることを利用して、距離が遠いほど音声や鳴き声、BGM等の音量が小さくなったり、ある閾値よりも距離が遠い場合にはキャラクタがユーザに気づかず反応しない等の演出変化も考えられる。
【0184】
なお、キャラクタが反応しないような状況では、一見、監視情報211の確認が遅れる場合も想定されうるが、アプリケーションを楽しむという意味では、監視情報211が直ちに出力されない方がリアリティがあって好ましい場合もある。このような場合としては、例えば、キャラクタの表情によって監視情報211が表現されている場合において、ユーザがARマーカ24を後ろから撮像していてキャラクタの後ろ姿のみが表示され、肝心の表情が確認できない場合などである。
【0185】
また、見えないものを可視化するアプリケーションとしては、室内のイオン濃度や、臭い、消費電力の量に応じてCO2の発生量として可視化する。あるいは、湿度をウイルスや細菌の量で表現した演出による可視化等が考えられる。
【0186】
図16は、報知情報717として、監視情報211の詳細な情報(監視情報211の過去との比較をグラフ化した画像情報)が表示される例を示した図である。ここまでは、主に、監視情報211を簡素化表現する、あるいは、誇張表現する報知情報717を撮像情報712にオーバーレイさせる例について説明したが、例えば、そのような報知情報717を表示した後に、ユーザからの指示があれば、
図16に示すように、詳細な監視情報211を表現した演出が出力されてもよい。
【0187】
図17は、複数のセンサノード2(ARマーカ24)が撮像部75の撮像範囲に存在する場合に出力される報知情報717を例示する図である。これまでにも説明したように、撮像情報712に撮像されるARマーカ24は、1つに限定されるものではない。
図17に示すように、複数のセンサノード2(ARマーカ24)を同時に撮像する場合には、各センサノード2間の通信経路や通信速度、あるいは、RSSI値、センサノード2間の相関関係等を表示してもよい。
【0188】
すなわち、複数のセンサノード2のARマーカ24が撮像されていることや、メンテナンスに関する情報等(すなわち、監視情報211ではない情報)のみを演出選択条件として設定してもよい。例えば、通信速度やRSSI値は、監視情報211と同様に現実世界の状況に応じて動的に変化する情報であるが、これらはセンサノード2により取得される情報ではないので、監視情報211には該当しない。
【0189】
図18は、表現媒体が操作ボタンである場合に出力される報知情報717を例示する図である。第1の実施の形態では、
図13に示した登録処理において、ペアリングのための操作ボタンが表現媒体として表示される例を説明した。
図18に示すように、装置等の遷移状態(演出選択条件として設定する)に応じて報知情報717として表示される画像は、あたかもソフトウェアスイッチを構成する画像であってもよい。このような報知情報717を出力することにより、充実した高機能の操作部を設けることのできないセンサノード2に、操作容易な擬似的な操作部を提供できる。これにより、センサノード2のハードウェア構成をさらに簡素化できる。
【0190】
また、あらゆる遷移状態に対応できるように、多くのキーやボタンを設けると操作が複雑になるという問題がある。しかし、
図18に示すように、装置の遷移状態に応じて、現状で入力可能な情報にのみ対応する操作ボタンのみをユーザに示すことが可能となり、操作が簡素化される。
【0191】
以上のように、第1の実施の形態におけるセンサネットワークシステム1は、現実世界を表現した情報を監視情報211として取得する1以上のセンサノード2と、センサノード2により取得された監視情報211を収集する情報処理システム3とを備え、情報処理システム3は、現実世界を撮像して撮像情報712を取得する撮像部75と、撮像部75により取得された撮像情報712を画像解析することにより1以上のセンサノード2の中から報知対象となるセンサノード2を特定する特定部700と、特定部700により特定された報知対象となるセンサノード2に対応した報知情報717を作成する作成部702と、撮像部75により取得された撮像情報712とともに作成部702により作成された報知情報717を出力する入出力制御部703とを備え、報知情報717は、対応するセンサノード2により取得された監視情報211に応じた演出情報718を含む。これにより、現実世界を撮像した撮像情報712とともに、現実世界の状況に応じて動的に変化する演出情報718が出力されるので、例えば監視情報211に対する臨場感が高まり、ユーザが楽しみながらセンサネットワークシステム1を使用することができる。また、演出情報718を工夫することにより、センサノード2により収集された監視情報211を直感的に把握できるようになるため、ユーザは現実世界の状況を容易に理解することができるようになる。
【0192】
また、キャラクタに関する情報である演出元情報711を記憶する記憶装置71をさらに備え、報知情報717は、記憶装置71に記憶されたキャラクタに関する情報を含むことにより、例えば、監視情報211をキャラクタにより表現した演出情報718が出力されるので、ユーザの親近感が増大する。
【0193】
また、記憶装置71に記憶されるキャラクタに関する情報は、1以上のセンサノード2ごとに、登録情報719により、それぞれ割り当てられていることにより、報知情報717として出力されるキャラクタの違いによって、どのセンサノード2を表現しているのかが容易に判断できる。
【0194】
また、報知情報717を報知履歴情報713として保存する記憶装置71を備え、監視情報211に応じた演出情報718を含む報知情報717を保存することにより、例えば、ユーザは他人に珍しい演出情報718を自慢することができる。
【0195】
また、1以上のセンサノード2との間で、直接的な無線通信を行う通信部76と、通信部76における無線通信の状態を評価する評価部701とをさらに備え、撮像部75は、通信部76と一体的な構造物を構成しており、作成部702は、評価部701による評価に基づいて評価部701により特定された報知対象となるセンサノード2と撮像部75との間の第2推定距離を推定し、当該第2推定距離に応じて、報知対象となるセンサノード2に対応して作成すべき報知情報717を作成する。これにより、撮像情報712に撮像されていないときでも、第2推定距離に応じて演出情報718を選択することができる。したがって、例えば、撮像部75により撮像ができない状況であっても、センサノード2を探索したり、監視情報211を確認したりすることができる。
【0196】
なお、本実施の形態では、特定部700が第2推定距離を求めて、これに応じて、撮像情報712にオーバーレイさせる画像の大きさを決定すると説明した。しかしながら、撮像情報712にオーバーレイさせる画像の大きさを決定するためには、必ずしも第2推定距離を求める必要はない。例えば、撮像情報712におけるARマーカ24の大きさと、撮像情報712にオーバーレイさせる画像の大きさとの比率(拡大縮小比率)を予め決定しておけば、ARマーカ24の大きさが検出された時点で、撮像情報712にオーバーレイさせる画像の大きさを決定できる。
【0197】
また、第1の実施の形態では、センサノード2に対応したARマーカ24を撮像することにより、対象となるセンサノード2の特定を行っていた。しかし、例えば、撮像されたセンサノード2の外観(形状や色彩)を画像認識することにより特定を行ってもよい。その場合は、ARマーカ24に相当する構成が不要となる利点がある。ただし、各センサノード2ごとの外観を異なるものとすることが好ましい。あるいは、外観で検出する場合において、同一の外観のセンサノード2が複数存在する場合には、RSSIの値が高いセンサノード2が撮像されているセンサノード2であるとして特定してもよい。また、例えば、センサノード2の外面にLEDを設け、撮像情報712における当該LEDの発光パターン(色パターンや配置パターン、点滅パターン等)によって特定するとしてもよい。また、発光パターンで検出する場合には、情報処理端末7からのビーコン等を受信してから発光させるように構成すれば、消費電力を抑制することができる。
【0198】
<2. 第2の実施の形態>
第1の実施の形態におけるセンサネットワークシステム1は、情報処理端末7が、センサノード2との間で直接的な無線通信を行う構成および機能を有していた。しかし、このような構成および機能がなくても、本発明は実現可能である。
【0199】
図19は、第2の実施の形態におけるセンサネットワークシステム1aを示す図である。センサネットワークシステム1aは、情報処理端末7の代わりに、情報処理端末7aを備えている点がセンサネットワークシステム1と異なっている。以下の説明では、第2の実施の形態におけるセンサネットワークシステム1aについて、第1の実施の形態におけるセンサネットワークシステム1と同様の機能を有する構成には同一の符号を付し、適宜、説明を省略する。
【0200】
第2の実施の形態における情報処理端末7aは、センサノード2との間で、直接的な無線通信を行うことができないことを除いては、第1の実施の形態における情報処理端末7とほぼ同様の構成である。
【0201】
このような情報処理端末7aによれば、センサノード2から送信される情報は、すべてゲートウェイ4およびルータ5を介して受信される。したがって、RSSI値に基づいて、第1の実施の形態における第2推定距離を求めることはできない。すなわち、情報処理端末7aは、評価部701に相当する構成は実現できない。
【0202】
このため、第2推定距離に応じて演出情報718を選択することはできず、センサノード2と情報処理端末7aとの間の距離は第1推定距離によって演出を変更することしかできない。
【0203】
しかし、第2の実施の形態におけるセンサネットワークシステム1aは、それ以外の点については、第1の実施の形態におけるセンサネットワークシステム1と同様の効果を得ることができる。
【0204】
<3. 第3の実施の形態>
上記実施の形態におけるセンサネットワークシステム1,1aは、いずれもゲートウェイ4を備えており、センサノード2とサーバ6との間の通信を中継するように構成されていた。
【0205】
図20は、第3の実施の形態におけるセンサネットワークシステム1bを示す図である。第3の実施の形態におけるセンサネットワークシステム1bは、ゲートウェイ4が存在していない。そして、センサノード2とゲートウェイ4との間の無線通信および有線通信(商用電力線8による通信)がなく、センサノード2とルータ5(サーバ6)との間の通信は、すべて情報処理端末7を介して行われる点が、第1の実施の形態におけるセンサネットワークシステム1と異なっている。以下の説明では、第3の実施の形態におけるセンサネットワークシステム1bについて、第1の実施の形態におけるセンサネットワークシステム1と同様の構成および機能については同符号を付し、適宜説明を省略する。
【0206】
一般に、任意の場所に移動して撮像を行う装置として構成される情報処理端末7は携帯型の装置として構成されることが好ましい。その一方で、携帯型の装置は、所在が不確定であり、情報処理端末7が遠方に存在しているときには、センサノード2との間の直接的な無線通信が確立できないことも想定される。また、情報処理端末7は、常時起動されていることを期待することも困難であり、ユーザが使用していない期間は電源がOFFされることが頻繁に想定される。
【0207】
一方で、第3の実施の形態におけるセンサノード2は、ゲートウェイ4との間の通信を実現する構成を省略することができることから、第1の実施の形態におけるセンサノード2よりもコスト抑制効果が期待できる。また、複数の通信相手を有する場合、通信制御も複雑になるという問題があるから、その点でも第3の実施の形態は第2の実施の形態に比べて有利である。
【0208】
これに対して、ゲートウェイ4のような装置は、据え置き型の装置として構成され、通常は、電源が投入されたままで運用される。したがって、上記実施の形態におけるセンサネットワークシステム1,1aにおいては、センサノード2とゲートウェイ4との間の通信は比較的安定している。
【0209】
このことから、ゲートウェイ4に相当する構成が存在しない第3の実施の形態におけるセンサネットワークシステム1bでは、センサノード2と情報処理端末7との間の通信が途切れている期間は、センサノード2はサーバ6に対して監視情報211を送信し、データベースに保管させることができない。したがって、センサノード2が比較的大容量の記憶装置21を備えていなければ、情報のオーバーフローにより、監視情報211のログが正常に記録されないおそれがある。
【0210】
以上のような利害特性を考慮して、センサネットワークシステムの目的や構成に応じて、適宜、選択すれば、第3の実施の形態におけるセンサネットワークシステム1bも、第1の実施の形態におけるセンサネットワークシステム1と同様の効果を得ることができる。
【0211】
<4. 変形例>
以上、本発明の実施の形態について説明してきたが、本発明は上記実施の形態に限定されるものではなく様々な変形が可能である。
【0212】
例えば、上記実施の形態に示した各工程は、あくまでも例示であって、同様の効果が得られるならば、適宜、順序や処理内容が変更されてもよい。
【0213】
また、上記実施の形態に示した機能ブロック(特定部700や作成部702等)はソフトウェアにより実現されていると説明した。しかし、これら機能の一部または全部を専用の論理回路(ハードウェア)で実現してもよい。例えば、特定部700における画像解析を行う機能については、専用の画像処理ボード等によって実現すれば、処理を高速化できる。
【0214】
また、情報処理端末7において実現されていた機能または情報処理端末7において記憶されていた情報について、その一部が、サーバ6において実現され、記憶されていてもよい。すなわち、情報処理システム3のいずれで実現されていてもよい。
【0215】
また、情報処理端末7に、マイクおよび音声認識機能を搭載することにより、ユーザの声による、キャラクタとのコミュニケーションを実現してもよい。このように構成することにより、ユーザのキャラクタ(表現媒体)に対する親近感が増幅される。