(57)【特許請求の範囲】
【請求項１】
溶接トーチに設けられたセンサにより検出された開先上の検出基準点がロボット座標系で記憶された作業プログラムを格納する第１格納手段と、
前記センサの前記溶接トーチに対する取付位置変更前の現センサ−トーチ変換行列を格納する第２格納手段と、
前記センサの前記溶接トーチに対する取付位置変更後の新センサ−トーチ変換行列を求めるセンサキャリブレーションが行われた際、その新センサ−トーチ変換行列を格納する第３格納手段と、
前記現センサ−トーチ変換行列と前記新センサ−トーチ変換行列に基づいて差分変換行列を算出する算出手段と、
前記作業プログラムに含まれる前記検出基準点を前記差分変換行列に基づいて更新する更新手段を備えることを特徴とする溶接ロボット制御装置。
【請求項２】
前記作業プログラムは、前記検出基準点毎に目印データが記述されており、
前記更新手段は、前記目印データを探索して前記検出基準点を更新することを特徴とする請求項１に記載の溶接ロボット制御装置。
【請求項３】
前記目印データは、センシング命令であることを特徴とする請求項２に記載の溶接ロボット制御装置。
【請求項４】
更新対象の作業プログラムを選択する選択手段を備え、
前記更新手段は、前記選択手段により選択された作業プログラムに含まれる前記検出基準点を前記差分変換行列に基づいて更新することを特徴とする請求項２または請求項３に記載の溶接ロボット制御装置。
【請求項５】
前記センサは、レーザセンサであることを特徴とする請求項１乃至請求項４のうちいずれか１項に記載の溶接ロボット制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、溶接ロボット制御装置に関するものである。
【背景技術】
【０００２】
従来、アーク溶接ロボットでは、溶接前の教示時に溶接ロボットに取り付けられたセンサでワークの位置を検出して演算し、その演算結果に基づいて、教示時の溶接教示点を補正することが行われている。前記センサとしては、例えばワイヤタッチセンサが溶接用途では使用されている。
【０００３】
この溶接教示点の補正方式には、絶対位置方式と相対位置方式がある。絶対位置方式では、例えばワイヤタッチセンサで、溶接線上の溶接開始点と、溶接終了点をそれぞれ狙い位置として検出して演算し、その狙い位置をロボット制御装置が記憶して、溶接実行時にその狙い位置の位置情報を直接利用して溶接を行うものである。
【０００４】
一方、相対位置方式では、センサで検出・演算した溶接の狙い位置と、予め教示した狙い位置との差を「ずれ量」としてロボット制御装置が記憶し、その情報でティーチング位置を補正（平行移動）して溶接を行う。
【０００５】
具体的に、相対位置方式を図９〜図１２を参照して説明する。
図９に示すように、教示時に、マスターワークＷの溶接線Ｙ上において、ワイヤタッチセンサ２００が検出・演算する位置Ｐ１０１，Ｐ１０２、及び溶接開始点Ｐ１０３、終了点Ｐ１０４を教示しておく。前記教示された点は教示点という。
【０００６】
次に、実際の溶接対象のワークＷ１に対して、溶接ロボットを自動運転でサーチ動作を行わせ、図１０に示すようにワイヤタッチセンサ２００が検出・算出した位置Ｐ１０１’と先のＰ１０１の差であるずれ量Ｌ１、及びワイヤタッチセンサ２００が検出・算出した位置Ｐ１０２’と位置Ｐ１０２の差であるずれ量Ｌ２を求めて、そのずれ量Ｌ１，Ｌ２をロボット制御装置が記憶する。
【０００７】
次に、図１１に示すように実際の溶接対象のワークＷ１に対して、溶接ロボットを自動運転で溶接動作を行う場合、教示された溶接開始点Ｐ１０３をずれ量Ｌ１で補正して溶接開始点Ｐ１０３’に補正するとともに、溶接終了点Ｐ１０４をずれ量Ｌ２で溶接終了点Ｐ１０４’に補正する。
【０００８】
相対位置方式は、ずれ量を加工できるので、様々な実ワークへの対応能力が高く、きめ細かな狙い位置の調整が可能である。又、相対位置方式は、検出位置と溶接位置を別個にして考えられるので、直接センシングできない点も補正可能である。例えば、図１１では、センシングできないワークＷ１の端部からの溶接が可能である。さらに、記憶したデータの使い回しができるため、タクトタイムの無駄が少ない利点がある。
【０００９】
例えば、図１１に示すように、ワークＷ１が教示時のマスターワークＷに対して平行にしかずれない場合は、位置Ｐ１０２の教示及び位置Ｐ１０２’の検出は不要で、ずれ量Ｌ１で溶接終了点Ｐ１０４を溶接終了点Ｐ１０４’に補正すればよい。
【００１０】
又、相対位置方式でのＴ字ワークの両面溶接を行う場合の利点を説明する。図１２は、Ｔ字ワークを平面視したものであり、点線はマスターワークＷを示し、実線は溶接を行うワークＷ１を示している。又、図１２において、Ｙ１０及びＹ１１は、マスターワークＷの表側と裏側の溶接線を示し、Ｙ１２及びＹ１３はワークＷ１の表側及び裏側の溶接線をそれぞれ示している。又、マスターワークＷの表側の溶接線Ｙ１０の溶接開始点、及び溶接終了点をＰ１１０，Ｐ１１１とし、裏側の溶接線Ｙ１１の溶接開始点、及び溶接終了点をＰ１１２，Ｐ１１３とする。
【００１１】
そして、この場合、マスターワークＷの裏側の溶接線Ｙ１１の溶接開始点Ｐ１１２，溶接終了点Ｐ１１３については、立上がり壁の厚みｔを既知であるとし、溶接線Ｙ１０，Ｙ１１を平行とし、かつ、裏側の溶接開始点Ｐ１１２と溶接終了点Ｐ１１３の位置は、溶接開始点Ｐ１１０と溶接終了点Ｐ１１１に対して前記厚みｔ分、平行移動した位置とする。
【００１２】
一方、ワークＷ１の表側の溶接線Ｙ１２の溶接開始点、及び溶接終了点をＰ１１０’，Ｐ１１１’とし、並びに裏側の溶接線Ｙ１３の溶接開始点、及び溶接終了点をＰ１１２’，Ｐ１１３’とする。
【００１３】
この場合、図１２に示すように、ワークＷ１がマスターワークＷとずれていた場合、表側の溶接線Ｙ１０での溶接開始点のずれ量と、溶接終了点のずれ量を上記した図１０、及び図１１で説明したことと同様の方法で検出・演算を行うことにより、ワークＷ１の表側の溶接線での溶接開始点Ｐ１１０’及び溶接終了点Ｐ１１１’に補正できる。合わせて、裏側の溶接線Ｙ１３の溶接開始点Ｐ１１２’、及び溶接終了点Ｐ１１３’についても、厚みｔと前記ずれ量に基づいて補正できる。
【００１４】
ワークＷ１では、表側の溶接線Ｙ１２の溶接開始点Ｐ１１０’及び溶接終了点Ｐ１１１’だけをセンシングすることで裏側の溶接線Ｙ１３の溶接開始点Ｐ１１２’及び溶接終了点Ｐ１１３’はセンシング動作なしで位置補正が行える。
【００１５】
ところで、上記は、ワイヤタッチセンサの相対位置方式について説明したが、例えば、特許文献１、特許文献２、特許文献３のように溶接トーチに取り付けたレーザセンサを使用する方法も一般的に知られている。
【００１６】
レーザセンサを用いた場合、ワイヤタッチセンサより教示ステップを少なくすることができる。例えば、図１０で示した隅肉継ぎ手のワークＷ１における位置Ｐ１０１を検出動作する場合、ワイヤタッチセンサでは１０ステップ（センシング点が４点、アプローチおよび退避点６点）必要となるが、図１３に示すように、レーザセンサＬＳではアプローチ１点とセンシング命令の計２ステップですむ利点がある。なお、図１３中、ＦＯＶはレーザセンサＬＳの視野範囲を示している。
【００１７】
さらに、レーザセンサでは、検出精度が高い上に、タッチセンサを適用不可能なワークの検出も可能となる。
また、図１４に示すようにレーザセンサＬＳによるワークの位置検知はセンサ座標系基準、例えばカメラ座標系基準で行われ、検出基準点は、カメラ座標系で格納されている。図１４では、左重ね継ぎ手を視野範囲ＦＯＶのレーザセンサＬＳで検出する様子を図示している。ワイヤタッチセンサではセンシング時、溶接時ともワイヤ先端が制御点であるのに対し、レーザセンサでは、センシング時の制御点はセンサの視野範囲のある一点となり、溶接時の制御点とは異なる。したがって、溶接ワイヤ先端（溶接時の制御点）と、レーザセンサのセンシング制御点との取り付け関係を求める手段として、ソフトウェアにより取り付け関係を変換（行列）で求める方法で行われることが多い。ここで、溶接ワイヤ先端とレーザセンサのセンシング制御点の取り付け位置関係を求める操作をセンサキャリブレーションと呼び、この際に求められる変換行列をセンサ座標系−トーチ座標系の変換行列と呼ぶ。
【先行技術文献】
【特許文献】
【００１８】
【特許文献１】特許第３３１７１０１号公報
【特許文献２】特開平７−１０４８３１号公報
【特許文献３】特許第３６０８６７３号公報
【発明の概要】
【発明が解決しようとする課題】
【００１９】
上記のように相対位置方式では、検出基準点をカメラ座標値（センサ座標値ともいう）で格納し、センシング時には、センシングして得られた検出座標値と格納されている検出基準点の座標値の差分を求め、カメラ座標系−トーチ座標系の変換行列によりロボット座標系基準のずれ量を求める。
【００２０】
前述のようにレーザセンサでは、検出座標値はカメラ座標系で求められる。作業プログラムに反映するには、検出点をロボット座標に変換する。このとき、レーザセンサをぶつけるなどの理由で着脱し、溶接トーチに対するレーザセンサの取り付けが変わってしまった場合、レーザセンサとトーチとの取り付け位置関係がずれてしまうために、検出基準点と溶接点との位置関係もずれてしまう。
【００２１】
ここでマスターワークを元の位置に設置できれば、センシング命令の検出基準点を更新するだけでよい。しかし、マスターワークがなかったり、その設置位置を復元できない場合には、検出基準点の更新に加え、溶接点の修正を一点一点行う必要がある。
【００２２】
又、ワーク数が多かったり、溶接箇所が多かったり、大型ワークが対象であったりすると、教示修正にかかる時間は膨大になる。このように、従来の相対位置方式では、既教示点の扱いについて課題がある。
【００２３】
本発明の目的は、レーザセンサを用いて相対位置方式により教示点の位置補正を行う場合において、レーザセンサの着脱等により溶接トーチとの取付位置関係が狂ったとしても、教示修正にかかる時間を大きく削減することができる溶接ロボット制御装置を提供することにある。
【課題を解決するための手段】
【００２４】
上記問題点を解決するために、請求項１に記載の発明は、溶接トーチに設けられたセンサにより検出された開先上の検出基準点がロボット座標系で記憶された作業プログラムを格納する第１格納手段と、前記センサの前記溶接トーチに対する取付位置変更前の現センサ−トーチ変換行列を格納する第２格納手段と、前記センサの前記溶接トーチに対する取付位置変更後の新センサ−トーチ変換行列を求めるためにセンサキャリブレーションが行われた際、その新センサ−トーチ変換行列を格納する第３格納手段と、前記現センサ−トーチ変換行列と前記新センサ−トーチ変換行列に基づいて差分変換行列を算出する算出手段と、前記作業プログラムに含まれる前記検出基準点を前記差分変換行列に基づいて更新する更新手段を備えることを特徴とする溶接ロボット制御装置を要旨としている。
【００２５】
請求項２の発明は、請求項１において、前記作業プログラムは、前記検出基準点毎に目印データが記述されており、前記更新手段は、前記目印データを探索して前記検出基準点を更新することを特徴とする。
【００２６】
請求項３の発明は、請求項２において、前記目印データは、センシング命令であることを特徴とする。
請求項４の発明は、請求項２または請求項３において、更新対象の作業プログラムを選択する選択手段を備え、前記更新手段は、前記選択手段により選択された作業プログラムに含まれる前記検出基準点を前記差分変換行列に基づいて更新することを特徴とする。
【００２７】
請求項５の発明は、請求項１乃至請求項４のうちいずれか１項において、前記センサは、レーザセンサであることを特徴とする。
【発明の効果】
【００２８】
請求項１の発明によれば、センサの着脱等によってセンサと溶接トーチの取付位置関係が変わったとしても、教示修正にかかる時間を大きく削減することができる。
請求項２の発明によれば、更新手段が、作業プログラムに記述されている目印データを探索して検出基準点を更新するようにしたことによって、更新処理を効率的に行うことができる。
【００２９】
請求項３の発明によれば、更新手段が、作業プログラムに記述されているセンシング命令を探索して検出基準点を更新するようにしたことによって、更新処理を効率的に行うことができる。
【００３０】
請求項４の発明によれば、選択された作業プログラムに対してのみ、検出基準点を更新するようにしたことによって更新処理を効率的に行うことができる。
請求項５の発明によれば、センサを特にレーザセンサで構成したときに、請求項１乃至請求項４の効果を容易に実現できる。
【図面の簡単な説明】
【００３１】
【図１】（ａ）は一実施形態の溶接ロボット制御システムのブロック図、（ｂ）は同じくティーチペンダントＴＰの概略図。
【図２】（ａ）はツール座標系の説明図、（ｂ）はレーザセンサＬＳの取付状態を示すレーザセンサＬＳの斜視図。
【図３】ロボット制御装置ＲＣのブロック図。
【図４】ツール座標系、センサ座標系、ロボット座標系との関係の説明図。
【図５】センシング教示の説明図。
【図６】溶接教示の説明図。
【図７】相対位置方式の作業プログラムの説明図。
【図８】ＣＰＵが実行する検出基準点の更新フローチャート。
【図９】相対位置方式の説明図。
【図１０】相対位置方式の説明図。
【図１１】相対位置方式の説明図。
【図１２】Ｔ字ワークの両面溶接する場合の平面図。
【図１３】ワークとレーザセンサＬＳとの相対位置関係を示す説明図。
【図１４】ワークとレーザセンサＬＳとの相対位置関係を示す説明図。
【発明を実施するための形態】
【００３２】
以下、本発明の溶接ロボット制御装置の一実施形態を図１〜図８を参照して説明する。なお、以下では、説明の便宜上、アーク溶接ロボットを単に溶接ロボットという。
溶接ロボット制御システム１０は、溶接作業を行うマニピュレータＭ１と、マニピュレータＭ１を制御するロボット制御装置ＲＣと、ワークＷ１の位置を検出する位置センサとしてのレーザセンサＬＳとを備える。
【００３３】
又、ロボット制御装置ＲＣには、可搬式操作部としてのティーチペンダントＴＰが接続されている。図１（ａ）に示すようにティーチペンダントＴＰにはテンキーや各種のキーからなるキーボード４１及び液晶表示装置等からなるディスプレイ４２が設けられている。ティーチペンダントＴＰは選択手段に相当する。前記キーボード４１により各種の教示データがロボット制御装置ＲＣに入力される。
【００３４】
マニピュレータＭ１は、フロア等に固定されるベース部材１２と、複数の軸を介して連結された複数のアーム１３とを備える。本実施形態ではマニピュレータＭ１は、図示はしないが、Ｊ１軸からＪ６軸を有する６軸ロボットである。最も先端側に位置するアーム１３の先端部には、図４に示すようにロボット出力フランジ４０が設けられている。ロボット出力フランジ４０には、支持アーム５０を介して溶接トーチ１４が設けられる。溶接トーチ１４は、溶加材としてのワイヤ１５を内装し、図示しない送給装置によって送り出されたワイヤ１５の先端とワークＷ１との間にアークを発生させ、その熱でワイヤ１５を溶着させることによりワークＷ１に対してアーク溶接を施す。アーム１３間には複数のモータ（図示しない）が配設されており、モータの駆動によって溶接トーチ１４を前後左右に自在に移動できるように構成されている。なお、前後とは、溶接トーチ１４が開先に沿って進行する方向を前とし、その１８０度反対方向を後ろとする。又、左右とは進行する方向を人が向いたときを基準として、左右という。
【００３５】
ロボット制御装置ＲＣは、図３に示すようにコンピュータからなる。すなわち、ロボット制御装置ＲＣはＣＰＵ（中央処理装置）２０、マニピュレータＭ１を制御するための各種プログラムや、各種の開先形状に応じて用意された複数の形状解析プログラムを記憶する書換可能なＥＥＰＲＯＭ２１、作業メモリとなるＲＡＭ２２、各種データを記憶する書換可能な不揮発性メモリからなる記憶部２３を備える。
【００３６】
ＣＰＵ２０は、更新手段、及び算出手段に相当する。記憶部２３は、第１格納手段、第２格納手段、第３格納手段に相当する。
記憶部２３は、第１記憶領域２３ａ、第２記憶領域２３ｂ、第３記憶領域２３ｃ、第４記憶領域２３ｄ、第５記憶領域２３ｅ等の記憶領域を有する。
【００３７】
第１記憶領域２３ａはレーザセンサＬＳにて視野範囲ＦＯＶ（図４参照）を測定して得られた距離情報（測距データ）を記憶するための領域である。第２記憶領域２３ｂには、教示時にティーチペンダントＴＰのキーボード４１にて入力された狙い角、前進後退角、教示点の位置等の教示データをファイル化して記憶する。第３記憶領域２３ｃは、ステップ毎に、教示命令が記述された作業プログラムを記憶する領域である。作業プログラムについては後述する。
【００３８】
第４記憶領域２３ｄは、センサキャリブレーションが行われた際のそのセンサキャリブレーションが行われる以前の現センサ−トーチ変換行列ＣＴ１Ｔを記憶するためのものである。なお、最初のセンサキャリブレーションが行われた際には、その時得られた変換行列は、第４記憶領域２３ｄと後述する第５記憶領域２３ｅにそれぞれ格納される。２回目以後のセンサキャリブレーションが行われたときは、第４記憶領域２３ｄは第５記憶領域２３ｅの内容に書き換えられる。第５記憶領域２３ｅは、前記センサキャリブレーションが２回目以後に行われた際に取得された新センサ−トーチ変換行列ＣＴ２Ｔが更新して記憶される。
【００３９】
ロボット制御装置ＲＣは、前記モータを駆動制御することにより、予め設定された教示データの主軌道に沿って溶接トーチ１４を動作させる。この溶接トーチ１４の位置姿勢は、前記モータに設けられているエンコーダ及び各アーム１３のリンクパラメータに基づいてＣＰＵ２０により算出可能である。
【００４０】
又、ロボット制御装置ＲＣは、溶接電流及び溶接電圧といった溶接条件を溶接電源ＷＰＳに対して出力し、溶接電源ＷＰＳからパワーケーブルＰＫを通じて供給される電力によって溶接作業を行わせる。
【００４１】
レーザセンサＬＳは、レーザの発光及び受光によりワークＷ１までの距離を測定する走査型のレーザ変位センサであり、図２（ｂ）に示すように溶接トーチ１４に対しブラケット７０を介して着脱自在に搭載される。レーザセンサＬＳは、レーザをワークＷ１に向けて発光する発光部と、ワークＷ１で反射したレーザを受光する受光部等（ともに図示しない）を備える。前記発光部で発光されたレーザは、ワークＷ１で反射され、受光部で受光される。受光部は、例えばＣＣＤラインセンサ（ラインレーザセンサ）により構成されており、視野範囲ＦＯＶにおけるレーザセンサＬＳからワークＷ１までの距離を測定するようにされている。
【００４２】
又、ロボット制御装置ＲＣは、レーザセンサＬＳを制御し、レーザセンサＬＳとワークＷ１間の距離（距離情報）を前記形状解析プログラムに従って形状解析することにより開先位置を検出する。
【００４３】
レーザセンサＬＳは、レーザ照射方向が、ツール座標系のいずれかの軸と平行となるようにセンサヘッドＬＳａが取り付けられている。図２（ａ）にはツールである溶接トーチ１４が示されている。ここでツール座標系は図２（ａ）のように、溶接トーチ１４の軸心にＺ軸を一致させたものとして表わされる。そして、本実施形態では、図２（ｂ）に示すように溶接トーチ１４に対して、レーザセンサＬＳのセンサヘッドＬＳａはレーザ照射方向がおおよそＺ−方向となるように、かつ、溶接トーチ１４の溶接進行方向がツール座標系のおおよそＸ軸になるように設定され、レーザセンサＬＳが前記Ｘ軸におおよそ平行になるように取り付けされる。レーザセンサＬＳ（すなわち、図２（ｂ）に示すセンサヘッドＬＳａ）は、溶接トーチ１４の先端から溶接進行方向側に所定距離離間した位置にレーザ照射するようにされている。レーザセンサＬＳは必ずしもＸ軸＋方向に取り付ける必要はない。いずれの取り付け方向であっても、溶接トーチ１４に対するレーザセンサＬＳの取り付け関係は、前記記憶領域２３ｄに新センサ−トーチ変換行列ＣＴ１Ｔとして格納される。
【００４４】
又、ロボット制御装置ＲＣには、溶接作業が行われる前に、溶接が行われる際のマニピュレータＭ１の動作及び溶接条件等を示す教示データがティーチペンダントＴＰを介して入力されるとともに、作業プログラムが作成されて記憶部２３の第３記憶領域２３ｃに記憶される。なお、以下では、特に断らない限り、「教示する」とはティーチペンダントＴＰを使用して入力することをいう。
【００４５】
（作業プログラムについて）
まず、前記第３記憶領域２３ｃに記憶されている相対位置方式の作業プログラムの例を、図７に示す作業プログラムを参照して説明する。
【００４６】
なお、以下の説明では、「溶接トーチを位置させる。」或いは「ロボットを位置させる。」は、溶接トーチ１４の先端から突出するワイヤ１５の先端、又は溶接トーチ１４先端に対して着脱自在に取り付けられた図示しない教示治具の先端を、それぞれの教示点（原位置、センシング点、溶接開始点、溶接終了点）に位置させることを意味するものとする。なお、説明の便宜上、マスターワークＷ、及び実際の溶接を行う対象のワークＷ１として、一対の鉄板がＬ字状に配置された隅肉継手の場合を説明するが、継手の種類は限定されるものではない。
【００４７】
教示モードでは、作業者は、マスターワークＷを使用して、ティーチペンダントＴＰを操作し、マニピュレータＭ１を駆動制御することにより、図５、図６に示すように溶接トーチ１４を原位置Ｇ、マスターワークＷの開先を検出するセンシング点ＳＮ１、ＳＮ２、溶接開始点Ｒ２、溶接終了点Ｒ１、及び前記原位置Ｇの順にそれぞれの位置を教示点として教示するとともに、各教示点において、必要な命令或いは教示データを入力する。なお、各教示点での教示した教示データについては後述する。
【００４８】
センシング点ＳＮ１は、マスターワークＷの開先における溶接終了点Ｒ１を検出するための溶接トーチ１４の位置であり、この位置に溶接トーチ１４を位置させた際、作業者は、位置決め命令（又は直線補間命令）及び「センシング命令＆ポーズ演算命令」をティーチペンダントＴＰのキーボード４１を操作して入力する。センシング点ＳＮ２はマスターワークＷの開先における溶接開始点Ｒ２を検出するための溶接トーチ１４の位置であり、この位置に溶接トーチ１４を位置させた際、作業者は、位置決め命令（又は直線補間命令）及び「センシング命令＆ポーズ演算命令」をティーチペンダントＴＰのキーボード４１を操作して入力する。
【００４９】
なお、作業者は、ティーチペンダントＴＰを操作することにより、センシング点ＳＮ１，ＳＮ２では、レーザセンサＬＳの視野範囲ＦＯＶ内にセンシングを所望する点があるようにロボットを位置させるようにしてラフに教示すればよい。一方、溶接終了点Ｒ１、及び溶接開始点Ｒ２に対しては、所望の狙い位置を正確に狙うように溶接トーチを位置させる。
【００５０】
次に、前述のようにして教示モードで作成された作業プログラムを使用して、ワークＷ１に溶接する場合について説明する。
図７に示すステップ１では、ＣＰＵ２０は「位置決め命令」により原位置Ｇに溶接トーチ１４を位置決め動作させる（図５参照）。なお、図５，図６は、マスターワークをＷで示しているが、説明の便宜上、実際に溶接が行われるワークの意味に使用する場合は、符号をＷ１として使用している。
【００５１】
ステップ２ではＣＰＵ２０は、「位置決め命令（又は直線補間命令）」により、溶接トーチ１４を図５に示すセンシング点ＳＮ１に位置させるとともに、教示モードで教示された姿勢にさせる。なお、センシング点ＳＮ１は、溶接終了側のセンシング点である。
【００５２】
ステップ３においては、センシング点ＳＮ１で、「センシング命令」が教示されている。この「センシング命令」により、レーザセンサＬＳは、ワークＷ１の開先上の後述する溶接終了点Ｒ１の検出基準点Ｑ１を検出する。すなわち、ＣＰＵ２０は、前記形状解析プログラムに従って視野範囲ＦＯＶの範囲で検出した測距データを形状解析することにより開先位置を検出し、検出した開先位置を検出基準点Ｑ１とする。
【００５３】
詳細に説明すると、ＣＰＵ２０は、センシング点ＳＮ１を、図４に示すように、ロボット座標系とツール座標系間の変換行列ＲＴＴを使用して、ロボット座標系に変換した後に、レーザセンサＬＳが出力した検出点座標分をシフトした点を、検出基準点Ｑ１とする。この場合、レーザセンサＬＳが出力した検出点座標分をシフトした点は、溶接トーチ１４とレーザセンサＬＳ間の記憶領域２３ｄに格納されている現センサ−トーチ変換行列ＣＴ１Ｔが乗算されて使用される。この結果、検出基準点Ｑ１は、ロボット座標系の座標値で表される。
【００５４】
なお、説明の便宜上、ここで纏めて説明するが、後述する検出基準点Ｑｎ１、検出基準点Ｑｎ２（ともに図示しない）も同様に、記憶領域２３ｄに格納されている現センサ−トーチ変換行列ＣＴ１Ｔが乗算された値としている。
【００５５】
なお、教示モードでマスターワークＷを使用して、溶接終了側のセンシング点ＳＮ１で取得した検出基準点をＱｎ１とすると、検出基準点Ｑｎ１は、検出基準点Ｑ１と同様にロボット座標系の座標値とされるとともに、デフォルト値として記憶部２３の第２記憶領域２３ｂの所定領域にステップ２の「センシング命令」と関連付けられて格納されている。
【００５６】
ここで、ツール座標系は、溶接トーチ１４の軸心にＺ軸を合わせた座標系であり、ロボット座標系は、ベース部材１２の任意の点を原点とした座標系である。また、センサ座標系は、センサの任意の部位を原点とした座標系である。
【００５７】
ＣＰＵ２０は、マスターワークＷで得られた検出基準点Ｑｎ１とワークＷ１で得られた検出基準点Ｑ１との各座標値のずれ量Ｌ３を演算するとともにそのずれ量Ｌ３をずれ補正ファイルＮｏ．２に保管して、記憶部２３の第２記憶領域２３ｂに保存する。
【００５８】
ステップ４では、ＣＰＵ２０は、「位置決め命令（又は直線補間命令）」により、溶接トーチ１４を図５に示すセンシング点ＳＮ２に位置させるとともに、教示モードで教示された姿勢にさせる。なお、センシング点ＳＮ２は、溶接開始側のセンシング点である。
【００５９】
ステップ５においては、センシング点ＳＮ２で、「センシング命令」が教示されている。
この「センシング命令」により、レーザセンサＬＳは、ワークＷ１の開先上の後述する溶接開始点Ｒ２の検出基準点Ｑ２を検出する。すなわち、ロボット制御装置ＲＣのＣＰＵ２０は、前記形状解析プログラムに従って視野範囲ＦＯＶの範囲で検出した測距データを形状解析することにより開先位置を検出し、検出した開先位置を検出基準点Ｑ２とする。
【００６０】
詳細に説明すると、ＣＰＵ２０は、センシング点ＳＮ２を、ロボット座標系とツール座標系間の変換行列ＲＴＴを使用して、ロボット座標系に変換した後に、レーザセンサＬＳが出力した検出点座標分をシフトした点を、検出基準点Ｑ２とする。この場合、レーザセンサＬＳが出力した検出点座標分をシフトした点は、溶接トーチ１４とレーザセンサＬＳ間の記憶領域２３ｄに格納されている現センサ−トーチ変換行列ＣＴ１Ｔが乗算されて使用される。この結果、検出基準点Ｑ２は、ロボット座標系の座標値で表される。
【００６１】
なお、教示モードにおいて、マスターワークＷを使用して、溶接開始側のセンシング点ＳＮ２で取得した検出基準点をＱｎ２とすると、検出基準点Ｑｎ２は、検出基準点Ｑ２と同様にロボット座標系の座標値とされてデフォルト値として、記憶部２３の第２記憶領域２３ｂの所定領域に、ステップ４の「センシング命令」と関連付けられて格納されている。
【００６２】
ＣＰＵ２０は、マスターワークＷで得られた検出基準点Ｑｎ２とワークＷ１で得られた検出基準点Ｑ２とのずれ量Ｌ４を演算し、そのずれ量Ｌ４をずれ補正ファイルＮｏ．１に記述し、ずれ補正ファイルＮｏ．１を記憶部２３の第２記憶領域２３ｂに保存する。
【００６３】
ステップ６では、アプローチ点Ｐ６に移動する「位置決め命令」により、ＣＰＵ２０は、溶接トーチ１４をアプローチ点Ｐ６に位置決めする。
ステップ７では、「シフト開始命令」により、ＣＰＵ２０は、第３記憶領域２３ｃに格納した補正ファイルＮｏ．１を読み出し、ずれ補正ファイルＮｏ．１に記述されたずれ量Ｌ３分だけ、溶接トーチ１４をシフトさせる。
【００６４】
ステップ８では、「直線補間命令」により、第２記憶領域２３ｂに格納した教示データである移動速度で、教示された溶接開始点Ｒ２に位置させるべく直線補間する。なお、この教示された溶接開始点Ｒ２は、実際には前記ずれ量Ｌ４分だけ変更（シフト）したものである。このとき、ＣＰＵ２０は、記憶部２３の第２記憶領域２３ｂに格納した教示データである狙い角、前進後退角を第２記憶領域２３ｂから読み出して、溶接トーチ１４がこの姿勢となるように、かつ溶接開始点Ｒ２に位置させるようにマニピュレータＭ１を移動制御する。
【００６５】
ステップ９では、ＣＰＵ２０は、「溶接開始命令」により第２記憶領域２３ｂから教示データである溶接電流及び溶接電圧、溶接速度等の溶接条件を読込み、これらの溶接条件を溶接電源ＷＰＳ及び図示しない図示しないワイヤ送給装置に対して出力する。
【００６６】
溶接電源ＷＰＳは前記溶接電流、及び溶接電圧となるように電源制御するとともに図示しないワイヤ送給装置が、前記送り速度でワイヤ１５を溶接トーチ１４に送るように制御する。
【００６７】
ステップ１０では、ＣＰＵ２０は、「シフト量変更命令」により、シフト量を変更するために後述する直線補間でのシフト量を算出する。すなわち、このシフト量の変更は、ずれ量Ｌ４、及びずれ量Ｌ３に基づいて溶接開始点Ｒ２から進行する場合のシフト量を徐々に変更するためである。すなわち、ＣＰＵ２０は、前記ずれ量Ｌ３とずれ量Ｌ４の差分を後述するステップ１１での直線補間の補間周期で等分した量で加算または減算するようにして、シフトをリニアに変化させるためのものである。
【００６８】
ステップ１１の「直線補間命令」により、ＣＰＵ２０は、前記シフトがリニアに変化するように溶接終了点Ｒ１に直線補間して、教示データである溶接速度でマニピュレータＭ１を駆動制御して溶接トーチ１４を移動させる。
【００６９】
このとき、ＣＰＵ２０は、ステップ５で、第２記憶領域２３ｂに格納したマニピュレータＭ１の各軸角度の姿勢で、溶接トーチ１４は溶接終了点Ｒ１まで位置させるようにマニピュレータＭ１を移動制御する。
【００７０】
ステップ１２では、ＣＰＵ２０は、「溶接終了命令」により教示データである溶接電流及び溶接電圧などの溶接条件を読込み、これらの溶接条件を溶接電源ＷＰＳ及び図示しないワイヤ送給装置に対して出力する。溶接電源ＷＰＳは前記溶接電流、及び溶接電圧となるように電源制御するとともに図示しないワイヤ送給装置によるワイヤ１５の送給を停止する。
【００７１】
ステップ１３では、ＣＰＵ２０は、「シフト命令終了」により、前述したシフトを停止する。
ステップ１４では、「直線補間命令」により、ＣＰＵ２０は退避点Ｐ１４に直線補間して、教示データである動作速度でマニピュレータＭ１を駆動制御して溶接トーチ１４を移動させる。
【００７２】
ステップ１５では、ＣＰＵ２０は「位置決め命令」により、原位置ＧにマニピュレータＭ１を駆動制御して溶接トーチ１４を移動させる。
（作用）
上記のように構成された溶接ロボット制御システム１０の作用を説明する。
【００７３】
溶接トーチ１４に対するレーザセンサＬＳの取り付けが変わってしまった場合、例えば、レーザセンサＬＳを溶接トーチ１４に対して取付位置を変更した場合には、作業者は、ティーチペンダントＴＰを操作して、検出基準点修正モードを選択する。検出基準点修正モードでは、作業者は、キーボード４１の入力によりディスプレイ４２上に、ロボット制御装置ＲＣの記憶部２３に格納している作業プログラムを表示させる。そして、作業者は、ティーチペンダントＴＰのキーボード４１の選択入力により、検出基準点を更新したい作業プログラムを予め選択した後、図８に示すように検出基準点修正プログラムを実行する。
【００７４】
Ｓ１０では、ＣＰＵ２０は、レーザセンサＬＳと溶接トーチ１４間の公知のセンサキャリブレーションを行い、新センサ−トーチ変換行列ＣＴ２Ｔを得て、第５記憶領域２３ｅに格納する。Ｓ２０では、ＣＰＵ２０は、センサキャリブレーションが行われる前に第５記憶領域２３ｅに格納されていた内容（現センサ−トーチ変換行列ＣＴ１Ｔ）は、第４記憶領域２３ｄに格納する。
【００７５】
Ｓ３０では、ＣＰＵ２０は、下記式で差分変換行列ＯＴＮの演算を行う。
ＯＴＮ＝（ＣＴ１Ｔ）−１・ＣＴ２Ｔ
図４において、取付直し前のセンサ座標系は（ＸＣ，ＹＣ，ＺＣ）で示し、取付直し後のセンサ座標系は（ＸＣＮ，ＹＣＮ，ＺＣＮ）で示している。この両センサ座標系と、変換行列ＣＴ１Ｔ、ＣＴ２Ｔ、差分変換行列ＯＴＮは図の通りである。
【００７６】
Ｓ４０では、ＣＰＵ２０は、予め選択しておいた作業プログラムに対して、「センシング命令」が記述されているステップ、及びその「センシング命令」に関連付けられた検出基準点を探索する。前記例で挙げた作業プログラムでは、前記探索によりステップ３，ステップ５の「センシング命令」に関連付けられた検出基準点Ｑｎ１，Ｑｎ２（ともに図示しない）が見つけ出される。
【００７７】
Ｓ５０では、ＣＰＵ２０は、見つけ出した検出基準点（前記例では、検出基準点Ｑｎ１，Ｑｎ２）に対してそれぞれ差分変換行列ＯＴＮを乗算して、検出基準点を更新する。すなわち、第２記憶領域２３ｂには、「センシング命令」に関連付けられた検出基準点が更新されて格納される。この結果、作業プログラムは、マスターワークＷで得られた検出基準点が更新されたものとなる。
【００７８】
本実施形態の溶接位置検出方法、及び溶接位置検出装置によれば、下記の特徴がある。
（１）本実施形態のロボット制御装置ＲＣは、溶接トーチ１４に設けられたレーザセンサＬＳが検出した開先上の検出基準点Ｑｎ１，Ｑｎ２（ともに図示しない）が、ロボット座標系で記述された作業プログラムを格納する記憶部２３（第１格納手段）を備える。記憶部２３は、第２格納手段として、レーザセンサＬＳの溶接トーチ１４に対する取付位置変更前の現センサ−トーチ変換行列ＣＴ１Ｔを格納する。また、記憶部２３は、第３格納手段として、レーザセンサＬＳの溶接トーチ１４に対する取付位置変更後の新センサ−トーチ変換行列ＣＴ２Ｔを求めるセンサキャリブレーションが行われた際、その新センサ−トーチ変換行列ＣＴ２Ｔを格納する。さらに、ロボット制御装置ＲＣは、現センサ−トーチ変換行列ＣＴ１Ｔと新センサ−トーチ変換行列ＣＴ２Ｔに基づいて差分変換行列ＯＴＮを算出するＣＰＵ２０（算出手段）を備える。また、ＣＰＵ２０は、更新手段として、作業プログラムに含まれる検出基準点Ｑｎ１，Ｑｎ２を差分変換行列ＯＴＮに基づいて更新する。
【００７９】
この結果、本実施形態によれば、センサの検出基準点に対する相対的なずれ量を溶接教示点に反映するシステムにおいて、センシング命令を含む作業プログラムを新規教示する際に溶接位置を正確に教示していれば、センサヘッドの着脱による教示修正にかかる時間を大きく削減することができる。
【００８０】
（２）  本実施形態のロボット制御装置ＲＣは、作業プログラムは、マスターワークＷを使用することにより得られた検出基準点Ｑｎ１，Ｑｎ２毎に目印データとしての「センシング命令」が記述されており、ＣＰＵ２０は、「センシング命令」を探索して検出基準点Ｑｎ１，Ｑｎ２を更新する。
【００８１】
この結果、本実施形態では、ＣＰＵ２０は、作業プログラムに記述されているセンシング命令を探索して検出基準点を更新するため、更新処理を効率的に行うことができる。
（３）  本実施形態のロボット制御装置ＲＣは、更新対象の作業プログラムを選択するティーチペンダントＴＰ（選択手段）を備え、ＣＰＵ２０（更新手段）は、ティーチペンダントＴＰにより選択された作業プログラムに含まれる検出基準点Ｑｎ１，Ｑｎ２を差分変換行列に基づいて更新する。
【００８２】
この結果、本実施形態によれば、選択された作業プログラムにのみ、ＣＰＵ２０は、検出基準点を更新するため、更新処理を効率的に行うことができる。
（４）  本実施形態のロボット制御装置ＲＣは、センサとしてレーザセンサＬＳを使用する。このため、上記（１）から（３）の効果を、レーザセンサＬＳを備えた溶接ロボットにおいて、容易に実現できる。
【００８３】
なお、本発明は前記実施形態に限定されるものではなく、下記のように構成してもよい。
・  前記実施形態では、目印データとして「センシング命令」を探索することにより、「センシング命令」に関連づけされた検出基準点を更新するようにしたが、目印データはセンシング命令に限定するものではない。作業プログラムのセンシング命令が記述されたステップにおいて、前記検出基準点を探索するために、「センシング命令」以外の目印データを記述し、この目印データを探索して、前記検出基準点を更新するようにしてもよい。
【００８４】
・  前記実施形態では、検出基準点を更新する作業プログラムを選択するようにしたが、この代わりに、記憶部２３に格納されている全作業プログラムを一括して検出基準点を探索して更新するようにしてもよい。
【００８５】
・  前記実施形態のレーザセンサＬＳは、ラインレーザセンサを使用したが、レーザをミラーに当てて走査するスキャニング型のレーザ変位センサ、或いは、スポットレーザセンサに代えてもよい。
【００８６】
・  前記実施形態のレーザセンサＬＳの代わりに、従来技術で説明したタッチセンサに変更してもよい。
・  前記実施形態では、マニピュレータＭ１は、６軸ロボットとしたが、７軸ロボットのように多軸ロボットで構成するようにしてもよい。
【００８７】
・  前記実施形態では、ロボット座標系をベース部材１２の任意の部位を原点とする座標系としたが、ロボット座標系は、例えば、ロボット座標系として、図４に示すように、マニピュレータＭ１の先端のロボット出力フランジ４０のＪ６軸上に原点を有するメカニカルインターフェイス座標系としてもよい。
【００８８】
この場合、ステップ３において、ＣＰＵ２０は、センシング点ＳＮ１を、図４に示すように、ロボット座標系（メカニカルインターフェイス座標系）とツール座標系間の変換行列Ｊ６ＴＴを使用して、ロボット座標系に変換した後に、レーザセンサＬＳが出力した検出点座標分をシフトした点を、検出基準点Ｑ１とするものとする。
【００８９】
このように、ロボット座標系は、マニピュレータＭ１側に設ける座標系であればよい。
【符号の説明】
【００９０】
１４…溶接トーチ、
２０…ＣＰＵ（算出手段、更新手段）、
２３…記憶部（第１格納手段、第２格納手段、第３格納手段）、
Ｍ１…マニピュレータ、ＴＰ…ティーチペンダント（選択手段）、
ＲＣ…ロボット制御装置。
【図１】
0005805457.tif 000002
【図２】
0005805457.tif 000003
【図３】
0005805457.tif 000004
【図４】
0005805457.tif 000005
【図５】
0005805457.tif 000006
【図６】
0005805457.tif 000007
【図７】
0005805457.tif 000008
【図８】
0005805457.tif 000009
【図９】
0005805457.tif 000010
【図１０】
0005805457.tif 000011
【図１１】
0005805457.tif 000012
【図１２】
0005805457.tif 000013
【図１３】
0005805457.tif 000014
【図１４】
0005805457.tif 000015