(57)【要約】【課題】  ロボットとワークとの干渉をなくした動作プログラムを効率よく作成することができる溶接ロボットの動作プログラム作成方法を提供する。【解決手段】  動作プログラムを作成するロボットモデル及びワークモデルをディスプレイ画面に表示し（ステップＳ２）、干渉チェックするか否か、ニアミスチェックするか否か及びニアミス距離を予め設定し（ステップＳ３）、ロボットモデルを第１作業点に移動させる（ステップＳ６）。このときの干渉の有無を判定する（ステップＳ８）。判定の結果、干渉又はニアミスが生じる場合は警告を発し（ステップＳ１０、Ｓ１２）、警告に従ってオペレータはロボットモデルの誘導経路等を変更する（ステップＳ１５ａ、ステップＳ１５ｂ）。この操作を繰返し、かつロボットの全ての作業点についてこの操作を行い（ステップＳ１７）、干渉がなくなった時点でプログラムを完成させる。【選択図】図６−３
2006190228.tif 000002
【特許請求の範囲】
【請求項１】
オフライン教示システムにより２以上の立体形状の物体を一連の動作軌跡で動作するように教示して動作プログラムを作成する動作プログラム作成方法において、前記物体を第１の動作点に誘導し物体間の干渉が生じるか否かをチェックする工程と、干渉が生じた場合は前記物体の動作条件、配置態様及び第１の動作点の位置からなる群から選択された少なくとも１つの因子を変更して再度物体間の干渉が生じるか否かをチェックし干渉がなくなるまでこれを繰り返す工程と、干渉が生じていない場合又は干渉が解消された後前記物体を第２の動作点に誘導し物体間の干渉が生じるか否かをチェックする工程と、干渉が生じた場合は前記物体の動作条件、配置態様及び第２の動作点の位置からなる群から選択された少なくとも１つの因子を変更して再度物体間の干渉が生じるか否かをチェックし干渉がなくなるまでこれを繰り返す工程と、第２の動作点についての干渉が生じていない場合又は干渉が解消された後、他に動作点があればそれらの動作点について同様の干渉チェックを行う工程と、を有し、全ての動作点について干渉がない動作プログラムを作成することを特徴とする動作プログラムの作成方法。
【請求項２】
オフライン教示システムにより溶接ロボットモデル及びワークモデルが一連の動作軌跡で動作するように教示して動作プログラムを作成する動作プログラム作成方法において、前記溶接ロボットモデルを前記ワークモデルに対する第１の動作点に誘導する工程と、前記溶接ロボットモデルと前記ワークモデルとの間で干渉が生じるか否かをチェックする工程と、干渉が生じた場合は前記溶接ロボットモデルの動作条件、前記ワークモデルの配置態様及び第１の動作点の位置からなる群から選択された少なくとも１つの因子を変更して再度前記溶接ロボットモデルと前記ワークモデルとの間の干渉が生じるか否かをチェックし干渉がなくなるまでこれを繰り返す工程と、干渉が生じていない場合又は干渉が解消された後前記溶接ロボットモデルを前記ワークモデルに対する第２の動作点に誘導する工程と、前記溶接ロボットモデルと前記ワークモデルとの間で干渉が生じるか否かをチェックする工程と、干渉が生じた場合は前記溶接ロボットモデルの動作条件、前記ワークモデルの配置態様及び第２の動作点の位置からなる群から選択された少なくとも１つの因子を変更して再度前記溶接ロボットモデルと前記ワークモデルとの間の干渉が生じるか否かをチェックし干渉がなくなるまでこれを繰り返す工程と、第２の動作点についての干渉が生じていない場合又は干渉が解消された後、他に動作点があればそれらの動作点について同様の干渉チェックを行う工程と、を有し、全ての動作点について干渉がない動作プログラムを作成することを特徴とする動作プログラムの作成方法。
【請求項３】
前記溶接ロボットモデルの動作条件は、その誘導経路、スライダで決められる前記溶接ロボットモデル位置、トーチ角度及び各関節角度からなる群から選択されたものであることを特徴とする請求項２に記載の動作プログラムの作成方法。
【請求項４】
前記溶接ロボットモデル及び前記ワークモデルを表示画面上に表示し、マウス又はキーボードから前記溶接ロボットモデルをその動作点に誘導することを特徴とする請求項２又は３に記載の動作プログラムの作成方法。
【請求項５】
前記干渉が生じた後の干渉を回避する工程は、前記溶接ロボットモデルについて誘導した前記動作条件又は変更した前記因子と同じ動作条件又は因子を前記オフライン教示システムのコンピュータに予め設定された態様で変更して前記干渉を回避することを特徴とする請求項２乃至４のいずれか１項に記載の動作プログラムの作成方法。
【請求項６】
前記溶接ロボットモデルと前記ワークモデルとが干渉する場合に、前記表示画面上において干渉が生じる部分の色を変更して警告することを特徴とする請求項４又は５に記載の動作プログラムの作成方法。
【請求項７】
前記溶接ロボットモデルの干渉チェックにおいて、チェック対象は、ワークモデルの他に、ポジショナモデル、スライダモデル、ノズルクリーナモデル、ワイヤカッタモデル及び足場モデルから選択された少なくとも１つの作業対象物以外の付帯物を含むことを特徴とする請求項２乃至６に記載の動作プログラムの作成方法。
【請求項８】
前記干渉チェックは、実際のワーク形状を有するワークモデルについての干渉チェックに変えて、又はその干渉チェックの後に更に、実際のワークよりも大きな形状を有するダミーワークモデルについて、前記溶接ロボットモデルと前記ダミーワークモデルとの干渉をチェックすることにより、溶接ロボットと実際のワークとの間のニアミスをチェックすることを特徴とする請求項２乃至７に記載の動作プログラムの作成方法。
【請求項９】
前記動作プログラムの作成中又は作成後に、干渉チェックが終了した動作点に戻って前記物体の動作条件、配置態様及び／又は動作点の位置を変更して、又は前記溶接ロボットモデルの動作条件、前記ワークモデルの配置態様及び／又は動作点の位置を変更して再度干渉チェックを行うことを特徴とする請求項１乃至７のいずれか１項に記載の動作プログラムの作成方法。
【請求項１０】
前記動作プログラムの作成中又は作成後に、ニアミスチェックが終了した動作点に戻って前記物体の動作条件、配置態様及び／又は動作点の位置を変更して、又は前記溶接ロボットモデルの動作条件、前記ワークモデルの配置態様及び／又は動作点の位置を変更して再度ニアミスチェックを行うことを特徴とする請求項に８に記載の動作プログラムの作成方法。
【請求項１１】
前記動作プログラムの作成後に、動作をシミュレーションし、最終的に干渉がないことを確認することを特徴とする請求項１乃至１０のいずれか１項に記載の動作プログラムの作成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、干渉の有無を判定しながら２以上の立体形状の物体、例えば溶接ロボットとワークを一連の動作軌跡で動作するように教示して動作プログラムを作成する動作プログラム作成方法に関する。
【背景技術】
【０００２】
図１４は、ロボット溶接装置を示す装置系統図である。図１４において、ワーク６４がポジショナ６５に支持されており、ワーク６４の溶接線を溶接する溶接ロボット６３が配置されている。溶接ロボット６３は通信手段によって制御コンピュータとしてのロボットコントローラ装置６１に接続されており、溶接ロボット６３はロボットコントローラ装置６１によって制御される。動作プログラムが格納されたパーソナルコンピュータ６０は、例えば通信ケーブル６２によってロボットコントローラ装置６１に接続されている。
【０００３】
このようなロボット溶接装置において、ワーク６４の溶接線を溶接ロボットによって自動溶接する際、溶接ロボットの溶接トーチ又は溶接ロボット本体等とワーク、ワークを溶接姿勢に支持するポジショナ又は溶接ロボットを所定方法に移動させるスライダ等とが接触することがある。このような接触を干渉という。干渉が発生すると溶接トーチをワークの溶接線に沿って移動することができなくなるので、干渉の発生の有無を予めチェックし、干渉の生じない動作プログラムを作成し、これに従って溶接作業を行う必要がある。
【０００４】
２以上の立体形状の物体の干渉チェック技術又は溶接ロボットのオフライン教示システムに関する従来技術として例えば特開平７−７８０１７号公報（特許文献１）、特開２００３−１２７０７７号公報（特許文献２）が挙げられる。
【０００５】
特許文献１には、溶接ロボットモデルとワークモデルが入力されるデータ入力装置と、ロボットの教示とシミュレーションを行うシミュレーション演算装置と、溶接ロボットモデル、ワークモデル、動作プログラム及び上記シミュレーション演算装置での判定結果を記憶するデータ記憶装置と、複数の選択された溶接ロボットモデル、ワークモデル及び動作プログラムの各組み合わせ毎に溶接ロボットモデルとワークモデルの干渉チェックを一括して行う干渉チェック演算装置と、干渉が発生している状態を表示するシミュレーション表示装置とを有する動作物体間の干渉チェック装置が開示されている。
【０００６】
また特許文献２には、ロボットプログラムを予め作成し、作成したロボットプログラムを画面上で実行させ、ロボットが外部機器と干渉した時点でそのときに実行されているロボットプログラムの実行位置を記録し、この記録内容に基づいてロボットプログラムを修正するロボットプログラム修正装置が開示されている。
【０００７】
【特許文献１】特開平７−７８０１７号公報
【特許文献２】特開２００３−１２７０７７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、上記特許文献１及び２に記載された従来の干渉チェック装置又はロボットプログラム修正装置は、いずれも教示プログラムを作成した後、この教示プログラムを実行してシミュレーションすることにより、ロボットとワークとの干渉の有無を判定している。このため、正確な教示プログラムを作成するために多くの時間を要するだけでなく、操作が煩雑になるという問題点がある。
【０００９】
即ち、上記従来技術では、ロボットの教示プログラムを一通り完成させた後、ロボットプログラムを実行するシミュレーションを行い、これによってワークモデルと溶接ロボットモデルとの干渉の有無を判定している。しかし、近時、溶接ロボットの普及に伴い曲げ板、鋳造部分又は開先を有する複雑な形状のワークがロボット溶接の対象となったこと、及び３次元ＣＡＤシステムの普及に伴い、オフライン教示に使用されるロボット、トーチ、ワーク等の形状が正確かつ複雑になり、これによって２次元画面での目視による干渉の判定が困難になったことから、プログラム作成後のシミュレーションでより多くの干渉箇所が発見されるようになり、その後のプログラムの修正に多くの時間を要するようになった。
【００１０】
また、ロボットの作業は連続した一連の動作であることから、教示プログラムのうち単に干渉が生じる箇所のみを変更すれば良いというものではなく、また、溶接中にトーチが動くとトーチケーブル（後述する図４、符号３０）の動きによってワイヤの送給に悪影響が生じることから、溶接中のトーチ角度を一定に保つ必要がある。このため、干渉箇所の前後のトーチ角度及びロボット姿勢等を見直す必要があることからプログラムの修正には長時間を要する。なお、修正後のプログラムに対して再び干渉の有無をチェックするためのシミュレーションが必要になるという問題点もある。
【００１１】
本発明はかかる問題点に鑑みてなされたものであって、ロボットとワークとの干渉がない動作プログラムを効率よく作成することができる動作プログラムの作成方法を提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明に係る動作プログラムの作成方法は、オフライン教示システムにより２以上の立体形状の物体を一連の動作軌跡で動作するように教示して動作プログラムを作成する動作プログラム作成方法において、前記物体を第１の動作点に誘導し物体間の干渉が生じるか否かをチェックする工程と、干渉が生じた場合は前記物体の動作条件、配置態様及び第１の動作点の位置のうち少なくとも１つの因子を変更して再度物体間の干渉が生じるか否かをチェックし干渉がなくなるまでこれを繰り返す工程と、干渉が生じていない場合又は干渉が解消された後前記物体を第２の動作点に誘導し物体間の干渉が生じるか否かをチェックする工程と、干渉が生じた場合は前記物体の動作条件、配置態様及び第２の動作点の位置のうち少なくとも１つの因子を変更して再度物体間の干渉が生じるか否かをチェックし干渉がなくなるまでこれを繰り返す工程と、第２の動作点についての干渉が生じていない場合又は干渉が解消された後、他に動作点があればそれらの動作点について同様の干渉チェックを行う工程と、を有し、全ての動作点について干渉がない動作プログラムを作成することを特徴とする。
【００１３】
また、本発明に係る他の動作プログラムの作成方法は、オフライン教示システムにより溶接ロボットモデル及びワークモデルが一連の動作軌跡で動作するように教示して動作プログラムを作成する動作プログラム作成方法において、前記溶接ロボットモデルを前記ワークモデルに対する第１の動作点に誘導する工程と、前記溶接ロボットモデルと前記ワークモデルとの間で干渉が生じるか否かをチェックする工程と、干渉が生じた場合は前記溶接ロボットモデルの動作条件、前記ワークモデルの配置態様及び第１の動作点の位置のうち少なくとも１つの因子を変更して再度前記溶接ロボットモデルと前記ワークモデルとの間の干渉が生じるか否かをチェックし干渉がなくなるまでこれを繰り返す工程と、干渉が生じていない場合又は干渉が解消された後前記溶接ロボットモデルを前記ワークモデルに対する第２の動作点に誘導する工程と、前記溶接ロボットモデルと前記ワークモデルとの間で干渉が生じるか否かをチェックする工程と、干渉が生じた場合は前記溶接ロボットモデルの動作条件、前記ワークモデルの配置態様及び第２の動作点の位置のうち少なくとも１つの因子を変更して再度前記溶接ロボットモデルと前記ワークモデルとの間の干渉が生じるか否かをチェックし干渉がなくなるまでこれを繰り返す工程と、第２の動作点についての干渉が生じていない場合又は干渉が解消された後、他に動作点があればそれらの動作点について同様の干渉チェックを行う工程と、を有し、全ての動作点について干渉がない動作プログラムを作成することを特徴とする。
【００１４】
この場合において、前記溶接ロボットモデルの動作条件は、その誘導経路、スライダで決められる前記溶接ロボットモデル位置、トーチ角度及び各関節角度からなる群から選択されたものであることをことが好ましい。
【００１５】
また、前記溶接ロボットモデル及び前記ワークモデルを表示画面上に表示し、マウス又はキーボードから前記溶接ロボットモデルをその動作点に誘導することもできる。
【００１６】
更に、前記干渉が生じた後の干渉を回避する工程は、前記溶接ロボットモデルについて誘導した前記動作条件又は変更した前記因子と同じ動作条件又は因子を前記オフライン教示システムのコンピュータに予め設定された態様で変更して前記干渉を回避するようにしてもよい。
【００１７】
更にまた、前記溶接ロボットモデルと前記ワークモデルとが干渉する場合に、前記表示画面上において干渉が生じる部分の色を変更して警告することができる。
【００１８】
更にまた、前記溶接ロボットモデルの干渉チェックにおいて、チェック対象は、ワークモデルの他に、ポジショナモデル、スライダモデル、ノズルクリーナモデル、ワイヤカッタモデル及び足場モデルから選択された少なくとも１つの作業対象物以外の付帯物を含むようにしてもよい。
【００１９】
前記干渉チェックは、実際のワーク形状を有するワークモデルについての干渉チェックに変えて、又はその干渉チェックの後に更に、実際のワークよりも大きな形状を有するダミーワークモデルについて、前記溶接ロボットモデルと前記ダミーワークモデルとの干渉をチェックすることにより、溶接ロボットと実際のワークとの間のニアミスをチェックするように構成してもよい。
【００２０】
更にまた、前記動作プログラムの作成中又は作成後に、干渉チェックが終了した動作点に戻って前記物体の動作条件、配置態様及び／又は動作点の位置を変更して、又は前記溶接ロボットモデルの動作条件、前記ワークモデルの配置態様及び／又は動作点の位置を変更して再度干渉チェックを行うように構成することができる。
【００２１】
更にまた、前記動作プログラムの作成中又は作成後に、ニアミスチェックが終了した動作点に戻って前記物体の動作条件、配置態様及び／又は動作点の位置を変更して、又は前記溶接ロボットモデルの動作条件、前記ワークモデルの配置態様及び／又は動作点の位置を変更して再度ニアミスチェックを行うようにしてもよい。
【００２２】
更にまた、前記動作プログラムの作成後に、動作をシミュレーションし、最終的に干渉がないことを確認するようにすることができる。
【発明の効果】
【００２３】
本願請求項１に係る動作プログラムの作成方法によれば、動作プログラムの作成中に、２以上の立体形状の物体間に干渉が生じるか否かをチェックし、干渉が生じた場合は前記物体の動作条件等を変更して再度干渉をチェックし、干渉がなくなるまでこれを繰り返すようにしたので、干渉チェックしながら動作プログラムを作成するため、干渉のない動作プログラムを短時間に作成することができる。
【００２４】
本願請求項２に係る動作プログラムの作成方法によれば、溶接ロボットの教示プログラムの作成中に、溶接ロボットモデルとワークモデルとの干渉が生じるか否かをチェックし、干渉が生じた場合は前記溶接ロボットモデルの動作条件、前記ワークモデルの配置態様等を変更して再度干渉をチェックし、干渉がなくなるまでこれを繰り返すようにしたので、教示プログラムが完成した時点で干渉が存在せず、干渉のない教示プログラムを迅速に作成することができる。
【００２５】
本願請求項３に係る動作プログラムの作成方法によれば、干渉が生じた場合に、溶接ロボットモデルの誘導経路、スライダで決められる前記溶接ロボット位置、トーチ角度及び溶接ロボットの各関節角度のうちから選択された条件を変更して再度干渉の有無をチェックするようにしたので、溶接ロボットモデルのワークモデルへの干渉を回避して正確な動作プログラムを作成することができる。
【００２６】
本願請求項４に係る動作プログラムの作成方法によれば、溶接ロボットモデル及びワークモデルを表示画面上に表示した状態で、画面上で前記溶接ロボットモデルを誘導することができるので、オペレータが直感的に溶接ロボットモデルを誘導したり、干渉確認することができる。
【００２７】
本願請求項５に係る動作プログラムの作成方法によれば、干渉が生じた場合の干渉回避工程において、溶接ロボットモデルの誘導した動作条件又は変更した因子を予め設置した態様で変更して干渉を回避することにより、確実に干渉を回避することができる。
【００２８】
本願請求項６に係る動作プログラムの作成方法によれば、溶接ロボットモデルとワークモデルとが干渉する場合に、干渉を画像として捉えることができるので、干渉する旨の警告を見落とすことがなく、これによってより正確な動作プログラムを作成することができる。
【００２９】
本願請求項７に係る動作プログラムの作成方法によれば、干渉チェック対象にワークモデルだけでなく、付帯物をも含めたので、溶接ロボットモデルと作業対象物以外の付帯物との干渉を回避することができる。
【００３０】
本願請求項８に係る動作プログラムの作成方法によれば、溶接ロボットモデルとポジショナモデル、スライダモデル、ノズルクリーナモデル、ワイヤカッタモデル等との干渉を回避することができ、より現実に即した実用価値の高い動作プログラムを作成することができる。
【００３１】
本願請求項９及び１０に係る動作プログラムの作成方法によれば、溶接ロボットモデルとワークモデル等とが干渉はしていないが、それに近いニアミス状態にあるか否かをチェックすることができるので、これによってより安全な動作プログラムの作成が可能となる。
【００３２】
本願請求項１１に係る動作プログラムの作成方法によれば、動作プログラムの作成中に、既に、干渉チェックが終了した動作点に戻って動作条件を変更した後、再度干渉チェックを行うようにしたので、後工程の干渉チェックで干渉があり動作条件を変更して干渉を回避しようとしてもそれが困難又は大きな変更になる場合に、従前の既に干渉チェックが終了した動作点についてその動作条件を変更して以後のチェックをやり直すことにより、後工程での干渉チェックで干渉を容易に回避できるようになる。また、動作プログラムの完成後においては、干渉が回避できる動作プログラムは完成したものの、例えば一部の動作点で動作条件の大きな変更が必要であった場合、その動作点よりも前の工程の動作点に戻って動作条件を変更することにより、大きな動きがなく、よりよい動作プログラムを作成できる。また、最初から動作プログラムを作成する場合に比して処理時間を短縮し、手間を省くことができる。
【００３３】
本願請求項１２に係る動作プログラムの作成方法はニアミスチェックの場合であり、請求項９と同様の効果を奏する。
【００３４】
本願請求項１３に係る動作プログラムの作成方法によれば、上述のようにして動作プログラムを作成した後に、動作をシミュレーションして干渉がないことを確認するようにしたので、干渉がない動作プログラムを検証することができる。
【発明を実施するための最良の形態】
【００３５】
以下、本発明の実施の形態について添付の図面を参照して詳細に説明する。図１は本実施形態に係る動作プログラム作成装置のブロック図である。図１において、この装置には、ワークモデルのデータベース１、ロボットシステムモデルのデータベース２に接続され３次元ＣＡＤソフトウエアが組み込まれたオフライン教示装置４が設けられている。オフライン教示装置４は外部からワークモデル及び溶接ロボットモデルのデータの入力を指示したり、ロボットの誘導を指示したりする入力部５と接続されている。またオフライン教示装置４はワークモデル及び溶接ロボットモデルを表示する表示部６と接続されている。更に、オフライン教示装置４は、作成した動作プログラムを記憶するプログラムのデータベース３に接続されると共に、前記プログラムをロボットコントローラ装置７に送信する通信装置８と接続されている。
【００３６】
図１の装置において、動作プログラムの作成は以下のように行われる。なお、本実施形態において、単に干渉チェックという場合は実際のワーク形状を有するワークモデルについての干渉チェックをいい、ニアミスチェックという場合は物体間が指定したマージンをもって接近しないかをチェックすることをいい、例えば、実際のワークよりも相似的に大きい形状を有するダニーワークモデルについての干渉チェックをいう。
【００３７】
（１）先ず、オフライン教示装置４において、ワークモデルの部品となるパーツモデルを作成する。パーツモデルは、例えばパソコン画面上に表示されたボタンによって図形の形状を選択した後、その寸法を入力することによって作成する。また、パーツモデルの作成には、このような寸法を入れる方法の外に、断面形状を入力し、板厚を入力する２Ｄ入力方法もある。
【００３８】
（２）次に、ワークモデルを作成する。作成したパーツモデルを移動し、積み木のように組み合わせることによりワークモデルを作成する。組み合わせ後は、ワークモデルの各パーツが一体ものであることを指示するために、例えば母材を親とし、各部材を子とする親子指定を行う。これは実際の作業現場における仮付けに相当する作業である。
【００３９】
（３）次に、ワークモデルの配置を行う。実際のシステムと同じように、コンピュータ上の仮想空間上のロボットシステムに、ワークモデルを配置する作業を行う。配置後は、ポジショナにワークモデルが取り付けられたことが画面を通じて指示される。
【００４０】
（４）次に、ロボット教示プログラムを作成する。即ち、実際のラインでのティーチング作業をコンピュータ上の仮想空間で実現させる。仮想空間でのティーチングは、先ず、画面上でポジショナ角度を数字で入力し、ワーク姿勢を決定する。次に、ロボットを誘導するために、ロボット先端位置座標Ｘ、Ｙ、Ｚを例えば数字で指定する。又は、画面上に表示されたＸ軸、Ｙ軸及びＺ軸に対応するボタンをクリックすると、予め設定された所定のピッチ（例えば１０ｍｍ間隔等）に従ってロボット先端位置座標のＸ軸、Ｙ軸、Ｚ軸方向の位置が変化するようにロボットが誘導される。又は、画面上の表で予めピッチ幅を選択し、Ｘ軸、Ｙ軸、Ｚ軸に対応するボタンをクリックすることにより、選択した軸方向に選択したピッチでロボット先端位置座表を誘導するようにすることもできる。
【００４１】
仮想空間上で移動させたい位置にロボットが到着すれば、キーボードより位置決定の指示を出すことにより位置が記憶される。このような作業を繰り返すことにより、仮想空間上で動作プログラムが作成される。なお、マウス又はキーボードのキーによって画面上でワークモデルの所定位置をクリックすることによってその位置に溶接ロボットモデルを誘導することもできる。また、動作プログラム作成工程では、仮想空間上でロボット軌跡を作成する作業以外にもアークＯＮ等の実機ティーチングで入力する必要がある全ての制御命令を入力することができる。
【００４２】
このとき、動作プログラムの作成と平行して溶接ロボットモデルとワークモデル又はワークの周辺機器モデルであるポジショナモデル及び／又はスライダモデルとの干渉の有無が判定され、干渉が生じる場合は溶接ロボットの誘導経路におけるロボット先端位置、トーチ角度、溶接ロボットモデルの各関節角度のうちいずれか１つ又は複数の条件を変更した上で再度干渉の有無が判定され、干渉がなくなるまでこの操作を繰り返し、干渉がなくなった時点で動作プログラムが作成される。ここで、溶接ロボットの誘導経路とは、溶接ロボットモデルを誘導する経路上のロボット先端位置をＸ、Ｙ、Ｚ座標で表した位置をいう。なお、干渉が回避できない場合は、動作プログラムの全部又は一部の作成を断念することがある。この場合に、一部断念することを溶接残しという。
【００４３】
溶接ロボットモデルとワークモデル又はその周辺機器とが干渉するか否かのチェックは例えば以下のように行われる。図２は干渉チェック方法を示す図である。
【００４４】
（Ａ）先ず、ワークモデルとしての立体Ａの面ｆｉ（ａｉ、ｂｉ、ｃｉ、ｄｉ）と溶接ロボットモデルとしての立体Ｂの頂点Ｐｊ（ｘｊ、ｙｊ、ｚｊ、１）の内積を図２（ａ）に示したように全て計算する。
【００４５】
次に、立体Ａが凸形状の時、ｍｉｎ（ｒｉｊ（ｉ＝１〜Ｐｓ））＞０なる立体Ａの平面ｆｉが存在すれば、即ち図２（ｂ）に示したように立体Ｂの全ての点が立体Ａの少なくとも１面以上外にあれば、立体Ａと立体Ｂとは干渉しない（粗チェック１）。
【００４６】
次に、立体Ａが凸図形の時、ｍａｘ（ｒｉｊ（ｉ＝１〜ｆＡ））≦０なる立体Ｂの頂点Ｐｊが存在すれば図２（ｃ）に示したように立体Ａと立体Ｂとは必ず干渉する（粗チェック２）。
【００４７】
（Ｂ）立体Ａが凸図形の時、ｒｆ１ｐ１×ｒｆ１ｐ２≦０かつｒｆ２ｐ１×ｒｆ２ｐ２≦０なる面ｆ１、ｆ２と稜線Ｐ１Ｐ２についてチェックを行い、図２（ｄ）の左側に示したように、ｆ１、ｆ２面と同時に稜線Ｐ１Ｐ２が干渉しないのであれば立体Ａと稜線Ｐ１Ｐ２とは干渉しないが、図２（ｄ）の右側に示したようにｆ１、ｆ２面と同時に稜線Ｐ１Ｐ２が干渉する場合は立体Ａと稜線Ｐ１Ｐ２とは干渉する（稜線チェック）。
【００４８】
（Ｃ）ｒｆ１ｐ１×ｒｆ１ｐ２≦０なる立体Ａの面ｆ１と立体Ｂの稜線Ｐ１Ｐ２において、立体Ａの面ｆｉと立体Ｂの稜線Ｐ１Ｐ２との交点が図２（ｅ）に示したように、面ｆｉの中にあるか外にあるかをチェックし、面ｆｉの中にあれば干渉し、外にあれば干渉しない。即ち、稜線Ｐ１Ｐ２と面ｆｉとの交点から面ｆｉの各頂点Ｐｆ１、Ｐｆ２、Ｐｆ３、Ｐｆ４に向けてベクトルを取り、各ベクトル間の角度の和を取り、この和が３６０度の場合は立体Ａの面ｆｉと立体Ｂの稜線Ｐ１Ｐ２とは干渉する。一方、各ベクトル間の角度の和が０の場合には立体Ａの面ｆｉと立体Ｂの稜線Ｐ１Ｐ２とは干渉しない（詳細チェック）。上述した各干渉チェック方法のうち１つ又は複数を組み合わせて干渉の有無をチェックし、全ての動作点について干渉のチェックを行い、干渉がなくなった時点で動作プログラムが完成される。動作プログラム完成後、オペレータの判断により、その動作プログラムが登録される。
（５）動作プログラムが完成したらシミュレーション（再生）を行う。
【００４９】
仮想空間上でシミュレーションを行い作成された動作プログラムの妥当性を確認する。
シミュレーションの働きとしては以下のものがあげられる。
【００５０】
（ａ）ロボットとワークとの干渉チェックが行われる。即ち、動作プログラムで不当な経路を通るように作成した場合や、トーチが干渉するような狭隘箇所を無理にティーチングした場合はシミュレーション中に干渉箇所を赤く表示するなどして警告が促される。
【００５１】
（ｂ）命令の誤りチェックが行われる。即ち、動作プログラムで不当な位置に命令が挿入されていた場合、また不当な組み合わせの命令がセットされた場合に警告が発せられる。
【００５２】
（ｃ）動作範囲チェックが行われる。即ち、シミュレーションすることで作成した動作プログラムによってロボット各軸のリミットがオーバーしないか、ロボットが特異点に入るかどうかを事前に確認することができる。
（６）次に、プログラムを保存する。
【００５３】
このように、動作プログラム作成中に干渉の有無を判定し、判定結果に基づいて修正を加えながら動作プログラムを作成することにより、プログラム作成作業を省力化することができる。
【００５４】
図３は、図１の要部を詳細に示したブロック図であり、表示部及び入力部を除いて、例えばオフライン教示装置のコンピュータに組み込まれたソフトウエアである。図３において、ロボット教示部２１は溶接ロボットモデルを制御するロボット制御部２２と双方向に接続されている。また、ロボット教示部２１はキーボード又はマウスからなるオペレータがデータを入力する入力部２３及びワークやシステムモデルを表示する表示部２４に接続されている。更に、ロボット教示部２１はワークモデル及び溶接ロボットモデルの各頂点座標に基づいてワークモデルと溶接ロボットモデルとの干渉の有無を判定する干渉チェック部２５及びオペレータによって作成された動作プログラムを保存するプログラム保存領域２６に接続されている。
【００５５】
ロボット教示部２１はキーボード又はマウス等の入力部２３によってオペレータが入力したロボットの移動位置、又はオペレータが入力した移動量に基づいて算出したロボットの移動位置を、ロボット制御部２２に送信する。即ち、（１）オペレータがキーボードを使用して、目標となるロボット位置・姿勢に対応するロボット先端位置座標Ｘ、Ｙ、Ｚ、及びトーチ角度α、β、γ（又はロボット先端位置座標Ｘ、Ｙ、Ｚ、手首姿勢ｓ４乃至ｓ６、関節角度θ１乃至θ６）を直接数値入力して、ロボットの移動位置を指定する方法、（２）オペレータがキーボードを使用して、ロボットの移動量を入力し、ロボット教示部２１がこのロボット移動量から目標となるロボット位置・姿勢に対応するロボット先端位置座標Ｘ、Ｙ、Ｚ、トーチ角度α、β、γ（又はロボット先端位置座標Ｘ、Ｙ、Ｚ、手首姿勢ｓ４乃至ｓ６、関節角度θ１乃至θ６）を算出して、ロボットの移動位置を指定する方法、又は（３）オペレータがマウスを使って、目標となるロボット位置をクリックし、目標となるロボット位置・姿勢に対応するロボット先端位置座標Ｘ、Ｙ、Ｚ、トーチ角度α、β、γ（又はロボット先端位置Ｘ、Ｙ、Ｚ、手首姿勢ｓ４乃至ｓ６、関節角度θ１乃至θ６）を指定する方法等により、ロボット移動位置を指定する。このようにして、指定されたロボットの移動位置がロボット制御部２２に送信される。
【００５６】
そして、ロボット教示部２１はロボット制御部２２から受信したロボット各軸の関節角度θ１乃至θ６の値より、その時の溶接ロボットモデル位置を変更すると共に、溶接ロボットモデルの位置変更に伴い、表示部２４に画面を再描画する。またロボット教示部２１は、干渉チェック部２５によって判定された溶接ロボットモデルとワークモデルとの干渉があるか否かの判定結果を表示部２４に表示する。更に、干渉がある旨の表示に従ってオペレータによってロボット誘導経路等が変更され、干渉の可能性がなくなり、オペレータがその位置でよいと判断した場合は、そのプログラムをプログラム保存領域２６に保存する。
【００５７】
以下、溶接ロボットの誘導経路におけるロボット先端位置Ｘ、Ｙ、Ｚ、トーチ角度α、β、γ、各関節角度θ１乃至θ６について説明する。図４は溶接ロボットを表示する対象座標を示す説明図である。図４において、Ｙ軸とは溶接ロボットの左右方向に平行な軸をいい、狙い位置を定めるための例えば左方向の移動量を（＋）で、右方向の移動量を（−）で表す。Ｘ軸とは溶接ロボットの前後方向に平行な軸をいい、狙い位置を定めるための例えば前方向の移動量を（＋）で、後ろ方向の移動量を（−）で表す。また、Ｚ軸とは溶接ロボットの上下方向に平行な軸をいい、狙い位置を定めるための例えば上方向の移動量を（＋）で、下方向の移動量を（−）で表す。
【００５８】
また、トーチ角度におけるトーチの右振り又は左振りとは、トーチの先端部を固定した状態におけるトーチのＸ軸回りの回転角度γをいい、トーチの上向き又は下向きとはトーチの先端部を固定した状態におけるトーチのＹ軸回りの回転角度βをいう。また、トーチの右回り又は左回りとは、トーチの先端部を固定した状態におけるトーチのＺ軸回りの回転角度αをいう。
【００５９】
図５は溶接ロボットにおける各関節角度を示す説明図である。図５において、関節角度θ１とはロボット本体の回転軸１１に対する回転角度をいい、例えば右方向の回転角度θ１を（−）、左方向の回転角度θ１を（＋）で表す。関節角度θ２とはロボット本体における回転軸１１に直交する第２回転軸１２に対する回転角度をいい、例えば前方向の回転角度θ２を（＋）、後ろ方向の回転角度θ２を（−）で表す。
【００６０】
関節角度θ３とはロボット本体の垂直の回転軸１１に直交する第３回転軸１３に対する回転角度をいい、例えば上方向の回転角度θ３を（−）、下方向の回転角度θ３を（＋）で表す。関節角度θ４とはロボット本体の上部に接続されたロボットアームの回転軸１４に対する回転角度をいい、例えば右方向の回転角度θ４を（＋）、左方向の回転角度下４を（−）で表す。
【００６１】
関節角度θ５とはロボットアームの回転軸１４に直交する回転軸１５に対するトーチ先端部の回転角度をいい、例えば上方向の回転角度θ５を（−）、下方向の回転角度θ５を（＋）で表す。関節角度θ６とはロボットアームの回転軸１６に対する回転角度をいい、例えば右方向の回転角度θ６を（＋）、左方向の回転角度θ６を（−）で表す。
【００６２】
このようなトーチの関節角度θ１乃至θ６を知ることによって溶接ロボット姿勢が分かり、溶接ロボットモデルとワークモデル又はその周辺機器であるスライダ及び／又はポジショナとの位置関係、即ち干渉の有無が上述したように計算によって求められる。
【００６３】
以下、このような構成の本実施形態に係る動作プログラム作成装置の動作を説明する。図６−１乃至図６−３は、本実施形態である動作プログラムの作成方法のフローを示す図である。図６−１乃至図６−３において、台形で示した部分はオペレータによる処理を示し、長方形で示した部分はコンピュータによる処理を示す。
【００６４】
先ず、オペレータはオフライン教示装置４に記憶された溶接ロボットモデル、ワークモデル等から教示作業を行う溶接ロボットモデル及びワークモデル又はその周辺機器モデルとしてポジショナモデル及び／又はスライダモデルを選択する（ステップＳ１）。溶接ロボットモデル及びワークモデル等の選択が行われるとディスプレイ上に選択された溶接ロボットモデル及びワークモデル等が表示される（ステップＳ２）。
【００６５】
ここで、予め「干渉チェックする」か、「ニアミスチェックする」か、両方を行うかを設定し、ニアミスチェックを行う場合は、「ニアミス距離」を設定する（ステップＳ３）。このとき、ニアミス距離として例えば５ｍｍが入力される。本実施形態は、干渉チェック及びニアミスチェックの双方を行う場合のものである。
【００６６】
上述した設定が行われると次のステップに進むが、設定がなされない場合はステップＳ３を繰り返す。干渉とは、２つの物体、例えば溶接ロボットモデルとワークモデルとが接触することをいい、ニアミスとは２つの物体、例えば溶接ロボットモデルとワークモデルが予め設定したニアミス距離内に接近することをいう。
【００６７】
ステップＳ３による設定がなされた場合は、マウス及びキーボードより容易に作業ができるように、ディスプレイ上の視野が調整され（ステップＳ４）、その後、指示に基づいてディスプレイ上の溶接ロボットモデル及びワークモデル等が表示される（ステップＳ５）。
【００６８】
次に、オペレータはロボットが作業を行うための第１動作点にマウス又はキーボードを使用して溶接ロボットモデルを誘導する（ステップＳ６）。溶接ロボットモデルを誘導して溶接開始位置が指定されると、溶接ロボットモデルが図７の第１動作点に移動する（ステップＳ７）。図７はワークモデルの溶接線を示す図であって、第１動作点と第２動作点を結ぶ線が溶接線となる。なお、前記第１動作点、第２動作点のほか、溶接ロボットが作業しない空走移動動作であるエアカットの起点、終点又はその間の任意の点を動作点として設定することもできる。第１動作点、第２動作点等の動作点としての溶接トーチの通過点を教示して溶接プログラムを作成することをティーチングという。
【００６９】
溶接トーチを第１又は第２動作点に移動したとき、例えばオペレータがキーボードキーで１０ｍｍピッチ又は１０゜ピッチに動かしたタイミング又はマウスで画面上の１点をクリックし、溶接ロボットを誘導したタイミングで、溶接ロボットモデルとワークモデルとが干渉するか否かのチェックをコンピュータが上述のようにして自動で行う（ステップＳ８）。
【００７０】
干渉チェックの結果、溶接ロボットモデルとワークモデルとが干渉する場合（ステップＳ９）は、干渉した部分の溶接ロボットモデルとワークモデルとを例えば赤色で表示することによってオペレータに警告を発する（ステップＳ１０）。なお、干渉が生じない場合は画面上に警告が表示されない。従って、オペレータは、警告の表示がない場合に、干渉が生じないことを認識する。
【００７１】
次に、ワークモデルと溶接ロボットモデルとがニアミスしたか否かがチェックされる（ステップＳ１１）。一方、ステップＳ９において、溶接ロボットモデルとワークモデルとが干渉しない場合は、ステップＳ１０を省略してステップＳ１１に移行し、溶接ロボットモデルとワークモデルとがニアミスしたか否かが判定される（ステップＳ１１）。ニアミスとは２つの部材が予め設定したニアミス距離以内に接近することをいう。ここで、ニアミスは、例えば予めコンピュータに設定されたニアミス距離に相当する分だけワークモデルを相似的に大きくした場合の干渉と考えることができる。なお、干渉チェックの後にニアミスチェックをしているので、干渉チェックで干渉が生じた場合はそのパーツのニアミスチェックを省略してもよい。なお本実施形態において、干渉チェックの後にニアミスチェックを行っているのは、干渉は回避できたとしても、ニアミスが発生した場合は、その動作プログラムは使用できるものの、実行中に十分注意を払う必要があることを認識するためである。理想的には、干渉及びニアミスの双方が発生しない動作プログラムを作成する。
【００７２】
判定の結果、ニアミスが生じる場合はニアミスする部分の溶接ロボットモデルとワークモデルを例えば黄色で表示し（ステップＳ１２）、ニアミスが発生しない場合はステップＳ１２を省きステップＳ１３に進む。ニアミスが生じない場合は警告は表示されない。干渉及びニアミスが全くない場合は（ステップＳ１３）、必要に応じて溶接ロボットモデル及びワークモデル等の色を元の色、例えば銀色に戻し（ステップＳ１４）、その後、ステップＳ１７に進み、溶接ロボットの作業データが全て作成されたか否かが判定される（ステップＳ１７）。
【００７３】
一方、干渉又はニアミスが発生した場合は、オペレータによって又は自動で溶接ロボットモデルの誘導経路等を変更して干渉又はニアミスを回避する（ステップＳ１５ａ、ステップＳ１５ｂ）。
【００７４】
即ち、オペレータによる溶接ロボットモデルの誘導経路の変更は例えば以下のように行われる。即ち、例えば図８に示したように、溶接ロボットモデルの溶接ノズルとワークモデルとが干渉する場合には、オペレータは溶接ロボットモデルの狙い位置Ｘ、Ｙ、Ｚを図９に示したように変更する。図８は溶接ロボットの溶接ノズルとワークとが干渉する場合を示す図、図９は、干渉が生じた場合の溶接ロボットモデルの誘導方法を示す説明図である。図９において、オペレータは表示画面上を例えばマウスでクリックして溶接ロボットモデルを例えばＸ（前後）方向に１５２０．０ｍｍ、Ｙ（左右）方向に０．０ｍｍ、Ｚ（上下）方向に−３０５．０ｍｍ移動させる。この場合において、キーボードのキーをヒットするか又はマウスでクリックすることによって１０ｍｍ、１００ｍｍ等の一定ピッチで溶接ロボットモデルを移動させ干渉を回避することもできる。また、キーボードによって位置情報としての数値を入力して溶接ロボットモデルを移動させることもできる。
【００７５】
また、このときオペレータは例えばトーチ角度α、β、γを変更することもできる。図１０はワークモデル表示画面上でトーチ角度を変更する場合を示す説明図である。図１０において、オペレータはトーチ角度αを−０．０１度、βを−２４．９７度を変更し、これによって、干渉又はニアミスを回避する（ステップＳ１５ａ）。図１１は、オペレータによってキーボードのキーをヒットし、又はマウスをクリックして誘導された溶接ロボットモデル位置、又はキーボードを使用して位置情報としての数値を入力して溶接ロボットモデルを移動させた場合の溶接ロボットモデル位置を示す図である。
【００７６】
一方、自動で干渉又はニアミスを回避する場合は、干渉又はニアミスが発生した場合、前記溶接ロボットモデルについて誘導した操作条件又は変更した因子と同じ動作条件又は因子を前記オフライン教示システムのコンピュータに予め設定された態様で変更して前記干渉を回避する（ステップＳ１５ｂ）。
【００７７】
次に、オペレータによってロボットシステムの作業データは全て作成されたか否かが判断され（ステップＳ１７）、全て作成された場合は動作プログラムの作成を終了する。一方、全て作成されていない場合はステップＳ７に戻り、その後、同様の操作を繰り返し、溶接ロボットモデルの動作プログラムを作成する。
【００７８】
動作プログラムの作成中又は作成完了後に、一旦、干渉又はニアミスチェックを行った先の動作点まで溶接ロボットモデルを誘導し、その部分の動作条件を変更して再度干渉又はニアミスチェックを行い、これによって動作プログラムを修正することもできる。
【００７９】
溶接ロボットモデルの動作プログラムが完成した後、必要に応じて完成した動作プログラムをシミュレーションする。図１２は本実施形態で作成した動作プログラムのシミュレーション方法のフローを示す図である。
【００８０】
図１２において、先ずオペレータは、シミュレーションによって干渉の有無をチェックしたい動作プログラム名、溶接ロボットモデル名、ワークモデル名及び例えば干渉チェックの演算結果を格納する出力ファイル名を、例えば図３のデータ入力部２３によってロボット教示部２１に入力する（ステップＳ１８）。
【００８１】
ステップＳ１８で干渉チェック対象が選択されると、ロボット制御部２２が選択された動作プログラムを実行し、干渉チェック部２５が選択された溶接ロボットモデルとワークモデルとの間に干渉が生じるか否かの演算を自動的に開始し、干渉チェック処理を行う（ステップＳ１９）。干渉が生じるか否かのチェックは、上述した図２に記載された方法と同様の方法によって行われる。
【００８２】
ステップＳ１９の干渉チェック処理が完了すると、その結果が表示部２４の表示画面に「干渉有り」又は「干渉無し」のように表示され、出力リストＴが例えばロボット教示部２１内に設けられた図示省略したデータ記憶部に記憶される（ステップＳ２０）。
【００８３】
次に、干渉チェック処理が終了した後に教示プログラムの修正を行う。このときオペレータは上述したデータ記憶部から図１３に示す干渉チェック出力リストを呼び出し、表示部２４の画面上に表示させる。干渉チェックリストにおいて、第１の動作点とは、ロボットモデル及びワークモデルの干渉が発生している教示点間の開始点の番号を示し、ロボット部位名及びワーク部位名とは干渉が発生しているロボット及びワークの部位名の名称を示している。
【００８４】
このような干渉チェック出力リストが表示部２４の画面上に表示されると、オペレータは表示されている出力ファイル名に対応した教示プログラムを選択し、データ入力装置により上記教示点番号を入力するとロボットモデルとワークモデルとが入力された教示点番号において、例えばステップＳ６に戻ってからコンピュータが自動干渉チェックを行い、干渉が発生しないように教示プログラムの変更、修正を行い、修正後の教示プログラムをデータ記憶部に記憶させ、動作プログラムの修正処理を終了する。
【００８５】
本実施形態によれば、動作プログラムの作成中に溶接ロボットモデルとワークモデル、ポジショナモデル又はスライダモデルとの干渉は又はニアミスチェックを行うことができるので、干渉又はニアミスのない動作プログラムを迅速に作成することができる。
【００８６】
本実施形態によれば、干渉又はニアミスチェックが自動で行われるので、従来行っていた目視による干渉又はニアミスチェックが不要となるので、オペレータの負担が軽減される。また、本実施形態によれば、シミュレーションを実行する前に正確な動作プログラムを作成することができるので、シミュレーション後に、ロボットの連続する動作全体を見直すというリスクが少なくなる。
【００８７】
本実施形態によれば、溶接ロボットとワークとの干渉又はニアミスの発生の有無だけでなく、ワーク周辺機器、例えばポジショナ、スライダ等と溶接ロボットとの干渉又はニアミスの有無を判定しながら動作プログラムを作成するので、ワークのみならず、その周辺機器との干渉、ニアミスを確実に回避した正確な動作プログラムを迅速に作成することができる。
【００８８】
また、本実施形態によれば、干渉又はニアミスが発生する場合は、ディスプレイ画面上に溶接ロボットモデル及びワークモデル等が通常の色彩とは異なる色彩で警告表示されるので、オペレータは容易に干渉又はニアミスの発生を知ることができ、これに基づいて溶接ロボットモデルの誘導経路を変更して干渉又はニアミスのない動作プログラムを作成することができる。
【００８９】
上記実施形態は、図６−１のフロー図のステップＳ３において、干渉チェックとニアミスチェックの両方を設定した場合について説明したが、本発明はこれに限定されず、干渉チェックのみ又はニアミスチェックのみを行うことができる。干渉チェックのみを行う場合は、ステップＳ１１及びステップＳ１２が省略され、ニアミスチェックのみを行う場合は、ステップＳ９及びステップＳ１０が省略される。
【００９０】
なお、本発明は上記実施例に限定されず、種々の変形が可能である。即ち、干渉チェック対象としては、ロボットとワークとの組み合わせに限らず、複数のワーク相互間、複数の溶接ロボット相互間のように２以上の動作物体間の干渉をチェックすることができる。また、動作物体群相互の干渉の有無を判定しながら動作プログラムを作成することもできる。
【産業上の利用可能性】
【００９１】
本発明は、ロボットの動作プログラムの作成時に溶接ロボットとワーク等との干渉の有無を判定し、干渉が生じる場合にはオペレータの指示によって、又はコンピュータのソフト上で動作プログラムの作成条件を変更した後、再度干渉をチェックを行い、干渉がなくなるまでこの操作を繰り返す。従って、これによって正確な動作プログラムを短時間で作成することができるものであり、ロボットの誘導作業を数多く行う溶接ロボットの分野で特に有用である。
【図面の簡単な説明】
【００９２】
【図１】本発明の実施形態に係る溶接ロボットの動作プログラム作成装置のブロック図である。
【図２】干渉チェック方法を示す説明図である。
【図３】図１の要部を詳細に示す図である。
【図４】溶接ロボットモデルのトーチ角度を示す説明図である。
【図５】溶接ロボットモデルの関節角度を示す説明図である。
【図６−１】本発明に係る溶接ロボットの動作プログラム作成方法のフローを示す図である。
【図６−２】本発明に係る溶接ロボットの動作プログラム作成方法のフローを示す図である。
【図６−３】本発明に係る溶接ロボットの動作プログラム作成方法のフローを示す図である。
【図７】溶接作業プログラムの一例を示す図である。
【図８】ロボット誘導中における溶接ノズルとワークとの干渉状態を示す図である。
【図９】ロボットの誘導方法を示す図である。
【図１０】ロボットの誘導方法を示す図である。
【図１１】ロボットの誘導方法を示す図である。
【図１２】シミュレーション方法のフロー図である。
【図１３】干渉チェック出力リストを示す図である。
【図１４】ロボット溶接装置を示す装置系統図である。
【符号の説明】
【００９３】
１：ワークモデルのデータベース
２：ロボットシステムモデルのデータベース
３：プログラムのデータベース
４：オフライン教示装置
５：入力部
６：表示部
７：ロボットコントローラ装置
８：通信装置
１１：ロボット本体の回転軸
１２：第２回転軸
１３：第３回転軸
１４：ロボットアームの回転軸
１５：ロボット本体の回転軸に直交するロボットアームの回転軸
１６：ロボットアームの回転軸
２１：ロボット教示部
２２：ロボット制御部
２３：入力部
２４：表示部
２５：干渉チェック部
２６：プログラム保存領域
３０：トーチケーブル
６０：パーソナルコンピュータ
６１：ロボットコントローラ装置
６２：通信ケーブル
６３：溶接ロボット
６４：ワーク
６５：ポジショナ
【図１】
2006190228.tif 000003
【図２】
2006190228.tif 000004
【図３】
2006190228.tif 000005
【図４】
2006190228.tif 000006
【図５】
2006190228.tif 000007
【図６−１】
2006190228.tif 000008
【図６−２】
2006190228.tif 000009
【図６−３】
2006190228.tif 000010
【図７】
2006190228.tif 000011
【図８】
2006190228.tif 000012
【図９】
2006190228.tif 000013
【図１０】
2006190228.tif 000014
【図１１】
2006190228.tif 000015
【図１２】
2006190228.tif 000016
【図１３】
2006190228.tif 000017
【図１４】
2006190228.tif 000018