説明

物体把持制御方法及び装置

【課題】把持手段が被把持部材の周囲に置かれた他の被把持部材と干渉しないように、周囲がクリアな被把持部材から順番に把持を行う。
【解決手段】S110で被把持部材の形状・位置・姿勢を認識する。
S120で周囲の被把持部材に把持手段が干渉しないような把持手段の姿勢範囲を計算する。S130で把持可能な被把持部材のなかから、前記姿勢範囲が大きいものを選択する。
S140で把持可能な被把持部材が残っているか判定し、残っていればS150に移行し、残っていなければ作業を終了する。
S150で選択された被把持部材を把持するようにマニピュレータを制御する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、無作為に置かれた複数の被把持部材を把持する順序を自律的に設定するための物体把持制御方法及び装置に関するものである。
【背景技術】
【0002】
従来、無作為に置かれた複数の被把持部材を、把持手段を持つマニピュレータによって把持、移送する作業において、被把持部材を把持する順序は作業者が判断して、マニピュレータに指示する方法を採っているため作業効率が悪い。
【0003】
これに対し特許文献1において、被把持部材間の重心位置の平均値である平均重心位置を計算し、被把持部材の重心位置と平均重心位置との距離を当該被把持部材の離散度として定義し、これを指標として把持順序を自律的に決定する方法が提案されている。
【0004】
即ち、離散度の値が最大となる被把持部材が1つであれば、予め設定された安定把持位置で把持できるかをチェックしてから把持を実行する。また、離散度の値が最大となる被把持部材が複数存在すれば、各被把持部材を把持する際のマニピュレータの可操作度を計算し、可操作度が最大となる被把持部材について、予め設定された安定把持位置で把持できるかをチェックしてから把持を実行する。従って、この技術によればロボットが自律的に把持順序を決定することができる。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開平4−146090号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
無作為に置かれた複数の被把持部材から把持を試みる場合に、把持手段の位置決め誤差などによって被把持部材の周囲に置かれた他の被把持部材と干渉(接触)する虞れがある。これを低減するには、周囲がクリアな被把持部材から順番に把持、移送することが望ましい。しかし、上述の従来技術においては、被把持部材間の重心位置関係或いはマニピュレータの可操作度を基に把持順序が決定されるため、周囲がクリアな被把持部材から順番に把持、移送することができない場合がある。
【0007】
本発明の目的は、上述の問題点を解消し、周囲がクリアな被把持部材から把持を行うように、把持順序を自律的に設定する物体把持制御方法及び装置を提供することにある。
【課題を解決するための手段】
【0008】
上記目的を達成するための本発明に係る物体把持制御方法は、複数の被把持部材を把持手段によって個々に把持、移送する作業において、被把持部材認識手段により前記複数の被把持部材の形状・位置・姿勢を認識する被把持部材認識ステップと、把持可能姿勢範囲設定手段により前記把持手段及び前記被把持部材の形状・位置・姿勢に基づいて前記被把持部材のそれぞれについて、他の被把持部材と前記把持手段が干渉しない姿勢範囲を把持可能姿勢範囲として設定する把持可能姿勢範囲設定ステップと、把持対象設定手段により設定された前記把持可能姿勢範囲が所定の閾値よりも大きい被把持部材を把持対象として設定する把持対象設定ステップとを備えることを特徴とする。
【0009】
また、本発明に係る物体把持制御方法は、複数の被把持部材を把持手段によって個々に把持、移送する作業において、被把持部材認識手段により前記複数の被把持部材の形状・位置・姿勢を認識する被把持部材認識ステップと、把持禁止範囲設定手段により前記把持手段及び前記複数の被把持部材の形状・位置・姿勢に基づいて前記被把持部材のそれぞれに対して、他の被把持部材と前記把持手段とが干渉し得る範囲を把持禁止範囲として設定する把持禁止範囲設定ステップと、把持対象設定手段により設定された前記把持禁止範囲が所定の閾値よりも小さい前記被把持部材を把持対象として設定する把持対象設定ステップとを備えることを特徴とする。
【0010】
更に、本発明に係る物体把持制御装置は、複数の被把持部材を個々に把持する把持手段と、前記複数の被把持部材の形状・位置・姿勢を認識する被把持部材認識手段と、前記把持手段及び前記被把持部材の形状・位置・姿勢に基づいて前記被把持部材のそれぞれに対して、他の被把持部材と前記把持手段が干渉しない姿勢範囲を設定する把持可能姿勢範囲設定手段と、設定された前記把持可能姿勢範囲が所定の閾値よりも大きい前記被把持部材を前記把持手段に把持させる制御手段とを備えることを特徴とする。
【0011】
本発明に係る物体把持制御装置は、複数の被把持部材を個々に把持する把持手段と、前記複数の被把持部材の形状・位置・姿勢を認識する被把持部材認識手段と、前記把持手段及び前記被把持部材の形状・位置・姿勢に基づいて前記被把持部材のそれぞれに対して、他の被把持部材と前記把持手段とが干渉し得る範囲を設定する把持禁止範囲設定手段と、設定された前記把持禁止範囲が所定の閾値よりも小さい前記被把持部材を前記把持手段に把持させる制御手段とを備えることを特徴とする。
【発明の効果】
【0012】
本発明に係る物体把持制御方法及び装置によれば、周囲の被把持部材に把持手段を介して干渉しない被把持部材から順次に把持を行うように、把持順序を自律的に設定することが可能となる。
【図面の簡単な説明】
【0013】
【図1】実施例1の把持装置の斜視図である。
【図2】把持手段の斜視図である。
【図3】実施例1のフローチャート図である。
【図4】被把持部材近似方法の説明図である。
【図5】被把持部材近似方法の説明図である。
【図6】干渉可能性判定円の説明図である。
【図7】被把持部材近似円同士が干渉する場合の説明図である。
【図8】干渉可能性判定円と被把持部材近似円が干渉する場合の説明図である。
【図9】干渉可能性判定円と被把持部材近似円が干渉しない場合の説明図である。
【図10】被把持部材近似円同士が干渉する場合の説明図である。
【図11】干渉可能性判定円と被把持部材近似円が干渉する場合の説明図である。
【図12】干渉可能性判定円と被把持部材近似円が干渉する場合の説明図である。
【図13】被把持部材占有範囲と把持指占有範囲の説明図である。
【図14】非干渉姿勢範囲の計算についてのグラフ図である。
【図15】非干渉姿勢範囲が複数存在する場合の説明図である。
【図16】設定された把持姿勢を説明図である。
【図17】実施例1を適用する別の形態の斜視図である。
【図18】実施例2の把持装置の斜視図である。
【図19】把持手段の側面図である。
【図20】フローチャート図である。
【図21】被把持部材近似方法の説明図である。
【図22】被把持部材近似方法の説明図である。
【図23】把持手段可動範囲の説明図である。
【図24】被把持部材近似球同士が干渉する場合の説明図である。
【図25】干渉可能性判定球と被把持部材近似球が干渉する場合の説明図である。
【図26】干渉可能性判定球と被把持部材近似球が干渉する場合の説明図である。
【図27】或る把持姿勢により干渉が生ずる場合の説明図である。
【図28】或る把持姿勢により干渉が生じない場合の説明図である。
【図29】実施例2を適用する別のフローチャート図である。
【発明を実施するための形態】
【0014】
本発明を図示の実施例に基づいて詳細に説明する。
【実施例1】
【0015】
図1は実施例の把持装置の斜視図を示し、作業台1の上方にマニピュレータ2によって操作される把持手段3が設けられている。また、作業台1の上方には、被把持部材認識手段としてカメラ等の視覚センサ4が設けられている。
【0016】
作業台1の上には、複数の被把持部材Wとして、円板状の被把持部材Waと長方形状の被把持部材Wbが無作為に置かれている。
【0017】
本実施例では、作業台1上において、マニピュレータ2によって把持手段3を操作し、被把持部材Wの側面を把持して、1個ずつ作業台1から取り出し、図示しない別の作業台に移送することを繰り返すようになっている。
【0018】
図2は把持手段3の斜視図である。把持手段3はマニピュレータ2の持つ自由度によって、把持中心Oを軸に作業台1に対して水平方向に回動可能とされている。把持手段3は2本の把持指5を備え、これらの把持指5は把持中心Oに対称的に開閉して、被把持部材Wを把持することができる。把持対象となる被把持部材Wの周囲に、他の被把持部材Wが近接している場合でも、この回動角度を適切に制御することによって、把持対象に近接した他の被把持部材Wと把持手段3とは、干渉することなく、つまり相互に接触せずに把持可能となる場合がある。
【0019】
図3は被把持部材Wを把持する順序を設定する方法のフローチャート図である。
【0020】
ステップS110:視覚センサ4を用い、全ての被把持部材Wの形状・位置・姿勢を認識し、被把持部材識別子iを割り当てる。本実施例では、二次元平面内で考えれば十分であるので、被把持部材Wの形状は円及び長方形として認識される。
【0021】
ステップS120:把持可能姿勢範囲設定はステップS121〜S124から成る。
【0022】
ステップS121:ステップS110での認識結果を基に、被把持部材Wを内包する被把持部材モデルを作成する。被把持部材モデルは少なくとも1つの凸モデルの和集合とする。被把持部材モデルの要素として凸モデルを使用することで、把持手段3と被把持部材Wが干渉する可能性を判定することが容易になる。凸モデルには様々なものがあるが、本実施例では円を用い被把持部材近似円と呼ぶ。
【0023】
被把持部材Wが円板状物体である場合は、認識された円そのものを被把持部材近似円とし、この被把持部材近似円を被把持部材モデルとすればよい。被把持部材Wが長方形状物体である場合には、図4に示すように1つの外接円を被把持部材近似円Sとし、被把持部材モデルとすることもできるが、被把持部材Wの大きさを大きく見積もりすぎてしまうことになる。このため、図5に示すように複数の被把持部材近似円S1、S2、・・・を設定し、その和集合を被把持部材モデルとしてもよい。
【0024】
把持を行う際には、被把持部材Wに設定された何れかの被把持部材近似円Sに対し、その中心に把持手段3の把持中心Oを位置決めし、把持手段3の姿勢を適切に制御して把持を行う。
【0025】
それぞれの凸モデルの被把持部材近似円S、S’、・・・に被把持部材近似円識別子jを割り当てる。各被把持部材近似円S、S’、・・・は被把持部材識別子iと被把持部材近似円識別子jの組(i,j)で識別される。識別子(i,j)の被把持部材近似円Sに対して、中心の座標をp(i,j)(x(i,j),y(i,j))とし、半径をr(i,j)とする。これらはステップS110で得られた被把持部材Wの形状・位置・姿勢から算出することができる。なお、半径方向の認識誤差や位置決め誤差に対して確実な把持ができるように、被把持部材近似円Sの半径として、把持手段3を開閉させる掴み代を加味しておくことが好ましい。
【0026】
ステップS122:把持手段可動範囲のモデルを設定するために、把持手段3の把持手段モデルを設定する。本実施例では、平面上で考えればよいので、形状については把持指5が作業台1上で占める形状を考えれば十分である。
【0027】
図6は被把持部材近似円Sと把持指近似円Fと干渉可能性判定円Jの位置関係を示している。ここでは把持指5の断面に外接する円を用い、把持指近似円Fと呼ぶ。2本の把持指5の大きさは同じであるとし、その把持指近似円Fの半径をrf、直径をRfとする。
【0028】
また、把持指5は2本あるので、その位置関係も把持手段モデルのパラメータとなる。把持手段3の回動角度の原点を基準とし、1本目の把持指5が配置される角度をψ1、2本目の把持指5が配置される角度をψ2とする。半径rf、直径Rf、角度ψ1、ψ2が把持手段モデルを表現するパラメータとなり、本実施例ではψ1=0°、ψ2=180°とする。
【0029】
把持を行う際には、各被把持部材近似円Sの中心を回転中心として様々な姿勢で把持指5を配置できるので、把持手段可動範囲モデルとして、各被把持部材近似円Sの中心から半径(r(i,j)+Rf)の円を設定する。この円の内側に他の被把持部材Wが差しかかっていると、把持手段3の姿勢によっては把持指5が他の被把持部材Wに触れて干渉する可能性があるので、これを干渉可能性判定円Jと呼ぶ。
【0030】
ステップS123:識別子(i1,j1)の被把持部材近似円Sに対して、様々な姿勢で把持を試みる際に、別の識別子(i2,j1)を持つ被把持部材近似円S’と把持手段3とが干渉し得るかを判定する。
【0031】
先ず、被把持部材近似円S、S’同士が干渉しているかを調べる。同じ被把持部材Wに割り当てられ、隣り合っている被把持部材近似円S、S’同士は干渉していることが多い。
【0032】
識別子(i1,j1)の被把持部材近似円Sの半径r(i1,j1)と識別子(i2,j1)の被把持部材近似円S’の半径r(i2,j1)との和を求める。この和が中心間距離L(i1,j1),(i2,j1)よりも大きければ、前者の被把持部材近似円S(i1,j1)に対して後者の被把持部材近似円S’を干渉可能性ありと判定する。図7の状態では、被把持部材近似円Sと被把持部材近似円S’について干渉がある。
【0033】
被把持部材近似円SとS’の干渉がなければ、次に干渉可能性判定円Jと干渉があるかを調べる。識別子(i1,j1)の被把持部材近似円Sに設定した干渉可能性判定円Jの半径(r(i1,j1)+Rf)と、識別子(i2,j1)の被把持部材近似円S’の半径r(i2,j1)との和を求める。これらの和が中心間距離L(i1,j1),(i2,j1)よりも大きければ、識別子(i1,j1)の被把持部材近似円Sに設定された干渉可能性判定円Jに対して、識別子(i2,j1)の被把持部材近似円S’を干渉可能性ありと判定する。図8の状態では、被把持部材近似円Sの干渉可能性判定円Jと被把持部材近似円S’について干渉がある。
【0034】
このような2種の干渉がなければ、識別子(i1,j1)の被把持部材近似円Sを把持する際に、識別子(i2,j1)の被把持部材近似円S’は干渉しないものとする。
【0035】
図9に示す状態では、被把持部材近似円Sの干渉可能性判定円Jと被把持部材近似円S’について干渉がないので、被把持部材近似円Sを把持する際に、被把持部材近似円S’の影響を考慮する必要はない。
【0036】
全ての被把持部材近似円Sについて上述の処理を行い、干渉可能性のある被把持部材近似円S’をリストアップする。
【0037】
ステップS124:干渉判定結果を基に、個々の被把持部材近似円Sについて、把持手段3が周囲の被把持部材Wに干渉しないような把持手段3の姿勢範囲を算出する。これを把持可能姿勢範囲と呼ぶ。本実施例においては、把持手段3は回動の1自由度を持つので、把持可能姿勢範囲は一次元の角度範囲を意味する。
【0038】
図10に示すように、或る被把持部材近似円Sの中心から、干渉相手の被把持部材近似円S’との交点に向かう2本の直線Lのなす角を求める。また、図11に示すように或る被把持部材近似円Sの中心から、干渉相手の被把持部材近似円S’に引いた2本の接線Tのなす角を求める。
【0039】
図12に示すように或る被把持部材近似円Sの中心から、その干渉可能性判定円Jと干渉相手の被把持部材近似円S’との交点に向かう2本の直線Lのなす角を求め、これらの角を比較し、最も大きいものを被把持部材占有範囲と定義する。
【0040】
なお、干渉可能性判定円Jと被把持部材近似円S’との干渉である場合には、図10に示すような或る被把持部材近似円Sの中心から、干渉相手の被把持部材近似円S’との交点に向かう2本の直線Lのなす角は考えなくともよい。
【0041】
或る被把持部材近似円Sについて、被把持部材占有範囲に把持指5が進入しない把持姿勢があれば、その被把持部材Wは把持可能である。この範囲に把持指5が進入しないための姿勢範囲を非干渉姿勢範囲と定義し、次のように算出する。
【0042】
図13における横軸を姿勢の原点とし、反時計方向をプラス方向とする。或る被把持部材近似円Sの中心から、把持指近似円Fに引いた2本の接線がなす角を把持指占有範囲と定義する。被把持部材Wの占有範囲を2θ2、把持指5の占有範囲を2θ1とすると、1本の把持指5が他の被把持部材Wに干渉してしまう姿勢範囲は、角度座標上で図14に示すグラフ図に示すようになる。この範囲内の把持姿勢では、姿勢の原点方向に配置された把持指5が被把持部材Wに干渉してしまうので、これを干渉姿勢範囲と定義する。
【0043】
2本の把持指5の両方が干渉しない範囲を探すために、干渉姿勢範囲をそれぞれ角度ψ1=0、ψ2=180゜移動させた図14に示すグラフ図を用意し、重ね合わせる。把持姿勢がこの範囲外にあるとき、把持指5は2本とも被把持部材Wの占有範囲外にあることが分かる。把持指5の数が増えても同様の処理が可能である。把持指5の回動角度が干渉姿勢範囲以外の非干渉姿勢範囲に納まっていれば、隣接する把持部材近似円S’に干渉することはない。
【0044】
干渉のある被把持部材近似円S’が複数存在する場合など、非干渉姿勢範囲が複数存在する場合がある。この場合に、最大幅となる非干渉姿勢範囲を採用する。図15に示す場合は非干渉姿勢範囲Aが採用される。
【0045】
それぞれの被把持部材Wに対して、少なくとも1つの被把持部材近似円Sが設定されているので、それらの中で最大の非干渉姿勢範囲を、その被把持部材Wの把持可能姿勢範囲とする。これは、把持姿勢の誤差に対して最も確実な個所を掴むということを意味している。
【0046】
ステップS130:把持対象設定は図3のステップS131〜S136から成る。
【0047】
ステップS131:ステップS120で得られた結果を基に、把持可能姿勢範囲が空でない被把持部材Wを把持可能として判定する。
【0048】
ステップS132:把持可能な被把持部材Wが存在するかを判断し、存在すればステップS133に移行し、存在しなければ把持対象なしとしてステップS130を終了し、ステップS140に移行する。
【0049】
ステップS133:把持可能姿勢範囲の大きさが所定の閾値以上の被把持部材Wを把持候補として設定する。ここでは、被把持部材W間で最大の把持可能姿勢範囲を持つものとする。
【0050】
ステップS134:把持候補として設定された被把持部材Wについて、把持可能姿勢範囲の中心を把持姿勢として設定する。例えば、図16に示すように把持姿勢つまり把持指5の配置角度つまり把持指近似円Fが設定される。これにより、把持姿勢の誤差によって被把持部材近似円S’に干渉してしまう可能性を低減できる。孤立した被把持部材Wなど、全く干渉の可能性がない把持候補については、把持手段3の現在姿勢をそのまま使用してもよい。
【0051】
ステップS135:把持候補は複数あるかどうかを判断し、把持候補が1つであれば、その被把持部材Wを把持対象として設定し、ステップS130を終了する。把持候補が複数ある場合はステップS136に移行する。
【0052】
ステップS136:複数の把持候補について、把持可能姿勢範囲が同じ値である場合には、それぞれ設定された把持姿勢と、把持手段3の現在姿勢を比較し、差が最小の被把持部材Wを把持対象として物体把持制御を行う。これにより、把持を実行する際の把持手段3の姿勢変化量が小さくなり、作業効率の向上が見込める。複数の把持対象が存在する場合には、移送先への距離などを指標に一意的に定めればよい。
【0053】
ステップS140:把持対象の被把持部材Wが存在するか判断し、存在すればステップS150に移行し、存在しなければ作業を終了する。
【0054】
ステップS150:設定された把持対象を設定された姿勢で把持するように、把持手段3を制御し被把持部材Wの把持を実行し、把持が終了するとステップS110に戻る。
【0055】
このように本実施例によれば、把持に際して周辺の被把持部材Wと把持指5との干渉が起こり難い被把持部材Wを優先的に把持することができる。しかも、周辺の被把持部材Wから離れた位置に把持指5が配置されるので、視覚センサ4による姿勢認識の誤差や、把持姿勢の位置決め誤差に対して確実な把持を行うこともできる。
【0056】
更に、干渉の程度が同じ被把持部材Wが多い場合には、把持手段3の姿勢変化を抑えることができる。一般に、把持手段3の姿勢を変化させるアクチュエータは、マニピュレータ2の基部などと比べ、軽量・低出力であることが多く、把持手段3の姿勢変化を抑えることは作業効率の向上に寄与できる。
【0057】
なお、実施例1では被把持部材Wを板状物体としたが、図17に示すように被把持部材Wが高さがほぼ揃った円柱Wa’や直方体Wb’などである場合でも、同じ手法を適用できることは明らかである。
【実施例2】
【0058】
図18は実施例2の把持装置の斜視図を示す。作業台11の上に複数の被把持部材Wとして立方体状の被把持部材Weと四角錐台状の被把持部材Wdが無作為に置かれている状態を示している。本実施例では、マニピュレータ12により把持手段13を作業台11の上方から接近して被把持部材Wを把持して、1個ずつ作業台から取り出すようになっている。また、複数個の視覚センサ14が立体視のために作業台11の上方に配置されている。
【0059】
図19はマニピュレータ12により作動する把持手段13の側面図である。把持手段13はマニピュレータ12が有する自由度によって、把持中心Oを軸に回動できるようになっている。把持手段13が備える2本の把持指15は、把持中心Oに関して対称に開閉し、被把持部材Wを把持することができる。把持手段13はマニピュレータ12が持つ自由度によって、被把持部材Wを様々な姿勢で把持可能となっており、最終軸の自由度により把持中心Oを軸に自在に回動できる。
【0060】
把持対象となる被把持部材Wの周囲に他の被把持部材Wが近接している場合でも、この姿勢を適切に制御することによって、把持対象周囲の被把持部材Wと把持手段13の把持指15が干渉することなく把持可能となる場合がある。
【0061】
図20は実施例2の動作フローチャート図である。
【0062】
ステップS210:複数の視覚センサ14を用いて被把持部材Wの形状・位置・姿勢を認識し、被把持部材識別子iを割り当てる。被把持部材Wの形状は立方体及び四角錐台として認識される。
【0063】
ステップS220:把持禁止範囲設定はステップS221〜S224から成る。
【0064】
ステップS221:ステップS210での認識結果を基に、被把持部材Wを内包する被把持部材モデルを設定する。被把持部材モデルは少なくとも1つの凸モデルの和集合として表現される。この凸モデルを使用することで、次ステップでの干渉判定が容易になることが期待できる。凸モデルには様々なものがあるが、本実施例では球を用い、被把持部材近似球と呼ぶ。
【0065】
被把持部材Wが立方体状物体である場合には、1つの外接球を被把持部材近似球とし、これを被把持部材モデルとすればよい。被把持部材Wが四角錐台状物体である場合に、図21に示すように1つの被把持部材近似球Bで内包すると、物体の大きさを大きく見積もり過ぎてしまうことになる。従って、図22に示すように大きさが異なる複数の被把持部材近似球B1、B2、・・・により内包し、その和集合で表現すればよい。
【0066】
把持を行う際には、被把持部材Wに設定された何れかの被把持部材近似球Bに対し、その中心に把持中心Oが向かうように位置決めし、把持手段13の姿勢を適切に制御して把持を行う。
【0067】
各被把持部材モデルのなかで、各凸モデルの被把持部材近似球Bに被把持部材近似球識別子jを割り当てる。各凸モデルの被把持部材近似球Bは識別子iとjの組で指定される。
【0068】
識別子(i,j)の被把持部材近似球Bに対して、中心の座標をp(i,j)(x(i,j),y(i,j),z(i,j))とし、半径をr(i,j)とする。これらはステップS210で得られた被把持部材Wの形状・位置・姿勢から算出することができる。
【0069】
ステップS222:把持手段可動範囲のモデルを設定するため、把持手段13の把持手段モデルを設定する。図23に示すように、把持手段13を被把持部材近似球Bに接近させた際に把持手段13を包み込む球の半径を(r(i,j)+Rf)、被把持部材近似球Bの中心から把持手段13を見込む角を2αfとする。把持手段13の把持指の直径Rf及び角α
fは固定値ではなく、被把持部材近似球Bの半径r(i,j)の関数としてもよい。直径Rf及び角αfが、把持手段モデルを表現するパラメータとなる。
【0070】
把持手段可動範囲モデルとして、被把持部材近似球Bと中心を同じくし、各被把持部材近似球Bの中心から半径(r(i,j)+Rf)の球を設定する。これを干渉可能性判定球Kと呼ぶ。
【0071】
ステップS223:識別子(i1,j1)の被把持部材近似球Bに対して把持を試みる際に、把持手段13と識別子(i2,j1)の被把持部材近似球B’とが干渉し得るかを判定する。
【0072】
先ず、図24に示すように隣接する被把持部材近似球B、B’同士が干渉しているかを調べる。同じ被把持部材Wに割り当てられ、隣り合っている被把持部材近似球B、B’同士は干渉していることが多い。
【0073】
識別子(i,j)の被把持部材近似球Bの半径r(i1,j1)と識別子(i2,j1)被把持部材近似球B’の半径r(i2,j1)との和を求める。この和が中心間距離L(i1,j1),(i2,j1)よりも大きければ、判定対象の被把持部材近似球Bを干渉可能性ありと判定する。
【0074】
被把持部材近似球B、B’同士の干渉がなければ、次に干渉可能性判定球Kと干渉があるかを調べる。干渉可能性判定球Kの半径(r(i1,j1)+Rf)と被把持部材近似球Bの半径r(i2,j1)との和が、中心間距離L(i1,j1),(i2,j1)よりも大きければ、判定対象の被把持部材近似球Bは干渉可能性ありと判定する。
【0075】
これらの2種の干渉がなければ、識別子(i1,j1)の被把持部材近似球Bを把持する際に識別子(i2,j1)の被把持部材近似球B’は影響はないものとする。全ての被把持部材近似球Bについて上述の処理を行い、干渉可能性のある被把持部材近似球B’をリストアップする。
【0076】
ステップS224:干渉判定結果を基に個々の被把持部材Wについて、把持手段13が周囲の被把持部材Wに干渉し得る範囲の大きさを算出する。
【0077】
図24に示すように、或る被把持部材近似球Bの中心から、干渉相手の被把持部材近似球B’との交差円に向かう直線Lが形成する円錐の頂角を求める。また、図25に示すように、或る被把持部材近似球Bの中心から、干渉相手の被把持部材近似球B’に引いた接線Tが形成する円錐の頂角を求める。
【0078】
更に、図26に示すように、或る被把持部材近似球Bの中心から、その干渉可能性判定球Kと干渉相手の被把持部材近似球B’の交差円に向かう直線Lが形成する円錐の頂角とを求める。これらの頂角同士を比較し、最も大きいものを被把持部材占有範囲と定義する。
【0079】
なお、干渉可能性判定球Kと被把持部材近似球Bとの干渉がある場合には、図24に示すような或る被把持部材近似球Bの中心から、干渉相手の被把持部材近似球B’との交差円に向かう直線Lが形成する円錐の頂角は考えなくともよい。
【0080】
各被把持部材近似球Bに対して、干渉可能性のある全ての被把持部材近似球B’からの被把持部材占有範囲の大きさを足し合わせ、被把持部材近似球Bの干渉範囲の大きさとする。この値が大きいことは、被把持部材近似球Bを把持しようとした際に、周辺に把持手段13と干渉する他の被把持部材近似球B’が多く存在する、又はより近くに存在することを示している。
【0081】
それぞれの被把持部材Wに対し、少なくとも1つの被把持部材近似球Bが設定されているので、その中で最小となる干渉範囲の大きさを、その被把持部材Wの把持禁止範囲の大きさとすればよい。これは、他の被把持部材Wが邪魔になり難い個所を掴むということを意味している。
【0082】
ステップS230:把持対象設定はステップS231〜S233から成る。
【0083】
ステップS231:ステップS220で得られた結果を基に、把持禁止範囲の大きさが所定の閾値以上のものは把持困難と見倣し、閾値以下の被把持部材Wを把持候補として設定する。この閾値は実験等で適当に定めておけばよい。
【0084】
ステップS232:把持候補に対して、マニピュレータ12の可動範囲内で、ランダムサンプリングなどの手法を用いて、適当に把持姿勢を設定する。設定された把持姿勢で、干渉可能性のある全ての被把持部材近似球Bと、把持手段13とが干渉しなければ、その把持姿勢で把持可能とする。
【0085】
図27は或る把持姿勢での被把持部材近似球Bの中心から把持中心Oに向かうベクトルと、干渉可能性のある被把持部材近似球B’の中心に向かうベクトルの張る平面での断面図である。
【0086】
被把持部材占有範囲α1と、把持手段13を見込む角αfの和が、先の2つのベクトルのなす角よりも大きいとき、その把持姿勢では干渉が起こる。その逆であれば、図28に示すように干渉は起こらない。この判定を干渉可能性のある全ての被把持部材近似球Bに対して行い、全て干渉なしであればその把持姿勢を採用し、1つでも干渉すればランダムな把持姿勢の設定からし直す。また、ランダムに把持姿勢を設定、判定を所定の回数繰り返しても把持可能とならない場合は、把持候補から外す。
【0087】
ステップS233:把持可能な把持候補の中から、把持禁止範囲の大きさが最小のものを把持対象として設定する。これにより、周囲の被把持部材Wの影響が少ない被把持部材Wを優先把持できる。複数の把持対象が存在する場合には、移送先への距離などを指標に、一意的に定めればよい。
【0088】
ステップS240:把持対象は存在するかを判断し、存在しなければ作業を終了し、存在すればステップS250に移行する。
【0089】
ステップS250:把持を実行しステップS210に移行する。
【0090】
このように本実施例によれば、把持の際に周辺の被把持部材Wとの干渉が起こり難い被把持部材Wを優先的に把持することができる。
【0091】
また、図29のフローチャート図に示すように、一連の把持を行う前に作業終了までの順番を設定しておくこともできる。
【0092】
ステップS310:図2のステップS210と同様に、複数の視覚センサ14を用いて、被把持部材Wの形状・位置・姿勢を認識し、被把持部材識別子iを割り当てる。
【0093】
ステップS320:被把持部材Wのリストを作成し、把持順序リストを初期化する。即ち、リストを空にする。
【0094】
ステップS330:ステップS220と同様に、図20のステップS221〜S224から成る。
【0095】
ステップS340:ステップS220と同様に、図20のステップS231〜S233から成る。
【0096】
ステップS350:把持対象は存在するかを判断し、存在しなければステップS380に移行し、存在すればステップS360に移行する。
【0097】
ステップS360:把持順序リストの終端に把持対象を追加する。
【0098】
ステップS370:ステップS360で追加した把持対象を被把持部材リストから削除し、ステップS330に戻る。
【0099】
ステップS380:把持順序リストの順番に従って把持を実行し、終了する。
【符号の説明】
【0100】
1、11 作業台
2、12 マニピュレータ
3、13 把持手段
4、14 視覚センサ
5、15 把持指
B、B’ 被把持部材近似球
F 把持指近似円
J 干渉可能性判定円
K 干渉可能性判定球
S、S’ 被把持部材近似円
W 被把持部材

【特許請求の範囲】
【請求項1】
複数の被把持部材を把持手段によって個々に把持、移送する作業において、被把持部材認識手段により前記複数の被把持部材の形状・位置・姿勢を認識する被把持部材認識ステップと、把持可能姿勢範囲設定手段により前記把持手段及び前記被把持部材の形状・位置・姿勢に基づいて前記被把持部材のそれぞれについて、他の被把持部材と前記把持手段が干渉しない姿勢範囲を把持可能姿勢範囲として設定する把持可能姿勢範囲設定ステップと、把持対象設定手段により設定された前記把持可能姿勢範囲が所定の閾値よりも大きい被把持部材を把持対象として設定する把持対象設定ステップとを備えることを特徴とする物体把持制御方法。
【請求項2】
前記把持対象設定ステップにおいて、前記把持対象設定手段は、前記把持可能姿勢範囲が前記閾値よりも大きく設定された前記被把持部材が複数存在した場合に、前記被把持部材を把持する際の把持姿勢を設定し、前記把持手段の姿勢との差が所定の閾値よりも小さい前記被把持部材を把持対象として設定することを特徴とする請求項1に記載の物体把持制御方法。
【請求項3】
前記把持可能姿勢範囲設定ステップにおいて、前記把持可能姿勢範囲設定手段は、少なくとも1つの凸モデルを使用して前記被把持部材及び前記把持手段の可動範囲を設定し、前記把持可能姿勢範囲を設定することを特徴とする請求項1又は2に記載の物体把持制御方法。
【請求項4】
前記把持可能姿勢範囲設定ステップにおいて、前記把持可能姿勢範囲設定手段は、前記凸モデルとして円を用いて前記把持可能姿勢範囲を設定することを特徴とする請求項3に記載の物体把持制御方法。
【請求項5】
複数の被把持部材を把持手段によって個々に把持、移送する作業において、被把持部材認識手段により前記複数の被把持部材の形状・位置・姿勢を認識する被把持部材認識ステップと、把持禁止範囲設定手段により前記把持手段及び前記複数の被把持部材の形状・位置・姿勢に基づいて前記被把持部材のそれぞれに対して、他の被把持部材と前記把持手段とが干渉し得る範囲を把持禁止範囲として設定する把持禁止範囲設定ステップと、把持対象設定手段により設定された前記把持禁止範囲が所定の閾値よりも小さい前記被把持部材を把持対象として設定する把持対象設定ステップとを備えることを特徴とする物体把持制御方法。
【請求項6】
前記把持対象設定ステップにおいて、前記把持対象設定手段は、前記把持禁止範囲が前記閾値よりも小さく設定された前記被把持部材が複数存在した場合に、前記被把持部材を把持する際の把持姿勢を設定し、前記把持手段の姿勢との差が所定の閾値よりも小さい前記被把持部材を把持対象として設定することを特徴とする請求項5に記載の物体把持制御方法。
【請求項7】
前記把持禁止範囲設定ステップにおいて、前記把持禁止範囲設定手段は、少なくとも1つの凸モデルを使用して前記被把持部材及び前記把持手段の可動範囲を設定し、前記把持禁止範囲を設定することを特徴とする請求項5又は6に記載の物体把持制御方法。
【請求項8】
前記把持禁止範囲設定ステップにおいて、前記把持禁止範囲設定手段は、凸モデルとして円を用いて前記把持禁止範囲を設定することを特徴とする請求項7に記載の物体把持制御方法。
【請求項9】
前記把持禁止範囲設定ステップにおいて、前記把持禁止範囲設定手段は、凸モデルとして球を用いて前記把持禁止範囲を設定することを特徴とする請求項7に記載の物体把持制御方法。
【請求項10】
複数の被把持部材を個々に把持する把持手段と、前記複数の被把持部材の形状・位置・姿勢を認識する被把持部材認識手段と、前記把持手段及び前記被把持部材の形状・位置・姿勢に基づいて前記被把持部材のそれぞれに対して、他の被把持部材と前記把持手段が干渉しない姿勢範囲を設定する把持可能姿勢範囲設定手段と、設定された前記把持可能姿勢範囲が所定の閾値よりも大きい前記被把持部材を前記把持手段に把持させる制御手段とを備えることを特徴とする物体把持制御装置。
【請求項11】
前記把持可能姿勢範囲設定手段は、前記把持可能姿勢範囲が前記閾値よりも大きく設定された前記被把持部材が複数存在した場合に、前記被把持部材を把持する際の把持姿勢を設定し、前記把持手段の姿勢との差が所定の閾値よりも小さい前記被把持部材を把持対象として設定することを特徴とする請求項10に記載の物体把持制御装置。
【請求項12】
前記把持可能姿勢範囲設定手段は、少なくとも1つの凸モデルを使用して前記被把持部材及び前記把持手段の可動範囲を設定し、前記把持可能姿勢範囲を設定することを特徴とする請求項10又は11に記載の物体把持制御装置。
【請求項13】
前記把持可能姿勢範囲設定手段は、前記被把持部材及び前記把持手段の可動範囲の要素である凸モデルとして円を用いて前記把持可能姿勢範囲を設定することを特徴とする請求項12に記載の物体把持制御装置。
【請求項14】
複数の被把持部材を個々に把持する把持手段と、前記複数の被把持部材の形状・位置・姿勢を認識する被把持部材認識手段と、前記把持手段及び前記被把持部材の形状・位置・姿勢に基づいて前記被把持部材のそれぞれに対して、他の被把持部材と前記把持手段とが干渉し得る範囲を設定する把持禁止範囲設定手段と、設定された前記把持禁止範囲が所定の閾値よりも小さい前記被把持部材を前記把持手段に把持させる制御手段とを備えることを特徴とする物体把持制御装置。
【請求項15】
前記把持禁止範囲設定手段は、前記把持禁止範囲が前記閾値よりも小さく設定された前記被把持部材が複数存在した場合に、前記被把持部材を把持する際の把持姿勢を設定し、前記把持手段の姿勢との差が所定の閾値よりも小さい前記被把持部材を把持対象として設定することを特徴とする請求項14に記載の物体把持制御装置。
【請求項16】
前記把持禁止範囲設定手段は、少なくとも1つの凸モデルを使用して前記被把持部材及び前記把持手段の可動範囲を設定し、前記把持禁止範囲を設定することを特徴とする請求項14又は15に記載の物体把持制御装置。
【請求項17】
前記把持禁止範囲設定手段は前記凸モデルとして円を用いて前記把持禁止範囲を設定することを特徴とする請求項16に記載の物体把持制御装置。
【請求項18】
前記把持禁止範囲設定手段は前記凸モデルとして球を用いて前記把持禁止範囲を設定することを特徴とする請求項16に記載の物体把持制御装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate