JP2018083277A - Assembly working robot operation generating method, operation generating program, and operation generating device - Google Patents
Assembly working robot operation generating method, operation generating program, and operation generating device Download PDFInfo
- Publication number
- JP2018083277A JP2018083277A JP2016229476A JP2016229476A JP2018083277A JP 2018083277 A JP2018083277 A JP 2018083277A JP 2016229476 A JP2016229476 A JP 2016229476A JP 2016229476 A JP2016229476 A JP 2016229476A JP 2018083277 A JP2018083277 A JP 2018083277A
- Authority
- JP
- Japan
- Prior art keywords
- assembly
- work
- robot
- data
- teaching point
- 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.)
- Granted
Links
Images
Landscapes
- Manipulator (AREA)
- Numerical Control (AREA)
Abstract
Description
本開示は、組立作業ロボットの動作生成方法、組立作業ロボットの動作生成プログラム、及び組立作業ロボットの動作生成装置に関する。 The present disclosure relates to an assembly robot operation generation method, an assembly robot operation generation program, and an assembly robot operation generation apparatus.
CAD(Computer-Aided Design)データ等を用いて組立作業ロボットの教示点を導出する方法が知られている。 A method for deriving teaching points of an assembly robot using CAD (Computer-Aided Design) data or the like is known.
しかしながら、上記のような従来技術では、組立対象製品を組み立てる際の一連の組立作業の順序が事後的に変更された場合に、該変更に起因した教示点の変更が難しい。例えば、現実的には、一連の組立作業の順序が事後的に変更されることがあり、それに伴って組立作業ロボットの適切な教示点が変化しうる。この場合、再度、一から各教示点を導出し直すことは、ユーザにとって比較的大きな負荷である。 However, in the conventional technology as described above, when the order of a series of assembly operations when assembling a product to be assembled is changed afterwards, it is difficult to change the teaching point due to the change. For example, in reality, the order of a series of assembly operations may be changed afterwards, and the appropriate teaching point of the assembly operation robot may change accordingly. In this case, it is a relatively large load for the user to derive each teaching point again from scratch.
そこで、1つの側面では、本発明は、一連の組立作業の順序における事後的な変更に起因した教示点の変更を容易化することを目的とする。 Thus, in one aspect, the present invention is directed to facilitating changing teaching points due to subsequent changes in the sequence of assembly operations.
1つの側面では、組立作業ロボットを少なくとも部分的に用いて組立対象製品を組み立てる際の一連の組立作業の順序データと、前記組立対象製品を形成する複数の部品の3Dデータとに基づいて、前記一連の組立作業に含まれる一の組立作業の開始時における前記組立対象製品の組立状態を再現し、
再現した前記組立状態に基づいて、前記一の組立作業に係る前記組立作業ロボットに対する教示点を導出することを含む、コンピュータにより実行される組立作業ロボットの動作生成方法が提供される。
In one aspect, based on sequence data of a series of assembly operations when assembling an assembly target product using at least a part of an assembly operation robot, and 3D data of a plurality of parts forming the assembly target product, Reproduce the assembly state of the product to be assembled at the start of one assembly operation included in a series of assembly operations,
There is provided a method of generating an operation of an assembly work robot executed by a computer, including deriving a teaching point for the assembly work robot related to the one assembly work based on the reproduced assembly state.
1つの側面では、本発明によれば、一連の組立作業の順序における事後的な変更に起因した教示点の変更が容易となる。 In one aspect, the present invention facilitates changing teaching points due to subsequent changes in the sequence of assembly operations.
以下、添付図面を参照しながら各実施例について詳細に説明する。 Hereinafter, embodiments will be described in detail with reference to the accompanying drawings.
図1は、一実施例による組立作業ロボット(以下、単に「ロボット」と称する)の動作生成装置1を示す構成図である。図2は、処理装置100のハードウェア構成の一例を示す図である。
FIG. 1 is a configuration diagram showing a
動作生成装置1は、処理装置100を含む。処理装置100は、ユーザの位置にあるコンピュータにより実現されてよいし、ユーザから離れた遠隔位置にあるコンピュータ(例えばサーバ)により実現されてもよいし、これらの組み合わせで実現されてもよい(図15参照)。
The
図2に示す例では、処理装置100は、制御部101、主記憶部102、補助記憶部103、ドライブ装置104、ネットワークI/F部106、入力部107を含む。
In the example illustrated in FIG. 2, the
制御部101は、主記憶部102や補助記憶部103に記憶されたプログラムを実行する演算装置であり、入力部107や記憶装置からデータを受け取り、演算、加工した上で、記憶装置などに出力する。
The
主記憶部102は、ROM(Read Only Memory)やRAM(Random Access Memory)などである。主記憶部102は、制御部101が実行する基本ソフトウェアであるOS(Operating System)やアプリケーションソフトウェアなどのプログラムやデータを記憶又は一時保存する記憶装置である。
The
補助記憶部103は、HDD(Hard Disk Drive)などであり、アプリケーションソフトウェアなどに関連するデータを記憶する記憶装置である。
The
ドライブ装置104は、記録媒体105、例えばフレキシブルディスクからプログラムを読み出し、記憶装置にインストールする。
The
記録媒体105は、所定のプログラムを格納する。この記録媒体105に格納されたプログラムは、ドライブ装置104を介して処理装置100にインストールされる。インストールされた所定のプログラムは、処理装置100により実行可能となる。
The
ネットワークI/F部106は、有線及び/又は無線回線などのデータ伝送路により構築されたネットワークを介して接続された通信機能を有する周辺機器と処理装置100とのインターフェースである。
The network I /
入力部107は、カーソルキー、数字入力及び各種機能キー等を備えたキーボード、マウスやタッチパッド等を有する。
The
尚、図2に示す例において、以下で説明する各種処理等は、プログラムを処理装置100に実行させることで実現することができる。また、プログラムを記録媒体105に記録し、このプログラムが記録された記録媒体105を処理装置100に読み取らせて、以下で説明する各種処理等を実現させることも可能である。なお、記録媒体105は、様々なタイプの記録媒体を用いることができる。例えば、記録媒体105は、CD(Compact Disc)−ROM、フレキシブルディスク、光磁気ディスク等の様に情報を光学的,電気的或いは磁気的に記録する記録媒体、ROM、フラッシュメモリ等のように情報を電気的に記録する半導体メモリ等であってよい。なお、記録媒体105には、搬送波は含まれない。
In the example shown in FIG. 2, various processes described below can be realized by causing the
処理装置100は、機能部として、図1に示すように、データ取得部10と、変数設定部12と、組立状態再現部14と、教示点導出部16と、ロボット動作生成部18とを含む。データ取得部10、変数設定部12、組立状態再現部14、教示点導出部16、及びロボット動作生成部18は、それぞれ、制御部101が主記憶部102に記憶された1つ以上のプログラムを実行することで実現できる。
As illustrated in FIG. 1, the
また、処理装置100は、組立作業順序データ記憶部20、ロボット動作テンプレート記憶部21、製品データ記憶部22、設備データ記憶部23、組立状態再現データ記憶部24、教示点リスト記憶部25、及びロボット動作プログラム記憶部26を含む。また、処理装置100は、ロボット動作テンプレートデータベース27(以下、「ロボット動作テンプレートDB27」と称する)を含む。組立作業順序データ記憶部20、ロボット動作テンプレート記憶部21、製品データ記憶部22、設備データ記憶部23、組立状態再現データ記憶部24、教示点リスト記憶部25及びロボット動作プログラム記憶部26は、例えば補助記憶部103により実現できる。また、ロボット動作テンプレートDB27は、例えば補助記憶部103により実現できる。
The
組立作業順序データ記憶部20は、組立対象製品を組み立てる際の一連の組立作業の順序データ(以下、「組立作業順序データ」と称する)を記憶する。組立対象製品の組み立てには、ロボットが少なくとも部分的に用いられる。例えば、組立対象製品の組み立ては、ロボットと人とで協動して実現されてもよいし、完全にロボットにより実現されてもよい。組立作業順序データは、ユーザにより生成される。組立対象製品は、任意であり、例えば各種の半導体製品や、各種の電子機器、各種の機械等であってよい。
The assembly work order
ロボット動作テンプレート記憶部21は、ロボット動作生成部18で使用されるロボット動作テンプレート(後述)が記憶される。ロボット動作テンプレート記憶部21には、後述のロボット動作テンプレートDB27内の各種のロボット動作テンプレートのうちの、ロボット動作生成部18で使用される特定の1つ以上のロボット動作テンプレートが記憶される。
The robot motion
製品データ記憶部22は、組立対象製品の製品データを記憶する。製品データは、組立対象製品を形成する各部品の3次元(3D)データ(以下、「部品3Dデータ」とも称する)、及び、同製品の部品構成データを含む。部品3Dデータは、各部品の単品状態のデータと、各部品が組み立てられた状態のデータとを含む。各部品が組み立てられた状態のデータに代えて、各部品が組み立てられた状態を再現できる他のデータ(例えば各部品の配置を表すデータ等)が用いられてもよい。部品構成データは、各部品の親子関係を表すデータであり、例えばアセンブリツリー(図6のアセンブリツリー402参照)の形態である。製品データは、既知データとしてユーザにより生成される。
The product
設備データ記憶部23は、組立設備データを記憶する。組立設備データは、組立対象製品を組み立てる設備に関するデータであり、設備の3Dデータを含む。設備は、ロボット等を含む。設備の3Dデータは、好ましくは、設備をほぼ再現できるデータである。但し、設備の3Dデータは、以下説明する各種処理に関連しない設備部分については含んでいなくてもよい。組立設備データは、既知データとしてユーザにより生成される。
The equipment
組立状態再現データ記憶部24は、組立状態再現データを記憶する。組立状態再現データは、一連の組立作業に含まれる一の組立作業の開始時における組立対象製品の組立状態を再現するデータであり、組立状態再現部14により生成される。一の組立作業の単位は、作業分類に対応してよく、例えば、一の組立作業と、他の一の組立作業とは、作業分類が異なり得る関係がある。但し、一の組立作業は、複数の作業分類の作業の複合であってもよい。組立状態再現データについては後述する。
The assembly state reproduction
教示点リスト記憶部25は、教示点リストを記憶する。後述するように、教示点リストは、教示点導出部16によりロボット動作テンプレート毎に生成される。教示点リストは、例えば、対応するロボット動作テンプレートに紐付けられる態様で記憶される。
The teaching point
ロボット動作プログラム記憶部26は、組立対象製品に係るロボット動作プログラムを記憶する。組立対象製品に係るロボット動作プログラムは、後述するようにロボット動作生成部18により生成される。
The robot operation
ロボット動作テンプレートDB27は、組立対象製品に係るロボット動作プログラムを生成するためのロボット動作テンプレートを記憶する。ロボット動作テンプレートは、教示点に係る情報を変数で表したロボットプログラムの雛形である。尚、教示点は、後述の座標値及び姿勢値で表すことができる。ロボット動作テンプレートは、予め用意され、ユーザにより変数等が設定される。ロボット動作テンプレートは、作業分類(組立作業の属性)ごとに用意される。例えば、ロボット動作テンプレートでは、個別の作業に依存した情報(設備情報や、ワーク部品の属性、把持や組付け時の要件、移動量等)が変数化され、作業分類ごとのロボット動作がテンプレート化される。作業分類とは、ピック、プレイス、運搬、撮像、貼付け等である。
The robot
ここで、図3及び図4を参照して、ロボット動作テンプレートの例について説明する。ここでは、一例として、作業分類「ピック」に関するロボット動作テンプレートの例について説明する。 Here, an example of the robot motion template will be described with reference to FIGS. 3 and 4. Here, as an example, an example of a robot motion template related to the work classification “pick” will be described.
図3は、ロボット動作テンプレートの一例を示す図である。図4は、ロボット動作テンプレートの説明図であり、テンプレート化したロボット動作を概略的に示す図である。図4には、供給機900からワーク部品800をピックする作業に関するロボットハンド700の動きが、複数の各教示点P1〜P5と共に、点線の矢印で示される。
FIG. 3 is a diagram illustrating an example of a robot motion template. FIG. 4 is an explanatory diagram of the robot motion template, and is a diagram schematically showing the robot motion that has been made into a template. In FIG. 4, the movement of the
ロボット動作テンプレートは、教示点変数化部300と、教示点順序記述部302とを含む。
The robot motion template includes a teaching point
教示点変数化部300では、ロボット動作テンプレートで使用する変数の変数名や値が記述される。尚、ユーザは、目的動作に応じて変数の値を変更できる。図3に示す例では、教示点変数化部300は、基準点(後述)からの距離の情報310と、使用設備情報312とを含む。基準点は、例えば、ロボットハンドによる部品把持位置や部品組付け位置であり、導出方法は後述する。使用設備情報312は、使用するロボットを特定する情報や、使用するロボットハンドを特定する情報等を含む。
In the teaching point
教示点順序記述部302では、ロボットの動作の各教示点の順序(動作に従った順序)に従って、各教示点の変数が記述される。各教示点の変数の具体的な値は、後述のように教示点導出部16により導出される。図3に示す例では、教示点順序記述部302は、動作順序の情報314を含む。ここでは、動作順序の情報314は、図4に示す教示点601〜605に係る情報である。教示点601〜605は、図3に示すように、ロボットの動作に従った順序で記述される。
In the teaching point
尚、必須ではないが、ロボット動作テンプレートは、その他の情報として、動作速度、動作方法(補間方法)、IO時間、初期把持状態等の情報を含んでよい。尚、ロボット動作テンプレートは、例えば、教示点変数化部300における変数の値がデフォルト値に設定された状態(又は無効値に設定された状態)でロボット動作テンプレートDB27内に保存される。
Although not essential, the robot operation template may include information such as an operation speed, an operation method (interpolation method), an IO time, and an initial gripping state as other information. The robot motion template is stored in the robot
データ取得部10は、組立作業順序データ記憶部20、製品データ記憶部22、設備データ記憶部23、及びロボット動作テンプレートDB27から、変数設定部12や組立状態再現部14や教示点導出部16で利用する各種データ等を取得する。
The
変数設定部12は、ユーザからの入力に基づいて、ロボット動作テンプレートにおける各種変数(図3の教示点変数化部300参照)を設定する。尚、ユーザからの入力は、入力部107を介して取得される。
The
組立状態再現部14は、組立作業順序データ記憶部20内の組立作業順序データと、製品データ記憶部22内の製品データとに基づいて、一連の組立作業に含まれる一の組立作業の開始時における製品の組立状態を再現する。組立状態再現部14は、再現結果である組立状態再現データを生成する。組立状態再現部14による組立状態再現方法の具体例は後述する。
Based on the assembly work order data in the assembly work order
教示点導出部16は、一連の組立作業に含まれる一の組立作業ごとに、組立状態再現データ記憶部24内の組立状態再現データに基づいて、該一の組立作業に係る教示点を導出する。教示点導出部16は、一連の組立作業に含まれる各一の組立作業に対して、教示点を導出する。
The teaching
ロボット動作生成部18は、一連の組立作業に含まれる一の組立作業ごとに、教示点導出部16により導出された教示点に基づいて、該一の組立作業に係る動作プログラムを、生成する。ロボット動作生成部18は、一連の組立作業に含まれる各一の組立作業に対して、動作プログラムを生成し、各動作プログラムを組み合わせることで、最終的なロボット動作プログラムを生成する。
The robot
次に、図5を参照して、動作生成装置1の動作例について説明する。
Next, an operation example of the
図5は、ある一連の組立作業を対象としたときの動作生成装置1の動作例を示す概略フローチャートである。ここでは、一例として、対象の一連の組立作業は、N個の組立作業からなるものとする。
FIG. 5 is a schematic flowchart showing an operation example of the
ステップS500では、データ取得部10は、対象の一連の組立作業に係る各種データを、組立作業順序データ記憶部20、製品データ記憶部22、及び設備データ記憶部23のそれぞれから取得する。
In step S <b> 500, the
ステップS502では、データ取得部10は、ステップS500で取得した組立作業順序データに基づいて、ロボット動作テンプレートDB27(図示せず)から、対象の一連の組立作業に係るロボット動作テンプレートを抽出(取得)する。例えば、データ取得部10は、対象の一連の組立作業に含まれる各組立作業の作業分類に基づいて、作業分類に応じたロボット動作テンプレートを抽出する。ここでは、データ取得部10は、N個の組立作業に対応して、N個のロボット動作テンプレートを抽出する。尚、データ取得部10は、組立作業順序データに基づいてN個のロボット動作テンプレートを自動的に抽出することに代えて、ユーザからの入力(選択)に基づいてN個のロボット動作テンプレートを抽出してもよい。即ち、使用するロボット動作テンプレートは、ユーザにより選択されてもよい。
In step S502, the
ステップS504では、変数設定部12は、ステップS502で取得したロボット動作テンプレートにおける変数の設定処理を行う。例えば、変数設定部12は、変数の設定作業をユーザに要求する。ロボット動作テンプレートは、例えば、教示点変数化部300における変数の値がデフォルト値に設定された状態(又は無効値に設定された状態)でロボット動作テンプレートDB27から取得される。ステップS502で取得した全てのロボット動作テンプレートに対してユーザによる変数設定作業が完了すると、変数設定部12は、変数が設定された全てのロボット動作テンプレートを、ロボット動作テンプレート記憶部21に記憶する。ステップS504が終了すると、ステップS506に進む。
In step S504, the
ステップS506では、組立状態再現部14は、kを“1”に設定(初期化)する。
In step S506, the assembly
ステップS508では、組立状態再現部14は、組立作業順序でk番目のロボット動作テンプレートを選択する。以下、N個の組立作業のうちの、k番目のロボット動作テンプレートに対応する組立作業を、「対象作業」と称する。
In step S508, the assembly
ステップS510では、組立状態再現部14は、k番目のロボット動作テンプレートに係る組立状態再現処理を行う。k番目のロボット動作テンプレートに係る組立状態再現処理は、k番目のロボット動作テンプレートに係る一の組立作業の開始時における製品の組立状態を再現する処理である。即ち、k番目のロボット動作テンプレートに係る組立状態再現処理は、対象作業の開始時における製品の組立状態を再現する処理である。組立状態再現処理の例は、図6乃至図8を参照して後述する。
In step S510, the assembly
ステップS512では、教示点導出部16は、組立状態再現データ記憶部24から、k番目のロボット動作テンプレートに係る組立状態再現データ(ステップS510で生成された組立状態再現データ)を取得する。
In step S512, the teaching
ステップS514では、教示点導出部16は、ステップS500で取得された組立設備データと、ステップS512で取得した組立状態再現データとに基づいて、k番目のロボット動作テンプレートに係る教示点導出処理を行う。即ち、教示点導出部16は、対象作業に係る教示点導出処理を行う。教示点導出処理の例は、図10乃至図12を参照して後述する。
In step S514, the teaching
ステップS516では、教示点導出部16は、k=Nであるか否かを判定する。Nは、上述のように、対象の一連の組立作業の含まれる組立作業の数である。k=Nの場合は、ステップS520に進み、k≠Nの場合は、ステップS518を経て、ステップS508に戻る。
In step S516, the teaching
ステップS518では、教示点導出部16は、kを“1”だけインクリメントする。
In step S518, the teaching
ステップS520では、ロボット動作生成部18は、教示点リスト記憶部25内の教示点リスト(対象の一連の組立作業に係る教示点リスト)と、ステップS502で取得したロボット動作テンプレートとに基づいて、ロボット動作プログラムを生成する。教示点リスに基づくロボット動作プログラムの生成処理の例は、図13及び図14を参照して後述する。
In step S520, the robot
次に、図6乃至図8を参照して、組立状態再現処理の例について説明する。 Next, an example of the assembly state reproduction process will be described with reference to FIGS.
図6は、組立状態再現処理に係る入力の一例を模式的に示す図である。 FIG. 6 is a diagram schematically illustrating an example of input related to the assembly state reproduction process.
図6には、組立作業順序データ400と、初期位置データ401と、組立対象製品のアセンブリツリー402と、組立対象製品の組立状態に係る部品3Dデータ404とが模式的に示される。
FIG. 6 schematically shows assembly
組立作業順序データ400によれば、組立対象製品は、以下の手順(組立作業の順序)で組付けられる。
手順1.部品Cを部品Aに組付ける。
手順2.部品Aを部品Xに組付ける。
手順3.部品Wを部品Xに組付ける。
手順4.部品Yを部品Zに組付ける。
手順5.部品Zを部品Wに組付ける。
手順6.部品Dを部品Cに組付ける。
手順7.部品Bを部品Aに組付ける。
各手順に係る組立作業は、作業対象のワーク部品(以下、単に「作業対象ワーク部品」と称する)と、該作業対象ワークの組付け先となる部品(以下、単に「組付け先部品」と称する)との関係を表す。例えば、手順1に係る組立作業では、部品Cが作業対象ワーク部品であり、部品Aが組付け先部品である。
According to the assembly
The assembly work according to each procedure includes a work part to be worked (hereinafter simply referred to as “work target work part”) and a part to which the work target work is to be assembled (hereinafter simply referred to as “part to be assembled”). It represents the relationship. For example, in the assembly work according to the
ここでは、一例として、手順1〜7は、部品単位で規定されているが、部品単位とサブアセンブリ(2つ以上の部品の組立体:部品組立体)単位との組み合わせで規定されてもよい。
Here, as an example, the
また、初期位置データ401は、作業対象ワーク部品及び組付け先部品の各初期位置を表す。初期位置データ401によれば、作業対象ワーク部品及び組付け先部品の各初期位置は、それぞれの供給位置及び組付け位置であり、例えば以下の座標である。
作業対象ワーク部品:(10,20,10,0,90,90)
組付け先部品:(100,0,−30,0,0,0)
ここで、上記の座標の表記(以下の説明における同表記も同様)は、X軸、Y軸、及びZ軸の3軸の各座標(x、y、z)と、姿勢(向き)を表すオイラー角(α、β、γ)とからなる。以下、作業対象ワーク部品等の位置を表すとき、X軸、Y軸、及びZ軸の3軸の各座標の値を、「座標値」とも称し、各オイラー角の値を、「姿勢値」とも称する。
The
Work target work parts: (10, 20, 10, 0, 90, 90)
Assembly destination parts: (100, 0, -30, 0, 0, 0)
Here, the notation of the coordinates (the same notation in the following description) represents the coordinates (x, y, z) of the three axes of the X axis, the Y axis, and the Z axis, and the posture (orientation). It consists of Euler angles (α, β, γ). Hereinafter, when representing the position of a work part to be worked, etc., the values of the coordinates of the three axes of the X axis, the Y axis, and the Z axis are also referred to as “coordinate values”, and the values of the Euler angles are represented by “posture values”. Also called.
また、アセンブリツリー402によれば、組立対象製品は、部品Xと、サブアセンブリSubAssy1と、サブアセンブリSubAssy3との組み合わせからなる。サブアセンブリSubAssy1は、部品Aと、部品Bと、サブアセンブリSubAssy2との組み合わせからなる。また、サブアセンブリSubAssy2は、部品Cと部品Dとからなり、サブアセンブリSubAssy3は、部品Wと部品Zと部品Yとからなる。尚、以下の説明において、アセンブリツリーにおいて、ある部品に関する“子供”とは、該部品の配下にある部品(ツリー構造上で該部品が枝元となる部品)にある部品を指す。
Further, according to the
また、部品3Dデータ404によれば、組立対象製品は、部品Xの上に、サブアセンブリSubAssy1と、サブアセンブリSubAssy3とが別々の位置に配置されている。サブアセンブリSubAssy1は、部品Aの上に、部品BとサブアセンブリSubAssy2とが別々の位置に配置されている。サブアセンブリSubAssy2は、部品Cの上に部品Dが配置されている。サブアセンブリSubAssy3は、部品Wの上に部品Zが配置され、部品Zの上に部品Yが配置されている。
Further, according to the
図7は、組立状態再現処理に係る出力の一例を模式的に示す図である。ここでは、図7には、手順5に係る組立作業“部品Zを部品Wに組付ける”が対象作業であるとする。
FIG. 7 is a diagram schematically illustrating an example of an output related to the assembly state reproduction process. Here, in FIG. 7, it is assumed that the assembly work “assembling part Z to part W” according to
図7には、組立状態再現処理の結果(出力)が概念的に示される。具体的には、図7には、アセンブリツリー412と、作業対象ワークの3Dデータ414と、組付け先の3Dデータ416とが模式的に示される。尚、アセンブリツリー412では、手順6及び手順7が実行されていない状態が示される。
FIG. 7 conceptually shows the result (output) of the assembly state reproduction process. Specifically, FIG. 7 schematically illustrates an
手順5に係る組立作業“部品Zを部品Wに組付ける”が対象作業であるとき、作業対象ワーク部品は、部品Zである。部品Zには、手順5よりも前に(即ち手順4にて)、部品Yが既に組付けられているので、作業対象ワークは、3Dデータ414に示すように、部品Zと部品Yとなる(即ち部品Yが組付けられた部品Zとなる)。
When the assembling work “assembling part Z to part W” according to
また、手順5に係る組立作業“部品Zを部品Wに組付ける”が対象作業であるとき、組付け先部品は、部品Wである。部品Wには、手順5よりも前に(即ち手順3等にて)、部品X等が既に組付けられているので、組付け先は、3Dデータ416に示すように、部品X,部品A,部品Cと部品Wとなる。即ち、組付け先は、3Dデータ416に示すように、部品C、部品A、及び部品Xの3部品が組付けられた部品Wとなる。
In addition, when the assembly work “assembling part Z to part W” according to
図8は、組立状態再現処理の一例を示すフローチャートである。図9は、図8の説明図であり、各種フラグのイメージ図である。図8に示す処理は、図5のステップS510として実行される。 FIG. 8 is a flowchart illustrating an example of the assembly state reproduction process. FIG. 9 is an explanatory diagram of FIG. 8 and is an image diagram of various flags. The process shown in FIG. 8 is executed as step S510 in FIG.
ステップS800では、組立状態再現部14は、組立対象製品のアセンブリツリー(図6のアセンブリツリー402参照)の全ての部品に、チェック用フラグと表示用フラグを付け加える(図9参照)。
In step S800, the assembly
ステップS802では、組立状態再現部14は、全ての部品に係るチェック用フラグ及び表示用フラグを“False”に初期化する。
In step S <b> 802, the assembly
ステップS804では、組立状態再現部14は、j=kに設定する。
In step S804, the assembly
ステップS806では、組立状態再現部14は、j番目の組立作業(j番目のロボット動作テンプレートに対応する組立作業)に係る作業対象ワーク部品と、同組立作業に係る組付け先部品のそれぞれに係るチェック用フラグ及び表示用フラグを“True”にセットする。
In step S806, the assembly
ステップS808では、組立状態再現部14は、ステップS806でチェック用フラグを“True”にセットした各部品に、子供がいるか否かを判定する。子供がいる場合は、ステップS810に進み、それ以外の場合は、ステップS812に進む。
In step S808, the assembly
ステップS810では、組立状態再現部14は、子供に対応する部品に係るチェック用フラグを“True”にセットにして、ステップS808に戻る。このようにして、子供の子供(孫)、孫の子供(ひ孫)といった具合に、最下層までチェック用フラグが“True”にセットされる。
In step S810, the assembly
ステップS812では、組立状態再現部14は、jを“1”デクリメントする。即ち、処理対象が、前の組立作業に移行される。
In step S812, the assembly
ステップS814では、組立状態再現部14は、j=0であるか否かを判定する。j=0であることは、前の組立作業が無いことを意味し、従って、手順1までの組立作業が考慮されたことを意味する。j=0の場合は、ステップS818に進み、j≠0の場合は、ステップS816に進む。
In step S814, the assembly
ステップS816では、組立状態再現部14は、j番目の組立作業に係る作業対象ワーク部品及び組付け先部品のいずれかに係るチェック用フラグが“True”であるか否かを判定する。判定結果が“YES”の場合は、ステップS806に戻り、それ以外の場合は、ステップS812に戻る。
In step S816, the assembly
ステップS818では、組立状態再現部14は、表示用フラグが“True”のサブアセンブリがあり、且つ、該サブアセンブリの配下の全ての部品の表示用フラグが“False”であるか否かを判定する。サブアセンブリの配下の全ての部品とは、該サブアセンブリを形成する各部品の全てに対応する。例えば図6に示す例では、サブアセンブリSubAssy1の配下の全ての部品とは、部品A、部品B,部品C,及び部品Dである。判定結果が“YES”の場合は、ステップS820に進み、それ以外の場合は、ステップS822にスキップする。
In step S818, the assembly
ステップS820では、組立状態再現部14は、表示用フラグが“True”のサブアセンブリの配下にある全ての部品の表示用フラグを“True”にセットする。
In step S820, the assembly
ステップS822では、組立状態再現部14は、表示用フラグが“True”の各部品を初期位置に移動させる。この際、組立状態再現部14は、k番目のロボット動作テンプレートに係る作業分類に応じて、それぞれの部品を初期位置へ移動させる。例えば、組立状態再現部14は、作業対象ワーク部品及び組付け先部品を、それぞれ、それぞれの供給位置及び組付け位置に移動させる。供給位置及び組付け位置は、作業分類に応じて、組立設備データに基づいて導出されてよい。組立状態再現部14は、作業対象ワーク部品に組付けられている他の部品が存在する場合は、作業対象ワーク部品及び該他の部品に係る部品3Dデータに基づいて、該他の部品を作業対象ワーク部品に対して位置付ける。これにより、作業対象ワークの3Dデータが再現される。同様に、組立状態再現部14は、組付け先部品に組付けられている他の部品が存在する場合は、組付け先部品及び該他の部品に係る部品3Dデータに基づいて、該他の部品を組付け先部品に対して位置付ける。これにより、組付け先の3Dデータが再現される。このようにして、k番目のロボット動作テンプレートに係る一の組立作業の開始時における製品の組立状態が再現される(図7参照)。組立状態再現部14は、再現した組立状態のデータ(組立状態再現データ)を、組立状態再現データ記憶部24に記憶する。図7では、手順5に係る一の組立作業の開始時における製品の組立状態の再現(出力)が示されている。
In step S822, the assembly
ところで、実際の工場では、生産変動の対応のために作業順序の組み換えが行われており、その度にロボット動作生成をやり直すのは不便である。例えば、図6に示す例では、当初は、以下のような手順(組立作業の順序)が規定されていたが、上述のような手順に変更されている。
手順01.部品Cを部品Dに組付ける。
手順02.サブアセンブリSubAssy2を部品Aに組付ける。
手順03.部品Bを部品Aに組付ける。
手順04.部品Yを部品Zに組付ける。
手順05.部品Zを部品Wに組付ける。
手順06.サブアセンブリSubAssy3を部品Xに組付ける。
手順07.サブアセンブリSubAssy1を部品Xに組付ける。
このような、作業順序に依存する組立対象製品の組立状態をテンプレート化することは難しい。作業順序の場合の数は、膨大であり、例えば、50作業ある場合は、作業順序は50!(1064)通りにも上る。
By the way, in an actual factory, work order is rearranged to cope with production fluctuations, and it is inconvenient to redo robot operation generation each time. For example, in the example shown in FIG. 6, the following procedure (the order of assembly work) was initially defined, but has been changed to the procedure described above.
Procedure 01. Assemble part C to part D.
Procedure 02. Assemble subassembly SubAssy2 to part A.
Step 03. Assemble part B to part A.
Procedure 04. Assemble part Y to part Z.
Procedure 05. The part Z is assembled to the part W.
Procedure 06. Assemble subassembly SubAssy3 to part X.
Procedure 07. Assemble subassembly SubAssy1 to part X.
It is difficult to create a template for the assembly state of the assembly target product depending on the work order. The number of work orders is enormous. For example, when there are 50 works, the work order is as many as 50! (10 64 ).
この点、本実施例によれば、組立状態再現部14は、組立作業順序データ記憶部20内の組立作業順序データと、製品データ記憶部22内の製品データとに基づいて、特定の一の組立作業の開始時における組立状態を再現する。従って、ユーザは、作業順序の組み換えのような作業順序の変更時には、それに伴い組立作業順序データを変更するだけでよくなる。
In this regard, according to the present embodiment, the assembly
他方、作業順序の組み換えのような作業順序の変更時には、製品データ記憶部22内の製品データのうちの、部品構成データについても変更が必要となる場合があり得る。例えば、当初はサブアセンブリとして組付けられる予定であった部品が、単独で組付けられるように変更された場合、部品構成が変更されることになる。
On the other hand, when the work order is changed such as rearrangement of the work order, the part configuration data in the product data in the product
この点、部品構成データについてもユーザに変更してもらうことしてもよいが、図8に示す処理によれば、かかるユーザによる部品構成データの変更を必要とせずに、特定の一の組立作業の開始時における製品の組立状態を再現できる。具体的には、図8に示す処理によれば、組立作業順序データに基づいて組立作業を遡りながら表示用フラグを“True”にセットするので(ステップS812、ステップS816等参照)、部品構成の変更の影響を低減できる。また、図8に示す処理によれば、ステップS818及びステップS820を設けることで、サブアセンブリ単位で作業順序が規定される場合でも、サブアセンブリ配下の部品が省略されない態様で組立状態を再現できる。 In this regard, the user may be allowed to change the part configuration data. However, according to the process shown in FIG. 8, the user does not need to change the part configuration data. The assembly state of the product at the start can be reproduced. Specifically, according to the processing shown in FIG. 8, the display flag is set to “True” while tracing the assembly work based on the assembly work order data (see step S812, step S816, etc.). The impact of changes can be reduced. Further, according to the process shown in FIG. 8, by providing Step S818 and Step S820, the assembly state can be reproduced in a manner that the parts under the subassembly are not omitted even when the work order is defined in units of subassemblies.
また、実際の工場では、一連の組立作業の途中で、組み立て途中のサブアセンブリなどとは、別の組立作業を行うことがあるため、対象作業ワークに関係ある部品だけを再現することが望ましい。 Further, in an actual factory, an assembly work different from a sub-assembly or the like in the middle of a series of assembly work may be performed, so it is desirable to reproduce only parts related to the target work.
この点、図8に示す処理によれば、ステップS806〜ステップS816を行うことで、対象作業ワークに関係ある部品だけを再現できる。即ち、特定の一の組立作業に係る作業対象ワーク部品と、同組立作業に係る組付け先部品とに基づいて、該作業対象ワーク部品に既に組付けられている部品を含む作業対象ワークと、該組付け先部品に既に組付けられている組付けとを再現できる。 In this regard, according to the processing shown in FIG. 8, only parts related to the target work can be reproduced by performing steps S806 to S816. That is, based on the work target work part related to one specific assembly work and the assembly destination part related to the assembly work, the work target work including parts already assembled to the work target work part; It is possible to reproduce the assembly already assembled to the assembly destination part.
次に、図10乃至図12を参照して、教示点導出処理の例について説明する。 Next, an example of the teaching point derivation process will be described with reference to FIGS.
図10及び図11は、教示点導出処理の説明図である。図10は、作業対象ワークの把持時(ピック)に対する教示点を側面視で模式的に示す図であり、図11は、組付け先への作業対象ワークの組付け時(プレイス)に対する教示点を側面視で模式的に示す図である。 10 and 11 are explanatory diagrams of the teaching point derivation process. FIG. 10 is a diagram schematically showing a teaching point when holding the work target workpiece (pick) in a side view, and FIG. 11 is a teaching point when assembling the work target workpiece to the assembly destination (place). It is a figure which shows this typically by side view.
図10には、部品供給トレイ902上の作業対象ワーク810がロボットハンド700で把持された状態が示される。図10において、P10は、把持位置に関する教示点であり、P11は、アプローチ位置に関する教示点であり、P12は、持ち上げ位置に関する教示点である。尚、各教示点間でのロボットハンド700の動作方向は、直線であってよい。
FIG. 10 shows a state in which the
図11には、組付け先820への作業対象ワークの組付け時の状態が示される。図11において、P13は、組付け位置に関する教示点であり、P14は、退避位置に関する教示点であり、P15は、アプローチ位置に関する教示点である。尚、各教示点間でのロボットハンド700の動作方向は、直線であってよい。
FIG. 11 shows a state at the time of assembling the work target work to the assembling
教示点導出部16は、部品供給トレイ902上の作業対象ワーク810の把持位置でのロボットハンド700の姿勢値と、組付け先820への作業対象ワークの組付け位置でのロボットハンド700の姿勢値とを導出する。把持位置及び組付け位置でのロボットハンド700の姿勢は、組立状態再現データ(即ち組立状態再現処理の出力)等に基づいて、導出できる。この際、教示点導出部16は、組立設備データに基づいて、ロボットハンド700が組立設備に載置される物体や組立設備自体にぶつかることなく(干渉することなく)把持及び組付けできる姿勢値を導出する。組立設備に載置される物体は、例えば、組立対象製品に係る部品や部品組立体であって、作業対象ワークや組み付け先とは関係のない部品や部品組立体であり、以下、「仮置き物体」と称する。尚、組立設備に仮置き物体が無い場合は、かかる仮置き物体は考慮されない(以下の説明においても同様である)。
The teaching
また、教示点導出部16は、組立設備データに基づいて、把持位置から組付け位置までロボットハンド700が組立設備自体や仮置き物体にぶつかることなく移動できる動作方向(作業対象ワークの移動軌跡)を導出する。
In addition, the teaching
図12は、教示点導出処理の一例を示すフローチャートである。図12に示す処理は、図5のステップS514として実行される。 FIG. 12 is a flowchart illustrating an example of the teaching point derivation process. The process shown in FIG. 12 is executed as step S514 in FIG.
ステップS1200では、教示点導出部16は、作業対象ワークに対する部品把持位置の座標値(x10、y10、z10)をグローバル座標系で導出する。グローバル座標系での部品把持位置の座標値は、作業対象ワークに係る部品把持位置(部品座標系)と、組立状態再現データ(グローバル座標系)に基づく作業対象ワークの位置とに基づいて、導出されてよい。尚、ここで使用される組立状態再現データは、k番目のロボット動作テンプレートに係る一の組立作業の開始時における製品の組立状態に係るデータである。
In step S1200, the teaching
ステップS1202では、教示点導出部16は、作業対象ワークに係る部品把持位置(部品座標系)に基づいて、作業対象ワークを把持できる姿勢値(α10、β10、γ10)をグローバル座標系で導出する。この際、教示点導出部16は、組立設備データに基づいて、ロボットハンド700が仮置き物体や組立設備にぶつかることなく、作業対象ワークを把持できる姿勢値(α10、β10、γ10)を導出する。この導出結果と、ステップS1200の導出結果とから、グローバル座標系で把持位置に関する教示点(x10、y10、z10、α10、β10、γ10)(図10のP10参照)が得られる。
In step S1202, the teaching
ステップS1204では、教示点導出部16は、組立状態再現データに基づいて、組付け先への作業対象ワークの組付け位置(部品組付け位置)の座標値(x13、y13、z13)をグローバル座標系で導出する。グローバル座標系での組付け位置の座標値は、組立状態再現データ(グローバル座標系)に基づく組付け先部品の位置に基づいて導出できる。例えば、作業対象ワーク部品の組付け位置は、組付け先部品の供給位置情報と、製品組立時の作業対象ワーク部品と組付け先部品の相対位置、から導出できる。
In step S1204, the teaching
ステップS1206では、教示点導出部16は、作業対象ワークに係る部品組付け位置(グローバル座標系)に基づいて、作業対象ワークを組付け先に組付けできる姿勢値(α13、β13、γ13)をグローバル座標系で導出する。この際、教示点導出部16は、組立設備データに基づいて、ロボットハンド700が仮置き物体や組立設備にぶつかることなく、作業対象ワークを組付け先に組付けできる姿勢値(α13、β13、γ13)を導出する。この導出結果と、ステップS1204の導出結果とから、グローバル座標系で組付け位置に関する教示点(x13、y13、z13、α13、β13、γ13)(図11のP13参照)が得られる。
In step S1206, the teaching
ステップS1208では、教示点導出部16は、組立設備データに基づいて、ステップS1202で得た把持位置に関して、ロボットハンド700が仮置き物体や組立設備にぶつかることなく移動できる軌跡を導出する。即ち、教示点導出部16は、座標値(x10、y10、z10)までの軌跡及びからの軌跡であって、ロボットハンド700が仮置き物体や組立設備にぶつかることなく移動できる軌跡(動作方向)を導出する。この際、教示点導出部16は、組立設備データに基づいて、ロボットハンド700が仮置き物体や組立設備にぶつかることなく移動できる姿勢値(軌跡上の各位置における姿勢値)を導出する。軌跡上の各位置における姿勢値は、一定であってもよいし、変化される値であってもよい。
In step S1208, the teaching
ステップS1210では、教示点導出部16は、ステップS1208で得た軌跡(動作方向)と、k番目のロボット動作テンプレートに記述される基準点からの距離とに基づいて、軌跡上の各教示点を導出する。このとき、基準点としては、把持位置に関する教示点(x10、y10、z10、α10、β10、γ10)が用いられる。この結果、例えば、グローバル座標系でアプローチ位置に関する教示点(x11、y11、z11、α11、β11、γ11)(図10のP11参照)や持ち上げ位置に関する教示点(x12、y12、z12、α12、β12、γ12)(図10のP12参照)が得られる。
In step S1210, the teaching
ステップS1212では、教示点導出部16は、組立設備データに基づいて、ステップS1206で得た組付け位置に関して、ロボットハンド700が仮置き物体や組立設備にぶつかることなく移動できる軌跡を導出する。即ち、教示点導出部16は、座標値(x13、y13、z13)までの軌跡及びからの軌跡であって、ロボットハンド700が仮置き物体や組立設備にぶつかることなく移動できる軌跡(動作方向)を導出する。この際、教示点導出部16は、組立設備データに基づいて、ロボットハンド700が仮置き物体や組立設備にぶつかることなく移動できる姿勢値(軌跡上の各位置における姿勢値)を導出する。軌跡上の各位置における姿勢値は、一定であってもよいし、変化される値であってもよい。
In step S <b> 1212, the teaching
ステップS1214では、教示点導出部16は、ステップS1212で得た軌跡(動作方向)と、k番目のロボット動作テンプレートに記述される基準点からの距離とに基づいて、軌跡上の各教示点を導出する。このとき、基準点としては、組付け位置に関する教示点(x13、y13、z13、α13、β13、γ13)が用いられる。この結果、例えば、グローバル座標系で退避位置に関する教示点(x14、y14、z14、α14、β14、γ14)(図11のP14参照)やアプローチ位置に関する教示点(x15、y15、z15、α15、β15、γ15)(図11のP15参照)が得られる。
In step S1214, the teaching
ステップS1216では、教示点導出部16は、ステップS1202、ステップS1206、ステップS1210及びステップS1214で得た各教示点を、教示点順序に従ってリスト化した教示点リストを生成(出力)し、教示点リスト記憶部25に記憶する。
In step S1216, the teaching
図12に示す処理によれば、組立状態再現データに基づいて、作業対象ワークに対する部品把持位置の座標値、及び、組付け先への作業対象ワークの組付け位置の座標値が導出される。これにより、例えば作業対象ワークや組付け先が部品単体ではなくサブアセンブリであった場合でも、かかる状態が再現される組立状態再現データに基づいて同座標値を導出できる。 According to the processing shown in FIG. 12, based on the assembly state reproduction data, the coordinate value of the component gripping position with respect to the work target workpiece and the coordinate value of the assembly position of the work target workpiece to the assembly destination are derived. Thereby, for example, even when the work target work or the assembly destination is not a component but a subassembly, the same coordinate value can be derived based on assembly state reproduction data in which such a state is reproduced.
また、図12に示す処理によれば、作業順序の組み換えのような作業順序の変更時には、それに応じて変化した組立状態再現データに基づいて、作業対象ワークに対する部品把持位置の座標値等の各教示点を導出できる。また、図12に示す処理によれば、組立設備データに基づいて、ロボットハンド700が仮置き物体や組立設備にぶつかることなく移動できる各教示点を導出できる。
Further, according to the processing shown in FIG. 12, when the work order is changed such as rearrangement of the work order, each coordinate value of the component gripping position with respect to the work to be worked is determined based on the assembly state reproduction data changed accordingly. Teaching points can be derived. In addition, according to the processing shown in FIG. 12, each teaching point at which the
次に、図13及び図14を参照して、ロボット動作プログラムの生成処理について説明する。 Next, with reference to FIG. 13 and FIG. 14, the generation process of the robot operation program will be described.
図13は、ロボット動作プログラムの生成処理の流れを模式的に示す図である。図13には、基準点情報1301と、基準オフセット情報1302と、ロボット動作テンプレートの一部(図3の教示点順序記述部302参照)1303と、教示点リスト1304と、動作プログラム1305とが示される。
FIG. 13 is a diagram schematically illustrating the flow of the generation process of the robot operation program. FIG. 13 shows
基準点情報1301は、基準点REFの情報である。基準点REFは、例えば、図12のステップS1202で得られる把持位置に関する教示点(x10、y10、z10、α10、β10、γ10)や、ステップS1206で得られる組付け位置に関する教示点(x13、y13、z13、α13、β13、γ13)である。
The
基準オフセット情報1302は、各教示点に関して、基準点REFからの距離であり、図3の教示点変数化部300の情報310から取得される。即ち、基準オフセット情報1302は、ユーザにより設定される情報である。
The reference offset
教示点リスト1304は、上述のように教示点導出部16により生成される(図12のステップS1216参照)。
The
図13に示す例では、ロボット動作生成部18は、教示点リスト1304に記載の各教示点を、ロボット動作テンプレート1303の教示点順序記述部302における対応する個所の変数に代入することで、ロボット動作プログラム1305を生成する。
In the example shown in FIG. 13, the robot
図14は、ロボット動作プログラムの生成処理の一例を示すフローチャートである。図14に示す処理は、図5のステップS520として実行される。 FIG. 14 is a flowchart illustrating an example of generation processing of a robot operation program. The process shown in FIG. 14 is executed as step S520 in FIG.
ステップS1400では、ロボット動作生成部18は、i番目のロボット動作テンプレートを選択する。iの初期値は“1”である。
In step S1400, the robot
ステップS1402では、ロボット動作生成部18は、教示点リスト記憶部25からi番目のロボット動作テンプレートに係る教示点リストを読み出す。教示点リストは、上述のように、ステップS514(図5及び図12)によりN個のロボット動作テンプレートに対して、それぞれのロボット動作テンプレート毎に生成される。
In step S1402, the robot
ステップS1404では、ロボット動作生成部18は、教示点リスト内の各教示点を、i番目のロボット動作テンプレートにおける対応する個所の変数に代入することで、i番目のロボット動作テンプレートを完成させる(動作プログラムを生成する)。
In step S1404, the robot
ステップS1406では、ロボット動作生成部18は、i=Nであるか否かを判定する。Nは、上述のように、対象の一連の組立作業の含まれる組立作業の数である。i=Nの場合は、ステップS1410に進み、i≠Nの場合は、ステップS1408を経て、ステップS1400に戻る。
In step S1406, the robot
ステップS1408では、ロボット動作生成部18は、iを“1”だけインクリメントする。
In step S1408, the robot
ステップS1410では、ロボット動作生成部18は、完成させたN個のロボット動作テンプレートを、最終的なロボット動作プログラムとしてロボット動作プログラム記憶部26に記憶する。
In step S1410, the robot
本実施例によれば、上述のように、組立作業ロボットの専門知識が無いユーザでも、容易かつ短時間でロボット動作プログラムを作成することが可能となる。これにより、製品の組立状態を考慮したロボットの動作生成にかかる工数を削減できる。例えば、ユーザは、組立作業順序データ記憶部20、製品データ記憶部22、及び設備データ記憶部23内の各データを生成し、ロボット動作テンプレートの変数設定作業を行うことで、ロボット動作プログラムを得ることができる。また、上述のように、作業順序の組み換えのような作業順序の変更時には、組立作業順序データを変更するだけで、該変更が反映されたロボット動作プログラムを得ることができる。
According to the present embodiment, as described above, even a user who does not have expertise in assembly robots can create a robot operation program easily and in a short time. As a result, it is possible to reduce the number of man-hours required to generate the robot motion in consideration of the product assembly state. For example, the user generates each data in the assembly work order
次に、図15及び図16を参照して、動作生成装置1の実現例について説明する。
Next, an implementation example of the
図15は、動作生成装置1がサーバとクライアントコンピュータとで実現される例の説明図である。
FIG. 15 is an explanatory diagram of an example in which the
サーバ90は、クライアントコンピュータ70と双方向に通信可能である。通信時、サーバ90は、ネットワーク8を介してクライアントコンピュータ70に接続される。ネットワーク8は、無線通信網や、インターネット、World Wide Web、VPN(virtual private network)、WAN(Wide Area Network)、有線ネットワーク、又はこれらの任意の組み合わせ等を含んでもよい。サーバ90とクライアントコンピュータ70との間の通信は、ネットワーク8を介して実現される。
The server 90 can communicate with the
クライアントコンピュータ70は、ユーザの位置にあるコンピュータの一例であり、サーバ90は、ユーザから離れた遠隔位置にあるコンピュータの一例である。尚、クライアントコンピュータ70は、複数のユーザに対応して、複数個存在しうる。
The
図16は、動作生成装置1の処理装置100の各構成要素の分散態様の一例を示す表図である。図16において、処理装置100の各構成要素は、クライアントコンピュータ70及びサーバ90のうちの、○が付けられた方に設けられることを意味する。
FIG. 16 is a table showing an example of a distribution aspect of each component of the
動作生成装置1の処理装置100の各構成要素は、図16に示すように、クライアントコンピュータ70及びサーバ90に分散して設けられてよい。尚、図16に示す例は、分散態様の一例であり、多様な態様で変更可能である。例えば、図16に示す例に対する一変形例として、変数設定部12と、ロボット動作プログラム記憶部26とがクライアントコンピュータ70に設けられ、他の構成要素がサーバ90に設けられてもよい。この場合、クライアントコンピュータ70は、組立作業順序データや製品データ、設備データをサーバ90にアップデートし、それに応じてサーバ90からロボット動作テンプレートを取得する。次いで、クライアントコンピュータ70は、ユーザからの入力に基づく変数設定部12による設定結果をサーバ90に送信し、サーバ90は、該設定結果に基づいて、ロボット動作プログラムを生成する。そして、サーバ90は、生成したロボット動作プログラムをクライアントコンピュータ70に送信し、クライアントコンピュータ70は、受信したロボット動作プログラムをロボット動作プログラム記憶部26に記憶して使用する。
Each component of the
以上、各実施例について詳述したが、特定の実施例に限定されるものではなく、特許請求の範囲に記載された範囲内において、種々の変形及び変更が可能である。また、前述した実施例の構成要素を全部又は複数を組み合わせることも可能である。 Although each embodiment has been described in detail above, it is not limited to a specific embodiment, and various modifications and changes can be made within the scope described in the claims. It is also possible to combine all or a plurality of the components of the above-described embodiments.
例えば、上述した実施例では、製品データは、組立対象製品を形成する各部品の部品3Dデータ、及び、同製品の部品構成データを含むが、部品構成データは省略されてもよい。 For example, in the above-described embodiment, the product data includes the part 3D data of each part forming the assembly target product and the part configuration data of the product, but the part configuration data may be omitted.
なお、以上の実施例に関し、さらに以下の付記を開示する。
[付記1]
組立作業ロボットを少なくとも部分的に用いて組立対象製品を組み立てる際の一連の組立作業の順序データと、前記組立対象製品を形成する複数の部品の3Dデータとに基づいて、前記一連の組立作業に含まれる一の組立作業の開始時における前記組立対象製品の組立状態を再現し、
再現した前記組立状態に基づいて、前記一の組立作業に係る前記組立作業ロボットに対する教示点を導出することを含む、コンピュータにより実行される組立作業ロボットの動作生成方法。
[付記2]
前記組立対象製品の組立状態を再現することは、前記一の組立作業に係る作業対象ワークと、前記作業対象ワークが組付けられる組付け先とを特定することを含む、付記1に記載の組立作業ロボットの動作生成方法。
[付記3]
前記組立対象製品の組立状態を再現することは、更に、
前記順序データに基づいて、複数の前記部品の中から、前記一の組立作業に係る作業対象ワーク部品と、前記作業対象ワーク部品が組付けられる組付け先部品とを特定すること、及び、
前記順序データに基づいて、複数の前記部品の中に、前記一の組立作業よりも前に行われる組立作業で前記作業対象ワーク部品又は前記組付け先部品に組み付けられる部品があるか否かを判定すること、
を含む、付記2に記載の組立作業ロボットの動作生成方法。
[付記4]
複数の前記部品の中に、前記一の組立作業よりも前に行われる組立作業で前記作業対象ワーク部品に組み付けられる部品があると判定した場合に、該部品が組み付けられた前記作業対象ワーク部品に基づいて、前記作業対象ワークを特定する、付記3に記載の組立作業ロボットの動作生成方法。
[付記5]
複数の前記部品の中に、前記一の組立作業よりも前に行われる組立作業で前記組付け先部品に組み付けられる部品があると判定した場合に、該部品が組み付けられた前記組付け先部品に基づいて、前記組付け先を特定する、付記3又は4に記載の組立作業ロボットの動作生成方法。
[付記6]
複数の前記部品の関係を表す部品構成データに更に基づいて、前記作業対象ワーク及び前記組付け先を特定する、付記3〜5のうちのいずれか1項に記載の組立作業ロボットの動作生成方法。
[付記7]
前記組立対象製品の組立状態を再現することは、更に、前記一の組立作業の開始時における前記作業対象ワーク及び前記組付け先のそれぞれの位置を導出することを含む、付記2に記載の組立作業ロボットの動作生成方法。
[付記8]
前記一の組立作業の開始時における前記作業対象ワーク及び前記組付け先のそれぞれの前記位置と、前記組立対象製品の組立に用いる組立設備に表す組立設備データとに基づいて、前記教示点を導出する、付記7に記載の組立作業ロボットの動作生成方法。
[付記9]
前記組立設備に前記組立作業ロボットが干渉しない態様で、前記教示点を導出する、付記8に記載の組立作業ロボットの動作生成方法。
[付記10]
前記組立設備に加えて、前記組立設備に載置される物体にも前記組立作業ロボットが干渉しない態様で、前記教示点を導出する、付記9に記載の組立作業ロボットの動作生成方法。
[付記11]
前記組立対象製品の組立状態を再現すること、及び、前記教示点を導出することを、前記一連の組立作業に含まれる複数の組立作業のそれぞれを前記一の組立作業として、繰り返すことを含む、付記1〜10のうちのいずれか1項に記載の組立作業ロボットの動作生成方法。
[付記12]
導出した前記教示点に基づいて、前記組立作業ロボットの動作プログラムを生成することを更に含む、付記1〜11のうちのいずれか1項に記載の組立作業ロボットの動作生成方法。
[付記13]
前記教示点を導出することは、作業分類ごとに用意されたテンプレートであって、前記教示点に係る情報を変数化したテンプレートにおける変数を導出することを含む、付記1〜12のうちのいずれか1項に記載の組立作業ロボットの動作生成方法。
[付記14]
組立作業ロボットを少なくとも部分的に用いて組立対象製品を組み立てる際の一連の組立作業の順序データと、前記組立対象製品を形成する複数の部品の3Dデータとに基づいて、前記一連の組立作業に含まれる一の組立作業の開始時における前記組立対象製品の組立状態を再現する組立状態再現部と、
再現した前記組立状態に基づいて、前記一の組立作業に係る前記組立作業ロボットに対する教示点を導出する教示点導出部とを含む、組立作業ロボットの動作生成装置。
[付記15]
組立作業ロボットを少なくとも部分的に用いて組立対象製品を組み立てる際の一連の組立作業の順序データと、前記組立対象製品を形成する複数の部品の3Dデータとに基づいて、前記一連の組立作業に含まれる一の組立作業の開始時における前記組立対象製品の組立状態を再現し、
再現した前記組立状態に基づいて、前記一の組立作業に係る前記組立作業ロボットに対する教示点を導出する、
処理をコンピュータに実行させる組立作業ロボットの動作生成プログラム。
In addition, the following additional remarks are disclosed regarding the above Example.
[Appendix 1]
Based on the sequence data of a series of assembly operations when assembling a product to be assembled using at least a part of the assembly work robot and the 3D data of a plurality of parts forming the product to be assembled, the series of assembly operations is performed. Reproduce the assembly state of the assembly target product at the start of one included assembly work,
A computer-implemented motion generation method for an assembly work robot, comprising deriving teaching points for the assembly work robot related to the one assembly work based on the reproduced assembly state.
[Appendix 2]
Reproducing the assembly state of the assembly target product includes specifying a work target work related to the one assembly work and an assembly destination to which the work target work is assembled. A method for generating work robot motion.
[Appendix 3]
Reproducing the assembly state of the assembly target product further includes
Identifying a work target work part related to the one assembly work and an assembly destination part to which the work target work part is assembled from a plurality of the parts based on the sequence data; and
Based on the sequence data, whether or not there is a part to be assembled to the work target work part or the assembly destination part in the assembly work performed before the one assembly work among the plurality of parts. Judging,
The operation generation method of the assembly work robot according to
[Appendix 4]
When it is determined that there is a part to be assembled to the work target work part in an assembly work performed before the one assembly work among the plurality of parts, the work target work part to which the part is assembled The operation generation method of the assembly work robot according to
[Appendix 5]
When it is determined that among the plurality of parts, there is a part to be assembled to the assembly destination part in an assembly operation performed before the one assembly operation, the assembly destination part to which the part is assembled The assembly work robot motion generation method according to
[Appendix 6]
The motion generation method for an assembly work robot according to any one of
[Appendix 7]
Reproducing the assembly state of the assembly target product further includes deriving the respective positions of the work target workpiece and the assembly destination at the start of the one assembly operation. A method for generating work robot motion.
[Appendix 8]
The teaching point is derived based on the positions of the work target work and the assembly destination at the start of the one assembly work and the assembly equipment data represented in the assembly equipment used for assembling the assembly target product. The operation generation method for an assembly work robot according to
[Appendix 9]
9. The assembly robot operation generation method according to
[Appendix 10]
The assembly robot operation generation method according to
[Appendix 11]
Reproducing the assembly state of the assembly target product and deriving the teaching point include repeating each of a plurality of assembly operations included in the series of assembly operations as the one assembly operation. The operation generation method for an assembly work robot according to any one of
[Appendix 12]
The operation generation method for an assembly work robot according to any one of
[Appendix 13]
Deriving the teaching point is a template prepared for each work classification, and includes deriving a variable in a template obtained by variableizing information related to the teaching point. 2. An operation generation method for an assembly work robot according to
[Appendix 14]
Based on the sequence data of a series of assembly operations when assembling a product to be assembled using at least a part of the assembly work robot and the 3D data of a plurality of parts forming the product to be assembled, the series of assembly operations is performed. An assembly state reproduction unit that reproduces an assembly state of the assembly target product at the start of one included assembly operation;
And a teaching point deriving unit for deriving a teaching point for the assembling work robot related to the one assembling work based on the reproduced assembling state.
[Appendix 15]
Based on the sequence data of a series of assembly operations when assembling a product to be assembled using at least a part of the assembly work robot and the 3D data of a plurality of parts forming the product to be assembled, the series of assembly operations is performed. Reproduce the assembly state of the assembly target product at the start of one included assembly work,
Based on the reproduced assembly state, a teaching point for the assembly work robot related to the one assembly work is derived.
A motion generation program for an assembly robot that causes a computer to execute processing.
1 動作生成装置
10 データ取得部
12 変数設定部
14 組立状態再現部
16 教示点導出部
18 ロボット動作生成部
20 組立作業順序データ記憶部
21 ロボット動作テンプレート記憶部
22 製品データ記憶部
23 設備データ記憶部
24 組立状態再現データ記憶部
25 教示点リスト記憶部
26 ロボット動作プログラム記憶部
27 ロボット動作テンプレートデータベース
DESCRIPTION OF
Claims (9)
再現した前記組立状態に基づいて、前記一の組立作業に係る前記組立作業ロボットに対する教示点を導出することを含む、コンピュータにより実行される組立作業ロボットの動作生成方法。 Based on the sequence data of a series of assembly operations when assembling a product to be assembled using at least a part of the assembly work robot and the 3D data of a plurality of parts forming the product to be assembled, the series of assembly operations is performed. Reproduce the assembly state of the assembly target product at the start of one included assembly work,
A computer-implemented motion generation method for an assembly work robot, comprising deriving teaching points for the assembly work robot related to the one assembly work based on the reproduced assembly state.
再現した前記組立状態に基づいて、前記一の組立作業に係る前記組立作業ロボットに対する教示点を導出する教示点導出部とを含む、組立作業ロボットの動作生成装置。 Based on the sequence data of a series of assembly operations when assembling a product to be assembled using at least a part of the assembly work robot and the 3D data of a plurality of parts forming the product to be assembled, the series of assembly operations is performed. An assembly state reproduction unit that reproduces an assembly state of the assembly target product at the start of one included assembly operation;
And a teaching point deriving unit for deriving a teaching point for the assembling work robot related to the one assembling work based on the reproduced assembling state.
再現した前記組立状態に基づいて、前記一の組立作業に係る前記組立作業ロボットに対する教示点を導出する、
処理をコンピュータに実行させる組立作業ロボットの動作生成プログラム。 Based on the sequence data of a series of assembly operations when assembling a product to be assembled using at least a part of the assembly work robot and the 3D data of a plurality of parts forming the product to be assembled, the series of assembly operations is performed. Reproduce the assembly state of the assembly target product at the start of one included assembly work,
Based on the reproduced assembly state, a teaching point for the assembly work robot related to the one assembly work is derived.
A motion generation program for an assembly robot that causes a computer to execute processing.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016229476A JP6753282B2 (en) | 2016-11-25 | 2016-11-25 | Assembly work robot motion generation method, motion generation program, and motion generation device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016229476A JP6753282B2 (en) | 2016-11-25 | 2016-11-25 | Assembly work robot motion generation method, motion generation program, and motion generation device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018083277A true JP2018083277A (en) | 2018-05-31 |
JP6753282B2 JP6753282B2 (en) | 2020-09-09 |
Family
ID=62236836
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016229476A Active JP6753282B2 (en) | 2016-11-25 | 2016-11-25 | Assembly work robot motion generation method, motion generation program, and motion generation device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6753282B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021144911A1 (en) | 2020-01-16 | 2021-07-22 | オムロン株式会社 | Program generation device, program generation method, and generation program |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013244560A (en) * | 2012-05-25 | 2013-12-09 | Dainippon Screen Mfg Co Ltd | Device for generating track for gripping mechanism, method for generating track for gripping mechanism, program for generating track for gripping mechanism, recording medium and robot program creating device |
WO2015178377A1 (en) * | 2014-05-20 | 2015-11-26 | 株式会社日立製作所 | Assembly instruction device and method |
WO2016151862A1 (en) * | 2015-03-26 | 2016-09-29 | 株式会社日立製作所 | Assembly teaching device and assembly teaching method |
-
2016
- 2016-11-25 JP JP2016229476A patent/JP6753282B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013244560A (en) * | 2012-05-25 | 2013-12-09 | Dainippon Screen Mfg Co Ltd | Device for generating track for gripping mechanism, method for generating track for gripping mechanism, program for generating track for gripping mechanism, recording medium and robot program creating device |
WO2015178377A1 (en) * | 2014-05-20 | 2015-11-26 | 株式会社日立製作所 | Assembly instruction device and method |
WO2016151862A1 (en) * | 2015-03-26 | 2016-09-29 | 株式会社日立製作所 | Assembly teaching device and assembly teaching method |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021144911A1 (en) | 2020-01-16 | 2021-07-22 | オムロン株式会社 | Program generation device, program generation method, and generation program |
JPWO2021144911A1 (en) * | 2020-01-16 | 2021-07-22 | ||
JP7260001B2 (en) | 2020-01-16 | 2023-04-18 | オムロン株式会社 | Program generation device, program generation method, and generation program |
Also Published As
Publication number | Publication date |
---|---|
JP6753282B2 (en) | 2020-09-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Ye et al. | Synthesis of detailed hand manipulations using contact sampling | |
CN103885788B (en) | Dynamic WEB 3D virtual reality scene construction method and system based on model componentization | |
JP2003058907A (en) | Method for generating pose and motion in tree structure link system | |
Ijiri et al. | Seamless integration of initial sketching and subsequent detail editing in flower modeling | |
JP2019012342A (en) | Virtual object display system | |
JP2017097426A (en) | Simulation device, simulation method and simulation program | |
CN112927331B (en) | Character model animation generation method and device, storage medium and electronic equipment | |
Pan et al. | A hybrid approach for simulating human motion in constrained environments | |
Valentini et al. | Interactive sculpting using augmented-reality, mesh morphing, and force feedback: Force-feedback capabilities in an augmented reality environment | |
Feng et al. | Fast, automatic character animation pipelines | |
US11062523B2 (en) | Creation authoring point tool utility to recreate equipment | |
CN106066688A (en) | A kind of virtual reality exchange method based on Wearable glove and device | |
KR101686028B1 (en) | Method and apparatus for character motion retargeting to rig-space | |
JP6753282B2 (en) | Assembly work robot motion generation method, motion generation program, and motion generation device | |
CN110142748A (en) | A kind of quick teaching system of robot suitable for spraying welding profession and method | |
Renner et al. | Facilitating HRI by mixed reality techniques | |
CN116091570B (en) | Processing method and device of three-dimensional model, electronic equipment and storage medium | |
KR102103399B1 (en) | System for offering virtual-augmented information using object recognition based on artificial intelligence and the method thereof | |
JP7192251B2 (en) | Information processing device, robot operation program generation assistance method, and robot operation program generation assistance program | |
US9639992B2 (en) | Methods and systems for multilevel editing of subdivided polygonal data | |
Kaushik et al. | Imitating human movement using a measure of verticality to animate low degree-of-freedom non-humanoid virtual characters | |
Reda et al. | MoCap systems and hand movement reconstruction using cubic spline | |
Wang et al. | Motion planning of skillful motions in assembly process through human demonstration | |
Wölfel et al. | ToolBot: robotically reproducing handicraft | |
Herrmann et al. | Motion Data and Model Management for Applied Statistical Motion Synthesis. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190611 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200427 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200512 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200625 |
|
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: 20200721 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200803 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6753282 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |