JPH11198072A - Minimum time speed controller for robot - Google Patents

Minimum time speed controller for robot

Info

Publication number
JPH11198072A
JPH11198072A JP1792298A JP1792298A JPH11198072A JP H11198072 A JPH11198072 A JP H11198072A JP 1792298 A JP1792298 A JP 1792298A JP 1792298 A JP1792298 A JP 1792298A JP H11198072 A JPH11198072 A JP H11198072A
Authority
JP
Japan
Prior art keywords
robot
joint
speed
target
hand
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.)
Pending
Application number
JP1792298A
Other languages
Japanese (ja)
Inventor
Hidenori Tomizaki
秀徳 富崎
Nobuhiro Umeda
信弘 梅田
Koji Tomita
浩治 冨田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yaskawa Electric Corp
Original Assignee
Yaskawa Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yaskawa Electric Corp filed Critical Yaskawa Electric Corp
Priority to JP1792298A priority Critical patent/JPH11198072A/en
Publication of JPH11198072A publication Critical patent/JPH11198072A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To shorten the acting time of a robot remarkably as compared with that by existent systems, in particular when the acting time is long, by maximizing the interpolation speed irrespective of the position and attitude of the robot. SOLUTION: The controller for an articulated robot provided with at least two arms has an interpolator means 1 for interpolating a target robot hand position with a straight line, circular arc or the like, an inverse coordinate means 2 for calculating the target value of each joint from the target robot hand value, a selector means 4 for selecting one that should have the maximum speed among the robot joint 3 axes, and (a differencing means 3, inverse Jacobian matrix calculator means 5 and minimum time rate calculator means 6) all for processing an inverse Jacobian matrix on the basis of a specified robot position to maximize the specified interpolation rate with the maximum possible speed of an actuator.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、少なくとも2本以
上のアームを有する多関節ロボットの制御において、直
線や円弧等の補間動作時にロボットの動作時間を短縮す
る最短時間速度制御装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a minimum time speed control apparatus for controlling an articulated robot having at least two or more arms, which shortens the operation time of the robot during an interpolation operation of a straight line, a circular arc, or the like.

【0002】[0002]

【従来の技術】一般的に産業用ロボットの最大補間速度
は、適用作業を満足するように設計されている。しかし
ながら、ハンドリングやバレタイジング作業のように、
速度ではなく、作業時間で評価する場合には、できるだ
け最大速度を大きくできるように、アーム長を長くした
り、軌跡を問題にしない場合にのみポイントツーポイン
ト制御にしたり、教示方法を工夫する等の方法で、作業
時間を短縮して来た。ポイントツーポイント制御の場
合、軌跡の補償はないが、各軸の速度をできるだけ大き
くできるよう、加減速制御、速度制御が行われるため、
通常、補間を行うCP制御よりも動作時間が短くなる
[これを、『従来例1』という]。
2. Description of the Related Art Generally, the maximum interpolation speed of an industrial robot is designed so as to satisfy the application work. However, like handling and balletizing,
When evaluating not work speed but work time, extend the arm length so that the maximum speed can be increased as much as possible, use point-to-point control only when the trajectory does not matter, devise a teaching method, etc. In this way, the work time has been shortened. In the case of point-to-point control, there is no trajectory compensation, but acceleration / deceleration control and speed control are performed so that the speed of each axis can be as high as possible.
Normally, the operation time is shorter than that of the CP control that performs interpolation [this is referred to as “conventional example 1”].

【0003】さらに、従来例2として特開平8-263128が
ある。これは、ロボットの軌跡精度を保ちながら高速の
加減速を行うとしており、点P1 〜P2 間に直線動作を
行うように、ロボットを直線動作で点P1 へ移動させ、
加減速制御の処理を開始し、点P1 〜P2 間の直線軌跡
を生成し、点P1 の各軸姿勢を計算し、各軸最大速度と
ヤコビアンから、経路方向に発生可能な速度Vrealを教
示速度を越えない範囲で計算して、点P1 での各軸の最
大トルク、慣性モーメント、外力から、各軸の最大加速
度が計算され、加速度に要する時間Tと距離dを計算
し、これらの処理を点P2 についても行い、時間Tと距
離dから加減速区間を設定し、加速完了/減速開始位置
を決定し、始点/減速開始位置と加速完了位置/終点の
間で等加速度運動が行われるよう、教示軌跡上で補間を
行い、作成された軌跡を表す移動指令はサーボ制御系へ
出力されると説明している。
Further, as a second conventional example, there is JP-A-8-263128. This while maintaining the path accuracy of the robot has to perform the high-speed acceleration and deceleration, so as to perform a linear operation between the points P 1 to P 2, is moved to the point P 1 a robot with linear motion,
The processing of the acceleration / deceleration control is started, a linear trajectory between points P 1 and P 2 is generated, the attitude of each axis at point P 1 is calculated, and the speed V that can be generated in the path direction from the maximum speed of each axis and the Jacobian. calculate the real without exceeding the teachings speed, maximum torque of each axis at the point P 1, the moment of inertia, the external force is computed maximum acceleration of each axis, calculate the time T and the distance d required for acceleration also performs the point P 2 of these processes, set the acceleration and deceleration intervals from the time T and the distance d, to determine the acceleration completion / deceleration start position, the start / deceleration start position and the acceleration end position / end between the equal It is described that interpolation is performed on a teaching trajectory so that acceleration movement is performed, and a movement command representing the created trajectory is output to a servo control system.

【0004】[0004]

【発明が解決しようとする課題】ところが、従来例1に
おいて動作経路に制約のある場合は、軌跡が保証される
CP制御になるが、動作時間が長くなってしまう問題が
ある。この理由としては、CP制御の場合、補間速度の
大きさを設定する必要があり、またそれはどのような位
置姿勢でも、設定補間速度を保証できるように、最大補
間速度を最小限に抑えて固定しているためである。すな
わち、図5に示すように、手先位置が回転軸から遠い場
合と回転軸に近い場合を比較すると、同じ回転角速度で
も、接線速度は、回転軸から遠い方が大きくなることか
ら、これまでは回転軸に近い方で最大速度を抑えるとい
うようなことが行われていた。
However, when there is a restriction on the operation route in the conventional example 1, the CP control is performed to guarantee the trajectory, but there is a problem that the operation time becomes long. The reason for this is that in the case of CP control, it is necessary to set the magnitude of the interpolation speed, and it is fixed at a minimum minimum interpolation speed so that the set interpolation speed can be guaranteed at any position and orientation. It is because. That is, as shown in FIG. 5, comparing the case where the hand position is far from the rotation axis and the case where it is close to the rotation axis, the tangential velocity becomes larger at the position far from the rotation axis even at the same rotation angular velocity. In some cases, the maximum speed was reduced nearer to the rotation axis.

【0005】さらに従来例2での目的は加減速時間の決
定方法であり、ロボットの手先速度の計算方法は、教示
速度を越えないように再設定された各関節速度(各関節
速度を均等にスケールダウンする)から、手先の最大速
度を求めているもので、このとき最大速度は教示速度を
越えないことに特長を持つが、ロボットの手先速度を最
大にして、動作時間を最短にする制御としては適切とは
言えない、つまり最短時間制御に向かない技術手段であ
る。本発明ではこのような従来例1の問題を全て払拭し
た装置を提供し、また従来例2に対抗して本発明では、
各関節速度の中、ある1つの関節速度を最大にしたと
き、教示経路を逸脱しないように、再設定された手先速
度から逆ヤコビ行列を用いて計算し他の関節速度を求め
る手段で、このときは手先速度は教示速度を無視して大
きくなり、ロボットは最短時間で速度制御されるという
装置を提供することを目的とする。
Further, the purpose of the prior art 2 is to determine the acceleration / deceleration time, and the method of calculating the hand speed of the robot uses the joint speeds that are reset so as not to exceed the teaching speed. From the scale down), the maximum speed of the hand is determined. At this time, the maximum speed does not exceed the teaching speed, but the control is to maximize the hand speed of the robot and minimize the operation time. This is a technical measure that is not appropriate as such, that is, not suitable for the shortest time control. The present invention provides an apparatus that eliminates all of the problems of Conventional Example 1 above.
When one of the joint velocities is maximized, the other joint velocity is calculated by using the inverse Jacobian matrix from the reset hand velocity so as not to deviate from the teaching path. Sometimes, the object is to provide a device in which the hand speed is increased ignoring the teaching speed and the robot is speed-controlled in the shortest time.

【0006】[0006]

【課題を解決するための手段】上記問題を解決するた
め、本発明における請求項1の発明は、少なくとも2本
以上のアームを有する多関節ロボットの制御装置におい
て、手先目標位置を直線や円弧等で補間する補間演算手
段と、ロボットの手先目標値から各関節の目標値を計算
する逆座標手段と、最大速度にすべきロボットの関節軸
の選択手段と、ロボットの指令位置から逆ヤコビ行列の
計算を行い、アクチュエータの出し得る最大速度を用い
て指令補間速度を最大にする手段と、を備えることを特
徴とするロボットの最短時間速度制御装置である。
According to a first aspect of the present invention, there is provided a control device for an articulated robot having at least two or more arms. Interpolation calculation means for interpolating with the robot, inverse coordinate means for calculating the target value of each joint from the hand target value of the robot, means for selecting the joint axis of the robot to be at the maximum speed, and inverse Jacobian matrix from the command position of the robot Means for performing calculations and maximizing the command interpolation speed by using the maximum speed that can be obtained by the actuator.

【0007】本発明の請求項2の発明は、前記ロボット
の関節軸の選択手段は、各関節座標原点から手先位置ま
での距離と、現在の関節速度指令値とその関節の最大速
度差の積が最大になる軸を選択することを特徴とする請
求項1に記載のロボットの最短時間速度制御装置であ
る。
According to a second aspect of the present invention, the means for selecting a joint axis of the robot includes a product of a distance from each joint coordinate origin to a hand position, a current joint speed command value, and a maximum speed difference of the joint. The shortest time speed control device for a robot according to claim 1, wherein an axis that maximizes is selected.

【0008】このようにして本発明によれば、上述の速
度指令手段に基づき、ロボットの位置、姿勢によらず、
補間速度が最大になるため、特に動作時間が長い場合
に、従来例よりも大幅に動作時間を短くできるロボット
の最短時間速度制御装置を得ることができると言う、特
段の効果を奏するに至った。
Thus, according to the present invention, based on the speed command means described above, regardless of the position and posture of the robot,
Since the interpolation speed is maximized, particularly when the operation time is long, it is possible to obtain a robot shortest-time speed control device capable of greatly shortening the operation time as compared with the conventional example. .

【0009】[0009]

【発明の実施の形態】以下、本発明の実施の形態を図に
基づいて説明する。各図面において同一符合は、同一若
しくは相当部材を示す。図1は、本発明の一実施の形態
[本発明の請求項2の発明]における各手段の関連的回
路構成を示すブロック図である。
DESCRIPTION OF THE PREFERRED EMBODIMENTS Embodiments of the present invention will be described below with reference to the drawings. In each drawing, the same reference numerals indicate the same or corresponding members. FIG. 1 is a block diagram showing a related circuit configuration of each means in one embodiment of the present invention [the invention of claim 2 of the present invention].

【0010】初めに使用記載される記号の定義を次の通
りに決める。そしてその中に見える上付きの括弧内数値
は、微分の回数を表す。たとえば、r(1) は、手先位置
ベクトルrの1回微分値を示す。iはロボットの関節
軸、kは計算クロックのカウンタ、rは手先位置ベクト
ル、r(1) は手先速度ベクトル、rs (k) は手先目標
位置座標列、Rは座標変換行列、Jはヤコビ行列、qは
関節位置ベクトル、q(1) は関節速度ベクトル、qri
(1) は第i関節の目標速度、qmri (1) は第i関節の最
大速度、di は第i関節の座標原点から手先位置までの
距離、Vr は手先目標速度ベクトル、ps (ξ) は手先
目標軌跡の近似軌跡である。
The definitions of the symbols used and described first are determined as follows. The number in parenthesis in the superscript indicates the number of differentiations. For example, r (1) indicates the first derivative of the hand position vector r. i is the joint axis of the robot, k is the counter of the calculation clock, r is the hand position vector, r (1) is the hand speed vector, r s (k) is the hand target position coordinate sequence, R is the coordinate transformation matrix, and J is Jacobi. Matrix, q is the joint position vector, q (1) is the joint velocity vector, q ri
(1) the target speed of the i-th joint, q mri (1) the maximum speed of the i-th joint, d i is the distance to the hand position from the coordinate origin of the i-th joint, V r is the hand target speed vector, p s (ξ) is an approximate trajectory of the hand target trajectory.

【0011】このロボットの最短時間速度制御装置の一
実施の形態では、先ずロボットの各関節に定義された関
節座標系で与えられた手先位置座標列11から、補間演
算手段1で、ロボットの所定原点における直交座標系で
与えられたロボット手先目標位置座標列12を所定計算
クロック毎のデータ列として得る。次に、ロボット手先
目標座標列12を逆座標変換手段2で、ロボット各関節
の目標位置13を得る。その目標位置13から差分手段
3を用いて、目標速度14を得る。各関節の目標位置1
3と目標速度14を用いて、最大速度にすべきロボット
の関節軸選択手段4と逆ヤコビ行列計算手段5でそれぞ
れ、最大速度にすべき関節軸15と逆ヤコビ行列16を
得る。最後に、最大速度にすべき関節軸15と逆ヤコビ
行列16を用いて、最短時間速度計算手段6で、ロボッ
トの各関節の修正目標位置17と各関節の修正目標速度
18を得るようにしている。
In one embodiment of the minimum speed control device for a robot, first, a predetermined position of the robot is calculated by an interpolation calculating means 1 from a hand position coordinate sequence 11 given in a joint coordinate system defined for each joint of the robot. A robot hand target position coordinate sequence 12 given in the orthogonal coordinate system at the origin is obtained as a data sequence for each predetermined calculation clock. Next, the robot hand target coordinate sequence 12 is used by the inverse coordinate conversion means 2 to obtain the target position 13 of each joint of the robot. The target speed 14 is obtained from the target position 13 by using the difference means 3. Target position 1 of each joint
Using the target speed 3 and the target speed 14, the joint axis selecting means 4 and the inverse Jacobian matrix calculating means 5 of the robot to be set to the maximum speed obtain the joint axis 15 and the inverse Jacobian matrix 16 to be set to the maximum speed, respectively. Finally, using the joint axis 15 and the inverse Jacobian matrix 16 to be the maximum speed, the shortest time speed calculating means 6 obtains the corrected target position 17 of each joint of the robot and the corrected target speed 18 of each joint. I have.

【0012】以上につき具体的に説明する。図2は、ロ
ボット動作の開始点、通過点、終了点の位置ベクトル、
姿勢フレームを示す図である。つまり、手先位置座標列
11は図2そのものを表している。これらのデータは、
例えばロボットの作業者がプログラミングペンダントを
用いたリモート教示等で与えることで、ロボットの制御
装置内部に、各関節軸の関節角度等で保存される。補間
演算手段1では、手先位置座標列11を通過する所望の
軌跡になるように幾何学演算を行う。それには、先ずロ
ボットの構造によって、一意的に決定される関節角と手
先位置との関連を示す変換行列Rを用いて、関節角度で
表された手先位置座標列11をロボット原点で定義した
直交座標系の位置・姿勢ベクトルに変換する。
The above is specifically described. FIG. 2 shows position vectors of a start point, a pass point, and an end point of the robot operation,
It is a figure showing a posture frame. In other words, the hand position coordinate sequence 11 represents FIG. 2 itself. These data are
For example, when the robot operator gives the information by remote teaching using a programming pendant or the like, the information is stored in the control device of the robot with the joint angles of the joint axes and the like. The interpolation calculation means 1 performs a geometric calculation so that a desired trajectory passing through the hand position coordinate sequence 11 is obtained. To do this, first, using a transformation matrix R indicating the relationship between the joint angle and the hand position uniquely determined by the structure of the robot, a hand position coordinate sequence 11 expressed by the joint angle is defined by the orthogonality defined by the robot origin. Convert to position / posture vector in coordinate system.

【0013】これを式(1)に示す。式(1)中のX,
Y,Zは3×3の回転行列を3×1の部分行列に分けた
もの、Pは各関節での座標原点位置を示す転置ベクトル
である。なお、それぞれ左上の添え字の0はロボットの
原点で定義した座標系を示し、右下の添え字のnは原点
から数えてn番目の関節座標であることを示しており、
同時に式(1)ではn軸で構成されたロボットであるこ
とを示している。
This is shown in equation (1). X in the equation (1)
Y and Z are obtained by dividing a 3 × 3 rotation matrix into 3 × 1 sub-matrices, and P is a transposed vector indicating a coordinate origin position at each joint. The suffix 0 in the upper left indicates the coordinate system defined at the origin of the robot, and the suffix n in the lower right indicates that it is the n-th joint coordinate counting from the origin.
At the same time, equation (1) indicates that the robot is configured with n axes.

【0014】[0014]

【数1】 次に、図2に表した3点の手先位置座標列を式(1)を
用いて座標変換を行い、それぞれの位置姿勢ベクトルを
1,r2,r3 として、式(2)に示す。式(2)とそれ
以降は説明を分かり易くするために、姿勢の変化は無い
としている。
(Equation 1) Next, coordinate transformation is performed on the three hand position coordinate sequences shown in FIG. 2 using equation (1), and the respective position and orientation vectors are represented by r 1 , r 2 , and r 3 , and are represented by equation (2). . Equations (2) and thereafter are assumed to have no change in posture for easy understanding.

【0015】[0015]

【数2】 (Equation 2)

【0016】ここで、加減速処理を考慮せず、一定速度
で動作させると仮定し、所定計算クロック毎のロボット
手先目標位置座標を求めると、図3に示すようになる。
図3[(a) は円弧補間の場合、(b) は直線補間の場合で
ある]は計算クロック毎のロボット手先目標位置座標を
示した図である。すなわち、所望の軌跡上を等間隔にな
るように手先目標位置座標列12[12a1, 12a2, 1
b1, 12b2で表す]を得ることができる。続いて、ロ
ボットの各関節への目標位置、目標速度を得るために、
手先目標位置座標列12の逆変換を行う。具体的には、
式(1)の逆関数を計算することで、所定計算クロック
毎の各関節への目標位置13を得る。
Here, assuming that the robot is operated at a constant speed without considering the acceleration / deceleration process, the coordinates of the robot hand target position at each predetermined calculation clock are as shown in FIG.
FIG. 3 [(a) shows the case of circular interpolation and (b) shows the case of linear interpolation] is a diagram showing the coordinates of the robot hand target position for each calculation clock. That is, the hand target position coordinate sequence 12 [12 a1 , 12 a2 , 1
2 b1 , 12 b2 ]. Next, to obtain the target position and target speed for each joint of the robot,
The inverse transformation of the hand target position coordinate sequence 12 is performed. In particular,
By calculating the inverse function of equation (1), a target position 13 for each joint at each predetermined calculation clock is obtained.

【0017】各関節への目標速度14は目標位置13を
差分手段3で求めると、計算クロックをΔT、目標位置
をqr ( k) 、目標速度をqr ( k) (1) として、式
(3)のようになる。なお、kは計算クロックのカウン
タを表す。
When the target position 13 for each joint is determined by the difference means 3, the calculation clock is ΔT, the target position is q r (k), and the target speed is q r (k) (1) . It becomes like (3). Note that k represents a calculation clock counter.

【数3】 (Equation 3)

【0018】次に、最大速度にすべきロボットの関節軸
選択手段4と逆ヤコビ行列計算手段5についてである
が、本実施の形態においては逆ヤコビ行列計算過程が関
節軸選択手段に流用できるので、逆ヤコビ行列計算手段
5から説明する。先ず、ロボットの手先速度と関節速度
の関連を示す逆ヤコビ行列Jについては、6軸ロボット
の場合、次のように求めることができる。式(4)中の
ZやPは式(1)で使用したものと同じである。
Next, regarding the joint axis selecting means 4 and the inverse Jacobian matrix calculating means 5 of the robot to be set to the maximum speed, in this embodiment, since the inverse Jacobian matrix calculating process can be applied to the joint axis selecting means. , The inverse Jacobi matrix calculation means 5 will be described. First, the inverse Jacobian matrix J indicating the relationship between the hand speed and the joint speed of the robot can be obtained as follows in the case of a six-axis robot. Z and P in the formula (4) are the same as those used in the formula (1).

【0019】[0019]

【数4】 (Equation 4)

【0020】逆ヤコビ行列計算手段5は、式(4)の逆
行列を解析的に求めて計算するか、あるいは式(4)を
所定計算クロック毎に数値的に解き、逐次その逆行列を
求めることによって、逆ヤコビ行列16を得る。逆ヤコ
ビ行列J-1を用いると式(5)のように、関節速度q
(1) を、手先速度r(1) の関数として見ることができ
る。
The inverse Jacobian matrix calculating means 5 calculates the inverse matrix of the equation (4) analytically, or solves the equation (4) numerically at every predetermined calculation clock, and sequentially obtains the inverse matrix. Thus, an inverse Jacobian matrix 16 is obtained. Using the inverse Jacobi matrix J −1 , the joint velocity q
(1) can be seen as a function of the hand speed r (1) .

【0021】[0021]

【数5】 (Equation 5)

【0022】また、本実施の形態での最大速度にすべき
ロボットの関節軸選択手段4では、式(6)に示すよう
に、各関節座標原点から手先位置までの距離di と、現
在の関節速度指令値、つまり目標速度qri (1) とその関
節の最大速度qmri (1) の差Δqi (1) の積が最大にな
る軸を求めて、それを最大速度にすべき関節軸を関節軸
15としている。
Further, the joint axis selection means 4 of the robot should be the maximum speed in the present embodiment, as shown in equation (6), the distance d i from the joint coordinate origin to the hand position, the current The joint speed command value, that is, the axis that maximizes the product of the difference Δq i (1) between the target speed q ri (1) and the maximum speed q mri (1) of the joint is determined, and the joint whose maximum speed is to be obtained is obtained. The axis is the joint axis 15.

【0023】[0023]

【数6】 (Equation 6)

【0024】次に、最大速度にすべき関節軸15と逆ヤ
コビ行列16を用いて、ロボット各関節の修正目標位置
17と各関節の修正速度18を得るための最短時間速度
計算手段6を説明する。6軸のロボットを例に、式
(5)を各関節への目標速度qr (1) と手先目標ベクト
ルVr の関係式に書き直すと、次のようになる。ただ
し、式(2)と同様、姿勢の変化は無いと仮定してい
る。
Next, the shortest time speed calculating means 6 for obtaining the corrected target position 17 of each joint of the robot and the corrected speed 18 of each joint by using the joint axis 15 and the inverse Jacobian matrix 16 to be the maximum speed will be described. I do. Taking the example of a six-axis robot as an example, Equation (5) can be rewritten as a relational expression between the target speed q r (1) to each joint and the hand target vector V r as follows. However, as in Expression (2), it is assumed that the posture does not change.

【0025】[0025]

【数7】 (Equation 7)

【0026】ここで、形状パラメータξと手先目標位置
座標列12を用いて、元の軌跡を表現することを考え
る。図3に示したような手先目標位置座標列をrs (
k) として、式(8)のように表す。
Here, it is considered that the original trajectory is expressed using the shape parameter ξ and the hand target position coordinate sequence 12. Hand target position coordinate sequence as shown in Figure 3 r s (
k) as shown in equation (8).

【0027】[0027]

【数8】 (Equation 8)

【0028】次に、連続する3つの手先目標位置座標デ
ータ列を用いて、目標軌跡の近似曲線を示した図である
図4のように、元の軌跡を2次曲線で表現する。動作は
高速であるが、計算クロックを短くとることで、近似精
度の問題なく再現可能である。2次曲線をps ( ξ) と
して、式(9)に示す。これは直線の場合でも、パラメ
ータξの一次式となって、統一的に扱うことができる。 ps ( ξ) =2(ξ−0.5)( ξ-1) ・r s ( k) −4ξ( ξ-1) ・r s ( k+1) +2ξ( ξ-0.5) ・r s ( k+2) ………………………………(9) ただし、0.0≦ξ≦1.0
Next, the original trajectory is represented by a quadratic curve as shown in FIG. 4, which is a diagram showing an approximate curve of the target trajectory, using three consecutive hand target position coordinate data strings. Although the operation is fast, it can be reproduced without a problem of approximation accuracy by shortening the calculation clock. The quadratic curve is represented by equation (9) as p s (ξ). This is a linear expression of the parameter ξ even in the case of a straight line, and can be treated uniformly. p s (ξ) = 2 ( ξ-0.5) (ξ-1) · r s (k) -4ξ (ξ-1) · r s (k + 1) + 2ξ (ξ-0.5) · r s (k + 2) ...... ……………… (9) However, 0.0 ≦ (≦ 1.0

【0029】図4のように、式(9)中のr s ( k) か
らr s ( k+2) までの距離をδ、時間をtとすると、
手先目標速度ベクトルVr とパラメータξは、式(1
0)の関係となる。 ξ={|Vr |/δ}t ……………………………(10) また、手先目標速度ベクトルVr は、 Vr =dps ( ξ) /dt={dps ( ξ) /dξ}・dξ/dt ……………………………(11) となる。式(9)をパラメータξで微分することで、 dps ( ξ) /dξ=(4ξ-3) ・r s ( k) −(8ξ-4) ・r s ( k+1) +( 4ξ−1) ・r s ( k+2) ……………………………(12) を、また、式(10)より、 dξ/dt=|Vr |/δ ……………………………(13) を得る。式(12)、式(13)を式(11)に代入
し、式(8)を用いると、手先目標速度ベクトルV
r は、式(14)のようになる。
[0029] As shown in FIG. 4, the distance from the formula (9) r s (k) in up to r s (k + 2) δ , when the time is for t,
The hand target speed vector Vr and the parameter ξ are given by the following equation (1)
0). ξ = {| V r | / δ} t also ................................. (10), the hand target speed vector V r, V r = dp s (ξ) / dt = {dp s ( ξ) / dξ} · dξ / dt ………………… (11) By differentiating equation (9) in the parameter ξ, dp s (ξ) / dξ = (4ξ-3) · r s (k) - (8ξ-4) · r s (k + 1) + (4ξ-1) · R s (k + 2) ···································· (12) From the equation (10), dξ / dt = | V r | / δ ……………………… ... (13) is obtained. By substituting the equations (12) and (13) into the equation (11) and using the equation (8), the hand target speed vector V
r is as shown in equation (14).

【0030】[0030]

【数9】 (Equation 9)

【0031】ロボット各関節の修正目標位置17と各関
節の修正目標速度18は、最大速度にすべき関節軸15
をi、その関節の最大速度をqmri (1) とすると、式
(7)の左辺にqmri (1) を、式(7)の右辺の速度ベ
クトルに式(14)をそれぞれ代入して求める。すなわ
ち、代入後の式(7)の第i番目の方程式は、
The correction target position 17 of each joint of the robot and the correction target speed 18 of each joint are determined by the joint axis 15 to be set to the maximum speed.
Where i is the maximum velocity of the joint and q mri (1) , q mri (1) is substituted into the left side of equation (7), and equation (14) is substituted into the velocity vector on the right side of equation (7). Ask. That is, the i-th equation of the equation (7) after the substitution is:

【0032】[0032]

【数10】 となるので、式(15)に式(14)を代入すること
で、パラメータξは、
(Equation 10) By substituting equation (14) into equation (15), the parameter ξ becomes

【0033】[0033]

【数11】 と、求めることができる。[Equation 11] And you can ask.

【0034】最短時間速度計算手段6は、この式(1
6)で求めたパラメータξを、式(9)に代入すること
で、ロボット原点での直交座標系で表した修正位置目標
を求め、これを基に式(1)の逆関数を計算して、ロボ
ット各関節の修正目標位置17を求めている。さらに、
修正目標位置17を式(3)に代入して、ロボット各関
節の修正目標速度18を求めるようにしている。もしく
は、パラメータξを式(14)に代入することで、手先
速度ベクトルを求め、それを式(7)に代入して、最大
速度にすべき関節軸i以外の、ロボット各関節の修正目
標速度18を求めることもできる。
The shortest time speed calculating means 6 calculates the equation (1)
By substituting the parameter た obtained in 6) into equation (9), a corrected position target expressed in the orthogonal coordinate system at the robot origin is obtained, and based on this, the inverse function of equation (1) is calculated. And the correction target position 17 of each joint of the robot. further,
The correction target position 17 is substituted into the equation (3) to obtain the correction target speed 18 of each joint of the robot. Alternatively, by substituting the parameter に into Equation (14), a hand velocity vector is obtained, and the obtained value is substituted into Equation (7), and the corrected target velocity of each joint of the robot other than the joint axis i to be the maximum velocity is obtained. 18 can also be obtained.

【0035】これまで、ロボットの手先目標位置にのみ
着目してきたが、姿勢が変化する場合においても同様
に、姿勢をパラメータξの関数とすることで、容易に実
現することが分かる。
So far, attention has been paid only to the hand target position of the robot. However, it is understood that the posture can be easily realized by changing the posture to a function of the parameter ξ.

【0036】[0036]

【発明の効果】以上説明したように本発明では、少なく
とも2本以上のアームを有する多関節ロボットの制御装
置において、手先目標位置を直線や円弧等で補間する補
間演算手段と、ロボットの手先目標値から各関節の目標
値を計算する逆座標変換手段と、最大速度にすべきロボ
ットの関節軸の選択手段と、ロボットの指令位置から逆
ヤコビ行列の計算を行い、アクチュエータの出し得る最
大速度を用いて指令補間速度を最大にする手段とを備え
ることから、さらには望ましくは前記ロボットの関節軸
の選択手段は、各関節座標から手先位置までの距離と、
現在の関節速度指令値とその関節の最大速度差の積が最
大になる軸を選択することで、ロボットの位置、姿勢に
よらず、補間速度が最大になるため、特に動作時間が長
い場合に、従来例よりも大幅に動作時間を短くできるロ
ボットの最短時間速度制御装置を得られるという特段の
効果を奏するこができる。
As described above, according to the present invention, in a control device of an articulated robot having at least two or more arms, an interpolation calculating means for interpolating a hand target position by a straight line, a circular arc or the like, a robot hand target Inverse coordinate transformation means for calculating the target value of each joint from the values, means for selecting the joint axis of the robot to be set to the maximum speed, and calculation of the inverse Jacobian matrix from the command position of the robot to determine the maximum speed that the actuator can output And means for maximizing the command interpolation speed by using the robot.More preferably, the means for selecting a joint axis of the robot further includes a distance from each joint coordinate to the hand position,
By selecting the axis that maximizes the product of the current joint speed command value and the maximum speed difference of that joint, the interpolation speed is maximized regardless of the robot's position and posture. In addition, it is possible to obtain a special effect that a shortest-time speed control device for a robot capable of greatly shortening the operation time as compared with the conventional example can be obtained.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の一実施の形態[本発明の請求項2の発
明]における各手段の関連的回路構成を示すブロック図
FIG. 1 is a block diagram showing a related circuit configuration of each means in an embodiment of the present invention [invention 2 of the present invention].

【図2】本発明におけるロボットの動作の開始点,通過
点,終了点の位置ベクトル、姿勢フレームを示す図
FIG. 2 is a diagram showing a position vector and a posture frame of a start point, a pass point, and an end point of the operation of the robot according to the present invention.

【図3】本発明での計算クロック毎のロボット手先目標
を示した図を示し、(a) はその円弧補間の場合、(b) は
その直線補間の場合
FIGS. 3A and 3B are diagrams showing robot hand targets for each calculation clock in the present invention, wherein FIG. 3A shows the case of circular interpolation, and FIG. 3B shows the case of linear interpolation.

【図4】本発明におけるロボットの目標軌跡の近似曲線
を示した図
FIG. 4 is a diagram showing an approximate curve of a target trajectory of a robot according to the present invention.

【図5】手先位置が回転軸からの遠・近で、同一回転速
度でも、接線速度が大・小と変わることの説明図
FIG. 5 is an explanatory diagram showing that the tangential speed changes between large and small even at the same rotation speed when the hand position is far or near from the rotation axis.

【符号の説明】[Explanation of symbols]

1 補間演算手段 2 逆座標変換手段 3 差分手段 4 関節軸選択手段 5 逆ヤコビ行列計算手段 6 最短時間速度計算手段 11 手先位置座標列 12,12a1,12a2,12b1,12b2 手先目標位置
座標例 13 ロボット各関節の目標位置 14 ロボット各関節の目標速度 15 最大速度にすべき関節軸 16 逆ヤコビ行列 17 ロボット各関節の修正目標位置 18 ロボット各関節の修正目標速度
DESCRIPTION OF SYMBOLS 1 Interpolation calculation means 2 Inverse coordinate conversion means 3 Difference means 4 Joint axis selection means 5 Inverse Jacobi matrix calculation means 6 Minimum time speed calculation means 11 Hand position coordinate sequence 12, 12 a1 , 12 a2 , 12 b1 , 12 b2 Hand target position Coordinate example 13 Target position of each robot joint 14 Target speed of each robot joint 15 Joint axis to be maximized 16 Inverse Jacobian matrix 17 Corrected target position of each robot joint 18 Corrected target speed of each robot joint

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】 少なくとも2本以上のアームを有する多
関節ロボットの制御装置において、 手先目標位置を直線や円弧等で補間する補間演算手段
と、 ロボットの手先目標値から各関節の目標値を計算する逆
座標手段と、 最大速度にすべきロボットの関節軸の選択手段と、 ロボットの指令位置から逆ヤコビ行列の計算を行い、ア
クチュエータの出し得る最大速度を用いて指令補間速度
を最大にする手段と、を備えることを特徴とするロボッ
トの最短時間速度制御装置。
1. A control device for an articulated robot having at least two or more arms, an interpolation calculating means for interpolating a target position of a hand with a straight line or an arc, and calculating a target value of each joint from a target value of the robot. Means for selecting the joint axis of the robot to be set to the maximum speed, means for calculating the inverse Jacobian matrix from the command position of the robot, and means for maximizing the command interpolation speed using the maximum speed that can be obtained by the actuator A minimum speed control device for a robot, comprising:
【請求項2】 前記ロボットの関節軸の選択手段は、各
関節座標原点から手先位置までの距離と、現在の関節速
度指令値とその関節の最大速度差の積が最大になる軸を
選択することを特徴とする請求項1に記載のロボットの
最短時間速度制御装置。
2. The joint axis selecting means of the robot selects an axis that maximizes a product of a distance from each joint coordinate origin to a hand position, a current joint speed command value, and a maximum speed difference of the joint. 2. The minimum time speed control device for a robot according to claim 1, wherein:
JP1792298A 1998-01-14 1998-01-14 Minimum time speed controller for robot Pending JPH11198072A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1792298A JPH11198072A (en) 1998-01-14 1998-01-14 Minimum time speed controller for robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1792298A JPH11198072A (en) 1998-01-14 1998-01-14 Minimum time speed controller for robot

Publications (1)

Publication Number Publication Date
JPH11198072A true JPH11198072A (en) 1999-07-27

Family

ID=11957270

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1792298A Pending JPH11198072A (en) 1998-01-14 1998-01-14 Minimum time speed controller for robot

Country Status (1)

Country Link
JP (1) JPH11198072A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008132595A (en) * 2008-02-08 2008-06-12 Mitsubishi Electric Corp Robot control device
JP2008204188A (en) * 2007-02-20 2008-09-04 Nagoya Institute Of Technology Motion controller, motion planner, multi-shaft servo system and servo amplifier
WO2013133346A1 (en) 2012-03-07 2013-09-12 Canon Kabushiki Kaisha Robot controlling device, robot apparatus, robot control method, program for executing robot control method, and recording medium on which program is recorded
US9415518B2 (en) 2013-10-31 2016-08-16 Seiko Epson Corporation Robot control device and robot
JP2016153163A (en) * 2016-04-04 2016-08-25 富士機械製造株式会社 Workpiece conveyance device

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008204188A (en) * 2007-02-20 2008-09-04 Nagoya Institute Of Technology Motion controller, motion planner, multi-shaft servo system and servo amplifier
JP2008132595A (en) * 2008-02-08 2008-06-12 Mitsubishi Electric Corp Robot control device
WO2013133346A1 (en) 2012-03-07 2013-09-12 Canon Kabushiki Kaisha Robot controlling device, robot apparatus, robot control method, program for executing robot control method, and recording medium on which program is recorded
CN104254430A (en) * 2012-03-07 2014-12-31 佳能株式会社 Robot controlling device, robot apparatus, robot control method, program for executing robot control method, and recording medium on which program is recorded
US9221174B2 (en) 2012-03-07 2015-12-29 Canon Kabushiki Kaisha Robot controlling device, robot apparatus, robot control method, program for executing robot control method, and recording medium on which program is recorded
DE112013003029B4 (en) * 2012-03-07 2016-04-14 Canon Kabushiki Kaisha A robot control device, a robot device, a robot control method, a program for executing a robot control method, and a recording medium on which a program is recorded.
CN104254430B (en) * 2012-03-07 2016-05-11 佳能株式会社 Robert controller, robot device and robot control method and device
US9415518B2 (en) 2013-10-31 2016-08-16 Seiko Epson Corporation Robot control device and robot
US10150215B2 (en) 2013-10-31 2018-12-11 Seiko Epson Corporation Robot control device and robot
JP2016153163A (en) * 2016-04-04 2016-08-25 富士機械製造株式会社 Workpiece conveyance device

Similar Documents

Publication Publication Date Title
JPS591180A (en) Manipulator executing motion of path controlled
JP3207728B2 (en) Control method of redundant manipulator
US20070030271A1 (en) Robot controller and robot control method using spline interpolation
JPH079606B2 (en) Robot controller
EP1517205A2 (en) Controller for machine
WO1992012473A1 (en) Method of correcting deflection of robot
WO1989008878A1 (en) Method of controlling tool attitude of a robot
JPH04111006A (en) Path interpolating method for robot
JPH11198072A (en) Minimum time speed controller for robot
JP6123595B2 (en) Speed control method for 2-axis robot
JP3316967B2 (en) Robot control device
JP2023159641A (en) Path generation method of generating path of robot using command from external apparatus and robot control system
JPH07200018A (en) Controller for robot
JP2656180B2 (en) Tool tip position adjustment method
JP2737725B2 (en) Robot control device and method
JP3748454B2 (en) Industrial robot controller
JPH0760667A (en) Weaving control device for robot
JPS59173805A (en) Industrial robot having instruction data converting function
JPS59220806A (en) Controlling method of industrial robot
JPH06190750A (en) Robot control device
JP3194829B2 (en) Robot motion program generation device
JP6057283B2 (en) Articulated robot and semiconductor wafer transfer device
WO2021106237A1 (en) Control device and robot system
JP2594546B2 (en) Control method based on virtual internal model of robot
JPH06289915A (en) Digital servo controller