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

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

▶ 株式会社MUJINの特許一覧

特許7411932自動パッケージ登録システム、デバイス、および方法
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-28
(45)【発行日】2024-01-12
(54)【発明の名称】自動パッケージ登録システム、デバイス、および方法
(51)【国際特許分類】
   B65G 59/02 20060101AFI20240104BHJP
   B25J 13/08 20060101ALI20240104BHJP
【FI】
B65G59/02 Z
B25J13/08 A
【請求項の数】 20
【外国語出願】
(21)【出願番号】P 2020072681
(22)【出願日】2020-04-15
(62)【分割の表示】P 2019133517の分割
【原出願日】2019-07-19
(65)【公開番号】P2020110918
(43)【公開日】2020-07-27
【審査請求日】2022-07-19
(31)【優先権主張番号】62/752,756
(32)【優先日】2018-10-30
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】16/290,741
(32)【優先日】2019-03-01
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】62/852,963
(32)【優先日】2019-05-24
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】515182347
【氏名又は名称】株式会社Mujin
(74)【代理人】
【識別番号】100079108
【弁理士】
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【弁理士】
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【弁理士】
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【弁理士】
【氏名又は名称】内藤 和彦
(74)【代理人】
【識別番号】100134371
【弁理士】
【氏名又は名称】中塚 隆志
(72)【発明者】
【氏名】デアンコウ,ロセン
(72)【発明者】
【氏名】リュウ,フアン
(72)【発明者】
【氏名】イエ,シュータオ
(72)【発明者】
【氏名】ロドリゲス,ジョセ ジェロニモ モレイラ
(72)【発明者】
【氏名】金本 良樹
(72)【発明者】
【氏名】ユ,ジンズ
(72)【発明者】
【氏名】イスラム,ラッセル
【審査官】板澤 敏明
(56)【参考文献】
【文献】特開2017-058130(JP,A)
【文献】特開2003-237943(JP,A)
【文献】特開2007-254128(JP,A)
【文献】特開2018-047544(JP,A)
【文献】特表2017-520418(JP,A)
【文献】米国特許出願公開第2010/0222915(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
B65G 59/00-59/12
B65G 60/00
B25J 13/08
(57)【特許請求の範囲】
【請求項1】
ロボットシステムを動作させる方法であって、
パッケージを表す第1の画像データに基づいてエッジのペアを識別することと、
前記エッジのペアに基づいて最小実行可能領域(MVR:minimum viable region)を決定することと、
前記MVRに基づいた前記パッケージを持ち上げるための1つまたは複数のコマンドを生成することと、
前記持ち上げ後の前記パッケージを表す第2の画像データを受信することと、
前記第1の画像データおよび前記第2の画像データに基づいて前記パッケージの新たな登録レコードを表す登録データを生成することと、
を含む、前記方法。
【請求項2】
前記第1の画像データに基づいて追加のエッジを識別することであって、前記追加のエッジは、前記識別されたエッジのペアの少なくとも1つのエッジと所定の角度で交差する、前記識別すること、
をさらに含み、
前記識別されたエッジのペアは前記パッケージの露出したエッジを表し、
前記MVRを決定することは、前記エッジのペアおよび前記追加のエッジに基づいて前記MVRを決定することを含む、
請求項1に記載の方法。
【請求項3】
前記MVRは、前記露出したエッジのペアと前記追加のエッジのペアとの間にある、請求項2に記載の方法。
【請求項4】
前記第1の画像データは、前記パッケージに隣接した1つまたは複数のオブジェクトをさらに表し、
前記追加のエッジを識別することは、前記1つまたは複数のオブジェクトに隣接した前記パッケージのエッジの推定であり、
前記MVRは不明瞭なエッジに至るまで、または前記不明瞭なエッジの手前まで延在し、
前記1つまたは複数のコマンドを生成することは、前記MVR内でエンドエフェクタを重心(CoM:center of mass)位置上に配置して前記パッケージを把持するための1つまたは複数のコマンドを生成することを含み、
前記MVR内で前記CoM位置を決定することをさらに含む、
請求項2に記載の方法。
【請求項5】
前記第1の画像データは、前記パッケージを含むオブジェクトのグループの3次元深度マップおよび2次元表面画像を含み、
前記追加のエッジは、前記2次元表面画像内に描かれた直線である、
請求項2に記載の方法。
【請求項6】
前記第2の画像データに基づいて新たなエッジを識別することであって、前記新たなエッジは、前記識別されたエッジのペアの少なくとも1つのエッジと所定の角度で交差し、かつ、前記パッケージの新たに露出したエッジを表す、前記識別すること、
をさらに含み、
前記登録データは、前記エッジのペアと前記新たなエッジとの間の前記第1の画像データおよび/または前記第2の画像データの1つまたは複数の部分に対応する、
請求項1に記載の方法。
【請求項7】
前記新たなエッジを識別することは、前記パッケージを持ち上げた後に測定された深度データの差に基づいて前記新たなエッジを識別することを含む、請求項6に記載の方法。
【請求項8】
前記MVRを決定することは、前記パッケージを把持するように構成されたエンドエフェクタの1つまたは複数の横寸法を表すグリッパサイズに関連付けられたサイズを有するMVRを決定することを含む、請求項1に記載の方法。
【請求項9】
前記第1の画像データは、前記パッケージを含むオブジェクトのグループの3次元深度マップおよび2次元表面画像を含み、
前記エッジのペアは、前記3次元深度マップに基づいて識別される、
請求項1に記載の方法。
【請求項10】
前記パッケージを持ち上げた後にデータを受信することであって、前記データは、前記パッケージを把持するように構成されたエンドエフェクタに接続または統合されたセンサからの測定値を表す、前記受信することと、
前記受信されたデータに基づいて前記パッケージの重心位置を決定することと、
前記決定された重心位置が前記最小実行可能領域の外側にある場合に、(1)前記エンドエフェクタから前記パッケージを解放すること、(2)前記エンドエフェクタを前記重心位置上に配置すること、および、(3)前記重心位置に基づいて前記パッケージを再把持することのための1つまたは複数のコマンドを生成することと、
をさらに含む、請求項1に記載の方法。
【請求項11】
少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサに結合された少なくとも1つのメモリであって、前記少なくとも1つのプロセッサによって実行可能な命令を含み、前記命令は、
パッケージを表す第1の画像データに基づいてエッジのペアを識別することと、
前記エッジのペアに基づいて最小実行可能領域(MVR)を決定することと、
前記MVRに基づいた前記パッケージを持ち上げるための1つまたは複数のコマンドを生成することと、
前記持ち上げ後の前記パッケージを表す第2の画像データを受信することと、
前記第1の画像データおよび前記第2の画像データに基づいて前記パッケージの新たな登録レコードを表す登録データを生成することと、
を行う、前記少なくとも1つのメモリと
を備える、ロボットシステム。
【請求項12】
前記第1の画像データは、前記パッケージに隣接した1つまたは複数のオブジェクトをさらに表し、
前記少なくとも1つのメモリは、
前記第1の画像データに基づいて追加のエッジを識別することであって、前記追加のエッジは、前記1つまたは複数のオブジェクトに隣接した前記パッケージのエッジの推定を表す、前記識別すること、を行う命令を含み、
前記MVRは、不明瞭エッジと重ならない、
請求項11に記載のシステム。
【請求項13】
前記少なくとも1つのメモリは、
前記第2の画像データに基づいて新たなエッジを識別することであって、前記新たなエッジは、前記識別されたエッジのペアの少なくとも1つのエッと所定の角度で交差し、かつ、前記パッケージの新たに露出したエッジを表す、前記識別すること、
を行う命令を含み、
前記登録データは、前記エッジのペアと前記新たなエッジとの間の前記第1の画像データおよび/または前記第2の画像データの1つまたは複数の部分に対応する、
請求項11に記載のシステム。
【請求項14】
前記少なくとも1つのメモリは、前記パッケージを持ち上げた後に測定された深度データの差に基づいて前記新たなエッジを識別すること、を行う命令を含む、請求項13に記載のシステム。
【請求項15】
前記登録データは、前記露出したエッジのペアと前記新たなエッジに対応する1つまたは複数の位置との間の前記第1の画像データの部分に対応する、請求項13に記載のシステム。
【請求項16】
コンピューティングシステムによって実行された場合に、前記コンピューティングシステムにコンピュータ実施方法を実行させるコンピュータ実行可能命令を記憶する非一時的メモリ媒体であって、前記方法は、
パッケージを表す第1の画像データに基づいてエッジのペアを識別することと、
前記エッジのペアに基づいて最小実行可能領域(MVR)を決定することと、
前記MVRに基づいた前記パッケージを持ち上げるための1つまたは複数のコマンドを生成することと、
前記持ち上げ後の前記パッケージを表す第2の画像データを受信することと、
前記第1の画像データおよび前記第2の画像データに基づいて前記パッケージの新たな登録レコードを表す登録データを生成することと、
を含む、前記非一時的メモリ媒体。
【請求項17】
前記方法は、
前記第1の画像データに基づいて追加のエッジを識別することであって、前記追加のエッジは、前記識別されたエッジのペアの少なくとも1つのエッジと所定の角度で交差する直線である、前記識別すること
をさらに含み、
前記最小実行可能領域は、前記直線に至るまで、または前記直線の手前まで延在した連続する領域である、
請求項16に記載の非一時的メモリ媒体。
【請求項18】
前記直線は、閾値未満である信頼基準に対応する、請求項17に記載の非一時的メモリ媒体。
【請求項19】
前記MVRを決定することは、エンドエフェクタの1つまたは複数の横寸法を表すグリッパサイズに関連付けられたサイズを有するMVRを決定することを含む、請求項16に記載の非一時的メモリ媒体。
【請求項20】
前記方法は、
前記パッケージを持ち上げた後に得られたデータに基づいて前記パッケージの重心位置を決定することと、
前記決定された重心位置が前記MVRの内側である場合に、ち上げられた前記パッケージを直接移動させるための1つまたは複数のコマンドを生成することと、
を含む、請求項16に記載の非一時的メモリ媒体。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
[0001] 本出願は、2018年10月30日に出願された米国仮特許出願第62/752,756号の利益を主張し、その全体が本明細書に引用により組み込まれている。
【背景技術】
【0002】
[0002] 多くの場合、パッケージはパレタイズされて送り先へ輸送され、そこでデパレタイズされる。場合により、パッケージは人間の作業者によってデパレタイズされ、これには費用がかかり、肉体的損傷の危険性があり得る。産業環境では、デパレタイズ作業は産業用ロボット、たとえば、パッケージを把持し、持ち上げ、運び、解放位置に届けるロボットアームにより行われることが多い。また、撮像デバイスを利用して、パレットに積まれたパッケージのスタックの画像を撮影する場合がある。システムはこの画像を処理して、たとえば、撮影画像を登録データソースに記憶された登録済み画像と比較することによって、パッケージがロボットアームによって効率的に扱われるようにし得る。
【0003】
[0003] 場合により、パッケージの撮影画像は登録済み画像と一致し得る。結果として、撮像された物体の物理特性(たとえば、パッケージの寸法、重さ、および/または重心の測定値)は未知となる場合がある。物理特性を正しく識別するのに失敗した場合、種々の望ましくない結果がもたらされ得る。たとえば、そのような失敗は中断を引き起こす場合があり、これにはパッケージを手動で登録することが必要となり得る。また、そのような失敗によってパッケージが誤って扱われる場合があり、これは特に、パッケージが比較的重い、および/または傾いている場合である。
【図面の簡単な説明】
【0004】
図1A】[0004]図1Aは、本技術のいくつかの実施形態によるパッケージ登録メカニズムによって構成されるロボットシステムを示す図である。
図1B】[0005]図1Bは、本技術のいくつかの実施形態によるロボットシステムの機能ブロック図である。
図2A】[0006]図2Aは、本技術のいくつかの実施形態によるフォーストルクセンサを示す図である。
図2B】[0007]図2Bは、本技術のいくつかの実施形態によるグリッパを示す図である。
図3A】[0008]図3Aは、パッケージのスタックの例の斜視図である。
図3B】[0009]図3Bは、パッケージのスタックの例の上面図である。
図3C】[0010]図3Cは、本技術のいくつかの実施形態による登録済みパッケージの例示的なシンボロジーを示す図である。
図4A】[0011]図4Aは、本技術のいくつかの実施形態によるパッケージのスタックの第2の例の斜視図を示す図である。
図4B】[0012]図4Bは、本技術のいくつかの実施形態によるパッケージの第2のスタックの上面図を示す図である。
図4C】[0013]図4Cは、本技術のいくつかの実施形態による登録済みおよび未登録パッケージの例示的なシンボロジーを示す図である。
図4D】[0014]図4Dは、本技術のいくつかの実施形態による不明瞭エッジおよび最小実行可能領域(MVR:minimum viable region)の例を示す図である。
図4E】[0015]図4Eは、本技術のいくつかの実施形態による登録済みおよび未登録パッケージの例示的なシンボロジーの第2のセットを示す図である。
図4F】[0016]図4Fは、本技術のいくつかの実施形態による不明瞭エッジおよびMVRの第2の例を示す図である。
図4G】[0017]図4Gは、本技術のいくつかの実施形態による未登録パッケージの例示的なシンボロジーの第3のセットを示す図である。
図4H】[0018]図4Hは、本技術のいくつかの実施形態による図4Dの第1のMVR上へのグリッパシステムの配置例を示す図である。
図4I】[0019]図4Iは、本技術のいくつかの実施形態による未登録パッケージの例示的なシンボロジーの第4のセットを示す図である。
図4J】[0020]図4Jは、本技術のいくつかの実施形態による新たに処理されるパッケージについての不明瞭エッジおよびMVRの例を示す図である。
図4K】[0021]図4Kは、本技術のいくつかの実施形態による図4FのMVR上へのグリッパシステムの配置例を示す図である。
図4L】[0022]図4Lは、本技術のいくつかの実施形態による未登録パッケージの例示的なシンボロジーの第5のセットを示す図である。
図4M】[0023]図4Mは、本技術のいくつかの実施形態による新たに処理されるパッケージについての不明瞭エッジおよびMVRの例を示す図である。
図4N】[0024]図4Nは、本技術のいくつかの実施形態による図4MのMVR上へのグリッパシステムの配置例を示す図である。
図4O】[0025]図4Oは、本技術のいくつかの実施形態による図4JのMVR上へのグリッパシステムの配置例を示す図である。
図4P】[0026]図4Pは、本技術のいくつかの実施形態による図4Dの第2のMVR上へのグリッパシステムの配置例を示す図である。
図4Q】[0027]図4Qは、本技術のいくつかの実施形態による図4Dの第3のMVR上へのグリッパシステムの配置例を示す図である。
図5】[0028]本技術のいくつかの実施形態による図1Aのロボットシステム100を動作させるための例示的な方法の制御フローを示す図である。
【発明を実施するための形態】
【0005】
[0029] 以下の説明では、本明細書で開示する発明概念の実施形態の完全な理解を提供するために、いくつかの具体的詳細を提示する。しかしながら、関連技術に熟練した者であれば、本明細書で開示する本技術の実施形態が、具体的詳細のうちの1つまたは複数がなくとも、または他の構成要素との組み合わせなどで実施できることを理解するであろう。他の例では、本明細書で開示する本技術の様々な実施形態の態様を曖昧にしないようにするために、よく知られている実施態様または動作については詳細には図示も説明もしていない。
【0006】
[0030] 図1Aおよび図1Bに、本技術のいくつかの実施形態によるパッケージ登録メカニズムによって構成されるロボットシステム100を示す。いくつかの実施形態では、ロボットシステムは、デパレタイズ台110、荷受台120、ロボットアームシステム130、エンドエフェクタ140、処理ユニット(PU:processing unit)150、画像システム160、登録データソース(RDS:registration data source)170、高さ決定センサ(HDS:height determination sensor)180、および/または解放位置センサ(RPS:release point sensor)190を含むことができる。
【0007】
[0031] デパレタイズ台110は、複数のパッケージ112(単数形では、「パッケージ112」)がスタックおよび/またはステージされ、荷受台120に運ばれる準備ができている場合がある任意の台、表面、および/または構造を含むことができる。「パッケージ」および「複数のパッケージ」という用語を本明細書で使用するが、この用語は、以下に詳述するように、コンテナを把持し、持ち上げ、運び、届けることが可能な他の任意の語、たとえば、限定はしないが、「ケース」、「ボックス」、「カートン」、またはこれらの任意の組み合わせを含むことに留意されたい。その上、長方形のボックスを本明細書で開示する図面に示しているが、ボックスの形状はそのような形状に限定されず、以下に詳述するように、把持し、持ち上げ、運び、届けることが可能な任意の規則的または不規則な形状を含む。
【0008】
[0032] デパレタイズ台110と同様に、荷受台120は、さらなるタスク/作業のためにパッケージ112を受けるように指定される任意の台、表面、および/または構造を含むことができる。いくつかの実施形態では、荷受台120は、さらなる作業(たとえば、仕分けおよび/または保管)のためにある場所(たとえば、後述の解放位置)から他の場所へパッケージ112を運ぶためのコンベアシステムを含むことができる。
【0009】
[0033] ロボットアームシステム130は、パッケージ112を操作する(たとえば、移動および/または回転もしくは向きを変更する)ように構成される1組のリンク構造、関節、モータ/アクチュエータ、センサ、またはそれらの組み合わせを含むことができる。ロボットアームシステム130は、本明細書において限定ではなく例示の目的で、多関節型の6軸ロボットアーム構造であり得るロボットアーム132を含むことができる。本明細書の議論はロボットアームシステム130を意図しているが、本明細書で開示する実施形態はそのようなシステムに限定されず、本明細書で開示する動作を行うように構成され得る任意のロボットシステムを含む。
【0010】
[0034] エンドエフェクタ140は、複数のパッケージ112と相互作用するように構成されるロボットアーム132の遠位端に結合される任意の1つまたは複数のコンポーネントを含むことができる。たとえば、エンドエフェクタ140は、パッケージ112を把持して保持するように構成される構造(たとえば、真空式グリッパ)を含むことができる。いくつかの実施形態では、エンドエフェクタ140は、(図2Aおよび図2Bに示すように)フォーストルク(F-T)センサ142、アームインターフェース144、グリッパシステム146、および/またはグリッパインターフェース148を含むことができる。
【0011】
[0035] 図1BのPU150は、ロボットアームシステム130(エンドエフェクタ140を含む)の動きおよび/または他の動作を管理および制御するだけでなく、他の関連するデータを処理するようにプログラムおよび/または構成される任意のユニット(複数可)または回路とすることができる。たとえば、PU150は、画像システム160からパッケージ112の表面画像(SI:surface image)を表す画像データを受信し、(後述する)RDS170によって提供される登録レコード172に従ってSIの登録状況を決定する。すなわち、パッケージ112がパッケージ112の登録済みインスタンスであるか、またはパッケージ112の未登録インスタンス(たとえば、パッケージ112の登録レコード172のインスタンスが存在しないまたは不完全なもの)であるかを判定する。また、たとえば、PU150はロボットアームシステム130をパッケージ112の登録済みインスタンスに誘導することができる。加えて、PU150は、把持制御信号をグリッパシステム146に適用し、アームを荷受台120に誘導し、および/またはRPS190から解放信号を受信すると、パッケージ112の登録済みインスタンスを荷受台120上に離すことができる。
【0012】
[0036] PU150は、ランダムアクセスメモリ(RAM)、ディスクドライブ、磁気メモリ、読み出し専用メモリ(ROM)、コンパクトディスク(CD)、固体メモリ、セキュアデジタルカード、および/またはコンパクトフラッシュカードを含むがこれらに限定されない、デジタルメモリ記憶デバイスまたは非一時的コンピュータ可読媒体(一般的には、図1Bのメモリ152)に永久にまたは一時的に記憶され得るソフトウェアまたはコンピュータ命令コードを実行する任意の電子データ処理ユニットを含むことができる。PU150は、本明細書で具現化する特定の機能のために開発されるアルゴリズムを含むソフトウェアまたはコンピュータ命令コードを実行することによって駆動されてもよい。いくつかの実施形態では、PU150は、本明細書で開示する実施形態に合わせてカスタマイズされた特定用途向け集積回路(ASIC)であってもよい。いくつかの実施形態では、PU150は、マイクロプロセッサ、デジタルシグナルプロセッサ(DSP)、プログラマブルロジックデバイス(PLD)、プログラマブルゲートアレイ(PGA)、および信号発生器のうちの1つまたは複数を含むことができる。しかし、本明細書の実施形態では、「プロセッサ」という用語はそのような例示的な処理ユニットに限定されることはなく、その意味は狭く解釈されるように意図していない。たとえば、PU150は、2つ以上の電子データ処理ユニットを含むこともできる。いくつかの実施形態では、PU150は、ロボットアームシステム130、エンドエフェクタ140、および/または画像システム160を含むがこれらに限定されないロボットシステム100の他の任意のシステムによって、またはこれと併せて使用されるプロセッサ(複数可)とすることができる。
【0013】
[0037] PU150は、入力データの受信を容易にするために、システムおよび/またはソースに(たとえば、導線、バス、および/または無線接続を介して)電子的に結合されてもよい。いくつかの実施形態では、動作可能に結合されるとは、電子的に結合されると置き換え可能であると見なされてもよい。直接接続がなされることは必須ではなく、代わりに、そのような入力データの受信および出力データの提供は、バスを介して、無線ネットワーク経由で、あるいはPU150によって物理または仮想コンピュータポートを介して受信および/または送信される信号として行うことができる。PU150は、以下に詳述する方法を実行するようにプログラムまたは構成されてもよい。いくつかの実施形態では、PU150は、画像システム160、RDS170、HDS180、および/またはRPS190を含むがこれらに限定されない様々なシステムおよび/またはユニットからデータを受信するようにプログラムまたは構成されてもよい。いくつかの実施形態では、PU150は、ロボットアームシステム130、エンドエフェクタ140、およびRDS170を含むがこれらに限定されない様々なシステムおよび/またはユニットに出力データを提供するようにプログラムまたは構成されてもよい。
【0014】
[0038] 画像システム160は、デパレタイズ台110上に配置されたパッケージ112の1つまたは複数のSIを表す画像データをキャプチャするように構成される1つまたは複数のセンサ162を含むことができる。いくつかの実施形態では、画像データは、パッケージ112の登録状況を決定し得る、パッケージ112の1つまたは複数の表面上に見える視覚的なデザインおよび/またはマーキングを表すことができる。いくつかの実施形態では、画像システム160は、目標とする(たとえば、可視および/または赤外の)電磁スペクトル帯域幅内で動作するように設計され、対応するスペクトル内の光/エネルギーを検出するために使用される1つまたは複数のカメラを含むことができる。いくつかの実施形態では、画像データは、1つまたは複数の3次元(3-D)カメラおよび/または1つまたは複数の2次元(2-D)カメラからキャプチャされる、点群を形成するデータ点のセット、深度マップ、またはこれらの組み合わせとすることができる。これらのカメラから、画像システム160と、パッケージ112の(たとえば、画像システム160の視線に対する)1つまたは複数の露出面との間の距離または深度が決定されてもよい。いくつかの実施形態では、距離または深度は、コンテキスト型画像分類アルゴリズム(複数可)および/またはエッジ検出アルゴリズム(複数可)などの画像認識アルゴリズム(複数可)を使用して決定することができる。決定後、距離/深度値を使用して、ロボットアームシステム130を介してパッケージ112を操作してもよい。たとえば、PU150および/またはロボットアームシステム130は、距離/深度値を使用して、パッケージ112が持ち上げられおよび/または把持され得る位置を計算することができる。本明細書に記載のデータ、たとえば、画像データは、情報を含むまたは情報を示すことができる離散的または連続的な任意のアナログまたはデジタル信号を含むことができることに留意されたい。
【0015】
[0039] 画像システム160は、以下に詳述するように、ロボットシステム100の1人または複数人の操作者によって見られ得る、センサ162によってキャプチャされたパッケージ(複数可)112の画像を提示するように構成される少なくとも1つの表示ユニット164を含むことができる。加えて、表示ユニット164は、以下に詳述するパッケージ112の登録済みおよび/または未登録インスタンスを表すシンボロジーなどであるがこれに限定されない他の情報を提示するように構成することができる。
【0016】
[0040] RDS170は、複数のパッケージ112についての登録レコード172を記憶するように構成される任意のデータベースおよび/またはメモリ記憶デバイス(たとえば、非一時的コンピュータ可読媒体)を含むことができる。たとえば、RDS170は、読み出し専用メモリ(ROM)、コンパクトディスク(CD)、固体メモリ、セキュアデジタルカード、コンパクトフラッシュカード、および/またはデータ記憶サーバもしくは遠隔記憶デバイスを含むことができる。
【0017】
[0041] いくつかの実施形態では、各登録レコード172は、対応するパッケージ112についての物理特性または属性を含むことができる。たとえば、各登録レコード172は、限定はしないが、1つまたは複数のテンプレートSI、2-Dもしくは3-Dサイズ測定値、重さ、および/または重心(CoM:center of mass)情報を含むことができる。テンプレートSIは、パッケージ112のデザイン、マーキング、外観、外形/輪郭、またはこれらの組み合わせを含む、パッケージ112の既知のまたは以前に決定された視覚的特徴を表すことができる。2-Dまたは3-Dサイズ測定値は、既知の/想定されるパッケージの長さ、幅、高さ、またはこれらの組み合わせを含むことができる。
【0018】
[0042] いくつかの実施形態では、RDS170は、以下に開示する実施形態に従って生成される(たとえば、以前は未知であったパッケージ、および/またはパッケージの以前は未知であった側面についての)登録レコード172の新たなインスタンスを受信するように構成することができる。したがって、ロボットシステム100は、RDS170に記憶される登録レコード172の数を増やして、パッケージ112を登録するための処理を自動化することによって、パッケージ112の未登録インスタンスをより少数にして、デパレタイズ作業をより効率化することができる。ライブ/動作データを使用してRDS170内の登録レコード172を動的に(たとえば、動作中/配置中に)更新することによって、ロボットシステム100は、以前は未知もしくは想定外であった条件(たとえば、照明条件、未知の向き、および/または段積みの不一致)および/または新たに遭遇したパッケージを考慮し得るコンピュータ学習処理を効率的に実装することができる。したがって、ロボットシステム100は、「未知の」条件/パッケージから生じる失敗、関連する人間の操作者の介入、および/または関連するタスクの失敗(たとえば、パッケージ紛失および/または衝突)を減らすことができる。
【0019】
[0043] HDS180は、基準点(たとえば、HDS180に関連付けられた表面)に対する物体(たとえば、パッケージ112)の垂直測定値を提供するように構成されるコンポーネントを含むことができる。図1Aに示す例では、HDS180は、パッケージ112の底部/エッジがHDS180に関連付けられた水平面(たとえば、走査面)と交差したときに、図1のPU150に信号を送信することができる。PU150は、HDS180からの信号を使用して、たとえば、HDS180の走査面(すなわち、事前に知られているもの)と、信号が生成されたときのグリッパシステム146の位置との間の距離に応じて、パッケージ112の高さを(たとえば、配置/接近の向きに従って)決定することができる。以下に開示するように、パッケージ112の高さは、登録レコード172に登録済みの2-D測定値に、第3の次元の測定値として追加されてもよい。いくつかの実施形態では、HDS180は、図1Aに示すように荷受台120上に設置することができる。
【0020】
[0044] RPS190は、パッケージ112がRPS190に関連付けられた水平面と交差または接触した場合に、PU150に提供される信号をトリガするように構成されるコンポーネント/回路を含むことができる。いくつかの実施形態では、RPS190によってトリガされた信号を使用して、グリッパシステム146がパッケージ112を荷受台120上に離す位置を決定してもよい。いくつかの実施形態では、RPS190は、図1Aに示すように荷受台120上に設置することができる。
【0021】
[0045] ここで図2Aを参照すると、F-Tセンサ142は、ある座標系の軸および/または複数の軸に沿った直線力および/またはモーメント力を検出するように構成される任意のセンサとすることができる。いくつかの実施形態では、F-Tセンサ142は、図1Aおよび図1Bのロボットシステム100によって利用される3軸までの力(たとえば、デカルト座標系のx軸、y軸、およびz軸に沿って検出される力)、および/または3軸モーメント(たとえば、デカルト座標系のx軸、y軸、およびz軸まわりに検出されるモーメント)を検出するように構成される6軸力センサを有するコンポーネントを含むことができる。いくつかの実施形態では、F-Tセンサ142は、内蔵アンプおよび信号処理用のマイクロコンピュータ、静的測定および動的測定を行う機能、および/またはサンプリング間隔に基づいて瞬時の変化を検出する機能を含むことができる。いくつかの実施形態では、F-Tセンサ142は、有線通信および/または無線通信を介して図1BのPU150と通信可能に結合することができる。
【0022】
[0046] アームインターフェース144は、図1Aのロボットアーム132の遠位端をF-Tセンサ142に結合するように構成される任意のデバイスとすることができる。いくつかの実施形態では、ロボットアームシステム130の製造業者は、F-Tセンサ142の製造業者と異なってもよい。そのような場合、アームインターフェース144の端部は異なる構成を有してもよく、一方の端部は遠位端と結合するよう構成され、他方の端部はF-Tセンサ142と結合するよう構成されてもよい。
【0023】
[0047] ここで図2Bを参照すると、グリッパシステム146は、図1Aのパッケージ112を図1Aのデパレタイズ台110上のその静止位置から把持し、パッケージ112が図1Bのロボットアームシステム130によって図1Aの荷受台120に運ばれ届けられる間に把持を持続するように構成される任意のシステムまたはアセンブリとすることができる。いくつかの実施形態では、グリッパシステム146は、荷受台120にてパッケージ112を把持し、デパレタイズ台110にて離すための真空源を利用した真空グリッパシステムから構成され得る。いくつかの実施形態では、真空グリッパシステムは、パッケージ112とのインターフェースとして吸引カップ(複数可)を利用することができる。
【0024】
[0048] 図2Bのグリッパインターフェース148は、F-Tセンサ142をグリッパシステム146に結合するように構成される任意のデバイスとすることができる。いくつかの実施形態では、F-Tセンサ142の製造業者は、グリッパシステム146の製造業者と異なってもよい。そのような場合、グリッパインターフェース148の両側は異なる構成を有してもよく、片側はF-Tセンサ142と結合するように構成され、反対側はグリッパシステム146と結合するように構成される。
【0025】
[0049] 図3A図4Qに、図1Aおよび図1Bのロボットシステム100を利用して、図1Aのパッケージ112の未登録インスタンスの図1Bの登録レコード172を生成し得る方法を示す。図3Aに、パッケージ112-1~112-24のスタックの例の斜視図を示す。図3Bに、これらのパッケージ112のスタックの例の上面図を示す。図3Bは、図1Aおよび図1Bの画像システム160のセンサ162によってキャプチャされた、これらのパッケージ112を見下ろしたシーンの画像および/または点群データに対応することができる。限定ではなく例示のみの目的で、パッケージ112-1~112-3、112-13~112-14、および112-21~112-24は、パッケージ112の登録済みインスタンスを表すことができ、それぞれ図1BのRDS170に記憶された登録レコード172を有する。議論および簡潔さのみのために、パッケージ112は長方形形状であるよう図示しており、各々、それぞれの登録レコード172に登録されたSI(斜線で図示)を有する。
【0026】
[0050] 図3Cに、本技術のいくつかの実施形態による登録済みパッケージの例示的なシンボロジーを示す。図3Cに、図1Bの表示ユニット164によって表示されるパッケージのシンボロジー(たとえば、表示されたオブジェクトの登録状況を表すための視覚的マーカおよび/またはオーバレイ)112-1a~112-3a、112-13a~112-14a、および112-21a~112-24aを示す。これらのシンボロジーおよび対応する登録状況を生成するために、図3Bのパッケージ112-1~112-3、112-13~112-14、および112-21~112-24のキャプチャされたSIを、画像認識アルゴリズム(複数可)によってRDS170に記憶された登録レコード172のSIと比較し、登録済みであれば、シンボロジーとして表示してもよい。いくつかの実施形態では、シンボロジーは、製造業者および/またはエンドユーザによって、SIが登録済みであることを示す視覚的フォーマットを使用して構成することができ、そのようなフォーマットは各種形状および/または色を利用することができる。限定ではなく例示のみの目的で、製造業者および/またはエンドユーザは、シンボロジー112-1a~112-3a、112-13a~112-14a、および112-21a~112-24aを、パッケージの輪郭の形状および大きさ(すなわち、ここでは長方形を想定)となるように構成している。図示していないが、シンボロジーは、パッケージ112-1~112-3、112-13~112-14、および112-21~112-24のそれぞれについて、肯定的な登録状況(すなわち、登録レコード172の存在するインスタンス)を示す色(たとえば、緑色)にすることができる。図示していないが、図3Bに示すシーンの画像は、表示ユニット164上に提示することができ、その上に図3Cのシンボロジーがオーバレイされ得る。いくつかの実施形態では、パッケージ112-1~112-3、112-13~112-14、および112-21~112-24を表す英数字(たとえば、登録レコード172にリストされた1つまたは複数の物理特性)が、シンボロジーの代わりに、またはこれに加えて提示されてもよい。
【0027】
[0051] いくつかの実施形態では、ロボットシステム100は、(エッジ検出アルゴリズム(複数可)を含み得る画像認識アルゴリズム(複数可)によって)画像データからパッケージの2-D測定値(たとえば、長さおよび幅)を生成することができる。たとえば、ロボットシステム100は、画像認識アルゴリズム(複数可)(たとえば、エッジ検出アルゴリズム(複数可)および/またはマッピングアルゴリズム(複数可))を使用して、パッケージ112-1~112-3、112-13~112-14、および112-21~112-24などの、デパレタイズ台110のパッケージ112の2-D測定値を生成することができる。ロボットシステム100は、測定面までの深度に基づいて2-D測定値を生成することができる。ロボットシステム100は、(たとえば、測定されたパッケージが、露出面の画像認識などによって識別されると)対応するパッケージ112の2-D測定値をそれらの登録レコード172と比較して、登録レコード172の精度を確認することができる。
【0028】
[0052] いくつかの実施形態では、図1Aおよび図1Bのエンドエフェクタ140および/またはグリッパシステム146を位置調整するために、登録レコード172に記憶されたCoM情報をPU150に提供してもよい。ロボットシステム100は、エンドエフェクタ140および/またはグリッパシステム146をパッケージ112のCoM上に配置して、パッケージ112を把持して持ち上げることによって、パッケージ112が図1Aのデパレタイズ台110上のその位置から把持され持ち上げられる場合に、バランスのとれたパッケージの把持およびレベルパッケージ持ち上げを含む作業を容易にすることができる。パッケージ112を把持し、持ち上げ、図1Aの荷受台120まで運び、そこで離してもよい。
【0029】
[0053] 図4Aに、本技術のいくつかの実施形態によるパッケージ(たとえば、パッケージ112-31~112-54)のスタックの第2の例の斜視図を示す。図4Bに、本技術のいくつかの実施形態によるパッケージのスタックの第2の例の上面図を示す。図3Bは、図1Aおよび図1Bの画像システム160のセンサ162によってキャプチャされた、これらのパッケージを見下ろしたシーンの画像および/または点群データに対応し得る。限定ではなく例示のみの目的で、パッケージ112-33、112-43および112-51は、パッケージ112の登録済みインスタンスを表し得、各インスタンスは、図1BのRDS170に記憶された図1Bの登録レコード172のそれぞれのインスタンスに含まれるSIを有する。議論および簡潔さのみのために、パッケージ112は長方形形状である。
【0030】
[0054] 加えて、パッケージ112-31、112-32、112-44、および112-52~112-54は、パッケージ112の未登録のおよび/または誤って処理された/一致したインスタンスを表し得る。これは図1BのRDS170に記憶された登録レコード172に対応しなくてもよい。ロボットシステム100は、これらの未登録/不一致SIを表す撮影画像データを、後述の第1の画像データおよび登録可能SIとして使用することができる。議論および簡潔さのみのために、パッケージ112は長方形形状であり、それぞれ、垂直線、水平線、および/または斜交平行線によって示されるSIを有することができる。
【0031】
[0055] 図4C図4E図4G図4I、および図4Lは、1つまたは複数のパッケージが持ち去られた場合のスタックの上面図を示し得る。図4Cに、本技術のいくつかの実施形態による登録済みおよび未登録パッケージの例示的なシンボロジーを示す。図4Cに、図1Bの表示ユニット164によって表示される長方形112-33a、112-43a、および112-51aのシンボロジーを示す。上述のように、パッケージ112のSIは、図1Bの画像システム160によってキャプチャされ、図1BのRDS170に記憶された図1Bの登録レコード172のSIと比較されてもよい。登録済みであれば、ロボットシステムは、SIが登録済みであることを示すシンボロジーを割り当ておよび/または表示することができる。図示のように、シンボロジー112-33a、112-43a、および112-51aは、表示ユニット164によって表示される長方形の輪郭を含むことができる。
【0032】
[0056] 図4Cに示すように、内側の長方形112-61a~112-61d(両端含む)を外側の長方形112-62a~112-62d(両端含む)の中に組み合わせたものが、パッケージ112-31、112-44、および112-53の未登録SIについてのシンボロジー112-31a、112-44a、および112-53aとして表示ユニット164上に表示することができる。いくつかの実施形態では、内側の長方形112-61a~112-61dの大きさおよび配置は、以下に詳述する最小実行可能領域(MVR)と一致することができる。シンボロジー112-31a、112-44a、および112-53aが存在することは、パッケージ112-31、112-44、および112-53のSIが、登録レコード172を有さないおよび/または登録レコード172と一致しないことを示すことができる。そのような例では、画像認識アルゴリズム(複数可)(たとえば、エッジ認識アルゴリズム(複数可))を利用して、コーナーを形成する少なくとも2つの明瞭エッジの存在を判定することができる。
【0033】
[0057] 図4Dに、本技術のいくつかの実施形態による不明瞭エッジおよびMVRの例を示す。図4Dに、未登録/不一致パッケージについての、コーナー112-31c、112-44c、および112-53cをそれぞれ形成する、2つの明瞭エッジ112-31b、112-44b、および112-53b(たとえば、スタックの外側のエッジを形成する/と一致するエッジ)を示す。また、2つの不明瞭エッジ112-31d、112-44d、および112-53dが、それぞれコーナー112-31e、112-44e、および112-53eを形成することがPU150によって識別/推定されてもよい。いくつかの実施形態では、図4Aのパッケージ112-31の2つの不明瞭エッジ112-31dは、それぞれ端部112-31baおよび112-31bbから所定の角度で(たとえば、垂直に)、コーナー112-31eにて交差するまで伸びていると仮定して、処理することができる。同様に、パッケージ112-44の2つの不明瞭エッジ112-44dは、それぞれ端部112-44baおよび112-44bbから所定の角度で(たとえば、垂直に)、コーナー112-44eにて交差するまで伸びていると仮定して、処理することができる。同じく、パッケージ112-53の2つの不明瞭エッジ112-53dは、それぞれ端部112-53baおよび112-53bbから所定の角度で(たとえば、垂直に)、コーナー112-53eにて交差するまで伸びていると仮定して、処理することができる。いくつかの実施形態では、ロボットシステム100は、対応するパッケージに関連する深度測定値、位置/場所、決定された姿勢、またはこれらの組み合わせに応じて所定の角度を選択または調整することができる。
【0034】
[0058] 加えて、例示的なMVR112-31f、112-44f、および112-53fを図4Dに示す。いくつかの実施形態では、パッケージ112の未登録インスタンスごとにMVRを計算してもよく、これを使用して図1Bの登録レコード172を生成することができる。ロボットシステム100は、登録レコード172を、それぞれのMVRに応じて生成することができる。MVR112-31fは、その辺が2つの明瞭エッジ112-31bまたはその一部と同一線上になるように計算することができる。換言すれば、MVR112-31fの大きさは、パッケージ112-31の表面より小さくすることができる。いくつかの実施形態では、MVR112-31fは、図2Bに示すグリッパシステム146の大きさ、またはパッケージ112を持ち上げる場合の、把持し、安全に把持を持続する能力に対応する他の特徴に応じてサイズ設定することができる。MVRを処理する際、ロボットシステム100は、パッケージ112についてのデフォルトCoMを想定し使用することができる。したがって、デフォルトCoMおよび計算された大きさを使用して、ロボットシステム100は、パッケージ112の関連する操作(たとえば、把持する、持ち上げる、および/または運ぶ)における誤り/失敗を防ぐMVR112-31fを計算することができる。たとえば、MVRが小さすぎる場合、グリッパシステム146は誤って配置される場合があり、パッケージ112が持ち上げられた場合に、グリッパシステム146による把持の持続が可能ではない場合がある。いくつかの実施形態では、MVR112-31fは、画像認識アルゴリズム(複数可)によって決定されるSI内に見られる表面デザインおよび/またはマーキングの一部である直線を除外するようにサイズ設定することができる。いくつかの実施形態では、MVR112-31fは、より低い信頼基準に対応するエッジを除外するようにサイズ設定することができる。前述の議論はMVR112-31fに関心が寄せられているが、MVR112-31fを計算するための機能は、本明細書に記載の任意のMVRに当てはまることに留意されたい。
【0035】
[0059] 図4Eに、本技術のいくつかの実施形態による登録済みおよび未登録パッケージの例示的なシンボロジーの第2のセットを示す。図4Eは、図4Cに示すスタックから1つまたは複数のパッケージが持ち去られた/運ばれた後のパッケージのスタックの状態を表し得る。図4Cのシンボロジー112-33aが無いことは、図1Aのデパレタイズ台110から登録済みパッケージ112-33が把持され、持ち上げられ、運ばれたことを示し得る。また、ロボットシステム100は、シンボロジー112-32aを表示ユニット164上に生成/表示して、図4Bに示すパッケージ112-32のコーナーを形成する2つの明瞭エッジ(たとえば、現在露出しており、いかなる当接するエッジ/パッケージにも隣接しなくなったエッジ)の新たな認識を示すことができる。
【0036】
[0060] 図4Fに、本技術のいくつかの実施形態による不明瞭エッジおよびMVRの第2の例を示す。図4Fに、上述の1つまたは複数の処理を使用して認識された、コーナー112-32cを形成する明瞭エッジ112-32bを示す。この認識から、2つの不明瞭エッジ112-32dおよび対応するコーナー112-32eが、ロボットシステム100(たとえば、PU150)によって上述のように推定されてもよく、MVR112-32fが上述のように計算されてもよい。
【0037】
[0061] 図4Gに、本技術のいくつかの実施形態による未登録パッケージの例示的なシンボロジーの第3のセットを示す。図4Gは、図4Eに示すスタックから1つまたは複数のパッケージが持ち去られた/運ばれた後のパッケージのスタックの状態を表し得る。図4Cおよび図4Eのシンボロジー112-43aおよび112-51aが無いことは、図1Aのデパレタイズ台110から登録済みパッケージ112-43および112-51が把持され、持ち上げられ、運ばれたことを示し得る。図4Bのパッケージ112-52の左右のエッジがここで認識されてもよいが(たとえば、露出し、当接するエッジ/パッケージに隣接しなくなったため)、これらのエッジは互いに平行であり、交差してコーナーを形成することはないので、パッケージ112-52に対応するシンボロジーの追加は、いくつかの実施形態では表示ユニット164によって表示されなくてもよいことに留意されたい。
【0038】
[0062] 図4Hに、本技術のいくつかの実施形態によるMVR(たとえば、図4DのMVR112-44f)上へのグリッパシステム(たとえば、グリッパシステム146)の配置例を示す。図1Aおよび図1Bのエンドエフェクタ140を構成するF-Tセンサ142およびグリッパシステム146は、図1の画像システム160のセンサ162の視野から図4Dの不明瞭エッジ112-44dを遮蔽せずに、グリッパシステム146がMVR112-44f上に配置されるように位置調整されてもよい。次いで、パッケージ112-44を把持し、持ち上げ検査距離だけ垂直に上昇位置まで持ち上げることができる。たとえば、持ち上げ検査距離は、図1Bおよび図2AのF-Tセンサ142がパッケージ112-44の1つまたは複数の軸の力ならびに/あるいは1つまたは複数の軸のモーメントの測定値をキャプチャするのに十分な距離を表すことができる。たとえば、持ち上げ検査距離は、ゼロミリメートルより長い垂直距離またはz軸に沿った距離を表すことができる。具体例としては、持ち上げ検査距離は50ミリメートルを表すことができる。
【0039】
[0063] デカルト座標系を基準とするいくつかの実施形態では、1つまたは複数の軸に沿った力測定値(複数可)(すなわち、F(x軸)、F(y軸)、および/またはF(z軸))、および/または1つまたは複数の軸まわりのモーメント測定値(複数可)(すなわち、M(x軸)、M(y軸)、および/またはM(z軸))がF-Tセンサ142を介してキャプチャされてもよい。CoM計算アルゴリズムを適用することによって、パッケージの重さが力測定値(複数可)に応じて計算されてもよく、パッケージのCoMが力測定値(複数可)およびモーメント測定値(複数可)に応じて計算されてもよい。これらの測定値は、パッケージ112-44について生成される図1Bの登録レコード172の新たなインスタンスに追加することができる。いくつかの実施形態では、計算されたCoMがMVR112-44fに入らない場合、パッケージ112-44はグリッパシステム146から離されてもよい。次いで、グリッパシステム146は計算されたCoM上に位置付けられてもよく、そのときパッケージ112-44は安全に把持され、同様に上昇位置まで持ち上げられてもよい。
【0040】
[0064] 上昇位置にある間、ロボットシステムは、持ち上げられたパッケージを再撮像して、以前は不明瞭であったエッジを明瞭にすることができる。112-44の部分的SI(すなわち、グリッパシステム146によって遮蔽されないSI全体の中の一部)を表す第2の画像データを、図1Aおよび図1Bの画像システム160のセンサ162によってキャプチャして、図4Dの不明瞭エッジ112-44dの明瞭エッジ112-44gを取得してもよい。いくつかの実施形態では、第1の点群データから構成される第1の画像データ内に表される深度情報を、第2の点群データから構成される第2の画像データ内に表される深度情報と比較して、明瞭エッジおよび2-D測定値を決定し得る深度情報の変化を決定してもよい。取得されると、登録可能SIを表す第3の画像データが、第1の画像データのSIおよび第2の画像データの明瞭エッジから生成されてもよい。第2の画像データから決定される2-D測定値および第3の画像データの登録可能SIは、パッケージ112-44について生成される登録レコード172にここで追加されてもよい。さらなる例では、第3の画像データは、図1Aのロボットシステム100についてのテンプレート画像データを表すことができる。ここから、パッケージ112-44の未登録インスタンスについての登録可能SI、2-D測定値、ならびに重さおよびCoMの測定値から構成される登録レコード172の新たなインスタンスが、ここで図1BのRDS170に記憶されてもよい。ロボットシステム100は、パッケージ112のSIをテンプレート画像データと比較することによって、パッケージ112が未登録であるか否かを判定することができる。
【0041】
[0065] 図4Iに、本技術のいくつかの実施形態による未登録パッケージの例示的なシンボロジーの第4のセットを示す。図4Iは、図4Gに示すスタックから1つまたは複数のパッケージが持ち去られた/運ばれた後のパッケージのスタックの状態を表し得る。図4C図4E、および図4Gのシンボロジー112-44aが無いことは、登録レコード172の新たなインスタンスが確立された後に、デパレタイズ台110からパッケージ112-44の以前は未登録であったインスタンスが運ばれたことを示し得る。また、ロボットシステム100は、シンボロジー112-54aを表示ユニット164上に生成/表示して、図4Bに示すパッケージ112-54のコーナーを形成する2つの明瞭エッジ(たとえば、以前隣接していたパッケージ(複数可)を持ち去った/運んだ後に新たに露出したエッジ)の新たな認識を示すことができる。
【0042】
[0066] 図4Jに、新たに処理されるパッケージ(たとえば、パッケージ112-54)についての不明瞭エッジおよびMVRの例を示す。図4Jに、上述の1つまたは複数の処理を使用して認識された、コーナー112-54cを形成する明瞭エッジ112-54bを示す。この認識から、2つの不明瞭エッジ112-54dおよび対応するコーナー112-54eが、ロボットシステム100(たとえば、PU150)によって上述のように推定されてもよく、MVR112-54fが上述のように計算されてもよい。
【0043】
[0067] 図4Kに、本技術のいくつかの実施形態による図4FのMVR(たとえば、MVR112-32f)上へのグリッパシステム(たとえば、グリッパシステム146)の配置例を示す。図1Aおよび図1Bのエンドエフェクタ140を構成するF-Tセンサ142およびグリッパシステム146は、図1の画像システム160のセンサ162の視野から不明瞭エッジ112-32dを遮蔽せずに、グリッパシステム146がMVR112-32f上に配置されるように位置調整されてもよい。次いで、パッケージ112-32が上述のように上昇位置にある状態で、重さおよびCoM測定値が決定され、パッケージ112-32について生成される登録レコード172の新たなインスタンスに追加されてもよく、パッケージ112-32の部分的SIを表す第2の画像データがキャプチャされてもよく、それに基づいて2-D測定値および明瞭エッジ112-32gが決定されてもよく、登録可能SIを表す第3の画像データが、第1の画像データのSIおよび第2の画像データの明瞭エッジから生成されてもよい。ここから、パッケージ112-32の未登録インスタンスについての登録可能SI、2-D測定値、ならびに重さおよびCoMの測定値から構成される登録レコード172の新たなインスタンスが、ここで図1BのRDS170に記憶されてもよい。
【0044】
[0068] 図4Lに、本技術のいくつかの実施形態による未登録パッケージの例示的なシンボロジーの第5のセットを示す。図4Lは、図4Iに示すスタックから1つまたは複数のパッケージが持ち去られた/運ばれた後のパッケージのスタックの状態を表し得る。図4E図4G、および図4Iのシンボロジー112-32aが無いことは、登録レコード172の新たなインスタンスが確立された後に、デパレタイズ台110からパッケージ112-32の以前は未登録であったインスタンスが運ばれたことを示し得る。また、ロボットシステム100は、シンボロジー112-52aを表示ユニット164上に生成/表示して、図4Bに示すパッケージ112-52のコーナーを形成する2つの明瞭エッジ(たとえば、以前隣接していたパッケージ(複数可)を持ち去った/運んだ後に新たに露出したエッジ)の新たな認識を示すことができる。
【0045】
[0069] 図4Mに、新たに処理されるパッケージ(たとえば、パッケージ112-52)についての不明瞭エッジおよびMVRの例を示す。図4Mに、上述の1つまたは複数の処理を使用して認識された、コーナー112-52cを形成する明瞭エッジ112-52bを示す。この認識から、2つの不明瞭エッジ112-52dおよび対応するコーナー112-52eが、ロボットシステム100(たとえば、PU150)によって上述のように推定されてもよく、MVR112-52fが上述のように計算されてもよい。
【0046】
[0070] 図4Nに、本技術のいくつかの実施形態による図4MのMVR(たとえば、MVR112-52f)上へのグリッパシステム(たとえば、グリッパシステム146)の配置例を示す。図1Aおよび図1Bのエンドエフェクタ140を構成するF-Tセンサ142およびグリッパシステム146は、図1の画像システム160のセンサ162の視野から不明瞭エッジ112-52dを遮蔽せずに、グリッパシステム146がMVR112-52f上に配置されるように位置調整されてもよい。次いで、パッケージ112-52が上述のように上昇位置にある状態で、重さおよびCoM測定値が決定され、パッケージ112-52について生成される登録レコード172の新たなインスタンスに追加されてもよく、パッケージ112-52の部分的SIを表す第2の画像データがキャプチャされてもよく、それに基づいて2-D測定値および明瞭エッジ112-52gが決定されてもよく、登録可能SIを表す第3の画像データが第1の画像データのSIおよび第2の画像データの明瞭エッジから生成されてもよい。ここから、パッケージ112-52の未登録インスタンスについての登録可能SI、2-D測定値、ならびに重さおよびCoMの測定値から構成される登録レコード172の新たなインスタンスが、ここで図1BのRDS170に記憶されてもよい。
【0047】
[0071] 図4Oに、本技術のいくつかの実施形態による図4JのMVR(たとえば、MVR112-54f)上へのグリッパシステム(たとえば、グリッパシステム146)の配置例を示す。図1Aおよび図1Bのエンドエフェクタ140を構成するF-Tセンサ142およびグリッパシステム146は、図1の画像システム160のセンサ162の視野から不明瞭エッジ112-54dを遮蔽せずに、グリッパシステム146がMVR112-54f上に配置されるように位置調整されてもよい。次いで、パッケージ112-54が上述のように上昇位置にある状態で、重さおよびCoM測定値が決定され、パッケージ112-54について生成される登録レコード172の新たなインスタンスに追加されてもよく、パッケージ112-54の部分的SIを表す第2の画像データがキャプチャされてもよく、それに基づいて2-D測定値および明瞭エッジ112-54gが決定されてもよく、登録可能SIを表す第3の画像データが第1の画像データのSIおよび第2の画像データの明瞭エッジから生成されてもよい。ここから、パッケージ112-54の未登録インスタンスについての登録可能SI、2-D測定値、ならびに重さおよびCoMの測定値から構成される登録レコード172の新たなインスタンスが、ここで図1BのRDS170に記憶されてもよい。
【0048】
[0072] 図4Pに、本技術のいくつかの実施形態による図4Dの第2のMVR(たとえば、MVR112-31f)上へのグリッパシステム(たとえば、グリッパシステム146)の配置例を示す。図1Aおよび図1Bのエンドエフェクタ140を構成するF-Tセンサ142およびグリッパシステム146は、図1の画像システム160のセンサ162の視野から不明瞭エッジ112-31dを遮蔽せずに、グリッパシステム146がMVR112-31f上に配置されるように位置調整されてもよい。次いで、パッケージ112-31が上述のように上昇位置にある状態で、重さおよびCoM測定値が決定され、パッケージ112-31について生成される登録レコード172の新たなインスタンスに追加されてもよく、パッケージ112-31の部分的SIを表す第2の画像データがキャプチャされてもよく、それに基づいて2-D測定値および明瞭エッジ112-31gが決定されてもよく、登録可能SIを表す第3の画像データが第1の画像データのSIおよび第2の画像データの明瞭エッジから生成されてもよい。ここから、パッケージ112-31の未登録インスタンスについての登録可能SI、2-D測定値、ならびに重さおよびCoMの測定値から構成される登録レコード172の新たなインスタンスが、ここで図1BのRDS170に記憶されてもよい。
【0049】
[0073] 図4Qに、本技術のいくつかの実施形態による図4Dの第3のMVR(たとえば、MVR112-53)上へのグリッパシステム(たとえば、グリッパシステム146)の配置例を示す。図1Aおよび図1Bのエンドエフェクタ140を構成するF-Tセンサ142およびグリッパシステム146は、図1の画像システム160のセンサ162の視野から不明瞭エッジ112-53dを遮蔽せずに、グリッパシステム146がMVR112-53f上に配置されるように位置調整されてもよい。次いで、パッケージ112-53が上述のように上昇位置にある状態で、重さおよびCoM測定値が決定され、パッケージ112-53について生成される登録レコード172の新たなインスタンスに追加されてもよく、パッケージ112-53の部分的SIを表す第2の画像データがキャプチャされてもよく、それに基づいて2-D測定値および明瞭エッジ112-53gが決定されてもよく、登録可能SIを表す第3の画像データが第1の画像データのSIおよび第2の画像データの明瞭エッジから生成されてもよい。ここから、パッケージ112-53の未登録インスタンスについての登録可能SI、2-D測定値、ならびに重さおよびCoMの測定値から構成される登録レコード172の新たなインスタンスが、ここで図1BのRDS170に記憶されてもよい。
【0050】
[0074] 図5に、図1Aのロボットシステム100を動作させるための例示的な方法についての制御フロー200を示す。制御フロー200は、パッケージハンドリング作業中に未登録パッケージ112を登録することを含むことができ、ここで、図1BのPU150は、制御フロー200に具現化されるモジュール(たとえば、回路、機能、コンピュータ/デバイス実行可能命令、またはこれらの組み合わせ)に対応する命令によってプログラムまたは構成されてもよい。いくつかの実施形態では、PU150は、図1Bのロボットアームシステム130、図1Bのエンドエフェクタ140、図1Bの画像システム160、図1BのRDS170、スタンドアロンコントローラ、および/またはタスクを実行するのに適した他の任意のシステムにおいて見られるプロセッサまたはプロセッサの組み合わせであってもよい。また、PU150は、たとえば、限定はしないが、PU130の双方向データ通信、すなわち、データの受信および提供を容易にするための1つまたは複数の入力インターフェースを有するプリント基板カードなどのモジュールのプロセッサであってもよい。制御フロー200において具現化される以下のモジュールの実現に必要な場合、データを受信することは、データを取得することおよび/または取り出すことと同義および/または交換可能であり、データを提供することは、データを利用可能にすることまたは供給することと同義および/または交換可能である。
【0051】
[0075] ロボットシステム100は、キャプチャモジュール202を含むことができる。キャプチャモジュール202は、SIを第1の画像データとしてキャプチャする。たとえば、キャプチャモジュール202は、図1Bのセンサ(複数可)162によって第1の画像データをキャプチャすることができる。より具体的には、例として、キャプチャモジュール202は、画像システム160を動作させ、および/または画像システム160と相互作用して、図3Bおよび/または図4Bに示すスタックの上面図に対応する撮像データをキャプチャする、および/または画像システム160からこれを受信することができる。キャプチャモジュール202は、その結果得られた撮像データを処理して、図1Aのパッケージ112の上面を第1の画像データとしてキャプチャすることができる。いくつかの実施形態では、キャプチャモジュール202は、1つまたは複数の画像認識アルゴリズム(たとえば、コンテキスト型画像分類、パターン認識、および/またはエッジ検出)を利用して、撮像データを分析し、その中のパッケージ112のエッジおよび/または表面を識別することができる。処理結果(たとえば、識別されたエッジおよび/または連続面)に基づいて、キャプチャモジュール202は、撮像データの一部(たとえば、画素値および/または深度読取値のセット)を、個々のパッケージの上面を表すものとして識別することができる。キャプチャモジュール202は、個々のパッケージのうちの1つまたは複数の上面(複数可)に対応する第1の画像データを領域モジュール204に送信することができる。
【0052】
[0076] ロボットシステム100は領域モジュール204を含むことができ、領域モジュール204はキャプチャモジュール202に結合することができる。領域モジュール204はMVRを計算する。たとえば、領域モジュール204は、パッケージ112、図1Bの登録レコード172、またはこれらの組み合わせに基づいてMVRを計算することができる。
【0053】
[0077] いくつかの実施形態では、キャプチャモジュール202は、受信した画像データ(たとえば、第1の画像データ)を登録レコード172と比較することができる。たとえば、キャプチャモジュール202は、第1の画像データおよび/またはその任意の処理結果(たとえば、画像データから得られた寸法/大きさ推定値および/または視覚的マーキング)を、既知のまたは以前に遭遇したパッケージの既存の記述/テンプレートと比較することができる。その比較に基づいて、領域モジュール204は、第1の画像データが、登録レコード172に記憶された既知のまたは以前に遭遇したパッケージの対応する情報と一致するか否かを判定することができる。
【0054】
[0078] 領域モジュール204はMVRをいくつかの方法で計算することができ、たとえば、パッケージ112が登録レコード172として登録されているか否か(たとえば、第1の画像データと登録レコード172との比較が一致を返すか否か)に基づいてMVRを計算する。より具体的には、例として、第1の画像データが登録レコード172のうちの1つと一致する場合(たとえば、パッケージ112が登録レコード172のうちの1つまたは複数として登録されている場合)、領域モジュール204はMVRを計算しないようにすることができる。反対に、第1の画像データが登録レコード172のうちのいずれにも一致しない場合、領域モジュール204はMVRを計算することができる。たとえば、キャプチャされた第1の画像データは、パッケージ112の未登録インスタンスの上面を表すことができる。パッケージ112は未登録であるので、パッケージ112のエッジのいくつかのインスタンスは不明瞭であり得る。より具体的には、例として、図4Bの未登録パッケージ112-31は、図4Dの不明瞭エッジ112-31dを含み得る。領域モジュール204は、明瞭および/または不明瞭エッジの組を識別することができる。いくつかの実施形態では、領域モジュール204は、明瞭エッジ(たとえば、スタックの周辺エッジを形成し/と一致し、他のいかなるパッケージにも当接しないエッジ)を識別し、それらを基準として使用することができる。したがって、領域モジュール204は、明瞭エッジを使用して、上述のように(たとえば、グリッパシステム146の大きさ/特徴に応じて)MVRを決定することができる。領域モジュール204は、第1の画像データ内にキャプチャされたパッケージ112の表面の面積より小さいMVRを決定することができる。
【0055】
[0079] 具体例としては、パッケージ112-31の第1の画像データは、図4Dの2つの明瞭エッジ112-31bを含むことができる。領域モジュール204は、2つの明瞭エッジ112-31bが2つの不明瞭エッジ112-31dと交差するように、2つの明瞭エッジ112-31bおよび2つの不明瞭エッジ112-31dを延長することによって、パッケージ112-31の表面エリアの境界線を予測することができる。領域モジュール204は、MVRを表面エリアの境界線より小さくなるように決定することによって、表面エリアの境界線に基づいてMVRを計算することができる。いくつかの実施形態では、領域モジュール204は、(たとえば、画像データに基づいて)互いに交差して第1のコーナーを形成するパッケージ表面のエッジのペア(たとえば、明瞭および/または不明瞭エッジ)を識別することができる。領域モジュール204はエッジのペアを使用してMVRを決定することができ、たとえば、エッジのペアに垂直であって互いに近づく線のペアを延長して不明瞭エッジを推定することによって行う。したがって、領域モジュール204は、対向するコーナーを、不明瞭な/延長された線対のペアの交点として推定することができる。領域モジュール204は、グリッパシステム146の1つまたは複数の大きさ/特徴に対応する第1のエッジのペア上の点から不明瞭/垂直な線を延長することができる。
【0056】
[0080] さらなる例では、パッケージ112のSI上に見えるデザインおよび/またはマーキングは、直線を含む場合がある。直線は、パッケージ112の表面のエッジと間違われる場合がある。エッジの潜在的な誤識別を減らすために、領域モジュール204は、直線を有する表面の一部を除外したMVRを計算することができる。より具体的には、例として、領域モジュール204は、直線によって構成される表面エリアの境界線よりも小さいMVRを計算することができる。
【0057】
[0081] 異なる例では、領域モジュール204は、パッケージ112の位置に基づいてMVRを計算することができる。たとえば、パレットは、図1Aのデパレタイズ台110上に図3A図4Bに示すように2つ以上のパッケージ112(登録済みおよび/または未登録のもの)を含む場合がある。パッケージのグループから、領域モジュール204は、パッケージ112のあるインスタンスの、パッケージ112の他のインスタンスに対する位置に基づいて、MVRを計算することができる。先述のように、パッケージ112の登録済みインスタンスのエッジは全て、たとえば、パッケージの露出面が登録済みデータと肯定的に一致することに基づいて、また、登録済みデータに対応する以前に記憶された大きさ/寸法の測定値を使用して、既知であり得る。
【0058】
[0082] 反対に、パッケージ112の未登録インスタンスのエッジの一部は、たとえば、パッケージ112-52が未登録であるために、未知であり得る。さらに、未知のパッケージ(たとえば、パッケージ112-52)は、他のパッケージ、たとえば、図4Bに示すパッケージ112-31、112-32、112-33、112-43、112-44、112-51、112-53、および/または112-54によって囲まれ得る。112-52のエッジは未知であるので、112-52のSIは、他のパッケージ112の表面画像と重なり得る。
【0059】
[0083] いくつかの例では、囲んでいるパッケージのうちの1つまたは複数(たとえば、パッケージ112-32)も、登録レコード172によれば未登録/不一致である場合があり、これにより、パッケージ112-52の残りの/未知のエッジについてさらなる不確定性が導入され得る。明瞭な境界線がパッケージ112-52とパッケージ112-32との間に確立されていない場合、パッケージ112-52のSIおよびパッケージ112-32のSIは互いに重なり得る。
【0060】
[0084] 一方、パッケージ112-31も未登録/不一致である場合があるが、センサ162は、デパレタイズ台110および/または他のパッケージに対するパッケージ112-31の一意の位置/状態を検出することができる。たとえば、領域モジュール204は、パッケージ112-31の少なくとも1つのエッジが他のパッケージ112と隣接/当接しない場合に、パッケージ112-31が所定の位置/状態を満たすと決定することができる。より具体的には、例として、図4Bの2つのエッジ112-31bおよび図4Bのコーナー112-31cは、第1の画像において明瞭に見え、および/または、囲んでいる/隣接する水平位置とは異なる(たとえば、上方に配置された)深度測定値(たとえば、連続した面のもの)に対応し得る。また、たとえば、領域モジュール204は、パッケージ112-31および/またはその外側のエッジがデパレタイズ台110のコーナーおよび/または外側の部分に対応すると決定することができる。
【0061】
[0085] したがって、領域モジュール204は、パッケージ112のエッジ(複数可)、コーナー、またはこれらの組み合わせの視認性に基づいて、パッケージ112の未登録インスタンスがデパレタイズ台110の外周またはその付近にあると決定することができる。いくつかの実施形態では、領域モジュール204は、パッケージ112の未登録インスタンスが、1つまたは複数の水平方向に沿って露出している(たとえば、以前に隣接していたパッケージを持ち去ったことによって、他のパッケージに隣接していない)とさらに決定することができる。領域モジュール204は、露出しているおよび/または他の未登録パッケージ(たとえば、スタック/レイヤの水平方向の内側部分に位置する未登録パッケージ112-52 112)に対して外側にあるパッケージ112の未登録インスタンスについてのMVRの計算を優先することができる。
【0062】
[0086] いくつかの実施形態では、領域モジュール204は、明瞭に見えるおよび/または露出しているエッジの数が多いパッケージについてのMVRの計算を、そのようなエッジの数が少ないパッケージよりも優先することができる。したがって、ロボットシステム100は、他のパッケージ112と重なるSIを有するパッケージを把持するリスクを低減し、対応する把持/持ち上げの失敗を減らすことができる。図4Bに示す例では、領域モジュール204は、パッケージ112-32、112-54、112-52の前に、パッケージ112-31、112-53、および/または112-44に対してMVRを決定することができる。領域モジュール204はMVRを持ち上げモジュール206に送信することができる。
【0063】
[0087] 領域モジュール204は、2つの不明瞭コーナーに基づいてMVRを計算することができる。より具体的には、例として、2つの不明瞭コーナーは、少なくとも3つの不明瞭エッジ、2つの明瞭エッジおよび1つの不明瞭エッジ、または2つの不明瞭エッジおよび1つの明瞭エッジの組み合わせから構成することができる。上述のように、領域モジュール204は、各エッジを延長して他のエッジと交差させてコーナーを生成することによって、パッケージ112の表面の境界線を予測することができる。領域モジュール204は、3つのエッジ/2つのコーナーによって生成される表面エリアの境界線に基づいて、2つの不明瞭コーナーによって生成される境界線よりも小さくなるようにMVRを決定することによって、MVRを計算することができる。
【0064】
[0088] ロボットシステム100がMVRを動的かつリアルタイムに計算することによって、パッケージ112の未登録インスタンスを把持する際の精度および性能が向上する。MVRを計算することによって、ロボットシステム100は、図4Hのグリッパシステム146がパッケージ112を安全に把持することができるパッケージ112の表面エリア(たとえば、対応するエッジ/境界線)を推定することができる。結果として、ロボットシステム100は、ワークフローを停止させずにロボットシステム100に未登録のパッケージ112を移動させることによって、パッケージ112をデパレタイズするためのワークフローの効率を向上させることができる。
【0065】
[0089] ロボットシステム100は持ち上げモジュール206を含むことができ、持ち上げモジュール206は領域モジュール204に結合することができる。持ち上げモジュール206は、図1Aのロボットアーム132がパッケージ112を持ち上げるためのコマンドを(たとえば、通信するおよび/または実行することによって)実施する。たとえば、持ち上げモジュール206は、上述のように、パッケージ112の未登録インスタンスを持ち上げ検査距離だけ持ち上げるようにロボットアーム132を動作させることができる。より具体的には、例として、ロボットアーム132は、不明瞭なエッジのうちの少なくとも1つがセンサ162から見える場合に、グリッパシステム146によってパッケージ112のMVR内で把持することによって、パッケージ112を持ち上げることができる。換言すれば、未登録/未識別パッケージについて、持ち上げモジュール206は、MVR上に直接/MVRの上方に/MVRに接するように、グリッパシステム146を配置するようにロボットアーム132を動作させることができる。結果として、持ち上げモジュール206は、1つまたは複数の不明瞭エッジがグリッパシステム146によって覆われず、センサ162に対して露出され/センサ162から見えるようにしながら、対応するパッケージを把持して持ち上げることができる。
【0066】
[0090] 持ち上げモジュール206はいくつかの方法で動作することができる。たとえば、持ち上げモジュール206は、不明瞭エッジがセンサ162から見える場合にロボットアーム132がMVR内でパッケージ112を把持するための持ち上げコマンドを実行することができる。具体例としては、図4Dに示すように、ロボットアーム132は、図4Dの112-44f内で図4Dのパッケージ112-44を持ち上げることができる。パッケージ112-44のSIは、2つの明瞭エッジ112-44bおよびコーナー112-44cを含むことができる。パッケージ112-44のSIは、2つの不明瞭エッジ112-44dも含むことができる。図4Hに示すように、ロボットアーム132は、2つの不明瞭エッジ112-44bがセンサ162から見える場合にパッケージ112-44を把持することによって、パッケージ112-44を持ち上げることができる。MVRを利用せずに、グリッパシステム146は、エッジがセンサ162によって検出できなくなる位置においてパッケージを把持してもよい。
【0067】
[0091] 異なる例では、持ち上げモジュール206はパッケージ112の重さを決定することができる。より具体的には、例として、持ち上げモジュール206は、図1BのF-Tセンサ142を使用して、パッケージ112の未登録インスタンスの重さを決定することができる。持ち上げモジュール206はパッケージ112の重さを登録モジュール212に送信することができる。
【0068】
[0092] いくつかの実施形態では、キャプチャモジュール202はさらに、MVR上で把持して持ち上げた後におよび/または持ち上げ中に、パッケージ112の未登録インスタンスのSIを第2の画像データとしてキャプチャすることができる。より具体的には、例として、キャプチャモジュール202は、図4Hの現在見えている2つの明瞭エッジ112-44gを含むように、パッケージ112が持ち上げ検査距離だけ持ち上げられたことに基づいて、第2の画像データをキャプチャすることができる。換言すれば、持ち上げモジュール206は、パッケージ112を持ち上げることによって、最初は不明瞭であったエッジの視認性および/または明瞭性を向上させることができる。したがって、キャプチャモジュール202は、以前は不明瞭であったエッジを明瞭に識別/表示する、(たとえば、持ち上げられた状態/位置のパッケージ112についての)第2の画像データをキャプチャすることができる。キャプチャモジュール202は、第2の画像データを抽出モジュール208に送信することができる。
【0069】
[0093] ロボットシステム100は抽出モジュール208を含むことができ、抽出モジュール208は持ち上げモジュール206に結合することができる。抽出モジュール208は第3の画像データを抽出する。たとえば、抽出モジュール208は、第1の画像データ、第2の画像データ、またはこれらの組み合わせに基づいて第3の画像データを抽出することができる。
【0070】
[0094] 抽出モジュール208はいくつかの方法で第3の画像データを抽出することができる。たとえば、抽出モジュール208は、第1の画像データと第2の画像データとの比較に基づいて、画像差分を決定することができる。画像差分は、パッケージ112の未登録インスタンスの同一のインスタンスの第1の画像データと第2の画像データとの差分を表すことができる。
【0071】
[0095] より具体的には、例として、第1の画像データは、パッケージ112のデザインおよび/またはマーキングを有するSIを含むことができる。しかしながら、パッケージ112は未登録であるので、パッケージ112のエッジは不明瞭であるか、または明確に決定できない場合がある。したがって、第1の画像データは、不明瞭であるかまたは他のパッケージ112のSIと重なっているエッジを有するパッケージ112のSIを含むことができる。さらなる例では、第2の画像データは、持ち上げ検査距離だけ持ち上げられた後のパッケージ112のSIを含むことができる。より具体的には、例として、第2の画像データは、パッケージ112が持ち上げられた後に明瞭エッジ(たとえば、エッジ112-44g)になった、以前は不明瞭であったエッジ(たとえば、エッジ112-44b)を有するパッケージ112のSIを含むことができる。パッケージ112が持ち上げられた後、パッケージ112は他の隣接するパッケージ112から(たとえば、より高い高さに)分離されるので、不明瞭エッジは明瞭エッジになり得る。センサ162からの距離または深度は、持ち上げられているパッケージ112と、隣接するパッケージ112との間で異なり得るので、センサ162は異なるパッケージ112同士を区別することができる。
【0072】
[0096] 抽出モジュール208は、第1の画像データと第2の画像データとの画像差分を組み合わせることに基づいて、第3の画像データを抽出することができる。たとえば、パッケージ112-44の第1の画像データは、デザインおよび/またはマーキング、2つの明瞭エッジ112-44b、コーナー112-44c、またはこれらの組み合わせを含むことができる。さらなる例では、パッケージ112-44の第2の画像データは2つの明瞭エッジ12-44gを含むことができる。抽出モジュール208は、デザインおよび/またはマーキング、2つの明瞭エッジ112-44b、コーナー112-44c、2つの明瞭エッジ112-44g、またはこれらの組み合わせを含めることによって、パッケージ112-44の第3の画像データを抽出することができる。
【0073】
[0097] さらなる例では、抽出モジュール208は、第3の画像データに基づいて、パッケージ112の長さ、幅、またはこれらの組み合わせを決定することができる。より具体的には、例として、明瞭エッジに基づいて、抽出モジュール208は、長さ、幅、またはこれらの組み合わせを含む寸法を決定することができる。抽出モジュール208は、第3の画像データ、長さ、幅、またはこれらの組み合わせを登録モジュール212に送信することができる。
【0074】
[0098] 第3の画像データを動的かつリアルタイムに抽出することによって、パッケージ112の未登録インスタンスを識別し把持するためのロボットシステム100の性能および精度が向上する。第3の画像データを抽出することによって、ロボットシステム100は、パッケージ112のエッジを識別して他のパッケージ112と区別することができる。パッケージ112の境界線/エッジを明瞭に識別することによって、ロボットシステム100は、グリッパシステム146をパッケージ112上に効率的に配置して、パッケージ112を安全に把持し移動させることができる。結果として、ロボットシステム100は、ロボットシステム100に未登録のパッケージ112の移動を継続することによって、パッケージ112をデパレタイズするためのワークフローの効率を向上させることができる。
【0075】
[0099] 例示の目的で、持ち上げモジュール206は、パッケージ112を持ち上げるためのコマンドを実行するように記載しているが、持ち上げモジュール206は異なって動作することができる。たとえば、持ち上げモジュール206は、パッケージ112を持ち上げることに基づいてCoMを決定することができる。より具体的には、例として、持ち上げモジュール206は、パッケージ112がグリッパシステム146によって把持され持ち上げられるMVR内の位置がパッケージ112のCoM上か否かを判定することができる。さらなる例では、持ち上げモジュール206は、MVRとして表されるxy軸内にCoMがあるか否かを判定することができる。
【0076】
[0100] 持ち上げモジュール206はいくつかの方法でCoMを決定することができる。たとえば、持ち上げモジュール206は、上述のF-Tセンサ142によってCoMを決定することができる。さらなる例では、持ち上げモジュール206は、F-Tセンサ142、CoMアルゴリズム、またはこれらの組み合わせによって、MVRとして表される表面エリアの下にCoMがあるか否かを判定することができる。
【0077】
[0101] F-Tセンサ142およびCoMアルゴリズムを使用して、持ち上げモジュール206は、パッケージ112においてグリッパと接触するまたはグリッパによって覆われるMVR内の位置/部分がCoMと一致するまたはCoMを含むか否かを判定することもできる。さらなる例では、持ち上げモジュール206は、元の把持位置がパッケージ112のCoMの上でない場合、グリッパシステム146がパッケージ112を把持するためのMVR内の新たな位置を決定することができる。より具体的には、例として、持ち上げモジュール206は、上述のCoMアルゴリズムを使用して、元の把持位置に対する新たな把持位置がCoMの上にあると決定することができる。たとえば、持ち上げモジュール206は、測定されたトルクおよび/またはその方向に基づいて、ベクトル方向を計算することができる。トルクに基づいて、持ち上げモジュール206は、F-Tセンサ142および/またはグリッパシステム146に対して下向きの力の位置/方向を推定することができる。また、持ち上げモジュール206は、測定されたトルクの大きさ、持ち上げられたパッケージ112の測定された重さ、把持位置とパッケージ境界線/エッジとの間の関係、またはこれらの組み合わせに基づいて距離を計算することができる。持ち上げモジュール206は、新たな把持位置(たとえば、ベクトルの方向および距離)がMVRにあるかをチェックすることができる。新たな位置がCoM上にある場合、持ち上げモジュール206はパッケージ112のCoMが適切に決定されることを確認することができる。
【0078】
[0102] MVR内の把持位置がCoMでないと持ち上げモジュール206が決定した場合、持ち上げモジュール206は、グリッパシステム146がパッケージ112を持ち上げた位置までパッケージ112を下ろすまたは下げるためのコマンドを実行することができる。さらに、持ち上げモジュール206は、(たとえば、パッケージ112を下げて離し、グリッパシステム146を再び位置調整し、そしてパッケージ112を再び把持することによって)グリッパシステム146がMVR内の新たな位置においてパッケージ112を把持し、ロボットアーム132が持ち上げ検査距離だけパッケージ112を持ち上げるためのコマンドを実行することができる。さらなる例では、グリッパシステム146は、センサ162がパッケージ112の不明瞭エッジを検出するのを妨害せずに、MVR内の新たな位置で把持することができる。持ち上げモジュール206は登録モジュール212に送信することができる。
【0079】
[0103] ロボットシステム100がパッケージ112のCoMを動的かつリアルタイムに決定することによって、ロボットシステム100がパッケージ112の未登録インスタンスを移動させる性能が向上する。未登録/未認識パッケージのCoMを正確に識別することによって、グリッパシステム146がパッケージ112を把持する安定性が向上する。結果として、ロボットシステム100は、ロボットシステム100に未登録のパッケージ112の移動を継続することによって、パッケージ112をデパレタイズするためのワークフローの効率を向上させることができる。
【0080】
[0104] 例示の目的で、キャプチャモジュール202は第1の画像データ、第2の画像データ、またはこれらの組み合わせをキャプチャするように記載しているが、キャプチャモジュール202は異なって動作することができる。たとえば、キャプチャモジュール202は、上述のようにCoMが正しく決定された後の、パッケージ112のSIを表す再把持後画像データをキャプチャすることができる。より具体的には、例として、ロボットアーム132は、グリッパシステム146がMVR内の新たな位置においてパッケージ112を把持した後に、パッケージ112を持ち上げることができる。キャプチャモジュール202は、MVR内かつCoMの上方の新たな位置において把持されたパッケージ112のSIを表す再把持後画像データをキャプチャすることができる。キャプチャモジュール202は、再把持後画像データを抽出モジュール208に送信することができる。
【0081】
[0105] 例示の目的で、抽出モジュール208は、第1の画像データ、第2の画像データ、またはこれらの組み合わせに基づいて第3の画像データを抽出するように記載しているが、抽出モジュール208は異なって動作することができる。たとえば、上述のように、抽出モジュール208が第1の画像データ、第2の画像データ、またはこれらの組み合わせに基づいて第3の画像データを抽出するのと同様に、抽出モジュール208は、第1の画像データ、再把持後画像データ、またはこれらの組み合わせに基づいて第3の画像データを抽出することができる。抽出モジュール208は、上述のようにパッケージ112の長さ、幅、またはこれらの組み合わせを含む寸法を決定することができる。抽出モジュール208は第3の画像データ、長さ、幅、またはこれらの組み合わせを登録モジュール212に送信することができる。
【0082】
[0106] ロボットシステム100は移動モジュール210を含むことができ、移動モジュール210は抽出モジュール208に結合することができる。移動モジュール210はパッケージ112を図1Aの荷受台120に移動させるためのコマンドを実行する。たとえば、移動モジュール210は、ロボットアーム132がパッケージ112の登録済みまたは未登録インスタンスを荷受台120に移動させるためのコマンドを実行することができる。
【0083】
[0107] 移動モジュール210はいくつかの方法でコマンドを実行することができる。たとえば、移動モジュール210は、パッケージ112の登録状況に基づいて、パッケージ112を移動させるためのコマンドを実行することができる。より具体的には、例として、パッケージ112についての登録レコード172が存在する場合、移動モジュール210は、ロボットアーム132がパッケージ112の登録済みインスタンスを把持して、パッケージ112を移動させて荷受台120に置くためのコマンドを実行することができる。
【0084】
[0108] 異なる例では、登録レコード172が存在しない場合、パッケージ112の第3の画像データが上述のように抽出される。その上、移動モジュール210は、ロボットアーム132がパッケージ112の未登録インスタンスを把持してパッケージ112を荷受台120に移動させるためのコマンドを実行することができる。さらなる例では、ロボットアーム132がパッケージ112を荷受台120まで下げた場合、パッケージ112の底面限度(bottom extent)によって、図1AのHDS180をトリガすることができる。
【0085】
[0109] 荷受台120の高さを事前定義することができる場合、床に対するHDS180の高さを事前定義することができる。移動モジュール210は、パッケージ112の底部がHDS180と交差した時刻と、グリッパシステム146の高さとに基づいて、パッケージ112の高さを決定することができる。より具体的には、例として、移動モジュール210は、信号(すなわち、パッケージ112がHDS180と交差したことを表すもの)が受信されたときのグリッパシステム146の位置または高さと、HDS180の事前定義された高さとの間の距離/差分に基づいて、パッケージ112の高さを決定することができる。移動モジュール210は、パッケージ112の高さを登録モジュール212に送信することができる。
【0086】
[0110] ロボットシステム100がパッケージ112の未登録インスタンスの高さを動的かつリアルタイムに決定することによって、ロボットシステム100がパッケージ112をデパレタイズする性能が向上する。未登録/未認識パッケージの高さを決定することによって、ロボットシステム100は、パッケージを安全に把持するためのパッケージ112の属性を正確に識別することができる。結果として、ロボットシステム100は、同一のタイプのパッケージ112を継続的に移動させることによって、パッケージ112をデパレタイズするワークフローの効率を向上させることができる。
【0087】
[0111] ロボットシステム100は登録モジュール212を含むことができ、登録モジュール212は移動モジュール210に結合することができる。登録モジュール212はパッケージ112の属性を登録する。たとえば、登録モジュール212は、パッケージ112の未登録インスタンスの第3の画像データ、長さ、幅、高さ、重さ、CoM、またはこれらの組み合わせを(たとえば、結び付けるまたは一緒に記憶することによって)登録することができる。より具体的には、例として、登録モジュール212は、登録レコード172を生成して、パッケージ112の未登録インスタンスをパッケージ112の登録済みインスタンスに変換する。
【0088】
[0112] 上述の方法のステップは、コンピュータ命令コードとして非一時的コンピュータ可読媒体に記憶されたコンピュータ可読媒体内に具現化されてもよいことに留意されたい。この方法は本明細書に記載のステップのうちの1つまたは複数を含んでもよく、その1つまたは複数のステップは、互いと同時に実施されることを含む、任意の所望の順序で実行されてもよい。たとえば、本明細書で開示したステップのうちの2つ以上が単一のステップにおいて組み合わせられてもよく、および/またはステップのうちの1つまたは複数が2つ以上のサブステップとして実施されてもよい。さらに、本開示の利益を有する当業者によって理解されるように、本明細書において明示的に開示していないまたは元々存在しないステップが、本明細書に記載のステップに組み入れられても追加されてもよく、本明細書に記載のステップのうちの1つまたは複数と置き換えられてもよい。
【0089】
[0113] 開示した技術の実施例の上記の詳細な説明は、網羅的であることも、上記で開示した厳密な形に開示した技術を限定することも意図していない。開示した技術の具体例を例示の目的で上述しているが、当業者であれば認識するように、様々な等価な変形例が開示した技術の範囲内で可能である。たとえば、処理またはモジュールは所与の順序で与えているが、代替的な実施態様は異なる順序のステップを有するルーチンを実行してもよく、異なる順序のモジュールを有するシステムを採用してもよく、一部の処理またはモジュールを削除、移動、追加、細分化、結合、および/または修正して代替的または副次的な組み合わせを提供してもよい。これらの処理またはモジュールのそれぞれは、種々の異なる方法で実装されてもよい。また、処理またはモジュールは連続して実行されるものとして示す場合があるが、これらの処理またはモジュールは代わりに並列に実行または実施されてもよく、異なる時刻に実行されてもよい。さらに、本明細書に記載の任意の特定の数字は例にすぎず、代替的な実施態様は異なる値または範囲を採用してもよい。
【0090】
[0114] 本明細書で使用する場合、「実施形態」という用語は、限定ではなく例として説明するのに役立つ実施形態を意味する。先述の実施例および実施形態は例示的なものであって、本明細書で開示した広範囲の発明概念を限定するものではないことは当業者には理解されよう。本明細書を読み、図面を検討すれば当業者にとって明らかになる全ての修正、並べ替え、拡張、均等物、およびこれらの改良は、本明細書で開示した広範囲の発明概念に含まれるものとする。したがって、以下の特許請求の範囲は、本明細書で開示した広範囲の発明概念に含まれる全てのそのような修正、並べ替え、拡張、均等物、および改良を含むものとする。
図1A
図1B
図2A
図2B
図3A
図3B
図3C
図4A
図4B
図4C
図4D
図4E
図4F
図4G
図4H
図4I
図4J
図4K
図4L
図4M
図4N
図4O
図4P
図4Q
図5