把持位置計算装置及び把持位置計算方法
【課題】マニピュレータでワークを把持する際に、外力に対して安定して把持する。
【解決手段】フィンガ14がワーク16をいずれかの姿勢で把持可能となる移動手段の位置を求める(S3)。ワーク16をフィンガ14の先端で把持する把持位置の初期位置P0を特定し、該初期位置P0を計算対象位置Pとする(S4)。その時点の計算対象位置Pでワーク16を把持した場合に、許容される外力の大きさを示す指標である許容外力Dpを算出する(S5)。計算対象位置Pの回りの複数の近傍点Pcで把持した場合の許容外力Dcをそれぞれ算出する(S6)。許容外力Dpがその回りの全てのDc以上である場合に、計算対象位置Pを把持候補位置として特定する(S9)。それ以外の場合に、許容外力Dcが最も大きい近傍点Pcを計算対象位置Pに更新し、ステップS5に戻る(S8)。
【解決手段】フィンガ14がワーク16をいずれかの姿勢で把持可能となる移動手段の位置を求める(S3)。ワーク16をフィンガ14の先端で把持する把持位置の初期位置P0を特定し、該初期位置P0を計算対象位置Pとする(S4)。その時点の計算対象位置Pでワーク16を把持した場合に、許容される外力の大きさを示す指標である許容外力Dpを算出する(S5)。計算対象位置Pの回りの複数の近傍点Pcで把持した場合の許容外力Dcをそれぞれ算出する(S6)。許容外力Dpがその回りの全てのDc以上である場合に、計算対象位置Pを把持候補位置として特定する(S9)。それ以外の場合に、許容外力Dcが最も大きい近傍点Pcを計算対象位置Pに更新し、ステップS5に戻る(S8)。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、移動手段によって移動可能に設けられた多関節のマニピュレータによってワークを把持する位置を、コンピュータのオフライン処理で特定する把持位置計算装置及び把持位置計算方法に関する。
【背景技術】
【0002】
自動車の製造工程ではマニピュレータによる自動化の取り組みがなされており、例えば、予めティーチングされた動作を再現するティーチングプレイバック動作によって、溶接や塗装等の種々の処理が自動化されている。
【0003】
一方、単なるティーチングプレイバックではなく、ワークに応じて異なる動作が可能になると該マニピュレータの適用範囲が一層広がることになり、例えば、異なる形状のワーク又は異なる向きに配置されたワークを把持できると好適である。
【0004】
マニピュレータによって異なる形状のワークを把持する場合として、特許文献1には、ワークに対して最も接触点数が多くなる条件を最適な把持条件として算出する手段について記載されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2006−26875号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
上記の特許文献1では、ワークに対して最も接触点数が多くなるように制御をしているが、このような条件が最適な把持条件になるとの定量的な評価はなされていない。
【0007】
本発明はこのような課題を考慮してなされたものであり、マニピュレータでワークを把持する際に、より安定してワークを把持することのできる位置を求める把持位置計算装置及び把持位置計算方法を提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明に係る把持位置計算装置は、移動手段によって移動可能に設けられた多関節のマニピュレータによってワークを把持する位置を、コンピュータのオフライン処理で特定する把持位置計算装置であって、与えられた把持条件に対して、許容される外力の大きさを示す指標である許容外力を算出する許容外力算出部と、複数の前記把持条件に対して前記許容外力算出部によって許容外力を求め、算出された許容外力が最も大きい把持条件を選択する選択部とを有することを特徴とする。
【0009】
このように、許容される外力の大きさを示す指標である許容外力に基づいて把持位置を求めることにより、マニピュレータでワークを把持する際に、より安定して把持することができる。
【0010】
許容外力は、前記把持条件によって前記マニピュレータの先端が前記ワークを把持する位置を基準とした摩擦力の円錐境界面、及び前記マニピュレータの先端が発生し得る把持力の限界境界面からの距離のうち最も小さい距離を基準に求められてもよい。このように、摩擦力の円錐境界面、及びマニピュレータの先端が発生し得る把持力の限界境界面に基づいた判断によれば、許容外力が適切に求められ、一層安定してワークを把持することができる。
【0011】
また、本発明に係る把持位置計算方法は、移動手段によって移動可能に設けられた多関節のマニピュレータによってワークを把持する位置を、コンピュータのオフライン処理で特定する把持位置計算方法であって、前記マニピュレータが前記ワークをいずれかの姿勢で把持可能となる前記移動手段の位置を求める第1工程と、前記第1工程で求められた前記移動手段の位置を基準に、前記ワークを前記マニピュレータの先端で把持する把持位置の初期値を特定し、該初期値を計算対象位置とする第2工程と、その時点の計算対象位置で前記ワークを把持した場合に、許容される外力の大きさを示す指標である許容外力を算出して記憶する第3工程と、前記計算対象位置の回りの複数の近傍位置で把持した場合の許容外力をそれぞれ算出して記憶する第4工程と、前記第3工程及び前記第4工程の後に、前記計算対象位置における許容外力がその回りの全ての前記近傍位置における許容外力以上である場合に、前記計算対象位置を把持候補位置として特定し、それ以外の場合に、許容外力が最も大きい前記近傍位置を前記計算対象位置に更新し、前記第4工程に戻る判断をする第5工程とを有することを特徴とする。
【0012】
このように、許容される外力の大きさを示す指標である許容外力に基づいて把持位置を求めることにより、マニピュレータでワークを把持する際に、より安定して把持することができる。また、第4工程及び第5工程を繰り返すことにより、一層適切な把持位置を求めることができる。
【0013】
許容外力は、前記把持条件によって前記マニピュレータの先端が前記ワークを把持する位置を基準とした摩擦力の円錐境界面、及び前記マニピュレータの先端が発生し得る把持力の限界境界面からの距離のうち最も小さい距離を基準に求められてもよい。
【0014】
前記第2工程における初期値を複数設定し、複数の該初期値に基づいて前記第3工程〜第5工程をそれぞれ行い、複数の前記把持候補位置のうち、許容外力が最も大きいものをさらに選択してもよい。これにより、さらに安定してワークを保持することが可能になる。
【発明の効果】
【0015】
本発明に係る把持位置計算装置及び把持位置計算方法によれば、許容される外力の大きさを示す指標である許容外力に基づいて把持位置を求めることにより、マニピュレータでワークを把持する際に、外力に対して安定して把持することができる。
【図面の簡単な説明】
【0016】
【図1】本実施の形態に係る把持位置計算装置による制御対象の把持装置の模式図である。
【図2】本実施の形態に係る把持位置計算装置のブロック構成図である。
【図3】本実施の形態に係る把持位置計算方法のフローチャートを示す図である。
【図4】4本のフィンガによりワークを把持する様子を示す図である。
【図5】1つの初期位置から許容外力を求める様子を示す模式図である。
【図6】複数の初期位置から許容外力を求める様子を示す模式図である。
【図7】UifingerとUifingerの当初の位置関係を示す図である。
【図8】UifingerとUifingerの移動後の位置関係を示す図である。
【図9】凸多面体の模式図である。
【図10】非凸多面体の模式図である。
【図11】摩擦円錐を示す図である。
【図12】摩擦円錐と複数の限界境界面からなる立体を示す図である。
【図13】図12の立体の一部を多角錐で近似した図である。
【図14】許容外力楕円体を示す図である。
【図15】ワーク表面上における把持可能な領域にメッシュを設けた図である。
【発明を実施するための形態】
【0017】
以下、本発明に係る把持位置計算装置及び把持位置計算方法について実施の形態を挙げ、添付の図1〜図15を参照しながら説明する。
【0018】
本実施の形態に係る把持位置計算装置としてのコンピュータ11は、図1に示す制御装置10で制御される把持装置12におけるフィンガ14の姿勢を予めオフライン処理で設定するものである。本実施の形態に係る把持位置計算方法は、コンピュータ11において行われる計算方法である。コンピュータ11は、パーソナルコンピュータやワークステーション等である。先ず、制御装置10、把持装置12及びフィンガ14について説明する。
【0019】
図1に示すように、制御装置10は、把持装置12が有する4本のフィンガ(マニピュレータ)14の制御をする装置である。把持装置12は、4本のフィンガ14を用いてパレットに格納されたワーク16を把持して搬送する。把持装置12は、多関節ロボット(移動手段)17の先端部に設けておき、ばら積み(位置、向きが不定)状態のワーク16を多関節ロボット17と協動して安定した状態で搬送可能となる。図1では、ワーク16を単純な円柱形状に示すが、形状、大きさ、向きは限定されない。
【0020】
制御装置10は、外部のコンピュータ11によってオフラインティーチングによって得られたデータを一部利用して把持装置12の制御をする。
【0021】
把持装置12は、ベースプレート18と、該ベースプレート18の下面四隅にそれぞれ設けられたフィンガ14とを有する。
【0022】
フィンガ14は、ベースプレート18の下面から下方に向けて突出するように設けられており、基端部においてベースプレート18と水平に旋回可能な第1軸14aと、該第1軸14aと直交する向きに回転可能で第1アーム20を屈曲させる第2軸14bと、該第2軸14bと同じ向きに回転可能で第1アーム20に対して第2アーム22を屈曲させる第3軸14cとを有する。フィンガ14は、さらに、第1軸14a、第2軸14b及び第3軸14c(以下、簡便に関節とも呼ぶ。)の駆動モータとしてのモータ24a、モータ24b及びモータ24cと、第1軸14a、第2軸14b及び第3軸14cの角度を検出する角度センサ26a、角度センサ26b及び角度センサ26cとを有する。
【0023】
このように、フィンガ14は3軸を有する多関節構成であり、第2アーム22の先端部がワーク16に当接する。4本のフィンガ14は同構成であって、ベースプレート18の中心部を基準として対称に設けられている。フィンガ14には角度センサ26a〜26c以外に特にセンサ(力センサやトルクセンサ等)がなく、簡便構成である。モータ24a〜24c及び角度センサ26a〜26cは、必ずしも関節に直接的に設ける必要はなく所定の回転伝達部材を介して接続されていてもよい。モータ24a〜24cには減速機が設けられていてもよい。モータ24a〜24cにはサーボモータを用いると好適である。
【0024】
制御装置10は、フィンガ14毎に制御部を有しており、一部又は全部をコンピュータによるソフトウェア処理によって実現している。制御装置10は、図示しないワーク認識装置に接続されている。該ワーク認識装置は、光学手段等を用いて個別のワーク16を識別し、その位置及び向きを示す情報を制御装置10に供給する。制御装置10ではワーク認識装置から得られた情報に基づいて、ワーク16を適切に把持するべく、状況に応じて位置制御モード及び力制御モードに切換可能である。
【0025】
制御装置10は、コンピュータ11から予め得ている複数のティーチングデータから、ワーク16の状況に応じて適切なものを選択し、位置制御モードでフィンガ14を制御することができる。
【0026】
次に、コンピュータ11及び該コンピュータ11において行われるオフライン処理について説明する。
【0027】
図2に示すように、コンピュータ11は、ワーク設定部100と、ロボット位置算出部102と、メッシュ作成部104と、把持条件算出部106と、複数の把持条件108を記憶する記憶部110と、初期値特定部112と、許容外力算出部114と、選択部116とを有する。
【0028】
ワーク設定部100はワーク16の形状及び向きを設定する。ロボット位置算出部102は、ワーク設定部100で設定されたワーク16の状態に基づいて多関節ロボット17の姿勢を求める。メッシュ作成部104は、ワーク16の全面又は、フィンガ14によって把持可能な領域について所定のメッシュ(又は、把持候補点群)を作成する。把持条件算出部106は、4本のフィンガ14によってワーク16を把持する条件である把持条件108を算出する。算出された把持条件108は記憶部110に記憶される。把持条件108は、メッシュ作成部104で設定されるメッシュに応じて複数求められる。初期値特定部112は、メッシュ作成部104で設定されたメッシュに基づいて、いずれか点(1以上の点)から計算を開示するか設定する。許容外力算出部114は、初期値特定部112で特定された点及びその周辺の点について許容外力Dを算出する。選択部116は、許容外力算出部114で算出された許容外力Dが最も大きいものを選択する。
【0029】
図2に示すコンピュータ11の各機能部は一部又は全部をソフトウェア処理によって実現しているが、条件によっては一部(例えば、初期位置P0の特定)を人手によって設定してもよい。図2に示す各機能は、必ずしも1台のコンピュータ内で行う必要はない。
【0030】
以下に説明する処理は、コンピュータ11によって設定される仮想の3次元空間において行われるオフライン処理である。オフライン処理では、実際の把持装置12が不要であって、モデルを自由に設定でき、しかも計算時間の制約がない。以下の説明では、理解を容易にするため、把持装置12の4本のフィンガ14のうち3本は予め姿勢が設定されており、残余の1本の姿勢について設定するものとし、特に断りのない限りフィンガ14は設定対象の1本を示す。
【0031】
先ず、図3〜図6に基づいて、全体的な処理について説明し、その後に個別の処理について説明する。
【0032】
図3のステップS1において、モデル(例えばポリゴンモデル)のワーク16を所定の向きに配置する。この向きは適宜変更し、複数の向きについて以下の処理を行っておき、各向きに対応してフィンガ14の把持データを求めておくとよい。ワーク16については、図1に示すような円柱形状だけでなく、想定される種々の形状、大きさ及び向きについて処理を行い、データを設けておくとよい。
【0033】
ステップS2において、初期段階として、ワーク16の表面に対してフィンガ14の先端部が当接するための全ての候補としてメッシュを設ける(図5、図15参照)。ここではメッシュを格子状とするが、例えば、ワーク16のモデルとして表されているポリゴンメッシュ(例えば三角形のメッシュ)等をそのまま用いてもよい。メッシュは、把持位置を特定する候補として十分に細かく、且つ不必要に計算負荷が増大しない程度に設定しておく。メッシュを設けるステップは、後述するようにUifingerに基づいて行ってもよい。
【0034】
ステップS3において、図4に示すように、多関節ロボット17によって配置される把持装置12の位置を設定する。この位置は、フィンガ14がワーク16をいずれかの姿勢で把持可能となるように設定する。
【0035】
ステップS4において、図5に示すように、ステップS3で求められた位置を基準として、ワーク16をフィンガ14の先端で把持する初期位置(初期値)P0をステップS2で設定したメッシュに基づいて特定し、該初期位置P0を計算対象位置Pとする。初期位置P0は予め複数設定しておき、そのうち未処理のもののいずれか1つを選択する。
【0036】
ここで、初期位置P0及びその周辺の近傍点Pcによる把持条件は、その把持位置だけでなく、ベクトル量としての把持力fm(図12参照)も併せて設定されているものとする。
【0037】
ステップS5において、その時点の計算対象位置Pでワーク16を把持した場合に、把持位置を維持できる外力の大きさを示す指標である許容外力Dを算出して記憶する。計算対象位置Pに対応する許容外力DをDpとする。許容外力Dの詳細については後述する。
【0038】
ステップS6において、計算対象位置Pの回りの8つの近傍点Pcで把持した場合の許容外力Dをそれぞれ算出して記憶する。近傍点Pcにおける許容外力DをDcとする。近傍点Pcは、計算対象位置Pを基準として上下左右及び斜め4方の合計8つの点としているが、例えば、上下左右の4点だけにしてもよい。
【0039】
ステップS7において、ステップS5及びS6で得られた許容外力Dpと各許容外力Dcとを比較する。許容外力Dpが全ての許容外力Dcより大きいときには、ステップS9へ移り、いずれかの許容外力Dcが許容外力Dpより大きいときにはステップS8へ移る。
【0040】
ステップS8において、許容外力Dcが最も大きい近傍点Pcを選び出し、計算対象位置Pを該近傍点Pcに更新する(図5の矢印A参照)。この後、ステップS5へ戻り、計算を続行する。
【0041】
このような繰り返し処理によれば、図5に示すように、最初に選んだ初期位置P0に基づいた収束計算が行われ、少なくともその周辺の中で最も許容外力Dが大きい箇所を選び出すことができる。この場合、繰り返し計算の最中に、更新された計算対象位置P、及び許容外力Dが計算済みの近傍点Pcについては、許容外力Dの再計算を省略してもよい。また、繰り返し計算を所定回数行っても許容外力Dが収束しないときには、計算を途中で打ち切り、所定の対応処理を行ってもよい。
【0042】
一方、ステップS9においては、その時点の計算対象位置Pを把持候補位置として設定する。
【0043】
ステップS10において、予め準備した初期位置P0の全てについて処理が終わっているか否かを確認し、未処理のものがあればステップS4へ戻り、全て終了していればステップS10へ移る。
【0044】
ステップS11において、複数の初期位置P0に基づいて得られた複数の把持候補のうち、許容外力Dcが最も大きいものを選択して最終的な把持位置として設定する。得られた把持位置は所定の記憶部に記憶するとともに、制御装置10に供給しておく。
【0045】
制御装置10では、把持装置12の運転時に、所定の光学手段から得られる情報に基づいて複数のワーク16の把持すべき1つを選択し、該ワーク16の状態に近いモデルに基づいて得られた把持条件及び把持位置のデータを検索する。検索して得られたデータに基づいてフィンガ14を位置制御モードで駆動し、ワーク16を把持する。この時点でフィンガ14の先端とワーク16の表面との間に多少の位置誤差があったとしても、その後に力制御モードに移行することによって位置誤差はなくなり、ワーク16を適切な姿勢及び力で把持することができる。
【0046】
このように、複数の初期位置P0に基づいて収束計算をそれぞれ行うことにより、図6に示すように、各初期位置P0(図6ではP01、P02、P03、P04と示す。)に対応して複数の把持位置候補Ptが得られる場合において、そのうち最も許容外力Dが大きいものを選択することができる。
【0047】
次に、ステップS3の詳細処理について説明する。理解を容易にするため、把持装置12は平行移動し、姿勢の変化はないものとする。
【0048】
一般化し、把持装置12にはフィンガ14がN本あるとし、finger(0)〜finger(n−1)と識別する。finger(i)のワーク16の表面上の把持位置をPiとする(iは0〜n−1の整数)。
【0049】
図7及び図8に示すように、finger(i)の先端をPiに到達させることができる把持装置12の位置の集合Uihandを求める。集合Uifingerを、把持装置12の基準位置Px(プレート18における所定点(例えば、Finger(0)とfinger(1)の中間点)とする。)から見てfinger(i)の先端が到達可能な範囲とする。このとき、
【0050】
【数1】
【0051】
となる。
【0052】
finger(0)〜finger(n−1)の先端がそれぞれ把持位置P0〜Pn-1に到達できる把持装置12の位置の集合Uhandは、
【0053】
【数2】
【0054】
となる。
【0055】
このような集合を求める際のワーク16の近似的な表現方法を検討する。
【0056】
全てのfinger(i)の先端が到達可能な範囲の集合Uihandが凸形状である場合、それらの積集合Uhandも凸形状となる。Uhandが凸形状である場合、この集合に内接する凸多面体PhandでUhandを近似するとよい。
【0057】
図9に示すように、凸多面体Phandは、次の(3)式で示される線形行列不等式を満たすPbとなる。ここで、Ab、bbは凸多面体Phandの頂点で決まる行列及びベクトルである。
【0058】
【数3】
【0059】
図10に示すように、Uhandが非凸である場合には、複数の凸多面体に分割し、その和集合で近似し、(4)式のように表すとよい。(4)式はn個の凸多面体に分割した場合の例である。
【0060】
【数4】
【0061】
次に、把持装置12の位置の準最適化について説明する。
【0062】
ワーク16を安定的に把持するためには、把持力によりワーク16が働く力とモーメントが釣り合う必要があり、力の釣り合いを示す(5)式及びモーメントの釣り合いを示す(6)式で表される。
【0063】
【数5】
【0064】
【数6】
【0065】
fi:finger(i)の把持力のベクトル
m:ワーク16の質量
g:重力加速度ベクトル
Pi:基準座標系からみたfinger(i)の先端の把持位置を示す位置ベクトル
Pm:基準座標系からみたワーク16の重心を表す位置ベクトル
である。
【0066】
次に、ステップS5における許容外力Dの算出について説明する。
【0067】
許容外力Dは、ワーク16を安定して把持しているときに許容できる外力の大きさを示す指標であり、換言すればロバスト性の高さを示す。許容外力Dは、評価関数Fevaluationとして記述し、(5)式、(6)式及び(3)式による制約下(若しくは(5)式、(6)式及び(4)式による制約下)で、Fevaluationを最大にする把持装置12の位置Pb(finger(i)の把持位置は固定とする。)に基づいて求める。
【0068】
図11に示すように、finger(i)とワーク16の摩擦係数がμである場合に、ワーク16上の把持点における法線ベクトルVNを中心に描いた摩擦円錐50を設定する。
【0069】
摩擦円錐50の開き角度γは、γ=tan-1μである。finger(i)が滑らないためには把持力fiのベクトルがこの摩擦円錐50内にあることが必要であるが、実際には把持力fiとして発生し得る上限値が存在するため、図12に示すように、該上限値が複数の限界境界面52、54、56として表され、全体として、一部が円錐形状の立体58が設定される。
【0070】
このとき、把持力fiから立体58の各面(つまり、摩擦円錐50、限界境界面52、54、56)までの距離diが大きいほど許容できる外力が大きいことになるので、距離diの最小値を次の(7)式のように評価関数Fevaluationとして記述する。
【0071】
【数7】
【0072】
把持装置12の最適化においては、(5)式、(6)式及び(3)式による制約下(若しくは(5)式、(6)式及び(4)式による制約下)で、(7)式を最大化するPbを求めればよい。
【0073】
この最適化問題の解法としては、例えば、最急降下法等の最適化手法を用いることにより準最適解(局所的な最適解)を求めてもよい。
【0074】
また、距離diを求めるにあたっては、計算を簡単にするために摩擦円錐50の部分を、図13に示すように、多角錐50a(例えば正八角錐)で近似してもよい。
【0075】
距離diの最小値、つまりFevaluationから許容外力Dを求める手順は次の通りである。
【0076】
【数8】
【0077】
ここで、左辺は把持力によるワーク16に作用する合力を示し、左辺左側の行列をA、左辺右側の行列をfとする。右辺左側の行列をBとする。fmはワーク16に作用する外力である。
【0078】
ついで、次の(9)式の計算をする。
【0079】
【数9】
【0080】
ここで、B+Aは、外力と把持力とを関係付ける変換行列であり、B+はBの擬似逆行列である。
【0081】
さらに、次の(10)式によって特異値分解をする。
【0082】
【数10】
【0083】
この後、許容外力Dを図14に示す許容外力楕円体70に基づき、D=min(dminσi)として求められる。
【0084】
ここで、uiは許容外力楕円体70の主軸の3次元ベクトルであり、dminσiは、各軸の許容外力の大きさであり、min()は最小値を選択する関数とする。
【0085】
前記のステップS2におけるメッシュ作成の処理では、把持装置12の位置を上記手段で求める位置に固定した状態でfinger(i)の先端が到達可能な範囲をUifingerとし、ワーク16表面上における把持可能な領域をOとする。Si=Uifinger∩Oとし、図15に示すようにSi上の点を十分な点集合で近似してメッシュを構成すればよい。この点群に関してそれぞれ隣接する点間の関係を記録し、又は所定の関係式で明らかとなるようにしておく。
【0086】
上述したように、本実施の形態に係る把持位置計算装置としてのコンピュータ11及び把持位置計算方法によれば、許容される外力の大きさを示す指標である許容外力に基づいて把持位置を求めることにより、フィンガ14でワーク16を把持する際に、より安定して把持することができる。
【0087】
また、摩擦円錐50、及びフィンガ14の先端が発生し得る把持力の限界境界面52、54、56に基づいた判断によれば、許容外力Dが適切に求められ、一層安定してワーク16を把持することができる。
【0088】
制御装置10によって制御される把持装置12のフィンガ14の数は4本に限らず、例えば、2本や3本でもよい。また、可動のフィンガ14は1本として、ワーク16を挟持する相手方部材は固定部材としてもよい。
【0089】
フィンガ14の関節の数は3に限らず、2又は4以上であってもよい。
【0090】
本発明に係る把持位置計算装置及び把持位置計算方法は、上述の実施の形態に限らず、本発明の要旨を逸脱することなく、種々の構成を採り得ることはもちろんである。
【符号の説明】
【0091】
10…制御装置 11…コンピュータ
12…把持装置 14…フィンガ
14a…第1軸 14b…第2軸
14c…第3軸 16…ワーク
18…ベースプレート 20…第1アーム
22…第2アーム 24a〜24c…モータ
26a〜26c…角度センサ 50…摩擦円錐
52、54、56…限界境界面 58…立体
70…許容外力楕円体 100…ワーク設定部
102…ロボット位置算出部 104…メッシュ作成部
106…把持条件算出部 108…把持条件
110…記憶部 112…初期値特定部
114…許容外力算出部 116…選択部
【技術分野】
【0001】
本発明は、移動手段によって移動可能に設けられた多関節のマニピュレータによってワークを把持する位置を、コンピュータのオフライン処理で特定する把持位置計算装置及び把持位置計算方法に関する。
【背景技術】
【0002】
自動車の製造工程ではマニピュレータによる自動化の取り組みがなされており、例えば、予めティーチングされた動作を再現するティーチングプレイバック動作によって、溶接や塗装等の種々の処理が自動化されている。
【0003】
一方、単なるティーチングプレイバックではなく、ワークに応じて異なる動作が可能になると該マニピュレータの適用範囲が一層広がることになり、例えば、異なる形状のワーク又は異なる向きに配置されたワークを把持できると好適である。
【0004】
マニピュレータによって異なる形状のワークを把持する場合として、特許文献1には、ワークに対して最も接触点数が多くなる条件を最適な把持条件として算出する手段について記載されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2006−26875号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
上記の特許文献1では、ワークに対して最も接触点数が多くなるように制御をしているが、このような条件が最適な把持条件になるとの定量的な評価はなされていない。
【0007】
本発明はこのような課題を考慮してなされたものであり、マニピュレータでワークを把持する際に、より安定してワークを把持することのできる位置を求める把持位置計算装置及び把持位置計算方法を提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明に係る把持位置計算装置は、移動手段によって移動可能に設けられた多関節のマニピュレータによってワークを把持する位置を、コンピュータのオフライン処理で特定する把持位置計算装置であって、与えられた把持条件に対して、許容される外力の大きさを示す指標である許容外力を算出する許容外力算出部と、複数の前記把持条件に対して前記許容外力算出部によって許容外力を求め、算出された許容外力が最も大きい把持条件を選択する選択部とを有することを特徴とする。
【0009】
このように、許容される外力の大きさを示す指標である許容外力に基づいて把持位置を求めることにより、マニピュレータでワークを把持する際に、より安定して把持することができる。
【0010】
許容外力は、前記把持条件によって前記マニピュレータの先端が前記ワークを把持する位置を基準とした摩擦力の円錐境界面、及び前記マニピュレータの先端が発生し得る把持力の限界境界面からの距離のうち最も小さい距離を基準に求められてもよい。このように、摩擦力の円錐境界面、及びマニピュレータの先端が発生し得る把持力の限界境界面に基づいた判断によれば、許容外力が適切に求められ、一層安定してワークを把持することができる。
【0011】
また、本発明に係る把持位置計算方法は、移動手段によって移動可能に設けられた多関節のマニピュレータによってワークを把持する位置を、コンピュータのオフライン処理で特定する把持位置計算方法であって、前記マニピュレータが前記ワークをいずれかの姿勢で把持可能となる前記移動手段の位置を求める第1工程と、前記第1工程で求められた前記移動手段の位置を基準に、前記ワークを前記マニピュレータの先端で把持する把持位置の初期値を特定し、該初期値を計算対象位置とする第2工程と、その時点の計算対象位置で前記ワークを把持した場合に、許容される外力の大きさを示す指標である許容外力を算出して記憶する第3工程と、前記計算対象位置の回りの複数の近傍位置で把持した場合の許容外力をそれぞれ算出して記憶する第4工程と、前記第3工程及び前記第4工程の後に、前記計算対象位置における許容外力がその回りの全ての前記近傍位置における許容外力以上である場合に、前記計算対象位置を把持候補位置として特定し、それ以外の場合に、許容外力が最も大きい前記近傍位置を前記計算対象位置に更新し、前記第4工程に戻る判断をする第5工程とを有することを特徴とする。
【0012】
このように、許容される外力の大きさを示す指標である許容外力に基づいて把持位置を求めることにより、マニピュレータでワークを把持する際に、より安定して把持することができる。また、第4工程及び第5工程を繰り返すことにより、一層適切な把持位置を求めることができる。
【0013】
許容外力は、前記把持条件によって前記マニピュレータの先端が前記ワークを把持する位置を基準とした摩擦力の円錐境界面、及び前記マニピュレータの先端が発生し得る把持力の限界境界面からの距離のうち最も小さい距離を基準に求められてもよい。
【0014】
前記第2工程における初期値を複数設定し、複数の該初期値に基づいて前記第3工程〜第5工程をそれぞれ行い、複数の前記把持候補位置のうち、許容外力が最も大きいものをさらに選択してもよい。これにより、さらに安定してワークを保持することが可能になる。
【発明の効果】
【0015】
本発明に係る把持位置計算装置及び把持位置計算方法によれば、許容される外力の大きさを示す指標である許容外力に基づいて把持位置を求めることにより、マニピュレータでワークを把持する際に、外力に対して安定して把持することができる。
【図面の簡単な説明】
【0016】
【図1】本実施の形態に係る把持位置計算装置による制御対象の把持装置の模式図である。
【図2】本実施の形態に係る把持位置計算装置のブロック構成図である。
【図3】本実施の形態に係る把持位置計算方法のフローチャートを示す図である。
【図4】4本のフィンガによりワークを把持する様子を示す図である。
【図5】1つの初期位置から許容外力を求める様子を示す模式図である。
【図6】複数の初期位置から許容外力を求める様子を示す模式図である。
【図7】UifingerとUifingerの当初の位置関係を示す図である。
【図8】UifingerとUifingerの移動後の位置関係を示す図である。
【図9】凸多面体の模式図である。
【図10】非凸多面体の模式図である。
【図11】摩擦円錐を示す図である。
【図12】摩擦円錐と複数の限界境界面からなる立体を示す図である。
【図13】図12の立体の一部を多角錐で近似した図である。
【図14】許容外力楕円体を示す図である。
【図15】ワーク表面上における把持可能な領域にメッシュを設けた図である。
【発明を実施するための形態】
【0017】
以下、本発明に係る把持位置計算装置及び把持位置計算方法について実施の形態を挙げ、添付の図1〜図15を参照しながら説明する。
【0018】
本実施の形態に係る把持位置計算装置としてのコンピュータ11は、図1に示す制御装置10で制御される把持装置12におけるフィンガ14の姿勢を予めオフライン処理で設定するものである。本実施の形態に係る把持位置計算方法は、コンピュータ11において行われる計算方法である。コンピュータ11は、パーソナルコンピュータやワークステーション等である。先ず、制御装置10、把持装置12及びフィンガ14について説明する。
【0019】
図1に示すように、制御装置10は、把持装置12が有する4本のフィンガ(マニピュレータ)14の制御をする装置である。把持装置12は、4本のフィンガ14を用いてパレットに格納されたワーク16を把持して搬送する。把持装置12は、多関節ロボット(移動手段)17の先端部に設けておき、ばら積み(位置、向きが不定)状態のワーク16を多関節ロボット17と協動して安定した状態で搬送可能となる。図1では、ワーク16を単純な円柱形状に示すが、形状、大きさ、向きは限定されない。
【0020】
制御装置10は、外部のコンピュータ11によってオフラインティーチングによって得られたデータを一部利用して把持装置12の制御をする。
【0021】
把持装置12は、ベースプレート18と、該ベースプレート18の下面四隅にそれぞれ設けられたフィンガ14とを有する。
【0022】
フィンガ14は、ベースプレート18の下面から下方に向けて突出するように設けられており、基端部においてベースプレート18と水平に旋回可能な第1軸14aと、該第1軸14aと直交する向きに回転可能で第1アーム20を屈曲させる第2軸14bと、該第2軸14bと同じ向きに回転可能で第1アーム20に対して第2アーム22を屈曲させる第3軸14cとを有する。フィンガ14は、さらに、第1軸14a、第2軸14b及び第3軸14c(以下、簡便に関節とも呼ぶ。)の駆動モータとしてのモータ24a、モータ24b及びモータ24cと、第1軸14a、第2軸14b及び第3軸14cの角度を検出する角度センサ26a、角度センサ26b及び角度センサ26cとを有する。
【0023】
このように、フィンガ14は3軸を有する多関節構成であり、第2アーム22の先端部がワーク16に当接する。4本のフィンガ14は同構成であって、ベースプレート18の中心部を基準として対称に設けられている。フィンガ14には角度センサ26a〜26c以外に特にセンサ(力センサやトルクセンサ等)がなく、簡便構成である。モータ24a〜24c及び角度センサ26a〜26cは、必ずしも関節に直接的に設ける必要はなく所定の回転伝達部材を介して接続されていてもよい。モータ24a〜24cには減速機が設けられていてもよい。モータ24a〜24cにはサーボモータを用いると好適である。
【0024】
制御装置10は、フィンガ14毎に制御部を有しており、一部又は全部をコンピュータによるソフトウェア処理によって実現している。制御装置10は、図示しないワーク認識装置に接続されている。該ワーク認識装置は、光学手段等を用いて個別のワーク16を識別し、その位置及び向きを示す情報を制御装置10に供給する。制御装置10ではワーク認識装置から得られた情報に基づいて、ワーク16を適切に把持するべく、状況に応じて位置制御モード及び力制御モードに切換可能である。
【0025】
制御装置10は、コンピュータ11から予め得ている複数のティーチングデータから、ワーク16の状況に応じて適切なものを選択し、位置制御モードでフィンガ14を制御することができる。
【0026】
次に、コンピュータ11及び該コンピュータ11において行われるオフライン処理について説明する。
【0027】
図2に示すように、コンピュータ11は、ワーク設定部100と、ロボット位置算出部102と、メッシュ作成部104と、把持条件算出部106と、複数の把持条件108を記憶する記憶部110と、初期値特定部112と、許容外力算出部114と、選択部116とを有する。
【0028】
ワーク設定部100はワーク16の形状及び向きを設定する。ロボット位置算出部102は、ワーク設定部100で設定されたワーク16の状態に基づいて多関節ロボット17の姿勢を求める。メッシュ作成部104は、ワーク16の全面又は、フィンガ14によって把持可能な領域について所定のメッシュ(又は、把持候補点群)を作成する。把持条件算出部106は、4本のフィンガ14によってワーク16を把持する条件である把持条件108を算出する。算出された把持条件108は記憶部110に記憶される。把持条件108は、メッシュ作成部104で設定されるメッシュに応じて複数求められる。初期値特定部112は、メッシュ作成部104で設定されたメッシュに基づいて、いずれか点(1以上の点)から計算を開示するか設定する。許容外力算出部114は、初期値特定部112で特定された点及びその周辺の点について許容外力Dを算出する。選択部116は、許容外力算出部114で算出された許容外力Dが最も大きいものを選択する。
【0029】
図2に示すコンピュータ11の各機能部は一部又は全部をソフトウェア処理によって実現しているが、条件によっては一部(例えば、初期位置P0の特定)を人手によって設定してもよい。図2に示す各機能は、必ずしも1台のコンピュータ内で行う必要はない。
【0030】
以下に説明する処理は、コンピュータ11によって設定される仮想の3次元空間において行われるオフライン処理である。オフライン処理では、実際の把持装置12が不要であって、モデルを自由に設定でき、しかも計算時間の制約がない。以下の説明では、理解を容易にするため、把持装置12の4本のフィンガ14のうち3本は予め姿勢が設定されており、残余の1本の姿勢について設定するものとし、特に断りのない限りフィンガ14は設定対象の1本を示す。
【0031】
先ず、図3〜図6に基づいて、全体的な処理について説明し、その後に個別の処理について説明する。
【0032】
図3のステップS1において、モデル(例えばポリゴンモデル)のワーク16を所定の向きに配置する。この向きは適宜変更し、複数の向きについて以下の処理を行っておき、各向きに対応してフィンガ14の把持データを求めておくとよい。ワーク16については、図1に示すような円柱形状だけでなく、想定される種々の形状、大きさ及び向きについて処理を行い、データを設けておくとよい。
【0033】
ステップS2において、初期段階として、ワーク16の表面に対してフィンガ14の先端部が当接するための全ての候補としてメッシュを設ける(図5、図15参照)。ここではメッシュを格子状とするが、例えば、ワーク16のモデルとして表されているポリゴンメッシュ(例えば三角形のメッシュ)等をそのまま用いてもよい。メッシュは、把持位置を特定する候補として十分に細かく、且つ不必要に計算負荷が増大しない程度に設定しておく。メッシュを設けるステップは、後述するようにUifingerに基づいて行ってもよい。
【0034】
ステップS3において、図4に示すように、多関節ロボット17によって配置される把持装置12の位置を設定する。この位置は、フィンガ14がワーク16をいずれかの姿勢で把持可能となるように設定する。
【0035】
ステップS4において、図5に示すように、ステップS3で求められた位置を基準として、ワーク16をフィンガ14の先端で把持する初期位置(初期値)P0をステップS2で設定したメッシュに基づいて特定し、該初期位置P0を計算対象位置Pとする。初期位置P0は予め複数設定しておき、そのうち未処理のもののいずれか1つを選択する。
【0036】
ここで、初期位置P0及びその周辺の近傍点Pcによる把持条件は、その把持位置だけでなく、ベクトル量としての把持力fm(図12参照)も併せて設定されているものとする。
【0037】
ステップS5において、その時点の計算対象位置Pでワーク16を把持した場合に、把持位置を維持できる外力の大きさを示す指標である許容外力Dを算出して記憶する。計算対象位置Pに対応する許容外力DをDpとする。許容外力Dの詳細については後述する。
【0038】
ステップS6において、計算対象位置Pの回りの8つの近傍点Pcで把持した場合の許容外力Dをそれぞれ算出して記憶する。近傍点Pcにおける許容外力DをDcとする。近傍点Pcは、計算対象位置Pを基準として上下左右及び斜め4方の合計8つの点としているが、例えば、上下左右の4点だけにしてもよい。
【0039】
ステップS7において、ステップS5及びS6で得られた許容外力Dpと各許容外力Dcとを比較する。許容外力Dpが全ての許容外力Dcより大きいときには、ステップS9へ移り、いずれかの許容外力Dcが許容外力Dpより大きいときにはステップS8へ移る。
【0040】
ステップS8において、許容外力Dcが最も大きい近傍点Pcを選び出し、計算対象位置Pを該近傍点Pcに更新する(図5の矢印A参照)。この後、ステップS5へ戻り、計算を続行する。
【0041】
このような繰り返し処理によれば、図5に示すように、最初に選んだ初期位置P0に基づいた収束計算が行われ、少なくともその周辺の中で最も許容外力Dが大きい箇所を選び出すことができる。この場合、繰り返し計算の最中に、更新された計算対象位置P、及び許容外力Dが計算済みの近傍点Pcについては、許容外力Dの再計算を省略してもよい。また、繰り返し計算を所定回数行っても許容外力Dが収束しないときには、計算を途中で打ち切り、所定の対応処理を行ってもよい。
【0042】
一方、ステップS9においては、その時点の計算対象位置Pを把持候補位置として設定する。
【0043】
ステップS10において、予め準備した初期位置P0の全てについて処理が終わっているか否かを確認し、未処理のものがあればステップS4へ戻り、全て終了していればステップS10へ移る。
【0044】
ステップS11において、複数の初期位置P0に基づいて得られた複数の把持候補のうち、許容外力Dcが最も大きいものを選択して最終的な把持位置として設定する。得られた把持位置は所定の記憶部に記憶するとともに、制御装置10に供給しておく。
【0045】
制御装置10では、把持装置12の運転時に、所定の光学手段から得られる情報に基づいて複数のワーク16の把持すべき1つを選択し、該ワーク16の状態に近いモデルに基づいて得られた把持条件及び把持位置のデータを検索する。検索して得られたデータに基づいてフィンガ14を位置制御モードで駆動し、ワーク16を把持する。この時点でフィンガ14の先端とワーク16の表面との間に多少の位置誤差があったとしても、その後に力制御モードに移行することによって位置誤差はなくなり、ワーク16を適切な姿勢及び力で把持することができる。
【0046】
このように、複数の初期位置P0に基づいて収束計算をそれぞれ行うことにより、図6に示すように、各初期位置P0(図6ではP01、P02、P03、P04と示す。)に対応して複数の把持位置候補Ptが得られる場合において、そのうち最も許容外力Dが大きいものを選択することができる。
【0047】
次に、ステップS3の詳細処理について説明する。理解を容易にするため、把持装置12は平行移動し、姿勢の変化はないものとする。
【0048】
一般化し、把持装置12にはフィンガ14がN本あるとし、finger(0)〜finger(n−1)と識別する。finger(i)のワーク16の表面上の把持位置をPiとする(iは0〜n−1の整数)。
【0049】
図7及び図8に示すように、finger(i)の先端をPiに到達させることができる把持装置12の位置の集合Uihandを求める。集合Uifingerを、把持装置12の基準位置Px(プレート18における所定点(例えば、Finger(0)とfinger(1)の中間点)とする。)から見てfinger(i)の先端が到達可能な範囲とする。このとき、
【0050】
【数1】
【0051】
となる。
【0052】
finger(0)〜finger(n−1)の先端がそれぞれ把持位置P0〜Pn-1に到達できる把持装置12の位置の集合Uhandは、
【0053】
【数2】
【0054】
となる。
【0055】
このような集合を求める際のワーク16の近似的な表現方法を検討する。
【0056】
全てのfinger(i)の先端が到達可能な範囲の集合Uihandが凸形状である場合、それらの積集合Uhandも凸形状となる。Uhandが凸形状である場合、この集合に内接する凸多面体PhandでUhandを近似するとよい。
【0057】
図9に示すように、凸多面体Phandは、次の(3)式で示される線形行列不等式を満たすPbとなる。ここで、Ab、bbは凸多面体Phandの頂点で決まる行列及びベクトルである。
【0058】
【数3】
【0059】
図10に示すように、Uhandが非凸である場合には、複数の凸多面体に分割し、その和集合で近似し、(4)式のように表すとよい。(4)式はn個の凸多面体に分割した場合の例である。
【0060】
【数4】
【0061】
次に、把持装置12の位置の準最適化について説明する。
【0062】
ワーク16を安定的に把持するためには、把持力によりワーク16が働く力とモーメントが釣り合う必要があり、力の釣り合いを示す(5)式及びモーメントの釣り合いを示す(6)式で表される。
【0063】
【数5】
【0064】
【数6】
【0065】
fi:finger(i)の把持力のベクトル
m:ワーク16の質量
g:重力加速度ベクトル
Pi:基準座標系からみたfinger(i)の先端の把持位置を示す位置ベクトル
Pm:基準座標系からみたワーク16の重心を表す位置ベクトル
である。
【0066】
次に、ステップS5における許容外力Dの算出について説明する。
【0067】
許容外力Dは、ワーク16を安定して把持しているときに許容できる外力の大きさを示す指標であり、換言すればロバスト性の高さを示す。許容外力Dは、評価関数Fevaluationとして記述し、(5)式、(6)式及び(3)式による制約下(若しくは(5)式、(6)式及び(4)式による制約下)で、Fevaluationを最大にする把持装置12の位置Pb(finger(i)の把持位置は固定とする。)に基づいて求める。
【0068】
図11に示すように、finger(i)とワーク16の摩擦係数がμである場合に、ワーク16上の把持点における法線ベクトルVNを中心に描いた摩擦円錐50を設定する。
【0069】
摩擦円錐50の開き角度γは、γ=tan-1μである。finger(i)が滑らないためには把持力fiのベクトルがこの摩擦円錐50内にあることが必要であるが、実際には把持力fiとして発生し得る上限値が存在するため、図12に示すように、該上限値が複数の限界境界面52、54、56として表され、全体として、一部が円錐形状の立体58が設定される。
【0070】
このとき、把持力fiから立体58の各面(つまり、摩擦円錐50、限界境界面52、54、56)までの距離diが大きいほど許容できる外力が大きいことになるので、距離diの最小値を次の(7)式のように評価関数Fevaluationとして記述する。
【0071】
【数7】
【0072】
把持装置12の最適化においては、(5)式、(6)式及び(3)式による制約下(若しくは(5)式、(6)式及び(4)式による制約下)で、(7)式を最大化するPbを求めればよい。
【0073】
この最適化問題の解法としては、例えば、最急降下法等の最適化手法を用いることにより準最適解(局所的な最適解)を求めてもよい。
【0074】
また、距離diを求めるにあたっては、計算を簡単にするために摩擦円錐50の部分を、図13に示すように、多角錐50a(例えば正八角錐)で近似してもよい。
【0075】
距離diの最小値、つまりFevaluationから許容外力Dを求める手順は次の通りである。
【0076】
【数8】
【0077】
ここで、左辺は把持力によるワーク16に作用する合力を示し、左辺左側の行列をA、左辺右側の行列をfとする。右辺左側の行列をBとする。fmはワーク16に作用する外力である。
【0078】
ついで、次の(9)式の計算をする。
【0079】
【数9】
【0080】
ここで、B+Aは、外力と把持力とを関係付ける変換行列であり、B+はBの擬似逆行列である。
【0081】
さらに、次の(10)式によって特異値分解をする。
【0082】
【数10】
【0083】
この後、許容外力Dを図14に示す許容外力楕円体70に基づき、D=min(dminσi)として求められる。
【0084】
ここで、uiは許容外力楕円体70の主軸の3次元ベクトルであり、dminσiは、各軸の許容外力の大きさであり、min()は最小値を選択する関数とする。
【0085】
前記のステップS2におけるメッシュ作成の処理では、把持装置12の位置を上記手段で求める位置に固定した状態でfinger(i)の先端が到達可能な範囲をUifingerとし、ワーク16表面上における把持可能な領域をOとする。Si=Uifinger∩Oとし、図15に示すようにSi上の点を十分な点集合で近似してメッシュを構成すればよい。この点群に関してそれぞれ隣接する点間の関係を記録し、又は所定の関係式で明らかとなるようにしておく。
【0086】
上述したように、本実施の形態に係る把持位置計算装置としてのコンピュータ11及び把持位置計算方法によれば、許容される外力の大きさを示す指標である許容外力に基づいて把持位置を求めることにより、フィンガ14でワーク16を把持する際に、より安定して把持することができる。
【0087】
また、摩擦円錐50、及びフィンガ14の先端が発生し得る把持力の限界境界面52、54、56に基づいた判断によれば、許容外力Dが適切に求められ、一層安定してワーク16を把持することができる。
【0088】
制御装置10によって制御される把持装置12のフィンガ14の数は4本に限らず、例えば、2本や3本でもよい。また、可動のフィンガ14は1本として、ワーク16を挟持する相手方部材は固定部材としてもよい。
【0089】
フィンガ14の関節の数は3に限らず、2又は4以上であってもよい。
【0090】
本発明に係る把持位置計算装置及び把持位置計算方法は、上述の実施の形態に限らず、本発明の要旨を逸脱することなく、種々の構成を採り得ることはもちろんである。
【符号の説明】
【0091】
10…制御装置 11…コンピュータ
12…把持装置 14…フィンガ
14a…第1軸 14b…第2軸
14c…第3軸 16…ワーク
18…ベースプレート 20…第1アーム
22…第2アーム 24a〜24c…モータ
26a〜26c…角度センサ 50…摩擦円錐
52、54、56…限界境界面 58…立体
70…許容外力楕円体 100…ワーク設定部
102…ロボット位置算出部 104…メッシュ作成部
106…把持条件算出部 108…把持条件
110…記憶部 112…初期値特定部
114…許容外力算出部 116…選択部
【特許請求の範囲】
【請求項1】
移動手段によって移動可能に設けられた多関節のマニピュレータによってワークを把持する位置を、コンピュータのオフライン処理で特定する把持位置計算装置であって、
与えられた把持条件に対して、許容される外力の大きさを示す指標である許容外力を算出する許容外力算出部と、
複数の前記把持条件に対して前記許容外力算出部によって許容外力を求め、算出された許容外力が最も大きい把持条件を選択する選択部と、
を有することを特徴とする把持位置計算装置。
【請求項2】
請求項1記載の把持位置計算装置において、
許容外力は、前記把持条件によって前記マニピュレータの先端が前記ワークを把持する位置を基準とした摩擦力の円錐境界面、及び前記マニピュレータの先端が発生し得る把持力の限界境界面からの距離のうち最も小さい距離を基準に求められることを特徴とする把持位置計算装置。
【請求項3】
移動手段によって移動可能に設けられた多関節のマニピュレータによってワークを把持する位置を、コンピュータのオフライン処理で特定する把持位置計算方法であって、
前記マニピュレータが前記ワークをいずれかの姿勢で把持可能となる前記移動手段の位置を求める第1工程と、
前記第1工程で求められた前記移動手段の位置を基準に、前記ワークを前記マニピュレータの先端で把持する把持位置の初期値を特定し、該初期値を計算対象位置とする第2工程と、
その時点の計算対象位置で前記ワークを把持した場合に、許容される外力の大きさを示す指標である許容外力を算出して記憶する第3工程と、
前記計算対象位置の回りの複数の近傍位置で把持した場合の許容外力をそれぞれ算出して記憶する第4工程と、
前記第3工程及び前記第4工程の後に、前記計算対象位置における許容外力がその回りの全ての前記近傍位置における許容外力以上である場合に、前記計算対象位置を把持候補位置として特定し、それ以外の場合に、許容外力が最も大きい前記近傍位置を前記計算対象位置に更新し、前記第4工程に戻る判断をする第5工程と、
を有することを特徴とする把持位置計算方法。
【請求項4】
請求項3記載の把持位置計算方法において、
許容外力は、前記把持条件によって前記マニピュレータの先端が前記ワークを把持する位置を基準とした摩擦力の円錐境界面、及び前記マニピュレータの先端が発生し得る把持力の限界境界面からの距離のうち最も小さい距離を基準に求められることを特徴とする把持位置計算方法。
【請求項5】
請求項3及び4記載の把持位置計算方法において、
前記第2工程における初期値を複数設定し、複数の該初期値に基づいて前記第3工程〜第5工程をそれぞれ行い、
複数の前記把持候補位置のうち、許容外力が最も大きいものをさらに選択することを特徴とする把持位置計算方法。
【請求項1】
移動手段によって移動可能に設けられた多関節のマニピュレータによってワークを把持する位置を、コンピュータのオフライン処理で特定する把持位置計算装置であって、
与えられた把持条件に対して、許容される外力の大きさを示す指標である許容外力を算出する許容外力算出部と、
複数の前記把持条件に対して前記許容外力算出部によって許容外力を求め、算出された許容外力が最も大きい把持条件を選択する選択部と、
を有することを特徴とする把持位置計算装置。
【請求項2】
請求項1記載の把持位置計算装置において、
許容外力は、前記把持条件によって前記マニピュレータの先端が前記ワークを把持する位置を基準とした摩擦力の円錐境界面、及び前記マニピュレータの先端が発生し得る把持力の限界境界面からの距離のうち最も小さい距離を基準に求められることを特徴とする把持位置計算装置。
【請求項3】
移動手段によって移動可能に設けられた多関節のマニピュレータによってワークを把持する位置を、コンピュータのオフライン処理で特定する把持位置計算方法であって、
前記マニピュレータが前記ワークをいずれかの姿勢で把持可能となる前記移動手段の位置を求める第1工程と、
前記第1工程で求められた前記移動手段の位置を基準に、前記ワークを前記マニピュレータの先端で把持する把持位置の初期値を特定し、該初期値を計算対象位置とする第2工程と、
その時点の計算対象位置で前記ワークを把持した場合に、許容される外力の大きさを示す指標である許容外力を算出して記憶する第3工程と、
前記計算対象位置の回りの複数の近傍位置で把持した場合の許容外力をそれぞれ算出して記憶する第4工程と、
前記第3工程及び前記第4工程の後に、前記計算対象位置における許容外力がその回りの全ての前記近傍位置における許容外力以上である場合に、前記計算対象位置を把持候補位置として特定し、それ以外の場合に、許容外力が最も大きい前記近傍位置を前記計算対象位置に更新し、前記第4工程に戻る判断をする第5工程と、
を有することを特徴とする把持位置計算方法。
【請求項4】
請求項3記載の把持位置計算方法において、
許容外力は、前記把持条件によって前記マニピュレータの先端が前記ワークを把持する位置を基準とした摩擦力の円錐境界面、及び前記マニピュレータの先端が発生し得る把持力の限界境界面からの距離のうち最も小さい距離を基準に求められることを特徴とする把持位置計算方法。
【請求項5】
請求項3及び4記載の把持位置計算方法において、
前記第2工程における初期値を複数設定し、複数の該初期値に基づいて前記第3工程〜第5工程をそれぞれ行い、
複数の前記把持候補位置のうち、許容外力が最も大きいものをさらに選択することを特徴とする把持位置計算方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【公開番号】特開2010−179443(P2010−179443A)
【公開日】平成22年8月19日(2010.8.19)
【国際特許分類】
【出願番号】特願2009−27596(P2009−27596)
【出願日】平成21年2月9日(2009.2.9)
【出願人】(000005326)本田技研工業株式会社 (23,863)
【出願人】(504139662)国立大学法人名古屋大学 (996)
【Fターム(参考)】
【公開日】平成22年8月19日(2010.8.19)
【国際特許分類】
【出願日】平成21年2月9日(2009.2.9)
【出願人】(000005326)本田技研工業株式会社 (23,863)
【出願人】(504139662)国立大学法人名古屋大学 (996)
【Fターム(参考)】
[ Back to top ]