(57)【要約】      （修正有）【課題】触覚効果を生成することができ、二次元追跡及び三次元追跡の両方に使用可能な周辺機器を提供する。【解決手段】周辺機器１０２は、実空間における周辺機器の物理的位置を検出するために使用可能な一つ以上のセンサ１０６ａ、１０６ｂを含んでいる。周辺機器は、周辺機器１０２が実空間内の表面上と表面から離れたどちらに配置されているのかをセンサを使用して決定する。周辺機器が表面上に配置されているという決定に応じて、周辺機器は、表面に沿った周辺機器の二次元の動きに基づいた第１の組の触覚効果を提供するように構成された第１の触覚出力モードを起動する。周辺機器が表面から離れて配置されているという決定に応じて、周辺機器は、実空間における周辺機器の三次元の動きに基づいた第２の組の触覚効果の組を提供するように構成された第２の触覚出力モードを起動する。【選択図】図１Ａ
2019109889.tif 000002
【特許請求の範囲】
【請求項１】
周辺機器であって、
プロセッサと、
前記プロセッサによって実行可能であって、前記プロセッサに、
実空間における前記周辺機器の物理的位置を検出するために使用可能な一つ以上のセンサから一つ以上のセンサ信号を受信し、
前記一つ以上のセンサ信号に基づいて前記周辺機器が実空間内の表面上又は前記表面から離れたどちらに配置されているかを決定し、
前記周辺機器が前記表面上に配置されているという決定に応じて、前記表面に沿った前記周辺機器の二次元の動きに基づいて第１の組の触覚効果を提供するように構成された第１の触覚出力モードを起動し、
前記周辺機器が前記表面から離れて配置されているという決定に応じて、実空間における前記周辺機器の三次元の動きに基づいて第２の組の触覚効果を提供するように構成された第２の触覚出力モードを起動する
ように動作させるプログラムコードを含むメモリデバイスと
を含む周辺機器。
【請求項２】
前記メモリデバイスは、前記プロセッサによって実行可能であって、前記プロセッサに、
前記周辺機器が前記表面から物理的に離れて配置されているという決定に応じて、前記一つ以上のセンサ信号に基づいてインサイドアウト追跡技術を適用することによって実空間における前記周辺機器の三次元位置を決定し、
（ｉ）起動されている前記第２の触覚出力モード及び（ｉｉ）実空間における前記周辺機器の前記三次元位置に基づいて触覚効果を決定し、
触覚出力デバイスに前記触覚効果を出力させる
ように動作させるプログラムコードをさらに含む請求項１に記載の周辺機器。
【請求項３】
前記メモリデバイスは、前記プロセッサによって実行可能であって、前記プロセッサに、
前記周辺機器の外部にある光センサからセンサ信号を受信し、
（ｉ）前記一つ以上のセンサからの一つ以上のセンサ信号を使用して前記インサイドアウト追跡技術を適用し、及び（ｉｉ）前記周辺機器の外部にある前記光センサからのセンサ信号を使用することによって実空間における前記周辺機器の前記三次元位置を決定する
ように動作させるプログラムコードをさらに含む請求項２に記載の周辺機器。
【請求項４】
前記メモリデバイスは、前記プロセッサによって実行可能であって、前記プロセッサに、
前記周辺機器が前記表面上に物理的に配置されているという決定に応じて、前記一つ以上のセンサ信号に基づいて前記表面上の前記周辺機器の二次元位置を決定し、
（ｉ）起動されている前記第１の触覚出力モード及び（ｉｉ）前記表面上の前記周辺機器の前記二次元位置に基づいて触覚効果を決定し、
触覚出力デバイスに前記触覚効果を出力させる
ように動作させるプログラムコードをさらに含む請求項１に記載の周辺機器。
【請求項５】
前記一つ以上のセンサは、第１の光センサと、前記第１の光センサとは別の第２の光センサとを含み、前記メモリデバイスは、前記プロセッサによって実行可能であって、前記プロセッサに、
前記周辺機器が前記表面上に配置されているという決定に応じて、前記第２の光センサを使用して生成された三次元入力ではなく、前記第１の光センサを使用して生成された二次元入力がリモートコンピューティングデバイスに供給される第１の追跡モードを起動し、
前記周辺機器が前記表面から離れて配置されているという決定に応じて、前記第１の光センサを使用して生成された二次元入力ではなく、前記第２の光センサを使用して生成された三次元入力が前記リモートコンピューティングデバイスに供給される第２の追跡モードを起動する
ように動作させるプログラムコードをさらに含む請求項１に記載の周辺機器。
【請求項６】
前記メモリデバイスは、前記プロセッサによって実行可能であって、前記プロセッサに、
前記周辺機器が手以外の身体部分に物理的に結合するように構成された運搬デバイスに物理的に取り付けられているかどうかを決定し、
前記周辺機器が前記運搬デバイスに物理的に結合されているという決定に応じて、ハンズフリー使用中に触覚効果を表現するように構成された第３の触覚出力モードを起動する
ように動作させるプログラムコードをさらに含む請求項１に記載の周辺機器。
【請求項７】
前記メモリデバイスは、前記プロセッサによって実行可能であって、前記プロセッサに、
接触センサからのセンサ信号に基づいて身体部分が前記周辺機器に接触しているかどうかを決定し、
前記身体部分が周辺機器に接触していないという決定に応じて触覚効果を無効にする
ように動作させるプログラムコードをさらに含む請求項１に記載の周辺機器。
【請求項８】
前記周辺機器から離れた物体によって実行される実空間を通じてジェスチャを検出するために使用可能なセンサをさらに含み、前記メモリデバイスは、前記プロセッサによって実行可能であって、前記プロセッサに、
前記センサを使用して実空間を通じてジェスチャを決定し、
前記ジェスチャに基づいて、前記ジェスチャに関連した命令をリモートコンピューティングデバイスに送信する
ように動作させるプログラムコードをさらに含む請求項１に記載の周辺機器。
【請求項９】
実空間における物理的物体の物理的特性を決定するために使用可能なセンサをさらに含み、前記メモリデバイスは、前記プロセッサによって実行可能であって、前記プロセッサに、
前記センサを使用して前記物理的物体の物理的特性を決定し、
前記物理的物体の物理的特性を使用して前記物理的物体の三次元仮想表現を仮想環境内に生成させる
ように動作させるプログラムコードをさらに含む請求項１に記載の周辺機器。
【請求項１０】
前記メモリデバイスは、前記プロセッサによって実行可能であって、前記プロセッサに、
前記周辺機器が前記表面上に配置されたときに仮想物体の二次元バージョンを表示させ、
前記周辺機器が前記から離れて配置されたときに前記仮想物体の三次元バージョンを表示させる
ように動作させるプログラムコードをさらに含む請求項１に記載の周辺機器。
【請求項１１】
非一時的コンピュータ可読媒体であって、プロセッサによって実行可能であって、前記プロセッサに、
実空間における前記周辺機器の物理的位置を検出するために使用可能な一つ以上のセンサから一つ以上のセンサ信号を受信し、
前記一つ以上のセンサ信号に基づいて前記周辺機器が実空間において表面上又は前記表面から離れたどちらに物理的に配置されているかを決定し、
前記周辺機器が前記表面上に物理的に配置されているという決定に応じて、前記表面に沿った前記周辺機器の二次元の動きに基づいて第１の組の触覚効果を提供するように構成された第１の触覚出力モードを起動し、
前記周辺機器が表面から離れて配置されているという決定に応じて、実空間における前記周辺機器の三次元の移動に基づいて第２の組の触覚効果を提供するように構成された第２の触覚出力モードを起動する
ように動作させるプログラムコードをさらに含むプログラムコードを含む非一時的コンピュータ可読媒体。
【請求項１２】
非一時的コンピュータ可読媒体であって、プロセッサによって実行可能であって、前記プロセッサに、
前記周辺機器が実空間の前記表面から物理的に離れて配置されているという決定に応じて、前記一つ以上のセンサ信号に基づいてインサイドアウト追跡技術を適用することによって実空間における前記周辺機器の三次元位置を決定し、
（ｉ）起動されている前記第２の触覚出力モード及び（ｉｉ）実空間における前記周辺機器の三次元位置に基づいて触覚効果を決定し、
触覚出力デバイスに前記触覚効果を出力させる
ように動作させるプログラムコードをさらに請求項１１に記載の非一時的コンピュータ可読媒体。
【請求項１３】
前記プロセッサによって実行可能であって、前記プロセッサに、
前記周辺機器が前記表面上に物理的に配置されているという決定に応じて、前記一つ以上のセンサ信号に基づいて前記表面上の前記周辺機器の二次元位置を決定し、
（ｉ）起動されている前記第１の触覚出力モード及び（ｉｉ）前記表面上の前記周辺機器の二次元位置に基づいて触覚効果を決定し、
触覚出力デバイスに前記触覚効果を出力させる
ように動作させるプログラムコードをさらに含む請求項１１に記載の非一時的コンピュータ可読媒体。
【請求項１４】
前記一つ以上のセンサは、第１の光センサと、前記第１の光センサとは別の第２の光センサとを含み、前記プロセッサによって実行可能であって、前記プロセッサに、
前記周辺機器が前記表面上に物理的に配置されているという決定に応じて、第２の光センサを使用して生成された三次元入力ではなく前記第１の光センサを使用して生成された二次元入力がコンピューティングデバイスに供給される第１の追跡モードを起動し、
前記周辺機器が実空間において前記表面から物理的に離れて配置されているという決定に応じて、前記第１の光センサを使用して決定された二次元入力ではなく前記第２の光センサを使用して生成された三次元入力がコンピューティングデバイスに供給される第２の追跡モードを起動する
ように動作させるプログラムコードをさらに含む請求項１１に記載の非一時的コンピュータ可読媒体。
【請求項１５】
前記プロセッサによって実行可能であって、前記プロセッサに、
前記周辺機器を手以外の身体部分に物理的に結合するように構成された運搬デバイスに前記周辺機器が物理的に取り付けられているかどうかを決定し、
前記周辺機器が前記運搬デバイスに物理的に結合されているという決定に応じて、ハンズフリー使用中に触覚効果を表現するように構成された第３の触覚出力モードを起動する
ように動作させるプログラムコードをさらに含む請求項１１に記載の非一時的コンピュータ可読媒体。
【請求項１６】
前記プロセッサによって実行可能であって、前記プロセッサに、
接触センサからのセンサ信号に基づいて身体部分が前記周辺機器に接触しているかどうかを決定し、
前記身体部分が前記周辺機器に接触していないという決定に応じて触覚効果を無効にする
ように動作させるプログラムコードをさらに含む請求項１１に記載の非一時的コンピュータ可読媒体。
【請求項１７】
周辺機器のプロセッサによって、実空間における周辺機器の物理的位置を検出するために使用可能な一つ以上のセンサからの第１の組のセンサ信号を受信するステップと、
前記プロセッサによって、前記第１の組のセンサ信号に基づいて前記周辺機器が表面上に物理的に配置されていると決定し、
前記周辺機器が前記表面上に物理的に配置されているという決定に応じて、前記プロセッサによって、前記表面に沿った前記周辺機器の二次元の動きに基づいて第１の組の触覚効果を提供するように構成された第１の触覚出力モードを起動し、
前記プロセッサによって、前記一つ以上のセンサから第２の組のセンサ信号を受信し、
前記プロセッサによって、前記第２の組のセンサ信号に基づいて前記周辺機器が実空間において前記表面から物理的に離れて配置されていると決定し、
前記周辺機器が前記表面から離れて配置されているという決定に応じて、前記プロセッサによって、実空間における前記周辺機器の三次元の動きに基づいて第２の触覚効果の組を提供するように構成された第２の触覚出力モードを起動すること
を含む方法。
【請求項１８】
前記第２の組のセンサ信号に基づいてインサイドアウト追跡技術を適用することによって実空間における前記周辺機器の三次元位置を決定し、
（ｉ）起動されている第２の触覚出力モード及び（ｉｉ）実空間における前記周辺機器の三次元位置に基づいて触覚効果を決定し、
触覚出力デバイスに前記触覚効果を出力させること
をさらに含む請求項１７に記載の方法。
【請求項１９】
前記一つ以上のセンサは、第１の光センサと、前記第１の光センサとは別の第２の光センサとを含み、
前記周辺機器が前記表面上に物理的に配置されているという決定に応じて、前記第２の光センサを使用して生成された三次元入力ではなく前記第１の光センサを使用して生成された二次元入力がコンピューティングデバイスに供給される第１の追跡モードを起動し、
前記周辺機器が実空間の前記表面から物理的に外れて配置されているという決定に応じて、前記第１の光センサを使用して生成された二次元入力ではなく前記第２の光センサを使用して生成された三次元入力がコンピューティングデバイスに供給される第２の追跡モードを起動する
ことをさらに含む請求項１７に記載の方法。
【請求項２０】
前記周辺機器が手以外の身体部分に物理的に結合するように構成された運搬デバイスに前記周辺機器が物理的に取り付けられているかどうかを決定し、
前記周辺機器が前記運搬デバイスに物理的に結合されているという決定に応じて、ハンズフリー使用中に触覚効果を表現するように構成された第３の触覚出力モードを起動する
ことをさらに含む請求項１７に記載の方法。
【請求項２１】
接触センサからのセンサ信号に基づいて、身体部分が前記周辺機器に接触しているかどうかを決定し、
前記身体部分が前記周辺機器に接触していないという決定に応じて、触覚効果が無効にされる第３の触覚出力モードを起動する
ことをさらに含む請求項１７に記載の方法。
【請求項２２】
前記周辺機器が前記表面上に物理的に配置されているという決定に応じて、仮想物体の二次元バージョンを表示し、
前記周辺機器が前記表面から物理的に離れて配置されているという決定に応じて、前記仮想物体の三次元バージョンを表示すること
をさらに含む請求項１７に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、一般に、ユーザインターフェースデバイスの分野に関する。詳しくは、限定としてではなく、この開示は、二次元及び三次元追跡に使用可能な触覚有効周辺機器に関する。
【背景技術】
【０００２】
周辺機器は、コンピューティングデバイスに接続し、それと協働してコンピューティングデバイスへの入力の供給、コンピューティングデバイスからの出力の受信、又はその両方を行う補助デバイスである。周辺機器は、それらが通信するコンピューティングデバイスとは別であり、コンピューティングデバイスに追加の機能を提供する。例えば、入力周辺機器は、追加の入力機能をコンピューティングデバイスに提供することができる。入力周辺機器の例は、マウス、キーボード、ゲームコントローラ、スタイラス、又はワンドを含むことができる。出力周辺機器は、追加の出力機能をコンピューティングデバイスに提供することができる。出力周辺機器の例は、ディスプレイ、プリンタ、又はプロジェクタを含むことができる。いくつかの周辺機器は、タッチスクリーン、タブレット、電子書籍リーダ、ヘッドセット（例えば、仮想現実ヘッドセット又は拡張現実ヘッドセット）、又はスマートデバイス（例えば、スマートフォン又はスマートウォッチ）のような入出力周辺機器の両方であることができる。
【０００３】
入力周辺機器は一般に、単一タイプの入力をコンピューティングデバイスに供給するように設計されている。例えば、マウスは、二次元入力（例えば、座標平面内のＸ座標及びＹ座標）のみをコンピューティングデバイスに供給することができる。そして、ゲームコントローラは、三次元入力（例えば、Ｘ、Ｙ、及びＺ座標）のみをコンピューティングデバイスに供給することができる。これは、ユーザが少なくとも２つの異なる周辺機器をコンピューティングデバイスに接続し、異なる種類の入力をコンピューティングデバイスに供給するために異なる周辺機器間を手動で切り替えることを必要とし、これは時間がかかりかつ困難であり得る。また、多くの周辺機器には触覚フィードバック機能を欠いている。このことによって、周辺機器を使用したコンピューティングデバイスとのやり取りがより困難で直感的になりにくくなり得る。
【発明の概要】
【０００４】
本開示の様々な例は、触覚効果を生成することができ、二次元追跡及び三次元追跡の両方に使用可能な周辺機器を含む。
【０００５】
一例では、本開示の周辺機器は、実空間における周辺機器の物理的位置を検出し、実空間における周辺機器の物理的位置に関連する一つ以上のセンサ信号を送信するために使用可能な一つ以上のセンサを含んでいる。周辺機器はまた、一つ以上のセンサに結合されたプロセッサを含み得る。周辺機器はまた、プロセッサに一つ以上の動作を実行させるためにプロセッサによって実行可能であるプログラムコードを有するメモリデバイスを含むことができる。動作は、一つ以上のセンサ信号を受信することを含み得る。動作は、一つ以上のセンサ信号に基づいて、周辺機器が実空間内の表面上にあるのか表面から離れているのかを決定することを含むことができる。動作は、周辺機器が表面上に配置されているという決定に応じて、表面に沿った周辺機器の二次元の動きに基づいて第１の組の触覚効果を提供するように構成された第１の触覚出力モードを起動することを含むことができる。動作は、周辺機器が表面から離れて配置されているという決定に応じて、実空間における周辺機器の三次元の移動に基づいて第２の組の触覚効果を提供するように構成された第２の触覚出力モードを起動することを含むことができる。
【０００６】
別の例では、本開示の方法は、実空間内の周辺機器の物理的位置を検出するために使用可能な一つ以上のセンサから第１の組のセンサ信号を受信することを含んでいる。方法は、第１の組のセンサ信号に基づいて周辺機器が表面上に物理的に配置されているかどうかを決定することを含むことができる。この方法は、周辺機器が表面上に物理的に配置されているという決定に応じて、表面に沿った周辺機器の二次元の動きに基づいて第１の組の触覚効果を提供するように構成された第１の触覚出力モードを起動することを含むことができる。この方法は、一つ以上のセンサから第２の組のセンサ信号を受信することを含むことができる。この方法は、第２の組のセンサ信号に基づいて、周辺機器が実空間内の表面から物理的に離れて配置されているという決定を含むことができる。この方法は、周辺機器が表面から離れて配置されているという決定に応じて、実空間における周辺機器の三次元の動きに基づいて第２の組の触覚効果を提供するように構成された第２の触覚出力モードを起動することを含むことができる。この方法のステップのいくつか又はすべては（例えば周辺機器の）プロセッサによって実施することができる。
【０００７】
さらに別の例では、本開示の非一時的コンピュータ可読媒体は、上記の方法を実施するためのプログラムコードを含むことができる。
【０００８】
これらの例示的な実施例は、本主題の限定を限定又は定義するためではなく、その理解を助けるために例を提供するために言及されている。例示的な例は、詳細な説明において論じられ、そしてさらなる説明がそこに提供される。様々な例によって提供される利点は、本明細書を調べることによって、及び／又は特許請求の範囲の主題の一つ以上の例を実践することによってさらに理解されてもよい。
【図面の簡単な説明】
【０００９】
完全で可能な開示は、本明細書の残りの部分においてより詳細に説明される。本明細書は以下の添付の図面を参照する。
【００１０】
【図１Ａ】本開示のいくつかの態様による周辺機器の一例である。
【００１１】
【図１Ｂ】本開示のいくつかの態様に従って、図１Ａの表面に配置された図１Ａの周辺機器の一例である。
【００１２】
【図２】本開示のいくつかの態様による取り外し可能な付属品を有する周辺機器を含むシステムの一例のブロック図である。
【００１３】
【図３】本開示のいくつかの態様による取り外し可能な付属品を有する周辺機器の一例である。
【００１４】
【図４】本開示のいくつかの態様による運搬デバイスを備えた周辺機器の一例である。
【００１５】
【図５】本開示のいくつかの態様による運搬デバイスを備えた周辺機器の別の例である。
【００１６】
【図６】本開示のいくつかの態様を実施するためのプロセスの一例のフローチャートである。
【００１７】
【図７】本開示のいくつかの態様によるジェスチャを検出する周辺機器の一例である。
【００１８】
【図８】本開示のいくつかの態様による物体を検出する周辺機器の一例である。
【００１９】
【図９】本開示のいくつかの態様を実施するためのプロセスの一例のフローチャートである。
【発明を実施するための形態】
【００２０】
ここで、様々な代替の例示的な実施例及び添付の図面を詳細に参照する。各例は、限定としてではなく、説明のために提供されている。当業者には明らかなように、修正及び変形が可能である。例えば、一例の一部として図示又は説明されている特徴は、さらに別の例を生み出すために別の例において使用され得る。したがって、本開示は添付の特許請求の範囲及びそれらの均等物の範囲内に入るような修正及び変形を含むことを意図している。
【００２１】
（触覚有効周辺機器の実例）
本開示の一つの例示的な例は、デスクトップコンピュータなどのコンピューティングデバイスに接続された周辺デバイス（又は「周辺機器」）を含んでいる。周辺機器は、例えば机の表面に置かれているコンピュータマウスとすることができる。ユーザは、周辺機器を表面に沿って移動させて、二次元（２Ｄ）入力をコンピュータに供給することができる。例えば、ユーザはコンピュータ支援設計（ＣＡＤ）ソフトウェアを使用して（例えば車両の）モデルを設計してもよい。ユーザは、モデルを操作するためにＣＡＤソフトウェアによって出力されたボタン、アイコン、メニュー、ウィンドウ、又は他の物体と相互作用するために表面に沿って周辺機器をスライドさせることができる。周辺機器によって供給される２Ｄ入力は、ユーザがＣＡＤソフトウェアを使用して実行される動作を正確に制御することを可能にすることができる。例示的な例では、ユーザはまた、三次元（３Ｄ）環境により適しているＣＡＤソフトウェアを使用して他の操作を実行したいと思うかもしれない。そのため、ユーザは３Ｄ環境でモデルを表示するために拡張現実ヘッドセットを装着してもよい。その後、ユーザは周辺機器を表面から持ち上げ、机のそばに立ち、コンピュータに３Ｄ入力を供給するために周辺機器と一緒に実空間を動くことができる。これにより、ユーザは、２Ｄ入力のみを使用するよりも容易にモデルを回転、移動、又は他の方法で操作することを可能にしてもよい。例えば、ユーザは、モデルの表面形状を操作するためにモデル上の制御点を選択し調整することによってモデルと相互作用することができる。満足したら、ユーザは机に座って周辺機器を机の表面に戻し、２Ｄ入力を使用して作業を続けることができる。
【００２２】
上記の例では、周辺機器は、２Ｄ入力と３Ｄ入力の両方をコンピューティングデバイスに供給することができる。周辺機器は、実空間における周辺機器の物理的位置を検出するための一つ以上のセンサを含むことができる。周辺機器は、センサを使用して、（実空間において）周辺機器が表面上に配置されているのか、表面から離れて配置されているのかを判断することができる。周辺機器が表面上に位置すると判断した場合、周辺機器は、光センサなどの第１のセンサを使用して２Ｄ入力が生成され、コンピューティングデバイスに提供される第１の追跡モードを起動することができる。周辺機器が表面から離れて配置されていると判断した場合、周辺機器は、カメラなどの第２のセンサを使用して３Ｄ入力が生成され、コンピューティングデバイスに提供される第２の追跡モードを起動することができる。これは、周辺機器が、その周辺機器が表面上に配置されているか又は表面から離れて配置されているかを検出し、それに応じて追跡モードを切り替えることを可能にすることができる。いくつかの例では、異なる追跡モードのために使用される異なる種類のセンサ及び／又はアルゴリズムは、第２の追跡モードよりも堅牢かつ正確である第１の追跡モードをもたらしてもよい。
【００２３】
いくつかの例では、周辺機器は、インサイドアウト追跡を使用して３Ｄ入力を生成することができる。インサイドアウト追跡は、デバイス上に配置され、デバイスの外側を向いているセンサを使用して、デバイスがそれ自体の位置が外部環境に対してどのように変化しているかを判断することを含み得る。精度を向上させるために、外部環境内の様々な静止位置に配置されたマーカ（例えば、赤外線マーカ）も存在し得る。例えば、カメラを周辺機器に配置し、周辺機器から外側に向けることができる。周辺機器は、外部環境に対するその位置を決定するためにカメラを使用してインサイドアウト追跡を実施することができる。インサイドアウト追跡は、デバイスを追跡しているセンサがデバイスの外部に配置され、デバイスに面しているアウトサイドイン追跡とは対照的である。アウトサイドイン追跡の例は、部屋を通る周辺機器の動きの画像をキャプチャするために、机上又は室内のスタンド上など、周辺機器の外部に配置されたカメラを含むことができる。
【００２４】
インサイドアウト追跡は、同時位置確認及びマッピング（ＳＬＡＭ）アルゴリズムを介するなど、任意の数及び組み合わせのアルゴリズムを使用して実施することができる。ＳＬＡＭは、未知の外部環境の地図を作成又は更新しながら、その環境内の物体の位置を追跡することもできる。一例では、周辺機器は、実空間におけるその３Ｄ位置を決定するためにＳＬＡＭアルゴリズムを実装する。周辺機器は次に、その３Ｄ位置をコンピューティングデバイスへの入力として供給することができる。
【００２５】
いくつかの例では、周辺機器は触覚フィードバックも生成することができる。周辺機器は、周辺機器が表面上に位置するか表面から離れて配置されたかに基づいて、異なる触覚フィードバックを生成してもよい。例えば、周辺機器が表面上に配置されていることを周辺機器が検出した場合、周辺機器は、表面に沿った周辺機器の２Ｄの動きに基づいて第１の触覚効果の組を生成するように構成された第１の触覚出力モードを起動し得る。周辺機器が表面から離れて配置されていることを周辺機器が検出した場合、周辺機器は、実空間における周辺機器の３Ｄ移動に基づいて第２の組の触覚効果を生成するように構成された第２の触覚出力モードを起動し得る。第２の組の触覚効果は、第１の組の触覚効果とは種類、振幅、波形、持続時間、及び／又は周波数が異なり得る。上記で論じた方法で第１及び第２の触覚出力モードを切り替えることによって、周辺機器が表面上に位置するか表面から離れて配置されたかに応じて触覚フィードバックを適切に調整することができる。
【００２６】
これらの例示的な実施例は、本明細書で論じられる一般的な主題を読者に紹介するために与えられており、開示された概念の範囲を限定することを意図するものではない。以下の節は、図面を参照して様々な追加の特徴及び実施例を説明し、図面において類似の番号は類似の要素を示し、方向を示す説明は例示的な例を説明するために用いられるが、例示的例のように、本開示を限定するために用いられるべきではない。
【００２７】
（触覚有効周辺機器のための例示的システム）
図１Ａは、本開示のいくつかの態様による周辺機器１０２の一例である。この例では、周辺機器１０２は、ユーザの手で握られて操作されるように構成されたハンドヘルドデバイスである。周辺機器１０２は、コンピューティングデバイスに入力を供給する。
【００２８】
この例では、周辺機器１０２は表面１０４上に配置されている。表面１０４の例はテーブルトップ、デスクトップ、マウスパッド、木片、金属片、ゴム片、又はプラスチック片、又はこれらの任意の組み合わせを含むことができる。表面１０４は湾曲形状又は実質的に平面形状を有することができ、それはそれに沿って周辺部１０２がスライドすることができる比較的平坦な表面を提供することができる。
【００２９】
周辺機器１０２は、入力デバイス１１０などの一つ以上の入力デバイスを含むことができる。入力デバイス１１０の例は、ボタン、ジョイスティック、タッチスクリーン、タッチパッド、スイッチ、又はこれらの任意の組み合わせを含むことができる。入力デバイスは、ユーザ入力を検出し、入力信号をコンピューティングデバイスの組み合わせに配置することができる。
【００３０】
周辺機器１０２は、センサ１０６ａ〜ｂなどの一つ以上のセンサを含むことができる。図１には２つのセンサ１０６ａ〜ｂが示されているが、これに限定されない。一例として図１Ａに示すように、周辺機器１０２は、一つ又は３つのセンサなど、より多くの又はより少ないセンサを含み得る。センサは、実空間における周辺機器１０２の物理的位置を検出することができる。そして、センサは同じ種類でも異なる種類でもよい。例えば、センサ１０６ａは、表面１０４に沿って２Ｄ追跡を実施するための光センサ又はボールなどの２Ｄセンサとすることができる。センサ１０６ｂは、カメラ、加速度計、ジャイロスコープ、距離検出器、深度センサ、全地球測位システム（ＧＰＳ）、及び／又は実空間で３Ｄ追跡を実施するための磁力計などの３Ｄセンサとすることができる。
【００３１】
周辺機器１０２は、センサ１０６ａ〜ｂを使用して、周辺機器１０２が表面１０４上に配置されているか表面１０４から離れて配置されているかを判断することができる。例えば、周辺機器１０２は、周辺機器１０２と表面１０４との間の距離を決定するために、光センサからの光信号を分析することができる。そして、周辺機器１０２は、距離が所定の閾値を超えているかどうかを判定することができる。そうでないと、周辺機器１０２は、それが表面１０４上に配置されていると判断し、第１の追跡モードを起動することができる。そうであれば、周辺機器１０２は、それが表面１０４から「離れて」配置されていると判断し、第２の追跡モードを起動することができる。周辺機器１０２は、図１Ｂに示されるように、周辺機器１０２が表面に接触していないときに、表面１０４から「離れて」配置することができる。
【００３２】
周辺機器１０２はまた、実空間における周辺機器１０２の２Ｄ位置及び／又は３Ｄ位置を決定するためにセンサ１０６ａ〜ｂを使用することができる。例えば、周辺機器１０２が第１の追跡モードにあるとき、周辺機器１０２は、表面１０４上の周辺機器１０２の２Ｄ位置を決定するためにボール又は光センサを使用することができる。周辺機器１０２が第２の追跡モードにあるとき、周辺機器１０２は、実空間における周辺機器１０２の３Ｄ位置を決定するために一つ以上のカメラを使用することができる。
【００３３】
周辺機器１０２は、触覚出力デバイス１０８ａ〜ｂなどの一つ以上の触覚出力デバイスを含むことができる。触覚出力デバイス１０８ａ〜ｂは、一つ以上の触覚効果をユーザに提供することができる。触覚出力デバイス１０８ａ〜ｂは、振動、静電力、変形、温度変化、及び／又は電気刺激などの任意の数及び組み合わせの刺激を使用して任意の数及び任意の組み合わせの触覚効果を生成することができる。
【００３４】
周辺機器１０２は、触覚出力デバイス１０８ａ〜ｂを使用して、一つ以上のイベントに応じて触覚効果を出力することができる。イベントは、コンピューティングデバイス上又は周辺機器１０２上で発生する可能性がある。イベントは、任意の相互作用、アクション、衝突、又は潜在的に関連する触覚効果を有する可能性がある他のイベントである。イベントの例には、ユーザ入力（例えば、実際の又は仮想のボタン、ジョイスティック、又はタッチ面との相互作用、デバイスの傾斜又は方向付け、又はデバイスの曲げ、折り畳み、ねじり、引き伸ばし、又は屈曲）、システムの状態（例えば、ローバッテリ、ローメモリ、システム着信通知を受信したことに基づいて生成された通知などのシステム通知）、データ送信、データ受信、又はプログラムイベント（例えば、爆発、衝突、ゲーム物体間の相互作用、又は新しいレベルへの前進などのゲームイベント）が含まれ得る。特定の例として、コンピューティングデバイスは、ビデオゲーム内の仮想キャラクタが撃たれたことを判定し、それに応じて触覚信号を周辺機器１０２に送信することができる。次に、周辺機器１０２は触覚信号に応じて触覚効果を生成することができる。
【００３５】
いくつかの例では、周辺機器１０２は、周辺機器１０２が表面１０４上に配置されていることの検出に応じて第１の触覚出力モードを起動することができる。周辺機器１０２は、追加的又は代替的に、周辺機器１０２が表面１０４から離れて配置されていることの検出に応じて第２の触覚出力モードを起動することができる。周辺機器１０２は、どの触覚出力モードが起動されているかに応じて、異なる触覚効果を出力することができる。例えば、周辺機器１０２は、どの触覚出力モードが起動されているかに応じて触覚効果を生成するために異なる触覚出力デバイスを使用してもよい。特定の例として、周辺機器１０２が第１の触覚出力モードにあるとき、周辺機器１０２は第１の触覚出力デバイス１０８ａを使用して（例えば、振動などの第１の種類の刺激を使用して）第１の種類の触覚効果を生成することができる。そして、周辺機器１０２が第２の触覚出力モードにあるとき、周辺機器１０２は第２の触覚出力デバイス１０８ｂを使用して（例えば変形などの第２の種類の刺激を使用して）第２の種類の触覚効果を生成することができる。
【００３６】
いくつかの例では、周辺機器１０２は、どの触覚出力モードが起動されているかに応じて、出力する触覚効果を決定するために異なる触覚効果ライブラリ又はアルゴリズムを使用する。例えば、周辺機器１０２は、イベントが発生したことを示す通知をコンピューティングデバイスから受信することができる。周辺機器１０２が第１の触覚出力モードにある場合、周辺機器１０２は第１の触覚効果ライブラリを使用して、イベントに応じて出力する触覚効果を決定することができる。周辺機器１０２が第２の触覚出力モードにある場合、周辺機器１０２は第２の触覚効果ライブラリを使用して、イベントに応じて出力するための他の触覚効果を決定することができる。これにより、触覚効果を異なる触覚出力モードに合わせて調整することが可能になる。
【００３７】
いくつかの例では、周辺機器１０２は、どの触覚出力モードが起動されたかを示す情報をコンピューティングデバイスに送信することができる。コンピューティングデバイスは、この情報を使用して、（ｉ）周辺機器１０２を使用して触覚効果がいつ生成されるか、（ｉｉ）周辺機器１０２を使用してどの触覚効果が生成されるか、又は（ｉｉｉ）これらの両方を制御することができる。例えば、コンピューティングデバイスは、周辺機器１０２が第１の触覚出力モードにあるときには、第１のイベントの組に応じて周辺機器１０２に触覚効果を出力させるだけでよい。そして、コンピューティングデバイスは、周辺機器１０２が第２の触覚出力モードにあるときに、第２のイベントの組に応じて周辺機器１０２に触覚効果を出力させるだけでよい。これは、異なる触覚出力モードが触覚トリガとして異なる組のイベントを持つことを可能にすることができる。別の例として、コンピューティングデバイスは、どの触覚出力モードが起動されているかに応じて、周辺機器１０２によって出力されるべき触覚効果を決定するために、異なる触覚効果ライブラリ又はアルゴリズムを使用することができる。
【００３８】
図２は、本開示のいくつかの態様による周辺機器１０２を含むシステム２００の一例のブロック図である。この例では、周辺機器１０２は、バス２０６を介して他のハードウェアとインターフェースする一つ以上のプロセッサ２０２を含んでいる。他のハードウェアは、メモリデバイス２０４、ネットワークインターフェースデバイス２１０、入出力（Ｉ／Ｏ）インターフェース２１２、一つ以上のセンサ１０６、１つ以上の触覚出力デバイス１０８を含んでいる。これらの構成要素のそれぞれは、以下でより詳細に説明される。他の例は、図２に示されるよりも多い又は少ない構成要素を含むことができる。
【００３９】
メモリデバイス２０４は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭなどの任意の適切な有形（及び非一時的）コンピュータ可読媒体を含むことができ、周辺機器１０２の動作を構成するプログラム構成要素を具現化することができる。メモリデバイス２０４は、一つ以上のプロセッサ２０２に動作を実行させるために一つ以上のプロセッサ２０２によって実行可能なプログラムコードを含むことができる。
【００４０】
ネットワークインターフェースデバイス２１０は、ネットワーク接続を容易にするか、そうでなければ電子デバイス間の通信を容易にする任意の構成要素を含むことができる。いくつかの例では、ネットワークインターフェースデバイス２１０は、イーサネット（登録商標）、ＵＳＢ、又はＩＥＥＥ  １３９４インターフェースなどの有線インターフェースを含むことができる。追加的又は代替的に、ネットワークインターフェースデバイス２１０は、ＩＥＥＥ  ８０２．１１、ブルートゥース（登録商標）、近距離通信、無線周波数識別、又は無線インターフェースなどの無線インターフェースを含むことができる。無線インターフェースは、携帯電話網（例えば、ＣＤＭＡ、ＧＳＭ（登録商標）、ＵＭＴＳ、又は他のモバイル通信ネットワーク）にアクセスするためのものであり得る。
【００４１】
Ｉ／Ｏインターフェース２１２は、一つ以上のディスプレイ、タッチセンシティブ面、スピーカ、マイクロフォン、ボタン、ジョイスティック、及び／又はデータを入力又は出力するために使用される他のハードウェアなどのデバイスへの接続を容易にすることができる。
【００４２】
いくつかの例では、センサ１０６を使用して、実空間における周辺機器１０２の２Ｄ位置、実空間における周辺機器１０２の３Ｄ位置、又はその両方を検出することができる。そのようなセンサの例は、ボール、光センサ（例えば、赤外線センサ）、カメラ、深度センサ、距離センサ、超音波トランスデューサ、スピーカ、マイクロフォン、加速度計、ジャイロスコープ、傾斜計、ＧＰＳ、磁力計、又はこれらの任意の組み合わせを含み得る。センサ１０６は、追加的又は代替的に、抵抗センサ、容量センサ、圧力センサ、力センサ、バイオセンサ、又はこれらの任意の組み合わせなどの他の目的のための他の種類のセンサを含み得る。センサ１０６は、センサ信号をプロセッサ２０２に送信することができる。
【００４３】
触覚出力デバイス１０８は、様々な触覚効果を出力することができる。触覚効果の例としては、振動、知覚される摩擦係数の変化、模擬テクスチャ、温度変化、なでる感覚、電気触覚効果、表面変形（例えば、周辺機器１０２に関連する表面の変形）又はこれらの任意の組み合わせが挙げられ得る。周辺機器１０２は、一つ以上の触覚効果を生成するために、同じ又は異なる種類の複数の触覚出力デバイス１０８を順番に又は協調して作動させることができる。触覚出力デバイス１０８は、プロセッサ２０２又はコンピューティングデバイス２１４からの触覚信号に応じて触覚効果を生成することができる。
【００４４】
いくつかの例では、触覚出力デバイス１０８は、圧電材料、電気モータ、電磁アクチュエータ、ボイスコイル、形状記憶合金、電気活性ポリマー、ソレノイド、偏心回転質量モータ（ＥＲＭ）、又は線形共振アクチュエータ（ＬＲＡ）などの機械的振動成分を含んでいる。触覚出力デバイス１０８は、機械的振動成分を用いて振動を発生させることができる。いくつかの例では、触覚出力デバイス１０８は、超音波周波数（例えば、２０ｋＨｚ）で振動することができる超音波アクチュエータを含むことができる。触覚出力デバイス１０８は、例えば表面上の知覚される摩擦係数を減少させるために超音波アクチュエータを使用することができる。いくつかの例では、触覚出力デバイス１０８は静電アクチュエータを含むことができる。静電アクチュエータは、導電層と絶縁層とを有することができる。導電層に交流（ＡＣ）を印加することは、導電層と静電アクチュエータの近くの物体（例えば、身体の一部又はスタイラス）との間に容量結合を生じさせ、それによって触覚効果を生じさせることができる。静電アクチュエータを使用して生成された触覚効果の例は、模擬テクスチャ、模擬振動、なでる感覚、又は周辺機器１０２の表面上の摩擦係数の知覚される変化を含むことができる。
【００４５】
触覚出力デバイス１０８はまた、周辺機器１０２の表面に変形触覚効果と呼ぶことができる変形を生成することができる。変形触覚効果は、テクスチャ、表面を曲げる、折りたたむ、回転させる、ねじる、圧迫する、又は屈曲させる、又はこれらの任意の組み合わせを作り出すなどのために、表面の一部を上げ下げすることを含むことができる。いくつかの例では、触覚出力デバイス１０８は、スマートゲル又は形状記憶合金を使用して変形触覚効果を生成することができる。他の例では、触覚出力デバイス１０８はレオロジー流体を使用して変形触覚効果を生成することができる。さらに他の例では、触覚出力デバイス１０８は、回転アーム又はピストンなどの機械的変形デバイスを使用して変形触覚効果を生成することができる。いくつかの例では、機械的変形デバイスは、ラッチ又はロックなどの結合機構を使用して作動又は作動停止される受動デバイスとすることができる。例えば、周辺機器１０２は、周辺機器１０２の２つの部材が互いに対して曲がることを可能にするヒンジを含むことができる。周辺機器１０２が表面上に位置決めされると、ロックによってヒンジが開くのを妨げ、それによって部材が曲がるのを防ぐことができる。周辺機器１０２が表面から持ち上げられると、ロックは解除され、部材が互いに対して曲がることを可能にし、それは周辺機器１０２を変形させる可能性がある。
【００４６】
触覚効果を出力するために、追加的又は代替的に他の技術又は方法を使用することができる。例えば、触覚出力デバイス１０８は、空気又は流体ポケット、粒子詰まり、電磁石、共振機械要素、微小電気機械システム（「ＭＥＭＳ」）要素又はポンプ、熱流体ポケット、可変多孔性膜、又は層流フロー変調を用いて触覚効果を出力することができる。触覚効果を生成するために、任意の数及び任意の技法の組み合わせを使用することができる。
【００４７】
いくつかの例では、周辺機器１０２は、表面から取り外されること、表面上に配置されること、又はその両方に応じて形状を変えることができる。例えば、周辺機器１０２が表面上に配置されている場合、周辺機器１０２は第１の形状（例えばマウス形状）であり得る。これは、周辺機器１０２を表面に沿って二次元でスライドさせるときに、ユーザにとってより人間工学的に快適な形状であり得る。周辺機器１０２が表面から取り外される場合、周辺機器１０２は、その取り外しを検出し、それに応じて、周辺機器１０２を三次元で操作するときにユーザにとってより人間工学的により快適であり得る第２の形状（例えばロッド形状又はスタイラス形状）に変化し得る。いくつかの例では、周辺機器１０２は、触覚出力デバイス１０８を操作することによってその形状を変えることができ、触覚出力デバイス１０８は周辺機器１０２の形状を操作するために周辺機器１０２の一つ以上の表面を変形させることがある。周辺機器１０２は、追加的又は代替的に、表面に接近していること、表面上に配置されていること、入力デバイス（例えば、図１の入力デバイス１１０）が操作されていること、又は別の状態が発生したことを検出することができてもよい。それに応じて、周辺機器１０２はその形状を操作して第１の形状に戻すことができる。例えば、周辺機器１０２は、カメラ又は光センサを使用して、周辺機器１０２が表面に接近又は接触していることを検出することができる。それに応じて、周辺機器１０２はその形状をマウス形状に戻すことができる。
【００４８】
周辺機器１０２は、コンピューティングデバイス２１４などの一つ以上の外部電子デバイスと有線又は無線通信することができる。コンピューティングデバイス２１４の例には、デスクトップコンピュータ、ラップトップコンピュータ、携帯電話（例えば、スマートフォン）、携帯メディアプレーヤ（例えばＭＰ３プレーヤ）、タブレット、電子書籍リーダ、携帯ゲームデバイス、ゲームシステム、医療デバイス、車両コンピューティングデバイス、ヘッドセット、又はこれらの任意の組み合わせを含めることができる。周辺機器１０２は、コンピューティングデバイス２１４に入力を供給することができる。例えば、周辺機器１０２は、その位置をコンピューティングデバイス２１４に伝達することができ、コンピューティングデバイス２１４は、周辺機器１０２の位置に基づいてカーソルの位置を制御できる。
【００４９】
周辺機器１０２は、追加的又は代替的に、仮想現実ヘッドセット又は拡張現実ヘッドセットなどのヘッドセット２２８と通信することができる。ヘッドセット２２８は、仮想物体を見て相互作用するためのディスプレイを含むことができる。周辺機器１０２は、ヘッドセット２２８に入力を供給することができる。例えば、周辺機器１０２は、表面から離れて配置されたときにヘッドセット２２８に３Ｄ入力を供給し、周辺機器１０２が表面上に配置されたときにヘッドセット２２８に２Ｄ入力を供給してもよい。コンピューティングデバイス２１４はヘッドセット２２８から分離しているとして図２に示されているが、他の例では、コンピューティングデバイス２１４は、ヘッドセット２２８である（又はヘッドセット２２８を含んでいる）。
【００５０】
いくつかの例では、周辺機器１０２は、ヘッドセット２２８とコンピューティングデバイス２１４の両方と通信することができ、これら２つを切り替える。例えば、ユーザは、オンラインで衣料品を買うためにコンピューティングデバイス２１４を使用してもよい。コンピューティングデバイスは、例えば衣料品を表す仮想物体を表示していてもよい。ユーザは、必要に応じて周辺機器１０２を使用して仮想物体と相互作用することができる。次に、ユーザはヘッドセット２２８を装着し、立ち上がり、周辺機器１０２を表面から持ち上げて、３Ｄ環境で仮想物体と連動することができる。周辺機器１０２は、それが表面から離れたことを検出し、それに応じてヘッドセット２２８と通信してヘッドセット２２８にその仮想物体をそのディスプレイ上に表示させることができる。周辺機器１０２はまた、コンピューティングデバイス２１４に通信して、コンピューティングデバイス２１４にそのディスプレイをシャットダウンさせ、スタンバイモードに入り、又は別の動作を実行させることができる。ユーザが３Ｄ環境において仮想物体との連動を終了すると、ユーザは周辺機器１０２を表面に戻すことができる。周辺機器１０２は、それが表面に戻されたことを検出し、それに応じてコンピューティングデバイス２１４に仮想物体をもう一度表示させることができる。周辺機器１０２はまた、ヘッドセット２２８にそのディスプレイをシャットダウンさせる、スタンバイモードに入る、又は他の動作を実行させることができる。これにより、ユーザは、コンピューティングデバイス２１４及びヘッドセット２２８によってそれぞれ提供される２Ｄ環境と３Ｄ環境との間で容易に切り替えることができる。
【００５１】
周辺機器１０２は、追加的又は代替的に、一つ以上の外部センサ２１６と通信することができる。周辺機器１０２は、外部センサ２１６を使用して実空間における周辺機器１０２の位置を決定することができる。外部センサ２１６の例は、光センサ、カメラ、深度センサ、距離センサ、マイクロフォン、超音波トランスデューサ、又はこれらの任意の組み合わせを含み得る。いくつかの例では、周辺機器１０２は、外部センサ２１６からセンサ信号を受信し、そのセンサ信号に基づいてアウトサイドイン追跡情報を生成することができる。周辺機器１０２はまた、センサ１０６からのセンサ信号に基づいてインサイドアウト追跡情報を生成することができる。次に、周辺機器１０２は、アウトサイドイン追跡情報、インサイドアウト追跡情報、又は両方に基づいて、実空間における周辺機器１０２の位置を決定することができる。いくつかの例では、アウトサイドイン追跡情報及びインサイドアウト追跡情報の両方を使用して周辺機器１０２の位置を決定することは、これらの種類の情報のいずれかを単独で使用することよりも堅牢かつ正確であり得る。
【００５２】
いくつかの例では、周辺機器１０２は、付属品２２２などの様々なモジュール式構成要素を含むことができる。付属品２２２の例は、スタイラス、ワンド、カード、又はモジュールを含むことができる。付属品２２２は、周辺機器１０２のベースに取り外し可能に結合することができる。図２は単一の付属品２２２を示しているが、周辺機器１０２は任意の数及び組み合わせの付属品２２２を含むことができる。
【００５３】
付属品２２２の一例を図３に示す。図３に示すように、付属品２２２は周辺機器１０２の接触部分を形成している。接触部分は、動作中にユーザの手が接触するように形作られ配置された周辺機器１０２の外面である。付属品２２２は、所望に応じて周辺機器１０２のベース３０２に取り付けることも、そこから取り外すこともできる。例えば、付属品２２２は、ベース３０２から形成されたドック又はソケットに挿入し、又はそこから取り外すことができる。付属品２２２がベース３０２に取り付けられると、付属品２２２及びベース３０２は集合的に周辺機器１０２を形成することができる。
【００５４】
付属品２２２は、センサ２３０、触覚出力デバイス２２４、入力デバイス２２６、プロセッサ、メモリデバイス、バス、Ｉ／Ｏコンポーネント、ネットワークインターフェースデバイス、又は上述した構成要素と同様に構成することができるこれらの任意の組み合わせを含むことができる。
【００５５】
いくつかの例では、付属品２２２は３Ｄ入力を供給するように構成され、ベース３０２は２Ｄ入力を供給するように構成されている。例えば、ベース３０２内のセンサ１０６は、コンピューティングデバイスに２Ｄ入力を供給するためのボールセンサ又は光センサであり得る。また、付属品２２２内のセンサ２３０は、コンピューティングデバイスに３Ｄ入力を供給するためのカメラとすることができる。そのような一例では、周辺機器１０２は、付属品２２２がベース３０２に取り付けられていることを検出し、それに応じてセンサ１０６を使用して２Ｄ入力をコンピューティングデバイスに供給することができる。ユーザがベース３０２から付属品２２２を取り外すと、周辺機器１０２は付属品がベース３０２から分離されたことを検出し、それに応じてセンサ２３０を用いてコンピューティングデバイスに３Ｄ入力を供給することができる。例えば、付属品２２２は３Ｄ入力をベース３０２に送信することができ、次にベース３０２は３Ｄ入力をコンピューティングデバイスに中継することができる。代替として、付属品２２２は、それがベース３０２から分離されていることを検出することができ、それに応じて、中継することなく、３Ｄ入力をコンピューティングデバイスに応答的に供給することができる。
【００５６】
特定の例として、ユーザは、付属品２２２を周辺機器１０２に取り付けて、表面上で周辺機器１０２の周りを（単一のユニットとして）動き回ることによって、コンピューティングデバイス上でビデオゲームをプレイしてもよい。周辺機器１０２はまた、付属品２２２が周辺機器１０２に取り付けられたことを検出し、センサ１０６を介して２Ｄ入力を供給することができる。周辺機器１０２は、触覚出力デバイス１０８、触覚出力デバイス２２４、又はその両方を介して触覚効果を提供してもよい。次に、ユーザは、３Ｄコントロールを使用してビデオゲームの一部をプレイする決心をし、（例えば、ベース３０２が表面上にある間に）ベース３０２から付属品２２２を持ち上げ、付属品２２２を操作してコンピューティングデバイスに３Ｄ入力を供給することができる。周辺機器１０２は、付属品２２２が周辺機器１０２から分離していることを検出し、それに応じて３Ｄ入力を供給することができる。周辺機器１０２はまた、触覚出力デバイス２２４を介して触覚効果を提供することができる。例えば、コンピューティングデバイス又はベース３０２は、触覚出力デバイス２２４を介して付属品２２２に触覚効果を生成させるために、触覚信号を付属品２２２に送信することができる。
【００５７】
付属品２２２はまた、ユーザが付属品２２２を操作しながら入力を供給することを可能にするために、任意の数及び組み合わせの表面上に任意の数及び組み合わせの入力デバイスを含むことができる。いくつかの例において、付属品２２２がベースに取り付けられたときに通常隠される（例えば、ベース３０２に囲まれる）ように、付属品２２２上に配置されることができる。次いで、付属品２２２がベース３０２から取り外されると、入力デバイス２２６が見えるようになり、及び／又は使用可能になってもよい。特定の例として、付属品２２２は、図４に示す位置にボタンを有することができ、それは通常はベース３０２によって使用が阻まれている。しかし、破線の矢印で示すように、付属品２２２がベース３０２から取り外されると、入力デバイス２２６は使用可能になる。
【００５８】
いくつかの例では、付属品２２２は、ベース３０２から分離され、及び／又はベース３０２に接続されるのに応じて形状を変えることができる。例えば、付属品２２２がベース３０２に取り付けられると付属品２２２は第１の形状になり得る。付属品２２２がベース３０２から取り外されると、付属品２２２は、取り外しを検出し、それに応じて、ユーザにとってより人間工学的により快適であり得る第２の形状、例えばロッド形状又はスタイラス形状に変化することができる。いくつかの例では、付属品２２２は、付属品２２２の形状を操作するために付属品２２２の一つ以上の表面を変形させてもよい触覚出力デバイス２２４を操作することによってその形状を変えることができる。付属品は、追加的又は代替的に、（ｉ）ベース３０２に接近している、（ｉｉ）ベース３０２に取り付けられている、（ｉｉｉ）入力デバイス２２６が操作されている、又は（ｉｖ）別の状態が発生していることを検出することができてもよい。それに応じて、付属品２２２はその形状を操作して第１の形状に戻すことができる。
【００５９】
特定の例として、付属品２２２は少なくとも２つの形状の間で切り替えることができる。第１の形状は、図４に示すように、湾曲した上面と平坦な底面とを有することができる。第２の形状は実質的に円筒形とすることができ、これは実空間で保持又は操作することがより容易であってもよい。付属品２２２は、付属品２２２がベース３０２に取り付けられているかどうかを検出するための取り付けセンサ３０４を含んでもよい。取り付けセンサ３０４の例には、導電経路、ボタン、スイッチ、光センサ、カメラ、又はこれらの任意の組み合わせが含まれる。ユーザが付属品２２２をベース３０２から取り外すと、付属品２２２は取り付けセンサ３０４を介して取り外しを検出し、それに応じて第２の形状に変形することができる。その後、ユーザは付属品２２２を操作して、３Ｄ入力をコンピューティングデバイスに供給することができる。ユーザが付属品２２２の使用を終了したとき、ユーザは付属品２２２をベース３０２に再度取り付けることを望むかもしれない。一例では、ユーザは入力デバイス２２６を操作することができ、それによって付属品２２２を最初の形状に戻すことができる。これにより、付属品２２２をベース３０２に再度取り付けることができてもよい。別の例では、ユーザが付属品２２２をベース３０２に向かって移動させると、付属品２２２内のセンサが、付属品２２２がベース３０２に接近していることを検出してもよい。センサの例は、カメラ、光センサ、深度センサ、距離センサ、無線信号センサ（例えば、８０２．１１、ブルートゥース（登録商標）、又はＲＦＩＤ）、又はこれらの任意の組み合わせを含み得る。いくつかの例では、センサはセンサ２３０であり得る。付属品２２２がベース３０２に接近していることの検出に応じて、付属品２２２は第１の形状に戻るように変形し得る。これにより、付属品２２２をベース３０２に再び取り付けることができる。
【００６０】
図２に戻り、いくつかの例では、周辺機器１０２は、運搬デバイス２１８などの一つ以上の運搬デバイスを含むことができる。運搬デバイス２１８の例は、リストバンド、ストラップ、コード、剛性部材、又はユーザの手首や腕など、手以外の身体の部分に周辺機器１０２を結合することができる他の機器を含み得る。運搬デバイス２１８は、周辺機器１０２に永続的に又は取り外し可能に連結することができる。運搬デバイス２１８を備えた周辺機器１０２の一例を図２に示す。この例では、運搬デバイス２１８は可撓性である（例えばストラップ）である。図５に示す例のような他の例では、運搬デバイス２１８は剛性であることができ、それは周辺機器１０２がユーザの体（例えば、ユーザの手又は指）に対してある位置決めを維持することを可能にすることができる。これは、例えば、周辺機器１０２が表面１０４から持ち上げられたときに、周辺機器１０２をより使いやすくすることができる。図５に示すように、剛性部材５０２が、周辺機器１０２とストラップ５０４との間に取り付けられており、ストラップ５０４は、ユーザの身体（例えば、ユーザの前腕）を包み込む。しかし、より多い、より少ない、又は異なる配置の剛性部材を有する他の構成もまた、運搬デバイス２１８をユーザの身体に連結するために可能である。
【００６１】
いくつかの例では、運搬デバイス２１８は、触覚効果をユーザに提供することができる。例えば、運搬デバイス２１８は、触覚出力デバイス２２０などの一つ以上の触覚出力デバイスを含むことができる。周辺機器１０２は、触覚出力デバイス２２０を作動させて、例えば振動、運動感覚触覚効果、変形触覚効果、変形触覚効果、又はユーザへの他の触覚効果をもたらしてもよい。より具体的には、触覚出力デバイス２２０は、周辺機器１０２から触覚信号を受信し、それに応じて振動し、サイズを拡大し、サイズを縮小し、形状を変更し、又はその他の方法で形状を変形し、電気ショックを生成し、容量結合を生成し、あるいは、ユーザによって触覚効果として知覚される別の感覚又は感覚の組み合わせを生成することができる。振動及び運動感覚触覚効果などのいくつかの種類の触覚効果は、運搬デバイス２１８が剛性であるときに特に明瞭であってもよい。そして、いくつかの種類の触覚効果は、周辺機器１０２との接触を通して間接的に知覚可能であってもよい。例えば、運搬デバイス２１８は、形状を変形させること又は振動することによって触覚効果を出力してもよい。これは、運搬デバイス２１８の剛性部材を通って周辺機器１０２に伝播し、それによって周辺機器１０２を動かすことができる。ユーザは周辺機器に接触し、周辺機器の動きを触覚効果として知覚してもよい。
【００６２】
いくつかの例では、システム２００は、以下で論じる一つ以上のプロセスを実施することができる。
【００６３】
（触覚有効周辺機器のための例示的方法）
図６は、本開示のいくつかの態様を実施するためのプロセスの一例のフローチャートである。他の例では、より多くのステップ、より少ないステップ、異なるステップ、又は図４に示されるステップの異なる組み合わせを実施することができる。以下のステップは、図２に示されるシステム２００を参照して説明される。
【００６４】
ステップ６０２において、プロセッサ２０２は、周辺機器１０２が表面上に配置されているかどうかを判定する。プロセッサ２０２は、周辺機器１０２が表面上に位置しているか表面外に位置しているかを決定するための任意の数及び組み合わせの技術を実施することができる。
【００６５】
いくつかの例では、プロセッサ２０２は、表面から反射される送信の往復時間を決定し、次いで、この往復時間を使用して周辺機器１０２が表面上に位置するか表面外に位置するかを決定することができる。例えば、センサ１０６は、光源とセンサとを含む光センサとすることができる。光源の一例は発光ダイオード（ＬＥＤ）とすることができ、センサの一例は相補型金属酸化膜半導体（ＣＭＯＳ）とすることができる。光源は光を表面に伝達することができ、それはセンサによって反射され検出されることができる。プロセッサ２０２は、光が光源によって放射されたときとセンサによって検出されたときとの間の時間量を決定することができる。この時間量は、往復時間と呼ぶことができる。周辺機器１０２が表面から離れるにつれて、往復時間は増加してもよい。プロセッサ２０２は、往復時間を所定の閾値と比較することができる。往復時間が所定の閾値を超える場合、プロセッサ２０２は、周辺機器１０２が表面から離れて配置されていると判断することができる。往復時間が所定の閾値を下回る場合、プロセッサ２０２は、周辺機器１０２が表面上に位置していると判断することができる。
【００６６】
別の例として、センサ１０６は圧力源とセンサとを含むことができる。圧力源の例は、超音波トランスデューサ又はスピーカであり得る。センサの例は、超音波トランスデューサ又はマイクロフォンであり得る。音源は圧力波（例えば音又は超音波圧力波）を表面に放射することができ、それはセンサによって反射され検出されることができる。プロセッサ２０２は、圧力波が圧力源によって放出された時点とセンサによって検出された時点との間の往復時間を決定することができる。プロセッサ２０２は、往復時間を所定の閾値と比較することができる。往復時間が所定の閾値を超える場合、プロセッサ２０２は、周辺機器１０２が表面から離れて配置されていると判断することができる。往復時間が所定の閾値を下回る場合、プロセッサ２０２は、周辺機器１０２が表面上に位置していると判断することができる。いくつかの例では、圧力源とセンサは同じであり得る。例えば、単一の超音波トランスデューサで圧力波を送信し、圧力波の反射を検出することができる。
【００６７】
いくつかの例では、プロセッサ２０２は、カメラによって取り込まれた画像の一つ以上の特性に基づいて、周辺機器１０２が表面上に位置するか表面外に位置するかを判断することができる。例えば、センサ１０６は表面に面するカメラとすることができる。周辺機器１０２が表面から取り除かれると、カメラによってキャプチャされた画像は、周辺機器１０２が表面上に配置されたときに撮られた画像と比較して、増加した明るさ、視野、色分布、又はこれらの任意の組み合わせを有する。プロセッサ２０２は、これらの特徴のいくつか又はすべての変化を検出し、それに応じて周辺機器１０２が表面から離れて位置していると判断することができる。逆に、周辺機器１０２が表面に配置されている場合、周辺機器１０２が表面から離れて配置されているときに撮影された画像と比較して、カメラによって取り込まれる画像は、減少した輝度、視野、色分布、又はこれらの組み合わせを有してもよい。プロセッサ２０２は、これらの特徴のうちのいくつか又はすべてにおけるいくつかの変化を検出し、それに応じて周辺機器１０２が表面上に位置決めされていると判断することができる。
【００６８】
いくつかの例では、プロセッサ２０２は、磁性材料の磁場に基づいて周辺機器１０２が表面上に位置するか表面外に位置するかを決定することができる。例えば、センサ１０６は磁力計とすることができ、表面は磁性材料を含むことができる。周辺機器１０２が表面から離れるにつれて、磁力計によって検出される磁場の強度は減少する可能性がある。プロセッサ２０２は、磁力計によって検出された磁場の強度を所定の閾値と比較することができる。磁場の強度が所定の閾値を下回ると、プロセッサ２０２は、周辺機器１０２が表面から離れて配置されていると判断することができる。磁場の強度が所定の閾値を上回ると、プロセッサ２０２は、周辺機器１０２が表面上に配置されていると判断することができる。
【００６９】
周辺機器１０２が付属品２２２を含む例では、プロセッサ２０２は、付属品２２２が周辺機器１０２のベースから切り離されたときに周辺機器１０２が表面から離れて配置されていると判断することができる。プロセッサ２０２は、付属品２２２が周辺機器１０２のベースに取り付けられているときに周辺機器１０２が表面上に配置されていると判断することができる。プロセッサ２０２は、付属品２２２が周辺機器１０２のベースに取り付けられているか、又はそれから取り外されているかどうかを、取り付けセンサ（例えば、図３の取り付けセンサ３０４）を使用して判断することができる。
【００７０】
いくつかの例では、プロセッサ２０２は、周辺機器１０２の向き又は傾斜に基づいて周辺機器１０２が表面上に位置するか又は表面から離れているかどうかを判定することができる。例えば、センサ１０６はジャイロスコープ又は慣性測定ユニット（ＩＭＵ）とすることができる。）周辺機器１０２が表面上に配置されるとき、周辺機器１０２は水平であってもよい。プロセッサ２０２は、周辺機器１０２が水平であることを検出し、それに応じて周辺機器１０２が表面上に配置されていると判断することができる。周辺機器１０２が表面から離れると、周辺機器１０２は傾くことがある。プロセッサ２０２は、傾きを検出し、それに応じて周辺機器１０２が表面から離れて配置されていると判断することができる。
【００７１】
いくつかの例では、プロセッサ２０２は、インサイドアウト追跡技術又はアウトサイドイン追跡技術を使用して、周辺機器１０２が表面上に配置されているか、表面から離れて配置されているかを判断することができる。例えば、プロセッサ２０２は、（例えば、表面に対する）実空間における周辺機器１０２の３Ｄ位置を決定するためにＳＬＡＭアルゴリズムを使用することができる。次に、プロセッサ２０２は、実空間における周辺機器１０２の３Ｄ位置に基づいて周辺機器１０２が表面上に位置するか表面外に位置するかを決定することができる。
【００７２】
いくつかの例では、プロセッサ２０２は、周辺機器１０２のある部分から周辺機器１０２の別の部分に及ぼされる力の量に基づいて、周辺機器１０２が表面上に位置するか又は表面から外れるかどうかを判定することができる。例えば、プロセッサ２０２は、周辺機器１０２の上部シェルによって周辺機器１０２の下部シェルに及ぼされる力が所定の閾値を超える場合、周辺機器１０２が表面上に配置されていると決定することができる。
【００７３】
周辺機器１０２が表面上に配置されているとプロセッサ２０２が判断した場合、プロセスはステップ６０４に進むことができる。そうでない場合、プロセスはステップ６１６に進むことができる。
【００７４】
ステップ６０４において、プロセッサ２０２は第１の追跡モードを起動する。いくつかの例では、プロセッサ２０２は、メモリ（例えば、メモリデバイス２０４）内にフラグを設定することによって第１の追跡モードを起動する。追加的又は代替的に、プロセッサ２０２は、周辺機器１０２が第１の追跡モードにあることを示す通信をコンピューティングデバイス２１４に送信することによって第１の追跡モードを起動することができる。
【００７５】
いくつかの例では、プロセッサ２０２は、第１の追跡モードが起動されたときに３Ｄ追跡よりも２Ｄ追跡を優先することができる。例えば、プロセッサ２０２は、（例えば、２Ｄセンサからのセンサ値に特定の係数を掛けることによって）３Ｄセンサからのセンサ値よりも高くなるように２Ｄセンサからのセンサ値を重み付けしてもよい。別の例として、プロセッサ２０２は、第１の追跡モードが起動されているときには、３Ｄセンサからセンサ値を完全に無視することができる。３Ｄ追跡よりも２Ｄ追跡を優先することは、より正確な２Ｄセンサがコンピューティングデバイス２１４を制御することにおいてより大きな効果を有することを可能にしてもよく、それは、コンピューティングデバイス２１４のより改良された制御をもたらしてもよい。
【００７６】
ステップ６０６において、プロセッサ２０２は第１の触覚出力モードを起動する。いくつかの例では、プロセッサ２０２は、メモリ内のフラグを設定することによって第１の触覚出力モードを起動する。追加的又は代替的に、プロセッサ２０２は、周辺機器１０２が第１の触覚出力モードにあることを示す通信をコンピューティングデバイス２１４に送信することによって第１の触覚出力モードを起動することができる。
【００７７】
周辺機器１０２は、周辺機器１０２が第１の触覚出力モードにあるとき、特定の触覚効果のみを出力するか、特定のイベントに応じて触覚効果のみを出力するか、又はその両方を出力してもよい。いくつかの例では、周辺機器１０２は、第１の触覚出力モードにあるときに触覚効果を生成するために第１の触覚効果ライブラリ又は第１の触覚効果アルゴリズムを使用することができる。
【００７８】
ステップ６０８で、プロセッサ２０２は、身体部分が周辺機器１０２に接触しているかどうかを判定する。ユーザはそのような触覚効果を感じることができないかも知れないので、ユーザが周辺機器１０２に接触していないときに触覚効果を出力することによって無駄なバッテリ電力を減らすためにこのステップを実施することが望ましいかも知れない。プロセッサ２０２は、接触センサ（例えば、センサ１０６、圧力センサ、容量センサ、歪みゲージ、又はこれらの任意の組み合わせ）からのセンサ信号を分析することによって身体部分が周辺機器１０２に接触しているかどうかを判定することができる。
【００７９】
特定の例として、ユーザは、周辺機器１０２を操作するために周辺機器１０２上に手のひら又は指を置いていることがある。ユーザが周辺機器１０２に接触している間、プロセッサ２０２は接触センサからセンサ信号を受信することができる。センサ信号に基づいて、プロセッサ２０２は、ユーザが周辺機器１０２に接触していると判断することができる。特定の一例では、接触センサは力センサとすることができる。力センサは、周辺機器１０２の一部分（例えば上面）に加えられた力の量を検出し、対応するセンサ信号をプロセッサ２０２に送信することができる。例えば、周辺機器１０２の一部に加えられた力の量が所定の閾値を超えると、プロセッサ２０２はセンサ信号を受信し、ユーザが周辺機器１０２に接触していると判断することができる。プロセッサ２０２は、ユーザが周辺機器１０２に接触していると判断したことに応じて触覚効果を出力することを可能にしてもよい。別の例として、ユーザは、例えば別の部屋に行くため又はキーボードでタイプするために周辺機器から手を離してもよい。プロセッサ２０２は、ユーザが周辺機器１０２に接触していないことを示すセンサ信号を接触センサから受信することができる。例えば、プロセッサ２０２は、周辺機器１０２の一部に加えられる力が所定の閾値未満であることを示すセンサ信号を受信することができる。センサ信号に基づいて、プロセッサ２０２は、ユーザが周辺機器１０２に接触していないと判断し、例えば、触覚効果を無効にすることができる（例えば、ステップ６１２において）。
【００８０】
プロセッサ２０２が、身体部分が周辺機器１０２に接触していると判定すると、プロセスはステップ６０６に戻り、第１の触覚出力モードを介して触覚効果を提供することができる。そうでなければ、プロセスはステップ６１０に進むことができる。
【００８１】
ステップ６１０において、プロセッサ２０２は、周辺機器１０２が運搬デバイス２１８に物理的に取り付けられているかどうかを判断する。このステップを実施することが望ましいかも知れないが、それは、ユーザは周辺機器１０２に直接接触していないかも知れないが、運搬デバイス２１８を介して周辺機器１０２に結合され、運搬デバイス２１８を介して触覚効果を受け取ることができるからである。
【００８２】
いくつかの例では、周辺機器１０２は、運搬デバイス２１８が周辺機器１０２に取り付けられているか、又は取り外されているかを検出するための取り付けセンサを含むことができる。プロセッサ２０２は、取り付けセンサからセンサ信号を受け取り、センサ信号に基づいて運搬デバイス２１８が周辺機器１０２に取り付けられているかどうかを判定することができる。一例として、周辺機器１０２は、運搬デバイス２１８が取り付けられたときに閉じられる常開導電路を含むことができる。プロセッサ２０２は、導電経路が開いているか閉じているかを検出し、この情報を使用して運搬デバイス２１８が取り付けられているかどうかを判定することができる。別の例として、周辺機器１０２は、運搬デバイス２１８が取り付けられていないときに第１の構成にある（例えば、持ち上がる）ボタンを含むことができる。運搬デバイス２１８が取り付けられると、ボタンは別の構成に切り替わる（例えば、押される）ことがあり得る。プロセッサ２０２は、ボタンの構成を検出し、この情報を使用して運搬デバイス２１８が取り付けられているかどうかを判定することができる。
【００８３】
周辺機器１０２が運搬デバイス２１８に物理的に取り付けられていないとプロセッサ２０２が判定した場合、プロセスはステップ６１２に進み、プロセッサ２０２は触覚効果を無効にする。プロセッサ２０２は、メモリ内にフラグを設定するか、触覚効果を無効にすることを示す通信をコンピューティングデバイス２１４に送信するか、又はその両方によって、触覚効果を無効にすることができる。触覚効果が無効にされると、周辺機器１０２は触覚効果を出力しなくてもよい。
【００８４】
周辺機器１０２が運搬デバイス２１８に物理的に取り付けられているとプロセッサ２０２が判断した場合、プロセスはステップ６１４に進み、プロセッサ２０２は第３の触覚出力モードを起動することができる。いくつかの例では、第３の触覚出力モードは、ハンズフリー使用中に触覚効果を表現するためのものである。例えば、周辺機器１０２は、第３の触覚出力モードにあるとき、運搬デバイス２１８を介して触覚効果を出力してもよい。また、周辺機器１０２は、周辺機器１０２内に配置された触覚出力デバイス１０８及び２２４などの触覚出力デバイスを無効にすることもできる。これにより、ユーザが直接触っていなくてもユーザは運搬デバイス２１８を介して触覚効果を知覚するようすることができる。ユーザが周辺機器１０２に接触していないと、これはまた、触覚出力デバイス１０８及び２２４によって消費される無駄な電力を減らしてもよい。
【００８５】
特定の例として、ユーザは、ビデオゲームをしている間に２Ｄ入力を供給するために、図５に示す周辺機器１０２を使用することができる。次に、ユーザは、３Ｄ入力を供給し、周辺機器１０２を表面１０４から持ち上げることを望むかも知れない。周辺機器１０２は、運搬デバイス２１８を介してユーザの手首からぶら下がっていてもよい。ユーザが腕を動かすと、運搬デバイス２１８の剛性により周辺機器１０２も移動してもよく、３Ｄ入力を供給する。しかしながら、ユーザは、周辺機器１０２の本体と実際に直接には接触していなくてもよい。いくつかの例では、周辺機器１０２は、ユーザが周辺機器１０２の本体に接触していないことを検出することができ、運搬デバイス２１８が機器１０２に接続されていることを検出し、それに応じて第３の触覚出力モードを起動することができる。ひとたび第３の触覚出力モードになると、周辺機器１０２は、運搬デバイス２１８を介して触覚効果を提供することができ、それはユーザが知覚することができる。
【００８６】
他の例では、周辺機器１０２は、第３の触覚出力モードにあるときにウェアラブルデバイスに触覚効果を出力させることができる。ウェアラブルデバイスの例には、時計、ネクタイ、メガネ、手袋、靴、シャツ、ストラップ、帽子、パッチ、又はこれらの任意の組み合わせが含まれ得る。例えば、周辺機器１０２が運搬デバイス２１８を介してユーザの手首からぶら下がっており、ユーザが３Ｄ入力を供給している上記の例では、ユーザはスマートウォッチを装着していてもよい。周辺機器１０２は、ユーザが周辺機器１０２の身体に接触していないことを検出し、運搬デバイス２１８が周辺機器１０２に接続されていることを検出し、それに応じて第３の触覚出力モードを起動することができる。第３の触覚出力モードにあるとき、周辺機器１０２は触覚信号をスマートウォッチに送信することができ、スマートウォッチは触覚信号を受信し、それに応じて触覚効果を生成することができる。これは、ユーザの身体に連結された他の触覚出力デバイスを介してユーザが触覚効果を受け取ることを可能にしてもよい。
【００８７】
ステップ６０２に関して上述したように、プロセッサ２０２は、周辺機器１０２が表面に配置されているかどうかを判定することができる。そうでなければ、プロセスはステップ６１６に進むことができ、ここでプロセッサ２０２は第２の追跡モードを起動する。いくつかの例では、プロセッサ２０２は、メモリ内のフラグを設定することによって第２の追跡モードを起動する。追加的又は代替的に、プロセッサ２０２は、周辺機器１０２が第２の追跡モードにあることを示す通信をコンピューティングデバイス２１４に送信することによって第２の追跡モードを起動することができる。
【００８８】
いくつかの例では、プロセッサ２０２は、第２の追跡モードが起動されたときに、２Ｄ追跡よりも３Ｄ追跡を優先することができる。例えば、プロセッサ２０２は、（例えば、３Ｄセンサからのセンサ値に特定の係数を掛けることによって）２Ｄセンサからのセンサ値よりも高くなるように３Ｄセンサからのセンサ値を重み付けしてもよい。別の例として、プロセッサ２０２は、第２の追跡モードが起動されたときに２Ｄセンサからセンサ値を完全に無視してもよい。２Ｄ追跡よりも３Ｄ追跡を優先することは、３Ｄ入力がコンピューティングデバイス２１４を制御するために使用されることを可能にしてもよく、それは、コンピューティングデバイス２１４により広い範囲の機能性を提供してもよい。
【００８９】
ステップ６１８において、プロセッサ２０２は第２の触覚出力モードを起動する。いくつかの例では、プロセッサ２０２は、メモリ内のフラグを設定することによって第２の触覚出力モードを起動する。追加的又は代替的に、プロセッサ２０２は、周辺機器１０２が第２の触覚出力モードにあることを示す通信をコンピューティングデバイス２１４に送信することによって第２の触覚出力モードを起動することができる。
【００９０】
周辺機器１０２は、周辺機器１０２が第２の触覚出力モードにあるとき、特定の触覚効果のみを出力するか、特定のイベントに応じて触覚効果のみを出力するか、又はその両方を出力してもよい。例えば、周辺機器１０２は、第１の触覚出力モードで出力された触覚効果とは異なる少なくとも一つの触覚効果を第２の触覚出力モードで出力してもよい。追加的又は代替的に、周辺機器１０２は、第２の触覚出力モードにおける少なくとも一つのイベントに応じて、第１の触覚出力モードにおいて触覚効果を引き起こすイベントとは異なる触覚効果を出力してもよい。特定の例として、周辺機器１０２が第２の触覚出力モードにあるとき、周辺機器１０２を使用してユーザが実空間を通して３Ｄジェスチャをすることに応じて、周辺機器１０２は触覚効果を出力してもよい。対照的に、ユーザは、周辺機器１０２が表面上に配置されているとき（及び第１の追跡モードのとき）周辺機器１０２を使用して３Ｄジェスチャを行うことができないかも知れないので、周辺機器１０２は、周辺機器１０２が第１の触覚出力モードにあるとき、表面に沿った２Ｄの動きのような他の種類のイベントに応じて触覚効果を出力してもよい。
【００９１】
いくつかの例では、周辺機器１０２は、第２の触覚出力モードにあるときに触覚効果を生成するために第２の触覚効果ライブラリ又は第２の触覚効果アルゴリズムを使用してもよい。第２の触覚効果ライブラリは、第１の触覚効果ライブラリとは異なることがあり得、及び／又は第２の触覚効果アルゴリズムは、第１の触覚効果アルゴリズムとは異なり得る。
【００９２】
ステップ６２０において、プロセッサ２０２は、身体部分が周辺機器１０２と接触しているかどうかを判定する。いくつかの例では、このステップは、ステップ６０８に関して上述した方法のうちのいずれかを使用して実施することができる。プロセスの残りは、上述のような流れに従う。
【００９３】
プロセッサ２０２は、ステップ６０２において、周辺機器１０２が表面上又は表面から離れて配置されていることを検出したことに応じて、他の様々な動作を実行してもよい。例えば、周辺機器１０２が表面上に配置されていることをプロセッサ２０２が検出すると、プロセッサ２０２は仮想物体の２Ｄバージョンを表示させるように構成された通信を送信することができる。そのような一例では、プロセッサ２０２は、コンピューティングデバイス２１４に２Ｄバージョンの仮想アバターをコンピュータモニタに表示させる通信をコンピューティングデバイス２１４に送信することができる。追加的又は代替的に、周辺機器１０２が表面から離れて配置されていることをプロセッサ２０２が検出する、プロセッサ２０２は、仮想物体の３Ｄバージョンを表示させるように構成された通信を送信することができる。例えば、プロセッサ２０２は、ヘッドセット２２８に３Ｄアバターの仮想アバターを表示させる通信をヘッドセット２２８に送信することができる。いくつかの例では、仮想物体の２Ｄバージョンから仮想物体の３Ｄバージョンへの上述の遷移は、２Ｄ仮想物体とのユーザ相互作用によって少なくとも部分的に達成されてもよい。例えば、ユーザは周辺機器１０２を使用して（例えばボタンを押すことによって）２Ｄ物体を選択し、次いで周辺機器１０２を表面から持ち上げてもよい。プロセッサ２０２及び／又はコンピューティングデバイス２１４は、２Ｄ仮想物体の選択、及び周辺機器１０２が表面から離れていることを検出し、それに応じて３Ｄバージョンの仮想物体を表示させることができる。
【００９４】
いくつかの例では、プロセッサ２０２は、周辺機器１０２が水平又は傾斜している（例えば、湾曲している、傾斜している、傾斜している、又はそうでなければ水平でない）表面上に位置すると判断することができる。例えば、プロセッサ２０２は、ステップ６０２で論じた方法のうちのいずれかを使用して、周辺機器１０２が表面上に配置されていると判断することができる。プロセッサ２０２はまた、センサ１０６を使用して周辺機器１０２の向きを検出することができる。プロセッサ２０２は、周辺機器１０２が表面上に位置し傾斜していると判断した場合、周辺機器１０２が傾斜面上に位置していると判断することができる。いくつかの例では、プロセッサ２０２は、周辺機器１０２が傾斜面上に位置決めされていると判定したことに応じて、第３の追跡モードを起動する。第３の追跡モードは、第１の追跡モードと第２の追跡モードの特徴を組み合わせてもよい。例えば、周辺機器１０２は、第３の追跡モードにあるときにコンピューティングデバイス２１４に入力を供給するために２Ｄセンサ及び３Ｄセンサの両方を使用してもよい。そのような一例では、周辺機器１０２は、第１の座標平面内の一つ以上の座標（例えば、Ｘ座標及びＹ座標）を決定するために２Ｄセンサを使用する。そして、周辺機器１０２は、３Ｄセンサを使用して、第１の座標平面に垂直な第２の座標平面内の一つ以上の座標（例えば、Ｚ座標）を決定する。次に、周辺機器１０２は、座標の一部又は全部をコンピューティングデバイス２１４に送信することができ、コンピューティングデバイス２１４は、実空間における周辺機器１０２の物理的位置を決定するために座標を使用することができる。
【００９５】
プロセッサ２０２は、周辺機器１０２が傾斜面上に位置決めされていると判断したことに応じて、第４の触覚出力モードを追加的又は代替的に起動してもよい。プロセッサ２０２は、例えば、上述の方法のうちのいずれかを使用して、第４の触覚出力モードを起動することができる。周辺機器１０２は、周辺機器１０２が第４の触覚出力モードにあるとき、特定の触覚効果のみを出力するか、特定のイベントに応じて触覚効果のみを出力するか、又はその両方を出力してもよい。いくつかの例では、周辺機器１０２は、第４の触覚出力モードにあるときに触覚効果を生成するために第４の触覚効果ライブラリ又は第４の触覚効果アルゴリズムを使用してもよい。
【００９６】
特定の例として、ユーザは周辺機器１０２を身体の一部（例えば、ユーザの足）に配置し、周辺機器１０２を動き回らせてもよい。ユーザが身体部分の水平部分上で周辺機器１０２を動かすと、周辺機器１０２は、それが水平面上に配置されていることを検出し、それに応じて第１の追跡モード及び／又は第１の触覚出力モードを起動する。ユーザが周辺機器１０２を身体部分の傾斜した又は湾曲した部分に向かって移動させると、周辺機器１０２はそれが傾斜面上に位置していることを検出し、それに応じて第３の追跡モード及び／又は第３の触覚出力モードを起動する。第３の追跡モードでは、周辺機器１０２は、センサの組み合わせを使用してコンピューティングデバイス２１４に３Ｄ入力を供給してもよい。これにより、均一な、変形した、又は傾斜した表面に沿って動くときに、例えば、コンピューティングデバイス２１４上のカーソルの位置を更新するために、コンピューティングデバイス２１４が周辺機器１０２の物理的位置を正確に追跡することを可能にしてもよい。
【００９７】
いくつかの例では、第３の追跡モードは、コンピューティングデバイス２１４上のカーソルの移動を傾斜面に沿った周辺機器１０２の移動に（例えば、一対一で）一致させることを可能にしてもよく、それは、ユーザインターフェースの新たな種類を可能にしてもよい。例えば、物理的表面は、仮想環境内の仮想物体と同様に成形又は他の方法で構成することができ、そのような表面に沿った周辺機器１０２の動きを追跡し、仮想環境におけるカーソル移動又は他の相互作用に変換することができる。特定の例として、仮想環境は、丸みを帯びた表面を有する仮想ボールを含み得る。ユーザは、実空間において物理的ボールの丸みを帯びた表面に沿って周辺機器１０２を移動させることができ、これは、追跡され、仮想環境内の仮想ボールの丸みを帯びた表面に沿ったカーソル移動に変換され得る。別の例として、仮想環境は、仮想高さで仮想空間に浮かぶアイコンを含み得る。アイコンにアクセスするために、ユーザは、実空間における周辺機器１０２の物理的な高さが仮想環境におけるアイコンの仮想的な高さに対応するまで、周辺機器１０２を傾斜面（例えば、ユーザの机上）上にスライドさせ得る。その後、ユーザは、周辺機器１０２を使用してアイコンを選択するか、そうでなければアイコンと相互作用することが可能になってもよい。
【００９８】
追跡モードは、説明を容易にするために「第１」、「第２」、及び「第３」として上述されているが、これらのラベルは特定の順序を追跡モードに規定したり、さもなければ周辺機器１０２によって実施される追跡モードの順序、数、又は組み合わせを制限したりすることを意図していない。同様に、触覚出力モードは、説明を容易にするために「第１」、「第２」、「第３」、及び「第４」として上述されているが、これらのラベルは規定したり、触覚出力モードに対する特定の順序、あるいは周辺機器１０２によって実施される触覚出力モードの順序、数、又は組み合わせを制限したりすることを意図していない。
【００９９】
（触覚有効周辺機器のための追加のシステム及び方法）
図７は、本開示のいくつかの態様によるジェスチャを検出する周辺機器１０２の一例である。この例では、センサ１０６は、カメラ又はジェスチャを検出するのに適した他のセンサとすることができる。ユーザは、片手で周辺機器１０２を表面から持ち上げ、周辺機器１０２のセンサ１０６を別の手の方に向け、そして図示のように他方の手を使ってピンチジェスチャを実行することができる。周辺機器１０２は、ジェスチャを検出し、それに応じて一つ以上の動作を実行することができる。動作の例は、特定の追跡モードの起動、特定の触覚出力モードの起動、触覚効果の出力、ジェスチャに基づいてコンピューティングデバイスにコマンドを送信すること、ジェスチャを示す信号をコンピューティングデバイスに送信すること、又は任意の組み合わせを含み得る。これらの。周辺機器１０２がジェスチャ認識を実行することを可能にすることは、両方の手がコンピューティングデバイスに入力を供給するために使用されること、及び／又は追加の種類の入力（例えば、ジェスチャ、２Ｄ移動、３Ｄ移動など）がコンピューティングデバイスに供給されることを可能にしてもよい。この例は、ユーザの手によって行われたジェスチャを検出することに関して説明されているが、ユーザは、代わりに、ジェスチャを実行するために別の物体（例えば、足、ワンド、電話、又はスタイラス）を使用してもよい。周辺機器１０２は、任意の数及び任意の組み合わせの物体によって実行された任意の数及び任意の組み合わせのジェスチャを検出することができる。
【０１００】
図８は、本開示のいくつかの態様による、物体８０４（例えば、物理的物体）を検出する周辺機器１０２の一例である。この例では、周辺機器１０２内のセンサ１０６は、カメラ、レーザスキャナ、又は物体を検出するのに適した他のセンサとすることができる。ユーザは、周辺機器１０２を表面から持ち上げて、周辺機器１０２のセンサ１０６の視野８０２を物体８０４に向けてもよい。周辺機器１０２は、その後、物体を「スキャン」又は別の方法で検出し、それに応じて上述の操作などの操作の一つ以上を実行する。
【０１０１】
特定の一例では、ユーザは、周辺機器１０２のセンサ１０６を物体８０４に面するように向けることができ、図８の例では壷である。周辺機器１０２は、センサ１０６を使用して、物体８０４の様々な物理的特性を決定することができる。物理的特性の例には、高さ、幅、形状、サイズ、色、テクスチャ、種類、及び／又は配置（実空間における）が含まれ得る。いくつかの例では、周辺機器１０２は、次いで、物体８０４の物理的特性をコンピューティングデバイスに送信して、コンピューティングデバイスに物体８０４の３Ｄ仮想表現（例えば、３Ｄモデル）をレンダリングさせてもよい。コンピューティングデバイスは、仮想現実環境又は拡張現実環境内で物体８０４の３Ｄモデルをレンダリングしてもよい。
【０１０２】
上記の例のうちのいくつかは、図９に示されるプロセスに従って実施することができる。他の例では、より多くのステップ、より少ないステップ、異なるステップ、又は図９に示されているステップの異なる組み合わせがある。図９の実施形態を実施することができる。以下のステップは、図２に示されるシステム２００を参照して説明される。
【０１０３】
ステップ９０２において、プロセッサ２０２は、周辺機器１０２が表面に配置されているか否かを判定する。いくつかの例では、このステップは、図６のステップ６０２に関して説明した方法の任意の数及び組み合わせを使用して実施することができる。周辺機器１０２が表面に配置されているとプロセッサ２０２が判断すると、プロセスは終了することができる。そうでなければ、プロセスはステップ７０４に進むことができる。
【０１０４】
ステップ９０４において、プロセッサ２０２は、ジェスチャが検出されたか否かを判定する。例えば、プロセッサ２０２は、ジェスチャが行われたかどうかを判定するために、センサ１０６からの画像又は他のセンサデータを分析することができる。そうであれば、プロセスはステップ９０６に進むことができる。そうでなければ、プロセスはステップ９０８を繰り返すことができる。
【０１０５】
ステップ９０６において、プロセッサ２０２は、ジェスチャに基づいてコマンドを送信する。例えば、プロセッサ２０２は、ジェスチャを示す、ジェスチャに基づいて決定された、又はそうでなければジェスチャに関連付けられたコマンドを送信することができる。プロセッサ２０２は、有線又は無線インターフェースを介してコマンドをコンピューティングデバイス２１４に送信することができる。コマンドは、コンピューティングデバイス２１４に一つ以上の動作を実行させてもよい。
【０１０６】
ステップ９０８において、プロセッサ２０２は、物理的物体が検出されたか否かを判定する。例えば、プロセッサ２０２は、センサ１０６からの画像又は他のセンサデータを分析して、物理的物体が検出されたかどうかを判定することができる。そうであれば、プロセスはステップ９１０に進むことができる。そうでなければ、プロセスは終了することができる。
【０１０７】
ステップ９１０において、プロセッサ２０２は、物理的物体の物理的特性を決定する。プロセッサ２０２は、センサ１０６からのセンサ信号に基づいて物理的物体の物理的特性を決定することができる。例えば、プロセッサ２０２は、物理的対象のサイズ、形状、色、及びテクスチャを決定するためにセンサ１０６からの画像を分析することができる。プロセッサ２０２は、画像を介して物理的物体の物理的特性を識別するために一つ以上の画像処理アルゴリズムを実装することができる。
【０１０８】
ステップ９１２において、プロセッサ２０２は、物理的物体の３Ｄ表現を生成させる。例えば、プロセッサ２０２は、物理的物体の物理的特性をコンピューティングデバイス２１４に送信することができ、それは次に、物理的物体の３Ｄモデルをレンダリングすることができる。代替として、プロセッサ２０２は、それ自体が物理的物体の３Ｄ表現をレンダリングするために、物理的物体の物理的特性を使用することができる。プロセッサ２０２及び／又はコンピューティングデバイス２１４は、物理的物体の３Ｄ表現を生成するためのグラフィックレンダリングソフトウェアを含み得る。
【０１０９】
（例示の組み合わせ）
本開示の他の例は、上で論じた例のいくつか又はすべてを組み合わせることができる。一つの例示的な例は、机の上に座って周辺機器を表面上でスライドさせることによって周辺機器と相互作用するユーザを含み得る。ユーザはマウスを動かして、コンピュータモニタ上に表示されたさまざまなグラフィカル物体と相互作用し、さまざまな操作（例えばドラッグアンドドロップ操作）を実行することができる。ユーザが３Ｄ相互作用をサポートするアプリケーションを開くと、コンピューティングデバイスは、周辺機器を振動させるか、そうでなければ３Ｄ相互作用が利用可能であることを示す触覚信号を周辺機器に送信してもよい。アプリケーションの一例は、３Ｄモデリングアプリケーションであり得る。振動を感じたら、ユーザは拡張現実感ヘッドセットを装着し、手を上に持ち上げて３Ｄ入力を行ってもよい。
【０１１０】
ユーザが手を持ち上げると、運搬デバイス（周辺機器を手首に連結する）も周辺機器を表面から持ち上げ、周辺機器が落ちることなくユーザが周辺機器から自分のグリップを解放することを可能にする。周辺機器が表面から持ち上げられることに基づいて、周辺機器は、周辺機器があるフォームファクタから別のフォームファクタに形状を変える第２の触覚出力モードを起動してもよい。例えば、周辺機器は、それが表面から持ち上げられ、ユーザの手のひらが周辺機器の上面に静止するように成形された第１のフォームファクタから、ユーザの手のひらが６０度の傾斜で静止するように成形された第２のフォームファクタに応じて変化することを検出してもよい。その後、ユーザは周辺機器を使用して、拡張現実ヘッドセットによって出力された様々なホログラム及び仮想物体と相互作用することができる。
【０１１１】
追加の種類の入力を供給するために、ユーザは周辺機器から付属品（例えば、モジュール又はスタイラス）を取り外してもよい。一方で付属品を、他方で周辺機器の残りの部分を使用して、ユーザは次に両方のデバイスを使用して同時に（又は順次に）入力を供給することができる。例えば、ユーザは、両方のデバイスを使用して、複数の物体の相互作用、スケーリングジェスチャ、ピンチジェスチャ、又はこれらの任意の組み合わせを実行することができる。そのような例では、周辺機器のベースと付属品の両方が３Ｄセンサを含むことができる。付属品を使い終わったら、ユーザは付属品を周辺機器に再び取り付けることができる。
【０１１２】
付属品を周辺機器に再取り付けした後、ユーザは周辺機器のセンサをフリーハンドの方に向けて、フリーハンドでジェスチャを実行してもよい。周辺機器は、ジェスチャを検出して関連する操作を実行できる。例えば、周辺機器はジェスチャを検出し、それに応じてアプリケーション内で特定のコマンドを実行させることができる。例えば、コマンドは、メニューを開くこと、ファイルを開くこと、ファイルを保存すること、新しいファイルを作成すること、又はこれらの任意の組み合わせを含むことができる。
【０１１３】
ユーザは、追加的又は代替的に、周辺機器のセンサを物理的物体に向けることによって、彫刻のように室内の物理的物体をスキャンするために周辺機器を使用することができる。これにより、物体の３Ｄ表現を（例えば、ホログラム又は仮想物体として）レンダリング又は表示させてもよい。例えば、これにより、物体の３Ｄ表現がアプリケーションに表示されてもよい。次いで、ユーザは、周辺機器を使用して様々な３Ｄ運動を実行することによって物体の３Ｄ表現を操作しえもよい。ユーザは、追加的又は代替的に、周辺機器を使用して他のさまざまな仮想物体と相互作用することができる。例えば、アプリケーションにはさまざまな仮想ボタンを含めることができる。ユーザは、アプリケーションを終了するための仮想終了ボタンなどの仮想ボタンに向かって周辺機器と手を伸ばすことができる。周辺機器が仮想ボタンに接触すると、周辺機器は、仮想ボタンが接触されたことをユーザに通知するために振動する（そして仮想ボタンのサイズが大きくなる）可能性がある。その後、ユーザは、仮想ボタンを仮想的に「押す」ために周辺機器上の入力デバイスを操作することができ、それは一例ではアプリケーションを終了させる。
【０１１４】
ユーザがアプリケーションの使用及び／又は３Ｄ入力の供給を行うと、ユーザは座り、周辺機器を表面に戻すことができる。周辺機器が表面に戻されることに基づいて、周辺機器は、周辺機器が第１のフォームファクタに形状を戻す第１の触覚出力モードを起動することができる。その後、ユーザは、周辺機器を使用し続けて、コンピューティングデバイスに２Ｄ入力を供給してもよい。
【０１１５】
（一般的な考慮事項）
上述の方法、システム、及びデバイスは例である。様々な構成は、必要に応じて様々な手順又は構成要素を省略、置換、又は追加してもよい。例えば、代替の構成では、方法は説明されたものとは異なる順序で実行されてもよく、及び／又は様々な段階が追加、省略、及び／又は組み合わされてもよい。また、特定の構成に関して説明された特徴は、他の様々な構成において組み合わせてもよい。構成の異なる態様及び要素は同様の方法で組み合わされてもよい。また、技術は進化しており、したがって、要素の多くは例であり、本開示又は特許請求の範囲を限定するものではない。
【０１１６】
例示的な構成（実装形態を含む）の徹底的な理解を提供するために、説明において具体的な詳細が与えられている。しかしながら、構成はこれらの具体的な詳細なしで実施されてもよい。例えば、構成を不明瞭にすることを回避するために、不必要な詳細なしに、周知の回路、プロセス、アルゴリズム、構造、及び技法が示されている。この説明は例示的な構成のみを提供するものであり、特許請求の範囲、適用性、又は構成を限定するものではない。むしろ、構成に関する前述の説明は、説明された技法を実施するための実施可能な説明を当業者に提供するであろう。本開示の精神又は範囲から逸脱することなく、要素の機能及び配置に様々な変更を加えてもよい。
【０１１７】
また、構成は、流れ図又はブロック図として示されるプロセスとして説明されてもよい。それぞれが動作を逐次プロセスとして説明することがあるが、動作の多くは並行して又は同時に実行されてもよい。さらに、動作の順序は並べ替えられてもよい。プロセスには、図に含まれていない追加のステップがあってもよい。さらに、方法の例は、ハードウェア、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語、又はそれらの任意の組み合わせによって実装されてもよい。ソフトウェア、ファームウェア、ミドルウェア、又はマイクロコードで実施されるとき、必要なタスクを実行するためのプログラムコード又はコードセグメントは、記憶媒体などの非一時的コンピュータ可読媒体に格納されてもよい。プロセッサは説明されたタスクを実行してもよい。
【０１１８】
いくつかの例示的な構成を説明してきたが、本開示の趣旨から逸脱することなく、様々な修正形態、代替構成、及び等価物を使用してもよい。例えば、上記の要素は、より大きなシステムの構成要素としてもよく、その場合、他の規則が本発明の適用より優先されるか又はそうでなければ本発明の適用を修正してもよい。また、上記の要素が考慮される前、その間、又はその後に、いくつかのステップを踏んでもよい。したがって、上記の説明は特許請求の範囲を限定するものではない。
【０１１９】
本明細書における「適合」又は「構成」の使用は、追加のタスク又はステップを実行するように構成又は構成されたデバイスを排除しない、オープンで包括的な表現として意味されている。さらに、「に基づく」の使用は、一つ以上の規定された条件又は値に「基づく」プロセス、ステップ、計算、又は他の動作が、実際には、追加の条件、又は記載されている以上の値に基づいてもよいという意味で、開放的かつ包括的であることを意味する。本明細書に含まれる見出し、リスト、及び番号付けは、説明を容易にするためだけのものであり、限定することを意味するものではない。
【０１２０】
本主題の態様による例は、デジタル電子回路内、コンピュータハードウェア内、ファームウェア内、ソフトウェア内、又はそれらの組み合わせ内で実装することができる。一例では、コンピュータは一つ以上のプロセッサを含んでもよい。プロセッサは、プロセッサに結合されたランダムアクセスメモリ（ＲＡＭ）などのコンピュータ可読媒体を含むか、又はそれへのアクセスを有している。プロセッサは、センササンプリングルーチン、選択ルーチン、及び他のルーチンを含む一つ以上のコンピュータプログラムを実行するなど、メモリに格納されたコンピュータ実行可能プログラム命令を実行して、上記の方法を実行する。
【０１２１】
そのようなプロセッサは、マイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、及び状態機械を含んでもよい。そのようなプロセッサは、ＰＬＣ、プログラマブル割り込みコントローラ（ＰＩＣ）、プログラマブルロジックデバイス（ＰＬＤ）、プログラマブルリードオンリーメモリ（ＰＲＯＭ）、電子プログラマブルリードオンリーメモリ（ＥＰＲＯＭ又はＥＥＰＲＯＭ）、又は他の同様のデバイスなどのプログラマブル電子デバイスをさらに含んでもよい。
【０１２２】
そのようなプロセッサは、プロセッサによって実行されると、プロセッサに本明細書に記載されたステップを実行させ、又は支援させるようにコンピュータを動作させる命令を格納してもよい、例えば有形のコンピュータ可読媒体のようなメディアを含み、又は通信してもよい。コンピュータ可読媒体の例は、ウェブサーバ内のプロセッサなどのプロセッサにコンピュータ可読命令を提供することができるすべての電子、光学、磁気、又は他の記憶デバイスを含むことができるが、それらに限定されない。媒体の他の例は、フロッピーディスク、ＣＤ−ＲＯＭ、磁気ディスク、メモリチップ、ＲＯＭ、ＲＡＭ、ＡＳＩＣ、構成されたプロセッサ、すべての光媒体、すべての磁気テープ又は他の磁気媒体、又はコンピュータプロセッサが読み取ることができる他の任意の媒体を含むがこれらに限定されない。また、他の様々なデバイスは、ルータ、プライベート又はパブリックネットワーク、又は他の伝送デバイスなどのコンピュータ可読媒体を含んでもよい。記載されたプロセッサ及び処理は、一つ以上の構造内にあってもよく、一つ以上の構造を通して分散されてもよい。プロセッサは、本明細書に記載の方法（又は方法の一部）のうちの一つ以上を実行するためのコードを含むことができる。
【０１２３】
本主題をその特定の例に関して詳細に説明してきたが、当業者であれば、前述の理解に達すると、それに対する変更、変形、及び均等物を容易に生み出すことができることを理解されよう。そのような例です。したがって、本開示は、限定ではなく例示を目的として提示されたものであり、当業者には容易に明らかとなるように本主題へのそのような修正、変形及び／又は追加を含むことを排除しない。
【図１Ａ】
2019109889.tif 000003
【図１Ｂ】
2019109889.tif 000004
【図２】
2019109889.tif 000005
【図３】
2019109889.tif 000006
【図４】
2019109889.tif 000007
【図５】
2019109889.tif 000008
【図６】
2019109889.tif 000009
【図７】
2019109889.tif 000010
【図８】
2019109889.tif 000011
【図９】
2019109889.tif 000012
【外国語明細書】
2019109889000001.pdf