(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-01-05
(45)【発行日】2024-01-16
(54)【発明の名称】レーザ加工のための教示システムおよび教示方法
(51)【国際特許分類】
B25J 9/22 20060101AFI20240109BHJP
G05B 19/42 20060101ALI20240109BHJP
B23K 26/044 20140101ALI20240109BHJP
B23K 26/00 20140101ALI20240109BHJP
【FI】
B25J9/22 A
G05B19/42 H
B23K26/044
B23K26/00 M
(21)【出願番号】P 2022521890
(86)(22)【出願日】2021-05-10
(86)【国際出願番号】 JP2021017629
(87)【国際公開番号】W WO2021230178
(87)【国際公開日】2021-11-18
【審査請求日】2022-12-19
(31)【優先権主張番号】P 2020085796
(32)【優先日】2020-05-15
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】390008235
【氏名又は名称】ファナック株式会社
(74)【代理人】
【識別番号】100118913
【氏名又は名称】上田 邦生
(74)【代理人】
【識別番号】100142789
【氏名又は名称】柳 順一郎
(74)【代理人】
【識別番号】100201466
【氏名又は名称】竹内 邦彦
(72)【発明者】
【氏名】鈴木 洋平
【審査官】樋口 幸太郎
(56)【参考文献】
【文献】特開2020-32456(JP,A)
【文献】特開2020-35404(JP,A)
【文献】特開2020-19024(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 9/22
G05B 19/42
B23K 26/044
B23K 26/00
(57)【特許請求の範囲】
【請求項1】
レーザ光を射出する加工ヘッドを装着したロボットの動作および前記加工ヘッドの動作を教示するレーザ加工のための教示システムであって、
加工対象物表面から前記加工ヘッドに戻る前記レーザ光の反射光の強度を検出するセンサと、
少なくとも1つのプロセッサとを備え、
該プロセッサが、
各加工点における前記加工対象物表面の法線と前記加工ヘッドから射出される前記レーザ光とのなす角度からなる照射角度の最小値および最大値と、前記加工点の座標とを与えて、前記最小値以上前記最大値未満の前記照射角度の前記レーザ光により、全ての前記加工点をレーザ加工可能な教示データを生成し、
前記照射角度を前記最小値としたときの前記反射光の強度が許容値以下となる強度に設定された前記レーザ光を用いて、前記ロボットの制御装置に前記教示データを含む動作プログラムを実行させたときに、全ての前記加工点において前記センサにより検出された前記反射光の強度に所定の閾値を超えるものが存在するか否かを判定し、
前記閾値を超える強度の前記反射光があると判定された場合に、該当する前記加工点における前記最小値を所定の増分だけ増大させるよう調整し、
前記閾値を超える強度の前記反射光がないと判定されるまで、直近の調整後の前記最小値を用いた前記教示データの生成、判定および前記最小値の調整を繰り返す教示システム。
【請求項2】
最初の前記教示データが、前記最小値をゼロに設定して生成されたものである請求項1に記載の教示システム。
【請求項3】
最初の前記教示データが、前記最小値をゼロ以外の値に設定して生成されたものである請求項1に記載の教示システム。
【請求項4】
レーザ光を射出する加工ヘッドを装着したロボットの動作および前記加工ヘッドの動作を教示するレーザ加工のための教示方法であって、
各加工点における加工対象物表面の法線と前記加工ヘッドから射出される前記レーザ光とのなす角度からなる照射角度の最小値および最大値と、前記加工点の座標とを与えて、前記最小値以上前記最大値未満の前記照射角度の前記レーザ光により、全ての前記加工点をレーザ加工可能な教示データを生成し、
前記照射角度を前記最小値としたときの前記加工対象物表面から前記加工ヘッドに戻る前記レーザ光の反射光の強度が許容値以下となる強度に設定された前記レーザ光を用いて、前記ロボットの制御装置に前記教示データを含む動作プログラムを実行させたときに、全ての前記加工点において、前記加工対象物表面から前記加工ヘッドに戻る前記レーザ光の反射光の強度に所定の閾値を超えるものが存在するか否かを判定し、
前記閾値を超える強度の前記反射光があると判定された場合に、該当する加工点における前記最小値を所定の増分だけ増大させるよう調整し、
前記閾値を超える強度の前記反射光がないと判定されるまで、直近の調整後の前記最小値を用いた前記教示データの生成、判定および前記最小値の調整を繰り返す教示方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、レーザ加工のための教示システムおよび教示方法に関するものである。
【背景技術】
【0002】
ロボットのアーム先端にガルバノスキャナを備える加工ヘッドを搭載してワークに対する溶接等の加工を行うレーザ加工システムにおいて、教示データを自動生成する教示装置が知られている(例えば、特許文献1参照。)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
加工点に対してレーザ光の照射角度が小さ過ぎる、すなわち、加工面に対して垂直に近い角度でレーザ光が照射されると、加工点におけるレーザ光の正反射により、レーザ光の高強度の反射光が加工ヘッドに入射する場合がある。この場合には、加工動作が停止したり加工ヘッドが損傷したりすることがあるので、照射角度の最小値を制限して、可能な限り回避することが好ましい。
【0005】
その一方で、反射光の強度は、加工面の状態あるいは材質により変動するので、一律に照射角度の最小値を制限することは、レーザ光の照射範囲を過度に制限してしまい、所望のサイクルタイムを達成するための教示データの作成が困難になる。したがって、レーザ光の照射範囲を過度に制限することなく、教示データを作成することが望まれている。
【課題を解決するための手段】
【0006】
本開示の一態様は、レーザ光を射出する加工ヘッドを装着したロボットの動作および前記加工ヘッドの動作を教示するレーザ加工のための教示システムであって、加工対象物表面から前記加工ヘッドに戻る前記レーザ光の反射光の強度を検出するセンサと、少なくとも1つのプロセッサとを備え、該プロセッサが、各加工点における前記加工対象物表面の法線と前記加工ヘッドから射出される前記レーザ光とのなす角度からなる照射角度の最小値および最大値と、前記加工点の座標とを与えて、前記最小値以上前記最大値未満の前記照射角度の前記レーザ光により、全ての前記加工点をレーザ加工可能な教示データを生成し、前記照射角度を前記最小値としたときの前記反射光の強度が許容値以下となる強度に設定された前記レーザ光を用いて、前記ロボットの制御装置に前記教示データを含む動作プログラムを実行させたときに、全ての前記加工点において前記センサにより検出された前記反射光の強度に所定の閾値を超えるものが存在するか否かを判定し、前記閾値を超える強度の前記反射光があると判定された場合に、該当する前記加工点における前記最小値を所定の増分だけ増大させるよう調整し、前記閾値を超える強度の前記反射光がないと判定されるまで、直近の調整後の前記最小値を用いた前記教示データの生成、判定および前記最小値の調整を繰り返す教示システムである。
【図面の簡単な説明】
【0007】
【
図1】本開示の一実施形態に係る教示システムを示す全体構成図である。
【
図2】光センサを含めた加工ヘッドの構成図である。
【
図3】
図1の教示システムを用いた教示方法を説明するフローチャートである。
【
図4】
図3のフローチャートの動作プログラム作成処理を説明するフローチャートである。
【
図5】
図4のフローチャートの打点グループ決定処理を説明するフローチャートである。
【
図6】
図4のフローチャートの動作速度決定処理を説明するフローチャートである。
【
図7】打点群のグループ分けを説明するための図である。
【
図8】打点グループを定義する平面の例を表す図である。
【
図9】フループ分けの最適化について説明するための図である。
【
図10】溶接時間の疎密の度合いの例を示す図である。
【
図11】溶接時間の疎密の度合いについて説明するための図である。
【
図12】グループ間の移動順序の最適化について説明するための図である。
【
図13】溶接可能期間の決定について説明するための図である。
【
図14】溶接可能期間と照射角度の最小値を説明するための図である。
【
図15】打点順序の決定について説明するための図である。
【発明を実施するための形態】
【0008】
本開示の一実施形態に係るレーザ加工のための教示システム100および教示方法について、図面を参照して以下に説明する。
本実施形態に係る教示システム100は、
図1に示されるように、ロボット10の先端に取り付けられた加工ヘッド50からレーザ光をワーク(加工対象物)Wに照射して、レーザ溶接(レーザ加工)を実施するための、ロボット10の動作および加工ヘッド50の動作の教示データを生成するシステムである。
【0009】
ロボット10は、例えば、垂直多関節型ロボットである。加工ヘッド50はガルバノスキャナ(以下、単にスキャナという。)51を備え、レーザ光を所定の角度範囲内の所望の角度で射出することができる。
【0010】
スキャナ51は、レーザ発振器30から光ファイバを経由して送られてくるレーザ光を、ハーフミラー52の駆動によって光軸に直交する2次元方向に走査させる機能および集光レンズ53を光軸方向に駆動して焦点位置を光軸方向に移動させる機能を有している。
【0011】
また、教示システム100は、
図1に示されるように、加工ヘッド50に備えられた光センサ(センサ)54と、少なくとも1つのプロセッサ40とを備えている。
光センサ54は、
図2に示されるように加工ヘッド50に接続するレーザ発振器30とスキャナ51との間の光路において、ワークW表面からスキャナ51を経由して戻る途中でハーフミラー52により分岐された反射光の強度を検出する。
【0012】
本実施形態に係る教示方法は、プロセッサ40が、
図3に示されるように、動作プログラム(教示データ)を生成し(ステップS1)、生成された動作プログラムを制御装置20に実行させる(ステップS2)。動作プログラムが実行されると、打点PがP=1にリセットされる(ステップS3)
【0013】
また、動作プログラムの実行中に、光センサ54により反射光の強度IRを検出し(ステップS4)、検出された反射光の強度IRが所定の閾値Thを超えるか否かをプロセッサ40によって判定する(ステップS5)。そして、判定結果に基づいて、プロセッサ40が照射角度の最小値θmin,Pを打点ごとに調整する(ステップS6)。
【0014】
プロセッサ40による動作プログラムの生成(ステップS1)は、各打点におけるレーザ光の照射角度の最小値θmin,Pおよび最大値θmax,Pと、打点(加工点)の位置(座標)とを入力する。そして、最小値θmin,P以上最大値θmax,P未満の照射角度のレーザ光により、全ての打点を溶接可能な教示データを生成する。ここで、照射角度は、各打点におけるワークW表面の法線と加工ヘッド50から射出されるレーザ光とのなす角度である。
【0015】
レーザ光の照射角度の最小値θmin,Pの初期値は、例えば、全ての打点Pにおいてθmin=0に設定される。
レーザ光の照射角度の最大値θmax,Pは、全ての打点Pにおいて溶接を適正に実施することが可能な角度に設定される。
【0016】
具体的には、プロセッサ40による動作プログラムの生成は、
図4に示されるフローチャートに従って実施される。
まず、プロセッサ40には、上記照射角度および打点位置の他、ロボット10、ジグ、ワークWのモデルデータ、各打点の溶接時間および溶接パターン等の動作プログラム作成処理に必要な各種データが読み込まれる(ステップS11)。
【0017】
各種データは、メモリ等の記憶装置に予め格納されているものであってもよく、操作部によって入力されてもよい。あるいは、各種データは、外部装置からネットワークを経由して入力されてもよい。
【0018】
次に、打点グループを決定する処理が行われる(ステップS12)。グループ分けは、以下の基準を満たすように行われる。
(1)打点グループ内を通過するロボット10の経路と各打点との距離が加工ヘッド50の動作範囲(走査範囲)であること。
(2)各打点からロボット10の経路に下した垂線の足の位置に経路に沿って溶接時間に相当する長さの線分を定義した場合に、この溶接時間に相当する線分の経路上での密集の度合いが均一になること。
【0019】
図5は、
図4のステップS12において行われる打点グループの決定処理の詳細を表すフローチャートである。一例として、
図7の左側に示したような打点群G0についてグループ分けを行う場合について説明する。
【0020】
はじめに、打点群G0を仮の打点グループにグループ分けする(ステップS21)。ここで、1つのグループは、ロボット10が1つの動作命令で動作する間に溶接を行う複数の打点を規定する。1つのグループ内では、ロボット10が一つの動作命令で動作し、その間加工ヘッド50がスキャン動作を行うことでグループに属する各打点を溶接する。
【0021】
1つの動作命令においては、ロボット10は直線的に等速で動作する。ここでは、一例として、打点群G0を
図7の右側に示す3つの打点グループG1~G3に仮に分けるものとする。
【0022】
次に、各打点グループG1~G3について、打点グループの中心を通るロボット10の経路を決定する(ステップS22)。打点グループの中心を通る直線は、例えば、最小二乗法により求める。
【0023】
一例として打点グループG1に関して述べると、経路R1は、各打点101~105から経路R1までの距離の二乗和が最小になる直線として求められる。なお、打点位置は3次元空間上の位置であるため各打点101~105は実際には3次元空間に分布しているが、各打点位置を平均した位置を通過する平面を定義して、各打点101~105をこの平面に投影した位置に各打点101~105が存在するものとして上記経路の決定を行う。
【0024】
各打点位置の平均した位置を通過する平面は、例えば、最小二乗法を用いて(或いはNewellのアルゴリズムを用いて)求めることができる。ステップS22での処理により、打点グループG1,G2,G3の経路としてそれぞれ経路R1,R2,R3が決定されたものとする。経路R1,R2,R3は、レーザ光の照射位置から打点グループG1,G2,G3を定義する平面に下した垂線の足が平面上を移動する経路として決定されてもよい。
【0025】
また、打点グループR1,R2,R3の打点101~105が投影される平面は、打点101~105の分布状態(溶接面の形状)によっては水平方向に対して傾斜した平面として定義されてもよい。例えば、
図8に示すように、打点グループG1を定義する平面H1は、打点グループG2を定義する平面H2に対して傾斜した平面として定義することが好ましい。
【0026】
このように平面を決定することで、打点グループの分布に整合した平面を設定することができる。なお、
図8には、レーザ光の照射位置D1,D2に設定される加工ヘッド50の動作範囲の例も図示されている。ロボット10が打点グループG2に対応する経路にある間は、ロボット10の姿勢を制御することにより、加工ヘッド50が平面H2を向けられる。
【0027】
次に、それぞれの打点グループR1,R2,R3について、各打点101~105が加工ヘッド50の動作範囲内にあるか否かの確認が行われる(ステップS23)。例えば、打点グループG1に関して説明すると、各打点101~105から経路R1までの距離が加工ヘッド50の動作範囲内であるか否かにより本ステップS23での確認を行うことができる。加工ヘッド50の動作範囲外である打点が見つかった場合には、ステップS21の工程からグループ分けをやり直す。
【0028】
次に、打点グループ内での打点の分布と各打点の溶接時間とに基づいてグループ分けを最適化する(ステップS24~S26)。
図9に示したような打点グループを想定してグループ分けの最適化について説明する。
【0029】
図9の例では、一つの打点グループG10内に打点131~138が分布している。経路P10は、この打点グループG10に対してステップS22の処理により設定された経路である。
【0030】
上述の通り、1つの動作命令に対応する動作ではロボット10は等速で動作する。そのため、打点が密の部分140においてロボット10が全打点131~135の溶接を完了できるようにロボット10の動作速度を低く設定した場合、打点が疎の部分141ではロボット10が不必要に低速で動作することになる。
【0031】
したがって、この場合には打点グループG10を、部分140の打点グループと部分141の打点グループとに分けた方がロボット10の平均的な速度を高めることができる。すなわち、一打点グループ内での打点の分布が均一となるようにグループ分けを行うことが好ましいと言える。
【0032】
ただし、打点毎に溶接時間が異なることも考量する必要がある。
そこで、
図10に示すように各打点131~138から経路上に下した垂線の足の位置を中心とする、打点131~138の溶接時間に対応する長さの線分を経路P10上に設定する。この線分はロボット10による経路P10の移動時間における一打点の溶接時間に相当するため、以下、溶接時間と称することとする。
【0033】
一例として、
図10において、打点132から経路P10におろした垂線の足の位置132cを中心とした溶接時間132sが設定されている。
図10においては、各溶接時間は、便宜上太い両矢印線により示されている。
【0034】
まず、経路P10上に占める溶接時間の密度(疎密の度合い)を算出する(ステップS24)。この場合、溶接時間の密度は、溶接時間の集中の度合いと表現することもできる。
例えば、
図11の上段に示すように、経路P10上に設定される溶接時間SG1,SG2,SG3の間の間隔d1,d2が広い状態は、溶接時間の密度が低い状態(疎の状態)に相当する。
【0035】
それとは対照的に
図11の下段で示すように、溶接時間SG10,SG11,SG12の間の間隔d11,d12が狭い状態は、溶接時間に密度が高い状態(密の状態)に相当する。隣接する溶接時間の間の間隔が広い状態は、それらの溶接時間に対応する経路P10上の部分ではロボット10の速度を上げることができることを表している。それに対し、隣接する溶接時間の間の間隔が狭い状態は、それらの溶接時間に対応する経路P10上の部分ではロボット10の速度を上げることができないことを表している。
【0036】
したがって、ある打点グループの経路に設定される溶接時間の密度のむら(疎密状態のむら)を評価し、密度のむらが高い場合には再グループ分けをする。これにより、各打点グループの溶接時間の密度のむらを小さくすることにより、全体的な溶接動作の速度を向上させることができる。
【0037】
すなわち、ある打点グループの経路上に設定された溶接時間の間の間隔について密度のむらを表す値を算出する(ステップS24)。一例として、溶接時間の密度のむらは、経路上の一定の長さの小区間毎の溶接時間の密度を求めて当該密度のばらつきに基づいて算出してもよい。そして、密度のむらが小さいほど高得点になるように評価値を計算する(ステップS25)。
【0038】
次に、各打点グループの評価値が所定の閾値以上になっているか否かを判定する(ステップS26)。評価値が所定の閾値未満のグループがある場合には、グループについて評価値が高くなるように再度のグループ分けを行い、ステップS21からの処理を繰り返す。
【0039】
また、全打点グループについて評価値が閾値以上になっている場合には、ステップS27に進む。このようなループ処理により打点グループ分けの最適化を行うことができる。このような最適化のループ処理では、例えば、遺伝的アルゴリズムが用いられてもよい。
【0040】
ステップS27においては、打点グループ間の移動順序および打点グループ内での打点順序の最適化を行う。ここでは、ステップS26まででの処理により
図12の左側に示すようにグループ分けおよび経路の決定がなされたものとする。
【0041】
図12の左側の例では、溶接対象の打点群は3つの打点グループG201~G203にグループ分けされ、各打点グループG201~G203に経路P201~P203が設定されている。打点グループG201~G203に設定された経路P201~P203の移動方向、打点グループG201~G203間の移動順序が最適化される(ステップS27)。
図12において左側に最適化前の状態を示し、右側に最適化後の状態を示す。最適化前の状態では、打点グループG201~G203間の順序は、打点グループG201→打点グループG203→打点グループG202の順となっている。
【0042】
また、打点グループG201については図中下から上に向かう打点順序、打点グループG203については図中下から上に向かう打点順序、打点グループG202については図中左から右に向かう打点順序と決定されている。最適化前の状態は、打点グループG201~G203間の総移動距離が長く改善の余地があることが理解できる。
【0043】
図12の右側の最適化後の状態では、打点グループG201~G203間の移動順序は、打点グループG201→打点グループG202→打点グループG203の順となっている。また、打点グループG201については下から上に向かう打点順序、打点グループG202については左から右に向かう打点順序、打点グループG203については上から下に向かう打点順序に決定されている。
【0044】
最適化後の状態では打点グループ間の移動の総距離が最小となっていることが理解できる。打点グループ間の総移動距離を最小にする移動順序を決定する手法としては、いわゆる巡回セールスマン問題を解くための当分野で知られた各種手法を用いることができる。以上の処理により、
図4のフローチャートにおける打点グループの決定処理(ステップS12)が完了する。
【0045】
次に、
図4のフローチャートのステップS13において、打点グループ毎のロボット10の動作速度が決定される。
図6は、この動作速度決定処理の詳細を表すフローチャートである。はじめに、各打点グループについての仮の動作速度を設定する(ステップS31)。
【0046】
仮の動作速度は、各打点グループの打点を問題なく溶接できると考えられる低い速度を全打点グループについて一律に設定してもよい。あるいは、経験値に基づく代表的な速度を各打点グループに一律に設定してもよい。
【0047】
次に、
図4のフローチャートのステップS12において決定されたロボット10の経路、およびステップS31で決定された各打点グループの動作速度を用いてロボット10の動作プログラムを生成し、ロボット10の動作シミュレーションを実行する(ステップS32)。動作シミュレーションの実行により、ロボット10の補間周期毎の位置データ(以下、動作経路とも記す)を取得する。
【0048】
そして、ロボット10の動作シミュレーションにより得られたロボット10の動作経路を用いて、ロボット10の動作経路上で各打点を溶接できる範囲に対応する期間(以下、溶接可能期間と記す)を算出する(ステップS33)。
図13のようにロボット10の動作経路L1に関して、打点151の溶接できる溶接可能期間を求める場合を例として取り上げてここでの処理を説明する。
【0049】
まず、ロボット10の動作経路L1上の位置に基づいてロボット10のアーム先端に取り付けられている加工ヘッド50の位置(具体的には、例えば、加工ヘッド50内の集光レンズ53の位置)を求め、加工ヘッド50の位置と打点151の位置とを結ぶレーザ光の経路を求める。
このとき、
(1)レーザ光の経路がワークW、ジグと干渉しない、
(2)レーザ光の経路が加工ヘッド50の動作範囲である、
(3)各打点位置でのワークWの法線方向とレーザ光とがなす角度である照射角度が所定の許容範囲であること、
の条件を満たすとき、このレーザ光の経路については溶接可能であると判定する。
【0050】
なお、上記条件(3)を適用するのは、ワークWに対するレーザ光の照射強度にむらが発生することを回避し溶接品質を維持するとともに、反射光による悪影響を防ぐためである。動作経路L1上で連続してレーザ光の経路が溶接可能であると判定される範囲に対応する期間が、ステップS33において求める各打点についての溶接可能期間である。
【0051】
図13の例では、符号L101が、溶接可能期間を表している。動作経路L1上の複数個所に溶接可能期間が決定される場合もあり得る。なお、溶接可能期間L101は対象打点の溶接時間以上である必要があるので、これを満たさない範囲は破棄する。
【0052】
この場合において、打点ごとに照射角度の最小値θ
min,Pと最大値θ
max,Pとが入力されているので、照射角度が最小値θ
min,P以上最大値θ
max,P未満の条件を満たさない場合は溶接可能期間L101から除かれる。すなわち、
図14に示されるように、照射角度の最小値θ
min,P以下となる斜線で示される領域(中抜け領域)には、レーザ光は照射されない。
【0053】
したがって、ロボット10が動作経路L1に沿って移動する間に、
図14に破線で示されるよう、中抜け領域を通過する経路LL1でレーザ光が照射される場合には、溶接可能期間が途切れる。しかし、
図14に実線で示されるように、中抜け領域を回避する経路LL2に沿ってレーザ光が照射されるように、加工ヘッド50が制御されることにより、溶接可能期間を連続させることができ、溶接時間を満足する溶接可能期間を確保できる。
【0054】
次に、ステップS33で決定された各打点についての溶接可能期間を用いて、各打点を溶接する位置、時間を決定する(ステップS34)。ここでは、第1の条件として、各打点の溶接時間を考慮し、各打点の溶接可能期間の開始時間の先後に依存することなく、各打点の溶接時間が確実に満たされるように溶接の時間を決定する。
【0055】
例えば、溶接時間が同じ1秒の2つの打点A,Bがあり、打点Aの溶接可能期間が動作開始から1秒目から4秒目、打点Bの溶接可能期間が動作開始から1.1秒目から2.1秒目である場合を想定する。この場合、先に溶接可能になるのは打点Aであるが、打点Aを1秒目から2秒目に溶接すると打点Bの溶接ができなくなる。このような場合、ステップS34においては、打点Bを1.1秒目から2.1秒目に溶接し、打点Bを2.1秒目から3.1秒目に溶接する。
【0056】
また、ステップS34においては、第2の条件として、打点の並び順に依存することなく動作経路とワークWやジグとの位置関係により先に溶接可能となる打点があればその打点を優先して溶接する。例えば、
図15に示すように、動作経路L2に沿った打点の並びは打点161,162の順である。しかし、動作経路L2上から打点方向をみた場合に打点161がワークWの突起部180の背後に隠れ打点162の方が先に溶接可能となるような場合がある。この場合には、先に動作経路L2上の位置202において打点161の溶接を行い、打点162の溶接はその後ろの位置203において行う。
【0057】
そして、全打点が溶接できて且つサイクルタイムが短くなるように動作速度を調整し最適化する(ステップS35)。例えば、全打点グループについてロボット10の動作速度を同じ値として全打点について溶接可能となるまで動作速度を下げ、次に、打点グループ毎に動作速度を上げるというやり方が考えられる。以上の処理により、最適化された場合は、
図4のフローチャートの動作速度決定処理(ステップS13)が終了する。また、最適化されていない場合には、ステップS31からの工程を繰り返す。
【0058】
次に、以上のステップS11~S13の処理によって得られた結果を用いてロボット10および加工ヘッド50の動作プログラムが生成される(ステップS14)。ロボット10の動作プログラムは、ステップS2の処理によって全打点グループに設定された経路に沿って、ステップS13において決定された動作速度でロボット10が動作するように作成される。
【0059】
加工ヘッド50の動作プログラムは、ロボット10がその動作プログラムにしたがって動作経路上を移動するときに各打点に対して設定された溶接時間にわたってレーザ光が打点に照射されるように加工ヘッド50の位置および姿勢を規定する動作指令群として作成される。
このようにして、ロボット10の最適な動作経路および各打点を溶接する最適なタイミングを自動的に決定することができる。
【0060】
次に、プロセッサ40は、このようにして生成された動作プログラムを制御装置20に送るとともに、加工ヘッド50から射出させるレーザ光の強度ITを許容値IR0以下に設定して、動作プログラムを実行させる(ステップS2)。ここで、許容値IR0は、例えば、レーザ光のワークW表面に照射されてもワークWが溶接されず、かつ、ワークW表面における正反射光が加工ヘッド50に入射されても、加工ヘッド50に悪影響を与えない強度に設定される。
【0061】
動作プログラムの実行中には、加工ヘッド50に備えられた光センサにより反射光の強度IRが監視され(ステップS4)、プロセッサにおいて、反射光の強度IRが所定の閾値Thを超えたか否かが判定される(ステップS5)。
閾値Thは、例えば、下式(1)により算出される。
【0062】
Th≦IR0×IT/IS (1)
ここで、ISは実際のレーザ加工に使用されるレーザ光の強度であり、ITは教示時に加工ヘッド50から射出されるレーザ光の強度である。
【0063】
すなわち、閾値Thは、教示時に加工ヘッド50から射出されるレーザ光の強度ITに対する反射光の強度IRの比率が、実際のレーザ加工に使用されるレーザ光の強度ISに対する許容反射光強度IROの比率以下となるように設定される。
反射光の強度IRが閾値Thを超えた場合には、該当する打点における照射角度の最小値θmin,Pを所定の増分Δθだけ増大させ(ステップS6)、反射光の検出を停止し、該当する打点Pの溶接時間が終了するまで待機する(ステップS7)。打点Pの溶接時間が終了した後には、次の打点P+1について(ステップS8)、動作プログラムが終了するまでステップS4からの工程を繰り返す(ステップS9)。
【0064】
反射光の強度が閾値Th以内であれば、動作プログラムが終了するまで、ステップS4からの工程を繰り返す(ステップS9)。動作プログラムが終了した後に、全打点で反射光の強度IRが所定の閾値Th以下か否かが判定され(ステップS10)、いずれかの打点で反射光の強度IRが閾値Thを超えた場合には、ステップS1からの工程を繰り返す。ステップS10において全打点で反射光の強度IRが閾値Th以下であれば、最終的な動作プログラムを出力する(ステップS10A)。
【0065】
このように、本実施形態によれば、ワークW表面におけるレーザ光の反射光が加工ヘッド50に悪影響を与えず、かつ、溶接対象の全打点が溶接可能でサイクルタイムが最短になるように動作速度を決定することができるという利点がある。
【0066】
すなわち、ワークWの素材あるいはワークWの表面状態によっては、照射するレーザ光の強度ISが一定であっても、加工ヘッド50に戻る反射光の強度IRは変動する。本実施形態によれば、動作プログラムの全体にわたって打点毎に反射光の強度IRを強度IR0以下に抑える照射角度の最小値θmin,Pを自動的に求めるので、作業者が手動で動作プログラムを調整する必要がないという利点がある。
【0067】
また、各打点Pの照射角度の最小値θmin,Pの初期値θminを予め大きく設定して動作プログラム全体にわたる反射光の強度IRを抑える方法とは異なり、反射光の強度IRを許容反射光強度IR0に抑える最小の最小値θmin,Pを得ることができ、照射角度範囲を過度に制限せずに済む。これにより、レーザ加工の所望のサイクルタイムを達成し易くすることができるという利点がある。
【0068】
なお、本実施形態においては、レーザ光の照射角度の最小値θmin,Pの初期値θminをゼロに設定することとしたが、これに代えて、ゼロ以外の値に設定してもよい。例えば、表面が鏡面に近いワークWを溶接する場合等、照射角度の最小値θmin,Pがゼロでは、明らかに許容反射光強度IR0を超える反射光が加工ヘッド50に入射されてしまう場合がある。このような場合に、最小値θmin,Pのゼロ以外の初期値θminを用いることにより、最初の1回以上の無駄な処理をなくして、適正な最小値を探索するまでの時間を短縮することができる。
【0069】
また、本実施形態においては、ロボット10として垂直多関節型のロボットを例示したが、これに限定されるものではなく、他のタイプのロボットが用いられてもよい。また、ガルバノスキャナ51以外のレーザ走査装置が用いられてもよい。
また、本実施形態においては、レーザ加工としてレーザ溶接を例示したが、これに代えて、他の任意のレーザ加工に適用してもよい。
【符号の説明】
【0070】
10 ロボット
20 制御装置
40 プロセッサ
50 加工ヘッド
54 光センサ(センサ)
100 教示システム
W ワーク(加工対象物)
Th 閾値
θmin 最小値
θmax 最大値
IR 反射光の強度