JP2020512642A - ハプティックフィードバックをレンダリングするマルチレート処理デバイス - Google Patents

ハプティックフィードバックをレンダリングするマルチレート処理デバイス Download PDF

Info

Publication number
JP2020512642A
JP2020512642A JP2019552911A JP2019552911A JP2020512642A JP 2020512642 A JP2020512642 A JP 2020512642A JP 2019552911 A JP2019552911 A JP 2019552911A JP 2019552911 A JP2019552911 A JP 2019552911A JP 2020512642 A JP2020512642 A JP 2020512642A
Authority
JP
Japan
Prior art keywords
haptic
processing unit
interaction model
driver layer
driver
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2019552911A
Other languages
English (en)
Inventor
メイヤー,デイヴィッド,ジェイ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tanvas Inc
Original Assignee
Tanvas Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tanvas Inc filed Critical Tanvas Inc
Publication of JP2020512642A publication Critical patent/JP2020512642A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0412Digitisers structurally integrated in a display
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/016Input arrangements with force or tactile feedback as computer generated output to the user
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B6/00Tactile signalling systems, e.g. personal calling systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/041Indexing scheme relating to G06F3/041 - G06F3/045
    • G06F2203/04105Pressure sensors for measuring the pressure or force exerted on the touch surface without providing the touch position

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

ハプティックインターフェースユニットは、ドライバー層と通信するデバイスのオペレーティングシステムにアプリケーションを含むことができる。複数のセンサー及びアクチュエーターが、ドライバー層と通信することができる。ドライバー層は、センサーからの情報を分析して、ドライバー層に記憶されたインタラクションモデルに基づいて出力信号を生成する。アプリケーションは、ドライバー層におけるインタラクションモデルを更新する。【選択図】図4

Description

[関連出願の相互参照]
本国際出願は、2017年3月28日に出願された米国特許出願第62/477,810号の恩典及び優先権を主張する、2018年3月27日に出願された米国特許出願第15/937,403号の恩典及び優先権を主張する。これらの米国特許出願の双方は、引用することにより完全に本明細書の一部をなす。
本開示は、包括的にはハプティクスに関する。より詳細には、本開示は、ハプティックインターフェース及び制御システムに関する。
タッチスクリーンはコンピューターインターフェースとして定着しており、携帯電話、タブレット、ラップトップコンピューター、銀行キオスク、その他多くの適用例及びデバイスにおいて使用される。タッチスクリーンは、画面と接触しているユーザーの指の位置を検出することができる。検出された位置は、その後、ユーザーが触れたことによって表されるようなユーザーのコマンドに応答する、例えば、タッチスクリーン上で見ることができるグラフィカルオブジェクトを動かす、又はボタン若しくはメニューアイテムを選択する等のために、コンピュータープログラムによって使用することができる。
通常、タッチセンシティブスクリーンは透明であり、視覚的に表現されたオブジェクトに自分が触れているか、又はオブジェクトを自分が指していることをユーザーが想像することができるようにビジュアルディスプレイと組み合わせられる。関連する2つの情報の流れ、すなわち、コンピューターからユーザーへの視覚情報及びユーザーからコンピューターへのタッチ情報がある。
ユーザーが自分の触覚を利用して、コンピューターから情報を得ることができる、タッチ情報の他方の伝達方向はより一般的ではない。これは、ユーザーが、表面のエッジ又はテクスチャーを、又は表面上の明らかな凸部又は凹部さえも知覚するのをサポートすることができる。
ユーザーにタッチ情報を伝達する機能は、ハプティクスと呼ばれる。ハプティクスの現在の形は、ハンドヘルドデバイスの振動を生成することによって成し遂げられる。ユーザーは、ビジュアルディスプレイ上に表現されるアイコン又は他のグラフィカルフィーチャとユーザーとのインタラクションにおいて振動が生じていると想像することができる。振動ハプティクスを超えて進展したものとして、表面ハプティックディスプレイという用語は、画面によって力を生成することができ、画面と接触している点にあるユーザーの指先に力を及ぼすことができるタッチスクリーンを指している。
この概要は、本開示の詳細な説明において更に記載される概念のうちの選択されたものを簡略化形式で紹介するように提供される。この概要は、請求項に記載の主題の重要な又は必須の発明の概念を特定するように意図されておらず、請求項に記載の主題の範囲を画定するようにも意図されていない。
概して、本明細書に開示するハプティックインターフェースユニットは、アプリケーション、ドライバー層、センサー、アクチュエーター及びインターフェースモデルを備えることができる。
上述した概要は、本開示の以下の詳細な説明と同様、添付図面に関連して読まれるときによりよく理解される。本開示を例示する目的で、本開示の発明の概念の例示的な構造を図面に示す。しかしながら、本明細書における開示及び発明の概念は、本明細書に開示する具体的な方法及び手段に限定されない。
センサー及びアクチュエーターを備えるハプティック表面を示す図である。 シングルレート処理アーキテクチャを使用する先行技術によるハプティックインターフェースを概略的に示す図である。 図2のハプティックインターフェースによって実行されるプロセスの動作の概略図である。 ドライバー層ソフトウェアとともに構築されたマルチレート処理ユニットを使用する、本開示に一貫するハプティックインターフェースユニットの一実施形態を概略的に示す図である。 図4のハプティックインターフェースユニットによって実行されるプロセスの動作の概略図である。 連続ハプティック動作を確実にするインタラクションモデルに対する更新のためにメモリ管理モジュールによって実行されるプロセスの動作の概略図である。 更新されたインタラクションモデルに関してドライバー層において実行されるプロセスの動作の概略図である。 触覚処理ユニット(TPU:tactile processing unit)においてマルチレート処理ユニットを使用する、本開示と一貫するハプティックインターフェースユニットの別の実施形態を概略的に示す図である。 図7のハプティックインターフェースによって操作されるプロセスの概略図である。 ヒューマン入力デバイス(HID:Human Input Device)及びハプティックインターフェースの両方としての役割を果たす、本開示と一貫する二重機能ハプティックインターフェースユニットの一実施形態を概略的に示す図である。 本開示と一貫するハプティックインターフェースのドライバー層とハードウェア層との間の符号化通信層の一実施形態を概略的に示す図である。
以下の開示は、全体として、添付図面、図面の説明、要約書、背景技術、発明の概要、及び関連の見出しとともに読まれるとき、提供される詳細な説明を参照して最もよく理解することができる。異なる図上に見出されるときの同一の参照番号は同じ要素又は機能的に同等な要素を特定する。要約書に挙げた要素は参照されないが、それでも、関連付けによって詳細な説明及び関連する開示の要素を指す。
ハプティックシステムの中心には、インタラクションの基本モデルがある。インタラクションモデルは、ユーザー入力に対するアクチュエーター応答を定義し、多くの場合、仮想環境のリアルタイムシミュレーションである。キー押下フィードバックの例では、インタラクションモデルは、タッチ圧力検出に対する出力振動波形応答を計算する。ハプティックインタラクションモデルをレンダリングすることに伴う1つの問題は、入力を通信し、ハプティック出力を計算し、次いで出力信号を送出するために必要な時間に関係する。ハプティック出力信号を送出する際の遅延により、ハプティック体験の質が低下する可能性がある。したがって、ユーザーにハプティック出力を効率的に伝達する方法が必要とされている。
ハプティック設計者は、ハプティックインターフェースユニットの更新レートの重要性を以前から理解しており、この判断を理由に、リアルタイムオペレーティングシステム(RTOS)を使用して、ハプティックインターフェース又はインタラクションシミュレーションを計算した。RTOS環境は、多種多様のアプリケーションを提供するように全オペレーティングシステムを実行するコンシューマーグレードのデバイスでは通常実装されない。大部分のコンシューマーグレードのデバイスでは、ハプティックインタラクションモデルは、ソフトウェアで実装され、したがって、オペレーティングシステム(OS)において利用可能なリソースによりレート制限される。
インタラクションをレンダリングするのにOSレベルのプロセスに依存するハプティックインターフェースは、いくつかのシステム障害を受けやすい。第1に、イベントのタイミングは、通常保証されず、システムの不安定なレイテンシーは、ユーザーのハプティック知覚系を混乱させる可能性がある。第2に、ソフトウェアはしばしばフリーズする可能性があり、その際、ハプティックフィードバックプロセスを妨げる可能性がある。両方の障害が、ユーザーに対して一貫性の欠如を提示するため、ハプティックインターフェースが物理的システムを表している、という錯覚を破る。
本発明の実施形態は、RTOS環境の使用を必要とすることなく、現実的なハプティックインターフェースの提供を可能にするように、技術的改良を提供する。特化した専用のハードウェア及び/又はソフトウェアを採用することにより、本発明の実施形態は、低レイテンシー、イベントの保証されたタイミングを提供し、アプリケーションレベルでソフトウェア障害に直面した場合であっても、一貫したユーザー体験を可能にする。特に、ドライバー層に対する変更は、先行技術によるソフトウェア実装では可能ではなかった方法でリアルタイムハプティックフィードバックを可能にする技術的改良である。
本開示の一態様では、ハプティックインターフェースユニットの一実施形態は、ドライバー層と通信するデバイスのオペレーティングシステムにアプリケーションを含むことができる。複数のセンサー及びアクチュエーターが、ドライバー層と通信することができる。ドライバー層は、センサーからの情報を分析して、ドライバー層に記憶されたインタラクションモデルに基づいて出力信号を生成する。アプリケーションは、ドライバー層におけるインタラクションモデルを更新する。
本開示の他の態様では、ハプティックインターフェースユニットの一実施形態は、デバイスのオペレーティングシステムにおけるアプリケーションと、そのアプリケーションと通信する触覚処理ユニット(TPU)とを含むことができる。複数のセンサー及びアクチュエーターが、TPUと通信することができる。TPUは、センサーからの情報を分析して、TPUに記憶されたインタラクションモデルに基づき出力信号を生成する。別の実施形態では、アプリケーションは、TPUにおけるインタラクションモデルを非同期的に更新することができる。
図1は、センサー104及びアクチュエーター102を備えたハプティック表面100を示す。アクチュエーター102は、例えば指101等、表面と接触する物体にハプティック効果を伝達するために使用される。アクチュエーター102は、限定されないが、表面にわたって振動を発生させる超音波アクチュエーター、物体に対して静電力を発生させる静電アクチュエーター若しくは他の任意の既知のアクチュエーター、又は同じか若しくは同様の機能の提供を促進する構造的要素若しくはアセンブリを含む、任意の既知のアクチュエーター102とすることができる。センサー104(当業者であれば、簡潔さ及び明確さのために、こうしたアレイを構成する個々のセンサーではなく、センサー104の領域が示されていることを理解するであろう)を使用して、ハプティック表面上の物体101の位置が特定される。ハプティック表面100上の物体101の位置を使用して、物体101にハプティック信号が送出される。実施形態例では、センサー104及びアクチュエーター102は、タッチパネルのハプティック表面100上の透明な導電電極の同じ組により実装することができる。
図2は、シングルレート処理アーキテクチャを使用する先行技術によるハプティックインターフェース200を概略的に示す。ハプティックインターフェース200は、携帯電話又はラップトップ等のコンピューティングデバイスのメモリで動作するアプリケーション202を含む。アプリケーション202は、センサー入力に基づいてハプティック出力を決定するインタラクションモデルを含みかつそれを動作させ、例えば、インタラクションモデルは、タッチ位置に基づいて表面摩擦を変化させる空間マッピングとすることができる。一実施形態では、アプリケーション202は、デバイスのオペレーティングシステムで動作する。アプリケーション202は、検知回路208によりセンサー206に通信可能に結合されるドライバー層204から、センサー情報を受け取る。ドライバー層204はまた、アクチュエーター回路212によりアクチュエーター214に通信可能に結合されている。ドライバー層204は、センサー情報を収集し、アプリケーションに送出するためにその情報をフォーマットするように作用する。アプリケーション202は、センサーデータを処理し、ドライバー層204に出力を提供し、その結果、ドライバー層は、ハプティック出力を発生させるためにアクチュエーター回路212を介してアクチュエーター214を操作する(例えば、選択的にアクティベートしディアクティベートする)ように信号を送ることができる。
図3は、図2に示すハプティックインターフェース200で動作するハプティック制御ループ300の動作の概略図を示す。ステップ302において、センサー206は、ハプティック表面100と接触している位置及び加えられた力(指101又は他の物体の圧力等)を読み取る。ステップ304において、センサー206は、読み取った位置及び力を、検知回路208を介してドライバー層204に送信する。ステップ306において、ドライバー層204は、検知回路208から情報を受け取り、アプリケーション202によって処理されるように情報をフォーマットした後、アプリケーション202に情報を送信する。ステップ308において、アプリケーション202は、センサー206によって受け取られた情報に基づいてハプティック出力信号を計算し、そのハプティック出力信号を、処理されるようにドライバー層204に送信する。ステップ310において、ドライバー層204は、ハプティック出力信号をフォーマットし、その信号をアクチュエーター回路212に送信する。ステップ312において、アクチュエーター214は、アクチュエーター回路212からハプティック出力信号を受信し、ハプティック出力を発生させる。このハプティック制御ループでは、いくつかのステップは、オペレーティングシステムによってスケジューリングされる。大部分のオペレーティングシステムはスケジューリングのタイミングを保証することができないため、ハプティック制御ループは、予測することができない可変量のジッター及びラグを受けやすく、ユーザー体験は悪影響を受ける。
図4は、マルチレート触覚処理ユニットを使用する、本開示と一貫するハプティックインターフェースユニット200の一実施形態を概略的に示す。ハプティックインターフェース200は、アプリケーション202、ドライバー層204、センサー206、検知回路208、アクチュエーター回路212及びアクチュエーター214を備える。本実施形態と一貫して、アプリケーション202は、ドライバー層204とインタラクトして、ドライバー層204においてインタラクションモデルを更新して記憶し、その結果、ドライバー層204は、ハプティック出力を発生させるために、アプリケーションとインターフェースすることなく、アクチュエーター回路212を介してアクチュエーター214に対するハプティック出力信号を分析して発生させる。ドライバー層204からのハプティック出力信号の発生の後、ドライバー層204は、センサー情報をアプリケーション202に送信し、アプリケーションは、ドライバー層204においてインタラクションモデルを更新する。触覚処理ユニットは、ドライバー層ソフトウェアで実装され、アプリケーションレベルのオペレーティングシステムスケジューリングに影響されない。
図5は、図4のハプティックインターフェースユニットによって実行されるプロセス400の概略表現を示す。ステップ402において、センサー206は、指の位置及び/又は圧力を読み取る。ステップ404において、センサー206は、センサー回路208を介して位置及び/又は圧力をドライバー層204に送信する。ステップ406において、ドライバー層204は、位置及び/又は圧力を処理し、カウンターをインクリメントする。ステップ408において、ドライバー層204は、ドライバー層204に記憶されたインタラクションモデルに基づいてハプティック出力信号を計算する。ステップ410において、ドライバー層204は、アクチュエーター回路212に出力されるハプティック出力信号を送信する。ステップ412において、アクチュエーター回路212は、ハプティック出力を生成するアクチュエーターにハプティック出力信号を送信する。
ステップ414において、ドライバー層204は、カウンターが100等の所定数以上であるか否かを判断する。カウンターが所定数を超えた場合、416において、ドライバーは、センサー206から読み取られた位置及び圧力をアプリケーション202に送信する。カウンターが所定数未満である場合、ドライバー層204は、センサー206から追加の情報(例えば、指/物体の位置、圧力/力等)を読み取る。ステップ418において、アプリケーション202は、位置及び/又は圧力情報を受け取り、ドライバー層204に記憶されたインタラクションモデルを更新する。
図5に示すプロセスは、好ましくは、ハプティック出力のレンダリングにアプリケーション層メッセージを含まないマルチレート処理アーキテクチャによって実装され、したがって、オペレーティングシステム遅延に影響されない。ステップ416は、アプリケーションの内部で実行することができ、したがって、ステップ408とは非同期である。
図6A及び図6Bは、連続したハプティック動作があるように、ハプティック制御ループを妨げることなくインタラクションモデルへの非同期の(すなわち、任意のタイミングの)更新を可能にするように、メモリ管理モジュールによって実行されるプロセスの動作と、更新されたインタラクションモデルに関してドライバー層において実行されるプロセスの動作との概略図を示す。これにより、異常動作(又はデッドロックした)アプリケーションの場合にハプティックインタラクションの完全性が確保される。この実施形態では、好ましくは、例えば2つのバッファー等、複数のバッファーが実装され、複数のバッファーのうちの1つは常に読出しに対して安全であり、複数のバッファーのうちの1つは書込みに対して安全である。このように、アーキテクチャは、ハプティック出力が、アプリケーションからの非同期更新にも関わらず、常に正しく計算されることを保証する。ハードウェアタイミング回路は、出力信号で有用である可能性がある。
図6Aは、この図6Aの第1のステップとして複製された、図5からのステップ418のプロセスの更なる動作の概略図である。ステップ420において、新たなインタラクションモデルは、出力バッファーに書き込まれるように準備される。ステップ422において、プロセスは、他の動作要素に基づいて、バッファーAが「書込みバッファー」であるべきかバッファーBが「書込みバッファー」であるべきかを判断する。上述したように、書込みバッファーではないバッファーは「読出しバッファー」となる。バッファーAが書込みバッファーであるように選択された場合、ステップ424において、新たなインタラクションモデルはバッファーAに書き込まれる。ステップ426において、要求された場合にこのプロセスの次の繰返しに対して、バッファーBは書込みバッファーとして設定され、バッファーAは読出しバッファーとして設定される。バッファーBが書込みバッファーであるように選択された場合、ステップ428において、新たなインタラクションモデルはバッファーBに書き込まれる。ステップ430において、要求された場合にこのプロセスの次の繰返しに対して、バッファーAは書込みバッファーとして設定され、バッファーBは読出しバッファーとして設定される。
図6Bは、図5からのステップ408のプロセスの更なる動作の概略図である。ステップ440において、ドライバー層は入力を受信し、次いで、ステップ442において、いずれのバッファーが読出しバッファーであるかを判断する。読出しバッファーがバッファーAである場合、ステップ444において、バッファーAに記憶されたインタラクションモデルを使用してアクチュエーターに対する出力が計算される。読出しバッファーがバッファーBである場合、ステップ446において、バッファーBに記憶されたインタラクションモデルを使用して、ハードウェアタイミング回路を用いてアクチュエーターに対する出力が計算される。
図7は、本開示と一貫するハプティックインターフェースユニット200の別の実施形態を概略的に示す。ハプティックインターフェースは、アプリケーション202、ドライバー層204、センサー206、検知回路208、アクチュエーター回路212及びアクチュエーター214、並びにアプリケーション202及びドライバー層204と通信する触覚処理ユニット500を備える。本実施形態と一貫して、触覚処理ユニット500は、専用のソフトウェアコンピューティングコアと、入力信号を受信し、出力信号を生成するカスタム設計ハードウェア回路、例えばハードウェアタイミング回路との両方を含む、ハードウェア実装である。組込みプロセッサ500からハプティック出力信号を生成した後、触覚処理ユニット500は、ドライバー層204を介してアプリケーション202と通信し、アプリケーション202は、ドライバー層204を介して触覚処理ユニット500におけるインタラクションモデルを更新する。
図8は、図7のハプティックインターフェースによって操作されるプロセス600の概略表現を示す。ステップ602において、センサー206は、指の位置及び/又は圧力を読み取る。ステップ604において、センサー206は、センサー回路208を介して位置及び/又は圧力を、位置及び/又は圧力を処理する触覚処理ユニット500に送信する。ステップ606において、触覚処理ユニット500は、触覚処理ユニット500に記憶されたインタラクションモデルに基づいてハプティック出力信号を決定する。ステップ608において、触覚処理ユニット500は、アクチュエーター回路212を介してハプティック出力信号をアクチュエーター214に送信する。ステップ610において、触覚処理ユニット500は、触覚処理ユニット500のメモリにおける入力タイマーが満了したか否かを判断する。入力タイマーが満了していない場合、触覚処理ユニット500は、更なるセンサー情報を読み出す。入力タイマーが満了した場合、ステップ612において、触覚処理ユニット500は、位置及び/又は圧力情報をドライバー層204に送信する。ステップ614において、ドライバー層204は、位置及び/又は圧力情報をフォーマットし、フォーマットした情報をアプリケーション層に送信する。ステップ616において、アプリケーション202は、受信した圧力及び/又は位置に基づいてインタラクションモデルを更新する。ステップ618において、アプリケーション202は、ドライバー層204を介して、更新したインタラクションモデルを触覚処理ユニット500に送信する。
図8に示すプロセスは、マルチレート処理アーキテクチャの別の実施形態である。この実施形態では、触覚処理ユニット500は、特化したハードウェアタイミング回路を使用して、ステップ604、606及び608を実施し、全可聴周波数範囲にわたるのに十分である20kHzを超過する更新レートを達成することができる。ハードウェアタイミング出力により、計算遅延は予想通りごくわずかであり、物理的システムをエミュレートするような複雑なハプティックインタラクションを確実にレンダリングすることができる。
ステップ618の結果として、触覚処理ユニット500は、ドライバー層204を通してアプリケーション層202から非同期的にインタラクションモデル更新を受信する。利用可能な通信帯域幅及びタスクスケジューリングにより、これらの更新レートは約1kHz又は2kHzに制限される。本明細書において上述したようなマルチバッファリング等、触覚処理ユニット500における特化したメモリ管理により、ハードウェアタイミング出力が完全かつ有効なメモリに常にアクセスすることが確実になる。
図9は、ヒューマン入力デバイス(HID)及びハプティックインターフェースの両方としての役割を提供する、本開示と一貫する二重機能ハプティックインターフェースユニットの一実施形態を概略的に示す。この実施形態では、触覚処理ユニット500は、広くサポートされているヒューマン入力デバイス入力902としてかつハプティックインターフェースとしての両方の役割を果たす、二重機能デバイスとしてのオペレーティングシステム900に接続することができる。この実施形態では、(他の要素もあるが特に検知回路208を備える)センサーインターフェース904は、センサー206から得られるデータを、インタラクションモデルバッファー906に、並びにHIDドライバー902及びハプティックインターフェース制御ドライバー又はTPUドライバー905の両方に、並びにオペレーティングシステムドライバー層204に存在する他の任意の既存のドライバーに送信する。その結果、ドライバー層204は、HIDドライバー902からのタッチ入力データを分析し、予測し、計算し、生成して、アプリケーションに記憶されたグローバルインタラクションモデルに基づいてローカルインタラクションモデルを生成することができる。好ましくは、一態様では、触覚処理ユニット500におけるメモリ制約に適応するために、触覚処理ユニット500にローカルインタラクションモデルの関連データのサブセットを送信することができる。さらに、触覚処理ユニット500におけるメモリ制約を満足させるように、触覚処理ユニット500に、関連するタッチ入力データ及びセンサーデータを送信することができる。一実施形態例では、ドライバー層204は(HID902からの)タッチ入力を使用して、グローバルインタラクションモデル908のいずれの部分が近い将来タッチ入力に局所的に近接して配置されるかを分析して予測し、TPUインタラクションモデルバッファー906に配置するべきローカルインタラクションモデル910を計算して生成する。
図10は、本開示と一貫するハプティックインターフェースのドライバー層とハードウェア層との間の符号化通信層の一実施形態を概略的に示す。この実施形態では、ドライバー層204のTPUドライバー905は、通信バスによって課される帯域幅制限を満たすように、ローカルインタラクションモデル910のデータを触覚処理ユニット500に中継する前に圧縮する、エンコーダー1002を備えることができる。一実施形態では、エンコーダー1002は、関連データ、ローカルインタラクションモデルのパラメーターにおける変化又は差分を送信するのみである。触覚処理ユニット500におけるデコーダー1004は、符号化データを解釈し、その後、その符号化データを、リアルタイムレンダリングに対して本明細書に記載したようなハードウェアタイミングハプティック制御ループ及びインターフェースによって使用されるようにインタラクションモデルバッファー906に提供する。
本開示では、数量を特定しない語は、単数のもの及び複数のものの両方を含むように解釈されるべきである。逆に、複数の要素に対するいかなる言及も、適切である場合は、単数のものを含むものとする。
本明細書に開示される、本発明における好ましい実施形態に対する様々な変更及び修正は、当業者には明らかであろうと理解されるべきである。そのような変更及び修正は、本開示の趣旨及び範囲から逸脱することなく、かつその意図された利点を減らすことなく行われ得る。したがって、そのような変更及び修正は、添付の特許請求の範囲に含まれるものと意図される。
上述した例は、単に説明の目的で提供しており、本明細書に開示した本発明の概念を限定するものとして決して解釈されるべきでは決してない。発明の概念について様々な実施形態に関連して記載したが、本明細書で使用した用語は、限定の用語ではなく説明及び例示の用語であることが理解されよう。さらに、発明の概念について、本明細書では、特定の手段、材料及び実施形態に関して説明したが、発明の概念は、本明細書に開示する詳細に限定するようには意図されず、むしろ、添付の請求項の範囲内にあるような全ての機能的に均等な構造物、方法及び使用にまで及ぶ。本明細書の教示を利用できる当業者であれば、そうした教示に対する多数の修正に影響を与えることができ、発明の概念の範囲及び趣旨から逸脱することなく、本明細書の態様において変更が行われることが可能である。
本発明の概念の開示した実施形態の様々な要素の構造、機能又は構成の他の任意の開示していない又は付随する詳細は、それらの要素が開示されているように実施するために必要な属性を有する限り、本発明の概念の利点の達成には不可欠であるとは考えられない。確かに、ハプティック技術分野における当業者は、発明の概念を促進しかつ実施するために、多種多様な構造的かつ機能的システム及び構成並びにそれらのシステム及び構成の適切な組合せを思いつくことができよう。構造及び動作のこれらの及び他の詳細の選択は、本開示に鑑みて、本技術分野ににおいて基本的な技能を有する者の能力の範囲でも十分可能であると考えられる。発明の概念を有利に実施することができる実用的で有効な構造及び機能を開示する目的で、本発明の概念の例示的な実施形態についてかなり詳細に記載した。本明細書に記載した実施形態は、単に例示的であるように意図されている。本発明の概念の新規な特徴は、本発明の概念の趣旨及び範囲から逸脱することなく、他の構造的又は機能的形態に組み込むことができる。本発明の概念は、例示的な実施形態に関して記載した要素を含む実施形態及びそうした要素からなる実施形態の両方を包含する。別段の指示がない限り、本明細書で使用した全ての一般語及び用語は、The New Shorter Oxford English Dictionary, 1993 editionにおいて定義されているようなそれらの慣例的な意味を有するものとする。全ての技術用語は、その特定の技術分野における当業者が利用する適切な技術部門により確立されるようなそれらの慣例的な意味を有するものとする。

Claims (24)

  1. デバイスのオペレーティングシステムで動作するアプリケーションと、
    前記アプリケーションと通信するドライバー層と、
    前記ドライバー層と通信する複数のセンサーと、
    前記ドライバー層と通信する複数のアクチュエーターと、
    を備え、
    前記ドライバー層は、前記センサーからの情報を分析して、該ドライバー層に記憶されたインタラクションモデルに基づいて出力信号を生成し、
    前記アプリケーションは、前記出力信号とは非同期的に前記ドライバー層における前記インタラクションモデルを更新する、ハプティックインターフェースユニット。
  2. 複数のバッファーを含むメモリ管理モジュールを更に備える、請求項1に記載のハプティックインターフェース。
  3. 前記複数のバッファーのうちの1つは、常に書込みに対して安全であり、前記複数のバッファーのうちの他の1つは、常に読出しに対して安全である、請求項2に記載のハプティックインターフェース。
  4. デバイスのオペレーティングシステムで動作するアプリケーションと、
    前記アプリケーションと通信するドライバー層と、
    前記アプリケーション及び前記ドライバー層と通信する触覚処理ユニットと、
    前記触覚処理ユニットと通信する複数のセンサーと、
    前記触覚処理ユニットと通信する複数のアクチュエーターと、
    を備え、
    前記触覚処理ユニットは、前記センサーからの情報を分析して、該触覚処理ユニットに記憶されたインタラクションモデルに基づいて出力信号を生成し、
    前記アプリケーションは、前記出力信号とは非同期式に前記触覚処理ユニットにおける前記インタラクションモデルを更新する、ハプティックインターフェース。
  5. 複数のバッファーを含むメモリ管理モジュールを更に備え、前記複数のバッファーのうちの1つは、常に書込みに対して安全であり、前記複数のバッファーのうちの他の1つは、常に読出しに対して安全である、請求項4に記載のハプティックインターフェース。
  6. 前記複数のバッファーのうちの1つは、前記触覚処理ユニットがハードウェアタイミング回路を用いて前記出力信号を生成するのを容易にする、請求項5に記載のハプティックインターフェース。
  7. 前記触覚処理ユニットは、20kHzを超過するレートで情報を分析しかつ出力を生成するように動作する、請求項4に記載のハプティックインターフェース。
  8. 前記ドライバー層は触覚処理ユニットドライバーを含み、前記オペレーティングシステムはヒューマン入力デバイスドライバーを含み、前記触覚処理ユニットは、前記触覚処理ユニットドライバー及び前記ヒューマン入力デバイスドライバーの両方と通信する、請求項4に記載のハプティックインターフェース。
  9. 前記ドライバー層は、前記ヒューマン入力デバイスドライバーからのタッチ入力データを分析して、前記アプリケーションに記憶されたグローバルインタラクションモデルに基づいてローカルインタラクションモデルを生成する、請求項8に記載のハプティックインターフェース。
  10. 前記ドライバー層は、前記ローカルインタラクションモデルのデータを、前記触覚処理ユニットにおけるデコーダーに送信する前に圧縮するエンコーダーを備え、前記デコーダーは、前記触覚処理ユニットにおけるインタラクションモデルバッファー内のインタラクションモデルをリアルタイムレンダリングのために前記データによって更新する前にデータを分析する、請求項9に記載のハプティックインターフェース。
  11. ハプティックインターフェースを動作させる方法であって、
    検知回路によりセンサー位置及び圧力情報を読み取るステップと、
    前記検知回路を介して前記センサー位置及び圧力情報をドライバー層に送信するステップと、
    前記ドライバー層により前記センサー位置及び圧力情報を処理するステップと、
    前記ドライバー層に記憶されたインタラクションモデルに基づいてハプティック出力信号を計算するステップと、
    アクチュエーター回路を介して前記ハプティック出力信号を前記アクチュエーターに送信するステップと、
    前記アクチュエーターによりハプティック出力を生成するステップと、
    を含む、方法。
  12. 前記生成するステップは、前記ハプティック出力信号を送信するステップの入力レートと比較して低下したレートで、前記センサー位置及び圧力情報をアプリケーションに送信するステップを更に含む、請求項11に記載の方法。
  13. 前記入力レートと比較して前記低下したレートで前記ドライバー層に記憶された前記インタラクションモデルを更新するステップを更に含む、請求項12に記載の方法。
  14. ハプティックインターフェースを動作させる方法であって、
    検知回路によりセンサー位置及び圧力情報を読み取るステップと、
    前記検知回路を介して前記センサー位置及び圧力情報を触覚処理ユニットに送信するステップと、
    前記触覚処理ユニットにより前記センサー位置及び圧力情報を処理するステップと、
    前記触覚処理ユニットに記憶されたインタラクションモデルに基づいてハプティック出力信号を計算するステップと、
    アクチュエーター回路を介して前記ハプティック出力信号を前記アクチュエーターに送信するステップと、
    前記アクチュエーターによりハプティック出力を生成するステップと、
    を含む、方法。
  15. 前記触覚処理ユニットにおける入力タイマーが満了したか否かを判断するステップを更に含む、請求項14に記載の方法。
  16. ドライバー層に前記センサー位置及び圧力情報を送信するステップを更に含む、請求項15に記載の方法。
  17. 前記センサー位置及び圧力情報をフォーマットするステップと、前記センサー位置及び圧力情報をアプリケーションに送信するステップとを更に含む、請求項16に記載の方法。
  18. 前記アプリケーションによって受信された前記センサー位置及び圧力情報に基づいて該アプリケーションにより前記インタラクションモデルを更新するステップを更に含む、請求項17に記載の方法。
  19. 前記ドライバー層を介して、前記更新されたインタラクションモデルを前記触覚処理ユニットに送信するステップを更に含む、請求項18に記載の方法。
  20. 複数のバッファーから書込みバッファーを決定するステップと、前記書込みバッファーに前記更新されたインタラクションモデルを書き込むステップと、次の書込みバッファーとして前記複数のバッファーのうちの他のバッファーを特定するステップとを更に含む、請求項18に記載の方法。
  21. 前記計算するステップは、複数のバッファーから読出しバッファーを決定することと、該読出しバッファーから前記インタラクションモデルを読み出すこととを更に含む、請求項14に記載の方法。
  22. 触覚処理ユニットドライバーにおける前記センサー位置及び圧力情報を処理して、アプリケーションに記憶されたグローバルインタラクションモデルからローカルインタラクションモデルを生成するステップを更に含む、請求項16に記載の方法。
  23. 前記触覚処理ユニットドライバーからの前記ローカルインタラクションモデルのデータにより、前記触覚処理ユニットにおけるインタラクションモデルバッファーを更新するステップを更に含む、請求項22に記載の方法。
  24. 前記触覚処理ユニットドライバーにおける前記ローカルインタラクションモデルのデータを符号化するステップと、前記触覚処理ユニットにおけるデコーダーに符号化データを送信するステップと、前記符号化データを分析するステップと、前記触覚処理ユニットにおけるインタラクションモデルバッファー内の前記インタラクションモデルを、リアルタイムレンダリングのために分析データにより更新するステップとを更に含む、請求項22に記載の方法。
JP2019552911A 2017-03-28 2018-03-28 ハプティックフィードバックをレンダリングするマルチレート処理デバイス Pending JP2020512642A (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201762477810P 2017-03-28 2017-03-28
US62/477,810 2017-03-28
US15/937,403 US10606357B2 (en) 2017-03-28 2018-03-27 Multi rate processing device for rendering haptic feedback
US15/937,403 2018-03-27
PCT/US2018/024863 WO2018183513A1 (en) 2017-03-28 2018-03-28 Multi rate processing device for rendering haptic feedback

Publications (1)

Publication Number Publication Date
JP2020512642A true JP2020512642A (ja) 2020-04-23

Family

ID=63671764

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019552911A Pending JP2020512642A (ja) 2017-03-28 2018-03-28 ハプティックフィードバックをレンダリングするマルチレート処理デバイス

Country Status (6)

Country Link
US (3) US10606357B2 (ja)
EP (1) EP3602251A4 (ja)
JP (1) JP2020512642A (ja)
KR (1) KR20190125322A (ja)
CN (2) CN116880714A (ja)
WO (1) WO2018183513A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10606357B2 (en) * 2017-03-28 2020-03-31 Tanvas, Inc. Multi rate processing device for rendering haptic feedback

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012027855A (ja) * 2010-07-27 2012-02-09 Kyocera Corp 触感呈示装置及び触感呈示装置の制御方法
JP2012053687A (ja) * 2010-09-01 2012-03-15 Kyocera Corp 表示装置
US20140092003A1 (en) * 2012-09-28 2014-04-03 Min Liu Direct haptic feedback
JP2015011473A (ja) * 2013-06-27 2015-01-19 富士通株式会社 電子機器及び制御プログラム
JP2015521328A (ja) * 2012-05-31 2015-07-27 ノキア コーポレイション ディスプレイ装置
JP2016031723A (ja) * 2014-07-30 2016-03-07 富士通株式会社 情報処理装置、情報処理方法及び情報処理プログラム

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8508469B1 (en) * 1995-12-01 2013-08-13 Immersion Corporation Networked applications including haptic feedback
US6411276B1 (en) 1996-11-13 2002-06-25 Immersion Corporation Hybrid control of haptic feedback for host computer and interface device
US7182691B1 (en) * 2000-09-28 2007-02-27 Immersion Corporation Directional inertial tactile feedback using rotating masses
US7765333B2 (en) * 2004-07-15 2010-07-27 Immersion Corporation System and method for ordering haptic effects
EP2406705B1 (en) * 2009-03-12 2017-10-04 Immersion Corporation System and method for using textures in graphical user interface widgets
GB2482190A (en) 2010-07-23 2012-01-25 New Transducers Ltd Methods of generating a desired haptic sensation in a touch sensitive device
DE102011017250B4 (de) * 2011-01-07 2022-12-01 Maxim Integrated Products, Inc. Berührungs-Feedbacksystem, haptisches Feedbacksystem und Verfahren zum Bereitstellen eines haptischen Feedbacks
EP2629178B1 (en) 2012-02-15 2018-01-10 Immersion Corporation High definition haptic effects generation using primitives
US8860563B2 (en) * 2012-06-14 2014-10-14 Immersion Corporation Haptic effect conversion system using granular synthesis
KR102043148B1 (ko) 2013-02-19 2019-11-11 엘지전자 주식회사 이동 단말기 및 그의 터치 좌표 예측 방법
KR102399842B1 (ko) * 2014-02-21 2022-05-19 탄바스, 아이엔씨. 감응 및 작동이 동시에 가능한 햅틱 장치
US9400557B2 (en) * 2014-06-25 2016-07-26 Intel Corporation Multimodal haptic effect system
US9886090B2 (en) * 2014-07-08 2018-02-06 Apple Inc. Haptic notifications utilizing haptic input devices
US9619034B2 (en) * 2015-02-25 2017-04-11 Immersion Corporation Overlaying of haptic effects
US9779466B2 (en) * 2015-05-07 2017-10-03 Microsoft Technology Licensing, Llc GPU operation
US10606357B2 (en) * 2017-03-28 2020-03-31 Tanvas, Inc. Multi rate processing device for rendering haptic feedback
US10732714B2 (en) * 2017-05-08 2020-08-04 Cirrus Logic, Inc. Integrated haptic system
DK201770372A1 (en) * 2017-05-16 2019-01-08 Apple Inc. TACTILE FEEDBACK FOR LOCKED DEVICE USER INTERFACES

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012027855A (ja) * 2010-07-27 2012-02-09 Kyocera Corp 触感呈示装置及び触感呈示装置の制御方法
JP2012053687A (ja) * 2010-09-01 2012-03-15 Kyocera Corp 表示装置
JP2015521328A (ja) * 2012-05-31 2015-07-27 ノキア コーポレイション ディスプレイ装置
US20140092003A1 (en) * 2012-09-28 2014-04-03 Min Liu Direct haptic feedback
JP2015011473A (ja) * 2013-06-27 2015-01-19 富士通株式会社 電子機器及び制御プログラム
JP2016031723A (ja) * 2014-07-30 2016-03-07 富士通株式会社 情報処理装置、情報処理方法及び情報処理プログラム

Also Published As

Publication number Publication date
US20210333881A1 (en) 2021-10-28
US11726569B2 (en) 2023-08-15
KR20190125322A (ko) 2019-11-06
CN116880714A (zh) 2023-10-13
US10606357B2 (en) 2020-03-31
US20200218357A1 (en) 2020-07-09
US11086402B2 (en) 2021-08-10
WO2018183513A1 (en) 2018-10-04
CN110446998A (zh) 2019-11-12
CN110446998B (zh) 2023-09-05
US20180284895A1 (en) 2018-10-04
EP3602251A1 (en) 2020-02-05
EP3602251A4 (en) 2020-10-07

Similar Documents

Publication Publication Date Title
JP6598915B2 (ja) コンテキスト依存ハプティック確認システム
JP6546301B2 (ja) 動的な触覚効果を有するマルチタッチデバイス
EP2713241B1 (en) Generating Haptic Effects for Dynamic Events
US8830188B2 (en) Infrastructural haptics on wall scale interactive displays
TWI591518B (zh) 前後關係觸覺反饋
KR20130050251A (ko) 터치 감지 표면들에서의 다중 압력 상호 작용을 위한 시스템들 및 방법들
CN110413099A (zh) 触觉反馈系统及方法
US11726569B2 (en) Multi rate processing device for rendering haptic feedback
US20230359278A1 (en) Tactile Feedback

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20191025

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20191025

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210329

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220304

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220510

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20220808

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20221006

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20230124