WO1998008149A1 - Procede d'acceleration et de deceleration - Google Patents

Procede d'acceleration et de deceleration Download PDF

Info

Publication number
WO1998008149A1
WO1998008149A1 PCT/JP1997/002946 JP9702946W WO9808149A1 WO 1998008149 A1 WO1998008149 A1 WO 1998008149A1 JP 9702946 W JP9702946 W JP 9702946W WO 9808149 A1 WO9808149 A1 WO 9808149A1
Authority
WO
WIPO (PCT)
Prior art keywords
acceleration
movement
command
time constant
deceleration
Prior art date
Application number
PCT/JP1997/002946
Other languages
English (en)
Japanese (ja)
Inventor
Tetsuaki Kato
Atsuo Nagayama
Original Assignee
Fanuc 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 Fanuc Ltd filed Critical Fanuc Ltd
Publication of WO1998008149A1 publication Critical patent/WO1998008149A1/fr

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/43Speed, acceleration, deceleration control ADC
    • G05B2219/43005Corner distance variables to keep path when programmed speed changes
    • 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/43Speed, acceleration, deceleration control ADC
    • G05B2219/43129Speed as function of curvature, in curves, corners smaller than in straight line

Definitions

  • the present invention relates to a control method for an industrial robot, a machine tool, and the like, and relates to an acceleration / deceleration control method in a case where respective movements by two consecutive operation commands are smoothly connected.
  • the operation mode includes positioning operation. And smooth operation.
  • the tool center point (TCP) is positioned at the position specified by the one-block motion command, and then the operation by the next one-block motion command starts.
  • the smooth operation deceleration is started to position the TCP at the position instructed by the motion command of one block, and at the same time, acceleration to the command position of the next one block is started. You. Then, the deceleration process of one block ends, and the acceleration process of the next one block ends at the same time.
  • the “positioning operation” is, for example, as shown in (a) of FIG.
  • the next block No. 2 motion command is executed and accelerated.
  • the time constant is defined as the time from the start of acceleration to the arrival at the command speed, or the time from the start of deceleration to the stop at the command position. Therefore, the average acceleration from the start of acceleration until the commanded speed is reached and the average acceleration from the start of deceleration to the stop are the commanded speed divided by the time constant.
  • a first block B1 is an operation in a first direction up to a point P
  • a second block B2 is a second block perpendicular to the first direction from a point P.
  • the trajectory of the TCP is a connection of a straight line in the first direction up to the point P and a straight line in the second direction from the point P, as shown by the solid line in (c) of FIG.
  • the motion of the block B1 (the motion in the first direction) and the motion of the block B2 are performed.
  • the motion (the motion in the second direction) is performed together, and as a result, the combined trajectory is as shown by a broken line, and the motion of the block B1 is changed from the motion of the block B1.
  • the transition to is smooth without passing through point P.
  • FIG. 6 (c) shows a case where the angle ⁇ formed by the TCP trajectory by the motion command of block B2 with respect to the trajectory of the TCP by the motion command of block B1 is 90 degrees. If the angle ⁇ is further increased, a smoother motion will cause a greater acceleration / deceleration in the transition from the operation of block B1 to the operation of block B2.
  • the drive motor requires a larger acceleration / deceleration torque. This will be described below with reference to (d) of FIG. (D) in Fig. 6 shows that the angle formed by the TCP trajectory by the motion command of block B2 with respect to the TCP trajectory by the motion command of block B1 is 180 degrees, that is, the motion direction is completely In the case of reverse rotation, a smooth operation is illustrated.
  • Block B1 accelerates and decelerates with a time constant T, and its command speed is a positive value. At the same time as the deceleration by the motion command of block B1 starts, the acceleration by the motion command of block B2 starts. When the time constant T elapses from that point, deceleration by the motion command of block B1 ends and acceleration by the motion command of block B2 also ends, and a command speed with a minus Becomes
  • the command speed by the motion command of block B1 is V
  • the command speed by the motion command of block B2 is 1 V (the sign is If the absolute values are equal in pairs)
  • the acceleration / deceleration time constant In order to satisfy both this requirement and the other requirement that the acceleration must be suppressed to V or less due to the limitation of the generated torque of the motor, the acceleration / deceleration time constant must be As shown in Fig. 6 (e), all must be 2T. However, in this case, the acceleration / deceleration does not exceed the limit of the generated torque of the motor, but the acceleration / deceleration during the positioning operation is slow, so the time until one operation program is completed is lengthened. The problem comes out. Disclosure of the invention
  • An object of the present invention is to reduce the entire operation cycle even when one operation block and the next operation block are connected with a smooth operation in one operation program.
  • An object of the present invention is to provide an acceleration / deceleration control method devised not to be particularly long.
  • the present invention relates to an acceleration / deceleration control method for smoothly connecting the movements of two motion commands to form a corner, wherein the movement direction of the motion command of the corner portion formed by the two motion commands and the next motion command
  • the acceleration / deceleration control is performed by increasing the deceleration time constant of the movement of the movement command and the acceleration time constant of the movement of the next movement command as the angle between the movement directions of the movements increases.
  • a value cose of a cosine function of an angle (hereinafter referred to as a “corner angle”) ⁇ between a moving direction of the motion command and a moving direction of the next motion command is obtained, and a set value q of 0.5 or less is used.
  • Acceleration / deceleration control is performed using the value obtained by multiplying the set acceleration / deceleration time constant T 0 of the positioning operation by the above coefficient k as the deceleration time constant for the movement of the relevant motion command and the acceleration time constant for the movement of the next motion command. If the set value a is set to, for example, “0.5”, the coefficient k becomes “1” in a straight line (when there is no corner) when the corner angle is “0 degree”, and the addition of the corner portion is performed.
  • the deceleration time constant is equal to the acceleration / deceleration time constant T 0 of the positioning operation.
  • FIG. 1 is a flowchart for explaining an acceleration / deceleration time constant determination process according to an embodiment of the present invention when a teaching operation program executed by a robot control device is taught by linear feed. It is a fault.
  • FIG. 2 is a flowchart for explaining the acceleration / deceleration time constant determination processing according to the embodiment of the present invention when the teaching operation program is taught in each axis feed.
  • FIG. 3 is a block diagram showing an embodiment of a robot control device embodying the present invention.
  • Figure 4 is a diagram for explaining changes in the acceleration and deceleration time constants.
  • FIG. 5 is an explanatory diagram of a corner angle.
  • FIG. 6 is a diagram for explaining the position determining operation and the smooth operation.
  • the method of the present invention can be carried out using a robot controller having a normal hardware I configuration, and does not require an additional hardware X configuration.
  • a typical robot control device for implementing the method of the present invention is shown in the block diagram of the main part of FIG.
  • the robot controller which is indicated by reference numeral 10, is equipped with a processor board 11, which is a central processing unit (hereinafter, referred to as a micro processor). It is called CPU.) It has 11 a, ROM 11 b and RAMI 1 c.
  • the CPU 11a controls the entire robot controller according to the system program stored in the ROM 11b.
  • RAM11c The stored operation program and various set values are stored in RAM11c. Also, a part of RAM 11c is used for temporary data storage for calculation processing performed by CPU 11a.
  • the processor board 11 is connected to a bus 17 so that commands and data can be exchanged with other parts in the robot controller 10 via the bus connection.
  • the digital servo control circuit ⁇ 2 is connected to the processor board 11 via the bus 17 and the operation command from the CPU 11a and the position attached to each servomotor 21-26.
  • Performs position and speed feedback control based on the feedback signal from the speed detector, and drives and controls servo motors 21 to 26 via servo amplifier 13.
  • the servo motors 21 to 26 for operating each axis are built in the mechanism of each axis of the robot RB.
  • the serial port 14 is connected to the bus 17 and is connected to the teaching operation panel 27 with a liquid crystal display and the RS232C device (communication interface Xis) 28.
  • Teaching operation panel 2 7 Is used to input programs such as operation programs, position data, and other necessary setting values.
  • an input / output device for digital signals (digital IZO) 15 and an input / output device for analog signals (analog I / O 0) 16 are connected to the node 17.
  • the CPU 11a reads the block information of the first block from the teaching program (step A1), and if the instruction of the information is not the program end (step A2), the smooth operation is performed. Then, it is determined whether there is information of the next exercise command (Step A3). If the instruction is not an exercise instruction, the instruction is also executed. However, since this point is not the gist of the present invention, it is not described in this flowchart.
  • step A1 If there is not the smooth motion command (positioning motion command) but the next motion command information, set the time constant T to the value TO set as the time constant of the positioning operation (step A1). 3).
  • the time constant T 0 of this positioning operation is set to a value that allows acceleration and deceleration within the limit value of the output torque of the servo motor.
  • the force for which the acceleration time constant T a is set in the register that stores the acceleration time constant T a is determined (step A8). Note that this register is cleared to “0” by default, and the acceleration time constant T a is initially set. It has not been.
  • step A14 the acceleration time constant T a of the motion command by the current block is set to the time constant T 0 of the positioning operation. Then, the process proceeds to step A9, and the deceleration time constant Tb is set to the time constant T obtained in step A13 or step A7.
  • the time constant T is set to the setting time constant T0 of the positioning operation in step A13. a, deceleration time constant Tb are both set to the positioning operation setting time constant T0.
  • Step A10 it is determined whether the motion command is a smooth motion command. If the motion command is not a smooth command, the register storing the acceleration time constant T a of the next block is cleared to “0”. The state where the acceleration time constant Ta is not set is set (step A15). Then, using the set acceleration time constant T a and deceleration time constant T b, an operation command instructed in the same manner as before is output by performing acceleration / deceleration control (steps A10, A1). 2) The servo motors 21 to 26 of each axis are driven via the digital servo control circuit 12.
  • the robot performs acceleration / deceleration control based on the set positioning operation time constant T 0 and causes the robot to perform the positioning operation.
  • step A3 if the block information is a smooth motion command and the information of the next block is also a motion command. If it is determined, proceed to step A4, read the information of the next block, and obtain the corner angle ⁇ of the motion trajectory generated by the motion command of the two blocks (step A4, A5).
  • This corner angle ⁇ is the angle ⁇ ⁇ between the moving direction of the first block's motion command and the moving direction of the next block's motion command, as shown in Figs. 5 (a) to (d). . If the movement vector of the first block motion command is P and the movement vector of the next block motion command is Q,
  • the coefficient k corresponding to the corner angle ⁇ is obtained from the cosine function cose by performing the operation of the following equation (step A 6).
  • q is a set value of 0.5 or less, and it is assumed that “0.5” is set in this embodiment.
  • the corner angle ⁇ is a value close to “0” and is, for example, “0”
  • the coefficient obtained by the above equation 1 is “1”
  • the time constant T is the time constant T 0 during the positioning operation.
  • the corner angle ⁇ is “180 degrees”
  • the coefficient k at this time is “2”.
  • the time constant T becomes 2 T O.
  • step A8 the acceleration time constant in the block motion command It is determined whether or not Ta is set (step A8).
  • the next block is read out, and the motion command of this block is also a smooth operation. If there is another motion command after that, the process moves from step A3 to step A4.
  • the processing of steps A5 to A8 described above is performed. However, since the current acceleration time constant Ta has already been set in step A11 of the previous processing, steps A8 to A8 are performed. Then, go to step A9 and set the current time constant Tb to the time constant T obtained in step A7.
  • the command is a smooth command, the process proceeds from step A10 to step A11, and the acceleration time constant Ta of the next block is set to the deceleration set in step A9. Set to constant T b.
  • the acceleration and deceleration time constants T a and T b Acceleration / deceleration processing
  • a lock motion command is output (step A12). Thereafter, each time a smooth motion command is read, the processing of steps A1 to A12 is repeated.
  • the register that stores the next acceleration constant T a is cleared to “0”, and the current acceleration and deceleration time constants T a and T are cleared. Acceleration / deceleration processing is performed according to b, and the current block motion command is output.
  • steps A 1 to A 3, A 13, and A 8 will be processed.
  • the first block B1 is the movement command for the positioning operation
  • the second block B2 is the slide command. Movement command for empty operation
  • 3rd block B3 is movement command for smooth operation
  • 4th block B4 is movement command for positioning operation
  • 5th block B5 is positioning
  • the acceleration and deceleration time constants T are set according to the angle ⁇ of the corner. a and Tb are adjusted, and the larger the angle ⁇ (0 ⁇ ⁇ 180 degrees), the larger the time constant is changed.
  • Steps a1 to a4 are the same as the processing of steps A1 to A4 in FIG. 1, and steps a16 are steps A1 to 3 and steps 31 to 1 in FIG. 1 to 3 15, a 17 and a 18 are the same as steps A 8 to A 12, A 14 and A 15 in FIG. 1, and the difference is that in FIG. In Fig. 2, the processing of steps A5 to A7 for obtaining the acceleration / deceleration time constant of the corner part in the operation is replaced with the processing of steps a5 to a10 in Fig. 2.
  • the minimum time constant allowable for each axis is determined, and the maximum time constant is set as the acceleration / deceleration time constant in this corner part. is there.
  • the robot is controlled in step a5.
  • the index i indicating the axis is set to "1”
  • the maximum time constant T stored at the register is set to "0”
  • the value of the current block of the axis i indicated by the above index is set.
  • the difference between the speed of the motion command and the speed of the next block Divide it by (the maximum acceleration that can normally be output by the servo motor) to obtain the time constant Ti (step a6).
  • the maximum time constant T is compared with the obtained time constant T i (step a7).
  • step a8 If the obtained time constant T i is larger, the time constant T i is set as the maximum time constant T and the register is set. (Step a8), and go to Step a9. If the obtained time constant T i is equal to or less than the maximum time constant T, the process proceeds directly to step a9. In step a9, the index i is incremented by "1", and it is determined whether the index is equal to or smaller than the number of axes D of the robot (step a10). Return. Hereinafter, by repeating the processing of steps a6 to a10 until the index i exceeds the number of axes of the robot, the speed of each axis in the current block operation command is calculated. Of the time constants for reaching the speed in the motion command of the next block with the set acceleration, the maximum time constant T is stored in the register that stores the maximum time constant, and becomes _.
  • steps a11 to a15, a17, and a18 are performed using the time constant T thus obtained. These processes are the same as the processes in steps A8 to A12, A14, and A15 in FIG.
  • the deceleration time constant and the acceleration time constant in the corner section are added within the limited torque at which the servo motor can output according to the corner angle. Since the time constant has been changed so that deceleration control can be performed, the operation cycle time can be shortened. Monkey
  • the present invention can also be applied to a machine tool in which a plurality of axes are driven by servo motors, and the operations of the respective axes are superimposed to drive a machine movable portion.

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Numerical Control (AREA)
  • Manipulator (AREA)

Abstract

Dans une partie en coin où un mouvement lent est commandé, on obtient le cosinus υ (υ représentant un angle de coin) (A3 - A5). On obtient ensuite un coefficient (k) (A6) en utilisant la formule suivante : (k) = 1 + 0,5(1 - cosinus υ). On utilise une valeur T, obtenue par la multiplication d'une constante de temps de positionnement T0 par le coefficient (k) (A7), comme constante de temps de décélération Tb et comme constante de temps d'accélération Ta (A9 et A11). Sur υ = 0 (ligne droite), (k) = 1 et alors Ta = T0 et Tb = T0. Dans un mouvement inverse, υ = 180° et (k) = 2. Alors, Ta = 2T0 et Tb = 2T0. Ainsi, les constantes de temps sont ajustées et le phénomène accélération/décélération peut être traité dans un minimum de temps dans la valeur limite du couple en sortie d'un servomoteur.
PCT/JP1997/002946 1996-08-23 1997-08-25 Procede d'acceleration et de deceleration WO1998008149A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP8/239957 1996-08-23
JP23995796A JPH1063329A (ja) 1996-08-23 1996-08-23 加減速制御方法

Publications (1)

Publication Number Publication Date
WO1998008149A1 true WO1998008149A1 (fr) 1998-02-26

Family

ID=17052353

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP1997/002946 WO1998008149A1 (fr) 1996-08-23 1997-08-25 Procede d'acceleration et de deceleration

Country Status (2)

Country Link
JP (1) JPH1063329A (fr)
WO (1) WO1998008149A1 (fr)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5431987B2 (ja) 2010-01-29 2014-03-05 Dmg森精機株式会社 工作機械の制御装置
JP5573664B2 (ja) * 2010-12-27 2014-08-20 ブラザー工業株式会社 数値制御装置、移動制御方法、移動制御プログラム及び記憶媒体
JP7053523B2 (ja) * 2019-03-14 2022-04-12 ファナック株式会社 産業用機械の数値制御システム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6326707A (ja) * 1986-07-21 1988-02-04 Makino Milling Mach Co Ltd 高速nc加工のドル−プによる経路誤差の発生を防止するnc加工方法と装置
JPS6426911A (en) * 1987-07-23 1989-01-30 Daikin Ind Ltd Locus control method for robot
JPH01123212U (fr) * 1988-02-18 1989-08-22
JPH06110534A (ja) * 1992-09-29 1994-04-22 Intetsuku:Kk 工作機械における位置制御方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6326707A (ja) * 1986-07-21 1988-02-04 Makino Milling Mach Co Ltd 高速nc加工のドル−プによる経路誤差の発生を防止するnc加工方法と装置
JPS6426911A (en) * 1987-07-23 1989-01-30 Daikin Ind Ltd Locus control method for robot
JPH01123212U (fr) * 1988-02-18 1989-08-22
JPH06110534A (ja) * 1992-09-29 1994-04-22 Intetsuku:Kk 工作機械における位置制御方法

Also Published As

Publication number Publication date
JPH1063329A (ja) 1998-03-06

Similar Documents

Publication Publication Date Title
JP3830475B2 (ja) 制御装置
JP2604698B2 (ja) 角加速度制御方法
US4528632A (en) Industrial articulated robot linear interpolation control device
WO1998042483A1 (fr) Controleur de robot
JPH0816246A (ja) ディジタルサーボによるタンデム制御方法
WO1986000730A1 (fr) Systeme de commande d'acceleration/deceleration
JP2524931B2 (ja) ロボットの直線補間方法
KR910002446B1 (ko) 속도 제어장치
WO2002066210A1 (fr) Dispositif de commande de robot
JPS6315604B2 (fr)
US5646493A (en) Robot profile control method
US5708342A (en) Method of controlling acceleration/deceleration time constants for robot
WO1989006066A1 (fr) Procede de commande de vitesse pour servomoteur
EP0240570A1 (fr) Systeme de commande d'acceleration et de deceleration pour robots a articulation horizontale
WO1995002214A1 (fr) Procede de commande d'un servomoteur permettant d'affecter de la souplesse aux coordonnees de travail
WO1998008149A1 (fr) Procede d'acceleration et de deceleration
US8504199B1 (en) Robot control system
JP6123595B2 (ja) 2軸ロボットの速度制御方法
CN111331577B (zh) 机器人的控制装置及控制方法
JP2737725B2 (ja) ロボット制御装置及び方法
JP2003015715A (ja) 指令値生成方法、指令値生成システムおよびプログラム作成装置
WO2002033815A1 (fr) Procede de commande de l'acceleration/deceleration d'un moteur
JP2516589B2 (ja) ロボツト用制御装置
JPH02144705A (ja) ロボットアームの制御方法
JPH10149210A (ja) 位置決め制御系の指令作成方法

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE

121 Ep: the epo has been informed by wipo that ep was designated in this application
122 Ep: pct application non-entry in european phase