(58)【調査した分野】(Int.Cl.,DB名)
前記アクチュエーターモデルは、前記触覚アクチュエーターの過渡特性を表し、該過渡特性は、前記触覚アクチュエーターが駆動信号にどの程度高速に応答するのかを表す、請求項1に記載のユーザーインターフェースデバイス。
前記過渡特性は、前記触覚アクチュエーターが、駆動信号に応答して、定常応答若しくはピーク応答にどの程度高速に達するのか、又は、前記触覚アクチュエーターが、前記駆動信号に応答して、前記定常応答若しくは前記ピーク応答の規定された割合にどの程度高速に達するのかを表す、請求項2に記載のユーザーインターフェースデバイス。
前記触覚アクチュエーターはモーターを含み、前記アクチュエーターモデルは、該モーターが駆動信号にどのように応答するのかを表す、請求項2に記載のユーザーインターフェースデバイス。
前記制御回路は、前記触覚アクチュエーターの前記アクチュエーターモデルに基づいて、前記第2の駆動信号の振幅、持続時間、又はデューティーサイクルのうちの少なくとも1つを求めることによって前記第2の駆動信号を生成するように構成される、請求項2に記載のユーザーインターフェースデバイス。
前記触覚アクチュエーターは、第1のタイプの触覚アクチュエーターに属し、前記アクチュエーターモデルは、前記触覚アクチュエーターが駆動信号にどのように応答するのかを表す特性の測定された値と、該特性の公称値との間のずれの量を表し、該公称値は、前記第1のタイプの触覚アクチュエーターに属する触覚アクチュエーターが駆動信号にどのように応答するのかの規定された近似である、請求項1に記載のユーザーインターフェースデバイス。
前記特性は、前記触覚アクチュエーターが駆動信号に応答してピーク応答に達する立ち上がり時間であり、それによって、前記アクチュエーターモデルは、前記触覚アクチュエーターの前記立ち上がり時間の測定された値と前記立ち上がり時間の公称値との間のずれの量を表し、前記制御回路は、前記触覚アクチュエーターの前記立ち上がり時間の前記測定された値と前記立ち上がり時間の前記公称値との間の前記ずれの量に基づいて、前記第2の駆動信号が該第2の駆動信号の開始の際にキックイン部分を含むか否かを判断するように構成される、請求項7に記載のユーザーインターフェースデバイス。
前記アクチュエーターモデルは、第1の振幅を有する駆動信号に応答した前記第1のタイプの触覚アクチュエーターの公称立ち上がり時間よりも長い、前記第1の振幅を有する駆動信号に応答した、測定された立ち上がり時間を有するものとして、前記触覚アクチュエーターを表し、前記制御回路は、前記キックイン部分が前記第1の振幅よりも高い第2の振幅を有すると判断するように更に構成される、請求項8に記載のユーザーインターフェースデバイス。
仮想ボタンを表示するように構成されたタッチ画面を更に備え、前記第2の触覚効果は、前記仮想ボタンがクリックされたことに応答する、請求項11に記載のユーザーインターフェースデバイス。
前記第2の触覚効果の所望の持続時間は、前記触覚アクチュエーターの規定された公称立ち上がり時間よりも短い、請求項1に記載のユーザーインターフェースデバイス。
前記センサーは加速度計であり、前記測定情報は、前記第1の駆動信号に応答して前記触覚アクチュエーターによって出力される加速度である、請求項1に記載のユーザーインターフェースデバイス。
電流センサーを更に備え、前記第1の駆動信号は電圧駆動信号であり、前記制御回路は、前記電圧駆動信号が電流を前記触覚アクチュエーター内に通電させる方法を表す第2の測定情報を前記電流センサーから受信するように構成され、前記制御回路は、前記第2の測定情報に更に基づいて前記アクチュエーターモデルを求めるように構成される、請求項1に記載のユーザーインターフェースデバイス。
【発明を実施するための形態】
【0006】
本発明の上述の特徴及び利点並びに他の特徴及び利点は、添付の図面に示されるような本発明の実施形態の以下の説明から明らかであろう。本明細書に組み込まれるとともに本明細書の一部をなす添付の図面は更に、本発明の原理を説明するとともに、当業者が本発明を実施及び使用することを可能にする役割を果たす。図面は一定縮尺ではない。
【0007】
以下の詳細な説明は本来例示的なものでしかなく、本発明又は本発明の用途及び使用を限定するように意図されていない。さらに、前述の技術分野、背景技術、発明の概要又は以下の詳細な説明に提示されている、明示又は暗示されるいかなる理論にも制限されることは意図されていない。
【0008】
本発明における実施形態は、触覚アクチュエーターのアクチュエーターモデルを生成することによって触覚アクチュエーターの制御を容易にすることに関する。このアクチュエーターモデルは、触覚アクチュエーターの特性を表すものである。これらの特性は、例えば、触覚アクチュエーターの出力(例えば、加速度)が入力(例えば、駆動信号)にどのように応答するのかを表すことができる。特性は、触覚アクチュエーターの挙動若しくは属性を表すパラメーター値、触覚アクチュエーターの出力を入力の関数として表す伝達関数を通じた方法、又は他の方法等の様々な方法で表すことができる。幾つかの場合には、触覚アクチュエーターの特性に関する情報が、触覚アクチュエーターの製造業者又は他の供給者から入手可能でない場合がある。幾つかの場合には、製造業者又は他の供給者は、触覚アクチュエーターの公称のパラメーター値又は他の公称の特性しか提供しない場合があり、この公称のパラメーター値が、触覚アクチュエーターを特徴付けるのに十分に正確でない場合がある。例えば、触覚アクチュエーターのコストを低く維持するために、触覚アクチュエーターは、極めて厳しい公差で製造されなかった特定のタイプの触覚アクチュエーターに属する場合がある。そのような場合には、製造された触覚アクチュエーターが同じタイプの触覚アクチュエーターに属していても、それらの触覚アクチュエーター間にかなりの量のばらつきが存在し得る。さらに、触覚アクチュエーターの特性は、経年、過度の使用、又は他の要因の結果として経時的に変化し得る。したがって、製造業者は、特定のタイプの触覚アクチュエーターの公称のパラメーター値又は他の公称の特性を提供することができるが、そのタイプに属する個々の触覚アクチュエーターは、公称のパラメーター値からずれた特性を有する場合がある。そのようなずれによって、高精度の厳密な触覚効果を生成するように個々の触覚アクチュエーターを制御する困難さが増す場合がある。なぜならば、異なる触覚アクチュエーターは、同じ入力(例えば、同じ駆動信号)に応答して異なって挙動する場合があるからである。例えば、同じ製造業者からの異なる触覚アクチュエーターは、名目上は同一であるが、実際には、同じ駆動信号に応答して異なるそれぞれの割合で加速する場合もあるし、異なるそれぞれのレベルのインダクタンス又は慣性モーメントを示す場合もあるし、異なるそれぞれの共振周波数を有する場合もある。したがって、本発明における実施形態は、特定の触覚アクチュエーターの実際の特性を求めるために個々の触覚アクチュエーターを特徴付けることに関する。その特徴付けからの情報は、アクチュエーターモデルの形態にすることができ、その特定の触覚アクチュエーターをより高精度に制御するのに用いることができる。例えば、特定の触覚アクチュエーターの駆動信号又は他の入力を、その触覚アクチュエーターの特定の特性に適合させることができる。幾つかの場合には、触覚アクチュエーターを特徴付けることは、触覚アクチュエーターを後に用いて短い触覚効果を生成する際に特に有用であり得る。この短い触覚効果は、1つ又は2つのサイクルの発振のみを伴うこともできるし、触覚アクチュエーターが定常応答又はピーク応答に達する前であっても終了することもできるものである。
【0009】
幾つかの場合には、触覚アクチュエーターの求められた特性を用いて、フィードフォワード制御と呼ばれる場合もある触覚アクチュエーターの開ループ制御を容易にすることができる。例えば、求められた特性を用いて、駆動信号の振幅、周波数、若しくは持続時間等の駆動信号のパラメーター値、又は、駆動信号が制動部分のキックイン(kick-in)部分を有するか否かを求めることができる。この開ループ制御は、(触覚アクチュエーターが完全な開ループ形式で制御されるように)単独で用いることもできるし、閉ループ制御と組み合わせて用いることもできる。
【0010】
上記のように、幾つかの場合には、触覚アクチュエーターの特性は、この触覚アクチュエーターのアクチュエーターモデルに反映させることができる。一実施形態では、アクチュエーターモデルは、触覚アクチュエーターへの入力と触覚アクチュエーターの出力との間の関係を表すパラメーターの値を指定することができる。例えば、パラメーターは、以下でより詳細に論述するように、触覚アクチュエーターの電気属性及び/又は機械属性を示すことができる。さらに、アクチュエーターモデルは、その触覚アクチュエーターに固有のものとすることができる。したがって、異なる触覚アクチュエーターは、それらの触覚アクチュエーターが全て同じタイプの触覚アクチュエーターに属していても、異なるパラメーター値又は異なる伝達関数を指定するそれぞれのアクチュエーターモデルを有することができる。
【0011】
一実施形態では、触覚アクチュエーターの特性を求めるプロセスは、生産又は使用の様々な段階のいずれにおいても行うことができる。例えば、触覚アクチュエーターの特性は、この触覚アクチュエーターの製造業者によって、製造プロセスの一部として工場内で求めることができる。この状況では、特徴付けから求められる情報は、触覚アクチュエーター内に記憶することもできるし、データベース上に記憶することもできるし、他の方法で処理することもできる。
【0012】
幾つかの場合には、触覚アクチュエーターの特性は、この触覚アクチュエーターがエンドユーザーデバイス(エンドユーザー製品とも呼ばれる)であるユーザーインターフェースデバイス内に組み込まれた後の使用中に求めることができる。そのようなユーザーインターフェースデバイスの例には、モバイルフォン、ゲームコントローラー、ウェアラブルデバイス(例えば、スマートウォッチ)、対話型車両ダッシュボード若しくは他の車載システム、又は他のユーザーインターフェースデバイスが含まれる。これらの場合には、触覚アクチュエーターの特性を求めるプロセスは、例えば、ユーザーインターフェースデバイス上で実行されているデバイスドライバー又はオペレーティングシステムによって開始することができる。このプロセスは、1回だけ実行することもできるし、触覚アクチュエーターの耐用期間にわたって行うこともできる。例えば、特徴付けプロセスは、触覚アクチュエーターの特性が直近に求められてから規定された日数の後、触覚アクチュエーターの特性が直近に求められてから触覚効果の規定されたレンダリング回数の後、周期的に実行することができる。幾つかの場合には、後者の条件は、十分に長い触覚効果のみをカウントすることができる。換言すれば、触覚アクチュエーターの特徴付けは、触覚アクチュエーターの特性が直近に求められてから、規定された持続時間よりも長い触覚効果の規定数が実行されたときにトリガーすることができる。触覚アクチュエーターの特徴付けをその耐用期間にわたって複数回実行することによって、触覚アクチュエーターの挙動に対するあらゆる変化、より具体的には、触覚アクチュエーターが入力にどのように応答するのかに対するあらゆる変化を検出することができる。そのような変化は、触覚アクチュエーターの経年変化、又は、温度の変化若しくは触覚アクチュエーターに負担される負荷の変化等の環境変化から生じ得る。その上、触覚アクチュエーターの耐用期間を通して異なる時点で触覚アクチュエーターの特徴付けを行うことによって、アクチュエーターモデルの正確度も改善することができる。なぜならば、アクチュエーターモデルは、より近時の測定を含む、より長い時間スパンをカバーするより多くの測定から生成されるからである。
【0013】
一実施形態では、触覚アクチュエーターのアクチュエーターモデルは、触覚アクチュエーターの機械属性又は電気属性を表すパラメーターの値を示すことができる。例えば、これらのパラメーターは、触覚アクチュエーターのインダクタンス、抵抗、質量、慣性モーメント、及び減衰係数を含むことができる。一実施形態では、アクチュエーターモデルは、
【数1】
を表す関数等の伝達関数を含むことができる。幾つかの場合には、アクチュエーターモデルは、触覚アクチュエーターの構成要素を表すことができる。例えば、アクチュエーターモデルは、触覚アクチュエーターが、ばね、電磁コイル、モーター、又は圧電材料層を備えることを示すことができる。アクチュエーターモデルは、ばね定数K等のそのような構成要素のパラメーターの値を更に示すことができる。幾つかの実施態様では、アクチュエーターモデルは、触覚アクチュエーターの構造を示すことができる。
【0014】
アクチュエーターモデルは、一実施形態では、触覚アクチュエーターの構成要素又は特性の簡略表現とすることができる。例えば、アクチュエーターモデルは、触覚アクチュエーター内の構成要素のインダクタンス又は慣性の効果が無視できるものと仮定することができ、これによって、アクチュエーターモデルが、インダクタンス又は慣性によって引き起こされ得る2次効果又は高次効果を無視することを可能にすることができる。そのような実施形態では、アクチュエーターモデルは、触覚アクチュエーターの構成要素又は特性によって引き起こされ得る1次効果のみを表すことができる。
【0015】
一実施形態では、アクチュエーターモデルは、触覚アクチュエーターの少なくとも過渡モデルとすることができる。この過渡モデルは、触覚アクチュエーターの少なくとも過渡特性を表す(過渡特性という用語は、過渡ダイナミクスと呼ばれる場合もある)。特定の触覚アクチュエーターの過渡特性は、例えば、触覚アクチュエーターが駆動信号等の入力にどの程度高速に応答するのかを表すことができる。応答の高速性は、例えば、触覚アクチュエーターが何らかの動作を出力するのにどの程度の時間を要するのか、触覚アクチュエーターがどの程度高速に動作又は発振するのか、触覚アクチュエーターがどの程度高速に加速するのか若しくは加速度を変化させるのか、触覚アクチュエーターがどの程度高速に振動振幅を変化させるのか、又は応答の高速性を表す他の任意のパラメーターを指すことができる。幾つかの場合には、過渡特性は、入力が印加された直後において、触覚アクチュエーターがピーク応答又は定常応答に達する前の短期間における触覚アクチュエーターの応答を示すことができる。例えば、この期間は、加速度がピーク値又は定常状態値に達する前に、どの程度の加速度が時間の関数として触覚アクチュエーターによって出力されているのかに焦点を当てることができる。一実施形態では、この期間は、触覚アクチュエーターの公称立ち上がり時間以下の時間、継続する期間とすることができる。公称立ち上がり時間は、例えば、特定の振幅(例えば、規定された定格最大電圧等の規定された定格最大振幅)の駆動信号を印加された結果として、触覚アクチュエーターがピーク応答又は定常応答に達するのに要する時間を指定する製造業者提供値とすることができる。この例では、この期間は、入力駆動信号の開始と同じ時刻に開始し、触覚アクチュエーターの公称立ち上がり時間が経過した後に終了することができる。この例における過渡特性は、触覚アクチュエーターからの加速度がこの期間においてどの程度高速に増加するのかの尺度を示すことができる。
【0016】
一実施形態では、触覚アクチュエーターの過渡特性は、入力に対する触覚アクチュエーターの反応を緩衝する触覚アクチュエーターの1つ以上の慣性属性を通じて表すことができる。そのような慣性属性は、例えば、電圧入力信号の開始と、この電圧入力信号の結果としての触覚アクチュエーター内への電流の通電との間の第1の時間遅延を生み出すインダクタンス、又は、電流による力又はトルクの生成開始と、触覚アクチュエーターによる動作の出力開始との間の第2の時間遅延を生み出す慣性モーメントを含むことができる。
【0017】
一実施形態では、過渡特性は、触覚アクチュエーターの電気過渡特性を含むこともできるし、この電気過渡特性に基づくこともできる。電気過渡特性は、例えば、触覚アクチュエーターが電圧駆動信号又は他の入力に応答して電流の引き出しを開始するのに要する時間又は引き出されている電流の量を変化させる時間を表すことができる。この特性は、触覚アクチュエーター内への電流を駆動するために電圧信号によって必要とされる時間量としても表すことができる。一実施形態では、電気過渡特性は、触覚アクチュエーターの電気特性(電気属性とも呼ばれる)を表すパラメーター(例えば、インダクタンス及び抵抗)、立ち上がり時間若しくは減衰時間を表す時定数、又は他の方法を通じて表すことができる。時定数は、例えば、規定された電圧振幅又は電流振幅に関連付けることができる。一実施形態では、触覚アクチュエーターは、電機子(例えば、モーター電機子)又は電機子に類似した構成要素を含むことができる。そのような実施形態では、電気過渡特性は、電機子過渡特性と呼ぶことができ、上述した時定数は、電機子過渡時定数と呼ぶことができる。
【0018】
一実施形態では、過渡特性は、触覚アクチュエーターの機械過渡特性又は電気機械過渡特性を含むこともできるし、この特性に基づくこともできる。機械過渡特性又は電気機械過渡特性は、例えば、触覚アクチュエーターが、力又はトルクが触覚アクチュエーター内で生成されたことに応答した動作又は動作の変化を出力するのに要する時間を表すことができる。力又はトルクは、例えば、電圧信号に応答して触覚アクチュエーターによって引き出される電流によって生成することができる。一実施形態では、機械過渡特性は、触覚アクチュエーターの機械特性を近似するか又は別の方法で表す質量、慣性モーメント、又は減衰係数等のパラメーターを通じて表すこともできるし、動作又は動作の変化が触覚アクチュエーター又はその構成要素によって出力される立ち上がり時間又は減衰時間を表す時定数を通じて表すこともできるし、他の方法で表すこともできる。
【0019】
一実施形態では、特定の触覚アクチュエーターのアクチュエーターモデルは、触覚アクチュエーターの1つ以上の過渡特性のみを表す過渡モデルに限定することができる。一実施形態では、このモデルは、触覚アクチュエーターの定常状態特性を表す情報を更に含むことができる。一実施形態では、触覚アクチュエーターが、振動を生成するように構成された構成要素又は構造体(例えば、ばね)を備える場合、モデルは、その構成要素若しくは構造体、又はより一般的には触覚アクチュエーターの1つ以上の共振周波数を表すことができる。
【0020】
一実施形態では、特定の触覚アクチュエーターのアクチュエーターモデルは、より開いたループ形式(フィードフォワード形式とも呼ばれる)及びあまり閉じていないループ形式で触覚アクチュエーターの制御を容易にすることができる。閉ループ制御は、リアルタイムフィードバックを用いて触覚アクチュエーターの出力を調整することを伴うことができる。幾つかの場合には、閉ループ制御は、触覚アクチュエーターの特性に関する情報を必要としない。幾つかの状況について、閉ループ制御の最適動作は、高い調整レート(例えば、1kHzよりも高い)、高い測定レート、高精度の測定情報を提供する高品質センサー、及び/又はその出力を高精度の方法で高速に調整することができる高品質の触覚アクチュエーターに依拠することができる。例えば、触覚効果の所望の持続時間がそもそも短い場合、閉ループ制御単独では、特に閉ループ制御の調整レートが遅い場合に、触覚アクチュエーターの出力を所望の出力に十分収束させることができる前に、触覚効果は既に終了している場合がある。短い触覚効果は、例えば、ボタンクリックをシミュレートするのに用いられる場合がある。そのような状況では、触覚アクチュエーターからの所望の出力は、1サイクル又は2サイクル以下の所望の持続時間を有し、かつ、所望の持続時間が経過した後突然終了する発振等の短くてきぱきとした動作を含むことができる。上記のように、閉ループ制御を用いてそのような出力を達成することは困難な場合もあるし、高品質センサー及び/又は高品質触覚アクチュエーターを必要とする場合もあり、これはコストを増加させる場合がある。一実施形態では、アクチュエーターモデルを用いると、触覚アクチュエーターが平均的品質又は低品質のものにすぎない場合であっても、そのような所望の出力を生成する触覚アクチュエーターの制御を容易にすることができる。より詳細には、触覚アクチュエーターのアクチュエーターモデルは、上記で説明した過渡特性等の触覚アクチュエーターの特性に関する情報を含むので、そのような特性を用いると、そのような特性を考慮した駆動信号を生成することができる。駆動信号は、触覚アクチュエーターの特性に基づくとともに、所望の出力に基づいて生成されるので、触覚アクチュエーターが所望の出力を達成する可能性をより高くすることができる。幾つかの場合には、駆動信号は、駆動信号が、閉ループフィードバックに基づいてリアルタイムで駆動信号を調整することなく触覚アクチュエーターに印加される完全な開ループ制御(フィードフォワード制御とも呼ばれる)に用いることができる。幾つかの場合には、駆動信号は、開ループ制御及び閉ループ制御を組み合わせたものとともに用いることができ、この場合、駆動信号は、最初にアクチュエーターモデルに基づいて生成され、その後、閉ループ制御に基づいてリアルタイムで調整される。駆動信号は、最初にアクチュエーターモデルに基づいて生成されているので、そのような駆動信号は、当該駆動信号を調整しなくても、所望の出力に既に近い出力を与えることができる。したがって、所望の出力を達成するための駆動信号に対する調整の量を相対的に小さくすることができる。その結果、開ループ制御が閉ループ制御と組み合わされた場合、閉ループ制御は、触覚アクチュエーターの出力が所望の出力に収束する点に駆動信号をより高速に調整可能にすることができる。
【0021】
図1Aは、触覚アクチュエーター110の制御を容易にすることができる触覚アクチュエーター110のアクチュエーターモデルを求めるのに用いることができるシステム100を示している。より具体的には、システム100は、触覚アクチュエーター110、センサー120、及び制御回路140を備える。一実施形態では、制御回路140は、センサー120を用いて、触覚アクチュエーター110のアクチュエーターモデルを求めるように構成することができる。以下でより詳細に論述するように、システム100は、触覚アクチュエーター110の特性を求める製造業者のシステムの一部であってもよいし、触覚アクチュエーター110を制御するユーザーインターフェースデバイスの一部(ユーザーインターフェースデバイス内に内蔵することができる)であってもよいし、他のシステムであってもよい。一実施形態では、制御回路140は、その後、アクチュエーターモデルに基づいて触覚アクチュエーター110を制御するようにも構成されている。
【0022】
一実施形態では、触覚アクチュエーター110は、線形共振アクチュエーター(LRA)、リニアモーター、偏心回転質量(ERM)アクチュエーター、圧電アクチュエーター、電気活性ポリマー(EAP)アクチュエーター、ボイスコイルアクチュエーター、又は他の任意の触覚アクチュエーターとすることができる。一実施形態では、センサー120は、加速度計、位置センサー(例えば、センシングコイル)、振動計、電流センサー、ゼロ交差センサー、他の任意のセンサー、又はそれらの組み合わせを含むことができる。制御回路140は、触覚アクチュエーター110の動作を表す測定情報をセンサー120から受信するように構成することができる。例えば、制御回路140は、触覚アクチュエーター110によって出力されている加速度の値を受信するように構成することができる。センサー120は、触覚アクチュエーター110の一部となるように触覚アクチュエーター内に統合することもできるし、制御回路140の一部とすることもできるし、触覚アクチュエーター110及び制御回路140から分離したスタンドアローン型構成要素とすることもできる。
【0023】
一実施形態では、制御回路140は、1つ以上のプロセッサ、1つ以上のプロセッサコア、プログラマブルロジックアレイ(PLA)、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、マイクロコントローラー、又は他の任意の制御回路を含むことができる。一実施形態では、制御回路140は、モバイルフォン又は他のエンドユーザーデバイスにおける汎用プロセッサ等の汎用プロセッサとすることもできるし、触覚フィードバックを制御することに専用化されたプロセッサとすることもできる。
【0024】
図1Bは、システム100の一実施形態であるシステム100Aを示している。システム100Aは、例えば、触覚アクチュエーター110の製造業者が触覚アクチュエーター110のアクチュエーターモデルを求める工場の一部とすることができる。システム100Aは、触覚アクチュエーター110、センサー120、駆動回路130、及びコンピューター200を備える。
【0025】
一実施形態では、コンピューター200は、例えば、工場において触覚アクチュエーターの品質制御検査又は品質制御測定を行うように構成されたコンピューターとすることができる。コンピューター200は、制御回路240、記憶デバイス250、及び通信インターフェース270を備えることができる。一実施形態では、制御回路240は、制御回路140の一実施形態とすることができ、触覚アクチュエーター110のアクチュエーターモデル160を求めるのに用いることができる。記憶デバイス250は、アクチュエーターモデル160を記憶するのに用いることができる。記憶デバイス250は、例えば、ダイナミックランダムアクセスメモリ(DRAM)、固体メモリ、ハードディスクドライブ(HDD)、テープドライブ、又は他の任意の記憶デバイスを含むことができる。通信インターフェース270は、アクチュエーターモデルをデータベース、又は、
図1Bに示すようにユーザーインターフェースデバイス300に通信するように構成することができる。例えば、ユーザーインターフェースデバイス300は、記憶デバイス350及び通信インターフェース370を備えるモバイルフォンとすることができる。ユーザーインターフェースデバイス300は、コンピューター200から、又は、アクチュエーターモデル160がアップロードされているデータベースから、アクチュエーターモデル160を受信し、アクチュエーターモデル160を記憶デバイス350に記憶するように構成することができる。
【0026】
一実施形態では、システム100Aは、制御回路240のバッファー又は増幅器として機能することができるとともに、制御回路240が電圧信号、電流信号、又は他の駆動信号を生成することを補助することができる駆動回路130を備える。幾つかの場合には、駆動回路130は、制御回路240の一部とすることができる。他の場合には、駆動回路130は、ドライバー集積回路(ドライバーIC)等のスタンドアローン型構成要素とすることができる。以下でより詳細に論述するように、制御回路240は、駆動信号を、駆動回路130を介して触覚アクチュエーター110に印加するとともに、この駆動信号に応答して触覚アクチュエーター110によって出力されている動作を表す測定情報をセンサー120から受信するように構成することができる。制御回路240は、この測定情報に基づいてアクチュエーターモデル160を生成するとともに、このアクチュエーターモデル160を記憶デバイス250に記憶するように構成することができる。
【0027】
図1Cは、システム100の一実施形態とすることができるシステム100Bを示している。システム100Bは、触覚アクチュエーター110A、センサー120、駆動回路130、及びコンピューター200を備える。触覚アクチュエーター110Aは、触覚アクチュエーター110の一実施形態とすることができる。
図1Cの実施形態では、触覚アクチュエーター110Aは、アクチュエーターモデル160を記憶する記憶デバイス112を備えることができる。触覚アクチュエーター110Aが、例えば、モバイルフォン等のユーザーインターフェースデバイス内に組み込まれると、このユーザーインターフェースデバイスは、記憶デバイス112を介してアクチュエーターモデル160にアクセスするように構成することができる。一実施形態では、記憶デバイス112は、例えば、固体メモリ又はプログラマブルリードオンリーメモリ(PROM)を含むことができる。
【0028】
図1Dは、触覚アクチュエーターのアクチュエーターモデルを求める一例示の装置構成を示している。この例示の装置構成は、触覚アクチュエーター110の一実施形態である触覚アクチュエーター110Bを備える。一実施形態では、触覚アクチュエーター110Bは、触覚アクチュエーター110Bに対する負荷をシミュレートする構成要素170に取り付けられている。例えば、構成要素170は、100gの質量を有するブロックとすることができる。例示の装置構成は、センサー120の一実施形態とすることができるセンサー120Aを更に備える。例えば、センサー120Aは、触覚アクチュエーター110Bによって出力されている振動運動を測定するように構成された振動計とすることができる。例示の装置構成は、加えて、コンピューター200を備えることができる。このコンピューターは、制御回路240及び駆動回路130を備えることができる。制御回路240は、駆動信号を触覚アクチュエーター110Bに印加するよう駆動回路130を制御するとともに、結果として得られる触覚アクチュエーター110Bの出力の測定情報をセンサー120Aから受信するように構成することができる。
【0029】
上記のように、幾つかの場合には、アクチュエーターモデルは、ユーザーインターフェースデバイスによって求めることができる。
図2は、アクチュエーターモデル160を生成又は更新するように構成することができるユーザーインターフェースデバイス300を示している。ユーザーインターフェースデバイス300は、例えば、モバイルフォン若しくはタブレットコンピューター、ゲームコンソールコントローラー、電子ウォッチ若しくはヘッドマウントデバイス(HMD)等のウェアラブルデバイス、仮想現実(VR)デバイス若しくは拡張現実(AR)デバイス、車両ダッシュボード若しくは中央コンソールを通じて制御されるエンターテイメントシステム等の車載システム、又は他の任意のユーザーインターフェースデバイスとすることができる。
【0030】
図2に示すように、ユーザーインターフェースデバイス300は、触覚アクチュエーター310、駆動回路330、センサー320、制御回路340、及び記憶デバイス350を備える。触覚アクチュエーター310、駆動回路330、及びセンサー320は、それぞれ触覚アクチュエーター110、駆動回路130、及びセンサー120の一実施形態とすることができる。一実施形態では、ユーザーインターフェースデバイス300は、仮想ボタンを表示するように構成されたタッチ画面を備えることができ、触覚アクチュエーター310は、この仮想ボタンをクリックした機械的感触をシミュレートする触覚フィードバックを提供するのに用いることができる。記憶デバイス350は、非一時的コンピューター可読媒体とすることができ、ダイナミックランダムアクセスメモリ(RAM)、ハードディスクドライブ(HDD)、固体メモリ、又はそれらの任意の組み合わせを含むことができる。一実施形態では、記憶デバイス350は、当該実施形態における機能を実行するコンピューター実行可能命令を記憶することができ、これらのコンピューター実行可能命令は、制御回路340によって実行することができる。
【0031】
一実施形態では、制御回路340は、駆動回路330を介して触覚アクチュエーター310を駆動し、センサー320を介して触覚アクチュエーター310の応答を測定することができる。制御回路340は、この応答を用いて、アクチュエーターモデル160を生成又は更新することができ、このアクチュエーターモデルは、その後、記憶デバイス350によって記憶することができる。一実施形態では、制御回路340及び記憶デバイス350はともに、触覚アクチュエーター310の低レベル制御を実行することに専用化されたマイクロコントローラーの一部とすることができる。例えば、制御回路340は、触覚効果を生成する高レベルコマンドをユーザーアプリケーションから受信することができ、この高レベルコマンドを駆動信号に変換することができる。一実施形態では、記憶デバイス350は、触覚アクチュエーター310を制御するデバイスドライバーを記憶することができ、アクチュエーターモデル160は、デバイスドライバーの一部として記憶することができる。一実施形態では、ユーザーインターフェースデバイス300は、アクチュエーターモデル160を種々の時点において更新するように構成することができる。
【0032】
図2の実施形態では、制御回路340は、アクチュエーターモデル160を用いて触覚効果の駆動信号を生成するように構成することができる。幾つかの場合には、駆動信号は、記憶デバイス350に記憶されたアクチュエーターモデル160及び触覚トラック314に基づいて生成されることができる。触覚トラック314は、触覚効果の所望の動作を表すことができる。例えば、触覚トラック314は、例えば、触覚効果の持続時間、振幅(例えば、ピークツーピーク振幅)、及び/又は周波数を指定することができる。幾つかの場合には、触覚トラック314は、触覚効果の所望の加速度を時間の関数として指定する加速度波形を表すことができる。幾つかの場合には、触覚トラックは、触覚効果の所望の速度又は所望の位置を時間の関数として指定することができる。所望の加速度、速度、又は位置は、例えば、ユーザーインターフェースデバイス300のタッチ画面等の触覚アクチュエーター310によって動作されている負荷に関して測定することができる。一実施形態では、
図2における破線によって表すように、制御回路340は、センサー320からの測定情報に基づいてアクチュエーターモデル160を更新することができる。
【0033】
本発明における実施形態は、アクチュエーターモデルを生成し、このアクチュエーターモデルを用いて触覚効果をより良好に生成することに関するが、
図3、
図4A、及び
図4Bは、触覚アクチュエーターのアクチュエーターモデルを求めることなく触覚アクチュエーターが制御されるシナリオを示す図を提供する。
図3は、アクチュエーターモデルを求めることを伴わない触覚アクチュエーターの開ループ制御を示す図を提供する一方、
図4A及び
図4Bは、アクチュエーターモデルを求めることを伴わない触覚アクチュエーターの閉ループ制御を示している。
【0034】
より具体的には、
図3における触覚アクチュエーターは、加速度を出力することができるモーターを含むことができる。
図3では、制御回路は、所望の触覚効果に基づいて、すなわち、より具体的には触覚効果の所望の動作に基づいて、駆動信号を生成することができる。この所望の動作は、例えば、触覚トラックにおいて指定することができる。制御回路は、ドライバー集積回路(IC)チップ等の駆動回路を介して駆動信号を生成することができる。幾つかの場合には、制御回路も、ドライバーICチップの一部とすることができる。このドライバーICは、モーターに加速度を出力させる駆動信号をモーターに印加する。
【0035】
図3の例では、制御回路がモーターのアクチュエーターモデルを求めることなく、駆動信号を生成することができる。例えば、駆動信号は、記憶デバイスに既に記憶されている規定された信号とすることができる。制御回路は、その場合、記憶デバイスから駆動信号を簡単に取り出すことができる。別の例では、駆動信号は、モーターの公称の特性に基づいて生成することができる。この公称の特性は、例えば、制御回路内に事前にプログラミングされたパラメーター値とすることができる。しかしながら、上記で論述したように、特定のモーターの実際の特性は、そのモーターの公称の特性からずれている場合がある。なぜならば、特定の製造業者は、名目上は同じである多くのモーターを製造することができるが、それらのモーターは、全てが極めて厳しい公差で製造されていない限り、実際には相違を示す場合があるからである。その結果、駆動信号が、触覚アクチュエーターの公称の特性に基づいて生成された場合、この駆動信号は、触覚効果の所望の加速度又は別に意図された加速度からずれた実際の加速度をモーターに出力させる場合がある。
【0036】
図4Aは、モーターがどのように加速しているのかの測定情報、又は、モーターに取り付けられた負荷がどのように加速しているのかの測定情報に基づくモーターの閉ループ制御のブロック図を示している。より具体的には、
図4Aは、加速度を出力するようモーターを制御する駆動信号を、駆動回路を介して印加するように構成された制御回路を示している。
図4Aは、モーターによって出力されている加速度をリアルタイムで測定し、加速度の測定情報を制御回路に提供することができる加速度計を更に示している。制御回路は、比例積分微分(PID)制御方式を実施して、加速度の測定情報に基づいて駆動信号を調整することができる。より一般的には、制御回路は、比例制御方式、比例微分(PD)制御方式、比例積分(PI)制御方式、又は比例積分微分(PID)制御方式を実施することができる。一実施形態では、制御回路は、加速度の測定情報を用いて、モーターによって出力されている加速度と所望の加速度との間のずれ(誤差とも呼ばれる)を求めることができる。制御回路は、誤差を補償するために、誤差の値若しくはその値の割合、誤差の変化率(例えば、誤差の微分)、誤差の累積量(例えば、誤差の積分)、又はそれらの組み合わせに基づいて駆動信号を調整することができる。一実施形態では、制御回路は、特に、誤差の値の割合のみ、誤差の微分のみ、又は誤差の割合及び微分の組み合わせのみに基づいて駆動信号を調整することができる。
【0037】
図4Bは、モーターが引き出している電流の量を測定することができる電流センサーからの測定情報に基づくモーターの閉ループ制御のブロック図を示している。幾つかの場合には、制御回路は、モーターによって出力されている加速度を電流センサーからの測定情報に基づいて推定するように構成することができる。一実施形態では、電流センサーからの測定情報は、加速度計からの測定情報に置き換えることもできるし、加速度計からの測定情報を増強することもできる。
【0038】
図5は、閉ループ制御を用いて触覚アクチュエーターを制御する一例示の方法400を示すフロー図を提供している。幾つかの場合には、方法400は、
図4A及び
図4Bに示す手法に基づくことができる。方法400は、制御回路140/240/340等の制御回路によって実行することができる。一実施形態では、方法400は、記憶デバイス250/350に記憶された命令等のコンピューター実行可能命令を通じて実施することができるデバイスドライバーによって実行することができる。
【0039】
一実施形態では、方法400はステップ402から開始する。このステップにおいて、制御回路140/240/340は、触覚効果が触覚アクチュエーター110/310によって生成されることを決定する。例えば、制御回路140/240/340は、ユーザーインターフェースデバイス300の仮想ボタンが押圧されたと判断し、この仮想ボタンの押圧が触覚効果のトリガー条件であると判断することができる。ステップ404において、制御回路140/240/340は、触覚効果に関連した所望の加速度量を求める。例えば、記憶デバイス350は、触覚効果に関連した所望の加速度量を規定した触覚プロファイルを記憶することができる。
【0040】
ステップ406において、制御回路140/240/340は、触覚効果の生成を開始する電圧信号等の第1の駆動信号を触覚アクチュエーターに印加する。この第1の駆動信号は、触覚アクチュエーター110/310の特性を考慮せずに生成することもできるし、代替的に、触覚アクチュエーター110/310の特性に基づいて生成することもできる。この特性は、触覚アクチュエーターのアクチュエーターモデル160に表すことができる。一実施形態では、ステップ406における第1の駆動信号は、触覚効果の開始部分を生成することができる。この開始部分は、触覚効果の開始期間に対応する部分とすることができる。一実施形態では、ステップ406は、触覚効果の開始期間に対応する第1の駆動信号の開始部分のみを印加することを伴うことができる。例えば、第1の駆動信号が電圧波形v(t)として表される場合、ステップ406は、第1の駆動信号のt=0ms〜t=2msの部分を印加することを伴うことができる。幾つかの場合には、第1の駆動信号は、離散電圧信号値のシーケンスとして表すことができ、ステップ406は、このシーケンスの開始の際における電圧信号値のサブセットを印加することを伴うことができる。
【0041】
一実施形態では、触覚効果の残余期間でもあり得る第1の駆動信号の残余部分について第1の駆動信号を調整するステップ408〜414を実行することができる。例えば、第1の駆動信号が、t=0ms〜t=100msにわたる記憶された信号である場合、又は、触覚効果が100msの所望の持続時間を有する場合、第1の駆動信号の残余部分は、t=2ms〜t=100msの期間とすることができる。ステップ408〜414は、触覚効果が生成されているときに駆動信号に調整を行うことができる閉ループ制御を提供するリアルタイムフィードバックを提供することができる。幾つかの場合には、ステップ408〜414は、少なくとも1kHz(すなわち、1ミリ秒ごとに1回)又は少なくとも10kHzのレートで複数の反復にわたって実行することができる。
【0042】
ステップ408において、制御回路140/240/340は、触覚アクチュエーター110/310によって出力される加速度、又は、触覚アクチュエーター110/310によって引き出されている電流量を測定することができる。ステップ408における加速度は、例えば、加速度計、電流センサー、又は他のセンサーからの測定情報に基づいて求めることができる。ステップ410において、制御回路140/240/340は、測定される加速度又は電流に基づいて、触覚アクチュエーターによって出力される加速度と、触覚効果に関連した所望の加速度量との間のずれを求めることができる。ステップ412において、制御回路は、触覚アクチュエーターによって出力される加速度と、触覚効果に関連した所望の加速度量との間のずれに基づいて、第1の駆動信号を調整することができる。例えば、ステップ412がt=2msにおいて実行される場合、このステップは、ステップ410において求められたずれ(例えば、ずれの変化率)に基づく量だけ信号値を増減すること等によって、t=2msにおける第1の駆動信号の信号値(例えば、電圧値)を調整することを伴うことができる。この信号値は、異なる時点に対応する第1の駆動信号の複数の信号値を求めることができるステップ406において既に求めておくことができる。これらの信号値は、その後、複数の反復にわたって、例えば、加速度誤差に基づいて、ステップ412において調整することができる。特定の信号値が、ステップ412において調整された後、この信号値は、触覚アクチュエーター110/310に直ちに印加することができる。ステップ412が、その後の反復でt=3ms、4ms等において再度実行される場合、このステップは、それらの時刻において第1の駆動信号の信号値を同様に調整することを再度伴うことができる。一実施形態では、ステップ412は、より一般的には、ステップ410におけるずれに基づいて特定の時点において触覚アクチュエーター110/310に印加する駆動信号の信号値を求めることを伴うことができる。例えば、ステップ412が、t=2msに対応する特定の反復において実行される場合、このステップは、触覚アクチュエーターに直近に(例えば、t=1msにおいて)印加された以前の信号値を加速度誤差に基づく量だけ増加させることによって、その反復中に触覚アクチュエーターに印加する信号値を求めることを伴うことができる。その結果得られた信号値は、触覚アクチュエーター110/310に直ちに印加することができる。同様に、ステップ412が後の反復(例えば、t=3ms、4ms等)において再度適用される場合、このステップは、触覚アクチュエーターに直近の反復において印加された以前の信号値を加速度誤差に基づく量だけ増加させることによって、それらのそれぞれの反復の各反復中に触覚アクチュエーターに印加する信号値を求めることを伴うことができる。
【0043】
ステップ414において、制御回路140/240/340は、第1の駆動信号が終了しているか否かを判断することができる。例えば、ステップ406は、複数の信号値を有する駆動信号を生成している場合があり、これらの複数の信号値の全てが触覚アクチュエーターに印加されていたとき、第1の駆動信号は終了している。第1の駆動信号が終了している場合、方法400は終了することができる。そうでない場合、ステップ408〜414を繰り返すことができる。一実施形態では、ステップ414は、触覚効果の規定された持続時間が経過したか否かを判断することができ、この持続時間の経過によって、方法400は終了することができる。
【0044】
図6A〜
図6Cは、モーターを含む触覚アクチュエーターのフィードフォワード(FF)制御とも呼ばれる開ループ制御を示すブロック図を含む。モーターは、開ループ制御のみを用いて制御することもできるし、開ループ制御及び閉ループ制御の組み合わせ(例えば、開ループ制御及びPD制御の組み合わせ)を用いて制御することもできる。開ループ制御及び/又は閉ループ制御は、制御回路140/340によって提供することができる。例えば、制御回路140/340は、FFコントローラーとして機能することができる。FFコントローラーは、モデル推定機能によって提供されるアクチュエーターモデルに依拠することができる。一実施形態では、モデル推定機能も、FFコントローラーによって実施することができる。より詳細に論述すると、FFコントローラーは、モーターのアクチュエーターモデルを生成又は更新し、更新又は生成されたアクチュエーターモデルを用いて、モーターの駆動信号を(駆動回路を介して)生成することができる。
【0045】
一実施形態では、
図6A〜
図6Cのアクチュエーターモデルは、モーターモデルとすることができる。このモーターモデルは、或るタイプ又はクラスのモーターの一般的なモデルとは対照的に、制御回路によって制御されている特定のモーターに固有のものとすることができる。モーターモデルは、特定のモーターが駆動信号にどのように応答するのかを表すことができる。幾つかの場合には、モーターモデルは、モーターの過渡特性のみを表すことができる。幾つかの場合には、モーターモデルは、モーターの過渡特性及び定常状態特性の双方を表すことができる。一実施形態では、FFコントローラーは、入力が(定数値又は時間の関数のいずれかとしての)所望の加速度であり、出力が駆動信号である逆伝達関数をモーターモデルから生成するように構成することができる。FFコントローラーは、この逆伝達関数を用いて、特定の触覚効果の所望の加速度に基づいて駆動信号を生成し、この駆動信号をモーターに印加して、所望の加速度の達成を試みることができる。
【0046】
図6Aの実施形態では、FFコントローラーは、特定の駆動信号に応答してモーターによって出力されている加速度を表すことができる加速度計からの測定情報に基づいてモデル推定機能を実行することができる。幾つかの実施態様では、FFコントローラーは、触覚効果が生成されるごとにモデル推定機能を実行することができる。幾つかの実施態様では、FFコントローラーは、モデル推定機能を周期的に(例えば、月ごとに)実行することができる。幾つかの実施態様では、FFコントローラーは、モデル推定機能の直近の実行以降、規定数の触覚効果が生成された後に(例えば、50個の触覚効果ごとに)、モデル推定機能を実行することができる。この規定数は、モデル推定機能の直近の実行以降に生成された全ての触覚効果をカウントすることもできるし、規定された持続時間を超過した触覚効果のみをカウントすることもできる。一実施形態では、FFコントローラーは、加速度測定情報を用いて、モーターモデルのパラメーターの新たな値を求め、パラメーターの古い値をこの新たな値と平均することによってモーターモデルを更新することができる。この場合、この平均された値がパラメーターの更新値になる。幾つかの場合には、平均は、新たな値が古い値よりも大きな重みを有する加重平均とすることができる。なぜならば、新たな値は、より近時の加速度測定情報に基づいているからである。一実施形態では、FFコントローラーは、加速度測定情報を用いて、モーターモデルのパラメーターの新たな値を求め、パラメーターの古い値をこの新たな値に取り替えることができる。この場合、この新たな値が更新値になる。
【0047】
図6Bは、
図6Aの実施形態と同様であるが、加速度計の代わりに電流センサーを含む。FFコントローラーは、モーターに流れ込む電流の測定情報に基づいてモデル推定機能を実行するように構成することができる。
図6Cは、電流センサー及び加速度計の双方を備える一実施形態を示し、この実施形態では、FFコントローラーは、加速度の測定情報及び電流の測定情報に基づいてモデル推定機能を実行するように構成することができる。一実施形態では、モーターモデルは、モーター(例えば、インダクタンス)の電気過渡特性、モーター(例えば、慣性モーメント)の機械過渡特性、モーターの電気機械過渡特性、又はそれらの任意の組み合わせを表すことができる。一実施形態では、モーターモデルは、駆動信号である入力を、触覚効果の所望の動作である出力に関係付ける伝達関数、又は、所望の動作である入力を、駆動信号である出力に関係付ける逆伝達関数を含むことができる。
【0048】
図7は、触覚アクチュエーターのアクチュエーターモデルを用いてアクチュエーター制御を実行する方法500を示している。方法500は、方法400からのステップ(例えば、ステップ408〜414)を組み込むこともできるし、方法400のステップを組み込むことなく実行することもできる。方法500は、例えば、制御回路140/240/340によって実行することができる。幾つかの場合には、制御回路140/240/340は、アクチュエーター制御を実行するように配線接続することができる。幾つかの場合には、制御回路140/240/340は、記憶デバイス350等の非一時的コンピューター可読媒体に記憶されたコンピューター実行可能命令を実行することによってアクチュエーター制御を実行することができる。これらのコンピューター実行可能命令は、例えば、デバイスドライバーの一部であるコードとすることができる。一実施形態では、方法500はステップ502から開始する。このステップにおいて、制御回路140/240/340は、第1の触覚効果を生成する第1の駆動信号を触覚アクチュエーター110/310に印加する。第1の駆動信号は、電圧信号、電流信号、又は他の任意の駆動信号とすることができる。第1の駆動信号は、一定値を有することもできるし、複数のパルス(これらのパルスはゼロ電流又はゼロ電圧の期間によって分離されている)を含むこともできるし、正弦波信号若しくは他の周期信号とすることもできるし、他の任意の駆動信号とすることもできる。幾つかの場合には、ドライバーICを用いて第1の駆動信号を生成することができる。制御回路140/240/340は、特にアクチュエーターモデルを求めるために、又は、より一般的な要求に応答して触覚効果を生成するために、(例えば、ユーザーインターフェースデバイス300上で動作しているオペレーティングシステムからの)要求に応答して第1の駆動信号を印加することができる。例えば、より一般的な要求は、ユーザーインターフェースデバイス300上で実行されているユーザーアプリケーション(例えば、モバイルapp)からのものとすることができ、これは、第1の触覚効果が、ユーザーインターフェースデバイス300のユーザーに通知を提供するため、ユーザーインターフェースデバイス300上に視覚コンテンツを付随させるため、又は他の目的等のために、ユーザーインターフェースデバイス300の通常動作の一部として生成されることを要求することができる。
【0049】
ステップ504において、制御回路140/240/340は、第1の駆動信号に応答した触覚アクチュエーター110/310の動作を表す測定情報をセンサー120/320から受信する。センサーは、加速度計、電流センサー、又は他の任意のセンサーとすることができる。一実施形態では、測定情報は、第1の駆動信号に応答して触覚アクチュエーター110/310によって出力された加速度を表すことができる。例えば、測定情報は、触覚アクチュエーター110/310によって作動されているタッチ画面パネル等の触覚アクチュエーター110/310の負荷の加速度を時間の関数として表すことができる。一実施形態では、測定情報は、負荷の速度又は位置を時間の関数として表すことができる。
【0050】
図8A〜
図8Cは、第1の駆動信号の例と、第1の駆動信号に応答して触覚アクチュエーター110/310によって出力される加速度の測定情報の例とを示している。
図8Aでは、第1の駆動信号は、規定された持続時間、例えば1秒の間印加される9V電圧信号702とすることができる。
図8Aにおける測定情報は、触覚アクチュエーター110/310からの加速度が定常状態部分704に達するまで触覚アクチュエーターによって出力されている加速度の増加を表す加速度波形を含むことができる。一実施形態では、加速度の挙動は、触覚アクチュエーター110/310の過渡特性に基づくことができる。この過渡特性は、例えば、触覚アクチュエーターの加速度が定常状態部分704に達する前の期間712における触覚アクチュエーターの加速度又は他の挙動を表すことができる。
図8Aに示すように、この期間712は、Δtの持続時間を有することができる。一実施形態では、過渡特性は、触覚アクチュエーターからの加速度が定常状態部分704に向かってどの程度高速に立ち上がるのかを示すパラメーター値を含むことができる。例えば、触覚アクチュエーターによって出力される加速度は、近似的に
【数2】
に比例することができる。ここで、tは時間を指し、τは時定数を指す。そのような例では、過渡特性は、パラメーター値として時定数τを含むことができる。パラメーター値τは、例えば、触覚アクチュエーターの加速度が特定のターゲット値に達するのに要する時間を計算するのに用いることができる。
【0051】
図8Bは、第1の駆動信号が5V電圧信号705である別の例と、第1の駆動信号に応答して触覚アクチュエーター110/310によって出力される加速度の一例とを示している。一実施形態では、加速度は、発振挙動を含む定常応答部分706を含むことができる。例えば、第1の駆動信号によって、触覚アクチュエーター110/310の加速度はターゲット値を最初にオーバーシュートし、その後、このターゲット値の周辺で発振することができる。幾つかの場合には、過渡特性は、加速度がターゲット値に最初に達する前の期間714における触覚アクチュエーターの応答に関係することができる。加速度がターゲット値と交差した後の期間は、一実施形態では、定常状態部分706の一部とみなすことができる。
【0052】
図8Cは、第1の駆動信号が電圧信号707であり、触覚アクチュエーター110/310からの加速度がピーク応答708(ピーク部分とも呼ばれる)を有する一例を示している。この例における過渡特性は、触覚アクチュエーターからの加速度がピーク応答708に達する前の期間716において、触覚アクチュエーターが第1の駆動信号にどのように応答するのかを表すことができる。例えば、過渡特性は、ピーク応答708に達するのに必要とされる時間Δt、期間716における加速度増加の傾き、又は他の任意の過渡特性を表すことができる。
【0053】
図8Dは、第1の駆動信号が、キックイン部分709a及びブレーキ部分709bを含む電圧信号である一例を示している。キックイン部分709aは、例えば、キックイン部分709aの直前の電圧値又は電流値よりも大きく、かつ、キックイン部分709aの直後の電圧値又は電流値よりも大きな振幅(例えば、8V)を有するパルスとすることができる。ブレーキ部分709bは、キックイン部分709aと逆の極性を有することができるが、同じくブレーキ部分709bの直前及び直後の電圧値又は電流値よりも大きな振幅を有することができる。一実施形態では、キックイン部分709aによって、触覚アクチュエーター110/310の負荷は発振することができる。一実施形態では、過渡特性は、キックイン部分709aの開始から、負荷がその発振の最大変位に達する時刻までの時間量Δt
1を表すことができる。ブレーキ部分709bは、負荷の運動を停止させることができる。一実施形態では、過渡特性は、ブレーキ部分709bの開始から、負荷の運動が停止する時刻までの時間量Δt
2を表すことができる。
【0054】
図7に戻って、ステップ506において、制御回路140/240/340は、触覚アクチュエーター110/310が駆動信号に応答してどのように動作するのかを表すアクチュエーターモデル160を測定情報に基づいて生成又は更新する。一実施形態では、触覚アクチュエーター110/310は、第1のタイプの触覚アクチュエーターに属し、触覚アクチュエーター110/310のアクチュエーターモデル160は、同じく第1のタイプの触覚アクチュエーターに属する別の触覚アクチュエーターのアクチュエーターモデルと異なる。上記のように、アクチュエーターモデル160は、一実施形態では、触覚アクチュエーター110/310の過渡特性を表すことができる。過渡特性は、例えば、触覚アクチュエーターがどの程度高速に駆動信号に応答するのかを表すことができる。幾つかの場合には、過渡特性は、触覚アクチュエーターが定常応答又はピーク応答にどの程度高速に達するのか、又は、触覚アクチュエーターが駆動信号に応答して定常応答又はピーク応答の規定された割合(例えば、80%)にどの程度高速に達するのかを表す。一実施形態では、触覚アクチュエーター110/310はモーターを含み、アクチュエーターモデル160は、このモーターが駆動信号にどのように応答するのかを表す。一実施形態では、過渡特性は、モーターのインダクタンス又は慣性モーメントを表し、駆動信号は複数の電圧信号である。一実施形態では、触覚アクチュエーター110/310は、触覚アクチュエーターの出力がピーク応答又は定常応答に達する規定時間量である公称立ち上がり時間を有することができ、過渡特性は、公称立ち上がり時間よりも短い期間における触覚アクチュエーターの動作を表すことができる。すなわち、この期間は、駆動信号の開始とともに開始することができ、この期間は、公称立ち上がり時間よりも短い持続時間を有することができる。ステップ508において、制御回路140/240/340は、アクチュエーターモデル160を記憶デバイス250/350に記憶することができる。
【0055】
図9A〜
図9Cは、記憶されたアクチュエーターモデルの様々な例を示している。より具体的には、
図9Aは、触覚アクチュエーター110/310の過渡特性を表す又は表示した過渡アクチュエーターモデル(過渡応答モデルとも呼ばれる)を示している。一実施形態では、アクチュエーターモデルは、触覚アクチュエーター110/310の電気過渡特性及び機械過渡特性を表す。
図9Aでは、機械過渡特性は、機械過渡時定数τ
mechanicalを通じて表され、電気過渡特性は、電気過渡時定数τ
electricalを通じて表される。幾つかの場合には、これらの時定数は、触覚アクチュエーター110/310が電圧信号に応答してどの程度高速に電流の引き出しを開始するのか(又は、電圧信号が触覚アクチュエーター110/310内への電流をどの程度高速に駆動するのか)、又は、電流が触覚アクチュエーター110/310において力又はトルクを生成した後、加速度がどの程度高速に増加するのかを表す関数のパラメーターとすることができる。幾つかの場合には、引き出されている電流は、
【数3】
に比例するレートで増加することができ、加速度は、
【数4】
に比例するレートで増加することができる。一実施形態では、上記時定数は、
図8A〜
図8Dにおいて測定されるτ又はΔtに等しいものであってもよいし、それらの測定情報から導出することもできる。
【0056】
図9Bにおいて、アクチュエーターモデルは、触覚アクチュエーター110/310の電気特性又は機械特性を表すパラメーターのそれぞれの値も含む。例えば、これらのパラメーターは、触覚アクチュエーターのインダクタンス、抵抗、質量、慣性モーメント、又は減衰係数と、1つ以上の定数Kとを含むことができる。一実施形態では、アクチュエーターモデルのインダクタンスは、電流センサーからの測定情報に基づいて表すことができ、慣性モーメントは、加速度計からの測定情報に基づいて求めることができる。インダクタンスは、複数の電圧信号のうちの1つの電圧信号のモーターへの印加開始と、この電圧信号に応答したモーターへの電流の通電開始との間の第1の時間遅延を表すことができる。慣性モーメントは、電流による力又はトルクの生成開始と、この力又はトルクに応答したモーターの動作の出力開始との間の第2の時間遅延を表すことができる。一実施形態では、定数Kは、例えば、ばね定数、アクチュエーター速度と逆起電力電圧V
emfとの間の定数、電流を力又はトルクに関係付ける定数、又は触覚アクチュエーターの特性を表す他の任意の定数を表すことができる。触覚アクチュエーター110/310は、例えば、インダクタンス、抵抗、及び/又はばね定数によって表される特性を有することができ、実際のインダクター、抵抗器、ばね、又は他の構成要素を有する必要はない。幾つかの場合には、これらのパラメーターは、駆動信号又は他の入力が印加されたときに触覚アクチュエーターに遅延応答を生成する触覚アクチュエーターの慣性属性を表すことができる。
【0057】
図9Cは、
図9Bにおけるアクチュエーターモデルと同様であるが、伝達関数を更に含むアクチュエーターモデルの一例を提供している。この伝達関数は、例えば、触覚アクチュエーター110/310の出力(例えば、加速度)と、触覚アクチュエーター110/310への入力(例えば、駆動信号)との間の比を表すことができる。より一般的に言えば、伝達関数は、触覚アクチュエーターの出力を入力の関数として表すことができる。一実施形態では、伝達関数は、加速度計からの測定情報に基づいて求めることができる。幾つかの場合には、アクチュエーターモデルは、触覚アクチュエーター110/310の入力をその出力の関数として表す逆関数を含むことができる。この逆伝達関数は、所望の加速度又は他の出力を達成するには、どのような駆動信号又は他の入力を触覚アクチュエーター110/310に印加する必要があるのかを示すことができる。アクチュエーターモデルに記憶された伝達関数又は逆伝達関数は、
図9Cのように時間領域において表すこともできるし、周波数領域(例えば、ラプラス領域)において又は他の形式で表すこともできる。一実施形態では、伝達関数は、触覚アクチュエーター110/310の過渡特性及び定常状態特性の双方を表すことができる場合がある。
【0058】
一実施形態では、伝達関数は、触覚アクチュエーター110/310の過渡特性のみを表すことができる。一実施形態では、触覚アクチュエーター110/310は、第1のタイプの触覚アクチュエーターに属し、アクチュエーターモデルは、触覚アクチュエーター110/310が駆動信号にどのように応答するのかを表す特性の測定された値と、この特性の公称値との間のずれの量を表す。公称値は、第1のタイプの触覚アクチュエーターに属する触覚アクチュエーターが駆動信号にどのように応答するのかの規定された近似とすることができる。例えば、特性は、触覚アクチュエーターが駆動信号に応答してピーク応答に達する立ち上がり時間とすることができる。そのような例では、アクチュエーターモデルは、触覚アクチュエーターの立ち上がり時間の測定された値と、立ち上がり時間の公称値との間のずれの量を表す。
【0059】
図7を再び参照すると、方法500は、ステップ510を更に含むことができる。このステップにおいて、制御回路140/240/340は、アクチュエーターモデル160が生成又は更新された後、第2の触覚効果が触覚アクチュエーター110/310によって生成されることを決定することができる。一実施形態では、ステップ510は、ステップ508の直後に実行することができる。一実施形態では、ステップ510は、ステップ508の数時間後又は数日後に実行することができる。一実施形態では、第2の触覚効果の所望の動作は、2サイクル以下の持続時間を有する発振である。例えば、触覚効果は、1.5サイクルのみの持続時間を有することができる。一実施形態では、第2の触覚効果は、仮想ボタンが、モバイルフォン又は車載システムのタッチ画面等のタッチ画面上でクリックされたことに応答したものとすることができる。一実施形態では、第2の触覚効果の所望の持続時間は、触覚アクチュエーターの規定された公称立ち上がり時間よりも短い。
【0060】
ステップ512において、制御回路140/240/340は、第2の触覚効果の所望の動作とアクチュエーターモデル160とに基づいて第2の駆動信号を生成する。一実施形態では、ステップ512は、触覚アクチュエーター110/310のアクチュエーターモデル160に基づいて、第2の駆動信号の振幅、持続時間、又はデューティーサイクルのうちの少なくとも1つを求めることを伴う。例えば、アクチュエーターモデル160が、触覚アクチュエーター110/310の立ち上がり時間の測定された値と、立ち上がり時間の公称値との間のずれの量を表す場合、制御回路140/240/340は、第2の駆動信号が当該第2の駆動信号の開始の際にキックイン部分を含むと判断することができる。公称立ち上がり時間が、第1の振幅を有する駆動信号に関連している場合、制御回路140/240/340は、ずれに基づいて、第2の駆動信号が第1の振幅よりも高い第2の振幅を有すると判断することができる。一実施形態では、アクチュエーターモデル160が、触覚アクチュエーター110/310の減衰係数を含む場合、制御回路140/240/340は、この減衰係数に基づいて、第2の駆動信号のブレーキ部分を含むか否かを判断するように構成することができる。一実施形態では、制御回路140/240/340は、規定されたベースライン振幅に対して第2の駆動信号の振幅を増加させるように構成することができる。
【0061】
ステップ514において、制御回路140/240/340は、触覚アクチュエーター110/310に第2の駆動信号を印加することによって第2の触覚効果を生成するように触覚アクチュエーター110/310を制御する。一実施形態では、ステップ512及び514は、第2の駆動信号がリアルタイムフィードバックを用いて調整されない完全な開ループ形式で実行される。一実施形態では、第2の駆動信号が、アクチュエーターモデル及び閉ループフィードバックの組み合わせに基づいて生成されるように、制御回路は、第2の駆動信号に応答した触覚アクチュエーターの動作を表す第2の測定情報をセンサー120/320から受信することと、この第2の測定情報に基づいて第2の駆動信号を調整することとによって、閉ループフィードバックを用いて第2の駆動信号を生成するように構成される。
【0062】
一実施形態では、制御回路140/240/340は、触覚アクチュエーターが第1の触覚効果以降に生成した触覚効果の数を追跡することによって、アクチュエーターモデル160を更新するように構成することができる。制御回路は、触覚アクチュエーターが、第1の触覚効果以降に規定数の触覚効果を生成したと判断することができる。触覚アクチュエーターが規定数の触覚効果を生成したとの判断に応答して、制御回路は、追加の駆動信号を印加することと、この追加の駆動信号に応答した触覚アクチュエーターの動作を表す追加の測定情報をセンサーから受信することとによって、アクチュエーターモデルを更新することができる。アクチュエーターモデルは、上記追加の測定情報に基づいて更新される。
【0063】
様々な実施形態の追加の論述
本開示の実施形態1は、ユーザーインターフェースデバイスに関する。該ユーザーインターフェースデバイスは、触覚アクチュエーター、センサー、記憶デバイス、及び制御回路を備える。上記センサーは、上記触覚アクチュエーターによって出力される動作を測定するように構成される。上記制御回路は、第1の触覚効果を生成する第1の駆動信号を上記触覚アクチュエーターに印加し、上記第1の駆動信号に応答した上記触覚アクチュエーターの動作を表す測定情報を上記センサーから受信するように構成される。上記制御回路は、上記触覚アクチュエーターが駆動信号に応答してどのように動作するのかを表すアクチュエーターモデルを上記測定情報に基づいて生成又は更新し、上記アクチュエーターモデルを上記記憶デバイスに記憶するように更に構成される。上記制御回路は、上記アクチュエーターモデルが生成又は更新された後、第2の触覚効果が上記触覚アクチュエーターによって生成されることを決定するように更に構成される。上記制御回路は、上記第2の触覚効果の所望の動作と上記アクチュエーターモデルとに基づいて第2の駆動信号を生成し、該第2の駆動信号を上記触覚アクチュエーターに印加することによって上記第2の触覚効果を生成するよう上記触覚アクチュエーターを制御するようにも構成される。
【0064】
実施形態2は、実施形態1のユーザーインターフェースデバイスを含み、上記アクチュエーターモデルは、上記触覚アクチュエーターの過渡特性を表し、該過渡特性は、上記触覚アクチュエーターが駆動信号にどの程度高速に応答するのかを表す。
【0065】
実施形態3は、実施形態2のユーザーインターフェースデバイスを含み、上記過渡特性は、上記触覚アクチュエーターが、駆動信号に応答して、定常応答若しくはピーク応答にどの程度高速に達するのか、又は、上記触覚アクチュエーターが、上記駆動信号に応答して、上記定常応答若しくは上記ピーク応答の規定された割合にどの程度高速に達するのかを表す。
【0066】
実施形態4は、実施形態1〜3のいずれか1つのユーザーインターフェースデバイスを含み、上記触覚アクチュエーターはモーターを含み、上記アクチュエーターモデルは、該モーターが駆動信号にどのように応答するのかを表す。
【0067】
実施形態5は、実施形態4のユーザーインターフェースデバイスを含み、上記過渡特性は、上記モーターのインダクタンス又は慣性モーメントを表し、上記駆動信号は複数の電圧信号である。上記インダクタンスは、上記複数の電圧信号のうちの1つの電圧信号の上記モーターへの印加の開始と、上記電圧信号に応答した上記モーター内への電流の通電開始との間の第1の時間遅延を表す。上記慣性モーメントは、上記電流による力又はトルクの生成開始と、上記力又は上記トルクに応答した上記モーターの動作の出力開始との間の第2の時間遅延を表す。
【0068】
実施形態6は、実施形態1〜5のいずれか1つのユーザーインターフェースデバイスを含み、上記制御回路は、上記触覚アクチュエーターの上記アクチュエーターモデルに基づいて、上記第2の駆動信号の振幅、持続時間、又はデューティーサイクルのうちの少なくとも1つを求めることによって上記第2の駆動信号を生成するように構成される。
【0069】
実施形態7は、実施形態1〜6のいずれか1つのユーザーインターフェースデバイスを含み、上記触覚アクチュエーターは、第1のタイプの触覚アクチュエーターに属し、上記アクチュエーターモデルは、上記触覚アクチュエーターが駆動信号にどのように応答するのかを表す特性の測定された値と、該特性の公称値との間のずれの量を表し、該公称値は、上記第1のタイプの触覚アクチュエーターに属する触覚アクチュエーターが駆動信号にどのように応答するのかの規定された近似である。
【0070】
実施形態8は、実施形態7のユーザーインターフェースデバイスを含み、上記特性は、上記触覚アクチュエーターが駆動信号に応答してピーク応答に達する立ち上がり時間であり、それによって、上記アクチュエーターモデルは、上記触覚アクチュエーターの上記立ち上がり時間の測定された値と上記立ち上がり時間の公称値との間のずれの量を表し、上記制御回路は、上記触覚アクチュエーターの上記立ち上がり時間の上記測定された値と上記立ち上がり時間の上記公称値との間の上記ずれの量に基づいて、上記第2の駆動信号が該第2の駆動信号の開始の際にキックイン部分を含むか否かを判断するように構成される。
【0071】
実施形態9は、実施形態8のユーザーインターフェースデバイスを含み、上記アクチュエーターモデルは、第1の振幅を有する駆動信号に応答した上記第1のタイプの触覚アクチュエーターの公称立ち上がり時間よりも長い、上記第1の振幅を有する駆動信号に応答した、測定された立ち上がり時間を有するものとして、上記触覚アクチュエーターを表し、上記制御回路は、上記キックイン部分が上記第1の振幅よりも高い第2の振幅を有すると判断するように更に構成される。
【0072】
実施形態10は、実施形態7のユーザーインターフェースデバイスを含み、上記特性は、駆動信号に応答した上記触覚アクチュエーターの加速度である。
【0073】
実施形態11は、実施形態1〜10のいずれか1つのユーザーインターフェースデバイスを含み、上記第2の触覚効果の上記所望の動作は、2サイクル以下の持続時間を有する発振である。
【0074】
実施形態12は、実施形態1〜11のいずれか1つのユーザーインターフェースデバイスを含み、仮想ボタンを表示するように構成されたタッチ画面を更に備え、上記第2の触覚効果は、上記仮想ボタンがクリックされたことに応答する。
【0075】
実施形態13は、実施形態1〜12のいずれか1つのユーザーインターフェースデバイスを含み、上記ユーザーインターフェースデバイスは、モバイルフォン又は車載システムである。
【0076】
実施形態14は、実施形態1〜13のいずれか1つのユーザーインターフェースデバイスを含み、上記第2の触覚効果の所望の持続時間は、上記触覚アクチュエーターの規定された公称立ち上がり時間よりも短い。
【0077】
実施形態15は、実施形態1〜14のいずれか1つのユーザーインターフェースデバイスを含み、上記第2の駆動信号は、該第2の駆動信号がリアルタイムフィードバックを用いて調整されない完全な開ループ形式で生成され、上記触覚アクチュエーターに印加される。
【0078】
実施形態16は、実施形態1〜14のいずれか1つのユーザーインターフェースデバイスを含み、上記センサーは加速度計であり、上記測定情報は、上記第1の駆動信号に応答して上記触覚アクチュエーターによって出力される加速度である。
【0079】
実施形態17は、実施形態1〜14のいずれか1つのユーザーインターフェースデバイスを含み、上記制御回路は、上記第2の駆動信号は、上記アクチュエーターモデル及び閉ループフィードバックの組み合わせに基づいて生成されるように、上記第2の駆動信号に応答した上記触覚アクチュエーターの動作を表す第2の測定情報を上記センサー又は別のセンサーから受信することと、該第2の測定情報に基づいて上記第2の駆動信号を調整することとによって、上記閉ループフィードバックを用いて上記第2の駆動信号を生成するように構成される。
【0080】
実施形態18は、実施形態1〜17のいずれか1つのユーザーインターフェースデバイスを含み、該ユーザーインターフェースデバイスは、電流センサーを更に備え、上記第1の駆動信号は電圧駆動信号であり、上記制御回路は、上記電圧駆動信号が電流を上記触覚アクチュエーター内に通電させる方法を表す第2の測定情報を上記電流センサーから受信するように構成され、上記制御回路は、上記第2の測定情報に更に基づいて上記アクチュエーターモデルを求めるように構成される。
【0081】
実施形態19は、実施形態1〜18のいずれか1つのユーザーインターフェースデバイスを含み、上記制御回路は、上記触覚アクチュエーターが上記第1の触覚効果以降に生成した触覚効果の数を追跡するように構成される。上記制御回路は、上記触覚アクチュエーターが上記第1の触覚効果以降に規定数の触覚効果を生成したと判断するように更に構成される。上記触覚アクチュエーターが上記規定数の触覚効果を生成したとの判断に応答して、上記制御回路は、追加の駆動信号を印加することと、該追加の駆動信号に応答した上記触覚アクチュエーターの動作を表す追加の測定情報を上記センサーから受信することとによって、上記アクチュエーターモデルを更新するように構成される。上記アクチュエーターモデルは、上記追加の測定情報に基づいて更新される。
【0082】
実施形態20は、触覚アクチュエーターを制御する方法に関する。該方法は、制御回路によって実行され、第1の触覚効果を生成する第1の駆動信号を上記触覚アクチュエーターに印加することと、上記第1の駆動信号に応答した上記触覚アクチュエーターの動作を表す測定情報をセンサーから受信することとを含む。該方法は、上記触覚アクチュエーターが駆動信号に応答してどのように動作するのかを表すアクチュエーターモデルを、上記測定情報に基づいて生成又は更新することと、上記アクチュエーターモデルを記憶デバイスに記憶することとを更に含む。該方法は、上記アクチュエーターモデルが生成又は更新された後、第2の触覚効果が上記触覚アクチュエーターによって生成されることを決定することも含む。該方法は、上記第2の触覚効果の所望の動作と上記アクチュエーターモデルとに基づいて第2の駆動信号を生成することと、該第2の駆動信号を上記触覚アクチュエーターに印加することによって上記第2の触覚効果を生成するように上記触覚アクチュエーターを制御することとも含む。上記実施形態では、上記触覚アクチュエーターは、第1のタイプの触覚アクチュエーターに属し、上記触覚アクチュエーターの上記アクチュエーターモデルは、同じく上記第1のタイプの触覚アクチュエーターに属する別の触覚アクチュエーターのアクチュエーターモデルと異なる。
【0083】
種々の実施形態を上述してきたが、これらの実施形態は、限定としてではなく本発明の単なる説明及び例として提示されていることを理解すべきである。形式及び細部における種々の変更は本発明の趣旨及び範囲から逸脱することなく本発明内で行うことができることは当業者には明らかであろう。したがって、本発明の範囲(breadth and scope)は、上述の例示的な実施形態のいずれかによって限定されるべきではなく、添付の特許請求の範囲及びそれらの均等物によってのみ規定されるべきである。本明細書において論考された各実施形態、及び本明細書において引用された各引用文献の各特徴は、他の任意の実施形態の特徴と組み合わせて用いることができることも理解されるであろう。本明細書において論考された全ての特許及び刊行物は、引用することによりその全体が本明細書の一部をなす。
【0084】
本願は、2018年1月26日に出願された米国特許仮出願第62/622,648号及び2019年1月17日に出願された米国特許出願第16/250,494号の利益を主張し、これらの出願の開示は引用することによりその全体が本明細書の一部をなす。