(57)【要約】  【課題】動作速度の如何に関わらず一定の内回り軌跡を生成することが可能な産業用ロボットの動作軌跡生成方法を提供する。  【解決手段】複数の教示点（Ｐ１、Ｐ２、Ｐ３）間を連続して動作する場合に、各教示点Ｐ１、Ｐ２、Ｐ３における姿勢を表す回転行列をそれぞれＲ１、Ｒ２、Ｒ３とし、姿勢Ｒ１から姿勢Ｒ２への変化量に関する等価回転角ベクトルＫ１２、および姿勢Ｒ２から姿勢Ｒ３への変化量に関する等価回転角ベクトルＫ２３をそれぞれ算出し、これらの等価回転角ベクトルＫ１２、Ｋ２３に基づいて、中間の教示点Ｐ２近傍の仮想的な内回り軌跡を算出し、この仮想的な内回り軌跡に対して指定された回転速度によりサンプリング補間を行い、各サンプリング補間点において移動方向に隣接するサンプリング補間点への変化量に関する等価回転角ベクトルを算出し、算出された等価回転角ベクトルに基づいて動作軌跡を生成する。  【選択図】図１
2005275484.tif 000002
【特許請求の範囲】
【請求項１】
産業用ロボットが複数の教示点（Ｐ１、Ｐ２、Ｐ３）間を連続して動作する場合に、移動方向の前後に隣接する教示点が存在する中間の教示点（教示点Ｐ２）近傍における動作軌跡を決定する、産業用ロボットの動作軌跡生成方法であって、
教示点Ｐ１における姿勢を表す回転行列をＲ１、教示点Ｐ１の移動方向に隣接する教示点Ｐ２における姿勢を表す回転行列をＲ２、教示点Ｐ２の移動方向に隣接する教示点Ｐ３における姿勢を表す回転行列をＲ３とし、
前記教示点Ｐ１における姿勢Ｒ１から前記教示点Ｐ２における姿勢Ｒ２への変化量Ｒ１２に関する等価回転角ベクトルＫ１２、および前記教示点Ｐ２における姿勢Ｒ２から前記教示点Ｐ３における姿勢Ｒ３への変化量Ｒ２３に関する等価回転角ベクトルＫ２３を算出し、
前記等価回転角ベクトルＫ１２およびＫ２３に基づいて、前記中間の教示点（教示点Ｐ２）近傍の仮想的な内回り軌跡を算出し、
該仮想的な内回り軌跡に対して指定された回転速度によりサンプリング補間を行い、
該サンプリング補間により設定された各サンプリング補間点において移動方向に隣接するサンプリング補間点への変化量に関する等価回転角ベクトルを算出し、
該算出された各サンプリング補間点における等価回転角ベクトルに基づいて動作軌跡を生成することを特徴とする産業用ロボットの動作軌跡生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ティーチングプレイバック方式により動作する産業用ロボットにおける動作軌跡の生成方法に関し、特に、ロボットアーム先端に装備されたツールの姿勢が動作中に変化するような使用形態における動作軌跡生成方法に関する。
【背景技術】
【０００２】
現在、多くの産業用ロボットでは、ティーチングプレイバックと呼ばれる方式を用いて、ティーチング（教示）時に複数の目標点（教示点）を教示することにより、様々な動作を実現するようにしている。ここで、産業用ロボットが、例えば、図８−１に示すように、複数の教示点Ｐ１、Ｐ２、・・・、Ｐ５をこの順序で動作する場合を想定する。この場合には、ロボット本体や駆動系の保護、および生産性向上のためのサイクルタイム短縮を目的として、各教示点の近傍においてロボットの動作方向や速度が急激に変化することがないように、通常は各教示点において図８−２に示すような内回りの軌跡を動作するようにしている。これにより、ロボットの動作速度を可能な限り減速させずに各教示点の近傍を通過させるようにしている。
【０００３】
従来、その具体的な方法としては、例えば特許文献１では、各教示点において速度が０になるように速度カーブを作り、その速度カーブが連続的に繋がるように加減速領域を重ねる方法が提案されている。また、この特許文献１に係る方法を改良したものとして、例えば特許文献２や特許文献３では、速度カーブを重ねることにより教示点間を滑らかに繋ぐ方法が提案されている。これらの特許文献に係る方法は、いずれも直線で教示点間が補間される場合に適用可能である。
【０００４】
ところで、これらの特許文献に係る方法では、例えば図２−１に示すように、ツール１の先端（図２−１において実線の矢印の先端）が一点に固定された状態において、ツール１の姿勢がＰ１→Ｐ２→Ｐ３の順序で大きく変化するような動作形態はサポートされていない。しかし、姿勢変化の角速度カーブを重ね合せることにより、図２−２に示すように滑らかにツール姿勢の変化を繋ぐことは、前述の特許文献に基づいてそれほど困難なく達成できる。
【特許文献１】特公平１−２７４４３号公報
【特許文献２】特公平６−１００９３０号公報
【特許文献３】特開平８−３３９２２２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、前述した特許文献に開示されているような速度カーブや角速度カーブを重ね合わせて連続軌跡を生成する方法では、図９に示すように動作速度が変化すると教示点近傍を通過する動作軌跡が変わってしまうという欠点がある。この点について具体的に述べるために、ロボットに教示した動作軌跡が正しいか否かを確認する作業を例にあげる。この場合、安全を図るために、あらかじめ実際のロボット動作における指定速度よりも低速でロボットを動作させ、そのときの動作軌跡が正しいことを確認するという作業を行い、しかる後、実際のロボット動作における指定速度にてロボットを動作させることになる。しかし、前述したように動作速度が変化すると教示点近傍を通過する動作軌跡が変わってしまうので、低速時のロボット動作においてはその動作軌跡が正しかったとしても、高速時のロボット動作においてもその動作軌跡が正しいとは必ずしも言い切れない。したがって、前述した特許文献に開示されている方法では、ロボットに教示した動作軌跡が正しいか否かを確認する作業において、その信頼性が確保できないという問題がある。そのため、シーリング作業など、動作軌跡の正確さが特に要求させる作業をロボットに行わせる場合には、前述した特許文献に開示されている方法は適用できないという問題がある。
【０００６】
また、図１０は前述した特許文献に開示されている方法で速度カーブを重ね合わせた場合における教示点間の線速度の変化を示したグラフであるが、これに示すように速度カーブの重ね合わせ付近で線速度の低下が見られる。このような速度低下なく教示点を繋ぐためには、教示点間の内角が１８０°である必要があり、教示点間の内角が小さくなればなるほど速度低下が顕著になるという問題もある。
【０００７】
以上にあげた問題点の解決法としては、並進軌跡に関しては、指定された半径をもつ円弧軌跡を計算し、これを教示点付近に挿入し、その軌跡上を通過するように計画する方法がある。しかし、前述した図２−１に示すような先端を一点に固定されたツールの大きな姿勢変化に対しては、内回り円弧の実軌跡を描くことが不可能であり、前述した特許文献に開示されているような速度カーブを重ねる方法しか解決方法がなかった。
【０００８】
本発明は、前述した従来技術の問題点を解決するためになされたものであり、ロボットの動作速度の如何に関わらず一定の内回り軌跡を生成することが可能な、産業用ロボットの動作軌跡生成方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
前述した目的を達成するために、本発明では、産業用ロボットが複数の教示点（Ｐ１、Ｐ２、Ｐ３）間を連続して動作する場合に、移動方向の前後に隣接する教示点が存在する中間の教示点（教示点Ｐ２）近傍における動作軌跡を決定する、産業用ロボットの動作軌跡生成方法であって、教示点Ｐ１における姿勢を表す回転行列をＲ１、教示点Ｐ１の移動方向に隣接する教示点Ｐ２における姿勢を表す回転行列をＲ２、教示点Ｐ２の移動方向に隣接する教示点Ｐ３における姿勢を表す回転行列をＲ３とし、前記教示点Ｐ１における姿勢Ｒ１から前記教示点Ｐ２における姿勢Ｒ２への変化量Ｒ１２に関する等価回転角ベクトルＫ１２、および前記教示点Ｐ２における姿勢Ｒ２から前記教示点Ｐ３における姿勢Ｒ３への変化量Ｒ２３に関する等価回転角ベクトルＫ２３を算出し、前記等価回転角ベクトルＫ１２およびＫ２３に基づいて、前記中間の教示点（教示点Ｐ２）近傍の仮想的な内回り軌跡を算出し、この仮想的な内回り軌跡に対して指定された回転速度によりサンプリング補間を行い、このサンプリング補間により設定された各サンプリング補間点において移動方向に隣接するサンプリング補間点への変化量に関する等価回転角ベクトルを算出し、この算出された各サンプリング補間点における等価回転角ベクトルに基づいて動作軌跡を生成することを特徴とする産業用ロボットの動作軌跡生成方法を提供した。
【００１０】
係る構成によれば、中間の教示点（教示点Ｐ２）とその前後の教示点Ｐ１、Ｐ３とのそれぞれの変化量から、中間の教示点（教示点Ｐ２）の前後における姿勢の変化を表現する等価回転角ベクトルＫ１２およびＫ２３を算出し、この等価回転角ベクトルＫ１２およびＫ２３に基づいて中間の教示点（教示点Ｐ２）の近傍に仮想的な内回り軌跡を設定し、この内回り軌跡に沿って連続的に姿勢変化軌跡すなわち動作軌跡を繋ぐようにしている。等価回転角ベクトルＫ１２およびＫ２３には速度に関連する要素がないので、動作軌跡が動作速度の影響を受けることはない。したがって、ロボットの動作速度が変化しても動作軌跡は一定となる。
【発明の効果】
【００１１】
本発明によれば、動作軌跡が動作速度による影響を受けることはないので、ロボットの動作速度の如何に関わらず一定の内回り軌跡を生成することが可能となった。したがって、あらかじめ実際のロボット動作における指定速度よりも低速でロボットを動作させ、そのときの動作軌跡が正しいことを確認するという作業を行い、しかる後、実際のロボット動作における指定速度にてロボットを動作させるようにした場合でも、確認作業の信頼性を確保することができるものとなった。
【発明を実施するための最良の形態】
【００１２】
以下、本発明を実施するための最良の形態について、図面を参照して説明する。図１は、本実施形態に係る産業用ロボットの動作軌跡生成方法に関する処理の流れを示すフローチャートである。また、図２−１は、ツールの姿勢変化について示した説明図である。より具体的には、この図２−１は、ツール１の先端位置（図２−１において実線の矢印の先端位置）を一致させた状態、言い換えれば、ツール１の先端を一点に固定させた状態において、ツール１の姿勢すなわちツール１をアーム先端に把持した図示しないロボットの姿勢を、教示点Ｐ１、Ｐ２、Ｐ３の順序で変化させた場合を示したものである。
【００１３】
ここでは、図２−１に示した各教示点Ｐ１、Ｐ２、Ｐ３をこの順序で通過するようにロボットを連続動作させる場合における、動作軌跡の中間の教示点となる教示点Ｐ２の近傍における内回りの動作軌跡の算出方法について説明する。
【００１４】
まず、図１のフローチャートのステップ１について説明する。図２−１において、教示点Ｐ１の姿勢を表す回転行列をＲ１、教示点Ｐ１の移動方向に隣接する教示点Ｐ２の姿勢を表す回転行列をＲ２、教示点Ｐ２の移動方向に隣接する教示点Ｐ３の姿勢を表す回転行列をＲ３とする。なお、ここでいう教示点の姿勢とは、各教示点におけるツール１の姿勢すなわちツール１をアーム先端に把持した図示しないロボットの姿勢をいう。これらの回転行列Ｒ１、Ｒ２、Ｒ３は３次正方行列の構造を有し、任意の回転行列Ｒは式（１）に示すように表される。
【００１５】
【数１】
2005275484.tif 000003
【００１６】
この式（１）に示した３次正方行列の回転行列Ｒに対して、よく知られた等価回転角表現を適用すると、式（２）に示すようになる。
【００１７】
【数２】
2005275484.tif 000004
【００１８】
なお、式（２）において、Ｋは等価回転角ベクトルであり、θは姿勢変化の回転角度である。図４に示すように、等価回転角ベクトルＫの方向が姿勢変化の回転軸方向を示していることになる。
【００１９】
ここで、教示点Ｐ１の姿勢Ｒ１から教示点Ｐ２の姿勢Ｒ２への変化量Ｒ１２について考えると、これは式（３）に示すように表される。
【００２０】
【数３】
2005275484.tif 000005
【００２１】
なお、式（３）において、行列の右上添字Ｔは、その行列の転置行列を表している。なお、この式（３）にて表される教示点Ｐ１の姿勢Ｒ１から教示点Ｐ２の姿勢Ｒ２への変化量Ｒ１２は回転行列であり、前述した式（１）と同様に３次正方行列の構造を有しており、さらに前述した式（２）に示すように等価回転角表現が可能である。式（３）にて表される教示点Ｐ１の姿勢Ｒ１から教示点Ｐ２の姿勢Ｒ２への変化量Ｒ１２に関する等価回転角ベクトルＫ１２は、教示点Ｐ１の姿勢Ｒ１から等価回転角ベクトルＫ１２の方向に等価回転角ベクトルＫ１２の大きさだけ回転させると、教示点Ｐ２の姿勢Ｒ２になることを意味している。
【００２２】
また、教示点Ｐ２の姿勢Ｒ２から教示点Ｐ３の姿勢Ｒ３への変化量Ｒ２３についても、前述した式（３）と同様に式（４）に示すように表され、この変化量Ｒ２３に関する等価回転角ベクトルＫ２３についても前述の等価回転角ベクトルＫ１２と同様に計算可能である。
【００２３】
【数４】
2005275484.tif 000006
【００２４】
以上のようにして、図１のフローチャートのステップ１、すなわち教示点Ｐ１から教示点Ｐ２、および教示点Ｐ２から教示点Ｐ３への、それぞれの姿勢変化に関する等価回転角ベクトルＫ１２およびＫ２３を求める。
【００２５】
次に、図１のフローチャートのステップ２について説明する。前述したステップ１において算出した等価回転角ベクトルＫ１２およびＫ２３を、図５に示すように、仮想的な３次元空間のベクトルとして考える。これにより、これらのベクトルＫ１２、Ｋ２３の中点で、通常の並進移動の内回り円弧軌跡と同様な、仮想的な内回り軌跡を計算することができる。
【００２６】
最後に、図１のフローチャートのステップ３について説明する。前述したステップ２において算出した仮想的な内回り軌跡について、図６に示すように、その軌跡上を指定された回転速度によってサンプリング補間する。そして、各サンプリング補間点を等価回転角の３次元ベクトルとみなすことにする。すなわち、各サンプリング補間点において、前述したステップ１における処理と同様に、移動方向に隣接するサンプリング補間点への変化量に関する等価回転角ベクトルを求めることにより、各サンプリング補間点でのツール１の取るべき姿勢を計算することができる。
【００２７】
図１のフローチャートのステップ３にて算出された各サンプリング補間点でのツール１の取るべき姿勢に基づいて、図２−１に示した各教示点Ｐ１、Ｐ２、Ｐ３をこの順序で通過するようにロボットを連続動作させる場合の動作軌跡をプロットすると、図７の太字実線に示すようになる。この図７に示すように、本実施形態におけるロボットの動作軌跡は、教示点Ｐ２の近傍において内回りのものとなる。したがって、本実施形態における動作軌跡生成方法を適用すれば、各教示点の近傍においてロボットの動作方向や速度が急激に変化することがなくなるので、ロボット本体や駆動系が保護されるとともに、サイクルタイムが短縮され生産性が向上することになる。
【００２８】
また、前述したように、速度カーブや角速度カーブを重ね合わせて連続軌跡を生成する従来の方法では、速度が変化すると教示点近傍を通過する動作軌跡が変わってしまうという欠点があった。しかし、本実施形態においては、前述した式（１）〜式（４）からもわかるように速度に関連する要素はないので、動作軌跡が動作速度による影響を受けることはない。そのため、あらかじめ実際のロボット動作における指定速度よりも低速でロボットを動作させ、そのときの動作軌跡が正しいことを確認するという作業を行い、しかる後、実際のロボット動作における指定速度にてロボットを動作させるようにした場合でも、確認作業の信頼性を確保することができる。したがって、本実施形態における動作軌跡生成方法は、シーリング作業など動作軌跡の正確さが特に要求させる作業をロボットに行わせる場合に、特に有効であるといえる。
【００２９】
なお、前述の実施形態では各教示点Ｐ１、Ｐ２、Ｐ３のそれぞれのツール先端位置（図２−１において実線の矢印の先端位置）は一致していたが、本発明はツール先端位置が異なる場合にも適用可能である。すなわち、図３−１に示すように、ツール先端位置（図３−１において各矢印の先端位置）が異なる場合でも、図３−２および図３−３に示すように、姿勢変化と並進変化とを別々に考え、各変化について独立して動作軌跡を計算することにより、前述した実施形態のようにツール先端位置が一致している場合と同様に、本発明に係る動作軌跡生成方法を適用することができる。
【図面の簡単な説明】
【００３０】
【図１】本発明の実施形態に係る産業用ロボットの動作軌跡生成方法に関する処理の流れを示すフローチャートである。
【図２−１】ツールの姿勢変化について示した説明図である。
【図２−２】ツールの姿勢変化を滑らかに繋ぐことについて示した説明図である。
【図３−１】ツール先端位置が異なる場合について示した説明図である。
【図３−２】ツールの姿勢変化について示した説明図である。
【図３−３】ツールの並進変化について示した説明図である。
【図４】等価回転角ベクトルＫについて示した説明図である。
【図５】仮想的な３次元空間のベクトルとして考えたときの等価回転角ベクトルＫ１２、Ｋ２３について示した説明図である。
【図６】サンプリング補間について示した説明図である。
【図７】本発明の実施形態に係る産業用ロボットの動作軌跡生成方法を適用した場合のロボットの動作軌跡について示した説明図である。
【図８−１】複数の教示点Ｐ１、Ｐ２、・・・Ｐ５について示した説明図である。
【図８−２】複数の教示点Ｐ１、Ｐ２、・・・Ｐ５を移動する場合における内回りの動作軌跡について示した説明図である。
【図９】指定速度の変化により教示点近傍を通過する動作軌跡が変わってしまう点について示した説明図である。
【図１０】従来技術において速度カーブを重ね合わせた場合における教示点間の線速度の変化を示したグラフである。
【図１】
2005275484.tif 000007
【図２−１】
2005275484.tif 000008
【図２−２】
2005275484.tif 000009
【図３−１】
2005275484.tif 000010
【図３−２】
2005275484.tif 000011
【図３−３】
2005275484.tif 000012
【図４】
2005275484.tif 000013
【図５】
2005275484.tif 000014
【図６】
2005275484.tif 000015
【図７】
2005275484.tif 000016
【図８−１】
2005275484.tif 000017
【図８−２】
2005275484.tif 000018
【図９】
2005275484.tif 000019
【図１０】
2005275484.tif 000020