JP5729226B2 - Robot position and orientation interpolation method and robot control apparatus - Google Patents

Robot position and orientation interpolation method and robot control apparatus Download PDF

Info

Publication number
JP5729226B2
JP5729226B2 JP2011198222A JP2011198222A JP5729226B2 JP 5729226 B2 JP5729226 B2 JP 5729226B2 JP 2011198222 A JP2011198222 A JP 2011198222A JP 2011198222 A JP2011198222 A JP 2011198222A JP 5729226 B2 JP5729226 B2 JP 5729226B2
Authority
JP
Japan
Prior art keywords
posture
point
vector
interpolation
teaching
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.)
Active
Application number
JP2011198222A
Other languages
Japanese (ja)
Other versions
JP2013059815A (en
Inventor
剛 植山
剛 植山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Wave Inc
Original Assignee
Denso Wave Inc
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 Denso Wave Inc filed Critical Denso Wave Inc
Priority to JP2011198222A priority Critical patent/JP5729226B2/en
Publication of JP2013059815A publication Critical patent/JP2013059815A/en
Application granted granted Critical
Publication of JP5729226B2 publication Critical patent/JP5729226B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Numerical Control (AREA)
  • Manipulator (AREA)

Description

本発明は、垂直多関節型のロボットの手先から対象物までの距離を変化させるように、前記手先を移動させる位置及び前記手先の姿勢を教示した後、前記位置及び前記姿勢を補間する方法及びロボットの制御装置に関する。   The present invention provides a method for interpolating the position and the posture after teaching the position to move the hand and the posture of the hand so as to change the distance from the hand to the target of a vertical articulated robot. The present invention relates to a robot control device.

ロボットをティーチングする場合には、一般に、ロボットの手先を移動させる軌跡に沿った位置を教示すると共に、その教示点においてロボットの手先が取るべき姿勢も教示するようになっている。例えば、特許文献1には、ティーチング及びその後に行われる補間に関連する技術が開示されている。   When teaching a robot, generally, a position along a trajectory for moving the hand of the robot is taught, and a posture to be taken by the hand of the robot is taught at the teaching point. For example, Patent Document 1 discloses a technique related to teaching and subsequent interpolation.

特開2005−275484号公報JP 2005-275484 A

ところで、 ロボットの手先にカメラを取り付け、そのカメラを移動させて固定されているワークの画像を撮像する、という作業を行う場合、ティーチングを行う際のロボットの姿勢は、当然にカメラの視線が固定されているワークを捉える方向となるように決定されることが望まれる。   By the way, if you attach a camera to the robot's hand and move the camera to capture an image of a fixed workpiece, the robot's posture when teaching is naturally fixed. It is desirable to be determined so that it is in the direction of capturing the workpiece being processed.

カメラを移動させると共に、カメラがワークを捉える焦点距離を変化させながら撮像を行う場合、ロボットの手先の位置をティーチングした後は、移動軌跡が滑らかに繋がるようにティーチングした位置の間を例えばスプライン曲線等の自由曲線を用いて補間する。各教示点については、カメラの視線はワークの方向を向くようにティーチングされているが、補間した位置においても、カメラの視線はワークの方向を向くことが望ましい。しかしながら、従来、手先の姿勢について一定の条件を満たすように補間する技術は存在しなかった。   When taking images while moving the camera and changing the focal length at which the camera captures the workpiece, after teaching the position of the robot's hand, for example, a spline curve between the teaching positions so that the movement locus is smoothly connected Is interpolated using a free curve. For each teaching point, teaching is performed so that the line of sight of the camera faces the direction of the work, but it is desirable that the line of sight of the camera faces the direction of the work even at the interpolated position. However, conventionally, there has been no technique for performing interpolation so as to satisfy a certain condition for the hand posture.

本発明は上記事情に鑑みてなされたものであり、その目的は、ロボットの手先の姿勢が一定の条件を満たすように補間できるロボットの位置姿勢補間方法及びロボットの制御装置を提供することにある。   The present invention has been made in view of the above circumstances, and an object of the present invention is to provide a robot position / orientation interpolation method and a robot control apparatus capable of performing interpolation so that the attitude of the hand of the robot satisfies a certain condition. .

請求項1記載の位置姿勢補間方法によれば、各教示点を通過する移動軌跡が自由曲線となるように教示点間の位置を移動順番を付けて補間して補間点を生成し(第1ステップ)、各教示点毎に、教示点と同じ座標系における目標点の座標を求め(第2ステップ)、各教示点に対応する各目標点の座標間を、第1ステップと同じアルゴリズムの自由曲線により補間して第1ステップと同じ移動順番を付した補間点を生成する(第3ステップ)。尚、第1〜第3ステップについては、実行順序を適宜入れ替えても問題は無い。例えば、先に各教示点に対応する各目標点の座標間を補間した場合は、その後、教示点間を補間した点に同じ移動順番を付せば良い。 According to the position and orientation interpolation method of claim 1, the interpolation point is generated by interpolating the position between the teaching points with the movement order so that the moving locus passing through each teaching point becomes a free curve (first). step), for each teaching point, determine the coordinates of the put that goal point in the same coordinate system as the teaching point (second step), between coordinates of each target point corresponding to the respective taught points, same as in the first step An interpolation point with the same movement order as that in the first step is generated by interpolation using a free curve of the algorithm (third step). For the first to third steps, there is no problem even if the execution order is appropriately changed. For example, when the coordinates of the target points corresponding to the teaching points are first interpolated, the same movement order may be assigned to the points interpolated between the teaching points.

ここで、教示点における手先の姿勢角を3方向に分解した正規化姿勢ベクトルについて、手先から対象物の目標点に向かう方向を第1姿勢とし、その他を第2,第3姿勢とする。第1正規化姿勢ベクトル(第1姿勢ベクトル)はアプローチベクトルに対応し、第2,第3正規化姿勢ベクトル(第2,第3姿勢ベクトル)は、ノーマル,オリエントベクトルの何れかに対応する。
そして、第1ステップで生成した補間点を始点とし、第3ステップにおいて生成した補間点を終点とする第1姿勢ベクトルを、第1ステップで生成した全ての補間点に対して求める(第4ステップ)。すなわち、第4ステップでは、第1姿勢ベクトルについてはその長さ(ノルム)を正規化された一定の長さ(単位長)にせず、対象物との距離に応じて変化させることになる。
Here, regarding the normalized posture vector obtained by decomposing the posture angle of the hand at the teaching point in three directions, the direction from the hand toward the target point of the object is defined as the first posture, and the other is defined as the second and third postures. The first normalized posture vector (first posture vector) corresponds to an approach vector, and the second and third normalized posture vectors (second and third posture vectors) correspond to either a normal or an orientation vector .
Then, a first posture vector starting from the interpolation point generated in the first step and ending in the interpolation point generated in the third step is obtained for all the interpolation points generated in the first step (fourth step). ). That is, in the fourth step, the length (norm) of the first posture vector is not changed to a normalized constant length (unit length) but is changed according to the distance from the object.

それから、2つの教示点間の各補間点における第2姿勢ベクトルの回転角を補間すると(第5ステップ)、各補間点に立つ前記第1姿勢ベクトル及び前記第2姿勢ベクトルとの外積より第3姿勢ベクトルを求め(第6ステップ)、第1ステップで生成した補間点と、第4〜第6ステップで得られた各姿勢ベクトルの座標とから、各補間点における手先の姿勢を決定する(第7ステップ)。尚、手先の姿勢を決定することが目的であるから、第3姿勢ベクトルを求めるに際してその長さが正規化されているか否かは問題とならない。
すなわち、第4ステップでは、第1姿勢ベクトルの長さを対象物の距離に応じて変化させるので、第2,第3姿勢ベクトルも併せて決定される手先の姿勢は、第1姿勢ベクトルが常に対象物の方を向くように補間処理される。したがって、手先の位置を補間する際に、各補間点における手先の姿勢が、少なくとも対象物の方向を向くように補間することができる。
Then, when interpolating the rotation angle of the second figure Zeibe vector at each interpolation point between two taught points (fifth step), the outer product between the first position vector and the second posture vector stand each interpolation point The third posture vector is obtained (sixth step), and the hand posture at each interpolation point is determined from the interpolation point generated in the first step and the coordinates of each posture vector obtained in the fourth to sixth steps. (Seventh step). Since the purpose is to determine the posture of the hand, it does not matter whether the length is normalized when the third posture vector is obtained.
That is, in the fourth step, since the length of the first posture vector is changed according to the distance of the target object, the hand posture that is determined together with the second and third posture vectors is always the first posture vector. Interpolation processing is performed so as to face the object. Therefore, when the hand position is interpolated, the hand position at each interpolation point can be interpolated at least in the direction of the object.

請求項2記載の位置姿勢補間方法によれば、第1〜第4ステップを、請求項1と同様に実行する。それから、第2,第3姿勢ベクトルのそれぞれについて、隣り合う2つの教示点i,(i+1)にそれぞれ立つ2つのベクトルがなす角θiを求め(第5ステップ)、第2,第3姿勢ベクトルのそれぞれについて、2つの教示点i,(i+1)の間で補間された補間点jにつき、教示点i,補間点jにそれぞれ立つ2つのベクトルがなす角θjを求める(第6ステップ)。
次に、第2,第3姿勢ベクトルの何れか一方について、2つの教示点i,(i+1)にそれぞれ立つ2つのベクトルの外積Piを求め、求めた外積Piを正規化して正規化ベクトルnPiを求め(第7ステップ)、正規化ベクトルnPiを回転軸とし、当該正規化ベクトルnPiについて、角度θjを回転角とする正規化クオータニオンQjを求める(第8ステップ)。
According to the position and orientation interpolation method of the second aspect, the first to fourth steps are executed in the same manner as the first aspect. Then, for each of the second and third posture vectors, an angle θi formed by two vectors standing at two adjacent teaching points i and (i + 1) is obtained (fifth step), and the second and third posture vectors are calculated. For each interpolation point j interpolated between two teaching points i and (i + 1), an angle θj formed by two vectors respectively standing at the teaching point i and the interpolation point j is obtained (sixth step).
Next, for either one of the second and third posture vectors, the cross product Pi of the two vectors respectively standing at the two teaching points i and (i + 1) is obtained, and the obtained cross product Pi is normalized to obtain the normalized vector nPi. Obtained (seventh step), a normalized quaternion Qj having the normalized vector nPi as the rotation axis and the angle θj as the rotation angle is obtained for the normalized vector nPi (eighth step).

それから、正規化ベクトルnPiとして選択した姿勢ベクトルを、正規化クオータニオンQjにより回転させた姿勢ベクトルRbjを求め(第9ステップ)、補間点jに立つ第1姿勢ベクトルRaj,及び回転させた姿勢ベクトルRbjの外積を求め、補間点jに立つ、正規化ベクトルとして選択しなかった姿勢ベクトルRcjを求める(第10ステップ)。そして、姿勢ベクトルRajとRcjの外積より姿勢ベクトルRbjを求め直し(第11ステップ)、これらの3つの姿勢ベクトルRaj,Rbj,Rcjより、補間点jにおける手先の姿勢角を求める(第12ステップ)。   Then, a posture vector Rbj obtained by rotating the posture vector selected as the normalized vector nPi by the normalized quarterion Qj is obtained (9th step), and the first posture vector Raj standing at the interpolation point j and the rotated posture vector Rbj The posture vector Rcj that is not selected as a normalized vector and stands at the interpolation point j is obtained (tenth step). Then, the posture vector Rbj is obtained again from the outer product of the posture vectors Raj and Rcj (11th step), and the posture angle of the hand at the interpolation point j is obtained from these three posture vectors Raj, Rbj, Rcj (12th step). .

すなわち、請求項1の方法による場合、補間点を基準として姿勢を補間する結果、手先の位置の変化に応じて手先の姿勢が変化する率が線形にならないことが想定される。これに対して請求項2の方法によれば、正規化ベクトルnPiについて、角度θjを回転角とする正規化クオータニオンQjを求め、その正規化クオータニオンQjにより回転させた姿勢ベクトルRbjを求める。そして、残りの姿勢ベクトルRcjを、補間点jに立つ第1姿勢ベクトルRajと姿勢ベクトルRbjとから求め、再度、姿勢ベクトルRajとRcjの外積より姿勢ベクトルRbjを求めなおし、それら3つの姿勢ベクトルRaj,Rbj,Rcjより補間点jにおける手先の姿勢角を求めるので、手先位置の変化に応じた手先姿勢の変化率を線形にすることができ、姿勢をより滑らかに変化させることができる。   That is, in the case of the method of claim 1, as a result of interpolating the posture with reference to the interpolation point, it is assumed that the rate at which the hand posture changes in accordance with the change in the hand position is not linear. On the other hand, according to the method of claim 2, with respect to the normalized vector nPi, a normalized quarteranion Qj having the angle θj as a rotation angle is obtained, and a posture vector Rbj rotated by the normalized quarteranion Qj is obtained. Then, the remaining posture vector Rcj is obtained from the first posture vector Raj and the posture vector Rbj standing at the interpolation point j, and again the posture vector Rbj is obtained from the outer product of the posture vectors Raj and Rcj, and these three posture vectors Raj , Rbj, Rcj, the posture angle of the hand at the interpolation point j is obtained, so that the rate of change of the hand posture corresponding to the change in the hand position can be made linear, and the posture can be changed more smoothly.

尚、請求項1における第5〜第7ステップと、請求項2における第5〜第12ステップとは、第2姿勢ベクトルと第3姿勢ベクトルとを決定する手順が、請求項1では第2姿勢ベクトル,第3姿勢ベクトルの順で決定するのに対し、請求項2では第2姿勢ベクトル,第3姿勢ベクトルの何れか一方,他方の順で決定する点が相違している。この相違点を除けば、請求項2における第5〜第12ステップは、請求項1における第5〜第7ステップの手順をより詳細且つ具体的に述べたものに等しい(例えば上記第5ステップにおける回転角の補間処理を、正規化クオータニオンQjを用いて行うことを限定している)。   The fifth to seventh steps in claim 1 and the fifth to twelfth steps in claim 2 are the steps for determining the second posture vector and the third posture vector. The second and third posture vectors are determined in the order of the vector and the third posture vector, whereas the second and third posture vectors are determined in the order of the second and third posture vectors. Except for this difference, the fifth to twelfth steps in claim 2 are equivalent to the more detailed and specific description of the procedure of the fifth to seventh steps in claim 1 (for example, in the fifth step above). The rotation angle interpolation processing is limited to being performed using the normalized quarteranion Qj).

第1実施例であり、ロボット本体の手先の位置及び姿勢について、教示点間の位置及び姿勢を補間する処理を示すフローチャートThe flowchart which is 1st Example and shows the process which interpolates the position and attitude | position between teaching points about the position and attitude | position of the hand of a robot main body. 図1の処理に対応するイメージをベクトルモデルで示す図(その1)The figure which shows the image corresponding to the process of FIG. 1 with a vector model (the 1) 図1の処理に対応するイメージをベクトルモデルで示す図(その2)The figure which shows the image corresponding to the process of FIG. 1 by a vector model (the 2) アプローチベクトルの長さを変化させることの意義を説明する図Diagram explaining the significance of changing the length of the approach vector 垂直多関節型ロボットを含む制御システムの構成を示す図Diagram showing configuration of control system including vertical articulated robot 制御系の機能ブロック図Functional block diagram of control system 第2実施例を示す図1相当図(その1)FIG. 1 equivalent view showing the second embodiment (part 1) 図1相当図(その2)Figure 1 equivalent (part 2) 姿勢ベクトルAiの方向が撮像対象物の方向に対してずれを生じている状態を説明する図The figure explaining the state which has produced the shift | offset | difference with respect to the direction of the imaging target object of the orientation vector Ai 正規化クオータニオンQnjを用いる作用効果を説明する図(その1)The figure explaining the effect which uses normalization quaternion Qnj (the 1) 正規化クオータニオンQnjを用いる作用効果を説明する図(その2)The figure explaining the effect which uses normalized quaternion Qnj (the 2)

(第1実施例)
以下、本発明の第1実施例について図1ないし図6を参照して説明する。図5は、垂直多関節型(6軸)ロボットを含む制御システムの構成を示す。このロボット本体1は、ベース(回転軸)2上に、この場合6軸のアームを有し、そのアームの先端には、図示しないハンド等のツールや、後述するカメラなどが取り付けられる。前記ベース2上には、第1関節J1を介して第1のアーム3が回転可能に連結されている。この第1のアーム3には、第2関節J2を介して上方に延びる第2のアーム4の下端部が回転可能に連結され、さらに、この第2のアーム4の先端部には、第3関節J3を介して第3のアーム5が回転可能に連結されている。
(First embodiment)
Hereinafter, a first embodiment of the present invention will be described with reference to FIGS. FIG. 5 shows the configuration of a control system including a vertical articulated (6-axis) robot. The robot body 1 has a 6-axis arm on a base (rotating shaft) 2 in this case, and a tool such as a hand (not shown), a camera described later, and the like are attached to the tip of the arm. A first arm 3 is rotatably connected to the base 2 via a first joint J1. A lower end portion of a second arm 4 extending upward via the second joint J2 is rotatably connected to the first arm 3, and a third portion is connected to a tip portion of the second arm 4. The third arm 5 is rotatably connected via the joint J3.

この第3のアーム5の先端には第4関節J4を介して第4のアーム6が回転可能に連結され、この第4のアーム6の先端には第5関節J5を介して第5のアーム7が回転可能に連結され、この第5のアーム7には第6関節J6を介して第6のアーム8が回転可能に連結されている。なお、各関節J1〜J6においては、図示しないサーボモータにより各アーム3〜8を回転駆動するようになっている。   A fourth arm 6 is rotatably connected to the tip of the third arm 5 via a fourth joint J4, and a fifth arm is connected to the tip of the fourth arm 6 via a fifth joint J5. 7 is rotatably connected, and the sixth arm 8 is rotatably connected to the fifth arm 7 via a sixth joint J6. In addition, in each joint J1-J6, each arm 3-8 is rotationally driven by the servomotor which is not shown in figure.

ロボット本体1と制御装置11との間は、接続ケーブル12によって接続されている。これにより、ロボット本体1の各軸を駆動するサーボモータは、制御装置11により制御される。操作パッド(入力手段)13は、例えば横長の本体14の両端側に、ユーザが左右両手でそれぞれ把持するための把持部15L,15Rが設けられており、ユーザが把持部15L,15Rを両手で把持した状態で、親指により押圧操作可能な操作スティック16L,16Rが配置されている。また、把持部15L,15Rの図中上方には、人差し指により押圧操作可能なボタン17L,17Rが配置されている。   The robot body 1 and the control device 11 are connected by a connection cable 12. Accordingly, the servo motor that drives each axis of the robot body 1 is controlled by the control device 11. The operation pad (input means) 13 is provided with gripping portions 15L and 15R for the user to hold with both left and right hands, for example, on both ends of the horizontally long main body 14, and the user holds the gripping portions 15L and 15R with both hands. Operation sticks 16L and 16R that can be pressed with the thumb while being held are arranged. In addition, buttons 17L and 17R that can be pressed with an index finger are arranged above the gripping portions 15L and 15R in the drawing.

ロボット本体1のアーム8には、CCD(Charge Coupled Device)又はCMOSイメージセンサを用いたカメラ(撮像手段)21が取り付けられており、そのカメラ21により撮像対象物(ワーク)22を画像で捉える。制御装置11には、パーソナルコンピュータ(パソコン)23がケーブル24を介して接続されている。   A camera (imaging means) 21 using a CCD (Charge Coupled Device) or a CMOS image sensor is attached to the arm 8 of the robot body 1, and the imaging target (work) 22 is captured by the camera 21 as an image. A personal computer (personal computer) 23 is connected to the control device 11 via a cable 24.

パソコン23には、メモリやハードディスクなどの記憶装置(記憶手段)が内蔵されている。操作パッド13は、接続ケーブル18を経由してパソコン23に接続され、通信インターフェイスを介してパソコン23との間で高速のデータ転送を実行するようになっている。操作スティック16L,16R等が操作されて入力された操作信号等の情報は、操作パッド13からパソコン23を介して制御装置11へ送信される。カメラ21は、ケーブル25を介してパソコン23に接続されており、カメラ21が捉えた画像のデータはパソコン23に送信されて、ディスプレイ23Dに表示される。   The personal computer 23 includes a storage device (storage means) such as a memory or a hard disk. The operation pad 13 is connected to the personal computer 23 via the connection cable 18 and executes high-speed data transfer with the personal computer 23 via the communication interface. Information such as operation signals input by operating the operation sticks 16L, 16R and the like is transmitted from the operation pad 13 to the control device 11 via the personal computer 23. The camera 21 is connected to the personal computer 23 via the cable 25, and image data captured by the camera 21 is transmitted to the personal computer 23 and displayed on the display 23D.

図6に示すように、制御装置11は、制御部としてのCPU31、各関節のモータ30を駆動する駆動手段としての駆動回路32、検出回路33などを備えている。そして、CPU31には、ロボット全体のシステムプログラム等を記憶したROM34、ロボット本体1の動作プログラム等を記憶したRAM35および前記ティーチングペンダント3を接続するためのインターフェイス36が接続されている。なお、図6では、ショルダ部5、下アーム6、上アーム7、手首8を可動部として一つのブロックで示し、これに応じてそれらの関節の駆動源であるモータ30も一台だけ示した。   As shown in FIG. 6, the control device 11 includes a CPU 31 as a control unit, a drive circuit 32 as drive means for driving the motor 30 of each joint, a detection circuit 33, and the like. The CPU 31 is connected to a ROM 34 storing system programs for the entire robot, a RAM 35 storing operation programs for the robot body 1, and an interface 36 for connecting the teaching pendant 3. In FIG. 6, the shoulder portion 5, the lower arm 6, the upper arm 7, and the wrist 8 are shown as a single block as a movable portion, and only one motor 30 that is a driving source for these joints is shown accordingly. .

上記検出回路33は、各関節の現在位置(回転角度)および現在速度(回転速度)を検出するためのもので、この検出回路33には、各関節を駆動するモータ30に設けられたロータリエンコーダ37が接続されている。ロータリエンコーダ37は位置センサおよび速度センサを兼用するもので、各モータ30の回転角度に応じたパルス信号を出力し、そのパルス信号は検出回路33に与えられる。検出回路33は、各ロータリエンコーダ37からのパルス信号に基づいて各モータ30ひいては各関節の現在位置を検出すると共に、単位時間当たり各ロータリエンコーダ37から入力されるパルス信号数に基づいて各モータ30ひいては各関節の現在速度を検出し、その位置および速度の情報は、各モータ30の駆動回路32およびCPU31に与えられるようになっている。   The detection circuit 33 is for detecting the current position (rotation angle) and current speed (rotation speed) of each joint. The detection circuit 33 includes a rotary encoder provided in the motor 30 that drives each joint. 37 is connected. The rotary encoder 37 serves both as a position sensor and a speed sensor, and outputs a pulse signal corresponding to the rotation angle of each motor 30, and the pulse signal is given to the detection circuit 33. The detection circuit 33 detects each motor 30 and thus the current position of each joint based on the pulse signal from each rotary encoder 37, and each motor 30 based on the number of pulse signals input from each rotary encoder 37 per unit time. Eventually, the current speed of each joint is detected, and information on the position and speed is supplied to the drive circuit 32 and CPU 31 of each motor 30.

そして、各駆動回路32は、CPU31から与えられる位置指令値および速度指令値と検出回路33から与えられる現在位置および現在速度とを比較し、その偏差に応じた電流を各モータ30に供給してそれらを駆動する。これにより、ロボットアーム先端(手先)であるフランジ(図示せず)の中心部が指令位置を順に通る経路を辿って動作することで、種々の作業を行う。   Each drive circuit 32 compares the position command value and speed command value given from the CPU 31 with the current position and current speed given from the detection circuit 33, and supplies each motor 30 with a current corresponding to the deviation. Drive them. As a result, various operations are performed by the movement of the central portion of a flange (not shown), which is the tip (hand) of the robot arm, following a path that sequentially passes through the command position.

ロボットアーム先端の移動経路は、操作パッド13(若しくは、図示しないティーチングペンダント)を用いて行う教示作業によって与えられる。この教示作業では、ロボットアーム先端が辿るべき軌跡上の複数の位置が指令位置として順に教示される。そして、従来の教示作業であれば、各指令位置でのロボットアーム先端の姿勢も教示するが、本実施例では、姿勢は後述のように自動的に決定される。そして教示された指令位置と決定された姿勢とは、RAM35に記憶される。制御装置11は、実際のロボット作業に際して、与えられた複数の指令位置間を曲線補間してそれら指令位置を順に滑らかに辿る曲線を設定し、ロボットアーム先端がその曲線上を移動するように制御する。   The movement path of the tip of the robot arm is given by a teaching operation performed using the operation pad 13 (or a teaching pendant (not shown)). In this teaching work, a plurality of positions on the locus that the robot arm tip should follow are sequentially taught as command positions. In the conventional teaching operation, the posture of the tip of the robot arm at each command position is also taught. In this embodiment, the posture is automatically determined as described later. The taught command position and the determined posture are stored in the RAM 35. In actual robot work, the control device 11 sets a curve that smoothly interpolates between a plurality of given command positions and smoothly follows the command positions, and controls so that the tip of the robot arm moves on the curve. To do.

なお、ロボットアーム先端の位置は、ツール(図5Σc)に固定された3次元座標(ツール座標)の原点がロボット座標(基底座標,ベース座標)上でどの位置にあるかによって示される。また、ロボットアーム先端の姿勢は、ツールに固定のツール座標の3軸の単位ベクトル(ノーマル,オリエント,アプローチの各正規化姿勢ベクトル)がロボット座標上で示す向きによって定義される。   Note that the position of the tip of the robot arm is indicated by the position of the origin of the three-dimensional coordinates (tool coordinates) fixed to the tool (FIG. 5c) on the robot coordinates (base coordinates, base coordinates). The posture of the tip of the robot arm is defined by the orientation indicated by the three-axis unit vector (normal, orientation, and approach normalized posture vectors) of the tool coordinates fixed to the tool on the robot coordinates.

次に、本実施例の作用について図1ないし図4を参照して説明する。図1は、ロボット本体1の手先(TCP)の位置及び姿勢の教示を行った後、教示点間における手先の位置及び姿勢を補間する処理を示すフローチャートであり、図2及び図3は、図1の処理に対応するイメージをベクトルモデルで示している。尚、図1に示すフローチャートは、理解を容易にするため処理の概略を原理的に示しており、より詳細な処理手順については第2実施例で説明する。   Next, the operation of this embodiment will be described with reference to FIGS. FIG. 1 is a flowchart showing a process of interpolating the position and posture of the hand between teaching points after teaching the position and posture of the hand (TCP) of the robot main body 1. FIG. 2 and FIG. An image corresponding to the process 1 is represented by a vector model. Note that the flowchart shown in FIG. 1 shows an outline of processing in principle for easy understanding, and a more detailed processing procedure will be described in the second embodiment.

先ず、各教示点について、手先の座標;TCP座標Pi(Xi,Yi,Zi)と、各軸の回転角である姿勢角(Rxi,Ryi,Rzi)とを記録する(S1)。この時、手先の姿勢は、カメラ21の視線(Z軸)が撮像対象物22の方向を向くように教示されている。続いて、各教示点毎に、撮像対象物22までの距離を求めて設定する(S2)。カメラ21を使用する場合、上記の距離は焦点距離となる(図2(a)参照)。   First, for each teaching point, the hand coordinates; TCP coordinates Pi (Xi, Yi, Zi) and posture angles (Rxi, Ryi, Rzi), which are rotation angles of the respective axes, are recorded (S1). At this time, the posture of the hand is taught so that the line of sight (Z axis) of the camera 21 faces the direction of the imaging object 22. Subsequently, the distance to the imaging target 22 is obtained and set for each teaching point (S2). When the camera 21 is used, the above distance is a focal length (see FIG. 2A).

それから、教示したTCP座標Piの間を、例えばスプライン曲線等の自由曲線を用いて補間し(S3,図2(b)参照,第1ステップ,位置補間手段)、各教示点から撮像対象物22までの距離を頂点とする座標(Ti,Ti+1,Ti+2)について、それらの間をステップS3と同様に例えばスプライン曲線等の自由曲線を用いて補間する(S4,図2(c)参照,第2及び第3ステップ,目標点座標決定手段,目標点位置補間手段)。尚、上記座標(Ti,Ti+1,Ti+2)については、教示点と同じ座標系で表す。また、「i」,「i+1」等は手先位置の移動順番を示す。   Then, interpolation is performed between the taught TCP coordinates Pi using, for example, a free curve such as a spline curve (S3, see FIG. 2B, first step, position interpolation means), and the object 22 to be imaged from each taught point. As for the coordinates (Ti, Ti + 1, Ti + 2) having the distance up to the vertex as in step S3, interpolation is performed using, for example, a free curve such as a spline curve (S4, see FIG. 2 (c), second And third step, target point coordinate determination means, target point position interpolation means). The coordinates (Ti, Ti + 1, Ti + 2) are represented in the same coordinate system as the teaching point. “I”, “i + 1”, and the like indicate the movement order of the hand position.

次に、ステップS3で求めた各教示点の補間点と、この補間点に対応してステップS4で求めた頂点座標の補間点の2点から、アプローチベクトル(第1姿勢ベクトル)を生成する(S5,図3(a)参照),第4ステップ,第1姿勢ベクトル決定手段)。このアプローチベクトルは、カメラ21の視線方向であるZ軸に一致している。尚、S4をS2もしくは、S3の前に実行順序を移動させても全く問題ないことは明らかである。   Next, an approach vector (first posture vector) is generated from the interpolation point of each teaching point obtained in step S3 and the interpolation point of the vertex coordinates obtained in step S4 corresponding to this interpolation point ( S5, see FIG. 3A), fourth step, first posture vector determining means). This approach vector coincides with the Z axis that is the viewing direction of the camera 21. Obviously, there is no problem even if the execution order is moved before S2 or S3.

ここで、図4は、アプローチベクトルを上記のように決定することの意義を説明する図である。図4(a)は従来技術による補間処理を示しており、従来は教示点P1,P2間の位置P12を補間するだけであるため、各教示点P1,P2のアプローチベクトルがターゲット(撮像対象物22)の方向を向いていても、補間点P12でのアプローチベクトルがターゲットの方向を向くとは限らない。この場合、各補間点におけるアプローチベクトルの長さは正規化された単位長で常に一定である。
図4(b)は本実施例による補間処理を示しており、補間点P12でのアプローチベクトルを、各教示点の補間点と、この補間点に対応する撮像対象物22側の補間点の2点から生成することで、各補間点におけるアプローチベクトルの長さは一定ではなく変化することになるから、アプローチベクトルがターゲットの方向を向くことが保証される。
Here, FIG. 4 is a diagram for explaining the significance of determining the approach vector as described above. FIG. 4A shows an interpolation process according to the prior art. Conventionally, since only the position P12 between the teaching points P1 and P2 is interpolated, the approach vectors of the teaching points P1 and P2 are targets (imaging objects). Even if it faces in the direction of 22), the approach vector at the interpolation point P12 does not always face in the direction of the target. In this case, the length of the approach vector at each interpolation point is always a constant unit length.
FIG. 4B shows the interpolation processing according to the present embodiment, and the approach vector at the interpolation point P12 is calculated based on 2 points of the interpolation point of each teaching point and the interpolation point on the imaging object 22 side corresponding to this interpolation point. By generating from the points, the length of the approach vector at each interpolation point is not constant but changes, so it is guaranteed that the approach vector points in the direction of the target.

再び図1を参照する。手先の姿勢を決定する他の2軸ベクトルはオリエントベクトルとノーマルベクトルであるが、これらの何れか一方について、教示点間の回転軸を中心として回転角の補間を行い、補間軌道に対応したオリエント若しくはノーマルベクトルを生成する(S6,第5ステップ,回転角補間手段)。
ここで、図3(b)〜(d)は、ステップS6においてノーマルベクトル(第2姿勢ベクトル)を生成する際に回転角を補間する処理のイメージであり、図3(b)は、図3(a)に示すA側,教示点側よりアプローチベクトルに沿って撮像対象物22の方向を見た場合のノーマル,オリエントベクトルを示している。図3(c)は、各教示点におけるノーマルベクトルの回転角θを、スプライン補間した場合の角度変化の曲線を示しており、図3(d)は、図3(c)のように補間した結果、補間点においてノーマルベクトルが示す回転角θである。
Refer to FIG. 1 again. The other two-axis vectors that determine the posture of the hand are the orientation vector and the normal vector, but for either one of them, the rotation angle is interpolated around the rotation axis between the teaching points, and the orientation corresponding to the interpolation trajectory Alternatively, a normal vector is generated (S6, fifth step, rotation angle interpolation means).
Here, FIG. 3 (b) ~ (d) is an image processing for interpolating the rotation angle when generating the normal vector (second posture vector) in step S6, FIG. 3 (b), FIG. 3A shows normal and orientation vectors when the direction of the imaging object 22 is viewed along the approach vector from the A side and the teaching point side shown in FIG. FIG. 3 (c) shows a curve of the angle change when the rotation angle θ of the normal vector at each teaching point is spline-interpolated, and FIG. 3 (d) is interpolated as shown in FIG. 3 (c). As a result, the rotation angle θ indicated by the normal vector at the interpolation point.

そして、図1に示すS7では、S6でノーマル,オリエントベクトルの一方が決まれば、他方のベクトル(第3姿勢ベクトル)は正規直交条件によりアプローチベクトルとの外積により求めることができる(第7ステップ,第3姿勢ベクトル決定手段)。これにより、各補間点についての3つの姿勢ベクトル;ノーマル,オリエント,アプローチの各ベクトルが決まるので、これらにより姿勢が決定される(第8ステップ,姿勢決定手段)。したがって、各補間点における手先のアプローチベクトルが撮像対象物22の方向を向くと共に、ある教示点から補間点を経て次の教示点に至るまでのノーマル,オリエントベクトルの回転角が滑らかに変化するように手先の姿勢が補間されたことになる。   In S7 shown in FIG. 1, if one of the normal and orientation vectors is determined in S6, the other vector (third posture vector) can be obtained by the outer product with the approach vector under the orthonormal condition (seventh step, Third posture vector determining means). As a result, three posture vectors for each interpolation point; normal, orientation, and approach vectors are determined, and the posture is determined based on these vectors (eighth step, posture determination means). Therefore, the approach vector of the hand at each interpolation point faces the direction of the imaging object 22, and the rotation angle of the normal and orientation vectors from the certain teaching point through the interpolation point to the next teaching point changes smoothly. The hand posture is interpolated.

以上のように本実施例によれば、各教示点を通過する移動軌跡がスプライン曲線となるように教示点間の位置を移動順番を付けて補間して補間点を生成し、各教示点毎に、教示点と同じ座標系における撮像対象物22の座標を求め、各教示点に対応する撮像対象物22の座標間を、スプライン曲線により補間して同じ移動順番を付した補間点を生成する。そして、教示点側の補間点を始点,撮像対象物22側の補間点を終点とするアプローチベクトルを全ての補間点に対して求め、2つの教示点間の各補間点における例えばノーマルベクトルの回転角を補間すると、各補間点に立つアプローチベクトルとノーマルベクトルとの外積よりオリエントベクトルを求め、各補間点と3つの姿勢ベクトルの座標とから各補間点における手先の姿勢を決定するようにした。   As described above, according to the present embodiment, interpolation points are generated by interpolating the positions between teaching points so that the movement trajectory passing through each teaching point becomes a spline curve, and the interpolation order is generated for each teaching point. Then, the coordinates of the imaging target 22 in the same coordinate system as the teaching points are obtained, and interpolation points between the coordinates of the imaging target 22 corresponding to each teaching point are interpolated by a spline curve to generate the interpolation points having the same movement order. . Then, an approach vector having the interpolation point on the teaching point side as the start point and the interpolation point on the imaging target object 22 side as the end point is obtained for all the interpolation points, for example, rotation of a normal vector at each interpolation point between the two teaching points. When the corner is interpolated, an orientation vector is obtained from the outer product of the approach vector and the normal vector that stands at each interpolation point, and the hand posture at each interpolation point is determined from the coordinates of each interpolation point and the three posture vectors.

すなわち、アプローチベクトルの長さを撮像対象物22までの距離に応じて変化させるので、ノーマル,オリエントベクトルも併せて決定される手先の姿勢は、アプローチベクトルが常に対象物の方を向くように補間処理される。したがって、手先の位置を補間する際に、各補間点における手先の姿勢が、少なくとも撮像対象物22の方向を向くように補間することができる。加えて、ある教示点から補間点を経て次の教示点に至るまでのノーマル,オリエントベクトルの回転角が滑らかに変化するように手先の姿勢を補間することができる。   That is, since the length of the approach vector is changed according to the distance to the imaging object 22, the hand posture determined together with the normal and orientation vectors is interpolated so that the approach vector always faces the object. It is processed. Therefore, when the hand position is interpolated, the hand position at each interpolation point can be interpolated so as to face at least the direction of the imaging object 22. In addition, the posture of the hand can be interpolated so that the rotation angle of the normal and orientation vectors from one teaching point through the interpolation point to the next teaching point changes smoothly.

(第2実施例)
図7ないし図11は第2実施例であり、第1実施例と同一部分には同一符号を付して説明を省略し、以下異なる部分について説明する。前述したように、第2実施例は第1実施例で示した処理手順をより詳細且つ具体的に示すものである。図7(a)に示すフローチャートにおいて、先ず、教示点毎にTCP座標Xciと、姿勢角(Rx,Ry,Rz)とを教示すると(S11,第1実施例では前提)、各TCP座標間(例えば、Xci, Xci+1との間)について例えばスプライン曲線等の自由曲線を用いて補間を行い、補間点を含む軌道を生成する(S12,第1ステップ,位置補間手段)。尚、添え字「i」,「i+1」は教示点について順次付す番号であり、以下では「キーフレーム番号」と称す。
(Second embodiment)
7 to 11 show a second embodiment. The same parts as those in the first embodiment are denoted by the same reference numerals, and the description thereof is omitted. Hereinafter, different parts will be described. As described above, the second embodiment shows the processing procedure shown in the first embodiment in more detail and specifically. In the flowchart shown in FIG. 7A, first, when the TCP coordinates Xci and the attitude angles (Rx, Ry, Rz) are taught for each teaching point (S11, presupposed in the first embodiment), each TCP coordinate ( For example, interpolation is performed using a free curve such as a spline curve, for example, between Xci and Xci + 1) to generate a trajectory including an interpolation point (S12, first step, position interpolation means). The subscripts “i” and “i + 1” are numbers sequentially assigned to the teaching points, and are hereinafter referred to as “key frame numbers”.

次に、姿勢角(Rxi,Ryi,Rzi)より、各教示点に立つ正規化姿勢ベクトル(Ni,Oi,Ai)を求める(S13)。そして、座標(Xt,Yt,Zt)を姿勢ベクトル(Ni,Oi,Ai)を用いて記述した場合の、TCP座標を始点とする姿勢ベクトルの長さ(ni,oi,ai)を求め(S14,第2ステップ)、姿勢ベクトル(Ni,Oi,Ai)の長さを(ni,oi,ai)とした時の頂点の座標Xtiを求める(S15,目標点座標決定手段,図7(b)参照)。すなわち、座標Xtiは、TCP座標を基準として撮像対象物22の位置を示す座標である。   Next, a normalized posture vector (Ni, Oi, Ai) standing at each teaching point is obtained from the posture angles (Rxi, Ryi, Rzi) (S13). Then, the length (ni, oi, ai) of the posture vector starting from the TCP coordinates when the coordinates (Xt, Yt, Zt) are described using the posture vector (Ni, Oi, Ai) is obtained (S14). , Second step), the coordinates Xti of the vertexes when the length of the posture vector (Ni, Oi, Ai) is (ni, oi, ai) are obtained (S15, target point coordinate determining means, FIG. 7B) reference). That is, the coordinate Xti is a coordinate indicating the position of the imaging object 22 with respect to the TCP coordinate.

ここで、姿勢ベクトルAiの方向が撮像対象物22の方向に完全に一致している場合、座標Xtiは姿勢ベクトルAiの長さを示し、他の姿勢ベクトルの長さni,oiはゼロとなるが、姿勢ベクトルAiの方向が撮像対象物22の方向とずれを生じていれば他の姿勢ベクトルの長さni,oiも所定の値を示すことになる(図9参照)。   Here, when the direction of the posture vector Ai completely coincides with the direction of the imaging target 22, the coordinate Xti indicates the length of the posture vector Ai, and the lengths ni and oi of the other posture vectors are zero. However, if the direction of the posture vector Ai deviates from the direction of the imaging target 22, the lengths ni and oi of other posture vectors also show predetermined values (see FIG. 9).

次に、アプローチベクトルAiの長さをaiとして、当該ベクトルAiの先端座標の間を、S12と同様にスプライン曲線により補間して補間点を含む軌道を生成する(S16,第3及び第4ステップ,目標点位置補間手段)。それから、教示点TCPの座標と、長さaiのアプローチベクトルAi先端のスプライン補間軌道について、各フィールド座標(補間した座標)Xcj,Xtjとを結ぶベクトル(フィールド毎の正規化アプローチベクトルAj)を求める(S17,第1姿勢ベクトル決定手段,図7(c)参照)。尚、添え字「j」は補間点について順次付す番号であり、以下では「フィールド番号」と称す。   Next, assuming that the length of the approach vector Ai is ai, the trajectory including the interpolation point is generated by interpolating between the tip coordinates of the vector Ai by a spline curve as in S12 (S16, third and fourth steps). , Target point position interpolation means). Then, a vector (normalized approach vector Aj for each field) that connects the coordinates of the teaching point TCP and the field coordinates (interpolated coordinates) Xcj and Xtj for the spline interpolation trajectory at the tip of the approach vector Ai of length ai is obtained. (See S17, first posture vector determination means, FIG. 7C). Note that the subscript “j” is a number sequentially attached to the interpolation points, and is hereinafter referred to as “field number”.

そして、教示点Xi,Xi+1におけるノーマルベクトルNi,Ni+1の内積を演算し、両者がなす角度Θni(i=0,…,N)を求め(S18,教示点ベクトル角度算出手段)、その角度Θniについてもスプライン補間することで各補間点におけるノーマルベクトルが示す角度Θnjを求める(S19,補間点ベクトル角度算出手段)。また、教示点Xi,Xi+1におけるオリエントベクトルOi,Oi+1についても同様に内積を演算し、両者がなす角度Θoi(i=0,…,N)を求め(S20)、その角度Θoiについてもスプライン補間することで各補間点におけるオリエントベクトルが示す角度Θojを求める(S21)。尚、S18〜S21が第5ステップに対応する。   Then, the inner product of the normal vectors Ni and Ni + 1 at the teaching points Xi and Xi + 1 is calculated to obtain an angle Θni (i = 0,..., N) formed by the two (S18, teaching point vector angle calculating means), and the angle Θni Also, the angle Θnj indicated by the normal vector at each interpolation point is obtained by performing spline interpolation (S19, interpolation point vector angle calculating means). Similarly, the inner product is calculated for the orientation vectors Oi and Oi + 1 at the teaching points Xi and Xi + 1, the angle Θoi (i = 0,..., N) formed by the two is obtained (S20), and spline interpolation is also performed for the angle Θoi. Thus, the angle Θoj indicated by the orientation vector at each interpolation point is obtained (S21). S18 to S21 correspond to the fifth step.

引き続き図8(a)に示す処理において、教示点のノーマルベクトルNi,Ni+1の外積Npiを演算し、その結果をノーマルベクトルの仮の回転中心として用いることにする(S22,図8(b)参照)。外積Npiの値がゼロでなければ(S23:YES)、外積Npiを正規化し(S24,第7ステップ,正規化ベクトル決定手段)、正規化ベクトルNpiを回転軸として回転角θnjによる正規化クオータニオンQnjを求める(S25,第8ステップ,正規化クオータニオン算出手段)。尚、回転角θnjは、
θnj=Θnj−Θni …(1)
で表され、フィールド番号jがキーフレーム番号i,i+1間に有る場合に、ノーマルベクトルの回転角が教示点Xiから補間点Xjに至る間に変化する角度の差分である(第6ステップ)。この回転角θnjについては、S25で正規化クオータニオンQnjを求めるまでに求めておけば良い。また、正規化クオータニオンQnjは、(2)式で求められる。
Subsequently, in the process shown in FIG. 8A, the outer product Npi of the normal vectors Ni and Ni + 1 of the teaching points is calculated, and the result is used as a temporary rotation center of the normal vector (see S22, FIG. 8B). ). If the value of the outer product Npi is not zero (S23: YES), the outer product Npi is normalized (S24, seventh step, normalization vector determining means), and the normalized quaternion Qnj by the rotation angle θnj with the normalized vector Npi as the rotation axis (S25, 8th step, normalized quota calculation means). The rotation angle θnj is
θnj = Θnj−Θni (1)
In the case where the field number j is between the key frame numbers i and i + 1, the rotation angle of the normal vector changes between the teaching point Xi and the interpolation point Xj (sixth step). The rotation angle θnj may be obtained before obtaining the normalized quota Qnj in S25. Further, the normalized quarteranion Qnj is obtained by equation (2).

Figure 0005729226
尚、Npjは、教示点Xi,補間点Xcjにおけるノーマルベクトルの外積である。
Figure 0005729226
Npj is the outer product of normal vectors at the teaching point Xi and the interpolation point Xcj.

次に、正規化したノーマルベクトルNiを、正規化クオータニオンQnjにより回転させたノーマルベクトルNjを(3)式により求める(S26,図8(c)参照,第9ステップ,回転姿勢ベクトル算出手段)。   Next, a normal vector Nj obtained by rotating the normalized normal vector Ni with the normalized quarteranion Qnj is obtained by the expression (3) (see S26, FIG. 8 (c), ninth step, rotation attitude vector calculation means).

Figure 0005729226
尚、Qnj-1は、正規化クオータニオンQnjの逆行列である。すると、補間点XcjにおけるアプローチベクトルAjと、ノーマルベクトルNjとが求められたので、これらの外積よりオリエントベクトルOjを求めることができる(S27,図8(d)参照,第10ステップ,最終姿勢ベクトル算出手段)。またここで、アプローチベクトルAjとオリエントベクトルOjの外積からノーマルベクトルNjを求め直す(S27a,第11ステップ)。
Figure 0005729226
Qnj −1 is an inverse matrix of the normalized quarterion Qnj. Then, since the approach vector Aj and the normal vector Nj at the interpolation point Xcj are obtained, the orientation vector Oj can be obtained from these outer products (see S27, FIG. 8 (d), 10th step, final posture vector). Calculation means). Here, the normal vector Nj is obtained again from the outer product of the approach vector Aj and the orientation vector Oj (S27a, 11th step).

以上より、フィールド番号jについて、アプローチベクトルAj,ノーマルベクトルNj,オリエントベクトルOjが求められたので、補間点Xcjにおける姿勢角(Rxj,Ryj,Rzj)が得られる(S28,図8(e)参照,第12ステップ)。尚、図8(e)に示すNj(old)は、第11ステップにおいて、アプローチベクトルAjとオリエントベクトルOjの外積からノーマルベクトルNjを求め直す前に求められているノーマルベクトルNjを示す。   As described above, since the approach vector Aj, the normal vector Nj, and the orientation vector Oj are obtained for the field number j, the attitude angle (Rxj, Ryj, Rzj) at the interpolation point Xcj is obtained (S28, see FIG. 8 (e)). , 12th step). Note that Nj (old) shown in FIG. 8E indicates the normal vector Nj obtained before the normal vector Nj is obtained again from the outer product of the approach vector Aj and the orientation vector Oj in the eleventh step.

一方、S23において外積Npiの値がゼロである場合は(NO)、S22で用いた教示点のノーマルベクトルNi,Ni+1に替えてオリエントベクトルOi,Oi+1を用いてそれらの外積Opiを演算する(S29)。そして、外積Opiの値がゼロでなければ(S30:YES),S24〜S27におけるノーマルベクトルNをオリエントベクトルOに置き換えて同様の処理を行う(S31)。また、S30において外積Opiの値がゼロである場合は(NO)手先の姿勢が全く変化していないことを意味するので(S32)、そのまま処理を終了する。   On the other hand, if the value of the outer product Npi is zero in S23 (NO), the outer product Opi is calculated using the orientation vectors Oi, Oi + 1 instead of the normal vectors Ni, Ni + 1 of the teaching points used in S22 (S29). ). If the value of the outer product Opi is not zero (S30: YES), the normal vector N in S24 to S27 is replaced with the orientation vector O and the same processing is performed (S31). Further, if the value of the outer product Opi is zero in S30 (NO), it means that the position of the hand has not changed at all (S32), and the processing is ended as it is.

尚、図7,図8に示すフローチャートは、1つのキーフレーム番号iについて、次のキーフレーム番号(i+1)との間を補間した点を示すフィールド番号の全てについて処理を実行し、次に、キーフレーム番号(i+1)と次のキーフレーム番号(i+2)との間を補間した点を示すフィールド番号の全てについて処理を実行する、というように順次フィールド番号とキーフレーム番号とをインクリメントして行う。   The flowcharts shown in FIGS. 7 and 8 execute processing for all the field numbers indicating the points interpolated between one key frame number i and the next key frame number (i + 1). The process is executed for all the field numbers indicating the points interpolated between the key frame number (i + 1) and the next key frame number (i + 2), and the field number and the key frame number are sequentially incremented. .

次に、上述したように正規化クオータニオンQnjを用いることによる作用効果について図10及び図11を参照して説明する。図10は、位置Aから位置Bまで円弧に沿って回転させる間の回転角を補間する場合をモデル的に示している。補間のやり方には色々あるが、例えば図10(b)に示すように位置A,B間に直線を引いて、その直線を4等分するように3点p1,p2,p3を決定する(図10(c)参照)。これらの3点を用いて回転角を補間するのであれば、円の中心から各点p1,p2,p3を通り、円周上に至る位置AB1,AB2,AB3が各補間点における回転角を与える。   Next, the effect of using the normalized quarteranion Qnj as described above will be described with reference to FIGS. FIG. 10 schematically shows a case in which the rotation angle is interpolated while rotating along a circular arc from position A to position B. There are various interpolation methods. For example, as shown in FIG. 10B, a straight line is drawn between positions A and B, and three points p1, p2, and p3 are determined so that the straight line is divided into four equal parts ( (Refer FIG.10 (c)). If the rotation angle is interpolated using these three points, the positions AB1, AB2, AB3 passing through the points p1, p2, p3 from the center of the circle and reaching the circumference give the rotation angle at each interpolation point. .

位置AB2は、位置A,B間の回転角の丁度1/2となるが、位置AB1については、位置A,AB2間の1/2よりも小さくなり、位置AB3については、位置AB2,B間の1/2よりも大きくなる。その結果、図11に破線で示すように回転角の変化率が線形とならず、滑らかに変化しない。第1実施例では、回転角の補間方式を任意としているため、回転角の変化がこの破線のようになる場合も想定される。これに対して正規化クオータニオンQnjを用いて回転させることで各補間点のノーマル若しくはオリエントベクトルを決定すると、図11に実線で示すように回転角の変化率が線形となるので滑らかに変化するようになる。   The position AB2 is exactly ½ of the rotation angle between the positions A and B, but the position AB1 is smaller than ½ between the positions A and AB2, and the position AB3 is between the positions AB2 and B. It becomes larger than 1/2. As a result, the change rate of the rotation angle is not linear and does not change smoothly as indicated by the broken line in FIG. In the first embodiment, since the rotation angle interpolation method is arbitrary, it may be assumed that the rotation angle changes as shown by the broken line. On the other hand, when the normal or orientation vector of each interpolation point is determined by rotating using the normalized quarteranion Qnj, the change rate of the rotation angle becomes linear as shown by the solid line in FIG. become.

以上のように第2実施例によれば、教示点である各TCP座標間についてスプライン曲線を用いて補間を行い、補間点を含む軌道を生成すると、各教示点に立つ正規化姿勢ベクトルを求め、撮像対象物22の座標(Xt,Yt,Zt)を姿勢ベクトル(Ni,Oi,Ai)を用いて記述した場合の、TCP座標を始点とする姿勢ベクトルの長さ(ni,oi,ai)を求め、姿勢ベクトル(Ni,Oi,Ai)の長さを(ni,oi,ai)とした時の頂点の座標Xtiを求める。次に、アプローチベクトルAiの長さをaiとして、当該ベクトルAiの先端座標の間をスプライン曲線により補間して補間点を含む軌道を生成すると、教示点TCPの座標と、長さaiのアプローチベクトルAi先端のスプライン補間軌道において各フィールド座標とを結ぶ正規化アプローチベクトルAjを求める。   As described above, according to the second embodiment, interpolation is performed between the respective TCP coordinates that are teaching points using a spline curve, and a trajectory including the interpolation points is generated, thereby obtaining a normalized posture vector standing at each teaching point. When the coordinates (Xt, Yt, Zt) of the imaging object 22 are described using the posture vector (Ni, Oi, Ai), the length of the posture vector (ni, oi, ai) starting from the TCP coordinate And vertex coordinates Xti when the length of the posture vector (Ni, Oi, Ai) is (ni, oi, ai). Next, assuming that the length of the approach vector Ai is ai and interpolating between the tip coordinates of the vector Ai with a spline curve to generate a trajectory including an interpolation point, the coordinates of the teaching point TCP and the approach vector of the length ai A normalized approach vector Aj connecting each field coordinate in the spline interpolation trajectory at the tip of Ai is obtained.

そして、教示点Xi,Xi+1におけるノーマルベクトルNi,Ni+1の内積を演算し、得られた角度Θniをスプライン補間して各補間点におけるノーマルベクトルが示す角度Θnjを求め、オリエントベクトルOi,Oi+1についても同様に内積を演算し、得られた角度Θoiをスプライン補間して各補間点におけるオリエントベクトルが示す角度Θojを求める。   Then, the inner product of the normal vectors Ni and Ni + 1 at the teaching points Xi and Xi + 1 is calculated, and the obtained angle Θni is spline interpolated to obtain the angle Θnj indicated by the normal vector at each interpolation point. The same applies to the orientation vectors Oi and Oi + 1. The inner product is calculated, and the obtained angle Θoi is spline interpolated to obtain the angle Θoj indicated by the orientation vector at each interpolation point.

更に、教示点のノーマルベクトルNi,Ni+1の外積Npiを演算して正規化し、正規化ベクトルNpiを回転軸として回転角θnjによる正規化クオータニオンQnjを求めると、正規化したノーマルベクトルNiを正規化クオータニオンQnjにより回転させたノーマルベクトルNjを求める。そして、補間点XcjにおけるアプローチベクトルAjと、ノーマルベクトルNjとの外積よりオリエントベクトルOjを求め、再度、アプローチベクトルAjとオリエントベクトルOjとの外積よりノーマルベクトルNjを求め直し、補間点Xcjにおける姿勢角(Rxj,Ryj,Rzj)を得るようにした。すなわち、補間点におけるノーマル,オリエントベクトルの何れか一方を求めるに当たり、正規化クオータニオンQnjを用いて回転角をえることにより、手先位置の変化に応じた手先姿勢の変化率を線形にすることができ、姿勢をより滑らかに、自然に変化させることができる。   Further, when the outer product Npi of the normal vectors Ni and Ni + 1 of the teaching points is calculated and normalized, and the normalized quota nion Qnj by the rotation angle θnj is obtained with the normalized vector Npi as the rotation axis, the normalized normal vector Ni is normalized to the normalized quota A normal vector Nj rotated by Qnj is obtained. Then, the orientation vector Oj is obtained from the outer product of the approach vector Aj at the interpolation point Xcj and the normal vector Nj, the normal vector Nj is obtained again from the outer product of the approach vector Aj and the orientation vector Oj, and the attitude angle at the interpolation point Xcj. (Rxj, Ryj, Rzj) is obtained. That is, when obtaining either the normal or the orientation vector at the interpolation point, the rate of change of the hand posture according to the change of the hand position can be made linear by obtaining the rotation angle using the normalized quarternion Qnj. The posture can be changed more smoothly and naturally.

本発明は上記し又は図面に記載した実施例にのみ限定されるものではなく、以下のような変形又は拡張が可能である。
補間に用いる曲線はスプライン曲線に限ることなく、その他ベジェ曲線等の自由曲線を用いても良い。
The present invention is not limited to the embodiments described above or shown in the drawings, and the following modifications or expansions are possible.
The curve used for interpolation is not limited to a spline curve, and other free curves such as a Bezier curve may be used.

図面中、1はロボット本体、11は制御装置、21はカメラ(撮像手段)、22は撮像対象物(ワーク)を示す。   In the drawings, 1 is a robot body, 11 is a control device, 21 is a camera (imaging means), and 22 is an imaging object (work).

Claims (4)

垂直多関節型のロボットの手先から対象物までの距離を変化させるように、前記手先を移動させる位置及び前記手先の姿勢を教示した後に、前記位置及び前記姿勢を補間する方法において、
教示点を通過する移動軌跡が自由曲線となるように教示点の間の位置を移動順番を付けて補間し、補間点を生成する第1ステップと、
前記対象物を目標点として、各教示点毎に、教示点と同じ座標系における前記目標点の座標を求める第2ステップと、
前記各教示点に対応する各目標点の座標間を、前記第1ステップと同じアルゴリズムの自由曲線により補間して前記第1ステップと同じ移動順番を付した補間点を生成する第3ステップと、
教示点における手先の姿勢角を3方向に分解した正規化姿勢ベクトルについて、手先から対象物の目標点に向かう方向を第1姿勢とし、その他を第2,第3姿勢として、各姿勢に対応する正規化姿勢ベクトルをそれぞれ第1〜第3姿勢ベクトルと定義し、前記第1ステップで生成した補間点を始点とし、前記第3ステップにおいて生成した補間点を終点とする第1姿勢ベクトルを、前記第1ステップで生成した全ての補間点に対して求める第4ステップと、
2つの教示点間の各補間点について、前記第2姿勢ベクトルの回転角を補間する第5ステップと、
各補間点に立つ前記第1姿勢ベクトル及び前記第2姿勢ベクトルとの外積より、第3姿勢ベクトルを求める第6ステップと、
前記第1ステップで生成した補間点と、前記第4ステップから第6ステップで得られた各姿勢ベクトルの座標とから、各補間点における前記手先の姿勢を決定する第7ステップとからなることを特徴とするロボットの位置姿勢補間方法。
In the method of interpolating the position and the posture after teaching the position to move the hand and the posture of the hand so as to change the distance from the hand of the vertical articulated robot to the object,
A first step of generating an interpolation point by interpolating the positions between the teaching points with a moving order so that the movement locus passing through the teaching points becomes a free curve;
A second step of determining the coordinates of the target point in the same coordinate system as the teaching point for each teaching point with the object as the target point ;
A third step of interpolating between the coordinates of each target point corresponding to each teaching point by a free curve of the same algorithm as in the first step to generate an interpolation point having the same movement order as in the first step;
For the normalized posture vector obtained by decomposing the hand posture angle at the teaching point in three directions, the direction from the hand toward the target point of the target is the first posture, and the others are the second and third postures, corresponding to each posture. The normalized posture vectors are defined as first to third posture vectors, respectively, and the first posture vector having the interpolation point generated in the first step as a start point and the interpolation point generated in the third step as an end point is A fourth step for obtaining all the interpolation points generated in the first step;
For each interpolation point between the two teaching points, a fifth step of interpolating the rotation angle of the second posture vector,
From the outer product of the first orientation vector and the second posture vector stand each interpolation point, a sixth step of obtaining the third posture vector,
A seventh step of determining the posture of the hand at each interpolation point from the interpolation point generated in the first step and the coordinates of each posture vector obtained in the fourth to sixth steps. Characteristic robot position and orientation interpolation method.
垂直多関節型のロボットの手先から対象物までの距離を変化させるように、前記手先を移動させる位置及び前記手先の姿勢を教示した後に、前記位置及び前記姿勢を補間する方法において、
教示点を通過する移動軌跡が自由曲線となるように教示点の間の位置を移動順番を付けて補間し、補間点を生成する第1ステップと、
前記対象物を目標点として、各教示点毎に、教示点と同じ座標系における前記目標点の座標を求める第2ステップと、
前記各教示点に対応する各目標点の座標間を、前記第1ステップと同じアルゴリズムの自由曲線により補間して前記第1ステップと同じ移動順番を付した補間点を生成する第3ステップと、
教示点における手先の姿勢角を3方向に分解した正規化姿勢ベクトルについて、手先から対象物の目標点に向かう方向を第1姿勢とし、その他を第2,第3姿勢として、各姿勢に対応する正規化姿勢ベクトルをそれぞれ第1〜第3姿勢ベクトルと定義し、前記第1ステップで生成した補間点を始点とし、前記第3ステップにおいて生成した補間点を終点とする第1姿勢ベクトルを、前記第1ステップで生成した全ての補間点に対して求める第4ステップと、
前記第2,第3姿勢ベクトルのそれぞれについて、隣り合う2つの教示点i,(i+1)にそれぞれ立つ2つのベクトルがなす角θiを求める第5ステップと、
前記第2,第3姿勢ベクトルのそれぞれについて、前記2つの教示点i,(i+1)の間で補間された補間点jについて、前記教示点i,前記補間点jにそれぞれ立つ2つのベクトルがなす角θjを求める第6ステップと、
前記第2,第3姿勢ベクトルの何れか一方について、前記2つの教示点i,(i+1)にそれぞれ立つ2つのベクトルの外積Piを求め、求めた外積Piを正規化して正規化ベクトルnPiを求める第7ステップと、
前記正規化ベクトルnPiを回転軸とし、当該正規化ベクトルnPiについて、前記角度θjを回転角として、正規化クオータニオンQjを求める第8ステップと、
前記正規化ベクトルnPiとして選択した姿勢ベクトルを、前記正規化クオータニオンQjにより回転させた姿勢ベクトルRbjを求める第9ステップと、
前記補間点jに立つ前記第1姿勢ベクトルRaj,及び前記回転させた姿勢ベクトルRbjの外積を求め、前記補間点jに立つ、前記正規化ベクトルとして選択しなかった姿勢ベクトルRcjを求める第10ステップと、
再度、姿勢ベクトルRajとRcjの外積より姿勢ベクトルRbjを求め直す第11ステップと、
前記3つの姿勢ベクトルRaj,Rbj,Rcjより、前記補間点jにおける前記手先の姿勢角を求める第12ステップとからなることを特徴とするロボットの位置姿勢補間方法。
In the method of interpolating the position and the posture after teaching the position to move the hand and the posture of the hand so as to change the distance from the hand of the vertical articulated robot to the object,
A first step of generating an interpolation point by interpolating the positions between the teaching points with a moving order so that the movement locus passing through the teaching points becomes a free curve;
A second step of determining the coordinates of the target point in the same coordinate system as the teaching point for each teaching point with the object as the target point ;
A third step of interpolating between the coordinates of each target point corresponding to each teaching point by a free curve of the same algorithm as in the first step to generate an interpolation point having the same movement order as in the first step;
For the normalized posture vector obtained by decomposing the hand posture angle at the teaching point in three directions, the direction from the hand toward the target point of the target is the first posture, and the others are the second and third postures, corresponding to each posture. The normalized posture vectors are defined as first to third posture vectors, respectively, and the first posture vector having the interpolation point generated in the first step as a start point and the interpolation point generated in the third step as an end point is A fourth step for obtaining all the interpolation points generated in the first step;
For each of the second and third posture vectors, a fifth step for obtaining an angle θi formed by two vectors standing at two adjacent teaching points i and (i + 1), respectively;
For each of the second and third orientation vectors, two vectors standing at the teaching point i and the interpolation point j are formed for the interpolation point j interpolated between the two teaching points i and (i + 1). A sixth step for determining the angle θj;
For either one of the second and third attitude vectors, a cross product Pi of two vectors respectively standing at the two teaching points i and (i + 1) is obtained, and the obtained cross product Pi is normalized to obtain a normalized vector nPi. The seventh step;
An eighth step of obtaining a normalized quota Qj with the normalized vector nPi as a rotation axis and the normalized vector nPi with the angle θj as a rotation angle;
A ninth step of obtaining a posture vector Rbj obtained by rotating the posture vector selected as the normalized vector nPi by the normalized quarteranion Qj;
A tenth step of obtaining a cross product of the first posture vector Raj standing at the interpolation point j and the rotated posture vector Rbj, and obtaining a posture vector Rcj standing at the interpolation point j and not selected as the normalized vector When,
Again, an eleventh step for recalculating the posture vector Rbj from the outer product of the posture vectors Raj and Rcj;
A robot position / orientation interpolation method comprising: a twelfth step of obtaining an attitude angle of the hand at the interpolation point j from the three attitude vectors Raj, Rbj, and Rcj.
垂直多関節型のロボットの手先から対象物までの距離を変化させるように、前記手先を移動させる位置及び前記手先の姿勢を教示した後に、前記位置及び前記姿勢を補間するロボットの制御装置において、
教示点を通過する移動軌跡が自由曲線となるように教示点の間の位置を移動順番を付けて補間し、補間点を生成する位置補間手段と、
前記対象物を目標点として、各教示点毎に、教示点と同じ座標系における前記目標点の座標を求める目標点座標決定手段と、
前記各教示点に対応する各目標点の座標間を、前記位置補間手段と同じアルゴリズムの自由曲線により補間して前記位置補間手段により付された移動順番と同じ移動順番を付した補間点を生成する目標点位置補間手段と、
教示点における手先の姿勢角を3方向に分解した正規化姿勢ベクトルについて、手先から対象物の目標点に向かう方向を第1姿勢とし、その他を第2,第3姿勢として、各姿勢に対応する正規化姿勢ベクトルをそれぞれ第1〜第3姿勢ベクトルと定義し、前記位置補間手段により生成された補間点を始点とし、前記目標点位置補間手段により生成された補間点を終点とする第1姿勢ベクトルを、前記位置補間手段により生成された全ての補間点に対して求める第1姿勢ベクトル決定手段と、
2つの教示点間の各補間点について、前記第2姿勢ベクトルの回転角を補間する回転角補間手段と、
各補間点に立つ前記第1姿勢ベクトル及び前記第2姿勢ベクトルとの外積より、第3姿勢ベクトルを求める第3姿勢ベクトル決定手段と、
前記位置補間手段により生成された補間点と、前記各姿勢ベクトルの座標とから、各補間点における前記手先の姿勢を決定する姿勢決定手段とを備えることを特徴とするロボットの制御装置。
In the robot control apparatus for interpolating the position and the posture after teaching the position to move the hand and the posture of the hand so as to change the distance from the hand of the vertical articulated robot to the target,
Position interpolation means for interpolating the positions between the teaching points with a moving order so that the movement trajectory passing the teaching points becomes a free curve, and generating interpolation points;
Target point coordinate determining means for determining the coordinates of the target point in the same coordinate system as the teaching point for each teaching point , with the object as the target point ;
Interpolate between the coordinates of each target point corresponding to each teaching point with a free curve of the same algorithm as the position interpolation means to generate an interpolation point with the same movement order as the movement order given by the position interpolation means Target point position interpolation means to perform,
For the normalized posture vector obtained by decomposing the hand posture angle at the teaching point in three directions, the direction from the hand toward the target point of the target is the first posture, and the others are the second and third postures, corresponding to each posture. First normalized posture vectors are defined as first to third posture vectors, a first posture having an interpolation point generated by the position interpolation means as a start point and an interpolation point generated by the target point position interpolation means as an end point. First posture vector determination means for obtaining a vector for all interpolation points generated by the position interpolation means;
For each interpolation point between the two teaching points, a rotation angle interpolation means for interpolating the rotation angle of the second posture vector,
From the outer product of the first orientation vector and the second posture vector stand each interpolation point, and the third posture vector determining means for determining a third orientation vector,
A robot control apparatus comprising: posture determining means for determining the posture of the hand at each interpolation point from the interpolation point generated by the position interpolation means and the coordinates of each posture vector.
垂直多関節型のロボットの手先から対象物までの距離を変化させるように、前記手先を移動させる位置及び前記手先の姿勢を教示した後に、前記位置及び前記姿勢を補間するロボットの制御装置において、
教示点を通過する移動軌跡が自由曲線となるように教示点の間の位置を移動順番を付けて補間し、補間点を生成する位置補間手段と、
前記対象物を目標点として、各教示点毎に、教示点と同じ座標系における前記目標点の座標を求める目標点座標決定手段と、
前記各教示点に対応する各目標点の座標間を、前記位置補間手段と同じアルゴリズムの自由曲線により補間して前記位置補間手段により付された移動順番と同じ移動順番を付した補間点を生成する目標点位置補間手段と、
教示点における手先の姿勢角を3方向に分解した正規化姿勢ベクトルについて、手先から対象物の目標点に向かう方向を第1姿勢とし、その他を第2,第3姿勢として、各姿勢に対応する正規化姿勢ベクトルをそれぞれ第1〜第3姿勢ベクトルと定義し、前記位置補間手段により生成された補間点を始点とし、前記目標点位置補間手段により生成された補間点を終点とする第1姿勢ベクトルを、前記位置補間手段により生成された全ての補間点に対して求める第1姿勢ベクトル決定手段と、
前記第2,第3姿勢ベクトルのそれぞれについて、隣り合う2つの教示点i,(i+1)にそれぞれ立つ2つのベクトルがなす角θiを求める教示点ベクトル角度算出手段と、
前記第2,第3姿勢ベクトルのそれぞれについて、前記2つの教示点i,(i+1)の間で補間された補間点jについて、前記教示点i,前記補間点jにそれぞれ立つ2つのベクトルがなす角θjを求める補間点ベクトル角度算出手段と、
前記第2,第3姿勢ベクトルの何れか一方について、前記2つの教示点i,(i+1)にそれぞれ立つ2つのベクトルの外積Piを求め、求めた外積Piを正規化して正規化ベクトルnPiを求める正規化ベクトル決定手段と、
前記正規化ベクトルnPiを回転軸とし、当該正規化ベクトルnPiについて、前記角度θjを回転角として、正規化クオータニオンQjを求める正規化クオータニオン算出手段と、
前記正規化ベクトルnPiとして選択した姿勢ベクトルを、前記正規化クオータニオンQjにより回転させた姿勢ベクトルRbjを求める回転姿勢ベクトル算出手段と、
前記補間点jに立つ前記第1姿勢ベクトルRaj,及び前記回転させた姿勢ベクトルRbjの外積を求め、前記補間点jに立つ、前記正規化ベクトルとして選択しなかった姿勢ベクトルRcjを求める最終姿勢ベクトル算出手段と、
再度、姿勢ベクトルRajとRcjの外積より姿勢ベクトルRbjを求め直し、前記3つの姿勢ベクトルRaj,Rbj,Rcjより、前記補間点jにおける前記手先の姿勢角を求める姿勢角決定手段とを備えることを特徴とするロボットの制御装置。
In the robot control apparatus for interpolating the position and the posture after teaching the position to move the hand and the posture of the hand so as to change the distance from the hand of the vertical articulated robot to the target,
Position interpolation means for interpolating the positions between the teaching points with a moving order so that the movement trajectory passing the teaching points becomes a free curve, and generating interpolation points;
Target point coordinate determining means for determining the coordinates of the target point in the same coordinate system as the teaching point for each teaching point , with the object as the target point ;
Interpolate between the coordinates of each target point corresponding to each teaching point with a free curve of the same algorithm as the position interpolation means to generate an interpolation point with the same movement order as the movement order given by the position interpolation means Target point position interpolation means to perform,
For the normalized posture vector obtained by decomposing the hand posture angle at the teaching point in three directions, the direction from the hand toward the target point of the target is the first posture, and the others are the second and third postures, corresponding to each posture. First normalized posture vectors are defined as first to third posture vectors, a first posture having an interpolation point generated by the position interpolation means as a start point and an interpolation point generated by the target point position interpolation means as an end point. First posture vector determination means for obtaining a vector for all interpolation points generated by the position interpolation means;
Teaching point vector angle calculating means for obtaining an angle θi formed by two vectors standing at two adjacent teaching points i and (i + 1) for each of the second and third posture vectors;
For each of the second and third orientation vectors, two vectors standing at the teaching point i and the interpolation point j are formed for the interpolation point j interpolated between the two teaching points i and (i + 1). An interpolation point vector angle calculating means for obtaining an angle θj;
For either one of the second and third attitude vectors, a cross product Pi of two vectors respectively standing at the two teaching points i and (i + 1) is obtained, and the obtained cross product Pi is normalized to obtain a normalized vector nPi. Normalization vector determining means;
A normalization quaternion calculating means for obtaining a normalization quaternion Qj with the normalization vector nPi as a rotation axis and the normalization vector nPi with the angle θj as a rotation angle;
Rotation posture vector calculation means for obtaining a posture vector Rbj obtained by rotating the posture vector selected as the normalized vector nPi by the normalization quaternion Qj;
A final posture vector for obtaining a cross product of the first posture vector Raj standing at the interpolation point j and the rotated posture vector Rbj and obtaining a posture vector Rcj standing at the interpolation point j and not selected as the normalized vector. A calculation means;
Posture angle determining means for obtaining again the posture vector Rbj from the cross product of the posture vectors Raj and Rcj, and obtaining the posture angle of the hand at the interpolation point j from the three posture vectors Raj, Rbj, Rcj. A robot control device.
JP2011198222A 2011-09-12 2011-09-12 Robot position and orientation interpolation method and robot control apparatus Active JP5729226B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011198222A JP5729226B2 (en) 2011-09-12 2011-09-12 Robot position and orientation interpolation method and robot control apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011198222A JP5729226B2 (en) 2011-09-12 2011-09-12 Robot position and orientation interpolation method and robot control apparatus

Publications (2)

Publication Number Publication Date
JP2013059815A JP2013059815A (en) 2013-04-04
JP5729226B2 true JP5729226B2 (en) 2015-06-03

Family

ID=48184979

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011198222A Active JP5729226B2 (en) 2011-09-12 2011-09-12 Robot position and orientation interpolation method and robot control apparatus

Country Status (1)

Country Link
JP (1) JP5729226B2 (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6252278B2 (en) * 2014-03-20 2017-12-27 株式会社デンソーウェーブ Robot control method and robot control device
JP5790840B2 (en) * 2014-06-10 2015-10-07 株式会社デンソーウェーブ Robot control apparatus and robot posture interpolation method
CN111091480B (en) * 2020-01-06 2023-08-04 中交四航局江门航通船业有限公司 Positioning method of pouring equipment
CN112619933B (en) * 2020-12-11 2022-02-22 北京半导体专用设备研究所(中国电子科技集团公司第四十五研究所) Spraying method and spraying system of glue spreader
CN113199475B (en) * 2021-04-28 2023-10-31 广西大学 Planning algorithm suitable for circular swing arc path of non-standard arc
CN113305474B (en) * 2021-05-27 2022-12-02 傲拓科技股份有限公司 Welding robot welding attitude interpolation method based on PLC
CN114571452A (en) * 2022-03-01 2022-06-03 湖南科技职业学院 Industrial robot trajectory planning method, electronic device and readable storage medium
CN117260746B (en) * 2023-11-22 2024-02-09 安徽大学 Time optimal track planning method for robot Cartesian space

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59218513A (en) * 1983-05-26 1984-12-08 Fanuc Ltd Arc control method of industrial robot
US5053976A (en) * 1989-05-22 1991-10-01 Honda Giken Kogyo Kabushiki Kaisha Method of teaching a robot
JPH04609A (en) * 1990-04-18 1992-01-06 Hitachi Ltd Teaching method and control method for attitude in continuous path of robot
JP3166316B2 (en) * 1992-06-24 2001-05-14 株式会社明電舎 Teaching and control method of playback type robot
JP4056662B2 (en) * 1999-09-16 2008-03-05 株式会社デンソー Appearance inspection device

Also Published As

Publication number Publication date
JP2013059815A (en) 2013-04-04

Similar Documents

Publication Publication Date Title
JP5729226B2 (en) Robot position and orientation interpolation method and robot control apparatus
JP6787966B2 (en) Robot control device and display device using augmented reality and mixed reality
JP4167940B2 (en) Robot system
JP2013049102A (en) Robot control device and method of determining robot attitude
JP6445092B2 (en) Robot system displaying information for teaching robots
US11197730B2 (en) Manipulator system
WO2020090809A1 (en) External input device, robot system, control method for robot system, control program, and recording medium
US20150273689A1 (en) Robot control device, robot, robotic system, teaching method, and program
JPWO2011021375A1 (en) Robot arm control device, method, program, integrated electronic circuit, and assembly robot
JP5108032B2 (en) Multi-joint structure teaching device
JP2018167334A (en) Teaching device and teaching method
JP5565302B2 (en) Robot control apparatus and robot posture interpolation method
JP5790840B2 (en) Robot control apparatus and robot posture interpolation method
JP5223407B2 (en) Redundant robot teaching method
JP2018144228A (en) Robot control apparatus, robot, robot system, teaching method, and program
JP2020171989A (en) Robot teaching system
JP2006026790A (en) Teaching model production device
JP2007000954A (en) Robot teaching device and method
Sharma et al. On the observability of robot motion under active camera control
JP3940998B2 (en) Robot equipment
CN111590586A (en) Man-machine interaction terminal and method for offline programming of mechanical arm
JP6457587B2 (en) Robot teaching device for setting teaching points based on workpiece video
JP2006346794A (en) Robot hand
JP2006315128A (en) Shifting from one hand to the other hand control method for robot hand
CN112654469A (en) Direct teaching device and direct teaching method for robot

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140306

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20141211

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150106

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150202

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150323

R150 Certificate of patent or registration of utility model

Ref document number: 5729226

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250