بعض محتويات هذا التطبيق غير متوفرة في الوقت الحالي.
إذا استمرت هذه الحالة ، يرجى الاتصال بنا علىتعليق وإتصال
1. (WO2019064518) OPERATION DEVICE AND CONTROL APPARATUS THEREFOR
Document

明 細 書

発明の名称 操作デバイス、及びその制御装置

技術分野

0001  

背景技術

0002  

発明の概要

発明が解決しようとする課題

0003   0004  

課題を解決するための手段

0005   0006   0007   0008  

図面の簡単な説明

0009  

発明を実施するための形態

0010   0011   0012   0013   0014   0015   0016   0017   0018   0019   0020   0021   0022   0023   0024   0025   0026   0027   0028   0029   0030   0031   0032   0033   0034   0035   0036   0037   0038   0039   0040   0041   0042   0043   0044   0045   0046   0047   0048   0049   0050   0051   0052   0053   0054   0055   0056   0057   0058   0059   0060   0061   0062   0063   0064   0065   0066   0067   0068   0069   0070  

符号の説明

0071  

請求の範囲

1   2   3   4   5   6   7   8   9   10   11   12   13   14  

図面

1   2   3   4   5   6   7   8  

明 細 書

発明の名称 : 操作デバイス、及びその制御装置

技術分野

[0001]
 本発明は、ユーザーの操作に応じた触感を提示する操作デバイス、その制御装置、制御方法、及び制御プログラムに関する。

背景技術

[0002]
 スマートフォンや家庭用ゲーム機に接続されるコントローラなどのように、ユーザーからの操作入力を受け付ける操作デバイスの中には、振動を発生させるなどしてユーザーに触感を提示する触感提示機構を備えるものがある。このような操作デバイスは、ユーザーが操作ボタンを操作したなどのタイミングで触感提示機構を動作させることにより、ユーザーの操作に応じた感触を提示して、操作感を向上させることができる。

発明の概要

発明が解決しようとする課題

[0003]
 上記従来例の技術における操作デバイスにおいて、例えば操作ボタンごとに個別の触感提示機構を設けることは、コストの増大や装置の大型化を招くことになる。一方で、各種の操作に対する触感を共通の触感提示機構によって提示しようとすると、反応が画一的になってしまい、操作感の向上につながりにくくなる傾向がある。
[0004]
 本発明は上記実情を考慮してなされたものであって、その目的の一つは、ユーザーの操作に応じた触感を効果的に提示することのできる操作デバイス、その制御装置、制御方法、及び制御プログラムを提供することにある。

課題を解決するための手段

[0005]
 本発明に係る操作デバイスの制御装置は、操作部材、及び触感提示機構を備える操作デバイスと接続される操作デバイスの制御装置であって、前記操作部材に対するユーザーの操作入力を受け付ける操作入力受付部と、前記操作入力を受け付けた際に前記触感提示機構を動作させることによって、前記操作入力に対応する触感を前記ユーザーに提示する触感提示部と、を含み、前記触感提示部は、前記操作入力受付部が受け付けた操作入力の内容に応じて、前記ユーザーに提示する触感の内容を変化させることを特徴とする。
[0006]
 本発明に係る操作デバイスは、操作部材と、当該操作部材に連結される構造体と、一端が前記構造体に固定され、他端が別の支持体によって支持される振動機構と、を備え、前記構造体は、前記別の支持体よりも剛性が高いことを特徴とする。
[0007]
 本発明に係る操作デバイスの制御方法は、操作部材、及び触感提示機構を備える操作デバイスの制御方法であって、前記操作部材に対するユーザーの操作入力を受け付ける操作入力受付ステップと、前記操作入力を受け付けた際に前記触感提示機構を動作させることによって、前記操作入力に対応する触感を前記ユーザーに提示する触感提示ステップと、を含み、前記触感提示ステップでは、前記操作入力受付ステップで受け付けた操作入力の内容に応じて、前記ユーザーに提示する触感の内容を変化させることを特徴とする。
[0008]
 本発明に係るプログラムは、操作部材、及び触感提示機構を備える操作デバイスを制御するためのプログラムであって、前記操作部材に対するユーザーの操作入力を受け付ける操作入力受付部、及び、前記操作入力を受け付けた際に前記触感提示機構を動作させることによって、前記操作入力に対応する触感を前記ユーザーに提示する触感提示部、としてコンピュータを機能させ、前記触感提示部は、前記操作入力受付部が受け付けた操作入力の内容に応じて、前記ユーザーに提示する触感の内容を変化させることを特徴とする。このプログラムは、コンピュータ読み取り可能で非一時的な情報記憶媒体に格納されて提供されてよい。

図面の簡単な説明

[0009]
[図1] 本発明の第1の実施形態に係る操作デバイスを含むシステムの構成例を表すブロック図である。
[図2] 操作デバイスの外観を示す図である。
[図3] 情報処理装置の機能を表す機能ブロック図である。
[図4] フィードバック振動に対する補正処理の一例を説明する図である。
[図5] 操作デバイスの構造の一例を模式的に示す断面図である。
[図6] 振動データの一例を示す図である。
[図7] 本発明の第2の実施形態における操作デバイスの外観を示す図である。
[図8] 感圧センサーが検出する圧力値に応じたフィードバック振動の制御について説明する図である。

発明を実施するための形態

[0010]
 以下、本発明の実施の形態について図面を参照しながら説明する。
[0011]
[第1の実施形態]
 まず、本発明の第1の実施形態について説明する。図1に示すように、本実施形態では、制御装置として機能する情報処理装置10は、操作デバイス20と通信可能に接続されている。
[0012]
 操作デバイス20は、ユーザーが手で保持したり、ユーザーの身体に装着したりして使用するデバイスである。操作デバイス20は振動機構21を内蔵しており、この振動機構21を動作させることによってユーザーに振動を提示する。振動機構21は、リニア共振アクチュエータやボイスコイルモーター、偏心モーターなど、各種の振動発生素子であってよい。本実施形態では、操作デバイス20は複数の振動機構21を内蔵しているものとする。具体的に、ユーザーが左手で把持する把持部に振動機構21aが、右手で把持する把持部に振動機構21bが、それぞれ配置されている。
[0013]
 また、操作デバイス20は、ユーザーによる操作の対象となる操作ボタンやレバー、タッチセンサなど、各種の操作部材を備えている。具体的に本実施形態では、図2に示すように、操作デバイス20の左側に複数の操作ボタン22a~22dが、右側に複数の操作ボタン23a~23dが、右側の操作ボタン23a~23dよりも中央寄りの位置に操作ボタン24が、それぞれ配置されている。
[0014]
 情報処理装置10は、例えば家庭用ゲーム機やパーソナルコンピュータ等であってよい。また、本実施形態において情報処理装置10は、表示装置14とも通信接続される。この情報処理装置10は、図1に示すように、制御部11と、記憶部12と、インタフェース部13とを含んで構成されている。
[0015]
 制御部11は、少なくとも一つのプロセッサを含み、記憶部12に格納されたプログラムに従って各種の情報処理を実行する。この制御部11が実行する処理の具体例については、後に詳しく述べる。
[0016]
 記憶部12は、メモリデバイス等を含み、制御部11によって実行されるプログラムを保持する。このプログラムは、コンピュータ可読かつ、非一時的な記憶媒体に格納されて提供され、この記憶部12に複写されたものであってもよい。またこの記憶部12は、制御部11のワークメモリとしても動作する。
[0017]
 インタフェース部13は、USB(Universal Serial Bus)等のシリアルインタフェースあるいは、Bluetooth(登録商標)等の無線通信インタフェースを含んで構成される。情報処理装置10は、このインタフェース部13を介して操作デバイス20と通信可能に接続される。特に本実施形態において、インタフェース部13は、制御部11からの指示に従って、振動機構21を動作させるための制御信号を送信する。さらにインタフェース部13は、表示装置14と有線又は無線で通信するための通信インタフェースを含んでいる。情報処理装置10は、インタフェース部13を介して、表示装置14が表示すべき映像の内容を示す映像信号を表示装置14に対して送信する。
[0018]
 表示装置14は、情報処理装置10から送信される映像信号に基づく映像を表示する。表示装置14は、例えば家庭用テレビ受像機や液晶ディスプレイであってもよいし、ヘッドマウントディスプレイ等のユーザーが頭部に装着して使用するタイプのデバイスであってもよい。
[0019]
 以下、情報処理装置10の制御部11が実現する機能の具体例について説明する。本実施形態において制御部11は、機能的に、図3に示すように、操作入力受付部31と、アプリケーション実行部32と、触感提示部33と、を含んで構成されている。これらの機能は、制御部11が記憶部12に記憶されたプログラムに従って動作することにより実現される。このプログラムは、インターネット等の通信ネットワークを介して情報処理装置10に提供されてもよいし、光ディスク等のコンピュータ読み取り可能な情報記憶媒体に格納されて提供されてもよい。
[0020]
 操作入力受付部31は、操作デバイス20に設けられた各操作部材に対するユーザーの操作入力を受け付ける。具体的に、操作デバイス20は、いずれかの操作ボタンをユーザーが押下した場合に、押下された操作ボタンを特定する情報を含んだ制御信号を情報処理装置10に対して送信する。操作入力受付部31は、この操作デバイス20が送信する制御信号を参照して、ユーザーの操作内容を特定する。
[0021]
 アプリケーション実行部32は、アプリケーションプログラムを読み出すことによって、その処理を実行する。本実施形態においてアプリケーション実行部32は、操作入力受付部31が受け付けたユーザーの操作内容に応じて、各種の処理を実行し、その実行結果を表示装置14の画面に表示させる。また、アプリケーション実行部32は、その処理内容に応じて、操作デバイス20に内蔵された振動機構21を動作させる振動指示を出力してもよい。
[0022]
 触感提示部33は、操作デバイス20に対して、振動機構21を振動させる制御命令を出力する。具体的に触感提示部33は、アプリケーション実行部32が振動指示を出力した場合に、その指示内容に応じた振動を発生させる制御命令を操作デバイス20に対して出力する。これにより操作デバイス20は、例えばアプリケーション実行部32がゲーム等のアプリケーションプログラムを実行する場合に、その処理内容に応じて、ユーザーにゲーム内の衝撃等を表現するための振動を提示することができる。以下では、アプリケーション実行部32が実行する処理の内容に従って振動機構21が発生させる振動を、アプリケーション振動という。
[0023]
 また、触感提示部33は、操作入力受付部31が操作入力を受け付けたタイミングで、ユーザーに触感を提示するための制御命令を出力する。この制御命令に応じて振動機構21が振動を発生させることによって、ユーザーに操作入力に対応した触感が提示される。以下では、ユーザーの操作入力に対応して振動機構21が発生させる振動を、フィードバック振動という。フィードバック振動を発生させることによって、ユーザーが操作デバイス20表面の操作部材を操作した際に、その操作部材そのものが備える物理的な感触とは異なる触感をユーザーに提示することができ、操作感を向上させることができる。
[0024]
 さらに触感提示部33は、操作入力受付部31が受け付けたユーザーの操作内容に応じて、フィードバック振動の内容を変化させる。具体的に、触感提示部33は、ユーザーが操作した操作部材の位置に応じて、操作デバイス20に内蔵されている各振動機構21が発生すべき振動の強さを変化させる。より詳細には、ユーザーが操作した操作部材から各振動機構までの距離に応じて、距離の短い振動機構ほど強い振動を発生させることとする。例えば振動機構21aと振動機構21bの間に配置されたいずれかの操作ボタンをユーザーが操作した場合、触感提示部33は、その操作ボタンから各振動機構21までの距離の比に応じて、各振動機構21に発生させる振動の強さの比を決定する。
[0025]
 一例として、ユーザーが操作ボタン24を操作した場合について説明する。操作ボタン24から振動機構21aまでの距離d1は、操作ボタン24から振動機構21bまでの距離d2の約4倍である。そのため触感提示部33は、振動機構21aと振動機構21bとの出力比が1:4になるように、双方の振動機構21を振動させる。これにより操作デバイス20は、ユーザーが操作した操作ボタン24からは離れた位置に配置された振動機構21a及び21bを用いて、ユーザーが違和感を感じにくい態様でユーザーの操作入力に対応する触感を提示することができる。
[0026]
 また、操作ボタン24よりもさらに振動機構21bに近い位置に配置された操作ボタン23a~23dをユーザーが操作した場合、触感提示部33は、操作ボタン24の例より振動機構21aと振動機構21bとの出力比が大きくなるように、それぞれのフィードバック振動の強さを決定する。あるいは触感提示部33は、距離の比が所定値以上の大きさになる位置の操作部材をユーザーが操作した際には、より近い位置にある振動機構21だけを動作させてもよい。例えば触感提示部33は、操作ボタン22a~22dが操作された場合には振動機構21aだけにフィードバック振動を発生させ、操作ボタン23a~23dが操作された場合には振動機構21bだけにフィードバック振動を発生させてもよい。
[0027]
 さらに触感提示部33は、ユーザーが操作した操作部材の位置に応じて、発生させるフィードバック振動の振動波形を変化させてもよい。例えば触感提示部33は、いずれかの方向に偏った振動波形に基づく振動を各振動機構に発生させることによって、その方向に引っ張られるかのような感覚をユーザーに提示することができる。以下では、このような感覚を疑似力覚といい、疑似力覚を発生させる振動を疑似力覚振動という。触感提示部33は、フィードバック振動として、操作部材が配置された位置に向かう疑似力覚をユーザーに感じさせるような疑似力覚振動を発生させてもよい。具体例として、ユーザーが向かって左側の上方に配置された操作ボタン22aを操作した場合、触感提示部33は、振動機構21aに上方向に向かう疑似力覚振動を発生させる。逆に下方に配置された操作ボタン22cが操作された場合、触感提示部33は、振動機構21aに下方向に向かう疑似力覚振動を発生させる。同様に、操作ボタン23aが操作された場合には振動機構21bに上方向に向かう疑似力覚振動を発生させ、操作ボタン23cが操作された場合には振動機構21bに下方向に向かう疑似力覚振動を発生させる。これにより、ユーザーの操作入力に対応する触感を擬似的に発生させることができる。
[0028]
 また、触感提示部33は、ユーザーが操作した操作部材がどれかに応じて、発生させるフィードバック振動の波形形状や周波数など、波形パターン自体を変化させてもよい。これにより、操作部材ごとに異なる感触の触感を提示することができる。
[0029]
 具体例として、正弦波のパルス波形をフィードバック振動に用いる場合、周波数が高いほど軽い感触に、低いほど重い感触になる。そこで、特定の操作ボタンが操作された場合、比較的低い周波数のパルス波形を、余韻を感じさせるために徐々に弱くしながら繰り返し提示することで、柔らかいボタンを押しているような感触をユーザーに提示することができる。また、アタックが強い(開始直後の振幅が大きい)波形形状のフィードバック振動を発生させることで、硬いボタンを押しているような感触をユーザーに提示することができる。
[0030]
 また、触感提示部33は、ユーザーが操作部材に対して行った操作量や操作の強さを示す指標値を取得し、その指標値に応じてフィードバック振動の強さを変化させてもよい。具体的に、操作部材が操作量を取得可能なアナログボタン等の場合、操作入力受付部31はその操作量を示す数値情報を取得する。触感提示部33は、取得された操作量の数値に応じて、フィードバック振動の強さを決定する。あるいは、操作部材の表面に感圧センサー等が配置され、ユーザーの押圧操作の強さを検出可能な場合、触感提示部33は、その操作の強さを示す数値に応じて、フィードバック振動の強さを決定してもよい。
[0031]
 一例として、触感提示部33は、感圧センサーの検出値が10以上の場合には振幅0.1の振動を発生させ、100以上の場合には振幅1.0の振動を発生させるなど、検出値に応じて発生させる振動の振幅の強さを変化させる。なお、この例において触感提示部33は、感圧センサーの検出値が所定のオフセット値を超えるまではフィードバック振動を発生させないこととしてもよい。
[0032]
 さらに、触感提示部33は、操作量や操作の強さを示す指標値に応じて、フィードバック振動の強さだけでなく、フィードバック振動の発生タイミングを変化させてもよい。具体的に触感提示部33は、操作量が所定の閾値を超えたタイミングでフィードバック振動を発生させることにより、操作中に段階的に変化する触感を提示することができる。
[0033]
 一例として、0(無操作)から1.0(最大量)までの範囲の数値で操作量を取得可能なアナログボタンをユーザーが操作する場合について、説明する。触感提示部33は、取得される操作量が0.5を超えたタイミング、及び1.0に到達したタイミングのそれぞれでフィードバック振動を発生させる。これにより、二段階で押し込み可能なボタンを操作しているかのような触感をユーザーに提示できる。さらに、中間段階では比較的軽い感触を、操作量が最大量になったときには重い感触を、それぞれ提示するなど、閾値毎に提示するフィードバック振動の内容を変化させてもよい。
[0034]
 あるいは触感提示部33は、操作量が0.1増加するごとに比較的短いフィードバック振動を提示するなどして、操作中の感触を段階的にユーザーに提示してもよい。このように複数回にわたって振動を提示する例において、ユーザーが一気にアナログボタンを操作した場合には、途中のフィードバック振動を省略してもよいし、複数回のフィードバック振動を操作完了後に順次発生させてもよい。このような制御によれば、操作が行われている途中の感触を細かくユーザーに提示して、ボタンを押し込む際の摩擦感や押し込みづらさなどを表現することができる。
[0035]
 なお、人間の感じる圧力の大きさに関して、スティーヴンスのべき法則が存在することが知られている。そのことを考慮して、触感提示部33は、操作量が一定間隔(例えば0.1)増加するごとにフィードバック振動を提示してもよいが、閾値の間の間隔が徐々に増加するような複数の閾値を用いて、フィードバック振動の発生タイミングを決定してもよい。具体例として、触感提示部33は、操作量が0から1.0の数値範囲で定義される場合に、0.1、0.2、0.3という一定間隔ではなく、0.1、0.3、0.6、1.0のように、間隔が徐々に大きくなるような複数の閾値を超えるごとに、フィードバック振動を提示することとする。これにより、人間の操作感覚と合致したフィードバックを与えることが可能になる。
[0036]
 以上の説明では、操作量や操作の強さを示す指標値の絶対値に応じてフィードバック振動の発生タイミングを決定することとしたが、触感提示部33は、このような指標値の単位時間当たりの変化量に応じて、フィードバック振動を発生させるか否か、また発生させるフィードバック振動の強さなどを決定してもよい。
[0037]
 具体例として、触感提示部33は、所定時間おきにその時点の感圧センサーの検出値を取得することとする。そして、新たに取得した検出値が、前回の検出値よりも所定閾値以上上昇していた場合に、フィードバック振動を発生させる。例えば閾値が10で所定時間おきに取得された感圧センサーの検出値が0,12,21,83であった場合、2回目の感圧値取得時には0から12に変化しており変化量12が閾値10以上なので、所定のフィードバック振動を発生させる。3回目の取得時には変化量21-12=9は閾値10未満なので、フィードバック振動を発生させない。4回目の取得時には変化量62が閾値10以上なので、フィードバック振動を発生させる。このとき触感提示部33は、提示するフィードバック振動の強さを変化量に応じて変化させてもよい。また、変化量に応じてフィードバック振動の提示回数を決定してもよい。例えば上述の例では4回目の取得時には変化量62が閾値10の6倍以上なので、6回のフィードバック振動を発生させることとしてもよい。
[0038]
 また、触感提示部33は、操作部材に対する操作が短時間に繰り返される場合、フィードバック振動の提示を制限してもよい。例えばアナログボタンをユーザーが連打している場合、それぞれの操作に対してフィードバック振動を提示することが難しくなる。そこで触感提示部33は、短時間に繰り返し操作が行われていると判定される場合、フィードバック振動の発生指示を制限する。具体的に、例えば触感提示部33は、操作量が閾値を超える回数が所定時間内に所定回数を超えた場合、フィードバック振動の発生指示を制限する。また、触感提示部33は、操作量や操作の強さを示す数値の時間変化が所定の閾値を超えた場合に、フィードバック振動の発生指示を制限してもよい。なお、触感提示部33は、ユーザーが操作部材に対する操作を繰り返す場合であっても、初回の操作に対するフィードバック振動は発生させることとしてもよい。
[0039]
 さらに、操作量や操作の強さを直接取得する機構を備えていない操作部材をユーザーが操作した場合であっても、触感提示部33は、操作デバイス20に設けられた他のセンサーによってユーザーが行った操作の強さを推定してもよい。例えば操作デバイス20に加速度センサー等のモーションセンサーが内蔵されている場合、触感提示部33は、操作部材が操作を受け付けたタイミングにおけるモーションセンサーの検出結果を参照して、操作の強さを推定してもよい。ユーザーの操作の瞬間に操作デバイス20に加速度が加わったと判定される場合、その加速度の大きさが操作の強さを表すと推定できる。そこで触感提示部33は、検出された加速度の大きさに応じて、フィードバック振動の強さを変化させる。
[0040]
 あるいは触感提示部33は、操作デバイス20に設けられたマイクロホンが集音する音声信号に応じて、操作の強さを推定してもよい。操作ボタンをユーザーが操作する際には、操作音が発生する。マイクロホンを用いてこの操作音を集音することによって、触感提示部33は、その音量から操作の強さを推定することができる。推定された操作の強さに応じてフィードバック振動の強さを変化させることで、ユーザーの操作入力の強さに連動したフィードバック振動を発生させることができる。
[0041]
 また、アプリケーション振動とフィードバック振動を同時に発生させるべき場合、触感提示部33は、両者の振動波形を合成した振動を発生させる制御命令を出力する。これにより操作デバイス20は、単に触感提示部33が出力する制御命令に応じた振動を発生させるだけで、アプリケーション振動とフィードバック振動の双方をユーザーに提示できる。
[0042]
 この場合において、アプリケーション振動のピークとフィードバック振動のピークがタイミング的に重なる場合、フィードバック振動がユーザーに認識されなくなってしまうおそれがある。そこでこのような場合、触感提示部33は、フィードバック振動の発生タイミングを遅延させる補正処理を実行してもよい。
[0043]
 図4は、このような補正処理の内容を説明する図である。図の1段目(最上段)はアプリケーション振動の波形を示しており、2段目はユーザーの操作入力に応じたフィードバック振動の本来の発生タイミングを示している。補正処理を実行せずにこの両者をそのまま合成した場合、図の3段目に示すように、フィードバック振動の発生タイミングが分かり難い波形になってしまう。そこで触感提示部33は、図の4段目に示すように、フィードバック振動の波形を遅延させる補正処理を実行する。補正されたフィードバック振動の波形を1段目に示すアプリケーション振動の波形と合成すると、図の5段目(最下段)に示すような波形が得られる。このような波形に従って振動機構21を動作させることにより、フィードバック振動をユーザーに認識させやすくすることができる。
[0044]
 あるいは触感提示部33は、フィードバック振動の発生タイミングを変化させる代わりに、フィードバック振動とタイミングが重なるアプリケーション振動の振幅を小さくする補正処理を実行してもよい。具体的に、例えば触感提示部33は、フィードバック振動の発生期間、及びその前後所定期間にわたって提示されるアプリケーション振動の振幅を、所定割合だけ小さくする。このような制御によれば、フィードバック振動の発生をユーザーに認識させやすくすることができる。さらにこの場合において、触感提示部33は、アプリケーション振動の振幅を瞬間的に小さく変化させるのではなく、徐々に小さくなるように補正してもよい。
[0045]
 また、操作デバイス20が複数の振動機構21を備えている場合、触感提示部33は、アプリケーション振動とフィードバック振動を同時期に発生させる際には、それぞれの振動を別の振動機構21に提示させてもよい。例えば触感提示部33は、アプリケーション振動とフィードバック振動のタイミングが重なる場合、アプリケーション振動を振動機構21aから発生させ、フィードバック振動を振動機構21bから発生させる。この例では、触感提示部33は、両者の振動波形を合成することなく、それぞれ独立の制御命令として、発生させるべき振動機構21を指定する情報とともに操作デバイス20に対して送信する。これにより、フィードバック振動をユーザーに認識させやすくすることができる。
[0046]
 なお、触感提示部33は、アプリケーション振動をいずれか一つの振動機構21から発生させるとともに、フィードバック振動については複数の振動機構21から発生させる制御を行ってもよい。例えば触感提示部33は、二つの振動を合成した振動を振動機構21aに発生させ、振動機構21bにはフィードバック振動のみを発生させる。逆に、フィードバック振動を一つの振動機構21から発生させるとともに、アプリケーション振動については複数の振動機構21から発生させることとしてもよい。このような制御によっても、複数の振動機構21が互いに異なる振動を発生させるため、フィードバック振動をユーザーが認識しやすくなる。
[0047]
 さらに本実施形態において、操作デバイス20は、各操作ボタンから離れた位置に配置されている振動機構21によるフィードバック振動を効果的にユーザーに伝達するために、以下に説明するような構造を備えてもよい。図5は、この例における操作デバイス20の右側の把持部を通る断面を右側から見た様子を模式的に示している。この図の例では、振動機構21bの一端は構造体25に固定されている。また、操作ボタン23a~23dが配置された基板も、構造体25に連結されており、構造体25が振動すると連動して操作ボタン23a~23dも振動するようになっている。
[0048]
 一方、振動機構21bの構造体25に固定されている側の端部と逆側の端部は、支持体26によって支持されている。ここで、支持体26は、構造体25よりも剛性が低い素材で形成されており、構造体25からは分離して配置されている。例えば支持体26は、スポンジ等で形成されてよい。このように、振動機構21bの操作部材に近い側の端部を、反対側の端部よりも剛性が高い部材に固定し、かつ剛性が高い部材が操作部材と連動するようにすることで、振動機構21bが発生させる振動をユーザーの指に伝達しやすくすることができる。これにより、ユーザーが操作入力に対応する触感を感じやすくなる。
[0049]
 以上の説明では、操作デバイス20と通信接続された、操作デバイス20とは独立の情報処理装置10が、本発明の一実施形態に係る制御装置として機能することとした。しかしながら、本発明の実施の形態に係る制御装置は、操作デバイス20と一体に構成されてもよい。すなわち、操作デバイス20に内蔵されるマイクロコンピュータ等が、本発明の実施の形態に係る制御装置として機能することとしてもよい。この場合、操作デバイス20内の制御装置が、前述した操作入力受付部31及び触感提示部33の機能の少なくとも一部を実現する。これにより制御装置は、外部と通信することなく、操作デバイス20の筐体表面に設けられた操作部材に対するユーザーの操作入力に応じたフィードバック振動を発生させることができる。そのため、通信による遅延が生じにくく、ユーザーの操作に対して直ちに触感を提示することができる。
[0050]
 なお、この例においても、操作デバイス20内の制御装置は、情報処理装置10から送信される制御命令に応じて振動機構21を動作させてもよい。この場合、振動機構21は、情報処理装置10からの制御命令に応じてアプリケーション振動を発生させるとともに、ユーザーの操作入力に応じたフィードバック振動も発生させることになる。
[0051]
 さらにこの例において、フィードバック振動の内容は、予め情報処理装置10から指定されることとしてもよい。具体的に、情報処理装置10は、フィードバック振動の振動波形を示す振動データを、空き時間等に予め操作デバイス20内の制御装置に対して送信する。例えば情報処理装置10がゲームプログラムを実行している場合、シーンの切り替えやゲームのロード等のために、ゲームのプレイが中断されるタイミングが生じる。情報処理装置10は、このようなタイミングにおいて、振動データを操作デバイス20に送信する。操作デバイス20内の制御装置は、受信した振動データをメモリ内に格納する。そして、その後にユーザーが操作部材を操作したときには、メモリ内の振動データを読み出して、その内容に応じた振動を振動機構21に発生させる。こうすれば、通信遅延を回避しながら、情報処理装置10の要求に応じたフィードバック振動を発生させることができる。
[0052]
 この例において、情報処理装置10の制御部11は、処理の進行に伴って、新しい振動データを操作デバイス20に対して送信し、古い振動データを上書きさせてもよい。これにより、処理の進行とともにフィードバック振動の内容を変化させることができる。
[0053]
 図6は、情報処理装置10から操作デバイス20に送信される振動データの内容の具体例を示している。この図の例では、操作ボタンごとに、波形データのデータ種別(PCM波形データか、周波数及び波形形状によって特定される波形データか)、及び波形データの内容が格納される。また、操作ボタンの押下時に振動を発生させるか否か、解放時に振動を発生させるか否か、操作中繰り返し振動を発生させるか否かのそれぞれを指定するフラグ情報が含まれてもよい。また、繰り返し振動を発生させる場合、繰り返し周期(繰り返しの時間間隔)や、ボタン押下後繰り返し振動を開始するまでの遅延時間を指定する情報が含まれてもよい。さらに、アプリケーションプログラムが当該操作ボタンを使用しない場合(すなわち、当該操作ボタンに対する操作入力がアプリケーションプログラムに無視される場合)にどのような制御をすべきかを指定する情報が含まれてもよい。具体的にこの操作ボタン未使用時の動作を指定する情報は、当該操作ボタンに対する操作入力があった場合に他の操作ボタンと同様のフィードバック振動を発生させるか、何も振動を発生させないか、あるいは通常のフィードバック振動とは別の警告のための振動を発生させるか、が指定されてよい。このような各種の情報を含んだ振動データを予め受信し、ユーザーの操作が行われた場合にその操作内容に応じて振動機構21を動作させることで、操作デバイス20の制御装置は、リアルタイムにフィードバック振動を発生させることができる。
[0054]
 なお、操作デバイス20内のメモリに格納される振動波形のデータは、時刻歴の波形データであってもよいし、sin関数などの関数式によって記述されてもよい。また、格納される振動波形のデータは、振動機構21が発生させる振動そのままの波形を示すデータであってもよいし、合成して用いられる基本波形のデータであってもよい。
[0055]
 基本波形のデータが使用される場合、例えば操作デバイス20の出荷時などにおいて、複数種類の基本波形のデータが予めメモリ内に格納される。情報処理装置10は、前述した図6に示すような振動波形そのものの内容を示すデータを送信する代わりに、どの基本波形を使用するか、どのように合成するかなどを指定する波形指定情報を、操作デバイス20に対して送信する。操作デバイス20内の制御装置は、波形指定情報の内容に従ってメモリ内に格納されている基本波形に基づいて実際に使用する振動波形を生成する。そして、生成した振動波形に従って振動機構21を振動させる。
[0056]
 具体例として、100Hzの1周期分の正弦波の波形(基本波形A)、及びのこぎり波の波形(基本波形B)がそれぞれ基本波形として用意されているものとする。これに対して情報処理装置10は、基本波形の種類、振幅、再生時間、再生速度、加算条件等を指定する波形指定情報を送信する。例えば情報処理装置10は、「基本波形Aを振幅0.5、再生時間50ms、再生速度1.0で再生」といった内容を含む波形指定情報を送信する。この場合操作デバイス20内の制御装置は、基本波形Aを加工して実際の振動波形を生成する。あるいは情報処理装置10は、「時刻0~100msで、基本波形Aを振幅0.5、再生速度1.0、基本波形Bを振幅0.4で加算して合成」というように、複数の基本波形それぞれの振幅や再生速度を指定して両者を合成させる波形指定情報を送信してもよい。あるいは、複数の波形を時間方向で接続して「時刻0~100msで、基本波形Aを振幅0.8、再生速度0.8で出力、時刻100ms~200msで、基本波形Bを振幅0.4、再生速度1.2で出力」といった情報を指定してもよい。
[0057]
 なお、基本波形が正弦波などの関数によって記憶されている場合、情報処理装置10は、振幅、周波数、長さなどのパラメータを波形指定情報として送信し、格納されている関数に基づいて実際の振動波形を生成することとしてもよい。この場合のパラメータは、固定値であってもよいが、時間とともに変化する値であってもよい。例えば振幅の時間変化(エンベロープ)を指定する波形指定情報を送信することで、時間とともに振幅が変化する振動をユーザーに提示できる。このような制御によれば、操作デバイス20内には限られた数の基本波形しか格納していないにもかかわらず、アプリケーションプログラムの要求に応じて多様な振動を発生させることができる。
[0058]
[第2の実施形態]
 以下、本発明の第2の実施形態について、説明する。本実施形態では、操作デバイスの形状、及び配置される操作部材等が第1の実施形態とは相違している。一方で、情報処理装置10が実現する機能は、一部第1の実施形態と共通する。そこで、第1の実施形態と共通する構成要素、及び機能については、第1の実施形態と同一の符号で参照し、その詳細な説明は省略する。
[0059]
 本実施形態において制御装置として機能する情報処理装置10は、図7に例示するような操作デバイス40と接続されている。操作デバイス40は、本体部41と本体部41に取り付けられた固定具42とを備えており、ユーザーは固定具42に自身の手のひらを通して本体部41を手で把持して使用する。
[0060]
 本体部41の前面側には、ユーザーの人差し指で操作されるトリガーボタン43と、ユーザーの中指で操作される感圧センサー44と、が配置されている。ユーザーが中指で感圧センサー44の表面を押圧する操作を行うと、感圧センサー44はその圧力を検知し、情報処理装置10に対して送信する。また、本体部41には振動機構45が内蔵されており、ユーザーが感圧センサー44に対して押圧操作を行った際には、この振動機構45を動作させることによってユーザーに触感を提示する。これにより、感圧センサー44自体は一般的な操作ボタンなどのように物理的に押し込むことができないにもかかわらず、ユーザーは感圧センサー44を擬似的に操作ボタンのように操作することができる。
[0061]
 情報処理装置10の操作入力受付部31は、ユーザーの操作内容を表す情報として、感圧センサー44の検出結果を操作デバイス40から取得する。触感提示部33は、この感圧センサー44の検出結果に応じて、振動機構45にフィードバック振動を発生させる。
[0062]
 触感提示部33は、感圧センサー44が検出した圧力値が所定の閾値Thを超えた場合に、フィードバック振動を発生させる制御命令を出力する。これに応じて振動機構45が動作することにより、押圧操作に応じた触感がユーザーに提示される。
[0063]
 さらに触感提示部33は、感圧センサー44の圧力値が実際に閾値Thを超えたタイミングではなく、所定時間後に閾値Thを超えると予想されたタイミングで、フィードバック振動を発生させる制御命令を出力してもよい。触感提示部33が制御命令を出力してから実際に振動機構45が動作を開始するまでには、タイムラグが生じる。特に情報処理装置10と操作デバイス40とが無線によって接続されている場合、制御命令が操作デバイス40に到達するまでにある程度の時間がかかるため、ユーザーが押圧操作を行ってからフィードバック振動が開始するまでに遅延が生じることになる。そこで触感提示部33は、所定時間おきに、その時点までの過去の圧力値の時間変化(すなわち、過去複数回の感圧センサー44の検出値)に基づいて、その時点から時間Tが経過した後の圧力値を予測する。そして、予測値が閾値Thを超えると判定された場合、そのタイミングでフィードバック振動の制御命令を出力する。これにより、圧力値が閾値Thを超えるタイミングで直ちにフィードバック振動を発生させることができる。
[0064]
 図8はこのような制御の具体例について説明する図であって、感圧センサー44が検出する圧力値の時間変化を示している。この例では、時刻t1において、それまでの圧力値の時間変化を元に算出される時刻(t1+T)における圧力値の予測値が、閾値Thを超えることになる。そこで触感提示部33は、このタイミングでフィードバック振動の制御命令を出力する。
[0065]
 また、触感提示部33は、操作入力が行われた際の操作デバイス40の状態に基づいて、フィードバック振動を開始すると判定するための閾値Thを変化させてもよい。この例では、操作入力受付部31は、感圧センサー44が検出する圧力値のほかにも、その圧力値が得られた際の操作デバイス40の状態に関する情報を取得する。
[0066]
 具体的に、例えば操作入力受付部31は、操作デバイス40に内蔵された加速度センサー等のモーションセンサーの検出結果を取得する。触感提示部33は、モーションセンサーの検出結果から操作デバイス40が運動していると判定された場合、閾値Thを大きくする。これは、ユーザーが操作デバイス40を振ったりしたときには、意図せず感圧センサー44に圧力が加わるためである。なお、触感提示部33は、その時点における移動速度に応じて、移動速度が大きければ大きいほど閾値Thを大きく変更してもよい。
[0067]
 また、触感提示部33は、操作デバイス40の状態に関する情報の一つとして、他の操作部材に対する操作入力の有無を示す情報を取得してもよい。例えば操作入力受付部31がトリガーボタン43に対する操作入力を受け付けた場合、触感提示部33は、感圧センサー44の圧力値に対する閾値Thを大きくしてもよい。ユーザーが人差し指でトリガーボタン43を押し込む操作を行っている場合、中指にも無意識に力が加わると想定される。そこで、ユーザーが他の指で操作入力を行っている場合には閾値Thを大きくすることで、誤検出を避けることができる。
[0068]
 以上説明したように、本発明の各実施形態に係る制御装置によれば、操作デバイスに対するユーザーの操作入力に応じた触感を提示する場合に、より操作感を向上できる態様で触感を提示できる。
[0069]
 なお、本発明の実施の形態は、以上説明したものに限られない。例えば以上の説明において触感提示部33が実行することとした処理の少なくとも一部は、アプリケーションプログラムによって実現されてもよい。例えば、アプリケーション実行部32が、操作入力受付部31が受け付けた操作入力の内容に応じたフィードバック振動の内容を決定し、アプリケーション振動と同様にしてフィードバック振動を発生させる振動指示を出力してもよい。
[0070]
 また、以上の説明では振動機構が振動を発生させることによりユーザーの操作入力に対応した触感を提示することとしたが、これに限らず操作デバイスは、例えば力覚提示機構等、各種の触感提示機構によってユーザーの操作入力に対応した触感を提示してもよい。この場合にも、力覚提示機構が提示する力覚の強さや内容を、ユーザーが操作した操作部材の配置位置等に応じて決定することで、操作感を向上することができる。

符号の説明

[0071]
 10 情報処理装置、11 制御部、12 記憶部、13 インタフェース部、14 表示装置、20 操作デバイス、21 振動機構、22a~22d,23a~23d,24 操作ボタン、25 構造体、26 支持体、31 操作入力受付部、32 アプリケーション実行部、33 触感提示部、40 操作デバイス、41 本体部、42 固定具、43 トリガーボタン、44 感圧センサー、45 振動機構。

請求の範囲

[請求項1]
 操作部材、及び触感提示機構を備える操作デバイスと接続される操作デバイスの制御装置であって、
 前記操作部材に対するユーザーの操作入力を受け付ける操作入力受付部と、
 前記操作入力を受け付けた際に前記触感提示機構を動作させることによって、前記操作入力に対応する触感を前記ユーザーに提示する触感提示部と、
 を含み、
 前記触感提示部は、前記操作入力受付部が受け付けた操作入力の内容に応じて、前記ユーザーに提示する触感の内容を変化させる
 ことを特徴とする操作デバイスの制御装置。
[請求項2]
 請求項1に記載の操作デバイスの制御装置において、
 前記操作デバイスは、複数の操作部材を備え、
 前記操作入力受付部は、前記複数の操作部材のいずれかに対する前記ユーザーの操作入力を受け付け、
 前記触感提示部は、前記ユーザーが操作した操作部材の前記操作デバイス上の配置位置に応じて、前記ユーザーに提示する触感の内容を変化させる
 ことを特徴とする操作デバイスの制御装置。
[請求項3]
 請求項2に記載の操作デバイスの制御装置において、
 前記操作デバイスは、前記触感提示機構として複数の振動機構を備え、
 前記触感提示部は、前記複数の振動機構それぞれに、前記配置位置に応じて決まる強さで振動を発生させることによって、前記ユーザーに前記操作入力に対応する触感を提示する
 ことを特徴とする操作デバイスの制御装置。
[請求項4]
 請求項2に記載の操作デバイスの制御装置において、
 前記触感提示部は、前記ユーザーが操作した操作部材の前記操作デバイス上の配置位置に応じた向きの疑似力覚を提示する
 ことを特徴とする操作デバイスの制御装置。
[請求項5]
 請求項1に記載の操作デバイスの制御装置において、
 前記触感提示部は、前記ユーザーによる前記操作部材に対する操作入力の強さを示す情報を取得し、当該取得した情報に応じて、前記ユーザーに提示する触感の強さを変化させる
 ことを特徴とする操作デバイスの制御装置。
[請求項6]
 請求項1に記載の操作デバイスの制御装置において、
 前記触感提示部は、前記ユーザーによる前記操作部材に対する操作入力の強さを示す情報を取得し、当該取得した情報に応じて、前記ユーザーに触感を提示するタイミングを決定する
 ことを特徴とする操作デバイスの制御装置。
[請求項7]
 請求項1に記載の操作デバイスの制御装置において、
 前記操作部材は感圧センサーであって、
 前記操作入力受付部は、前記感圧センサーに対するユーザーの押圧操作を受け付け、
 前記触感提示部は、前記操作入力受付部が前記押圧操作を受け付けた際における前記操作デバイスの状態に応じて、前記ユーザーに提示する触感の内容を変化させる
 ことを特徴とする操作デバイスの制御装置。
[請求項8]
 請求項7に記載の操作デバイスの制御装置において、
 前記触感提示部は、前記感圧センサーが検出した過去の圧力値の時間変化に応じて、前記触感の提示タイミングを決定する
 ことを特徴とする操作デバイスの制御装置。
[請求項9]
 請求項8に記載の操作デバイスの制御装置において、
 前記触感提示部は、前記感圧センサーが検出した過去の圧力値の時間変化に応じて、圧力値が所与の閾値を超えるタイミングを推定し、当該推定の結果に応じて前記触感の提示タイミングを決定する
 ことを特徴とする操作デバイスの制御装置。
[請求項10]
 請求項7に記載の操作デバイスの制御装置において、
 前記触感提示部は、前記感圧センサーが検出する圧力値が所与の閾値を超えるタイミングで前記触感の提示を開始し、前記操作デバイスが移動中か否かに応じて、前記閾値を変化させる
 ことを特徴とする操作デバイスの制御装置。
[請求項11]
 請求項7に記載の操作デバイスの制御装置において、
 前記触感提示部は、前記感圧センサーが検出する圧力値が所与の閾値を超えるタイミングで前記触感の提示を開始し、前記操作デバイスが備える他の操作部材に対する操作入力の有無に応じて、前記閾値を変化させる
 ことを特徴とする操作デバイスの制御装置。
[請求項12]
 操作部材と、
 当該操作部材に連結される構造体と、
 一端が前記構造体に固定され、他端が別の支持体によって支持される振動機構と、
 を備え、
 前記構造体は、前記別の支持体よりも剛性が高い
 ことを特徴とする操作デバイス。
[請求項13]
 操作部材、及び触感提示機構を備える操作デバイスの制御方法であって、
 前記操作部材に対するユーザーの操作入力を受け付ける操作入力受付ステップと、
 前記操作入力を受け付けた際に前記触感提示機構を動作させることによって、前記操作入力に対応する触感を前記ユーザーに提示する触感提示ステップと、
 を含み、
 前記触感提示ステップでは、前記操作入力受付ステップで受け付けた操作入力の内容に応じて、前記ユーザーに提示する触感の内容を変化させる
 ことを特徴とする操作デバイスの制御方法。
[請求項14]
 操作部材、及び触感提示機構を備える操作デバイスを制御するためのプログラムであって、
 前記操作部材に対するユーザーの操作入力を受け付ける操作入力受付部、及び、
 前記操作入力を受け付けた際に前記触感提示機構を動作させることによって、前記操作入力に対応する触感を前記ユーザーに提示する触感提示部、
 としてコンピュータを機能させ、
 前記触感提示部は、前記操作入力受付部が受け付けた操作入力の内容に応じて、前記ユーザーに提示する触感の内容を変化させる
 ことを特徴とするプログラム。

図面

[ 図 1]

[ 図 2]

[ 図 3]

[ 図 4]

[ 図 5]

[ 図 6]

[ 図 7]

[ 図 8]