JP2018005917A - クラウド接続ハプティックプラットフォーム - Google Patents

クラウド接続ハプティックプラットフォーム Download PDF

Info

Publication number
JP2018005917A
JP2018005917A JP2017128921A JP2017128921A JP2018005917A JP 2018005917 A JP2018005917 A JP 2018005917A JP 2017128921 A JP2017128921 A JP 2017128921A JP 2017128921 A JP2017128921 A JP 2017128921A JP 2018005917 A JP2018005917 A JP 2018005917A
Authority
JP
Japan
Prior art keywords
haptic
actuator
command message
network
support platform
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
JP2017128921A
Other languages
English (en)
Inventor
アブラハム・アレクサンダー・ダウヘイレ
Alexander Dauhajre Abraham
サリヴァツァヴ・ヴェンカテサン
Venkatesan Srivatsav
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.)
Immersion Corp
Original Assignee
Immersion Corp
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 Immersion Corp filed Critical Immersion Corp
Publication of JP2018005917A publication Critical patent/JP2018005917A/ja
Pending legal-status Critical Current

Links

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/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/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Power Engineering (AREA)
  • User Interface Of Digital Computer (AREA)
  • Computer And Data Communications (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】ネットワークを介してハプティックアクチュエータを制御する。
【解決手段】ハプティックサーバ110は、ハプティックアクチュエータ150の選択を受信し、ハプティック効果ドライバソフトウェアパッケージまたはライブラリを受信し、ハプティック効果の選択を受信し、ハプティックアクチュエータドライブ値を含むハプティックコマンドメッセージを作成し、ネットワークを介してハプティックコマンドメッセージをハプティックハードウェアサポートプラットフォーム120に送信する。ハプティックハードウェアサポートプラットフォームは、ネットワークを介してハプティックコマンドメッセージを受信し、ハプティックアクチュエータドライブ値を抽出するためにハプティックコマンドメッセージを解析し、および選択されたハプティック効果を再生するためにハプティックアクチュエータにハプティックアクチュエータドライブ信号を適用する。
【選択図】図1

Description

一実施形態は、一般的にハプティック効果に関し、特に、ハプティック効果を生成する電子デバイスに関する。
モバイルデバイス、パーソナルコンピュータ、家庭用ゲーム機、携帯ゲーム機、マイクロコンソール等のような電子機器は、一般的に、ユーザにフィードバックを提供するために視覚的および聴覚的合図を使用する。いくつかの電子デバイスにおいて、運動感覚フィードバック(例えば、アクティブおよび抵抗力フィードバック)及び/又は触覚フィードバック(例えば、振動、テクスチャ、温度変化など)をユーザに提供することができる。一般に、そのようなフィードバックは、「ハプティックフィードバック」または「ハプティック効果」と総称される。ハプティック効果は、シンプルなアラートを特定のイベントに拡張することから、シミュレートされたまたは仮想の環境内でユーザに対し感覚をより深く浸透させることへ、電子デバイスとのユーザの対話を強化するきっかけを提供する。
一般に、電子デバイスのオペレーティングシステム(OS)またはリアルタイムオペレーティングシステム(RTOS)によって実行されるアプリケーションは、ハプティック効果を生成するために1つまたは複数のハプティックアクチュエータにコマンドを送信する。例えば、アプリケーションの実行中に発生する特定のイベントに応答して、またはユーザが電子デバイスまたは例えばビデオゲームコントローラなどといった電子デバイスに接続された別個の入力デバイスの、ボタン、タッチスクリーンなどと対話するとき、アプリケーションはユーザによって知覚されるハプティック効果を生成するためにハプティックアクチュエータにコマンドを送信する。アプリケーションは、通常は、ハプティック効果ドライバソフトウェアまたはハプティック効果ライブラリへの関数呼び出しを使用してハプティックコマンドを生成する。残念なことに、ソフトウェア開発中、アプリケーションはユーザに提供されるハプティック効果を選択、開発、および改良するために、繰り返しコンパイルされ電子デバイスにダウンロードされなければならない。さらに、特定のハプティックアクチュエータに対する異なるハプティックソフトウェアドライバまたはハプティック効果ライブラリによって生成される効果のデモンストレーションが同様に強制される。既知のハプティックフィードバック評価キットは、同様の、あるいは異なる欠陥に悩まされる。
本発明の実施形態は、ネットワークを介してハプティックアクチュエータを制御するためのシステムおよびコンピュータベースの方法を提供する。
一実施形態において、ネットワークを介したハプティックアクチュエータを制御する方法は、ネットワークに結合されたハプティックサーバにおいて、ネットワークに結合されたハプティックハードウェアサポートプラットフォームに接続されたハプティックアクチュエータの選択を受信するステップと、ハプティック効果ドライバソフトウェアパッケージまたはライブラリの選択を受信するステップと、選択されたハプティック効果ドライバソフトウェアパッケージまたはライブラリからハプティック効果の選択を受信するステップと、選択されたハプティックアクチュエータ、選択されたハプティック効果、および選択されたハプティック効果ドライバソフトウェアパッケージまたはライブラリに基づき、ハプティックコマンドメッセージを作成するステップであって、ハプティックコマンドメッセージはハプティックアクチュエータドライブ値を含む、作成するステップと、ネットワークを介してハプティックコマンドメッセージをハプティックハードウェアサポートプラットフォームに送信するステップと、を含む。
この実施形態において、該方法は、ハプティックハードウェアサポートプラットフォームにおいて、ネットワークを介してハプティックコマンドメッセージを受信するステップと、ハプティックアクチュエータドライブ値を抽出するために、ハプティックコマンドメッセージを解析するステップと、選択されたハプティック効果を再生するために、ハプティックアクチュエータドライブ信号をハプティックアクチュエータに適用するステップであって、ハプティックアクチュエータドライブ信号は、ハプティックアクチュエータドライブ値に基づく、適用するステップも含む。
前述の一般的な説明および以下の詳細な説明は、例示的および説明的なものであり、記載された実施例に本発明を限定する意図が無いことを理解されたい。
本発明の実施形態に従った、クラウド接続ハプティックシステムのシステムブロック図である。 本発明の実施形態に従った、ハプティックハードウェアサポートプラットフォームのシステムブロック図である。 本発明の実施形態に従った、ハプティック通信プロトコルを表す図である。 本発明の実施形態に従った、ハプティック効果設計アプリケーションのためのグラフィカルユーザインタフェースを表す図である。 本発明の実施形態に従った、ハプティック効果設計アプリケーションのためのグラフィカルユーザインタフェースを表す図である。 本発明の実施形態に従った、ネットワークを介してハプティックアクチュエータを制御するための機能を図示するフローチャート図である。 本発明の実施形態に従った、ネットワークを介してハプティックアクチュエータを制御するための機能を図示するフローチャート図である。
本発明の実施形態を図面を参照して説明するが、図面の同種の参照符号は同種の部分を示す。
本発明の実施形態は、電子デバイス用の、特にラピッドプロトタイピングおよびアプリケーション開発環境におけるハプティック効果の「プラグアンドプレイ」開発を有利に可能にするクラウド接続ハプティックシステムを提供する。異なるハプティックアクチュエータをシステムに迅速かつ容易に接続できるだけでなく、アプリケーションを繰り返しコンパイルして電子デバイスにダウンロードする必要なしに、異なるハプティック効果ドライバソフトウェア及び/又は異なるハプティック効果ライブラリが評価されることもできる。
図1は、本発明の一実施形態に従った、クラウド接続ハプティックデモンストレーションシステム100のシステムブロック図である。
ハプティックデモンストレーションシステム100は、1つまたは複数のローカルエリアネットワーク、ワイドエリアネットワーク、インターネットなどを含み得るネットワーク140に接続されたハプティックサーバ(コンピュータ)110、ハプティックハードウェアサポートプラットフォーム120、およびハプティッククライアント(コンピュータ)130を含む。さらに、ネットワーク140は、例えば有線および無線イーサネット(登録商標)、Bluetooth(登録商標)などの様々なネットワークプロトコルを実行する、例えば銅線または同軸ケーブルネットワーク、光ファイバーネットワーク、Bluetooth無線ネットワーク、Wi-Fi無線ネットワーク、CDMA、FDMA、およびTDMAセルラ無線ネットワークなどの有線および/または無線ネットワークの様々な組合せを含むことができる。
ハプティックハードウェアサポートプラットフォーム120は、マイクロコントローラユニット(MCU)、通信インタフェース、および単線、より線または編組線、ツイストペア線、リボンケーブルなどを使用してハプティックアクチュエータ150に結合されたハプティックドライバ回路を含む。一実施形態において、単一のハプティックドライバ回路がマルチプレクサ、スイッチなどを用いて複数のハプティックアクチュエータ150に接続され、別の実施形態において、いくつかのハプティックドライバ回路が提供され、各ハプティックドライバ回路は単一のハプティックアクチュエータ150に結合される。一般に、各ハプティックドライバ回路は、例えば電子モータ、電磁アクチュエータ、ボイスコイル、ソレノイド、偏心回転質量(ERM)振動モータ、高調波ERMモータ(HERM)、線形共振アクチュエータ(LRA)、圧電アクチュエータ、電気活性ポリマ(EAP)アクチュエータ、形状記憶合金、静電摩擦ディスプレイ、超音波振動発生器、高帯域幅アクチュエータなどの、ハプティックアクチュエータ150の特定の型式をサポートする。特定の実施形態において、単一のハプティックドライバ回路は、異なる種類のハプティックアクチュエータ150をサポートしてもよい。
ハプティックサーバ110は、ハプティックアクチュエータ150を使用してハプティック効果セッションを構成および制御するために、ハプティッククライアント130上で実行するアプリケーションと通信するハプティック効果設計アプリケーションと、ハプティックハードウェアサポートプラットフォーム120上で実行するファームウェアとを実行する、特にプログラムされた汎用コンピュータである。一実施形態において、ハプティック効果設計アプリケーションは、ハプティッククライアント130上で実行するウェブブラウザアプリケーションと通信するウェブサーバアプリケーションである。他のクライアントサーバおよび分散型ソフトウェアアーキテクチャも本発明によって検討される。
ウェブベースの実施形態において、ハプティック効果設計アプリケーションは、ハプティッククライアント130上で実行するブラウザアプリケーションを介してユーザに提示されるグラフィカルユーザインタフェースを生成し、特定のハプティック効果ドライバソフトウェアパッケージまたはライブラリから1つ又は複数のハプティック効果を選択及び/又はカスタマイズすることによって、ユーザが特定のハプティックアクチュエータ150用の1つ又は複数のハプティック信号を設計することを可能にする。異なるハプティック効果ドライバソフトウェアパッケージおよびライブラリが提供されてもよく、これは有利にはユーザが異なる制御レジーム(regime)の下で特定のハプティックアクチュエータ150の性能を評価および比較することを可能にする。例えば、異なるハプティック効果ドライバソフトウェアパッケージまたはライブラリは、例えば、低忠実度(fidelity)ハプティック効果、中忠実度ハプティック効果、高忠実度ハプティック効果などの異なる制御忠実度を有するハプティックコマンドを作成してもよい。
ハプティッククライアント130上で実行されるブラウザアプリケーションから受信されたユーザ入力に応答して、および特定のハプティックアクチュエータ150の特性に基づいて、ハプティック効果デザインアプリケーションは、選択されたハプティック効果ドライバソフトウェアパッケージまたはライブラリを用いて、ハプティックコマンドメッセージを生成し、これはハプティック通信プロトコルを使用してネットワーク140を介してサーバコンピュータ110からハプティックハードウェアサポートプラットフォーム120に送信される。ハプティックハードウェアサポートプラットフォーム120のマイクロコントローラユニット上で実行するファームウェアは、ハプティックコマンドメッセージを解析しかつ復号化し、次いで特定のハプティックアクチュエータ150に結合されたハプティックドライバ回路に対し制御信号を生成して提供する。ハプティックドライバ回路は、マイクロコントローラユニットから受信した制御信号に応答して、特定のハプティックアクチュエータ150のためのドライブ信号を生成する。
一般的に、単一のハプティックアクチュエータ150は、ハプティックセッション中に単一のハプティックドライバ回路によって駆動される。いくつかの実施形態において、ハプティックコマンドメッセージは、いくつかのハプティックアクチュエータ150のためのドライブ値を含んでもよく、一方、他の実施形態において、それぞれが単一のハプティックアクチュエータ150のためのドライブ値を提供する、いくつかのハプティックコマンドメッセージが受信されてもよい。これらの実施形態において、いくつかのハプティックアクチュエータ150は、ハプティックセッション中に、対応するハプティックドライバ回路に提供されるドライブ信号を用いて、同時に駆動されてもよい。
図2は、本発明の一実施形態に従った、ハプティックハードウェアサポートプラットフォーム200のシステムブロック図である。
ハプティックハードウェアサポートプラットフォーム220は、図1に示されるハプティックハードウェアサポートプラットフォーム120に対応し、ハプティックドライバ回路230に結合されたMCU210と、外部電力入力コネクタ262に結合された電源260と、Bluetoothネットワーク242、Wi-Fiネットワーク244、セルラネットワーク246などの1つまたは複数のローカル無線ネットワークとの通信をサポートする無線通信インタフェース240と、MCU210に結合されたバス250または情報を通信するための別の通信メカニズムと、無線通信インタフェース240と、電源260と、を含む。図2に示されるローカル無線ネットワークは、ネットワーク140の一部を形成すると考えられる。ハプティックハードウェアサポートプラットフォーム220の電力は、電源260に結合された再充電可能または交換可能なバッテリ264、外部電力入力コネクタ262に設けられた外部電力、イーサネットコネクタ217、ユニバーサル・シリアル・バス(USB)コネクタ218などによって提供されてもよい。
一実施形態において、MCU210はRenesas Synergy S5マイクロコントローラである。一般的に、MCU210は、中央処理装置(CPU)212、情報およびCPU212によって実行される命令を記憶するためのメモリ214、および例えばイーサネット、USBおよびシリアル通信インタフェース216、入出力(I/O)回路220、システムおよび電力管理回路222、オプションのLCDディスプレイ、タッチスクリーンなどを制御するためのマンマシンインタフェース回路(HMI)224などのような様々な周辺機器を実装する他の回路を含む。メモリ214は、例えばコードフラッシュメモリ、データフラッシュメモリ、静的ランダムアクセスメモリ(SRAM)、フラッシュキャッシュメモリ等の揮発性および不揮発性メモリの両方を含む。特定の実施形態において、メモリ214は、リアルタイムオペレーティングシステム(RTOS)およびRAMにロードされCPU212によって実行されるときに機能性を提供する別のファームウェアを不揮発性メモリに格納する。I/O回路220は、ハプティックドライバ回路230に結合されかつ汎用I/Oポート、アナログ−デジタル(A/D)コンバータ、デジタル−アナログ(D/A)コンバータ、パルス振幅変調(PWM)タイマ等を含む。
特定の実施形態において、ハプティックハードウェアサポートプラットフォーム220は、ERM振動モータ、LRA、圧電アクチュエータ、および電気活性ポリマ(EAP)アクチュエータをサポートする。別の実施形態は、これら及び/又は他の型式のアクチュエータ、またはそれらの組合せをサポートする。一般的に、ハプティックドライバ回路230は、MCU210から制御信号を受信し、ハプティックアクチュエータ150を駆動するために必要な電圧および電流を供給する。
ERM振動モータは、例えば、ゲームランブル効果のような、ゆっくりとした、手の込んだユーザインタフェースアプリケーションのために使用されてもよく、および大衆市場のデバイスのための最も費用効果の高いハプティックアクチュエータの一つを提供する。軸と回転偏心質量を使用するERM振動モータは、直径が3mm〜8mm(またはそれ以上)、長さが10mm〜20mm(またはそれ以上)、および回転質量振り回し直径が4〜7mm(またはそれ以上)を含む、典型的な寸法を有する長方形または円筒形である。シャフトレス設計を使用したERM振動モータは、直径が8〜12mm(またはそれ以上)、長さが3mm〜4mm(またはそれ以上)を含む、典型的な寸法を有するコイン型である。ERM振動モータは、1.3V〜5Vの動作電圧、75mA〜240mAの動作電流を有し、50Hz〜350Hzの周波数で振動し、比較的高い機械的時定数(例えば、約50ms)を有する。
ERM振動モータのためのハプティックドライバ回路230は、とりわけ電力増幅器を含み、および電力増幅器がERM振動モータのリード線にわたって印加する電圧値を指定する、MCU210からパルス振幅変調(PWM)または相互集積チップ(I2C)制御信号を受信する。制御信号は双方向であり、正および負の電圧を印加されることができる。制御信号は、5ms間隔でMCU210によって更新されてもよく、各間隔で新しい電圧値が指令されることができる。
LRAは、ハプティックに適しており、多くのスマートフォンで使用されている。LRAは、共振周波数で減衰質量/ばねシステム(damped mass/spring system)を直線的に移動するためにAC入力信号を必要とする。LRAは、直径8〜10mm、長さ3mm〜4mmを含む、典型的な寸法を有する円筒形である。LRAは、1.8V〜2Vの動作電圧、50mA〜75mAの動作電流を有し、150Hz〜250Hzの周波数で共振し、および約30msの機械的時定数を有する。LRAは、ベアリングを有さないため、耐久性があり、パーツは摩擦を受けない。これらはERMよりもコストがかかり、および共振音を防止するためにより高度な制御が必要である。
LRAのためのハプティックドライバ回路230は、とりわけ、MCU210からPWMまたはI2C制御信号を受信かつ解釈するアクチュエータドライバ増幅チップを含み、次いでアクチュエータの共振周波数(通常175Hz)にきっちりと対応する周波数でLRAを駆動する。一実施形態において、方形波が制御信号として使用される。制御信号は、5mm間隔で更新されてもよい。LRAのためのハプティックドライバ回路230はLRAの共振周波数に自動的にロックする「オートチューン」機能を有してもよく、これはパフォーマンスを最適化し、不適切に調整されたLRAアクチュエータでしばしば発生する共振音を制御する。
圧電アクチュエータは、高忠実度のハプティック効果を作成するために使用されることができる高性能アクチュエータである。圧電アクチュエータは、マッチ棒状のフォームファクタを有し、一般的に約4x4x40mmの寸法であり、およびタブレットデバイスのほかに新しいスマートフォンの設計にも簡単にフィットする。圧電アクチュエータは、多くの利点を有し、持続時間において2msと短いハプティック効果の作成を可能にする優れた機械時定数(5ms未満)を含み、これはタッチタイピングフィードバックによく適合する。圧電アクチュエータは広範囲の周波数(150Hz〜300Hz)で振動し、様々な非常に微妙なタッチ感覚を作成する。しかしながら、圧電アクチュエータは、最大+/−70Vでおおよそ50nFの容量性負荷を駆動する増幅器を必要とする。必要な瞬間消費電力は、例えば3V電源でおおよそ300mAと高いが、圧電アクチュエータは、ERM振動モータまたはLRAより多くのエネルギーを消費しない。圧電アクチュエータは、それらの本質的に脆いセラミック材料であるにも関わらず、非常に耐久性があり、ハンドヘルドデバイスについて特有の、厳しい落下試験レジメンに耐えられるように設計されている。
圧電アクチュエータのためのハプティックドライバ回路230は、とりわけ、電力増幅器を含み、8kHzの8ビットPCMデータストリームに類似するMCU210からパルス振幅変調(PWM)または相互集積チップ(I2C)制御信号を受信する。
EAPアクチュエータは、ハイエンドのスマートフォンで使用されている。EAPアクチュエータは、幅広であるが、外部の移動可能な主要部に付けられた非常にフラットなパネル(例えば、45mm x 38mm x 0.8mm)であり、一般的にデバイス自信のバッテリであり、これは次いで90Hz〜125Hzのどこかで共振するように設計されたスレッドに組み込まれる。EAPアクチュエータのための機械的時定数は、低ミリ秒である。EAPアクチュエータは800V信号を生成することができる電子機器を必要とする。スレッドは非常に狭いスペースに統合することは困難である可能性があるが、アクチュエータ材料自体が極めて薄く、優れた耐久性を有することができる。EAPアクチュエータは、圧電アクチュエータと同様の性能を提供する。
EAPアクチュエータのためのハプティックドライバ回路230は、とりわけ最大800Vを生成するための電力増幅器を含み、およびMCU210からPWMまたはI2C制御信号を受信する。
特定のハプティックアクチュエータとハプティックハードウェアサポートプラットフォーム200を使用してハプティックセッションを開始するために、ユーザは、特定のハプティックアクチュエータのリード線を適切なハプティックドライバ回路230のコネクタに接続し、ハプティックハードウェアサポートプラットフォーム200の電源をいれる。MCU210の電源をいれるシーケンスの間、ハードウェアブートローダは、CPU212のブートシーケンスを実行し、これは一般的にCPU212のクロック、割込み等を初期化すること、およびメモリ214からソフトウェアブートローダをロードすることを含み、これはメモリ214の不揮発性の部分からSRAMに、例えばハードウェアドライバ、RTOSなどを含むソフトウェアをロードする。一旦起動されると、RTOSは、メモリ214の不揮発性の部分からSRAMに、例えばスケジューラモジュール、セキュリティモジュール、通信ハンドラモジュール、コマンドハンドラモジュール、ハプティックハンドラモジュール、ハプティック更新時間モジュール、ハプティックアクチュエータドライブ制御モジュールなどを含む様々なハプティック関連ソフトウェアモジュールをロードする。
スケジューラモジュールは、RTOSと連携して、他のモジュールの実行、他のモジュール間の通信などを管理する。
セキュリティモジュールは、ネットワーク140を介してサーバコンピュータ110とハプティックハードウェアサポートプラットフォーム200との間で交換されるメッセージを認証し、解読し、および暗号化する。例えば、セキュリティモジュールは、イーサネットI/F216および無線通信I/F240からネットワークメッセージを受信し、ネットワークメッセージを認証し、通信ハンドラモジュールに転送し、通信ハンドラモジュールからメッセージを受信し、ネットワーク140を介して送信するために、それらを暗号化してイーサネットI/F216および無線通信I/F240に転送する。
通信ハンドラモジュールは、ネットワーク140を介して、サーバコンピュータ110上で実行する、ハプティック効果設計アプリケーションから受信され、ハプティック効果設計アプリケーションに送信されるメッセージを処理する。これらのメッセージは、ハプティック効果設計アプリケーションに送信されるハプティックプラットフォーム能力メッセージ、ハプティック効果設計アプリケーションから受信されるハプティックコマンドメッセージなどを含む。
例えば、通信ハンドラモジュールは、ハプティックコマンドメッセージを識別し、コマンドハンドラモジュールに転送し、ハプティックプラットフォーム能力メッセージを作成し、暗号化などのためにセキュリティモジュールに転送する。特定の実施形態において、コマンドハンドラモジュールは、ハプティックコマンドメッセージからハプティックデータを抽出するために、ハプティック通信プロトコルに従ってハプティックコマンドメッセージを解析する。ハプティックデータは、次いでハプティックデータハンドラモジュールに提供される。特定の実施形態において、ハプティックコマンドメッセージは、いくつかのハプティックアクチュエータ150にのためのハプティックデータを含んでもよい。
図3は、本発明の実施形態に従った、ハプティック通信プロトコルを表す図である。
この実施形態において、ハプティック通信プロトコル300は、ハプティックプラットフォーム能力メッセージ310、ハプティックコマンドメッセージ320、ハプティックコマンドメッセージ330などを含む。他のメッセージもまた、本発明によって検討される。ハプティックプラットフォーム能力メッセージ310は、認証及び/又はプラットフォーム情報312、および1つまたは複数のハプティックパケット情報配列314を含む。ハプティックコマンドメッセージ320は、1つまたは複数のハプティックアクチュエータ150のためのドライブ値を包含するハプティックデータパケット322を含む。コマンドメッセージ330は、コマンド332およびコマンド引数334を含む。
表1は、例示的なハプティックプラットフォーム能力メッセージ310を示し、表2は例示的なハプティックパケット情報配列314を示し、および表3は、本発明の特定の実施形態に従った、例示的なハプティックデータパケット322を示す。
コマンドハンドラモジュールは、例えば、ハプティックコマンドメッセージ320、ハプティックコマンドメッセージ330などの、通信ハンドラモジュールから受信したコマンドメッセージを処理する。
ハプティックデータハンドラモジュールは、ハプティックデータパケット322から特定のハプティックアクチュエータ150のためのドライブ値を抽出し、これらのドライブ値をCPU212のバッファまたはメモリ214に投入し、ハプティック効果を再生するためにハプティック更新タイマモジュールおよびハプティックアクチュエータドライブ制御モジュールを呼び出す。
一実施形態において、ハプティック効果データブロックは、ハプティックアクチュエータ150の回転の方向および速度を決定する8ビットの符号なしドライブ値を含む。値の範囲は[0, 255]であり、ハプティックアクチュエータ150に応じて異なる意味を有する。例えば、一方向アクチュエータは、一方向にのみ回転するので、ドライブ値の範囲は、次のように分割されてもよく、すなわち、[0, 127]の範囲のドライブ値は除外かつ無視され、128のドライブ値はアクチュエータを停止させ、[129, 255]の範囲のドライブ値は、ドライブ値が増加するにつれてその速度を増加して、アクチュエータを時計回り(または反時計回り)方向に回転させる。
ハプティックアクチュエータドライブ制御モジュールは、バッファに記憶されたドライブ値を制御信号に変換し、制御信号をハプティックアクチュエータ150に結合されたハプティックドライバ回路230に提供する。ハプティックアクチュエータドライブ制御モジュールは、特定のハプティックドライバ回路230が必要とし得る任意の追加の信号も提供する。上述の実施形態において、ハプティックアクチュエータドライブ制御モジュールは、8ビットの符号なしドライブ値を制御信号に変換し、制御信号をハプティックドライバ回路230に提供し、これは、ドライブ信号を使用してハプティックアクチュエータを駆動する。制御信号は、PWM信号、I2C信号等の1つまたは複数の信号を介してハプティックドライバ回路230に提供されるが、1つまたは複数のアナログ信号が使用されてもよい。ドライブ信号は、可変電圧信号、可変電流信号などのアナログ信号を介してハプティックアクチュエータ150に提供されるが、デジタル信号が使用されてもよい。したがって、ドライブ信号は、ドライブ値に基づいており、ハプティックドライバ回路230は、選択されたハプティック効果を再生するためにハプティックアクチュエータ150にドライブ値を適用する。ハプティックアクチュエータドライブ制御モジュールの実行は、ハプティック更新割込み信号によって制御される。
ハプティック更新タイマモジュールは、CPU212上のハードウェアタイマを制御する。ハードウェアタイマは、ハプティックアクチュエータ150のための更新間隔毎に割込みを発生させるように構成される。異なる割込みは、異なる更新間隔で異なるハプティックアクチュエータを駆動するために提供されてもよく、異なるハプティックアクチュエータは、同時に、連続して、などで駆動してもよい。割込みが発生したとき、ハプティックアクチュエータドライブ制御モジュールは、ハプティックアクチュエータ150に適用されるドライブ値を制御信号に変換し、次いで制御信号をハプティックドライブ回路230に提供する。一例において、ハプティックアクチュエータ150は200Hz(5ms)の更新間隔またはレートを有し、ハプティックアクチュエータ150によって生成されるハプティック効果は、例えば{20, 30, 50, 70}の4つの8ビットドライブ値によって定義される。このハプティック効果を再生するために、ハプティックアクチュエータドライブ制御モジュールは、5msごとに設定されたこのドライブ値からドライブ値を読み取り、ドライブ値を制御信号に変換し、および制御信号をハプティックドライバ回路230に提供し、これはハプティックアクチュエータ150を駆動する。
この例において、時間t=0msで、ハプティックアクチュエータドライブ制御モジュールは、ドライブ値“20”を制御信号に変換し、制御信号をハプティックドライバ回路230に提供し、これは特定のハプティックアクチュエータ150にドライブ信号を適用する。時間t=5msで、ハプティックアクチュエータドライブ制御モジュールは、ドライブ値“30”を制御信号に変換し、制御信号をハプティックドライバ回路230に提供し、これは特定のハプティックアクチュエータ150にドライブ信号を適用する。時間t=10msで、ハプティックアクチュエータドライブ制御モジュールは、ドライブ値“50”を制御信号に変換し、制御信号をハプティックドライバ回路230に提供し、これは特定のハプティックアクチュエータ150にドライブ信号を適用する。時間t=15msで、ハプティックアクチュエータドライブ制御モジュールは、ドライブ値“70”を制御信号に変換し、制御信号をハプティックドライバ回路230に提供し、これは特定のハプティックアクチュエータ150にドライブ信号を適用する。時間t=20msで、読み取るためのドライブ値が残されていないので、特定のハプティックアクチュエータ150は動作されない。この例において、ハプティック更新タイマモジュールは、5msごとに割込みを発生するように構成され、そうすることによって、ドライブ値は読み取られ、制御信号に変換されることができ、特定のハプティックアクチュエータ150へのドライブ信号として適用のためにハプティックドライバ回路230に提供される。
通信ハンドラモジュールがRTOSによって最初に実行されるとき、無線通信I/F240は、Bluetoothネットワーク242、Wi-Fiネットワーク244、セルラネットワーク246等の利用可能なローカル無線ネットワークを識別し、通信ハンドラモジュールは、次いでネットワーク140を介して、例えばイーサネット、Bluetooth、TCP/IP、UDPなどの適切なネットワーク通信プロトコルスタックに従ってサーバコンピュータ110への通信リンクまたはチャネルを確立する。
通信ハンドラモジュールは、次いで、例えば固有のプラットフォームシリアル番号またはIDなどの認証及び/又はプラットフォーム情報312を含むハプティックプラットフォーム能力メッセージ310を、サーバコンピュータ110上で実行するハプティック効果設計アプリケーションに送信する。特定の実施形態において、ハプティックプラットフォーム能力メッセージ310は、例えば、FTP、TFTP等の標準的なネットワーク通信プロトコルを使用して送信されるが、他のファイルまたはメッセージ送信プロトコルもまた、本発明によって考慮される。いくつかの実施形態において、ハプティックプラットフォーム能力メッセージ310は、送信前に暗号化されてもよい。ハプティックサーバ110がハプティックプラットフォーム能力メッセージ310を受信したあと、ハプティック効果設計アプリケーションは(必要ならば)解読し、ハプティックハードウェアサポートプラットフォーム200を認証し、特定のユーザと関連付ける。
いくつかの実施形態において、通信ハンドラモジュールがRTOSによって最初に実行されるおき、通信ハンドラモジュールは、ハプティックデータハンドラモジュール及び/又はハプティックアクチュエータドライブ制御モジュールがハプティックドライバ回路230に接続されたハプティックアクチュエータ150の特性を決定することを要求する。これらの特性は、次いで通信ハンドラモジュールに提供され、これは、ネットワーク140を介してハプティックサーバ110上で実行するハプティック効果設計アプリケーションに送信されるハプティックプラットフォーム能力メッセージ310内の、ハプティックアクチュエータ150に対応するハプティックパケット情報配列314を含む。例えば、立ち上がり時間、立ち下り時間、定格電圧などのような別の特性も伝達されてもよい。立ち上がり時間は、休止から開始するピーク加速度の90%に到達するようにアクチュエータによってとられるミリ秒単位の時間である。立ち下がり時間は、ピーク加速度の90%から休止状態に到達するようにアクチュエータによってとられるミリ秒単位の時間である。定格電圧は、アクチュエータの定格電圧/動作電圧である。
他の実施形態において、複数のハプティックアクチュエータ150が1つまたは複数のハプティックドライバ回路230に接続されてもよく、およびハプティックハンドラモジュールは、例えばハプティックドライバ回路230に接続されたハプティックアクチュエータ150の数、各ハプティックアクチュエータ150の型式、接続された各ハプティックアクチュエータ150の特性などを含む、これらのハプティックアクチュエータ150の特性を決定してもよい。これらの特性は、次いで通信ハンドラモジュールに提供され、これはネットワーク140を介してハプティックサーバ110上で実行するハプティック効果設計アプリケーションに送信されるハプティックプラットフォーム能力メッセージ310の各ハプティックアクチュエータ150のためのハプティックパケット情報配列314を含む。
いくつかの実施形態において、ハプティックプラットフォーム能力メッセージ310は、送信前に暗号化されてもよい。
ハプティックサーバ110がハプティックプラットフォーム能力メッセージ310を受信した後、ハプティック効果設計アプリケーションは、(必要ならば)解読し、ハプティックアクチュエータ150の特性をハプティックハードウェアサポートプラットフォーム200と関連付ける。
図4および5は、本発明の実施形態に従った、ハプティック効果デザインアプリケーションのためのグラフィカルユーザインタフェースを表す図である。
ウェブベースの実施形態において、ハプティッククライアント130上で実行されるブラウザアプリケーションは、ネットワーク140を介してサーバコンピュータ110上で実行するハプティック効果設計アプリケーションへの通信リンクを確立する。ハプティック効果設計アプリケーションは、次いでグラフィカルユーザインタフェース(GUI)ウィンドウ400を生成し、これはブラウザアプリケーションを介してユーザに提供される。
最初に、ユーザは、例えばユーザネームおよびパスワード等の、特定の信用証明をGUIウィンドウ400に入力し、これはハプティック効果設計アプリケーションによって認証される。次いでGUIウィンドウ500がユーザに提供され、これは存在し得るユーザに関連付けられた利用可能なハプティックハードウェアサポートプラットフォーム200のリストを含み、ユーザは次いでリストから適切なハプティックハードウェアサポートプラットフォーム200を選択する。あるいは、単一のハプティックハードウェアサポートプラットフォーム200は、ユーザに関連付けられてもよく、選択は必須ではない。
図6Aおよび6Bは、本発明の実施形態に従った、ネットワークを介してハプティックアクチュエータを制御するための機能を図示するフローチャート図である。
実施形態600に関して、610において、ハプティックアクチュエータサポートプラットフォームに接続されたハプティックアクチュエータの選択は、ハプティックサーバで受信される。特定の実施形態において、ユーザは、GUIウィンドウ500で、プルダウンメニュー、ポップアップメニュー、チェックボックスなどを使用して、ハプティックハードウェアサポートプラットフォーム200に接続された特定のハプティックアクチュエータ150を、利用可能なハプティックアクチュエータ型式のリストから選択する。いくつかの実施形態において、ハプティックハードウェアサポートプラットフォーム200に接続された特定のハプティックアクチュエータ150は、ハプティックプラットフォーム能力メッセージ310で提供される特性に基づいて、ハプティック効果設計アプリケーションによって識別され、ユーザはこの情報を単に確認する。別の実施形態において、ユーザは、GUIウィンドウ500の様々な入力フィールド(図示せず)に特定のハプティックアクチュエータ150の特性を入力し、ハプティック効果設計アプリケーションは、ユーザによる確認のために特定のハプティックアクチュエータ150を識別する。これらの特性は、例えば、質量、形状、寸法などの機械的データ、例えば、立ち上がり時間、立ち下がり時間、定格電圧などの電気的データを含んでもよい。別の実施形態において、2つ以上のハプティックアクチュエータ150は、ユーザによって選択されるかまたは入力されてもよく、あるいはハプティックプラットフォーム報告メッセージ310によって提供されてもよい。
620において、ハプティック効果ドライバソフトウェアパッケージまたはライブラリの選択が、ハプティックサーバで受信される。特定の実施形態において、ユーザは、GUIウィンドウ500内のプルダウンメニュー、ポップアップメニュー、チェックボックス等を使用して、利用可能なハプティック効果ドライバソフトウェアパッケージまたはライブラリのリストから特定のハプティック効果ドライバソフトウェアパッケージまたはライブラリを選択する。例えば、ユーザは、ハプティック効果ドライバソフトウェアパッケージまたはライブラリのいくつかの異なるバージョンのリストから、モバイルデバイスのためのハプティック効果ドライバソフトウェアパッケージまたはライブラリの特定のバージョンを選択してもよい。各バージョンは、異なるハプティック効果を作成してもよく、あるいはハプティック効果の異なる型式を含んでもよい。ハプティック効果ドライバソフトウェアパッケージまたはライブラリの異なるバージョンの例には、Immersion TS2000, TS2500, TS3000, TS4000, TS5000などを含むが、これらに限定されない。
630において、選択されたハプティック効果ドライバソフトウェアパッケージまたはライブラリからのハプティック効果は、ハプティックサーバで受信される。特定の実施形態において、ユーザは、GUIウィンドウ500のプルダウンメニュー、ポップアップメニュー、チェックボックスなどを使用して、利用可能なハプティック効果のリストから特定のハプティック効果を選択する。ハプティック効果は、一般的に、例えばクリック、カチカチいう音、衝突、アップランプ(up ramp)、ダウンランプ(down ramp)、パルス、ブザー、アラート、テクスチャ、例えば爆発、武器、衝撃、エンジンなどのゲーム関連の効果などが含まれる。ハプティック効果の各型式は、例えば、強い力でのはっきりしたシングルクリック、中程度の力での強いダブルクリック、弱い力でのカチカチいう音など、1つ又は複数の修飾語句を有してもよい。例示的なハプティック効果ライブラリリストの一部を表1に示す。特定の実施形態において、2つ以上のハプティック効果は、連続的な再生のために選択されることができる。
オプション635において、選択されたハプティック効果に対する1つまたは複数の変更がハプティックサーバで受信される。いくつかの実施形態において、ユーザはGUIウィンドウ500を使用して選択されたハプティック効果を変更してもよい。
640において、ハプティックコマンドメッセージは、選択されたハプティックアクチュエータ、選択されたハプティック効果、および選択されたハプティック効果ドライバソフトウェアパッケージまたはライブラリに基づいてハプティックサーバで作成される。特定の実施形態において、ハプティックコマンドメッセージ320は、選択されたハプティックアクチュエータ150のためのドライブ値の時間系列を伴うハプティックデータパケット322を含む。言い換えると、ハプティック効果設計アプリケーションは、選択されたハプティック効果ドライバソフトウェアパッケージまたはライブラリを呼び出し、選択されたハプティック効果および選択されたハプティックアクチュエータ150の特性を提供することによって、選択されたハプティック効果をレンダリングする。
650において、ハプティックコマンドメッセージは、ネットワークを介してハプティックサーバからハプティックハードウェアサポートプラットフォームに送信される。上述したように、ハプティック効果設計アプリケーションは、上述した、以前に確立された通信リンクまたはチャネルを使用して、ネットワーク140を介してハプティックコマンドメッセージ320をハプティックハードウェアサポートプラットフォーム200に送信する。別の実施形態において、新しい通信リンクまたはチャネルが、ハプティックサーバ110とハプティックハードウェアサポートプラットフォーム200との間に確立されてもよい。
660において、ハプティックコマンドメッセージは、ネットワークを介してハプティックハードウェアサポートプラットフォームで受信される。通信ハンドラモジュールは、以前に確立された通信リンクまたはチャネル、あるいは、代わりに新しい通信リンクまたはチャネルを使用して、ネットワーク140を介してハプティックコマンドメッセージ320を受信し、次いでハプティックコマンドメッセージをコマンドハンドラモジュールに転送する。
670において、ハプティックコマンドメッセージは、ハプティックアクチュエータドライブ値を抽出するために解析される。コマンドハンドラモジュールは、ハプティックアクチュエータドライブ値を含むハプティックデータパケット322を抽出するために、ハプティックコマンドメッセージ320を解析する。次いで、コマンドハンドラモジュールは、ハプティックデータパケット322をハプティックデータハンドラモジュールに提供する。ハプティックデータハンドラモジュールは、CPU212のバッファまたはメモリ214に、特定のハプティックアクチュエータ159のためのドライブ値を投入し、ハプティック効果を再生するために、ハプティック更新タイマモジュール及びハプティックアクチュエータドライブ制御モジュールを呼び出す。
680において、ハプティックアクチュエータドライブ信号が、選択されたハプティック効果を再生するためにハプティックアクチュエータに適用され、ハプティックアクチュエータドライブ信号は、ハプティックアクチュエータドライブ値に基づく。上述したように、ハプティック更新割込み信号に応答して、ハプティックアクチュエータドライブ制御モジュールは、バッファからドライブ値を読み出し、ドライブ値に基づいて、制御信号を作成し、次いでハプティックドライバ回路230に提供する。ハプティックドライバ回路230は、制御信号に応答して、ドライブ信号を生成し、ハプティックアクチュエータ15に提供する。別の実施形態において、ドライブ値は制御信号である。従って、介在する制御信号が用いられるか否かにかかわらず、ドライブ信号は常にドライブ値に基づく。
本発明は、有利には、ユーザが異なるハプティック効果ドライバソフトウェアパッケージ及び/又はライブラリの品質および性能を、迅速、容易、かつ効果的に比較および対比することを可能にする。例えば、ユーザが、ERMアクチュエータ向けのImmersionのTS2000およびTS2500ソフトウェア製品の品質と性能を比較および対比したいとする。これら2つのソフトウェア製品によって生成されたハプティック効果を比較および対比するために、ハプティック効果設計アプリケーションは、ユーザがハプティックハードウェアサポートプラットフォームに接続された特定のERMアクチュエータを選択及び/又は構成し、第1のソフトウェア製品(例えば、TS2000ソフトウェア製品)を選択し、次いでこのERMアクチュエータのためのハプティック効果を体験することを可能にする。ハプティック効果設計アプリケーションの第2のソフトウェア製品(例えば、TS2500ソフトウェア製品)の単純な選択により、TS2500製品を使用して、このERMアクチュエータのための新しいハプティック効果が作成され、および体験されることができる。言い換えると、ユーザは、ハプティック効果設計アプリケーションの「スイッチを反転する」だけで、同じERMアクチュエータのためのこれらの2つの製品によって作成されるハプティック効果の違いを体験する。ユーザは、TS2500製品がより鮮明でより望ましい応答を提供すると感じてもよい。
その上、本発明は、有利には、ユーザが迅速、容易、かつ効果的にハプティックアクチュエータを選択および構成することを可能にする。例えば、ユーザが表面をハプティック化(haptify)することを望むと仮定する。ハプティックアクチュエータの選択および構成のために、ユーザは、例えば質量、形状、寸法などのアクチュエータ特性をハプティック効果設計アプリケーションに入力してもよく、これは、アクチュエータの型式、製造者、およびアクチュエータ構成パラメータを決定する。あるいは、ユーザは、ハプティック効果設計アプリケーションによって提供されたリストから、ハプティックアクチュエータを単純に選択してもよく、これは、関連するアクチュエータ構成パラメータをロードする。ユーザは、上述したように、ソースコード等を再コンパイルしてダウンロードする必要なしに、所望のハプティック効果結果を即座に得るために、アクチュエータ構成パラメータを「微調整」することができる。
特定の実施形態において、クラウド接続ハプティックデモンストレーションシステム100は、構成可能なコンピューティングリソース(例えば、ネットワーク、サーバ、ストレージ、アプリケーション、およびサービス)の共有されたプールへの便利なオンデマンドネットワークアクセスを可能にする。クラウド(またはネットワーク)を介して提供またはアクセスされるサービスは、クラウドサービスと呼ばれる。
クラウド接続ハプティックデモンストレーションシステム100によって提供されるサービスは、そのユーザのニーズを満たすように動的に拡張することができる。クラウド接続ハプティックデモンストレーションシステム100によって提供されるサービスの具体的なインスタンス化は、「サービスインスタンス」と呼ばれる。一般に、インターネットのような、通信ネットワークを介してクラウドサービスプロバイダのシステムからユーザに利用可能にされた任意のサービスは、「クラウドサービス」と呼ばれる。一般的に、パブリッククラウド環境において、クラウドサービスプロバイダのシステムを構成するサーバとシステムは、顧客の個人用及び/又は業務用のサービスおよびシステムとは異なる。例えば、クラウドサービスプロバイダのシステムは、アプリケーションをホストしてもよく、ユーザは、インターネットなどの通信ネットワークを介して、要求に応じて、アプリケーションを注文し、使用してもよい。
従って、ネットワークを介してハプティックアクチュエータを制御するためのシステムおよび方法が、有利に提供される。
一実施形態において、システムは、メモリとプロセッサを含む、ネットワークに結合されたハプティックサーバと、ネットワークに結合され、メモリとプロセッサを含む選択されたハプティックアクチュエータに接続された、ハプティックハードウェアサポートプラットフォームと、を含む。ハプティックサーバプロセッサは、ハプティックアクチュエータの選択を受信し、ハプティック効果ドライバソフトウェアパッケージまたはライブラリの選択を受信し、選択されたハプティック効果ドライバソフトウェアパッケージまたはライブラリからハプティック効果の選択を受信し、選択されたハプティックアクチュエータ、選択されたハプティック効果、および選択されたハプティック効果ドライバソフトウェアパッケージまたはライブラリに基づいてハプティックコマンドメッセージを作成し、ネットワークを介してハプティックコマンドメッセージを送信するように構成され、ハプティックコマンドメッセージは複数のハプティックアクチュエータドライブ値を含む。ハプティックハードウェアサポートプラットフォームプロセッサは、ネットワークを介してハプティックコマンドメッセージを受信し、複数のハプティックアクチュエータドライブ値を抽出するためにハプティックコマンドメッセージを解析し、および選択されたハプティック効果を再生するために、ハプティックアクチュエータにハプティックアクチュエータドライブ信号を適用するように構成され、ハプティックアクチュエータドライブ信号は、ハプティックアクチュエータドライブ値に基づく。
別の実施形態において、方法は、ネットワークに結合されたハプティックサーバで、ネットワークに結合されたハプティックハードウェアサポートプラットフォームに接続されたハプティックアクチュエータの選択を受信するステップと、ハプティック効果ドライバソフトウェアパッケージまたはライブラリの選択を受信するステップと、選択されたハプティック効果ドライバソフトウェアパッケージまたはライブラリからハプティック効果の選択を受信するステップと、選択されたハプティックアクチュエータ、選択されたハプティック効果、および選択されたハプティック効果ドライバソフトウェアパッケージまたはライブラリに基づいてハプティックコマンドメッセージを作成するステップと、ネットワークを介してハプティックハードウェアサポートプラットフォームにハプティックコマンドメッセージを送信するステップと、を含み、ハプティックコマンドメッセージは、複数のハプティックアクチュエータドライブ値を含む。方法はまた、ハプティックハードウェアサポートプラットフォームにおいて、ネットワークを介してハプティックコマンドメッセージを受信するステップと、複数のハプティックアクチュエータドライブ値を抽出するためにハプティックコマンドメッセージを解析するステップと、選択されたハプティック効果を再生するために、ハプティックアクチュエータにハプティックアクチュエータドライブ信号を適用するステップと、を含み、ハプティックアクチュエータドライブ信号は、ハプティックアクチュエータドライブ値に基づく。
本発明の多くの特徴および利点は、詳細な明細書から明らかであり、従って、添付の特許請求の範囲によって、本発明の真の精神および範囲内に入る本発明のすべてのそのような特徴および利点を網羅することが意図される。さらに、当業者に数多くの修正および変形が容易に発生するであろうから、本発明を図示および説明した正確な構成および動作に限定することは望ましくなく、従ってすべての適切な修正および均等物は、本発明の範囲内である。
100 クラウド接続ハプティックデモンストレーションシステム
110 介してサーバコンピュータ
110 サーバコンピュータ
120 ハプティックハードウェアサポートプラットフォーム
130 ハプティッククライアント
140 ネットワーク
150 ハプティックアクチュエータ
200 ハプティックハードウェアサポートプラットフォーム
212 中央処理装置(CPU)
214 メモリ
216 シリアル通信インタフェース
217 イーサネットコネクタ
218 USBコネクタ
220 入出力(I/O)回路
220 ハプティックハードウェアサポートプラットフォーム
222 システムおよび電力管理回路
224 マンマシンインタフェース回路(HMI)
230 ハプティックドライバ回路
240 無線通信インタフェース
242 Bluetoothネットワーク
244 ネットワーク
246 セルラネットワーク
250 バス
260 電源
262 外部電力入力コネクタ
264 バッテリ
300 ハプティック通信プロトコル
310 ハプティックプラットフォーム能力メッセージ
312 プラットフォーム情報
314 ハプティックパケット情報配列
320 ハプティックコマンドメッセージ
322 ハプティックデータパケット
330 ハプティックコマンドメッセージ
332 コマンド
400 GUIウィンドウ

Claims (20)

  1. ハプティックシステムであって、
    ネットワークに結合され、メモリとプロセッサとを含む、ハプティックサーバであって、前記プロセッサは、
    ハプティックアクチュエータの選択を受信し、
    ハプティック効果ドライバソフトウェアパッケージまたはライブラリの選択を受信し、
    前記選択されたハプティック効果ドライバソフトウェアパッケージまたはライブラリからハプティック効果の選択を受信し、
    前記選択されたハプティックアクチュエータ、前記選択されたハプティック効果、および前記選択されたハプティック効果ドライバソフトウェアパッケージまたはライブラリに基づいて、ハプティックコマンドメッセージを作成し、前記ハプティックコマンドメッセージはハプティックアクチュエータドライブ値を含み、および
    前記ネットワークを介して前記ハプティックコマンドメッセージを送信するように構成される、
    ハプティックサーバと、
    前記ネットワークに結合されかつ前記選択されたハプティックアクチュエータに接続され、メモリとプロセッサとを含む、ハプティックハードウェアサポートプラットフォームであって、前記プロセッサは、
    前記ネットワークを介して、前記ハプティックコマンドメッセージを受信し、
    前記ハプティックアクチュエータドライブ値を抽出するために、前記ハプティックコマンドメッセージを解析し、および
    前記選択されたハプティック効果を再生するために、ハプティックアクチュエータドライブ信号を前記ハプティックアクチュエータに適用するように構成され、前記ハプティックアクチュエータドライブ信号は前記ハプティックアクチュエータドライブ値に基づく、
    ハプティックハードウェアサポートプラットフォームと、を含む、
    ハプティックシステム。
  2. 前記ハプティックアクチュエータ、ハプティック効果ドライバソフトウェアパッケージまたはライブラリ、およびハプティック効果の前記選択は、前記ネットワークに結合されたハプティッククライアントから受信される、請求項1に記載のシステム。
  3. 前記ハプティックサーバプロセッサが、
    前記選択されたハプティック効果への変更を前記ハプティッククライアントから受信するようにさらに構成された、
    請求項2に記載のシステム。
  4. 前記ハプティックサーバプロセッサが、
    前記ハプティックハードウェアサポートプラットフォームからハプティックプラットフォーム能力メッセージを受信し、前記ハプティックプラットフォーム能力メッセージは、前記ハプティックハードウェアサポートプラットフォームのための認証情報を含み、
    前記認証情報に基づいて、前記ハプティックハードウェアサポートプラットフォームを認証し、および
    前記ハプティックハードウェアサポートプラットフォームを前記ハプティッククライアントのユーザと関連付けるようにさらに構成された、
    請求項2に記載のシステム。
  5. 前記ハプティックサーバプロセッサが、
    前記ハプティックハードウェアサポートプラットフォームに接続された各ハプティックアクチュエータのための複数のハプティックアクチュエータ特性を受信するようにさらに構成された、
    請求項1に記載のシステム。
  6. 前記複数のハプティックアクチュエータ特性が、前記ハプティックハードウェアサポートプラットフォームから、ハプティックプラットフォーム能力メッセージにおいて受信される、請求項5に記載のシステム。
  7. 前記複数のハプティックアクチュエータ特性が、アクチュエータ型式とアクチュエータ更新レートを含む、請求項6に記載のシステム。
  8. 前記複数のハプティックアクチュエータ特性が、前記ハプティッククライアントから受信される、請求項5に記載のシステム。
  9. 前記複数のハプティックアクチュエータ特性が、立ち上がり時間、立ち下り時間、および定格電圧を含む、請求項8に記載のシステム。
  10. 前記ハプティックサーバプロセッサが、
    新しいハプティック効果ドライバソフトウェアパッケージまたはライブラリの選択を受信し、
    前記選択されたハプティックアクチュエータ、前記選択されたハプティック効果、および前記新しいハプティック効果ドライバソフトウェアパッケージまたはライブラリに基づいて、新しいハプティックコマンドメッセージを作成し、前記新しいハプティックコマンドメッセージは新しいハプティックアクチュエータドライブ値を含み、および
    前記ネットワークを介して、前記新しいハプティックコマンドメッセージを前記ハプティックハードウェアサポートプラットフォームに送信するように、さらに構成され、並びに
    前記ハプティックハードウェアサポートプラットフォームプロセッサが、
    前記ネットワークを介して、前記新しいハプティックコマンドメッセージを受信し、
    前記新しいハプティックアクチュエータドライブ値を抽出するために、前記新しいハプティックコマンドメッセージを解析し、および
    前記選択されたハプティック効果を再生するために、新しいハプティックアクチュエータドライブ信号を前記ハプティックアクチュエータに適用し、前記新しいハプティックアクチュエータドライブ信号は前記新しいハプティックアクチュエータドライブ値に基づくようにさらに構成された、
    請求項1に記載のシステム。
  11. ネットワークを介して、ハプティックアクチュエータを制御するためのコンピュータベースの方法であって、前記方法が、
    ネットワークに結合されたハプティックサーバにおいて、
    ハプティックアクチュエータの選択を受信するステップと、
    ハプティック効果ドライバソフトウェアパッケージまたはライブラリの選択を受信するステップと、
    前記選択されたハプティック効果ドライバソフトウェアパッケージまたはライブラリからハプティック効果の選択を受信するステップと、
    前記選択されたハプティックアクチュエータ、前記選択されたハプティック効果、および前記選択されたハプティック効果ドライバソフトウェアパッケージまたはライブラリに基づいて、ハプティックコマンドメッセージを作成するステップであって、前記ハプティックコマンドメッセージはハプティックアクチュエータドライブ値を含む、作成するステップ、および
    前記ネットワークを介して前記ハプティックコマンドメッセージを送信するステップと、を含み、並びに
    前記ネットワークに結合されかつ前記選択されたハプティックアクチュエータに接続されたハプティックハードウェアサポートプラットフォームにおいて、
    前記ネットワークを介して、前記ハプティックコマンドメッセージを受信するステップと、
    前記ハプティックアクチュエータドライブ値を抽出するために、前記ハプティックコマンドメッセージを解析するステップと、
    前記選択されたハプティック効果を再生するために、ハプティックアクチュエータドライブ信号を前記ハプティックアクチュエータに適用するステップであって、前記ハプティックアクチュエータドライブ信号は前記ハプティックアクチュエータドライブ値に基づく、適用するステップと、を含む、
    コンピュータベースの方法。
  12. 前記ハプティックアクチュエータ、ハプティック効果ドライバソフトウェアパッケージまたはライブラリ、およびハプティック効果の前記選択は、前記ネットワークに結合されたハプティッククライアントから受信される、請求項11に記載のコンピュータベースの方法。
  13. 前記ハプティックサーバにおいて、
    前記選択されたハプティック効果への変更を前記ハプティッククライアントから受信するステップをさらに含む、
    請求項12に記載のコンピュータベースの方法。
  14. 前記ハプティックサーバにおいて、
    前記ハプティックハードウェアサポートプラットフォームからハプティックプラットフォーム能力メッセージを受信するステップであって、前記ハプティックプラットフォーム能力メッセージは、前記ハプティックハードウェアサポートプラットフォームのための認証情報を含む、受信するステップと、
    前記認証情報に基づいて、前記ハプティックハードウェアサポートプラットフォームを認証するステップと、および
    前記ハプティックハードウェアサポートプラットフォームを前記ハプティッククライアントのユーザと関連付けるステップと、をさらに含む、
    請求項12に記載のコンピュータベースの方法。
  15. 前記ハプティックサーバにおいて、
    前記ハプティックハードウェアサポートプラットフォームに接続された各ハプティックアクチュエータのための複数のハプティックアクチュエータ特性を受信するステップをさらに含む、
    請求項11に記載のコンピュータベースの方法。
  16. 前記複数のハプティックアクチュエータ特性が、前記ハプティックハードウェアサポートプラットフォームから、ハプティックプラットフォーム能力メッセージにおいて受信される、請求項15に記載のコンピュータベースの方法。
  17. 前記複数のハプティックアクチュエータ特性が、アクチュエータ型式とアクチュエータ更新レートを含む、請求項16に記載のコンピュータベースの方法。
  18. 前記複数のハプティックアクチュエータ特性が、前記ハプティッククライアントから受信される、請求項15に記載のコンピュータベースの方法。
  19. 前記複数のハプティックアクチュエータ特性が、立ち上がり時間、立ち下り時間、および定格電圧を含む、請求項18に記載のコンピュータベースの方法。
  20. 前記ハプティックサーバにおいて、
    新しいハプティック効果ドライバソフトウェアパッケージまたはライブラリの選択を受信するステップと、
    前記選択されたハプティックアクチュエータ、前記選択されたハプティック効果、および前記新しいハプティック効果ドライバソフトウェアパッケージまたはライブラリに基づいて、新しいハプティックコマンドメッセージを作成するステップであって、前記新しいハプティックコマンドメッセージは新しいハプティックアクチュエータドライブ値を含む、作成するステップと、
    前記ネットワークを介して、前記新しいハプティックコマンドメッセージを前記ハプティックハードウェアサポートプラットフォームに送信するステップと、並びに
    前記ハプティックハードウェアサポートプラットフォームにおいて、
    前記ネットワークを介して、前記新しいハプティックコマンドメッセージを受信するステップと、
    前記新しいハプティックアクチュエータドライブ値を抽出するために、前記新しいハプティックコマンドメッセージを解析するステップと、および
    前記選択されたハプティック効果を再生するために、新しいハプティックアクチュエータドライブ信号を前記ハプティックアクチュエータに適用するステップであって、前記新しいハプティックアクチュエータドライブ信号は前記新しいハプティックアクチュエータドライブ値に基づく、適用するステップと、をさらに含む、
    請求項11に記載のコンピュータベースの方法。
JP2017128921A 2016-07-01 2017-06-30 クラウド接続ハプティックプラットフォーム Pending JP2018005917A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/200,476 2016-07-01
US15/200,476 US20180004291A1 (en) 2016-07-01 2016-07-01 Cloud Connected Haptic Platform

Publications (1)

Publication Number Publication Date
JP2018005917A true JP2018005917A (ja) 2018-01-11

Family

ID=59227521

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017128921A Pending JP2018005917A (ja) 2016-07-01 2017-06-30 クラウド接続ハプティックプラットフォーム

Country Status (5)

Country Link
US (1) US20180004291A1 (ja)
EP (1) EP3264230A1 (ja)
JP (1) JP2018005917A (ja)
KR (1) KR20180004006A (ja)
CN (1) CN107562183A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020036315A (ja) * 2018-08-30 2020-03-05 イマージョン コーポレーションImmersion Corporation 触覚効果をストリーミングするためのシステム、装置、および方法

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11048329B1 (en) 2017-07-27 2021-06-29 Emerge Now Inc. Mid-air ultrasonic haptic interface for immersive computing environments
CN109656841B (zh) * 2018-11-16 2020-08-04 武汉精立电子技术有限公司 基于软件模拟i2c和硬件i2c的混合控制方法及装置
WO2020167430A2 (en) * 2019-01-24 2020-08-20 General Vibration Corporation Aerodynamic eccentric rotating mass attachment for vibration motor
CN112121411A (zh) * 2020-09-18 2020-12-25 腾讯科技(深圳)有限公司 震动控制方法、装置、电子设备和计算机可读存储介质
US20220305379A1 (en) * 2021-03-24 2022-09-29 D-Box Technologies Inc. Motion track generation for motion platform

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6161126A (en) * 1995-12-13 2000-12-12 Immersion Corporation Implementing force feedback over the World Wide Web and other computer networks
JP2004139397A (ja) * 2002-10-18 2004-05-13 Seiko Epson Corp ドライバプログラム、保証期間管理装置およびその管理方法
US20080186152A1 (en) * 2007-02-02 2008-08-07 Electronics & Telecommunications Research Institute Haptic experience service method and system
US20150057493A1 (en) * 2013-08-20 2015-02-26 Ralph Alan HARRIS, JR. Systems and methods for multimedia tactile augmentation
JP2015095264A (ja) * 2013-11-14 2015-05-18 イマージョン コーポレーションImmersion Corporation ハプティックトリガ制御システム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7982711B2 (en) * 2003-12-19 2011-07-19 Immersion Corporation Haptic profiling system and method
US10120446B2 (en) * 2010-11-19 2018-11-06 Apple Inc. Haptic input device
US9213408B2 (en) * 2013-10-08 2015-12-15 Immersion Corporation Generating haptic effects while minimizing cascading
US9588588B2 (en) * 2014-09-22 2017-03-07 Disney Enterprises, Inc. Customized haptic effects

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6161126A (en) * 1995-12-13 2000-12-12 Immersion Corporation Implementing force feedback over the World Wide Web and other computer networks
JP2004139397A (ja) * 2002-10-18 2004-05-13 Seiko Epson Corp ドライバプログラム、保証期間管理装置およびその管理方法
US20080186152A1 (en) * 2007-02-02 2008-08-07 Electronics & Telecommunications Research Institute Haptic experience service method and system
US20150057493A1 (en) * 2013-08-20 2015-02-26 Ralph Alan HARRIS, JR. Systems and methods for multimedia tactile augmentation
JP2015095264A (ja) * 2013-11-14 2015-05-18 イマージョン コーポレーションImmersion Corporation ハプティックトリガ制御システム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020036315A (ja) * 2018-08-30 2020-03-05 イマージョン コーポレーションImmersion Corporation 触覚効果をストリーミングするためのシステム、装置、および方法

Also Published As

Publication number Publication date
US20180004291A1 (en) 2018-01-04
CN107562183A (zh) 2018-01-09
KR20180004006A (ko) 2018-01-10
EP3264230A1 (en) 2018-01-03

Similar Documents

Publication Publication Date Title
JP2018005917A (ja) クラウド接続ハプティックプラットフォーム
JP6985339B2 (ja) シーンベースの振動フィードバック方法および携帯端末
RU2461865C2 (ru) Система тактильной обратной связи с сохраненными эффектами
US8649826B2 (en) Mobile device and control method thereof
JP5668076B2 (ja) 電子デバイスにおける触覚帯域を増加するためのシステム及び方法
WO2017080506A1 (zh) 终端震动的控制方法、装置及终端
JP2018136969A5 (ja)
CN103513767A (zh) 触觉反馈控制系统
WO2015100933A1 (zh) 一种实现多操作系统的数据处理方法及终端设备
CN103914320B (zh) 一种显示方法和电子设备
CN107077233A (zh) 控制对触觉输出设备的功率分配
KR101871876B1 (ko) 채팅 정보 전송 방법 및 장치, 및 채팅 정보 푸시 방법 및 서버
US20190272037A1 (en) Distributed Control Architecture for Haptic Devices
JP2020025453A (ja) モータ駆動方法、端末装置及びコンピュータ読み取り可能な記録媒体
US20200175827A1 (en) Systems and Methods for Controlling Actuator Drive Signals for Improving Transient Response Characteristics
CN104915125A (zh) 移动设备的控制方法、控制系统及移动设备
WO2021168900A1 (zh) 动态触觉振动效果的实现方法、装置和存储介质
JP6546088B2 (ja) 物理オブジェクトと通信デバイスとの間の許可された通信を確立するための方法
CN111324216A (zh) 云端应用的字符输入方法、装置及系统
EP3890376A1 (en) Managing connections between a user device and peripheral devices
WO2022110268A1 (zh) 响应振动事件的方法、装置、电子设备和存储介质
CN114586000A (zh) 提供以用户为中心的应用
CN112083827A (zh) 触控组件控制方法、装置、触控组件以及终端
CA2802396A1 (en) Systems and methods for managing emulation sessions
KR100907411B1 (ko) 다중 접촉 입력 장치를 활용한 촉감 출력 시스템 및 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200608

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210720

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210906

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20220404