JPH04140802A - Position control method for industrial robot - Google Patents

Position control method for industrial robot

Info

Publication number
JPH04140802A
JPH04140802A JP2263113A JP26311390A JPH04140802A JP H04140802 A JPH04140802 A JP H04140802A JP 2263113 A JP2263113 A JP 2263113A JP 26311390 A JP26311390 A JP 26311390A JP H04140802 A JPH04140802 A JP H04140802A
Authority
JP
Japan
Prior art keywords
interpolation
frequency
interpolating
speed
determined
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
JP2263113A
Other languages
Japanese (ja)
Inventor
Kazuo Hariki
針木 和夫
Kiyoshi Kanitani
蟹谷 清
Kazuya Ishiguro
石黒 一也
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nachi Fujikoshi Corp
Original Assignee
Nachi Fujikoshi Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nachi Fujikoshi Corp filed Critical Nachi Fujikoshi Corp
Priority to JP2263113A priority Critical patent/JPH04140802A/en
Publication of JPH04140802A publication Critical patent/JPH04140802A/en
Pending legal-status Critical Current

Links

Landscapes

  • Numerical Control (AREA)
  • Manipulator (AREA)

Abstract

PURPOSE:To alter to the interpolating method of a moving command position of a robot for realizing a smoother operation by making a rotation (a) of a second interpolation variable, and determining the resolution of a speed by the minimum time determined by a processing time of a servo-system. CONSTITUTION:A calculation period of a servo-system is set as a second interpo lation period t2, and a total second interpolation frequency N is N=>>l/vX1/t2] (l denotes a distance, and v denotes a moving speed). A calculation period of a first interpolation is set as t1, and a second interpolation frequency (a) between first interpolating positions is a=t1/t2 (a denotes an integer), and when a frequency n1 of a first interpolation is n1=N/a, n1>=2, in this case, an interpola tion xi by a first interpolation from a target position x0 and the present position xc is xi=(xo-xc)/n, and in the case of n1<2 for repeating a first interpolating calculation, a second interpolation frequency (a) between first interpolating positions becomes a first interpolation frequency n1=1, a=N and xi=xo, and a second interpolation frequency (a) between first interpolating positions becomes N and the interpolation is finished. In such a way, the frequency of a second interpolation at the time of commanding the target position xo is not a fixed number but changed to an optimal value.

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は産業用ロボットの移動指令位置の補間方法を改
善した産業用ロボットの位置制御方法に関する。
DETAILED DESCRIPTION OF THE INVENTION (Field of Industrial Application) The present invention relates to a position control method for an industrial robot that improves a method for interpolating a movement command position of an industrial robot.

(従来の技術) 一般に、ロボットの指令位置は、教示によってあらかし
め、記憶装置に保存されているデータを、取り出して利
用される。そして現在位置とこの指令位置が物理的に離
れている場合には、この間の途中の経路を補間によって
与えている。
(Prior Art) Generally, the commanded position of a robot is determined through teaching, and data stored in a storage device is retrieved and utilized. If the current position and this commanded position are physically distant, a route between them is provided by interpolation.

補間によって決定される途中指令位置は、直交座標上の
直線1円弧あるいは、その他の補間方法によって決定さ
れる。この途中指令位置の計算には、CPUの処理スピ
ードによって決まる処理時間が必要であり、この時間は
、サーボ系の応答時定数に対して、非常に長い。したが
って、この補間による途中指令位置を、直接サーボ系に
指令していたのでは、指令のあらさが、そのままロボッ
トの動きとなって、ギクシャクした動作となる。
The intermediate command position determined by interpolation is determined by a straight line arc on orthogonal coordinates or by other interpolation methods. Calculation of this intermediate command position requires a processing time determined by the processing speed of the CPU, and this time is extremely long compared to the response time constant of the servo system. Therefore, if the intermediate command position obtained by this interpolation is directly commanded to the servo system, the imperfections in the command will directly affect the movement of the robot, resulting in jerky movement.

この問題をさけるために、従来は、この指令位置を、さ
らに補関し、サーボ系の時定数よりも小さい時間毎に、
こまかく、位置を指令するという、二重の補間方法がと
られている。
In order to avoid this problem, in the past, this command position was further interpolated and
A double interpolation method is used in which the position is commanded in detail.

このように、ロボットの補間方法は、二重の補間という
方法がとられているが、二段目の補間回数は従来スピー
ドによらず一定にされていた。
In this way, the interpolation method of the robot is double interpolation, but the number of times of interpolation in the second stage has conventionally been kept constant regardless of the speed.

段目の補間回数n1は、CPtJの処理時間に依存する
ために、 と与えられる。ここで!は距離、■はスピード、kはC
PUの能力によって決まる係数で、[]は切り上げした
整数を表わす。この回数n、は距離!およびスピードV
によって変化する。
The number of times of interpolation n1 in the second stage depends on the processing time of CPtJ, so it is given as follows. here! is distance, ■ is speed, k is C
It is a coefficient determined by the ability of the PU, and [] represents an integer rounded up. This number of times n is the distance! and speed V
It changes depending on.

一方二段目の補間回数n2は n2=b   (bは定数) というように、従来定数にされていた。これは、kはC
PUの処理時間に関係する定数であり、サーボ系の時定
数もシステム設計時にすでに決定されており、定数で十
分であるためでもあった。
On the other hand, the number of interpolations n2 in the second stage has conventionally been set to a constant, such as n2=b (b is a constant). This means that k is C
This is a constant related to the processing time of the PU, and the time constant of the servo system has already been determined at the time of system design, so the constant is sufficient.

(発明が解決しようとする課題) 第二補間回数が定数であることは、速度の分解能が、C
PUの処理時間によって決まるkによって決定されるこ
とを意味している。たとえばj!= 100wn、  
v=1000mm/s、  k= 10のとき■ 101000(/5) =1 (回) となり、1回の第一補間、つまり一度も補間しないで、
目標位置を指令することになる。
(Problem to be solved by the invention) The fact that the second interpolation number is a constant means that the speed resolution is C
This means that it is determined by k, which is determined by the processing time of the PU. For example, j! = 100wn,
When v = 1000 mm/s and k = 10, ■ 101000 (/5) = 1 (times), and one first interpolation, that is, no interpolation at all,
The target position will be commanded.

次に、V = 50 (Igm/sと半分の速度にする
と、n   =2 となり2回に分けて指令することになる。
Next, if the speed is reduced to half V = 50 (Igm/s), n = 2, and the command will be issued twice.

ここで  v −700ms/s  とするとn+ =
 (1,42) =2 となり、やはり2回に分けて指令し、結局500mm/
sのスピードでしか指令できないことがわかる。
Here, if v −700ms/s, n+ =
(1, 42) = 2, so the command was given twice, and in the end it was 500mm/
It can be seen that the command can only be given at a speed of s.

一方、■−1000IIIIl/sのままでも、f=5
0mmにすると n+ −〔0,5’l =1 となり1回で指令し、本来、距離が短かくなった分、時
間を短くすべき、ところが、そうできないため、スピー
ドは指令したい1000a+m/sの半分の500ms
/sとなってしまう。
On the other hand, even if ■-1000IIIl/s remains, f=5
If it is set to 0mm, n+ - [0,5'l = 1, and the command should be made once. Originally, the time should be shortened by the shorter distance, but since this is not possible, the speed is 1000a+m/s, which is the desired command. half 500ms
/s.

先に述べたように、速度の分解能はに、fによって決ま
る。たとえば、k=l0.j2=100rmであれば分
解能は1000mm/sであり、k=10のままで42
=50aa++とすれば、分解能は2000+糟/Sと
なる。これは第二補間の回数すに無関係に決まる。
As mentioned earlier, the velocity resolution is determined by f. For example, k=l0. If j2=100rm, the resolution is 1000mm/s, and if k=10, then 42
=50aa++, the resolution will be 2000+gaus/S. This is determined regardless of the number of times of second interpolation.

本発明の課題は、第二補間の回数aを可変にして、速度
の分解能をサーボ系の処理時間によって決まる最小時間
によって決定し、より滑らかな動作を実現させるロボッ
トの移動指令位置の補間方法を改善した産業用ロボット
の位置制御方法を提供することにある。
An object of the present invention is to provide a method for interpolating the movement command position of a robot that realizes smoother movement by making the number of times a of the second interpolation variable and determining the speed resolution by the minimum time determined by the processing time of the servo system. An object of the present invention is to provide an improved position control method for an industrial robot.

(課題を解決するための手段) このため本発明は特許請求の範囲に記載する方法を提供
することにより、上述した従来技術の課題を解決した。
(Means for Solving the Problem) Therefore, the present invention has solved the problems of the prior art described above by providing the method described in the claims.

(実施例) 次に本発明の実施例産業用ロボットの位置制御方法の補
間計算フローチャートを示す図面を参照して説明する。
(Embodiment) Next, an explanation will be given with reference to the drawings showing an interpolation calculation flowchart of a position control method for an industrial robot according to an embodiment of the present invention.

ブロック1ではサーボ系の計算周期を第二補間周期とし
これをt、とし、トータルの第二補間回数Nがまず求め
られる。
In block 1, the calculation cycle of the servo system is set as the second interpolation cycle, and this is defined as t, and the total number of second interpolations N is first determined.

ここで、!は距離、■は移動速度である。here,! is the distance, and ■ is the moving speed.

また〔 〕は小数点以下を切り上げる関数である。Also, [ ] is a function that rounds up the decimal point.

次にブロック2では、第一補間の計算周期をtl とし
て、第二補間周期tlとの周期比即ち第一補間位置間の
第二補間回数aを、 a −t + / t *   (aは整数)・・・(
2)とすると、第一補間の回数n、を n、=N/a         ・・・(3)にて求め
る。
Next, in block 2, the calculation period of the first interpolation is set as tl, and the period ratio with the second interpolation period tl, that is, the number of times a of second interpolation between the first interpolation positions is calculated as a − t + / t * (a is an integer )...(
2), the number of times of first interpolation, n, is determined by n,=N/a (3).

そしてブロック3では第一補間回数n、と2との比較を
行い、n、≧2であれば、ブロック4に移行し、ここで
目標位置をXo、現在位置をxeとして、第一補間によ
る補間位置X、を求める。
Then, in block 3, the first interpolation number n, is compared with 2, and if n≧2, the process moves to block 4, where the target position is set to Xo, the current position is set to xe, and the first interpolation is performed. Find the position X.

nl ブロック5では、第一補間位置間に行われる第二補間の
部分的第二補間回数をaとし、 N=N−a          ・・・(6)nl−n
l   1        ・・・(7)X c = 
X i           ・・・(8)とし、再び
ブロック3に戻り第一補間計算式(4)から繰り返すが
、n、〈2の場合は、ブロック6に移行し、式(5)に
よって、目標位置を指令済みであるため、終了する。
nl In block 5, the number of partial second interpolations of the second interpolation performed between the first interpolation positions is set as a, and N=N-a (6) nl-n
l 1 ...(7)X c =
X i ...(8), then return to block 3 and repeat from the first interpolation calculation formula (4). However, if n, <2, proceed to block 6 and calculate the target position using formula (5). The command has been completed, so it will end.

ブロック3でnl <2の場合には、ブロック6X;=
Xo           ・・・(5)となり、第一
補間位置間第二補間回数aはNとされ終了する。
If nl <2 in block 3, then block 6X;=
Xo...(5), the number of times a of second interpolation between the first interpolation positions is set to N, and the process ends.

このように、目標位置X0を指令する時の第二補間の回
数が固定数ではな(、最適な値に変更される。
In this way, the number of times of second interpolation when commanding the target position X0 is not a fixed number (it is changed to an optimal value).

第1図のフローチャートにおいて、補間を終了する条件
のnl−2は、本発明の要点ではないが、n、<1の場
合に第二補間の回数分の時間では、第一補間計算をおこ
なう充分な時間がとれず、計算終了を待ってから指令す
ることになり、動きのスムーズさが失われるおそれがあ
る。
In the flowchart of FIG. 1, nl-2, which is the condition for terminating interpolation, is not the point of the present invention, but if n<1, the time for the number of times of second interpolation is sufficient to perform the first interpolation calculation. If you have to wait for the calculation to finish before issuing a command, there is a risk that the smoothness of the movement will be lost.

(発明の効果) 本発明は、第二補間の回数aを可変にして、速度の分解
能をサーボ系の処理時間によって決まる最少時間によっ
て決定し、より滑らかな動作を実現させるロボットの移
動指令位置の補間方法を改善した産業用ロボットの位置
制御方法となった。
(Effects of the Invention) The present invention makes the number of times a of the second interpolation variable, determines the speed resolution by the minimum time determined by the processing time of the servo system, and determines the movement command position of the robot to achieve smoother movement. This is a position control method for industrial robots that improves the interpolation method.

たとえば図面において、k=10.v=41゜ram/
s、  l= 100mmの場合に、1+ = 100
as。
For example, in the drawings, k=10. v=41゜ram/
If s, l = 100mm, 1+ = 100
as.

Ts=lOmsとし、 n1=2.43 とすべきところnl−3となってしまう場合に、従来は
、仮にa=10として、第一補間回数n。
When Ts=lOms and n1=2.43 instead of nl-3, conventionally, a=10 and the first interpolation number n is set.

は3で3回となり、トータル第二補間回数Nは3a−3
0回となる。そこで従来は実際の速度が410mm/s
から、333mm/sになってしまったが、本発明は、
410yam/Sにより近づけようとするものとなった
。即ち上述の例では、a−10としているので、 n+=2.43 とすれば、第一回目は、a=10とし、第2回目は(ブ
ロック5からブロック6にn、〈2のため移行するので
)、a=15とすることにより、トータル第二補間回数
N=25回で動く。従来の30回に比較し、スピードは
、400n+m/sとなりより正確な410mm/sへ
近づくことになる。そこで、従来の第二補間回数が固定
の補間方法では、時間の分解能が第一補間周期t、によ
って決定され、指令したい速度と実際に補間によって指
令される速度に大きな差異を生じ、とくに、1000m
m/s以上の高速で、100I!ll11ピンチ程度で
教示しである場合、ts−o、i (k=10)では、
速度分解能が500mm/s以上となり、ちょっとした
誤差により速度が倍以七も変動してしまうという問題が
あり、速度を低重させるかピッチを大きくするかのオペ
レータ側の考慮が必要であった。
is 3, which is 3 times, and the total number of second interpolations N is 3a-3
0 times. Therefore, in the past, the actual speed was 410 mm/s.
However, the present invention has the following advantages:
The aim is to bring it closer to 410 yam/S. That is, in the above example, it is a-10, so if n+=2.43, the first time is a=10, and the second time is (transition from block 5 to block 6 due to n, <2). ), by setting a=15, the total number of second interpolations is N=25. Compared to the conventional 30 times, the speed is 400n+m/s, which is closer to the more accurate 410mm/s. Therefore, in the conventional interpolation method in which the number of second interpolations is fixed, the time resolution is determined by the first interpolation period t, which causes a large difference between the desired speed to be commanded and the speed actually commanded by interpolation.
At a high speed of more than m/s, 100I! When teaching with about ll11 pinch, in ts-o,i (k=10),
The speed resolution is 500 mm/s or more, and there is a problem in that the speed can fluctuate by more than double due to a small error, and the operator needs to consider whether to lower the speed or increase the pitch.

これに対し、本発明による第二補間の補間回数を可変と
することにより、時間分解能が第二補間周期t8によっ
て決定されるために、従来に比して、10〜20倍良い
分解能が得られ、ロボットの動作をより滑らかにするこ
とが可能となる。最近のロボット動作に要求される高速
性を実質的に可能とするためには、単にアクチュエータ
の性能向上だけでは、不足であり、この本発明による補
間技術が重要なキーであり、これなくして、ロボットの
高速化はなし得ない。
On the other hand, by making the number of interpolations of the second interpolation variable according to the present invention, the time resolution is determined by the second interpolation period t8, so a resolution that is 10 to 20 times better than that of the conventional method can be obtained. , it becomes possible to make the robot's movements smoother. In order to substantially achieve the high speed required for modern robot movements, simply improving actuator performance is insufficient, and the interpolation technology of the present invention is an important key. Robots cannot be made faster.

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

図面は本発明の実施例産業用ロボットの位置制御方法の
補間計算フローチャートを示す。
The drawing shows an interpolation calculation flowchart of a position control method for an industrial robot according to an embodiment of the present invention.

Claims (1)

【特許請求の範囲】[Claims] 産業用ロボットの指令位置の補間方法であって、補間計
算周期によって決定される第一補間をおこなって、第一
補間によって与えられる目標位置までの間をサーボ系の
計算周期によって決定される第二の補間をおこなう二段
の補間方法においてサーボ系の計算周期を第二補間周期
とすることにより、前記第二の補間回数を必要に応じて
変化させる補間方法としたことを特徴とする産業用ロボ
ットの位置制御方法。
A method of interpolating a command position of an industrial robot, wherein a first interpolation determined by an interpolation calculation cycle is performed, and a second interpolation determined by a calculation cycle of a servo system is performed until a target position given by the first interpolation is performed. An industrial robot characterized in that in a two-stage interpolation method that performs interpolation, the calculation cycle of the servo system is set as a second interpolation cycle, thereby changing the second interpolation number as necessary. position control method.
JP2263113A 1990-10-02 1990-10-02 Position control method for industrial robot Pending JPH04140802A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2263113A JPH04140802A (en) 1990-10-02 1990-10-02 Position control method for industrial robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2263113A JPH04140802A (en) 1990-10-02 1990-10-02 Position control method for industrial robot

Publications (1)

Publication Number Publication Date
JPH04140802A true JPH04140802A (en) 1992-05-14

Family

ID=17385012

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2263113A Pending JPH04140802A (en) 1990-10-02 1990-10-02 Position control method for industrial robot

Country Status (1)

Country Link
JP (1) JPH04140802A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06226667A (en) * 1993-02-01 1994-08-16 Yaskawa Electric Corp Control method for 7-axis manipulator
US6539275B1 (en) 1998-05-28 2003-03-25 Fanuc Ltd. Machine controller and process with two-step interpolation

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06226667A (en) * 1993-02-01 1994-08-16 Yaskawa Electric Corp Control method for 7-axis manipulator
US6539275B1 (en) 1998-05-28 2003-03-25 Fanuc Ltd. Machine controller and process with two-step interpolation

Similar Documents

Publication Publication Date Title
US4879663A (en) Method for determining points in space guiding the movement of a robot arm
US6330493B1 (en) Control system for synchronously cooperative operation of plurality of robots
EP0145967B1 (en) Curvilinear interpolation system and method
US4528632A (en) Industrial articulated robot linear interpolation control device
JP3396342B2 (en) Numerical controller with spline interpolation function
US4689756A (en) Robot interpolation control method
EP1102139A2 (en) Apparatus and method for smooth cornering in a motion control system
CN111796558B (en) Multi-axis linkage real-time dynamic look-ahead trajectory planning method and device and storage medium
US5988850A (en) Curve interpolation method for performing velocity control during connecting motion of a robot
CN110531701A (en) Numerical control device
JP2718260B2 (en) Numerical control unit
US4070608A (en) Two axes NC system with tool offset
US5770937A (en) Stepping motor driving device
JPH0371206A (en) Device for correcting machine error of nc machine tool
JP2001150372A (en) Synchronous or cooperative motion control device for plural robots
JP3294900B2 (en) Control device
EP1398682A2 (en) Apparatus and method for smooth cornering in a motion control system
US4968923A (en) Servo control system
JP2000353006A (en) Numerical controller
JPH07210233A (en) Robot trajectory interpolation method and interpolation device
JPS5822410A (en) Numerical control system
JP2737725B2 (en) Robot control device and method
JP2002132317A (en) Controller
CN113614653B (en) Control device and recording medium
JP2000163114A (en) Acceleration / deceleration processing method in interpolation curve