IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ エックス デベロップメント エルエルシーの特許一覧

特表2022-5348363次元ライダーを用いたロボット構成
<>
  • 特表-3次元ライダーを用いたロボット構成 図1
  • 特表-3次元ライダーを用いたロボット構成 図2
  • 特表-3次元ライダーを用いたロボット構成 図3
  • 特表-3次元ライダーを用いたロボット構成 図4
  • 特表-3次元ライダーを用いたロボット構成 図5A
  • 特表-3次元ライダーを用いたロボット構成 図5B
  • 特表-3次元ライダーを用いたロボット構成 図6A
  • 特表-3次元ライダーを用いたロボット構成 図6B
  • 特表-3次元ライダーを用いたロボット構成 図6C
  • 特表-3次元ライダーを用いたロボット構成 図7
  • 特表-3次元ライダーを用いたロボット構成 図8
  • 特表-3次元ライダーを用いたロボット構成 図9
  • 特表-3次元ライダーを用いたロボット構成 図10
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-08-04
(54)【発明の名称】3次元ライダーを用いたロボット構成
(51)【国際特許分類】
   B25J 5/00 20060101AFI20220728BHJP
【FI】
B25J5/00 A
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2021557404
(86)(22)【出願日】2020-05-28
(85)【翻訳文提出日】2021-11-26
(86)【国際出願番号】 US2020034827
(87)【国際公開番号】W WO2020243238
(87)【国際公開日】2020-12-03
(31)【優先権主張番号】62/853,534
(32)【優先日】2019-05-28
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】16/528,141
(32)【優先日】2019-07-31
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】516326438
【氏名又は名称】エックス デベロップメント エルエルシー
(74)【代理人】
【識別番号】100079108
【弁理士】
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100126480
【弁理士】
【氏名又は名称】佐藤 睦
(72)【発明者】
【氏名】レンビズ,ジャスティン
(72)【発明者】
【氏名】トラン,ジョン
(72)【発明者】
【氏名】ナバト,ヴィンセント
(72)【発明者】
【氏名】マイヤー,エルマー
【テーマコード(参考)】
3C707
【Fターム(参考)】
3C707BS13
3C707CS08
3C707KS12
3C707KS36
3C707KT01
3C707KT04
3C707MS08
3C707WA16
(57)【要約】
【課題】移動ロボットデバイスを提供する。
【解決手段】移動ロボットデバイス(200)は、移動ベース(202)と、移動ベース(202)に対して固定されたマスト(210)と、を含む。マスト(210)は切り取り部分を含む。移動ロボットデバイス(200)は更に、マスト(210)の切り取り部分に搭載された3次元(3D)ライダーセンサを含む。3Dライダーセンサは、3Dライダーセンサの垂直視野を移動ロボットデバイス(200)の前方のエリアに向けて下方に傾けるように、マスト(210)に対して固定されている。
【選択図】 図7
【特許請求の範囲】
【請求項1】
移動ベースと、
前記移動ベースに対して固定され、切り取り部分を含むマストと、
前記マストの前記切り取り部分に搭載された3次元(3D)ライダーセンサであって、前記3Dライダーセンサの垂直視野を前記移動ロボットデバイスの前方のエリアに向けて下方に傾けるように前記マストに対して固定されている、3Dライダーセンサと、
を備える移動ロボットデバイス。
【請求項2】
前記3Dライダーセンサは、前記3Dライダーセンサの前記垂直視野が前記移動ロボットデバイスのすぐ前方の地面を含むように傾けられている、請求項1に記載の移動ロボットデバイス。
【請求項3】
前記3Dライダーセンサの前記垂直視野は90度よりも大きく、前記3Dライダーセンサは、前記3Dライダーセンサの前記垂直視野の上限が前記3Dライダーセンサから前記移動ロボットデバイスの前方を示す水平ベクトルよりも上方の角度に延出するように傾けられている、請求項1に記載の移動ロボットデバイス。
【請求項4】
前記3Dライダーセンサは、前記3Dライダーセンサの垂直軸が鉛直方向に対して前方に傾斜するように搭載されている、請求項1に記載の移動ロボットデバイス。
【請求項5】
前記3Dライダーセンサの前記垂直視野は、前記移動ロボットデバイスの前方を指し示す水平ベクトルよりも10~20度上方にある第1の角度から、前記水平ベクトルよりも75~85度下方にある第2の角度まで延出している、請求項1に記載の移動ロボットデバイス。
【請求項6】
前記3Dライダーセンサからのセンサデータに基づいて前記移動ロボットデバイスの前記移動ベースの前方にある崖を検出するよう構成された制御システムを更に備える、請求項1に記載の移動ロボットデバイス。
【請求項7】
前記3Dライダーセンサからのセンサデータに基づいて前記移動ロボットデバイスの前方又は側方にある1つ以上の障害物を検出するよう構成された制御システムを更に備える、請求項1に記載の移動ロボットデバイス。
【請求項8】
前記3Dライダーセンサからのセンサデータに基づいて前記移動ロボットデバイスの位置を決定するよう構成された制御システムを更に備え、前記センサデータは前記移動ロボットデバイスの上方及び後方にある1つ以上の表面を示す、請求項1に記載の移動ロボットデバイス。
【請求項9】
前記制御システムは、前記センサデータを前記移動ロボットデバイスの環境のボクセルグリッド表現と位置合わせすることによって、前記移動ロボットデバイスの前記位置を決定するよう構成されている、請求項8に記載の移動ロボットデバイス。
【請求項10】
前記3Dライダーセンサは360度の水平視野を有するように構成されており、前記マストの前記切り取り部分の形状に基づいて、前記3Dライダーセンサの前記水平視野の少なくとも270度は前記マストによって遮られない、請求項1に記載の移動ロボットデバイス。
【請求項11】
前記マストは前記3Dライダーセンサのための突き出た搭載ポイントを含み、前記3Dライダーセンサは、前記マストの前記切り取り部分内に収まるように前記突き出た搭載ポイントの下方に搭載される、請求項1に記載の移動ロボットデバイス。
【請求項12】
前記マストは、
前記3Dライダーセンサが搭載される裏当てコンポーネントと、
2つの対称筐体コンポーネントであって、前記3Dライダーセンサが前記裏当てコンポーネント及び前記2つの対称筐体コンポーネントによって取り囲まれたボリュームの外部にあるように、前記裏当てコンポーネントの各側に取り付けられる、2つの対称筐体コンポーネントと、
を含む、請求項1に記載の移動ロボットデバイス。
【請求項13】
前記マストは前記移動ロボットデバイスの前端に位置決めされた積層塔の一部である、請求項1に記載の移動ロボットデバイス。
【請求項14】
前記マストの下方で前記積層塔はロボットアームの回転関節を含み、前記回転関節は、前記マストを回転させることなく前記ロボットアームを回転させるように構成されている、請求項13に記載の移動ロボットデバイス。
【請求項15】
前記移動ベースは、前記移動ロボットデバイスの後方のエリアを対象とする複数の1自由度(1DOF)センサを含む、請求項1に記載の移動ロボットデバイス。
【請求項16】
3次元(3D)ライダーセンサから移動ロボットデバイスの環境を示すセンサデータを受信することであって、前記3Dライダーセンサは、前記移動ロボットデバイスのマストの切り取り部分に搭載され、前記3Dライダーセンサの垂直視野を前記移動ロボットデバイスの前方のエリアに向けて下方に傾けるように前記マストに対して固定されている、3Dライダーセンサから移動ロボットデバイスの環境を示すセンサデータを受信することと、
前記センサデータに基づいて前記移動ロボットデバイスを制御することと、
を含む方法。
【請求項17】
前記センサデータは前記移動ロボットデバイスの移動ベースのすぐ前方の地面を示し、前記方法は更に、
前記移動ロボットデバイスの前方にある崖を検出することを含み、前記移動ロボットデバイスを制御することは、前記検出された崖に基づいて前記移動ロボットデバイスの前記移動ベースをナビゲートすることを含む、請求項16に記載の方法。
【請求項18】
前記センサデータは前記移動ロボットデバイスの前方又は側方にある1つ以上の障害物を示し、前記移動ロボットデバイスを制御することは前記1つ以上の障害物との接触を回避することを含む、請求項16に記載の方法。
【請求項19】
前記センサデータは前記移動ロボットデバイスの上方及び後方にある1つ以上の表面を示し、前記方法は更に、
前記1つ以上の表面に対する前記移動ロボットデバイスの位置を決定することを含み、前記移動ロボットデバイスを制御することは、前記1つ以上の表面に対する前記移動ロボットデバイスの前記決定された位置に基づいて実行される、請求項16に記載の方法。
【請求項20】
移動ロボットデバイスのためのマストであって、
切り取り部分と、
前記マストの前記切り取り部分に搭載された3次元(3D)ライダーセンサであって、前記3Dライダーセンサの垂直視野を前記マストの前記切り取り部分から外側へ向かう方向で下方に傾けるように前記マストに対して固定されている、3Dライダーセンサと、
を備えるマスト。
【発明の詳細な説明】
【技術分野】
【0001】
(関連出願の相互参照)
[0001] 本出願は、2019年5月28日に出願された米国仮特許出願第62/853,534号の優先権を主張する2019年7月31日に出願された米国特許出願第16/528,141号の優先権を主張する。これらの全体的な内容は、援用により、本記載で充分に記述されているのと同様に本願に含まれる。
【背景技術】
【0002】
[0002] 技術の進歩と共に、ユーザを支援することができる多種多様な機能を実行するため様々なタイプのロボットデバイスが生成されている。ロボットデバイスは特に、マテリアルハンドリング、輸送、溶接、組み立て、及び分配に関連する用途向けに使用できる。時間と共に、こういったロボットシステムの動作の仕方はいっそうインテリジェントに、高効率に、かつ直感的になっている。ロボットシステムは現代生活の多くの面でますます普及してきており、ロボットシステムが効率的であることが望まれている。従って、効率的なロボットシステムに対する需要は、アクチュエータ、移動、検知技法、並びにコンポーネントの設計及び組み立てにおいて、革新的な分野を切り開くことに役立っている。
【発明の概要】
【0003】
[0003] 一例の移動ロボットデバイスは、ロボットの固定マストに搭載された3次元(3D)ライダーセンサを含む。3Dライダーセンサからのセンサデータを、前方の崖の検出、障害物の検出、及びロボットの位置特定のために使用できるように、3Dライダーセンサの位置及び向きと、それによって得られる視野を最適化することができる。
【0004】
[0004] 一実施形態において、移動ロボットデバイスが提供される。移動ロボットデバイスは移動ベースを含む。移動ロボットデバイスは更に、移動ベースに対して固定されたマストを含む。マストは切り取り部分(carved-out portion)を含む。移動ロボットデバイスは更に、マストの切り取り部分に搭載された3次元(3D)ライダーセンサを含む。3Dライダーセンサは、3Dライダーセンサの垂直視野を移動ロボットデバイスの前方のエリアに向けて下方に傾けるように、マストに対して固定されている。
【0005】
[0005] 別の実施形態では、方法が提供される。方法は、3次元(3D)ライダーセンサから移動ロボットデバイスの環境を示すセンサデータを受信することを含む。3Dライダーセンサは、移動ロボットデバイスのマストの切り取り部分に搭載され、3Dライダーセンサの垂直視野を移動ロボットデバイスの前方のエリアに向けて下方に傾けるようにマストに対して固定されている。方法は更に、センサデータに基づいて移動ロボットデバイスを制御することを含む。
【0006】
[0006] 更なる実施形態では、移動ロボットデバイスのためのマストが提供される。マストは切り取り部分を含む。マストは更に、マストの切り取り部分に搭載された3Dライダーセンサを含む。3Dライダーセンサは、3Dライダーセンサの垂直視野をマストの切り取り部分から外側へ向かう方向で下方に傾けるようにマストに対して固定されている。
【0007】
[0007] 別の実施形態では、少なくとも1つのプロセッサに機能を遂行させるため、この少なくとも1つのプロセッサによって実行可能であるプログラミング命令を含む非一時的コンピュータ可読媒体が提供される。機能は、3次元(3D)ライダーセンサから移動ロボットデバイスの環境を示すセンサデータを受信することを含む。3Dライダーセンサは、移動ロボットデバイスのマストの切り取り部分に搭載され、3Dライダーセンサの垂直視野を移動ロボットデバイスの前方のエリアに向けて下方に傾けるようにマストに対して固定されている。機能は更に、センサデータに基づいて移動ロボットデバイスを制御することを含む。
【0008】
[0008] 別の実施形態において、3次元(3D)ライダーセンサから移動ロボットデバイスの環境を示すセンサデータを受信するための手段を含むシステムが提供される。3Dライダーセンサは、移動ロボットデバイスのマストの切り取り部分に搭載され、3Dライダーセンサの垂直視野を移動ロボットデバイスの前方のエリアに向けて下方に傾けるようにマストに対して固定されている。システムは更に、センサデータに基づいて移動ロボットデバイスを制御するための手段を含む。
【0009】
[0009] 前述の概要は単なる例示であり、いかなる点でも限定的であることは意図されない。図面、以下の詳細な説明、及び添付図面を参照することにより、上述した例示的な態様、実施形態、及び特徴に加えて、別の態様、実施形態、及び特徴も明らかとなろう。
【図面の簡単な説明】
【0010】
図1】一例の実施形態に従ったロボットシステムの構成を示す。
図2】一例の実施形態に従った移動ロボットを示す。
図3】一例の実施形態に従った移動ロボットの分解図を示す。
図4】一例の実施形態に従ったロボットアームを示す。
図5A】一例の実施形態に従った3Dライダーセンサと共にロボットマストを示す。
図5B】一例の実施形態に従った3Dライダーセンサと共にロボットマストを示す。
図6A】一例の実施形態に従った3Dライダーセンサによる検出を示す。
図6B】一例の実施形態に従った3Dライダーセンサによる検出を示す。
図6C】一例の実施形態に従った3Dライダーセンサによる検出を示す。
図7】一例の実施形態に従った、図8及び図9とは異なる搭載向きの3Dライダーセンサの視野を示す。
図8】一例の実施形態に従った、図7及び図9とは異なる搭載向きの3Dライダーセンサの視野を示す。
図9】一例の実施形態に従った、図7及び図8とは異なる搭載向きの3Dライダーセンサの視野を示す。
図10】一例の実施形態に従った方法のブロック図である。
【発明を実施するための形態】
【0011】
[0018] 本明細書において、一例の方法、デバイス、及びシステムが記載される。「一例の」及び「例示的な」という用語は、本明細書で用いる場合、「例、事例、又は例示として機能する」を意味することは理解されよう。「一例」又は「例示的」であると本明細書に記載されている実施形態又は特徴は、そのように指示されていない限り、他の実施形態又は特徴より好適であるとも優れているとも必ずしも解釈されない。本明細書に提示される主題の範囲から逸脱することなく、他の実施形態を利用することができ、他の変更を加えることができる。
【0012】
[0019] 従って、本明細書に記載される一例の実施形態は限定的であることは意図されない。一般的に本明細書に記載されると共に図面に示される本開示の態様を、多種多様な異なる構成に配列、置換、結合、分離、及び設計できることは、容易に理解されよう。
【0013】
[0020] 本記載全体を通して、一例の実施形態の要素を導入するために冠詞「a」又は「an」が用いられる。特に他の規定がない限り、又は文脈上明らかに他の意味が示される場合を除いて、「a」又は「an」の使用は「少なくとも1つ」を意味し、「the」の使用は「その少なくとも1つ」を意味する。少なくとも2つの用語を列挙した記載中で接続詞「or(又は)」を用いる意図は、列挙した用語のうち任意のもの又は列挙した用語の任意の組み合わせを示すことである。
【0014】
[0021] 「第1」、「第2」、「第3」のような序数の使用は、各要素の特定の順序を示すためでなく、各要素を区別するためである。この記載の目的で、「多数の」及び「複数の」という用語は、「2つ以上の」又は「2つを超える」を示す。
【0015】
[0022] 更に、文脈上他の意味が示唆される場合を除いて、図面の各々に示される特徴部(feature)は相互に組み合わせて使用することができる。このため、図示されている全ての特徴部が各実施形態に必要であるわけではないことを理解した上で、図面は一般的に、1つ以上の全体的な実施形態の要素態様(component aspect)として見るべきである。図面では、文脈上他の意味が示される場合を除いて、同様の符号は通常、同様のコンポーネントを識別する。更に、特に断りのない限り、図面は一定の縮尺通りには描かれておらず、単に例示の目的のためだけのものである。また、図面は単に代表的なものであり、全てのコンポーネントが図示されているわけではない。例えば、追加の構造的又は制限的(restraining)コンポーネントは図示されていない場合がある。
【0016】
[0023] 更に、本明細書又は特許請求の範囲における要素、ブロック、又はステップの列挙は、明確さの目的のためのものである。従って、そのような列挙は、これらの要素、ブロック、又はステップが特定の配列に従うこと又は特定の順序で実行されることを要求する又は示唆すると解釈されるべきではない。
【0017】
I.概要
[0024] 移動ロボットデバイスは、種々のセンサを用いて環境に関する情報を収集し、その環境内でのロボットの動作を支援することができる。センサの選択を最適化し、更に、選択したセンサのロボット上での位置及び向きを最適化することによって、ロボットが関心領域内で所望のセンサカバレッジを達成することを可能としながら、全体的なコストを削減できる。非産業用ロボット及び特定クラスの産業用ロボットでは、コストの観点から、単一のセンサを多数の異なる目的のために利用することは特に有益であり得る。
【0018】
[0025] いくつかの例では、ロボットに3次元(3D)ライダーセンサを備えることができる。3Dライダーセンサは、環境内の物体にレーザ光を照射し、反射した光を1つ以上の検知要素で測定することにより、その物体までの距離を測定する。次いで、レーザ戻り時間及び/又は波長の差を用いて、環境の3D表現を発生することができる。いくつかの3Dライダーセンサは、レーザから環境内へ光を反射させて反射又は戻り光(return)の3Dポイントクラウドを発生する高速回転ミラーを用いる。この結果、3Dライダーセンサは、垂直回転軸を中心とした360度の水平視野を有し得るが、垂直視野を画定するのは1つの固定角のみである。いくつかの例では、垂直視野は90度よりわずかに大きい(例えば約95度)。他の例では、垂直視野は90度よりも著しく大きいか、90度に等しいか、又は90度未満であり得る。3Dライダーセンサの利用可能な視野から最大限のメリットを得るためには、ロボット上の注意深く選択した位置及び向きに3Dライダーセンサを搭載すればよい。
【0019】
[0026] 本明細書に記載されているいくつかの例では、ロボットデバイスのマストの切り取り部分に3Dライダーセンサを搭載することができる。マストは、ロボットの移動ベースに対して固定できる。マストは、移動ベースの前部の近傍に搭載された積層塔の一部として、回転可能知覚筐体と回転可能腕関節との間に位置決めできる。3Dライダーセンサは、3Dライダーセンサの垂直視野をロボット前方のエリアに向けて下方に傾ける向きに固定することができる。いくつかの例では、3Dライダーはその垂直軸が前方に傾斜するように搭載できる。3Dライダーセンサの位置及び向きは、ロボットが3Dライダーセンサからの深度データ(depth data)を多数の目的に利用できるように最適化することができる。多数の目的には、前方の崖の検出、障害物の検出、及びロボットの位置特定が含まれる。
【0020】
[0027] 前方の崖の検出に関して、3Dライダーセンサは、その垂直視野がロボットのすぐ前方(例えば、ロボットのフロントバンパに触れるか又はフロントバンパから数センチメートル)の地面を含むように傾けることができる。従って、3Dライダーセンサからのセンサデータを用いて、ロボットが回避しなければならない崖を示す可能性のあるロボット前方の地面の高さの予想外の変化を検出できる。ロボットのすぐ前方の地面上のポイントを含むことで、ロボットが新しい環境において崖のすぐ前方に位置しているときにオンされるか又は活性化される安全状態(safety case)に対応する。垂直視野は更に、ロボットからより離れた距離にある地面上のポイントも含んで、3Dライダーセンサがその距離にある崖も検出することを可能とする。3Dライダーセンサがロボット前方の崖を信頼性高く検出できる距離に基づいて、ロボットの最大速度を設定することができる。いくつかの例では、3Dライダーセンサに加えて、ロボットの知覚部(perception suite)の1つ以上の他のセンサ(例えばカメラ)により、崖の検出を支援するために使用され得るセンサデータを提供してもよい。
【0021】
[0028] 障害物の検出に関して、3Dライダーセンサの垂直視野は、ロボットのすぐ前方の地面を示す1つの端方向(extreme direction)から、ロボットの知覚筐体の上部に平行な高さよりも上方に延出する第2の端方向(例えばロボットの前方2メートルの距離)までに及び得る。より具体的には、いくつかの例において垂直視野は、移動ロボットデバイスの前方を指し示す水平ベクトルよりも10~20度上方にある第1の角度から、水平ベクトルよりも75~85度下方にある第2の角度まで延出し得る。従って3Dライダーセンサは、ロボット自体の高さ範囲内でロボット前方の障害物を検出するために効果的であり得る。
【0022】
[0029] ロボットの位置特定に関して、3Dライダーセンサの垂直視野をロボット前方のエリアに向けて下方に傾けることにより、3Dライダーセンサは、ロボットの後方及び上方の表面を示すセンサデータも捕捉する。更に、マストの切り取り部分の形状は、マストがロボット後方の上半球を3Dライダーセンサから過度に遮ることを防止できる。ロボット環境の上半球に関する深度情報を用いて、環境内でのロボット位置の決定を支援することができる。上半球は、ロボット位置特定の良好な基準点を提供するほとんど静的な構造(例えば天井及び/又は壁の部分)を含み得る。いくつかの例において、ロボットは、環境内で占有されたボクセルのボクセル表現を維持することができる。3Dライダーセンサからのセンサデータに基づく位置特定は、検出結果と記憶されたボクセル表現とのボクセル照合を行うことを含み得る。
【0023】
[0030] ロボット周囲の特定エリアのカバレッジを最適化する3Dライダーセンサの位置及び向きを選択することにより、死角(blind spot)の許容において妥協しなければならない場合もある。例えば、3Dライダーセンサをロボット前方のエリアに向けて下方に傾けることにより、3Dライダーセンサの垂直視野は水平よりもわずかに上方にのみ延出し得る。この結果、3Dライダーセンサはロボット前方及びロボットよりも実質的に上方のエリアを検出できない可能性がある。いくつかの例では、ロボットがそのロボットよりも上に浮かんでいる障害物に遭遇する可能性は低いので、この妥協は許容可能であり得る。例えば、オペレータがロボットの前方に立っている場合、オペレータが完全に3Dライダーセンサの視野内に収まらないとしても、3Dライダーはオペレータの身体の一部を検出するには充分である。また、いくつかの例では、ロボットの知覚筐体内に配置されたカメラのような別個のセンサが、ロボット前方の3Dライダーセンサの視野よりも上方の視角のカバレッジを提供することができる。更に、ロボット前方の上半球は3Dライダーセンサによって検出されない可能性があるが、ロボット後方の上半球はロボット位置特定を行うには同様に充分であり得る。
【0024】
[0031] 3Dライダーセンサの垂直視野をロボット前方のエリアに向けて下方に傾けることから生じ得る追加の死角は、ロボット後方の地上のエリアである。いくつかの例では、これに対する妥協的解決策は、このエリアを検出するためにロボットの移動ベースの後側に位置決めされた1次元(1D)飛行時間(ToF:time-of-flight)センサ群を用いることを含み得る。これらの1D ToFセンサは、3Dライダーセンサほど精密でないが、ロボット後方のエリアに関する充分な深度データを提供することができる。ロボットは一般に、ロボットが例えば物体を拾って操作する動作を行う可能性が高い前方のエリアに関しては、より詳細なデータが必要であり得る。
【0025】
[0032] 他の例では、マストの背面に追加の3Dライダーセンサを搭載してロボット後方の障害物を検出することができる。追加の3Dライダーセンサは、前面の3Dライダーセンサとは別個のマストの部分又は同一の切り取り部分に搭載され得る。様々な例では、追加の3Dライダーセンサは、上方に傾斜させるか、下方に傾斜させるか、又は鉛直の向きに固定することができる。別の例では、その代わりに、移動ベース上に(例えば移動の後端の近傍に)追加の3Dライダーを搭載してロボット後方の障害物を検出することができる。更に別の例では、それに加えて又はその代わりに、1つ以上の異なるタイプのセンサを用いてロボット後方の障害物を検出することができる。
【0026】
II.一例のロボットシステム
[0033] 図1は、本明細書に記載されている実施例と関連付けて使用され得るロボットシステムの一例の構成を示す。ロボットシステム100は、自律的に、半自律的に、又は1人もしくは複数人のユーザによって与えられる指示を用いて動作するよう構成できる。ロボットシステム100は、ロボットアーム、産業用ロボット、又は他の何らかの機構のような様々な形態で実施され得る。いくつかの例示の実施例は、大規模で低コストに設計されると共に種々のタスクをサポートするように設計されたロボットシステム100を含む。ロボットシステム100は、人間の周囲で動作できるように設計され得る。また、ロボットシステム100は機械学習向けに最適化され得る。本記載全体を通して、ロボットシステム100は、いくつかある名称の中でも特に、ロボット、ロボットデバイス、又は移動ロボットと呼ばれることもある。
【0027】
[0034] 図1に示されているように、ロボットシステム100は、1又は複数のプロセッサ102、データストレージ104、及び1又は複数のコントローラ108を含むことができ、これらは共に制御システム118の一部であり得る。また、ロボットシステム100は、1又は複数のセンサ112、1又は複数の動力源114、機械コンポーネント110、及び電気コンポーネント116も含むことができる。しかしながら、ロボットシステム100は例示の目的で図示されているので、これより多数の又は少数のコンポーネントを含み得る。ロボットシステム100の様々なコンポーネントは、有線又は無線の接続を含む任意の方法で接続することができる。更に、いくつかの例では、ロボットシステム100のコンポーネントは、単一の物理的要素(entity)でなく複数の物理的要素にわたって分散させることができる。ロボットシステム100の他の例示も存在し得る。
【0028】
[0035] 1又は複数のプロセッサ102は、1つ以上の汎用ハードウェアプロセッサ又は専用ハードウェアプロセッサ(例えばデジタル信号プロセッサ、特定用途向け集積回路等)として動作できる。1又は複数のプロセッサ102は、コンピュータ可読プログラム命令106を実行すると共にデータ107を操作するように構成できる。コンピュータ可読プログラム命令106及びデータ107の双方はデータストレージ104に記憶されている。また、1又は複数のプロセッサ102は、例えば1又は複数のセンサ112、1又は複数の動力源114、機械コンポーネント110、又は電気コンポーネント116のようなロボットシステム100の他のコンポーネントと、直接又は間接的に相互作用することができる。
【0029】
[0036] データストレージ104は、1つ以上の種類のハードウェアメモリとすることができる。例えばデータストレージ104は、1又は複数のプロセッサ102によって読み出し又はアクセスが可能な1つ以上のコンピュータ可読記憶媒体を含むか又はこの形態をとることができる。1つ以上のコンピュータ可読記憶媒体は、光学、磁気、有機、又は他のタイプのメモリ又はストレージのような揮発性又は不揮発性ストレージコンポーネントを含むことができ、全体的に又は部分的に1又は複数のプロセッサ102に一体化され得る。いくつかの実施例では、データストレージ104は単一の物理的デバイスとすることができる。他の実施例では、データストレージ104は、有線又は無線の通信を介して相互に通信できる2つ以上の物理的デバイスを用いて実施され得る。前述のように、データストレージ104はコンピュータ可読プログラム命令106及びデータ107を含むことができる。データ107は、いくつかある可能性の中でも特に、構成データ、センサデータ、又は診断データのような任意のタイプのデータであり得る。
【0030】
[0037] コントローラ108は、(おそらく、いくつかあるタスクの中でも特に)機械コンポーネント110、1又は複数のセンサ112、1又は複数の動力源114、電気コンポーネント116、制御システム118、又はロボットシステム100のユーザのうち任意の組み合わせ間のインタフェースとなるように構成された、1つ以上の電気回路、デジタル論理ユニット、コンピュータチップ、又はマイクロプロセッサを含み得る。いくつかの実施例において、コントローラ108は、ロボットシステム100の1つ以上のサブシステムによって特定の動作を実行するための専用の埋め込みバイスとすることができる。
【0031】
[0038] 制御システム118は、ロボットシステム100の動作状態を監視し、物理的に変化させることができる。その際に制御システム118は、機械コンポーネント110間又は電気コンポーネント116間のようなロボットシステム100の部分間のリンクとして機能できる。いくつかの例において、制御システム118は、ロボットシステム100と別のコンピューティングデバイスとの間のインタフェースとして機能できる。更に、制御システム118は、ロボットシステム100とユーザとの間のインタフェースとして機能できる。いくつかの例において制御システム118は、ジョイスティック、ボタン、又はポート等、ロボットシステム100と通信を行うための様々なコンポーネントを含み得る。上述した一例のインタフェース及び通信は、有線もしくは無線の接続、又はこれら双方によって実施され得る。制御システム118は、ロボットシステム100のため他の動作も実行することができる。
【0032】
[0039] 動作中、制御システム118は、有線又は無線の接続を介してロボットシステム100の他のシステムと通信を行うことができ、更に、ロボットの1人以上のユーザと通信を行うように構成できる。1つの可能な例として、制御システム118は、例えば物体を拾ってある位置から別の位置へ移動させるといった要求されるタスクを実行する命令を示す入力を、(例えばユーザから又は別のロボットから)受信できる。この入力に基づいて、制御システム118は、要求されたタスクを実行するための移動シーケンスをロボットシステム100に行わせる動作を実行できる。別の例として、制御システムは、要求された位置へ移動する命令を示す入力を受信できる。これに応答して、制御システム118は(おそらく他のコンポーネント又はシステムを用いて)、要求された位置へ向かう途中の環境でロボットシステム100を移動させる方向及び速度を決定できる。
【0033】
[0040] 制御システム118の動作は、1又は複数のプロセッサ102によって実行することができる。あるいは、これらの動作は、1もしくは複数のコントローラ108によって、又は1もしくは複数のプロセッサ102と1もしくは複数のコントローラ108との組み合わせによって実行できる。いくつかの実施例において、制御システム118は、部分的に又は全体的にロボットシステム100以外のデバイス上に存在し、従って少なくとも部分的にロボットシステム100を遠隔で制御することができる。
【0034】
[0041] 機械コンポーネント110は、ロボットシステム100が物理的動作を実行することを可能とするロボットシステム100のハードウェアを表す。いくつかの例として、ロボットシステム100は、アーム、エンドエフェクタ、頭部、首、胴体、ベース、及び車輪といった1つ以上の物理部材を含み得る。ロボットシステム100の物理部材又は他の部分は更に、これらの物理的部材を相互に対して移動させるよう配置されたアクチュエータを含み得る。また、ロボットシステム100は、制御システム118又は他のコンポーネントを収容するための1つ以上の構造体も含むことができ、更に、他のタイプの機械コンポーネントも含み得る。所与のロボットで用いられる特定の機械コンポーネント110は、ロボットの設計に基づいて変動する可能性があり、また、ロボットが実行するように構成された動作又はタスクに基づき得る。
【0035】
[0042] いくつかの例では、機械コンポーネント110は1つ以上の着脱可能コンポーネントを含み得る。ロボットシステム100は、そのような着脱可能コンポーネントを追加又は除去するように構成できるが、それにはユーザ又は別のロボットによる支援が必要となることがある。例えばロボットシステム100は、必要に応じて又は所望の場合に交換又は変更できる着脱可能エンドエフェクタ又は指を備えて構成することができる。いくつかの実施例において、ロボットシステム100は、1つ以上の着脱可能又は交換可能なバッテリユニット、制御システム、動力システム、バンパ、又はセンサを含み得る。他のタイプの着脱可能コンポーネントもいくつかの実施例に含まれ得る。
【0036】
[0043] ロボットシステム100は、ロボットシステム100の様相(aspect)を検知するように配置された1又は複数のセンサ112を含み得る。1又は複数のセンサ112は、いくつかの可能性の中でも特に、1又は複数の力センサ、トルクセンサ、速度センサ、加速度センサ、位置センサ、近接センサ、運動センサ、位置センサ、荷重センサ、温度センサ、タッチセンサ、深度センサ、超音波距離センサ、赤外線センサ、物体センサ、又はカメラを含み得る。いくつかの例において、ロボットシステム100は、ロボットから物理的に分離されているセンサ(例えば、他のロボット上に位置決めされたセンサ、又はロボットが動作している環境内に配置されたセンサ)からセンサデータを受信するように構成できる。
【0037】
[0044] 1又は複数のセンサ112は、(おそらくデータ107を介して)センサデータを1又は複数のプロセッサ102に提供することで、ロボットシステム100がその環境と相互作用すること、及びロボットシステム100の動作を監視することを可能とする。センサデータは、制御システム118によって機械コンポーネント110及び電気コンポーネント116の活性化、移動、及び非活性化を行うため様々なファクタを評価する際に使用できる。例えば、1又は複数のセンサ112は、環境の地形又は付近の物体の位置に対応するデータを捕捉することができ、これによって環境認識及びナビゲーションを支援できる。
【0038】
[0045] いくつかの例において、1又は複数のセンサ112は、(例えば長距離の物体検出、距離決定、もしくは速度決定のための)レーダ、(例えば短距離の物体検出、距離決定、もしくは速度決定のための)ライダー、(例えば水中の物体検出、距離決定、もしくは速度決定のための)ソーナ、(例えばモーションキャプチャのための)VICON(登録商標)、1つ以上のカメラ(例えば3Dビジョンのための立体カメラ)、全地球測位システム(GPS)送受信器、又は、ロボットシステム100が動作している環境の情報を捕捉するための他のセンサを含み得る。1又は複数のセンサ112は、環境をリアルタイムで監視し、障害物、地形の要素、気象条件、温度、又は環境の他の様相を検出することができる。別の例において、1又は複数のセンサ112は、ターゲット又は識別された物体のサイズ、形状、外形、構造、又は向き等、その物体の1つ以上の特徴に対応するデータを捕捉できる。
【0039】
[0046] また、ロボットシステム100は、ロボットシステム100の様々なコンポーネントの状態を監視できる1又は複数のセンサ112を含む、ロボットシステム100の状態を示す情報を受信するように構成された1又は複数のセンサ112を含み得る。1又は複数のセンサ112は、ロボットシステム100のシステムの活動を測定し、例えば伸縮式アーム、エンドエフェクタ、又はロボットシステム100の他の機械的もしくは電気的特徴部の動作等、ロボットシステム100の様々な特徴部の動作に基づく情報を受信することができる。1又は複数のセンサ112が提供したデータによって、制御システム118がロボットシステム100のコンポーネントの動作のエラーを決定すること、及びそれらのコンポーネントの全体的な動作を監視することが可能となる。
【0040】
[0047] 一例としてロボットシステム100は、力/トルクセンサを用いて、ロボットシステム100の様々なコンポーネントにかかる負荷を測定することができる。いくつかの実施例において、ロボットシステム100は、アーム又はエンドエフェクタ上に1つ以上の力/トルクセンサを含んで、アーム又はエンドエフェクタの1つ以上の部材を移動させるアクチュエータにかかる負荷を測定できる。いくつかの例において、ロボットシステム100は、手首又はエンドエフェクタ又はその近傍であるがロボットアームの他の関節又はその近傍でない位置に、力/トルクセンサを含むことができる。別の例において、ロボットシステム100は、ロボットシステムのアクチュエータの位置を検知する1つ以上の位置センサを使用することができる。例えばそのような位置センサは、アーム又はエンドエフェクタ上のアクチュエータの伸長、格納、配置、又は回転の状態を検知できる。
【0041】
[0048] 別の例として、1又は複数のセンサ112は1つ以上の速度又は加速度センサを含むことができる。例えば、1又は複数のセンサ112は慣性測定ユニット(IMU:inertial measurement unit)を含み得る。IMUは、重力ベクトルに対するワールドフレーム(world frame)の速度及び加速度を検知できる。次いで、ロボットシステム100内のIMUの位置とロボットシステム100の運動学に基づいて、IMUにより検知した速度及び加速度をロボットシステム100の速度及び加速度に変換すればよい。
【0042】
[0049] ロボットシステム100は、本明細書で明示的に検討されない他のタイプのセンサを含み得る。これに加えて又はこの代わりに、ロボットシステムは、本明細書に列挙されていない目的のために特定のセンサを用い得る。
【0043】
[0050] また、ロボットシステム100は、ロボットシステム100の様々なコンポーネントに動力を供給するように構成された1つ以上の動力源114も含むことができる。ロボットシステム100は、いくつかの可能な動力システムの中でも特に、油圧システム、電気システム、バッテリ、又は他のタイプの動力システムを含み得る。1つの例示として、ロボットシステム100は、ロボットシステム100のコンポーネントに電荷を与えるように構成された1つ以上のバッテリを含み得る。機械コンポーネント110又は電気コンポーネント116のいくつかは、それぞれ異なる動力源に接続するか、同一の動力源によって動力を供給するか、又は複数の動力源によって動力を供給することができる。
【0044】
[0051] 電力又はガソリンエンジン等、任意のタイプの動力源を用いてロボットシステム100に動力を供給することができる。これに加えて又はこの代わりに、ロボットシステム100は、流体動力を用いて機械コンポーネント110に動力を供給するよう構成された油圧システムを含み得る。ロボットシステム100のコンポーネントは、例えば作動油(hydraulic fluid)が油圧システム全体を通って様々な油圧モータ及び油圧シリンダへ伝送されることに基づいて動作し得る。油圧システムは、ロボットシステム100のコンポーネント間のチューブ、可撓性ホース、又は他のリンクを通る加圧作動油によって、油圧動力を伝達できる。1又は複数の動力源114は、外部動力源に対する有線接続、無線充電、燃焼、又は他の例のように、様々なタイプの充電を用いて充電することができる。
【0045】
[0052] 電気コンポーネント116は、電荷又は電気信号を処理、伝達、又は提供することができる様々な機構を含み得る。電気コンポーネント116は、いくつかの可能な例の中でも特に、ロボットシステム100の動作を可能とするための電線、回路、又は無線通信送信器及び受信器を含み得る。電気コンポーネント116は、ロボットシステム100が様々な動作を実行できるように機械コンポーネント110と相互作用し得る。電気コンポーネント116は、例えば様々な機械コンポーネント110に1又は複数の動力源114からの動力を供給するように構成できる。更に、ロボットシステム100は電気モータを含み得る。電気コンポーネント116の他の例も存在し得る。
【0046】
[0053] ロボットシステム100は、ロボットシステムの付属物及びコンポーネントに接続するか又はそれらを収容することができる本体を含み得る。このため、本体の構造は複数の例において変動することがあり、更に、所与のロボットが実行するよう設計され得る特定の動作に依存する可能性がある。例えば、重い荷物を運ぶように開発されたロボットは、荷物を置くことができる幅広い本体を有し得る。同様に、狭い空間内で動作するように設計されたロボットは、比較的背が高く細い本体を有し得る。また、本体又は他のコンポーネントは、金属又はプラスチックといった様々なタイプの材料を用いて開発され得る。他の例において、ロボットは、異なる構造を有するか又は様々なタイプの材料で作製された本体を有し得る。
【0047】
[0054] 本体又は他のコンポーネントは、1又は複数のセンサ112を含むか又は担持し得る。これらのセンサは、いくつかの例の中でも特に、本体、頭部、首、ベース、胴体、アーム、又はエンドエフェクタ等、ロボットシステム100上の様々な位置に配置することができる。
【0048】
[0055] ロボットシステム100は、輸送される予定の何らかの貨物のような荷物を運ぶように構成できる。いくつかの例では、ロボットシステム100によって、ロボットシステム100に取り付けられた箱又は他の容器内に荷物を置くことができる。また、荷物は、ロボットシステム100が利用できる外部バッテリ又は他のタイプの動力源(例えばソーラーパネル)も表し得る。荷物を運ぶことは、ロボットシステム100を構成することができる1つの使用例を表すが、ロボットシステム100は他の動作を実行するようにも構成され得る。
【0049】
[0056] 上述のようにロボットシステム100は、様々なタイプの付属物、車輪、エンドエフェクタ、把持デバイス等を含み得る。いくつかの例では、ロボットシステム100は、車輪、トレッド(tread)、又は他の何らかの移動形態を用いる移動ベースを含み得る。加えて、ロボットシステム100は、ロボットアーム又は他の何らかの形態のロボットマニピュレータを含み得る。移動ベースの場合、このベースは機械コンポーネント110の1つと見なされ、車輪を含むことができ、本体の残り部分に加えてロボットアームの可動性を与えるアクチュエータのうち1つ以上によって動力が供給される。
【0050】
[0057] 図2は、一例の実施形態に従った移動ロボットを示す。図3は、一例の実施形態に従った移動ロボットの分解図を示す。より具体的には、ロボット200は、移動ベース202、中央部204、アーム206、アームエンドシステム(EOAS:end-of-arm system)208、マスト210、知覚筐体212、及び知覚部214を含み得る。ロボット200は、移動ベース202内に収容された計算ボックス216も含み得る。
【0051】
[0058] 移動ベース202は、ロボット200の移動を行うためロボット200の前端に位置決めされた2つの駆動輪を含む。また、移動ベース202は、地面上での移動ベース202の運動を容易にするため追加のキャスタ(図示せず)も含む。移動ベース202は、計算ボックス216の容易な取り外しを可能とするモジュール式アーキテクチャを有し得る。計算ボックス216は、ロボット200のための(機械的に一体化された制御システムでなく)着脱可能制御システムとして機能することができる。外殻を取り外した後、計算ボックス216を容易に取り外す及び/又は交換することができる。また、移動ベース202は、追加のモジュール方式を与えるように設計できる。例えば移動ベース202は、動力システム、バッテリ、及び/又は外部バンパを全て容易に取り外す及び/又は交換することができるように設計され得る。
【0052】
[0059] 中央部204は、移動ベース202の前端で移動ベース202に取り付けることができる。中央部204は、移動ベース202に固定された搭載柱を含む。中央部204は更に、アーム206のための回転関節を含む。より具体的には、中央部204は、アーム206のための第1の2自由度を含む(肩ヨーJ0関節と肩ピッチJ1関節)。搭載柱及び肩ヨーJ0関節は、移動ベース202の前面で積層塔の一部を形成し得る。搭載柱及び肩ヨーJ0関節は同軸であり得る。中央部204の搭載柱の長さは、一般的に遭遇する高さレベル(例えばコーヒーテーブル面及びカウンタ天板のレベル)で操作タスクを実行するのに充分な高さをアーム206に与えるように選択できる。また、中央部204の搭載柱の長さによって、肩ピッチJ1関節は、アーム206を移動ベース202の上方で移動ベース202に接触させずに回転させることができる。
【0053】
[0060] アーム206は、中央部204に接続された場合に7DOFロボットアームであり得る。上記のように、アーム206の第1の2DOFは中央部204に含めることができる。残りの5DOFは、図2及び図3に示されているように、アーム206の独立した部分に含めることができる。アーム206は、プラスチックの一体リンク構造で構成され得る。アーム206内部に、独立したアクチュエータモジュール、ローカルモータドライバ、及び貫通孔配線を収容することができる。
【0054】
[0061] EOAS208は、アーム206の端部のエンドエフェクタとすることができる。EOAS208は、ロボット200が環境内で物体を操作することを可能とする。図2及び図3に示されているように、EOAS208は、劣駆動ピンチグリッパ等のグリッパとすることができる。グリッパは、物体検出及びグリッパ制御を容易にするため、力/トルクセンサのような1つ以上の接触センサ及び/又は1つ以上のカメラのような非接触センサを含み得る。また、EOAS208は、吸引グリッパのような異なるタイプのグリッパ、又はドリルもしくはブッシュのような異なるタイプのツールとしてもよい。また、EOAS208は、交換可能とすること、又はグリッパ指のような交換可能コンポーネントを含むことも可能である。
【0055】
[0062] マスト210は、アーム206の肩ヨーJ0関節と知覚筐体212との間の比較的長くて細いコンポーネントとすることができる。マスト210は、移動ベース202の前面における積層塔の一部であり得る。マスト210は、移動ベース202に対して固定することができる。マスト210は中央部204と同軸であり得る。マスト210の長さによって、EOAS208が操作している物体を知覚部214で知覚することが容易になり得る。マスト210は、肩ピッチJ1関節が垂直方向上方へ回転した場合にアーム206の二頭筋の最上部がマスト210の上部とほぼ並ぶような長さを有し得る。そのため、マスト210の長さは、肩ピッチJ1関節が垂直方向上方へ回転した場合に知覚筐体212とアーム206との衝突を防ぐのに充分なものであり得る。
【0056】
[0063] 図2及び図3に示されているように、マスト210は、環境に関する深度情報を収集するよう構成された3Dライダーセンサを含み得る。3Dライダーセンサは、マスト210の切り取り部分に結合して、下向きの角度に固定することができる。ライダーの位置は、位置特定、ナビゲーション、及び前方の崖の検出のために最適化できる。
【0057】
[0064] 知覚筐体212は、知覚部214を構成する少なくとも1つのセンサを含み得る。知覚筐体212は、(例えば、EOAS208で操作されている物体を見るため)知覚筐体212の向きを変えることを可能とするパン/チルト制御に接続され得る。知覚筐体212は、移動ベース202に固定された積層塔の一部であり得る。知覚筐体212の後部はマスト210と同軸であり得る。
【0058】
[0065] 知覚部214は、ロボット200の環境を表すセンサデータを収集するように構成されたセンサ一式を含み得る。知覚部214は、赤外線(IR)支援立体深度センサを含み得る。知覚部214は更に、人間とロボットの相互作用及び文脈情報のための広角RGB(red-green-blue)カメラを含み得る。知覚部214は更に、物体分類のための高解像度RGBカメラを含み得る。また、人間とロボットの相互作用及びシーン照明を改善するため、知覚部214を取り囲むフェースリング光(face light ring)も含めることができる。
【0059】
[0066] 図4は、一例の実施形態に従ったロボットアームを示す。ロボットアームは7DOFを含む。すなわち、肩ヨーJ0関節、肩ピッチJ1関節、二頭筋ロールJ2関節、肘ピッチJ3関節、前腕ロールJ4関節、手首ピッチJ5関節、及び手首ロールJ6関節である。これらの関節の各々を1つ以上のアクチュエータに結合することができる。関節に結合されたアクチュエータは、運動連鎖(kinematic chain)(及び、ロボットアームに取り付けられたエンドエフェクタ)に沿ってリンクの移動を発生させるように動作可能であり得る。
【0060】
[0067] 肩ヨーJ0関節は、ロボットアームがロボットの前後へ回転することを可能とする。この運動の1つの有益な利用は、ロボットが前方にある物体を拾い、その物体をロボットの後部へ素早く置くこと(及びその逆の運動)である。この運動の別の有益な利用は、ロボットアームをロボット後方の格納構成(stowed configuration)からロボット前方のアクティブ位置へ素早く移動させること(及びその逆の運動)である。
【0061】
[0068] 肩ピッチJ1関節は、ロボットがロボットアームを上げること(例えば二頭筋がロボットの知覚部レベルにくるように)、及びロボットアームを下げること(例えば二頭筋が移動ベースのすぐ上にくるように)を可能とする。この運動は、ロボットが環境内の様々な目標高さレベルで操作動作(例えば上方把持及び側方把持)を効率的に実行することを可能とするために有益である。例えば、肩ピッチJ1関節を垂直方向上方位置へ回転させて、ロボットが環境内のテーブル上の物体を容易に操作することを可能とする。肩ピッチJ1関節を垂直下方位置へ回転させて、ロボットが環境内の地面上の物体を容易に操作することを可能とする。
【0062】
[0069] 二頭筋ロールJ2関節は、ロボットが二頭筋を回転させて二頭筋に対して肘及び前腕を移動させることを可能とする。この運動は、ロボットの知覚部がEOASをはっきり見ることを容易にするために特に有益であり得る。二頭筋ロールJ2関節を回転させることによって、ロボットは、ロボットのグリッパで保持された物体までの見通しを改善するため、肘及び前腕がそれを遮ることを防止できる。
【0063】
[0070] 運動連鎖に沿って交互に配置されたピッチ関節及びロール関節(肩ピッチJ1関節、二頭筋ロールJ2関節、肘ピッチJ3関節、前腕ロールJ4関節、手首ピッチJ5関節、及び手首ロールJ6関節)は、ロボットアームの操作性を向上させるように提供される。物体の向きを変える際のアーム運動を低減するため、手首ピッチJ5関節、手首ロールJ6関節、及び前腕ロールJ4関節の軸は交差している。物体の回転を改善するため、手首に2つのピッチ関節でなく手首ロールJ6関節が提供されている。
【0064】
[0071] いくつかの例において、図4に示されているようなロボットアームは教示モードで動作することができる。具体的に述べると、教示モードは、ユーザがロボットアームと物理的に相互作用し、様々な移動を実行及び記録させるよう指導することを可能とするロボットアームの動作モードであり得る。教示モードでは、特定のタスクをどのように実行するかに関してロボットに教示することを目的とした教示入力に基づいて、ロボットアームに(例えばユーザによって)外力を加える。ロボットアームはこれにより、ユーザからの命令及び指導に基づいて、どのように特定のタスクを実行するかに関するデータを取得できる。このようなデータは、いくつかの可能性の中でも特に、機械コンポーネントの複数の構成、関節位置データ、速度データ、加速度データ、トルクデータ、力データ、及び動力データに関し得る。
【0065】
[0072] 教示モードの間、ユーザは、いくつかの例ではEOAS又は手首をつかみ、他の例ではロボットアームの任意の部分をつかみ、ロボットアームを物理的に動かすことによって外力を与えることができる。具体的に述べると、ユーザは、ロボットアームが物体をつかみ、その物体を第1の位置から第2の位置へ動かすようにロボットアームを指導できる。教示モード中にユーザがロボットアームを指導する際、ロボットは移動に関するデータを取得し記録することができるので、ロボットアームは、後の独立動作中に(例えばロボットアームが教示モード外で独立して動作するときに)独立してタスクを実行するように構成できる。場合によっては、いくつかの可能性の中でも特に、他の物体、機械、又はロボットシステムのような、物理的作業空間内の他の要素によって外力を加えることができる。
【0066】
[0073] 図5A及び図5Bは、一例の実施形態に従った3Dライダーセンサを備えるロボットマストを示す。より具体的には、図5Aは、図2及び図3に関して図示及び記載されているロボットと同一又は同様であり得るロボット500を示す。ロボット500はマスト502を含む。マスト502は切り取り部分504を含む。搭載ポイント508の下方に3Dライダーセンサ506を取り付けることによって、切り取り部分504に3Dライダーセンサ506が搭載されている。
【0067】
[0074] いくつかの例では、3Dライダーセンサ506は、固定垂直角で360度の水平視野を有するように構成できる。いくつかの例では、固定垂直角は90度よりも大きくすることができる。他の例では、固定垂直角は90度以下とすることができる。水平視野は、1つ以上のレーザがロボット500の環境へ投影した光を反射して深度測定値を収集する1つ以上のミラーの回転の垂直軸を中心として画定され得る。図5Aを参照すると、垂直軸は、3Dライダーセンサ506の中心及び搭載ポイント508を貫通し得る。図5Aに示されているように、3Dライダーセンサ506は前方に傾斜させることができる。このため、3Dライダーセンサ506の垂直視野はロボット500の前方のエリアに向けて下方に傾けることができる。一例として、3Dライダーセンサ506の垂直軸は、鉛直方向からロボット前方へ16度傾ければよい。
【0068】
[0075] 切り取り部分504は、上から見下ろした場合に3Dライダーセンサ506が切り取り部分504内に収まるように3Dライダーセンサ506を搭載ポイント508の下に搭載することを可能とする。切り取り部分504は、マスト502の2つの実質的に円筒形の部分の間に位置決めされ得る。更に、3Dライダーセンサの少なくとも一部は、実質的に円筒形の部分の間に、突き出ることなく収めることができる。有利な点として、3Dライダーセンサ506を切り取り部分504内に搭載することによって、3Dライダーセンサがロボット500の知覚部内の他のセンサを遮るのを防止できる。更に、切り取り部分504は、マスト502が3Dライダーセンサ506の水平視野の過剰な量を遮るのを防止できる。いくつかの例では、切り取り部分504の形状に基づいて、3Dライダーセンサの水平視野の少なくとも270度はマスト502によって遮られない。他の例では、マスト502及び/又は切り取り部分504は異なる形状又は寸法を有し得る。
【0069】
[0076] 図5Bを参照すると、ロボット500のマスト502は裏当てコンポーネント510を含むことができ、3Dライダーセンサ506は搭載ポイント508の下で裏当てコンポーネント510に搭載されている。裏当てコンポーネント510は、3Dライダーセンサ506をロボット500の知覚筐体及び/又は中央部に接続するための配線を収容し得る。また、裏当てコンポーネント510は、印刷回路基板等の他のコンポーネントも収容し得る。マスト502は更に、2つの対称筐体コンポーネント512及び514を含み得る。3Dライダーセンサ506が、裏当てコンポーネント510並びに2つの対称筐体コンポーネント512及び514によって取り囲まれたボリュームの外部にあるように、2つの対称筐体コンポーネント512及び514を裏当てコンポーネント510の各側に取り付けることができる。裏当てコンポーネント510及び/又は2つの対称筐体コンポーネント512及び514は射出成形され得る。
【0070】
[0077] いくつかの例では、図5A及び図5Bに示されているマスト502は、ロボット500の移動ベースの前端に位置決めされた積層塔の一部であり得る。マスト502の上方で、積層塔はパン及びチルトが可能である知覚筐体を含み得る。マスト502の下方で、積層塔はロボットアームの回転関節を含み得る。ロボットアームの回転関節は、マストを回転させることなくロボットアームを回転させるように構成できる。従って、マストは移動ベースに対して固定されたままであり得る。3Dライダーセンサ506が移動ベース前方の地表面近傍のエリアを検出する向きになるように、積層塔を移動ベースに固定することができる。ロボットの移動ベースは更に、移動ベース後方の地表面近傍のエリアを対象とする1D ToFセンサ群を含み得る。まとめると、このセンサ機構は、特定の用途向けの、特にロボット後方のエリアに比べてロボット前方のエリアを示す精密なデータが必要である場合の、適切な妥協案を提供できる。
【0071】
[0078] 図6A図6B、及び図6Cは、一例の実施形態に従った3Dライダーセンサによる検出を示す。より具体的には、図6Aは、環境602におけるロボット600上の3Dライダーセンサによる検出のポイントクラウドの縮小角ビューを示し、図6Bは上から見下ろしたビューを示し、図6Cは拡大角ビューを示す。ロボット600は、図2図3、及び/又は図5A及び図5Bに示されているものと同一又は同様であり得る。
【0072】
[0079] 例示の目的のため、個々のポイント検出は3つのカテゴリに分けられている。小さい白い四角形は、環境602の地面上でのポイント検出を表す。大きい白い四角形は、環境602内の物体上でのポイント検出を表す。黒い四角形は、環境602の上半球上でのポイント検出を表す(例えば天井及び/又は壁)。
【0073】
[0080] 例えば図6Bに示されているような地面上でのポイント検出では、ロボット600上の3Dライダーセンサの位置及び向きに基づいて、ポイント検出がロボット600に最も近いのはロボット600のすぐ前方である。ロボット600の側方では、ポイント検出はロボット600からより離れている。更に、3Dライダーセンサはロボット600のすぐ後ろの地面を検出することはできない。これらのトレードオフによって、前方の崖の精密な検出が可能となる。これは、ロボット600の移動ベースが典型的に前方向へナビゲートすると仮定した場合の優先事項であり得る。いくつかの例では、例えば図6Cで示されているように、ロボット前方の最小距離では地面が検出されないことがある。この距離は、ロボット600の前輪の配置を考慮してロボット600の移動ベースが崖を進んでいくリスクを防ぐように充分に小さく維持することができる。ロボット600の後方の崖を検出することはあまり必要でない可能性がある。従って、ロボット600の後方の崖を検出するため、下向き1D ToFセンサのような低コストの代替的な崖検出解決策をロボット600上で用いてもよい。
【0074】
[0081] 例えば図6Bで示されているような物体上でのポイント検出では、3Dライダーセンサの配置によって、ロボット600は、ロボット600の前方及び側方に位置する障害物の少なくとも一部を検出できる。例えば図6Aに示されているように、3Dライダーセンサの垂直視野では、ロボット600は、ロボット600の知覚筐体とほぼ平行な高さまでの障害物上のポイントしか検出することはできない。このトレードオフは許容可能であり得る。その理由は、ほとんどの物体が、ロボット600上の3Dライダーセンサによって検出される地表面に近い部分を持たずにロボットよりも上方に浮遊している可能性は低いからである。また、ロボットの知覚部内の1つ以上のセンサ(例えばカメラ)が、このエリアのカバレッジを提供することができる。加えて、ロボットが横断する可能性のある、安全が最重視される(safety critical)経路の外にある浮遊物体を検出することはあまり必要でない場合がある。同様に、ロボット600の後方の物体を検出することはあまり重要でない場合がある。従って、ロボット600の後方の障害物を検出するため、ロボット600の後側に沿って水平に配置された1D Tofセンサのような低コストの代替的な物体検出解決策を用いてもよい。
【0075】
[0082] 例えば図6Aに示されているような上半球上でのポイント検出では、ロボット600の後方及び側方の天井及び/又は壁のポイントを3Dライダーセンサによって検出することができる。このセンサデータを用いて、環境602内でのロボット600の位置特定を支援することができる。例えば位置特定プロセスは、検出されたポイントを、環境602内の表面のボクセルグリッド表現と位置合わせすることを含み得る。上半球のこれらの表面は概ね静的であり、経時的に頻繁に変化する可能性が低いので、これらの表面はロボット位置特定のために特に適切であり得る。更に、ロボット600の後方及び側方の上半球の部分は、ロボット600上の3Dライダーセンサの位置及び向きに基づいて検出されない可能性のあるロボット600の前方の上半球のポイントと同様に効果的であり得る。
【0076】
[0083] 図6A図6B、及び図6Cに表されているポイントクラウドは例示の目的のためのものであることは理解されよう。実際、ロボット600は、追加のポイントクラウドデータ又は他のタイプのセンサデータを提供する追加のセンサを含み得る。加えて、代替的な例では、ロボット上の3Dライダーセンサの異なる機構が、環境の異なるポイントクラウド表現を提供し得る。
【0077】
[0084] 図7図8、及び図9は、一例の実施形態に従った、異なる搭載向きの3Dライダーセンサの視野を示す。より具体的には、図7図8、及び図9はそれぞれ、ロボットデバイス上の3Dライダーセンサの異なる搭載角によって生じる2つの死角を表す。各図において、3Dライダーセンサの垂直視野は、ロボットのすぐ前方における2つの死角の間のエリアをカバーしている。例示の目的のため、各図において、3Dライダーセンサの垂直視野は90度よりもわずかに大きいものとして表されている。代替的な例では、異なる垂直視野を有する3Dライダーセンサが使用され得る。
【0078】
[0085] 図7は、ロボットデバイス上の3Dライダーセンサをロボット前方へ向けて上方に傾けた3Dライダーセンサの第1の搭載位置を表す。より具体的には、ロボット700は、垂直軸を鉛直方向から(例えば18度の角度)後方へ傾けた3Dライダーセンサ702を含み得る。3Dライダーセンサ702のこの搭載角によって、ロボット700の前方の第1の死角704が生じ得る。更に、3Dライダーセンサ702のこの搭載角によって、ロボット700の上方及び後方の第2の死角706が生じ得る。
【0079】
[0086] いくつかの用途では、死角704のために、3Dライダーセンサ702によって検出できないロボット700の前方の地面のエリアが大きすぎるので、3Dライダーセンサ702を前方の崖の検出のために使用できない可能性がある。図7に示されている搭載角では、3Dライダーセンサ702は、ロボット700の前方及び実質的に上方のエリアを検出するために効果的であり得る。更に、この搭載角は、死角706の位置に基づいてロボット700の前方の上半球の一部を用いてロボットの位置特定を行うために効果的であり得る。用途によっては、図7に示されている搭載角は好適な搭載角であり得る。しかしながら、用途によっては、3Dライダーセンサ702がロボット700の前方及び実質的に上方のエリアを検出することは重要でない場合がある。
【0080】
[0087] 図8は、ロボットデバイス上の3Dライダーセンサが鉛直である3Dライダーセンサの第2の搭載向きを表す。より具体的には、ロボット800は、垂直軸が地面に対して垂直である3Dライダーセンサ802を含み得る。3Dライダーセンサ802のこの搭載角によって、ロボット800の前方の第1の死角804が生じ得る。更に、3Dライダーセンサ802のこの搭載角によって、ロボット800の上方の第2の死角806が生じ得る。3Dライダーセンサ802はロボット800上で鉛直に搭載されているが、3Dライダーセンサ802の内部構成に基づいて、3Dライダーセンサ802の垂直視野をロボット前方のエリアに向けて下方に傾けてもよい。
【0081】
[0088] いくつかの用途では、図8に示されている3Dライダーセンサ802の搭載角は好適な搭載角であり得る。しかしながら、死角704より小さいとはいえ、死角804のために、3Dライダーセンサ802によって検出できないロボット800の前方の地面のエリアがこの場合も大きすぎるので、3Dライダーセンサ802を前方の崖の検出のために使用できない可能性がある。加えて、死角806のために、環境の上半球の充分な部分が3Dライダーセンサ802によって検出されないので、3Dライダーセンサ802をロボット位置特定のため有効に使用できない可能性がある。図8に示されている搭載角では、図7の3Dライダーセンサ702よりも、3Dライダーセンサ802によって検出される上半球の部分は小さくなり得る。
【0082】
[0089] 図9は、ロボットデバイス上の3Dライダーセンサをロボット前方へ向けて下方に傾けた3Dライダーセンサの第3の搭載向きを表す。より具体的には、ロボット900は、垂直軸を鉛直から(例えば16度の角度)前方に傾けた3Dライダーセンサ902を含み得る。3Dライダーセンサ902のこの搭載角によって、ロボット900の前方の第1の死角904が生じ得る。更に、3Dライダーセンサ902のこの搭載角によって、ロボット900の上方及び前方の第2の死角906が生じ得る。
【0083】
[0090] 死角904は、3Dライダーセンサ902を前方の崖の検出のため有効に使用できるほど充分に小さい(又は、場合によっては存在しない)可能性がある。更に、死角906があっても、環境の上半球のうちロボット900の後方及び上方の充分な部分が3Dライダーセンサ902によって検出されるので、3Dライダーセンサ902をロボット位置特定のため有効に使用することが可能となり得る。図9に示されている搭載角では、3Dライダーセンサ902の垂直視野の上端ベクトルは、水平方向からわずかに上向きに傾き得る。例えばこのベクトルは、ロボットから2メートルの距離で、ロボットの知覚筐体の最上部に平行な高さと交差する。いくつかの例において、この垂直視野は、前方の崖の検出及びロボットの位置特定に加えて、ロボット900の前方の障害物検出のために充分なカバレッジを提供できる。従って、いくつかの用途では、図9に示されている3Dライダーセンサ902の搭載角は好適な搭載角であり得る。
【0084】
[0091] 図10は、一例の実施形態に従った方法のブロック図である。いくつかの例において、図10の方法1000は、ロボットシステム100の制御システム118のような制御システムによって実行され得る。別の例において、方法1000は、1又は複数のプロセッサ102等の1つ以上のプロセッサが、データストレージ104等のデータストレージに記憶されたプログラム命令106等のプログラム命令を実行することによって実行され得る。方法1000の実行には、図1から図4図5Aから図5B図6Aから図6C図7から図9、及び/又は図10に関して図示及び記載されているロボット及び/又はロボットコンポーネントのうち任意のものが必要であり得る。方法1000の実行において、他のロボットデバイスを使用することも可能である。別の例では、方法1000のブロックのうちいくつか又は全ては、ロボットデバイスから遠くにある制御システムによって実行され得る。更に別の例では、方法1000の異なるブロックは、ロボットデバイス上に配置された及び/又はロボットデバイスから遠くにある異なる制御システムによって実行され得る。
【0085】
[0092] ブロック1010において、方法1000は、3Dライダーセンサから移動ロボットデバイスの環境を示すセンサデータを受信することを含む。3Dライダーセンサは、移動ロボットデバイスのマストの切り取り部分に搭載され得る。3Dライダーセンサは、3Dライダーセンサの垂直視野をロボット前方のエリアに向けて下方に傾けるように、マストに対して固定され得る。いくつかの例では、3Dライダーセンサの垂直軸をロボット前面に向けて鉛直方向に対して前方に傾けることができる。センサデータはポイントクラウドデータであり得る。
【0086】
[0093] いくつかの例において、3Dライダーセンサは、3Dライダーセンサの垂直視野が移動ロボットデバイスのすぐ前方の地面を含むように傾けられる。例えば、3Dライダーセンサの垂直視野は、ロボットデバイスの移動ベースのフロントバンパの一部を含むか又はこの一部と一直線に並べることができる。
【0087】
[0094] いくつかの例において、3Dライダーセンサの垂直視野は90度よりも大きく、3Dライダーセンサは、3Dライダーセンサの垂直視野の上限が3Dライダーセンサから移動ロボットデバイス前方を示す水平ベクトルよりも上方の角度に延出するように傾けられる。
【0088】
[0095] いくつかの例において、3Dライダーセンサの垂直視野は、移動ロボットデバイス前方を示す水平ベクトルよりも10度~20度上方にある第1の角度から、この水平ベクトルよりも75度~85度下方にある第2の角度まで延出する。
【0089】
[0096] ブロック1020において、方法1000は、センサデータに基づいて移動ロボットデバイスを制御することを更に含む。移動ロボットデバイスを制御することは、前方の崖の検出、障害物の検出、及びロボットの位置特定を任意に組み合わせた用途のために3Dライダーセンサからのセンサデータを使用することを含み得る。
【0090】
[0097] より具体的に述べると、センサデータは、移動ロボットデバイスの移動ベースのすぐ前方の地面を示すことができ、方法1000は更に、移動ロボットデバイスの前方にある崖を検出することを含み得る。このため、移動ロボットデバイスを制御することは、検出された崖に基づいて移動ロボットデバイスの移動ベースをナビゲートすることを含み得る。例えば移動ロボットデバイスは、検出された崖を進んでいくのを回避するため、停止するか又は方向を変えるよう制御され得る。
【0091】
[0098] また、3Dライダーセンサからのセンサデータは、移動ロボットデバイスの前方又は側方にある1つ以上の障害物を示すことがある。その場合、センサデータに基づいて移動ロボットデバイスを制御することは、この1つ以上の障害物との接触を回避することを含み得る。例えば移動ロボットデバイスは、検出された障害物に衝突するのを回避するため、停止するか又は方向を変えるよう制御することができる。
【0092】
[0099] また、3Dライダーセンサからのセンサデータは、移動ロボットデバイスの上方及び後方にある1つ以上の表面を示すことができ、方法1000は更に、この1つ以上の表面に対する移動ロボットデバイスの位置を決定することを含み得る。移動ロボットデバイスの位置を決定することは、センサデータを、移動ロボットデバイスの環境のボクセルグリッド表現と位置合わせすることを含み得る。このため、移動ロボットデバイスは、1つ以上の表面に対して決定された移動ロボットデバイスの位置に基づいて制御することができる。
【0093】
[0100] 本明細書に記載されている例は、移動ロボットデバイス上の3Dライダーセンサの位置及び向きを最適化して、3Dライダーセンサからのセンサデータを、前方の崖の検出、障害物の検出、及びロボットの位置特定のために利用することを含む。センサデータを他の目的に使用することも可能である。更に、3Dライダーセンサの位置及び向きは、異なる用途のために収集されたセンサデータを最適化するよう調整することも可能である。
【0094】
III.結論
[0101] 本開示は、本出願に記載されている特定の実施形態に関して限定されない。それらの特定の実施形態は、様々な態様の例示であることが意図されている。当業者に認められるように、その精神及び範囲から逸脱することなく多くの変更及び変形が実施可能である。本明細書に列挙されたものに加えて、本開示の範囲内にある機能的に同等の方法及び装置も、前述の記載から当業者には明らかであろう。そのような変更及び変形は、添付の特許請求の範囲の範囲内にあることが意図されている。
【0095】
[0102] 上記の詳細な説明は、添付図面を参照して、開示されているシステム、デバイス、及び方法の様々な特徴及び機能を記載している。図面では、文脈上他の意味が示される場合を除いて、通常は同様の符号は同様のコンポーネントを識別する。本明細書及び図面に示されている例示の実施形態は、限定を意図していない。本明細書に提示されている主題の精神又は範囲から逸脱することなく、他の実施形態を利用すること、及び他の変更を実施することができる。本明細書で全体的に記載され図面に示されている本開示の態様は、全てが本明細書で明示的に想定される多種多様な異なる構成において、配列、置換、結合、分離、及び設計が可能であることは容易に理解されよう。
【0096】
[0103] 情報の処理を表すブロックは、本明細書に記載されている方法又は技法の特定の論理機能を実行するように構成できる回路に対応し得る。この代わりに又はこれに加えて、情報の処理を表すブロックは、プログラムコード(関連データを含む)のモジュール、セグメント、又は部分に対応し得る。プログラムコードは、方法又は技法における特定の論理機能又は行為を実施するためプロセッサによって実行可能な1つ以上の命令を含み得る。プログラムコード又は関連データは、ディスク又はハードドライブ又は他の記憶媒体を含む記憶デバイス等、任意のタイプのコンピュータ可読媒体に記憶され得る。
【0097】
[0104] また、コンピュータ可読媒体は、レジスタメモリ、プロセッサキャッシュ、及びランダムアクセスメモリ(RAM)のように、短時間データを記憶するコンピュータ可読媒体等、非一時的コンピュータ可読媒体を含み得る。また、コンピュータ可読媒体は、例えばリードオンリメモリ(ROM)、光ディスク又は磁気ディスク、コンパクトディスクリードオンリメモリ(CD-ROM)のような二次又は永続的な長期記憶装置等、長時間プログラムコード又はデータを記憶する非一時的コンピュータ可読媒体も含み得る。また、コンピュータ可読媒体は、他の任意の揮発性又は不揮発性記憶システムも含み得る。コンピュータ可読媒体は、例えばコンピュータ可読記憶媒体、又は有形の記憶デバイスであると見なすことができる。
【0098】
[0105] 更に、1以上の情報伝送を表すブロックは、同一の物理デバイス内のソフトウェア又はハードウェアモジュール間の情報伝送に対応し得る。しかしながら、他の情報伝送は、異なる物理デバイスにおけるソフトウェアモジュール間又はハードウェアモジュール間である可能性もある。
【0099】
[0106] 図面に示されている具体的な配置は、限定と見なすべきではない。他の実施形態では、所与の図に示されている各要素が更に数を増加又は減少して含まれ得ることは理解されよう。また、例示されている要素のいくつかを組み合わせること又は省略することも可能である。更に、一例の実施形態は図面に示されていない要素を含むことも可能である。
【0100】
[0107] 様々な態様及び実施形態を本明細書で開示したが、他の態様及び実施形態も当業者には明らかであろう。本明細書に開示されている様々な態様及び実施形態は例示の目的のためのものであり、限定は意図されておらず、その真の範囲は後続の特許請求の範囲によって示される。
図1
図2
図3
図4
図5A
図5B
図6A
図6B
図6C
図7
図8
図9
図10
【国際調査報告】