JP2023554250A - クラッターをクリアするロボットシステム - Google Patents

クラッターをクリアするロボットシステム Download PDF

Info

Publication number
JP2023554250A
JP2023554250A JP2023533262A JP2023533262A JP2023554250A JP 2023554250 A JP2023554250 A JP 2023554250A JP 2023533262 A JP2023533262 A JP 2023533262A JP 2023533262 A JP2023533262 A JP 2023533262A JP 2023554250 A JP2023554250 A JP 2023554250A
Authority
JP
Japan
Prior art keywords
robot
objects
bucket
manipulator
category
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2023533262A
Other languages
English (en)
Inventor
ハミルトン,ジャスティン,デービット
ウォルフェ,カレン,フレッチャー
バニスター―サットン,ジャック,アレキサンダー
フリッツェル,ブライデン,ジェームス
Original Assignee
クラッターボット インコーポレイテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by クラッターボット インコーポレイテッド filed Critical クラッターボット インコーポレイテッド
Publication of JP2023554250A publication Critical patent/JP2023554250A/ja
Pending legal-status Critical Current

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • B25J9/1666Avoiding collision or forbidden zones
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • B25J11/008Manipulators for service tasks
    • B25J11/0085Cleaning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • B25J11/008Manipulators for service tasks
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J5/00Manipulators mounted on wheels or on carriages
    • B25J5/007Manipulators mounted on wheels or on carriages mounted on wheels
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1615Programme controls characterised by special kind of manipulator, e.g. planar, scara, gantry, cantilever, space, closed chain, passive/active joints and tendon driven manipulators
    • B25J9/162Mobile manipulator, movable base with manipulator arm mounted on it
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/45Nc applications
    • G05B2219/45084Service robot

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Robotics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Physics & Mathematics (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • General Physics & Mathematics (AREA)
  • Orthopedic Medicine & Surgery (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Electromagnetism (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Manipulator (AREA)
  • Radar Systems Or Details Thereof (AREA)
  • Geophysics And Detection Of Objects (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Electric Vacuum Cleaner (AREA)

Abstract

【要約】ロボットは、操作されて、カメラを使用して環境をナビゲートし、物体のタイプ、サイズ、及び位置をマッピングする。システムは、物体のタイプ、サイズ、及び位置を決定し、特定のコンテナに関連付けるために物体を分類する。対応するコンテナを有する物体のカテゴリごとに、ロボットは、そのカテゴリでピックアップする特定の物体を選択し、パスプランニングを実行してカテゴリの物体にナビゲートし、物体を整理又はピックアップする。作動したプッシャーアームは、他の物体を邪魔にならないように移動させ、ターゲット物体をフロントバケットへ操作して搬送する。

Description

本出願は、クラッターをクリアする方法及びロボットシステムに関する。
本出願は、2020年11月30日に出願された「CLUTTER-CLEARING ROBOTIC SYSTEM」と題する米国特許出願番号63/119,533号に対し、35USC119(e)に基づく優先権及び利益を主張し、その内容は、参照によりその全体が本出願に組み込まれる。さらに本出願は、2021年10月8日に出願された「Augmented Reality Robotic Interface」と題する米国特許出願番号63/253,867号に対し、35USC119(e)に基づく優先権及び利益を主張し、その内容は、参照によりその全体が本出願に組み込まれる。
足の下にある物体は、迷惑なだけでなく、安全上の危険を生じる。毎年数千人が自宅で転倒して負傷している。フロアが緩い物体でクラッター(clutter,散らかり)になっていることは、危険を表している可能性があるが、多くの人は、自宅のクラッターの状態に対処する時間が限られている。自動清掃ロボット又はデクラッターロボットが、効果的な解決策になる可能性がある。
初歩的な検索機能を備えた完全自律型のデクラッターロボットは、あらゆる部屋のフロアにある物体をピックアップする作業に適している可能性があるが、ユーザは、ロボットの行動と、自分の家に固有の特定の物体の分類と行先とを、一層微妙に制御する能力を求めている可能性がある。さらに、タスクが妨げられた場合や、ロボットのプログラミングでは考慮されていない状況パラメータが発生した場合に、ロボットは、ユーザと明確に通信する必要がある可能性がある。しかし、ほとんどのユーザは、ロボット工学及び人工知能の分野の専門家ではない可能性がある。
そのため、ユーザが深いプログラミング知識に依存せず、直感的かつ強力な方法でデクラッターロボットと相互作用する方法が必要とされる。特定のデクラッター(decluttering,片付け)のニーズに基づいてロボットを訓練すること、事前に設定されたルーチン以外のアクションを実行するようロボットに指示すること、及び、ロボットが割り当てられたタスクを続行又は完了するために支援が必要な場合に、指示を受け取ることを、この相互作用プロセスがユーザに可能にすることがあり得る。
本開示は、環境の中の物体に対する複数の物体カテゴリのそれぞれを、環境の中に配置された対応するコンテナに関連付けることと、
ベースステーションでロボットを起動することと、
カメラを使用してロボットを環境の周囲でナビゲートし、物体のタイプ、サイズ、及び位置をマッピングすることとを含む方法を提供し、
方法は、各物体カテゴリについて、
カテゴリの中でピックアップする物体のうちの1つ以上を選択するステップと、
ロボットの現在位置からピックアップする物体のうちの1つ以上への、パスプランニングを実行するステップと、
ピックアップする物体のうちの1つ以上の隣接ポイントへナビゲートするステップと、
ロボットの前端にあるバケットの前部で開閉するように結合されたマニピュレータを作動させて、障害物を邪魔にならないように移動させ、バケットへ1つ以上の物体を操作するステップと、
バケットの中に物体を保持するように、バケットを傾ける又は持ち上げることと、マニピュレータを作動させることとの、一方又は両方を行うステップと、
カテゴリについて、対応するコンテナへ隣接するロボットをナビゲートするステップと、
ロボットの後端を対応するコンテナの側面に位置合わせするステップと、
バケットをロボットの上に後端に向けて持ち上げ、対応するコンテナの中に物体を堆積させるステップとを備えている。
特定の要素又は行為の議論を簡単に識別するために、参照番号の最上位の数字は、その要素が最初に導入された図形番号を参照する。
一実施形態によるロボットシステム100を示す。 一実施形態によるロボット200の上面図を示し、バケットは下の位置にあり、アクチュエータアーム(マニピュレータ)は開いた構成である。 一実施形態によるロボット200の斜視図を示し、バケットは下の位置にあり、マニピュレータは開いた構成である。 一実施形態によるロボット200の正面図を示し、バケットは下の位置にあり、マニピュレータは開いた構成である。 一実施形態によるロボット200の側面図を示し、バケットは下の位置にあり、マニピュレータは開いた構成である。 一実施形態によるロボット200の上面図を示し、バケットは上(持ち上げ)の位置にあり、マニピュレータは開いた構成である。 一実施形態によるロボット200の斜視図を示し、バケットは上(持ち上げ)の位置にあり、マニピュレータは開いた構成である。 一実施形態によるロボット200の正面図を示し、バケットは上(持ち上げ)の位置にあり、マニピュレータは開いた構成である。 一実施形態によるロボット200の側面図を示し、バケットは上(持ち上げ)の位置にあり、マニピュレータは開いた構成である。 一実施形態によるロボット200の上面図を示し、バケットは下の位置にあり、マニピュレータは閉じた構成である。 一実施形態によるロボット200の斜視図を示し、バケットは下の位置にあり、マニピュレータは閉じた構成である。 一実施形態によるロボット200の正面図を示し、バケットは下の位置にあり、マニピュレータは閉じた構成である。 一実施形態によるロボット200の側面図を示し、バケットは下の位置にあり、マニピュレータは閉じた構成である。 一実施形態による主題の一態様を示す。 別の実施形態でのロボット400の正面図である。 斜視図でのロボット400を示す。 側面図でのロボット400を示す。 マニピュレータを上向きにしたロボット400を示す。 さらに別の実施形態によるロボット500を示す。 さらに別の実施形態によるロボット600を示す。 さらに別の実施形態によるロボット600を示す。 さらに別の実施形態によるロボット600を示す。 さらに別の実施形態によるロボット600を示す。 一実施形態によるロボット700の態様を示す。 一実施形態によるロボット700の態様を示す。 一実施形態によるロボット700の態様を示す。 一実施形態によるロボット700の態様を示す。 一実施形態によるロボット700の下がったバケット位置及び下がったグラバー位置800aを示す。 一実施形態によるロボット700の下がったバケット位置及び上がったグラバー位置800bを示す。 一実施形態によるロボット700の上がったバケット位置及び上がったグラバー位置800cを示す。 別の実施形態によるロボット900を示す。 一実施形態によるロボットプロセス1000を示す。 一実施形態による別のロボットプロセス1100を示す。 一実施形態によるロボットシステムの状態空間マップ1200を示す。 スリープモードのロボットシステムの例を示す。 探索モードのロボットシステムの例を示す。 探索モードのロボットシステムの例を示す。 ピックアップモードのロボットシステムの例を示す。 ピックアップモードのロボットシステムの例を示す。 ピックアップモードのロボットシステムの例を示す。 ピックアップモードのロボットシステムの例を示す。 ピックアップモードのロボットシステムの例を示す。 ピックアップモードのロボットシステムの例を示す。 ドロップオフモードのロボットシステムの例を示す。 ドロップオフモードのロボットシステムの例を示す。 一実施形態によるロボットシステムのロボット制御アルゴリズム1700を示す。 一実施形態によるロボットシステムのロボット制御アルゴリズム1800を示す。 一実施形態によるロボットシステムのロボット制御アルゴリズム1900を示す。 一実施形態によるロボット制御アルゴリズム2000を示す。 一実施形態によるロボット制御アルゴリズム2100を示す。 一実施形態によるデクラッターロボット環境2200を示す。 一実施形態による拡張現実ロボットインターフェース2300を示す。 一実施形態による拡張現実ロボットインターフェース2300を示す。 一実施形態による拡張現実ロボットインターフェース2300を示す。 一実施形態による拡張現実ロボットインターフェース2300を示す。 一実施形態による拡張現実ロボットインターフェース2300を示す。 本明細書に記載されるシステムのコンポーネントとプロセスステップとを実施するためのロボット制御システム2400の実施形態を示す。
ロボットシステムの実施形態が開示される。これは、ロボットを操作して、カメラを使用して環境をナビゲートし、玩具、衣料品、障害物、及びその他の物体のタイプ、サイズ、及び位置をマッピングする。ロボットは、左右のステレオカメラからの画像に基づいて、物体のタイプ、サイズ、及び位置を決定するためのニューラルネットワークを備えている。対応するコンテナを有する物体のカテゴリごとに、ロボットはそのカテゴリの中でピックアップする特定の物体を選択し、パスプランニングを実行して、ターゲット物体に隣接及び対面しているポイントにナビゲートする。作動したプッシャーアームは他の物体を邪魔にならないように移動させ、搬送されようとするターゲット物体をフロントバケットに押し込む。フロントバケットはわずかに上に傾き、任意には、ロボットがプランニングされた経路の次の場所へ自らをナビゲートする間、作動したプッシャーアームが前方で閉じて物体を所定の位置に保持することができる。このプロセスが繰り返され、同じカテゴリの追加の物体がピックアップされる。バケットが満杯になると、ロボットは追加のパスプランニングを実行し、そのカテゴリのコンテナに隣接するように自らを駆動する。その後、ロボットはコンテナへ自らをナビゲートし、コンテナの側面に位置合わせし、バケットを持ち上げてターゲット物体をコンテナの端から上に持ち上げる。
ロボットシステムは、表面に残ったアイテムが、定期的なスケジュールで自動的にコンテナに収容される、表面の自動整理に利用されてよい。1つの具体的な実施形態では、子供が遊び終わった後に、玩具、及び/又はその他のアイテムが、異なるタイプの物体に固有のコンテナに自動的に返却される子供の遊び領域(例えば、家庭、学校、ビジネスなどで)を、自動的に整頓するために、このシステムは利用されてよい。他の具体的な実施形態では、このシステムは、フロアから衣料品を自動的にピックアップして洗濯用の洗濯かごに整理するために利用される場合や、フロアからゴミを自動的にピックアップして、例えばタイプ別(プラスチック、段ボール、ガラス)にゴミ箱やリサイクル箱に入れるために利用されてよい。一般に、このシステムは、表面から多種多様な物体を効率的にピックアップするために展開され、新しいタイプの物体をピックアップすることを学習してよい。
いくつかの実施形態では、システムは、ロボットアームを含んでよく、上昇した物体に到達してつかみ、それらを下方にバケットへ移動させる。いくつかの実施形態では、メインロボットをカウンタートップ、テーブル、又はその他の高い表面に持ち上げ、フロアに復帰させるためにコンパニオン「ポータブルエレベータ」ロボットを利用してよい。いくつかの実施形態では、コンテナ、棚、又はその他の高い場所や上方の場所にアイテムを落下させる場合に、バケットの高さを変更するために、上下の垂直リフト(例:シザーリフト)を利用してよい。
別の変形例では、ロボット(シザーリフトやテレスコーピングリフトなど)に組み込まれた上下の垂直リフトを利用し、これは、カウンタートップやテーブルから物体をピックアップするために、バケットとアクチュエータアームとの両方をカウンタートップ又はテーブルの高さまで持ち上げる。
いくつかの実施形態では、次のコンポーネントの1つ以上を利用してよい。
・物体をバケットへ押圧するアームでのアクチュエータの左右回転ブラシ。
・物体をつかんでバケットへ移動させる作動グリッパー。
・上から物体をバケットへ押圧するフラップ付き回転ホイール。
・フロントバケットを空中に持ち上げる1つのサーボと、前方にダンプしてコンテナにダンプする別の1つのサーボ。
・バケットを持ち上げ、高さを増すにつれて徐々に後方にダンプするシザーリフトの変形例。
・ロボットがアイテムを傾斜路上に押し上げるだけで、傾斜路の上部で、重力を伴ってアイテムをコンテナにダンプするようにした、ヒンジでのコンテナとフロントバケットとの傾斜路。
・追加の搬送能力のためのロボットでの格納ビン。ターゲット物体は、フロントバケットを使用する代わりに、傾斜路を上って格納ビンに押し込まれる。格納ビンは、ダンプトラックのように上に後に傾いて、アイテムをビンに落下させる。
ロボットシステムの実施形態が開示される。これは、アプリケーションとしてユーザに提示される拡張現実ロボットインターフェースと連携して、デクラッターロボットを操作する。デクラッターロボットは、カメラを使用して環境をナビゲートし、玩具、衣料品、障害物、及びその他の物体のタイプ、サイズ、及び位置をマッピングしてよい。ロボットは、左右のステレオカメラからの画像など、感知システムからの入力に基づいて、物体のタイプ、サイズ、及び位置を決定するニューラルネットワークを備えてよい。ロボットは、ピックアップする特定の物体を選択し、パスプランニングを実行し、ターゲット物体に隣接及び対面しているポイントにナビゲートしてよい。作動したグラバーパッドアームは、他の物体を邪魔にならないように移動させてよく、グラバーパッドを操作して、搬送されようとするターゲット物体をバケットの上へ移動させてよい。ロボットが堆積先などのプランニングされた経路の次の位置へナビゲートしている間、物体を所定の位置に維持するために、バケットがわずかに上に傾き、グラバーパッドが前方に閉じてよい。
いくつかの実施形態では、システムは、ロボットアームを含んでよく、上昇した物体に到達してつかみ、それらを下方にバケットへ移動させる。いくつかの実施形態では、メインロボットをカウンタートップ、テーブル、又はその他の高い表面に持ち上げ、フロアに復帰させるためにコンパニオン「ポータブルエレベータ」ロボットを利用してよい。いくつかの実施形態では、コンテナ、棚、又はその他の高い場所や上方の場所にアイテムを落下させるときに、バケットの高さを変更するために、上下の垂直リフト(例:シザーリフト)を利用してよい。
いくつかの実施形態では、次のコンポーネントの1つ以上を利用してよい。
・物体をバケットへ押圧するアームでのアクチュエータの左右回転ブラシ。
・物体をつかんでバケットへ移動させる作動グリッパー。
・上から物体をバケットへ押圧するフラップ付き回転ホイール。
・フロントバケットを空中に持ち上げる1つのサーボと、前方にダンプしてコンテナにダンプする別の1つのサーボ。
・バケットを持ち上げ、高さを増すにつれて徐々に後方にダンプするシザーリフトの変形例。
・ロボットがアイテムを傾斜路上に押し上げるだけで、傾斜路の上部で、重力を伴ってアイテムをコンテナにダンプするようにした、ヒンジでのコンテナとフロントバケットとの傾斜路。
・追加の搬送能力のためのロボットでの格納ビン。ターゲット物体は、フロントバケットを使用する代わりに、傾斜路を上って格納ビンに押し込まれる。格納ビンは、ダンプトラックのように上に後に傾いて、アイテムをビンに落下させる。
表面に残ったアイテムが定期的なスケジュールで自動的にコンテナに収容される、表面の自動整理に、ロボットシステムは利用されてよい。1つの具体的な実施形態では、本システムを利用して、子供が遊び終わった後に、異なるタイプの物体に固有のコンテナに、玩具やその他のアイテムが自動的に返却される子供の遊び領域(例えば、家庭、学校、ビジネスなどで)を自動的に整頓することができる。他の具体的な実施形態では、本システムを利用して、フロアから衣料品を自動的にピックアップし、洗濯のために洗濯かごに整理したり、フロアからゴミを自動的にピックアップし、例えばタイプごとに(プラスチック、段ボール、ガラス)ゴミ箱やリサイクル箱に入れたりしてよい。一般に、本システムは、表面から多種多様な異なる物体を効率的にピックアップするために展開されてよく、新しいタイプの物体をピックアップすることを学習してよい。
開示された解決策は、拡張現実を使用して、下記の情報をユーザと通信するために、デクラッターロボットと相互作用する方法である。
・ピックアップされる各物体のカテゴリ/タイプ、
・どのように物体を、タイプ別にビン又はその他の場所に整理するか、
・何の物体が次にピックアップされるか、
・ロボットが動かせない問題のある物(例えば、大きすぎる、重い、乱雑である、危険である、割れ物であるなど)、
・ロボットの経路を遮っている障害物。
デクラッターロボットは、カメラ、LIDAR、その他のセンサの組み合わせを使用して、環境のグローバルエリアマップを維持し、その中で自らをローカライズさせてよい。さらに、デクラッターロボットは、物体検出と物体分類とを実行し、各物体の視覚的な再識別指紋を生成してよい。
ロボットは、各物体に対する相対的な距離と角度とを決定してよい。その後、距離と角度とを使用して、グローバルエリアマップでの物体をローカライズしてよい。その後、グローバルエリアマップは、物体情報とともに無線でアプリケーションに伝送されてよい。アプリケーションは、ユーザのモバイルデバイス、ロボットに搭載されたディスプレイ、又は便利なディスプレイとユーザ入力を受け入れる機能とを提供するその他のデバイスにインストールされてよい。
カメラフレームは、モバイルデバイスのカメラを使用してキャプチャーされてよい。その後、拡張現実ロボットインターフェースアプリケーションは、物体検出と物体分類とを実行し、各物体の視覚的な再識別指紋を生成してよい。さらに、地上面がカメラフレームの中に検出されてよい。その後、スマートフォンは、地上面、物体タイプ、及び再識別指紋の組み合わせを使用して、グローバルエリアマップの上でローカライズされてよい。物体は、タイプ、位置、及び再識別指紋を使用して再識別されてよい。
その後、物体タイプと、ユーザに支援を求めるユーザインジケータとを示す情報が、カメラフレームの上部にオーバーレイされてよい。ユーザがタスクを行って支援した場合に(例えば、障害物を動かし、又は、大きな物を片付ける)、ユーザに感謝を伝えてよい。また、ユーザは物体をクリックしてよく、物体のタイプを変更したり、次に何をピックアップするかを変更したりするなどの指示をロボットに与えてよい。
開示されたアルゴリズムは、スマートフォン又はタブレットなどのスマートデバイス又はモバイルデバイスに、アプリケーションとして展開される拡張現実の従来の使用を改善し、テクノロジーの一般のユーザにも消費者ロボティクスと相互作用する簡単なアプローチを提供する。開示されたアルゴリズムを使用すると、モバイルデバイスとデクラッターロボットとをデクラッター領域の中の別々のステーションに配置することが可能にされ、その環境の中の各デバイスの場所と方向に関係なく、その領域で検出された同じ物体に関して相互に通信することが可能にされる。一実施形態では、拡張現実ロボットインターフェースは、コンピュータ又はラップトップデバイス、テレビに接続されたゲームコンソール、又はその他の電子システムに、アプリケーションとして展開されてよい。この電子システムは、ユーザに視覚情報を提示し、ユーザの入力を受け入れ、以下に説明するようなデクラッターロボットに無線接続することができる。
開示された解決策は、環境の中の物体に対するデクラッターロボットの理解を視覚化する方法を提供する。環境は、スマートフォンなどのモバイルデバイスを使用し、その後、モバイルデバイスアプリケーション(開示された拡張現実ロボットインターフェース)をインターフェースとして使用し、ロボットが支援を要求することを可能にし、ユーザがロボットに片付け方法を指示することを可能にする。
ロボットに指示するためにコンピュータコーディングの高度なバックグラウンドを必要とするのではなく、消費者市場部門のユーザは、検出された物体をどのように整理して片付けたいかについて、容易にデクラッターロボットに指示することが可能である。また、デクラッターロボットは、問題のある物体(つまり、大きすぎる、ピックアップするには難しい、割れ物であるなどの物体)を片付けるのをどのように支援するかなど、ユーザがどのように最も良好に整理を支援できるかについて、ユーザに明確に指示してよい。デクラッターロボットと、モバイルデバイスを有するユーザとが、デクラッター領域に関して有する可能性がある、異なった視点と観点とを検出及び考慮することに加えて、開示された解決策は、この差異を利用してよい。例えば、デクラッターロボットは、家具やその他の障害物によってユーザの視界から隠された物体の位置を見るのに役立つことができる。
開示されたインターフェースは、どの物体がデクラッターロボットによってピックアップされるか、各物体について検出されたタイプ又はカテゴリ、及びどの利用可能なビンにその物体が整理されるかを、ユーザに視覚的に示してよい。ロボットが選択したデフォルトとは異なるビンに、物体を配置することができるように、ユーザは、物体カテゴリが変更できてよい。大きすぎる物体、乱雑な物体、割れ物である物体、危険をもたらす物体、自力では解決できない方法でロボットの経路を遮っている物体など、ロボットが問題を発見した物体を整理するために、ロボットは、開示されたアルゴリズムを使用して、ユーザに支援を要求してよい。次にどの物体をピックアップするか、またどの物体をスキップするかをユーザが選択することを、拡張現実ロボットインターフェースは可能にしてよい。
ロボットとアプリケーションとの間でデクラッター領域のグローバルエリアマップを無線で同期させ、グローバルエリアマップの中の物体を再識別するための新しいアルゴリズムと、グローバルエリアマップの中のモバイルデバイスのカメラをローカライズするためのアルゴリズムとが、開示された拡張現実ロボットインターフェースに組み込まれている。拡張現実ロボットインターフェースは、デクラッター領域のフロアから物体を整理することに焦点を当てているため、デクラッターロボットが使用するグローバルエリアマップ又はそのグローバルエリアマップは、2次元マップであってよい。拡張現実では、地上面と物体の開始位置とが、物体カテゴリと再識別指紋とともに検出されてよい。この情報は、グローバルエリアマップの上でモバイルデバイスをローカライズするのに使用されてよい。
一実施形態では、拡張現実ロボットインターフェースを使用して、整理作業をゲーム化してよい。アプリケーションは、例えば、ユーザが片付ける物体とロボットが片付ける物体を表示し、どの1つが最初に物体を整理するかを確認するコンテストにしてよい。1つの実施形態では、拡張現実ロボットインターフェースを使用してよく、デクラッターロボットに特定のアイテムを取ってきて、それを片付けるか、ユーザのところに持ってくるように依頼してよい。例えば、デクラッターロボットは、ユーザにテレビのリモコンを持っていくように依頼されてよい。一実施形態では、拡張現実ロボットインターフェースは、デクラッターロボットがない場合に、ユーザが自宅内の物を整理するのを支援するために使用されてよい。
一実施形態では、拡張現実ロボットインターフェースは、デクラッターロボット自体に展開されてよく、別個のモバイルデバイスの必要性を排除してよい。ロボットにはスピーカーが組み込まれ、オーディオメッセージやアラートを提供して、物体のカテゴリ、意図されたピックアップ順序、問題のある物体などの情報を伝達してよい。さらにデクラッターロボットは、マイクと音声認識機能とを備えてよく、ユーザからの音声コマンドを受け入れてよい。一実施形態では、デクラッターロボットは、タッチスクリーンで構成されてよく、これは、グローバルエリアマップと物体とを表示し、ユーザの入力を受け入れてよい。デクラッターロボットには、ピックアップした物のタイプに応じて色を変える視覚的なインジケータが含まれてよい。ロボットには、色付きレーザなどのポインティング機能が含まれることがあり、オーディオメッセージとともに特定の物体を示してよい。
一実施形態では、モバイルデバイスは、デクラッター領域をマッピングし、その情報をデクラッターロボットに伝送することが可能であってよい。このようにして、モバイルデバイスは、ロボットがまだ探索していない領域で環境のグローバルエリアマップを更新してよい。拡張現実ロボットインターフェースは、1つの実施形態では、モバイルデバイスのカメラフレームに基づくビューにデクラッター領域と物体をマッピングし、別の実施形態では、トップダウン2次元ビューでグローバルエリアマップを表示してよい。別の実施形態では、マップはロボットの地上の視点から表示され、ユーザは家具の下にある物体や、モバイルデバイスのカメラフレームから遮られている物体を見ることが可能にされる。
図1は、一実施形態でのロボットシステム100を示す。ロボットシステム100は、1つ以上のセンサ102と1つ以上のカメラ104とからの入力を受容し、これらの入力をローカライズロジック106と、マッピングロジック108と、知覚ロジック110とでの処理に供給する。処理ロジックの出力は、ロボットシステム100のパスプランナー112と、ピックアッププランナー114と、モーションコントローラ116とに供給され、モーションコントローラ116は、システムのモータ及びサーボコントローラ118とを駆動する。
ローカライズロジック106と、マッピングロジック108と、知覚ロジック110とのうちの1つ以上は、モバイルロボットに配置及び/又は実行されてよく、又は、携帯電話、ラップトップコンピュータ、タブレットコンピュータ、又はデスクトップコンピュータなど、ロボットと無線通信するコンピューティングデバイスで実行されてよい。いくつかの実施形態では、ローカライズロジック106と、マッピングロジック108と、知覚ロジック110とのうちの1つ以上が、「クラウド」、即ちインターネット又は他のネットワークを介してロボットに結合されたコンピュータシステムの中で、配置及び/又は実行されてよい。
知覚ロジック110は、画像セグメンテーション起動144の信号によって作動し、カメラ104の視野内の物体を検出するために、任意の1つ以上の周知の画像セグメンテーション及び物体認識アルゴリズムを利用する。さらに、知覚ロジック110は、マッピングの目的でキャリブレーション及び物体120の信号を供給してよい。ローカライズロジック106は、その環境で移動ロボットをローカライズするために、任意の1つ以上の周知のアルゴリズムを使用する。ローカライズロジック106は、ローカルからグローバルへの変換122の参照フレーム変換を出力し、マッピングロジック108は、これをキャリブレーション及び物体120の信号と組み合わせて、ピックアッププランナー114のための環境マップ124を生成し、パスプランナー112のための物体トラッキング126の信号を生成する。
マッピングロジック108からの物体トラッキング126の信号に加えて、パスプランナー112はさらに、システム状態設定130からのシステムの現在の状態128と、ピックアッププランナー114からの同期信号132と、モーションコントローラ116からの移動フィードバック134とを利用する。パスプランナー112は、これらの入力を、モーションコントローラ116を駆動するナビゲーション経由地点136に変換する。ピックアッププランナー114は、知覚ロジック110からの画像セグメンテーション138の入力を有するローカル知覚と、マッピングロジック108からの環境マップ124と、パスプランナー112からの同期信号132とを、モーションコントローラ116への操作アクション140(例えば、ロボット捕捉装置、バケットの)に変換する。パスプランナー112とピックアッププランナー114とによって利用されるアルゴリズムの実施形態について、以下にさらに詳細に説明する。
一実施形態では、同時位置特定及びマッピング(SLAM)アルゴリズムを利用して、グローバルマップを生成し、同時にマップでのロボットをローカライズしてよい。多くのSLAMアルゴリズムがこの分野で知られ、商業的に利用可能である。
モーションコントローラ116は、ナビゲーション経由地点136と、操作アクション140と、画像セグメンテーションを伴うローカル知覚138の信号とを、モータ及びサーボコントローラ118へのターゲット移動142の信号に変換する。
図2Aないし図2Lは、リフトバケットとアクチュエータアームとのさまざまな構成のロボット200を示す。ロボット200は、ここに開示されたアルゴリズムに従って動作するように構成されてよい。ロボット200は、表面と緊密にシールするフロントバケット(バケット202)を利用してよく、プッシャーアーム(マニピュレータアクチュエータアーム204)は、表面の上のアイテムを押圧し、それらを搬送するためにバケット202の上にアイテムを推進する(urge)ことができる。(「バケット」及び「ショベル」という用語は、ここではロボットの物体収納容器を指すために、交換可能に使用される。)例えば、これにより、ロボットはレゴ(登録商標)又はビー玉などのいくつかの小さなアイテムを、落とさずに同時にピックアップすることが可能である。
ロボット200は、機械学習/ニューラルネットワークソフトウェアアーキテクチャー(例えば、半教師付き又は教師付き畳み込みニューラルネットワーク)とともにステレオカメラ206を利用して、環境マップでのさまざまな物体のタイプ、サイズ、及び位置を効率的に分類してよい。ロボット200は、前方と後方とを向く両方のカメラ206を利用して、前方と後方の両方にスキャンしてよい。バケット202は、単一の作動アーム(バケットアクチュエータアーム208)の上で上に後に回転して、単一のサーボ/モータでバケット202をフロアからわずかに持ち上げて物体を搬送し、同じサーボ/モータを使用してバケット202をコンテナの上部から持ち上げてダンプできるようにしてよい。この方法では、(例えば)椅子又はソファの下にあるアイテムをピックアップするためにロボット200の高さを低く抑えているが、さらに背の高いコンテナにアイテムを持ち上げてダンプすることができる。
マニピュレータアクチュエータアーム204は、ブラシ毛がわずかな角度(表面に対して)に設定されたマニピュレータブラシ210を含み、これにより、平坦な物体(例えば、平らなレゴ(登録商標)シート又はパズルピース)の下にアクセスし、それらをピックアップバケット202の上にタンブル/ロールさせてよい。さらに、角度のあるマニピュレータブラシ210の使用は、ゴムボール又は玩具などの高摩擦物体の取り込みを容易にすることができる。マニピュレータアクチュエータアーム204で物体の下にわずかにはいり込みながら水平方向の圧力を与えることは、ジャミングを防ぎながら物をピックアップするのに役立つ。
ある実施形態では、ロボット200をその環境の周りに動かすために2つのモータが使用され、左右のマニピュレータアクチュエータアーム204で2つのサーボが利用され、1つのサーボは、コンテナにアイテムをダンプするためにバケット202を上に後に持ち上げるために利用される。一層少ないモータ/サーボを使用することは、コストを削減し、重量を削減し、ロボット200の信頼性を向上させる。サーボ付きバケット202を使用することで、バケット202をわずかに上に後に傾けることができ、地面から持ち上がるようになる。これにより、落下させずに、障害物を避けたり、段差を越えたりしながら、複数のアイテムを同時に搬送することができる。マニピュレータアクチュエータアーム204は、ロボット200の前方にくさび形の「V」字形を形成し、割り鋤(split-plow)のように、アイテムが駆動中に左右に押されながら走行する散らかった環境/クラッターした環境の中をナビゲートできるようにする。これにより、ロボット200は、立ち往生することなく、散らかった環境/クラッターした環境の中を走行することができ、アイテムが車輪やその他の駆動機構に巻き付けられる可能性のあるロボット200の下にはいることを防ぐ。さらに、これにより不要な物体がバケット202に乗り上げることを防止する(乗り上げさせる)。
ロボット200は、マニピュレータのアクチュエータアーム204を使用して環境をナビゲートし、任意のアイテムをバケット202の中へピックアップしようとする前に、フロアにあるアイテムを山のように整理してよい。これは、カテゴリ別にアイテムを整理するために、使用可能なフロアの空間を利用する。ピックアップのためにターゲット物体をバケット202に押し付けることができるだけでなく、フロアの上に山のようにアイテムを整理することができるという点で、マニピュレータアクチュエータアーム204は多目的ツールである。
いくつかの実施形態では、ロボット200が可能な限り迅速に、無差別的に物体をピックアップし、単一のコンテナに入れるか、壁に当てる「高速クリーンアップモード」であってよい。このモードでは、ロボット200は、整理、経由地点のパスプランニング、収容(binning)など、後述する多くのアクションと状態とをバイパスしてよい。
コンテナ(他の図に示されている)は、環境の中に配置されてよく、同時にマシン可読であり、人間可読であるカテゴリを有する標識で構成されている。コンテナの標識を置き換えると、コンテナに整理される物体のタイプを変更する。これにより、ロボット200は人間と一緒に作業して、散らかった部屋/クラッターした部屋を掃除するのに役立つ。また、整理のための物体のカテゴリの変更も容易になる。
バケット202は、独特の形状(ここでは、フロアに平らに配置されたバケット202に関連して説明されている)を含んでよく、独特の形状は、(図3で、)小さな物体を押し付けることができるようにフロアに対して緊密なシール302を維持することを(両方とも)可能にし、バケット202は、隣接する凸部304と凹部306とを含んでよく、バケット202内に物体が保持され、丸い物体がロールアウトしないようにする。凹部306は、反転したときに、スライド、及び漏斗として機能するように形成された延長された背面308(湾曲してよい)に移行する。さらに、延長された背面308は、ロボット200の全体的な高さを低くするために、ロボット200の背面に向かって(バケット202から離れて)角度を付けてよい。
バケット202は、ロボットが後方に走行するときに、前に傾けて不要なものをダンプすることを可能にするヒンジ機構を利用してよい。これは、バケット202を上に後に持ち上げることを可能にするのと同じサーボによって駆動されてよい。この機構を利用して、誤ってピックアップされた場合にフロアに落下して復帰させてよい。マニピュレータアクチュエータアーム204上の収集部材(例:マニピュレータブラシ210)は、圧縮性フォームパッドを利用してよい。圧縮性フォームパッドは、両方のマニピュレータアクチュエータアーム204が協働することを可能にし、ロボット200の前方に物体をつかみ保持するようにする。これは、例えば、物体のカテゴリをクラスタに整理したり、経路をクリアしたりするために、特定の物体を操作する有用な方法を提供する。例えば、ターゲット物体をピックアップする前に、クラッターの少ない領域へ移動したり、フロアでの類似したアイテムのある山へ、物体を移動したりすることができる。
ユーザは、例えば、携帯電話のアプリケーションを介して、以前に学習していない物体タイプを整理するために、物体のカスタムカテゴリを構成してよい。例えば、ユーザは、携帯電話のアプリケーションを使用してカスタム標識を作成し、その標識を持つコンテナに整理したいカスタム物体の写真を撮影して、この構成を実行してよい。
ロボット200は、特定の実施形態では、以下のコンポーネントの一部又は全部を備えてよい。
・3Dプリント(又は射出成形)されたプラスチック製のロボットシャーシ。
・ロボットの車輪を駆動する2つのブラシレス遊星歯車DCモータ。
・左右のプッシャーアームを動かす2つの小さなサーボ。
・バケットを上に後に持ち上げる1つの中程度のサーボ。
・3Dプリント(又は射出成形)されたプッシャーアーム用マウントを伴うブラシストリップ。
・3Dプリント(又は射出成形)されたフロントバケット。
・マウント、ボールベアリング、金属シャフト、及びカップリングコネクタを伴う2つの前輪。
・ロボットが自由にターンできるように回転可能な2つの背面キャスターホイール。
・視覚的データを収集する4つのRGBデジタルカメラ。
・暗い部屋でロボットに光を与えるために使われるLEDライト。
・機械学習アルゴリズムを実行するためにGPUが組み込まれたマイクロコントローラ(例:Jetson Nano(登録商標))。
・ロボットに給電する24Vリチウムイオンバッテリ。
・バッテリ充電器回路を含み、センサの電力管理ができ、慣性測定ユニットを含む、カスタム回路基板。
・3Dプリント(又は射出成形)されたマウントとボールベアリングとを含み、サーボで持ち上げられて、フロントバケットを上に後に持ち上げることができる、硬質金属ビーム。
・ロボットの前面に取り付けられ、階段や落下の可能性を検出する赤外線センサ。
ロボットのシャーシは、モータ、サーボ、バッテリ、マイクロコントローラなどのコンポーネントのマウントを含む。
図4Aないし図4Cは、カメラ402と、リフトアクチュエータアーム404と、収集部材406と、バケット408と、リニアアクチュエータ410とを備えている、代替の実施形態のロボット400の様々な図を示す。ロボット400は、本出願に開示されたアルゴリズムに従って動作するように構成されてよい。
図5は、さらに別の実施形態によるロボット500を示し、これは、バケット502と、カメラ504と、マニピュレータアクチュエータアーム506と、収集部材508と、バケットアクチュエータアーム510とを備えている。ロボット500は、ここに開示されたアルゴリズムに従って動作するように構成されてよい。
図6Aないし図6Dは、さらに別の実施形態によるロボット600を示す。ロボット600は、バケット602と、カメラ604と、マニピュレータアクチュエータアーム606と、収集部材608と、バケットアクチュエータアーム610と、マニピュレータリフトアーム612とを備えている。ロボット600は、ここに開示されたアルゴリズムに従って動作するように構成されてよい。
図7Aないし図7Dは、一実施形態によるロボット700の追加的な態様を示す。図7Aはロボット700の側面図を示し、図7Bは上面図を示す。ロボット700は、シャーシ702と、モビリティシステム704と、感知システム706と、制御システム708と、捕捉及び封じ込めシステム710とを備えてよい。さらに、捕捉及び封じ込めシステム710は、バケット712と、バケットリフトアーム714と、バケットリフトアーム枢軸点716と、2つのマニピュレータ部材718と、2つのマニピュレータアーム720と、2つのアーム枢軸点722とを含んでよい。図7C及び図7Dは、シャーシ702の側面図及び上面図をそれぞれ示し、これに、制御システム708に対しての、感知システム706、モビリティシステム704、及び通信724のコンポーネントの一般的な接続性が伴う。さらに感知システム706は、フロントカメラ726及びリアカメラ728のようなカメラと、フロントLIDARセンサ730及びリアLIDARセンサ732のような光検出及び測距(LIDAR)センサと、IMUセンサ734のような慣性測定ユニット(IMU)センサとを含んでよい。いくつかの実施形態では、フロントカメラ726は、フロント右カメラ736とフロント左カメラ738とを含んでよい。いくつかの実施形態では、リアカメラ728は、リア左カメラ740(742)とリア右カメラ742(740)とを含んでよい。
シャーシ702は、ロボット700の他のコンポーネントを支持及び収容してよい。モビリティシステム704は、当技術分野でよく理解されるように、図示した車輪だけでなく、キャタピラ軌道、コンベヤベルトなどを含んでよい。さらに、モビリティシステム704は、ロボット700を目的の経路に沿って推進させるためのモータ、サーボ、又は回転又は運動エネルギー源を含んでよい。モビリティシステムのコンポーネントは、捕捉及び封じ込めシステム710が必要とする移動範囲を妨げたり阻害したりすることなく、デクラッターロボット全体を移動させる目的で、シャーシ702に取り付けてよい。シャーシ702、バケット712、マニピュレータ部材718及びマニピュレータアーム720の相互に対しての少なくともいくつかの構成では、カメラ、LIDARセンサ、又はその他のコンポーネントなどの感知システム706の要素は、環境の周囲に明確な視線をロボット700に与える位置でシャーシ702に取り付けてよい。
シャーシ702は、制御システム708を収容及び保護してよい。制御システム708は、いくつかの実施形態では、プロセッサと、メモリと、モビリティシステム704、感知システム706、捕捉及び封じ込めシステム710、及び通信724への接続部とを含む。シャーシ702は、ロボット工学の技術でよく理解されるように、バッテリ、無線通信デバイスなどの他の電子コンポーネントを収容してよい。これらのコンポーネントは、図24に関してさらに詳細に説明されるロボット制御システム2400として機能してよい。
捕捉及び封じ込めシステム710は、バケット712と、バケットリフトアーム714と、バケットリフトアーム枢軸点716と、マニピュレータ部材718と、マニピュレータアーム720と、マニピュレータ枢軸点744と、アーム枢軸点722とを含んでよい。バケット712の形状と、バケット712に対するマニピュレータ部材718及びマニピュレータアーム720の配置とは、物体を安全に搬送することができる封じ込め領域を記述してよい。バケットリフトアーム枢軸点716、マニピュレータ枢軸点744、及びアーム枢軸点722のサーボが使用されてよく、バケット712、マニピュレータ部材718、及びマニピュレータアーム720の配置を、完全に下げられたバケット及びグラバー位置と、上げられたバケット及びグラバー位置との間で調整してよい。
いくつかの実施形態では、グリップ面は、持ち上げられる物体に向かって内側を向いているマニピュレータ部材718の側面に構成してよい。これらのグリップ面は、クッション、グリット、弾力性、又はマニピュレータ部材718と捕捉及び収納される物体との間の摩擦を増加させる、他の何らかの特徴を提供してよい。いくつかの実施形態では、マニピュレータ部材718は、掃引毛で構成してよい。これらの掃引毛は、小さな物体をフロアからバケット712の上へ移動させるのを助けることができる。いくつかの実施形態では、掃引毛はマニピュレータ部材718から下方向及び内側方向に角度付けられ、マニピュレータ部材718がバケット712に向かって物体を掃引した場合に、掃引毛は傾斜を形成し、最前部の毛が物体の下にスライドすることを可能にし、物体をマニピュレータ部材718に向かって上方に向ける。これにより、バケットの中の物体の捕捉を容易にし、物体がフロアに押しつけられる傾向を減少させ、摩擦を増加させて移動を一層困難にする。
ゴム製の物体は、貼り付いてジャミングを生じる傾向があるため、典型的には、弾性の低い物体と比較してピックアップするのが困難である。前向きの毛は、この摩擦を減らすことで、このような弾性のある物体が回転し、ジャミングを生じないようにすることが意図されている。別の実施形態では、グリップ面にPTFE(ポリテトラフルオロエチレン)などの低摩擦材料を利用してよい。
図8Aないし図8Cは、図7Aないし図7Dに関連して導入されたようなロボット700を示し、そのために、バケットと同じシャーシとの接触点で、グラバーパッドのアームをサーボによって制御してよい。ロボット700は、下がったバケット位置及び下がったグラバー位置800a,下がったバケット位置及び上がったグラバー位置800b,及び上がったバケット位置及び上がったグラバー位置800cに配置されて見えてよい。このロボット700は、ここに開示されているアルゴリズムを実行するように構成してよい。
図9は、別の実施形態によるロボット900を示し、これは、バケット902と、バケットアクチュエータアーム910と、カメラ904と、収集部材908用のマニピュレータアクチュエータアーム906とを備えている。マニピュレータアクチュエータアーム906は、バケット902から延び、バケット902に取り付けられている。
図10は、一実施形態でのロボットプロセス1000を示す。ブロック1002では、ロボットプロセス1000は、ベースステーションで眠っているロボットを起こす。ブロック1004では、ロボットプロセス1000は、カメラを使用してロボットを環境の周囲でナビゲートさせ、玩具、衣料品、障害物、及びその他の物体のタイプ、サイズ、及び位置をマッピングする。ブロック1006では、ロボットプロセス1000は、ニューラルネットワークを操作し、左右のステレオカメラからの画像に基づいて、物体のタイプ、サイズ、及び位置を決定する。開ループブロック1008では、ロボットプロセス1000は、対応するコンテナに伴い、物体の各カテゴリに対して実行する。ブロック1010では、ロボットプロセス1000は、カテゴリの中でピックアップする特定の物体を選択する。ブロック1012では、ロボットプロセス1000は、パスプランニングを実行する。ブロック1014では、ロボットプロセス1000は、ターゲット物体に隣接してターゲット物体に対面しながらナビゲートする。ブロック1016では、ロボットプロセス1000は、アームを作動させて、他の物体が邪魔にならないように移動させ、ターゲット物体をフロントバケットへ押圧する。ブロック1018では、ロボットプロセス1000は、フロントバケットを上に傾けて、物体をバケットに保持する(バケットの「ボウル」構成を作成する)。ブロック1020では、ロボットプロセス1000は、アームを作動させて前で閉じ、ロボットが次の位置へナビゲートする間、車輪の下から物体を遠ざける。ブロック1022では、ロボットプロセス1000は、収集のために現在の物体カテゴリのコンテナに隣接して、パスプランニングとナビゲートとを実行する。ブロック1024では、ロボットプロセス1000は、ロボットをコンテナの側面に位置合わせする。ブロック1026では、ロボットプロセス1000は、バケットを上に後に持ち上げて、コンテナの側面上にターゲット物体を持ち上げる。ブロック1028では、ロボットプロセス1000は、ロボットをベースステーションに復帰させる。
あまり洗練されていない動作モードでは、ロボットは、最初に環境のグローバルマップを作成せずに、視野内の物体を日和見的にピックアップし、コンテナに落下させてよい。例えば、ロボットは、ピックアップする物体が見つかるまで単純に探索し、一致するコンテナが見つかるまで再び探索してよい。このアプローチは、探索する領域が限られている単一ルーム環境で効果的に機能する可能性がある。
図11はさらに、一実施形態でのロボットプロセス1100を示す。ロボットプロセス1100の例示的な例は、図12に示されているように、ロボットシステムが状態空間マップ1200の実施形態にわたってシーケンスする、図13ないし図16Bにグラフィカルなシーケンスとして示されている。
シーケンスは、ロボットがスリープ(スリープ状態1202)し、ベースステーション(図13及びブロック1102)で充電することから始まる。ロボットは、例えばスケジュールに従って起動され、探索モード(環境探索状態1204、起動アクション1206、スケジュール開始時刻1208、図14A及び図14B)にはいる。環境探索状態1204では、ロボットは、カメラ(及びその他のセンサ)を使用して環境をスキャンし、環境マップを更新し、マップでの自らの位置をローカライズする(ブロック1104、1210で構成された間隔での探索)。ロボットは、環境探索状態1204からスリープ状態1202に復帰することができるが、それには1212でピックアップする物体がなくなっているか、1214でバッテリが低下していることが条件となる。
環境探索状態1204から、ロボットは物体整理状態1216に移行することができるが、この状態では、1218でロボットが動作してフロアでのアイテムを移動させ、カテゴリごとに整理する。1220でフロアで物体が接近しすぎていると決定したロボットにより、又は、1222で1つ以上の物体へのパスが妨害されていると決定したロボットにより、この移行はトリガーされてよい。これらのトリガー条件のいずれも満たされない場合に、1226で環境マップが、物体のカテゴリに対して少なくとも1つのドロップオフコンテナを含む条件下では、ロボットは、環境探索状態1204から物体ピックアップ状態1224に直接移行してよい。1228でコンテナのカテゴリの中に、ピックアップのための妨害されていないアイテムがある。同様に、ロボットは、これらの後者の条件下で、物体整理状態1216から物体ピックアップ状態1224に移行してよい。ロボットは、1230でピックアップの準備ができた物体がない条件下では、物体整理状態1216から環境探索状態1204に復帰して移行してよい。
環境探索状態1204及び/又は物体整理状態1216では、カメラからの画像データを処理して異なる物体を識別する(ブロック1106)。ロボットは、ピックアップする特定の物体タイプ/カテゴリを選択し、次にナビゲートする経由地点を決定し、環境のマップ(ブロック1108、ブロック1110、ブロック1112)に基づいて、ピックアップするターゲット物体とタイプの位置とを決定する。
物体ピックアップ状態1224では、ロボットはターゲット物体に隣接するゴール位置を選択する(ブロック1114)。ロボットはパスプランニングアルゴリズムを使用して、障害物(図15A)を回避しながら、その新しい位置へ自らをナビゲートする。ロボットは、左右のプッシャーアームを作動させて、ターゲット物体が貫通してフィットするのに十分な大きさの開口を作成するが、ロボットが前方に駆動されるときに他の不要な物体が収集されるほどの大きさではない(ブロック1116)。ロボットは、ターゲット物体が左右のプッシャーアームの間に来るように前方に駆動され、左右のプッシャーアームが連携してターゲット物体を収集バケットへ押圧する(図15B、図15C及びブロック1118)。
ロボットは、環境のマップに基づいて、ピックアップしようとする選択したタイプの他のターゲット物体を特定するために、物体ピックアップ状態1224で続行してよい。他のこのような物体が検出された場合に、ロボットはターゲット物体に隣接する新しいゴール位置を選択する。パスプランニングアルゴリズムを使用して、以前に収集されたターゲット物体を搬送しながら、障害物(図15D)を回避しながら新しい位置へ自らをナビゲートする。ロボットは、左右のプッシャーアームを作動させて、ターゲット物体が貫通してフィットするのに十分な大きさの開口を作成するが、ロボットが前方に駆動されるときに他の不要な物体が収集されるほどの大きさではない。ロボットは、次のターゲット物体が左右のプッシャーアーム(図15E)の間に来るように前方に駆動される。ここでも、左右のプッシャーアームが連携して、ターゲット物体を収集バケット(図15F)へ押圧する。
1232でカテゴリの中の識別された全ての物体がピックアップされる条件下で、又は、1234でバケットが容量一杯である(at capacity)場合に、ロボットは、1236で物体ドロップオフ状態に移行し、環境のマップを使用して、収集された物体のタイプに対してビンに隣接するゴール位置を選択し、パスプランニングアルゴリズムを使用して、障害物を回避しながら新しい位置へ自らをナビゲートする(ブロック1120)。ロボットはビンに向かって上に後退し、ロボットの背面をビンの背面に合わせるドッキング位置になる(図16Aとブロック1122)。ロボットは、上に後にバケットを持ち上げ、ロボットの背面にある剛体アームの上で回転する(ブロック1124)。これにより、ターゲット物体がビンの上部よりも上に持ち上げられ、ビンの中にダンプされる(図16B)。
物体ドロップオフ状態1236から、ロボットは環境探索状態1204に復帰して移行することができるが、1238でピックアップするアイテムがさらに多いか、1240で環境の不完全なマップを持っていることが条件である。ロボットは探索を再開し、関連する収集ビンを有する環境の中の他のタイプの物体ごとにプロセスを繰り返してよい(ブロック1126)。
これに代えて、ロボットは、1212でピックアップする物体がなくなっているか、1214でバッテリが低下しているという条件で、物体ドロップオフ状態1236からスリープ状態1202に移行してよい。バッテリが十分に充電された場合に、又は次の起動又はスケジュールされたピックアップ間隔で、ロボットは探索を再開し、関連する収集ビンを持つ環境の中の他のタイプの物体ごとにプロセスを繰り返してよい(ブロック1126)。
図17は、一実施形態でのロボットシステムのロボット制御アルゴリズム1700を示す。ロボット制御アルゴリズム1700は、整理するべき物体の1つ以上のカテゴリを選択することから始まる(ブロック1702)。選択されたカテゴリ(複数可)の中で、ターゲットカテゴリと経路の開始位置とを決定するグループ化が識別される(ブロック1704)。カテゴリ(複数可)の中の物体グループ化を識別するために、多くの周知のクラスタリングアルゴリズムの任意のものを使用してよい。
開始ゴール位置への経路が形成され、その経路は0個以上の経由地点を含む(ブロック1706)。移動フィードバックは、パスプランニングアルゴリズムに返される。経由地点は、静的及び/又は動的(移動)障害物(ターゲットグループ及び/又はカテゴリの中にない物体)を回避するために選択されてよい。ロボットのモーションコントローラ(movement controller)は、ターゲットグループへの経由地点に続くことに関与する(ブロック1708)。安全に整理可能であるか否かを決定するための追加の品質(qualifications)を含んで、ターゲットグループは、ゴール位置を達成した時点で評価される(ブロック1710)。
ロボットのマニピュレータ(例えばアーム)と位置決めシステム(例えば車輪)とが、グループを整理するために(ブロック1714)、生成された一連の起動を決定するのに、ロボットの知覚システムは、画像セグメンテーションを提供する(perform,実行する)(ブロック1712)ことに関与される。起動のシーケンスは、ターゲットグループが整理されるまで、又は整理に失敗が生じるまで、繰り返される(失敗により、ブロック1710への回帰が引き起こされる)。知覚システムの関与は、ターゲットグループへの近接によってトリガーされてよい。ターゲットグループが整理され、ロボットに十分なバッテリ寿命が残っていて、整理するグループが一層多くカテゴリ(複数可)の中にある条件下で、これらのアクションが繰り返される(ブロック1716)。
バッテリ寿命が短くなると、ロボットはドッキングステーションに逆にナビゲートして充電する(ブロック1718)。ただし、十分なバッテリ寿命があり、カテゴリ(複数可)が整理されている条件下で、ロボットは物体ピックアップモードにはいり(ブロック1720)、整理されたグループのいずれかをピックアップして、ドロップオフコンテナに返却する。さらに、ピックアップモードにはいることは、ターゲット物体の少なくとも1つのドロップオフコンテナを含む環境マップと、ピックアップのためのターゲットグループの中に障害物のない物体が存在することとに、条件づけられてよい。ピックアップの準備ができた物体のグループがない条件下では、ロボットは環境を探索し続ける(ブロック1722)。
図18は、一実施形態でのロボットシステムのロボット制御アルゴリズム1800を示す。ロボット制御アルゴリズム1800は、整理するべき物体の1つ以上のカテゴリを選択することから始まる(ブロック1802)。選択されたカテゴリ(複数可)の中で、ターゲットカテゴリと経路の開始位置とを決定するグループ化が識別される(ブロック1804)。カテゴリ(複数可)の中の物体グループ化を識別するために、多くの周知のクラスタリングアルゴリズムの任意のものを使用してよい。
開始ゴール位置への経路が形成され、その経路は0個以上の経由地点を含む(ブロック1806)。移動フィードバックは、パスプランニングアルゴリズムに返される。経由地点は、静的及び/又は動的(移動)障害物(ターゲットグループ及び/又はカテゴリの中にない物体)を回避するために選択されてよい。ロボットのモーションコントローラは、ターゲットグループへの経由地点に続くことに関与する(ブロック1808)。安全に整理可能であるか否かを決定するための追加の品質を含んで、ターゲットグループは、ゴール位置を達成した時点で評価される(ブロック1810)。
ロボットのマニピュレータ(例えばアーム)と位置決めシステム(例えば車輪)とが、グループを整理するために(ブロック1814)、生成された一連の起動を決定するのに、ロボットの知覚システムは、画像セグメンテーションを提供する(ブロック1812)ことに関与される。起動のシーケンスは、ターゲットグループが整理されるまで、又は整理に失敗が生じるまで、繰り返される(失敗により、ブロック1810への回帰が引き起こされる)。知覚システムの関与は、ターゲットグループへの近接によってトリガーされてよい。ターゲットグループが整理され、ロボットに十分なバッテリ寿命が残っていて、グループが一層多く、整理するカテゴリ(複数可)の中にある条件下で、これらのアクションが繰り返される(ブロック1816)。
バッテリ寿命が短くなると、ロボットはドッキングステーションに逆にナビゲートして充電する(ブロック1818)。ただし、十分なバッテリ寿命があり、カテゴリ(複数可)が整理されている条件下で、ロボットは物体ピックアップモードにはいり(ブロック1820)、整理されたグループのいずれかをピックアップして、ドロップオフコンテナに返却する。さらに、ピックアップモードにはいることは、ターゲット物体の少なくとも1つのドロップオフコンテナを含む環境マップと、ピックアップのためのターゲットグループの中に障害物のない物体が存在することとに、条件づけられてよい。ピックアップの準備ができた物体のグループがない条件下では、ロボットは環境を探索し続ける(ブロック1822)。
図19は、一実施形態でのロボットシステムのロボット制御アルゴリズム1900を示す。選択された物体カテゴリの中のターゲット物体が識別され(アイテム、即ちブロック1902)、ロボットのゴール位置は、ターゲット物体の隣接位置として決定される(ブロック1904)。ターゲット物体への経路は、一連の経由地点として決定され(ブロック1906)、ロボットは、障害物を避けながら経路に沿ってナビゲートされる(ブロック1908)。
隣接する場所に到達すると、ターゲット物体の評価が行われ、安全に操作することができるか否かが決定される(ブロック1910)。ターゲット物体を安全に操作できる条件下で、例えばバケットなどのロボットのマニピュレータアームを使用して物体を持ち上げるようにロボットを操作する(ブロック1912)。ロボットの知覚モジュールをこの時点で利用してよく、ターゲット物体と近くの物体とを分析し、操作をさらによく制御してよい(ブロック1914)。
ターゲット物体は、一度バケット又は他のマニピュレータアームの上になったら、固定される(ブロック1916)。ロボットが、さらに多くの物体のための容量を有さない、又は、選択したカテゴリ(複数可)の最後の物体である条件下で、物体ドロップオフモードが開始される(ブロック1918)。そうでない場合に、ロボットはプロセスを再び開始してよい(ブロック1902)。
図20は、一実施形態によるロボット制御アルゴリズム2000を示す。ブロック2002では、図7Aないし図7Dに関して説明されているようなデクラッターロボットの左カメラと右カメラ、又はロボットカメラの他の構成は、デクラッター領域の中にスケール不変のキーポイントを生成するために使用可能である入力を供給してよい。
本開示における「スケール不変のキーポイント」又は「視覚的なキーポイント」は、異なる領域から撮影された写真など、異なる視点にわたって維持が可能な特徴的な視覚的特徴を指す。これは、デクラッター領域でキャプチャーされた画像の中の一態様であってよく、元のキャプチャーとは異なる角度、異なるスケールで、又は異なる解像度を使用して撮影された他の画像で、この特徴又は物体がキャプチャーされた場合に、領域の特徴又は領域の中の物体を識別するために使用されてよい。
ロボットのカメラ又はモバイルデバイスのカメラで撮影された画像に基づいて、スケール不変のキーポイントは、デクラッターロボット、又はモバイルデバイスにインストールされた拡張現実ロボットインターフェースによって検出されてよい。モバイルデバイスでのデクラッターロボット又は拡張現実ロボットインターフェースが、一致するコンテンツを表示するカメラフレーム間の幾何学的変換を決定するのに、スケール不変のキーポイントは役立つことができる。これは、デクラッター領域の中のロボット又はモバイルデバイスの位置の推定を、確認又は微調整するのに役立つことができる。
スケール不変特徴変換(SIFT),Speeded-Up Robust Features(SURF),Oriented Robust Binary features(ORB),及びSuperPointなどの、当技術分野でよく理解されているアルゴリズムを使用して(ただしそれに限定はされない)、スケール不変のキーポイントを検出、変換、及び照合してよい。
デクラッター領域に位置する物体は、左カメラと右カメラとからの入力に基づいてブロック2004で検出することができ、これにより物体の開始位置を規定し、物体をカテゴリに分類する。ブロック2006で、物体について再識別指紋を生成することができ、そこでは、再識別指紋を使用して、この物体に対しての、将来検出された物体の視覚的類似性を決定する。将来検出された物体は、同じ物体であってよく、グローバルエリアマップの更新又は変換の一部として再検出されてよく、又は将来、同様に位置する類似物体であってよい。ここで、再識別指紋を使用して、物体を一層迅速に分類するのに役立ててよい。
ブロック2008で、デクラッターロボットは、デクラッター領域の中にローカライズされてよい。デクラッターロボット位置を決定するために、左カメラと、右カメラと、光検出及び測距(LIDAR)センサと、慣性測定ユニット(IMU)センサとのうちの少なくとも1つからの入力を使用してよい。デクラッター領域をマッピングして、スケール不変のキーポイント、物体、及び物体の開始位置を含むグローバルエリアマップを作成してよい。デクラッター領域の中の物体は、開始位置と、カテゴリと、再識別指紋とのうちの少なくとも1つに基づいて、ブロック2010で再識別してよい。各物体には、ブロック2012で永続的な一意の識別子を割り当ててよい。
ブロック2014で、デクラッターロボットは、ユーザが操作するモバイルデバイスにアプリケーションとしてインストールされた拡張現実ロボットインターフェースからカメラフレームを受容してよく、カメラフレームに基づいて、カメラフレームからグローバルエリアマップへの変換を使用して、開始位置とスケール不変のキーポイントとを伴って、グローバルエリアマップを更新してよい。特定の幾何学的変換を使用して、モバイルカメラフレームで検出されたものと一致するスケール不変のキーポイントのセットを見つけるために、カメラフレームからグローバルエリアマップへの変換は、グローバルエリアマップが検索されてよい。この変換では、幾何学的一貫性を維持しながら、一致するキーポイントの数を最大化し、一致しないキーポイントの数を最小化してよい。
ブロック2016で、物体のユーザインジケータが生成されてよく、ユーザインジケータは、次のターゲット、ターゲットの順序、危険である、大きすぎる、割れ物である(breakable,壊れやすい)、乱雑である、及び移動経路への遮断のものを含んでよい。グローバルエリアマップと物体の詳細とは、ブロック2018でモバイルデバイスに伝送されてよく、物体の詳細は、物体の視覚的スナップショット、カテゴリ、開始位置、永続的な一意の識別子、及びユーザインジケータのうちの少なくとも1つを含んでよい。この情報は、図7Cで導入された通信724のモジュールと、図24で導入されたネットワークインターフェース2402とでサポートされるような、BlueTooth(登録商標)又はWifi(登録商標)などの無線シグナリングを使用して伝送されてよい。
更新されたグローバルエリアマップ、物体、開始位置、スケール不変のキーポイント、及び物体の詳細は、拡張現実ロボットインターフェースを使用して、モバイルデバイスに表示されてよい。拡張現実ロボットインターフェースは、拡張現実ロボットインターフェースへのユーザ入力を受け入れてよい。ここで、ユーザ入力は、ブロック2020で、物体タイプの変更、次に収納する、収納しない、及びユーザインジケータの変更を含む、物体プロパティのオーバーライドを示す。物体プロパティのオーバーライドは、モバイルデバイスからデクラッターロボットに伝送されてよく、ブロック2022でグローバルエリアマップ、ユーザインジケータ、及び物体の詳細を更新するために使用されてよい。ブロック2018に復帰すると、デクラッターロボットは、更新されたグローバルエリアマップをモバイルデバイスに再伝送して、この情報を再同期させてよい。
図21は、一実施形態によるロボット制御アルゴリズム2100を示す。ブロック2102で、デクラッターロボットは、モバイルデバイスでのアプリケーションとしてインストールされた拡張現実ロボットインターフェースに、デクラッター領域を表すグローバルエリアマップを伝送してよい。グローバルエリアマップは、デクラッター領域にクラッターする物体に関する物体の詳細を含んでよい。モバイルデバイスは、カメラを含んでよい。ブロック2104で、拡張現実ロボットインターフェースアプリケーションが、カメラフレームをモバイルデバイスカメラから受容してよい。カメラフレームは、ブロック2106で、デクラッター領域の中の物体を検出し、それらをカテゴリに分類するために使用してよい。
ブロック2108で、物体について再識別指紋を生成することができ、そこでは、再識別指紋を使用して、この物体に対しての、将来検出された物体の視覚的類似性を決定してよい。将来検出された物体は、同じ物体であってよく、グローバルエリアマップの更新又は変換の一部として再検出されてよく、又は将来、同様に位置する類似物体であってよい。ここで、再識別指紋を使用して、物体を一層迅速に分類するのに役立ててよい。
ブロック2110では、カメラフレームの中に地上面が検出されてよい。モバイルデバイスは、地上面と、物体と、物体カテゴリと、再識別指紋とのうちの少なくとも1つを使用して、ブロック2112で、グローバルエリアマップにローカライズしてよい。ブロック2114で、物体は、開始位置と、カテゴリと、再識別指紋とのうちの少なくとも1つに基づいて再識別してよい。
ブロック2116で、カメラフレームと、物体と、物体にオーバーレイされた境界ボックスとユーザインジケータとを示す拡張現実ロボットインターフェースの中に、ユーザ体験をレンダリングしてよい。拡張現実ロボットインターフェースは、ユーザインジケータとのユーザの相互作用に基づいてユーザ入力を受け入れてよい。このユーザ相互作用は、ユーザインジケータをクリック又はタップすることを含んでよい。一実施形態では、ユーザインジケータは、ユーザが実行するアクションを含んでよく、ブロック2118で、拡張現実ロボットインターフェースは、指示されたタスクを完了するために、デクラッター領域で実行されたユーザアクションを検出してよい。一実施形態では、ユーザアクションは、拡張現実ロボットインターフェースを介したユーザ確認、以前のカメラフレームと更新されたカメラフレームとの間で記録された変更、又はデクラッターロボットのカメラとセンサとからの情報に基づいて検出してよい。表示インジケータ(インジケータを表示する)は、ブロック2120でユーザの支援に感謝を伝えてよい。
ブロック2122で、拡張現実ロボットインターフェースは、ユーザ入力(例えば、ユーザがユーザインジケータをクリック又はタップすること)に基づいて、物体に対して使用可能なアクションを表示してよい。その後、拡張現実ロボットインターフェースは、ブロック2124に示されている使用可能なアクションの少なくとも1つを選択する追加のユーザ入力を受け入れてよい。拡張現実ロボットインターフェースは、ブロック2126で、追加のユーザ入力に基づいて、物体プロパティのオーバーライドをデクラッターロボットに伝送してよい。
図22は、一実施形態によるデクラッターロボット環境2200を示す。デクラッターロボット環境2200は、デクラッター領域2202と、スケール不変のキーポイント2204と、領域にクラッターする物体2206と、物体2206が配置可能である行先ビン2208(即ち、コンテナであってよい)と、拡張現実ロボットインターフェースアプリケーション2212がインストールされカメラフレーム2214を提供する機能を備えているモバイルデバイス2210と、ロボット700とを含んでよい。
ロボット700は、図7C及び図7Dに示すセンサ及びカメラを使用して、デクラッター領域2202の特徴を検出してよい。これらの特徴は、壁、隅(コーナー)、家具などのスケール不変のキーポイント2204を含んでよい。さらにロボット700は、ユーザ入力、過去に扱われた物体との類似性の認識、機械学習、又はこれらのいくつかの組み合わせに基づいてロボット700が決定できるカテゴリに基づいて、これらの物体2206が配置される可能性のある、デクラッター領域2202のフロアと行先ビン2208とにある物体2206を検出してよい。さらにロボット700は、センサとカメラとを使用して、デクラッター領域2202内で自らをローカライズしてよい。ロボット700は、図20に関して説明されるように、このデータの全てをグローバルエリアマップ2216に統合してよい。
デクラッターロボット環境2200は、タブレット又はスマートフォンなどのモバイルデバイス2210を所持しているユーザを含んでよい。モバイルデバイス2210は、本開示に従って機能する拡張現実ロボットインターフェースアプリケーション2212がインストールされてよい。拡張現実ロボットインターフェースアプリケーション2212は、モバイルデバイス2210の一部として構成されたカメラを使用して、カメラフレーム2214を提供してよい。カメラフレーム2214は、モバイルデバイス2210をデクラッターロボット環境2200内にローカライズするように識別及び使用される可能性のある地上面2218を含んでよい。その結果、ロボット700によって検出されたデクラッター領域2202に関する情報が、カメラフレームからグローバルエリアマップへの変換2220に従って変換されることができ、デクラッター領域2202内の物体2206と、それらの物体2206に付与されたユーザインジケータ及び物体プロパティのオーバーライドとに関して、ロボット700及びモバイルデバイス2210が同期を保つことができるようにする。これは、図20及び図21、及び図23Aに関してさらに詳細に説明される。
一実施形態では、グローバルエリアマップ2216は、デクラッター領域2202のトップダウン二次元表現であってよい。ロボット700によって検出された情報がユーザの視点から拡張現実ロボットインターフェースアプリケーション2212で表現されるように、グローバルエリアマップ2216は、カメラフレームからグローバルエリアマップへの変換2220を受けてよい。グローバルエリアマップ2216は、モバイルデバイス位置2222と、デクラッターロボット位置2224と、物体の開始位置2226とを含むように更新されてよい。一実施形態では、拡張現実ロボットインターフェースアプリケーション2212はさらに、モバイルデバイス位置2222とデクラッターロボット位置2224とを示してよいが、これらは本図には示されていない。
図23Aは、デクラッターセッションの開始時での、一実施形態による拡張現実ロボットインターフェース2300を示す。拡張現実ロボットインターフェース2300は、図22のデクラッターロボット環境2200で導入されたように、ピックアップする物体2206と行先ビン2208とを含むデクラッター領域2202を示してよい。境界ボックス2302とユーザインジケータ2304とは、図に示すように物体2206の上に重ねて表示してよい。これらは、物体2206のカテゴリ2306と、デクラッター領域2202の中のアイテムに関してユーザが取る必要があるアクションを示してよい。一実施形態では、物体2206のどのカテゴリ2306がそれぞれに堆積されることが意図されているかを示すために、インジケータを行先ビン2208に与えてよい。ロボットは、動的にこの決定を行ってよく、又は、一貫して使用するようにビンの上でユーザによって訓練又は指示されてよい。
図に示されたデクラッター領域2202では、物体2206と行先ビン2208とは、一般的なカテゴリ未定の2308タイプ、楽器2310のタイプ、ぬいぐるみ2312、プラスチック製玩具2314、衣料品2316、及びクラフト用品2318に関連するものとして分類されてよい。境界ボックス2302と、カテゴリ2306に関連するその他のインジケータとは、色、線の太さとスタイル、又は視覚的に容易に区別できるその他の視覚的特性が異なってよい。
ユーザインジケータ2304は、感嘆符(!)として図示され、デクラッターが始まる前に必要なアクションを特定してよい。例えば、ユーザは、行先ビンがひっくり返ったり、紛失したり、位置ずれしたりした場合に、行先ビンを元の状態に復帰させる必要がある場合がある。ダッフルバッグなどのカテゴリ未定の物体や、ギターなどの繊細で大きな物体は、ロボットではなく、ユーザがピックアップする必要がある場合がある。他のユーザインジケータ2320は、ユーザが必要な予備アクションを完了した後に、ロボット700が物体2206をピックアップし始める順序を示すために数字を使用してよい。例えば、図示されたユーザインジケータ2320は、ユーザアクションが完了した後、ロボット700がぬいぐるみ2312をピックアップすることによってデクラッターを開始しようとしていることを示してよい。ユーザは、自分がタスクを完了した後にクリックすることによって、予備アクションのユーザインジケータ2304をクリアしてよい。ユーザは、ロボット700が物体2206をピックアップする順序を調整するために、整頓する順序に関連する境界ボックス2302又はユーザインジケータ2304をクリックしてよい。
ユーザインジケータ2304及び2320がクリアされた後に、図23Aで導入された拡張現実ロボットインターフェース2300を、図23Bに示す。ロボットによって要求された最初のヘルプアクションは、完了している。ビンは正しく配置され、ダッフルバッグ(カテゴリ未定2308)とギター(楽器2310)とは、デクラッター領域2202からクリアされている。ぬいぐるみ2312は、ロボット700にピックアップされ、指定された行先ビンに堆積されている。新しいユーザインジケータ2322は、シャツ(衣料品2316)が、ピックアップされようとする、指定されたビンに堆積されることを意図した次の物体であることを示す。
一実施形態で、これらのユーザインジケータ2304及び2320は、タスクを完了してロボットを観察する場合に、ユーザによってクリアされてよく、物体2206がカメラフレーム2214の中で許容可能な行先の場所に変位したと検出される場合に、拡張現実ロボットインターフェース2300によってクリアされてよく、経路の中でユーザが移動した物体を検出しなくなり、整理しようとしている物体をピックアップして堆積させる場合に、ロボット700によってクリアされてよく、又は、それらのいくつかの組み合わせによってクリアされてよい。
図23Cは、衣料品2316のアイテムのユーザインジケータ2322がクリアされ、衣料品2316が指定されたビンに置かれた後の、拡張現実ロボットインターフェース2300を示す。次のユーザインジケータ2324は、プラスチック製玩具2314がピックアップされ、指定されたビンに置かれる順序を示す。
図23Dは、プラスチック製玩具2314のユーザインジケータ2324がクリアされ、それらのアイテムが指定されたビンに置かれた後の、拡張現実ロボットインターフェース2300を示す。ユーザインジケータ2326は、指定されたビンに堆積するために、ロボット700がクラフト用品2318(手芸・工芸用品)をピックアップしようとする順序を示す。
図23Eは、全てのアイテムがピックアップされ、それらのビンに置かれた後での、一実施形態による拡張現実ロボットインターフェース2300を示す。
図24は、ここに記載されるシステムのコンポーネントとプロセスステップとを実施するためのロボット制御システム2400の実施形態を示す。
入力デバイス2404(例えば、携帯電話やパソコンなどのロボットやコンパニオンデバイスの)は、物理現象をマシン内部信号、典型的には電気信号、光学信号又は磁気信号に変換するトランスデューサを含む。信号は、無線周波数(RF)範囲の電磁放射の形で無線であってよいが、さらに可能性として、赤外線又は光学範囲であってよい。入力デバイス2404の例としては、接触、又は物体からの物理的圧力、又は物体の表面への近接に応答する接触センサ、空間又は平面を横切る運動に応答するマウス、媒体(通常は空気)内の振動をデバイス信号に変換するマイク、二次元又は三次元の物体上の光学パターンをデバイス信号に変換するスキャナなどがある。入力デバイス2404からの信号は、さまざまなマシン信号の信号導体(例:バスやネットワークインターフェース)と回路とを介して、メモリ2406に供給される。
メモリ2406は通常、第1レベル又は第2レベルのメモリデバイスとして知られるものであり、入力デバイス2404から受容した信号の記憶(物質の構成又は物質の状態を介して)、CPU2408の動作を制御するための命令及び情報、及び記憶デバイス2410からの信号を供給する。メモリ2406及び/又は記憶デバイス2410は、コンピュータ実行可能な命令を記憶してよい。従って、CPU2408に適用されて実行された場合に、ここに開示されるプロセスの実施形態を実施するロジック2412を形成する。
メモリ2406に記憶された情報は、通常、デバイスのCPU2408に関して、直接アクセスできる。デバイスに入力された信号は、メモリ2406の内部物質/エネルギー状態の再構成を引き起こし、本質的に新しいマシン構成を作成し、制御信号(命令)と制御信号に関連して供給されたデータでCPU2408を構成することによって、ロボット制御システム2400の動作に影響を与える。
第2レベル又は第3レベルのストレージデバイス2410は、低速だが大容量のマシンメモリ機能を提供してよい。ストレージデバイス2410の例としては、ハードディスク、光ディスク、大容量フラッシュメモリ又はその他の不揮発性メモリ技術、磁気メモリなどがある。
CPU2408は、ストレージデバイス2410内の信号によってメモリ2406の構成を変更させてよい。つまり、CPU2408は、メモリ2406内のストレージデバイス2410からデータと命令とを読み取らせてよい。これは、命令及びデータ信号としてCPU2408の動作に影響を与え、さらにそこから出力デバイス2414に供給されてよい。CPU2408は、メモリ2406のマシンインターフェースにシグナリングすることでメモリ2406の内容を変更して、内部構成を変更し、次にストレージデバイス2410に信号を変換して送り、その物質の内部構成を変更してよい。つまり、データと命令は、普通は揮発性であるようにしたメモリ2406から、普通は不揮発性であるようにしたストレージデバイス2410にバックアップされてよい。
出力デバイス2414は、トランスデューサであり、メモリ2406から受容した信号を、空気中の振動又はマシンディスプレイの光のパターン、振動(即ち、触覚デバイス)、又はインク又はその他の材料のパターン(即ち、プリンターと3Dプリンター)などの物理現象に変換する。
ネットワークインターフェース2402は、メモリ2406から信号を受容し、典型的にはマシンネットワークを介して、他のマシンへの電気信号、光学信号、又は無線信号に変換する。ネットワークインターフェース2402は、マシンネットワークからの信号も受容し、それらをメモリ2406への電気信号、光学信号、又は無線信号に変換する。
ここに記載されるさまざまな機能操作は、その操作又は機能を反映する名詞又は名詞句を使用して称される、ロジックで実施されてよい。例えば、関連付け操作は、「関連付け装置(associator)」又は「相関装置(correlator)」によって実行されてよい。同様に、切り替えは「スイッチ」によって、選択は「セレクタ」によって実行されるなどしてよい。「ロジック」は、マシン実行可能命令(ソフトウェア及びファームウェア)、及び/又は回路(ハードウェア)を含む、マシンメモリ回路と、非一時的なマシン可読な媒体とを指す。この命令・回路は、その材料及び/又は材料・エネルギー構成として、制御及び/又は手順信号、及び/又は設定及び値(抵抗、インピーダンス、静電容量、インダクタンス、電流/電圧定格など)を含む。この信号・設定・値は、デバイスの動作に影響を与えるために適用されてよい。磁気メディア、電子回路、電気及び光学メモリ(揮発性と不揮発性との両方)、及びファームウェアは、ロジックの例である。ロジックは、純粋な信号又はソフトウェア自体を特に除外する(ただし、ソフトウェアを構成し、それによって物質の構成を形成するマシンメモリは除外しない)。
この開示の中で、異なる構成要素(これは、「ユニット」、「回路」、その他のコンポーネントなどとさまざまに称してよい)は、1つ以上のタスク又は操作を実行するために「構成されている」と記載されてよく、又は請求項に記載されてよい。この定式化、即ち、[1つ以上のタスクを実行する]ように構成された[構成要素]は、ここでは構造(即ち、電子回路のような物理的なもの)を指すために使用される。さらに具体的には、この定式化は、この構造が操作中に1つ以上のタスクを実行するように配置されていることを示すために使用される。構造は、構造が現在操作されていない場合でも、何らかのタスクを実行するように「構成されている」と言ってよい。「複数のプロセッサコアにクレジットを分配するように構成されているクレジット分配回路」は、例えば、当該の集積回路が現在使用されていなくても(例:電源装置が接続されていない)、動作中にこの機能を実行する回路を有する集積回路をカバーすることを意図している。従って、何らかのタスクを実行するように「構成されている」と記載又は言及されている構成要素は、タスクを実施するために実行可能なプログラム命令を記憶するデバイス、回路、メモリなど、何か物理的なものを指す。本明細書中で、この文言は、何か無形のものを指すためには、使用されない。
「構成されている」という用語は、「構成可能な」という意味ではない。例えば、プログラムされていないFPGAは、プログラミング後にその機能を実行するように「構成可能」である可能性があっても、特定の機能を実行するように「構成されている」とはみなされない。
添付の請求項の中で、1つの構造が1つ以上のタスクを実行するように「構成されている」と記載することは、その請求項の要素について35USC112(f)を適用しないことを明確に意図している。従って、「(機能を実行)する手段」という構造を他に含まない本出願の請求項は、35USC112(f)に基づいて解釈されないものとする。
ここで使用される「に基づく」という文言は、決定に影響を与える1つ以上の要因を記載するために使用される。この文言は、追加の要因が決定に影響を与えることができる可能性を排除するものではない。つまり、決定は、特定される要因のみに基づいて行われてよく、又は、特定される要因とその他の特定されない要因とに基づいて行われてよい。また、「Bに基づいてAを決定する」という文言を考えるとする。この文言は、BがAを決定するために使用される、又はAの決定に影響を与える要因であることを特定する。この文言は、Aの決定がCなどの他の要因にも基づくことができる可能性を排除するものではない。この文言はまた、AがBのみに基づいて決定される実施形態をカバーすることを意図している。ここで使用されるように、「基づく」という文言は、「少なくとも一部に基づく」という文言と同義である。
ここで使用される「応答して」という文言は、効果をトリガーする1つ以上の要因を記載するために使用される。この文言は、追加の要因が効果に影響を与えたり、その他の方法で効果をトリガーしたりすることができる可能性を排除するものではない。つまり、効果は、それらの要因にのみ反応されてよく、又は、特定される要因とその他の特定されない要因とにも反応されてよい。また、「Bに反応してAを実行する」という文言を考えるとする。この文言は、BがAの実行をトリガーする要因であることを特定する。この文言は、Aの実行がCなどの他の要因にも反応するものであってよい可能性を排除するものではない。この文言はまた、AがBに反応してのみ実行される実施形態をカバーすることを意図している。
ここで使用されるように、「第1」、「第2」などの用語は、それらが先行する名詞の標識として使用され、それ以外に明記されていない限り、いかなるタイプの順序付け(例えば、空間的、時間的、論理的など)も意味しない。例えば、8つのレジスタを有するレジスタファイルでは、「第1レジスタ」及び「第2レジスタ」という用語は、8つのレジスタのうちの任意の2つを指すために使用でき、例えば、論理レジスタ0と1だけを指すために使用できるわけではない。
請求項で使用される場合に、「又は」という用語は、包括的な又はとして使用され、排他的な又はとして使用されない。例えば、「x,y又はzのうち少なくとも1つ」という文言は、x,y及びzのいずれか1つ、及びそれらの任意の組み合わせを意味する。
ここで使用されるように、2つ以上の要素に関する「及び/又は」の繰り返しは、1つの要素のみ、又は要素の組み合わせを意味すると解釈されるものとする。例えば、「要素A、要素B、及び/又は要素C」は、要素Aのみ、要素Bのみ、要素Cのみ、要素A及び要素B、要素A及び要素C、要素B及び要素C、又は要素A、B及びCを含んでよい。これに加えて、「要素A又は要素Bのうちの少なくとも1つ」は、要素Aの少なくとも1つ、要素Bの少なくとも1つ、又は要素Aの少なくとも1つ及び要素Bの少なくとも1つを含んでよい。さらに、「要素A及び要素Bのうちの少なくとも1つ」は、要素Aの少なくとも1つ、要素Bの少なくとも1つ、又は要素Aの少なくとも1つ及び要素Bの少なくとも1つを含んでよい。
本開示の主題は、法定要件を満たすために、ここに特殊性をもって記載される。しかしながら、記載自体は、本開示の範囲を制限することを意図していない。むしろ、発明者は、他の現在又は将来の技術と組み合わせて、本明細書に記載されているものと同様の異なるステップ又はステップの組み合わせを含むために、請求項に記載された主題が他の方式でも実施されてよいと考えている。さらに、「ステップ」及び/又は「ブロック」という用語は、ここで採用されている方法の異なる要素を意味するために使用されてよいが、用語は、個々のステップの順序が明示的に記載されている場合を除き、ここで開示されている様々なステップの間、又はその相互の間の特定の順序を意味するものとして解釈されないものとする。
このようにして、例示的な実施形態を詳細に記述したので、請求項に記載されている発明の範囲から逸脱することなく、修正及び変形が可能であることは明らかなこととなる。発明の主題の範囲は、記載された実施形態に限定されず、以下の請求項に述べるものである。
100 ロボットシステム
102 センサ
104 カメラ
106 ローカライズロジック
108 マッピングロジック
110 知覚ロジック
112 パスプランナー
114 ピックアッププランナー
116 モーションコントローラ
118 モータ及びサーボコントローラ
120 キャリブレーション及び物体
122 ローカルからグローバルへの変換
124 環境マップ
126 物体トラッキング
128 現在の状態
130 システム状態設定
132 同期信号
134 移動フィードバック
136 ナビゲーション経由地点
138 画像セグメンテーションを有するローカル知覚
140 操作アクション
142 ターゲット移動
144 画像セグメンテーション起動
200 ロボット
202 バケット
204 マニピュレータアクチュエータアーム
206 カメラ
208 バケットアクチュエータアーム
210 マニピュレータブラシ
302 シール
304 凸部
306 凹部
308 延長された背面
400 ロボット
402 カメラ
404 リフトアクチュエータアーム
406 収集部材
408 バケット
410 リニアアクチュエータ
500 ロボット
502 バケット
504 カメラ
506 マニピュレータアクチュエータアーム
508 収集部材
510 バケットアクチュエータアーム
600 ロボット
602 バケット
604 カメラ
606 マニピュレータアクチュエータアーム
608 収集部材
610 バケットアクチュエータアーム
612 マニピュレータリフトアーム
700 ロボット
702 シャーシ
704 モビリティシステム
706 感知システム
708 制御システム
710 捕捉及び封じ込めシステム
712 バケット
714 バケットリフトアーム
716 バケットリフトアーム枢軸点
718 マニピュレータ部材
720 マニピュレータアーム
722 アーム枢軸点
724 通信
726 フロントカメラ
728 リアカメラ
730 フロントLIDARセンサ
732 リアLIDARセンサ
734 IMUセンサ
736 フロント右カメラ
738 フロント左カメラ
740 リア左カメラ
742 リア右カメラ
744 マニピュレータ枢軸点
800a 下がったバケット位置及び下がったグラバー位置
800b 下がったバケット位置及び上がったグラバー位置
800c 上がったバケット位置及び上がったグラバー位置
900 ロボット
902 バケット
904 カメラ
906 マニピュレータアクチュエータアーム
908 収集部材
910 バケットアクチュエータアーム
1000 ロボットプロセス
1002 ブロック
1004 ブロック
1006 ブロック
1008 開ループブロック
1010 ブロック
1012 ブロック
1014 ブロック
1016 ブロック
1018 ブロック
1020 ブロック
1022 ブロック
1024 ブロック
1026 ブロック
1028 ブロック
1100 ロボットプロセス
1102 ブロック
1104 ブロック
1106 ブロック
1108 ブロック
1110 ブロック
1112 ブロック
1114 ブロック
1116 ブロック
1118 ブロック
1120 ブロック
1122 ブロック
1124 ブロック
1126 ブロック
1200 状態空間マップ
1202 スリープ状態
1204 環境探索状態
1206 起動アクション
1208 スケジュール開始時刻
1210 構成された間隔での探索
1212 ピックアップする物体がなくなっている
1214 バッテリが低下している
1216 物体整理状態
1218 フロアでのアイテムを移動させ、カテゴリごとに整理する
1220 フロアで物体が接近しすぎている
1222 1つ以上の物体へのパスが妨害されている
1224 物体ピックアップ状態
1226 環境マップが、物体のカテゴリに対して少なくとも1つのドロップオフコンテナを含む
1228 コンテナのカテゴリの中に、ピックアップのための妨害されていないアイテムがある
1230 ピックアップの準備ができた物体がない
1232 カテゴリの中の識別された全ての物体がピックアップされる
1234 バケットが容量一杯である
1236 物体ドロップオフ状態
1238 ピックアップするアイテムがさらに多い
1240 環境の不完全なマップ
1700 ロボット制御アルゴリズム
1702 ブロック
1704 ブロック
1706 ブロック
1708 ブロック
1710 ブロック
1712 ブロック
1714 ブロック
1716 ブロック
1718 ブロック
1720 ブロック
1722 ブロック
1800 ロボット制御アルゴリズム
1802 ブロック
1804 ブロック
1806 ブロック
1808 ブロック
1810 ブロック
1812 ブロック
1814 ブロック
1816 ブロック
1818 ブロック
1820 ブロック
1822 ブロック
1900 ロボット制御アルゴリズム
1902 アイテム
1904 アイテム
1906 アイテム
1908 アイテム
1910 アイテム
1912 アイテム
1914 アイテム
1916 アイテム
1918 アイテム
2000 ロボット制御アルゴリズム
2002 ブロック
2004 ブロック
2006 ブロック
2008 ブロック
2010 ブロック
2012 ブロック
2014 ブロック
2016 ブロック
2018 ブロック
2020 ブロック
2022 ブロック
2100 ロボット制御アルゴリズム
2102 ブロック
2104 ブロック
2106 ブロック
2108 ブロック
2110 ブロック
2112 ブロック
2114 ブロック
2116 ブロック
2118 ブロック
2120 ブロック
2122 ブロック
2124 ブロック
2126 ブロック
2200 デクラッターロボット環境
2202 デクラッター領域
2204 スケール不変のキーポイント
2206 物体
2208 行先ビン
2210 モバイルデバイス
2212 拡張現実ロボットインターフェースアプリケーション
2214 カメラフレーム
2216 グローバルエリアマップ
2218 地上面
2220 カメラフレームからグローバルエリアマップへの変換
2222 モバイルデバイス位置
2224 デクラッターロボット位置
2226 物体の開始位置
2300 拡張現実ロボットインターフェース
2302 境界ボックス
2304 ユーザインジケータ
2306 カテゴリ
2308 カテゴリ未定
2310 楽器
2312 ぬいぐるみ
2314 プラスチック製玩具
2316 衣料品
2318 クラフト用品
2320 ユーザインジケータ
2322 ユーザインジケータ
2324 ユーザインジケータ
2326 ユーザインジケータ
2400 ロボット制御システム
2402 ネットワークインターフェース
2404 入力デバイス
2406 メモリ
2408 CPU
2410 記憶デバイス
2412 ロジック
2414 出力デバイス

Claims (20)

  1. 環境の中の物体に対する複数の物体カテゴリのそれぞれを、前記環境の中に配置された対応するコンテナに関連付けることと、
    ベースステーションでロボットを起動することと、
    カメラを使用して前記ロボットを前記環境の周囲でナビゲートし、前記物体のタイプ、サイズ、及び位置をマッピングすることとを含む方法であって、
    各物体カテゴリについて、
    カテゴリの中でピックアップする前記物体のうちの1つ以上を選択するステップと、
    前記ロボットの現在位置からピックアップする前記物体のうちの1つ以上への、パスプランニングを実行するステップと、
    ピックアップする前記物体のうちの1つ以上の隣接ポイントへナビゲートするステップと、
    前記ロボットの前端にあるバケットの前部で開閉するように結合されたマニピュレータを作動させて、障害物を邪魔にならないように移動させ、前記バケットへ1つ以上の前記物体を操作するステップと、
    前記バケットの中に前記物体を保持するように、前記バケットを傾ける又は持ち上げることと、前記マニピュレータを作動させることとの、一方又は両方を行うステップと、
    前記カテゴリについて、対応するコンテナへ隣接する前記ロボットをナビゲートするステップと、
    前記ロボットの後端を対応する前記コンテナの側面に位置合わせするステップと、
    前記バケットを前記ロボットの上に前記後端に向けて持ち上げ、対応する前記コンテナの中に前記物体を堆積させるステップとを備えている、方法。
  2. さらに、前記ロボットを操作して前記環境の中の前記物体をクラスタに整理するステップであり、各クラスタは、前記カテゴリのうちの1つからの物体のみを含む、整理するステップを備えている、請求項1記載の方法。
  3. さらに、
    少なくとも1つの第1アームを操作して前記ロボットの前記マニピュレータを作動させ、障害物を邪魔にならないように移動させ、前記バケットへ1つ以上の前記物体を操作するステップと、
    少なくとも1つの第2アームを操作して、前記バケットを傾ける又は持ち上げるステップとを備えている、請求項1記載の方法。
  4. 各第1アームが、対応する第2アームとペアリングされ、
    さらに、前記第1アームと前記第2アームとのペアリングのそれぞれを、共通に始まりの枢軸点から操作するステップを備えている、請求項1記載の方法。
  5. 前記ロボットの前記マニピュレータを作動させて障害物を邪魔にならないように移動させるステップは、前記マニピュレータを作動させて前記バケットの前方にくさび形を形成することを含む、請求項1記載の方法。
  6. 前記バケットの中に前記物体を保持するように前記マニピュレータを作動させることは、前記バケットの前方にバリアを形成するために前記マニピュレータを作動させることを含む、請求項5記載の方法。
  7. さらに、前記カメラからの画像から、前記物体の前記タイプ、サイズ、及び位置を決定するニューラルネットワークを操作するステップを備えている、請求項1記載の方法。
  8. さらに、
    左カメラと右カメラとからの入力に基づいて、前記環境のデクラッター領域の中にスケール不変のキーポイントを生成するステップと、
    前記左カメラと前記右カメラとからの前記入力に基づいて、前記デクラッター領域の中の前記物体の位置を検出し、これにより開始位置を規定するステップと、
    前記物体を前記カテゴリに分類するステップと、
    前記物体について再識別指紋を生成するステップであり、ここで前記再識別指紋は、前記物体の間の視覚的類似性を決定するために使用される、生成するステップと、
    ロボット位置を決定するために、前記左カメラと、前記右カメラと、光検出及び測距(LIDAR)センサと、慣性測定ユニット(IMU)センサとのうちの少なくとも1つからの入力に基づいて、前記ロボットを前記デクラッター領域の中にローカライズするステップと、
    前記デクラッター領域をマッピングして、スケール不変の前記キーポイント、前記物体、及び前記開始位置を含むグローバルエリアマップを作成するステップと、
    前記開始位置と、前記カテゴリと、前記再識別指紋とのうちの少なくとも1つに基づいて前記物体を再識別するステップとを備えている、請求項1記載の方法。
  9. さらに、
    前記物体に永続的な一意の識別子を割り当てるステップと、
    モバイルデバイスにアプリケーションとしてインストールされた、拡張現実ロボットインターフェースからのカメラフレームを受容するステップと、
    前記カメラフレームに基づいて、カメラフレームからグローバルエリアマップへの変換を使用して、前記開始位置とスケール不変の前記キーポイントとを伴って、前記グローバルエリアマップを更新するステップと、
    前記物体についてインジケータを生成するステップであり、前記インジケータは、次のターゲット、ターゲットの順序、危険である、大きすぎる、割れ物である、乱雑である、及び移動経路への遮断のもののうちの1つ以上を含む、生成するステップとを備えている、請求項8記載の方法。
  10. さらに、
    前記グローバルエリアマップと物体の詳細とを前記モバイルデバイスに伝送するステップであり、物体の前記詳細は、視覚的スナップショット、前記カテゴリ、前記開始位置、永続的な一意の前記識別子、及び前記物体の前記インジケータのうちの少なくとも1つを含む、伝送するステップと、
    更新された前記グローバルエリアマップ、前記物体、前記開始位置、スケール不変の前記キーポイント、及び物体の前記詳細を、前記拡張現実ロボットインターフェースを使用して、前記モバイルデバイスに表示するステップと、
    前記拡張現実ロボットインターフェースへの入力を受け入れるステップであり、前記入力は、物体カテゴリの変更、次に収納する、収納しない、及びユーザインジケータの変更を含む、物体プロパティのオーバーライドを示す、受け入れるステップと、
    物体プロパティの前記オーバーライドを前記モバイルデバイスから前記ロボットに伝送するステップと、
    物体プロパティの前記オーバーライドに基づいて、前記グローバルエリアマップ、前記インジケータ、及び物体の前記詳細を更新するステップとを備えている、請求項9記載の方法。
  11. ロボットシステムであって、
    ロボットと、
    ベースステーションと、
    1つ以上の物体カテゴリにそれぞれ関連付けられている複数のコンテナと、
    モバイルアプリケーションと、
    複数の物体を含む環境の周囲で前記ロボットをナビゲートし、物体のタイプ、サイズ、及び位置をマッピングするロジックとを備え、
    各カテゴリについて、前記ロジックは、
    前記カテゴリの中でピックアップする前記物体のうちの1つ以上を選択し、
    ピックアップする前記物体へのパスプランニングを実行し、
    ピックアップする前記物体のそれぞれの隣接ポイントへナビゲートし、
    前記ロボットの前端にあるバケットの前部で開閉するように結合されたマニピュレータを作動させて、障害物を邪魔にならないように移動させ、前記バケットへ1つ以上の前記物体を操作し、
    前記バケットの中にピックアップする前記物体を保持するように、前記バケットを傾ける及び持ち上げることと、前記マニピュレータを作動させることとの、一方又は両方を行い、
    前記カテゴリについて、対応するコンテナへ隣接する前記ロボットをナビゲートし、
    前記ロボットの後端を対応する前記コンテナの側面に位置合わせし、
    前記バケットを前記ロボットの上に前記後端に向けて持ち上げ、対応する前記コンテナの中にピックアップする前記物体を堆積させる、ロボットシステム。
  12. さらに、前記ロボットを操作して、前記環境の中の前記物体をクラスタに整理するロジックを備え、各クラスタは、前記カテゴリのうちの1つからの物体のみを含む、請求項11記載のシステム。
  13. 前記ロボットは、少なくとも1つの第1アームと、少なくとも1つの第2アームとを含み、
    システムはさらに、前記ロボットの前記マニピュレータを作動させて、障害物を邪魔にならないように移動させ、1つ以上の前記物体を前記バケットへ押圧して、前記バケットを傾ける又は持ち上げるために少なくとも1つの前記第2アームを操作するロジックを備えている、請求項11記載のシステム。
  14. 各第1アームが、対応する第2アームとペアリングされ、
    前記第1アームと前記第2アームとのペアリングのそれぞれは、共通に始まりの枢軸点を有する、請求項11記載のシステム。
  15. さらに、前記ロボットの前記マニピュレータを作動させて、前記バケットの前方にくさび形を形成するロジックを備えている、請求項11記載のシステム。
  16. さらに、前記マニピュレータを作動させて、前記バケットの前方に閉じたバリアを形成するロジックを備えている、請求項15記載のシステム。
  17. さらに、カメラからの画像から、前記物体の前記タイプ、サイズ、及び位置を決定するように構成されているニューラルネットワークを備えている、請求項11記載のシステム。
  18. さらに、
    左カメラと右カメラとからの入力に基づいて、前記環境のデクラッター領域の中にスケール不変のキーポイントを生成し、
    前記左カメラと前記右カメラとからの前記入力に基づいて、前記デクラッター領域の中の前記物体の位置を検出し、これにより開始位置を規定し、
    前記物体を前記カテゴリに分類し、
    前記物体について再識別指紋を生成し、ここで前記再識別指紋は、前記物体の間の視覚的類似性を決定するために使用され、
    ロボット位置を決定するために、前記ロボットを前記デクラッター領域の中にローカライズし、
    前記デクラッター領域をマッピングして、スケール不変の前記キーポイント、前記物体、及び前記開始位置を含むグローバルエリアマップを作成するロジックを備えている、請求項11記載のシステム。
  19. さらに、前記開始位置と、前記カテゴリと、前記再識別指紋とのうちの少なくとも1つに基づいて、前記物体を再識別するロジックを備えている、請求項18記載のシステム。
  20. さらに、危険である、大きすぎる、割れ物である、及び乱雑であるもののうちの1つ以上に、前記物体を分類するロジックを備えている、請求項19記載のシステム。
JP2023533262A 2020-11-30 2021-11-30 クラッターをクリアするロボットシステム Pending JP2023554250A (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US202063119533P 2020-11-30 2020-11-30
US63/119,533 2020-11-30
US202163253867P 2021-10-08 2021-10-08
US63/253,867 2021-10-08
PCT/US2021/061143 WO2022115761A1 (en) 2020-11-30 2021-11-30 Clutter-clearing robotic system

Publications (1)

Publication Number Publication Date
JP2023554250A true JP2023554250A (ja) 2023-12-27

Family

ID=81753000

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023533262A Pending JP2023554250A (ja) 2020-11-30 2021-11-30 クラッターをクリアするロボットシステム

Country Status (7)

Country Link
US (1) US20220168893A1 (ja)
EP (1) EP4251380A1 (ja)
JP (1) JP2023554250A (ja)
KR (1) KR20230113337A (ja)
AU (1) AU2021385603A1 (ja)
CA (1) CA3196451A1 (ja)
WO (1) WO2022115761A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022148261A (ja) * 2021-03-24 2022-10-06 トヨタ自動車株式会社 物品回収システム、物品回収ロボット、物品回収方法、及び物品回収プログラム
USD971982S1 (en) * 2021-05-04 2022-12-06 Clutterbot, Inc. Robot
USD971983S1 (en) * 2021-05-04 2022-12-06 Clutterbot, Inc. Robot
USD971981S1 (en) * 2021-05-04 2022-12-06 Clutterbot, Inc. Robot
USD1023094S1 (en) * 2021-12-01 2024-04-16 Clutterbot, Inc. Clutter-clearing robot
DE102022207089B4 (de) 2022-07-12 2024-05-23 BSH Hausgeräte GmbH Bearbeitungsgerät zur Vorbereitung einer Bodenfläche

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006006624A1 (ja) * 2004-07-13 2006-01-19 Matsushita Electric Industrial Co., Ltd. 物品保持システム、ロボット及びロボット制御方法
AU2015218522B2 (en) * 2010-12-30 2017-01-19 Irobot Corporation Mobile robot system
US9801517B2 (en) * 2015-03-06 2017-10-31 Wal-Mart Stores, Inc. Shopping facility assistance object detection systems, devices and methods
US10241514B2 (en) * 2016-05-11 2019-03-26 Brain Corporation Systems and methods for initializing a robot to autonomously travel a trained route
US9827678B1 (en) * 2016-05-16 2017-11-28 X Development Llc Kinematic design for robotic arm
WO2018053100A1 (en) * 2016-09-14 2018-03-22 Irobot Corporation Systems and methods for configurable operation of a robot based on area classification
US20180104815A1 (en) * 2016-10-19 2018-04-19 Bin Yang Robot system

Also Published As

Publication number Publication date
WO2022115761A1 (en) 2022-06-02
EP4251380A1 (en) 2023-10-04
KR20230113337A (ko) 2023-07-28
AU2021385603A1 (en) 2023-06-29
US20220168893A1 (en) 2022-06-02
CA3196451A1 (en) 2022-06-02

Similar Documents

Publication Publication Date Title
JP2023554250A (ja) クラッターをクリアするロボットシステム
CN112074382B (zh) 机器人以及定位机器人传感器的方法
US11363929B2 (en) Apparatus and methods for programming and training of robotic household appliances
KR102314539B1 (ko) 인공지능 이동 로봇의 제어 방법
US9802317B1 (en) Methods and systems for remote perception assistance to facilitate robotic object manipulation
KR102567525B1 (ko) 이동 로봇 시스템, 이동 로봇 및 이동 로봇 시스템의 제어 방법
JP3920317B2 (ja) 物品運搬用ロボット
CN114585479A (zh) 检测从机器人紧抓的滑移
US20200046169A1 (en) Robot system and control method of the same
CN114080583B (zh) 视觉教导和重复移动操纵系统
KR20180087798A (ko) 이동 로봇 및 그 제어방법
CN114554909A (zh) 检测甚薄对象或特征的机器人紧抓
CN114728417A (zh) 由远程操作员触发的机器人自主对象学习
KR20210007474A (ko) 인공지능을 이용한 이동 로봇 및 이동 로봇의 제어방법
KR20210051014A (ko) 로봇 청소기 및 그의 동작 방법
KR20180023301A (ko) 이동 로봇 및 그 제어방법
Gan et al. The threedworld transport challenge: A visually guided task-and-motion planning benchmark for physically realistic embodied ai
US11097414B1 (en) Monitoring of surface touch points for precision cleaning
CN114746906A (zh) 具有机器人任务特定的头的共享密集网络
US20230116896A1 (en) Large object robotic front loading algorithm
CN116709962A (zh) 杂物清理机器人系统
CN114330755B (zh) 数据集的生成方法、装置、机器人和存储介质
CN115805595A (zh) 机器人导航方法、装置及杂物清理机器人
Yinrong ” TROLL”: a regenerating robot
Cheung Pillow Placement During Robotic Bed-Making Using Classical and Learning-Based Methods

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230529

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240402