(57)【要約】      （修正有）【課題】対象オブジェクトに関連したセンサ読取り値を受信し、指定エリア、作業場所、および別の対象オブジェクトに対するグリップ点の場所に基づいて、作業を実行するためのベースプランを提供する。【解決手段】ロボットシステムおよびその方法は、対象オブジェクトをグリップするための、グリップ点とグリップ点に関する１つまたは複数のグリップパターンとを、作動ユニットおよび１つまたは複数の吸引グリッパをグリップパターンランクに従って動作させることにより、ベースプランを実施して、対象オブジェクトに対する確立されたグリップを生成することであって、確立されたグリップは、グリップパターンに関連したグリップパターン箇所にあることと、確立されたグリップを測定することと、確立されたグリップを力閾値と比較することと、確立されたグリップが閾値を下回ったことに基づいて、対象オブジェクトを再グリップすることと、を含む。【選択図】図８
2020196120.tif 000002
【特許請求の範囲】
【請求項１】
ロボットシステムの動作方法であって、
対象オブジェクトに関連したセンサ読取り値を受信することと、
前記対象オブジェクトに対して作業を実行するためのベースプランを生成することであって、前記ベースプランを生成することは、前記対象オブジェクトをグリップするための、グリップ点と、前記グリップ点に関連した１つまたは複数のグリップパターンとを、指定エリア、作業場所、および別の対象オブジェクトに対する前記グリップ点の場所に基づいて、決定することを含むことと、
作動ユニットおよび１つまたは複数の吸引グリッパをグリップパターンランクに従って動作させることにより、前記作業を実行するための前記ベースプランを実施して、前記対象オブジェクトに対する確立されたグリップを生成することであって、前記確立されたグリップは、前記グリップパターンに関連したグリップパターン箇所にあることと、
前記確立されたグリップを測定することと、
前記確立されたグリップを力閾値と比較することと、
前記確立されたグリップが前記閾値を下回ったことに基づいて、前記対象オブジェクトを再グリップすることと、を含む、方法。
【請求項２】
反復カウンタが反復閾値未満であることに基づいて、前記対象オブジェクトを再グリップすること、をさらに含む、請求項１に記載の方法。
【請求項３】
反復カウンタが反復閾値を超えたことに基づいて、エラーを生成すること、をさらに含む、請求項１に記載の方法。
【請求項４】
前記対象オブジェクトの質量中心に基づいて、前記グリップ点を識別すること、をさらに含む、請求項１に記載の方法。
【請求項５】
前記対象オブジェクトの質量中心と、前記対象オブジェクトの表面外形、前記対象オブジェクトの表面の厚さ、前記対象オブジェクトの表面の組成、またはそれらの組み合わせとに基づいて、前記グリップ点を識別すること、をさらに含む、請求項１に記載の方法。
【請求項６】
吸引カップの幾何学的中心および重み係数に基づいて、前記グリップパターン箇所を決定すること、をさらに含む、請求項１に記載の方法。
【請求項７】
前記対象オブジェクトを前記グリップパターン箇所に位置合わせすることと、前記グリップパターン箇所におけるどのグリップパターンが、前記対象オブジェクトをグリップするための前記グリップパターンに関連した前記吸引グリッパの全てを使用するためのものであるかを決定することとに基づいて、前記グリップパターンランクを生成すること、をさらに含む、請求項１に記載の方法。
【請求項８】
前記ベースプランを実施する間に前記確立されたグリップを監視することと、
前記確立されたグリップが前記力閾値を下回ることに基づいて、アームユニットの速度および加速度を調整するための命令を生成することと、をさらに含む、請求項１に記載の方法。
【請求項９】
ロボットシステムであって、
対象オブジェクトに関連したセンサ読取り値を受信するように構成された通信ユニットと、
前記通信ユニットに接続された制御ユニットと、を備え、
前記制御ユニットは、
前記対象オブジェクトに対して作業を実行するためのベースプランを生成するように構成され、前記ベースプランを生成することは、前記対象オブジェクトをグリップするための、グリップ点と、前記グリップ点に関連した１つまたは複数のグリップパターンとを、指定エリア、作業場所、および別の対象オブジェクトに対する前記グリップ点の場所に基づいて決定することを含み、
前記制御ユニットは、
作動ユニットおよび１つまたは複数の吸引グリッパをグリップパターンランクに従って動作させることにより、前記作業を実行するための前記ベースプランを実施して、前記対象オブジェクトに対する確立されたグリップを生成するように構成され、前記確立されたグリップは、前記グリップパターンに関連したグリップパターン箇所にあり、
前記制御ユニットは、
前記確立されたグリップを測定し、
前記確立されたグリップを力閾値と比較し、かつ、
前記確立されたグリップが前記閾値を下回ったことに基づいて、前記対象オブジェクトを再グリップするように構成される、ロボットシステム。
【請求項１０】
前記制御ユニットは、さらに、反復カウンタが反復閾値未満であることに基づいて、前記対象オブジェクトを再グリップするように構成される、請求項９に記載のシステム。
【請求項１１】
前記制御ユニットは、さらに、反復カウンタが反復閾値を超えたことに基づいて、エラーを生成するように構成される、請求項９に記載のシステム。
【請求項１２】
前記制御ユニットは、さらに、前記対象オブジェクトの質量中心に基づいて、前記グリップ点を識別するように構成される、請求項９に記載のシステム。
【請求項１３】
前記制御ユニットは、さらに、前記対象オブジェクトの質量中心と、前記対象オブジェクトの表面外形、前記対象オブジェクトの表面の厚さ、前記対象オブジェクトの前記表面の組成、またはそれらの組み合わせとに基づいて、前記グリップ点を識別するように構成される、請求項９に記載のシステム。
【請求項１４】
前記制御ユニットは、さらに、吸引カップの幾何学的中心および重み係数に基づいて、前記グリップパターン箇所を決定するように構成される、請求項９に記載のシステム。
【請求項１５】
前記制御ユニットは、さらに、前記対象オブジェクトを前記グリップパターン箇所に位置合わせすることと、前記グリップパターン箇所におけるどのグリップパターンが、前記対象オブジェクトをグリップするための前記グリップパターンに関連した前記吸引グリッパの全てを使用するためのものであるかを決定することとに基づいて、前記グリップパターンランクを生成するように構成される、請求項９に記載のシステム。
【請求項１６】
ロボットシステムのための命令を含む非一時的なコンピュータ可読媒体であって、
対象オブジェクトに関連したセンサ読取り値を受信することと、
前記対象オブジェクトに対して作業を実行するためのベースプランを生成することであって、前記対象オブジェクトをグリップするための、前記ベースプランを生成することは、グリップ点と、前記グリップ点に関連した１つまたは複数のグリップパターンとを、指定エリア、作業場所、および別の対象オブジェクトに対する前記グリップ点の場所に基づいて決定することを含むことと、
作動ユニットおよび１つまたは複数の吸引グリッパをグリップパターンランクに従って動作させることにより、前記作業を実行するための前記ベースプランを実施して、前記対象オブジェクトに対する確立されたグリップを生成することであって、前記確立されたグリップは、前記グリップパターンに関連したグリップパターン箇所にあることと、
前記確立されたグリップを測定することと、
前記確立されたグリップを力閾値と比較することと、
前記確立されたグリップが前記閾値を下回ったことに基づいて、前記対象オブジェクトを再グリップすることと、を含む、非一時的なコンピュータ可読媒体。
【請求項１７】
前記対象オブジェクトの質量中心に基づいて、前記グリップ点を識別することをさらに含む命令を有する、請求項１６に記載の非一時的なコンピュータ可読媒体。
【請求項１８】
前記対象オブジェクトの質量中心と、前記対象オブジェクトの表面外形、前記対象オブジェクトの表面の厚さ、前記対象オブジェクトの前記表面の組成、またはそれらの組み合わせとに基づいて、前記グリップ点を識別することをさらに含む命令を有する、請求項１６に記載の非一時的なコンピュータ可読媒体。
【請求項１９】
吸引カップの幾何学的中心および重み係数に基づいて、前記グリップパターン箇所を決定することをさらに含む命令を有する、請求項１６に記載の非一時的なコンピュータ可読媒体。
【請求項２０】
前記対象オブジェクトを前記グリップパターン箇所に位置合わせすることと、前記グリップパターン箇所におけるどのグリップパターンが、前記対象オブジェクトをグリップするための前記グリップパターンに関連した前記吸引グリッパの全てを使用するためのものであるかを決定することとに基づいて、前記グリップパターンランクを生成することをさらに含む命令を有する、請求項１６に記載の非一時的なコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
[0001]  本発明の実施形態は、概して、ロボットシステムに関し、より具体的には、ロボットアーム吸引制御機構を有するロボットシステムに関する。
【背景技術】
【０００２】
[0002]  ロボットは、その絶えず向上する性能および低下するコストにより、多くの分野で広範囲にわたり使用されている。例えば、ロボットは、オブジェクトをある場所から別の場所へと操縦または移送することを含む多様な作業を実行するために使用することができる。このような作業は、特に、製造、組立、パッキング、パッケージング、倉庫業務および輸送において有用である。これらの作業の実行にあたって、ロボットは、人間の動作を再現することができ、それにより、人間が危険な作業または反復的な作業を行うことが必要になるような人間の関与を置き換えたり、低減させたりする。しかし、技術的な進歩に関わらず、ロボットは、より複雑な作業を実行するために必要な人間の感受性、適応性および技巧性を再現するのに必要な洗練さが未だ欠如している。例えば、ロボットハンドまたはグリッパは、しばしば、接触センサの感度不足または力制御の不十分な粒度（granularity）のため、比較的柔らかい表面または不規則な表面を持つオブジェクトを把持することが困難である。
【０００３】
[0003]  したがって、オブジェクトをグリップし、取り扱うためのロボットの性能を制御および管理するための技術には改善の余地がある。増大し続ける商業上の競争圧力と、高まりつつある消費者の期待および市場における有意義な商品差別化の機会の減少とを併せて考慮すると、これらの問題に対する答えを見出すことがますます重要になっている。さらに、コストを削減し、効率および性能を改善し、かつ競争圧力に応じることの必要性から、これらの問題に対する答えを見つけることの重大な必要性が一層急務となっている。
【０００４】
[0004]  これらの問題の解決策が長期にわたり模索されてきたが、従来の開発は解決策を教示あるいは示唆するものではなかったため、当業者は長い間これらの問題の解決に至っていない。
【発明の概要】
【０００５】
[0005]  本発明の一実施形態は、ロボットシステムの動作方法を提供し、この動作方法は、対象オブジェクトに関連したセンサ読取り値を受信することと、対象オブジェクトに対して作業を実行するためのベースプランを生成することであって、ベースプランを生成することは、対象オブジェクトをグリップするための、グリップ点とグリップ点に関連した１つまたは複数のグリップパターンとを、指定エリア、作業場所、および別の対象オブジェクトに対する前記グリップ点の場所に基づいて、決定することを含むことと、作動ユニットおよび１つまたは複数の吸引グリッパをグリップパターンランクに従って動作させることにより、作業を実行するためのベースプランを実施して、対象オブジェクトに対する確立されたグリップを生成することであって、確立されたグリップは、グリップパターンに関連したグリップパターン箇所にあることと、確立されたグリップを測定することと、確立されたグリップを力閾値と比較することと、確立されたグリップが閾値を下回ったことに基づいて、対象オブジェクトを再グリップすることと、を含む。
【０００６】
[0006]  本発明の一実施形態は、ロボットシステムを提供し、このロボットシステムは、対象オブジェクトに関連したセンサ読取り値を受信するように構成された通信ユニットと、通信ユニットに接続された制御ユニットと、を備え、制御ユニットは、対象オブジェクトに対して作業を実行するためのベースプランを生成するように構成され、ベースプランを生成することは、対象オブジェクトをグリップするための、グリップ点と、グリップ点に関連した１つまたは複数のグリップパターンとを、指定エリア、作業場所、および別の対象オブジェクトに対する前記グリップ点の場所に基づいて決定することを含み、制御ユニットは、作動ユニットおよび１つまたは複数の吸引グリッパをグリップパターンランクに従って動作させることにより、作業を実行するためのベースプランを実施して、対象オブジェクトに対する確立されたグリップを生成するように構成され、確立されたグリップは、グリップパターンに関連したグリップパターン箇所にあり、制御ユニットは、確立されたグリップを測定し、確立されたグリップを力閾値と比較し、かつ、確立されたグリップが前記閾値を下回ったことに基づいて、前記対象オブジェクトを再グリップするように構成される。
【０００７】
[0007]  本発明の一実施形態は、ロボットシステムのための命令を含む非一時的なコンピュータ可読媒体を提供し、対象オブジェクトに関連したセンサ読取り値を受信することと、対象オブジェクトに対して作業を実行するためのベースプランを生成することであって、ベースプランを生成することは、対象オブジェクトをグリップするための、グリップ点と、グリップ点に関連した１つまたは複数のグリップパターンとを、指定エリア、作業場所、および別の対象オブジェクトに対するグリップ点の場所に基づいて決定することを含むことと、作動ユニットおよび１つまたは複数の吸引グリッパをグリップパターンランクに従って動作させることにより、作業を実行するためのベースプランを実施して、対象オブジェクトに対する確立されたグリップを生成することであって、確立されたグリップは、グリップパターンに関連したグリップパターン箇所にあることと、確立されたグリップを測定することと、確立されたグリップを力閾値と比較することと、確立されたグリップが閾値を下回ったことに基づいて、対象オブジェクトを再グリップすることと、を含む、非一時的なコンピュータ可読媒体。
【０００８】
[0008]  本発明のある実施形態は、上述した工程または要素に加えて、あるいは上述した工程または要素の代わりに、他の工程または要素を有する。それらの工程または要素は、添付の図面を参照して、以下の詳細な説明を読むことにより、当業者に明らかになるであろう。
【図面の簡単な説明】
【０００９】
【図１】[0009]  ロボットアーム吸引制御機構を有するロボットシステムが動作可能な例示的環境である。
【図２】[0010]  ロボットシステムの構成要素の例示的なブロック図である。
【図３】[0011]  本発明の１つまたは複数の実施形態に係るアームユニットの例である。
【図４】[0012]  本発明の一実施形態におけるロボットシステムの動作ステージの例示的な制御フローである。
【図５】[0013]  本発明の一実施形態における吸引制御パターン生成機構の例示的な制御フローである。
【図６】[0014]  本発明の１つまたは複数の実施形態に従ってグリップ点をグリップパターンにマッピングする例である。
【図７】[0015]  本発明の一実施形態におけるロボットシステムのオンライン状態の例示的な制御フローである。
【図８】[0016]  本発明の一実施形態におけるロボットシステムの動作方法のフローチャートである。
【発明を実施するための形態】
【００１０】
[0017]  以下の実施形態は、当業者が本発明を成し、使用することができるように十分に詳細に記載されている。当然のことながら、本開示に基づき、他の実施形態が明らかであり、本発明の実施形態の範囲から逸脱しない限り、システム上、プロセス上、または機械上の変更を加えてもよい。
【００１１】
[0018]  以下の説明において、本発明に関する完全な理解与えるために、数々の具体的詳細が示される。しかし、本発明が、これらの具体的詳細の一部を含まなくとも実施できることは明らかであろう。本発明の実施形態を不明確にすることを避けるため、一部の周知の構造、回路、システム構成、およびプロセス工程の詳細な開示は省略される。
【００１２】
[0019]  システムおよび方法の実施形態を示す図面は、半概略的であり、縮尺通りではない。一部の寸法は、明確な提示を目的とし、図面において誇張して示されている。同様に、図面内の一部の図は、説明を容易にするためのものであり、典型的には同様の向きを示しているが、この図面における描写は大部分が恣意的なものである。一般的には、本発明は任意の向きで動作可能である。実施形態には、説明の便宜上、一実施形態、第２実施形態等というように番号が付されているが、その他の意義を有すること、または本発明の実施形態に限定を加えることを意図したものではない。
【００１３】
[0020]  本明細書で使用される「モジュール」または「ユニット」という用語は、その用語が使用される文脈に応じて、本発明の実施形態におけるソフトウェア、ハードウェア、機械的機構、またはそれらの組合せを含み得る。また、例えば、ソフトウェアは、機械コード、ファームウェア、埋め込みコード、またはアプリケーションソフトウェアであり得る。また、例えば、ハードウェアは、回路、プロセッサ、専用コンピュータ、集積回路、集積回路コア、圧力センサ、慣性センサ、微小電子機械システム（ＭＥＭＳ）、受動素子、またはそれらの組み合わせであってよい。さらにまた、機械的機構には、アクチュエータ、モータ、アーム、継手、ハンドル、エンドエフェクタ、ガイド、ミラー、アンカベース、真空ライン、真空ジェネレータ、光源ライン、またはストッパが含まれ得る。さらに、「モジュール」または「ユニット」が後述のシステムクレームの欄に記載される場合、そのような「モジュール」または「ユニット」は、システムクレームの目的および範囲において、ハードウェア回路を含むものとみなされる。
【００１４】
[0021]  以下の実施形態の説明において、モジュールまたはユニットは、説明または図示されるように互いに対して接続または取付けられ得る。このような接続または取付けは、接続または取付けられるモジュールまたはユニット間に介在物を含む間接的なものであってもよく、あるいは、介在物を含まない直接的なものであってもよい。また、このような接続または取付けは、モジュールまたはユニット間において、物理的接触によるものであってもよく、あるいは通信によるものであってもよい。
【００１５】
[0022]  ここで、図１を参照すると、ロボットアーム吸引制御機構を有するロボットシステム１００が動作可能な例示的環境が示されている。ロボットシステム１００は、１つまたは複数の作業１１８を実行するように構成されたロボットまたはロボットデバイスなどの１つまたは複数の構造またはユニットを含み得る。ロボットアーム吸引制御機構の態様は、多様な構造によって実現または実施され得る。一実施形態において、ロボットシステム１００は、倉庫、流通センター、または出荷ハブ内で、アームユニット１０２、移送ユニット１０４、搬送ユニット１０６、荷積みユニット１０８、またはそれらの組み合わせを備えることができる。
【００１６】
[0023]  ロボットシステム１００またはロボットシステム１００の一部は、作業１１８を実行するように構成され得る。作業１１８は、アームユニット１０２、移送ユニット１０４、搬送ユニット１０６、荷積みユニット１０８、またはそれらの組み合わせに対する物理的変換のためにロボットシステム１００によって実行または実施される機能である。例えば、作業１１８は、アームユニット１０２、移送ユニット１０４、搬送ユニット１０６、荷積みユニット１０８、またはそれらの組み合わせに対する物理的変換に基づいて、コンテナ、大箱、ケージ、バスケット、棚、プラットフォーム、パレット、またはコンベアベルトなどの場所から、別の場所へと対象オブジェクト１１２を移動することを含み得る。複数の作業１１８を順次組み合わせて、対象オブジェクト１１２の荷積みまたは荷降ろしを含む目標を達成する動作を実行することができる。
【００１７】
[0024]  対象オブジェクト１１２は、ロボットシステム１００によって取り扱われることになる、または取り扱われている物品である。例えば、対象オブジェクト１１２は、箱、ケース、剛体、半剛体、可撓性表面を有する物品、またはそれらの組み合わせを含み得る。別の例として、作業１１８は、ロボットシステム１００に、対象オブジェクト１１２を、倉庫内に保管するために、トラック、トレーラ、バン、または列車車両等の車両に対して荷積みまたは荷降ろしさせたり、あるいは、出荷のために、保管場所から対象オブジェクト１１２を荷降ろしして車両へと荷積みさせたりすることができる。ロボットシステム１００の複数の部分は、ロボットシステム１００の１つまたは複数の構成要素を動作させるなどの一連のアクションを実行して、作業１１８を実行するように構成され得る。一例として、ロボットシステム１００の複数の部分は、互いに対して独立的に、個別に、または別々に構成されることができる。また、一例として、ロボットシステム１００の複数の部分は、まとまってグループとして、連係した態様、連続した態様、またはそれらの組み合わせの態様で構成されてもよい。図１は、対象オブジェクト１１２を取り扱う際に、ロボットシステム１００の多様なユニットによって実行され得る可能な機能および動作の例を示しており、環境および条件は、以下に記載するものとは異なる場合もあることが理解されよう。
【００１８】
[0025]  アームユニット１０２は、対象オブジェクト１１２を取り扱うように構成されたロボットアームであり得る。アームユニット１０２は、対象オブジェクト１１２をある場所から別の場所へと移送するように構成された車両積荷降ろしロボットして使用され得る。一例として、アームユニット１０２は、対象オブジェクト１１２をあるコンテナから別のコンテナへと移送するように構成されたピースピッキングロボットであってよい。別の例では、アームユニット１０２は、例えば、パレタイズロボットであってもよい。一例として、アームユニット１０２は、トラックまたはコンテナといったキャリア内のある場所から、コンベアベルト上の場所へと対象オブジェクト１１２を移送することができる。また、例えば、アームユニット１０２を使用して、キャリア上に対象オブジェクト１１２を荷積みすることができる。アームユニット１０２の更なる詳細については、以下で説明する。
【００１９】
[0026]  移送ユニット１０４は、対象オブジェクト１１２をある場所から別の場所（例えば、コンベアベルト）へと移動させる機械式取り扱い装置の固定部分であり得る。一例として、移送ユニット１０４は、対象オブジェクト１１２を搬送ユニット１０６上のパレットに荷積みするなどのために、コンベアベルト上の対象オブジェクト１１２を搬送ユニット１０６上のある場所へと移動させることができる。
【００２０】
[0027]  搬送ユニット１０６は、対象オブジェクト１１２を移送ユニット１０４に関連するエリアから荷積みユニット１０８に関連するエリアまで搬送するために使用される可動ロボットであり得る。搬送ユニット１０６は、例えば、搬送ロボット、配達ドローン、配達ロボット、フォークリフト、またはそれらの組み合わせであってよい。
【００２１】
[0028]  荷積みユニット１０８は、対象オブジェクト１１２を保持するパレットを、搬送ユニット１０６から、１つまたは複数の棚上の場所などのさらに別の保管場所へと移動させるなどして、対象オブジェクト１１２を移送するように構成され得る。荷積みユニット１０８は、例えば、貨物エレベータ、倉庫エレベータ、カーゴリフト、またはそれらの組み合わせであり得る。
【００２２】
[0029]  さらなる例として、作業１１８は、１つまたは複数の指定エリア１１４から作業場所１１６へと対象オブジェクト１１２を移送することを含む。例えば、指定エリア１１４には、ケージ、大箱、箱、パレット、またはそれらの組み合わせ等の、対象オブジェクト１１２を保管するための入れ物を含み得る。指定エリア１１４は、数多くの構成および形態を含み得る。例えば、指定エリア１１４は、パレット、棚、またはコンベアベルトといった、対象オブジェクト１１２をその上に配置またはスタックすることが可能な、壁付きまたは壁無しのプラットフォームであり得る。別の例として、指定エリア１１４は、大箱、ケージ、またはバスケットといった、対象オブジェクト１１２をその内部に配置することが可能な、壁付きまたは蓋付きの部分的または完全に囲まれた入れ物であってもよい。いくつかの実施形態において、部分的または完全に囲まれた入れ物である指定エリア１１４の壁は、透明であるか、または多様なサイズの開口もしくは間隙を有し、その内部に収容された対象オブジェクト１１２の部分がその壁を通して視認可能あるいは部分的に視認可能であってもよい。作業場所１１６は、対象オブジェクト１１２が配置されて作業１１８を実行させるエリア、または、対象オブジェクト１１２に対して作業１１８が行われる終了地点または開始地点として指定されたエリアであり得る。
【００２３】
[0030]  例示のために、ロボットシステム１００は、出荷センターの文脈で説明されるが、ロボットシステム１００は、他の環境において、あるいは他の目的のために作業１１８を実行するように構成され得ることを理解されたい。例として、ロボットシステム１００は、製造、組立、パッケージング、ヘルスケア、または他のタイプのオートメーションを目的とした環境で動作することができる。また、ロボットシステム１００は、図１には示されていない、マニピュレータ、サービスロボット、モジュール式ロボットなどの、他のユニットを含むことができることも理解されたい。例えば、いくつかの実施形態では、ロボットシステム１００は、ケージカートまたはパレットから、コンベアまたは他のパレットに対象オブジェクト１１２を移送するためのデパレタイズユニット、あるコンテナから別のコンテナに対象オブジェクト１１２を移送するためのコンテナ切替えユニット、対象オブジェクト１１２をラッピングするためのパッケージングユニット、対象オブジェクト１１２の１つまたは複数の特徴に応じて対象オブジェクト１１２をグループ化するための仕分けユニット、対象オブジェクト１１２の１つまたは複数の特徴に応じて様々に対象オブジェクト１１２を操縦するため（例えば、仕分け、グループ化、または移送のため）のピースピッキングユニット、またはそれらの組合せを含むことができる。
【００２４】
[0031]  次に、図２を参照すると、ロボットシステム１００の構成要素の例示的なブロック図が示されている。一実施形態において、ロボットシステム１００は、制御ユニット２０２、ストレージユニット２０６、通信ユニット２１２、ユーザインタフェース２１６、作動ユニット２２０、およびセンサユニット２３０を備えることができる。一実施形態では、これら構成要素の１つまたは複数は、エンクロージャ２３４内で組み合わされていてもよい。
【００２５】
[0032]  エンクロージャ２３４は、ロボットシステム１００の一部が収容された収容部であり得る。エンクロージャ２３４は、内部に収容されたロボットシステム１００の部分を、エンクロージャ２３４の外部にある他の部分から分離することができる。例えば、エンクロージャ２３４は、ケース、シャーシ、箱、コンソール、コンピュータタワー、コンピュータマザーボードであってよい。一実施形態において、例えば、制御ユニット２０２、ストレージユニット２０６、通信ユニット２１２、またはそれらの組み合わせは、エンクロージャ２３４内に収容され得る。別の実施形態では、制御ユニット２０２、ストレージユニット２０６、通信ユニット２１２、またはそれらの組み合わせはエンクロージャ２３４内に収容され、ユーザインタフェース２１６がエンクロージャ２３４の外部からアクセス可能であってもよい。
【００２６】
[0033]  ロボットシステム１００の１つまたは複数の構成要素がエンクロージャ２３４内またはエンクロージャ２３４上に収容され得る一方、ロボットシステム１００の他の構成要素はエンクロージャ２３４の外部にあってもよい。例えば、一実施形態では、ユーザインタフェース２１６、作動ユニット２２０、センサユニット２３０、またはそれらの組み合わせがエンクロージャ２３４の外部にある一方、制御ユニット２０２、ストレージユニット２０６、および通信ユニット２１２はエンクロージャ２３４内に収容され得る。上述したものは、単に、エンクロージャ２３４内またはエンクロージャ２３４上に収容され得る構成要素の例であって、限定を意図したものではない。他の構成要素の組み合わせがエンクロージャ２３４内に収容されてもよい。
【００２７】
[0034]  制御ユニット２０２は、ソフトウェア２１０を実行して、ロボットシステム１００の知能を提供することができる。制御ユニット２０２は、ロボットシステム１００の他の機能を目的としてソフトウェア２１０を実行することもできる。制御ユニット２０２は、多様な様式で実施され得る。例えば、制御ユニット２０２は、プロセッサ、特定用途向け集積回路（ＡＳＩＣ）、組み込みプロセッサ、マイクロプロセッサ、ハードウェア制御ロジック、ハードウェア有限状態機械（ＦＳＭ）、デジタル信号プロセッサ（ＤＳＰ）、またはそれらの組み合わせであってよい。
【００２８】
[0035]  制御ユニット２０２は、制御インタフェース２０４を含み得る。制御インタフェース２０４は、制御ユニット２０２とロボットシステム１００の他の機能ユニットとの間の通信に使用することができる。制御インタフェース２０４は、また、ロボットシステム１００の外部との通信にも使用することができる。制御インタフェース２０４は、他の機能ユニットまたは外部の送信元から情報を受信したり、あるいは、他の機能ユニットまたは外部の送信先に向けて情報を送信したりすることができる。外部の送信元および外部の送信先は、ロボットシステム１００の外部にある送信元および送信先を指している。
【００２９】
[0036]  制御インタフェース２０４は、この制御インタフェース２０４のインタフェース対象となる機能ユニットまたは外部のユニットによって、異なる様式で実施され、また、異なる実装形態を含むことができる。例えば、制御インタフェース２０４は、圧力センサ、慣性センサ、微小電子機械システム（ＭＥＭＳ）、光学回路、導波管、無線回路、有線回路、アプリケーションプログラムインタフェース、またはそれらの組み合わせにより実施され得る。
【００３０】
[0037]  ストレージユニット２０６は、ソフトウェア２１０、マスタデータ２２６、オブジェクト追跡データ２２８、構成データ２４８、またはそれらの組み合わせを記憶し得る。例示を目的として、ストレージユニット２０６は単一の要素として図示されているが、ストレージユニット２０６は分散された複数のストレージ要素であってもよいことを理解されたい。また、例示のために、単一の階層ストレージシステムとしてストレージユニット２０６を有するロボットシステム１００が図示されているが、ロボットシステム１００は、異なる構成のストレージユニット２０６を有してもよいことを理解されたい。例えば、ストレージユニット２０６は、異なる階層のキャッシング、メインメモリ、回転媒体、またはオフラインストレージを含むメモリ階層システムを形成する異なるストレージ技術によって形成されてもよい。
【００３１】
[0038]  ストレージユニット２０６は、揮発性メモリ、不揮発性メモリ、内部メモリ、外部メモリ、またはそれらの組み合わせであり得る。例えば、ストレージユニット２０６は、不揮発性ランダムアクセスメモリ（ＮＶＲＡＭ）、フラッシュメモリ、ディスクストレージなどの不揮発性ストレージ、または、静的ランダムアクセスメモリ（ＳＲＡＭ）などの揮発性ストレージであり得る。
【００３２】
[0039]  ストレージユニット２０６は、ストレージインタフェース２０８を備え得る。ストレージインタフェース２０８は、ストレージユニット２０６とロボットシステム１００の他の機能ユニットとの間の通信に使用され得る。ストレージインタフェース２０８は、ロボットシステム１００の外部との通信にも使用され得る。ストレージインタフェース２０８は、ロボットシステム１００の他の機能ユニットまたは外部の送信元からの情報を受信したり、あるいは、ロボットシステム１００の他の機能ユニットまたは外部の送信先に向けて情報を送信したりすることができる。外部の送信元および外部の送信先は、ロボットシステム１００の外部にある送信元および送信先を指している。
【００３３】
[0040]  ストレージインタフェース２０８は、ストレージユニット２０６のインタフェース対象となる機能ユニットまたは外部のユニットによって異なる実装形態を含むことができる。ストレージインタフェース２０８は、制御インタフェース２０４の実装形態と同様の技術および手法で実施され得る。
【００３４】
[0041]  一実施形態において、ストレージユニット２０６は、処理結果、データ、閾値、またはそれらの組み合わせをさらに記憶し、アクセスを提供するために使用することができる。処理結果、データ、閾値、またはそれらの組み合わせは、マスタデータ２２６を構成し得る。マスタデータ２２６は、例えば、箱、箱タイプ、ケース、ケースタイプ、製品、またはそれらの組み合わせといった図１の対象オブジェクト１１２の説明を含み得る。一実施形態では、マスタデータ２２６は、対象オブジェクト１１２の寸法、形状（例えば、対象オブジェクト１１２の潜在的な向きに関するテンプレートまたは多様な向きの対象オブジェクト１１２を認識するためのコンピュータ生成モデル）、配色、画像、識別情報（例えば、バーコード、クイックレスポンス（ＱＲ）コード（登録商標）、ロゴ）、予測される寸法、予測される重量、またはそれらの組み合わせを含み得る。一実施形態において、マスタデータ２２６は、さらに、対象オブジェクト１１２上の質量中心２３６の場所や、１つまたは複数のアクション、操縦、またはそれらの組み合わせに対応する、予測されるセンサ測定値（例えば、力、トルク、圧力、または接触測定値）といった、対象オブジェクト１１２の操縦関連情報を含んでもよい。
【００３５】
[0042]  一実施形態において、ストレージユニット２０６は、さらに、構成データ２４８を記憶し得る。構成データ２４８は、ロボットシステム１００の１つまたは複数の構成要素またはロボットシステム１００の外部の１つまたは複数の構成要素を動作させるのに必要な、ロボットシステム１００の１つまたは複数の構成要素または１つまたは複数の外部の構成要素に関するパラメータおよび初期設定情報を指す。例えば、このような構成情報には、どの構成要素をＯＮおよび／またはＯＦＦにするか、いつ構成要素を作動させるか（例えば、いつ１つまたは複数の構成要素をＯＮおよび／またはＯＦＦにするか）に関する情報や、あるいは、他の設定変数、閾値、または１つまたは複数の構成要素を動作させるのに必要な動作データを含み得る。一実施形態において、構成データ２４８は、構成ファイル２５０内に記憶され得る。構成ファイル２５０は、パラメータおよび初期設定情報を含むテキストファイルなどのコンピュータファイルを指す。
【００３６】
[0043]  一実施形態において、ストレージユニット２０６は、さらにオブジェクト追跡データ２２８を記憶することができる。オブジェクト追跡データ２２８は、対象オブジェクト１１２の場所、位置、状態、またはそれらの組み合わせを示すデータであり得る。オブジェクト追跡データ２２８は、スキャンまたは操縦された対象オブジェクト１１２のログを含み得る。いくつかの実施形態では、オブジェクト追跡データ２２８は、１つまたは複数の場所（例えば、指定されたピックアップ位置もしくはドロップ位置、またはコンベアベルト）における対象オブジェクト１１２の撮像データ（例えば、写真、ポイントクラウド／深度図、ライブビデオフィード）が含まれ得る。いくつかの実施形態では、オブジェクト追跡データ２２８には、１つまたは複数の場所における対象オブジェクト１１２の位置および向きが含まれ得る。
【００３７】
[0044]  通信ユニット２１２は、ロボットシステム１００の機能ユニット間の通信、外部のデバイス間の通信、それらの組み合わせを含む、ロボットシステム１００へおよびロボットシステム１００からの通信を可能にし得る。例えば、通信ユニット２１２は、ロボットシステム１００が外部のコンピュータ、外部のデータベース、外部のマシン、外部の周辺デバイス、またはそれらの組み合わせといった、外部のデバイスと、通信パス２３８を介して通信することを可能にし得る。
【００３８】
[0045]  通信パス２３８は、多様なネットワークおよびネットワークトポロジに広がり、これらネットワークおよびネットワークトポロジを表し得る。例えば、通信パス２３８は、無線通信、有線通信、光通信、超音波通信、またはそれらの組み合わせを含み得る。例えば、衛星通信、セルラ通信、Ｂｌｕｅｔｏｏｔｈ（登録商標）、赤外線データ協会標準、（ＩｒＤＡ）（登録商標）、ワイヤレスフィデリティ（ＷｉＦｉ）（登録商標）、およびワールドワイド・インターオペラビリティ・フォー・マイクロウェーブ（ＷｉＭＡＸ）（登録商標）は、通信パス２３８に含まれ得る無線通信の例である。ケーブル、イーサネット、デジタル加入者線（ＤＳＬ）、光ファイバー線、ファイバー・ツー・ザ・ホーム線（ＦＴＴＨ）、従来の電話サービス（ＰＯＴＳ）は、通信パス２３８に含まれ得る有線通信の例である。さらに、通信パス２３８は、多数の通信トポロジおよび距離に亘り得る。例えば、通信パス２３８は、直接接続、パーソナルエリアネットワーク（ＰＡＮ）、ローカルエリアネットワーク（ＬＡＮ）、メトロポリタンエリアネットワーク（ＭＡＮ）、ワイドエリアネットワーク（ＷＡＮ）、またはそれらの組み合わせを含み得る。制御ユニット２０２は、さらに、通信ユニット２１２を介した通信パス２３８との相互作用のためにソフトウェア２１０を実行することができる。
【００３９】
[0046]  通信ユニット２１２は、ロボットシステム１００が通信パス２３８の一部として機能すること可能にし、かつ、通信パス２３８へのエンドポイントまたは端末装置に限定されない、通信ハブとしても機能することができる。通信ユニット２１２は、通信パス２３８との相互作用のために、マイクロエレクトロニクスまたはアンテナなどの能動部品および受動部品を備え得る。
【００４０】
[0047]  通信ユニット２１２は、通信インタフェース２１４を備え得る。通信インタフェース２１４は、通信ユニット２１２とロボットシステム１００の他の機能ユニットとの間の通信のために使用することができる。通信インタフェース２１４は、ロボットシステム１００の他の機能ユニットまたは外部の送信元から情報を受信したり、あるいは、ロボットシステム１００の他の機能ユニットまたは外部の送信先に向けて情報を送信したりすることができる。通信インタフェース２１４は、通信ユニット２１２のインタフェース対象となる機能ユニットによって異なる実装形態を含むことができる。通信インタフェース２１４は、制御インタフェース２０４の実装形態と同様の技術および手法で実施され得る。
【００４１】
[0048]  制御ユニット２０２は、ユーザインタフェース２１６を動作させて、ロボットシステム１００によって生成された情報を提示または受信することができる。ユーザインタフェース２１６は、入力デバイスおよび出力デバイスを含み得る。ユーザインタフェース２１６の入力デバイスの例には、データおよび通信の入力を提供するためのキーパッド、タッチパッド、ソフトキー、キーボード、マイクロフォン、遠隔信号を受信するためのセンサ、動作コマンドを受信するためのカメラ、またはそれらの任意の組み合わせが含まれ得る。出力デバイスの例には、ディスプレイインタフェース２１８およびオーディオインタフェース２３２が含まれ得る。
【００４２】
[0049]  ディスプレイインタフェース２１８は、ディスプレイ、プロジェクタ、ビデオスクリーン、またはそれらの任意の組み合わせなどの任意のグラフィカルユーザインタフェースであり得る。オーディオインタフェース２３２は、スピーカ、マイクロフォン、ヘッドフォン、サブウーファ、サウンドコンポーネント、トランスデューサ、またはそれらの任意の組み合わせを含み得る。ディスプレイインタフェース２１８およびオーディオインタフェース２３２によって、ロボットシステム１００のユーザは、ロボットシステム１００との対話をすることができる。ディスプレイインタフェース２１８およびオーディオインタフェース２３２は、任意選択でよい。
【００４３】
[0050]  ロボットシステム１００は、作動ユニット２２０も備えることができる。作動ユニット２２０は、例えば、デバイス（例えば、モータ、バネ、歯車、プーリ、チェーン、レール、ワイヤ、人工筋肉、電気活性ポリマー、またはそれらの組み合わせ）であって、ロボットシステム１００の構造的部材または機械的構成要素を、対応する機械継手を中心に、または、この機械継手において、駆動、操縦、変位、配向、再配向、またはそれらの組み合わせを行うように構成されたデバイスを含むことができる。制御ユニット２０２は、作動ユニット２２０を動作させて、作動ユニット２２０を制御または操縦することができる。
【００４４】
[0051]  作動ユニット２２０は、作動インタフェース２２２を備え得る。作動インタフェース２２２は、作動ユニット２２０とロボットシステム１００の他の機能ユニットとの間の通信のために使用することができる。作動インタフェース２２２は、ロボットシステム１００の外部との通信にも使用することができる。作動インタフェース２２２は、ロボットシステム１００の他の機能ユニットまたは外部の送信元から情報を受信したり、あるいは、他の機能ユニットまたは外部の送信先に向けて情報を送信したりすることができる。
【００４５】
[0052]  作動インタフェース２２２は、作動ユニット２２２のインタフェース対象となるロボットシステム１００の機能ユニットまたは外部ユニットによって異なる実装形態を含むことができる。作動インタフェース２２２は、制御インタフェース２０４の実装形態と同様の技術および手法で実施され得る。
【００４６】
[0053]  ロボットシステム１００は、構造的部材の操縦するためなどの、作業１１８と動作とを実行するために使用されるセンサ読取り値２４６を取得するように構成されたセンサユニット２３０を備え得る。センサ読取り値２４６は、センサユニット２３０によって取得された情報またはデータであり得て、センサユニット２３０の目的は、ロボットシステム１００の環境における事象や変化を検出し、その情報をロボットシステム１００の構成要素、外部デバイス、またはそれらの組み合わせに向けて送信して、作業１１８を容易にすることである。センサ読取り値２４６は、例えば、デジタル画像またはポイントクラウド／深度図等の画像読取り値を含み得る。センサ読取り値２４６は、さらに、力、トルク、回転、速度、距離、またはそれらの組み合わせの測定値等の定量化された測定値を含み得る。
【００４７】
[0054]  センサユニット２３０は、センサ読取り値２４６の検出または測定用に構成されたデバイスを備えることができる。例えば、センサユニット２３０は、状態、条件、１つまたは複数の構造的な部材もしくは継手の場所、オブジェクトもしくは周囲環境の情報、またはそれらの組み合わせなどの、ロボットシステム１００の１つまたは複数の物理的特性を検出または測定するように構成される。一例として、センサユニット２３０は、撮像デバイス２４０、システムセンサ２４２、接触センサ２４４、またはそれらの組み合わせを含む多様なセンサを備え得る。
【００４８】
[0055]  いくつかの実施形態において、センサユニット２３０は、１つまたは複数の撮像デバイス２４０を備え得る。撮像デバイス２４０は、ロボットシステム１００の周囲環境の捕捉、認識、検出、またはそれらの組み合わせを行うように構成されたデバイスである。例えば、撮像デバイス２４０は、共に、可視および赤外性能を備え得る２次元（２Ｄ）カメラおよび３次元（３Ｄ）カメラ、ライダ、レーダ、他の距離測定、ならびに他の撮像デバイスを含み得る。撮像デバイス２４０は、例えば、自動的な検査、ロボットガイダンス、または他のロボットの応用のためのマシン／コンピュータの視覚を実施するために使用される、デジタル画像またはポイントクラウド／深度図といったロボットシステム１００の環境の表示を生成することができる。
【００４９】
[0056]  いくつかの実施形態において、センサユニット２３０は、システムセンサ２４２を備え得る。システムセンサ２４２は、ロボットシステム１００を監視するように構成されたデバイスである。例えば、システムセンサ２４２は、ロボットシステム１００の構造的な部材（ロボット構成要素およびエンドエフェクタなど）、対応する継手、またはそれらの組み合わせの位置を検出および監視するユニットまたはデバイスを含み得る。さらに別の例として、ロボットシステム１００は、システムセンサ２４２を使用して、作業１１８の実行中、構造的な部材および継手の場所、向き、またはそれらの組み合わせを追跡することができる。システムセンサ２４２の例には、加速度計、ジャイロスコープ、または位置エンコーダが含まれ得る。
【００５０】
[0057]  いくつかの実施形態において、センサユニット２３０は、複数の物理的構造または表面間の直接の接触に関連する特徴を測定するように構成された、圧力センサ、力センサ、歪みゲージ、圧電抵抗性／圧電性センサ、容量性センサ、弾性抵抗センサ、トルクセンサ、直線力センサまたは他の触覚センサ等の、接触センサ２４４を含むことができる。
【００５１】
[0058]  センサユニット２３０は、センサユニットインタフェース２２４を備え得る。センサユニットインタフェース２２４は、センサユニット２３０とロボットシステム１００の他の機能ユニットとの間の通信のために使用することができる。センサユニットインタフェース２２４は、ロボットシステム１００の外部との通信にも使用することができる。センサユニットインタフェース２２４は、ロボットシステム１００の他の機能ユニットまたは外部の送信元から情報を受信したり、あるいは、ロボットシステム１００の他の機能ユニットまたは外部の送信先に向けて情報を送信したりすることができる。
【００５２】
[0059]  センサユニットインタフェース２２４は、センサユニット２３０のインタフェース対象となるロボットシステム１００の機能ユニットまたは外部ユニットによって異なる実装形態を含むことができる。センサユニットインタフェース２２４は、制御インタフェース２０４の実装形態と同様の技術および手法で実施され得る。
【００５３】
[0060]  次に、図３を参照すると、本発明の１つまたは複数の実施形態に係るアームユニット１０２の例が示されている。アームユニット１０２は、ロボットアーム３１０を備え得る。アームユニッ１０２は、さらに、センサユニット２３０、グリップユニット３０６、および１つまたは複数の吸引グリッパ３０８を備えることができる。
【００５４】
[0061]  一実施形態において、センサユニット２３０は、ロボットアーム３１０、グリップユニット３０６、吸引グリッパ３０８、またはそれらの組み合わせに取り付けられ得る。グリップユニット３０６もロボットアーム３１０に取り付けられ得る。吸引グリッパ３０８もまた、グリップユニット３０６に取り付けられて、対象オブジェクト１１２をグリップするように構成され得る。
【００５５】
[0062]  ロボットアーム３１０は、グリップユニット３０６、吸引グリッパ３０８、センサユニット２３０、またはそれらの組み合わせを介して対象オブジェクト１１２の操縦を可能にするように機能する。ロボットアーム３１０は、ロボットアーム３１０の機械的な小区分である１つまたは複数のアーム部分３１４を備えることができ、これらは全体としてロボットアーム３１０を構成する。一実施形態において、ロボットアーム３１０は、アーム部分３１４に接続する１つまたは複数の機械式の構造継手３１２も備え得る。構造継手３１２は、アーム部分３１４どうしを互いに接続し、アーム部分３１４、グリップユニット３０６、センサユニット、またはそれらの組み合わせの回転運動および並進運動を可能にし得る回動中心として作用することができる。一実施形態において、構造継手３１２は、アーム部分３１４、グリップユニット３０６、センサユニット２３０、またはそれらの組み合わせを操縦するように構成される運動連鎖を形成することができる。
【００５６】
[0063]  一実施形態において、アームユニット１０２は、構造継手３１２、アーム部分３１４、グリップユニット３０６、センサユニット２３０、またはそれらの組み合わせを、構造継手３１２を中心に、構造継手３１２において、または構造継手３１２に接続されて、駆動または操縦するように構成された作動ユニット２２０も備え得る。作動ユニット２２０は、構造継手３１２、アーム部分３１４、グリップユニット３０６、吸引グリッパ３０８、センサユニット２３０、またはそれらの組み合わせに、回転運動および並進運動を実行させるか、または回転運動および並進運動を受けさせるように機能する。一実施形態において、作動ユニット２２０は、構造継手３１２、アーム部分３１４、グリップユニット３０６、吸引グリッパ３０８、またはそれらの組み合わせに組み込まれ得る。別の実施形態では、作動ユニット２２０は、構造継手３１２、アーム部分３１４、グリップユニット３０６、吸引グリッパ３０８、またはそれらの組み合わせの外部にあってもよい。
【００５７】
[0064]  アームユニット１０２は、センサユニット２３０も備え得る。一実施形態において、センサユニット２３０は、センサ読取り値２４６を検出または測定するように構成されたデバイスを備えることができる。例えば、アームユニット１０２は、図２のシステムセンサ２４２のような、ロボットシステム１００の１つまたは複数の物理的特性を検出および測定するように構成されたデバイスを備え得る。物理的特性の例には、構造継手３１２の状態、条件、もしくは場所、アーム部分３１４の場所、グリップユニット３０６の場所、吸引グリッパ３０８の状態、またはそれらの組み合わせが含まれ得る。システムセンサ２４２を使用して、構造継手３１２の場所、アーム部分３１４の場所、グリップユニット３０６の場所、またはそれらの組み合わせを検出することができる。ロボットシステム１００は、作業１１８の実行中、システムセンサ２４２を使用して、構造継手３１２、アーム部分３１４、グリップユニット３０６、またはそれらの組み合わせの場所および向きを追跡し、センサ読取り値２４６をオブジェクト追跡データ２２８の一部として保存することができる。
【００５８】
[0065]  また、例えば、センサユニット２３０は、さらに、図２の一つ又は複数の撮像デバイス２４０を備えてもよい。撮像デバイス２４０は、例えば、自動的な検査、ロボットガイダンス、または他のロボットの応用のためのマシンまたはコンピュータの視覚を実施するためにさらに使用され得る、デジタル画像またはポイントクラウド／深度図などの検出環境の表示を生成することができる。ロボットシステム１００は、このデジタル画像またはポイントクラウド／深度図を記憶および処理して、対象オブジェクト１１２の操縦または搬送を、識別し、把握し及び容易にすることができる。一実施形態において、デジタル画像またはポイントクラウド／深度図は、ストレージユニット２０６に記憶され得る。
【００５９】
[0066]  例えば、一実施形態において、センサユニット２３０は、トラックの内部、コンテナの内部、あるいは対象オブジェクト１１２のピックアップ位置といった指定エリア１１４の画像を捕捉し、ロボットシステム１００は、その画像を記憶することができる。同様に、センサユニット２３０は、対象オブジェクト１１２をコンベアベルト上に配置するためのドロップ場所、対象オブジェクト１１２をコンテナ内に配置するための場所、または対象オブジェクト１１２をスタックするためのパレット上の場所といった、指定エリア１１４または作業場所１１６の他の例もしくは場所の画像を捕捉し、ロボットシステム１００はその画像を記憶することができる。
【００６０】
[0067]  別の実施形態において、さらに、センサユニット２３０を使用して対象オブジェクト１１２を識別することができる。例えば、センサユニット２３０は、対象オブジェクト１１２の画像、対象オブジェクト１１２を収容するコンテナの画像、またはそれらの組み合わせを捕捉し、ロボットシステム１００はその画像を記憶して、どのタイプの対象オブジェクト１１２であるかを決定することによって、ロボットシステム１００は、吸引グリッパ３０８を使用してどのように対象オブジェクト１１２を操縦、グリップ、および搬送するかを決定することができる。
【００６１】
[0068]  別の実施形態では、センサユニット２３０は、さらに、図２の接触センサ２４４を備えてもよい。接触センサ２４４は、対象オブジェクト１１２に対する吸引グリッパ３０８のグリップに対応する特徴を測定することができる。したがって、接触センサ２４４は、吸引グリッパ３０８と対象オブジェクト１１２との間の吸着に対応する、例えば測定された力、トルク、または位置等の定量化された測定値を表す接触測定値３２０を出力することができる。例えば、接触測定値３２０には、吸引グリッパ３０８によって対象オブジェクト１１２に加えられた力に関連した１つまたは複数の力、トルク、または圧力の読取り値が含まれ得る。
【００６２】
[0069]  一実施形態において、ロボットシステム１００は、対象オブジェクト１１２のグリップ、再グリップ、移動、またはそれらの組み合わせを含む接触測定値３２０に基づいて、作業１１８を達成する異なるアクションを実施するための命令を生成することができる。例えば、この命令には、接触測定値３２０の初期値が力閾値３２２を上回るまたは下回る値であった場合に、アームユニット１０２に対象オブジェクト１１２をグリップまたは再グリップさせるための命令が含まれ得る。また、命令には、作業１１８中に、アームユニット１０２に意図的に対象オブジェクト１１２をドロップさせたり、アーム部分３１４、グリップユニット３０６、吸引グリッパ３０８、またはそれらの組み合わせの場所を調整させたりするための命令が含まれ、さらには、作業１１８の実行中に、接触測定値３２０が力閾値３２２を下回ったまたは上回った場合に、作業１１８中のアーム部分３１４の速度、加速度またはそれらの組み合わせをさらに調整する命令が含まれ得る。
【００６３】
[0070]  力閾値３２２は、対象オブジェクト１１２のグリップが作業１１８を達成するために維持されることができるか否かを決定するために、ロボットシステム１００またはロボットシステム１００の１つまたは複数の構成要素が、対象オブジェクト１１２に対する１つまたは複数の力、トルク、または圧力の読取り値を比較する条件のことを指す。力閾値３２２は、ロボットシステムのユーザによってあらかじめ決められ、ロボットシステム１００が対象オブジェクト１１２をグリップするために使用する吸引グリッパ３０８のサイズおよび材質組成に基づいて変わり得る。
【００６４】
[0071]  大きい表面積を覆う吸引グリッパ３０８を使用することで、より大きい力で対象オブジェクト１１２を保持することができ、それゆえこのような吸引グリッパ３０８に関連する力閾値３２２は、より小さい表面積を覆う吸引グリッパよりも値が大きくなり得ることがわかった。吸引グリッパ３０８に関するさらなる詳細と、力閾値３２２がどのように使用されるかについて、以下に説明する。
【００６５】
[0072]  アームユニット１０２は、グリップユニット３０６も備えることができる。グリップユニット３０６は、吸引グリッパ３０８と共に、引力により対象オブジェクト１１２のグリップを容易にするように構成されることができ、かかる引力はグリップユニット３０６、吸引グリッパ３０８、またはそれらの組み合わせと、対象オブジェクト１１２との間に真空状態を形成および維持することによって達成される。例えば、グリップユニット３０６は、対象オブジェクト１１２の表面と接触し、対象オブジェクト１１２の表面との間の空間に真空状態を形成するように構成された吸引グリッパ３０８を備え得る。グリップユニット３０６および吸引グリッパ３０８の構成について、以下にさらに詳細に説明する。
【００６６】
[0073]  真空状態は、グリップユニット３０６がロボットアーム３１０を介して下降され、それにより吸引グリッパ３０８が対象オブジェクト１１２の表面に押し付けられ、吸引グリッパ３０８と対象オブジェクト１１２の対向面どうしの間の空気や気体が押し出されることによって生成される。一実施形態において、吸引グリッパ３０８は、ロボットシステム１００が対象オブジェクト１１２に対するグリップが確立されたと決定するまで対象オブジェクト１１２の表面に押し付けられ得る。例えば、対象オブジェクト１１２の表面に対する押し付けを停止するタイミングを決定するためには、一実施形態では、接触センサ２４４が、吸引グリッパ３０８と対象オブジェクト１１２の表面との間の圧力を示す接触測定値３２０を生成することができる。ロボットシステム１００は、接触測定値３２０を力閾値３２２と比較し、接触測定値３２０が力閾値３２２以上であるか否かを決定することができる。接触測定値３２０が力閾値３２２以上である場合、ロボットシステム１００は、吸引グリッパ３０８が対象オブジェクト１１２に対するグリップを維持するのに対象オブジェクト１１２に十分に押し付けられていると決定することができる。
【００６７】
[0074]  グリップが確立されると、アームユニット１０２は対象オブジェクト１１２を持ち上げようと試みることができる。ロボットアーム３１０がグリップユニット３０６を持ち上げると、接触センサ３２０は、さらに、吸引グリッパ３０８の内部空間と周囲環境との間の圧力差を測定し、対象オブジェクト１１２が吸引グリッパ３０８に吸着した状態を維持するのに十分な圧力であるか否かを決定することができる。したがって、グリップユニット３０６および吸引グリッパ３０８の対象オブジェクト１１２に対するグリップまたは吸着の程度は、適切に真空状態を生成して保持することができる吸引グリッパ３０８の数に基づき得る。
【００６８】
[0075]  一実施形態において、グリップユニット３０６は吸引グリッパ３０８を備えることができる。吸引グリッパ３０８は、空気または水の流体負圧を使用して、非多孔質表面に付着して真空状態を生成する機械的デバイスである。吸引グリッパ３０８は、引力を介して対象オブジェクト１１２を保持または固定するように構成される。吸引グリッパ３０８は、遠位端に取り付けられた１つまたは複数の吸引カップ３２４を備えることができ、吸引カップ３２４は、対象オブジェクト１１２の表面に接触し、吸引カップ３２４と対象オブジェクト１１２の表面との間の空間内の真空状態を保持するように構成され得る。
【００６９】
[0076]  吸引カップ３２４は、面、縁、またはある角度３３８に沿って対象オブジェクト１１２の表面に接触することができる。さらに、角度３３８で対象オブジェクト１１２の表面に接触する能力により、吸引グリッパ３０８は、移動または変位した後、一辺が水平面に対して角度３３８で（例えば、対象オブジェクト１１２が内部または上部に配置された容器の底面と平行な平面に沿って）静止している対象オブジェクト１１２をグリップすることができる。
【００７０】
[0077]  吸引カップ３２４が角度３３８で対象オブジェクト１１２に対するグリップを維持する能力は、吸引カップ３２４のサイズに依存することが分かった。例えば、吸引カップ３２４は、サイズが大きいほど、大きい角度３３８で対象オブジェクト１１２をグリップすることができる。
【００７１】
[0078]  吸引カップ３２４は、多様な形状およびサイズに応じて実施され得る。吸引カップ３２４は、さらに、さまざまな材料から作られ得る。例えば、一実施形態では、吸引カップ３２４は、円形として実施され、対象オブジェクト１１２をピックアップする時に、吸引カップ３２４が撓んだり曲がったりすることができるような、プラスチック、シリコーン、ニトリル、バイトン、ビニル、ウレタン、ゴムを含む可撓性材料から作られ得る。
【００７２】
[0079]  吸引カップ３２４によって加えられる力は、吸引カップ３２４のサイズおよび形状と相関性があり、吸引カップ３２４が大きいほど、吸引グリッパ３０８、吸引カップ３２４、またはそれらの組み合わせによって対象オブジェクト１１２に加えられる力が大きくなることが分かった。さらに、吸引カップ３２４の力は、この吸引カップ３２４によって覆われる有効表面積と直接的に相関することが分かっており、この相関関係は、以下の式によって特徴付けられる。
[0080]
Ｆ＝（ΔＰ）（Ａ）                                          （１）
【００７３】
[0081]  上記式において、「Ｆ」は、真空状態を介して吸引カップ３２４によって加えられる力を表し、「ΔＰ」は、大気圧と、吸引カップ３２４と対象オブジェクト１１２との間の真空圧との差を表し、「Ａ」は、吸引カップ３２４によって覆われる有効表面積を表している。したがって、例えば、吸引カップ３２４が例えば円形として実施される実施形態では、吸引カップ３２４の直径が大きいほど、対象オブジェクト１１２に対して大きい力を加えることができる。
【００７４】
[0082]  さらに、吸引カップ３２４のサイズおよび形状は、この吸引カップ３２４が対象オブジェクト１１２をグリップする能力に影響することも分かった。例えば、吸引カップ３２４は、サイズが大きいほど、小さい力が加えられた場合に簡単に曲がったり、割れたり、あるいは破損したりするような脆い材料または脆い膜を含む表面を有する対象オブジェクト１１２をグリップするには適さない。これは、吸引カップ３２４は、その直径が大きいほど、対象オブジェクト１１２に加える力が大きくなるため、結果として、対象オブジェクト１１２の表面を破損させ得るためである。
【００７５】
[0083]  また、吸引カップ３２４の材料組成は、吸引カップ３２４が対象オブジェクト１１２をグリップする能力に影響することもわかった。例えば、吸引カップ３２４を可撓性または軟質にする材料から作られている吸引カップ３２４は、この可撓性または軟質の特徴によって、対象オブジェクト１１２の表面に対して撓んだり、曲がったりして、対象オブジェクト１１２に対してよりきついグリップを提供することができるため、例えば袋などの展性のあるオブジェクトをグリップする用途によりふさわしい。
【００７６】
[0084]  一実施形態において、アームユニット１０２は、さらに、グリップユニット３０６、吸引グリッパ３０８、またはそれらの組み合わせに取り付けられて真空状態を生成する真空ホース（図示無し）および真空ジェネレータ（図示無し）を備え得る。例えば、一実施形態において、センサユニット２３０によって吸引カップ３２４と対象オブジェクト１１２の表面との間の接触が検出されると、真空ジェネレータは、ロボットシステム１００によって作動され、吸引カップ３２４と対象オブジェクト１１２の表面との間から空気を抜き取り、真空状態を生成することができる。その結果、吸引グリッパ３０８と対象オブジェクト１１２の表面との間の空気圧は、吸引グリッパ３０８と対象オブジェクト１１２の表面との間の環境の外側よりも低くなるため、大気圧によって対象オブジェクト１１２を吸引グリッパ３０８に対して保持することができる。真空ジェネレータとしては、例えば、吸引カップ３２４と対象オブジェクト１１２の表面との間の空気を抜き取って真空状態を生成することができるような、真空エジェクタ、ブロワ、またはポンプが含まれ得る。
【００７７】
[0085]  一実施形態において、真空ジェネレータは、空気が抜き取られる速度を調整または変えて、真空状態の強さを変えられるようにしてもよい。したがって、空気が抜き取られる速度が速いほど、吸引カップ３２４と対象オブジェクト１１２の表面との間の真空圧と大気圧との差は大きくなり、より強い真空状態が生成される。さらに、真空状態は、吸引カップ３２４の大きさによっても変わり得る。例えば、吸引カップ３２４によって覆われる表面積が大きいほど、真空ジェネレータによってより速い速度で空気が抜き取られた際の真空状態がより強くなる。
【００７８】
[0086]  一実施形態において、グリップユニット３０６は、センサユニット２３０を備えることができる。例えば、グリップユニット３０６は、接触測定値３２０を決定するように構成された接触センサ２４４を備え得る。接触センサ２４４は、グリップユニット３０６、吸引グリッパ３０８、またはそれらの組み合わせの対象オブジェクト１１２に対する吸着を表すものとして接触測定値３２０を生成し得る。一実施形態では、接触センサ２４４は、ある表面が別の表面に接触しているか否かを示すように構成されたタッチセンサまたは触覚センサを備え、別の表面に接触している表面のサイズを決定するように構成され得る。また、接触センサ２４４は、圧力、例えば、吸引グリッパ３０８と対象オブジェクト１１２の表面との間の真空状態を測定するように構成された圧力センサを備えることができる。また、接触センサ２４４は、吸引グリッパ３０８によって運搬または支持されている対象オブジェクト１１２の重量を測定するように構成された直線力センサを備えてもよい。
【００７９】
[0087]  さらに、接触センサ２４４は、吸引グリッパ３０８、グリップユニット３０６、ロボットアーム３１０、またはそれらの組み合わせに対するトルクまたは力のモーメントを測定するように構成されたトルクセンサを備えることができる。完全にグリップされた状態と比較して、例えば、いくつかの吸引グリッパ３０８（例えば、周辺部に配置された吸引グリッパ３０８）が吸引状態を保持することができない場合など、トルクまたは力のモーメントの測定値が変化（例えば増加または減少）することがある。
【００８０】
[0088]  トルク測定値は、さらに、作業１１８の実行中に、アームユニット１０２の速度３４０および加速度３４２を決定する際に使用することができる。例えば、一実施形態において、吸引グリッパ３０８がグリップされている対象オブジェクト１１２を一点（例えばグリップされている対象オブジェクト１１２の質量中心２３６または他の点）でグリップし、作業１１８の実行を始めた時、トルクセンサは、以下の式を使用して対象オブジェクト１１２に対するトルクまたは力のモーメントを測定することができる。
[0089]  Ｔ＝（Ｆ）（ｄ）                                （２）
【００８１】
[0090]  上記式において、「Ｔ」は、対象オブジェクト１１２に対するトルクまたは力のモーメントを表し、「Ｆ」は、対象オブジェクト１１２の回転動作の結果、対象オブジェクト１１２に加わる力を表し、「ｄ」は、点（例えば、グリップされる対象オブジェクト１１２の質量中心２３６または他の点）から回動中心（例えば、対象オブジェクト１１２の回転の中心となる構造継手３１２）までの距離を表す。
【００８２】
[0091]  ロボットシステム１００は、トルク測定値「Ｔ」と、例えば吸引カップ３２４が対象オブジェクト１１２を保持する際の最大の力の量を表し得る力閾値３２２とを比較することができる。この比較に基づいて、ロボットシステム１００は、対象オブジェクト１１２を落下させることなく作業１１８が正常に実行されているか否かを決定することができる。さらに、トルク測定値に基づいて、ロボットシステム１００は、アームユニット１０２の速度３４０および加速度３４２を対象オブジェクト１１２に対するトルクの影響を打ち消すように調整することによって、対象オブジェクト１１２に加わるトルクを補償することができる。一例として、一実施形態では、トルク測定値が力閾値３２２よりも大きい場合、吸引グリッパ３０８が対象オブジェクト１１２に対するグリップを失うことになるため、ロボットシステム１００は、例えばアームユニット１０２の速度３４０および加速度３４２を落とすことによってアームユニット１０２の速度３４０および加速度３４２を調整してトルクを低減させ、グリッパ３０８、吸引カップ３２４、またはそれらの組み合わせが対象オブジェクト１１２に対するグリップを維持することができるようにし、対象オブジェクト１１２を落下させることなく運ぶことができる。
【００８３】
[0092]  接触センサ２４４のタイプと場所に応じて、接触測定値３２０は、それぞれの吸引グリッパ３０８に関する、例えば、内圧、直線力、トルク、またはそれらの組み合わせの測定値の合計または平均値に対応し得る。一実施形態において、グリップユニット３０６、吸引グリッパ３０８、またはそれらの組み合わせに取り付けられた接触センサ２４４は、吸引グリッパ３０８によって運搬されている重量に関連するゼロではない読取り値を決定することができる。そのような重量は、直線力またはトルクに対応しており、対象オブジェクト１１２の移送を含む作業１１８を行うことができるように、吸引グリッパ３０８が対象オブジェクト１１２を十分にグリップしているか否かを決定するために使用することができる。
【００８４】
[0093]  別の実施形態において、接触センサ２４４は、さらに、吸引グリッパ３０８に対応する真空力を決定することができる。真空力が力閾値３２２以上である場合、接触センサ２４４は、吸引グリッパ３０８に関連したゼロではない読取り値を登録し、グリップユニット３０６および吸引グリッパ３０８が対象オブジェクト１１２に対しグリップを有すると決定することができる。
【００８５】
[0094]  一実施形態において、接触センサ２４４によって決定されるように、真空力、直線力、またはそれらの組み合わせが力閾値３２２を下回るなど、吸引グリッパ３０８がグリップを失った場合、接触センサ２４４は、そのグリップの失敗に起因するゼロ読取り値またはゼロではない読取り値を決定することができる。さらに、力の不均一な分布により、グリップユニット３０６、吸引グリッパ３０８、またはそれらの組み合わせに関連付けられたトルクセンサは、ゼロではない読取り値を決定し得る。
【００８６】
[0095]  一実施形態において、ロボットシステム１００が吸引グリッパ３０８にグリップの失敗があることを決定した場合、制御ユニット２０２、通信ユニット２１２、センサユニット２３０、またはそれらの組み合わせは、ロボットシステム１００のユーザ、ロボットシステム１００の他の機能ユニット、またはそれらの組み合わせに対して、対象オブジェクト１１２のグリップの失敗があることを通知する。その結果、ロボットシステム１００のユーザまたは他の機能ユニットは、その失敗の原因を決定することによって問題に対処するか、あるいは、対象オブジェクト１１２の最較正、再構成、または再グリップを試みることができる。
【００８７】
[0096]  一実施形態において、吸引グリッパ３０８の全てが対象オブジェクト１１２に対するグリップまたは真空状態を確立および維持している場合、直線力、真空力、またはそれらの組み合わせは、全ての吸引グリッパ３０８において、ゼロではない大きさを有しており、直線力、真空力、またはそれらの組み合わせ間のずれは比較的小さい範囲内になる。さらに、全吸引グリッパ３０８にわたり、重量が実質的に均一に分布しているため、グリップユニット３０６、吸引グリッパ３０８、またはそれらの組み合わせにおいて測定されたトルクは、ゼロ値に近くなる。したがって、直線力、真空力、トルクの読取り値、またはそれらの組み合わせにおけるずれは、グリップの強度を反対に表し得る。したがって、ロボットシステム１００は、接触測定値３２０の上記例を、グリップユニット３０６、吸引グリッパ３０８、吸引カップ３２４、またはそれらの組み合わせによる対象オブジェクト１１２に対するグリップを表すものとして使用することができる。
【００８８】
[0097]  一実施形態において、吸引グリッパ３０８、吸引カップ３２４、またはそれらの組み合わせのいくつかが対象オブジェクト１１２のグリップに失敗する一方、他の吸引グリッパ３０８、吸引カップ３２４、またはそれらの組み合わせが対象オブジェクト１１２に対するグリップまたは真空状態を確立および維持している場合、接触センサ２４４は、グリップまたは真空状態を維持している吸引グリッパ３０８のそれらの例からのグリップが、対象オブジェクト１１２の安定性を維持して対象オブジェクト１１２に対する操縦、搬送、またはその他の作業１１８を実行するのに十分であるか否かを、直線力、真空力、またはそれらの組み合わせを考慮して決定することができる。例えば、対象オブジェクト１１２が安全に操縦または搬送されることができるように、トルク測定値がゼロ読取り値かゼロ読取り値に近い値である間に、接触センサ２４４は、直線力、真空力、測定されたトルク、またはそれらの組み合わせが加えられたオブジェクトの重量を力閾値３２２と比較して、直線力および真空力が力閾値３２２以上であるか否かを決定することができる。
【００８９】
[0098]  また、例えば、ロボットシステム１００は、グリップユニット３０６および対象オブジェクト１１２の様々な向きに応じて予測される読取り値を変換または移行するために、参照テーブルもしくは変換テーブル、データベース、式、プロセス、またはそれらの組み合わせをさらに使用することができる。いくつかの実施形態において、マスタデータ２２６、構成データ２４８、またはそれらの組み合わせは、グリップユニット３０６および対象オブジェクト１１２の様々な向きの各々に関し、予測される読取り値を含むことができる。ロボットシステム１００は、予測される読取り値を使用して、グリップユニット３０６および対象オブジェクト１１２の向きに応じて、接触測定値３２０を評価または処理することができる。
【００９０】
[0099]  吸引グリッパ３０８は、グリップユニット３０６の遠位端に沿って、レイアウト３０２に従って実施され得る。レイアウト３０２は、吸引グリッパ３０８、吸引カップ３２４、またはそれらの組み合わせが配置される態様を指す。レイアウト３０２は、線形、長方形、円形、三角形、正方形、またはそれらの組み合わせを含む、多様な形状および向きに従って実施され得る。例えば、一実施形態では、レイアウト３０２は、グリップユニット３０６の遠位端において、第１の方向３２８に沿ってｘ個の吸引グリッパ３０８、および、第１の方向３２８に垂直な垂直方向３２２に沿ってｙ個の吸引グリッパ３０８がある長方形の格子として実施され得る。結果として、吸引グリッパは、ｘ×ｙ個の長方形の格子を形成することができる。一例として、図３に示す実施形態では、レイアウト３０２は、第１の方向３２８に沿って２つの吸引カップ３２４の例、および、垂直方向３３２に沿って２つの吸引カップ３２４がある２×２の正方形の格子として示されている。他の実施形態では、吸引カップ３２４の数を増やして、正方形の格子のサイズを変えたり、あるいは長方形の格子を形成したりすることもできる。
【００９１】
[0100]  別の実施形態において、レイアウト３０２は、グリップユニット３０６の中心から等距離に同じ数の吸引グリッパ３０８が配置された円形構成で実施されてもよい。別の実施形態では、レイアウト３０２は、グリップユニット３０６の遠位端において、各線がその他の２本の線と角度３３８で接する３本の直線に沿って吸引グリッパ３０８が位置決めされる三角形構成で実施されてもよい。以下の記載は単なる例であり、他のレイアウト３０２の構成を使用することもできる。
【００９２】
[0101]  吸引グリッパ３０８は、上述したようなレイアウト３０２と、対象オブジェクト１１２をグリップするために使用される吸引グリッパ３０８の数とに基づいて、個別で、グループもしくはサブグループとして、または全てを一括して制御されることができる。ロボットシステム１００は、作動ユニット２２０、真空ホース、真空ジェネレータ、またはそれらの組み合わせを制御することにより、吸引グリッパ３０８を制御することができる。一実施形態において、作動ユニット２２０、真空ホース、真空ジェネレータ、またはそれらの組み合わせは、各吸引グリッパ３０８に対して個別に、または、複数の吸引グリッパ３０８のグループに対して取り付けられ得る。作動ユニット２２０、真空ホース、真空ジェネレータ、またはそれらの組み合わせによって、吸引グリッパ３０８にその機能を実行させること、例えば、吸引グリッパ３０８の機械的運動を引き起こして、対象オブジェクト１１２上に押し下げてグリップを確立させて、対象オブジェクト１１２に対するグリップを維持または確立するために必要な吸引および真空状態を生成することができる。
【００９３】
[0102]  例えば、一実施形態において、ロボットシステム１００は、作動ユニット２２０、真空ホース、真空ジェネレータ、またはそれらの組み合わせをＯＮまたはＯＦＦにし、作動ユニット２２０、真空ホース、真空ジェネレータ、またはそれらの組み合わせが対象オブジェクト１１２上に押し下げられて、グリップを確立し、かつ対象オブジェクト１１２のグリップの維持または確立に必要な吸引および真空状態を生成することができるようにすることによって、作動ユニット２２０、真空ホース、真空ジェネレータ、またはそれらの組み合わせを制御することができる。その結果、ロボットシステム１００は、吸引グリッパ３０８が対象オブジェクト１１２をグリップするための精度を制御することができる。
【００９４】
[0103]  吸引グリッパ３０８は、さらに、吸引グリッパ３０８の数およびレイアウト３０２に基づいて制御され得る。例えば、一実施形態において、ロボットシステム１００は、吸引グリッパ３０８の数およびレイアウト３０２に基づいて、吸引グリッパ３０８を、個別に、グループもしくはサブグループとして、または全てを一括して制御するための１つまたは複数のグリップパターン３３０を生成することができる。グリップパターン３３０は、対象オブジェクト１１２をグリップするために使用可能な吸引グリッパ３０８の構成を指す。ロボットシステム１００のオンライン状態の間、グリップパターン３３０を使用して、対象オブジェクト１１２をグリップすること、および、図１の作業１１８を実行することができる。
【００９５】
[0104]  例えば、一実施形態において、グリップパターン３３０は、作動ユニット２２０、真空ホース、真空ジェネレータ、またはそれらの組み合わせのそれぞれのＯＮ／ＯＦＦ状態の２進表現として表すことができる。その結果、作動ユニット２２０、真空ホース、真空ジェネレータ、またはそれらの組み合わせの各状態は、「ＯＮ」または「ＯＦＦ」を表す「１」または「０」として表すことができる。吸引グリッパ３０８の数およびレイアウト３０２に基づいて、ロボットシステム１００は、以下の式を使用して吸引グリッパ３０８の「ＯＮ」および「ＯＦＦ」状態の組み合わせの数を計算することができる。
[0105]
Ｃ＝（Ｓ）ｎ                                                （３）
【００９６】
[0106]  上記式において、「Ｃ」は、吸引グリッパ３０８に関する組み合わせの数を表し、「Ｓ」は、作動ユニット２２０、真空ホース、真空ジェネレータ、またはそれらの組み合わせのそれぞれの状態の数を表し、「ｎ」は、吸引グリッパ３０８の数を表す。一例として、吸引グリッパ３０８が２×２の正方形として配置されている場合、ロボットシステム１００は、吸引グリッパ３０８について、Ｃ＝（２）４すなわち１６通りのグリップパターン３３０を演算することができる。一実施形態において、グリップパターン３３０は、参照テーブル３３４として表すことができる。参照テーブル３３４は、グリップパターン３３０のアレイまたはマトリックス表示であり得る。例えば、参照テーブル３３４は、例えば、［１００１］、［００００］および［０００１］などの２進コード３３６として表されたグリップパターン３３０の値を有し得る。２進コード３３６は、どの吸引グリッパ３０８がＯＮまたはＯＦＦにされるかを表し得る。例えば、一実施形態において、２進コード３３６の１つの値［００００］は、全ての吸引グリッパ３０８がＯＦＦであることを示す一方、２進コード３３６の別の値［１１１１］は、全ての吸引グリッパ３０８がＯＮであることを示すことができる。
【００９７】
[0107]  一実施形態において、グリップパターン３３０は、前もって演算され、構成データ２４８の一部として記憶され、ロボットシステム１００が吸引グリッパ３０８のレイアウト３０２の特定の例に対して利用可能な数のグリップパターン３３０を持つように構成されてもよい。グリップパターン３３０は、作業１１８の実行中に、対象オブジェクト１１２をグリップするために使用することができる。グリップパターン３３０を使用して対象オブジェクト１１２をグリップする態様について、以下にさらに詳細に説明する。
【００９８】
[0108]  次に、図４を参照すると、本発明の一実施形態におけるロボットシステム１００の動作段階の例示的な制御フローが図示されている。一実施形態において、ロボットシステム１００は、事前構成設定状態４０２およびオンライン状態４０６を含む、２つの段階で動作され得る。図４に示す実施形態は、事前構成設定状態４０２がロボットシステム１００のオンライン状態４０６での動作に先立って実行されることを想定しているが、この動作の順序は、単なる例であり、他の実施形態では、事前構成設定状態４０２は、オンライン状態４０６と並行またはリアルタイムで実行されてもよい。リアルタイムとは、製造、組立、パッキング、パッケージング、倉庫業務および輸送のシナリオ中に、ロボットシステム１００のパラメータ、変数、図２の構成データ２４８、またはそれらの組み合わせが製造、組立、パッキング、パッケージング、倉庫業務および輸送のシナリオ中に決定されるように、ロボットシステム１００が使用される例を指す。
【００９９】
[0109]  事前構成設定状態４０２は、ロボットシステム１００のパラメータ、変数、構成データ２４８、またはそれらの組み合わせが決定される動作モードである。パラメータ、変数、構成、またはそれらの組み合わせには、任意の閾値または設定（例えば、図１の対象オブジェクト１１２に対して図１の作業１１８を実行するために必要な、図１のアームユニット１０２、グリップユニット３０６、吸引グリッパ３０８、センサユニット２３０、またはそれらの組み合わせに関連した設定）が含まれ得る。
【０１００】
[0110]  例えば、一実施形態において、事前構成設定状態４０２は、吸引制御パターン生成機構４０４を含むことができる。吸引制御パターン生成機構４０４は、例えば、図３のグリップユニット３０６、図３の吸引グリッパ３０８、図２のセンサユニット２３０、またはそれらの組み合わせに関連したパラメータ、変数、構成データ２４８、またはそれらの組み合わせを決定することができる。ロボットシステム１００は、図２および３に示されるロボットシステム１００の多様な機能ユニット、ロボットシステム１００の外部の１つまたは複数の構成要素、またはそれらの組み合わせを使用して、吸引制御パターン生成機構４０４を実施することができる。外部の構成要素とは、ロボットシステム１００の外部にある構成要素を指す。吸引制御パターン生成機構４０４の実施について、以下にさらに詳細に説明する。
【０１０１】
[0111]  オンライン状態４０６は、製造、組立、パッキング、パッケージング、倉庫業務および輸送のシナリオ中においてロボットシステム１００が対象オブジェクト１１２に対して作業１１８を実行している時に、ロボットシステム１００が使用される動作モードである。オンライン状態４０６の間に、ロボットシステム１００は、事前構成設定状態４０２中に決定されたロボットシステム１００のパラメータ、変数、構成データ２４８、またはそれらの組み合わせを使用して、対象オブジェクト１１２に対して作業１１８を実行することができる。オンライン状態４０６の実施について、以下にさらに詳細に説明する。
【０１０２】
[0112]  事前構成設定状態４０２およびオンライン状態４０６は、図２の制御ユニット２０２、ロボットシステム１００の他の機能ユニット、またはそれらの組み合わせによって実行され得る、図２のソフトウェア２０２もしくは図２のストレージユニット２０６に記憶された命令のセットに基づいて実施され得る。
【０１０３】
[0113]  次に、図５を参照すると、本発明の一実施形態に係る吸引制御パターン生成機構４０４の例示的な制御フローが示されている。ロボットシステム１００は、図１のロボットシステム１００の図２および３に示される多様な機能ユニット、ロボットシステム１００の外部の１つまたは複数の構成要素、またはそれらの組み合わせを使用して、吸引制御パターン生成機構４０４を実施することができる。
【０１０４】
[0114]  一実施形態において、吸引制御パターン生成機構４０４は、グリップパターン３３０を生成するように構成され得る。吸引制御パターン生成機構４０４は、さらに、ロボットシステム１００が図４のオンライン状態４０６において対象オブジェクト１１２に遭遇する前に、図１の対象オブジェクト１１２を認識し、対象オブジェクト１１２に関連したグリップ点５１８の１つまたは複数の場所をテストするように構成され得る。グリップ点５１８の１つまたは複数の場所をテストすることによって、吸引制御パターン生成機構４０４は、オンライン状態４０６中にどのように対象オブジェクト１１２を取り扱うかを決定することができる。吸引制御パターン生成機構４０４は、さらに、グリップ点５１８に基づいて、対象オブジェクト１１２に対してどのグリップパターン３３０を使用すべきかを決定するように構成され得る。グリップ点５１８とは、図３の吸引グリッパ３０８、図３の吸引カップ３２４、またはそれらの組み合わせによってグリップされることが可能な対象オブジェクト１１２の表面上のエリアを指す。
【０１０５】
[0115]  一実施形態において、吸引制御パターン生成機構４０４は、グリップパターン生成モジュール５１０、スキャンモジュール５０２、グリップ点マッピングモジュール５０８、外部ユニット５１４、評価モジュール５１２、およびストレージユニット２０６を使用して実施することができる。一実施形態において、スキャンモジュール５０２は、グリップ点マッピングモジュール５０８に接続され得る。グリップ点マッピングモジュール５０８は、評価モジュール５１２に接続され、任意で、ストレージユニット２０６および外部ユニット５１４にも接続され得る。評価モジュール５１２は、、グリップパターン生成モジュール５１０およびストレージユニット２０６に接続され得る。グリップパターン生成モジュール５１０は、ストレージユニット２０６と、任意で外部ユニット５１４に接続され得る。
【０１０６】
[0116]  グリップパターン生成モジュール５１０は、図３を参照して説明した態様でのグリップパターン３３０の生成を可能にし得る。グリップパターン生成モジュール５１０は、さらに、グリップパターン箇所５３０の生成を可能にし得る。グリップパターン箇所５３０は、図３のレイアウト３０２において、吸引グリッパ３０８が均一な力の分布を対象オブジェクト１１２に加えることができる位置を指す。対象オブジェクト１１２は、グリップパターン箇所５３０を使用してグリップされ得る。グリップパターン箇所５３０は、グリップパターン３３０、吸引カップ３２４の物理的特性、またはそれらの組み合わせを含む多くの変数に基づいて変わり得る。一実施形態において、グリップパターン箇所５３０は、グリップパターン３３０のレイアウト３０２および吸引カップデータ５３４に基づいて決定され得る。
【０１０７】
[0117]  吸引カップデータ５３４は、吸引カップ３２４の物理的特性を特徴付け得る変数、パラメータ、閾値、またはそれらの組み合わせを指す。例えば、吸引カップデータ５３４には、１つまたは複数の吸引カップ３２４によって保持することができる最大重量、吸引カップ３２４の可撓性の程度、引張り強度、摩擦係数、サイズ、またははそれらの組み合わせに関するデータが含まれ得る。吸引カップデータ５３４は、ロボットシステム１００によって把握され、ストレージユニット２０６、外部ユニット５１４、またはそれらの組み合わせに記憶され得る。
【０１０８】
[0118]  外部ユニット５１４は、ロボットシステム１００の外部にあるストレージを指す。ストレージユニット２０６と同様に、外部ユニット５１４は、揮発性メモリ、不揮発性メモリ、内部メモリ、外部メモリ、またはそれらの組み合わせであってよい。例えば、外部ユニット５１４は、不揮発性ランダムアクセスメモリ（ＮＶＲＡＭ）、フラッシュメモリ、ディスクストレージなどの不揮発性メモリ、静的ランダムアクセスメモリ（ＳＲＡＭ）などの揮発性ストレージであり得る。別の実施形態では、外部ユニット５１４は、データベースまたは参照テーブルであってもよい。
【０１０９】
[0119]  さらに例を挙げると、グリップパターン箇所５３０がグリップパターン３３０および吸引カップデータ５３４に基づいて決定される実施形態では、グリップパターン箇所５３０は、吸引カップ３２４が保持することができる力の量、および、レイアウト３０２における吸引カップ３２４の位置に基づいて具体的に決定され得る。グリップパターン生成モジュール５１０は、１つまたは複数の吸引カップ３２４によって保持され得る最大重量を示す変数、パラメータ、またはそれらの組み合わせを取得することによって、グリップパターン箇所５３０を決定することができる。この最大重量に基づいて、グリップパターン生成モジュール５１０は、吸引カップ３２４が最も均一に最大重量を分布させることができるデフォルト位置として吸引カップ３２４の幾何学的中心５４２を設定することができる。１つの吸引カップ３２４のみがＯＮにされて対象オブジェクト１１２をグリップするグリップパターン３３０の構成では、グリップパターン生成モジュール５１０は、この吸引カップ３２４の幾何学的中心５４２をグリップパターン箇所５３０に割り当てることができる。幾何学的中心５４２は、全座標軸方向における吸引カップ３２４の全ての点の平均位置を指す。
【０１１０】
[0120]  吸引グリッパ３０８の複数の例を使用して対象オブジェクト１１２をグリップする実施形態では、グリップパターン生成モジュール５１０は、吸引カップ３２４の幾何学的中心５４２および重み係数５３６を考慮した加重平均に基づいて、グリップパターン箇所５３０を決定することができる。重み係数５３６は、吸引カップ３２４が対象オブジェクト１１２に対して作用させることができる力の量に基づいて、グリップパターン生成モジュール５１０によって吸引カップ３２４に割り当てられるパラメータを指す。重み係数５３６は、ロボットシステム１００のユーザによって予め決定することができる。
【０１１１】
[0121]  例えば、一実施形態において、吸引カップ３２４が保持することができる重量が大きいほど、大きな重み係数５３６が吸引カップ３２４に割り当てられる。別の実施形態では、吸引カップ３２４が覆うことができる表面積が大きいほど、大きな重み係数５３６が吸引カップ３２４に割り当てられる。その結果、グリップパターン生成モジュール５１０は、どの吸引カップ３２４が対象オブジェクト１１２に最も大きな力を加えるかに基づいてグリップパターン箇所５３０を演算し、吸引カップ３２４の複数の例を有するシナリオにおいて、グリップパターン箇所５３０を吸引カップ３２４の近くに位置決めすることができる。
【０１１２】
[0122]  一例として、レイアウト３０２が２×２の正方形格子であり、全ての吸引カップ３２４が同一の最大重量を保持することができ、かつ同一のサイズである実施形態では、グリップパターン箇所５３０は、正方形の四辺のそれぞれから同一距離にある、正方形格子の中心に位置する点にあると決定され得る。別の例として、レイアウト３０２が２×２の正方形格子であり、吸引カップ３２４は、サイズが異なるものの同一の最大重量を保持することができる場合、グリップパターン箇所５３０は、より大きいサイズの吸引カップ３２４に近い点に割り当てられ得る。結果として、ロボットシステム１００は、均一な態様、または均一に近い態様で、対象オブジェクト１１２に力を分布させることができる。
【０１１３】
[0123]  グリップパターン箇所５３０で対象オブジェクト１１２をグリップすると、対象オブジェクト１１２全体にわたり最も均一に力を分布させることができるため、グリップパターン箇所５３０に基づく対象オブジェクト１１２のグリップは、最も安定した対象オブジェクト１１２のグリップ手段を提供することがわかった。さらに、グリップパターン箇所５３０に基づいて対象オブジェクト１１２をグリップしつつ、この対象オブジェクト１１２に対して作業１１８を実行することにより、対象オブジェクト１１２の落下がより少なくなることもわかった。
【０１１４】
[0124]  一実施形態において、グリップパターン生成モジュール５１０は、グリップパターン３３０のそれぞれについて、グリップパターン箇所５３０を生成することができる。結果として、グリップパターン生成モジュール５１０は、グリップパターン３３０と、関連したグリップパターン箇所５３０の例とのインデックス５３８を生成することができる。インデックス５３８は、アレイ、参照テーブル、またはグリップパターン３３０と関連したグリップパターン箇所５３０の例との組合せを指す。一実施形態において、グリップパターン３３０、グリップパターン箇所５３０、およびインデックス５３８が生成されると、これらは、更なる処理のために評価モジュール５１２に送られ得る。評価モジュール５１２について、以下にさらに詳細に説明する。
【０１１５】
[0125]  スキャンモジュール５０２は、例えば２次元（２Ｄ）カメラ、３次元（３Ｄ）カメラ、赤外線カメラ、ライダ、レーダ、他の距離測定もしくは撮像デバイス、またはそれらの組み合わせといった撮像デバイスの１つまたは複数を含む、図２のセンサユニット２３０による機能のスキャンまたは撮像を可能にし得る。例えば、スキャンモジュール５０２は、対象オブジェクト１１２の周囲環境を検出して、デジタル画像、ポイントクラウド／深度図、またはそれらの組み合わせを含むスキャン画像５０４を撮影し、対象オブジェクト１１２、対象オブジェクト１１２のグリップ点５１８、またはそれらの組み合わせを識別するように構成され得る。スキャン画像５０４を使用して、対象オブジェクト１１２のどこをグリップすべきかを決定する際に使用され得る対象オブジェクト１１２のデジタルモデル５４０を生成することができる。
【０１１６】
[0126]  デジタルモデル５４０は、対象オブジェクト１１２の物理的特徴を含む、スキャンされた環境の物理的特徴のコンピュータ表現である。デジタルモデル５４０は、対象オブジェクト１１２をシミュレートすることができる。デジタルモデル５４０は、コンピュータファイル、フォーマット、データ構造、またはそれらの組み合わせとして表すことができる。
【０１１７】
[0127]  一実施形態において、対象オブジェクト１１２は、例えば、ロボットシステム１００が遭遇していない、またはロボットシステム１００が把握していないオブジェクトであり得るため、ロボットシステム１００にとって未知の物理的特徴を有する場合がある。物理的特徴には、形状、サイズ、寸法、厚さ５２２、組成５０６、表面外形５２０、またはそれらの組み合わせが含まれ得る。
【０１１８】
[0128]  スキャンモジュール５０２は、対象オブジェクト１１２の撮像を可能にすることによって、センサユニット２３０が、対象オブジェクトの物理的な寸法、形状、高さ、幅、深さ、またはそれらの組み合わせを含む、対象オブジェクト１１２の物理的特徴に関する、図２のセンサ読取り値２４６を生成することができるようにし得る。これらのセンサ読取り値２４６は、スキャン画像５０４内に示され得る。
【０１１９】
[0129]  さらに別の実施形態では、スキャンモジュール５０２は、センサユニット２３０や、Ｘ線機械またはスペクトロメータを含む他の外部デバイスと共に、対象オブジェクト１１２の組成５０６をさらに示すスキャン画像５０４を生成し、このスキャン画像５０４が対象オブジェクト１１２の組成５０６に関する詳細を含むことができるようにしてもよい。組成５０６は、対象オブジェクト１１２の物理的構成、化学的構成またはそれらの組み合わせを指す。ロボットシステム１００は、対象オブジェクト１１２の組成５０６に基づいて識別されたグリップ点５１８において吸引グリッパ３０８によって加えられ得る力またはグリップを決定し、作業１１８中に対象オブジェクト１１２が損傷しないように、あるいは対象オブジェクト１１２がグリップされ得るグリップ点５１８を選択するように、釣り合った量の力がグリップ点５１８にて加えられるようにすることもできる。組成５０６の識別は、さらに、対象オブジェクト１１２をグリップすることができない場所を決定するのに使用することもできる。
【０１２０】
[0130]  例えば、対象オブジェクト１１２の表面の組成５０６が、この表面を構成する材料が不可逆的な塑性変形または破壊を受けないようにするには、図３の力閾値３２２以下の力にしか耐えることができないと識別された場合、ロボットシステム１００は、グリップ点５１８のその場所を使用すべきか否かを決定すること、あるいは、対象オブジェクト１１２が損傷しないようなグリップ点５１８の別の場所を識別することができる。ロボットシステム１００は、また、組成５０６の識別に基づいて、グリップ点５１８に加えられる力または真空状態を調整することもできる。例えば、一実施形態において、対象オブジェクト１１２の表面の組成５０６が、この表面を構成する材料が不可逆的な塑性変形または破壊を受けないようにするには、力閾値３２２以下の力にしか耐えることができないと識別された場合、ロボットシステム１００は、作動ユニット２２０によって加えられる力または真空状態を調整して、この力が力閾値３２２未満になるようにすることを決定することができる。一実施形態では、スキャンモジュール５０２は、スキャン画像５０４、デジタルモデル５４０、またはそれらの組み合わせを、生成され次第、さらなる処理のためにグリップ点マッピングモジュール５０８に引き渡すことができる。
【０１２１】
[0131]  グリップ点マッピングモジュール５０８は、スキャン画像５０４、デジタルモデル５４０、またはそれらの組み合わせに基づいて、対象オブジェクト１１２のグリップ点５１８の識別を可能にし得る。グリップ点マッピングモジュール５０８は、スキャン画像５０４を処理し、オブジェクトデータ５１６に基づいて分析を実行することにより、グリップ点５１８を識別することができる。オブジェクトデータ５１６は、オブジェクトもしくは形状の既知の物理特性、材料の既知の特性、またはそれらの組み合わせを表すデータを指す。例えば、オブジェクトデータ５１６には、オブジェクトもしくは形状に関連した式、オブジェクトもしくは形状に関する既知の原子構造、既知のナノ構造、既知のマイクロ構造、、既知のマクロ構造、既知の結合特性、既知の動態、既知の結晶構造、既知の機械的特性等の既知の特性、またはそれらの組み合わせが含まれ得る。一実施形態において、オブジェクトデータ５１６は、外部ユニット５１４に記憶され得る。グリップ点マッピングモジュール５０８は、通信ユニット２１２を介して外部ユニット５１４と通信し、オブジェクトデータ５１６を検索することができる。別の実施形態では、オブジェクトデータ５１６は、ロボットシステム１００のマスタデータ２２６の一部として、ストレージユニット２０６に記憶されてもよい。
【０１２２】
[0132]  一実施形態において、グリップ点マッピングモジュール５０８は、例えば、スキャン画像５０４、デジタルモデル５４０、またはそれらの組み合わせ内の形状を、オブジェクトデータ５１６の一部であり得る既知の形状のセットと比較することによりスキャン画像５０４、デジタルモデル５４０、またはそれらの組み合わせによって示された幾何学的形状を決定することで、分析を実行することができる。この比較に基づき、グリップ点マッピングモジュール５０８によって、幾何学的形状が対象オブジェクト１１２の形状と一致するか、ほぼ一致すると認識された場合、グリップ点マッピングモジュール５０８は、一致した幾何学的形状もしくはオブジェクトと関連したオブジェクトデータ５１６に基づいて、分析を実行することができる。
【０１２３】
[0133]  グリップ点マッピングモジュール５０８は、例えば、オブジェクトまたは形状に関する表面積を決定するための式に基づいて、幾何学的形状に関する表面積、図２の質量中心２３６、またはそれらの組み合わせを計算するなど、幾何学的形状の物理的特徴を決定することができる。幾何学的形状の物理的特徴に基づいて、グリップ点マッピングモジュール５０８は、対象オブジェクト１１２に対するグリップ点５１８を決定することができる。
【０１２４】
[0134]  一実施形態において、グリップ点マッピングモジュール５０８は、質量中心２３６（推定される質量中心２３６でもよい）に基づいて、グリップ点５１８を決定することができる。グリップ点マッピングモジュール５０８は、対象オブジェクト１１２に対するグリップ点５１８を、対象オブジェクト１１２の質量中心２３６に近い表面上の点として識別することができる。その結果、グリップ点マッピングモジュール５０８は、対象オブジェクト１１２が、確実に、質量が均一に分布された状態でグリップされるようにすることができる。
【０１２５】
[0135]  一実施形態において、グリップ点マッピングモジュール５０８は、さらに、質量中心２３６に加えて他の要因も考慮して、グリップ点５１８を識別することができる。例えば、一実施形態では、グリップ点マッピングモジュール５０８は、さらに、対象オブジェクト１１２の表面の平坦性または曲率を含む表面外形５２０、対象オブジェクト１１２の表面の厚さ５２２、対処オブジェクト１１２の表面の組成５０６、対象オブジェクト１１２の表面積、またはそれらの組み合わせを考慮して、グリップ点５１８を識別することができる。
【０１２６】
[0136]  例えば、一実施形態では、グリップ点マッピングモジュール５０８は、対象オブジェクト１１２の質量中心２３６を識別することができる。さらに、グリップ点マッピングモジュール５０８は、質量中心２３６に最も近い特定の表面が十分に平坦な表面ではなく（例えば、この表面が曲率または不均一性を有する）、その結果、吸引グリッパ３０８がこの表面に関連したグリップ点５１８をグリップすることができないこと、あるいは、表面積が吸引グリッパ３０８によってグリップするには小さすぎることも決定することができる。そして、グリップ点マッピングモジュール５０８は、さらに、質量中心２３６に近い表面上であって、吸引グリッパ３０８が対象オブジェクト１１２をグリップすることができるグリップ点５１８の１つまたは複数の別の場所を識別することができる。そのような別の場所は、例えば、対象オブジェクト１１２の角（あるいは、「角グリップ」）にある場所、対象オブジェクト１１２の面上の場所、または対象オブジェクト１１２に沿った任意の他の表面に沿った場所であり得る。その結果、グリップ点マッピングモジュール５０８は、グリップが達成できるような、質量中心２３６に最も近い点を識別するように試みるが、その点でグリップが達成できない場合には、対象オブジェクト１１２をグリップするために対象オブジェクト１１２の角に沿った場所など、グリップ点５１８の異なる場所を決定することができる。
【０１２７】
[0137]  別の実施形態では、グリップ点マッピングモジュール５０８は、スキャン画像５０４、デジタルモデル５４０、またはそれらの組み合わせによって決定された、対象オブジェクト１１２の表面の組成５０６、および、オブジェクトの既知の材料特性をさらに考慮することができる。例えば、一実施形態では、グリップ点５１８が、脆弱な材料から成る表面であって、損傷を受けないようにするには力閾値３２２よりも大きな力を加えることができない対象オブジェクト１１２の表面上にあることが識別された場合、グリップ点マッピングモジュール５０８は、そのグリップ点５１８を使用するべきか否かを決定すること、または、吸引グリッパ３０８が対象オブジェクト１１２をグリップすることができる、質量中心２３６に近いグリップ点５１８の他の場所をさらに識別することができる。そのような別の場所は、例えば、対象オブジェクト１１２の角（あるいは、「角グリップ」）にある場所、対象オブジェクト１１２の面上の場所、または、対象オブジェクト１１２に沿った任意の他の表面に沿った場所であり得る。
【０１２８】
[0138]  一実施形態において、グリップ点マッピングモジュール７０８が、スキャン画像５０４、デジタルモデル５４０、またはそれらの組み合わせと既知の形状またはオブジェクトのセットとの比較に基づいて対象オブジェクト１１２に対する一致を発見することができない場合、ロボットシステム１００のユーザは、さらに、対象オブジェクト１１２のグリップ点５１８を設定することにより、グリップ点５１８を識別することの補助をすることができる。ロボットシステム１００のユーザは、例えばディスプレイインタフェース２１８上のユーザインタフェース２１６を使用して、スキャン画像５０４、デジタルモデル５４０、またはそれらの組み合わせを分析することによりグリップ点５１８を指定し、吸引グリッパ３０８が対象オブジェクト１１２をグリップするための最適位置がどの位置であるかを決定することができる。一実施形態では、ロボットシステム１００のユーザは、ユーザインタフェース２１６の入力デバイスを使用してグリップ点５１８を設定することができる。
【０１２９】
[0139]  一実施形態において、グリップ点マッピングモジュール５０８は、グリップ点５１８のランク付け順位５２４を生成することができる。ランク付け順位５２４は、対象オブジェクト１１２をグリップするために最も好適なグリップ点５１８の場所を示す、アレイ、参照テーブル、またはそれらの組み合わせであり得る。グリップ点５１８は、質量中心２３６からの距離、対象オブジェクト１１２の表面の組成５０６、グリップユニット３０６によってグリップすることが可能な表面積、またはそれらの組み合わせを含む、多数の要因に基づいて、最も好適なものから最も不適なものまでがランク付けされ得る。
【０１３０】
[0140]  例えば、一実施形態において、グリップ点５１８は、対象オブジェクト１１２の質量が均一に分布される場合に、最も安定して対象オブジェクト１１２をグリップするため、質量中心２３６に近いグリップ点５１８ほど、ランク付け順位５２４において高くランク付けされる。しかし、グリップ点マッピングモジュール５０８が、例えば、表面積が小さすぎること、吸引グリッパ３０８が角度３３８でグリップすることができないこと、吸引グリッパ３０８が力閾値３２２より大きい力を加えることになる結果、対象オブジェクト１１２の表面が破損することになるために、表面の組成５０６が脆すぎて吸引グリッパ３０８によってグリップされないこと、またはそれらの組み合わせ等の理由から、質量中心２３６に近い対象オブジェクト１１２の表面に沿って識別されたグリップ点５１８を使用することができないと決定した場合、グリップ点マッピングモジュール５０８はそのようなグリップ点５１８をランク付け順位５２４においてより低いランキングを有する点として割り当てることができる。より具体的な例を挙げると、グリップ点マッピングモジュール５０８は、対象オブジェクト１１２をグリップするために識別することができるグリップ点５１８の他の場所を決定し、そのグリップ点５１８の他の場所に対して、ランク付け順位５２４におけるより高いランキングを与えることができる。そのような他の場所は、例えば、対象オブジェクト１１２の角にある場所（あるいは、「角グリップ」）、対象オブジェクト１１２の面上の場所、または対象オブジェクト１１２に沿った任意の他の表面に沿った場所であり得る。
【０１３１】
[0141]  その結果、グリップ点マッピングモジュール５０８は、対象オブジェクト１１２の所与の例に対して、最も好適なグリップ点５１８の例を決定することができる。別の実施形態では、ロボットシステム１００のユーザは、グリップ点マッピングモジュール５０８によって決定された１つまたは複数のランキングを無効にしてランク付け順位５２４を決定することができる。別の実施形態では、ユーザは、グリップ点５１８のランク付け順位５２４を設定することができる。
【０１３２】
[0142]  上述したようにグリップ点５１８を識別すること、ランク付け順位５２４を生成すること、またはそれらの組み合わせによって、ロボットシステム１００に、対象オブジェクト１１２をグリップするべきグリップ点５１８の好適な場所のリストを提供することができることがわかった。さらに、ランク付け順位５２４により、ロボットシステム１００は、対象オブジェクトの向きまたは環境条件にかかわらず、対象オブジェクト１１２をグリップすることができるように、対象オブジェクト１１２をグリップするための複数のフォールバックグリップ点を備えることができる。
【０１３３】
[0143]  一実施形態において、グリップ点５１８が決定されると、グリップ点５１８、ランク付け順位５２４、またはそれらの組み合わせは、評価モジュール５１２に引き渡され得る。評価モジュール５１２は、グリップ点５１８をグリップパターン３３０にマッピングし、グリップパターンランク５２８を決定することができる。グリップパターンランク５２８は、グリップパターン３３０のどの構成を使用して対象オブジェクト１１２をグリップすべきかを示すアレイ、参照テーブル、またはそれらの組み合わせであり得る。
【０１３４】
[0144]  評価モジュール５１２は、多様な方法での、グリップ点５１８のグリップパターン３３０へのマッピング、グリップパターンランク５２８の決定、またはそれらの組み合わせを可能にする。例えば、一実施形態において、評価モジュール５１２は、グリップパターン３３０のそれぞれに対して、グリップ点５１８をグリップパターン箇所５３０に位置合わせすることによって、グリップ点５１８がグリップパターン３３０の特定の構成によってグリップされることができるか否かを決定することができる。別の例では、評価モジュール５１２は、吸引グリッパ３０８、吸引カップ３２４、またはそれらの組み合わせの全てもしくは大半を使用して対象オブジェクト１１２をグリップするためのグリップパターン箇所５３０と関連したグリップパターン３３０の例があるか否かを決定することができる。例えば、評価モジュール５１２は、グリップ点５１８の特定の例において、対象オブジェクト１１２をグリップするために全ての吸引グリッパ３０８が使用できるわけではないことを決定した場合、評価モジュール５１２は、そのグリップ点５１８の特定の場所に対するグリップパターン３３０の特定の構成に対して、グリップパターンランク５２８の低い値を割り当て、グリップ点５１８の特定の場所において対象オブジェクト１１２をグリップするために使用することができるグリップパターン３３０の他の例を検索することができる。しかし、評価モジュール５１２が、グリップ点５１８の特定の場所において、対象オブジェクト１１２をグリップするために１つまたは複数のグリップパターン３３０の例を使用することができると決定した場合は、評価モジュール５１２は、グリップ点５１８の特定の場所におけるグリップのために、グリップパターンランク５２８のより高い値を有するグリップパターン３３０を割り当てることができる。
【０１３５】
[0145]  別の実施形態において、評価モジュール５１２は、対象オブジェクト１１２をグリップすることができる吸引カップ３２４を有する吸引グリッパ３０８に基づいて、グリップパターンランク５２８を決定することができる。例えば、一実施形態では、吸引グリッパ３０８の複数の例を使用して対象オブジェクト１１２をグリップすることができる。別の例では、吸引グリッパ３０８は、吸引カップ３２４の２つ以上の例を有する。具体的には、例として、複数の吸引カップ３２４が異なる材料、異なるサイズ、またはそれらの組み合わせから形成されて、このことが、吸引カップ３２４が対象オブジェクト１１２をグリップする能力に影響することがある。評価モジュール５１２は、対象オブジェクト１１２をグリップするのに適さない（例えば、対象オブジェクト１１２の重量を支えることができない）吸引カップ３２４を使用したグリップパターン３３０に対して、グリップパターンランク５２８のより低い値を割り当てることができる。
【０１３６】
[0146]  別の実施形態において、評価モジュール５１２は、ユーザの嗜好に応じてグリップパターンランク５２８を決定することができる。例えば、ロボットシステム１００のユーザは、対象オブジェクト１１２をグリップする際に使用することが可能な、グリップパターン３３０の例、吸引グリッパ３０８の例、またはそれらの組み合わせを設定することができる。評価モジュール５１２は、ユーザが好むグリップパターン３３０の例に対して、グリップパターンランク５２８のより高い値を割り当てることができる。
【０１３７】
[0147]  マッピングに基づいて、評価モジュール５１２は、グリップ点５１８および関連したグリップパターン３３０の例の全てに対して、グリップパターンランク５２８を決定することができる。一実施形態において、グリップパターンランク５２８が生成されると、このグリップパターンランク５２８がストレージユニット２０６に保存され得る。グリップパターンランク５２８は、オンライン状態４０６ロボットシステム１００によって、対象オブジェクト１１２をグリップするのに使用され得る。
【０１３８】
[0148]  本明細書に記載する吸引制御パターン生成機構４０４を実施するロボットシステム１００は、生成されたグリップパターンランク５２８により、対象オブジェクト１１２がグリップされるべきグリップ点５１８およびグリップパターン３３０の最適な例のリストが提供されるため、対象オブジェクト１１２をグリップする際の制御を強化することができることが分かった。さらに、制御の強化により、対象オブジェクト１１２をグリップする際の落下が少なくなることも分かった。
【０１３９】
[0149]  さらに、本明細書に記載する吸引制御パターン生成機構４０４を実施するロボットシステム１００は、ロボットシステム１００の能力に基づくより優れた設定可能性（configurability）およびカスタマイゼーションを備え、識別された対象オブジェクト１１２がその個別の物理的特性に応じてグリップされることができるように、対象オブジェクト１１２の各例に対して、個別に設定されたグリップパターン３３０の構成を生成することが分かった。
【０１４０】
[0150]  さらに、本明細書に記載する吸引制御パターン生成機構４０４を実施するロボットシステム１００は、ロボットシステム１００が対象オブジェクト１１２をグリップするためのいくつかの選択肢を有するように、カスタマイズされたグリップパターン３３０の構成を生成する能力に基づいて、より高い確率で対象オブジェクト１１２をグリップすることができることが分かった。
【０１４１】
[0151]  吸引制御パターン生成機構４０４は、一例としてのモジュール機能や順序で説明した。ロボットシステム１００は、上記とは異なる態様で、モジュールを分けたり、モジュールを順序付けたりしてもよい。例えば、ソフトウェア２１０は、吸引制御パターン生成機構４０４のためのモジュールを含むことができる。具体的な例として、ソフトウェア２１０は、グリップパターン生成モジュール５１０、スキャンモジュール５０２、グリップ点マッピングモジュール５０８、評価モジュール５１２、および、これらに含まれた関連のサブモジュールを含むことができる。
【０１４２】
[0152]  図２の制御ユニット２０２は、ソフトウェア２１０を実行してモジュールを動作させることができる。例えば、制御ユニット２０２は、ソフトウェア２１０を実行して、グリップパターン生成モジュール５１０、スキャンモジュール５０２、グリップ点マッピングモジュール５０８、評価モジュール５１２、および、これらに含まれた関連のサブモジュールを実施することができる。
【０１４３】
[0153]  本出願に記載されるモジュールは、制御ユニット２０２によって実行される非一時的なコンピュータ可読媒体に記憶された命令として実施され得る。非一時的なコンピュータ可読媒体は、ストレージユニット２０６を含み得る。非一時的なコンピュータ可読媒体は、ハードディスクドライブ、不揮発性ランダムアクセスメモリ（ＮＶＲＡＭ）、固体記憶装置（ＳＳＤ）コンパクトディスク（ＣＤ）、デジタルビデオディスク（ＤＶＤ）、またはユニバーサルシリアルバス（ＵＳＢ）フラッシュメモリデバイスなどの不揮発性メモリを含み得る。非一時的なコンピュータ可読媒体は、ロボットシステム１００の一部として一体化されていてもよく、またはロボットシステム１００から取り外し可能な部分としてインストールされていてもよい。
【０１４４】
[0154]  次に、図６を参照すると、本発明の１つまたは複数の実施形態に従ってグリップ点５１８をグリップパターン３３０へマッピングする例が示されている。図６は、図５の評価モジュール５１２が、グリップパターン３３０のそれぞれについて、グリップ点５１８をグリップパターン箇所５３０に位置合わせし、吸引グリッパ３０８、吸引カップ３２４、またはそれらの組み合わせの全てまたは大半を対象オブジェクト１１２のグリップに使用することができるグリップパターン箇所５３０に関連したグリップパターン３３０が存在するか否かを決定することにより、グリップ点５１８がグリップパターン３３０の特定の構成によってグリップされ得るか否かを決定する実施形態を示している。図６は、さらに、レイアウト３０２が２×２の正方形であり、吸引カップ３２４が多様なサイズである実施形態を示している。図６は、説明の便宜上の図示にすぎない。レイアウト３０２およびグリップパターン３３０の他の例を使用してもよい。
【０１４５】
[0155]  図６に示すように、マッピングは、対象オブジェクト１１２の質量中心２３６において対象オブジェクト１１２をグリップしようと試みることによって開始することができる。質量中心２３６が禁止領域６０２（例えば、対象オブジェクト１１２の表面を構成する材料の組成５０６が、ベースラインと比較して、グリップするには脆すぎるため、または、図５を参照して説明した任意の他の理由のため、グリップすることができない当該表面上の点またはエリア）に位置している場合、評価モジュール５１２は、対象オブジェクト１１２がレイアウト３０２およびグリップパターン３３０に従ってグリップすることができるように、対象オブジェクト１１２の表面に沿って質量中心２３６から離れたグリップ点５１８を決定することができる。評価モジュール５１２は、グリップパターン箇所５３０を、対象オブジェクト１１２の質量中心２３６から離れ、潜在的にグリップが可能なグリップ点５１８に位置合わせするためのオフセット６０４を決定することができる。オフセット６０４は、評価モジュール５１２がグリップパターン箇所５３０を質量中心２３６から離れて移動させる分の距離を指す。例えば、図６において、評価モジュール５１２は、グリップパターン箇所５３０を、グリップすることが可能な１つまたは複数のグリップ点５１８の潜在的な位置として決定された位置「Ａ」に決定することができる。評価モジュール５１２は、１つまたは複数のグリップ点５１８をテストして、これらのグリップ点５１８がグリップパターン３３０に従ってグリップされることができるか否かを決定することができる。１つまたは複数のグリップ点５１８がグリップパターン３３０に従ってグリップされ得る場合、評価モジュール５１２は、対象オブジェクト１１２をグリップするためのグリップパターン３３０の好適な例の１つとして、位置「Ａ」をグリップパターンランク５２８として割り当てることができる。
【０１４６】
[0156]  一実施形態において、評価モジュール５１２は、さらに、グリップすることができるグリップ点５１８の他の例を決定することができる。例えば、評価モジュール５１２は、グリップパターン箇所５３０をグリップ点５１８の他の場所へと移動させるためのオフセット６０４を再び決定し、このグリップ点５１８がグリップ可能であるか否かを決定することができる。例えば、図６において、グリップ点５１８が位置「Ｂ」として図示されている。上記同様、位置「Ｂ」のグリップ点５１８がグリップ可能である場合、評価モジュール５１２は、対象オブジェクト１１２をグリップすることができるグリップパターン３３０の他の好適な例の１つとして、位置「Ｂ」をグリップパターンランク５２８に割り当てることができる。一実施形態において、評価モジュール５１２は、上述したのと同様な態様で、グリップ可能なグリップ点５１８を決定し続けることができる。例えば、評価モジュール５１２は、グリップ点５１８の別の場所、例えば位置「Ｃ」へとグリップパターン箇所５３０を移動するためのオフセット６０４を決定することができる。このグリップ点５１８がグリップ可能である場合、評価モジュール５１２は、対象オブジェクト１１２をグリップすることができるグリップパターン３３０の他の好適な例の１つとして、位置「Ｃ」をグリップパターンランク５２８に割り当てることができる。
【０１４７】
[0157]  一実施形態において、評価モジュール５１２が、いずれのグリップ点５１８も、例えば禁止領域６０２の範囲内に入っており、グリップすることができないと決定した場合、評価モジュール５１２は、これらのグリップ点５１８を無視し、かつこれらのグリップ点５１８をグリップパターンランク５２８に含めないようにすることができる。
【０１４８】
[0158]  次に、図７を参照すると、本発明の一実施形態における、図１のロボットシステム１００のオンライン状態４０６の例示的な制御フローが示されている。図７に示す実施形態において、図４および５の吸引制御パターン生成機構４０４は、図１の多様な対象オブジェクト１１２に対する、図３および５のグリップパターン３３０、図５のグリップ点５１８、図５のグリップパターンランク５２８、またはそれらの組み合わせがロボットシステム１００に把握され、図２のマスタデータ２２６の一部として、図２のストレージユニット２０６に記憶されるように実行され得る。
【０１４９】
[0159]  ロボットシステム１００は、図２、３および４のロボットシステム１００の多様な機能ユニット、ロボットシステム１００の外部の１つまたは複数の構成要素、またはそれらの組み合わせを使用して、オンライン状態４０６を実施することができる。一実施形態において、オンライン状態４０６は、スキャンモジュール５０２、オブジェクト識別モジュール７０４、ベースプラン生成モジュール７０６、ベースプラン実行モジュール７０８、確立グリップ測定モジュール７１６、ベースプラン実行継続モジュール７２０、反復カウントモジュール７２２、オブジェクト再グリップモジュール７２４、ベースプラン実行停止モジュール７２６、ストレージユニット２０６、エラー生成モジュール７２８、またはそれらの組み合わせを使用して実施され得る。
【０１５０】
[0160]  一実施形態において、スキャンモジュール５０２は、オブジェクト識別モジュール７０４に接続され得る。オブジェクト識別モジュール７０４は、ベースプラン生成モジュール７０６に接続され得る。ベースプラン生成モジュール７０６は、ベースプラン実行モジュール７０８およびストレージユニット２０６に接続され得る。ベースプラン実行モジュール７０８は、確立グリップ測定モジュール７１６に接続され得る。確立グリップ測定モジュール７１６は、オブジェクト再グリップモジュール７２４、ベースプラン実行継続モジュール７２０、および反復カウントモジュール７２２に接続され得る。ベースプラン実行継続モジュール７２０は、スキャンモジュール５０２に接続され得る。反復カウントモジュール７２２は、オブジェクト再グリップモジュール７２４およびベースプラン実行停止モジュール７２６に接続され得る。ベースプラン実行停止モジュール７２６は、エラー生成モジュール７２８に接続され得る。
【０１５１】
[0161]  図５を参照して説明されたものと同様のスキャンモジュール５０２は、例えば２次元（２Ｄ）カメラ、３次元（３Ｄ）カメラ、赤外線カメラ、ライダ、レーダ、他の距離測定デバイスもしくは撮像デバイス、またはそれらの組み合わせ等の１つまたは複数の撮像デバイスを含む、図２のセンサユニット２３０が、スキャン機能もしくは撮像機能を実行することを可能にし得る。スキャンモジュール５０２は、対象オブジェクト１１２に関して、図１の指定エリア１１４または図１の作業場所１１６のスキャンを可能にし得る。スキャンは、図５を参照して説明したものと同様の技術を使用して行うことができる。そして、スキャンモジュール５０２の実行により、図２のセンサ読取り値２４６（例えば、スキャン画像５０４）の生成を含む、同様の出力が生成され得る。スキャン画像５０４を使用して、オンライン状態４０６において、対象オブジェクト１１２を識別または認識することができる。例えば、スキャンモジュール５０２は、センサユニット２３０を使用して、大箱、パレット、箱、コンベアベルト、トラック、またはそれらの組み合わせ内にある対象オブジェクト１１２のデジタル画像、ポイントクラウド／深度図、またはそれらの組み合わせなどのスキャン画像５０４を生成することができる。一実施形態において、スキャン画像５０４を使用して、ロボットシステム１００のさらなる構成要素によって対象オブジェクト１１２を識別するために使用され得る対象オブジェクト１１２の図５のデジタルモデルを生成することができる。一実施形態では、スキャンが実行されると、例えばスキャン画像５０４、デジタルモデル５４０、またはそれらの組み合わせなどのセンサ読取り値２４６、ならびに制御は、オブジェクト識別モジュール７０４に引き渡され得る。
【０１５２】
[0162]  オブジェクト識別モジュール７０４は、受信したセンサ読取り値２４６（例えば、スキャン画像５０４）に基づいて、対象オブジェクト１１２の識別を可能にし得る。オブジェクト識別モジュール７０４は、スキャン画像５０４内の幾何学的形状を決定し、それら幾何学的形状を既知の形状またはオブジェクトのセットと比較するといった、図５およびグリップ点マッピングモジュール５０８を参照して説明したものと同様のプロセスで対象オブジェクト１１２を認識することができる。この比較に基づいて、対象オブジェクト１１２は幾何学的形状または既知のオブジェクトにマッピングされ得る。一致が見つかった場合、オブジェクト識別モジュール７０４は、どの既知のオブジェクトまたは幾何学的形状に対して対象オブジェクト１１２が認識されたかを示すオブジェクトパラメータ７０２を生成することができる。オブジェクトパラメータ７０２は、対象オブジェクト１１２を既知のオブジェクトまたは幾何学的形状にマッピングするためにオブジェクト識別モジュール７０４によって割り当てられ得る変数、フラグ、またはそれらの組み合わせであり得る。例えば、オブジェクト識別モジュール７０４が、対象オブジェクト１１２を「箱」であると認識した場合、ロボットシステム１００の更なる構成要素が、この対象オブジェクト１１２が「箱」であることを認識することができるように、この「箱」にオブジェクトパラメータ７０２を設定または割り当てることができる。
【０１５３】
[0163]  別の実施形態において、オブジェクト識別モジュール７０４は、対象オブジェクト１１２を識別することが可能な、ロボットシステム１００にとって既知のタグまたはラベルを検索することによって、対象オブジェクト１１２を識別することができる。例えば、タグまたはラベルには、対象オブジェクト１１２を識別することが可能なバーコード、クイックレスポンス（ＱＲ）コード（登録商標）、ロゴ、またはそれらの組み合わせが含まれ得る。タグまたはラベルは、オブジェクトにマッピングまたは関連付けられ、ロボットシステム１００に認識され得る。タグまたはラベルは、スキャンモジュール５０２のスキャン動作の一部としてスキャンされ得るものであり、スキャン画像５０４、デジタルモデル５４０、またはそれらの組み合わせの一部として含まれ得る。図５を参照して説明したものと同様に、一致が見つかった場合、オブジェクト識別モジュール７０４は、対象オブジェクト１１２がどのオブジェクトまたは幾何学的形状として認識されたかを示すオブジェクトパラメータ７０２を生成し、上述したのと同様の態様で、このオブジェクトパラメータ７０２を設定または割り当てることができる。
【０１５４】
[0164]  一実施形態において、オブジェクト識別モジュール７０４が対象オブジェクト１１２を識別すると、オブジェクト識別モジュール７０４は、対象オブジェクト１１２に対して図１の作業１１８を実行するためのベースプラン７３０を生成するために、オブジェクトパラメータ７０２、スキャン画像７０４、またはそれらの組み合わせをベースプラン生成モジュール７０６に引き渡すことができる。ベースプラン生成モジュール７０６は、オブジェクトパラメータ７０２、スキャン画像５０４、またはそれらの組み合わせに基づいて、対象オブジェクト１１２に対して作業１１８を実行するためのベースプラン７３０を生成することができる。
【０１５５】
[0165]  ベースプラン７３０は、対象オブジェクト１１２のグリップ、操縦、搬送、またはそれらの組み合わせなどの作業１１８を実行するために必要な一連の工程を指す。ベースプラン７３０には、対象オブジェクト１１２をグリップし、この対象オブジェクト１１２をある場所から別の場所に搬送するために必要な工程が含まれ得る。例えば、一実施形態において、ベースプラン７３０は、ロボットシステム１００が、スキャン画像５０４に従って現在の場所から別の場所へと対象オブジェクト１１２を選択することを含み得る。
【０１５６】
[0166]  ベースプラン７３０の生成の一部として、ロボットシステム１００は、ベースプラン７３０を実施するために、図３の構造継手３１２、図３のアーム部分３１４、図３のグリップユニット３０６、図３の吸引グリッパ３０８、またはそれらの組み合わせを動作させることになる図２の作動ユニット２２０のための一連のコマンド、設定、またはそれらの組み合わせを計算することができる。一連のコマンド、設定、またはそれらの組み合わせは、１つまたは複数の制約条件、目標、ルール、またはそれらの組み合わせに基づき得る。例えば、ベースプラン生成モジュール７０６は、Ａ＊アルゴリズム、Ｄ＊アルゴリズム、または他の格子ベースの検索を含む１つまたは複数のプロセスを使用して、ピックアップ場所からドロップ場所まで対象オブジェクト１１２を移動するための空間を通る経路を計算することができる。一連のコマンド、設定、またはそれらの組み合わせは、さらなるプロセス、機能、式、変換テーブル、またはそれらの組み合わせを使用して、この経路を、作動ユニット２２０のための一連のコマンドまたは設定に変換させることができる。
【０１５７】
[0167]  ベースプラン７３０の生成には、対象オブジェクト１１２のどの表面または位置が吸引グリッパ３０８、吸引カップ３２４、またはそれらの組み合わせによってグリップされ得るかを決定することも含まれ得る。例えば、一実施形態において、ベースプラン７３０は、対象オブジェクト１１２のどのグリップ点５１８がグリップに利用可能であるか、指定エリア１１４から作業場所１１６に対するグリップ点５１８の場所および向き、対象オブジェクト１１２を囲む他のオブジェクト、またはそれらの組み合わせを決定することを含み得る。この決定は、例えば、グリップ点５１８の特定の場所がグリップできなくなるような、何らかの隣接したオブジェクトまたはグリップ点５１８に近い表面が存在するか否かを決定することによって、行われ得る。
【０１５８】
[0168]  別の実施形態では、上記決定は、例えば、吸引グリッパ３０８、吸引カップ３２４、またはそれらの組み合わせによってグリップ点５１８をグリップすることができなくなるような、対象オブジェクト１１２のグリップ点５１８をブロックする別のオブジェクトまたは表面があるか否かを決定することによって行われ得る。別の実施形態では、上記決定は、例えば、対象オブジェクト１１２がコンテナ、箱、またはパレット内にあり、対象オブジェクト１１２のグリップ点５１８のある場所が、コンテナ、箱、またはパレットのある側からグリップすることができること、コンテナ、箱、またはパレットのその側のグリップ点５１８が対象オブジェクト１１２をグリップするために使用することができること、対象オブジェクト１１２がグリップ点５１８のある場所を使用して、コンテナ、箱、またはパレットに対して角度３３８でグリップされ得ること、またはそれらの組み合わせを決定することによって行われ得る。
【０１５９】
[0169]  別の実施形態では、上記決定は、例えば、対象オブジェクト１１２の向きに基づいて行われ得る。例えば、対象オブジェクト１１２は、その把持可能な表面の１つまたは複数が、ある平面に対して角度３３８になるようにコンテナ、箱、またはパレット内でシフトした場合、ベースプラン生成モジュール７０６は、どのグリップ点５１８が、どのような角度３３８の例でグリップされるべきかを決定することができる。その結果、ベースプラン７３０は、このベースプラン７３０を適切に実施するには対象オブジェクト１１２のどのエリアまたは表面をグリップすることができるかを決定するように、生成され得る。
【０１６０】
[0170]  一実施形態において、ベースプラン生成モジュール７０６は、対象オブジェクト１１２のどのグリップ点５１８が他のオブジェクトによってブロックされるかについての決定に基づいて、グリップパターン３３０の１つまたは複数の例を使用しないことをさらに決定することができる。例えば、一実施形態では、対象オブジェクト１１２のグリップ点５１８の１つまたは複数をブロックする隣接したオブジェクトまたは表面が存在する場合、ベースプラン生成モジュール７０６は、グリップ点５１８の特定の場所に関連したあるグリップパターン３３０が対象オブジェクト１１２をグリップするために使用することができないため、このグリップパターン３３０を使用して対象オブジェクト１１２をグリップすることができないと決定することができる。一実施形態において、例えば、ベースプラン生成モジュール７０６が、表面がブロックされているにもかかわらず、グリップパターン３３０のある例によってグリップすることができると決定した場合、ベースプラン生成モジュール７０６は、グリップパターン３３０の当該例を使用してベースプラン７３０を生成することができる。
【０１６１】
[0171]  同様に、対象オブジェクト１１２が、他のオブジェクトまたは平面に対する角度３３８で、１つまたは複数のグリップ点５１８を有する場合、ベースプラン生成モジュール７０６は、例えばグリップパターン３３０、吸引グリッパ３０８、吸引カップ３２４、またはその組み合わせが角度３３８の特定の例において動作または使用することができないことから、角度３３８の特定の例において対象オブジェクト１１２をグリップするためにグリップパターン３３０のある例を使用することができるか否かを決定することができる。ベースプラン生成モジュール７０６が１つまたは複数のグリップパターン３３０を使用することができないと決定した場合、ベースプラン生成モジュール７０６は、ベースプラン７３０を生成する際にそれらのグリップパターン３３０を無視することができる。
【０１６２】
[0172]  一実施形態において、ベースプラン生成モジュール７０６は、さらに、ベースプラン７３０を生成する際にグリップパターンランク５２８を使用することができる。例えば、ベースプラン生成モジュール７０６は、対象オブジェクト１１２の特定の例に対するグリップパターン３３０のうち最も高くランク付けされた構成を、ベースプラン７３０において使用されるグリップパターン３３０として割り当てることにより、グリップパターンランク５２８を使用してベースプラン７３０を生成することができる。ベースプラン生成モジュール７０６が、１つまたは複数のグリップパターン３３０を使用することができないと決定した場合、ベースプラン生成モジュール７０６は、それらのグリップパターン３３０の例をベースプラン７３０から除外することができるが、それでもなお、グリップパターンランク５２８のうち、次に高いランクが付けられた利用可能なグリップパターン３３０の構成およびグリップ点５１８を、対象オブジェクト１１２をグリップするためのベースプラン７３０で使用されるグリップパターンランク５２８において割り当てることにより、グリップパターンランク５２８を維持することができる。
【０１６３】
[0173]  ベースプラン生成モジュール７０６がベースプラン７３０を生成すると、制御およびベースプラン７３０は、ベースプラン実行モジュール７０８に引き渡され得る。ベースプラン実行モジュール７０８は、一連のコマンド、設定、またはそれらの組み合わせに従って、作動ユニット２２０およびロボットシステム１００の他の機能ユニットの動作を可能にすることに基づいて、ベースプラン７３０の実施を可能にすることができる。例えば、ベースプラン実行モジュール７０８は、ベースプラン７３０において、第１の組のアクション、コマンド、命令、またはそれらの組み合わせを起動することができる。具体例として、ベースプラン実行モジュール７０８は、作動ユニット２２０の動作を可能にし、グリップユニット３０６、吸引グリッパ３０８、またはそれらの組み合わせを、対象オブジェクト１１２をグリップするための、場所にまたは開始場所における向きで配置することができる。一実施形態において、開始位置は、例えば、対象オブジェクト１１２の質量中心２３６におけるグリップ点５１８にデフォルト設定することができる。対象オブジェクト１１２をベースプラン７３０に従ってグリップすることができない場合、ベースプラン実行モジュール７０８は、作動ユニット２２０が、ベースプラン７３０に従って対象オブジェクト１１２をグリップすることができる次の利用可能な表面に移動することを可能にし得る。
【０１６４】
[0174]  ベースプラン実行モジュール７０８は、作動ユニット２２０の動作を可能にして、グリップユニット３０６、吸引グリッパ３０８、吸引カップ３２４、またはそれらの組み合わせに対象オブジェクト１１２に関与または対象オブジェクト１１２をグリップさせることができる。対象オブジェクト１１２は、評価モジュール５１２によって予め決定されたように、グリップパターンランク５２８およびグリップパターン３３０に従って関与またはグリップされ得る。
【０１６５】
[0175]  一実施形態において、ベースプラン実行モジュール７０８は、ベースプラン７３０の実行を監視することができる。例えば、ベースプラン７３０を実施している間に、ベースプラン実行モジュール７０８が、対象オブジェクト１１２の表面の１つをグリップまたは関与することができない、またはベースプラン７３０において対象オブジェクト１１２をグリップするために割り当てられたグリップパターン３３０の１つを使用することができないと決定した場合、ベースプラン実行モジュール７０８は、グリップパターン３３０およびグリップパターンランク５２８を巡回し(cycle through)、対象オブジェクト１１２に関与または対象オブジェクト１１２をグリップするために使用可能なグリップパターン３３０の他の例を見つけることができる。
【０１６６】
[0176]  一実施形態において、ベースプラン実行モジュール７０８は、さらに、一定数のグリップアクションを追跡するために使用される反復カウンタ７３２を設定、再設定、または初期化することができる。反復カウンタ７３２は、ベースプラン実行モジュール７０８が作動ユニット２２０の動作を可能にして対象オブジェクト１１２をグリップしようと試みた回数を追跡し続けるために使用されるパラメータまたは変数であり得る。例えば、対象オブジェクト１１２の最初のグリップを実行する時、ベースプラン実行モジュール７０８は、反復カウンタ７３２を「１」の値に設定することができる。「１」の値は、対象オブジェクト１１２をグリップするための最初の試みを指す。反復カウンタ７３２を使用して、ベースプラン７３０の実行を続けるか、またはベースプラン７３０の実行を停止するかを決定することができる。反復カウンタ７３２について、以下により詳細に説明する。
【０１６７】
[0177]  一実施形態において、ベースプラン実行モジュール７０８は、作動ユニット２２０がベースプラン７３０に従って対象オブジェクト１１２に関与および対象オブジェクト１１２をグリップすることできるようにすると、ベースプラン実行モジュール７０８は、さらに、作動ユニット２２０がグリップユニット３０６、吸引グリッパ３０８、またはそれらの組み合わせの移動を可能にすることにより、最初のリフトを実行することができるようにする。対象オブジェクト１１２の関与およびグリップは、図３を参照し、具体的には、グリップユニット３０６、吸引グリッパ３０８、吸引カップ３２４、およびセンサユニット２３０が対象オブジェクト１１２の表面に関与し、対象オブジェクト１１２に対するグリップを確立し、そのグリップが対象オブジェクト１１２をグリップするのに十分であるか否かを測定する動作に関して説明された原理に従って、実行することができる。
【０１６８】
[0178]  一実施形態において、ベースプラン実行モジュール７０８が最初のリフトを可能にすると、反復カウンタ７３２および制御は、確立グリップ測定モジュール７１６に引き渡され、ロボットシステム１００が、対象オブジェクト１１２に対して確立されたグリップ７１０がベースプラン７３０を実施し続けるのに十分であるか否かを決定することができるようになる。
【０１６９】
[0179]  確立グリップ測定モジュール７１６は、図３に示した多様な方法を使用して確立されたグリップ７１０の測定を可能にする。確立されたグリップ７１０は、吸引グリッパ３０８、吸引カップ３２４、またはそれらの組み合わせによって対象オブジェクト１１２に加えられた力およびトルクに関連した量、変数、測定値、またはそれらの組み合わせを指す。確立グリップ測定モジュール７１６は、図３を参照して説明したように、通信ユニット２１２を介してセンサユニット２３０からセンサ読取り値２４６を取得して、最初のリフトの結果として吸引グリッパ３０８、吸引カップ３２４、またはそれらの組み合わせによって対象オブジェクト１１２に加えられている力またはトルクを決定することにより、確立されたグリップ７１０の測定を可能にし得る。確立されたグリップ７１０は、接触測定値３２０の例であり得る。
【０１７０】
[0180]  確立グリップ測定モジュール７１６が対象オブジェクト１１２に加えられている力およびトルクを取得すると、確立グリップ測定モジュール７１６は、吸引グリッパ３０８および吸引カップ３２４によって対象オブジェクト１１２に加えられている力およびトルクが少なくとも図３の力閾値３２２を満たし、その結果、対象オブジェクト１１２が適切にグリップされ且つベースプラン７３０が実行され続けることができるか否かを決定することができる。確立グリップ測定モジュール７１６は、上記決定をするために、図３を参照して説明したのと同一の原理を使用して、力およびトルクを力閾値３２２と比較し、対象オブジェクト１１２に対する作業１１８をベースプラン７３０に従って実行するのに対象オブジェクト１１２が十分にグリップされているか否かを決定することができる。
【０１７１】
[0181]  一実施形態において、例えば、確立グリップ測定モジュール７１６が、力およびトルクを比較した後、対象オブジェクト１１２に加えられた力およびトルクが力閾値３２２よりも低く、この力およびトルクが作業１１８を実行するのに十分なグリップを維持するための力閾値３２２を満たしていないと決定した場合、制御が反復カウントモジュール７２２に引き渡されて反復カウンタ７３２が増加され、対象オブジェクト１１２を再グリップするための試みが起動され得る。
【０１７２】
[0182]  反復カウントモジュール７２２は、ロボットシステム１００による対象オブジェクト１１２をグリップする試みが失敗すると、反復カウンタ７３２の値を増加させることができる。一実施形態において、反復カウンタ７３２が増加されると、反復カウントモジュール７２２は、さらに、反復カウンタ７３２が反復閾値７３６を超えたか否かを評価することができる。反復閾値７３６は、対象オブジェクト１１２をグリップするために使用可能なベースプラン７３０内のグリップパターン３３０の数を表し得る数字、値、またはパラメータであってよい。一実施形態では、反復カウンタ７３２が反復閾値７３６以下である間は、対象オブジェクト１１２をグリップするために使用可能なグリップパターン３３０がまだ残っており、ロボットシステム１００は、対象オブジェクト１１２をグリップするために残されたグリップパターン３３０に基づいて対象オブジェクト１１２の再グリップを試みることができる。反復カウンタ７３２が増加されると、制御はオブジェクト再グリップモジュール７２４に引き渡され得る。
【０１７３】
[0183]  オブジェクト再グリップモジュール７２４は、対象オブジェクト１１２の再グリップを可能にし得る。オブジェクト再グリップモジュール７２４は、対象オブジェクト１１２を再グリップするための一連のコマンド、設定、またはそれらの組み合わせに従って作動ユニット２２０を動作させることに基づいて、ベースプラン７３０を実施し続けることを可能にすることによって、対象オブジェクト１１２の再グリップを可能にする。一実施形態では、グリップパターン３３０の特定の構成が対象オブジェクト１１２をグリップすることに失敗した場合、オブジェクト再グリップモジュール７２４は、ベースプラン７３０に従って対象オブジェクト１１２を再グリップするために実行可能なグリップパターン３３０を探して、対象オブジェクト１１２の再グリップを試みることができる。
【０１７４】
[0184]  オブジェクト再グリップモジュール７２４は、多様な方法でグリップパターン３３０を巡回することができる。例えば、一実施形態において、グリップの試みが失敗した後、オブジェクト再グリップモジュール７２４は、可能であればグリップパターン３３０の異なる構成を使用して、グリップ点５１８の１つまたは複数の同一場所において対象オブジェクト１１２の再グリップを試みることができる。別の実施形態では、オブジェクト再グリップモジュール７２４は、ベースプラン７３０に従ってグリップが可能であると決定されたことがある、対象オブジェクト１１２の他のグリップ点５１８の他の場所を選択し、そのグリップ点５１８に関連した１つまたは複数のグリップパターン３３０を使用して、グリップ点５１８の上記異なる場所において対象オブジェクト１１２の再グリップを試みることができる。
【０１７５】
[0185]  一実施形態において、オブジェクト再グリップモジュール７２４は、さらに、グリップパターンランク５２８に従って対象オブジェクト１１２の再グリップを試みることができる。例えば、オブジェクト再グリップモジュール７２４は、最高ランクのグリップパターン３３０から最低ランクのグリップパターン３３０の構成までグリップパターンランク５２８を巡回し、対象オブジェクト１１２の表面の関連した場所に沿ったグリップパターン３３０に基づいて、対象オブジェクト１１２のグリップを試みることによって、対象オブジェクト１１２の再グリップを試みることができる。結果として、オブジェクト再グリップモジュール７２４は、グリップパターンランク５２８に基づいて、対象オブジェクト１１２全体に均一な力の分布を提供することになるグリップ点５１８およびグリップパターン３３０を使用して、グリップパターンランク５２８に基づいた対象オブジェクト１１２の再グリップを試みることができる。
【０１７６】
[0186]  一実施形態において、対象オブジェクト１１２の再グリップを試みた後、再び、制御は確立グリップ測定モジュール７１６に引き渡され、上述したのと同様の態様で、対象オブジェクト１１２に加えられている力およびトルクを決定することができる。試みた再グリップが、なおも力閾値３２２を満たさない力およびトルクを生成している場合、ロボットシステム１００は、反復カウンタ７３２が反復閾値７３６を超えるまで上述したような対象オブジェクト１１２の再グリップの実行を試みることができる。一実施形態において、反復カウンタ７３２が反復閾値７３６を超えると、制御は、ベースプラン実行停止モジュール７２６に引き渡され得る。
【０１７７】
[0187]  ベースプラン実行停止モジュール７２６は、反復カウンタ７３２が反復閾値７３６を超えたことに基づいて、ベースプラン７３０の実行を停止することができる。ベースプラン実行停止モジュール７２６は、ロボットシステム１００の真空ホース、真空ジェネレータ、および作動ユニット２２０をオフにすることにより、ベースプラン７３０の終了を可能にし得る。一実施形態において、ベースプラン実行停止モジュール７２６がベースプラン７３０の終了を可能にすると、制御は、エラー生成モジュール７２８に引き渡され得る。
【０１７８】
[0188]  エラー生成モジュール７２８は、対象オブジェクト１１２のグリップの失敗に基づいて、エラー７３８の送信を可能にし得る。エラー７３８は、視覚メッセージもしくは音声メッセージ、信号、数字コード、またはそれらの組み合わせであり得る。一実施形態において、エラー生成モジュール７２８は、通信ユニット２１２を介して、ロボットシステム１００の他の機能ユニット、ロボットシステム１００のユーザ、外部システム、またはそれらの組み合わせに、グリップ失敗を示すエラー７３８を送信することができる。
【０１７９】
[0189]  さらに例を挙げると、例えば、対象オブジェクト１１２のグリップまたは再グリップにより、力閾値３２２以上の力およびトルクが生成された場合、確立グリップ測定モジュール７１６は、対象オブジェクト１１２に加えられる力およびトルクがベースプラン７３０の実施を続けるのに十分に強いと決定し、制御は、ベースプラン実行継続モジュール７２０に引き渡され、ベースプラン７３０の実施を続けることができる。したがって、ロボットシステム１００は、一連のコマンドまたは設定の残りに従って、ベースプラン７３０の実施を続けることができる。例えば、ロボットシステム１００は、ベースプラン７３０に従って、例えば垂直方向、水平方向、またはそれらの組み合わせ方向に対象オブジェクト１１２を移送するか、あるいは対象オブジェクト１１２の向きを変えることができる。
【０１８０】
[0190]  ベースプラン実行継続モジュール７２０は、さらに、ベースプラン７３０の継続実行の間、対象オブジェクト１１２に対する力およびトルクを監視し続けることにより、ベースプラン７３０の監視を可能にする。ベースプラン実行継続モジュール７２０は、ベースプラン７３０の継続実行中に、確立グリップ測定モジュール７１６に接続し、確立グリップ測定モジュール７１６に、対象オブジェクト１１２に対する確立されたグリップ７１０がベースプラン７３０の実行を継続するのに十分であるか否かを決定させることにより、上記監視を行うことができる。一実施形態において、確立グリップ測定モジュール７１６が、ベースプラン７３０の継続実行中のいずれかのタイミングで、対象オブジェクト１１２に対する力およびトルクが力閾値３２２を下回ったと決定した場合、ベースプラン実行継続モジュール７２０は、対象オブジェクト１１２に対する力およびトルクが、対象オブジェクト１１２を落下させることなくグリップするのに十分な大きさになるように、アームユニット１０２の図３の速度３４０および図３の加速度３４２を調整し、図３を参照して上述したように対象オブジェクト１１２に対するグリップを再確立することができる。
【０１８１】
[0191]  一例として、対象オブジェクト１１２上のトルクが吸引グリッパ３０８または吸引カップ３２４によって対象オブジェクト１１２に対するグリップを維持するために生成された力よりも大きいと決定された場合、ベースプラン実行継続モジュール７２０は、例えばアームユニット１０２の速度３４０および加速度３４２を下げることにより、アームユニット１０２の速度を調整し、対象オブジェクト１１２上のトルクを補償することができる。
【０１８２】
[0192]  別の実施形態では、ベースプラン７３０の実行中に、１つまたは複数の吸引グリッパ３０８が対象オブジェクト１１２に対するグリップを失った場合、ベースプラン実行継続モジュール７２０は、対象オブジェクト１１２を、箱、大箱、もしくはパレット内、または対象オブジェクト１１２がピックアップされた位置まで対象オブジェクト１１２を戻し、オブジェクト再グリップモジュール７２４に対象オブジェクト１１２の再グリップ試みさせることができる。別の実施形態では、ベースプラン実行継続モジュール７２０は、さらに、対象オブジェクト１１２に対するグリップを維持するように、例えばアームユニット１０２を回転するなどして、アームユニット１０２の位置を調整することができる。
【０１８３】
[0193]  一実施形態において、ベースプラン実行継続モジュール７２０が、ベースプラン７３０に基づいて対象オブジェクト１１２が目的地まで安全に搬送されたと決定した場合、ベースプラン実行継続モジュール７２０は、制御をスキャンモジュール５０２に引き渡し、対象オブジェクト１１２の次の例に対するプロセスを再び開始することができる。一実施形態において、ベースプラン７３０を生成すべき対象オブジェクト１１２の例がそれ以上存在しない場合は、ロボットシステム１００は、動作を停止することができる。
【０１８４】
[0194]  ロボットシステム１００は、一例としてのモジュール機能は順序を示して説明してきた。ロボットシステム１００は、上記説明とは異なる態様で、モジュールを分けたり、モジュールを順序付けたりしてもよい。例えば、図２のソフトウェア２１０は、ロボットシステム１００のモジュールを含み得る。具体例として、ソフトウェア２１０は、スキャンモジュール５０２、オブジェクト識別モジュール７０４、ベースプラン生成モジュール７０６、ベースプラン実行モジュール７０８、確立グリップ測定モジュール７１６、ベースプラン実行継続モジュール７２０、反復カウントモジュール７２２、オブジェクト再グリップモジュール７２４、ベースプラン実行停止モジュール７２６、エラー生成モジュール７２８、およびこれらに含まれた関連のサブモジュールを含むことができる。
【０１８５】
[0195]  図２の制御ユニットは、ソフトウェア２１０を実行させてモジュールを動作させることができる。例えば、制御ユニット２０２は、ソフトウェアを実行して、スキャンモジュール５０２、オブジェクト識別モジュール７０４、ベースプラン生成モジュール７０６、ベースプラン実行モジュール７０８、確立グリップ測定モジュール７１６、ベースプラン実行継続モジュール７２０、反復カウントモジュール７２２、オブジェクト再グリップモジュール７２４、ベースプラン実行停止モジュール７２６、エラー生成モジュール７２８、およびこれらに含まれた関連のサブモジュールを実施させることができる。
【０１８６】
[0196]  本出願に記載されるモジュールは、制御ユニット２０２によって実行される非一時的なコンピュータ可読媒体に記憶された命令として実施され得る。非一時的なコンピュータ可読媒体は、ストレージユニット２０６を含み得る。非一時的なコンピュータ可読媒体は、ハードディスクドライブ、不揮発性ランダムアクセスメモリ（ＮＶＲＡＭ）、固体記憶装置（ＳＳＤ）コンパクトディスク（ＣＤ）、デジタルビデオディスク（ＤＶＤ）、またはユニバーサルシリアルバス（ＵＳＢ）フラッシュメモリデバイスなどの不揮発性メモリを含み得る。非一時的なコンピュータ可読媒体は、ロボットシステム１００の一部として一体化されていてもよく、またはロボットシステム１００から取り外し可能な部分としてインストールされていてもよい。
【０１８７】
[0197]  次に、図８を参照すると、本発明の一実施形態におけるロボットシステムの動作方法８００のフローチャートが示されている。方法８００は、ボックス８０２において、対象オブジェクトに関連したセンサ読取り値を受信することと、ボックス８０４において、対象オブジェクトに対して作業を実行するためのベースプランを生成することであって、ベースプランの生成には、対象オブジェクトをグリップするための、グリップ点と、このグリップ点に関連したグリップパターンとを、指定エリア、作業場所、および別の対象オブジェクトに対するグリップ点の位置に基づいて決定することを含むことと、ボックス８０６において、グリップパターンランクにしたがって作動ユニットおよび１つまたは複数の吸引グリッパを動作させることにより、タスクを実行するためにベースプランを実施して、対象オブジェクトに対する確立されたグリップを生成することであって、確立されたグリップは対象オブジェクトをグリップするために使用されたグリップパターンに関連したグリップパターン箇所にあることと、ボックス８０８において、確立されたグリップを測定することと、ボックス８１０において、確立されたグリップを力閾値と比較することと、ボックス８１２において、確立されたグリップが力閾値を下回ったことに基づいて対象オブジェクトを再グリップすることと、を含む。
【０１８８】
[0198]  ロボットシステム１００の上記詳細な説明および実施形態は、網羅的であることを意図したものではなく、開示されたロボットシステム１００を、上述した厳密な形態に限定することを意図したものでもない。例示を目的として、ロボットシステム１００の具体例を説明したが、当業者は認識するであろうが、開示されたロボットシステム１００の範囲内で多様な均等的変形が可能である。例えば、プロセスまたは方法が所与の順序で提供されているが、代替的な実施態様により、異なる順序で、工程を有するルーチンを実施するか、ブロックを有するシステムを採用する場合があり、また、いくつかのプロセスまたは方法は、削除、移動、追加、細分化、結合、および／または変形されて、代替的またはサブの組合せを提供する場合がある。これらプロセスまたは方法の各々は、様々な異なる方法で実施される場合がある。また、プロセスまたは方法が、図示の時点で、連続して実施されるものであるが、これらプロセスまたはブロックは、代わりに、並行して実施されるか実行されてもよく、あるいは、異なる時間に実行されてもよい。
【０１８９】
[0199]  結果として得られる方法、プロセス、装置、デバイス、製品およびシステムは、費用効果がよく、汎用性が高く、かつ正確であり、容易で、効率的で、かつ経済的な製造、用途、利用のために構成要素を適合させることにより実施することができる。本発明の実施形態の別の重要な態様として、費用の削減、システムの簡素化、および性能の向上といった歴史的な傾向を有益に支持および提供する。
【０１９０】
[0200]  本明細書の実施形態の上記および他の態様は、結果として、技術の現状を少なくとも次のレベルまで引き上げるものである。本発明を、具体的な最良の形態に関連して説明したが、本明細書の記述に照らして、当業者には、多くの代替、変形、および変更が明らかになるであろう。したがって、そのような代替、変形、および変更の全ては、本明細書に含まれる請求の範囲内に包含されることが意図される。本明細書に記載された、あるいは添付の図面に示された全ての事項は、例示的なものであり、限定的な意味はないものと解釈される。
【図１】
2020196120.tif 000003
【図２】
2020196120.tif 000004
【図３】
2020196120.tif 000005
【図４】
2020196120.tif 000006
【図５】
2020196120.tif 000007
【図６】
2020196120.tif 000008
【図７】
2020196120.tif 000009
【図８】
2020196120.tif 000010
【外国語明細書】
2020196120000001.pdf