(58)【調査した分野】(Int.Cl.,DB名)
アクチュエータにより第1の位置と第2の位置との間で移動可能な可動部を有し、ユーザに把持されて前記可動部がユーザにより操作される操作デバイスの制御方法であって、
センサが、前記可動部の位置を検出し、
制御手段が、所定のタイミングごとに前記アクチュエータの移動方向を切り替えて、前記可動部に連射の振動を堤示し、
前記制御手段は、前記可動部の位置が所定の開始条件値を上回るときに、連射モードに移行して、連射モードの設定前に、前記可動部の位置が、前記開始条件値を上回っていたときには、前記可動部の位置が、当該開始条件値を一度下回り、その後再度、当該開始条件値を上回るまで、連射モードに移行しないよう制御する、
操作デバイスの制御方法。
【発明を実施するための形態】
【0008】
本発明の実施の形態について図面を参照しながら説明する。なお、以下の説明において各部の大きさやその比、配置等は一例であり、本実施の形態の例は、図示等した大きさや比率、配置に限られるものではない。本発明の実施の形態に係る情報処理システムは、
図1に例示するように、操作デバイス10と、操作デバイス10に対して無線または有線にて接続される家庭用ゲーム機等の主装置20とを含む。この操作デバイス10は、ユーザから受け入れた指示操作の内容を主装置20に出力する。また操作デバイス10は、主装置20から入力される指示を受け入れて、各部の制御を行う。この操作デバイス10の詳しい動作は後に述べる。
【0009】
本実施の形態の例では、操作デバイス10は、ユーザの左手または右手のどちらかに装着されるものとして設定される。この操作デバイス10の一例は、
図1,
図2に例示するようなものである。
図1は操作デバイス10を正面側から見た斜視図であり、
図2は操作デバイス10を背面側から見た斜視図である。
【0010】
操作デバイス10は、ユーザにより把持される把持部21と、操作部22とを含む。把持部21は、実質的に多角形柱状をなし、操作部22が、この把持部21から連続して形成されている。
図1,2の例では、操作部22は、正面側にセンサ部221と、ボタン操作部222とを含み、背面側に、指センサ223と、本発明の可動部に対応するロッキングボタン224とを備える。またこの操作デバイス10は、本体内部に、
図3に例示するように、回路部100を含む。この回路部100は、制御部11と、記憶部12と、インタフェース部13と、通信部14とを含んで構成される。
【0011】
この制御部11は、マイクロコンピュータ等のプログラム制御デバイスであり、記憶部12に格納されたプログラムに従って動作する。本実施の形態では、この制御部11は、可動部としてのロッキングボタン224を介して触力覚を提示するための制御に係る指示として、制御モードを特定する情報と、制御モードごとに定められた制御情報とを、主装置20から受け入れる。そして制御部11は、この受け入れた情報で特定される制御モードにて、受け入れた制御情報を用いて、ロッキングボタン224のユーザによる移動動作に対し、ユーザに提示するべき触力覚を制御する。この制御部11の動作については後述する。記憶部12は、メモリデバイスであり、制御部11によって実行されるプログラムを保持する。またこの記憶部12は制御部11のワークメモリとしても動作する。
【0012】
インタフェース部13は、操作部22の各部に接続され、センサ部221や、ボタン操作部222等から入力されるユーザの指示を表す信号等、各種の信号を受け入れて制御部11に出力する。またこのインタフェース部13は、制御部11から入力される指示を、操作部22の各部に出力する。
【0013】
通信部14は、例えばブルートゥース(登録商標)等の無線通信インタフェース、またはUSBや有線LAN等の有線通信インタフェース等を含む。この通信部14は、主装置20に接続され、主装置20との間で種々の信号を授受する。
【0014】
本実施の形態では、この操作デバイス10の左側面または右側面のいずれか一方側に固定具が固定される。この固定具は例えば可撓性あるベルトを環状としたものである。この例の操作デバイス10を操作するユーザは、固定具にユーザ自身の人差指から小指までを通し、操作デバイス10の本体をユーザの親指の付根に当接させた位置に固定して用いる。
図1,2の例では、操作デバイス10の右側面側がユーザの手の平に押付けられて操作デバイス10が固定された状態が示されている。またこの操作デバイス10の大きさは、固定具に指を通して操作デバイス10を装着したユーザが、自然に操作デバイス10を把持したときに、ユーザの親指末節が操作デバイス10の正面側のボタン操作部222に到達する程度の大きさとする。つまり本実施の形態では、ロッキングボタン224を含む、操作部22の少なくとも一部のボタン等が、把持部21を把持したときに、ユーザの指が到達する範囲に配される。
【0015】
すなわち、操作デバイス10を装着したユーザが、自然に操作デバイス10を把持したときには、当該ユーザの人差指は操作デバイス10のロッキングボタン224に触れる位置となり、ユーザは把持部21を手の平と、中指、薬指、小指とで握りこむようになる。もっとも、この状態からユーザが手を開いても、固定具により操作デバイス10がユーザの手に固定されるので、操作デバイス10が落下することはない。
【0016】
センサ部221は、例えば、ユーザが自然にデバイス本体210を把持したとき、ユーザの親指の末節側が到達する位置よりやや下方、ユーザの親指の基節側が近接する位置に配される。この指センサ部221は、操作デバイス10の正面側であって操作デバイス10の表面の法線方向を中心とし、操作デバイス10正面の左側面側から右側面側までの比較的広角の角度範囲を検出可能範囲として、この検出可能範囲においてユーザの親指を検出する。そして当該親指を検出した位置(上記角度範囲内の角度)と、指センサ部221からユーザの親指までの距離とを検出し、これらの情報を含む、検出結果情報を制御部11に出力する。この指センサ部221は例えば、カメラや、光学センサ、焦電センサ、静電容量センサ等、どのようなものでも構わない。
【0017】
ボタン操作部222は、少なくとも一つのボタンを含み、当該ボタンに対しユーザの押下操作があったときに、押下操作がされたボタンを特定する情報を制御部11に出力する。指センサ223は、操作デバイス10の把持部21にユーザの中指ないし小指が近接しているか(あるいは触れているか)否かを検出する。そして当該検出の結果を表す情報を、制御部11に出力する。
【0018】
ロッキングボタン224は、本発明の可動部に相当し、操作デバイス10の本体に対して、操作デバイス10の背面側に突出した第1の位置と、操作デバイス10の本体側へ押し込まれた第2の位置との間で回転移動可能なボタンである。このロッキングボタン224は、ユーザの人差指等で第2の位置に向って押し込み操作され、またユーザが指を放せば、第1の位置に復帰するよう、弾性体等によって付勢されている。
【0019】
本実施の形態の操作デバイス10は、このロッキングボタン224により、ユーザの指に触力覚を提示することで、ユーザが仮想的に手にした仮想対象物の質感を表現する。具体的にはロッキングボタン224の可動範囲を変化させ、またユーザの操作に対して反力(ユーザがロッキングボタン224を押込む力に抵抗する力)を提示して、ユーザに対して触力覚を提示する。なお、本実施の形態はこの例に限るものではなく、可動部を例えば、ロッキングボタン224ではなく、ユーザの手のひら近傍に配した部材として、ユーザの手のひらに触力覚を堤示するなど、ユーザの手の一部に触力覚を堤示できれば、可動部の配置及び態様は、ここで例示したものに限られるものではない。
【0020】
具体的に、この例の本実施の形態では、このロッキングボタン224は、
図4に例示するように、可動部材であるボタンカバー224bと、ボタンカバー支持部30と、ロッキングボタン224の位置を検出する位置センサ31と、ボタンカバー224bの可動範囲を、指示された範囲に規制する規制部32とを備える。
【0021】
ここで位置センサ31は、アーム323の回転中心であるヒンジに取付けられたポテンショメータ等であり、アーム323の回転角度の情報を出力する。またはこの位置センサ31は、アーム323ではなく、ロッキングボタン224の回転中心であるヒンジに取付けられたポテンショメータ等であってもよい。この場合、位置センサ31は、ロッキングボタン224の回転角度の情報を出力することとなる。また、規制部32は、例えばアクチュエータとしてのモータ321と、その制御回路322と、当該アクチュエータにより駆動される規制部材であるアーム323とを含んで構成される。
【0022】
ボタンカバー224bは、ユーザの指によって押圧される面を有している。ボタンカバー支持部30は、操作デバイス10の本体側に固定されたヒンジを有し、このヒンジ周りの所定の角度範囲(上記第1の位置と第2の位置との間)で回転可能な状態にボタンカバー224bを支持する。またこのボタンカバー支持部30は、ボタンカバー224bを第1の位置に向って、バネ等の弾性体により付勢している。これよりユーザが押圧しない状態では、ボタンカバー224bは第1の位置に移動する。
【0023】
このボタンカバー224bは、操作デバイス10の背面側に突出した第1の位置と、操作デバイス10の本体側へ押し込まれた第2の位置との間であって、後に述べるアーム323に当接する位置(当接位置と呼ぶ)まで押込み可能となる。そこでユーザが操作デバイス10本体を握る動作を行うとともに、ボタンカバー224bを人差指で押圧すると、当接位置まではボタンカバー224bは特段の抵抗力を感じることなく(ボタンカバー支持部30の付勢力のみに抵抗するだけで)移動し、当接位置でアーム323に当接することで硬いものに触れたという触力覚が提示される。
【0024】
さらにユーザが力を入れて握る動作を行い、それによりボタンカバー224bの押圧力を強めたときに、アーム323を操作デバイス10の本体側に後退させるようモータ321を回転させると、ユーザに対して、あたかも握る力によって対象物が変形したかのような触力覚を提示できる。この際、モータ321の回転速度をユーザによるボタンカバー224bの押圧力に応じて変化させることで硬さの相違も併せて提示できる。
【0025】
規制部32のモータ321は、サーボモータまたはステッピングモータ等、回転角度を制御可能なモータである。このモータ321はギアヘッドが一体化されたいわゆるギアードモータであってもよい。このモータ321は、制御回路322から入力される電流により回転動作する。
【0026】
モータ321の制御回路322は、制御部11からトルク制御値τと回転方向の情報Dとの入力を受け入れる。この制御回路322は、そしてこのトルク制御値τに応じた大きさで、回転方向の情報Dに対応する方向の電流を、モータ321に供給する。モータ321はこの電流に応じたトルクで、指定された回転方向へ回転する。具体的に回転方向が「アップ」の場合、アーム323の先端(当接する部分)をボタンカバー224b側へ移動させる方向へ回転する。また回転方向が「ダウン」の場合、アーム323の先端(当接する部分)を操作デバイス10の本体側へ移動させる方向へ回転する。
【0027】
回転方向が「アップ」の場合には、アーム323の先端(当接する部分)をボタンカバー224b側へ移動させる方向へ回転し、モータ321によるトルクとユーザのボタンカバー224bの押圧力(アーム323によりモータ321の回転方向とは逆方向の回転力として伝達される)とが相殺し、押圧力がトルクに勝っている分の速度でボタンカバー224bが第2の位置に向って移動することとなる。また押圧力とトルクとがつり合えば、その時点の位置でボタンカバー224bが動かない状態となる。
【0028】
またこの制御回路322は、制御部11からトルク制御値τに代えて回転角度θの入力を受けてもよい。この場合制御回路322は、当該入力された回転角度θまでモータ321を回転制御して、アーム323の先端(当接する部分)をボタンカバー224b側へ移動させる方向へ回転する。なお、モータを定められた回転角度まで回転して停止させる制御については広く知られているので、ここでの詳しい説明は省略する。
【0029】
さらに別の例では、この制御回路322は、制御部11からトルク制御値τに代えて電流値または電圧値の入力を受けてもよい。この場合制御回路322は、モータ321に対して入力された値に対応する大きさの電流を供給し、または入力された値に対応する大きさの電圧を印加する。
【0030】
アーム323は、モータ321の回転軸に取付けられ、モータ321の回転角度θに応じて、ボタンカバー224bの移動可能範囲を規制する。具体的に本実施の形態の例では、アーム323は、
図4に例示するように、ボタンカバー224bの裏側、つまり操作デバイス10の本体側(ボタンカバー224bの移動軌跡上)に配され、アーム部材323aと、円板状のアーム部本体323cとを有している。
図4の例では、円板状のアーム部本体323cの中心がモータ321の回転軸に固定される。そしてアーム部材323aはこのアーム部本体323cと一体的に構成されて、このアーム部本体323cからその円周接線方向に突出する凸部となっている。
【0031】
この
図4の例のアーム323によれば、モータ321の回転角度に応じてアーム部材323aの先端(当接部)の位置が、ボタンカバー224bの移動可能範囲内で移動する。これによりボタンカバー224bはアーム部材323aの当接部に当接する当接位置まで移動可能となる。
【0032】
図5は、
図4の例のアーム323と、ボタンカバー224bとの関係を概念的に示した図である。
図5に概念的に示すように、アーム部材323aの長手方向(突出方向)とボタンカバー224bの移動方向とのなす角度(
図5(B)のφ)が所定値(例えば90度)以上であれば、ボタンカバー224bの移動範囲を規制することがなく、第1の位置(
図5(A)のX)と、第2の位置(
図5(A)のY)との間で自由に(ボタンカバー支持部30の付勢力のみに抵抗するだけで)移動可能となっている。
図5(A)の例では、アーム323の回転角度が「0」であるものとし、φが90度となっているものとしている。
【0033】
一方、アーム323がモータ321により回転角度θだけ回動し、アーム部材323aの長手方向(突出方向)とボタンカバー224bの移動方向とのなす角度φが所定値(例えば90度)未満となったときには、アーム部材323aの先端がボタンカバー224bの移動軌跡内に位置することとなる。なお、ここではアーム323の回転角度θは、アーム323の初期位置から図面で反時計周りに角度γだけ回転した角度の位置を最大位置θmax(予め設定しておく)として、この最大位置を基準とし、この基準となった角度から初期位置の方向へ戻る角度θで定義する。つまりこの例では初期位置の回転角度θ=γであり、最大の回転角度となったときのθ=0となる。そしてアーム323の回転角度θが小さくなり、当該なす角φが「0」に近くなるほど、アーム部材323aとボタンカバー224bとの当接位置(
図5(B)のY′の位置)が、ボタンカバー224bの第1の位置(
図5(B)のX)に近接する。これより、ボタンカバー224bの押込み可能量(可動範囲)が規制される。
【0034】
なお、この規制部32は
図4に例示したようなモータ321及びアーム323の例に限られず、ボタンカバー224bの移動範囲を指定された範囲に規制できるものであれば、例えばリニアアクチュエータと、当該リニアアクチュエータによって移動される規制部材としてのソレノイドのように、ボタンカバー224bの移動方向に直線的に移動し、その一端側がボタンカバー224bと当接してボタンカバー224bの移動範囲を規制するものであってもよい。
【0035】
主装置20は、例えばカメラを備えてユーザを撮像し、所定のタイミングごとに、ユーザの手の現実空間内での位置を検出し、検出した現実空間内の位置に対応するゲーム空間内でのユーザの手の仮想的位置を演算により求める。そしてこの求めた仮想的位置の情報に基づいて、ゲームの処理としてユーザの手に対して提示するべき触力覚を決定する。一例として主装置20は、ユーザがゲーム内で銃を手にしてトリガーを引こうとしていると検出すると、操作デバイス10に対して銃のトリガーを引くときの触力覚を提示するよう制御する指示を出力する。
【0036】
次に本発明の実施の形態に係る操作デバイス10の制御部11の動作について説明する。本実施の形態では、この制御部11は、
図6に例示するように、触力覚の制御に係る指示を受け入れる受入部51と、当該受け入れた指示に基づき、ユーザのロッキングボタン224の操作に応じ、ユーザに対して提示する触力覚を制御するための指示を生成する触力覚制御部52と、生成した指示を出力する出力部53とを含んで構成される。
【0037】
受入部51は、主装置20から触力覚の制御に係る指示を受け入れる。本実施の形態においてこの指示は、主装置20から所定のタイミングごとに繰返し送信される指示データパケットに含めて送信される。ここで指示データパケットの送信タイミングは10Hz〜100Hzのタイミング(1秒あたり10回ないし100回のタイミング)程度でよい。また、この指示データパケットは、
図7に例示するように、パケット識別子(N)を含むヘッダ部Hと、触力覚指示部Fと、その他のデータ部Dとを含んでなる。また触力覚指示部Fは、制御モードを特定する情報(M)と、この制御モードごとに定められた制御情報(P)とを含む。
【0038】
受入部51は、このパケットを受信することで制御モードを特定する情報(M)と、制御モードごとに定められた制御情報(P)とを受け入れる。これらの情報の具体的な例については、後に述べる。
【0039】
触力覚制御部52は、受入部51にて受け入れた情報で特定される制御モードにて、当該制御モードを特定する情報とともに受け入れた制御情報を用いて、可動部であるロッキングボタン224の移動動作に対して提示する触力覚を制御する。本実施の形態の例では、この触力覚制御部52は、アクチュエータであるモータ321に対する制御を行い、ユーザに対して提示する触力覚を制御する。この触力覚制御部52の動作は後に詳しく述べる。
【0040】
出力部53は、触力覚制御部52から入力される制御の指示(トルク制御値や電流値、電圧値等)を、モータ321の制御回路322に出力する。
【0041】
ここで触力覚制御部52の動作を具体的な例を用いて説明する。本実施の形態の一例では、主装置20からの指示によって指定される制御モードは、
(1)アクチュエータの目標位置及び、制御ゲインの情報を指定することで、アクチュエータを制御する第1の制御モード、
(2)アクチュエータに供給する電圧の電圧値またはアクチュエータに供給する電流の電流値を指定することでアクチュエータを制御する第2の制御モード、
(3)アクチュエータまたは可動部の位置範囲に対する制御情報を設定した複数の設定情報のうち、どの設定情報を用いるかを指定することで、操作デバイス10側にアクチュエータの制御を指示する第3の制御モード、
を含む。
【0042】
[目標位置とゲインとを指定する例]
まず、(1)アクチュエータの目標位置及び、制御ゲインの情報を指定する場合(第1の制御モード)、主装置20から受け入れる制御ゲインの情報には、位置誤差に対するゲイン(pゲインp)と、速度に対するゲイン(dゲインd)とが含まれる。この場合、触力覚制御部52は、位置センサ31からアクチュエータの位置情報として、ロッキングボタン224の押し込みにより回転されるアーム323の回転角度θの情報を受け入れる。ここでの例では制御情報に含まれるアクチュエータの目標位置は、アーム323の回転角度θtとして指定される。
【0043】
そして触力覚制御部52は、アクチュエータであるモータ321の制御回路322に出力するトルク制御値τを、ゲイン定数をGとして、
τ=(p×|θ−θt|+d×Δθ)/Gk
として定める。ここでΔθは、前回位置センサ31から入力された値θpと、今回位置センサ31から入力された値θとの差、
Δθ=θ−θp
であり、|x|は、xの絶対値を演算することを意味する。触力覚制御部52は、ここで演算したトルク制御値τを出力部53に出力する。
【0044】
さらにこの例の場合、触力覚制御部52は、モータ321の回転方向を、アーム323の実際の角度と、目標位置との差θ−θtに基づいてθ−θt>0であれば「アップ」、そうでなければ「ダウン」として、出力部53に出力する。なお、「アップ」、「ダウン」の判断は、θ−θtを用いることなく、トルク制御値τの符号によって、τ>0であれば「アップ」、そうでなければ「ダウン」として、出力部53に出力するようにしてもよい。制御の方法によっては、θ−θt>0であってもモータ321の回転方向が「ダウン」となり得る場合があることを考慮したものである。
【0045】
なお、この例において触力覚制御部52は、|θ−θt|が所定値未満であれば、トルク制御値τを「0」として、出力部53に出力することとしてもよい。
【0046】
また、アクチュエータの目標位置は、可動部であるロッキングボタン224の位置の情報(回転角度)として指定されてもよい。この場合、位置センサ31は、アーム323ではなくロッキングボタン224の回転角度の情報を出力する。
【0047】
[電圧値・電流値を指定する例]
また、(2)アクチュエータに供給する電圧の電圧値またはアクチュエータに供給する電流の電流値を指定する場合(第2の制御モード)、触力覚制御部52は、受け入れた電流値または電圧値をそのまま出力部53に出力する。この例では、出力部53を介してこの電流値または電圧値の入力を受けた制御回路322は、当該電流値または電圧値をモータ321に供給する。この例において受入部51は、電流値または電圧値とともに、回転方向を表す情報(「アップ」または「ダウン」を表す情報)を主装置20から受け入れる。そして触力覚制御部52は、当該回転方向を表す情報をそのまま出力部53に出力する。
【0048】
[継続時間を指定する例]
この電圧値や電流値を指定する例においては、受入部51は、主装置20から第2の制御モードを特定する情報や、電流値または電圧値とともに制御の継続時間に係る情報を受け入れてもよい。
【0049】
この場合、触力覚制御部52は、制御回路322に対して電流値や電圧値を出力した時点からの経過時間を、図示しない計時手段(例えばクロック信号の発生部とカウンタとにより実現できる公知のものでよい)を用いて計時し、上記受け入れた情報で特定される継続時間が経過したときに、制御回路322に対してモータ321の動作を停止するよう指示する(例えば電流値として「0」を出力する)。これによると、主装置20からアクチュエータの制御に係る情報を新たに受信しない場合でも、指定された時間が経過した時点で処理を終了でき、主装置20との通信が途切れたときにも主装置20側で実行されている処理で意図されている触力覚が提示可能となる。
【0050】
[制御パターンを指定する例]
次に、(3)アクチュエータまたは可動部の位置範囲に対する制御情報を設定した複数の設定情報のうち、どの設定情報を用いるかを指定することで、操作デバイス10側にアクチュエータの制御を指示する例(第3の制御モード)について説明する。
【0051】
なお、本実施の形態においてアクチュエータの位置範囲は、実際にはアーム323の回転角度の範囲を表すが、この角度の範囲はアクチュエータの回転軸の回転角度の範囲そのものである場合と、そうでない場合(減速ギアを介してアーム323が接続されている場合など)とがあり得る。この後者の場合は、減速ギアの出力側の位置がアクチュエータの位置に相当する。
【0052】
この例では、操作デバイス10の記憶部12には予め、アクチュエータまたは可動部の位置範囲と制御情報との組を少なくとも一組含む設定情報を記憶しておく。この情報は例えば、ゲーム中で銃を撃つ際の例である
図8に例示するように、アクチュエータの位置範囲を表す情報として当該位置範囲の下限を表す情報θ1minと、制御情報としての目標位置θt1=40及び制御ゲインp1,d1との組、または、アクチュエータの位置範囲を表す情報として当該位置範囲の下限を表す情報θ2minと、制御情報としての電圧値の情報CV(または電流値の情報CI)との組を含む。なお、
図8及び以下の説明ではアクチュエータの位置範囲を用いる例を示しているが、可動部の位置範囲を用いる場合は、
図8及び以下の説明において、アクチュエータの位置範囲の代わりに、可動部の位置範囲を表す情報とすればよい。
【0053】
この例では触力覚制御部52は、アーム323または可動部であるロッキングボタン224の回転角度θの情報を受け入れ、指定された設定情報において当該受け入れた回転角度θを含む位置範囲の情報に関連付けられた制御情報を参照して、それが目標位置及び制御ゲインの組であれば第1の制御モードと同様の処理によりアクチュエータを制御し、また参照した制御情報が電圧値または電流値であれば第2の制御モードと同様の処理によりアクチュエータを制御する。
【0054】
すなわち
図8の例では、位置範囲がθ2min(例えば40とする)を下回ったとき「アップモード」となって、θ1min=20から次の位置範囲の下限であるθ2min=40の間、目標位置θt1及び制御ゲインp1,d1(回転方向は図示していないがアップとする)にて制御を行う。またこの「アップモード」である間、θ2min=40から次の位置範囲の下限であるθ3min=80の間、電圧値CV=200とする制御を行い、θ3min=80から次の位置範囲の下限であるθ4min=125までの間、電圧値CV=−30とする制御を行う(
図8(A),ここで電圧値CVが正のときはアップ、負のときはダウンの回転方向に制御することを示す)。
【0055】
また位置範囲がθ4min以上(θ=130が最大角度であるとするとき、θ4minは例えば125とする)となったときには「ダウンモード」となって、制御情報としての目標位置θt2=20及び制御ゲインp2,d2にて制御を行う(
図8(B),回転方向はここではダウンとなる)。このように設定情報には、第1の制御モードに係る制御情報と、第2の制御モードに係る制御情報とが混在していても構わない。
【0056】
この例によると、
図8(A)に例示するように、ユーザがロッキングボタン224を初期位置(このとき、アーム323の回転角度θ=0)から押込むと、アーム323の位置がθ=20となるまでは何らの抵抗を受けずに(ロッキングボタン224を初期位置へ戻そうとする付勢力に抗するのみで)押込むこととなり、アーム323の位置がθ=20からθ=40までは徐々に抵抗が強くなる触力覚の提示を受け、アーム323の位置がθ=40からθ=80までは比較的強い反力(押戻そうとする力)の触力覚が提示され、アーム323の位置がθ=80となる位置までロッキングボタン224を押し込むと急激に反力がなくなったかのような触力覚を受けることとなる。
【0057】
これはちょうど、拳銃などのトリガーを引くときに、最初に遊びがあり、撃鉄が引かれるまでは若干の反力があり、その後、撃鉄を戻すために強い力が必要となり、その後撃鉄が戻って弾丸が発射され、トリガーが自由になるのに対応する、いわば銃のノックバック感に相当する触力覚が提示されている状態に相当する。
【0058】
また触力覚制御部52は、アーム323の位置情報の変化速度に基づいてユーザの指の動きに基づいて速さまたは力を推定してゲインを変えてもよい。具体的に、ユーザの指の動き(アーム323の位置情報の変化速度)が予め定めた閾値より下回る場合と、閾値を上回る場合とで制御ゲインを異ならせる。例えば、ユーザの指の動き(アーム323の位置情報の変化速度)が予め定めた閾値より下回るときよりも、閾値を上回る場合において制御ゲインを強めに(より強い反力を提示するように)設定することとしてもよい。
【0059】
[振動提示]
本実施の形態では、また、ロッキングボタン224を振動させて、ユーザに対して振動を提示してもよい。具体的には、主装置20は、ロッキングボタン224を、上側の第1の位置と、下側の第2の位置との間で振動させる指示を行う。
【0060】
そして操作デバイス10の制御部11は、この振動を提示する指示を受けたときには、所定のタイミングごとに、アクチュエータの目標位置を第1の位置とする第1の制御モードと、電流値または電圧値とともに、回転方向を「ダウン」とする情報とを出力する第2の制御モードとを切り替える。
【0061】
このように第1の制御モードと第2の制御モードとを交互に切り替える方法によって振動を提示することで、上側の振動限界の位置(第1の位置)が制御可能となる。また、この方法によれば、第2の位置についても、アーム323が移動する距離(ユーザがロッキングボタン224を押し込んでいるときにはロッキングボタン224が移動する距離と同じになる)が第2の制御モードでの制御が行われている時間の長さに依存することとなり、一定の時間ごとに第2の制御モードから第1の制御モードへの切り替えを行っている場合は、ユーザがロッキングボタン224を押し込む力の大小に関わらず実質的に一定となるため、第1の制御モードと第2の制御モードとを切り替えるタイミングを変更することによって制御可能となる。
【0062】
なお、制御部11は、上述の場合に、第1の制御モードと第2の制御モードとを交互に切り替える方法に代えて、第1の制御モードにおいて目標位置を所定の時間ごとに、上側の第1の位置と、下側の第2の位置とで切り替えることとしてもよい。また、第2の制御モードを用い、回転方向の「アップ」、「ダウン」を所定の時間ごとに交互に切り替えてもよい。
【0063】
また、第1の制御モードと第2の制御モードとを切り替えるタイミングは、例えば「アップ」方向への駆動中に、制御部11がロッキングボタン224とアーム323の相対的な位置を検出し、アーム323とロッキングボタン224が接触するまでは第1の制御モードで駆動し、接触した後は第2の制御モードで駆動するようにしてもよい。
【0064】
[実際の振動範囲に基づく制御]
またこの振動提示の制御においては、位置センサ31が検出する位置の範囲の情報に基づいて、次のような制御を行ってもよい。具体的には、例えば、制御部11は、指示された第1,第2(上限側,下限側)の位置の情報が20度と60度とであるのに、ロッキングアームに対するユーザの押し込み力の影響で、位置センサ31により検出した位置の情報が40度から60度の間の20度である場合に、振動の幅が、意図した振動の幅となるように上限側または下限側(例えば下限側である第2の位置)を制御して、例えば、40度と80度に制御する。なお、このとき上限側も制御してもよい。
【0065】
[別の例:連射銃]
また、
図8の例において、位置範囲がθ4min以上(θ=130が最大角度であるとする)のときに、制御情報としての目標位置θt2=125及び制御ゲインp2,d2にて制御を行う(回転方向はここではアップとする)ようにしてもよい。この例によると、トリガーを引ききったときにトリガーを若干戻して引き切らせることを繰り返すこととなる。この別の例では銃を連射しているかのような触力覚が提示できる。
【0066】
また銃の連射感を堤示する方法は、この例に限らず、例えば次のようにしてもよい。例えば操作デバイス10は、アーム323またはロッキングボタン224の位置範囲が所定の値(開始条件値)を上回る(例えばθ=100が最大角度であれば、開始条件値は、その1/2のθ=50とする)ときに、「連射モード」に移行して、所定のタイミングごとにアクチュエータのアップ、ダウンを切り替えて振動を堤示する。
【0067】
具体的には、アクチュエータをアップさせるときには、制御情報としての目標位置θt=5とし、アクチュエータをダウンさせるときには、制御情報としての目標位置θt=95とする(制御がオーバーシュート気味に働く場合を考慮して、最小値や最大値に対して所定の余裕を持たせた値とする)。
【0068】
またこの例では操作デバイス10は、アーム323またはロッキングボタン224の位置範囲が所定の値(停止条件値)を下回ったときに「連射モード」を終了して、アクチュエータの制御を停止する。ここで停止条件値は、開始条件値と同じでもよいし、異なっていてもよい。例えば停止条件値は、開始条件値よりも第1の位置に近接する側、例えばθ=30としてもよい。
【0069】
さらに、ここではアクチュエータの制御時に目標位置を設定することとしたが、これに限られず、アクチュエータをアップさせるときには、アクチュエータに供給する電圧の電圧値CVを予め定めた負の値CV1とし、アクチュエータをダウンさせるときには、アクチュエータに供給する電圧の電圧値CVを予め定めた正の値CV2(ここでは電圧値CVが負のときはアップ、正のときはダウンの回転方向に制御することを示すものとした)として、所定のタイミングごとに電圧値CVをCV1,CV2に交互に設定し、振動を堤示することとしてもよい。この振動提示は、電圧値を交互に設定することに代えて、先に述べたように、第1の制御と第2の制御とを交互に行う方法を採用してもよい。
【0070】
なお、上記開始条件値及び終了条件値にはヒステリシスをもたせてもよい。具体的には、「連射モード」の設定がされる前(開始条件値の判定処理開始前)のアームまたはロッキングボタン224の位置範囲が、開始条件値を上回っていたときには、開始条件値を一度下回り、その後、再度開始条件値を上回るまで「連射モード」に移行しないよう制御してもよい。
【0071】
また、「連射モード」中は、制御がオーバーシュート気味に働く場合を考慮して、アーム323またはロッキングボタン224の位置範囲が停止条件値を下回ってもすぐに「連射モード」を終了せず、アーム323またはロッキングボタン224の位置範囲が停止条件値を下回っている時間が予め定めたしきい値を超えたときに「連射モード」を終了するよう制御してもよい。このようにフィルタリングしたような制御を行うことで、自然な連射感を堤示できる。なお、このフィルタリングは、移動平均を用いるような、ローパスフィルタによって行われてもよい。
【0072】
[ゲームプログラムによる制御]
さらに、主装置20はゲームの処理として、制御ゲインを設定する指示を出力してもよい。例えば銃の連射を行うゲームの場合、残弾数に応じて制御ゲインを変更制御してもよい。
【0073】
また主装置20は、所定の条件に応じてゲインを弱める制御を行ってもよい。具体的にこの条件には、総プレイ時間(毎回のプレイ時間の合計)、ゲームのプレイ回数、毎回のプレイ開始からの時間(プレイ時間)、所定の操作開始からの経過時間に基づいて制御ゲインを制御(例えば制御ゲインを弱める制御)してもよい。例えば、マシンガンを撃ち続ける操作が行われる場合に、マシンガンを撃つ操作開始からの経過時間に応じて制御ゲインを小さくなるよう制御する。このようにすると、マシンガンを連射している感覚は与えつつ、強い振動が継続的に提示されることが防止される。このことで操作性が向上する。
【0074】
[力覚提示の他の例]
さらにユーザによるロッキングボタン224を押圧する力がアクチュエータの力よりも大きい場合には、ロッキングボタン224をユーザの力に抗して持ち上げることができなくなり、あたかも物体にぶつかってはねのけられたかのような力覚を提示することができなくなる。
【0075】
そこで本実施の形態のある例では、位置センサ31から入力される情報で示されるアーム323の位置情報がθであるときに、主装置20からアーム323の回転角度の目標としてθt(θt>θとする)が与えられると、触力覚制御部52が、アクチュエータを駆動してアーム323を回転角度θtまで回転するよう制御する。このとき、触力覚制御部52は、所定のタイミングごとに繰り返し、位置センサ31から入力される情報で示されるアーム323の位置情報θを調べ、予め定めた時間に亘ってθt>θのままであるか否か(所定の時間に亘ってロッキングボタン224が移動不能であるか否か)を調べる。ここで所定の時間に亘ってロッキングボタン224が移動不能であると判断すると、触力覚制御部52は、アーム323の回転角度の目標θtを、θt=θ−Δθ(ここでΔθ>0)に設定し直して、アクチュエータを制御することとしてもよい。
【0076】
この例では、ロッキングボタン224が持ち上げられる代わりに引き込まれることとなるが、ユーザは一時的にロッキングボタン224が引き込まれることで、一時的にユーザによりロッキングボタン224に与えられる力が弱められ、それに対して押し返す力を再度与えることで、押し返される力をより強く感じられることとなるうえ、引き込まれた位置から押し返すことによる慣性力のため、押し返す力がより強く与えられる。こうして何らの変化をも与えない場合に比べ、はねのけられた場合と類似する感覚を与える。
【0077】
なお、この制御を行う場合は、アーム323の回転角度の目標値θtが与えられたときに、触力覚制御部52が目標値をθt−Δθに補正して制御しておくこととしてもよい。これにより予めアーム323がΔθだけ余計に回転していることとなり、ロッキングボタン224の規制範囲が対応する量だけ持ち上げられた位置に設定されることとなる。このことで、その後いつでもΔθだけ引き込む制御を行うことが可能となる。
【0078】
また、ユーザがロッキングボタン224を押圧する力が比較的大きいときには、触力覚制御部52が例えばモータ321を「アップ」の方向に回転させる制御をしている間に、単位時間あたりに取得する、位置センサ31から入力される情報で示されるアーム323の位置情報θの変化量δθが、所定の閾値δθthを下回る場合がある。
【0079】
触力覚制御部52は、このような状態となったときには、アーム323の回転制御を停止する期間を設けることとしてもよい。具体的には、触力覚制御部52は、アーム323の回転角度の目標をθtとして制御しようとする場合に、アーム323の回転角度の目標を最終目標であるθtとして制御を行う代わりに、N(N>1なる整数)段階にわけて制御してもよい。つまり、Δθt=(θt−θ)/N(ただしθは、この制御を開始する時点でのアーム323の回転角度を表す)とし、予め定めた時間間隔ΔTごとに、その時点でのアーム323の回転角度θからΔθtずつ移動させる制御を行う。
【0080】
同様にモータ321に供給する電圧値により制御を行う場合も、指定するべき電圧値CVにより制御を行う代わりに、予め定めた時間間隔ΔTごとに、このΔTとは異なり得る微小な時間τだけ、所定の電圧値CV′をモータ321に供給する(回転方向は本来の制御を行う方向とする)。
【0081】
ここで所定の電圧値CV′は、モータ321に供給可能な最大電圧CVmaxとしてもよいし、指定するべき電圧値CVよりも大きい電圧値を所定の方法で演算してもよい。例えば1より大きい、予め定めた値を乗じるか、0より大きい予め定めた値を加算することとすればよい。いずれの場合も演算の結果、モータ321に供給可能な最大電圧CVmaxを超える場合は、CV′=CVmaxとする。
【0082】
このように、アーム323の回転角度を、目標となる回転角度まで直線的に制御することに代えて、段階的に、いわば離散的に制御することで、ロッキングボタン224が持ち上がろうとしている感覚を、ユーザに対して効果的に与えることが可能となる。
【0083】
さらに触力覚制御部52は、主装置20からアーム323の回転角度の目標としてθtが与えられると、位置センサ31から入力される情報で示されるアーム323の位置情報θと、このθtとを比較し、σ(θt−θ)を得る。ここでσ(X)は、Xの正負の符号を表し、X<0のときσ(X)=−1、X>0のときσ(X)=1、X=0のときσ(X)=0となるものとする。
【0084】
そして触力覚制御部52は、アーム323の回転角度の目標を、θt′=θ−σ(θt−θ)×Δθ(Δθは予め定めた微小角度とする)に設定し、時間τ(このτも予め定めた微小時間とする)だけアーム323を回転角度θt′となるようアクチュエータを制御する。その後、時間τの経過後に、触力覚制御部52は、アーム323の回転角度の目標を、主装置20から指示された目標角度θtに設定し、アーム323が回転角度θtとなるようなアクチュエータの制御を開始する。
【0085】
この例によると、指示された移動方向とは逆方向に一時的にアーム323が移動し(予備動作)、その後、指示された方向にアーム323が移動するように制御される(本動作)。このように本動作に先立って予備動作が行われることで、本動作の動きが強調され、ユーザがより強く、本動作時の移動を感じるようになる。
【0086】
なお、この動作がより効果的となるよう、ロッキングボタン224の当初移動可能範囲(アーム323により規制されない移動可能範囲全体)外まで、アーム323が回転可能となっていることとしてもよい。つまり、
図5(A)の例において、ロッキングボタン224のボタンカバー224bが位置Yまで押し込み可能となっているとき、アーム323は回転角度θが負となる回転角まで回転可能となっていてもよい。このとき、ボタンカバー224bは位置Yよりも下方に移動できないよう別の部材によって規制されてアーム323に当接しない状態となっていても構わないが、アーム323は本来の回転方向と反対方向に引き込むことが可能となる。
【0087】
なお、この制御は、アクチュエータに供給する電圧の電圧値またはアクチュエータに供給する電流の電流値を指定する場合(第2の制御モード)でも適用できる。すなわち、電流値または電圧値とともに、回転方向を表す情報(「アップ」または「ダウン」を表す情報)を主装置20から受け入れたときに、触力覚制御部52は、回転方向を、主装置20から受け入れた方向とは逆方向とし、アクチュエータに供給する電流または電圧を、所定の電流値または電圧値(予め定めた電流値または電圧値でもよいし、入力された値そのものであってもよい)とするよう出力部53に指示する。そして、その後時間τ(このτは上述と同じく予め定めた微小時間とする)だけ経過すると、触力覚制御部52は、主装置20から受け入れた回転方向を表す情報と、電流値または電圧値を表す情報とをそのまま出力部53に出力する。
【0088】
これにより、アーム323が一時的に、指示された移動方向とは逆方向に移動し(予備動作)、その後、指示された方向にアーム323が移動するように制御される(本動作)。
【0089】
また、これらの種々の力覚提示の動作はそれぞれ組み合わせて用いられてもよい。例えば予備動作の後に本動作を行うときに、回転制御を停止する期間を設けつつ、いわば離散的にアーム323の回転制御を行ってもよい。
【0090】
[チャタリング防止]
なお、本実施の形態の一例では、主装置20が、ユーザが操作デバイス10を動かす速度を検出し、当該検出した速度に応じて操作デバイス10に対して送出するアクチュエータの制御のパラメータを異ならせてもよい。ここでユーザが操作デバイス10を動かしている速度は、主装置20に接続されたカメラ等でユーザを撮像して得た画像に基づいて検出してもよいし、操作デバイス10が加速度センサ(不図示)を備えて、当該加速度センサで検出した加速度の値を送出している場合は、当該加速度センサで検出された加速度の積分値(累算値)によって速度を検出してもよい。
【0091】
具体的に、このパラメータはローパスフィルタのカットオフ周波数であり、操作デバイス10の制御部11の出力部53は、このカットオフ周波数に応じた直近のM回分(Mの値がカットオフ周波数に応じて変化する)の触力覚制御部52から入力値(トルク制御値や電流値等)の平均を演算し(つまり直近M回分の移動平均を演算し)、当該演算の結果を制御回路322へ出力する。主装置20は、ユーザが操作デバイス10を早く動かしているほど、カットオフ周波数を低く設定する。
【0092】
このようにすると、例えば主装置20がゲームの仮想空間でのユーザの手の位置が、当該仮想空間内に配された物体に触れたときに触力覚を提示させようとする場合に、ユーザが手を早く動かしている(当該手に装着された操作デバイス10が早く動いている)ほど、アクチュエータの動きが緩慢となり、一方でユーザが手をゆっくり動かせば動かすほど(例えば仮想空間内の物体表面に沿ってゆっくりと手を動かしている場合など)、仮想空間内の物体の形状に沿ってアクチュエータが駆動され、対応する触力覚が提示されることとなる。
【0093】
これにより、ユーザが手を早く動かしているときに、仮想空間内の物体の位置に応じてアクチュエータが細かく振動しているように(チャタリングが生じたように)制御されてしまうことが防止される。
【0094】
さらにこの制御は、把持部21内にバイブレータ等の振動デバイスが固定されている場合、この振動デバイスに対して、主装置20が、ユーザの操作デバイス10を動かす速度を検出し、当該検出した速度に応じて操作デバイス10に対して送出する振動デバイスの制御のパラメータを異ならせてもよい。つまり主装置20は、この振動デバイスに対するローパスフィルタのカットオフ周波数を、ユーザが操作デバイス10を早く動かしているほど、低く設定する。
【0095】
[動作]
本発明の実施の形態の情報処理システムは以上の構成を備えており、次の例のように動作する。主装置20が、所定のタイミングごと(例えばフレームごとのタイミング)に、ユーザの手の位置を検出し、ゲームの処理等に応じて、当該検出した手の位置に基づいて、ユーザの手に提示するべき触力覚の内容を決定する。本実施の形態では、ユーザの手に提示するべき触力覚を、ユーザの指に触力覚を提示することで代替する。ユーザは指にのみ触力覚の提示を受けることとなるが、手全体に触力覚が提示されたかのように感得する。
【0096】
本実施の形態では、
図9に例示するように、主装置20が上記所定のタイミングごとに、ユーザの手に提示するべき触力覚の内容として、制御モードと制御情報または設定情報を指定する情報とを含むパケット(指示パケットと呼ぶ)を生成し(S1)、操作デバイス10へ送出する(S2)。具体的にここでは、制御モードとして、第3の制御モードを指定する情報と、
図7に例示した設定情報を指定する情報とを含むパケットが送出されたものとする。
【0097】
操作デバイス10では、位置センサ31によりアクチュエータの位置情報として、アーム323(またはロッキングボタン224)の回転角度θの情報を得る(S3)。そして指定された設定情報を参照し、処理S3で得られた回転角度に対応する制御値を取得する(S4)。具体的に得られた回転角度がθ=30であれば、制御値として、θ1min=20から次の位置範囲の下限であるθ2min=40の間の制御値である、目標位置θt1及び制御ゲインp1,d1を得る。そして、アクチュエータであるモータ321の制御回路322に出力するトルク制御値τを、ゲイン定数をGとして、
τ=(p×|θ−θt|+d×Δθ)/Gk
として定め、当該演算したトルク制御値τを制御回路322に出力し、モータ321を回転制御する(S5)。
【0098】
操作デバイス10は、主装置20から新たに指示パケットが受信されるまで処理S3からS5の処理を繰り返す。この繰り返しのタイミングは、例えば1kHz程度の周期となる。この間、アーム323(またはロッキングボタン224)の回転角度に応じて、設定情報に設定されている制御値によりモータ321の回転制御を行う。
【0099】
このように本実施の形態では、主装置20から次の指示パケットが受信されるまでの間、前回受信した指示パケットの内容に基づいて操作デバイス10が自律的に触力覚提示の動作を行う。これにより、操作のタイミングに合わせた触力覚提示も可能となり、種々の態様の触力覚が提示可能となる。
【0100】
[弓ひき感の提示例]
また主装置20では、左手と右手とのうち触力覚を提示する手(片手に操作デバイス10を装着する場合、操作デバイス10が装着されている手)の位置に基づいて提示するべき触力覚を定めるだけでなく、左右の手の位置に基づいて提示するべき触力覚を定めてもよい。例えば、主装置20は、提示する触力覚の制御モードを第2の制御モードとし、左右の手の間の距離が大きいほど電流値を大きくする(回転方向はアップとする)ようにしてもよい。この例によると、例えば弓を引く動作をしているときに、左右の手の間の距離が大きくなるほど(より強く弓を引く動作をするほど)、操作デバイス10を装着したユーザの手の指に、外側へ押出されるような(引く力に反するような)力を感じさせるよう、触力覚を提示させることができる。
【0101】
このような第3の制御モードを設けることで、主装置20側のゲームプログラム等の開発者が細かい制御を指示することなく、操作デバイス10側にて予め記憶している設定情報のいずれかを指定するだけで、所望の力覚堤示を行わせることが可能となる。
【0102】
[変形例]
もっとも、この第3の制御モードでは、主装置20は、操作デバイス10が予め記憶している設定情報のいずれかを選択する指示を送信するのではなく、主装置20側のゲームプログラム等の開発者が細かい制御を指示するようにしても構わない。具体的に主装置20は、第3の制御モードの指示とともに、設定情報の内容を表す情報(アクチュエータの位置範囲と制御情報との組を少なくとも一組含む情報)を送出し、操作デバイス10が当該情報を設定情報として、第3の制御モードとしての動作を行っても構わない。
【0103】
この例では、操作デバイス10はさらに、主装置20から受信した設定情報の内容を表す情報を、記憶部12に蓄積して記憶し、後に指定を受けることを可能としてもよい。この場合、主装置20は、当該設定情報を特定する情報(識別情報)を併せて操作デバイス10に送出し、操作デバイス10は当該識別情報に関連付けて設定情報の内容を表す情報を記憶する。これにより、後に主装置20から当該識別情報を用いて、当該設定情報の指定を受けることが可能となる。
【0104】
なお、本実施の形態の操作デバイス10は、ロッキングボタン224等、可動部の移動動作に対して触力覚を堤示するだけでなく、可動部を移動していないときにも触力覚を堤示するようにしてもよい。
【0105】
また、ここまでの例では、ボタンカバー224bとアーム323とは連動しないものとして説明していたが、これらボタンカバー224bとアーム323とは互いに連結されて連動するように構成されていてもよい。
【0106】
この例でも、アーム323はモータ321の回転軸に取付けられ、モータ321の回転角度θrに応じて、ボタンカバー224bの移動可能範囲を規制する。そしてモータ321は、制御部11から入力されるトルク制御値τに応じた大きさの電流をモータ321に供給する制御回路322から電流供給を受けて回転動作する。
【0107】
本実施の形態のこの例では、モータ321の回転角度θ(減速ギアが取り付けられているときには、減速ギアの出力側の角度、以下同じ)がθ0のとき、アーム323に連結されたボタンカバー224bが第1の位置に移動し、モータ321の回転角度θがθ1(θ0≠θ1)のとき、ボタンカバー224bが第2の位置に移動するものとする。
【0108】
そしてこの例では、制御回路322は、制御部11からトルク制御値τが入力されている間は、当該トルク制御値τに応じた大きさの電流をモータ321に供給する。また、制御部11からトルク制御値τが入力されていない間は、モータ321の回転角度θrが、θ0に等しいか否かを判断し、等しくなければ回転角度θ0に向けてモータ321を回転制御するべく、モータ321に対して予め定めた大きさの電流を供給する。ここで供給する電流量は、ボタンカバー224bとアーム323とが互いに連結されていない例において、ボタンカバー224bが押圧されていないときに、ボタンカバー224bを第1の位置に移動させる付勢力に相当する力でボタンカバー224bを移動させる程度の力が提示される程度の電流量として実験的に定めればよい。
【0109】
[左右のデバイスの制御]
また本実施の形態において、ユーザの左手と右手の双方に操作デバイス10を装着する場合、主装置20は、それぞれの操作デバイス10に対してロッキングボタン224を介して触力覚を提示するための制御に係る指示を送出する。
【0110】
主装置20は、所定の方法によって左手に装着した操作デバイス10により提示する触力覚と右手に装着した操作デバイス10により提示する触力覚とのどちらが主たる触力覚であるかを判断する。この判断は例えばゲーム等のアプリケーションプログラムに従った指示に基づいて行われてもよいし、左右の操作デバイス10のうち、最後に触力覚の提示が指示された側が提示する触力覚が主たる触力覚であると判断してもよい。さらに、提示する触力覚の大きさ(例えば振幅の大きさ等)が大きい側が提示する触力覚が主たる触力覚であると判断してもよい。
【0111】
主装置20は、左右の操作デバイス10のうち、主たる触力覚を提示する側でない側については、制御を弱める。例えば、右側の操作デバイス10が主たる触力覚を提示していると判断すると、主装置20は、左側の操作デバイス10に対して出力している触力覚の制御値(例えばトルク制御値)を小さくして電力消費を低減させる。