(57)【特許請求の範囲】
【請求項１】
隣り合う２つの軸が直交する手首３軸を含む少なくとも６軸を有し、溶接トーチ先端がワークの溶接線を中心にウィービング移動量だけ移動してウィービング動作する溶接ロボットと、この溶接ロボットを制御するコントローラとを備えた溶接ロボットの制御装置において、
前記溶接ロボットの手首３軸のうちの最先端の第６軸に沿って設けられたウィービング軸であって、前記第６軸の軸方向にトーチ先端を移動させ得るウィービング軸が、前記溶接ロボットに追加され、
前記コントローラは、ウィービング移動量を、前記直交２軸および前記ウィービング軸それぞれの駆動量に変換し、
前記直交２軸および前記ウィービング軸をそれぞれ、前記変換された対応する駆動量だけ駆動させる駆動指令を前記溶接ロボットに与えることで、当該溶接ロボットをウィービング動作させること
を特徴とする溶接ロボットの制御装置。
【請求項２】
前記溶接ロボットは、
アームに対して手首先端部が回動自在に設けられ、手首先端部に対してトーチが回動自在に設けられた６軸多関節ロボットに対して、
トーチを手首先端部に近づける方向およびトーチを手首先端部から遠ざける方向に移動させる移動部材と、
前記移動部材を駆動するアクチュエータと
が付加されて構成されたものであること
を特徴とする請求項１記載の溶接ロボットの制御装置。
【請求項３】
前記溶接ロボットは、６軸多関節ロボットであること
を特徴とする請求項１または２記載の溶接ロボットの制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、溶接ロボットの制御装置に関するものである。
【背景技術】
【０００２】
溶接ロボットを用いて、多層盛り溶接や肉盛り溶接などの脚長が大きく広い幅のビードを要する溶接を行う場合には、溶接トーチ先端をウィービング動作させることが一般的である。
【０００３】
ここで、ウィービング動作とは、溶接トーチ先端をワークの溶接線を中心にウィービング移動量だけ移動させる動作のことをいう。
【０００４】
図１は、従来の溶接ロボットの制御装置の一例を示している。
【０００５】
図１に示すように、溶接ロボットの制御装置は、溶接トーチ１７の先端１７ａが溶接線Ｌを中心にウィービング波を描いてウィービングしながら溶接線Ｌに沿って移動するように各軸１〜６が駆動される溶接ロボット１０と、入力データに応じて溶接ロボット１０の各軸１〜６を駆動するための各軸角度毎の駆動指令を生成して、生成された駆動指令を溶接ロボット１０に送り、溶接ロボット１０を制御するコントローラ３０とを含んで構成されている。溶接はアーク溶接によって行われる。
【０００６】
図２は、従来の溶接ロボット１０の各軸の動きを説明する斜視図である。
【０００７】
この図２に示す溶接ロボット１０は、６軸の垂直多関節ロボットであり、第１軸１、第２軸２、第３軸３からなる基本３軸と、第４軸４、第５軸５、第６軸６からなる手首３軸とを有し、先端に溶接トーチ１７が取り付けられている。  各軸１〜６が駆動する方向を図中矢印に符号Ｊ１〜Ｊ６を付して示す。
【０００８】
溶接ロボット１０のアーム１０ａの中心軸が第４軸４である。アーム１０ａの先端には、手首先端部１１が回動自在に設けられている。手首先端部１１の回転軸が第５軸５である。手首先端部１１には、プレート１３を介して溶接トーチ１７が回動自在に設けられている。溶接トーチ１７の回転軸１２が第６軸６である。手首３軸４、５、６は、隣り合う２つの軸が直交するように配置されている。
【０００９】
溶接トーチ１７は、その先端１７ａが第６軸６の回転軸１２上に一致するように手首先端部１１に取り付けられている。したがって、第６軸６を回転させても、溶接トーチ先端１７ａの位置は変化しない。
【００１０】
図３は、ウィービング動作を説明する図である。
【００１１】
溶接ロボット１０は、溶接トーチ先端１７ａが、ある時刻において点Ｐに位置するように制御される。点Ｐは、直線移動開始位置Ｐｓから直線移動終了位置Ｐeに至る溶接線Ｌ上の位置Ｐtとウィービング移動量Ｗtとに分解される。
【００１２】
図４は、従来の溶接ロボット１０の手首３軸４、５、６による溶接トーチ先端１７ａの動作方向を説明する図である。
【００１３】
第４軸４を角度変化量ΔＪ４だけ回転させると、溶接トーチ先端１７ａは、ベクトルａ４で表される方向へ動く。また第５軸５を角度変化量ΔＪ５だけ回転させると、溶接トーチ先端１７ａは、ベクトルａ５で表される方向へ動く。
【００１４】
第４軸４及び第５軸５だけを駆動させて溶接トーチ先端１７ａが動ける範囲は、ベクトルａ４とベクトルａ５によって形成される平面上にある。この平面は第６軸６の回転軸１２に垂直な平面となる。第６軸６を回転させても、溶接トーチ１７の姿勢は変化するこそすれ、溶接トーチ先端１７ａの位置は変化しない。このため、手首３軸４、５、６のみを使って溶接トーチ先端１７ａが動ける範囲は、ベクトルａ４とベクトルａ５によって形成される平面上ということになる。
【００１５】
６軸の多関節ロボットである溶接ロボット１０の基本３軸１、２、３は、手首３軸４、５、６に比較して、構造的にイナーシャが大きく反力が大きい軸である。したがって、基本３軸１、２、３のみあるいは基本３軸１、２、３を含む全軸を使ってウィービング動作させると、満足する軌跡精度が得られなかったり、高い周波数でウィービングを行うことができないなどの問題が発生する。
【００１６】
このことは、本発明者らによる先願の特許文献１に記載されているところである（特許文献１の従来技術の欄）。
【００１７】
（従来技術１）
本発明者らは、特許文献１において、上記問題点に鑑み、基本３軸１、２、３に較べてイナーシャが小さく反力の小さい手首３軸４、５、６のうち第４軸４、第５軸５だけを用いてウィービング動作させるという発明を開示している。
【００１８】
すなわち、図４において、ベクトルａ４とベクトルａ５で表される平面内で溶接トーチ先端１７ａがウィービング移動量Ｗｔだけ動くような、いいかえると第６軸６の回転軸１２と垂直な平面内で溶接トーチ先端１７ａがウィービング移動量Ｗｔだけ動くようなロボット各軸１〜６の姿勢を見つけ出し教示設定するようにして、第４軸４、第５軸５だけを用いて溶接トーチ先端１７ａをウィービング移動量Ｗｔだけ動かすようにしている。
【先行技術文献】
【特許文献】
【００１９】
【特許文献１】特開平１１−５８０１４号公報
【発明の概要】
【発明が解決しようとする課題】
【００２０】
しかし、上記従来技術１によると、図３に示すウィービング動作する平面がベクトルａ４とベクトルａ５で表される平面に制限されてしまう。これに伴いウィービング動作中のロボット各軸１〜６が動ける範囲が制限されることなり、ウィービング中の溶接ロボット１０の姿勢が制限されてしまう。
【００２１】
この結果、ウィービング動作中に溶接ロボット１０の姿勢によってはワークと干渉するおそれがあった。また、従来技術１にあっては、ウィービング動作する範囲をベクトルａ４とベクトルａ５で表される平面に制限しているため、その動きを実現するための教示作業が必須であり、教示作業が煩わしく、溶接作業に多大な工数が付加されるという問題もあった。
【００２２】
本発明はこうした実情に鑑みてなされたものであり、基本３軸などのイナーシャの大きい軸を使用することなくイナーシャの小さい軸のみを使用してウィービング動作させるようにすることで、高い軌跡精度、高い周波数でウィービングを行うことができるようにするとともに、ウィービング動作する平面の制限をなくし任意のトーチ姿勢でウィービング動作させるようにすることで、ワークとの干渉を防止し煩わしい教示作業を不要とすることを解決課題とするものである。
【課題を解決するための手段】
【００２３】
第１発明は、
隣り合う２つの軸が直交する手首３軸を含む少なくとも６軸を有し、溶接トーチ先端がワークの溶接線を中心にウィービング移動量だけ移動してウィービング動作する溶接ロボットと、この溶接ロボットを制御するコントローラとを備えた溶接ロボットの制御装置において、
前記溶接ロボットの手首３軸のうち、最先端の軸を除く直交する直交２軸によって溶接トーチ先端が動く平面に対して垂直な方向に溶接トーチ先端を移動させ得るウィービング軸が、前記溶接ロボットに追加され、
前記コントローラは、ウィービング移動量を、前記直交２軸および前記ウィービング軸それぞれの駆動量に変換し、
前記直交２軸および前記ウィービング軸をそれぞれ、前記変換された対応する駆動量だけ駆動させる駆動指令を前記溶接ロボットに与えることで、当該溶接ロボットをウィービング動作させること
を特徴とする。
【００２４】
第２発明は、第１発明において、
前記溶接ロボットは、
アームに対して手首先端部が回動自在に設けられ、手首先端部に対して溶接トーチが回動自在に設けられた６軸多関節ロボットに対して、
溶接トーチを手首先端部に近づける方向および溶接トーチを手首先端部から遠ざける方向に移動させる移動部材と、
前記移動部材を駆動するアクチュエータと
が付加されて構成されたものであること
を特徴とする。
【００２５】
第３発明は、第１発明または第２発明において、
前記溶接ロボットは、６軸多関節ロボットであり、
前記ウィービング軸による溶接トーチ先端の動作方向は、手首３軸のうちの最先端の第６軸の方向であること
を特徴とする。
【発明の効果】
【００２６】
本発明によれば、基本３軸などのイナーシャの大きい軸を使用することなく、最先端の軸を除く直交する直交２軸およびウィービング軸からなるイナーシャの小さい手首先端の３軸によって任意の平面内でウィービング動作させるようにしたので、高い軌跡精度、高い周波数でウィービングを行うことができる。また、ウィービング動作する平面の制限がなくなり任意の溶接トーチ姿勢でウィービングを行うことができるため、ワークとの干渉が防止されるとともに、煩わしい教示作業が不要となり溶接作業の工数を縮減することができる。
【００２７】
請求項１の記載中、「最先端の軸を除く直交する直交２軸によって溶接トーチ先端が動く平面に対して垂直な方向に溶接トーチ先端を移動させ得るウィービング軸」とは、ウィービング軸による溶接トーチ先端の動作方向が、少なくとも前記平面に対して垂直な方向成分を有していればよいという意味であり、必ずしもウィービング軸による溶接トーチ先端の動作方向が前記平面に対して垂直な方向であるには及ばない。第３発明では、ウィービング軸による溶接トーチ先端の動作方向が、手首３軸のうちの最先端の第６軸の方向であるとされる。
【００２８】
第１発明における「最先端の軸を除く直交する直交２軸によって溶接トーチ先端が動く平面に対して垂直な方向に溶接トーチ先端を移動させ得るウィービング軸」は、具体的には、６軸多関節ロボットに対して、溶接トーチを手首先端部に近づける方向および溶接トーチを手首先端部から遠ざける方向に移動させる移動部材と、移動部材を駆動するアクチュエータとを付加することで実現される。
【図面の簡単な説明】
【００２９】
【図１】図１は、従来の溶接ロボットの制御装置の一例を示した図である。
【図２】図２は、従来の溶接ロボットの各軸の動きを説明する斜視図である。
【図３】図３は、ウィービング動作を説明する図である。
【図４】図４は、従来の溶接ロボットの手首３軸による溶接トーチ先端の動作方向を説明する図である。
【図５】図５は、実施例の溶接ロボットの制御装置を示した図である。
【図６】図６は、溶接ロボットの各軸の動きを説明する斜視図である。
【図７】図７は、溶接ロボットの手首３軸およびウィービング軸による溶接トーチ先端の動作方向を説明する図である。
【図８】図８（ａ）、（ｂ）はそれぞれ、ベクトルａ４と、ベクトルａ５を説明する図である。
【図９】図９は、コントローラの内部の構成を示す機能ブロック図である。
【図１０】図１０は、コントローラで行われる演算処理の手順を示したフローチャートである。
【発明を実施するための形態】
【００３０】
以下、図面を参照して本発明の実施の形態について説明する。
【００３１】
なお、実施形態では、溶接ロボットとして、アーク溶接作業を行う溶接ロボットを想定する。
【００３２】
図５は、実施例の溶接ロボットの制御装置を示している。
【００３３】
図５に示すように、溶接ロボットの制御装置は、溶接トーチ１７の先端１７ａが溶接線Ｌを中心にウィービング波を描いてウィービングしながら溶接線Ｌに沿って移動するように各軸１〜７が駆動される溶接ロボット１０と、溶接ロボット１０に電力を供給して溶接ワイヤ２１を送給させるとともに溶接電極間に電圧を印加する溶接電源装置２０と、入力データに応じて溶接ロボット１０の各軸１〜７を駆動するための駆動指令を生成して、生成された駆動指令を溶接ロボット１０に送り、溶接ロボット１０の各軸を制御するとともに溶接電源装置２０を介して溶接ワイヤ２１の送給および溶接電極間の電圧を制御するコントローラ３０とを備えて構成される。
【００３４】
溶接ロボット１０は、アーム１０ａを有しており、このアーム１０ａの先端には、溶接トーチ１７が取り付けられている。溶接ロボット１０には、溶接ワイヤ送給装置１８が設けられている。溶接ロボット１０の外部には、溶接ワイヤ送り出し部９０が備えられている。溶接ワイヤ送り出し部９０には、溶接ワイヤ２１がリール状に収容されている。溶接ワイヤ送給装置１８は、溶接電源装置２０から与えられるワイヤ送り速度指令に応じてワイヤ送りモータが駆動されることで、溶接ワイヤ送り出し部９０から溶接ワイヤ２１を繰り出し、溶接トーチ１７の図示しない電極チップに送給する。電極チップとワークは、溶接電極を構成する。溶接電極間には溶接電源装置２０から与えられる電圧指令によって電圧が印加される。これにより溶接ワイヤ２１の先端、つまり溶接トーチ先端１７ａとワークとの間にアーク放電が発生し、アーク放電により発生する熱によってワークの接合部が加熱、溶融されるとともに溶加材としての溶接ワイヤ２１が加熱、溶融され、溶接ワイヤ２１が溶接金属となってワークの接合部が接合される。
【００３５】
溶接ロボット１０は、各軸１、２、３、４、５、６、７を有した７軸の作業ロボットであり、駆動部１９を備えている。第１軸１、第２軸２、第３軸３が基本３軸であり、第４軸４、第５軸５、第６軸６が手首３軸である。手首先端には、後述する第７軸７が設けられている。駆動部１９は、サーボアンプ、ロボット用モータを含んで構成されている。駆動部１９は、コントローラ３０から与えられる各軸角度毎の駆動指令に応じて各軸１、２、３、４、５、６、７を駆動する。各軸１、２、３、４、５、６、７が駆動されることにより溶接トーチ１７の先端１７ａ（溶接ワイヤ２１の先端）の座標位置Ｐおよびトーチ姿勢角が変化される。
【００３６】
図３に示すように、溶接ロボット１０は、溶接トーチ先端１７ａが、ある時刻において点Ｐに位置するように制御される。点Ｐは、下記（１）式に示されるように、直線移動開始位置Ｐｓから直線移動終了位置Ｐeに至る溶接線Ｌ上の直線移動位置Ｐtとウィービング移動量Ｗt（＝[Ｗｘ，Ｗｙ，Ｗｚ］）とに分解される。
【００３７】
Ｐ＝Ｐt＋Ｗt  …（１）
同図３に示すように、溶接トーチ１７の先端１７ａは、移動開始位置Ｐｓから移動終了位置Ｐｅまで移動する。溶接線Ｌは、移動開始位置Ｐｓと移動終了位置Ｐｅとを結んだ直線ＰsＰeに対応している。
【００３８】
コントローラ３０は、補間周期Ｔ[ｓ]を、ある位置から次の移動目標位置に到達するまでの時間として、補間周期Ｔ[ｓ]毎に、移動目標位置Ｐを算出し、この移動目標位置Ｐを、各軸１１〜１７の角度Ｊ１〜Ｊ７に変換して、対応する駆動指令を溶接ロボット１０の駆動部１９のサーボアンプに出力する。
【００３９】
図３に示すように、溶接トーチ先端１７ａは、水平面に対して角度θｗだけ傾斜した平面（ウィービング平面）内でウィービング動作する。このときウィービング動作方向の単位ベクトルは、この角度θwだけ傾斜したウィービング平面内にあって移動開始位置Ｐｓと移動終了位置Ｐｅとを結んだ直線ＰsＰe（溶接線Ｌ）に垂直なベクトルｅｗであると定義される。図中、Ｍは、補間周期Ｔ毎の溶接線Ｌ方向の移動量である。
【００４０】
図６は、溶接ロボット１０の各軸の動きを説明する斜視図である。
【００４１】
この図６に示す溶接ロボット１０は、図２に示す６軸の垂直多関節ロボットに対して第７軸７を付加して構成されており、第１軸１、第２軸２、第３軸３からなる基本３軸と、第４軸４、第５軸５、第６軸６からなる手首３軸と、手首に追加された第７軸であるウィービング軸７を有し、手首先端に溶接トーチ１７が取り付けられている。各軸１〜７が駆動する方向を図中矢印に符号Ｊ１〜Ｊ７を付して示す。手首３軸４、５、６は、隣り合う２つの軸が直交するように配置されている。ウィービング軸７は、第６軸６の軸方向（回転軸１２の方向）に駆動する。
【００４２】
図７は、溶接ロボット１０の手首３軸４、５、６およびウィービング軸７による溶接トーチ先端１７ａの動作方向を説明する図である。
【００４３】
溶接ロボット１０のアーム１０ａの中心軸が第４軸４である。アーム１０ａの先端には、手首先端部１１が回動自在に設けられている。手首先端部１１の回転軸が第５軸５である。手首先端部１１には、プレート１３を介して溶接トーチ１７が回動自在に設けられている。溶接トーチ１７は、プレート１３に固定されている。溶接トーチ１７の回転軸１２が第６軸６である。溶接トーチ１７は、その先端１７ａが第６軸６の回転軸１２上に一致するように手首先端部１１に取り付けられている。したがって、第６軸６を回転させても、溶接トーチ先端１７ａの位置は変化しない。
【００４４】
第４軸４を角度変化量ΔＪ４だけ回転させると、溶接トーチ先端１７ａは、ベクトルａ４で表される方向へ動く。また第５軸５を角度変化量ΔＪ５だけ回転させると、溶接トーチ先端１７ａは、ベクトルａ５で表される方向へ動く。
【００４５】
第４軸４及び第５軸５だけを駆動させて溶接トーチ先端１７ａが動ける範囲は、ベクトルａ４とベクトルａ５によって形成される平面上にある。この平面は第６軸６の回転軸１２に垂直な平面となる。第６軸６を回転させても、溶接トーチ１７の姿勢は変化するこそすれ、溶接トーチ先端１７ａの位置は変化しない。このため、手首３軸４、５、６のみを使って溶接トーチ先端１７ａが動ける範囲は、ベクトルａ４とベクトルａ５によって形成される平面上ということになる。
【００４６】
図８（ａ）、（ｂ）はそれぞれ、ベクトルａ４と、ベクトルａ５を説明する図である。
【００４７】
図８（ａ）に示すように、第４軸４の軸中心方向の単位ベクトルをｉ４、第４軸４の軸中心の規定位置から溶接トーチ先端１７ａに向かうベクトルをＶ４とすると、第４軸４による溶接トーチ先端１７ａの動作方向を示すベクトルａ４は、下記（２）式に示すように、ベクトルｉ４とベクトルＶ４の外積によって表される。
【００４８】
ａ４＝ｉ４×Ｖ４  …（２）
図８（ｂ）に示すように、第５軸５の軸中心方向の単位ベクトルをｉ５、第５軸５の軸中心の規定位置から溶接トーチ先端１７ａに向かうベクトルをＶ５とすると、第５軸５による溶接トーチ先端１７ａの動作方向を示すベクトルａ５は、下記（３）式に示すように、ベクトルｉ５とベクトルＶ５の外積によって表される。
【００４９】
ａ５＝ｉ５×Ｖ５  …（３）
図７に示すように、ウィービング軸７は第６軸６の軸方向（回転軸１２の方向）Ｊ７に駆動され、それに伴い溶接トーチ先端１７ａは、同じく第６軸６（回転軸１２）の方向、つまりベクトルａ４とベクトルａ５によって形成される平面に垂直な方向ａ７に動く。すなわち、ウィービング軸７を所定の変化量ΔＪ７だけ駆動すると、溶接トーチ先端１７ａは、ベクトルａ７で示す方向に動き、そのベクトルａ７は、下記（４）式のごとくベクトルａ４とベクトルａ５の外積によって表される。
【００５０】
ａ７＝ａ４×ａ５  …（４）
したがって、第４軸４、第５軸５およびウィービング軸７を駆動することで、任意の平面上でウィービング動作させることができる。それによりウィービング動作中に溶接トーチ１７に任意の姿勢をとらせることができる。
【００５１】
図７に示すように、ウィービング軸７は、図２に示す既存の６軸多関節ロボット１０に対して、溶接トーチ１７を手首先端部１１に近づける方向および溶接トーチ１７を手首先端部１１から遠ざける方向に移動させる移動部材１４と、移動部材１４を駆動するアクチュエータ１５とを付加することで実現される。たとえば移動部材１４は、プレート１３を手首先端部１１に近づける方向および溶接トーチ１７を手首先端部１１から遠ざける方向に移動させるボールねじ１４ａによって構成される。ボールねじ１４ａは、その長手方向が、第６軸６の回転軸１２の方向に一致するように配置され、ボールねじ１４ａには、プレート１３に形成されたねじ孔１３ａが螺合される。
【００５２】
アクチュエータ１５は、たとえばボールねじ１４ａを回転駆動するモータ１５ａであり、手首先端部１１に内蔵される。手首先端部１１には、ボールねじ１４ａを支持するブラケット１６が取り付けられる。
【００５３】
以上のように、既存の６軸多関節ロボット１０に対して、移動部材１４（ボールねじ１４ａ）、アクチュエータ１５（モータ１５ａ）、ブラケット１６を付加するだけで、ウィービング軸７を構成することができ、それにより基本３軸１、２、３に較べて、イナーシャの小さい手首３軸４、５およびウィービング軸７を使って、溶接トーチ１７に任意の姿勢をとらせて溶接トーチ先端１７ａを任意の平面内でウィービング動作させることができるようになる。  
図９は、コントローラ３０の内部の構成を示す機能ブロック図である。
【００５４】
コントローラ３０は、図９に示すように、入力部３１と、記憶部３２と、演算部３３とを含んで構成されている。
【００５５】
入力部３１は、ティーチング操作盤３１ａを含んで構成されている。ティーチング操作盤３１ａがオペレータによって操作されることにより、教示データ、ウィービングデータが入力される。教示データは、溶接ロボット１０の作業プログラムの教示データであり、位置および姿勢のデータからなる。教示データは、溶接ロボット１０の溶接トーチ先端１７ａの直線移動開始位置Ｐｓと直線移動終了位置Ｐｅ（図３参照）などを含んでいる。
【００５６】
ウィービングデータは、ウィービングの振幅Ａ、ウィービングの周波数ｆ、ウィービング平面の傾き角θwなどを含んでいる。
【００５７】
記憶部３２は、教示データ保存部３２ａと、ウィービングデータ保存部３２ｂとを含んで構成されている。
【００５８】
教示データ保存部３２ａには、溶接ロボット１０の溶接トーチ先端１７ａの直線移動開始位置Ｐｓと直線移動終了位置Ｐｅが記憶される。
【００５９】
ウィービングデータ保存部３２ｂには、ウィービングの振幅Ａ、ウィービング周波数ｆ、ウィービング平面傾き角θwが記憶される。
【００６０】
演算部３３は、軌跡演算部３３ａと、各軸角度変換部３３ｂとを含んで構成されている。
【００６１】
軌跡演算部３３ａでは、溶接トーチ先端１７ａが移動すべき逐次の移動目標位置Ｐ［ｘ、ｙ、ｚ］および目標トーチ姿勢角が演算される。
【００６２】
各軸角度変換部３３ｂでは、溶接ロボット１０の溶接トーチ１７の先端１７ａの逐次の移動目標位置Ｐ［ｘ、ｙ、ｚ］、目標トーチ姿勢角が溶接ロボット各軸１、２、３、４、５、６、７の角度Ｊ１、Ｊ２、Ｊ３、Ｊ４、Ｊ５、Ｊ６、Ｊ７にそれぞれ変換される。
【００６３】
本実施例では、直線移動位置Ｐt を第１軸１から第６軸６の角度Ｊ１〜Ｊ６に変換し、第１軸１から第６軸６をそれぞれ角度Ｊ１〜Ｊ６にする駆動指令を駆動部１９に与えることで、溶接ロボット１０の溶接トーチ先端１７ａを直線移動位置Ｐtだけ直線移動させるようにしている。
【００６４】
そして、ウィービング移動量Ｗtを、第４軸４、第５軸５およびウィービング軸（第７軸）７の角度変化量ΔＪ４、ΔＪ５および変化量ΔＪ７に変換し第４軸４、第５軸５およびウィービング軸（第７軸）７をそれぞれ角度変化量ΔＪ４、ΔＪ５および変化量ΔＪ７だけ変化させる駆動指令を駆動部１９に与えることで、溶接ロボット１０の溶接トーチ先端１７ａをウィービング移動量Ｗtだけウィービング動作させるようにしている。
【００６５】
演算部３３では、図１０に示す手順で演算処理が行われる。以下図３、図７を併せ参照しつつ説明する。
【００６６】
まず、直線移動開始位置Ｐｓと直線移動終了位置Ｐｅと直線移動速度と補間周期Ｔとに基づいて、補間周期Ｔ毎の溶接線Ｌ方向の移動量Ｍと、直線移動開始位置Ｐｓから直線移動終了位置Ｐｅまでの補間回数Ｃが算出される。なお直線移動速度は、溶接トーチ先端１７ａが溶接線Ｌに沿って直線移動する速度である。（ステップ１０１）。
【００６７】
つぎに、線移動開始位置Ｐｓと直線移動終了位置Ｐｅとウィービング平面の傾き角θwに基づいて、ウィービング平面内で直線ＰｓＰｅに垂直となるウィービング動作方向（ウィービング振幅方向）の単位ベクトルｅwが算出される（ステップ１０２）。
【００６８】
つぎに、補間周期Ｔ毎のウィービング位相変化量ｓが、補間周期Ｔとウィービング周波数ｆを用いて次式、
ｓ＝Ｔ・ｆ  …（５）
によって算出される（ステップ１０３）。
【００６９】
移動開始時には補間カウンタcountが０に設定（count＝０）される（ステップ１０４）。
【００７０】
つぎに、補間周期Ｔが経過するごとに、補間カウンタcountが＋１インクリメント（count＝count＋１）される（ステップ１０５）。
【００７１】
溶接線Ｌ上の直線移動目標位置Ｐｔは、直線移動開始位置Ｐｓと上記補間カウンタcountと補間周期毎の移動量Ｍを用いて、次式、
Ｐｔ＝Ｐｓ＋count・Ｍ  …（６）
にて算出される（ステップ１０６）。
【００７２】
つぎに、上記（６）式のごとく得られた溶接ロボット１０の溶接トーチ１７の先端１７ａの今回の直線移動目標位置Ｐtが溶接ロボット各軸１、２、３、４、５、６の角度Ｊ１、Ｊ２、Ｊ３、Ｊ４、Ｊ５、Ｊ６にそれぞれ変換される（ステップ１０７）。
【００７３】
一方、ウィービング移動量Ｗtは、ウィービング振幅Ａと、ステップ１０２で得られたウィービング動作方向の単位ベクトルｅwと、ステップ１０３で得られた補間周期Ｔ毎のウィービング位相変化量ｓと、ステップ１０５で得られた補間カウンタcountとを用いて、次式、
Ｗt＝Ａ・ｓｉｎ（count・ｓ）・ｅw    …（７）
にて算出される（ステップ１０８）。
【００７４】
つぎに、第４軸４による溶接トーチ先端１７ａの動作方向を示すベクトルａ４が、前述した（２）式（ａ４＝ｉ４×Ｖ４）のごとく求められる。また、第５軸５による溶接トーチ先端１７ａの動作方向を示すベクトルａ５が、前述した（３）式（ａ５＝ｉ５×Ｖ５）のごとく求められる（ステップ１０９）。
【００７５】
つぎに、ステップ１０８で求めたウィービング移動量Ｗtを３つのベクトルａ４、ａ５、ａ７に分解することにより第４軸４、第５軸５およびウィービング軸（第７軸）７の角度変化量ΔＪ４、ΔＪ５および変化量ΔＪ７を求める。
【００７６】
ベクトルａ４の単位ベクトルｅ４は、次式（８）のごとく求められる。
【００７７】
ｅ４＝ａ４／｜ａ４｜  …（８）
ベクトルａ５の単位ベクトルｅ５は、次式（９）のごとく求められる。
【００７８】
ｅ５＝ａ５／｜ａ５｜  …（９）
ベクトルａ７の単位ベクトルｅ７は、前述の（４）式（ａ７＝ａ４×ａ５）を用いて次式（９）のごとく求められる。
【００７９】
ｅ７＝（ａ４×ａ５）／｜（ａ４×ａ５）｜  …（１０）
ウィービング移動量Ｗt は、次式、
Ｗt＝ΔＪ４・ｅ４＋ΔＪ５・ｅ５＋ΔＪ７・ｅ７  …（１１）
で表される。
【００８０】
単位ベクトルｅ４、ｅ５、ｅ７をそれぞれ、
【数１】
0005513207.tif 000002
【００８１】
とすれば、上記（１１）式は、下式（１３）のようになる。
【００８２】
【数２】
0005513207.tif 000003
【００８３】
よって、上記（１３）式を変形して下式（１４）、
【数３】
0005513207.tif 000004
【００８４】
のように逆行列を掛けることにより、ウィービング移動量Ｗt に対応する第４軸４、第５軸５およびウィービング軸（第７軸）７の角度変化量ΔＪ４、ΔＪ５および変化量ΔＪ７を求めることができる（ステップ１１０）。
【００８５】
つぎに各軸１、２、３、４、５、６、７のうち第１軸１〜第３軸３および第６軸６については、ステップ１０７で得られた角度Ｊ１〜Ｊ３およびＪ６をそれぞれ、そのまま目標角度とする。また第４軸４、第５軸５およびウィービング軸（第７軸）７については、ステップ１０７で得られた角度Ｊ４、Ｊ５および駆動位置Ｊ７にそれぞれ、上記（１４）式で得られた角度変化量ΔＪ４、ΔＪ５および変化量ΔＪ７を加算した角度Ｊ４＋ΔＪ４、Ｊ５＋ΔＪ５および駆動位置Ｊ７＋ΔＪ７をそれぞれ目標角度および目標駆動位置とする。
【００８６】
そして溶接ロボット各軸１、２、３、４、５、６および７をそれぞれ目標角度Ｊ１、Ｊ２、Ｊ３、Ｊ４＋ΔＪ４、Ｊ５＋ΔＪ５、Ｊ６および目標駆動位置Ｊ７＋ΔＪ７に変化させるための駆動指令が生成されて、駆動指令が溶接ロボット１０の駆動部１９のサーボアンプに出力される（ステップ１１１）。
【００８７】
つぎに、上記補間カウンタcountが補間回数Ｃを超えているか否かが判断され（ステップ１１２）、上記補間カウンタcountが補間回数Ｃを超えていないと判断されている限りは（ステップ１１２の判断ＮＯ）、上記ステップ１０５に戻り以下同様の処理が繰り返される。上記補間カウンタcountが補間回数Ｃを超えたと判断されると（ステップ１１２の判断ＹＥＳ）、溶接トーチ先端１７ａが直線移動終了位置Ｐｅに達したものと判断し処理を終える。
【００８８】
以上のようにして、溶接トーチ先端１７ａが、ウィービング波を描きつつ溶接線Ｌに沿って直線移動開始位置Ｐｓから直線移動終了位置Ｐｅまで移動する。
【００８９】
本実施例によれば、基本３軸１、２、３などのイナーシャの大きい軸を使用することなく、最先端の軸６を除く直交する直交２軸４、５およびウィービング軸７からなるイナーシャの小さい手首先端の３軸４、５、７によって任意の平面内でウィービング動作させることができる。このため高い軌跡精度、高い周波数でウィービングを行うことができる。
【００９０】
また、ウィービング動作する平面の制限がなくなり溶接トーチ１７を任意の姿勢にした上でウィービングを行うことができる。このため、ワークとの干渉が防止されるとともに、煩わしい教示作業が不要となり溶接作業の工数を縮減することができる。
【００９１】
本実施例では、ウィービング軸７による溶接トーチ先端１７ａの動作方向ａ７が、手首３軸のうちの最先端の第６軸６（回転軸１２）の方向、つまりベクトルａ４とベクトルａ５を含む平面に対して垂直な方向であるとしてウィービング軸７を構成しているが、必ずしも、ウィービング軸７による溶接トーチ先端１７ａの動作方向ａ７が、手首３軸のうちの最先端の第６軸６（回転軸１２）の方向（ベクトルａ４とベクトルａ５を含む平面に対して垂直な方向）であるにおよばない。ウィービング軸７による溶接トーチ先端１７ａの動作方向ａ７が、少なくともベクトルａ４とベクトルａ５を含む平面に対して垂直な方向成分を有していればよい。
【００９２】
たとえば図７において、ボールねじ１４ａの長手方向を第６軸６（回転軸１２）に対して傾斜させるように移動部材１４を構成し、溶接トーチ先端１７ａを第６軸６（回転軸１２）に対して傾斜した方向に移動させてもよい。
【符号の説明】
【００９３】
１０  溶接ロボット、１４  移動部材、１５  アクチュエータ、１７  溶接トーチ、１７ａ  溶接トーチ先端、３０  コントローラ
【図１】
0005513207.tif 000005
【図２】
0005513207.tif 000006
【図３】
0005513207.tif 000007
【図４】
0005513207.tif 000008
【図５】
0005513207.tif 000009
【図６】
0005513207.tif 000010
【図７】
0005513207.tif 000011
【図８】
0005513207.tif 000012
【図９】
0005513207.tif 000013
【図１０】
0005513207.tif 000014