JP5806301B2 - ロボットシステムにおける物理的な物体の選択のための方法 - Google Patents

ロボットシステムにおける物理的な物体の選択のための方法 Download PDF

Info

Publication number
JP5806301B2
JP5806301B2 JP2013515935A JP2013515935A JP5806301B2 JP 5806301 B2 JP5806301 B2 JP 5806301B2 JP 2013515935 A JP2013515935 A JP 2013515935A JP 2013515935 A JP2013515935 A JP 2013515935A JP 5806301 B2 JP5806301 B2 JP 5806301B2
Authority
JP
Japan
Prior art keywords
sensor data
robot arm
sensor
gripper
gripping
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.)
Active
Application number
JP2013515935A
Other languages
English (en)
Other versions
JP2013529554A (ja
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 JP2013529554A publication Critical patent/JP2013529554A/ja
Application granted granted Critical
Publication of JP5806301B2 publication Critical patent/JP5806301B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • 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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/085Force or torque sensors
    • 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
    • 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/39Robotics, robotics to robotics hand
    • G05B2219/39528Measuring, gripping force sensor build into hand
    • 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/40Robotics, robotics mapping to robotics vision
    • G05B2219/40053Pick 3-D object from pile of objects
    • 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/40Robotics, robotics mapping to robotics vision
    • G05B2219/40571Camera, vision combined with force sensor
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/02Arm motion controller
    • Y10S901/09Closed loop, sensor feedback controls arm movement

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Manipulator (AREA)

Description

本発明は、物理的な物体を操作するために用いられるシステム及び方法に関する。特に、本発明は、ロボットシステムにおける物理的な物体の選択のための方法に関する。
ロボットシステムは、仮想的又は認識的に操作される物理的な物体を実際に形作るためにわずかな能力を必要とする、又は掴んで移動するためにわずかなスキルを必要とする反復性のある仕事を行うために多くの産業で広く用いられている。ロボットは、また、人間の作業員には適さない環境で働く、又は有毒、放射能材料、ごみ又は巨大な物体のような人間に有害な材料を扱って働くために建設されうる。このようなロボットシステムは、人間が介在することを必要とする量を最小化するためにできるだけ自立的にすることが望まれている。
物体を操作するためにロボットアームを有することを目的とする場合、ロボットアームは、一般に、対象となる物体を把持するのに適切なデバイスが装備される。このようなデバイスは、例えば、手、爪、クランプに似たものでありうる。ロボットに反復性のある仕事を行うようにプログラミングすることは比較的簡単であるが、自動的に物体を操作する、特に、変化する環境又は他の物体が混在している環境から物体を認識すること、及び他の物体中に存在する物体を操作することに関する困難な問題が存在する。すなわち、他の物体は、部分的又は全体的に物体を覆っており、よって、ロボットアームに移動するように命令するために物体の正確な位置を突き止めることが難しい、又は他の物体がロボットハンドの移動を妨害して、それにより、仕事のために適切でないプレ−プログラムされた移動をすることが難しい。
物体認識の課題は、一般に、デジタルカメラ画像のような知覚データの物体をサーチするパターン認識アルゴリズムにより扱われる。このようなアルゴリズムは、盛んに研究されている分野である。起伏のあるバックグラウンドに対して物体を認識しうる多くのアルゴリズムが存在するが、パターン認識アルゴリズムは、通常、バックグラウンドが均一かつ予め定められた場合に、最もうまく機能する。これまでは、予め定められたタイプの物体が整った動作領域からサーチされ、物体が認識された動作領域から選択されていた。一連のアクションは、既知のタイプの選択された物体上で行われうる。一連のアクションは、例えば、異なるビンのなかから異なる種類の物体を判別するような物体のタイプに基づいて選択されうる。
しかしながら、物体のタイプを判定することはエラーを生じる可能性がある。例えば、画像認識アルゴリズムは、誤ったタイプの物体を識別してしまい、誤った結果を生成する。さらに、物体が正確に認識されたとしても、グリッパは、例えば、意図した物体が、把持しようとした物体ではない他の物体により覆い隠された場合、又はグリッパが、把持する前に正しい位置へ移動せず、ロボットアームの制御に誤りが生じた場合、意図した物体を把持することを失敗する。例えば、物体が共に近接して配置されている、又は物体が互いに重なっている場合、いくつかの物体が、うっかり同時に把持されてしまう可能性もある。リサイクル及びごみ管理のような用途では、物体の分別されたグループの純度が高いことが重要である、つまり、物体の分別されたグループにおいて異なるタイプの物体が最終的にできるだけ少なくなることが重要である。
本発明は、少なくとも1つの第1のセンサからの第1のセンサデータを受信するステップと、第1のセンサデータから、空間における少なくとも一つの位置及びロボットアームに関連するグリッパの向きを含む対象の位置を求めるステップと、前記グリッパを前記対象の位置へ移動させるために、前記ロボットアーム及び前記グリッパの少なくとも一方への少なくとも1つの第1の命令を発することを開始するステップと、前記少なくとも1つの第1の命令の実行が失敗かどうかを判定するために、前記ロボットアーム及び前記グリッパの少なくとも一方と関連付けられる前記少なくとも1つの第1のセンサ及び前記少なくとも1つのフォースフィードバックセンサの少なくとも一方からのフォースフィードバックセンサデータを受信するステップと、前記少なくとも1つの第1のセンサからの第2のセンサデータを受信するステップと、前記第2のセンサデータから物体の把持が成功かどうか判定するステップと、前記把持の成功の判定に応じて、前記少なくとも1つの第1のセンサから検証センサデータを受信するステップと、所定の位置へ前記ロボットアームを移動して、前記グリッパの把持をリリースするために、前記ロボットアームへ少なくとも1つの第2の命令を発するステップと、を含む方法に関する。
本発明は、また、少なくとも1つの第1のセンサからの第1のセンサデータを受信する手段と、前記第1のセンサデータから、少なくとも1つの空間における位置及びロボットアームに関連付けられるグリッパに対する方向を含む対象の位置を求める手段と、前記グリッパを前記対象の位置へ移動するために、少なくとも1つの前記ロボットアーム及び前記グリッパへ少なくとも1つの第1の命令を発することを開始する手段と、少なくとも1つの前記ロボットアーム及び前記グリッパと関連付けられる少なくとも1つのフォースフィードバックセンサ、及び少なくとも1つの第1のセンサの少なくとも一方からフォースフィードバックセンサデータを受信し、前記少なくとも1つの第1の命令の実行が失敗かどうかを判定する手段と、前記少なくとも1つ第1のセンサから第2のセンサデータを受信する手段と、前記第2のセンサデータから物体の把持が成功かどうか判定する手段と、前記把持の成功の判定に応じて、前記少なくとも1つの第1のセンサから検証センサデータを受信する手段と、所定の位置へ前記ロボットアームを移動して、前記グリッパの把持をリリースするために、前記ロボットアームへ少なくとも1つの第2の命令を発する手段と、を含む装置に関する。
本発明は、また、コンピュータ読み取り可能な媒体に統合されるコンピュータプログラムであって、前記コンピュータプログラムは、少なくとも1つの第1のセンサからの第1のセンサデータを受信するステップと、前記第1のセンサデータから、少なくとも1つの空間における位置及びロボットアームに関連付けられるグリッパに対する方向を含む対象の位置を求めるステップと、前記グリッパを前記対象の位置へ移動するために、少なくとも1つの前記ロボットアーム及び前記グリッパへ少なくとも1つの第1の命令を発することを開始するステップと、少なくとも1つの前記ロボットアーム及び前記グリッパと関連付けられる少なくとも1つのフォースフィードバックセンサ、及び少なくとも1つの第1のセンサの少なくとも一方からフォースフィードバックセンサデータを受信し、前記少なくとも1つの第1の命令の実行が失敗かどうかを判定するステップと、前記少なくとも1つ第1のセンサから第2のセンサデータを受信するステップと、前記第2のセンサデータから物体の把持が成功かどうか判定するステップと、前記把持の成功の判定に応じて、少なくとも1つの第2のセンサから検証センサデータを受信するステップと、所定の位置へ前記ロボットアームを移動して、前記グリッパの把持をリリースするために、前記ロボットアームへ少なくとも1つの第2の命令を発するステップと、を含む方法を実行するためのプロセッサを制御するコードを含む、コンピュータプログラムに関する。
本発明は、また、少なくとも1つの第1のセンサからの第1のセンサデータを受信するステップと、第1のセンサデータから、空間における少なくとも一つの位置及びロボットアームに関連するグリッパの向きを含む対象の位置を求めるステップと、前記グリッパを前記対象の位置へ移動させるために、前記ロボットアーム及び前記グリッパの少なくとも一方への少なくとも1つの第1の命令を発することを開始するステップと、前記少なくとも1つの第1の命令の実行が失敗かどうかを判定するために、前記ロボットアーム及び前記グリッパの少なくとも一方と関連付けられる前記少なくとも1つの第1のセンサ又は前記少なくとも1つのフォースフィードバックセンサからのフォースフィードバックセンサデータを受信するステップと、前記少なくとも1つの第1のセンサからの第2のセンサデータを受信するステップと、前記第2のセンサデータから物体の把持が成功かどうか判定するステップと、前記把持の成功の判定に応じて、前記少なくとも1つの第1のセンサから検証センサデータを受信するステップと、所定の位置へ前記ロボットアームを移動して、前記グリッパの把持をリリースするために、前記ロボットアームへ少なくとも1つの第2の命令を発するステップと、を含む方法に関する。
本発明は、また、少なくとも1つの第1のセンサからの第1のセンサデータを受信する手段と、前記第1のセンサデータから、少なくとも1つの空間における位置及びロボットアームに関連付けられるグリッパに対する方向を含む対象の位置を求める手段と、前記グリッパを前記対象の位置へ移動するために、少なくとも1つの前記ロボットアーム及び前記グリッパへ少なくとも1つの第1の命令を発することを開始する手段と、少なくとも1つの前記ロボットアーム及び前記グリッパと関連付けられる少なくとも1つのフォースフィードバックセンサ、又は少なくとも1つの第1のセンサからフォースフィードバックセンサデータを受信し、前記少なくとも1つの第1の命令の実行が失敗かどうかを判定する手段と、前記少なくとも1つ第1のセンサから第2のセンサデータを受信する手段と、前記第2のセンサデータから物体の把持が成功かどうか判定する手段と、前記把持の成功の判定に応じて、少なくとも1つの第2のセンサから検証センサデータを受信する手段と、所定の位置へ前記ロボットアームを移動して、前記グリッパの把持をリリースするために、前記ロボットアームへ少なくとも1つの第2の命令を発する手段と、を含む装置。
本発明は、また、コンピュータ読み取り可能な媒体に統合されるコンピュータプログラムであって、前記コンピュータプログラムは、少なくとも1つの第1のセンサからの第1のセンサデータを受信するステップと、前記第1のセンサデータから、少なくとも1つの空間における位置及びロボットアームに関連付けられるグリッパに対する方向を含む対象の位置を求めるステップと、前記グリッパを前記対象の位置へ移動するために、少なくとも1つの前記ロボットアーム及び前記グリッパへ少なくとも1つの第1の命令を発することを開始するステップと、少なくとも1つの前記ロボットアーム及び前記グリッパと関連付けられる少なくとも1つのフォースフィードバックセンサ、又は少なくとも1つの第1のセンサからフォースフィードバックセンサデータを受信し、前記少なくとも1つの第1の命令の実行が失敗かどうかを判定するステップと、前記少なくとも1つ第1のセンサから第2のセンサデータを受信するステップと、前記第2のセンサデータから物体の把持が成功かどうか判定するステップと、前記把持の成功の判定に応じて、少なくとも1つの第2のセンサから検証センサデータを受信するステップと、所定の位置へ前記ロボットアームを移動して、前記グリッパの把持をリリースするために、前記ロボットアームへ少なくとも1つの第2の命令を発するステップと、を含む方法を実行するためのプロセッサを制御するコードを含む、コンピュータプログラム。
本発明は、また、少なくとも1つの第1のセンサからの第1のセンサデータを受信し、前記第1のセンサデータから、少なくとも1つの空間における位置及びロボットアームに関連付けられるグリッパに対する方向を含み対象の位置を求め、前記グリッパを前記対象の位置へ移動するために、少なくとも1つの前記ロボットアーム及び前記グリッパへ少なくとも1つの第1の命令を発することを開始し、少なくとも1つの前記ロボットアーム及び前記グリッパと関連付けられる少なくとも1つのフォースフィードバックセンサ、及び少なくとも1つの第1のセンサの少なくとも一方からフォースフィードバックセンサデータを受信し、前記少なくとも1つの第1の命令の実行が失敗かどうかを判定し、前記少なくとも1つ第1のセンサから第2のセンサデータを受信し、前記第2のセンサデータから物体の把持が成功かどうか判定し、前記把持の成功の判定に応じて、少なくとも1つの第2のセンサから検証センサデータを受信し、所定の位置へ前記ロボットアームを移動して、前記グリッパの把持をリリースするために、前記ロボットアームへ少なくとも1つの第2の命令を発するように構成されるメモリ及び少なくとも1つのプロセッサを含む装置。
本発明の一実施形態では、前記少なくとも1つの命令は、ロボットアーム及び/又はグリッパに対する少なくとも1つの移動を示す信号を含む。本発明の一実施形態では、前記少なくとも1つの命令は、少なくとも1つの回転、上昇及び把持を制御するために印加される単一の駆動電圧である。
本発明の一実施形態では、前記装置内の第1の学習エンティティは、把持の成功及び前記第1のセンサデータを登録する。
本発明の一実施形態では、前記装置内の第1の学習エンティティは、前記少なくとも1つの命令の少なくとも1つの実行が失敗したことの判定に応じて、把持の失敗及び前記第1のセンサデータを前記第1の学習エンティティに登録する
本発明の一実施形態では、前記装置内のアーム移動制御エンティティ又は第1の学習エンティティは、前記第1の学習エンティティに登録された情報を用いて前記第1のセンサデータから把持が成功する可能性を予測する。前記アーム移動制御エンティティは、前記可能性に応じて前記ロボットアームへ前記少なくとも1つの第1の命令を発する。
本発明の一実施形態では、前記アーム移動制御エンティティは、前記グリッパを検証位置へ移動するための少なくとも1つの第3の命令を前記ロボットアームへ発する。
本発明の一実施形態では、前記検証位置は、前記少なくとも1つの第2のセンサが物体に干渉されずに適用される検証環境に対応する。本発明の一実施形態では、前記検証環境は、一定のバックグラウンドを有する。
本発明の一実施形態では、前記装置は、前記少なくとも1つの第2のセンサからの検証センサデータから物体のタイプを求めるように構成される。
本発明の一実施形態では、前記ロボットアームへの前記少なくとも1つの第1の命令を発することを開始するステップ、又は前記方法は、一般に、前記ロボットアームへ第1の座標を提供するステップと、前記少なくとも1つの第1のセンサから第1の中間センサデータを受信するステップと、前記第1の中間センサデータを用いてセンサ座標系における前記グリッパの実際の位置を求めるステップと、をさらに含む。これらのステップは、前記装置内の前記アーム制御エンティティにより実行されてもよい。
本発明の一実施形態では、前記ロボットアームへの前記少なくとも1つの第1の命令を発することを開始するステップ、又は前記方法は、一般に、前記グリッパの前記実際の位置と前記第1の座標との誤差を求めるステップと、前記ロボットアームに第2の座標を提供するステップと、前記少なくとも1つの第1のセンサから第2の中間センサデータを受信するステップと、前記第2の中間センサデータを用いてセンサ座標系における前記グリッパの第2の実際の位置を求めるステップと、前記誤差が所定の閾値より小さいかどうかを検証するステップと、さらに含む前記誤差が前記閾値より大きい場合には、前記方法は、前記誤差を再度求めるステップと、前記第2の座標を提供するステップと、前記第2の実際の位置を求めるステップとを継続してもよい。
本発明の一実施形態では、前記ロボットアームへの前記少なくとも1つの第1の命令を発することを開始するステップ、又は前記方法は、一般に、第2の学習エンティティの前記センサ座標系において求められた前記ロボットアームの座標と前記グリッパの位置との関係を登録するステップをさらに含む。
本発明の一実施形態では、前記ロボットアームへの前記少なくとも1つの第1の命令を発することを開始するステップ、又は前記方法は、一般に、登録された前記関係を用いて、前記ロボットアームの座標と前記センサ座標系における座標との変換関数を作成するステップをさらに含む。
本発明の一実施形態では、前記第1のセンサデータから対象の位置を求めるステップは、前記センサ座標系における初期対象位置を求めるステップと、前記変換関数を用いて前記初期対象位置から前記対象の位置を計算するステップと、をさらに含む。
本発明の一実施形態では、前記変換関数は、前記センサ座標系において求められた前記ロボットアームの座標と前記グリッパの位置との少なくとも登録された関係を用いて算出された変換行例である。同様に、他の同様の関係は、前記変換行列を算出するために用いられる。
本発明の一実施形態では、対象となる物体は、非構造化領域、すなわち、背景色又は形状のような一又はいくつかのその特性が予め設定されず、かつ対象となる物体に加えて未知の特性の他の物体を含みうる環境又は通常の三次元空間に配置される。例えば、ごみの山は、非構造化領域、すなわち、ロボットの動作空間を構成しうる。非構造化領域は、時間の経過と共に変化しうる。例えば、ごみの破片がごみの山から除去されると、ごみの破片は、シャッフル、移動又は崩壊しうる。新たなごみもまた前記ごみの山へ加えられうる。
本発明の一実施形態では、本発明は、制御ユニットにより制御され、かつロボットアームが非構造化領域に存在する物体に到達しうるように実装されるロボットアームを含む。
本発明の一実施形態では、前記システムは、前記ロボットアームに取り付けられ、かつ前記制御ユニットにより制御されるグリッパをさらに含む。前記グリッパは、例えば、手又は爪に類似する手法で、当該グリッパを閉じることにより物体を把持するデバイスでありうる。
本発明の一実施形態では、前記システムは、前記非構造化領域の周囲の知覚データを生成するために用いられうる少なくとも1つのセンサデバイスをさらに含む。一つのこのようなセンサデバイスは、例えば、前記非構造化領域を見るように方向付けられたデジタルカメラでありうる。
本発明の一実施形態では、前記グリッパは、前記グリッパが前記非構造化領域において前記物体に接触したかどうか、例えば、前記グリッパが移動して、当該グリッパが物体に対して衝突した、又は物体が把持されたかを測定するために用いられうるセンサを含む。
本発明の一実施形態では、前記システムは、前記ロボットアームのために、物体を把持するロボットアームが、少なくとも1つのセンサがその後この領域に対する物体を見ることができるような手法で移動及び方向付けられうるような手法で位置及び方向付けられる所定の検証位置をさらに含む。このような領域は、例えば、把持された物体が、このバックグランドにより判別され得、さらにセンサによってより正確に見られるように、又は把持された物体が、センサが用いられることにより物体のタイプの検証のために適切な他の種類のセットアップからなりうるような既知及び一定色の平坦な面を含みうる。
本発明の一実施形態では、前記システムは、前記センサからデータを受信し、把持動作の成功の可能性が適切な高さである前記非構造化領域の位置を前記制御ユニットに出力するように構成される第1の学習システムをさらに含む。
本発明の一実施形態では、前記システムは、前記センサからデータを受信し、この位置で行われる把持動作が所望のタイプの物体の把持を得る可能性を出力するように構成される第2の学習システムをさらに含む。
本発明の一実施形態では、前記制御ユニットは、グリッパが前記非構造化領域の以前に求められた位置に位置するように前記ロボットアームを移動し、その後、当該位置での物体を把持するように構成される。
本発明の一実施形態では、前記把持動作の成功は、その後、センサからのデータを用いて求められる。前記把持が失敗した場合、前記ロボットアームは、その後、別の実行のために異なる位置へ移動される。把持が成功すると、前記制御ユニットは、その後、物体を予め定義した検証位置へ移動するように構成され、前記物体のタイプは、検証動作を行うことにより求められる。前記検証動作は、当該検証動作の入力センサデータとして受信され、前記物体の求められたタイプを出力する。
本発明の一実施形態では、前記システムは、前記装置で動く学習システムを用いることによりさらに向上する。
本発明の一実施形態では、第1の学習システム又は第1の学習エンティティとして呼ばれてもよい学習システムが存在する。各把持の実行のために、前記アームの移動を予測する前記センサデータ及び前記把持動作の評価の結果は、前記第1の学習システムに適用される。前記第1の学習システムは、把持動作の成功が成功し、それにより、把持した物体での新たな実行がなされたときに、前記システムの動作が向上する非構造化領域での位置を算出するように構成される。
本発明の一実施形態では、第2の学習システム又は第2の学習エンティティとして呼ばれてもよい学習システムが存在する。前記ロボットアームの移動の前後で、前記第2の学習システムにも前記アームの移動並びに前記ロボットアームの位置及び方向を予測する前記センサデータは、また、前記第2の学習システムに適用され、これは、前記ロボットアームを求められた対象の位置へ移動するための効果的な手法を算出するように構成され、よって、前記ロボットアームの新たな動きがなされたときに、前記ロボットシステムの動作の速度が上がる。
本発明の一実施形態では、前記コンピュータプログラムは、コンピュータ読み取り可能な媒体に記憶される。前記コンピュータ読み取り可能な媒体は、リムーバブルメモリカード、リムーバブルメモリモジュール、磁気ディスク、光ディスク、ホログラフィックメモリ又は磁気テープであってもよい。リムーバブルメモリモジュールは、例えば、USBメモリスティック、PCMCIAカード又はスマートメモリカードであってもよい。
上述された本発明の実施形態は、互いに組み合わせて用いられてもよい。いくつかの実施形態は、共に組み合わせられることにより本発明の別の実施形態を形成してもよい。本発明に関する方法、システム、装置、コンピュータプログラム又はコンピュータプログラム製品は、上述された発明の少なくとも1つの実施形態を含む。
本発明の利益は、ロボットの動作スペースから物体の選択の質を向上させることに関する。
添付の図面は、本発明のさらなる理解を提供し、この明細書の一部を構成し、本発明の実施形態を図示し、明細書と共に本発明の概念の説明を補助する。
図1は、本発明の一実施形態における物理的な物体の選択のためのロボットシステムを示すブロック図である。 図2は、ロボットシステムにおける物理的な物体の選択を示すフローチャートである。 図3は、本発明の一実施形態における二つの学習システムを含むコンピュータを示すブロック図である。
本発明の実施形態の詳細が添付の図面で示される例と共に示される。
図1は、本発明の一実施形態における物理的な物体の選択のためのロボットシステムを示すブロック図である。図1では、データ処理装置100、簡潔にいうと装置は、中央処理ユニット(CP)110と、メモリ150と、を含む。本発明のいくつかの実施形態は、マルチプルプロセッサCP1からCPnに加えて、マルチプルプロセッサの付加を分散する負荷分散ユニットを採用する。一又はそれ以上のプロセッサは、一又はそれ以上のメモリ150に記憶されるプログラム152を実行することによりロボットアームを制御する。実行時に、プログラム152は、メモリ150内の各種パラメータ及び変数154をセットアップし、アップデートする。いくつかのパラメータは、例えば、テーブル、アレイ、リスト、スパース又はデンス行列、又は他のデータ構造で表されてもよい。
また、データ処理装置100は、データ処理装置のユーザインターフェースを構成する外部入出力回路120を含む又は用いる。入出力回路120は、入力回路122と、出力回路124と、を含む。キーボードインターフェース及びディスプレイインターフェースは、実例となるが、このような入力回路122及び出力回路124の例に制限されない。
外部装置と通信するために、データ処理装置100は、通常、送信回路(“TXn”)132、受信回路(“RXn”)134及び内部又は外部アンテナ136を含む外部送受信回路130を含む又は使用する。TXn及びRXnに関連する“n”は、データ処理装置が、物理的世界と通信するためのいくつかの異なるインターフェース技術を用いてもよいことを示し、本例は、ロボットアーム、及び付加的に別個の検証環境を含む。
Wireless local−area networks (WLAN)及び赤外線、無線又はBluetooth(登録商標)のような近距離無線インターフェースが実例であるが、このような無線送受信回路に制限されない。このような無線通信技術に代えて、又はこれらに追加して、データ処理装置は、USB(Universal Serial Bus)、任意のパラレル又はシリアルインターフェース、又は他の型の業界標準インターフェース、又は専売のインターフェースのような有線接続138を使用してもよい。標準化の先行するレベルでは、全ての要素110から138は、適切な技術で用いられるような従来技術でありうる。
従来のセクションに加えて、データ処理装置100のメモリ150は、独創的なユーザエントリー方法を実装するプログラム152の一群を含む。プログラム152は、参照番号154により集合的に示される各種のデータ構造、変数及びパラメータを用いる。
参照番号160は、一般的に、少なくともいくつかの部分がデータ処理装置100により制御されるロボットシステムを示す。ロボットシステム160は、参照番号170により示される少なくとも1つのロボットを含むが、ロボットシステム160は、追加のロボット、コンベヤーベルトのような一又はそれ以上のコンベヤー、固定センサ、照明装置、アナライザ等を含みうる。本例では、ロボット170は、回転部材を有するアームのようである概略的な図で示されるが、他の実装の型が同じように可能である。図1に示すように、ロボットアーム170は、手又は爪にやや類似しているグリッパ171を含む。ロボットアーム170は、動作領域172内でグリッパ171を移動可能である。ロボットアーム170及びグリッパ171の各種動作は、参照番号173により集合的に示されるアクチュエータによりもたらされる。例として、アクチュエータは、電気式、空気圧式、水圧式又はこれらの任意の組み合わせでありうる。アクチュエータは、図1の直線及び曲線の両矢印により示されるように、ロボットアーム170の各種要素を移動又は回転してもよい。
ロボットの動作領域172は、非構造化領域180と呼ばれる部分を含む。非構造化領域180は、参照番号181により集合的に示される各種物体を含む。制限されないが、一例として、非構造化領域180は、ロボットの動作領域172と交差するコンベヤーベルト又はコンベヤーベルトの一部である。データ処理装置は、対象となる物体の大きさ、形状及び/又は色のような、非構造化領域180内の物体181上の先験的情報をほとんど又は全く有していない。本発明のいくつかの実施形態では、データ処理100装置は、対象となる物体の先験的情報をいくつか有してもよく、学習により物体の得られた情報を有していてもよいが、対象となる物体の少なくとも背景(他の物体)、位置及び向きは、通常、先験的に不明である。すなわち、物体181は、非構造化領域180においてランダムな位置及び方向であってもよく、物体181は、互いに重複してもよい。したがって、ロボットの動作領域172の一部を、グリッパ171及び相対的に一定の状況下かつ既知のバックグラウンドに対するグリッパ171により把持された物体が観察されうる構造化領域182へ専念させることは有益である。本明細書では、相対的に一定の状況及びバックグラウンドとは、グリッパ171及び把持された物体の観察を周期的に行いかつ記憶することにより補償されうるようにゆっくりと、構造化領域182における変化が生じることを意味する。
本発明の一実施形態では、構造化領域182は、また、センサ176のうちの少なくとも1つの第2のセンサ又は少なくとも1つの第2の別のセンサデバイス176dを用いて検査されてもよく、これは、特に構造化領域182でも適用可能である。構造化された領域は、単に、ロボットアーム170の特定の位置及び/又はグリッパ171であってもよく、これは、少なくとも1つの第2のセンサが、非構造化領域181の要素を妨げずに用いられることができる。別の認識は、追加の装置、つまり、少なくとも1つの第2のセンサデバイス176dによりグリッパの内容物を検査又は解析することを含んでもよい。このような追加の装置の実例となるが包括的でないリストは、1)配列されたカメラとは異なる方向及び/又は異なる周波数及び/又は高い解像度からのグリッパの内容物を観察する追加の撮像装置;2)非構造化領域に存在するものから異なる波長及び/又はエネルギーレベルでのグリッパの内容物を照らす又は照射する追加の照明装置;3)ガスアナライザー;4)レーザースキャナーを含む。
一連のドライバ174は、データ処理信号すなわち、アクチュエータを制御するための電圧及び電力レベルを割り当てるためにデータ処理装置100からの命令を変換する、データ処理装置100からの制御信号175に応じて、アクチュエータは、動作領域172内の特定位置にグリッパを位置づけること、グリッパを下降又は上昇させること、及びグリッパを開閉することを含む各種の機械的な機能を行うが、必ずしもこれに限定されない。いくつかの実施形態では、アクチュエータは、カメラが既知のバックグラウンドに対してグリッパをモニタするようにグリッパ171及び配列されたカメラ176cを傾けるアクチュエータを含む。よって、このような実施形態では、構造化領域182は、グリッパ171及びカメラ176cを傾けることにより実装されうる。この場合、異なる位置への移動は必要とされない。
データ処理装置100は、ロボットシステム160と通信するために、インターフェース136を介した無線接続及び/又はインターフェース138を介した有線接続を用いてもよい。
一般にロボットシステム160、特にロボット170は、集合で参照番号176により示される各種のセンサを含む。例により、センサ176は、ロボットアーム170及びグリッパ171の位置と共に、グリッパ171の開閉状態を示す各種の位置センサ176aを含む。グリッパの開閉状態は、単なるyes/noビットに限定されない。本発明の一実施形態では、グリッパ171は、グリッパの指のそれぞれに対するマルチビットの開閉状態を示してもよく、ここで、グリッパの物体の大きさ及び/又は形状の表示が得られてもよい。
位置センサに加えて、一連のセンサは、歪ゲージ又はフォースフィードバックセンサとしても知られる歪センサ176bを含んでもよく、歪センサ176bは、ロボットアーム170及びグリッパ171の各種の構成要素により経験される歪を示す。例示であるが包括的でない実装の例では、歪センサは、抵抗が歪センサに加えられる圧迫の力に応じて変化する可変抵抗を含む。抵抗の変化が抵抗の絶対値と比べて小さいため、可変抵抗は、通常、ホイートストーンブリッジの構成で測定される。
本発明の一実施形態では、歪センサ176bは、把持動作の失敗の原因を示すフォースフィードバックセンサとして機能する。失敗は、グリッパ171の外側に及ぼされる力により示されてもよく、これは、グリッパがアームの示された対象配置での完全に開く位置で開かないこと、又は所定の閾値を超える任意の側の力を示す。
さらに、一連のセンサは、ロボットアームに配置される少なくとも一つのイメージセンサ又はカメラ176cを含んでもよい。この前後関係では、配置されたカメラ176cは、グリッパ171の下の領域を常にモニタするカメラ176cをいう。
各種のセンサ176からの位置データ信号は、参照番号177により集合的に示されるドライバにより適切なレベル及びフォーマットに変換される。変換されたデータ信号は、入力信号178としてデータ処理装置100に送信される。
データ処理システムのメモリ150内のソフトウェア又は一連のプログラム152は、各種のプログラムを含む。本明細書で使用されるように、“プログラム”とは、一又はそれ以上のプロセッサCP1 ... CPnによる実行が、明確に定義されたハイレベル動作を行うためのロボットシステム160をデータ処理装置100が指示するという効果を有する一連のコンピュータプログラム命令をいう。ハイレベル動作の一例は、特定された位置へロボットアームを移動することである。対応するプログラムは、ハイレベル動作を一連のローレベル動作へ変換するために、ドライバ174を介して出力信号の適切なシーケンス175をロボットシステム160のアクチュエータ173へ出力するような各種ソフトウェアドライバ、ルーティン、又はダイナミックリンクライブラリを用いてもよい。それに替えて、又は追加して、プログラム152の一部又は全部は、ロボットシステム160からのセンサデータ178を受信し、センサデータで一又はそれ以上の分析を行ってもよい。
少なくとも、一連のプログラム152は、参照サインAMにより示されるアームの動作のためのプログラムを含み、このプログラムは、ロボットアーム170を特定された位置へ移動するように命令し、追加で、グリッパの内容物が既知のバックグラウンドに対して観察されうるようにグリッパ171を傾かせるように命令する。一連のプログラム152は、また、把持シーケンス制御プログラムGSC及び把持シーケンス評価プログラムGSEを含む。把持シーケンス制御プログラムGSCの実行は、データ処理装置100が、把持動作を試みるようにロボットアーム170及びグリッパ171を命令させ、これは、グリッパ171により、把持された候補物体を含む位置に近づくこと、及びグリッパ171を閉じることを含む。本発明の一部分は、実行されようとした把持動作が成功かどうか判定可能な方法、データ処理システム及びプログラム製品を提供することである。この判定は、把持シーケンス評価プログラムGSEにより行われる。
1つの特定の実装では、把持シーケンス評価プログラムGSEは、グリッパ171の位置センサ176a及び/又は歪センサ176bを用いて、グリッパ171が実際に何らかを把持しているかどうかを判定する。すなわち、判定は、把持するように命令されたときにグリッパが完全に閉じたかどうかを検知することに基づいてもよく、又はグリッパが完全に閉じたことを妨げる何かをグリッパが保持しているかどうかを検知することに基づいてもよい。把持シーケンス制御プログラムGSCは、把持した物体及び/又はグリッパ自体を損傷しないように、加えられた把持力での上限値に設定するために歪センサ176cを用いてもよい。
別の実装では、把持シーケンス評価プログラムGSEは、代わりに又は追加で、カメラの視野が、グリッパと共に動き、その結果、グリッパの移動がカメラ176cの視野のバックグラウンドを変化させる場合でさえも実質的に一定を維持する物を含むかどうか、モニタするために配列されたカメラ176cを使用してもよい。例えば、アーム移動プログラムAMは、グリッパ171、グリッパの内容物及び配列されたカメラ176cを構造化領域182へ移動及び/又は傾けてもよい。配列されたカメラは、グリッパ及びその内容物の画像を形成してもよい。グリッパ及びその内容物の現在の画像は、その後、既知の、以前に記憶したグリッパの画像と比較される。比較において、現在の画像と以前に記憶した画像との差は、グリッパの内容物、グリッパの汚れ、又はバックグラウンド若しくは照明の変化により生じてもよい。現在の画像と以前に記憶した画像との差がグリッパの実際の内容物を反映することを確実にするために、空になったときに予め記憶されたグリッパの画像を周期的に更新することが有益であってもよく、ここで、バックグラウンド又は照明の汚れ又は変化は、補償されうる。
グリッパが完全に閉じたか仮想的に検査したかを機械的に検知することに代えて、又はこのような技術に加えて、ロボットアームは、グリッパ171及びその内容物を計量するように構成された歪ゲージを含んでもよい。グリッパの現在の重さから既知のグリッパの正味の重さを減算することにより、グリッパ内容物の重さが得られる。この情報自体又は他の二つの情報の組み合わせは、把持動作が成功かどうかの判定のために寄与しうる。全てのこのような技術は、把持動作の成功が、グリッパからの現在のステータス情報をグリッパからの既知のステータス情報と比較することにより求められうることにより集約されうる。用語“既知のステータス情報”とは、グリッパが空であることがわかっている、又はグリッパの内容物が既知のステータス情報が得られたときにわかっていることをいう。
本発明の一実施形態では、プログラムAM、OR、GSC、GSE、VO、L1及びL2は、例えば、サブルーティン、プロセス、スレッド、モジュール及びプログラムコードシーケンスのような別のソフトウェアエンティティとして実装されてもよい。
図2は、ロボットシステムにおける物理的な物体の選択のための方法を示すフローチャートである。ロボットシステムは、制御する装置を含む。
ステップ200において、第1のセンサデータは、少なくとも1つの第1のセンサから前記装置で受信される。
ステップ202において、前記装置により、対象の位置が第1のセンサデータから求められる。
ステップ204において、前記装置は、ロボットアーム内のグリッパを対象の位置へ移動させるために、ロボットアームへ少なくとも1つの第1の命令を発することを開始する。少なくとも1つの第1の命令は、前記装置がフォースフィードバックセンサデータを受信するステップ206と並行して発せられてもよい。
ステップ206において、前記装置は、少なくとも1つの第1の命令の実行が失敗かどうかを判定するために、ロボットアーム及びグリッパの少なくとも一方と関連付けられる少なくとも1つのフォースフィードバックセンサからのフォースフィードバックセンサデータを受信する。
ステップ208において、前記装置は、少なくとも1つの第1のセンサから第2のセンサデータを受信する。
ステップ210において、前記装置は、第2のセンサデータから物体の把持が成功かどうか判定する。
ステップ212において、前記装置は、把持の成功の判定に応じて、少なくとも1つの第2のセンサから検証センサデータを受信する。
ステップ214において、前記装置は、所定の位置へアームを移動して、グリッパの把持をリリースするために、ロボットアームへ少なくとも1つの第2の命令を発する。そして、本方法は終了する。
本発明の一実施形態では、図1に示すデータ処理装置100のようなデータ処理装置は、例えば、配置されたカメラのような少なくとも1つのセンサからの入力データを受信する。データ処理装置は、物体認識プログラムによる物体認識のためのセンサデータのサブセットを抽出する。物体認識プログラムは、対象となる物体に対応するセンサデータフィーチャーからの抽出に用いられ、センサデータフィーチャーは、その後、学習システムの入力として用いられるデータセットを形成する。本発明は、仮想的な任意の種類の物体認識システムが使用されることを考慮し、よって、このようなシステムは、非構造化領域の状態及び本発明の特定の用途に充分適合しうる。本発明の理解を助けるために、配置されたカメラを用いることによる赤い物体を認識するように構成される物体認識システムの一例をここでは説明する。
本発明の一実施形態では、配置されたカメラから受信される入力データは、画素の二次元アレイからなるデジタル画像であり、各画素は、赤、緑及び青色成分に対する数値を有し、以下、それぞれ、R−、G−及びB−値として指定される。この例のために、カメラにより生成された画像は、対象となる物体の1つを正確に含むものと仮定する。
データの画素の数は、カメラの解像度に対応する。計算量を低減するために、カメラから受信された画像データは、解析のために適切に求められた解像度にダウンサンプルされる。適切にダウンサンプルされた解像度は、経験的(empirically)に求められうる。
得られたダウンサンプルされた画像は、その後、ライトニングコンディションにおける変化を構成するように正規化される。正規化は、ダウンサンプルされた画像の各画素とは別に行われてもよい。正規化の後、フィーチャーの一部は、対象となる物体の位置及び方向のような画像から計算され、これらのフィーチャーは、第1の学習システムに対する入力として用いられる。簡素化のために、ここでは、x及びyが画像の座標系における座標値である、対象となる物体の位置(x,y)の算出のみがこのようなフィーチャーの一例として考慮されるが、本発明はこのフィーチャーに限定されるものではなく、学習システムL1に対する入力として用いられ、取得可能ないくつかの異なるフィーチャーからも利益を得うる。
本発明の一実施形態では、対象となる物体の位置(x,y)の算出は、以下のような手法で進められる。まず、ダウンサンプルされ、かつ正規化された画像における対象となる物体に対応する画素が求められる。このタスクのために多くの適切なアルゴリズムが文献から知られている。この例では、物体に対応する画素は、色値に基づいて認識される、つまり、物体は、赤と推定され、すなわち、画像における赤の画素は、画像における対象となる物体に対応する。対象となる物体に対応する画素が求められると、物体の位置(x,y)は、求められた画素が位置する領域の重心を計算することにより求められうる。多くの適切なアルゴリズムの良好かつフリーな実装は、取得可能であり、例えば、画素を取り囲む曲線を形成する一連の点(xi,yi)を求めるために、OpenCVライブラリ内のcvFind−Contours()関数を用い、その後、画像内の物体の中心の座標に対応する曲線点座標の平均値を算出することにより、簡易に実現される。
本発明の一実施形態では、物体認識プログラムがデータセット、つまりこの例では対象となる物体の位置(x,y)、を求めたとき、データ処理装置のアーム移動プログラムは、認識された物体の画像座標の位置(x,y)に対応する世界座標の位置へロボットアームを移動するように命令する。アーム移動プログラムによる画像座標系から世界座標系への変換を容易にするために、2×2変換行列Mを座標ベクトル(x,y)に掛けることである既知の方法があり、ここで、許容可能な精度及びカメラセットアップに依存するこのような選択によりこの変換を行うようにMが選択される。ロボットアームが求められた位置へ移動したとき、把持シーケンス制御プログラムは、グリッピングを行い、これは、ロボットアームに、グリッパを認識された物体へ下ろし、グリッパを閉じるように命令することを含む。
本発明の一実施形態では、把持を行っている間に、ロボットアーム、特にグリッパからのセンサデータは、データ処理装置により受信される。本発明の一実施形態では、センサデータは、グリッパが物体に衝突することを示してもよい。より詳細には、センサデータは、移動のための命令に応じてロボットアーム又はグリッパが移動に失敗、又は移動のための命令により、歪ゲージにより測定されるようなロボットシステムのいくつかの要素の歪の基準から外れたレベルを生じることを示してもよい。このような場合、把持の実行は中止される。中止された把持の実行は、その後の評価段階において失敗であるとみなされる。
本発明の一実施形態では、把持が行われた後、把持シーケンス評価プログラムは、センサデータ、特に、グリッパの内容を反映しているセンサデータを抽出する。把持の成功は、この抽出されたデータから求められる。図1に関して述べたように、把持の成功は、以下のいずれかに基づき求められうる:1)グリッパが最小サイズの物体の付近で閉じたことを示す、2)グリッパと内容物の現在の画像を既知の内容物を有するグリッパの予め記憶された画像と比較すること、3)グリッパ及び現在の内容物の重さとグリッパ及び既知の内容物との重さの差。
本発明の一実施形態では、衝突の検出又はグリッパの内容物の分析の任意の組み合わせが、把持を実行しようとした結果、失敗したことを示す場合には、他の把持の実行がロボットアームの移動を伴って行われる。
本発明の一実施形態では、把持の成功の判定に続いて、データ処理装置は、ロボットアームを、把持した物体に一連の所定の動作を行うように命令する。このような動作は、例えば、本システムが異なるビンのうちの異なる種類の物体をソートするために用いられる場合、物体のタイプに応じて選択されうる。物体の位置がセンサデータに基づいて求められるため、物体のタイプが既知又はこの地点で既知であるとみなされ、既知のタイプは、物体で行われる一連の動作を選択するために使用されうる。例えば、ごみ分別用途において、各種の物体のタイプは、再利用ビン、リサイクルプラスチック、金属、可燃物、堆肥にできるもの、有害廃棄物等のリサイクルチャネルに対応しうる。
しかし、この段階では、物体のタイプは、誤って求められてもよい。先進的な方法のいくつかの意欲的な実施形態は、グリッパ中の物体又は物体の種類を追加で検証するための別の検証を含んでもよい。把持の実行が成功だとみなされた場合、検証動作プログラムは、ロボットアーム、特にグリッパが、所定の検証した位置へ移動するように指示されるように、アーム移動プログラムを呼び出す。別の検証は、この検証位置で行われる。いくつかの実装では、別の検証は、構造化領域におけるグリッパの内容物を検査することを含む。他の実装では、別の検証は、追加の装置によるグリッパの内容物を検査又は分析することを含んでもよい。追加の装置の例示的であるが包括的でないリストは、1)配列されたカメラとは異なる方向及び/又は異なる波長及び/又は高い解像度からのグリッパの内容物を観察する追加の撮像装置;2)非構造化領域に存在するものから異なる波長及び/又はエネルギーレベルでのグリッパの内容物を照らす又は照射する追加の照明装置;3)ガスアナライザーを含む。
別の検証の利益は、向上した信頼水準により物体のタイプがわかることであり、これは、把持した物体上で適切な動作を選択する可能性が増加する。
本発明の一実施形態では、上述した例示的な実施形態は、動作の異なるステップにおける少なくとも1つの機械学習システムを用いることによる本発明によりさらに向上される。
本発明の一実施形態では、システムの動作は、二つの学習問題を仮定し、これは、センサデータからの各種パラメータを算出することに関する。これは、一連の所定の演算を用いることにより達成されうるが、このようなシステムは、フレキシブルではなく、一連の動作状態を特定し、そのため、非構造化領域での動作のために最適ではなく、その状況は、定義によってその時点で知ることができず、所定の計算が定義される。
本発明の一実施形態では、第1の学習課題は、システムから受信されたデータセットから、実行が試みられる把持動作のための一連のパラメータを求めることに関する。
本発明の一実施形態では、第2の学習課題は、対象となる物体を把持するためにロボットアームを動かすパラメータを求めることに関する。
図2についてこれまで説明された本発明の実施形態は、互いに組み合わせて使用してもよい。いくつかの実施形態は、互いに組み合わせることにより本発明のさらなる実施形態を形成してもよい。本発明に関する方法、システム、装置、コンピュータプログラム又はコンピュータプログラム製品は、これまでに説明された本発明の実施形態の少なくとも1つを含んでもよい。
図3は、本発明の一実施形態における二つの学習システムを含むコンピュータを示すブロック図である。図3には、ランダムアクセスメモリ、少なくとも1つのプロセッサ及び二次メモリ(図示せず)を含むコンピュータ300が示される。コンピュータ300内の内部機能は、ボックス302により示される。コンピュータ300は、第1の学習エンティティ314、第2の学習エンティティ312、検証エンティティ310、アーム移動制御エンティティ320、把持シーケンス制御エンティティ318及び物体認識322を実行する。第1の学習エンティティ314及び第2の学習エンティティ312の双方は、学習システムの例である。なお、図3のシステムは、番号が付された別々のパーツ310,312,314,316,318,320及び322を含むものとして図示されているが、これらのパーツの分割は、本発明の説明としての機能であり、パーツの数は、実装の方法に応じて異なりうる。異なるパーツは、単一のコンピュータシステムで実行されるコンピュータプログラムの一部として実装されうる。この説明では、制御しているユニットは、図3のパーツを含むように理解される。本発明の一実施形態では、コンピュータ300は、図1に示されるデータ処理装置100に対応する。
第1の学習エンティティ314は、センサ304及びセンサ306のような複数のセンサから得られたセンサデータから抽出された入力フィーチャーとして受け取る。このフィーチャーは、矢印342により図示されるセンサデータから物体認識エンティティ322により抽出される。第1の学習エンティティ314は、把持操作を行うために用いられる矢印330により図示されるフィーチャーを用いて、アーム移動制御エンティティ320のための一連のパラメータ332を算出し、その目的は、これらのパラメータを用いる把持操作が成功する可能性が相対的に高いことである。このようなパラメータは、例えば、把持操作が行われる前の、対象物体の位置又はグリッパの方向を含みうる。非構造化領域における対象となる物体のとりうる位置を算出する第1の学習エンティティ314を用いる一例は、ここで、第1の学習エンティティ314の操作の一例として与えられる。簡略化のために、この例は、取り得る位置(x,y)の算出のみを表すが、本発明はこれに限定されない。
物体認識エンティティ322から第1の学習エンティティ314により受信された座標(x,y)は、カメラの座標系における登録された物体の位置に対応する。カメラは、ロボットアームに固定されることが好ましく、そのため、カメラ画像は、いかなるときでもロボットアームの位置及び方向に対応する。物体を把持するために、ロボットアームは、グリッパが物体を把持するために良好である位置及び方向へ移動する必要があり、当該位置は、ロボットアームが動作する領域における物体の特性、グリッパ及び他の物体、並びに他の取り得る要素に依存する。第1の学習エンティティ314は、前回の把持の実行、すなわち、把持動作がほぼ成功する画像座標系の位置に基づいて算出するように用いられる。
第1の学習エンティティ314は、成功評価エンティティ316から前回の実行のパラメータを含む入力データアイテム338として受け取り、これは、把持シーケンス制御エンティティ318から得られた把持シーケンス情報340の成功を判定する。この例では、データアイテム338は、(x,y)で認識された物体の重心を有する把持の実行に対応し、かつ把持が成功か失敗かについての(x,y)での把持の実行の評価に対応する座標(x,y)からなる。これらのデータアイテムは、その後、第1の学習エンティティ314の出力332を算出するために用いられる。第1の学習エンティティ314からアーム移動制御エンティティ320への出力332は、単一の点でないことが好ましく、点の分布でもよい。この分布の算出のために適切な、多くの回帰又は分類アルゴリズムは、文献から既知であり、例えば、最尤法又はサポートベクターマシンがこれを実現するために用いられうる。この例では、出力332は、例えば、中心(x,y)及び座標x及びyの両方に対する標準偏差σ及びσによりパラメータ化された二変数正規分布であってもよく、これは、広く知られた最尤法を用いて算出される。
学習エンティティ314において説明した学習システムを用いることにより、物体の位置を求めるための物体認識システムを単に用いる場合と比較して、いくつかの利益が提供される。出力が単に1つの点ではなく、分布であるため、動作時に、この例では分布の中心(x,y)となる最適な点を用いること、又はそれらの傾向に基づく分布から異なる点を選択することのいずれかが可能である。これは、システムが、学習システムに適用される新たな把持の実行のデータを有することにより連続的に学習することを可能にし、よって、非構造化領域の状態に適合可能となる。たとえ、システムへの実装前に、動作環境の不十分なデータが収集されたとしても、このシステムは、動作時に学習可能であり、新たなデータは、結果をさらに向上させることができる。他の利益は、状態が変化した場合、つまり、衝突でグリッパが変形した、又はカメラマウントが移動し、その結果、カメラ画像の物体の位置に対する最適な把持位置が変化した場合、システムは、これらの変化を補償するために学習する。
アーム移動制御エンティティ320は、その後、ロボットアームを所定の把持位置へ移動する。ロボットアームを物体に向かって動かすために、物体認識エンティティ322により求められた物体の位置の差、及び第1の学習エンティティ314により求められた最も成功しやすい把持の位置が算出される。この差は、その後、ロボットアームを制御するために用いられる物理的な世界座標の差に変換される。この変換は、完全ではないと推測され得、よって、アルゴリズムは、接近中にリアルタイムで補償しなければならない。各ステップにおいて、画像中の物体の位置は、上述したように算出され、最も成功しやすい把持の位置と比較される。カメラ座標系の座標のベクトルであるこの二つの差は、座標ベクトルに変換行例Mを掛けることにより世界座標へ変換され、それによって、ロボットアームは、移動する。また、移動をスムースにするために、層変換において少量のローパスフィルタが適用されることが好ましい。このアルゴリズムの効果は、座標系間でのおおよそ正確な変換のみが対応する変換行例Mでさえも、各ステップは、ロボットアームを意図した位置の近傍へ移動することである。この方向は、物体へ向かって正確ではなく、よって、次のステップにおいて、物体認識エンティティ322により新たなグリッパ位置に対応するカメラ画像から抽出された物体の新たな位置が取得された場合、移動の方向は変化される。これは、進入路に対する螺旋形状を招き、最終的にはカメラにより見られるように物体の位置が最も把持しやすい位置と一致するように収束する。
第2の学習エンティティ312は、所定の把持位置へのロボットアームの移動のより効果的な手法を求めるために用いられる。第2の学習エンティティ312は、矢印344で示すように、ロボットアーム及び/又はロボットアーム308からグリッパの位置での情報を受信する。第2の学習エンティティ312も過去の把持シーケンスでのその入力データとして受け取る。第2の学習システムの動作を示すために、前述の例に対応する座標(x,y)のみにより簡素な例が与えられる。この例では、第2の学習システムに適用されるデータは、カメラ座標における把持シーケンスの開始時での物体の位置と最も把持しやすい位置との差(x,y)、及び把持シーケンスの開始時でのロボットアームの世界座標と把持シーケンスが完了した後の世界座標との差(x,y)を含む。
把持シーケンス制御エンティティ318への出力334として、第2の学習エンティティ312は、MLがベクトル(x,y,1)に掛けられたとき、対応する差(x,y)の良好な接近が得られる変換行例MLを計算する。MLは、例えば、リッジ回帰として文献で知られる方向を用いて過去の把持の実行から算出されうるが、他の適切な方法が本発明の範囲内で同様に可能である。なお、この例では算出は、二次元空間での座標のみを含むが、上述した方法は、ロボットアームのより複雑な動きにも同様に適用可能であり、例えば、三次元空間又はロボットアームの異なる部品の回転を含む動きにも適用可能である。
第2の学習エンティティ312を用いることは、1つの動きにおけるロボットアームの動きに対する対象を算出するために、第2の学習エンティティ312を行列Mとして用い、その後、上述した移動アルゴリズムによる残りの誤差を補正することにより、出力行列MLがロボットアームの移動アルゴリズムをショートカットするために用いられうるため、有益である。
ロボットアームが移動した後、把持動作が行われ、把持が成功したかどうかを判定するために評価ステップが行われる。把持が成功しなかったことを評価結果が示す場合、アームを他の位置へ移動する処理へ戻る。把持が成功したことを評価結果が示す場合、矢印336に示すように、物体のタイプが検証エンティティ310により検証される。
少なくとも1つのプロセッサが本発明に関連づけられた機能的なエンティティを実行するとき、メモリは、成功評価エンティティ316、学習システムエンティティ314、学習システムエンティティ312、検証エンティティ310、アーム移動制御エンティティ320及び把持シーケンスエンティティ318のようなエンティティを含む。図3に示されるようなコンピュータ300内の機能的なエンティティは、各種の手法で実装されてもよい。これらは、ネットワークノードのネイディブオペレーティングシステム下で実行されるプロセスとして実装されてもよい。エンティティは、別のプロセス又はスレッド又は多数の異なるエンティティが一のプロセス又はスレッドにより実装されるように実装されてもよい。プロセス又はスレッドは、多数のルーティン、つまり、例えば、工程(procedures)及び機能(functions)を含むプログラムブロックのインスタンスであってもよい。機能的なエンティティは、別のコンピュータプログラムとして、又はエンティティを実装するいくつかのルーティン又は機能を含む単一のコンピュータプログラムとして実装されてもよい。プログラムブロックは、例えば、メモリ回路、メモリカード、磁気又は光ディスクのような少なくとも1つのコンピュータ読み取り可能な媒体に記憶される。いくつかの機能的なエンティティは、他の機能的なエンティティにリンクしたプログラムモジュールとして実装されてもよい。図3の機能的なエンティティは、また、別のメモリに記憶されてもよく、例えば、メッセージバス又はネットワークノード内の内部ネットワークを通じて通信する別のプロセッサにより実行されてもよい。このようなメッセージバスの一例は、Peripheral Component Interconnect (PCI)バスである。
本発明の例示的な実施形態は、任意の適切なサーバ、ワークステーション、PC、ラップトップコンピュータ、PDA、インターネット家電、ハンドヘルド装置、携帯電話、無線装置、他の装置等の例示的な実施形態のプロセスを実行可能な任意の適切なデバイスを含み得、例えば、インターネットアクセス、任意の適切な形式(例えば、音声、モデム等)での電話、無線通信媒体、一又はそれ以上の無線通信ネットワーク、携帯通話ネットワーク、3G通信ネットワーク、4G通信ネットワーク、公衆交換電話網(Public Switched Telephone Network (PSTNs))、パケットデータネットワーク(PDNs)、インターネット、イントラネット、それらの組み合わせ等を含む一又はそれ以上のインターフェース機構を通じて通信可能である。
ハードウェア分野の当業者には理解できるように、例示的な実施形態は、例示的なプロセスのためのものであり、例示的な実施形態を実装するために特定のハードウェアの多くのバリエーションが可能であることがわかる。例えば、例示的な実施形態の一又はそれ以上の構成要素の機能性は、一又はそれ以上のハードウェアデバイスにより実装されうる。
例示的な実施形態は、本明細書で説明された各種のプロセスに関する情報を記憶しうる。この情報は、ハードディスク、光ディスク、磁気−光ディスク、RAM等のような一又はそれ以上のメモリに記憶されうる。一又はそれ以上のデータベースは、本発明の例示的な実施形態を実装するために用いられる情報を記憶しうる。データベースは、本明細書に挙げた一又はそれ以上のメモリ又はストレージに含まれるデータ構造(例えば、レコード、テーブル、アレイ、フィールド、グラフ、ツリー、リスト等)を用いて構成されうる。例示的な実施形態について説明されたプロセスは、一又はそれ以上のデータベースにおける例示的な実施形態のデバイス及びサブシステムのプロセスにより収集及び/又は生成されたデータを記憶するために適切なデータ構造を含みうる。
電気分野の当業者には理解できるように、例示的な実施形態の全部又は一部は、特定用途集積回路の作成により、又は従来のコンポーネント回路の適切なネットワークを相互接続することにより実装されてもよい。
上述したように、例示的な実施形態の構成要素は、本発明の教示に係り、データ構造、テーブル、レコード、及び/又は本明細書に記載された他のデータを保持するためのコンピュータで読み取り可能な媒体又はメモリを含みうる。コンピュータで読み取り可能な媒体は、実行のためのプロセッサへの命令の提供を共有する任意の媒体を含みうる。このような媒体は、多くの形態をとり得、不揮発性媒体、揮発性媒体、伝送媒体等を含むが、これに限定されない。不揮発性媒体は、例えば、光又は磁気ディスク、磁気−光ディスク等を含みうる。揮発性媒体は、ダイナミックメモリ等を含みうる。伝送媒体は、同軸ケーブル、銅線、光ファイバー等を含みうる。伝送媒体は、また、無線周波数(RF)通信、赤外線(IR)データ通信等の間に生成される音響、光、電磁波等の形態をとりうる。コンピュータで読み取り可能な媒体の一般的な形態は、フロッピーディスク(登録商標)、フレキシブルディスク、ハードディスク、磁気テープ、任意の他の磁気媒体、CD−ROM,CDRW,DVD,任意の他の適切な光学媒体、パンチカード、ペーパーテープ、光学マークシート、穴のパターンを有する任意の他の適切な物理媒体、任意の他の光学的に識別可能な印、RAM、PROM、EPROM、FLASH−EPROM、任意の他の適切なメモリチップ又はカートリッジ、搬送波又はコンピュータが読み取ることができる任意の他の適切な媒体を含みうる。
本発明は、多くの例示的な実施形態及び実装に関して説明してきたが、本発明はこれに限定されず、予期される特許請求の範囲内に含まれる各種の変更及び均等物が含まれる。
当業者には本発明の基本概念が各種の手法で実装されてもよいことが自明である。よって、本発明及びその実施形態は、上述した実施例に限定されず、特許請求の範囲内で変更されてもよい。

Claims (15)

  1. 少なくとも1つの第1のセンサからの第1のセンサデータを受信するステップと、
    前記第1のセンサデータから、空間における少なくとも一つの位置を含む対象の位置を求めるステップと、
    グリッパを前記対象の位置へ移動させるために、ロボットアームへの少なくとも1つの第1の命令を発することを開始するステップと、
    前記少なくとも1つの第1の命令の実行が失敗かどうかを判定するために、前記ロボットアーム及び前記グリッパの少なくとも一方と関連付けられる少なくとも1つのフォースフィードバックセンサからのフォースフィードバックセンサデータを受信するステップと、
    前記少なくとも1つの第1のセンサからの第2のセンサデータを受信するステップと、
    前記第2のセンサデータから物体の把持が成功かどうか判定するステップと、
    前記把持の成功の判定に応じて、少なくとも1つの第2のセンサから検証センサデータを受信するステップと、
    所定の位置へ前記ロボットアームを移動して、前記グリッパの把持をリリースするために、前記ロボットアームへ少なくとも1つの第2の命令を発するステップと、
    把持の成功及び前記第1のセンサデータを第1の学習エンティティに登録するステップと、
    前記第1の学習エンティティに登録された前記把持の成功及び前記第1のセンサデータを用いて前記第1のセンサデータから把持が成功する可能性を予測するステップと、
    前記可能性に応じて前記ロボットアームへ前記少なくとも1つの第1の命令を発するステップと、を含む方法。
  2. 前記少なくとも1つの命令の少なくとも1つの実行が失敗したことの判定に応じて、把持の失敗及び前記第1のセンサデータを前記第1の学習エンティティに登録するステップをさらに含む請求項1に記載の方法。
  3. 前記グリッパを検証位置へ移動するための少なくとも1つの第3の命令を前記ロボットアームへ発するステップをさらに含む請求項2に記載の方法。
  4. 前記検証位置は、前記少なくとも1つの第2のセンサが物体に干渉されない前記少なくとも1つの第2のセンサの視野における一定のバックグラウンドに対応し、前記一定のバックグラウンドは、前記物体のタイプを検証するために一定色の平坦な面を含む、請求項3に記載の方法。
  5. 前記少なくとも1つの第2のセンサからの検証センサデータから物体のタイプを求めるステップをさらに含む請求項3に記載の方法。
  6. 前記ロボットアームへの前記少なくとも1つの第1の命令を発することを開始するステップは、
    前記ロボットアームへ第1の座標を提供するステップと、
    前記少なくとも1つの第1のセンサから第3のセンサデータを受信するステップと、
    前記第3のセンサデータを用いてセンサ座標系における前記グリッパの第1の位置を求めるステップと、をさらに含む請求項1に記載の方法。
  7. 前記ロボットアームへの前記少なくとも1つの第1の命令を発することを開始するステップは、
    前記グリッパの前記第1の位置と前記第1の座標との誤差を求めるステップと、
    前記ロボットアームに第2の座標を提供するステップと、
    前記少なくとも1つの第1のセンサから前記第3のセンサデータとは異なる第4のセンサデータを受信するステップと、
    前記第4のセンサデータを用いてセンサ座標系における前記グリッパの前記第1の位置とは異なる第2の位置を求めるステップと、
    前記誤差が所定の閾値より小さいかどうかを検証するステップと、をさらに含む請求項6に記載の方法。
  8. 前記ロボットアームへの前記少なくとも1つの第1の命令を発することを開始するステップは、第2の学習エンティティの前記センサ座標系において求められた前記ロボットアームの座標と前記グリッパの位置との関係を登録するステップをさらに含む請求項6に記載の方法。
  9. 前記ロボットアームへの前記少なくとも1つの第1の命令を発することを開始するステップは、登録された前記関係を用いて、前記ロボットアームの座標と前記センサ座標系における座標との変換関数を作成するステップをさらに含む請求項8に記載の方法。
  10. 前記第1のセンサデータから対象の位置を求めるステップは、
    前記センサ座標系における初期対象位置を求めるステップと、
    変換関数を用いて前記初期対象位置から前記対象の位置を計算するステップと、をさらに含む請求項8に記載の方法。
  11. コンピュータプログラムコードを有する少なくとも1つのプロセッサ及び少なくとも1つのメモリを含む装置であって、前記少なくとも1つのメモリ及び前記コンピュータプログラムコードは、前記少なくとも1つのプロセッサにより、前記装置が、
    少なくとも1つの第1のセンサからの第1のセンサデータを受信し、
    前記第1のセンサデータから、少なくとも1つの空間における位置及びロボットアームに関連付けられるグリッパに対する方向を含む対象の位置を求め、
    前記グリッパを前記対象の位置へ移動するために、前記ロボットアームへ少なくとも1つの第1の命令を発することを開始し、
    前記ロボットアーム及び前記グリッパの少なくとも一方と関連付けられる少なくとも1つのフォースフィードバックセンサからフォースフィードバックセンサデータを受信し、前記少なくとも1つの第1の命令の実行が失敗かどうかを判定し、
    前記少なくとも1つ第1のセンサから第2のセンサデータを受信し、
    前記第2のセンサデータから物体の把持が成功かどうか判定し、
    前記把持の成功の判定に応じて、少なくとも1つの第2のセンサから検証センサデータを受信し、
    所定の位置へ前記ロボットアームを移動して、前記グリッパの把持をリリースするために、前記ロボットアームへ少なくとも1つの第2の命令を発し、
    把持の成功及び前記第1のセンサデータを第1の学習エンティティに登録し、
    前記第1の学習エンティティに登録された前記把持の成功及び前記第1のセンサデータを用いて前記第1のセンサデータから把持が成功する可能性を予測し、
    前記可能性に応じて前記ロボットアームへ前記少なくとも1つの第1の命令を発する
    ことを少なくとも行うように構成される、装置。
  12. 少なくとも1つの第1のセンサからの第1のセンサデータを受信する手段と、
    前記第1のセンサデータから、少なくとも1つの空間における位置及びロボットアームに関連付けられるグリッパに対する方向を含む対象の位置を求める手段と、
    前記グリッパを前記対象の位置へ移動するために、前記ロボットアームへ少なくとも1つの第1の命令を発することを開始する手段と、
    前記ロボットアーム及び前記グリッパの少なくとも一方と関連付けられる少なくとも1つのフォースフィードバックセンサからフォースフィードバックセンサデータを受信し、前記少なくとも1つの第1の命令の実行が失敗かどうかを判定する手段と、
    前記少なくとも1つ第1のセンサから第2のセンサデータを受信する手段と、
    前記第2のセンサデータから物体の把持が成功かどうか判定する手段と、
    前記把持の成功の判定に応じて、少なくとも1つの第2のセンサから検証センサデータを受信する手段と、
    所定の位置へ前記ロボットアームを移動して、前記グリッパの把持をリリースするために、前記ロボットアームへ少なくとも1つの第2の命令を発する手段と、
    把持の成功及び前記第1のセンサデータを第1の学習エンティティに登録する手段と、
    前記第1の学習エンティティに登録された前記把持の成功及び前記第1のセンサデータを用いて前記第1のセンサデータから把持が成功する可能性を予測する手段と、
    前記可能性に応じて前記ロボットアームへ前記少なくとも1つの第1の命令を発する手段と、を含む装置。
  13. コンピュータ読み取り可能な媒体に統合されるコンピュータプログラムであって、
    前記コンピュータプログラムは、
    少なくとも1つの第1のセンサからの第1のセンサデータを受信するステップと、
    前記第1のセンサデータから、少なくとも1つの空間における位置及びロボットアームに関連付けられるグリッパに対する方向を含む対象の位置を求めるステップと、
    前記グリッパを前記対象の位置へ移動するために、前記ロボットアームへ少なくとも1つの第1の命令を発することを開始するステップと、
    前記ロボットアーム及び前記グリッパの少なくとも一方と関連付けられる少なくとも1つのフォースフィードバックセンサからフォースフィードバックセンサデータを受信し、前記少なくとも1つの第1の命令の実行が失敗かどうかを判定するステップと、
    前記少なくとも1つ第1のセンサから第2のセンサデータを受信するステップと、
    前記第2のセンサデータから物体の把持が成功かどうか判定するステップと、
    前記把持の成功の判定に応じて、少なくとも1つの第2のセンサから検証センサデータを受信するステップと、
    所定の位置へ前記ロボットアームを移動して、前記グリッパの把持をリリースするために、前記ロボットアームへ少なくとも1つの第2の命令を発するステップと、
    把持の成功及び前記第1のセンサデータを第1の学習エンティティに登録するステップと、
    前記第1の学習エンティティに登録された前記把持の成功及び前記第1のセンサデータを用いて前記第1のセンサデータから把持が成功する可能性を予測するステップと、
    前記可能性に応じて前記ロボットアームへ前記少なくとも1つの第1の命令を発するステップと、
    を含む方法を実行するためのプロセッサを制御するコードを含む、コンピュータプログラム。
  14. 前記コンピュータプログラムは、前記コンピュータ読み取り可能な媒体に記憶される請求項13に記載のコンピュータプログラム。
  15. 前記コンピュータ読み取り可能な媒体は、リムーバブルメモリカード、ホログラフィックメモリ、磁気ディスク又は光ディスクである請求項14に記載のコンピュータプログラム。
JP2013515935A 2010-06-24 2011-05-05 ロボットシステムにおける物理的な物体の選択のための方法 Active JP5806301B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FI20105732A FI20105732A0 (fi) 2010-06-24 2010-06-24 Menetelmä fyysisten kappaleiden valitsemiseksi robottijärjestelmässä
FI20105732 2010-06-24
PCT/FI2011/050414 WO2011161304A1 (en) 2010-06-24 2011-05-05 Method for the selection of physical objects in a robot system

Publications (2)

Publication Number Publication Date
JP2013529554A JP2013529554A (ja) 2013-07-22
JP5806301B2 true JP5806301B2 (ja) 2015-11-10

Family

ID=42308184

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013515935A Active JP5806301B2 (ja) 2010-06-24 2011-05-05 ロボットシステムにおける物理的な物体の選択のための方法

Country Status (7)

Country Link
US (1) US9050719B2 (ja)
EP (1) EP2585256B1 (ja)
JP (1) JP5806301B2 (ja)
CN (1) CN103068535B (ja)
FI (1) FI20105732A0 (ja)
RU (1) RU2566226C2 (ja)
WO (1) WO2011161304A1 (ja)

Families Citing this family (103)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5472214B2 (ja) * 2011-06-20 2014-04-16 株式会社安川電機 ピッキングシステム
JP5787642B2 (ja) * 2011-06-28 2015-09-30 キヤノン株式会社 対象物保持装置、対象物保持装置の制御方法、およびプログラム
WO2013126048A1 (en) * 2012-02-21 2013-08-29 Amazon Technologies, Inc. System and method for automatic picking of products in a materials handling facility
JP5977544B2 (ja) * 2012-03-09 2016-08-24 キヤノン株式会社 情報処理装置、情報処理方法
JP6000579B2 (ja) 2012-03-09 2016-09-28 キヤノン株式会社 情報処理装置、情報処理方法
JP5975685B2 (ja) 2012-03-09 2016-08-23 キヤノン株式会社 情報処理装置、情報処理方法
KR101800189B1 (ko) * 2012-04-30 2017-11-23 삼성전자주식회사 수술 로봇의 힘 제어 장치 및 방법
US8861790B2 (en) * 2012-06-18 2014-10-14 The Boeing Company System and method for guiding a mobile device
JP5670397B2 (ja) * 2012-08-29 2015-02-18 ファナック株式会社 バラ積みされた物品をロボットで取出す装置及び方法
US9102055B1 (en) 2013-03-15 2015-08-11 Industrial Perception, Inc. Detection and reconstruction of an environment to facilitate robotic interaction with the environment
SG2013069893A (en) * 2013-09-13 2015-04-29 Jcs Echigo Pte Ltd Material handling system and method
JP2015089590A (ja) * 2013-11-05 2015-05-11 ファナック株式会社 バラ積みされた物品をロボットで取出す装置及び方法
WO2015090324A1 (en) * 2013-12-17 2015-06-25 Syddansk Universitet Device for dynamic switching of robot control points
KR20160124770A (ko) * 2014-02-20 2016-10-28 엠비엘 리미티드 로봇식 요리용 키친에서의 음식 준비를 위한 방법 및 시스템
JP5877859B2 (ja) * 2014-03-12 2016-03-08 ファナック株式会社 バラ積みされたワークを取り出すロボットシステム及びワークの把持状態を判定する判定方法
JP6642968B2 (ja) * 2014-03-20 2020-02-12 キヤノン株式会社 情報処理装置、情報処理方法、プログラム
CN105313127A (zh) * 2014-06-02 2016-02-10 精工爱普生株式会社 机器人、机器人的控制方法以及机器人的控制装置
US9327406B1 (en) 2014-08-19 2016-05-03 Google Inc. Object segmentation based on detected object-specific visual cues
US10311400B2 (en) 2014-10-24 2019-06-04 Fellow, Inc. Intelligent service robot and related systems and methods
US10373116B2 (en) * 2014-10-24 2019-08-06 Fellow, Inc. Intelligent inventory management and related systems and methods
US20190325379A1 (en) * 2014-10-24 2019-10-24 Fellow, Inc. Intelligent inventory management using cleaning machines
RU2638531C2 (ru) * 2014-12-11 2017-12-14 Общество с ограниченной ответственностью "СМП Роботикс" Система раздельного сбора и транспортировки мусора
FR3031048B1 (fr) * 2014-12-24 2016-12-30 Solystic Machine de tri postal avec une entree d'alimentation comprenant un bras robotise et un convoyeur a plat incline
FR3032365B1 (fr) * 2015-02-10 2017-02-03 Veolia Environnement-VE Procedure de tri selectif
FR3032364B1 (fr) * 2015-02-11 2017-01-27 Solystic Installation pour la separation et l'individualisation d'objets postaux heterogenes avec un systeme de vision a sources laser
JP6635690B2 (ja) * 2015-06-23 2020-01-29 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム
JP6240689B2 (ja) 2015-07-31 2017-11-29 ファナック株式会社 人の行動パターンを学習する機械学習装置、ロボット制御装置、ロボットシステム、および機械学習方法
JP6522488B2 (ja) * 2015-07-31 2019-05-29 ファナック株式会社 ワークの取り出し動作を学習する機械学習装置、ロボットシステムおよび機械学習方法
DE102016015936B8 (de) * 2015-07-31 2024-10-24 Fanuc Corporation Vorrichtung für maschinelles Lernen, Robotersystem und maschinelles Lernsystem zum Lernen eines Werkstückaufnahmevorgangs
EP3742347B1 (en) 2016-03-03 2022-11-02 Google LLC Deep machine learning methods and apparatus for robotic grasping
KR102023149B1 (ko) * 2016-03-03 2019-11-22 구글 엘엘씨 로봇 파지를 위한 심층 기계 학습 방법 및 장치
US9943963B2 (en) * 2016-04-12 2018-04-17 Fetch Robotics, Inc. System and method for determining and promoting safety of a robotic payload
RU2624288C1 (ru) * 2016-05-04 2017-07-03 Юрий Алексеевич Пак Способ сортировки мусора
US10322506B2 (en) * 2016-05-06 2019-06-18 Kindred Systems Inc. Systems, devices, articles, and methods for using trained robots
WO2017205164A1 (en) * 2016-05-25 2017-11-30 The Procter & Gamble Company Article handling device
JP6665040B2 (ja) * 2016-06-20 2020-03-13 三菱重工業株式会社 ロボット制御システム及びロボット制御方法
JP6827100B2 (ja) 2016-07-14 2021-02-10 シーメンス・ヘルスケア・ダイアグノスティックス・インコーポレーテッドSiemens Healthcare Diagnostics Inc. サンプルラック撮像データに基づく動的な取り上げ及び配置選択シーケンスの方法、システム、及び装置
EP3484637B1 (en) 2016-07-15 2023-06-07 CleanRobotics Technologies, Inc. Automatic sorting of waste
WO2018017612A1 (en) * 2016-07-18 2018-01-25 Lael Odhner Training robotic manipulators
CN106166018A (zh) * 2016-07-29 2016-11-30 苏州高通机械科技有限公司 一种新型玩具收纳装置
CN106078784A (zh) * 2016-07-29 2016-11-09 苏州高通机械科技有限公司 一种玩具收纳装置及其机械手
FI127100B (en) * 2016-08-04 2017-11-15 Zenrobotics Oy A method and apparatus for separating at least one piece from a plurality of pieces
SG10201608757PA (en) * 2016-10-19 2018-05-30 Component Aerospace Singapore Pte Ltd Method and apparatus for facilitating part verification
US10926875B2 (en) 2016-12-14 2021-02-23 Sanmina Corporation Devices and methods for facilitating capture of unmanned aerial vehicles
US10661438B2 (en) * 2017-01-16 2020-05-26 Ants Technology (Hk) Limited Robot apparatus, methods and computer products
US11173613B2 (en) * 2017-02-09 2021-11-16 Mitsubishi Electric Corporation Position control device and position control method
EP3589457B1 (en) * 2017-03-01 2022-01-12 Omron Corporation Monitored control system
JP6438512B2 (ja) * 2017-03-13 2018-12-12 ファナック株式会社 機械学習により補正した計測データでワークの取り出しを行うロボットシステム、計測データ処理装置および計測データ処理方法
JP6983524B2 (ja) * 2017-03-24 2021-12-17 キヤノン株式会社 情報処理装置、情報処理方法およびプログラム
DE102017206995A1 (de) * 2017-04-26 2018-10-31 Krones Aktiengesellschaft Handhabungsvorrichtung und Verfahren zum Umgang mit in mindestens einer Reihe hintereinander bewegten Stückgütern
CN107265114A (zh) * 2017-06-19 2017-10-20 太仓弘杉环保科技有限公司 一种高效节能型上料机器人的工作方法
US11345040B2 (en) * 2017-07-25 2022-05-31 Mbl Limited Systems and methods for operating a robotic system and executing robotic interactions
JP6691077B2 (ja) * 2017-08-18 2020-04-28 ファナック株式会社 制御装置及び機械学習装置
WO2019037013A1 (zh) * 2017-08-24 2019-02-28 深圳蓝胖子机器人有限公司 机器人码放货物的方法及机器人
CA3073516A1 (en) 2017-09-01 2019-03-07 The Regents Of The University Of California Robotic systems and methods for robustly grasping and targeting objects
EP3704626A1 (en) * 2017-11-02 2020-09-09 Amp Robotics Corporation Systems and methods for optical material characterization of waste materials using machine learning
JP7052305B2 (ja) * 2017-11-13 2022-04-12 トヨタ自動車株式会社 救援システムおよび救援方法、ならびにそれに使用されるサーバおよびプログラム
US10792809B2 (en) * 2017-12-12 2020-10-06 X Development Llc Robot grip detection using non-contact sensors
WO2019130429A1 (ja) * 2017-12-26 2019-07-04 Kyoto Robotics株式会社 ピッキング対象物把持情報登録システム
JP6687591B2 (ja) * 2017-12-26 2020-04-22 ファナック株式会社 物品搬送装置、ロボットシステムおよび物品搬送方法
JP6911798B2 (ja) 2018-03-15 2021-07-28 オムロン株式会社 ロボットの動作制御装置
JP6810087B2 (ja) * 2018-03-29 2021-01-06 ファナック株式会社 機械学習装置、機械学習装置を用いたロボット制御装置及びロボットビジョンシステム、並びに機械学習方法
SE543130C2 (en) 2018-04-22 2020-10-13 Zenrobotics Oy A waste sorting robot gripper
SE543177C2 (en) 2018-04-22 2020-10-20 Zenrobotics Oy Waste sorting gantry robot comprising an integrated chute and maintenance door
US10967507B2 (en) * 2018-05-02 2021-04-06 X Development Llc Positioning a robot sensor for object classification
SE544741C2 (en) 2018-05-11 2022-11-01 Genie Ind Bv Waste Sorting Gantry Robot and associated method
US11407111B2 (en) 2018-06-27 2022-08-09 Abb Schweiz Ag Method and system to generate a 3D model for a robot scene
CN108772840A (zh) * 2018-07-02 2018-11-09 常州普旺科技有限公司 一种基于计算机视觉和机器学习的自适应分拣系统及方法
CN109444937B (zh) * 2018-08-08 2021-04-02 北京木业邦科技有限公司 树木建模及抚育方法、装置、电子设备及存储介质
US10369701B1 (en) 2018-10-30 2019-08-06 Mujin, Inc. Automated package registration systems, devices, and methods
KR20240042157A (ko) 2018-10-30 2024-04-01 무진 아이엔씨 자동화된 패키지 등록 시스템, 디바이스 및 방법
US12061481B2 (en) * 2018-11-28 2024-08-13 Google Llc Robot navigation using a high-level policy model and a trained low-level policy model
JP6904327B2 (ja) * 2018-11-30 2021-07-14 オムロン株式会社 制御装置、制御方法、及び制御プログラム
RU2719716C1 (ru) * 2018-12-14 2020-04-22 Геннадий Никадрович Плахов Многофункциональная высотная свалка бытовых отходов со спиральным автодорожным подъемом на каркасной основе
EP3695941B1 (en) * 2019-02-15 2022-04-13 Siemens Aktiengesellschaft Computerized system and method using different image views to find grasp locations and trajectories for robotic pick up
CA3130626C (en) 2019-02-22 2023-11-21 Dexterity, Inc. Robotic handling of soft products in non-rigid packaging
RU2700246C1 (ru) * 2019-03-21 2019-09-20 Публичное Акционерное Общество "Сбербанк России" (Пао Сбербанк) Способ и система захвата объекта с помощью роботизированного устройства
DE102019107851B4 (de) * 2019-03-27 2022-06-23 Franka Emika Gmbh Robotergreifer sowie Verfahren zum Betrieb eines Robotergreifers
CN109927036A (zh) * 2019-04-08 2019-06-25 青岛小优智能科技有限公司 一种三维视觉引导机械手抓取的方法及系统
US11312581B2 (en) * 2019-04-16 2022-04-26 Abb Schweiz Ag Object grasp system and method
US10586082B1 (en) 2019-05-29 2020-03-10 Fellow, Inc. Advanced micro-location of RFID tags in spatial environments
US11590659B2 (en) * 2019-07-02 2023-02-28 Intelligrated Headquarters, Llc Robotic sortation system
US11505436B2 (en) * 2019-07-19 2022-11-22 GM Global Technology Operations LLC Overhead system for operator-robot task collaboration
JP7368135B2 (ja) * 2019-07-31 2023-10-24 ファナック株式会社 複数の可動部を有する物品搬送システム
CN110807831B (zh) * 2019-09-18 2023-03-28 重庆大学 一种基于最小单元碰撞检测的传感器覆盖范围计算方法
JP7388870B2 (ja) * 2019-10-18 2023-11-29 ファナック株式会社 ロボットシステムおよび制御装置
US11584004B2 (en) * 2019-12-17 2023-02-21 X Development Llc Autonomous object learning by robots triggered by remote operators
WO2021133184A1 (ru) * 2019-12-23 2021-07-01 Федеральное Государственное Автономное Образовательное Учреждение Высшего Образования "Московский Физико-Технический Институт (Национальный Исследовательский Университет") Способ выполнения манипуляции с объектом
US20210233258A1 (en) * 2020-01-28 2021-07-29 Embodied Intelligence Inc. Identifying scene correspondences with neural networks
US10814489B1 (en) 2020-02-28 2020-10-27 Nimble Robotics, Inc. System and method of integrating robot into warehouse management software
DE102020113278B4 (de) * 2020-05-15 2024-07-25 Gerhard Schubert Gesellschaft mit beschränkter Haftung Verfahren zur Steuerung des Betriebs eines Industrieroboters, Industrieroboter und Anordnung zur Umsetzung von Objekten
CN112124825B (zh) * 2020-09-22 2022-10-25 同济大学 一种垃圾转运装备机械爪定位控制系统
SE2030325A1 (en) * 2020-10-28 2021-12-21 Zenrobotics Oy Waste sorting robot and method for detecting faults
SE544457C2 (en) * 2020-10-28 2022-06-07 Zenrobotics Oy Waste sorting robot and method for cleaning a waste sorting robot
SE544103C2 (en) 2020-10-28 2021-12-21 Zenrobotics Oy Waste Sorting Robot with gripper that releases waste object at a throw position
EP4112238A1 (de) * 2021-06-28 2023-01-04 Bayer Aktiengesellschaft Autonomes manipulieren einer biegeschlaffen primärverpackung in einer formstabilen sekundärverpackung mittels roboter
CN113524147B (zh) * 2021-08-02 2022-05-24 北京深度奇点科技有限公司 一种基于3d相机的工业机器人示教系统及方法
US20230062286A1 (en) * 2021-09-01 2023-03-02 Exocad Gmbh Compensating deviations using a full manufacturing result
SE2130289A1 (en) 2021-10-26 2023-04-27 Mp Zenrobotics Oy Waste Sorting Robot
WO2023096936A1 (en) * 2021-11-23 2023-06-01 California Institute Of Technology Methods and printed interface for robotic physicochemical sensing
SE2130349A1 (en) 2021-12-09 2023-06-10 Mp Zenrobotics Oy Waste sorting robot and external cleaning apparatus
CN114082606B (zh) * 2022-01-20 2022-04-15 常州铭赛机器人科技股份有限公司 点胶连线设备
US12083561B2 (en) * 2022-03-14 2024-09-10 Dexterity, Inc. Correlating information to facilitate automated sortation

Family Cites Families (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3896940A (en) * 1974-01-30 1975-07-29 Bendix Corp Part presenter
US4305130A (en) * 1979-05-29 1981-12-08 University Of Rhode Island Apparatus and method to enable a robot with vision to acquire, orient and transport workpieces
JPS6362690A (ja) * 1986-09-03 1988-03-18 富士通株式会社 ハンドの把持確認方法
US4835730A (en) * 1987-02-27 1989-05-30 Adept Technology, Inc. Database driven robot programming system and method
GB2229809A (en) * 1989-03-23 1990-10-03 Symbolic Systems Ltd Process for separating waste items for recycling
JPH0349886A (ja) * 1989-07-14 1991-03-04 Fujitsu Ltd ロボット制御方式
US5299693A (en) * 1991-04-12 1994-04-05 Ubaldi Richard A Method and apparatus for extracting selected materials
JPH06262563A (ja) * 1993-03-17 1994-09-20 Fanuc Ltd 産業用ロボットの位置教示支援用力表示装置
JPH10249767A (ja) * 1997-03-13 1998-09-22 Mitsubishi Electric Corp 移動型物体把持装置及びその制御方法
US6056108A (en) * 1997-11-17 2000-05-02 Adept Technology, Inc. Impulse-based, flexible parts feeder
JP3655083B2 (ja) * 1998-02-25 2005-06-02 富士通株式会社 ロボットの位置決めを行うインタフェース装置
JP2000263481A (ja) * 1999-03-12 2000-09-26 Meidensha Corp ビンピッキング装置
JP2001038667A (ja) * 1999-08-05 2001-02-13 Toyota Motor Corp ワーク把持装置
JP4139016B2 (ja) * 1999-09-30 2008-08-27 アロカ株式会社 試験管搬送装置
JP2001252886A (ja) * 2000-03-10 2001-09-18 Hitachi Zosen Corp 物体のハンドリングシステム
JP2002267599A (ja) * 2001-03-07 2002-09-18 Mitsubishi Heavy Ind Ltd プラスチックの材質識別システムおよびプラスチックの材質識別・分別システム
US6859683B2 (en) * 2001-06-04 2005-02-22 Futaba Corporation Of America Integrated robotic cell
JP2003211096A (ja) * 2002-01-18 2003-07-29 Fuji Photo Film Co Ltd 物品の仕分け・整列装置
JP3952908B2 (ja) * 2002-08-29 2007-08-01 Jfeエンジニアリング株式会社 物体の個別認識方法及び個別認識装置
JP4137601B2 (ja) * 2002-11-12 2008-08-20 シャープ株式会社 ロボットハンドの制御方法、ロボットハンド
WO2004052598A1 (ja) * 2002-12-12 2004-06-24 Matsushita Electric Industrial Co., Ltd. ロボット制御装置
DE10319253B4 (de) * 2003-04-28 2005-05-19 Tropf, Hermann Dreidimensional lagegerechtes Zuführen mit Roboter
JP2005111607A (ja) 2003-10-07 2005-04-28 Fanuc Ltd ロボット物流トラッキング装置
JP3930490B2 (ja) 2004-04-23 2007-06-13 ファナック株式会社 物品取出し装置
AU2006344046A1 (en) 2005-10-24 2007-11-29 Valerio, Thomas A Dissimilar materials sorting process, system and apparatus
CN101516518A (zh) * 2005-10-24 2009-08-26 托马斯·A·瓦莱里奥 不同材料的拣选方法、系统及设备
JP4087874B2 (ja) * 2006-02-01 2008-05-21 ファナック株式会社 ワーク取り出し装置
JP4153528B2 (ja) * 2006-03-10 2008-09-24 ファナック株式会社 ロボットシミュレーションのための装置、プログラム、記録媒体及び方法
US20070276539A1 (en) * 2006-05-25 2007-11-29 Babak Habibi System and method of robotically engaging an object
JP4199264B2 (ja) * 2006-05-29 2008-12-17 ファナック株式会社 ワーク取り出し装置及び方法
JP4226623B2 (ja) * 2006-09-29 2009-02-18 ファナック株式会社 ワーク取り出し装置
JP4309439B2 (ja) * 2007-03-30 2009-08-05 ファナック株式会社 対象物取出装置
JP5010382B2 (ja) * 2007-07-27 2012-08-29 株式会社東芝 マニピュレータおよびロボット
JP2009269127A (ja) * 2008-05-08 2009-11-19 Sony Corp 把持装置及びその制御方法
JP4565023B2 (ja) * 2008-07-04 2010-10-20 ファナック株式会社 物品取り出し装置
EP2346650A1 (en) * 2008-08-29 2011-07-27 ABB Research Ltd. Compliant apparatus for the tool at the end of an arm of an industrial robot
WO2010024795A1 (en) * 2008-08-29 2010-03-04 Abb Research Ltd. Robotic picking of parts from a bin using force feedback
US8862269B2 (en) * 2008-08-29 2014-10-14 Abb Research Ltd. Robotic picking of parts from a bin
EP2221152A1 (en) * 2009-02-19 2010-08-25 ABB Technology AB A robot system and a method for picking and placing components
CN101618444B (zh) 2009-07-24 2010-12-29 中冶实久建设有限公司 横向移钢机一次推移到位施工工艺
WO2011031523A2 (en) * 2009-08-27 2011-03-17 Abb Research Ltd. Robotic picking of parts from a parts holding bin
JP4938115B2 (ja) * 2010-07-27 2012-05-23 ファナック株式会社 ワーク取出し装置およびワーク取出し方法

Also Published As

Publication number Publication date
CN103068535B (zh) 2016-04-20
JP2013529554A (ja) 2013-07-22
WO2011161304A1 (en) 2011-12-29
RU2566226C2 (ru) 2015-10-20
US9050719B2 (en) 2015-06-09
EP2585256B1 (en) 2015-07-01
US20130151007A1 (en) 2013-06-13
RU2013102960A (ru) 2014-07-27
FI20105732A0 (fi) 2010-06-24
EP2585256A4 (en) 2014-04-16
EP2585256A1 (en) 2013-05-01
CN103068535A (zh) 2013-04-24

Similar Documents

Publication Publication Date Title
JP5806301B2 (ja) ロボットシステムにおける物理的な物体の選択のための方法
JP7340203B2 (ja) 自動パッケージスキャンおよび登録メカニズムを備えたロボットシステム、ならびにその動作方法
US10569416B1 (en) Robotic system with enhanced scanning mechanism
US10839261B2 (en) Information processing apparatus, information processing method, and storage medium
JP6678911B1 (ja) 移送ロボットの操作方法、移送ロボットを操作するためのシステム、有形の非一時的なコンピュータ可読媒体
JP5869583B2 (ja) ロボットシステムにおける対象物体画像のフィルタ方法
DK2658691T3 (en) Method, computer program and apparatus for determining a seizure site
EP3587050A1 (en) Method and system to generate a 3d model for a robot scene
US20240131712A1 (en) Robotic system
US20230364787A1 (en) Automated handling systems and methods
Lin et al. Inference of 6-DOF robot grasps using point cloud data
WO2023166350A1 (en) Surveillance system and methods for automated warehouses

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140116

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140204

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140502

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140826

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20141104

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20141111

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20141216

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20141224

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150226

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150519

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150521

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150804

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150903

R150 Certificate of patent or registration of utility model

Ref document number: 5806301

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250