JP2005078310A - 触覚呈示装置、触覚呈示方法、及びプログラム - Google Patents

触覚呈示装置、触覚呈示方法、及びプログラム Download PDF

Info

Publication number
JP2005078310A
JP2005078310A JP2003307087A JP2003307087A JP2005078310A JP 2005078310 A JP2005078310 A JP 2005078310A JP 2003307087 A JP2003307087 A JP 2003307087A JP 2003307087 A JP2003307087 A JP 2003307087A JP 2005078310 A JP2005078310 A JP 2005078310A
Authority
JP
Japan
Prior art keywords
tactile
movement
tactile information
light emitting
operator
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.)
Pending
Application number
JP2003307087A
Other languages
English (en)
Inventor
Yasunori Oda
保憲 黄田
Hiroyuki Hotta
宏之 堀田
So Sugino
創 杉野
Kazuyuki Tsukamoto
一之 塚本
Shin Takeuchi
伸 竹内
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox 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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP2003307087A priority Critical patent/JP2005078310A/ja
Publication of JP2005078310A publication Critical patent/JP2005078310A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Position Input By Displaying (AREA)

Abstract

【課題】 発光手段が設けられたポインティングデバイスを動かすことにより、発光手段の位置や動きに対応させた触覚情報を呈示することができる触覚呈示装置、触覚呈示方法、及びプログラムを提供する。
【解決手段】 LED12と触覚情報呈示部14が設けられた触覚マウス10をポインティングデバイスとして使用する。操作者は、触覚情報呈示部14の指載置部58に指先を載置することにより、触覚情報を感知することができる。3D計測装置20は、触覚マウス10に設けられたLED12の位置を計測し、LED12の位置を示す位置情報をパソコン30に出力する。パソコン30では、入力された位置情報に基づいて、LED12の動きを検出する。LED12の位置及びLED12の動きの少なくとも一方に対応させて触覚情報呈示部14に制御信号を出力し、触覚情報呈示部14が触覚情報を呈示するように制御する。
【選択図】 図1

Description

本発明は、触覚情報を呈示する触覚呈示装置、触覚呈示方法、及びプログラムに関し、特に発光手段の位置や動きに対応させた触覚情報を呈示する触覚呈示装置、触覚呈示方法、及びプログラムに関するものである。
パソコン等に対して指示入力するためのデバイスとして、従来よりx、y座標値を相対座標値としてパソコンに指示入力するマウス(2次元マウス)が広く用いられている。近年、この2次元マウスを用いて3次元座標値を指示入力する技術が提案されている。この技術では、例えば、従来の2次元(x、y)座標値を指示するためのマウスボールに加え、3つ目の座標値(z座標値)を指示するためのマウスボールを別に設け、このマウスボールの回転を用いて3次元座標値を指示入力する。これには複雑な操作が必要とされる。また、2次元マウスの操作は2次元平面上に拘束されており、3次元空間の指示入力装置としては操作性に劣る。
そこで、光源としてのLEDをペンに装備、或いは操作者の指等に装着し、LEDからの光を受光する受光部をパソコンの画面の上部等に取付け、LEDの位置を検出することにより3次元座標値を指示入力することができる装置(3次元マウス)が提案されている(例えば、特許文献1参照。)。この装置では、光源の受光部に対する角度を求め、三角測量の原理により光源の3次元位置を求めている。なお、この装置を用いてマウスの基本動作であるクリック等のシグナルを入力する場合には、操作者が指で押すことのできるスイッチ等をLEDの近傍に設け、該スイッチを押下する等の機械的操作を行うことにより有線を介してパソコンの基本ソフトに入力する必要がある。
また、3次元入力装置として、受発光手段からプローブ光を照射し、受発光手段が再帰光を受光したか否かにより指示手段の座標を入力することができる座標入力/検出装置(例えば、特許文献2)、従来の2次元マウスを置いて上下させることによりz軸座標が入力できる3次元マウステーブル(例えば、特許文献3)、電子ペンの中に指で回転されるロータリースイッチが設けられ、その回転度合いによってグラフィカルパラメタ(線分の太さ、色、陰影、グレイスケール)の変化の度合いを決定する座標入力用電子ペン(例えば、特許文献4参照。)、垂直(z軸)方向の入力を行うことができるスティックを設け、圧力センサ等によって力の方向及び量を検出し、3次元空間における垂直方向の移動量を指示することができるポインティング・デバイス(例えば、特許文献5)等が知られている。
また、米国Gyration Inc.社のGyromouseも、ポインティングデバイスとして広く知られている。このGyromouseは、オートジャイロを内蔵しており、空中操作でレーザーの方向を変えることができる機構を有している。
更にまた、近年、人の動きやしぐさをCCDカメラにより撮影し、その画像を解析することによって、例えば腕や指の方向を示す特徴点を検出し、指示入力するシステムが提案されている。このシステムではCCDカメラを2台設け、利用者の特定の部位の動きから、例えば指の指し示す方向を検出する。
また、本出願人により、発光手段からの光を受光することにより発光手段の位置を検出する技術を用い、五感の少なくとも1つに訴えるようなフィードバック(焦点メタファーや色相等の変化)によって、画面の前面に広がる3次元空間上の分割された複数の領域の各境界に対する発光手段の通過状態をユーザに認知させ、機械的メカニズムを利用せずに、発光手段の各領域の境界に対する通過の仕方に応じて、クリック、ダブルクリック、ドラッグ等の2次元マウスの機能を実行することができる3次元指示入力装置が提案されている(特願2003−96366参照)。更にまた、操作者に装着された発光手段を3D計測装置から操作者に向かう方向(z軸方向)に沿って前後方向に移動させ、発光手段からの光を受光することにより計測された位置情報から発光手段の動きに伴う加速度、速度を検出し、動きに伴う時間も考慮しながら、発光手段の動きが予め定められた動きに対応しているか否かを判断し、対応していると判断した場合に予め定められた動きに対応付けられた処理(クリック、ダブルクリック、ドラッグ等の機能)の実行を指示することができる指示入力装置が提案されている(特願2003−138645参照)。
一方、近年、コンピュータで視覚や聴覚だけでは表現できない様々な情報を操作者に伝えるために、視覚や聴覚を補完する物理的フィードバックとして、操作者に触覚刺激を与えることができる装置が望まれている。
触覚刺激を与えることができる装置としては、ポインティングデバイスに駆動部(アクチュエータ)を設け、パソコンの画面上のポインタが指示する画面上の対象物(画像情報)に従って駆動部(アクチュエータ)が駆動し、手や指に触力覚刺激を与えることができる装置が知られている(例えば、特許文献6、特許文献7参照)。また、MITで開発された3次元空間における触覚フィードバック機能を実現したファントムという触覚デバイスも広く知られている。
特開平10−9812号公報 特開2001−142643号公報 特開2002−366301号公報 特開2000−47805号公報 特開平10−254616号公報 特開11−203040号公報 特開2000−330688号公報
しかしながら、上述した従来の3次元マウス、3次元入力装置、Gyromouse、CCDカメラを用いて指示入力するシステム、本出願人が提案した3次元指示入力装置や指示入力装置では、3次元座標値の入力はできるが、触覚フィードバックを実現する機能を有していないため、操作者に触覚刺激を与えることができない。
また、従来の触覚刺激を与えることができる装置では、指示入力する際の動きは2次元平面上での動きに制限されており、自由度が少ない。また、この触覚フィードバックはアプリケーションに依存しており、いわば、アプリケーション内の限定された世界の中でのみ実現される機能である。
ファントムは、連続する複数の物理的軸に基づいて動作するためパソコン画面上を自由にポインティングできるものではない。また、操作自体が重く感じられ、ポインティングの指示方向を自由に回転させることができない。また、専用のソフトを使う必要がある。
本発明は、上述した課題を解決するために提案されたものであり、発光手段が設けられたポインティングデバイスを動かすことにより、発光手段の位置や動きに対応させた触覚情報を呈示することができる触覚呈示装置、触覚呈示方法、及びプログラムを提供することを目的とする。
上記目的を達成するために、本発明の触覚呈示装置は、操作者によって操作されるポインティングデバイスに設けられた発光手段と、前記操作者に対して触覚情報を呈示する触覚情報呈示手段と、前記発光手段から発光された光を検出することにより前記発光手段の位置及び動きの少なくとも一方を検出する検出手段と、前記検出手段で検出された前記発光手段の位置及び動きの少なくとも一方に対応させた触覚情報が呈示されるように前記触覚情報呈示手段を制御する制御手段と、を含んで構成されている。
本発明の触覚呈示装置において、操作者によって操作されるポインティングデバイスに発光手段が設けられる。ポインティングデバイスは、位置を指示するための装置であれば特に限定されず、例えばパソコンの入力装置として一般的に用いられるマウスや、スティック型のポインティングデバイスであってもよい。発光手段は、光を発するものであれば特に限定されず、例えばLEDとしてもよい。
触覚情報呈示手段は、操作者に対して触覚情報を呈示する。この触覚情報呈示手段は、ポインティングデバイス自体に設けられていてもよいし、ポインティングデバイスとは別に操作者に装着可能に設けられていてもよい。
検出手段は、発光手段から発光された光を検出することにより、発光手段の位置及び動きの少なくとも一方を検出する。制御手段は、検出手段で検出された発光手段の位置及び動きの少なくとも一方に対応させた触覚情報が呈示されるように触覚情報呈示手段を制御する。
このように、本発明によれば、発光手段が設けられたポインティングデバイスを動かすことにより、発光手段の位置や動きに対応させた触覚情報を呈示することができる。またこれにより、操作者は、ポインティングデバイスの位置や動きを認識することができ、指示入力を比較的正確かつ容易に行うことができる。
また上記触覚呈示装置の前記触覚情報呈示手段に、前記操作者の指を載置可能な傾斜面を設けることもできる。これにより、指を載置する部分が平らな場合に比べて、より多様な触覚情報を呈示することができると共に、操作者は呈示された触覚情報をより強く感知することができる。
また、前記触覚情報呈示手段は、前記操作者の指を載置可能な凹部を備えており、該凹部は縁部から中心部に向かって連続的に傾斜した斜面を備えることもできる。これにより、一方向だけでなく、多様な方向に作用する触覚情報を呈示することができると共に、操作者は、該多様な方向に作用する触覚情報をより強く感知することができる。
前記検出手段は、予め定められた軸に対する回転運動を前記動きとして検出し、前記制御手段は、前記回転運動の回転角に応じて触覚情報の呈示状態が変化するように前記触覚情報呈示手段を制御することもできる。
このように、回転運動を検出して、回転運動の回転角に応じて触覚情報の呈示状態が変化するように制御することにより、回転運動による指示入力に対しても、適切に触覚情報を呈示することができる。
前記検出手段は、前記検出された光に基づいて前記発光手段の加速度及び速度の少なくとも一方を算出し、算出された前記発光手段の加速度及び速度の少なくとも一方の大きさに基づいて前記動きを検出することもできる。
このように、加速度及び速度の少なくとも一方の大きさに基づいて動きを検出することにより、ポインティングデバイスのより小さな動きを認識することができ、小さな動きでも豊かな触覚情報を操作者に呈示することができる。
前記操作者に対して音声を発生する音声発生手段を更に含み、前記制御手段は、前記発光手段の位置及び前記動きの少なくとも一方に対応させた触覚情報が呈示されるように前記触覚情報呈示手段を制御すると共に、前記発光手段の位置及び動きの少なくとも一方に対応させた音声が発生されるように前記音声発生手段を制御することもできる。
このように、触覚情報を呈示するだけでなく、音声も発生させるように制御することにより、ポインティングデバイスの位置或いは動きを操作者の感覚により強く訴えることができる。
前記検出手段は、予め触覚情報が対応付けられた複数の空間に分割された所定の空間の該複数の空間に対する前記発光手段の位置及び動きの少なくとも一方を検出し、前記制御手段は、該複数の空間に対する前記発光手段の位置及び動きの少なくとも一方に対応させた触覚情報が呈示されるように前記触覚情報呈示手段を制御することもできる。
すなわち、所定の空間を複数の空間に分割する。この複数の空間には、予め触覚情報が対応付けられている。検出手段は、この複数の空間に対する発光手段の位置及び動きの少なくとも一方を検出する。制御手段は、該複数の空間に対する発光手段の位置及び動きの少なくとも一方に対応させた触覚情報が呈示されるように触覚情報呈示手段を制御する。例えば、複数の空間のいずれかの空間内に発光手段が位置しているときや、複数の空間を分割する境界領域を発光手段が通過したときに、予め対応付けられた触覚情報を呈示することができる。
前記検出手段は、予め触覚情報及び処理が対応付けられた複数の空間に分割された所定の空間の該複数の空間に対する前記発光手段の位置及び動きの少なくとも一方を検出し、前記制御手段は、該複数の空間に対する前記発光手段の位置及び動きの少なくとも一方に対応させた触覚情報が呈示されるように前記触覚情報呈示手段を制御すると共に前記複数の空間に対して予め対応付けられた前記処理が実行されるように制御することもできる。
すなわち、所定の空間を複数の空間に分割する。この複数の空間には、予め触覚情報及び処理が対応付けられている。検出手段は、この複数の空間に対する発光手段の位置及び動きの少なくとも一方を検出する。制御手段は、該複数の空間に対する発光手段の位置及び動きの少なくとも一方に対応させた触覚情報が呈示されるように触覚情報呈示手段を制御すると共に、前記複数の空間に対して予め対応付けられた前記処理が実行されるように制御する。例えば、複数の空間のいずれかの空間内に発光手段が位置しているときや、複数の空間を分割する境界領域を発光手段が通過したときに、予め対応付けられた触覚情報を呈示すると共に、予め対応付けられた処理を実行することができる。
複数のブラシ及び複数の色の各情報を用いて描画するプログラムを実行する場合に、前記制御手段は、前記操作者により選択されたブラシ及び色の少なくとも一方の情報に応じて、異なる触覚情報が呈示されるように前記触覚情報呈示手段を制御することもできる。
このように、複数のブラシ及び複数の色の各情報を用いて描画するプログラムを実行中に、発光手段の動きや位置だけでなく、選択されたブラシや色の情報に応じて、呈示する触覚情報を異ならせることにより、ブラシや色の情報を操作者に与えることができ、操作者が目の不自由な場合でも、表現豊かな絵を描くことが可能になる。
また、本発明の触覚呈示方法は、操作者によって操作されるポインティングデバイスに設けられた発光手段から発光された光を検出することにより該発光手段の位置及び動きの少なくとも一方を検出する検出工程と、前記検出工程で検出された前記発光手段の位置及び動きの少なくとも一方に対応させた触覚情報が呈示されるように、前記操作者に対して触覚情報を呈示するための触覚情報呈示手段を制御する制御工程と、を含んで構成されている。
また、本発明のプログラムは、コンピュータに、操作者によって操作されるポインティングデバイスに設けられた発光手段から発光された光を検出することにより該発光手段の位置及び動きの少なくとも一方を検出する検出工程と、前記検出工程で検出された前記発光手段の位置及び動きの少なくとも一方に対応させた触覚情報が呈示されるように、前記操作者に対して触覚情報を呈示するための触覚情報呈示手段を制御する制御工程と、を実行させる。
本発明の触覚呈示方法及びプログラムも、本発明の触覚呈示装置と同様に作用するため、発光手段が設けられたポインティングデバイスを動かすことにより、発光手段の位置や動きに対応させた触覚情報を呈示することができる。またこれにより、操作者は、ポインティングデバイスの位置や動きを認識することができ、指示入力を比較的正確かつ容易に行うことができる。
以上説明したように、本発明によれば、発光手段が設けられたポインティングデバイスを動かすことにより、発光手段の位置や動きに対応させた触覚情報を呈示することができる、という効果を奏する。
以下、図面を参照して、本発明の実施の形態について詳細に説明する。
[第1の実施の形態]
図1は、本発明の第1の実施の形態に係る触覚呈示装置としての機能を備えた指示入力システムの構成を示す図である。図示されるように、指示入力システムは、触覚マウス10と、3D計測装置20と、パソコン30とを備えている。
触覚マウス10は、LED12と、触覚情報呈示部14と、を備えたポインティングデバイスである。LED12は、触覚マウス10の先端部に設けられている。触覚情報呈示部14は、パソコン30からの制御信号に応じて駆動される。操作者の指先が触覚情報呈示部14の指載置部(後述)に載置されることにより、操作者は、指先から触覚情報を感知することができる。触覚情報呈示部14については後述する。
3D計測装置20は、3D計測装置20に備えられた受光部がLED12から発光された光を受光することによりLED12からの光を検出し、LED12の3次元位置を計測する。該計測された3次元位置を示す位置情報(x、y、z座標値)はパソコン30に出力される。なお、この3D計測装置20は、LED12等の発光体から発光された光を検出することにより3次元位置を計測できる装置であれば特に限定されないが、特開平10−9812号公報に記載された位置検出の技術等を用いて構成することができる。
本指示入力システムでは、3D計測装置20の受光部をパソコン30のディスプレイの画面の位置と略一致する位置(例えばディスプレイ上部等)に装備することにより、パソコン30のディスプレイの画面前方の空間におけるLED12の3次元位置を計測する。また、パソコン30のディスプレイの画面に略一致する位置には、パソコン30のディスプレイの画面に対応した(実際には存在しない)仮想平面が設定される。LED12の仮想平面に対する位置に応じて、ディスプレイの画面にカーソルが表示される。従って、操作者は、該仮想平面に対してLED12が設けられた触覚マウス10を移動させることにより、ディスプレイの画面の任意の位置にカーソルを表示させることができる。
本指示入力システムの3D計測装置20で用いられる座標系は、仮想平面の左上角に原点があり、仮想平面をx−y平面とし、仮想平面に垂直な軸をz軸とする座標系であり、この座標系では、仮想平面から操作者に向かう方向がz軸の+方向、仮想平面に向かって右方向がx軸の+方向、下方向がy軸の+方向となるように定められている。以下、この座標系を基準座標系と呼称する。なお、前述のカーソルの表示位置は、LED12の基準座標系におけるx、y座標値が用いられる。
なお、仮想平面はどの平面上に設けてもよいが、ディスプレイの画面に略一致する平面上に設けることにより、操作者が指示入力する際、入力位置を感覚的に認識しやすいため好適である。
図2は、パソコン30の具体的な構成を示した図である。図示されるように、パソコン30のパソコン本体32は、CPU34、ROM36、RAM38、及び入出力インタフェース(I/O)40を含んで構成されている。また、I/O40には、パソコン30の構成要素の一部として、ディスプレイ42と、スピーカ44と、ハードディスクドライブ(HDD)46とが接続されている。また、I/O40には、触覚マウス10と3D計測装置20とが接続されている。
3D計測装置20から出力されたLED12の位置情報は、I/O40を介して入力される。
HDD46には、LED12の位置或いは動きに対応させて触覚情報を呈示させるための触覚情報呈示処理ルーチンのプログラム(以下、触覚情報呈示プログラムと呼称)、及び該プログラムを実行する際に用いられる各種設定情報が記憶されている。CPU34は、触覚情報呈示プログラム及び各種設定情報をRAM38にロードして、該プログラムを実行する。
各種設定情報には、LED12の動きに伴う加速度の閾値A0、速度の閾値V0、及びLED12の動きを判断するための時間の閾値T0、T1が含まれている。
上記プログラムや各種設定情報を記憶する記憶媒体は、HDD46に限定されず、ROM36であってもよい。また、図示は省略するが、I/O40に接続されたCD−ROMやDVDディスク、光磁気ディスクやICカードであってもよい。更にまた、該プログラムを、ネットワークに接続されたサーバ等からダウンロードするようにしてもよい。
次に、図3及び図4を参照しながら、触覚マウス10の触覚情報呈示部14の電気的な構成を説明する。
図3は、触覚情報呈示部14の概略構成図であり、図4は、図3の矢印F方向から見た図である。ただし、図4の指載置部58については、その形状が明瞭となるように中心付近の形状が示されている。
触覚情報呈示部14は、基部54と、基部54に設けられた第1磁石50a〜第4磁石50dの4つの磁石と、第1コイル52a〜第4コイル52dの4つのコイルとにより構成される駆動部16、指載置部58、基部54と指載置部58とを連結する弾性部材56、及びパソコン30から制御信号を受けて第1コイル52a〜第4コイル52dに電流を供給する駆動回路60により構成されている。
基部54に設けられた4つの磁石50a〜50dは、互いに隣り合う磁石同士が逆に分極するように2行2列に配置されており、互いに隣り合う磁石間で磁界の向きが逆方向となるように構成されている。
指載置部58と4つの磁石50a〜50dとの間には、両者が摺動可能なように摺動部が設けられている(図示省略)。この摺動部は、低摩擦材料より構成されており、例えば、ポリテトラフルオロエチレンなどのフッ素樹脂、潤滑油を含浸した樹脂や金属、潤滑油などの流体等を用いることができる。また、摺動部を非磁性体より成る球体や円柱等の部材により構成し、これら球体や円柱等の転がりによって指載置部58を摺動させるように構成することもできる。
指載置部58は、載置された指に後述する推力を伝達する。指載置部58は、上方から見た形状は円形であるが、図4に示されるように、円形の周縁部から中心部に向かって連続的に傾斜した斜面によりすり鉢状に凹んでいる。この凹みに操作者の指先が載置される。指載置部58の下層側には、4つのコイル52a〜52dが設けられている。
各コイル52a〜52dは、指載置部58に固着され、それぞれ駆動回路60から電流が供給される。各コイル52a〜52dに供給される電流は、パソコン30のCPU34によってそれぞれ流れる向きと大きさとが調整される。各コイル52a〜52dに電流が供給されると、フレミングの左手の法則により各コイル52a〜52dに電流の流れる向きと大きさに応じた推力が働き、この推力が指載置部58に伝達されるので、指載置部58には各コイル52a〜52dに生じた推力を合成した合力が働くことになり、これが指載置部58に載置された操作者の指先に与えられる触覚情報となる。
ここで、磁石による磁界とコイルに供給される電流の流れる向きとについて、例えば、図3及び図4に示した第1磁石50aと第1コイル52aを例に挙げて説明する。ここでは、第1磁石50aは上面側がN極、下面側がS極に分極しており、基部54の垂直方向であるZ軸方向に磁界を生じさせているものとする。また、第1コイル52aは、一辺が前記磁石の上方で基部54表面と平行な面内の任意の方向であるX方向に沿って配置されるものとする。なお、ここでいうXYZ軸は、上述した基準座標系の座標軸とは異なる。
基部54の垂直方向であるZ軸方向の磁界中にX軸方向に電流が通過することで、Y軸方向の推力が生じる。このため、第1コイル52aに時計回りの電流を流すと、コイルはY軸の+方向に推力を発生させる。また、電流の向きを反時計回りに変更すれば、推力が作用する方向もY軸の−方向に変更される。さらに、流す電流の値を大きくすれば、大きな推力が発生し、小さくすれば、小さな推力が発生するので、流す電流値の大きさを調節することにより発生する推力の大きさを調節することができる。
さらに、発生可能な推力の方向はX軸方向やY軸方向だけに留まらず、Z軸を中心として回転する方向に推力を発生させることも可能である。すなわち、図3において、第1コイル52aに時計回りの電流を流し、第1コイル52aと対向して配置された第3コイル52cに反時計回りの電流を流すことにより、互いに反対方向に働く推力が発生するため、結果的にZ軸を中心とする回転モーメントが指載置部58に作用することになる。なお、第2コイル52bと、第2コイル52bに対向して配置された第4コイル52dについても同様である。
さらに、上記2つのコイルに対して流す電流の大きさが異なると反対方向に働く力のバランスも電流値に応じて変化するため、回転中心をずらすことができる。すなわち、上記2つのコイルに対して流す電流の大きさを調整することにより回転中心を変えるように調整することも可能である。
図5は、操作者が触覚マウス10を保持した状態を示した図である。触覚情報呈示部14の指載置部58の凹みに操作者の指先が載置される。また、図示されるように人差し指が指載置部58に載置され、触覚マウス10本体は、親指と、中指及び薬指とにより左右から挟んで保持される。
図6は、触覚マウス10(LED12)の移動方向と、該移動方向に応じて発生する推力との関係を示した図である。例えば、図示されるように、触覚マウス10の移動方向が、前後左右(外側に向かう4つの矢印abcd)のいずれかの方向である場合には、推力は、該移動方向とは反対(中心部に向かう4つの矢印)の方向に発生するように触覚情報呈示部14が制御される。指載置部58に載置された指先に指載置部58の斜面があたり、指載置部58がせり上がる感覚が与えられるため、操作者はあたかも反作用を受けたように感じる。
以下、図7のフローチャートを用いて触覚情報呈示処理ルーチンについて説明する。
なお、図示は省略するが、パソコン30には所定時間毎にLED12の位置情報が入力されるため、触覚情報呈示処理ルーチンでは、所定時間毎に入力された位置情報に基づいて加速度及び速度が検出される。ここでは、速度は、ある特定時間間隔におけるLED12の位置を示す座標値の差分を該特定時間で割ることにより求める。加速度は、求めた速度の差分を更に該特定時間で割ることにより求める。
このように検出した加速度及び速度に基づいて、後述するように、LED12の指示する方向や動きが判断される。加速度を用いて判断することにより、LED12を急速に動かしている状態とそうでない状態、すなわち、操作者が意識して手を動かしている状態と、指示入力する意志がなく、自由に手を動かしている状態とを区別することができる。また、速度を用いて判断することにより、LED12をある程度の距離だけ動かしたことを認識でき、実際のLED12の動きを判断することができる。速度を判断材料とすることにより、位置情報から移動距離自体を算出して用いる場合に比して、より小さな動きを認識することが可能となる。
ステップ100では、加速度が閾値A0を越えたか否かを判断する。ここでは、閾値は絶対値で設定されているため、加速度が負の値である場合には正の値となるように調整されてから閾値と比較され、判断される。ステップ100で、加速度≦A0であると判断した場合には、次の位置情報が入力されるまで待機状態を続ける。また、加速度>A0であると判断した場合には、ステップ102で、速度が閾値V0を越えたか否かを判断する。なお、速度も加速度と同様、負の値であれば正の値となるように調整されて閾値と比較され判断される。ここで、速度≦V0であると判断した場合には、ステップ100に戻る。速度>V0であると判断した場合には、ステップ104に移行する。
ステップ104では、LED12の移動方向を検出する。移動方向は、入力した位置情報や速度から即座に検出することができる。
ステップ106では、検出された移動方向に応じて、触覚情報(ここでは推力)を呈示する。以下、図8及び図9を用いて、触覚情報を呈示する処理について詳細に説明する。
図8及び図9は、LED12の移動方向、指先が受ける力の方向、及び指載置部58の動く方向の関係を示した図である。図中のMは、LED12の移動方向のベクトルを示し、Nは、LED12の移動により発生した推力のベクトルを示し、N’は、指先に働く力のベクトルを示している。
図8のMに示されるように、LED12の移動方向がa方向である場合には、推力Nが移動方向とは逆方向(b方向)に発生するように、触覚情報呈示部14が制御される。すなわち、パソコン30(CPU34)から、推力Nがb方向に発生するように駆動回路60から電流が供給されるように、制御信号が出力される。これにより推力Nが発生し、指先には、Nの成分の内、指載置部58の斜面に垂直な成分N’の力がかかる。この触覚が、触覚マウス10の移動方向に対する反作用として感じられる。
なお、ここでは、CPU34からの制御信号は、有線を介して駆動回路60に出力されるが、赤外線や電波を用いて無線で伝送されるようにしてもよい。
このように、基本的には、LED12の移動方向とは反対の方向に推力が発生するように触覚情報呈示部14が制御されるが、移動方向によっては、例えば、以下のように制御される。
図9のMに示されるように、LED12の移動方向が下方である場合には、推力Nが図示されるような方向(a方向)に発生するように、触覚情報呈示部14が制御される。この場合には、図示される方向に推力Nが発生することにより、指先に、Nの成分の内、指載置部58の斜面に垂直な成分N’の力がかかる。この感触が、移動方向に対する反作用として感じられる。
発生させる推力をa−b方向に限定する場合、推力をaからb及びbからaのいずれの方向に発生させるべきかは、LED12の移動方向の、a−b方向の成分及びa−b方向に垂直な成分のいずれの成分が大きいかをまず判断し、大きい方の成分に応じて推力が発生するように制御する。図6のc−d方向を考慮して推力を発生させる場合も、同様に制御する。
また、abcdの4方向への推力を同時に発生させ、各推力を合成した触覚情報を呈示することも可能である。この場合には、abcdの4方向についてそれぞれ電流を流し、各推力が合成された触覚情報を呈示してもよいし、予めそれぞれの方向の差分をとり、その差分だけ電流を流すことにより各推力を合成した触覚情報を呈示してもよい。
このように推力を制御することにより、指先には触覚マウス10(LED12)の移動方向とほぼ逆方向に力が発生しているように感じられる。従って、操作者は、触覚マウス10をどの方向に移動させているかを容易に把握することができる。
なお、ステップ106で発生させる推力の大きさを、検出された加速度及び速度の少なくともいずれか一方の大きさに応じて変更してもよい。このように推力を制御することにより、操作者は、どの程度の加速度または速度で触覚マウス10を動かしているかを容易に把握することができる。
ステップ106に続いて、ステップ108では、検出された移動方向に対応させて音声を発生する。具体的には、パソコン本体32上で再生された、移動方向に対応させて異なる音声データを、サウンドカード(図示省略)に出力し、サウンドカードにて音声データをスピーカ44で再生するためアナログ信号に変換してスピーカ44に出力する。なお、このステップ108の音声発生処理は、ステップ106の触覚情報呈示とほぼ同時に行われる。
なお、この触覚情報呈示処理ルーチンのプログラムは、カーソルの表示位置を移動する際に実行されるようにしてもよいし、本出願人が提案した指示入力装置(特願2003−138645参照。)に示されるような3次元空間におけるクリックやダブルクリック等の動きに対応させて推力が発生されるように、実行されるようにしてもよい。後者の場合には、クリックやダブルクリック等の動きに制限時間を設定し、動きの途中で制限時間を越えた場合には推力を発生させないようにすることもできる。
また、上記では、LED12の動き(移動方向)に対応させて触覚情報を呈示する例について説明したが、LED12の位置に対応させて触覚情報を呈示するようにしてもよい。この場合には、3D計測装置20でLED12の位置が計測可能な空間に、触覚情報を呈示する領域を定めておき、図10に示される触覚情報呈示処理ルーチンを実行する。
ステップ200で、入力された位置情報に基づいて、現在のLED12の位置は予め定められた領域内であるか否かを判断する。なお、該領域が複数定められていてもよい。ここで、現在のLED12の位置は予め定められた領域内にないと判断した場合には、次に位置情報が入力されるまで待機状態を維持する。また、現在のLED12の位置が予め定められた領域内にあると判断した場合には、ステップ202に移行し、予め定められた領域に対応して触覚情報を呈示する。複数の領域で異なる触覚情報が対応付けられている場合には、それぞれ異なる触覚情報を呈示する。
呈示する触覚情報としては、例えば、上述の図6で示したように、前後左右abcdのいずれかの方向への推力であってもよいし、前後方向(a−b方向)の振動(推力の方向を、a方向とb方向とに交互に、かつ小刻みに切換える動き)であってもよい。
ステップ204では、予め定められた領域に対応させて音声を発生する。該領域が複数定められている場合には領域毎に発生する音声を異ならせることもできる。
このように、触覚マウス10に備えられたLED12の位置に対応させて触覚情報を呈示することにより、操作者は、触覚マウス10の位置を容易に認識することができる。
なお、図10の位置に対応させて触覚情報を呈示する処理と、図7の動きに対応させて触覚情報を呈示する処理とを合わせ、位置および動きの双方に対応させて触覚情報を呈示するようにしてもよい。
以上説明したように、触覚マウス10に備えられたLED12の位置および動きの少なくとも一方に対応させて触覚情報を呈示するようにしたため、操作者は、3次元空間で触覚マウス10を動かすことにより、容易に3次元空間における触覚マウス10の位置や動きに応じた触覚フィードバックを受けることができる。また、これにより操作者は、触覚マウス10の3次元空間における位置あるいは動きを容易に把握することができ、カーソルの正確なポジショニングが可能となる。
なお、本実施の形態では、図4に示されるように、指載置部58が、円形の周縁部から中心部に向かって連続的に傾斜した斜面によりすり鉢状に凹んだ形状である場合を例に挙げて説明したが、発生させる推力が図6のa方向のみである場合には、図11に示されるように、後方から前方に向かって傾斜した傾斜面を備えたものであってもよい。また、逆に、発生させる推力が図6のb方向のみである場合には、図12に示されるように、前方から後方に向かって傾斜した傾斜面を備えたものであってもよい。
また、本実施の形態では、触覚情報呈示部14の駆動部16が、図13に示されるように、触覚マウス10本体及び指載置部58に対して平行に設けられている例について説明したが、図14に示されるように、触覚マウス10本体及び指載置部58に対して垂直に設けられていてもよい。これにより、指載置部58を垂直方向に動かすことができる。例えば、触覚マウス10を3次元空間において上下に動かす場合には、図8に示した例に比べて、直接的に反作用の力を指に与えることができる。
また、本実施の形態における触覚マウス10は、LED12の位置や動きにより3次元空間での指示入力を行うためのポインティングデバイスとして用いられているが、指示入力用のスイッチやボタン等を備えることにより、2次元平面での指示入力を行うための従来のポインティングデバイスとして用いることもできる。これにより、LED12の位置や動きによる指示入力とボタン押下等の機械的操作による指示入力とを必要に応じて使い分けることも可能である。また、指示入力の形態に応じて呈示する触覚情報を異ならせるようにしてもよい。
[第2の実施の形態]
第1の実施の形態では、任意の方向へのLED12の動きや位置に対応させて触覚情報を呈示する例について説明したが、本実施の形態では、予め定められた平面に対して垂直な方向におけるLED12の動きにより触覚情報を呈示する共に、該動きに対応付けられた処理を実行する例について説明する。
ここでは、前述した仮想平面(基準座標系のx−y平面)に対して垂直な軸の、仮想平面に近づく方向(z軸のマイナス方向)に素早く触覚マウス10(LED12)が動いたときに、検出されたLED12の動きは予め定められた動き(ここでは選択の動き)であると判断して、ディスプレイ42の画面上に表示されているアイコンを選択する処理を実行する例について説明する。なお、本実施の形態における指示入力システムは、第1の実施の形態と同様であるため、説明を省略する。
図15は、本実施の形態における触覚情報呈示処理ルーチンを示したフローチャートである。
ステップ300では、加速度にマイナスの符号を付した値が閾値A0を越えたか否かを判断する。ここでマイナスの符号を付すのは、閾値が絶対値で設定されているためである。仮想平面に近づく方向(マイナス方向)にLED12が移動した場合には、検出される加速度がマイナスの値となるため、この値にマイナスの符号を付すことによって、正の値とし、閾値と比較できるようにしている。
ステップ300で、−加速度≦A0であると判断した場合には、次の位置情報が入力されるまで待機状態を続ける。−加速度>A0であると判断した場合には、ステップ302で、速度にマイナスの符号を付した値が閾値V0を越えたか否かを判断する。ここで、−速度≦V0であると判断した場合には、LED12の動きは選択の動きではないと判断してステップ300に戻る。−速度>V0であると判断した場合には、LED12の動きは選択の動きであると判断してステップ304に移行する。
ステップ304では、触覚情報を呈示する。ここで呈示される触覚情報は第1の実施の形態で示した図6のb方向への推力である。ステップ300及び302で肯定判断された場合には、移動方向はz軸のマイナス方向であることが自明であるため、b方向に推力が発生するように触覚情報呈示部14を制御する。
ステップ306では、ディスプレイ42の画面に表示されているカーソルがアイコンを指示しているか否かを判断する。ここでアイコンを指示していないと判断した場合には、ステップ300に戻る。アイコンを指示していると判断した場合には、ステップ308に移行し、指示しているアイコンを選択する処理を行う。
ここでは、仮想平面に垂直な軸のマイナスの方向に閾値以上の加速度及び速度でLED12を動かした場合のみ、触覚情報が呈示される。これにより、操作者は、触覚マウス10をどの方向にどの程度動かせば、(加速度や速度が閾値を越えて)予め定められた動きとなるかを認識できるようになる。従って、学習効果が高まり、より早く触覚マウス10を使い慣れることができるようになる。
なお、触覚情報と共に、音声を発生させるようにしてもよい。これにより、操作者の認識度がアップし、学習効果を高めることができる。
上記では、基準座標系のx−y平面(仮想平面)に垂直な軸のマイナスの方向に素早く触覚マウス10を動かしたときに、アイコンを選択する処理を行う例について説明したが、以下では、所定時間カーソルを静止させたとき(すなわち、触覚マウス10を静止させたとき)に、カーソルが指示するアイコンを選択する処理を行い、その状態で仮想平面に垂直な軸のマイナスの方向に触覚マウス10を素早く動かしたときに、アイコンをオープンする処理を行う例について、図16を参照しながら説明する。
ここでは、基準座標系のx−y平面(仮想平面)において所定時間静止する状態が選択の動きとして設定されており、仮想平面に対して垂直な軸の、仮想平面に近づく方向(マイナス方向)に素早く移動する動きがアイコンオープンの動きとして設定されている。
ステップ400では、触覚マウス10(LED12)の静止時間が閾値T0を越えたか否かを判断する。ここでは、基準座標系のx、y座標値の所定時間内の変化量が所定範囲内であれば静止している状態であると判断し、この状態にある時間が閾値T0を越えたか否かを判断する。ステップ400で、静止時間≦T0であると判断した場合には、待機状態を続け、静止時間>T0であると判断した場合には、LED12の動きは選択の動きであると判断し、ステップ402に移行する。
ステップ402では、ディスプレイ42の画面に表示されているカーソルがアイコンを指示しているか否かを判断する。ここでアイコンを指示していないと判断した場合には、ステップ400に戻る。アイコンを指示していると判断した場合には、ステップ404に移行し、指示しているアイコンの選択処理を行う。
ステップ406では、−加速度が閾値A0を越えたか否かを判断する。ここで、−加速度≦A0であると判断した場合には、ステップ408に移行し、ステップ400で肯定判断されてから時間T1が経過したか否かを判断する。時間T1が経過していないと判断した場合には、ステップ406に戻る。ステップ408で、時間T1が経過したと判断した場合には、予め定められた時間内にアイコンオープンの動きが開始されなかったと判断し、アイコンの選択を解除してステップ400に戻る。
また、ステップ406で、−加速度>A0であると判断した場合には、ステップ410で、−速度が閾値V0を越えたか否かを判断する。ここで、−速度≦V0であると判断した場合には、LED12の動きはアイコンオープンの動きではないと判断してステップ400に戻る。−速度>V0であると判断した場合には、LED12の動きはアイコンオープンの動きであると判断してステップ412に移行する。
ステップ412では、触覚情報を呈示する。ここで呈示される触覚情報は図15のステップ308と同様に、図6のb方向への推力である。
ステップ414では、選択されているアイコンをオープンする処理を行う。
このような処理フローによっても、上記図15で示した例と同様の効果を奏する。
なお、本実施の形態では、予め定められたLED12の動きが仮想平面(x−y平面)に対して垂直な方向に移動する動きである例について説明したが、これに限定されず、例えば、LED12の動きがx−z平面に対して垂直な方向に移動する動きであってもよい。具体的には、例えばy軸のプラス方向(仮想平面に対して下方向)への動きを、従来の2次元マウスで行われるクリックの動きとして設定することもできる。この動きは、従来の2次元マウスのクリックの動きに似た動きであり好適である。
[第3の実施の形態]
本実施の形態では、描画を行うためのグラフィックプログラム実行時における触覚呈示処理について、図17を参照しながら説明する。ここでは、所定時間以上の静止状態がドラッグ開始の動きとして設定され、ゆっくりと触覚マウス10(LED12)がx−y平面を移動する動きがドラッグの動きとして設定され、x−y平面に垂直な軸のプラス方向に素早く移動する動き(ディスプレイの画面から触覚マウス10を素早く手前に引くような動き)がドロップの動きとして設定されている。グラフィックプログラム実行中は、ドラッグの動きにより描画され、ドロップの動きにより描画を一旦停止することができる。本実施の形態における指示入力システムも、第1の実施の形態と同様であるため、説明を省略する。なお、本実施の形態のパソコン30では、一般的に広く用いられている、複数のウィンドウを表示可能なマルチウィンドウシステムを採用する。また、本実施の形態でも基準座標系を用い、加速度及び速度を基準座標系のLED12の位置のz座標値に基づいて検出する。
ステップ500では、LED12の静止時間が閾値T0を越えたか否かを判断する。ここでは、基準座標系のx、y座標値の変化量が所定範囲内であれば静止している状態であると判断し、この状態にある時間が閾値T0を越えたか否かを判断する。ステップ500で、静止時間≦T0であると判断した場合には、待機状態を続け、静止時間>T0であると判断した場合には、LED12の動きはドラッグ(ドロー)開始の動きであると判断し、ステップ502に移行する。
ステップ502では、ディスプレイ42の画面に表示されているカーソルが、グラフィックプログラムによりオープンされたピクチャウィンドウ(以下、ピクチャ)内を指示しているか否かを判断する。ここで、ピクチャ内を指示していないと判断した場合には、ステップ500に戻る。ピクチャ内を指示していると判断した場合には、ステップ504に移行し、指示しているピクチャのドロー(描画)処理を行うと共に、触覚情報を呈示する。静止時間がT0を越えた時点での(x、y)座標値が描き始めの点となる。
具体的には、カーソルのx、y座標値がグラフィックプログラムに入力される。操作者が触覚マウス10をゆっくりと動かしてカーソルを動かすと、該プログラムのグラフィック処理によりカーソルの軌跡にそって線が描かれる。その際、グラフィックプログラムが提供する機能において予め操作者により選択されたブラシの種類によって、呈示する触覚情報が異なるように触覚情報呈示部14を制御する。例えば、普通の線を描くブラシが選択されている場合には、指載置部58が、ゆっくりと前後に振動するように制御し、ぼかして描くブラシが選択されている場合には、前後左右に不規則に振動するように制御する。
また、操作者により選択された色に応じて呈示する触覚情報が異なるように触覚情報呈示部14を制御する。例えば、色の明るさに応じて指載置部58の振動の大きさを異ならせるように制御する。
また、ピクチャ内をカーソルが動いている間に呈示される触覚情報と、ピクチャ外をカーソルが動いているときに呈示される触覚情報とを異ならせるように制御することもできる。
ステップ506では、+加速度が閾値A0を越えたか否かを判断する。なお、ここでは、LED12の移動方向を明瞭にするために便宜上加速度に+の符号を付す。ここで、+加速度≦A0であると判断した場合には、ステップ504に戻り、ドロー処理及び触覚情報呈示処理を続行する。また、+加速度>A0であると判断した場合には、ドロップの動きが開始されたと判断してステップ508に移行し、+速度が閾値V0を越えたか否かを判断する。ここで、+速度≦V0であると判断した場合には、LED12の動きはドロップの動きではないと判断してステップ504に戻る。+速度>V0であると判断した場合には、LED12の動きはドロップの動きであると判断してステップ510に移行する。
ステップ510では、ドロップ処理を行うと共に触覚情報を呈示する。ドロップの処理は、ドロー処理を停止する処理である。また、ドロップ処理と同時に、図6のa方向への推力が発生するように触覚情報呈示部14を制御する。その後、ステップ500に戻る。
このように、LED12の動きや位置だけでなく、選択されたブラシや色に応じて、呈示する触覚情報を異ならせることにより、ブラシや色の情報を操作者に与えることができ、操作者が目の不自由な場合でも、表現豊かな絵を描くことが可能になる。
なお、ドロップの動きは、基準座標系のx−y平面に垂直な軸のマイナス方向に素早く移動する動きであってもよい。
[第4の実施の形態]
本実施の形態では、LED12の動きが回転運動である場合に、回転運動における回転角に応じて指示入力すると共に、回転角に応じて触覚情報の呈示状態が変化するように制御する例について説明する。
図18は、本実施の形態における触覚マウス10の正面図である。本図を用いて、LED12の左右回転運動を説明する。LED12が触覚マウス10本体に対して図示される位置に設けられている。操作者は、前述の図5に示されるように触覚マウス10本体の左右側面を親指と中指とで保持することにより、前方のディスプレイ42の画面、すなわち基準座標系のx−y平面(仮想平面)に対してLED12が円を描くように触覚マウス10を回転させることができる。
このLED12の回転運動は、3D計測装置20から入力されたLED12の位置情報から容易に検出される。回転運動に伴う回転角については、幾何学的な手法を用いて求める。以下、その具体的な手法を図を参照しながら説明する。
回転運動の基点をOで示す。O点からP点までLED12を回転させたときの回転角を求める場合には、まず、LED12の軌跡のP点における接線(1)を算出する。算出した接線(1)と軌跡との接点(すなわちP点)を通り、接線に垂直なベクトル(2)を算出する。算出したベクトル(2)の、O点を通り基準座標系のx軸に垂直な軸(3)に対する傾きを算出する。算出した傾きから回転角を求める。ここでは、ベクトル(2)と軸(3)との交点(4)が、回転の中心となる。また、交点(4)を通り基準座標系のx−y平面に垂直な軸が回転軸となる。
なお、回転角が小さい場合は、図19に示されるような手法を用いて回転角を求める。基点となるLED12の位置をQ点とし、次のLED12の位置をR点とする。Q点とR点とを結ぶベクトルMを算出する。x軸に垂直な軸NとベクトルMとがなす角度Cを算出する。ここで、回転の中心をS点とすると、線分SQと線分SMとがなす角度D(回転角)は、角度Cと幾何学的理由により等しくなる。従って、回転角は、角度Cを算出することにより求まる。
触覚マウス10本体の左右側面を保持しながら、保持されている左右側面の2点を結ぶ線分を回転軸として、図20に示されるように、LED12を上下に回転させることもできる。上下の回転運動の回転角(図中のA及びB)は、左右の回転運動の場合と同様にして求めることができる。
CPU34は、検出された回転角に応じて触覚情報の呈示状態が変化するように制御する。以下、具体的な例を挙げて説明する。
操作者は、図5に示されるように親指と中指とで触覚マウス10本体の重心位置(触覚マウス10の重さが均等であれば略真中の位置)を掴み、触覚マウス10の正面がディスプレイ42の画面(仮想平面)に向かうような状態で操作する。ここでは、ディスプレイ42の画面或いは仮想平面に対して平行であり、かつ親指と中指とを結ぶ線分に略一致する軸が回転軸とされる。回転軸は、LED12の位置と触覚マウス10本体の大きさから適宜求められる。
操作者が、回転軸に対してLED12を回転させる。回転角が算出され、それに応じて触覚情報が呈示される。下方に回転させた場合には、推力が前方(図6ではa方向)に発生するように触覚情報呈示部14を制御する。これにより、指載置部58が前方に動いて、指載置部58の斜面により指先に盛り上がり感が与えられる。これが、操作者には指先を下方に動かした時の反作用の力として感じられる。逆に、上方に回転させた場合には、図6のb方向に推力が発生するように制御される。また、回転角の大きさに応じて、推力の大きさを変化させることもできる。例えば、回転角が大きいほど、推力が大きくなるように制御する。これにより、操作者は、どの程度触覚マウス10を動かしたかを認識することができる。なお、左右の回転も上下の回転と同様に触覚情報を呈示することができる。
次に、回転運動を利用したゲームを例に挙げて説明する。
図21は、ディスプレイ42の画面に、迷路盤70を前後左右に動かして、中にあるボール72をゴール74まで移動させるゲームが表示された様子を示している。このゲームは、VRML(Virtual Reality Modeling Language)等のソフトウェアを用いて3次元的に表現される。操作者は、図22に示されるように、触覚マウス10を前方或いは後方に傾かせたり、左右に回転させたりすることにより、画面上で迷路盤70を傾け、ボール72を動かすことができる。
本ゲームは、触覚マウス10をある程度傾けるだけで、充分に迷路盤70を傾かせることができるようにプログラミングされている。また、ここでは、触覚マウス10自体に前述の基点や回転軸があると想定して回転角が算出される。
また、ボール72が迷路盤70の壁にぶつかると触覚情報が呈示されるように触覚情報呈示部14が制御される。具体的には、ボール72の進行方向に対して、左の壁にぶつかった場合には、指載置部58が左から右に進む動き(図6ではd方向への推力)を呈示するように制御される。また、右の壁にぶつかった場合には、指載置部58が右から左に進む動き(図6ではc方向への推力)を呈示するように制御される。また、臨場感を高めるため、ボール72の転がる音や壁にぶつかる音を付加する。
更に、触覚マウス10(LED12)の回転角に応じて傾いた迷路盤70の傾きから、ボール72にかかる重力の、迷路盤70の各面に平行な成分が計算され、ボール72の転がる向き及び速さが計算されてその表示位置が更新される。ボール72が迷路盤70の壁にぶつからずに転がり落ちる場合には、例えば、指載置部58が前後に振動するように、すなわち、推力の方向が、図6のa方向とb方向とに交互に、かつ小刻みに切換わるように触覚情報呈示部14を制御する。また、回転角に応じて変化する迷路盤70の傾きに応じてボール72の速さを増加或いは減少させる。この速さに応じて指載置部58の振動数を変化させる。例えば、傾きが大きいほどボール72の速さを増加させ、ボール72の速さが速いほど、振動数を増加させるようにする。
なお、上記では、触覚マウス10自体に回転軸があると想定して回転角が計算されているが、回転軸の位置を固定とし、予め設定しておくことも好適である。
以上説明したように、LED12の回転運動における回転角を認識することにより、3次元空間上の物体(仮想物体)を前後左右に自由に動かすことができ、回転角に応じて触覚情報を変化させるため、従来の2次元平面上で指示入力する2次元マウスでは得ることができない臨場感を得ることができる。
[第5の実施の形態]
本実施の形態では、第1〜第4の実施の形態で説明した指示入力システムを様々なゲームに適用し、それらゲームにおける触覚情報呈示処理について具体的に説明する。なお、以下に挙げるゲーム全てにおいて、LED12の位置が基準座標系を用いて計測される。
図23は、2次元迷路ゲームを表した図である。カーソルの表示位置を触覚マウス10のドラッグの動きにより動かして、カーソルを迷路内で移動させる。カーソルの移動の軌跡は画面上に現れるようにする。迷路内の通路を通るときやカーソルが迷路の壁にぶつかったときには、触覚情報呈示部14を制御して反作用の力を指に呈示する。その際、効果音を出力するようにすればなお好適である。
図24は、図23に示した2次元迷路ゲームをより立体的に表した図である。この場合には、操作がより複雑となるが、操作者にとって、ビジュアル的によりリアルな臨場感が味わえる。触覚情報の呈示制御は、図23と同様に行われる。
図25は、3次元迷路ゲームを表した図である。この迷路は、全体が上中下の3段で構成され、各段が重箱のように重なって立方体の形状をなしている。図25(A)が上段、図25(B)が中段、図25(C)が下段である。図25(B)に示される丸印80は下段から中段への抜け穴であり、図25(A)に示される四角印76及び78は中段から上段への抜け穴を示している。迷路内の通路を通るときやカーソルが迷路の壁にぶつかったときには、上記2次元迷路ゲームと同様に、触覚情報が呈示される。また、抜け穴を抜けるときにも触覚情報が呈示される。上段から中段へ抜ける場合と、中段から上段に抜ける場合とで、異なる触覚情報を呈示するようにしてもよい。
また、このような3次元迷路の場合には、2次元迷路の場合と異なり、平面(x−y平面)上のドラッグの動きのみならず、触覚マウス10を画面(仮想平面)に対して前後するような動き(z軸方向の動き)が必要となり、ゲームとしての複雑さが増す。また、2次元迷路ゲームと同様に、画面上にカーソルの移動の軌跡を表示させ、迷路内部の状態が常に見えるように表示する。立方体正面からの軌跡、側面からの軌跡、及びカーソルの位置をリアルタイムに表示するようにしてもよい。
図26は、3次元五目並べを表した図である。黒丸で示された位置に、白丸86または十字丸84をドラッグしてドロップする。ドロップ位置を変更する場合には、エッジ(線)88に沿ってドラッグする。ここでは、エッジ88に沿うように反作用の力を呈示することにより、操作者に対してドラッグ可能な部分を認識させる。エッジ88を奥から手前に移動するときには、操作者は、その動きと同じように、触覚マウス10を画面(仮想平面)に対して手前に引くように動かす。逆方向も同様に行う。
また、白丸86または十字丸84を黒丸82の位置にドロップする際に、ドロップ位置が黒丸82の位置に一致していなくても、ドロップ位置に最も近い黒丸82の位置に、白丸86または十字丸84が吸引されるような動きで収まるように表現することもできる。また、白丸86や十字丸84をドラッグするときには、ドラッグ方向と逆方向に反作用を呈示すればなお好適である。
以上説明したように、3次元仮想空間内の物体(カーソルなど)を3次元空間内で操作することができ、また、ゲーム実行時に所定の位置や動きに応じて触覚情報や音声を呈示することにより操作者に対してよりリアルな臨場感を与えることができる。
[第6の実施の形態]
本実施の形態では、ディスプレイ42の画面(仮想平面)前面の3次元空間における所定の空間を複数の空間に分割し、該分割された複数の空間に対するLED12の位置および動きの少なくとも一方に対応させて、触覚情報を呈示する例について説明する。
図27は、ディスプレイ42の画面前面に3つの異なった3次元空間90、91、92が設定された状態を示した図である。該設定は、予めパソコン30のROM36に記憶されている。或いは、所定のプログラム起動時にRAM38にロードされるようにしてもよい。ディスプレイ42の上部には3D計測装置20としての機能を有する3次元位置検出ユニット20aが設置され、触覚マウス10に設けられたLED12の位置を検出し、パソコン30に出力する。
図28は、本実施の形態の触覚情報呈示処理ルーチンを示したフローチャートである。
ステップ600では、加速度が閾値A0を越えたか否かを判断する。ここで、加速度≦A0であると判断した場合には、次の位置情報が入力されるまで待機状態を続ける。加速度>A0であると判断した場合には、ステップ602でタイマTをリセットしてスタートさせる。ステップ604で、速度が閾値V0を越えたか否かを判断する。ここで、速度≦V0であると判断した場合には、ステップ600に戻る。速度>V0であると判断した場合には、ステップ606に移行する。
ステップ606では、LED12の移動方向を検出する。
ステップ608では、タイマTが所定時間以内であるか否かを判断する。タイマTが所定時間を越えていれば、ステップ600に戻る。タイマTが所定時間以内であれば、ステップ610に移行し、LED12が、設定されている空間を構成する仮想的な面(境界領域)を通過したか否かを判断する。ステップ610で否定判断した場合には、ステップ608に戻る。ステップ610で肯定判断した場合には、ステップ612に移行し、検出された移動方向に応じて、触覚情報を呈示する。すなわち、ここでは閾値を越える加速度が検出されてから所定時間以内にLED12が境界領域を通過した場合には触覚情報が呈示されるように制御し、境界領域を通過しなければ触覚情報が呈示されないように制御する。
触覚情報の呈示は、具体的には、LED12が複数の境界領域のいずれの境界領域をどの方向から通過したかに応じて、異なる触覚情報が呈示されるように制御する。例えば、設定されている空間の上面の境界領域からLED12を入れる場合には、第1の実施の形態の図9で示したように、LED12を下向きに動かすときに呈示する推力と同様の推力を発生させる。すなわち、図6のa方向に推力が発生するように、触覚情報呈示部14を制御する。また、設定されている空間の前面の境界領域からLED12を入れる場合には、第1の実施の形態の図8で示したように、LED12を仮想平面に向かう方向(前方)に動かすときに呈示する推力と同様の推力を発生させる。すなわち、図6のb方向に推力が発生するように、触覚情報呈示部14を制御する。
また、触覚マウス10を図示される状態で保持してLED12を画面に向けながら、設定されている空間の側面の境界領域を通過した場合も、同様に推力を発生させる。すなわち、LED12を左側から右側に動かして、境界領域を通過させた場合には、推力が左方向(図6のc方向)に発生するように制御し、右側から左側に動かして、境界領域を通過させた場合には、推力が右方向(図6のd方向)に発生するように制御する。
これにより、指先に指載置部58の斜面によりせり上がる感覚が与えられ、操作者は反作用を受けたように感じる。
また各境界領域の表面の属性を定めておき、この属性に応じて指載置部58を振動させるようにすることも可能である。
また、3つの空間90、91、92には、それぞれ異なる触覚情報を設定しておき、LED12が境界領域を通過して3つの空間90、91、92のいずれかの空間内に入った場合には、該当の空間に設定された触覚情報が呈示されるように制御することもできる。例えば、LED12がいずれかの空間内に位置する間は、指載置部58が振動し、各空間毎に指載置部58の振動の周期や大きさを異ならせるようにする。
このように所定の空間を複数の空間に分割して触覚情報を呈示する装置は、様々なゲームやシステムに適用できる。
例えば、空中モグラたたきゲームに適用することができる。パソコン30のスピーカ44から、それぞれの空間に対応した音(この音は予め設定しておく)を一定の時間ずつランダムに発生させる。操作者が、発生している音に対応する空間に触覚マウス10を入れると、その音が消える仕組みにする。LED12が設けられた触覚マウス10が境界領域を通過して特定の空間内に入るときに、前述したような触覚情報を呈示して触覚フィードバックを与える。触覚マウス10を、音が発生している間に、発生している音に対応する空間に入れることができれば、音が止み、それと同時に得点が得られるようにしてもよい。
また、神経衰弱ゲームに適用することもできる。このゲームでは、複数の空間毎に対応する触覚情報を設定しておき、LED12が設けられた触覚マウス10がいずれかの空間内に位置するときに、対応する触覚情報を呈示する。従って、通常の状態では何の音も発生させない。触覚マウス10がそれぞれの空間に入ると、それぞれの空間に対応する音及び触覚情報が発生するように制御する。このゲームでは、トランプの神経衰弱と同じようなルールを用い、触覚マウス10をいずれかの空間に入れるように動かすことにより、最初に選んだ音と同じ音、或いは最初に選んだ触覚情報(指載置部58の動きの特徴パターン)を、予め定められた回数以内に発生させることができれば、得点が得られるようにする。
また、分割した複数の空間毎に予め定められた処理及び触覚情報を対応付けておき、LED12が設けられた触覚マウス10が該空間のいずれかに入ったときに、予め定められた触覚情報を呈示すると共に該予め定められた処理を実行することもできる。例えば、ボタンが左右に2つ設けられた従来の2次元マウスの機能を各空間に対応付ける。具体的には、図27の空間90には左ボタンクリック処理、空間91にはダブルクリック処理、空間92には、右ボタンクリック処理、のように対応付けておく。触覚マウス10がいずれかの空間に入った場合は、対応付けられた触覚情報を呈示すると共に対応付けられた処理の実行が指示される。それぞれの空間毎に、異なる音が発生されるようにしてもよい。
なお、図27では、分割された複数の空間として3つの空間が例示されているが、空間の数は適宜増やすことが可能である。また、図27では、ディスプレイ42の画面に対して横並びになるように複数の空間が設定されているが、ディスプレイ42の画面から操作者に向かう方向に空間を分割して設定してもよい。
以上説明したように、空間の任意の境界領域を通過する場合のフィードバックが物理的反作用で得られるため、3次元空間の(仮想)物体を物理的触覚により認識することが可能となる。また、任意の空間を複数の空間に分割して、分割した空間毎に実行される処理を対応づけておき、更に分割した各空間毎に異なった触覚情報が呈示されるように制御することにより、分割された各空間に対する認識が高まり、所望の処理に対応付けられた空間に確実性高くLED12を位置させることができるため、所望の処理の実行を確実性高く指示することができる。
以上本発明の様々な実施の形態を説明したが、本発明は、上述した実施の形態に限定されるものではなく、特許請求の範囲に記載された範囲内で様々な設計上の変更を行うことができる。
例えば、上述した実施の形態では、ディスプレイ42の画面に略一致する仮想平面を仮想平面をx−y平面とし、仮想平面に垂直な軸をz軸とする基準座標系を3D計測装置20で用いる例について説明したが、このような座標系に限らず、任意に設定した座標系を用いてもよい。特に、第2の実施の形態で、LED12の動きを、基準座標系のz軸方向の動きとして判断する例について説明したが、任意の座標系の任意の座標軸方向の動きとして判断するようにしてもよい。
また、本発明は、パソコンの操作やゲームだけでなく、例えば、金融機関のATM等のタッチパネルディスプレイの操作にも適用することができる。また、スイッチのON/OFF操作等にも適用することができる。
本発明の第1の実施の形態に係る指示入力装置としての機能を備えたパソコンを含む指示入力システムの構成を示す図である。 パソコンの具体的な構成を示した図である。 触覚情報呈示部の概略構成図であり、 触覚情報呈示部を図3の矢印A方向から見た図である。 操作者が触覚マウスを保持した状態を示した図である。 触覚マウス(LED)の移動方向と、該移動方向に応じて発生する推力との関係を示した図である。 LEDの動きに応じて触覚情報を呈示する触覚情報呈示処理ルーチンを示したフローチャートである。 LEDの移動方向、指先が受ける力の方向、及び指載置部の動く方向の関係の一例を示した図である。 LEDの移動方向、指先が受ける力の方向、及び指載置部の動く方向の関係の一例を示した図である。 LEDの位置に応じて触覚情報を呈示する触覚情報呈示処理ルーチンを示したフローチャートである。 指載置部の変形例を示した図である。 指載置部の変形例を示した図である。 駆動部が触覚マウス本体及び指載置部に対して平行に設けられている例を示した図である。 駆動部が触覚マウス本体及び指載置部に対して垂直に設けられている例を示した図である。 第2の実施の形態における触覚情報呈示処理ルーチンを示したフローチャートである。 第2の実施の形態における触覚情報呈示処理ルーチンを示したフローチャートの変形例である。 第3の実施の形態における触覚情報呈示処理ルーチンを示したフローチャートである。 第4の実施の形態における触覚マウスの正面図である。 回転角が小さい場合の回転角の求め方を説明した説明図である。 LEDを上下に回転させた状態を示す図である。 迷路盤を前後左右に動かして、中にあるボールをゴールまで移動させるゲームが表示された様子を示した図である。 図21に示された迷路盤を触覚マウスで操作している状態を表した図である。 2次元迷路ゲームを表した図である。 図23に示した2次元迷路ゲームをより立体的に表した図である。 3次元迷路ゲームを表した図である。 3次元五目並べを表した図である。 パソコンのディスプレイの画面前面に3つの異なった3次元空間が設定されている状態を示した図である。 第6の実施の形態における触覚情報呈示処理ルーチンを示したフローチャートである。
符号の説明
10 触覚マウス
12 LED
14 触覚情報呈示部
16 駆動部
20 3D計測装置
30 パソコン
32 パソコン本体
34 CPU
36 ROM
38 RAM
40 I/O
42 ディスプレイ
44 スピーカ
46 HDD
50a〜50d 第1磁石〜第4磁石
52a〜52d 第1コイル〜第4コイル
58 指載置部
60 駆動回路

Claims (11)

  1. 操作者によって操作されるポインティングデバイスに設けられた発光手段と、
    前記操作者に対して触覚情報を呈示する触覚情報呈示手段と、
    前記発光手段から発光された光を検出することにより前記発光手段の位置及び動きの少なくとも一方を検出する検出手段と、
    前記検出手段で検出された前記発光手段の位置及び動きの少なくとも一方に対応させた触覚情報が呈示されるように前記触覚情報呈示手段を制御する制御手段と、
    を含む触覚呈示装置。
  2. 前記触覚情報呈示手段に、前記操作者の指を載置可能な傾斜面を設けた請求項1記載の触覚呈示装置。
  3. 前記触覚情報呈示手段は、前記操作者の指を載置可能な凹部を備えており、該凹部は縁部から中心部に向かって連続的に傾斜した斜面を備えている請求項1記載の触覚呈示装置。
  4. 前記検出手段は、予め定められた軸に対する回転運動を前記動きとして検出し、
    前記制御手段は、前記回転運動の回転角に応じて触覚情報の呈示状態が変化するように前記触覚情報呈示手段を制御する請求項1乃至請求項3のいずれか1項記載の触覚呈示装置。
  5. 前記検出手段は、前記検出された光に基づいて前記発光手段の加速度及び速度の少なくとも一方を算出し、算出された前記発光手段の加速度及び速度の少なくとも一方の大きさに基づいて前記動きを検出する請求項1乃至請求項4のいずれか1項記載の触覚呈示装置。
  6. 前記操作者に対して音声を発生する音声発生手段を更に含み、
    前記制御手段は、前記発光手段の位置及び前記動きの少なくとも一方に対応させた触覚情報が呈示されるように前記触覚情報呈示手段を制御すると共に、前記発光手段の位置及び動きの少なくとも一方に対応させた音声が発生されるように前記音声発生手段を制御する請求項1乃至請求項5のいずれか1項記載の触覚呈示装置。
  7. 前記検出手段は、予め触覚情報が対応付けられた複数の空間に分割された所定の空間の該複数の空間に対する前記発光手段の位置及び動きの少なくとも一方を検出し、
    前記制御手段は、該複数の空間に対する前記発光手段の位置及び動きの少なくとも一方に対応させた触覚情報が呈示されるように前記触覚情報呈示手段を制御する請求項1乃至請求項6のいずれか1項記載の触覚呈示装置。
  8. 前記検出手段は、予め触覚情報及び処理が対応付けられた複数の空間に分割された所定の空間の該複数の空間に対する前記発光手段の位置及び動きの少なくとも一方を検出し、
    前記制御手段は、該複数の空間に対する前記発光手段の位置及び動きの少なくとも一方に対応させた触覚情報が呈示されるように前記触覚情報呈示手段を制御すると共に前記複数の空間に対して予め対応付けられた前記処理が実行されるように制御する請求項1乃至請求項6のいずれか1項記載の触覚呈示装置。
  9. 複数のブラシ及び複数の色の各情報を用いて描画するプログラムを実行する場合に、
    前記制御手段は、前記操作者により選択されたブラシ及び色の少なくとも一方の情報に応じて、異なる触覚情報が呈示されるように前記触覚情報呈示手段を制御する請求項1乃至請求項8のいずれか1項記載の触覚呈示装置。
  10. 操作者によって操作されるポインティングデバイスに設けられた発光手段から発光された光を検出することにより該発光手段の位置及び動きの少なくとも一方を検出する検出工程と、
    前記検出工程で検出された前記発光手段の位置及び動きの少なくとも一方に対応させた触覚情報が呈示されるように、前記操作者に対して触覚情報を呈示するための触覚情報呈示手段を制御する制御工程と、
    を含む触覚呈示方法。
  11. コンピュータに、
    操作者によって操作されるポインティングデバイスに設けられた発光手段から発光された光を検出することにより該発光手段の位置及び動きの少なくとも一方を検出する検出工程と、
    前記検出工程で検出された前記発光手段の位置及び動きの少なくとも一方に対応させた触覚情報が呈示されるように、前記操作者に対して触覚情報を呈示するための触覚情報呈示手段を制御する制御工程と、
    を実行させるためのプログラム。
JP2003307087A 2003-08-29 2003-08-29 触覚呈示装置、触覚呈示方法、及びプログラム Pending JP2005078310A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003307087A JP2005078310A (ja) 2003-08-29 2003-08-29 触覚呈示装置、触覚呈示方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003307087A JP2005078310A (ja) 2003-08-29 2003-08-29 触覚呈示装置、触覚呈示方法、及びプログラム

Publications (1)

Publication Number Publication Date
JP2005078310A true JP2005078310A (ja) 2005-03-24

Family

ID=34409989

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003307087A Pending JP2005078310A (ja) 2003-08-29 2003-08-29 触覚呈示装置、触覚呈示方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP2005078310A (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007041948A (ja) * 2005-08-04 2007-02-15 Fujitsu Component Ltd 触覚情報提示用アクチュエータ
JP2008015564A (ja) * 2006-06-30 2008-01-24 Tokyo Institute Of Technology 変位報知装置及び変位報知装置と連携したguiプログラム
JP2009003914A (ja) * 2007-06-20 2009-01-08 Indigolab Co Ltd コンピュータ用マウス
JP2011528475A (ja) * 2008-07-15 2011-11-17 イマージョン コーポレイション 受動及び能動モード間で触覚フィードバック機能を転換するシステム及び方法
JP2012507068A (ja) * 2008-10-27 2012-03-22 株式会社ソニー・コンピュータエンタテインメント 視覚情報を通信するためのコントロールデバイス
WO2014041923A1 (ja) * 2012-09-13 2014-03-20 株式会社ソニー・コンピュータエンタテインメント 力覚提示装置
JP2019003708A (ja) * 2018-10-15 2019-01-10 日本電信電話株式会社 電子装置および皮膚覚提示システム

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007041948A (ja) * 2005-08-04 2007-02-15 Fujitsu Component Ltd 触覚情報提示用アクチュエータ
JP4546894B2 (ja) * 2005-08-04 2010-09-22 富士通コンポーネント株式会社 触覚情報提示用アクチュエータ
JP2008015564A (ja) * 2006-06-30 2008-01-24 Tokyo Institute Of Technology 変位報知装置及び変位報知装置と連携したguiプログラム
JP2009003914A (ja) * 2007-06-20 2009-01-08 Indigolab Co Ltd コンピュータ用マウス
JP2011528475A (ja) * 2008-07-15 2011-11-17 イマージョン コーポレイション 受動及び能動モード間で触覚フィードバック機能を転換するシステム及び方法
JP2012507068A (ja) * 2008-10-27 2012-03-22 株式会社ソニー・コンピュータエンタテインメント 視覚情報を通信するためのコントロールデバイス
WO2014041923A1 (ja) * 2012-09-13 2014-03-20 株式会社ソニー・コンピュータエンタテインメント 力覚提示装置
CN104603721A (zh) * 2012-09-13 2015-05-06 索尼电脑娱乐公司 受力感觉装置
JP5898774B2 (ja) * 2012-09-13 2016-04-06 株式会社ソニー・コンピュータエンタテインメント 力覚提示装置
JPWO2014041923A1 (ja) * 2012-09-13 2016-08-18 株式会社ソニー・インタラクティブエンタテインメント 力覚提示装置
US9607490B2 (en) 2012-09-13 2017-03-28 Sony Corporation Haptic device
JP2019003708A (ja) * 2018-10-15 2019-01-10 日本電信電話株式会社 電子装置および皮膚覚提示システム

Similar Documents

Publication Publication Date Title
JP7072717B2 (ja) 奥行きベースの注釈のためのデバイス、方法、およびグラフィカルユーザインターフェース
TWI470534B (zh) 藉由使用運動的性質在一顯示器上之三維使用者介面效應
CN107533373B (zh) 虚拟现实中经由手与对象的场境敏感碰撞的输入
US20210011556A1 (en) Virtual user interface using a peripheral device in artificial reality environments
US20170336882A1 (en) Virtual/augmented reality input device
JP5960307B2 (ja) グラフィカルユーザインターフェース装置においてテクスチャを用いるためのシステム及び方法
US20180314333A1 (en) Systems and Methods for Force-Based Object Manipulation and Haptic Sensations
EP2889717B1 (en) Systems and methods for a haptically-enabled projected user interface
US20220261066A1 (en) Systems, Methods, and Graphical User Interfaces for Automatic Measurement in Augmented Reality Environments
CN111819522A (zh) 用于混合现实显示器中的虚拟内容的遮挡光标
Stuerzlinger et al. The value of constraints for 3D user interfaces
JP2018526693A (ja) 仮想現実における注視対話のためのホバー挙動
KR20180094799A (ko) 자동 국부적 햅틱 생성 시스템
EP2558924B1 (en) Apparatus, method and computer program for user input using a camera
JP6534011B2 (ja) 情報処理装置、情報処理プログラム、情報処理システム、および、情報処理方法
KR20180066865A (ko) 햅틱들을 가지는 컴플라이언스 착시들을 위한 시스템들 및 방법
JP6519075B2 (ja) 情報処理装置、情報処理プログラム、情報処理システム、および、情報処理方法
WO2019010337A1 (en) VOLUMETRIC MULTI-SELECTION INTERFACE FOR SELECTING MULTIPLE ENTITIES IN A 3D SPACE
JP2005078310A (ja) 触覚呈示装置、触覚呈示方法、及びプログラム
JP2016148896A (ja) 情報処理装置、情報処理プログラム、情報処理システム、および、情報処理方法
JP6603024B2 (ja) 情報処理プログラム、情報処理装置、情報処理システム、および、情報処理方法
JP4438351B2 (ja) 指示入力装置、指示入力システム、指示入力方法、及びプログラム
Olwal et al. Unit-A Modular Framework for Interaction Technique Design, Development and Implementation
EP4291970A1 (en) Systems, methods, and graphical user interfaces for automatic measurement in augmented reality environments
KR20230049520A (ko) 가상 현실 공간에 대한 제어를 수행하는 전자 시스템, 전자 장치 및 그 동작 방법