(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0024】
(実施の形態1)
図1から
図24を参照して、実施の形態1におけるスポット溶接システムについて説明する。
【0025】
図1に、本実施の形態における第1のスポット溶接システムの概略図を示す。
図2に、本実施の形態における第1のスポット溶接システムのブロック図を示す。
図1および
図2を参照して、スポット溶接システム10は、ロボット12と、スポット溶接ガン14とを備える。本実施の形態のロボット12は、複数の関節部を有する多関節ロボットである。スポット溶接システム10は、ロボット12およびスポット溶接ガン14を制御する制御装置15を備える。
【0026】
制御装置15は、ロボット12を制御するロボット制御装置16と、スポット溶接ガン14を制御する溶接ガン制御装置18とを含む。ロボット制御装置16および溶接ガン制御装置18は、バスを介して互いに接続されたCPU(Central Processing Unit)、RAM(Random Access Memory)、およびROM(Read Only Memory)等を有する演算処理装置により構成されている。ロボット制御装置16および溶接ガン制御装置18は、互いに通信可能に形成されている。制御装置としては、この形態に限られず、ロボット12およびスポット溶接ガン14を1つの装置にて制御するように形成されていても構わない。
【0027】
スポット溶接システム10は、ロボット12が駆動することにより、スポット溶接ガン14に対するワークWの位置を変更可能に形成されている。第1のスポット溶接システム10では、ワークWは、固定装置81に固定されて不動である。ロボット12がスポット溶接ガン14を移動することにより、スポット溶接ガン14に対するワークWの位置が変更される。
【0028】
本実施の形態のロボット12は、垂直多関節型である。ロボット12は、床面に設置される基台20と、鉛直方向に延びる軸線の周りに回転可能に形成された旋回台22とを備える。ロボット12は、旋回台22に支持されて回動可能な下部アーム24と、下部アーム24に支持されて回動可能な上部アーム26と、上部アーム26に回転可能に支持された手首部28とを含む。ロボット12は、旋回台22、下部アーム24、上部アーム26および手首部28を駆動するロボット駆動モータ29を含む。ロボット駆動モータ29が駆動することにより、ロボット12の位置および姿勢が変化する。
【0029】
なお、ロボットとしては、上記の形態に限られず、スポット溶接ガンとワークとの相対位置を変更することができる任意のロボットを採用することができる。また、複数のロボットが用いられていても構わない。
【0030】
スポット溶接ガン14は、可動電極30と可動電極30に対向して配置される対向電極32とから構成される一対の電極を含む。電極駆動モータ34が駆動することにより、可動電極30が対向電極32に接近したり、離れたりする。スポット溶接ガン14は、可動電極30と対向電極32との間に溶接ワークWを挟む。そして、スポット溶接ガン14は、可動電極30と対向電極32との間に電圧を印加することによりスポット溶接を行う。なお、本実施の形態の対向電極32は、固定された電極であるが、対向電極32は、可動電極30と同様に電極駆動モータによって移動可能に形成されていても構わない。
【0031】
本実施の形態のスポット溶接システムは、制御装置15に接続された教示操作盤42を備える。教示操作盤42は、ロボット12およびスポット溶接ガン14に関する情報を入力する入力部43を含む。作業者は、動作プログラムや判定値などを入力部43から制御装置15に入力することができる。入力部43は、キーボードやダイヤルなどにより構成されている。教示操作盤42は、ロボット12およびスポット溶接ガン14に関する情報を表示する表示部44を含む。
【0032】
ロボット制御装置16は、ロボット12の制御およびスポット溶接ガン14の制御に関する情報を記憶する記憶部52を含む。後述する動作プログラムや当接判定値は、記憶部52に記憶される。なお、溶接ガン制御装置18が記憶部を有していても構わない。
【0033】
ロボット制御装置16は、ロボット駆動モータ29を制御するロボット動作制御部53を含む。ロボット動作制御部53は、動作プログラムに基づく動作指令をロボット駆動回路54に送出する。ロボット駆動回路54は、動作指令に基づく電流をロボット駆動モータ29に供給する。
【0034】
ロボット12は、ロボット12の位置および姿勢を検出するためのロボット位置検出器56を含む。本実施の形態のロボット位置検出器56は、それぞれのロボット駆動モータ29に取り付けられた回転角検出器により構成されている。ロボット制御装置16は、ロボット位置検出器56から出力される回転位置に関する信号を受信する。ロボット制御装置16は、ロボット12の位置および姿勢に基づいて、スポット溶接ガン14の位置および姿勢を検出することができる。
【0035】
溶接ガン制御装置18は、電極駆動モータ34および電極に印加する電圧を制御する溶接ガン動作制御部62を含む。溶接ガン動作制御部62は、動作プログラムに基づく動作指令を電極駆動回路63および電圧供給回路64に送出する。電極駆動回路63は、動作指令に基づく電流を電極駆動モータ34に供給する。電圧供給回路64は、動作指令に基づく電圧を可動電極30および対向電極32に供給する。
【0036】
スポット溶接ガン14は、可動電極30の位置を検出するための電極位置検出器65を含む。本実施の形態の電極位置検出器65は、電極駆動モータ34に取り付けられた回転角検出器により構成されている。溶接ガン制御装置18は、電極位置検出器65の出力に基づいて可動電極30の位置を検出することができる。
【0037】
本実施の形態におけるスポット溶接システム10は、実際の溶接作業を行う前に、正確な位置にて溶接が行えるように、ワークWの位置を検出する位置検出制御を実施する。ワークWの位置を正確に検出して予め記憶部52に記憶しておくことにより、ワークWにおける正確な位置にて溶接を行うことができる。次に、本実施の形態における位置検出制御について説明する。本実施の形態における位置検出制御では、可動電極を駆動し、電極駆動モータの状態値が予め定められた範囲から逸脱したときの可動電極の位置に基づいてワークの位置を検出する。モータの状態値としては、電流、トルクおよび回転速度を例示することができる。
【0038】
図3に、本実施の形態におけるスポット溶接ガンとワークとの拡大概略図を示す。始めに、ロボット動作制御部53は、ロボット12を駆動する。ロボット12は、ワークWが可動電極30と対向電極32との間に配置されように、スポット溶接ガン14を移動する。次に、溶接ガン動作制御部62は、矢印95に示すように、可動電極30をワークWに向けて移動する。
【0039】
図4に、本実施の形態におけるスポット溶接ガンとワークとの他の拡大概略図を示す。可動電極30がワークWに向かって移動すると、可動電極30がワークWに当接する。制御装置15は、可動電極30がワークWに接触したことを検出する。
図2を参照して、ロボット制御装置16は、当接判定部55を含む。当接判定部55は、可動電極30がワークWに接触しているか否かを判定する。なお、当接判定部55は、溶接ガン制御装置18に含まれていても構わない。
【0040】
当接判定部55は、電極駆動モータ34の状態値に基づいて可動電極30の当接を判定する。電極駆動モータ34の状態値としては、電極駆動モータ34の電流、トルクまたは回転数を例示することができる。電極駆動モータ34の電流は、ロボット動作制御部53にから発信される動作指令から検出することができる。電極駆動モータ34のトルクは、電流から算出することができる。電極駆動モータ34の回転数は、電極駆動モータ34に取り付けられたエンコーダ等の回転角検出器にて検出することができる。始めに、電極駆動モータ34の電流を用いて、可動電極30がワークWに当接したことを判別する制御について説明する。
【0041】
図5は、可動電極がワークに向かって移動したときの電流の変化を説明するグラフである。可動電極30が移動することにより、時刻txにおいて可動電極30がワークWに当接している。本実施の形態においては、電極駆動モータ34のフィードバック制御を実施している。すなわち、電極駆動モータ34に取り付けられた回転角検出器の出力に基づいて、可動電極30の位置を検出する。そして、可動電極30の位置が溶接ガン動作制御部62から出力される動作指令の位置との差分が大きい場合に、電極駆動モータ34に供給する電流が増大される。このため、時刻txにおいて可動電極30がワークWに当接した後には、電流が上昇する。
【0042】
本実施の形態においては、時刻t1から時刻t2までの区間TBが予め定められている。区間TBは、可動電極30がワークWに接触する可能性のない区間である。当接判定部55は、区間TBにおいて電極駆動モータ34の電流を検出する。当接判定部55は、区間TBで検出した電流の平均値を基準電流IBに設定する。そして、当接判定部55は、時刻t2以降において、予め定められた時間間隔ごとに電極駆動モータ34の電流を検出する。当接判定部55は、基準電流IBと検出した電流Iとの差である電流の増加量IDを算出する。当接判定部55は、電流の増加量IDが電流の当接判定値よりも大きくなったときに、可動電極30がワークWに接触したと判定する。
図5に示す例では、時刻t3において、検出された電流の増加量IDが電流の当接判定値を超えている。当接判定部55は、時刻t3において、可動電極30がワークWに接触したと判定している。
【0043】
図6に、可動電極がワークに向かって移動したときの他の電流のグラフを示す。電極駆動モータ34の電流を用いて当接の判定を行う場合には、電流の増加率(単位時間あたりの電流の増加量)に基づいて判定を行うことができる。当接判定部55は、時刻t1から時刻t2までの区間TBにおいて、基準電流IBを検出する。当接判定部55は、時刻t2以降において、予め定められた時間間隔ごとに電流を検出する。そして検出した電流に基づいて、電流の増加率を算出する。
【0044】
例えば、当接判定部55は、時刻t4から時刻t5までの区間TMにおいて、電流の増加率を算出する。この時に、電流の増加量は、基準電流IBからの増加量を用いることができる。また、当接判定部55は、時刻t5から時刻t6までの区間TMにおいて、電流の増加率を算出する。
図6に示す例では、時刻t6において、電流の増加率が電流の増加率の当接判定値を超えている。このときの電流の増加率は、角度IADに対応する。当接判定部55は、時刻t6において可動電極30がワークWに当接したと判定している。
【0045】
電流の増加率の算出は、この形態に限られず、それぞれの区間TMにおける電流の最大値、最小値および区間TMの時間長さに基づいて、電流の増加率を算出しても構わない。
【0046】
ところで、電極駆動モータ34の電流は、電極駆動モータ34が出力するトルクに対応する。電極駆動モータ34のトルクは、電極駆動モータ34の電流に基づいて算出することができる。このために、電極駆動モータ34の状態値として、電極駆動モータ34のトルクを採用しても、電流の制御と同様の制御により可動電極30の当接を検出することができる。
【0047】
図7に、可動電極がワークに向かって移動したときの電極駆動モータの回転速度のグラフを示す。可動電極30のワークWへの接触は、電極駆動モータ34の回転速度に基づいて判定することができる。可動電極30がワークWに接触する時刻txまでは、回転速度がほぼ一定である。当接判定部55は、この一定の回転速度を基準回転速度V0に設定する。可動電極30がワークWに接触した時刻txよりも後では、回転速度が徐々に低下する。
【0048】
当接判定部55は、基準回転速度V0からの減少量VDが回転速度の当接判定値を超えた場合に、可動電極30がワークWに当接したと判別することができる。
図7に示す例では、時刻t7において、減少量VDが回転速度の当接判定値を超えている。当接判定部55は、時刻t7において、可動電極30がワークWに接触したと判別している。
【0049】
図8に、可動電極がワークに向かって移動したときの他の電極駆動モータの回転速度のグラフを示す。電極駆動モータの回転速度については、回転速度の低下率に基づいて可動電極30の当接の判定を行うことができる。回転速度の低下率は、単位時間当たりの回転速度の低下量である。当接判定部55は、予め定められた区間TMごとに回転速度の低下率を算出する。例えば、時刻t9から時刻t10において、回転速度の低下率は角度VADに相当する。ここでは、当接判定部55は、区間TMにおける回転速度の低下量と区間TMの時間長さとに基づいて回転速度の低下率を算出する。そして、当接判定部55は、回転速度の低下率の大きさ(回転速度の低下率の絶対値)が、回転速度の低下率の当接判定値を超えた時に、可動電極30がワークWに接触したと判定することができる。
【0050】
このように、本実施の形態の制御装置15は、電流、トルクまたは回転数のいずれかを含む電極駆動モータ34の状態値に基づいて、可動電極30がワーク5に接触したことを検出する。制御装置15は、電極駆動モータ34の状態値が予め定められた範囲から逸脱したときに、可動電極30がワークWに接触したと判定する。
【0051】
図2を参照して、当接判定部55は、可動電極30がワークWに当接した信号を、溶接ガン制御装置18に送出する。溶接ガン動作制御部62は、電極駆動モータ34を停止する指令を送出して可動電極30が停止する。
【0052】
ロボット制御装置16は、ワークWの位置を算出する位置算出部51を含む。位置算出部51は、ロボット位置検出器56の出力および電極位置検出器65の出力に基づいて、可動電極30がワークWに接触したときの可動電極30の位置を検出することができる。また、位置算出部51は、対向電極32とワークWの下側の表面との接触点の位置(ワークWの位置)を算出することができる。換言すると、位置算出部51は、ワークWの下側の表面の位置を検出することができる。ワークWの厚さは、予め記憶部52に記憶されている。位置算出部51は、ワークWの厚さに基づいて、ワークWの下側の表面の位置を算出することができる。このために、位置算出部51は、溶接を行うワークの正確な位置を算出することができる。
【0053】
制御装置15は、実際の溶接の作業を行う時に、検出したワークWの位置に基づいて、正確な位置にて溶接が行えるように、ロボット12の位置および姿勢を制御する。このために、スポット溶接ガン14は、正確な位置および姿勢に制御される。
【0054】
図2を参照して、本実施の形態の制御装置15は、動作プログラムに基づいて、ロボット12およびスポット溶接ガン14を駆動する。動作プログラムは、作業者が教示操作盤42の入力部43を操作することにより入力される。ロボット制御装置16の記憶部52は、動作プログラムを記憶する。本実施の形態の位置検出制御は、動作プログラムに基づいて実施される。
【0055】
ところで、本実施の形態の動作プログラムには、溶接作業の指令情報である溶接指令に加えて、位置検出制御を実施するためのパラメータが設定されている。本発明においては、位置検出制御を実施するためのパラメータをワーク検出パラメータと称する。位置検出制御は、ワーク検出パラメータに基づいて実施される。ワーク検出パラメータとしては、可動電極の移動速度、電極駆動モータの状態値に関する当接判定値を例示することができる。本実施の形態の動作プログラムでは、複数の打点が設定されている。ワーク検出パラメータは、それぞれの打点について個別に設定されている。すなわち、一つの打点には、その打点にて位置検出制御を実施するためのワーク検出パラメータが定められている。
【0056】
図9に、本実施の形態における溶接作業の第1の動作プログラムの一部分を示す。
図9では、動作プログラムのうち3つの打点における溶接を行う為の溶接指令が示されている。領域81には、打点の位置番号が指定されている。例えば、記号P[1]は、第1の打点であり、記号P[3]は第3の打点であり、記号P[2]は、第2の打点である。それぞれの位置番号に対応する座標値の情報は、例えば、動作プログラムの他の部分に記載されている。作業者は、教示操作盤を操作することにより、X軸、Y軸、およびZ軸等の各駆動軸における座標値を表示することができる。領域82には、打点に到達するまでのロボット12の移動速度とロボットの移動に関する指令が示されている。領域83には、実際に溶接を行う時の溶接に関する指令が示されている。
【0057】
ここで、領域84には、位置検出制御における可動電極30の移動速度が記載されている。例えば、記号P[1]の打点の位置検出制御を実施する時には、可動電極30の移動速度の変数TSは25である。記号P[2]の打点の位置検出制御を実施する時には、可動電極30の移動速度の変数TSは35である。このように、打点ごとに可動電極の移動速度が設定されている。
【0058】
本実施の形態の制御装置には、ワークの位置を検出する位置検出制御を実施する位置検出モードと、実際に溶接作業を行う溶接作業モードとが定められている。作業者は、位置検出モードまたは溶接作業モードを選択する。そして、位置検出モードでは、制御装置15は、領域84の指令を読み込んで位置検出制御を実施する。これに対して、実際の溶接作業を行う溶接モードでは、制御装置15は、領域84の指令を読み込まないで溶接作業を行う制御を実施する。
【0059】
本実施の形態では、動作プログラムにおいて、それぞれの打点ごとに可動電極30の移動速度が設定されている。このような可動電極30の移動速度は、作業者が入力部43に入力することができる。このために、溶接を行うときのワークWの剛性が大きくなる打点では、可動電極30の移動速度を大きく設定することができる。例えば、固定装置81がワークWを保持している位置と打点までの距離が短く、ワークWの剛性が高くなる場合には、可動電極30の移動速度を大きく設定することができる。また、硬い材質の部分を溶接する場合には、可動電極30の移動速度を大きく設定することができる。この結果、位置検出制御の時間を短くすることができる。
【0060】
一方で、ワークWの剛性が低くなる打点では、可動電極30の移動速度を遅くすることができる。可動電極30の移動速度が速いためにワークの位置の検出精度が悪化することを抑制することができる。
【0061】
このように、本実施の形態では、打点ごとに最適な条件でワークの位置を検出する位置検出制御を実施することができる。また、ワーク検出パラメータは、動作プログラムにおいて、複数の打点の溶接指令に関連づけられている。特に、ワーク検出パラメータは、それぞれの打点の溶接指令に含まれている。この構成を採用することにより、作業者は打点の位置を確認しながら容易にワーク検出パラメータを設定することができる。また、作業者は、動作プログラムを用いてワーク検出パラメータを確認および変更することができる。
【0062】
図10に、本実施の形態における溶接作業の第2の動作プログラムの一部分を示す。
図11に、本実施の形態における溶接作業の第2の動作プログラムの他の一部分を示す。第2の動作プログラムでは、領域85に可動電極30の移動速度が設定されておらずに、可動電極の移動速度に関する指令が記載されている。領域85に設定されている指令は、電極の移動速度に関する数字にて記載されている。なお、本実施の形態では、数字にて指定されているが、この形態に限られず、「A」、「B」等の記号を用いても構わない。
【0063】
図11を参照して、動作プログラムの異なる部分には、それぞれの打点のワーク検出パラメータを設定するための設定情報の対応表75が設定されている。この設定情報には、ワーク検出パラメータが設定されている。対応表75においては、領域85にて指定される番号が領域86に記載され、番号に対応する可動電極の移動速度が領域87に設定されている。例えば、記号P[1]の打点では、領域85において記号DSが1に指定されており、対応表75を参照すると、可動電極の移動速度は25に設定される。
【0064】
本実施の形態の第2の動作プログラムでは、溶接指令には可動電極の移動速度に関する番号または記号が指定され、動作プログラムの他の部分に、記号または数字に対応するワーク検出パラメータが設定されている。この構成により、動作プログラムにおけるデータの管理が容易になる。また、作業者は、動作プログラムを読みやすくなる。
【0065】
なお、本実施の形態では、溶接作業の動作プログラムに位置検出制御のためのワーク検出パラメータが記載されているが、この形態に限られず、溶接作業の動作プログラムとは異なる位置検出制御のための動作プログラムを予め作成しても構わない。位置検出制御のための動作プログラムでは、それぞれの打点ごとにワーク検出パラメータを設定するように作成することができる。そして、位置検出制御を実施した後には、位置検出制御の結果を溶接作業の動作プログラムに反映することができる。
【0066】
図12に、本実施の形態における第1の位置検出制御のフローチャートを示す。第1の位置検出制御では、打点ごとに可動電極の移動速度を設定することができる。なお、可動電極の移動速度は、電極駆動モータの回転速度に相当する。
図12に示す制御は、それぞれの打点ごとに行うことができる。
図1、
図2および
図12を参照して、記憶部52には、予め定められ動作プログラムが記憶されている。動作プログラムには、
図9から
図11に示すように、可動電極の移動速度の情報が含まれている。
【0067】
ステップ110において、ロボット12は、可動電極30と対向電極32との間にワークを配置する。この時のワークの位置は、予め定められた位置であり、おおまかな位置で構わない。ワークが可動電極30および対向電極32に接触しない位置が選定される。
【0068】
ステップ111において、溶接ガン動作制御部62は、動作プログラムから可動電極の移動速度を取得する。そして、ステップ112において、溶接ガン動作制御部62は、電極駆動モータ34を駆動して可動電極30の移動を開始する。この時に、溶接ガン動作制御部62は、動作プログラムから取得した移動速度にて可動電極30を移動する。
【0069】
ステップ113において、当接判定部55は、電極駆動モータ34の状態値が当接判定値を超えているか否かを判別する。例えば、電極駆動モータ34の電流を検出している場合には、電流の増加量が当接判定値を超えているか否かを判別する。ここでの当接判定値は、作業者により予め設定された複数の打点に共通の値を採用することができる。ステップ113において、電極駆動モータの状態値が当接判定値以下である場合には可動電極30の移動を継続する。そして、電極駆動モータの状態値か当接判定値を超えた場合には、ステップ114に移行する。
【0070】
ステップ114において、溶接ガン動作制御部62は、可動電極30を停止する。ステップ115において、位置算出部51は、ロボット位置検出器56の出力に基づいて、ロボット12の位置および姿勢を検出する。また、位置算出部51は、電極位置検出器65の出力に基づいて、可動電極30の位置を検出する。
【0071】
次に、ステップ116において、位置算出部51は、ロボット12の位置および姿勢および可動電極30の位置に基づいて、ワークWの位置を算出する。このように、ワークWの正確な位置を検出することができる。
【0072】
ワーク検出パラメータとしては、可動電極の移動速度に限られず、位置検出制御を実施するための任意のパラメータを採用することができる。次に、ワーク検出パラメータとして、当接判定値について説明する。
【0073】
図13に、本実施の形態における溶接作業の第3の動作プログラムの一部分を示す。領域83には、実際に溶接を行う時の溶接に関する溶接指令が記載されている。そして、動作プログラムの領域88には、ワーク検出パラメータとしての当接判定値が示されている。当接判定値は、それぞれの打点ごとに記載されている。
【0074】
当接判定値は、判別を行う電極駆動モータの状態値に応じた値が設定されている。当接判定部55が可動電極30の当接を電極駆動モータ34の電流で判断する場合には、領域88には、電流の当接判定値が設定される。また、当接判定部55が可動電極の接触を電極駆動モータ34の回転速度で判断する場合には、領域88に回転速度の判定値が設定される。
図13に示す例では、記号P[1]にて示される打点の当接判定値は30に設定され、記号P[3]にて示される打点の当接判定値は20に設定されている。
【0075】
図14に、本実施の形態における溶接作業の第4の動作プログラムの一部分を示す。
図15に、本実施の形態における溶接作業の第4の動作プログラムの他の一部分を示す。ワーク検出パラメータとして当接判定値を採用する場合にも、動作プログラムは、それぞれの打点の溶接指令と、それぞれの打点のワーク検出パラメータを設定するための設定情報とを含むことができる。この設定情報は、対応表76にて設定されている。
【0076】
図14および
図15に示す例では、領域89に当接判定値を示す数字が設定される。領域86の番号は、領域89において指定される番号に対応する。そして、
図15に示す対応表76に基づいて当接判定値が指定される。領域90には、それぞれの番号に対応する当接判定値が設定されている。例えば、記号P[1]の打点においては、変数DTが1に設定されている。そして、対応表76を参照して、記号P[1]の打点の当接判定値は、30に設定される。
【0077】
図16に、本実施の形態の第2の位置検出制御のフローチャートを示す。第2の位置検出制御では、打点ごとに当接判定値を設定することができる。
【0078】
ステップ110において、ロボット12は、可動電極30と対向電極32との間にワークWを配置する。ステップ121において、当接判定部55は、打点ごとの溶接指令から当接判定値を取得する。ステップ122においては、予め定められた移動速度を用いて可動電極の移動を開始する。このときの可動電極30の移動速度としては、複数の打点に共通の移動速度を用いることができる。
【0079】
そして、ステップ113においては、動作プログラムから取得した当接判定値に基づいて、電極駆動モータ34の状態値の判定を行う。その後のステップ114以降の制御は、第1の位置検出制御と同様である(
図12参照)。
【0080】
電極駆動モータの電流またはトルクには、定常状態であっても揺らぎが生じる。電流またはトルクの揺らぎが小さい場合には、閾値を小さくして短時間で位置検出制御を実施することができる。一方で、電流やトルクの揺らぎが大きい場合には、当接判定値を小さくすると、実際には可動電極がワークに接触していないのに、電極駆動モータの状態値が予め定められた範囲を逸脱したと判断する虞がある。このために、電流やトルクの揺らぎが大きい場合には、当接判定値を大きくして、誤った判定を抑制することができる。本実施の形態では、打点ごとに当接判定値を設定できるために、打点ごとに最適な位置検出制御を実施することができる。
【0081】
上記の停止位置制御では、動作プログラムの一つの溶接指令に一つのワーク検出パラメータを記載しているが、この形態に限られず、一つの溶接指令には、複数のワーク検出パラメータを設定することができる。
【0082】
図17に、本実施の形態における溶接作業の第5の動作プログラムの一部分を示す。第5の動作プログラムでは、領域91には、ワーク検出パラメータとして、可動電極の移動速度を示す変数TSおよび当接判定値を示す変数TTの両方が記載されている。制御装置15は、可動電極の移動速度および当接判定値を読み込んで、位置検出制御を実施することができる。
【0083】
図18に、本実施の形態における溶接作業の第6の動作プログラムの一部分を示す。
図19に、本実施の形態における溶接作業の第6の動作プログラムの他の一部分を示す。ワーク検出パラメータとして可動電極の移動速度および当接判定値を採用する場合にも、動作プログラムは、それぞれの打点の溶接指令と、それぞれの打点のワーク検出パラメータを設定するための設定情報とを含むことができる。設定情報は、ワーク検出パラメータを含む対応表77にて設定することができる。
【0084】
領域92では、可動電極の移動速度および当接判定値に関する数字が設定されている。対応表77の領域86の番号は、領域92にて指定される番号に対応する。領域87には、可動電極30の移動速度が設定されている。また、領域90には、当接判定値が設定されている。このように、一つの溶接指令の中に可動電極の移動速度および当接判定値を一度に指定することができる。
【0085】
図20に、動作プログラムか可動電極の移動速度および当接判定値の両方を取得する第3の位置検出制御のフローチャートを示す。ステップ110において、ロボット12は、可動電極30と対向電極32との間にワークを配置する。
【0086】
ステップ131において、溶接ガン動作制御部62は、動作プログラムの溶接作業の指令から可動電極30の移動速度を取得する。当接判定部55は、動作プログラムの溶接作業の指令から当接判定値を取得する。
【0087】
ステップ132において、溶接ガン動作制御部62は、取得した可動電極の移動速度に基づいて可動電極30の移動を開始する。可動電極30の移動速度は、動作プログラムにより指定されている速度になる。
【0088】
ステップ113において、当接判定部55は、電極駆動モータの状態値が動作プログラムから取得した当接判定値を超えているか否かを判別する。この後のステップ114からステップ116の制御は、第1の位置検出制御と同様である(
図12参照)。
【0089】
このように、本実施の形態におけるスポット溶接システムは、複数の打点のそれぞれについて、可動電極の移動速度および当接判定値等のワーク検出パラメータを設定することができる。すなわち、1つの打点には、その打点にて位置検出制御を実施するためのワーク検出パラメータが設定されている。このために、スポット溶接システムは、位置検出制御の時間を短くしたり、誤った判定を抑制したりすることができる。また、スポット溶接システムは、ワークの位置の検出精度の悪化を抑制することができる。ここで、それぞれの打点にワーク検出パラメータを設定する動作プログラムの記載方法について説明する。動作プログラムの記載方法は、打点ごとにワーク検出パラメータが設定される任意の記載方法を採用することができる。
【0090】
図21は、本実施の形態の動作プログラムの第1の記載方法を説明する動作プログラムの一部分である。前述の動作プログラムにおいては、溶接指令にワーク検出パラメータが含まれていた。これに対して、
図21では、ワーク検出パラメータが溶接指令に含まれない場合を示している。領域83には、実際に溶接を行う時の溶接に関する溶接指令が記載されている。そして、領域83から外れた領域93に、可動電極30の移動速度の変数TSが設定されている。このように、それぞれの打点についてワーク検出パラメータが設定されていても構わない。
【0091】
図22は、本実施の形態の動作プログラムの第2の記載方法を説明する動作プログラムの一部分である。この動作プログラムでは、それぞれの打点に関する行の前にワーク検出パラメータを単独命令として記載している。
図22に示す例では、記号P[1]の打点の位置検出制御を実施する時には、可動電極の移動速度の変数TSは25である。記号P[3]の打点の位置検出制御を実施する時には、可動電極の移動速度の変数TSは45である。
【0092】
図23は、本実施の形態の動作プログラムの第3の記載方法を説明する動作プログラムの一部分である。この動作プログラムでは、複数の打点に対して1つのワーク検出パラメータを記載している。この1つのワーク検出パラメータが、複数の打点のそれぞれについて設定される。記号P[1]の打点の位置検出制御を実施する時には、変数TSは25である。また、記号P[3]の打点の位置検出制御を実施する時には、変数TSは25である。そして、記号P[2]の打点の位置検出制御を実施する時には、変数TSは35である。このように、ワーク検出パラメータが同じである場合には、複数の打点に対してまとめてワーク検出パラメータを設定しても構わない。なお、
図21から
図23に示す記載方法では、ワーク検出パラメータは、溶接指令に含まれていないが、打点の溶接指定に関連付けられて設定されている。
【0093】
次に、
図1を参照して、上記の実施の形態においては、スポット溶接ガン14がロボット12に保持されているが、この形態に限られず、ロボットはワークに対してスポット溶接ガンの相対位置を変更可能なように用いることができる。
【0094】
図24に、本実施の形態における第2のスポット溶接システムの概略図を示す。第2のスポット溶接システム11では、スポット溶接ガン14が、固定装置としてのスタンド35に固定されている。ロボット12の手首部28には、ハンド38が取り付けられている。ハンド38は、ワークWを把持することができるように形成されている。本実施の形態のハンド38は、ロボット動作制御部53に制御されている。ロボット12を駆動することにより、ワークWの位置および姿勢が変化する。
【0095】
このように、ロボット12にてスポット溶接ガン14を移動する代わりにワークWを移動させても構わない。第2のスポット溶接システム11においては、始めにロボット12を駆動することにより、可動電極30と対向電極32との間にワークWを配置する。この後の制御は、前述の第1のスポット溶接システム10の制御と同様である。
【0096】
(実施の形態2)
図25から
図27を参照して、実施の形態2におけるスポット溶接システムについて説明する。本実施の形態のスポット溶接システムの構造は、実施の形態1における第1のスポット溶接システム(
図1および
図2参照)と同様である。
【0097】
本実施の形態の位置検出制御では、スポット溶接ガン14の可動電極30を駆動せずに、ロボット12を駆動することにより対向電極32をワーク5に接触させる。例えば、スポット溶接ガンが大型であると、可動電極がワークに接触する時にスポット溶接ガンが撓んで正確なワークの位置を検出できない場合がある。本実施の形態の位置検出制御は、このような場合に好適である。
【0098】
図25に、本実施の形態におけるスポット溶接ガンおよびワークの拡大概略図を示す。ロボット12を駆動することにより、可動電極30と対向電極32との間に、ワークWを配置する。次に、矢印96に示すように、ロボット12を駆動することにより、スポット溶接ガン14全体を移動する。この例では、ロボット12は、上側に向かってスポット溶接ガン14を移動する。
【0099】
図26に、本実施の形態におけるスポット溶接ガンおよびワークの他の拡大概略図を示す。スポット溶接ガン14を移動すると、対向電極32がワークWに当接する。制御装置15は、対向電極32がワークWに接触したことを検出する。
【0100】
対向電極32がワークWに接触したことを判定する時には、実施の形態1の電極駆動モータの状態値の代わりにロボット駆動モータの状態値を検出する。当接判定部55は、ロボット12を駆動するロボット駆動モータ29の電流、トルク、または回転速度に基づいて対向電極32の当接を判定することができる。この時の電流、トルク、または回転速度による判定の制御は、実施の形態1と同様である。例えば、基準電流値からの電流の増加量や、電流の増加率に基づいて、対向電極32がワークWに接触したことを判定することができる。
【0101】
図27に、本実施の形態の位置検出制御のフローチャートを示す。
図27に示す例では、動作プログラムの溶接指令に対向電極の移動速度が設定されている。すなわち、動作プログラムには、打点ごとに対向電極の移動速度が設定されている。
【0102】
ステップ110において、ロボット動作制御部53は、可動電極30と対向電極32との間にワークWが配置されるように、ロボット12を駆動する。
【0103】
ステップ141において、ロボット動作制御部53は、動作プログラムの溶接指令から対向電極32の移動速度を取得する。
【0104】
ステップ143において、ロボット動作制御部53は、対向電極32の移動速度にてロボット12の駆動を開始する。ロボット12を駆動することにより、スポット溶接ガン14の全体が移動する。対向電極32がワークWに向かって移動する。
【0105】
次に、ステップ144において、当接判定部55は、ロボット駆動モータ29の状態値が予め定められた当接判定値よりも大きいか否かを判別する。ステップ144において、ロボット駆動モータ29の状態値が予め設定された当接判定値以下である場合には、ロボット12の駆動を継続する。そして、ロボット駆動モータ29の状態値が当接判定値よりも大きい場合には、ステップ145に移行する。
【0106】
ステップ145において、ロボット動作制御部53は、ロボット12の駆動を停止する。ステップ146において、位置算出部51は、ロボット位置検出器56の出力に基づいて、ロボットの位置および姿勢を検出する。ステップ147において、位置算出部51は、ロボット12の位置および姿勢に基づいて対向電極32の位置を検出する。そして、位置算出部51は、対向電極32の位置に基づいてワークの12を算出することができる。
【0107】
本実施の形態の上記の例では、位置検出制御にて打点ごとに設定するワーク検出パラメータとして対向電極の移動速度を例示している。ワーク検出パラメータは、この形態に限られず、実施の形態1と同様に当接判定値を用いることができる。または、ロボットの移動速度と当接判定値との両方を採用することができる。更に、ワーク検出パラメータとしては、対向電極の移動速度に限られず、ロボットの移動速度や可動電極の移動速度が用いられていても構わない。
【0108】
その他の構成、作用および効果については、実施の形態1と同様であるので、ここでは説明を繰り返さない。
【0109】
(実施の形態3)
図28から
図32を参照して、実施の形態3におけるスポット溶接システムについて説明する。本実施の形態のスポット溶接システムは、動作プログラムに設定されているワーク検出パラメータを適切な値に更新する。
【0110】
図28は、本実施の形態におけるスポット溶接システムのブロック図である。本実施の形態のロボット制御装置16は、ワーク検出パラメータが大きいか否かを判定する演算部57と、動作プログラムに設定されているワーク検出パラメータを更新する更新部58とを含む。その他の構成は、実施の形態1における第1のスポット溶接システムと同様である(
図1および
図2参照)。はじめに、電極駆動モータの移動速度の更新について説明する。
【0111】
図29に、ロボット制御装置の演算部のブロック図を示す。演算部57は、可動電極30がワーク5の表面に当接した時の電極駆動モータ34の状態値に基づいて可動電極の移動速度を判定する電極移動速度判定部57aを有する。電極移動速度判定部57aは、打点ごとにワークWの剛性の大きさに応じて可動電極30の移動速度を判定する。
【0112】
図30に、更新部のブロック図を示す。更新部58は、動作プログラムに設定されている可動電極30の移動速度を更新する電極移動速度更新部58aを有する。
【0113】
図31に、可動電極の移動速度を更新する制御のフローチャートを示す。ステップ151において、電極移動速度判定部57aは、それぞれの打点ごとにワークWの剛性を推定する。例えば、ワークWを固定する位置と打点の位置とが近い場合には、ワーク5の剛性が大きくなる。この工程では、電極移動速度判定部57aは、ワークの剛性として、ワークの剛性に対応する変数を算出することができる。本実施の形態の電極移動速度判定部57aは、電極駆動モータ34を駆動する場合の電流の増加率(
図6参照)を剛性として算出する。ワークWの剛性が大きい場合には、電極駆動モータ34の電流の増加率は大きくなる。
【0114】
次に、ステップ152において、電極移動速度判定部57aは、ワークWの剛性が予め定められた低剛性判定値未満であるか否かを判別する。この工程では、剛性が非常に小さいか否かが判別される。本実施の形態では、電流の増加率が、電流の増加率に関する低剛性判定値よりも低いか否かを判別する。低剛性判定値は、予め定めておくことができる。ステップ152において、ワークWの剛性が低剛性判定値よりも小さい場合には、ステップ153に移行する。
【0115】
ステップ153において、更新部58の電極移動速度更新部58aは、動作プログラムに設定されている可動電極の移動速度を小さくする制御を行う。例えば、
図9を参照して、電極移動速度更新部58aは、領域84に記載されている可動電極の移動速度を予め定められた低い値に設定することができる。または、電極移動速度更新部58aは、領域84に記載されている可動電極の移動速度から予め定められた値を減算する制御を行っても構わない。ステップ152において、ワークWの剛性が低剛性判定値以上の場合には、ステップ154に移行する。
【0116】
ステップ154においては、演算部57にて演算されたワークの剛性が高剛性判定値よりも大きいか否かを判別する。ここでは、剛性が非常に大きいか否かを判別する。高剛性判定値は、予め定めておくことができる。本実施の形態では、電流の増加率が、電流の増加率に関する高剛性判定値よりも大きいか否かを判別する。ステップ154において、ワークWの剛性が高剛性判定値よりも大きくなる場合には、ステップ155に移行する。
【0117】
ステップ155において、電極移動速度更新部58aは、動作プログラムに設定された可動電極30の移動速度を大きくする制御を行う。例えば、電極移動速度更新部58aは、
図9の領域84に設定されている可動電極の移動速度を予め定められた高い移動速度に変更する制御を実施することができる。または、電極移動速度更新部58aは、領域84に設定されている可動電極の移動速度に予め定められた値を加算する制御を行うことができる。
【0118】
ステップ154において、ワークの剛性が高剛性判定値以下である場合には、ワークの剛性は、大きすぎることがなく、更に小さすぎることもないと判定することができる。この場合には、可動電極の移動速度を更新する制御を終了する。
【0119】
このように、本実施の形態においては、ワークWの剛性に基づいて可動電極の移動速度を更新することができる。このため、自動的に最適な可動電極の移動速度に変更することができる。また、本実施の形態におけるワーク検出パラメータの更新も打点ごとに行うために、打点ごとに最適なワーク検出パラメータに更新することができる。
【0120】
なお、ワークの剛性に対応する変数としては、電極駆動モータの電流の増加率に限られず、ワークの剛性に対応する任意の変数を用いることができる。例えば、電極駆動モータの回転速度の低下率を採用することができる。
【0121】
次に、動作プログラムに記載されている当接判定値を更新する制御について説明する。
図29を参照して、本実施の形態の演算部57は、可動電極30がワークWの表面に当接した時の電極駆動モータ34の状態値に基づいて当接判定値を判定する当接判定値判定部57bを含む。
図30を参照して、更新部58は、動作プログラムに含まれる当接判定値を更新する当接判定値更新部58bを含む。
【0122】
図32に、本実施の形態における当接判定値の更新の制御のフローチャートを示す。ステップ161において、当接判定値判定部57bは、電流の揺らぎの大きさを算出する。電流の揺らぎは、電流の変動幅に相当する。
図5を参照して、電流の揺らぎの大きさは、例えば、時刻t1から時刻t2における区間TBにおける最大値からから最小値を減算することにより算出することができる。
【0123】
図32を参照して、次に、ステップ162において、当接判定値判定部57bは、電流の揺らぎの大きさが予め定められた低揺らぎ判定値よりも小さいか否かを判別する。低揺らぎ判定値は、予め定めておくことができる。ステップ162において、揺らぎの大きさが低揺らぎ判定値よりも小さい場合には、ステップ163に移行する。この場合には、揺らぎが非常に小さいと判別することができる。
【0124】
ステップ163において、当接判定値更新部58bは、動作プログラムに設定されている当接判定値を小さくする制御を実施する。すなわち、当接判定値更新部58bは、判定を行う許容範囲を狭くする制御を実施する。当接判定値が電極駆動モータの電流の増加量で設定されている場合には、設定されている電流の増加量の判定値を小さくする制御を実施する。例えば、当接判定値更新部58bは、予め定められた値まで当接判定値を小さくする制御を実施する。または、当接判定値更新部58bは、動作プログラムに設定されている現在の当接判定値から予め定められた値を減算した当接判定値に更新する制御を行うことができる。ステップ162において、揺らぎの大きさが、低揺らぎ判定値以上である場合には、ステップ164に移行する。
【0125】
ステップ164において、当接判定値判定部57bは、揺らぎの大きさが予め定められた高揺らぎ判定値よりも大きいか否かを判別する。高揺らぎ判定値は、予め定めておくことができる。ステップ164において、揺らぎの大きさが高揺らぎ判定値よりも大きい場合には、ステップ165に移行する。
【0126】
ステップ165においては、当接判定値更新部58bは、動作プログラムに設定されている当接判定値を大きくする制御を実施する。すなわち、当接判定値更新部58bは、判定を行う許容範囲を大きくする制御を実施する。例えば、当接判定値更新部58bは、当接判定値を予め定められた値まで大きくする制御を行う。または、当接判定値更新部58bは、動作プログラムに設定されている現在の当接判定値から予め定められた値を加算した当接判定値に更新する制御を行うことができる。
【0127】
ステップ164において、揺らぎの大きさが高揺らぎ判定値以下である場合には、揺らぎの大きさは、大きすぎることがなく、更に小さすぎることもないと判定することができる。この場合には、当接判定値を更新する制御を終了する。
【0128】
本実施の形態の可動電極の移動速度および当接判定値を更新する制御は、同時に行うことができる。また、実施の形態2に記載のように、可動電極の代わりにロボットを駆動する場合には、電極駆動モータの状態値および当接判定値の代わりにロボット駆動モータの状態値および当接判定値を用いることができる。
【0129】
その他の構成、作用および効果については、実施の形態1および2と同様であるので、ここでは説明を繰り返さない。
【0130】
上述のそれぞれの制御においては、機能および作用が変更されない範囲において適宜ステップの順序を変更することができる。また、上記の実施の形態は、適宜組み合わせることができる。
【0131】
上述のそれぞれの図において、同一または相等する部分には同一の符号を付している。なお、上記の実施の形態は例示であり発明を限定するものではない。また、実施の形態においては、特許請求の範囲に示される実施の形態の変更が含まれている。