JPH0127443B2 - - Google Patents

Info

Publication number
JPH0127443B2
JPH0127443B2 JP57146151A JP14615182A JPH0127443B2 JP H0127443 B2 JPH0127443 B2 JP H0127443B2 JP 57146151 A JP57146151 A JP 57146151A JP 14615182 A JP14615182 A JP 14615182A JP H0127443 B2 JPH0127443 B2 JP H0127443B2
Authority
JP
Japan
Prior art keywords
point
speed
vector
time
interpolation
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.)
Expired
Application number
JP57146151A
Other languages
Japanese (ja)
Other versions
JPS5936811A (en
Inventor
Muneyuki Sakagami
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP14615182A priority Critical patent/JPS5936811A/en
Publication of JPS5936811A publication Critical patent/JPS5936811A/en
Publication of JPH0127443B2 publication Critical patent/JPH0127443B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/416Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control of velocity, acceleration or deceleration
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/45Nc applications
    • G05B2219/45083Manipulators, robot

Description

【発明の詳細な説明】 本発明は、経路補間方法に関する。[Detailed description of the invention] The present invention relates to a path interpolation method.

ロボツトの移動経路の操作方法の1つに、
PTP(point to point)動作がある。PTP動作
は、経路上の有限個の通過点を指定し、この指定
通過点に従つて経路移動をさせる動作である。
One of the ways to control the robot's movement path is to
There is PTP (point to point) operation. The PTP operation is an operation that specifies a finite number of passing points on a route and moves the route according to the specified passing points.

従来、PTP動作を連続して行う場合に、各ポ
イント(位置)毎に停止しないで通過するやり方
がとられる。その際、ポイントからポイントへの
折線部分は円弧で補間させる。例えば、2本の相
隣り合う折線との間では、該2本の折線を指定さ
れた半径を持つ円弧で連続化させる。かかる従来
例では、折線をもとにした円弧の計算が複雑であ
ること、その結果、ロボツトの経路移動前の計算
時間に多大の時間を要し、ロボツトの経路移動を
実時間で行い得ないとの欠点を持つ。更に、関節
形ロボツトの各関節の動きを座標にとつた関節角
動作でのPTP動作高速化への応用ができにくい
欠点を持つ。
Conventionally, when performing PTP operations continuously, a method is used in which the PTP operation is performed by passing each point (position) without stopping. At this time, the broken line portion from point to point is interpolated with a circular arc. For example, between two adjacent broken lines, the two broken lines are made continuous by a circular arc having a specified radius. In such conventional examples, calculation of arcs based on polygonal lines is complicated, and as a result, a large amount of calculation time is required before the robot moves along the route, making it impossible to move the robot along the route in real time. It has disadvantages. Furthermore, it has the disadvantage that it is difficult to apply joint angle motion based on the coordinates of the movement of each joint of an articulated robot to speed up PTP motion.

本発明の目的は、簡単な演算で、複数の教示点
間を高速移動させうるロボツトハンドの経路補間
方法を提供するものである。
An object of the present invention is to provide a path interpolation method for a robot hand that can move between a plurality of teaching points at high speed with simple calculations.

このため、本発明は、3点以上の点を与えて、
これらの点を直線で結ぶロボツトハンドの折線経
路の補間方法において、経路の折点となるある中
間点の手前で、該中間点方向の直線に沿つて該中
間点で速度が単調減少で零になるように補間し、
かつ、該中間点から次の直線に沿つて速度が零か
ら単調増加で定められた速度に達するように補間
し、前記速度減少のための補間により定まつた位
置に、前記速度増加のための補間により定まつた
位置の前記中間点からの増分を加える操作を行な
うことにより、前記中間点の近傍で2本の直線間
を速度が不連続にならないように連結した経路を
形成するようにしたものである。
Therefore, the present invention gives 3 or more points,
In the method of interpolating the broken line path of the robot hand connecting these points with a straight line, the speed monotonically decreases to zero along the straight line in the direction of the intermediate point before a certain intermediate point that is the turning point of the path. Interpolate so that
Then, interpolation is performed along the next straight line from the intermediate point so that the speed reaches a predetermined speed from zero by monotonous increase, and the position for increasing the speed is placed at the position determined by the interpolation for decreasing the speed. By performing an operation of adding an increment from the intermediate point to the position determined by interpolation, a path is formed that connects the two straight lines in the vicinity of the intermediate point so that the speed does not become discontinuous. It is something.

以下、図面により本発明を詳述する。 Hereinafter, the present invention will be explained in detail with reference to the drawings.

第1図は3点A,B,Cを与えて、A→B→C
なる経路に従つてロボツトのハンドを移動させる
事例の説明図である。この3点A,B,Cはテイ
ーチングによつて教示された値であり、メモリに
テイーチングデータとして格納されている。
In Figure 1, given three points A, B, and C, A→B→C
FIG. 2 is an explanatory diagram of an example in which a robot's hand is moved along a route. These three points A, B, and C are values taught by teaching, and are stored in the memory as teaching data.

今、間を速度va、間を速度vbとで移動さ
せ、且つこの移動はサンプリング時間T単位に行
うものとする。従つて、間のサンプリング点
数をna、間のサンプリング点数をnbとすると、 na=〔AB/―/vaT〕 ……(1) nb=〔BC/―/vbT〕 ……(2) の関係となる。ここに〔 〕なるカツコの意味
は、例えば(1)式では、naは、 AB/―/vaT≦na<AB/―/vaT+1 ……(3) の範囲の自然数であることを示す。従つて、各々
のサンプリング点における目標点は、それぞれ
ABをna等分、をnb等分する点となる。
Now, it is assumed that the movement is performed at a speed v a between the points and a speed v b between the steps, and this movement is performed in units of sampling time T. Therefore, if the number of sampling points in between is n a and the number of sampling points in between is n b , then n a = [AB/-/v a T] ...(1) n b = [BC/-/v b T] ...The relationship is as shown in (2). The meaning of the bracket here is that, for example, in equation (1), n a is a natural number in the range of AB/-/v a T≦n a <AB/-/v a T+1 ...(3) Show that. Therefore, the target point at each sampling point is
This is the point that divides AB into n a equal parts and divides AB into n b equal parts.

しかし、この方法でロボツトのハンドを駆動す
ると、点Bで速度が不連続となり、駆動不能とな
る。
However, when the robot's hand is driven using this method, the speed becomes discontinuous at point B, making it impossible to drive.

そこで、本発明では、点Bに到達する前に点A
から点Bに到達する前に、点Aから点B方向へは
点Bに到達した時に速度ゼロになるように速度を
単調減少し、点Bから点C方向へは速度をゼロか
ら単調増加するように経路を補間する。
Therefore, in the present invention, before reaching point B, point A
Before reaching point B, the speed is monotonically decreased from point A to point B so that it becomes zero when reaching point B, and from point B to point C, the speed is monotonically increased from zero. Interpolate the route as follows.

第2図と第3図で本発明の基本的な考え方を説
明する。
The basic idea of the present invention will be explained with reference to FIGS. 2 and 3.

第2図に示すように、点Aから点Bへの方向を
単位ベクトル〓a、点Bから点Cへの方向を単位
ベクトル〓bとし、線分間の定速域の速度を
va、線分間の定速域の速度をvbとする。更に
ベクトル〓a方向の減速時間とベクトル〓b方向の
加速時間を同一とし、その値をtoとする。更に、
ベクトル〓a方向の速度単調減少を等減速度a、
ベクトル〓b方向の速度単調増加を等加速度bと
する。かかる関係のもとでは、a,bは、 a=va/to ……(4) b=vb/to ……(5) となる。
As shown in Figure 2, the direction from point A to point B is a unit vector 〓 a , the direction from point B to point C is a unit vector 〓 b , and the speed in the constant speed region of the line segment is
Let v a be the velocity in the constant velocity region between the lines, and v b be the velocity. Furthermore, the deceleration time in the vector 〓 a direction and the acceleration time in the vector 〓 b direction are made the same, and their value is set to t o . Furthermore,
Vector 〓 The velocity monotonically decreases in the direction a , with constant deceleration a,
Vector 〓 Let the velocity monotonically increase in the b direction be the constant acceleration b. Under such a relationship, a and b become as follows: a=v a /t o ...(4) b=v b /t o ...(5).

点Bを位置ベクトル〓b、線分上の減速開始
点を点D、その位置ベクトルを〓d、線分上の
加速終了点を点E、その位置ベクトルを〓eとす
ると、位置ベクトル〓d,〓eはそれぞれ以下とな
る。
Let point B be the position vector 〓 b , the deceleration start point on the line segment be the point D, its position vector be 〓 d , the acceleration end point on the line segment be the point E, and its position vector be 〓 e , then the position vector 〓 d , 〓 e are as follows.

d=〓b−1/2at2 oa =〓b−1/2vatoa ……(6) 〓e=〓b+1/2bt2 ob =〓b+1/2vbtob ……(7) 以上の如き経路補間によれば、A→Dの経路で
は定速度vaの移動を行い、D→Bの経路では定減
速度aに従つて減速し、点Bでは速度ゼロとな
る。次いで、B→Eの経路では定加速度bに従つ
て速度ゼロから連続的に速度を増してゆき、点E
では定速度vbとなる。次いで、E→Cの経路で
は、定速度vbに従つて移動する。
d =〓 b -1/2at 2 oa =〓 b -1/2v a t oa ......(6) 〓 e =〓 b +1/2bt 2 ob =〓 b +1/2v b t ob ......(7) According to the above path interpolation, on the path from A to D, movement is performed at a constant speed v a , and on the path from D to B, it is decelerated according to the constant deceleration a, and then it reaches point B. Then the velocity becomes zero. Next, on the path B→E, the speed increases continuously from zero according to the constant acceleration b, and reaches point E.
Then, the velocity becomes constant v b . Next, on the path E→C, it moves at a constant velocity v b .

以上のA→D→B→E→Cの経路移動では、速
度は連続的であり、且つ補間域前後の速度も連続
することとなり、円滑な補間を達成できる。
In the above path movement of A→D→B→E→C, the velocity is continuous, and the velocity before and after the interpolation area is also continuous, so that smooth interpolation can be achieved.

以上はD→B、B→Eの間で速度補間を行う事
例であるが、速度補間と共に位置補間を行う場合
を次に説明する。
The above is an example in which velocity interpolation is performed between D→B and B→E. Next, a case in which position interpolation is performed together with velocity interpolation will be described.

第3図は速度補間と位置補間とを実現させてる
PTP動作の説明図である。横軸に時間、縦軸に
速度をとつている。特性l1はB→E→Cでの速度
特性を示し、特性l2はA→D→Bでの速度特性を
示す。然るに、特性l1とl2とを同一時間軸でとら
え、図の時間軸でPTP動作を行わせる。即ち、
ハンドに対して、間は定速度vaで移動させ
る。点Dで2つの方向DB→、BE→へのベクトル〓a
bを与える。このベクトルは時間toの間与える。
この2つのベクトル〓a,〓bによつて、移動経路
はD→B→E→Cとはならず、Bを介さずに、D
からE方向にむけて、ベクトル〓a,〓bとの合成
ベクトルに従つた曲線を描きながら移動する。to
時間後、位置Eに到達し、間は定速度vbで移
動させる。
Figure 3 realizes velocity interpolation and position interpolation.
FIG. 3 is an explanatory diagram of PTP operation. Time is plotted on the horizontal axis and speed is plotted on the vertical axis. The characteristic l 1 shows the speed characteristic from B→E→C, and the characteristic l 2 shows the speed characteristic from A→D→B. However, the characteristics l 1 and l 2 are taken on the same time axis, and the PTP operation is performed on the time axis shown in the figure. That is,
The hand is moved at a constant speed v a during the interval. At point D, vectors in two directions DB→, BE→ 〓 a ,
〓 Give b . This vector gives for time t o .
Due to these two vectors 〓 a , 〓 b , the movement route does not become D → B → E → C, but rather D
It moves in the direction of E while drawing a curve following the composite vector of vectors 〓 a and 〓 b . t o
After a period of time, it reaches position E and moves at a constant speed v b during that time.

第4図に、点Dで2方向DB→、BE→のベクトル〓
,〓bを与えた場合の点Dから点Eへの移動経路
を示す。点Dから点Eへの移動経路は本来連続的
であるが、サンプリング点に従つて移動させてい
るため、その経路は不連続となつている。サンプ
リング点の考え方は、間を例えば6点D1
D2,D3,D4,D5,Bサンプルし、間を6点
E1,E2,E3,E4,E5,Eサンプルし、各サンプ
ル点の合成点毎にベクトル〓a,〓bを与えて合成
ベクトルる得る。この合成ベクトルで形成される
経路(D→P1→P2→P3→P4→P5→E)が各サン
プル点の合成点対応位置となる。以上でのD→E
の経路が位置補間された経路を示す。
In Figure 4, vectors in two directions DB→, BE→ at point D
The moving route from point D to point E is shown when a , = b is given. The movement path from point D to point E is originally continuous, but since the movement is made according to the sampling points, the path is discontinuous. The idea of sampling points is to set the interval between, for example, 6 points D 1 ,
D 2 , D 3 , D 4 , D 5 , B samples, 6 points in between
Sample E 1 , E 2 , E 3 , E 4 , E 5 , E, and give vectors 〓 a , 〓 b to each composite point of each sample point to obtain a composite vector. The path formed by this composite vector (D→P 1 →P 2 →P 3 →P 4 →P 5 →E) becomes the composite point corresponding position of each sample point. D → E in the above
The route shown in FIG.

以上の位置補間での位置ベクトルは以下とな
る。今、点Dでの時間をt=0とする。ベクトル
a方向速度成分はa(to−t)、ベクトル〓b方向
速度成分はbtである。従つて、t時間後の移動成
分は、ベクトル〓aに関しては−1/2a(to−t)2、 ベクトル〓bに関しては1/2bt2となる。これによ り、点DE間の位置ベクトル〓(t)は、 〓(t)=〓b−1/2a(to−t)2a+1/2bt2
b ……(8) となる。これより、速度を求めると、 d〓(t)/dt=a(to−t)〓a+b+〓b =atoa+(b〓b−a〓a)t =vaa+(vbb−vaa)t/to ……(9) となる。加速度は d2〓(t)/dt2=b〓b−a〓a =vbb−vaa/to =一定 ……(10) となる。かかる(9)、(10)式より、DE間では速度は
連続であり、且つ補間域前後の速度は連続であ
る。
The position vector in the above position interpolation is as follows. Now, let the time at point D be t=0. Vector 〓 The velocity component in the a direction is a(t o −t), and the velocity component in the b direction of vector 〓 is bt. Therefore, the moving component after time t is −1/2a(t o −t) 2 for the vector 〓a , and 1/2bt 2 for the vector 〓b . As a result, the position vector 〓(t) between points DE is: 〓(t)=〓 b −1/2a(t o −t) 2a +1/2bt 2
b ……(8) becomes. From this, finding the speed, d〓(t)/dt=a(t o −t)〓 a + b+〓 b = at oa + (b〓 b −a〓 a )t = v aa + (v bb −v aa ) t/t o ...(9). The acceleration is d 2 〓(t)/dt 2 = b 〓 b − a 〓 a = v bb − v aa / t o = constant (10). From these equations (9) and (10), the speed is continuous between DEs, and the speeds before and after the interpolation area are continuous.

次に、位置補間の他の例を第5図で説明する。
第5図は、3個の経路1,2,3を示す。経路1
は、なる経路を持つ事例であり、経路2は
なる経路を持つ事例であり、経路3はHIなる経
路を持つ事例である。ここで、F点は、点Dから
Aよりに、等速度vaで時間taだけ移動した点とす
る。更に、H点は、点BからDよりに加速度aで
時間(to−tb)だけ移動した点とする。点Dは第
4図で示した点Dと同一点を示す。
Next, another example of positional interpolation will be explained with reference to FIG.
FIG. 5 shows three routes 1, 2, 3. Route 1
is an example with a path that becomes, path 2 is an example that has a path that becomes, and path 3 is an example that has a path that becomes HI. Here, point F is a point that has moved from point D to point A by a time t a at a constant velocity v a . Furthermore, it is assumed that point H is a point that has moved from point B to point D by time (t o -t b ) with acceleration a. Point D indicates the same point as point D shown in FIG.

(1) 先ず、A→F→G→Cなる経路1では、各区
間、、毎に次の如き制御を行う。
(1) First, on route 1 from A→F→G→C, the following control is performed for each section.

(1‐) 区間間の時、即ちt<0の時。(1-) Time between intervals, that is, when t<0.

t<0としたのは、F点を時間t=0とし
ているためによる。この区間では、ベクトル
a方向へは定速度移動、ベクトル〓b方向へ
は移動ベクトルを与えない。この結果、移動
はAF→の方向となる。この区間での位置ベク
トル〓(t)は、 〓(t)=〓b−{a/2t2 o+va(ta−t)〓a ……(11) となる。速度は、 d〓(t)/dt=vaa ……(12) となる。
The reason why t<0 is set is that point F is set at time t=0. In this section, constant speed movement is given in the direction of vector 〓 a , and no movement vector is given in the direction of vector 〓 b . As a result, the movement is in the direction of AF→. The position vector 〓(t) in this section is 〓(t)=〓 b −{a/2t 2 o +v a (t a −t)〓 a ...(11). The speed is d〓(t)/dt=v aa ...(12).

(1‐) 区間に相当するFG→での相当区間、即
ち、0≦t<taの時。
(1-) When the corresponding interval in FG→ corresponds to the interval, that is, 0≦t<t a .

この区間では、ベクトル〓a方向へは定速
度va移動、ベクトル〓b方向へは定加速度運
動を与える。この結果、FG→の方向にむけて
移動点は曲線変化を起す。この区間での位置
ベクトル〓(t)は、 〓(t)=〓b−{a/2t2 o+va(ta−t)}〓a ……(13) 又は 〓(t)=〓f+vat〓a+b/2t2b ……(14) となる。速度は、 d〓/dt=vaa+vbt/tob ……(15) となる。
In this section, constant velocity v a movement is given in the vector 〓 a direction, and constant acceleration motion is given in the vector 〓 b direction. As a result, the moving point causes a curved change in the direction of FG→. The position vector 〓(t) in this section is 〓(t)=〓 b − {a/2t 2 o + v a (t a − t )}〓 a ...(13) or 〓(t)=〓 f +v a t〓 a +b/2t 2b ......(14). The speed is d〓/dt=v aa +v b t/t ob (15).

(1‐) 区間に相当するFG→での相当区間、即
ち、ta≦t<toの時。
(1-) When the corresponding interval in FG→ corresponds to the interval, that is, t a ≦ t < t o .

この区間では、ベクトル〓a方向へは定減
速度移動、ベクトル〓b方向へは定加速度移
動の運動を与える。この結果、(1‐) で形
成された経路に引き続く経路として経路1上
にベクトル〓aと〓bとで合成された合成ベク
トルを得る。
In this section, constant deceleration movement is given in the vector 〓 a direction, and constant acceleration movement is given in the vector 〓 b direction. As a result, a composite vector composed of vectors 〓 a and 〓 b is obtained on path 1 as a path following the path formed in (1-).

この区間での位置ベクトル〓(t)は、 〓(t)=〓b−a/2{to−(t−ta)}2a+ b/2t2b ……(16) 又は、 〓(t)=〓f+vataa+a/2(t−ta2a+ b/2t2b =〓d+a/2(t−ta2a+b/2t2b ……(17) となる。速度は、 d〓(t)/dt=vaa+vata to)〓a +(vbb−vaa)t/to ……(18) となる。 The position vector 〓(t) in this section is 〓(t)=〓 b − a / 2 {t o − (t − t a )} 2a + b / 2t 2b ... (16) or , 〓(t)=〓 f + v a t aa + a / 2 (t - t a ) 2a + b / 2t 2b = 〓 d + a / 2 (t - t a ) 2a + b / 2t 2b ......(17) The speed is d〓(t)/dt=v aa + v a ( ta to )〓 a + (v bb − v aa ) t/t o (18).

(1‐) to≦t<to+taの時。(1-) When t o ≦ t < t o + t a .

この区間では、ベクトル〓a方向へは定減
速度移動、ベクトル〓b方向へは定速度移動
の運動を与える。位置ベクトル〓(t)は 〓(t)=〓b−a/2(to−(t−ta)}2a +{b/2t2 o+vb(t−to)}〓b……(19) 又は 〓(t)=〓d+a/2(t−ta2a+b/2t2 ob ……(20) となる。速度は、 d〓(t)/dt=vaa+vbb−vbt−ta/toa ……(21) となる。
In this section, constant deceleration movement is given in the direction of vector 〓 a , and constant speed movement is given in the direction of vector 〓 b . The position vector〓(t) is〓(t)=〓 b −a/2(t o −(t−t a )} 2a + {b/2t 2 o +v b (t−t o )}〓 b ...(19) Or 〓(t)=〓 d + a/2(t-t a ) 2a + b/2t 2 ob ......(20) The speed is d〓(t)/dt =v aa +v bb −v b t−t a /t oa ...(21).

(1―) t≧to+taの時。(1―) When t≧t o +t a .

この区間では、ベクトル〓a方向へは移動
なしで、ベクトル〓b方向へは定速度移動を
行わせる。この時の位置ベクトル〓(t)
は、 〓(t)=〓b+{b/2t2 o+vb(t−to)}〓b ……(22) 又は、 〓(t)=〓d+a/2(to+ta−ta)〓2 a +b/2t2 ob+vb(t−to)〓b ……(23) となる。速度は、 d〓(t)/dt=vbb ……(24) となる。
In this section, there is no movement in the vector 〓 a direction, and constant velocity movement is performed in the vector 〓 b direction. Position vector at this time = (t)
is: 〓(t)=〓 b + {b/2t 2 o +v b (t-t o )}〓 b ... (22) Or, 〓(t)=〓 d + a/2 (t o +t a - t a )〓 2 a + b/2t 2 ob + v b (t-t o )〓 b ......(23). The speed is d〓(t)/dt=v bb (24).

以上の(1‐) 〜(1‐) で、各区間内における
速度の連続性は明らかであるから、次に各区間の
境界点での連続性を示す。今、速度ベクトルv
(t)を与えると、 v(t)=d〓(t)/dt ……(25) となる。微小時間を0とすると、 v(−0)=v(+0)=vaa ……(26) v(ta−0)=v(to+0)=vbb+vata/toa ……(27) v(to+ta−0)=v(to+ta+0)=vbb
……(28) となる。これにより、速度は全区間の境界点でも
連続性を示す。
In (1-) to (1-) above, the continuity of velocity within each section is clear, so next we will show the continuity at the boundary point of each section. Now, the velocity vector v
(t) is given, v(t)=d〓(t)/dt...(25). When the minute time is 0, v(-0)=v(+0)=v aa ...(26) v(t a -0)=v(t o +0)=v bb +v a t a /t oa ...(27) v(t o +t a -0)=v(t o +t a +0)=v bb
...(28) becomes. As a result, the velocity exhibits continuity even at the boundary points of all sections.

(2) 次に、A→H→I→E→G→Cなる経路3で
は、以下となる。但し、点Hは、点Dから点B
の方向へ時間tbだけ寄つた時間での位置であ
る。今、点Hでの時間をt=0とする。この
時、点Hの位置ベクトル〓h及び位置Iの位置
ベクトル〓iは、 〓h=〓b−a/2(to−tb2a ……(29) 〓i=〓b+b/2(to−tb2b ……(30) となる。経路3上での位置ベクトル〓(t)
は、各区間で次のようになる。
(2) Next, for route 3, which is A→H→I→E→G→C, the following is true. However, point H is from point D to point B.
This is the position when the time t b moves towards the direction of . Now, let the time at point H be t=0. At this time, the position vector of point H = h and the position vector of position I = i are: 〓 h = 〓 b − a / 2 (t o − t b ) 2a ... (29) 〓 i = 〓 b + b /2(t o −t b ) 2b ......(30) Position vector on route 3〓(t)
is as follows for each interval:

(2‐) −tb≦t<0の時。(2‐) When −t b ≦t<0.

〓(t)=〓b−a/2(to−tb−t)2a ……(31) d〓(t)/dt=vato−tb−t/toa ……(32) (2‐) 0≦t<to−tbの時。 〓(t)=〓 b −a/2(t o −t b −t) 2a ...(31) d〓(t)/dt=v a t o −t b −t/t oa ...(32) (2-) When 0≦t<t o −t b .

〓(t)=〓b−a/2(to−tb−t)2a+b/2 t2b ……(33) d〓(t)/dt=vato−tb/toa+(vbb−vaa
) t/to ……(34) (2‐) to−tb≦t<toの時。
〓(t)=〓 b −a/2(t o −t b −t) 2a +b/2 t 2b ……(33) d〓(t)/dt=v a t o −t b /t oa +(v bb −v aa
) t/t o ……(34) (2-) When t o −t b ≦t<t o .

〓(t)=〓b+b/2t2b ……(35) d〓(t)/dt=vbt/tob ……(36) 以上の各区間内における速度の連続性は明らか
である。各区間の境界点でも連続性を有する。
〓(t)=〓 b +b/2t 2b ......(35) d〓(t)/dt=v b t/t ob ......(36) The continuity of the speed in each section above is it is obvious. There is continuity even at the boundary points of each section.

即ち、 v(−0)=v(+0)=vato−tb/toa……(37
) v(to−tb−0)=v(to−tb+0)=vbto−tb/to
b ……(38) となるためによる。
That is, v(-0)=v(+0)=v a t o −t b /t oa ……(37
) v(t o −t b −0)=v(t o −t b +0)=v b t o −t b /t o
b ……(38) This is because it becomes.

以上の説明から次のことが明らかとなる。A→
B→Cなる経路の他に、の経路上のどの時点
からでも曲線(上記実施例では、サンプルしてい
る故に、折点による曲線となる。但しサンプル区
間を小さくしてゆけば連続的な曲線と同じとな
る)に従つた補間が可能となる。且つの経路
上のどの時点からによる補間であつても、経路上
のすべての点に沿つて速度の連続性を持つことが
できる。これにより、ロボツトハンドの駆動が容
易となる。
From the above explanation, the following becomes clear. A →
In addition to the path B→C, you can also create a curve from any point on the path (in the above example, since sampling is performed, the curve is a curve based on a break point. However, if the sample interval is made smaller, a continuous curve can be created) It is possible to perform interpolation according to Even if interpolation is performed from any point on the route, velocity continuity can be achieved along all points on the route. This makes it easier to drive the robot hand.

次に、各経路1,2,3,4での点Fから点G
までの移動時間を比較する。
Next, from point F to point G on each route 1, 2, 3, 4
Compare the travel time to.

(1) 経路1での移動時間。(1) Travel time on route 1.

ベクトル〓a方向成分では最初の時間taの間
は定速度移動、次の時間toの間は等減速度移動
である。ベクトル〓b方向成分では、最初の時
間toの間は、等加速度移動、次の時間taの間は
定速度移動である。従つて、移動時間tlは tl=ta+to ……(39) となる。
Vector 〓 In the a direction component, it moves at a constant speed during the first time t a , and moves at a constant deceleration during the next time t o . Vector 〓 In the b -direction component, during the first time t o it moves with constant acceleration, and during the next time t a it moves at a constant velocity. Therefore, the travel time t l is t l = t a + t o (39).

(2) 経路2での移動時間。(2) Travel time on Route 2.

経路を、、と3分割して考えると、
区間では、時間taの間、ベクトル〓a方向成
分のみ定速度で移動し、区間では、toの間
は、ベクトル〓a方向成分では等減速度移動で
あり、同時にベクトル〓b方向成分では等加速
度移動である。区間では、時間taの間は、
ベクトル〓b方向成分のみ定速度移動であるか
ら、全区間の移動時間は、区間とと
での総移動時間となる。従つて、移動時間tl
は、 tl=ta+to+ta =2ta+to ……(40) (3) 経路3での移動時間。
If we divide the route into three parts,
In the interval, during time t a , only the component in the direction of vector 〓 a moves at a constant speed, and in the interval t o , the component in the direction of vector 〓 a moves at a constant deceleration, and at the same time, the component in the direction of vector 〓 b moves at a constant speed. It is a movement with constant acceleration. In the interval, during time t a ,
Vector 〓 Since only the b- direction component moves at a constant speed, the travel time for the entire section is the total travel time between the sections. Therefore, the travel time t l
is, t l = t a + t o + t a = 2t a + t o ……(40) (3) Travel time on route 3.

経路3を、区間、、、、と5
分割してそれぞれの区間での移動時間は、 区間の移動時間=ta 区間の移動時間=tb 区間の移動時間=to−tb 区間IEの移動時間=tb 区間EGの移動時間=ta 従つて、経路3での移動時間tlは、 tl=to+2ta+tb ……(41) となる。
Route 3 is divided into sections, , and 5
The travel time for each section is as follows: Travel time for section = t Travel time for section a = t Travel time for section b = t o -t Travel time for section b IE = t Travel time for section b EG = t a Therefore, the travel time t l on route 3 is t l =t o +2t a +t b (41).

(4) 経路4での移動時間。(4) Travel time on Route 4.

経路を区間と区間と2分割する。区間
FBでは、ベクトル〓a方向成分のみの定速度移
動であり、区間の距離は、1/2vato+vataで あるから、この距離を定速度vaで移動すると、
移動時間は、1/2to+taとなる。同様に区間 では、距離は1/2vbto+vltaであり、定速度で移 動してかかる時間は、1/2to+taとなる。従つ て、経路4の移動時間tlは tl=to+2ta ……(42) となる。
Divide the route into two sections. section
In FB, only the vector 〓 a direction component moves at a constant speed, and the distance of the section is 1/2 v a t o + v a t a , so if you move this distance at a constant speed v a ,
The travel time is 1/2t o +t a . Similarly, in the section, the distance is 1/2v b t o +v l t a , and the time it takes to move at a constant speed is 1/2 t o +t a . Therefore, the travel time t l for route 4 is t l =t o +2t a (42).

以上の4つの経路の比較をすると、線分ABか
ら線分BCへの移行をA→B→Cなる経路ではな
く、減速開始点Dより点Aの方向へ寄つたFで開
始すると、A→B→Cなる経路4の場合よりも移
動時間を短縮することができる。
Comparing the above four routes, if we start the transition from line segment AB to line segment BC not on the route A → B → C, but on F, which is closer to point A than the deceleration starting point D, then A → The travel time can be shorter than in the case of route 4 from B to C.

第6図は、本発明の処理システムの実施例図を
示す。プロセツサ1はバス2を介してメモリ3、
テーブル4、乗除算器5、出力ポート6、入力ポ
ート7、テイーチングボツクス8とインターフエ
ースする。出力ポート6、入力ポート7はロボツ
ト本体9とバス2との間の入出力部を形成する。
FIG. 6 shows an embodiment of the processing system of the present invention. Processor 1 connects to memory 3 via bus 2.
It interfaces with a table 4, a multiplier/divider 5, an output port 6, an input port 7, and a teaching box 8. The output port 6 and the input port 7 form an input/output section between the robot body 9 and the bus 2.

プロセツサ1は各種の演算制御、及びバスを介
したメモリ3、テーブル4、乗除算器5、出力ポ
ート6、入力ポート7、テイーチングボツクス8
の管理を行う。メモリ2は、演算制御用のプログ
ラム及び各種のデータを格納する。テーブル4
は、三角関数、逆三角関数等を格納するデータテ
ーブルである。
The processor 1 controls various calculations, and also controls the memory 3, table 4, multiplier/divider 5, output port 6, input port 7, and teaching box 8 via the bus.
management. The memory 2 stores arithmetic control programs and various data. table 4
is a data table that stores trigonometric functions, inverse trigonometric functions, etc.

乗除算器5は乗除算専用のハードウエアであ
る。テイーチングボツクス8は、テイーチング時
のマン―マシンインターフエイス用のコンソール
である。このテイーチングボツクス8によつて指
示されてロボツトの駆動系或いはセンサから得ら
れるテイーチングデータはメモリ3に格納され
る。
The multiplier/divider 5 is hardware dedicated to multiplication/division. The teaching box 8 is a console for man-machine interface during teaching. Teaching data instructed by the teaching box 8 and obtained from the robot's drive system or sensors is stored in the memory 3.

第5図に示した経路の中のどれを補間用として
選択するかは、動作モード及び各テイーチングデ
ータによつて事前に設定しておく。この選択の指
示はプロセツサ1が行う。
Which of the routes shown in FIG. 5 is selected for interpolation is set in advance based on the operation mode and each teaching data. The processor 1 instructs this selection.

動作を説明する。 Explain the operation.

先ず、テイーチングボツクス8からの指示によ
りロボツト本体9の所定の部位を所定の位置まで
駆動し、この位置におけるアクチユエータの変位
検出器(図示せず)の値を読み取り、この値から
ハンドの空間内における位置を計算しテイーチン
グデータとしてメモリ3に格納する。実際の操作
時には、先ずメモリ3から動作モードに従つてテ
イーチングデータを読出す。次にテイーチングボ
ツクス8による指示(例えば速度の指示)に従つ
て、テイーチングデータの点間の補間処理を行
う。
First, a predetermined part of the robot body 9 is driven to a predetermined position according to instructions from the teaching box 8, the value of the displacement detector (not shown) of the actuator at this position is read, and from this value the position within the space of the hand is determined. The position is calculated and stored in the memory 3 as teaching data. During actual operation, teaching data is first read out from the memory 3 according to the operating mode. Next, according to instructions from the teaching box 8 (for example, speed instructions), interpolation processing between points of the teaching data is performed.

点間の補間処理を第5図の事例で説明する。先
ず、定速度va,vb、及び加速度a,b、選択経路
を指定する。この指定はプロセツサ1が行う。プ
ロセツサ1は上記各指定値に基づき選択経路に従
つた補間処理を行う。この補間処理とは、上記選
択経路の細分化、細分化した区間内での方向ベク
ル及びその速度等の指定を云う。乗除算器5は各
区間毎に補間演算を行う。補間演算は前述した各
種の演算式であり、乗算、除算、加算、減算の組
合せより成る単純な演算に係る。乗除算器5の出
力は、テーブル4の内容を利用してハンドの対偶
変位に座標変換を受け、出力ポート6を通じてロ
ボツト本体7に送られアクチユエータの作動を行
う。
Interpolation processing between points will be explained using the example shown in FIG. First, constant velocities v a and v b , accelerations a and b, and a selected route are specified. This specification is made by the processor 1. The processor 1 performs interpolation processing according to the selected path based on the above specified values. This interpolation process refers to subdividing the selected route and specifying the direction vector, its speed, etc. within the subdivided section. The multiplier/divider 5 performs interpolation calculations for each section. The interpolation calculations are the various calculation formulas described above, and relate to simple calculations consisting of combinations of multiplication, division, addition, and subtraction. The output of the multiplier/divider 5 undergoes coordinate transformation into the pairwise displacement of the hand using the contents of the table 4, and is sent to the robot body 7 through the output port 6 to operate the actuator.

この際の座標変換の意味は以下となる。テイー
チングデータはアクチユエータの変位検出器の検
出位置でのデータであり、実際のアクチユエータ
の位置とは異なる。また、ハンドは対偶変位とし
て操作入力を受けて作動する。かかる対偶変位を
出力するに必要な処理が座標変換処理である。こ
の処理はプロセツサ1が行う。かかる実施例によ
れば演算内容は簡単であり且つ速度の連続性を保
持できる。実時間でハンド補間制御が可能となつ
た。2本の線分、が第9図に示す如く一
直線上にある場合の経路補間を説明する。第7
図、第9図に示すごとく、まず線分AB上を定速
度vaで移動中時刻T1で等減速度aで減速し時刻
T2で速度ゼロとなるとともに点Bに達するよう
に等減速度a及び減速開始点G1を決定する。こ
の減速に要した時間と同じ時間点Bから点C方向
へ加速し時刻T3で速度vbとなるように等加速度
b及び加速終了点G2を決定する。
The meaning of the coordinate transformation in this case is as follows. The teaching data is data at the detection position of the actuator displacement detector, and is different from the actual actuator position. Further, the hand operates in response to an operation input as a pair of displacements. The processing necessary to output such pairwise displacements is coordinate transformation processing. This processing is performed by the processor 1. According to this embodiment, the calculation contents are simple and continuity of speed can be maintained. Hand interpolation control is now possible in real time. Route interpolation when two line segments are on a straight line as shown in FIG. 9 will be explained. 7th
As shown in FIG .
A constant deceleration a and a deceleration start point G1 are determined so that the speed becomes zero at T2 and reaches point B. A uniform acceleration b and an acceleration end point G2 are determined so that the vehicle accelerates in the direction of point C from time point B, which is the same time as the time required for this deceleration, and reaches a speed v b at time T3 .

次に第9図点G1と点G2の区間を点G1、時刻T1
に等減速度aで減速を開始すると同時に等加速度
bで加速を開始すると、第8図に示す速度曲線と
なり、時刻T3′において第9図に示す点G2に達す
る。
Next, the section between point G 1 and point G 2 in Figure 9 is defined as point G 1 and time T 1
When deceleration is started at a constant deceleration a and acceleration is simultaneously started at a constant acceleration b, the speed curve becomes as shown in FIG. 8, and the point G 2 shown in FIG. 9 is reached at time T 3 '.

次に移動時間について示す。 Next, the travel time will be explained.

減速に要する時間をtoとすると、等減速度a=
−va/to、等加速度b=vb/toであり、区間G1B
の距離は1/2vato、区間G2Bの距離は1/2vbtoであ る。従つて 〔区間G1Bを等速度vaで移動するに要する時
間〕+〔区間G2Bを等速度vbで移動するに要する時
間〕=1/2to+1/2to=to また、〔区間G1G2を等加速度(b−a)で移動
するに要する時間〕=〔区間G1G2の距離〕/{1/2 〔等加速度(b−a)〕×〔移動時間〕} 故に となる。
If the time required for deceleration is to , then uniform deceleration a=
−v a /t o , uniform acceleration b = v b /t o , and interval G 1 B
The distance of G 2 B is 1/2v a t o , and the distance of section G 2 B is 1/2v b t o . Therefore, [time required to move in section G 1 B at constant speed v a ] + [time required to move in section G 2 B at constant speed v b ] = 1/2t o + 1/2t o = t o or , [Time required to move the section G 1 G 2 with uniform acceleration (ba-a)] = [distance of section G 1 G 2 ] / {1/2 [uniform acceleration (ba-a)] x [travel time 〕} Therefore becomes.

従つて本発明の経路補間方法を用いると、移動
時間は線分上を一定速度va、線分上を一定
速度vbで移動させた場合と等しくすることができ
る。
Therefore, by using the route interpolation method of the present invention, the travel time can be made equal to the case of moving on a line segment at a constant speed v a and moving on a line segment at a constant speed v b .

2本の平行な直線、があつて、両者の
中継経路を補間する場合にあつても本発明は適用
できる。更に、PTP動作としてはデカルト座標
系における直線だけでなく、ロボツトのアクチユ
エータの変位を座標軸にとつた座標系での直線駆
動の場合にも適用できる。
The present invention can be applied even when there are two parallel straight lines and a relay route between the two is interpolated. Furthermore, the PTP operation can be applied not only to a straight line in a Cartesian coordinate system, but also to a linear drive in a coordinate system in which the displacement of a robot's actuator is taken as the coordinate axis.

本発明によれば、速度の連続性を維持したまま
の補間制御を達成できた。且つその補間処理内容
は簡単であるため、補間処理時間が短縮でき、補
間制御を実時間で行えた。
According to the present invention, interpolation control can be achieved while maintaining velocity continuity. Moreover, since the contents of the interpolation process are simple, the interpolation process time can be shortened and interpolation control can be performed in real time.

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

第1図はPTP動作説明図、第2図は本発明の
原理説明図、第3図は経路説明図、第4図は経路
の補間の説明図、第5図は多数の経路補間の説明
図、第6図は本発明の実施例図、第7図、第8
図、第9図は一直線上のPTP動作における補間
の説明図である。 1……プロセツサ、2……バス、3……メモ
リ、4……テーブル、5……乗除算器、6……出
力ポート、7……入力ポート、8……テイーチン
グボツクス、9……ロボツト本体。
Fig. 1 is an explanatory diagram of PTP operation, Fig. 2 is an explanatory diagram of the principle of the present invention, Fig. 3 is an explanatory diagram of a route, Fig. 4 is an explanatory diagram of route interpolation, and Fig. 5 is an explanatory diagram of multiple route interpolation. , FIG. 6 is an embodiment of the present invention, FIG. 7, and FIG.
9 are explanatory diagrams of interpolation in PTP operation on a straight line. 1... Processor, 2... Bus, 3... Memory, 4... Table, 5... Multiplier/divider, 6... Output port, 7... Input port, 8... Teaching box, 9... Robot body .

Claims (1)

【特許請求の範囲】[Claims] 1 3点以上の点を与えて、これらの点を直線で
結ぶロボツトハンドの折線経路の補間方法におい
て、経路の折点となるある中間点の手前で、該中
間点方向の直線に沿つて該中間点で速度が単調減
少で零になるように補間し、かつ、該中間点から
次の直線に沿つて速度が零から単調増加で定めら
れた速度に達するように補間し、前記速度減少の
ための補間により定まつた位置に、前記速度増加
のための補間により定まつた位置の前記中間点か
らの増分を加える操作を行なうことにより、前記
中間点の近傍で2本の直線間を速度が不連続にな
らないように連結した経路を形成することを特徴
とするロボツトハンドの経路補間方法。
1 In the method of interpolating a broken line path of a robot hand by giving 3 or more points and connecting these points with a straight line, before a certain intermediate point that is the breaking point of the path, along the straight line in the direction of the intermediate point, Interpolate so that the speed monotonically decreases to zero at the intermediate point, and interpolate so that the speed monotonically increases from zero to a predetermined speed from the intermediate point along the next straight line, and By adding an increment from the intermediate point of the position determined by interpolation to increase the speed to the position determined by interpolation for increasing the speed, the speed between the two straight lines near the intermediate point is increased. A path interpolation method for a robot hand, characterized in that a path is formed so that the paths are not discontinuous.
JP14615182A 1982-08-25 1982-08-25 Method for interporating route of robot hand Granted JPS5936811A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP14615182A JPS5936811A (en) 1982-08-25 1982-08-25 Method for interporating route of robot hand

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP14615182A JPS5936811A (en) 1982-08-25 1982-08-25 Method for interporating route of robot hand

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP10293190A Division JPH02288903A (en) 1990-04-20 1990-04-20 Course interpolating method for robot hand

Publications (2)

Publication Number Publication Date
JPS5936811A JPS5936811A (en) 1984-02-29
JPH0127443B2 true JPH0127443B2 (en) 1989-05-29

Family

ID=15401283

Family Applications (1)

Application Number Title Priority Date Filing Date
JP14615182A Granted JPS5936811A (en) 1982-08-25 1982-08-25 Method for interporating route of robot hand

Country Status (1)

Country Link
JP (1) JPS5936811A (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60193015A (en) * 1984-03-14 1985-10-01 Hitachi Ltd Route interpolation method of robot hand
JPS6197708A (en) * 1984-10-18 1986-05-16 Komatsu Ltd Continuous route forming method of robot
JPS61122710A (en) * 1984-11-20 1986-06-10 Matsushita Electric Ind Co Ltd Speed control method of robot
JPS61156309A (en) * 1984-12-27 1986-07-16 Toshiba Mach Co Ltd Numerically controlled device containing speed difference smoothing function
JPS61157909A (en) * 1984-12-29 1986-07-17 Fanuc Ltd System for correcting route error of robot
JP2645551B2 (en) * 1986-06-26 1997-08-25 横河電機株式会社 Robot controller
JPH0830975B2 (en) * 1986-07-02 1996-03-27 松下電器産業株式会社 Control method for articulated robot
JPS6426911A (en) * 1987-07-23 1989-01-30 Daikin Ind Ltd Locus control method for robot
JP5573664B2 (en) * 2010-12-27 2014-08-20 ブラザー工業株式会社 Numerical control apparatus, movement control method, movement control program, and storage medium

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5574605A (en) * 1978-11-29 1980-06-05 Hitachi Ltd Operation control system for industrial robbot or the like
JPS55118107A (en) * 1979-03-05 1980-09-10 Hitachi Ltd Method and device for control of automatic working device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5574605A (en) * 1978-11-29 1980-06-05 Hitachi Ltd Operation control system for industrial robbot or the like
JPS55118107A (en) * 1979-03-05 1980-09-10 Hitachi Ltd Method and device for control of automatic working device

Also Published As

Publication number Publication date
JPS5936811A (en) 1984-02-29

Similar Documents

Publication Publication Date Title
EP0130570B1 (en) Method and apparatus for controlling a robot hand along a predetermined path
JP3485639B2 (en) Path planning method and system in rectangular coordinate space
US4683543A (en) Time-based interpolation control of a robot
JPH0127443B2 (en)
JP3476287B2 (en) Curve interpolation method for speed control during robot connection operation
KR101337650B1 (en) Realtime weaving motion control device and realtime weaving motion control method
JP2790643B2 (en) Numerical control unit
JPH0580002B2 (en)
JPH0695726A (en) Route interpolating method for robot hand
JPS634201B2 (en)
JPH07210233A (en) Interpolating method for robot tracking and device therefor
JPH02148111A (en) Method and device for controlling robot
KR102470393B1 (en) Spline path generating device
JPH0623928B2 (en) Robot hand trajectory correction method
JPS6010309A (en) Method for interpolating path of robot hand
JPS6284304A (en) Locus interpolating device for industrial robot
JPS59163609A (en) Route interpolating method of robot hand
JPH0991020A (en) Method for controlling teaching robot
KR100917510B1 (en) Method for interpolating ellipse in a positioning controller
JPS6272007A (en) Buffer control method for robot
JPH0363105B2 (en)
KR100218379B1 (en) Method for control robot arm
KR100724494B1 (en) Interpolation operation apparatus and method for motion control module
JPH01286002A (en) Curve interpolating system
JPH05274026A (en) Method for generating interpolation between teaching point of ptp type robot