(57)【特許請求の範囲】
【請求項１】
ツールを搭載したロボット及びワークを仮想空間内に配置して、前記ロボットが前記ワークに対し加工を行うときの前記ツールの姿勢を定める狙い角、前進角、及び前記ツールの長手方向軸回りの回転角の設定を行うロボット教示装置であって、
前記ロボット及び前記ワークの３次元モデルを仮想空間内に配置する配置部と、
前記ワークの３次元モデルの加工箇所を指定する指定部と、
予め定めた複数の加工箇所形状と、前記加工箇所形状の各々に関連付けられた前記ツールの狙い角及び前進角との組み合わせを記憶する記憶部と、
前記記憶部に記憶された複数の加工箇所形状から、指定された加工箇所に該当する加工箇所形状を選択する選択部と、
選択された加工箇所形状に関連付けられた前記ツールの狙い角及び前進角を、指定された加工箇所に対する前記ツールの狙い角及び前進角として設定する第１の設定部と、
前記加工箇所に対する前記ツールの狙い角及び前進角を維持した状態で、前記ツールを前記ツールの長手方向軸回りに回転させ、前記仮想空間の地平面に対する前記ロボットのフェースプレートの高さが最大となる、前記加工箇所に対する前記ツールの長手方向軸回りの回転角を求めて設定する第２の設定部と、
を有することを特徴とする、ロボット教示装置。
【請求項２】
前記加工箇所に対して設定された狙い角、前進角及び回転角を維持した状態で前記ロボットを移動させたときに、前記ロボットが到達できない到達不能点を検出する検出部と、
前記到達不能点において、前記加工箇所に対する前記ツールの狙い角及び前進角を維持した状態で、前記ツールを前記ツールの長手方向軸回りに回転させ、前記ロボットの原点と前記ロボットのフェースプレートとの距離が最短となり、かつ前記ロボットが到達可能な点を求めて設定する第３の設定部と、
をさらに有する、請求項１に記載のロボット教示装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想空間内で加工を行うロボットに対する教示を行うロボット教示装置に関する。
【背景技術】
【０００２】
従来、溶接等の加工を行うロボットを動作させるためのロボットプログラムの教示をオフラインで行う装置では、仮想空間内に配置したワークの３次元モデル上で溶接箇所を指定し、さらにロボットの手先に設けた溶接トーチの姿勢等の条件を指定して、教示点を生成していた。
【０００３】
これに関連する周知技術として、例えば特許文献１には、アーク溶接用ロボットのオフライン教示方法が開示されており、具体的には、「トーチ教示データ操作部において、作業者がＣＡＤ上でワークとトーチとを見ながら、複数の教示点におけるトーチ角度と、トーチ側取付点の位置とを入力して、これらの状態をトーチ教示データとしてコンピュータに記憶させる。すなわち、ワークに対してトーチのみを移動させて教示するため、トーチの教示作業が極めて容易であり、特にアーク溶接作業時には複数点での教示を行なう必要があるため、教示作業の容易性が拡大する」と記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１０−０１１１２７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従来の技術では、溶接トーチの姿勢を含む条件を指定して教示点を生成していたが、適切な狙い角や前進角はワークの形状によって異なる。さらに、従来の技術では、ツール（溶接トーチ）の回転角は不定であり、姿勢変化が少なく安定した溶接トーチの姿勢を得るためには、試行錯誤を繰り返しながら適切な回転角を探さなければならない。従って従来は、溶接トーチの姿勢に関する設定を行うために多くの時間を必要としていた。
【０００６】
そこで本発明は、オフラインでのロボットの教示において、ツールの狙い角、前進角及び回転角を適切に設定し、姿勢変化の少ない安定したツールの姿勢を得ることができるロボット教示装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本願第１の発明は、ツールを搭載したロボット及びワークを仮想空間内に配置して、前記ロボットが前記ワークに対し加工を行うときの前記ツールの姿勢を定める狙い角、前進角、及び前記ツールの長手方向軸回りの回転角の設定を行うロボット教示装置であって、前記ロボット及び前記ワークの３次元モデルを仮想空間内に配置する配置部と、前記ワークの３次元モデルの加工箇所を指定する指定部と、予め定めた複数の加工箇所形状と、前記加工箇所形状の各々に関連付けられた前記ツールの狙い角及び前進角との組み合わせを記憶する記憶部と、前記記憶部に記憶された複数の加工箇所形状から、指定された加工箇所に該当する加工箇所形状を選択する選択部と、選択された加工箇所形状に関連付けられた前記ツールの狙い角及び前進角を、指定された加工箇所に対する前記ツールの狙い角及び前進角として設定する第１の設定部と、前記加工箇所に対する前記ツールの狙い角及び前進角を維持した状態で、前記ツールを前記ツールの長手方向軸回りに回転させ、前記仮想空間の地平面に対する前記ロボットのフェースプレートの高さが最大となる、前記加工箇所に対する前記ツールの長手方向軸回りの回転角を求めて設定する第２の設定部と、を有することを特徴とする、ロボット教示装置を提供する。
【０００８】
第２の発明は、第１の発明において、前記加工箇所に対して設定された狙い角、前進角及び回転角を維持した状態で前記ロボットを移動させたときに、前記ロボットが到達できない到達不能点を検出する検出部と、前記到達不能点において、前記加工箇所に対する前記ツールの狙い角及び前進角を維持した状態で、前記ツールを前記ツールの長手方向軸回りに回転させ、前記ロボットの原点と前記ロボットのフェースプレートとの距離が最短となり、かつ前記ロボットが到達可能な点を求めて設定する第３の設定部と、をさらに有する、ロボット教示装置を提供する。
【発明の効果】
【０００９】
本発明に係るロボット教示装置によれば、狙い角、前進角及び回転角を自動で設定でき、ツールの姿勢の設定を行うために必要とされていた時間を大きく削減することができる。さらに、ロボットのフェースプレートの地表面に対する高さが最大となるツールの長手方向軸回りの回転角を求めて設定することにより、姿勢変化が少なく安定したツールの姿勢を得ることができ、加工精度が向上する。
【００１０】
検出部及び第３の設定部により、ロボットが到達できない点が存在する場合は、ロボットが到達可能な点を求めて設定することができ、ツールの姿勢の設定を行うために必要とされていた時間を大きく削減することができる。
【図面の簡単な説明】
【００１１】
【図１】本発明に係るロボット教示装置の一実施形態を示す機能ブロック図である。
【図２】図１のロボット教示装置における処理の一例を示すフローチャートである。
【図３】仮想空間内にロボット及びワークを配置した例を示す図である。
【図４】Ｔ継手形状のワークに加工線を指定した例を示す図である。
【図５】Ｔ継手形状のワークに加工箇所を指定する他の例を示す図である。
【図６】加工箇所の形状を、ワークの種類や加工形態に基づいて複数のパターンに分類した例を示す図である。
【図７】加工箇所形状と、該加工箇所形状に関連付けられた狙い角及び前進φとの組み合わせの一例を示す図である。
【図８】Ｔ継手に隅肉溶接を行う際の教示例を示す図である。
【図９】図８の状態から、ツールをその長手方向軸回りに回転させた状態を示す図である。
【図１０】図９の状態から、到達不能点を回避して到達可能点を求めるためにツールをその長手方向軸回りに回転させた状態を示す図である。
【図１１】仮想空間内にロボット及びワークを配置した例を示す図であって、図１０の状態に相当する図である。
【発明を実施するための形態】
【００１２】
図１は、本発明に係るロボット教示装置の一実施形態の機能ブロック図である。ロボット教示装置１０は、ツールを搭載したロボット及びワークを仮想空間内に配置して、ロボットがワークに対し溶接等の加工を行うためのツールの姿勢を定める狙い角、前進角、及び前記ツールの長手方向軸回りの回転角の設定を行うように構成されている。ロボット教示装置１０は、ロボット及びワークの３次元モデルを仮想空間内に配置する配置部１２と、ワークの３次元モデルの加工箇所を指定する指定部（加工箇所指定部）１４と、予め定めた複数の加工箇所形状と、各加工箇所形状に関連付けられたツールの狙い角及び前進角との組み合わせを記憶する記憶部（加工箇所形状記憶部）１６と、記憶部１６に記憶された複数の加工箇所形状から、指定された加工箇所に該当する加工箇所形状を選択する選択部（加工箇所形状選択部）１８と、選択された加工箇所形状に関連付けられたツールの狙い角及び前進角を、指定された加工箇所に対するツールの狙い角及び前進角として設定する第１の設定部（狙い角、前進角設定部）２０と、加工箇所に対するツールの狙い角及び前進角を維持した状態で、ツールをツールの長手方向軸回りに回転させ、仮想空間の地平面に対するロボットのフェースプレートの高さが最大となる、加工箇所に対するツールの長手方向軸回りの回転角を求めて設定する第２の設定部（回転角設定部）２２と、を有する。
【００１３】
またロボット教示装置１０は、加工箇所に対するツールの姿勢となるようにロボットを移動し、ロボットが到達できない点（到達不能点）があればそれを検出する検出部（到達不能点検出部）２４と、到達不能点において、加工箇所に対するツールの狙い角、および前進角を維持した状態で、ツールをツールの長手方向軸回りに回転させ、ロボットの原点とロボットのフェースプレートとの距離が最短となり、かつロボットが到達可能な点を求めて設定する第３の設定部（到達可能点設定部）２６と、をさらに有することができる。
【００１４】
本発明に係るロボット教示装置１０は、例えばパーソナルコンピュータであり、上述の各構成要素は、適当な入力手段を介する作業者からの操作によって、所定の処理を行うことができるようになっている。或いは、ロボット教示装置１０の機能をロボット制御装置に組み込むことも可能であり、本発明に係るロボット教示装置にはそのような形態のものも含まれる。
【００１５】
以下、ロボット教示装置１０を用いた処理の一例を、図２に示すフローチャートを参照しつつ説明する。先ず、図３に示すように、作業者が適当な入力手段を用いて、仮想空間内に、ツールを搭載したロボット３０、及びロボット３０による加工対象物（ワーク）３２の３次元モデルを配置する（ステップＳ１）。図示例では、配置されたロボット３０は６軸の多関節ロボットであり、基部３４と、基部３４に対して旋回可能に取り付けられた旋回胴３６と、旋回胴３６に回転可能に取り付けられた上腕３８と、上腕３８に回転可能に取り付けられた前腕４０と、前腕４０に回転可能に取り付けられた手首部４２と、手首部４２に取り付けられた溶接トーチ等の作業ツール４４とを有し、冶具４６上に配置されたワーク３２に対して機械加工や溶接等の所定の加工を行うシミュレーションや、加工を行うためのロボットプログラムの教示がオフラインでできるようになっている。
【００１６】
次にステップＳ２において、作業者が適当な入力手段を用いて、仮想空間に配置されたワーク３２の３次元モデル上で、加工箇所を指定する。ここでは一例として、図４に示すように、２つの略矩形の板状部材４８及び５０を隅肉溶接によって継ぎ合わせ、Ｔ継手を形成する。従ってこの場合の溶接箇所は、図４に示すような直線状の加工線（溶接線）５２であり、ツール（溶接トーチ）４４の先端が加工線５２に沿って移動することになる。
【００１７】
なお加工箇所を指定する際、図４に示す加工線５２の代わりに、面を指定してもよい。例えば、図５に示すように、第１の板状部材４８の一方の面５４と、第２の板状部材５０の一方の面のうち、溶接線５２によって分割された２つの領域のうちの一方の領域５６とを、加工箇所として指定することもできる。この場合は、２つの面５４及び５６の境界が加工箇所として指定される。
【００１８】
次のステップＳ３では、予め定めた複数の典型的な加工箇所の形状（加工箇所形状）と、各加工箇所形状に対するツール４４の狙い角及び前進角との組み合わせを、記憶部１６に記憶する。例えば、溶接加工の場合、図６に示すように、加工箇所の形状を、継手の種類（突合せ、Ｔ継手、角継手又は重ね継手）や溶接形態（開先又は隅肉）に基づいて複数のパターンに分類し、各パターンに応じて予め定められたツール（溶接トーチ）４４の狙い角及び前進角を組み合わせ、これら複数の組み合わせをデータベース等の記憶部１６に記憶しておく。
【００１９】
図７は、データベース（記憶部１６）に記憶された、加工箇所形状と、該加工箇所形状に関連付けられた狙い角θ及び前進角φとの組み合わせの一例を示す図である。狙い角θ及び前進角φは、溶接トーチ等のツールの姿勢を記述する量であり、例えば加工箇所形状が図４に示したようなＴ継手の場合、狙い角θは、加工線５８が存在するワークの部分を代表する平面である基準面６０と、ツールの長手方向軸６４及び加工線５８（加工線５８が直線でない場合はその接線）が乗る（含まれる）平面６２とがなす角度である。一方、前進角φは、ツール先端点６６（長手方向軸６４と加工線５８との交点）から、平面６２に乗り（含まれ）かつ加工線５８（加工線５８が直線でない場合はその接線）に垂直に延びる垂線６８と、ツールの長手方向軸６４とがなす角度である。
【００２０】
このようにしてステップＳ３では、各加工箇所の加工に適したツールの狙い角及び前進角を関連付けて、データベース（記憶部）１６に記憶する。なおステップＳ３の処理は、次のステップＳ４までに行っていればよく、故にステップＳ１又はＳ２の前に行ってもよい。
【００２１】
次のステップＳ４では、作業者が適当な入力手段を用いて、記憶部１６に記憶された加工箇所形状の中から、指定した加工箇所に該当する加工箇所形状を選択する。例えば図６において破線６９で示すように、作業者は、画面表示された複数の加工箇所形状のうちの１つを、マウスクリック等の操作によって選択することができる。
【００２２】
次のステップＳ５では、図７に例示したような、選択された加工箇所形状と組み合わせて記憶されたツールの狙い角θ及び前進角φを、加工線５２に対するツールの狙い角θ及び前進角φとして設定する。図８は、加工箇所形状が図４に示したようなＴ継手の場合にツール４４によって加工線５２に沿って隅肉溶接を行う際の教示例を示しており、狙い角θは、加工線５２を含むワーク３２の一方の面（ここでは第２板状部材５０の面５６（図５参照））と、ツール４４の長手方向軸７２及び加工線５２（加工線５２が直線でない場合はその接線）が乗る（含まれる）平面７０とがなす角度である。一方、前進角φは、ツール先端点７４（長手方向軸７２と加工線５２との交点）から、平面７０に乗り（含まれ）かつ加工線５２（加工線５２が直線でない場合はその接線）に垂直に延びる垂線７５と、ツールの長手方向軸７２とがなす角度である。
【００２３】
なおステップＳ５における設定は、ステップＳ１〜Ｓ４の処理に基づいて第１の設定部２０が自動的に行うこともできるし、作業者が数値入力することもできる。なおこの時点では、ツール４４の姿勢を決定する狙い角、前進角及び回転角のうち、狙い角及び前進角が設定されるが、ツール４４の長手方向軸７２回りの回転角は不定である。
【００２４】
次のステップＳ６では、図９に示すように、加工箇所に対する狙い角θ及び前進角φを、設定した値から変化しないように維持した状態で、ツール４４を、ツール４４の長手方向軸７２回りに回転させ、ロボットのフェースプレートが地表面７６（図１参照）に対し下向きになり、仮想空間の地平面７６に対するロボットのフェースプレート７８（例えばプレート中心）の高さＨが最大となる、加工線５２に対するツール４４の長手方向軸７２回りの回転角を求めて設定する。ここでフェースプレート７８とは、ツール４４が取り付けられているロボット３０の略平面状の部位を意味し、例えばツール４４が取り付けられている手首部４２の先端面がこれに該当する。またここでの地平面７６は、仮想空間内において基準となる水平面を意味し、例えばロボット３０又は冶具４６が載置されている設置面（図１参照）が該当し得るが、ツール４４よりも鉛直方向について下方にあり、ロボット３０が動作しても鉛直方向に高さが変わらないのであれば、他の水平面を用いてもよい。
【００２５】
ステップＳ６までの処理により、加工線５２に対するツール４４の姿勢（狙い角、前進角及び回転角）が決定され、加工線５２に沿って加工を行う際のロボット３０（を動作させるロボットプログラム）の教示を行うことができる。つまり本発明では、設定された狙い角及び前進角は、予め定めた加工箇所形状に関連付けられた角度から基本的に変化しない。またロボット３０のフェースプレート７８が地表面７６に対し下向きになり、ロボット３０のフェースプレート７８の地表面７６に対する高さＨが最大となるツール４４の長手方向軸７２回りの回転角を求めて設定することにより、姿勢変化が少なく安定したツール４４の姿勢を得ることができ、実機に適用した際に加工精度の大幅な向上が期待できる。
【００２６】
一方、加工箇所に対して設定されたツール姿勢（狙い角、前進角及び回転角）を維持したままロボット３０を移動させると、ロボット３０の少なくとも１つの軸において動作範囲がその可動範囲を超えてしまう等、ロボットが到達できない点（到達不能点）が生じてしまうことがある。
【００２７】
そこで、ステップＳ７において、上述の到達不能点検出部２４によって、到達不能点の有無と、到達不能点が存在する場合はその情報（ロボットのツール先端点の座標等）とを検出することができる。到達不能点が検出されたら、到達不能点において、上述の第３の設定部（到達可能点設定部）２６が、加工線５２に対するツール４４の狙い角及び前進角を維持した状態で、ツール４４をツール４４の長手方向軸７２回りに回転させ、ロボット３０の原点とロボット３０のフェースプレート７８との距離が最短となり、かつロボットが到達可能な点を求めて設定する（ステップＳ８）。
【００２８】
図１０及び図１１は、ステップＳ８の処理の具体例を示す図である。図９のようなツール４４の姿勢でロボット３０を移動させたときに到達不能点があることが検出されたときは、ツール４４をその長手方向軸７２回りに回転させ（図１０）、ロボット３０の原点（例えばロボット３０の基準座標系８０の原点８２）とロボット３０のフェースプレート７８との距離Ｄが最短となるようにする（図１１）。このときのロボット位置（各軸の位置・姿勢）がロボット３０の到達可能点であれば、そのロボット位置を到達可能点として設定する。そうでない場合は、ロボット３０の原点とフェースプレート７８との距離Ｄを最短の値から適当な刻み幅だけ大きい値としたロボット位置が到達可能点か否かを判断するという処理を繰り返すことにより、適切な到達可能点を求めることができる。
【００２９】
到達不能点検出部２４及び到達可能点設定部（第３の設定部）２６（ステップＳ７及びＳ８）により、ロボット３０が到達できない点が存在する場合に、ロボット３０が到達可能な点のうち最適なものを自動的に求めて設定することができるので、ツール４４の姿勢の設定を行うために必要としていた時間を大きく削減することができる。
【符号の説明】
【００３０】
１０    ロボット教示装置
１２    配置部
１４    加工箇所指定部
１６    加工箇所形状記憶部
１８    加工箇所形状選択部
２０    狙い角、前進角設定部
２２    回転角設定部
２４    到達不能点検出部
２６    到達可能点設定部
３０    ロボット
３２    ワーク
４４    ツール
５２    加工線
７６    設置面
７８    フェースプレート
【図１】
0005980867.tif 000002
【図２】
0005980867.tif 000003
【図３】
0005980867.tif 000004
【図４】
0005980867.tif 000005
【図５】
0005980867.tif 000006
【図６】
0005980867.tif 000007
【図７】
0005980867.tif 000008
【図８】
0005980867.tif 000009
【図９】
0005980867.tif 000010
【図１０】
0005980867.tif 000011
【図１１】
0005980867.tif 000012