(58)【調査した分野】(Int.Cl.,DB名)
変動した前記出力パラメータが前記ハプティック効果信号の振幅及び周波数であり、前記振幅及び周波数が物理的に誘発される確率事象モデリングアルゴリズムを用いて変動される、請求項1に記載の方法。
【発明を実施するための形態】
【0007】
一実施形態は、高解像度(「HD」)アクチュエータと共に使用するための振動型ハプティック効果を生成するハプティック効果生成システムである。ハプティック効果は、ハプティック「プリミティブ」の形態で表され、時間、継続時間および振幅などのパラメータがハプティック効果を定義するために使用され、次いでそのパラメータがエンジンにより解釈され、出力パラメータを含み、HDアクチュエータに適用されるモータ電圧信号に変換される。
【0008】
ERMおよびLRA型のアクチュエータは、それらが、ハプティック効果を生成する場合、限定された周波数範囲を有する「低解像度」アクチュエータとみなされ得る。対照的に、圧電、電気活性高分子または静電ベースのアクチュエータなどのHDアクチュエータは、より速いランプアップ時間および大きなダイナミックレンジと共により高い周波数成分を出力できる。したがって、HDアクチュエータにより生成されるハプティック効果は、低解像度アクチュエータにより生成されるものより鮮やか(リッチ、richer)であり、より本物にそっくり(lifelike)であり得る。低解像度アクチュエータのために開発されたハプティック効果パラメータ/プリミティブは一般に、HDアクチュエータを用いて使用できるが、それらは一般にこれらの高解像度特性の利点を有さない。さらに、HDプリミティブは、振幅などの単一のパラメータを有し得るだけである低解像度プリミティブより多くのパラメータを含み得る。
【0009】
図1は本発明の一実施形態に係る触覚的に使用可能なシステム10のブロック図である。システム10は、タッチセンサ面11またはハウジング15内に取り付けられる他の種類のユーザインターフェースを備え、メカニカルキー/ボタン13を備えてもよい。システム10の内部は、システム10において振動を生成するハプティックフィードバックシステムである。一実施形態において、振動はタッチ面11で生成される。
【0010】
ハプティックフィードバックシステムはプロセッサまたはコントローラ12を備える。プロセッサ12にメモリ20およびアクチュエータ駆動回路16が接続され、該アクチュエータ駆動回路16はHDアクチュエータ18(例えば圧電、電気活性高分子など)に接続される。一部の実施形態において、HDアクチュエータ18は、マクロファイバー複合体(Macro Fiber Composite)(「MFC」)アクチュエータなどの変形可能なアクチュエータであってもよい。プロセッサ12は、任意の種類の汎用プロセッサであってもよいか、または特定用途向け集積回路(「ASIC」)などのハプティック効果を提供するように特別に設計されたプロセッサであってもよい。プロセッサ12は、全システム10を作動する同じプロセッサであってもよいか、または別個のプロセッサであってもよい。プロセッサ12は、どのようなハプティック効果が行われるか、およびその効果が高レベルパラメータに基づいて行われる順序を決定できる。一般に、特定のハプティック効果を定義する高レベルパラメータには、振幅、周波数および持続時間が含まれる。ストリーミングモータコマンドなどの低レベルパラメータも、特定のハプティック効果を決定するために使用されてもよい。ハプティック効果は、該ハプティック効果が生成されるときのこれらのパラメータのいくらかの変動、またはユーザの相互作用に基づくこれらのパラメータの変動を含む場合、「ダイナミック(動的)である」と見なすことができる。
【0011】
プロセッサ12は、アクチュエータ駆動回路16に制御信号を出力し、該アクチュエータ駆動回路16は、所望のハプティック効果をもたらすために、必要とされる電流及び電圧(すなわち「モータ信号」)をHDアクチュエータ18に供給するために用いられる電子要素及び回路を含む。システム10は1つより多いHDアクチュエータ18(または追加の種類のアクチュエータ)を備えてもよく、各HDアクチュエータは、全て共通のプロセッサ12に接続される別個の駆動回路16を備えてもよい。メモリ装置20は、ランダムアクセスメモリ(「RAM」)またはリードオンリーメモリ(「ROM」)などの任意の種類の記憶装置またはコンピュータ可読媒体であってもよい。メモリ20は、作動システム命令などのプロセッサ12によって実行される命令を格納する。命令の中で、メモリ20は、プロセッサ12によって実行される場合、以下により詳細に開示するように、HDハプティック効果プリミティブからHDハプティック効果信号(すなわち駆動回路16を介してHDアクチュエータ18に適用されるモータ信号)を生成する命令であるHDハプティック効果生成モジュール22を含む。メモリ20はまた、プロセッサ12の内部に位置してもよいし、または内部メモリおよび外部メモリの任意の組み合わせであってもよい。
【0012】
タッチ面11は、タッチを認識し、その面上のタッチの位置および大きさ(振幅)も認識できる。タッチに対応するデータは、プロセッサ12またはシステム10内の別のプロセッサへ送信され、プロセッサ12は、そのタッチを解釈し、それに応答してハプティック効果信号を生成する。タッチ面11は、容量感知、抵抗感知、表面音波感知、圧力感知、光学感知などを含む、任意の感知技術を用いてタッチを感知できる。タッチ面11は、マルチタッチ接触を感知でき、同時に生じる複数のタッチを区別することが可能であり得る。タッチ面11は、ユーザがキー、ダイヤルなどと相互作用するために画像を生成し、表示するタッチスクリーンであってもよく、または画像を最小限だけ有するかもしくは全く有しないタッチパッドであってもよい。
【0013】
システム10は、携帯電話、携帯情報端末(「PDA」)、スマートフォン、コンピュータタブレット、ゲーム機などの携帯用デバイスであってもよく、またはユーザインターフェースを提供し、1つ以上のアクチュエータを含むハプティック効果システムを備える任意の他の種類のデバイスであってもよい。ユーザインターフェースは、タッチセンサ面であってもよく、またはマウス、タッチパッド、ミニジョイスティック、スクロールホイール、トラックボール、ゲームパッドもしくはゲーム機などの任意の他の種類のユーザインターフェースであってもよい。システム10はまた、1つ以上のセンサを備えてもよい。一実施形態において、センサの1つはシステム10の加速度を測定する加速度計(図示せず)である。
【0014】
ダイナミック(動的)ハプティック効果とは、1つ以上の入力パラメータに応答して時間と共に変化するハプティック効果を指す。ダイナミックハプティック効果は、所与の入力信号の状態の変化を表すためにシステム10などのハプティックデバイスに表示されるハプティックまたは振動触覚効果である。入力信号は、位置、加速度、圧力、方向、または近接などのハプティックフィードバックと共にデバイス上のセンサによりキャプチャされる信号、あるいは他のデバイスによりキャプチャされ、ハプティック効果の生成に影響を与えるハプティックデバイスに送信される信号であってもよい。
【0015】
ダイナミック効果信号は、任意の種類の信号であってもよいが、必ずしも複雑でなくてもよい。例えば、ダイナミック効果信号は、時間と共に変化するか、または入力パラメータを効果信号の変化特性上にマッピングするマッピングスキーマに従ってリアルタイムで応答する位相、周波数、または振幅などの一部の特性を有する簡単な正弦波であってもよい。入力パラメータはデバイスにより提供できる任意の種類の入力であってもよく、典型的に、デバイスセンサ信号などの任意の種類の信号であってもよい。デバイスセンサ信号は任意の手段により生成されてもよく、典型的にデバイスを用いてユーザジェスチャをキャプチャすることにより生成されてもよい。ダイナミック効果はジェスチャインターフェースに非常に有用であり得るが、ジェスチャまたはセンサの使用は、ダイナミック信号を生成するのに必ずしも必要ではない。
【0016】
一実施形態は、楽器の現実的な機械的シミュレーションを生成するためにHDハプティック効果を使用する。
図2は、一実施形態に従ってシミュレートされる楽器の選択可能なグラフィックイメージを含むシステム10の斜視図である。表示した楽器は、マラカス202、エッグシェイカー204、シェケレ206、カバサ208、カウベル210、およびウォッシュボード212を含む。ユーザは1つの楽器を選択でき、実際の楽器と相互作用しているようにシステム10と相互作用できる。例えば、マラカス202が選択される場合、システム10は振られてもよく、適切なハプティック効果信号をHDアクチュエータ18に提供することによって実際にマラカスを振っている感覚を提供するHDハプティック効果が生成される。したがって、ユーザがシステム10などのモバイル機器を振っている間、電話内でマラカス「ビーズ」がぶつかっている感覚を再現するかまたは提供するHDハプティック効果の生成に起因して、ユーザは実際のマラカスを振っているかのようなハプティック効果を感じる。同様に、カウベル210が、音およびその対応するハプティック効果のためにタップされてもよく、またはカウベルが動作しているかのようにデバイス全体が動作してもよい。それに応じて、ベルの重量の感覚を含む、ベルノッカー(ベルを鳴らす人(bell knocker))がカウベルを両側に動かしているかのように実際のカウベルが動作しているかのようにユーザが感じるHDハプティック効果が生成される。
【0017】
周波数に基づいたHDハプティック効果生成
周波数変動
一実施形態は、周波数変動および周波数変調(「FM」)を用いてHDハプティックプリミティブからハプティック効果信号を生成する。一実施形態において、生成されたHDハプティック効果信号の周波数はシステム10の加速度計により生成された加速度信号などの対応する入力センサ信号に基づいて変動する。対照的に、一部の従来技術の低解像度ハプティック効果システムは、時間と共に振幅の変動のみを可能にするが、周波数は一定を維持している。
【0018】
一実施形態において、オーディオ信号を生成する用途のために知られている以下の式も、HDプリミティブからHDハプティック効果信号を生成するために使用されてもよい。
【数1】
式中、4つの入力HDハプティック効果パラメータ、振幅「a
c」および「a
m」(それぞれ搬送および変調振幅)ならびに周波数「f
c」および「f
m」(それぞれ搬送および変調周波数)が
図1のモジュール22に入力され、それに応じてHDハプティック効果モータ信号「a
fm」が生成され、HDアクチュエータ18に適用される。しかしながら、式1は理想的には数百キロヘルツ範囲を超える周波数値を有するオーディオ信号のために使用される。一般にサブキロヘルツ信号を有するハプティック効果に使用される場合、生成されたHDハプティック効果は、典型的に所望されるほど実際的(リアル)ではない。
【0019】
したがって、実施形態は、HDハプティック効果に関する式1を変化させる。一実施形態において、入力周波数パラメータは、タッチスクリーン11上の指の位置、オンボード加速度計により測定される場合、システム10の加速度、表面圧力などの外部信号「S
val」に応じて変動する。この実施形態において、周波数により変動した出力信号「a
fv」は
【数2】
であり、式中、
【数3】
であり、S
valは信号の周波数搬送を変更する様々な値にマッピングされる任意の所与の時間におけるセンサ値である。
【0020】
式2に示すように、信号の周波数成分は、f
c−f
minとf
c+f
maxとの間で変動するf
varの値を算出することにより導き出され得る。例えば、周波数が加速度に応じて変動することを必要し、加速度値が−10m/sec
2から10m/sec
2の間、ならびに
【数4】
の値である場合、関数が、加速度値A
ccを周波数値f
varにマッピングするために使用されてもよく、その関数は任意の種類であってもよい。
図3は一実施形態に係る線形マッピングを示す周波数対加速度のグラフである。他のマッピングがさらなる実施形態において使用されてもよい。
【0021】
別の実施形態において、式2におけるf
varは、様々な値と対照的に倍率を用いて表され、したがってf
varは以下のように表される。
【数5】
ここで、周波数は0からS
maxの間で正規化されたスカラーS
valに応じて変動する。例えば加速度が0から2.1の間の値までスケールし、f
c=100Hzの場合、スケールした加速度が0である場合、f
var=100Hzであり、スケールした加速度が2.1である場合、f
var=210Hzである。一実施形態において、スケールした加速度は直線的に0から2.1の間の値まで−10から10の間でマッピングされるように想定されるが、他の実施形態において、スケーリングは線形二次形式指数または他の種類のマッピングを用いて行われてもよい。
【0022】
別の実施形態において、式2の振幅a
cパラメータは一部の外部信号に応じて変動してもよく、それらの変動は、f
varについて記載したものと同様の方式で行われてもよい。
位相変調
一実施形態は、FM信号の間接生成とみなされ得る位相変調を用いてHDハプティック信号を生成する。この実施形態において、上記の式1は以下の式に変更される:
【数6】
式中、第二項は信号の位相であり、正弦値にのみ依存し、式1における正弦値と時間の積に依存しない。式4を用いて生成したハプティック効果は時間のみに応じて変動する。しかしながら、上記に開示したように、センサ値などの一部の他の外部変数、またはセンサによりキャプチャされた人のジェスチャに応じて変動を有する必要がある。したがって、一実施形態において、式4のパラメータは上記の式2パラメータと同様の方式で変更される。変更された実施形態は以下を含む:
・センサに応じてf
cを変更する:
【数7】
・センサに応じてa
mを変更する:
【数8】
・センサに応じてf
mを変更する:
【数9】
・センサに応じてa
cを変更する:
【数10】
【0023】
周波数変調
一実施形態は、以下の式の位相を掛ける1倍の因数(one−time factor)により式4の位相変調を変更することによりFMを使用する。
【数11】
一般に式5は時間領域(t)のみで変動する。しかしながら、項a
c、f
c、a
mおよびf
mは、位相変調の実施形態と併せて上記に開示したセンサにより生成された一部の外部信号(例えば加速度、磁場、圧力)に応じて変動し得る。
【0024】
図4は、一実施形態に従ってHDハプティック効果プリミティブからHDハプティック効果信号を生成した場合の
図1のHDハプティック効果生成モジュール22の機能のフロー図である。一実施形態において、
図4のフロー図および以下の
図6の機能は、メモリに格納されているソフトウェアまたは他のコンピュータ可読もしくは有形的表現媒体により実装され、プロセッサにより実行される。他の実施形態において、機能は、ハードウェア(例えば特定用途向け集積回路(「ASIC」)、プログラマブルゲートアレイ(「PGA」)、フィールドプログラマブルゲートアレイ(「FPGA」)などの使用を介する)またはハードウェアとソフトウェアとの任意の組み合わせにより実施されてもよい。
【0025】
402において、HDハプティック効果プリミティブが受信される。HD効果プリミティブは高レベル入力パラメータの形態で表される。
【0026】
404において、加速度計などのセンサからまたは任意の種類の外部信号からの入力が受信される。
【0027】
406において、HDハプティック効果信号は、402にて受信されたHDハプティック効果プリミティブから生成される。信号の生成は、404におけるセンサ入力に基づいて信号の周波数を変動させることを含む。周波数は、周波数変動、周波数変調、スケーリング、及び位相変調を含む、上記のように変動できる。
【0028】
408において、生成したHDハプティック効果信号は、システム10において振動ハプティック効果を生成するHDアクチュエータ18に適用される。生成した出力ハプティック効果信号は周波数などの複数の出力パラメータを含む。
【0029】
PhISEMに基づいたHDハプティック効果生成
一実施形態は、確率過程を用いてシステム10の加速度計により生成された加速信号などの対応する入力センサ信号に基づいてHDハプティック効果信号の内容を変更することによってHDハプティックプリミティブからHDハプティック効果信号を生成する。変更は信号の振幅であるが、周波数または他のパラメータも変更されてもよい。この実施形態により使用した確率過程は、物理的に誘発される確率事象モデリング(Physically Inspired Stochastic Event Modeling)(「PhISEM」)である。PhISEMは、P.Cookら,「Using DSP−Based Parametric Physical Synthesis Models to Study Human Sound Perception」(2003)(「Cook」)に開示されている公知のアルゴリズムであり、ランダム粒子システムに基づいて自然な音を生成するいくつかの打楽器の音を合成するためにデジタル信号処理に使用されている。
【0030】
図5は、Cookに開示されているPhISEMアルゴリズムを示すブロック図である。PhISEMアルゴリズムは、エネルギーおよび減衰を有する各粒子と互いに衝突する異なる粒子のダイナミックシステムシミュレーションから導かれた。PhISEMアルゴリズムは、ダイナミックモデルのシミュレーションに使用されるパラメータに直接関連したモデルにおいてパラメータを有する統計的モデルに対するダイナミックモデルの作用をキャプチャする。
【0031】
本発明の実施形態は、HDハプティック効果プリミティブからのHDハプティック効果信号の生成と共に使用するためにPhISEMアルゴリズムを変更し、適用する。実施形態は、ハプティック信号および共振フィルタに使用される周波数の範囲を合成する。例えば、音の合成は、少なくともマラカスなどの打楽器の種類の楽器に関して1KHzを超える値を必要とする。一実施形態において、ハプティック実装に関して、フィルタは約200Hz未満の共鳴を有する。他の実施形態において、この数は4000Hz以下であってもよい。実施形態に使用されるフィルタの数は1つだけであってもよいが、多くが使用されてもよい。
【0032】
一実施形態において、以下の疑似コードが、HDハプティック効果プリミティブからHDハプティック効果信号を生成するためにHDハプティック効果生成モジュール22により実装される:
【数12】
【0033】
上記の実装において、
・「getEnergy()」は、外部センサまたは他の信号からシステム内のエネルギーの値を読み出す。エネルギーは加速度計、仮想センサ、周期信号などのセンサ信号であってもよい。
・「SYSTEM_DECAY」パラメータは、0から1の間の値をとってもよく、
図5の「システムエネルギー減衰」パラメータである。
・「num_beans」は、打楽器の衝突する要素の数である。このパラメータを変化させることにより、ハプティック効果の合成が変化する。代替の実施形態において、このパラメータは外部信号(センサ、データ抽出/処理、周期信号など)に応じて変化可能である。
・「gain」は、信号の全振幅をレベルアップする事前計算された値である。
・「noise_tick()」は、振動のランダム性を生成する関数である。
・「VIBE_DECAY」パラメータは、0から1の間の値をとってもよく、
図5の「コントロールエンベロープ」パラメータである。
・「filterSignal()」は、「filterCoef」により特定されるフィルタ(複数も含む)を用いてランダム信号をフィルタにかける。一実施形態において、10Hzから4000Hzの間の共振周波数を有する共振フィルタが使用されてもよく、1つのみのフィルタが使用されてもよい。
【0034】
図6は、一実施形態に従ってHDハプティック効果プリミティブからHDハプティック効果信号を生成した場合の
図1のHDハプティック効果生成モジュール22の機能のフロー図である。
【0035】
602において、HDハプティック効果プリミティブが受信される。HD効果プリミティブは高レベル入力パラメータの形態で表される。
【0036】
604において、加速度計などのセンサからまたは任意の種類の外部信号からの入力が受信される。
【0037】
606において、HDハプティック効果信号は602において受信されたHDハプティック効果プリミティブから生成される。信号の生成は、PhISEMアルゴリズムに従って604におけるセンサ入力に基づいて信号の振幅を変動させることを含む。
【0038】
608において、生成したHDハプティック効果信号は、システム10において振動ハプティック効果を生成するHDアクチュエータ18に適用される。生成したHDハプティック効果信号は複数の出力パラメータを含む。
【0039】
開示したように、HDハプティック効果は、HDハプティック効果プリミティブを受信し、生成したHDハプティック効果出力信号のパラメータを変動させるために外部センサ信号を用いることにより生成される。変動したパラメータは、一実施形態において周波数であってもよく、または別の実施形態においてPhISEMアルゴリズムを用いる振幅であってもよい。
【0040】
一実施形態において、HDハプティック効果を生成するために周波数に基づいたアルゴリズムまたはPhISEMアルゴリズムを用いることに加えて、同じ一般的アルゴリズムが、上記のオーディオを生成するように適用/変更される。次いでシステム10は実質的に正確な同期において音およびHDハプティック効果を生成できる。この実施形態において、音およびハプティックを生成するために、指速度または加速度などの外部入力信号が、それぞれのアルゴリズムに送り込まれてもよく、一貫した音およびハプティックが生成される。
【0041】
いくつかの実施形態が本明細書に具体的に例示され、および/または記載されている。しかしながら、本発明の精神および意図する範囲から逸脱せずに開示された実施形態の修飾および変更が上記の教示および添付の特許請求の範囲の範囲内に含まれることは理解されるだろう。