JP4206097B2 - ロボットのティーチングデータ作成方法 - Google Patents

ロボットのティーチングデータ作成方法 Download PDF

Info

Publication number
JP4206097B2
JP4206097B2 JP2005340359A JP2005340359A JP4206097B2 JP 4206097 B2 JP4206097 B2 JP 4206097B2 JP 2005340359 A JP2005340359 A JP 2005340359A JP 2005340359 A JP2005340359 A JP 2005340359A JP 4206097 B2 JP4206097 B2 JP 4206097B2
Authority
JP
Japan
Prior art keywords
work
robot
point
teaching
workpiece
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005340359A
Other languages
English (en)
Other versions
JP2007144537A (ja
Inventor
将友 羽田
伸二 青木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Honda Motor Co Ltd
Original Assignee
Honda Motor Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Honda Motor Co Ltd filed Critical Honda Motor Co Ltd
Priority to JP2005340359A priority Critical patent/JP4206097B2/ja
Publication of JP2007144537A publication Critical patent/JP2007144537A/ja
Application granted granted Critical
Publication of JP4206097B2 publication Critical patent/JP4206097B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、ワークの各作業点におけるロボットの姿勢を含むティーチングデータ作成方法に関し、特に、既存のワークに対するティーチングデータを利用して別のワークにおけるティーチングデータを設定するロボットのティーチングデータ作成方法に関する。
製造ラインに設置された多関節ロボットのティーチング作業の効率化を図るため、あるいは、製造ラインの稼働率を向上させるために、オフラインによるティーチング(以下、オフラインティーチングという。)が行われている。オフラインティーチングでは、コンピュータ上に多関節ロボット並びに作業対象物であるワーク及び周辺構造物のモデルを構築し、このモデルを用いてティーチングデータを作成した後、前記ティーチングデータを現場の多関節ロボットに供給することにより、製造ラインを停止させることなくティーチングデータを作成することができる。
オフラインティーチングによれば、製造ラインを停止させる必要がないが、非効率に行うとティーチング用のコンピュータを長時間使用する必要が生じるとともに、ティーチング作業を行うオペレータの負担が大きい。また、多関節ロボットは、所定の搬送ラインの近傍に設けられており、例えば、該搬送ラインで搬送される車両に対して溶接作業を行うが、搬送される車両の種類は1種類とは限らず、対応すべき車種が変更されるときには、新たにティーチングデータを作成することになる。
これを解決するために、特許文献1では、既存のワークに対してすでに作成済みである既存のティーチングデータを、新規のワークに合わせて変換し、新規のティーチングデータを作成する方法が提案されている。
具体的には、既存のティーチングデータがある場合に、変換先の作業点におけるエンドエフェクタの姿勢を示す複数のパラメータのうち1つを固定設定しておき、既存のティーチングデータにおける対応する作業点におけるエンドエフェクタの姿勢を固定設定した前記パラメータが一致するように変換して複写している。このような技術によれば、既存のティーチングデータを有効に利用することができ、コンピュータの使用時間やオペレータの負担を軽減することができて好適である。
特開2004−362018号公報
前記特許文献1で提案されている方法では、順序付けられた既存の複数の教示点を、その順序にしたがって新たなティーチングデータに変換しており、形状が類似するワークに対しては順序付けられたデータがそのまま有効利用される。
ところで、ワークによっては、詳細形状や作業点数が必ずしも一致又は類似しているとは限らず、既存のデータを作業点の順序を維持してそのまま適用することが最適とはならない場合もある。このような場合には、オフラインでロボットのモデルを動作させて動作確認等を行いながら、オペレータが既存のデータの順序や組み合わせを変更して調整している。この調整は試行錯誤的に行われて時間を要するとともに、オペレータには相当の習熟が求められる。
また、既存データは対応する生産ライン等に対して最適に設定されているものであることから、新規データに利用する場合には、少なくとも作業点及びその近傍の退避点等についてはできるだけ修正しないで適用できることが望ましい。
本発明はこのような課題を考慮してなされたものであり、既存のワークに対する既存のティーチングデータをより有効に利用し、別のワークに対するティーチングデータの作成の一層の自動化を可能にするロボットのティーチングデータ作成方法を提供することを目的とする。
本発明に係るロボットのティーチングデータ作成方法は、エンドエフェクタによりワークの複数の作業点に対して順次作業を行うロボットのティーチングデータ作成方法において、1以上の第1ワークにおける複数の作業点に対応して作業順に前記ロボットの位置と前記エンドエフェクタの姿勢とを含んで設定された既存の1以上の第1ティーチングデータに基づいて、前記第1ワークと同機能で同用途の第2ワークにおける複数の作業点に対応して作業順に前記ロボットの位置と前記エンドエフェクタの姿勢とを含む第2ティーチングデータを設定する際、
前記ロボットを基準として前記第1ワーク及び前記第2ワークを仮想的に規定の作業位置に配置した場合に、前記第2ワークにおける対象作業点からの距離が所定範囲内であるか、又は前記対象作業点から近距離の順に所定数の前記第1ワークの作業点を選択する第1工程と、前記対象作業点における前記エンドエフェクタの姿勢に対して、前記第1ワークの作業点における前記エンドエフェクタの姿勢を比較し、姿勢の差が所定範囲内であるか、又は姿勢の差が小さい順に所定数の前記第1ワークの作業点を選択する第2工程と、前記対象作業点における前記ロボットの姿勢に対して、前記第1ワークの作業点における前記ロボットの姿勢を比較し、特定の関節の姿勢差が所定範囲内であるか、又は該姿勢差が小さい順に所定数の前記第1ワークの作業点を選択する第3工程と、前記第1ティーチングデータのうち、前記第2ワークにおける作業点に対応して、前記第1工程、前記第2工程及び前記第3工程で共通して選択された前記第1ワークの作業点に係るデータを、基準とした前記第2ワークの前記対象作業点に係るデータとして第2ティーチングデータに設定する第4工程とを有することを特徴とする。
このように、距離、エンドエフェクタの姿勢変化及びロボットの姿勢差に基づいて選択された第1ワークの作業点は、第2ワークにおける対象作業点と条件が近似しており、該対象作業点に好適に利用可能である。したがって、オペレータのデータ選択の手間が軽減し、ティーチングデータの作成の一層の自動化を図ることができる。
この場合、3つの選択工程は必ずしもこの上記の記載順序で行う必要はなく、3つの選択条件を満たす作業点のデータを選択すればよい。
前記ロボットは、隣接して複数配設されており、前記距離は、複数の前記ロボットの配列方向距離として規定することができる。つまり、ロボット相互の干渉を考慮すると、一方のロボットは他方のロボットの方向に対しての動作の許容範囲が狭くなる傾向がある。したがって、対象作業点に対して配列方向の距離が短い第1ワークの作業点を選択するとことにより、各ロボットはロボット相互の配列方向への姿勢の変化が少なくなり、ロボットの相互干渉が低減する。
前記ロボットは多関節ロボットであり、前記特定の関節は、前記エンドエフェクタが接続される先端側の3つの回転関節とするとよい。つまり、一般的な多関節ロボットでは、基端側の関節がエンドエフェクタの位置を支配的に設定し、先端側の特に3つの回転関節がエンドエフェクタの姿勢(つまり、ロール、ピッチ、ヨー)を支配的に設定している。したがって、先端側の3つの回転関節の姿勢差を抑制することにより、エンドエフェクタの姿勢を略維持した適切なデータが選択される。前記第4工程では、前記第1ティーチングデータのうち、前記第2ワークにおける作業点に対応して選択された前記第1ワークの作業点に係る部分が、対応する前記第2ワークにおける作業点の前記エンドエフェクタの姿勢の情報の少なくとも1部分に合うように変換処理をしてもよい。
本発明に係るロボットのティーチングデータ作成方法によれば、複数の選択工程により得られたデータが対応している第1ワークの作業点は、第2ワークにおける対象作業点と条件が近似しており、該対象作業点に好適に利用可能である。したがって、オペレータのデータ選択の手間が軽減し、ティーチングデータの作成の一層の自動化を図ることができる。
以下、本発明に係るロボットのティーチングデータ作成方法について実施の形態を挙げ、添付の図1〜図12を参照しながら説明する。本実施の形態に係るロボットのティーチングデータ作成方法は、図1に示すロボットシステム10において用いられる。
図1に示すように、ロボットシステム10は、オフラインティーチング装置11と、このオフラインティーチング装置11によって作成されたティーチングデータが適用されるロボット12からなる。
ロボット12は産業用の多関節型であり、ベース部14と、該ベース部14を基準にして順に、第1アーム16、第2アーム18及び第3アーム20とを有し、該第3アーム20の先端に溶接ガンであるエンドエフェクタ22が設けられている。エンドエフェクタ22は、第3アーム20に対して着脱自在である。第1アーム16はベース部14に対して水平及び垂直に回動可能な軸J1、J2によって回動可能である。第2アーム18は第1アーム16と軸J3で回動可能に連結されている。第2アーム18は軸J4によって捻れ回転が可能になっている。第3アーム20は第2アーム18と軸J5で回動可能に連結されている。第3アーム20は軸J6によって捻れ回転が可能になっている。軸J4及び軸J6はそれぞれ360°以上の捻れ回動が可能である。
エンドエフェクタ22は、軸線L上に開閉する一対の電極22a、22bを有するC型溶接ガンであり、この電極22a、22bは閉状態では前記軸線L上の作業点(以下、TCP(Tool Center Point)という。)でワークに接触する。TCPから本体側の電極22a、22bの軸心に一致する方向をベクトルZとし、ベクトルZに直交しエンドエフェクタ22であるC形溶接ガンの開口部方向をベクトルXとする。ベクトルZの方向はガン加圧方向ということができる。また、ベクトルX、ベクトルZに互いに直交する方向をベクトルYとする。
軸J1、J2、J3、J4、J5及びJ6の駆動機構並びに電極22a、22bの開閉機構はそれぞれ図示しないアクチュエータにより駆動され、TCPの座標は軸J1〜J6の回動角度及びロボット12の各部の寸法により決定される。
このような6軸構成のロボット12の動作によって、先端部に接続されたエンドエフェクタ22は搬送される車両の近傍における任意の位置に移動可能であって、且つ、任意の向きに設定可能である。換言すれば、エンドエフェクタ22は6自由度の移動が可能である。ロボット12は、回転動作以外にも伸縮動作、平行リンク動作等の動作部を有するものであってもよい。ロボット12は、ロボット制御部24に設定されたティーチングデータに従って動作する。
図2に示すように、ロボット12は車両の製造ライン25の近傍に隣接して2台が配設されており、それぞれロボット制御部24の作用下に同時に動作し、ワークである車両の溶接をする。この場合、例えば、一方が前列側のドア枠の溶接を行い、他方が後列側のドア枠の溶接を行うように作業分担している。この2台のロボット12の配列方向Cは、製造ライン25の搬送方向と並列に設定されているが、ロボット12やワークの仕様によって配列方向Cは、搬送方向に対して非平行に設定される場合もある。例えば、天井つり下げ型のロボットを2台用いて溶接をする場合には、搬送方向と直角に配列する場合もある。
オフラインティーチング装置11は、コンピュータによって構成されるものであり、図3に示すように、制御部26は、オフラインティーチング装置11の全体の制御を行うCPU28と、記録部であるROM30及びRAM32と、ハードディスクドライブ(HDD)34によってデータが読み書きされるハードディスク36と、フレキシブルディスクやコンパクトディスク等の外部記録媒体38に対してティーチングデータ等の読み書きを行う記録媒体ドライブ40と、ロボット12のティーチングデータを作成するティーチングデータ作成回路42と、作成されたティーチングデータに基づいてロボット12の動作シミュレーションを行うシミュレーション回路44とを備える。なお、制御部26には、オペレータによるティーチング作業の補助、シミュレーション画像の表示等を行うためのディスプレイ46が描画制御回路48を介して接続されるとともに、インタフェース50を介して入力装置としてのキーボード52及びマウス54が接続される。
ハードディスク36には、ロボット12のティーチングデータを作成するためのティーチングデータ作成プログラム56と、ロボット12、作業対象物及びその他の設備に係る形状データ58と、ロボット12の各軸の動作仕様を含むロボット仕様データ60とが記録される。
図4に示すように、ロボット12が溶接を行うワークは、対応のティーチングデータ(第1ティーチングデータ)Q、Rがすでに作成されている車両のドア枠(第1ワーク)100、102と、対応するティーチングデータ(第2ティーチングデータ)Pが未作成である車両のドア枠(第2ワーク)104であり、各ドア枠に対する溶接を行う。ドア枠100、102及び104は、それぞれ車両の前列左側に対応したドア枠であって、ある程度近似した形状である。
なお、図4では、対応する各車両が製造ライン25上を搬送され、ロボット12により溶接されるステーションに搬入され停止した状態で、それぞれのドア枠100〜104を模式的且つ重複的に示している。つまり、ロボット12を基準として製造ライン25上の仮想的に同位置に配置した場合を示している。
ドア枠100は比較的縦長であり、ドア枠102は比較的横長である。ドア枠104はドア枠100及び102の略中間的な形状である。ティーチングデータQ及びRは、既存のデータでありドア枠100及び102に対して実際に適用されている実績のあるデータである。したがって、ティーチングデータQ及びRに基づく動作では、障害物との干渉や、2台のロボット12の相互干渉がないこと及びサイクルタイムが要求値以内であることが確認されており、ティーチングデータQ及びRはそれぞれ製造ライン25に対して最適化されている。
ドア枠100に対応するティーチングデータQは、複数のティーチングポイントQa〜Qv(小文字の添え字は動作順序を示す(以下、同様)。Qa〜Qvを代表的にティーチングポイントQφとも示す。)を含むデータである。このうち、6つのティーチングポイントQb、Qf、Qj、Qn、Qq及びQuは、ドア枠100に対して溶接を行う作業点であり、それ以外は退避点である。ティーチングデータQでは、ドア枠100に対して(例えば、左側のドア枠の場合)時計方向に移動しながら順次溶接を行う。ティーチングポイントQa〜Qvは動作順に関係付けられて記録されている。
退避点は、各作業点の間を中継するティーチングポイントであり、所定の障害物等を避けるとともに、作業点に対してスムーズに進入又は退避することができるように設定されている。
また、図4においては、各ティーチングポイントQφは、代表的にエンドエフェクタ22のTCPの位置を示しており、実際には、図5に示すように、各ポイント毎にロボット12の各軸J1〜J6の角度と、TCPの向きが規定されている。すなわち、図6に示すように、ティーチングポイント(例えば、Qb)について、エンドエフェクタ22及びTCPの向きが直交ベクトルX、Y、Zによって3次元的に規定される。図4においては、作業点であるティーチングポイントQb、Qf、Qj、Qn、Qg及びQuについてはベクトルXを代表的に示す。図4及び図6から明らかなように、ベクトルXはドア枠100の端面に対して略直角方向に規定されている。また、作業点に対して動作順が前後の退避点(例えば、Qa、Qc)は、対応する作業点(例えば、Qb)の近傍の点であって、該作業点を基準としてドア枠100の端面に対して略直角方向の位置に設定されている。さらに、これらの作業点の前後の退避点では、ベクトルXがドア枠100の端面に対して略直角方向となるように設定されてる。このような設定により、エンドエフェクタ22はC型溶接ガンであることからベクトルXがドア枠100の端面に対して進入及び退避が確実且つ容易に行われる。作業点の前後の退避点以外の退避点(例えば、Qd)は、ドア枠100の形状や、他の障害物等を考慮して、干渉がなくしかも短時間で移動可能なように適切な中継点として設定されている。
ドア枠102に対応するティーチングデータRは、ティーチングデータQと同様に複数のティーチングポイントRa〜Roを含むデータである。このうち、4つのティーチングポイントRb、Rg、Rj及びRnは、ドア枠102に対して溶接を行う作業点であり、それ以外は退避点である。ティーチングデータRは、ティーチングデータQと同様に、ティーチングポイントRa〜Ro毎に、各軸J1〜J6の角度や、TCPの向きが設定されており、ドア枠102に対して時計方向に移動しながら溶接を行う。作業点と退避点との相対的な位置及びTCPの向きについてもティーチングデータQと同様に設定されている。
ドア枠104に対するティーチングデータPについては、4つの作業点P1〜P4について、その位置及びTCPの向きのみが仮設定されており、作業点P1〜P4におけるロボット12の姿勢は未設定である。また、退避点の位置、退避点におけるTCPの向き及び退避点におけるロボットの姿勢についても未設定である。作業点P1〜P4の位置及びTCPについては、設計条件によって予め定められている。
次に、このような既存のティーチングデータQ及びRに基づいて、ドア枠104に対応したティーチングデータPを設定する方法について説明する。
図7のステップS1において、ドア枠104の形状や仮設定されている4つの作業点P1〜P4についての情報をオフラインティーチング装置11に入力する。この入力作業は、オペレータが直接的に入力を行い、又は所定の記録媒体から読み込むことにより行われる。なお、これ以後の処理は、オフラインティーチング装置11において自動的に行われる。また、以下の処理における各ワーク、ロボット12及びエンドエフェクタ22等は、オフラインティーチング装置11内における仮想空間上でのモデルデータとして扱われる。
ステップS2(分割工程)において、ティーチングポイントQφ及び(又は)Rφから、作業点のデータ毎に所定のルールに基づいて関連性のある退避点のデータを含ませてグループを設定する。このグループ化により、例えば、図4に示すように、6つのグループGq1〜Gq6が設定される。グループGq1は、ティーチングポイントQa〜Qcからなり、グループGq2は、ティーチングポイントQd〜Qgからなり、グループGq3は、ティーチングポイントQh〜Qkからなり、グループGq4は、ティーチングポイントQl〜Qoからなり、グループGq5は、ティーチングポイントQp〜Qsからなり、グループGq6は、ティーチングポイントQt〜Qvからなる。
また、ティーチングポイントRφについても同様にグループ化され、例えば、図4に示すように、4つのグループGr1〜Gr4が設定される。グループGr1は、ティーチングポイントRa〜Rcからなり、グループGr2は、ティーチングポイントRd〜Rhからなり、グループGr3は、ティーチングポイントRi〜Rlからなり、グループGr4は、ティーチングポイントRm〜Roからなる。このように設定された各グループはいわゆるテンプレートとし用いることができ、以下に示すように利用される。なおグループ化の手順については後述する。
ステップS3〜7において、それぞれの対象作業点に対して適用するグループを選択する。この際、ティーチングデータR及びQがすでに最適化されていることから、選択されたグループを後述する変換工程において対象作業点に対して変換したときに、変換前後におけるロボット12の姿勢差ができるだけ小さくなるようなグループを選択するとよい。
ステップS3において、ドア枠104に対する作業点であるP1〜P4のうち対象作業点を1つ選択し、該対象作業点と各グループの作業点との直距離を調べ、直距離が所定範囲γ(図4参照)内であるグループを抽出する。例えば、対象作業点としてティーチングポイントP1が選ばれている場合、図4に示すように、グループGq1、Gq2、Gr1及びGr2が抽出される。
このように、対象作業点と距離の近いグループが選ばれることから、対象作業点に対してロボット12の姿勢が略同じ状態で適用が可能となる。直距離の比較によるグループ選択は簡単な演算であって、しかも、変換の際にロボット12の姿勢が大きく変化する作業点を排除し、後の演算を効率よく行うことができる。
ステップS4において、対象作業点とステップS3で選択したグループの作業点との配列方向C(図2参照)の距離を調べ、該距離が所定範囲γc内であるグループを抽出する。これにより、対象作業点であるP1に対しては、グループGq1、Gq2及びGr1が抽出され、グループGr2は除外される。
このように、2台のロボット12の配列方向Cの距離が所定範囲γcを超えるグループを排除することにより、2台のロボット12同士の相互干渉のおそれが低減する。すなわち、多関節ロボット同士の相互の干渉を考慮すると、一方のロボットは他方のロボットの方向に対しての動作の許容範囲が狭くなる傾向があることから、対象作業点に対して配列方向Cの距離が短い作業点を選択するとことにより、後の変換工程において各ロボットは配列方向Cへの姿勢の変化が少なくなり、ロボットの相互干渉が低減する。
ステップS5において、対象作業点とステップS4で選択したグループにおける作業点のTCPを比較して、角度差の小さいものをさらに抽出する。例えば、代表的にベクトルXで比較した場合、図4から明らかなように、P1におけるベクトルXは左向きの略水平方向であることから、作業点が同様に左向き略水平方向のベクトルXを有するグループGq1及びGq2が選択され、作業点のベクトルXの向きが斜め左上方であるグループGr1は除外される。
このように、対象作業点に対してTCPの向きの角度差が小さい作業点を有するグループを選択することによって、変換前後のエンドエフェクタ22の姿勢差を小さくすることができる。
ステップS6において、対象作業点に対してそれぞれに規定されたTCPの向きとなるようにエンドエフェクタ22を配置した場合のロボット12の各姿勢を求める。該姿勢は、例えば、対象作業点の位置及びTCPの向きに基づいて、行列式を用いた公知の逆演算手法により求められる。
ステップS7において、対象作業点におけるロボット12の姿勢と、ステップS5で選択されたグループにおける作業点におけるロボット12の姿勢とを比較し、選択されたグループの作業点におけるロボット12の姿勢を、対象作業点におけるロボット12の姿勢に変化させた場合に、ロボット12の特定の関節の姿勢差が最も小さい作業点のグループを選択する。具体的には、ロボット12の6つの関節のうち、エンドエフェクタ22が接続される先端側の3つの回転関節である軸J4、J5及びJ6の姿勢差が最も小さいグループを選択する。この姿勢差は、例えば角度差の絶対値の総和や、角度差の二乗和によって表される。つまり、ロボット12では、基端側の軸J1、J2及びJ3がエンドエフェクタ22の位置を支配的に規定し、先端側の軸J4、J5及びJ6がエンドエフェクタ22の姿勢(つまり、ロール、ピッチ、ヨー)を支配的に規定している。したがって、軸J4〜J6の姿勢差を抑制することにより、エンドエフェクタ22の姿勢を略維持した適切なデータが選択される。なお、仮に伸縮軸が設けられている場合では、伸縮軸はエンドエフェクタ22の姿勢に影響がないことから、伸縮軸を除く回転軸の先端側3軸について姿勢差の比較を行うとよい。このようなステップS7の処理により、対象作業点であるP1に対して、例えばグループGq1が選択される。
対象作業点から近距離の作業点を含むグループを選択する工程(ステップS3、S4)と、対象作業点に対するエンドエフェクタ22の作業姿勢に対する姿勢変化が所定範囲内である作業点を含むグループを選択する工程(ステップS5)と、対象作業点に対して先端側3軸の姿勢差が小さい作業点を含むグループを選択する工程(ステップS7)については、上記の順序で行う必要はなく、任意の順序で行えばよい。また、各選択工程で選択するグループは、所定範囲内のものを選択する方法に限らず、好条件のものから順に所定数(1を含む)を選択するようにしてもよい。
次に、ステップS8において、前記の各選択工程で最終的に選択されたグループを対象作業点に対応するように回転変換処理を行う。例えば、図8に示すように、選択されたグループGq1を移動し、作業点であるティーチングポイントQbを対象作業点P1に一致させたとしても、TCPの向きは異なっていることがある。例えば、代表的にベクトルXで比較して角度θだけずれている場合には、グループGq1のデータ全体をベクトルZを中心に角度θだけ回転させる。これにより、ティーチングポイントQbのTCPは対象作業点のTCPと一致するとともに、相対位置を維持しながら他のティーチングポイントQa及びQcが移動することになる。ティーチングデータQ,Rでは退避点がワークに対して干渉しないこと等が確認されていることから、前記変換工程では、グループ内の作業点及び退避点の相対位置を維持して変換を行うとよい。これにより、変換先の第2ティーチングデータによる第2ワークに対する作業においてもワークに対する干渉等の確率は相当に低くなり、データの補正の手間が軽減する。なお、実際には3次元的な回転変換を行う。
ステップS9において、ドア枠104の4つの作業点P1〜P4の全てについてグループを選択して回転変換を終了したか否かを確認する。未対応の作業点が残っている場合には、そのうちの1つを新たな対象作業点として設定するとともに、ステップS3へ戻りグループ選択の処理を続行する。
このようにして、全ての作業点P1〜P4について、前記ステップS3〜S8の処理を行うことによりそれぞれにグループが対応付けられ、例えば、図9に示すように、作業点P1〜P4について順にグループGq1、Gr1、Gq4及びGq6が選択され、回転変換される。
ステップS10において、作業点P1〜P4に対応した各グループGq1、Gr1、Gq4及びGq6内の作業点及び退避点間についての動作のシミュレーションを行い、ワークやロボット12相互の干渉がないか確認する。
仮に干渉の発生が確認された場合には、対応するグループを対象作業点を中心として適度に回転変換を行い、再度シミュレーションを行う。この際の回転変換は、前記ステップS9と同様にグループ全体を回転させ、作業点と退避点との相対位置を維持する。また、作業点におけるTCPのガン加圧方向であるベクトルZは固定したまま、ベクトルX及びベクトルYを回転させる変換を行う。これにより、電極22a、22bによるワークの保持姿勢が適切に維持される。
ステップS11において、図9に示すように各グループの端部同士を接続して順序付けてティーチングデータPを仮設定し、該ティーチングデータPに基づく動作シミュレーションを行い、ワークやロボット12相互の干渉がないか確認する。干渉が発生する場合には、適当な修正を行う。例えば、ティーチングポイントRcとティーチングポイントQlとの間の経路上に障害物200等が存在することにより干渉が発生する場合には、障害物200を回避するための中継点Pxを設定するとよい。
このようにして、ドア枠100及び102に対する既存のティーチングデータQ及びRを有効利用して、別のワークであるドア枠104に対するティーチングデータPを作成できる。このようなティーチングデータ作成方法では、既存のティーチングQ、Rの部分的なグループ内の作業点、退避点の関係が崩されないで新規のティーチングデータPに適用され、しかもドア枠104の形状は、ドア枠100及び102の形状にある程度近似していることから条件の合うグループが選択される可能性が高く、ティーチングQ、Rの製造ライン25に対する最適性が維持される。
次に、前記のステップS2における分割工程について詳述する。分割工程における作業点、待避点のグループ化には、例えば以下の6つの方法が挙げられる。
第1の方法では、図10に示すように、ティーチングポイントQ1〜Q9(前記のティーチングポイントQφに相当するものとする。)のうち、作業点であるティーチングポイントQ1及びQ7を中心として、中間点で互いに表面が接する同径の球110及び112を設定し、該球110に含まれるティーチングポイントQ1及びQ2をグループG11と設定するとともに、球112に含まれるティーチングポイントQ6、Q7及びQ8をグループG12に設定する。この場合、その他のティーチングポイントQ3、Q4及びQ5はグループから除外される。
第1の方法では、球110及び112を設定することにより、作業点を中心とした適当な範囲内の退避点がグループ化され、後述するティーチングデータPに対して適用しやすい。なお、球110及び112は便宜的なものであって必ずしも設定する必要はなく、ティーチングポイントQ1とティーチングポイントQ7との距離の1/2の長さで制限し、ティーチングポイントQ1及びQ7に対する直距離がこの長さ範囲内のものを選択してもよい。
第2の方法は、作業点であるティーチングポイントQ1及びQ7を中心として、距離が所定範囲α内であるものを選択してグループ化する方法である。この場合、範囲αが球110、112の半径と略同径であれば、第1の方法と同様のグループ化がなされ、ティーチングポイントQ1に対応したグループG21にはティーチングポイントQ1及びQ2が含まれ、ティーチングポイントQ7に対応したグループG22にはティーチングポイントQ6〜Q8が含まれる。仮に範囲αが広く設定されて、グループG21とグループG22が重複する箇所が生じた場合で、該重複箇所にティーチングポイントが存在するときには、重複しない範囲に存在して隣接しているティーチングポイントと同じグループに設定すればよい。また、両方のグループに共通的に属するようにしてもよい。
第2の方法では、所定の範囲α内の退避点がグループ化されることから、各グループが範囲αで規格化されることになり、ティーチングデータPに対して適用しやすい。
第3の方法は、第1の方法又は第2の方法で除外されたティーチングポイントQ3、Q4及びQ5をいずれかのグループに付加する方法であり、破線で示す経路上の距離で、いずれかグループ内の端部のティーチングポイントQφに近い方と同一のグループに属するように設定する。つまり、ティーチングポイントQ3はグループG11(又はG21)の端部のティーチングポイントQ2に近いことから、ティーチングポイントQ1、Q2とともにグループG31として設定する。ティーチングポイントQ4及びQ5はグループG12(又はG22)の端部のティーチングポイントQ6に近いことから、ティーチングポイントQ6〜Q8とともにグループG32として設定する。ティーチングポイントQ9については、図示しないさらに左側の作業点に基づくグループとの距離関係によっていずれのグループに属するかが決められる。
第3の方法では、全てのティーチングポイントQφがいずれかのグループに属することになり、既存データが無駄なく利用される。特に、ティーチングデータPに対応するドア枠104が、既存のドア枠100又は102と類似の形状である場合には、全てのティーチングポイントQφがグループ化されて利用されることにより、後のデータの修正の必要性やデータ修正の程度が少なくなり、好適である。
第4の方法は、作業点であるティーチングポイントQ1及びQ7から、それぞれ近距離の所定数のティーチングポイントを選択する方法である。例えば、ティーチングポイントQ1から順に近い2つの点であるティーチングポイントQ2及びQ3を選択してグループG41を設定するとともに、ティーチングポイントQ7から順に近い2つの点であるティーチングポイントQ6、Q5、Q8、Q9を選択してグループG42を設定する。
第4の方法では、作業点に対する動作順が前後のティーチングポイントが少なくとも1つ確保され、新たなワークであるドア枠104に対しても、作業点に対する侵入動作及び退避動作が相当正確に行われる。
第5の方法は、作業点におけるエンドエフェクタ22の進入又は退避方向に対して、進入又は退避方向の角度差が所定範囲内であるものをグループとして設定する方法である。すなわち、図11に示すように、作業点であるティーチングポイントQ1におけるTCPの向きをベクトルX0、Y0、Z0、他の退避点であるティーチングポイントQφにおけるTCPの向きをベクトルX1、Y1、Z1として表すとき、進入又は退避方向を示すベクトルX0とベクトルX1とを比較する。具体的には、ティーチングポイントQφのベクトルX1をティーチングポイントQ1に並行移動するとともに、該ベクトルX1をX0−Y0平面に投影したベクトルX1y、及びX0−Z0平面に投影したベクトルX1zを求める。さらに、ベクトルX1yとベクトルX0とのなす角度θ1、及びベクトルX1zとベクトルX0とのなす角度θ2を求め、それぞれの角度θ1及びθ2が所定角度範囲内であるか否かを確認する。
このようにして、作業点から近い順に、角度θ1及び角度θ2がそれぞれ所定角度範囲内であるティーチングポイントQφを対応する作業点と同じグループに設定する。角度θ1及び角度θ2のいずれか1つ以上が所定角度範囲外である場合には、グループから除外する。
第5の方法では、進入又は退避方向の角度差が所定範囲内であるものをグループとして設定することから、形状が類似するワークであれば、進入、退避時の干渉の可能性が低く、適用が容易である。
第6の方法は、図12に示すように、作業点であるティーチングポイントQ1と退避点であるティーチングポイントQφとの位置関係上で、進入及び退避する方向(つまり、ベクトルX0の方向)と直角な方向(つまりベクトルY0)における差Yqを求め、該差Yqが所定範囲β内であるものをグループ化する方法である。
このようにして、作業点から近い順に、差Yqが所定範囲β内であるティーチングポイントQφを対応する作業点と同じグループに設定する。差Yqが所定角度範囲βから外れる場合には、グループから除外する。
第6の方法では、ベクトルYの方向の差Yqで制限をすることから、作業点における進入退避方向を示すベクトルX0に対して略同方向に設定されている退避点を抽出することができる。これにより、異なるワークであっても、作業点に対する進入、退避時の干渉の可能性が低く、適用が容易である。第6の方法では、ベクトルX0の方向の差は考慮していないが、この方向は退避方向であることから距離が長くても進入、退避時に干渉が発生する可能性は低い。
なお、第5の方法及び第6の方法は、第1〜第4の方法で選択したグループに対してさらに絞り込むための要件としてもよい。第5の方法と第6の方法は共通的に適用してもよい。
このような第1〜第6のいずれかの方法又はその組み合わせによる方法により、ティーチングポイントQφがグループ化され、例えば、前記のグループGq1〜Gq6及びグループGr1〜Gr4が設定される。
上述したように、本実施の形態に係るロボットのティーチングデータ作成方法では、距離、エンドエフェクタ22の姿勢変化及びロボット12の姿勢差に基づいてティーチングデータQ,Rから適切な作業点が選択される。この作業点はドア枠104における対象作業点(P1〜P4)と条件が近似しており、新たに設定するティーチングデータPに好適に適用可能である。したがって、オペレータのデータ選択の手間が軽減し、ティーチングデータの作成の一層の自動化を図ることができる。また、退避点を作業点と関連付けたままグループ化することにより、その後の変換の程度が小さくて済み、ティーチングデータQ,Rの信頼性、最適性を維持してティーチングデータPに適用することができ、特に、新たなワークであるドア枠104が既存のワークであるドア枠102、104に対して、形状が近似しているほど高い信頼性、最適性が得られる。
上記の処理はほとんどがオフラインティーチング装置11の作用下に自動的に行われることから、オペレータが試行錯誤的に長時間の作業を行う必要がなく、操作方法についても短時間で習熟可能である。
本発明に係るロボットのティーチングデータ作成方法は、上述の実施の形態に限らず、本発明の要旨を逸脱することなく、種々の構成を採り得ることはもちろんである。
オフラインティーチング装置のブロック構成図である。 車両の製造ライン及びロボットシステムの斜視図である。 オフラインティーチング装置のブロック構成図である。 各車両のドア枠と対応するティーチングデータを示す模式図である。 ティーチングデータの内容を示すテーブルである。 エンドエフェクタ及びTCPの向きを示す斜視図である。 本実施の形態に係るロボットのティーチングデータの手順を示すフローチャートである。 グループの回転変換処理を示す模式図である。 ワークに対して設定された新規のティーチングデータを示す模式図である。 作業点及び待避点をグループ化する様子を示す模式図である。 作業点におけるエンドエフェクタの進入又は退避方向に対して、進入又は退避方向の角度差が所定範囲内である退避点をグループに含ませる様子を示す模式図である。 作業点と待避点との位置関係上で、ベクトルY0方向の差所定範囲内である退避点をグループに含ませる様子を示す模式図である。
符号の説明
10…ロボットシステム 12…多関節ロボット
22…エンドエフェクタ 24…ロボット制御部
100〜104…ドア枠 C…配列方向
G1〜G4、G11、G12、G21、G22、G31、G32、G41、G42、Gq1〜Gq6、Gr1〜Gr4…グループ
P、Q、R…ティーチングデータ P1〜P4…作業点
Px…中継点
Q1〜Q9、Qa〜Qv、Ra〜Ro…ティーチングポイント

Claims (4)

  1. エンドエフェクタによりワークの複数の作業点に対して順次作業を行うロボットのティーチングデータ作成方法において、
    1以上の第1ワークにおける複数の作業点に対応して作業順に前記ロボットの位置と前記エンドエフェクタの姿勢とを含んで設定された既存の1以上の第1ティーチングデータに基づいて、前記第1ワークと同機能で同用途の第2ワークにおける複数の作業点に対応して作業順に前記ロボットの位置と前記エンドエフェクタの姿勢とを含む第2ティーチングデータを設定する際、
    前記ロボットを基準として前記第1ワーク及び前記第2ワークを仮想的に規定の作業位置に配置した場合に、前記第2ワークにおける対象作業点からの距離が所定範囲内であるか、又は前記対象作業点から近距離の順に所定数の前記第1ワークの作業点を選択する第1工程と、
    前記対象作業点における前記エンドエフェクタの姿勢に対して、前記第1ワークの作業点における前記エンドエフェクタの姿勢を比較し、姿勢の差が所定範囲内であるか、又は姿勢の差が小さい順に所定数の前記第1ワークの作業点を選択する第2工程と、
    前記対象作業点における前記ロボットの姿勢に対して、前記第1ワークの作業点における前記ロボットの姿勢を比較し、特定の関節の姿勢差が所定範囲内であるか、又は姿勢差が小さい順に所定数の前記第1ワークの作業点を選択する第3工程と、
    前記第1工程、前記第2工程及び前記第3工程で共通して選択された前記第1ワークの作業点に係るデータを、基準とした前記第2ワークの前記対象作業点に係るデータとして第2ティーチングデータに設定する第4工程と、
    を有することを特徴とするロボットのティーチングデータ作成方法。
  2. 請求項1記載のロボットのティーチングデータ作成方法において、
    前記ロボットは、隣接して複数配設されており、
    前記距離は、複数の前記ロボットの配列方向距離であることを特徴とするロボットのティーチングデータ作成方法。
  3. 請求項1または2記載のロボットのティーチングデータ作成方法において、
    前記ロボットは多関節ロボットであり、
    前記特定の関節は、前記エンドエフェクタが接続される先端側の3つの回転関節であることを特徴とするロボットのティーチングデータ作成方法。
  4. 請求項1〜3のいずれか1項に記載のロボットのティーチングデータ作成方法において、
    前記第4工程では、前記第1ティーチングデータのうち、前記第2ワークにおける作業点に対応して選択された前記第1ワークの作業点に係る部分が、対応する前記第2ワークにおける作業点の前記エンドエフェクタの姿勢の情報の少なくとも1部分に合うように変換処理をすることを特徴とするロボットのティーチングデータ作成方法。
JP2005340359A 2005-11-25 2005-11-25 ロボットのティーチングデータ作成方法 Expired - Fee Related JP4206097B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005340359A JP4206097B2 (ja) 2005-11-25 2005-11-25 ロボットのティーチングデータ作成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005340359A JP4206097B2 (ja) 2005-11-25 2005-11-25 ロボットのティーチングデータ作成方法

Publications (2)

Publication Number Publication Date
JP2007144537A JP2007144537A (ja) 2007-06-14
JP4206097B2 true JP4206097B2 (ja) 2009-01-07

Family

ID=38206551

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005340359A Expired - Fee Related JP4206097B2 (ja) 2005-11-25 2005-11-25 ロボットのティーチングデータ作成方法

Country Status (1)

Country Link
JP (1) JP4206097B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5080369B2 (ja) * 2008-06-09 2012-11-21 ファナック株式会社 ロボットオフラインプログラミング装置
JP7118725B2 (ja) * 2018-04-27 2022-08-16 川崎重工業株式会社 ロボットの教示方法及びロボットの教示システム

Also Published As

Publication number Publication date
JP2007144537A (ja) 2007-06-14

Similar Documents

Publication Publication Date Title
JP4262715B2 (ja) ロボットのティーチングデータ作成方法
JP6279862B2 (ja) 冗長ロボットを制御する方法
JP4917252B2 (ja) アーク溶接用装置
JP5268495B2 (ja) オフライン教示データの作成方法及びロボットシステム
CN103692433A (zh) 可模型解耦的三臂杆五自由度平移焊接机器人及其解耦方法
JP6477877B2 (ja) ロボットシステム
US9120223B2 (en) Method of controlling seven-axis articulated robot, control program, and robot control device
CA2526459C (en) Teaching data preparing method for articulated robot
JP2012091304A (ja) ティーチングデータ作成方法およびティーチングデータ作成装置
JP5078770B2 (ja) 多関節ロボットのティーチングデータ検証方法
JP4206097B2 (ja) ロボットのティーチングデータ作成方法
US10022868B2 (en) Inverse kinematic solution for multi-joint link mechanism, and teaching-data creating device using the inverse kinematic solution
US11203117B2 (en) Teaching data generation system for vertical multi-joint robot
RU2756190C1 (ru) Устройство вторичного позиционирования высокоточного мобильного робота
JP2010110878A (ja) 多関節型ロボット装置およびその制御方法
JP2003103481A (ja) 多関節ロボットの姿勢適正化方法および適正化装置
JP2019042875A (ja) 多関節ロボットの制御方法および制御装置
CN116330267A (zh) 一种基于工业机器人腕部奇异点计算的控制方法
WO2022039245A1 (ja) ロボット制御装置
CN116021528B (zh) 一种机器人转台装置校正方法
Wu et al. Coordinated motion planning with calibration and offline programming for a manipulator-positioner system
JP4713030B2 (ja) エンドエフェクタの開度設定方法
JP2004358593A (ja) 多関節ロボットのティーチングデータ作成方法
JPH04232512A (ja) ロボットの姿勢教示方法
JP2002233975A (ja) 多関節ロボットの姿勢演算方法およびプログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080618

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080624

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080821

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20081014

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081017

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111024

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4206097

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111024

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121024

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131024

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees