(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-12-01
(45)【発行日】2022-12-09
(54)【発明の名称】ロボットの動作完了時刻の判定装置及び判定方法
(51)【国際特許分類】
B25J 9/10 20060101AFI20221202BHJP
H01L 21/68 20060101ALI20221202BHJP
H01L 21/677 20060101ALI20221202BHJP
【FI】
B25J9/10 A
H01L21/68 F
H01L21/68 A
(21)【出願番号】P 2018191367
(22)【出願日】2018-10-10
【審査請求日】2021-10-04
(73)【特許権者】
【識別番号】000002233
【氏名又は名称】日本電産サンキョー株式会社
(74)【代理人】
【識別番号】100123788
【氏名又は名称】宮崎 昭夫
(74)【代理人】
【識別番号】100127454
【氏名又は名称】緒方 雅昭
(72)【発明者】
【氏名】花岡 正志
【審査官】杉山 悟史
(56)【参考文献】
【文献】特開2013-185847(JP,A)
【文献】特開2006-215807(JP,A)
【文献】特開2012-117428(JP,A)
【文献】特表2003-517167(JP,A)
【文献】特開平4-260102(JP,A)
【文献】特開平1-173116(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 1/00 ~ 21/02
H01L 21/68
(57)【特許請求の範囲】
【請求項1】
指令された位置へのロボットの移動動作の動作完了時刻を判定する判定装置であって、
前記ロボットのアームまたはハンドの速度または加速度を検出する動作検出手段と、
前記動作検出手段からの信号に含まれる振動成分を除去して平滑化データを生成するフィルタ手段と、
前記動作検出手段により前記ロボットが減速中であることを検出した後に前記平滑化データの値が最後に所定の閾値範囲外の値から前記所定の閾値範囲内の値となったとき以降の前記平滑化データの値の平均値を求め、前記平滑化データから前記平均値を差し引くことによりオフセットとドリフトの補正を行う演算部と、
を備え、前記フィルタ手段は、位相遅れを有しないフィルタによって構成されている、判定装置。
【請求項2】
前記演算部は、前記動作完了時刻であると推定される時刻の近傍において、前記オフセットとドリフトの補正を行った前記平滑化データのうち前記動作完了時刻であると推定される時刻以前の期間の前記平滑化データを近似対象平滑化データとして時刻の関数で近似し、該関数の値がゼロとなる時刻を動作完了時刻として判定する、請求項
1に記載の判定装置。
【請求項3】
指令された位置へのロボットの移動動作の動作完了時刻を判定する判定装置であって、 前記ロボットのアームまたはハンドの速度または加速度を検出する動作検出手段と、
前記動作検出手段からの信号に含まれる振動成分を除去して平滑化データを生成するフィルタ手段と、
を備え、
前記フィルタ手段は、位相遅れを有しないフィルタによって構成され、
前記動作検出手段により前記ロボットが減速中であることを検出した後に前記平滑化データの値が最後に所定の閾値範囲外の値から前記所定の閾値範囲内の値となったときを基準時として、前記基準時以降の前記平滑化データを定数値で近似し、前記基準時以前の前記平滑化データを近似対象平滑化データとして時刻の関数で近似し、該関数の値が前記定数値となる時刻を動作完了時刻として判定する
、判定装置。
【請求項4】
前記関数は1次関数であり、前記近似対象平滑化データにおいてゼロ加速度検出用の閾値に対応する点と任意定数を用いて決定される1つの点とを選択して、選択された点を前記1次関数が表す直線が通過するように前記1次関数が決定される、請求項
2または
3に記載の判定装置。
【請求項5】
前記関数は2次関数であり、前記近似対象平滑化データにおいてゼロ加速度検出用の閾値に対応する点と前記ロボットの減速での極値に対応する点とを選択し、前記2次関数が表す放物線が前記閾値に対応する点と前記極値に対応する点とを通るように前記2次関数が決定される、請求項
2または
3に記載の判定装置。
【請求項6】
前記動作検出手段は、前記アームまたは前記ハンドに取り付けられた加速度センサである、請求項1
乃至5のいずれか1項に記載の判定装置。
【請求項7】
前記位相遅れを有しないフィルタは中心化移動平均フィルタである、請求項1乃至
6のいずれか1項に記載の判定装置。
【請求項8】
計算または測定により取得された前記振動成分の振動周波数の逆数が前記中心化移動平均フィルタの移動平均時間として設定されている、請求項
7に記載の判定装置。
【請求項9】
指令された位置へのロボットの移動動作の動作完了時刻を判定する判定方法であって、
前記ロボットのアームまたはハンドの速度または加速度を示す信号を検出する工程と、
前記信号に含まれる振動成分を除去して平滑化データを生成するフィルタ処理を行う工程と、
前記ロボットが減速中であることを検出した後に前記平滑化データの値が最後に所定の閾値範囲外の値から前記所定の閾値範囲内の値となったとき以降の前記平滑化データの値の平均値を求め、前記平滑化データの値から前記平均値を差し引くことによりオフセットとドリフトの補正を行う工程と、
を備え、前記フィルタ処理は、位相遅れを有しないフィルタによって実行される、判定方法。
【請求項10】
前記動作完了時刻であると推定される時刻の近傍において、前記オフセットとドリフトの補正を行った前記平滑化データのうち前記動作完了時刻であると推定される時刻以前の期間の前記平滑化データを時刻の関数で近似し、該関数の値がゼロとなる時刻を動作完了時刻として判定する工程をさらに有する、請求項
9に記載の判定方法。
【請求項11】
指令された位置へのロボットの移動動作の動作完了時刻を判定する判定方法であって、
前記ロボットのアームまたはハンドの速度または加速度を示す信号を検出する工程と、
前記信号に含まれる振動成分を除去して平滑化データを生成するフィルタ処理を行う工程と、
を備え、
前記フィルタ処理は、位相遅れを有しないフィルタによって実行され、
前記ロボットが減速中であることを検出した後に前記平滑化データの値が最後に所定の閾値範囲外の値から前記所定の閾値範囲内の値となったときを基準時として、前記基準時以降の前記平滑化データを定数値で近似し、前記基準時以前の前記平滑化データを時刻の関数で近似し、該関数の値が前記定数値となる時刻を動作完了時刻として判定する
、判定方法。
【請求項12】
前記信号は、前記アームまたは前記ハンドに設けられた加速度センサからの前記加速度を示す信号である、請求項
9乃至11のいずれか1項に記載の判定方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、アームを備えるロボットがその指令された位置に到達した時刻である動作完了時刻を判定する装置及び方法に関する。
【背景技術】
【0002】
例えば液晶パネルの製造に用いられるガラス基板等のワークは、アームの先端にハンドを備えたロボットを用いて、ハンドの上に保持されることによって搬送される。この搬送の際、種々の要因でハンドやアームが振動することがある。特に水平多関節ロボットの場合、アームを伸展することによってワークを搬送して搬送先の所定位置に配置するので、アームを搬送先に向けて伸展させたのちの残留振動が収束するまでの時間が長いと、ワークを所定位置に配置する際に位置ずれが生じてしまう、あるいは待機時間が長くなる分、作業効率を低下させてしまう懸念がある。そのため、ロボットにおけるアームまたはハンドの残留振動の収束時間についての評価が行われる。残留振動の収束時間の判定は、例えば、ハンドに加速度センサを取り付け、ロボットに対する指令に応じたアームまたはハンドの伸展の動作が完了してから規定時間後のハンドの振動振幅を計測することによって行われる。アームまたはハンドの伸展の動作とは、ワークを搬送位置に位置決めするためにアームまたはハンドを駆動する動作のことである。そしてロボットの動作完了時刻とは、ワークを搬送位置に位置付けるためにアームまたはハンドを駆動する動作が完了した時刻のことである。
【0003】
残留振動の収束時間の評価を行うためには、ロボットの動作完了時刻を正確に判定できることが必要である。ロボットの動作完了時刻の判定では、例えば、アームやハンドに取り付けた加速度センサからのデータをメモリに蓄積し、蓄積したデータのうちアームやハンドの進行方向成分のデータに着目し、振動や雑音が重畳しているこのデータの包絡線の中心線の値がゼロとなった時刻を動作完了時刻としている。
【0004】
本発明に関連するものとして、特許文献1は、ロボットのテスト運転を行って残留振動の周波数と移動時間別の残留振動の大きさとを測定し、振動の大きさが最小となる最短の移動時間を求めてロボットの位置決めを行うことを開示している。特許文献2は、ロボットの手先に加速度計を設け、加速度計の出力をオシロスコープで観測してロボットの実加速度を求め、ロボットの動作時間を予測することを開示している。特許文献3は、アームのたわみが無視できないときの位置決め方法として、アームの先端に加速度センサを設け、加速度センサの出力をローパスフィルタで処理し、ローパスフィルタで処理された後の加速度センサの出力値に基づいてアームのたわみ量を演算し、演算されたたわみ量に基づいてアームを駆動することを開示している。
【先行技術文献】
【特許文献】
【0005】
【文献】特表2003-517167号公報
【文献】特開平4-260102号公報
【文献】特開平1-173116号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
ロボットの動作完了時刻を求める従来の方法は、アームまたはハンドに取り付けられた加速度データを蓄積して加速度波形として、出力された加速度波形に基づいて目視によって動作完了時刻を求めている。加速度波形には振動などが重畳しており、これらの影響によって、目視で動作完了時刻を決定した場合には人為的な誤差やばらつきが発生する。その結果、振幅の変化を正確に測定できたとしても残留振動の起点である動作完了時刻を正確に決定できていないことになるので、残留振動の収束時間を正しく評価できなくなる。また、目視での判定であるので作業効率もよくない。
【0007】
本発明の目的は、人為的な誤差の要因を排除し、高い作業効率でロボットの動作完了時刻を正確に決定することができる、ロボットの動作完了時刻の判定装置及び判定方法を提供することにある。
【課題を解決するための手段】
【0008】
本発明の判定装置は、指令された位置へのロボットの移動動作の動作完了時刻を判定する判定装置であって、ロボットのアームまたはハンドの速度または加速度を検出する動作検出手段と、動作検出手段からの信号に含まれる振動成分を除去して平滑化データを生成するフィルタ手段と、を備え、フィルタ手段は、位相遅れを有しないフィルタによって構成されている。
【0009】
本発明の判定装置では、速度または加速度を検出した信号から、位相遅れを有しないフィルタを用いて振動成分を除去するので、位相遅れの補償などを行うことなく、平滑化データによって表される波形から動作完了時刻を容易に識別することができる。なお、以下の説明において、ロボットのアームまたはハンドの減速のことを「ロボットの減速」と呼ぶ。加速度を検出した信号からはその符号により、速度を検出した信号からはその信号を微分して符号を判定することにより、ロボットが減速中であるか否かを判定することができる。
【0010】
本発明の判定装置では、動作検出手段は、ロボットのアームまたはハンドに取り付けられた加速度センサとすることができる。加速度センサによって加速度を検出する構成とすることにより、大掛かりな装置などを必要とせずに簡単に動作完了時刻を判別できるようになる。
【0011】
本発明の判定装置のうちの第1の判定装置は、動作検出手段によりロボットが減速中であることを検出した後に平滑化データの値が最後に所定の閾値範囲外の値からこの閾値範囲内の値となったとき以降の平滑化データの値の平均値を求め、平滑化データの値から平均値を差し引くことによりオフセットとドリフトの補正を行う演算部を有する。このような演算部を設けることにより、速度または加速度の検出におけるオフセットとドリフトの影響を除去できて、より正確な動作完了時刻を得ることができる。
【0012】
第1の判定装置においては、演算部は、動作完了時刻であると推定される時刻の近傍において、オフセットとドリフトの補正を行った平滑化データのうち動作完了時刻であると推定される時刻以前の期間の平滑化データを近似対象平滑化データとして時刻の関数で近似し、その関数の値がゼロとなる時刻を動作完了時刻として判定することが好ましい。関数近似の手法を採用することにより、平滑化データに残存する振動成分の影響を除去してさらに正確に動作完了時刻を決定することができる。さらに本発明の判定装置では、演算部を設けずにオフセットとドリフトの補正を明示的に行わない場合(第2の判定装置の場合)においても、関数近似の手法を採用することができる。オフセットとドリフトの補正を明示的に行わない場合には、動作検出手段によりロボットが減速中であることを検出した後に平滑化データの値が最後に所定の閾値範囲外の値からこの閾値範囲内の値となったときを基準時として、基準時以降の平滑化データを定数値で近似し、基準時以前の平滑化データを近似対象平滑化データとして時刻の関数で近似し、この関数の値が、基準時以降の平滑化データを近似する定数値となる時刻を動作完了時刻として判定する。
【0013】
関数近似の関数としては、例えば1次関数や2次関数がある。1次関数で近似するときは、近似対象平滑化データにおいてゼロ加速度検出用の閾値に対応する点と任意定数を用いて決定される1つの点とを選択して、1次関数が表す直線がこれらの2点を通るように1次関数を決定するようにすることができる。1次関数での近似には、演算量が少なくてすみ、また任意定数の選択において経験や実験結果を反映させることで、より高い精度で動作完了時刻を決定できるという利点がある。一方、2次関数で近似するときは、近似対象平滑化データにおいて上述のゼロ加速度検出用の閾値に対応する点とロボットの減速での極値に対応する点とを2次関数が表す放物線が通るようにして、2次関数を決定することができる。2次関数での近似では、任意定数に基づく点を選択しないので、経験や実験結果がない場合においても近似関数を決定でき、正確な動作完了時刻を求めることができる。
【0014】
本発明の判定装置において、位相遅れを有しないフィルタとして中心化移動平均フィルタを用いることが好ましい。中心化移動平均フィルタによる処理では、現在のデータ値を挟んだ前後のデータ値だけを用いてフィルタ処理を行えるので、位相遅れを有しないフィルタ処理に必要な演算量を軽減することができる。中心化移動平均フィルタを用いる場合、計算または測定により取得されたロボットの振動成分の振動周波数の逆数を中心化移動平均フィルタの移動平均時間として設定することが好ましい。このように移動平均時間を設定することにより、ロボットの振動における主たる振動成分やそれよりも高い周波数の振動成分を効果的に除去することができる。
【0015】
本発明の判定方法は、指令された位置へのロボットの移動動作の動作完了時刻を判定する判定方法であって、ロボットのアームまたはハンドの速度または加速度を示す信号を検出する工程と、信号に含まれる振動成分を除去して平滑化データを生成するフィルタ処理を行う工程と、を備え、フィルタ処理は、位相遅れを有しないフィルタによって実行される。
【0016】
本発明の判定方法では、速度または加速度を検出した信号から、位相遅れを有しないフィルタを用いて振動成分を除去するので、位相遅れの補償などを行うことなく、平滑化データによって表される波形から動作完了時刻を容易に識別することができる。
【0017】
本発明の判定方法では、動作完了時刻の判定のために用いる信号は、ロボットのアームまたはハンドに設けられた加速度センサからの加速度を示す信号であることが好ましい。加速度センサによって得られる信号を利用することにより、大掛かりな装置などを必要とせずに簡単に動作完了時刻を判別できるようになる。
【0018】
本発明の判定方法のうちの第1の判定方法は、ロボットが減速中であることを検出した後に平滑化データの値が最後に所定の閾値範囲外の値からこの閾値範囲内の値となったとき以降の平滑化データの値の平均値を求め、平滑化データから平均値を差し引くことによりオフセットとドリフトの補正を行う工程を有する。このような補正を行うことにより、速度または加速度の検出におけるオフセットとドリフトの影響を除去できて、より正確な動作完了時刻を得ることができる。
【0019】
第1の判定方法では、動作完了時刻であると推定される時刻の近傍において、オフセットとドリフトの補正を行った平滑化データのうち動作完了時刻と推定される時刻以前の期間の平滑化データを時刻の関数で近似し、この関数の値がゼロとなる時刻を動作完了時刻として判定する工程を設けることが好ましい。関数近似の手法を採用することにより、平滑化データに残存する振動成分の影響を除去してさらに正確に動作完了時刻を決定することができる。さらに本発明の判定方法では、オフセットとドリフトの補正を明示的に行わない場合(第2の判定方法の場合)においても、関数近似の手法を採用することができる。オフセットとドリフトの補正を明示的に行わない場合には、ロボットが減速中であることを検出した後に平滑化データの値が最後に所定の閾値範囲外の値からこの閾値範囲内の値となったときを基準時として、基準時以降の平滑化データを定数値で近似し、基準時以前の平滑化データを時刻の関数で近似し、この関数の値が、基準時以降の平滑化データを近似する定数値となる時刻を動作完了時刻として判定する。
【発明の効果】
【0020】
本発明によれば、人為的な誤差の要因を排除し、高い作業効率でロボットの動作完了時刻を正確に決定することができるようになる。
【図面の簡単な説明】
【0021】
【
図1】ロボットの一例を示す図であって、(a)は平面図、(b)は正面図、(c)は原点位置にあるロボットの正面図である。
【
図2】加速度を実測した結果と、実測した加速度に対して中心化移動平均フィルタによるフィルタ処理を行って得た結果とを示すグラフである。
【
図3】本発明の実施の一形態の判定装置を説明するブロック図である。
【
図4】オフセット及びドリフトの補正を説明するグラフである。
【
図5】動作完了時刻の判定を説明するグラフである。
【発明を実施するための形態】
【0022】
次に、本発明の好ましい実施の形態について、図面を参照して説明する。本発明は搬送用ロボットなどのロボットの動作完了時刻の判定に関するものであるが、本発明の理解のため、まず、本発明の適用対象となるロボットについて説明する。
図1は、本発明の適用対象のロボットの一例である搬送用ロボットを示している。
【0023】
図1に示すロボットは、水平多関節ロボットであり、ロボットの周囲に配置されている複数の処理室(不図示)の間で例えば略長方形のガラス基板であるワークを搬送するために用いられる。それぞれの処理室は、ワークに対して成膜やエッチングを行うためのものである。
図1(a),(b)は、アームやハンドを伸ばした状態でのロボットを示す平面図及び正面図である。
図1に示されるロボットは、特開2015-139854号公報に開示された搬送用の水平多関節ロボットと同様のものであって、基台11と、基台11に取り付けられた第1アーム12と、第1アーム12の先端に取り付けられた第2アーム13と、第2アーム13の先端に取り付けられたハンド14とを備えている。ハンド14はワークを保持するものであって、フォーク(fork)状に形成されている。基台11に対して第1アーム12は軸Aの周りで回転可能であり、第1アーム12に対して第2アーム13は軸Bの周りを回転可能であり、第2アーム13に対してハンド14は軸Cの周りで回転可能である。ロボットの関節軸である軸A~Cの周りでの回転を可能にするために、ロボットには軸ごとにモータが備えられている。さらにロボットは、基台11に設けられて第1アーム12を図示Z方向で昇降する機構が設けられ、この昇降機構も昇降用のモータによって駆動される。軸A~Cは、いずれもZ方向に平行である。
【0024】
図1に示すロボットには、ロボットの動作の基準となる原点位置が定められており、原点位置ではロボットはアームやハンドが所定の折り畳まれた姿勢となる。
図1(c)は原点位置でのロボットの姿勢を示しており、第1アーム12上に第2アーム13及びハンド14が重なるように、第2アーム13及びハンド14が折り畳まれている。そしてハンド14上に保持されているワークをある処理室に搬入するときには、アーム12,13が伸展してハンド14がその処理室内に入り込み、その後、アーム12,13及びハンド14の全体を昇降機構によって下降させることによって、ワークがハンド14から離れて処理室内の所定の位置に配置されることになる。アーム12,13の伸展の完了後、残留振動が収束しないうちにアーム12,13及びハンド14を下降させると、処理室内に配置されるワークが位置ずれを起こすことになる。処理室内でのワークの位置ずれは、その処理室においてワークに対して処理を行う際の障害要因となり得る。十分に時間が経過して残留振動が収束してからアーム12,13及びハンド14を下降させてワークを処理室内に配置してもよいが、時間をかける分、作業効率が低下する。
【0025】
そこで、残留振動の収束時間の評価を行う必要が生じるが、そのためには、処理室ごとに定められている位置にアーム12,13やハンド14が伸展する動作が完了した時刻、すなわちロボットの動作完了時刻を知る必要がある。以下、本発明に基づいて
図1に示すロボットの動作完了時刻を判定する方法について説明する。
【0026】
本実施形態においては、ロボットのアーム12,13及びハンド14の伸展の動作を検出するために、ハンド14に加速度センサ21を取り付ける。ロボットの残留振動の特性は、ハンド14上に保持されるワークの質量などによっても変化するので、ワークを載せた状態で残留振動の収束時間を判定することがあり得る。そこで、加速度センサ21としては、小型であってロボットの振動特性に影響を与えないものをハンド14の下面側に取り付ける。このように加速度センサ21を取り付けたロボットを動作させると、加速度センサ21で検出される加速度のうち、ロボットへの指令に基づくハンド14の移動方向での加速度成分は、例えば
図2において灰色の線で示すようなものとなる。大局的にはハンド14が加速しているときは加速度は正であり、定速状態では加速度はほぼゼロであり、減速しているときは負である。実際には振動の影響が大きく重畳した加速度波形となる。特に、アーム12,13やハンド14が駆動されているときは、モータや減速機などによって発生する大きな振動があたかもノイズであるかのように重畳している。さらに加速度センサ21の出力には、実際に印加される加速度がゼロであっても出力がゼロとならないというオフセットによる成分と、実際に印加される加速度は一定であるが出力値が徐々に変化するというドリフトによる成分とが含まれている。
図2では、停止しているはずのときの加速度が0.05m/s
2程度になっているが、これがオフセットの影響である。なお
図2では、説明のため、オフセット及びドリフトの影響を誇張して描いており、加速度センサ21が正常であれば、通常は、振動の振幅に比べてオフセットやドリフトはずっと小さくなる。市販の加速度センサでは、オフセットやドリフトの要因は主として温度変化であると考えられている。
【0027】
従来は、振動が大きく重畳した加速度波形から目視で動作完了時刻を推定していた。
図2において破線は、目視で推定された動作完了時刻の例を示している。動作が完了したと思われる時刻以降において加速度波形が振動しているが、これは残留振動を検出したものである。本実施形態の判定方法が目標とするところは、減速後、加速度がゼロとなった時刻として原理上は定義される動作終了時刻を、振動が大きく重畳している加速度波形から、目視などに頼らずに客観的な操作によって自動的に抽出し判定することである。一般にノイズなどが重畳した波形からノイズを取り除くために、ローパスフィルタを用いる平滑化操作が知られている。しかしながら通常のローパスフィルタは積分操作に基づくものであって必ず位相遅れを伴うものであり、通常のローパスフィルタを使用して加速度波形を平滑化して得られた動作完了時刻は、本来の動作完了時刻よりも遅れたものとなる。位相遅れを補償することも考えられるが、正確な位相遅れ補償を行うことは難しい。したがって、本実施形態の目的には、通常のローパスフィルタを使用することはできない。
【0028】
ところで、ロボットの残留振動の収束時間について、実際にロボットを動作させたときにリアルタイムで求めることは少なく、通常は、ロボットの振動波形を記録した上で、記録された振動波形に基づいて判定することが多い。特にデジタル処理を前提とすれば、加速度センサからの加速度信号をアナログ/デジタル変換によりデジタル信号に変換してメモリに格納し、メモリに格納された時系列のデータに基づいて加速度波形を例えばディスプレイなどにグラフィック表示し、その表示された波形に基づいて動作完了時刻を目視で決定し、収束時間を求めている。加速度波形を表すデータがあらかじめメモリに格納されているのであれば、デジタル信号処理により、位相遅れを有しないフィルタ処理を行うことが可能である。そこで本発明では、位相遅れを有しないフィルタを用いて平滑化処理を行うこととする。位相遅れを有しないフィルタの例として、中心化移動平均フィルタ、ゼロ位相フィルタなどがある。
図2において黒色の実線は、灰色の線で示された加速度波形に対して中心化移動平均フィルタを適用した結果を示している。位相遅れを有しないフィルタによって処理された後の信号からなるデータを平滑化データと呼び、また平滑化データによって表される加速度波形を平滑化波形と呼ぶ。中心化移動平均フィルタを用いることによって加速度波形における振動成分がほとんど除去される。オフセットやドリフトが無視できるものとすれば、加速度センサ21に減速を検出した後に中心化移動平均フィルタによって得られた平滑化波形において加速度がゼロとなって時刻を動作完了時刻と判定することができる。ここではオフセットやドリフトを無視し、また、完全には除去されなかった振動成分を無視しているが、それでも加速度波形から目視によって動作完了時刻を推定する場合よりは、例えば残留振動の収束時間の判定において、良好な結果を得ることができる。
【0029】
図3は、本発明の実施の一形態の判定装置20を示している。この判定装置20は、ロボットに取り付けられた加速度センサ21からの加速度信号に基づいてロボットの動作完了時刻を求めるものであり、残留時間の収束時間を評価する収束時間評価装置に対し、求めた動作完了時刻を出力するように構成されている。判定装置20は、加速度センサ21と、加速度センサ21から出力されるアナログでの加速度信号をデジタル信号に変換するアナログ/デジタル変換器22と、アナログ/デジタル変換器22からの出力信号をデジタルでの加速度データとして逐次記憶する波形記憶部23と、波形記憶部23に記憶された加速度データに対し、位相遅れのないフィルタによるフィルタ処理を行って平滑化データを出力するフィルタ処理部24と、を備えている。加速度センサ21としてデジタルデータを出力するものを使用する場合には、アナログ/デジタル変換器22を設ける必要はない。波形記憶部23は、通常、デジタルメモリによって構成される。上述したように、フィルタ処理部24からの平滑化データで表される平滑化波形によっても動作完了時刻を求めることができるが、
図3に示す判定装置20は、オフセットやドリフトの影響を取り除く処理と、除去されずに平滑化波形に残っている振動成分などの影響を取り除く処理とを実行する演算部25をさらに備えており、より正確に動作完了時刻を求めることができるようになっている。演算部25で実行する処理については後述する。
【0030】
ここでフィルタ処理部24について説明する。フィルタ処理部24は、位相遅れのないフィルタによるフィルタ処理を行うものである。位相遅れのないフィルタとして中心化移動平均フィルタを使用する場合、そのフィルタの特性を表すパラメータとして、移動平均時間がある。中心化移動平均フィルタは、移動平均時間の逆数で表される周波数の成分とその整数倍の周波数の成分とをもっとも強く除去する。移動平均時間の逆数をノッチ周波数と呼ぶ。ゼロ位相フィルタについても同様に周波数で表されるパラメータがある。ロボットの振動の周波数成分ごと強度を考えると、アーム12,13及びハンド14(とこれらに加えてワーク)からなる振動系の共振周波数が卓越していると考えられる。そこで、中心化移動平均フィルタのノッチ周波数は、ロボットの振動系の共振周波数と一致するように設定することが好ましい。ロボットの振動系の共振周波数は、ロボットの構造パラメータから計算によって算出できるので、その算出した共振周波数に基づいてフィルタのノッチ周波数を設定すればよい。あるいは、加速度センサ21により実測された加速度波形に対してFFT(高速フーリエ変換)を行うことなどにより実際の振動の周波数を求め、求められた周波数に基づいてノッチ周波数を設定してもよい。FFTによって実際の振動周波数を求めてノッチ周波数を設定する場合、FFTによって得られた周波数スペクトルにおいてピーク値が規定のピーク値を超えるものの中の最小の振動周波数をノッチ周波数としてもよいし、周波数スペクトルにおいて最大のピークを有する振動周波数をノッチ周波数としてもよい。
【0031】
このように、フィルタ処理部24において位相遅れのないフィルタによって加速度波形をフィルタ処理して振動成分を除去し平滑化波形を生成することによって、動作完了時間の識別が容易になり、位相遅れ補償などを行う必要もなくなる。位相遅れのないフィルタとして中心化移動平均フィルタを用いる場合には、時刻ごとにその時刻の前後の時刻でのデータのみを用いて演算を行うことができるので、処理の簡素化を行え、その分、短時間での処理を実現できる。
【0032】
次に、より正確に動作完了時刻を求めるために演算部25で実行する処理について説明する。演算部25では、まず、加速度波形に含まれるオフセット及びドリフトを除去するために平滑化波形を補正する。動作完了時刻の判定には、ロボットのアーム12,13やハンド14が減速を開始してから移動が完了し、残留振動も収束するまでの期間での加速度データを考えればよく、この期間の開始時点と終了時点との間でドリフト量には大きな差は生じないと考えられるので、オフセットとドリフトとを一括して補正することができる。
図4は、オフセット及びドリフトの補正を説明する図であり、動作完了であると推定される時刻の前後での平滑化波形を拡大して示している。動作完了であると推定される時刻は、例えば、平滑化データの値がゼロに接近し、その後はほとんど変化しなくなるような時刻として定めることができる。
【0033】
まず、
図2に示す平滑化波形の全区間における加速度の値が最大値Maxとなる時刻と最小値Minとなる時刻とを求める。加速度センサ21の取り付け方向やロボットの移動方向によっては、出力される加速度信号の符号が加速時には負となり減速時には正となることがあることに注意して、最大値Maxとなる時刻と最小値Minとなる時刻のうちの遅い方の時刻を検出し、これが減速に対応するものとする。図示したものでは、最小値Minの時刻が減速に対応している。そしてこの時刻以降、平滑化波形は細かい変動はあるものの全体としてはゼロに向かって変化する。そこで、
図4に示すように、加速度ゼロを中心とする閾値領域Aを設定すると、平滑化波形を表す平滑化データの値は、最初のうちは閾値領域Aの外側にあるが、時間の経過とともに閾値領域Aの外側と内側との間を行き来するようになり、最終的には閾値領域Aの中にのみ含まれるようになる。平滑化データの値がこの閾値領域Aに最後に入った時刻をxとして、時刻x以降の平滑化データの値の平均値を算出する。この平均値はオフセットとドリフトの量に対応するものと考えられる。そこで平均値がゼロとなるように、平滑化データの値から平均値を差し引く。言い換えれば、平滑化波形を平均値の分だけ図示上下方向にシフトさせる。その結果、
図4において破線Bで示されるように、オフセットとドリフトが除去された平滑化波形が得られる。閾値領域Aの幅は、オフセットとドリフトの補正の処理によっては除去されない振動やオフセット、ドリフトの影響を受けないことを条件として、できるだけ小さな幅とすることが好ましい。このようにオフセットとドリフトの補正を行うことによって、加速度センサ21における温度変化などの影響を排除して動作完了時刻をより精度よく識別できるようになる。
【0034】
ある閾値による範囲を定めて、平滑化波形が最後にこの範囲に入ったときが動作完了時刻であるとすると、閾値の設定に動作完了時刻が依存することとなり、動作完了時刻を正しく算出することができない。そこで、動作完了時刻と推定される時刻の近傍の平滑化波形を、その推定される時刻を基準として時刻に関して前後に2分割し、分割して得られた2つの波形をそれぞれ別の関数で近似し、それらの関数の交点を座標を求めて動作完了時刻とする。ここでいう2つの関数の一方は、1次関数または2次関数であり、他方の関数は、加速度を表す変数をyとして、オフセットとドリフトの補正を行っているときは、y=0であり、オフセットとドリフトの補正を行っていないときは、y=aである。aは、動作完了時刻と推定される時刻以降における平滑化データを近似する定数値である。オフセットとドリフトの補正を行っていないときは、平滑化波形が上述した閾値範囲Aに最後に入った時刻を基準時として、基準時以前の平滑化波形を1次関数または2次関数で近似し、基準時以降の平滑化波形を定数値aで近似することが好ましい。
【0035】
図5は、上述のようにして演算部25によって最終的に動作完了時刻を決定する処理を説明しており、
図5に示される平滑化波形は、オフセットとドリフトの補正を行った後のものである。動作完了時刻は、ロボットの減速が終了する時刻であり、この時刻の近傍ではロボットの減速での加速度変化(減速曲線と呼ぶ)を1次関数で近似する。この1次関数で表される直線をLとすれば、直線Lと加速度ゼロとの交点Eの時刻T
endが動作完了時刻であるとすることができる。そこで、オフセットとドリフトの補正を行った後の平滑化波形における極小値Minの座標を(t
m,a
m)とする。ゼロ加速度検出用の閾値a
wcを予め定めておく。オフセットとドリフトを補正した後の平滑化波形において閾値a
wcに対応する時刻をt
wcとし、直線Lは点C(t
wc,a
wc)も通過するものとする。そして、0以上1以下の任意の定数r
aを用いて、直線Lのもう1つの通過点H(t
h,a
h)を
a
h=r
a×(a
m-a
wc)+a
wc
で定める。そして、オフセットとドリフトを補正した後の平滑化データの加速度がa
wc及びa
hとなる時刻をサーチしてt
wc及びt
hを求める。これにより、直線Lが点C及び点Hを通ることから直線Lを表す1次関数が一意に定まったことになり、動作完了時刻t
endを
t
end=t
wc-a
wc×(t
h-t
wc)/(a
h-a
wc)
により求めることができる。
【0036】
ここで説明した方法では、1次関数によって減速曲線を近似して動作完了時刻tendを求めるので、また加速度に対応する時刻を求めるサーチの範囲も狭いので、演算が容易であり、またそのためのプログラム作成も容易である。ゼロ加速度検出用の閾値awcは、平滑化波形に残る振動の影響を受けない範囲でできるだけ小さい値であることが好ましい。定数raとしては、通常、0.25を好ましく使用することができる。定数raが大きすぎると、減速曲線を1次関数で近似するという仮定が崩れることとなり、また、小さすぎると、平滑化波形に残る振動の影響を受けやすくなる。経験や実験結果に基づいて定数raを定めることにより、より精度よく動作完了時刻tendを求めることができる。
【0037】
上述の減速曲線を1次関数で近似する方法では、オフセットとドリフトとを補正した後の平滑化波形上の2点C,Hを通るものとして直線Lを定めている。その代わりに、点Cと点Hとの間の平滑化波形を最小二乗法によって1次関数にフィッティングし、最小二乗フィッティングによって得られた1次関数に基づいて動作完了時刻tendを求めてもよい。最小二乗法を用いるほうがより精度よく動作完了時刻tendを求めることができるが、その分、演算量が多くなる。
【0038】
減速曲線を2次関数に近似して動作完了時刻tendを求めることもできる。オフセットとドリフトの補正を行った後の平滑化波形における極小値Minと上述の点Cを使用し、極小値Minが2次関数が表す放物線の頂点に対応し、かつ放物線上に点Cがあるとすればよく、時刻tm以降で2次関数が表す放物線が加速度ゼロと交わる点の時刻を動作完了時刻tendとすればよい。すなわち下記式によってtendを定めればよい。
【0039】
【数1】
この場合は任意定数r
aを用いることなく動作完了時刻t
endを決定できるので、経験や実験によらずに精度よく動作完了時刻t
endを決定できる。
【0040】
以上のように判別装置20において動作完了時刻が求められると、動作完了時刻は収束時間評価装置30において利用される。収束時間評価装置30は、例えば、波形記憶部23内の加速度データを参照して、動作完了時刻から加速度が最後に収束判定閾値以内となる時刻tdまでの時間を求めて残留振動収束時間を決定する。また時刻td以降の加速度データにおける加速度の最大値及び最小値を解析して、位置における残留振動振幅を算出する。さらに、加速度データを2重積分して変位を求め、さらにハイパスフィルタを通して変位から加速度センサの加速度オフセットの影響を除去することにより、変位における残留振動を分析することができる。このような処理を行う収束時間評価装置30は、例えばパーソナルコンピュータ(PC)上で実行されるソフトウェアによって実現することができる。特に、ソフトウェアにより判別装置20を実現する場合であれば、判別装置20の機能と収束時間評価装置30とを同じソフトウェアに組み込んで、動作完了時刻の判別と残留信号の評価とを有機的に結合して実行することができる。
【0041】
以上説明した実施形態においては、ロボットに加速度センサ21を取り付けた上で、加速度センサ21から出力される加速度波形に対し、位相遅れのないフィルタ(特に中心化移動平均フィルタ)によるフィルタ処理を行って平滑化波形を得ることにより、加速度波形に重畳する振動の影響を除去してロボットの動作完了時刻を容易に識別できるようになる。平滑化波形に対してオフセットとドリフトの補正を行えば、より正確に動作完了時刻を判別できるようになる。さらに、推定される動作完了時刻の近傍で減速曲線を1次関数または2次関数で近似することにより、一層正確に動作完了時刻を判別できるようになる。また、フィルタ処理部24及び演算部25はソフトウェアによって実現でき、波形記憶部23も一般的なコンピュータにおけるメモリを使用して実現できるから、例えば本実施形態の判別装置20は、加速度センサ21からのデータがデジタルデータとして得られるのであれば、パーソナルコンピュータ(PC)上でソフトウェアを実行することにより実現できる。また本実施形態では、ロボットに取り付けた加速度センサ21からのデータをPCソフトウェアで分析することにより動作完了時刻を判別することができるので、ロボットのアームやハンドの駆動を制御するロボットコントローラから内部動作状態や信号を取得する必要なく、簡便に動作完了時刻を判別することができる。
【0042】
上述の実施形態ではロボットに加速度センサを取り付けて加速度に基づいて動作完了時刻を判別している。しかしながら本発明では、加速度以外にも、動作完了時刻の直前ではゼロでなく動作完了時刻以降はゼロとなる物理量を用いて動作完了時刻を判別することもできる。例えば、ロボットのアームやハンドの速度を検出して上述と同様の処理を行うことにより、動作完了時刻を判別することができる。すなわち本発明の実施のためには、最低限、ロボットのアームまたはハンドの速度または加速度を検出する動作検出手段と、位相遅れを有しないフィルタによって構成されて動作検出手段からの信号に含まれる振動成分を除去して平滑化信号を生成するフィルタ手段とを設ければよいことになる。速度を使用する場合には、例えば、レーザトラッカーなどによってロボットのアームまたはハンドの位置を追跡し、検出された位置データに対して数値微分を行って速度に変換した波形データを取得し、この波形データに対して上述と同様の処理を行えばよい。実際には、レーザトラッカーなどを設けることは設備が大掛かりになるから、小型化なものを容易に入手できる加速度センサ21をロボットに取り付けて加速度に基づいて動作完了時刻を判別する方が実施が容易である。
【符号の説明】
【0043】
11…基台;12,13…アーム;14…ハンド;20…判定装置;21…加速度センサ;22…アナログ/デジタル変換器;23…波形記憶部;24…フィルタ処理部;25…演算部;30…収束時間評価装置。