上述した第1の方式は、尖頭状のエンドエフェクタの先端にTCPを設定する場合等、見た目でわかりやすい位置をTCPとする場合には、さほど問題にはならない。しかし、例えばハンドやチャックといった特定点の位置が目視ではわかりにくいエンドエフェクタの場合には、ロボットに3パターンの姿勢を取らせる際の特定点の位置を同一点に位置させる作業の精度が、作業者の熟練度によって大きく異なってしまう。
また、目視で作業を行うことから、作業員がロボットの特にエンドエフェクタに近い場所でツール座標系の較正作業を行うことになるので、作業員がエンドエフェクタに接触する恐れがある。さらに、エンドエフェクタに作業員が接触すると、エンドエフェクタの位置、姿勢がずれてしまい、最悪の場合はツール座標系の較正作業をやり直さなければならなくなる。そのため、第1の方式は余り好ましい方式とは言い難い。
次に、上述した第2の方式は、治具を用いる分だけエンドエフェクタの特定点を目標位置に合わせることに関する作業員の熟練度の問題は少ない。しかし、作業員がエンドエフェクタの近辺で作業を行わなければならず、エンドエフェクタに作業員が接触する恐れがある点においては、第1の方式と同様の問題がある。
続いて、上述した第3の方式は、エンドエフェクタの近辺での作業が必要ない分、作業環境面での問題は少ない。しかし、エンドエフェクタの構造が複雑になればなるほど、ロボットの制御系に入力する数値データと実際のエンドエフェクタの寸法との誤差が蓄積される恐れがあり、入力した数値データから較正されるツール座標系を必要とされる精度の範囲内に収めることが困難になる。
このような問題は、エンドエフェクタの加工精度を高めることで解消できるものの、それは即ちエンドエフェクタの製造コストを引き上げることにつながり、その面からして、対応できる範囲には自ずと限界がある。また、現場でロボット手先部にエンドエフェクタを取り付ける際に、微調整のための加工をエンドエフェクタに加えた場合には、設計図面などから得られるエンドエフェクタの寸法や形状に関する数値データが実際とは異なるものとなってしまう。そのため、図面などから得た数値データの入力により精度の高いツール座標系を較正することは、最早不可能となってしまう。
さらに、上述した第4の方式は、作業員の目視による調整ではないので、作業員の熟練度によるツール座標系の較正精度にバラツキが生じない。また、エンドエフェクタの近傍で作業を行う必要がないので、エンドエフェクタへの接触に関する問題も解消できる。
しかし、3次元視覚センサやその撮影画像を解析処理するハードウェア及びソフトウェアを含むシステムは非常に高価であり、それでいて、環境光の影響で測定精度が低下する恐れがある他、光学的測定を行う方式であることから、光学的な専門知識を持ったオペレータによる運用が必要となる、といった環境面や運用面での制約がある。
このように、上述した第1乃至第4の従来方式には、それぞれに問題点を有しており、未だ改良の余地を残すものであった。
ところで、上述した問題点は、エンドエフェクタをロボット手先部に取り付けたのに伴って、ロボット座標系におけるTCPの初期設定のためにツール座標系の較正作業を行う場合の話である。しかし、ツール座標系の較正作業は、ロボット座標系にエンドエフェクタのTCPを初期設定する場合だけに行うものではない。つまり、ロボット座標系にすでに設定されているエンドエフェクタのTCPを再設定するために、ツール座標系の較正作業を行う場合もある。
すでに設定されているロボット座標系におけるエンドエフェクタのTCPの再設定は、例えば、エンドエフェクタが周辺の別物体と干渉(衝突)して位置や姿勢にずれが生じた場合に必要となる。また、ロボット手先部とエンドエフェクタとの間にアダプタを介設してこのアダプタにセンサ類を装着している場合にも、このセンサ類に故障が生じた場合などに、エンドエフェクタのTCPの再設定が必要になる。
つまり、ロボット手先部とエンドエフェクタとの間のアダプタに装着したセンサ類に故障が生じると、アダプタごとセンサ類を交換する必要が生じる場合がある。アダプタを交換するには、ロボット手先部とエンドエフェクタとを一旦分解し、再組付することになる。このような場合、分解前のエンドエフェクタで較正したツール座標系が、再組付後のエンドエフェクタのツール座標系と必ずしも一致するとは限らない。
なお、このような干渉によるエンドエフェクタの位置、姿勢のずれが生じた場合や、エンドエフェクタの再組付を行う場合に、ツール座標系の較正作業を行わずに、その他の対策で対応することも考えられる。その一例として、当初のエンドエフェクタの取付位置や姿勢を精密に再現し、初期設定したロボット座標系におけるエンドエフェクタのTCPをそのまま利用できるようにすることも考えられる。しかし、当初のエンドエフェクタの取付位置や姿勢を精密に再現するには、作業者の熟練度に加えて多大な作業時間を要するので、作業が極めて困難であり現実的ではない。
また、ツール座標系の較正作業を行わない対応策の他の例として、位置や姿勢にずれが生じたエンドエフェクタや再組付後のエンドエフェクタをそのまま使えるように、既に教示したエンドエフェクタの動作を再び教示し直すことが考えられる。
しかし、エンドエフェクタを動作させるのに用いている教示プログラムが多数ある場合には、それぞれの教示プログラムについて再教示作業を行わなければならない。そのような作業は膨大な時間と労力を必要とするので、これもあまり現実的ではない。
以上のような事情から、エンドエフェクタの位置や姿勢にずれが生じた場合や、アダプタに取り付けたセンサ類の交換に伴ってエンドエフェクタを再組付した場合などには、やはり、エンドエフェクタのTCPをロボット座標系に再設定するための、ツール座標系の構成作業を行うのが現実的である。その際にも、ロボット座標系におけるTCPの初期設定のためにツール座標系の較正作業を行う場合と同様に、上述したような問題点がある。
本発明は前記事情に鑑みなされたもので、本発明の目的は、専門知識を持たない作業員や熟練度が低い作業員であってもロボットに近づかずに精度良く行うことができるロボットのツール座標系の較正方法と、この方法を実施する際に用いて好適な治具とを提供することにある。
上記目的を達成するため、請求項1に記載した本発明のロボットのツール座標系の較正方法は、
ロボットの手先部に取り付けたエンドエフェクタの代表点を原点とするツール座標系を較正する方法であって、
前記エンドエフェクタに装着した着脱自在のアタッチメントにより、前記手先部に対する前記エンドエフェクタの取付点を原点とするロボット手先座標系における、前記代表点に対する相対位置ベクトルが既知である基準点を設定する段階と、
ロボット座標系における原点に対する相対位置が固定である測定原点と前記基準点との間隔を、前記ロボットの互いに異なる少なくともNパターン(但し、Nは、3+2N≦ NC2 を満たす最小の正の整数)の姿勢について、測定センサによりそれぞれ測定する段階と、
以下の(ア)乃至(エ)の位置ベクトル、即ち、
(ア)前記ロボット座標系における原点に対する前記取付点の位置ベクトル、
(イ)前記ロボット手先座標系における原点に対する前記代表点の位置ベクトルル、
(ウ)前記ツール座標系における前記代表点に対する前記基準点の位置ベクトルル、
(エ)前記ロボット座標系における前記基準点に対する前記測定原点の位置ベクトル、
の和によって、前記ロボット座標系における原点に対する前記測定原点の位置ベクトルを表す一次方程式の、前記Nパターンの姿勢についてのN連立一次方程式と、前記Nパターンの姿勢について前記測定センサによりそれぞれ測定した前記測定原点と前記基準点との前記各間隔とにより、前記ロボット手先座標系における原点に対する前記代表点の位置ベクトルを演算する段階と、
前記演算した前記ロボット手先座標系における原点に対する前記代表点の位置ベクトルにより、前記ツール座標系を較正する段階と、
を含むことを特徴とする。
請求項1に記載した本発明のロボットのツール座標系の較正方法によれば、ロボット座標系における原点に対する測定原点の位置ベクトルを表す一次方程式を構成する(ア)乃至(エ)の各位置ベクトルのうち、(ア)のロボット座標系における原点に対する取付点の位置ベクトルは、エンドエフェクタの取付前から存在するロボットの手先部の位置データであり、ロボットの制御系がすでに保有していることから、ツール座標系の較正前であっても既知である。
次に、(イ)のロボット手先座標系における原点(ロボット座標系における取付点)に対する代表点の位置ベクトルは、ツール座標系の較正作業前ではロボット座標系における代表点の3次元座標値が特定されていないことから、この時点では未知である。
ここで、ロボット手先座標系における原点(ロボット座標系における取付点)と代表点との位置関係は、ロボットの姿勢が変わっても変化しない。したがって、この時点で未知であるロボット手先座標系における原点(ロボット座標系における取付点)と代表点との位置関係は、3次元方向の相対位置に関する3つの変数によって表すことになる。
また、(ウ)のツール座標系における代表点に対する基準点の位置ベクトルは、アタッチメントの設計データによって代表点に対する基準点の相対位置を特定できるので、ツール座標系の較正前であっても既知である。
さらに、(エ)のロボット座標系における基準点に対する測定原点の位置ベクトルは、測定原点に対する基準点の相対位置が特定できないので、この時点では未知である。
ここで、ロボット座標系における基準点と測定原点との位置関係は、ロボットの姿勢が変わると変化する。したがって、この時点で未知であるロボット座標系における基準点と測定原点との位置関係は、ロボットが採るNパターンの姿勢のそれぞれについて、3次元方向の相対位置に関する3つの変数によって表すことになる。つまり、ロボット座標系における基準点と測定原点との位置関係に関する変数の数は、基本的に3Nとなる。
但し、ロボットが採るNパターンの姿勢のそれぞれにおいて、基準点と測定原点との間隔は、測定センサを用いた測定によって既知となる。したがって、ロボット座標系における基準点と測定原点との位置関係に関する実際の変数の数は、ロボットが採るNパターンの姿勢のそれぞれにおいて1つずつ減り、最終的には2Nとなる。
以上から、上記した(ア)乃至(エ)の位置ベクトルの和によって表される、ロボット座標系における原点に対する測定原点の位置ベクトルの、ロボットが採るNパターンの姿勢のそれぞれに関する一次方程式を連立させた、N連立一次方程式には、合計で(3+2N)個の変数が存在することになる。
このため、(3+2N)個の変数を上回る数の連立一次方程式を解けば、全ての変数を解くことができる。即ち、3+2N≦ NC2 を満たす最小の正の整数(=N)個のパターンの姿勢をロボットに採らせ、各姿勢について、測定原点と基準点との間隔を測定センサにより測定して、(ア)乃至(エ)の位置ベクトルの和によるN連立一次方程式を得ることで、エンドエフェクタのツール座標系を較正し、エンドエフェクタの代表点をロボット座標系において特定できるようになる。
したがって、ロボットにNパターンの姿勢を採らせるのに当たってエンドエフェクタの代表点を常に同一点に位置させる必要がなく、熟練度の低い作業員でもロボット乃至エンドエフェクタに近づかずにツール座標系の較正作業を行うことができる。また、環境光などの周辺環境が較正の精度に影響を及ぼさないので、専門知識がない作業員でも精度良くツール座標系の較正作業を行うことができる。
なお、上記した(ア)乃至(エ)の位置ベクトルの和は、絶対座標系上において求めても良く、任意のローカル座標系上において求めても良い。仮に、ロボット座標系上において上記した(ア)乃至(エ)の位置ベクトルの和を求める場合、ロボット手先座標系における原点(ロボット座標系における取付点)において、ロボット手先座標系をロボット座標系に座標変換するための同次変換行列は、ツール座標系の較正前であっても既知である。これは、代表点におけるツール座標系として設定したい座標軸方向を、ロボット座標系の座標軸方向に対する相対座標軸方向として、ツール座標系の較正前に決定しておくことで、ロボット手先座標系の原点(ロボット座標系における取付点)におけるロボット手先座標系の座標軸方向に対する、代表点におけるツール座標系の座標軸方向の相対座標軸方向を、特定することができるからである。
また、ロボット座標系上において上記した(ア)乃至(エ)の位置ベクトルの和を求める場合、ロボット手先座標系における代表点において、ツール座標系をロボット座標系に座標変換するための同次変換行列も、ツール座標系の較正前であっても既知である。これは、エンドエフェクタ及びアタッチメントの設計データから、代表点におけるツール座標系の座標軸方向に対する基準点の相対座標軸方向を特定することができるからである。
また、請求項2に記載した本発明のロボットのツール座標系の較正方法は、
ロボットの手先部に取り付けたエンドエフェクタの代表点を原点とするツール座標系を較正する方法であって、
前記エンドエフェクタに装着した着脱自在のアタッチメントにより、前記手先部に対する前記エンドエフェクタの取付点を原点とするロボット手先座標系における、前記代表点に対する相対位置ベクトルが既知である基準点を設定する段階と、
相互間距離が固定かつ既知であるm個の測定原点と、前記基準点との各間隔を、前記ロボットの互いに異なる少なくともnパターン(但し、nは、3+2(n×m)+2(m−1)≦ n×mC2 を満たす最小の正の整数)の姿勢について、測定センサによりそれぞれ測定する段階と、
以下の(ア)乃至(オ)の位置ベクトル、即ち、
(ア)ロボット座標系における原点に対する前記取付点の位置ベクトル、
(イ)前記ロボット手先座標系における原点に対する前記代表点の位置ベクトル、
(ウ)前記ツール座標系における前記代表点に対する前記基準点の位置ベクトル、
(エ)前記ロボット座標系における前記基準点に対する前記各測定原点の位置ベクトル、
(オ)前記ロボット座標系における前記m個の測定原点のうち特定の1つの測定原点に対する残りの他の各測定原点の位置ベクトル、
の和によって、前記ロボット座標系における原点に対する前記特定の1つの測定原点の位置ベクトルを表す一次方程式の、前記各測定原点における前記nパターンの姿勢についてのn×m連立一次方程式と、前記nパターンの姿勢について前記測定センサによりそれぞれ測定した前記m個の各測定原点と前記基準点との前記各間隔とにより、前記ロボット手先座標系における原点に対する前記代表点の位置ベクトルを演算する段階と、
前記演算した前記ロボット手先座標系における原点に対する前記代表点の位置ベクトルにより、前記ツール座標系を較正する段階と、
を含むことを特徴とする。
請求項2に記載した本発明のロボットのツール座標系の較正方法では、(ア)乃至(エ)の各位置ベクトルに関する既知、未知の関係は、請求項1に記載した本発明のロボットのツール座標系の較正方法と同じである。
また、(オ)のロボット座標系におけるm個の測定原点のうち特定の1つの測定原点に対する残りの他の各測定原点の位置ベクトルは、ロボット座標系における各測定原点の3次元座標値が特定されていないことから、この時点ではいずれも未知である。
ここで、ロボット座標系における特定の1つの測定原点と残りの他の各測定原点との位置関係は、ロボットの姿勢が変わっても変化しない。したがって、この時点で未知であるロボット座標系における特定の1つの測定原点と残りの他の各測定原点との位置関係は、3次元方向の相対位置に関する3つの変数によって表すことになる。つまり、ロボット座標系における特定の1つの測定原点と残りの他の3(m−1)個の各測定原点との位置関係に関する変数の数は、基本的に3(m−1)となる。
但し、特定の1つの測定原点と残りの他の測定原点との相互間距離は予め既知である。したがって、ロボット座標系における特定の1つの測定原点と残りの他の各測定原点との位置関係に関する実際の変数の数は、特定の1つの測定原点と残りの他の各測定原点との各組毎に1つずつ減り、最終的には2(m−1)となる。
そして、請求項2に記載した本発明のロボットのツール座標系の較正方法においても、請求項1に記載した本発明のロボットのツール座標系の較正方法と同様に、ロボット座標系における基準点と測定原点との位置関係は、ロボットの姿勢が変わると変化する。したがって、この時点で未知であるロボット座標系における基準点とm個の測定原点との各位置関係は、ロボットが採るnパターンの姿勢のそれぞれについて、3次元方向の相対位置に関する3つの変数によって表すことになる。つまり、ロボット座標系における基準点と各測定原点との位置関係に関する変数の数は、基本的に3n×mとなる。
但し、ロボットが採るnパターンの姿勢のそれぞれにおいて、基準点とm個の測定原点との各間隔は、測定センサを用いた測定によって既知となる。したがって、ロボット座標系における基準点と各測定原点との位置関係に関する実際の変数の数は、ロボットが採るNパターンの姿勢のそれぞれにおいて1つずつ減り、最終的には2n×mとなる。
以上から、上記した(ア)乃至(オ)の位置ベクトルの和によって表される、ロボット座標系における原点に対するm個の測定原点の位置ベクトルの、ロボットが採るnパターンの姿勢のそれぞれに関する一次方程式を連立させた、n×m連立一次方程式には、合計で{3+2(n×m)+2(m−1)}個の変数が存在することになる。
このため、{3+2(n×m)+2(m−1)}個の変数を上回る数の連立一次方程式を解けば、全ての変数を解くことができる。即ち、{3+2(n×m)+2(m−1)}≦ n×mC2 を満たす正の整数(=n×m)個のパターンの姿勢をロボットに採らせ、各姿勢について、m個の各測定原点と基準点との各間隔を測定センサによりそれぞれ測定して、(ア)乃至(オ)の位置ベクトルの和によるn×m連立一次方程式を得ることで、エンドエフェクタのツール座標系を較正し、エンドエフェクタの代表点をロボット座標系において特定できるようになる。
したがって、ロボットにnパターンの姿勢を採らせるのに当たってエンドエフェクタの代表点を常に同一点に位置させる必要がなく、熟練度の低い作業員でもロボット乃至エンドエフェクタに近づかずにツール座標系の較正作業を行うことができる。また、環境光などの周辺環境が較正の精度に影響を及ぼさないので、専門知識がない作業員でも精度良くツール座標系の較正作業を行うことができる。
さらに、請求項3に記載した本発明のロボットのツール座標系の較正方法は、請求項1又は2に記載した本発明のロボットのツール座標系の較正方法において、前記測定センサとして、前記測定原点と前記基準点との間を常時緊張して直線状に接続する測定線材を含むセンサを用いるようにしたことを特徴とする。
請求項3に記載した本発明のロボットのツール座標系の較正方法によれば、請求項1又は2に記載した本発明のロボットのツール座標系の較正方法において、基準点と測定原点との間で直線状の緊張状態にある測定線材を含むセンサを測定センサとして用いると、測定線材の長さに応じた測定信号が測定センサから出力される。
したがって、測定センサが出力する測定信号により基準点と測定原点との2点間の間隔をそれら2点間の直線距離として容易に得ることができる。これにより、専門知識がなく熟練度の低い作業者であっても、ツール座標系の較正作業を精度良く容易に行うことができる。
また、請求項4に記載した本発明のロボットのツール座標系の較正方法は、請求項1、2又は3に記載した本発明のロボットのツール座標系の較正方法において、前記代表点を前記基準点と合致させるようにしたことを特徴とする。
請求項4に記載した本発明のロボットのツール座標系の較正方法によれば、請求項1、2又は3に記載した本発明のロボットのツール座標系の較正方法において、代表点と基準点とを一致させると、上記した(ウ)の位置ベクトルが実質的にゼロということになる。したがって、上記した(ウ)の位置ベクトルに関する種々の誤差要因が、ツール座標系の較正精度に悪影響を及ぼさなくなる。このため、代表点とは別に基準点を設定する場合に比べて、ツール座標系の較正精度をより向上させることができる。
さらに、上記目的を達成するため、請求項5に記載した本発明のロボットのツール座標系較正用治具は、ロボットの手先部に取り付けたエンドエフェクタの代表点を原点とするツール座標系を較正するのに用いる治具であって、前記エンドエフェクタに着脱自在に装着される第1アタッチメントと、ロボット座標系における原点に対する相対位置が固定である測定原点に基端が接続されて直線状に緊張された測定線材の先端が接続され、又は、相互間距離が固定かつ既知である複数個の測定原点に各基端が接続されてそれぞれ直線状に緊張された各測定線材の先端が接続され、前記第1アタッチメントに保持されて前記測定線材の先端を、前記手先部に対する前記エンドエフェクタの取付点を原点とするロボット手先座標系における、前記代表点に対する相対位置ベクトルが既知である基準点に位置させる第2アタッチメントとを備えることを特徴とする。
請求項5に記載した本発明のロボットのツール座標系較正用治具によれば、請求項1、2、3又は4に記載した本発明のロボットのツール座標系の較正方法を実施するのに当たって、測定線材により測定原点と基準点との2点間を接続する際に、測定原点に基端が接続されて直線状に緊張された測定線材の先端が接続されている第2アタッチメントを、エンドエフェクタに装着された第1アタッチメントに保持させることで、測定線材の先端を基準点に確実かつ容易に位置させることができる。
これにより、第1アタッチメントをエンドエフェクタに装着し、第2アタッチメントを第1アタッチメントに保持させた後は、作業員をロボット乃至エンドエフェクタに近づかせずにツール座標系の較正作業を行うことができる。
また、第1アタッチメントのエンドエフェクタに対する装着や、第2アタッチメントの第1アタッチメントに対する保持という簡単な作業で、請求項1、2、3又は4に記載した本発明のロボットのツール座標系の較正方法における基準点と測定原点との間隔を、測定センサにより測定できる状況を整えることができる。したがって、専門知識がなく熟練度の低い作業員でも、ツール座標系の較正作業を精度良く行うことができる。
また、請求項6に記載した本発明のロボットのツール座標系較正用治具は、請求項5に記載した本発明のロボットのツール座標系較正用治具において、前記第2アタッチメントが、前記基準点が前記代表点と合致するように構成されていることを特徴とする。
請求項6に記載した本発明のロボットのツール座標系較正用治具によれば、請求項5に記載した本発明のロボットのツール座標系較正用治具において、請求項1、2、3又は4に記載した本発明のロボットのツール座標系の較正方法を実施するのに当たって、代表点と基準点とを一致させると、基準点に関する種々の誤差要因が、ツール座標系の較正精度に悪影響を及ぼさなくなる。このため、代表点とは別に基準点を設定する場合に比べて、ツール座標系の較正精度をより向上させることができる。
本発明のロボットのツール座標系の較正方法及びその治具によれば、専門知識を持たない作業員や熟練度が低い作業員であっても、ロボットに近づかずに精度良く、ツール座標系の較正作業を行うことができる。
以下、本発明の実施形態について図面を参照しながら説明する。
図1は本発明の第1実施形態に係るロボットのツール座標系の較正方法を説明するための説明図である。
図1中引用符号1で示す本実施形態のロボットは、円柱状の基台3上に設置された多関節型アーム5の先端にフランジ部9(請求項中の手先部に相当)を有している。
このように構成された本実施形態のロボット1においては、多関節型アーム5に内蔵した不図示のロータリアクチュエータに、適切な制御値を与えることで、基台3に対して多関節型アーム5を適切な姿勢とする。
なお、フランジ部9にはエンドエフェクタ17が取り付けられる。但し、このエンドエフェクタ17は、ロボット1の出荷段階ではフランジ部9に取り付けられていない。エンドエフェクタ17は、ロボット1の受け入れ先において、ロボットを使用するシステム上の作業に適したものが適宜取り付けられる。本実施形態では、ワーク搬送用のハンド型のエンドエフェクタ17がフランジ部9に取り付けられている。
このような構成のロボット1は、位置ベクトルによって各部の位置及び姿勢を管理する。この位置及び姿勢の管理にはロボット座標系が用いられる。ロボット座標系は、ロボット原点Oを原点とする座標系である。このロボット原点Oは、ロボット1の設置面Aに対向する基台3の設置面3aの中心点に設定される。
ところで、上述したように、ロボット1の出荷段階ではフランジ部9にエンドエフェクタ17が取り付けられていない。したがって、後述するコントローラ31(図2参照)がロボット1の位置及び姿勢を制御するためにデフォルトで有している位置ベクトルのデータは、フランジ部9までの分しか用意されていない。そのため、フランジ部9に取り付けたエンドエフェクタ17のロボット座標系における位置ベクトルのデータは、ロボット1の受け入れ側で後から設定しなければならない。
ロボット座標系におけるエンドエフェクタ17の位置ベクトルのデータを設定するには、エンドエフェクタ17の代表点であるツールセンターポイントTCPを原点とするツール座標系を較正する必要がある。本実施形態のようなハンド型のエンドエフェクタ17の場合、ツールセンターポイントTCPは、ハンドの両チャックの先端中央の空間に設定される。このツールセンターポイントTCPは、フランジ部9に装着されるエンドエフェクタが変わると、そのエンドエフェクタに依存して位置が変わる場合がある。
ツール座標系の較正は、ロボット1のフランジ部9に対するエンドエフェクタ17の取付点Fを原点とするロボット手先座標系を用いて行う。具体的には、ロボット手先座標系から見たツール座標系の相対的位置・姿勢を較正することで、ツール座標系を較正する。そして、ロボット手先座標系から見たツール座標系の相対的位置・姿勢を記述する行列やベクトルを表すデータを、後述する図2のコントローラ31に与えることで、ロボット座標系におけるエンドエフェクタ17のツールセンターポイントTCPの位置ベクトルを設定することができる。
また、本実施形態のロボット1では、ツール座標系の較正を行うために、ロボット1の設置面Aに伸張式変位センサ19(請求項中の測定センサに相当)を固定して設置している。この伸張式変位センサ19は、ロール状に巻回されたワイヤ19a(請求項中の測定線材に相当)をワイヤ19aの巻き取り方向に付勢してケース19bの内部に収容し、この付勢力に抗してケース19bの繰り出し口19cからケース19bの外部に繰り出されたワイヤ19aの繰り出し長さに応じた測定信号を、後述する図2のコントローラ31に出力するものである。
上述したような構成の伸張式変位センサ19は、ロボット1の設置面Aに固定して設置することで、ロボット座標系のロボット原点Oに対する繰り出し口19cの位置ベクトルを既知としている。この繰り出し口19cは、後述する手順でツール座標系の較正を行う際に、ロボット座標系における測定原点Mとして設定される。
伸張式変位センサ19のワイヤ19aの先端は、エンドエフェクタ17によってチャッキングされるアタッチメント21の接続点T(請求項中の基準点に相当)に接続されている。このアタッチメント21は、エンドエフェクタ17にチャッキングされた状態で、ツールセンターポイントTCPに存在する部分を有している。
また、アタッチメント21のエンドエフェクタ17にチャッキングされる部分には、エンドエフェクタ17の両チャックに対応する凹部が形成されている。これにより、アタッチメント21はエンドエフェクタ17に常に同じ姿勢でチャッキングされる。したがって、エンドエフェクタ17にチャッキングされたアタッチメント21の接続点Tは、ツールセンターポイントTCPに対して常に一定の位置関係となる。つまり、ツールセンターポイントTCPに対する接続点Tの相対位置ベクトルは、ロボット手先座標系において既知となる。
図2は、図1のロボットの電気的な概略構成を示すブロック図である。図2に示すコントローラ31は、図1に示すロボット1の位置と姿勢に関する制御を行う。そのために、コントローラ31は、図1に示すロボット原点O、取付点F、及び、ツールセンターポイントTCPの3つのポイントの座標値を、ロボット座標系上において管理する。
そして、ロボット1の出荷段階ではコントローラ31に設定されていない、ロボット座標系におけるツールセンターポイントTCPの3次元座標値を、コントローラ31に設定するために、ロボット手先座標系から見たツール座標系の相対的位置・姿勢を記述する行列やベクトルを表すデータを、ロボット1の受け入れ側でコントローラ31に与える必要がある。そのために、コントローラ31は、エンドエフェクタ17にチャッキングされたアタッチメント21の接続点Tと、伸張式変位センサ19の繰り出し口19cに設定される測定原点Mとの2つのポイントの座標値を、ロボット手先座標系上において管理する。
そして、コントローラ31は、エンドエフェクタ17のツール座標系の較正によって、ツールセンターポイントTCPのロボット座標系における位置ベクトルが設定されると、ロボット座標系におけるロボット原点O、取付点F、及び、ツールセンターポイントTCPの3つのポイントの座標値に基づいて、ロボット1の制御上の目標値を供給する。ロボット1の目標値は、ロボット1の代表点であるツールセンターポイントTCPと、その前提となる取付点Fとの各目標座標値である。
そして、上述した管理や供給を行うために、図2に示すコントローラ31は、CPUやRAM及びROMを有するコンピュータによって構成される。このコントローラ31には、ロボット1の多関節型アーム5を駆動するための第1乃至第6ロータリアクチュエータ5A〜5Fのドライブ回路5G〜5Lと、第1乃至第6ロータリアクチュエータ5A〜5Fにより駆動された多関節型アーム5やフランジ部9の基台3に対する姿勢を検出するロータリセンサ5M〜5Rとが接続される。
また、コントローラ31には、伸張式変位センサ19が接続され、伸張式変位センサ19からの測定信号が入力される。
次に、上述した伸張式変位センサ19及びアタッチメント21を用いてエンドエフェクタ17のツール座標系を較正する際の手順について説明する。
エンドエフェクタ17のツール座標系を較正する際には、まず、図1に示すように、伸張式変位センサ19のワイヤ19aの先端を接続点Tに接続したアタッチメント21の凹部を、エンドエフェクタ17の両チャックによってチャッキングさせる。
すると、アタッチメント21の接続点Tと伸張式変位センサ19の繰り出し口19cとの間に、繰り出し口19cから繰り出されたワイヤ19aが直線状に緊張した状態で架け渡される。そして、繰り出し口19cから接続点Tまで繰り出されたワイヤ19aの長さに応じた(ワイヤ19aの繰り出し長さを示す)測定信号が、図2のコントローラ31に出力される。
この状態において、図3の説明図に示すように、ロボット原点Oに対する測定原点M(伸張式変位センサ19の繰り出し口19c)の位置ベクトル OpM は、ロボット原点Oに対する取付点Fの位置ベクトル OpF と、取付点Fに対するツールセンターポイントTCPの位置ベクトル Fpと、ツールセンターポイントTCPに対する接続点Tの位置ベクトル Ppと、接続点Tに対する測定原点Mの位置ベクトル Tpとの合成ベクトルで表すことができる。
ここで、ロボット原点Oに対する測定原点Mの位置ベクトル OpM は、ロボット座標系上のロボット原点Oを始点とするロボット座標系の位置ベクトルである。同じく、ロボット原点Oに対する取付点Fの位置ベクトル OpF は、ロボット座標系上のロボット原点Oを始点とするロボット座標系の位置ベクトルであり、また、接続点Tに対する測定原点Mの位置ベクトル Tpも、ロボット座標系上の測定原点Mを終点とするので、ロボット座標系の位置ベクトルである。
これに対して、取付点Fに対するツールセンターポイントTCPの位置ベクトル Fpは、ロボット手先座標系上の取付点Fを始点とするロボット手先座標系の位置ベクトルであり、また、ツールセンターポイントTCPに対する接続点Tの位置ベクトル Ppは、ツール座標系上のツールセンターポイントTCPを始点とするツール座標系の位置ベクトルである。つまり、いずれもロボット座標系の位置ベクトルではない。
したがって、上述した合成ベクトルを得るためには、その過程において各位置ベクトルの座標系を統一する必要がある。統一する座標系は、絶対座標系であってもローカル座標系であっても良いが、本実施形態ではロボット座標系に統一して合成ベクトルを得る場合について説明する。この場合、ロボット原点Oに対する測定原点Mの位置ベクトル OpM と、ロボット原点Oに対する取付点Fの位置ベクトル OpF と、接続点Tに対する測定原点Mの位置ベクトル Tpとについては、ロボット座標系への座標変換を必要としない。
一方、ロボット手先座標系の位置ベクトルである、取付点Fに対するツールセンターポイントTCPの位置ベクトル Fpは、同次変換行列 ORF によりロボット座標系に座標変換することになる。また、ツール座標系の位置ベクトルである、ツールセンターポイントTCPに対する接続点Tの位置ベクトル Ppは、同次変換行列 FRP によりロボット座標系に座標変換することになる。
そして、ロボット座標系におけるロボット原点Oに対する測定原点Mの位置ベクトル OpM と等しいベクトル和の一般式は、
OpM = OpF + ORF × Fp+ FRP × Pp+ Tp
で表すことができる。
ここで、ロボット座標系におけるロボット原点Oに対する取付点Fの位置ベクトル OpF は、ロボット原点Oと取付点Fとが共に、エンドエフェクタ17をフランジ部9に取り付ける前からロボット1に存在する部分であり、コントローラ31がすでに保有していることから、ツール座標系の較正前であっても既知である。したがって、この項目に関する変数成分は存在しない。
次に、ロボット手先座標系における取付点Fに対するツールセンターポイントTCPの位置ベクトル Fpは、ツールセンターポイントTCPが、エンドエフェクタ17をフランジ部9に取り付けることで発生する部分であり、ツール座標系の較正作業前ではロボット座標系におけるツールセンターポイントTCPの3次元座標値がコントローラ31において特定されていないことから、この時点では未知である。
そして、この項目に関する変数成分は、取付点FとツールセンターポイントTCPとの相対位置に関する3つの変数によって表される。この3つの変数は、ロボット1(多関節型アーム5)の姿勢が変わっても変化しない。
なお、取付点Fに対するツールセンターポイントTCPの位置ベクトル Fpを、取付点Fにおいてロボット手先座標系からロボット座標系に座標変換するための、同次変換行列 ORF は、ツールセンターポイントTCPにおけるツール座標系として設定したい座標軸方向を、ロボット座標系の座標軸方向に対する相対座標軸方向として、ツール座標系の較正前に決定しておくことで、ロボット手先座標系の原点である取付点Fにおけるロボット手先座標系の座標軸方向に対する、ツールセンターポイントTCPにおけるツール座標系の座標軸方向の相対座標軸方向を、特定することができるので、ツール座標系の較正前であっても既知である。
また、ツール座標系におけるツールセンターポイントTCPに対する接続点Tの位置ベクトル Ppは、アタッチメント21の設計データによってツールセンターポイントTCPに対する接続点Tの相対位置を特定できるので、ツール座標系の較正前であっても既知である。
なお、ツールセンターポイントTCPに対する接続点Tの位置ベクトル Ppを、ツール座標系からロボット座標系に座標変換するための、同次変換行列 FRP は、エンドエフェクタ17及びアタッチメント21の設計データから、ツールセンターポイントTCPにおけるツール座標系の座標軸方向に対する基準点の相対座標軸方向を特定することができるので、ツール座標系の較正前であっても既知である。
さらに、ロボット座標系における接続点Tに対する測定原点Mの位置ベクトル Tpは、測定原点Mに対する接続点Tの相対位置が特定できないので、この時点では未知である。
そして、この項目に関する変数成分は、基本的に、接続点Tと測定原点Mとの相対位置に関する3つの変数によって表される。但し、接続点Tと測定原点Mとの間隔は、伸張式変位センサ19の繰り出し口19cから接続点Tまで繰り出されたワイヤ19aの長さと等しい。また、ワイヤ19aの繰り出し長さを示す伸張式変位センサ19の測定信号によって、接続点Tと測定原点Mとの間隔は、コントローラ31において既知となる。
したがって、3つの変数成分のうち1つはこの既知となる接続点Tと測定原点Mとの間隔によって定数化される。この結果、この項目に関する実際の変数成分は2つとなる。
なお、この2つの変数は、ロボット1(多関節型アーム5)の姿勢が変わると変化する。したがって、ロボット1の姿勢をNパターンに変化させると、各2つの変数をNパターン倍した2N個の変数が、この項目について発生することになる。
以上から、上述した一般式
OpM = OpF + ORF × Fp+ FRP × Pp+ Tp
で表される、ロボット座標系におけるロボット原点Oに対する測定原点Mの位置ベクトル OpM と等しいベクトル和の式には、ロボット1の姿勢が変わっても変化しない3つの変数と、ロボット1の姿勢が変わると変化する2個の変数とが存在することになる。
したがって、ロボット1の姿勢を仮にNパターンに変化させて、それぞれの姿勢で上述した一般式による位置ベクトルの関係式を立てると、変数の合計は(3+2N)個となり、関係式の数は NC2 となる。
ここで、ロボット1の各姿勢における上記の一般式による位置ベクトル関係式は、その一方の辺が全て、ロボット座標系におけるロボット原点Oに対する測定原点Mの位置ベクトル OpM である。したがって、ロボット1の姿勢をNパターンに変化させて得られる NC2 の位置ベクトル関係式は、連立方程式を構成することができる。
ロボット1の姿勢をNパターンに変化させて得られる NC2 の位置ベクトル関係式の連立方程式から、(3+2N)個の変数の解を得るためには、変数の数を上回る連立方程式が必要であるから、ロボット1の姿勢を、
3+2N≦ NC2
を満たす最小の正の整数のパターン数(=N)に変化させればよいことになる。
本実施形態では、以上のように、
3+2N≦ NC2
を満たす最小の正の整数のパターン数(=N)にロボット1の姿勢を変化させて、それぞれの姿勢で上述した一般式による位置ベクトルの関係式を立て、それらの位置ベクトル関係式の連立方程式を解くことで、ツール座標系の較正を行い、ロボット座標系におけるツールセンターポイントTCPの3次元座標値を求めて設定する。これらの一連の処理は、コントローラ31の制御によって行うことができる。
したがって、本実施形態で説明したツール座標系の較正方法によれば、ロボット1にNパターンの姿勢を採らせるのに当たってエンドエフェクタ17のツールセンターポイントTCPを常に同一点に位置させる必要がなく、熟練度の低い作業員でもロボット1の特にエンドエフェクタ17に近づかずにツール座標系の較正作業を行うことができる。
また、ツール座標系の較正のために行う測定が、ワイヤ19aを接続点Tと測定原点Mとの間に架設して伸張式変位センサ19により行う間隔測定のみであり、環境光などの周辺環境が較正の精度に影響を及ぼさないので、専門知識がない作業員でも精度良くツール座標系の較正作業を行うことができる。
次に、本発明の第2実施形態に係るロボットのツール座標系の較正方法を説明する。
図4は本発明の第2実施形態に係るロボットのツール座標系の較正方法を説明するための説明図である。図4中図1に示す要素と同一の要素には、図1で付したものと同一の引用符号を付して、重複する説明を省略する。
第2実施形態の較正方法では、ロボット1の設置面Aではなく較正作業用の測定板29の上面に、m個の伸張式変位センサ19(図4では、図面の見やすさのため3個のみ示している。)をそれぞれ固定している。測定板29の上面は、ロボット1の設置面Aと同一面上に配置する必要はない。そして、各伸張式変位センサ19の繰り出し口19cからそれぞれ繰り出されたワイヤ19aの先端を、ロボット1のエンドエフェクタ17にチャッキングされたアタッチメント21の接続点Tに接続している。
なお、第2実施形態においては、各伸張式変位センサ19の繰り出し口19cに、測定原点M1 ,M2 ,・・・,Mm を設定している。そして、測定原点M1 と、その他の測定原点M2 ,・・・,Mm との各2点間の間隔LM2,・・・,LMm(図6参照)は、予め既知とされてコントローラ31のRAMに格納されている。
図5は、図4のロボットの電気的な概略構成を示すブロック図である。図5に示すコントローラ31が、図4に示すロボット原点O、取付点F、及び、ツールセンターポイントTCPの3つのポイントの座標値を、ロボット座標系上において管理して、ロボット1の位置と姿勢に関する制御を行うことについては、第1実施形態と同様である。
そして、ロボット座標系におけるツールセンターポイントTCPの3次元座標値を設定するためにコントローラ31は、エンドエフェクタ17にチャッキングされたアタッチメント21の接続点Tと、各伸張式変位センサ19の繰り出し口19cにそれぞれ設定される測定原点M1 ,M2 ,・・・,Mm とのポイントの座標値を、ロボット手先座標系上において管理する。
そのために、コントローラ31には、各伸張式変位センサ19がそれぞれ接続され、各伸張式変位センサ19からの測定信号がそれぞれ入力される。
上述した各伸張式変位センサ19及びアタッチメント21を用いてエンドエフェクタ17のツール座標系を較正する際には、図4に示すように、まず、各伸張式変位センサ19のワイヤ19aの先端を接続点Tにそれぞれ接続したアタッチメント21の凹部を、エンドエフェクタ17の両チャックによってチャッキングさせる。
すると、アタッチメント21の接続点Tと各伸張式変位センサ19の繰り出し口19cとの間に、各繰り出し口19cからそれぞれ繰り出されたワイヤ19aが直線状に緊張した状態で架け渡される。そして、各繰り出し口19cから接続点Tまでそれぞれ繰り出されたワイヤ19aの長さに応じた(ワイヤ19aの繰り出し長さを示す)測定信号が、各伸張式変位センサ19から図5のコントローラ31にそれぞれ出力される。
この状態において、図6の説明図に示すように、ロボット原点Oに対する各測定原点M1 ,M2 ,・・・,Mm (各伸張式変位センサ19の繰り出し口19c)の位置ベクトル OpM1, OpM2,・・・, OpMmは、ロボット原点Oに対する取付点Fの位置ベクトル OpF と、取付点Fに対するツールセンターポイントTCPの位置ベクトル Fpと、ツールセンターポイントTCPに対する接続点Tの位置ベクトル Ppと、接続点Tに対する各測定原点M1 ,M2 ,・・・,Mm の位置ベクトル TpM1, TpM2,・・・, TpMmとの合成ベクトルで表すことができる。
ここで、ロボット原点Oに対する各測定原点M1 ,M2 ,・・・,Mm の位置ベクトル OpM1, OpM2,・・・, OpMmは、ロボット座標系上のロボット原点Oを始点とするロボット座標系の位置ベクトルである。同じく、ロボット原点Oに対する取付点Fの位置ベクトル OpF は、ロボット座標系上のロボット原点Oを始点とするロボット座標系の位置ベクトルである。また、接続点Tに対する各測定原点M1 ,M2 ,・・・,Mm の位置ベクトル TpM1, TpM2,・・・, TpMmは、各測定原点M1 ,M2 ,・・・,Mm の相対位置が測定板29上で固定であるので、ロボット座標系の位置ベクトルとみなすことができる。
これに対して、取付点Fに対するツールセンターポイントTCPの位置ベクトル Fpは、ロボット手先座標系上の取付点Fを始点とするロボット手先座標系の位置ベクトルであり、また、ツールセンターポイントTCPに対する接続点Tの位置ベクトル Ppは、ツール座標系上のツールセンターポイントTCPを始点とするツール座標系の位置ベクトルである。つまり、いずれもロボット座標系の位置ベクトルではない。
したがって、上述した合成ベクトルを得るためには、その過程において各位置ベクトルの座標系を統一する必要がある。統一する座標系は、絶対座標系であってもローカル座標系であっても良いが、本実施形態でも、第1実施形態と同じく、ロボット座標系に統一して合成ベクトルを得る場合について説明する。この場合、ロボット原点Oに対する各測定原点M1 ,M2 ,・・・,Mm の位置ベクトル OpM1, OpM2,・・・, OpMmと、ロボット原点Oに対する取付点Fの位置ベクトル OpF と、接続点Tに対する測定原点Mの位置ベクトル Tpとについては、ロボット座標系への座標変換を必要としない。
一方、ロボット手先座標系の位置ベクトルである、取付点Fに対するツールセンターポイントTCPの位置ベクトル Fpは、同次変換行列 ORF によりロボット座標系に座標変換することになる。また、ツール座標系の位置ベクトルである、ツールセンターポイントTCPに対する接続点Tの位置ベクトル Ppは、同次変換行列 FRP によりロボット座標系に座標変換することになる。
そして、ロボット座標系におけるロボット原点Oに対する各測定原点M1 ,M2 ,・・・,Mm の位置ベクトル OpM1, OpM2,・・・, OpMmとそれぞれ等しいベクトル和の一般式は、
OpM1= OpF + ORF × Fp+ FRP × Pp+ TpM1
OpM2= OpF + ORF × Fp+ FRP × Pp+ TpM2
・
・
・
OpMm= OpF + ORF × Fp+ FRP × Pp+ TpMm
でそれぞれ表すことができる。
また、各測定原点M1 ,M2 ,・・・,Mm のうち測定原点M1 を基準にした、残りの他の各測定原点M1 ,M2 ,・・・,Mm の位置関係は、各測定原点M2 ,・・・,Mm に対する測定原点M1 の位置ベクトルM2pM1,・・・,MmpM1でそれぞれ表すことができる。
したがって、ロボット座標系におけるロボット原点Oに対する測定原点M1 の位置ベクトル OpM1と、ロボット原点Oに対する残りの他の各測定原点M2 ,・・・,Mm の位置ベクトル OpM2,・・・, OpMmとの関係は、
OpM1= OpM2+M2pM1
・
・
・
OpM1= OpMm+MmpM1
の一般式でそれぞれ表すことができる。
ここで、各測定原点M2 ,・・・,Mm に対する測定原点M1 の位置ベクトルM2pM1,・・・,MmpM1は、各測定原点M1 ,M2 ,・・・,Mm の相対位置が測定板29上で固定であるので、ロボット座標系の位置ベクトルとみなすことができる。
したがって、各測定原点M2 ,・・・,Mm に対する測定原点M1 の位置ベクトルM2pM1,・・・,MmpM1については、ロボット座標系への座標変換を必要としない。
以上に説明した一般式において、ロボット座標系におけるロボット原点Oに対する取付点Fの位置ベクトル OpF が、ツール座標系の較正前であっても既知であり、この項目に関する変数成分が存在しないことは、第1実施形態の場合と同じである。
また、ロボット手先座標系における取付点Fに対するツールセンターポイントTCPの位置ベクトル Fpが、この時点では未知であり、この項目に関する変数成分が、取付点FとツールセンターポイントTCPとの相対位置に関する3つの変数によって表されることと、この3つの変数が、ロボット1(多関節型アーム5)の姿勢が変わっても変化しないことも、第1実施形態の場合と同じである。
なお、取付点Fに対するツールセンターポイントTCPの位置ベクトル Fpを、取付点Fにおいてロボット手先座標系からロボット座標系に座標変換するための、同次変換行列 ORF が、ツール座標系の較正前であっても既知であることも、第1実施形態の場合と同じである。
また、ツール座標系におけるツールセンターポイントTCPに対する接続点Tの位置ベクトル Ppが、ツール座標系の較正前であっても既知であることと、この位置ベクトル Ppをツール座標系からロボット座標系に座標変換するための、同次変換行列 FRP が、ツール座標系の較正前であっても既知であることも、第1実施形態の場合と同じである。
次に、ロボット座標系における接続点Tに対する各測定原点M1 ,M2 ,・・・,Mm の位置ベクトル TpM1, TpM2,・・・, TpMmは、各測定原点M1 ,M2 ,・・・,Mm に対する接続点Tの相対位置がそれぞれ特定できないので、この時点では未知である。
そして、この項目に関する変数成分は、基本的に、接続点Tと各測定原点M1 ,M2 ,・・・,Mm との相対位置に関するそれぞれ3つの変数によって表される。但し、接続点Tと各測定原点M1 ,M2 ,・・・,Mm との間隔は、対応する各伸張式変位センサ19の繰り出し口19cから接続点Tまでそれぞれ繰り出されたワイヤ19aの長さと等しい。また、ワイヤ19aの繰り出し長さをそれぞれ示す各伸張式変位センサ19の測定信号によって、接続点Tと各測定原点M1 ,M2 ,・・・,Mm との各間隔は、コントローラ31においてそれぞれ既知となる。
したがって、接続点Tと各測定原点M1 ,M2 ,・・・,Mm との相対位置に関するそれぞれ3つの変数成分のうち1つは、この既知となる接続点Tと各測定原点M1 ,M2 ,・・・,Mm との各間隔によって定数化される。この結果、この項目に関する実際の変数成分は、接続点Tと各測定原点M1 ,M2 ,・・・,Mm との相対位置に関してそれぞれ2つ、つまり、2m個となる。
なお、この2m個の変数は、ロボット1(多関節型アーム5)の姿勢が変わると変化する。したがって、ロボット1の姿勢をnパターンに変化させると、各2m個の変数をnパターン倍した2n×m個の変数が、この項目について発生することになる。
さらに、ロボット座標系における各測定原点M2 ,・・・,Mm に対する測定原点M1 の位置ベクトルM2pM1,・・・,MmpM1は、各測定原点M1 ,M2 ,・・・,Mm の相対位置がそれぞれ特定できないので、この時点では未知である。
そして、この項目に関する変数成分は、基本的に、各測定原点M1 ,M2 ,・・・,Mm の相対位置に関する3(m−1)個の変数によって表される。但し、測定原点M1 と、その他の測定原点M2 ,・・・,Mm との各2点間の間隔LM2,・・・,LMmは、コントローラ31においてそれぞれ既知である。
したがって、各測定原点M1 ,M2 ,・・・,Mm の相対位置に関する3(m−1)個の変数成分は、各測定原点M1 ,M2 ,・・・,Mm の相対位置に関して1つずつ、この既知である測定原点M1 とその他の測定原点M2 ,・・・,Mm との各2点間の間隔LM2,・・・,LMmによって定数化される。この結果、この項目に関する実際の変数成分は、各測定原点M1 ,M2 ,・・・,Mm の相対位置に関して2(m−1)個となる。
なお、この2(m−1)個の変数は、ロボット1(多関節型アーム5)の姿勢が変わっても変化しない。
以上から、上述した一般式
OpM1= OpF + ORF × Fp+ FRP × Pp+ TpM1
OpM2= OpF + ORF × Fp+ FRP × Pp+ TpM2
・
・
・
OpMm= OpF + ORF × Fp+ FRP × Pp+ TpMm
但し、
OpM1= OpM2+M2pM1
・
・
・
OpM1= OpMm+MmpM1
で表される、ロボット座標系におけるロボット原点Oに対する各測定原点M1 ,M2 ,・・・,Mm の位置ベクトル OpM1, OpM2,・・・, OpMmとそれぞれ等しいベクトル和の式には、ロボット1の姿勢が変わっても変化しない3+2(m−1)個の変数と、ロボット1の姿勢が変わると変化する2n×m個の変数とが存在することになる。
したがって、ロボット1の姿勢を仮にnパターンに変化させて、それぞれの姿勢で上述した一般式による位置ベクトルの関係式を立てると、変数の合計は{3+2(n×m)+2(m−1)}個となり、関係式の数は、ロボット原点Oに対する測定原点M1 の位置ベクトル OpM1と、ロボット原点Oに対する残りの他の各測定原点M2 ,・・・,Mm の位置ベクトル OpM2,・・・, OpMmとの関係式を代入して整理すると、 n×mC2 となる。
ここで、ロボット1の各姿勢における上記の一般式による位置ベクトル関係式は、ロボット原点Oに対する測定原点M1 の位置ベクトル OpM1と、ロボット原点Oに対する残りの他の各測定原点M2 ,・・・,Mm の位置ベクトル OpM2,・・・, OpMmとの関係式を代入して整理すると、その一方の辺が全て、ロボット座標系におけるロボット原点Oに対する測定原点M1 の位置ベクトル OpM1である。したがって、ロボット1の姿勢をnパターンに変化させて得られる n×mC2 の位置ベクトル関係式は、連立方程式を構成することができる。
ロボット1の姿勢をnパターンに変化させて得られる n×mC2 の位置ベクトル関係式の連立方程式から、{3+2(n×m)+2(m−1)}個の変数の解を得るためには、変数の数を上回る連立方程式が必要であるから、ロボット1の姿勢を、
{3+2(n×m)+2(m−1)}≦ n×mC2
を満たす最小の正の整数のパターン数(=n)に変化させればよいことになる。
本実施形態では、以上のように、
{3+2(n×m)+2(m−1)}
を満たす最小の正の整数のパターン数(=n)にロボット1の姿勢を変化させて、それぞれの姿勢で上述した一般式による位置ベクトルの関係式を立て、それらの位置ベクトル関係式の連立方程式を解くことで、ツール座標系の較正を行い、ロボット座標系におけるツールセンターポイントTCPの3次元座標値を求めて設定する。これらの一連の処理は、コントローラ31の制御によって行うことができる。
したがって、本実施形態で説明したツール座標系の較正方法によれば、ロボット1にnパターンの姿勢を採らせるのに当たってエンドエフェクタ17のツールセンターポイントTCPを常に同一点に位置させる必要がなく、熟練度の低い作業員でもロボット1の特にエンドエフェクタ17に近づかずにツール座標系の較正作業を行うことができる。
また、ツール座標系の較正のために行う測定が、ワイヤ19aを接続点Tと各測定原点M1 ,M2 ,・・・,Mm との間にそれぞれ架設して各伸張式変位センサ19により行う間隔測定のみであり、環境光などの周辺環境が較正の精度に影響を及ぼさないので、専門知識がない作業員でも精度良くツール座標系の較正作業を行うことができる。
さらに、本実施形態で説明したツール座標系の較正方法によれば、測定原点M1 ,M2 ,・・・,Mm を複数設定することから、ツール座標系の較正を行うのに必要な変数を解くためにロボット1に採らせる姿勢の数を、第1実施形態のツール座標系の較正方法に比べて減らすことができる。
例えば、第1実施形態のツール座標系の較正方法では、
3+2N≦ NC2
を満たす最小の正の整数のパターン数(=N)として、具体的には6パターンの姿勢をロボット1に採らせる必要がある。
これに対して、第2実施形態のツール座標系の較正方法では、
{3+2(n×m)+2(m−1)}≦ n×mC2
を満たす最小の正の整数のパターン数(=n)として、具体的には、測定原点M1 ,M2 ,・・・,Mm の数を2個(=m)とした場合、4パターンの姿勢をロボット1に採らせれば済み、測定原点M1 ,M2 ,・・・,Mm の数が3個、4個、10個(=m)と増やすと、ロボット1に採らせる姿勢のパターン数は、3パターン、2パターン、1パターンと減っていくことになる。
ちなみに、上述した第2実施形態のツール座標系の較正方法では、m個の伸張式変位センサ19を測定板29の上面にそれぞれ固定した。しかし、m個の伸張式変位センサ19を測定板29の上面でなく、ロボット1の設置面A等に固定しても、較正作業を行うことができる。
但し、上述した第2実施形態のツール座標系の較正方法のように、m個の伸張式変位センサ19を事前に固定した測定板29を用いて較正作業を行えば、測定板29を一種のキャリブレーションプレートとして利用することができる。つまり、各伸張式変位センサ19の繰り出し口19cに設定される各測定原点M1 ,M2 ,・・・,Mm の相互間距離が、コントローラ13のRAMに格納された間隔LM2,・・・,LMmと一致するように、m個の伸張式変位センサ19を測定板29に固定しておくことで、各測定原点M1 ,M2 ,・・・,Mm の相互間距離のキャリブレーション作業を較正作業の度に行わなくて済ませることができる。
これに対して、m個の伸張式変位センサ19をロボット1の設置面A等に固定して較正作業を行う場合は、コントローラ13のRAMに格納された測定原点M1 とその他の測定原点M2 ,・・・,Mm との間隔LM2,・・・,LMmと一致するように、各測定原点M1 ,M2 ,・・・,Mm の相互間距離を測定しながら各伸張式変位センサ19を設置面A等に固定するキャリブレーションを、較正作業の度に行う必要がある。
したがって、m個の伸張式変位センサ19を事前に固定した測定板29を用いて行う較正作業は、各測定原点M1 ,M2 ,・・・,Mm の相互間距離についてのキャリブレーション作業を省略できる点で、測定板29を用いない較正作業にはない効果を得ることができる。
なお、上述した第1及び第2実施形態では、伸張式変位センサ19により接続点Tと測定原点M(又は、各測定原点M1 ,M2 ,・・・,Mm )との間隔を、伸張式変位センサ19により測定するものとした。しかし、その他のセンサで接続点Tと測定原点M(又は、各測定原点M1 ,M2 ,・・・,Mm )との間隔を測定する構成とすることもできる。
具体的な例としては、3次元計測装置やステレオビジョンのような非接触式の計測装置を、測定センサとして利用することができる。詳しくは、図7の説明図に示すように、第1実施形態における設置面A上に測定原点Mを設定して、測定原点Mとアタッチメント21の接続点Tとをワイヤ35で接続する。あるいは、図8の説明図に示すように、第2実施形態における測定板29上に各測定原点M1 ,M2 ,・・・,Mm を設定して、各測定原点M1 ,M2 ,・・・,Mm とアタッチメント21の接続点Tとをワイヤ351 ,352 ,・・・,35m でそれぞれ接続する。
そして、ワイヤ35(あるいは、ワイヤ351 ,352 ,・・・,35m )を含む領域のスキャン画像を、設置面Aに設置した非接触式の計測装置33によりコントローラ31に取り込む。これにより、取り込んだスキャン画像をコントローラ31で解析してワイヤ35(あるいは、各ワイヤ351 ,352 ,・・・,35m )を抽出し、その長さを、接続点Tと測定原点Mとの間隔(あるいは、接続点Tと各測定原点M1 ,M2 ,・・・,Mm との間隔)として割り出す。
このような構成によっても、第1及び第2実施形態のツール座標系の較正方法と同様の効果を得ることができる。
ちなみに、上述した図8の構成で行うツール座標系の較正方法においても、第2実施形態のツール座標系の較正方法と同様に、m個の伸張式変位センサ19をロボット1の設置面A等に固定しても、較正作業を行うことができる。
但し、上述した図8の構成で行うツール座標系の較正方法のように、m個の伸張式変位センサ19を事前に固定した測定板29を用いて較正作業を行えば、第2実施形態のツール座標系の較正方法と同様に、測定板29を一種のキャリブレーションプレートとして利用することができる。したがって、m個の伸張式変位センサ19をロボット1の設置面A等に固定して較正作業を行う度に、各測定原点M1 ,M2 ,・・・,Mm の相互間距離のキャリブレーション作業を行わずに済むという効果を得ることができる。
また、上述した第1及び第2実施形態では、アタッチメント21を1ピースで構成する場合を例に取って説明したが、2つ以上の複数ピースでアタッチメント21を構成してもよい。例えば、図9の断面図に示すように、第1アタッチメント21aと第2アタッチメント21bの2ピースでアタッチメント21を構成することもできる。
第1アタッチメント21aは、エンドエフェクタ17によってチャッキングされるものである。そして、第1アタッチメント21aは、エンドエフェクタ17にチャッキングされた状態で、ツールセンターポイントTCPに存在する部分を有している。
この第1アタッチメント21aのエンドエフェクタ17にチャッキングされる部分には、エンドエフェクタ17の両チャックに対応する凹部が形成されている。これにより、アタッチメント21はエンドエフェクタ17に常に同じ姿勢でチャッキングされる。また、第1アタッチメント21aは、第2アタッチメント21bを保持するための保持凹部21cを有している。
第2アタッチメント21bは、第1アタッチメント21aの保持凹部21cに保持されるものである。そのために、第2アタッチメント21bは、第1アタッチメント21aの保持凹部21cの内部空間に対応する外形で形成されている。これにより、第2アタッチメント21bは第1アタッチメント21aに常に同じ姿勢で保持される。第2アタッチメント21bの接続点T(請求項中の基準点に相当)には、伸張式変位センサ19のワイヤ19aの先端が接続されている。
したがって、エンドエフェクタ17にチャッキングされた第1アタッチメント21aの保持凹部21cに保持された第2アタッチメント21bの接続点Tは、ツールセンターポイントTCPに対して常に一定の位置関係となる。つまり、ツールセンターポイントTCPに対する接続点Tの相対位置ベクトルは、ロボット手先座標系において既知となる。
このように、第1及び第2アタッチメント21a,21bの2ピースとすることで、ハンド型のエンドエフェクタ17とは異なる形態のエンドエフェクタがロボット1のフランジ部9に取り付けられた場合に、第1アタッチメント21aだけ取り替えれば済むようになる。つまり、取り替えたエンドエフェクタの形式に対応する外形の第1アタッチメント21aに取り替えさえすれば、第2アタッチメント21bをエンドエフェクタに合わせて取り替える必要はない。したがって、エンドエフェクタが変わるたびに伸張式変位センサ19のワイヤ19aを別の第2アタッチメント21bに接続し直さなくて済むようにすることができる。
さらに、アタッチメントを2ピース化する場合、図10の断面図に示すように、エンドエフェクタ17のツールセンターポイントTCPが第1アタッチメント21aの保持凹部21cの内部空間に位置するように第1アタッチメント21aを形成し、第2アタッチメント21bを、第1アタッチメント21aの保持凹部21cに保持させた状態で、伸張式変位センサ19のワイヤ19aの先端が接続される接続点TがツールセンターポイントTCPと一致するように形成してもよい。
そのように構成すれば、ツール座標系におけるツールセンターポイントTCPに対する接続点Tの位置ベクトル Ppをゼロとして、この位置ベクトル Ppに関する誤差要因があってもそれがツール座標系の較正精度に悪影響を及ぼすことがないようにすることができる。
また、上述した第1及び第2実施形態では、ハンド型のエンドエフェクタ17をフランジ部9に取り付けたロボット1のツール座標系の較正方法について説明した。しかし、本発明はハンド型以外のエンドエフェクタをフランジ部9に取り付けたロボット1においてツール座標系の較正を行う際にも、適用可能である。
例えば、図11に示す第3実施形態に係るロボットのツール座標系の較正方法に関する説明図のように、溶接トーチのエンドエフェクタ17Aの先端に、円柱状のアタッチメント21Aを被せ、アタッチメント21Aの先端面中心に設定した接続点Tに、伸張式変位センサ19の繰り出し口19cから繰り出されたワイヤ19aを接続する構成としてもよい。その場合、具体的なツール座標系の較正作業の手順は、第1実施形態の手順と同じである。
そして、このような第3実施形態においても、伸長式変位センサ19に代えて、図7に示す計測装置33及びワイヤ35により接続点Tと測定原点Mとの間隔を測定する構成を採用できることは、言うまでもない。