JP6065077B2 - ロボットによる物体手渡しシステム - Google Patents
ロボットによる物体手渡しシステム Download PDFInfo
- Publication number
- JP6065077B2 JP6065077B2 JP2015183252A JP2015183252A JP6065077B2 JP 6065077 B2 JP6065077 B2 JP 6065077B2 JP 2015183252 A JP2015183252 A JP 2015183252A JP 2015183252 A JP2015183252 A JP 2015183252A JP 6065077 B2 JP6065077 B2 JP 6065077B2
- Authority
- JP
- Japan
- Prior art keywords
- user
- data
- robot
- candidate
- zone
- 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.)
- Expired - Fee Related
Links
- 238000004088 simulation Methods 0.000 claims description 92
- 238000000034 method Methods 0.000 claims description 67
- 238000011156 evaluation Methods 0.000 claims description 54
- 230000009471 action Effects 0.000 claims description 25
- 238000001914 filtration Methods 0.000 claims description 14
- 238000004891 communication Methods 0.000 description 60
- 230000015654 memory Effects 0.000 description 42
- 230000006870 function Effects 0.000 description 14
- 230000008569 process Effects 0.000 description 11
- 238000012544 monitoring process Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 210000004247 hand Anatomy 0.000 description 8
- 230000003068 static effect Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 230000005484 gravity Effects 0.000 description 4
- 230000007704 transition Effects 0.000 description 4
- 239000013598 vector Substances 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 230000006378 damage Effects 0.000 description 3
- 230000036541 health Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 3
- 210000000707 wrist Anatomy 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000007621 cluster analysis Methods 0.000 description 2
- 210000002683 foot Anatomy 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 239000004984 smart glass Substances 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 206010017577 Gait disturbance Diseases 0.000 description 1
- 206010052904 Musculoskeletal stiffness Diseases 0.000 description 1
- 206010044565 Tremor Diseases 0.000 description 1
- 208000027418 Wounds and injury Diseases 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 210000003423 ankle Anatomy 0.000 description 1
- 230000000454 anti-cipatory effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000037237 body shape Effects 0.000 description 1
- 210000001217 buttock Anatomy 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000035622 drinking Effects 0.000 description 1
- 210000003414 extremity Anatomy 0.000 description 1
- 230000008921 facial expression Effects 0.000 description 1
- 208000014674 injury Diseases 0.000 description 1
- 210000003127 knee Anatomy 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 210000003205 muscle Anatomy 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000002366 time-of-flight method Methods 0.000 description 1
- 210000000689 upper leg Anatomy 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
- B25J9/163—Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40409—Robot brings object near operator, operator places object in correct position
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40413—Robot has multisensors surrounding operator, to understand intention of operator
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
- Accommodation For Nursing Or Treatment Tables (AREA)
Description
本出願は、"ANTICIPATORY ROBOT NAVIGATION"と題され、2014年9月12日に出願
された、米国特許出願第14/485,526号の記載内容を援用する。
また、本出願は、"ROBOTIC HANDOVER SYSTEM NATURAL FOR HUMANS"と題され、2014年9月30日に出願された、米国特許出願第14/502,951号の優先権を主張する。当該出願は、その全体が本明細書中に参照として組み込まれる。
しかし、静的な環境において、ロボットが物体を持ちあげ、置くための処理は緩慢であり、当該処理を、ロボットとユーザとの間で行われる物体の手渡しに利用しようとすると、効率が悪い。
具体的には、ロボットを用いて、ユーザ環境内に位置するユーザに物体を手渡すシステムが実行する方法であって、前記ユーザ環境内にある地点にユーザが手を伸ばした場合における、当該ユーザの関節にかかるモーメントを表したデータであるシミュレーションデータを取得するシミュレーションデータ取得ステップと、前記シミュレーションデータを分析し、前記ユーザが、前記ユーザ環境内の三次元座標に手を伸ばした場合における、当該ユーザの関節にかかるモーメントを表す値を、前記三次元座標と関連付ける評価ステップと、前記三次元座標に関連付いた値に基づいて、前記ユーザ環境内において前記ロボットが前記ユーザに物体を手渡す領域の候補である候補ゾーンを生成する、候補ゾーン生成ステップと、を含むことを特徴とする。
具体的には、ロボットを用いて、ユーザ環境内に位置するユーザに物体を手渡すシステムが実行する方法であって、前記ユーザ環境内において前記ロボットが前記ユーザに物体を手渡す領域の候補である複数の候補ゾーンを生成する、候補ゾーン生成ステップと、前記候補ゾーンにて物体を手渡した場合におけるリスクまたは快適性を評価し、当該評価の結果に基づいて、前記候補ゾーンをフィルタリングするフィルタリングステップと、フィルタリング後の候補ゾーンに基づいて、前記ロボットが前記物体を前記ユーザに手渡しする際にとる姿勢である物体移動ポーズを決定する決定ステップと、前記物体移動ポーズに基づいて、ロボットの駆動を行う駆動ステップと、を含むことを特徴とする。
デジタルデータとは、例えば、ネットワークサービスデータ、連結性マップデータ、移動(journey)データ、ユーザプロファイルデータ、時刻同期データ、移動履歴データ、
嗜好階層データ、デッドゾーンデータ、ナビゲーション地図データ、メッシュネットワークデータ、速度データ、二つ以上の構成要素(サーバ、車両システム、モバイルデバイス、クライアントデバイス等)によって共有されるデータ、当該二つ以上の構成要素間で転送されるデータなどであるが、これらに限られない。
例えば、ロボットは、ユーザ情報や、医学的な事情を考慮して、物体をユーザに手渡すことができる。
ユーザに対する物体の手渡しは、ユーザに固有な一つ以上のユーザモデルに基づいて行うことができる。例えば、ユーザモデルは、3次元、非対称モーメント、ユーザがロボットから物体を受け取ろうとした際のユーザの関節における力の分散をシミュレーションするためのモデルであって、ユーザの身長や体重に基づくものであってもよい。
などを正確に考慮できるようプログラムされていてもよい。
例えば、ロボットがユーザに対して、一本のボトルに入った水を渡すものとする。
ロボットは、ユーザがロボットから水のボトルを取るために、どの程度の労力を要するかを判定および考慮するようにプログラムされてもよい。
このようなシナリオでは、ロボットは、ユーザがかける労力の最小化と、手渡しに要する時間とのバランスを取れる最適なポジションを決定するようにプログラムされる。
また、ユーザが、関節における動きの制限(例えば、怪我、筋肉の凝り、関節における筋力喪失、四肢の震え等)といった、特定の健康状態を有する場合、ロボットは、(1)これらの健康状態を判定し、(2)当該健康状態を考慮して、ユーザが物体を握れる最適な位置を決定するようプログラムされていてもよい。
また、ロボットは、ユーザの病状、現在の観察状況や、物理的な状況に基づいて、手渡しを直接行うべきか否かを決定するようにプログラムすることができる。もし、手渡しのリスクが高い場合や、手渡しが不可能である場合、ロボットは、ユーザが届く範囲に水のボトルを置くようにしてもよい。
一実施形態において、ロボットは、以下の情報に部分的に基づいて、物体移動ポーズを決定するようプログラムされる。
(1)ユーザの生体力学的な特性(例えば、ユーザの物理的・医学的なコンディション)(2)ユーザの周辺環境
(3)物体を受け取った後のユーザの動き
ロボットは、物体を受け取った、または掴んだ後のユーザの動きを推定するようにプログラムされてもよい。また、一実施形態において、ロボットは、物体を受け取った、または掴んだ後のユーザの動きを表す明示的な情報を取得してもよい。
図1は、ユーザ101に物体188を手渡すためのロボット190を用いたシステム100の、一実施形態におけるブロック図を例示したものである。
システム100は、信号線104を介してネットワーク105に接続されたサーバ107と、信号線188を介してネットワーク105に接続されたロボット190と、ユーザ101と、医療プロバイダ170を含む。
さらに、図1には、システム100の構成要素に接続された一つのネットワーク105が示されているが、実際には、様々なタイプの一つ以上のネットワーク105が、これらの構成要素に接続されていてもよい。
ワイドエリアネットワーク(WAN)(例えばインターネット)、または、複数の装置が通信に用いる相互接続されたその他の任意のデータパスであってもよい。さらに別の形態では、ネットワーク105はピアツーピアネットワークであってもよい。ネットワーク105は、複数の異なる通信プロトコルでデータ送信するための通信ネットワークと接続されたり、このような通信ネットワークを含んだりしてもよい。
ある実施形態では、ネットワーク105は、Bluetooth(登録商標)通信ネットワークや、携帯電話通信ネットワークを含み、SMS(ショートメッセージサービス)、MMS(マルチメディアメッセージサービス)、HTTP(ハイパーテキスト転送プロトコル)、直接データ接続、WAP、電子メールなどのデータを送受信する。
ある実施形態では、ネットワーク105は、ロボット190に対してGPSナビゲーションを提供するためのGPS衛星を含んでいてもよい。
また、ネットワーク105は、例えば、3G、4G、LTE、ボイスオーバーLTE(VoLTE)といったモバイルデータネットワーク、他のモバイルデータネットワーク、または、モバイルデータネットワークの組合せであってもよい。
一実施形態において、ネットワーク105は、異なるネットワークの組合せであってもよい。
一実施形態において、ユーザ101は、ロボット190のアシストを受ける高齢者または病人である。また、物体188は、任意の有形の物体である。ロボット190は、物体188をユーザ101に手渡すことで、ユーザ101に対するアシストを行うロボットである。
ロボット190は、実メモリに記憶され、プロセッサで実行されるプログラムによって可動部を動かすモータおよびコントローラを含んでいてもよい。
ロボット190は、ユーザ101に物体188を手渡すようにプログラムされる。
一実施形態において、ロボット190は、図3,図4,図5を参照して説明する、以下に記す方法300,方法400,方法500のいずれかのステップを実行するようにプログラムされた、専用のプロセッサベースのデバイスであってもよい。
例えば、ロボット190は、ラップトップコンピュータ、デスクトップコンピュータ、タブレットコンピュータ、携帯電話、個人情報端末(PDA)、モバイル電子メール装置、
携帯ゲームプレーヤ、携帯音楽プレーヤ、コネクテッドデバイスやウェアラブルコンピュータ(スマートウォッチ、スマートグラス、フィットネストラッカー等)、一つまたは複数のプロセッサを備えるテレビ受信機、自動車、ネットワーク105へアクセス可能なその他の電子機器などである。
一実施形態において、ロボット190は、自律走行車両または半自律走行車両であってもよい。
、LinkedIn(登録商標)、Tinder(登録商標)、QQ(登録商標)等)、マイクロブログ(例えばTwitter(登録商標)、Tumblr(登録商標)等)、オンラインチャット(例えばSnapChat(登録商標)、WhatsApp(登録商標)等)、オンラインコンテンツシェアリング(
例えばInstagram(登録商標)、Pinterest(登録商標)等)、Eメール(例えばGmail(
登録商標)、Outlook(登録商標)、Yahooメール(登録商標)等)、ファイル共有(例えばDropBox(登録商標)、GoogleDrive(登録商標)、MS One Drive(登録商標)、Evernote(登録商標)等)、カレンダとスケジュールサービス(例えばGoogle Calendar(登録
商標)、MS Outlook(登録商標)等)などである。
ポーズシステム199は、物体188をユーザ101に手渡す際のポーズである「物体移動ポーズ」を決定するためのコードおよびルーチンである。ポーズシステム199については、図2A〜図8を参照して後ほど詳しく説明する。
一実施形態において、ポーズシステム199は、その一部がロボット190に、その一部がサーバ107に格納されてもよい。
なお、図1には一つのセンサ196だけが示されているが、実際には、ロボット190は、複数のセンサ196を有していてもよい。
センサ196は、物理的な変化を感知する任意の装置である。例えば、センサ196は、ユーザ環境198内で発生している物理的な変化を検出する。センサ196は、ユーザ101を監視するのに用いられてもよい。また、ユーザ101の監視結果を表すセンサデータを、ネットワーク105を介して、ロボット190からゾーンシステム197に送信してもよい。また、ゾーンシステム197は、当該センサデータを解析し、ユーザ101に関する情報(以下、「ユーザ情報」または「ユーザの情報」と称する)を推定する機能を有していてもよい。
物体移動ポーズとは、物体188をユーザ101に手渡す際のロボット190の姿勢である。例えば、物体移動ポーズは、ロボットに、ユーザ環境198内の3次元または6次元空間上の地点(物体188をユーザ101に渡すのに最適または適した地点)に物体188を配置するための姿勢である。
物体をユーザに渡すのに最適または適した地点とは、ユーザ情報に適合した地点、および/または、ユーザ101の関節にかかるモーメントや力を最小限にする地点である。
ユーザ情報とは、以下のような、当該ユーザに関する情報などである。
・ユーザが物体188を受け取る際の姿勢
・ユーザが物体188を受け取りたいと考える、空間上の位置
・ユーザ101や医療プロバイダ170が考える、かかるモーメントや力をより小さくすべき、特定の関節または関節の組み合わせ
すなわち、ユーザ情報とは、ユーザにかかる負荷や、ユーザの快適性に影響を与える要
素に関する情報であるとも言える。
装置、携帯ゲームプレーヤ、携帯音楽プレーヤ、コネクテッドデバイスやウェアラブルコンピュータ(スマートウォッチ、スマートグラス、フィットネストラッカー等)、一つまたは複数のプロセッサを備えるテレビ受信機、車両、ネットワーク105へアクセス可能なその他の電子機器などである。
一実施形態において、ユーザデータ192は、一般的なユーザではなく、ロボット190の支援を受ける特定のユーザ101についての情報を表すデータである。
一実施形態において、ユーザデータ192は、以下のうちの一つ以上を表すデータである。
・ユーザ101の体重
・ユーザ101の身長
・ユーザ101が有する一つ以上の関節(例えば、肩、肘、手首、椎など)の可動範囲
・ユーザ101が有する関節の可動制限(例えば、図7B〜図7Eに示すような動き)
・ユーザ101についての一般的かつ明示的な情報
・ロボット190から物体188を受け取る際のユーザ101についての明示的な情報
・センサ196によるユーザ101の監視結果に基づいて推定されたユーザ101の情報・医療プロバイダ170から提供された情報に基づいて推定されたユーザ101の情報
・明示的な、または、ゾーンシステム197が推定した、ユーザ101に関する他の生体力学的なデータ
一実施形態において、ユーザデータ192は、図2Aを参照して以下に説明するデータ271〜276を含んでいる。
例えば、物体データ194は、物体188の物理的な寸法、物体188の密度、物体188の重心、物体188上のホットスポット(例えば、温度が90度以上、あるいは、明示的または推定されたユーザ101の情報によって特定された温度以上である物体上の領域やエリア等)、物体188上のコールドスポット(例えば、温度が10度、あるいは、明示的または推定されたユーザ101の情報によって特定された温度以下である物体上の領域やエリア等)、物体188の物理モデルや物体188上にある関心地点の位置(例えば、物体188が有する取手、物体188が容器である場合は開け口や取り出し口、鋭い場所、鋭いエッジ、柔らかい場所、柔らかいエッジの位置等)などを含む。
一実施形態において、ゾーンシステム197は、その一部がロボット190に、その一部がサーバ107に格納されてもよい。
ある実施形態では、ポーズシステム199やゾーンシステム197は、装置とサーバの両方に分散して格納されてもよいし、装置とサーバのいずれかのみに格納されてもよい。
次に、図2を参照して、ゾーンシステム197の例についてより詳しく説明する。
図2Aは、システム200のブロック図である。システム200は、図1に示したシステム100における、ロボット190およびサーバ107のいずれかである。また、システム200は、例として、ゾーンシステム197、第一のプロセッサ225、第一のメモリ227、第一の通信ユニット245を含んでいる。システム200が有する構成要素は、バス220によって通信可能に接続される。
なお、図2には、一つのゾーンシステム197、一つの第一のプロセッサ225、一つの第一のメモリ227、一つの第一の通信ユニット245が示されているが、実際は、システム200は、二つ以上のゾーンシステム197、二つ以上の第一のプロセッサ225、二つ以上の第一のメモリ227、二つ以上の第一の通信ユニット245を含んでいてもよい。
プロセッサ225は、バス220に接続され、信号線226を介して他の構成要素と通信する。
プロセッサ225は、データ信号を処理し、そのアーキテクチャは、CISC(Complex Instruction Set Computer)、RISC(Reduced Instruction Set Computer)、これら両方の命令セットの組合せとして実装されたアーキテクチャなど様々なアーキテクチャでありうる。なお、図2には一つのプロセッサ225だけが示されているが、複数のプロセッサ225が含まれていてもよい。上記以外のプロセッサ、オペレーティングシステム、センサ、表示装置、あるいは物理的構成も採用可能である。
第一のメモリ227は、DRAM、SRAM、フラッシュメモリやその他の既存のメモ
リ装置であってもよい。一実施形態において、第一のメモリ227は、ハードディスクドライブ、フロッピー(登録商標)ディスクドライブ、CD−ROM装置、DVD−ROM装置、DVD−RAM装置、DVD−RW装置、フラッシュメモリ装置や情報記憶の分野において既知のその他の大容量記憶装置などの、非一時的(non-volatile)メモリや永久記憶装置を含んでもよい。
また、ユーザ情報データ272は、医療プロバイダ170から提供された、ユーザ101に関する情報に基づくものであってもよい。また、ユーザ情報データ272は、ユーザ101を監視する一つ以上のセンサ196によって得られたセンサデータに基づくものであってもよい。また、ユーザ情報モジュール206は、ユーザ101についての情報を推定するため、当該センサデータを受信し、解析してもよい。
一実施形態において、ユーザ情報データ272は、ユーザ101についての、明示的あるいは推定された情報の組み合わせに基づいたものであってもよい。
ユーザモデルデータ274は、ユーザデータ192、物体データ194、センサ196が取得したセンサデータ等に基づいて、ゾーンシステム197が有するモデルモジュール208によって生成される。
ユーザモデルデータ274は、ユーザ101に対応する一つ以上のユーザモデルを表したものである。ユーザモデルデータ274によって表されたユーザモデルとは、ユーザ101を表した運動モデル(Kinematic model)、ユーザ101を表した生体力学モデル(Biomechanical model)、ユーザ101を表したリンクモデル(Link model)のうちの一つ以上である。
リーチシミュレーションデータ275は、センサ196が取得したセンサデータや、前述したデータ271〜274、これらの組み合わせに基づいて、シミュレーションモジュール210によって生成される。
例えば、リーチシミュレーションデータは、(1)一つ以上のセンサ196が行った監視結果や、医療プロバイダ170によって提供された情報から推定された、ユーザ101についての情報、(2)ユーザ101に対応する生体力学モデル、などに基づいて生成される。一実施形態において、リーチシミュレーションとは、リーチシミュレーションマップである。
例えば、第一の通信ユニット245は、システム100の他の構成要素と有線通信を行うためのUSB、SD、CAT−5または類似のポートを含む。
一実施形態において、や、これらの組み合わせを通信ユニット245は、IEEE802.11、IEEE802.16、BlueTooth(登録商標)、または他の適切な無線通信方式を含む、一つまたは複数の無線通信方式を用いて、システム100の他の構成要素や他の通信チャネルとデータを交換するための無線送受信部を含むことができる。
一実施形態において、通信ユニット245は有線ポートとワイヤレストランシーバを含む。
通信ユニット245は、TCP/IP、HTTP、HTTPS、SMTPなどを含む標準ネットワークプロトコルを用いて、ファイルやメディアオブジェクトを配布するために、ネットワーク105への従来型の接続を提供することもできる。
さらに、本実施形態で述べるコンポーネント、モジュール、サーバの分離は、全ての実施形態において必要とは限らないことを理解されるべきである。
一実施形態において、記載された構成要素、モジュール、装置またはサーバは、通常、一つの構成要素、モジュール、装置またはサーバに集積されることができる。
他の実施形態において、モジュール202,204,206,208,210,212のそれぞれは、第一のメモリ227に格納され、システムの第一のプロセッサ225によってアクセスされ、実行されてもよい。
モジュール202,204,206,208,210,212のそれぞれは、第一のプロセッサ225や、コンピュータ200の他の構成要素と協調や通信を行うように構成される。
一実施形態において、モジュール202,204,206,208,210,212のそれぞれは、格納され、システム200のプロセッサによって実行される一つ以上のシンクライアントとして機能してもよい。
一実施形態において、第一の通信モジュール202は、プロセッサ225で実行可能な一組の命令であり、通信を取り扱うために下記の機能を提供する。第一の通信モジュール202は、信号線222を介してバス220に通信可能に接続される。
例えば、第一の通信モジュール202は、ユーザ101についての明示的または推定された情報を表すセンサデータを、ロボット190から、通信ユニット245を介して受信する。
一実施形態において、第一の通信モジュール202は、ゾーンシステム197の構成要素間の通信を処理してもよい。例えば、第一の通信モジュール202は、ゾーンシステム197の一つのモジュールからデータを取得し、ゾーンシステム197の別のモジュールに送信する。
一実施形態において、第一の通信モジュール202は、センサデータ、ユーザデータ192、物体データ194や、これらの組み合わせを受信する。
ユーザデータ192は、特に、医療データ273や、ユーザ101の明示的な入力を表すデータである。一実施形態において、医療データ273は、医療プロバイダ170が行った記録を分析することで生成される。また、医療データ273は、医療プロバイダ170から電子的またはハードコピーで寄せられた、アンケートに対する回答をゾーンシステム197が分析することで生成してもよい。
これらの組み合わせに基づいて、ユーザの姿勢を表すデータである姿勢データ271を生成するためのルーチンを含むソフトウェアである。
例えば、姿勢モジュール204は、センサによって観察されたユーザ101の姿勢を表すセンサデータと、医療プロバイダ170によって観察されたユーザ101の姿勢を表す医療データ273を分析する。そして、姿勢モジュール204は、当該分析結果に基づいて、ユーザ101の姿勢を表すデータを生成する。
一実施形態において、姿勢モジュール204は、センサデータ、ユーザデータ192、医療データ273、ユーザ101の明示的な入力のうちの一つ以上を分析し、次のうちの一つ以上を決定する。
・ユーザ101の体重
・ユーザ101の身長
・ユーザ101の一つ以上の関節(例えば、ユーザ101の肩、肘、手首、椎などのうちの一つ以上)の可動範囲
・ユーザ101の関節の可動制限(例えば、図7B〜7Eに示すような動き)
・明示的な、あるいは、ゾーンシステム197によって推定された、ユーザ101に関する他の生体力学データ
一実施形態において、ユーザ情報モジュール206は、センサデータ、ユーザデータ192、物体データ194、医療データ273、ユーザ101の明示的な入力のうちの一つ以上を分析し、次のうちの一つ以上を決定する。
・ユーザ101の一般的かつ明示的な情報
・ロボット190から物体188を受け取る際のユーザ101についての明示的な情報
・センサ196が取得したユーザ101の監視結果に基づく、推定されたユーザ101の情報
・医療プロバイダ170から提供された情報に基づいて推定された、ユーザ101の情報
例えば、モデルモジュール208は、センサデータ、ユーザデータ192、(物体データ194によって示された)物体を扱う上での制約、医療データ273、ユーザ101の明示的な入力、姿勢データ271、ユーザ101の生物力学データ、ユーザ情報データ272や、これらの組み合わせに基づいて、ユーザモデルデータ274を生成する。
一実施形態において、モデルモジュール208は、センサデータ、ユーザデータ192、物体データ194、医療データ273、ユーザ101の明示的な入力のうちの一つ以上を分析して、以下のうちの一つ以上を生成する。
・ユーザ101の運動モデル
・ユーザ101の生体力学モデル
・ユーザ101のリンクモデル
例えば、ユーザモデルデータ274は、図6Aを参照して以下に説明する生体力学モデルを表すデータを含む。
例えば、ユーザモデルデータ274は、図6Bを参照して以下に説明するリンクモデルを表すデータを含む。
例えば、シミュレーションモジュール210は、センサデータ、ユーザデータ192、物体データ194、医療データ273、ユーザ101の明示的な入力、姿勢データ271、ユーザ情報データ272、ユーザモデルデータ274や、これらの組み合わせに基づいてユーザモデルデータ274を生成する。
一実施形態において、シミュレーションモジュール208は、センサデータ、ユーザデータ192、物体データ194、医療データ273、ユーザ101の明示的な入力、姿勢データ271、ユーザ情報データ272、ユーザモデルデータ274のうち一つ以上を分析することで、ユーザ101に対する一つ以上のリーチシミュレーション結果を生成する。
ユーザ101に対するリーチシミュレーション結果の例については、図7B〜図7Eを参照して後ほど説明する。
例えば、候補ゾーンモジュール212は、反復的な分析によって、候補ゾーンを、類似する候補ゾーンのグループに置くことで、一つ以上の候補ゾーンを決定する。一実施形態
において、反復的な分析は、クラスタ分析であってもよい。
例えば、候補ゾーンモジュール212は、リーチシミュレーションデータ275によって表されたリーチシミュレーション結果を、類似する地点のクラスタに分割する。
候補ゾーンモジュール212は、異なるリーチシミュレーション結果によって表された複数の座標(X,Y,Z)を決定し、当該リーチシミュレーション結果を、類似した地点にクラスタ分類してもよい。
例えば、候補ゾーンモジュール212は、複数の地点にユーザが手を伸ばした場合において、ユーザの特定の関節にかかるトルク量や力が類似する場合に、当該二つ以上の地点が類似していると判定してもよい。
他の例では、候補ゾーンモジュール212が、ユーザ環境198における三次元空間を、クラスタ分析によって三次元の領域に分割し、二つ以上の地点が同一の領域に含まれる場合に、当該二つ以上の地点が類似すると判定してもよい。
また、候補ゾーンモジュール212は、三つの方向(ピッチ、ヨー、ロール等)と同様に、異なるリーチシミュレーション結果によって表された複数の座標(X,Y,Z)を決定し、リーチシミュレーション結果を類似した地点にクラスタ化してもよい。
ユーザリーチシミュレーション結果は、ユーザ環境198内のある地点に手を伸ばすユーザ101に対応する。また、ユーザリーチシミュレーション結果は、ユーザ環境198内の一つ以上の地点に手を伸ばすユーザ101に対するシミュレーションに基づいてもよい。例えば、ユーザリーチシミュレーションは、ユーザ環境198内の三次元の各地点に手を伸ばすユーザ101に対するシミュレーションに基づく。
なお、ユーザリーチシミュレーション結果や候補ゾーンの生成においては、リーチシミュレーション結果の分析をさらに行い、ユーザ環境198内の各三次元地点(または六次元地点)に値を割り当ててもよい。
割り当てる値は、例えば、以下のうちの一つ以上に基づいたものである。
(1)ユーザ環境198内のある地点に手を伸ばしたユーザ101の、一つ以上の関節にかかるモーメントや力
(2)ロボット190から物体188を受け取る際の地点、モーメント、力が、ユーザ情報と適合しているか否か
各々の値は、シミュレーションモジュール210や候補ゾーンモジュール212によって、ユーザ情報データ272およびリーチシミュレーションデータ275に少なくとも部分的に基づいて決定されてもよい。これらのデータは、ユーザリーチシミュレーションに対応する空間内の三次元または六次元の地点に手を伸ばす際の、ユーザの一つ以上の関節にかかるモーメントや力を表すデータを含む。
このように、ゾーンシステム197は、ユーザ環境における各地点を考慮し、ユーザ101の関節にかかるモーメントや力を最小化し、かつ、ユーザ101の情報に適合する地点のゾーンを決定する。
候補ゾーンや物体移動ポーズを決定する際に、ユーザの情報を考慮することは、本発明における利点の一つである。
候補ゾーンモジュール212は、接続性に基づく(階層型)クラスタリング、分布(密度)に基づくクラスタリング、またはこれに類似する方法によってクラスタを生成してもよい。
例えば、シミュレーションにおけるクラスタは、ユーザ101の特定の状態に基づいて、ユーザ101にかかるモーメント(例えばトルク)や力が少なくなるように順序付けされる。
例えば、もしユーザ101が左肩を負傷している場合、リーチシミュレーションのクラスタは、物体188を受け取る際に、ユーザの左肩にかかるモーメントを最小化するように順序付けされる。
順序付けされたクラスタのリストは、物体188をユーザ101に手渡す際のロボット190の物体移動ポーズを示すため、ロボットの候補ゾーンモジュール212やポーズシステム199によって分析される。
このように、物体移動ポーズは、ユーザ101に対するリスクや危害を制限するように最適化される。
次に、図2Bを参照しながら、ポーズシステム199の例について、より詳しく説明する。
図2Bは、システム298のブロック図である。システム298は、図1のシステム100におけるサーバ107またはロボット190であってもよい。
いくつかの例において、システム298は、ポーズシステム199,第二のプロセッサ285、第二のメモリ281、第二の通信ユニット283、スピーカ287、センサ196、モータ251、モバイルハードウェア243、アクチュエータ241を含んでいてもよい。
システム298の構成要素は、バス250を介して通信可能に接続される。
なお、図2Bには、一つのポーズシステム199,一つの第二のプロセッサ284、一つの第二のメモリ281、一つの第二の通信ユニット283、一つのスピーカ287、一つのセンサ196、一つのモータ251、一つのモバイルハードウェア243、一つのアクチュエータ241が図示されているが、実際は、システム298は、二つ以上のポーズシステム199、二つ以上の第二のプロセッサ285、二つ以上の第二のメモリ281、二つ以上の第二の通信ユニット283、二つ以上のスピーカ287、二つ以上のセンサ196、二つ以上のモータ251、二つ以上のモバイルハードウェア243、二つ以上のア
クチュエータ241を含んでいてもよい。
第一の通信ユニット245は、ゾーンデータ276を、ネットワーク105を介して第二の通信ユニット283に送信してもよい。また、第二の通信ユニット283は、ゾーンデータ276を第二のメモリ281に格納してもよいし、ゾーンデータ276を、ポーズシステム199の他の構成要素に送信するため、第二の通信モジュール262に送信してもよい。
候補ゾーンは、評価モジュール268によって、一つ以上のセンサ196のセンシング結果ないし監視結果を用いて得られた、ユーザ環境198における現在の状況に基づいて評価される。
評価基準データ261は、センサデータ249に基づいて、判定モジュール264によって生成される。
例えば、評価基準データ261は、「一つ以上のセンサ196による、ユーザ101、物体188やユーザ環境198の現在の監視結果」、「ロボット190が物体移動ポーズをとり始めてから、ユーザ101が物体188に手を伸ばすのにかかる推定時間」、「ユーザ101の現在の快適レベルまたはストレスレベル」、「一つ以上のセンサ196によって得られた、最も高いランクの候補ゾーンに対する視界(見通し)」などを表したデータである。
評価モジュール268は、この基準を分析し、もしユーザ101の右手が塞がっている場合に、物体188をユーザ101の左手側に配置するという物体移動ポーズを決定する。
例えば、ユーザ101が、物体188を受け取った後の次のアクションを発話し、システム298が、当該入力を後続アクションデータ263に変換してもよい。
他の実施形態において、コンピュータ、スマートフォン、ウェアラブルデバイス、あるいはユーザ101が有するプロセッサベースの類似するデバイスが、ユーザ101の発話をテキストに変換する機能と、当該テキストをシステム298の第二の通信ユニット283に送信する機能を有していてもよい。例えば、ユーザ101が、発話によるロボット190への明示的な指示をスマートフォンに向けて行い、スマートフォンが、発話をテキストに変換し、当該ユーザの明示的な指示を表すデータを、Bluetooth(登録商標)、WiFi、USB、または、スマートフォンとシステム298とを接続する他の手段によって、システム298に送信するようにしてもよい。
また、医療プロバイダ170は、同様の方法で指示をロボット190に行ってもよい。
テキストベースの入力は、コンピュータ、スマートフォン、ウェアラブルデバイス、または、ユーザ101が有するプロセッサベースの類似するデバイスによって提供されてもよく、システム298の第二の通信ユニット283に送信されてもよい。
また、センサデータ249、医療データ273、ユーザ情報データ272、またはこれらの組み合わせによって表された、類似した状況における、ユーザ101の習慣やパターンに基づいて、推定されたユーザ101の次のアクションを決定する機能を有していてもよい。
さらに、本実施形態で述べるコンポーネント、モジュール、サーバの分離は、全ての実施形態において必要とは限らないことを理解されるべきである。
一実施形態において、記載された構成要素、モジュール、装置またはサーバは、通常、一つの構成要素、モジュール、装置またはサーバに集積されることができる。
一実施形態において、センサ196はモーションディテクタである。例えば、センサ196は、ロボット190、ユーザ101、物体188、または、ユーザ環境内にある他の要素の姿勢を検出するジャイロスコープである。
また、他の実施形態において、センサ196は、ロボット190、ユーザ101、物体188、または、ユーザ環境198内にある他の要素の加速度を測るのに用いられる加速度計である。さらに別の例では、センサ196は、GPSや、無線ネットワークを通じた
三角測量等によって位置検出を行う。
一実施形態において、センサ196は、第二の通信モジュール262を介して位置情報をセンサモジュール248に送る。
他の実施形態において、センサ196は、第二のメモリ281に、センサデータ249あるいは評価基準データ261の一部として位置情報を保存する。
一実施形態において、深さセンサは、例えば赤外線レーザ光のスペックルパターンのような構造化光(structured light)を用いて深さを決定する。
他の実施形態において、深さセンサは、カメラから対象物まで光信号が進むのにかかる時間に基づいて深さを決定する、飛行時間計測式(time-of-flight)の技術を用いて深さを決定する。
例えば、深さセンサはレーザ測距器である。
深さセンサは、ユーザ環境198内にある要素を、深さとともに検出するのに用いられてもよい。
一実施形態において、センサ196は、ロボット190、ユーザ101、物体188、またはユーザ環境198にある他の要素を識別するために、深さ情報をセンサモジュール248に送信する。
他の実施形態において、センサ196は、深さデータを、センサデータ249あるいは評価基準データ261の一部としてメモリ227に格納する。
一実施形態において、カメラは、電気信号を、ユーザ101、物体188、ロボット190の位置を識別するためにセンサモジュール248に送信し、また、選択された物体移動ポーズを評価し、ユーザ101のリスクを表す新しいデータに基づいて新しい物体移動ポーズを決定するため、評価モジュール268に送信する。
他の実施形態において、カメラは、位置データ292の一部として電気信号をメモリ227に格納する。
モータ251は、信号線267を通してバス250に接続される。また、モバイルハードウェア243は、信号線244を通してバス250に接続される。アクチュエータ241は、信号線246を通してバス250に接続される。
モバイルハードウェア243は、ロボット190を動かすためのハードウェア(例えば車輪)である。モータ251とモバイルハードウェア243は、ロボット190を動かすために用いられる。例えば、コントローラ289が、モータ251に、モバイルハードウェア243を駆動させ、例えば、ポーズシステム199によって選択された物体移動ポーズに基づいて、ロボット190を再配置するよう命令を行う。
アクチュエータ241は、モータを内蔵していてもよいし、ロボット190が有する一つ以上のモータ251によって駆動されてもよい。例えば、アクチュエータ241のモータはサーボモータであってもよい。
アクチュエータ241が、モータを内蔵している実施形態において、コントローラ289は、物体移動ポーズに基づいて、アクチュエータ241にポジショニングを行う命令を発行し、ユーザ101に物体188を手渡ししてもよい。
また、アクチュエータ241が、ロボット190のモータ251によって駆動される実施形態において、コントローラ289は、物体移動ポーズに基づいて、アクチュエータ241のポジショニングを行うためにモータ251に命令を発行し、ユーザ101に物体188を手渡ししてもよい。
例えば、システム298がロボット190である場合、スピーカは、評価モジュール268から命令を受信し、ユーザ101に対して、「もたらされるリスクが所定の値よりも高い状況にあると評価モジュール268が判断したため、物体188の手渡しが行えない」という通知を行う。
他の実施形態において、モジュール262,248,264,266,268,289のそれぞれは、第二のメモリ281に格納され、システム298の第二のプロセッサ285によってアクセスされ、実行されてもよい。
モジュール262,248,264,266,268,289のそれぞれは、第二のプロセッサ285や、システム298の他の構成要素と協調や通信を行うように構成される。
一実施形態において、モジュール262,248,264,266,268,289のそれぞれは、格納され、システム298の第二のプロセッサ285によって実行される一つ以上のシンクライアントとして機能してもよい。
一実施形態において、センサモジュール248は、以下に記すような、ユーザ101、ロボット190、物体188、ユーザ環境198にある他の要素をセンシングするための機能を提供する、第二のプロセッサ285で実行可能な一組の命令である。
センサモジュール248は、信号線247を通してバス250に通信可能に接続される。
そしてセンサモジュール248は、画像から、ユーザ101、ロボット190、物体188、またはユーザ環境198にある他の要素の位置および向きを識別する。
位置は、直交座標系における緯度と経度等によって表されてもよい。
例えば、センサモジュール248は、物体188と、物体188の端に存在する鋭いエッジを識別する。また、センサモジュール248は、ユーザ101の右手が空いており、左手が塞がっていることを識別する。センサモジュール248は、評価モジュール268およびコントローラ289と協働し、物体188が有する鋭いエッジに関連付いたリスクと、ユーザ101の左手が塞がっていることを識別し、ロボット190が、ユーザ101の右手側に物体188を配置し、かつ、鋭いエッジがユーザ101の手指から離れるような向きで物体188を配置するように処理を行う。
例えば、センサモジュール248は、GPS装置、WiFiを用いた三角測量装置など、ロボット190に含まれるセンサ196を、ロボット190の位置を識別するために用いる。
他の例において、センサモジュール248は、カメラ249から画像を受信し、画像に含まれる既知の物体の位置と、ロボット190の既知の位置(例えばロボット190のGPS座標)とを比較することで、ユーザ101の現在位置を識別する。
例えば、判定モジュール261は、「表情がストレスを感じているか」「右手や左手が塞がっているか」等を判定するために、センサデータ249に含まれるユーザ101の画像を分析する。
ユーザ101のこれらのステータスは、ポーズシステム199が、どのような物体移動ポーズを選択するかに影響を及ぼす、評価基準となる。
判定モジュール264は、センサデータ249に基づいて、他の評価基準データ261を生成してもよい。
例えば、評価モジュール268は、ゾーンデータ276、評価基準データ261、またはこれらの組み合わせに基づいて、物体移動ポーズを選択する。
ゾーンデータ276は、ユーザ101に物体188を手渡しする候補ゾーンを表すデータである。候補ゾーンは、「物体移動ポーズにおいて、ロボット190のアクチュエータ241から物体を受け取る際に、どの候補ゾーンを用いれば、最も少ないモーメント(例えばトルク)や力で手渡しができるか」に基づいてランク付けされてもよい。
また、評価基準データ261は、センサ196の現在の監視結果に基づいて、候補ゾーンのランクを更新するために用いられてもよい。
例えば、センサ196は、評価モジュール268に、候補ゾーンのランクを更新させるため、ロボット190、ユーザ101、物体188、ユーザ環境198の他の要素についての状態を示してもよい。
このように、評価モジュール268は、候補ゾーンをフィルタし、ユーザ101が物体188を受け取る際のリスクを最小にする物体移動ポーズを決定するために、評価基準データ261を用いてもよい。
例えば、ユーザ101のリスクを最小にする物体移動ポーズとは、ユーザ101が物体188に手を伸ばす際にかかるトルクや力を最小にするものであってもよい。
他の例では、評価基準は、ユーザ環境198にある他の要素であって、ユーザ101が物体188に手を伸ばす際に脅威(例えば、つまずき、よろめき等)となるものを表してもよく、ユーザ101のリスクを最小にする物体移動ポーズとは、ユーザ101が物体188に手を伸ばす際の事故発生率を最小にするものであってもよい。
評価モジュール268は、このようなフィルタリングによって一つ以上の候補ゾーンを選択し、当該候補ゾーンに基づいて物体移動ポーズを決定する。
例えば、コントローラ210は、評価モジュール261から物体移動ポーズを表すデータを受信し、物体188をユーザ101に手渡しするために、当該物体移動ポーズに従ってアクチュエータ241を動かす。
コントローラ210が速度制約を生成すると、コントローラ210は、アクチュエータ241やモータ251に対して、物体移動ポーズに従って動くように指示する。
センサ196が、ユーザ101に対する衝突可能性を検知したような場合、コントローラ210は、衝突を避けるための新しい速度制約を生成するか、アクチュエータ241やモータ251に対して、動作を止める指示を行う。
次に、図3〜図5を参照して、システムが実行する方法のフローチャートについて説明する。図3に示した処理は、候補ゾーンを生成せず、評価基準のみに基づいて手渡しを行う場合の例である。また、図4および図5に示した処理は、リーチシミュレーションに基づいて候補ゾーンを生成し、評価基準を用いて候補ゾーンをフィルタリングしたうえで物体移動ポーズを決定し、手渡しを行う場合の例である。
まず、図3を参照して、物体188をユーザ101に手渡すための物体移動ポーズ308を生成する方法300の例を示す。
一実施形態において、ゾーンシステム197、ポーズシステム199、またはこれらの組み合わせは、方法300の一つ以上を実行されるようにプログラムされた、プロセッサベースのコンピュータであってもよい。
次に、ステップ306で、物体データ194を受信する。
次に、ステップ306で、センサデータ249を受信する。
次に、ステップ308で、物体188をユーザ101に手渡しするための物体移動ポーズを決定する。
次に、ステップ310で、物体188を受け取った後のユーザアクションを決定する。
次に、ステップ311で、物体188をユーザ101に手渡すか否かを決定する。例えば、一つ以上の評価基準を生成し、当該評価基準がユーザ101に対するリスクを示している場合、物体188をユーザ101に手渡さないという決定を行う。
ロボット190は、物体移動ポーズに基づいて、どのように動くかを決定し、ステップ312にて、物体移動ポーズを形成するための駆動を開始する。そして、ユーザ101は、ロボット190から物体188を受け取る。
また、ロボット190は、ユーザ101のリスク評価を継続し、ユーザ101のリスクを減らすような駆動方法を決定し、ユーザ101のリスクを減らすための応答を行う。
一実施形態において、ゾーンシステム197、ポーズシステム199、またはこれらの組み合わせは、方法400の一つ以上を実行されるようにプログラムされた、プロセッサベースのコンピュータであってもよい。
例えば、ゾーンシステム197は、方法400の一つ以上を実行されるようにプログラムされる。また、ゾーンシステム197は、方法400の一つ以上を実行されるようにプログラムされた、特別な目的を持つコンピュータであってもよい。
まず、ステップ402で、センサデータ249を受信する。
次に、ステップ405で、物体データ196を受信する。
次に、ステップ408で、姿勢データ271を生成する。ステップ408では、ユーザ101に対応する生体力学データを生成してもよい。また、ユーザに対応する生体力学データは、姿勢データ271を構成する要素であってもよい。
次に、ステップ410で、ユーザ情報データ272を生成する。
次に、ステップ412で、一つ以上のユーザモデルを表すユーザモデルデータ274を生成する。
次に、ステップ414で、一つ以上のユーザリーチシミュレーションマップを生成する。ユーザリーチシミュレーションマップは、リーチシミュレーションデータ275によっ
て表されてもよい。
次に、ステップ416で、一つ以上のユーザリーチシミュレーションマップを分析し、類似する地点のクラスタを生成する。ステップ416で行われる分析は、反復的な分析であってもよい。
次に、ステップ418で、物体を手渡しする候補ゾーンを表すゾーンデータ276を生成する。ゾーンデータ276によって表される候補ゾーンは、ランク付けされていてもよい。例えば、ゾーンデータ276は、一つ以上の候補ゾーンをランク付けしたリストであってもよい。
まず、ステップ502で、センサデータ249を受信する。
次に、ステップ504で、評価基準データ261を生成する。評価基準は、センサデータ249に基づいて生成されてもよい。
次に、ステップ506で、ゾーンデータ276を受信する。
次に、ステップ508で、物体移動ポーズを生成する。物体移動ポーズは、例えば、ゾーンデータ276によって表された候補ゾーンを、評価基準データ261を用いてフィルタリングすることで生成される。このように、候補ゾーンのリストを、現在の監視状態に基づいて更新してもよい。
ステップ510では、物体188を受け取った後のユーザ101のアクションを決定する。
一実施形態において、ポーズシステム199は、リスクに関する閾値を有している。そして、評価モジュール268は、評価基準データ261を分析し、閾値を超えているか否かを判定する。もし、閾値を超えている場合、方法500はステップ508へ遷移し、評価モジュール268は、リスクを減らせる他の物体移動ポーズを選択する。
このように、方法は、許容できる物体移動ポーズを識別できるまで、所定の回数だけ繰り返されてもよい。もし、許容できる物体移動ポーズが見つからなかった場合、方法500は終了してもよいし、第二の通信ユニット283が、ユーザ101や医療プロバイダ170から新たな指示を仰ぐようにしてもよい。
または、所定の回数だけ繰り返しても、許容できる物体移動ポーズが見つからなかった場合、ポーズシステム199は、センサデータ249を分析し、ユーザ環境198にある平らな面を識別したうえで、ロボット190が、物体を当該平面に移動させ、配置するための駆動と移動ベクトルを決定するようにしてもよい。このようにすることで、ユーザ101が物体を受け取ることができるようになる。
次に、図6Aを参照して、ユーザ101に対応する生体力学モデル610の例を示す。
符号600は、生体力学モデル610に対応する座標系(X,Y,Z)を表す。
生体力学モデル610は、ユーザ101の各関節における、モーメントおよび力ベクトルの静的な分布を表すものである。生体力学モデル610は、当該生体力学モデルに対応するユーザ101についてのユーザ情報192を含んでいてもよい。例えば、生体力学モデルは、対応するユーザ101の身長および体重を含んでいてもよい。
符号690は、リンクモデル620に対応する座標系(X,Y,Z)を表す。また、符号699は、リンクモデル620に含まれる各リンクの重心を表す。
一実施形態において、リンクモデル620の各リンクは、ユーザ101の関節間にある領域に対応する。例えば、ユーザ101の大腿骨は、ユーザ101の膝と尻の間にあるため、モデル620のリンクによって表すことができる。
(1)ユーザ101の身長および体重に関連する、各リンクにおける重さや長さの割合
(2)ユーザ101の身長に関連する、各リンクの重心のオフセット
(3)ユーザ101の各関節における、各軸に沿った可動範囲
一実施形態において、リンクモデル620を表したユーザモデルデータ274は、以下を決定するために、シミュレーションモジュール210によって利用される。
(1)ユーザ101の手にある物体188の重心からスタートする、X,Y,Z軸周りのモーメントを表したリーチシミュレーションデータ275(もしあれば)
(2)ユーザ101の手首から、L5/S1脊椎骨までの、ユーザ101の関節にかかる負荷
(3)ユーザ101の足首から、L5/S1脊椎骨までの、ユーザ101の関節にかかる負荷
このように、ユーザ情報192、姿勢データ271、ユーザ情報データ272によって表された要素を用いてリンクモデル620を生成するようにしてもよい。
次に、図7Aを参照して、図7B〜7Eに表したリーチシミュレーション790,791,791,793を生成するために用いられるユーザリーチシナリオ700の例を示す。
本シナリオ700では、ユーザ720が、テーブル710の上にある物体730に手を伸ばしている。図7B〜7Eは、テーブル710に着席し、物体730に手を伸ばすことで、異なるユーザ720が本シナリオを試みた場合の例である。
図7B〜7Eに示すように、右手を用いて同じ位置に手を伸ばす場合であっても、異なるユーザにそれぞれかかるモーメントには差がある。
異なるユーザ720にかかるモーメントの差は、ユーザ情報192によって表される、ユーザ720の身長、体重、他の生体力学データの違いなどに起因して発生する。
これらのユーザリーチシミュレーション790,791,792,793は、図7Aに示した同じユーザリーチシナリオ700によって手を伸ばす場合に、異なるユーザ720Aおよび720Bの関節に異なるモーメントがかかることを表している。
ユーザリーチシミュレーション790,791,792,793は、ユーザ環境において、ある地点に手を伸ばすユーザ720Aおよび720Bに対応する。
また、ユーザリーチシミュレーション790,791,792,793は、ユーザ環境
において、一つ以上の地点に手を伸ばすユーザ720Aおよび720Bをシミュレーションした結果に基づく。例えば、ユーザリーチシミュレーション790,791,792,793は、ユーザ環境の各地点に手を伸ばすユーザ720Aおよび720Bをシミュレーションした結果に基づく。
なお、ユーザリーチシミュレーション790,791,792,793や候補ゾーンの生成においては、リーチシミュレーション結果の分析をさらに行い、ユーザ環境内の各三次元地点(または六次元地点)に値を割り当ててもよい。
前述した値は、以下のうちの一つ以上に基づいてもよい。
(1)ユーザ環境内のある地点に手を伸ばしたユーザ720A,720Bの関節にかかるモーメントや力
(2)ロボットから物体を受け取る際の地点、モーメント、力が、ユーザ情報と適合しているか否か
このように、ゾーンシステム197は、ユーザ環境における各地点を考慮して、ユーザの関節にかかるモーメントや力を最小化し、かつ、ユーザ情報に適合する地点のゾーンを決定してもよい。
シミュレーション890,891,893は、ユーザがロボットから物体を受け取った後の異なるポーズの例を示したものである。
シミュレーション890は、運動モデルに基づいた物体移動ポーズを用いた場合における、ロボットから物体を受け取った後のユーザのポーズの例を表す。当該物体移動ポーズは、モーメントのユーザの関節への影響があるため、医療プロバイダによって、望ましくないものとならないように考慮される。
シミュレーション891は、前述した方法300,400,500と、前述した技術によって決定された物体移動ポーズを用いた場合における、ロボットから物体を受け取った後のユーザのポーズの例を表す。例えば、ロボットのポーズは、あるユーザに対応した生体力学モデルであって、ユーザ情報を表す入力や、医療プロバイダによって提供された入力を含む生体力学モデルに部分的に基づいたものである。
シミュレーション891に示した姿勢は、より快適で、便利な手渡しポーズをもたらすように、医療プロバイダによって望ましいと考えられたものである。例えば、ロボットのポーズシステムは、手渡しイベントの後、ユーザがカップの中身を飲むということを知っている。シミュレーション893は、姿勢891をとった後において、カップの飲み物を飲んでいるユーザを表したものである。
態と関連づけて説明される特定の特徴・構造・性質が少なくとも本発明の一つの実施形態に含まれることを意味する。「1つの実施形態における」等という用語は本明細書内で複数用いられるが、これらは必ずしも同一の実施形態を示すものとは限らない。
量記憶装置や、実行中に大容量記憶装置からデータを取得する回数を減らすためにいくつかのプログラムコードを一時的に記憶するキャッシュメモリなどを含む。
105 ネットワーク
107 サーバ
170 医療プロバイダ
188 物体
190 ロボット
192 ユーザデータ
194 物体データ
196 センサ
197 ゾーンシステム
199 ポーズシステム
202 第一の通信モジュール
204 姿勢モジュール
206 ユーザ情報モジュール
208 モデルモジュール
210 シミュレーションモジュール
212 候補ゾーンモジュール
225 第一のプロセッサ
227 第一のメモリ
241 アクチュエータ
243 モバイルハードウェア
245 第一の通信ユニット
248 センサモジュール
251 モータ
262 第二の通信モジュール
264 判定モジュール
266 後続アクションモジュール
268 評価モジュール
281 第二のメモリ
283 第二の通信ユニット
285 第二のプロセッサ
287 スピーカ
289 コントローラ
Claims (13)
- ロボットを用いて、ユーザ環境内に位置するユーザに物体を手渡すシステムが実行する方法であって、
前記ユーザ環境内にある地点にユーザが手を伸ばした場合における、当該ユーザの関節にかかるモーメントを表したデータであるシミュレーションデータを取得するシミュレーションデータ取得ステップと、
前記シミュレーションデータを分析し、前記ユーザが、前記ユーザ環境内の三次元座標に手を伸ばした場合における、当該ユーザの関節にかかるモーメントを表す値を、前記三次元座標と関連付ける評価ステップと、
前記三次元座標に関連付いた値に基づいて、前記ユーザ環境内において前記ロボットが前記ユーザに物体を手渡す領域の候補である候補ゾーンを生成する、候補ゾーン生成ステップと、
を含む方法。 - 前記物体を受け取るユーザにかかる負荷、または、ユーザの快適性に影響を与える要素に関するデータであるユーザ情報データを取得するユーザ情報データ取得ステップをさらに含み、
前記評価ステップでは、前記ユーザ情報データに基づいた適合度を表す値を、前記三次元座標にさらに関連付ける、
請求項1に記載の方法。 - 前記ユーザ情報データは、前記ユーザに対する医学的情報に基づいて生成されたデータ、または、前記ユーザをセンシングした結果に基づいて生成されたデータである、
請求項2に記載の方法。 - 前記評価ステップでは、前記モーメントを表す値、および、前記適合度を表す値を複数の前記三次元座標に関連付け、
前記候補ゾーン生成ステップでは、前記三次元座標を、当該三次元座標に関連付けられた値、または、ユーザ環境内における位置に基づいてクラスタリングすることで、候補ゾーンを生成する、
請求項2または3に記載の方法。 - 前記候補ゾーン生成ステップで生成されたクラスタが複数ある場合に、当該クラスタにて物体を手渡した場合におけるリスクまたは快適性を評価し、当該評価の結果に基づいて、各クラスタにスコアを付与するスコア付与ステップをさらに含む、
請求項4に記載の方法。 - 前記スコア付与ステップでは、評価対象のクラスタにおいて物体を手渡した場合に、ユーザの関節にかかる負荷が少ないほど、より高いスコアを当該クラスタに付与する、
請求項5に記載の方法。 - 前記シミュレーションデータ取得ステップは、
前記ユーザの姿勢を表す第一の身体データを取得するステップと、
前記ユーザの身体的特徴を表す第二の身体データを取得するステップと、
前記第一および第二の身体データに基づいて、前記ユーザの身体をモデルで表したデータであるユーザモデルを生成するステップと、
前記ユーザモデルを用いてシミュレーションを行うことで、前記シミュレーションデータを生成するステップと、
からなる、請求項1から6のいずれかに記載の方法。 - 前記ユーザモデルは、生体力学モデルまたはリンクモデルのいずれかである、
請求項7に記載の方法。 - 生成した前記候補ゾーンに基づいて、前記ロボットが前記物体を前記ユーザに手渡しする際にとる姿勢である物体移動ポーズを決定する決定ステップと、
前記物体移動ポーズに基づいて、ロボットの駆動を行う駆動ステップと、をさらに含む、
請求項1から8のいずれかに記載の方法。 - ロボットを用いて、ユーザ環境内に位置するユーザに物体を手渡すシステムが実行する方法であって、
前記ユーザ環境内において前記ロボットが前記ユーザに物体を手渡す領域の候補である複数の候補ゾーンを生成する、候補ゾーン生成ステップと、
前記候補ゾーンにて物体を手渡した場合におけるリスクまたは快適性を評価し、当該評価の結果に基づいて、前記候補ゾーンをフィルタリングするフィルタリングステップと、
フィルタリング後の候補ゾーンに基づいて、前記ロボットが前記物体を前記ユーザに手渡しする際にとる姿勢である物体移動ポーズを決定する決定ステップと、
前記物体移動ポーズに基づいて、ロボットの駆動を行う駆動ステップと、
を含み、
前記フィルタリングステップでは、前記物体を受け取ったユーザが次に取る行動を推定し、当該推定の結果をさらに用いて、前記候補ゾーンをフィルタリングする、
方法。 - 前記フィルタリングステップでは、前記ユーザ、前記ロボット、前記物体、前記ユーザ環境のうちの一つ以上の状況に基づいて、リスクまたは快適性を評価する、
請求項10に記載の方法。 - ロボットを用いて、ユーザ環境内に位置するユーザに物体を手渡すシステムであって、
前記ユーザ環境内にある地点にユーザが手を伸ばした場合における、当該ユーザの関節にかかるモーメントを表したデータであるシミュレーションデータを取得するシミュレーションデータ取得手段と、
前記シミュレーションデータを分析し、前記ユーザが、前記ユーザ環境内の三次元座標に手を伸ばした場合における、当該ユーザの関節にかかるモーメントを表す値を、前記三次元座標と関連付ける評価手段と、
前記三次元座標に関連付いた値に基づいて、前記ユーザ環境内において前記ロボットが前記ユーザに物体を手渡す領域の候補である候補ゾーンを生成する、候補ゾーン生成手段と、
を有するシステム。 - ロボットを用いて、ユーザ環境内に位置するユーザに物体を手渡すシステムであって、
前記ユーザ環境内において前記ロボットが前記ユーザに物体を手渡す領域の候補である複数の候補ゾーンを生成する、候補ゾーン生成手段と、
前記候補ゾーンにて物体を手渡した場合におけるリスクまたは快適性を評価し、当該評価の結果に基づいて、前記候補ゾーンをフィルタリングするフィルタリング手段と、
フィルタリング後の候補ゾーンに基づいて、前記ロボットが前記物体を前記ユーザに手渡しする際にとる姿勢である物体移動ポーズを決定する決定手段と、
前記物体移動ポーズに基づいて、ロボットの駆動を行う駆動手段と、
を有し、
前記フィルタリング手段は、前記物体を受け取ったユーザが次に取る行動を推定し、当該推定の結果をさらに用いて、前記候補ゾーンをフィルタリングする、
システム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/502,951 US9469028B2 (en) | 2014-09-30 | 2014-09-30 | Robotic handover system natural for humans |
US14/502,951 | 2014-09-30 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016068253A JP2016068253A (ja) | 2016-05-09 |
JP6065077B2 true JP6065077B2 (ja) | 2017-01-25 |
Family
ID=55583502
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015183252A Expired - Fee Related JP6065077B2 (ja) | 2014-09-30 | 2015-09-16 | ロボットによる物体手渡しシステム |
Country Status (2)
Country | Link |
---|---|
US (1) | US9469028B2 (ja) |
JP (1) | JP6065077B2 (ja) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016080971A1 (en) * | 2014-11-18 | 2016-05-26 | Empire Technology Development Llc | Relay attack defense support system |
US10668623B2 (en) * | 2015-05-29 | 2020-06-02 | Abb Schweiz Ag | Method and system for robotic adaptive production |
US10029698B2 (en) * | 2016-07-19 | 2018-07-24 | Futurewei Technologies, Inc. | Adaptive passenger comfort enhancement in autonomous vehicles |
JP6662746B2 (ja) * | 2016-10-07 | 2020-03-11 | ファナック株式会社 | 機械学習部を備えた作業補助システム |
US10740863B2 (en) * | 2017-01-09 | 2020-08-11 | nuTonomy Inc. | Location signaling with respect to an autonomous vehicle and a rider |
US11024289B2 (en) | 2017-03-29 | 2021-06-01 | International Business Machines Corporation | Cognitive recommendation engine facilitating interaction between entities |
EP3626401B1 (en) * | 2017-05-17 | 2024-09-18 | Telexistence Inc. | Control device, robot control method, and robot control system |
US10365653B2 (en) * | 2017-06-12 | 2019-07-30 | GM Global Technology Operations LLC | Personalized autonomous vehicle ride characteristics |
US11365068B2 (en) | 2017-09-05 | 2022-06-21 | Abb Schweiz Ag | Robotic systems and methods for operating a robot |
US10471591B1 (en) | 2018-06-01 | 2019-11-12 | X Development Llc | Object hand-over between robot and actor |
JP7225659B2 (ja) * | 2018-10-11 | 2023-02-21 | ソニーグループ株式会社 | 情報処理装置、情報処理方法および情報処理プログラム |
CN112512755A (zh) * | 2019-03-01 | 2021-03-16 | 谷歌有限责任公司 | 使用从2.5d视觉数据预测的域不变3d表示的机器人操纵 |
US11345030B2 (en) * | 2019-05-28 | 2022-05-31 | Intel Corporation | Methods and apparatus for complex assembly via autonomous robots using reinforcement learning action primitives |
CN114770504B (zh) * | 2022-04-26 | 2024-01-30 | 深圳优地科技有限公司 | 机器人控制方法、装置、机器人及存储介质 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003337846A (ja) * | 2002-05-21 | 2003-11-28 | Sekisui Chem Co Ltd | 負担評価システム及び設計支援方法 |
JP4055477B2 (ja) * | 2002-05-31 | 2008-03-05 | マツダ株式会社 | ドア操作性評価のためのシミュレーション装置 |
JP2006123854A (ja) * | 2004-11-01 | 2006-05-18 | Matsushita Electric Ind Co Ltd | 荷物運搬ロボット |
JP2007334446A (ja) * | 2006-06-12 | 2007-12-27 | Matsushita Electric Works Ltd | 筋負荷評価システム、製品設計支援システム |
JP2013022705A (ja) * | 2011-07-25 | 2013-02-04 | Sony Corp | ロボット装置及びロボット装置の制御方法、コンピューター・プログラム、並びにロボット・システム |
JP2013111737A (ja) * | 2011-12-01 | 2013-06-10 | Sony Corp | ロボット装置及びその制御方法、並びにコンピューター・プログラム |
JP2013184273A (ja) * | 2012-03-09 | 2013-09-19 | Sony Corp | ロボット装置及びロボット装置の制御方法、並びにコンピューター・プログラム |
WO2014048444A1 (en) | 2012-09-25 | 2014-04-03 | Abb Technology Ag | Robot system for human-robot collaboration |
-
2014
- 2014-09-30 US US14/502,951 patent/US9469028B2/en active Active
-
2015
- 2015-09-16 JP JP2015183252A patent/JP6065077B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20160089782A1 (en) | 2016-03-31 |
US9469028B2 (en) | 2016-10-18 |
JP2016068253A (ja) | 2016-05-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6065077B2 (ja) | ロボットによる物体手渡しシステム | |
JP6657580B2 (ja) | ロボットの経路決定方法、システム、およびプログラム | |
US10507577B2 (en) | Methods and systems for generating instructions for a robotic system to carry out a task | |
US9694496B2 (en) | Providing personalized patient care based on electronic health record associated with a user | |
US10452982B2 (en) | Emotion estimating system | |
JP6439817B2 (ja) | 認識的アフォーダンスに基づくロボットから人間への物体ハンドオーバの適合 | |
Koppula et al. | Anticipating human activities for reactive robotic response. | |
JP6927938B2 (ja) | クラウドサービスシステムを組み込んだロボットシステム | |
Arkenbout et al. | Robust hand motion tracking through data fusion of 5DT data glove and nimble VR Kinect camera measurements | |
JP2019032843A (ja) | 自動車又は携帯電子装置を使用した能動的且つ自動的なパーソナルアシスタンスを提供するコンピュータベースの方法及びシステム | |
WO2019136449A2 (en) | Error correction in convolutional neural networks | |
JP5555207B2 (ja) | 3次元姿勢推定装置、3次元姿勢推定方法、及びプログラム | |
JP2016006611A5 (ja) | ||
US20160279793A1 (en) | Robot communication of intent and functioning | |
JP2020018889A (ja) | ロボットによるユーザアシスタンス | |
Ryumin et al. | A multimodal user interface for an assistive robotic shopping cart | |
JP6015743B2 (ja) | 情報処理装置、情報処理方法及びプログラム | |
CN106575162A (zh) | 促成计算设备上基于动态眼睛扭转的眼睛跟踪 | |
KR20170096104A (ko) | 다중 사용자 센서 기반 상호작용들 | |
Grewal et al. | Autonomous wheelchair navigation in unmapped indoor environments | |
US20220288781A1 (en) | Anticipating User and Object Poses through Task-Based Extrapolation for Robot-Human Collision Avoidance | |
WO2019102676A1 (ja) | 情報処理装置、情報処理方法、およびプログラム | |
KR101631025B1 (ko) | 깊이 카메라를 이용한 손 관절 데이터 추출 방법 및 이를 기록한 기록매체 | |
Alarcón-Aldana et al. | A Kinematic Information Acquisition Model That Uses Digital Signals from an Inertial and Magnetic Motion Capture System | |
US12020193B1 (en) | Vision-based hand grip recognition method and system for industrial ergonomics risk identification |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160826 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160906 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20161025 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20161122 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20161205 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6065077 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
LAPS | Cancellation because of no payment of annual fees |