(57)【要約】【課題】レーザをワークの所望の溶接位置に照射して溶接加工するレーザ加工装置。【解決手段】ワーク１０に対してレーザを照射するスキャナ４と、スキャナ４を移動させるロボット２と、ロボット２を制御するロボット制御装置５と、スキャナ４を制御して、レーザの照射位置を制御するスキャナ制御装置６と、を備え、スキャナ４を予め複数の方向及び速度で移動させたときのロボット２に係る駆動情報を入力データとし、その際のスキャナ４の実位置データと実姿勢データとを正解データとする訓練データにより機械学習して得られる学習済みモデル６５と、学習済みモデル６５により、ロボット２に係る駆動情報からスキャナ４の実位置データと実姿勢データを算出し、レーザの照射位置を補正するレーザ加工装置１。【選択図】図５
2020131267.tif 000002
【特許請求の範囲】
【請求項１】
ワークに対してレーザ光を照射するレーザ照射装置と、
前記レーザ照射装置を装着した状態で、前記ワークに対して移動させるロボットと、
前記レーザ照射装置を制御して、前記レーザ光の照射位置を制御するレーザ照射制御装置と、
前記ロボットを制御して、装着された前記レーザ照射装置の位置及び姿勢のうちの少なくとも一方を制御するロボット制御装置と、
を備え、
前記ロボット制御装置は、
装着された前記レーザ照射装置の位置及び姿勢のうちの少なくとも一方を制御する前記ロボットの指令位置及び姿勢の情報と指令速度に係る情報とを含む駆動情報を前記レーザ照射制御装置に送信するフィードバック部を備え、
前記レーザ照射制御装置は、
前記ロボット制御装置により、装着された前記レーザ照射装置を予め複数の方向及び速度で移動させるときの前記ロボットに係る駆動情報を入力データとし、その際の装着された前記レーザ照射装置の実位置データと実姿勢データとを正解データとする訓練データにより予め教師あり学習して得られる学習済みモデルと、
前記学習済みモデルにより、前記フィードバック部から受信した前記駆動情報からリアルタイムに算出される前記レーザ照射装置の実位置データと実姿勢データに基づいて、前記レーザ光の照射位置を補正する補正部と、
を備えるレーザ加工装置。
【請求項２】
前記レーザ照射装置は、前記レーザ光を所定の照射経路及び所定の照射速度で走査するガルバノスキャナであり、
前記補正部は、
前記ロボット制御装置から受信した前記駆動情報に基づいて、前記ガルバノスキャナの照射経路及び照射速度を補正し、
レーザ光を前記照射経路及び前記照射速度で走査させるためのガルバノモータの駆動情報を生成する加減速計算部を備える、請求項１に記載のレーザ加工装置。
【請求項３】
前記ロボット制御装置により、装着された前記レーザ照射装置を予め複数の方向及び速度で移動させるときの前記ロボットに係る駆動情報を取得する駆動情報取得部と、
前記駆動情報により前記ロボットを移動させたときの前記レーザ照射装置の実位置データと実姿勢データとを取得する実位置姿勢情報取得部と、
前記ロボットに係る駆動情報を入力データとして、前記レーザ照射装置の実位置データと実姿勢データを正解データとして、機械学習して学習モデルを生成する機械学習部と、
を備える機械学習装置を含む、請求項１又は請求項２に記載のレーザ加工装置。
【請求項４】
前記機械学習部は、多層ニューラルネットにより学習モデルを生成する、請求項３に記載のレーザ加工装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、レーザ加工装置に関する。
【背景技術】
【０００２】
ガルバノスキャナをロボットの先端（ハンド部分）に取り付けてレーザ溶接を行うリモートレーザ溶接ロボットシステムが注目され、実用化されている。この技術ではロボットを止めることなく動かしながら、任意の形状を溶接することが出来る。
これを実現するためにロボット制御装置から動作中のロボットの位置姿勢情報をスキャナ制御装置に送信し、スキャナ制御装置内でロボットの動作を考慮して、経路を作成している。ここで、ロボット制御装置は、ロボットの移動指令のプログラムがあり、ロボットのモータを制御する。スキャナ制御装置は、レーザの照射位置とレーザの出力条件（パワー）が記載されたプログラムがあり、スキャナのモータとレーザの出力を制御する。（特許文献１参照）
このように、ロボットのＴＣＰ（Ｔｏｏｌ  Ｃｅｎｔｅｒ  Ｐｏｉｎｔ：工具先端点）の位置姿勢情報をリアルタイムでスキャナ制御装置に送信することで、ロボットが動きながら所望の位置に溶接する（いわゆるＯｎＴｈｅＦｌｙ制御）ことが可能となっている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−２８３４０２号
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ロボットを制御するロボット制御装置と、レーザスキャナを制御するスキャナ制御装置とは、別々に設けられ、各々の動作が独立して制御されている。そのため、ロボットとレーザスキャナを厳密に協調させて制御することは難しく、ロボットの動作に対してレーザスキャナの動作に制御遅れが生じる。また、ロボットの各軸のモータの指令位置姿勢情報からは、観測できない機械的なしなりも存在する。このため、レーザの照射位置が所望の溶接位置から微妙にずれが発生する場合があるという問題もあった。
【０００５】
このため、リモートレーザ溶接ロボットシステムにおいては、レーザを所望の溶接位置に照射して、溶接加工することが望まれている。
【課題を解決するための手段】
【０００６】
（１）本開示の一態様は、ワークに対してレーザ光を照射するレーザ照射装置と、前記レーザ照射装置を装着した状態で、前記ワークに対して移動させるロボットと、前記レーザ照射装置を制御して、前記レーザ光の照射位置を制御するレーザ照射制御装置と、前記ロボットを制御して、装着された前記レーザ照射装置の位置及び姿勢のうちの少なくとも一方を制御するロボット制御装置と、を備え、前記ロボット制御装置は、装着された前記レーザ照射装置の位置及び姿勢のうちの少なくとも一方を制御する前記ロボットの指令位置及び姿勢の情報と、指令速度に係る情報と、を含む駆動情報を前記レーザ照射制御装置に送信するフィードバック部を備え、前記レーザ照射制御装置は、前記ロボット制御装置により、装着された前記レーザ照射装置を予め複数の方向及び速度で移動させるときの前記ロボットに係る駆動情報を入力データとし、その際の装着された前記レーザ照射装置の実位置データと実姿勢データとを正解データとする訓練データにより予め教師あり学習して得られる学習済みモデルと、前記学習済みモデルにより、前記フィードバック部から受信した前記駆動情報からリアルタイムに算出される前記レーザ照射装置の実位置データと実姿勢データに基づいて、前記レーザ光の照射位置を補正する補正部と、を備えるレーザ加工装置に関する。
【発明の効果】
【０００７】
一態様によれば、リモートレーザ溶接ロボットシステムにおいて、レーザをワークの所望の溶接位置に照射して溶接加工することができる。
【図面の簡単な説明】
【０００８】
【図１】レーザ加工装置の全体構成を示すブロック図である。
【図２】レーザ加工装置におけるスキャナの光学系を説明する図である。
【図３】図１に示すスキャナの他の光学系を説明する図である。
【図４Ａ】図３に示すスキャナの他の光学系を説明する図である。
【図４Ｂ】図３に示すスキャナの他の光学系を説明する図である。
【図４Ｃ】図３に示すスキャナの他の光学系を説明する図である。
【図４Ｄ】図３に示すスキャナの他の光学系を説明する図である。
【図５】図１に示すロボット制御装置及びスキャナ制御装置の構成を示す図である。
【図６】図５に示すスキャナ制御装置の備える学習済みモデルの一例を示す図である。
【図７】機械学習に係るレーザ加工装置の構成を示す図である。
【発明を実施するための形態】
【０００９】
以下、一実施形態について図面を参照して説明する。
［レーザ加工装置の全体構成］
図１は、本実施形態に係るレーザ加工装置の全体構成を示すブロック図であり、例としてリモートレーザ溶接ロボットシステムとして構成されたレーザ加工装置の一実施形態を示している。図２は、本実施形態に係るレーザ加工装置におけるスキャナ４の光学系を説明する図である。なお、各図面において同一又は相当の部分に対しては同一の符号を附すこととする。
レーザ加工装置１は、スキャナ移動装置としてのロボット２と、レーザ発振器３と、レーザ照射装置としてのスキャナ４と、ロボット制御装置５と、レーザ照射制御装置としてのスキャナ制御装置６とを備える。
【００１０】
ロボット２は、複数の関節を有する多関節ロボットであり、基部２１と、アーム２２と、複数のＹ方向に延びる回転軸を有する関節軸２３ａ〜２３ｄを備える。また、ロボット２は、Ｚ方向を回転軸としてアーム２２を回転移動させるロボットモータ（図示せず）、各関節軸２３ａ〜２３ｄを回転させてアーム２２をＸ方向に移動させるロボットモータ（図示せず）等の複数のロボットモータを有する。各ロボットモータは、後述するロボット制御装置５からの駆動データに基づいてそれぞれ回転駆動する。
【００１１】
ロボット２のアーム２２の先端部２２ａにスキャナ４が固定されている。従って、ロボット２は、各ロボット用サーボモータの回転駆動によって、ワーク１０を所定のロボット速度で、Ｘ、Ｙ、Ｚ方向に移動させることができるとともに、Ｘ、Ｙ、Ｚ軸回りに回転させることができる。これにより、ロボット２は、ワーク１０を作業空間上の任意の位置に移動させることができるとともに、ワーク１０の姿勢を変更することができる。
なお、実溶接におけるロボットの動く方向はほとんどＸＹ平面の方向に限定される。また、ロボット速度については、溶接にある程度時間がかかるため、速く動かすことはできない。具体的には、ロボット速度は例えば３０〜１２０ｍｍ／秒の範囲で動かす場合が多い。また、姿勢についても、例えば、Ｘ、Ｙ、Ｚ軸回りそれぞれ１５度程度あれば実際の動きをカバーすることができる場合が多い。
【００１２】
レーザ発振器３は、レーザ媒質、光共振器及び励起源等（いずれも図示せず）から構成される。レーザ発振器３は、後述するスキャナ制御装置６からのレーザ出力指令に基づくレーザ出力のレーザ光を生成し、生成したレーザ光をスキャナ４に出射する。発振されるレーザの種類として、ファーバーレーザ、ＣＯ２レーザ、ＹＡＧレーザ等があるが、本発明においては、レーザの種類について特に問わない。
【００１３】
スキャナ４は、レーザ発振器３から出射されるレーザ光Ｌを受けて、ワーク１０に対してレーザ光Ｌを走査可能なガルバノスキャナである。
図２は、図１に示すスキャナ４の光学系を説明する図である。図２に示すように、スキャナ４は、レーザ発振器３から出射されるレーザ光Ｌを反射させる２つのガルバノミラー４１、４２と、ガルバノミラー４１、４２をそれぞれ回転駆動するガルバノモータ４１ａ、４２ａと、カバーガラス４３とを備える。
【００１４】
ガルバノミラー４１、４２は、互いに直交する２つの回転軸Ｊ１、Ｊ２回りにそれぞれ回転可能に構成される。ガルバノモータ４１ａ、４２ａは、後述するスキャナ制御装置６からの駆動データに基づいて回転駆動し、ガルバノミラー４１、４２を回転軸Ｊ１、Ｊ２回りに独立して回転させる。
【００１５】
レーザ発振器３から出射されたレーザ光Ｌは、２つのガルバノミラー４１、４２で順次反射された後にスキャナ４から出射され、ワーク１０の加工点（溶接点）に到達する。このとき、ガルバノモータ４１ａ、４２ａにより２つのガルバノミラー４１、４２がそれぞれ回転すると、これらガルバノミラー４１、４２に入射するレーザ光Ｌの入射角が連続的に変化する。その結果、スキャナ４からワーク１０に対して所定の経路でレーザ光Ｌが走査され、そのレーザ光Ｌの走査経路に沿ってワーク１０上に溶接軌跡を形成するようになっている。
【００１６】
スキャナからワーク１０上に出射されるレーザ光Ｌの走査経路は、ガルバノモータ４１ａ、４２ａの回転駆動を適宜制御してガルバノミラー４１、４２のそれぞれの回転角度を変化させることにより、Ｘ、Ｙ方向に任意に変化させることができる。
【００１７】
カバーガラス４３は、円柱状であり、ガルバノミラー４１、４２によって順次反射されてワーク１０に向かうレーザ光Ｌを透過するとともに、スキャナ４の内部を保護する機能を有する。
【００１８】
あるいは、図３に示すように、スキャナ４は、トレパニングスキャナであってもよい。この場合、スキャナ４は、例えば、一方の面が傾斜した形式のレンズをモータで回転させることで、入射したレーザ光を屈折させて、任意の位置に照射する構成を有することが可能である。
【００１９】
具体的には、スキャナ４において、レーザ光Ｌが厚み方向に入射するように、２枚のプリズムレンズ４４ａ及び４４ｂ（以下、場合により、双方をまとめて「プリズムレンズ４４」と総称する）と、集光レンズ４５とが重なって配置され、２枚のプリズムレンズ４４ａ及び４４ｂが、回転軸Ｋを中心に回転することで、照射位置は二次元平面上に制御可能となる。
【００２０】
図４Ａ〜図４Ｄに示すように、プリズムレンズ４４は、例えば円状に形成され、その厚みＴ方向の断面Ｃにおける入射側の辺（以下、入射辺という。）４６と、出射側の辺（以下、出射辺という。）４７が互いに平行となっている。すなわち、プリズムレンズ４４は、その径方向において厚みＴは変化せず一定である。一方、プリズムレンズ４４は、その周方向において厚みＴが連続的に変化している。具体的には、図４Ａ〜図４Ｄに示すように、プリズムレンズ４４の厚みＴは、例えばＴ１〜Ｔ２〜Ｔ３で表される厚みを取ることができ、これらはＴ１＜Ｔ２＜Ｔ３の関係にある。これらプリズムレンズ４４は、回転モータによって回転駆動され、その回転方向に沿って厚みＴが連続的に変化するようになっている。
【００２１】
プリズムレンズ４４に入射したレーザ光Ｌは、プリズムレンズ４４の屈折率に応じて屈折し、屈折光として出射されるが、このとき、屈折によりシフトするレーザ光Ｌのビーム位置は、プリズムレンズ４４の厚みＴと相関を有する。すなわち、レーザ光Ｌの入射位置Ｐにおけるプリズムレンズ４４の厚みＴが大きいほど、屈折によるレーザ光Ｌのビーム位置のずれであるシフト量は大きくなる。回転方向に厚みＴが連続的かつ周期的に変化するプリズムレンズ４４にレーザ光Ｌを通過させることで、レーザ光Ｌのビーム位置、すなわちレーザ光Ｌの照射位置を連続的かつ周期的に変化させることが可能となる。
【００２２】
再び図１を参照し、ロボット制御装置５は、所定の作業プログラム（ロボット移動経路を含む）に応じて、ロボット２の各ロボット用サーボモータに駆動制御データを出力してロボット２の動作を制御する。すなわち、ロボット制御装置５は、各ロボット用サーボモータに駆動制御データを出力して各ロボット用サーボモータの回転駆動を制御することにより、アーム２２の先端部２２ａに取り付けられたスキャナ４をＸ、Ｙ、Ｚ方向に移動させるとともに、Ｘ、Ｙ、Ｚ軸回りに回転させる。これにより、ロボット制御装置５は、ロボット２の位置及び姿勢、すなわちスキャナ４の位置及び姿勢（例えば、回転角度）を変更させる。
また、ロボット制御装置５は、ロボット２の位置及び姿勢、すなわちスキャナ４の位置及び姿勢に関する情報（例えば、指令値）をスキャナ制御装置６に供給する。具体的には、ロボット２の位置は、ロボット２の先端部２２ａの位置、すなわちスキャナ４の位置である。また、ロボット２の姿勢は、ロボット２の先端部２２ａの姿勢、すなわちスキャナ４の姿勢（例えば、回転角度）である。
ロボット制御装置５は、各ロボットモータに駆動制御データを出力して各ロボットモータの回転駆動を制御することにより、アーム２２の先端部２２ａに取り付けられたスキャナ４をワーク１０に対して例えば、前述したように、ほとんどＸＹ平面の方向に移動させる。また、ロボット制御装置５はスキャナ４を、例えば３０〜１２０ｍｍ／ｓの範囲で動かす。また、ロボット制御装置５はスキャナ４の姿勢を、例えばＸ、Ｙ、Ｚ軸回りそれぞれ最高で１５度程度回転させる。
【００２３】
スキャナ制御装置６は、ロボット制御装置５によるロボット２の動作制御に対して独立にスキャナ４の動作制御を行う。
スキャナ制御装置６は、所定の作業プログラム（加工条件（パワー、周波数、デューティ等のレーザの照射条件）を含む）に応じて、レーザ発振器３に対して所望の出力のレーザ光が出射されるようにレーザ出力指令を出力する。また、スキャナ制御装置６は、所定の作業プログラム（加工経路を含む）に応じて、スキャナ４のガルバノモータ４１ａ、４２ａに駆動制御データを出力することによりガルバノミラー４１、４２を回転させ、スキャナ４からワーク１０に対して出射されるレーザ光Ｌの走査を制御する。
【００２４】
ロボット制御装置５及びスキャナ制御装置６は、例えば、ＤＳＰ（Digital Signal Processor）、ＦＰＧＡ（Field-Programmable Gate Array）等の演算プロセッサで構成される。ロボット制御装置５及びスキャナ制御装置６の機能は、例えば記憶部に格納された所定のソフトウェア（プログラム）を実行することで実現される。ロボット制御装置５及びスキャナ制御装置６の機能は、ハードウェアとソフトウェアとの協働で実現されてもよいし、ハードウェア（電子回路）のみで実現されてもよい。
【００２５】
次に、これらロボット制御装置５及びスキャナ制御装置６の更に詳細な構成について説明する。図５は、本実施形態に係るレーザ加工装置１におけるロボット制御装置５及びスキャナ制御装置６の構成を示す図である。
ロボット制御装置５は、プログラム解析部５１と、補間部５２と、フィードバック部としての加減速計算部５３と、モータ出力部５４とを備える。
【００２６】
プログラム解析部５１は、図示しない入力装置からロボット制御装置５に入力された教示点を含む加工プログラムを解析し、ロボット２の移動経路（すなわち、先端部２２ａに取り付けられたスキャナ４の移動経路）と目標とするロボット２の移動速度に関する動作指令情報を生成する。生成された動作指令情報は補間部５２に出力される。
【００２７】
補間部５２は、プログラム解析部５１から出力された動作指令情報に基づいてロボット２の移動経路の補間を行い、補間情報を生成する。例えば、補間部５２は、教示点間のロボット２の移動経路（すなわち、先端部２２ａに取り付けられたスキャナ４の移動経路）が所望の加工経路に沿う滑らかな経路となるように補間を行う。生成された補間情報は加減速計算部５３に出力される。
【００２８】
加減速計算部５３は、補間部５２から出力された補間情報と予め設定されている各パラメータとに基づいて、ロボット２の動作の加減速処理を行い、ロボット２（すなわち、先端部２２ａに取り付けられたスキャナ４）をロボット２の移動経路に沿って移動させるための各ロボット用サーボモータの駆動情報を生成する。生成された各ロボットモータの駆動情報はモータ出力部５４に出力される。
駆動情報はロボット２の位置及び姿勢（先端部２２ａに取り付けられたスキャナ４の位置及び姿勢（例えば、各軸角度））、並びに移動速度（先端部２２ａに取り付けられたスキャナ４の速度及び各軸角速度）の指令値を含み、これらの指令値に関する情報はスキャナ制御装置６に供給される。
【００２９】
モータ出力部５４は、加減速計算部５３から出力された駆動情報に基づいて各ロボット用サーボモータの駆動データを生成する。具体的には、モータ出力部５４は、例えば駆動情報における速度指令（又は位置指令）と、各ロボット用サーボモータに設けられたエンコーダで検出された速度フィードバック（又は位置フィードバック）との速度偏差（又は位置偏差）に基づいて、各ロボット用サーボモータの駆動データを生成する。モータ出力部５４は、生成された駆動データに基づいて各ロボット用サーボモータを駆動する。
【００３０】
スキャナ制御装置６は、プログラム解析部６１と、レーザ指令計算部６２と、レーザ指令出力部６３と、補間部６４と、学習済みモデル６５と、補正部としてのロボット移動考慮計算部６６と、加減速計算部６７と、モータ出力部６８とを有する。
【００３１】
プログラム解析部６１は、図示しない入力装置からスキャナ制御装置６に入力された加工プログラムを解析し、スキャナ４の走査経路（照射経路）及び走査速度（照射速度）、並びに加工条件に関する動作指令情報を生成する。そして、プログラム解析部６１は、生成された動作指令情報を補間部６４及びレーザ指令計算部６２に出力する。
【００３２】
レーザ指令計算部６２は、プログラム解析部６１から出力された動作指令情報（加工条件）に基づいて、スキャナ４から出射されるレーザ光Ｌが所望のレーザ出力となるようなレーザ出力情報を生成し、生成されたレーザ出力情報に基づいてレーザ発振器３の発振情報を生成する。生成されたレーザ発振器３の発振情報は、レーザ指令出力部６３に出力される。
【００３３】
レーザ指令出力部６３は、レーザ指令計算部６２から出力された発振情報に基づいて、レーザ発振器３の発振制御データを生成し、生成された発振制御データに基づいてレーザ発振器３を制御する。
【００３４】
補間部６４は、プログラム解析部６１から出力された動作指令情報（走査経路）に基づいてスキャナ４の走査経路（照射経路）の補間を行い、補間情報を生成する。生成された補間情報はロボット移動考慮計算部６６に出力される。
【００３５】
学習済みモデル６５は、ロボット制御装置５によりロボット２に装着されたスキャナ４を予め複数の方向及び速度で移動させるときのロボット２に係る駆動情報を入力データとし、その際の装着されたスキャナ４の実位置データと実姿勢データとを正解データとする訓練データにより予め教師あり学習して得られている。ここで、ロボット２に係る駆動情報は、ロボット２の先端部に取り付けられたスキャナの位置及び姿勢の指令値、速度指令値、各軸の角度指令値、及び各軸の角速度指令値を指す。
図６に学習済みモデルの一例を示す。図６に示すように、学習済みモデル６５は、例えば駆動情報を入力層として、スキャナ４の実位置データと実姿勢データを出力層とする多層ニューラルネットワークである。
学習済みモデル６５は、後述する機械学習装置７により生成される。
【００３６】
ロボット移動考慮計算部６６は、ロボット２が動作するモードオンの場合、学習済みモデル６５から出力されたスキャナ４の実位置データと実姿勢データを基にロボット２の動作を考慮して、補間部６４から出力された補間情報（走査経路）を補正する。ロボット移動考慮計算部６６は、補正された補間情報（走査経路）と予め設定されているパラメータに基づいて各ガルバノミラー４１、４２の回転速度を算出する。
一方、ロボット２が動作しないモードオフの場合、ロボット移動考慮計算部６６は、補間部６４から出力された補間情報（走査経路）と予め設定されているパラメータに基づいて各ガルバノミラー４１、４２の回転速度を算出する。
ロボット移動考慮計算部６６によって算出された回転速度のデータは加減速計算部６７に出力される。
【００３７】
加減速計算部６７は、ロボット移動考慮計算部６６から出力されたガルバノミラー４１、４２の回転速度の情報と各パラメータとに基づいて、ガルバノモータ４１ａ、４２ａの加減速処理を行い、レーザ光Ｌを走査経路（照射経路）及び走査速度（照射速度）で走査させるための各ガルバノモータ４１ａ、４２ａの駆動情報を生成する。生成された各ガルバノモータ４１ａ、４２ａの駆動情報はモータ出力部６８に出力される。
【００３８】
モータ出力部６８は、加減速計算部６７から出力された駆動情報に基づいて各ガルバノモータ４１ａ、４２ａの駆動制御データを生成し、生成された駆動制御データに基づいて各ガルバノモータ４１ａ、４２ａを駆動する。
そうすることで、レーザ加工装置１では、ロボット２でスキャナ４を移動させながら、スキャナ４でレーザ光を走査することにより、ワーク１０を任意の形状で溶接（加工）することができる。
【００３９】
＜機械学習装置７＞
機械学習装置７は、前述したように、ロボット制御装置５によりロボット２に装着されたスキャナ４を予め複数の方向及び速度で移動させるときのロボット２に係る駆動情報を入力データとし、その際の装着されたスキャナ４の実位置データと実姿勢データとを正解データとする訓練データにより教師あり学習を行う。
そうすることで、機械学習装置７は、ロボット制御装置５（加減速計算部５３）により生成された移動経路に沿ってロボット２（すなわち、先端部２２ａに取り付けられたスキャナ４）を移動させるための各ロボット用サーボモータの駆動情報を入力として、当該指令値に対して、スキャナ４の実位置データと実姿勢データを出力値とする学習済みモデル（ニューラルネットワーク）を生成する。ここで、ニューラルネットワークは、多層ニューラルネットワークとしてもよい。
図７に機械学習を行うためのシステムの概要図を示す。図７に示すように、機械学習装置７は、駆動情報取得部７１と、実位置姿勢情報取得部７２と、機械学習部７３と、を備える。
ここで、駆動情報取得部７１は、ロボット制御装置５より、装着されたスキャナ４を予め複数の方向及び速度で移動させるときのロボット２に係る駆動情報（機械学習時における訓練データの入力データ）を取得する。
【００４０】
予め複数の方向及び速度で移動させるときのロボット２に係る駆動情報及びそのときのスキャナ４の実位置データと実姿勢データを取得するために、ロボット２（アーム２２の先端部２２ａ）に取り付けられたスキャナ４をワーク１０に対して例えば、前述したように、ほとんどＸＹ平面の方向に移動させること、スキャナ４を、例えば３０〜１２０ｍｍ／ｓの範囲で動かすこと、及びスキャナ４の姿勢を、例えばＸ、Ｙ、Ｚ軸回りそれぞれ最高で１５度程度回転させること、を満たす条件の範囲で、スキャナ４を様々な方向、速度で動かすための方向、速度、及び姿勢を変えたロボット２の動きを制御するとともに、レーザの出力オンオフ等の調整、レーザ射出方向の調整等を行う、予め複数の方向及び速度で移動させるときのロボット２に係る駆動情報を取得するための、機械学習用の加工プログラムを多数用意する。
ここで、レーザ光としては、実際のレーザ光ではなく、ガイドレーザ（レーザポインタの光）を出力させてもよい。また、その際、スキャナ４の同じ位置及び姿勢において、予め設定された複数の照射位置に対してガイドレーザを出力するようにしてもよい。
【００４１】
機械学習用の加工プログラムを動作させる場合のレーザ加工装置１Ａを図７に示す。図7に示すように、レーザ加工装置１Ａは、ロボット２と、レーザ発振器３と、スキャナ４とロボット制御装置５と、スキャナ制御装置６Ａと、を備える。
ここで、ロボット制御装置５Ａは、図５に示すロボット制御装置５と基本的に同じ装置であり、加減速計算部５３の出力する駆動情報の送信先を、ロボット移動考慮計算部６６Ａ及び機械学習装置７（駆動情報取得部７１）に変更したものである。
また、スキャナ制御装置６Ａは、図５に示すスキャナ制御装置６と基本的に同じ装置であり、図５に示すレーザ加工装置１のスキャナ制御装置６の構成から、学習済みモデル６５を外すとともに、ロボット移動考慮計算部６６をロボット移動考慮計算部６６Ａに変更したものである。
具体的には、ロボット移動考慮計算部６６Ａは、補間部６４から出力された補間情報（走査経路）、及びロボット制御装置５（加減速計算部５３）から受信した、駆動情報（ロボット２の位置及び姿勢（先端部２２ａに取り付けられたスキャナ４の位置及び姿勢））、並びに移動速度（先端部２２ａに取り付けられたスキャナ４の速度及び各軸角速度の指令値）に基づいて、補間情報（走査経路）を補正し、予め設定されているパラメータに基づいて各ガルバノミラー４１、４２の回転速度を算出する。その際、スキャナ４の同じ位置及び姿勢に対して、予め設定された複数の照射位置に対してガイドレーザを出力する場合、複数の照射位置に対応して各ガルバノミラー４１、４２の回転速度を複数個算出するようにしてもよい。
【００４２】
こうすることで、機械学習装置７（駆動情報取得部７１）は、ロボット制御装置５により装着されたスキャナ４を予め複数の方向及び速度で移動させるときのロボット２に係る駆動情報を取得することができる。
【００４３】
実位置姿勢情報取得部７２は、前述した機械学習用の加工プログラムを実行させた場合に、ロボット制御装置５（加減速計算部５３）により生成された駆動情報によりロボット２を移動させたときのスキャナ４の実位置データ及び実姿勢データ（機械学習時における訓練データの正解データ）を取得する。
具体的には、ワーク１０の位置に、フォトセンサ（図示せず）を設置し、当該駆動情報により、ロボット２を移動させたときのスキャナ４から射出されるガイドレーザの光を観測し、ガイドレーザの実際に照射された位置データに基づいて、スキャナ４の実位置データと実姿勢データとを算出する。例えば、実位置姿勢情報取得部７２は、指令上照射したかった位置と実際に照射した位置との差分をフォトセンサで測定することで、スキャナ４の実際の位置及び姿勢を算出してもよい。
なお、スキャナ４の実際の位置及び姿勢を算出する方法は、これに限られない。センサによる物体の位置及び姿勢の計測が可能である場合には、センサによる出力値に基づいて、位置及び姿勢を算出してもよい。センサとしては、例えば、トランスミッタが発する磁界を物体に装着するレシーバで検出することにより位置及び姿勢を計測する磁気式センサであってもよい。また、スキャナ４上に配置されたマーカをシーンに固定されたカメラによって撮影することにより位置及び姿勢を計測する光学式センサであってもよい。その外、６自由度の位置及び姿勢を計測するセンサであればいかなるセンサであっても使用することが可能である。そうすることで、スキャナ４の位置姿勢を正確に測定することができる。
以上のようにして、機械学習装置７は、ロボット制御装置５によりロボット２に装着されたスキャナ４を予め複数の方向及び速度で移動させるときのロボット２に係る駆動情報を入力データとし、その際の装着されたスキャナ４の実位置データと実姿勢データとを正解データとする訓練データを生成することができる。
【００４４】
機械学習装置７は、このようにして生成される訓練データ（「教師データ」ともいう）に基づいて、公知の教師あり学習を実行することで、装着されたスキャナ４を装着するロボット２の指令位置及び姿勢の情報と指令速度に係る情報とを含む駆動情報を入力として、そのときのスキャナ４の実位置データと実姿勢データを出力する学習済みモデル６５を生成することができる。
【００４５】
以上、説明したように、一態様によれば、（例えば、リモートレーザ溶接ロボットシステム等を含む）任意のレーザ加工装置１において、レーザをワークの所望の位置に照射して溶接加工することができる。
具体的には、スキャナ制御装置６は、ロボット制御装置５からスキャナ４の指令位置及び指令姿勢データと、指令速度データ等を取得することで、スキャナ４の実位置及び実姿勢を考慮した補正をすることで、予定した指令位置からずれのない精度の高い溶接加工を行うことができる。
【００４６】
一態様によれば、スキャナ４の指令位置及び指令姿勢データと、指令速度データ等を入力として、そのときのスキャナ４の実位置データと実姿勢データを正解データ（ラベル）として、教師あり学習を行うことで、スキャナ４の指令位置及び指令姿勢データと、指令速度データ等を入力として、そのときのスキャナ４の実位置データと実姿勢データを出力する学習モデルを生成する。
これにより、例えばロボット２の動きに伴い生じる機械的なしなりにより生じるずれ等に対して、対応することができる。
また、学習済みモデル６５を生成した後においても、例えば訓練データを新たに生成して、再学習させることで、学習済みモデル６５をアップデートすることで、より精度の高い溶接加工を行うことができる。
【００４７】
上述した一態様では、スキャナ４として、ガルバノスキャナを例示したが、これに限られない。例えば、ガルバノスキャナに換えてトレパニングスキャナであってもよい。
【００４８】
上述した機械学習部７３における教師あり学習により生成される学習済みモデルは、例えば、同じシステム構成を有するレーザ加工装置１を複数備える場合、各レーザ加工装置１で利用することができる。また、学習済みモデルを初期設定として、各レーザ加工装置１において、訓練データを追加することで、学習済みモデルを効率よくアップデートすることができる。
【００４９】
上述した実施形態では、機械学習装置７をロボット制御装置５及びスキャナ制御装置６と別の装置として説明したが、これに限られない。
例えば、ロボット制御装置５が機械学習装置７の全部又は一部の機能（例えば、駆動情報取得部７１、実位置姿勢情報取得部７２、及び機械学習部７３のうち少なくとも一つの機能部）を備えるようにしてもよい。同様に、スキャナ制御装置６が機械学習装置７の全部又は一部の機能（例えば、駆動情報取得部７１、実位置姿勢情報取得部７２、及び機械学習部７３のうち少なくとも一つの機能部）を備えるようにしてもよい。
また、機械学習装置７の全部又は一部の機能をクラウド上の仮想サーバ機能等を利用して、実現するようにしてもよい。
【００５０】
以上説明した実施形態は、ハードウェア、ソフトウェア又はこれらの組み合わせにより実現することができる。ここで、ソフトウェアによって実現されるとは、コンピュータがプログラムを読み込んで実行することにより実現されることを意味する。ハードウェアで構成する場合、各実施形態の一部又は全部を、例えば、ＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ)、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、ゲートアレイ、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）等の集積回路（ＩＣ）で構成することができる。
【００５１】
また、実施形態の一部又は全部をソフトウェアとハードウェアの組み合わせで構成する場合、フローチャートで示されるサーボ制御装置の動作の全部又は一部を記述したプログラムを記憶した、ハードディスク、ＲＯＭ等の記憶部、演算に必要なデータを記憶するＤＲＡＭ、ＣＰＵ、及び各部を接続するバスで構成されたコンピュータにおいて、演算に必要な情報をＤＲＡＭに記憶し、ＣＰＵで当該プログラムを動作させることで実現することができる。
プログラムは、様々なタイプのコンピュータ可読媒体（ｃｏｍｐｕｔｅｒ  ｒｅａｄａｂｌｅ  ｍｅｄｉｕｍ）を用いて格納され、コンピュータに供給することができる。コンピュータ可読媒体は、様々なタイプの実体のある記録媒体（ｔａｎｇｉｂｌｅ  ｓｔｏｒａｇｅ  ｍｅｄｉｕｍ）を含む。コンピュータ可読媒体の例は、磁気記録媒体（例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ）、光磁気記録媒体（例えば、光磁気ディスク）、ＣＤ−ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗ、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ（Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）、ＥＰＲＯＭ（Ｅｒａｓａｂｌｅ  ＰＲＯＭ）、フラッシュＲＯＭ、ＲＡＭ（ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ））を含む。
【００５２】
スキャナ４は、それぞれ独立したガルバノモータによって回転する３つ以上のガルバノミラーを有するものであってもよい。
【符号の説明】
【００５３】
１  レーザ加工装置
２  ロボット
３  レーザ発振器
４  スキャナ
４１、４２  ガルバノミラー
４１ａ、４２ａ  ガルバノモータ
５  ロボット制御装置
５１  プログラム解析部
５２  補間部
５３  加減速計算部
５４  モータ出力部
６  スキャナ制御装置
６１  プログラム解析部
６２  レーザ指令計算部
６３  レーザ指令出力部
６４  補間部
６５  学習済みモデル
６６  ロボット移動考慮計算部
６７  加減速計算部
６８  モータ出力部
７  機械学習装置
７１  駆動情報取得部
７２  実位置姿勢情報取得部
７３  機械学習部
１０  ワーク
Ｌ  レーザ光
【図１】
2020131267.tif 000003
【図２】
2020131267.tif 000004
【図３】
2020131267.tif 000005
【図４Ａ】
2020131267.tif 000006
【図４Ｂ】
2020131267.tif 000007
【図４Ｃ】
2020131267.tif 000008
【図４Ｄ】
2020131267.tif 000009
【図５】
2020131267.tif 000010
【図６】
2020131267.tif 000011
【図７】
2020131267.tif 000012