JPH04140802A - Position control method for industrial robot - Google Patents
Position control method for industrial robotInfo
- 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
Links
Landscapes
- Numerical Control (AREA)
- Manipulator (AREA)
Abstract
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.
図面は本発明の実施例産業用ロボットの位置制御方法の
補間計算フローチャートを示す。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)
算周期によって決定される第一補間をおこなって、第一
補間によって与えられる目標位置までの間をサーボ系の
計算周期によって決定される第二の補間をおこなう二段
の補間方法においてサーボ系の計算周期を第二補間周期
とすることにより、前記第二の補間回数を必要に応じて
変化させる補間方法としたことを特徴とする産業用ロボ
ットの位置制御方法。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.
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)
| 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 |
-
1990
- 1990-10-02 JP JP2263113A patent/JPH04140802A/en active Pending
Cited By (2)
| 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 |