(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-02-26
(45)【発行日】2024-03-05
(54)【発明の名称】触覚提示システム、触覚提示装置、コントローラ、及び仮想世界における触覚を実世界においてユーザに提示する方法
(51)【国際特許分類】
G06F 3/01 20060101AFI20240227BHJP
G06F 3/038 20130101ALI20240227BHJP
【FI】
G06F3/01 560
G06F3/038 320
G06F3/01 510
(21)【出願番号】P 2019100849
(22)【出願日】2019-05-30
【審査請求日】2022-05-27
【新規性喪失の例外の表示】特許法第30条第2項適用 公開の事実1:平成31年2月8日、立命館大学大学院2018年度メディア情報学科系 修士論文公聴会 公開の事実2-1:平成31年2月27日、http://www.interaction-ipsj.org/proceedings/2019/data/interactive.html http://www.interaction-ipsj.org/proceedings/2019/data/pdf/1B-48.pdf http://www.interaction-ipsj.org/proceedings/2019/data/bib/1B-48.html (情報処理学会インタラクション2019論文集) 公開の事実2-2:平成31年3月6日、情報処理学会インタラクション2019 公開の事実3-1:平成31年3月23日、IEEE VR 2019 On-Site Temporally Proceedings 公開の事実3-2:平成31年3月25日-27日、IEEE VR 2019: the 26th IEEE Conference on Virtual Reality and 3D User Interfaces
【前置審査】
(73)【特許権者】
【識別番号】593006630
【氏名又は名称】学校法人立命館
(74)【代理人】
【識別番号】100111567
【氏名又は名称】坂本 寛
(72)【発明者】
【氏名】木村 朝子
(72)【発明者】
【氏名】田村 秀行
(72)【発明者】
【氏名】山本 拓也
【審査官】滝谷 亮一
(56)【参考文献】
【文献】国際公開第2011/061395(WO,A1)
【文献】特開2017-173988(JP,A)
【文献】特開2010-287221(JP,A)
【文献】特開2014-052975(JP,A)
【文献】特開2000-267784(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/01
G06F 3/038
(57)【特許請求の範囲】
【請求項1】
ユーザによって保持される本体部、及び、前記本体部に対する相対位置が変更自在になるように前記本体部に設けられた接触子を有する触覚提示装置と、
前記触覚提示装置とは別
であって、前記本体部とは非連結に設けられた実物体と、
仮想世界において第1仮想物体への接触が生じると前記接触子が前記実物体に接触するように前記本体部に対する前記接触子の相対位置を変化させるコントローラと、
を備える触覚提示システム。
【請求項2】
ユーザによって保持される本体部、及び、前記本体部に対する相対位置が変更自在になるように前記本体部に設けられた接触子を有する触覚提示装置と、
仮想世界において第1仮想物体への接触が生じると前記接触子が実物体に接触するように前記本体部に対する前記接触子の相対位置を変化させるコントローラと、
を備え、
前記コントローラは、前記実物体において前記接触子が接触する被接触面の向きを制御するよう構成されている
触覚提示システム。
【請求項3】
前記被接触面の向きを制御することは、前記接触子と前記実物体との接触角の調整のためである
請求項2に記載の触覚提示システム。
【請求項4】
前記被接触面の向きを制御することは、変形可能に構成された前記実物体の変形制御を含む
請求項2又は3に記載の触覚提示システム。
【請求項5】
前記触覚提示装置は、前記第1仮想物体の硬軟感を前記ユーザに提示する硬軟感提示部を更に備える
請求項1から4のいずれか1項に記載の触覚提示システム。
【請求項6】
前記触覚提示装置は、前記第1仮想物体の表面粗さを前記ユーザに提示する粗さ提示部を更に備える
請求項1から5のいずれか1項に記載の触覚提示システム。
【請求項7】
前記実物体は、前記第1仮想物体の表面粗さを前記ユーザに提示する粗さ提示部を備える
請求項1から6のいずれか1項に記載の触覚提示システム。
【請求項8】
前記コントローラは、前記仮想世界において、前記本体部に対する前記接触子の相対位置の変化を前記ユーザに提示することなく、前記触覚提示装置に対応する第2仮想物体をユーザに提示するよう構成されている
請求項1から7のいずれか1項に記載の触覚提示システム。
【請求項9】
前記コントローラは、前記第1仮想物体へ非接触であるときには、前記接触子が前記実物体に非接触になるよう前記接触子を位置させる
請求項1から8のいずれか1項に記載の触覚提示システム。
【請求項10】
前記触覚提示装置は、前記ユーザから離れて存在する前記実物体に前記接触子が接触することで生じる反力を、前記第1仮想物体への接触感として、前記本体部を保持するユーザに提示する
請求項1から9のいずれか1項に記載の触覚提示システム。
【請求項11】
触覚提示装置であって、
ユーザによって保持される本体部と、
前記本体部に対する相対位置が変更自在になるように前記本体部に設けられ、仮想世界において第1仮想物体への接触が生じると、前記触覚提示装置とは別
であって、前記本体部とは非連結に設けられた実物体に接触するように前記本体部に対する相対位置が制御される接触子と、
を備える触覚提示装置。
【請求項12】
本体部と接触子とを備える触覚提示装置のコントローラであって、
仮想世界における第1仮想物体への接触が生じると、実世界においてユーザに保持される前記本体部に設けられた前記接触子が前記触覚提示装置とは別
であって、前記本体部とは非連結に設けられた実物体に接触するように、前記本体部に対する前記接触子の相対位置を制御するよう構成されているコントローラ。
【請求項13】
本体部と接触子とを備える触覚提示装置によって、仮想世界における触覚を実世界においてユーザに提示する方法であって、
前記仮想世界における第1仮想物体への接触が生じると、前記実世界においてユーザに保持される前記本体部に設けられた前記接触子が前記触覚提示装置とは別
であって、前記本体部とは非連結に設けられた実物体に接触するように、前記接触子が前記本体部に対して移動することを含む、
仮想世界における触覚を実世界においてユーザに提示する方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、触覚提示システム、触覚提示装置、コントローラ、及び仮想世界における触覚を実世界においてユーザに提示する方法に関する。
【背景技術】
【0002】
触覚の提示は、例えば特許文献1に示すように、実世界において位置固定的に設置された装置によって行われる場合がある。また、触覚の提示は、例えば特許文献2に示すように、実世界においてユーザによって保持されて位置移動自在である装置によって行われる場合もある。
【先行技術文献】
【特許文献】
【0003】
【文献】特開平6-59803号公報
【文献】特開2008-123061号公報
【発明の概要】
【0004】
前者の装置は、位置固定的に設置されているため仮想物体への接触感を提示するのが容易である一方、位置固定的に設置されているためユーザの動きが制約される。後者の装置は、ユーザによって保持されるためユーザの動きの制約が前者の装置に比べて少ない一方、仮想物体への接触感を、実物体からの反力によって提示することが困難である。
【0005】
ユーザの動きの制約を少なくしつつも、仮想物体への接触感を、実物体からの反力を利用して提示することが望まれる。
【0006】
本開示のある側面は、触覚提示システムである。実施形態に係る触覚提示システムは、ユーザによって保持される本体部、及び、前記本体部に対する相対位置が変更自在になるように前記本体部に設けられた接触子を有する触覚提示装置と、仮想世界において第1仮想物体への接触が生じると前記接触子が実物体に接触するように前記本体部に対する前記接触子の相対位置を変化させるコントローラと、を備える。
【0007】
本開示の他の側面は、前記コントローラによって制御される触覚提示装置である。本開示の更に他の側面は、前記触覚提示装置を制御するコントローラである。本開示の更に他の側面は、仮想世界における触覚を実世界においてユーザに提示する方法である。
【0008】
更なる詳細は、後述の実施形態として説明される。
【図面の簡単な説明】
【0009】
【
図2】
図2は、VR空間及び実世界における接触を示す図である。
【発明を実施するための形態】
【0010】
<1.触覚提示システム、触覚提示装置、コントローラ、及び仮想世界における触覚を実世界においてユーザに提示する方法の概要>
【0011】
(1)実施形態に係る触覚提示システムは、ユーザによって保持される本体部、及び、前記本体部に対する相対位置が変更自在になるように前記本体部に設けられた接触子を有する触覚提示装置を備える。ユーザによる保持は、例えば、ユーザの手による把持である。実施形態に係る触覚提示システムは、仮想世界において第1仮想物体への接触が生じると前記接触子が実物体に接触するように前記本体部に対する前記接触子の相対位置を変化させるコントローラを備える。接触子が実物体に接触することにより、ユーザは、実物体からの反力を知覚することができる。接触子は、本体部に対する相対位置を変化させることができるため、接触子が接触する実物体は、本体部に非連結でもよい。反力を生じさせる実物体と本体部とが非連結であることにより、ユーザの動きの制約は少なくなる。
【0012】
(2)前記コントローラは、前記実物体において前記接触子が接触する被接触面の向きを制御するよう構成されているのが好ましい。
【0013】
(3)前記被接触面の向きを制御することは、前記接触子と前記実物体との接触角の調整のためであるのが好ましい。
【0014】
(4)前記被接触面の向きを制御することは、変形可能に構成された前記実物体の変形制御を含むことができる。
【0015】
(5)前記触覚提示装置は、前記第1仮想物体の硬軟感を前記ユーザに提示する硬軟感提示部を更に備えることができる。
【0016】
(6)前記触覚提示装置は、前記第1仮想物体の表面粗さを前記ユーザに提示する粗さ提示部を更に備えることができる。
【0017】
(7)前記実物体は、前記第1仮想物体の表面粗さを前記ユーザに提示する粗さ提示部を備えることができる。
【0018】
(8)前記コントローラは、前記仮想世界において、前記本体部に対する前記接触子の相対位置の変化を前記ユーザに提示することなく、前記触覚提示装置に対応する第2仮想物体をユーザに提示するよう構成されているのが好ましい。
【0019】
(9)前記コントローラは、前記第1仮想物体へ非接触であるときには、前記接触子が前記実物体に非接触になるよう前記接触子を位置させることができる。
【0020】
(10)前記触覚提示装置は、前記ユーザから離れて存在する前記実物体に前記接触子が接触することで生じる反力を、前記第1仮想物体への接触感として、前記本体部を保持するユーザに提示することができる。
【0021】
(11)実施形態に係る触覚提示装置は、ユーザによって保持される本体部と、前記本体部に対する相対位置が変更自在になるように前記本体部に設けられ、仮想世界において第1仮想物体への接触が生じると実物体に接触するように前記本体部に対する相対位置が制御される接触子と、を備える。
【0022】
(12)実施形態に係るコントローラは、仮想世界における第1仮想物体への接触が生じると、実世界においてユーザに保持される本体部に設けられた接触子が実物体に接触するように、前記本体部に対する前記接触子の相対位置を制御するよう構成されている。
【0023】
(13)実施形態に係る方法は、仮想世界における触覚を実世界においてユーザに提示する方法である。方法は、前記仮想世界における第1仮想物体への接触が生じると、前記実世界においてユーザに保持される本体部に設けられた接触子が実物体に接触するように、前記接触子が前記本体部に対して移動することを含む。
【0024】
<2.触覚提示システム、触覚提示装置、コントローラ、及び仮想世界における触覚を実世界においてユーザに提示する方法の詳細>
【0025】
図1は、実施形態に係る触覚提示システム100を示している。触覚提示システム100は、触覚提示装置200を備える。実施形態の触覚提示装置200によって提示される触覚は、力覚を含む。実施形態の触覚提示装置200は、ペンを模擬した細長い棒状の部材として構成されており、ユーザの手によって保持される。触覚提示装置200は伸縮自在に構成されている。触覚提示装置200は、伸縮によって、実物体300への接触/非接触を切替可能である。
【0026】
実施形態の触覚提示装置200は、仮想空間(VR空間)において、仮想デバイス(後述の第2仮想物体420)が、仮想物体(後述の第1仮想物体410)に接触した際に、実世界において伸長又は収縮することで、実物体300へ接触する。ユーザは、触覚提示装置200が実物体300に接触することで生じる反力を、仮想物体への接触感として知覚することができる。ユーザは、触覚提示装置200とユーザとの接触位置である手だけでなく、腕全体で反力を知覚することができる。
【0027】
仮想空間(VR空間)において、仮想デバイス(後述の第2仮想物体420)が、仮想物体(後述の第1仮想物体410)に接触していないときには、触覚提示装置200が実物体300へ接触しないように、伸縮量が調整される。触覚提示装置200が実物体300へ非接触となることで、ユーザは、仮想物体への非接触感が得られる。触覚提示装置200についての詳細は、後述する。
【0028】
触覚提示システム100は、コントローラ10と、表示装置50と、を備える。触覚提示システム100は、更に、触覚提示装置200が接触するための実物体300を含むことができる。コントローラ10は、触覚提示装置200による触覚提示を制御する。また、コントローラ10は、ユーザに提示されるVR空間を管理する。VR空間は、表示装置50によって視覚的にユーザに提示される。
【0029】
実施形態の表示装置50は、一例として、ヘッドマウントディスプレイである。コントローラ10は、実世界における表示装置50の位置及び姿勢を、例えば図示しない赤外線センサによって、トラッキングする。位置及び姿勢を検出するセンサは、磁気センサ、超音波センサ、慣性センサ、光学式センサ等であってもよい。コントローラ10は、表示装置50の位置及び姿勢に応じて、ユーザに提示される仮想世界を変化させる。
【0030】
コントローラ10は、触覚提示装置200の位置及び姿勢のトラッキングも行う。触覚提示装置200の位置及び姿勢を検出するセンサは、前述の赤外線センサであってもよいし、磁気センサ、超音波センサ、慣性センサ、光学式センサ等であってもよい。触覚提示装置200の位置及び姿勢を検出するセンサの種類は、表示装置50を検出するセンサの種類とは異なっていてもよい。コントローラ10は、触覚提示装置200に対応した仮想デバイス(後述の第2仮想物体420)を仮想世界において表示させる。コントローラ10は、触覚提示装置200の位置及び姿勢に応じて、仮想世界における仮想デバイスの位置及び姿勢を変化させる。なお、コントローラ10は、トラッキングにより、現実世界における絶対座標系における、表示装置50及び触覚提示装置200の位置及び姿勢を把握する。ただし、コントローラ10は、表示装置50及び触覚提示装置200の相対位置及び姿勢を把握するだけもよい。
【0031】
実施形態のコントローラ10は、コンピュータを備える。
図1に示すように、コンピュータは、プロセッサ20及びプロセッサ20に接続されたメモリ30を備える。メモリ30には、コンピュータをコントローラ10として機能させるコンピュータプログラム35が格納されている。プロセッサ20は、メモリ30に格納されたコンピュータプログラム35を読み出して実行する。コンピュータプログラム35は、プロセッサ20に、VR空間管理処理25を実行させる。VR空間管理処理25は、触覚提示装置200の制御処理を含む。触覚提示装置200の制御処理は、触覚提示装置200の伸縮制御を含む。なお、実施形態のメモリ30は、一次記憶装置及び二次記憶装置を含むことができる。
【0032】
コントローラ10は、触覚提示装置200及び表示装置50との間で通信を行うインタフェース40を備える。通信は、無線でもよいし、有線でもよい。
【0033】
図1に示す触覚提示装置200は、本体部210を備える。本体部210は、ユーザによって保持される。より具体的には、本体部210は、ユーザの手によって保持される。本体部210は、位置固定的に設置された器具による拘束がない手持ち式である。このため、ユーザは、実世界において、本体部210を手にもって、触覚提示装置200を自由に移動させることができる。
【0034】
実施形態において、本体部210は、筒状に形成されている。なお、本体部の形状は筒状に限られない。例えば、本体部210は、筒状部材に対して、手によって保持されるグリップが取り付けられたものであってもよい。また、本体部210は、全体としてT字状又はL字状であってもよい。触覚提示装置200を、杖を模擬した形状にする場合、T字状又はL字状の本体部210は、杖のグリップとして機能するため好適である。
【0035】
触覚提示装置200は、本体部210に設けられた接触子220を備える。接触子220は、実世界における実物体300に接触する役割を持つ。接触子220が実物体300に接触することで、本体部210を保持するユーザの手は、ユーザから離れて存在する実物体300からの反力を受けることができる。
【0036】
触覚提示装置200は、接触子220の移動により、全体が伸縮するよう構成されている。このため、接触子220は、本体部210の長手方向Lへ移動可能に、本体部210内に設けられている。より詳細には、接触子220は、本体部210の長手方向一端に形成された開口部210Aからの突出量が変更自在となるように本体部210内に挿入されている。接触子220が、長手方向Lへ移動することで、本体部210に対する接触子220の相対位置が変化する。
【0037】
本体部210から実物体300までの距離が大きい場合には、接触子220が本体部210から大きく突出することで、接触子220の先端220Aが実物体300に接触する。本体部210から実物体300までの距離が小さい場合には、接触子220が本体部210からわずかに突出することで先端220Aが実物体300に接触する。また、実物体300からの反力が不要な場合には、接触子220の突出量は、先端220Aが実物体300に接触しない程度になる。
【0038】
触覚提示装置200は、接触子220を移動させるためのアクチュエータ230を備える。実施形態のアクチュエータ230は、接触子220を直線移動させるリニアアクチュエータである。アクチュエータは、例えば、モータにより駆動される。アクチュエータは、空気又は油圧などの流体圧により駆動されてもよい。アクチュエータ230は、接触子220を長手方向Lに移動させるよう、本体部210内に設けられている。なお、接触子220の移動は、直線移動に限られない。
【0039】
アクチュエータ230は、コントローラ10から、位置指令の信号を受けて、接触子220を長手方向Lに移動させるよう動作する。位置指令は、接触子220の突出量を規定する指令である。また、コントローラ10は、アクチュエータ230から、接触子220の先端220Aの現在の位置情報を取得する。コントローラ10は、取得した位置情報に基づいて、先端220Aが目標とする位置へ移動するように位置指令の信号を生成する。なお、コントローラ10は、接触子220の移動速度を制御することもできる。
【0040】
触覚提示装置200は、コントローラ10との通信のため、インタフェース240を有する。インタフェース240は、コントローラ10から位置指令を受信して、アクチュエータ230に与える。また、インタフェース240は、先端220Aの位置情報を、アクチュエータ230から取得して、コントローラ10へ送信する。
【0041】
図2に示すように、コントローラ10は、複数の仮想物体410,420を表示装置50に表示させる。ユーザに提示される複数の仮想物体は、仮想空間においてユーザによって接触される第1仮想物体410と、触覚提示装置200に似た形状の仮想デバイスである第2仮想物体420と、を含む。
図2において、第1仮想物体410は、半球状の物体として描かれ、第2仮想物体420は、ペン状の物体として描かれている。実世界において、第2仮想物体420に対応する実物体は存在しない。ただし、実世界においては、触覚提示装置200が接触可能な実物体300が存在する。ここでは、実物体300の位置は、固定であり、コントローラ10に予め設定されている。実物体300は、例えば、机である。
【0042】
図1及び
図2に示す実物体300は、触覚提示装置200によって接触される面(被接触面)を有する。被接触面は、図示のように水平面であってもよいし、垂直面であってもよいし、傾斜面であってもよい。被接触面は、平面であってもよいし、曲面であってもよい。
【0043】
実世界において、ユーザが触覚提示装置200の位置又は姿勢を変化させると、その変化に同期して、仮想世界における第2仮想物体420の位置又は姿勢が変化する。
図2に示すように、仮想世界において、第2仮想物体420は、第1仮想物体410に接触することができる。ただし、第2仮想物体420は、実世界に存在しないため、触覚提示装置200の位置又は姿勢が変化するだけでは、実世界においては接触が生じないことがある。そこで、仮想世界において発生した接触に同期して実世界においても接触を生じさせるため、コントローラ10は、触覚提示装置200が実物体300に接触するように、触覚提示装置200の伸縮制御をする。なお、仮想世界において接触が発生していない場合には、コントローラ10は、実世界において、触覚提示装置200が実物体300に非接触である状態を保つ。
【0044】
伸縮制御の手順は次のとおりである。まず、コントローラ10は、仮想世界において、第2仮想物体420の先端Ptipが、第1仮想物体410に接触したことを検出すると、先端Ptipと第1仮想物体410との第1接触点Pvirtualの位置を算出する。ここでは、第2仮想物体420の後端Pendから先端Ptipを通る方向ベクトルVと、第1仮想物体410と、の交点の位置座標が、第1接触点Pvirtualの位置として算出される。
【0045】
次に、コントローラ10は、第3仮想物体430と方向ベクトルVとの交点の位置座標を、第2接触点Prealとして算出する。第3仮想物体430は、仮想世界において、実世界における実物体300と同じ位置に配置されている。なお、第3仮想物体430は、仮想世界において表示されていてもよいし、表示されていなくてもよい。
【0046】
このとき、第3仮想物体430と方向ベクトルVとの交点がなければ、コントローラ10は、接触感提示不能と判定する。接触感提示不能と判定された場合、触覚提示装置200の伸縮は行われない。なお、接触感提示不能と判定されたことを、触覚提示装置200に設けられたバイブレータ又は音などの適宜の報知手段によって、ユーザに報知してもよい。
【0047】
第3仮想物体430と方向ベクトルVとの交点が存在する場合、コントローラ10は、第1接触点Pvirtualと第2接触点Prealとの間の距離dを算出する。距離dは、仮想世界における距離であるため、コントローラ10は、距離dを、実世界のスケールに応じた距離Dに変換する。なお、第1接触点Pvirtualと第2接触点Prealとの間の距離が、触覚提示装置200の伸縮可能範囲(接触子220の可動域)を超える場合には、コントローラ10は、接触感提示不能と判断する。接触感提示不能と判定された場合、触覚提示装置200の伸縮は行われない。なお、接触感提示不能と判定されたことを、触覚提示装置200に設けられたバイブレータ又は音などの適宜の報知手段によって、ユーザに報知してもよい。
【0048】
接触感提示可能である場合、コントローラ10は、接触子220の先端220Aを距離Dほど移動させる位置指令の信号を、触覚提示装置200へ送信する。位置指令を受けた触覚提示装置200は、接触子220を移動させ、先端220Aが実物体300の被接触面に接触する。ユーザは、実物体300への接触により生じる反力を、仮想物体への接触感として知覚することができる。
【0049】
なお、コントローラ10は、距離dに応じて、触覚提示装置200の伸縮速度を変化させてもよい。例えば、距離dが大きい場合には、伸縮速度を大きくし、距離dが小さい場合には伸縮速度を小さくすることで、距離dに応じた適切な伸縮速度が得られる。
【0050】
実世界においては、触覚提示装置200は、伸縮により長手方向長さが変化するが、仮想世界においては、触覚提示装置200の長手方向長さが変化しても第2仮想物体420の長手方向長さは変化しない。このため、ユーザは、触覚提示装置200の長手方向長さの変化を意識しなくてもよい。
【0051】
<第1変形例:実物体の向き変化>
【0052】
図3及び
図4は、実物体300の第1変形例を示している。
図1及び
図2に示す実物体300の位置及び姿勢は、固定であったが、実物体300の位置又は姿勢は可変であってもよい。
図3及び
図4に示す実物体300は、被接触面310Aの向きが変化するように姿勢が変化する。なお、
図3及び
図4においては、水平面をXY平面とし、垂直方向をZ方向とする。
【0053】
被接触面310Aの向きが可変であることで、被接触面310Aの向きを適切に調整できる。被接触面310Aの向きが可変であることで、触覚提示装置200の姿勢が変化しても、被接触面310Aに対する触覚提示装置200の接触角を所定の角度(例えば、直角)に調整することができる。被接触面310Aに対して触覚提示装置200が直角であると、反力を知覚しやすい。また、被接触面310Aの向きが可変であることで、仮想世界における第1仮想物体410の接触点における被接触面の向きを再現することもできる。
【0054】
図3及び
図4に示す実物体300は、傾斜した被接触面300Aを有する可動板310と、可動板310を互いに直交する2軸周りに回転可能にする回転機構320と、回転機構320の支持部330と、を備える。
【0055】
回転機構320は、可動板310をX方向軸回りに回転させる駆動部(図示省略)と、可動板310をZ軸方向回りに回転させる駆動部(図示省略)と、を有する。駆動部は、例えば、モータである。可動板310の回転量は、コントローラ10により制御される。コントローラ10は、可動板310の角度(姿勢)のトラッキングも行う。
【0056】
可動板310の制御のため、コントローラ10は、触覚提示装置200の姿勢を検出し、方向ベクトルVを求める。コントローラ10は、被接触面310Aが、方向ベクトルVに直交するように、可動板310を回転させる。可動板310の回転により、被接触面310Aに対して触覚提示装置200を直角に保つことができる。なお、接触子220の伸縮量は、回転後の可動板310(被接触面)の位置(角度情報)に基づいて算出される。
【0057】
<第2変形例:実物体の変形>
【0058】
図5は、実物体300の第2変形例を示している。第1変形例では、回転により被接触面の向きを変更していたが、第2変形例では、変形により被接触面の向きを変更する。
【0059】
図5に示す実物体300は、球面を有する変形部350を備える。変形部350は、表面形状を変化させる機構を有する。変形部350の変形により、変形部350の表面(被接触面)350Aの曲率が変化する。曲率の変更により、被接触面350Aに対する触覚提示装置200の角度を調整できる。なお、変形部350は、変形だけでなく、移動してもよい。
【0060】
変形部350の変形及び移動は、コントローラ10によって制御される。コントローラ10は、変形部350の表面形状のトラッキングも行う。
【0061】
変形部350の制御のため、コントローラ10は、触覚提示装置200の姿勢を検出し、方向ベクトルVを求める。コントローラ10は、被接触面350Aが、方向ベクトルVに直交するように、形状変化量の指令を触覚提示装置200へ送信し、変形部350を変形させる。
【0062】
変形部350の変形により、被接触面350Aに対して触覚提示装置200を直角に保つことができる。なお、接触子220の伸縮量は、変形後の被接触面350Aの位置に基づいて算出される。
【0063】
<第3変形例:硬柔度提示(方式1)>
【0064】
触覚提示装置200は、硬軟度提示部を備えてもよい。硬軟度提示部は、接触による反力を調整することにより仮想物体410の硬軟度を提示する。硬軟度提示部は、例えば、接触子220を実物体300へ接触させるために接触子220を移動させるアクチュエータ230とは別に設けられたアクチュエータによって構成される。
【0065】
コントローラ10は、仮想物体410の硬軟度を、仮想物体410の表面属性値として有する。コントローラ10は、接触が生じた仮想物体410の硬軟度に応じて、硬軟度を提示するためのアクチュエータを動作させ、接触感とともに硬軟度をユーザに提示する。例えば、接触が生じた仮想物体410が柔らかい場合、アクチュエータ230によって接触子220を実物体300へ接触させつつも、硬軟度を提示するためのアクチュエータを動作させて、実物体300からの反力が弱まる方向に接触子220を移動させる。これにより、反力が弱まって、柔らかさがユーザに提示される。一方、接触が生じた仮想物体が硬い場合、アクチュエータ230によって接触子220を実物体300へ接触させたときの反力を、ほぼそのままユーザに提示することで、硬さがユーザに提示される。
【0066】
<第4変形例:硬柔度提示(方式2)>
【0067】
図6は、硬軟度提示部250として流体ダンパを備えた触覚提示装置200を示している。硬軟度提示部250は、例えば、接触子220に設けられる。硬軟度提示部250は本体部210に設けられてもよいし、本体部210と接触子220との接合部に設けられてもよい。
【0068】
流体ダンパは、内部に圧縮空気、油性液体、磁性流体などの作動流体が充填されて構成されている。流体ダンパによって、反力を減衰させることで、仮想物体410にめり込むような柔らかさをユーザに提示することができる。反力の減衰量が少なければ、仮想物体410の硬さをユーザに提示することができる。流体ダンパの減衰特性は、コントローラ10によって調整される。コントローラ10は、接触が生じた仮想物体410の硬軟度に応じて、減衰特性の調整値を決定する。減衰特性の調整値は、コントローラ10から硬軟度提示部250に与えられる。
【0069】
なお、硬軟度提示に際しては、硬軟度提示に関する方式1及び方式2を組み合わせてもよい。
【0070】
<第5変形例:表面粗さ提示(方式1)>
【0071】
図7に示すように、触覚提示装置200は、粗さ提示部260を備えてもよい。粗さ提示部260は、仮想物体410の表面の粗さ(ざらざら感)を提示する。
図7に示す粗さ提示部260は、振動を発生する。振動は、例えば、機械式のバイブレータ又は低周波音源により発生させることができる。粗さ提示部260は、接触子220に設けてもよいし、本体部210に設けてもよい。
【0072】
コントローラ10は、仮想物体410の表面の粗さを、仮想物体410の表面属性値として有する。コントローラ10は、接触が生じた仮想物体410の粗さに応じて、粗さ提示部260により発生する振動の強度及び周波数の少なくとも一方を調整する。
【0073】
<第6変形例:表面粗さ提示(方式2)>
【0074】
図8に示すように、粗さ提示部は、実物体300が備えていてもよい。
図8に示す実物体300は、異なる粗さをユーザに提示するため、表面の粗さが異なる複数の可動板370A,370B,370C,370D,370E,370Fを備える。コントローラ10は、仮想世界において接触が生じた第1仮想物体410の表面粗さに応じて、実世界において触覚提示装置200が接触する可動板を切り替える。
【0075】
図8に示す複数の可動板370A,370B,370C,370D,370E,370Fは、回転盤380の周縁に設けられている。回転盤380は、図示しない駆動部により回転駆動される。回転盤380の回転は、コントローラ10により制御される。コントローラ10は、仮想物体410の表面の粗さを、仮想物体410の表面属性値として有する。コントローラ10は、接触が生じた仮想物体410の粗さに応じて、触覚提示装置200が接触するための一の可動板を選択する。選択される可動板は、仮想世界において接触が生じた仮想物体410の粗さと同じ又は近似する粗さを持つ。
【0076】
例えば、可動板370Cが選択されると、コントローラ10は、可動板370Cが、触覚提示装置200に対向する位置へ移動するように回転盤380を回転させる。これにより、触覚提示装置200の接触子220は、選択された可動板370Cに接触することができる。触覚提示装置200が可動板370Cに接触することで、可動板370Cの表面粗さを、仮想物体410の表面粗さとしてユーザに提示することができる。
【0077】
なお、表面粗さ提示に際しては、表面粗さ提示に関する方式1及び方式2を組み合わせてもよい。方式2の可動板と、方式1の振動と、を組み合わせることで、有限数の可動板では提示しきれない多様な粗さ感をユーザに提示することができる。また、粗さ提示の補助として、仮想世界における仮想物体の表面表現を、視覚的に粗さを示すものとすることにより、粗さの視覚的誘導が可能となる。視覚的誘導により、ユーザに対して粗さに関する錯覚を与えて、ユーザが知覚する粗さを補正することができる。
【0078】
粗さ提示の補助として、聴覚誘導を用いてもよい。聴覚誘導は、仮想世界における仮想物体の表面の粗さを、聴覚的に示す。例えば、第2仮想物体420が第1仮想物体410の表面上を移動した場合、第1仮想物体410の表面粗さが大きい場合には、強い摩擦音(ガリガリ音等を)をユーザに提示し、第1仮想物体410の表面粗さが小さい場合には、弱い摩擦音をユーザに提示することができる。ユーザに提示される音の出力装置(スピーカ等)は、触覚提示装置200に設けられていてもよいし、触覚提示装置200が接触する実物体300(可動板310,370A,370B,370C,370D,370E,370F等)に設けられてもよいし、実物体300の付近に設置されてもよい。聴覚誘導は、前述の視覚誘導と併用してもよい。
【0079】
<3.付記>
本発明は、上記実施形態に限定されるものではなく、様々な変形が可能である。
【符号の説明】
【0080】
10 :コントローラ
20 :プロセッサ
25 :VR空間管理処理
30 :メモリ
35 :コンピュータプログラム
40 :インタフェース
50 :表示装置
100 :触覚提示システム
200 :触覚提示装置
210 :本体部
210A :開口部
220 :接触子
220A :先端
230 :アクチュエータ
240 :インタフェース
250 :硬軟度提示部
260 :粗さ提示部
300 :実物体
300A :被接触面
310 :可動板
310A :被接触面
320 :回転機構
330 :支持部
350 :変形部
350A :被接触面
370A :可動板
370B :可動板
370C :可動板
370D :可動板
370E :可動板
370F :可動板
380 :回転盤
410 :第1仮想物体
420 :第2仮想物体
430 :第3仮想物体
D :距離
d :距離
L :長手方向
Pvirtual :第1接触点
Pend :後端
Preal :第2接触点
Ptip :先端
V :方向ベクトル