JP2007319997A - 教示装置および教示方法 - Google Patents

教示装置および教示方法 Download PDF

Info

Publication number
JP2007319997A
JP2007319997A JP2006153881A JP2006153881A JP2007319997A JP 2007319997 A JP2007319997 A JP 2007319997A JP 2006153881 A JP2006153881 A JP 2006153881A JP 2006153881 A JP2006153881 A JP 2006153881A JP 2007319997 A JP2007319997 A JP 2007319997A
Authority
JP
Japan
Prior art keywords
workpiece
robot hand
grippable
gripping
workpieces
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.)
Granted
Application number
JP2006153881A
Other languages
English (en)
Other versions
JP4811136B2 (ja
Inventor
Yasushi Kanazawa
泰 金沢
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.)
Nissan Motor Co Ltd
Original Assignee
Nissan Motor Co Ltd
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 Nissan Motor Co Ltd filed Critical Nissan Motor Co Ltd
Priority to JP2006153881A priority Critical patent/JP4811136B2/ja
Publication of JP2007319997A publication Critical patent/JP2007319997A/ja
Application granted granted Critical
Publication of JP4811136B2 publication Critical patent/JP4811136B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)

Abstract

【課題】複数のワークの把持位置を共通化することにより、ピッキングロボットへの教示工数を低減することが可能な教示装置を提供する。
【解決手段】整列されている複数のワークそれぞれについて、ロボットハンドによる把持可能位置を算出する算出手段と、ワーク毎に算出される少なくとも一つの把持可能位置のうち、より多数のワークに共通する把持可能位置を、当該把持可能位置が共通するワークをロボットハンドが把持する際の把持位置に決定する決定手段と、を有する。
【選択図】図4

Description

本発明は、教示装置および教示方法に関する。特に、本発明は、整列されている複数のワークの把持位置を決定する教示装置および教示方法に関する。
近年、車両の組立工程において、サプライヤからの供給部品を生産順序に並べ替え、組立ラインに同期させて供給するロットピッキングが実施されている。種々のワークおよび棚に対応するように、ピッキング作業を自動化する手法としては、ピッキングロボットにピッキング動作を教示する技術が知られている(たとえば、特許文献1)。
しかしながら、ピッキングロボットにピッキング動作を教示する一般的な教示装置では、ワーク毎に2点の把持位置が指定されるため、複数のワークの把持位置がそれぞれ異なる場合がある。したがって、異なる把持位置でワークを把持するピッキング動作をピッキングロボットに教示するため、教示工数が膨大になるという問題がある。
特開平11−058279号公報
本発明は、上述した問題を解決するためになされたものである。したがって、本発明の目的は、複数のワークの把持位置を共通化することにより、ピッキングロボットへの教示工数を低減することが可能な教示装置および教示方法を提供することである。
本発明の上記目的は、下記の手段によって達成される。
本発明の教示装置は、整列されている複数のワークそれぞれについて、ロボットハンドによる把持可能位置を算出する算出手段と、前記ワーク毎に算出される把持可能位置のうち、より多数のワークに共通する把持可能位置を、当該把持可能位置が共通するワークを前記ロボットハンドが把持する際の把持位置に決定する決定手段と、を有することを特徴とする。
本発明の教示方法は、整列されている複数のワークそれぞれについて、ロボットハンドによる把持可能位置を算出する段階と、前記ワーク毎に算出される把持可能位置のうち、より多数のワークに共通する把持可能位置を、当該把持可能位置が共通するワークを前記ロボットハンドが把持する際の把持位置に決定する段階と、を有することを特徴とする。
本発明の教示装置および教示方法によれば、整列されている複数のワークの把持位置が共通化されるため、ロボットハンドにピッキング動作を教示する際の把持位置の数が低減される。その結果、ピッキングロボットへの教示工数が低減される。
以下、図面を参照して、本発明の実施の形態を説明する。本実施の形態の教示装置は、部品箱中に整列されているワーク(部品)のピッキング動作をピッキングロボットにオフライン教示する際に、整列されている複数のワークの把持位置を決定するものである。決定された把持位置をロボットハンドが把持するように、たとえば、三次元データ上で仮想ロボットを動作させることにより、教示データ、すなわち、実際のピッキングロボットを動作させる動作プログラムが作成される。仮想ロボットを動作させて教示データを作成する処理自体は、一般的なオフライン教示技術であるため、詳細な説明は省略する。
図1は、本発明の一実施の形態における教示装置によってオフライン教示されるピッキングロボットを示す図である。図1に示されるとおり、本実施の形態におけるピッキングロボット100は、部品箱500に収容されているワークを把持するものである。ピッキングロボット100は、ロボット本体部110およびロボット本体部110の先端部に設けられたロボットハンド120を備え、制御装置300によって制御される。ピッキングロボット100は、教示装置400によって作成された教示データに基づいて制御される。また、ロボットハンド120の近傍には、カメラ200が設けられていて、カメラ200によって取得される画像データに基づいて、ロボットハンド120の位置および姿勢が補正される。なお、ピッキングロボット100自体は、一般的な多関節ロボットであるため、詳細な説明は省略する。また、図2に示されるとおり、本実施の形態では、同一形状のワークが平積み整列された状態で、部品箱500に収納されている。図2では、3つの同一形状のワークが一の方向に沿って同一向きに整列されている。
図3は、本発明の一実施の形態における教示装置の概略構成を示すブロック図である。図3に示されるとおり、本実施の形態における教示装置400は、CPU410、RAM420、ROM430、ハードディスク440、インタフェース450、入力部460、および表示部470を有する。これらの各部は、バスを介して相互に接続されている。
CPU410は、種々の演算および制御を実行するものである。CPU410は、算出部(算出手段)、決定部(決定手段)、および集計部(集計手段)として機能する。
ここで、算出部は、整列されている複数のワークそれぞれについて、ロボットハンドによる把持可能位置を算出するものである。決定部は、ワーク毎に算出される少なくとも一つの把持可能位置のうち、より多数のワークに共通する把持可能位置を、当該把持可能位置が共通するワークをロボットハンドが把持する際の把持位置に決定するものである。集計部は、算出された把持可能位置毎に、当該把持可能位置が共通するワークの数を集計するものである。なお、各部の具体的な処理内容については、後述する。
RAM420は、ワーク毎に算出される把持可能位置および把持可能位置が共通するワーク数などを一時的に記憶するものであり、ROM430は、制御プログラムおよびパラメータなどを予め記憶するものである。
ハードディスク440は、整列されている複数のワークそれぞれについて、ロボットハンドによる把持可能位置を算出する算出プログラム、ワーク毎に算出される少なくとも一つの把持可能位置のうち、より多数のワークに共通する把持可能位置を、当該把持可能位置が共通するワークをロボットハンドが把持する際の把持位置に決定する決定プログラム、および算出された把持可能位置毎に、当該把持可能位置が共通するワークの数を集計する集計プログラムを格納する。
インタフェース450は、ワークおよびピッキングロボットのCADデータを外部から受信するとともに、教示データを制御装置300に送信する。
入力部460は、たとえば、キーボード、タッチパネル、およびマウスなどのポインティングデバイスであり、表示部470は、たとえば、液晶ディスプレイおよびCRTディスプレイなどである。
以上のとおり構成される本実施の形態の教示装置によれば、整列されている複数のワークそれぞれについて、ロボットハンドによる把持可能位置が算出され、より多数のワークに共通する把持可能位置が、ロボットハンドがワークを把持する際の把持位置に決定される。以下、本実施の形態における教示方法について詳細に説明する。
図4は、本実施の形態の教示装置における教示処理を説明するためのフローチャートである。なお、上述したとおり、以下の処理は、ワークおよびロボットハンドなどの三次元データを用いて、オフラインで実行される。
本実施の形態における教示処理では、まず、ワーク毎に把持位置候補が算出される(ステップS101)。より具体的には、ワークの三次元データから取得されるワークの輪郭線に基づいて、ロボットハンドの指部がワークを挟持することができる把持位置候補が設定される。本実施の形態では、ステップS101に示す処理で算出された把持位置候補が、後続するステップS102〜S104に示す処理を通じて評価され、評価内容を満足する把持位置候補に限定される。その結果、ロボットハンドによるワークの把持可能位置が算出される。ステップS101に示す把持位置候補設定処理についての詳細な説明は後述する。
次に、ステップS101に示す処理で算出された把持位置候補に対して、ロボットハンドがワークの他の部分と干渉するか否かが評価される(ステップS102)。より具体的には、ロボットハンドが、ステップS101の処理で算出される一の把持位置候補を把持する場合に、ロボットハンドが把持位置を除くワークの他の部分と干渉するか否かが判断される。ステップS102に示す第1の干渉評価処理によれば、ステップS101に示す処理で算出された把持位置候補が、ロボットハンドとワークの他の部分とが干渉しない把持位置候補にさらに限定される。ステップS102に示す第1の干渉評価処理についての詳細な説明は後述する。
次に、ステップS102に示す処理で限定された把持位置候補に対して、ロボットハンドからワークが落下するか否かが評価される(ステップS103)。より具体的には、ロボットハンドが、ステップS102に示す処理で限定された一の把持位置候補を把持して持ち上げる際に、ロボットハンドからワークが落下するか否かが判断される。ステップS103に示す落下評価処理によれば、ステップS102に示す処理で限定された把持位置候補が、ワークが落下しない把持位置候補にさらに限定される。ステップS103に示す落下評価処理についての詳細な説明は後述する。
次に、ステップS103に示す処理で限定された把持位置候補に対して、ロボットハンドがワークの周辺部と干渉するか否かが評価される(ステップS104)。より具体的には、ロボットハンドが、ステップS103に示す処理で限定された一の把持位置候補を把持する際に、ロボットハンドが他のワークおよび部品箱の壁部などと干渉するか否かが判断される。ステップS104に示す第2の干渉評価処理によれば、ステップS103に示す処理で限定された把持位置候補が、ロボットハンドとワークの周辺部とが干渉しない把持位置候補にさらに限定される。ステップS104に示す第2の干渉評価処理についての詳細な説明は後述する。
以上のとおり、ステップS101〜S104に示す処理によれば、ワークの三次元データから把持位置候補が算出された後に、種々の評価に基づいて把持位置候補が限定される。その結果、部品箱に整列された状態で収容されている複数のワークに対して、ロボットハンドによるワークの把持可能位置がワーク毎に算出される。より具体的には、図5(A)に示されるとおり、たとえば、部品箱に収容される複数のワークに対して、それぞれ複数の把持可能位置が算出される。図5(A)では、6つの同一形状のワークが一の方向に沿って整列されていて、各ワークに対してそれぞれ2つの把持可能位置が算出されている。なお、6つのワークのうち一の方向に沿って連続する3つのワークは同一向きに整列されており、後続する3つのワークは反対向きに整列されている。
そして、ワーク毎に算出された複数の把持可能位置に対して、把持可能位置毎に当該把持可能位置が共通するワークの数が集計される(ステップS105)。より具体的には、たとえば、6つのワークに対して、図5(A)に示されるような把持可能位置(第1〜第3の把持可能位置)が算出される場合、図5(B)に示されるとおり、第1の把持可能位置が共通するワークの数が4つ、第2の把持可能位置が共通するワークの数が6つ、そして、第3の把持可能位置が共通するワークの数が2つという集計結果が得られる。
次に、把持可能位置が共通するワーク数の集計結果に基づいて、より多数のワークに共通する一の把持可能位置が、ロボットハンドが実際に把持する把持位置に決定される(ステップS106)。より具体的には、共通するワークの数が最も多い把持可能位置(たとえば、第2の把持可能位置)が、実際に把持される把持位置に決定される。
次に、すべてのワークに対して把持位置が決定されているか否かが判断される(ステップS107)。本実施の形態では、たとえば、ステップS106に示す処理で決定された一の把持位置がすべてのワークに共通するものでない場合、把持位置が未決定のワークが存在することになる。
すべてのワークに対して把持位置が決定されている場合(ステップS107:YES)、処理が終了される。本実施の形態では、たとえば、図5(B)および図5(C)に示されるとおり、第2の把持可能位置がワークの把持位置として決定され、処理が終了される。一方、すべてのワークに対して把持位置が決定されていない場合(ステップS107:NO)、すべてのワークに対して把持位置が決定されるまで、ステップS106以下の処理が繰り返される。より具体的には、たとえば、2番目に共通するワークの数が多い把持可能位置が次の把持位置に決定され、以下、共通するワークの数が多い把持可能位置から順次に、把持位置が未決定のワークがなくなるまで、処理が繰り返される。
以上のとおり、ステップS105〜ステップS107に示す処理によれば、ワーク毎に算出される把持可能位置から、より多数のワークに共通する把持可能位置が、ロボットハンドがワークを実際に把持する把持位置に決定される。より具体的には、集計されるワークの数にしたがって、共通するワークの数が多い把持可能位置から順次に、ロボットハンドがワークを把持する際の把持位置に決定される。そして、このような構成にすると、把持位置が共通化されることにより把持位置の数が低減され、ピッキングロボットを動作させる基準経路の種類などが低減される。その結果、ピッキングロボットの動作プログラム数も低減されることにより、たとえば、ピッキングロボット実機での動作プログラムの確認作業工数といった教示工数が低減される。
以下、図6〜図18を参照して、図4のステップS101〜S104に示す各処理について詳細に説明する。上述したとおり、図4のステップS101〜S104に示す処理は、ワーク毎に把持可能位置を算出するものである。
図6は、図4のステップS101に示す把持位置候補設定処理を説明するためのフローチャートである。上述したとおり、以下の処理に先立って、複数のワークおよび当該ワークを収容する部品箱500のデータが、たとえば、CADデータから取得される。また、以下の処理では、CPU410は、ワークの輪郭線を取得する取得部(取得手段)、輪郭線から少なくとも一対の平行線を抽出する抽出部(抽出手段)、および平行線の間隔とロボットハンドの開き量とを比較する第1の比較部(第1の比較手段)として機能する。
本実施の形態の把持位置候補設定処理では、まず、ロボットハンドのワークへのアプローチ方向が決定される(ステップS201)。本実施の形態では、ロボットハンドは、ワークが整列して収容される部品箱の真上から部品箱に進入するため、図7に示されるとおり、部品箱の底面に垂直な方向がアプローチ方向に決定される。
次に、ワークの三次元データからワークの輪郭線が取得される(ステップS202)。本実施の形態では、図8に示されるとおり、ワークの三次元データを上方から見た場合の輪郭線が取得される。
次に、取得されたワークの輪郭線から、少なくとも一対の平行線が抽出される(ステップS203)。本実施の形態では、まず、輪郭線から一本の直線が抽出され、当該直線からワークの内側に向かって、対となる直線があるか否かが判断されることにより、少なくとも一対の平行線が抽出される。なお、平行線対を構成する直線の長さが互いに異なる場合は、短い方の直線を基準に平行線対を抽出する。その結果、図9に示されるとおり、たとえば、複数の平行線対(第1〜第11の平行線対)が抽出される。
次に、ステップS203の処理で抽出された少なくとも一つの平行線対から一の平行線対が選択され(ステップS204)、選択された平行線の間隔が算出される(ステップS205)。より具体的には、平行線対を構成する一の直線と他の直線との間の距離が算出される。そして、算出された平行線の間隔が、ロボットハンドの指部の開き量未満か否かが判断される(ステップS206)。すなわち、抽出された平行線対をロボットハンドが把持することができるか否かが判断される。
平行線の間隔がロボットハンドの指部の開き量未満の場合(ステップS206:YES)、平行線対が把持位置設定候補として記憶され(ステップS207)、ステップS208以下の処理に移行する。一方、平行線の間隔がロボットハンドの指部の開き量よりも大きい場合(ステップS206:NO)、平行線対が把持位置設定候補として記憶されることなく、ステップS208以下の処理に移行する。
そして、ステップS208に示す処理では、抽出された他の平行線対があるか否かが判断される。抽出された他の平行線対がない場合(ステップS208:NO)、ステップS209以下の処理に移行する。一方、抽出された他の平行線対がある場合(ステップS208:YES)、抽出された他の平行線対がなくなるまで、ステップS204以下の処理が繰り返される。
以上のとおり、ステップS204〜S208に示す処理によれば、図10に示されるとおり、ロボットハンドの開き量未満の間隔を有する平行線対(第2〜第6、第8、および第10の平行線対)が把持位置設定候補として記憶される。言い換えれば、ロボットハンドが把持することが可能な平行線対の候補が算出される。
次に、記憶された平行線対に対して、把持位置候補が設定される(ステップS209)。本実施の形態では、図11に示されるとおり、記憶された平行線対を構成する2本の直線上の対応する位置に、所定の間隔で少なくとも一つの把持位置候補が設定される。本実施の形態では、たとえば、平行線対を構成する直線の長さが指部の幅よりも短い場合、直線の中点に把持位置候補が設定され、直線の長さが指部の幅よりも長い場合、指部の幅に基づいて、所定の間隔(たとえば、指部の幅と同一の間隔)で複数の把持位置候補が設定される。
以上のとおり、図6に示すフローチャートによれば、ワークの輪郭線から平行線対が抽出され、ロボットハンドの開き量未満の平行線対に対して把持位置候補が設定される。
図12は、図4のステップS102に示す第1の干渉評価処理を説明するためのフローチャートである。このとき、CPU410は、ロボットハンドが把持対象のワークと干渉するか否かを判断する第1の干渉判断部(第1の干渉判断手段)として機能する。
本実施の形態の第1の干渉評価処理では、まず、図6に示す把持位置候補設定処理で設定された把持位置候補の中から、一の把持位置候補が選択される(ステップS301)。次に、選択された把持位置候補をロボットハンドが把持する際に、ロボットハンドがワークの他の部分と干渉するか否かが判断される(ステップS302)。本実施の形態では、たとえば、ロボットハンドの指部の三次元データを、ワークの三次元データ上の把持位置候補に近接させ、ワークとロボットハンドの三次元データの重なり部分を検出することにより、ワークの他の部分とロボットハンドの干渉とが判断される。
ロボットハンドがワークの他の部分と干渉する場合(ステップS302:YES)、設定された把持位置候補が候補から除外され(ステップS303)、ステップS304以下の処理に移行する。一方、ロボットハンドがワークの他の部分と干渉しない場合(ステップS302:NO)、設定された把持位置候補が候補から除外されることなく、ステップS304以下の処理に移行する。
次に、ステップS304に示す処理では、設定された他の把持位置候補があるか否かが判断される。設定された他の把持位置候補がない場合(ステップS304:NO)、処理が終了される。一方、設定された他の把持位置候補がある場合(ステップS304:YES)、設定された他の把持位置候補がなくなるまで、ステップS301以下の処理が繰り返される。
以上のとおり、図12に示すフローチャートによれば、把持位置候補をロボットハンドが把持する際の、ロボットハンドとワークとの干渉が評価される。その結果、図13に示されるとおり、ロボットハンドとワークとが干渉すると判断された把持位置候補(第2〜第6の平行線対に設定された把持位置候補)は、候補から除外される。言い換えれば、把持位置候補は、ロボットハンドがワークと干渉しない把持位置候補(第8および第10の平行線対に設定された把持位置候補)に限定される。
図14は、図4のステップS103に示す落下評価処理を説明するためのフローチャートである。以下の処理では、CPU410は、重心位置算出部(重心位置算出手段)、力算出部(力算出手段)、摩擦力算出部(摩擦力算出手段)、第2の比較部(第2の比較手段)、および落下判断部(落下判断手段)として機能する。ここで、重心位置算出部は、ワークの重心位置を算出するものである。力算出部は、ワークの重心位置と把持位置との位置関係と、ワークの重量とに基づいて、当該把持位置に作用する力を算出するものである。摩擦力算出部は、ロボットハンドとワークとの間に作用する静止摩擦力を算出するものである。第2の比較部は、把持位置に作用する力と静止摩擦力とを比較するものである。落下判断部は、ロボットハンドからワークが落下するか否かを判断するものである。
本実施の形態の落下評価処理では、まず、ワークの重心位置が算出される(ステップS401)。ワークの重心位置は、たとえば、ワークの三次元データから算出される。ワークの三次元データから重心位置を算出する技術自体は、一般的な画像処理技術であるため、詳細な説明は省略する。
次に、一の把持位置候補が選択され(ステップS402)、選択された把持位置候補においてワークに作用する力が算出される(ステップS403)。より具体的には、たとえば、ハードディスク440にワークの重量が予め記憶されており、ステップS401の処理で算出されたワークの重心位置と把持位置候補との位置関係と、ワークの重量とから、把持位置候補に作用する力Wが算出される。
そして、算出された力Wが、ロボットハンドとワークとの間の静止摩擦力F未満か否かが判断される(ステップS404)。より具体的には、図15(A)に示されるとおり、ロボットハンドの把持力(仕様値:グロス値)、ロボットハンドの指部とワークとの接触面積、およびロボットハンドとワークとの間の静止摩擦係数から、ロボットハンドとワークとの間に作用する静止摩擦力Fが算出される。そして、静止摩擦係数Fと把持位置候補に作用する力Wとが比較される。なお、静止摩擦係数および接触面積は、予めハードディスク440に記憶されている。
把持位置候補に作用する力が静止摩擦係数よりも大きい場合(ステップS404:NO)、比較に用いられた把持位置候補が候補から除外され(ステップS405)、ステップS406以下の処理に移行する。一方、把持位置候補に作用する力が静止摩擦係数未満の場合(ステップS404:YES)、比較に用いられた把持位置候補が候補から除外されることなく、ステップS406以下の処理に移行する。
そして、ステップS406に示す処理では、他に把持位置候補があるか否かが判断される。他に把持位置候補がない場合(ステップS406:NO)、処理が終了される。一方、他に把持位置候補がある場合、他の把持位置候補がなくなるまで、ステップS402以下の処理が繰り返される。
以上のとおり、図14に示すフローチャートによれば、ロボットハンドがワークを持ち上げる際の、ロボットハンドからのワークの落下が評価される。その結果、図15(B)に示されるとおり、ワークがロボットハンドから落下すると判断された把持位置候補は、候補から除外される。言い換えれば、把持位置候補は、ロボットハンドからワークが落下することなく搬送されるものにさらに限定される。
図16は、図4のステップS104に示す第2の干渉評価処理を説明するためのフローチャートである。なお、上述したとおり、図16に示す第2の干渉評価処理では、図4のステップS102に示すロボットハンドとワークの他の部分との干渉を評価する第1の干渉評価処理とは異なり、ロボットハンドと把持対象のワークの周辺部との干渉が評価される。また、以下の処理では、CPU410は、ロボットハンドが把持対象のワークの周辺部と干渉するか否かを判断する第2の干渉判断部(第2の干渉判断手段)として機能する。
本実施の形態の第2の干渉評価処理では、まず、部品箱に整列されている複数のワークの中から一のワークが選択される(ステップS501)。次に、選択される一のワークに対して算出されている少なくとも一つの把持位置候補の中から、一の把持位置候補が選択される(ステップS502)。
そして、選択された把持位置候補をロボットハンドが把持する際に、ロボットハンドがワークの周辺部と干渉するか否かが判断される(ステップS503)。本実施の形態では、ロボットハンドの指部の三次元データを、ワークの三次元データ上の把持位置候補に近接させ、ワークの周辺部とロボットハンドの三次元データの重なり部分を検出することにより、ロボットハンドとワークの周辺部との干渉とが判断される。なお、ここでいうワークの周辺部とは、部品箱に収容されている他のワーク、部品箱の壁部510、および部品箱の仕切り板520などである。
ロボットハンドが把持対象のワークの周辺部と干渉する場合(ステップS503:YES)、評価に用いられた把持位置候補が候補から除外され(ステップS504)、ステップS505以下の処理に移行する。一方、ロボットハンドが把持対象のワークの周辺部と干渉しない場合(ステップS503:NO)、評価に用いられた把持位置候補が候補から除外されることなく、ステップS505以下の処理に移行する。
そして、ステップS505に示す処理では、他に把持位置候補があるか否かが判断される。選択されたワークに他の把持位置候補がある場合(ステップS505:YES)、選択されているワークについて、他の把持位置候補がなくなるまで、ステップS502以下の処理が繰り返される。一方、選択されたワークに他の把持位置候補がない場合(ステップS505:NO)、部品箱に他のワークが収容されているか否かが判断される(ステップS506)。
部品箱に他のワークがある場合(ステップS506:YES)、部品箱に他のワークがなくなるまで、ステップS501以下の処理が繰り返される。一方、部品箱に他のワークがない場合(ステップS506:NO)、処理が終了される。
以上のとおり、図16に示すフローチャートによれば、部品箱に収容されているすべてのワークに対して、ロボットハンドとワークの周辺部との干渉が評価される。その結果、図17に示されるとおり、ロボットハンドがワークの周辺部と干渉すると判断された把持位置候補(第3および第4の把持位置候補)は、候補から除外される。言い換えれば、把持位置候補は、ロボットハンドがワークの周辺部と干渉しない把持位置候補(第1および第2の把持位置候補)にさらに限定される。
そして、図4のステップS105以下の処理で説明したとおり、ワーク毎に算出された複数の把持可能位置に対して、把持可能位置毎に当該把持可能位置が共通するワークの数が集計され、集計されるワークの数にしたがって、共通するワークの数が多い把持可能位置から順次に、ロボットハンドがワークを把持する際の把持位置に決定される。図18に示されるとおり、共通するワークの数が同数の把持可能位置(第1および第2の把持可能位置)が算出される場合には、たとえば、番号の小さい把持可能位置、つまり、第1の把持可能位置が、把持位置に決定されることができる。そして、決定された把持位置に基づいて仮想ロボットが動作され、ピッキングロボットを実際に動作させるための教示データが作成される。
以上のとおり説明された本実施の形態は、以下の効果を奏する。
本実施の形態の教示装置は、整列されている複数のワークそれぞれについて、ロボットハンドによる把持可能位置を算出する算出部と、ワーク毎に算出される少なくとも一つの把持可能位置のうち、より多数のワークに共通する把持可能位置を、当該把持可能位置が共通するワークをロボットハンドが把持する際の把持可能位置に決定する決定部と、を有する。したがって、整列されている複数のワークの把持位置が共通化されるため、ロボットハンドにピッキング動作を教示する際の把持位置の数が低減される。その結果、たとえば、動作プログラム数が低減され、ピッキングロボットへの教示工数が低減される。さらに、教示工数が低減されることにより、把持精度が向上される。
本実施の形態の教示装置は、算出された把持可能位置毎に、当該把持可能位置が共通するワークの数を集計する集計部をさらに有し、決定部は、集計されるワークの数にしたがって、共通するワークの数が多い把持可能位置から順次に、ロボットハンドがワークを把持する際の把持位置に決定する。したがって、ピッキングロボットに教示する把持位置の数を最少化することができる。
本実施の形態の教示装置は、ワークの輪郭線を取得する取得部と、取得されるワークの輪郭線から、少なくとも一対の平行線を抽出する抽出部と、をさらに有し、算出部は、抽出される平行線に基づいて、把持可能位置を算出する。したがって、ロボットハンドがワークを確実に把持することができる。さらに、平行線対がワークの輪郭線から抽出されるため、把持可能位置をもれなく抽出することができる。
本実施の形態の教示装置は、抽出される平行線の間隔とロボットハンドの開き量とを比較する第1の比較部をさらに有し、算出部は、平行線の間隔がロボットハンドの開き量未満の場合、平行線に基づいて、把持可能位置を算出する。したがって、ロボットハンドの開き量から把持可能位置が算出され、把持可能位置が精査される。
本実施の形態の教示装置は、ロボットハンドがワークを把持する際に、当該ロボットハンドが把持対象のワークと干渉するか否かを判断する第1の干渉判断部をさらに有し、算出部は、ロボットハンドがワークと干渉しない場合、当該ロボットハンドによるワークの把持位置を、把持可能位置として算出する。したがって、単体のワークに対して、ロボットハンドの干渉から、把持可能位置を算出することができる。
本実施の形態の教示装置は、ロボットハンドがワークを把持する際に、当該ロボットハンドが把持対象のワークの周辺部と干渉するか否かを判断する第2の干渉判断部をさらに有し、算出部は、ロボットハンドがワークの周辺部と干渉しない場合、当該ロボットハンドによるワークの把持位置を、把持可能位置として算出する。したがって、荷姿状態のワークに対して、把持可能位置を算出することができる。
本実施の形態の教示装置は、ロボットハンドからワークが落下するか否かを判断する落下判断部をさらに有し、算出部は、ロボットハンドからワークが落下しない場合、当該ロボットハンドによるワークの把持位置を、把持可能位置として算出する。したがって、ワークを搬送可能な把持可能位置を算出することができる。さらに、ワークが落下するか否かがピッキング動作前に評価されるため、ピッキングの成功率が向上される。
本実施の形態の教示装置は、ワークの重心位置を算出する重心位置算出部と、算出されたワークの重心位置と把持位置との位置関係と、ワークの重量とに基づいて、当該把持位置に作用する力を算出する力算出部と、ロボットハンドとワークとの間に作用する静止摩擦力を算出する摩擦力算出部と、把持位置に作用する力と静止摩擦力とを比較する第2の比較部と、をさらに有し、落下判断部は、把持位置に作用する力が静止摩擦力未満の場合、ワークが落下しないと判断する。したがって、ワークが落下するか否かを正確に評価することができるため、ピッキング成功率がさらに向上される。
本実施の形態の教示方法は、整列されている複数のワークそれぞれについて、ロボットハンドによる把持可能位置を算出する段階と、ワーク毎に算出される把持可能位置のうち、より多数のワークに共通する把持可能位置を、当該把持位置が共通するワークをロボットハンドが把持する際の把持位置に決定する段階と、を有する。したがって、整列されている複数のワークの把持位置が共通化されるため、ロボットハンドにピッキング動作を教示する際の把持位置の数が低減される。その結果、たとえば、動作プログラム数が低減され、ピッキングロボットへの教示工数が低減される。さらに、教示工数が低減されることにより、把持精度が向上される。
以上のとおり、本実施の形態において、本発明の教示装置および教示方法を説明した。しかしながら、本発明は、その技術思想の範囲内において当業者が適宜に追加、変形、省略することができることはいうまでもない。
たとえば、本実施の形態では、ロボットハンドの開き量と平行線の間隔とが比較された。しかしながら、ロボットハンドの開き量に対して、余裕代を持たせ、ロボットハンドの開き量から余裕代を差し引いた値と平行線の間隔とが比較されることができる。同様に、静止摩擦係数と把持位置に作用する力とが比較される場合、静止摩擦係数から余裕代を差し引いた値と、把持位置に作用する力とが比較されることができる。
本発明の一実施の形態における教示装置によってオフライン教示されるピッキングロボットを示す図である。 図1に示す部品箱およびワークを説明するための図である。 図1に示す教示装置の概略構成を示すブロック図である。 図1に示す教示装置における教示処理を説明するためのフローチャートである。 図4のステップS105〜S107に示す把持位置決定処理を説明するための図である。 図4のステップS101に示す把持位置候補設定処理を説明するためのフローチャートである。 図6のステップS201に示すアプローチ方向決定処理を説明するための図である。 図6のステップS202に示すワーク輪郭線取得処理を説明するための図である。 図6のステップS203に示す平行線対抽出処理を説明するための図である。 図6のステップS204〜S208に示す平行線対記憶処理を説明するための図である。 図6のステップS209に示す設定処理を説明するための図である。 図4のステップS102に示す第1の干渉評価処理を説明するためのフローチャートである。 図12に示す第1の干渉評価処理を説明するための図である。 図4のステップS103に示す落下評価処理を説明するためのフローチャートである。 図14に示す落下評価処理を説明するための図である。 図4のステップS104に示す第2の干渉評価処理を説明するためのフローチャートである。 図16に示す第2の干渉評価処理を説明するための図である。 図4のステップS105〜S107に示す把持位置決定処理を説明するための図である。
符号の説明
100 ピッキングロボット、
200 カメラ、
300 制御装置、
400 教示装置、
500 部品箱。

Claims (9)

  1. 整列されている複数のワークそれぞれについて、ロボットハンドによる把持可能位置を算出する算出手段と、
    前記ワーク毎に算出される少なくとも一つの把持可能位置のうち、より多数のワークに共通する把持可能位置を、当該把持可能位置が共通するワークを前記ロボットハンドが把持する際の把持位置に決定する決定手段と、を有することを特徴とする教示装置。
  2. 前記算出された把持可能位置毎に、当該把持可能位置が共通するワークの数を集計する集計手段をさらに有し、
    前記決定手段は、前記集計されるワークの数にしたがって、共通するワークの数が多い把持可能位置から順次に、前記把持位置に決定することを特徴とする請求項1に記載の教示装置。
  3. 前記ワークの輪郭線を取得する取得手段と、
    前記取得されるワークの輪郭線から、少なくとも一対の平行線を抽出する抽出手段と、をさらに有し、
    前記算出手段は、前記抽出される平行線に基づいて、前記把持可能位置を算出することを特徴とする請求項1に記載の教示装置。
  4. 前記抽出される平行線の間隔と前記ロボットハンドの開き量とを比較する第1の比較手段をさらに有し、
    前記算出手段は、前記平行線の間隔が前記ロボットハンドの開き量未満の場合、前記平行線に基づいて、前記把持可能位置を算出することを特徴とする請求項3に記載の教示装置。
  5. 前記ロボットハンドがワークを把持する際に、当該ロボットハンドが把持対象のワークと干渉するか否かを判断する第1の干渉判断手段をさらに有し、
    前記算出手段は、前記ロボットハンドが前記ワークと干渉しない場合、当該ロボットハンドによるワークの把持位置を、前記把持可能位置として算出することを特徴とする請求項1に記載の教示装置。
  6. 前記ロボットハンドがワークを把持する際に、当該ロボットハンドが把持対象のワークの周辺部と干渉するか否かを判断する第2の干渉判断手段をさらに有し、
    前記算出手段は、前記ロボットハンドが前記ワークの周辺部と干渉しない場合、当該ロボットハンドによるワークの把持位置を、前記把持可能位置として算出することを特徴とする請求項1に記載の教示装置。
  7. 前記ロボットハンドからワークが落下するか否かを判断する落下判断手段をさらに有し、
    前記算出手段は、前記ロボットハンドからワークが落下しない場合、当該ロボットハンドによるワークの把持位置を、前記把持可能位置として算出することを特徴とする請求項1に記載の教示装置。
  8. 前記ワークの重心位置を算出する重心位置算出手段と、
    前記算出されたワークの重心位置と前記把持位置との位置関係と、前記ワークの重量とに基づいて、当該把持位置に作用する力を算出する力算出手段と、
    前記ロボットハンドと前記ワークとの間に作用する静止摩擦力を算出する摩擦力算出手段と、
    前記把持位置に作用する力と前記静止摩擦力とを比較する第2の比較手段と、をさらに有し、
    前記落下判断手段は、前記把持位置に作用する力が前記静止摩擦力未満の場合、前記ワークが落下しないと判断することを特徴とする請求項7に記載の教示装置。
  9. 整列されている複数のワークそれぞれについて、ロボットハンドによる把持可能位置を算出する段階と、
    前記ワーク毎に算出される把持可能位置のうち、より多数のワークに共通する把持可能位置を、当該把持可能位置が共通するワークを前記ロボットハンドが把持する際の把持位置に決定する段階と、を有することを特徴とする教示方法。
JP2006153881A 2006-06-01 2006-06-01 教示装置および教示方法 Expired - Fee Related JP4811136B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006153881A JP4811136B2 (ja) 2006-06-01 2006-06-01 教示装置および教示方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006153881A JP4811136B2 (ja) 2006-06-01 2006-06-01 教示装置および教示方法

Publications (2)

Publication Number Publication Date
JP2007319997A true JP2007319997A (ja) 2007-12-13
JP4811136B2 JP4811136B2 (ja) 2011-11-09

Family

ID=38853214

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006153881A Expired - Fee Related JP4811136B2 (ja) 2006-06-01 2006-06-01 教示装置および教示方法

Country Status (1)

Country Link
JP (1) JP4811136B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012066819A1 (ja) * 2010-11-17 2012-05-24 三菱電機株式会社 ワーク取り出し装置
JP2019153605A (ja) * 2018-02-28 2019-09-12 オムロン株式会社 落下ばらつき予測装置、方法、プログラム、及びロボットシステム
US10589422B2 (en) 2017-01-11 2020-03-17 Fanuc Corporation Article conveying apparatus

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6478103A (en) * 1987-09-19 1989-03-23 Nissan Motor Work recognizing method by image processing
JPH04167104A (ja) * 1990-10-31 1992-06-15 Sanyo Electric Co Ltd ロボットの作業計画装置
JPH05104465A (ja) * 1991-10-09 1993-04-27 Sanyo Electric Co Ltd ロボツトの作業計画装置
JPH05228780A (ja) * 1992-02-19 1993-09-07 Daikin Ind Ltd 把持対象ワークの把持位置教示方法
JPH07319525A (ja) * 1994-05-25 1995-12-08 Nippondenso Co Ltd 山積み部品の高速ピッキング装置
JPH1158279A (ja) * 1997-08-22 1999-03-02 Meidensha Corp 把持位置姿勢教示装置及びその処理を実現するソフトウェアを記録した記録媒体
JPH11198076A (ja) * 1998-01-05 1999-07-27 Kubota Corp 保持位置判別装置及び仕分け装置
JP2001315079A (ja) * 2000-05-01 2001-11-13 Ueda Japan Radio Co Ltd 試験管搬送装置
JP2005169564A (ja) * 2003-12-11 2005-06-30 Toyota Motor Corp ロボットによる任意形状物体の把持方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6478103A (en) * 1987-09-19 1989-03-23 Nissan Motor Work recognizing method by image processing
JPH04167104A (ja) * 1990-10-31 1992-06-15 Sanyo Electric Co Ltd ロボットの作業計画装置
JPH05104465A (ja) * 1991-10-09 1993-04-27 Sanyo Electric Co Ltd ロボツトの作業計画装置
JPH05228780A (ja) * 1992-02-19 1993-09-07 Daikin Ind Ltd 把持対象ワークの把持位置教示方法
JPH07319525A (ja) * 1994-05-25 1995-12-08 Nippondenso Co Ltd 山積み部品の高速ピッキング装置
JPH1158279A (ja) * 1997-08-22 1999-03-02 Meidensha Corp 把持位置姿勢教示装置及びその処理を実現するソフトウェアを記録した記録媒体
JPH11198076A (ja) * 1998-01-05 1999-07-27 Kubota Corp 保持位置判別装置及び仕分け装置
JP2001315079A (ja) * 2000-05-01 2001-11-13 Ueda Japan Radio Co Ltd 試験管搬送装置
JP2005169564A (ja) * 2003-12-11 2005-06-30 Toyota Motor Corp ロボットによる任意形状物体の把持方法

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012066819A1 (ja) * 2010-11-17 2012-05-24 三菱電機株式会社 ワーク取り出し装置
CN103221188A (zh) * 2010-11-17 2013-07-24 三菱电机株式会社 工件取出装置
JPWO2012066819A1 (ja) * 2010-11-17 2014-05-12 三菱電機株式会社 ワーク取り出し装置
JP5558585B2 (ja) * 2010-11-17 2014-07-23 三菱電機株式会社 ワーク取り出し装置
US9089966B2 (en) 2010-11-17 2015-07-28 Mitsubishi Electric Corporation Workpiece pick-up apparatus
DE112011103794B4 (de) 2010-11-17 2019-01-24 Mitsubishi Electric Corporation Aufnehmervorrichtung für Werkstücke
US10589422B2 (en) 2017-01-11 2020-03-17 Fanuc Corporation Article conveying apparatus
JP2019153605A (ja) * 2018-02-28 2019-09-12 オムロン株式会社 落下ばらつき予測装置、方法、プログラム、及びロボットシステム

Also Published As

Publication number Publication date
JP4811136B2 (ja) 2011-11-09

Similar Documents

Publication Publication Date Title
CN109318226B (zh) 机器人控制装置、机器人控制方法及存储介质
JP6807949B2 (ja) 干渉回避装置
JP4621789B2 (ja) 物品搬送ロボットシステム
US9469035B2 (en) Component supply apparatus
JP6036662B2 (ja) ロボットシミュレーション装置、プログラム、記録媒体及び方法
JP2020203342A (ja) 物体ハンドリング制御装置、物体ハンドリング装置、物体ハンドリング方法および物体ハンドリングプログラム
JP2014161965A (ja) 物品取り出し装置
TWI649171B (zh) 機器人程式之產生裝置及產生方法
CN110539299B (zh) 机器手作业方法、控制器以及机器手***
CN110520259A (zh) 控制装置、拾取***、物流***、程序以及控制方法
EP3822048B1 (en) Gripping attitude evaluating device, and gripping attitude evaluating program
WO2019167765A1 (ja) シミュレーション装置、方法、及びプログラム
JP2018192592A (ja) ワーク取出しシステム
CN110494258A (zh) 控制装置、拾取***、物流***、程序、控制方法以及生产方法
JP4811136B2 (ja) 教示装置および教示方法
JP2009190113A (ja) ロボットシミュレーション装置
JP6988573B2 (ja) シミュレーション装置、シミュレーション方法及びシミュレーションプログラム
JP2020110885A (ja) 経路生成装置、経路生成方法、及び経路生成プログラム
CN112238452A (zh) 机械臂路径规划方法、装置、工控设备及存储介质
JP6456557B1 (ja) 把持位置姿勢教示装置、把持位置姿勢教示方法及びロボットシステム
JP3956063B2 (ja) 移動物体のハンドリング方法
JP7464710B2 (ja) ワーク取出装置
JP2020110884A (ja) ロボット制御装置、ロボット制御方法、及びロボット制御プログラム
JP7348001B2 (ja) ロボットシミュレーション装置
Wörn et al. Force approximation and tactile sensor prediction for reactive grasping

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090325

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101125

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110808

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140902

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees