JP2011039731A - 仮想空間利用型機器制御システム、現実空間制御システム、及び仮想空間利用型機器制御プログラム - Google Patents

仮想空間利用型機器制御システム、現実空間制御システム、及び仮想空間利用型機器制御プログラム Download PDF

Info

Publication number
JP2011039731A
JP2011039731A JP2009185689A JP2009185689A JP2011039731A JP 2011039731 A JP2011039731 A JP 2011039731A JP 2009185689 A JP2009185689 A JP 2009185689A JP 2009185689 A JP2009185689 A JP 2009185689A JP 2011039731 A JP2011039731 A JP 2011039731A
Authority
JP
Japan
Prior art keywords
virtual
real
control
space
virtual space
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2009185689A
Other languages
English (en)
Other versions
JP5312257B2 (ja
Inventor
Yasutomo Matsuoka
康友 松岡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Takenaka Komuten Co Ltd
Original Assignee
Takenaka Komuten Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Takenaka Komuten Co Ltd filed Critical Takenaka Komuten Co Ltd
Priority to JP2009185689A priority Critical patent/JP5312257B2/ja
Publication of JP2011039731A publication Critical patent/JP2011039731A/ja
Application granted granted Critical
Publication of JP5312257B2 publication Critical patent/JP5312257B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

【課題】各制御対象機器の制御を現実空間ではなく仮想空間においてソフトウエア主体の制御システムで実行可能とすることで、現実空間におけるハードウェアへの依存度を低減し、簡易な構成でより高度な機器制御機能を実現することができる、仮想空間利用型機器制御システム等を提供すること。
【解決手段】
仮想空間利用型機器制御システム1は、現実空間に配置された現実機器61、62に対応する仮想機器71、72を仮想空間の内部において利用者が認識可能となるように配置するものであって、仮想機器71、72に対する制御が行われた場合に当該制御の内容を特定する制御データを出力する仮想空間制御システム10と、この仮想空間制御システム10から出力された制御データに基づいて、現実機器61、62を制御する現実空間制御システム20とを備える。
【選択図】図1

Description

本発明は、現実空間に配置された制御対象機器を、仮想空間を介して制御するための仮想空間利用型機器制御システム、現実空間制御システム、及び仮想空間利用型機器制御プログラムに関する。
建物の内部や外部に配置された各種機器をコンピュータ制御することで、これらの機器の遠隔操作や一元管理を行うことが可能となってきている。また、機器の状態等を検知するセンサ技術や、家電を含むあらゆる機器に対する通信制御を可能とするユビキタス技術が浸透してきており、機器制御技術の実用化が進んでいる。
特に、近年では、制御対象となる各機器の機能が高度化したり、各機器を単体ではなく複数連携させることで利用者に新たな価値を提供しようとする傾向が強くなっており、このような傾向に伴って、これらの機器を制御する制御システム自体も一層複雑化する傾向にある。例えば、特許文献1には、複数の電子機器を組み合わせて制御する機器制御サービスの要求をネットワーク経由で受け付け、当該受け付けた機器制御サービスに基づいて、各電子機器を制御する機器制御サーバに対して機器制御処理の実行を自動的に依頼するシステム等が開示されている。
特開2006−228063(段落0007等)
しかしながら、上記従来のシステムでは、制御対象機器の単体制御や連携制御を、ハードウェア中心の制御システムによって行っていたので、各制御対象機器の機能の複雑性、制御対象機器の数、あるいは各制御対象機器の相互間で要求される連携制御の複雑性が増大するに伴って、制御システム自体も極端に複雑化するという問題があった。特に、様々なメーカーによって提供された複数の制御対象機器に対しては、相互に異なるプロトコルが実装されていることも多く、プロトコルのデファクトスタンダードが定まっていないために、制御対象機器を実際に連携させることが困難な場合も多かった。
本発明は、上記に鑑みてなされたものであって、各制御対象機器の制御を現実空間ではなく仮想空間においてソフトウエア主体の制御システムで実行可能とすることで、現実空間におけるハードウェアへの依存度を低減し、簡易な構成でより高度な機器制御機能を実現することができる、仮想空間利用型機器制御システム、現実空間制御システム、及び仮想空間利用型機器制御プログラムを提供することを目的とする。
上述した課題を解決し、目的を達成するために、請求項1に記載の仮想空間利用型機器制御システムは、現実空間に配置された現実機器に対応する仮想機器を仮想空間の内部において利用者が認識可能となるように配置するものであって、前記仮想機器に対する制御が行われた場合に当該制御の内容を特定する制御データを出力する仮想空間制御手段と、前記仮想空間制御手段から出力された制御データに基づいて、前記現実機器を制御する現実空間制御手段とを備える。
また、請求項2に記載の仮想空間利用型機器制御システムは、請求項1に記載の仮想空間利用型機器制御システムにおいて、前記仮想空間制御手段は、前記仮想空間の内部における前記仮想機器から所定範囲以内の位置において仮想的に発話された内容に基づいて、当該仮想機器に対する制御を行うと共に、前記制御データの出力を行う。
また、請求項3に記載の仮想空間利用型機器制御システムは、請求項1又は2に記載の仮想空間利用型機器制御システムにおいて、前記仮想空間制御手段は、前記仮想機器に対する制御が行われた場合に、当該制御の内容に基づいて、当該仮想機器と連携制御すべき他の仮想機器の連携制御内容を特定し、当該特定した連携制御内容に基づいて当該他の仮想機器を制御する。
また、請求項4に記載の現実空間制御システムは、現実空間に配置された現実機器に対応する仮想機器を仮想空間の内部において利用者が認識可能となるように配置する仮想空間制御手段であって、前記仮想機器に対する制御が行われた場合に当該制御の内容を特定する制御データを出力する仮想空間制御手段に対して、通信可能に接続された現実空間制御システムであって、前記仮想空間制御手段から出力された制御データに基づいて、前記現実機器を制御する現実空間制御手段を備える。
また、請求項5に記載の仮想空間利用型機器制御プログラムは、コンピュータを、現実空間に配置された現実機器に対応する仮想機器を仮想空間の内部において利用者が認識可能となるように配置するものであって、前記仮想機器に対する制御が行われた場合に当該制御の内容を特定する制御データを出力する仮想空間制御手段と、前記仮想空間制御手段から出力された制御データに基づいて、前記現実機器を制御する現実空間制御手段として機能させる。
請求項1に記載の仮想空間利用型機器制御システム、請求項4に記載の現実空間制御システム、あるいは請求項5に記載の仮想空間利用型機器制御プログラムによれば、仮想機器に対する制御を行うことで現実機器を制御することが可能となるので、各現実機器の制御を現実空間ではなく仮想空間においてソフトウエア主体の制御システムで実行可能とすることで、現実空間におけるハードウェアへの依存度を低減し、簡易な構成でより高度な機器制御機能を実現することができる。
このことにより、現実空間に配置するハードウェアを極力簡易化しつつ、現実機器に対する高度で複雑な制御を行うことが可能となる。
また、ソフトウエア主体の制御システムは機能の変更や組替えが簡単であるため、現実機器の追加や変更にも容易に対応することが可能となる。
また、請求項2に記載の仮想空間利用型機器制御システムによれば、仮想機器に対する仮想的な発話によって、仮想機器に対する制御等を行うと共に制御データの出力を行うので、仮想機器に対する制御を一層容易に行うことができ、ひいては現実機器に対する制御を一層容易に行うことができる。
また、請求項3に記載の仮想空間利用型機器制御システムによれば、仮想機器に対する制御が行われた場合に他の仮想機器を連携制御するので、従来は連携制御を行うことで一層複雑となっていたハードウェアへの依存度を低減し、簡易な構成でより高度な機器連携制御機能を実現することができる。
特に、ソフトウエア主体の制御システムによって現実機器の連携制御を行うことができるので、現実機器におけるハードウェア的なインターフェースや機構の相違を吸収することができ、従来のハードウェア主体の制御システムでは困難であった様々な機器の連携制御を比較的容易に実現することが可能となる。
本発明の実施の形態1に係る仮想空間利用型機器制御システムの電気的構成を機能概念的に示したブロック図である。 実施の形態1に係る仮想空間利用型機器制御処理のフローチャートである。 実施の形態2に係る仮想空間利用型機器制御システムの電気的構成を機能概念的に示したブロック図である。 実施の形態2に係る仮想空間利用型機器制御処理のフローチャートである。
以下に添付図面を参照して、この発明に係る仮想空間利用型機器制御システム、現実空間制御システム、及び仮想空間利用型機器制御プログラムの各実施の形態を詳細に説明する。ただし、各実施の形態によって本発明が限定されるものではない。
〔実施の形態1〕
最初に、実施の形態1について説明する。この形態は、仮想空間制御システムと現実空間制御システムの通信を、HTTP通信とXML−RPC通信で行う形態である。
〔概要〕
実施の形態1に係る仮想空間利用型制御(以下「本制御」)の概要について説明する。本制御は、各種の制御対象機器を制御することを目的とする。制御対象機器の具体的な種類や構成は、特記する場合を除いて任意であり、建物の内部に配置された機器(例えば、屋内照明機器、空調機器、防犯若しくは防火設備、又はエレベータやエスカレータ等の建築付帯機械機器、テレビや冷蔵庫等の家電、あるいはコンピュータ)、建物の外部に配置された機器(例えば、屋外照明機器)、あるいは建物と直接的な関連性を持たない機器(例えば、携帯電話、携帯用ゲーム機、自動車)を含む。以下では、建物の内部に配置された空調機器と照明機器を制御する場合について説明する。
本制御におけるステップは、概略的に、以下の4ステップを含む。
1)現実空間に配置されている制御対象機器(以下「現実機器」)に対応する仮想的な制御対象機器(以下「仮想機器」)を、仮想空間の内部において利用者が認識可能となるように配置するステップ。
2)現実機器と仮想機器が相互に連動して動作することを可能にするステップ。
3)仮想機器を仮想空間におけるメッセージ(チャットシステム)によって制御するステップ。
4)仮想機器を相互に連携させるステップ。
これら4ステップを実行することで、現実空間、現実空間における建物(以下、現実空間の建物を「現実建物」、仮想空間の建物を「仮想建物」)、あるいは現実機器の機能を仮想化し、当該仮想化した機能に基づいて仮想機器を単体で又は連携させて制御し、この制御結果等を現実空間の現実機器に反映する。このような制御では、仮想機器を単体で又は連携させて制御するための機能は、仮想空間で仮想機器を制御するためのソフトウエア主体の制御システムとして構築できるので、現実空間で現実機器を制御するためのシステムを簡素化することが可能となる。特に、仮想機器を連携させて制御した場合でも、その結果を現実空間の現実機器に個別的に反映させることで、現実空間では現実機器を単体で制御すればよいため、現実空間で現実機器を連携させるためのハードウェアシステムは不要となる。したがって、複数の現実機器に異なるプロトコルが実装されている場合であっても、このように複数のプロトコルが混在する状態を構造的に許容することが可能となり、現実機器の追加やプロトコルの変更にも柔軟に対応することが可能となる。さらに、連携に必要な機能は仮想空間側に実装するので、現実機器の組込みハードウエアの性能(CPU、メモリ、通信速度など)に依存しない、スケーラブルな連携システムを構築することが可能となる。
〔概要−仮想空間〕
ここで、仮想空間とは、コンピュータにて生成された仮想的な空間であり、代表的には、インターネット上に形成された電子的な3次元仮想空間(メタバース)である。この3次元仮想空間では、利用者が、直接的に又はアバター(利用者の仮想的な分身)を用いて間接的に、仮想機器を制御することができる。また、制御された仮想機器に連携して、他の仮想機器が制御される。このような3次元仮想空間を用いた場合には、仮想機器の場所(3次元的な位置)を利用者が容易に把握することができるので、仮想機器をツリー構造等の2次元構造で表示した場合に比べて、仮想機器を利用者が容易に特定して操作することが可能となる。ただし、仮想空間は、必ずしも3次元仮想空間には限定されず、例えば、2次元仮想空間を用いてもよい。また、2次元仮想空間を用いる場合において、3次元仮想空間に表現した場合と比べて欠落している次元(例えば高さ)を利用者の操作に応じて切替可能とすることで、2次元仮想空間において3次元の位置を把握するができるようにしてもよい。このような切替例としては、Google Map(登録商標)による表示縮尺の切替を挙げることができる。
この3次元仮想空間に求められる機能(仕様)としては、少なくとも、現実空間と3次元仮想空間のネットワークによる双方向の通信が可能であることがある。また、仮想空間や仮想機器を明確に識別できる機能が必要であり、現実機器と仮想機器を対応付けるためには、同じ仮想機器が多数同時に存在できる仮想空間であってはならない。さらに、他者によって提供される3次元仮想空間をプラットフォームとして用いて本制御を行う場合、本制御の継続性を担保するためには、3次元仮想空間を提供するシステムがオープンなシステムであってサービス提供の終了などによって使用できない状況に陥らないことや、利用者の管理とアクセス制限機能が備わっているものであって、特に複数の利用者が操作を行う状況を想定した場合には当該複数の利用者間の優先度を管理できる仕組みがあることが好ましい。このような機能を満たす3次元仮想空間の代表的な例として、Linden Lab社が提供しているSecond Life(登録商標)(以下「SL」)や、BSD License(Berkeley Software Distribution License)に基づいて提供されているOpenSimがある。以下では、このSLによって提供される3次元仮想空間において本制御を行う場合について説明するが、OpenSimによって提供される3次元仮想空間においてもほぼ同様に本制御を行うことができる。なお、このような3次元仮想空間を生成するためのシステムやプログラムについては、公知のシステムやプログラムを用いることができるので、その詳細な説明は省略する。
〔概要−仮想空間における仮想機器の表現〕
現実機器に対応する仮想機器を仮想空間の内部において利用者が認識可能となるように配置するとは、仮想空間内において利用者が仮想機器を「知覚できる状態にする」処理を意味しており、代表的には、現実空間における現実機器の位置及び外観を仮想空間に再現することであり、現実機器と同一の外観を持った仮想機器を、現実機器と同一の位置(例えば、現実建物に対する現実機器の相対的な位置や、複数の現実機器の相互間の位置)で仮想空間に表示することである。つまり、現実機器を含んだ現実空間をそのまま仮想的に反映させた仮想空間を生成することである。
ただし、特記する場合を除いて、現実空間における現実機器の位置及び外観は、仮想空間において必ずしも厳密な同一性を保持して再現される必要はなく、例えば、現実機器の外観を抽象化した外観で仮想機器を仮想空間に表示したり、現実機器の位置とは若干異なる位置で仮想機器を仮想空間に表示してもよい。また、具体的な出力形態としては、代表的には、仮想機器を表示装置43に「表示」することが考えられるが、聴覚や触覚にて知覚できるようにしてもよい。以下では、3次元空間としての仮想空間に、現実機器とほぼ同一の外観を持った仮想機器を、現実機器と同一の位置で表示する例について説明する。
〔構成〕
実施の形態1に係る仮想空間利用型機器制御システム(以下「本システム」)の構成について説明する。図1は、本システムの電気的構成を機能概念的に示したブロック図である。この図1に示すように、本システム1は、仮想空間制御システム10に対して、現実空間制御システム20をネットワーク30を介して通信可能に接続すると共に、利用者端末40をネットワーク50を介して通信可能に接続して構成されている。現実空間制御システム20には、現実建物60の内部に配置された現実機器61、62と現実センサ63、64が接続されている。
これら仮想空間制御システム10、現実空間制御システム20、利用者端末40、ネットワーク30、50、現実機器61、62、及び現実センサ63、64は、現実空間に配置されている。また、仮想空間制御システム10によって仮想空間が生成されており、この仮想空間に配置された仮想建物70の内部には、仮想機器71、72、仮想コントローラ73、74、連携エージェント75、及びアバター76(以下、必要に応じてこれらを「仮想オブジェクト」と総称する)が配置されている。なお、この仮想空間及び仮想オブジェクトは、利用者端末40の後述する表示装置43のみを介して利用者に認識されるものであり、物理的に実存するものではないが、これらも図1には説明の都合上により図示している。
〔構成−仮想空間制御システム〕
仮想空間制御システム10は、現実空間に配置された現実機器61、62に対応する仮想機器71、72を仮想空間の内部において利用者が認識可能となるように配置する仮想空間制御手段である。この仮想空間制御システム10は、例えば、スペースサーバ11、複数のシミュレータ12、アセットサーバ13、XML−RPCサーバ14、HTTPサーバ15、及び仮想空間データベース16(以下、データベースを「DB」と称する)を備え、これら各部を図示しない通信機構を介して相互に通信可能に接続して構成されている。
スペースサーバ11は、仮想空間全体の位置情報を保持する。複数のシミュレータ12は、仮想空間の一部の区域と当該区域内における各種の仮想環境を保持すると共に、後述するチャット処理を行う。アセットサーバ13は、仮想オブジェクトを生成するためのデータや当該仮想オブジェクトの動作を規定するためのデータを保持する。XML−RPCサーバ14は、現実空間制御システム20から仮想空間制御システム10におけるプログラムの呼び出し等を行うため、現実空間制御システム20との間においてXML−RPCプロトコルにて通信行う。HTTPサーバ15は、仮想空間制御システム10から現実空間制御システム20へ各種データの送信等を行うため、現実空間制御システム20との間においてHTTPプロトコルにて通信行う。仮想空間DB16は、仮想空間の生成及び制御に必要な各種の情報を保持するデータベースである。この他にも、仮想空間制御システム10は、利用者のログイン処理を行う利用者サーバ等を備えることができるが、この仮想空間制御システム10の構成としては、特記する点を除いて公知の構成を採用することができるために、その説明を省略する。
〔構成−現実空間制御システム〕
現実空間制御システム20は、仮想空間制御システム10から出力された制御データに基づいて、現実機器61、62を制御する現実空間制御手段である。この現実空間制御システム20は、例えば、XML−RPCサーバ21、HTTPサーバ22、Webサーバ23、複数のドライバ24、25、及び現実空間DB26を備え、これら各部を図示しない通信機構を介して相互に通信可能に接続して構成されている。この現実空間制御システム20は、例えば、現実建物60の中央監視室に設置される。
XML−RPCサーバ21は、現実空間制御システム20から仮想空間制御システム10におけるプログラムの呼び出し等を行うため、仮想空間制御システム10との間においてXML−RPC(XML Remote Procedure Call)にて通信行う。
HTTPサーバ22は、仮想空間制御システム10から現実空間制御システム20へ各種データの送信等を行うため、仮想空間制御システム10との間においてHTTPプロトコルにて通信行う。これらXML−RPCサーバ21やHTTPサーバ22のプログラムは、例えばPHP(Hypertext Preprocessor)にて記述される。
Webサーバ23は、仮想空間制御システム10との間においてXML−RPCサーバ21やHTTPサーバ22を介して通信を行うもので、仮想空間制御システム10から出力された制御データに基づいて、ドライバ24、25を介して現実機器61、62に制御データを送信することで当該現実機器61、62を制御し、現実センサ63、64からの検知出力を受信して仮想空間制御システム10に送信する。
ドライバ24、25は、現実機器61、62を制御するためのもので、Webサーバ23及び現実機器61、62に電気的に接続されており、現実機器61、62への制御情報を、現実機器61、62に実装されたプロトコルに応じた内容に変換して、現実機器61、62に出力する。ここでは、現実機器61、62に異なるプロトコルが実装されていることを想定し、現実機器61、62の各々に対して異なるドライバ24、25(対応する現実機器61、62に実装されたものと同じプロトコルを備えるドライバ24、25)を配置している。ただし、複数の現実機器61、62に対して共通のプロトコル(例えば、BACnet)で通信を行うことが可能となっている場合には、当該プロトコルを実装した共通のドライバ24、25にて複数の現実機器61、62を制御してもよい。また、ドライバ24、25は、必ずしも直接的に現実機器61、62を制御するものでなくともよく、例えば、公知のゲートウェイを介して現実機器61、62を制御するものであってもよい。あるいは、ドライバ24、25は、現実機器61、62に対して通信を行うものではなく、現実機器61、62に制御信号を出力するものとして構成することもでき、例えば、現実機器61、62が有するインターフェースに対して接点信号を出力することで当該現実機器61、62を制御してもよい。
現実空間DB26は、仮想機器71、72と現実機器61、62とを相互に対応付けると共に、仮想コントローラ73、74と現実センサ63、64とを相互に対応付けるための対応情報を格納する。この対応情報の具体的構成は任意であるが、例えば、仮想機器71、72と現実機器61、62とを相互に対応付けるための対応情報は、仮想機器71、72を一意に識別する仮想機器ID、現実機器61、62を一意に識別する現実機器ID、現実機器61、62に対応するドライバ24、25を一意に識別するドライバIDを相互に関連付けて構成される。また、仮想コントローラ73、74と現実センサ63、64とを相互に対応付けるための対応情報は、仮想コントローラ73、74を一意に識別する仮想コントローラIDと、現実センサ63、64を一意に識別する現実センサIDを相互に関連付けて構成される。この他にも、現実空間制御システム20は、利用者のログイン処理を行う利用者サーバ等を備えることができる。
このような現実空間制御システム20の各部の機能は、本実施の形態1に係るものであって、後述する仮想空間利用型機器制御処理をコンピュータとしての現実空間制御システム20の各部に実行させるための仮想空間利用型機器制御プログラム(以下「本プログラム」)によって記述されている。すなわち、本プログラムをネットワーク30や任意の媒体を用いて現実空間制御システム20の各部にインストールすることで、現実空間制御システム20の各部の機能が構成される。
〔構成−利用者端末〕
利用者端末40は、利用者が、仮想空間制御システム10にログインし、仮想機器71、72を制御することで現実機器61、62を制御する装置である。この利用者端末40は、例えば、公知のパーソナルコンピュータと同様に構成することができるので、その構成についての詳細な説明は省略するが、少なくとも、仮想空間制御システム10との間において各種操作や表示を行うための機能(以下「Viewer」)41と、操作内容を入力する入力装置(例えばマウス及びキーボード)42と、仮想空間及び当該仮想空間の内部に表現されたオブジェクトを表示する表示装置(例えば液晶モニタ)43を備える。
〔構成−ネットワーク〕
ネットワーク30、50としては、インターネットや次世代ネットワーク(NGN:Next Generation Network)の他、仮想空間制御システム10に対して、現実空間制御システム20や利用者端末40を通信可能に接続可能な任意のネットワークを用いることができる。なお、図1では、便宜上、仮想空間制御システム10と現実空間制御システム20を接続するネットワーク30と、仮想空間制御システム10と利用者端末40を接続するネットワーク50を別々のものとして図示しているが、共通のネットワークを用いてもよい(図3において同じ)。
〔構成−現実機器〕
現実機器61、62の具体的な種類や構成は上述の通り任意であるが、ここでは、現実機器61は現実建物60の内部に配置された空調機器であり、この空調機器をドライバ24からの制御情報によってON/OFF切替及び温度変更することで、現実建物60の内部の空調を行うことができる。また、現実機器62は現実建物60の内部に配置された照明機器であり、この照明機器をドライバ25からの制御情報によってON/OFF切替及び照度変更することで、現実建物60の内部の照明を行うことができる。
〔構成−現実センサ〕
現実センサ63、64は、現実空間における各種の状態を検知して出力するものであり、その具体的な種類や構成は、現実機器61、62の種類や構成に応じて任意に決定することができる。ここでは、現実センサ63は、現実機器61によって空調された現実建物60の内部の温度を検知して出力する温度センサであり、現実センサ64は、現実機器62によって照明された現実建物60の内部の照度を検知して出力する照度センサであるものとする。
〔構成−仮想空間〕
仮想空間は、上述のように、コンピュータ(ここでは、仮想空間制御システム10)にて生成された仮想的な空間である。この仮想空間は、仮想オブジェクトと共に、利用者端末40の表示装置43に表示されることにより、利用者に認識される。
〔構成−仮想機器〕
仮想機器71、72は、仮想空間制御システム10にて生成された仮想的な機器である。仮想機器71は、現実機器61に対応するものとして表現されており、仮想機器72は、現実機器62に対応するものとして表現されている。すなわち、仮想空間には、現実機器61、62が配置された現実建物60も仮想的に表現されており、この現実建物60に対する現実機器61、62の相対的な位置が、仮想空間に仮想的に表現された仮想建物70に対する仮想機器71、72の相対的な位置として再現されており、現実機器61、62の相互間の相対的な位置が、仮想機器71、72の相互間の相対的な位置として再現されている。また、仮想機器71は現実機器61とほぼ同一の外観を備え、仮想機器72は現実機器62とほぼ同一の外観を備える。
〔構成−仮想コントローラ〕
仮想コントローラ73、74は、仮想空間制御システム10にて生成された仮想的なコントローラである。ここでは、仮想コントローラ73は、仮想機器71を操作するためのコントローラ(リモコン)として表現されており、仮想機器71のON/OFFを操作するためのON/OFFボタン、仮想機器71の温度を変更するための温度変更ボタン、及び現実センサ63にて検知された温度を表示する温度表示部を備える。仮想コントローラ74は、仮想機器72を操作するためのコントローラ(リモコン)として表現されており、仮想機器72のON/OFFを操作するためのON/OFFボタン、仮想機器72の照度を変更するための照度変更ボタン、及び現実センサ64にて検知された照度を表示する照度表示部を備える。
〔構成−連携エージェント〕
連携エージェント75は、仮想空間制御システム10にて生成された仮想的な連携制御手段である。ここでは、連携エージェント75は、仮想機器71、72を相互に連携するためのオブジェクトであり、仮想空間における仮想機器71、72の近傍位置において、任意の形状で配置されている。この連携エージェント75は、他の仮想オブジェクトと同様に構成することができ、利用者に認識可能に生成することもできるが、必ずしも認識可能とする必要はなく、例えば、透過オブジェクトとして構成することができる。
〔構成−アバター〕
アバター76は、仮想空間制御システム10にて生成された仮想的なキャラクターである。ここでは、アバター76は、仮想機器71、72を制御する主体としての利用者を仮想的に表現したものである。なお、図1及び後述する図3においては、アバター76を人形で示しているが、犬、ネコ、石、箱、車、ロボット等の任意の外観で表現することができる。このアバター76は、他の仮想オブジェクトに対して、仮想空間制御システム10における取扱いに関しては厳密には異なるものであるが、後述するチャットによるメッセージを行う点に関しては共通する。
これら仮想オブジェクトは、例えば、所定プログラム言語(SLにおいては、LSL:Linden Script Language)にて記述されたもので、SLにおいては、一つ以上のプリムから構成されるオブジェクトである。例えば、コンパイル済みのLSLバイナリデータをアセットサーバ13に格納しておき、このLSLバイナリデータを必要に応じてアセットサーバ13から呼び出してインタプリタすることで、仮想オブジェクトが生成されて仮想空間に表現される。また、仮想機器71、72の記述時に、仮想空間内における当該仮想機器71、72の3次元位置を特定する位置データを当該仮想機器71、72に関連付けることで、仮想空間における仮想機器71、72の3次元位置を、現実空間における現実機器61、62の3次元位置を反映したものとすることができる。また、この仮想機器71、72の記述時に、仮想機器71、72の外観を現実機器61、62の外観に極力近いものとする。
さらに、この所定プログラム言語を用いて、仮想オブジェクトの動作(以下「イベント」)を記述することも可能である。ここでは、仮想機器71、72におけるイベントとして、当該仮想機器71、72がアバター76からのチャットによるメッセージを受け取った時に、当該仮想機器71、72自体を制御する動作と、現実空間制御システム20に対して現実機器61、62の制御を要求する動作が記述されており、この記述内容が当該仮想機器71、72のLSLバイナリデータに含められている。また、連携エージェント75におけるイベントとして、仮想機器71、72の一部が制御された場合には、この制御内容に基づいて、当該連携エージェント75が他の仮想機器71、72を制御するためのチャットによるメッセージを出力する動作が記述されており、この記述内容が当該連携エージェント75のLSLバイナリデータに含められている。このような仮想オブジェクトのイベントの内容の詳細は、仮想空間利用型機器制御処理の説明において後述する。
〔処理〕
次に、このように構成された本システム1において行われる仮想空間利用型機器制御処理(以下「本処理」)について説明する。図2は、本処理のフローチャートである(以下の各処理の説明ではステップを「S」と略記する)。ここでは、本処理に先だって、仮想空間と仮想オブジェクトが公知の方法で生成されており、現実空間DB26には利用者等によって任意の方法で対応情報が格納されているものとする。なお、以下の処理では、最初に仮想機器71を制御し、この仮想機器71に連動して仮想機器72を制御するものとするが、この順番は逆であってもよく(この場合には、以下の説明中、仮想機器71を仮想機器72、仮想コントローラ73を仮想コントローラ74、「温度」を「照度」等と読み替えればよい)、あるいは、仮想機器71、72を同時に制御してもよい。
最初に、利用者は、利用者端末40のViewer41を入力装置42を介して起動し、このViewer41を介して仮想空間制御システム10にアクセスして、仮想空間及びアバター76を利用者端末40の表示装置43に表示させるための表示要求を行う(SA1)。この表示要求を受けた仮想空間制御システム10は、仮想空間及びアバター76を生成して利用者端末40の表示装置43に表示させる(SA2、SA3)。
そして、利用者は、利用者端末40の入力装置42を介した公知の方法でアバター76を仮想空間内に移動させることで、アバター76を、仮想空間に表現させた仮想建物70の内部に入らせ、この仮想建物70の内部に表現された仮想機器71及び仮想コントローラ73に近づける。この際、仮想空間における仮想機器71の3次元位置及び外観は、上述したように、現実空間における現実機器61の3次元位置及び外観を反映したものとなっているので、利用者は、現実機器61に対応する仮想機器71を容易に把握することが可能となる。
次いで、利用者は、利用者端末40の入力装置42を介して公知の方法でアバター76を操作することで、アバター76を用いて仮想コントローラ73を操作し、仮想機器71のON/OFFや仮想機器71の温度変更の如き操作を行う(SA4)。例えば、仮想コントローラ73には、イベントとして、自己が備えるON/OFFボタンがアバター76に押される毎に、仮想機器71のON/OFFを切り替える旨の制御内容を受け付けることや、自己が備える温度変更ボタンがアバター76に押される毎に、仮想機器71の温度変更を行う旨の制御内容を受け付けることが記述されており、このようなアバター76の動作を介して、仮想機器71に対する制御内容を受け付ける(SA5)。
あるいは、利用者は、利用者端末40の入力装置42を介して公知の方法でアバター76を操作することで、アバター76を介したチャットによるメッセージ(SLにおいては、SLMS:Second Lige Message Systemによるメッセージ)の出力を行い、仮想コントローラ73を操作することも可能である。例えば、利用者は、「温度を25℃に設定する」とのテキスト文字をチャットとしてアバター76から出力する。例えば、仮想コントローラ73には、イベントとして、自己の所定範囲(例えば1m以内)で「温度」というテキスト文字を含むメッセージの出力が行われた場合には、当該メッセージが自己に対する入力であることを認識し、当該メッセージに含まれる温度(上記の例では「25℃」)を仮想機器71の温度として設定することが記述されている。したがって、仮想コントローラ73は、このようなメッセージを介して、仮想機器71に対する制御内容を受け付ける(再びSA5)。
このように制御内容を受け付けた仮想コントローラ73は、当該制御内容に基づいて、自己の状態を変化させる(SA6)。例えば、仮想コントローラ73には、イベントとして、制御内容が「仮想機器71をONに切り替えること」であれば、自己の一部として表示されている電源表示灯を点灯させることや、制御内容が「仮想機器71の温度を25℃に設定すること」であれば、自己の一部として表示されている温度表示部における表示温度を「25℃」とすることが記述されており、当該イベントを実行する。そして、このように仮想コントローラ73が自己の状態を変化させると、仮想コントローラ73の制御結果が利用者端末40の表示装置43に反映して表示されるので(SA7)、利用者は、仮想コントローラ73が操作されたことを容易に把握することができる。
また、仮想コントローラ73は、当該制御内容に基づいて、仮想機器71を制御するためのチャットによるメッセージを出力することで、仮想機器71を制御する(再びSA6)。例えば、仮想コントローラ73には、イベントとして、制御内容が「仮想機器71をONに切り替えること」であれば、「仮想機器71をONにする」というメッセージを出力し、あるいは、制御内容が「仮想機器71の温度を25℃に設定すること」であれば、「仮想機器71の温度を25℃に設定する」というメッセージを出力することが記述されており、当該メッセージを出力する。
このメッセージを受けた仮想機器71は、当該メッセージに示された制御内容に基づいて、自己の状態を変化させる。例えば、仮想機器71には、イベントとして、自己の所定範囲(例えば1m以内)で「温度」というテキスト文字を含むメッセージが出力された場合には、当該メッセージが自己に対する入力であることを認識し、当該メッセージに含まれる温度(上記の例では「25℃」)を自己の温度として設定することが記述されている。したがって、仮想機器71は、このようなメッセージを介して、自己に対する制御内容を受け付ける。そして、制御内容に基づく状態変化として、例えば、制御内容が「仮想機器71をONに切り替えること」であれば、自己の一部として表示されている電源表示灯を点灯させる。そして、このように仮想機器71が自己の状態を変化させると、仮想機器71の制御結果が利用者端末40の表示装置43に反映して表示されるので(再びSA7)、利用者は、仮想機器71が操作されたことを容易に把握することができる。
あるいは、仮想コントローラ73を介することなく仮想機器71を直接制御してもよく、この場合、利用者は、利用者端末40の入力装置42を介して公知の方法でアバター76を操作することで、アバター76を用いて仮想機器71の一部として表示されている操作部を直接操作し、あるいは、アバター76を介したチャットによるメッセージの出力を仮想機器71に向けて出力してもよい。この場合にも、仮想機器71のイベントとして、このような直接制御を制御内容として受け付け、当該受け付けた制御内容に基づいて自己を制御する動作を記述しておくことで、仮想機器71の制御を行うことが可能となる。
また、上述のようにアバター76や仮想コントローラ73からのチャットによるメッセージの出力が仮想機器71に対して行われた場合、当該メッセージは、連携エージェント75によっても受け付けられ、この連携エージェント75によって他の仮想機器72が連携制御される(SA8)。例えば、連携エージェント75には、イベントとして、自己の所定範囲(例えば5m以内)で「温度」というテキスト文字を含むメッセージが出力された場合には、当該メッセージが、仮想機器71に対する制御であること、及び当該メッセージに含まれる温度(上記の例では「25℃」)に仮想機器71の温度を設定することを認識することが記述されている。さらに、連携エージェント75には、イベントとして、仮想機器71に対する制御があった場合には、この制御内容に基づいて、仮想機器72を制御するためのメッセージ出力を行うことが記述されている。このような連携制御の具体的内容は任意であるが、例えば、仮想機器71に設定された温度に応じて異なる照度を仮想機器72に設定することとし、このために連携エージェント75は、仮想機器71に設定された温度に応じた照度を所定ロジックで算定し、当該算定した照度に基づいて、「仮想機器72の照度を700lxに設定する」というメッセージを出力する。
このメッセージを受けた仮想機器72は、当該メッセージに示された制御内容に基づいて、自己の状態を変化させる。例えば、仮想機器72には、イベントとして、自己の所定範囲(例えば1m以内)で「照度」というテキスト文字を含むメッセージが出力された場合には、当該メッセージが自己に対する入力であることを認識し、当該メッセージに含まれる照度(上記の例では「700lx」)に自己の温度を設定することが記述されている。したがって、仮想機器72は、このようなメッセージを介して、自己に対する制御内容を受け付ける。そして、制御内容に基づく状態変化として、例えば、制御内容が「仮想機器72をONに切り替えること」であれば、自己の一部として表示されている電源表示灯を点灯させる。そして、このように仮想機器72が自己の状態を変化させると、仮想機器72の制御結果が利用者端末40の表示装置43に反映して表示されるので(SA9)、利用者は、仮想機器72が操作されたことを容易に把握することができる。
その後、このように制御された各仮想機器71、72は、HTTPサーバ15を介したHTTP通信により、現実空間制御システム20に制御データを送信する(SA10)。すなわち、仮想機器71、72には、イベントとして、自己に予め設定された仮想機器IDと自己に入力された制御内容を特定する制御情報とを含んだ制御データを生成し、この制御データを、現実空間制御システム20に割り当てられた所定のアドレス宛てにHTTP送信することが記述されている。
このように送信された制御データは、ネットワーク30を介して現実空間制御システム20のHTTPサーバ22にて受信され、HTTPサーバ22からWebサーバ23に送信される。このWebサーバ23は、制御データに基づいて現実機器61、62を制御する(SA11)。すなわち、Webサーバ23は、制御データに含まれる仮想機器IDに基づいて現実空間DB26を参照することで、仮想機器IDに関連付けられている現実機器ID及びドライバIDを取得し、当該取得したドライバIDによって特定されるドライバ24、25に対して、当該取得した現実機器IDとHTTPサーバ22から送信された制御データに含まれる制御内容を含んだ制御データを送信する。
この制御データの送信を受けたドライバ24、25は、当該制御データを、自己に接続された現実機器61、62に実装されたプロトコルで、当該現実機器61、62に送信する。そして、現実機器61、62は、当該制御データに含まれる現実機器IDが、自己に予め設定された現実機器IDと一致する場合には、当該制御データに含まれる制御内容に基づく制御を実行する。例えば、現実機器61、62は、制御内容が「仮想機器71、72をONに切り替えること」であれば、現実機器61、62をONに切替え、現実機器61は、制御内容が「仮想機器71の温度を25℃に設定すること」であれば、現実機器61の温度を25℃に設定し、あるいは現実機器62は、制御内容が「仮想機器72の照度を700lxに設定する」であれば、現実機器62の照度を700lxに設定する(なお、制御内容における「仮想機器」の部分は、SA10において各仮想機器71、72が制御データを送信する際に「現実機器」に置換してもよく、あるいは省略してもよい)。なお、ドライバ24、25と現実機器61、62が一対一で対応している場合には、現実機器IDの送信や照合を省略してもよい。このような制御を行うことで、仮想空間を介した現実機器61、62の制御が実現する。
このように現実機器61、62の制御を行った結果として、現実空間の環境が変化した場合、その変化が現実センサ63、64によって検知されることになる。例えば、現実機器61の温度を25℃に設定した場合、当該現実機器61の近傍位置に配置された現実センサ63によって温度25℃が検知され、あるいは、現実機器62の照度を700lxに設定した場合、当該現実機器62の近傍位置に配置された現実センサ64によって照度700lxが検知される。これら現実センサ63、64の検知出力は、現実センサ63、64に予め付与された現実センサIDと共に、現実センサ63、64から現実空間制御システム20に入力される。
現実空間制御システム20のWebサーバ23は、現実センサ63、64から検知出力と共に入力された当該現実センサ63、64の現実センサIDに基づいて現実空間DB26を参照することで、現実センサIDに関連付けられている仮想コントローラIDを取得し、当該取得した仮想コントローラIDと現実センサ63、64の検知出力を含んだ制御データを生成し、当該生成した制御データをXML−RPCサーバ21に送信する。このXML−RPCサーバ21は、この制御データを、XML−RPC通信により仮想空間制御システム10に送信する(SA12)。
このように送信された制御データは、ネットワーク30を介して仮想空間制御システム10のXML−RPCサーバ14にて受信される。XML−RPCサーバ14は、制御データに含まれた仮想コントローラID及び検知出力を含んだ制御データを生成し、この制御データを、XML−RPC通信によって仮想コントローラ73に出力する。この仮想コントローラ73は、当該制御データに含まれる仮想コントローラIDが、自己に予め設定された仮想コントローラIDと一致する場合には、当該制御データに含まれる検知出力に基づく制御を実行する。例えば、仮想コントローラ73は、イベントとして、検知出力によって示される数値を、自己の一部として表示されている温度表示部における表示温度とし、あるいは、仮想コントローラ74は、イベントとして、検知出力によって示される数値を、自己の一部として表示されている照度表示部における表示照度とする。そして、このように仮想コントローラ73、74が自己の状態を変化させると、仮想コントローラ73、74の状態変化が利用者端末40の表示装置43に反映して表示されるので(SA14)、利用者は、現実空間の現実センサ63、64の検知結果を仮想空間の仮想コントローラ73、74の検知結果として把握することができる。これにて本処理が終了する。
〔本実施の形態1の効果〕
このように、本実施の形態1によれば、仮想機器71、72に対する制御を行うことで現実機器61、62を制御することが可能となるので、各現実機器61、62の制御を現実空間ではなく仮想空間においてソフトウエア主体の制御システムで実行可能とすることで、現実空間におけるハードウェアへの依存度を低減し、簡易な構成でより高度な機器制御機能を実現することができる。
このことにより、現実空間に配置するハードウェアを極力簡易化しつつ、現実機器61、62に対する高度で複雑な制御を行うことが可能となる。
また、ソフトウエア主体の制御システムは機能の変更や組替えが簡単であるため、現実機器61、62の追加や変更にも容易に対応することが可能となる。
また、仮想機器71、72に対する仮想的な発話によって、仮想機器71、72に対する制御等を行うと共に制御データの出力を行うので、仮想機器71、72に対する制御を一層容易に行うことができ、ひいては現実機器61、62に対する制御を一層容易に行うことができる。
また、仮想機器71、72に対する制御が行われた場合に他の仮想機器71、72を連携制御するので、従来は連携制御を行うことで一層複雑となっていたハードウェアへの依存度を低減し、簡易な構成でより高度な機器連携制御機能を実現することができる。
特に、ソフトウエア主体の制御システムによって現実機器61、62の連携制御を行うことができるので、現実機器61、62におけるハードウェア的なインターフェースや機構の相違を吸収することができ、従来のハードウェア主体の制御システムでは困難であった様々な機器の連携制御を比較的容易に実現することが可能となる。
〔実施の形態2〕
次に、実施の形態2について説明する。この形態は、仮想空間制御システム10と現実空間制御システムの通信を、SLMSで行う形態である。なお、実施の形態2の構成は、特記する場合を除いて実施の形態1の構成と略同一であり、実施の形態1と略同一の構成についてはこの実施の形態1で用いたものと同一の符号及び/又は名称を必要に応じて付して、その説明を省略する。
〔構成〕
実施の形態2に係る仮想空間利用型機器制御システム(以下「本システム」)の構成について説明する。図3は、本システムの電気的構成を機能概念的に示したブロック図である。この図3に示すように、本システム1は、図1とほぼ同様に構成されているが、現実空間制御システム20においては、XML−RPCサーバ21及びWebサーバ23に代えて、空間連動サーバ27とWebサーバ28が配置されている。また、仮想空間には、ロボット77が配置されている。
〔構成−現実空間制御システム〕
空間連動サーバ27は、利用者端末40のViewer41と同様に、仮想空間制御システム10との間においてSLMSによる通信を行うサーバである。Webサーバ28は、現実空間DB26に対する対応情報の登録を行うサーバである。
〔構成−ロボット〕
ロボット(又はボット(BOT))77は、仮想空間制御システム10にて生成された仮想的なエージェントであり、仮想機器71、72又は仮想コントローラ73と空間連動サーバ27との間の通信を中継する。このロボット77は、上述したアバタ−66と同様に構成することができ、利用者に認識可能に生成することもできるが、必ずしも認識可能とする必要はなく、例えば、不可視のアバタ−として構成することができ、あるいは、単なるプログラムとして生成される。ただし、このロボット77は、人によって操作されるものではなく、プログラムによって操作されるものである点において、アバター76と異なる。
〔処理〕
次に、このように構成された本システムにおいて行われる仮想空間利用型機器制御処理(以下「本処理」)について説明する。図4は、本処理のフローチャートである。ただし、特記する処理を除く、SB1〜SB5は図2のSA1〜SA5とそれぞれ同じであり、SB8〜SB16は図2のSA6〜SA14にそれぞれ同じであるため、その説明を省略する。
利用者が、利用者端末40のViewer41を入力装置42を介して、仮想機器71、72を直接又は仮想コントロールからのメッセージによって操作した場合、仮想機器71、72は、現実空間DB26に対する自己の登録要求を行う(SB6)。すなわち、仮想機器71、72には、イベントとして、自己が最初に操作(呼び出し)された時に、自己に予め設定された仮想機器IDを含んだ登録要求データを生成し、この登録要求データを、現実空間制御システム20に割り当てられた所定のアドレス宛てにHTTP送信することが記述されている。
このようにHTTPサーバ15を介して送信された登録要求データは、ネットワーク30を介して現実空間制御システム20のHTTPサーバ22にて受信され、HTTPサーバ22からWebサーバ28に送信される。このWebサーバ28は、登録要求データに基づいて仮想機器71、72を現実空間DB26に登録する(SB7)。すなわち、Webサーバ28は、登録要求データに含まれる仮想機器IDと、ドライバIDに関連付けて現実空間DB26に格納する。この際、仮想機器IDに対応するドライバIDの取得方法は任意であるが、例えば、HTTPサーバ22が登録要求データを受信した後の任意のタイミングで、利用者等が利用者端末40の入力装置42等を介して入力してもよい。
その後、SB8〜SB11を経て制御された各仮想機器71、72は、自己の制御内容をロボット77を介して現実空間制御システム20に出力する(SB12)。すなわち、仮想機器71、72には、イベントとして、制御内容が「仮想機器71、72をONに切り替えること」であれば、「仮想機器71、72をONにする」というメッセージを出力し、あるいは、制御内容が「仮想機器71の温度を25℃に設定すること」であれば、「仮想機器71の温度を25℃に設定する」というメッセージを出力することが記述されており、当該メッセージを出力する。また、ロボット77には、イベントとして、自己の所定範囲(例えば1m以内)で「温度」というテキスト文字を含むメッセージの出力が行われた場合には、当該メッセージが自己に対する入力であることを認識し、当該メッセージに含まれる温度(上記の例では「25℃」)を仮想機器71の温度として設定することが記述されている。したがって、ロボット77は、このようなメッセージを介して、仮想機器71、72に対する制御内容を受け付ける。さらに、ロボット77には、イベントとして、仮想機器71、72に対する制御内容を受け付けた場合には、当該仮想機器71、72の仮想機器IDと、当該受け付けた制御内容を特定する制御情報とを含んだ制御データを生成し、この制御データを、SLMSにて空間連動サーバ27に送信する。なお、仮想機器IDの取得方法は任意であるが、例えば、仮想機器71、72は、メッセージの中に自己の仮想機器IDを含めて出力し、このロボット77は、このメッセージの中から仮想機器IDを抽出することで取得する。次いで、SB13〜SB14が実行される(ただし、実施の形態1のWebサーバ28の処理は本実施の形態2では空間連動サーバ27により実行される)。
その後、現実センサ63、64から、現実センサ63、64の検知出力と現実センサ63、64に予め付与された現実センサIDとが現実空間制御システム20に入力された場合、現実空間制御システム20の空間連動サーバ27は、現実センサ63、64から検知出力と共に入力された当該現実センサ63、64の現実センサIDに基づいて現実空間DB26を参照することで、現実センサIDに関連付けられている仮想コントローラIDを取得し、当該取得した仮想コントローラIDと現実センサ63、64の検知出力を含んだ制御データを生成し、当該生成した制御データをSLMSにて仮想空間制御システム10に送信する(SB15)。
このように送信された制御データは、ネットワーク30を介して仮想空間制御システム10のロボット77にて受信される。ロボット77は、制御データに含まれた仮想コントローラID及び検知出力を含んだメッセージを出力し、このメッセージに基づいて仮想コントローラ73、74が自己の状態を変化させることで、仮想コントローラ73、74の状態変化が利用者端末40の表示装置43に反映して表示される(SB16)。例えば、仮想コントローラ73には、イベントとして、自己の所定範囲(例えば1m以内)で「温度」というテキスト文字を含むメッセージの出力が行われた場合には、当該メッセージが自己に対する入力であることを認識し、当該メッセージに含まれる温度を、自己の一部として表示されている温度表示部における表示温度とすることが記述されている。あるいは、仮想コントローラ74には、イベントとして、自己の所定範囲(例えば1m以内)で「照度」というテキスト文字を含むメッセージの出力が行われた場合には、当該メッセージが自己に対する入力であることを認識し、当該メッセージに含まれる照度を、自己の一部として表示されている照度表示部における表示照度とすることが記述されている。そして、このように仮想コントローラ73が自己の状態を変化させる。これにて本処理が終了する。
〔本実施の形態2の効果〕
このように、本実施の形態2によれば、実施の形態1と同様の効果を得ることができ、さらに、後述の実施例3で実証したように、実施の形態1の場合よりも現実機器61、62の応答速度を向上させることができる。
〔実施例1−実装実験1〕
次に、本願発明者による実装実験の結果について説明する。この実験では、実施の形態1で説明したシステム構成を採用し、現実機器として1台の照明器具のみを用意し、この照明器具を仮想空間を介して制御できることを実証した。照明器具は、無線LAN(IEEE 802.11b)内蔵のLEDテーブルライトであり、TCP/IPプロトコルに対応し、PORT番号80に対してGET或いはPOST命令でデータを送信すると、LEDライトが動作するものである。照明器具に対して送信するデータは、URL文字コードで、RGB色空間と色の変わる速度を秒単位で指定する仕様とした。
仮想空間には、仮想機器として上記照明器具を仮想化して設置した。現実空間の照明器具と、仮想空間の照明器具は、連動して常に同じ色で光るように設定した。現実空間の照明器具には、操作ボタンなどのユーザインタフェースは設けていないが、仮想空間の照明器具を触ると色を選択するダイアログが表示され、操作できる仕組みを設けた。仮想空間の照明器具はチャットによるメッセージから操作することも可能とした。
このような環境において、仮想空間の照明器具をアバターで触り、表示されたダイアログを介して色を選択した結果、現実空間の照明器具の色が、ダイアログで選択された色に制御できた。また、仮想空間の照明器具の色をチャットによるメッセージで変更した結果、現実空間の照明器具の色が、メッセージで変更された色に制御できた。このことにより、現実空間の照明器具を仮想空間を介して制御できることが実証された。
〔実施例2−応答速度評価1〕
本制御を用いると、制御信号が物理的に長距離のネットワークを経由してから現実機器に到達することになるため、現実機器を操作する上での反応速度が懸念材料になる。これを検証するために、本願発明者は、照明器具の遠隔操作を想定した応答速度計測実験を行った。
実験に使用した機器の基本構成は以下の通りである。この実験では、実施の形態1で説明したシステム構成を採用した。
(1)照明器具(上記実施例1の照明器具に同じ)
CPU:SH2/SH7084、80MHz
メモリ:32Mバイト
OS:MES(Micro Embedded System)2.4
ネットワーク:USB無線LANアダプタ
(2)ドライバ
CPU:Pentium(登録商標)3、800MHz
メモリ:256Mバイト
OS:Vine Linux 3.2
(3)現実空間DB
MySQL 4.0
(4)Webサーバ
Apache2.0 + Perl 5.8
(5)仮想空間(SL内に設定した土地区画)
Private SIM(TAKENAKA RDI)
設置場所: 米国
実験方法は、以下の通りである。すなわち、仮想空間に、仮想化した照明器具と、その色を変えるための仮想コントローラを配置した。仮想空間の仮想コントローラを操作すると、仮想化された照明器具に対して、色変更を制御内容とするチャットによるメッセージが送信される。メッセージを受け取った仮想化された照明器具は、HTTP通信で現実空間制御システム20へ制御データを送る。ドライバは、現実空間の照明器具に対して制御信号を送信する。この実験では、仮想コントローラを操作してから現実空間に置かれた照明器具の色が変化するまでの時間を計測した。利用者が入力装置42であるマウスをクリックして仮想コントローラを操作した時点を起点に、物理的には非常に長い通信経路を辿って、最終的に現実空間に置かれた照明器具の色が変更される。計測はストップウォッチを用いて計10回実施し、その平均である平均応答時間を実験結果として算出した。計測の間隔は30秒以上とした。実験を行った結果、平均応答時間は、平均2.6秒であった。
〔実施例3−応答速度評価2〕
さらに、本願発明者は、上記の応答速度評価1の応答時間の短縮を目的として、二種類の通信方式を実装して実験を行った。一つ目の通信方式(以下「通信方式A」)は、実施の形態1で説明したシステム構成による通信方式であり、HTTP通信及びXML−RPC通信を組み合わせた方式である。2つ目の通信方式(以下「通信方式B」)は、実施の形態2で説明したシステム構成による通信方式であり、SLMSによる方式である。通信方式A、Bは、同じ機材と回線で実装した。
実験方法は、以下の通りである。すなわち、現実空間には、制御信号を発する現実センサを配置し、仮想空間には、現実機器を仮想化した仮想機器を配置し、現実センサから信号が発せられてから仮想機器に到達するまでの時間を計測した。するものである。通信方式A、Bのそれぞれについて、5秒の間隔で10回計測し、その平均である平均応答時間を実験結果として算出した。実験を行った結果、平均応答時間は、通信方式Aの場合は945ms、通信方式Bの場合は330msであった。
通信方式Aの場合の平均応答時間は、上記の応答速度評価1と同様の方式で得られた時間であるにも関わらず、応答速度評価1の結果に比べて平均応答時間が大幅に短縮されている。この要因として考えられるのは、Web Serverが動作するPCを高速なもの(CPU:Core2Duo 2GHz)に変更したことと、SL上で動作するスクリプトの実行速度が8倍程に改善されたことが大きく影響したと推測される。
通信方式Bの場合の平均応答時間は、通信方式Aの場合の平均応答時間と比較して3分の1程に短く、優位な通信方式であることが示された。そもそもSLMSはCHATメッセージの通信用に開発されたため応答時間が短いことが知られており、今回の実験でもその特性が顕著に現われた結果と言える。応答時間に対する要求性能は制御対象機器によって異なるが、照明機器を想定した場合には経験値として0.5秒以下が目安になると考えられるので、今回の実験でその目標値を達成したことにより、本制御の実用性が実証された。
〔変形例〕
以上、実施の形態について説明したが、本発明の具体的な構成及び手段は、特許請求の範囲に記載した各発明の技術的思想の範囲内において、任意に改変及び改良することができる。以下、このような変形例について説明する。
(解決しようとする課題や発明の効果について)
まず、発明が解決しようとする課題や発明の効果は、前記した内容に限定されるものではなく、本発明によって、前記に記載されていない課題を解決したり、前記に記載されていない効果を奏することもでき、また、記載されている課題の一部のみを解決したり、記載されている効果の一部のみを奏することがある。
(構成及び制御について)
また、本実施の形態で自動的に行われるものとして説明した制御の全部または任意の一部を手動で行っても良く、逆に、手動で行われるものとして説明した制御の全部または任意の一部を公知技術または上述した思想に基づいて自動化しても良い。また、上述した各電気的構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各部の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成できる。例えば、現実空間制御システム20を構成する各サーバは、実際には一つのサーバ装置内にプログラムによって生成することが可能である。あるいは、図1におけるWebサーバ23の機能をHTTPサーバ22に包含することで当該Webサーバ23を省略したり、図3におけるWebサーバ28の機能をHTTPサーバ22に包含することで当該Webサーバ28を省略してもよい。この他、前記文書中や図面中で示した処理手順、または、制御手順については、特記する場合を除いて任意に変更できる。
(現実センサの利用方法について)
現実センサによる検出結果を利用する方法としては、上記説明した方法以外にも各種の方法を採用することができる。例えば、仮想空間には、仮想オブジェクトとしての仮想センサを配置し、利用者が仮想空間の仮想機器を操作して温度や照度を変更した場合、当該変更後の温度や照度を仮想センサで検出し、当該検出結果を上記と同様のメッセージによって現実空間制御システムに送信し、現実センサにて検出される現実空間の温度や照度が、仮想センサで検出されたものと同じ温度や照度になるように、Webサーバ及びドライバを介して現実機器を制御してもよい。
(現実機器の制御に起因する仮想機器の制御について)
上記説明では、仮想機器を制御することで現実機器を制御しているが、現実機器を制御することで仮想機器を制御してもよい。このような制御は、上記説明した制御とほぼ逆の手順にて行うことができ、例えば、利用者が現実機器を制御した場合には、この現実機器の現実機器IDと制御内容を現実機器から現実空間制御システムに送信し、現実機器IDに対応する仮想機器IDと制御内容を現実空間制御システムから仮想空間制御システムに送信し、仮想空間制御システムでは、仮想機器IDにて特定される仮想機器に対して、制御内容を含んだメッセージを出力することで仮想機器を制御する。
(仮想機器等の登録処理について)
実施の形態2で説明した仮想機器等の登録処理(具体的には、図4のSB6、SB7に関する処理)は、仮想空間利用型機器制御処理の起動前に事前に実行するようにしてもよい。その他、仮想空間利用型機器制御処理における各処理は、その処理機能が維持できる限りにおいて、上記説明とは異なる順序で実行することができる。
1 仮想空間利用型機器制御システム(本システム)
10 仮想空間制御システム
11 スペースサーバ
12 シミュレータ
13 アセットサーバ
14 XML−RPCサーバ
15 HTTPサーバ
16 仮想空間データベース
20 現実空間制御システム
21 XML−RPCサーバ
22 HTTPサーバ
23、28 Webサーバ
24、25 ドライバ
26 現実空間DB
27 空間連動サーバ
30、50 ネットワーク
40 利用者端末
41 Viewer
42 入力装置
43 表示装置
60 現実建物
61、62 現実機器
63、64 現実センサ
70 仮想建物
71、72 仮想機器
73、74 仮想コントローラ
75 連携エージェント
76 アバター

Claims (5)

  1. 現実空間に配置された現実機器に対応する仮想機器を仮想空間の内部において利用者が認識可能となるように配置するものであって、前記仮想機器に対する制御が行われた場合に当該制御の内容を特定する制御データを出力する仮想空間制御手段と、
    前記仮想空間制御手段から出力された制御データに基づいて、前記現実機器を制御する現実空間制御手段と、
    を備える仮想空間利用型機器制御システム。
  2. 前記仮想空間制御手段は、前記仮想空間の内部における前記仮想機器から所定範囲以内の位置において仮想的に発話された内容に基づいて、当該仮想機器に対する制御を行うと共に、前記制御データの出力を行う、
    請求項1に記載の仮想空間利用型機器制御システム。
  3. 前記仮想空間制御手段は、前記仮想機器に対する制御が行われた場合に、当該制御の内容に基づいて、当該仮想機器と連携制御すべき他の仮想機器の連携制御内容を特定し、当該特定した連携制御内容に基づいて当該他の仮想機器を制御する、
    請求項1又は2に記載の仮想空間利用型機器制御システム。
  4. 現実空間に配置された現実機器に対応する仮想機器を仮想空間の内部において利用者が認識可能となるように配置する仮想空間制御手段であって、前記仮想機器に対する制御が行われた場合に当該制御の内容を特定する制御データを出力する仮想空間制御手段に対して、通信可能に接続された現実空間制御システムであって、
    前記仮想空間制御手段から出力された制御データに基づいて、前記現実機器を制御する現実空間制御手段、
    を備える現実空間制御システム。
  5. コンピュータを、
    現実空間に配置された現実機器に対応する仮想機器を仮想空間の内部において利用者が認識可能となるように配置するものであって、前記仮想機器に対する制御が行われた場合に当該制御の内容を特定する制御データを出力する仮想空間制御手段と、
    前記仮想空間制御手段から出力された制御データに基づいて、前記現実機器を制御する現実空間制御手段と、
    して機能させる仮想空間利用型機器制御プログラム。
JP2009185689A 2009-08-10 2009-08-10 仮想空間利用型機器制御システム、現実空間制御システム、及び仮想空間利用型機器制御プログラム Active JP5312257B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009185689A JP5312257B2 (ja) 2009-08-10 2009-08-10 仮想空間利用型機器制御システム、現実空間制御システム、及び仮想空間利用型機器制御プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009185689A JP5312257B2 (ja) 2009-08-10 2009-08-10 仮想空間利用型機器制御システム、現実空間制御システム、及び仮想空間利用型機器制御プログラム

Publications (2)

Publication Number Publication Date
JP2011039731A true JP2011039731A (ja) 2011-02-24
JP5312257B2 JP5312257B2 (ja) 2013-10-09

Family

ID=43767444

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009185689A Active JP5312257B2 (ja) 2009-08-10 2009-08-10 仮想空間利用型機器制御システム、現実空間制御システム、及び仮想空間利用型機器制御プログラム

Country Status (1)

Country Link
JP (1) JP5312257B2 (ja)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014038568A (ja) * 2012-08-20 2014-02-27 Tsukasa Hashimoto 検出システム、センサ、設定情報管理方法及びプログラム
CN106713082A (zh) * 2016-11-16 2017-05-24 惠州Tcl移动通信有限公司 一种用于智能家居管理的虚拟现实方法
WO2017216853A1 (ja) * 2016-06-13 2017-12-21 株式会社日立製作所 制御操作インターフェース
JP2019160192A (ja) * 2018-03-16 2019-09-19 富士ゼロックス株式会社 メッセージ提供装置、プログラム、及び表示制御方法
CN110764429A (zh) * 2019-11-25 2020-02-07 广东美的制冷设备有限公司 家电设备的交互方法、终端设备及存储介质
JP7049013B1 (ja) 2021-03-24 2022-04-06 株式会社Synamon オブジェクト管理システム
KR20230064328A (ko) * 2021-11-03 2023-05-10 엘지전자 주식회사 블록체인을 이용하여 유형의 자산을 사용하는 방법 및 이를 구현하는 서버
JP2023097071A (ja) * 2021-12-27 2023-07-07 株式会社リコー 情報処理装置、情報処理システム、利用者端末、プログラム、及び情報処理方法
WO2023167324A1 (ja) * 2022-03-03 2023-09-07 株式会社安川電機 生産システム及び再現方法

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018176386A (ja) 2017-04-19 2018-11-15 富士ゼロックス株式会社 情報処理装置及びプログラム
JP2018176387A (ja) 2017-04-19 2018-11-15 富士ゼロックス株式会社 ロボット装置及びプログラム
CN107255929A (zh) * 2017-07-07 2017-10-17 四川云图瑞科技有限公司 基于虚拟现实技术的建筑、家居交互系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005039517A (ja) * 2003-07-15 2005-02-10 Sony Corp 端末装置及び表示制御プログラム
JP2005157419A (ja) * 2003-11-20 2005-06-16 Sony Corp 情報処理システム、情報処理装置および方法、並びにプログラム
JP2006228063A (ja) * 2005-02-18 2006-08-31 Fujitsu Ltd 機器制御サービス提供プログラム、機器制御サービス提供システムおよび機器制御サービス提供方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005039517A (ja) * 2003-07-15 2005-02-10 Sony Corp 端末装置及び表示制御プログラム
JP2005157419A (ja) * 2003-11-20 2005-06-16 Sony Corp 情報処理システム、情報処理装置および方法、並びにプログラム
JP2006228063A (ja) * 2005-02-18 2006-08-31 Fujitsu Ltd 機器制御サービス提供プログラム、機器制御サービス提供システムおよび機器制御サービス提供方法

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014038568A (ja) * 2012-08-20 2014-02-27 Tsukasa Hashimoto 検出システム、センサ、設定情報管理方法及びプログラム
WO2017216853A1 (ja) * 2016-06-13 2017-12-21 株式会社日立製作所 制御操作インターフェース
CN106713082A (zh) * 2016-11-16 2017-05-24 惠州Tcl移动通信有限公司 一种用于智能家居管理的虚拟现实方法
WO2018090713A1 (zh) * 2016-11-16 2018-05-24 捷开通讯(深圳)有限公司 一种用于智能家居管理的虚拟现实方法及设备
JP2019160192A (ja) * 2018-03-16 2019-09-19 富士ゼロックス株式会社 メッセージ提供装置、プログラム、及び表示制御方法
JP7013970B2 (ja) 2018-03-16 2022-02-01 富士フイルムビジネスイノベーション株式会社 メッセージ提供装置、プログラム、及び表示制御方法
CN110764429A (zh) * 2019-11-25 2020-02-07 广东美的制冷设备有限公司 家电设备的交互方法、终端设备及存储介质
CN110764429B (zh) * 2019-11-25 2023-10-27 广东美的制冷设备有限公司 家电设备的交互方法、终端设备及存储介质
WO2022202980A1 (ja) * 2021-03-24 2022-09-29 株式会社Synamon オブジェクト管理システム
JP2022148548A (ja) * 2021-03-24 2022-10-06 株式会社Synamon オブジェクト管理システム
JP7049013B1 (ja) 2021-03-24 2022-04-06 株式会社Synamon オブジェクト管理システム
KR20230064328A (ko) * 2021-11-03 2023-05-10 엘지전자 주식회사 블록체인을 이용하여 유형의 자산을 사용하는 방법 및 이를 구현하는 서버
KR102616634B1 (ko) * 2021-11-03 2023-12-20 엘지전자 주식회사 블록체인을 이용하여 유형의 자산을 사용하는 방법 및 이를 구현하는 서버
JP2023097071A (ja) * 2021-12-27 2023-07-07 株式会社リコー 情報処理装置、情報処理システム、利用者端末、プログラム、及び情報処理方法
JP7509128B2 (ja) 2021-12-27 2024-07-02 株式会社リコー 情報処理装置、情報処理システム、利用者端末、プログラム、及び情報処理方法
WO2023167324A1 (ja) * 2022-03-03 2023-09-07 株式会社安川電機 生産システム及び再現方法

Also Published As

Publication number Publication date
JP5312257B2 (ja) 2013-10-09

Similar Documents

Publication Publication Date Title
JP5312257B2 (ja) 仮想空間利用型機器制御システム、現実空間制御システム、及び仮想空間利用型機器制御プログラム
CN111937051B (zh) 使用增强现实可视化的智能家居设备放置和安装
KR102527186B1 (ko) 가상화 시뮬레이터 및 이를 구비하는 빌딩 관리 시스템
US9412266B2 (en) Signal conversion device and smart home network system using the same
US20190312747A1 (en) Method, apparatus and system for controlling home device
CN102932695B (zh) 一种遥控方法、智能终端及智能遥控系统
CN105723652B (zh) 用于控制智能家庭系统的方法和电子设备
CN106165441B (zh) 服务器装置、控制系统以及控制方法
KR101653797B1 (ko) 프로토타입 제작 방법 및 그 장치
US10648685B2 (en) Network access apparatus and method for indoor environment monitoring of the same
JP6715283B2 (ja) ネットワークシステム、および情報処理方法
CN104181913A (zh) 用于智能家居系统的测试系统
Ismaeel et al. Worldwide auto-mobi: Arduino IoT home automation system for IR devices
CN115086368A (zh) 一种基于虚拟展厅的多模式展陈的控制方法、系统及设备
Ooi et al. FPGA-based embedded architecture for IoT home automation application
KR102301291B1 (ko) 프로토타입 제작 방법 및 그 장치
JP5033019B2 (ja) 遠隔制御システム
US20160094616A1 (en) Using an embedded web server to allow a standard multi-tasking operating system to manage, control and display live or recorded condition monitoring data from real time hardware
WO2018079063A1 (ja) ネットワークシステム、サーバ、情報処理方法、空気調和機、およびプログラム
Oo et al. IoT Based Home Automation System using a REST API Architecture
WO2019008498A1 (en) INTERACTIVE COMMUNICATION SYSTEM IN A PUBLIC ACCESS POINT SUCH AS A POINT OF SALE
CN114846771A (zh) 用于授予对设备集合的接入权限的网络控制器
Mahdi et al. Wireless controlling of remote electrical device using android smartphone
US20150229534A1 (en) Integrated control system for devices in a premise
JP2013191918A (ja) 通信システムlsi

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120627

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130214

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130220

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130422

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130612

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130702

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5312257

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150