JPH0580002B2 - - Google Patents

Info

Publication number
JPH0580002B2
JPH0580002B2 JP10293190A JP10293190A JPH0580002B2 JP H0580002 B2 JPH0580002 B2 JP H0580002B2 JP 10293190 A JP10293190 A JP 10293190A JP 10293190 A JP10293190 A JP 10293190A JP H0580002 B2 JPH0580002 B2 JP H0580002B2
Authority
JP
Japan
Prior art keywords
point
vector
path
time
speed
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 - Lifetime
Application number
JP10293190A
Other languages
Japanese (ja)
Other versions
JPH02288903A (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 JP10293190A priority Critical patent/JPH02288903A/en
Publication of JPH02288903A publication Critical patent/JPH02288903A/en
Publication of JPH0580002B2 publication Critical patent/JPH0580002B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Numerical Control (AREA)
  • Manipulator (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、折線をロボツトハンドの経路とする
場合、ロボツトハンドの速度を連続的とし折点近
傍でロボツトハンドの経路が曲線状となるように
経路補間するロボツトハンドの経路補間方法に関
する。
[Detailed Description of the Invention] [Field of Industrial Application] The present invention provides a method in which, when a broken line is used as the path of a robot hand, the speed of the robot hand is made continuous so that the path of the robot hand becomes curved near the bending point. The present invention relates to a route interpolation method for a robot hand.

〔従来の技術〕[Conventional technology]

ロボツトの移動経路の操作方法の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本の折線を指定さ
れた半径を持つ円弧で連続化させる。
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.

〔発明が解決しようとする課題〕[Problem to be solved by the invention]

かかる従来例では、折線をもとにした円弧の計
算が複雑であること、その結果、ロボツトの経路
移動前の計算時間に多大の時間を要し、ロボツト
の経路移動を実時間で行い得ないとの欠点を持
つ。更に、関節形ロボツトの各関節の動きを座標
にとつた関節角動作でのPTP動作高速化への応
用ができにくい欠点を持つ。
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.

本発明の目的は、PTP動作の高速化を達成し
てなる経路補間方法を提供するものである。
An object of the present invention is to provide a route interpolation method that achieves high-speed PTP operation.

〔課題を解決するための手段〕[Means to solve the problem]

上記目的を達成するために、ロボツトハンドの
折線経路の補間方法であつて、前記折線経路上の
点Aから折点Bの方向へ進み前記折点Bにおいて
速度が零となる方向の第1の速度ベクトルと、前
記折点Bから折線経路上の点Cの方向へ進む速度
を零から単調増加させる第2の速度ベクトルとの
合成速度ベクトルを単位時間毎に求め、前記単位
時間毎に求めた合成ベクトルをその時点における
ロボツトハンドの位置ベクトルに加えたものを位
置指令量としてロボツトハンドを制御し、前記ロ
ボツトハンドの経路が曲線状となるように経路を
補間するようにしたものである。
In order to achieve the above object, there is provided a method for interpolating a broken line path of a robot hand, which includes a method for interpolating a broken line path of a robot hand, in which the robot hand moves from a point A on the broken line path in a direction to a breaking point B, and at the breaking point B, the velocity becomes zero. A composite velocity vector of the velocity vector and a second velocity vector that monotonically increases the velocity from zero to the direction of point C on the broken line path from the breaking point B is determined for each unit time, and is determined for each unit time. The robot hand is controlled by using the resultant vector added to the position vector of the robot hand at that point as a position command amount, and the path of the robot hand is interpolated so that the path of the robot hand becomes a curved line.

また、前記第1の速度ベクトルを、折点Bにお
いて零となるように単調減少させる速度ベクトル
として経路を補間するようにしたものである。
Further, the route is interpolated by using the first velocity vector as a velocity vector that monotonically decreases to zero at the corner point B.

〔作用〕[Effect]

折点方向の速度を折点で零になるように単調減
少させる方向のベクトルと、折点から次の点の方
向成分として速度零から速度を単調増加させる方
向のベクトルとの合成ベクトルを折点の手前でロ
ボツトハンドに与えることにより、ロボツトハン
ドの速度が連続的となり、2つのベクトルを合成
するだけで曲線状の経路が得られるため、2直線
を円弧で結ぶ従来のものに比べ、計算が容易なた
め処理時間が短くて済むものである。しかも、得
られた経路は、折点を通過しない連続的なもので
あるため、ロボツトハンドの移動にかかる時間を
短縮することができるものである。
The composite vector of the vector in the direction that monotonically decreases the velocity in the direction of the break point so that it becomes zero at the break point, and the vector in the direction that monotonically increases the speed from zero to the next point from the break point is the vector at the break point. By applying this to the robot hand before , the speed of the robot hand becomes continuous, and a curved path can be obtained just by combining two vectors, which makes calculations easier than the conventional method that connects two straight lines with a circular arc. Since it is easy, the processing time is short. Moreover, since the obtained route is continuous and does not pass through any turning points, the time required for moving the robot hand can be shortened.

〔実施例〕〔Example〕

以下、図面により本発明を詳述する。 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.

今、間を速度νa、間を速度νbとで移動さ
せ、且つこの移動はサンプリング時間T単位に行
うものとする。従つて、間のサンプリング点
数をna、間のサンプリング点数をnbとすると、
na=〔AB/νaT〕 ……(1) nb=〔BC/νbT〕 ……(2) の関係となる。ここに〔 〕なるカツコの意味
は、例えば(1)式では、naは、 AB/νaT≦na<AB/νaT+1 ……(3) の範囲の自然数であることを示す。従つて、各々
のサンプリング点における目標点は、それぞれ
ABをna等分、をnb等分する点となる。
Assume that the movement is performed at a speed ν a in between and at a speed ν b in the interval, 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
The relationship is n a = [AB/ν a T] ...(1) n b = [BC/ν b T] ...(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≦ na < AB/v a T+1 . . . (3). 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への方向を
単位ベクトルea、点Bから点Cへの方向を単位ベ
クトルebとし、線分間の定速域の速度をνa
線分間の定速域の速度をνbとする。更にベク
トルea方向の減速時間とベクトルeb方向の加速時
間を同一とし、その値をtoとする。更に、ベクト
ルea方向の速度単調減少を等減速度a、ベクトル
eb方向の速度単調増加を等加速度bとする。かか
る関係のもとでは、a、bは、 a=νa/to ……(4) b=νb/to ……(5) となる。
As shown in Figure 2, the direction from point A to point B is a unit vector e a , the direction from point B to point C is a unit vector e b , and the speed in the constant speed region of the line segment is ν a ,
Let the velocity in the constant velocity region between the line segments be ν b . Furthermore, the deceleration time in the direction of the vector e a and the acceleration time in the direction of the vector e b are made the same, and their value is set to t o . Furthermore, the monotonous decrease in velocity in the direction of vector e a is expressed as constant deceleration a, vector
e Let the monotonous increase in velocity in the b direction be constant acceleration b. Under such a relationship, a and b are as follows: a=ν a /t o ...(4) b=ν b /t o ...(5).

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

d=〓b−1/2at2 oa=〓b−1/2νatoa……
(6) 〓c=〓b+1/2bt2 ob=〓b+1/2νbtob……
(7) 以上の如き経録補間によれば、A→Dの経路で
は定速度νaの移動を行い、D→Bの経路では定減
速度aに従つて減速し、点Bでは速度ゼロとな
る。次いで、B→Eの経路では定加速度bに従つ
て速度ゼロから連続的に速度を増してゆき、点E
では定速度νbとなる。次いで、E→Cの経路で
は、定速度νbに従つて移動する。
d =〓 b −1/2at 2 oa =〓 b −1/2ν a t oa ……
(6) 〓 c =〓 b +1/2bt 2 ob =〓 b +1/2ν b t ob ……
(7) According to the above-mentioned historical interpolation, the path from A to D moves at a constant speed ν a , the path from D to B decelerates according to the constant deceleration a, and at point B the speed is zero. Become. Next, on the path B→E, the speed increases continuously from zero according to the constant acceleration b, and reaches point E.
Then, the speed becomes constant ν b . Next, on the path E→C, it moves at a constant speed ν 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動作を行わせる。即ち、
ハンドに対して、間は定速度νaで移動させる。
点Dで2つの方向DB→、BE→へのベクトル〓a、〓b
を与える。このベクトルは時間toの間与える。こ
の2つのベクトル〓a、〓bによつて、移動経路は
D→B→E→Cとはならず、Bを介さずに、Dか
らE方向にむけて、ベクトル〓a、〓bとの合成ベ
クトルに従つた曲線を描きながら移動する。to
間後、位置Eに到達し、間は定速度νbで移動
させる。
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 ν a during the interval.
At point D, vectors in two directions DB→, BE→ 〓 a , 〓 b
give. This vector gives for time t o . Due to these two vectors 〓 a and 〓 b , the movement route does not become D → B → E → C, but instead goes from D to E direction without going through B. Moves while drawing a curve following the resultant vector. After t o time, it reaches position E and moves at a constant speed ν 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サンプルし、各サンプ
ル点の合成点毎にベクトルea、ebを与えて合成ベ
クトルし得る。この合成ベクトルで形成される経
路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
E 1 ; E 2 , E 3 , E 4 , E 5 , E are sampled, and vectors e a and e b are given to each composite point of each sample point to form a composite vector. The path D → P 1 → P 2 → P 3 → P 4 → P 5 → E formed by this composite vector becomes the composite point corresponding position of each sample point. The above route from D to E indicates a route whose position has been interpolated.

以上の位置補間での位置ベクトルは以下とな
る。今、点Dでの時間をt=0とする。ベクトル
a方向速度成分はa(to−t)、ベクトル〓b方向
速度成分はbtである。従つて、t時間後の移動成
分は、ベクトル〓aに関しては−1/2a(to−t)2、 ベクトル〓bに関しては1/2bt2となる。これによ り、点DE間の位置ベクトルP(t)は、 〓(t)=〓b−1/2a(to−t)2a+1/2bt2b ……(8) となる。これより、速度を求めると、 d〓(t)/dt=a(to−t)〓a+bt〓b=atoa+(b
b−a〓a)t=νaa+(νbb−νaa)t/to
…(9) となる。加速度は d2〓(t)/dt2=b〓b−a〓a=νbb−νaa/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 P(t) between the points DE becomes: 〓(t)=〓 b -1/2a(t o -t) 2a + 1/2bt 2b (8). From this, finding the speed, d〓(t)/dt=a(t o -t)〓 a + bt〓 b = at oa + (b
b −a〓 a )t=ν aa +(ν bb −ν aa )t/t o ...
…(9) becomes. The acceleration is d 2 〓(t)/dt 2 = b 〓 b − a 〓 a = ν bb − ν 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
よりに、等速度νaで時間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 paths 1, 2, 3. Route 1
is an example that has a path that is, path 2 is an example that has a path that is, and path 3 is an example that has a path that is HI. Here, point F is from point D to A
Therefore, let it be a point that has moved for a time t a with a constant velocity ν a . Furthermore, point H is a point that has moved from point B to point D by a 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-) interval, that is, t<0.

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

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

この区間では、ベクトルea方向へは定速度
νa移動、ベクトル〓b方向へは定加速度運動
を与える。この結果、FG→の方向にむけて移
動点は曲線変化を起す。この区間での位置ベ
クトル〓(t)は、 〓(t)=〓b−{a/2t2 o+νa(ta−t)}〓a……(13
) 又は 〓(t)=〓∫+νat〓a+b/2t2b……(14) となる。速度は、 d〓/dt=νaa+νbt/tob ……(15) となる。
In this section, constant velocity ν a movement is given in the vector e 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 + ν a (t a − t)}〓 a ...(13
) or 〓(t)=〓∫+ν a t〓 a + b/2t 2b ...(14). The speed is d〓/dt=ν aab t/t ob ...(15).

(1‐) 区間に相当するFG→での相当区間、即
ち、ta≦t<toの時。
(1-) The corresponding interval in FG→ corresponding to the interval, that is, when 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 by (1-).

この区間での位置ベクトル〓(t)は、 〓(t)=〓b−a/2{to−(t−ta)}2a +b/2t2b ……(16) 又は 〓(t)=〓∫−νataa+a/2(t−ta2a +b/2t2b=〓d+a/2(t−ta2a +b/2t2b ……(17) となる。速度は、 d〓(t)/dt=νaa+νa(ta/to)〓a +(νbb−νaa)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)=〓∫−ν a t aa +a/2(t-t a ) 2a +b/2t 2b =〓 d +a/2(t-t a ) 2a +b/2t 2b ……(17) becomes. The speed is d〓(t)/dt=ν aa + ν a (t a /t o )〓 a + (ν bb − ν 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+νb(t−to)}〓b ……(19) 又は、 〓(t)=〓d−a/2(t−ta2a+b/2t2 ob ……(20) となる。速度は、 d〓(t)/dt=νaa+νbb−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 ob (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=ν aabb −v b t−t a /t oa ...(21).

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

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

以上の(1−)〜(1‐)で、各区間内
における速度の連続性は明らかであるから、次
に各区間の境界点での連続性を示す。今、速度
ベクトルν(t)を与えると、 ν(t)=d〓(t)/dt ……(25) となる。微小時間を0とすると、 ν(−0)=ν(+0)=νaa ……(26) ν(ta−0)=ν(to+0)=νbb+νata/toa ……(27) ν(to+ta−0)=ν(to+ta+0)=νbb
……(28) となる。これにより、速度は全区間の境界点で
も連続性を示す。
In the above (1-) to (1-), since the continuity of speed within each section is clear, next we will show the continuity at the boundary point of each section. Now, given the velocity vector ν(t), ν(t)=d〓(t)/dt...(25). If the minute time is 0, ν (-0) = ν (+0) = ν aa ... (26) ν (t a -0) = ν (t o +0) = ν bb + ν a t a /t oa ...(27) ν(t o +t a -0)=ν(t o +t a +0)=ν 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上での位置ベクトルP(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) The position vector P(t) on route 3 is as follows for each section.

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

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

P(t)=〓b−a/2(to−tb−t)2a+b/2t2
b ……(33) d〓 (t)/dt=νato−tb/toa+(νbb−νa
a)t/to ……(34) (2‐) to−tb≦t<toの時。
P(t)=〓 b −a/2(t o −t b −t) 2a +b/2t 2
b ... (33) d〓 (t)/dt=ν a t o −t b /t oa + (ν bb −ν a
a ) t/t o ...(34) (2‐) t o −t b ≦t<t o .

(t)=〓b+b/2t2b ……(35) d〓 (t)/dt=νbt/tob ……(36) 以上の各区間内における速度の連続性は明らか
である。各区間の境界点でも連続性を有する。即
ち、 ν(−0)=ν(+0)=νato−tb/toea ……(37) ν(to−tb−0)=ν(to−tb+0) =νato−tb/tob ……(38) となるためによる。
(t)=〓 b +b/2t 2b ......(35) d〓 (t)/dt=ν b t/t ob ......(36) The continuity of speed within each section above is clear. It is. There is continuity even at the boundary points of each section. That is, ν(-0)=ν(+0)=ν a t o −t b /t o e a ...(37) ν(t o −t b −0)=ν(t o −t b +0) This is because =ν a t o −t b /t ob ……(38).

以上の説明から次のことが明らかとなる。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) is the same). 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 speed 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 is t l
becomes 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 区間の移動時間=tb 区間の移動時間=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 = t Travel time for section b = 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では、ベクトルea方向成分のみの定速度移
動であり、区間の距離は、1/2νato+νataで あるから、この距離を定速度νaで移動すると、
移動時間は、1/2to+taとなる。同様に区間 では、距離は1/2νbto+νltaであり、定速度で移 動してかかる時間は、1/2to+taとなる。従つ て、経路4の移動時間tlは、 tl=to+2ta ……(42) となる。
Divide the route into two sections. section
In FB, only the vector e a direction component moves at a constant speed, and the distance of the section is 1/2 ν a t o + ν a t a , so if this distance is moved at a constant speed ν 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
の管理を行う。メモリ3は、演算制御用のプログ
ラム及び各種のデータを格納する。テーブル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 3 stores programs for calculation control 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図の事例で説明する。先
ず、定速度νa、νb及び加速度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 ν a and ν 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 processing 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 and is operated by the actuator.

この際の座標変換の意味は以下となる。テイー
チングデータはアクチユエータの変位検出器の検
出位置でのデータであり、実際のアクチユエータ
の位置とは異なる。また、ハンドは対偶変位とし
て操作入力を受けて作動する。かかる対偶変位を
出力するに必要な処理が座標変換処理である。こ
の処理はプロセツサ1が行う。かかる実施例によ
れば演算内容は簡単であり且つ速度の連続性を保
持できる。実時間でハンド補間制御が可能となつ
た。2本の線分、が第9図に示す如く一
直線上にある場合の経路補間を説明する。第7
図、第9図に示すごとく、まず線分AB上を定速
度νaで移動中時刻T1で等減速度aで減速し時刻
T2で速度ゼロとなるとともに点Bに達するよう
に等減速度a及び減速開始点G1を決定する。こ
の減速に要した時間と同じ時間点Bから点C方向
へ加速し時刻T3で速度νbとなるように等加速度
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 as the time required for this deceleration, and reaches speed ν b at time T3 .

次に第9図点G1と点G2の区間を点G1、時刻T1
に等減速度aで減速を開始すると同時に等加速度
bで加速を開始すると、第8図に示す速度曲線と
なり、時刻T′3において第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
If deceleration is started at constant deceleration a at the same time and acceleration is started at constant acceleration b at the same time, the speed curve becomes as shown in FIG. 8, and the point G2 shown in FIG. 9 is reached at time T'3.

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

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

〔発明の効果〕〔Effect of the invention〕

従つて本発明の経路補間方法を用いると、移動
時間は線分上を一定速度νa、線分上を一定
速度νbで移動させた場合と等しくすることができ
る。
Therefore, by using the path 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 ν a and on the line segment at a constant speed ν 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 straight lines in the Cartesian coordinate system, but also to linear drive in a coordinate system in which the displacement of the actuator of the robot is taken as the coordinate axis.

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

また、本発明によれば、折線を形成する2つの
直線を経路とし、折点方向への直線上では、折点
で速度が零となるように単調減少させるベクトル
と折点からの直線上ではロボツトハンドの速度が
ある速度になるまで単調増加させるベクトルが与
えるように補間する直線補間のソフトを用いた場
合、ロボツトハンドが折線からの直線上で速度が
単調増加させるベクトルを折点の手前で与えるよ
うにすることにより、直線補間だけをするソフト
を容易に使用できる。
Further, according to the present invention, two straight lines forming a broken line are used as routes, and on the straight line toward the breaking point, a vector that monotonically decreases so that the velocity becomes zero at the breaking point, and on the straight line from the breaking point, If you use linear interpolation software that interpolates to give a vector that monotonically increases the speed of the robot hand until it reaches a certain speed, the robot hand will interpolate the vector that monotonically increases the speed on the straight line from the broken line just before the break point. By giving this, you can easily use software that only performs linear interpolation.

【図面の簡単な説明】[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)

【特許請求の範囲】 1 ロボツトハンドの折線経路の補間方法であつ
て、 前記折線経路上の点Aから折点Bの方向へ進み
前記折点Bにおいて速度が零となる第1の速度ベ
クトルと、前記折点Bから折線経路上の点Cの方
向へ進む速度を零から単調増加させる第2の速度
ベクトルとの合成速度ベクトルを単位時間毎に求
め、前記単位時間毎に求めた合成ベクトルをその
時点におけるロボツトハンドの位置ベクトルに加
えたものを位置指令量としてロボツトハンドを制
御し、前記ロボツトハンドの経路が曲線状となる
ように経路を補間することを特徴とするロボツト
ハンドの経路補間方法。 2 前記第1の速度ベクトルを、折点Bにおいて
零となるように単調減少させる速度ベクトルとし
たことを特徴とする特許請求の範囲第1項記載の
ロボツトハンドの経路補間方法。
[Scope of Claims] 1. A method for interpolating a broken line path of a robot hand, which comprises: a first velocity vector that moves from point A on the broken line path to a bending point B and has a velocity of zero at the breaking point B; , find a composite velocity vector for each unit time with a second velocity vector that monotonically increases the velocity traveling from the breaking point B in the direction of the point C on the broken line path from zero, and calculate the composite vector found for each unit time. A robot hand path interpolation method characterized in that the robot hand is controlled using a position command amount added to the position vector of the robot hand at that point, and the path of the robot hand is interpolated so that the path of the robot hand becomes a curved path. . 2. A path interpolation method for a robot hand according to claim 1, wherein the first velocity vector is a velocity vector that monotonically decreases to zero at a corner point B.
JP10293190A 1990-04-20 1990-04-20 Robot hand path interpolation method Granted JPH02288903A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10293190A JPH02288903A (en) 1990-04-20 1990-04-20 Robot hand path interpolation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10293190A JPH02288903A (en) 1990-04-20 1990-04-20 Robot hand path interpolation method

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP14615182A Division 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
JP5091053A Division JPH0756605B2 (en) 1993-04-19 1993-04-19 Robot with broken line path interpolation function

Publications (2)

Publication Number Publication Date
JPH02288903A JPH02288903A (en) 1990-11-28
JPH0580002B2 true JPH0580002B2 (en) 1993-11-05

Family

ID=14340588

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10293190A Granted JPH02288903A (en) 1990-04-20 1990-04-20 Robot hand path interpolation method

Country Status (1)

Country Link
JP (1) JPH02288903A (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0756605B2 (en) * 1993-04-19 1995-06-14 株式会社日立製作所 Robot with broken line path interpolation function

Also Published As

Publication number Publication date
JPH02288903A (en) 1990-11-28

Similar Documents

Publication Publication Date Title
JP3286334B2 (en) Mobile unit control device
JP3485639B2 (en) Path planning method and system in rectangular coordinate space
JP3476287B2 (en) Curve interpolation method for speed control during robot connection operation
JPH0127443B2 (en)
KR101337650B1 (en) Realtime weaving motion control device and realtime weaving motion control method
JPH0580002B2 (en)
CN111331577B (en) Robot control device and control method
EP0483756B1 (en) Robot controlling method and apparatus
JPH0756605B2 (en) Robot with broken line path interpolation function
JPS634201B2 (en)
JPS6284304A (en) Industrial robot trajectory interpolation device
JPS62282303A (en) Controller for industrial robot
JPS6010309A (en) Method for interpolating path of robot hand
KR102470393B1 (en) Spline path generating device
JPS59163609A (en) Route interpolating method of robot hand
KR100218379B1 (en) Method for control robot arm
JPH0623928B2 (en) Robot hand trajectory correction method
JPH0522921B2 (en)
JPH08339221A (en) Robot trajectory control method
JPS6272007A (en) Buffer control method for robot
JPH0991020A (en) Method for controlling teaching robot
JP3512651B2 (en) Robot control device and control method
JPS60151714A (en) Robot external synchronization operation method
KR100724494B1 (en) Apparatus and method for continuous interpolation driving of motion controller
KR100917510B1 (en) Elliptic interpolation method in position controller