(57)【特許請求の範囲】
【請求項１】
ロボットに設けられる作業ツールと、前記作業ツールに搭載され、作業に先行して作業対象物の形状を検出するセンサとを有し、予め設定された主軌道上であって前記作業ツールの位置及び姿勢を示す複数の主軌道補間点に沿って前記作業ツールを動作させるとともに、前記センサの出力により前記主軌道補間点を補正するロボットの制御装置であって、
前記主軌道補間点に対応する前記作業ツールの現在位置及び姿勢を算出する現在位置算出手段と、
前記算出された現在位置及び姿勢について、前記対応する主軌道補間点に割り付けられたシリアル番号とともに記憶する記憶手段と、
前記算出された現在位置及び姿勢と前記センサの出力とに基づいて設定される前記作業ツールの目標位置及び姿勢について、前記対応する主軌道補間点に割り付けられたシリアル番号とともに設定する目標位置設定手段と、
前記設定された目標位置及び姿勢と、当該設定された目標位置及び姿勢と前記シリアル番号によって互いに対応付けられて前記記憶手段に記憶されている現在位置及び姿勢とのずれ量を算出し、前記ずれ量に基づいて、前記ずれ量を算出する際に用いたシリアル番号に対応する主軌道補間点を当該前記ずれ量に基づいて補正する補正手段と、を備えることを特徴とするロボットの制御装置。
【請求項２】
前記補正手段は、前記ずれ量から前記主軌道方向の成分を除去した修正ずれ量を算出し、前記修正ずれ量に基づいて前記作業ツールの動作を補正することを特徴とする請求項１に記載のロボットの制御装置。
【請求項３】
前記作業ツールの作業中に、前記センサにより検出される作業対象物の形状に応じて、少なくとも前記作業ツールの移動速度を含む作業条件を変更するアダプティブ機能と、
前記アダプティブ機能により前記作業ツールの移動速度が変更されたときに、前記作業ツールの動作に先立って前記主軌道上に設定されている主軌道補間点の数を前記移動速度
に基づいて変更し、新たな主軌道補間点を算出する補間点再算出手段と、を更に備えることを特徴とする請求項１又は２に記載のロボットの制御装置。
【請求項４】
前記作業ツールの作業中に、前記作業対象物及び前記ロボットの少なくとも一方を予め設定された移動データに沿って移動させる移動手段と、
前記アダプティブ機能により前記作業ツールの移動速度が変更されたときに、前記補間点再算出手段により算出された新たな主軌道補間点に対応して前記移動データの補間点を新たに算出する対応補間点算出手段と、を更に備えることを特徴とする請求項３に記載のロボットの制御装置。
【請求項５】
前記作業対象物を前記作業ツールに対して１軸方向に移動させるポジショナと、
前記センサの出力に基づく前記ポジショナの移動方向に対する補正を無視して、前記作業ツール及び前記ポジショナの動作を制御する制御手段と、を更に備えることを特徴とする請求項１〜４のいずれか一項に記載のロボットの制御装置。
【請求項６】
前記センサは、レーザの発光及び受光により作業対象物までの距離を測定する走査型のレーザセンサであることを特徴とする請求項１〜５のいずれか一項に記載のロボットの制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットに設けられる作業ツールと、前記作業ツールに配置され作業対象物の形状を検出するセンサとを有し、予め設定された主軌道に沿って前記作業ツールを動作させるとともに、前記センサの出力により前記作業ツールの動作を補正するロボットの制御装置に関するものである。
【背景技術】
【０００２】
従来、溶接ロボットの作業ツールに、進行方向側の被溶接物の形状を検出するレーザセンサを搭載し、溶接を行う際に溶接ロボットに正確な作業を行わせるようにしたロボットの制御装置が知られている（例えば、特許文献１参照）。このようなロボットの制御装置では、溶接作業に先行して被溶接物の開先の特徴点をレーザセンサにより検出し、それらを３次元的につなぎ合わせることで作業ツールの目標位置及び姿勢を演算している。そして、予め設定された主軌道に沿って作業ツールを動作させるとともに、レーザセンサから順次得られる検出結果に応じて、作業ツールの動作位置及び姿勢を倣い補正している。
【０００３】
図１４を参照して、上記のような制御装置が行う制御について説明する。制御装置１０１は、溶接ロボットを制御するロボット制御部１１１とレーザセンサを制御するセンサ制御部１２１とを備える。ロボット制御部１１１は、入力されている教示データから主軌道補間点を算出する主軌道補間点算出処理部１１２と、作業ツールの目標位置及び姿勢に基づいて倣い補正を行う倣い補正処理部１１３と、作業ツールの現在位置及び姿勢を算出する現在位置算出処理部１１４とを備える。
【０００４】
主軌道補間点算出処理部１１２は、作業ツールの移動に先行して、作業ツールの位置及び姿勢を示す複数の主軌道上の補間点（以下、主軌道補間点という）を教示データから算出する。算出された主軌道補間点は、順次倣い補正処理部１１３に出力されて、現在位置算出処理部１１４に送られる。現在位置算出処理部１１４は、作業ツールの現在位置及び姿勢を算出し、その現在位置及び姿勢をセンサ制御部１２１に送信する。センサ制御部１２１は、現在位置及び姿勢とレーザセンサによる被溶接物の形状検出結果とを照らし合わせて、作業ツールの目標位置及び姿勢を設定し、その目標位置及び姿勢を倣い補正処理部１１３に返信する。倣い補正処理部１１３は、主軌道補間点を受信した目標位置及び姿勢に置き換える。制御装置１０１は、このようなフィードバック制御を行うことで、作業ツールの目標位置及び姿勢を倣い補正し、溶接ロボットに正確な作業を行わせるようにしている。
【特許文献１】特開平９−７６０６５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、上記のような制御装置１０１では、現在位置算出処理部１１４が現在位置及び姿勢を算出してから、倣い補正処理部１１３が目標位置及び姿勢を受け取るまでの間に、時間を要してしまう。このため、この時間の間にも、主軌道補間点算出処理部１１２による主軌道補間点の出力は行われ続けることとなり、設定された目標位置及び姿勢を先の主軌道補間点に対して補正しているような状況が発生し得る。例えば、主軌道補間点Ｔ１について設定した目標位置及び姿勢を、主軌道補間点算出処理部１１２により新たに出力された主軌道補間点Ｔｎと置き換えるような補正が行われてしまう。このように先の主軌道補間点に対して目標位置及び姿勢が置き換えられると、作業ツールの進行方向に対して引き戻すような補正を行っていることになるため、進行方向に位置誤差が発生する。こうした位置誤差は、順次累積されていくため、倣い補正による実際の溶接長が予め設定された溶接長よりも短くなるという現象が発生し得る。累積位置誤差は、溶接長が長くなるほど、また溶接部に曲線部が多いほど大きくなる傾向にあるため、溶接条件によっては、この位置誤差の影響を無視できない場合がある。
【０００６】
本発明は、こうした実情に鑑みてなされたものであり、その目的は、作業対象物の形状を検出するセンサによって作業ツールの動作を倣い補正するときに、作業ツールの進行方向に発生する位置誤差を抑えることができるロボットの制御装置を提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、本発明に係るロボットの制御装置は、ロボットに設けられる作業ツールと、前記作業ツールに搭載され、作業に先行して作業対象物の形状を検出するセンサとを有し、予め設定された主軌道上であって前記作業ツールの位置及び姿勢を示す複数の主軌道補間点に沿って前記作業ツールを動作させるとともに、前記センサの出力により前記主軌道補間点を補正するロボットの制御装置であって、前記主軌道補間点に対応する前記作業ツールの現在位置及び姿勢を算出する現在位置算出手段と、前記算出された現在位置及び姿勢について、前記対応する主軌道補間点に割り付けられたシリアル番号とともに記憶する記憶手段と、前記算出された現在位置及び姿勢と前記センサの出力とに基づいて設定される前記作業ツールの目標位置及び姿勢について、前記対応する主軌道補間点に割り付けられたシリアル番号とともに設定する目標位置設定手段と、前記設定された目標位置及び姿勢と、当該設定された目標位置及び姿勢と前記シリアル番号によって互いに対応付けられて前記記憶手段に記憶されている現在位置及び姿勢とのずれ量を算出し、前記ずれ量に基づいて、前記ずれ量を算出する際に用いたシリアル番号に対応する主軌道補間点を当該前記ずれ量に基づいて補正する補正手段と、を備えることを特徴とする。
【０００８】
同構成によれば、ロボットの制御装置は、作業ツールの現在位置及び姿勢を算出し、算出された現在位置及び姿勢を記憶するとともに、算出された現在位置及び姿勢とセンサにより検出される作業対象物の形状とから、作業ツールの目標位置及び姿勢を設定する。そして、設定された目標位置及び姿勢と記憶されている現在位置及び姿勢とのずれ量を算出し、そのずれ量に基づいて作業ツールの現在位置及び姿勢を倣い補正する。
【０００９】
このように、作業ツールの現在位置及び姿勢を記憶しておき、記憶されている現在位置及び姿勢と設定された目標位置及び姿勢とのずれ量を算出すると、目標位置及び姿勢を設定する際に用いた現在位置及び姿勢に対する目標位置及び姿勢を把握することができる。このため、ロボットの制御装置は、予め設定された主軌道上の補間点（主軌道補間点）に対する目標位置及び姿勢を、各主軌道補間点について管理することができる。
【００１０】
従って、目標位置及び姿勢を設定した時点で、既に先の主軌道補間点が出力されていることがあっても、先の主軌道補間点に対して目標位置及び姿勢が置き換えられることがなくなり、目標位置及び姿勢の置き換えに起因して作業ツールの進行方向に位置誤差が発生することを防止することができる。これにより、予め設定されている作業ツールの軌道長に対して倣い補正による実際の軌道長が短くなるといった状況を極力回避することができる。
【００１１】
なお、上記構成において、前記補正手段は、前記ずれ量から前記主軌道方向の成分を除去した修正ずれ量を算出し、前記修正ずれ量に基づいて前記作業ツールの動作を補正するようにしてもよい。
【００１２】
作業ツールの動作を倣い補正する場合に、作業ツールが所定の速度で移動して、目標位置の設定が所定の周期で行われると、目標位置間が所定の距離に保たれる。このため、主軌道からずれた位置に目標位置が設定されると、目標位置間の主軌道方向成分が目標位置間の距離よりも短くなってしまう。その結果、主軌道方向の位置誤差が累積し、予め設定された主軌道の長さに対して倣い補正により生成された主軌道方向の長さが短くなることがある。また、センサの検出精度誤差や溶接ロボットの軌跡誤差等が発生する場合もあり、これらの誤差は主軌道方向にも生じ得る。
【００１３】
この点、同構成によれば、ロボットの制御装置は、現在位置及び姿勢と目標位置及び姿勢とから求められるずれ量から、主軌道方向の成分を除去した修正ずれ量を算出し、その修正ずれ量に基づいて作業ツールの動作を補正するため、主軌道方向に位置誤差が発生することを抑えることができる。このため、主軌道方向に位置誤差が累積することを抑えて、予め設定された主軌道の長さに対して倣い補正により生成された主軌道方向の長さが短くなることを防止することができる。
【００１４】
また、上記構成において、前記作業ツールの作業中に、前記センサにより検出される作業対象物の形状に応じて、少なくとも前記作業ツールの移動速度を含む作業条件を変更するアダプティブ機能と、前記アダプティブ機能により前記作業ツールの移動速度が変更されたときに、前記作業ツールの動作に先立って前記主軌道上に設定されている主軌道補間点の数を前記移動速度に基づいて変更し、新たな主軌道補間点を算出する補間点再算出手段と、を更に備えるようにしてもよい。
【００１５】
同構成によれば、ロボットの制御装置は、作業ツールの作業中に、センサにより検出される作業対象物の形状に応じて、少なくとも作業ツールの移動速度を含む作業条件を変更するアダプティブ機能を有する。そして、アダプティブ機能により作業ツールの移動速度が変更されたときに、作業ツールの動作に先立って主軌道上に設定されている主軌道補間点、すなわち作業ツールの以後の動作目標となる主軌道補間点の数を前記移動速度に基づいて変更し、新たな主軌道補間点を算出する。このため、作業ツールの移動速度の変更により、主軌道補間点間距離が変化する場合においても、主軌道補間点の数を前記移動速度に基づいて変更することで、予め設定されている作業ツールの軌道長に対して実際の軌道長が変化することを抑制することができる。すなわち、移動速度が予め設定されている速度よりも遅くなる場合には、主軌道補間点の数を増加させ、移動速度が予め設定されている速度よりも速くなる場合には、主軌道補間点の数を減少させることにより、実際の作業ツールの軌道長を予め設定されている軌道長に合わせることができる。
【００１６】
また、上記構成において、前記作業ツールの作業中に、前記作業対象物及び前記ロボットの少なくとも一方を予め設定された移動データに沿って移動させる移動手段と、前記アダプティブ機能により前記作業ツールの移動速度が変更されたときに、前記補間点再算出手段により算出された新たな主軌道補間点に対応して前記移動データの補間点を新たに算出する対応補間点算出手段と、を更に備えるようにしてもよい。
【００１７】
同構成によれば、ロボットの制御装置は、作業ツールの作業中に、作業対象物及びロボットの少なくとも一方を予め設定された移動データに沿って移動させ、作業対象物とロボットとの相対位置を変化させる移動手段を有する。そして、アダプティブ機能により作業ツールの移動速度が変更されたときに、補間点再算出手段により算出された新たな主軌道補間点に対応して移動データの補間点を新たに算出する。このため、作業ツールの移動速度が変更されたにもかかわらず、移動手段が予め設定された移動データに沿って移動し続けることを防止することができ、作業ツールの動作と移動手段の動作とを同期して変化させることができる。従って、作業対象物とロボットとの相対位置が、予め設定されている相対位置とずれてしまうことを抑えることができるため、作業ツールの作業対象物に対する主軌道方向のずれや、作業ツールの作業対象物に対する姿勢のずれを抑制することができる。これにより、主軌道方向のずれに起因する作業ツールの軌道長の変化や、姿勢のずれに起因する作業不良等を好適に抑えることができる。
【００１８】
また、上記構成において、前記作業対象物を前記作業ツールに対して１軸方向に移動させるポジショナと、前記センサの出力に基づく前記ポジショナの移動方向に対する補正を無視して、前記作業ツール及び前記ポジショナの動作を制御する制御手段と、を更に備えるようにしてもよい。
【００１９】
同構成によれば、ロボットの制御装置は、作業対象物を作業ツールに対して１軸方向に移動させるポジショナを備え、作業ツールに配置されたセンサにより検出される作業対象物の形状からロボットの動作を倣い補正する際に、ポジショナの移動方向に対する補正を無視して、作業ツール及びポジショナの移動を制御する。このため、倣い補正により発生するポジショナの移動方向のずれ、すなわち位置誤差を抑えることができ、予め設定されている作業ツールの作業軌道長に対して、倣い補正による実際の作業軌道長が短くなるといった状況を回避することができる。
【００２０】
なお、上記のロボットの制御装置の構成において、前記センサは、レーザの発光及び受光により作業対象物までの距離を測定する走査型のレーザセンサであってもよい。
同構成によれば、作業対象物の形状を検出するセンサは、レーザの発光及び受光により作業対象物までの距離を測定する走査型のレーザセンサである。このため、こうした非接触型のセンサを用いることで、検出精度誤差等がある程度発生してしまうような場合であっても、上記のロボットの制御装置による制御によって、作業ツールの進行方向の位置誤差又はポジショナの移動方向の位置誤差の発生を抑えることができる。従って、予め設定されている作業ツールの軌道長に対して倣い補正による実際の軌道長が短くなることを抑えることができる。
【発明を実施するための最良の形態】
【００２１】
（第１実施形態）
以下、図１〜８を参照して、本発明に係るロボットの制御装置を溶接ロボットの制御装置に適用した第１実施形態について説明する。
【００２２】
図１は溶接ロボットの制御装置１の構成を示すブロック図である。溶接ロボットの制御装置１は、ワーク（作業対象物）Ｗに対してアーク溶接を自動で行うように制御するものであり、溶接作業を行うマニピュレータ１１と、マニピュレータ１１を制御するロボット制御部２１と、ワークＷの形状を検出するセンサとしてのレーザセンサ３１と、レーザセンサ３１を制御するセンサ制御部４１とを備える。
【００２３】
マニピュレータ１１は、フロア等に固定されるベース部材１２と、複数の軸を介して連結された複数のアーム１３とを備える。最も先端側に位置するアーム１３の先端部には、作業ツールとしての溶接トーチ１４が設けられる。溶接トーチ１４は、溶加材としてのワイヤ１５を内装し、図示しない送給装置によって送り出されたワイヤ１５の先端とワークＷとの間にアークを発生させ、その熱でワイヤ１５を溶着させることによりワークＷに対して溶接を施す。アーム１３間には複数のモータが配設されており、モータの駆動によって溶接トーチ１４を前後左右に自在に移動できるように構成されている。
【００２４】
ロボット制御部２１は、前記モータを駆動制御することにより、予め設定された教示データの主軌道に沿って溶接トーチ１４を動作させる。また、ロボット制御部２１は、溶接電流及び溶接電圧といった溶接条件を溶接電源５１に対して出力し、溶接電源５１からパワーケーブル５２を通じて供給される電力によって溶接作業を行わせる。
【００２５】
レーザセンサ３１は、レーザの発光及び受光によりワークＷまでの距離を測定する走査型のレーザセンサであり、溶接トーチ１４に搭載される。図２にレーザセンサ３１の概略構成を示す。レーザセンサ３１は、レーザをワークＷに向けて発光する発光部３２と、ワークＷで反射したレーザを受光する受光部３３と、発光及び受光されるレーザを反射するミラースキャナ３４とを備える。発光部３２で発光されたレーザは、ミラースキャナ３４で反射してワークＷに照射される。ワークＷで乱反射したレーザは、ミラースキャナ３４で反射して受光部３３に導かれる。受光部３３は、ＣＣＤラインセンサにより構成されており、受光量分布の重心位置からワークＷまでの距離を測定する。また、ミラースキャナ３４は回転軸３４ａを中心に所定角度回転可能に構成されており、ミラースキャナ３４の回転によって例えばワークＷの位置Ａから位置Ｂまでの範囲を走査しながら距離を測定する。
【００２６】
センサ制御部４１は、レーザセンサ３１を駆動制御し、測定される距離情報からワークＷの開先形状を検出する。測定対象のワークＷが図２に示すような重ね継手である場合、ミラースキャナ３４を回転させて、所定の範囲を走査しながら各サンプリング点について距離を測定すると、図３に示すような２次元データが得られる。センサ制御部４１は、複数のサンプリング点ＣからワークＷの開先形状Ｗｆを作成し、開先形状ＷｆからワークＷの特徴点Ｄを取得する。センサ制御部４１は、溶接トーチ１４が移動した位置においても、同様の手法で距離を測定してワークＷの特徴点Ｄを取得する。
【００２７】
そして、図４に示すように、取得された特徴点Ｄをつなぎ合わせることで特徴点の３次元軌道Ｅを生成する。センサ制御部４１は、このように求めた３次元軌道Ｅから溶接トーチ１４の目標位置及び姿勢を設定する。すなわち、３次元軌道Ｅの接線ベクトルを進行方向ベクトルｖとして目標位置を設定するとともに、ワークＷの法線に対して所定の目標相対角度αを与えることで目標姿勢を設定する。
【００２８】
なお、目標位置及び姿勢を設定する際に、レーザセンサ３１により検出される開先情報だけでは、レーザセンサ３１を基準としたセンサ座標系に対する位置及び姿勢しか算出できない。このため、センサ制御部４１は、ロボット制御部２１から溶接トーチ１４の現在位置及び姿勢を取得して、レーザセンサ３１を基準としたセンサ座標系からマニピュレータ１１を基準としたロボットの基準座標系への変換を適宜行う。すなわち、センサ制御部４１は、ロボット制御部２１から取得した現在位置及び姿勢と、センサ制御部４１に予め記憶されているセンサ座標系から基準座標系への同次変換行列と、レーザセンサ３１により検出される開先情報とから、基準座標系における目標位置及び姿勢を算出する。
【００２９】
次に、マニピュレータ１１により溶接作業が行われるときに、ロボット制御部２１及びセンサ制御部４１が行う制御について説明する。ロボット制御部２１には、溶接作業が行われる前に、溶接が行われる際のマニピュレータ１１の動作及び溶接条件等を示す教示データが入力されている。図５にロボット制御部２１及びセンサ制御部４１のブロック図を示す。
【００３０】
ロボット制御部２１は、教示データから溶接トーチ１４の主軌道補間点を算出する主軌道補間点算出処理部２２と、溶接トーチ１４の目標位置及び姿勢に基づいて倣い補正を行う倣い補正処理部２３と、主軌道補間点を一時記憶する主軌道補間点バッファ２４と、溶接トーチ１４の現在位置及び姿勢を算出する現在位置算出処理部２５とを備える。また、ロボット制御部２１は、主軌道補間点にシリアル番号を付与して割り付けられるシリアルＩＤを一時記憶する第１バッファ２６と、現在位置算出処理部２５で算出された現在位置及び姿勢について、対応する主軌道補間点に割り付けられたシリアル番号とともに一時記憶する記憶手段としての第２バッファ２７とを備える。
【００３１】
主軌道補間点算出処理部２２は、溶接トーチ１４の移動に先行して、溶接トーチ１４の位置及び姿勢を示す複数の主軌道補間点を教示データから算出する。算出された主軌道補間点は、順次倣い補正処理部２３に出力される。そして、主軌道補間点は、倣い補正処理部２３から主軌道補間点バッファ２４を介して現在位置算出処理部２５に送られる。
【００３２】
現在位置算出手段としての現在位置算出処理部２５は、マニピュレータ１１に内蔵されているエンコーダ等から読み出した位置検出値に基づいて、溶接トーチ１４の現在位置及び姿勢を算出する。算出された現在位置及び姿勢は、センサ制御部４１に送信されるとともに、第１バッファ２６のシリアルＩＤに基づいて、対応する主軌道補間点に割り付けられたシリアル番号とともに、第２バッファ２７に記憶される。例えば、算出された現在位置及び姿勢が主軌道補間点Ｔｒ１のものである場合には、第２バッファ２７に、算出された現在位置及び姿勢と主軌道補間点Ｔｒ１とが対応付けられて記憶される。
【００３３】
目標位置設定手段としてのセンサ制御部４１は、現在位置算出処理部２５から現在位置及び姿勢を取得し、レーザセンサ３１によるワークＷの形状検出結果と照らし合わせて、溶接トーチ１４の目標位置及び姿勢を設定する。設定された目標位置及び姿勢は、倣い補正処理部２３に送信される。
【００３４】
補正手段としての倣い補正処理部２３は、センサ制御部４１から目標位置及び姿勢を取得するとともに、目標位置及び姿勢を設定する際に用いた現在位置及び姿勢を、シリアル番号を参照して第２バッファ２７から呼び出す。そして、取得した目標位置及び姿勢と呼び出した現在位置及び姿勢とを比較して、そのずれ量を算出する。主軌道補間点Ｔｒ１における位置のずれ量ｄ１は、現在位置Ｐｐ１と目標位置Ｐｔ１とから、以下の式（１）のように求められる。
【００３５】
【数１】
0005118821.tif 000002
但し、
【００３６】
【数２】
0005118821.tif 000003
【００３７】
【数３】
0005118821.tif 000004
とする。
【００３８】
このようにして、目標位置及び姿勢と現在位置及び姿勢とは、各主軌道補間点に割り付けられるシリアルＩＤによって管理される。すなわち、各主軌道補間点にシリアル番号を付与することで、主軌道補間点の位置及び姿勢の履歴が管理される。このため、現在位置算出処理部２５が現在位置及び姿勢を算出してから、倣い補正処理部２３が目標位置及び姿勢を受け取るまでの間に、主軌道補間点算出処理部２２による主軌道補間点の出力があっても、新たに出力された主軌道補間点に対して目標位置及び姿勢を設定するような倣い補正が行われなくなる。従って、溶接トーチ１４の進行方向に引き戻すような補正が行われなくなり、進行方向に発生する位置誤差を抑えることができる。
【００３９】
また、倣い補正処理部２３は、溶接トーチ１４の進行方向に発生する位置誤差を抑えるために、さらに以下のような制御を行う。上記の倣い補正は、溶接トーチ１４が教示データにより設定された所定の進行速度で移動している状態で行われる。このため、主軌道補間点算出処理部２２による主軌道補間点の出力が所定の周期で行われると、主軌道補間点間の距離が一定に保たれる。これにより、倣い補正によって主軌道からずれた位置に補間点が設定されると、主軌道補間点間の主軌道方向成分が主軌道補間点間の距離よりも僅かに短くなってしまう。
【００４０】
図６に主軌道が直線である場合の主軌道補間点の位置を示す。図６（ａ）は主軌道補間点算出処理部２２により生成される主軌道補間点の位置を示したものであり、主軌道補間点は主軌道上に一定の間隔Ｇをもって位置する。図６（ｂ）は倣い補正によって主軌道からずれた位置に主軌道補間点が補正されたときの主軌道補間点の位置を示したものであり、各主軌道補間点の間隔は図６（ａ）の場合と同じ間隔Ｇとなる。
【００４１】
図６（ｂ）に示すように主軌道補間点が補正されると、各主軌道補間点において主軌道方向に僅かな位置誤差が発生し、予め設定された主軌道の長さＨに対して倣い補正により生成された主軌道方向の長さが誤差Ｉ分短くなる。こうした位置誤差は、溶接長が長くなるほど、またレーザセンサ３１による計測の安定性が悪くなるほど大きくなる。また、主軌道が曲線の場合には、直線の場合よりも位置誤差が大きくなる。そこで、倣い補正処理部２３は、図６（ｂ）に示されるような誤差Ｉを除去するための制御を行う。
【００４２】
図７は、基準座標系Ｓ１において主軌道補間点を原点Ｏとしたときのずれ量ｄ１を示したものである。倣い補正処理部２３は、予め設定されている主軌道方向を基準とした主軌道座標系Ｓ２を生成する。主軌道座標系Ｓ２は、主軌道方向に形成されたＹ２軸と、Ｙ２軸と直交して原点Ｏを通る平面内に、互いに直交するように形成されたＸ２軸及びＺ２軸とを座標軸としている。倣い補正処理部２３は、ずれ量ｄ１を基準座標系Ｓ１から主軌道座標系Ｓ２に変換する。このときの基準座標系Ｓ１から主軌道座標系Ｓ２への同次変換行列Ｆ１は、以下のように表される。
【００４３】
【数４】
0005118821.tif 000005
但し、
【００４４】
【数５】
0005118821.tif 000006
【００４５】
【数６】
0005118821.tif 000007
【００４６】
【数７】
0005118821.tif 000008
である。
【００４７】
ここで、ベクトルｅ，ｆ，ｇは、それぞれ主軌道座標系Ｓ２から見たＸ１軸，Ｙ１軸，Ｚ１軸の正規化されたベクトルを示す。倣い補正処理部２３は、ずれ量ｄ１を主軌道座標系Ｓ２に変換した後、主軌道方向であるＹ２軸方向の成分を除去して、修正ずれ量ｄ'１を作成する。すなわち、ずれ量ｄ１が主軌道座標系で（ｄｕ１，ｄｖ１，ｄｗ１）と表されるときに、修正ずれ量ｄ'１は（ｄｕ１，０，ｄｗ１）となる。このため、修正ずれ量ｄ'１は、図７に示すように、ずれ量ｄ１がＸ２軸及びＺ２軸で形成される平面に投影されたベクトルとして表される。
【００４８】
そして、倣い補正処理部２３は、修正ずれ量ｄ'１を主軌道座標系Ｓ２から基準座標系Ｓ１に変換する。このときの主軌道座標系Ｓ２から基準座標系Ｓ１への同次変換行列Ｆ２は、以下のように表される。
【００４９】
【数８】
0005118821.tif 000009
但し、
【００５０】
【数９】
0005118821.tif 000010
【００５１】
【数１０】
0005118821.tif 000011
【００５２】
【数１１】
0005118821.tif 000012
である。
【００５３】
ここで、ベクトルｈ，ｉ，ｊは、それぞれ基準座標系Ｓ１から見たＸ２軸，Ｙ２軸，Ｚ２軸の正規化されたベクトルを示す。倣い補正処理部２３は、上記のように算出された修正ずれ量ｄ'１に基づいて、主軌道補間点における位置及び姿勢を倣い補正する。すなわち、以下の式（１２）に示すように、主軌道補間点Ｔｒ１に対して修正ずれ量ｄ'１が加えられ、補正された目標主軌道補間点Ｔ'ｒ１が求められる。
【００５４】
【数１２】
0005118821.tif 000013
このように目標主軌道補間点を求めると、レーザセンサ３１が算出したずれ量ｄ１のうち、主軌道方向以外の方向に対してのみ倣い補正を行うことになるため、溶接トーチ１４の主軌道方向距離に影響を与えないようにすることができる。このため、溶接トーチ１４が教示データにより設定された所定の進行速度で移動しているときに、主軌道方向の位置誤差の発生をなくすことができる。
【００５５】
図８に、図６と同じワークＷの開先に対して倣い補正を行ったときの主軌道補間点の位置を示す。図８（ａ）は、図６（ａ）の場合と同様に主軌道補間点算出処理部２２により生成される主軌道補間点の位置を示したものであり、図８（ｂ）は、修正ずれ量に基づいて補正された目標主軌道補間点の位置を示したものである。修正ずれ量に基づいて主軌道補間点が補正されると、図８（ｂ）に示すように、主軌道に対する垂直平面内の方向については倣い補正が行われるが、主軌道方向へは補正が行われない。従って、主軌道補間点間の主軌道方向における間隔Ｇは、補正によっても変化しないため、図６（ｂ）に示されるような主軌道の長さＨに対する誤差Ｉを除去することができる。
【００５６】
補正された目標主軌道補間点は、主軌道補間点バッファ２４を介して現在位置算出処理部２５に送られる。そして、同様の手順を以って倣い補正が繰り返される。制御装置１のロボット制御部２１及びセンサ制御部４１は、このようなフィードバック制御を行うことで溶接トーチ１４の動作を制御し、溶接トーチ１４の進行方向に発生する位置誤差を抑えている。
【００５７】
上記第１実施形態の溶接ロボットの制御装置１によれば、以下のような効果を得ることができる。
（１）第１実施形態では、制御装置１は、センサ制御部４１で設定される目標位置及び姿勢と、その目標位置及び姿勢を設定する際に用いた現在位置及び姿勢とを、各主軌道補間点に割り付けられるシリアルＩＤによって管理している。そして、ロボット制御部２１の倣い補正処理部２３は、前記目標位置及び姿勢と前記現在位置及び姿勢とのずれ量を算出し、そのずれ量に基づいて溶接トーチ１４の動作を倣い補正する。このため、現在位置算出処理部２５が現在位置及び姿勢を算出してから、倣い補正処理部２３が目標位置及び姿勢を受け取るまでの間に、主軌道補間点算出処理部２２による主軌道補間点の出力があっても、倣い補正処理部２３において、新たに出力された主軌道補間点に対して目標位置及び姿勢を設定するような倣い補正が行われなくなる。従って、溶接トーチ１４の進行方向に引き戻すような補正が行われなくなり、進行方向に発生する位置誤差を抑えることができる。これにより、倣い補正による実際の溶接長が予め設定された溶接長よりも短くなるといった状況を極力回避することができる。
【００５８】
（２）第１実施形態では、制御装置１は、現在位置及び姿勢と目標位置及び姿勢とから求められるずれ量から、主軌道方向の成分を除去した修正ずれ量を算出し、その修正ずれ量に基づいて、主軌道補間点における位置及び姿勢を倣い補正する。このため、主軌道方向に位置誤差が発生することを抑えることができ、位置誤差が累積することに起因して予め設定された主軌道の長さに対して倣い補正により生成された主軌道方向の長さが短くなることを防止することができる。
【００５９】
（第２実施形態）
次に、図９〜１２を参照して、本発明に係るロボットの制御装置を溶接ロボットの制御装置に適用した第２実施形態について説明する。第２実施形態の制御装置では、ロボット制御部２１，レーザセンサ３１，センサ制御部４１，溶接電源５１の構成及び溶接トーチ１４の倣い補正の制御については第１実施形態と同一であり、制御装置が、マニピュレータ１１及びワークＷを移動する機構を有する点と、アダプティブ溶接機能を備える点とが第１実施形態と異なる。なお、以下に説明する実施形態において、第１実施形態と同一構成については同一符号を付し、その重複する説明を省略又は簡略する。
【００６０】
図９は、第２実施形態に係る溶接ロボットの制御装置２の構成を示すブロック図である。制御装置２は、ワークＷを移動させるポジショナ７１と、マニピュレータ１１を移動させるスライダ７２とを備える。ポジショナ７１は、ワークＷを保持するとともに、モータ等の駆動によってワークＷを回転移動及びスライド移動させ、ワークＷがマニピュレータ１１の溶接トーチ１４に対して任意の姿勢をとれるように構成されている。ポジショナ７１の動作は、ロボット制御部２１により駆動制御される。スライダ７２は、モータ等の駆動によってマニピュレータ１１を一軸方向（図９中のＳＬ方向）にスライド移動できるように構成されている。このスライダ７２により、ワークＷが比較的大きい場合であっても溶接トーチ１４が常にワークＷと対向できるようにしている。スライダ７２の動作は、ロボット制御部２１により駆動制御される。ここで、ポジショナ７１及びスライダ７２は、ワークＷ及びマニピュレータ１１の少なくとも一方を予め設定された教示データに沿って移動させる移動手段に相当する。
【００６１】
ロボット制御部２１は、ポジショナ７１によるワークＷの姿勢の変更、スライダ７２によるマニピュレータ１１の移動、及び溶接トーチ１４の移動を同時に制御することで、ポジショナ７１、スライダ７２及び溶接トーチ１４のシンクロモーション制御を行う。こうしたシンクロモーション制御は、予め設定された教示データに基づいて行われ、これにより、溶接トーチ１４とワークＷとの相対位置が位置決めされる。なお、この制御装置２では、良好な溶接作業が行われるように、常に溶接トーチ１４がポジショナ７１側（下向き）に向って配置されるような制御が行われる。また、ワークＷの溶接トーチ１４に対する相対速度は、シンクロモーション制御により指定された一定速度となるように制御される。
【００６２】
また、制御装置２は、アダプティブ機能としてのアダプティブ溶接機能を備えている。アダプティブ溶接機能は、レーザセンサ３１によるワークＷの開先におけるギャップ量や開先面積の計測値に基づいて、溶接速度、溶接電流、溶接電圧といった溶接条件をリアルタイムに変更し、溶接不良となる要因を少なくするための機能である。例えば、ワークＷの開先におけるギャップ量が大きいと検出された場合には、溶接トーチ１４の移動速度を低くして、その箇所において溶接不良が発生することを抑える。センサ制御部４１は、ギャップ量等の計測値に対応する溶接速度等の溶接条件を予め記憶した変換テーブルを有している。レーザセンサ３１から計測値が入力されると、センサ制御部４１は、前記変換テーブルにより溶接速度等の溶接条件を算出する。算出された溶接条件は、センサ制御部４１が設定した溶接トーチ１４の目標位置及び姿勢とともに、ロボット制御部２１に送信される。ロボット制御部２１は、受信した溶接条件に基づいて溶接トーチ１４の動作をリアルタイムに駆動制御する。
【００６３】
アダプティブ溶接機能により溶接トーチ１４の移動速度が変更されるときの制御について説明する。ロボット制御部２１は、溶接トーチ１４の移動速度を設定するアダプティブ速度Ｖａを有し、溶接トーチ１４の移動速度がアダプティブ速度Ｖａとなるように制御を行う。予め設定された教示データに基づく溶接トーチ１４の教示速度をＶｓとすると、溶接開始時には、アダプティブ速度Ｖａは以下のようになる。
【００６４】
【数１３】
0005118821.tif 000014
溶接が開始された後、センサ制御部４１は、ギャップ量等の計測値に基づいて溶接トーチ１４の目標速度Ｖｔを適宜算出し、その結果をロボット制御部２１に送信する。ロボット制御部２１は、センサ制御部４１から目標位置及び姿勢とともに目標速度Ｖｔを受信すると、アダプティブ速度Ｖａを以下のように設定する。
【００６５】
【数１４】
0005118821.tif 000015
ここで、主軌道補間点に対する補間周期をＴｉとすると、１補間点当たりの主軌道上の移動距離、すなわち主軌道補間点間距離Ｄｐ（ｎ＿ｎ＋１）は、以下のようになる。
【００６６】
【数１５】
0005118821.tif 000016
また、主軌道上の累積移動距離をＤｆ（ｎ）とすると、累積移動距離Ｄｆ（ｎ）は以下のようにして更新されていく。
【００６７】
【数１６】
0005118821.tif 000017
このようにアダプティブ溶接機能が作用すると、アダプティブ速度Ｖａのみが変更されてしまうため、主軌道補間点間距離Ｄｐは教示データから生成されたものと異なる値になる。主軌道補間点の数は教示データから求められた数に固定されているため、主軌道補間点間距離Ｄｐが変化すると、累積移動距離Ｄｆに誤差が生じ、実際の溶接長が予め設定された溶接長に対して変化してしまうおそれがある。また、溶接トーチ１４の移動速度の変更に伴って、溶接トーチ１４とポジショナ７１及びスライダ７２との動作の同期が正確に行われなくなると、ワークＷに対する溶接トーチ１４の姿勢が不適切となる場合や、予め設定された溶接長を守ることができなくなる場合がある。
【００６８】
一例として、図１０に示すようなワークＷに対して溶接を行う場合を説明する。溶接トーチ１４はワークＷの位置ＷＡから位置ＷＥまでの区間の溶接を行う。溶接トーチ１４及びポジショナ７１は、予め設定された教示データに基づいて動作する。溶接トーチ１４及びポジショナ７１の教示データとしては、開始点としての位置ＷＡ及び終了点としての位置ＷＥに加えて、主軌道が直線から円弧に変化する位置ＷＢ、円弧の中点である位置ＷＣ、主軌道が円弧から直線に変化する位置ＷＤの５箇所が教示点として与えられている。
【００６９】
ワークＷの位置ＷＡから位置ＷＥまでの区間の溶接工程を実行するときは、ロボット制御部２１は、図１０（ａ）に示すように、溶接トーチ１４が位置ＷＡにある状態において溶接トーチ１４の直線移動を開始させる。そして、溶接トーチ１４が位置ＷＢに至ったときに、ポジショナ７１の回転運動を開始させ、図１０（ｂ）に示すように溶接トーチ１４が回転中点である位置ＷＣを通過して、図１０（ｃ）に示すように位置ＷＤに至ったときに、ポジショナ７１の回転運動を終了させる。すなわち、溶接トーチ１４が位置ＷＢから位置ＷＤまで移動するときには、溶接トーチ１４とポジショナ７１とが共に動作し、シンクロモーション制御が行われる。そして、溶接トーチ１４が位置ＷＥに至ったときに、溶接トーチ１４の直線移動を終了させて、ワークＷの溶接工程を終了する。
【００７０】
図１０のように設定された溶接工程において、アダプティブ溶接機能が作用したときの状態を図１１に示す。溶接トーチ１４が位置ＷＡから位置ＷＢに至るまでの間に、アダプティブ溶接機能が作用し、所定の区間で溶接トーチ１４の移動速度が低下した場合を仮定する。この場合、溶接トーチ１４の移動速度が低下したときに、予め設定された主軌道補間点間の距離が短くなることから、ロボット制御部２１は、図１１（ａ）に示すように、位置ＷＢの手前の位置ＷＢ’において、溶接トーチ１４が位置ＷＢに至ったと判断してしまう。そして、溶接トーチ１４が位置ＷＢ’にある状態においてポジショナ７１の回転運動を開始させる。このため、図１１（ｂ）に示すように、溶接トーチ１４がポジショナ７１の回転中点である位置ＷＣに達しているとロボット制御部２１が認識しているときに、溶接トーチ１４は位置ＷＣの手前の位置ＷＣ’までにしか達していない状態となる。このとき、溶接トーチ１４は、同図に示すように、後退角βをもってワークＷに対向する。溶接トーチ１４が後退角を持つと、溶接トーチ１４から供給されるシールドガスが進行方向と逆方向に噴出されることとなるため、溶接不良の発生する可能性が高くなる。
【００７１】
そして、ロボット制御部２１は、図１１（ｃ）に示すように、溶接トーチ１４が位置ＷＤの手前の位置ＷＤ’に至ったときに、ポジショナ７１の回転運動を終了させる。溶接トーチ１４が後退角を持つ状態は、溶接トーチ１４が位置ＷＢ’からワークＷの円弧部が終了する位置ＷＤに至るまで継続する。そして、ロボット制御部２１は、溶接トーチ１４が位置ＷＥの手前の位置ＷＥ’ に至ったときに、溶接トーチ１４の直線移動を終了させて、ワークＷの溶接工程を終了する。このように、溶接トーチ１４が位置ＷＥ’にあるときに溶接工程が終了するため、実際の溶接長が予め設定された溶接長よりも短くなる。
【００７２】
そこで、本実施形態の制御装置２は、アダプティブ溶接機能により発生する溶接トーチ１４の進行方向の位置誤差を抑えて、図１１（ｂ）に示すような溶接トーチ１４が後退角を持つ状態や、図１１（ｃ）に示すような溶接長が短くなる状態を解消する制御を行う。以下に、制御装置２が行う制御について説明する。
【００７３】
図１２に制御装置２のロボット制御部２１及びセンサ制御部４１のブロック図を示す。制御装置２は、第１実施形態に係る制御装置１の構成に加えて、アダプティブ溶接機能が作用したときに、主軌道補間点の数を再計算する主軌道補間点数算出処理部２８を備える。主軌道補間点数算出処理部２８は、アダプティブ溶接機能が作用してアダプティブ速度Ｖａが変更されたときに、教示点間距離Ｄｔ（例えば図１０に示す位置ＷＡから位置ＷＢまでの距離）から主軌道消化率Ｒｐを算出する。主軌道消化率Ｒｐは、各教示点間の補間動作の進行度合いを表すものであり、教示点間距離Ｄｔと現時点の累積移動距離Ｄｆとによって、以下のように表される。
【００７４】
【数１７】
0005118821.tif 000018
ここで、Ｒｐが１未満の場合は、教示点間の補間動作が完了していないため、主軌道補間点数算出処理部２８は、アダプティブ速度Ｖａが変更された後の教示点間の残存距離Ｄｒを以下のように求める。
【００７５】
【数１８】
0005118821.tif 000019
そして、教示点間の残存距離Ｄｒとアダプティブ速度Ｖａとから、残存距離Ｄｒ中に設定されている主軌道補間点の数を計算し直す。すなわち、溶接トーチ１４の教示点間の移動距離を教示点間距離Ｄｔに一致させるために、予め教示データから求められている残存距離Ｄｒ中の主軌道補間点の数を、残存距離Ｄｒとアダプティブ速度Ｖａとに応じて変更する。残存距離Ｄｒ中の主軌道補間点数ｎｒは、補間周期Ｔｉを用いて以下のように求められる。
【００７６】
【数１９】
0005118821.tif 000020
これにより、アダプティブ速度Ｖａが変更されて主軌道補間点間距離Ｄｐが変化する場合においても、残存距離Ｄｒ中の主軌道補間点数ｎｒを変更することで、溶接トーチ１４の教示点間の移動距離と教示点間距離Ｄｔとを一致させることができる。すなわち、アダプティブ速度Ｖａが低下する場合には、主軌道補間点数ｎｒを増加させ、アダプティブ速度Ｖａが上昇する場合には、主軌道補間点数ｎｒを減少させることにより、実際の溶接トーチ１４の教示点間の移動距離を教示点間距離Ｄｔに合わせることができる。
【００７７】
主軌道補間点数算出処理部２８において残存距離Ｄｒ中の主軌道補間点数ｎｒが求められると、ロボット制御部２１の主軌道補間点算出処理部２２は、主軌道補間点数ｎｒから新たな主軌道補間点を算出する。ここで、主軌道補間点数算出処理部２８と主軌道補間点算出処理部２２とは補間点再算出手段に相当する。そして、新たな主軌道補間点に基づいて、第１実施形態と同様の手順をもって倣い補正が行われる。なお、アダプティブ速度Ｖａは、主軌道補間点の現在位置及び姿勢とともに、第１バッファ２６のシリアルＩＤに基づいて、対応する主軌道補間点に割り付けられたシリアル番号とともに、第２バッファ２７に一時記憶される。
【００７８】
また、式（１７）においてＲｐが１以上の場合は、教示点間の補間動作が完了しているため、ロボット制御部２１は、次の教示点間の補間動作の処理を行う。上記のような主軌道補間点数ｎｒの変更は、アダプティブ速度Ｖａが変更されるごとに行われる。
【００７９】
次に、ロボット制御部２１が行うポジショナ７１及びスライダ７２の制御について説明する。ロボット制御部２１は、アダプティブ溶接機能が作用してアダプティブ速度Ｖａが変更されたときに、ポジショナ７１及びスライダ７２に対しても、溶接トーチ１４に対する制御と同様の制御を行う。すなわち、ロボット制御部２１は、溶接トーチ１４の主軌道補間点に対応するポジショナ７１及びスライダ７２の補間点を教示データ（移動データ）から予め設定しておく。そして、アダプティブ速度Ｖａが変更されたときに、教示点間の総移動距離又は総移動角度といった総移動量と、式（１７）で求めた主軌道消化率Ｒｐとの積から、ポジショナ７１及びスライダ７２の教示点間の残存移動量を算出する。次いで、残存移動量中の補間点の数を式（１９）と同様の手法で求め、新たな補間点を算出する。このように、対応補間点算出手段としてのロボット制御部２１は、アダプティブ速度Ｖａが変更されたときに、新たに算出された溶接トーチ１４の主軌道補間点に対応して、ポジショナ７１及びスライダ７２の補間点を新たに算出する。上記のようにすると、溶接トーチ１４の主軌道消化率Ｒｐと、ポジショナ７１及びスライダ７２の主軌道消化率とが等しくなるため、アダプティブ速度制御を行いながら、ポジショナ７１及びスライダ７２を溶接トーチ１４の教示距離と同期したシンクロモーション制御で動作させることができ、溶接トーチ１４とワークＷとの相対姿勢を教示姿勢どおりに保つことができる。
【００８０】
上記のような制御によって図１０と同じワークＷに対して溶接を行う場合の、溶接トーチ１４及びポジショナ７１の動作を説明する。溶接トーチ１４は、図１０（ａ）に示すように、位置ＷＡから移動を開始する。溶接トーチ１４が移動すると、レーザセンサ３１の検出結果に基づいて溶接トーチ１４の倣い補正が行われるが、制御装置２は、第１実施形態に示すように修正ずれ量に基づいて主軌道補間点における位置及び姿勢を倣い補正するため、主軌道方向の位置誤差が抑えられる。また、アダプティブ溶接機能が作用して溶接トーチ１４の移動速度が変化することがあっても、式（１９）によって主軌道補間点数ｎｒが変更されるため、溶接トーチ１４の教示点間の移動距離を教示点間距離Ｄｔと合わせることができる。このため、溶接トーチ１４が教示距離分進んだ位置ＷＢに至ったときに、ポジショナ７１の回転運動が開始される。
【００８１】
そして、溶接トーチ１４が位置ＷＢから位置ＷＤまで移動するときに、溶接トーチ１４とポジショナ７１とが共に動作し、シンクロモーション制御が行われる。このとき、アダプティブ溶接機能が作用して溶接トーチ１４の移動速度が変化することがあっても、ポジショナ７１の主軌道消化率と溶接トーチ１４の主軌道消化率とは等しくなるため、ポジショナ７１は溶接トーチ１４の教示距離に同期して動作する。このため、図１０（ｂ）に示すように、ポジショナ７１の回転途中の位置ＷＣに溶接トーチ１４が対向している場合においても、溶接トーチ１４の後退角を０°とすることができる。従って、溶接トーチ１４が教示で与えていない後退角を持つことによる溶接不良の発生を防止できる。
【００８２】
そして、図１０（ｃ）に示すように、溶接トーチ１４が位置ＷＥに至ったときに、溶接トーチ１４の直線移動を終了させて、ワークＷの溶接工程を終了する。このように、アダプティブ速度制御を行っても教示で設定したとおりの溶接長を常に実現できる。制御装置２は、このように溶接トーチ１４及びポジショナ７１の動作を制御することで、溶接トーチ１４の進行方向に発生する位置誤差を抑えるとともに、ポジショナ７１を溶接トーチ１４の教示距離に同期して動作させる。もちろん、このときにスライダ７２が同期動作していることは言うまでもない。
【００８３】
上記第２実施形態の溶接ロボットの制御装置２によれば、以下のような効果を得ることができる。
（３）第２実施形態では、制御装置２は、アダプティブ溶接機能が作用してアダプティブ速度Ｖａが変更されたときに、教示点間距離Ｄｔから主軌道消化率Ｒｐを算出し、教示点間の残存距離Ｄｒを求める。そして、教示点間の残存距離Ｄｒとアダプティブ速度Ｖａとから、残存距離Ｄｒ中の主軌道補間点数ｎｒを計算し直して、新たな主軌道補間点を算出する。このため、アダプティブ速度Ｖａが変更されて主軌道補間点間距離Ｄｐが変化する場合においても、残存距離Ｄｒ中の主軌道補間点数ｎｒを変更することで、溶接トーチ１４の教示点間の移動距離と教示点間距離Ｄｔとを一致させることができ、実際の溶接長を予め設定された溶接長に合わせることができる。
【００８４】
（４）第２実施形態では、制御装置２は、アダプティブ速度Ｖａが変更されたときに、新たに算出された溶接トーチ１４の主軌道補間点に対応して、ポジショナ７１及びスライダ７２の補間点を新たに算出する。このため、溶接トーチ１４の移動速度が変更されたにもかかわらず、ポジショナ７１及びスライダ７２が予め設定された教示データに沿って移動し続けることを防止することができ、溶接トーチ１４とポジショナ７１及びスライダ７２との動作を同期させて、シンクロモーション制御を行うことができる。従って、溶接トーチ１４とワークＷとの相対位置及び姿勢が、予め設定されている相対位置及び姿勢とずれてしまうことを抑えることができるため、溶接トーチ１４のワークＷに対する主軌道方向のずれや、溶接トーチ１４のワークＷに対する姿勢のずれを抑制することができる。これにより、主軌道方向のずれにより実際の溶接長が予め設定された溶接長と一致しなくなることや、溶接トーチ１４が教示で与えていない後退角を持つことによる溶接不良の発生を防止できる。
【００８５】
（第３実施形態）
次に、図１３を参照して、本発明に係るロボットの制御装置を溶接ロボットの制御装置に適用した第３実施形態について説明する。第３実施形態の制御装置では、マニピュレータ１１，ロボット制御部２１，レーザセンサ３１，センサ制御部４１及び溶接電源５１の構成については第１実施形態と同一であり、制御装置がワークＷを１軸方向に移動させるポジショナを備える点が第１実施形態と異なる。なお、以下に説明する実施形態において、第１実施形態と同一構成については同一符号を付し、その重複する説明を省略又は簡略する。
【００８６】
図１３は、第３実施形態に係る溶接ロボットの制御装置３の構成を示すブロック図である。制御装置３は、ワークＷを移動させるポジショナ６１を備える。ポジショナ６１は、回転軸６２を中心にワークＷを回転させることで、ワークＷを溶接トーチ１４に対して１軸方向（進行方向Ｒ）に移動させる。回転軸６２は図示しないモータにより駆動される。制御装置３のロボット制御部２１は、前記モータの駆動制御を行うことにより、ポジショナ６１の移動を制御する。また、マニピュレータ１１の溶接トーチ１４は、ワークＷの頂点に配置され、ロボット制御部２１によりその動作が制御される。
【００８７】
ロボット制御部２１は、ポジショナ６１によりワークＷを進行方向Ｒに移動させるとともに、溶接トーチ１４を進行方向Ｒと垂直な平面（開先平面）内で移動させることで、ポジショナ６１及び溶接トーチ１４のシンクロモーション制御を行い、ワークＷの位置決めを行う。なお、こうしたシンクロモーション制御は、予め設定された教示データに基づいて行われる。
【００８８】
また、制御装置３による倣い補正は、第１実施形態の制御装置１と同様の手順で行われる。すなわち、ロボット制御部２１の現在位置算出処理部２５は、溶接トーチ１４の現在位置及び姿勢を算出し、算出された現在位置及び姿勢をセンサ制御部４１に送信する。センサ制御部４１は、現在位置及び姿勢と、レーザセンサ３１によるワークＷの形状検出結果とを照らし合わせて、溶接トーチ１４の目標位置及び姿勢を設定する。倣い補正処理部２３は、目標位置及び姿勢に基づいて倣い補正を行う。
【００８９】
このとき、倣い補正処理部２３は、進行方向Ｒについての倣い補正は行わず、開先平面内の倣い補正のみを行う。すなわち、倣い補正処理部２３は、溶接トーチ１４の開先平面内の動作に対する補正のみを行い、溶接トーチ１４の進行方向Ｒの動作に対する補正及びポジショナ６１の移動に対する補正を無視する。このため、制御手段としてのロボット制御部２１は、進行方向Ｒに対する補正値が算出された場合においても、溶接トーチ１４の進行方向Ｒへの移動を禁止するとともに、予め設定された溶接トーチ１４の教示距離に同期してポジショナ６１を回転させる制御を行う。このように、進行方向Ｒの倣い補正を行わずに、開先平面内の倣い補正のみを行うと、倣い補正により発生する進行方向Ｒの位置誤差を抑えることができる。
【００９０】
上記第３実施形態の溶接ロボットの制御装置３によれば、以下のような効果を得ることができる。
（５）第３実施形態では、制御装置３は、倣い補正を行う際に進行方向Ｒについての倣い補正を無視して、溶接トーチ１４及びポジショナ６１の移動を制御する。このため、倣い補正により発生する進行方向Ｒのずれ、すなわち位置誤差を抑えることができ、予め設定されている溶接トーチ１４の作業軌道長に対して、倣い補正による実際の作業軌道長が短くなるといった状況を回避することができる。
【００９１】
なお、上記実施形態は以下のように変更してもよい。
・第１乃至第３実施形態では、ワークＷの形状を検出するセンサとして、レーザの発光及び受光によりワークＷまでの距離を測定する走査型のレーザセンサ３１を用いたが、他の形式の非接触型のセンサを用いてもよいし、接触型のセンサを用いてもよい。また、このセンサは、ワークＷの形状を検出できるものであれば、ワークＷまでの距離を測定する距離センサでなくてもよい。
【００９２】
・第１乃至第３実施形態では、制御装置１，２，３における制御を、ロボット制御部２１とセンサ制御部４１とで分担して行うようにしているが、１つの制御部が一括して制御を行うようにしてもよいし、異なる態様で制御を分担して行うようにしてもよい。
【００９３】
・第１乃至第３実施形態では、本発明に係るロボットの制御装置を溶接ロボットに適用しているが、ワークＷの形状を検出してから作業を実行するロボットであれば、溶接ロボット以外の産業用ロボットに適用してもよい。
【００９４】
・第１実施形態では、ロボット制御部２１は、修正ずれ量に基づいて溶接トーチ１４の位置及び姿勢を倣い補正しているが、図６（ｂ）に示されるような誤差Ｉが極小であると判断されるときには、ずれ量から修正ずれ量への変換を行わずに、ずれ量に基づいて倣い補正を行うようにしてもよい。
【００９５】
・第２実施形態では、ワークＷ及びマニピュレータ１１の少なくとも一方を予め設定された教示データに沿って移動させる移動手段として、ポジショナ７１及びスライダ７２を用いているが、ポジショナ７１及びスライダ７２のいずれか一方のみを用いるようにしてもよい。
【００９６】
・第２実施形態では、アダプティブ速度Ｖａが変更されたときに、主軌道補間点数ｎｒを変更して、溶接トーチ１４の教示点間の移動距離と教示点間距離Ｄｔとを一致させるようにしているが、主軌道補間点数ｎｒを変更せずに補間周期Ｔｉを変更して、溶接トーチ１４の教示点間の移動距離と教示点間距離Ｄｔとを一致させるようにしてもよい。
【図面の簡単な説明】
【００９７】
【図１】第１実施形態に係る溶接ロボットの制御装置の構成を示すブロック図。
【図２】レーザセンサの概略構成図。
【図３】レーザセンサが測定するワークの２次元データ。
【図４】ワークの特徴点から生成される３次元軌道を示す概略図。
【図５】ロボット制御部及びセンサ制御部のブロック図。
【図６】（ａ）は主軌道補間点算出処理部により生成される主軌道補間点の位置を示す図、（ｂ）は倣い補正されたときの主軌道補間点の位置を示す図。
【図７】倣い補正処理部により算出されるずれ量を、基準座標系及び主軌道座標系において示す図。
【図８】（ａ）は主軌道補間点算出処理部により生成される主軌道補間点の位置を示す図、（ｂ）は修正ずれ量に基づいて倣い補正されたときの主軌道補間点の位置を示す図。
【図９】第２実施形態に係る溶接ロボットの制御装置の構成を示すブロック図。
【図１０】（ａ），（ｂ），（ｃ）は溶接工程を表す模式図。
【図１１】（ａ），（ｂ），（ｃ）は図１０の溶接工程における溶接状態の一例を示す比較図。
【図１２】ロボット制御部及びセンサ制御部のブロック図。
【図１３】第３実施形態に係る溶接ロボットの制御装置の構成を示すブロック図。
【図１４】従来の例における溶接ロボットの制御装置の構成を示すブロック図。
【符号の説明】
【００９８】
１，２，３…制御装置、１１…マニピュレータ、１４…溶接トーチ、２１…ロボット制御部、２２…主軌道補間点算出処理部、２３…倣い補正処理部、２５…現在位置算出処理部、２６…第１バッファ、２７…第２バッファ、２８…主軌道補間点数算出処理部、３１…レーザセンサ、４１…センサ制御部、５１…溶接電源、６１，７１…ポジショナ、７２…スライダ。
【図１】
0005118821.tif 000021
【図２】
0005118821.tif 000022
【図３】
0005118821.tif 000023
【図４】
0005118821.tif 000024
【図５】
0005118821.tif 000025
【図６】
0005118821.tif 000026
【図７】
0005118821.tif 000027
【図８】
0005118821.tif 000028
【図９】
0005118821.tif 000029
【図１０】
0005118821.tif 000030
【図１１】
0005118821.tif 000031
【図１２】
0005118821.tif 000032
【図１３】
0005118821.tif 000033
【図１４】
0005118821.tif 000034