JP2011125956A - ロボットのばね定数同定方法およびロボットのばね定数同定装置 - Google Patents

ロボットのばね定数同定方法およびロボットのばね定数同定装置 Download PDF

Info

Publication number
JP2011125956A
JP2011125956A JP2009286327A JP2009286327A JP2011125956A JP 2011125956 A JP2011125956 A JP 2011125956A JP 2009286327 A JP2009286327 A JP 2009286327A JP 2009286327 A JP2009286327 A JP 2009286327A JP 2011125956 A JP2011125956 A JP 2011125956A
Authority
JP
Japan
Prior art keywords
matrix
spring constant
axis
weight
rotary joint
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
JP2009286327A
Other languages
English (en)
Other versions
JP5316396B2 (ja
Inventor
Naoya Kagawa
尚哉 香川
Kazuhiro Niimi
和弘 新美
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.)
Denso Wave Inc
Original Assignee
Denso Wave Inc
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 Denso Wave Inc filed Critical Denso Wave Inc
Priority to JP2009286327A priority Critical patent/JP5316396B2/ja
Publication of JP2011125956A publication Critical patent/JP2011125956A/ja
Application granted granted Critical
Publication of JP5316396B2 publication Critical patent/JP5316396B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)

Abstract

【課題】多関節のロボットアームの各回転関節軸についてzxy軸まわりのばね定数を高精度に同定する。
【解決手段】ロボットアームを複数の位置に動作させて、動作位置毎に2つの重りを1つずつロボットアームの先端に付け、各動作位置において各回転関節軸の回転角を取得すると共に、重り毎の測定点の位置・姿勢を計測手段により計測する。また、各動作位置において質量の異なる重りが付けられたときの測定点の位置・姿勢について、各回転関節軸の回転角および各回転関節軸の各ばね定数の予測値を用いて計算によって求める。そして、位置・姿勢について、大なる質量の重りのときの計測値と計算値の誤差、および小なる質量の重りのときの計測値と計算値の誤差を求め、これら両誤差の差を各動作位置について合計した値が所定の閾値以下となるようにばね定数の予測値を修正してゆく。
【選択図】図4

Description

本発明は、ロボットアームの回転関節軸のばね定数を同定する方法およびその装置に関する。
例えば、垂直多関節型ロボットにおいて、そのロボットアームは複数の回転関節軸により複数のアームを連結して構成され、各アームは回転関節軸の回転によって水平方向或は垂直方向に旋回したり、捻り回転したりして所用の動作を行う。
ロボットアームの各回転関節軸はサーボモータにより歯車減速装置を介して回転駆動されるが、回転トルクを受けて捻れ方向の撓みを生じたり、アームやワークの質量を受けて曲げ方向の撓みを生じたりする。このため、各回転関節軸のばね定数を正確に把握して、各回転関節軸がどの程度捩れたり曲がったりするのかを精度良く演算できないと、ロボットアームの先端を教示された位置・姿勢に正しく制御することが困難となる。
回転関節軸のばね定数を求めるために採用されていた従来方法の一つに、ロボットアームの先端に、質量の異なる2個の重りを交互に取り付け、重り毎に、各回転関節軸に連結されたアームの垂直方向の撓み量をレーザ変位計などの外部計測装置により計測し、2つの重りの質量の差と、各アームの撓み量の差とから、各回転関節軸のばね定数を割り出す、というものがある。
特許文献1は、ロボットではないが、構造物をばね・質点系にモデル化し、ばね・質点系の一端を加振した場合の加振力と、任意の点での加振力に対する応答を測定し、この加振力と応答とからばね定数と質点の質量を同定する方法を開示している。
特開平5−209805
ロボットアームの回転関節軸は、両端部が軸受で支持された両端支持型の他、一端側のみが軸受で支持された片持ち型のものも多く存在する。回転関節軸の回転中心軸線と同一の軸線をz軸、このz軸に直交する2軸線であって互いに直交する2軸線をx軸およびy軸とした場合、両端支持型の回転関節軸であっても、片持ち型の回転関節軸であっても、z軸を中心とする回転方向(捩り方向)の撓みを生ずることは勿論、xyの各軸を中心とする回転方向(曲げ方向)にも撓みを生ずるので、zxyの各軸を中心とする回転方向の撓みについてのばね定数(以下、単にz軸、x軸、y軸まわりのばね定数という。)を考慮する必要がある。
しかしながら、上記従来の方法、つまり、ロボットアームの先端に2つの重りを取り付けたときの各アームの垂直方向の撓み量を計測し、2つの重りの質量差と各アームの上下方向の撓み量差とからばね定数を同定する方法では、計測した撓み量に対し、z軸まわりのばね定数、x軸まわりのばね定数およびy軸まわりのばね定数がそれぞれどの程度関与しているか分からない。このため、zxyの各軸まわりのばね定数の関与の程度については、作業者が経験と勘によって推定するしかなく、結局、zxyの各軸まわりのばね定数を真のばね定数に近い値として精度良く同定することが困難となる。
そして、各回転関節軸のzxyの各軸まわりのばね定数を高精度に同定し得ないことは、サーボモータにより各回転関節軸を正しく回転させても、予測できない回転関節軸の撓みにより、予め教示された位置・姿勢に高精度に制御できなくなることを意味する。
本発明は上記の事情に鑑みてなされたもので、その目的は、多関節のロボットアームの各回転関節軸について、z軸まわりのばね定数だけでなく、x軸まわりのばね定数、y軸まわりのばね定数をも高精度に同定することができるロボットのばね定数同定方法およびロボットのばね定数同定装置を提供することにある。
本発明では、ロボットアームを複数の位置に動作させて、各動作位置において質量の異なる少なくとも2つの重りを1つずつロボットアームの先端に付け、各動作位置において各回転関節軸の回転角を取得すると共に、重りが換わる毎に、ロボットアームの先端または先端近くに定められた測定点の位置および姿勢のうちの少なくとも位置を、計測手段により計測し、且つ、各回転関節軸の回転角および各回転関節軸の各ばね定数の予測値を用いて計算によって求め、更に、大なる質量の重りのときの計測による少なくとも位置と計算による少なくとも位置との誤差、および小なる質量の重りのときの計測による少なくとも位置と計算による少なくとも位置との誤差を求め、これら両誤差の差を各動作位置について合計する。この大なる質量の重りのときの計測による少なくとも位置と計算による少なくとも位置との誤差、および小なる質量の重りのときの計測による少なくとも位置と計算による少なくとも位置との誤差の差は、当初定めた各ばね定数の予測値と真のばね定数との差によって生じたものであるから、両者の差が所定の閾値以下となるようにばね定数の予測値を数学的手法により修正してゆくことにより、各回転関節軸の回転中心軸線(z軸)まわりのばね定数ばかりでなく、回転中心と直交する2軸(xy軸)まわりのばね定数をも求めることができ、しかも、最終的に求められた各ばね定数の予測値(同定されたばね定数)はある程度の正確さをもって真のばね定数に近い値となる。その上、重りが大小換えられたときの少なくとも位置の差を利用してばね定数を求めるので、トルクが作用したときの回転関節軸の撓みを計算して測定点の位置を求める場合、アームの重量などによるトルクを考慮せずとも、重りの重量によるトルクだけを考慮すれば良く、計算が容易となる。
本発明の第1の実施形態を示すもので、回転関節軸のばね定数を同定するためのシステム構成をモデル的に示す図 垂直多関節型ロボットの斜視図 ロボットアームの先端近くの測定点を示す斜視図 フローチャート 捻り回転を行うアームの回転関節軸を示すもので、(a)は回転関節軸の支持構成とサーボモータのトルク伝達構成をモデル的に示す断面図、(b)は回転関節軸の3方向の撓みの中心軸を示す斜視図 旋回を行うアームの回転関節軸を示すもので、(a)は回転関節軸の支持構成とサーボモータのトルク伝達構成をモデル的に示す断面図、(b)は回転関節軸の3方向の撓みの中心軸を示す斜視図 回転関節軸の撓みを示すもので、(a)はx軸を中心とする回転方向の撓みを示す断面図、(b)はy軸を中心とする回転方向の撓みを示す断面図、(c)はz軸を中心とする回転方向の撓み(捩れ)を示す斜視図
図面は本発明の第1の実施形態を示す。図2には、6軸の垂直多関節型ロボット1が示されている。このロボット1のロボットアーム2は、ベース3と、このベース3に第1軸Lc−1を中心に水平方向に旋回可能に支持されたショルダ部4と、このショルダ部4に第2軸Lc−2を中心に上下方向に旋回可能に支持された下アーム5と、この下アーム5に第3軸Lc−3を中心に上下方向に旋回可能に支持された第1の上アーム6と、この第1の上アーム6の先端部に第4軸Lc−4を中心に捻り回転可能に支持された第2の上アーム7と、この第2の上アーム7に第5軸Lc−5を中心に上下方向に旋回可能に支持された手首8と、この手首8に第6軸Lc−6を中心に捻り回転可能に支持されたフランジ9とから構成されている。
ベース3、ショルダ部4、下アーム5、第1の上アーム6、第2の上アーム7、手首8、フランジ9は、ロボットアーム2におけるアームとして機能し、ベース3を除く各アーム4〜9は、図5および図6に示すように、前段のアームに軸受10を介して回転可能に支持された回転関節軸11に固定連結されている。なお、各回転関節軸11は、上記第1軸Lc−1〜第6軸Lc−6に相当するものである。
また、各回転関節軸11は、それぞれ駆動源であるサーボモータ12により減速装置、例えば歯車減速装置13を介して回転駆動され、各アーム4〜9は、回転関節軸11の回転に伴って旋回動作或は捻り動作を行うようになっている。図5および図6では、回転関節軸を示すに同じ符号11を用いているが、各アーム4〜9の回転関節軸11はそれぞれ径や長さの異なるものが用いられ、また、サーボモータ12も、駆動するアームに応じた容量のものが各回転関節軸11に一対一の関係で設けられているものである。
ロボット1は、動作プログラムに従ってサーボモータ12を制御することによってロボットアーム2を制御する制御部(以下、ロボット制御部という。)14を備えている。このロボット制御部14には、図1に示すように、回転関節軸11の回転角度を検出する関節角度検出器(軸角度検出手段)15と記憶部16が接続されている。関節角度検出器15は、サーボモータ12の回転軸(図示せず)に連結された回転検出手段としてのロータリエンコーダ(図示せず)をセンサとし、このロータリエンコーダの回転角検出情報に基づいて回転関節軸11の回転角0度の基準位置からの回転角度を検出する。つまり、関節角度検出器15は、回転関節軸11の実際の回転角を検出するものではなく、ロボット制御部14の回転指令によってサーボモータ12の回転軸が回転したとき、そのサーボモータ12の回転軸の回転角を検出し、検出した角度を歯車減速装置13の減速比で除することにより、回転関節軸11の回転角度に換算してロボット制御部14に出力するものである。
上記記憶部16には、ロボット制御用の各種ソフトウエアなどが予め記憶されており、また、実際のロボット作業に際しては、ティーチングされた動作プログラムなどが記憶される。更に、この記憶部16には、後述する各種のパラメータが記憶されている。
ベース3および各アーム4〜9には、3次元の座標が規定されている。このうち、床面に据え付けられるベース3の座標系は、不動の座標系としてロボット座標(基準座標)とされるものである。各アーム4〜9の座標系は、各アーム4〜9の基端部(回転関節軸11の回転中心軸線上の所定位置)に規定されており、各アーム4〜9の回転によりロボット座標上での姿勢(向き)、或は位置と姿勢が変化する。図1には、ベース3および各アーム4〜9の座標のうち、ロボット座標がZr,Xr,Yrの座標軸で示され、フランジ9の座標(以下、フランジ座標という。)が、Zf,Xf,Yfの座標軸で示されている。
記憶部16には、ロボット座標上におけるショルダ部4の座標位置、ショルダ部4の座標上における下アーム5の座標位置、下アーム5の座標上における第1の上アーム6の座標位置、第1の上アーム6の座標上における第2の上アーム7の座標位置、第2の上アーム7の座標上における手首8の座標位置、手首8の座標上におけるフランジ9の座標位置、および各アーム6〜9の長さを表す数値がパラメータとして記憶されている。
そして、ロボット制御部14は、各アーム4〜9の座標の位置と姿勢とを、各アーム6〜9の回転位置と各アーム4〜9の座標の相互位置関係から、座標変換の計算機能によりロボット座標上での位置と姿勢とに変換して認識することができるようになっている。なお、各アーム4〜9の姿勢は、各アーム4〜9の座標をロボット座標まで並行移動したとき、各アーム4〜9の座標軸上の単位ベクトルの先端がロボット座標上でどの位置にあるかによって表される。
さて、図1にはロボットアーム2の各回転関節軸11のばね定数を同定するためのシステム構成がモデル化して示されている。同定対象となるばね定数は、次のようなものである。つまり、図5(b)、図6(b)および図7に示すように、撓みのない状態での各回転関節軸11の回転中心軸線Lcと同一の軸線をz軸、このz軸に直交する2軸線であって互いに直交する2軸線をx軸およびy軸とする3次元座標を想定し、z軸まわりのばね定数をKz、x軸まわりのばね定数をKxおよびy軸まわりのばね定数をKyとしている。これら各回転関節軸11の各ばね定数Kz,Kx,Kyのうち、同定すべきばね定数としては、全てを対象とすることもでき、所望のものを選択することもできる。なお、ばね定数の3次元座標の各軸zxyは、この実施形態にあっては各アーム4〜9の固有座標の各座標軸と同一であるが、異なっていても良い。
ここで、z軸まわりのばね定数Kzとは、図7(c)に示す回転関節軸11単独の撓み(捩れ)だけでなく、サーボモータ12の回転軸から歯車減速装置13を経て回転関節軸11までのアーム4〜9へのトルク伝達経路を含んだ撓み(捩れ)についてのものとされる。また、x軸およびy軸を中心とする回転方向の撓みは、回転関節軸11自身が曲げの他、図7(a)および(b)に示すように、軸受10も変形するので、xyの各軸まわりのばね定数には、軸受10のばね定数も含む。なお、回転関節軸11は軸受10と共にz軸を中心に対象形であるので、通常は、xyの各軸まわりのばね定数は同値となる。
図1において、床面に据え付けられたロボットアーム2はスケルトンにて示されている。また、床面上には、ロボットアーム2に相対するようにして、3次元の座標測定装置(計測手段)17が設置されている。そして、ロボット制御部14および座標測定装置17の制御部(以下、測定制御部という。)18の双方がばね定数同定装置19に接続されている。このばね定数同定装置19は、パソコンからなり、CPUを主体とする制御部、ばね定数同定のためのソフトウエアなどを記憶した記憶部、キーボードやマウスなどの入力部、液晶ディスプレイなどの出力部を備えている。
上記座標測定装置17は、ロボットアーム2の先端または先端近くに定められた測定点の位置および姿勢を測定するためのものである。この実施形態では、フランジ9の手首8側を後、その反対側を前としたとき、図3に示すように、ロボットアーム2の先端を構成するフランジ9の外周にホルダ20が固定され、このホルダ20の前面(フランジ9の前面と平行)の所定箇所に測定点tが定められている。従って、測定点tは、この実施形態においては、ロボットアーム2の先端であるフランジ9の近くに定められていることとなる。なお、測定点tは、フランジ9の前面に定めても良く、要はフランジ9と一体に移動する箇所であれば良い。
上記測定点tには、当該測定点tを原点とする測定点座標が規定されている。この測定点座標は、フランジ9の座標軸Zf、XfおよびYfにそれぞれ平行の座標軸Zt、XtおよびYtを有する3次元座標によって構成されている。そして、Zt,Xt,Ytの各座標軸上の単位ベクトルがそれぞれオリエントベクトルO、アプローチベクトルAおよびノーマルベクトルNとして定義されている。
ホルダ20の先端面には、指標としての3個の発光ダイオード21〜23が接着などによって固定されている。この3個の発光ダイオード21〜23は発光色が互いに異なり、その固定位置は、例えば測定点tを重心とする正三角形を描いたとき、その正三角形の頂点となる位置に定められている。なお、発光ダイオード21〜23の固定位置は、上記位置に限られるものではない。
前記座標測定装置17は、例えば3台のCCDカメラを備えた3次元計測器(例えば、株式会社東洋テクニカ;ロボットキャリブレーションROCALシステム)からなるもので、3台のカメラによって3個の発光ダイオード21〜23を撮影することにより、測定制御部18が撮影画像を解析して測定点tの位置と姿勢を計測する。この座標測定装置17による測定点tの位置は、図1において座標軸がXm,Ym,Zmで示された座標測定装置17の3次元座標(以下、計測座標という。)上の位置で示され、姿勢は、計測座標における測定点座標のオリエントベクトルO、アプローチベクトルAおよびノーマルベクトルNの先端位置にて示される。なお、座標測定装置17はレーザトラッカなどであっても良い。上記3個の発光ダイオード21〜23の発光色を異ならせる理由はそれぞれを座標測定装置17に個別に認識させるためであるが、そのためには、3個の発光ダイオード21〜23の色を同一にして発光のタイミングを互いに異ならせるようにしても良い。
さて、本発明のばね定数の同定方法の基本的な考え方は次のようなものである。つまり、各回転関節軸11の各ばね定数Kx,Ky,Kzを同定するために、本実施形態では、質量の異なる2つの重り24,25がフランジ9の先端面の中央に交換可能に接着などによって固定される。なお、重り24,25はねじ止めによって固定するようにしても良い。この2つの重り24,25の質量は、重り24の方が重り25よりも軽量となっている。そして、この2つの重り24,25は、予め重心位置が求められており、フランジ9の先端面の中央に固定されたとき、それぞれの重心位置がフランジ座標上の位置として特定できるように構成されている。
ばね定数を同定するとき、ロボットアーム2の先端は複数の異なる位置に動作される。この複数の動作位置に移動する際、全ての回転関節軸11は回転されて、各回転関節軸11は複数の動作位置で互いに同じ回転角をとらないようになされる。そして、設定された動作位置でロボットアーム2が停止すると、そのときの各回転関節軸11の回転角が検出されてばね定数同定装置19に送られる。また、ロボットアーム2の各動作位置で、2つの重り24,25が交互にフランジ9に取り付けられ、そして、重り24,25が付けられる都度、座標測定装置17によって測定点tの位置と姿勢が計測されてばね定数同定装置19に送られる。
ばね定数同定装置19は、ロボットアーム2の各動作位置において、2つの重り24,25が取り付けられたときの座標測定装置17からの測定点tの位置と姿勢についての計測情報から、測定点tの同時変換行列Tmea(請求項1,2でいうTm)を求める。また、ばね定数同定装置19は、ロボット制御部14から与えられた各回転関節軸11の回転角と、重り24,25の質量と、各アーム4〜9の長さと、記憶部16にパラメータとして記憶された各回転関節軸11のばね定数Kx,Ky,Kzの予測値Kx0,Ky0,Kz0を用いて、ロボットアーム2の各動作位置において、2つの重り24,25が取り付けられたときの測定点tの位置および姿勢を示す同次変換行列Trob(請求項1,2でいうTc)を計算する。なお、予測値Kx0,Ky0,Kz0は、例えばロボット1の記憶部(記憶手段)16に予め記憶されている。
測定点tの位置および姿勢を示す同次変換行列を計算するとき、各回転関節軸11の撓みを考慮しなければならない。各回転関節軸11には、重り24,25によって生ずるトルクの外、各アーム4〜9の質量によって生ずるトルクが作用し、この両トルクを受けて各回転関節軸11は撓む。しかし、本実施形態では、測定点tの位置・姿勢を示す同次変換行列を計算するとき、重り24,25の質量によって生ずるトルクのみを考慮し、各アーム4〜9の質量により生ずるトルクを考慮しない。
その代わりに、本実施形態では、重り24,25毎に計測により求めた同次変換行列Tmeaと計算によって求めた同次変換行列Trobとの差に着目し、質量の大きい重り25についての計測による同次変換行列Tmeaと計算による同次変換行列Trobとの差を示す誤差行列ΔThighload、および質量の小さい重り24についての計測による同次変換行列Tmeaと計算による同次変換行列Trobとの差を示す誤差行列ΔTlowloadとを求める。
この計測による同次変換行列Tmeaと計算による同次変換行列Trobにおいて、各重り24,25によって生ずるトルクは同じであるから、TmeaとTrobの差を求めることにより、アーム4〜9の質量によって生ずるトルクが作用したとき、各回転関節軸11のばね定数Kx,Ky,Kzの予測値Kx0,Ky0,Kz0と真の値との差によって生じた各回転関節軸11の撓みの差が求まる。しかし、アーム4〜9の質量により各回転関節軸11に作用するトルクは不明で、そのトルクが作用したとき、各回転関節軸11のばね定数Kx,Ky,Kzの予測値Kx0,Ky0,Kz0と真の値との差によって各回転関節軸11の撓みの差がどの程度生ずるものなのかは分からない。
そこで、本実施形態では、更に、各動作位置において、質量の大なる重り25についての誤差行列ΔThighloadと質量の小なる重り24についての誤差行列ΔTlowloadとの差を算出する。この両誤差行列の差(ΔThighioad−ΔTlowload)を取ることにより、各アーム4〜9の質量によって生ずるトルクが各回転関節軸11に作用したとき、ばね定数Kx,Ky,Kzの予測値Kx0,Ky0,Kz0と真の値との差によって各回転関節軸11に生ずる撓みの差が相殺される。
従って、(ΔThighioad−ΔTlowload)は、質量の大なる重り25と質量の小なる重り24とで各回転関節軸11に作用するトルクの差分のトルクが各回転関節軸11に作用したとき、各回転関節軸11のばね定数Kx,Ky,Kzが予測値Kx0,Ky0,Kz0のときの各回転関節軸11の撓みと、真の値のときの各回転関節軸11の撓みの差となる。このように(ΔThighioad−ΔTlowload)は、各回転関節軸11のばね定数Kx,Ky,Kzの予測値Kx0,Ky0,Kz0と、真の値との差によって生じたものであるから、(ΔThighioad−ΔTlowload)を基にして真の値を同定することが可能である。本発明は以上のような考え方を基にしてばね定数を同定する。
以下、ばね定数の同定方法について、図4のフローチャートをも参照して説明する。まず、ばね定数を同定する基となる情報を取得するためのロボットアーム2の動作位置(姿勢を含む)を複数決定する(図2のステップS1)。この場合、ロボットアーム2の動作領域の全体を網羅するように各位置を定めると共に、前述のように各位置を取らせる場合に全ての回転関節軸11が回転するようにして、各回転関節軸11が複数の動作位置間で同じ回転角とならないようにする。
次に決定した複数位置にロボットアーム2を順次動作させる。そして、各動作位置において、2つの重り24,25をフランジ9の前端面に交互に取り付け、各重り24,25が取り付けられる都度、座標測定装置17により測定点tの位置と姿勢を計測し、計測結果である位置・姿勢計測情報をばね定数同定装置19に送る。また、ロボットアーム2を各動作位置に動作させる都度、各回転関節軸11を駆動するサーボモータ12の回転数から各回転関節軸11の回転角を検知し、検知した回転角情報をロボット制御部14からばね定数同定装置19に送る。ばね定数同定装置19に送られた各回転関節軸11の回転角情報と測定点tの位置・姿勢計測情報は、当該ばね定数同定装置19のRAMなどの記憶部(図示せず)に記憶される(以上、ステップS2〜5の繰り返し:情報取得手段)。
ロボットアーム2を決定された複数の位置の全てに動作させ終えると(ステップS5で「YES」)、ばね定数同定装置19は、位置・姿勢計測情報から、動作位置毎に各重り24,25を取り付けたときの計測座標(所定の固有座標)についての測定点tの位置・姿勢を表すベクトルの同次変換行列Tmea(請求項1,2でいうTm)を算出する。また、動作位置毎に各重り24,25を取り付けたときの計測座標についての測定点tの位置・姿勢を計算し(位置計算手段)、この位置・姿勢示すベクトルの同次変換行列Trob(請求項1,2でいうTc)を求める(ステップS6:同次変換行列計算手段)。
同次変換行列Trobを計算によって求める方法は次の通りである。まず、図1において、meabaserobbaseは計測座標についてのロボット座標の位置・姿勢を示す同次変換行列、robbaseflangeはロボット座標についてのフランジ座標の位置・姿勢を示す同次変換行列、flangetoolはフランジ座標についての測定点tの位置・姿勢を示す同次変換行列である。
従って、計測座標についての測定点tの位置・座標を示す同次変換行列Trobは、
meabaserobbaserobbaseflangeflangetoolの積によって求めることができる。このうち、フランジ9の座標についての測定点の位置・姿勢flangetoolは既知、計測座標とロボット座標との関係は測定可能であるから
meabaserobbaseも既知である。そして、robbaseflangeは、各回転関節軸11の回転角情報や各回転関節軸11に作用するトルクを用いて計算することができる。
さて、ロボット座標についてのフランジ9の位置姿勢を示す同次変換行列
robbaseflangeは、次の(1)式に示されているように、回転関節軸11(第1軸〜第6軸)間の同次変換行列の積で表現される。
Figure 2011125956
なお、(1)式において、0はベース(ロボット座標)、1〜6は第1軸〜第6軸を示す。
(1)式における軸間の同次変換行列は、次の(2)式に示すように、パラメータθ,a,b,d,α,βで表される行列の積で表現される。なお、iは第1軸〜第6軸(Lc−1〜Lc−6)を示す1〜6までの整数であり、パラメータθ,a,b,d,α,βの各軸Lc−1〜Lc−6(各回転関節軸11)の値は[数2](b)のパラメータ表に示されている。
Figure 2011125956
上記パラメータの定義は、aiはi軸(iアーム)の座標とi+1軸(i+1アーム)の座標のX軸方向のオフセット、biはY軸方向のオフセット、diはZ座標軸方向のオ
フセットである。また、θiはZ座標軸まわりの回転角、αiはX座標軸まわりの回転角、βiはY座標軸まわりの回転角である。
ところで、ZXYの各座標軸まわりの実際の回転角は、サーボモータ12による回転各に、回転関節軸11の撓みによる回転角を加えたものとなる。各回転関節軸11のZXYの各座標軸まわりの撓みによる回転角(撓み角;rad)szi,sxi,syiは、各回転関節軸11のZ座標軸まわり、X座標軸まわり,Y座標軸まわりに作用するトルク(Nm)をtzi,txi,tyi、記憶部16にパラメータとして記憶された各回転関節軸11のzxyの各座標軸まわりのばね定数(Nm/rad)の予測値をKz0i,Kx0i,Ky0iとすると、
zi=tzi/Kz0i … (7)
xi=txi/Kx0i … (8)
yi=tyi/Ky0i … (9)
で表される。
ここで、ばね定数の予測値の逆数をkz0i,kx0i,ky0iとおくと、各回転関節軸11のZXYの各座標軸まわりの回転角は、ばね定数の予測値の逆数kz0i,kx0i,ky0iを用いて次のように表される。
zi=tzi・kz0i … (10)
xi=txi・kx0i … (11)
yi=tyi・ky0i … (12)
従って、実際のzxyの各座標軸まわりの回転角は、
θi=θi+tzi・kz0i … (13)
αi=αi+txi・kx0i … (14)
βi=βi+tyi・ky0i … (15)
と表すことができるので、この撓み角を考慮した回転角を前記(3),(5),(6)式に代入し、前記(2)式によって軸間の同次変換行列を求めることができる。そして、求めた各軸間の同次変換行列の積によって(1)式のロボット座標についてのフランジ9の位置・姿勢を示す同次変換行列robbaseflangeを求めることができる。
上記トルクtzi,txi,tyiは、各アーム4〜9の質量によるものと、重り24,25の質量によるものとがある。各アーム4〜9の質量とその重心とを計測することは難しいので、各アーム4〜9の質量によるトルクは未知の値である。しかし、重り24,25によるトルクは、各回転関節軸11から各重り24,25までの距離、関節角度検出器15によって検出された各回転関節軸11の回転角により計算することができる。なお、各回転関節軸11から各重り24,25までの距離は、前記[数2](d)のパラメータを用いて計算できる各回転関節軸11か
らフランジ座標までの位置ベクトルと、フランジ座標から重り24,25の重心までの位置ベクトルとによって計算することができる。
従って、本実施形態では、前記(10)式〜(12)式によって求められる各回転関節軸11の撓みszi,sxiおよびsyiは、重り24,25によるトルクのみを考慮して求める。そして、このszi,sxiおよびsyiから撓み角を考慮した各回転関節軸11の回転角θi,αiおよびβiを前記(13)式〜(15)式により求め、θi,αiおよびβiを前記(3),(5),(6)式に代入し、前記(2)式によって軸間の同時変換行列を求めるものである。そして、求めた各軸間の同次変換行列の積によって前記(1)式のロボット座標についてのフランジ9の位置・姿勢を求める。
計算により同次変換行列robbaseflangeを求めた後、前述したように次の(16)式によって計測座標についての測定点tの位置・姿勢を示す同次変換行列Trobを求めるものである。
robmeabaserobbaserobbaseflangeflangetool…(16)
以上のようにして計算により求められたTrobは、次の(17)式〜(19)式に示すように、全てのばね定数の予測値の逆数kallと、重り24,25によるトルクtallの関数であるといえる。
Figure 2011125956
なお、(18)式および(19)式において、右辺の括弧の右肩に小さくtで示す符号は、この行列が横書きされているが、実際には転置行列であることを示している。
同一の動作位置において、異なる重り24,25を付けたとき各回転関節軸11の撓み角の差Δszi,ΔsxiおよびΔsyiは、次の(20)式〜(22)式のようになる。
Figure 2011125956
上記(20)式〜(22)式において、質量の大なる重り25のときのトルクthighioadと質量の小なる重り24のときのトルクtlowloadは、前述のように既知である。従って、前記(17)式で示される質量の大なる重り25のときの計算による同次変換行列Thighioadと、質量の小なる重り24のときの計算による同次変換行列次Tlowloadとの差は、次の(23)式のように、全てのばね定数の逆数kallの関数であるといえる。
Figure 2011125956
ここで、動作位置における測定点tの測定による位置・姿勢と計算による位置・姿勢の誤差ΔTは、次の(24)式のように、ばね定数の逆数の微小変動Δkの線形結合和で近似される。
Figure 2011125956
上記(24)式を質量の大なる重り25における誤差ΔThighloadと、質量の小なる重り24における誤差ΔTlowloadの差に着目した式にすると、次の(25)式のようになる。
Figure 2011125956
1つの動作位置において、重り24,25毎に、計測によって求められた測定点tの同時変換行列Tmeaと計算によって求めた測定点tの同次変換行列Trobとの差を示す誤差行列ΔThighioadおよびΔTlowloadは、次の(26)式によって求めることができる。なお、(26)式では、ΔThighioadおよびΔTlowloadを、ΔTmatrixで示している。
Figure 2011125956
以上のように、動作位置における測定点tの測定による位置・姿勢と計算値による位置・姿勢の誤差ΔTは、前記(24)式のように、ばね定数の逆数の微小変動Δkの線形結合和で近似されるから、ΔThighioadとΔTlowloadとの差が小さければ、ばね定数の当初の予測値は真の値に近いといえる。
そこで、ばね定数同定装置19は、ΔThighioadとΔTlowloadとの差を全動作位置に拡張してその総和(誤差和)ΔTallを次の(29)式により求める(ステップS7:誤差和行列計算手段)。
Figure 2011125956
続いて、ばね定数同定装置19は、この誤差和ΔTallが所定の閾値ε以下であるか否かを判断し(ステップS8:判断手段)、閾値ε以下のときには、各回転関節軸11のばね定数の予測値Kz0i,Kx0i,Ky0iをばね定数として同定し(同定手段)、この同定したばね定数が予め予測された適切な値以内かどうかを判断する(ステップS9)。そして、適切な値以内であれば、同定したばね定数を記憶部16に保存し(ステップS9で「YES」、ステップS10)、ばね定数の同定を終了する。なお、同定したばね定数が適切な値以内でなければ(ステップS9で「NO」)、前述のステップS1から同定作業をやり直すこととなる。
一方、誤差和が閾値εを超えている場合(ステップS8で「NO」)、ばね定数同定装置19は、推定回数カウンタxをインクリメントし(ステップS11)、次にxが予め定められた所定の上限回数Xmax未満であるかどうかを判断し(ステップS12)、未満であれば(ステップS12で「YES」)、作業者に同定したいばね定数を選択するように促す。これに応じて、作業者は、ばね定数同定装置19の入力部(選択手段)を操作して全てのばね定数Kallから同定したいm個のばね定数K1〜Kmを選択する(ステップS13)。例えば、両端支持型の回転関節軸で、径寸法の大なる回転関節軸は、xyの両軸まわりの撓みは0と扱っても良い場合があるので、その場合のばね定数は同定したいばね定数から除外することが可能である。勿論、全てのばね定数を同定するばね定数として選択しても良い。
ここで、TmeaとTrobとの前記誤差ΔTを、測定点座標のノーマルベクトル、オリエントベクトルおよびアプローチベクトルの差Δn,ΔoおよびΔaと、計測座標からの位置ベクトルの差Δpで示すと、次の(30)式のようになる。また、前記ヤコビ行列Jは、オリエントベクトル、アプローチベクトルおよび位置ベクトルを用いて表すと、次の(31)式で示されるように、計算により求めた測定点のノーマルベクトル、オリエントベクトル、アプローチベクトルのうちの例えばオリエントベクトル、アプローチベクトルの計測座標の各座標軸Zm,Xm,Ym上での位置ox,oy,oz,ax,ay,az,および測定点の位置ベクトルの計測座標の各座標軸Zm,Xm,Ym上での位置px,py,pzを同定したいばね定数の逆数k1〜kmで除した値の行列で表される。
Figure 2011125956
ノーマルベクトル、オリエントベクトル、アプローチベクトルには、次の(32)式の関係がある。
Figure 2011125956
つまり、上記の3つのベクトルのうち2つのベクトルが既知であれば、残る1つのベクトルは算出できる。このことから、上記(30)式、(31)式は、次の(33)式と(34)式、(35)式と(36)式の組み合わせとすることもできる。
Figure 2011125956
なお、(26)式のΔTの添え字のmatrixは、ΔTがノーマルベクトル、オリエントベクトル、アプローチベクトルの全てを使用して表されたことを意味し、(25),(28),(30)の各式のΔTにmatrixの添え字がないことは、ノーマルベクトル、オリエントベクトル、アプローチベクトルのいずれか2つのベクトルを使用して表したことを意味している。
さて、前記(25)式、つまり各動作位置におけるΔThighioadとΔTlowloadとの誤差(ΔThighioad−ΔTlowload)を全ての動作位置に拡張すると、次の(37)式のようになり、これを簡易に表すと(38)式となる。なお、hは動作位置の数を示す。
Figure 2011125956
上記(38)式を次の(41)式、(42)式のように変形してゆくと、(43)式のように、同定したいばね定数の逆数の微小変動行列Δkはヤコビ和行列Aの疑似逆行列で表される。
Figure 2011125956
そこで、ばね定数同定装置19は、(43)式を計算してΔkを求める(ステップS14:ヤコビ和行列計算手段、微小変動行列計算手段)。このとき、ヤコビ和行列ATAの行列式Sが0となる(但し、S=|ATA|)場合には、ヤコビ和行列Aの擬似逆行列が得られなくなるので、この場合(ステップS15で「NO」)には、推定回数カウンタxを0にし(ステップS18)、そして、ステップS1に戻って再度動作位置を決定することから同定作業をやり直す。
(43)式により求めたΔkは、次の(44)式のように、同定したいm個のばね定数K1〜Kmの真の値の逆数と予測値の逆数k1〜kmの差(微小変動)Δk1,〜,Δkmを表す行列であるから、ばね定数の予測値の逆数kvとΔkとの和kv+1は、ばね定数の真の値に近付く。
Figure 2011125956
そこで、ばね定数同定装置19は、このΔkを算出(ステップS16)した後、次の(45)式のkvに、同定したいばね定数K1〜Kmの予測値の逆数k1〜kmの行列を代入し、同定したいばね定数の予測値の逆数の行列を更新する(ステップS17:予測値逆数行列更新手段)。
Figure 2011125956
その後、ばね定数同定装置19は、前記(10)〜(12)式のばね定数の予測値の逆数として、同定したいばね定数K1〜Kmについては更新した予測値の逆数、つまり(45)式におけるkv+1を用い、同定を希望しないばね定数については当初の予測値の逆数kz0i,kx0i,ky0iをそのまま用い、そして、前記(13)式〜(15)式によりθi,αi,βiを求め、このθi,αi,βiを前記(3)式、(5)式および(6)式に代入して前記(2)式により軸間の同次変換行列を求め、これら軸間の同次変換行列をもとに前記行列(1)式により各動作位置における各重り24,25についてのrobbaseflangeを再度求める(位置再計算手段)。
次いで、ばね定数同定装置19は、前記(16)式からTrobを再度求め(ステップS6:同次変換行列再計算手段)、且つ、先に求めたTmeaとの誤差ΔTを再度求め、続いて、(29)式により誤差ΔTの総和ΔTallを再度求め(ステップS7:誤差和行列再計算手段)、その誤差和ΔTallが所定の閾値ε以下であるかを判断する(ステップS8:再判断手段)。
誤差和ΔTallが所定の閾値ε以下であれば、ばね定数同定装置19は、更新した同定したいばね定数の予測値の逆数kv+1から求めたばね定数、同定を希望しないばね定数については当初の予測値を各ばね定数として同定し、同定した値が適切であれば(ステップS9で「YES」)、これを記憶部16に記憶する(ステップS10)。
閾値ε以下でなければ、ばね定数同定装置19は、推定回数カウンタxをインクリメントし(ステップS11)、再度、(43)式により、ばね定数の逆数の微小変動行列Δkを求め(微小変動行列再計算手段)、このΔkを(45)式に代入し、当該(45)式のkvに先に更新したばね定数の逆数kv+1を代入して(45)式により再度同定したいばね定数の予測値の逆数kv+1を更新する(予測値逆数行列再更新手段)。なお、推定回数カウンタxが2以上のときは、同定したいばね定数の選択は必ずしも行わなくとも良い。勿論、x=1のときと同じばね定数をxが2以上のときにも選択操作するものであっても良く、更には、ばね定数の推定に影響のない範囲で同定したいばね定数を追加すべく、xが2以上のときに選択操作するようにしても良い。
そして、再度更新した同定したいばね定数の予測値の逆数kv+1を用いて行列(2)により各位置・姿勢についての同次変換行列Trobを求め、且つ、先に求めたTmeaとの差ΔTを求め、次いで、その総和(誤差和)ΔTall(ΔR)が所定の閾値ε以下であるか判断し、閾値ε以下でなければ、再度、(43)式によりΔkを求め、(45)式のkvに、先に更新した同定したいばね定数の予測値の逆数kv+1を代入して更に同定したいばね定数の予測値の逆数kvを更新するという動作を、誤差ΔTの総和ΔRが所定の閾値ε以下となるまで繰り返し実行する(繰り返し実行手段)。
そして、誤差和ΔTallが所定の閾値以下となったところで、更新したkv+1を同定したいばね定数の逆数とし、このkv+1からばね定数を求めてこれを記憶部16に記憶する。
実際にロボットアーム2を動作させる場合、以上のようにして同定したばね定数を用いて回転関節軸11のzxyの各軸方向の撓みを求め、この撓みを用いて各サーボモータ12の回転数を補正することにより、ロボットアーム2の先端を教示された位置・姿勢に精度良く動作させることができるようになる。
このように本実施形態によれば、各回転関節軸11のばね定数を、zxyの各軸まわりのばね定数に分けて同定することができる。しかも、各回転関節軸11に作用するzxyの各軸を中心とするトルクを解析してzxyの各軸まわりのばね定数を同定するので、同定したばね定数は真のばね定数に精度良く一致させることができる。
また、従来のばね定数同定方法の場合には、各回転関節軸11の撓みをベース3に近いものから順に計測する必要があり、間違えて回転関節軸を飛ばしてしまうと、正しく計測できないという不具合があり、計測作業自体が難しいという問題があったが、本実施形態の同定方法によれば、計測としては、ロボットアーム2を動作させる都度、2つの重り24,25についての測定点tの位置・姿勢を座標測定装置17によって計測するだけで済むので、計測作業は簡単なものとなり、間違える恐れがない。
その上、重り24,25の質量の差から生ずるトルク差を利用してばね定数を求めるので、各回転関節軸11の撓みを求める場合、各アーム4〜9の質量、重心位置、イナーシャなどが既知でないと演算できない各アーム4〜9の質量により発生するトルクについては考慮する必要がなく、計算が容易となる。
[第2の実施形態]
上述の第1の実施形態では、各動作位置について重り24,25毎の測定点tの位置と姿勢の双方を用いてばね定数を同定した。本実施形態では、姿勢を計測できない場合などに対応できるように、位置だけでばね定数を同定することができるようにしたものである。
つまり、前記(37)式において、位置のみに着目すると、次の(46)式のようになる。
Figure 2011125956
上記(46)式を次の(49)式のように表し、この(49)式を変形してゆくと、前記(43)式で表される同定したいm個のばね定数の逆数の微小変動行列Δkは(52)式のようになる。
Figure 2011125956
Figure 2011125956
従って、同定したいばね定数の予測値の逆数を与えると、次の(53)式によって同定したいばね定数の予測値の逆数を更新することができるので、第1の実施形態と同様に、誤差和ΔRpの値が閾値ε以下となるように繰り返し計算することによってばね定数を同定することができる。
Figure 2011125956
[第3の実施形態]
この実施形態は、meabaserobbase或はflangetoolが未知である場合、これらをばね定数の同定前に同定(推定)しようとするものである。
一般に、ロボットアーム2が1つの位置・姿勢を取ったとき、座標測定装置17による計測値と、計算値との誤差ΔT(後述の(62)式で示されるように9行1列)は次の(54)式のように同定したいパラメータaの微小変動Δaの線形結合和で近似される。
Figure 2011125956
上記(56)式のTmeaは、第1の実施形態で説明したと同様の座標測定装置17による計測値による同次変換行列、(57)式のTrobは、計算値による同次変換行列である。ただし、本実施形態では、Trobを求めるに際し、各回転関節軸11の撓みを考慮せず、各回転関節軸11の回転角だけを基にする。
meabaserobbaseおよびflangetoolを表す同次変換行列は、次の(58)式および(59)式で表される。
Figure 2011125956
また、同定したいパラメータaは、次の(60)式で示され、当該パラメータaの微小変動Δaは、(61)式で示される。
Figure 2011125956
ここで、ノーマルベクトル、アプローチベクトル、オリエントベクトルは、第1の実施形態で示した関係があるので、(54)式の誤差ΔTおよびヤコビ行列Jをオリエントベクトルとアプローチベクトルを用いて表すと、それぞれ(62)式および(63)式のようになる。
Figure 2011125956
誤差ΔTを複数の動作位置の全ての動作位置に拡張すると、(64)式のようになる。
Figure 2011125956
上記(64)式を次の(65)式のように表し、この(65)式を前記第1の実施形態における(42)式、(43)式のように変形してゆくと、同定したいパラメータaの微小変動行列Δaは、(68)式のようになる。
Figure 2011125956
Figure 2011125956
従って、次の(69)式のavに同定したいパラメータの予測値a0を与えると、パラメータaの予測値を更新することができる。
Figure 2011125956
そして、以上の計算を、ΔRが所定の閾値以下となるまで繰り返すことによって同定したいパラメータaを求めることができる。
[その他の実施形態]
第3の実施形態におけるmeabaserobbaseおよびflangetoolの同定は、第1の実施形態におけるばね定数の同定と同時に行うようにしても良い。
フランジ9に取り付ける重りは2つに限られず、3つ以上であっても良い。この場合において、(ΔThighioad−ΔTlowload)は2つずつの重りの関係において求めれば良い。
ばね定数Kz,Kx,Kyの予測値Kz0,Kx0,Ky0は、ばね定数同定装置19の記憶部(記憶手段)に記憶させるようにしても良い。
対象とする多関節型のロボットは6軸のものに限らない。
図面中、2はロボットアーム、9はフランジ(ロボットアームの先端)、11は回転関節軸、14はロボット制御部、15は関節角度検出器、16は記憶部(記憶手段)、17は座標測定装置(計測手段)、18はばね定数同定装置(情報取得手段、測定点計算手段、同次変換行列計算手段、誤差和行列計算手段、同定手段、選択手段、ヤコビ和行列計算手段、微小変動行列計算手段、予測値逆数行列更新手段、同次変換行列再計算手段)、19は測定制御部、20は重り、tは測定点を示す。

Claims (2)

  1. 複数の回転関節軸により複数のアームを連結して構成された多関節のロボットアームにおいて、前記各回転関節軸の回転中心軸線と同一の軸線をz軸、このz軸に直交する2軸線であって互いに直交する2軸線をx軸およびy軸とし、前記各回転関節軸へのトルク伝達経路を含む前記z軸を中心とする回転方向の撓みのばね定数をKz、前記x軸を中心とする回転方向の撓みのばね定数をKxおよび前記y軸を中心とする回転方向の撓みのばね定数をKyとしたとき、
    前記ロボットアームの先端または当該ロボットアームの先端近くに測定点を定め、前記ロボットアームを複数の互いに異なる位置に動作させて動作位置毎に質量の異なる少なくとも2つの重りを1つずつ前記ロボットアームの先端に取り付けたとき、各動作位置において、前記各回転関節軸の回転角を取得すると共に、前記重りが替わる毎に、前記測定点の位置および姿勢のうちの少なくとも位置を計測手段により計測し、
    前記ロボットアームの前記各動作位置において前記ロボットアームの先端に取り付けた重り毎に、当該重りの質量、前記各アームの長さ、前記各回転関節軸の各ばね定数の予測値および前記回転関節軸の回転角を用いて前記測定点の位置を計算し、
    前記各動作位置において前記重り毎に、前記計測手段により計測した前記測定点の少なくとも位置についての所定の固定座標に基づく同次変換行列Tmおよび前記計算により求めた前記測定点の少なくとも位置についての前記所定の固定座標に基づく同次変換行列Tcを求めて当該両同次変換行列Tm,Tcの差の誤差行列ΔTを求め、
    前記各動作位置において前記重り毎に求めた前記誤差行列ΔTのうち、質量の大なる重りについての前記誤差行列ΔThighloadと質量の小なる重りについての前記誤差行列ΔTlowloadとの差を前記複数の動作位置について合計した誤差和行列ΔRを求め、
    前記誤差和行列ΔRの値が所定の閾値以下であるか否かを判断し、
    前記誤差和行列ΔRの値が前記所定の閾値以下であれば、前記各回転関節軸の前記各ばね定数Kx,Ky,Kzの前記予測値を前記各ばね定数として同定し、
    前記誤差和行列ΔRの値が前記所定の閾値を超えていた場合には、その後、
    前記各回転関節軸の前記各ばね定数Kx,Ky,Kzのうちから同定すべきばね定数を選択し、
    前記各動作位置において前記重り毎に計算により求めた前記測定点の少なくとも位置についての前記同次変換行列Tcと前記同定すべきばね定数の予測値の逆数の行列kvについてのヤコビ行列Jを求め、且つ、質量の大なる重りのヤコビ行列Jhighloadと質量の小なる重りのヤコビ行列Jlowloadとの差を前記各動作位置について合計したヤコビ和行列Aを求め、
    前記ヤコビ和行列Aの疑似逆行列と前記誤差和行列ΔRとの積から前記同定すべきばね定数の予測値についての逆数の微小変動行列Δkを求め、
    前記同定すべきばね定数の予測値の逆数の行列kvに前記微小変動行列Δkを加算して前記同定すべきばね定数の予測値の逆数の行列kvを更新し、
    前記同定すべきばね定数については前記更新した予測値の逆数の行列kv+1から求めたばね定数を用い、前記同定すべきばね定数以外のばね定数については当初の前記予測値を用いて前記複数の各動作位置について前記重り毎の前記測定点の少なくとも位置を再計算して当該再計算した前記測定点の少なくとも位置についての前記同次変換行列Tcを再度求め、
    前記複数の動作位置について、前記重り毎に前記計測手段により求めた前記測定点の前記同次変換行列Tmと前記再度計算により求めた前記測定点の前記同次変換行列Tcとから前記誤差行列ΔTを再度求め、且つ、再度前求めた記重り毎の前記誤差行列ΔTのうち、質量の大なる重りについての誤差行列ΔThighloadと質量の小なる重りについての誤差行列ΔTlowloadの差を前記複数の動作位置について合計した前記誤差和行列ΔRを再度求め、
    前記再度求めた誤差和行列ΔRの値が前記所定の閾値以下であるか否かを、前記再度求めた誤差和行列ΔRが所定の閾値以下となるまで繰り返して前記同定すべき各ばね定数を同定するようにしてなるロボットのばね定数同定方法。
  2. 複数の回転関節軸により複数のアームを連結して構成された多関節のロボットアームの制御部、および前記ロボットアームの先端または当該ロボットアームの先端近くに定められた測定点の位置および姿勢のうちの少なくとも位置を計測する計測手段の制御部に接続され、
    前記各回転関節軸の回転中心軸線と同一の軸線をz軸、このz軸に直交する2軸線であって互いに直交する2軸線をx軸およびy軸とし、前記各回転関節軸へのトルク伝達経路を含む前記z軸を中心とする回転方向の撓みのばね定数をKz、前記x軸を中心とする回転方向の撓みのばね定数をKxおよび前記y軸を中心とする回転方向の撓みのばね定数をKyとしたとき、それらばね定数の予測値を記憶した記憶手段と、
    前記ロボットアームを複数の互いに異なる位置に動作させて動作位置毎に質量の異なる少なくとも2つの重りを1つずつ前記ロボットアームの先端に取り付けたとき、各動作位置において、前記ロボットアームの前記制御部から前記各回転関節軸の回転角を取得すると共に、前記重りが換わる毎に、前記計測手段から前記測定点の位置および姿勢のうちの少なくとも位置を取得する情報取得手段と、
    前記ロボットアームの前記各動作位置において前記ロボットアームの先端に取り付けた重り毎に、当該重りの質量、前記各アームの長さ、前記各回転関節軸の各ばね定数の予測値および前記回転関節軸の回転角を用いて前記測定点の位置を計算する位置計算手段と、
    前記各動作位置において前記重り毎に、前記計測手段により計測した前記測定点の少なくとも位置についての所定の固定座標に基づく同次変換行列Tmおよび前記計算により求めた前記測定点の少なくとも位置についての前記所定の固定座標に基づく同次変換行列Tcを求める同次変換行列計算手段と、
    前記両同次変換行列Tm,Tcの差の誤差行列ΔTを求め、前記各動作位置において前記重り毎に求めた前記誤差行列ΔTのうち、質量の大なる重りについての前記誤差行列ΔThighloadと質量の小なる重りについての前記誤差行列ΔTlowloadとの差を前記複数の動作位置について合計した誤差和行列ΔRを求める誤差和行列計算手段と、
    前記誤差和行列ΔRの値が所定の閾値以下であるか否かを判断する判断手段と、
    前記誤差和行列ΔRの値が前記所定の閾値以下であれば、前記各回転関節軸の前記各ばね定数Kx,Ky,Kzの前記予測値を前記各ばね定数として同定する同定手段と、
    前記誤差和行列ΔRの値が前記所定の閾値を超えていた場合、前記各動作位置の前記各ばね定数のうちから同定すべきばね定数を選択する選択手段と、
    前記各動作位置において前記重り毎に計算により求めた前記測定点の少なくとも位置についての前記同次変換行列Tcと前記同定すべきばね定数の予測値の逆数の行列kvについてのヤコビ行列Jを求め、且つ、質量の大なる重りのヤコビ行列Jhighloadと質量の小なる重りのヤコビ行列Jlowloadとの差を前記各動作位置について合計したヤコビ和行列Aを求めるヤコビ和行列計算手段と、
    前記ヤコビ和行列Aの疑似逆行列と前記誤差和行列ΔRとの積から前記同定すべきばね定数の予測値についての逆数の微小変動行列Δkを求める微小変動行列計算手段と、
    前記同定すべきばね定数の予測値の逆数の行列kvに前記微小変動行列Δkを加算して前記同定すべきばね定数の予測値の逆数の行列kvを更新する予測値逆数行列更新手段と、
    前記同定すべきばね定数については前記更新した予測値の逆数の行列kv+1から求めたばね定数を用い、前記同定すべきばね定数以外のばね定数については当初の前記予測値を用いて前記複数の各動作位置について前記重り毎の前記測定点の少なくとも位置を再計算して当該再計算した前記測定点の少なくとも位置についての前記同次変換行列Tcを再度求める同時変換行列再計算手段と、
    前記複数の動作位置について、前記重り毎に前記計測手段により求めた前記測定点の前記同次変換行列Tmと前記再度計算により求めた前記測定点の前記同次変換行列Tcとから前記誤差行列ΔTを再度求め、且つ、再度前求めた記重り毎の前記誤差行列ΔTのうち、質量の大なる重りについての誤差行列ΔThighloadと質量の小なる重りについての誤差行列ΔTlowloadの差を前記複数の動作位置について合計した前記誤差和行列ΔRを再度求める誤差和行列再計算手段と、
    前記再度求めた誤差和行列ΔRの値が前記所定の閾値以下であるか否かを、前記再度求めた誤差和行列ΔRが所定の閾値以下となるまで繰り返して前記同定すべき各ばね定数を同定する繰り返し実行手段と
    を具備してなるロボットのばね定数同定装置。
JP2009286327A 2009-12-17 2009-12-17 ロボットのばね定数同定方法およびロボットのばね定数同定装置 Active JP5316396B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009286327A JP5316396B2 (ja) 2009-12-17 2009-12-17 ロボットのばね定数同定方法およびロボットのばね定数同定装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009286327A JP5316396B2 (ja) 2009-12-17 2009-12-17 ロボットのばね定数同定方法およびロボットのばね定数同定装置

Publications (2)

Publication Number Publication Date
JP2011125956A true JP2011125956A (ja) 2011-06-30
JP5316396B2 JP5316396B2 (ja) 2013-10-16

Family

ID=44289118

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009286327A Active JP5316396B2 (ja) 2009-12-17 2009-12-17 ロボットのばね定数同定方法およびロボットのばね定数同定装置

Country Status (1)

Country Link
JP (1) JP5316396B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014180726A (ja) * 2013-03-19 2014-09-29 Kobe Steel Ltd 多関節ロボットのバネ定数補正装置
DE102016008866A1 (de) 2015-07-27 2017-02-02 Fanuc Corporation Robotersteuervorrichtung mit Kompensation elastischer Deformation eines Stützkörpers
DE102016116811A1 (de) 2015-09-15 2017-03-16 Fanuc Corporation Auslenkungsmesssystem zum Messen der Auslenkung eines Gelenkroboters
JP2019093511A (ja) * 2017-11-27 2019-06-20 トヨタ自動車株式会社 剛性検出装置
CN114872938A (zh) * 2022-05-12 2022-08-09 上海交通大学 自生长柔性变刚度机械臂空间跨尺寸目标自动捕获控制方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05209805A (ja) * 1992-01-30 1993-08-20 Toshiba Corp ばね・質点系のパラメータ同定装置およびその方法
JPH09257634A (ja) * 1996-03-25 1997-10-03 Isuzu Motors Ltd 振動特性解析装置
JP2000148210A (ja) * 1998-11-12 2000-05-26 Toyota Central Res & Dev Lab Inc ゲイン算出装置
JP2001350741A (ja) * 2000-06-05 2001-12-21 Rikogaku Shinkokai 振動解析の方法および装置ならびにコンピュータ読み取り可能な記録媒体

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05209805A (ja) * 1992-01-30 1993-08-20 Toshiba Corp ばね・質点系のパラメータ同定装置およびその方法
JPH09257634A (ja) * 1996-03-25 1997-10-03 Isuzu Motors Ltd 振動特性解析装置
JP2000148210A (ja) * 1998-11-12 2000-05-26 Toyota Central Res & Dev Lab Inc ゲイン算出装置
JP2001350741A (ja) * 2000-06-05 2001-12-21 Rikogaku Shinkokai 振動解析の方法および装置ならびにコンピュータ読み取り可能な記録媒体

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014180726A (ja) * 2013-03-19 2014-09-29 Kobe Steel Ltd 多関節ロボットのバネ定数補正装置
DE102016008866A1 (de) 2015-07-27 2017-02-02 Fanuc Corporation Robotersteuervorrichtung mit Kompensation elastischer Deformation eines Stützkörpers
DE102016116811A1 (de) 2015-09-15 2017-03-16 Fanuc Corporation Auslenkungsmesssystem zum Messen der Auslenkung eines Gelenkroboters
US9956686B2 (en) 2015-09-15 2018-05-01 Fanuc Corporation Deflection measurement system for measuring deflection of articulated robot
DE102016116811B4 (de) 2015-09-15 2019-07-11 Fanuc Corporation Auslenkungsmesssystem zum Messen der Auslenkung eines Gelenkroboters
JP2019093511A (ja) * 2017-11-27 2019-06-20 トヨタ自動車株式会社 剛性検出装置
CN114872938A (zh) * 2022-05-12 2022-08-09 上海交通大学 自生长柔性变刚度机械臂空间跨尺寸目标自动捕获控制方法

Also Published As

Publication number Publication date
JP5316396B2 (ja) 2013-10-16

Similar Documents

Publication Publication Date Title
EP1936458B1 (en) Device, method, program and recording medium for robot offline programming
JP5618066B2 (ja) 力制御ロボットのキャリブレーション装置と方法
JP6226716B2 (ja) アーム型三次元測定機及びアーム型三次元測定機における撓み補正方法
US11161249B2 (en) Robot control apparatus and robot system
JP2021098268A (ja) 駆動装置、ロボット装置、物品の製造方法、制御方法、制御プログラム、記録媒体
JP5316396B2 (ja) ロボットのばね定数同定方法およびロボットのばね定数同定装置
JP2008522836A (ja) 運動学的ロボット・モデル・パラメータ決定によって多関節ロボットにおいて改善された精度を提供する方法及びシステム
JP5531996B2 (ja) 6軸ロボットの軸間オフセット検出方法
KR101713326B1 (ko) 머니퓰레이터를 작동시키기 위한 방법 및 장치
JP2010531238A (ja) 切断機用自在軸受装置の位置調整用装置および方法
JP2013184235A (ja) ロボットのキャリブレーション方法及びキャリブレーション装置
JP2014128845A (ja) ロボットシステム表示装置
CN104972465A (zh) 根据力而动作的机器人的机器人控制装置及机器人系统
KR101797122B1 (ko) 이동형 3차원 좌표 측정기(cmm)의 에러 측정 및 보상 방법
CN112368116A (zh) 附接到机器人臂的有效载荷的估计
JP2017056503A (ja) 多関節ロボットのたわみを計測するたわみ計測システム
JP5672173B2 (ja) 6軸ロボットの軸間オフセット検出方法
SE501263C2 (sv) Förfarande för kalibrering av rörelseaxlar hos en industrirobot
JP5378908B2 (ja) ロボットの精度調整方法およびロボット
JP5316395B2 (ja) ロボットのばね定数同定方法およびロボットのばね定数同定装置
JP5786550B2 (ja) 6軸ロボットの軸間オフセット検出方法
JP7256932B1 (ja) 教示装置
JP6091272B2 (ja) 多関節ロボットのバネ定数補正装置
JP6398204B2 (ja) ロボット装置の位置決め精度補正方法
JP2022084259A (ja) 情報処理装置、情報処理方法、ロボットシステム、測定システム、ロボットシステムを用いた物品の製造方法、制御プログラム及び記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120719

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130624

R150 Certificate of patent or registration of utility model

Ref document number: 5316396

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250