JP2007115011A - Control method of industrial robot - Google Patents

Control method of industrial robot Download PDF

Info

Publication number
JP2007115011A
JP2007115011A JP2005305593A JP2005305593A JP2007115011A JP 2007115011 A JP2007115011 A JP 2007115011A JP 2005305593 A JP2005305593 A JP 2005305593A JP 2005305593 A JP2005305593 A JP 2005305593A JP 2007115011 A JP2007115011 A JP 2007115011A
Authority
JP
Japan
Prior art keywords
coordinate system
value data
teaching
coordinate value
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
JP2005305593A
Other languages
Japanese (ja)
Other versions
JP4615418B2 (en
Inventor
Yasuhiro Kamishina
泰宏 神品
Yasunao Itano
泰直 板野
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.)
Nachi Fujikoshi Corp
Daihen Corp
Original Assignee
Nachi Fujikoshi Corp
Daihen 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 Nachi Fujikoshi Corp, Daihen Corp filed Critical Nachi Fujikoshi Corp
Priority to JP2005305593A priority Critical patent/JP4615418B2/en
Publication of JP2007115011A publication Critical patent/JP2007115011A/en
Application granted granted Critical
Publication of JP4615418B2 publication Critical patent/JP4615418B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Numerical Control (AREA)
  • Manipulator (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a control method of industrial robot, in which existing teaching data can be reused as it is without teaching correction even in the event of slippage of relative positional relation between a manipulator and a work. <P>SOLUTION: At the time of teaching, position attitude data of a teaching point is stored as user coordinate value data based on a user coordinate system, and at the time of reproduction, base coordinate value data is calculated based on the user coordinate value data and the user coordinate system, and each joint angle data of a robot is calculated based on the base coordinate value data. When the work is set in a position different from a reference position, positions of a plurality of characteristic points are redesignated to redefine the user coordinate system, and at the time of reproduction, the base coordinate value data is recalculated based on the user coordinate value data and the redefined user coordinate system, and each joint angle data of the robot is calculated based on the recalculated base coordinate value data. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、作成済みの教示データの位置及び姿勢の補正を行う産業用ロボットの制御方法に関するものである。   The present invention relates to a method for controlling an industrial robot that corrects the position and orientation of created teaching data.

アーク溶接、スポット溶接等の加工作業をロボットで実現する場合、ティーチングプレイバックと呼ばれる方式が採用されることが一般的である。ティーチングプレイバック方式とは、予め決められた位置にワークを設置して、マニピュレータとワークとの相対的な位置関係を拘束した状態で、ワークに対するマニピュレータの動作を教示し、この教示データを繰り返し再生動作させることで、同一品種のワークを連続して加工するという方法である。   When processing operations such as arc welding and spot welding are realized by a robot, a method called teaching playback is generally adopted. In the teaching playback method, a work is placed at a predetermined position, the operation of the manipulator with respect to the work is taught in a state where the relative positional relationship between the manipulator and the work is constrained, and this teaching data is reproduced repeatedly. This is a method of continuously processing workpieces of the same type by operating them.

図5は、このティーチングプレイバック方式を採用した産業用ロボットの一般的な構成図である。同図において、マニピュレータ1は、アーム2の先端にワークWを加工するためのツールTを備えている。ティーチペンダント3は、ワークWに対するマニピュレータ1の動作を作業者が教示するための装置であり、その盤面上には、マニピュレータ1を移動させるためのボタン群4が装備されている。ボタン群4は、図示しているように座標系の方向(±X,±Y,±Z)に応じた複数のボタンが装備されているのが一般的である。例えば、ロボット個体に固有の座標系であるベース座標系でマニピュレータを移動させる場合は、ボタン群4のX+ボタンを押すと、ベース座標系のX+方向にマニピュレータ1が移動する。このように、作業者はボタン群4を操作することによってマニピュレータ1を所望の位置に動かして、加工作業を行わせるための作業経路を教示する。そして、作業経路上の教示点におけるマニピュレータ1の位置姿勢座標値が教示データとしてロボット制御装置5に記憶される。ロボット制御装置5は、教示データ及び図示しないエンコーダからの現在位置情報等に基づいて、マニピュレータ1の駆動モータを駆動制御して、ツールTを教示点に移動させる。   FIG. 5 is a general configuration diagram of an industrial robot adopting this teaching playback method. In the figure, a manipulator 1 includes a tool T for processing a workpiece W at the tip of an arm 2. The teach pendant 3 is a device for an operator to teach the operation of the manipulator 1 with respect to the workpiece W, and a button group 4 for moving the manipulator 1 is provided on the board surface. As shown in the figure, the button group 4 is generally equipped with a plurality of buttons corresponding to the directions (± X, ± Y, ± Z) of the coordinate system. For example, when the manipulator is moved in the base coordinate system which is a coordinate system unique to the robot individual, when the X + button of the button group 4 is pressed, the manipulator 1 moves in the X + direction of the base coordinate system. As described above, the operator operates the button group 4 to move the manipulator 1 to a desired position and teaches a work path for performing the machining work. Then, the position and orientation coordinate value of the manipulator 1 at the teaching point on the work path is stored in the robot control device 5 as teaching data. The robot control device 5 drives and controls the drive motor of the manipulator 1 based on the teaching data and current position information from an encoder (not shown) to move the tool T to the teaching point.

図6は、教示時におけるマニピュレータの移動方向と座標系の関係について説明するための図である。マニピュレータ1、ワークWは、図5と同符号を付与した同一のものであるので説明を省略する。作業経路Kは、ワークWを加工するために必要な経路の1つであり、同図の場合は教示点Aと教示点Bとによって形成される。ベース座標系Cbはマニピュレータ1に固有の座標系である。ユーザ座標系Cuは作業者が任意に定義可能な座標系である。説明の便宜上、ベース座標系Cb、ユーザ座標系Cu共に、軸方向のX+とY+を矢印で表現しており、その他の軸方向は省略している。   FIG. 6 is a diagram for explaining the relationship between the moving direction of the manipulator and the coordinate system during teaching. The manipulator 1 and the workpiece W are the same as those shown in FIG. The work path K is one of the paths necessary for machining the workpiece W, and is formed by the teaching point A and the teaching point B in the case of FIG. The base coordinate system Cb is a coordinate system unique to the manipulator 1. The user coordinate system Cu is a coordinate system that can be arbitrarily defined by the operator. For convenience of explanation, in the base coordinate system Cb and the user coordinate system Cu, X + and Y + in the axial direction are represented by arrows, and the other axial directions are omitted.

上述したように、作業者はマニピュレータ1を所望の位置に移動させてその位置を教示する。しかしながら、移動させるためのボタン操作は煩雑さを伴うことが多い。例えば、同図において作業経路Kを教示するために、現在位置である教示点Aから目標位置である教示点Bにマニピュレータ1を移動させる場合を想定する。教示点Aから教示点Bに向かう方向がベース座標系CbのX+方向に一致していれば、作業者はボタン群4のX+ボタンを押すだけでよい。しかしながら、ワークW上の作業経路Kは、ベース座標系Cbの軸方向と一致していない。このような場合、作業者はボタン群4のX+ボタン、Y+ボタン等を組み合わせて操作してマニピュレータ1を移動させる必要がある。ワークWが大型であったり作業経路Kが複雑であったりすると、マニピュレータ1の移動操作はより一層煩雑になる。   As described above, the operator moves the manipulator 1 to a desired position and teaches the position. However, the button operation for moving is often complicated. For example, assume that the manipulator 1 is moved from the teaching point A that is the current position to the teaching point B that is the target position in order to teach the work route K in FIG. If the direction from the teaching point A to the teaching point B coincides with the X + direction of the base coordinate system Cb, the operator only has to press the X + button of the button group 4. However, the work path K on the workpiece W does not coincide with the axial direction of the base coordinate system Cb. In such a case, the operator needs to move the manipulator 1 by operating the X + button, the Y + button, etc. of the button group 4 in combination. If the workpiece W is large or the work path K is complicated, the operation of moving the manipulator 1 becomes more complicated.

そこで、近年の産業用ロボットでは、作業者が自分自身で座標系の原点位置と軸方向を所望値にすることができるユーザ座標系Cuを定義することによって、移動操作の煩雑さを解消する提案がなされている(例えば、特許文献1参照)。同図に示すように、作業経路Kの方向が座標系のX+方向に一致するようにユーザ座標系Cuを設定すれば、ボタン群4のX+ボタンのみの操作で教示点Bに移動させることができる。すなわち、座標系の原点位置及び方向をワークWの設置位置、形状等に合わせて所望の位置及び方向に設定することができるため、移動操作の煩雑さを解消できると共に教示工数の低減が可能である。なお、ユーザ座標系の定義方法は特許文献1等で開示されているようにワーク上の特徴点を3点指定するというものである。具体的には、ワークW上の任意の特徴点P1,P2,P3を指定することによってユーザ座標系Cuが定義される。   Therefore, in recent industrial robots, a proposal to eliminate the complexity of the moving operation by defining a user coordinate system Cu that allows the operator to set the origin position and the axial direction of the coordinate system to desired values by himself / herself. (For example, refer to Patent Document 1). As shown in the figure, if the user coordinate system Cu is set so that the direction of the work path K coincides with the X + direction of the coordinate system, it can be moved to the teaching point B by operating only the X + button of the button group 4. it can. That is, since the origin position and direction of the coordinate system can be set to a desired position and direction according to the installation position, shape, etc. of the workpiece W, the complexity of the moving operation can be eliminated and the teaching man-hour can be reduced. is there. The user coordinate system is defined by specifying three feature points on the workpiece as disclosed in Patent Document 1 and the like. Specifically, the user coordinate system Cu is defined by designating arbitrary feature points P1, P2, and P3 on the workpiece W.

図7は、従来、教示データがどのように記憶され、再生動作されるのかを説明するためのフローチャート図である。   FIG. 7 is a flowchart for explaining how teaching data is conventionally stored and played back.

同図のステップS1において、作業者は、上述した方法によってユーザ座標系を定義する。ステップS2において、ユーザ座標系の軸方向に従って作業経路上の教示点までマニピュレータを移動する。そしてステップS3において、教示点の記憶操作を行う。このとき、教示データとして記憶されるマニピュレータ1の位置姿勢座標値は、ベース座標値データで記憶される。ユーザ座標系を基準にしてマニピュレータ1を移動しても教示データとして記憶される位置姿勢座標値は、ユーザ座標値データではなくベース座標値データである。   In step S1 in the figure, the worker defines the user coordinate system by the method described above. In step S2, the manipulator is moved to the teaching point on the work path according to the axial direction of the user coordinate system. In step S3, a teaching point storing operation is performed. At this time, the position and orientation coordinate values of the manipulator 1 stored as teaching data are stored as base coordinate value data. Even if the manipulator 1 is moved with reference to the user coordinate system, the position / orientation coordinate value stored as the teaching data is not the user coordinate value data but the base coordinate value data.

ステップS4において、作業経路の教示が全て終了していない場合は、ステップS2に戻り、次の教示点への移動操作と記憶操作を行う。作業経路の教示が終了している場合は、ステップS5で再生動作の開始操作を行う。再生動作が開始されると、ステップS6においてロボット制御装置が教示点毎に位置姿勢座標値を読み出す。マニピュレータの各関節はモータの回転駆動により制御されるため、再生位置は関節角度として算出する必要がある。そのため、ステップS7において、ベース座標値データに基づいてマニピュレータの各関節角度を算出する逆変換演算を行う。そして、ステップS8において、マニピュレータの各関節を回転駆動することによって、算出された各関節角度の位置、すなわち教示点まで移動させる。最後にステップS9において全ての教示点の再生動作が終了していない場合は、ステップS6に戻り、次の教示点の再生動作を行う。全ての教示点の再生動作が終了している場合は、フローを終了する。   If all the work route teachings are not completed in step S4, the process returns to step S2 to perform a movement operation and a storage operation to the next teaching point. If the teaching of the work route has been completed, a reproduction operation start operation is performed in step S5. When the reproduction operation is started, the robot controller reads out the position / orientation coordinate value for each teaching point in step S6. Since each joint of the manipulator is controlled by rotation of the motor, the reproduction position needs to be calculated as a joint angle. For this reason, in step S7, an inverse transformation operation is performed to calculate each joint angle of the manipulator based on the base coordinate value data. In step S8, each joint of the manipulator is rotationally driven to move to the position of each calculated joint angle, that is, to the teaching point. Finally, if the reproduction operation for all teaching points is not completed in step S9, the process returns to step S6 to perform the reproduction operation for the next teaching point. If all the teaching points have been reproduced, the flow ends.

特開昭61−49205号公報JP-A-61-49205 「ロボット・マニピュレータ」コロナ社、Richard P.Paul著"Robot Manipulator" by Corona, Richard P. Paul

ところで、再生動作の度にワークWの設置位置が変化する場合には、ティーチペンダント3を使用して、作業者が教示点を修正する必要がある。作業者は、教示点が所望の位置から外れている場合には、ティーチペンダント3を使用してマニピュレータ1を所望の位置に動かした後、教示点を修正する(教示しなおす)という作業を、教示点の数だけ繰り返し行う必要があるため、多くの作業工数が必要になる。   By the way, when the installation position of the workpiece W is changed every time the reproducing operation is performed, it is necessary for the operator to correct the teaching point using the teach pendant 3. When the teaching point is out of the desired position, the operator moves the manipulator 1 to the desired position using the teach pendant 3 and then corrects (re-teaches) the teaching point. Since it is necessary to repeat as many as the number of teaching points, a large number of work steps are required.

通常はこのような教示点の修正が必要ないように、ワークWを固定する治具を準備して、ワークWの設置位置がばらつかないための工夫を行う。しかしながら、治具を使用してもワークWが大型になると、教示時と寸分の違いもなくワークWを設置することは現実的には難しくなる。ワークWを固定する治具自身も大きくかつ頑丈せざるを得ないため治具が高価になり、また大型のワークはワーク自身の寸法に誤差を生じやすいためである。   Usually, a jig for fixing the work W is prepared so that the teaching point is not corrected, and a device for preventing the installation position of the work W from being varied is prepared. However, if the workpiece W becomes large even if a jig is used, it is practically difficult to install the workpiece W without any difference from the teaching. This is because the jig for fixing the work W itself is also large and strong, and the jig becomes expensive, and a large work tends to cause an error in the dimensions of the work itself.

このように、ユーザ座標系を定義して教示時の操作簡易化及び教示工数の低減を図っていても、ワークの設置位置が再生動作の度に変化すると、再度教示点の修正作業を行わなければならないという課題を抱えている。   In this way, even if the user coordinate system is defined to simplify the operation during teaching and reduce the teaching man-hours, if the workpiece installation position changes each time the replay operation is performed, the teaching point must be corrected again. I have a problem that I have to.

なお、ワークWとマニピュレータ1の相対的な位置関係が、再生動作の度に変化することをある程度許容して、センサ機器をロボットに取り付けて教示点の補正を自動的に行うことも可能である。例えば、アーク溶接ロボットの場合には、タッチセンサと呼ばれるセンサを用いる。マニピュレータ1の先端に取り付けられたアーク溶接トーチの先端から消耗電極として溶接ワイヤが送給される。そのワイヤ先端に電圧を印可し、溶接ワイヤがワークWに接触したことを溶接ワイヤとワーク間の通電により検出することをタッチ検出動作と呼ぶ。タッチセンサを用いてワークWの設置位置を検出することにより、教示時と加工作業時とのワークWの位置のズレを検出することで、既教示データの位置姿勢座標値を、適宜適切に補正することが可能になる。しかしながら、タッチセンサを使用した方法であっても、教示点の数が多い場合にはタッチ検出動作の教示も多くなる、すなわち多大な教示工数が必要となるという課題を抱えている。さらに、再生動作時に多くのタッチ検出動作を行うことになるため、タクトタイムの増加につながるという課題を抱えている。   Note that the relative positional relationship between the workpiece W and the manipulator 1 can be allowed to change to some extent during each reproduction operation, and it is possible to automatically correct the teaching point by attaching the sensor device to the robot. . For example, in the case of an arc welding robot, a sensor called a touch sensor is used. A welding wire is fed as a consumable electrode from the tip of an arc welding torch attached to the tip of the manipulator 1. The application of a voltage to the tip of the wire and detecting that the welding wire is in contact with the workpiece W by energization between the welding wire and the workpiece is called a touch detection operation. By detecting the installation position of the workpiece W using the touch sensor and detecting the displacement of the workpiece W position between teaching and machining, the position and orientation coordinate values of the already taught data are corrected appropriately. It becomes possible to do. However, even the method using the touch sensor has a problem that when the number of teaching points is large, the teaching of the touch detection operation increases, that is, a large teaching man-hour is required. Furthermore, since many touch detection operations are performed during the reproduction operation, there is a problem that the tact time is increased.

さらにアーク溶接ロボットの場合は、アークセンサと呼ばれるセンサ機器をロボットに取り付けて教示点の補正を自動的に行うことも可能である。しかしながらアークセンサは、アーク溶接を開始した後の溶接線のズレを検出することしかできない。すなわち、ワークWが大きくズレた場合には対応できない。   Further, in the case of an arc welding robot, it is also possible to automatically correct a teaching point by attaching a sensor device called an arc sensor to the robot. However, the arc sensor can only detect the deviation of the weld line after starting arc welding. In other words, it is not possible to cope with the case where the workpiece W is greatly displaced.

本発明は、特に教示点の数が多く、かつワークの正確な設置が困難な大型ワークの加工作業を行う場合において、マニピュレータとワークとの相対的な位置関係にズレが生じたとしても既教示データを教示修正することなく、そのまま再利用することができる産業用ロボットの制御方法を提供することを目的とする。   The present invention teaches the teaching even if the relative positional relationship between the manipulator and the workpiece is deviated, especially when processing a large workpiece where the number of teaching points is large and the workpiece is not accurately set. It is an object of the present invention to provide an industrial robot control method which can be reused as it is without teaching and correcting data.

上記目的を達成するために、第1の発明は、ワークが基準位置に設置されているときに、ワーク上の複数の特徴点を指定することによって直交座標系の原点及び軸方向が所望値であるユーザ座標系を定義し、教示時にこのユーザ座標系の軸方向に従ってロボットを移動させて作業経路を教示してこの作業経路上の教示点の位置姿勢データをロボット個体に固有の直交座標系であるベース座標系を基準としたベース座標値データで記憶し、再生時にこのベース座標値データに基づいてロボットの各関節角度データを算出して動作制御を行う産業用ロボットの制御方法において、
教示時に前記教示点の位置姿勢データを前記ユーザ座標系を基準としたユーザ座標値データで記憶し、
再生時にこのユーザ座標値データ及び前記ユーザ座標系に基づいて前記ベース座標値データを算出し、このベース座標値データに基づいてロボットの各関節角度データを算出し、
ワークが前記基準位置とは異なる位置に設置されたときは、前記複数の特徴点の位置を再指定して前記ユーザ座標系を再定義し、
再生時に前記ユーザ座標値データ及び前記再定義されたユーザ座標系に基づいて前記ベース座標値データを再算出し、この再算出されたベース座標値データに基づいてロボットの各関節角度データを算出することを特徴とする産業用ロボットの制御方法である。
In order to achieve the above object, according to the first aspect of the present invention, the origin and the axial direction of the orthogonal coordinate system are set to desired values by designating a plurality of feature points on the workpiece when the workpiece is installed at the reference position. A certain user coordinate system is defined, the robot is moved according to the axis direction of this user coordinate system at the time of teaching, the work path is taught, and the position and orientation data of the teaching point on this work path is expressed in an orthogonal coordinate system unique to the robot individual. In a control method for an industrial robot that stores base coordinate value data based on a certain base coordinate system and calculates motion information by calculating each joint angle data of the robot based on the base coordinate value data during reproduction.
The teaching point position and orientation data is stored as user coordinate value data based on the user coordinate system during teaching,
The base coordinate value data is calculated based on the user coordinate value data and the user coordinate system during reproduction, and each joint angle data of the robot is calculated based on the base coordinate value data.
When the workpiece is installed at a position different from the reference position, the user coordinate system is redefined by respecifying the positions of the plurality of feature points,
At the time of reproduction, the base coordinate value data is recalculated based on the user coordinate value data and the redefined user coordinate system, and each joint angle data of the robot is calculated based on the recalculated base coordinate value data. This is a method for controlling an industrial robot.

第2の発明は、第1の発明に記載の特徴点の位置の再指定を、位置計測器によって測定して行うことを特徴とする産業用ロボットの制御方法である。   According to a second aspect of the invention, there is provided a control method for an industrial robot characterized in that the redesignation of the position of the feature point described in the first aspect is performed by measuring with a position measuring instrument.

第1の発明によれば、特に教示点の数が多く、かつワークの正確な設置が困難な大型ワークの加工作業を行う場合において、マニピュレータとワークとの相対的な位置関係にズレが生じたとしても、既教示データを教示修正することなく、そのまま再利用することができる。例えば、教示点が数百にも及ぶような大きな教示データであっても、ワーク上の複数の特徴点を再指定してユーザ座標系を再定義しさえすれば、教示点を1点も修正することなく、そのまま再利用できる。   According to the first aspect of the invention, the relative positional relationship between the manipulator and the workpiece has shifted, particularly when machining a large workpiece where the number of teaching points is large and it is difficult to accurately place the workpiece. However, the existing teaching data can be reused as it is without correcting the teaching. For example, even for large teaching data with hundreds of teaching points, as long as the user coordinate system is redefined by re-specifying multiple feature points on the workpiece, one teaching point is corrected. It can be reused as it is.

第2の発明によれば、ワーク上の複数の特徴点の再指定を、作業者ではなく、位置計測器によって自動的に測定して行うようにしたので、作業者自身が特徴点の再指定を行う必要がない。すなわち、第1の発明が有する効果に加えて、さらに作業者の作業工数を低減できる。   According to the second aspect of the invention, re-designation of a plurality of feature points on the workpiece is performed by automatic measurement by the position measuring device, not by the operator, so that the operator himself / herself re-designates the feature points. There is no need to do. That is, in addition to the effects of the first invention, the number of work steps for the operator can be further reduced.

[実施の形態1]
発明の実施の形態を実施例に基づき図面を参照して説明する。なお、本実施の形態に記載している数式及び算出手順の詳細については、非特許文献1に記載されている。
[Embodiment 1]
DESCRIPTION OF THE PREFERRED EMBODIMENTS Embodiments of the invention will be described based on examples with reference to the drawings. The details of the mathematical formulas and calculation procedures described in the present embodiment are described in Non-Patent Document 1.

図1は、本実施形態によって教示データの補正が行われる流れを説明するためのフローチャート図である。図2は、ワークが基準位置に設置されているときにワーク上の特徴点を指定することによってユーザ座標系が定義されていることを説明するための図である。   FIG. 1 is a flowchart for explaining a flow in which teaching data is corrected according to the present embodiment. FIG. 2 is a diagram for explaining that the user coordinate system is defined by designating feature points on the workpiece when the workpiece is placed at the reference position.

図2において、ワークWは基準位置Wkに設置されており、マニピュレータ1は、アーム2の先端にワークWを加工するためのツールTを備えている。ベース座標系Cbはマニピュレータ1に固有の座標系であり、原点Ob及び軸方向(Xb,Yb,Zb)を有している。ユーザ座標系Cuは作業者が任意に定義した座標系であり、図示しているように原点Ou及び軸方向(Xu,Yu,Zu)が定義されている。   In FIG. 2, the workpiece W is installed at the reference position Wk, and the manipulator 1 includes a tool T for processing the workpiece W at the tip of the arm 2. The base coordinate system Cb is a coordinate system unique to the manipulator 1, and has an origin Ob and an axial direction (Xb, Yb, Zb). The user coordinate system Cu is a coordinate system arbitrarily defined by an operator, and an origin Ou and an axial direction (Xu, Yu, Zu) are defined as illustrated.

図1のステップS1において、作業者は、ワークWが基準位置Wkに設置されているときにワークW上の特徴点P1、P2及びP3を指定する。ロボット制御装置5は、指定された特徴点P1、P2及びP3の位置に基づき、ベース座標系Cbから見たユーザ座標系Cuの位置姿勢を表す同次変換行列Abuを算出し、記憶する。以下、この同次変換行列Abuの算出方法について説明する。   In step S1 of FIG. 1, the operator designates feature points P1, P2, and P3 on the workpiece W when the workpiece W is installed at the reference position Wk. The robot controller 5 calculates and stores a homogeneous transformation matrix Abu representing the position and orientation of the user coordinate system Cu viewed from the base coordinate system Cb based on the positions of the designated feature points P1, P2 and P3. Hereinafter, a method for calculating the homogeneous transformation matrix Abu will be described.

まず、特徴点P1、P2及びP3におけるツールTの先端位置(以下、TCPという)のベース座標系での座標値(以下、ベース座標値データという)を算出する。非特許文献1に記載の手法によって、マニピュレータ1の移動後の位置(特徴点)の関節角度を、各関節を駆動するモータに直結されたエンコーダの出力としてロボット制御装置5が読み取り、予め定められたマニピュレータ1のアーム寸法と回転軸の配置を定義したリンクパラメータとに当てはめ、順演算と呼ばれる計算を行うことで、ベース座標系を基準としたTCPの位置が算出可能である。結果、特徴点P1、P2及びP3のそれぞれのベース座標値データBp1、Bp2及びBp3は次式で表される。   First, the coordinate value (hereinafter referred to as base coordinate value data) in the base coordinate system of the tip position (hereinafter referred to as TCP) of the tool T at the feature points P1, P2 and P3 is calculated. By the method described in Non-Patent Document 1, the robot control device 5 reads the joint angle of the position (feature point) after the movement of the manipulator 1 as the output of the encoder directly connected to the motor that drives each joint, and is determined in advance. The position of the TCP with reference to the base coordinate system can be calculated by applying a calculation called forward calculation by applying the arm size of the manipulator 1 and the link parameter defining the arrangement of the rotation axis. As a result, the base coordinate value data Bp1, Bp2, and Bp3 of the feature points P1, P2, and P3 are expressed by the following equations.

Figure 2007115011
上記(1)〜(3)式で、P1x〜P3x,P1y〜P3y,P1z〜P3zは、ベース座標値データのX,Y,Z成分をそれぞれ表している。
Figure 2007115011
In the above expressions (1) to (3), P1x to P3x, P1y to P3y, and P1z to P3z represent X, Y, and Z components of the base coordinate value data, respectively.

上記式で表される特徴点3点のベース座標値データに基づいて以下の演算を行い、最終的にベース座標系Cbから見たユーザ座標系Cuの位置姿勢を表す同次変換行列Abuを算出する。   The following calculation is performed based on the base coordinate value data of the three feature points represented by the above formula, and finally a homogeneous transformation matrix Abu representing the position and orientation of the user coordinate system Cu viewed from the base coordinate system Cb is calculated. To do.

まず、特徴点P1の位置をユーザ座標系Cuの原点とする。すなわち、ユーザ座標系Cuの原点Ouは特徴点P1のベース座標値データBp1と同値であるので、次式によって表わすことができる。   First, the position of the feature point P1 is set as the origin of the user coordinate system Cu. That is, since the origin Ou of the user coordinate system Cu is the same value as the base coordinate value data Bp1 of the feature point P1, it can be expressed by the following equation.

Ou=Bp1=[P1x,P1y,P1z] ‥‥(4)     Ou = Bp1 = [P1x, P1y, P1z] (4)

次に、ユーザ座標系CuのX軸を表すX軸ベクトルXvを算出する。X軸ベクトルXvは、特徴点P1から特徴点P2に向かうベクトルとするので、(1)式で表した特徴点P1のベース座標値データBp1、及び(2)式で表した特徴点P2のベース座標値データBp2とに基づいて次式で表される。   Next, an X-axis vector Xv representing the X-axis of the user coordinate system Cu is calculated. Since the X-axis vector Xv is a vector from the feature point P1 to the feature point P2, the base coordinate value data Bp1 of the feature point P1 expressed by the equation (1) and the base of the feature point P2 expressed by the equation (2) Based on the coordinate value data Bp2, it is expressed by the following equation.

Xv=[Xvx,Xvy,Xvz]
=[(P2x−P1x)/L1,
(P2y−P1y)/L1,
(P2z−P1z)/L1] ‥‥(5)
Xv = [Xvx, Xvy, Xvz]
= [((P2x-P1x) / L1,
(P2y-P1y) / L1,
(P2z-P1z) / L1] (5)

上記(5)式のL1には、次式が代入される。   The following equation is substituted for L1 in the above equation (5).

L1=√((P2x−P1x)
(P2y−P1y)
(P2z−P1z)) ‥‥(6)
L1 = √ ((P2x−P1x) 2 +
(P2y-P1y) 2 +
(P2z-P1z) 2 ) (6)

次に、X軸ベクトルXvと特徴点P1から特徴点P3に向かうベクトルQvとの外積から、Z軸ベクトルZvを算出する。まず、ベクトルQvは、次式で表される。   Next, the Z-axis vector Zv is calculated from the outer product of the X-axis vector Xv and the vector Qv from the feature point P1 toward the feature point P3. First, the vector Qv is expressed by the following equation.

Qb=[Qvx,Qvy,Qvz]
=[(P3x−P1x)/L2,
(P3y−P1y)/L2,
(P3z−P1z)/L2] ‥‥(7)
Qb = [Qvx, Qvy, Qvz]
= [((P3x-P1x) / L2,
(P3y-P1y) / L2,
(P3z-P1z) / L2] (7)

上記(7)式のL2には、下記に表す式が代入される。   The following formula is substituted for L2 in the formula (7).

L2=√((P3x−P1x)
(P3y−P1y)
(P3z−P1z)) ‥‥(8)
L2 = √ ((P3x−P1x) 2 +
(P3y-P1y) 2 +
(P3z-P1z) 2 ) (8)

Z軸ベクトルZvは、(5)式で表されるX軸ベクトルXvと(7)式で表されるベクトルQvとの外積であるので、次式で表される。   Since the Z-axis vector Zv is an outer product of the X-axis vector Xv expressed by the equation (5) and the vector Qv expressed by the equation (7), it is expressed by the following equation.

Zv=[Zvx,Zvy,Zvz]
=[Xvy・Qvz−Xvz・Qvy,
Xvz・Qvx−Xvx・Qvz,
Xvx・Qvy−Xvy・Qvx]‥‥(9)
Zv = [Zvx, Zvy, Zvz]
= [Xvy · Qvz−Xvz · Qvy,
Xvz · Qvx-Xvx · Qvz,
Xvx · Qvy-Xvy · Qvx] (9)

次に、Z軸ベクトルZvとX軸ベクトルXvの外積から、Y軸ベクトルYvを算出する。Y軸ベクトルYvは、次式で表される。   Next, a Y-axis vector Yv is calculated from the outer product of the Z-axis vector Zv and the X-axis vector Xv. The Y-axis vector Yv is expressed by the following equation.

Yv=[Yvx,Yvy,Yvz]
=[Zvy・Xvz−Zvz・Xvy,
Zvz・Xvx−Zvx・Xvz,
Zvx・Xvy−Zvy・Xvx]‥‥(10)
Yv = [Yvx, Yvy, Yvz]
= [Zvy · Xvz−Zvz · Xvy,
Zvz · Xvx-Zvx · Xvz,
Zvx · Xvy-Zvy · Xvx] (10)

上記(4)、(5)、(9)及び(10)式から、非特許文献1に記載の手法によって、ベース座標系Cbから見たユーザ座標系Cuの位置姿勢を表す同次変換行列Abuを次式で表すことができる。   From the above equations (4), (5), (9) and (10), the homogeneous transformation matrix Abu representing the position and orientation of the user coordinate system Cu viewed from the base coordinate system Cb by the method described in Non-Patent Document 1. Can be expressed by the following equation.

Figure 2007115011
Figure 2007115011

このようにして求めた同次変換行列Abuを、ロボット制御装置5に記憶する。   The homogeneous transformation matrix Abu obtained in this way is stored in the robot controller 5.

図1に戻り、ステップS2において、作業者は基準位置Wkに設置されたワークWに対する教示が必要か否かを判断する。これまでのステップにおいて、基準位置Wkに設置されたワークWに対する教示は行っていない。したがって、ステップS3に進み、教示を行うものとして説明を続ける。   Returning to FIG. 1, in step S <b> 2, the operator determines whether teaching is required for the workpiece W placed at the reference position Wk. In the steps so far, teaching for the workpiece W installed at the reference position Wk is not performed. Therefore, the process proceeds to step S3, and the description is continued assuming that teaching is performed.

ステップS3において、作業者は、ステップS1で算出されたユーザ座標系Cuの軸方向に従って作業経路上の教示点R1(図2参照)までマニピュレータ1のTCPを移動する。そしてステップS4において、作業者は教示点R1の記憶操作を行う。このとき、ロボット制御装置5は、ユーザ座標系Cuを基準としたTCPの位置姿勢座標値(以下、ユーザ座標値データという)を算出して、記憶する。以下、教示点R1におけるユーザ座標値データUr1の算出方法について説明する。   In step S3, the worker moves the TCP of the manipulator 1 to the teaching point R1 (see FIG. 2) on the work path according to the axial direction of the user coordinate system Cu calculated in step S1. In step S4, the operator performs a storing operation for the teaching point R1. At this time, the robot control device 5 calculates and stores a TCP position and orientation coordinate value (hereinafter referred to as user coordinate value data) based on the user coordinate system Cu. Hereinafter, a method for calculating the user coordinate value data Ur1 at the teaching point R1 will be described.

まず、教示点R1のベース座標値データBr1を算出する。ベース座標値データBr1は(1)乃至(3)式を求めた手法と同様の手法で算出可能であるので、次式で表される。   First, base coordinate value data Br1 of the teaching point R1 is calculated. Since the base coordinate value data Br1 can be calculated by a method similar to the method for obtaining the equations (1) to (3), it is expressed by the following equation.

Br1=[R1x,R1y,R1z,R1α,R1β,R1γ]‥‥(12)     Br1 = [R1x, R1y, R1z, R1α, R1β, R1γ] (12)

上記(12)式から、ベース座標系から見た教示点R1におけるTCPへの同次変換行列Abrを、非特許文献1に記載の手法によって次式のように算出することができる。なお、下記式において○は回転行列を表す数値を示す。   From the above equation (12), the homogeneous transformation matrix Abr to TCP at the teaching point R1 viewed from the base coordinate system can be calculated by the method described in Non-Patent Document 1 as the following equation. In the following formula, ◯ represents a numerical value representing a rotation matrix.

Figure 2007115011
Figure 2007115011

そして、(11)式及び(13)式から、ユーザ座標系から見た教示点R1の位置姿勢を表す同次変換行列Aurを次式によって算出することができる。なお、下記式において○は回転行列を表す数値を示す。   From the equations (11) and (13), a homogeneous transformation matrix Aur representing the position and orientation of the teaching point R1 viewed from the user coordinate system can be calculated by the following equation. In the following formula, ◯ represents a numerical value representing a rotation matrix.

Figure 2007115011
Figure 2007115011

さらに、上記(14)式から、教示点R1のユーザ座標値データUr1を次のように算出することができる。   Furthermore, the user coordinate value data Ur1 of the teaching point R1 can be calculated from the above equation (14) as follows.

Ur1=[Ur1x,Ur1y,Ur1z,Ur1α,Ur1β,Ur1γ]
=[Sx,Sy,Sz,Ur1α,Ur1β,Ur1γ] ‥‥(15)
Ur1 = [Ur1x, Ur1y, Ur1z, Ur1α, Ur1β, Ur1γ]
= [Sx, Sy, Sz, Ur1α, Ur1β, Ur1γ] (15)

上記(15)式において、Ur1x、Ur1y及びUr1zは、それぞれユーザ座標系上でのX軸、Y軸及びZ軸の位置座標値を表しており、(14)式で求められたSx、Sy及びSzと同じ値となる。Ur1α、Ur1β及びUr1γは、(14)式における回転行列部分によって求められるユーザ座標系上でのα、β及びγの姿勢座標値(回転角度)である。   In the above equation (15), Ur1x, Ur1y, and Ur1z represent the position coordinate values of the X axis, the Y axis, and the Z axis on the user coordinate system, respectively, and Sx, Sy, and The same value as Sz. Ur1α, Ur1β, and Ur1γ are posture coordinate values (rotation angles) of α, β, and γ on the user coordinate system that are obtained from the rotation matrix portion in equation (14).

このようにして求められた教示点R1のユーザ座標値データUr1をロボット制御装置5に記憶する。教示点はR1のみではなく、数十から数百存在する場合がほとんどであるので、作業者は、図1のステップS3及びS4を繰り返すことによって、全ての教示点を記憶する。   The user coordinate value data Ur1 of the teaching point R1 obtained in this way is stored in the robot control device 5. Since there are almost tens to hundreds of teaching points, not just R1, the operator stores all the teaching points by repeating steps S3 and S4 in FIG.

図1のステップS5において、作業経路の教示が全て終了した場合は、ステップS6に移る。ステップS6において、ワークWの設置位置が変更されているか否かを判断する。ワークWの設置位置が変更されていない場合は、ステップS7に移り、再生動作を開始する。ここでは、ワークWの設置位置が変更されたと想定してステップS1に戻り、ユーザ座標系を再定義を行うものとして説明を続ける。ステップS7以降の説明については後述する。   In step S5 of FIG. 1, when all the work route teachings are completed, the process proceeds to step S6. In step S6, it is determined whether or not the installation position of the workpiece W has been changed. If the installation position of the workpiece W has not been changed, the process proceeds to step S7, and the reproduction operation is started. Here, assuming that the installation position of the workpiece W has been changed, the description returns to step S1 and the description is continued assuming that the user coordinate system is redefined. The description after step S7 will be described later.

ワークWの設置位置が変更された場合は、ステップS1に戻り、ユーザ座標系を再定義する。図3は、ワークが基準位置とは異なる位置に設置されたときに、ワーク上の特徴点を再指定して新たなユーザ座標系が再定義されていることを説明するための図である。   When the installation position of the workpiece W is changed, the process returns to step S1 to redefine the user coordinate system. FIG. 3 is a diagram for explaining that a new user coordinate system is redefined by re-designating feature points on the workpiece when the workpiece is placed at a position different from the reference position.

図3において、ワークWは基準位置Wkとは異なる位置Wnに設置されている。教示点R1nは、ワークWが基準位置Wkに設置されているときに教示された教示点R1に相当する位置である。マニピュレータ1及びベース座標系Cbは、図2と同様であるので説明を省略する。ユーザ座標系Cunは作業者が再定義した座標系であり、図示しているように原点Oun及び軸方向(Xun,Yun,Zun)が定義されている。   In FIG. 3, the workpiece W is installed at a position Wn different from the reference position Wk. The teaching point R1n is a position corresponding to the teaching point R1 taught when the workpiece W is set at the reference position Wk. The manipulator 1 and the base coordinate system Cb are the same as those in FIG. The user coordinate system Cun is a coordinate system redefined by the operator, and an origin Oun and an axial direction (Xun, Yun, Zun) are defined as illustrated.

作業者は、基準位置とは異なる位置Wnに設置されたワークWにおいて、特徴点P1n、P2n及びP3nを再指定する。ロボット制御装置5は、再指定された特徴点P1n、P2n及びP3nの位置に基づき、ベース座標系Cbから見たユーザ座標系Cunの位置を表すユーザ座標系Cunの同次変換行列Abunを再算出し、記憶しなおす。算出方法は上述した(11)式を算出した方法と同じである。したがって、ベース座標系Cbを基準とした再指定後のユーザ座標系Cunの同次変換行列Abunは、次式で表すことができる。   The operator re-specifies the feature points P1n, P2n, and P3n on the workpiece W installed at a position Wn different from the reference position. The robot controller 5 recalculates the homogeneous transformation matrix Abun of the user coordinate system Cun representing the position of the user coordinate system Cun viewed from the base coordinate system Cb, based on the positions of the redesignated feature points P1n, P2n, and P3n. And remember again. The calculation method is the same as the method for calculating equation (11) described above. Therefore, the homogeneous transformation matrix Abun of the user coordinate system Cun after re-designation with the base coordinate system Cb as a reference can be expressed by the following equation.

Figure 2007115011
Figure 2007115011

このようにして求めた同次変換行列Abunを、ベース座標系Cbから見たユーザ座標系Cunの位置として、ロボット制御装置5に記憶する。   The homogeneous transformation matrix Abun obtained in this way is stored in the robot controller 5 as the position of the user coordinate system Cun viewed from the base coordinate system Cb.

次にステップS2において、ワークWに対する教示は既に終了している。すなわち、異なる位置Wnに設置されたワークWに対して作業経路を教示しなおす必要はないので、ステップS7に移る。   Next, in step S2, teaching for the workpiece W has already been completed. That is, there is no need to re-teach the work path for the workpiece W installed at a different position Wn, and the process proceeds to step S7.

ステップS7において、再生動作の開始操作を行う。具体的には、ロボット制御装置5に装備された起動ボタン、生産ラインを制御する上位コントローラからの起動信号等を入力することによって、教示データが再生される。   In step S7, a reproduction operation start operation is performed. Specifically, the teaching data is reproduced by inputting a start button provided in the robot controller 5, a start signal from a host controller that controls the production line, and the like.

ステップS8において、教示データをロボット制御装置5から読み出す。教示データには、マニピュレータ1のTCPの再生位置がユーザ座標値データで記憶されている。例えば、教示点R1nの再生位置として、(15)式で表されるユーザ座標値データUr1が記憶されている。このユーザ座標値データUr1を元に、ユーザ座標系から見た教示点R1の位置姿勢を表す同次変換行列Aurnを算出する。すなわち、同次変換行列Aurnは、ワークWが異なる位置Wnに設置された後の再生動作時は未知の値であるため、ユーザ座標値データUr1に基づいて算出するという処理を行う。同次変換行列Aurnは、(14)式の同次変換行列Aurに基づいて(15)式のユーザ座標値データUr1を求めた演算と逆の演算を行えば容易に導き出すことができる。そして、ここで算出される教示点R1nの同次変換行列Aurnは、(14)式と全く同様の式となる。このことは、TCPの位置姿勢座標値をユーザ座標系を基準としたユーザ座標値データで記憶していれば、ワークWの設置位置に変化があったとしても同じ同次変換行列Aurが使用できるということである。   In step S8, the teaching data is read from the robot controller 5. In the teaching data, the TCP reproduction position of the manipulator 1 is stored as user coordinate value data. For example, the user coordinate value data Ur1 represented by the equation (15) is stored as the reproduction position of the teaching point R1n. Based on this user coordinate value data Ur1, a homogeneous transformation matrix Aurn representing the position and orientation of the teaching point R1 viewed from the user coordinate system is calculated. That is, the homogeneous transformation matrix Aurn is an unknown value at the time of the reproduction operation after the work W is placed at a different position Wn, and thus a process of calculating based on the user coordinate value data Ur1 is performed. The homogenous transformation matrix Aurn can be easily derived by performing an operation opposite to the operation for obtaining the user coordinate value data Ur1 of the equation (15) based on the homogeneous transformation matrix Aur of the equation (14). The homogeneous transformation matrix Aurn of the teaching point R1n calculated here is the same as the expression (14). This means that if the position and orientation coordinate values of TCP are stored as user coordinate value data based on the user coordinate system, the same homogeneous transformation matrix Aur can be used even if the installation position of the workpiece W changes. That's what it means.

次に、ステップS9において、教示点R1nのベース座標値データBr1nを算出する。そのために、ベース座標系から見た教示点R1nのTCPの位置を表す同次変換行列Abrnを算出する。ベース座標系から見たユーザ座標系の位置を表す同次変換行列Abunは(16)式にて既に算出されている。また、教示点R1nにおけるユーザ座標系から見たTCPの位置を表す同次変換行列Aurnも(14)式と同様の式となるので既に算出されている。したがって、ベース座標系から見た教示点R1nのTCPの位置を表す同次変換行列Abrnは、(14)式及び(16)式に基づき、下記式によって算出することができる。なお、下記式において○は回転行列を表す数値を示す。   Next, in step S9, base coordinate value data Br1n of the teaching point R1n is calculated. For this purpose, a homogeneous transformation matrix Abrn representing the TCP position of the teaching point R1n viewed from the base coordinate system is calculated. The homogeneous transformation matrix Abun representing the position of the user coordinate system as viewed from the base coordinate system has already been calculated by the equation (16). Further, the homogeneous transformation matrix Aurn representing the position of the TCP viewed from the user coordinate system at the teaching point R1n is the same as the equation (14), and thus has already been calculated. Therefore, the homogeneous transformation matrix Abrn representing the TCP position of the teaching point R1n viewed from the base coordinate system can be calculated by the following formula based on the formulas (14) and (16). In the following formula, ◯ represents a numerical value representing a rotation matrix.

Figure 2007115011
Figure 2007115011

さらに、上記(17)式から教示点R1nのベース座標値データBr1nを算出する。   Further, base coordinate value data Br1n of the teaching point R1n is calculated from the above equation (17).

Br1n=[Pbx,Pby,Pbz,Pbα,Pbβ,Pbγ]‥‥(18)   Br1n = [Pbx, Pby, Pbz, Pbα, Pbβ, Pbγ] (18)

Pbx、Pby及びPbzは、それぞれ、ベース座標系上でのX軸、Y軸及びZ軸の位置座標値を表している。Pbα、Pbβ及びPbγは、(17)式における回転行列部分によって求められるベース座標系上でのα、β及びγの姿勢座標値(回転角度)である。   Pbx, Pby, and Pbz respectively represent the position coordinate values of the X axis, the Y axis, and the Z axis on the base coordinate system. Pbα, Pbβ, and Pbγ are posture coordinate values (rotation angles) of α, β, and γ on the base coordinate system that are obtained by the rotation matrix portion in Expression (17).

そして、ステップS10において、(18)式で求められたベース座標値データBr1nに基づいて、マニピュレータの各関節角度を算出する逆変換演算を行う。そして、ステップS11において、マニピュレータの各関節を回転駆動することによって、算出された各関節角度の位置、すなわち教示点R1nまで移動させる。最後にステップS12において全ての教示点の再生動作が終了していない場合は、ステップS8に戻り、次の教示点の再生動作を行う。全ての教示点の再生動作が終了している場合は、フローを終了する。   In step S10, based on the base coordinate value data Br1n obtained by the equation (18), an inverse transformation operation for calculating each joint angle of the manipulator is performed. In step S11, each joint of the manipulator is rotationally driven to move to the calculated position of each joint angle, that is, to the teaching point R1n. Finally, if the reproduction operation for all teaching points is not completed in step S12, the process returns to step S8 to perform the reproduction operation for the next teaching point. If all the teaching points have been reproduced, the flow ends.

以上説明したように、マニピュレータとワークとの相対的な位置関係にズレが生じたとしても、既教示データを教示修正することなく、そのまま再利用することができる。特に教示点の数が多く、かつワークの正確な設置が困難な大型ワークの加工作業を行う場合において、教示点が数百にも及ぶような大きな教示データであっても、ワーク上の複数の特徴点を再指定してユーザ座標系を再定義しさえすれば、教示点を1点も修正することなく、そのまま再利用できる。

[実施の形態2]
As described above, even if the relative positional relationship between the manipulator and the work is deviated, the existing teaching data can be reused as it is without correcting the teaching. Especially when processing large workpieces where the number of teaching points is large and it is difficult to accurately place the workpiece, even if there is a large amount of teaching data with several hundred teaching points, As long as the feature point is redesignated and the user coordinate system is redefined, the teaching point can be reused without modification.

[Embodiment 2]

次に、本発明の実施形態2について説明する。実施形態2は、特徴点の位置の再指定をタッチセンサ等の位置測定器によって測定して行うことによって、ユーザ座標系の再定義を作業者が行うのではなく、ロボットが自動的に行うものである。   Next, Embodiment 2 of the present invention will be described. In the second embodiment, by re-designating the position of the feature point by measuring with a position measuring device such as a touch sensor, the robot does not redefine the user coordinate system, but automatically by the robot. It is.

図4は、本発明の実施形態2によって教示データの補正が自動的に行われる流れを説明するためのフローチャート図である。同図において、破線を付与しているステップS1、S3乃至S5、及びS8乃至S12は、図1の同符号を付したステップとほぼ同じであるので説明を省略する。以下、実線で示した実施形態1とは異なるステップS7a及びS7bについてのみ説明する。   FIG. 4 is a flowchart for explaining the flow of automatically correcting teaching data according to the second embodiment of the present invention. In the figure, steps S1, S3 to S5, and S8 to S12 to which broken lines are given are substantially the same as the steps having the same reference numerals in FIG. Hereinafter, only steps S7a and S7b different from those of the first embodiment indicated by the solid line will be described.

ステップS7において再生動作の開始操作が行われると、ステップS7aにおいて、タッチセンサによるタッチ検出動作によって、特徴点3点それぞれについて、ベース座標系における基準位置からのズレ量(ΔXb,ΔYb,ΔZb)を検出する。   When a reproduction operation start operation is performed in step S7, the amount of deviation (ΔXb, ΔYb, ΔZb) from the reference position in the base coordinate system is detected for each of the three feature points by the touch detection operation by the touch sensor in step S7a. To detect.

そして、ステップS7bにおいて、ズレ量を特徴点3点のそれぞれのベース座標値データに加算する。この加算後のベース座標値データに基づいて、(1)式〜(11)式の演算を行い、ベース座標系を基準としたユーザ座標系の同次変換行列Abuを算出し、ロボット制御装置に記憶すれば良い。   In step S7b, the shift amount is added to the base coordinate value data of the three feature points. Based on the base coordinate value data after the addition, the calculations of the equations (1) to (11) are performed to calculate the homogeneous transformation matrix Abu of the user coordinate system with the base coordinate system as a reference, and the robot control device Just remember.

なお、実施形態2では、位置測定器としてタッチセンサを用いて自動的に補正する例を示したが、本発明は、これに限られるものではない。例えば、レーザセンサ等の画像処理装置を用いて測定し自動的に補正する場合も本発明に含まれるものである。   In the second embodiment, an example in which correction is automatically performed using a touch sensor as a position measuring device has been described, but the present invention is not limited to this. For example, the present invention includes a case where measurement is performed using an image processing apparatus such as a laser sensor and correction is automatically performed.

このように、ワーク上の複数の特徴点の再指定を、作業者ではなく、位置計測器によって自動的に測定して行うようにしたので、作業者自身が特徴点の再指定を行う必要がない。すなわち、第1実施形態が有する効果に加えて、さらに作業者の作業工数を低減できる。
In this way, re-designation of a plurality of feature points on a workpiece is performed by automatic measurement by a position measuring device, not by an operator, so it is necessary for the operator himself to re-designate feature points. Absent. That is, in addition to the effects of the first embodiment, it is possible to further reduce the work man-hours of the worker.

本発明の実施形態1によって教示データの補正が行われる流れを説明するためのフローチャート図である。It is a flowchart figure for demonstrating the flow in which correction | amendment of teaching data is performed by Embodiment 1 of this invention. ワークが基準位置に設置されているときにワーク上の特徴点を指定することによってユーザ座標系が定義されていることを説明するための図である。It is a figure for demonstrating that a user coordinate system is defined by designating the feature point on a workpiece | work when the workpiece | work is installed in the reference position. ワークが基準位置とは異なる位置に設置されたときに、ワーク上の特徴点を再指定して新たなユーザ座標系が再定義されていることを説明するための図である。It is a figure for demonstrating that the new user coordinate system is redefined by re-specifying the feature point on a workpiece | work when a workpiece | work is installed in the position different from a reference position. 本発明の実施形態2によって教示データの補正が自動的に行われる流れを説明するためのフローチャート図である。It is a flowchart for demonstrating the flow in which correction | amendment of teaching data is automatically performed by Embodiment 2 of this invention. ティーチングプレイバック方式を採用した産業用ロボットの一般的な構成図である。It is a general block diagram of the industrial robot which employ | adopted the teaching playback system. 教示時におけるマニピュレータの移動方向と座標系の関係について説明するための図である。It is a figure for demonstrating the relationship between the moving direction of the manipulator at the time of teaching, and a coordinate system. 従来、教示データがどのように記憶され、再生動作されるのかを説明するためのフローチャート図である。It is a flowchart for demonstrating how teaching data is conventionally memorize | stored and reproduced | regenerated.

符号の説明Explanation of symbols

1 マニピュレータ
2 アーム
3 ティーチペンダント
4 ボタン群
5 ロボット制御装置
Abr (ベース座標系から見た教示点R1の位置姿勢を表す)同次変換行列
Abrn (ベース座標系から見た教示点R1nの位置姿勢を表す)同次変換行列
Abu (ベース座標系から見たユーザ座標系の位置姿勢を表す)同次変換行列
Abun (ベース座標系から見たユーザ座標系の位置姿勢を表す)同次変換行列
Aur (ユーザ座標系から見た教示点R1の位置姿勢を表す)同次変換行列
Aurn (ユーザ座標系から見た教示点R1nの位置姿勢を表す)同次変換行列
Bp1 ベース座標値データ(特徴点P1)
Bp2 ベース座標値データ(特徴点P2)
Bp3 ベース座標値データ(特徴点P3)
Br1 ベース座標値データ(教示点R1)
Br1n ベース座標値データ(教示点R1n)
Cr ベース座標系
Cu ユーザ座標系
Cun ユーザ座標系(再定義後)
K 作業経路
Ob (ベース座標系の)原点
Ou (ユーザ座標系の)原点
Oun (再定義後のユーザ座標系の)原点
P1 特徴点
P2 特徴点
P3 特徴点
P1n 特徴点
P2n 特徴点
P3n 特徴点
Qv ベクトル
R1 教示点
R1n 教示点
T ツール
Ur1 ユーザ座標値データ
W ワーク
Wk 基準位置
Wn 基準位置と異なる位置
Xb 軸方向(ベース座標系X)
Xu 軸方向(ユーザ座標系X)
Xv X軸ベクトル
Yb 軸方向(ベース座標系Y)
Yu 軸方向(ユーザ座標系Y)
Yv Y軸ベクトル
Zb 軸方向(ベース座標系Z)
Zu 軸方向(ユーザ座標系Z)
Zv Z軸ベクトル


DESCRIPTION OF SYMBOLS 1 Manipulator 2 Arm 3 Teach pendant 4 Button group 5 Robot controller Abr (representing the position and orientation of the teaching point R1 viewed from the base coordinate system) Homogeneous transformation matrix Abrn (the position and orientation of the teaching point R1n viewed from the base coordinate system) Homogeneous transformation matrix Abu (represents the position and orientation of the user coordinate system viewed from the base coordinate system) Homogeneous transformation matrix Abun (represents the position and orientation of the user coordinate system viewed from the base coordinate system) Homogeneous transformation matrix Aur ( Homogenous transformation matrix Aurn (representing the position and orientation of the teaching point R1 viewed from the user coordinate system) Homogeneous transformation matrix Bp1 representing the position and orientation of the teaching point R1n viewed from the user coordinate system Base coordinate value data (feature point P1)
Bp2 base coordinate value data (feature point P2)
Bp3 base coordinate value data (feature point P3)
Br1 Base coordinate value data (teaching point R1)
Br1n base coordinate value data (teaching point R1n)
Cr Base coordinate system Cu User coordinate system Cun User coordinate system (after redefinition)
K work path Ob origin Ou (in the base coordinate system) origin Ou (in the user coordinate system) origin Un (in the user coordinate system after redefinition) origin P1 feature point P2 feature point P3 feature point P1n feature point P2n feature point P3n feature point Qv Vector R1 Teaching point R1n Teaching point T Tool Ur1 User coordinate value data W Work Wk Reference position Wn Position different from the reference position Xb Axial direction (base coordinate system X)
Xu axis direction (user coordinate system X)
Xv X-axis vector Yb Axis direction (base coordinate system Y)
Yu axis direction (user coordinate system Y)
Yv Y-axis vector Zb Axis direction (base coordinate system Z)
Zu axis direction (user coordinate system Z)
Zv Z-axis vector


Claims (2)

ワークが基準位置に設置されているときに、ワーク上の複数の特徴点を指定することによって直交座標系の原点及び軸方向が所望値であるユーザ座標系を定義し、教示時にこのユーザ座標系の軸方向に従ってロボットを移動させて作業経路を教示してこの作業経路上の教示点の位置姿勢データをロボット個体に固有の直交座標系であるベース座標系を基準としたベース座標値データで記憶し、再生時にこのベース座標値データに基づいてロボットの各関節角度データを算出して動作制御を行う産業用ロボットの制御方法において、
教示時に前記教示点の位置姿勢データを前記ユーザ座標系を基準としたユーザ座標値データで記憶し、
再生時にこのユーザ座標値データ及び前記ユーザ座標系に基づいて前記ベース座標値データを算出し、このベース座標値データに基づいてロボットの各関節角度データを算出し、
ワークが前記基準位置とは異なる位置に設置されたときは、前記複数の特徴点の位置を再指定して前記ユーザ座標系を再定義し、
再生時に前記ユーザ座標値データ及び前記再定義されたユーザ座標系に基づいて前記ベース座標値データを再算出し、この再算出されたベース座標値データに基づいてロボットの各関節角度データを算出することを特徴とする産業用ロボットの制御方法。
When the workpiece is set at the reference position, a user coordinate system is defined in which the origin and the axial direction of the Cartesian coordinate system are the desired values by specifying multiple feature points on the workpiece, and this user coordinate system is used during teaching The robot is moved according to the axis direction of the robot, the work path is taught, and the position and orientation data of the teaching point on this work path is stored as base coordinate value data based on the base coordinate system that is an orthogonal coordinate system unique to the robot individual. In a control method for an industrial robot that performs motion control by calculating each joint angle data of the robot based on this base coordinate value data during reproduction,
The teaching point position and orientation data is stored as user coordinate value data based on the user coordinate system during teaching,
The base coordinate value data is calculated based on the user coordinate value data and the user coordinate system during reproduction, and each joint angle data of the robot is calculated based on the base coordinate value data.
When the workpiece is installed at a position different from the reference position, the user coordinate system is redefined by respecifying the positions of the plurality of feature points,
At the time of reproduction, the base coordinate value data is recalculated based on the user coordinate value data and the redefined user coordinate system, and each joint angle data of the robot is calculated based on the recalculated base coordinate value data. A method for controlling an industrial robot.
請求項1記載の特徴点の位置の再指定を、位置計測器によって測定して行うことを特徴とする産業用ロボットの制御方法。
The industrial robot control method according to claim 1, wherein the re-designation of the position of the feature point is performed by measuring with a position measuring device.
JP2005305593A 2005-10-20 2005-10-20 Industrial robot control method Active JP4615418B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005305593A JP4615418B2 (en) 2005-10-20 2005-10-20 Industrial robot control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005305593A JP4615418B2 (en) 2005-10-20 2005-10-20 Industrial robot control method

Publications (2)

Publication Number Publication Date
JP2007115011A true JP2007115011A (en) 2007-05-10
JP4615418B2 JP4615418B2 (en) 2011-01-19

Family

ID=38097126

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005305593A Active JP4615418B2 (en) 2005-10-20 2005-10-20 Industrial robot control method

Country Status (1)

Country Link
JP (1) JP4615418B2 (en)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2009025271A1 (en) * 2007-08-22 2010-11-25 株式会社安川電機 Robot control apparatus and control method
JP2011104720A (en) * 2009-11-18 2011-06-02 Honda Motor Co Ltd Teaching line correction device, teaching line correction method, and program for the same
JP2011230238A (en) * 2010-04-28 2011-11-17 Yaskawa Electric Corp Robot control device, and robot control method
JP2011230243A (en) * 2010-04-28 2011-11-17 Yaskawa Electric Corp Device and method for teaching-procedure calibration for robot
JP2012106321A (en) * 2010-11-19 2012-06-07 Daihen Corp Method and device for controlling robot
CN104942806A (en) * 2014-03-27 2015-09-30 发那科株式会社 Process application robot system having function for managing process condition
CN108453785A (en) * 2017-02-20 2018-08-28 株式会社安川电机 Robot system, robot controller and robot control method
CN110514857A (en) * 2019-07-30 2019-11-29 安徽皖仪科技股份有限公司 A kind of sample bottle localization method of autosampler
CN114347008A (en) * 2022-01-18 2022-04-15 广东原点智能技术有限公司 Industrial robot-based method and device for grabbing workpieces out of order and intelligent terminal
WO2023144892A1 (en) * 2022-01-25 2023-08-03 ファナック株式会社 Control device

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6149205A (en) * 1984-08-16 1986-03-11 Seiko Instr & Electronics Ltd Robot control system
JPH03276307A (en) * 1990-03-27 1991-12-06 Toshiba Corp Teaching play-back system robot controller

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6149205A (en) * 1984-08-16 1986-03-11 Seiko Instr & Electronics Ltd Robot control system
JPH03276307A (en) * 1990-03-27 1991-12-06 Toshiba Corp Teaching play-back system robot controller

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2009025271A1 (en) * 2007-08-22 2010-11-25 株式会社安川電機 Robot control apparatus and control method
JP5549223B2 (en) * 2007-08-22 2014-07-16 株式会社安川電機 Robot control device, control method, and robot system
JP2011104720A (en) * 2009-11-18 2011-06-02 Honda Motor Co Ltd Teaching line correction device, teaching line correction method, and program for the same
US8761936B2 (en) 2009-11-18 2014-06-24 Honda Motor Co., Ltd. Teaching line correcting apparatus, teaching line correcting method, and program thereof
JP2011230238A (en) * 2010-04-28 2011-11-17 Yaskawa Electric Corp Robot control device, and robot control method
JP2011230243A (en) * 2010-04-28 2011-11-17 Yaskawa Electric Corp Device and method for teaching-procedure calibration for robot
JP2012106321A (en) * 2010-11-19 2012-06-07 Daihen Corp Method and device for controlling robot
JP2015188954A (en) * 2014-03-27 2015-11-02 ファナック株式会社 Processing application robot system having processing condition management function
CN104942806A (en) * 2014-03-27 2015-09-30 发那科株式会社 Process application robot system having function for managing process condition
CN104942806B (en) * 2014-03-27 2017-05-17 发那科株式会社 Process application robot system having function for managing process condition
US9701017B2 (en) 2014-03-27 2017-07-11 Fanuc Corporation Process application robot system having function for managing process condition
CN108453785A (en) * 2017-02-20 2018-08-28 株式会社安川电机 Robot system, robot controller and robot control method
JP2018134695A (en) * 2017-02-20 2018-08-30 株式会社安川電機 Robot system, robot control device, and robot control method
US10889003B2 (en) 2017-02-20 2021-01-12 Kabushiki Kaisha Yaskawa Denki Robot system, robot controller, and method for controlling robot
CN108453785B (en) * 2017-02-20 2022-09-27 株式会社安川电机 Robot system, robot control device, and robot control method
CN110514857A (en) * 2019-07-30 2019-11-29 安徽皖仪科技股份有限公司 A kind of sample bottle localization method of autosampler
CN110514857B (en) * 2019-07-30 2023-01-24 安徽皖仪科技股份有限公司 Sample bottle positioning method of automatic sample injector
CN114347008A (en) * 2022-01-18 2022-04-15 广东原点智能技术有限公司 Industrial robot-based method and device for grabbing workpieces out of order and intelligent terminal
WO2023144892A1 (en) * 2022-01-25 2023-08-03 ファナック株式会社 Control device

Also Published As

Publication number Publication date
JP4615418B2 (en) 2011-01-19

Similar Documents

Publication Publication Date Title
JP4615418B2 (en) Industrial robot control method
CN109834695B (en) Teaching device and teaching method for teaching operation of robot
KR100621100B1 (en) method and system for teaching welding robot
JP4174517B2 (en) Teaching position correcting device and teaching position correcting method
JP6538751B2 (en) Programming device and robot control method
US11724392B2 (en) Program generation device configured to generate operation program including operation symbol of robot apparatus
JP2006099474A (en) Method for controlling robot locus
JP2006048244A (en) Working program generating device
JP2005108144A (en) Device for confirming correction data of robot
JP2019107704A (en) Robot system and robot control method
JP5805457B2 (en) Welding robot controller
KR100754008B1 (en) Robot controlling device and robot controlling method
JP2019171497A (en) Robot system for correcting teaching of robot utilizing image processing
CN110154043B (en) Robot system for learning control based on machining result and control method thereof
CN116669914A (en) Teaching device for teaching points by direct teaching operation, robot control device, and computer program for teaching device
JP4189445B2 (en) Robot control method and control apparatus
JP2019150930A (en) Welding robot operation teaching system, welding robot operation teaching method and program
JP2008080343A (en) Arc sensor
JP2010082802A (en) Automatic machine system
JPH0746288B2 (en) Control method and device for robot with hand vision
JP4808920B2 (en) Automatic machine control device
JP2019042842A (en) Learning control device and learning control method of driving machine
JP2010082729A (en) Working program correction method and working program correction device in robot
JP3864237B2 (en) Robot control method and control apparatus
JPH10264066A (en) Robot controller

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080919

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100610

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100629

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100823

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20100824

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 4615418

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

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250