JP2010137298A - Method of preparing working program for double arm robot - Google Patents

Method of preparing working program for double arm robot Download PDF

Info

Publication number
JP2010137298A
JP2010137298A JP2008313198A JP2008313198A JP2010137298A JP 2010137298 A JP2010137298 A JP 2010137298A JP 2008313198 A JP2008313198 A JP 2008313198A JP 2008313198 A JP2008313198 A JP 2008313198A JP 2010137298 A JP2010137298 A JP 2010137298A
Authority
JP
Japan
Prior art keywords
manipulator
work
manipulators
posture
arm robot
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
Application number
JP2008313198A
Other languages
Japanese (ja)
Other versions
JP2010137298A5 (en
JP5071361B2 (en
Inventor
Kenichi Yasuda
賢一 安田
Yasuyuki Inoue
康之 井上
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.)
Yaskawa Electric Corp
Original Assignee
Yaskawa Electric Corp
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 Yaskawa Electric Corp filed Critical Yaskawa Electric Corp
Priority to JP2008313198A priority Critical patent/JP5071361B2/en
Publication of JP2010137298A publication Critical patent/JP2010137298A/en
Publication of JP2010137298A5 publication Critical patent/JP2010137298A5/ja
Application granted granted Critical
Publication of JP5071361B2 publication Critical patent/JP5071361B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Abstract

<P>PROBLEM TO BE SOLVED: To provide a method for preparing a working program for a double arm robot, efficiently preparing a working program for a plurality of manipulators according to an assembling procedure intended by a teaching worker in a short time. <P>SOLUTION: A three-dimensional model for a plurality of parts is prepared, manipulators for holding and operating respective parts connected to each other are selected from a plurality of manipulators, the positions of the points through which the parts move in the assembling operations and the attitudes of the parts at these route points are set up, numbers for the route points are allocated in the order of the arrival of the manipulators, the route point data list including route point numbers, part names to be operated, route point positions, and attitudes is prepared for each manipulator, and working macros are combined according to the contents of working which are performed by the manipulators at the route points. Thus, a working program for a plurality of manipulators is prepared. <P>COPYRIGHT: (C)2010,JPO&INPIT

Description

本発明は、複数のマニピュレータで構成されるロボットの作業プログラム作成方法に関し、特に複数のマニピュレータを利用した部品組み付け作業に関する作業プログラムを自動生成する方法に関する。   The present invention relates to a method for creating a work program for a robot composed of a plurality of manipulators, and more particularly to a method for automatically generating a work program related to a part assembling work using a plurality of manipulators.

通常、ティーチングプレイバック方式のロボットの教示は、プログラミングペンダントと呼ばれる手動操作手段を用いて行う。プログラミングペンダント上の軸操作キーでロボットの各軸を動作させ、手先を対象ワークに対する作業位置へジョグ移動させて、その後記憶キーを押すことで移動命令とともにその時の各関節軸の角度データを記憶する。ロボットを所望の位置へとジョグ移動させて記憶させる操作を繰り返すことによってロボット言語で構成される作業プログラムを作成している。実際にロボットが作業を行う再生運転では、教示した各関節軸の角度データを順に読み出して、ロボットの各軸モータへの補間指令を生成し、位置速度制御によってロボットの先端を移動させる。
一方、ロボットによる部品の組み付けのような複雑な作業を教示する際には、このような方法では操作が煩雑であり教示に時間がかかる。特に特許文献1にて開示されたような2本以上のマニピュレータを持つ複腕ロボットによって組み付け作業を行わせる場合では、ロボットが行う作業自体は効率化することが可能になるものの、その作業を教示することは熟練者でも困難である。特許文献1では、ハーネスを含む部品の組み付け作業を行う複腕ロボットが開示されているが、組み付け作業の教示方法については特に記載されていない。
そこで、このような複雑な作業を簡単に教示する方法として、3次元CADやオフラインシミュレータを使ってロボットの作業プログラムを生成する方法がある。
具体的な方法としては、3次元CADによって部品の移動手順を定義し、その動きを実現するようにロボットの動作を決める(例えば特許文献2)。
また、複数マニピュレータで構成されるロボットの作業プログラム作成方法としては、組み付けのための部品の移動手順をマニピュレータごとに定義し、その移動動作単位毎にマニピュレータの優先度を設定してその優先度の組み合わせで各マニピュレータの動作手順を作成し、その中から作業可能かつ作業時間が最短となる動作手順を選択するようにしたロボットの作業プログラム作成方法(例えば特許文献3)がある。
特開平7−223179号公報(図1) 特開2006−350620号公報(図2) 特開昭63−295192号公報(表2)
Normally, teaching of a teaching playback type robot is performed using a manual operation means called a programming pendant. Operate each axis of the robot with the axis operation keys on the programming pendant, jog the hand to the work position for the target workpiece, and then press the memory key to store the angle data of each joint axis at that time along with the movement command . A work program composed of a robot language is created by repeating the operation of jogging the robot to a desired position and storing it. In the reproduction operation in which the robot actually performs the work, the angle data of each joint axis taught is sequentially read out, an interpolation command to each axis motor of the robot is generated, and the tip of the robot is moved by position speed control.
On the other hand, when teaching complicated work such as assembly of parts by a robot, such a method is complicated and takes time to teach. In particular, when the assembly work is performed by a multi-arm robot having two or more manipulators as disclosed in Patent Document 1, the work performed by the robot itself can be made efficient, but the work is taught. It is difficult even for a skilled person to do. Patent Document 1 discloses a multi-arm robot that performs assembly work of components including a harness, but does not particularly describe a method of teaching assembly work.
Therefore, as a method for easily teaching such complicated work, there is a method of generating a robot work program using a three-dimensional CAD or an offline simulator.
As a specific method, a moving procedure of a part is defined by three-dimensional CAD, and a robot operation is determined so as to realize the movement (for example, Patent Document 2).
In addition, as a method for creating a work program for a robot composed of a plurality of manipulators, a procedure for moving parts for assembly is defined for each manipulator, and the priority of the manipulator is set for each movement operation unit. There is a robot work program creation method (for example, Patent Document 3) in which the operation procedure of each manipulator is created in combination, and the operation procedure that enables work and the work time is the shortest is selected.
JP-A-7-223179 (FIG. 1) JP 2006-350620 A (FIG. 2) JP 63-295192 A (Table 2)

しかしながら、特許文献2にて開示された従来の作業プログラム作成方法は1本のマニピュレータによる作業に適用されるものであり、複数のマニピュレータで構成されたロボットに対して教示を行う場合にマニピュレータ毎の動作を決定することはできないという問題があった。
また、特許文献3にて開示された従来の作業プログラム作成方法は、複数マニピュレータの各々について部品の移動手順を設定するようにしているものの、各マニピュレータおよび動作単位毎に優先度を設定する必要があるため、動作の種類が多い作業の場合などは動作手順の組み合わせが非常に多くなり、最適な動作手順を探索するための計算量が非常に大きくなるという問題があった。
また動作手順の組み合わせには、マニピュレータ間の干渉や組み付け手順などによって、実際には作業不能となるものも多くあり、無駄な計算が多くなる。さらに、どのような動作手順が選択されるのかが最後まで教示作業者にとっては不明(どの部品を先に移動させ、どの部品を先に組み付けるか等が不明)であり、教示作業者が全く意図しない動作手順になってしまうこともあるという問題があった。
さらに、作業項目を追加した時には最初から動作手順を探索し直さなければならず、作業プログラムの作成に時間を要するという問題もあった。
また、両者に共通の問題として、実際に組み付け作業をロボットで実施する際には、部品の移動のみでなく、部品位置をセンサで計測したり、力制御しながら部品同士の嵌め合いを行ったり、ねじ締めを行ったりする必要があるが、従来の方法ではこうした作業に関するロボット命令は作業プログラムを生成した後に別途追加する必要があり、作業プログラムのどの箇所にその命令を挿入したらよいか教示作業者にとって分かりにくいという問題もあった。
本発明はこのような問題点に鑑みてなされたものであり、教示作業者が意図した組み付け手順に基づいて複数マニピュレータの作業プログラムを生成することができ、また効率的に短時間で作業プログラムを生成することが可能となる複腕ロボットの作業プログラム作成方法を提供することを目的とする。
However, the conventional work program creation method disclosed in Patent Document 2 is applied to work by a single manipulator, and when teaching a robot composed of a plurality of manipulators, each manipulator There was a problem that the operation could not be determined.
Moreover, although the conventional work program creation method disclosed in Patent Document 3 sets a part moving procedure for each of a plurality of manipulators, it is necessary to set a priority for each manipulator and each operation unit. For this reason, there is a problem that the number of combinations of operation procedures becomes very large in the case of work with many types of operations, and the amount of calculation for searching for the optimum operation procedure becomes very large.
In addition, there are many combinations of operation procedures that are actually inoperable due to interference between manipulators, assembly procedures, and the like, resulting in increased useless calculations. Furthermore, it is unclear to the teaching worker what operation procedure is selected until the end (which parts are moved first and which parts are assembled first, etc.), and the teaching worker has no intention. There was a problem that it might become an operation procedure that does not.
Furthermore, when a work item is added, the operation procedure must be searched again from the beginning, and there is a problem that it takes time to create a work program.
In addition, as a problem common to both, when actually performing assembly work with a robot, not only the movement of the part but also the part position is measured by a sensor, and the parts are fitted together while controlling the force. However, in the conventional method, robot commands related to such work need to be added separately after generating the work program, and teaching work where to insert the command in the work program There was also a problem that it was difficult for people to understand.
The present invention has been made in view of such problems. A work program for a plurality of manipulators can be generated based on an assembly procedure intended by a teaching worker, and the work program can be efficiently and quickly generated. An object of the present invention is to provide a work program creation method for a multi-arm robot that can be generated.

上記問題を解決するため、本発明は、次のような方法をとったのである。
請求項1に記載の発明は、複数のマニピュレータを有する複腕ロボットを動作させ、複数の部品の組み付け作業を行う作業プログラムをオフラインにて生成する複腕ロボットの作業プログラム作成方法であって、前記複数の部品の各々につき、その部品を把持して操作するマニピュレータを前記複数のマニピュレータから選定して設定する第1ステップと、
前記組み付け作業において前記各部品が経由する各点の位置と、前記各経由点における前記各部品の姿勢を設定する第2ステップと、前記第2ステップにて設定された各経由点について、前記マニピュレータが到達する順に番号を割り当てると共に、前記経由点での前記部品の位置および姿勢を前記経由点の位置および姿勢とし、前記マニピュレータ毎に、経由点番号、操作する部品名、前記経由点位置および姿勢からなる経由点データリストを作成する第3ステップと、前記経由点データリストの前記各経由点にて前記マニピュレータが実行する作業内容を予め登録された作業一覧から選択する第4ステップと、前記各経由点について設定された作業内容に応じて、前記マニピュレータに対する命令群からなる作業マクロを組み合わせて前記複数のマニピュレータの作業プログラムを作成する第5ステップと、からなることを特徴とする。
In order to solve the above problem, the present invention adopts the following method.
The invention according to claim 1 is a work program creation method for a multi-arm robot that operates a multi-arm robot having a plurality of manipulators and generates a work program for performing assembly work of a plurality of parts off-line. For each of a plurality of parts, a first step of selecting and setting a manipulator for gripping and operating the part from the plurality of manipulators;
The second step of setting the position of each point through which each part passes in the assembling operation, the posture of each part at each of the via points, and the manipulator for each via point set in the second step Are assigned numbers in the order of arrival, and the position and orientation of the part at the waypoint are defined as the position and orientation of the waypoint. For each manipulator, the number of the waypoint, the name of the part to be operated, the position and posture of the waypoint A third step of creating a route point data list comprising: a fourth step of selecting work contents to be executed by the manipulator at each route point of the route point data list from a pre-registered work list; Depending on the work contents set for the waypoints, a combination of work macros consisting of a group of instructions for the manipulator A fifth step of creating a plurality of manipulators of the work program, that consists of the features.

請求項2に記載の発明は、前記第2ステップにて、前記複数の部品の他にダミー部品を仮想的に定義し、前記ダミー部品の経由点の位置および姿勢を設定することによって前記部品を把持せずに前記マニピュレータのみの動作を作成することを特徴とする。   According to the second aspect of the present invention, in the second step, in addition to the plurality of parts, a dummy part is virtually defined, and the position and orientation of the via point of the dummy part are set, thereby setting the part. The operation of only the manipulator is created without gripping.

請求項3に記載の発明は、前記第4ステップにて、前記作業内容に関するパラメータとして作業条件を設定することを特徴とする。   The invention according to claim 3 is characterized in that, in the fourth step, a work condition is set as a parameter relating to the work content.

請求項4に記載の発明は、前記組み付け作業において前記複数のマニピュレータを同期させて動作させる場合は、前記第4ステップにて前記各マニピュレータに作業内容を設定する際に、同期命令と、同期動作の対象となる部品および部品の経由点番号を指定することを特徴とする。   According to a fourth aspect of the present invention, when the plurality of manipulators are operated in synchronization in the assembly work, a synchronization command and a synchronization operation are performed when setting the work contents in each manipulator in the fourth step. It is characterized by designating a part to be a target and a waypoint number of the part.

請求項5に記載の発明は、前記第5ステップにて、前記経由点の位置および姿勢から逆運動学計算を用いてマニピュレータの各関節目標角度を計算し、前記マニピュレータが特異点を通過する場合は、前記マニピュレータ手先の目標姿勢を所定の範囲で変化させ、変化させた目標姿勢について所定の評価方法による評価値を求め、前記評価値によって前記マニピュレータの目標姿勢を変更することを特徴とする。   In the fifth aspect of the invention, in the fifth step, each joint target angle of the manipulator is calculated from the position and orientation of the via point using inverse kinematics calculation, and the manipulator passes a singular point. Changes the target posture of the manipulator hand within a predetermined range, obtains an evaluation value by a predetermined evaluation method for the changed target posture, and changes the target posture of the manipulator according to the evaluation value.

請求項6に記載の発明は、前記第5ステップにて、前記経由点間の前記マニピュレータの補間動作をシミュレーションし、前記補間シミュレーションにて前記マニピュレータが特異点を通過する場合は、前記マニピュレータ手先の目標姿勢を所定の範囲で変化させ、変化させた目標姿勢について所定の評価方法による評価値を求め、前記評価値によって前記マニピュレータの目標姿勢を変更することを特徴とする。   In the invention according to claim 6, in the fifth step, an interpolation operation of the manipulator between the via points is simulated, and when the manipulator passes a singular point in the interpolation simulation, The target posture is changed within a predetermined range, an evaluation value by a predetermined evaluation method is obtained for the changed target posture, and the target posture of the manipulator is changed according to the evaluation value.

請求項7に記載の発明は、前記マニピュレータが7自由度以上の冗長自由度を持つ場合は、前記マニピュレータの冗長自由度姿勢を所定の範囲で変化させた時の前記評価方法による評価値に基づいて、前記マニピュレータの冗長自由度の姿勢を変更することを特徴とする。   According to a seventh aspect of the present invention, when the manipulator has a redundancy degree of freedom of 7 degrees or more, the manipulator is based on an evaluation value obtained by the evaluation method when a redundant degree of freedom attitude of the manipulator is changed within a predetermined range. Then, the attitude of the redundant degree of freedom of the manipulator is changed.

請求項8に記載の発明は、前記マニピュレータが前記マニピュレータの台座を移動させる外部軸上に搭載されている場合は、前記外部軸の位置を所定の範囲で変化させた時の前記評価方法による評価値に基づいて、前記外部軸の位置を変更することを特徴とする。   In the invention according to claim 8, when the manipulator is mounted on an external shaft that moves the pedestal of the manipulator, the evaluation by the evaluation method when the position of the external shaft is changed within a predetermined range The position of the external shaft is changed based on the value.

請求項1に記載の発明によると、教示作業者が意図した組み付け手順に基づいて複数マニピュレータの作業プログラムを簡単に作成でき、また、作業項目の追加も簡単に行うことができる。また作業内容を作業一覧から選択できるようにしたため、作業プログラムの作成のための教示作業者の負担を軽減することができる。
請求項2に記載の発明によると、実際には存在しないダミー部品を定義し、その移動毎の位置姿勢を設定するようにしたため、部品の動きとは関係しないエアカット動作や退避動作などに関しても、作業プログラムを生成することができる。
請求項3に記載の発明によると、作業内容に応じて作業条件を設定するため、様々な組み付け作業へと対応可能となり、複腕ロボットの汎用性を増すことができる。
請求項4に記載の発明によると、作業内容に同期する対象の部品と同期する部品の経由点番号を指定するので、複数のマニピュレータが同期をとって動作することが可能となり、複数のマニピュレータを協調させて動作するような作業のプログラムを作成することができる。
請求項5乃至8に記載の発明によると、指定した部品の位置や姿勢、またはその移動動作が実現できない時でも、自動的にマニピュレータの姿勢や外部軸の位置を変更することで実行可能な作業プログラムを生成することが可能となる。
According to the first aspect of the present invention, it is possible to easily create a work program for a plurality of manipulators based on an assembling procedure intended by a teaching worker, and to easily add work items. Further, since the work content can be selected from the work list, the burden on the teaching worker for creating the work program can be reduced.
According to the second aspect of the present invention, since dummy parts that do not actually exist are defined and the position and orientation for each movement are set, the air cut operation and the retreat operation that are not related to the movement of the parts can be performed. A work program can be generated.
According to the third aspect of the present invention, since the work conditions are set according to the work content, it is possible to deal with various assembling work, and the versatility of the multi-arm robot can be increased.
According to the invention described in claim 4, since the waypoint number of the component to be synchronized with the component to be synchronized with the work content is designated, it becomes possible for the plurality of manipulators to operate in synchronization, and the plurality of manipulators to be operated. It is possible to create a work program that operates in cooperation.
According to the fifth to eighth aspects of the present invention, even when the position or posture of the specified part or its moving operation cannot be realized, work that can be performed by automatically changing the posture of the manipulator or the position of the external shaft. A program can be generated.

以下、本発明の実施の形態について図を参照して説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

図1は、本発明の方法を実施する複腕ロボットおよび装置の構成を示している。ここでは左右2台のマニピュレータを有する双腕ロボットを例に説明する。図において、101はJ1からJ6の関節を有する左腕マニピュレータ、同様に102はJ1からJ6の関節を有する右腕マニピュレータである。マニピュレータ101と102はそれぞれの先端部に開閉するグリッパを備えており、グリッパによって作業台105上の部品を把持し、組み付け作業を行う。このように部品を組み付ける作業ではマニピュレータに力制御を施し、力加減を制御しながら組み付けることが多い。このような場合は、マニピュレータの先端部とグリッパとの間に力センサ(図示せず)を装着する。
103はマニピュレータ101と102の制御装置であり、作業プログラム読み込み部103により読み込んだ作業プログラムに記述された動作命令に応じて指令生成部1032が両マニピュレータへの指令を生成し、各マニピュレータのサーボ制御部1033、1034へ位置指令を送る。
サーボ制御部1033、1034では各マニピュレータの各軸モータの位置・速度制御を行う。
図1の例ではグリッパは空気圧により動作し、作業プログラムに記述されたI/O命令によってグリッパへの空気圧の供給または供給停止が行われてグリッパが開閉する。
また力制御を実行する場合は指令生成部1032は力センサによる計測結果を基にサーボ制御部1033、1034へ力指令を送り、サーボ制御部1033、1034では各マニピュレータの各軸モータの力制御も実行する。
FIG. 1 shows the configuration of a multi-arm robot and apparatus for implementing the method of the present invention. Here, a double-arm robot having two left and right manipulators will be described as an example. In the figure, 101 is a left arm manipulator having joints J1 to J6, and 102 is a right arm manipulator having joints J1 to J6. The manipulators 101 and 102 are provided with grippers that open and close at the respective tip portions, and the parts on the work table 105 are gripped by the grippers to perform assembly work. In the work of assembling parts in this way, the manipulator is often subjected to force control and assembled while controlling the force. In such a case, a force sensor (not shown) is mounted between the tip of the manipulator and the gripper.
Reference numeral 103 denotes a control device for the manipulators 101 and 102. The command generation unit 1032 generates commands to both manipulators according to the operation commands described in the work program read by the work program reading unit 103, and servo control of each manipulator is performed. Position commands are sent to units 1033 and 1034.
Servo controllers 1033 and 1034 control the position and speed of each axis motor of each manipulator.
In the example of FIG. 1, the gripper operates by air pressure, and the gripper is opened or closed by supplying or stopping supply of air pressure to the gripper by an I / O command described in the work program.
When executing force control, the command generation unit 1032 sends a force command to the servo control units 1033 and 1034 based on the measurement result of the force sensor, and the servo control units 1033 and 1034 also control force of each axis motor of each manipulator. Execute.

この制御装置103で用いる作業プログラムは作業プログラム作成装置104で作成される。本発明の作業プログラム作成方法もこの作業プログラム作成装置104上で実施するものである。
作業プログラム作成装置104では、マニピュレータ101、102や作業台105のロボットモデルが3次元CADデータ等を基に3次元コンピュータグラフィックスのモデルとして構築されている。マニピュレータの位置関係や各マニピュレータの軸構成、動作領域などの情報もロボットモデルには含まれている。さらに組み付け対象モデル1041が3次元CADデータ等から変換されて3次元コンピュータグラフィックスのモデルとして作業プログラム作成装置104内に構築される。
また、作業情報入力部1042では作業プログラムを作成するための作業内容や作業条件など、様々な情報をGUIを用いて入力する。各モデルやGUIによる情報は、作業プログラム作成装置104に接続された表示装置106上に表示される。
作業プログラム作成装置104は、組み付け対象モデル1041で定義した部品の位置姿勢と作業情報入力部1042で入力された情報、および各作業内容に対応して予め用意された作業マクロ1043から作業プログラム生成部1044にて作業プログラムを自動的に生成するものである。この作業プログラム作成装置は例えばパソコンとそのパソコン上で動作するオフライン教示ソフトウェアで実現される。または、ロボットの制御装置に操作用として付加されているプログラミングペンダントの機能として実施しても良い。
作業プログラム作成装置をパソコンとオフライン教示ソフトウェアで実現する場合、作業情報入力部1024は具体的にはキーボードやマウスとなる。またプログラミングペンダントの機能として実施する場合は、プログラミングペンダント上に設けられたキーやタッチパネルとなる。作業情報入力部1024を用いたGUIによる入力方法は一般的なパソコンと同様であるので説明は割愛する。
また図1では作業プログラム作成装置104と表示装置106とは別体となっているが、作業プログラム作成装置をプログラミングペンダントの機能として実施する場合は、表示装置106は作業プログラム作成装置104と一体となっていても良い。
The work program used by the control device 103 is created by the work program creation device 104. The work program creation method of the present invention is also executed on the work program creation device 104.
In the work program creation device 104, the robot models of the manipulators 101 and 102 and the work table 105 are constructed as models of 3D computer graphics based on 3D CAD data and the like. Information such as the positional relationship of the manipulators, the axis configuration of each manipulator, and the operation area are also included in the robot model. Further, the assembly target model 1041 is converted from the three-dimensional CAD data or the like, and is constructed in the work program creation apparatus 104 as a three-dimensional computer graphics model.
The work information input unit 1042 inputs various information such as work contents and work conditions for creating a work program using a GUI. Information by each model and GUI is displayed on a display device 106 connected to the work program creation device 104.
The work program creation device 104 includes a work program generation unit from a part macro defined by the assembly target model 1041, information input by the work information input unit 1042, and a work macro 1043 prepared in advance corresponding to each work content. In 1044, a work program is automatically generated. This work program creation device is realized by, for example, a personal computer and off-line teaching software operating on the personal computer. Alternatively, it may be implemented as a function of a programming pendant added to the robot controller for operation.
When the work program creation device is realized by a personal computer and offline teaching software, the work information input unit 1024 is specifically a keyboard or a mouse. Moreover, when implementing as a function of a programming pendant, it becomes a key or touch panel provided on the programming pendant. Since the input method by GUI using the work information input unit 1024 is the same as that of a general personal computer, the description is omitted.
In FIG. 1, the work program creation device 104 and the display device 106 are separated. However, when the work program creation device is implemented as a function of a programming pendant, the display device 106 is integrated with the work program creation device 104. It may be.

図2は組み付け対象となる部品とその組み付けの一例を示している。図2(a)に示しているように作業台上におかれた部品201に、部品A(202)と部品B(203)を図2(b)のように組み付ける。ここで部品201には部品202と部品203をそれぞれ組み付ける穴2011と2012があり、また、部品202と部品203はケーブル204で接続されている。こうしたケーブルで接続された2つの部品を組み付ける作業は1台のマニピュレータのみでは行うことができない。2台のマニピュレータがそれぞれのグリッパで部品202と部品203を把持した状態でケーブル204に張力がかからないように協調して搬送し、部品201に組み付ける必要がある。   FIG. 2 shows an example of a component to be assembled and its assembly. As shown in FIG. 2A, the part A (202) and the part B (203) are assembled to the part 201 placed on the work table as shown in FIG. Here, the component 201 has holes 2011 and 2012 for assembling the component 202 and the component 203, respectively, and the component 202 and the component 203 are connected by a cable 204. The operation of assembling two parts connected by such a cable cannot be performed by only one manipulator. It is necessary that the two manipulators carry them in a coordinated manner so that no tension is applied to the cable 204 in a state where the gripper grips the parts 202 and 203 with the respective grippers, and assemble them to the part 201.

図3は図1で説明した作業プログラム作成装置104で実施する作業プログラム作成の過程を示すフローチャートである。
まず組み付け対象モデル1041を作成する(ステップS0)。ここでは図2で示した組み付け対象の3次元CADデータを読み込むことによって3次元コンピュータグラフィックスとしてモデル化できる。
組み付け作業に先立って部品はロボットの周辺に設置される部品供給装置によって供給されるものとし、これを部品の初期位置とする。
次に、組み付け対象の各部品を操作するマニピュレータを指定する(ステップS1)。
具体的な指定方法としてはオフライン教示ソフトウェアのGUIを用いてステップS0で読み込んだ組み付け対象モデルを表示装置106に表示させ、表示装置106上で各部品(202、203)を選択して、例えば部品203は左マニピュレータで把持、操作するよう指定し、部品202には右マニピュレータで把持、操作するよう指定する。ただし、部品201はマニピュレータで直接操作せず作業台上に固定されているだけなので、部品201を把持、操作するマニピュレータの指定は行わない。
FIG. 3 is a flowchart showing a process of creating a work program executed by the work program creating apparatus 104 described with reference to FIG.
First, an assembly target model 1041 is created (step S0). Here, it can be modeled as three-dimensional computer graphics by reading the three-dimensional CAD data to be assembled shown in FIG.
Prior to the assembly work, the parts are supplied by a parts supply device installed around the robot, and this is set as the initial position of the parts.
Next, a manipulator that operates each component to be assembled is designated (step S1).
As a specific designation method, the assembly target model read in step S0 is displayed on the display device 106 using the GUI of the offline teaching software, and each component (202, 203) is selected on the display device 106. 203 is designated to be gripped and operated by the left manipulator, and the part 202 is designated to be gripped and operated by the right manipulator. However, since the component 201 is not directly operated by the manipulator and is only fixed on the work table, the manipulator for gripping and operating the component 201 is not specified.

次に、部品組み付けの動作の途中で各部品が経由する点の位置と姿勢を設定する(ステップS2)。ここでは部品202と203について、図2(a)に示した初期位置姿勢から図2(b)に示した組み付け完了位置までの間を移動する際の経由点ごとの位置・姿勢を設定する。経由点の姿勢は、部品202と203にそれぞれ設けた直交座標系の姿勢によって設定する。   Next, the position and orientation of a point through which each component passes during the component assembling operation are set (step S2). Here, for the parts 202 and 203, the position / posture for each waypoint when moving from the initial position / posture shown in FIG. 2 (a) to the assembly completion position shown in FIG. 2 (b) is set. The posture of the via point is set by the posture of the orthogonal coordinate system provided for each of the components 202 and 203.

図4は、部品組み付け作業における、部品202と203の各経由点の位置・姿勢の具体例を示している。2021、2031がそれぞれ部品202と203に設定した直交座標系である。この座標系2021と2031は各部品に設定した代表点の位置姿勢を表すためのものである。
図4(a)の初期位置姿勢で、ステップS1で指定したように部品203を左マニピュレータ手先のグリッパで、部品202を右マニピュレータ手先のグリッパでそれぞれ把持し、(b)のように持ち上げる。この際に部品203を部品201に組み付けに適した姿勢にするために、左マニピュレータにより部品203の姿勢を(a)の状態から90°回転させる。(c)で部品201の上に搬送し、(d)で部品202を部品201の穴2011へ嵌めるためのアプローチ位置へ移動させる。
部品202を穴2011へ嵌めた後に、右マニピュレータ手先のグリッパを開放し部品202の把持を解消して、(e)で部品203を部品201の穴2012へ嵌めるためのアプローチ位置へ移動させる。部品201を穴2012へ嵌めた後に、左マニピュレータ手先のグリッパを開放し部品201の把持を解消する。
このように教示作業者が想定した部品組み付け手順に従って、部品202の座標系2021と部品203の座標系2031の各経由点における位置姿勢を指定する。
具体的な指定方法としては、ステップS0で作成した組み付け対象モデルの3次元コンピュータグラフィックスを含むオフライン教示ソフトウェアのGUI環境において、表示装置106上に表示された組み付け対象モデルを教示作業者が図4(a)〜(e)のように経由点へと移動させてその位置を記録するとともに、各部品の経由点における部品202、203の座標系を追加し、その軸方向を決めていく。経由点ごとにこの作業を繰り返すことで座標系2021と座標系2031の各経由点における位置姿勢が決定される。
FIG. 4 shows a specific example of the position / posture of each via point of the parts 202 and 203 in the part assembling work. Reference numerals 2021 and 2031 denote orthogonal coordinate systems set for the parts 202 and 203, respectively. The coordinate systems 2021 and 2031 are for representing the position and orientation of the representative point set for each component.
4A, the part 203 is gripped by the gripper of the left manipulator hand and the part 202 is gripped by the gripper of the right manipulator hand as specified in step S1, and lifted as shown in FIG. 4B. At this time, the posture of the component 203 is rotated by 90 ° from the state (a) by the left manipulator in order to make the component 203 suitable for assembly to the component 201. In (c), it is conveyed onto the part 201, and in (d), the part 202 is moved to the approach position for fitting into the hole 2011 of the part 201.
After fitting the part 202 into the hole 2011, the gripper of the right manipulator hand is released to release the grip of the part 202, and the part 203 is moved to the approach position for fitting the part 203 into the hole 2012 in (e). After fitting the component 201 into the hole 2012, the gripper of the component 201 is released by releasing the gripper of the left manipulator hand.
In this way, the position and orientation at each via point of the coordinate system 2021 of the component 202 and the coordinate system 2031 of the component 203 are designated according to the component assembly procedure assumed by the teaching worker.
As a specific designation method, in the GUI environment of the off-line teaching software including the three-dimensional computer graphics of the assembly target model created in step S0, the teaching worker displays the assembly target model displayed on the display device 106 as shown in FIG. As shown in (a) to (e), the position is recorded by moving it to a via point, and the coordinate system of the parts 202 and 203 at the via point of each part is added to determine the axial direction. By repeating this operation for each via point, the position and orientation at each via point of the coordinate system 2021 and the coordinate system 2031 are determined.

次に、各部品を操作するよう指定されたマニピュレータや部品の経由点を基に実際の各マニピュレータの経由点データリストを生成する(ステップS3)。
経由点データリストは、作業プログラム生成部1044にて左マニピュレータ用のリストと右マニピュレータ用のリストがそれぞれ自動生成され、経由点番号、部品名、経由点の位置および姿勢からなる。経由点番号は部品が移動する順に割り振られた番号であり、経由点の位置姿勢はステップS2で設定した各部品の経由点の位置姿勢である。
Next, a route point data list of each actual manipulator is generated based on the manipulator designated to operate each component and the route points of the component (step S3).
The waypoint data list is automatically generated by the work program generation unit 1044 for the left manipulator list and the right manipulator list, and includes a waypoint number, a part name, and a position and orientation of the waypoint. The waypoint number is a number assigned in the order in which the parts move, and the position and orientation of the waypoint are the position and orientation of the waypoint of each part set in step S2.

次に、上記で設定した各部品の経由点で実行する作業内容を設定する(ステップS4)。作業内容は図2の作業例では「把持」、「嵌め合い」「把持解消」などがあるが、これに加えて「通過」「停止」なども作業内容の一つとして含める。作業内容は予め登録されたものから選択する。
また、選択された作業内容に応じて作業条件を入力する。
例えば「嵌め合い」の作業条件としては、力制御のパラメータや嵌め込み量等が挙げられる。このような作業条件を予め複数用意し、作業条件ごとに一意の番号を割り当ててその作業条件番号を必要に応じて設定する。教示作業者は適宜表示装置106に表示される画面を見ながら、こうした作業内容や作業条件の設定を作業情報入力部1042によって行う。
ステップS4で作業内容や作業条件を入力するGUIの画面例を図5に示す。表の左から経由点番号、部品名、作業内容、作業条件番号が示される。ここでは経由点番号と部品名はステップS3で生成した経由点データリストに応じて、マニピュレータ毎に図5のような表が示され、教示作業者はそこに順次作業内容と作業条件番号を入力していく。
Next, the work contents to be executed at the waypoints of the respective parts set as described above are set (step S4). The work content includes “gripping”, “fitting”, “grip cancellation” and the like in the work example of FIG. 2, but in addition to this, “passing”, “stop”, and the like are included as one of the work contents. The work content is selected from those registered in advance.
Also, work conditions are input according to the selected work content.
For example, working conditions for “fitting” include force control parameters, amount of fitting, and the like. A plurality of such work conditions are prepared in advance, a unique number is assigned to each work condition, and the work condition number is set as necessary. The teaching worker sets such work contents and work conditions by the work information input unit 1042 while watching the screen displayed on the display device 106 as appropriate.
FIG. 5 shows an example of a GUI screen for inputting work contents and work conditions in step S4. The via point number, part name, work content, and work condition number are shown from the left of the table. Here, the waypoint number and the part name are shown in a table as shown in FIG. 5 for each manipulator according to the waypoint data list generated in step S3, and the teaching worker sequentially inputs work contents and work condition numbers there. I will do it.

最後に、ステップS4で完成した表の各経由点番号における作業内容に対応した作業マクロを組み合わせてマニピュレータの作業プログラムを自動生成する(ステップS5)。
作業マクロとは各作業内容をマニピュレータで実現するための一つまたは複数のロボット言語で構成された命令群である。ロボット言語はPTP(ポイントtoポイント)制御を行うための動作命令やグリッパを開閉するためのI/O命令、あるいは力制御を使って嵌め合いを行う作業命令、センサ情報を取得するセンサ命令など様々な命令で構成されており、作業マクロはそれらの組み合わせであって予め登録されている。
なお、作業マクロの汎用性を高めるため、作業マクロ内の動作命令では原則として「現在位置からの移動量」のように相対的な移動量を指定するようになっており、直接移動先を指定しないようにして様々な作業プログラムから利用可能なように構成されている。
Finally, a work program for the manipulator is automatically generated by combining work macros corresponding to work contents at each waypoint number in the table completed in step S4 (step S5).
A work macro is a group of instructions composed of one or more robot languages for realizing each work content with a manipulator. Robot language includes various operation commands for performing PTP (point-to-point) control, I / O commands for opening and closing the gripper, work commands for fitting using force control, sensor commands for obtaining sensor information, etc. The operation macro is a combination thereof and is registered in advance.
In order to increase the versatility of work macros, the movement commands in the work macros generally specify relative movement amounts such as “movement amount from the current position”, and specify the destination directly. It is configured so that it can be used from various work programs.

図5の左マニピュレータの経由点番号1の部品把持に対応する把持作業マクロとその作業条件の例、および左マニピュレータの経由点番号5の部品嵌め合いに対応する作業マクロとその作業条件の例を図6に示す。
図6(a)は作業内容「把持」に対応した作業マクロ「Grip」を示す。作業マクロ「Grip」は
(1行目)センサを用いた把持位置の計測命令と
(2行目)センサによる計測結果に基づいた移動命令、
(3行目)グリッパを閉める命令
の3つの命令から構成される。4行目は、作業マクロを呼び出した作業プログラムへ戻るための命令である。
経由点番号1においては、図4(a)に示すように部品は初期位置にあるが、実際にマニピュレータが部品の初期位置へアプローチしてグリッパによって部品を把持する場合、部品の位置を再確認する必要がある。そのためグリッパには部品の位置を計測するためのセンサが設けられており、作業マクロ「Grip」の1行目ではまず部品の位置計測を行う。
1行目によって計測センサを基準とした把持対象部品の位置がP001に代入され、2行目によってP001に代入された値だけマニピュレータが動作してグリッパの位置を微調整する。
また図6(b)に示す作業条件は、グリッパ開閉に対応する制御装置のI/O番号、センサによる計測のための対象物番号、計測結果によって把持位置を決定するための把持位置補正値からなる。
An example of a gripping work macro corresponding to the part gripping of the via point number 1 of the left manipulator in FIG. 5 and an example of the working condition thereof, and an example of a working macro corresponding to the part fitting of the via point number of the left manipulator and the working condition thereof As shown in FIG.
FIG. 6A shows a work macro “Grip” corresponding to the work content “gripping”. The work macro “Grip” has a (first line) grip position measurement command using the sensor and a (second line) movement command based on the measurement result by the sensor,
(Third line) It is composed of three instructions for closing the gripper. The fourth line is an instruction for returning to the work program that called the work macro.
At the waypoint number 1, the part is in the initial position as shown in FIG. 4A. However, when the manipulator actually approaches the initial position of the part and grips the part with the gripper, the position of the part is reconfirmed. There is a need to. Therefore, the gripper is provided with a sensor for measuring the position of the component, and the position of the component is first measured in the first line of the work macro “Grip”.
The position of the part to be gripped with reference to the measurement sensor is assigned to P001 by the first line, and the manipulator operates by the value assigned to P001 by the second line to finely adjust the position of the gripper.
Also, the work conditions shown in FIG. 6B are based on the I / O number of the control device corresponding to the opening / closing of the gripper, the object number for measurement by the sensor, and the grip position correction value for determining the grip position based on the measurement result. Become.

同様に図5の左マニピュレータの経由点番号5では、図4(e)に示すような初期位置から部品A(203)を部品C(201)の穴(2012)へ挿入する作業を記述している。図6(c)に作業内容「嵌め合い」に対応した作業マクロ「Fitting」を示す。作業マクロ「Fitting」は、
(1〜3行目)部品A(203)を部品C(201)の嵌合部分への突き当たるまでマニピュレータを下降させるためのTUKIATE命令に関する命令群
(4〜6行目)上記突き当てで部品Aが部品Cの穴(2012)の縁に当たって止まった場合にマニピュレータを微動させて穴を探るSAGURI命令に関する命令群
(7〜10行目)部品Aを部品Cの穴の底部まで挿入するINSERT命令に関する命令群
から構成される。
この作業が成功した場合は11行目で0をリターンし、失敗した場合は13行目で−1を、この作業マクロの呼び出し元の作業プログラムへ返す。
また図6(d)に示すように、上記の突き当て、探り、挿入それぞれの作業条件を入力する。
なお7行目の「*_INS」や12行目の「*_ERROR」は3行目や6行目、10行目のJUMP命令による移動先を示すラベルである。また「GETSTATUS」は、突き当て命令(TUKIATE命令)や探り命令(SAGURI命令)などの直前の命令が成功したか、失敗したかを戻り値としてB001などの変数に取り込む命令である。TUKIATE命令、SAGURI命令、INSERT命令といった命令は予めマニピュレータの作業命令として準備されている。
前述の「把持」「通過」「嵌め合い」「把持解消」「停止」といったそれぞれの作業内容に対応した作業マクロと作業条件を予め登録しておき、ステップS4で各経由点番号について作業内容とその作業条件を指定することで組み付け作業の作業プログラム生成に必要な情報が得られる。
Similarly, the waypoint number 5 of the left manipulator in FIG. 5 describes the operation of inserting the part A (203) into the hole (2012) of the part C (201) from the initial position as shown in FIG. Yes. FIG. 6C shows a work macro “Fitting” corresponding to the work content “Fitting”. The work macro “Fitting”
(1st to 3rd lines) A group of instructions relating to the TUKITE instruction for lowering the manipulator until the part A (203) hits the fitting part of the part C (201) (4th to 6th lines) Group of SAGURI instructions that finely move the manipulator to find the hole when it hits the edge of the hole (2012) of part C (7th to 10th lines) Related to the INSERT instruction that inserts part A to the bottom of the hole of part C Consists of instruction groups.
If this work is successful, 0 is returned in the 11th line, and if it is unsuccessful, -1 is returned to the work program that called this work macro in the 13th line.
In addition, as shown in FIG. 6 (d), the operation conditions for the above-described butting, searching, and insertion are input.
Note that “* _INS” on the 7th line and “* _ERROR” on the 12th line are labels indicating the destinations of the third, sixth, and 10th JUMP instructions. “GETSTATUS” is an instruction that takes in a variable such as B001 as a return value whether an immediately preceding instruction such as a hit instruction (TUKIATE instruction) or a search instruction (SAGURI instruction) has succeeded or failed. Instructions such as a TUKIATE instruction, a SAGURI instruction, and an INSERT instruction are prepared in advance as manipulator work instructions.
Work macros and work conditions corresponding to the respective work contents such as “gripping”, “passing”, “fitting”, “holding cancellation”, and “stop” are registered in advance, and in step S 4 By specifying the work conditions, information necessary for generating a work program for the assembly work can be obtained.

このように選択可能な作業内容に応じて作業マクロと作業条件を準備しておき、ステップS4で作成した表の順番に従って作業マクロを組み合わせていくことでマニピュレータの作業プログラムが自動生成される。
以上述べたように本願発明では、部品毎に作業するマニピュレータを設定し、決められた組み付け手順に応じて部品の経由点の位置姿勢を設定し、それに対応する作業内容を設定し、設定された作業内容を実現する作業マクロの組み合わせから、複数のマニピュレータの作業プログラムを作成するという手順をとることにより、教示作業者が意図した組み付け手順に基づいて複数マニピュレータの作業プログラムを生成することができ、また効率的に短時間で作業プログラムを生成することが可能となる。
As described above, work macros and work conditions are prepared according to the work contents that can be selected, and the work macros are combined in accordance with the order of the table created in step S4, whereby a manipulator work program is automatically generated.
As described above, in the present invention, the manipulator that works for each part is set, the position and orientation of the waypoint of the part is set according to the determined assembling procedure, and the work content corresponding to that is set and set. By taking the procedure of creating a work program for multiple manipulators from a combination of work macros that realize the work content, a work program for multiple manipulators can be generated based on the assembly procedure intended by the teaching worker, In addition, a work program can be efficiently generated in a short time.

実際の組み付け作業では、待機位置にあるマニピュレータが部品にアプローチするまでの動作や、作業が終わって退避する動作、あるいは、1つの部品を他方のマニピュレータで持ち替える動作など、部品を直接操作せずにマニピュレータのみを移動させることが必要な部分が存在する。
このようなマニピュレータの動作は各部品の経由点の位置姿勢を設定する処理(ステップS2)において、図7のように実際には存在しないダミー部品302(部品D)と303(部品E)を定義し、さらにそれを操作するマニピュレータを指定し、各ダミー部品の経由点の位置姿勢3021、3031を設定することで、マニピュレータのみの移動を実現する作業プログラムが生成できるようにする。
ステップS4においても、ここで設定したダミー部品の経由点で実行する作業内容を図8のNo.1やNo.8のように設定する。このようにすることで、部品の移動を伴わないマニピュレータの部品へのアプローチ動作や、組み付け作業完了後のマニピュレータの退避動作についてもステップS5で自動生成される作業プログラムの中に含めることが可能となる。
In the actual assembly work, the manipulator at the standby position approaches the part, moves away from the work, or moves one part with the other manipulator without directly operating the part. There are parts that need to move only the manipulator.
The operation of such a manipulator defines dummy parts 302 (part D) and 303 (part E) that do not actually exist as shown in FIG. 7 in the process (step S2) of setting the position and orientation of the via point of each part. Furthermore, a manipulator for operating the manipulator can be generated by designating a manipulator for operating the dummy parts and setting the position and orientation 3021 and 3031 of the via points of each dummy part.
Also in step S4, the work content to be executed at the via point of the dummy part set here is shown as No. in FIG. 1 or No. Set as in 8. By doing so, it is possible to include the approach operation to the part of the manipulator without moving the part and the retracting operation of the manipulator after completion of the assembly work in the work program automatically generated in step S5. Become.

さらに、複数のマニピュレータで作業を実行する場合はマニピュレータが相互に干渉しないようにする必要がある。また図2のような部品の組立てでは2台のマニピュレータがそれぞれ部品202と203を把持した状態で協調動作し、ケーブルに張力がかからないようにする必要がある。このように複数のマニピュレータが同期して動作しなければならない場合、ステップS4において各部品の経由点の作業内容を設定する際に、同期する対象の部品および、同期する対象部品の経由点番号を指定する。このような同期条件を入力するフィールドを追加したGUIの例を図8に示している。
図8の左マニピュレータNo.2やNo.5のように同期する対象の部品(この例では右マニピュレータで操作する部品B)と経由点番号(この例では右マニピュレータで操作する部品Bの経由点番号)を入力する。
このように同期について入力した左右マニピュレータの作業内容に基づいて生成された作業プログラム例を図9に示す。図9(a)は左マニピュレータの作業プログラム例、図9(b)は右マニピュレータの作業プログラム例である。図8で指定した作業内容と作業条件に対応して、図9のような作業プログラムが作成される。ここで、作業プログラム中のP000〜P004はステップS2で指定した部品の位置姿勢からステップS5で作成されたロボット位置姿勢データである。また、CONDは作業条件番号を指定するタグである。この時、左右マニピュレータの同期はSYNC命令を挿入することで実現する。SYNC命令は左マニピュレータ(R0)と右マニピュレータ(R1)を同期させる命令であり、この命令が実行されると、相手マニピュレータのSYNC命令が実行されるまで待つ。従ってSYNC命令が両方とも実行された時点でそれ以下の作業プログラム実行が同時に再開されるようになる。
このようにすることで、複数のマニピュレータが同期をとって動作することが可能となるので、複数のマニピュレータを協調させて動作するような作業プログラムの作成も可能となる。
Furthermore, when performing work with a plurality of manipulators, it is necessary to prevent the manipulators from interfering with each other. Also, in assembling the parts as shown in FIG. 2, it is necessary that the two manipulators operate in a coordinated manner while holding the parts 202 and 203, respectively, so that no tension is applied to the cable. When a plurality of manipulators must operate synchronously in this way, when setting the work contents of the waypoints of each part in step S4, the parts to be synchronized and the waypoint numbers of the target parts to be synchronized are set. specify. An example of a GUI to which a field for inputting such a synchronization condition is added is shown in FIG.
The left manipulator No. 2 or No. As shown in FIG. 5, the parts to be synchronized (part B operated by the right manipulator in this example) and the via point number (via point number of the part B operated by the right manipulator in this example) are input.
FIG. 9 shows an example of a work program generated based on the work contents of the left and right manipulators input for synchronization in this way. FIG. 9A shows an example of a work program for the left manipulator, and FIG. 9B shows an example of a work program for the right manipulator. A work program as shown in FIG. 9 is created corresponding to the work contents and work conditions specified in FIG. Here, P000 to P004 in the work program are the robot position and orientation data created in step S5 from the position and orientation of the parts specified in step S2. COND is a tag for designating a work condition number. At this time, the synchronization of the left and right manipulators is realized by inserting a SYNC command. The SYNC command is a command to synchronize the left manipulator (R0) and the right manipulator (R1). When this command is executed, it waits until the SYNC command of the counterpart manipulator is executed. Therefore, when both SYNC instructions are executed, the execution of the lower work program is resumed at the same time.
By doing so, it becomes possible for a plurality of manipulators to operate in synchronism, so that it is possible to create a work program that operates in cooperation with the plurality of manipulators.

作業プログラムの自動生成(ステップS5)では、ステップS2で設定した部品の各経由点の位置および姿勢をマニピュレータ先端の位置および姿勢に変換し、これを入力として逆運動学変換の計算によってマニピュレータの各関節角目標値を計算する。
これによって各マニピュレータの各経由点での各関節軸の目標角度が求まり、移動命令とともに作業プログラムが生成できる。逆運動学変換の計算は既知の方法であり、すべての経由点についてこの計算を行うことで移動に関する作業プログラムが完成する。
しかし、経由点の位置はGUI環境にて指定したもので、実際にマニピュレータを動作させて決定したものではない。よって経由点が特異点になっている場合もありうる。特異点が含まれていた場合は逆運動学変換の解が求まらない。また逆運動学変換の計算では求まった解が、マニピュレータの関節の可動範囲外であるなど、ステップS2で設定した部品の経由点の位置姿勢がマニピュレータにとっては実現できない位置姿勢である場合がある。
一方、単に通過するだけの経由点や、部品の把持方法を変更して作業姿勢を変更しても問題ない経由点については、その経由点でのマニピュレータ手先の目標姿勢のみ変更すれば目標位置は実現できる場合が多い。例えば、図4の(b)や(c)において、部品202や203は必ずしも図4に示した通りの姿勢でなくても良い。
そこで、ステップS5において逆運動学変換で解が求まらなかったり、解が関節可動範囲外であったりした経由点が発生した場合は、マニピュレータ手先の目標姿勢を所定の範囲内で変化させ、所定の評価方法によって目標姿勢を変更することで部品の経由点におけるマニピュレータの実現可能な位置姿勢が求まる。
目標姿勢を決定する評価方法として例えば次のようにすればよい。
(1)可操作性楕円体(「吉川恒夫著「ロボット制御基礎論」参照」)の半径から姿勢が最も変更しやすい方向を決定する。
可操作性楕円体とは手先の可操作性を表したものであり、その主軸半径の長い方向が手先速度を出しやすい方向、短い方向が小さい手先速度しか出せない方向である。従って、可操作性楕円体主軸半径(ヤコビ行列の特異値)によって変更しやすい方向を知ることができる。
(2)上記の方向に姿勢を一定範囲に振って、逆運動学変換の計算が可能な範囲を決定する。
(3)上記範囲のうち、逆運動学変換の解が各関節可動範囲のリミット値からの距離が最も遠いものを目標姿勢とする。
このようにして自動的に目標姿勢を変更することで実現可能な作業プログラムが自動生成できる。
In the automatic generation of the work program (step S5), the position and orientation of each via point of the part set in step S2 are converted into the position and orientation of the manipulator tip, and this is used as input to calculate each of the manipulators by inverse kinematic transformation calculation. Calculate the joint angle target value.
As a result, the target angle of each joint axis at each via point of each manipulator is obtained, and a work program can be generated together with the movement command. The calculation of the inverse kinematic transformation is a known method, and the work program relating to movement is completed by performing this calculation for all waypoints.
However, the position of the via point is specified in the GUI environment and is not determined by actually operating the manipulator. Therefore, there may be a case where the waypoint is a singular point. If singularities are included, the solution of inverse kinematic transformation cannot be obtained. In some cases, the solution obtained by the calculation of inverse kinematics conversion is out of the movable range of the joint of the manipulator, and the position and orientation of the via point of the part set in step S2 is a position and orientation that cannot be realized by the manipulator.
On the other hand, for via points that simply pass through or via points that do not have any problems if the work posture is changed by changing the gripping method of the part, if only the target posture of the manipulator hand at that via point is changed, the target position will be In many cases, it can be realized. For example, in FIGS. 4B and 4C, the parts 202 and 203 do not necessarily have the postures shown in FIG.
Therefore, when a via point is generated in which the solution cannot be obtained by inverse kinematic conversion in step S5 or the solution is out of the joint movable range, the target posture of the manipulator hand is changed within a predetermined range, The feasible position and orientation of the manipulator at the via point of the part can be obtained by changing the target posture by a predetermined evaluation method.
For example, the evaluation method for determining the target posture may be as follows.
(1) A direction in which the posture is most easily changed is determined from the radius of the manipulable ellipsoid (see “Tsuneo Yoshikawa“ Robot Control Basics ”).
The manipulability ellipsoid represents the maneuverability of the hand. The direction in which the principal axis radius is long is the direction in which the hand speed can be easily obtained, and the direction in which the short direction is small is the direction in which only a small hand speed can be obtained. Therefore, it is possible to know the direction that is easily changed by the manipulable ellipsoid principal axis radius (singular value of the Jacobian matrix).
(2) The posture is swung in a certain range in the above direction, and a range in which the inverse kinematic transformation can be calculated is determined.
(3) Among the above ranges, the solution in which the inverse kinematics conversion is farthest from the limit value of each joint movable range is set as the target posture.
Thus, a work program that can be realized by automatically changing the target posture can be automatically generated.

また、図10のようにマニピュレータが冗長自由度を持った7軸以上の構成である場合は、冗長自由度の姿勢を変更することで特異点や関節可動範囲オーバーを回避することが可能である。例えば7軸のマニピュレータでは、マニピュレータ先端の位置と姿勢を変更せずに、マニピュレータの肘の位置(ロボットのベース部から数えて3軸目(J3)と4軸目(J4)の軸の交点を肘位置と定義する)を変更することが可能である。
マニピュレータの原点(ロボットのベース部から数えて1軸目(J1)の軸線上の点で、2軸目(J2)の軸線と同じ高さに位置する)と手首点(J6軸の軸線とJ7軸の軸線の交点)を結ぶ直線回りの肘位置の回転角度を肘回転角度と呼び、7自由度マニピュレータでは冗長自由度としてよく用いられる。
このような冗長自由度を用いて特異点や関節可動範囲オーバーを回避する。
ステップS5において逆運動学変換で解が求まらなかったり、解が関節可動範囲外であったりした経由点が発生した場合は、マニピュレータの肘回転角度を所定の範囲内で変化させ、所定の評価方法によって目標肘回転角度を変更することでマニピュレータの経由点における実現可能な位置姿勢が求まる。
目標肘回転角度を決定する評価方法としては例えば次のようにすれば良い。
(1)肘回転角度を一定範囲で変化させ、逆運動学変換の計算が可能な範囲を決定する。
(2)上記範囲のうち、逆運動学変換の解が関節可動範囲のリミット値からの(各関節角度制限値との)距離が最も遠いものを目標肘回転角度とする。
(3)または上記範囲のうち、上述の可操作度が最も大きいものを肘回転角度とする。
このようにして自動的に冗長自由度姿勢を変更することで、実現可能な作業プログラムが自動生成できる。
In addition, when the manipulator has a configuration with seven or more axes having redundant degrees of freedom as shown in FIG. 10, it is possible to avoid a singular point or a joint movable range over by changing the posture of the redundant degrees of freedom. . For example, in a 7-axis manipulator, without changing the position and posture of the manipulator tip, the position of the manipulator elbow (the intersection of the 3rd axis (J3) and 4th axis (J4) axes counted from the base of the robot) It is possible to change the elbow position).
The origin of the manipulator (the point on the axis of the first axis (J1) counted from the base of the robot is located at the same height as the axis of the second axis (J2)) and the wrist point (the axis of the J6 axis and J7 The rotation angle of the elbow position around a straight line connecting the axis of the axis) is called the elbow rotation angle, and is often used as a redundant degree of freedom in a seven-degree-of-freedom manipulator.
Using such redundant degrees of freedom avoids singular points and joint movement range over.
In step S5, when a via point where the solution is not obtained by inverse kinematic conversion or the solution is out of the joint movable range is generated, the elbow rotation angle of the manipulator is changed within a predetermined range, By changing the target elbow rotation angle according to the evaluation method, the feasible position and orientation at the waypoint of the manipulator can be obtained.
For example, the evaluation method for determining the target elbow rotation angle may be as follows.
(1) The elbow rotation angle is changed within a certain range, and the range in which the inverse kinematic transformation can be calculated is determined.
(2) Among the above ranges, a solution having the farthest distance from the limit value of the joint movable range (with respect to each joint angle limit value) as the solution of the inverse kinematic conversion is set as the target elbow rotation angle.
(3) or the above-mentioned range having the highest manipulability is defined as the elbow rotation angle.
By automatically changing the redundancy degree of freedom posture in this way, a feasible work program can be automatically generated.

さらに、マニピュレータが位置制御可能な外部の走行台や回転台の上に搭載されている場合は、走行台や回転台の位置を変更することで、特異点や関節可動範囲オーバーを回避することが可能である。
ステップS5において逆運動学変換で解が求まらなかったり、解が関節可動範囲外であったりした経由点が発生した場合は、マニピュレータが搭載されている走行台や回転台の位置を所定の範囲で変化させ、所定の評価方法によって走行台や回転台の位置を変更することで部品の経由点におけるマニピュレータの実現可能な位置姿勢が求まる。
走行台や回転台の位置を決定する評価方法としては例えば次のようにすれば良い。
(1)マニピュレータの可操作性楕円体の半径から走行台や回転台の変更方向を決定する。
(2)上記の方向に走行台または回転台の位置を一定範囲変化させ、その時のマニピュレータベースの位置姿勢の変化分をマニピュレータ手先の目標位置姿勢から差し引いて逆運動学変換し、その計算が可能な範囲を決定する。
(3)上記範囲のうち、逆運動学変換の解が関節可動範囲のリミット値からの距離が最も遠いものを走行台または回転台の目標位置とする。
このようにして自動的に走行台や回転台の位置を変更することで、実現可能な作業プログラムが自動生成できる。
Furthermore, when the manipulator is mounted on an external traveling platform or turntable whose position can be controlled, it is possible to avoid singular points or over the joint movable range by changing the position of the traveling table or turntable. Is possible.
In step S5, if there is a transit point where the solution cannot be obtained by inverse kinematics conversion or the solution is out of the joint movable range, the position of the traveling table or the turntable on which the manipulator is mounted is set to a predetermined value. The position and orientation of the manipulator that can be realized at the waypoint of the part can be obtained by changing the range and changing the position of the traveling table or the turntable by a predetermined evaluation method.
For example, the evaluation method for determining the position of the traveling table or the rotating table may be as follows.
(1) The direction of change of the traveling platform and the turntable is determined from the radius of the manipulability ellipsoid of the manipulator.
(2) Change the position of the carriage or turntable in a certain range in the above direction, and subtract the change in the position and orientation of the manipulator base from the target position and orientation of the manipulator hand to perform inverse kinematic conversion and calculate it The correct range.
(3) Among the above ranges, a solution in which the inverse kinematics conversion is farthest from the limit value of the joint movable range is set as a target position of the traveling platform or the turntable.
A work program that can be realized can be automatically generated by automatically changing the position of the traveling table or the turntable in this way.

上記はステップS2で設定した部品の経由点の位置姿勢が、マニピュレータにとっては実現できない位置姿勢である場合の例を示したが、経由点間を補間して移動する際に位置姿勢が実現できなくなる場合もある。これは、生成された作業プログラムをオフライン教示ソフトウェアで経由点間の補間移動シミュレーションを行うことによって確認することができる。
この場合は、マニピュレータの移動途中に目標位置姿勢を実現できない地点において、上記の経由点での姿勢や冗長自由度姿勢、走行台や回転台の位置を変更した方法と同じ方法を用いて、姿勢や冗長自由度姿勢、走行台や回転台の位置を変更し、その地点を新たな経由点として作業プログラムに追加すればよい。
The above shows an example in which the position and orientation of the via point of the part set in step S2 cannot be realized by the manipulator. However, the position and orientation cannot be realized when moving by interpolating between the via points. In some cases. This can be confirmed by performing an interpolated movement simulation between via points using the off-line teaching software for the generated work program.
In this case, at the point where the target position and posture cannot be realized during the movement of the manipulator, the posture is determined by using the same method as the method of changing the posture at the waypoint, the posture of the redundant degree of freedom, and the position of the traveling platform and the turntable. It is also possible to change the position of the redundant degree of freedom, the position of the traveling platform or the turntable, and add the point as a new waypoint to the work program.

本発明の方法を適用する複腕ロボット装置の構成図Configuration diagram of a multi-arm robot apparatus to which the method of the present invention is applied 本発明の方法を適用する組み付け作業の一例を示す図The figure which shows an example of the assembly | attachment operation | work which applies the method of this invention. 本発明の方法の処理手順を示すフローチャートThe flowchart which shows the process sequence of the method of this invention. 本発明の方法の部品の移動毎の位置姿勢設定方法を示す図The figure which shows the position and orientation setting method for every movement of the components of the method of this invention 本発明の方法の作業内容や作業条件の入力画面の例を示す図The figure which shows the example of the input screen of the work content and work condition of the method of this invention 本発明の方法の作業マクロと作業条件の例を示す図The figure which shows the example of the work macro of the method of this invention, and work conditions 本発明の方法のダミー部品での位置姿勢設定方法を示す図The figure which shows the position and orientation setting method in the dummy components of the method of this invention 本発明の方法の作業内容や作業条件の入力画面に同期条件を追加した図The figure which added the synchronous condition to the work content and work condition input screen of the method of the present invention 本発明の方法によって生成された作業プログラムの例を示す図The figure which shows the example of the work program produced | generated by the method of this invention 冗長自由度を持ったマニピュレータを示す図Diagram showing a manipulator with redundant degrees of freedom

符号の説明Explanation of symbols

101 左腕ロボット(6自由度)
102 右腕ロボット(6自由度)
103 制御装置
104 プログラム作成装置
105 作業台
106 表示装置
201 部品C
2011 部品Bを取り付ける穴
2012 部品Aを取り付ける穴
202 部品B
2021 部品Bの位置姿勢を表す座標系
203 部品A
2031 部品Aの位置姿勢を表す座標系
204 ケーブル
302 ダミー部品D
303 ダミー部品C
3021 ダミー部品Dの位置姿勢を表す座標系
3031 ダミー部品Cの位置姿勢を表す座標系
101 Left arm robot (6 degrees of freedom)
102 Right arm robot (6 degrees of freedom)
103 Control Device 104 Program Creation Device 105 Worktable 106 Display Device 201 Part C
2011 A hole for mounting a part B 2012 A hole for mounting a part A 202 A part B
2021 A coordinate system 203 representing the position and orientation of the part B. Part A
2031 Coordinate system 204 representing position and orientation of component A Cable 302 Dummy component D
303 Dummy part C
3021 A coordinate system representing the position and orientation of the dummy component D 3031 A coordinate system representing the position and orientation of the dummy component C

Claims (8)

複数のマニピュレータを有する複腕ロボットを動作させ、複数の部品の組み付け作業を行う作業プログラムをオフラインにて生成する複腕ロボットの作業プログラム作成方法であって、
前記複数の部品の各々につき、その部品を把持して操作するマニピュレータを前記複数のマニピュレータから選定して設定する第1ステップと、
前記組み付け作業において前記各部品が経由する各点の位置と、前記各経由点における前記各部品の姿勢を設定する第2ステップと、
前記第2ステップにて設定された各経由点について、前記マニピュレータが到達する順に番号を割り当てると共に、前記経由点での前記部品の位置および姿勢を前記経由点の位置および姿勢とし、前記マニピュレータ毎に、経由点番号、操作する部品名、前記経由点位置および姿勢からなる経由点データリストを作成する第3ステップと、
前記経由点データリストの前記各経由点にて前記マニピュレータが実行する作業内容を予め登録された作業一覧から選択する第4ステップと、
前記各経由点について設定された作業内容に応じて、前記マニピュレータに対する命令群からなる作業マクロを組み合わせて前記複数のマニピュレータの作業プログラムを作成する第5ステップと、
からなることを特徴とする複腕ロボットの作業プログラム作成方法。
A work program creation method for a multi-arm robot that operates a multi-arm robot having a plurality of manipulators and generates a work program for assembling a plurality of parts offline,
For each of the plurality of parts, a first step of selecting and setting a manipulator for gripping and operating the part from the plurality of manipulators;
A second step of setting the position of each point through which each component passes in the assembly operation, and the posture of each component at each of the via points;
For each waypoint set in the second step, a number is assigned in the order in which the manipulator arrives, and the position and orientation of the part at the waypoint are set as the position and orientation of the waypoint, and for each manipulator A third step of creating a via point data list including the via point number, the name of the part to be operated, and the via point position and orientation;
A fourth step of selecting a work content to be executed by the manipulator at each waypoint in the waypoint data list from a pre-registered work list;
A fifth step of creating work programs for the plurality of manipulators by combining work macros comprising instructions for the manipulators according to the work content set for each of the via points;
A work program creation method for a multi-arm robot characterized by comprising:
前記第2ステップにて、前記複数の部品の他にダミー部品を仮想的に定義し、前記ダミー部品の経由点の位置および姿勢を設定することによって前記部品を把持せずに前記マニピュレータのみの動作を作成することを特徴とする請求項1記載の複腕ロボットの作業プログラム作成方法。   In the second step, in addition to the plurality of parts, a dummy part is virtually defined, and the position and orientation of the via point of the dummy part are set to operate only the manipulator without gripping the part. The work program creation method for a multi-arm robot according to claim 1, wherein: 前記第4ステップにて、前記作業内容に関するパラメータとして作業条件を設定することを特徴とする請求項1記載の複腕ロボットの作業プログラム作成方法。   2. The work program creation method for a multi-arm robot according to claim 1, wherein in the fourth step, a work condition is set as a parameter relating to the work content. 前記組み付け作業において前記複数のマニピュレータを同期させて動作させる場合は、
前記第4ステップにて前記各マニピュレータに作業内容を設定する際に、同期命令と、同期動作の対象となる部品および部品の経由点番号を指定することを特徴とする請求項1記載の複腕ロボットの作業プログラム作成方法。
When operating the plurality of manipulators in synchronization in the assembly work,
2. The multi-arm according to claim 1, wherein when the work content is set in each of the manipulators in the fourth step, a synchronization command, a part to be synchronized and a via point number of the part are designated. Robot work program creation method.
前記第5ステップにて、前記経由点の位置および姿勢から逆運動学計算を用いてマニピュレータの各関節目標角度を計算し、前記マニピュレータが特異点を通過する場合は、
前記マニピュレータ手先の目標姿勢を所定の範囲で変化させ、変化させた目標姿勢について所定の評価方法による評価値を求め、前記評価値によって前記マニピュレータの目標姿勢を変更することを特徴とする請求項1記載の複腕ロボットの作業プログラム作成方法。
In the fifth step, each joint target angle of the manipulator is calculated from the position and posture of the via point using inverse kinematics calculation, and when the manipulator passes a singular point,
2. The target posture of the manipulator hand is changed within a predetermined range, an evaluation value is obtained by a predetermined evaluation method for the changed target posture, and the target posture of the manipulator is changed according to the evaluation value. The work program creation method of the double-arm robot described.
前記第5ステップにて、前記経由点間の前記マニピュレータの補間動作をシミュレーションし、前記補間シミュレーションにて前記マニピュレータが特異点を通過する場合は、
前記マニピュレータ手先の目標姿勢を所定の範囲で変化させ、変化させた目標姿勢について所定の評価方法による評価値を求め、前記評価値によって前記マニピュレータの目標姿勢を変更することを特徴とする請求項1記載の複腕ロボットの作業プログラム作成方法。
In the fifth step, the interpolation operation of the manipulator between the waypoints is simulated, and when the manipulator passes a singular point in the interpolation simulation,
2. The target posture of the manipulator hand is changed within a predetermined range, an evaluation value is obtained by a predetermined evaluation method for the changed target posture, and the target posture of the manipulator is changed according to the evaluation value. The work program creation method of the double-arm robot described.
前記マニピュレータが7自由度以上の冗長自由度を持つ場合は、
前記マニピュレータの冗長自由度姿勢を所定の範囲で変化させた時の前記評価方法による評価値に基づいて、前記マニピュレータの冗長自由度の姿勢を変更することを特徴とする請求項5または6記載の複腕ロボットの作業プログラム作成方法。
If the manipulator has more than 7 degrees of freedom,
7. The redundant degree of freedom posture of the manipulator is changed based on an evaluation value obtained by the evaluation method when the redundant degree of freedom posture of the manipulator is changed within a predetermined range. How to create a multi-arm robot work program.
前記マニピュレータが前記マニピュレータの台座を移動させる外部軸上に搭載されている場合は、
前記外部軸の位置を所定の範囲で変化させた時の前記評価方法による評価値に基づいて、前記外部軸の位置を変更することを特徴とする請求項5または6記載の複腕ロボットの作業プログラム作成方法。
When the manipulator is mounted on an external shaft that moves the pedestal of the manipulator,
The multi-arm robot operation according to claim 5 or 6, wherein the position of the external axis is changed based on an evaluation value obtained by the evaluation method when the position of the external axis is changed within a predetermined range. How to create a program.
JP2008313198A 2008-12-09 2008-12-09 Method for creating work program for double-arm robot and double-arm robot Active JP5071361B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008313198A JP5071361B2 (en) 2008-12-09 2008-12-09 Method for creating work program for double-arm robot and double-arm robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008313198A JP5071361B2 (en) 2008-12-09 2008-12-09 Method for creating work program for double-arm robot and double-arm robot

Publications (3)

Publication Number Publication Date
JP2010137298A true JP2010137298A (en) 2010-06-24
JP2010137298A5 JP2010137298A5 (en) 2011-07-14
JP5071361B2 JP5071361B2 (en) 2012-11-14

Family

ID=42347877

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008313198A Active JP5071361B2 (en) 2008-12-09 2008-12-09 Method for creating work program for double-arm robot and double-arm robot

Country Status (1)

Country Link
JP (1) JP5071361B2 (en)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013059817A (en) * 2011-09-12 2013-04-04 Seiko Epson Corp Operation program creating device, program, robot control system, and robot system
JP2014226730A (en) * 2013-05-17 2014-12-08 蛇の目ミシン工業株式会社 Robot, control method for robot, and control program for robot
JP2015085467A (en) * 2013-10-31 2015-05-07 セイコーエプソン株式会社 Control device, robot, robot system and control method
WO2016151862A1 (en) * 2015-03-26 2016-09-29 株式会社日立製作所 Assembly teaching device and assembly teaching method
JP2017001145A (en) * 2015-06-11 2017-01-05 蛇の目ミシン工業株式会社 robot
US9925668B2 (en) 2015-04-10 2018-03-27 Seiko Epson Corporation Robot, control unit, and control method
JP2018118330A (en) * 2017-01-23 2018-08-02 富士通株式会社 Operational equipment, operating method, operation program and robot system
KR20180112324A (en) * 2017-04-03 2018-10-12 한국전자통신연구원 Automatic assembly apparatus and method based on process recipe
JP2019188487A (en) * 2018-04-19 2019-10-31 富士通株式会社 Arithmetic unit, arithmetic method and arithmetic program
JP2020185631A (en) * 2019-05-13 2020-11-19 日立Geニュークリア・エナジー株式会社 Simulation device, and simulation program
CN114713890A (en) * 2021-12-13 2022-07-08 上海工程技术大学 Ring surface worm gear hob rake face machining system and method based on double-arm cooperation
US11707845B2 (en) 2019-06-27 2023-07-25 Hitachi, Ltd. Assembly planning device, assembly planning method, and non-transitory computer-readable storage medium

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5582427B2 (en) * 2012-12-18 2014-09-03 株式会社安川電機 Teaching data creation apparatus, robot system, and teaching data creation method

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS632681A (en) * 1986-06-19 1988-01-07 富士通株式会社 Coordination operation control system of plurality of robot
JPS63288683A (en) * 1987-05-21 1988-11-25 株式会社東芝 Assembling robot
JPS6436306A (en) * 1987-07-31 1989-02-07 Yaskawa Denki Seisakusho Kk Method for editing operation program of robot
JPH05265527A (en) * 1992-03-16 1993-10-15 Fanuc Ltd Operation program preparing method and execution method
JPH06187020A (en) * 1992-12-18 1994-07-08 Kobe Steel Ltd Operational locus instructing method for robot
JPH09179624A (en) * 1995-12-27 1997-07-11 Honda Motor Co Ltd Off-line teaching system
JPH11226886A (en) * 1998-02-13 1999-08-24 Hitachi Zosen Corp Correcting method for robot track
JP2002355724A (en) * 2001-05-31 2002-12-10 Ricoh Co Ltd Assembly-disassembly process design support device

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS632681A (en) * 1986-06-19 1988-01-07 富士通株式会社 Coordination operation control system of plurality of robot
JPS63288683A (en) * 1987-05-21 1988-11-25 株式会社東芝 Assembling robot
JPS6436306A (en) * 1987-07-31 1989-02-07 Yaskawa Denki Seisakusho Kk Method for editing operation program of robot
JPH05265527A (en) * 1992-03-16 1993-10-15 Fanuc Ltd Operation program preparing method and execution method
JPH06187020A (en) * 1992-12-18 1994-07-08 Kobe Steel Ltd Operational locus instructing method for robot
JPH09179624A (en) * 1995-12-27 1997-07-11 Honda Motor Co Ltd Off-line teaching system
JPH11226886A (en) * 1998-02-13 1999-08-24 Hitachi Zosen Corp Correcting method for robot track
JP2002355724A (en) * 2001-05-31 2002-12-10 Ricoh Co Ltd Assembly-disassembly process design support device

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013059817A (en) * 2011-09-12 2013-04-04 Seiko Epson Corp Operation program creating device, program, robot control system, and robot system
JP2014226730A (en) * 2013-05-17 2014-12-08 蛇の目ミシン工業株式会社 Robot, control method for robot, and control program for robot
JP2015085467A (en) * 2013-10-31 2015-05-07 セイコーエプソン株式会社 Control device, robot, robot system and control method
WO2016151862A1 (en) * 2015-03-26 2016-09-29 株式会社日立製作所 Assembly teaching device and assembly teaching method
US9925668B2 (en) 2015-04-10 2018-03-27 Seiko Epson Corporation Robot, control unit, and control method
JP2017001145A (en) * 2015-06-11 2017-01-05 蛇の目ミシン工業株式会社 robot
JP2018118330A (en) * 2017-01-23 2018-08-02 富士通株式会社 Operational equipment, operating method, operation program and robot system
KR102093775B1 (en) * 2017-04-03 2020-03-26 한국전자통신연구원 Automatic assembly apparatus and method based on process recipe
KR20180112324A (en) * 2017-04-03 2018-10-12 한국전자통신연구원 Automatic assembly apparatus and method based on process recipe
JP2019188487A (en) * 2018-04-19 2019-10-31 富士通株式会社 Arithmetic unit, arithmetic method and arithmetic program
JP7081284B2 (en) 2018-04-19 2022-06-07 富士通株式会社 Arithmetic logic unit, operational method, and arithmetic program
JP2020185631A (en) * 2019-05-13 2020-11-19 日立Geニュークリア・エナジー株式会社 Simulation device, and simulation program
JP7223630B2 (en) 2019-05-13 2023-02-16 日立Geニュークリア・エナジー株式会社 Simulation device and simulation program
US11707845B2 (en) 2019-06-27 2023-07-25 Hitachi, Ltd. Assembly planning device, assembly planning method, and non-transitory computer-readable storage medium
CN114713890A (en) * 2021-12-13 2022-07-08 上海工程技术大学 Ring surface worm gear hob rake face machining system and method based on double-arm cooperation
CN114713890B (en) * 2021-12-13 2023-08-29 上海工程技术大学 Double-arm cooperation-based annular worm hob front cutter surface machining system and method

Also Published As

Publication number Publication date
JP5071361B2 (en) 2012-11-14

Similar Documents

Publication Publication Date Title
JP5071361B2 (en) Method for creating work program for double-arm robot and double-arm robot
US20220009100A1 (en) Software Interface for Authoring Robotic Manufacturing Process
CN108453702B (en) Robot simulator, robot system, and simulation method
US10279476B2 (en) Method and system for programming a robot
EP2282873B1 (en) A method and a system for facilitating calibration of an off-line programmed robot cell
JP4137909B2 (en) Robot program correction device
JP6706489B2 (en) Robot direct teaching method
US20110054685A1 (en) Robot off-line teaching method
JP4621641B2 (en) Robot teaching CAD apparatus and robot teaching method
JP2005111618A (en) Manual feeding device for robot
JP6469159B2 (en) Offline programming apparatus and method with work position detection program generation function by contact sensor
WO2022224425A1 (en) Numerical control device and numerical control system
Manou et al. Off-line programming of an industrial robot in a virtual reality environment
JP2009190113A (en) Robot simulation device
Gogouvitis et al. Construction of a virtual reality environment for robotic manufacturing cells
JP2013226602A (en) Industrial machine system
JP2019188545A (en) Robot control device
JP5272447B2 (en) Numerical control machine operation simulator
JP2018118330A (en) Operational equipment, operating method, operation program and robot system
WO2018180299A1 (en) Robot teaching device, method for controlling robot teaching device, and robot teaching program
Lin Path generation for robot polishing system based on cutter location data
Dàvila-Rìos et al. On the Implementation of a robotic welding process using 3D simulation environment
JPH03288211A (en) Off-line teaching system for handling robot
WO2018180297A1 (en) Robot teaching device, robot teaching program, and method for controlling robot teaching device
Xiao et al. Assembly language design and development for reconfigurable flexible assembly line

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110531

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110531

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20120216

TRDD Decision of grant or rejection written
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120718

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120724

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: 20120806

R150 Certificate of patent or registration of utility model

Ref document number: 5071361

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20150831

Year of fee payment: 3