(57)【特許請求の範囲】
【請求項１】
固定電極チップおよび固定電極チップに対向して配置され、固定電極チップに近接および離反する方向に移動可能な移動電極チップを有する溶接ガンをロボットの手首部に備え、移動電極チップを前進させ、両電極チップで被溶接物の所定の溶接打点を挟持してスポット溶接を行うスポット溶接ロボットにおいて、
ロボットの各軸を駆動するサーボモータに供給される電流値を監視する監視手段と、
被溶接物の溶接打点を溶接するときの溶接ガンの位置である打点位置を記憶する記憶手段と、
ロボットによって溶接ガンを打点位置に位置決めし、両電極チップで被溶接物を挟持するとき、電極チップが被溶接物に当接し、被溶接物が弾性変形するときのサーボモータの電流値の変化を前記監視手段によって検出し、これに基づく評価値を算出する演算手段とを有し、
算出した評価値が予め定める値より大きいとき、移動電極の移動方向に沿い、評価値が減少する側に打点位置をシフトさせることを特徴とするスポット溶接ロボット。
【請求項２】
前記ロボットは、各関節をそれぞれ対応するサーボモータによって制御する多関節型ロボットであり、評価値算出の基とするサーボモータの電流値変化は、溶接時のロボットの姿勢に基づいて選択されることを特徴とする請求項１記載のスポット溶接ロボット。
【請求項３】
前記電流値の変化とは、被溶接物の弾性変形前における所定時間の電流の平均値と、被溶接物の弾性変形後における所定時間の電流の平均値との差であることを特徴とする請求項１または２記載のスポット溶接ロボット。
【請求項４】
前記評価値は、弾性変形した被溶接物からロボットに与えられる反力であることを特徴とする請求項１〜３のいずれか１つに記載のスポット溶接ロボット。
【請求項５】
前記評価値は、各サーボモータ毎の電流値の変化を算出し、これらを絶対値加算した値に基づくもの、または、各サーボモータ毎に、電流値の変化を被溶接物の弾性変形後の電流値で割算し、これらを絶対値加算した値に基づくもの、または、各サーボモータ毎に、電流値の変化を被溶接物の弾性変形後の電流値で割算して２乗し、これらを加算した値に基づくものであることを特徴とする請求項１〜３のいずれか１つに記載の溶接ロボット。
【請求項６】
打点位置のシフト量は、予め定める一定量であることを特徴とする請求項１〜５のいずれか１つに記載のスポット溶接ロボット。
【請求項７】
算出した評価値が、予め定める値より小さくなるまで、打点位置のシフトを繰り返すことを特徴とする請求項１〜６のいずれか１つに記載のスポット溶接ロボット。
【請求項８】
予め求めたシフト量と評価値との関係に基づいて、評価値が予め定める値以下となる打点位置のシフト量を算出することを特徴とする請求項１〜５のいずれか１つに記載のスポット溶接ロボット。
【請求項９】
作業動作プログラムの教示時において、前記打点位置は予め記憶される教示位置であり、算出した評価値が予め定める値より大きいとき、教示位置をシフトさせ、教示位置を補正することを特徴とする請求項１〜８のいずれか１つに記載のスポット溶接ロボット。
【請求項１０】
作業動作プログラムの再生時において、算出した評価値が予め定める値より大きいとき、溶接ガンの打点位置をシフトしてスポット溶接を行うことを特徴とする請求項１〜８のいずれか１つに記載のスポット溶接ロボット。
【請求項１１】
同一の被溶接物で複数箇所溶接打点が存在する場合において、複数箇所の溶接打点のうち、初回の溶接打点のみ評価値を算出し、評価値が予め定める値より大きいとき打点位置をシフトし、初回より後の溶接打点では評価値の算出は行わず、初回の溶接打点のシフト量と同じだけ打点位置をシフトさせてスポット溶接を行うことを特徴とする請求項１０記載のスポット溶接ロボット。
【請求項１２】
同一形状の被溶接物が順次搬送され、同一形状の被溶接物を複数個溶接する場合において、初回の被溶接物の溶接打点のみ溶接打点毎に評価値を算出し、評価値が予め定める値より大きいとき、溶接打点毎に打点位置をシフトすることを特徴とする請求項１０記載のスポット溶接ロボット。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、たとえば多関節型ロボットの手首部に溶接ガンを装備し、スポット溶接を行うスポット溶接ロボットに関する。
【０００２】
【従来の技術】
ロボットの手首部に装備される溶接ガンは、溶接ガンに固定的に設けられる固定電極チップと、移動可能に設けられる移動電極チップとを有し、被溶接物であるワークの所定の溶接打点を固定電極チップと移動電極チップとで所定の加圧力で挟持し、溶接電流を流すことによってスポット溶接が行われる。
【０００３】
溶接ガンの打点位置は、ワークの各溶接打点毎に予め記憶されており、溶接作業は、まず移動電極と固定電極とを離反させて溶接ガンを開いておき、この状態で電極チップ間にワークの溶接打点が配置されるように、ロボットで溶接ガンを打点位置に位置決めする。このとき、固定電極がワークの溶接打点に当接、すなわちゼロタッチするように溶接ガンは位置決めされる。その後、移動電極を前進させてワークの溶接打点を両電極チップで挟持してスポット溶接を行う。
【０００４】
また、溶接ガンの打点位置の位置決めは、オンラインティーチによって、固定電極チップがワークにゼロタッチするように位置決めし、打点位置が教示される。
【０００５】
【発明が解決しようとする課題】
たとえばティーチ時において、電極チップがワークに対して垂直方向にずれたり、加圧時のガンアームのたわみにより、ワークに対する電極チップの相対位置がずれて打点位置が教示されると、ティーチされた作業動作プログラムを再生するリピート時において、ワークと電極チップとの相対位置がずれてしまう。このように位置ずれした状態でワークを加圧挟持すると、ワークが弾性変形し、固定電極チップと移動電極チップとで加圧力に差が生じる。
【０００６】
また正確に打点位置が教示された場合であっても、リピート時において、ワークが所定の位置からずれて配置された場合、両電極でワークを加圧挟持したとき、ワークが弾性変形し、固定電極チップと移動電極チップとで加圧力に差が生じる。
【０００７】
電極チップの加圧力に差が生じると、加圧力の小さな電極チップとワークとの接触抵抗が、加圧力の大きな電極チップとワークとの接触抵抗より大きくなるため、通電時にワークの発熱中心が加圧力の小さな電極チップ側にずれる。これによって２枚のワークの接合面から発熱中心がずれると、ワークのせん断溶接強度が低下してしまう。
【０００８】
また、せん断溶接強度が低下しないように溶接電流を増加すると、加圧力に小さい電極側のワークが溶け過ぎ、スパッタが飛散したり、電極チップが溶着すると言った不具合を生じ、溶接品質の低下を招く。
【０００９】
このような問題を防ぐためには、ワークを均等に加圧する必要があり、そのためには固定電極チップがゼロタッチするように溶接ガンの打点位置を決める必要がある。そのために、たとえば特開平６−３９７６０号公報「ロボットの制御装置」に記載される制御方法をスポット溶接ロボットに適用する方法が考えられる。
【００１０】
この公報には、ロボットに外力が作用したとき、外力が小さくなるようにロボットを移動させる制御方法が記載されており、この方法を用いて、固定電極がゼロタッチするように打点位置の位置決めを行う方法が考えられる。
【００１１】
しかしながら、この公報に記載される制御方法では、ロボットの移動方向が規定されていないため、スポット溶接ロボットに適用した場合、ロボットの移動方向が不安定になってしまい、上述した問題の有効な解決策とはならない。
【００１２】
本発明の目的は、ゼロタッチするように正確に溶接ガンの打点位置を位置決めし、均等加圧することができるスポット溶接ロボットを提供することである。
【００１３】
【課題を解決するための手段】
請求項１記載の本発明は、固定電極チップおよび固定電極チップに対向して配置され、固定電極チップに近接および離反する方向に移動可能な移動電極チップを有する溶接ガンをロボットの手首部に備え、移動電極チップを前進させ、両電極チップで被溶接物の所定の溶接打点を挟持してスポット溶接を行うスポット溶接ロボットにおいて、
ロボットの各軸を駆動するサーボモータに供給される電流値を監視する監視手段と、
被溶接物の溶接打点を溶接するときの溶接ガンの位置である打点位置を記憶する記憶手段と、
ロボットによって溶接ガンを打点位置に位置決めし、両電極チップで被溶接物を挟持するとき、電極チップが被溶接物に当接し、被溶接物が弾性変形するときのサーボモータの電流値の変化を前記監視手段によって検出し、これに基づく評価値を算出する演算手段とを有し、
算出した評価値が予め定める値より大きいとき、移動電極の移動方向に沿い、評価値が減少する側に打点位置をシフトさせることを特徴とするスポット溶接ロボットである。
【００１４】
本発明に従えば、ロボットの手首部に溶接ガンが備えられ、このロボットによって溶接ガンは予め記憶される打点位置に位置決めされる。たとえば被溶接物が相対的に移動電極側に位置ずれして配置される場合、移動電極チップを前進させて被溶接物を挟持したとき、被溶接物が固定電極側に弾性変形する。この被溶接物の弾性変形による弾性復元力は移動電極チップ、溶接ガンを介してロボットに外力として作用する。
【００１５】
ロボットの各軸はサーボモータによって制御されており、ロボットを指定された位置まで移動させるときに被溶接物に当接するなどして外力が作用すると、ロボットを指定位置まで移動させるためにサーボモータの電流値が変化する。サーボモータの電流値は監視手段によって監視されており、この監視手段で検出したサーボモータの電流値の変化に基づいて、演算手段で評価値が算出される。
【００１６】
固定電極チップが被溶接物にゼロタッチする場合には、溶接ガンを打点位置に位置決めしたとき、および移動電極チップを前進させて被溶接物を挟持したときに被溶接物が変形することなく、サーボモータの電流値は変化しないが、前述したように被溶接物が相対的に位置ずれする場合、溶接ガンを位置決めしたとき、または被溶接物を挟持したときに被溶接物が変形し、これによってサーボモータの電流値が変化する。
【００１７】
本発明ではこの電流値の変化に基づいて評価値を算出し、算出した評価値が予め定める値より大きいとき、被溶接物と溶接ガンとが相対的にずれているものと判断し、溶接ガンの打点位置をシフトさせる。これによって溶接ガンと被溶接物との相対的な位置ずれが解消し、被溶接物を両電極で均等に加圧することができ、溶接品質の低下を防ぐことができる。また、打点位置のシフト方向は、移動電極チップの移動方向に決められているので、前述した従来技術のように、移動方向が不安定になるといったことが防がれる。溶接時には、電極の移動方向と溶接面とが垂直となるように溶接ガンは配置され、相対的な位置ずれによる影響は、移動電極の移動方向の位置ずれに最も現れる。従って、シフト方向をこのように電極の移動方向に設定することが最も好適である。
【００１８】
請求項２記載の本発明の前記ロボットは、各関節をそれぞれ対応するサーボモータによって制御する多関節型ロボットであり、評価値算出の基とするサーボモータの電流値変化は、溶接時のロボットの姿勢に基づいて選択されることを特徴とする。
【００１９】
本発明に従えば、ロボットは多関節型ロボットであり、複数のサーボモータによって姿勢が制御される。溶接時のロボットの姿勢は異なり、被溶接物を弾性変形させたとき電流値が変化するサーボモータはロボットの姿勢に応じて異なる。したがって、溶接時のロボットの姿勢に応じ、たとえば電流値の変化の大きいサーボモータを１または複数、適宜選択して評価値を算出することによって、被溶接物と溶接ガンとの相対的な位置ずれに良好に応答した評価値を得ることができる。
【００２０】
請求項３記載の本発明の前記電流値の変化とは、被溶接物の弾性変形前における所定時間の電流の平均値と、被溶接物の弾性変形後における所定時間の電流の平均値との差であることを特徴とする。
【００２１】
本発明に従えば、電流の変化は、被溶接物変形前と変形後における各所定時間の平均値の差として算出するので、外乱などに影響されず、信頼性の高い評価値を算出することができる。
【００２２】
請求項４記載の前記評価値は、弾性変形した被溶接物からロボットに与えられる反力であることを特徴とする。
【００２３】
ロボットの各軸の位置および方向と、各軸のモータ電流値の変化が分かると、弾性変形した被溶接物からロボットに与えられる反力を算出することができる。このように、反力は各軸の電流値変化に基づいて算出され、評価値の１種であるので、このような反力を、評価値として用いることも可能である。
【００２４】
請求項５記載の本発明の前記評価値は、各サーボモータ毎の電流値の変化を算出し、これらを絶対値加算した値に基づくもの、または、各サーボモータ毎に、電流値の変化を被溶接物の弾性変形後の電流値で割算し、これらを絶対値加算した値に基づくもの、または、各サーボモータ毎に、電流値の変化を被溶接物の弾性変形後の電流値で割算して２乗し、これらを加算した値に基づくものであることを特徴とする。
【００２５】
本発明に従えば、電流値の変化、すなわち被溶接物変形前と変形後の電流値の差を各サーボモータ毎に算出し、これらを加算した値に基づいて評価値を算出することによって、電流値が変化する複数のサーボモータの電流値を考慮した評価値を算出することができ、被溶接物と溶接ガンとの相対的な位置ずれに良好に応答した評価値を得ることができる。
【００２６】
また、電流値の変化を、被溶接物変形後の電流値で割り算して評価値を算出することによって、電流値の変化の割合が得られ、相対的な位置ずれをより適切に評価することができる。また、電流値の変化を、被溶接物変形後の電流値で割り算し、さらにこの値を２乗して評価値を算出するようにしても良い。
【００２７】
請求項６記載の本発明の打点位置のシフト量は、予め定める一定量であることを特徴とする。
【００２８】
本発明に従えば、算出した評価値が予め定める値より大きいとき、溶接ガンを予め定める一定量シフトさせる。このようにシフト量を予め決定しておくことによって、被溶接物と溶接ガンとの相対的なずれを簡単に補正することができる。
【００２９】
請求項７記載の本発明は、算出した評価値が、予め定める値より小さくなるまで、打点位置のシフトを繰り返すことを特徴とする。
【００３０】
本発明に従えば、評価値が予め定める値よりも小さくなるまで、溶接ガンのシフトを繰り返すことによって、被溶接物と溶接ガンとの相対的な位置ずれを、確実に所定の許容範囲内に納めることができる。
【００３１】
請求項８記載の本発明は、予め求めたシフト量と評価値との関係に基づいて、評価値が予め定める値以下となる打点位置のシフト量を算出することを特徴とする。
【００３２】
本発明に従えば、たとえば被溶接物の厚み、などと評価値との関係、溶接ガンのシフト量と評価値との関係などを予め実験によって調べるか、もしくは、ティーチ時に、実際のワークでシフト量と評価値との関係を求めておく。そして、算出した評価値と、予め求めたシフト量と評価値との関係に基づいて、評価値を予め定める値以下にするシフト量を導出する。このようにして、複雑な計算を行うことなく評価値が予め定める値以下となるシフト量を容易に求めることができ、これによって１回のシフトで相対的なずれ量を許容範囲内に納めることができる。
【００３３】
請求項９記載の本発明は、作業動作プログラムの教示時において、前記打点位置は予め記憶される教示位置であり、算出した評価値が予め定める値より大きいとき、教示位置をシフトさせ、教示位置を補正することを特徴とする。
【００３４】
サーボモータの電流値の変化に基づいて溶接ガンをシフトさせて、溶接ガンと被溶接物との相対的な位置ずれを補正する方法は、スポット溶接ロボットのティーチ時に適用することができる。すなわち、評価値が予め定める値よりも大きいとき、初めに記憶された教示位置をシフトさせて書き換え、教示位置を補正する。これによって、移動電極の移動方向（被溶接物の溶接面に垂直な方向）への溶接打点の教示を高精度に行うことができる。このように打点位置を高精度に教示することによって、溶接時に両電極チップで均等に加圧することができ、溶接品質を良好にすることができる。
【００３５】
請求項１０記載の本発明は、作業動作プログラムの再生時において、算出した評価値が予め定める値より大きいとき、溶接ガンの打点位置をシフトしてスポット溶接を行うことを特徴とする。
【００３６】
サーボモータの電流値の変化に基づいて溶接ガンをシフトさせて溶接ガンと被溶接物との相対的な位置ずれを補正する上述した方法は、ロボットの作業動作プログラムを再生して溶接作業を行うリピート時にも適用することができる。すなわち、溶接打点毎に評価値を算出し、評価値が予め定める値より大きいとき、打点位置をシフトして溶接を行う。これによって、被溶接物が位置ずれして配置された場合であっても、被溶接物と溶接ガンとの相対的な位置ずれをなくし、均等加圧してスポット溶接を行うことができる。
【００３７】
請求項１１記載の本発明は、同一の被溶接物で複数箇所溶接打点が存在する場合において、複数箇所の溶接打点のうち、初回の溶接打点のみ評価値を算出し、評価値が予め定める値より大きいとき打点位置をシフトし、初回より後の溶接打点では評価値の算出は行わず、初回の溶接打点のシフト量と同じだけ打点位置をシフトさせてスポット溶接を行うことを特徴とする。
【００３８】
本発明に従えば、同一形状の被溶接物に複数箇所溶接打点が存在する場合において、たとえば、水平に配置される被溶接物が、鉛直方向に位置ずれして配置された場合、各溶接打点は全て鉛直方向にずれることになる。このような場合、本発明では、初回の溶接打点のみ両電極で被溶接物を挟持して評価値を算出し、評価値が予め定める値より大きいとき、打点位置をシフトさせる。そして、同一の被溶接物で次回からの溶接打点では、評価値の算出は行わず、初回のシフト量と同じだけ打点位置をシフトさせてスポット溶接をおこなう。このようにして、被溶接物が位置ずれして配置された場合に、全溶接打点の相対的な位置ずれを効率的に補正し、連続して溶接作業を行うことができる。
【００３９】
請求項１２記載の本発明は、同一形状の被溶接物が順次搬送され、同一形状の被溶接物を複数個溶接する場合において、初回の被溶接物の溶接打点のみ溶接打点毎に評価値を算出し、評価値が予め定める値より大きいとき、溶接打点毎に打点位置をシフトすることを特徴とする。
【００４０】
本発明に従えば、同一形状の被溶接物が順次搬送されて、順次溶接作業を行う場合において、たとえば溶接打点が相対的に位置ずれして教示されている場合、搬送される被溶接物の対応する全ての溶接打点がずれることになる。このような場合、本発明では初回の被溶接物の溶接打点でのみ被溶接物を挟持して評価値を算出し、算出した評価値に基づいて教示されている打点位置をシフト、すなわち教示位置をシフトさせる。これによって、次回以降の被溶接物の対応する溶接打点では、教示位置が補正されているので、新たに評価値の算出を行うことなく、被溶接物と溶接ガンとの相対的な位置ずれを補正することができる。
【００４１】
【発明の実施の形態】
図１は、本発明の実施の一形態であるスポット溶接ロボット１の外観を示す斜視図である。スポット溶接ロボット１は、ロボット２の手首７に溶接ガン８が装備されて構成される。
【００４２】
ロボット２は６軸垂直多関節型ロボットであり、床に固定される基台４、下部アーム５、上部アーム６および手首７を有する。下部アーム５は、下端部が鉛直な第１軸Ｊ１まわりに旋回可能に基台４に取付けられるとともに、水平な第２軸Ｊ２まわりに前後角変位可能に基台４に設けられる。下部アーム５の上端部には上部アーム６の基端部が、水平な第３軸Ｊ３まわりに上下に角変位可能に取付けられる。上部アーム６の先端部に取付けられる手首７は、上部アーム６の軸線に平行な第４軸Ｊ４まわりに角変位可能に取付けられるとともに、上部アーム６の軸線に垂直な第５軸Ｊ５まわりに角変位可能に取付けられる。この手首７に取付けられるスポット溶接ガン８は、第５軸に垂直な第６軸Ｊ６まわりに角変位可能に設けられる。
【００４３】
スポット溶接ガン８は、手首７に取付けられる基部９と、この基部９の下部に固定されるコ字状のガンアーム１２とを有し、このガンアーム１２の端部に固定電極チップ１４が固定される。この固定電極チップ１４に対向し、固定電極チップ１４に対して近接／離反方向に移動可能に移動電極チップ１３がガンアーム１２に設けられる。電極チップ１３，１４は棒状であり、互いに同軸に配置される。移動電極チップ１３は溶接ガン８に設けられる溶接用サーボモータＭｗによって駆動される。また、６軸多関節型ロボット２の各関節軸Ｊ１〜Ｊ６はそれぞれサーボモータＭ１〜Ｍ６によって駆動される。
【００４４】
次に、溶接ロボット１の制御構成について説明する。図２は、第１軸Ｊ１のサーボモータＭ１の制御構成を示すブロック図である。なお、他のサーボモータＭ２〜Ｍ６，Ｍｗに関してはサーボモータＭ１と同様の構成であるので、図示は省略する。
【００４５】
記憶手段２２には溶接ロボット１の教示データが格納される。教示データには、被溶接物であるワークＷの各溶接打点を順次スポット溶接するための作業動作プログラムおよび各溶接打点を溶接するときの溶接ガン８の位置および姿勢である打点位置が含まれる。打点位置は絶対座標系での位置で与えられ、姿勢は絶対座標系における溶接時の電極の傾き（移動電極１３の移動方向）で与えられる。
【００４６】
位置コントローラ２０は、教示データに基づき、サーボコントローラ２１に各軸Ｊ１〜Ｊ６の角度指令値Ｐ１〜Ｐ６を与えてロボット２の姿勢を変更し、溶接ガン８を指定された打点位置に位置決めする。サーボコントローラ２１は、各軸Ｊ１〜Ｊ６が、指令された角度となるように、角度指令値Ｐ１〜Ｐ６に応じた電流値Ｉ１〜Ｉ６を各サーボモータＭ１〜Ｍ６に与える。
【００４７】
同様に、移動電極チップ１３への移動指令値Ｐｗが位置コントローラ２０からサーボコントローラ２１に与えられると、サーボコントローラ２１ではこの移動指令値Ｐｗに応じた電流Ｉｗを溶接用サーボモータＭｗに与える。これによって、電極チップ１３，１４でワークＷが挟持、加圧される。
【００４８】
サーボモータＭ１にはエンコーダＥ１が取付けられ、サーボモータＭ１による第１軸Ｊ１まわりの回転角度がエンコーダＥ１によって検出される。検出したエンコーダ値はサーボコントローラ２１に戻される。サーボコントローラ２１では位置コントローラ２０からの角度指令値Ｐ１とエンコーダＥ１からのエンコーダ値とに基づいて、第１軸Ｊ１が指定された角度位置となるようにサーボモータＭ１をフィードバック制御する。このような構成はサーボモータＭ２〜Ｍ６，Ｍｗにおいても同様である。
【００４９】
また、溶接ロボット１に作業動作を教示するティーチ時には、ロボット２の各軸Ｊ１〜Ｊ６のエンコーダ値に基づき、打点位置の絶対座標および電極の傾きが教示位置として記憶手段２２に格納される。
【００５０】
各サーボモータＭ１〜Ｍ６，Ｍｗはフィードバック制御されるので、たとえばロボット２の姿勢を変更したり、移動電極１３を前進させるなど、溶接ロボット１を指定された位置まで移動させるときに、ワークＷに当接するなどしてロボット１に外力が作用した場合、この外力に抗して指定された位置まで移動するように各サーボモータＭ１〜Ｍ６，Ｍｗへ供給する電流を増減させる。これらのサーボモータＭ１〜Ｍ６，Ｍｗの電流値は監視手段２３によって検出され、監視される。
【００５１】
次に、溶接ロボット１でスポット溶接を行うときの概略について説明する。まず移動電極１３を固定電極１４から離反させて溶接ガン８を開いておき、打点位置まで溶接ガン８を移動させる。このとき、溶接ガン８の固定電極１４がワークＷの溶接打点に当接、すなわちゼロタッチするように位置決めされる。また、このときの溶接ガン８の姿勢は、ワークＷの溶接面に対して電極の傾き（移動電極１３の移動方向）が垂直となるように配置される。
【００５２】
次に、移動電極チップ１３を固定電極チップ１４側に移動させて溶接ガン８を閉じ、両電極チップ１３，１４でワークＷの溶接打点を挟み、さらに所定の加圧力を加え、溶接電流を流してスポット溶接を行う。
【００５３】
このようにスポット溶接を行う場合には、両電極チップ１３，１４でワークＷを挟持し、加圧して行うが、このときワークＷと溶接ガン８とが電極の傾く方向に相対的に位置ずれしていた場合、両電極チップ１３，１４の加圧力が均等にならず、これによって溶接品質が低下してしまう。
【００５４】
本発明ではこの点に鑑み、各サーボモータＭ１〜Ｍ６，Ｍｗの電流値を監視する監視手段２３に基づいて、溶接ガン８とワークＷとが相対的に位置ずれしているか否かを判断し、位置ずれしている場合には打点位置を電極の傾く方向にシフトさせて相対的な位置ずれを解消する。
【００５５】
つまり、ワークＷと溶接ガン８とが相対的に位置ずれしていると、ロボット２を移動させて溶接ガン８を打点位置に位置決めし、移動電極チップ１３を移動させてワークＷを挟持したときワークＷが弾性変形し、これによってロボット２に外力が作用する。外力が作用すると、前述したように、サーボモータＭ１〜Ｍ６の電流値が変化する。監視手段２３では各サーボモータＭ１〜Ｍ６の電流値を監視しており、演算手段２４ではこれらの電流値の変化に基づいて評価値を算出し、この評価値が予め定める値Ａより大きいと、溶接ガン８とワークとが相対的に位置ずれしていると判断し、予め定めるシフト量ΔＬを出力する。そして、電極の傾く方向で、評価値が減少する側にシフト量ΔＬだけ打点位置をシフトして打点位置を補正する。
【００５６】
このような打点位置の補正は、溶接ロボット１のティーチ時においては、予め記憶される教示データである打点位置を補正、すなわち書き換える。また、作業動作プログラムを再生して実際に溶接作業を行うリピート時においては、ワークＷがずれて配置された場合などの一時的なずれであるので、教示データは書き換えず、位置ずれしたワークＷの溶接作業のみの補正として、溶接ガン８の打点位置をシフトして溶接作業をおこなう。
【００５７】
次にティーチ時における教示データの補正について説明する。
【００５８】
溶接ガン８の打点位置の教示において、ワークＷの溶接面に平行な面内での位置決めは比較的容易であり、たとえばオペレータ、またはオフラインティーチによって正確に教示することができるが、ワークＷの溶接面に対して垂直な方向、すなわち電極の傾く方向への位置決めは、前述したように固定電極チップ１４をワークＷにゼロタッチするように位置決めせねばならず、困難である。
【００５９】
したがって、まずオフラインティーチまたはオペレータによって、予め溶接面に平行な面内での打点位置を正確に教示し、電極の傾く方向への位置決めは概略的に教示しておき、オンラインティーチにおいて、前述したように打点位置を電極の傾く方向にシフトさせ、初めに記憶された教示位置である打点位置の補正を行う。
【００６０】
次に図３〜図６を参照して打点位置の補正方法についてさらに詳細に説明する。図３は、打点位置の補正方法を示すフローチャートであり、図４は溶接用サーボモータＭｗの電流値のタイムチャートであり、図５はサーボモータＭ２，Ｍ３，Ｍ５の各電流値のタイムチャートであり、図６は、溶接ガン８の位置決め時の状態を示す図である。
【００６１】
なおこの例ではワークＷは水平に配置されているものとし、電極チップ１３，１４は鉛直方向にワークＷを挟持するものとする。また、最初に記憶される教示データの概略的な打点位置は、ワークＷよりも相対的に鉛直下方にずれているものとし、この最初に記憶される打点位置を、図６において参照符Ｐｆで示す。
【００６２】
ワークＷと打点位置との相対的な位置ずれは鉛直方向に生じるので、電極の姿勢が鉛直方向であるとすると、弾性変形したワークＷからロボット２に作用する外力は、主に第２軸Ｊ２、第３軸Ｊ３、第５軸Ｊ５に作用する。したがってこの例の場合は、監視手段２３によって監視する電流値は、第２軸Ｊ２、第３軸Ｊ３、第５軸Ｊ５のサーボモータＭ２，Ｍ３，Ｍ５とし、これらのサーボモータＭ２，Ｍ３，Ｍ５の電流値に基づいて評価値を算出するものとする。
【００６３】
まず、ステップａ１において溶接ガン８を開き、次にステップａ２において、教示データに基づいて溶接ガン８を打点位置まで移動させる。このとき、図６の（ａ）に示すように、まず、ワークＷと打点位置とが相対的に位置ずれしていたとしても当接しない充分な所定距離Ｄ、たとえば５ｍｍだけ、最初に記憶されている打点位置Ｐｆより、固定電極チップ１４が下方に離反する位置に溶接ガン８を配置する。なおこのときの時刻をｔ１とする。
【００６４】
次にステップａ３で、図６（ｂ）に示すように、前記所定距離Ｄだけ溶接ガン８を上昇させ、溶接ガン８を最初に記憶されている打点位置Ｐｆに配置する。この例では、ワークＷは相対的に上方に位置ずれしているものとするので、ステップａ３で教示データに基づいて溶接ガン８を打点位置Ｐｆに位置決めしたとき、固定電極チップ１４はワークＷにゼロタッチせず、ワークＷは固定電極チップ１４よりも上方に配置されることになる。
【００６５】
時刻ｔ２において教示データに基づく打点位置に溶接ガン８が配置されると、次のステップａ４に移り、移動電極チップ１３を固定電極チップ１４側に移動させて溶接ガン８を閉じ、ワークＷを挟持する。
【００６６】
前述したように、ワークＷは固定電極１４よりも上方に離反した位置に配置されており、時刻ｔ２から移動電極チップ１３を下降させると、先ず時刻ｔ３において移動電極チップ１３がワークＷの上面に当接する。さらに移動電極チップ１３が下方に移動することによってワークＷが押下げられ、ワークＷは下方に弾性変形する。
【００６７】
したがって、図４に示すように溶接用モータＭｗの電流値はワークＷに当接する時刻ｔ３から上昇しはじめる。さらに移動電極チップ１３を押下げると、時刻ｔ４においてワークＷが固定電極チップ１４に当接する。さらに加圧力を加えると溶接用モータＭｗの電流値がさらに増加し、時刻ｔ５において所定の加圧力に達するとサーボモータＭｗの電流値の上昇が停止する。
【００６８】
溶接ロボット１が図１に示す姿勢にあるとき、サーボモータＭ２，Ｍ３，Ｍ５のうち、最も大きな力を受けるのは水平に延びる上部アーム６を支える第３軸Ｊ３のサーボモータＭ３であり、その次が鉛直に延びる下部アーム５の第２軸Ｊ２のサーボモータＭ２であり、３番目が手首まわりの第５軸Ｊ５のサーボモータＭ５である。したがって、各サーボモータＭ２，Ｍ３，Ｍ５に供給される電流値は、図５に示されるようにサーボモータＭ３の電流値が最も大きく、サーボモータＭ５に供給される電流が最も小さくなる。
【００６９】
この状態で、移動電極チップ１３を下方に移動させて移動電極チップ１３がワークＷに当接すると、ロボット２には上向きに力が作用する。各サーボモータＭ２，Ｍ３，Ｍ５はそれぞれフィードバック制御されているので、ロボット２に上向きの外力が作用すると、サーボモータＭ２，Ｍ３，Ｍ５はそれぞれ溶接ガン８を下げる方向へ作用する。すなわち、各サーボモータＭ２，Ｍ３，Ｍ５に供給する電流を下げて、溶接ガン８を上向きに保持する力を弱める。したがって、図５に示すように移動電極チップ１３がワークＷに当接する時刻ｔ３からワークＷが固定電極チップ１４に当接する時刻ｔ４まで各サーボモータＭ３，Ｍ２，Ｍ５の電流値が低下する。
【００７０】
次にステップａ５で監視していた各サーボモータＭ２，Ｍ３，Ｍ５の電流値の変化と、所定の評価関数とから評価値を算出する。
【００７１】
ここで、ワークＷ当接前の第ｉ軸の電流値をＩniとし、加圧終了後の第ｉ軸の電流値をＩpiとしたとき、評価関数は
【００７２】
【数１】
0003541151.tif 000002
【００７３】
の３つの式で与えられる。なお、Ｋ１i，Ｋ２i，Ｋ３iはそれぞれ評価関数（１）〜（３）における第ｉ軸での定数である。
【００７４】
評価関数（１）は、ワークＷ当接前の各軸ｉの電流値Ｉniと、加圧が終了し、ワークＷ弾性変形後の各軸ｉの電流値Ｉpiとの差の絶対値にそれぞれ定数Ｋ１iを掛けたものを加算した値であり、定数Ｋ１iは各軸毎に決まる定数である。また、前述したように、本実施形態では全てのサーボモータＭ１〜Ｍ６の電流値に基づいて評価値を算出するのでなく、相対的な位置ずれによる電流値の変化が最も大きくなるサーボモータの電流値を用い、図１に示す例では、第３軸Ｊ３、第２軸Ｊ２および第５軸Ｊ５の３つの電流値を用いて評価値を算出する。
【００７５】
また定数Ｋ１iは、相対的な位置ずれの影響が最も大きく現れる軸ｉの定数Ｋ１iが大きくなるように設定し、いわば重み付けを行う。これによって、相対的な位置ずれの大きさを良好に反映した評価値を得ることができる。ここでは電極チップ１３，１４に近いほど、電流値の変化と相対的なずれの大きさとの関係が大きく現れるので、本実施形態では、Ｋ１2＜Ｋ１3＜Ｋ１5となるように選ばれる。
【００７６】
評価関数（２）は、各軸毎の電流値の差を加圧後の電流値Ｉniで割った値に基づいて評価値が算出される。これによって、評価関数（１）に比べて電流値の変化の割合を考慮した評価値を得ることができる。
【００７７】
評価関数（３）は、評価関数（２）で用いる各軸毎の電流値の差を加圧後の電流値で割った値を２乗して評価値を算出する。なお評価関数はこのような３つの形態に限らず、電流値の変化に応じて評価値が変化する関数であればよい。
【００７８】
なお本実施形態では評価関数（２）を用いて評価値を算出するものとする。また、前述の説明では溶接ガン８の打点位置がワークＷに対して下側に相対的に位置ずれした場合を想定しているので、移動電極チップ１３を下降させてから電流値の変化が生じるが、ワークＷに対して上側に打点位置が相対的に位置ずれする場合であっても、前述のステップａ２において、前述と同様に溶接位置よりも下側に溶接ガン８を配置し、その後、溶接ガン８を上昇させて打点位置に位置決めするとき、固定電極チップ１４がワークＷに下から当接し、このときに各サーボモータＭ２，Ｍ３，Ｍ５の電流値が変化する。
【００７９】
したがって、評価値算出に用いるワークＷ変形前の電流値Ｉniは溶接位置の下側に溶接ガン８を配置した時刻ｔ１、またはそれ以降の電流値とする。またワークＷ変形後の電流値は、加圧終了時の時刻ｔ５、またはそれ以降での電流値とする。なお本実施形態では変形前の電流値Ｉniは時刻ｔ１から所定時間Δｔ（秒）後の時間の平均の電流値とし、変形後の電流値Ｉpiは、時刻ｔ５から所定時間Δｔ（秒）後までの時間の平均の電流値とする。これによって外乱などの影響による電流値の変化を防ぐことができる。
【００８０】
次にステップａ６において算出した評価値が予め定める値Ａより大きいか否かを判断し、予め定める値Ａ以下である場合には、予め記憶される教示データに基づく溶接ガン８の打点位置の相対的な位置ずれは小さく、許容範囲以内であるものと判断し、ステップａ７に進み、教示データの補正は行わず、現在記憶されている教示データを打点位置として決定する。
【００８１】
評価値が所定の値Ａより大きい場合には、打点位置を加圧方向に沿い、評価値が減少する側、すなわち本実施形態では上方に、シフト量ΔＬだけ打点位置をシフトさせ、この位置を新たな打点位置として記憶手段に記憶し、教示データを補正する。シフト量ΔＬは、本実施形態では予め定める一定量であるものとする。
【００８２】
次に、補正した打点位置に基づき、再びステップａ２に戻り、以下前述と同様の動作を繰り返す。すなわち、補正後の打点位置に位置決めし、溶接ガン８を閉じ、再び評価値を算出し、評価値が予め定める値Ａより大きい場合は再び打点位置をシフトさせて、前回の教示データの補正を行う。このようにして、評価値が予め定める値Ａ以下になるまで繰返し、評価値が予め定める値Ａ以下になると、ステップａ７に進み、打点位置を決定する。これによって、打点位置の相対的なずれを確実に許容範囲内に納めることができる。
【００８３】
また、ロボット２の各軸Ｊ１〜Ｊ６の位置、および方向は容易に導出することができ、またワークＷの変形による各サーボモータＭ１〜Ｍ６の電流値の変化は監視手段２３によって監視されているので、これらに基づいて弾性変形したワークＷから溶接ロボット１に作用する反力を算出することができる。
【００８４】
したがって、前述した評価関数（１）〜（３）に基づく評価値でなく、上述した反力を算出し、この反力がゼロ、または予め定める値以下になるように打点位置のシフトを繰り返すようにして打点位置を補正しても良い。
【００８５】
またさらに、たとえば予め実験によって、評価値と、評価値を予め定める値Ａ以下とするためのシフト量ΔＬとの関係を、溶接するワークＷの厚さ、種類毎に求めてテーブルを作成して記憶手段２２に記憶しておき、ワークＷと算出した評価値とに基づいて、評価値が予め定める値Ａ以下になるシフト量ΔＬを記憶されるテーブルから導出するようにしてもよい。これによって、１回のシフトで評価値が予め定める値Ａ以下となるようなシフト量ΔＬを得ることができ、各溶接打点毎にシフトの繰り返しを行う必要がなくなる。
【００８６】
また実験でなく、ティーチ時において、実際のワークでシフト量ΔＬと評価値との関係を求めておき、これに基づいて、１回のシフトで、評価値が予め定める値Ａ以下となるシフト量ΔＬを導出するようにしても良い。
【００８７】
上述した電流値の変化に基づいて溶接位置をシフトさせる方法はティーチ時における教示データの補正に限らず、リピート時において溶接位置を修正する場合にも適用することができる。
【００８８】
たとえば、教示データの打点位置が正確であっても、リピート時にワークＷが相対的に位置ずれして配置された場合、ワークＷと溶接ガン８とが相対的に位置ずれしてしまう。このような場合に上述した打点位置の補正方法を適用することができる。すなわち、リピート時にも溶接打点で溶接ガンを閉じて評価値およびシフト量を算出し、この算出したシフト量ΔＬだけ打点位置を補正、すなわち溶接ガン８をシフトしてスポット溶接を行う。なお、リピート時には、ワークＷの位置決めのずれの変化が想定されるので、基本的に教示データの書き換えは行わず、対応する溶接打点の打点位置のみ補正する。
【００８９】
このようにして相対的な位置ずれを補正することによって、ワークＷの位置ずれによる加圧力の差をなくし、均等加圧することができ、溶接品質の低下を防ぐことができる。
【００９０】
またリピート時には、上述したように、溶接打点毎に溶接ガン８を閉じて評価値を算出し、打点位置を補正するのでなく、複数箇所溶接打点が存在する場合に、最初の溶接打点でのみ打点位置を補正し、次の溶接打点からは最初の溶接打点での補正と同様に補正するようにしても良い。
【００９１】
たとえばワークＷが水平に配置され、同一のワークＷに対して複数箇所溶接打点が存在する場合において、ワークＷが鉛直方向にずれて配置されたとすると、全ての打点位置を鉛直方向にシフトさせる必要がある。このような場合、たとえば最初の溶接打点においてのみワークＷを挟持して評価値を算出してシフト量ΔＬを求め、打点位置をシフト量ΔＬだけシフトさせてスポット溶接を行う。そして、この位置ずれして配置されたワークＷの以降の溶接打点では、評価値の算出を行わず、最初の打点位置の補正と同様に、シフト量ΔＬだけ打点位置をシフトさせてスポット溶接を行う。これによって、ΔＬだけずれた全ての溶接打点を補正することができる。
【００９２】
このようにして、ワークＷが相対的に位置ずれして配置された場合、全ての溶接打点でシフト量を算出する必要がなくなり、演算時間を短縮し、作業効率を向上することができる。
【００９３】
また、同一形状のワークＷが順次、たとえばシャトルコンベアによって搬送されて、順次溶接作業を行う場合において、たとえば教示データが相対的にずれている場合には、各ワークＷの対応する溶接打点において、全て同じシフト量だけ打点位置をシフトさせる必要がある。
【００９４】
このような場合には最初のワークＷの溶接打点においてのみシフト量ΔＬを算出し、この溶接打点の教示データを補正する。すなわち、以下のワークＷでは、対応する溶接打点では教示データが補正されているので、評価値を算出する必要がなくなり、ワークＷと溶接ガン８との相対的な位置ずれを防ぐことができる。このようにして、作業効率を向上することができる。
【００９５】
本実施形態ではワークＷは水平に配置されるものとしたので、溶接電流を監視するサーボモータはＭ２，Ｍ３，Ｍ５のみとしたが、ワークＷの配置状態、またはロボット２の姿勢に応じて、監視するサーボモータを、たとえば電流値の変化の割合が最も大きいものから所定の数だけ適宜選ぶようにしても良く、また、基本軸に比して減速機の摩擦力の小さな手首軸を優先的に選んでも良く、また６個のサーボモータＭ１〜Ｍ６の全ての電流値に基づいて評価値を算出するようにしてもよい。
【００９６】
【発明の効果】
以上のように本発明によれば、溶接ガンとワークとが相対的に位置ずれする場合、打点位置をシフトすることによって相対的な位置ずれを解消することができる。これによって、均等加圧することができ、溶接品質の低下を防ぐことができる。
【００９７】
このような打点位置の補正は、ティーチ時において、初めに記憶されていた教示位置である打点位置を補正する場合、およびリピート時において、被溶接物が位置ずれして配置された場合における打点位置の補正の両方に適用することができる。
【００９８】
また、打点位置のシフト方向は、移動電極の移動方向に規定されているので、シフト方向が不安定になることが防がれる。
【図面の簡単な説明】
【図１】本発明の実施の一形態であるスポット溶接ロボット１の外観を示す斜視図である。
【図２】サーボモータＭ１の制御構成を示すブロック図である。
【図３】教示データの補正方法を示すフローチャートである。
【図４】溶接用モータＭｗの電流値のタイムチャートである。
【図５】サーボモータＭ３，Ｍ２，Ｍ５の電流値を示すタイムチャートである。
【図６】溶接ガン８を打点位置に位置決めするときの状態を示す図である。
【符号の説明】
１  スポット溶接ロボット
２  ６軸多関節型ロボット
４  基台
５  下部アーム
６  上部アーム
８  溶接ガン
１３  移動電極チップ
１４  固定電極チップ
２０  制御装置
２１  ロボットコントローラ
２２  記憶手段
２３  監視手段
２４  演算手段
Ｍ１〜Ｍ６，Ｍｗ  サーボモータ
【図１】
0003541151.tif 000003
【図２】
0003541151.tif 000004
【図３】
0003541151.tif 000005
【図４】
0003541151.tif 000006
【図５】
0003541151.tif 000007
【図６】
0003541151.tif 000008