(58)【調査した分野】(Int.Cl.,DB名)
少なくとも振動を監視するセンサ(13)が取付けられた可動部を有するロボット(11)と、前記ロボット(11)の動作を制御する制御装置(12)とを具備するロボットシステム(10)であって、
前記制御装置(12)は、所定の動作を前記ロボット(11)に実行させることにより、前記センサ(13)の位置と向きを算出するセンサ座標系計算部(17)を備え、
前記センサ座標系計算部(17)は、所定の種類の動作パラメータの値をそれぞれ変更した複数の組合せの各々を順次用いて前記所定の動作を前記ロボット(11)に実行させることにより、前記複数の組合せの中から、前記センサ(13)の位置と向きを算出するのに最適な組合せを求める動作パラメータ最適化部(18)を備え、
前記動作パラメータ最適化部(18)は、
各々の前記組合せによって前記所定の動作を実行させたときに前記センサ(13)から出力された、前記振動を表す物理量のデータに基づいて、前記センサ(13)の位置と向きを算出し、算出された前記センサ(13)の位置および向きと前記所定の動作中の前記ロボット(11)の位置および姿勢とに基づき、前記センサ(13)上に働く前記物理量を計算し、
前記センサ(13)から出力された前記データと、前記センサ(13)上に働く前記物理量の計算値とに基づいて、前記複数の組合せのうちのどれが、前記センサ(13)の位置と向きの算出結果の精度が最も高くなる組合せであるかを判定するようにした、ロボットシステム。
前記所定の動作は、前記可動部に定義された3次元直交座標系におけるX軸、Y軸、Z軸のうちの少なくとも2つの軸方向の並進動作と、X軸回り、Y軸回り、Z軸回りのうちの少なくとも2つの軸回りの回転動作とからなる、請求項1から3のいずれか一項に記載のロボットシステム。
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかしながら、特許文献2に開示されたロボットにおいては、アーム部の先端に取付けられているツールの重量が大きいほど、さらにはアーム部の剛性が低いほど、ロボットの所定の動作中に加速度センサに加わる外乱が大きくなる。その結果、加速度センサの位置と向きを精度よく算出できないことがある。
【0009】
算出誤差が大きくなると、前述した学習制御による振動の低減効果が低くなり、場合によっては振動が発散してしまう危険性もある。さらに、特許文献2に開示された発明においては、加速度センサの位置と向きを自動的に算出した後に、算出結果に十分な精度があるかどうかを人の作業によって確認する必要がある。
【0010】
そこで本発明は、上述したような問題点に鑑み、ロボットの可動部に取付けられたセンサの位置と向きの算出結果の精度を向上させることができ、算出精度を確認する人の作業が不要となるロボットシステムを提供することを目的とする。
【課題を解決するための手段】
【0011】
本発明の第一態様によれば、少なくとも振動を監視するセンサが取付けられた可動部を有するロボットと、ロボットの動作を制御する制御装置とを具備するロボットシステムであって、
制御装置は、所定の動作をロボットに実行させることにより、センサの位置と向きを算出するセンサ座標系計算部を備え、
センサ座標系計算部は、所定の種類の動作パラメータの値をそれぞれ変更した複数の組合せの各々を順次用いて前記所定の動作をロボットに実行させることにより、複数の組合せの中から、センサの位置と向きを算出するのに最適な組合せを求める動作パラメータ最適化部を備える、ロボットシステムが提供される。
【0012】
本発明の第二態様によれば、上記の第一態様のロボットシステムであって、
上記の所定の種類の動作パラメータは、ロボットに対して制御装置が指令する速度および加速度である、ロボットシステムが提供される。
【0013】
本発明の第三態様によれば、上記の第一態様または第二態様のロボットシステムであって、上記の動作パラメータ最適化部は、
各々の組合せによって所定の動作を実行させたときにセンサから出力されたデータに基づいてセンサの位置と向きを算出し、算出されたセンサの位置および向きと所定の動作中のロボットの位置および姿勢とに基づき、センサ上に働く物理量を計算し、
センサから出力されたデータと、センサ上に働く物理量の計算値とに基づいて、複数の組合せのうちのどれが、センサの位置と向きの算出結果の精度が最も高くなる組合せであるかを判定するようにした、ロボットシステムが提供される。
【0014】
本発明の第四態様によれば、上記の第一態様から第三態様のいずれかのロボットシステムであって、
上記の動作パラメータ最適化部は、
各々の組合せによって所定の動作を実行させたときにセンサから出力されたデータに基づいてセンサの位置と向きを算出し、算出されたセンサの位置および向きと所定の動作中のロボットの位置および姿勢とに基づき、センサ上に働く物理量を計算し、
センサから出力されたデータと、センサ上に働く物理量の計算値とに基づいて、複数の組合せのうちのどれが、センサの位置と向きの算出結果の精度が最も高くなる組合せであるかを判定し、
センサの位置と向きの算出精度が十分であるか否かを判定し、その算出精度が不十分であると判定した場合にはその旨を外部に通知するようにした、ロボットシステムが提供される。
【0015】
本発明の第五態様によれば、上記の第一態様から第四態様のいずれかのロボットシステムであって、
上記の所定の動作は、可動部に定義された3次元直交座標系におけるX軸、Y軸、Z軸のうちの少なくとも2つの軸方向の並進動作と、X軸回り、Y軸回り、Z軸回りのうちの少なくとも2つの軸回りの回転動作とからなる、ロボットシステムが提供される。
【0016】
本発明の第六態様によれば、上記の第一態様から第五態様のいずれかのロボットシステムであって、
上記のセンサは、加速度センサ、ジャイロセンサ、慣性センサ、力センサ、レーザトラッカ、カメラ、またはモーションキャプチャ装置である、ロボットシステムが提供される。
【発明の効果】
【0017】
本発明によれば、所定の種類の動作パラメータの値をそれぞれ変更した複数の組合せを順次用いて、所定の動作をロボットに実行させることにより、センサの位置と向きを前述の組合せ毎に算出するようにしている。このことにより、上記の複数の組合せの中から、センサに加わる外乱の影響が最小になる動作パラメータの組合せを求めることができるため、センサの位置と向きの算出結果の精度が向上することとなる。その結果、前述した学習制御による振動の低減効果を良好に得ることができる。
【0018】
また、本発明によれば、センサの位置と向きの算出結果の精度が十分であるかどうかを自動的に判定することができるため、算出精度を確認する人の作業が不要になる。
【0019】
添付図面に示される本発明の典型的な実施形態の詳細な説明から、本発明のこれらの目的、特徴および利点ならびに他の目的、特徴および利点がさらに明確になるであろう。
【発明を実施するための形態】
【0021】
次に、本発明の実施形態について図面を参照して説明する。以下の図面において、同じ部材には同じ参照符号が付けられている。そして、異なる図面において同じ参照符号が付されたものは同じ機能を有する構成要素であることを意味するものとする。また、理解を容易にするために、これらの図面は縮尺を適宜変更している。
【0022】
図1は、本発明の一実施形態のロボットシステムの構成を示したブロック図である。
図2は、
図1に示された多関節ロボットの構成要素と座標系とを説明するための図である。
【0023】
図1に示されるように、本実施形態のロボットシステム10は、ロボット11と、ロボット11を制御するロボット制御装置12とを備える。
【0024】
ロボット11は例えば垂直多関節ロボットであり、多関節ロボットの位置制御の対象となる可動部の振動を計測するために当該可動部に加速度センサ13が取付けられている。本実施形態においては、
図1に示されるようにロボット11のアーム部11aの先端部にツール14がブラケット15を介して装着されていて、そのツール14に加速度センサ13が取付けられている。
【0025】
また、ツール14としてはハンド部、ボルト締め具、溶接ガンなどを使用することができる。さらに、加速度センサ13としては、3軸加速度センサを使用することができる。
【0026】
さらに、ロボット11とロボット制御装置12とがケーブル16を介して互いに接続されている。加速度センサ13もまた、ケーブル(図示せず)によってロボット制御装置12と接続されている。
【0027】
また、前述したロボット11は、
図2に示されているように、六つの関節軸11b1〜11b6と、関節軸11b1〜11b6の各々を回転駆動するサーボモータ(図示せず)とを具備している。各サーボモータは、ロボット制御装置12からの動作指令により制御される。
【0028】
さらに、ロボット11は、空間上に固定されたワールド座標系21と、ツール14が取付けられるアーム部11aの先端部に設定されたメカニカルインタフェイス座標系22とを備える典型的なロボットである。ワールド座標系21とメカニカルインタフェイス座標系22とはそれぞれ3次元直交座標系である。
【0029】
なお、ワールド座標系21におけるXYZ軸の方向、およびメカニカルインタフェイス座標系22におけるXYZ軸の方向は、
図2中に拡大図によって示されている。ワールド座標系21においては、
図2の右方向に+X軸、
図2の上方向に+Z軸、
図2の紙面に対して奥行方向に+Y軸をそれぞれ定義している。一方、メカニカルインタフェイス座標系22においては、
図2の右方向に+X軸、
図2の下方向に+Z軸、
図2の紙面に対して手前方向に+Y軸をそれぞれ定義している。
【0030】
さらに、本実施形態のロボットシステム10においても、
図1に示されるようなアーム部11aの先端のツール14に取付けられた加速度センサ13によってロボット11の動作中の振動を計測し、学習制御を行うことにより当該振動を低減させるようにする。そして、そのような学習制御を行うためには、ツール14に取付けられた加速度センサ13の位置と向きを求めるキャリブレーションを実施しておく必要がある。
【0031】
そこで、本実施形態のロボット制御装置12は、所定の動作をロボット11に実行させることにより、前述のツール14に取付けられた加速度センサ13の位置と向きを自動的に算出する機能を備える。
【0032】
具体的には、ロボット制御装置12は、
図1に示されるようにセンサ座標系計算部17を備える。センサ座標系計算部17は、所定の動作をロボット11に実行させて、ツール14に取付けられた加速度センサ13の位置と向きを算出する。
【0033】
より具体的には、前述のセンサ座標系計算部17は、
図1に示されるように動作パラメータ最適化部18を備える。動作パラメータ最適化部18は、所定の種類の動作パラメータの値をそれぞれ変更した複数の組合せ(以下、動作パラメータセットと呼ぶ。)の各々を順次用いて、前述の所定の動作をロボット11に実行させる。それにより、動作パラメータ最適化部18は、加速度センサ13の位置と向きを算出するのに最適な動作パラメータセットを求める。なお、前述の動作パラメータセットの具体例については後述する。
【0034】
前述の動作パラメータ最適化部18によりロボット11に実行させる所定の動作は、次のような動作とする。
【0035】
すなわち、本実施形態においては、ロボット11の任意の姿勢を基準として、加速度センサ13が取付けられたツール14をメカニカルインタフェイス座標系22のX軸、Y軸およびZ軸の方向にそれぞれ並進動作させる。各並進動作での移動量は100mmとする。その後、加速度センサ13が取付けられたツール14をメカニカルインタフェイス座標系22のX軸回り、Y軸回りおよびZ軸回りの方向にそれぞれ回転動作させる。各回転動作での回転角度は15度とする。
【0036】
前述した所定の動作をロボット11に実行させるために、K個(Kは自然数)の動作パラメータセットがロボット制御装置12に予め記憶されている。これらの動作パラメータセットはロボット制御装置12外から書換えられることが好ましい。
【0037】
本実施形態においては、各動作パラメータセットを構成している所定の種類の動作パラメータは、ロボット11に対してロボット制御装置12が指令する速度および加速度である。また、本実施形態においては、各々の動作パラメータセットは、速度と加速度の値をそれぞれ変更した組合せとする。なお、各々の動作パラメータセットにおける速度と加速度の値はそれぞれロボット11の最大速度と最大加速度に対する割合によって定められている。例えば、速度と加速度の組合せ(速度[%]、加速度[%])としては、(30、100)、(50、100)、(70、100)、(80、80)、(100、50)が事前に用意されている。つまり、前述の100mmの並進動作を行う場合、移動体を始点から所定の割合の加速度で増速移動させてから、所定の割合の速度で定速動作させ、その後所定の割合の加速度で減速動作して終点に到達させるようにする。
【0038】
次に、前述したセンサ座標系計算部17および動作パラメータ最適化部18によって行われる処理について具体的に説明する。
【0039】
図3は、前述したセンサ座標系計算部17および動作パラメータ最適化部18によって行われる処理を示すフローチャートである。
【0040】
動作パラメータ最適化部18は、複数の動作パラメータセット、例えば上述のような5個の動作パラメータセットの各々を用いて、前述した所定の動作をロボット11に実行させる。本実施形態においては、
図3に示されるステップS1〜ステップS5から分かるように、K個(本例の場合K=5)の動作パラメータセットを順番に用いて前述の所定の動作を行う。
【0041】
さらに、動作パラメータ最適化部18は、各動作パラメータセットを用いて前述の所定の動作を行う度に、その時の動作データから加速度センサ13の位置と向きを算出する(ステップS2およびステップS3)。そのような算出方法は以下の通りである。
【0042】
初めに加速度センサ13の向きを算出し、それから加速度センサ13の位置を算出する。
【0043】
まず、加速度センサ13の向きの算出においては、前述の所定の動作を開始する前の加速度データと、前述の所定の動作のうちの並進動作の際に得られる加速度データを使用する。前述の所定の動作を開始する前の1秒間の加速度データを取得して、その平均値を記録する。並進動作については、メカニカルインタフェイス座標系22のX軸、Y軸およびZ軸のそれぞれの方向へツール14を並進動作させ、各々の並進動作中の加速度データを一定時間毎に順次記録する。但し、この記録される加速度データは、加速度センサ13により検出された生の加速度データから前述の所定の動作を開始する前の加速度データの平均値を差引き、さらにローパスフィルタによってノイズを除去した後のデータとする。後述の2回積分によって加速度データ上のノイズが増大してしまうのを防ぐためである。なお、当該データは、ロボット制御装置12内に設けられた記憶部(図示せず)または外部記憶装置などに記録することが好ましい。
【0044】
そして、前述のように一定時間毎に記録された時系列の加速度データを用いて各時刻の加速度データを2回積分し、それらの積分結果を合計することにより、並進動作したときの加速度センサ13の3次元の移動量を求める。このような加速度センサ13の3次元の移動量を、メカニカルインタフェイス座標系22のX軸、Y軸およびZ軸のそれぞれの方向の並進動作ごとに求める。
【0045】
続いて、前述したX軸方向の並進動作について、加速度センサ13の移動方向を表す単位ベクトル
【数1】
を計算する。その計算式は次式(1)とする。
【数2】
【0046】
なお、式(1)中の(x
xi,y
xi,z
xi)は、前述のように加速度データの2回積分によって求められた加速度センサ13の3次元の移動量を座標値として表したものである。また、各座標値の添え字のxはX軸方向の並進動作であることを表す。さらに添え字のiは、K個の動作パラメータセットのうちのi番目(i←1〜K)の動作パラメータセットを用いた場合であることを表す。なお、上記の式(1)から分かるように(x
xi,y
xi,z
xi)の絶対値が分母にあるため、ベクトル
【数3】
は規格化されている。
【0047】
さらに、前述したY軸方向の並進動作およびZ軸方向の並進動作についても、それぞれ、加速度センサ13の移動方向を表す単位ベクトル
【数4】
を計算する。それらの計算式は、次の式(2)および式(3)とする。
【0049】
そして、上記の式(1)〜式(3)によって得られる3つの単位ベクトルから、加速度センサ13の向きを表す回転行列Rは以下の式(4)のように求められる。
【数6】
【0050】
なお、前述のように回転行列RをXYZ軸の3つの軸方向の並進動作から求めているが、3つの軸方向のうちの少なくとも2つの軸方向の並進動作から求めることもできる。
【0052】
つまり、上記の式(5)のように、
【数8】
と
【数9】
の外積から
【数10】
を求めることができる。このため、本実施形態においては、前述の回転行列Rを2つの軸方向の並進動作から求めてもよい。
【0053】
以上のようにして加速度センサ13の向きが算出される。勿論、このようなセンサ向きの算出は前述したK個の動作パラメータセットの全てに対して実施される。
【0054】
次に、加速度センサ13の位置を算出する。
加速度センサ13の位置の算出においては、前述の所定の動作のうちの回転動作の際に得られる加速度データを使用する。そのため、メカニカルインタフェイス座標系22のX軸回り、Y軸回りおよびZ軸回りのそれぞれの方向へのツール14の回転動作について、各々の回転動作中の加速度データを一定時間毎に順次記録する。但し、この記録される加速度データは、加速度センサ13により検出された生の加速度データから重力加速度を、上記の式(4)により求められた加速度センサ13の向きを考慮して差引いた後のデータとする。なお、当該データは、ロボット制御装置12に設けられた記憶部(図示せず)または外部記憶装置などに記録することが好ましい。
【0055】
そして、前述のように一定時間毎に記録された時系列の加速度データを用いて各時刻の加速度データを2回積分し、それらの積分結果を合計することにより、回転動作したときの加速度センサ13の回転変位量を求める。
【0056】
このような加速度センサ13の回転変位量を、メカニカルインタフェイス座標系22のX軸回り、Y軸回りおよびZ軸回りのそれぞれの方向の回転動作ごとに求める。
【0057】
そして、X軸回りの加速度センサ13の回転変位量に基づいて加速度センサ13の位置のY成分とZ成分を求める。また、Y軸回りの加速度センサ13の回転変位量に基づいて加速度センサ13の位置のX成分とZ成分を求める。さらに、Z軸回りの加速度センサ13の回転変位量に基づいて加速度センサ13の位置のX成分とY成分を求める。
【0058】
ここで、代表して、前述したX軸回りの回転動作の場合について詳述する。
図4は、加速度センサ13がメカニカルインタフェイス座標系22のX軸回りに15度回転したときの態様を模式的に示した図である。
図4において、符号Aが回転前の加速度センサ13の位置を指しており、符号Bが回転後の加速度センサ13の位置を指している。また、
図5は、
図4に示された態様をメカニカルインタフェイス座標系22のYZ面によって示した図である。
【0059】
図5に示されるように、メカニカルインタフェイス座標系での加速度センサ13の位置Aを(Y
0,Z
0)として、加速度センサ13をX軸回りに15度[deg]回転させたとき、加速度センサ13が(dY,dZ)の変位で位置Bに移動したとする。この場合、位置Aを表した座標値(Y
0,Z
0)と、変位を表した座標値(dY,dZ)との間には、以下の関係式が成り立つ。
【0061】
上記の式(6)中の(dY,dZ)は、前述したように加速度データの2回積分によって求められたX軸回りの加速度センサ13の回転変位量であり、座標値として表したものである。したがって、既に求められているdYとdZのそれぞれの値を上記の式(6)に代入することにより、(Y
0,Z
0)の座標値が算出される。以上のように、前述したX軸回りの回転動作により加速度センサ13の位置のY成分とZ成分を求めることができる。
【0062】
また、このような算出方法により、前述したY軸回りの回転動作およびZ軸回りの回転動作についても、それぞれ、回転前の加速度センサ13の2次元の位置を求めることができる。つまり、前述したY軸回りの回転動作により加速度センサ13の位置のX成分とZ成分を求めることができる。さらに、前述したZ軸回りの加速度センサ13の回転動作により加速度センサ13の位置のX成分とY成分を求めることができる。
【0063】
以上のように、3つの軸回りの回転動作により加速度センサ13の位置のX成分、Y成分、およびZ成分がそれぞれ2個ずつ求められる。本実施形態においては、2個のX成分、2個のY成分、および2個のZ成分をそれぞれ平均化することにより、加速度センサ13の3次元の位置を算出することとする。
【0064】
なお、上述したとおり、加速度センサ13の3次元の位置をXYZ軸の3つの軸回りの回転動作から求めているが、3つの軸回りのうちの少なくとも2つの軸回りの回転動作から求めることもできる。
【0065】
つまり、前述のX軸回りの回転動作により加速度センサ13の位置のY成分とZ成分が求まり、前述のY軸回りの回転動作により加速度センサ13の位置のX成分とZ成分が求まる。したがって、加速度センサ13のZ成分の算出位置については、X軸回りとY軸回りの回転動作から求まる2個のZ成分を平均化して求めることができる。そして、加速度センサ13のX成分の算出位置については前述のY軸回りの回転動作から求まるX成分とし、加速度センサ13のY成分の算出位置については前述のX軸回りの回転動作から求まるY成分とすることができる。
【0066】
再び
図3を参照すると、前述のように加速度センサ13の位置と向きを算出したステップS3の後、ステップS4において、番号iを一つ繰上げる。なお、本実施形態においては、K個(本例の場合は5個)の動作パラメータセットには連続番号が順次付けられており、前述の番号iに対応する連続番号のパラメータセットが使用されることとなる。
【0067】
さらに、ステップS5において、前述したK個の動作パラメータセットの全てについて加速度センサ13の向きと位置の算出が終了したと判断した場合、ステップS6に移行する。ステップS6においては、前述の5個の動作パラメータセットのうちのどれが、加速度センサ13の位置と向きを求めるのに最適な動作パラメータセットであるのかを判定する。
【0068】
具体的には、動作パラメータ最適化部18は、以下のように最適な動作パラメータセットの判定を行う。
【0069】
まず、所定の動作パラメータセットを用いて算出された加速度センサ13の位置と向きと、前述した所定の動作中のロボット11の位置および姿勢とに基づき、一定時間毎に加速度センサ13上に働く物理量、すなわち加速度
【数12】
の絶対値を順次計算する。ここで、絶対値とはXYZ3成分の二乗和の平方根である。
【0070】
具体的には、上記の加速度は、算出された加速度センサ13の位置と向きを基準として、前述した所定の動作における一定時間毎のロボット11のワールド座標系での位置および姿勢から、各時刻の加速度センサ13の位置を順次求め、2回微分することにより算出される。なお、各加速度を算出する時刻については、前述の所定の動作を実行した際に加速度センサ13より取得した加速度データの記録時刻と同期させている。
【0071】
このような加速度の算出は、前述した5個の動作パラメータセットの各々の場合について行われる。
【0072】
続いて、各々の動作パラメータセットについて、前述のように算出された加速度
【数13】
の標準偏差Sを順次求める。
【数14】
【0073】
また、前述した加速度の標準偏差Sは、以下のように、前述の所定の動作中における加速度センサ13の出力値
【数15】
から求めても良い。
【数16】
【0074】
あるいは、前述した加速度の標準偏差Sは、以下のように、最大値と最小値の差としても良い。
【数17】
【0075】
上式のmaxの項は各時刻の加速度のうちの最大値、minの項は各時刻の加速度のうちの最小値を表している。
【0076】
なお、
図6は、前述した加速度
【数18】
のそれぞれの時間変化の一例を表している。
【0077】
次に、前述のように算出された加速度
【数19】
の絶対値、例えば
図6の曲線Pにより示される加速度データと、前述の所定の動作中における加速度センサ13の出力値
【数20】
の絶対値、例えば
図6の曲線Qにより示される加速度データとの差のノルムNを以下のように求める。
【数21】
上式のnは時系列のデータ数、すなわち一定時間毎に記録および算出された加速度データの数を表している。
【0078】
なお、
図7は、前述した加速度
【数22】
の絶対値と加速度
【数23】
の絶対値との差の時間変化の一例を表している。
【0079】
ここで、前述した加速度の標準偏差Sが大きいほど、加速度センサ13の位置と向きの算出に使用される加速度データ(
図6参照)のばらつきが大きくなる。このことは、加速度センサ13の位置と向きを求めるための所定の動作が高速であることを意味するため、加速度センサ13の位置と向きを精度良く求められる条件の一つとなる。
【0080】
また、前述したノルムNが小さいほど、前述のように算出された加速度
【数24】
の絶対値と、前述の所定の動作中の加速度センサ13の出力値
【数25】
の絶対値との差(
図7参照)が小さくなる。つまり、前述の所定の動作中に加速度センサ13に加わる外乱の影響が小さくなる。このため、前述のノルムNが小さいことも、加速度センサ13の位置と向きを精度良く求められる条件の一つとなる。
【0081】
以上の事より、前述の標準偏差Sが大きく且つ前述のノルムNが小さい条件が、加速度センサ13の位置と向きを精度良く算出できる条件である。このため、本実施形態においては、上記のSとNの比であるS/Nの値を、前述した5個の動作パラメータセットの各々の場合について順次算出することとする。
【0082】
そして、S/N値が大きいほど加速度センサ13の位置と向きの算出精度が高いことを意味するため、動作パラメータ最適化部18は、S/N値の最も大きい動作パラメータセットを最適な動作パラメータセットと判定する(
図3のステップS6)。
【0083】
次に、
図3に示されるように、ステップS7において、動作パラメータ最適化部18は、加速度センサ13の位置と向きの算出結果の精度が十分であるかどうかを判定する。
【0084】
具体的には、前述のステップS6の判定結果を示したS/N値が予め定められた閾値よりも大きい場合には、加速度センサ13の位置と向きの算出精度が十分であると判定する。この場合には、ステップS8のように正常終了となり、動作パラメータ最適化部18は加速度センサ13の位置と向きの算出結果を外部に出力する。なお、動作パラメータ最適化部18は前述の閾値を設定する設定部(図示せず)を備え、前述の閾値を外部から書換えられることが好ましい。
【0085】
一方、前述のステップS6の判定結果を示したS/N値が前述の閾値よりも小さい場合には、加速度センサ13の位置と向きの算出精度が不十分であると判定する。この場合には、ステップS9のように異常終了となり、動作パラメータ最適化部18は、算出精度が不十分であることを警告表示や警報音などによって外部に通知する。
【0086】
以上に説明したように、本実施形態のロボットシステム10によれば、前述した複数の動作パラメータセットを順次用いて、所定の動作をロボットに実行させることにより、センサの位置と向きを前述の動作パラメータセット毎に算出するようにしている。このことにより、複数の動作パラメータセットの中から、加速度センサ13に加わる外乱の影響が最小になる最適な動作パラメータセットを求めることができるので、加速度センサ13の位置と向きの算出結果の精度が向上することとなる。その結果、前述した学習制御による振動の低減効果を良好に得ることができる。
【0087】
また、本実施形態のロボットシステム10によれば、加速度センサ13の位置と向きの算出結果の精度が十分であるかどうかを自動的に判定することもできるため、算出精度を確認する人の作業が不要になる。
【0088】
なお、本発明においては、ロボット11の位置制御の対象となる部位に取付けられるセンサは加速度センサ13に限定されない。つまり、上述の実施形態においては、加速度センサ13がロボット11のアーム部11aの先端のツール14に取付けられている。しかし、本発明においては、取付けられるセンサは、ロボット11の位置制御の対象となる部位の振動を監視できるセンサであればよい。そのようなセンサとしては、例えば、加速度センサ、ジャイロセンサ、慣性センサ、力センサ、レーザトラッカ、カメラ、またはモーションキャプチャ装置などの、位置や変位を計測できる装置を適用しうる。また、これらの装置を適用した場合、計測されたデータを基に計算機により加速度を算出すればよい。
【0089】
以上では典型的な実施形態を用いて本発明を説明したが、当業者であれば、本発明の範囲から逸脱することなしに、上述の実施形態の形状、構造や配置などに変更および種々の他の変更、省略、追加を行うことができるのを理解できるであろう。