(57)【要約】【課題】スポット溶接のためのワーク位置の検出精度を高める。【解決手段】可動電極２１がワーク表面に当接するように、サーボモータ２４により可動電極２１をワーク表面に接近移動した際のモータトルクＴを検出する物理量検出手段４と、可動電極２１の位置を検出する位置検出手段１３ａ，２４ａと、物理量検出手段４により検出されたモータトルクＴおよび位置検出手段１３ａ，２４ａにより検出された検出値を記憶する記憶手段３，４と、記憶手段３，４に記憶されたモータトルクＴの時系列データに基づき、可動電極２１がワーク表面に接触を開始した接触開始時点を算出するとともに、記憶手段３，４に記憶された位置検出手段１３ａ，２４ａの検出値に基づき、接触開始時点におけるワーク位置を演算する演算手段３，４とを備える。【選択図】図１
2011152582.tif 000002
【特許請求の範囲】
【請求項１】
ワークを挟んで互いに対向して配置される一対の電極を有するスポット溶接ガンと、
前記スポット溶接ガンおよび前記ワークのいずれか一方をいずれか他方に対して相対移動可能に保持するロボットと、
前記一対の電極を前記ワークに対して接近および離間するサーボモータと、
前記一対の電極の一方が前記ワークの表面に当接するように、前記サーボモータにより前記一対の電極の一方をワーク表面に接近移動した際の前記サーボモータのトルクと相関関係のある物理量を検出する物理量検出手段と、
前記一対の電極の位置を検出する位置検出手段と、
前記物理量検出手段により検出された物理量および前記位置検出手段により検出された検出値を記憶する記憶手段と、
前記記憶手段に記憶された物理量の時系列データに基づき、前記一対の電極の一方がワーク表面に接触を開始した接触開始時点を算出するとともに、前記記憶手段に記憶された前記位置検出手段の検出値に基づき、前記接触開始時点におけるワーク位置を演算する演算手段とを備えることを特徴とする溶接ワーク位置検出装置。
【請求項２】
請求項１に記載の溶接ワーク位置検出装置において、
前記サーボモータを制御する制御手段をさらに備え、
前記演算手段は、前記物理量検出手段により検出された物理量に基づき、前記一対の電極の一方がワーク表面に接触した後の所定の押し込み状態になったか否かを判定する判定部を有し、
前記制御手段は、前記判定部により前記所定の押し込み状態になったと判定されると、前記一対の電極の一方のワーク表面への接近移動を停止するように前記サーボモータを制御することを特徴とする溶接ワーク位置検出装置。
【請求項３】
請求項２に記載の溶接ワーク位置検出装置において、
前記判定部は、前記物理量検出手段により検出された物理量が所定値以上になったとき、または物理量の単位時間当たりの増加の割合が所定値以上になったときに、前記所定の押し込み状態になったと判定することを特徴とする溶接ワーク位置検出装置。
【請求項４】
請求項２に記載の溶接ワーク位置検出装置において、
前記判定部は、前記物理量検出手段により検出された物理量が、前記一対の電極の一方が前記ワークの表面に接触する前における物理量がほぼ一定の基準状態における物理量よりも所定量以上増加したとき、または前記物理量検出手段により検出された物理量の単位時間当たりの増加の割合が、前記基準状態における物理量の単位時間当たりの増加の割合よりも所定量以上増加したときに、前記所定の押し込み状態になったと判定することを特徴とする溶接ワーク位置検出装置。
【請求項５】
請求項４に記載の溶接ワーク位置検出装置において、
前記基準状態は、前記一対の電極の一方がワーク表面に定速で接近している状態であることを特徴とする溶接ワーク位置検出装置。
【請求項６】
請求項２〜５のいずれか１項に記載の溶接ワーク位置検出装置において、
前記演算手段は、前記判定部により前記所定の押し込み状態になったと判定された第１の時点から遡り、前記記憶手段に記憶された物理量が前記第１の時点における物理量よりも所定量以上減少した第２の時点を前記接触開始時点として算出することを特徴とする溶接ワーク位置検出装置。
【請求項７】
請求項２〜５のいずれか１項に記載の溶接ワーク位置検出装置において、
前記演算手段は、前記判定部により前記所定の押し込み状態になったと判定された第１の時点から遡り、前記記憶手段に記憶された物理量の単位時間当たりの増加の割合が０または負になった第２の時点を前記接触開始時点として算出することを特徴とする溶接ワーク位置検出装置。
【請求項８】
請求項２〜７のいずれか１項に記載の溶接ワーク位置検出装置において、
前記制御手段は、予め定められたスポット溶接を行うための作業プログラムに基づき、前記サーボモータを制御することを特徴とする溶接ワーク位置検出装置。
【請求項９】
請求項２〜７のいずれか１項に記載の溶接ワーク位置検出装置において、
前記演算手段は、前記接触開始時点における前記位置検出手段の検出値と前記制御手段により前記一対の電極の一方が停止された際の前記位置検出手段の検出値とに基づいて、前記一対の電極の一方の位置検出補正量を算出し、この位置検出補正量と前記一対の電極の一方が停止された際の前記位置検出手段の検出値とに基づいて、ワーク位置を演算することを特徴とする溶接ワーク位置検出装置。
【請求項１０】
ワークを挟んで互いに対向して配置される一対の電極を有するスポット溶接ガンと、前記スポット溶接ガンおよび前記ワークのいずれか一方をいずれか他方に対して相対移動可能に保持するロボットと、前記一対の電極を前記ワークに対して接近および離間するサーボモータとを備え、前記ワークの表面位置を検出する溶接ワーク位置検出方法であって、
前記一対の電極の一方が前記ワークの表面に当接するように前記一対の電極の一方をワーク表面に接近移動させる手順と、
前記一対の電極の一方をワーク表面に接近移動させた際の前記サーボモータのトルクと相関関係のある物理量に基づき、前記一対の電極の一方のワーク表面への接触開始時点を判断する手順と、
前記一対の電極の一方がワーク表面に接触を開始したと判断された時点における前記一対の電極の位置に基づき、ワーク位置を演算する手順とを含むことを特徴とする溶接ワーク位置検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スポット溶接されるワークの位置を検出する溶接ワーク位置検出装置および溶接ワーク位置検出方法に関する。
【背景技術】
【０００２】
ロボットを用いて自動運転によりワークのスポット溶接を行う場合に、作業プログラムに記録されたワーク位置（スポット溶接打点位置）が実際のワーク位置からずれていると、ワークに過負荷が作用したり溶接電流が正しく流れない等の問題が生じ、溶接品質の低下を招く。このため、従来、スポット溶接を行う前に予めワーク位置を検出し、そのワーク位置に応じてスポット溶接打点位置を補正していた（例えば特許文献１参照）。
【０００３】
特許文献１記載のシステムでは、スポット溶接ガンの可動電極と対向電極の間にワークを配置し、サーボモータの駆動により可動電極をワーク表面に接近させる。そして、モータ電流が所定値を越えたときに、可動電極がワーク表面に接触してサーボモータに外乱トルクが発生したと判断して、そのときの可動電極の位置に基づきワーク位置を検出する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第４２３３５８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記特許文献１記載のシステムは、可動電極がワーク表面に接触した際に、サーボモータのトルクがステップ状に変化するとしてワーク位置を検出する。しかしながら、実際のサーボモータのトルクは、可動電極がワーク表面に接触した後に徐々に上昇する傾向にある。したがって、モータ電流が所定値を超えた時点では、可動電極は既にワーク表面を十分に押し込んで接触位置よりも変位した状態にあり、モータ電流が所定値を超えたときに可動電極がワーク表面に接触したと判断したのでは、ワーク位置を精度よく検出することができない。
【課題を解決するための手段】
【０００６】
本発明による溶接ワーク位置検出装置は、ワークを挟んで互いに対向して配置される一対の電極を有するスポット溶接ガンと、スポット溶接ガンおよびワークのいずれか一方をいずれか他方に対して相対移動可能に保持するロボットと、一対の電極をワークに対して接近および離間するサーボモータと、一対の電極の一方がワークの表面に当接するように、サーボモータにより一対の電極の一方をワーク表面に接近移動した際のサーボモータのトルクと相関関係のある物理量を検出する物理量検出手段と、一対の電極の位置を検出する位置検出手段と、物理量検出手段により検出された物理量および位置検出手段により検出された検出値を記憶する記憶手段と、記憶手段に記憶された物理量の時系列データに基づき、一対の電極の一方がワーク表面に接触を開始した接触開始時点を算出するとともに、記憶手段に記憶された位置検出手段の検出値に基づき、接触開始時点におけるワーク位置を演算する演算手段とを備えることを特徴とする。
【０００７】
また、本発明による溶接ワーク位置検出方法は、ワークを挟んで互いに対向して配置される一対の電極を有するスポット溶接ガンと、スポット溶接ガンおよびワークのいずれか一方をいずれか他方に対して相対移動可能に保持するロボットと、一対の電極をワークに対して接近および離間するサーボモータとを備え、ワークの表面位置を検出する溶接ワーク位置検出方法であって、一対の電極の一方がワークの表面に当接するように一対の電極の一方をワーク表面に接近移動させる手順と、一対の電極の一方をワーク表面に接近移動させた際のサーボモータのトルクと相関関係のある物理量に基づき、一対の電極の一方のワーク表面への接触開始時点を判断する手順と、一対の電極の一方がワーク表面に接触を開始したと判断された時点における一対の電極の位置に基づき、ワーク位置を演算する手順とを含むことを特徴とする。
【発明の効果】
【０００８】
本発明によれば、電極とワークとが実際に接触を開始した時点の電極の位置に基づいてワーク位置を演算するため、ワーク位置を精度よく検出することができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施の形態に係る溶接ワーク位置検出装置を有するスポット溶接システムの全体構成を概略的に示す図である。
【図２】作業プログラムの実行による可動電極と対向電極の動作を示す図である。
【図３】図１のロボット制御装置および溶接ガン制御装置で実行される処理の一例を示すフローチャートである。
【図４】図３のワーク位置検出処理における可動電極と対向電極の動作を示す図である。
【図５】図３のワーク位置検出処理における可動電極駆動用サーボモータのモータトルクとモータ速度の時間変化の例を示す図である。
【図６】モータトルクの具体的な時系列変化を用いた、可動電極の押し込み判定に係る処理を説明する図である。
【図７】モータトルクの具体的な時系列変化を用いた、可動電極の接触開始時点の判定に係る処理を説明する図である。
【図８】図１の変形例を示す図である。
【図９】図１の別の変形例を示す図である。
【発明を実施するための形態】
【００１０】
以下、図１〜図９を参照して本発明の実施の形態に係る溶接ワーク位置検出装置について説明する。図１は、本発明の実施の形態に係る溶接ワーク位置検出装置を有するスポット溶接システムの全体構成を概略的に示す図である。図１のスポット溶接システムは、多関節型のロボット１と、スポット溶接ガン２と、ロボット１を制御するロボット制御装置３と、スポット溶接ガン２を制御する溶接ガン制御装置４とを備える。
【００１１】
ロボット１は、一般的な６軸垂直多関節型ロボットであり、床に固定されたベース１０と、ベース１０に回動可能に連結された下アーム１１と、下アーム１１の先端部に回転可能に連結された上アーム１２と、上アーム１２の先端部に回転可能に取り付けられたスポット溶接ガン２とを有する。ロボット１は、複数（便宜上１つのみ図示）のロボット駆動用のサーボモータ１３を内蔵する。サーボモータ１３はロボット制御装置３からの制御信号により駆動され、サーボモータ１３の駆動によりスポット溶接ガン２の位置および姿勢が変更される。
【００１２】
スポット溶接ガン２は、いわゆるＣ型スポット溶接ガンであり、上アーム１２の先端部に回転可能に連結されたコの字状のガンアーム２３と、ワーク挟持用のサーボモータ２４とを有する。ガンアーム２３は、Ｌ字状のフレーム２３ａの端部から突設された棒状の対向電極２２と、対向電極２２に対向して突設された棒状の可動電極２１とを有する。可動電極２１と対向電極２２は同軸上に配置されている。対向電極２２はフレーム２３ａに固定されているのに対し、可動電極２１は対向電極２２と同軸上をフレーム２３ａに対し相対移動可能である。
【００１３】
サーボモータ２４は溶接ガン制御装置４からの制御信号により駆動され、サーボモータ２４の駆動により、可動電極２１は対向電極２２に接近および対向電極２２から離間する。可動電極２１と対向電極２２の間には、ワークＷが板厚方向で挟持され、ワークＷのスポット溶接が行われる。ワークＷは、図示しないワーク支持装置により支持されている。
【００１４】
ロボット駆動用の各サーボモータ１３にはエンコーダ１３ａが設けられ、エンコーダ１３ａによりサーボモータ１３の軸回りの回転角度が検出される。検出された回転角度はロボット制御装置３にフィードバックされ、ロボット制御装置３でのフィードバック制御により、アーム先端部のスポット溶接ガン２の位置および姿勢が制御される。これによりフレーム２３ａに一体化された対向電極２２を、ワークＷの板厚方向の教示位置に位置決めできるとともに、エンコーダ１３ａからの信号により対向電極２２の位置および姿勢を検出できる。
【００１５】
同様に、ワーク挟持用のサーボモータ２４にはエンコーダ２４ａが設けられ、エンコーダ２４ａによりサーボモータ２４の軸回りの回転角度が検出される。検出された回転角度は溶接ガン制御装置４にフィードバックされ、溶接ガン制御装置４でのフィードバック制御により、対向電極２２に対して可動電極２１を位置決めできる。電極２１，２２間の開放量はサーボモータ２４の回転角度に応じて変化するが、本実施形態では可動電極２１を対向電極２２に接触させたとき、すなわち開放量が０のときのサーボモータ２４の回転角度を予め基準値として設定している。これによりエンコーダ２４ａからの信号によって、基準値からの回転角度を検出でき、電極２１，２２間の開放量を検出できる。
【００１６】
ロボット制御装置３および溶接ガン制御装置４は、それぞれＣＰＵ，ＲＯＭ，ＲＡＭ，その他の周辺回路などを有する演算処理装置を含んで構成される。ロボット制御装置３は溶接ガン制御装置４に接続されている。ロボット制御装置３と溶接ガン制御装置４とは通信を行い、互いに信号を送受信する。ロボット制御装置３には教示操作盤５とライン制御盤６も接続されている。
【００１７】
ロボット制御装置３のメモリには、ロボット１およびスポット溶接ガン２の動作プログラム（作業プログラム）や教示データ等が書き換え可能な形式で格納されている。教示データには、ワークＷを多数の溶接箇所でスポット溶接するときのロボット１およびスポット溶接ガン２の位置および姿勢である溶接打点データが含まれる。この教示データに基づき、自動運転のための作業プログラムが作成されている。
【００１８】
自動運転時には、ロボット制御装置３は、作業プログラムに従いロボット１を動作させ、ワークＷに対するスポット溶接ガン２の位置と姿勢を制御して、電極２１，２２間にワークＷを配置する。また、溶接ガン制御装置４は、作業プログラムに従い可動電極２１を動作させ、ワークＷに負荷される電極２１，２２による加圧力を制御するとともに、作業プログラムに従い電極２１，２２に供給する電流を制御し、予め定められた溶接打点位置でスポット溶接を実行する。
【００１９】
教示操作盤５は、オペレータにより操作される操作部５１と、オペレータに対して所定の情報を報知する表示部５２とを有する。操作部５１からは、主にロボット１の動作に関する教示指令や作業プログラムの編集や実行に関する指令等が入力される。ロボット１の設定状態や動作状態、異常状態等の各種情報は、表示部５２に表示される。
【００２０】
図示は省略するが、工場内の生産ラインには、上述のスポット溶接システムが複数設けられており、ライン制御盤６はこれらシステムの各ロボット制御装置３に接続されている。ライン制御盤６には、各ロボット制御装置３と周辺機器からの信号が送信され、これらの信号に基づきライン制御盤６はスポット溶接の生産ラインを一元的に管理できる。ライン制御盤６に設けられた表示部６１、あるいはライン制御盤６に接続された表示装置（不図示）等により、各ロボット１の動作状態を把握することもできる。
【００２１】
ライン制御盤６は、各ロボット制御装置３からの信号を入力し、各ロボット制御装置３に対し外部信号を出力する。ライン制御盤６は、各ロボット制御装置３に、作業プログラムを実行する起動指令を出力することもできる。ライン制御盤６からの外部信号には、イーサネット（登録商標）通信等の各種通信手段も含まれる。また、教示操作盤５の操作によりこれらの指令を出力してもよい。
【００２２】
図２は、自動運転時における作業プログラムの実行による電極２１，２２の動作を示す図である。ここでは、ワークＷが水平に保持された状態で各電極２１，２２を移動してスポット溶接を行う。つまり、一対の電極２１，２２を、ワークＷの上方および下方にそれぞれワークＷに対して垂直に配置した後、各電極２１，２２をワークの上面および下面の溶接打点位置に移動してスポット溶接を行う。
【００２３】
なお、ワーク上下面のいずれか一方の溶接打点位置をワークＷの板厚分だけずらせば、ワーク上下面のいずれか他方の溶接打点位置となる。このため、プログラム上は、ワーク上下面のいずれか一方（例えばワーク下面）の溶接打点位置のみをワーク板厚とともに設定している。
【００２４】
自動運転時には、まず、各電極２１，２２は、スポット溶接開始前の待機位置へ移動する。すなわち、ワーク表面から所定距離Ｄａ，Ｄｂだけ離間した位置１まで所定速度で移動し、そこで一旦停止する。次いで、各電極２１，２２は、図の経路に沿って所定速度で溶接打点位置（位置２）へ移動した後、ワークＷに所定の加圧力を負荷する。この状態で所定の電流条件により電極２１，２２が通電される。その後、各電極２１，２２は、スポット溶接終了後の待機位置へ移動する。すなわち、ワーク表面から所定距離Ｄｃ，Ｄｄだけ離間した位置３まで所定速度で移動し、そこで一旦停止する。
【００２５】
なお、溶接箇所が複数ある場合には、各電極２１，２２は、次の溶接箇所に対応したスポット溶接開始前の待機位置へ移動し、ワークＷは複数の溶接箇所で連続してスポット溶接される。この場合、各溶接箇所の周囲の障害物２５を考慮し、障害物２５と電極２１，２２とが干渉しないように各溶接箇所毎に電極２１，２２の開放量Ｄａ〜Ｄｄが設定される。
【００２６】
ところで、予め定められた溶接打点位置に電極２１，２２を移動してワークＷにスポット溶接を行う場合、同種のワークＷであっても、ワークＷのロット変更やワークＷを設置する治具の位置調整等を行ったことにより、ワーク表面のスポット溶接打点位置が、目標とするスポット溶接打点位置からずれる場合がある。このようなずれが生じると、ワークＷに過負荷が作用する、あるいは溶接電流が正しく流れない等の問題が発生し、溶接品質の低下を招く。このため、実際のワーク位置を検出してスポット溶接打点位置を修正する必要があるが、この修正を複数のスポット溶接打点位置の全てにおいて手動で行ったのでは膨大な手間と手間がかかる。また、作業者がスポット溶接打点位置のずれを直接目視で確認して修正を行うようにしたのでは、修正の程度が作業者の熟練度により左右され、溶接品質を均一に保つことができない。そこで、本実施の形態では、自動運転によるスポット溶接を行う前に、以下のようにしてワーク位置を自動で検出し、作業プログラム上のスポット溶接打点位置を修正する。
【００２７】
図３は、ロボット制御装置３および溶接ガン制御装置４で実行されるワーク位置検出処理の一例を示すフローチャートであり、図４は、ワーク位置検出処理を実行した際の各電極２１，２２の動作の一例を示す図、図５（ａ），（ｂ）は、ワーク位置検出処理を実行した際のサーボモータ２４のモータトルクＴおよびモータ速度ｖの時間変化の一例を示す図である。
【００２８】
なお、モータトルクＴはサーボモータ２４の駆動電流と相関関係がある。このため、溶接ガン制御装置４から出力される駆動電流に基づき、図５（ａ）のモータトルクＴを求めることができる。また、モータ速度ｖはサーボモータ２４の回転速度と相関関係がある。このため、エンコーダ２４ａからフィードバックされる回転角度に基づき、図５（ｂ）のモータ速度ｖを求めることができる。
【００２９】
図３に示す処理は、例えば教示操作盤５あるいはライン制御盤６をオペレータが操作してワーク位置検出指令が入力されると開始される。このワーク位置検出処理は、作業プログラムが設定された後に行われる。このため、メモリには、作業プログラムに設定されるワーク下面のスポット溶接打点位置、ワーク厚さｔ０、スポット溶接開始前および終了後の待機位置（図２のＤａ，Ｄｂ，Ｄｃ，Ｄｄ）、電極２１，２２をスポット溶接打点位置へ向けて移動させる際のモータ速度ｖ１等が設定値として予め記憶されている。
【００３０】
図３のステップＳ１では、サーボモータ１３，２４に制御信号を出力し、スポット溶接ガン２の各電極２１，２２を、ワークＷの溶接打点位置の鉛直上方および鉛直下方の所定の開放位置へそれぞれ移動する。この処理は、作業プログラムを流用して行われ、各電極２１，２２は、図２に示すような経路に沿ってワーク表面からＤａ，Ｄｂだけ離れた開放位置（位置２の点線）に移動する。作業プログラムはスポット溶接時の障害物２５の位置を考慮して作成されているため、作業プログラムを流用することで、各電極２１，２２とワークＷや障害物２５との干渉を防ぐことができる。
【００３１】
ステップＳ２では、各サーボモータ１３、２４に、ステップＳ１の電極２１，２２の開放位置を維持するような制御信号を出力する。これにより図４（ａ）に示すように各電極２１，２２は、ワーク表面から所定距離Ｄａ，Ｄｂだけ離れて静止する。このとき図５（ａ）に示すようにモータトルクＴは一定（Ｔ１）であり、モータ速度ｖは０である。この状態を所定時点ｔ１に到るまで継続する。なお、各電極２１，２２のワーク上方および下方の開放位置への移動や停止を自動で行うのではなく、各電極２１，２２の位置をオペレータが目視しながら手動で行うようにしてもよい。すなわちステップＳ１とステップＳ２の処理を省いてもよい。
【００３２】
ステップＳ３では、サーボモータ２４に制御信号を出力し、図４（ｂ）に示すように可動電極２１をワーク表面に接近させる。例えば、図５（ｂ）に示すように、モータ速度ｖを予め定めた所定速度ｖ１まで加速し、その後、その所定速度ｖ１を維持するようにサーボモータ２４を速度制御する（時点ｔ１〜時点ｔ２）。このとき、図５（ａ）に示すように、モータトルクＴはＴ１からＴ２まで増加した後、可動電極２１の定速移動時には一定となる。なお、以下では、時点ｔ１〜ｔ２の範囲においてモータトルクＴがほぼ一定である状態を基準状態と呼び、基準状態におけるモータトルクＴ２を基準トルクと呼ぶ。接近動作前の可動電極２１とワーク表面との距離が短い場合には、ステップＳ３で、可動電極２１を一旦ワークＷとは逆方向に移動させてからワーク表面に接近移動させるようにしてもよく、これにより可動電極２１をワーク表面に定速で接近させることができ、基準状態を確保できる。
【００３３】
ステップＳ４では、モータトルクＴの検出用の物理量および電極２１，２２の位置検出用の物理量のメモリへの記憶を開始する。すなわち、サーボモータ２４に出力される駆動電流およびエンコーダ１３ａ，２４ａからの信号を所定時間毎（例えば数ミリｓｅｃ毎）にメモリに記憶する。
【００３４】
ステップＳ５では、可動電極２１によるワークＷの押し込みの有無を判定する。ワークＷの押し込みとは、図４（ｃ）に示すように可動電極２１がワーク表面に接触した後、図４（ｄ）に示すようにさらに可動電極２１を弾性変形の範囲内で十分に押し込んでワークＷを撓ませた状態である。このワークＷの押し込み後に、可動電極２１を上方に移動してワークＷの押し込みをやめると、ワークＷは押し込み前の状態に復帰する。ステップＳ５では、サーボモータ２４へ出力される駆動電流に基づきモータトルクＴを演算するとともに、モータ速度ｖが一定状態（基準状態）におけるモータトルクＴを基準トルクＴ２として設定する。そして、モータトルクＴがこの基準トルクＴ２から所定量ΔＴ１以上増加したときに、ワークＷの押し込み有りと判定する。
【００３５】
なお、基準状態におけるモータトルクＴは厳密には一定ではなく、例えば所定の範囲ΔＴ０内において変動する（図６参照）。このため、ステップＳ５では、基準状態におけるモータトルクＴの最大値を基準トルクＴ２として設定してもよく、基準状態におけるモータトルクＴの平均値あるいは最小値を基準トルクＴ２として設定してもよい。所定量ΔＴ１は、基準状態におけるモータトルクＴの変動を考慮し、少なくともΔＴ０より大きい値で、かつ、ワークＷを塑性変形することがないような値に設定される。ΔＴ０，ΔＴ１は、実験的に求めることができ、この実験的に求めた値が予め設定値として記憶されている。
【００３６】
このとき、図５（ａ）に示すように、時点ｔ２で可動電極２１がワーク表面に接触を開始するとサーボモータ２４に作用する負荷が増加するため、モータトルクＴは増加する。時点ｔ３においてモータトルクＴの増加量ΔＴが所定量ΔＴ１になると、制御装置３，４はワークＷの押し込み有りと判定する。なお、この時点ｔ３におけるモータトルクＴを押し込みモータトルクＴ３と呼ぶ。ステップＳ５でワークＷの押し込み有りと判定されるとステップＳ６に進む。
【００３７】
ステップＳ６では、サーボモータ２４に制御信号を出力し、可動電極２１の接近移動を停止する。これにより、図５（ｂ）に示すようにモータ速度ｖは減速し、時点ｔ４でモータ速度ｖは０となる。この減速停止範囲においては、図５（ａ）に示すようにモータトルクＴは押し込みモータトルクＴ３よりも増加する。ステップＳ７では、モータトルクＴの検出用の物理量（サーボモータ２４への駆動電流）および電極２１，２２の位置検出用の物理量（エンコーダ１３ａ，２４ａからの信号）の記憶処理（ステップＳ４）を終了する。
【００３８】
ステップＳ８では、可動電極２１の位置検出補正量Δｄ、つまり可動電極２１によるワークＷの押し込み量を算出する。補正量Δｄの算出にあたっては、まず、メモリに記憶されたモータトルクＴの時系列データに基づき、可動電極２１がワーク表面に接触を開始した接触開始時点（図５のｔ２）を算出する。具体的には、ワークＷの押し込み時点ｔ３から遡り、モータトルクＴが押し込みモータトルクＴ３よりも予め定めた所定量α（図７参照）だけ減少した時点を接触開始時点として算出する。次いで、メモリに記憶されたエンコーダ１３ａ，２４ａからの信号により、接触開始時点における可動電極位置と、可動電極２１の接近移動停止時点における可動電極位置とをそれぞれ算出し、両者の差を補正量Δｄとして設定する。
【００３９】
ここで、所定量αは、予め実験的に求めてもよいが、可動電極２１の移動時の押し込み時点ｔ３における押し込みモータトルクＴ３と基準状態における基準トルクＴ２とに基づき求めてもよい。例えば、押し込みモータトルクＴ３と基準トルクＴ２との差ΔＴ１を所定量αとしてもよい。ΔＴ１に所定の割合（例えば０．５）を乗じたものを所定量αとしてもよい。
【００４０】
この場合、ワークＷの押し込み判定時（図５のｔ３）における可動電極位置と、可動電極２１の接近移動停止時（図５のｔ４）における可動電極位置（可動電極停止位置）とは、可動電極２１が減速停止する距離だけ異なる。したがって、ステップＳ８では、接触開始時点における可動電極位置と可動電極停止位置とをそれぞれ算出し、両者の差を補正量Δｄとして設定してもよい。このように可動電極２１の減速停止動作を考慮することにより、補正量Δｄの算出精度が向上する。なお、可動電極２１は短時間で減速停止するため、上述したように可動電極停止位置を用いて補正量Δｄを算出しても実質上は問題ない。
【００４１】
ステップＳ９では、可動電極停止位置と補正量Δｄとを用いてワーク位置を演算する。具体的には、可動電極停止位置を補正量Δｄ分だけ上方にずらした値、つまり可動電極２１がワーク表面に接した状態における可動電極位置を算出し、これをワーク上面のスポット溶接打点位置としてメモリに記憶する。また、このワーク上面のスポット溶接打点位置をワークＷの板厚ｔ０分だけずらした値を算出し、これをワーク下面のスポット溶接打点位置としてメモリに記憶する。この算出されたスポット溶接打点位置を用いて、作業プログラムが修正される。
【００４２】
なお、以上の処理によって検出されたスポット溶接打点位置と、予め作業プルグラム上に設定されたスポット溶接打点位置との差分を算出し、その差分を教示操作盤５の表示部５２やライン制御盤６の表示部６１等に表示するようにしてもよい。また、この差分が所定値以上の場合に、教示操作盤５やライン制御盤６を介してアラーム等をオペレータに報知するようにしてもよい。
【００４３】
以上により所定の溶接箇所におけるワーク位置検出処理が終了する。ワーク位置検出処理が終了すると、各電極２１，２２は制御装置３，４からの信号によりワーク表面から所定量Ｄｃ，Ｄｄだけ離間された位置に移動する。溶接箇所が複数ある場合には、各電極２１，２２は次の溶接箇所に移動し、同様の処理が実行される。なお、ワーク位置検出処理の電極２１，２２の移動を、オペレータの手動操作により行ってもよい。
【００４４】
本実施の形態の動作をまとめれば次のようになる。オペレータの操作によりワーク位置検出指令が入力されると、可動電極２１と対向電極２２はワーク表面から所定量Ｄａ，Ｄｂだけ離れた開放位置へ移動する（ステップＳ１）。その後、可動電極２１は所定速度ｖ１でワークＷに接近する（ステップＳ３）。図６（ａ）は、このときのモータトルクＴの変化を示す図である。可動電極２１の接近動作時におけるモータトルクＴの検出結果に基づいて、モータトルクＴがほぼ一定である基準トルクＴ２が設定され、モータトルクＴが基準トルクＴ２から所定量ΔＴ１以上増加すると、可動電極２１は接近動作を停止する（ステップＳ５、ステップＳ６）。
【００４５】
以上の可動電極２１の接近動作により得られたモータトルクＴの時系列データに基づき、可動電極２１がワーク表面に接触を開始した時点が算出される（ステップＳ８）。すなわち、図７（ａ）に示すように、可動電極２１がワークＷを押し込んだ時点ｔｐ（図６のｔ３）から遡り、モータトルクＴが所定量αだけ減少した時点ｔｃが接触開始時点として算出される。さらに、その接触開始時点における可動電極位置と、可動電極２１の停止時点における可動電極位置との差が演算され、可動電極２１の押し込み量に相当する位置検出補正量Δｄが設定される（ステップＳ８）。そして、可動電極２１の停止位置と位置検出補正量Δｄとに基づきワーク表面のスポット溶接打点位置が演算される（ステップＳ９）。
【００４６】
本実施の形態によれば以下のような作用効果を奏することができる。
（１）可動電極２１をワーク表面に接近移動させた際のモータトルクＴの時系列データに基づき、可動電極２１がワーク表面に接触を開始した時点を算出するとともに、可動電極２１のワーク表面への押し込み量に相当する位置検出補正量Δｄを算出し、可動電極２１の押し込み後の停止位置と位置検出補正量Δｄとに基づきワーク位置を算出するようにした。これにより可動電極２１がワーク表面に接触を開始してから停止するまでの可動電極２１の押し込み量を考慮してワーク位置を検出することができ、ワーク位置の検出精度が向上する。
【００４７】
（２）モータトルクＴに基づいて可動電極２１が所定の押し込み状態であるか否かを判定し、所定の押し込み状態であると判定されると可動電極２１の接近移動を停止するようにした。これによりワークＷの弾性変形の範囲内において可動電極２１をワーク表面に確実に押し込むことができ、可動電極２１の押し込み量に基づいた精度よいワーク位置の検出が可能である。
（３）可動電極２１の接近動作時におけるモータトルク一定の状態を基準状態とし、この基準状態における基準トルクＴ２よりもモータトルクＴが所定量ΔＴ１以上増加したときに、可動電極２１の接近移動を停止するようにしたので、可動電極２１の過大な押し込みを防止することができ、ワークＷの損傷を防ぐことができる。
（４）可動電極２１を所定速度ｖ１でワーク表面に接近させ、この定速移動時のモータトルクＴを基準トルクＴ２として設定するので、基準トルクＴ２を適切に設定することができ、可動電極２１の所定の押し込みを正確に判断できる。
（５）ワークＷの押し込み時点から遡り、モータトルクＴが所定量αだけ減少した時点を接触開始時点として算出するので、可動電極２１がワーク表面に接触した後にモータトルクＴが緩やかに変化する場合においても、接触開始時点を正確に求めることができ、ワーク位置の検出精度が高まる。
（６）スポット溶接用の作業プログラムを流用してワーク位置検出処理を行うようにしたので、各電極２１，２２を障害物２５等と干渉することなく所定の溶接位置に移動して、ワーク位置の検出の行うことができる。
【００４８】
なお、以上の制御装置３，４における処理（ステップＳ５）では、モータトルクＴが基準トルクＴ２よりも所定量ΔＴ１以上増加したときに、所定の押し込み状態になったと判定するようにした（図６（ａ））。しかしながら判定部としての処理はこれに限らず、例えば図６（ｂ）に示すようにモータトルクＴの単位時間当たりの増加の割合ΔＴ／Δｔが、基準状態におけるモータトルクＴの単位時間当たりの増加の割合ΔＴ０／Δｔよりも所定量以上増加したときに、所定の押し込み状態になったと判定してもよい。あるいは、基準状態におけるモータトルクＴの増加の割合ΔＴ０／Δｔがほぼ０であるとして、モータトルクＴの単位時間当たりの増加の割合ΔＴ／Δｔが所定値以上となったときに、所定の押し込み状態になったと判定してもよい。
【００４９】
基準状態におけるモータトルクＴ２を予め実験的に求めるようにしてもよい。基準トルクＴ２が既知である場合には、基準トルクＴ２を考慮して予め押し込み判定の閾値となるモータトルクＴａあるいはモータトルクＴの単位時間当たりの増加の割合ΔＴａ／Δｔを設定し、モータトルクＴが所定値Ｔａ以上となったとき、もしくはトルク増加の割合ΔＴ／Δｔが所定値ΔＴａ／Δｔ以上となったときに、所定の押し込み状態になったと判定してもよい。基準状態を全く考慮せずに、単にモータトルクＴが所定値以上となったとき、もしくはトルク増加の割合ΔＴ／Δｔが所定値以上となったときに、所定の押し込み状態になったと判定してもよい。
【００５０】
以上の実施の形態では、制御装置３，４における処理（ステップＳ８）により、ワークＷの押し込み時点ｔｐからから遡り、モータトルクＴが所定量αだけ減少した時点ｔｃを接触開始時点として算出した（図７（ａ））。しかしながら、接触開始時点の算出処理はこれに限らず、モータトルクＴの単位時間当たりの増加の割合ΔＴ／Δｔの変化に着目して接触開始時点を算出してもよい。例えば図７（ｂ）に示すように、押し込み時点ｔｐにおけるモータトルクＴの増加の割合ΔＴ／Δｔは正の値であるため、押し込み時点ｔｐから遡り、ΔＴ／Δｔが正から０または負になった時点ｔｃを接触開始時点として算出してもよい。
【００５１】
なお、上記実施の形態では、ワーク位置を検出するための一連の動作を制御装置３，４により自動で行うようにしたが、一部を手動で行うようにしてもよい。例えば可動電極２１の接近動作および停止動作を制御装置３，４からの信号により自動で行うようにしたが（ステップＳ３、ステップＳ６）、少なくともいずれか一方の動作を、オペレータがモータトルクＴの変化を監視しながらスイッチ装置等を操作することにより手動で行ってもよい。可動電極２１の押し込み状態をオペレータが監視して、可動電極２１がワーク表面に接触した後の所定の押し込み状態になったか否かをオペレータ自身が判断してもよい。したがって、サーボモータ１３，２４を制御する制御手段としての制御装置３，４の構成や、所定の押し込み状態の有無を判定する判定部としての制御装置３，４の構成を省略してもよい。
【００５２】
上記実施の形態では、接触開始時点における可動電極位置と接近移動停止時における可動電極位置との差から補正量Δｄを算出してワーク位置を検出するようにしたが、補正量Δｄを算出することなく、例えば予め実験的に求めた補正量Δｄを用いてワーク位置を検出するようにしてもよい。可動電極２１の停止時におけるワークＷの撓み量を目視や種々の計測装置等により計測し、補正量Δｄを求めるようにしてもよい。可動電極２１をワーク表面に向けて所定量移動した後に停止してワーク表面との接触状態を確認するという作業を繰り返し、可動電極２１の１回の移動量とその際のモータトルクＴの変化量とから補正量Δｄを求めるようにしてもよい。
【００５３】
上記実施の形態では、サーボモータ２４に出力される駆動電流に基づきモータトルクＴを検出したが、モータトルクＴと相関関係のある物理量であれば、トルク、電流、速度、加速度等、いかなるものを検出してもよく、物理量検出手段は上述したものに限らない。エンコーダ１３ａ，２４ａからの信号により電極２１，２２の位置を検出するようにしたが、位置検出手段はこれに限らない。サーボモータ２４へ出力される駆動電流およびエンコーダ１３ａ，２４ａからの信号を制御装置３，４内のメモリに記憶するようにしたが、記憶手段の構成はこれに限らず、制御装置３，４の外部の記憶装置に記憶するようにしてもよい。
【００５４】
上記実施の形態では、可動電極２１をワーク表面に接近移動させるようにしたが、可動電極２１の代わりに対向電極２２をワーク表面に接近移動させ、そのときの物理量の変化に基づき接触開始時点を算出するようにしてもよい。すなわち、サーボモータ１３によりロボット１を駆動して対向電極２２をワーク表面に接近および離間するとともに、サーボモータ１３のトルク変化に基づき接触開始時点を算出するようにしてもよい。
【００５５】
ロボット制御装置３と溶接ガン制御装置４のＣＰＵにより、図３のワーク位置検出処理を実行するようにしたが、ロボット制御装置３と溶接ガン制御装置４をまとめた一つの制御装置として構成してもよい。すなわち、ロボット制御装置３に溶接ガン制御装置４の機能を含めるようにしてもよく、演算手段の構成は上述したものに限らない。予め定めたスポット溶接用の作業プログラムを流用して電極２１，２２の位置を制御するようにしたが、作業プログラムとは無関係に電極２１，２２の位置を制御するようにしてもよい。
【００５６】
上記実施の形態では、モータトルクＴの時系列データに基づき接触開始時点を算出するとともに、この接触開始時点における可動電極位置と押し込み停止時における可動電極停止位置との差から位置検出補正量Δｄを算出し（ステップＳ８）、可動電極停止位置と補正量Δｄとに基づきワーク位置を演算するようにしたが（ステップＳ９）、補正量Δｄを算出することなくワーク位置を演算することもできる。例えば、メモリに記憶されたエンコーダ２４ａの検出値から接触開始時点における可動電極位置を直接求め、この可動電極位置に基づきワーク位置を演算することもできる。この場合、補正量Δｄを算出する必要がないため、制御装置３，４における処理を簡略化できる。すなわち、本発明は、モータトルクＴの時系列データに基づき可動電極２１の接触開始時点を算出するとともに、この接触開始時点における可動電極位置を求めることで、ワーク位置の検出精度を高める点を最大の特徴とするのであり、補正量Δｄを求めることは必ずしも必要でない。
【００５７】
以上をまとめると、可動電極２１と対向電極２２の間にワークＷを配置した状態で、可動電極２１または対向電極２２がワーク表面に当接するように可動電極２１または対向電極２２をワーク表面に接近移動させる手順と、可動電極２１または対向電極２２をワーク表面に接近移動させた際のモータトルクＴに基づき、可動電極２１または対向電極２２のワーク表面への接触開始時点を判断する手順と、可動電極２１または対向電極２２がワーク表面に接触を開始したと判断された時点における電極２１，２２の位置に基づき、ワーク位置を演算する手順とを含んでワーク表面位置を検出するのであれば、本発明による溶接ワーク位置検出方法は上述したものに限らない。
【００５８】
サーボモータ２４により接近および離間する一対の電極２１，２２を有するスポット溶接ガン２と、電極２１，２２間にワークＷを配置するように、スポット溶接ガン２とワークＷのいずれか一方をいずれか他方に対して相対移動可能に保持するロボット１とを有するのであれば、溶接ワーク位置検出装置を有するスポット溶接システムの全体構成は図１のものに限らない。例えば可動電極２１と対向電極２２の両方を、スポット溶接ガン２のフレーム２３ａに対し相対移動可能としてもよい。図８または図９に示すようにスポット溶接システムを構成してもよい。
【００５９】
図８は、スポット溶接ガン２を、開閉可能な一対のガンアーム２６ａ，２６ｂと、各ガンアーム２６ａ，２６ｂの先端部に取り付けられた可動電極２１および対向電極２２とを有する、いわゆるＸ型のスポット溶接ガンとして構成した例である。図９は、所定位置に設置されたガンスタンド１５によりスポット溶接ガン２を支持するとともに、ロボット１の先端部でロボットハンド１６を介してワークＷを保持するように構成した例であり、ロボット１の駆動によりスポット溶接ガン２に対しワークＷを相対移動させて、電極２１，２２間にワークＷを配置している。ガンスタンド１５を移動可能とすることもできる。すなわち、本発明の特徴、機能を実現できる限り、本発明は実施の形態の溶接ワーク位置検出装置に限定されない。
【符号の説明】
【００６０】
１    ロボット
２    スポット溶接ガン
３    ロボット制御装置
４    溶接ガン制御装置
５    教示操作盤
６    ライン制御盤
１３，２４    サーボモータ
１３ａ，２４ａ    エンコーダ
２１    可動電極
２２    対向電極
【図１】
2011152582.tif 000003
【図２】
2011152582.tif 000004
【図３】
2011152582.tif 000005
【図４】
2011152582.tif 000006
【図５】
2011152582.tif 000007
【図６】
2011152582.tif 000008
【図７】
2011152582.tif 000009
【図８】
2011152582.tif 000010
【図９】
2011152582.tif 000011