WO2024024578A1 - Robot control method and robot control device - Google Patents
Robot control method and robot control device Download PDFInfo
- Publication number
- WO2024024578A1 WO2024024578A1 PCT/JP2023/026310 JP2023026310W WO2024024578A1 WO 2024024578 A1 WO2024024578 A1 WO 2024024578A1 JP 2023026310 W JP2023026310 W JP 2023026310W WO 2024024578 A1 WO2024024578 A1 WO 2024024578A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- arm
- motor
- gravity
- robot
- command
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 33
- 230000005484 gravity Effects 0.000 claims description 70
- 230000003247 decreasing effect Effects 0.000 claims description 4
- 230000003068 static effect Effects 0.000 description 23
- 238000010586 diagram Methods 0.000 description 20
- 230000000052 comparative effect Effects 0.000 description 17
- 239000003638 chemical reducing agent Substances 0.000 description 16
- 238000006243 chemical reaction Methods 0.000 description 5
- 238000003466 welding Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000000630 rising effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000020169 heat generation Effects 0.000 description 1
- 230000004043 responsiveness Effects 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/10—Programme-controlled manipulators characterised by positioning means for manipulator elements
Definitions
- the present disclosure relates to a robot control method and a robot control device.
- Patent Document 1 discloses that when a robot remains stopped for a predetermined period of time or more, an axis on which a dynamic load is applied is slightly moved in a direction opposite to the direction in which the load is applied, and then returned to its original position. A method of controlling a robot is disclosed.
- the motor when the robot is stopped, the motor needs to generate a torque that counteracts the gravity and static friction force applied to the robot.
- the torque generated by the motor is proportional to the motor current, if the robot moves upward and then stops, the current consumption will increase.
- Patent Document 1 after confirming that the robot has been stopped for a predetermined period of time, the robot is moved slightly to forcibly create a state in which a load is transmitted from the arm, and the load is generated by a servo motor.
- the power consumption and heat generation are reduced by balancing the torque generated by the engine.
- the robot stops for a short time there is a problem that the effect of reducing the current consumption of the motor is reduced.
- the present disclosure has been made in view of this point, and its purpose is to reduce the current consumption of the motor when the arm is in a standby state after stopping its operation.
- a first disclosure is a method for controlling a robot that operates an arm using a motor, which includes inputting a position command to the motor to rotate the arm, and stopping input of the position command to the motor.
- the step and the rotation direction of the arm immediately before stopping the input of the position command are a first direction (upward direction) opposite to the direction of gravity, or a second direction (downward) in the same direction as the direction of gravity.
- the rotation direction of the arm immediately before stopping the input of the position command is the opposite direction to the direction of gravity or the same direction as the direction of gravity. Based on the determination result of the rotational direction of the arm, an additional command is input to the motor. This makes it possible to reduce the current consumption of the motor when the arm is in a standby state after stopping its operation.
- the rotation direction of the arm immediately before stopping is the first direction (upward direction), that is, the direction opposite to the direction of gravity
- the static friction force is applied in the direction opposite to the direction of stopping, that is, the direction of gravity. Therefore, when the robot is in a standby state, the motor needs to generate a torque that is the sum of the gravitational force applied to the arm and the static friction force, which increases the current consumption of the motor.
- the arm when the arm is put into a standby state after stopping the operation of the arm, if the rotation direction of the arm immediately before stopping is the first direction (upward direction), the arm is moved from the standby position. After overshooting in the first direction (upward), the arm is rotated in the same direction as the direction of gravity toward the standby position.
- a second disclosure provides the robot control method of the first disclosure, including a step of gradually decreasing the additional instruction after inputting the additional instruction to the motor.
- a third disclosure is that in the robot control method of the first disclosure, the additional command is input to the motor immediately after inputting the position command is stopped.
- the power consumption of the motor can be reduced.
- the additional command is input to the motor before the actual position of the arm reaches the standby position of the arm.
- a fifth disclosure is a control device for a robot that operates an arm using a motor, the control device inputting a position command to the motor to rotate the arm, and controlling the position command to the motor. and the direction of rotation of the arm immediately before stopping the input of the position command is a first direction (upward) opposite to the direction of gravity, or a second direction (upward) in the same direction as the direction of gravity. If it is determined that the direction is in the first direction (upward direction), the arm is overshot in the first direction (upward direction); and inputting an additional command to the motor so as not to overshoot the arm in the second direction (downward) when it is determined that the arm is in the second direction (downward).
- the rotation direction of the arm immediately before stopping the input of the position command is opposite to the direction of gravity or the same direction as the direction of gravity. Based on the determination result of the rotational direction of the arm, an additional command is input to the motor. This makes it possible to reduce the current consumption of the motor when the arm is in a standby state after stopping its operation.
- FIG. 1 is a schematic configuration diagram of a vertically articulated 6-axis robot according to the present embodiment. It is a schematic diagram of a robot mechanism.
- FIG. 2 is a block diagram schematically showing the internal configuration of a robot mechanism and a robot control device.
- FIG. 2 is a block diagram of a robot drive control system.
- FIG. 3 is a diagram showing a state in which the tip of the arm is at a 0° position.
- 7 is a diagram illustrating the relationship between the standby position of the arm and the motor torque in Comparative Example 1.
- FIG. 7 is a diagram illustrating the relationship between the standby position of the arm and the motor torque in Comparative Example 2.
- FIG. 7 is a diagram illustrating the relationship between the standby position of the arm and the motor torque in Comparative Example 3.
- FIG. 1 is a schematic configuration diagram of a vertically articulated 6-axis robot according to the present embodiment. It is a schematic diagram of a robot mechanism.
- FIG. 2 is a block diagram schematically showing
- FIG. 7 is a diagram illustrating the relationship between the standby position of the arm and the motor torque in Comparative Example 4.
- FIG. 6 is a diagram showing the current consumption of the motor when the arm stops rising.
- FIG. 6 is a diagram showing the current consumption of the motor when the arm stops descending.
- FIG. 7 is a diagram illustrating the relationship between the standby position of the arm and the motor torque in Comparative Example 5.
- 7 is a diagram illustrating the relationship between the standby position of the arm and the motor torque in Comparative Example 6.
- FIG. 7 is a diagram illustrating the relationship between the standby position of the arm and the motor torque in Comparative Example 7.
- FIG. 7 is a diagram illustrating the relationship between the standby position of the arm and the motor torque in Comparative Example 8.
- FIG. 6 is a diagram illustrating the relationship between the standby position of the arm and the motor torque when an additional command is input after the arm has been rotated to a 90° position in a direction opposite to the direction of gravity.
- FIG. 7 is a diagram illustrating the relationship between the standby position of the arm and the motor torque when an additional command is input after the arm has been rotated to a 270° position in the direction opposite to the direction of gravity.
- FIG. 7 is a diagram illustrating the relationship between the standby position of the arm and the motor torque when an additional command is input after the arm has been rotated to a 90° position in the same direction as the direction of gravity.
- FIG. 7 is a diagram illustrating the relationship between the standby position of the arm and the motor torque when an additional command is input after the arm has been rotated to a 270° position in the same direction as the direction of gravity.
- the robot 60 includes a robot mechanism 61 and a robot control device 62.
- the robot mechanism 61 has a plurality of arms 63 and a plurality of joint shafts 64.
- a motor 2 and a reduction gear 3 are provided near the joint shaft 64.
- the robot mechanism 61 is driven using the motor 2 and the speed reducer 3.
- the first arm 1, the second arm 9, the motor 2, and the speed reducer 3 are mechanically coupled. Note that, in the example shown in FIG. 2, only a partial outline of the robot mechanism 61 is shown in order to simplify the explanation.
- the first arm 1 is a member that serves as a base to which the motor 2 is attached.
- a motor 2, a reduction gear 3, and a bearing 4 are fixed to the first arm 1.
- a second arm 9 serving as a load is coupled to the rotating portion of the secondary side 7 of the reducer, and the second arm 9 is driven.
- the motor 2 for example, a servo motor is used.
- the primary speed reducer 6 is coupled to the rotor 5 within the motor 2, and rotates at a predetermined motor rotational speed ⁇ M with respect to the rotational shaft of the motor 2.
- the speed reducer 3 reduces the motor rotation speed ⁇ M to the load rotation speed ⁇ L at a predetermined reduction ratio Rg.
- the reduction gear 3 has backlash (gap) and a spring component between the reduction gear primary side 6 and the reduction gear secondary side 7, so the equation for the reduction ratio Rg mentioned above holds true because of the reduction This is only a steady state in which the primary side 6 of the machine contacts the secondary side 7 of the reducer, the backlash (gap) is pushed to one side, and the elongation of the spring is constant.
- the robot control device 62 includes an operation/teaching section 65 and a main control section 66.
- the operation/teaching unit 65 stores, for example, the trajectories of the plurality of arms 63 acquired during teaching, the rotational operations of each motor 2 for drawing these trajectories, and the like.
- the main control unit 66 receives instructions from the operation/teaching unit 65 and issues position commands to each joint axis 64 of the robot 60 according to the locus of movement of the arm 63, etc. of the robot mechanism 61 stored in the operation/teaching unit 65.
- ⁇ 6com is output from ⁇ 1com which is ⁇ com. Note that in this embodiment, the number of axes is six.
- the servo control unit 67 (first servo control unit) corresponding to each axis of the robot 60 controls the motor 68 (first motor) in the robot mechanism 61 so as to follow the position command ⁇ com. do. Then, the arm 69 (first arm) is driven via the reducer 53 (first reducer).
- a current control command IM is output from the servo control unit 67 to the motor 68, and the drive current of the motor 68 is controlled. Further, the rotational position ⁇ M of the motor 68 is fed back to the servo control unit 67 from the encoder 51 (first encoder) corresponding to the motor 68, and the current control command IM is adjusted.
- the arm 69 (first arm) in FIG. 3 corresponds to the first arm 1 in FIG. 2.
- the reducer 53 (first reducer) in FIG. 3 corresponds to the reducer 3 in FIG. 2.
- motor 68 (first motor) in FIG. 3 corresponds to motor 2 in FIG. 2.
- the robot control device 62 also includes a dynamics calculation block 54 and a stop additional command calculation block 55.
- the dynamics calculation block 54 calculates the gravitational torque ⁇ g (hereinafter, ⁇ 1g to ⁇ 6g will be referred to as ⁇ g) from the position command ⁇ com (hereinafter, ⁇ 1com to ⁇ 6com will be referred to as ⁇ com).
- the gravitational torque ⁇ g calculated by the dynamics calculation block 54 is output to the stop additional command calculation block 55.
- the gravitational torque ⁇ g is the torque applied to each joint shaft 64 at the stop position of the arm 69. Furthermore, the dynamics calculation block 54 calculates the direction of gravity of each joint axis 64 at the stop position of the arm 69 from the stop direction of the position command ⁇ com. Note that the "stopping direction” is the direction in which the vehicle was traveling until it stopped.
- the stop additional command calculation block 55 calculates an additional command ⁇ p (hereinafter, ⁇ 1p to ⁇ 6p will be referred to as ⁇ p) based on the gravitational torque ⁇ g.
- the additional command ⁇ p calculated by the stop additional command calculation block 55 is output to the servo control section 67.
- the additional command ⁇ p is a signal input to the motor 68 in order to cause the arm 69 to overshoot or undershoot in the direction opposite to the direction of gravity after the input of the position command ⁇ com is stopped.
- FIG. 4 is a block diagram of the robot drive control system. Note that FIG. 4 illustrates drive control of only one axis (Y-axis) of the system shown in FIG. 2. Specifically, a control model of a system including the first arm 1 shown in FIG. 2, the motor 2, the reducer 3, the bearing 4, the second arm 9, and the encoder 51 shown in FIG. 3 is as follows. This corresponds to block 40 (control system model of robot mechanism 61) in FIG.
- the backlash and spring component existing between the primary side 6 and the secondary side 7 of the reducer are set as a spring constant Ks.
- Kt is the torque constant of the motor 2.
- 1/Rg is the reciprocal of the reduction ratio Rg.
- 1/(JMs+DM) is the motor transfer function.
- 1/(JLs+DL) is the load transfer function.
- Backlash is a transfer function corresponding to backlash indicating backlash of the reduction gear 3.
- s is a differential element.
- 1/s is an integral element.
- Td is an external force applied to the second arm 9, which is a load.
- KPP in the position control block 20 is a proportional gain during the position loop.
- KP in the speed control block 30 is a speed proportional gain.
- KI is velocity integral gain.
- JM is the moment of inertia around the rotation axis of the rotor 5 and the primary side 6 of the reducer.
- DM is the viscous friction coefficient on the motor 2 side.
- JL is the moment of inertia around the rotation axis of the second arm 9, which is the load, and the secondary side 7 of the reducer.
- DL is a viscous friction coefficient on the speed reducer 3 side.
- the motor position command ⁇ com is input to the position control block 20 of the servo control section 67. Further, the position command ⁇ com is converted into a gravitational torque ⁇ g by the dynamic calculation block 54, and then inputted to the stop additional command calculation block 55.
- the stop additional command calculation block 55 calculates the additional command ⁇ p based on the gravitational torque ⁇ g.
- the additional command ⁇ p is added to the original position command ⁇ com.
- the motor rotational position ⁇ M is fed back from the encoder 51 to the position command ⁇ com, and a speed command ⁇ com of the motor 68 is generated from this information and input to the speed control block 30.
- the motor speed ⁇ M obtained from the motor position ⁇ M from the encoder 51 is fed back to the speed command ⁇ com, and a motor current control command IM (corresponding to acceleration) is generated from the speed control block 30.
- a welding torch 74 is attached to the arm 69 of the robot mechanism 61.
- the welding torch 74 can be moved in any of the X-axis direction, Y-axis direction, and Z-axis direction by driving the motor 68 corresponding to each joint shaft 64.
- the tip of the welding torch 74 including the protruding portion of the welding wire is the tip of the arm 69.
- the position in which the tip of the arm 69 faces vertically downward is the 0° (6 o'clock) position
- the position in which the tip of the arm 69 faces vertically upward is 180°. (12 o'clock) position
- the tip of the arm 69 faces horizontally to the left at the 90° (9 o'clock) position
- the tip of the arm 69 faces horizontally to the right at the 270° (3 o'clock) position. position).
- KYM is a conversion coefficient from the rotational position ⁇ M of the motor to the motor position YM calculated by replacing the arm tip position.
- ⁇ M is the rotational position of the motor. Note that these values also shown below are values in the Y-axis direction. Furthermore, both conversion coefficients change depending on the posture of the arm.
- KYA is a conversion coefficient from the arm rotational position ⁇ L to the arm tip position YA in the Y-axis direction.
- ⁇ L is the rotational position of the arm tip.
- KVM is a conversion coefficient from the rotational speed ⁇ M of the motor to the motor speed VM in terms of arm tip speed.
- ⁇ M is the rotational speed of the motor.
- KVA is a conversion coefficient from the rotational speed ⁇ L of the arm to the arm tip speed VA in the Y-axis direction.
- ⁇ L is the motor speed at the tip of the arm.
- the arm 69 is rotated, for example, from the 0° (6 o'clock) position by 90° in the direction opposite to the direction of gravity (clockwise), and then stopped and rotated by 90°.
- the arm 69 is in a standby state at the (9 o'clock) position.
- the arm 69 is rotated 90 degrees from the 0 degree (6 o'clock) position in the direction opposite to the direction of gravity (counterclockwise direction) and then stopped.
- the arm 69 is in a standby state at the 3 o'clock position.
- the arm 69 is rotated 90 degrees from a position of 180 degrees (12 o'clock) in the same direction as the direction of gravity (counterclockwise direction) and then stopped.
- the arm 69 is in a standby state at the 9 o'clock position.
- the arm 69 is rotated, for example, from the 180° (12 o'clock) position by 90° in the same direction as the direction of gravity (clockwise), then stopped, and then rotated 270°.
- the arm 69 is in a standby state at the (3 o'clock) position.
- the current consumption of the motor 68 can be reduced when the rotation direction of the arm 69 immediately before stopping is in the same direction as the gravitational direction, compared to when it is in the opposite direction to the gravitational direction.
- the arm 69 is rotated 90 degrees from the 0 degree (6 o'clock) position in a direction opposite to the direction of gravity (clockwise direction) and then stopped. , the arm 69 is in a standby state at the 90° (9 o'clock) position. After confirming that the arm 69 is in a standby state and stopping the arm 69 at its actual position, an additional command is input to the motor 68 to cause the arm 69 to move slightly.
- the arm 69 is rotated 90 degrees from the 0 degree (6 o'clock) position in the direction opposite to the direction of gravity (counterclockwise direction) and then stopped.
- the arm 69 is in a standby state at the 3 o'clock position. After confirming that the arm 69 is in a standby state and stopping the arm 69 at its actual position, an additional command is input to the motor 68 to cause the arm 69 to move slightly.
- the motor 68 needs to generate a motor torque that is the sum of the gravitational torque applied to the arm 69 and the static friction torque. Therefore, the current consumption of the motor 68 increases.
- a static friction force is applied in the direction opposite to the direction of gravity.
- the motor 68 only needs to generate a motor torque obtained by subtracting the static friction torque from the gravitational torque applied to the arm 69, and the current consumption of the motor 68 is reduced.
- the arm 69 is rotated, for example, from the 180° (12 o'clock) position by 90° in the same direction as the direction of gravity (counterclockwise) and then stopped.
- the arm 69 is in a standby state at the 9 o'clock position.
- the arm 69 is rotated, for example, from the 180° (12 o'clock) position by 90° in the same direction as the direction of gravity (clockwise), and then stopped and rotated to 270°.
- the arm 69 is in a standby state at the (3 o'clock) position.
- the direction of rotation of the arm 69 immediately before stopping is opposite to the direction of gravity, and static friction force is applied in the direction opposite to the direction of stopping, that is, in the same direction as the direction of gravity. Therefore, when the robot 60 is in a standby state, the motor 68 needs to generate a motor torque that is the sum of the gravitational torque applied to the arm 69 and the static friction torque, which increases the current consumption of the motor 68.
- the robot 60 is designed to reduce the current consumption of the motor 68 when the arm 69 stops operating and is in a standby state.
- a control method was proposed.
- step S10 the stop additional command calculation block 55 determines whether the position command ⁇ com is being stopped. If the determination in step S10 is "YES”, the process branches to step S11. If the determination in step S10 is "NO”, the process branches to step S16.
- step S11 the stop additional command calculation block 55 determines whether the position command ⁇ com is in operation one cycle before the position command ⁇ com. If the determination in step S11 is "YES”, the process branches to step S12. If the determination in step S11 is "NO”, the process branches to step S16. In this way, the timing at which the input of the position command ⁇ com to the motor 68 is stopped can be determined based on the determination results in steps S11 and S12.
- step S12 the stop additional command calculation block 55 determines whether the absolute value of the gravity torque ⁇ g calculated by the dynamics calculation block 54 is larger than a predetermined gravity threshold value. If the determination in step S12 is "YES”, the process branches to step S13. If the determination in step S12 is "NO”, the process branches to step S16.
- step S12 for example, if the tip of the arm 69 is stopped near the 0° (6 o'clock) position and the gravitational torque ⁇ g applied to the arm 69 is not so large, then the motor 68 is Since the current consumption is small, it is determined that there is no need to give additional commands.
- step S13 the stop additional command calculation block 55 determines whether the gravity torque ⁇ g is larger than zero.
- the description will be made assuming that the clockwise direction is the forward direction.
- the rotation direction of the arm 69 is the positive direction and the same as the direction of gravity. It is the direction.
- the sign of the gravitational torque ⁇ g is positive.
- step S13 determines whether the determination in step S13 is "YES" If the determination in step S13 is "YES”, the process branches to step S14. If the determination in step S13 is "NO”, the process branches to step S15.
- step S16 it is determined whether the absolute value of the additional command ⁇ p is greater than 0. If the determination in step S16 is "YES”, the process branches to step S17. If the determination in step S16 is "NO”, the process ends.
- step S17 the stop additional command calculation block 55 gradually decreases the absolute value of the additional command ⁇ p, and ends the process.
- the arm 69 can be gradually rotated in the same direction as the direction of gravity toward the standby position.
- the arm 69 is rotated, for example, from the 0° (6 o'clock) position by 90° in the direction opposite to the direction of gravity (clockwise), and then stopped and rotated to 90° (9 o'clock).
- the arm 69 is in a standby state at the position.
- the arm 69 is rotated, for example, from the 0° (6 o'clock) position by 90° in the direction opposite to the direction of gravity (counterclockwise), and then stopped at the 270° (3 o'clock) position.
- the arm 69 is in a standby state.
- the amount of overshoot at the standby position of the arm 69 may be 1 mm or less at the tip position of the arm 69, and therefore does not pose a particular problem.
- the arm 69 is rotated, for example, from the 180° (12 o'clock) position by 90° in the same direction as the direction of gravity (counterclockwise), and then stopped, and then returned to the 90° (9 o'clock) position.
- the arm 69 is in a standby state.
- the amount of overshoot at the standby position of the arm 69 may be 1 mm or less at the distal end position of the arm 69, so this does not pose a particular problem.
- the arm 69 is rotated, for example, from the 180° (12 o'clock) position by 90° in the same direction as the direction of gravity (clockwise), then stopped, and the arm 69 is at the 270° (3 o'clock) position. 69 is in a standby state.
- the amount of overshoot at the standby position of the arm 69 may be 1 mm or less at the distal end position of the arm 69, so this does not pose a particular problem.
- the rotation direction of the arm 69 immediately before stopping is the second direction (downward) (same direction as the direction of gravity)
- the arm 69 is prevented from overshooting from the standby position in the second direction (downward). After that, the arm 69 is rotated toward the standby position in the same direction as the direction of gravity.
- the arm 69 is stopped after being rotated in the same direction as the direction of gravity.
- a situation can be created in which a static friction force is applied in the direction opposite to the direction of gravity.
- the motor 68 only needs to generate a torque obtained by subtracting the static friction force from the gravity applied to the arm 69, and the current consumption of the motor 68 can be reduced.
- the present disclosure is extremely useful because it can achieve a highly practical effect of reducing the current consumption of the motor when the arm is in a standby state after stopping its operation. Therefore, the possibility of industrial application is high.
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
Abstract
The present invention determines whether the rotational direction of an arm (63) immediately prior to stop of input of a position command θcom is in a first direction (upward) that is opposite to the gravitational direction or in a second direction (downward) that is same as the gravitational direction. In the case when it is determined that said rotational direction is in the first direction (upward), an additional command is inputted to a motor (68) so as to cause the arm (63) first to overshoot in the first direction (upward) and then gradually come closer to a standby position, whereas in the case when it is determined that the rotational direction is in the second direction (downward), an additional command is inputted to the motor (68) so as to cause the arm (63) first to not overshoot in the second direction (downward) and then gradually come closer to the standby position.
Description
本開示は、ロボットの制御方法及びロボットの制御装置に関する。
The present disclosure relates to a robot control method and a robot control device.
特許文献1には、ロボット停止状態が所定の時間以上継続した場合、動負荷が作用している軸を、負荷の作用方向と逆方向に微小移動させ、その後、元の位置へ戻す移動をさせて停止させるようにしたロボットの制御方法が開示されている。
Patent Document 1 discloses that when a robot remains stopped for a predetermined period of time or more, an axis on which a dynamic load is applied is slightly moved in a direction opposite to the direction in which the load is applied, and then returned to its original position. A method of controlling a robot is disclosed.
ロボットを重力に逆らって上方向へ動作させた後で停止する場合、停止方向とは逆方向、すなわち重力方向に静止摩擦力が印加される。一方、ロボットを重力方向に沿って下方向へ動作させた後で停止する場合、重力と逆方向に静止摩擦力が印加される。
When the robot moves upward against gravity and then stops, a static friction force is applied in the opposite direction to the stopping direction, that is, in the direction of gravity. On the other hand, when the robot moves downward along the direction of gravity and then stops, a static friction force is applied in the opposite direction to gravity.
ところで、ロボット停止状態では、モータにおいて、ロボットに加わる重力と静止摩擦力とに拮抗するトルクを発生させる必要がある。ここで、モータの発生トルクは、モータ電流に比例するので、ロボットを上方向へ動作させた後で停止した場合には、消費電流が増大することになる。
By the way, when the robot is stopped, the motor needs to generate a torque that counteracts the gravity and static friction force applied to the robot. Here, since the torque generated by the motor is proportional to the motor current, if the robot moves upward and then stops, the current consumption will increase.
そこで、特許文献1の開示では、ロボット停止状態が所定の時間以上継続したことを確認した後でロボットを微小移動させ、アームから負荷が伝わる状態を強制的に作ってその負荷をサーボモータで発生するトルクと平衡するようにして電力消費、発熱量を低減するようにしている。しかしながら、ロボットの停止時間が短い場合には、モータの消費電流を低減する効果が少なくなるという問題がある。
Therefore, in the disclosure of Patent Document 1, after confirming that the robot has been stopped for a predetermined period of time, the robot is moved slightly to forcibly create a state in which a load is transmitted from the arm, and the load is generated by a servo motor. The power consumption and heat generation are reduced by balancing the torque generated by the engine. However, when the robot stops for a short time, there is a problem that the effect of reducing the current consumption of the motor is reduced.
本開示は、かかる点に鑑みてなされたものであり、その目的は、アームの動作を停止してアームが待機状態にあるときの、モータの消費電流を低減できるようにすることにある。
The present disclosure has been made in view of this point, and its purpose is to reduce the current consumption of the motor when the arm is in a standby state after stopping its operation.
第1の開示は、モータを用いてアームを動作させるロボットの制御方法であって、前記モータに位置指令を入力して前記アームを回転させるステップと、前記モータに対する前記位置指令の入力を停止するステップと、前記位置指令の入力を停止する直前の前記アームの回転方向が、重力方向と逆方向の第1方向(上方向)、又は重力方向と同方向の第2方向(下方向)であるかを判定するステップと、前記アームの回転方向が前記第1方向(上方向)であると判定された場合に前記アームを前記第1方向(上方向)にオーバーシュートさせる一方、前記アームの回転方向が前記第2方向(下方向)であると判定された場合に前記アームを前記第2方向(下方向)にオーバーシュートさせないように、前記モータに追加指令を入力するステップと、を備える。
A first disclosure is a method for controlling a robot that operates an arm using a motor, which includes inputting a position command to the motor to rotate the arm, and stopping input of the position command to the motor. The step and the rotation direction of the arm immediately before stopping the input of the position command are a first direction (upward direction) opposite to the direction of gravity, or a second direction (downward) in the same direction as the direction of gravity. a step of determining whether the rotation direction of the arm is the first direction (upward direction), overshooting the arm in the first direction (upward direction); and inputting an additional command to the motor so as not to overshoot the arm in the second direction (downward) when the direction is determined to be the second direction (downward).
第1の開示では、位置指令の入力を停止する直前のアームの回転方向が、重力方向と逆方向、又は重力方向と同方向であるかを判定する。そして、アームの回転方向の判定結果に基づいて、モータに追加指令を入力するようにしている。これにより、アームの動作を停止してアームが待機状態にあるときの、モータの消費電流を低減することができる。
In the first disclosure, it is determined whether the rotation direction of the arm immediately before stopping the input of the position command is the opposite direction to the direction of gravity or the same direction as the direction of gravity. Based on the determination result of the rotational direction of the arm, an additional command is input to the motor. This makes it possible to reduce the current consumption of the motor when the arm is in a standby state after stopping its operation.
具体的に、停止直前のアームの回転方向が第1方向(上方向)、つまり、重力方向と逆方向である場合、停止方向とは逆方向、すなわち重力方向に静止摩擦力が印加される。そのため、ロボットの待機状態では、モータにおいて、アームに加わる重力に静止摩擦力を加算したトルクを発生させる必要があり、モータの消費電流が増大する。
Specifically, when the rotation direction of the arm immediately before stopping is the first direction (upward direction), that is, the direction opposite to the direction of gravity, the static friction force is applied in the direction opposite to the direction of stopping, that is, the direction of gravity. Therefore, when the robot is in a standby state, the motor needs to generate a torque that is the sum of the gravitational force applied to the arm and the static friction force, which increases the current consumption of the motor.
一方、停止直前のアームの回転方向が第2方向(下方向)、つまり、重力方向と同方向である場合、停止方向とは逆方向、すなわち、重力方向と逆方向に静止摩擦力が印加される。そのため、ロボットの待機状態では、モータにおいて、アームに加わる重力から静止摩擦力を減算したトルクを発生させるだけでよく、モータの消費電流が低減される。
On the other hand, if the rotation direction of the arm immediately before stopping is the second direction (downward), that is, the same direction as the gravitational direction, static friction force is applied in the opposite direction to the stopping direction, that is, in the opposite direction to the gravitational direction. Ru. Therefore, in the standby state of the robot, the motor only needs to generate a torque obtained by subtracting the static friction force from the gravity applied to the arm, and the current consumption of the motor is reduced.
そこで、本開示では、アームの動作を停止させた後でアームを待機状態とするときに、停止直前のアームの回転方向が第1方向(上方向)である場合には、アームを待機位置から第1方向(上方向)にオーバーシュートさせた後、待機位置に向かって重力方向と同方向にアームを回転させるようにしている。
Therefore, in the present disclosure, when the arm is put into a standby state after stopping the operation of the arm, if the rotation direction of the arm immediately before stopping is the first direction (upward direction), the arm is moved from the standby position. After overshooting in the first direction (upward), the arm is rotated in the same direction as the direction of gravity toward the standby position.
また、停止直前のアームの回転方向が第2方向(下方向)である場合には、アームを待機位置から第2方向(下方向)にオーバーシュートさせないようにした後、待機位置に向かって重力方向と同方向にアームを回転させるようにしている。
In addition, if the rotation direction of the arm immediately before stopping is the second direction (downward), after preventing the arm from overshooting from the standby position in the second direction (downward), The arm is rotated in the same direction as the direction.
これにより、停止直前のアームの回転方向が第1方向(上方向)又は第2方向(下方向)の何れであっても、アームを重力方向と同方向に回転させた後で停止する場合と同様に、重力方向と逆方向に静止摩擦力が印加される状況を生み出すことができる。その結果、アームを待機状態としたときに、モータにおいて、アームに加わる重力から静止摩擦力を減算したトルクを発生させるだけでよく、モータの消費電流を低減することができる。
As a result, regardless of whether the direction of rotation of the arm immediately before stopping is the first direction (upward direction) or the second direction (downward direction), it is possible to stop the arm after rotating it in the same direction as the direction of gravity. Similarly, a situation can be created in which a static frictional force is applied in the direction opposite to the direction of gravity. As a result, when the arm is in a standby state, the motor only needs to generate a torque obtained by subtracting the static friction force from the gravity applied to the arm, and the current consumption of the motor can be reduced.
第2の開示は、第1の開示のロボットの制御方法において、前記モータに前記追加指令を入力した後で、前記追加指令を漸減させるステップを備える。
A second disclosure provides the robot control method of the first disclosure, including a step of gradually decreasing the additional instruction after inputting the additional instruction to the motor.
第2の開示では、モータに追加指令を入力した後で、追加指定を漸減させることで、待機位置に向かって重力方向と同方向にアームを徐々に回転させることができる。
In the second disclosure, by inputting an additional command to the motor and then gradually decreasing the additional designation, it is possible to gradually rotate the arm toward the standby position in the same direction as the direction of gravity.
第3の開示は、第1の開示のロボットの制御方法において、前記位置指令の入力を停止した直後に前記モータに前記追加指令を入力する。
A third disclosure is that in the robot control method of the first disclosure, the additional command is input to the motor immediately after inputting the position command is stopped.
第3の開示では、位置指令の入力を停止した直後にモータに追加指令を入力するので、モータの消費電力を削減することができる。
In the third disclosure, since the additional command is input to the motor immediately after the input of the position command is stopped, the power consumption of the motor can be reduced.
第4の開示は、第1の開示のロボットの制御方法において、前記アームの実位置が前記アームの待機位置に至る前に前記モータに前記追加指令を入力する。
In a fourth disclosure, in the robot control method of the first disclosure, the additional command is input to the motor before the actual position of the arm reaches the standby position of the arm.
第4の開示では、アームの実位置がアームの待機位置に至る前にモータに追加指令を入力するので、モータの消費電力を削減することができる。
In the fourth disclosure, since an additional command is input to the motor before the actual position of the arm reaches the standby position of the arm, power consumption of the motor can be reduced.
第5の開示は、モータを用いてアームを動作させるロボットの制御装置であって、前記制御装置は、前記モータに位置指令を入力して前記アームを回転させる動作と、前記モータに対する前記位置指令の入力を停止する動作と、前記位置指令の入力を停止する直前の前記アームの回転方向が、重力方向と逆方向の第1方向(上方向)、又は重力方向と同方向の第2方向(下方向)であるかを判定する動作と、前記第1方向(上方向)であると判定された場合に前記アームを前記第1方向(上方向)にオーバーシュートさせる一方、前記第2方向(下方向)であると判定された場合に前記アームを前記第2方向(下方向)にオーバーシュートさせないように、前記モータに追加指令を入力する動作と、を実行する。
A fifth disclosure is a control device for a robot that operates an arm using a motor, the control device inputting a position command to the motor to rotate the arm, and controlling the position command to the motor. and the direction of rotation of the arm immediately before stopping the input of the position command is a first direction (upward) opposite to the direction of gravity, or a second direction (upward) in the same direction as the direction of gravity. If it is determined that the direction is in the first direction (upward direction), the arm is overshot in the first direction (upward direction); and inputting an additional command to the motor so as not to overshoot the arm in the second direction (downward) when it is determined that the arm is in the second direction (downward).
第5の開示では、位置指令の入力を停止する直前のアームの回転方向が、重力方向と逆方向、又は重力方向と同方向であるかを判定する。そして、アームの回転方向の判定結果に基づいて、モータに追加指令を入力するようにしている。これにより、アームの動作を停止してアームが待機状態にあるときの、モータの消費電流を低減することができる。
In the fifth disclosure, it is determined whether the rotation direction of the arm immediately before stopping the input of the position command is opposite to the direction of gravity or the same direction as the direction of gravity. Based on the determination result of the rotational direction of the arm, an additional command is input to the motor. This makes it possible to reduce the current consumption of the motor when the arm is in a standby state after stopping its operation.
本開示によれば、アームの動作を停止してアームが待機状態にあるときの、モータの消費電流を低減することができる。
According to the present disclosure, it is possible to reduce the current consumption of the motor when the arm is in a standby state after stopping its operation.
以下、本開示の実施形態を図面に基づいて説明する。なお、以下の好ましい実施形態の説明は、本質的に例示に過ぎず、本開示、その適用物或いはその用途を制限することを意図するものではない。
Hereinafter, embodiments of the present disclosure will be described based on the drawings. Note that the following description of preferred embodiments is essentially just an example, and is not intended to limit the present disclosure, its applications, or its uses.
〈ロボット及びその制御系の構成〉
図1に示すように、ロボット60は、ロボットメカ61と、ロボット制御装置62と、を備える。ロボットメカ61は、複数のアーム63と、複数の関節軸64と、を有する。図2に示すように、関節軸64の近傍には、モータ2と、減速機3と、が設けられる。ロボットメカ61は、モータ2及び減速機3を用いて駆動される。 <Configuration of robot and its control system>
As shown in FIG. 1, therobot 60 includes a robot mechanism 61 and a robot control device 62. The robot mechanism 61 has a plurality of arms 63 and a plurality of joint shafts 64. As shown in FIG. 2, a motor 2 and a reduction gear 3 are provided near the joint shaft 64. The robot mechanism 61 is driven using the motor 2 and the speed reducer 3.
図1に示すように、ロボット60は、ロボットメカ61と、ロボット制御装置62と、を備える。ロボットメカ61は、複数のアーム63と、複数の関節軸64と、を有する。図2に示すように、関節軸64の近傍には、モータ2と、減速機3と、が設けられる。ロボットメカ61は、モータ2及び減速機3を用いて駆動される。 <Configuration of robot and its control system>
As shown in FIG. 1, the
図2に示すように、ロボットメカ61においては、第1アーム1と、第2アーム9と、モータ2と、減速機3と、が機械的に結合している。なお、図2に示す例では、説明を平易にするために、ロボットメカ61の一部分の概要のみを図示している。
As shown in FIG. 2, in the robot mechanism 61, the first arm 1, the second arm 9, the motor 2, and the speed reducer 3 are mechanically coupled. Note that, in the example shown in FIG. 2, only a partial outline of the robot mechanism 61 is shown in order to simplify the explanation.
第1アーム1は、モータ2を取り付けるベースとなる部材である。第1アーム1には、モータ2と、減速機3と、ベアリング4と、が固定される。減速機2次側7の回転部には、負荷としての第2アーム9が結合され、第2アーム9が駆動される。なお、モータ2としては、例えば、サーボモータが用いられる。
The first arm 1 is a member that serves as a base to which the motor 2 is attached. A motor 2, a reduction gear 3, and a bearing 4 are fixed to the first arm 1. A second arm 9 serving as a load is coupled to the rotating portion of the secondary side 7 of the reducer, and the second arm 9 is driven. Note that as the motor 2, for example, a servo motor is used.
減速機1次側6は、モータ2内のロータ5に結合され、モータ2の回転軸に対して、所定のモータ回転速度ωMで回転する。減速機3は、所定の減速比Rgで、モータ回転速度ωMを負荷回転速度ωLに減速する。減速比Rgは、Rg=ωM/ωLで算出される。
The primary speed reducer 6 is coupled to the rotor 5 within the motor 2, and rotates at a predetermined motor rotational speed ωM with respect to the rotational shaft of the motor 2. The speed reducer 3 reduces the motor rotation speed ωM to the load rotation speed ωL at a predetermined reduction ratio Rg. The reduction ratio Rg is calculated as Rg=ωM/ωL.
なお、減速機3は、減速機1次側6と減速機2次側7との間にガタ(隙間)及びバネ成分が存在するので、上述した減速比Rgの式が成立するのは、減速機1次側6が減速機2次側7に接触し、ガタ(隙間)が一方に寄せられてバネの伸びが一定となった定常状態のみである。
Note that the reduction gear 3 has backlash (gap) and a spring component between the reduction gear primary side 6 and the reduction gear secondary side 7, so the equation for the reduction ratio Rg mentioned above holds true because of the reduction This is only a steady state in which the primary side 6 of the machine contacts the secondary side 7 of the reducer, the backlash (gap) is pushed to one side, and the elongation of the spring is constant.
図3に示すように、ロボット制御装置62は、操作・教示部65と、メイン制御部66と、を有する。操作・教示部65は、例えば、ティーチング時に取得された複数のアーム63の軌跡、及びこの軌跡を描くための各モータ2の回転動作等を記憶する。
As shown in FIG. 3, the robot control device 62 includes an operation/teaching section 65 and a main control section 66. The operation/teaching unit 65 stores, for example, the trajectories of the plurality of arms 63 acquired during teaching, the rotational operations of each motor 2 for drawing these trajectories, and the like.
メイン制御部66は、操作・教示部65からの指示を受け、操作・教示部65に記憶されたロボットメカ61のアーム63等の移動の軌跡に従い、ロボット60の各関節軸64への位置指令θcomであるθ1comからθ6comが出力される。なお、本実施の形態において、軸数は6である。
The main control unit 66 receives instructions from the operation/teaching unit 65 and issues position commands to each joint axis 64 of the robot 60 according to the locus of movement of the arm 63, etc. of the robot mechanism 61 stored in the operation/teaching unit 65. θ6com is output from θ1com which is θcom. Note that in this embodiment, the number of axes is six.
さらに、その位置指令θcomに追従するように、ロボット60の各軸に対応するサーボ制御部67(第1のサーボ制御部)が、ロボットメカ61内のモータ68(第1のモータ)をそれぞれ制御する。そして、減速機53(第1の減速機)を介してアーム69(第1のアーム)が駆動する。
Further, the servo control unit 67 (first servo control unit) corresponding to each axis of the robot 60 controls the motor 68 (first motor) in the robot mechanism 61 so as to follow the position command θcom. do. Then, the arm 69 (first arm) is driven via the reducer 53 (first reducer).
具体的には、サーボ制御部67からモータ68に電流制御指令IMが出力され、モータ68の駆動電流が制御される。また、モータ68に対応するエンコーダ51(第1のエンコーダ)から、モータ68の回転位置θMがサーボ制御部67にフィードバックされて、電流制御指令IMが調整される。
Specifically, a current control command IM is output from the servo control unit 67 to the motor 68, and the drive current of the motor 68 is controlled. Further, the rotational position θM of the motor 68 is fed back to the servo control unit 67 from the encoder 51 (first encoder) corresponding to the motor 68, and the current control command IM is adjusted.
ここで、例えば、図3のアーム69(第1のアーム)は、図2の第1アーム1に相当する。例えば、図3の減速機53(第1の減速機)は、図2の減速機3に相当する。例えば、図3のモータ68(第1のモータ)は、図2のモータ2に相当する。
Here, for example, the arm 69 (first arm) in FIG. 3 corresponds to the first arm 1 in FIG. 2. For example, the reducer 53 (first reducer) in FIG. 3 corresponds to the reducer 3 in FIG. 2. For example, motor 68 (first motor) in FIG. 3 corresponds to motor 2 in FIG. 2.
また、ロボット制御装置62は、動力学演算ブロック54と、停止時追加指令演算ブロック55と、を有する。動力学演算ブロック54は、位置指令であるθcom(以下、θ1comからθ6comをθcomと称する)から重力トルクτg(以下、τ1gからτ6gをτgと称する)を演算する。動力学演算ブロック54で演算された重力トルクτgは、停止時追加指令演算ブロック55に出力される。
The robot control device 62 also includes a dynamics calculation block 54 and a stop additional command calculation block 55. The dynamics calculation block 54 calculates the gravitational torque τg (hereinafter, τ1g to τ6g will be referred to as τg) from the position command θcom (hereinafter, θ1com to θ6com will be referred to as θcom). The gravitational torque τg calculated by the dynamics calculation block 54 is output to the stop additional command calculation block 55.
ここで、重力トルクτgは、アーム69の停止位置での各関節軸64に加わるトルクである。また、動力学演算ブロック54は、位置指令θcomの停止方向から、アーム69の停止位置での各関節軸64の重力方向を演算する。なお、「停止方向」とは、停止するまで進んでいた方向のことである。
Here, the gravitational torque τg is the torque applied to each joint shaft 64 at the stop position of the arm 69. Furthermore, the dynamics calculation block 54 calculates the direction of gravity of each joint axis 64 at the stop position of the arm 69 from the stop direction of the position command θcom. Note that the "stopping direction" is the direction in which the vehicle was traveling until it stopped.
停止時追加指令演算ブロック55は、重力トルクτgに基づいて、追加指令θp(以下、θ1pからθ6pをθpと称する)を演算する。停止時追加指令演算ブロック55で演算された追加指令θpは、サーボ制御部67に出力される。
The stop additional command calculation block 55 calculates an additional command θp (hereinafter, θ1p to θ6p will be referred to as θp) based on the gravitational torque τg. The additional command θp calculated by the stop additional command calculation block 55 is output to the servo control section 67.
ここで、追加指令θpとは、位置指令θcomの入力を停止した後で、アーム69を重力方向とは逆方向にオーバーシュート又はアンダーシュートさせるために、モータ68に対して入力する信号である。
Here, the additional command θp is a signal input to the motor 68 in order to cause the arm 69 to overshoot or undershoot in the direction opposite to the direction of gravity after the input of the position command θcom is stopped.
図4は、ロボット駆動制御系のブロック線図である。なお、図4では、図2に示す系の1軸(Y軸)のみの駆動制御を図示している。具体的に、図2に示す、第1アーム1と、モータ2と、減速機3と、ベアリング4と、第2アーム9と、図3に示すエンコーダ51と、を有する系の制御モデルが、図4におけるブロック40(ロボットメカ61の制御系モデル)に相当する。
FIG. 4 is a block diagram of the robot drive control system. Note that FIG. 4 illustrates drive control of only one axis (Y-axis) of the system shown in FIG. 2. Specifically, a control model of a system including the first arm 1 shown in FIG. 2, the motor 2, the reducer 3, the bearing 4, the second arm 9, and the encoder 51 shown in FIG. 3 is as follows. This corresponds to block 40 (control system model of robot mechanism 61) in FIG.
図4に示すように、ブロック40においては、減速機1次側6と減速機2次側7の間に存在するガタ及びバネ成分をバネ定数Ksとしている。
As shown in FIG. 4, in block 40, the backlash and spring component existing between the primary side 6 and the secondary side 7 of the reducer are set as a spring constant Ks.
また、ブロック40において、Ktは、モータ2のトルク定数である。1/Rgは、減速比Rgの逆数である。1/(JMs+DM)は、モータ伝達関数である。1/(JLs+DL)は、負荷伝達関数である。Backlashは、減速機3のガタを示すバックラッシュに対応する伝達関数である。sは、微分要素である。1/sは、積分要素である。Tdは、負荷である第2アーム9に加わる外力である。
Furthermore, in block 40, Kt is the torque constant of the motor 2. 1/Rg is the reciprocal of the reduction ratio Rg. 1/(JMs+DM) is the motor transfer function. 1/(JLs+DL) is the load transfer function. Backlash is a transfer function corresponding to backlash indicating backlash of the reduction gear 3. s is a differential element. 1/s is an integral element. Td is an external force applied to the second arm 9, which is a load.
また、位置制御ブロック20におけるKPPは、位置ループ中の比例ゲインである。速度制御ブロック30におけるKPは、速度比例ゲインである。KIは速度積分ゲインである。
Furthermore, KPP in the position control block 20 is a proportional gain during the position loop. KP in the speed control block 30 is a speed proportional gain. KI is velocity integral gain.
モータ伝達関数において、JMは、ロータ5と減速機1次側6とを合わせた回転軸回りの慣性モーメントである。DMは、モータ2側の粘性摩擦係数である。また、負荷伝達関数において、JLは、負荷である第2アーム9と減速機2次側7とを合わせた回転軸回りの慣性モーメントである。DLは、減速機3側の粘性摩擦係数である。
In the motor transfer function, JM is the moment of inertia around the rotation axis of the rotor 5 and the primary side 6 of the reducer. DM is the viscous friction coefficient on the motor 2 side. In the load transfer function, JL is the moment of inertia around the rotation axis of the second arm 9, which is the load, and the secondary side 7 of the reducer. DL is a viscous friction coefficient on the speed reducer 3 side.
モータの位置指令θcomは、サーボ制御部67の位置制御ブロック20に入力される。また、位置指令θcomは、動力学演算ブロック54で重力トルクτgに変換された後、停止時追加指令演算ブロック55に入力される。
The motor position command θcom is input to the position control block 20 of the servo control section 67. Further, the position command θcom is converted into a gravitational torque τg by the dynamic calculation block 54, and then inputted to the stop additional command calculation block 55.
停止時追加指令演算ブロック55は、重力トルクτgに基づいて追加指令θpを演算する。追加指令θpは、元の位置指令θcomに加算される。また、位置指令θcomには、エンコーダ51からモータ回転位置θMがフィードバックされて、これらの情報からモータ68の速度指令ωcomが生成され、速度制御ブロック30に入力される。
The stop additional command calculation block 55 calculates the additional command θp based on the gravitational torque τg. The additional command θp is added to the original position command θcom. Further, the motor rotational position θM is fed back from the encoder 51 to the position command θcom, and a speed command ωcom of the motor 68 is generated from this information and input to the speed control block 30.
速度指令ωcomに、エンコーダ51からのモータ位置θMから得られるモータ速度ωMがフィードバックされて、速度制御ブロック30からモータの電流制御指令IM(加速度に相当)が生成される。
The motor speed ωM obtained from the motor position θM from the encoder 51 is fed back to the speed command ωcom, and a motor current control command IM (corresponding to acceleration) is generated from the speed control block 30.
図5に示すように、ロボットメカ61のアーム69には、溶接トーチ74が装着される。溶接トーチ74は、各関節軸64に対応するモータ68を駆動させることで、X軸方向、Y軸方向、Z軸方向の何れの方向にも移動し得る。ここで、溶接ワイヤの突き出し部分を含む溶接トーチ74の先端を、アーム69の先端とする。
As shown in FIG. 5, a welding torch 74 is attached to the arm 69 of the robot mechanism 61. The welding torch 74 can be moved in any of the X-axis direction, Y-axis direction, and Z-axis direction by driving the motor 68 corresponding to each joint shaft 64. Here, the tip of the welding torch 74 including the protruding portion of the welding wire is the tip of the arm 69.
なお、以下の説明では、図5において、アーム69の先端が垂直方向の下方を向いた姿勢を0°(6時)の位置、アーム69の先端が垂直方向の上方を向いた姿勢を180°(12時)の位置、アーム69の先端が水平方向の左方を向いた姿勢を90°(9時)の位置、アーム69の先端が水平方向の右方を向いた姿勢を270°(3時)の位置とする。
In the following explanation, in FIG. 5, the position in which the tip of the arm 69 faces vertically downward is the 0° (6 o'clock) position, and the position in which the tip of the arm 69 faces vertically upward is 180°. (12 o'clock) position, the tip of the arm 69 faces horizontally to the left at the 90° (9 o'clock) position, and the tip of the arm 69 faces horizontally to the right at the 270° (3 o'clock) position. position).
図4に示すように、アーム先端位置換算のモータ位置YMは、YM=KYM×θMで表される。KYMは、モータの回転位置θMからアーム先端位置換算のモータ位置YMへの換算係数である。θMは、モータの回転位置である。なお、以下にも示すこれらの値は、Y軸方向での値であるものとする。また、いずれの換算係数もアームの姿勢で変化する。
As shown in FIG. 4, the motor position YM of the arm tip position calculation is expressed as YM=KYM×θM. KYM is a conversion coefficient from the rotational position θM of the motor to the motor position YM calculated by replacing the arm tip position. θM is the rotational position of the motor. Note that these values also shown below are values in the Y-axis direction. Furthermore, both conversion coefficients change depending on the posture of the arm.
アーム先端位置YAは、YA=KYA×θLで表される。KYAは、アームの回転位置θLからY軸方向のアーム先端位置YAへの換算係数である。θLは、アーム先端の回転位置である。
The arm tip position YA is expressed as YA=KYA×θL. KYA is a conversion coefficient from the arm rotational position θL to the arm tip position YA in the Y-axis direction. θL is the rotational position of the arm tip.
アーム先端速度換算のモータ速度VMは、VM=KVM×ωMで表される。KVMは、モータの回転速度ωMからアーム先端速度換算のモータ速度VMへの換算係数である。ωMは、モータの回転速度である。
The motor speed VM in terms of arm tip speed is expressed as VM=KVM×ωM. KVM is a conversion coefficient from the rotational speed ωM of the motor to the motor speed VM in terms of arm tip speed. ωM is the rotational speed of the motor.
アーム先端速度VAは、VA=KVA×ωLで表される。KVAは、アームの回転速度ωLからY軸方向のアーム先端速度VAの換算係数である。ωLは、アーム先端のモータ速度である。
The arm tip speed VA is expressed as VA=KVA×ωL. KVA is a conversion coefficient from the rotational speed ωL of the arm to the arm tip speed VA in the Y-axis direction. ωL is the motor speed at the tip of the arm.
〈アームの待機状態の制御について〉
以下、アーム69の回転を停止したときに、アーム69の関節軸64に加わる重力トルク及び静止摩擦力と、アーム69を待機状態とするために必要なモータトルクとの関係について説明する。 <About arm standby state control>
Hereinafter, the relationship between the gravitational torque and static friction force applied to thejoint shaft 64 of the arm 69 when the rotation of the arm 69 is stopped, and the motor torque required to put the arm 69 in a standby state will be described.
以下、アーム69の回転を停止したときに、アーム69の関節軸64に加わる重力トルク及び静止摩擦力と、アーム69を待機状態とするために必要なモータトルクとの関係について説明する。 <About arm standby state control>
Hereinafter, the relationship between the gravitational torque and static friction force applied to the
図6に示すように、比較例1では、アーム69を、例えば0°(6時)の位置から重力方向と逆方向(時計回り方向)に90°回転させた後で停止して、90°(9時)の位置でアーム69を待機状態としている。
As shown in FIG. 6, in Comparative Example 1, the arm 69 is rotated, for example, from the 0° (6 o'clock) position by 90° in the direction opposite to the direction of gravity (clockwise), and then stopped and rotated by 90°. The arm 69 is in a standby state at the (9 o'clock) position.
図7に示すように、比較例2では、アーム69を、例えば0°(6時)の位置から重力方向と逆方向(反時計回り方向)に90°回転させた後で停止して、270°(3時)の位置でアーム69を待機状態としている。
As shown in FIG. 7, in Comparative Example 2, the arm 69 is rotated 90 degrees from the 0 degree (6 o'clock) position in the direction opposite to the direction of gravity (counterclockwise direction) and then stopped. The arm 69 is in a standby state at the 3 o'clock position.
図6及び図7に示すように、停止直前のアーム69の回転方向が重力方向と逆方向である場合、停止方向とは逆方向、すなわち、重力方向と同方向に静止摩擦力が印加される。そのため、ロボット60の待機状態では、モータ68において、アーム69に加わる重力トルクに静止摩擦トルクを加算したモータトルクを発生させる必要があり、モータ68の消費電流が増大する。なお、サーボ制御では、実位置が位置指令θcomに対して遅れて追従する。
As shown in FIGS. 6 and 7, when the rotation direction of the arm 69 immediately before stopping is opposite to the direction of gravity, static friction force is applied in the opposite direction to the stopping direction, that is, in the same direction as the gravity direction. . Therefore, when the robot 60 is in a standby state, the motor 68 needs to generate a motor torque that is the sum of the gravitational torque applied to the arm 69 and the static friction torque, which increases the current consumption of the motor 68. Note that in servo control, the actual position follows the position command θcom with a delay.
図8に示すように、比較例3では、アーム69を、例えば180°(12時)の位置から重力方向と同方向(反時計回り方向)に90°回転させた後で停止して、90°(9時)の位置でアーム69を待機状態としている。
As shown in FIG. 8, in Comparative Example 3, the arm 69 is rotated 90 degrees from a position of 180 degrees (12 o'clock) in the same direction as the direction of gravity (counterclockwise direction) and then stopped. The arm 69 is in a standby state at the 9 o'clock position.
図9に示すように、比較例4では、アーム69を、例えば180°(12時)の位置から重力方向と同方向(時計回り方向)に90°回転させた後で停止して、270°(3時)の位置でアーム69を待機状態としている。
As shown in FIG. 9, in Comparative Example 4, the arm 69 is rotated, for example, from the 180° (12 o'clock) position by 90° in the same direction as the direction of gravity (clockwise), then stopped, and then rotated 270°. The arm 69 is in a standby state at the (3 o'clock) position.
図8及び図9に示すように、停止直前のアーム69の回転方向が重力方向と同方向である場合、停止方向とは逆方向、すなわち、重力方向と逆方向に静止摩擦力が印加される。そのため、ロボット60の待機状態では、モータ68において、アーム69に加わる重力トルクから静止摩擦トルクを減算したモータトルクを発生させるだけでよく、モータ68の消費電流が低減される。なお、サーボ制御では、実位置が位置指令θcomに対して遅れて追従する。
As shown in FIGS. 8 and 9, when the rotation direction of the arm 69 immediately before stopping is the same direction as the gravitational direction, static friction force is applied in the opposite direction to the stopping direction, that is, in the opposite direction to the gravitational direction. . Therefore, in the standby state of the robot 60, the motor 68 only needs to generate a motor torque obtained by subtracting the static friction torque from the gravitational torque applied to the arm 69, and the current consumption of the motor 68 is reduced. Note that in servo control, the actual position follows the position command θcom with a delay.
具体的に、図10に示すように、アーム69の回転方向が重力方向と逆方向、つまり、アーム69が上昇した後で停止した場合には、アーム69が待機状態のときのモータ68の消費電流は、37.2Aである。
Specifically, as shown in FIG. 10, when the rotation direction of the arm 69 is opposite to the direction of gravity, that is, when the arm 69 stops after rising, the consumption of the motor 68 when the arm 69 is in the standby state is reduced. The current is 37.2A.
一方、図11に示すように、アーム69の回転方向が重力方向と同方向、つまり、アーム69が下降した後で停止した場合には、アーム69が待機状態のときのモータ68の消費電流は、23.6Aである。
On the other hand, as shown in FIG. 11, when the rotation direction of the arm 69 is the same as the direction of gravity, that is, when the arm 69 stops after descending, the current consumption of the motor 68 when the arm 69 is in the standby state is , 23.6A.
このように、停止直前のアーム69の回転方向が重力方向と同方向である場合の方が、重力方向と逆方向である場合に比べて、モータ68の消費電流を低減することができる。
In this way, the current consumption of the motor 68 can be reduced when the rotation direction of the arm 69 immediately before stopping is in the same direction as the gravitational direction, compared to when it is in the opposite direction to the gravitational direction.
次に、図12に示すように、比較例5では、アーム69を、例えば0°(6時)の位置から重力方向と逆方向(時計回り方向)に90°回転させた後で停止して、90°(9時)の位置でアーム69を待機状態としている。そして、アーム69が待機状態であることを確認し、アーム69が実位置で停止した後で、モータ68に追加指令を入力してアーム69を微小動作させるようにしている。
Next, as shown in FIG. 12, in Comparative Example 5, the arm 69 is rotated 90 degrees from the 0 degree (6 o'clock) position in a direction opposite to the direction of gravity (clockwise direction) and then stopped. , the arm 69 is in a standby state at the 90° (9 o'clock) position. After confirming that the arm 69 is in a standby state and stopping the arm 69 at its actual position, an additional command is input to the motor 68 to cause the arm 69 to move slightly.
図13に示すように、比較例6では、アーム69を、例えば0°(6時)の位置から重力方向と逆方向(反時計回り方向)に90°回転させた後で停止して、270°(3時)の位置でアーム69を待機状態としている。そして、アーム69が待機状態であることを確認し、アーム69が実位置で停止した後で、モータ68に追加指令を入力してアーム69を微小動作させるようにしている。
As shown in FIG. 13, in Comparative Example 6, the arm 69 is rotated 90 degrees from the 0 degree (6 o'clock) position in the direction opposite to the direction of gravity (counterclockwise direction) and then stopped. The arm 69 is in a standby state at the 3 o'clock position. After confirming that the arm 69 is in a standby state and stopping the arm 69 at its actual position, an additional command is input to the motor 68 to cause the arm 69 to move slightly.
図12及び図13に示すように、アーム69が待機状態であることを確認するまでの間は、モータ68において、アーム69に加わる重力トルクに静止摩擦トルクを加算したモータトルクを発生させる必要があり、モータ68の消費電流が増大する。一方、アーム69が待機状態であることを確認し、アーム69を微小動作させた後は、重力方向と逆方向に静止摩擦力が印加される。
As shown in FIGS. 12 and 13, until it is confirmed that the arm 69 is in the standby state, the motor 68 needs to generate a motor torque that is the sum of the gravitational torque applied to the arm 69 and the static friction torque. Therefore, the current consumption of the motor 68 increases. On the other hand, after confirming that the arm 69 is in a standby state and making a small movement of the arm 69, a static friction force is applied in the direction opposite to the direction of gravity.
そのため、ロボット60の待機状態では、モータ68において、アーム69に加わる重力トルクから静止摩擦トルクを減算したモータトルクを発生させるだけでよく、モータ68の消費電流が低減される。
Therefore, in the standby state of the robot 60, the motor 68 only needs to generate a motor torque obtained by subtracting the static friction torque from the gravitational torque applied to the arm 69, and the current consumption of the motor 68 is reduced.
しかしながら、図12及び図13に示す例では、ロボット60の動作が停止し、待機状態を確認した後で、ロボット60を微小動作させる手順を行うため、ロボット60の停止時間が短い場合には、モータ68の消費電流を低減する効果が少なくなるという問題がある。
However, in the examples shown in FIGS. 12 and 13, after the operation of the robot 60 is stopped and the standby state is confirmed, the procedure of making the robot 60 make a small movement is performed, so if the stopping time of the robot 60 is short, There is a problem that the effect of reducing the current consumption of the motor 68 is reduced.
図14に示すように、比較例7では、アーム69を、例えば180°(12時)の位置から重力方向と同方向(反時計回り方向)に90°回転させた後で停止して、90°(9時)の位置でアーム69を待機状態としている。
As shown in FIG. 14, in Comparative Example 7, the arm 69 is rotated, for example, from the 180° (12 o'clock) position by 90° in the same direction as the direction of gravity (counterclockwise) and then stopped. The arm 69 is in a standby state at the 9 o'clock position.
図15に示すように、比較例8では、アーム69を、例えば180°(12時)の位置から重力方向と同方向(時計回り方向)に90°回転させた後で停止して、270°(3時)の位置でアーム69を待機状態としている。
As shown in FIG. 15, in Comparative Example 8, the arm 69 is rotated, for example, from the 180° (12 o'clock) position by 90° in the same direction as the direction of gravity (clockwise), and then stopped and rotated to 270°. The arm 69 is in a standby state at the (3 o'clock) position.
図14及び図15に示すように、停止直前のアーム69の回転方向が重力方向と同方向である場合、停止方向とは逆方向、すなわち、重力方向と逆方向に静止摩擦力が印加される。そのため、ロボット60の待機状態では、モータ68において、アーム69に加わる重力トルクから静止摩擦トルクを減算したモータトルクを発生させるだけでよく、モータ68の消費電流が低減される。
As shown in FIGS. 14 and 15, when the rotation direction of the arm 69 immediately before stopping is the same direction as the gravitational direction, static friction force is applied in the opposite direction to the stopping direction, that is, in the opposite direction to the gravitational direction. . Therefore, in the standby state of the robot 60, the motor 68 only needs to generate a motor torque obtained by subtracting the static friction torque from the gravitational torque applied to the arm 69, and the current consumption of the motor 68 is reduced.
ところで、サーボ制御で応答性を重視すると、アーム69の実位置のオーバーシュートが生じ易くなる。そして、図14及び図15に点線で示すように、実位置が待機位置よりも少しでもオーバーシュートすると、アーム69を待機位置に戻すために、アーム69が重力方向と逆方向に回転させる必要がある。
By the way, if emphasis is placed on responsiveness in servo control, overshoot of the actual position of the arm 69 tends to occur. As shown by the dotted lines in FIGS. 14 and 15, if the actual position overshoots the standby position even slightly, the arm 69 must be rotated in the direction opposite to the direction of gravity in order to return the arm 69 to the standby position. be.
この場合、停止直前のアーム69の回転方向が重力方向と逆方向となり、停止方向とは逆方向、すなわち、重力方向と同方向に静止摩擦力が印加される。そのため、ロボット60の待機状態では、モータ68において、アーム69に加わる重力トルクに静止摩擦トルクを加算したモータトルクを発生させる必要があり、モータ68の消費電流が増大する。
In this case, the direction of rotation of the arm 69 immediately before stopping is opposite to the direction of gravity, and static friction force is applied in the direction opposite to the direction of stopping, that is, in the same direction as the direction of gravity. Therefore, when the robot 60 is in a standby state, the motor 68 needs to generate a motor torque that is the sum of the gravitational torque applied to the arm 69 and the static friction torque, which increases the current consumption of the motor 68.
そこで、本実施形態では、上述した比較例における課題を解決すべく、アーム69の動作を停止してアーム69が待機状態にあるときの、モータ68の消費電流を低減することができるロボット60の制御方法を提案するようにした。
Therefore, in this embodiment, in order to solve the problems in the above-mentioned comparative example, the robot 60 is designed to reduce the current consumption of the motor 68 when the arm 69 stops operating and is in a standby state. A control method was proposed.
具体的に、図16に示すように、ステップS10では、停止時追加指令演算ブロック55は、位置指令θcomが停止中であるかを判定する。ステップS10での判定が「YES」の場合、ステップS11に分岐する。ステップS10での判定が「NO」の場合、ステップS16に分岐する。
Specifically, as shown in FIG. 16, in step S10, the stop additional command calculation block 55 determines whether the position command θcom is being stopped. If the determination in step S10 is "YES", the process branches to step S11. If the determination in step S10 is "NO", the process branches to step S16.
ステップS11では、停止時追加指令演算ブロック55は、位置指令θcomの1周期前は動作中であるかを判定する。ステップS11での判定が「YES」の場合、ステップS12に分岐する。ステップS11での判定が「NO」の場合、ステップS16に分岐する。このように、ステップS11及びステップS12の判定結果に基づいて、モータ68に対する位置指令θcomの入力を停止したタイミングを判定することができる。
In step S11, the stop additional command calculation block 55 determines whether the position command θcom is in operation one cycle before the position command θcom. If the determination in step S11 is "YES", the process branches to step S12. If the determination in step S11 is "NO", the process branches to step S16. In this way, the timing at which the input of the position command θcom to the motor 68 is stopped can be determined based on the determination results in steps S11 and S12.
ステップS12では、停止時追加指令演算ブロック55は、動力学演算ブロック54で演算された重力トルクτgの絶対値が、所定の重力閾値よりも大きいかを判定する。ステップS12での判定が「YES」の場合、ステップS13に分岐する。ステップS12での判定が「NO」の場合、ステップS16に分岐する。
In step S12, the stop additional command calculation block 55 determines whether the absolute value of the gravity torque τg calculated by the dynamics calculation block 54 is larger than a predetermined gravity threshold value. If the determination in step S12 is "YES", the process branches to step S13. If the determination in step S12 is "NO", the process branches to step S16.
具体的に、ステップS12では、例えば、アーム69の先端が0°(6時)の位置付近で停止しており、アーム69に付加される重力トルクτgがそれほど大きくないのであれば、モータ68の消費電流が小さくて済むため、追加指令を与える必要がないと判定している。
Specifically, in step S12, for example, if the tip of the arm 69 is stopped near the 0° (6 o'clock) position and the gravitational torque τg applied to the arm 69 is not so large, then the motor 68 is Since the current consumption is small, it is determined that there is no need to give additional commands.
ステップS13では、停止時追加指令演算ブロック55は、重力トルクτgが0よりも大きいかを判定する。ここで、時計回り方向を正方向として説明する。
In step S13, the stop additional command calculation block 55 determines whether the gravity torque τg is larger than zero. Here, the description will be made assuming that the clockwise direction is the forward direction.
図17に示すように、アーム69を0°(6時)の位置から時計回り方向に90°(9時)の位置まで回転させる場合、アーム69の回転方向はプラス方向で且つ重力方向と逆方向である。重力トルクτgの符号はマイナスである。
As shown in FIG. 17, when rotating the arm 69 clockwise from the 0° (6 o'clock) position to the 90° (9 o'clock) position, the rotation direction of the arm 69 is in the positive direction and opposite to the direction of gravity. It is the direction. The sign of the gravitational torque τg is negative.
図18に示すように、アーム69を0°(6時)の位置から反時計回り方向に270°(3時)の位置まで回転させる場合、アーム69の回転方向はマイナス方向で且つ重力方向と逆方向である。重力トルクτgの符号はプラスである。
As shown in FIG. 18, when the arm 69 is rotated counterclockwise from the 0° (6 o'clock) position to the 270° (3 o'clock) position, the rotation direction of the arm 69 is in the negative direction and in the direction of gravity. It's in the opposite direction. The sign of the gravitational torque τg is positive.
図19に示すように、アーム69を180°(12時)の位置から反時計回り方向に90°(9時)の位置まで回転させる場合、アーム69の回転方向はマイナス方向で且つ重力方向と同方向である。重力トルクτgの符号はマイナスである。
As shown in FIG. 19, when the arm 69 is rotated counterclockwise from the 180° (12 o'clock) position to the 90° (9 o'clock) position, the rotation direction of the arm 69 is in the negative direction and in the direction of gravity. They are in the same direction. The sign of the gravitational torque τg is negative.
図20に示すように、アーム69を180°(12時)の位置から時計回り方向に270°(3時)の位置まで回転させる場合、アーム69の回転方向はプラス方向で且つ重力方向と同方向である。重力トルクτgの符号はプラスである。
As shown in FIG. 20, when the arm 69 is rotated clockwise from the 180° (12 o'clock) position to the 270° (3 o'clock) position, the rotation direction of the arm 69 is the positive direction and the same as the direction of gravity. It is the direction. The sign of the gravitational torque τg is positive.
ステップS13での判定が「YES」の場合、ステップS14に分岐する。ステップS13での判定が「NO」の場合、ステップS15に分岐する。
If the determination in step S13 is "YES", the process branches to step S14. If the determination in step S13 is "NO", the process branches to step S15.
ステップS14では、停止時追加指令演算ブロック55は、追加指令θpを演算する。具体的に、図18及び図20に示す例のように、重力トルクτgの符号がプラスである場合、追加指令初期値の符号をマイナスとした値を追加指令としている。つまり、追加指令θp=-θpとして、処理を終了する。
In step S14, the stop additional command calculation block 55 calculates the additional command θp. Specifically, as in the examples shown in FIGS. 18 and 20, when the sign of the gravitational torque τg is positive, a value with the sign of the initial value of the additional command set as a negative value is used as the additional command. In other words, the additional command θp=-θp and the process ends.
ステップS15では、停止時追加指令演算ブロック55は、追加指令θpを演算する。具体的に、図17及び図19に示す例のように、重力トルクτgの符号がマイナスである場合、追加指令初期値を追加指令としている。つまり、追加指令θp=θpとして、処理を終了する。
In step S15, the stop additional command calculation block 55 calculates the additional command θp. Specifically, as in the examples shown in FIGS. 17 and 19, when the sign of the gravitational torque τg is negative, the additional command initial value is used as the additional command. In other words, the additional command θp=θp, and the process ends.
ステップS16では、追加指令θpの絶対値が0よりも大きいかを判定する。ステップS16での判定が「YES」の場合、ステップS17に分岐する。ステップS16での判定が「NO」の場合、処理を終了する。
In step S16, it is determined whether the absolute value of the additional command θp is greater than 0. If the determination in step S16 is "YES", the process branches to step S17. If the determination in step S16 is "NO", the process ends.
ステップS17では、停止時追加指令演算ブロック55は、追加指令θpの絶対値を漸減させ、処理を終了する。このように、モータ68に追加指令θpを入力した後で、追加指定θpを漸減させることで、待機位置に向かって重力方向と同方向にアーム69を徐々に回転させることができる。
In step S17, the stop additional command calculation block 55 gradually decreases the absolute value of the additional command θp, and ends the process. In this way, after inputting the additional command θp to the motor 68, by gradually decreasing the additional designation θp, the arm 69 can be gradually rotated in the same direction as the direction of gravity toward the standby position.
具体的に、図17では、アーム69を、例えば0°(6時)の位置から重力方向と逆方向(時計回り方向)に90°回転させた後で停止して、90°(9時)の位置でアーム69を待機状態としている。ここで、位置指令θcomの入力を停止する直前のアーム69の回転方向が、重力方向と逆方向の第1方向(上方向)である。そして、重力トルクτgの符号がマイナスであるため、追加指令θp=θpを入力して、アーム69を第1方向(上方向)にオーバーシュートさせる。なお、アーム69の待機位置でのオーバーシュート量は、アーム69の先端位置において1mm以下でよいため、特に問題とはならない。
Specifically, in FIG. 17, the arm 69 is rotated, for example, from the 0° (6 o'clock) position by 90° in the direction opposite to the direction of gravity (clockwise), and then stopped and rotated to 90° (9 o'clock). The arm 69 is in a standby state at the position. Here, the rotation direction of the arm 69 immediately before stopping the input of the position command θcom is the first direction (upward direction) opposite to the direction of gravity. Since the sign of the gravitational torque τg is negative, an additional command θp=θp is input to cause the arm 69 to overshoot in the first direction (upward). Note that the amount of overshoot at the standby position of the arm 69 does not pose a particular problem because it may be 1 mm or less at the distal end position of the arm 69.
図18では、アーム69を、例えば0°(6時)の位置から重力方向と逆方向(反時計回り方向)に90°回転させた後で停止して、270°(3時)の位置でアーム69を待機状態としている。ここで、位置指令θcomの入力を停止する直前のアーム69の回転方向が、重力方向と逆方向の第1方向(上方向)である。そして、重力トルクτgの符号がプラスであるため、追加指令θp=-θpを入力して、アーム69を第1方向(上方向)にオーバーシュートさせる。なお、アーム69の待機位置でのオーバーシュート量は、アーム69の先端位置において1mm以下でよいため、特に問題とはならない。
In FIG. 18, the arm 69 is rotated, for example, from the 0° (6 o'clock) position by 90° in the direction opposite to the direction of gravity (counterclockwise), and then stopped at the 270° (3 o'clock) position. The arm 69 is in a standby state. Here, the rotation direction of the arm 69 immediately before stopping the input of the position command θcom is the first direction (upward direction) opposite to the direction of gravity. Since the sign of the gravitational torque τg is positive, an additional command θp=-θp is input to cause the arm 69 to overshoot in the first direction (upward). Note that the amount of overshoot at the standby position of the arm 69 may be 1 mm or less at the tip position of the arm 69, and therefore does not pose a particular problem.
図19では、アーム69を、例えば180°(12時)の位置から重力方向と同方向(反時計回り方向)に90°回転させた後で停止して、90°(9時)の位置でアーム69を待機状態としている。ここで、位置指令θcomの入力を停止する直前のアーム69の回転方向が、重力方向と同方向の第2方向(下方向)である。そして、重力トルクτgの符号がマイナスであるため、追加指令θp=θpを入力して、アーム69を第2方向(下方向)にオーバーシュートさせない。なお、アーム69の待機位置でのオーバーシュートさせない量は、アーム69の先端位置において1mm以下でよいため、特に問題とはならない。
In FIG. 19, the arm 69 is rotated, for example, from the 180° (12 o'clock) position by 90° in the same direction as the direction of gravity (counterclockwise), and then stopped, and then returned to the 90° (9 o'clock) position. The arm 69 is in a standby state. Here, the direction of rotation of the arm 69 immediately before stopping the input of the position command θcom is the second direction (downward) which is the same direction as the direction of gravity. Since the sign of the gravitational torque τg is negative, the additional command θp=θp is input to prevent the arm 69 from overshooting in the second direction (downward). Note that the amount of overshoot at the standby position of the arm 69 may be 1 mm or less at the distal end position of the arm 69, so this does not pose a particular problem.
図20では、アーム69を、例えば180°(12時)の位置から重力方向と同方向(時計回り方向)に90°回転させた後で停止して、270°(3時)の位置でアーム69を待機状態としている。ここで、位置指令θcomの入力を停止する直前のアーム69の回転方向が、重力方向と同方向の第2方向(下方向)である。そして、重力トルクτgの符号がプラスであるため、追加指令θp=-θpを入力して、アーム69を第2方向(下方向)にオーバーシュートさせない。なお、アーム69の待機位置でのオーバーシュートさせない量は、アーム69の先端位置において1mm以下でよいため、特に問題とはならない。
In FIG. 20, the arm 69 is rotated, for example, from the 180° (12 o'clock) position by 90° in the same direction as the direction of gravity (clockwise), then stopped, and the arm 69 is at the 270° (3 o'clock) position. 69 is in a standby state. Here, the direction of rotation of the arm 69 immediately before stopping the input of the position command θcom is the second direction (downward) which is the same direction as the direction of gravity. Since the sign of the gravitational torque τg is positive, the additional command θp=-θp is input to prevent the arm 69 from overshooting in the second direction (downward). Note that the amount of overshoot at the standby position of the arm 69 may be 1 mm or less at the distal end position of the arm 69, so this does not pose a particular problem.
-本実施形態の効果-
以上のように、本実施形態に係るロボット60の制御方法及びロボット60の制御装置では、アーム69の動作を停止させた後でアーム69を待機状態とするときに、停止直前のアーム69の回転方向が第1方向(上方向)(重力方向と逆方向)である場合には、アーム69を待機位置から第1方向(上方向)にオーバーシュートさせた後、待機位置に向かって重力方向と同方向にアーム69を回転させるようにしている。 -Effects of this embodiment-
As described above, in the method for controlling therobot 60 and the control device for the robot 60 according to the present embodiment, when the arm 69 is put into the standby state after the operation of the arm 69 is stopped, the rotation of the arm 69 immediately before the stop is performed. If the direction is the first direction (upward direction) (opposite to the direction of gravity), the arm 69 is overshot from the standby position in the first direction (upward direction), and then moves toward the standby position in the direction of gravity. The arm 69 is rotated in the same direction.
以上のように、本実施形態に係るロボット60の制御方法及びロボット60の制御装置では、アーム69の動作を停止させた後でアーム69を待機状態とするときに、停止直前のアーム69の回転方向が第1方向(上方向)(重力方向と逆方向)である場合には、アーム69を待機位置から第1方向(上方向)にオーバーシュートさせた後、待機位置に向かって重力方向と同方向にアーム69を回転させるようにしている。 -Effects of this embodiment-
As described above, in the method for controlling the
また、停止直前のアーム69の回転方向が第2方向(下方向)(重力方向と同方向)である場合には、アーム69を待機位置から第2方向(下方向)にオーバーシュートさせないようにした後、待機位置に向かって重力方向と同方向にアーム69を回転させるようにしている。
In addition, if the rotation direction of the arm 69 immediately before stopping is the second direction (downward) (same direction as the direction of gravity), the arm 69 is prevented from overshooting from the standby position in the second direction (downward). After that, the arm 69 is rotated toward the standby position in the same direction as the direction of gravity.
これにより、停止直前のアーム69の回転方向が第1方向(上方向)又は第2方向(下方向)の何れであっても、アーム69を重力方向と同方向に回転させた後で停止する場合と同様に、重力方向と逆方向に静止摩擦力が印加される状況を生み出すことができる。その結果、アーム69を待機状態としたときに、モータ68において、アーム69に加わる重力から静止摩擦力を減算したトルクを発生させるだけでよく、モータ68の消費電流を低減することができる。
As a result, even if the direction of rotation of the arm 69 immediately before stopping is the first direction (upward direction) or the second direction (downward direction), the arm 69 is stopped after being rotated in the same direction as the direction of gravity. Similarly, a situation can be created in which a static friction force is applied in the direction opposite to the direction of gravity. As a result, when the arm 69 is in the standby state, the motor 68 only needs to generate a torque obtained by subtracting the static friction force from the gravity applied to the arm 69, and the current consumption of the motor 68 can be reduced.
以上説明したように、本開示は、アームの動作を停止してアームが待機状態にあるときの、モータの消費電流を低減することができるという実用性の高い効果が得られることから、きわめて有用で産業上の利用可能性は高い。
As described above, the present disclosure is extremely useful because it can achieve a highly practical effect of reducing the current consumption of the motor when the arm is in a standby state after stopping its operation. Therefore, the possibility of industrial application is high.
54 動力学演算ブロック
55 停止時追加指令演算ブロック
60 ロボット
62 ロボット制御装置
63 アーム
66 メイン制御部
67 サーボ制御部
68 モータ
69 アーム 54Dynamics calculation block 55 Additional command calculation block at stop 60 Robot 62 Robot control device 63 Arm 66 Main control section 67 Servo control section 68 Motor 69 Arm
55 停止時追加指令演算ブロック
60 ロボット
62 ロボット制御装置
63 アーム
66 メイン制御部
67 サーボ制御部
68 モータ
69 アーム 54
Claims (5)
- モータを用いてアームを動作させるロボットの制御方法であって、
前記モータに位置指令を入力して前記アームを回転させるステップと、
前記モータに対する前記位置指令の入力を停止するステップと、
前記位置指令の入力を停止する直前の前記アームの回転方向が、重力方向と逆方向の第1方向(上方向)、又は重力方向と同方向の第2方向(下方向)であるかを判定するステップと、
前記第1方向(上方向)であると判定された場合に前記アームを前記第1方向(上方向)にオーバーシュートさせる一方、
前記第2方向(下方向)であると判定された場合に前記アームを前記第2方向(下方向)にオーバーシュートさせないように、
前記モータに追加指令を入力するステップと、を備える
ロボットの制御方法。 A method of controlling a robot that operates an arm using a motor, the method comprising:
inputting a position command to the motor to rotate the arm;
stopping input of the position command to the motor;
Determine whether the direction of rotation of the arm immediately before stopping the input of the position command is a first direction (upward direction) opposite to the direction of gravity, or a second direction (downward) in the same direction as the direction of gravity. the step of
overshooting the arm in the first direction (upward direction) when it is determined that the direction is in the first direction (upward direction);
In order to prevent the arm from overshooting in the second direction (downward) when it is determined that the direction is in the second direction (downward),
A method for controlling a robot, comprising the step of inputting an additional command to the motor. - 請求項1のロボットの制御方法において、
前記モータに前記追加指令を入力した後で、前記追加指令を漸減させるステップを備える
ロボットの制御方法。 The method for controlling a robot according to claim 1,
A method for controlling a robot, comprising the step of gradually decreasing the additional command after inputting the additional command to the motor. - 請求項1のロボットの制御方法において、
前記位置指令の入力を停止した直後に前記モータに前記追加指令を入力するロボットの制御方法。 The method for controlling a robot according to claim 1,
A robot control method comprising inputting the additional command to the motor immediately after stopping input of the position command. - 請求項1のロボットの制御方法において、
前記アームの実位置が前記アームの待機位置に至る前に前記モータに前記追加指令を入力するロボットの制御方法。 The method for controlling a robot according to claim 1,
A robot control method comprising inputting the additional command to the motor before the actual position of the arm reaches the standby position of the arm. - モータを用いてアームを動作させるロボットの制御装置であって、
前記制御装置は、
前記モータに位置指令を入力して前記アームを回転させる動作と、
前記モータに対する前記位置指令の入力を停止する動作と、
前記位置指令の入力を停止する直前の前記アームの回転方向が、重力方向と逆方向の第1方向(上方向)、又は重力方向と同方向の第2方向(下方向)であるかを判定する動作と、
前記第1方向(上方向)であると判定された場合に前記アームを前記第1方向(上方向)にオーバーシュートさせる一方、前記第2方向(下方向)であると判定された場合に前記アームを前記第2方向(下方向)にオーバーシュートさせないように、前記モータに追加指令を入力する動作と、を実行する
ロボットの制御装置。 A robot control device that operates an arm using a motor,
The control device includes:
inputting a position command to the motor to rotate the arm;
an operation of stopping input of the position command to the motor;
Determine whether the direction of rotation of the arm immediately before stopping the input of the position command is a first direction (upward direction) opposite to the direction of gravity, or a second direction (downward) in the same direction as the direction of gravity. The action of
When it is determined that the direction is in the first direction (upward direction), the arm is caused to overshoot in the first direction (upward direction), and when it is determined that the direction is in the second direction (downward direction), the arm is overshot in the first direction (upward direction). A robot control device that executes an operation of inputting an additional command to the motor so as not to overshoot the arm in the second direction (downward).
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2023556892A JP7489591B1 (en) | 2022-07-29 | 2023-07-18 | Robot control method and robot control device |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022121931 | 2022-07-29 | ||
JP2022-121931 | 2022-07-29 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024024578A1 true WO2024024578A1 (en) | 2024-02-01 |
Family
ID=89706247
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2023/026310 WO2024024578A1 (en) | 2022-07-29 | 2023-07-18 | Robot control method and robot control device |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP7489591B1 (en) |
WO (1) | WO2024024578A1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0529688U (en) * | 1991-09-30 | 1993-04-20 | 株式会社不二越 | Robot controller |
JPH05307412A (en) * | 1992-04-30 | 1993-11-19 | Honda Motor Co Ltd | Driving method for actuator |
WO2011004587A1 (en) * | 2009-07-09 | 2011-01-13 | パナソニック株式会社 | Position control method and position control device |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3125946B2 (en) | 1991-11-22 | 2001-01-22 | 株式会社安川電機 | Robot control method |
-
2023
- 2023-07-18 WO PCT/JP2023/026310 patent/WO2024024578A1/en active Application Filing
- 2023-07-18 JP JP2023556892A patent/JP7489591B1/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0529688U (en) * | 1991-09-30 | 1993-04-20 | 株式会社不二越 | Robot controller |
JPH05307412A (en) * | 1992-04-30 | 1993-11-19 | Honda Motor Co Ltd | Driving method for actuator |
WO2011004587A1 (en) * | 2009-07-09 | 2011-01-13 | パナソニック株式会社 | Position control method and position control device |
Also Published As
Publication number | Publication date |
---|---|
JPWO2024024578A1 (en) | 2024-02-01 |
JP7489591B1 (en) | 2024-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2604698B2 (en) | Angular acceleration control method | |
CN108381529A (en) | A kind of man-machine collaboration teaching method of industrial machinery arm | |
JP3506157B2 (en) | Motor position control device | |
WO2011042293A1 (en) | A method for reducing the energy consumption of an industrial robot and an industrial robot system | |
JP3681431B2 (en) | Servo system with adjustable softness on Cartesian coordinate system | |
EP2485875A1 (en) | A method for reducing the energy consumption of an industrial robot and an industrial robot system | |
CN105676896A (en) | Feed-forward control method for robot servo system | |
JPH07295650A (en) | Method for controlling articulated robot | |
JP3981773B2 (en) | Robot controller | |
JP3933158B2 (en) | Robot collision detection method | |
WO2024024578A1 (en) | Robot control method and robot control device | |
CN109476024B (en) | Robot control method and welding method | |
JP2003216243A (en) | Robot controller | |
Shingarey et al. | Torque-based velocity control for safe human-humanoid interaction | |
JP7194910B2 (en) | ROBOT CONTROL METHOD AND ROBOT CONTROL DEVICE | |
WO2019012942A1 (en) | Robot control device | |
CN212578642U (en) | Robot joint with torsion flexibility | |
EP4063085A1 (en) | Robot control method and robot control device | |
JPH08286759A (en) | Robot driving control method for compensating statical friction | |
JP7282648B2 (en) | robot controller | |
Nakamura et al. | Torque Control of Two-Inertia System Using Ultrasonic Motor with Angular Velocity Saturation | |
JP2012061560A (en) | Robot control device | |
JP2002059382A (en) | Control method for articulated robot | |
KR100198148B1 (en) | Method of controlling innertia in a six axial vertical multi-knuckle robot arm | |
JPH0217513A (en) | Positioning control system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 2023556892 Country of ref document: JP |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 23846309 Country of ref document: EP Kind code of ref document: A1 |