(57)【要約】  開示されるのは、自己推進デバイスを動作させるための多目的自己推進デバイスおよび方法である。幾つかの変形形態は、内部駆動システムを有する球形筐体、および種々の応用における使用のための多機能ペイロード空間を含むことができる。
2016525973.tif 000002
【特許請求の範囲】
【請求項１】
自己推進デバイスであって、
球形筐体と、
前記球形筐体内に配置された駆動システムであって、１つ以上のホイールに電力供給する、駆動システムと、
前記駆動システムの上に取り付けられた運搬装置であって、前記球形筐体内でペイロード空間の底面に対応する上面を有する、運搬装置と、
前記運搬装置に結合された付勢機構であって、左側ポータルアクスルおよび右側ポータルアクスルを含み、前記左側ポータルアクスルおよび前記右側ポータルアクスルの各々は、前記ペイロード空間の前記底面に取り付けられ、および前記球形筐体の内面に対して力を提供するために接触要素に結合されたバネを含む、付勢機構と
を備え、前記力は、前記球形筐体を移動させるために、前記１つ以上のホイールを能動的に押し付けて、前記球形筐体の前記内面を持続的に係合させるために十分な付勢を提供する鉛直ベクトルを含む、自己推進デバイス。
【請求項２】
前記球形筐体を包み込む保護カバーをさらに備え、前記保護カバーは、激しい衝撃の期間の間に離脱するように構成される、請求項１に記載の自己推進デバイス。
【請求項３】
前記駆動システムに結合された１つ以上のバッテリーと、
前記１つ以上のバッテリーに結合された誘導電荷ポートであって、前記１つ以上のバッテリーの誘導電荷を有効にする、誘導電荷ポートと
をさらに備える、請求項１に記載の自己推進デバイス。
【請求項４】
前記自己推進デバイス内に配置された１つ以上のバッテリーに結合され、かつ前記駆動システムに結合された充電ポートをさらに備え、前記充電ポートは、前記１つ以上のバッテリーをプラグイン充電するように構成されている、請求項１に記載の自己推進デバイス。
【請求項５】
前記左側ポータルアクスルと前記右側ポータルアクスルとの間の前記ペイロード空間の前記底面に結合されたカメラをさらに備え、前記球形筐体は光学的に透明である、請求項１に記載の自己推進デバイス。
【請求項６】
前記左側ポータルアクスルと前記右側ポータルアクスルとの間の前記ペイロード空間の前記底面に取り付けられたカメラスタビライザをさらに備え、前記カメラは、前記カメラスタビライザに取り付けられる、請求項５に記載の自己推進デバイス。
【請求項７】
前記ペイロード空間内に配置された化学センサ、赤外線センサ、動きセンサ、聴取器、または生物学センサのうちの１つ以上をさらに備える、請求項１に記載の自己推進デバイス。
【請求項８】
前記ペイロード空間内に配置された１つ以上の爆発物をさらに備える、請求項１に記載の自己推進デバイス。
【請求項９】
前記球形筐体は、前記自己推進デバイスが実質的に防水になることを可能にするように密封可能である、請求項１に記載の自己推進デバイス。
【請求項１０】
前記駆動システムを動作させるプロセッサと結合された受信機をさらに備え、前記受信機は、外部コントローラから命令信号を受信し、および前記プロセッサに前記命令信号を送信し、前記プロセッサは、前記自己推進デバイスを誘導するための前記駆動システムに対するコマンドとして前記命令信号を実行する、請求項１に記載の自己推進デバイス。
【請求項１１】
前記プロセッサは、前記球形筐体上でドア機構を動作させ、前記球形筐体は、前記外部コントローラから前記プロセッサによって受信される開放命令があると、前記ドア機構を介して機械的に開放する、請求項１０に記載の自己推進デバイス。
【請求項１２】
前記ペイロード空間の前記底面に取り付けられたスタビライザをさらに備え、前記スタビライザは、前記自己推進デバイスが動いているときにペイロードに対する実質的に一定の方位を維持するジャイロスコープを含む、請求項１に記載の自己推進デバイス。
【請求項１３】
前記スタビライザは、前記自己推進デバイス上の衝撃の間に、前記ペイロード上の衝撃力を減少させる緩和システムをさらに含む、請求項１２に記載の自己推進デバイス。
【請求項１４】
自己推進デバイスを動作させる、コンピュータにより実行される方法であって、モバイルコンピューティングデバイスの１つ以上のプロセッサによって実行され、かつ、
前記自己推進デバイスから画像を受信するステップであって、前記画像は、前記自己推進デバイス内に取り付けられた画像捕捉デバイスの視野を提供する、ステップと、
前記モバイルコンピューティングデバイスのタッチセンシティブディスプレイ上に前記画像を表示するステップと、
前記タッチセンシティブディスプレイ上で、前記画像捕捉デバイスの前記視野内の位置ポイントのユーザ選択を受信するステップと、
前記ユーザ選択に基づいて、前記自己推進デバイスに送信されることになるコマンド信号を生成するステップであって、前記コマンド信号は、前記位置ポイントに誘導するように前記自己推進デバイスに指示する、ステップと
を含む、方法。
【請求項１５】
前記モバイルコンピューティングデバイス上に表示されるときの前記視野の第１の基準フレームに基づいて、前記視野における前記位置ポイントの位置を判定するステップと、
前記自己推進デバイスに対する前記位置ポイントに対応する第２の基準フレーム上の前記位置ポイントの前記位置をマッピングするステップと
をさらに含み、前記コマンド信号は、前記第２の基準フレームのみに基づいて、前記自己推進デバイスを誘導するための命令を含むように生成される、請求項１４に記載の方法。
【請求項１６】
前記画像は、前記自己推進デバイス内で前記画像捕捉デバイスから提供される生の映像供給であり、前記コマンド信号を生成するステップは、前記生の映像供給を受信するのと同時に動的に実行される、請求項１４に記載の方法。
【請求項１７】
命令を記憶した非一時的コンピュータ可読媒体であって、前記命令は、モバイルコンピューティングデバイスの１つ以上のプロセッサによって実行されると、さらに前記モバイルコンピューティングデバイスに、
自己推進デバイスから画像を受信することであって、前記画像は、前記自己推進デバイス内に取り付けられた画像捕捉デバイスの視野を提供する、受信することと、
前記モバイルコンピューティングデバイスのタッチセンシティブディスプレイ上に前記画像を表示することと、
前記タッチセンシティブディスプレイ上で、前記画像捕捉デバイスの前記視野内の位置ポイントのユーザ選択を受信することと、
前記ユーザ選択に基づいて、前記自己推進デバイスに送信されることになるコマンド信号を生成することであって、前記コマンド信号は、前記位置ポイントに誘導するように前記自己推進デバイスに指示する、生成することと
を実行させる、非一時的コンピュータ可読媒体。
【請求項１８】
前記命令は、前記１つ以上のプロセッサによって実行されると、さらに前記モバイルコンピューティングデバイスに、
前記モバイルコンピューティングデバイス上に表示されるときの前記視野の第１の基準フレームに基づいて、前記視野における前記位置ポイントの位置を判定することと、
前記自己推進デバイスに対する前記位置ポイントに対応する第２の基準フレーム上の前記位置ポイントの前記位置をマッピングすることと
を実行させ、前記コマンド信号は、前記第２の基準フレームのみに基づいて、前記自己推進デバイスを誘導するための命令を含むように生成される、請求項１７に記載の非一時的コンピュータ可読媒体。
【請求項１９】
前記画像は、前記自己推進デバイス内で前記画像捕捉デバイスから提供される生の映像供給であり、前記コマンド信号を生成することは、前記生の映像供給を受信するのと同時に動的に実行される、請求項１７に記載の非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書で説明される例は、多目的リモート制御可能自己推進デバイスに関する。
【背景技術】
【０００２】
種々のタイプのリモート制御可能デバイスが存在する。例えば、ホビイスト（ｈｏｂｂｙｉｓｔｓ）は、自動車、トラック、飛行機、およびヘリコプターの形式のリモート制御デバイスを操作することが多い。そのようなデバイスは一般的に、コントローラデバイスからコマンドを受信し、および入力に基づいて動作を変更する（例えば、方向または速度）。一部のデバイスは、スマートフォンまたはタブレットなどのデバイス上で動作するアプリケーションの形式で実装することができる、ソフトウェアベースのコントローラを使用する。
【発明の概要】
【課題を解決するための手段】
【０００３】
本明細書における開示は、同様の参照符号が類似の構成要素を指す添付図面の図において例として示され、かつ限定を目的とするものではない。
【図面の簡単な説明】
【０００４】
【図１】球形ボールの形式の自己推進デバイスの構成要素を示す例示的なブロック図である。
【図２Ａ】自己推進デバイスを示す例示的なブロック図である。
【図２Ｂ】代替的な付勢機構を有する自己推進デバイスを示す例示的なブロック図である。
【図２Ｃ】ペイロード空間を改善するための別の代替的な付勢機構を有する自己推進デバイスを示す例示的なブロック図である。
【図３】それに取り付けられたカメラを含む自己推進デバイスを示す例示的なブロック図である。
【図４】ペイロードを含む自己推進デバイスを示す例示的なブロック図である。
【図５】自己推進デバイスおよびコントローラデバイスの例示的な概略図である。
【図６】自己推進球形デバイスの動きを生じさせる例示的な技術を示す図である。
【図７】センサ配列およびデータの流れを示す例示的なブロック図である。
【図８】自己推進デバイス、ならびに自己推進デバイスを制御し、および自己推進デバイスと対話するコントローラデバイスを含む例示的なシステムを示す図である。
【図９】自己推進デバイスを動作させる方法を示す例示的なフローチャートである。
【発明を実施するための形態】
【０００５】
駆動システム、球形筐体、付勢機構、および球形筐体内のペイロード空間を含む多目的自己推進デバイスが提供される。付勢機構は、駆動システムによって係合される接触面と直径方向に反対の球形筐体の内面に係合する単一の拡張バネを含むことができる。代わりに、付勢機構は、１つ以上の（例えば、対の）ポータルアクスルを含むことができ、その各々は、球形筐体の内面におけるそれぞれの接点を押すバネおよび接触要素を有する。そのようにして、ポータルアクスルは、鉛直力を生成することができ、鉛直力は同様に、球形筐体を移動させるために、駆動システムに対し持続的に球形筐体の内面に係合することを能動的にさせる。種々の使用および動作のために、ペイロードまたは複数のペイロードを搬送するために自己推進デバイスを実装することができる。
【０００６】
任意のペイロードを搬送するためにペイロード空間を利用することができる。例えば、ペイロードは、自己推進デバイスからコントローラデバイスに画像および／または映像ストリームを送信することができるカメラを含むことができる。コントローラデバイスは、スマートフォン、タブレット、または任意の他の適切な操作デバイスの形式であることができる。さらに、球形筐体は、カメラが画像またはリアルタイムな映像を撮ることを可能にし、それによって、コントローラデバイス（例えば、スマートフォン）のユーザが、映像ストリームを見ることによって自己推進デバイスを制御することを可能にするように透明であってもよい。
【０００７】
さらなる他の変形形態では、ペイロード空間は、民間人および軍事使用のために単一のペイロードまたは複数のペイロードを含む。そのようなペイロードは、カメラ、赤外線センサ、化学センサ、生物学センサ、１つ以上の爆発物、聴取器、またはペイロード空間内で適合することができる任意の他のペイロードのうちの１つ以上を含むことができる。
【０００８】
カメラまたは他の画像捕捉デバイスを含む変形形態の場合、生の（ｌｉｖｅ）画像または映像供給上の位置ポイントに触れることによって、自己推進デバイスを動的に制御する能力をユーザに提供する接触駆動方法が開示される。方法は、自己推進デバイス内に取り付けられたカメラの視野を提供する、自己推進デバイスからの画像または生の映像供給を受信することを含む。この映像供給を、制御されたコンピューティングデバイスまたはモバイルコンピューティングデバイスのタッチセンシティブディスプレイ上に表示することができる。方法はさらに、タッチセンシティブディスプレイ上に、カメラの視野内の位置ポイントのユーザ選択を受信することと、ユーザ選択に基づいて、位置ポイントに誘導するように自己推進デバイスに指示する、自己推進デバイスに送信されることになるコマンド信号を生成することと、を含む。
【０００９】
さらに、方法は、コントローラデバイス上に表示されるときの視野の第１の基準フレームに基づいて、視野における位置ポイントの位置を判定することと、自己推進デバイスに対する位置ポイントに対応する第２の基準フレーム上の位置ポイントの位置をマッピングすることとを含むことができる。そのような配置では、コマンド信号は、第２の基準フレームのみに基づいて自己推進デバイスを誘導するための命令を含むように生成される。さらにまた、生の映像供給の実装形態の場合、コントローラデバイスは、生の映像供給を受信することとともに動的にコマンド信号を生成することができる。
【００１０】
システム概要
図面を参照して、図１は、球形ボールの形式の自己推進デバイスの構成要素を示す例示的なブロック図である。多目的自己推進デバイス１００は、ユーザによって操作されるコンピューティングデバイス（例えば、スマートフォン、タブレット、および／またはリモート制御）などの別のデバイスの制御の下で移動するように操作されてもよい。（ｉ）デバイスが移動を開始した後の初期の基準フレームに対する方位および／もしくは位置の自己認識を維持すること、（ｉｉ）異なる制御入力に対する種々の範囲のプログラム固有の応答を可能にするように、制御入力をプログラムで処理すること、（ｉｉｉ）ソフトウェア、もしくは自己推進デバイス上のプログラムロジックと通信するプログラムロジックを使用して、別のデバイスがその移動を制御することを可能にすること、ならびに／または（ｉｖ）制御デバイスによって解釈可能なソフトウェアであるその移動および状態に対する出力応答を生成すること、のうちの１つ以上を可能にするリソースで自己推進デバイス１００を構成することができる。
【００１１】
例えば、多目的自己推進デバイス１００は、幾つかの相互接続されたサブシステムおよびモジュールを含むことができる。プロセッサ１１４は、プログラムメモリ１０４からのプログラム命令を実行する。例えば、機能を追加し、不具合を訂正し、または動作を修正するために、プログラムメモリ１０４に記憶された命令を変更することができる。一部の例では、プログラムメモリ１０４は、コンピューティングデバイス上で実行するソフトウェアと通信し、またはソフトウェアで動作可能なプログラム命令を記憶する。自己推進デバイス１００が別のコンピューティングデバイスからの制御入力を解釈し、または制御入力に対して応答する方式を変更するために、プログラミング命令の異なるプログラムを実行するようにプロセッサ１１４を構成することができる。
【００１２】
通信トランスデューサ１０２とともに無線通信モジュール１１０は、プロセッサ１１４と他の外部デバイスとの間でデータを交換する役割を果たすことができる。データ交換は、例えば、通信をもたらし、制御をもたらし、ロジック命令、状態情報をもたらし、および／またはプログラムメモリ１０４に対する更新をもたらすことができる。一部の例では、プロセッサ１１４は、状態および／または位置情報に対応する出力を生成することができ、状態および／または位置情報は、次いで、無線通信ポートを介してコントローラデバイスに通信されてもよい。デバイスの移動によって無線通信が望ましくないものとなる。したがって、用語「接続」は、自己推進デバイス１００への物理的な取り付けなしになされる論理的なリンクを表すものと理解することができる。
【００１３】
一部の例では、無線通信モジュール１１０は、ＢＬＵＥＴＯＯＴＨ（登録商標）通信プロトコルを実装することができ、およびトランスデューサ１０２は、ＢＬＵＥＴＯＯＴＨ（登録商標）信号の送信および受信に適切なアンテナとすることができる。追加、または代替として、無線通信モジュール１１０は、Ｗｉ−Ｆｉ通信プロトコルを実装することができ、およびトランスデューサは、Ｗｉ−Ｆｉ信号の送信および受信に適切なアンテナとすることができる。そのような例では、ＢＬＵＥＴＯＯＴＨ（登録商標）および／またはＷｉ−Ｆｉ信号を介してコントローラデバイスによって、自己推進デバイス１００を制御することができる。他の無線通信媒体およびプロトコルはまた、代替的な実装形態において使用されてもよい。
【００１４】
センサ１１２は、周辺環境および状態に関する情報をプロセッサ１１４に提供することができる。変形形態では、センサ１１２は、３軸ジャイロスコープ、３軸加速度計、および３軸磁気探知器を含む慣性測定デバイスを含む。さらに、センサ１１２は、デバイスが移動を開始した後の初期の基準フレームに対するデバイスの方位および／または位置の認識をプロセッサ１１４が維持することを可能にするための入力を提供することができる。センサ１１２は、光、温度、湿度を検出し、または化学的濃度もしくは放射能を測定する機器を含むことができる。
【００１５】
状態／可変メモリ１０６は、例えば、各軸における位置、方位、回転速度および移動速度を含む、デバイスの状態に関する情報を記憶することができる。状態／可変メモリ１０６はまた、例えば、デバイスが一旦使用されるときの位置および方位情報とともに、デバイスが使用されている（例えば、デバイスが活性化されている）ときのデバイスの初期の基準フレームに対応する情報を記憶することができる。このようにして、自己推進デバイス１００は、デバイスが一旦動作中になると、自己推進デバイス１００の位置および方位情報を維持するために、状態／可変メモリ１０６の情報を利用することができる。
【００１６】
クロック１０８は、プロセッサ１１４にタイミング情報を提供することができる。例えば、クロック１０８は、変化の間隔および速度を測定するための時間基準を提供することができる。さらに、クロック１０８は、曜日、日付、年、時刻、および警告機能を提供することができる。さらにまた、クロック１０８は、自己推進デバイス１００が事前設定された時間に警告し、またはアラートを発することを可能にすることができる。
【００１７】
拡張ポート１２０は、付属品またはデバイスを追加するための接続部を設けることができる。拡張ポート１２０は、オプションまたは増強を追加するための後の拡張および適応性をもたらす。例えば、周辺機器、センサ、処理ハードウェア、記憶装置、ディスプレイ、またはアクチュエータを自己推進デバイス１００に追加するために拡張ポート１２０を使用することができる。
【００１８】
追加、または代替として、拡張ポート１２０は、アナログまたはデジタル信号を使用して適切に構成された構成要素と通信することが可能なインタフェースを提供することができる。拡張ポート１２０は、標準または公知の電子インタフェースおよびプロトコルを提供することができる。拡張ポート１２０はさらに、光学インタフェースを実装することができる。例えば、拡張ポート１２０に適切なインタフェースは、ユニバーサルシリアルバス（ＵＳＢ）、集積回路間バス（Ｉ２Ｃ）、シリアルペリフェラルインタフェース（ＳＰＩ）、またはイーサネット（登録商標）を含む。
【００１９】
ディスプレイ１１８は、外部のデバイスまたは人間に情報を提示する。ディスプレイ１１８は、種々の形式の情報を提示することができる。種々の例では、ディスプレイ１１８は、色およびパターンの光、音声、振動、または感覚上の刺激の組み合わせを生成することができる。一部の例では、ディスプレイ１１８は、自己推進デバイス１００の物理的な動作によって、アクチュエータ１２６とともに動作して、情報を通信することができる。例えば、自己推進デバイス１００は、人間の頭の頷きまたは揺れを模倣して、「はい」または「いいえ」を通信するために作成されてもよい。
【００２０】
追加、または代替として、可視領域または不可視領域のいずれかで、光を放出するようにディスプレイ１１８を構成することができる。赤外線または紫外線領域における不可視光は、例えば、人間の目には見えないが、専用ディテクタに利用可能な情報を送信するために有益であることがある。さらに、ディスプレイ１１８は、その相対的強度を可変とすることができ、および放出される光を、混色を形成するために混合することができるように配置される、種々の光周波数を放出する発光ダイオード（ＬＥＤ）の配列を含むことができる。
【００２１】
追加、または代替として、ディスプレイ１１８は、各々が人間の目に見える主要色を放出する幾つかのＬＥＤを備えたＬＥＤ配列を含む。プロセッサ１１４は、各々のＬＥＤの相対的強度を変更して、広範囲の色を生成することができる。光の主要色は、幾つかの色が異なる量で混合されて広範囲な鮮明な色を生成することができる色である。光の主要色の多くの組は、例えば、赤／緑／青、赤／緑／青／白、および赤／緑／青／琥珀を含むものとして知られている。例えば、赤、緑、および青色ＬＥＤは共に、ディスプレイ１１８を備えた３つの利用可能な主要色デバイスの組を備える。変形形態では、主要色の他の組および白色ＬＥＤを使用することができる。多くの実装形態では、ディスプレイ１１８は、配置のために自己推進デバイス１００上の基準点を示すために使用される１つ以上のＬＥＤを含むことができる。
【００２２】
エネルギー記憶装置１２４は、自己推進デバイス１００の電子および電子機械構成要素を動作させるエネルギーを記憶する。例えば、エネルギー記憶装置１２４は、充電池とすることができる。誘導電荷ポート１２８は、有線電機接続なしにエネルギー記憶装置１２４を再充電することを可能にすることができる。さらに、誘導電荷ポート１２８は、磁気エネルギーを受信し、およびそれを電気エネルギーに変換して、エネルギー記憶装置１２４を再充電することができる。追加、または代替として、誘導電荷ポート１２８は、外部充電デバイスに無線通信インタフェースを提供することができる。さらに、プラグイン充電手段を、誘導電荷ポート１２８の追加、または代替として含めることができる。
【００２３】
自己推進デバイス１００を、電子デバイスの大部分が電力を使用しない、非常に低い電力、または「ディープスリープ」モードに置くためにディープスリープセンサ１２２を含めることができる。これは、長期間の記憶、配送、および／またはそのような状態を必要とする自己推進デバイス１００の幾つかの実装に対して有益であることがある。例えば、カメラ、動きセンサ、赤外線センサ、および／または化学もしくは生物学センサなどのペイロードを搬送するために、自己推進デバイス１００を実装することができる。そのような変形形態では、自己推進デバイス１００は、カメラまたは１つ以上のセンサを作動させる事象などのトリガが自己推進デバイス１００を自動的に活性化するまで、ディープスリープモードにおいて休眠状態にいることができる。
【００２４】
変形形態では、センサ１２２は、有線接続なしに、自己推進デバイス１００の球形筐体を通じて対象、事象、インシデント、事態、および／または現象を感知することができる。追加、または代替として、ディープスリープセンサ１２２は、外部磁石を自己推進デバイス１００に貼り付けてディープスリープモードを活性化することができる方式で取り付けられたホール効果センサであってもよい。
【００２５】
駆動システムアクチュエータ１２６は、種々の使用のために電気エネルギーを機械エネルギーに変換することができる。アクチュエータ１２６の主要な使用は、自己推進デバイス１００を推進および操縦することであってもよい。動作およびアクチュエータを操縦することは、駆動システムまたは牽引システムとも称されてもよい。駆動システムによって、プロセッサ１１４の制御の下、自己推進デバイス１００の回転および移動動作が生じる。アクチュエータ１２６の例は、例えば、ホイール、モータ、ソレノイド、プロペラ、パドルホイール、および振り子を含むことができる。
【００２６】
例えば、駆動システムアクチュエータ１２６は、各々が減速ギア系を通じて可変速度モータに独立して接続された軸に取り付けられた、２つの平行ホイールの組を含むことができる。そのような例では、２つの独立して動作する駆動モータの動作をプロセッサ１１４によって制御することができる。
【００２７】
しかしながら、アクチュエータ１２６は、自己推進デバイス１００を回転および移動させることに加え、種々の動作を生成することができる。例えば、アクチュエータ１２６によって、自己推進デバイス１００は、人間のジェスチャ、例えば、頭の頷き、揺れ、身震い、回転またははじきなどの模倣を含む、通信動作を実行することができる。変形形態では、プロセッサは、アクチュエータ１２６をディスプレイ１１８と連携させる。同様に、プロセッサ１１４は、自己推進デバイス１００を回転または振動させ、および同時に着色光のパターンを放出させる信号をアクチュエータ１２６およびディスプレイ１１８に提供することができる。追加、または代替として、自己推進デバイス１００は、動作と同期した光または音声パターンを放出することができる。
【００２８】
他のネットワーク接続デバイスに対するコントローラとして自己推進デバイス１００を使用することができる。自己推進デバイス１００は、センサおよび無線通信機能を含むことができ、それによって、それは他のデバイスに対するコントローラの役割を実行することができる。例えば、自己推進デバイス１００は、手に保持されてもよく、ならびにジェスチャ、動作、回転、および組み合わせ入力などを感知するために使用されてもよい。
【００２９】
機械的設計
図２Ａは、自己推進デバイスを示す例示的なブロック図である。自己推進デバイス２００は、多目的とすることができ、ならびに球形筐体２０２、駆動システム２０１、付勢機構２１５、およびペイロード空間２２８を含むことができる。例えば、自己推進デバイス２００は、ロボットの球形ボールの形式にあってもよい。自己推進デバイス２００は、高齢者の手でそれが容易に握られ、持ち上げられ、および搬送されることを可能にするサイズおよび重量とすることができる。変形形態では、自己推進デバイス２００は、より大きく、もしくはより小さくてもよく、および／または特定のペイロードに対してカスタマイズされてもよい。例えば、自己推進デバイス２００は、透明な球形筐体を含むように製造されてもよく、および、図３の例で示されるように、例えば、スマートフォンまたはタブレットなどのコントローラデバイスに映像ストリームを提供するために、カメラがペイロード空間内に含まれてもよい。
【００３０】
さらに図２Ａを参照して、自己推進デバイス２００は、デバイスが回転するときに外面と接触する外部球形シェル（または、筐体）２０２を含む。加えて、自己推進デバイス２００は、駆動システム２０１の構成要素として含まれるホイール２１８および２２０が自己推進デバイス２００を移動させるように内面２０４と接触する、球形筐体２０２の内面２０４を含む。加えて、自己推進デバイス２００は、球形筐体２０２内に囲まれた幾つかの機械および電子構成要素を含むことができる。
【００３１】
球形筐体２０２は、無線通信のために使用される信号の送信を可能にし、さらに水分および汚れに影響されないこととすることができる１つ以上の材質の少なくとも一部から構成されてもよい。球形筐体２０２の材質は、耐久性があり、洗うことが可能であり、および／または防砕性とすることができる。球形筐体２０２はまた、光の透過を可能にするように構築されてもよく、および光を拡散するようにテクスチャ加工されてもよい。
【００３２】
変形形態では、球形筐体２０２は、密封されたポリカーボネートプラスチックから作られてもよい。類似の変形形態では、球形筐体２０２、または内面２０４のうちの少なくとも１つは、光を拡散するようにテクスチャ加工されてもよい。追加、または代替として、球形筐体２０２は、関連付けられた取付機構と共に２つの半球形シェルを備えることができ、それによって、内部電子および機械構成要素に接近することを可能にするように球形筐体２０２を開放することができるようになる。類似の変形形態では、球形筐体２０２は、コントローラデバイスを使用してユーザによるコマンドプロンプトがあるときに筐体を開放するように構成された自動開放手段を含むことができる。追加、または代替として、ペイロード空間２２８に配置されたペイロードを正確に置くために球形筐体２０２を開放することができ、その後に閉じることができ、それによって、ユーザは、自己推進デバイス２００を誘導することを継続することができる。球形筐体２０２はさらに、溝形外面、または牽引のためのノブおよびノジュールを含む外面を含むことができる。
【００３３】
処理、無線通信、推進、および他の機能を有効にするために、球形筐体２０２の内部に幾つかの電子および機械構成要素を配置することができる。構成要素の中で、デバイスが自らを推進することを可能にするために駆動システム２０１を含めることができる。図１を参照して上記説明された処理リソースおよび他の制御機構に駆動システム２０１を結合することができる。さらに図２Ａを参照して、自己推進デバイス２００の電子構成要素に対する取付点および支持物としての役割を果たすために、運搬装置２１４を含めることができる。駆動システム２０１、エネルギー記憶装置２１６、運搬装置２１４、付勢機構２１５、図１を参照して上記説明された他の構成要素、および最後にはペイロード空間２２８を占有することがある任意のペイロード物品は、球形筐体２０２に強固に取り付けられなくてもよい。代わりに、駆動システム２０１に含まれるホイール２１８、２２０は、球形筐体２０２の内面２０４との摩擦接触にあることができ、およびアクチュエータの動作によって球形筐体２０２を駆動するように機能することができる。
【００３４】
運搬装置２１４は、エネルギー記憶装置２１６との機械接点および電気接点にあることができる。エネルギー記憶装置２１６は、デバイスおよび電子機器に電力供給するためのエネルギーのリザーバ（ｒｅｓｅｒｖｏｉｒ）とすることができ、および誘導電荷ポート２２６を介して補給されてもよい。例えば、エネルギー記憶装置２１６は充電池とすることができ、およびリチウムポリマーセルから構成することができる。
【００３５】
運搬装置２１４は、電子装置、センサ配列、１つ以上のアンテナ、および１つ以上のコネクタに対するプリント回路基板を含む、内部構成要素の大部分に対する取付位置を設けることができると共に、内部構成要素に対する機械取付点を設けることができる。さらに、運搬装置２１４は、自己推進デバイス２００内に配置されているペイロードに対する基部を設けることができる。このようにして、運搬装置２１４の上面は、ペイロード空間２２８の底面とすることもできる。しかしながら、例えば、カメラに対して特別に形成されるペイロード空間２２８、または複数の物品を搬送するための区画を含む１つなどの、ペイロード空間２２８の他の構成が考えられる。
【００３６】
駆動システム２０１は、モータ２２２、２２４およびホイール２１８、２２０を含む。モータ２２２、２２４は、関連付けられたシャフト、アクスル、およびギア駆動（図示せず）を通じてホイール２１８、２２０に独立して接続する。ホイール２１８、２２０は、内面２０４との物理的接触にあることができる。ホイール２１８、２２０が内面２０４に接触する点は、自己推進デバイス２００の駆動機構の必須の部分であり、よって好ましくは摩擦を増大させ、および滑りを低減させる材質で被膜される。例えば、ホイール２１８、２２０の周辺を、シリコンゴムタイヤで被膜することができる。
【００３７】
内面２０４に対してホイール２１８、２２０を能動的に押し付けるために付勢機構２１５を含めることができる。例として、バネ２１２およびバネ端２１０は、付勢機構２１５を備えることができる。特に、バネ２１２およびバネ端２１０は、内面２０４に接触するためにホイール２１８、２２０とは直径方向に反対の点に配置されてもよい。バネ２１２およびバネ端２１０は、ホイール２１８、２２０の滑りを減少させ、または実質的に滑りを除去する接触力を提供することができる。バネ２１２は、内面２０４に対してホイール２１８、２２０およびバネ端２１０を平坦に押す小さな力を提供するように選択することができる。
【００３８】
バネ端２１０は、内面２０４とのほぼ摩擦なしの接触を提供する。そのようにして、バネ端２１０は、自己推進デバイス２００が駆動システム２０１によって駆動されるときに内面２０４に沿って摺動するように構成された円形または準円形面を備える。ほぼ摩擦なしの接触を提供する追加の手段を含めることができる。一部の実装形態では、バネ端２１０は、バネ端２１０が内面２０４に沿って移動する接点において摩擦をさらに減少させる１つ以上のベアリングを含むことができる。さらに、バネ２１２およびバネ端２１０は、高感度磁気センサとの干渉を回避するための非磁性材質から構成することができる。
【００３９】
民間人および／または軍事活動のために単一のペイロードまたは複数のペイロードを搬送するためにペイロード空間２２８を組み込むことができる。例えば、調査もしくは遠隔の映像ストリームに対するカメラ、赤外線センサ、場所に誘導することができ、および爆発させることができる有害物質、爆発物もしくはフラッシュバンを検出する化学もしくは生物学センサ、ならびに／または聴取器のうちの１つ以上を含む、任意の数のペイロードを搬送するためにペイロード空間２２８を配置することができる。
【００４０】
図２Ｂは、代替的な付勢機構２１７を有する自己推進デバイスを示す例示的なブロック図である。図２Ｂを参照して、付勢機構２１７は、ペイロード空間２２８を増大させ、または再構成するための１つ以上の追加ホイール２３４、２３６を含むことができる、シャーシ２３７を組み込むことができる。付勢機構２１７は、シャーシ２３７に対して力を与えるように構成された中央ポスト２３８を含むことができ、シャーシ２３７は次いで、球形筐体２０２の内面２０４に対し追加ホイール２３４、２３６を押すことができる。中央ポスト２３８は、付勢において補助するバネ２４０を含んでもよく、または含まなくてもよい。代わりに、シャーシ２３７は、ホイール２１８、２２０、２３４、および２３６が、直径方向に反対にあるのとは対照的に、同一の半径において内面２０４に接触するように駆動システム２０１に近接して設置されてもよい。追加、または代替として、追加ホイール２３４、２３６が赤道（駆動システム２０１が自己推進デバイス２００の非常に下に配置される基準フレーム）のやや上の内面２０４に接触する軸を中央ポスト２３８が形成するように、シャーシ２３７が配置されてもよい。それらの配置、および同様の配置は、例えば、ペイロード空間２２８を最大化または最適化するために含まれてもよい。
【００４１】
図２Ｃは、ペイロード空間２５０を改善する別の代替的な付勢機構を有する自己推進デバイスを示す例示的なブロック図である。例えば、図２Ａおよび２Ｂに関して上述した付勢機構と同様に、内面２０４に対して駆動システムのホイール２１８、２２０を能動的に押し付けるように構成された独立付勢機構２５２が含まれてもよい。独立付勢機構２５２は、２つ以上の別個のポータルアクスル２５８、２６０から構成される。ポータルアクスル２５８、２６０は、鉛直値を有する力ベクトルで内面２０４に対してそれぞれのホイール２５４、２５６を押すバネを含んでもよい。内面２０４に対して押すホイール２５４、２５６からの鉛直力は次いで、さらに内面２０４に対して駆動システム２０１およびそのそれぞれのホイール２５４、２５６を能動的に押し、それによって、駆動システム２０１が自己推進デバイス２００を移動させるための十分な力をもたらす。
【００４２】
示されるように、その２つ以上のポータルアクスル２５８、２６０を有する独立付勢機構２５２は、ペイロード空間２５０を著しく増大させることを可能にし、そこでは、任意の数の異なるタイプまたはサイズのペイロード（例えば、カメラ、赤外線センサ、化学または生物学センサ、１つ以上の爆発物、聴取器など）を空間２５０内に配置することができる。図２Ａおよび２Ｂの例によって示される付勢機構の構成を除去することによって、および独立ポータルアクスル２５８、２６０を有する独立付勢機構２５２にそれらを置き換えることによって、広い内部をもたらすために自己推進デバイス２００の内部が空にされてもよい（ｃｌｅａｒｅｄ）。独立付勢機構２５２を備えたポータルアクスル２５８、２６０を、運搬装置２１４上に直接取り付けることができる。ポータルアクスル２５８、２６０に対応するバネは、内面２０４に対してホイール２５４、２５６を押し付けるねじれバネの形式にあってもよい。追加、または代替として、バネは、圧縮バネ、クロックバネ、または引張バネのうちの１つ以上から構成されてもよい。代わりに、内面２０４に対し駆動システム２０１およびホイール２１８、２２０を押す力を維持するためにバネが含まれず、自己推進デバイス２００を移動させるのに十分な牽引を可能にする方式で、ポータルアクスル２５８、２６０を取り付けることができる。
【００４３】
図３は、カメラを含む自己推進デバイスを示す例示的なブロック図である。多目的自己推進デバイス３００は、ペイロード空間３１０内に取り付けられたカメラ３０２を含むことができる。例えば、球形筐体３０４は、カメラ３０２が自己推進デバイス３００の外側を見ることが可能なように透明である。実質的に水平な方位を維持するために、カメラ３０２を付勢機構上に取り付けることができ、または自己推進デバイス３００内に取り付けることができる。例えば、同様のことを達成するために、カメラ３０２を運搬装置３１４に取り付けることができる。
【００４４】
カメラの方位を外部の基準フレームとさらに実質的に水平にするように、カメラ３０２をジャイロスコープまたは他の安定化手段に取り付けることができる。例えば、さらなる安定性を達成し、およびさらに方位を維持するために、安定化手段（図示せず）を付勢機構３１５および／または運搬装置３１４に取り付けることができる。自己推進デバイス３００が、図２Ｃを参照して論述されたポータルアクスルを使用して独立付勢機構を有するために、カメラ３０２を運搬装置３１４に取り付けることができる。
【００４５】
追加、または代替として、カメラ３０２をさらに、無線通信モジュールに結合することができる。カメラ３０２は、無線リンク３０８によって、写真および／または映像ストリームをコントローラデバイス３０６に提供することができる。同様の配置では、無線リンク３０８を介してコントローラデバイス３０６を使用して、自己推進デバイスをユーザによってリモートに制御することができる。実行されるときに、映像ストリームを利用して自己推進デバイス３００を制御することができ、よって、ユーザは、効率的な操作を維持するために、自己推進デバイス３００の視野にいる必要はない。
【００４６】
カメラ３０２は、任意の写真または映像記録装置とすることができる。カメラ３０２は、それ自体が無線通信手段を含むことができ、それによって、それがコントローラデバイス３０６と直接リンクすることができる。代わりに、カメラ３０２をプロセッサに結合することができ、および図１を参照して上述したシステムに含まれる無線モジュールを介して、映像ストリームがコントローラデバイス３０６に供給されてもよい。
【００４７】
コントローラデバイス３０６は、リモート制御、スマートフォン、タブレット、または自己推進デバイス３００を動作させるアプリケーションもしくは命令を記憶および実行することが可能なカスタマイズデバイスとすることができる。例えば、コントローラデバイス３０６は、スマートフォンまたはタブレットの形式であることができ、および自己推進デバイスの動作を、スマートフォンまたはタブレットに記憶されたアプリケーションによって実行することができる。代わりに、コントローラデバイス３０６および自己推進デバイス３００を、１つ以上の目的のために特別に製造された、組み合わされたシステムとして製造することができる。例えば、自己推進デバイス３００とコントローラデバイス３０６との組み合わされたシステムを、調査のために特別に使用することができる。さらに、コントローラデバイス３０６のアプリケーションは、選択された位置に対応するコントローラデバイス３０６のディスプレイにユーザが触れることができ、および自己推進デバイス３００をその位置に誘導させる、「接触および駆動」機能を含むことができる。「接触および駆動」機能はさらに、選択された位置が映像ストリーム上の同一の位置に対応する、コントローラデバイス３０６のディスプレイ上の位置をユーザが選択することを可能にすることができる。言い換えると、ユーザは、自己推進デバイス３００からの映像ストリーム上の位置に「触れる」ことができ、および自己推進デバイス３００は自らをその位置に自動的に誘導する。
【００４８】
図４は、ペイロードを含む自己推進デバイスを示す例示的なブロック図である。図４を参照して、自己推進デバイスは、種々の動作のための特定の物品またはペイロード４０４を搬送および移送するためのペイロード空間４０６を含む。そのような物品は、赤外線センサ、化学もしくは生物学センサ、爆発物もしくはフラッシュバン（ｆｌａｓｈ  ｂａｎｇ）、聴取器、および他の機械装置などのうちの１つ以上を含むことができる。それらの物品のうちのいずれか１つ以上はさらに、図３を参照して上述したカメラを含む変形形態に含まれてもよい。
【００４９】
図４の例に示されるように、自己推進デバイス４００は、ペイロード４０４を搬送するためのペイロード空間４０６を含む。自己推進デバイス４００は、ユーザによってそれを投げることができ、次いで、コントローラデバイス４１２を介してそれを制御することができるような方式で構築されてもよい。例えば、自己推進デバイス４００がユーザによって投げられるとき、衝撃を弱めるために保護カバー４０２を含めることができる。保護カバー４０２は、着脱可能とすることができ、および／または過度な衝撃の期間の間に自己推進デバイス４００から離脱するように構成することができる。そのような例では、自己推進デバイス４００は、保護カバー４０２から抜け出ることができ、およびその意図した目的を進めることができる。
【００５０】
自己推進デバイス４００を密封または防水処理するために保護カバー４０２を含めることができる。例えば、自己推進デバイス４００はさらに、その意図する適用に応じて、浮き、または沈むように構成されてもよい。さらに、自己推進デバイス４００は、容易に取り戻すことが可能なように、水に入れたときに浮くことができる。
【００５１】
図４に示される例は、単一の目的のために製造されてもよく、または複数回にわたって物品を積み降ろしされるように構成されてもよい。後者は、ユーザによって容易に開放し、または閉じることができる球形筐体４０８および／または保護カバー４０２を含むことができる。単一の目的の例は、永続的に密封されるように製造されてもよく、およびそのような配置のペイロード４０４は、単一の目的のために選択されてもよい。例えば、ペイロード４０４は、自己推進デバイス４００が単一の使用のために利用される爆発物とすることができる。実行されるときに、自己推進デバイス４００を選択された位置に誘導し、次いで、爆発させて、効果的に自己推進デバイス４００を破壊することができる。
【００５２】
代わりに、ユーザによるコマンドプロンプトがあると開放し、およびそのペイロード４０４を選択された位置に置くように自己推進デバイス４００を構成することができる。次いで、ユーザは、コントローラデバイス４１２を使用して球形筐体４０８を閉じ、次に、自己推進デバイス４００を誘導することを継続することができる。さらに、自己推進デバイス４００およびコントローラデバイス４１２は、図４に関して上述した「接触および駆動」機能を含むことができる。
【００５３】
図５は、自己推進デバイス５１４およびコントローラデバイス５０８の例示的な概略図である。特に、自己推進デバイス５１４は、コントローラデバイス５０８から発生することができるプログラミングロジックおよび／または制御によって、その動作において制御されてもよい。自己推進デバイス５１４は、ユーザ５０２によって操作することができるコントローラデバイス５０８の制御の下、動作することが可能である。コントローラデバイス５０８は、標準または独自無線通信プロトコルを使用して、制御データを自己推進デバイス５１４に無線で通信することができる。変形形態では、自己推進デバイス５１４は、センサ、およびその動作（例えば、速度、方向など）のパラメータを制御する内部プログラミングロジックを利用して、少なくとも部分的に自己制御されてもよい。またさらに、自己推進デバイス５１４は、コントローラデバイス５０８上でコンテンツを生成または変更する目的で、デバイスの位置および／または動作パラメータに関連するデータを通信することができる。追加の変形形態では、自己推進デバイス５１４は、その動作および／または内部プログラミングロジックによって、コントローラデバイス５０８の態様を制御することができる。
【００５４】
本明細書で説明されるように、自己推進デバイス５１４は、デバイスがコントローラデバイス５０８によって制御される動作のモードを含む複数の動作モードを有することができ、別のデバイス（例えば、別の自己推進デバイスもしくはコントローラデバイス５０８）に対するコントローラであり、ならびに／または部分的もしくは全体的に自立的である。
【００５５】
加えて、自己推進デバイス５１４およびコントローラデバイス５０８は、他の機能の中で、（ｉ）ユーザ５０２がコントローラデバイス５０８を操作して、簡易な指向性入力、コマンド入力、ジェスチャ入力、動きもしくは他の知覚入力、音声入力、またはそれらの組み合わせを含む、複数の入力を生成することを可能にすること、（ｉｉ）自己推進デバイス５１４が、コントローラデバイス５０８から受信された入力を、コマンドまたはコマンドの組と解釈することを可能にすること、ならびに／あるいは（ｉｉｉ）自己推進デバイス５１４が、コントローラデバイス５０８上で状態に作用するために（例えば、コントローラ−ユーザインタフェースに対応するコンテンツなどの状態を表示する）、そのデバイスの位置、動作および／または状態に関するデータを通信することを可能にすること、を含む機能を有効にするために、プログラミングロジックが共有されるコンピューティングプラットフォームを共有することができる。さらに、自己推進デバイス５１４は、デバイスを使用する追加のプログラミングロジックおよび／または命令を促進するプログラムインタフェースを含むことができる。コントローラデバイス５０８は、自己推進デバイス５１４上でプログラミングロジックと通信するプログラムを実行することができる。
【００５６】
したがって、自己推進デバイス５１４は、アクチュエータ、または動きもしくは指向性動作を生じさせる駆動機構を含むことができる。自己推進デバイス５１４を、制御デバイス、ロボット、ロボットデバイス、リモートデバイス、自立デバイス、およびリモート制御デバイスを含む、幾つかの関連する用語および表現によって称することができる。変形形態では、自己推進デバイス５１４は、移動するように構築されてもよく、および種々の媒質において制御されてもよい。例えば、自己推進デバイス５１４を、平面、砂面、または岩面などの媒質における動作に対して構成することができる。
【００５７】
自己推進デバイス５１４を、種々の形式で実装することができる。例えば、自己推進デバイス５１４は、回転、および／またはスピンなどの他の動作を実行することができる球形の対象に相当することができる。変形形態では、自己推進デバイス５１４は、飛行機、ヘリコプター、ホバークラフト、または気球などの無線制御航空機に相当することができる。他の変形形態では、自己推進デバイス５１４は、ボートまたは潜水艦などの無線制御船に相当することができる。自己推進デバイス５１４がロボットであるなどの、多数の他の変形形態をも実装することができる。
【００５８】
さらに、自己推進デバイス５１４は、外囲器の内部でアクチュエータの動作よる指向性動作が可能な、ほぼ球形の形状にある、密封された空洞筐体を含むことができる。
【００５９】
図５をさらに参照して、ネットワーク通信リンク５１０および５１２を使用して、コントローラデバイス５０８と通信するように自己推進デバイス５１４を構成することができる。リンク５１０は、コントローラデバイス５０８から自己推進デバイス５１４にデータを転送することができる。リンク５１２は、自己推進デバイス５１４からコントローラデバイス５０８にデータを転送することができる。リンク５１０および５１２は、例示のために別個の単一指向性リンクとして示される。例として、単一の双指向性通信リンクは両方の方向で通信を実行する。リンク５１０およびリンク５１２は、必ずしもタイプ、帯域幅または容量において同一ではない。例えば、コントローラデバイス５０８から自己推進デバイス５１４への通信リンク５１０は、リンク５１２と比較して、より高い通信速度および帯域幅が可能であることが多い。一部の状況では、リンク５１０または５１２の１つのみが確立される。そのような例では、通信は単一指向性である。
【００６０】
コントローラデバイス５０８は、少なくともプロセッサ、および自己推進デバイス５１４との単一指向性通信を少なくとも確立するのに適切な通信機能を備えた任意のデバイスに相当することができる。そのようなデバイスの例は、モバイルコンピューティングデバイス（例えば、スマートフォンなどの多機能メッセージング／音声通信デバイス）、タブレットコンピュータ、ポータブル通信デバイスおよびパーソナルコンピュータを含むが、それらに限定されない。例えば、コントローラデバイス５０８は、Ｃｕｐｅｒｔｉｎｏ、ＣａｌｉｆｏｒｎｉａのＡＰＰＬＥ  ＣＯＭＰＵＴＥＲ，ＩＮＣ．から利用可能なＩＰＨＯＮＥである。別の例では、コントローラデバイス５０８は、またＡＰＰＬＥ  ＣＯＭＰＵＴＥＲからのＩＰＡＤタブレットコンピュータである。さらなる他の例では、コントローラデバイス５０８は、ＧＯＯＧＬＥ，ＩＮＣ．からのＡＮＤＲＯＩＤ（登録商標）オペレーティングシステムを実行するハンドヘルドコンピューティングおよび通信機器のいずれかである。
【００６１】
他に、コントローラデバイス５０８は、ラップトップまたはデスクトップ構成のいずれかのパーソナルコンピュータとすることができる。例えば、コントローラデバイス５０８は、自己推進デバイス５１４と通信するように適切なアプリケーションプログラムで構成された、ＭＩＣＲＯＳＯＦＴ  ＷＩＮＤＯＷＳ（登録商標）オペレーティングシステム、ＬＩＮＵＸ（登録商標）オペレーティングシステム、またはＡＰＰＬＥ  ＯＳ／Ｘオペレーティングシステムを実行する、多目的コンピューティングプラットフォームとすることができる。
【００６２】
変形形態では、コントローラデバイス５０８は、ユーザ５０２が自己推進デバイス５１４を制御し、および自己推進デバイス５１４と対話することを可能にするために専用化された特殊デバイスとすることができる。
【００６３】
さらに、自己推進デバイス５１４と通信するために、複数のタイプのコントローラデバイス５０８を交換可能に使用することができる。追加、または代替として、自己推進デバイス５１４は、複数のデバイスと通信することが可能であり、および／または複数のデバイスによって制御されることが可能であってもよい（例えば、同時に、または１つずつ）。例えば、自己推進デバイス５１４は、デバイス５１４を修正することなく、１つのセッションでＩＰＨＯＮＥとリンクされ、後のセッションでＡＮＤＲＯＩＤ（登録商標）デバイスとリンクされることが可能であってもよい。
【００６４】
したがって、ユーザ５０２は、自己推進デバイス５１４を制御し、および／または自己推進デバイス５１４からコントローラデバイス５０８上でフィードバックもしくは対話を受信するために、コントローラデバイス５０８を介して自己推進デバイス５１４と対話することができる。さらに、ユーザ５０２は、コントローラデバイス５０８に提供される種々の機構を通じてユーザ入力５０４を指定することができる。そのような入力の例は、テキスト入力、音声コマンド、感知面もしくはスクリーンに触れること、物理的な操作、ジェスチャ、タップ、揺らすこと、および上記の組み合わせを含む。
【００６５】
ユーザ５０２は、フィードバック５０６を受信するために、コントローラデバイス５０８と対話することができる。ユーザ入力に応答して、コントローラデバイス５０８上で、フィードバック５０６を生成することができる。代替、または追加として、フィードバック５０６はまた、例えば、自己推進デバイス５１４の位置または状態に関する、自己推進デバイス５１４からコントローラデバイス５０８に通信されるデータに基づいてもよい。限定されることなく、フィードバック５０６の例は、テキスト表示、グラフィカル表示、音声、音楽、音調パターン、色もしくは光強度の変調、触覚、振動または触覚刺激を含む。フィードバック５０６は、コントローラデバイス５０８上で生成される入力と組み合わされてもよい。例えば、コントローラデバイス５０８は、自己推進デバイス５１４から通信される位置または状態情報を反映するように修正することができるコンテンツを出力することができる。
【００６６】
例として、ユーザ入力５０４およびフィードバック５０６が、感知、思考、知覚、モータ、または他の能力が限定されたユーザ５０２に対する有用性および近接性を最大化するように、コントローラデバイス５０８および／または自己推進デバイス５１４を構成することができる。これによって、ハンディキャップまたは特別な支援を有するユーザが、説明されたシステム５００を操作することが可能になる。
【００６７】
図５に示される構成は、通信接続を有する自己推進デバイス５１４を含む、ネットワークのほとんど無制限の数の考えられる構成のうちの１つのみとすることができる。さらに、本明細書で説明される多数の変形形態は、自己推進デバイスを制御し、および／または自己推進デバイスと対話するために、ユーザがコントローラデバイス５０８を操作し、または直接インタフェースすることを備えるが、説明される変形形態は、コントローラデバイス５０８などの中間デバイスの使用なしに、ユーザが自己推進デバイス５１４を直接制御し、または自己推進デバイス５１４と対話することを可能にすることを含む。
【００６８】
図６は、自己推進球形デバイス６００の動きを生じさせる例示的な技術を示す。図６の例によって示されるように、デバイス６００は、回転の中心６０２および質量の中心６０６を有し、デバイス６００は、平面６１２と接触する。ロボットデバイス６００に対する駆動機構は、デバイス６００の球形外囲器の内面と接触する２つの独立制御ホイールアクチュエータ６０８を備える。また、センサプラットフォーム６０４が示される。デバイス６００の幾つかの構成要素は、例示を簡易にするために図６には示されない。
【００６９】
一定の速度での持続的な動きを達成するために、ホイールアクチュエータ６０８の動作によって、回転の中心６０２に対する質量の中心６０６の変位を維持することができる。回転の中心６０２に対する質量の中心６０６の変位は測定することが困難であり、よって、閉ループコントローラに対するフィードバックを取得して一定の速度を維持することが困難である。しかしながら、変位は、センサプラットフォーム６０４と面６１２との間の角度６１０に比例する。本明細書で説明されるように、角度６１０を種々のセンサ入力から感知または推定することができる。したがって、面６１２に渡って一定の速度でロボットデバイス６００を移動させるホイールアクチュエータ６０８に対する速度を制限するために、デバイス６００に対する速度コントローラを、角度６１０を使用するように実装することができる。速度コントローラは、所望の速度を生成するために所望の角度６１０を判定することができ、および所望の角度の設定点を、駆動機構を制限する閉ループコントローラへの入力として設けることができる。
【００７０】
図６は、速度制御のための角度測定の使用を示す。しかしながら、技術はさらに、適切に感知された角度および角速度のフィードバックと共に、転換および回転の制御を提供するように拡張されてもよい。
【００７１】
上述したことから、変形形態では、自己推進デバイス６００を制御するために方位角度の知ることが有益であることを理解することができる。デバイスの方位を測定することはまた、他のデバイスのナビゲーションおよび他のデバイスとの位置合わせに有益であることがある。
【００７２】
図７は、センサ配列およびデータの流れを示す例示的なブロック図である。図７を参照して、センサ配列７１２は、自己推進デバイスに、例えば、その位置、方位、移動の速度、回転、および加速を含む情報を提供するためのセンサの組を含むことができる。多くの他のセンサを、種々の例において要件を満たすために含むことができる。
【００７３】
変形形態では、センサ配列７１２は、３軸ジャイロセンサ７０２、３軸加速度計センサ７０４、および３軸磁力計センサ７０６を含むことができる。幾つかの変形形態では、グローバルポジショニングシステム（ＧＰＳ）に対する受信機が含まれる７１０。しかしながら、ＧＰＳ信号は一般的に室内では利用可能でなく、よって、ＧＰＳ受信機を省略することができる。
【００７４】
サイズおよびコストが制限されることから、センサ配列７１２におけるセンサは、微小電気機械（ＭＥＭＳ）技術を採用する小型化デバイスとすることができる。それらのセンサからのデータは、正確な状態推定値７１６を生成するフィルタリングおよび処理が必要となることがある。センサ統合および状態推定器７１４に種々のアルゴリズムを採用することができる。それらのアルゴリズムを、自己推進デバイス上のプロセッサによって実行することができる。
【００７５】
当業者は、センサ配列７１２におけるセンサからの信号が、雑音、干渉、および安価なセンサの制限された能力によって不完全であり、および歪むことがあることを理解するであろう。しかしながら、センサはまた、適切なセンサ統合および状態推定器の処理７１４のアプリケーションが、自己推進デバイスの真の状態の適切な状態推定値７１６を提供することができるように、冗長な情報を提供することができる。
【００７６】
例えば、多くの状況では、磁気探知器データが、近くの浮遊磁場および鉄類によって歪められる。自己推進デバイスの状態の推定（７１６）において、不良または疑わしい磁気探知器データを拒絶し、および残りのセンサに依存するようにセンサ統合および状態推定器７１４を構成することができる。一部の例では、所望の目的でセンサデータを改善するために自己推進デバイスの特定の動作を使用することができる。例えば、局地的な磁場をマッピングするために、磁気探知器データを監視している間に全３６０度進む湾曲運動を通じて自己推進デバイスを回転させることが有益であることがある。場は一般的に短期間の間に比較的不変であるため、局地的な場測定が繰り返され、よって、歪められる場合でさえ、有益である。
【００７７】
アーキテクチャ
図８は、自己推進デバイス８１０、ならびに自己推進デバイス８１０を制御し、および自己推進デバイス８１０と対話するコントローラデバイス８５０を含む例示的なシステムを示す。自己推進デバイス８１０を、図１の例によって説明されたようなハードウェアリソースを使用して構築することができる。したがって、自己推進デバイス８１０は、図２〜４に関する例によって説明されたような球形の対象とすることができる。コントローラデバイス８５０は、モバイルコンピューティングデバイス（例えば、スマートフォン）、タブレット、またはパーソナルコンピュータなどの多機能デバイスとすることができる。代わりに、コントローラデバイス８５０は、自己推進デバイス８１０を制御し、および自己推進デバイス８１０と通信することに専用化された特殊デバイスに相当することができる。
【００７８】
自己推進デバイス８１０は、プログラムライブラリ８２０に記憶された１つ以上のプログラム８１６を実行することができる。プログラムライブラリ８２０における各々のプログラム８１６は、デバイスが特定の条件にどのように応答し、デバイスが制御入力８１３（例えば、コントローラデバイス８５０上で入力されたユーザ入力）にどのように応答するかの命令、および／またはデバイスが実行される動作のモード（例えば、自立に対する制御モードなど）を含む、デバイスを動作させるための命令またはルールを含むことができる。
【００７９】
プログラムライブラリ８２０はまた、一部のユーザ入力が共通の方式で解釈されることを可能にする命令を含む、複数のプログラムによって共有することができる命令セットを維持することができる。プログラムがデバイスの関数およびリソースのライブラリにアクセスすることを可能にするために、アプリケーションプログラムインタフェース（ＡＰＩ）８３０をデバイス８１０上で実行することができる。例えば、ＡＰＩ８３０は、モータ制御（例えば、速度または方向）、状態遷移、センサデバイス解釈、および／または無線通信を実行するプログラムで使用することができる関数を含むことができる。
【００８０】
幾つかの実装形態では、デバイス８１０は、無線通信ポート８１２の使用を通じてプログラムおよびプログラミング命令を無線で受信することができる。変形形態では、デバイス８１０は、拡張ポート１２０（図１を参照）などの他のポートを介して、外部ソース８８０からプログラムおよびプログラミング命令８８２を受信することができる。プログラムリソースは、例えば、デバイスのユーザに提供される媒体（例えば、ＳＤカード）、プログラムをダウンロードすることができるネットワークリソースもしくはウェブサイト、ならびに／またはコントローラデバイス８５０から無線通信ポート８１２を介して通信されるプログラムおよび／もしくは命令セットから発生することができる。幾つかの実装形態では、ソフトウェアで自己推進デバイス８１０と対話し、および／または自己推進デバイス８１０を制御するように、コントローラデバイス８５０をプログラムで構成することができる。構成されると、コントローラデバイス８５０は、そのプログラムの構成と一致する命令を自己推進デバイス８１０に通信することができる。例えば、コントローラデバイス８５０は、自己推進デバイス８１０を制御し、または自己推進デバイス８１０と対話するアプリケーションをダウンロードすることができる。コントローラデバイス８５０において固有の無線通信機能（例えば、セルラ機能、Ｗｉ−Ｆｉ機能など）を使用して、例えば、ネットワークから（例えばＡｐｐ  Ｓｔｏｒｅから）、またはウェブサイトから、アプリケーションをダウンロードすることができる。コントローラデバイス８５０によってダウンロードされるアプリケーションは、自己推進デバイス８１０に通信することができる命令セットを含むことができる。
【００８１】
コントローラデバイス８５０は、自己推進デバイス８１０と通信もしくは対話し、および／または自己推進デバイス８１０を制御することに専用化され、またはそれらに特有のプログラム８５６を実行することができる。変形形態では、コントローラデバイス８５０上で実行するプログラム８５６は、自己推進デバイス８１０上で実行することができる対応プログラム８１６Ａを含むことができる。プログラム８５６、８１６Ａは、共有プラットフォームまたはシステムとして実行することができる。例えば、以下で説明されるように、コントローラデバイス８５０上で動作するプログラム８５６は、対応ランタイムプログラム８１６Ａと協調して、自己推進デバイス８１０からのデータ信号に基づいて、自己推進デバイス８１０に対する入力を生成し、およびコントローラデバイス８５０上で出力を生成することができる。例えば、プログラム８５６は、（ｉ）自己推進デバイス８１０からの一部の予想される出力をもたらす、対応ランタイムプログラム８１６Ａの結果として自己推進デバイス８１０上で解釈可能な入力をユーザが提供するための案内を促し、または提供し、および（ｉｉ）コントローラデバイス８５０上で動作するプログラム８５６によって出力されるコンテンツに作用する方式で、自己推進デバイス８１０からフィードバック８１８を受信する、ユーザインタフェース８６０を生成することができる。後者の場合、例えば、コンピュータ生成コンテンツを、自己推進デバイス８１０の位置または動作に基づいて変更することができる。
【００８２】
特に、コントローラデバイス８５０上で、プログラム８５６は、コントローラデバイス上でユーザ入力を促し、および／または解釈するためのロジック８６２を含む、ユーザインタフェース８６０を設けることができる。種々の形式の入力を、特定の方式で、例えば、機械スイッチもしくはボタンでのユーザ対話、タッチスクリーン入力、音声入力、ジェスチャ入力、またはデバイスの動作を含む、コントローラデバイス８５０上で入力することができる。
【００８３】
したがって、デバイスの種々のリソースを利用して、入力を受信および処理するために、コントローラデバイス８５０上で固有のアプリケーションプログラムインタフェースを利用するようにプログラム８５６を構成することができる。多くの既存の多機能または汎用コンピューティングデバイス（例えば、スマートフォンまたはタブレット）を、タッチスクリーン入力（例えば、マルチタッチ入力もしくはジェスチャ入力）、光入力（例えば、カメラ画像感知入力）、音声入力およびデバイス動作入力（例えば、デバイス全体を揺らし、もしくは移動させること）を含む、多種類の入力を検出するように構成することができる。ユーザインタフェース８６０は、特定の種類の入力（例えば、ユーザが指を置くべき視覚マーカを含み、デバイスを移動させることをユーザに指示し、または視覚および／もしくは音声プロンプトをユーザに提供するなど）をユーザに促し、ならびに入力を、自己推進デバイス８１０にシグナリングされる制御情報に解釈するロジック８６２を含むことができる。
【００８４】
一部の実装形態では、コントローラデバイス８５０上で生成された入力をコマンドとして解釈することができ、次いで、自己推進デバイス８１０にシグナリングすることができる。他の実装形態では、コントローラデバイス８５０上で入力された入力を、自己推進デバイス８１０上のプログラムリソースによるコマンドとして解釈することができる。コマンドの形式のユーザ入力を解釈することによって、自己推進デバイス８１０は、インテリジェント、かつ構成可能である形式で、ユーザ入力に応答することができる。例えば、自己推進デバイス８１０は、指向性でない方式で、本来的に指向性であるユーザ入力を解釈することができる。例えば、ユーザは、ユーザ入力における固有の方向とは異なる方式で自己推進デバイス８１０を移動させるために、方向に対応するジェスチャ入力を入力することができる。例えば、ユーザは、停止、回転、帰宅、または照明出力などを変更するコマンドとしてデバイスが解釈することができる（ランタイムプログラム８１６Ａに基づいて）左手のジェスチャを入力することができる。
【００８５】
ユーザインタフェース８６０はまた、自己推進デバイス８１０から受信されるデータを解釈する出力ロジック８６４を含むことができる。そのようにして、自己推進デバイス８１０は、状態情報および／または位置情報（例えば、デバイスが移動するときの後など）などの情報をコントローラデバイス８５０に通信することができる。一実装形態では、コントローラデバイス８５０上でユーザ入力から解釈されるコマンドに応答して、自己推進デバイス８１０からコントローラデバイス８５０に通信が行われてもよい。別の実装形態では、持続期間の間にデバイスの持続的な移動の結果として生成される持続的なフィードバックの形式で、自己推進デバイス８１０から通信が行われてもよい。変形形態では、デバイス８５０上の出力は、種々の考えられる形状因子のうちの１つを有するコントローラデバイスに相当することができる。プログラム８５６は、自己推進デバイス８１０を制御するためのゲームコンテキストおよび／または異なるユーザ−インタフェースパラダイムをグラフィカルに提供するようにインタフェースを構成することができる。プログラム８５６は、自己推進デバイス８１０の動作、位置、または状態に基づいて、それらの実装形態において生成されたコンテンツに直接作用するように動作することができる。
【００８６】
動作において、自己推進デバイス８１０は、そのプログラムライブラリ８２０に記憶されたプログラム命令の１つ以上の組を使用してプログラムランタイム８１６Ａを実行することができる。プログラムランタイム８１６Ａは、例えば、ユーザによって選択されるプログラム、あるいはデフォルトで実行され、または一部の他の条件もしくはトリガに応答して実行される１つに相当することができる。他の機能の中で、プログラムランタイム８１６Ａは、（ｉ）コントローラデバイス８５０からの制御入力を解釈し、（ｉｉ）入力の解釈に基づいて、デバイス動作を制御および示し、ならびに／または（ｉｉｉ）自己推進デバイス８１０からコントローラデバイス８５０に情報を通信する、ためにデバイスの機能およびリソースを利用するプログラム特有命令の組を実行することができる。
【００８７】
プログラムランタイム８１６Ａは、センサ制御ロジック８２１および入力制御ロジック８２３を含む、駆動制御ロジック８３１を実行することができる。センサ制御ロジック８２１は、自己推進デバイスの駆動システムまたは装置の速度、方向、または他の動作を制御するためのデバイスセンサ入力８１１を解釈することができる。センサ入力８１１は、自己推進デバイス８１０の加速度計、磁気探知器、および／またはジャイロスコープから提供されるなどのデータに相当することができる。センサデータはまた、ＧＰＳデータ、温度データなどを含むデバイスの動作、位置、状態または動作条件に関する、デバイス上で取得される他の情報を含むことができる。プログラム８１６Ａは、センサ入力８１１を駆動装置制御パラメータ８２５として解釈するためのパラメータ、ルールまたは命令を実行することができる。入力制御ロジック８２３は、コントローラデバイス８５０から受信される制御入力８１３を解釈することができる。一部の実装形態では、ロジック８２３は、入力８１３から判定される駆動装置制御パラメータ８２５を出力する際に、入力をコマンドとして解釈することができる。入力駆動ロジック８２３はまた、制御入力８１３および／またはその解釈がランタイムプログラム８１６Ａに特有となるように、プログラム特有であってもよい。駆動装置制御ロジックは、駆動装置制御を実行するために、センサ／入力制御ロジック８２１、８２３を通じて生成されるようなパラメータを使用することができる。
【００８８】
変形形態では、自己推進デバイス８１０の他の態様を制御するために、センサ／入力制御ロジック８２１、８２３を使用することができる。変形形態では、センサ／入力制御ロジック８２１、８２３は、ユーザ入力またはデバイス動作条件（例えば、デバイスが停止することになる）などの一部の条件に応答して、デバイスの状態を制御することができる状態出力８２７を生成するランタイムプログラム８１６Ａの命令を実行することができる。例えば、照明出力（例えば、ＬＥＤ外部出力）、音声出力、またはデバイス動作状態（例えば、動作および／または電力状態のモード）は、状態出力８２７によって作用されてもよい。
【００８９】
加えて、ランタイムプログラム８１６Ａは、コントローラデバイス８５０上で動作する自己推進デバイスプログラム８５６に対する出力インタフェース８２６を生成することができる。出力インタフェース８２６は、フィードバック８１８を備えるデータを生成することができる。例えば、出力インタフェース８２６は、位置、動作（例えば、速度、回転）、状態（例えば、出力デバイスの状態）、および／または方位情報（例えば、初期の基準フレームに対するデバイスの位置および方位）に基づいたデータを生成することができる。出力インタフェース８２６はまた、例えば、ランタイムプログラム８１６Ａに関連する事象を識別するデータを生成することができる。例えば、出力インタフェース８２６は、デバイスがその動きにおいて破壊されること、または破壊的な事象に遭遇することなどの事象を識別することができる。出力インタフェース８２６はまた、例えば、ランタイムプログラム８１６Ａの命令に基づいて、プログラム特有出力を生成することができる。例えば、ランタイムプログラム８１６Ａは、別のプログラムが必要としないセンサ読込値を必要とすることがある。出力インタフェース８２６は、ランタイムプログラム８１６Ａの実行を通じて実行される他の動作と関連するセンサ読込値を取得するための命令を実行することができる。
【００９０】
さらに、自己推進デバイス８１０は、コントローラデバイス８５０に対する複数のモードで動作可能であってもよい。制御モードでは、コントローラデバイス８５０から通信される制御信号を介して、制御入力８１３によってその動作および／または状態において自己推進デバイス８１０を制御することができる。一部の実装形態では、自己推進デバイス８１０は、制御またはフィードバックするようにコントローラデバイス８５０上の動作に作用する方式で、コントローラデバイス８５０と対にすることができる。自己推進デバイス８１０はまた、例えば、センサ入力８１１に応答して、および制御入力８１３の必要なしに、制御パラメータ８２５がデバイス上でプログラムにより生成される自立モードで動作可能であってもよい。さらに、自己推進デバイス８１０は、「接触および駆動」モードにあるコントローラデバイス８５０に沿って動作することができ、このモードでは、ユーザは、自己推進デバイス８１０の映像ストリーム上の選択された位置に触れることができ、および自己推進デバイス８１０は、対応する位置に自立的に誘導することができる。またさらに、変形形態では、自己推進デバイス８１０は、コントローラデバイス８５０または別の自己推進デバイス８１０のいずれかに対するコントローラとして動作することができる。例えば、デバイスは、コントローラデバイス８５０の状態に作用するように移動することができる。デバイスは、１つの動作セッションの間に複数のモードで動作することができる。動作のモードをランタイムプログラム８１６Ａによって判定することができる。
【００９１】
自己推進デバイス８１０は、コントローラデバイス８５０からの制御入力８１３を解釈するための命令セットのライブラリを含むことができる。例えば、自己推進デバイスは、複数のプログラムに対する命令を記憶することができ、およびプログラムの少なくとも一部に対する命令は、コントローラデバイス８５０上で実行する対応プログラムを含むことができる。自己推進デバイス上で維持されるライブラリは、記憶された命令を追加、削除、または修正することができるという点で、動的とすることができる。例えば、自己推進デバイスに記憶されたプログラムを追加することができ、または別のプログラムを修正することができる。
【００９２】
コントローラデバイス８５０上で実行されるとき、各々のプログラムは、特定の組の入力を認識する命令を含み、異なるプログラムは、異なる入力を認識することができる。例えば、ゴルフプログラムは、コントローラデバイス８５０上のスイングの動きを入力として認識することができ、仮想ステアリング機構を提供することに専用化された別のプログラムによって、一部の動きを無視することができる。自己推進デバイス８１０上で実行されるとき、各々のプログラムは、特定の認識された入力と関連付けられた制御入力８１３を解釈し、または制御入力８１３をコマンドおよび制御パラメータにマッピングする命令を含むことができる。
【００９３】
変形形態では、自己推進デバイスは、そのプログラムライブラリを動的に再構成することを可能とすることができる。例えば、新たに認識される入力に対応する制御入力８１３を処理するようにプログラムを修正することができる（例えば、コントローラデバイス８１０によって受信される命令を通じて）。別の例として、自己推進デバイス８１０は、自己推進デバイス８１０が使用中の間にプログラムを切り替えることが可能であってもよい。プログラムが切り替えられるとき、異なる組の入力を認識することができ、および／または各々の入力を、自己推進デバイス８１０上で異なって解釈することができる。
【００９４】
接触および駆動方法
図９は、自己推進デバイスを動作させる例示的な方法を示すフローチャートである。図９を参照して、コントローラデバイスのユーザ（例えば、スマートフォン、テーブル、リモート制御、または他のモバイルコンピューティングデバイス）は、自己推進デバイスから画像または映像供給を受信することができる。自己推進デバイスは、本来的には球形である必要はないが、むしろ、本明細書で説明されたコントローラデバイスによって制御することが可能な任意のデバイスとすることができる。自己推進デバイスは、他の機能の中で、透明球形筐体、筐体内に配置されたカメラ、および映像供給をコントローラデバイスにストリーミングすることができる無線リンクを含むように構成されてもよい。このようにして、コントローラデバイスは、自己推進デバイス内に配置されたカメラから供給を受信することができる（９００）。さらに、コントローラデバイスは、供給をコントローラデバイス上で表示することができるように（９０２）ディスプレイスクリーンを含むことができる。コントローラデバイスは、ユーザが表示された供給と直接対話することを可能にするタッチスクリーン機能を含むことができる。
【００９５】
次いで、ユーザは、表示された映像供給上の対象または位置ポイントを選択することができる。したがって、位置ポイントのユーザ選択は、コントローラデバイスによって受信される（９０４）。ユーザは、自己推進デバイスの基準のフレームにおける物理的な対象に対応するスクリーン上の対象に触れることによって、位置ポイントを選択することができる。追加、または代替として、ユーザは、表示されている対象を識別する音声コマンドを提供することができる。ユーザによる選択を受信すると、コントローラデバイスは、次いで、自己推進デバイスへの位置情報（それを物理的な位置ポイントに移動させる（９０８））に基づいて、コマンド信号を生成することができる。自己推進デバイスは、対象に直接移動することができ、また最終的に対象の位置に到達するために障害物の周囲で誘導を実行することができる。
【００９６】
追加、または代替として、コントローラデバイスはさらに、ユーザの基準フレーム、および／またはコントローラデバイスの基準フレームに基づいて、ディスプレイスクリーン上に示された対象の位置を判定するように構成されてもよい。コントローラデバイスはまた、コントローラデバイス上に表示された位置ポイントの相対位置を、自己推進デバイスの基準フレームにおける位置ポイントの位置とマッピングすることができる（９０６）。このようにして、画像／映像供給を介して、マッピングされた相対位置に基づいて、対象の位置に移動するように、自己推進デバイスをコントローラデバイスによって案内することができ、そこでは、コントローラデバイスは、相対位置を算出する処理手段を含むことができる。
【００９７】
結論
本明細書で説明される１つ以上の例は、コンピューティングデバイスによって実行される方法、技術、および動作が、プログラムで実行され、またはコンピュータにより実行される方法として実行されることを規定する。プログラムでとは、コードまたはコンピュータ実行可能命令の使用によることを意味する。プログラムで実行されるステップは、自動であってもよく、または自動でなくてもよい。
【００９８】
本明細書で説明される１つ以上の例を、プログラムモジュールまたはコンポーネントを使用して実装することができる。プログラムモジュールまたはコンポーネントは、１つ以上の定められたタスクまたは機能を実行することが可能な、プログラム、サブルーチン、プログラムの一部、またはソフトウェアコンポーネントもしくはハードウェアコンポーネントを含んでもよい。本明細書で使用されるように、モジュールまたはコンポーネントは、他のモジュールまたはコンポーネントと独立してハードウェアコンポーネント上に存在することができる。代わりに、モジュールまたはコンポーネントは、共有された要素、または他のモジュール、プログラムもしくは機械の処理とすることができる。
【００９９】
さらに、本明細書で説明される１つ以上の例は、１つ以上のプロセッサによって実行可能な命令の使用を通じて実装されてもよい。それらの命令は、コンピュータ可読媒体上で搬送されてもよい。図で示され、または説明された機械は、以下で、本発明の例を実装する命令を搬送および／または実行することができる、処理リソースおよびコンピュータ可読媒体の例を提供する。特に、本発明の例で示される多数の機械は、プロセッサ、ならびにデータおよび命令を保持する種々の形式のメモリを含む。コンピュータ可読媒体の例は、パーソナルコンピュータまたはサーバ上のハードドライブなどの永続的メモリ記憶装置を含む。コンピュータ記憶媒体の他の例は、ポータブル記憶ユニット（ＣＤまたはＤＶＤユニット）、フラッシュメモリ（多くの携帯電話およびタブレットに持ち込まれるなど））、および磁気メモリを含む。コンピュータ、端末、ネットワーク対応デバイス（例えば、携帯電話などのモバイルデバイス）は全て、プロセッサ、メモリおよびコンピュータ可読媒体に記憶された命令を利用する機械およびデバイスの例である。加えて、例は、コンピュータプログラム、またはそのようなプログラムを搬送することが可能なコンピュータ使用可能な搬送媒体の形式で実装されてもよい。
【０１００】
添付図面を参照して、示された例を本明細書で詳細に説明したが、特定の例および詳細への変形が本開示に含まれる。本発明の範囲は、以下の特許請求の範囲、およびその均等物によって定義されることを意図する。さらに、個々にまたは例の一部としてのいずれかで説明された特定の特徴を、個々に説明された他の特徴、または他の例の一部と組み合わせることができる。よって、組合せの説明がないことによって、本発明者がそのような組み合わせに対する権利を主張することが排除されるべきではない。
【０１０１】
本発明の幾つかの例を上記説明したが、説明された例は、例としてのみに過ぎないことが理解されよう。したがって、本発明は、説明された例に基づいて限定されるべきではない。むしろ、本明細書で説明された本発明の範囲は、上記の説明および添付図面と併せて考慮されるときに、続く特許請求の範囲に照らしてのみ限定されるべきである。
【図１】
2016525973.tif 000003
【図２Ａ】
2016525973.tif 000004
【図２Ｂ】
2016525973.tif 000005
【図２Ｃ】
2016525973.tif 000006
【図３】
2016525973.tif 000007
【図４】
2016525973.tif 000008
【図５】
2016525973.tif 000009
【図６】
2016525973.tif 000010
【図７】
2016525973.tif 000011
【図８】
2016525973.tif 000012
【図９】
2016525973.tif 000013
【国際調査報告】
2016525973.tif 000014
2016525973.tif 000015