(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-19
(45)【発行日】2024-04-30
(54)【発明の名称】非常に薄い物体または特徴部のロボット把持の検出
(51)【国際特許分類】
B25J 15/08 20060101AFI20240422BHJP
B25J 19/02 20060101ALI20240422BHJP
B25J 13/08 20060101ALI20240422BHJP
【FI】
B25J15/08 W
B25J19/02
B25J13/08 Z
(21)【出願番号】P 2022519119
(86)(22)【出願日】2020-09-25
(86)【国際出願番号】 US2020052657
(87)【国際公開番号】W WO2021080729
(87)【国際公開日】2021-04-29
【審査請求日】2022-05-17
(32)【優先日】2019-10-25
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2020-09-23
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】521105662
【氏名又は名称】デクステリティ・インコーポレーテッド
【氏名又は名称原語表記】DEXTERITY,INC.
(74)【代理人】
【識別番号】110000028
【氏名又は名称】弁理士法人明成国際特許事務所
(72)【発明者】
【氏名】メノン・サミア
(72)【発明者】
【氏名】サン・チョウエン
(72)【発明者】
【氏名】スー・ハリー・ツェ
【審査官】松浦 陽
(56)【参考文献】
【文献】特開2016-203293(JP,A)
【文献】特開2005-349492(JP,A)
【文献】国際公開第2018/235214(WO,A1)
【文献】特開2015-145057(JP,A)
【文献】特開2009-190111(JP,A)
【文献】特開2000-263481(JP,A)
【文献】特開2019-025566(JP,A)
【文献】特開2019-181622(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 1/00 - 21/02
(57)【特許請求の範囲】
【請求項1】
ロボットシステムであって、
複数のセンサを含む触覚検知ユニットと、前記複数のセンサの各々は、ロボットアームエンドエフェクタとアイテムとの係合に関連付けられている検知値を反映する対応する出力を提供するよう構成され、前記複数のセンサは、係合を示す第1因子に関連付けられている第1値を測定するよう構成されている第1センサと、係合を示す第2因子に関連付けられている第2値を測定するよう構成されている第2センサとを備え、前記第1因子および前記第2因子は異なり、前記触覚検知ユニットは、複数の層を含み、前記複数の層の中間層は、前記中間層に関連付けられている物質に埋め込まれている複数の測定対象物を含み、前記中間層の下側の層は前記第1センサを含み、前記第1センサは、前記中間層に関連付けられている物質に埋め込まれている前記複数の測定対象物に関連付けられている値を計測するように構成されており、最上層は前記第2センサを含み、前記複数の測定対象物の少なくとも1つは、前記中間層に関連付けられている縁部境界に配置され、前記中間層と関連付けられている上部境界は前記最上層と関連付けられている底部境界と接触し、
前記複数のセンサに接続されているプロセッサであって、前記プロセッサは、少なくとも部分的に、
前記第1因子に関連付けられている第1入力を決定するために前記第1値を用い、前記第2因子に関連付けられている第2入力を決定するために前記第2値を用い、
前記第1入力および前記第2入力に少なくとも部分的に基づいて、前記ロボットアームエンドエフェクタと前記アイテムとの係合に関連付けられている出力を提供するよう構成されている多因子モデルに、前記第1入力および前記第2入力を提供し、
前記ロボットアームエンドエフェクタと前記アイテムとの係合に関連付けられている判定を行うために、前記多因子モデルの前記出力を用いることによって、前記ロボットアームエンドエフェクタと前記アイテムとの係合に関連付けられている前記判定を行うために、前記複数のセンサのそれぞれの前記出力を用いるよう構成されている、プロセッサと、
を備える、ロボットシステム。
【請求項2】
請求項1に記載のロボットシステムであって、前記第1因子は、
重量および変形の少なくともいずれか1つを含み、前記第2因子は、導通、導電率、抵抗、インダクタンス、および、静電容
量のいずれか1つを含む、ロボットシステム。
【請求項3】
請求項1に記載のロボットシステムであって、前記複数の測定対象物は、複数の磁石
を含み、前記第1センサは、磁気センサである、ロボットシステム。
【請求項4】
請求項3に記載のロボットシステムであって、前記複数の磁石は、グリッド状に配列されている、ロボットシステム。
【請求項5】
請求項1に記載のロボットシステムであって、前記複数の
測定対象物は、エミッタ
を備え、前記第1センサは、レシー
バを備える、ロボットシステム。
【請求項6】
請求項1に記載のロボットシステムであって、前記複数の測定対象物は、複数のマーカ
を備え、前記第1センサは、画像セン
サを備える、ロボットシステム。
【請求項7】
請求項1に記載のロボットシステムであって、前記第2センサは、導電材料を含む、ロボットシステム。
【請求項8】
請求項1に記載のロボットシステムであって、前記ロボットアームエンドエフェクタの手首部分
は、力センサを含む、ロボットシステム。
【請求項9】
請求項1に記載のロボットシステムであって、前記第1因子は、第1係数に関連付けられ、前記第2因子は、第2係数に関連付けられている、ロボットシステム。
【請求項10】
請求項
9に記載のロボットシステムであって、前記第1係数および前記第2係数は等しい、ロボットシステム。
【請求項11】
請求項
9に記載のロボットシステムであって、前記第1係数および前記第2係数は異なる、ロボットシステム。
【請求項12】
請求項1に記載のロボットシステムであって、前記複数のセンサのそれぞれの前記出力は、静的測定が実行されている時、および、動的測定が実行されている時に、前記プロセッサに提供される、ロボットシステム。
【請求項13】
請求項1に記載のロボットシステムであって、前記多因子モデルの前記出力は、前記ロボットアームエンドエフェクタが前記アイテムの把持に成功したことを示す、ロボットシステム。
【請求項14】
請求項1に記載のロボットシステムであって、前記多因子モデルの前記出力は、前記ロボットアームエンドエフェクタが前記アイテムの把持に成功しなかったことを示す、ロボットシステム。
【請求項15】
請求項1に記載のロボットシステムであって、前記多因子モデルの前記出力は、人的介入が必要であることを示す、ロボットシステム。
【請求項16】
請求項1に記載のロボットシステムであって、前記多因子モデルの前記出力は、前記ロボットアームエンドエフェクタが別のアイテムに係合すべきであることを示す、ロボットシステム。
【請求項17】
方法であって、
触覚検知ユニットに含まれる複数のセンサの内の第1センサによって検知された第1値を用いて、係合を示す第1因子に関連付けられている第1入力を決定すると共に、前記触覚検知ユニットに含まれる前記複数のセンサの内の第2センサによって検知された第2値を用いて、係合を示す第2因子に関連付けられている第2入力を決定し、前記複数のセンサの各々は、ロボットアームエンドエフェクタとアイテムとの係合に関連付けられている検知値を反映する対応する出力を提供するよう構成され、前記第1因子および前記第2因子は異なり、前記触覚検知ユニットは、複数の層を含み、前記複数の層の中間層は、前記中間層に関連付けられている物質に埋め込まれている複数の測定対象物を含み、前記中間層の下側の層は前記第1センサを含み、前記第1センサは、前記中間層に関連付けられている物質に埋め込まれている前記複数の測定対象物に関連付けられている値を計測するように構成されており、最上層は前記第2センサを含み、前記複数の測定対象物の少なくとも1つは、前記中間層に関連付けられている縁部境界に配置され、前記中間層と関連付けられている上部境界は前記最上層と関連付けられている底部境界と接触し、
前記第1入力および前記第2入力に少なくとも部分的に基づいて、前記ロボットアームエンドエフェクタと前記アイテムとの係合に関連付けられている出力を提供するよう構成されている多因子モデルに、前記第1入力および前記第2入力を提供し、
前記ロボットアームエンドエフェクタと前記アイテムとの係合に関連付けられている判定を行
うために、前記多因子モデルの前記出力を用いること、
を備える、方法。
【発明の詳細な説明】
【背景技術】
【0001】
他の出願への相互参照
本願は、名称を「DETECTING ROBOT GRASP OF VERY THIN OBJECT OR FEATURE」とする、2019年10月25日出願の米国仮特許出願第62/926,155号に基づく優先権を主張し、その仮特許出願は、すべての目的のために参照により本明細書に組み込まれる。
【0002】
ロボットシステムが、第1位置から第2位置へ1または複数のアイテムを移動させるタスクを課せられる場合がある。ロボットシステムは、1または複数のアイテムの内の1つを移動させるために選択する。ロボットシステムは、ロボットアームエンドエフェクタを用いて、選択したアイテムを把持する。しかしながら、選択アイテムのサイズまたは形状によっては、ロボットアームエンドエフェクタが実際に選択アイテムを把持したか否かを判定することが困難な場合がある。特に、非常に薄いアイテムまたは特徴部の把持の失敗と成功とを判別することは、互いに対するフィンガの位置がわずかに異なりうるだけなので、困難でありうる。
【図面の簡単な説明】
【0003】
以下の詳細な説明および添付の図面において、本発明の様々な実施形態を開示する。
【0004】
【
図1】いくつかの実施形態に従って、アイテムをピックアンドプレースするためのシステムを示すブロック図。
【0005】
【
図2】いくつかの実施形態に従って、ロボットアームエンドエフェクタを示すブロック図。
【0006】
【
図3A】いくつかの実施形態に従って、触覚検知ユニットを示すブロック図。
【0007】
【
図3B】いくつかの実施形態に従って、異なる視点から触覚検知ユニットを示す図。
【0008】
【
図3C】いくつかの実施形態に従って、異なる視点から触覚検知ユニットを示す図。
【0009】
【
図3D】いくつかの実施形態に従って、磁気センサの一例を示す図。
【0010】
【
図3E】いくつかの実施形態に従って、触覚検知ユニットを示す図。
【0011】
【
図3F】いくつかの実施形態に従って、触覚検知ユニットを示す図。
【0012】
【
図3G】いくつかの実施形態に従って、触覚検知ユニットを示す図。
【0013】
【
図4】いくつかの実施形態に従って、アイテムをピックアンドプレースするための処理を示すフローチャート。
【0014】
【
図5】いくつかの実施形態に従って、アイテムを把持するための処理を示すフローチャート。
【0015】
【
図6】は、いくつかの実施形態に従って、アイテムの把持が成功したか否かを判定するための処理を示すフローチャート。
【0016】
【
図7】いくつかの実施形態に従って、アイテムの把持が成功したか否かを判定するための処理を示すフローチャート。
【発明を実施するための形態】
【0017】
本発明は、処理、装置、システム、物質の組成、コンピュータ読み取り可能な格納媒体上に具現化されたコンピュータプログラム製品、および/または、プロセッサ(プロセッサに接続されたメモリに格納および/またはそのメモリによって提供される命令を実行するよう構成されたプロセッサ)を含め、様々な形態で実施されうる。本明細書では、これらの実施例または本発明が取りうる任意の他の形態が、技術と呼ばれうる。一般に、開示されている処理の工程の順序は、本発明の範囲内で変更されてもよい。特に言及しない限り、タスクを実行するよう構成されるものとして記載されたプロセッサまたはメモリなどの構成要素は、或る時間にタスクを実行するよう一時的に構成された一般的な構成要素として、または、タスクを実行するよう製造された特定の構成要素として実装されてよい。本明細書では、「プロセッサ」という用語は、1または複数のデバイス、回路、および/または、コンピュータプログラム命令などのデータを処理するよう構成された処理コアを指すものとする。
【0018】
以下では、本発明の原理を示す図面を参照しつつ、本発明の1または複数の実施形態の詳細な説明を行う。本発明は、かかる実施形態に関連して説明されているが、どの実施形態にも限定されない。本発明の範囲は、特許請求の範囲によってのみ限定されるものであり、本発明は、多くの代替物、変形物、および、等価物を含む。以下の説明では、本発明の完全な理解を提供するために、多くの具体的な詳細事項が記載されている。これらの詳細事項は、例示を目的としたものであり、本発明は、これらの具体的な詳細事項の一部または全てがなくとも特許請求の範囲に従って実施可能である。簡単のために、本発明に関連する技術分野で周知の技術事項については、本発明が必要以上にわかりにくくならないように、詳細には説明していない。
【0019】
ロボットアームエンドエフェクタがアイテムの把持に成功したか否かを判定するための技術が開示されている。様々な実施形態において、触覚検知ユニットが提供されている。触覚検知ユニットは、1または複数のセンサを備え、および/または、1または複数のセンサによって生成されたセンサ出力値を受信する。1または複数のセンサは、磁気センサ、光学センサ、電気機械センサ、圧力センサ、ひずみゲージ、力センサ、導電率センサ、電流センサ、電圧センサ、静電容量センサ、抵抗センサ、インダクタンスセンサ、赤外線センサ、温度センサ、などの内の1または複数を含んでよい。1または複数のセンサの各々は、ロボットアームエンドエフェクタとアイテム(「物体」とも呼ばれる)との係合に関連付けられている検知値を反映する出力を提供するよう構成されている。1または複数のセンサ出力は、ロボットアームエンドエフェクタとアイテムとの係合を示す1または複数の因子を決定するために用いられる。1または複数の因子は、重量、変形、導通、導電率、圧力、抵抗、インダクタンス、静電容量、または、ロボットアームエンドエフェクタの係合を示す任意のその他の因子、を含みうる。
【0020】
触覚検知ユニットは、ロボットアームエンドエフェクタに関連付けられていてよい。ロボットアームエンドエフェクタは、2以上のフィンガを備えてよい。対応する触覚検知ユニットが、フィンガの各々に取り付けられていてよい。エンドエフェクタは、アイテムを係合するために、1または複数の吸着カップもしくはその他の構造を備えてよく、対応する触覚検知ユニットが、アイテムと係合するために用いられる吸着カップまたはその他の構造の各々に取り付けられていてよい。いくつかの実施形態において、1または複数の触覚検知ユニットは、フィンガの各々が、関連付けられた触覚検知ユニットを有するように、ロボットアームエンドエフェクタのフィンガ覆うように配置されている検知カバー(例えば、グローブ、ミトンなど)の中に備えられている。いくつかの実施形態において、1または複数の触覚検知ユニットは、ロボットアームエンドエフェクタに埋め込まれている。
【0021】
触覚検知ユニットは、複数の検知層を備えてよい。検知層の各々は、1または複数のセンサを備えてよい。触覚検知ユニットは、導電層、変形層、および、基板層、の内の1または複数を備えてよい。アイテムとの係合時に、触覚検知ユニットのセンサの各々は、基準検知値(例えば、ロボットアームエンドエフェクタがアイテムと係合していない時の検知値)とは異なる対応する検知値を出力しうる。
【0022】
導電層は、導通またはその他の電気特性(導電率、抵抗、静電容量、または、インダクタンス、など)の測定を可能にする導電材料(例えば、金属)を含んでよい。導電層は、エンドエフェクタの第1フィンガに取り付けられている第1触覚検知ユニットがエンドエフェクタの第2フィンガに取り付けられている第2触覚検知ユニットに接触した時に、第1および第2触覚検知ユニットの導電層が接触するように、触覚検知ユニットの最上層であってよい。ロボットアームエンドエフェクタがアイテムと係合すると、アイテムは、触覚検知ユニットの導電層が互いに接触するのを阻止する。しかしながら、ロボットアームエンドエフェクタがアイテムとの係合を試みたが失敗した場合、触覚検知ユニットの導電層は、互いに接触する。導電層は、導電層を用いて、1または複数の導通値、1または複数の導電率値、1または複数の抵抗値、1または複数の静電容量値、ならびに/もしくは、1または複数のインダクタンス値、を決定できるプロセッサに接続されている。
【0023】
変形層は、誘電材料を含んでよい(例えば、シリコン、プラスチック、または、力に反応して変形しうる任意のその他の材料)。測定対象物が、誘電材料に挿入されていてよい。ロボットアームエンドエフェクタがアイテムと係合する前に、基準検知値が決定されていてよい。ロボットアームエンドエフェクタがアイテムと係合すると、検知値が、基準検知値と比較されてよい。検知値は、エンドエフェクタがアイテムの把持に成功したか失敗したかによって、異なりうる。
【0024】
いくつかの実施形態において、複数の磁石が、誘電材料に挿入されている。複数の磁石は、グリッド(例えば、2Dグリッドまたは3Dグリッド)パターンまたは非グリッドパターンに配列されていてよい。1または複数の磁石が、誘電材料の縁部境界上に配置されていてよい。複数の磁石は、基板層上に配置された磁気センサに関連付けられていてよい。磁気センサは、ロボットアームエンドエフェクタがアイテムと係合する前に基準磁場を検出してよい。ロボットアームエンドエフェクタがアイテムと係合すると、係合に関連付けられている力および/またはモーメントが、複数の磁石の内の1または複数を変位させる。この変位は、磁気センサによって検知される磁場の変化を引き起こす。磁気センサは、プロセッサに接続されており、プロセッサは、磁場の変化を用いて、重量値および/または変形値を決定してよい。
【0025】
いくつかの実施形態において、複数のマーカが、誘電材料に埋め込まれている。複数のマーカは、グリッドパターンまたは非グリッドパターンに配列されていてよい。グリッドパターンは、2Dグリッドパターンまたは3Dグリッドパターンであってよい。複数のマーカは、基板層上に配置された画像センサに関連付けられていてよい。画像センサは、ロボットアームエンドエフェクタがアイテムと係合する前にマーカすべてに対して基準位置を検出してよい。ロボットアームエンドエフェクタがアイテムと係合すると、係合に関連付けられている力および/またはモーメントが、複数のマーカの内の1または複数を変位させる。この変位は、画像センサによって検知されるマーカ位置の変化を引き起こす。画像センサは、プロセッサに接続されており、プロセッサは、マーカ位置の変化を用いて、重量値および/または変形値を決定してよい。
【0026】
いくつかの実施形態において、反射材料が、誘電材料に埋め込まれ、エミッタおよびレシーバが、基板層上に配置されている。エミッタは、反射材料で反射される信号を送信してよく、反射された信号は、レシーバで受信される。ロボットアームエンドエフェクタがアイテムと係合すると、係合に関連付けられている力および/またはモーメントが、信号がどのように誘電材料を通過するのかを変化させる。係合は、レシーバで受信される反射信号の振幅を基準信号振幅から変化させる。レシーバセンサは、プロセッサに接続されており、プロセッサは、信号振幅の変化を用いて、重量値および/または変形値を決定してよい。
【0027】
いくつかの実施形態において、変形を検出できる1または複数の電気機械センサ(例えば、ひずみゲージ)が、誘電材料に埋め込まれている。ロボットアームエンドエフェクタがアイテムと係合すると、係合に関連付けられている力および/またはモーメントが、1または複数の電気機械センサに関連付けられている抵抗を変化させる。1または複数の電気機械センサは、プロセッサに接続されており、プロセッサは、抵抗の変化を用いて、重量値および/または変形値を決定してよい。
【0028】
いくつかの実施形態において、誘電材料は、気体、空気、または、液体を含む柔軟な膜(例えば、サック、パウチ)を備えてよい。ロボットアームエンドエフェクタがアイテムと係合すると、係合に関連付けられている力および/またはモーメントが、柔軟な膜に関連付けられている圧力を変化させる。圧力は、圧力センサによって検出されてよく、プロセッサが、圧力の変化を用いて、重量値および/または変形値を決定してよい。
【0029】
いくつかの実施形態において、基板層は、1または複数のセンサを支持するよう構成されている材料であり、ロボットシステムに関連付けられているプロセッサに1または複数のセンサを電気接続する。
【0030】
様々な実施形態において、把持の試行時に、本明細書に開示されているロボットシステムは、ロボットアームエンドエフェクタがアイテムの把持に成功したか否かを判定するために、1または複数のセンサを用いて静的測定を実行する。静的測定は、ロボットアームエンドエフェクタが静止状態のアイテムを把持し、1または複数のセンサの出力を測定することを含んでよい。1または複数のセンサの出力は、1または複数の因子の値を決定するために、1または複数のセンサに関連付けられている対応する基準出力(すなわち、ロボットアームエンドエフェクタがアイテムを把持していない時の出力)と比較されてよい。
【0031】
また、ロボットシステムは、ロボットアームエンドエフェクタがアイテムの把持に成功したか否かを判定するために、複数のセンサを用いて動的測定を実行してよい。例えば、最初の把持の後、ロボットアームエンドエフェクタの向きが変更されてよく、ロボットアームエンドエフェクタが変化している間に、複数のセンサの出力を用いて、ロボットアームエンドエフェクタがアイテムの把持に成功したか否かが判定されてよい。
【0032】
1または複数の触覚検知ユニットは、プロセッサに接続されている。ロボットアームエンドエフェクタは、同様にプロセッサに接続されているその他のセンサを備えてもよい。例えば、ロボットアームエンドエフェクタのフィンガをロボットアームに接続するハウジング(例えば、「手首ハウジング」)が、力および/またはトルクを測定するために用いられる1または複数のセンサを備えてよい。1または複数のハウジングセンサは、ロボットアームエンドエフェクタの重量に対して標準化するように検知重量をフィルタリングするために用いられてよい。ハウジングの1または複数のセンサに関連付けられているセンサ出力は、1または複数の因子を決定するために用いられてよい。複数のセンサ(例えば、1以上の触覚検知ユニットセンサおよび/または1以上のハウジングセンサ)は、それらの対応する出力をプロセッサに提供する。プロセッサは、センサ出力を用いて、ロボットアームエンドエフェクタとアイテムとの間の係合に関連付けられている1以上の力および/または1以上のモーメントを決定してよい。プロセッサは、センサ出力を用いて、触覚検知ユニットの各々に関連付けられている力およびモーメントを決定してよい。
【0033】
プロセッサは、センサ出力を用いて、複数の因子に対応する値を決定してよい。例えば、検知された重量、検知された変形、検知された導通、検知された導電率、検知された圧力、検知された抵抗、検知されたインダクタンス、および/または、検知された静電容量が決定されてよい。複数の因子は各々、係数に関連付けられている。いくつかの実施形態において、複数の因子は、均等に重み付けされる(例えば、それらは各々、関連付けられた係数「1」を有する)。いくつかの実施形態において、複数の因子の一部は、異なる重みを有する。例えば、アイテムは、金属アイテムであってよく、導通因子に関連付けられている係数は、変形因子に関連付けられている係数よりも小さくてよい。
【0034】
プロセッサは、ロボットアームエンドエフェクタがアイテムを把持したか否かを判定するために、多因子モデルを実装してよい。多因子モデルは、ルールベースモデル、予測モデル、機械学習モデル(例えば、ニューラルネットワーク、線形分類器、サポートベクターマシン、線形回帰、ロジスティック回帰、決定木、深層学習、など)、などであってよい。いくつかの実施形態において、多因子モデルは、ロボットアームエンドエフェクタがアイテムと係合しているか否か(例えば、係合/非係合)に関する二分決定を出力するよう構成されている。いくつかの実施形態において、多因子モデルは、ロボットアームエンドエフェクタがアイテムと係合しているか否かの確率を出力するよう構成されている。
【0035】
複数の因子に関連付けられている値およびそれらに対応する係数は、多因子モデルに入力として提供される。入力は、多因子モデルに適用され、ロボットシステムは、多因子モデルの出力に基づいて応答動作を実行するよう構成されている。いくつかの実施形態において、ロボットシステムは、第1位置から第2位置へアイテムを移動させる。いくつかの実施形態において、ロボットシステムは、アイテムの再把持を試みる。いくつかの実施形態において、ロボットシステムは、人的介入を要求する。いくつかの実施形態において、ロボットアームエンドエフェクタは、アイテムを把持することができず、異なるアイテムを選択して把持する。
【0036】
触覚検知ユニットと多因子モデルを用いることで、ロボットアームエンドエフェクタがアイテムの把持に成功したか否かを正確に判定することが可能になる。複数のセンサは、同じ結論(すなわち、ロボットアームエンドエフェクタがアイテムの把持に成功したか失敗したか)を裏づけるデータ点を異なる視点から提供しうる。単一因子アプローチは、ロボットシステムの意思決定プロセスにバイアスをかけうる。例えば、ロボットシステムは、ロボットアームエンドエフェクタのフィンガ間の導通のみを因子として用いてよい。ロボットシステムは、アイテムの把持に成功しうるが、そのアイテムが導電性の場合がある。唯一の因子として導通を用いることで、ロボットシステムがアイテムの把持に成功しなかったと判定させる可能性がある。対照的に、複数の因子を用いれば、意思決定プロセスにおいてバランスの取れたアプローチがロボットシステムに提供される。
【0037】
図1は、いくつかの実施形態に従って、アイテムをピックアンドプレースするためのシステムを示すブロック図である。図の例において、ロボットシステム101が、環境100内で動作している。ロボットシステム101は、固定ベース104上に取り付けられたロボットアーム102を構成する複数のジョイントされたセグメントと、エンドエフェクタ108と、1または複数のセンサ134と、コントローラ106と、を備える。ロボットアーム102は、ロボットアーム102とロボットアーム102の遠位端に取り付けられたエンドエフェクタ108とを操作するよう構成されたコントローラ106に接続されている。いくつかの実施形態において、コントローラ106は、ロボットアーム102および/またはエンドエフェクタ108を含む剛体要素の間のそれぞれのジョイントの各々に構成されたモータへ、電圧および/またはその他の信号、入力などを供給して、対応するトルクをそれぞれのモータに印加させることで、モータの回転子に結合された要素をモータの非回転子が結合された要素に対して移動させることにより、ロボットアーム102およびエンドエフェクタ108を制御する。エンドエフェクタ108は、吸着グリッパ、平行グリッパ、ソフトグリッパ、器用グリッパ(dexterous gripper)、などを含んでよい。ロボットシステム101は、複数のエンドエフェクタを備え、アイテムを把持するのに最も適したエンドエフェクタを選択してよい。例えば、エンドエフェクタは、アイテムのテクスチャに基づいて選択されてよい。ロボットシステム101は、アイテムがあまりに多くのしわのある領域を有する場合に、吸着グリッパの代わりに平行グリッパを選択してよい。
【0038】
図1に示す例において、ロボットアーム102は、テーブルまたはその他の表面110(例えば、作業空間エリア)から、アイテム(図の例では、異なる形状のアイテム112、114、および、116など)をピックアップして、コンベヤベルト118(荷下ろしエリア)の上にそれらをプレースするために用いられている。図に示すように、ロボットアーム102は、以前に、コンベヤベルト118上にアイテム120を配置するために用いられ、コンベヤベルト118は、アイテム120がまもなくコンベヤベルト118から目的地122へ落ちるような方向に回転している。作業空間エリアは、動くプラットフォーム(ベルトコンベヤまたは回転するプラットフォームなど)もしくは動かないエリアを含んでよく、そこに、山積みのアイテム(安定または不安定)が配置されている。
【0039】
様々な実施形態において、
図1に示す「ピックアンドプレース」動作は、ロボットアーム102と、エンドエフェクタ108と、コントローラ106とを備えたロボットシステム101によって、少なくとも部分的には自律動作モードで実行される。例えば、いくつかの実施形態において、コントローラ106および/または1以上のその他の制御装置(プロセッサ、メモリ、および、その他の構成要素を備えたコンピュータなど)は、
図1に示すピックアンドプレース動作を実行するようプログラムされている。例えば、いくつかの実施形態において、プログラマまたはその他のオペレータは、ロボットシステム101が、自身の環境100と、一方ではテーブル110上のアイテム(または、いくつかの実施形態においては、テーブル110に関連付けられている座標のセットまたはその他の位置)に対する自身の位置、および、コンベヤベルト118に対する自身の位置と、を認識させるよう、ロボットシステム101をプログラムまたはその他の方法で構成した場合がある。
【0040】
いくつかの実施形態において、ロボットシステム101は、戦略のライブラリまたはその他のリポジトリを用いて、ピックアンドプレース動作および/またはその一部を実行するようプログラムされ、または、その他の方法で構成されている。例えば、ロボットシステム101は、その現在位置および環境100の認識を用いてテーブル110の上方の位置にエンドエフェクタ108を配置するよう構成されていてよい。コンピュータビジョンまたはその他の技術が、次にピックアップするアイテムの識別および選択のために用いられてよく、アイテムをピックアップするための戦略が、自律的に(例えば、アイテムの位置、形状、向き、提示された側面、テクスチャ、剛性などに基づいて)選択されてよい。
【0041】
例えば、
図1に示す例において、ロボットシステム101は、アイテム112に関連付けられている特徴部を立方体形状を有するものとして認識し、アイテム112をピックアップする前に、立方体形状のための把持戦略を選択した可能性がある。ロボットは、ピラミッド形状を有するものとしてアイテム114を認識し、ピラミッド形状のための把持戦略を選択してもよい。ロボットは、円柱形状を有するものとしてアイテム116を認識し、円柱形状のための把持戦略を選択してもよい。
【0042】
環境100は、複数のカメラ(カメラ115、117など)を備える。
図1は、2個のカメラを有する環境100を示しているが、環境100は、n個のカメラを備えてよく、ここで、nは、1より大きい数である。複数のカメラは、ロボットシステム101に有線または無線で接続されていてよい。いくつかの実施形態において、複数のカメラの内の少なくとも1つは、固定位置にある。いくつかの実施形態において、複数のカメラの内の少なくとも1つは、動的に移動している(例えば、ドローンなどの移動物体に取り付けられている)。いくつかの実施形態において、複数のカメラの内の少なくとも1つは、静止することと、異なる位置へ移動されることが可能である(例えば、第1位置でアイテムを検出し、カメラを第2位置に移動させ、第2位置でアイテムを検出する)。いくつかの実施形態において、1または複数のアイテムの認識された表面特徴部の変化を検出するために、様々な照明条件が環境100内で用いられる。
【0043】
複数のカメラを用いることで、ロボットシステム101は、異なる視点から環境100を見ることができるようになる。これは、アイテムが隠されることを防ぎ、アイテムの幾何形状およびアイテムの境界のより正確な評価を与える。例えば、カメラが大きいアイテムの隣の小さいアイテムを捕らえることを阻むように、大きいアイテムが配置されている場合がある。異なる位置から複数のカメラを用いることで、小さいアイテムが見えるようになり、小さいアイテムに関連付けられている境界情報を決定できようになる。広い作業空間は、単一のカメラでは網羅されえない。複数のカメラに関連付けられているビューが、作業空間エリア110のより完全なビューをロボットシステム101に与えるために、マージされてよい。カメラの内の1つが遮られても、ロボットシステム101は、アイテムをピックアンドプレースすることができる。
【0044】
いくつかの実施形態において、ロボットシステム101は、複数のカメラの内の1または複数によって生成された点群に基づいて、アイテムを分割する。ロボットシステム101は、RBGまたはマルチスペクトルカメラ画像(例えば、RGB、Depth、および/または、赤外線の組みあわせ、など)に基づいて、アイテムを分割できる。分割された物体は、潜在的に把持可能な領域を決定できるように、点群に逆投影されうる。これにより、点群情報のみに基づいてアイテムを分割した場合には利用できないさらなる情報(アイテムタイプ、予測される重量/材料、好ましい把持戦略、など)が提供される。この複合的な分割戦略は、深度のみでは区別しにくいアイテム(例えば、密に詰められた小さい箱は、点群としては1つの平面に見えうる)をピックする際にうまく機能するが、点群情報と組み合わせて画像分割を利用することで、ロボットシステム101は、各箱を識別し、入力から箱を抽出することができる。
【0045】
いくつかの実施形態において、ロボットシステム101は、テーブル110(例えば、作業空間エリア)からコンベヤベルト118(例えば、荷下ろしエリア)へ未知のアイテムを自律的にピックアンドプレースする。ロボットシステム101は、カメラ115、117を用いて、アイテム112、114、116が、テーブル110に配置されたことを判定してよい。コントローラ106は、カメラ115、117から受信された視覚データ(例えば、点群データ)に基づいて、幾何情報を決定する。コントローラ106は、カメラ115、117から受信された視覚データから決定された幾何情報に対応するアイテム112、114、116について、対応する潜在的に把持可能な特徴部を選択する。例えば、カメラ115、117から受信された視覚データに基づいて、コントローラ106は、アイテム112が立方体形状に対応する把持可能な特徴部を備え、アイテム114がピラミッド形状に対応する把持可能な特徴部を備え、アイテム116が円柱形状を備える、と判定しうる。コントローラ106は、閾値の範囲内で幾何学的物体と最もよく似ている把持可能な特徴部を選択してよい。例えば、コントローラ106は、決定された幾何情報を既知の特徴部のライブラリと比較し、その比較に基づいて、アイテムの特徴部を選択してよい。いくつかの実施形態において、特徴部は、カノニカル形状である。コントローラ106は、把持されるアイテム上にカノニカル形状を重ね合わせてよい。
【0046】
アイテムに関連付けられている1または複数の把持可能な特徴部を決定するために、コントローラ106は、アイテムの平面をランダムに切断して、アイテムを複数のサブセグメントに分解してよい。アイテムは、点群のデータ点の占有率が最小の平面で切断されてよい(アイテムの上部にある尖った特徴部を把持することに関連する)。アイテムの平面は、アイテムの色または外観の強い勾配に基づいて切断されてよい。いくつかの実施形態において、一般的な生成済みのサブ領域内の点群に外れ値があるかどうかを判定するために、メンバーシップ関数が用いられる。さらなる切断平面が、追加されてよく、または、アイテムが、高い剰余を持つ分離領域に分けられてよい。サブセグメントは、別々に処理されてよい。例えば、外れ値検出技術が、サブセグメントに適用されてよい。いくつかの実施形態において、5σが、ガウス分布を点にフィットさせ、平均から5σ(標準偏差)離れた点を識別し、識別された点を外れ値としてマークする。いくつかの実施形態において、点群にサブサンプリング法を利用し、平均に再フィットさせる。次いで、それらの点は、平均から特定の距離だけ離れた点を見つけるために用いられる。
【0047】
いくつかの実施形態において、アイテムのサブセグメントが、エンドエフェクタ108によるアイテムとの相互作用のリーチに基づいて、決定される。例えば、エンドエフェクタ108が、幅の広いアイテム全体を把持することができない場合、コントローラ108は、アイテムの幅広部分でアイテムを把持しないことを決定する。吸着グリッパエンドエフェクタが利用されている場合、比較的滑らかな平面が探される。空所ベースのピック戦略または最小占有切断平面が、回避されてよい。プリミティブが、新たに分割された点群に再フィットされる。処理は、或るレベルの品質または再帰制限が満たされるまで、反復的に繰り返されてよい。
【0048】
コントローラ106は、カメラ115、117から受信された視覚データに基づいて、アイテムに関連付けられているネガティブスペース情報(例えば、空所)を決定してよい。例えば、コントローラ106は、コーヒーマグの取っ手がネガティブスペースを含むこと、または、車のタイヤがネガティブスペースを含むことを決定してよい。複数のカメラからのデータを用いるコンピュータビジョンアルゴリズムが、カップ、マグカップ、巻かれたワイヤ、テープなどのアイテムの空所(例えば、穴)を決定してよい。空所が検出された場合、グリッパを空所に挿入して、アイテムの側壁からアイテムをピックすることにより、アイテムを把持することができる。
【0049】
コントローラ106は、カメラ115、117から受信された視覚データに基づいて、ピックされるアイテムの湾曲を判定してよい。コントローラ106は、アイテムが湾曲していると判定した場合、コントローラ106は、プレース時にアイテムが転がって行くのを防ぐために、湾曲したアイテムをより慎重にプレースし、ゆっくりと把持解除するように、アイテムのプレースに関連する制御戦略を変更してよい。カメラ115、117から受信された視覚データにより、アイテムの把持が最初に解放された後に、プレースされたアイテムが転がっている、または、動いていることが示唆された場合、コントローラ106は、アイテムを再び把持し、把持が再び解放される前にアイテムを安定させようとしてよい。コントローラ106が閾値回数を超えてアイテムの把持/再把持を試みた場合、警告が、ユーザ130に提供され、アイテムが転がって行く可能性があることをユーザ130に警告してよい。
【0050】
コントローラ106は、カメラ115、117から受信された視覚データに基づいて、アイテム112、114、116に関連付けられている対応する特徴部を決定する。例えば、コントローラ106は、アイテムが取っ手を備えると判定しうる。カメラから受信された視覚データは、アイテムに関連付けられている最小境界と、アイテムに関連付けられている最大境界とを決定するために用いられてよい。アイテムの境界は、アイテムに関連付けられている高さ、幅、または、奥行きを備える。視覚データは、アイテムの境界の内の1または複数を決定することを可能にするデータを提供しうる。例えば、第1カメラが、第1角度でアイテムの方を向いていてよい。第1カメラは、アイテムの高さおよび幅に関する情報を提供しうるが、アイテムの奥行き情報を提供できない。第2カメラが、第2角度でアイテムの方を向いていてよい。第2カメラは、アイテムの奥行きおよび高さに関する情報を提供しうるが、アイテムの幅に関する情報を提供できない。コントローラ106は、アイテムに関連付けられている境界情報(推定、近似、または、正確な情報)を決定するために、複数のカメラから受信した視覚情報をマージしてよい。例えば、コントローラ106は、アイテムの高さおよび幅を決定できるが、奥行きを決定できないことがある。コントローラ106は、アイテムの奥行きが特定の範囲の値内にあると決定してよい。
【0051】
アイテムに関連付けられている最小境界は、アイテムが有しうる特定の寸法の最小値に対応する。アイテムに関連付けられている最大境界は、アイテムが有しうる特定の寸法の最大値に対応する。例えば、第1カメラは、第1アイテムと、第1アイテムの背後にある第2アイテムとを検出しうる。コントローラ106は、第1カメラからの視覚データに基づいて、第2アイテムが第1アイテムの12インチ(304.8ミリメートル)後方にあると判定しうる。第1アイテムおよび第2アイテムが接触している場合、第1アイテムが有しうる奥行き寸法の最大値は12インチである。第1アイテムが有しうる奥行き寸法の最小値は、その寸法の閾値最小サイズ(例えば、1/8インチ(3.175ミリメートル)、1/4インチ(6.35ミリメートル)、1/2インチ(12.7ミリメートル)、1インチ(25.4ミリメートル)、など)である。閾値最小サイズは、履歴的に既知のアイテム、同様の寸法を持つ既知のアイテム、アイテムのコンテキスト、アイテムのタイプ、などに基づいてよい。
【0052】
コントローラ106は、把持戦略を特徴部と関連付けるデータ構造を格納するメモリ(図示せず)に関連付けられている。把持戦略は、把持技術、および、その把持技術を用いて特徴部を把持する方法を含んでよい。いくつかの実施形態において、把持戦略は、物体/セグメントの幾何推定にフィットされうる境界ボックスの長軸および短軸を把持することを含む。いくつかの実施形態において、把持戦略は、或るZ方向の高さでアイテム/セグメント推定を切断し、境界ボックスを再計算することを含む。次いで、再計算された境界ボックスの長軸および短軸が把持されてよい。これは、アイテムが幅広いベースを有するが、中央のどこかに小さいタワーを有し、ロボットシステムが、そのタワーを正確に把持したい場合に、有効である。メモリは、把持技術を実行する方法に関する命令も格納する。それらの命令は、他のアイテムへの衝突を避けるために必要に応じて、グリッパを部分的に事前に閉じる指示を含んでよい。メモリは、プレース技術を実行する方法に関する命令も格納する。それらの命令は、エンドエフェクタ108が、荷下ろしエリアでアイテムをプレースする際に他のアイテムを乱さないように、エンドエフェクタ108のグリッパフィンガを部分的に開く命令を備えてよい。メモリは、エンドエフェクタのメカニズムおよび幾何形状に関する情報も格納する(例えば、平行グリッパ対吸着グリッパ、グリッパフィンガの幅/長さ、など)。
【0053】
把持技術は、1または複数の特徴部に関連付けられてよい。例えば、ピラミッド形状に対応する把持可能な特徴部、立方体形状に対応する把持可能な特徴部、または、平行六面体形状に対応する把持可能な特徴部を備えたアイテムには、吸着技術が用いられてよい。球形状に対応する把持可能な特徴部を備えたアイテムには、平行把持技術が用いられてよい。特徴部は、1または複数の把持技術に関連付けられてよい。例えば、球形状に対応する把持可能な特徴部には、平行把持技術またはすくい上げ技術が用いられてよい。様々なタイプのグリッパが、特定の形状を有する特徴部を把持するために用いられてよい。例えば、第1把持技術が、平行グリッパを利用してよく、第2把持技術が、吸着グリッパを利用してよい。いくつかの実施形態において、グリッパのタイプは、ピックアンドプレース動作中にグリッパタイプの間で自律的に切り替えられる。把持技術は、特徴部の様々な部分に用いられてよい。例えば、平行把持技術が、特徴部の上部、中間部、または、底部に用いられてよい。コントローラ106は、特徴部に関連付けられた把持戦略の各々に対して、対応するスコアを決定する。いくつかの実施形態において、アイテムは、複数の特徴部に関連付けられる。コントローラ106は、複数の特徴部の各々に対する1または複数の把持技術を決定し、決定した把持技術に対して、対応するスコアを決定してよい。
【0054】
把持技術に関連付けられるスコアは、把持戦略が特徴部の把持の成功につながる確率に基づいてよい。把持戦略が特徴部の把持の成功につながる確率は、1または複数の因子(環境に関するコンテキスト情報、環境に対する履歴把持情報、ロボットアームが特徴部を把持する角度(他のアイテムとの衝突を避けるため)、ロボットアームが特徴部を把持する高さ(グリッパの上部における衝突を防ぐため)、把持幅、把持点における表面法線の向き、把持可能な特徴部の量、材料特性、など)に基づいてよい。環境に関するコンテキスト情報は、アイテムの近くにあるかまたは隣接する他のアイテムの存在、アイテムの近くにあるかまたは隣接する他のアイテムがロボットアームによる特徴部の把持の能力を妨げる程度、さらなるアイテムが作業空間エリアに連続的に追加されているか否か、などを含む。材料特性は、アイテムの重心、アイテムの摩擦特性、色、反射率、などを含みうる。例えば、ロボットシステム101は、大きいアイテムを安定してプレースすることができるように、大きい支持面を構築してよい。ロボットシステム101は、アイテムおよびプレース支持面の摩擦係数を考慮して、アイテムが傾いたプレース支持面から滑り落ちる可能性があることを検出した場合、(例えば、滑りを避けるために)十分に高い摩擦係数を持つアイテムのみをピックするように選択するよう構成されていてよい。
【0055】
コントローラ106は、把持戦略の各々に関連付けられた対応するスコアに基づいて、把持戦略の1つを選択する。アイテムは、雑然と山積みにされたアイテムの多様な集まりでありうる。アイテムは、サイズ、色、高さ、幾何形状、テクスチャ、剛性、などが異なりうる。アイテムは、一つずつ山から取り去られる。アイテムのいくつかは、少なくとも部分的に遮蔽されている。雑然とした山の中のすべてのアイテムが、事前には未知である。コントローラ106は、最高スコアを持つ把持戦略を選択する。2以上の把持戦略が同じ高スコアを有する場合、コントローラ106は、把持戦略の1つを選択し、その把持戦略に関連付けられた特徴部をピックし、アイテムを荷下ろしエリアに移動させ、次いで、他の把持戦略に関連付けられた残りのアイテムを選択する。
【0056】
コントローラ106は、アイテムに関連付けられている特徴部をエンドエフェクタ108に把持させる。図の例において、コントローラ106は、エンドエフェクタ108にアイテム112をすでに把持させている。コントローラ106は、グリッパメカニズムおよび幾何形状に関する事前知識を用いて、把持予測問題を単純化してよい。例えば、エンドエフェクタ108が、上方からアイテム(アイテム112など)にアプローチする場合、コントローラ106は、把持可能な突起を識別するために点群の上部分を解析する。いくつかの実施形態において、ロボットシステムが移動するにつれて、カメラ115、117は、さらなるデータ(例えば、より近い場所、異なる角度、異なる照明、反射率、など)を収集し、ロボットシステム101は、新しいデータに基づいてエンドエフェクタ108にアイテムを把持させる方法を調整する。
【0057】
アイテムの把持点が、アイテムのメッシュ化または分割されたバージョンを用いて決定されてよい。把持されるアイテムの近似が構築され、ライブラリまたは機械学習法を用いたモデルマッチングが、アイテムの最適な把持位置を決定するために用いられる。把持点は、ランク付けされる。コントローラ106は、エンドエフェクタ108に、把持点の1つでアイテムを把持させる。
【0058】
様々な実施形態において、エンドエフェクタ108は、本明細書に開示されているように、1または複数の触覚検知ユニット(図示せず)を備える。システムは、触覚検知ユニットからの検知値を用いて、アイテムの把持が成功したか否かを判定する。触覚検知ユニットは、1または複数のセンサを備える。1または複数のセンサの各々は、エンドエフェクタ108のアイテム(アイテム112など)との係合に関連付けられている検知値を反映する出力を提供するよう構成されている。センサ出力の内の1または複数が、エンドエフェクタ108のアイテムとの係合を示す1または複数の因子を決定するために用いられる。
【0059】
1または複数のセンサは、磁気センサ、光学センサ、電気機械センサ、圧力センサ、ひずみゲージ、力センサ、導電率センサ、電流センサ、電圧センサ、静電容量センサ、抵抗センサ、インダクタンスセンサ、赤外線センサ、温度センサ、などの内の1または複数を含んでよい。1または複数の因子は、重量、変形、導通、導電率、圧力、抵抗、インダクタンス、静電容量、または、ロボットアームエンドエフェクタの係合を示す任意のその他の因子、を含みうる。
【0060】
1または複数の触覚検知ユニットは、コントローラ106に接続されている。エンドエフェクタ108は、同様にコントローラ106に接続されているその他のセンサを備えてもよい。例えば、エンドエフェクタ108のフィンガをロボットアーム102に接続するハウジングが、力および/またはトルクを測定するために用いられる1または複数のセンサを備えてよい。複数のセンサ(1以上の触覚検知ユニットセンサおよび/または1以上のハウジングセンサ)は、それらの対応する出力をコントローラ106に提供する。コントローラ106は、センサ出力を用いて、エンドエフェクタ108とアイテム(アイテム112など)との間の係合に関連付けられている1以上の力および/または1以上のモーメントを決定してよい。コントローラ106は、センサ出力を用いて、触覚検知ユニットの各々に関連付けられている力およびモーメントを決定してよい。
【0061】
コントローラ106は、センサ出力を用いて、複数の因子に対応する値を決定してよい。例えば、検知された重量、検知された変形量、検知された導電率、検知された圧力、検知された抵抗、検知されたインダクタンス、および/または、検知された静電容量が決定されてよい。複数の因子は各々、係数に関連付けられている。いくつかの実施形態において、複数の因子は、均等に重み付けされる(例えば、それらは各々、関連付けられた係数「1」を有する)。いくつかの実施形態において、複数の因子の一部は、異なる重みを有する。例えば、選択アイテムは、金属物体であってよく、導電率因子に関連付けられている係数は、変形因子に関連付けられている係数よりも小さくてよい。
【0062】
コントローラ106は、ロボットアームエンドエフェクタがアイテムを把持したか否かを判定するために、多因子モデルを実装してよい。多因子モデルは、ルールベースモデル、予測モデル、機械学習モデル(例えば、ニューラルネットワーク、線形分類器、サポートベクターマシン、線形回帰、ロジスティック回帰、決定木、深層学習、など)、などであってよい。いくつかの実施形態において、多因子モデルは、エンドエフェクタ108がアイテムと係合しているか否か(例えば、係合/非係合)に関する二分決定を出力するよう構成されている。いくつかの実施形態において、多因子モデルは、エンドエフェクタ108がアイテムと係合しているか否かの確率を出力するよう構成されている。
【0063】
複数の因子に関連付けられている対応する値およびそれらに対応する係数は、多因子モデルに入力として提供される。入力は、多因子モデルに適用され、ロボットシステム101は、多因子モデルの出力に基づいて応答動作を実行するよう構成されている。いくつかの実施形態において、ロボットシステム101は、テーブル110からコンベヤベルト118へ選択アイテムを移動させる。いくつかの実施形態において、ロボットシステム101は、選択アイテムの再把持を試みる。いくつかの実施形態において、ロボットシステム101は、人的介入を要求する。いくつかの実施形態において、エンドエフェクタ108は、選択アイテムを把持することができず、異なるアイテムを選択して把持する。
【0064】
エンドエフェクタ108は、アイテム(この例では、アイテム112)を荷下ろしエリア(コンベヤベルト118など)へ移動させる。エンドエフェクタ108は、アイテムを荷下ろしエリアにプレースする。ロボットシステム101は、複数のカメラを用いて、ロボットシステム101がアイテムをプレースすべきと考える場所の近くの位置にアイテムをプレースしてよい。ロボットシステム101は、荷下ろし位置にアイテムを降ろし、荷下ろしエリアがアイテムを押し戻す力をロボットシステム101が感知したのを検出してよい。いくつかの実施形態において、ロボットシステム101は、アイテムの底部と荷下ろしエリアとの間の衝突時の機械的振動を用いて、荷下ろしエリアがアイテムを押し戻す力を感知する。ロボットシステム101は、荷下ろしエリアに到達したことを検出すると、エンドエフェクタ108を開き、または、吸着を停止して、アイテムを穏やかに降ろす。エンドエフェクタ108を開いている間に、ロボットシステム101は、プレースする力を制御するために上下に移動してよい(接触している間にグリッパを開くと、アイテムを潰すことがある)。これにより、ロボットシステム101は、プレース面の高さの推定値が誤差を含みやすくまたは未知である場合に、アイテムを積み重ねること、もしくは、プレース高さを動的に調整することができるようになる。これは、他のアイテムが邪魔になる場合にも役立つ。いくつかの実施形態において、ロボットシステム101は、転がり落ちうる任意のアイテムが荷下ろしエリアにプレースされるか否かを判定する。転がり落ちる可能性のあるアイテムがない場合、コントローラ106は、1または複数の他のアイテムをプレースするためのスペースを作るように荷下ろしエリアにすでにあるアイテムを押して互いに近づけるよう、ロボットアーム102およびエンドエフェクタ108を制御してよい。転がり落ちるかまたは転倒する可能性のあるアイテムがある場合、コントローラ106は、アイテムを回転させてアイテムの安定した支持面を荷下ろしエリア上にプレースするよう、ロボットアーム102およびエンドエフェクタ108を制御してよい。
【0065】
様々な実施形態において、ロボットシステム101は、遠隔操作による介入を自動的にプロンプトする。いくつかの実施形態において、
図1に示すピックアンドプレース動作を実行する過程で、ロボットシステム101がその動作を(さらに)実行するための(次の)戦略を決定できない状態に至った場合、ロボットシステム101は、遠隔操作で手助けするように(この例では)遠隔オペレータにプロンプトする。
【0066】
図の例において、コントローラ106は、ネットワーク124を介して遠隔操作コンピュータ126に接続されている。いくつかの実施形態において、遠隔操作コンピュータ126は、例えば、ネットワーク124を介してコントローラ106へ高レベル命令を通信することによって、自律モードでのロボットシステム101の動作に関与してよい。様々な実施形態において、コントローラ106および遠隔操作コンピュータ126の一方または両方は、例えば、ロボットシステム101が動作の中の次のタスクまたはステップを実行(完了)するために利用可能な戦略を持たない状態に至った場合に、遠隔操作による介入を指示してよい。
【0067】
例えば、
図1をさらに参照すると、アイテム114が落とされて、三角形の側面をロボットに提示する向きで、平坦な側の1つを下にして着地した場合に、いくつかの実施形態において、ロボットシステム101は、アイテム114をピックアップするために利用可能な戦略を持たない可能性があり、ならびに/もしくは、タイムアウトするか、または、アイテム114をピックアップするための試行について設定された回数を使い果たしている可能性がある。それに応じて、遠隔操作オペレータ130は、遠隔操作を通して介入するようプロンプトされてよく、手動入力装置128を用いて、ロボットの動作を制御してよい。例えば、遠隔操作オペレータ130は、アイテム114をピックアップして、アイテムをコンベヤベルト118上にプレースするように、ロボットシステム101を操作してよい。また、遠隔操作オペレータは、ロボットシステム101を用いて、アイテム114の向きを、自律ロボットシステム101がアイテム114をピックアップするために利用可能な戦略を持つと期待される(または可能性が高い)向きに変更してもよい。
【0068】
いくつかの実施形態において、ロボットシステム101は、遠隔操作を監視し、遠隔操作に基づいて多因子モデルを更新する。例えば、ロボットシステム101に関連付けられているセンサ(例えば、1以上の触覚検知ユニットセンサおよび/または1以上のハウジングセンサ)は、遠隔操作中に値を出力してよい。遠隔操作による把持試行がアイテムの把持に成功した場合、ロボットシステムは、把持の成功を示すセンサ出力値を学習し、それらの学習した値をその後の自律的把持に用いて、アイテムの把持が成功したか否かを判定することができる。遠隔操作による把持試行がアイテムの把持に失敗した場合、ロボットシステムは、把持の失敗を示すセンサ出力値を学習し、それらの学習した値をその後の自律的把持に用いて、アイテムの把持が成功しなかったか否かを判定することができる。遠隔操作は、複数回実行されうる。複数回の遠隔操作を通して、ロボットシステムは、把持の成功を示すセンサ出力値の範囲と、把持の失敗を示すセンサ出力値の範囲とを学習することができる。アイテムの異なるタイプ、形状、および/または、サイズに対応する範囲が学習されてよい。
【0069】
図の例において、遠隔操作は、手動入力装置128(例えば、ハプティック入力装置)の操作を通して人間のオペレータ130によって実行されてよい。人間のオペレータ130(時に、遠隔操作オペレータとも呼ばれる)は、遠隔操作コンピュータ126を構成するおよび/または関連付けられている表示装置に表示された情報によって、遠隔操作を開始するように指示されてよい。1または複数のセンサ134からのデータが、ネットワーク124および遠隔操作コンピュータ126を介して人間のオペレータ130に提供されてよい。いくつかの実施形態において、センサ134は、ロボット上のカメラ(図示せず)またはカメラ115、117を含み、遠隔操作オペレータ130に表示されて、遠隔操作を介して動作または動作の一部の実行を行うおよび/または完了するために用いられるビデオフィードを生成するよう構成されている。様々な実施形態において、カメラは、低遅延、高スループットの接続で接続されており、かかる接続は、例えば、アナログRFベース通信、WiFi、Bluetooth、および、サブGHzの内の1または複数を含むが、それらに限定されない。いくつかの実施形態において、異なるタイプのカメラが併用される。例えば、2つのRGB可視化カメラ、4つの深度カメラ、2つのIRカメラなど、異なる通信速度、帯域幅、および/または、その他の特徴を持つ複数のカメラが用いられてもよい。
【0070】
様々な実施形態において、様々な異なるセンサ134を用いて遠隔操作が実行されてよい。いくつかの実施形態において、これらのセンサは、ロボットシステム101が「スタック」しているか否かを判定する際にロボットを導きうる、および/または、遠隔操作を簡単にしうる。いくつかの実施形態において、センサは、遠隔操作の様式を、直接的なハプティック制御から、ますます抽象的なエグゼクティブコマンド(ピックする対象物をマウスでクリックする、または、音声転写装置に向かって「棚を開け(open shelf)」と言う、など)へ移行させるのに役立つ。
【0071】
様々な実施形態において用いられるセンサ134の例は、環境との相互作用および特定の「スタック」シナリオ、および/または、ロボットシステム101(または遠隔操作オペレータ)の近くの未知のエージェントの存在、を検出するよう構成されたデジタルスイッチを含む。さらなる例は、動作(把持など)の成功または失敗を判定するハンドまたはロボット上の力センサまたは圧力センサを含む。一連の失敗の後に、ロボットシステム101は、自身が「スタック」していると判定する。別の例は、計画されたおよび/または他の形で期待される動きの軌道を正確に辿っているか否かを知るためにロボットシステム101によって利用されうる1または複数のセンサ(ロボット関節上の位置センサなど)である。期待された軌道を正確に辿っていない場合、環境100との接触を起こした可能性があり、ロボットシステム101は、「スタック」したので人的介入を求める必要があると結論づけるようプログラムされていてよい。
【0072】
複数のカメラを備えたビジョンシステムが、マルチモードの手段(例えば、RGBインスタンストラッキング、RGBフィーチャマッチング、RGBオプティカルフロー、点群マッチング、など)によって作業空間エリア内の各アイテムを追跡し、ハンガリアンペアマッチングなどの方法を用いて、ロボットシステム101がピックするアイテムを追跡するよう構成されている。ロボットシステム101は、速度、落下する/滑っていく可能性、および、運動の軌道など、各追跡対象アイテムの状態を推定するよう構成されている。ロボットシステム101は、より高い精度でアイテムの状態を更新するために、運搬システムおよびセンサ134の現在の速度および大きさなど、他の既知の情報を用いてよい。決定されたアイテムの状態は、どこでどのアイテムをピックするか、および、どこで/いつ/どのようにアイテムをプレースするか、に関して情報に基づいて決定するために、ロボットシステム101によって用いられてよい。例えば、ロボットシステム101は、ロボットアーム102の動作時間および移動するアイテムの速度を補償するために、将来的に推定されるアイテムの位置から、ピック(把持)するのに、あるいは、(移動中でも)ピックするのに、より安定したアイテムを選択できる。ロボットシステム101は、環境100から推定される初速度でアイテムをプレースすることにより、アイテムを落下させず、転がすことなしに、より着実に、移動プラットフォームの荷下ろしエリアにアイテムをプレースできる。また、ロボットシステム101は、荷下ろしエリア118にアイテムをプレースするために、無衝突区域を選択してよい。衝突区域は、追跡対象アイテムの推定軌道から決定されてよい。複数のカメラに関連付けられているデータを用いて、ロボットシステム101は、把持されたアイテムおよび環境100の形状を理解することができる。これは、ロボットシステム101が、ピックされたアイテムと環境100との間の衝突を回避する軌道をインテリジェントに計画することを可能にする。
【0073】
いくつかの実施形態において、複数のロボットシステムが、アイテムをピックアンドプレースするために共に作業している。複数のロボットシステムを用いることで、システムの総スループットが向上しうる。
【0074】
図2は、いくつかの実施形態に従って、ロボットアームエンドエフェクタを示すブロック図である。様々な実施形態において、エンドエフェクタ200は、
図1のエンドエフェクタ108を実施するために用いられてよい。
【0075】
図の例において、エンドエフェクタ200は、回転可能なカップリングを介してロボットアーム204に取り付けられている本体またはハウジング202を備える。いくつかの実施形態において、ハウジング202とロボットアーム204との間の接続は、制御コンピュータ(
図1のコントローラ106など)によって制御されるモータ駆動ジョイントを備えてよい。エンドエフェクタ200は、さらに、関節のある指210および212を備えたグリッパと、グリッパ制御モジュール208に電力を供給するためにロボットアーム204を通ってハウジング202に至る電力ライン206と、を備える。様々な実施形態において、制御モジュール208は、例えば、無線および/または有線通信によって、通信インターフェース214を通してエンドエフェクタ200の外部の制御コンピュータ(例えば、
図1のコントローラ106)に接続されている。制御モジュール208は、例えば、エンドエフェクタ200を用いて、ピックアップ、移動、および、プレースされるアイテムを把持するために、グリッパ指210、212を操作するよう動作可能な電子要素および/または電気機械要素を備える。
【0076】
図の例において、ハウジング202の側面に取り付けられたカメラ216が、エンドエフェクタ200の下方の視野の画像データを提供する。複数の力センサ218、220、222、224、226、および、228が、それぞれ、指210および212のマウント点に印加されている力を測定する。様々な実施形態において、力の測定値は、通信インターフェース214を介して、外部および/またはリモートの制御コンピュータへ通信される。センサの読み取り値は、様々な実施形態において、ロボットアーム204およびエンドエフェクタ200を用いて、アイテムを他のアイテムおよび/または側壁またはその他の構造に隣接する場所にぴったり収めることを可能にするため、ならびに/もしくは、不安定性(例えば、まだ吸着下であるが、アイテムがプレースされて安定すると期待された場所にある時に、アイテムを押し下げた状態で押し返しが不十分である)を検出するために、用いられる。
【0077】
いくつかの実施形態において、他のアイテム、荷役台、および/または、環境との衝突を検出するため、ならびに、軌道の「コンプライアントな」調整によって自動動作を継続するために、センサが利用される。例えば、壁またはその他の構造にぶつかった場合、いくつかの実施形態において、ロボットアームは、力を弱め、障害物から離れるまで障害物に沿って辿るように軌道を調整する。
【0078】
重量センサ215は、力センサ、ロードセル、または、ハウジング202へ直接的または間接的に印加されている力を検出できる任意のその他のセンサ、であってよい。重量センサ215は、回転トルクおよび/または指向性トルクを測定するよう構成されていてよい。重量センサ215は、エンドエフェクタ200がアイテムと係合している時に力およびモーメントを測定するよう構成されていてよい。
【0079】
触覚検知ユニット211、213は、それぞれ、関節のある指210、212に関連付けられている。いくつかの実施形態において、触覚検知ユニット211、213は、それぞれ、指210、212に取り付けられている。いくつかの実施形態において、触覚検知ユニット211、213は、指210、212の各々が、対応する触覚検知ユニット211を有するように、エンドエフェクタ200上に配置された検知カバーの中に備えられている。検知カバーは、指210、212と、ハウジング202とを覆っていてよい。いくつかの実施形態において、触覚検知ユニット211、213は、同じタイプの触覚検知ユニットである。いくつかの実施形態において、触覚検知ユニット211、213は、異なるタイプの触覚検知ユニットである。例えば、指210は、
図3Bに示す触覚検知ユニットに関連付けられてよく、指212は、
図3Eに示す触覚検知ユニットに関連付けられてよい。
【0080】
図3Aは、いくつかの実施形態に従って、触覚検知ユニットを示すブロック図である。図の例において、触覚検知ユニット300は、触覚検知ユニット211または触覚検知ユニット213などの触覚検知ユニットとして実装されてよい。
【0081】
触覚検知ユニット300は、導電層302と、変形層304と、基板層306と、を備える。いくつかの実施形態において、導電層302、変形層304、および、基板層306は、平面層である。いくつかの実施形態において、導電層302、変形層304、および、基板層306は、曲面層である。触覚検知ユニット300は、プロセッサ(図示せず)に接続されている。いくつかの実施形態において、導電層302または基板層306は、任意選択的である。いくつかの実施形態において、導電層302および変形層304は、単一の層に統合される。
【0082】
導電層302は、導通またはその他の電気特性(導電率、抵抗、静電容量、または、インダクタンス、など)の検知を可能にする導電材料を含んでよい。例えば、導電層302は、第1フィンガに取り付けられている第1触覚検知ユニットが第2フィンガに取り付けられている第2触覚検知ユニットに接触した時に、第1および第2触覚検知ユニットの導電層が接触するように、触覚検知ユニットの最上層であってよい。把持動作の前に、基準導通値、基準導電率値、基準抵抗値、基準静電容量値、および/または、基準インダクタンス値が、決定されてよい。把持動作中、エンドエフェクタは、そのフィンガを用いて、アイテムを把持してよく、プロセッサは、1以上の導通値、1以上の導電率値、1以上の抵抗値、1以上の静電容量値、および/または、1以上のインダクタンス値を決定するために、電気信号を第1触覚検知ユニットに送信してよい。いくつかの実施形態において、電気信号は、周波数が異なる。1以上の決定された導通値、1以上の決定された導電率値、1以上の決定された抵抗値、1以上の決定された静電容量値、または、1以上の決定されたインダクタンス値は、エンドエフェクタがアイテムを把持したこと、または、把持しなかったことを示唆しうる。
【0083】
プロセッサは、決定された導通値を基準導通値と比較してよい。決定された導通値が基準導通値から閾値量だけ変化している場合、決定された導通値は、エンドエフェクタがアイテムを把持しなかったことを示唆しうる。決定された導通値が基準導通値から閾値量だけ変化していない場合、決定された導通値は、エンドエフェクタがアイテムを把持したことを示唆しうる。
【0084】
プロセッサは、決定された導電率値を基準導電率値と比較してよい。決定された導電率値が基準導電率値から閾値量だけ変化している場合、決定された導電率値は、エンドエフェクタがアイテムを把持しなかったことを示唆しうる。決定された導電率値が、関連付けられている基準値から閾値量未満だけ変化している場合、決定された導電率値は、エンドエフェクタがアイテムを把持したことを示唆しうる。
【0085】
プロセッサは、決定された抵抗値を基準抵抗値と比較してよい。決定された抵抗値が閾値量だけ基準抵抗値から変化している場合、決定された抵抗値は、エンドエフェクタがアイテムを把持しなかったことを示唆しうる。決定された抵抗値が、関連付けられている基準値から閾値量未満だけ変化している場合、決定された抵抗値は、エンドエフェクタがアイテムを把持したことを示唆しうる。
【0086】
プロセッサは、決定された静電容量値を基準静電容量値と比較してよい。決定された静電容量値が基準静電容量値から閾値量だけ変化している場合、決定された静電容量値は、エンドエフェクタがアイテムを把持しなかったことを示唆しうる。決定された静電容量値が、基準静電容量値から閾値量未満だけ変化している場合、決定された静電容量値は、エンドエフェクタがアイテムを把持したことを示唆しうる。また、プロセッサは、決定された静電容量値に基づいて、把持されたアイテムの材料を決定してもよい。
【0087】
プロセッサは、決定されたインダクタンス値を基準インダクタンス値と比較してよい。決定されたインダクタンス値が基準インダクタンス値から閾値量だけ変化している場合、決定されたインダクタンス値は、エンドエフェクタがアイテムを把持しなかったことを示唆しうる。決定されたインダクタンス値が、関連付けられている基準値から閾値量未満だけ変化している場合、決定されたインダクタンス値は、エンドエフェクタがアイテムを把持したことを示唆しうる。
【0088】
変形層304は、誘電材料を含んでよい(例えば、シリコン、プラスチック、または、力に反応して変形しうる任意のその他の材料)。測定対象物が、誘電材料に挿入されていてよい。例えば、複数の磁石が、誘電材料に挿入されていてよい。
【0089】
基板層306は、変形層304に挿入された測定対象物に関連付けられている変化を検知するよう構成されている1または複数のセンサを備えてよい。例えば、基板層306は、変形層304の複数の磁石が変位した時に磁場の変化を検知するよう構成されている磁気センサを備えてよい。いくつかの実施形態において、基板層306は、ロボットアームエンドエフェクタに関連付けられているフィンガである。いくつかの実施形態において、基板層306は、1または複数のセンサを支持するよう構成されている材料であり、ロボットシステムに関連付けられているプロセッサに1または複数のセンサを電気接続する。
【0090】
図3Bは、いくつかの実施形態に従って、異なる視点から触覚検知ユニットを示す図である。図の例において、異なる視点310は、触覚検知ユニットの上面図および2つの側面図を示している。触覚検知ユニットの導電層は、説明の便宜上、図示されていない。
【0091】
図の例において、触覚検知ユニットの変形層は、複数の測定対象物を含む。いくつかの実施形態において、複数の測定対象物は、磁石である。いくつかの実施形態において、複数の測定対象物は、マーカである。複数の測定対象物は、グリッドパターンまたは非グリッドパターンに配列されていてよい。グリッドパターンは、2Dのmxnグリッドパターンまたは3Dのlxmxnグリッドパターンであってよい。測定対象物は、変形層304の縁部境界上に配置されていてよい。
【0092】
図の例において、測定対象物312a、312b、312c、312d、312e、312fが、2×3グリッドに配列されている。6つの測定対象物が示されているが、x個の測定対象物が変形層に挿入されてよい。変形層に挿入されうる測定対象物の数は、測定対象物の間の許容クロストーク量に基づいてよい。例えば、変形層内の測定対象物の数が増えるほど、測定対象物の間のクロストーク量も増大する。許容クロストーク量は、ロボットシステムに関連付けられているオペレータによって指定されてよい。
【0093】
複数の測定対象物は、基板層306内に配置されたセンサ314に関連付けられている。複数の測定対象物が磁石である場合、センサ314は、磁気センサである。複数の測定対象物がマーカである場合、センサ314は、画像センサである。いくつかの実施形態では、1つの測定対象物が、1つのセンサに関連付けられている。いくつかの実施形態では、1つの測定対象物が、複数のセンサに関連付けられている。
【0094】
把持動作の前に、複数の磁石に対する基準磁場またはマーカの各々に対する基準位置が決定されてよい。ロボットアームエンドエフェクタがアイテムと係合すると、係合に関連付けられている力および/またはモーメントが、複数の測定対象物の内の1または複数を変位させる。この変位は、センサ314が検知するよう構成されている測定可能な値の変化を引き起こす。例えば、複数の測定対象物が磁石である場合、センサ314は、複数の磁石に関連付けられている磁場の変化を検知しうる。プロセッサが、磁気センサに接続され、検知された磁場を基準磁場と比較してよい。検知される磁場は、ロボットアームエンドエフェクタがアイテムの把持に成功したか失敗したかによって異なりうる。プロセッサは、比較に基づいて、重量値および/または変形値を決定してよい。複数の測定対象物がマーカである場合、センサ314は、複数のマーカの内の1または複数に関連する位置の変化を検知しうる。位置の変化は、ロボットアームエンドエフェクタがアイテムの把持に成功したか失敗したかによって異なりうる。プロセッサが、画像センサに接続され、重量値および/または変形値を決定するために複数のマーカの検知位置を複数のマーカの基準位置と比較してよい。
【0095】
図3Cは、いくつかの実施形態に従って、異なる視点から触覚検知ユニットを示す図である。図の例において、異なる視点320は、触覚検知ユニットの上面図および2つの側面図を示している。触覚検知ユニットの導電層は、説明の便宜上、図示されていない。
【0096】
図の例において、変形層304に埋め込まれている測定対象物は、磁石である。
図3Cの触覚検知ユニットは、測定対象物の一部(322a、322b、322c、322g、322h、322i)が変形層の側面に配置されていることを除けば、
図3Bの触覚検知ユニットと同様である。センサ314によって検知される測定対象物322a、322b、322c、322d、322e、322f、322g、322h、322iに関連付けられている磁場の大きさは、変形層304に関連付けられている深さと、測定対象物およびセンサ314の間の距離と、に依存しうる。変形層の側面に測定対象物の一部を配置することは、センサ314によって検知される測定対象物322a、322b、322c、322d、322e、322f、322g、322h、322iに関連付けられている磁場の大きさを増大させうる。
【0097】
図3Dは、いくつかの実施形態に従って、磁気センサの一例を示す図である。磁気センサ330は、センサ314などのセンサとして実装されてよい。図の例において、磁気センサ330は、コイル332a、332b、332cを備える。コイル332aは、x軸方向の磁場を測定するよう構成されている。コイル332bは、y軸方向の磁場を測定するよう構成されている。コイル332cは、z軸方向の磁場を測定するよう構成されている。磁気センサ330は、
図3B、
図3Cに図示した磁石など、複数の磁石に接続されていてよい。磁石の内の少なくとも1つの変位が、磁気センサ330によって検出される磁場の変化を引き起こす。磁気センサ330は、x軸方向、y軸方向、および、z軸方向の磁場の変化を検出するよう構成されている。
【0098】
図3Eは、いくつかの実施形態に従って、触覚検知ユニットを示す図である。触覚検知ユニット340は、触覚検知ユニット211、213などの触覚検知ユニットとして実装されてよい。図の例において、反射材料341が、変形層304に埋め込まれている。エミッタ342(例えば、発光ダイオードエミッタ)およびレシーバ343が、基板層306に配置されている。エミッタ342は、反射材料341で反射される信号を送信してよく、反射された信号は、レシーバ343で受信される。ロボットアームエンドエフェクタがアイテムと係合していない時に、レシーバ343で受信された信号の基準振幅が決定されてよい。ロボットアームエンドエフェクタがアイテムと係合すると、係合に関連付けられている力および/またはモーメントが、信号がどのように変形層304を通過するのかを変化させる。例えば、レシーバ343で受信される信号の振幅は、変形層304内での信号の反射、屈折、および/または、分散により、増大または減少しうる。プロセッサが、レシーバに接続され、重量値および/または変形値を決定するために基準信号振幅を受信信号振幅と比較してよい。
【0099】
図3Fは、いくつかの実施形態に従って、触覚検知ユニットを示す図である。触覚検知ユニット350は、触覚検知ユニット211、213などの触覚検知ユニットとして実装されてよい。図の例において、触覚検知ユニットの導電層および基板層は、説明の便宜上、図示されていない。
【0100】
触覚検知ユニット350は、誘電材料に埋め込まれた変形を検出できる電気機械センサ352(例えば、ひずみゲージ)を備える。ロボットアームエンドエフェクタがアイテムと係合していない時に、電気機械センサ352に関連付けられている基準抵抗が決定されてよい。ロボットアームエンドエフェクタがアイテムと係合すると、係合に関連付けられている力および/またはモーメントが、電気機械センサ352に関連付けられている抵抗を変化させる。プロセッサが、1または複数の電気機械式センサに接続され、重量値および/または変形値を決定するために基準抵抗値を変化した抵抗値と比較してよい。
【0101】
図3Gは、いくつかの実施形態に従って、触覚検知ユニットを示す図である。触覚検知ユニット360は、触覚検知ユニット211、213などの触覚検知ユニットとして実装されてよい。図の例において、触覚検知ユニットの導電層および基板層は、説明の便宜上、図示されていない。
【0102】
触覚検知ユニット360の変形層は、空気、気体、または、液体を含む柔軟な膜362(例えば、サック、パウチ)を備える。ロボットアームエンドエフェクタがアイテムと係合していない時に、柔軟な膜362に関連付けられている基準圧力が決定されてよい。ロボットアームエンドエフェクタがアイテムと係合すると、係合に関連付けられている力および/またはモーメントが、柔軟な膜362に関連付けられている圧力を変化させる。プロセッサが、柔軟な膜に接続され、重量値および/または変形値を決定するために基準圧力値を変化した圧力値と比較してよい。
【0103】
図4は、いくつかの実施形態に従って、アイテムをピックアンドプレースするための処理を示すフローチャートである。図の例において、処理400は、ロボットシステム(ロボットシステム101など)によって実施されてよい。
【0104】
工程402で、アイテムが、第1位置から第2位置へ移動されるよう選択される。第1の位置(作業空間エリアなど)は、1または複数のアイテムを含んでよい。ロボット環境は、異なる視点から1または複数のアイテムを見て検出するよう構成されている複数のカメラを備えてよい。いくつかの実施形態において、カメラの内の1または複数が、1または複数のアイテムの1または複数の点群を生成する。複数の点群が生成された場合、複数の点群はマージされる。様々な実施形態において、1または複数のアイテムは、雑然とした山に置かれた複数のアイテム、離間した複数のアイテム、ならびに/もしくは、複数のアイテムの内の1または複数の他のアイテムによって視界から隠されている1または複数のアイテム、を含みうる。
【0105】
幾何情報が、複数のアイテムの各々に対して決定される。幾何情報は、複数のカメラの内の1または複数に関連付けられているデータから取得された点群情報に基づいて決定されてよい。複数の特徴部の各々に関連付けられている対応する幾何情報が、把持戦略が既知である幾何形状のライブラリと比較されてよい。決定された特徴部の幾何形状と最もよく似ている(例えば、類似度閾値の範囲内である)形状に関連付けられた戦略が選択されてよい。いくつかの実施形態において、アイテムは、単一の特徴部に関連している(例えば、ペーパータオルのロールは、円筒に対応する)。いくつかの実施形態において、アイテムは、複数のサブセグメント(本明細書ではサブ物体とも呼ぶ)に分割され、複数のサブセグメントの各々に対応する特徴部が決定される(例えば、ゴルフクラブは、本体セグメントおよびヘッドセグメントを備える)。
【0106】
作業空間エリアの端または隅の近くにあるアイテムは、アイテムをどこで/どのようにピックするのかについて、物理的またはその他の制約を有しうる。いくつかの実施形態において、アイテムに関連付けられている環境の境界に応じて、最適ではないが実現可能なピック角度が選択されてもよい。より広い長手方向把持が、より狭い短手方向把持よりも選択されてよく、これは、より広い長手方向把持が、エンドエフェクタを環境の境界内に維持しうるからである。
【0107】
対応する把持成功スコアが、決定された把持戦略の各々に対して決定される。例えば、把持ツール(エンドエフェクタ200)が、アイテムの上部、中間部、または、底部でアイテムを把持するために用いられてよい。フィーチャの把持成功スコアは、把持戦略が把持成功につながる確率に基づいていてよい。(複数のツールが利用可能である実施形態において)把持ツールおよび把持位置の異なる組みあわせに対して確率が決定される。把持戦略がアイテムの把持の成功につながる確率は、1または複数の把持因子(環境に関するコンテキスト情報、環境に対する履歴把持情報、ロボットアームがアイテムを把持する角度(他のアイテムとの衝突を避けるため)、ロボットアームがアイテムを把持する高さ(グリッパの上部における衝突を防ぐため)、把持幅、把持点における表面法線の向き、把持可能なアイテムの量、など)に基づいてよい。環境に関するコンテキスト情報は、アイテムの近くにあるかまたは隣接する他のアイテムの存在、アイテムの近くにあるかまたは隣接する他のアイテムがロボットアームによるアイテムの把持の能力を妨げる程度、さらなるアイテムが作業空間エリアに連続的に追加されているか否か、などを含む。
【0108】
決定された把持戦略の内の1つが、決定された対応するスコアに基づいて、試行されるよう選択される。アイテムまたは特徴部ならびに対応する把持戦略が、対応するスコアに基づいてランク付けされる。複数のアイテムおよび特徴部の中で最高スコアを持つアイテムまたは特徴部が、把持されるよう選択される。複数の潜在的な把持が同じスコアを有する場合、複数の把持の内の1つが選択される。把持されたアイテムが移動された後、同じスコアを有する他の把持の内の1つが選択される。
【0109】
複数のアイテムから、アイテムが選択され、把持、移動、そして、荷下ろしエリアにプレースされると、次にスコアが高い把持が試行に向けて選択される。
【0110】
工程404で、選択アイテムが把持される。ロボットシステムのエンドエフェクタが、選択アイテムと係合する。エンドエフェクタは、複数のフィンガを備えてよい。複数のフィンガの各々は、対応する触覚検知ユニットに関連付けられていてよい。触覚検知ユニットは、複数の検知層を備えてよい。検知層の各々は、1または複数のセンサを備えてよい。アイテムとの係合時に、触覚検知ユニットの検知層の各々は、基準検知値(例えば、ロボットアームエンドエフェクタがアイテムと係合していない時の検知値)とは異なる対応する検知値を出力しうる。
【0111】
ロボットシステムは、ロボットアームエンドエフェクタがアイテムの把持に成功したか否かを判定するために、複数のセンサを用いて静的測定を実行する。静的測定は、ロボットアームエンドエフェクタが静止状態のアイテムを把持し、複数のセンサの出力を測定することを含んでよい。また、ロボットシステムは、ロボットアームエンドエフェクタがアイテムの把持に成功したか否かを判定するために、複数のセンサを用いて動的測定を実行してよい。例えば、最初の把持の後、ロボットアームエンドエフェクタの向きが変更されてよく、ロボットアームエンドエフェクタがアイテムの把持に成功したか否かを判定するために、ロボットアームエンドエフェクタが移動している間に複数のセンサの出力が測定されてよい。
【0112】
1または複数の触覚検知ユニットは、プロセッサに接続されている。プロセッサは、センサ出力を用いて、ロボットアームエンドエフェクタとアイテムとの間の係合に関連付けられている1以上の力および/または1以上のモーメントを決定してよい。センサ出力(1以上の触覚検知ユニットセンサおよび/または1以上のハウジングセンサ)は、複数の因子に対応する値を決定するために用いられてよい。例えば、検知された重量、検知された変形量、検知された導通、検知された導電率、検知された圧力、検知された抵抗、検知されたインダクタンス、および/または、検知された静電容量が決定されてよい。
【0113】
複数の因子は各々、係数に関連付けられている。いくつかの実施形態において、複数の因子は、均等に重み付けされる(例えば、それらは各々、関連付けられた係数「1」を有する)。いくつかの実施形態において、複数の因子の一部は、異なる重みを有する。例えば、選択アイテムは、金属物体であってよく、導通因子に関連付けられている係数は、変形因子に関連付けられている係数よりも小さくてよい。
【0114】
プロセッサは、ロボットアームエンドエフェクタがアイテムを把持したか否かを判定するために、多因子モデルを実装してよい。多因子モデルは、ルールベースモデル、予測モデル、機械学習モデル機械学習モデル、などであってよい。いくつかの実施形態において、多因子モデルは、ロボットアームエンドエフェクタがアイテムと係合しているか否か(例えば、係合/非係合)に関する二分決定を出力するよう構成されている。いくつかの実施形態において、多因子モデルは、ロボットアームエンドエフェクタがアイテムと係合しているか否かの確率を出力するよう構成されている。複数の因子に関連付けられている対応する値およびそれらに対応する係数は、多因子モデルに入力として提供され、ロボットシステムは、多因子モデルの出力に基づいて応答動作を実行するよう構成されている。
【0115】
工程406で、選択アイテムは移動される。選択アイテムは、エンドエフェクタが選択アイテムを把持したことを示す多因子モデルの出力に応答して移動される。工程408で、選択された把持に関連付けられたアイテムが、作業空間エリアから荷下ろしエリアまでアイテムを移動する際に落下したか否かが判定される。アイテムは、ロボットシステムのエンドエフェクタに関連付けられている1または複数の触覚検知ユニットの1または複数のセンサ測定値(例えば、圧力、力、静電容量、など)に基づいて、落下したと判定されうる。センサ測定値は、アイテムが落下したか否かを判定するために、閾値と比較されてよい。アイテムが落下した場合、処理400は、工程402へ戻る。アイテムが落下しなかった場合、処理400は、工程410へ進む。
【0116】
工程410で、選択アイテムは、第2位置にプレースされる。アイテムは、第2位置に関連付けられている境界とエンドエフェクタが衝突するのを防ぐようにプレースされてよい。
【0117】
いくつかの実施形態において、アイテムは、第2位置に他の物体と共に雑然とプレースされる。ロボットシステムは、第2位置にアイテムをランダムにプレースしてよい。次いで、ロボットシステムは、エンドエフェクタ上の力センサを用いて、ロボットシステムに保護的な停止を実行させることなしに、雑然とした山にアイテムを穏やかにプレースしてよい。ロボットシステムは、力センサを用いて緊密詰め込み戦略を実現することにより、第2位置の箱の中にアイテムを密に梱包しうる。
【0118】
いくつかの実施形態において、アイテムは、第2位置に他のアイテムから離間されてプレースされる。ロボットシステムは、第2位置における配置スペースを複数のサブエリアに分割し、選択物体をサブエリアの1つにプレースしてよい。サブエリアの各々の間に緩衝エリアが存在してよい。いくつかの実施形態において、緩衝エリアは調整可能である。
【0119】
いくつかの実施形態において、ロボットシステムに関連付けられたビジョンシステムが、どのようにアイテムを降ろすのかを決定するよう構成されている。例えば、一部のアイテムは剛体ではなく、アイテム(例えば、布または柔らかいおもちゃ)に関連付けられている範囲が、アイテムの把持および移動の後に変化する。ビジョンシステムは、アイテムを潰すこと、そして、アイテムを損傷し、もしくは、絡まった配置または好ましくない配置にアイテムを収める可能性のある高さからアイテムを落とすことを防止するように、アイテムをプレースする方法を選択するために、範囲がどうであるか、および、材料情報を決定するよう構成されている。
【0120】
工程412で、移動すべきさらなるアイテムが存在するか否かが判定される。移動すべきさらなるアイテムが存在するか否かを判定するために、ロボットシステムの1または複数のカメラからの視覚データが用いられてよい。移動すべきさらなるアイテムが存在する場合、処理400は、工程402へ戻る。移動すべきアイテムがもはや存在しない場合、処理400は終了する。
【0121】
図5は、いくつかの実施形態に従って、アイテムを把持するための処理を示すフローチャートである。いくつかの実施形態において、処理500は、ロボットシステム(ロボットシステム101など)によって実施される。いくつかの実施形態において、処理500は、処理400の工程404および406の一部または全部を実行するために実施される。
【0122】
工程502で、アイテムに関連付けられている特徴部が把持される。ロボットシステムのコントローラが、アイテムに関連付けられている特徴部をエンドエフェクタに把持させる。エンドエフェクタは、1または複数の触覚検知ユニットを備えてよい。アイテムに関連付けられている特徴部は、決定された最適把持位置で把持されてよい。最適把持位置は、ロボットシステムの1または複数のカメラから受信された視覚データから決定されたアイテムのメッシュ化または分割されたバージョンを用いて決定されてよい。
【0123】
いくつかの実施形態において、視覚情報および/または触覚情報が、アイテムのテクスチャ(しわあり、など)を検出するために用いられる。ロボットシステムは、視覚情報および/または触覚情報を用いて、質の高いピック点(例えば、把持の成功確率が閾値を超える)を選択してよい(吸着グリッパを用いてしわのある部分でアイテムをピックすることを回避する、など)。
【0124】
工程504で、把持が成功したか否かが判定される。1または複数の触覚検知ユニットからの出力は、ロボットアームエンドエフェクタとアイテムとの間の係合に関連付けられている1以上の力および/または1以上のモーメントを決定するために用いられてよい。1以上の触覚検知ユニットおよび/または1以上のハウジングセンサからのセンサ出力は、複数の因子に対応する値を決定するために用いられてよい。複数の因子は各々、係数に関連付けられている。ロボットアームエンドエフェクタがアイテムの把持に成功したか否かを判定するために、多因子モデルが実装されてよい。複数の因子に関連付けられている対応する値およびそれらに対応する係数は、多因子モデルに入力として提供され、多因子モデルは、決定を出力するよう構成されている。いくつかの実施形態において、多因子モデルは、ロボットアームエンドエフェクタがアイテムと係合しているか否か(例えば、把持/非把持)に関する二分決定を出力するよう構成されている。いくつかの実施形態において、多因子モデルは、ロボットアームエンドエフェクタがアイテムを把持しているか否かの確率を出力するよう構成されている。
【0125】
把持が成功した場合、処理500は工程506に進み、アイテムは第2位置へ移動される。把持に成功しなかった場合、処理500は工程508に進み、閾値回数の把持試行が実行されたか否かが判定される。閾値回数の把持試行が実行された場合、処理500は工程512へ進む。閾値回数の把持試行が実行されていない場合、処理500は工程510へ進む。
【0126】
工程510で、同じ把持技術または異なる把持技術が実施される。アイテムの1つの特徴部が、複数の把持技術に関連付けられていてよい。把持技術の各々は、対応するスコアに関連付けられている。複数の把持技術の内、最高スコアを有する把持技術が最初に選択される。その把持技術が失敗した場合、次に高いスコアを有する把持技術が実施されてよい。いくつかの実施形態では、同じ把持技術が再び試される。
【0127】
工程512で、次の特徴部が選択される。複数の特徴部を有する複数のアイテムが、作業空間エリアに配置されてよい。複数の特徴部の各々は、対応する把持成功スコアを有する。複数の特徴部が、それらに対応するスコアに基づいて選択される。次の特徴部が、それに対応するスコアに基づいて選択される。いくつかの実施形態において、次の特徴部は、別のアイテムに関連している。いくつかの実施形態において、次の特徴部は、同じアイテムに関連している。次の特徴部は、前に選択された特徴部よりも低いスコアを有するが、複数の特徴部の内の他の残りの特徴部のスコア以上のスコアを有する。
【0128】
図6は、いくつかの実施形態に従って、アイテムの把持が成功したか否かを判定するための処理を示すフローチャートである。いくつかの実施形態において、処理600は、ロボットシステム(ロボットシステム101など)によって実施される。いくつかの実施形態において、処理600は、処理400の工程404または処理500の工程504の一部または全部を実行するために実施される。
【0129】
工程602で、複数の因子に対応する入力値が決定される。複数の因子は、重量、変形、導通、導電率、圧力、抵抗、インダクタンス、静電容量、または、ロボットアームエンドエフェクタの係合を示す任意のその他の因子、を含みうる。
【0130】
ロボットシステムのエンドエフェクタは、複数のフィンガを備えてよい複数のフィンガの各々は、対応する触覚検知ユニットに関連付けられていてよい。触覚検知ユニットは、複数の検知層を備えてよい。
【0131】
触覚検知ユニットは、導電層、変形層、および、基を備えてよい。検知層の各々は、1または複数のセンサを備えてよい。アイテムとの係合時に、触覚検知ユニットの検知層の各々は、基準検知値(例えば、ロボットアームエンドエフェクタがアイテムと係合していない時の検知値)とは異なる対応する検知値を出力しうる。
【0132】
導電層は、電気特性因子(導通、導電率、抵抗、静電容量、または、インダクタンス、など)が検知されることを可能にする導電材料を含んでよい。導電層は、第1フィンガに取り付けられている第1触覚検知ユニットが第2フィンガに取り付けられている第2触覚検知ユニットに接触した時に、第1および第2触覚検知ユニットの導電層が接触するように、触覚検知ユニットの最上層であってよい。
【0133】
把持動作の前に、基準導通値、基準導電率値、基準抵抗値、基準静電容量値、または、基準インダクタンス値が、決定されてよい。把持動作中、エンドエフェクタは、そのフィンガを用いて、アイテムを把持してよく、プロセッサは、1以上の導通値、1以上の導電率値、1以上の抵抗値、1以上の静電容量値、または、1以上のインダクタンス値を決定するために、電気信号を第1触覚検知ユニットに送信してよい。いくつかの実施形態において、電気信号は、周波数が異なる。1以上の決定された導通値、1以上の決定された導電率値、1以上の決定された抵抗値、1以上の決定された静電容量値、または、1以上の決定されたインダクタンス値は、エンドエフェクタがアイテムを把持したこと、または、把持しなかったことを示唆しうる。
【0134】
決定された導通値は、基準導通値と比較されてよい。決定された導通値が基準導通値から閾値量だけ変化している場合、決定された導通値は、エンドエフェクタがアイテムを把持しなかったことを示唆しうる。決定された導通値が基準導通値から閾値量だけ変化していない場合、決定された導通値は、エンドエフェクタがアイテムを把持したことを示唆しうる。
【0135】
決定された導電率値は、基準導電率値と比較されてよい。決定された導電率値が基準導電率値から閾値量だけ変化している場合、決定された導電率値は、エンドエフェクタがアイテムを把持しなかったことを示唆しうる。決定された導電率値が、関連付けられている基準値から閾値量未満だけ変化している場合、決定された導電率値は、エンドエフェクタがアイテムを把持したことを示唆しうる。
【0136】
決定された抵抗値は、基準抵抗値と比較されてよい。決定された抵抗値が閾値量だけ基準抵抗値から変化している場合、決定された抵抗値は、エンドエフェクタがアイテムを把持しなかったことを示唆しうる。決定された抵抗値が、関連付けられている基準値から閾値量未満だけ変化している場合、決定された抵抗値は、エンドエフェクタがアイテムを把持したことを示唆しうる。
【0137】
決定された静電容量値は、基準静電容量値と比較されてよい。決定された静電容量値が基準静電容量値から閾値量だけ変化している場合、決定された静電容量値は、エンドエフェクタがアイテムを把持しなかったことを示唆しうる。決定された静電容量値が、基準静電容量値から閾値量未満だけ変化している場合、決定された静電容量値は、エンドエフェクタがアイテムを把持したことを示唆しうる。また、プロセッサは、決定された静電容量値に基づいて、把持されたアイテムの材料を決定してもよい。
【0138】
決定れたインダクタンス値は、基準インダクタンス値と比較されてよい。決定されたインダクタンス値が基準インダクタンス値から閾値量だけ変化している場合、決定されたインダクタンス値は、エンドエフェクタがアイテムを把持しなかったことを示唆しうる。決定されたインダクタンス値が、関連付けられている基準値から閾値量未満だけ変化している場合、決定されたインダクタンス値は、エンドエフェクタがアイテムを把持したことを示唆しうる。
【0139】
変形層は、重量因子および/または変形因子の決定を可能にする誘電材料を含んでよい(例えば、シリコン、プラスチック、または、力に反応して変形しうる任意のその他の材料)。測定対象物が、誘電材料に挿入されていてよい。
【0140】
いくつかの実施形態において、複数の磁石が誘電材料に挿入されており、磁気センサが基板層上に配置されている。把持動作の前に、基準磁場が決定されてよい。把持動作中、係合に関連付けられている力および/またはモーメントが、複数の磁石の内の1または複数を変位させる。この変位は、磁気センサによって検知される磁場の変化を引き起こす。プロセッサが、磁気センサに接続され、検知された磁場を基準磁場と比較してよい。プロセッサは、比較に基づいて、重量値および/または変形値を決定してよい。
【0141】
いくつかの実施形態において、複数のマーカが誘電材料に埋め込まれており、画像センサが基板層上に配置されている。把持動作の前に、マーカの各々に対する基準位置が決定されてよい。把持動作中、係合に関連付けられている力および/またはモーメントが、複数のマーカの内の1または複数を変位させる。プロセッサが、画像センサに接続され、重量値および/または変形値を決定するために複数のマーカの検知位置を複数のマーカの基準位置と比較してよい。
【0142】
いくつかの実施形態において、反射材料が、誘電材料に埋め込まれ、エミッタおよびレシーバが、基板層上に配置されている。把持動作の前に、基準信号振幅が決定されてよい。把持動作中、係合に関連付けられている力および/またはモーメントが、信号がどのように誘電材料を通過するのかを変化させる。係合は、レシーバで受信される反射信号の振幅を変化させる。プロセッサが、レシーバに接続され、重量値および/または変形値を決定するために基準信号振幅を受信信号振幅と比較してよい。
【0143】
いくつかの実施形態において、変形を検出できる1または複数の電気機械センサ(例えば、ひずみゲージ)が、誘電材料に埋め込まれている。把持動作の前に、基準抵抗値が決定されてよい。把持動作中、係合に関連付けられている力および/またはモーメントが、1または複数の電気機械センサに関連付けられている抵抗を変化させる。プロセッサが、1または複数の電気機械式センサに接続され、重量値および/または変形値を決定するために基準抵抗値を変化した抵抗値と比較してよい。
【0144】
いくつかの実施形態において、誘電材料は、空気、別の気体、または、液体を含む柔軟な膜(例えば、サック、パウチ)を備えてよい。把持動作の前に、基準圧力値が決定されてよい。把持動作中、係合に関連付けられている力および/またはモーメントが、柔軟な膜に関連付けられている圧力を変化させる。プロセッサが、柔軟な膜に接続され、重量値および/または変形値を決定するために基準圧力値を変化した圧力値と比較してよい。
【0145】
工程604で、対応する入力値は、多因子モデルに提供される。プロセッサは、センサ出力を用いて、ロボットアームエンドエフェクタとアイテムとの間の係合に関連付けられている1以上の力および/または1以上のモーメントを決定してよい。また、プロセッサは、センサ出力を用いて、複数の因子に対応する値を決定してもよい。例えば、重量値、変形値、導通値、導電率値、圧力値、抵抗値、インダクタンス値、および/または、静電容量値が決定されてよい。
【0146】
複数の因子は各々、係数に関連付けられている。いくつかの実施形態において、複数の因子は、均等に重み付けされる(例えば、それらは各々、関連付けられた係数「1」を有する)。いくつかの実施形態において、複数の因子の一部は、異なる重みを有する。例えば、選択アイテムは、金属物体であってよく、導通因子に関連付けられている係数は、変形因子に関連付けられている係数よりも小さくてよい。
【0147】
プロセッサは、多因子モデルを実装してよい。因子値および対応する係数が、多因子モデルに入力されてよい。
【0148】
工程606で、ロボットアームエンドエフェクタがアイテムと係合しているか否かが判定される。いくつかの実施形態において、多因子モデルは、ロボットアームエンドエフェクタがアイテムと係合しているか否か(例えば、係合/非係合)に関する二分決定を出力するよう構成されている。いくつかの実施形態において、多因子モデルは、ロボットアームエンドエフェクタがアイテムと係合しているか否かの確率を出力するよう構成されている。
【0149】
ロボットアームエンドエフェクタがアイテムと係合していると機械学習モデルの出力が示唆している場合、処理600は、アイテムが第2位置へ移動される工程608へ進む。ロボットアームエンドエフェクタがアイテムと係合しなかったと機械学習モデルの出力が示唆している場合、処理600は、1または複数の応答動作が実行される工程610へ進む。いくつかの実施形態において、ロボットシステムは、選択アイテムの再把持を試みる。いくつかの実施形態において、ロボットシステムは、人的介入を要求する。いくつかの実施形態において、ロボットアームエンドエフェクタは、選択アイテムを把持することができず、異なるアイテムを選択して把持する。
【0150】
図7は、いくつかの実施形態に従って、アイテムの把持が成功したか否かを判定するための処理を示すフローチャートである。いくつかの実施形態において、処理700は、ロボットシステム(ロボットシステム101など)によって実施される。いくつかの実施形態において、処理700は、処理400の工程404、処理500の工程504、または、処理600の工程606の一部または全部を実行するために実施される。
【0151】
工程702で、静的測定が実行される。静的測定は、ロボットアームエンドエフェクタが静止状態のアイテムを把持し、複数のセンサの出力を測定することを含んでよい。いくつかの実施形態において、複数のセンサの出力は、ロボットアームエンドエフェクタがアイテムの把持に成功したか否かを判定するために、複数のセンサに関連付けられている対応する基準出力(すなわち、ロボットアームエンドエフェクタがアイテムを把持していない時の出力)と比較されてよい。
【0152】
いくつかの実施形態において、静的測定中の把持成功に対して期待されるセンサ出力が学習される。学習段階の間、人間のオペレータまたはロボットシステムが、様々なタイプのアイテムを把持および移動させてよい。ロボットシステムは、把持の成功を示すセンサ出力の組み合わせと、把持の失敗を示すセンサ出力の組み合わせとを確認することができる。複数のセンサの出力は、ロボットアームエンドエフェクタがアイテムの把持に成功したか否かを判定するために、把持成功に対して期待されるセンサ出力と比較されてよい。
【0153】
工程704で、動的測定が実行される。最初の把持の後、ロボットアームエンドエフェクタの向きが変更されてよく、ロボットアームエンドエフェクタがアイテムの把持に成功したか否かを判定するために、ロボットアームエンドエフェクタが移動している間に複数のセンサの出力が測定されてよい。静的測定を実行した時の複数のセンサの出力は、ロボットアームエンドエフェクタがアイテムの把持に成功したか否かを判定するために、動的測定を実行した時の複数のセンサの出力と比較されてよい。
【0154】
いくつかの実施形態において、動的測定中の把持成功に対して期待されるセンサ出力が学習される。学習段階の間、人間のオペレータまたはロボットシステムが、様々なタイプのアイテムを把持および移動させてよい。アイテムは、様々な方向および/または向きに移動されてよい。ロボットシステムは、把持の成功を示すセンサ出力の組み合わせと、把持の失敗を示すセンサ出力の組み合わせとを確認することができる。複数のセンサの出力は、ロボットアームエンドエフェクタがアイテムの把持に成功したか否かを判定するために、把持成功に対して期待されるセンサ出力と比較されてよい。
【0155】
いくつかの実施形態において、実行中に、ロボットシステムは、静的測定に関連付けられているセンサ出力および/または動的測定に関連付けられているセンサ出力の組み合わせに基づいて、ロボットアームエンドエフェクタがアイテムの把持に成功したか否かを判定する。
【0156】
上述の実施形態は、理解しやすいようにいくぶん詳しく説明されているが、本発明は、提供されている詳細事項に限定されるものではない。本発明を実施する多くの代替方法が存在する。開示されている実施形態は、例示であり、限定を意図するものではない。
[適用例1]ロボットシステムであって、
複数のセンサと、前記複数のセンサの各々は、ロボットアームエンドエフェクタとアイテムとの係合に関連付けられている検知値を反映する出力を提供するよう構成され、前記複数のセンサは、係合を示す第1因子に関連付けられている第1値を測定するよう構成されている第1センサと、係合を示す第2因子に関連付けられている第2値を測定するよう構成されている第2センサとを備え、前記第1および第2因子は異なり、
前記複数のセンサに接続されているプロセッサであって、前記プロセッサは、少なくとも部分的に、
前記第1因子に関連付けられている第1入力を決定するために前記第1値を用い、前記第2因子に関連付けられている第2入力を決定するために前記第2値を用い、
前記第1入力および前記第2入力に少なくとも部分的に基づいて、前記ロボットアームエンドエフェクタと前記アイテムとの係合に関連付けられている出力を提供するよう構成されている多因子モデルに、前記第1入力および前記第2入力を提供し、
前記ロボットアームエンドエフェクタと前記アイテムとの係合に関連付けられている前記判定を行うために、前記多因子モデルの前記出力を用いることによって、前記ロボットアームエンドエフェクタと前記アイテムとの係合に関連する判定を行うために、前記複数のセンサのそれぞれの前記出力を用いるよう構成されている、プロセッサと、
を備える、ロボットシステム。
[適用例2]適用例1に記載のロボットシステムであって、触覚検知ユニットは、前記複数のセンサを備え、前記触覚検知ユニットは、複数の層で構成され、前記複数の層の各々は、前記複数のセンサの内の1または複数のセンサを備える、ロボットシステム。
[適用例3]適用例1に記載のロボットシステムであって、前記第1因子および前記第2因子は、重量、変形、導通、導電率、抵抗、インダクタンス、および、静電容量、の内の少なくとも2つを含む、ロボットシステム。
[適用例4]適用例1に記載のロボットシステムであって、前記第1センサは、複数の磁石と、1または複数の磁気センサと、を備える、ロボットシステム。
[適用例5]適用例4に記載のロボットシステムであって、前記複数の磁石は、グリッド状に配列されている、ロボットシステム。
[適用例6]適用例4に記載のロボットシステムであって、前記複数の磁石の内の少なくとも1つは、触覚検知ユニットに関連付けられている境界上に配置されている、ロボットシステム。
[適用例7]適用例1に記載のロボットシステムであって、前記複数のセンサは、エミッタと、レシーバと、を備える、ロボットシステム。
[適用例8]適用例1に記載のロボットシステムであって、前記第1センサは、複数のマーカと、画像センサと、を備える、ロボットシステム。
[適用例9]適用例1に記載のロボットシステムであって、前記第1センサは、1または複数の電気機械センサと、を備える、ロボットシステム。
[適用例10]適用例1に記載のロボットシステムであって、前記第1センサは、気体または液体を含む柔軟な膜に結合されている圧力センサを含む、ロボットシステム。
[適用例11]適用例1に記載のロボットシステムであって、前記第2センサは、導電材料を含む、ロボットシステム。
[適用例12]適用例1に記載のロボットシステムであって、前記複数のセンサは、前記ロボットアームエンドエフェクタの手首部分に取り付けられている力センサを含む、ロボットシステム。
[適用例13]適用例1に記載のロボットシステムであって、前記第1因子は、第1係数に関連付けられ、前記第2因子は、第2係数に関連付けられている、ロボットシステム。
[適用例14]適用例13に記載のロボットシステムであって、前記第1係数および前記第2係数は等しい、ロボットシステム。
[適用例15]適用例13に記載のロボットシステムであって、前記第1係数および前記第2係数は異なる、ロボットシステム。
[適用例16]適用例1に記載のロボットシステムであって、前記複数のセンサのそれぞれの前記出力は、静的測定が実行されている時、および、動的測定が実行されている時に、前記プロセッサに提供される、ロボットシステム。
[適用例17]適用例1に記載のロボットシステムであって、前記多因子モデルの前記出力は、前記ロボットアームエンドエフェクタが前記アイテムの把持に成功したことを示す、ロボットシステム。
[適用例18]適用例1に記載のロボットシステムであって、前記多因子モデルの前記出力は、前記ロボットアームエンドエフェクタが前記アイテムの把持に成功しなかったことを示す、ロボットシステム。
[適用例19]適用例1に記載のロボットシステムであって、前記多因子モデルの前記出力は、人的介入が必要であることを示す、ロボットシステム。
[適用例20]適用例1に記載のロボットシステムであって、前記多因子モデルの前記出力は、前記ロボットアームエンドエフェクタが別のアイテムに係合すべきであることを示す、ロボットシステム。
[適用例21]方法であって、
複数のセンサの内の第1センサによって検知された第1値を用いて、第1因子に関連付けられている第1入力を決定すると共に、前記複数のセンサの内の第2センサによって検知された第2値を用いて、第2因子に関連付けられている第2入力を決定し、前記複数のセンサの各々は、ロボットアームエンドエフェクタとアイテムとの係合に関連付けられている検知値を反映する出力を提供するよう構成され、前記第1および第2因子は異なり、
前記第1入力および前記第2入力に少なくとも部分的に基づいて、前記ロボットアームエンドエフェクタと前記アイテムとの係合に関連付けられている出力を提供するよう構成されている多因子モデルに、前記第1入力および前記第2入力を提供し、
前記ロボットアームエンドエフェクタと前記アイテムとの係合に関連付けられている判定を行ために、前記多因子モデルの前記出力を用いること、
を備える、方法。
[適用例22]コンピュータプログラム製品であって、非一時的なコンピュータ読み取り可能媒体内に具現化され、
複数のセンサの内の第1センサによって検知された第1値を用いて、第1因子に関連付けられている第1入力を決定すると共に、前記複数のセンサの内の第2センサによって検知された第2値を用いて、第2因子に関連付けられている第2入力を決定するためのコンピュータ命令と、前記複数のセンサの各々は、ロボットアームエンドエフェクタとアイテムとの係合に関連付けられており、
前記第1入力および前記第2入力に少なくとも部分的に基づいて、前記ロボットアームエンドエフェクタと前記アイテムとの係合に関連付けられている出力を提供するよう構成されている多因子モデルに、前記第1入力および前記第2入力を提供するためのコンピュータ命令と、
前記ロボットアームエンドエフェクタと前記アイテムとの係合に関連付けられている判定を行うために、前記多因子モデルの前記出力を用いるコンピュータ命令と、
を備える、コンピュータプログラム製品。