(57)【要約】【課題】サイレントハプティックを有するエネルギーセーブのための方法及びシステムを提示する。【解決手段】ハプティック可能デバイスは、ハプティック命令を含むハプティックトラックを実行するプロセッサを含む。ハプティックトラックは、ゼロ−フォース区間の存在を判定するために分析され、サイレントハプティックとしも知られる。ゼロ−フォース区間の期間が決定され、当該期間が所定の閾値を超える場合、システム又は方法は、エネルギーセーブモードに入る。エネルギーセーブモードの終了と関連付けられたオーバーヘッド時間が決定される。そして、エネルギーセーブモードは、オーバーヘッド時間より短いゼロ−フォース区間の最後に終了される。【選択図】図１
2017174381.tif 000002
【特許請求の範囲】
【請求項１】
ハプティック効果を生成する方法であって、
プロセッサにより、ハプティック効果を生成するように構成されるハプティック可能デバイスのためのハプティックトラックを実行するステップと、
前記ハプティックトラック内のゼロ−フォース区間の存在を判定するステップと、
前記ゼロ−フォース区間の期間を決定するステップと、
前記ゼロ−フォース区間の期間が所定の閾値を超えるかを判定するステップと、
前記ゼロ−フォース区間の期間が前記所定の閾値を超える場合、前記ゼロ−フォース区間の開始時にエネルギーセーブモードに入るステップと、
を備える方法。
【請求項２】
前記エネルギーセーブモードの終了と関連付けられたオーバーヘッド時間を決定するステップと、
前記オーバーヘッド時間より短い前記ゼロ−フォース区間の最後に前記エネルギーセーブモードを終了するステップと、を更に備える請求項１に記載の方法。
【請求項３】
ハプティックコールを受け付けると、前記エネルギーセーブモードの未完終了を可能にするステップを更に備える請求項１に記載の方法。
【請求項４】
前記エネルギーセーブモードが未完終了すると、前記エネルギーセーブモードの期間を決定するステップを更に備える請求項３に記載の方法。
【請求項５】
前記エネルギーセーブモードの期間に基づいて、前記ハプティックトラックを、前記エネルギーセーブモードの終了の時間と同期するステップを更に備える請求項４に記載の方法。
【請求項６】
前記エネルギーセーブモードの期間に基づいて、前記ハプティックトラックを、前記エネルギーセーブモードの終了の時間と同期するステップを更に備える請求項１に記載の方法。
【請求項７】
前記エネルギーセーブモードに入るステップは、ハプティックインターフェースロジックシステムを無効にするステップを含む請求項１に記載の方法。
【請求項８】
前記エネルギーセーブモードに入るステップは、前記ハプティックトラックの実行を一時停止するステップを更に含む請求項７に記載の方法。
【請求項９】
ゼロ−フォース区間の将来の発生のために前記ハプティックトラックを分析するステップを更に備える請求項１に記載の方法。
【請求項１０】
前記ゼロ−フォース区間の将来の発生及び非サイレント命令を含むハプティックパターンを生成するステップを更に備え、前記ハプティックパターンの実行は、前記エネルギーセーブモード中に発生する請求項９に記載の方法。
【請求項１１】
前記ハプティックパターンは、所定の数の時間間隔を含む請求項１０に記載の方法。
【請求項１２】
エネルギーセーブハプティック効果システムであって、
ハプティック効果を生成するように構成されるハプティック可能デバイスと、
タイマと、
プロセッサであって、
ハプティック命令を含むハプティックトラックを実行し、
前記ハプティックトラック内のゼロ−フォース区間の存在を識別し、
前記ゼロ−フォース区間の期間を決定し、
前記ゼロ−フォース区間の期間が所定の閾値を超えるかを判定するように構成される、プロセッサと、
前記ゼロ−フォース区間の期間が前記所定の閾値を超える場合に、前記ゼロ−フォース区間の開始時にエネルギーセーブモードに入る電力コントローラと、
を備えるシステム。
【請求項１３】
前記プロセッサは、前記エネルギーセーブモードの終了と関連付けられたオーバーヘッド時間を決定し、前記タイマを用いて、前記オーバーヘッド時間より短い前記ゼロ−フォース区間の最後に前記エネルギーセーブモードを終了するように更に構成される、請求項１２に記載のシステム。
【請求項１４】
前記プロセッサは、ハプティックコールリクエストを受け付けると、前記エネルギーセーブモードを未完終了するように更に構成される請求項１２に記載のシステム。
【請求項１５】
前記エネルギーセーブモードの未完終了の後に、前記タイマを用いて、前記エネルギーセーブモードの期間を決定する請求項１４に記載のシステム。
【請求項１６】
前記エネルギーセーブモードの期間に基づいて、前記ハプティックトラックを、前記エネルギーセーブモードの終了の時間と同期する請求項１２に記載のシステム。
【請求項１７】
前記プロセッサは、ゼロ−フォース区間の将来の発生のために前記ハプティックトラックを分析するように更に構成される請求項１２に記載のシステム。
【請求項１８】
前記プロセッサは、前記ゼロ−フォース区間の将来の発生及び非サイレント命令を含むハプティックパターンを生成するように更に構成され、前記ハプティックパターンの実行は、前記エネルギーセーブモード中に発生する請求項１７に記載のシステム。
【請求項１９】
プロセッサによって実行されたときに、前記プロセッサにエネルギーセーブモードに入らせる命令を有するコンピュータ可読媒体であって、前記エネルギーセーブモードに入ることは、
前記プロセッサにより、ハプティック効果を生成するように構成されるハプティック可能デバイスのためのハプティックトラックを実行するステップと、
前記ハプティックトラック内のゼロ−フォース区間の存在を判定するステップと、
前記ゼロ−フォース区間の期間を決定するステップと、
前記ゼロ−フォース区間の期間が所定の閾値を超えるかを判定するステップと、
前記エネルギーセーブモードの終了と関連付けられたオーバーヘッド時間を決定するステップと、
前記ゼロ−フォース区間の期間が前記所定の閾値を超える場合、前記ゼロ−フォース区間の開始時にエネルギーセーブモードに入るステップと、
前記オーバーヘッド時間より短い前記ゼロ−フォース区間の最後に前記エネルギーセーブモードを終了するステップと、
を含むコンピュータ可読媒体。
【請求項２０】
ゼロ−フォース区間の将来の発生のために前記ハプティックトラックを分析するステップを更に備える請求項１９に記載のコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
一実施形態は、一般的に、ハプティック効果に関するものである。より具体的には、一実施形態は、エネルギー節約及びハプティック効果に関するものである。
【背景技術】
【０００２】
「ハプティック」とは、ユーザに対する力、振動、及び運動などのハプティックフィードバック効果（すなわち、「ハプティック効果」）をユーザに加えることによって、ユーザのタッチの検知を利用するハプティック及び力のフィードバック技術に関する。モバイルデバイス、タッチスクリーンデバイス等のデバイス及びパーソナルコンピュータは、ハプティック効果を生成するように構成されてもよい。一般に、ハプティック効果を生成可能な内蔵ハードウェア（アクチュエータなどの）への呼び出しはデバイスのオペレーティングシステム（「ＯＳ」）内でプログラマブルである。これらの呼び出しは、どのハプティック効果をプレイするか特定する。例えば、ボタン、タッチスクリーン、レバー、ジョイスティック、ホイール、又は一部の別の制御装置を用いてユーザがデバイスと相互作用するときは、装置のＯＳは制御回路を通じてプレイコマンドを内蔵ハードウェアに送信することができる。内蔵ハードウェアは、次に、ユーザにより知覚される適切なハプティック効果を生じる。
【０００３】
ハプティック効果を生成するデバイスは、典型的には、その電源としてバッテリを頼っている。バッテリ寿命は、常に問題となっているが、デバイスがより洗練されてきており、電力消費は、より一層、設計の問題になっている。よって、電力消費を低減するための方法は、製品設計の重大な部分である。
【０００４】
多くの異なるハプティック可能なデバイスが存在し、ハプティック効果の生成のためのハプティックシステムを含む。これらのデバイス、特に非モバイルデバイスの多くについて、ハプティック効果を生成するために必要な電力消費は、大部分は重要ではない。しかし、電力消費及びバッテリ寿命は、常にモバイルデバイスのキーとなる懸念事項である。充電と充電との間の長い寿命は、消費者にとって非常に価値があるとみられる。スマートフォン等のようなモバイルデバイスによっても、モバイルデバイスアプリケーションと関連付けられた電力消費を最小限にすることは、恒常的な懸念事項であり、相対的に小さいハプティック効果からの電力消費である。２４時間の最悪の使用状況下で、典型的なハプティック効果は、使用状況に応じて、デバイスのバッテリ容量の０．９５から４．１１パーセントを消費することが研究で示されている。
【０００５】
しかし、ウェアラブルデバイスは、一般的に、電力消費を低減する需要が増加している。ほとんどのウェアラブルデバイスは、夜間に充電されることが期待されている一部のスマートフォンとは対照的に、充電から次の充電までの間が多くの日数又は週の間、続くことが期待されている。結果として、ウェアラブルデバイスは、充電から次の充電までの間に７日間まで作動することが期待される典型的なバッテリ（例えば、〜２５０ｍＡｈ）の観点で、ハプティック効果を生成するために厳しいエネルギー量を有する。スマートフォンと比べて、ウェアラブルデバイス上のハプティック効果は、潜在的に、電力量の大きな割合を消費しうる。
【発明の概要】
【０００６】
一実施形態は、ハプティックトラックを実行するプロセッサを含むハプティック可能なデバイスの使用を含む。ハプティックトラックは、ゼロ−フォース区間（つまり、サイレントハプティック）の存在を判定するために分析される。ゼロ−フォース区間の期間が判定され、当該期間が所定の閾値を超える場合、システムは、エネルギーセーブモードに入る。エネルギーセーブモードの終了と関連付けられたオーバーヘッド時間が決定される。エネルギーセーブモードは、オーバーヘッド時間より短いゼロ−フォース区間の最後に終了される。
【図面の簡単な説明】
【０００７】
【図１】図１は、本発明の実施形態に係るハプティック可能システムの図である。
【図２Ａ】図２Ａは、実施形態に係る、サイレント、ゼロ−フォースハプティック区間を含むハプティックトラックを示す。
【図２Ｂ】２Ｂは、実施形態に係る、サイレント、ゼロ−フォースハプティック区間を含むハプティックトラックを示す。
【図３】図３は、実施形態に係る、ハプティック可能システムの複数の制御レイヤを示す。
【図４】図４は、実施形態に係る、ハプティック可能システムの、制御レイヤによる、電力消費を示す。
【図５】図５Ａ、５Ｂ及び５Ｃは、実施形態に係る、ハプティック可能システムの、制御レイヤによる、エネルギーセーブモードを有する電力消費の複数のコンフィグレーションを示す。
【図６】図６は、実施形態に係る、ハプティック可能システムの、制御レイヤによる、エネルギーセーブモード及びパターン生成を有する電力消費を示す。
【図７】図７は、実施形態に係る、エネルギーセーブを有するハプティックレンダリングスレッドアルゴリズムの方法を示す。
【図８】図８は、実施形態に係る、低電力エネルギーセーブモードを有するハプティックレンダリングスレッドアルゴリズムの方法を示す。
【発明を実施するための形態】
【０００８】
ハプティック可能なデバイスは、典型的にはハプティックトラック（例えば、ハプティック命令のスレッド）により制御される様々なハプティック効果を生じる。ハプティックトラックは、強度、持続期間及び周波数等のような各ハプティック効果の特性を特定する各種命令を含む。ハプティック効果は、典型的には、ビデオ、オーディオ又はゲーム等のような情報の他のストリームと同期される。ハプティックトラックは、ハプティック可能なデバイスがハプティック効果を生じない、「ゼロ−フォース区間」又はサイレントハプティックの期間も含む。更に、これらのゼロ−フォース区間は、通常、２つの効果間で生じ、周期的な効果で非常に共通である。
【０００９】
一実施形態は、サイレントハプティック効果が検出されるとき、エネルギーセーブモードに入るハプティック可能なシステムである。システムは、ゼロ−フォース区間としても知られるサイレントハプティック命令の存在を判定するためにハプティックトラックをスキャンする。その後、システムは、ゼロ−フォース区間の期間を決定する。エネルギーセーブモードに入る決定をする前に、システムは、ゼロ−フォース区間の期間が所定の閾値を超えるかを判定する。当該区間が所定の閾値未満である場合、システムは、典型的には、エネルギーセーブモードに入ることを開始するための時間及びエネルギーが経済的ではないことを示す。当該区間が所定の閾値未満である場合、エネルギーセーブモードに入ることが開始される。エネルギーセーブモードに入ることは、ゼロ−フォース区間の開始時に開始される。その後、システムは、エネルギーセーブモードの終了と関連付けられたオーバーヘッド時間を決定し、オーバーヘッド時間よりも短いゼロ−フォース区間の最後にエネルギーセーブモードを終了する。
【００１０】
別の実施形態では、オーバーヘッド時間よりも短いゼロ−フォース区間の最後までエネルギーセーブモードに存在することを継続するのではなく、システムは、ハプティックコールを受け付けると、エネルギーセーブモードを未完終了する。早い終了の場合、システムは、システムが自身をハプティックトラックの実行と同期するように、エネルギーセーブモードにあった期間を決定する。
【００１１】
別の実施形態では、高いエネルギーセーブ及び効率を実現するために、システムは、ゼロ−フォース区間の将来的な発生のためにハプティックトラックを分析する。初めのゼロ−フォース区間の完了時にエネルギーセーブモードを終了するのではなく、システムは、追加のゼロ−フォース区間及びハプティック命令の中断を含むハプティック効果の「パターン」を既に識別していると、一時停止のままとどまり、よって、パターンの実行が完了されるまでエネルギーセーブモードにとどまる。オーバーヘッド時間よりも短いパターンが完了すると、システムは、エネルギーセーブモードを終了する。
【００１２】
図１は、本発明の実施形態に係るハプティックシステム１００のブロック図である。システム１００は、ハプティックデバイス１１０を含む。ハプティックデバイス１１０は、また、電力コントローラ１２２を有するプロセッサ１２０と、アクチュエータ１５２を含むアクチュエータシステム１５０と、オペレーティングシステム１３２を含むメモリ１３０と、ハプティック命令１３４と、タイマ１３６と、を含む。システム１００は、また、オーディオ出力１４０と、センサ１６０と、を含む。
【００１３】
ハプティックデバイス１１０は、また、タッチ検出することができるディスプレイスクリーン（図示せず）も含みうる。よって、画像を表示することに加えて、スクリーンは、ユーザによって提供されるもののようなタッチを認識することが可能であり、表面上のタッチの位置、圧力、大きさ及び持続期間のいずれかも認識してもよい。タッチに対応するデータは、プロセッサ１２０又はシステム１００内の別のプロセッサに送信され、プロセッサ１２０は、タッチを解釈し、それに応じてハプティック効果信号を生成する。タッチ表面は、容量検出、抵抗検出、表面音響波検出、圧力検出、光学検出等を含むいずれかの検出技術を用いてタッチを検知してもよい。タッチ表面は、マルチタッチ接触を検知してもよく、マルチタッチ及び同時に生じるタッチの位置を区別することが可能であってもよい。
【００１４】
ハプティックデバイス１１０は、例えば、電源、Ｉ／Ｏポート、マイクロフォン、コントロールボタン、カメラ等を含む、図示されない他の部品を含んでもよい。更に、ハプティックデバイス１１０は、ＲＦ送信器／受信器も含み、プロセッサ１２０は、また、ＲＦ送信器／受信器を介して受信された信号に応じてハプティック効果を生成しうる。
【００１５】
システム１００は、メモリ１３０に結合されたプロセッサ１２０を含む。メモリ１３０は、データを検索、提示、変更及び記憶するための各種コンポーネントを含んでもよい。例えば、メモリ１３０は、プロセッサ１２０により実行されたときに、機能性を提供するソフトウェアモジュールを記憶してもよい。メモリ１３０は、ハプティック効果命令に加えてオペレーティングシステムを記憶しうる。ハプティック効果命令は、「ハプティックトラック」とも呼ばれ、所望のハプティック効果を生じるためにアクチュエータシステム１５０を制御するプロセッサ１２０にコマンドのストリームを提供する。これらの効果は、効果の種類（例えば、振動、変形、シェイク等）と、例えば、周波数、持続期間、強度、オン／オフ、広がり、テーマ、推奨ハプティックアクチュエータ及び推奨情報エンコード等のような他のパラメータと、を含む。アクチュエータシステム１５０は、１以上のアクチュエータ１５２と結合される。プロセッサ１２０は、データ、命令、ビデオ及び／又はオーディオコンテンツを含みうる。ビデオ、ゲーム及びハプティック可能アプリケーションは、典型的には、上記に示されたパラメータを初期化するデフォルトコンフィグレーション設定のセットを含む。一時的でないメモリ１３０は、プロセッサ１２０によりアクセスされる様々なコンピュータ可読媒体を含んでもよい。様々な実施形態では、メモリ１３０は、揮発性及び不揮発性媒体、リムーバブル及び非リムーバブル媒体を含んでもよい。例えば、メモリ１３０は、ランダムアクセスメモリ（「ＲＡＭ」）、ダイナミックＲＡＭ（ＤＲＡＭ）、スタティックＲＡＭ（ＳＲＡＭ）、リードオンリーメモリ（「ＲＯＭ」）、フラッシュメモリ、キャッシュメモリ及び／又は他の種類の一時的でないコンピュータ可読媒体のいずれかの組み合わせを含んでもよい。
【００１６】
プロセッサ１２０は、どのハプティック効果が再生されるか、及び効果がコンフィグレーション設定パラメータに基づいて再生される順序を決定しうる。ハプティック効果が、ユーザの相互作用に基づいてこれらのパラメータを生成される又はバリエーションであるとき、これらのパラメータのいくつかのバリエーションを含む場合に、ハプティック効果は、「動的」とみなされる。ハプティック効果の特定の定義されたシーケンスは、「パターン」とも呼ばれ、特定のパターンは、ハプティック命令の特定のシーケンス及びゼロ−フォース区間を含む。
【００１７】
アクチュエータ１５２は、１又は複数のアクチュエータを含むことができ、このようなアクチュエータは、変形及び振動型のアクチュエータを含む、又は変形アクチュエータは、変形及び振動するために用いられうる。アクチュエータは、限定されないが、偏心回転質量（「ＥＲＭ」Ｅｃｃｅｎｔｒｉｃ  Ｒｏｔａｔｉｎｇ  Ｍａｓｓ）、線形共振アクチュエータ（「ＬＲＡ」Ｌｉｎｅａｒ  Ｒｅｓｏｎａｎｔ  Ａｃｔｕａｔｏｒ）、圧電モータ又はソレノイドアクチュエータを含む何れかの種類のアクチュエータを含みうる。アクチュエータ１５２に加えて又はアクチュエータ１５２に代えて、システム１００は、静電摩擦（「ＥＳＦ」ｅｌｅｃｔｒｏｓｔａｔｉｃ  ｆｒｉｃｔｉｏｎ）、超音波表面摩擦（「ＵＳＦ」ｕｌｔｒａｓｏｎｉｃ  ｓｕｒｆａｃｅ  ｆｒｉｃｔｉｏｎ）を生成するデバイス等の非機械的又は振動触覚ハプティックデバイス、超音波触覚変換器に音響照射圧を誘発するデバイス、ハプティック基板及びフレキシブル又は変形可能表面又は表面変化デバイスを用い、ユーザの身体に取り付けられるデバイス、空気ジェットを用いて空気のパフのような突出触覚出力を提供するデバイス、電気的な筋肉刺激を提供するデバイス等である他の種類のハプティック出力デバイス（図示せず）を含んでもよい。更に、アクチュエータ１５２は、ハプティックデバイス１１０を１以上の軸に沿って（例えば、コーナー又はねじれに沿って）曲げさせるために、形状記憶合金（ｓｈａｐｅ  ｍｅｍｏｒｙ  ａｌｌｏｙ（「ＳＭＡ」））ワイヤを使用しうる。スマート材料、モータによって引っ張られたストリング又は可動ピンのアレイ等のような他の技術もアクチュエーションのために用いられうる。
【００１８】
アクチュエータ１５２を有するアクチュエータシステム１５０は、様々な振動及びシェイキング効果を含むハプティック効果を生じる。アクチュエータシステム１５０及びアクチュエータ１５２は、また、ハプティックデバイス１１０の形状を変形するために用いられうる。このような変形は、単軸、二軸又は三軸で生じ、一、二又は三次元でのハプティックデバイス１１０の拡張、ねじれ又は折り曲げを生じうる。
【００１９】
プロセッサ１２０は、どの種類の汎用プロセッサでもよい、又は特定用途向け集積回路（「ＡＳＩＣ：ａｐｐｌｉｃａｔｉｏｎ−ｓｐｅｃｉｆｉｃ  ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ」）等のようなハプティック効果の提供のために特別に設計されたプロセッサも可能である。プロセッサ１２０は、システム１００全体を操作するものと同じプロセッサでもよいし、又は別のプロセッサでもよい。プロセッサ１２０は、特定のハプティック効果が、効果の特徴を含む、アクチュエータドライバ１５０により生成されるのと同様にプロセッサ１２０に指示するメモリ１３０からのハプティック効果命令をフェッチする。ハプティック効果命令は、メモリに予めロード及び常駐されうる、又はそれらは、集積ポート（例えば、ユニバーサル・シリアル・バス「ＵＳＢ」）からロードされる、又はデータストリーム１８０を介してダウンロードされうる。
【００２０】
プロセッサ１２０は、アクチュエータドライバ１５０にコマンド及び制御信号を出力し、所望のハプティック効果を生じるのに必要な電流及び電圧（例えば、モータ信号）を、アクチュエータ１５２に供給するために使用される、電子部品及び回路を含む。前述したように、システム１００は、１より多いアクチュエータ１５２を含んでもよく、各アクチュエータは、プロセッサ１２０に全てが結合される別の駆動回路（図示せず）を含んでもよい。
【００２１】
システム１００は、ウェアラブルデバイス１１０との相互作用を検知するために、例えばセンサ１６０等の多様なセンサを含んでもよい。センサ１６０は、なかでもこれに含まれるのは、相互作用中の変形の大きさを測るための歪ゲージセンサ、ハプティックデバイスに加えられる力／ストレスを測定するための力検知抵抗（「ＦＳＲ：ｆｏｒｃｅ  ｓｅｎｓｉｎｇ  ｒｅｓｉｓｔｏｒ」）センサ、タッチ可能なディスプレイでの単一又は複数のタッチ入力の位置を検出するためのマルチタッチのタッチ・センサ、各タッチ位置下に加えられる圧力を測るためのマルチタッチ圧力センサ、環境条件を捉えるための温度／湿度／気圧センサからなりうる。センサは、また、ディスプレイの動き、速度、加速度及び向きを特徴づけるための加速度計／ジャイロスコープ／磁力計、自然に又はハプティック可能デバイスにより生じるハプティック効果からの音を含むユーザの音声コマンド又は環境オーディオ情報を捉えるためのマイクロフォン、及び他のデバイスから／他のデバイスへ情報をワイヤレスで受信／送信するためのワイヤレストランスミッタを含みうる。センサ１６０に対応するデータは、プロセッサ１２０又はシステム１００内部の別のプロセッサに送信され、プロセッサ１２０は、センサデータを解釈し、それに応じてハプティック効果信号を生成し、ハプティックコンフィグレーション設定を生成又は変更し、フィードバック、音声応答及び視覚画像を生じる。
【００２２】
システム１００は、携帯電話、パーソナルデジタルアシスタント（「ＰＤＡ」）、スマートフォン、コンピュータタブレット、ゲーミングコンソール、乗り物ベースのインターフェース等のようなハンドヘルドデバイスであってもよく、又は１以上のアクチュエータを有するハプティック効果システムを含む他の種類のデバイスであってもよい。ユーザインターフェースは、タッチ検知面であってもよく、マイクロフォン、カメラ等のような他の種類のユーザインタフェースでありうる。１より多いアクチュエータを有する実施形態では、回転性能を有する各アクチュエータは、デバイスに広範囲のハプティック効果を生成するために、異なる回転性能を有してもよく、例えば、各アクチュエータは、個別に制御されうる；また、一部の回転アクチュエータは、他の回転アクチュエータの回転軸に対する角度でそれらの回転軸を有する。同様に、他の機能を有する複数のアクチュエータを有する実施形態では、各アクチュエータは、デバイスで広範囲のハプティック効果を示すために個別に制御されうる。
【００２３】
図２Ａは、実施形態に係る、取り得るハプティックトラック２００、ハプティック命令のシーケンスの図である。垂直軸は、ハプティック出力レベルを示し、水平軸は、時間を示す。ハプティックトラック２００は、開始時間ｔ１及び終了時間ｔ２等のようなアクティブハプティック効果の時間を含む。ハプティックトラック２００は、ｔ０からｔ１の間等のような、ハプティック効果が生成されないゼロ−フォースハプティック区間の時間も含む。
【００２４】
図２Ａに示されるハプティック出力レベルは、実際のハプティック出力レベルを示していないが、一部の量の“非ゼロ”アクティビティが存在することを示している。更に、非ゼロハプティック出力時間は、１又は複数のハプティック命令１３４を実行するプロセッサ１２０により生成されうる。
【００２５】
実施形態では、プロセッサ１２０は、タイマ１３６と共に、周期的な規則で出力フォースレベルを出力する。一例として、各期間は、５ミリ秒（ｍｓ）を表しうる。各５ｍｓ周期で、タイマ１３６は、次の５ｍｓに生成されるハプティック効果の種類を定義するハプティック演算を処理するためにプロセッサ１２０に信号を送信する割り込み（インタラプト）を生成する。ｔ０において、プロセッサ１２０は、ｔ０からｔ１の５ｍｓ周期に生成されるハプティック効果を計算する。この例では、所望のハプティック効果は、ゼロ−フォースサイレントハプティックコマンドからなるサイレントハプティックである。コマンドが発せられると、プロセッサ１２０は、次の割り込みを待つ。そして、ｔ１において、プロセッサは、別の割り込みを受け付け、次の周期のハプティック効果を計算する。この例では、ｔ１からｔ２に非ゼロハプティック出力があり、よって、プロセッサ１２０は、適切なハプティック効果コマンド又は期間のための複数のコマンドを生成する。
【００２６】
この処理は、タイマ１３６からプロセッサ１２０により受け付けられた各割り込みに対して継続する。ｔ４からｔ８にゼロ−フォース出力の長い期間があることに留意する。しかし、プロセッサ１２０は、５ｍｓごとにタイマ１３６から割り込みを受け付け、これによって、各期間にサイレントハプティック命令を生成する割り込みを処理しなければならない。割り込みの処理は、アクチュエータシステム１５０によるハプティック効果の実際の生成のためだけではなく、ｔ４−ｔ８ゼロ−フォース区画を含む、どんなアクションが取られるかを処理するために５ｍｓごとに割り込まれ、タイマ１３６によって駆動されるプロセッサ１２０に対しても電力を消費する。
【００２７】
本発明の一実施形態は、ゼロ−フォース区間中にプロセッサを休止させ、５ｍｓごとにゼロ−フォースハプティックコマンドを演算しないことを可能にする。このような休止期間の識別は、プロセッサがゼロ−フォース区間中にエネルギーセーブモードに入ることを許容する。例えば、プロセッサ１２０は、１００ｍｓのゼロ−フォース区間を識別し、当該時間中にエネルギーセーブモードに入る。ゼロ−フォース区画中には、タイマ１３６は、前の５ｍｓ区間ではない、１００ｍｓのゼロ−フォース区画の最後にのみ割り込みを生成するためにリセットされる。しかし、タイマ１３６は、割り込みの唯一のソースではない。別のソースは、プロセッサに一連のハプティックコマンドを生成することを要求する割り込みを生成しうるソフトウェアアプリケーション又は他の種類のユーザ入力でありうる。この追加の割り込みが、この１００ｍｓエネルギーセーブモード中に発生した場合、応答するための２つのオプションが存在する。第１に、割り込みは、無視され、現在のエネルギーセーブモードが満了するまで処理されない。第２のオプションは、エネルギーセーブモードを未完終了し、割り込みにサービスを提供しうる。
【００２８】
これらのオプションの各々には長所及び短所がある。実施例では１００ｍｓのゼロ−フォース区画の終了まで割り込みのサービスが遅延される場合、エネルギーセーブは、維持されるが、割り込みのサービス提供が遅延される。割り込みのサービスの遅延は、ユーザにアクセスできないラグ時間をもたらす。エネルギーセーブ期間が未完割り込みされる場合、エネルギーセーブが低下するが、割り込みは、タイムリーにサービス提供される。更に、エネルギーセーブモードが未完終了される場合、プロセッサは、予定していたよりも早くコマンドを処理するのと同様に、自身を再度同期しなければならない。
【００２９】
図２Ｂは、実施形態に係る、取り得るハプティックトラック、ハプティック命令のシーケンス、のスクリーンショットを示す。図２Ｂは、ハプティック効果間のゼロ−フォースギャップ区間を有するハプティック効果のストリームにおいて、Ｐｕｌｓｅ（パルス）及びＲａｍｐ  ｄｏｗｎ（ランプダウン）の２種類のハプティック効果をハイライトする。ギャップは、ギャップ１、ギャップ２、ギャップ３及びギャップ４と符号付けされる。
【００３０】
図３は、実施形態に係る、ハプティック可能なシステム３００におけるエネルギーセーブモードの実施と関連付けられた制御レイヤを示す。ハプティック可能なデバイスを制御するソフトウェア、アルゴリズム、コントローラ及び回路は、機能性のレイヤの観点でみられうる。最も低いレベル、インターフェースロジック及びアクチュエータシステムレイヤ３３０は、所望のハプティック効果を生じるハードウェアアクチュエータ及びコントローラ（例えば、図１のアクチュエータシステム１５０及びアクチュエータ１５２）を制御する。ゼロ−フォース区間中には、インターフェースロジック／アクチュエータシステムレイヤ３３０は、エネルギーを節約するためにシャットダウンされうる。
【００３１】
ドライバレイヤ３２０は、典型的には、ソフトウェア実装であり、レイヤ３３０におけるアクチュエータシステムに命令を送信することに関与する。一実施形態では、ドライバレイヤ３２０は、次回のゼロ−フォース区間を決定することに関与する。ドライバレイヤ３２０は、図２Ａと共に説明された周期的なタイミング割り込みを含むタイマ１３６設定を制御し、これによって、エネルギーセーブの期間を決定及び制御する。ドライバレイヤ３２０は、処理命令では、処理電力の一部を消費し、これによって、図４、５及び６と共に、より詳細に説明されるように、エネルギーセーブ期間中に、タイマ１３６が割り込みをサービス提供する間にエネルギーセーブ期間に入る。
【００３２】
サービスレイヤ３１０は、最も高いレベルであり、常にアクティブである。サービスレイヤ３１０は、また、エネルギーセーブモードを受けるハプティックレンダリングスレッドも含みうる。サービスレイヤ３１０は、ハプティック可能なデバイスにおけるハプティックシステムの全ての機能を監視及び制御する。サービスレイヤ３１０は、処理される所望のハプティック効果に付随するドライバレイヤ３２０にコールを発する。別の実施形態では、サービスレイヤ３１０は、ゼロ−フォース区間の期間の決定及び演算に関与する。
【００３３】
図４は、実施形態に係る、ハプティックシステム４００における制御レイヤと関連付けられた電力消費を示す。ハプティック出力レベルグラフ４１０は、図２Ａの写しであり、ｔ１からｔ２、ｔ３からｔ４、ｔ８からｔ１１、ｔ１２からｔ１４で生じるハプティック効果、及びｔ１６での開始を示す。ハプティック出力レベルグラフは、ｔ０からｔ１、ｔ２からｔ３、ｔ４からｔ８、ｔ１１からｔ１２、及びｔ１４からｔ１６のゼロ−フォース区間も示す。
【００３４】
ドライバレイヤ電力グラフ４３０は、周期的な電力使用を示す。図２及び３について説明されたように、タイマ１３６は、ドライバレイヤ３２０がインターフェースロジック及びアクチュエータシステムレイヤ３３０に送信するためのハプティックコンテンツコマンドを演算する周期的な割り込みを生成する。前の実施例では、タイマ１３６は、５ｍｓごとに割り込みを生成した。当該実施例を図４に適用して、期間は、例えば、ｔ０からｔ１で１０ｍｓに定義されうる。よって、ドライバレイヤ３３０は、タイマ１３６が割り込みを生じたときに、５ｍｓごとの電力使用を示し、ドライバレイヤ３３０は、電力を上げ、どのハプティック効果が、ＩＦ／アクチュエータシステムレイヤ３３０によって生成されるかを決定する。ドライバレイヤ３３０がＩＦ／アクチュエータシステムレイヤ３３０にコマンドを送信した後、次の割り込みまで電力を落とす。
【００３５】
前述されたように、サービスレイヤ３１０は、常にアクティブであるが、アプリケーションが新たな効果の再生を要求するときに、電力を消費し、ドライバレイヤ３２０に新たなフォース値を演算及び送信するために、周期的に、例えば、５ｍｓごとに、タイマ１３６によって割り込まれる。よって、サービスレイヤ電力グラフ４２０は、電力グラフ４３０のものと同様の電力消費のレベルを示す。図４に示される全ての電力レベルが特定のレベルを示すために示されていないが、電力の相対的な消費又は電力消費がないことを示している。
【００３６】
ＩＦ／アクチュエータレイヤ電力グラフ４４０は、インターフェースロジック及びアクチュエータシステムレイヤ３３０と関連付けられた電力消費を示す。電力消費は、グラフ４１０に示されるハプティック出力レベルと並行していることを留意する。
【００３７】
図５Ａは、実施形態に係る、エネルギーセーブモードの実装を含む、ハプティックシステム５００における制御レイヤと関連付けられた電力消費を示す。システム５００は、サービス及びドライバレイヤ電力グラフ５２０及び５３０を除いて、システム４００と同様である。ドライバレイヤ電力グラフ５３０は、非ゼロハプティック効果時の電力使用のみを示す。よって、ドライバレイヤ電力グラフ５３０は、ゼロ−フォース区間中には電力使用がないことを示す。ここで、ドライバレイヤ電力グラフ５３０は、非ゼロハプティック効果中の周期的な区間でのみアクティブである。これらの周期的な割り込みは、非ゼロハプティック効果を再生している際に必要なフォース値を算出するために必要である。よって、図４及び５Ａで示される同一の期間に対して、図４は、図５Ａの１９に対して３２の電力消費の例を示す。
【００３８】
図５Ｂは、実施形態に係る周期ｔ０からｔ４について図５Ａの拡大図を示す。要素５３０Ａは、ドライバレイヤ電力を示し、要素５４０Ａは、ＩＦ／アクチュエータ電力を示す。ドライバレイヤ電力５３０Ａ区間は、ＩＦ／アクチュエータ電力区間に先行する。プロセッサ１２０が「休止」又はエネルギーセーブモードにあるとき、プロセッサが「起き」、それらの前の状態にリソースを復元するためにわずかな時間（すなわち、オーバーヘッド）が必要である。したがって、タイマ１３６は、プロセッサ及び他の必要な構成要素を起こすために要求されるオーバーヘッド時間よりも短い、ゼロ−フォース区間の終了時に割り込みを生成し、それらの前の状態にリソースを復元するようにプログラムされる。ここで、図５Ｂは、所望のハプティック出力を正確に生成するために必要なこのオーバーヘッド時間を示す。
【００３９】
エネルギーセーブモードに入る及び出ることに関連するオーバーヘッド時間に加えて、レジスタストレージ等のようなエネルギーセーブモード用にシステムを準備するために必要な特定量のエネルギーも存在する。図５Ｃは、実施形態に係る、エネルギーセーブモードに入ることが効果的ではないと判定されるときのハプティックトラックの一部についての電力消費を示す。図５Ｃは、期間ｔ１からｔ４について、ハプティックアクティビティの２つの期間及びサイレントハプティックの１つの期間を示す。リソースをエネルギーセーブモードに入れ、それらを復元するために必要なエネルギーに応じて、ゼロ−フォース区間の期間は、エネルギーセーブモードに入るために十分ではない。よって、プロセッサ１２０は、ゼロ−フォース区間の期間を決定した後、当該期間が、閾値期間を超えず、よって、エネルギーセーブモードに入らないことを決定する。したがって、前述の例と同様に、タイマ１３６は、非ゼロフォースハプティック効果中及び期間ｔ４までの中断ゼロ−フォース区間に５ｍｓごとに割り込みを生成する。図５Ａによれば、ｔ４において、４つの期間のゼロ−フォース区間が存在し、例えば、プロセッサ１２０は、閾値期間レベルよりも大きいことを決定し、上述したオーバーヘッド時間よりも短い、ｔ４においてエネルギーセーブモードを開始する。
【００４０】
図６は、実施形態に係る、パターンを用いるエネルギーセーブモードの実装を含む、ハプティックシステム６００における制御レイヤと関連付けられた電力消費を示す。１つの次回のゼロ−フォース区間に基づいてエネルギーセーブモードを開始するかどうかを評価するのではなく、図６は、パターンの概念を示す。例えば、特定のハプティックシーケンスが複数回用いられる場合、パターンは、当該特定のシーケンスについて定義される。そして、サービス及びドライバレイヤ３１０及び３２０は、パターンを開始し、リソースを復元するためのオーバーヘッド時間よりも短い、パターンの期間のためのエネルギーセーブモードに入る。
【００４１】
例えば、ハプティックパターンは、以下のシーケンスによって定義されうる。初期状態オン１周期後オフ２周期後オン３周期後オフ４周期後オフ５周期後オフ６周期後オフ７周期後オン８周期後オン９周期後オン
【００４２】
上記のパターンは、期間ｔ１から期間ｔ１０の最後に示されるようなハプティック出力レベル６１０で表されることに留意する。したがって、ハプティックパターンを実行するとき、サービス及びドライバレイヤ電力グラフ６２０及び６３０は、パターンの開始時、パターンの終了時、及び期間ｔ１０の終了時に電力を消費する。パターンの終了後に、システムは、図５に記載されるような電力セーブモードに復帰し、プロセッサが、ゼロ−フォース区間がエネルギーセーブモードに入るために十分な期間のものであると判定しない限り、各期間に電力を引く。
【００４３】
よって、サービス及びドライバレイヤは、パターンの開始時又は開始前に、パターンをＩＦ／アクチュエータシステムレイヤ３３０に送信する。ＩＦ／アクチュエータシステムレイヤ３３０は、サービス及びドライバレイヤ３１０及び３２０がエネルギーセーブモードにある際に、パターンを再生することに関与する。図６に示されるように、パターンの開始時にｔ１で電力スパイクが存在し、その後、システムは、期間ｔ１０までエネルギーセーブモードに入る。この例では、プロセッサ１１２は、ｔ１１からｔ１２の間のゼロ−フォース区間が、エネルギーセーブモードに入るために不十分であると決定し、よって、サービス及びドライバレイヤは、ｔ１４まで５ｍｓごとに電力の消費を継続する。ｔ１４において、プロセッサ１１２は、ｔ１４からｔ１６の間のゼロ−フォース区間がエネルギーセーブモードに入るために十分な期間のものであると決定する。
【００４４】
図７は、実施形態に係る、ゼロフォース又はサイレントハプティックのためにエネルギー節約をしない機能７００を示すフロー図である。一部の例では、図７（及び以下の図８）のフロー図の機能は、メモリ又は他のコンピュータ可読媒体又は有形媒体に記憶されるソフトウェアによって実装され、プロセッサによって実行されてもよい。他の実施形態では、当該機能は、ハードウェア（例えば、ａｐｐｌｉｃａｔｉｏｎ  ｓｐｅｃｉｆｉｃ  ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ（「ＡＳＩＣ」））、ｐｒｏｇｒａｍｍａｂｌｅ  ｇａｔｅ  ａｒｒａｙ（「ＰＧＡ」）、ｆｉｅｌｄ  ｐｒｏｇｒａｍｍａｂｌｅ  ｇａｔｅ  ａｒｒａｙ（「ＦＰＧＡ」）等の使用により）又はハードウェア及びソフトウェアの組み合わせによって実行されてもよい。
【００４５】
機能７００は、７０５において、スリープモードにおけるハプティック可能なシステムで開始する。スリープモードにおいて、システムは、図１のアクチュエータシステム１５０として示されるようなハプティック増幅器等のようなハプティックシステムを無効にし、スリープするためにハプティックレンダリングスレッドに入る。７１０において、プロセッサ１２０は、ハプティックリソースがアクティベートされるべき割り込みのような信号を受け付ける。割り込みが受け付けられると、システムは、スリープモードを出て、プロセッサ１２０及びその関連するリソースを呼び起こす。７１５において、システムは、タイマ１３６又はスリープモードに入っていない別の低いレベルのタイマ回路又は機能に基づいて、現在の時間を計算しなければならない。すなわち、システムは、現在の時間について正しいハプティックが生成されるように、自身を同期しなければならない。７１５において、現在の時間が計算されると、システムは、現在の時間で生成するために所望のハプティックを決定する。７２０において、正しいハプティック効果が識別されると、プロセッサ１２０は、適切なハプティックコマンドを生成し、そのコマンドを、アクチュエータ１５２を制御するアクチュエータシステム１５０に送信する。
【００４６】
７２５において、プロセッサ１２０がアクチュエータシステム１５０にハプティックコマンドを出力すると、システムは、ドライバレイヤ電力グラフ４３０により図４に示されるように、再度スリープモードに入る。システムは、タイマ１３６が割り込みを生じるまでスリープモードにとどまる。その後、ステップ７３０において、割り込みが受け付けられたとき、システムは、更に生成されるハプティック効果があるかを判定する。ハプティック効果がある場合、プロセッサ１２０は、自身を再度同期し、現在の時間に適切なハプティックを演算し、７２０へ進む。更に生成されるハプティック効果がない場合、ステップ７３５において、ハプティックシステムは、非アクティベートされ、システムは、更に生成されるハプティック効果が存在するまでスリープモードに入る。
【００４７】
図８は、実施形態に係る、ゼロ−フォース又はサイレントハプティックについての低電力エネルギーセーブのための機能８００を示すフロー図である。機能８００は、機能７００と同様であるが、ゼロ−フォース区間の期間を決定するために追加のステップを含み、これは、エネルギー使用を劇的に減少させる。機能８００は、８０５において、スリープモードにおけるハプティック可能なシステムで開始する。スリープモードにおいて、システムは、ハプティック増幅器等のようなハプティックシステムを無効にし、スリープするためにハプティックレンダリングスレッドに入る。８１０において、プロセッサ１２０は、ハプティックリソースがアクティベートされるべき割り込みのような信号を受け付ける。割り込みが受け付けられたとき、システムは、スリープモードを出て、プロセッサ１２０及びその関連するリソースを呼び起こす。８１５において、タイマ１３６又はスリープモードに入っていない別の低いレベルのタイマ回路又は機能に基づいて、現在の時間を計算しなければならない。すなわち、システムは、現在の時間について正しいハプティックが生成されるように、自身を同期しなければならない。８１５において、現在の時間が計算されると、システムは、現在の時間で生成するために所望のハプティックを決定する。８２０において、正しいハプティック効果が識別されると、プロセッサ１２０は、適切なハプティックコマンドを生成し、そのコマンドを、アクチュエータ１５２を制御するアクチュエータシステム１５０に送信する。
【００４８】
８２５において、プロセッサ１２０がアクチュエータシステム１５０にハプティックコマンドを出力すると、システムは、ドライバレイヤ電力グラフ４３０により図４に示されるように、再度スリープモードに入る。システムは、タイマ１３６が割り込みを生じるまでスリープモードにとどまる。タイマ１３６が５ｍｓごとに割り込みを生成する例の図４で説明されたように、ドライバレイヤにおいて最小限のエネルギーセーブが存在する。機能８００に反映されるように、これは、図５Ａ、５Ｂ及び６に示されるエネルギーセーブに続き、８３０のように、更に生成されるハプティックがあるとき、８４０において、システムは、ゼロ−フォース期間を決定する。前述されたように、ゼロ−フォース区間は、実際にハプティック効果が生成されないサイレントハプティックとしても知られる。ゼロ−フォース区間の期間が決定されると、８４５において、システムは、当該期間を閾値と比較する。図５Ｃで説明されたように、ゼロ−フォース区間が閾値よりも大きくないことが決定され、エネルギーセーブモードは、ｔ１からｔ４の期間の効果に入れられない。
【００４９】
機能８００では、同一のロジックを適用する、すなわち、ゼロ−フォース区間の期間が所定の閾値よりも大きくない（つまり、１４５において「ＮＯ」の場合）、処理は、現在の時間のハプティックが演算される８１５において継続する。しかし、ゼロ−フォース区間の期間が所定の閾値よりも大きい（つまり、１４５において「ｙｅｓ」の場合）、８５０において、ハプティックシステムは、非アクティベートされ、８５５において、ハプティックシステムは、システムがエネルギーセーブモードを出て、ハプティックリソースを復元するために必要なオーバーヘッド時間より短く、ゼロ−フォース区間の期間よりも長いエネルギーセーブスリープに入る。また、システムがゼロ−フォース区間期間の終了前にハプティック効果を生成するための割り込み又はリクエストを受け付けた場合、システムは、エネルギーセーブモードを未完のまま出て、８１０において、ハプティックリソースをアクティベートし８１５において、自身を再同期し、処理を継続する。、
【００５０】
上述したように、ハプティック可能なデバイスは、ハプティック命令を含むハプティックトラックを実行するプロセッサを含む。ハプティックトラックは、サイレントハプティックとしても知られるゼロ−フォース区間の存在を判定するために分析される。ゼロ−フォース区間の期間が決定され、当該期間が所定の閾値を超える場合、システム又は方法は、エネルギーセーブモードに入る。エネルギーセーブモードの終了と関連付けられたオーバーヘッド時間もまた決定される。そして、エネルギーセーブモードは、オーバーヘッド時間より短いゼロ−フォース区画の最後に終了される。
【００５１】
上述された本発明は、異なる順序のステップで、及び／又は開示されたものとは異なる構成における要素で実施されてもよいことを当業者は明示的に理解するであろう。よって、本発明は、これらの好ましい実施形態に基づいて記載されているが、本発明の趣旨及び範囲内に維持しつつ、特定の変更、変形及び代替解釈が明らかであることが当業者にとって明らかである。したがって、本発明の境界を決定するために、添付の特許請求の範囲が参照されるべきである。
【図１】
2017174381.tif 000003
【図２Ａ】
2017174381.tif 000004
【図２Ｂ】
2017174381.tif 000005
【図３】
2017174381.tif 000006
【図４】
2017174381.tif 000007
【図５Ａ】
2017174381.tif 000008
【図５Ｂ】
2017174381.tif 000009
【図５Ｃ】
2017174381.tif 000010
【図６】
2017174381.tif 000011
【図７】
2017174381.tif 000012
【図８】
2017174381.tif 000013
【外国語明細書】
2017174381000001.pdf