説明

産業用ロボットの制御方法

【課題】マニピュレータとワークとの相対的な位置関係にズレが生じたとしても既教示データを教示修正することなく、そのまま再利用することができる産業用ロボットの制御方法を提供する。
【解決手段】教示時に教示点の位置姿勢データをユーザ座標系を基準としたユーザ座標値データで記憶し、再生時にこのユーザ座標値データ及びユーザ座標系に基づいてベース座標値データを算出し、このベース座標値データに基づいてロボットの各関節角度データを算出し、ワークが基準位置とは異なる位置に設置されたときは、複数の特徴点の位置を再指定してユーザ座標系を再定義し、再生時にユーザ座標値データ及び再定義されたユーザ座標系に基づいてベース座標値データを再算出し、この再算出されたベース座標値データに基づいてロボットの各関節角度データを算出することを特徴とする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、作成済みの教示データの位置及び姿勢の補正を行う産業用ロボットの制御方法に関するものである。
【背景技術】
【0002】
アーク溶接、スポット溶接等の加工作業をロボットで実現する場合、ティーチングプレイバックと呼ばれる方式が採用されることが一般的である。ティーチングプレイバック方式とは、予め決められた位置にワークを設置して、マニピュレータとワークとの相対的な位置関係を拘束した状態で、ワークに対するマニピュレータの動作を教示し、この教示データを繰り返し再生動作させることで、同一品種のワークを連続して加工するという方法である。
【0003】
図5は、このティーチングプレイバック方式を採用した産業用ロボットの一般的な構成図である。同図において、マニピュレータ1は、アーム2の先端にワークWを加工するためのツールTを備えている。ティーチペンダント3は、ワークWに対するマニピュレータ1の動作を作業者が教示するための装置であり、その盤面上には、マニピュレータ1を移動させるためのボタン群4が装備されている。ボタン群4は、図示しているように座標系の方向(±X,±Y,±Z)に応じた複数のボタンが装備されているのが一般的である。例えば、ロボット個体に固有の座標系であるベース座標系でマニピュレータを移動させる場合は、ボタン群4のX+ボタンを押すと、ベース座標系のX+方向にマニピュレータ1が移動する。このように、作業者はボタン群4を操作することによってマニピュレータ1を所望の位置に動かして、加工作業を行わせるための作業経路を教示する。そして、作業経路上の教示点におけるマニピュレータ1の位置姿勢座標値が教示データとしてロボット制御装置5に記憶される。ロボット制御装置5は、教示データ及び図示しないエンコーダからの現在位置情報等に基づいて、マニピュレータ1の駆動モータを駆動制御して、ツールTを教示点に移動させる。
【0004】
図6は、教示時におけるマニピュレータの移動方向と座標系の関係について説明するための図である。マニピュレータ1、ワークWは、図5と同符号を付与した同一のものであるので説明を省略する。作業経路Kは、ワークWを加工するために必要な経路の1つであり、同図の場合は教示点Aと教示点Bとによって形成される。ベース座標系Cbはマニピュレータ1に固有の座標系である。ユーザ座標系Cuは作業者が任意に定義可能な座標系である。説明の便宜上、ベース座標系Cb、ユーザ座標系Cu共に、軸方向のX+とY+を矢印で表現しており、その他の軸方向は省略している。
【0005】
上述したように、作業者はマニピュレータ1を所望の位置に移動させてその位置を教示する。しかしながら、移動させるためのボタン操作は煩雑さを伴うことが多い。例えば、同図において作業経路Kを教示するために、現在位置である教示点Aから目標位置である教示点Bにマニピュレータ1を移動させる場合を想定する。教示点Aから教示点Bに向かう方向がベース座標系CbのX+方向に一致していれば、作業者はボタン群4のX+ボタンを押すだけでよい。しかしながら、ワークW上の作業経路Kは、ベース座標系Cbの軸方向と一致していない。このような場合、作業者はボタン群4のX+ボタン、Y+ボタン等を組み合わせて操作してマニピュレータ1を移動させる必要がある。ワークWが大型であったり作業経路Kが複雑であったりすると、マニピュレータ1の移動操作はより一層煩雑になる。
【0006】
そこで、近年の産業用ロボットでは、作業者が自分自身で座標系の原点位置と軸方向を所望値にすることができるユーザ座標系Cuを定義することによって、移動操作の煩雑さを解消する提案がなされている(例えば、特許文献1参照)。同図に示すように、作業経路Kの方向が座標系のX+方向に一致するようにユーザ座標系Cuを設定すれば、ボタン群4のX+ボタンのみの操作で教示点Bに移動させることができる。すなわち、座標系の原点位置及び方向をワークWの設置位置、形状等に合わせて所望の位置及び方向に設定することができるため、移動操作の煩雑さを解消できると共に教示工数の低減が可能である。なお、ユーザ座標系の定義方法は特許文献1等で開示されているようにワーク上の特徴点を3点指定するというものである。具体的には、ワークW上の任意の特徴点P1,P2,P3を指定することによってユーザ座標系Cuが定義される。
【0007】
図7は、従来、教示データがどのように記憶され、再生動作されるのかを説明するためのフローチャート図である。
【0008】
同図のステップS1において、作業者は、上述した方法によってユーザ座標系を定義する。ステップS2において、ユーザ座標系の軸方向に従って作業経路上の教示点までマニピュレータを移動する。そしてステップS3において、教示点の記憶操作を行う。このとき、教示データとして記憶されるマニピュレータ1の位置姿勢座標値は、ベース座標値データで記憶される。ユーザ座標系を基準にしてマニピュレータ1を移動しても教示データとして記憶される位置姿勢座標値は、ユーザ座標値データではなくベース座標値データである。
【0009】
ステップS4において、作業経路の教示が全て終了していない場合は、ステップS2に戻り、次の教示点への移動操作と記憶操作を行う。作業経路の教示が終了している場合は、ステップS5で再生動作の開始操作を行う。再生動作が開始されると、ステップS6においてロボット制御装置が教示点毎に位置姿勢座標値を読み出す。マニピュレータの各関節はモータの回転駆動により制御されるため、再生位置は関節角度として算出する必要がある。そのため、ステップS7において、ベース座標値データに基づいてマニピュレータの各関節角度を算出する逆変換演算を行う。そして、ステップS8において、マニピュレータの各関節を回転駆動することによって、算出された各関節角度の位置、すなわち教示点まで移動させる。最後にステップS9において全ての教示点の再生動作が終了していない場合は、ステップS6に戻り、次の教示点の再生動作を行う。全ての教示点の再生動作が終了している場合は、フローを終了する。
【0010】
【特許文献1】特開昭61−49205号公報
【非特許文献1】「ロボット・マニピュレータ」コロナ社、Richard P.Paul著
【発明の開示】
【発明が解決しようとする課題】
【0011】
ところで、再生動作の度にワークWの設置位置が変化する場合には、ティーチペンダント3を使用して、作業者が教示点を修正する必要がある。作業者は、教示点が所望の位置から外れている場合には、ティーチペンダント3を使用してマニピュレータ1を所望の位置に動かした後、教示点を修正する(教示しなおす)という作業を、教示点の数だけ繰り返し行う必要があるため、多くの作業工数が必要になる。
【0012】
通常はこのような教示点の修正が必要ないように、ワークWを固定する治具を準備して、ワークWの設置位置がばらつかないための工夫を行う。しかしながら、治具を使用してもワークWが大型になると、教示時と寸分の違いもなくワークWを設置することは現実的には難しくなる。ワークWを固定する治具自身も大きくかつ頑丈せざるを得ないため治具が高価になり、また大型のワークはワーク自身の寸法に誤差を生じやすいためである。
【0013】
このように、ユーザ座標系を定義して教示時の操作簡易化及び教示工数の低減を図っていても、ワークの設置位置が再生動作の度に変化すると、再度教示点の修正作業を行わなければならないという課題を抱えている。
【0014】
なお、ワークWとマニピュレータ1の相対的な位置関係が、再生動作の度に変化することをある程度許容して、センサ機器をロボットに取り付けて教示点の補正を自動的に行うことも可能である。例えば、アーク溶接ロボットの場合には、タッチセンサと呼ばれるセンサを用いる。マニピュレータ1の先端に取り付けられたアーク溶接トーチの先端から消耗電極として溶接ワイヤが送給される。そのワイヤ先端に電圧を印可し、溶接ワイヤがワークWに接触したことを溶接ワイヤとワーク間の通電により検出することをタッチ検出動作と呼ぶ。タッチセンサを用いてワークWの設置位置を検出することにより、教示時と加工作業時とのワークWの位置のズレを検出することで、既教示データの位置姿勢座標値を、適宜適切に補正することが可能になる。しかしながら、タッチセンサを使用した方法であっても、教示点の数が多い場合にはタッチ検出動作の教示も多くなる、すなわち多大な教示工数が必要となるという課題を抱えている。さらに、再生動作時に多くのタッチ検出動作を行うことになるため、タクトタイムの増加につながるという課題を抱えている。
【0015】
さらにアーク溶接ロボットの場合は、アークセンサと呼ばれるセンサ機器をロボットに取り付けて教示点の補正を自動的に行うことも可能である。しかしながらアークセンサは、アーク溶接を開始した後の溶接線のズレを検出することしかできない。すなわち、ワークWが大きくズレた場合には対応できない。
【0016】
本発明は、特に教示点の数が多く、かつワークの正確な設置が困難な大型ワークの加工作業を行う場合において、マニピュレータとワークとの相対的な位置関係にズレが生じたとしても既教示データを教示修正することなく、そのまま再利用することができる産業用ロボットの制御方法を提供することを目的とする。
【課題を解決するための手段】
【0017】
上記目的を達成するために、第1の発明は、ワークが基準位置に設置されているときに、ワーク上の複数の特徴点を指定することによって直交座標系の原点及び軸方向が所望値であるユーザ座標系を定義し、教示時にこのユーザ座標系の軸方向に従ってロボットを移動させて作業経路を教示してこの作業経路上の教示点の位置姿勢データをロボット個体に固有の直交座標系であるベース座標系を基準としたベース座標値データで記憶し、再生時にこのベース座標値データに基づいてロボットの各関節角度データを算出して動作制御を行う産業用ロボットの制御方法において、
教示時に前記教示点の位置姿勢データを前記ユーザ座標系を基準としたユーザ座標値データで記憶し、
再生時にこのユーザ座標値データ及び前記ユーザ座標系に基づいて前記ベース座標値データを算出し、このベース座標値データに基づいてロボットの各関節角度データを算出し、
ワークが前記基準位置とは異なる位置に設置されたときは、前記複数の特徴点の位置を再指定して前記ユーザ座標系を再定義し、
再生時に前記ユーザ座標値データ及び前記再定義されたユーザ座標系に基づいて前記ベース座標値データを再算出し、この再算出されたベース座標値データに基づいてロボットの各関節角度データを算出することを特徴とする産業用ロボットの制御方法である。
【0018】
第2の発明は、第1の発明に記載の特徴点の位置の再指定を、位置計測器によって測定して行うことを特徴とする産業用ロボットの制御方法である。
【発明の効果】
【0019】
第1の発明によれば、特に教示点の数が多く、かつワークの正確な設置が困難な大型ワークの加工作業を行う場合において、マニピュレータとワークとの相対的な位置関係にズレが生じたとしても、既教示データを教示修正することなく、そのまま再利用することができる。例えば、教示点が数百にも及ぶような大きな教示データであっても、ワーク上の複数の特徴点を再指定してユーザ座標系を再定義しさえすれば、教示点を1点も修正することなく、そのまま再利用できる。
【0020】
第2の発明によれば、ワーク上の複数の特徴点の再指定を、作業者ではなく、位置計測器によって自動的に測定して行うようにしたので、作業者自身が特徴点の再指定を行う必要がない。すなわち、第1の発明が有する効果に加えて、さらに作業者の作業工数を低減できる。
【発明を実施するための最良の形態】
【0021】
[実施の形態1]
発明の実施の形態を実施例に基づき図面を参照して説明する。なお、本実施の形態に記載している数式及び算出手順の詳細については、非特許文献1に記載されている。
【0022】
図1は、本実施形態によって教示データの補正が行われる流れを説明するためのフローチャート図である。図2は、ワークが基準位置に設置されているときにワーク上の特徴点を指定することによってユーザ座標系が定義されていることを説明するための図である。
【0023】
図2において、ワークWは基準位置Wkに設置されており、マニピュレータ1は、アーム2の先端にワークWを加工するためのツールTを備えている。ベース座標系Cbはマニピュレータ1に固有の座標系であり、原点Ob及び軸方向(Xb,Yb,Zb)を有している。ユーザ座標系Cuは作業者が任意に定義した座標系であり、図示しているように原点Ou及び軸方向(Xu,Yu,Zu)が定義されている。
【0024】
図1のステップS1において、作業者は、ワークWが基準位置Wkに設置されているときにワークW上の特徴点P1、P2及びP3を指定する。ロボット制御装置5は、指定された特徴点P1、P2及びP3の位置に基づき、ベース座標系Cbから見たユーザ座標系Cuの位置姿勢を表す同次変換行列Abuを算出し、記憶する。以下、この同次変換行列Abuの算出方法について説明する。
【0025】
まず、特徴点P1、P2及びP3におけるツールTの先端位置(以下、TCPという)のベース座標系での座標値(以下、ベース座標値データという)を算出する。非特許文献1に記載の手法によって、マニピュレータ1の移動後の位置(特徴点)の関節角度を、各関節を駆動するモータに直結されたエンコーダの出力としてロボット制御装置5が読み取り、予め定められたマニピュレータ1のアーム寸法と回転軸の配置を定義したリンクパラメータとに当てはめ、順演算と呼ばれる計算を行うことで、ベース座標系を基準としたTCPの位置が算出可能である。結果、特徴点P1、P2及びP3のそれぞれのベース座標値データBp1、Bp2及びBp3は次式で表される。
【0026】
【数1】

上記(1)〜(3)式で、P1x〜P3x,P1y〜P3y,P1z〜P3zは、ベース座標値データのX,Y,Z成分をそれぞれ表している。
【0027】
上記式で表される特徴点3点のベース座標値データに基づいて以下の演算を行い、最終的にベース座標系Cbから見たユーザ座標系Cuの位置姿勢を表す同次変換行列Abuを算出する。
【0028】
まず、特徴点P1の位置をユーザ座標系Cuの原点とする。すなわち、ユーザ座標系Cuの原点Ouは特徴点P1のベース座標値データBp1と同値であるので、次式によって表わすことができる。
【0029】
Ou=Bp1=[P1x,P1y,P1z] ‥‥(4)
【0030】
次に、ユーザ座標系CuのX軸を表すX軸ベクトルXvを算出する。X軸ベクトルXvは、特徴点P1から特徴点P2に向かうベクトルとするので、(1)式で表した特徴点P1のベース座標値データBp1、及び(2)式で表した特徴点P2のベース座標値データBp2とに基づいて次式で表される。
【0031】
Xv=[Xvx,Xvy,Xvz]
=[(P2x−P1x)/L1,
(P2y−P1y)/L1,
(P2z−P1z)/L1] ‥‥(5)
【0032】
上記(5)式のL1には、次式が代入される。
【0033】
L1=√((P2x−P1x)
(P2y−P1y)
(P2z−P1z)) ‥‥(6)
【0034】
次に、X軸ベクトルXvと特徴点P1から特徴点P3に向かうベクトルQvとの外積から、Z軸ベクトルZvを算出する。まず、ベクトルQvは、次式で表される。
【0035】
Qb=[Qvx,Qvy,Qvz]
=[(P3x−P1x)/L2,
(P3y−P1y)/L2,
(P3z−P1z)/L2] ‥‥(7)
【0036】
上記(7)式のL2には、下記に表す式が代入される。
【0037】
L2=√((P3x−P1x)
(P3y−P1y)
(P3z−P1z)) ‥‥(8)
【0038】
Z軸ベクトルZvは、(5)式で表されるX軸ベクトルXvと(7)式で表されるベクトルQvとの外積であるので、次式で表される。
【0039】
Zv=[Zvx,Zvy,Zvz]
=[Xvy・Qvz−Xvz・Qvy,
Xvz・Qvx−Xvx・Qvz,
Xvx・Qvy−Xvy・Qvx]‥‥(9)
【0040】
次に、Z軸ベクトルZvとX軸ベクトルXvの外積から、Y軸ベクトルYvを算出する。Y軸ベクトルYvは、次式で表される。
【0041】
Yv=[Yvx,Yvy,Yvz]
=[Zvy・Xvz−Zvz・Xvy,
Zvz・Xvx−Zvx・Xvz,
Zvx・Xvy−Zvy・Xvx]‥‥(10)
【0042】
上記(4)、(5)、(9)及び(10)式から、非特許文献1に記載の手法によって、ベース座標系Cbから見たユーザ座標系Cuの位置姿勢を表す同次変換行列Abuを次式で表すことができる。
【0043】
【数2】

【0044】
このようにして求めた同次変換行列Abuを、ロボット制御装置5に記憶する。
【0045】
図1に戻り、ステップS2において、作業者は基準位置Wkに設置されたワークWに対する教示が必要か否かを判断する。これまでのステップにおいて、基準位置Wkに設置されたワークWに対する教示は行っていない。したがって、ステップS3に進み、教示を行うものとして説明を続ける。
【0046】
ステップS3において、作業者は、ステップS1で算出されたユーザ座標系Cuの軸方向に従って作業経路上の教示点R1(図2参照)までマニピュレータ1のTCPを移動する。そしてステップS4において、作業者は教示点R1の記憶操作を行う。このとき、ロボット制御装置5は、ユーザ座標系Cuを基準としたTCPの位置姿勢座標値(以下、ユーザ座標値データという)を算出して、記憶する。以下、教示点R1におけるユーザ座標値データUr1の算出方法について説明する。
【0047】
まず、教示点R1のベース座標値データBr1を算出する。ベース座標値データBr1は(1)乃至(3)式を求めた手法と同様の手法で算出可能であるので、次式で表される。
【0048】
Br1=[R1x,R1y,R1z,R1α,R1β,R1γ]‥‥(12)
【0049】
上記(12)式から、ベース座標系から見た教示点R1におけるTCPへの同次変換行列Abrを、非特許文献1に記載の手法によって次式のように算出することができる。なお、下記式において○は回転行列を表す数値を示す。
【0050】
【数3】

【0051】
そして、(11)式及び(13)式から、ユーザ座標系から見た教示点R1の位置姿勢を表す同次変換行列Aurを次式によって算出することができる。なお、下記式において○は回転行列を表す数値を示す。
【0052】
【数4】

【0053】
さらに、上記(14)式から、教示点R1のユーザ座標値データUr1を次のように算出することができる。
【0054】
Ur1=[Ur1x,Ur1y,Ur1z,Ur1α,Ur1β,Ur1γ]
=[Sx,Sy,Sz,Ur1α,Ur1β,Ur1γ] ‥‥(15)
【0055】
上記(15)式において、Ur1x、Ur1y及びUr1zは、それぞれユーザ座標系上でのX軸、Y軸及びZ軸の位置座標値を表しており、(14)式で求められたSx、Sy及びSzと同じ値となる。Ur1α、Ur1β及びUr1γは、(14)式における回転行列部分によって求められるユーザ座標系上でのα、β及びγの姿勢座標値(回転角度)である。
【0056】
このようにして求められた教示点R1のユーザ座標値データUr1をロボット制御装置5に記憶する。教示点はR1のみではなく、数十から数百存在する場合がほとんどであるので、作業者は、図1のステップS3及びS4を繰り返すことによって、全ての教示点を記憶する。
【0057】
図1のステップS5において、作業経路の教示が全て終了した場合は、ステップS6に移る。ステップS6において、ワークWの設置位置が変更されているか否かを判断する。ワークWの設置位置が変更されていない場合は、ステップS7に移り、再生動作を開始する。ここでは、ワークWの設置位置が変更されたと想定してステップS1に戻り、ユーザ座標系を再定義を行うものとして説明を続ける。ステップS7以降の説明については後述する。
【0058】
ワークWの設置位置が変更された場合は、ステップS1に戻り、ユーザ座標系を再定義する。図3は、ワークが基準位置とは異なる位置に設置されたときに、ワーク上の特徴点を再指定して新たなユーザ座標系が再定義されていることを説明するための図である。
【0059】
図3において、ワークWは基準位置Wkとは異なる位置Wnに設置されている。教示点R1nは、ワークWが基準位置Wkに設置されているときに教示された教示点R1に相当する位置である。マニピュレータ1及びベース座標系Cbは、図2と同様であるので説明を省略する。ユーザ座標系Cunは作業者が再定義した座標系であり、図示しているように原点Oun及び軸方向(Xun,Yun,Zun)が定義されている。
【0060】
作業者は、基準位置とは異なる位置Wnに設置されたワークWにおいて、特徴点P1n、P2n及びP3nを再指定する。ロボット制御装置5は、再指定された特徴点P1n、P2n及びP3nの位置に基づき、ベース座標系Cbから見たユーザ座標系Cunの位置を表すユーザ座標系Cunの同次変換行列Abunを再算出し、記憶しなおす。算出方法は上述した(11)式を算出した方法と同じである。したがって、ベース座標系Cbを基準とした再指定後のユーザ座標系Cunの同次変換行列Abunは、次式で表すことができる。
【0061】
【数5】

【0062】
このようにして求めた同次変換行列Abunを、ベース座標系Cbから見たユーザ座標系Cunの位置として、ロボット制御装置5に記憶する。
【0063】
次にステップS2において、ワークWに対する教示は既に終了している。すなわち、異なる位置Wnに設置されたワークWに対して作業経路を教示しなおす必要はないので、ステップS7に移る。
【0064】
ステップS7において、再生動作の開始操作を行う。具体的には、ロボット制御装置5に装備された起動ボタン、生産ラインを制御する上位コントローラからの起動信号等を入力することによって、教示データが再生される。
【0065】
ステップS8において、教示データをロボット制御装置5から読み出す。教示データには、マニピュレータ1のTCPの再生位置がユーザ座標値データで記憶されている。例えば、教示点R1nの再生位置として、(15)式で表されるユーザ座標値データUr1が記憶されている。このユーザ座標値データUr1を元に、ユーザ座標系から見た教示点R1の位置姿勢を表す同次変換行列Aurnを算出する。すなわち、同次変換行列Aurnは、ワークWが異なる位置Wnに設置された後の再生動作時は未知の値であるため、ユーザ座標値データUr1に基づいて算出するという処理を行う。同次変換行列Aurnは、(14)式の同次変換行列Aurに基づいて(15)式のユーザ座標値データUr1を求めた演算と逆の演算を行えば容易に導き出すことができる。そして、ここで算出される教示点R1nの同次変換行列Aurnは、(14)式と全く同様の式となる。このことは、TCPの位置姿勢座標値をユーザ座標系を基準としたユーザ座標値データで記憶していれば、ワークWの設置位置に変化があったとしても同じ同次変換行列Aurが使用できるということである。
【0066】
次に、ステップS9において、教示点R1nのベース座標値データBr1nを算出する。そのために、ベース座標系から見た教示点R1nのTCPの位置を表す同次変換行列Abrnを算出する。ベース座標系から見たユーザ座標系の位置を表す同次変換行列Abunは(16)式にて既に算出されている。また、教示点R1nにおけるユーザ座標系から見たTCPの位置を表す同次変換行列Aurnも(14)式と同様の式となるので既に算出されている。したがって、ベース座標系から見た教示点R1nのTCPの位置を表す同次変換行列Abrnは、(14)式及び(16)式に基づき、下記式によって算出することができる。なお、下記式において○は回転行列を表す数値を示す。
【0067】
【数6】

【0068】
さらに、上記(17)式から教示点R1nのベース座標値データBr1nを算出する。
【0069】
Br1n=[Pbx,Pby,Pbz,Pbα,Pbβ,Pbγ]‥‥(18)
【0070】
Pbx、Pby及びPbzは、それぞれ、ベース座標系上でのX軸、Y軸及びZ軸の位置座標値を表している。Pbα、Pbβ及びPbγは、(17)式における回転行列部分によって求められるベース座標系上でのα、β及びγの姿勢座標値(回転角度)である。
【0071】
そして、ステップS10において、(18)式で求められたベース座標値データBr1nに基づいて、マニピュレータの各関節角度を算出する逆変換演算を行う。そして、ステップS11において、マニピュレータの各関節を回転駆動することによって、算出された各関節角度の位置、すなわち教示点R1nまで移動させる。最後にステップS12において全ての教示点の再生動作が終了していない場合は、ステップS8に戻り、次の教示点の再生動作を行う。全ての教示点の再生動作が終了している場合は、フローを終了する。
【0072】
以上説明したように、マニピュレータとワークとの相対的な位置関係にズレが生じたとしても、既教示データを教示修正することなく、そのまま再利用することができる。特に教示点の数が多く、かつワークの正確な設置が困難な大型ワークの加工作業を行う場合において、教示点が数百にも及ぶような大きな教示データであっても、ワーク上の複数の特徴点を再指定してユーザ座標系を再定義しさえすれば、教示点を1点も修正することなく、そのまま再利用できる。

[実施の形態2]
【0073】
次に、本発明の実施形態2について説明する。実施形態2は、特徴点の位置の再指定をタッチセンサ等の位置測定器によって測定して行うことによって、ユーザ座標系の再定義を作業者が行うのではなく、ロボットが自動的に行うものである。
【0074】
図4は、本発明の実施形態2によって教示データの補正が自動的に行われる流れを説明するためのフローチャート図である。同図において、破線を付与しているステップS1、S3乃至S5、及びS8乃至S12は、図1の同符号を付したステップとほぼ同じであるので説明を省略する。以下、実線で示した実施形態1とは異なるステップS7a及びS7bについてのみ説明する。
【0075】
ステップS7において再生動作の開始操作が行われると、ステップS7aにおいて、タッチセンサによるタッチ検出動作によって、特徴点3点それぞれについて、ベース座標系における基準位置からのズレ量(ΔXb,ΔYb,ΔZb)を検出する。
【0076】
そして、ステップS7bにおいて、ズレ量を特徴点3点のそれぞれのベース座標値データに加算する。この加算後のベース座標値データに基づいて、(1)式〜(11)式の演算を行い、ベース座標系を基準としたユーザ座標系の同次変換行列Abuを算出し、ロボット制御装置に記憶すれば良い。
【0077】
なお、実施形態2では、位置測定器としてタッチセンサを用いて自動的に補正する例を示したが、本発明は、これに限られるものではない。例えば、レーザセンサ等の画像処理装置を用いて測定し自動的に補正する場合も本発明に含まれるものである。
【0078】
このように、ワーク上の複数の特徴点の再指定を、作業者ではなく、位置計測器によって自動的に測定して行うようにしたので、作業者自身が特徴点の再指定を行う必要がない。すなわち、第1実施形態が有する効果に加えて、さらに作業者の作業工数を低減できる。
【図面の簡単な説明】
【0079】
【図1】本発明の実施形態1によって教示データの補正が行われる流れを説明するためのフローチャート図である。
【図2】ワークが基準位置に設置されているときにワーク上の特徴点を指定することによってユーザ座標系が定義されていることを説明するための図である。
【図3】ワークが基準位置とは異なる位置に設置されたときに、ワーク上の特徴点を再指定して新たなユーザ座標系が再定義されていることを説明するための図である。
【図4】本発明の実施形態2によって教示データの補正が自動的に行われる流れを説明するためのフローチャート図である。
【図5】ティーチングプレイバック方式を採用した産業用ロボットの一般的な構成図である。
【図6】教示時におけるマニピュレータの移動方向と座標系の関係について説明するための図である。
【図7】従来、教示データがどのように記憶され、再生動作されるのかを説明するためのフローチャート図である。
【符号の説明】
【0080】
1 マニピュレータ
2 アーム
3 ティーチペンダント
4 ボタン群
5 ロボット制御装置
Abr (ベース座標系から見た教示点R1の位置姿勢を表す)同次変換行列
Abrn (ベース座標系から見た教示点R1nの位置姿勢を表す)同次変換行列
Abu (ベース座標系から見たユーザ座標系の位置姿勢を表す)同次変換行列
Abun (ベース座標系から見たユーザ座標系の位置姿勢を表す)同次変換行列
Aur (ユーザ座標系から見た教示点R1の位置姿勢を表す)同次変換行列
Aurn (ユーザ座標系から見た教示点R1nの位置姿勢を表す)同次変換行列
Bp1 ベース座標値データ(特徴点P1)
Bp2 ベース座標値データ(特徴点P2)
Bp3 ベース座標値データ(特徴点P3)
Br1 ベース座標値データ(教示点R1)
Br1n ベース座標値データ(教示点R1n)
Cr ベース座標系
Cu ユーザ座標系
Cun ユーザ座標系(再定義後)
K 作業経路
Ob (ベース座標系の)原点
Ou (ユーザ座標系の)原点
Oun (再定義後のユーザ座標系の)原点
P1 特徴点
P2 特徴点
P3 特徴点
P1n 特徴点
P2n 特徴点
P3n 特徴点
Qv ベクトル
R1 教示点
R1n 教示点
T ツール
Ur1 ユーザ座標値データ
W ワーク
Wk 基準位置
Wn 基準位置と異なる位置
Xb 軸方向(ベース座標系X)
Xu 軸方向(ユーザ座標系X)
Xv X軸ベクトル
Yb 軸方向(ベース座標系Y)
Yu 軸方向(ユーザ座標系Y)
Yv Y軸ベクトル
Zb 軸方向(ベース座標系Z)
Zu 軸方向(ユーザ座標系Z)
Zv Z軸ベクトル



【特許請求の範囲】
【請求項1】
ワークが基準位置に設置されているときに、ワーク上の複数の特徴点を指定することによって直交座標系の原点及び軸方向が所望値であるユーザ座標系を定義し、教示時にこのユーザ座標系の軸方向に従ってロボットを移動させて作業経路を教示してこの作業経路上の教示点の位置姿勢データをロボット個体に固有の直交座標系であるベース座標系を基準としたベース座標値データで記憶し、再生時にこのベース座標値データに基づいてロボットの各関節角度データを算出して動作制御を行う産業用ロボットの制御方法において、
教示時に前記教示点の位置姿勢データを前記ユーザ座標系を基準としたユーザ座標値データで記憶し、
再生時にこのユーザ座標値データ及び前記ユーザ座標系に基づいて前記ベース座標値データを算出し、このベース座標値データに基づいてロボットの各関節角度データを算出し、
ワークが前記基準位置とは異なる位置に設置されたときは、前記複数の特徴点の位置を再指定して前記ユーザ座標系を再定義し、
再生時に前記ユーザ座標値データ及び前記再定義されたユーザ座標系に基づいて前記ベース座標値データを再算出し、この再算出されたベース座標値データに基づいてロボットの各関節角度データを算出することを特徴とする産業用ロボットの制御方法。
【請求項2】
請求項1記載の特徴点の位置の再指定を、位置計測器によって測定して行うことを特徴とする産業用ロボットの制御方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2007−115011(P2007−115011A)
【公開日】平成19年5月10日(2007.5.10)
【国際特許分類】
【出願番号】特願2005−305593(P2005−305593)
【出願日】平成17年10月20日(2005.10.20)
【出願人】(000000262)株式会社ダイヘン (990)
【出願人】(000005197)株式会社不二越 (625)
【Fターム(参考)】