(57)【要約】【課題】ワークの側面やロール面に対して肉盛溶接等の処理を行う場合、一筆書きのような１本の螺旋状に処理を行うことにより、ワークの側面やロール面に均一な処理を行うことができるとともに、その作業を実行するプログラムを簡単に教示できる産業用ロボット制御装置を提供する。【解決手段】螺旋肉盛動作のためにマニピュレータ及びポジショナの手動運転が行われて入力された開始点Ｐｓ，終了点Ｐｅの教示データ等は補助記憶装置に格納される。ロボット制御装置のＣＰＵは螺旋命令のＴＣＰの移動速度Ｖ、螺旋ピッチＰｉ等に基づき補間演算して教示された開始点Ｐｓから終了点Ｐｅの螺旋軌跡上の補間点位置（姿勢）をＸｎ＝Ｒｓ・ｃｏｓ（θｎ）、Ｙｎ＝Ｒｓ・ｓｉｎ（θｎ）、Ｚｎ＝θｎ・κで求める。ＣＰＵは算出した螺旋軌跡の補間点毎の各位置姿勢に基づいてマニピュレータの各軸値毎の動作量を求めて、マニピュレータ、ポジショナを制御する。【選択図】図７
2008130022.tif 000002
【特許請求の範囲】
【請求項１】
ワークを回転するワーク回転手段と、前記ワークに対して作業を実施する作業手段を有するマニピュレータとを制御して協調作業を行わしめる産業用ロボット制御装置において、
前記ワーク回転手段と前記マニピュレータを動かして前記作業手段の螺旋動作区間を教示するとともに、螺旋命令のパラメータを教示する教示手段と、
前記螺旋動作区間及び前記パラメータを記憶する記憶手段と、
前記パラメータに基づき補間演算して螺旋動作区間における前記作業手段の螺旋軌跡を生成する演算手段とを備えた産業用ロボット制御装置。
【請求項２】
前記螺旋命令のパラメータが、作業手段の移動速度及び螺旋ピッチを含むことを特徴とする請求項１に記載の産業用ロボット制御装置。
【請求項３】
前記ワークは、螺旋動作区間において、径が一定のロール面を有し、
前記演算手段が、前記ロール面に対して螺旋軌跡を生成するように、前記径、及び前記パラメータに基づいて補間演算して螺旋動作区間における前記作業手段の螺旋軌跡を生成することを特徴とする請求項２に記載の産業用ロボット制御装置。
【請求項４】
前記ワークは、螺旋動作区間において、ロール面が円錐面に形成され、
前記演算手段が、前記ロール面に対して螺旋軌跡を生成するように、前記螺旋動作区間における開始点と終了点における各径、及び前記パラメータに基づいて補間演算して螺旋動作区間における前記作業手段の螺旋軌跡を生成することを特徴とする請求項２に記載の産業用ロボット制御装置。
【請求項５】
前記ワークは、前記ワーク回転手段の回転中心軸に直交するとともに螺旋動作区間において平面を有する端面を有し、
前記演算手段が、前記端面に対して螺旋軌跡を生成するように、前記螺旋動作区間における開始点と終了点のいずれかの径、及び前記パラメータに基づいて補間演算して螺旋動作区間における前記作業手段の螺旋軌跡を生成することを特徴とする請求項２に記載の産業用ロボット制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、産業用ロボット制御装置に関するものである。
【背景技術】
【０００２】
ロボットを使用した肉盛溶接作業では、安定した精度の高い溶接品質を得るため、ポジショナーや外部位置決め軸でワークを動かし、下向き溶接になるよう教示することができる（特許文献１）。
【０００３】
又、ロボットを使用した肉盛溶接作業は面をなぞるようにトーチを動かす溶接であるため、面全体を肉盛するプログラムは多数の位置を教示する必要がある。そのため効率のよい教示方法として、面の一部を肉盛溶接するプログラムを教示して、それをもとに面全体に拡張する手法が使われてきた。例えば、円周肉盛溶接の場合、半径がピッチ分違う複数の円周溶接プログラムが作成されて、これらのプログラムが連続的に実行されることにより溶接が行われている（特許文献２）。
【特許文献１】特開平１１−１２９０７０号公報
【特許文献２】特開２００１−３００７２６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、従来の肉盛溶接作業のプログラム教示では、肉盛溶接を螺旋状に行う場合、１つの作業パターンを拡大・縮小したり、或いはシフトして複数のパターンを作り、それを組み合わせて全体として螺旋状にして作業するような手法が用いられている。この方法では各パターンのつなぎが必要となって、同つなぎ部分で溶接ビードが均一の厚さでなくなる。たとえば半径がピッチ分違う複数の円周溶接プログラムを作成し、それらを連続的に実行する円周溶接の場合、各円周溶接の溶接開始／終了点でビードをつなぐ必要から溶接区間をラップさせる必要が有り、ラップ部分とその周囲のビードに凹凸ができてしまう。そのため後工程で、それらの凹凸を無くし均一にするための加工作業が必要となる。
【０００５】
又、汎用の産業用ロボットを使用して、連続的にワークの表面に対し螺旋状に塗布を行う場合も、肉盛溶接と同様に１つの作業パターンを拡大・縮小したり、或いはシフトして複数のパターンを作り、それを組み合わせて全体として螺旋状にして作業するような手法が用いられる。このため、螺旋状にして塗布を行う場合も同様につなぎ部分が必要となり、このため、つなぎ部分での塗装膜の膜厚が厚くなり、つなぎ部分以外との塗装膜の厚みが不均一になる問題がある。
【０００６】
本発明の目的は、ワークの側面やロール面に対して肉盛溶接等の処理を行う場合、一筆書きのような１本の螺旋状に処理を行うことにより、ワークの側面やロール面に均一な処理を行うことができるとともに、その作業を実行するプログラムを簡単に教示できる産業用ロボット制御装置を提供することにある。
【課題を解決するための手段】
【０００７】
上記問題点を解決するために、請求項１の発明は、ワークを回転するワーク回転手段と、前記ワークに対して作業を実施する作業手段を有するマニピュレータとを制御して協調作業を行わしめる産業用ロボット制御装置において、前記ワーク回転手段と前記マニピュレータを動かして前記作業手段の螺旋動作区間を教示するとともに、螺旋命令のパラメータを教示する教示手段と、前記螺旋動作区間及び前記パラメータを記憶する記憶手段と、前記パラメータに基づき補間演算して螺旋動作区間における前記作業手段の螺旋軌跡を生成する演算手段とを備えた産業用ロボット制御装置を要旨とするものである。
【０００８】
請求項２の発明は、請求項１において、前記螺旋命令のパラメータが、作業手段の移動速度及び螺旋ピッチを含むことを特徴とする。
請求項３の発明は、請求項２において、前記ワークは、螺旋動作区間において、径が一定のロール面を有し、前記演算手段が、前記ロール面に対して螺旋軌跡を生成するように、前記径、及び前記パラメータに基づいて補間演算して螺旋動作区間における前記作業手段の螺旋軌跡を生成することを特徴とする。
【０００９】
請求項４の発明は、請求項２において、前記ワークは、螺旋動作区間において、ロール面が円錐面に形成され、前記演算手段が、前記ロール面に対して螺旋軌跡を生成するように、前記螺旋動作区間における開始点と終了点における各径、及び前記パラメータに基づいて補間演算して螺旋動作区間における前記作業手段の螺旋軌跡を生成することを特徴とする。
【００１０】
請求項５の発明は、請求項２において、前記ワークは、前記ワーク回転手段の回転中心軸に直交するとともに螺旋動作区間において平面を有する端面を有し、前記演算手段が、前記端面に対して螺旋軌跡を生成するように、前記螺旋動作区間における開始点と終了点におけるいずれかの径、及び前記パラメータに基づいて補間演算して螺旋動作区間における前記作業手段の螺旋軌跡を生成することを特徴とする。
【発明の効果】
【００１１】
請求項１の発明によれば、ワークの側面やロール面に対して肉盛溶接等の処理を行う場合、一筆書きのような１本の螺旋状に処理を行うことができ、その結果、ワークの側面やロール面に均一な処理を行うことができるとともに、その作業を実行するプログラムを簡単に教示できる。又、本発明は、教示が簡単なことから、作業準備時間の大幅な短縮を図ることができる。
【００１２】
請求項２の発明によれば、作業手段の移動速度及び螺旋ピッチに基づいて補間演算することにより螺旋動作区間における作業手段の螺旋軌跡の生成を容易に行うことができる。
請求項３の発明によれば、螺旋動作区間において、径が一定のロール面を有するワークに対して、肉盛溶接等の処理を行う場合、一筆書きのような１本の螺旋状に処理を行うことができ、その結果、ワークのロール面に均一な処理を行うことができるとともに、その作業を実行するプログラムを簡単に教示できる。
【００１３】
請求項４の発明によれば、螺旋動作区間において、ロール面が円錐面に形成されているワークに対して、肉盛溶接等の処理を行う場合、一筆書きのような１本の螺旋状に処理を行うことができ、その結果、ワークのロール面に均一な処理を行うことができるとともに、その作業を実行するプログラムを簡単に教示できる。
【００１４】
請求項５の発明によれば、ワーク回転手段の回転中心軸に直交するとともに螺旋動作区間において平面を有する端面を備えたワークに対して、肉盛溶接等の処理を行う場合、一筆書きのような１本の螺旋状に処理を行うことができ、ワークの側面（すなわち、端面）に均一な処理を行うことができるとともに、その作業を実行するプログラムを簡単に教示できる。
【発明を実施するための最良の形態】
【００１５】
（第１実施形態）
以下、本発明の産業用ロボット制御装置を、肉盛溶接を行うロボット制御装置３０に具体化した第１実施形態を図１〜８を参照して説明する。
【００１６】
図１は本実施形態で用いる産業用ロボットの制御システムを示す。産業用ロボットの制御システムには、マニピュレータ１０、ポジショナ２０、前記マニピュレータ１０とポジショナ２０とを制御するロボット制御装置３０、及び溶接電圧を出力して溶接電流を通電する溶接電源装置４０が設けられている。
【００１７】
マニピュレータ１０は複数のアームを備えて、各アームを連結する関節を介して駆動される。本実施形態のマニピュレータ１０は６自由度を有するが、６自由度に限定されるものではなく６自由度以外の複数の自由度を有していてもよい。マニピュレータ１０の先端アームの先端には作業手段（すなわち、ツール）としてのトーチ１１が取付けられ、トーチ１１を用いてワークＷ（被溶接物）に対してアーク溶接（溶接）が行われる。本実施形態のポジショナ２０は、円筒状のワークＷをポジショナ２０の設置面と平行に、すなわち水平に支持して回転駆動可能とされるとともに水平に配置される旋回軸（図示しない）を有する。なお、前記旋回軸は図示しないサーボモータにて駆動される。そして、ポジショナ２０は、マニピュレータ１０のトーチ１１と対向し、ワークＷを回転させて当該ワークをトーチ１１による溶接に適する状態とする。
【００１８】
前記ロボット制御装置３０は、図２に示すように、本ロボット制御装置３０の制御中枢となるＣＰＵ（中央演算装置）３１、マニピュレータ１０の作業や動作を規定する教示プログラムの各バッファとして機能するＲＡＭ３２、各種制御プログラムが格納されるＲＯＭ３３を備えている。さらに、ロボット制御装置３０は、マニピュレータ１０及びポジショナ２０に対して手動制御によって教示された教示プログラムが格納されるメモリ等からなる補助記憶装置３５、及び、手動制御時に使用し、ＴＰ３６が接続されるティーチングペンダントＩ／Ｆ（インターフェース）３４を備えている。又、前記ＴＰ３６は、マニピュレータ１０を手動制御するときにオペレータによって操作され、所定の操作情報が表示される表示装置３６ａと所定のデータの入力に用いるキーボード３６ｂとを備えている。このＴＰ３６は、マニピュレータ１０に前記教示プログラムを教示する教示手段として用いる。又、補助記憶装置３５は、螺旋動作区間を含む教示データ、螺旋命令の各種パラメータ及び教示プログラムを記憶する記憶手段に相当する。
【００１９】
さらに、ロボット制御装置３０は、サーボドライバＩ／Ｆ３８を備えている。又、サーボドライバＩ／Ｆ３８には、マニピュレータ１０の各関節を駆動する前記した複数のサーボドライバ（サーボ機構）３８ａが接続されている。そして、サーボドライバ３８ａには、各サーボドライバ３８ａによって制御可能な状態で、前記関節に設けられたサーボモータ１３ａ〜１３ｆが接続されている。又、ＴＰ３６によりマニピュレータ１０とポジショナ２０の動作が可能となっている。
【００２０】
以上説明したＣＰＵ３１、ＲＡＭ３２、ＲＯＭ３３、ティーチングペンダントＩ／Ｆ３４、補助記憶装置３５、ＴＰ３６、及びサーボドライバＩ／Ｆ３８は、バス（ＢＵＳ）３９を介して相互に接続されている。
【００２１】
さて、上記のように構成された産業用ロボットの制御システムの作用を説明する。図３は、プログラム編集のためのフローチャートである。
まず、Ｓ１０では、オペレータはＴＰ３６のキーボード３６ｂを使用して、螺旋肉盛動作のために、マニピュレータ１０及びポジショナ２０の手動運転を行って、開始点Ｐｓ，終了点Ｐｅの教示データ及び溶接条件を入力する（図５参照）。ここで、溶接条件は、溶接速度（すなわち、ＴＣＰの移動速度Ｖ）、螺旋ピッチＰｉ、螺旋の回転方向、溶接電流、溶接電圧等がある。
【００２２】
Ｓ１２において、ＣＰＵ３１は、Ｓ１０で入力された教示データや溶接条件を螺旋肉盛のための教示プログラムに編集して補助記憶装置３５に格納し、このプログラム編集処理を終了する。
【００２３】
ここで、前記格納された教示プログラムにおいて、肉盛動作の命令は、Ｓpiralという名前で表わされる。そして、本実施形態の教示プログラムは、開始点Ｐｓから終了点Ｐｅの螺旋動作区間が同径を有する円柱状のワークＷのロール面Ｗｒに対して、螺旋状に肉盛溶接を行うためのものである。ここで、第１実施形態での螺旋動作区間は、ロール面Ｗｒにおいて開始点Ｐｓと終了点Ｐｅの間の範囲である。
【００２４】
Ｓpiral命令（すなわち、螺旋命令）は、例えば、下記のように記述される。
Ｓpiral    Ｖel  Ｐｂ  ｐｉ  Ｄir
なお、ＶelはＴＣＰの移動速度（溶接速度）、Ｐｂは目標点（終了点）のトーチ１１の位置姿勢（すなわち、終了点Ｐｅ）である。又、Ｐｉは螺旋ピッチ（ｍｍ）を表わす（図５参照）。又、Ｄirは螺旋の回転方向を示し、＋が右ねじ方向であり、−が左ねじ方向である。
【００２５】
そして、Ｓpiral命令は、開始点（Ｓpiral命令の直前に教示された位置）から目標位置（終了点）まで指定ピッチでポジショナ２０の回転軸を螺旋中心軸として指定の回転方向にＴＣＰ軌跡が螺旋動作する命令である。なお、螺旋ピッチＰｉは溶接条件で決まるビード幅を基に指定される。ここでは、螺旋ピッチＰｉは、ワークＷのロール面Ｗｒを均一にビードで覆う肉盛加工が可能となる量で設定されるが、この値に限定されるものではない。又、Ｓpiral命令でトーチ１１が開始点Ｐｓから終了点Ｐｅに移動する間、ロールは、（Ｐｅ−Ｐｓ間距離）／（螺旋ピッチＰｉ）を整数化した回数分（すなわち、商の分）少なくとも回ることを意味する。
【００２６】
ここで、前記ＴＣＰの移動速度Ｖ（溶接速度）、及び螺旋ピッチＰｉは螺旋命令のパラメータに相当する。
次に、産業用ロボットの制御システムにおける肉盛（螺旋）動作（プログラム再生）について説明する。図４は、教示プログラムが読み出されてロボット制御装置３０のＣＰＵ３１にて実行される教示プログラム再生のフローチャートである。
【００２７】
オペレータが、Ｓpiral命令の含まれた教示プログラムを、ＴＰ３６により指定して起動信号を入力すると、Ｓ２０においてロボット制御装置３０のＣＰＵ３１はその教示プログラムを補助記憶装置３５から読出す。続いて、ＣＰＵ３１はＳ２２において、教示プログラムのＳpiral命令（命令セット）を解釈する、そして、Ｓ２４〜Ｓ３０において、記録された命令を逐次実行する。
【００２８】
Ｓ２４では、ＣＰＵ３１はＳpiral命令を読み出し時、Ｓpiral命令のパラメータをもとにトーチ１１が螺旋軌跡を描くよう演算する。ここで、Ｓ２４における螺旋軌跡の算出は下記のようにして行われる。
【００２９】
螺旋中心軸の情報（螺旋中心軸の方向余弦、螺旋中心位置）はポジショナ２０の旋回軸（すなわち、回転中心軸）である。ここで、ポジショナ２０の旋回軸（回転中心軸）をワーク座標のＺ軸とすると、ワーク座標で前記方向余弦は（０，０，１）、螺旋中心位置は（０，０，０）となる（図５参照）。
【００３０】
従って、螺旋軌跡上の補間点位置（姿勢）は以下の通り算出される。
図６（ｂ）に示すように補間点Ｐn-1、Ｐn間の距離（△Ｓ）は、
△Ｓ＝Ｖ・△ｔ
ただし、△ｔ：補間ピッチ（sec）  Ｖ：移動速度（溶接速度）
である。
【００３１】
１補間あたりの螺旋中心軸周りの回転角度を△θとすると、補間点間の軸方向並進距離△Ｈｎは
△Ｈｎ＝Ｐｉ・△θ／（２π）＝κ・△θ      ……（１）
ただし、κ＝Ｐｉ／（２π）である。
【００３２】
又、円弧方向の移動距離△Ｌｎは、ワークＷのロール面Ｗｒの半径をＲｓとすると（図６（ａ）参照）、
△Ｌｎ＝Ｒｓ・△θ         ……（２）
となる。ここで、△Ｌｎ及び△θは微少量なので曲面（ロール面Ｗｒ）の曲率は無視してもよいため、
△Ｓ２＝△Ｈｎ２＋△Ｌｎ２  ……（３）
となる。
【００３３】
補間点Ｐｎの位置は、螺旋の方程式から
Ｘｎ＝Ｒｓ・ｃｏｓ（θｎ）  ……（４）
Ｙｎ＝Ｒｓ・ｓｉｎ（θｎ）  ……（５）
Ｚｎ＝θｎ・κ              ……（６）
で求める。
【００３４】
ここで、上記式（４）〜（６）中のθｎについては、下記のようにして求める。
式（１），式（２）を式（３）に代入して△θを求めると
△θ＝△Ｓ／√（κ２＋Ｒｓ２）となる。
【００３５】
従って、θｎは、
θ１＝＝△Ｓ／√（κ２＋Ｒｓ２）      ……（７）
θ２＝θ１＋△Ｓ／√（κ２＋Ｒｓ２）  ……（８）
θ３＝θ２＋△Ｓ／√（κ２＋Ｒｓ２）  ……（９）
………
θｎ＝θn-1＋△Ｓ／√（κ２＋Ｒｓ２）
＝ｎ・△Ｓ／√（κ２＋Ｒｓ２）    ……（１０）
なお、補間点Ｐｎのトーチ姿勢は、開始点／終了点の床面に対するトーチ姿勢をθの進捗割合に応じて均等補間するものとする。なお、下向きのトーチ姿勢が教示されれば、トーチ１１はその姿勢を保ち螺旋軌跡を描くことになる。
【００３６】
このようにして、Ｓ２４ではトーチ１１のワーク座標での各補間点が決まる。すなわち、ＣＰＵ３１にて螺旋軌跡の算出が行われる。
Ｓ２６ではＣＰＵ３１は目標点（すなわち、終了点）での処理を行う。すなわち、ＣＰＵ３１は、螺旋動作の開始点Ｐｓと終了点Ｐｅ間の距離Ｌが螺旋ピッチＰｉの整数倍に一致しない場合（すなわち、距離Ｌを螺旋ピッチＰｉで割って余りが出る場合）、端数部分（余りの部分）は円周上を目標点まで進むように設定する。
【００３７】
本実施形態では、終了点Ｐｅ（目標点）に達する以前に、補間算出において、Ｚｎが終了点ＰｅのＺ軸座標を越える場合には、そのＺｎの値を終了点ＰｅのＺ軸座標と同じ値に固定し、以後は、Ｘｎ，Ｙｎのみの補間算出を行う。図７には、Ｐｍにおいて終了点（目標点）と同じＺ軸座標に達した以後は、これ以降はこのＰｍと終了点（目標点）を通過する円周上を移動するようにした例が示されている。
【００３８】
これらＳ２４、及びＳ２６で算出された開始点Ｐｓから終了点Ｐｅまでの補間点からなる螺旋軌跡は、ＲＡＭ３２に一旦格納される。
Ｓ２８では、ＣＰＵ３１は、ワーク座標でのトーチ１１とポジショナ２０の補間点ごとの各位置姿勢を逆変換し、マニピュレータ１０とポジショナ２０の各軸値を求める。なお、各軸値とは、マニピュレータ１０の関節の駆動軸（図示しない）や、マニピュレータ１０のポジショナ２０の旋回軸（すなわち、回転中心軸）の位置（角度）のことである。
【００３９】
Ｓ３０では、ＣＰＵ３１は、Ｓ２８で算出された各軸値に基づいて、各軸の補間ごとの動作量を求め、マニピュレータ１０とポジショナ２０のサーボモータ１３ａ〜１３ｆ等に指令出力を行う。又、ＣＰＵ３１は、溶接条件を溶接電源装置４０の指令値に変換し、溶接電源装置４０にその指令値を出力する。
【００４０】
溶接電源装置４０では、前記指令値に基づいて、教示プログラムに教示されている開始点から終了点まで、前記溶接条件に応じたワイヤー送給が行われるとともに溶接電流、溶接電圧を出力する。
【００４１】
又、マニピュレータ１０とポジショナ２０のサーボモータ１３ａ〜１３ｆ等に対して連続して前記各軸値に基づいて出力された動作量に応じた指令が与えられることにより、トーチ１１はワークＷのロール面Ｗｒにマニピュレータとポジショナ２０の動きとあわせ一筆書きのビードを、すなわち螺旋軌跡を描く。このことにより、ワークＷのロール面Ｗｒを均一に覆うビードで肉盛加工が行われる。図８は、ワークＷのロール面Ｗｒに対してビードで螺旋軌跡が描かれた状態を示している。なお、説明の便宜上、図８では、螺旋軌跡を明示するために、ビードＢで均一に覆う状態では示していない。
【００４２】
さて、第１実施形態によれば、以下のような特徴がある。
（１）  第１実施形態のＴＰ３６は、教示手段として、ポジショナ２０（ワーク回転手段）とマニピュレータ１０を動かしてトーチ１１（作業手段）のワークＷのロール面Ｗｒに対する螺旋動作区間を教示するとともに、螺旋命令のパラメータを教示するようにした。そして、ロボット制御装置３０の補助記憶装置３５は、記憶手段として前記螺旋動作区間及び前記パラメータを記憶するようにした。又、ロボット制御装置３０のＣＰＵ３１は、演算手段として前記パラメータに基づき補間演算して螺旋動作区間におけるトーチ１１（作業手段）の螺旋軌跡を生成するようにした。この結果、ワークＷのロール面Ｗｒに対して肉盛溶接の処理を行う場合、一筆書きのような１本の螺旋状に処理を行うことができ、その結果、ワークＷのロール面Ｗｒに均一な処理を行うことができるとともに、その作業を実行するプログラムを簡単に教示できる。又、本実施形態によれば、教示が簡単なことから、作業準備時間の大幅な短縮を図ることができる。
【００４３】
（２）  第１実施形態では、螺旋命令のパラメータが、トーチ１１（作業手段）の移動速度Ｖ（溶接速度）及び螺旋ピッチＰｉを含むようにしている。
この結果、螺旋動作区間におけるトーチ１１の螺旋軌跡の生成を容易に行うことができる。
【００４４】
（３）  第１実施形態では、ワークＷは、螺旋動作区間において、径（Ｒｓ）が一定のロール面Ｗｒを有するようにした。そして、ロボット制御装置３０のＣＰＵ３１は、ロール面Ｗｒに対して螺旋軌跡を生成するように、径（Ｒｓ）、及び前記パラメータに基づいて補間演算して螺旋動作区間におけるトーチ１１（作業手段）の螺旋軌跡を生成するようにした。この結果、本実施形態では、螺旋動作区間において、径（Ｒｓ）が一定のロール面Ｗｒを有するワークＷに対して、肉盛溶接を行う場合、一筆書きのような１本の螺旋状に処理を行うことができ、その結果、ワークＷのロール面Ｗｒに均一な処理を行うことができるとともに、その作業を実行するプログラムを簡単に教示できる。
【００４５】
（第２実施形態）
次に第２実施形態を図９〜１１、及び図３、図４を参照して説明する。なお、第２実施形態では第１実施形態と異なる構成、及び作用を中心にして説明する。
【００４６】
第２実施形態では、ポジショナ２０Ａ以外のロボット制御装置３０、ＴＰ３６及び溶接電源装置４０のハード構成は第１実施形態と同じであり、ポジショナの構成が異なっている。すなわち、図１０に示すように、第２実施形態のポジショナ２０Ａの旋回軸（すなわち、回転中心軸）は、ポジショナ２０Ａの水平な設置面に対して垂直に配置されるとともに円柱状のワークＷの中心軸が前記旋回軸と一致して配置されている。又、第２実施形態では、ワークＷの平面を有する端面に対して、螺旋軌跡として渦巻き状の軌跡のビードを描くようにしているところが第１実施形態と異なっている。
【００４７】
そして、第１実施形態で説明した、図３のフローチャート中、Ｓ１０の手動運転と教示プログラム編集では、下記のように行われる。
まず、Ｓ１０では、オペレータはＴＰ３６のキーボード３６ｂを使用して、螺旋肉盛動作のために、マニピュレータ１０及びポジショナ２０Ａの手動運転を行って、開始点Ｐｓ，終了点Ｐｅの教示データ及び溶接条件を入力する（図１０参照）。ここで、溶接条件は、溶接速度（すなわち、ＴＣＰの移動速度）、螺旋ピッチＰｉ、螺旋の回転方向、溶接電流、溶接電圧等がある。
【００４８】
そして、Ｓ１２において、ＣＰＵ３１は、Ｓ１０で入力された教示データや溶接条件を螺旋肉盛のための教示プログラムに編集して補助記憶装置３５に格納し、このプログラム編集処理を終了する。
【００４９】
ここで、前記格納された教示プログラムにおいて、肉盛動作の命令は、Ｓpiralという名前で表わされる。そして、本実施形態の教示プログラムは、開始点Ｐｓから終了点Ｐｅの螺旋動作区間が円柱状のワークＷの平面を有する端面Ｗｔに対して、渦巻き状に肉盛溶接を行うためのものである。同端面Ｗｔは、ポジショナ２０Ａの旋回軸（回転中心軸）に直交する平面である。
【００５０】
Ｓpiral命令（すなわち、螺旋命令）は、例えば、下記のように記述される。
Ｓpiral    Ｖel  Ｐｂ  ｐｉ  Ｄir
なお、ＶelはＴＣＰの移動速度（溶接速度）、Ｐｂは目標点（終了点）のトーチ１１の位置姿勢（すなわち、終了点Ｐｅ）である。又、Ｐｉは螺旋ピッチ（ｍｍ）を表わす（図５参照）。又、Ｄirは螺旋の回転方向を示し、＋が右ねじ方向であり、−が左ねじ方向である。
【００５１】
そして、Ｓpiral命令は、開始点Ｐｓ（Ｓpiral命令の直前に教示された位置）から目標位置（終了点Ｐｅ）まで指定ピッチでポジショナ２０Ａの回転軸を螺旋中心軸として指定の回転方向にＴＣＰ軌跡が螺旋動作する命令である。なお、螺旋ピッチＰｉは溶接条件で決まるビード幅を基に指定される。ここでは、螺旋ピッチＰｉは、ワークＷの端面Ｗｔを均一にビードで覆う肉盛加工が可能となる量で設定されるが、この値に限定されるものではない。又、Ｓpiral命令でトーチ１１が開始点Ｐｓから終了点Ｐｅに移動する間、ロールは（Ｐｂ−Ｐａ間距離／螺旋ピッチＰｉ）を整数化した回数分回ることを意味する。
【００５２】
第２実施形態においても、ＴＣＰの移動速度Ｖ（溶接速度）、及び螺旋ピッチＰｉは螺旋命令のパラメータに相当する。
なお、以下の教示例では外周側から内側に螺旋（渦巻き）を描くが、開始点Ｐｓを内周側、終了点Ｐｅを外周側にすることにより内側から外周側に螺旋を描いてもよい。
【００５３】
ここで、第２実施形態での螺旋動作区間とは、開始点Ｐｓの半径Ｒｓと終了点Ｐｅの半径Ｒｅの円形で囲まれる範囲である。
第２実施形態では、図４のフローチャートのうち、Ｓ２６の処理が省略されるとともに、Ｓ２４の処理が異なっている。第２実施形態のＳ２４の処理について説明する。
【００５４】
すなわち、端面Ｗｔ上の螺旋（渦巻き）の再生では螺旋の軌跡の算出を以下のようにＣＰＵ３１は行う。
第2実施形態では、ワーク座標のＺ値は変化せず、その代わりに、円周半径が図１１に示すように開始点Ｐｓの半径Ｒｓから終了点Ｐｅの半径Ｒｅまで変化する。このため、補間点Ｐｎの位置は、螺旋の方程式から
Ｘｎ＝Ｒｎ・ｃｏｓ（θｎ）    ……（１１）
Ｙｎ＝Ｒｎ・ｓｉｎ（θｎ）    ……（１２）
Ｚｎ＝Ｚｓ                    ……（１３）
で求める。なお、Ｚｓは、開始点Ｐｓ及び終了点ＰｅのＺ座標の値である。
【００５５】
ここで、上記式（１１）〜（１３）中のθｎについては、下記のようにして求める。
θｎは、
θ１＝△Ｓ／Ｒｓ              ……（１４）
なお、△Ｓ＝Ｖ・△ｔ  である。
【００５６】
θ２＝θ１＋ΔＳ／Ｒ１      ……（１５）
θ３＝θ２＋ΔＳ／Ｒ２      ……（１６）
…………
θｎ＝θn-1＋△Ｓ／Ｒn-1    ……（１７）
となる。
【００５７】
Ｒｎは、１周でピッチ（Ｐｉ）分縮まるため、
Ｒｎ＝Ｒｓ−Ｐｉ・θｎ／（２π）    ……（１８）
となる。
【００５８】
なお、開始点Ｐｓを内周側、終了点Ｐｅを外周側にすることにより内側から外周側に螺旋を描く場合には、
θ１＝△Ｓ／Ｒｅとし、
Ｒｎ＝Ｒｓ＋Ｐｉ・θｎ／（２π）とすればよい。
【００５９】
又、補間点のトーチ位置（姿勢）は、開始点姿勢／終了点姿勢をθの進捗割合に応じて均等補間するものとする。
さて、第２実施形態によれば、第１実施形態の（１）及び（２）と同様の作用効果を奏するとともに以下のような特徴がある。
【００６０】
○  第２実施形態では、ワークＷは、ポジショナ２０Ａ（ワーク回転手段）の旋回軸（回転中心軸）に直交するとともに螺旋動作区間において平面を有する端面Ｗｔを有する。そして、ロボット制御装置３０のＣＰＵ３１は、演算手段として、ワークＷの端面Ｗｔに対して螺旋軌跡（渦巻き状の軌跡）を生成するように、螺旋動作区間における開始点Ｐｓの半径又は終了点Ｐｅの半径、及び移動速度Ｖ、螺旋ピッチＰｉ（パラメータ）に基づいて補間演算して螺旋動作区間におけるトーチ１１の螺旋軌跡を生成する（図９参照）。
【００６１】
この結果、第２実施形態では、ポジショナ２０Ａの回転中心軸に直交するとともに螺旋動作区間において平面を有する端面Ｗｔを備えたワークＷに対して、肉盛溶接を行う場合、一筆書きのような１本の螺旋状に処理を行うことができる。そして、第２実施形態では、ワークＷの側面（すなわち、端面）に均一な処理を行うことができるとともに、その作業を実行するプログラムを簡単に教示できる。
【００６２】
（第３実施形態）
次に、第３実施形態を図１２及び図１３、並び図３、図４を参照して説明する。第３実施形態は、第１実施形態の変形例であり、ロール径が変化することによりロール面Ｗｒが円錐面を有するワークＷの同ロール面Ｗｒに対してビードＢが螺旋軌跡を描くものである。
【００６３】
そして、第３実施形態では第１実施形態と同様に図３で示されるプログラム編集のためのフローチャートが実行される。
又、第３実施形態では、図４で示されるフローチャートが実行されるに当たり、第１実施形態とはＳ２４の処理が異なり、他のステップは第１実施形態と同様に行われる。
【００６４】
ここで、第３実施形態のＳ２４の螺旋軌跡の算出処理について説明する。
図１２（ａ）に示すように、螺旋中心軸の情報（螺旋中心軸の方向余弦、螺旋中心位置）はポジショナ２０の旋回軸（すなわち、回転中心軸）である。ここで、ポジショナ２０の旋回軸（回転中心軸）をワーク座標のＺ軸とすると、ワーク座標で前記方向余弦は（０，０，１）、螺旋中心位置は（０，０，０）となる（図５参照）。
【００６５】
従って、螺旋軌跡上の補間点位置（姿勢）は以下の通り算出される。
図６（ｂ）に示すように、補間点Ｐn-1、Ｐｎ間の距離（△Ｓ）は、
△Ｓ＝Ｖ・△ｔ．
ただし、△ｔ：補間ピッチ（ｓｅｃ）    Ｖ：移動速度（溶接速度）
となる。
【００６６】
ここで、１補間あたりの螺旋中心軸周りの回転角度を△θとすると、補間点間の軸方向並進距離△Ｈｎは、
△Ｈｎ＝Ｐｉ・cosφ・△θ／（２π）
＝κ・△θ                    ……（１９）
ただし、κ＝Ｐｉ・cosφ／（２π）    ……（２０）
φ＝arctan（|α|）          ……（２１）
α＝（Ｒｅ−Ｒｓ）／Ｌ      ……（２２）
となる（図１２（ａ）、図１２（ｂ）参照）。
【００６７】
又、円弧方向の移動距離△Ｌｎは
△Ｌｎ＝Ｒｎ・△θ          ……（２３）
となる。
【００６８】
ここで△Ｌｎ及び△θは微少量なので曲面（ロール面Ｗｒ）の曲率は無視してもよいため、
△Ｓ２＝△Ｈｎ２＋△Ｌｎ２      ……（２４）
が成り立つ。
【００６９】
補間点Ｐｎの位置は、螺旋の方程式から
Ｘｎ＝Ｒｎ・cos（θｎ）    ……（２５）
Ｙｎ＝Ｒｎ・sin（θｎ）      ……（２６）
Ｚｎ＝θｎ・κ                ……（２７）
で求める。
【００７０】
ただし、
Ｒｎ＝Ｒｓ＋Ｚｎ・α          …（２８）
である。
【００７１】
ここで、上記式（２５）〜（２７）中のθｎについては、下記のようにして求める。
式（１９）、式（２３）、式（２７）、式（２８）を式（２４）に代入して△θを求めると
△θ＝△Ｓ／ｓｑｒｔ（κ２＋（Ｒｓ＋α・κ・θn）２）    ……（２９）
となる。
【００７２】
従って、開始点Ｐｓでの回転角度を０とすると各補間点での回転角度θｎは、
θ０＝０
θ１＝θ０＋△Ｓ／√（κ２＋Ｒｓ２）
θ２＝θ１＋△Ｓ／√（κ２＋（Ｒｓ＋α・κ・θ１）２）
θ３＝θ２＋△Ｓ／√（κ２＋（Ｒｓ＋α・κ・θ２）２）
………………………
θｎ＝θn-1＋△Ｓ／√（κ２＋（Ｒｓ＋α・κ・θｎ−１）２）
となる。
【００７３】
なお、補間点Ｐｎでのトーチ姿勢は、開始点姿勢／終了点姿勢の間を、位置と同じ割合で均等補間算出する。
このようにして、Ｓ２４ではトーチ１１のワーク座標での各補間点が決まる。すなわち、ＣＰＵ３１にて螺旋軌跡の算出が行われる。
【００７４】
図１３（ａ）には、上記のようにして算出された螺旋軌跡をワーク座標のＹＺ平面から透視した場合が図示されている。又、図１３（ｂ）には上記のようにして算出された螺旋軌跡をワーク座標のＸＹ平面から透視した場合が図示されている。
【００７５】
なお、第３実施形態において、螺旋動作区間は、円錐面であるロール面Ｗｒにおいて開始点Ｐｓと終了点Ｐｅの間の範囲である。
さて、第３実施形態によれば、第１実施形態の（１）及び（２）と同様の作用効果を奏するとともに以下のような特徴がある。
【００７６】
○  第３実施形態では、ワークＷは、螺旋動作区間において、ロール面Ｗｒが円錐面を有するようにした。そして、ロボット制御装置３０のＣＰＵ３１が、演算手段として、前記ロール面Ｗｒに対して螺旋軌跡を生成するように、前記螺旋動作区間における開始点Ｐｓと終了点Ｐｅにおける各径、及びパラメータ（移動速度Ｖ、及び螺旋ピッチＰｉ）に基づいて補間演算して螺旋動作区間におけるトーチ１１（作業手段）の螺旋軌跡を生成するようにした。
【００７７】
この結果、螺旋動作区間において、ロール面Ｗｒが円錐面に形成されているワークＷに対して、肉盛溶接等の処理を行う場合、一筆書きのような１本の螺旋状に処理を行うことができ、その結果、ワークＷのロール面Ｗｒに均一な処理を行うことができるとともに、その作業を実行するプログラムを簡単に教示できる。
【００７８】
なお、本発明の実施形態は以下のように変更してもよい。
○  前記各実施形態では、産業用ロボット制御装置として、肉盛溶接を行うロボット制御装置３０に具体化したが、塗布を行うロボット制御装置、シーリングを行うロボットの制御装置、溶射を行うロボットの制御装置に具体化してもよい。この場合、塗布を行うロボットの制御装置の場合、塗布ガンが作業手段に相当する。又、シーリングを行うロボットの制御装置では、シールガンが作業手段に相当する。又、溶射を行うロボットの制御装置では溶射ガンが作業手段に相当する。
【００７９】
このような制御装置に具体化しても、ワークの側面やロール面に対して均一な加工を行うことができる。
【図面の簡単な説明】
【００８０】
【図１】本発明を具体化した第１実施形態の産業用ロボットの制御システムの概略図。
【図２】同じくロボット制御装置３０のブロック図。
【図３】同じくプログラム編集のためのフローチャート。
【図４】同じく教示プログラム再生のフローチャート。
【図５】同じくワークＷとワーク座標との関係を示す説明図。
【図６】（ａ）は開始点Ｐｓと終了点Ｐｅとの距離Ｌの説明図、（ｂ）はΔＳ、ΔＬｎ、ΔＨｎの説明図。
【図７】目標点（終了点Ｐｅ）での処理の説明図。
【図８】第１実施形態の螺旋軌跡の説明図。
【図９】第２実施形態の螺旋軌跡の説明図。
【図１０】同じく開始点Ｐｓ、終了点Ｐｅの説明図。
【図１１】同じく開始点Ｐｓの半径と、終了点Ｐｅの半径の説明図。
【図１２】（ａ）は第３実施形態の始点Ｐｓと終了点Ｐｅとの距離Ｌの説明図、（ｂ）は１ピッチあたりの螺旋中心軸方向移動量との関係を示す説明図。
【図１３】（ａ）は第３実施形態のワーク座標のＹＺ平面から見た螺旋軌跡の説明図、（ｂ）は同じくワーク座標のＸＹ平面から見た螺旋軌跡の説明図。
【符号の説明】
【００８１】
１０…マニピュレータ、１１…トーチ（作業手段）、
２０…ポジショナ（ワーク回転手段）、３１…ＣＰＵ（演算手段）、
３５…補助記憶装置（記憶手段）、３６…ＴＰ（教示手段）。
【００８２】
Ｖ…移動速度、Ｗ…ワーク、Ｗｒ…ロール面、Ｗｔ…端面、
ｅ…終了点、Ｐｉ…螺旋ピッチ、Ｐｓ…開始点。
【図１】
2008130022.tif 000003
【図２】
2008130022.tif 000004
【図３】
2008130022.tif 000005
【図４】
2008130022.tif 000006
【図５】
2008130022.tif 000007
【図６】
2008130022.tif 000008
【図７】
2008130022.tif 000009
【図８】
2008130022.tif 000010
【図９】
2008130022.tif 000011
【図１０】
2008130022.tif 000012
【図１１】
2008130022.tif 000013
【図１２】
2008130022.tif 000014
【図１３】
2008130022.tif 000015