(57)【要約】【課題】指令された位置へのロボットの移動動作の動作完了時刻を、人為的な誤差の要因を排除し、高い作業効率で正確に決定することができるようにする。【解決手段】動作完了時刻を判定する判定装置は、ロボットのアームまたはハンドの速度または加速度を検出する動作検出手段と、動作検出手段からの信号に含まれる振動成分を除去して平滑化データを生成するフィルタ手段と、を有する。位相遅れを有しないフィルタ、例えば中心化移動平均フィルタ、ゼロ位相フィルタなどによってフィルタ手段を構成する。【選択図】図３
2020059082.tif 000002
【特許請求の範囲】
【請求項１】
指令された位置へのロボットの移動動作の動作完了時刻を判定する判定装置であって、
前記ロボットのアームまたはハンドの速度または加速度を検出する動作検出手段と、
前記動作検出手段からの信号に含まれる振動成分を除去して平滑化データを生成するフィルタ手段と、
を備え、前記フィルタ手段は、位相遅れを有しないフィルタによって構成されている、判定装置。
【請求項２】
前記動作検出手段は、前記アームまたは前記ハンドに取り付けられた加速度センサである、請求項１に記載の判定装置。
【請求項３】
前記動作検出手段により前記ロボットが減速中であることを検出した後に前記平滑化データの値が最後に所定の閾値範囲外の値から前記所定の閾値範囲内の値となったとき以降の前記平滑化データの値の平均値を求め、前記平滑化データから前記平均値を差し引くことによりオフセットとドリフトの補正を行う演算部をさらに有する、請求項１または２に記載の判定装置。
【請求項４】
前記演算部は、前記動作完了時刻であると推定される時刻の近傍において、前記オフセットとドリフトの補正を行った前記平滑化データのうち前記動作完了時刻であると推定される時刻以前の期間の前記平滑化データを近似対象平滑化データとして時刻の関数で近似し、該関数の値がゼロとなる時刻を動作完了時刻として判定する、請求項３に記載の判定装置。
【請求項５】
前記動作検出手段により前記ロボットが減速中であることを検出した後に前記平滑化データの値が最後に所定の閾値範囲外の値から前記所定の閾値範囲内の値となったときを基準時として、前記基準時以降の前記平滑化データを定数値で近似し、前記基準時以前の前記平滑化データを近似対象平滑化データとして時刻の関数で近似し、該関数の値が前記定数値となる時刻を動作完了時刻として判定する、請求項１または２に記載の判定装置。
【請求項６】
前記関数は１次関数であり、前記近似対象平滑化データにおいてゼロ加速度検出用の閾値に対応する点と任意定数を用いて決定される１つの点とを選択して、選択された点を前記１次関数が表す直線が通過するように前記１次関数が決定される、請求項４または５に記載の判定装置。
【請求項７】
前記関数は２次関数であり、前記近似対象平滑化データにおいてゼロ加速度検出用の閾値に対応する点と前記ロボットの減速での極値に対応する点とを選択し、前記２次関数が表す放物線が前記閾値に対応する点と前記極値に対応する点とを通るように前記２次関数が決定される、請求項４または５に記載の判定装置。
【請求項８】
前記位相遅れを有しないフィルタは中心化移動平均フィルタである、請求項１乃至７のいずれか１項に記載の判定装置。
【請求項９】
計算または測定により取得された前記振動成分の振動周波数の逆数が前記中心化移動平均フィルタの移動平均時間として設定されている、請求項８に記載の判定装置。
【請求項１０】
指令された位置へのロボットの移動動作の動作完了時刻を判定する判定方法であって、
前記ロボットのアームまたはハンドの速度または加速度を示す信号を検出する工程と、
前記信号に含まれる振動成分を除去して平滑化データを生成するフィルタ処理を行う工程と、
を備え、前記フィルタ処理は、位相遅れを有しないフィルタによって実行される、判定方法。
【請求項１１】
前記信号は、前記アームまたは前記ハンドに設けられた加速度センサからの前記加速度を示す信号である、請求項１０に記載の判定方法。
【請求項１２】
前記ロボットが減速中であることを検出した後に前記平滑化データの値が最後に所定の閾値範囲外の値から前記所定の閾値範囲内の値となったとき以降の前記平滑化データの値の平均値を求め、前記平滑化データの値から前記平均値を差し引くことによりオフセットとドリフトの補正を行う工程をさらに有する、請求項１０または１１に記載の判定方法。
【請求項１３】
前記動作完了時刻であると推定される時刻の近傍において、前記オフセットとドリフトの補正を行った前記平滑化データのうち前記動作完了時刻であると推定される時刻以前の期間の前記平滑化データを時刻の関数で近似し、該関数の値がゼロとなる時刻を動作完了時刻として判定する工程をさらに有する、請求項１２に記載の判定方法。
【請求項１４】
前記ロボットが減速中であることを検出した後に前記平滑化データの値が最後に所定の閾値範囲外の値から前記所定の閾値範囲内の値となったときを基準時として、前記基準時以降の前記平滑化データを定数値で近似し、前記基準時以前の前記平滑化データを時刻の関数で近似し、該関数の値が前記定数値となる時刻を動作完了時刻として判定する、請求項１０または１１に記載の判定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アームを備えるロボットがその指令された位置に到達した時刻である動作完了時刻を判定する装置及び方法に関する。
【背景技術】
【０００２】
例えば液晶パネルの製造に用いられるガラス基板等のワークは、アームの先端にハンドを備えたロボットを用いて、ハンドの上に保持されることによって搬送される。この搬送の際、種々の要因でハンドやアームが振動することがある。特に水平多関節ロボットの場合、アームを伸展することによってワークを搬送して搬送先の所定位置に配置するので、アームを搬送先に向けて伸展させたのちの残留振動が収束するまでの時間が長いと、ワークを所定位置に配置する際に位置ずれが生じてしまう、あるいは待機時間が長くなる分、作業効率を低下させてしまう懸念がある。そのため、ロボットにおけるアームまたはハンドの残留振動の収束時間についての評価が行われる。残留振動の収束時間の判定は、例えば、ハンドに加速度センサを取り付け、ロボットに対する指令に応じたアームまたはハンドの伸展の動作が完了してから規定時間後のハンドの振動振幅を計測することによって行われる。アームまたはハンドの伸展の動作とは、ワークを搬送位置に位置決めするためにアームまたはハンドを駆動する動作のことである。そしてロボットの動作完了時刻とは、ワークを搬送位置に位置付けるためにアームまたはハンドを駆動する動作が完了した時刻のことである。
【０００３】
残留振動の収束時間の評価を行うためには、ロボットの動作完了時刻を正確に判定できることが必要である。ロボットの動作完了時刻の判定では、例えば、アームやハンドに取り付けた加速度センサからのデータをメモリに蓄積し、蓄積したデータのうちアームやハンドの進行方向成分のデータに着目し、振動や雑音が重畳しているこのデータの包絡線の中心線の値がゼロとなった時刻を動作完了時刻としている。
【０００４】
本発明に関連するものとして、特許文献１は、ロボットのテスト運転を行って残留振動の周波数と移動時間別の残留振動の大きさとを測定し、振動の大きさが最小となる最短の移動時間を求めてロボットの位置決めを行うことを開示している。特許文献２は、ロボットの手先に加速度計を設け、加速度計の出力をオシロスコープで観測してロボットの実加速度を求め、ロボットの動作時間を予測することを開示している。特許文献３は、アームのたわみが無視できないときの位置決め方法として、アームの先端に加速度センサを設け、加速度センサの出力をローパスフィルタで処理し、ローパスフィルタで処理された後の加速度センサの出力値に基づいてアームのたわみ量を演算し、演算されたたわみ量に基づいてアームを駆動することを開示している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特表２００３−５１７１６７号公報
【特許文献２】特開平４−２６０１０２号公報
【特許文献３】特開平１−１７３１１６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ロボットの動作完了時刻を求める従来の方法は、アームまたはハンドに取り付けられた加速度データを蓄積して加速度波形として、出力された加速度波形に基づいて目視によって動作完了時刻を求めている。加速度波形には振動などが重畳しており、これらの影響によって、目視で動作完了時刻を決定した場合には人為的な誤差やばらつきが発生する。その結果、振幅の変化を正確に測定できたとしても残留振動の起点である動作完了時刻を正確に決定できていないことになるので、残留振動の収束時間を正しく評価できなくなる。また、目視での判定であるので作業効率もよくない。
【０００７】
本発明の目的は、人為的な誤差の要因を排除し、高い作業効率でロボットの動作完了時刻を正確に決定することができる、ロボットの動作完了時刻の判定装置及び判定方法を提供することにある。
【課題を解決するための手段】
【０００８】
本発明の判定装置は、指令された位置へのロボットの移動動作の動作完了時刻を判定する判定装置であって、ロボットのアームまたはハンドの速度または加速度を検出する動作検出手段と、動作検出手段からの信号に含まれる振動成分を除去して平滑化データを生成するフィルタ手段と、を備え、フィルタ手段は、位相遅れを有しないフィルタによって構成されている。
【０００９】
本発明の判定装置では、速度または加速度を検出した信号から、位相遅れを有しないフィルタを用いて振動成分を除去するので、位相遅れの補償などを行うことなく、平滑化データによって表される波形から動作完了時刻を容易に識別することができる。なお、以下の説明において、ロボットのアームまたはハンドの減速のことを「ロボットの減速」と呼ぶ。加速度を検出した信号からはその符号により、速度を検出した信号からはその信号を微分して符号を判定することにより、ロボットが減速中であるか否かを判定することができる。
【００１０】
本発明の判定装置では、動作検出手段は、ロボットのアームまたはハンドに取り付けられた加速度センサとすることができる。加速度センサによって加速度を検出する構成とすることにより、大掛かりな装置などを必要とせずに簡単に動作完了時刻を判別できるようになる。
【００１１】
本発明の判定装置では、動作検出手段によりロボットが減速中であることを検出した後に平滑化データの値が最後に所定の閾値範囲外の値からこの閾値範囲内の値となったとき以降の平滑化データの値の平均値を求め、平滑化データの値から平均値を差し引くことによりオフセットとドリフトの補正を行う演算部をさらに設けることが好ましい。このような演算部を設けることにより、速度または加速度の検出におけるオフセットとドリフトの影響を除去できて、より正確な動作完了時刻を得ることができる。
【００１２】
本発明の判定装置においては、演算部は、動作完了時刻であると推定される時刻の近傍において、オフセットとドリフトの補正を行った平滑化データのうち動作完了時刻であると推定される時刻以前の期間の平滑化データを近似対象平滑化データとして時刻の関数で近似し、その関数の値がゼロとなる時刻を動作完了時刻として判定することが好ましい。関数近似の手法を採用することにより、平滑化データに残存する振動成分の影響を除去してさらに正確に動作完了時刻を決定することができる。さらに本発明の判定装置においては、オフセットとドリフトの補正を明示的に行わない場合にも、関数近似の手法を採用することができる。オフセットとドリフトの補正を明示的に行わない場合には、動作検出手段によりロボットが減速中であることを検出した後に平滑化データの値が最後に所定の閾値範囲外の値からこの閾値範囲内の値となったときを基準時として、基準時以降の平滑化データを定数値で近似し、基準時以前の平滑化データを近似対象平滑化データとして時刻の関数で近似し、この関数の値が、基準時以降の平滑化データを近似する定数値となる時刻を動作完了時刻として判定すればよい。
【００１３】
関数近似の関数としては、例えば１次関数や２次関数がある。１次関数で近似するときは、近似対象平滑化データにおいてゼロ加速度検出用の閾値に対応する点と任意定数を用いて決定される１つの点とを選択して、１次関数が表す直線がこれらの２点を通るように１次関数を決定するようにすることができる。１次関数での近似には、演算量が少なくてすみ、また任意定数の選択において経験や実験結果を反映させることで、より高い精度で動作完了時刻を決定できるという利点がある。一方、２次関数で近似するときは、近似対象平滑化データにおいて上述のゼロ加速度検出用の閾値に対応する点とロボットの減速での極値に対応する点とを２次関数が表す放物線が通るようにして、２次関数を決定することができる。２次関数での近似では、任意定数に基づく点を選択しないので、経験や実験結果がない場合においても近似関数を決定でき、正確な動作完了時刻を求めることができる。
【００１４】
本発明の判定装置において、位相遅れを有しないフィルタとして中心化移動平均フィルタを用いることが好ましい。中心化移動平均フィルタによる処理では、現在のデータ値を挟んだ前後のデータ値だけを用いてフィルタ処理を行えるので、位相遅れを有しないフィルタ処理に必要な演算量を軽減することができる。中心化移動平均フィルタを用いる場合、計算または測定により取得されたロボットの振動成分の振動周波数の逆数を中心化移動平均フィルタの移動平均時間として設定することが好ましい。このように移動平均時間を設定することにより、ロボットの振動における主たる振動成分やそれよりも高い周波数の振動成分を効果的に除去することができる。
【００１５】
本発明の判定方法は、指令された位置へのロボットの移動動作の動作完了時刻を判定する判定方法であって、ロボットのアームまたはハンドの速度または加速度を示す信号を検出する工程と、信号に含まれる振動成分を除去して平滑化データを生成するフィルタ処理を行う工程と、を備え、フィルタ処理は、位相遅れを有しないフィルタによって実行される。
【００１６】
本発明の判定方法では、速度または加速度を検出した信号から、位相遅れを有しないフィルタを用いて振動成分を除去するので、位相遅れの補償などを行うことなく、平滑化データによって表される波形から動作完了時刻を容易に識別することができる。
【００１７】
本発明の判定方法では、動作完了時刻の判定のために用いる信号は、ロボットのアームまたはハンドに設けられた加速度センサからの加速度を示す信号であることが好ましい。加速度センサによって得られる信号を利用することにより、大掛かりな装置などを必要とせずに簡単に動作完了時刻を判別できるようになる。
【００１８】
本発明の判定方法では、ロボットが減速中であることを検出した後に平滑化データの値が最後に所定の閾値範囲外の値からこの閾値範囲内の値となったとき以降の平滑化データの値の平均値を求め、平滑化データから平均値を差し引くことによりオフセットとドリフトの補正を行う工程を設けることが好ましい。このような補正を行うことにより、速度または加速度の検出におけるオフセットとドリフトの影響を除去できて、より正確な動作完了時刻を得ることができる。
【００１９】
本発明の判定方法では、動作完了時刻であると推定される時刻の近傍において、オフセットとドリフトの補正を行った平滑化データのうち動作完了時刻と推定される時刻以前の期間の平滑化データを時刻の関数で近似し、この関数の値がゼロとなる時刻を動作完了時刻として判定する工程を設けることが好ましい。関数近似の手法を採用することにより、平滑化データに残存する振動成分の影響を除去してさらに正確に動作完了時刻を決定することができる。さらに本発明の判定方法においては、オフセットとドリフトの補正を明示的に行わない場合にも、関数近似の手法を採用することができる。オフセットとドリフトの補正を明示的に行わない場合には、ロボットが減速中であることを検出した後に平滑化データの値が最後に所定の閾値範囲外の値からこの閾値範囲内の値となったときを基準時として、基準時以降の平滑化データを定数値で近似し、基準時以前の平滑化データを時刻の関数で近似し、この関数の値が、基準時以降の平滑化データを近似する定数値となる時刻を動作完了時刻として判定すればよい。
【発明の効果】
【００２０】
本発明によれば、人為的な誤差の要因を排除し、高い作業効率でロボットの動作完了時刻を正確に決定することができるようになる。
【図面の簡単な説明】
【００２１】
【図１】ロボットの一例を示す図であって、（ａ）は平面図、（ｂ）は正面図、（ｃ）は原点位置にあるロボットの正面図である。
【図２】加速度を実測した結果と、実測した加速度に対して中心化移動平均フィルタによるフィルタ処理を行って得た結果とを示すグラフである。
【図３】本発明の実施の一形態の判定装置を説明するブロック図である。
【図４】オフセット及びドリフトの補正を説明するグラフである。
【図５】動作完了時刻の判定を説明するグラフである。
【発明を実施するための形態】
【００２２】
次に、本発明の好ましい実施の形態について、図面を参照して説明する。本発明は搬送用ロボットなどのロボットの動作完了時刻の判定に関するものであるが、本発明の理解のため、まず、本発明の適用対象となるロボットについて説明する。図１は、本発明の適用対象のロボットの一例である搬送用ロボットを示している。
【００２３】
図１に示すロボットは、水平多関節ロボットであり、ロボットの周囲に配置されている複数の処理室（不図示）の間で例えば略長方形のガラス基板であるワークを搬送するために用いられる。それぞれの処理室は、ワークに対して成膜やエッチングを行うためのものである。図１（ａ），（ｂ）は、アームやハンドを伸ばした状態でのロボットを示す平面図及び正面図である。図１に示されるロボットは、特開２０１５−１３９８５４号公報に開示された搬送用の水平多関節ロボットと同様のものであって、基台１１と、基台１１に取り付けられた第１アーム１２と、第１アーム１２の先端に取り付けられた第２アーム１３と、第２アーム１３の先端に取り付けられたハンド１４とを備えている。ハンド１４はワークを保持するものであって、フォーク(fork)状に形成されている。基台１１に対して第１アーム１２は軸Ａの周りで回転可能であり、第１アーム１２に対して第２アーム１３は軸Ｂの周りを回転可能であり、第２アーム１３に対してハンド１４は軸Ｃの周りで回転可能である。ロボットの関節軸である軸Ａ〜Ｃの周りでの回転を可能にするために、ロボットには軸ごとにモータが備えられている。さらにロボットは、基台１１に設けられて第１アーム１２を図示Ｚ方向で昇降する機構が設けられ、この昇降機構も昇降用のモータによって駆動される。軸Ａ〜Ｃは、いずれもＺ方向に平行である。
【００２４】
図１に示すロボットには、ロボットの動作の基準となる原点位置が定められており、原点位置ではロボットはアームやハンドが所定の折り畳まれた姿勢となる。図１（ｃ）は原点位置でのロボットの姿勢を示しており、第１アーム１２上に第２アーム１３及びハンド１４が重なるように、第２アーム１３及びハンド１４が折り畳まれている。そしてハンド１４上に保持されているワークをある処理室に搬入するときには、アーム１２，１３が伸展してハンド１４がその処理室内に入り込み、その後、アーム１２，１３及びハンド１４の全体を昇降機構によって下降させることによって、ワークがハンド１４から離れて処理室内の所定の位置に配置されることになる。アーム１２，１３の伸展の完了後、残留振動が収束しないうちにアーム１２，１３及びハンド１４を下降させると、処理室内に配置されるワークが位置ずれを起こすことになる。処理室内でのワークの位置ずれは、その処理室においてワークに対して処理を行う際の障害要因となり得る。十分に時間が経過して残留振動が収束してからアーム１２，１３及びハンド１４を下降させてワークを処理室内に配置してもよいが、時間をかける分、作業効率が低下する。
【００２５】
そこで、残留振動の収束時間の評価を行う必要が生じるが、そのためには、処理室ごとに定められている位置にアーム１２，１３やハンド１４が伸展する動作が完了した時刻、すなわちロボットの動作完了時刻を知る必要がある。以下、本発明に基づいて図１に示すロボットの動作完了時刻を判定する方法について説明する。
【００２６】
本実施形態においては、ロボットのアーム１２，１３及びハンド１４の伸展の動作を検出するために、ハンド１４に加速度センサ２１を取り付ける。ロボットの残留振動の特性は、ハンド１４上に保持されるワークの質量などによっても変化するので、ワークを載せた状態で残留振動の収束時間を判定することがあり得る。そこで、加速度センサ２１としては、小型であってロボットの振動特性に影響を与えないものをハンド１４の下面側に取り付ける。このように加速度センサ２１を取り付けたロボットを動作させると、加速度センサ２１で検出される加速度のうち、ロボットへの指令に基づくハンド１４の移動方向での加速度成分は、例えば図２において灰色の線で示すようなものとなる。大局的にはハンド１４が加速しているときは加速度は正であり、定速状態では加速度はほぼゼロであり、減速しているときは負である。実際には振動の影響が大きく重畳した加速度波形となる。特に、アーム１２，１３やハンド１４が駆動されているときは、モータや減速機などによって発生する大きな振動があたかもノイズであるかのように重畳している。さらに加速度センサ２１の出力には、実際に印加される加速度がゼロであっても出力がゼロとならないというオフセットによる成分と、実際に印加される加速度は一定であるが出力値が徐々に変化するというドリフトによる成分とが含まれている。図２では、停止しているはずのときの加速度が０．０５ｍ／ｓ2程度になっているが、これがオフセットの影響である。なお図２では、説明のため、オフセット及びドリフトの影響を誇張して描いており、加速度センサ２１が正常であれば、通常は、振動の振幅に比べてオフセットやドリフトはずっと小さくなる。市販の加速度センサでは、オフセットやドリフトの要因は主として温度変化であると考えられている。
【００２７】
従来は、振動が大きく重畳した加速度波形から目視で動作完了時刻を推定していた。図２において破線は、目視で推定された動作完了時刻の例を示している。動作が完了したと思われる時刻以降において加速度波形が振動しているが、これは残留振動を検出したものである。本実施形態の判定方法が目標とするところは、減速後、加速度がゼロとなった時刻として原理上は定義される動作終了時刻を、振動が大きく重畳している加速度波形から、目視などに頼らずに客観的な操作によって自動的に抽出し判定することである。一般にノイズなどが重畳した波形からノイズを取り除くために、ローパスフィルタを用いる平滑化操作が知られている。しかしながら通常のローパスフィルタは積分操作に基づくものであって必ず位相遅れを伴うものであり、通常のローパスフィルタを使用して加速度波形を平滑化して得られた動作完了時刻は、本来の動作完了時刻よりも遅れたものとなる。位相遅れを補償することも考えられるが、正確な位相遅れ補償を行うことは難しい。したがって、本実施形態の目的には、通常のローパスフィルタを使用することはできない。
【００２８】
ところで、ロボットの残留振動の収束時間について、実際にロボットを動作させたときにリアルタイムで求めることは少なく、通常は、ロボットの振動波形を記録した上で、記録された振動波形に基づいて判定することが多い。特にデジタル処理を前提とすれば、加速度センサからの加速度信号をアナログ／デジタル変換によりデジタル信号に変換してメモリに格納し、メモリに格納された時系列のデータに基づいて加速度波形を例えばディスプレイなどにグラフィック表示し、その表示された波形に基づいて動作完了時刻を目視で決定し、収束時間を求めている。加速度波形を表すデータがあらかじめメモリに格納されているのであれば、デジタル信号処理により、位相遅れを有しないフィルタ処理を行うことが可能である。そこで本発明では、位相遅れを有しないフィルタを用いて平滑化処理を行うこととする。位相遅れを有しないフィルタの例として、中心化移動平均フィルタ、ゼロ位相フィルタなどがある。図２において黒色の実線は、灰色の線で示された加速度波形に対して中心化移動平均フィルタを適用した結果を示している。位相遅れを有しないフィルタによって処理された後の信号からなるデータを平滑化データと呼び、また平滑化データによって表される加速度波形を平滑化波形と呼ぶ。中心化移動平均フィルタを用いることによって加速度波形における振動成分がほとんど除去される。オフセットやドリフトが無視できるものとすれば、加速度センサ２１に減速を検出した後に中心化移動平均フィルタによって得られた平滑化波形において加速度がゼロとなって時刻を動作完了時刻と判定することができる。ここではオフセットやドリフトを無視し、また、完全には除去されなかった振動成分を無視しているが、それでも加速度波形から目視によって動作完了時刻を推定する場合よりは、例えば残留振動の収束時間の判定において、良好な結果を得ることができる。
【００２９】
図３は、本発明の実施の一形態の判定装置２０を示している。この判定装置２０は、ロボットに取り付けられた加速度センサ２１からの加速度信号に基づいてロボットの動作完了時刻を求めるものであり、残留時間の収束時間を評価する収束時間評価装置に対し、求めた動作完了時刻を出力するように構成されている。判定装置２０は、加速度センサ２１と、加速度センサ２１から出力されるアナログでの加速度信号をデジタル信号に変換するアナログ／デジタル変換器２２と、アナログ／デジタル変換器２２からの出力信号をデジタルでの加速度データとして逐次記憶する波形記憶部２３と、波形記憶部２３に記憶された加速度データに対し、位相遅れのないフィルタによるフィルタ処理を行って平滑化データを出力するフィルタ処理部２４と、を備えている。加速度センサ２１としてデジタルデータを出力するものを使用する場合には、アナログ／デジタル変換器２２を設ける必要はない。波形記憶部２３は、通常、デジタルメモリによって構成される。上述したように、フィルタ処理部２４からの平滑化データで表される平滑化波形によっても動作完了時刻を求めることができるが、図３に示す判定装置２０は、オフセットやドリフトの影響を取り除く処理と、除去されずに平滑化波形に残っている振動成分などの影響を取り除く処理とを実行する演算部２５をさらに備えており、より正確に動作完了時刻を求めることができるようになっている。演算部２５で実行する処理については後述する。
【００３０】
ここでフィルタ処理部２４について説明する。フィルタ処理部２４は、位相遅れのないフィルタによるフィルタ処理を行うものである。位相遅れのないフィルタとして中心化移動平均フィルタを使用する場合、そのフィルタの特性を表すパラメータとして、移動平均時間がある。中心化移動平均フィルタは、移動平均時間の逆数で表される周波数の成分とその整数倍の周波数の成分とをもっとも強く除去する。移動平均時間の逆数をノッチ周波数と呼ぶ。ゼロ位相フィルタについても同様に周波数で表されるパラメータがある。ロボットの振動の周波数成分ごと強度を考えると、アーム１２，１３及びハンド１４（とこれらに加えてワーク）からなる振動系の共振周波数が卓越していると考えられる。そこで、中心化移動平均フィルタのノッチ周波数は、ロボットの振動系の共振周波数と一致するように設定することが好ましい。ロボットの振動系の共振周波数は、ロボットの構造パラメータから計算によって算出できるので、その算出した共振周波数に基づいてフィルタのノッチ周波数を設定すればよい。あるいは、加速度センサ２１により実測された加速度波形に対してＦＦＴ（高速フーリエ変換）を行うことなどにより実際の振動の周波数を求め、求められた周波数に基づいてノッチ周波数を設定してもよい。ＦＦＴによって実際の振動周波数を求めてノッチ周波数を設定する場合、ＦＦＴによって得られた周波数スペクトルにおいてピーク値が規定のピーク値を超えるものの中の最小の振動周波数をノッチ周波数としてもよいし、周波数スペクトルにおいて最大のピークを有する振動周波数をノッチ周波数としてもよい。
【００３１】
このように、フィルタ処理部２４において位相遅れのないフィルタによって加速度波形をフィルタ処理して振動成分を除去し平滑化波形を生成することによって、動作完了時間の識別が容易になり、位相遅れ補償などを行う必要もなくなる。位相遅れのないフィルタとして中心化移動平均フィルタを用いる場合には、時刻ごとにその時刻の前後の時刻でのデータのみを用いて演算を行うことができるので、処理の簡素化を行え、その分、短時間での処理を実現できる。
【００３２】
次に、より正確に動作完了時刻を求めるために演算部２５で実行する処理について説明する。演算部２５では、まず、加速度波形に含まれるオフセット及びドリフトを除去するために平滑化波形を補正する。動作完了時刻の判定には、ロボットのアーム１２，１３やハンド１４が減速を開始してから移動が完了し、残留振動も収束するまでの期間での加速度データを考えればよく、この期間の開始時点と終了時点との間でドリフト量には大きな差は生じないと考えられるので、オフセットとドリフトとを一括して補正することができる。図４は、オフセット及びドリフトの補正を説明する図であり、動作完了であると推定される時刻の前後での平滑化波形を拡大して示している。動作完了であると推定される時刻は、例えば、平滑化データの値がゼロに接近し、その後はほとんど変化しなくなるような時刻として定めることができる。
【００３３】
まず、図２に示す平滑化波形の全区間における加速度の値が最大値Ｍａｘとなる時刻と最小値Ｍｉｎとなる時刻とを求める。加速度センサ２１の取り付け方向やロボットの移動方向によっては、出力される加速度信号の符号が加速時には負となり減速時には正となることがあることに注意して、最大値Ｍａｘとなる時刻と最小値Ｍｉｎとなる時刻のうちの遅い方の時刻を検出し、これが減速に対応するものとする。図示したものでは、最小値Ｍｉｎの時刻が減速に対応している。そしてこの時刻以降、平滑化波形は細かい変動はあるものの全体としてはゼロに向かって変化する。そこで、図４に示すように、加速度ゼロを中心とする閾値領域Ａを設定すると、平滑化波形を表す平滑化データの値は、最初のうちは閾値領域Ａの外側にあるが、時間の経過とともに閾値領域Ａの外側と内側との間を行き来するようになり、最終的には閾値領域Ａの中にのみ含まれるようになる。平滑化データの値がこの閾値領域Ａに最後に入った時刻をｘとして、時刻ｘ以降の平滑化データの値の平均値を算出する。この平均値はオフセットとドリフトの量に対応するものと考えられる。そこで平均値がゼロとなるように、平滑化データの値から平均値を差し引く。言い換えれば、平滑化波形を平均値の分だけ図示上下方向にシフトさせる。その結果、図４において破線Ｂで示されるように、オフセットとドリフトが除去された平滑化波形が得られる。閾値領域Ａの幅は、オフセットとドリフトの補正の処理によっては除去されない振動やオフセット、ドリフトの影響を受けないことを条件として、できるだけ小さな幅とすることが好ましい。このようにオフセットとドリフトの補正を行うことによって、加速度センサ２１における温度変化などの影響を排除して動作完了時刻をより精度よく識別できるようになる。
【００３４】
ある閾値による範囲を定めて、平滑化波形が最後にこの範囲に入ったときが動作完了時刻であるとすると、閾値の設定に動作完了時刻が依存することとなり、動作完了時刻を正しく算出することができない。そこで、動作完了時刻と推定される時刻の近傍の平滑化波形を、その推定される時刻を基準として時刻に関して前後に２分割し、分割して得られた２つの波形をそれぞれ別の関数で近似し、それらの関数の交点を座標を求めて動作完了時刻とする。ここでいう２つの関数の一方は、１次関数または２次関数であり、他方の関数は、加速度を表す変数をｙとして、オフセットとドリフトの補正を行っているときは、ｙ＝０であり、オフセットとドリフトの補正を行っていないときは、ｙ＝ａである。ａは、動作完了時刻と推定される時刻以降における平滑化データを近似する定数値である。オフセットとドリフトの補正を行っていないときは、平滑化波形が上述した閾値範囲Ａに最後に入った時刻を基準時として、基準時以前の平滑化波形を１次関数または２次関数で近似し、基準時以降の平滑化波形を定数値ａで近似することが好ましい。
【００３５】
図５は、上述のようにして演算部２５によって最終的に動作完了時刻を決定する処理を説明しており、図５に示される平滑化波形は、オフセットとドリフトの補正を行った後のものである。動作完了時刻は、ロボットの減速が終了する時刻であり、この時刻の近傍ではロボットの減速での加速度変化（減速曲線と呼ぶ）を１次関数で近似する。この１次関数で表される直線をＬとすれば、直線Ｌと加速度ゼロとの交点Ｅの時刻Ｔendが動作完了時刻であるとすることができる。そこで、オフセットとドリフトの補正を行った後の平滑化波形における極小値Ｍｉｎの座標を（ｔm，ａm）とする。ゼロ加速度検出用の閾値ａwcを予め定めておく。オフセットとドリフトを補正した後の平滑化波形において閾値ａwcに対応する時刻をｔwcとし、直線Ｌは点Ｃ（ｔwc，ａwc）も通過するものとする。そして、０以上１以下の任意の定数ｒaを用いて、直線Ｌのもう１つの通過点Ｈ（ｔh，ａh）を
ａh＝ｒa×（ａm−ａwc）＋ａwc
で定める。そして、オフセットとドリフトを補正した後の平滑化データの加速度がａwc及びａhとなる時刻をサーチしてｔwc及びｔhを求める。これにより、直線Ｌが点Ｃ及び点Ｈを通ることから直線Ｌを表す１次関数が一意に定まったことになり、動作完了時刻ｔendを
ｔend＝ｔwc−ａwc×（ｔh−ｔwc）／（ａh−ａwc）
により求めることができる。
【００３６】
ここで説明した方法では、１次関数によって減速曲線を近似して動作完了時刻ｔendを求めるので、また加速度に対応する時刻を求めるサーチの範囲も狭いので、演算が容易であり、またそのためのプログラム作成も容易である。ゼロ加速度検出用の閾値ａwcは、平滑化波形に残る振動の影響を受けない範囲でできるだけ小さい値であることが好ましい。定数ｒaとしては、通常、０．２５を好ましく使用することができる。定数ｒaが大きすぎると、減速曲線を１次関数で近似するという仮定が崩れることとなり、また、小さすぎると、平滑化波形に残る振動の影響を受けやすくなる。経験や実験結果に基づいて定数ｒaを定めることにより、より精度よく動作完了時刻ｔendを求めることができる。
【００３７】
上述の減速曲線を１次関数で近似する方法では、オフセットとドリフトとを補正した後の平滑化波形上の２点Ｃ，Ｈを通るものとして直線Ｌを定めている。その代わりに、点Ｃと点Ｈとの間の平滑化波形を最小二乗法によって１次関数にフィッティングし、最小二乗フィッティングによって得られた１次関数に基づいて動作完了時刻ｔendを求めてもよい。最小二乗法を用いるほうがより精度よく動作完了時刻ｔendを求めることができるが、その分、演算量が多くなる。
【００３８】
減速曲線を２次関数に近似して動作完了時刻ｔendを求めることもできる。オフセットとドリフトの補正を行った後の平滑化波形における極小値Ｍｉｎと上述の点Ｃを使用し、極小値Ｍｉｎが２次関数が表す放物線の頂点に対応し、かつ放物線上に点Ｃがあるとすればよく、時刻ｔm以降で２次関数が表す放物線が加速度ゼロと交わる点の時刻を動作完了時刻ｔendとすればよい。すなわち下記式によってｔendを定めればよい。
【００３９】
【数１】
2020059082.tif 000003
この場合は任意定数ｒaを用いることなく動作完了時刻ｔendを決定できるので、経験や実験によらずに精度よく動作完了時刻ｔendを決定できる。
【００４０】
以上のように判別装置２０において動作完了時刻が求められると、動作完了時刻は収束時間評価装置３０において利用される。収束時間評価装置３０は、例えば、波形記憶部２３内の加速度データを参照して、動作完了時刻から加速度が最後に収束判定閾値以内となる時刻ｔdまでの時間を求めて残留振動収束時間を決定する。また時刻ｔd以降の加速度データにおける加速度の最大値及び最小値を解析して、位置における残留振動振幅を算出する。さらに、加速度データを２重積分して変位を求め、さらにハイパスフィルタを通して変位から加速度センサの加速度オフセットの影響を除去することにより、変位における残留振動を分析することができる。このような処理を行う収束時間評価装置３０は、例えばパーソナルコンピュータ（ＰＣ）上で実行されるソフトウェアによって実現することができる。特に、ソフトウェアにより判別装置２０を実現する場合であれば、判別装置２０の機能と収束時間評価装置３０とを同じソフトウェアに組み込んで、動作完了時刻の判別と残留信号の評価とを有機的に結合して実行することができる。
【００４１】
以上説明した実施形態においては、ロボットに加速度センサ２１を取り付けた上で、加速度センサ２１から出力される加速度波形に対し、位相遅れのないフィルタ（特に中心化移動平均フィルタ）によるフィルタ処理を行って平滑化波形を得ることにより、加速度波形に重畳する振動の影響を除去してロボットの動作完了時刻を容易に識別できるようになる。平滑化波形に対してオフセットとドリフトの補正を行えば、より正確に動作完了時刻を判別できるようになる。さらに、推定される動作完了時刻の近傍で減速曲線を１次関数または２次関数で近似することにより、一層正確に動作完了時刻を判別できるようになる。また、フィルタ処理部２４及び演算部２５はソフトウェアによって実現でき、波形記憶部２３も一般的なコンピュータにおけるメモリを使用して実現できるから、例えば本実施形態の判別装置２０は、加速度センサ２１からのデータがデジタルデータとして得られるのであれば、パーソナルコンピュータ（ＰＣ）上でソフトウェアを実行することにより実現できる。また本実施形態では、ロボットに取り付けた加速度センサ２１からのデータをＰＣソフトウェアで分析することにより動作完了時刻を判別することができるので、ロボットのアームやハンドの駆動を制御するロボットコントローラから内部動作状態や信号を取得する必要なく、簡便に動作完了時刻を判別することができる。
【００４２】
上述の実施形態ではロボットに加速度センサを取り付けて加速度に基づいて動作完了時刻を判別している。しかしながら本発明では、加速度以外にも、動作完了時刻の直前ではゼロでなく動作完了時刻以降はゼロとなる物理量を用いて動作完了時刻を判別することもできる。例えば、ロボットのアームやハンドの速度を検出して上述と同様の処理を行うことにより、動作完了時刻を判別することができる。すなわち本発明の実施のためには、最低限、ロボットのアームまたはハンドの速度または加速度を検出する動作検出手段と、位相遅れを有しないフィルタによって構成されて動作検出手段からの信号に含まれる振動成分を除去して平滑化信号を生成するフィルタ手段とを設ければよいことになる。速度を使用する場合には、例えば、レーザトラッカーなどによってロボットのアームまたはハンドの位置を追跡し、検出された位置データに対して数値微分を行って速度に変換した波形データを取得し、この波形データに対して上述と同様の処理を行えばよい。実際には、レーザトラッカーなどを設けることは設備が大掛かりになるから、小型化なものを容易に入手できる加速度センサ２１をロボットに取り付けて加速度に基づいて動作完了時刻を判別する方が実施が容易である。
【符号の説明】
【００４３】
１１…基台；１２，１３…アーム；１４…ハンド；２０…判定装置；２１…加速度センサ；２２…アナログ／デジタル変換器；２３…波形記憶部；２４…フィルタ処理部；２５…演算部；３０…収束時間評価装置。
【図１】
2020059082.tif 000004
【図２】
2020059082.tif 000005
【図３】
2020059082.tif 000006
【図４】
2020059082.tif 000007
【図５】
2020059082.tif 000008