JP7204587B2 - 物体ハンドリング制御装置、物体ハンドリング装置、物体ハンドリング方法および物体ハンドリングプログラム - Google Patents

物体ハンドリング制御装置、物体ハンドリング装置、物体ハンドリング方法および物体ハンドリングプログラム Download PDF

Info

Publication number
JP7204587B2
JP7204587B2 JP2019112218A JP2019112218A JP7204587B2 JP 7204587 B2 JP7204587 B2 JP 7204587B2 JP 2019112218 A JP2019112218 A JP 2019112218A JP 2019112218 A JP2019112218 A JP 2019112218A JP 7204587 B2 JP7204587 B2 JP 7204587B2
Authority
JP
Japan
Prior art keywords
area
movement
control
hand
region
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
JP2019112218A
Other languages
English (en)
Other versions
JP2020203342A (ja
Inventor
佳史 岡
康徳 千葉
哲也 増田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Toshiba Infrastructure Systems and Solutions Corp
Original Assignee
Toshiba Corp
Toshiba Infrastructure Systems and Solutions Corp
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 Toshiba Corp, Toshiba Infrastructure Systems and Solutions Corp filed Critical Toshiba Corp
Priority to JP2019112218A priority Critical patent/JP7204587B2/ja
Priority to DE102020207368.6A priority patent/DE102020207368B4/de
Priority to US16/902,313 priority patent/US11559894B2/en
Publication of JP2020203342A publication Critical patent/JP2020203342A/ja
Application granted granted Critical
Publication of JP7204587B2 publication Critical patent/JP7204587B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/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
    • 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
    • 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/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1633Programme controls characterised by the control loop compliant, force, torque control, e.g. combined with position control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J15/00Gripping heads and other end effectors
    • B25J15/02Gripping heads and other end effectors servo-actuated
    • 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
    • B25J19/021Optical sensing devices
    • B25J19/022Optical sensing devices using lasers
    • 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
    • B25J19/04Viewing devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • 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/40517Constraint motion planning, variational dynamic programming
    • 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/40519Motion, trajectory planning

Description

本発明の実施形態は、物体ハンドリング制御装置、物体ハンドリング装置、物体ハンドリング方法および物体ハンドリングプログラムに関する。
従来、物流、製造現場等の自動化に向けて、ロボットアーム等を用いた物体ハンドリング装置の導入が進んでいる。物体ハンドリング装置は、ハンドにより把持した物体を移動元位置(例えば、コンベア上の位置や物体を収納した移動前容器等)から、移動先位置(例えば、所定の容器やパレット等)に移動(移載)する。この場合、物体ハンドリング装置は、把持した物体やハンドが周囲の障害物と干渉しないことが求められる。しかし、実際には把持した物体のサイズや把持位置、移動先の容器の壁部や既に移動済みの物体(以下、障害物という場合がある)等の計測誤差や、ハンドの動作精度などの影響により、干渉が発生してしまうことがある。そこで、ロボットハンドにエンドエフェクタからの反力を検出する力覚センサを備え、反力をもとにしたフィードバック制御(力制御)により、干渉した障害物から離れる方向へ動作する反発動作により、衝突でロボットが停止せずに動作し続けさせることができる技術が提案されている。
特開2014-65098号公報
しかしながら、力制御による反発動作を用いた場合であっても、障害物に対するハンドや把持した物体の衝突時の速度によっては、ハンドや把持した物体が破損してしまうことがある。この場合、移動経路全体または障害物に近い範囲内で、アーム(ハンド)の動作速度を遅くすることで衝突時の衝撃を低減する方法が考えられるが、移載動作に要する時間が長くなり、作業効率が低下するという問題がある。また、移動経路を計画する際にハンドや把持した物体および障害物のサイズを仮想的に大きく見積もり、障害物との距離を十分に確保する(マージンを拡大する)ことで衝突危険性を低減する方法が考えられるが、狭い隙間にハンドが入り込む必要がある場合や、把持した物体を密に配置したい場合に移動経路が計画できないという問題がある。
そこで、本発明の課題の一つは、ハンドやハンドが把持した物体の破損を招くよう障害物との干渉を回避し効率的に物体を移動させることのできる、物体ハンドリング制御装置、物体ハンドリング装置、物体ハンドリング方法および物体ハンドリングプログラムを提供することを目的の一つとする。
実施形態の物体ハンドリング制御装置は、例えば、情報取得部と、領域設定部と、経路算出部と、を備える。情報取得部は、物体を把持可能な把持部に把持された状態の物体に関する物体情報と、物体の移動元位置と物体の移動先位置に関する状態情報と、を少なくとも取得する。領域設定部は、物体を把持した把持部が移動元位置から移動先位置に移動する場合に、移動元位置と移動先位置との間の空間に存在する障害物に制限されることなく移動が許可される第1領域と、障害物の存在に基づいて移動が制限される第2領域と、少なくとも一部が第2領域の下方に設定され把持部に力制御として力制御動作を実行させる第3領域と、を物体情報と状態情報に応じて設定する。経路算出部は、第1領域と第2領域と第3領域とに基づき物体を移動元位置から移動先位置に移動させる移動経路を算出する。
図1は、本実施形態の物体ハンドリング装置を含む物体ハンドリングシステムを例示的かつ模式的に示す概略構成図である。 図2は、本実施形態の物体ハンドリング装置を含む物体ハンドリングシステムの構成を例示的かつ模式的に示す構成ブロック図である。 図3は、本実施形態の物体ハンドリング装置を含む物体ハンドリングシステムの動作全体の流れを例示的かつ模式的に示す動作フロー図である。 図4は、本実施形態の物体ハンドリング装置における物体の配置計画の入出力を説明する例示的かつ模式的な説明図である。 図5は、本実施形態の物体ハンドリング装置による物体の配置計画の例示的なフローチャートである。 図6は、本実施形態の物体ハンドリング装置により物体の移動(配置、詰め込み)を行う場合に移動先の容器の壁との間にある空間が狭い場合にも、物体を配置して充填率を向上させる例を示す模式図である。 図7は、空間が狭い場合、把持している物体と移動先の容器や移動済みの物体とが衝突する可能性がある場合を説明する例示的かつ模式的な説明図である。 図8は、本実施形態の物体ハンドリング装置による力制御によって、物体を移動先の容器の壁や既配置の物体に押し当てながら移動させる押当制御動作の例示的かつ模式的な説明図である。 図9は、本実施形態の物体ハンドリング装置による力制御によって、ハンドや物体が移動先の容器の壁や既配置の物体の側面と干渉した場合に実行される反発制御動作の例示的かつ模式的な説明図である。 図10は、本実施形態の物体ハンドリング装置において、移動先の容器の壁や既配置の物体の存在に基づいて、移動が制限される第2領域を設定して干渉を回避することを示す例示的かつ模式的な説明図である。 図11は、本実施形態の物体ハンドリング装置において、移動先の容器の壁や既配置の物体の存在に基づいて、第1領域、第2領域、第3領域を設定して干渉を回避しながら物体(およびハンド)の移動経路を生成することを示す例示的かつ模式的な説明図である。 図12は、本実施形態の物体ハンドリング装置において、第2領域の設定例を説明する模式的な上面図である。 図13は、本実施形態の物体ハンドリング装置において、第2領域の設定例を説明する模式的な側面図である。 図14は、本実施形態の物体ハンドリング装置において、第3領域における第1制御領域の設定例を説明する模式的な上面図である。 図15は、本実施形態の物体ハンドリング装置において、第3領域における第1制御領域の設定例を説明する模式的な側面図である。 図16は、本実施形態の物体ハンドリング装置において、第2領域を設定する場合に、ハンドが把持する物体のサイズを考慮する場合の物体の考慮値を説明する例示的かつ模式的な上面図である。 図17は、本実施形態の物体ハンドリング装置において、第2領域を設定する場合にハンドが把持する物体のサイズを考慮する場合の物体の考慮値を説明する例示的かつ模式的な側面図である。 図18は、本実施形態の物体ハンドリング装置において、ハンドが把持する物体のサイズを考慮した、第2領域の設定を説明する例示的かつ模式的な上面図である。 図19は、本実施形態の物体ハンドリング装置において、ハンドが把持する物体のサイズを考慮した、第2領域の設定を説明する例示的かつ模式的な側面図である。 図20は、本実施形態の物体ハンドリング装置において、第2領域を設定する場合に、ハンドのサイズを考慮する場合のバンドの考慮値を説明する例示的かつ模式的な上面図である。 図21は、本実施形態の物体ハンドリング装置において、第2領域を設定する場合に、ハンドのサイズを考慮する場合のバンドの考慮値を説明する例示的かつ模式的な側面図である。 図22は、本実施形態の物体ハンドリング装置において、ハンドのサイズを考慮して、第2領域の設定を説明する例示的かつ模式的な上面図である。 図23は、本実施形態の物体ハンドリング装置において、ハンドのサイズを考慮して、第2領域の設定を説明する例示的かつ模式的な側面図である。 図24は、本実施形態の物体ハンドリング装置において、各領域の設定と移動経路を示す例示的かつ模式的な説明図である。 図25は、本実施形態の物体ハンドリング装置において、各領域の他の設定と他の移動経路を示す例示的かつ模式的な説明である。 図26は、本実施形態の物体ハンドリング装置において、第2領域を設定した場合の干渉チェック高さを示す例示的かつ模式的な説明図である。 図27は、本実施形態の物体ハンドリング装置において、移動経路を生成する場合の初回の経由点の位置の生成例を示す模式的な説明図である。 図28は、本実施形態の物体ハンドリング装置において、第2領域の通過を回避するハンドの位置を算出することを示す例示的かつ模式的な説明図である。 図29は、本実施形態の物体ハンドリング装置において、第2領域の通過を回避する経由点の生成を示す例示的かつ模式的な説明図である。 図30は、図29の経由点に続き、第2領域の通過を回避する次の経由点の生成を示す例示的かつ模式的な説明図である。 図31は、図30の経由点に続き、第2領域の通過を回避する次の経由点の生成を示す例示的かつ模式的な説明図である。 図32は、本実施形態の物体ハンドリング装置において、第2領域の通過を回避できない場合を示す例示的かつ模式的な説明図である。 図33は、図32の場合に、押当制御動作を行うことにより移動経路を例外的に生成することを示す例示的かつ模式的な説明図である。 図34は、図33の押当制御動作を実行する場合、押当方向を決定するための例示的なフローチャートである。 図35は、本実施形態の物体ハンドリング装置において、押当制御動作による押当面と押当位置の生成例を示す模式的な説明図である。 図36は、本実施形態の物体ハンドリング装置において、物体(ハンド)の移動経路の経由点の生成を説明する例示的なフローチャートである。 図37は、図36の移動経路の経由点の生成において、経由点の位置を説明する例示的かつ模式的な説明図である。
以下、実施形態を図面に基づいて説明する。以下に記載する実施形態の構成、ならびに当該構成によってもたらされる作用および結果(効果)は、あくまで一例であって、以下の記載内容に限られるものではない。
[システム全体構成]
図1は、物体ハンドリング装置を含む物体ハンドリングシステム1の概略構成図である。物体ハンドリングシステム1は、制御装置10、マニピュレータ20(ロボットアーム)、センサ30及び筐体40を備えている。物体ハンドリングシステム1は、移動対象の物体OBJを移動元位置HPで把持して移動(搬送)し、移動先位置RPで解放する。このような動作は、移動対象の物体OBJのピッキング(移載、搬送)と呼ばれている。なお、制御装置10のうち、マニピュレータ20を制御する後述するロボット制御部57(移動制御部)以外の構成を物体ハンドリング制御装置として別体に構成してもよい。
マニピュレータ20は、アーム21と、ハンド22(エンドエフェクタ、把持部)と、を備えている。アーム21は、例えば、複数(例えば6個)のサーボモータで回転駆動される回転部21a~21fを有した多関節ロボットとして構成されている。また、マニピュレータ20は、ハンド22を交換可能に構成されてもよい。その場合、ハンド22の交換には、図示しないツールチェンジャーのような機構が用いられてもよい。アーム21は、多関節ロボットには限定されず、スカラロボットあるいは直動ロボットであってもよい。また、アーム21は、多関節ロボット、スカラロボット、および直動ロボットのうち少なくとも二つの組み合わせであってもよい。
ハンド22は、図1の例においては、移動対象の物体OBJを把持するための、例えば吸着機構としての吸着パッド22aを有しており、図示しない圧力センサが設けられている。また、吸着パッド22aの数、配置、形状、大きさのようなスペックは、種々に変更することができる。
また、移動対象の物体OBJの把持機構としては、吸着機構に限定されず、例えば、ジャミング機構、挟み込み機構、または多指機構を有してもよい。また、ハンド22は、吸着機構、ジャミング機構、挟み込み機構あるいは多指機構のうち、少なくとも二つを有してもよい。
ハンド22は、屈曲部22bを有している。なお、ハンド22は、屈曲部22b以外にも、例えば、回転部や伸縮部のような可動部を有することができる。
また、ハンド22は、センサ30として、6軸(並進力3軸、モーメント3軸)の力覚センサ31を有している。力覚センサ31の位置は、図示の位置には限定されない。また、ハンド22は、力覚センサ31以外の各種センサを有してもよい。後述するが、本実施形態では、隙間なく物体OBJを所定の空間に詰め込むために、物体OBJの配置時には力覚センサ31の検出値をフィードバックして、力制御によって物体OBJを移動先の障害物に押し当る動作が可能である。この物体OBJを移動先の障害物に押し当る動作による力制御を押当制御と称する。このほか、本実施形態では、力覚センサ31の検出値に基づき、力制御によってハンド22や物体OBJと障害物との干渉が発生した場合に、干渉した障害物から離れる方向へハンド22および物体OBJを移動させる動作が可能である。この干渉した障害物から離れる方向へ物体OBJを移動させる動作による力制御を反発制御と称する。
センサ30は、力覚センサ31の他、回転部21a~21fに設けられるモータのトルクセンサ、回転センサあるいは電流センサであってもよい。この場合において、制御装置10は、ハンド22に作用する力を、力覚センサ31の検出値から得てもよいし、各モータの電流値や回転値(回転センサの検出値)から算出してもよい。
また、物体ハンドリングシステム1は、センサ30として、複数のカメラ32a,32b、複数の測域センサ33a,33b等を備えている。カメラ32a,32bは、例えば、RGB画像カメラである。また、測域センサ33a,33bは、光をスキャニングしながら物体OBJまでの距離を測定する二次元走査型の光距離センサであり、LRF(Laser rangefinder)、LIDAR(Light Detection and Ranging)などの呼ぶ場合もある。
移動元用のカメラ32aは、把持(搬出)する移動対象の物体OBJが存在している移動元位置HPにおいて、上方から移動対象の物体OBJおよびその周辺領域を撮影し、物体OBJに関する物体情報(例えば、形状やサイズ等)や状態情報(例えば、静止状態の姿勢等)を取得する。移動元位置HPにおいて、移動対象の物体OBJは、例えばコンテナやパレットのような移動元用の容器14a内に収容されている。その場合、移動元用のカメラ32aは、容器14a内の一部または全部を撮影する。移動元位置HPは、移動対象の物体OBJの移動開始位置や出発位置とも称することができる。なお、図1においては、容器14aは、ベルトコンベアのような搬送機構上に載置されているが、これに限定されるものではない。
移動先用のカメラ32bは、移動対象の物体OBJを解放(配置、搬入)する移動先位置RPにおいて、当該移動先位置RPおよびその周辺領域を撮影し、物体OBJに関する物体情報(例えば、既配置の物体の形状、サイズ等)や状態情報(例えば、既配置の物体の姿勢等)を取得する。移動先位置RPにおいて、配置対象の物体OBJは、例えばコンテナやパレットのような解放用の容器14b内に収容される。その場合、移動先用のカメラ32bは、容器14b内の一部または全部を撮影する。移動先位置RPは、移動対象の物体OBJの移動終了位置や到着位置とも称することができる。なお、図1では、容器14bは、ベルトコンベアのような搬送機構上に載置されているが、これに限定されるものではない。
測域センサ33a,33bは、ハンド22により把持された物体OBJがアーム21の駆動により移動元位置HPから移動先位置RPに移動する間に、物体OBJのサイズ(カメラ32a等で取得しきれない面のサイズ等を含む)等の物体情報やハンド22による物体OBJの把持姿勢等の状態情報を取得する。カメラ32a,32b、測域センサ33a,33b等で取得した物体情報は、移動先位置RPで、物体OBJを「密」の状態で容器14bに詰め込む際の位置制御等に用いることができる。
筐体40内には、例えば、モータのような電動アクチュエータを駆動させるための電源装置、流体アクチュエータを駆動させるためのボンベ、タンク、およびコンプレッサー、各種安全機構など、物体ハンドリングシステム1の種々の部品や機器類が収容されうる。なお、筐体40内に、制御装置10が収容されるようにすることも可能である。
[制御装置]
図2は、本実施形態の物体ハンドリング装置を含む物体ハンドリングシステム1を例示的かつ模式的に示す構成ブロック図であり、主として、制御装置10の概要構成が示されている。制御装置10は、例えば、統合部51、画像処理部52、信号処理部53、把持計画生成部54、領域設定部55、経路算出部56、ロボット制御部57(移動制御部)、周辺機器・I/O制御部58(I/O:インプットアウトプット)、学習制御部59、エラー検出部60および内部DB61を有している。
統合部51は、外部I/F71(I/F:インタフェース)からのユーザ入力情報や、物体ハンドリングシステム1の状態、センサ30による検出値等に基づいて、物体ハンドリングシステム1の作業計画の生成や、運用、管理を実行する。
画像処理部52は、センサ30としてのカメラ32a,32bから得られた画像を処理し、動作計画や、動作制御、エラー検出、学習等に必要な情報を生成する。
信号処理部53は、センサとしての測域センサ33a,33b等から得られた情報(検出値)を処理し、動作計画や、動作制御、エラー検出、等に必要な情報を生成する。なお、画像処理部52や信号処理部53は、情報取得部の一例である。
把持計画生成部54は、移動元位置HPにおける移動対象の物体OBJの把持方法や、把持姿勢、移動元位置HPにマニピュレータ20(ハンド22)を移動させるための移動経路や経由点等を算出する処理を実行する。また、移動先位置RPで物体OBJを解放した後のハンド22が、次の移動対象の物体OBJを把持しに行くための帰路の移動経路や経由点等を算出する処理を実行する。なお、これらの場合の移動経路は、周囲の障害物(例えば、容器14a,14bの壁面や今回移動対象となる物体OBJ以外の物体等)に干渉することなくハンド22を移動させるように移動経路および経由点を算出するために、カメラ32aで取得した物体情報等が利用される。
領域設定部55は、物体OBJを把持したハンド22が移動元位置HPから移動先位置RPに移動する場合に、移動元位置HPから移動先位置RPとの間の空間で、カメラ32a,32bや測域センサ33a,33bで取得した物体情報や状態情報に基づいて、領域設定を実行する。領域設定部55は、例えば、第1領域、第2領域、第3領域等を設定する。第1領域は、移動元位置HPと移動先位置RPとの間の空間に存在する障害物(容器14a,14bや既配置の物体)に制限されることなく移動が許可される領域である。第2領域は、障害物の存在に基づいて移動が制限される領域である。また、第3領域は、少なくとも一部が第2領域の下方に設定され、ハンド22に力制御として力制御動作を実行させる領域である。第1領域は、例えばハンド22を高速で移動させることができる領域である。また、第2領域は、ハンド22の通過を制限(禁止)する領域である。第3領域は、力覚センサ31による検出を実行し、物体OBJやハンド22に干渉が発生した場合に反発制御動作により移動経路を修正できる領域である。さらに第3領域において、例えば、ハンド22(物体OBJ)の移動速度を低下させたり、力覚センサ31による検出精度を一時的に向上させたりしてもよい。
上述した力制御は、押当制御と反発制御を含む。第3領域の一部を力制御のうち押当制御動作を行なう領域に設定し、他の部分を力制御のうち反発制御動作を行なう領域に設定することもできる。この場合、第3領域のうち押当制御動作を行なう領域を、原則的に第2領域のようにハンド22の通過を制限(禁止)し、例外的に押当制御動作を行なう場合に物体OBJおよびハンド22の通過を可能とする領域として設定してもよい。
経路算出部56は、第1領域と第2領域と第3領域とに基づき、物体OBJを移動元位置HPから移動先位置RPに移動させる移動経路を算出する。例えば、ハンド22が、物体OBJを把持した移動元位置HPから移動先位置RPにスムーズに移動できるように、動作方法や、動作速度を含めた移動経路の算出を実行する。第1領域、第2領域、第3領域を設定し、移動経路にしたがって移動するハンド22の挙動を、各領域で切り替えることで、物体OBJをより高速で、かつ障害物と干渉するリスクを低減した状態で、効率的に移動(搬送)させることができる。第1領域、第2領域、第3領域の設定およびそれに関連するハンド22(物体OBJ)の動作の詳細は後述する。
ロボット制御部57は、移動経路にしたがい物体OBJを把持したハンド22を移動させるように、ハンド22を含むマニピュレータ20の動作速度、動作方向、動作姿勢等を制御する。
周辺機器・I/O制御部58は、各種搬送機器の制御や、安全ドアなどの周辺機器70の制御、各種センサ情報の取得、照明の制御等のための、インプットアウトプット(I/O)制御を実行する。
学習制御部59は、マニピュレータ20の振動抑制など動作精度向上のためのロボットモデル学習や、物体OBJの把持性能向上のための把持制御パラメータ学習、把持データベース学習、作業計画の実施性能を向上するためのエラー検知学習等の学習機能を制御する。本実施形態では、状況に応じて、後に述べる力制御において、パラメータの最適な値を選択する。これらの値は人間が経験値から設定してもよいが、機械学習の結果を適用することで、より省力化しながら、より効率の高い処理を実現することができる。
エラー検出部60は、物体ハンドリングシステム1の状態、作業計画の実施状態、駆動制御状態、移動対象の物体OBJの把持、移動(搬送)の状態等を観測し、エラーを検知する。このエラー検知は、例えば、力覚センサ31の出力をハンド22の手先座標に変換した値、それらの値をローパスフィルタに通したものを観測し、既定の値を超えたらエラーと判断することで実現できる。この結果、処理中の作業を中断し、その後のリカバリ動作に移るなどの処理が可能となる。
内部データベース(DB)61は、例えば、いずれも図示しないロボットデータベース、ハンドデータベース、物品データベース、把持データベースおよび環境データベースを含んでいる。
ロボットデータベース(ロボットDB)には、例えば、物体ハンドリングシステム1の構造、各部の寸法や重量、慣性モーメント、各駆動部の動作範囲や速度、およびトルク性能が、保存されている。
ハンドデータベース(ハンドDB)には、例えば、ハンド22の機能、およびハンド22の把持の特性に関する情報が、保存されている。
物品データベース(物品DB)には、例えば、移動対象の物体OBJの名称、識別番号、カテゴリ、全面の画像情報、CADモデル情報、重量情報、および把持時の特性情報(柔らかい、壊れやすい、形が変わる等)が、保存されている。なお、本実施形態では、移動対象の物体OBJは、多種多様な形状、サイズを有し、混在した状態で、移動元位置HPに導入される。そして、移動先位置RPにおいて、混在した状態でありながら、「密」に配置することで、一度に容器14bに収まる物体OBJの量を増加し、物流効率を向上させる。
把持データベース(把持DB)には、例えば、移動対象の物体OBJについて、ハンド22の把持方法ごとに、把持可能位置、把持可能姿勢、把持のしやすさなどのスコア情報、把持時の押込可能量、把持判定のための判定閾値、およびエラー検知のための判定閾値が、保存されている。ここで、把持方法は、例えば、吸着方式、並行2指方式、平行4指方式、または多関節方式等がある。
環境データベース(環境DB)には、例えば、物体ハンドリングシステム1が対応している作業台情報、および物体ハンドリングシステム1の動作範囲や周囲の障害物を示すような周囲環境情報が、保存されている。
また、外部I/F71は、統合部51(制御装置10)と外部機器(不図示)との間のデータの送信および受信を実行する。
[物体ハンドリングシステム(物体ハンドリング装置)の制御動作の概略]
物体ハンドリングシステム1は、外部I/F71を介して提供される上位システムからの全物体OBJの移動作業計画等にしたがって動作する。
物体ハンドリングシステム1の全体の動作フローを図3に示す。物体ハンドリングシステム1(物体ハンドリング装置)の動作は大きくわけて計画系動作、認識系動作、ロボットアーム動作(移動)、吸着パッド動作(把持)に分けられる。
まず、統合部51は、計画系の動作として、上位のシステムによって指示される移動作業計画を参照してオーダチェックを行う。この場合、カメラ32aによって移動元位置HPにおける容器14a内の物体OBJの認識、およびカメラ32bによって移動先位置RPにおける容器14b内の既配置の物体の認識を行うことで、物体情報や状態情報の取得を行う。そして、把持計画生成部54が、把持計画(複数の物体OBJの把持の順序等)を生成する。また、物体OBJを把持しに行くための移動経路(把持経路)の計画を生成する。続いて、ロボットアーム動作として、ロボット制御部57は生成された把持経路にしたがい、ハンド22を把持待機位置(ホームポジション)から移動元位置HPに移動させる。そして、ロボット制御部57は、把持位置において吸着パッド動作として、ハンド22(吸着パッド22a)により、移動対象の物体OBJの把持動作を実行する。ロボット制御部57は、物体OBJを把持した状態のハンド22を、移動待機位置(例えば、測域センサ33a,33bの測定領域)に移動させ、その移動中に認識系の動作として、測域センサ33a,33b(例えば、LRF)による姿勢推定(物体OBJの姿勢や大きさ、把持姿勢等の推定)を実行する。
そして、計画系の動作として、領域設定部55は、認識系で取得した物体情報や状態情報に基づいて、第1領域、第2領域、第3領域の設定を行い、経路算出部56は、物体OBJの配置計画として、物体OBJを把持した状態のハンド22の移動経路計画を生成する。
続いて、ロボットアーム動作として、ロボット制御部57は、移動待機位置で待機する物体OBJを把持した状態のハンド22を移動経路にしたがい、移動先位置RPに移動させる。そして、ロボット制御部57は、吸着パッド動作として、移動先位置RPで吸着パッド22aの把持解放動作を実行し、物体OBJを所定の移動先位置RPに配置する。その後、ロボット制御部57は、物体OBJを解放したハンド22を把持待機位置に復帰させて、一連の物体OBJの移動(移載、配置)動作を一旦完了し、次の物体OBJの移動処理を繰り返し実行する。
[物体の配置計画の概要]
図4は、物体ハンドリングシステム1(物体ハンドリング装置)における物体OBJの移動(配置)計画の入出力を説明する例示的かつ模式的な説明図である。また、図5は、物体OBJの配置計画の例示的なフローチャートである。
経路算出部56は、配置計画を作成する場合、例えば、カメラ32aや測域センサ33a、33b等により、現在ハンド22(吸着パッド22a)で把持され、これから移動して行き移動先位置RP(容器14b)に配置する物体OBJのサイズや物体OBJの把持姿勢等を入力情報として取得する(S100)。続いて、経路算出部56は、物体OBJを容器14bに配置した場合の物体OBJの姿勢を、ハンド22が現在把持している物体OBJの把持姿勢やサイズ等に基づいて計算する(S102)。また、経路算出部56は、容器14b内に既に置かれている既配置の物体OBJsの状態情報等に基づき、把持した物体OBJを配置可能な位置およびそのときの物体OBJの姿勢(以下、位置および姿勢をまとめて「位置姿勢」と表現する場合がある)、つまり、移動先位置RPの候補を計算する(S104)。また、経路算出部56は、容器14b内に既に置かれている既配置の物体OBJsの情報等に基づき、物体OBJの配置時のハンド22の手先位置TCPの位置姿勢の候補を複数パターン計算し(S106)、その中から最適な位置姿勢の候補を選択する(S108)。また、経路算出部56は、移動(配置)時にマニピュレータ20(ハンド22)が実施する力制御のための情報(力目標値、押当面の位置、押当方向等)を決定する(S110)。経路算出部56は、物体OBJのサイズ、把持姿勢、既配置の物体OBJsの状態、物体OBJを配置したときの手先位置TCPの位置姿勢等に基づき、物体OBJを移動させるために移動経路を構成する経由点(経由位置姿勢RAP)を計算する(S112)。なお、候補として計算される移動先位置RPおよび経由位置姿勢RAPには、スコア(予め定められた優先度等)が付随し、そのスコアに基づき最適な移動先位置RPおよび経由位置姿勢RAPが選択される。なお、経路算出部56において、既配置の物体OBJsや容器14b等の障害物との干渉がない移動経路の生成に成功した場合、ロボット制御部57は、マニピュレータ20を動作させる。
なお、本実施形態において、物体OBJやハンド22の位置姿勢を表現する場合は、4行4列の同次変換行列Tを用いる。この場合、変換前の座標系を表す記号を左上に付し、変換後の座標系を表す記号を右下に添え字として付する。また、姿勢のみを表現する場合は3行3列の回転行列Rを用い、位置のみを表現する場合は3行1列の並進ベクトルtを用いる。例えば、ワールド座標系(記号W)で表された移動先位置RPの座標系の位置姿勢RPは、以下の(式1)で表される。
Figure 0007204587000001
座標変換においては、以下の(式2)が成り立つ。ただし、式中のS,U,Vは任意の座標系を表す。
Figure 0007204587000002
また、(式3)に示すように、行列Aに対し、i行j列目の要素を抽出する操作をA(i,j)と表す。また、i行目の行ベクトル、j列目の列ベクトルを抽出する操作をそれぞれA(i,:)、A(:、j)と表す。
Figure 0007204587000003
同様に、(式4)に示すように、ベクトルuに対しても、i番目の要素を抽出する操作をu(i)と表す。
Figure 0007204587000004
また、本実施形態において、直方体形状の領域を表現する場合、(式5)で示すように、物体の座標系やサイズと同様に、図心の位置の座標系はArea、サイズは、ベクトルAreaで表現する。
Figure 0007204587000005
ところで、物体ハンドリングシステム1(物体ハンドリング装置)においては、可能な限り多くの物体OBJを移動先の容器14bに移動して配置することが求められる。つまり、充填率を向上することが求められる。充填率を向上することで、出荷する場合に容器14bの数を減らすことができ、結果として運搬コストの削減に寄与できる。そこで、図6に示すように、既配置の物体OBJsや移動先の容器14bの壁との間にある空間Sが狭い場合にも、物体OBJを配置できるようにすることで、充填率の向上が見込める。しかし、空間Sが狭い場合には、図7に示すように、ハンド22が把持している物体OBJと移動先の容器14bに既に配置されている物体OBJsとが衝突する危険性が高くなる。特に、測域センサ33a,33bによる測定結果や、カメラ32b等の三次元センサによる移動先の容器14b内の既配置の物体OBJsの測定結果の誤差が大きい場合、配置しようとする物体OBJを例えば移動経路Rで移動させると衝突する危険性が高くなる。物体OBJが障害物と衝突した場合、物体OBJ自体の破損やハンド22やマニピュレータ20の破損の原因になることがある。
このような衝突を避けるためには、例えば、配置位置や移動経路を計算する際に物体OBJのサイズを実サイズより大きくするなどマージンを設定する方法が考えられるが、一律に大きなマージンを設定すると、容器14bの狭い空間に物体OBJを配置する計画自体が生成(立案)できない場合がある。
そこで、本実施形態では、狭い空間を有効に利用するために、力制御による押当制御動作と反発制御動作を利用する。図1で示したように、物体ハンドリングシステム1のハンド22には6軸の力覚センサ31が搭載されている。したがって、図8に示すように、物体OBJを移動経路Rに沿って移動させる過程で、移動先の容器14bの壁14Wや他の既配置の物体OBJsに力制御によって矢印A方向に押し当てながら配置することが可能になる。つまり、押当制御(押当動作)により物体間の隙間を小さくして充填率を向上することができる。また、図9に示すように、物体OBJを移動経路Rに沿って移動させる過程で、力制御を用いることで、ハンド22や物体OBJが移動先の容器14bの壁14Wや既配置の物体OBJsの側面と干渉した場合に、それらと逆方向の矢印B方向に動くように制御する(反発動作)ことも可能である。以下に示す本実施形態では、上述したような力制御動作を利用することで、仮に配置計画や経路計画を立案する際に用いた測定値の測定誤差が大きくなった場合でもその誤差を吸収し、狭い空間に物体OBJを配置する移動経路を計画することができる。
本実施形態の物体ハンドリングシステム1は、移動経路を効率的に算出するために、物体OBJを移動および配置する際に、障害物(容器14bの壁14Wや既配置の物体OBJs等)と干渉の可能性がある方向を鉛直方向と水平方向に分類する。鉛直方向の干渉とは、図10において、物体OBJを矢印R方向に移動させた場合、物体OBJの底面と既配置の物体OBJsの上面または移動先の容器14bの上端縁との干渉を意味する(図10の上段参照)。一方、水平方向の干渉とは、物体OBJを矢印R方向に移動させた場合、物体OBJの側面と、既配置の物体OBJsの側面または移動先の容器14bの壁14W(内壁)との干渉である(図11の上段参照)。物体ハンドリングシステム1の場合、ハンド22は移動(配置)動作において、把持している物体OBJを上方から下方に下ろす動作が基本になるため、鉛直方向の干渉とは物体OBJの衝突であり、把持した物体OBJや既配置の物体OBJsを損傷する可能性が高い。一方で水平方向の干渉は、接触面同士の摺動になるので、物体OBJ,OBJsを損傷する可能性はひくい。したがって、上述した反発動作を利用すれば仮に干渉があった場合でも移動(配置)動作を継続できる可能性が高くなる。
そこで、本実施形態の物体ハンドリングシステム1の領域設定部55は、物体OBJを把持したハンド22が移動元位置HPから移動先位置RPに移動する場合に、移動元位置HPと移動先位置RPとの間の空間を、第1領域、第2領域、第3領域に分類し、通過態様をそれぞれ異ならせている。
第1領域は、移動元位置HPと移動先位置RPとの間の空間に存在する障害物(容器14bの壁14Wや既配置の物体OBJs等)に制限されることなく移動が許可される領域である。
第2領域は、障害物の存在に基づいて移動が制限される領域で、例えば、ハンド22が少なくとも障害物の上方向から下方向への移動成分をもって進入または移動することが制限される領域であり、干渉を回避するために、移動経路計画においてハンド22の手先位置TCPが上方向から下方向への移動成分を持った動作を行う間に通過してはいけない領域である。また、第2領域における移動の制限に、下方向から上方向への移動成分を持つ移動や側方向の移動成分を持つ移動も含め、第2領域をハンド22や物体OBJの進入または移動を禁止する禁止領域として設定してもよい。
第3領域は、少なくともその一部が第2領域の下方(下側)に例えば隣接して設定される領域であり、例えば、第1制御領域と、第2制御領域を備える。第3領域は、ハンド22に後述する力制御動作を実行させる領域である。第3領域を第2領域の下側に設定するにあたり、第2領域と第3領域の間に少なくとも一部第1領域を挟んで設定してもよい。
第3領域のうちの第1制御領域は、第2領域の下側で障害物に沿って設定される領域であり、第2領域より障害物に対する制限幅(マージン)が少ない(すなわち第2領域より側方向の幅が小さい)領域である。第1制御領域は、その側方向の全体が第2領域の下側に隣接して位置するように設定され、この第1制御領域にハンド22が進入する場合、障害物に対する側方向の移動成分をって進入することとなる。換言すれば、第1制御領域は第2領域の下側に設定されることにより、第2領域の上方から第1制御領域内に物体OBJやハンド22が接近することはない。また、第1制御領域の内部に物体OBJやハンド22が進入する場合は側方向の移動成分を持った接近に限られる。第1制御領域は第2領域の下側で障害物に側方向に隣接する領域であり、ハンド22に対して力制御動作のうち特に押当制御動作を実行させる領域である。第1制御領域については、原則的に第2領域100と同様に、例えば上方向から下方向への移動成分を持つ移動などの、移動や進入が禁止される領域としてもよい。この場合、この第1制御領域については、この原則に基づいて移動や進入を禁止すると経路生成が困難である場合や生成された経路が非効率である場合に例外的に押当制御動作を行なうことを条件として移動や進入を許されるように設定してもよい。
第3領域のうちの第2制御領域は、第1制御領域の障害物とは反対側の側方に隣接する領域であり、第1制御領域への進入経路となる領域である。第2制御領域のうち、少なくとも第1制御領域の側の部分は、第2領域の下側(下方)に位置しており、好ましくは、側方向において第2制御領域の全体が第2領域の下側(下方)に位置する。第2制御領域は、力制御動作のうち特に反発制御動作によってハンド22が制御される領域である。すなわち第2制御領域では、ハンド22が把持する物体OBJの実際の大きさが異なることなどによって障害物との干渉が発生した場合に、干渉した障害物から離れる方向へハンド22を反発動作させる。
また、第2制御領域では、第1制御領域内で上述の押当制御動作の実行を許容するため、少なくともハンド22の挙動を制限してもよい。この場合に第2制御領域内で行なうハンド22の挙動の制限とは、例えば、ハンド22の移動速度であり、第2制御領域では、第1領域通過時の速度より遅い速度とし、力制御動作のうちの押当制御動作への切り替えを適切なタイミングで(すなわち、第1制御領域への進入時に)実行できるようにしている。なお、第3領域については、押当制御動作を行なう第1制御領域を設定せずに、その全体を反発制御動作が実行される第2制御領域として設定してもよい。
領域設定部55は、第1領域、第2領域、第3領域(第1制御領域および第2制御領域)をカメラ32a,32bや測域センサ33a,33b等が取得した物体情報や状態情報に応じて設定する。なお、領域設定部55は、第2領域および第3領域が重なる領域(重複領域)がある場合は、第3領域を優先してこの重複領域を第3領域として取り扱うように構成されている。特に、第3領域のうちの第1制御領域が第2領域と重複する重複領域がある場合、領域設定部55は、第1制御領域を優先してこの重複領域を第1制御領域として取り扱うように構成される。
例えば、図10の上段に示すように、物体OBJが容器14bの壁14Wに沿った既配置の物体OBJsの上方から接近する場合、図10の下段に示すように、既配置の物体OBJsの上面の位置付近に第2領域100を設定する。ハンド22が把持した物体OBJは、第2領域100を通過しないように移動経路Rで移動することにより、物体OBJsとの衝突を確実に回避することができる。図11の下段は、第3領域102を第1制御領域102aと第2制御領域102bに分けて設定した例である。この場合、ハンド22が把持した物体OBJは、第2領域100および第1制御領域102aを通過しないように移動経路Rで移動することにより、物体OBJsとの衝突を確実に回避することができる。なお、図11の下段の場合、移動経路Rに沿って移動する際に、物体OBJは、X方向に移動する場合(上方から下方の移動成分を持つ接近ではない場合)に第2領域100に進入している例である。また、図11の下段では、第2領域100の下方に隣接する状態で、第1制御領域102aおよび第2制御領域102bからなる第3領域102が設定され、第2領域100および第3領域102以外の領域が第1領域104として設定されている例である。第1領域104については後述する。
図12~図23を用いて、第2領域100および第3領域102のうちの第1制御領域102aの設定の詳細を説明する。
まず、把持した物体OBJのサイズやハンド22のサイズを考慮せずに、鉛直方向の干渉を回避するための手先位置TCPの通過制限領域、すなわち、第2領域100の設定例を図12、図13を用いて説明する。つまり、把持した物体OBJやハンド22のサイズが限りなく「0」に近いと仮定して手先位置TCPの通過制限領域を設定する。鉛直方向に干渉する可能性(危険性)がある箇所は、容器14bおよび既配置の物体OBJsを上面視した図12において、容器14bの壁14Wに関して楕円C1で囲んだ部分と、物体OBJsに関して楕円C2で囲んだ部分である。この場合、ハンド22が把持する物体OBJの底面と、壁14Wの上端部との干渉を回避するための第2領域100は、壁14Wの内側で所定の第1マージン設定値δx(X方向)、第1マージン設定値δy(Y方向)を取った領域(第2領域100t)が、壁14Wに沿って設定される。同様に、物体OBJsの上面には、第2領域100として、物体OBJsの上面縁部から所定の第1マージン設定値δx(X方向)、第1マージン設定値δy(Y方向)を取った領域(第2領域100d)が、物体OBJsの周囲を覆うように設定される。また、図13は、図12の容器14bおよび物体OBJsを側面視した場合の、壁14Wに関する楕円C1の位置、物体OBJsに関する楕円C2の位置、および壁14Wの上部に設定される第2領域100tおよび物体OBJsの上面に設定される第2領域100dの位置が示されている。図13に示すように、第2領域100tおよび第2領域100dには、高さ方向(Z方向)に、所定の第1マージン設定値δzが設定されている。なお、所定の第1マージン設定値δx、第1マージン設定値δy、第1マージン設定値δzは、予め試験等により決定される。
具体的に、既配置の物体OBJsの位置姿勢をTOTEObstacle,i(i=1,…,n:nは物体OBJsの数)、サイズをTOTEObstacle,iとする。この場合、各既配置の物体OBJsに対応する鉛直方向の干渉回避のための手先位置TCPの通過制限領域の位置姿勢TOTEKeepoutZ,iおよびサイズTOTEKeepoutZ,iは以下の(式6)、(式7)で算出される。
Figure 0007204587000006
Figure 0007204587000007
続いて、把持した物体OBJのサイズやハンド22のサイズを考慮せずに、水平方向の干渉を回避するための手先位置TCPの通過制限領域、すなわち、第3領域102のうち第1制御領域102aを設定する例を図14、図15を用いて説明する。水平方向に干渉する可能性(危険性)がある箇所は、容器14bおよび既配置の物体OBJsを上面視した図14において、容器14bの壁14Wに関して楕円C3で囲んだ部分と、物体OBJsに関して楕円C4で囲んだ部分である。この場合、ハンド22が把持する物体OBJの側面と、壁14Wの内側面との干渉を回避するための第1制御領域102aは、壁14Wの内側で所定の第2マージン設定値εx(X方向)、第2マージン設定値εy(Y方向)を取った領域(第1制御領域102aw0)が、壁14Wに沿って設定される。同様に、物体OBJsの外側面には、第1制御領域102aとして、物体OBJsの外側面から所定の第2マージン設定値εx(X方向)、第2マージン設定値εy(Y方向)を取った領域(第1制御領域102aow0)が、物体OBJsのその側面を覆うように設定される。また、図15は、図14の容器14bおよび物体OBJsを側面視した場合の、壁14Wに関する楕円C3の位置、物体OBJsに関する楕円C4の位置、および壁14Wの内側面に設定される第1制御領域102aw0および物体OBJsの外側面に設定される第1制御領域102aow0の位置が示されている。なお、所定の第2マージン設定値εx、第2マージン設定値εy、第2マージン設定値εzは、予め試験等により第1マージン設定値δx、第1マージン設定値δy、第1マージン設定値δzより制限幅(マージン幅)が少なく設定されている。
具体的に、既配置の物体OBJsの位置姿勢をTOTEObstacle,i(i=1,…,n:nは物体OBJsの数)、サイズをTOTEObstacle,iとする。この場合、各既配置の物体OBJsに対応する水平方向の干渉回避のための手先位置TCPの通過制限領域の位置姿勢TOTEKeepoutXY,i,jおよび、サイズTOTEKeepoutXY,i,jは以下の(式8)、(式9)で算出される。なお、j=1,2,3,4であり、jの値は±X方向、±Y方向に対応する。
Figure 0007204587000008
Figure 0007204587000009
なお、前述したように、物体OBJが鉛直方向から接近する場合の干渉の可能性(危険性)に比べて、水平方向から接近する場合の干渉の可能性(危険性)は、少ないとみなせる。したがって、各マージン設定値は、δ>ε、δ>ε、δ>εとすることができる。
続いて、把持した物体OBJのサイズやハンド22のサイズを考慮せずに設定した第2領域100に対して、把持した物体OBJの位置とサイズを考慮した第2領域100を算出する。
まず、図16に示すように、物体OBJを把持しているハンド22の手先位置TCPから物体OBJのX方向、Y方向のそれぞれの端面までの距離(考慮値)を、ΔxItem-、ΔxItem+、ΔyItem-、ΔyItem+とする。また、図17に示すように、ハンド22の手先位置TCPから物体OBJの底面までのZ方向の距離(考慮値)をTOTESZItemとする。
ここで、鉛直方向の干渉では把持した物体OBJの底面との干渉が問題になる。一方、水平方向の干渉においては、物体OBJの底面が干渉しなければ、側面には干渉しないと見なせる。つまり、物体OBJの底面の位置とサイズのみを考慮して第2領域100を設定すればよいことになる。したがって、把持した物体OBJを考慮した第2領域100は、上面視では図18のように、把持した物体OBJのサイズやハンド22のサイズを考慮せずに設定した第2領域100dに対して、X方向にΔxItem-、ΔxItem+、Y方向にΔyItem-、ΔyItem+だけマージンを広げることで、物体OBJの位置とサイズを考慮したXY方向の第2領域100dが算出できる。同様に、把持した物体OBJを考慮した第2領域100は、側面視では図19のように、把持した物体OBJのサイズやハンド22のサイズを考慮せずに設定した第2領域100dに対して、上方にTOTESZItemだけマージンを広げることで、物体OBJの位置とサイズを考慮したZ方向の第2領域100dが算出できる。
上述した(式6)~(式9)を用いて設定した手先位置TCPが通過できない第2領域100の位置姿勢をTOTEKeepout,i(i=1,…,n:nは物体OBJsの数)、サイズをTOTEKeepout,iとする。この場合、把持した物体OBJを考慮した、手先位置TCPが通過できない第2領域100の位置姿勢TOTEKeepoutItem,iおよび、サイズTOTEKeepoutItem,iは以下の(式10)、(式11)で算出される。
Figure 0007204587000010
Figure 0007204587000011
ただし、X方向のΔxItem-、ΔxItem+、Y方向のΔyItem-、ΔyItem+は、物体OBJの側面の手先位置TCPからの変位量を示し、配置位置における手先位置TCPの位置姿勢をTOTERP、物体OBJの位置姿勢をTOTEItem、サイズをTOTEItemとすると、以下の(式12)で算出される。
Figure 0007204587000012
続いて、把持した物体OBJのサイズやハンド22のサイズを考慮せずに設定した第2領域100に対して、物体OBJを把持するハンド22の位置とサイズを考慮した第2領域100を算出する。
まず、図20、図21に示すように、ハンド22を手先位置TCPから当該ハンド22の端面までのX方向、Y方向のそれぞれの距離を、Δxhand-、Δxhand+、Δyhand-、Δyhand+とする。
ここで、ハンド22の場合も物体OBJと同様に、鉛直方向の干渉ではハンド22底面との干渉が問題になる。一方、水平方向の干渉においては、ハンド22が干渉しなければ、側面は干渉しないと見なせる。つまり、ハンド22の底面の位置とサイズのみを考慮して第2領域100を設定すればよいことになる。したがって、ハンド22を考慮した第2領域100は、図22、図23に示すように、物体OBJの位置とサイズを考慮した第2領域100dに対して考慮値として、X方向にΔxhand-、Δxhand+、Y方向にΔyhand-、Δyhand+だけマージンを広げることで、ハンド22の位置とサイズを考慮したXY方向の第2領域100(第2領域100d)が算出できる。
上述した(式6)~(式9)を用いて設定した手先位置TCPが通過できない第2領域100の位置姿勢をTOTEKeepout,i(i=1,…,n:nは物体OBJsの数)、サイズをTOTEKeepout,iとする。この場合、ハンド22を考慮した手先位置TCPが通過できない第2領域100の位置姿勢TOTEKeepoutHand,iおよび、サイズTOTEKeepoutHand,iは以下の(式13)、(式14)で算出される。
Figure 0007204587000013
Figure 0007204587000014
ただし、X方向のΔxHand-、ΔxHand+、Y方向のΔyHand-、ΔyHand+は、移動先の容器14bの座標系と直角平行なハンド22の外接直方体側面の手先位置TCPからの位置を示し、配置位置における手先位置TCPの位置姿勢をTOTERP、ハンド22の外接直方体の位置姿勢をTOTEHand、サイズをTOTEHandとすると、以下の(式15)で算出される。
Figure 0007204587000015
そして、ハンド22が把持する物体OBJを考慮して算出した第2領域100(第2領域100d)とハンド22を考慮して算出した第2領域100(第2領域100d)を併せて、最終的な第2領域100を決定(算出)することができる。
続いて、第3領域102のうち第2制御領域102bの設定について説明する。上述したように、第3領域102のうち第1制御領域102aは上方に隣接する第2領域100の存在により垂直方向(上方)から物体OBJやハンド22が接近することはなく、水平方向(側方)からの接近に限られる。そして、第3領域102の第2制御領域102bにおいては、仮に障害物に対して物体OBJやハンド22が干渉(接触)する場合でも、上述したような反発制御動作を力制御動作として実行することにより、物体OBJやハンド22の損傷を回避可能としている。反発制御動作にあたっては、物体OBJやハンド22に作用する力を正確に制御しつつ、急激に外力が作用しないように、力覚センサ31の測定値をフィードバックしながら物体OBJやハンド22を低速で接近させる必要がある。
一方、力制御のうちの特に第1制御領域102aに適用される押当制御には、物体OBJの移動中に壁14Wまたは既配置の物体OBJsの側面に対して実施する第1押当制御と、移動先位置RPに物体OBJを配置する場合に実施する第2押当制御とがある。第1押当制御は、上述したように主として狭い空間で移動経路を生成する場合に、第1制御領域102aのマージンを実質的に「0」にして通過を可能にする制御である。したがって、第1押当制御は、壁14Wの表面に対して物体OBJを略直交する方向に、例えば、所定閾値以下の押圧力で、所定閾値以下の移動速度を満たすような第1押当条件で押し当てる。なお、この場合の所定閾値以下の押圧力や所定閾値以下の移動速度は、物体OBJの種類(形状や材質、耐性等)に応じて、予め試験等により決定しておくことができる。
また、第2押当制御は、上述したように主として移動先位置RPに物体OBJを最終的に配置する場合に、第1制御領域102aのマージンを実質的に0にして、斜め上方からゆっくりと接近させる制御である。したがって、第2押当制御は、物体OBJsの側面や壁14Wの表面に対して、物体OBJを、例えば、所定の接近角度で、所定閾値以下の移動速度を満たすような第2押当条件で押し当てる。なお、この場合の所定接近角度や所定閾値以下の移動速度は、物体OBJの種類(形状や材質、耐性等)に応じて、予め試験等により決定しておくことができる。
上述したように、第1制御領域102aの障害物とは反対側に側方向に隣接する領域を、第2制御領域102bとして設定する。第2制御領域102bは、力制御動作が行われる第3領域102の一部であり、力制御動作のうちの反発制御動作が実行され領域である。第2制御領域102bにおいては、物体OBJやハンド22と障害物との干渉が検出された場合でも反発制御動作が行われることから、物体OBJやハンド22の移動が許容される。また、第2制御領域102bにおいて、第1制御領域102aで押当制御動作を実行するための準備として、少なくともハンド22の挙動を制限するように設定してもよい。この場合のハンド22の挙動の制限とは、例えば、移動速度の制限であり、第1領域104より低速(例えば、1/2や1/3の速度)とすることができる。
力制御動作のうち反発制御動作を実行する場合も物体OBJやハンド22を力覚センサ31の測定値をフィードバックしながら物体OBJを把持したハンド22が移動する。反発制御動作の場合、所定閾値以下の移動速度で、壁14Wや物体OBJの側面に接近し、実質的な反力が発生する前に、すなわち、接触を検出したとともに、接触面から離反するように制御される。例えば、計算上障害物と干渉しない移動経路が生成された場合でも、センサ30の測定誤差に起因して、壁14Wや物体OBJsの側面に接触する場合がある。この場合、反発制御を実行することで、測定誤差を吸収し、壁14Wや物体OBJsの側面に衝突することによる破損を回避することができる。
ここで、図24、図25を用いて、移動先位置RPである容器14bに対して、第2領域100、第3領域102の特に第2制御領域102bおよび第1領域104の設定、その際のハンド22(手先位置TCP)の移動経路Rの設定について一例を説明する。
図24は、図12~図23で説明した例にしたがい、物体OBJsが既に配置されている容器14bに第2領域100および第3領域102の第1制御領域102aを設定した後、第2領域100の下側で、かつ第1制御領域102aの障害物と反対側の側方向に隣接する位置に第2制御領域102bを設定した例である。そして、第2領域100、ならびに、第1制御領域102aおよび第2制御領域102bからなる第3領域102以外の領域は、物体OBJを把持したハンド22が制限されることなく比較的高速で移動可能な第1領域104として設定される。
図24の場合、物体OBJsに対する第2領域100と容器14bの壁14Wに対する第2領域100との間に第1領域104が存在し、物体OBJを把持したハンド22が比較的自由に移動できる。図24の場合、ハンド22(手先位置TCP)は、第1領域104を垂直下方に高速で、経由位置であるRAP1からRAP[0]に移動する。その後、手先位置TCPは、第3領域102の第2制御領域102bに進入する。第2制御領域102bでは、力覚センサ31の測定値をフィードバックしながら物体OBJを把持したハンド22が反発制御動作により所定閾値以下の移動速度で移動する。反発制御動作では、例えば、壁14Wや物体OBJの側面に接近し、実質的な反力が発生する前に、接触を検出するとともに、物体OBJが接触面から離反するようにハンド22が制御される。さらに、第2制御領域102bにおいて、物体OBJsの側面に隣接して設定された第1制御領域102aで、移動先位置RPに向かう押当制御動作への切り替えをスムーズかつ遅延することなく実行できるように、第1領域104の場合より低速の準備速度でRAP[1]に移動させるように構成してもよい。そして、RAP[1]から移動先位置RPの間の第1制御領域102aでは、第2押当条件を満たすように第2押当制御が実行される。このように、第1領域104、第2領域100、第3領域102(第1制御領域102aおよび第2制御領域102b)の設定位置に基づいて、移動経路Rを決定するとともに、移動態様(移動速度等)を決定することにより、物体OBJを迅速かつ正確に、そしてダメージを与えにくい動作で移動先位置RPに移動(配置)することができる。
図25の場合、物体OBJsに対する第2領域100と容器14bの壁14Wに対する第1制御領域102aとが接近し、間に第1領域104が存在しない例である。図25の場合、ハンド22(手先位置TCP)は、第1領域104を垂直下方に高速で、RAP1からRAP[0]に移動する。その後、手先位置TCPは、第2制御領域102bに進入し、RAP[1]、RAP[2]、RAP[3]まで第1領域104の場合より低速の準備速度で進む。そして、RAP[3]から移動先位置RPの間で第2押当条件を満たすように第2押当制御を実行する。この場合も、第1領域104、第2領域100、第2制御領域102bの設定位置に基づいて、移動経路Rを決定するとともに、移動態様(移動速度等)を決定する。その結果、図24の場合より、第2制御領域102bを通過する期間が長いため時間はかかるが、物体OBJを最大限迅速かつ正確に、そしてダメージを与えにくい動作で移動先位置RPに移動(配置)することができる。
ころで、上述した図24、図25で示したように移動経路Rを設定する場合、移動経路が第2領域100と何処で干渉(接触)するかを正確に把握する必要がある。そこで、経路算出部56は、容器14bに第2領域100を設定した場合、干渉チェック高さ(Z方向)のリストを生成する。干渉チェック高さは、図26に示すように、第2領域100の上面と下面の高さで定義することができる。図26は、容器14bに既配置の物体OBJsが存在し、図12~図23で説明した例にしたがい第2領域100および第3領域102の第1制御領域102aが設定されている場合の干渉チェック高さの一例を示している。
具体的には、手先位置TCPが通過できない第2領域100の位置姿勢をTOTEKeepout,i(i=1…,n)、サイズをTOTEKeepout,iとすると、干渉チェック高さのリストTOTECheck,j(j=1…,2n)は以下の(式16)で算出できる。
Figure 0007204587000016
なお、干渉チェック高さのリストTOTECheck,jは、高さの低い順(昇順)にH1~H4等のように並んでいるものとする。
次に、通過が制限される第2領域100を回避する手先位置TCPの算出について説明する。なお、物体OBJを把持したハンド22は、例えば容器14bの上方から容器14bの中に進入する移動経路Rを辿るが、移動経路Rの計画時は、移動先位置RPから進入元方向に逆算して移動経路Rの経由点を決定する。図27は、容器14bの壁14Wに密着した既配置の物体OBJsの右側面に、ハンド22で把持した物体OBJを密着配置する例である。本実施形態の場合、経由点算出のルーチンの初回では、移動先位置RPから斜め上方向にオフセットした位置をRAP[0]を設定する。前述したように、物体OBJを既配置の物体OBJsや壁14Wに密着配置させる場合、第2押当制御を実行する。その場合、例えば、物体OBJを斜め上方から接近させるとスムーズに密着させることができる。したがって、予め試験等によりオフセット量を決定しておく。例えば、高さ20mmから45°で接近できるように、オフセット量、つまり、RAP[0]を設定することができる。
次に、最初の経由位置(姿勢)であるRAP[0]に基づき、次の経由点を決定する。ここで、経路算出部56は、図26で説明した各干渉チェック高さにおいて第2領域100を抽出し、RAP[0]から真上に向かう経路の一部が第2領域100に含まれることが分かった場合、第2領域100を回避するような経由点を算出する。回避経由点は第2領域100に含まれない領域の中で、RAP[0]に最も近い点とする。回避経由点の算出例を図28に示す。
まず、第2領域100の各頂点のうち、他の第2領域100に含まれない点を回避位置候補点Psとする(図28の場合、第2領域100の四隅の点)。ここで、手先位置TCPが通過できない第2領域100の位置姿勢をTOTEKeepout,i(i=1…,n)、サイズをTOTEKeepout,iとすると、回避位置候補点に追加する第2領域100の各頂点TOTEAvoidCorner,i,j(j=1,2,3,4)は以下の(式17)で算出できる。
Figure 0007204587000017
続いて、回避前位置(図28のTOTERAP[0])からX方向、Y方向に伸ばした直線と第2領域100の各辺との交点のうち、他の第2領域100に含まれない点を回避位置候補点Ps(TOTEAvoidParallel,i,j(j=1,2,3,4))として追加する。追加するTOTEAvoidParallel,i,jは、以下の(式18)で算出できる。
Figure 0007204587000018
そして、(式17)で算出したTOTEAvoidCorner,i,jと、(式18)で算出した
TOTEAvoidParallel,i,jをあわせて回避位置候補点リストTOTEAvoidAll,iとする。この候補点リストの中でRAP[0]の位置(回避前位置)TOTERAP[0]と距離が最も近い点を回避位置TOTEAvoidとする。回避位置TOTEAvoidは、以下の(式19)で算出することができる。
Figure 0007204587000019
続いて、経路算出部56は、図28で算出したTOTEAvoidと図27で設定したRAP[0]を結ぶ直線の移動経路が、第2領域100を通過しないかをチェックする。そして、通過する場合は、その第2領域100について、再度、図28で説明した手順で回避位置を算出する。具体的な処理の例を図29~図31に示す。
例えば、図29では、前回のRAP[0]=点P1から直線を延ばし第2領域100との交点を新たなRAP[0]=点P2とする。そして、点P2から第2領域100を回避するように上方に直線を延ばすと、上側の第2領域100底面の点Pbで交差する。この点Pbを回避前位置とする場合、第2領域100との交差を回避する回避位置として第2領域100の端部の点Pcが考えられる。ただし、この場合、点P2と点Pcを直線で結ぶと、下側の第2領域100を通過することになる。そこで、図30に示すように、点P2と点Pcを結ぶ直線が下側の第2領域100の上面と交差する点Pbを、新たな回避前位置とする。この場合、第2領域100との交差を回避する回避位置として第2領域100の端部の点P3が考えられる。したがって、回避経路として、点P2と点P3を結ぶ。そして、図31に示すように、前回、上側の第2領域100底面において回避位置とした点Pcを点P4と改め、点P3と点P4を結ぶ。なお、図31の場合、点P4から上方に直線を延ばしても第2領域100に交差することはない。したがって、この時点で、回避経路が完成する。つまり、点P1,P2,P3,P4を結ぶ移動経路が完成する。
以上に示した処理をより具体的に示す。
手先位置TCPが通過できない第2領域100の位置姿勢をTOTEKeepout,i(i=1…,n)、サイズをTOTEkeepout,iとすると、RAP[0]の位置TOTERAP[0]と回避位置TOTEAvoidとを結ぶ線分LRAP[0],Aviodが各第2領域100の底面および上面と交点を持つかどうかを判定すればよい。各第2領域100の底面および上面のZ座標TOTEKeepoutTop,iおよびTOTEKeepoutBottom,iは、(式20)で算出できる。
Figure 0007204587000020
そして、線分LRAP[0],AviodTOTEKeepoutTop,iTOTEKeepoutBottom,iと交差するには,少なくとも以下の(式21)の条件を満たす必要がある。
Figure 0007204587000021
このとき、線分LRAP[0],AviodTOTEKeepoutTop,iTOTEKeepoutBottom,iにおける座標TOTECrossTop,iTOTECrossBottom,iは、以下の(式22)で算出できる。
Figure 0007204587000022
こららの交点TOTECrossTop,iTOTECrossBottom,iが第2領域100内に含まれるのは,以下の(式23)で示す条件を満たしているときである。
Figure 0007204587000023
線分LRAP[0],Aviodが第2領域100と交差することが分かった場合、交差すると判定された第2領域100の上面または底面の高さTOTEKeepoutTop,iTOTEKeepoutBottom,iのうち、最小の値となる高さにおける線分LRAP[0],Aviodの座標を新たに回避前位置とし、図28で説明した手順により回避位置を算出する。
ところで、上述した手順で移動経路を算出する場合、移動先位置RPまでのスペースが狭い場合、センサ30(カメラ32b、測域センサ33a,33b等)の認識誤差を考慮したマージンでは経由点が生成できない場合がある。その場合、本実施形態のでは、図32、図33に示すように、力制御により物体OBJを移動先の容器14bの壁14Wまたは既配置の物体OBJsの側面に押し当てることで認識誤差を吸収し、少なくとも一部においてマージンなしで移動先位置RPまでの移動経路を算出する。図32、図33の場合、既配置の物体OBJsに設定された第2領域100が、壁14Wに設定された第3領域102(第1制御領域102a)と一部が重なって重複領域となっている。その結果、図32に示すように、物体OBJを把持したハンド22は、移動先位置RPに接近できない。この場合、経路算出部56は、第1制御領域102aを優先し、この重複領域について第1制御領域102aとして扱う。すなわち、図33に示すように、力制御により物体OBJを移動先の容器14bの壁14Wに矢印D方向(壁14Wに対して略直交する方向)に押し当る第1押当制御を実行し、第2領域100(第1制御領域102a)を通過して移動経路Rを生成する。この場合、第2領域100(第1制御領域102a)で力制御動作を実行して移動を許容するために少なくともハンド22は、第3領域102の第1制御領域102aを通過する際に第1押当条件を満たすような挙動(例えば、移動速度が閾値以下に制限された移動や所定閾値以下の押圧力等)で第1押当制御を実行する。その結果、押当制御動作に起因した外力が必要以上に物体OBJ等にかかることを回避することができる。特に、押当制御動作を行なう領域である第1制御領域102aを、第2領域と同様にハンド22の通過を原則的に制限(禁止)し、例外的に押当制御動作を行なう場合に限り物体OBJおよびハンド22の通過を可能とする領域に設定している場合を考える。この場合、第2領域100と第1制御領域102aとの重複領域が生じるときにのみ、この重複領域については第1制御領域102aを優先させて、第1制御領域102aとしてハンド22の押当制御動作による経路を生成するようにしてもよい。
図34には、第3領域102のうち第1制御領域102aで押当制御動作を実行する場合の押当方向を決定する手順例が示されている。まず、経路算出部56は、X方向のマージンを無視した通過制限領域を生成する(S200)。そして、X方向のマージンを無視したことにより回避位置が算出できた場合(S202のYes)、押当方向として、X方向を決定し(S204)、一旦フローを終了する。S202において、回避位置が算出できない場合(S202のNo)、経路算出部56は、Y方向のマージンを無視した通過制限領域を生成する(S206)。そして、Y方向のマージンを無視したことにより回避位置が算出できた場合(S208のYes)、押当方向として、Y方向を決定し(S210)、一旦フローを終了する。
S208において、回避位置が算出できない場合(S208のNo)、経路算出部56は、X,Y方向のマージンを無視した通過制限領域を生成する(S212)。そして、X,Y方向のマージンを無視したことにより回避位置が算出できた場合(S214のYes)、押当方向として、X,Y方向を決定し(S216)、一旦フローを終了する。S214において、回避位置が算出できない場合(S214のNo)、経路算出部56は、物体OBJを配置しようとした移動先位置RPを、物体OBJのリリース候補から除外する。この場合、他の位置に移動先位置RPを設定し物体OBJを移動させるように再計算を行う。
なお、X方向またはY方向のマージンを無視した通過制限領域(第2領域100)を生成するには、図12~図23で説明した第2領域100の設定の際に、δ=σ=0またはδ=σ=0とすればよい。X方向にのみ押し当てる場合を例とすると、δ=σ=0として生成した通過制限領域(第2領域100)の位置姿勢をTOTEKeepoutPressX,i(i=1,…,n)、サイズをTOTEKeepoutPressX,iとする。図35(a)~図35(c)を用いて、押当制御による経由点の生成について、具体的な処理の流れを示す。
まず、図35(a)に示すように、回避前位置である点Pbの手先位置TCP高さにおいて、押し当て可能な位置PPを探索する。押当面を探索するため、図12~図23で説明した第2領域100の設定の際に、全方向へのマージンを「0」(δ=σ=δ=σ=δ=σ=0)に設定する。マージンを無視することで,ハンド22または把持した物体OBJと、既配置の物体OBJsまたは移動先の容器14bの壁14Wとが実際に接触する領域を生成することができる。このようにして生成した領域を接触領域と呼ぶ。このときの位置姿勢をTOTEContact,i(i=1,…,n)、サイズをTOTEContact,iとする。X方向にのみ押し当てる場合、接触領域の各面のうちX軸に垂直な面のX座標TOTEContactX,j(j=1,…,2n)は以下の(式24)で算出できる。
Figure 0007204587000024
この中から、回避前位置Pb(=TOTERAP[0])とY,Z座標が等しくなる領域に含まれている面のX座標を抽出し、TOTERAP[0]のY,Z座標とあわせて押し当て可能位置PP(=TOTEPressX,i)とする。
続いて、図35(b)に示すように、回避前位置Pbの手先位置TCP高さの次に高い干渉チェック高さにおいて、押し当て可能な位置PPを探索する。図26に示したように、干渉チェック高さのリストは高さの低い順に並んでいることから、回避前位置Pbを計算した干渉チェック高さをTOTECheck,iとすると、次に高い干渉チェック高さはTOTECheck,i+1である。この位置を基準として、図35(a)と同様の方法で押当可能位置PP(=TOTEPressX,i)に追加する。
図35(a)、図35(b)で探索した押当可能位置PP=TOTEPressX,iの中で,X,Y座標が一致し、Z座標のみが異なる2点のセットを抽出し、押当面PTとする。なお、押当面PTが複数抽出された場合は、その中から、回避前位置Pb(=TOTERAP[0])に最も距離が近い面を押当面PTとして選択する。そして、選択された押当面PTの上端にあたる位置をTOTEPressX+、下端に当たる位置をTOTEPressX-とする。
次に、図35(c)に示すように、選択した押当面PTにあわせて押当待機位置Pr、押当開始位置Pstart、押当終了位置Pendを設定し、これらを移動経路Rの経由点に追加する。
押当開始位置Pstartは、押し当てによる力目標値が満たされるまで押し当てを継続する位置で、具体的には、図35(b)で算出した押当面の上端TOTEPressX+とすることができる。また、押当終了位置Pendは、押当開始位置Pstartから押し当てを継続したまま移動する目標位置で、具体的には、図35(b)で算出した押当面の下端TOTEPressX-とすることができる。
また、押当待機位置Prは、押当開始位置Pstartに向かうためのマージンを確保した位置である。押当待機位置PrのX方向については、押当開始位置Pstartから回避前位置Pb(=TOTERAP[0])に向かう方向、Z方向については、鉛直上方向にマージン分オフセットした位置とすることができる。ここで、マージン設定値をTOTEPressMargin(X方向、正の値)、TOTEPressMargin(Z方向、正の値)とすると、押当待機位置Pr=TOTEPressXAppは、(式25)で算出することができる。
Figure 0007204587000025
なお、物体OBJの押当面に対して、押当面PTの広さが所定閾値以下の場合、つまり、物体OBJの物体側押当面と障害物の障害物側押当面との接触面積が接触閾値未満の場合、押当制御(力制御動作)を非実行とする。この場合、押当を行った場合、接触面の不足により、ハンド22が把持する物体OBJの把持姿勢が変化したり、物体OBJに外力が加わり破損や変形を起こしたりする可能性がある。したがって、このような場合、無理に押当制御を実行することなく、経路算出部56は、移動先位置RPを変更して移動経路Rの再算出を実行する。
以上のように構成される物体ハンドリングシステム1(物体ハンドリング装置)において、領域設定部55が領域設定を行った場合の物体OJB(ハンド22)の移動経路の経由点の生成例を図36のフローチャートを用いて説明する。また、図37(a)~図37(f)は、移動経路の経由点の生成において、経由点の位置を説明する例示的かつ模式的な説明図である。なお、図37では、既に説明した図面を統合し、経由点の生成が理解し易いよう記載している。また、図37では、説明の簡略化のため、第2領域100および第3領域102の第1制御領域102aのみを図示している。
まず、領域設定部55は、手先位置TCPの通過制限領域、すなわち、第2領域100を算出する(S300)。例えば、図37(a)に示すように、領域設定部55は、容器14bの形状や壁14Wの位置、容器14bに既配置の物体OBJsの位置、サイズ、大きさ等を、例えば画像処理部52が取得したカメラ32bが撮像した画像に基づく状態情報に基づいて取得する。そして、領域設定部55は、図12~図23を用いて説明した手順にしたがい第2領域100および第3領域102の第1制御領域102aを算出する。なお、第2領域100の算出(設定)により、第3領域102(第1制御領域102aおよび第2制御領域102b)、第1領域104の算出(設定)も実行される。
続いて、図37(b)において、図27で説明したように、移動先位置RPから斜め上方にオフセットした位置に、移動経路Rの生成時の最初の経由点であるRAP[0]を設定する(S302)。さらに、経路算出部56は、図26で説明したように、干渉チェック高さのリストを算出する(S304)。
そして、順次、経由点を設定するように、以下のステップを繰り返し実行する。すなわち、図27~図35を用いて説明した手順にしたがい、経由点を順次決定して行く。まず、図37(c)に示すように、経路算出部56は、最初に設定した経由点であるRAP[0]から真上に向かう経路(直線)を算出する(S306)、そして、その経路(直線)の一部が通過制限領域(第2領域100)に含まれるか否か判定する(S308)。真上に向かう経路(直線)の一部が通過制限領域(第2領域100)に含まれる場合(S308のYes)、図37(d)に示すように、通過制限領域(第2領域100)を回避するための経由点を、図28で説明した手順にしたがい算出する(S310)。なお、図37(d)は、さらに次の経由点が算出されている状態が示されている。
新たな経由点が算出できない場合(S312のNo)、図32、図33で説明したように、押当制御による回避経由点を算出する(S314)。また、S312で経由点が算出できた場合(S312のYes)、またはS314で回避経由点が算出できた場合、図37(d)に示すように、算出した経由点をRAP[ ]に先頭から順に追加する(S316)。例えば、算出された最新の経由点が、RAP[0]になるように、ナンバリングを行う。そして、経路算出部56は、最新の経由点を含んで算出した移動経路Rが第2領域100と干渉しないか干渉チェックを行い(S318)、次の経由点を探索するために、S306に戻る。なお、図37(e)は、次の経由点の探索処理のときに、最新の経由点RAP[0]から真上に向かう経路を算出した結果、第2領域100に干渉する例で、回避経由点を算出する必要がある場合である。
図37(f)では、最新の回避経由点RAP[0]が算出された状態が示されている。さらに、次の経由点を算出するために、S306からの処理を繰り返した結果、S308で、経路算出部56は、真上に向かう経路(直線)の一部が通過制限領域(第2領域100)に含まれないと判定された場合(S308のNo)、このフローを一旦終了する。つまり、移動経路Rを作成するにあたり、干渉する第2領域100は既にないことにある。この場合、図37(f)に示すように、例えば、既配置の物体OBJsの下面縁部を移動先位置RPとして、図37(b)で最初に設定した経由点がRAP[3]になり、次に算出された経由点がRAP[2]になり、さらに次に算出された経由点がRAP[1]になり、最新の経由点がRAP[0]となる。つまり、容器14bの上空から接近する物体OBJを把持したハンド22は、作成された移動経路Rに沿って、経由点RAP[0]、RAP[1]、RAP[2]、RAP[3]を順に移動することにより、移動先位置RPに障害物と干渉することなく迅速に到達し、物体OBJを配置することができる。
なお、図36のフローチャートでは、省略しているが、S314で、押当制御によっても回避経由点が算出できない場合、最初に設定した移動先位置RPに物体OBJを移動(配置)することができないと判定され、経路算出部56は、別の移動先位置RPについて、このフローチャートを適用して、移動経路Rの生成を行う。
なお、上述した例では、物体OBJsの上面に第2領域100を設定する例を示したが、積上げ配置可能な場合は、既配置の物体OBJsの上面は、第2領域100以外の領域として、積上げ配置が可能な移動経路Rを生成できるようにしてもよく、移動先位置RPにおける配置条件に従って、設定する領域を適宜変更してもよい。
このように、本実施形態の物体ハンドリングシステム1(物体ハンドリング装置)は、ハンド22、画像処理部52,信号処理部53等の情報取得部と、領域設定部55と、経路算出部56と、ロボット制御部57(移動制御部)と、を備える。ハンド22は、物体OBJを把持可能である。画像処理部52、信号処理部53等の情報取得部は、ハンド22に把持された状態の物体OBJに関する物体情報と、物体OBJの移動元位置HPと物体OBJの移動先位置RPに関する状態情報と、を少なくとも取得する。領域設定部55は、第1領域104と、第2領域100と、第3領域102とを物体情報と状態情報に応じて設定する。第1領域104は、物体OBJを把持したハンド22が移動元位置HPから移動先位置RPに移動する場合に、移動元位置HPと移動先位置RPとの間の空間に存在する障害物(容器14bや既配置の物体OBJs等)に制限されることなく移動が許可される領域である。第2領域100は、障害物の存在に基づいて移動が制限される領域である。第3領域102は、少なくとも一部が第2領域100の下方に設定されハンド22に力制御動作を実行させる領域である。経路算出部56は、第1領域104と第2領域100と第3領域102とに基づき物体OBJを移動元位置HPから移動先位置RPに移動させる移動経路Rを算出する。ロボット制御部57は、マニピュレータ20を制御して、移動経路Rにしたがい物体OBJを把持したハンド22を移動させる。
この構成にれば、ハンド22やハンド22が把持した物体OBJの破損を招くよう障害物との衝突を回避しつつ、狭い空間にも移動経路Rが生成可能で、物体OBJを効率的かつ安全に移動させることができる。つまり、物体OBJの容器14bへの充填率を容易に最大化して運搬コストの低減ができる。また、第1領域104を利用した高速移動および第3領域102を利用して第2領域100と干渉しない安全な移動が実現され、物体OBJの移動(配置)効率(移載サイクル)の向上ができる。
また、物体ハンドリングシステム1(物体ハンドリング装置)の領域設定部55は、第2領域100として、ハンド22が障害物の上方向から下方向への移動成分をって接近することを制限する第2領域100と、第2領域100の下側で障害物に沿って設定されるとともにハンド22が障害物の側方向から接近することを制限する第2領域100より障害物に対する制限幅(マージン)が少ない第1制御領域102aと、を設定するようにしてもよい。この構成によれば、物体OBJやハンド22の動作に応じた第2領域100の設定を容易に行うことができる。
また、物体ハンドリングシステム1(物体ハンドリング装置)の領域設定部55は、第1制御領域102aの障害物の反対側に隣接して第2制御領域102bを設定するようにしてもよい。この構成によれば、第3領域102の第1制御領域102aで押当制御動作を適切に行うための第2制御領域102bを容易に設定することができる。
また、物体ハンドリングシステム1(物体ハンドリング装置)における、力制御動作は、経路算出部56が移動経路Rを算出する場合で第1制御領域102aの通過が必要な場合に、障害物の表面に対して物体OBJを略直交する方向に第1押当条件を満たすように押し当てる第1押当制御により実行されるようにしてもよい。この場合、第2領域100の存在により移動経路が生成できない場合でも、物体OBJの損傷しつつ移動させることができる移動経路Rの生成がし易くなる。
また、物体ハンドリングシステム1(物体ハンドリング装置)における力制御動作は、経路算出部56が移動経路Rを算出する場合で物体OBJを移動先位置RPを含む載置領域に着地させる場合に、載置領域の縁部に向かって第1制御領域102aの中を物体OBJが第2押当条件を満たすように押し当てる第2押当制御により実行されるようにしてもよい。この構成によれば、容器14bの壁14Wや既配置の物体OBJsに物体OBJを密着させた状態で配置することができる。また、その際に物体OBJやハンド22にダメージが加わることを回避することができる。
また、物体ハンドリングシステム1(物体ハンドリング装置)における力制御動作は、移動経路Rに沿って物体OBJを把持したハンド22が特に第2制御領域102b内を移動する際に障害物に接触する場合に、物体OBJを障害物の表面から離反する方向に反発移動させて通過を可能にする反発制御により実行されるようにしてもよい。この場合、センサ30等に測定誤差が存在する場合でも、測定誤差を吸収し、物体OBJやハンド22が壁14Wや物体OBJsの側面に衝突することが回避可能となり、破損の回避が容易にできる。
なお、実施形態においては、第3領域102を第1制御領域102aと第2制御領域102bに分けて設定する例を示しているが、第3領域102を第1制御領域102aと第2制御領域102bの2つの領域に分割せず一つの領域として設定してもよい。この場合、力制御動作が行われる領域である第3領域102においては、力制御のうち押当制御および反発制御のいずれか一方が行われる領域として設定できる。または、第3領域102全体を、例えば力覚センサ31の検出値に応じて押当制御動作および反発制御動作を切り替えるなど、押当制御および反発制御を組み合わせた力制御を行なう領域として設定してもよい。
また、物体ハンドリングシステム1(物体ハンドリング装置)の経路算出部56は、第1押当制御を実行する場合に、物体OBJの物体側押当面と障害物の障害物側押当面との接触面積が接触閾値未満の場合、力制御動作を非実行として、移動先位置RPを変更して移動経路Rの再算出を実行してもよい。この構成によれば、接触面の不足により、ハンド22が把持する物体OBJの把持姿勢が変化したり、物体OBJに外力が加わり破損や変形を起こしたりする可能性がある。したがって、このような場合、無理に押当制御を実行することなく、経路算出部56は、移動先位置RPを変更して移動経路Rの再算出を実行する。
また、本実施形態の物体ハンドリング方法は、ハンド22に把持された状態の物体OBJに関する物体情報と、物体OBJの移動元位置HPと物体OBJの移動先位置RPに関する状態情報と、を少なくとも取得する情報取得ステップを備える。また、物体OBJを把持したハンド22が移動元位置HPから移動先位置RPに移動する場合に、移動元位置HPと移動先位置RPとの間の空間に存在する障害物に制限されることなく移動が許可される第1領域104と、障害物の存在に基づいて移動が制限される第2領域100と、ハンド22に力制御動作を実行させる第3領域102と、を物体情報と状態情報に応じて設定する領域設定ステップを備える。また、第1領域104と第2領域100と第3領域102とに基づき物体OBJを移動元位置HPから移動先位置RPに移動させる移動経路Rを算出する経路算出ステップを含む。そして、移動経路Rにしたがい物体OBJを把持したハンド22を移動させる移動制御ステップを含む。
この構成にれば、ハンド22やハンド22が把持した物体OBJの破損を招くよう障害物との衝突を回避しつつ、狭い空間にも移動経路Rが生成可能で、物体OBJを効率的かつ安全に移動させることができる。つまり、物体OBJの容器14bへの充填率を容易に最大化して運搬コストの低減ができる。また、第1領域104を利用した高速移動および第3領域102を利用して第2領域100と干渉しない安全な移動が実現され、物体OBJの移動(配置)効率(移載サイクル)の向上ができる。
本実施形態の物体ハンドリング装置で実行されるハンドリングプログラムは、インストール可能な形式または実行可能な形式のファイルでCD-ROM、USBメモリ、SSD等の半導体メモリ装置、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録されて提供されることができる。
また、本実施形態の物体ハンドリング装置で実行されるハンドリングプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、本実施形態の物体ハンドリング装置で実行されるハンドリングプログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。また、本実施形態の物体ハンドリング装置で実行されるハンドリングプログラムを、ROM等に予め組み込んで提供するように構成してもよい。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
1…物体ハンドリングシステム、10…制御装置、14W…壁、14a,14b…容器、22…ハンド、31…力覚センサ、32a,32b…カメラ、33a,33b…測域センサ、52…画像処理部(情報取得部)、53…信号処理部(情報取得部)、55…領域設定部、56…経路算出部、57…ロボット制御部(移動制御部)、100…第2領域、102…第3領域、102a…第1制御領域、102b…第2制御領域、104…第1領域、61…内部DB、RP…移動先位置、TCP…手先位置。

Claims (7)

  1. 物体を把持可能な把持部に把持された状態の前記物体に関する物体情報と、前記物体の移動元位置と前記物体の移動先位置に関する状態情報と、を少なくとも取得する情報取得部と、
    前記物体を把持した前記把持部が前記移動元位置から前記移動先位置に移動する場合に、前記移動元位置と前記移動先位置との間の空間に存在する障害物に制限されることなく移動が許可される第1領域と、前記障害物の存在に基づいて移動が制限される第2領域と、少なくとも一部が前記第2領域の下方に設定され前記把持部に力制御として力制御動作を実行させる第3領域と、を前記物体情報と前記状態情報に応じて設定する領域設定部と、
    前記第1領域と前記第2領域と前記第3領域とに基づき前記物体を前記移動元位置から前記移動先位置に移動させる移動経路を算出する経路算出部と、
    を備える、物体ハンドリング制御装置。
  2. 前記第2領域は、少なくとも前記把持部が前記障害物の上方向から下方向への移動成分をって接近することが制限される領域である、請求項1に記載の物体ハンドリング制御装置。
  3. 前記第3領域は、前記力制御として押当制御が実行される第1制御領域および前記力制御として反発制御が実行される第2制御領域を備える、請求項1または請求項2に記載の物体ハンドリング制御装置。
  4. 前記押当制御は、前記障害物の表面に対して前記物体を略直交する方向に第1押当条件を満たすように押し当てて実行され、
    前記経路算出部は、前記押当制御を実行する場合に、前記物体の物体側押当面と前記障害物の障害物側押当面との接触面積が接触閾値未満の場合、前記移動先位置を変更して前記移動経路の再算出を実行する、請求項3に記載の物体ハンドリング制御装置。
  5. 請求項1乃至請求項3のいずれか1項に記載の物体ハンドリング制御装置と、
    前記把持部と、
    前記経路算出部が算出した前記移動経路にしたがい前記物体を把持した前記把持部を移動させる移動制御部と、
    を備える物体ハンドリング装置。
  6. 把持部に把持された状態の物体に関する物体情報と、前記物体の移動元位置と前記物体の移動先位置に関する状態情報と、を少なくとも取得する情報取得ステップと、
    前記物体を把持した前記把持部が前記移動元位置から前記移動先位置に移動する場合に、前記移動元位置と前記移動先位置との間の空間に存在する障害物に制限されることなく移動が許可される第1領域と、前記障害物の存在に基づいて移動が制限される第2領域と、少なくとも一部が前記第2領域の下方に設定され前記把持部に力制御として力制御動作を実行させる第3領域と、を前記物体情報と前記状態情報に応じて設定する領域設定ステップと、
    前記第1領域と前記第2領域と前記第3領域とに基づき前記物体を前記移動元位置から前記移動先位置に移動させる移動経路を算出する経路算出ステップと、
    前記移動経路にしたがい前記物体を把持した前記把持部を移動させる移動制御ステップと、
    を備える、物体ハンドリング方法。
  7. コンピュータに、
    把持部に把持された状態の物体に関する物体情報と、前記物体の移動元位置と前記物体の移動先位置に関する状態情報と、を少なくとも取得する情報取得ステップと、
    前記物体を把持した前記把持部が前記移動元位置から前記移動先位置に移動する場合に、前記移動元位置と前記移動先位置との間の空間に存在する障害物に制限されることなく移動が許可される第1領域と、前記障害物の存在に基づいて移動が制限される第2領域と、少なくとも一部が前記第2領域の下方に設定され前記把持部に力制御として力制御動作を実行させる第3領域と、を前記物体情報と前記状態情報に応じて設定する領域設定ステップと、
    前記第1領域と前記第2領域と前記第3領域とに基づき前記物体を前記移動元位置から前記移動先位置に移動させる移動経路を算出する経路算出ステップと、
    前記移動経路にしたがい前記物体を把持した前記把持部を移動させる移動制御ステップと、
    を実行させるための、物体ハンドリングプログラム。
JP2019112218A 2019-06-17 2019-06-17 物体ハンドリング制御装置、物体ハンドリング装置、物体ハンドリング方法および物体ハンドリングプログラム Active JP7204587B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2019112218A JP7204587B2 (ja) 2019-06-17 2019-06-17 物体ハンドリング制御装置、物体ハンドリング装置、物体ハンドリング方法および物体ハンドリングプログラム
DE102020207368.6A DE102020207368B4 (de) 2019-06-17 2020-06-15 Objekthandhabungssteuervorrichtung, Objekthandhabungsvorrichtung, Objekthandhabungsverfahren und Computerprogrammprodukt
US16/902,313 US11559894B2 (en) 2019-06-17 2020-06-16 Object handling control device, object handling device, object handling method, and computer program product

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019112218A JP7204587B2 (ja) 2019-06-17 2019-06-17 物体ハンドリング制御装置、物体ハンドリング装置、物体ハンドリング方法および物体ハンドリングプログラム

Publications (2)

Publication Number Publication Date
JP2020203342A JP2020203342A (ja) 2020-12-24
JP7204587B2 true JP7204587B2 (ja) 2023-01-16

Family

ID=73546943

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019112218A Active JP7204587B2 (ja) 2019-06-17 2019-06-17 物体ハンドリング制御装置、物体ハンドリング装置、物体ハンドリング方法および物体ハンドリングプログラム

Country Status (3)

Country Link
US (1) US11559894B2 (ja)
JP (1) JP7204587B2 (ja)
DE (1) DE102020207368B4 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9393686B1 (en) * 2013-03-15 2016-07-19 Industrial Perception, Inc. Moveable apparatuses having robotic manipulators and conveyors to facilitate object movement
US20220258355A1 (en) 2019-08-02 2022-08-18 Dextrous Robotics, Inc. Systems and method for robotics control under contact
JP2021049597A (ja) * 2019-09-24 2021-04-01 ソニー株式会社 情報処理装置、情報処理システム及び情報処理方法
US11130237B1 (en) * 2020-03-05 2021-09-28 Mujin, Inc. Method and computing system for performing container detection and object detection
JP7447676B2 (ja) * 2020-05-26 2024-03-12 株式会社デンソーウェーブ ロボットアームの制御装置
JP7437288B2 (ja) 2020-10-30 2024-02-22 株式会社日立製作所 移動機械の制御装置および制御方法
US11795012B1 (en) * 2020-11-06 2023-10-24 Aaron Thomas Bacon Multi-gripper system
US20220355474A1 (en) * 2021-05-04 2022-11-10 Mujin, Inc. Method and computing system for performing robot motion planning and repository detection
CN113538459B (zh) * 2021-07-07 2023-08-11 重庆大学 一种基于落点区域检测的多模式抓取避障检测优化方法
WO2023119353A1 (ja) * 2021-12-20 2023-06-29 株式会社Pfu 物体処理装置
GB202204711D0 (en) * 2022-03-31 2022-05-18 Ocado Innovation Ltd Controlling a robotic manipulator for packing an object
US11845184B2 (en) 2022-04-18 2023-12-19 Dextrous Robotics, Inc. System and/or method for grasping objects
CN114896798A (zh) * 2022-05-20 2022-08-12 梅卡曼德(北京)机器人科技有限公司 碰撞检测方法、控制方法、抓取系统及计算机存储介质
DE102022121538A1 (de) 2022-08-25 2024-03-07 Bayerische Motoren Werke Aktiengesellschaft Verfahren zum Ablegen eines Objekts vermittels eines Roboters

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010142910A (ja) 2008-12-19 2010-07-01 Yaskawa Electric Corp ロボットシステム

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5908283A (en) * 1996-11-26 1999-06-01 United Parcel Service Of Americia, Inc. Method and apparatus for palletizing packages of random size and weight
CA2273729A1 (en) * 1998-07-14 2000-01-14 Bayer Corporation Robotics for transporting containers and objects within an automated analytical instrument and service tool for servicing robotics
JP2000042956A (ja) 1998-07-31 2000-02-15 Toshiba Mach Co Ltd 力制御ロボットの軌道生成方法および装置
US7266422B1 (en) * 2004-04-09 2007-09-04 Fanuc Robotics America, Inc. Automated palletizing cases having mixed sizes and shapes
DE102006049957A1 (de) * 2006-10-19 2008-04-24 Abb Ag System und Verfahren zur Kalibrierung einer Handhabungsvorrichtung
DE102009011296B4 (de) * 2009-03-02 2021-11-25 Kuka Roboter Gmbh Beladung eines Lademittels mit Paketen
DE102009011295B4 (de) * 2009-03-02 2020-11-05 Kuka Roboter Gmbh Automatisiertes Palletieren von Paketen
DE112011105151B4 (de) 2011-04-14 2018-09-13 Mitsubishi Electric Corp. Roboterkontrollvorrichtung
JP5144785B2 (ja) 2011-04-18 2013-02-13 ファナック株式会社 ロボットの着目部位と周辺物との干渉を予測する方法及び装置
JP2014065098A (ja) 2012-09-25 2014-04-17 Canon Inc ロボット装置及び多関節ロボットの軌道シミュレーション装置並びに軌道生成方法
JP5765355B2 (ja) * 2013-03-18 2015-08-19 株式会社安川電機 ロボットピッキングシステム及び被加工物の製造方法
JP5850004B2 (ja) * 2013-08-09 2016-02-03 株式会社安川電機 ロボット制御装置及びロボット制御方法
JP5788460B2 (ja) * 2013-11-05 2015-09-30 ファナック株式会社 バラ積みされた物品をロボットで取出す装置及び方法
JP6415190B2 (ja) * 2014-09-03 2018-10-31 キヤノン株式会社 ロボット装置、ロボット制御プログラム、記録媒体、およびロボット装置の制御方法
JP6088563B2 (ja) 2015-02-10 2017-03-01 ファナック株式会社 位置及び姿勢の変換演算機能を備えたワーク取出しロボットシステム、及びワーク取出し方法
WO2016181466A1 (ja) * 2015-05-11 2016-11-17 株式会社安川電機 分注システム、コントローラ及び制御方法
US10227176B2 (en) * 2016-09-05 2019-03-12 Kabushiki Kaisha Toshiba Picking apparatus
JP6614075B2 (ja) 2016-09-07 2019-12-04 株式会社ダイフク 物品積載設備
US10737817B2 (en) * 2016-09-26 2020-08-11 Yaskawa America, Inc. Method, apparatus, and system for robotic article handling
US9988216B1 (en) * 2016-12-16 2018-06-05 Amazon Technologies, Inc. Parallel vertical recirculating gantry system
JP6396516B2 (ja) * 2017-01-12 2018-09-26 ファナック株式会社 視覚センサのキャリブレーション装置、方法及びプログラム
DE102017002354B4 (de) 2017-03-10 2022-04-07 Swisslog Ag Transportieren von Objekten, insbesondere Kommissionieren von Waren, mithilfe eines Roboters
JP2018176334A (ja) * 2017-04-10 2018-11-15 キヤノン株式会社 情報処理装置、計測装置、システム、干渉判定方法および物品の製造方法
JP6586490B2 (ja) 2017-12-22 2019-10-02 西尾レントオール株式会社 人荷昇降装置付き移動昇降式足場並びにこれらを用いた施工方法及びこれらの設置方法
JP6823008B2 (ja) * 2018-05-18 2021-01-27 ファナック株式会社 バラ積みされたワークを取り出すロボットシステムおよびロボットシステムの制御方法
JP6833777B2 (ja) 2018-09-10 2021-02-24 株式会社東芝 物体ハンドリング装置及びプログラム
US10549928B1 (en) * 2019-02-22 2020-02-04 Dexterity, Inc. Robotic multi-item type palletizing and depalletizing

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010142910A (ja) 2008-12-19 2010-07-01 Yaskawa Electric Corp ロボットシステム

Also Published As

Publication number Publication date
US20200391385A1 (en) 2020-12-17
DE102020207368B4 (de) 2022-04-28
DE102020207368A1 (de) 2020-12-17
JP2020203342A (ja) 2020-12-24
US11559894B2 (en) 2023-01-24

Similar Documents

Publication Publication Date Title
JP7204587B2 (ja) 物体ハンドリング制御装置、物体ハンドリング装置、物体ハンドリング方法および物体ハンドリングプログラム
JP6807949B2 (ja) 干渉回避装置
KR102408914B1 (ko) 오류 검출 및 동적 패킹 메커니즘을 구비한 로봇 시스템
JP6833777B2 (ja) 物体ハンドリング装置及びプログラム
KR102325417B1 (ko) 패킹 메커니즘을 구비한 로봇 시스템
US9604364B2 (en) Picking apparatus and picking method
US10065311B1 (en) Singularity handling for robot jogging
KR20210149091A (ko) 상자들을 팔레타이징하기 위한 로봇 및 방법
WO2019056840A1 (zh) 码垛的控制装置、系统、方法和存储介质
JP2020040132A (ja) ハンド制御装置
US11701777B2 (en) Adaptive grasp planning for bin picking
CN114728412A (zh) 使用视觉数据的机器人的运动路径的优化
CN111906773A (zh) 具有协调转移机构的机器人系统
CN115703232A (zh) 具有基于图像的尺寸确定机制的机器人系统及其操作方法
US11865720B2 (en) Handling device and control device
JP7028092B2 (ja) 把持姿勢評価装置及び把持姿勢評価プログラム
CN111618852B (zh) 具有协调转移机构的机器人系统
Ivanov et al. Bin Picking Pneumatic-Mechanical Gripper for Industrial Manipulators
Mortimer et al. Searching Baxter's URDF robot joint and link tree for active serial chains
JP7398662B2 (ja) ロボット多面グリッパアセンブリ及びその操作方法
WO2023182345A1 (ja) ハンドリングシステム、情報処理システム、情報処理方法、プログラム、及び記憶媒体
US20230331416A1 (en) Robotic package handling systems and methods
CN115609569A (zh) 具有基于图像的尺寸确定机制的机器人系统及其操作方法
Răileanu et al. Using the Digital Twin Concept to Design and Validate a Robotized Bin Picking Process
CN116061192A (zh) 具有物体处理的机器人系统的系统和方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210813

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220531

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220705

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220801

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: 20221206

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221228

R150 Certificate of patent or registration of utility model

Ref document number: 7204587

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150