(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025021024
(43)【公開日】2025-02-13
(54)【発明の名称】教示プログラムの生成方法、および教示プログラムの生成装置
(51)【国際特許分類】
B23K 9/127 20060101AFI20250205BHJP
【FI】
B23K9/127 509B
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2023124707
(22)【出願日】2023-07-31
(71)【出願人】
【識別番号】000001199
【氏名又は名称】株式会社神戸製鋼所
(74)【代理人】
【識別番号】110002000
【氏名又は名称】弁理士法人栄光事務所
(72)【発明者】
【氏名】飛田 正俊
(57)【要約】
【課題】センシングに係る教示プログラムの生成に関し、ユーザの作業負荷を低減することを可能とする。
【解決手段】センシング動作を規定する教示プログラムの生成方法であって、ワークの表面におけるセンシング位置を決定する決定工程と、前記決定工程にて決定されたセンシング位置に基づいて、前記センシング動作の教示プログラムを生成する生成工程と、を有し、前記センシング位置は、前記ワークのズレの最大許容量およびズレの方向に対して予め規定される許容範囲が前記表面に含まれる範囲にて決定される。
【選択図】
図5
【特許請求の範囲】
【請求項1】
センシング動作を規定する教示プログラムの生成方法であって、
ワークの表面におけるセンシング位置を決定する決定工程と、
前記決定工程にて決定されたセンシング位置に基づいて、前記センシング動作の教示プログラムを生成する生成工程と、
を有し、
前記センシング位置は、前記ワークのズレの最大許容量およびズレの方向に対して予め規定される許容範囲が前記表面に含まれる範囲にて決定される、生成方法。
【請求項2】
前記決定工程において、前記範囲は、前記センシング位置のズレが発生した場合でも、前記ワークの面においてセンシングが可能なように前記許容範囲の位置を探索することで決定される、請求項1に記載の生成方法。
【請求項3】
前記許容範囲は、前記面において、第1の方向における第1の長さと、前記第1の方向に直交する第2の方向における第2の長さとにより規定される、請求項2に記載の生成方法。
【請求項4】
前記許容範囲は、前記面において、矩形形状、円形状、または菱形形状にて規定される、請求項2に記載の生成方法。
【請求項5】
前記決定工程において、前記範囲は、前記センシング位置のズレが発生した場合でも、前記ワークの稜線においてセンシングが可能なように前記許容範囲の位置を探索することで決定される、請求項1に記載の生成方法。
【請求項6】
ワークの継手および開先の種別を特定する特定工程と、
前記特定工程にて特定された種別に基づいて、ワークのズレの方向に対応したセンシング位置を決定する際のパターンを選択する選択工程と、
を有し、
前記決定工程において、前記選択工程にて選択されたパターンに基づいて、前記センシング位置を決定する、請求項1に記載の生成方法。
【請求項7】
センシング動作を規定する教示プログラムの生成装置であって、
ワークの表面におけるセンシング位置を決定する決定手段と、
前記決定手段にて決定されたセンシング位置に基づいて、前記センシング動作の教示プログラムを生成する生成手段と、
を有し、
前記センシング位置は、前記ワークのズレの最大許容量およびズレの方向に対して予め規定される許容範囲が前記表面に含まれる範囲にて決定される、生成装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、教示プログラムの生成方法、および教示プログラムの生成装置に関する。
【背景技術】
【0002】
従来、ティーチングプレイバック方式の産業用ロボットに関し、教示作業の効率化を目的として、様々な手法が提案されている。このような産業用ロボットの一例として、溶接ロボットが挙げられる。例えば、溶接ロボットによる溶接では、ワークのズレを溶接ワイヤによるタッチセンシングにて補正する方法などが知られている。この補正を行う際に、センシングすべき位置やセンシングパターンなどは、ワークの形状や溶接部位の開先形状などから決定する必要がある。
【0003】
例えば、特許文献1では、予め設定されているセンシングパターン群の中から所望のセンシングパターンを選定し、当該センシングパターンに対応したセンシング経路パターンを選択して最適なセンシング経路を決定する構成が開示されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1のような手法では、予めマスターデータや動作パターンを登録しておく必要がある。したがって、センシング対象となるワークに関し、想定していない形状やパターンに対しては、追加の登録が発生する。また、登録されている多くの動作パターンの中から適切な動作パターンを選択して教示プログラムを生成することは、作業者の負担を増加させてしまい、それに係る高い習熟も求められてしまう。
【0006】
本発明では、センシングに係る教示プログラムの生成に関し、ユーザの作業負荷を低減することを可能とすることを目的とする。
【課題を解決するための手段】
【0007】
上記課題を解決するために本発明は以下の構成を有する。すなわち、センシング動作を規定する教示プログラムの生成方法であって、
ワークの表面におけるセンシング位置を決定する決定工程と、
前記決定工程にて決定されたセンシング位置に基づいて、前記センシング動作の教示プログラムを生成する生成工程と、
を有し、
前記センシング位置は、前記ワークのズレの最大許容量およびズレの方向に対して予め規定される許容範囲が前記表面に含まれる範囲にて決定される、生成方法。
【0008】
また、本発明の別の形態として以下の構成を有する。すなわち、センシング動作を規定する教示プログラムの生成装置であって、
ワークの表面におけるセンシング位置を決定する決定手段と、
前記決定手段にて決定されたセンシング位置に基づいて、前記センシング動作の教示プログラムを生成する生成手段と、
を有し、
前記センシング位置は、前記ワークのズレの最大許容量およびズレの方向に対して予め規定される許容範囲が前記表面に含まれる範囲にて決定される、生成装置。
【発明の効果】
【0009】
本発明によれば、センシングに係る教示プログラムの生成において、ユーザの作業負荷を低減することが可能となる。
【図面の簡単な説明】
【0010】
【
図1】本発明の一実施形態に係るシステム構成の例を示す概略図。
【
図2】本発明の一実施形態に係るロボット制御装置の構成例を示すブロック図。
【
図3A】本発明の一実施形態に係る開先形状(T継手すみ肉)の例を示す概略図。
【
図3B】本発明の一実施形態に係る開先形状(段差すみ肉)の例を示す概略図。
【
図3C】本発明の一実施形態に係る開先形状(T継手レ型開先)の例を示す概略図。
【
図3D】本発明の一実施形態に係る開先形状(突合せI型開先)の例を示す概略図。
【
図3E】本発明の一実施形態に係る開先形状(突合せV型開先)の例を示す概略図。
【
図3F】本発明の一実施形態に係る開先形状(突合せレ型開先)の例を示す概略図。
【
図4】本発明の一実施形態に係る継手・開先種別の対応例を示す表図。
【
図5】本発明の一実施形態に係る継手・開先種別によるセンシング点の決定パターン例を示す表図。
【
図6A】本発明の一実施形態に係るZ方向センシング点の決定を説明するための概略図。
【
図6B】本発明の一実施形態に係るY方向センシング点の決定を説明するための概略図。
【
図6C】本発明の一実施形態に係るY方向センシング点の決定を説明するための概略図。
【
図6D】本発明の一実施形態に係るY方向センシング点の決定を説明するための概略図。
【
図6E】本発明の一実施形態に係るY方向センシング点の決定を説明するための概略図。
【
図7】本発明の一実施形態に係る教示プログラム生成処理のフローチャート。
【発明を実施するための形態】
【0011】
以下、本発明を実施するための形態について図面などを参照して説明する。なお、以下に説明する実施形態は、本発明を説明するための一実施形態であり、本発明を限定して解釈されることを意図するものではなく、また、各実施形態で説明されている全ての構成が本発明の課題を解決するために必須の構成であるとは限らない。また、各図面において、同じ構成要素については、同じ参照番号を付すことにより対応関係を示す。
【0012】
[溶接システムの構成]
図1は、本実施形態に係る溶接システム1の構成例を示す。
図1に示す溶接システム1は、溶接ロボット10、ロボット制御装置20、電源装置30、視覚センサ40、データ処理装置50、および教示ペンダント60を含んで構成される。
【0013】
図1に示す溶接ロボット10は、6軸の多関節ロボットにより構成され、その先端部にはGMAW用の溶接トーチ11が取り付けられている。なお、GMAWには、例えばMIG(Metal Inert Gas)溶接やMAG(Metal Active Gas)溶接があり、本実施形態ではMAG溶接を例に挙げて説明する。また、溶接ロボット10は6軸の多関節ロボットに限られたものではなく、例えば可搬型の小型ロボットを採用してもよい。本実施形態に係る溶接ロボット10は、その先端部における電流や電圧の変化などを検出することによるタッチセンシングが可能な構成を有する。なお、センシングの手法はタッチセンシングに限定するものではなく、溶接トーチ11と、ワークWの位置関係を検出できる構成であれば、他のセンシング手法が用いられてもよい。
【0014】
溶接トーチ11には、ワイヤ送給装置12から溶接ワイヤ13が供給される。溶接ワイヤ13は、溶接トーチ11の先端から溶接個所に向けて送り出される。電源装置30は、溶接ワイヤ13に電力を供給する。この電力により、溶接ワイヤ13とワークWとの間にはアーク電圧が印加され、アークが発生する。電源装置30には、溶接中の溶接ワイヤ13からワークWに流れる溶接電流を検出する不図示の電流センサ、および溶接ワイヤ13とワークWとの間のアーク電圧を検出する不図示の電圧センサが設けられている。
【0015】
電源装置30は、不図示の処理部と記憶部を有する。処理部は、例えば、CPU(Central Processing Unit)により構成される。また、記憶部は、例えば、HDD(Hard Disk Drive)、ROM(Read Only Memory)やRAM(Random Access Memory)などの揮発性や不揮発性のメモリにより構成される。処理部が、記憶部に記憶された電源制御用のコンピュータプログラムを実行することにより、溶接ワイヤ13に印加する電力を制御する。電源装置30は、ワイヤ送給装置12にも接続され、処理部が溶接ワイヤ13の送給速度や送給量を制御する。
【0016】
溶接ワイヤ13の組成や種類は、溶接対象に応じて使い分けられてよい。溶接ワイヤ13の種類としては、例えば、ソリッドワイヤや、フラックスを含むフラックスワイヤなどが挙げられる。また、溶接ワイヤ13の材質としては、例えば、軟鋼、ステンレス、アルミニウム、チタンなどが挙げられ、ワイヤ表面に銅などのメッキが施されていてもよい。更に、溶接ワイヤ13の径についても特に限定するものではない。
【0017】
視覚センサ40は、例えば、CCD(Charge Coupled Device)カメラにより構成される。視覚センサ40の配置位置は特に問わず、視覚センサ40は、溶接ロボット10に直接取り付けられてもよいし、また、監視カメラとして、周辺の特定の場所に固定されてもよい。溶接ロボット10に視覚センサ40を直接取り付けた場合には、視覚センサ40は、溶接ロボット10の動作に併せて、溶接トーチ11の先端部周辺を撮影するように移動する。視覚センサ40を構成するカメラの台数は複数でもよい。例えば、機能や設置位置が異なる複数のカメラを用いて視覚センサ40が構成されてもよい。また、視覚センサ40は、省略されて構成されてもよい。
【0018】
データ処理装置50は、例えば、不図示のCPU、ROM、RAM、ハードディスク装置、入出力インタフェース、通信インタフェース、映像出力インタフェース、表示部(以降、ディスプレイとも称する)などにより構成される。データ処理装置50は、例えば、PC(Personal Computer)などの情報処理装置から構成されてよい。データ処理装置50は、作業者が溶接システム1の各種設定や管理を行うために用いられてよい。
【0019】
溶接システム1を構成する各部位は、有線/無線の各種通信方式により、通信可能に接続される。ここでの通信方式は、1つに限定するものではなく、複数の通信方式を組み合わせて接続されてよい。
【0020】
[ロボット制御装置の構成]
図2は、溶接ロボット10の動作を制御するロボット制御装置20の構成例を示す。ロボット制御装置20は、装置全体を制御するCPU201、データを記憶するメモリ202、複数のスイッチを含む操作パネル203、ロボット接続部204、および通信部205を含んで構成される。メモリ202は、例えば、ROM、RAM、HDDなどの揮発性や不揮発性の記憶装置により構成される。メモリ202には、溶接ロボット10の制御に用いられる制御プログラム202Aが記憶される。CPU201は、制御プログラム202Aを実行することにより、溶接ロボット10による各種動作を制御する。
【0021】
ロボット制御装置20に対する指示の入力には、操作パネル203と教示ペンダント60を用いることができ、主に教示ペンダント60が利用される。教示ペンダント60は、通信部205を介して、ロボット制御装置20本体に接続される。作業者は、教示ペンダント60を使用して、教示プログラムを入力することができる。ロボット制御装置20は、教示ペンダント60から入力された教示プログラムや、後述する手法によって自動的に生成された教示プログラムに従って溶接ロボット10を制御する。教示プログラムにて定義される動作内容は、特に限定するものではなく、溶接ロボット10の仕様や溶接方式に応じて異なっていてよい。
【0022】
教示ペンダント60は、ロボット制御装置20を介して、溶接ロボット10を手動で操作することができる。本実施形態においては、ティーチングプレイバック方式の溶接ロボット10を適用する。この方式においては、作業者は、溶接ロボット10を手動で操作し、溶接ロボット10の動作線、溶接線上に教示点を設け位置を記憶させたり、溶接ロボット10の姿勢の座標情報を記憶させたり、溶接条件を入力したりする教示作業を行うことが可能である。これにより、溶接ロボット10を自動的に動作させる際に用いられる教示プログラムを作成する。また、溶接ロボット10が自動運転した際に溶接途中などでエラーが発生して、溶接ロボット10が停止した場合に、作業者は、教示ペンダント60を用いて溶接ロボット10を手動で操作し、狙い位置を変更するといった修正作業を行うこともできる。
【0023】
ロボット接続部204には、溶接ロボット10の駆動回路が接続されている。CPU201は、制御プログラム202Aに基づく制御信号を、ロボット接続部204を介して溶接ロボット10が備える不図示の駆動回路に出力する。
【0024】
通信部205は、有線または無線通信用の通信モジュールを含んで構成される。通信部205は、電源装置30やデータ処理装置50、教示ペンダント60などとのデータや信号の通信に使用される。通信部205にて用いられる通信の方式や規格は特に限定するものではなく、複数の方式が組み合わされてもよいし、接続される装置ごとに異なっていてもよい。電源装置30からは、例えば不図示の電流センサによって検出された溶接電流の電流値や、不図示の電圧センサによって検出されたアーク電圧の電圧値が通信部205を介してCPU201に与えられる。
【0025】
ロボット制御装置20は、溶接ロボット10の各軸の制御により、溶接トーチ11の移動速度や突出し方向も制御する。また、ロボット制御装置20は、ウィービング動作を行う場合、設定された周期、振幅、溶接速度に応じて、溶接ロボット10のウィービング動作も制御する。ウィービング動作とは、溶接の進行方向、すなわち、溶接方向に対して交差する方向に溶接トーチ11を交互に揺動させることをいう。ロボット制御装置20は、ウィービング動作と共に、溶接線倣い制御を実行する。溶接線倣い制御とは、溶接線に沿ってビードが形成されるように、溶接トーチ11の進行方向に対して左右の位置を制御する動作である。また、ロボット制御装置20は、電源装置30を介してワイヤ送給装置12を制御することで、溶接ワイヤ13の送給速度なども制御する。
【0026】
本実施形態では、上述したような教示ペンダント60を介して、人手により教示プログラムを生成・調整できるほか、溶接システム1側で自動的に教示プログラムを生成することも可能である。この場合において、溶接システム1は、後述するセンシング位置に係る自動生成処理を行うことで、教示プログラムを生成する。なお、以下の説明では、ロボット制御装置20が教示プログラムを自動生成するものとして説明するが、その一部をデータ処理装置50側で実行するような構成であってもよい。
【0027】
[継手・開先の特定]
まず、本実施形態に係るワークWにおいて規定される溶接線の継手・開先種別について、
図3A~
図3Fを用いて説明する。継手・開先種別の例としては、
図3Aに示す「T継手すみ肉」、
図3Bに示す「段差すみ肉」、
図3Cに示す「T継手レ型開先」、
図3Dに示す「突合せI型開先」、
図3Eに示す「突合せV型開先」、
図3Fに示す「突合せレ型開先」などが挙げられる。本実施形態では、センシング位置の特定に際し、各部材の面および開先形状を特定して用いる。なお、継手・開先種別は上記に限定するものではなく、さらに多くの種別が記載されてよい。
【0028】
図4は、ワークWを構成する継手・開先種別を特定するための条件を規定した条件テーブル400を示す。
図3A~
図3Fに示したように、ここでは6種類を例に挙げて説明する。
図4の条件テーブル400に示す面ABCDにより特定される開先面AB、開先面ABの角度α、部材面CD、部材面CDの角度φは、
図3A~
図3Fに示す箇所に対応しているものとする。
【0029】
本実施形態の前提として、ワークWに対する各部材の形状、溶接線、溶接線の開先方向のベクトルは、CAD(Computer-Aided Design)情報などの3次元モデルなどにより構成される設計データとして予め規定されているものとする。また、本実施形態では、ロボット座標系やシステム座標系とは異なる座標系として、各溶接線を基準とした三次元座標系を用いて説明する。溶接線の方向(溶接方向)をX方向、X方向に直交する2つの方向をY方向およびZ方向とする。ここでは説明を簡単にするため、X方向とY方向から規定されるXY平面を水平面とし、XY平面に鉛直なZ方向を高さ方向とする。
【0030】
図3Aに示すT継手すみ肉の場合を例に挙げて説明する。まず、ワーク300において、部材301と部材302を溶接するための溶接線303、溶接線303の開先方向のベクトル304が設計データから特定される。そして、溶接線303の位置を基準として、ベクトル304にて示される矢印上の所定の位置から所定方向に位置する部材302、301の面を検索する。ここでの溶接線から所定の位置までの距離を便宜上、「第1の距離」とする。第1の距離としては、部材のサイズにもよるが、例えば、3~10mm程度が設定されてよい。また、検索の方向は、2つの方向とし、これらの2つの方向がなす角度は、90度であってよい。この検索により、T継手すみ肉の場合には、
図3Aの例のようにA面、B面が検出される。
【0031】
さらに、溶接線303の位置を基準として、ベクトル304にて示される矢印上の所定の位置から所定方向に位置する部材302、301の面を検索する。ここでの溶接線から所定の位置までの距離を便宜上、「第2の距離」とする。第2の距離としては、部材のサイズにもよるが、例えば、部材の板厚の2倍程度が設定されてよい。この場合、第1の距離<第2の距離となる。検索の方向は、2つの方向とし、これらの2つの方向がなす角度は、90度であってよい。この検索により、T継手すみ肉の場合には、
図3Aの例のようにC面、D面が検出される。なお、第1の距離の位置から面の検索を行う方向と、第2の距離の位置から面の検索を行う方向は一致しているものとする。
【0032】
なお、ワークにおける継手・開先種別によっては、面ABCDのいずれかが一致する場合や、いずれかが検出できない場合もある。ベクトルにて示される矢印上の所定の位置から一定距離の間の検索を行った結果、面を検出できない場合には、検索処理を終了してよい。
【0033】
そして、検出された面ABがなす角度α、面CDの検出の可否、および検出された面CDがなす角度φ、面ABCDそれぞれがなす角度に応じて、継手・開先種別が特定される。
図3Aの場合は、面ABがなす角度α≒90度、面CDの抽出が成功、および抽出された面CDがなす角度φ≒90度であるとして、継手・開先種別が「T継手すみ肉」として特定される。
【0034】
図3B~
図3Fに示す継手についても、
図4の条件テーブル400に示す条件に基づいて同様に特定される。
図3Bは「段差すみ肉」の例であり、部材311、312、溶接線313、ベクトル314と、これらに基づく検出の例が示されている。
図3Cは「T継手レ型開先」の例であり、部材321、322、溶接線323、ベクトル324と、これらに基づく検出の例が示されている。
図3Dは「突合せI型開先」の例であり、部材331、332、溶接線333、ベクトル334と、これらに基づく検出の例が示されている。
図3Eは「突合せV型開先」の例であり、部材341、342、溶接線343、ベクトル344と、これらに基づく検出の例が示されている。
図3Fは「突合せレ型開先」の例であり、部材351、352、溶接線353、ベクトル354と、これらに基づく検出の例が示されている。例えば、
図3Bに示す例の場合、D面の検出が失敗しているため、これに基づいて、T継手すみ肉とは異なる種別として「段差すみ肉」が特定される。
【0035】
なお、条件テーブル400の構成は一例であり、溶接対象や溶接ロボット10の構成などに応じて条件が異なっていてよい。
図4では省略しているが、第1の距離や第2の距離に相当する情報や、検索方向に関する情報が条件テーブル400にて規定されていてもよい。
【0036】
[センシング点の決定]
図5は、
図3A~
図3Fや
図4を用いて特定された継手・開先種別に対応して規定されるセンシング点の決定パターンの例を示す。
図5に示す対応テーブル500は、予め設定されているものとする。なお、本実施形態に係るセンシング動作では、例えば、公知のタッチセンシング手法である3方向センシング、円弧センシング、およびステッキセンシングが実行可能であってよい。3方向センシングは、X方向、Y方向、Z方向に沿って、ワークの3軸方向それぞれの位置を個別にセンシングする方法である。3方向センシングにより、ワーク全体の平行ズレを検出することが可能である。円弧センシングは、例えば、円弧上の複数の点をセンシングして、一定の曲率を有する円弧形状を有するワークの基準面内の平行ズレを検出する方法である。ステッキセンシングは、ワーク全体のズレと開先のズレが一致しない場合などを想定して、開先近傍を、溶接方向に対して直交する方向(Y方向)に沿って所定間隔にて、垂直な方向(Z方向)からセンシングすることにより、開先のズレを検出する方法である。本実施形態に係る溶接システム1では、これらのセンシングを組み合わせて用いることが可能である。
【0037】
上述したように、各溶接線に対して、X方向、Y方向、Z方向が規定される。例えば、直線の溶接線に対して、継手・開先種別が「T継手すみ肉」である場合には、センシング点の決定は、「Z方向」→「Y方向」→「X方向」の順に行われる。同様に、直線の溶接線に対して、継手・開先種別が「突合せレ型開先」である場合には、センシング点の決定は、「Z方向」→「X方向」の順に行われ、Y方向についてはステッキセンシングにて行われる。また、全円の溶接線に対しては、センシング点の決定は、「Z方向」において溶接トーチが下向き姿勢で行われ、さらに円弧センシングが行われる。
【0038】
なお、対応テーブル500の構成は一例であり、溶接対象や溶接ロボット10の構成、センシング手法などに応じて条件が異なっていてよい。
【0039】
図6A~
図6Eを用いて、各方向のセンシング点の決定の例を説明する。
図6Aは、溶接対象のワーク600において、部材601と部材602との間に規定される溶接線603の周りを示す。
図6Aは、継手・開先種別が「T継手すみ肉」であるとして特定されており、
図5に示すように、センシング点の決定の際のパターンは、「Z方向(高さ方向)」→「Y方向」→「X方向(溶接方向)」の順となる。
【0040】
(Z方向センシング点の探索)
まず、溶接線603を有する部材601、602において、基準となる基準面を選定する。ここでは、部材601のXY平面に対応する面を基準面とする。基準面の選定方法は特に限定するものではないが、例えば、開先方向や継手・開先種別などに基づいて予め規定されていてよい。そして、X方向およびY方向に対して予め規定されたズレ最大許容量の分だけワーク600が移動した場合でもセンシングが可能となる領域を抽出し、その中央位置をZ方向センシング点の候補点P0とする。
図6Aの場合、候補点P0を中心として、X方向のPx+~Px-と、Y方向のPy+~Py-とにより示される領域が、センシング可能な領域となる。
【0041】
ここでは便宜上、基準面を規定する2つの方向について、「第1の方向」および「第2の方向」とも称する。第1の方向はX方向であり、これに直交する第2の方向がY方向である。なお、第1の方向および第2の方向の対応付けは基準面、さらには溶接線の構成などに基づいて規定される。そのため、その対応付けは変動し得る。また、便宜上、第1の方向に沿った長さを「第1の長さ」、第2の方向に沿った長さを「第2の長さ」と記載する。上記の例では、第1の長さはPx+~Px-の長さに対応し、第2の長さはPy+~Py-の長さに対応する。ここではZ方向センシング点の探索におけるセンシング可能な領域の例を挙げたが、後述するY方向センシング点やX方向センシング点の探索においても同様の考え方に基づいて扱うものとする。
【0042】
例えば、ワーク600のズレ最大許容距離La、クリアランス距離Lcとし、レ型開先などの開先深さLdとする。ズレ最大許容距離La、クリアランス距離Lcは予め規定されているものとする。この場合、Z方向センシング点の初期位置は、溶接線603の開始点を基準(0,0,Ld)とした場合、P0(X,Y,Z)=(La+Lc,La+Lc,Ld)となる。この初期位置に対して、XY平面上の前後左右の位置であるPx+、Px-、Py+、Py-まで移動してもセンシング可能な場合には、P0を基準としたPx+、Px-、Py+、Py-にて示される領域をセンシング可能な領域と判断し、その中心位置P0をZ方向センシング点とする。Px+、Px-、Py+、Py-それぞれのパラメータは予め規定されているものとする。
【0043】
なお、Px+、Px-、Py+、Py-それぞれの値は同じ値であってもよいし、異なる値であってもよい。また、溶接対象のサイズや、継手・開先種別に応じて異なる値が用いられてもよい。例えば、Px+=Px-=Py+=Py-の場合には、これらにて規定される領域の形状は、正方形の形状となる。つまり、Px+、Px-、Py+、Py-の値を調整することで、センシング可能な領域を判断するための領域の形状を、菱形を含む四角形状や楕円を含む円形状などとして規定されてよい。つまり、Px+、Px-、Py+、Py-それぞれの値を調整することで、第1の方向における第1の長さ、および、第2の方向における第2の長さを調整してよい。
【0044】
初期位置においてセンシング可能な領域が特定できない場合、基準面上を走査し、Px+、Px-、Py+、Py-にて示される領域の範囲をセンシング可能な領域として取得可能な位置を探索する。なお、探索した結果、基準面が狭いなどの理由で取得できない場合は、Z方向センシング点は作成できないと判定してよい。
【0045】
(Y方向センシング点の探索)
図6Bおよび
図6Cは、Y方向センシング点の探索を説明するための概略図である。上記の方法により、Z方向センシング点が決定された場合、Z方向のズレ量は無くなる。このため、Z方向のズレを気にせずY方向のセンシング点の決定を行うことができる。なお、
図6Bの例では、ワーク610において、溶接線613の側面部材612のZ方向の長さが、X方向の位置によって異なる例を示している。このような場合を想定し、Y方向においてセンシングする高さは、
図6Cに示すように、側面部材の一番低いエッジLh以下となるように調整し、これをLupとする(Lup<Lh)。また、調整量となるLeについては、部材の形状やサイズなどに対応して予め規定されていてよい。
【0046】
図6Cでは、Y方向センシング点の初期位置をP1(X,Y,Z)=(La+Lc,0,Lup)とする。そして、XZ平面上においてX方向にズレ最大許容量を考慮したPx-、Px+まで移動してもセンシング可能な場合には、P1をY方向センシング点とする。ここでのPx-、Px+は予め規定されており、Z方向センシング点の探索にて用いられた値と同じ値が用いられてよい。初期位置においてセンシング可能な領域が特定できない場合、XZ面上をX方向に探索し、センシング可能な領域が取得可能なY方向センシング点の位置を探索する。なお、探索した結果、側面が狭いなどの理由で取得できない場合は、Y方向センシング点は作成できないと判定してよい。
【0047】
(X方向センシング点の探索)
図6Dおよび
図6Eは、センシングXを説明するための概略図である。
図6Dは、溶接線603の開始点近傍に壁面となる部材604が存在する例を示している。
図6Eは、溶接線603の開始点近傍に壁面となる部材が存在しない例を示している。X方向センシング点は以下のロジックで位置を決定する。
【0048】
1.溶接線の開始点近傍に壁面となる部材604が存在し、射影点Phが設定できる場合(
図6D)
センシング経路方向に干渉しないなどの条件が揃えば、部材604上の射影点Phの位置をX方向センシング点とする。ここでの条件は、溶接トーチ11のサイズや溶接姿勢などに基づいて予め規定されているものとする。また、壁面となる部材の有無は、設計データから特定することが可能である。ここで、X方向におけるセンシングの開始位置をPwとして設定してよく、Pwは、X方向において壁面から所定の距離の位置であってよい。
【0049】
2.壁面となる部材が存在しない場合(
図6E)
部材の端面上においてX方向センシング点を特定する。まず、部材(本例では、部材601、部材602)の溶接線の開始位置側の端面を抽出し、その稜線を抽出する。ここでの端面は、YZ平面上に位置する。複数の端面がある場合には、溶接線の開始点を基準として規定される点Pwからの距離に応じて、X方向のセンシングの対象とする端面を決定する。そして、稜線上の位置をX方向センシング点とする。X方向におけるセンシングの流れとして、点Pwを開始点とし、複数の退避点(ここでは、退避点K2、K1)を経由して、稜線上のX方向センシング点へ向かう構成であってよい。このとき、ワークのX方向のズレを考慮して、退避点の位置が設定される。より具体的には、
図6Eに示すように、退避点K1から端面上のX方向センシング点へ向かう場合には、退避点K1の位置は、所定のズレ量を考慮して規定される。
【0050】
なお、上述したように、ワークの形状などによっては、Z方向センシング点やY方向センシング点が決定できない状況がある。壁面となる部材が存在しない場合であって、Z方向センシング点およびY方向センシング点を決定できている場合には、Y方向において端面の稜線から所定の距離の位置にX方向センシング点を設定すればよい。
【0051】
一方、壁面となる部材が存在しない場合であって、Y方向センシング点を決定できていない場合には、Y方向のズレが解消されていないことが想定される。この場合、
図6Eに示すように、X方向センシング点Pxは、Y方向のPy-~Py+の範囲が端面上に含まれる位置となるように設定する。これにより、ワークがY方向にズレが生じていた場合でも、X方向のセンシングが可能となる。
【0052】
[処理フロー]
図7は、本実施形態に係る教示プログラムの生成処理のフローチャートを示す。本処理フローは、例えば、ロボット制御装置20のCPU201が、メモリ202などに格納されたプログラムやデータを読み出して実行することにより実現される。また、本処理フローが開始される前に、溶接対象の設計データが予め規定され、利用可能となっているものとする。
【0053】
S701にて、ロボット制御装置20は、溶接対象となるワークWの設計データを取得する。
【0054】
S702にて、ロボット制御装置20は、S701にて取得した設計データに含まれる複数の溶接線のうち、未処理の1つの溶接線に着目する。
【0055】
S703にて、ロボット制御装置20は、着目している溶接線の情報に基づき、継手・開先種別を特定する。ここでの特定方法は、
図3A~
図3Fおよび
図4を用いて上述した手法により特定される。例えば、
図3Aに示す例の場合、「T継手すみ肉」が特定される。
【0056】
S704にて、ロボット制御装置20は、S703にて特定した継手・開先種別に基づいて、センシング点の決定パターンを特定する。ここでの特定方法は、
図5に示したような、予め規定された対応テーブル500に基づいて行われる。
【0057】
S705にて、ロボット制御装置20は、S704にて特定したセンシング点の決定パターンに基づいて、センシング点の探索を行う。ここでの処理は、
図6A~
図6Eを用いた手法にて行われる。例えば、「T継手すみ肉」の場合、Z方向センシング点、Y方向センシング点、X方向センシング点の順にセンシング点の探索が行われる。
【0058】
S706にて、ロボット制御装置20は、S705の探索結果に基づいて、各センシング点のパラメータを決定する。ここでのセンシング点のパラメータは、決定されたセンシング点に加え、センシングの開始位置を示すセンシング開始点、センシングを終了した後の退避位置を示すセンシング退避点の座標などが含まれてよい。センシング開始点やセンシング退避点は、決定されたセンシング点の位置との相関や、S705までの算出結果に対して予め定義されている条件に基づいて決定されてよい。
【0059】
S707にて、ロボット制御装置20は、S706にて決定したパラメータを用いて、着目している溶接線に対する教示プログラムを生成する。例えば、センシング開始点、センシング点、センシング退避点を含む経路を含む教示プログラムが生成される。
【0060】
S708にて、ロボット制御装置20は、S701にて取得した設計データにおいて、未処理の溶接線が有るか否かを判定する。未処理の溶接線が有る場合(S708にてYES)、ロボット制御装置20の処理はS702へ戻り、未処理の溶接線を対象として処理を繰り返す。一方、未処理の溶接線が無い場合(S708にてNO)、本処理フローを終了する。
【0061】
以上、本実施形態により、ワークのズレを考慮したセンシング位置を自動的に決定し、センシングに係る教示プログラムを生成することが可能となり、ユーザの作業負荷を低減することが可能となる。
【0062】
<その他の実施形態>
本発明において、上述した1つ以上の実施形態の機能を実現するためのプログラムやアプリケーションを、ネットワークまたは記憶媒体などを用いてシステムまたは装置に供給し、そのシステムまたは装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。
【0063】
また、1以上の機能を実現する回路によって実現してもよい。なお、1以上の機能を実現する回路としては、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)が挙げられる。
【0064】
以上の通り、本明細書には次の事項が開示されている。
(1) センシング動作を規定する教示プログラムの生成方法であって、
ワークの表面におけるセンシング位置を決定する決定工程と、
前記決定工程にて決定されたセンシング位置に基づいて、前記センシング動作の教示プログラムを生成する生成工程と、
を有し、
前記センシング位置は、前記ワークのズレの最大許容量およびズレの方向に対して予め規定される許容範囲が前記表面に含まれる範囲にて決定される、生成方法。
この構成によれば、ワークのズレを考慮したセンシング位置を自動的に決定し、センシングに係る教示プログラムを生成することが可能となり、ユーザの作業負荷を低減することが可能となる。
【0065】
(2) 前記決定工程において、前記範囲は、前記センシング位置のズレが発生した場合でも、前記ワークの面においてセンシングが可能なように前記許容範囲の位置を探索することで決定される、(1)に記載の生成方法。
この構成によれば、ワークのズレが生じた場合でも、センシング動作が可能な位置にてセンシング位置を決定して、教示プログラムを自動的に生成することが可能となる。
【0066】
(3) 前記許容範囲は、前記面において、第1の方向(例えば、
図6AのX方向)における第1の長さ(例えば、Px+~Px-)と、前記第1の方向に直交する第2の方向(例えば、
図6AのY方向)における第2の長さ(例えば、Py+~Py-)とにより規定される、(2)に記載の生成方法。
この構成によれば、ワーク表面の面上において、任意の形状の範囲をズレ許容範囲として規定してセンシング位置を決定することが可能となる。
【0067】
(4) 前記許容範囲は、前記面において、矩形形状、円形状、または菱形形状にて規定される、(2)に記載の生成方法。
この構成によれば、ワークの面上において、任意の形状の範囲をズレ許容範囲として規定してセンシング位置を決定することが可能となる。
【0068】
(5) 前記決定工程において、前記範囲は、前記センシング位置のズレが発生した場合でも、前記ワークの稜線においてセンシングが可能なように前記許容範囲の位置を探索することで決定される、(1)に記載の生成方法。
この構成によれば、ワーク表面の稜線上において、任意の方向の範囲をズレ許容範囲として規定してセンシング位置を決定することが可能となる。
【0069】
(6) ワークの継手および開先の種別を特定する特定工程と、
前記特定工程にて特定された種別に基づいて、ワークのズレの方向に対応したセンシング位置を決定する際のパターンを選択する選択工程と、
を有し、
前記決定工程において、前記選択工程にて選択されたパターンに基づいて、前記センシング位置を決定する、(1)から(5)のいずれかに記載の生成方法。
この構成によれば、ワークの継手・開先の種別に基づいて規定されるセンシング位置の決定パターンに基づいて、自動的にセンシング位置を決定することが可能となる。
【0070】
センシング動作を規定する教示プログラムの生成装置であって、
ワークの表面におけるセンシング位置を決定する決定手段と、
前記決定手段にて決定されたセンシング位置に基づいて、前記センシング動作の教示プログラムを生成する生成手段と、
を有し、
前記センシング位置は、前記ワークのズレの最大許容量およびズレの方向に対して予め規定される許容範囲が前記表面に含まれる範囲にて決定される、生成装置。
この構成によれば、ワークのズレを考慮したセンシング位置を自動的に決定し、センシングに係る教示プログラムを生成することが可能となり、ユーザの作業負荷を低減することが可能となる。
【符号の説明】
【0071】
1 溶接システム
10 溶接ロボット
11 溶接トーチ
12 ワイヤ送給装置
13 溶接ワイヤ
20 ロボット制御装置
201 CPU
202 メモリ
202A 制御プログラム
203 操作パネル
204 ロボット接続部
205 通信部
30 電源装置
40 視覚センサ
50 データ処理装置
60 教示ペンダント
W ワーク