Control devices for industrial robots, methods for controlling industrial robots

The control device for industrial robots addresses encoder-induced noise and vibration in low-speed ranges by setting torque limits based on actual speed and command multiplication, creating a dead zone to stabilize torque commands and prevent reducer damage.

JP2026114231APending Publication Date: 2026-07-08DENSO WAVE INC

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
DENSO WAVE INC
Filing Date
2024-12-26
Publication Date
2026-07-08

AI Technical Summary

Technical Problem

Existing industrial robot technologies fail to effectively address the issue of existing technologies fail to address the issue of existing technologies fail to address the issue of existing technologies fail to address the problem of existing technologies fail to effectively address the problem of existing technologies fail to effectively address the problem of existing technologies have not effectively solve the challenge of existing existing technologies in low-speed ranges, where encoder noise causes rapid switching between forward and reverse torque limit values, leading to abnormal noise and vibration.

Method used

A control device and method for industrial robots that include a limiting unit to set predetermined forward and reverse torque limit values based on the multiplication of actual speed and torque command, restricting switching between these limits when the actual speed is below a certain threshold, creating a dead zone to suppress noise and vibration.

Benefits of technology

The solution effectively suppresses abnormal noise and vibration in low-speed ranges by limiting torque commands, preventing damage to speed reducers and allowing large torque application when needed, while maintaining motor performance and responsiveness.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026114231000001_ABST
    Figure 2026114231000001_ABST
Patent Text Reader

Abstract

This invention provides a control device for industrial robots and a control method for industrial robots that can suppress the generation of abnormal noises and vibrations in the low-speed range. [Solution] The control device 1 according to the embodiment includes a limiting unit that limits the torque command for driving the motor 21 of the industrial robot 2 to a predetermined limit value, and a setting unit 17 that sets a predetermined forward torque limit value as the limit value when the result of multiplying the actual speed, which represents the rotation direction of the motor 21, and the torque command, which represents the direction of torque, is 0 or greater, and sets a predetermined reverse torque limit value as the limit value when the result of multiplication is less than 0. The setting unit 17 restricts switching between the forward torque limit value and the reverse torque limit value when the absolute value of the actual speed is less than a predetermined speed upper limit value.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to a control device for an industrial robot and a control method for an industrial robot.

Background Art

[0002] An industrial robot has a motor provided at a joint portion and is structured to be rotatably connected to other arms etc. via a speed reducer connected to the output side of the motor. And since there is a risk of damage if an excessive torque is applied to the speed reducer, it is required to operate below a preset allowable torque.

[0003] At this time, since the torque from the input side and the torque from the output side due to the operation of the speed reducer are applied to the speed reducer, for example, as in Patent Document 1, the actual speed representing the rotational direction of the motor measured by an encoder etc. and individual limit values are provided according to the relationship with the torque command representing the direction of the torque. Hereinafter, a state where the actual speed and the direction of the torque match is defined as the forward direction, and the limit value of the torque in the operation in the forward direction is referred to as the forward torque limit value. Also, a case where the actual speed and the direction of the torque do not match is defined as the reverse direction, and the limit value of the torque in the operation in the reverse direction is referred to as the reverse torque limit value.

Prior Art Documents

Patent Documents

[0004]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0005] However, in low-speed ranges such as when stationary, decelerating, or at extremely low speeds, the actual speed may repeatedly cross zero due to encoder noise, causing the limit value to switch rapidly between the forward torque limit value and the reverse torque limit value. As a result, in situations where a large torque that is within the limits is required, such as when performing actions like maintaining posture or pressing a workpiece, the torque command may vibrate as the limit value switches, potentially causing abnormal noise and vibration.

[0006] This disclosure has been made in view of the circumstances described above, and its purpose is to provide a control device for an industrial robot and a control method for an industrial robot that can suppress the generation of abnormal noise and vibration in the low-speed range. [Means for solving the problem]

[0007] A control device for an industrial robot according to one aspect of the present disclosure includes a limiting unit that limits a torque command for driving a motor of an industrial robot to a predetermined limit value, and a setting unit that sets a predetermined forward torque limit value as a limit value when the result of multiplying the actual speed, which represents the rotation direction of the motor, and the torque command, which represents the direction of torque, is 0 or greater, and sets a predetermined reverse torque limit value as a limit value when the result of multiplication is less than 0, and the setting unit restricts switching between the forward torque limit value and the reverse torque limit value when the absolute value of the actual speed is less than a predetermined speed upper limit value.

[0008] A control method for an industrial robot according to one aspect of the present disclosure sets a predetermined forward torque limit as the limit value of the torque command when the result of multiplying the actual speed, which represents the rotation direction of the motor, by a torque command, which represents the direction of torque, is 0 or greater, while setting a predetermined reverse torque limit as the limit value when the result of multiplication is less than 0, and restricts switching between the forward torque limit and the reverse torque limit when the absolute value of the actual speed is less than a predetermined speed upper limit. [Brief explanation of the drawing]

[0009] [Figure 1]A schematic diagram showing the functional blocks of the control device according to the embodiment. [Figure 2] A diagram illustrating forward torque limit and reverse torque limit in simple terms. [Figure 3] Diagram showing the process flow for limiting torque. [Figure 4] Diagram showing other processes for limiting torque [Modes for carrying out the invention]

[0010] The embodiments will now be described with reference to the drawings. As shown in Figure 1, the control device 1 according to this embodiment has a plurality of functional units and controls the industrial robot 2. The industrial robot 2 is equipped with a motor 21, a reduction gear 22 provided on the output side of the motor 21, a driver 23 consisting of an inverter circuit that supplies power to the motor 21, an encoder 24 provided on the motor 21 that detects the rotation angle, a torque sensor 25 that detects the torque applied to the reduction gear 22, and the like.

[0011] Note that while Figure 1 shows only one motor 21 for simplicity, motors 21 are provided at each joint of the industrial robot 2. Furthermore, the industrial robot 2 can be a vertical articulated robot or a horizontal articulated robot.

[0012] The control device 1 controls the posture and movement trajectory of an arm (not shown) connected to an industrial robot 2 by outputting a control signal to drive the motor 21. The control device 1 is equipped with functional units such as a position detection unit 11, a speed detection unit 12, a position command unit 13, a position control unit 14, a speed control unit 15, a first limiting unit 16, a setting unit 17, a gravity compensation unit 18, and a second limiting unit 19. Although Figure 1 shows only the main functional units related to this embodiment, the control device 1 is also equipped with other functional units.

[0013] The position detection unit 11 is connected to the encoder 24 and calculates and outputs the rotational position of the motor 21 from the detected value of the encoder 24. The speed detection unit 12 is connected to the encoder 24 and calculates and outputs the actual speed (v), which is the rotational speed of the motor 21, from the detected value of the encoder 24.

[0014] The position command unit 13 outputs a position command (Pc) for controlling the actual speed and rotational position of the motor 21. The position command (Pc) output from the position command unit 13 is subtracted from the rotational position output from the position detection unit 11 by a subtractor, and the resulting position deviation is input to the position control unit 14. The position control unit 14 then determines the target speed of the motor 21 based on the input position deviation, converts it into a speed command (Vc), and outputs it.

[0015] The output speed command (Vc) is subtracted by the actual speed (v) output from the speed detection unit 12 in the subtractor, and the resulting speed deviation is input to the speed control unit 15. The speed control unit 15 calculates the required torque based on the input speed deviation, converts it into a torque command (T), and outputs it.

[0016] The output torque command (T) is input to the first limiting unit 16 and is limited by a predetermined limit value, the first limiting value (TLimit1). This first limiting value (TLimit1) is the torque command limit value set according to the operating mode of the industrial robot 2.

[0017] In this embodiment, the industrial robot 2 has three operating modes: an automatic mode in which it operates according to a program, a manual mode in which it is operated by an operator, and a current-limiting mode in which the current value is limited. For each operating mode, the following limits are pre-set: an automatic mode limit value (Tauto) for the automatic mode, an operational mode limit value (Tmanual) for the operational mode, and a current-limiting mode limit value (Tcurrent) for the current-limiting mode.

[0018] The setting unit 17 sets the first limit value (TLimit1) to any one of the limit value for the automatic mode (Tauto), the limit value for the operation mode (Tmanual), and the limit value for the current limit mode (Tcurrent).

[0019] The torque command restricted by the first restriction unit 16 is input to the second restriction unit 19 after the gravity compensation value calculated by the gravity compensation unit 18 is added by an adder. That is, the control device 1 of the present embodiment is configured to restrict the torque command by two restriction units, the first restriction unit 16 and the second restriction unit 19. Note that the gravity compensation value is a compensation value for supporting the self-weight of an arm or the like.

[0020] The second restriction unit 19 further restricts the torque command restricted by the first restriction unit 16 with a predetermined second limit value (TLimit2). Specifically, the second restriction unit 19 restricts the input torque command with either the forward torque limit value (Tforward) or the reverse torque limit value (Tinverse).

[0021] Here, the forward torque limit value (Tforward) and the reverse torque limit value (Tinverse) will be briefly described. In the present embodiment, the case where the rotation direction of the motor 21 and the direction of the torque coincide is defined as the forward direction, and the case where the rotation direction of the motor 21 and the direction of the torque do not coincide is defined as the reverse direction. Note that the rotation direction of the motor 21 can be specified as either forward rotation or reverse rotation by measuring the actual speed, and the direction of the torque can be specified by the sign of the torque command.

[0022] In the case of the forward operation, as shown in Fig. 2(a), when torque (Tinner) is applied to the input side of the speed reducer 22, torque (Touter) and loss occur on the output side due to that torque. At this time, in the forward direction where the rotation direction of the motor 21 and the direction of the torque coincide, it is necessary to prevent the speed reducer 22 from being damaged by that torque, and the limit value set for this purpose is the forward torque limit value (Tforward).

[0023] On the other hand, in the case of reverse operation, as shown in Fig. 2(b), when torque is applied to the input side, torque is applied to the speed reducer 22 in the reverse direction by the output-side torque (Touter) and is observed as torque (Tinner) on the input side. In this case, it is necessary to prevent the speed reducer 22 from being damaged by the torque applied from the output side in the reverse direction, and the limit value set for this purpose is the reverse torque limit value (Tinverse).

[0024] Since this reverse torque limit value (Tinverse) is a limit value for the state where two losses occur in the speed reducer 22 as shown in Fig. 2(b), a value generally lower than the forward torque limit value (Tforward) is set. Note that it is necessary to consider the torque from the output side, and the reverse torque limit value (Tinverse) is set only during reverse operation where the rotation direction of the motor 21 does not match the direction of the torque.

[0025] Whether the second limit value (TLimit2) is set as the forward torque limit value (Tforward) or the reverse torque limit value (Tinverse) is set by the setting unit 17. This setting unit 17 determines based on the multiplication result (v·T) obtained by multiplying the actual speed (v) representing the rotation direction of the motor 21 and the torque command (T) representing the direction of the torque. Note that the multiplication result becomes a positive value if the signs of the actual speed and the torque command match, a negative value if they do not match, and 0 if at least one of the actual speed or the torque command is 0.

[0026] More specifically, when the multiplication result is 0 or more, the setting unit 17 sets the forward torque limit value (Tforward) as the second limit value (TLimit2), and when the multiplication result is less than 0, the setting unit 17 sets the reverse torque limit value (Tinverse) as the second limit value (TLimit2). That is, the setting unit 17 switches the second limit value (TLimit2) between the forward torque limit value (Tforward) and the reverse torque limit value (Tinverse) according to the multiplication result (v·T).

[0027] Furthermore, the setting unit 17, as will be described in detail later, restricts switching between the forward torque limit (Tforward) and the reverse torque limit (Tinverse) when the absolute value (|v|) of the actual speed (v) is less than a predetermined speed upper limit (vLimit).

[0028] Next, the operation and effects of the above-described configuration will be explained. By setting the forward torque limit (Tforward) and reverse torque limit (Tinverse) as described above, torque commands can be limited for forward and reverse movements, respectively. However, in a real industrial robot 2, at low speeds such as when the motor 21 is stationary, decelerating, or moving at extremely low speeds, the actual speed (v) measured from the encoder 24 may repeatedly cross zero due to noise, etc.

[0029] In that case, the forward torque limit (Tforward) and the reverse torque limit (Tinverse) switch rapidly, so in situations where a large torque is required in a stationary state, such as when performing actions to maintain a certain position or pressing a gripped tool against a workpiece, the torque command (T) may vibrate as the limit value switches, potentially causing abnormal noise and vibration.

[0030] Therefore, the control device 1 suppresses the generation of abnormal noise and vibration in the low-speed range by executing the process shown in Figure 3. Note that the process shown in Figure 3 is an excerpt of the process performed by the control device 1 that limits the torque command. Furthermore, although this process is mainly performed by the setting unit 17, the following explanation will focus on the control device 1 as the main component of the process.

[0031] The control device 1 first determines the operating mode and whether it is in current limit mode (S1) and whether it is in manual mode (S2). If the control device 1 determines that it is in current limit mode (S1: YES), it sets the first limit value (TLimit1) to the limit value for current limit mode (Tcurrent) (S3).

[0032] Furthermore, if the control device 1 determines that the system is in manual mode (S2:YES) and not in current limit mode (S1:NO), it sets the first limit value (TLimit1) to the limit value for manual mode (Tmanual) (S4). Also, if the control device 1 determines that the system is neither in current limit mode nor manual mode (S1:NO, S2:NO), it determines that the system is in automatic mode and sets the first limit value (TLimit1) to the limit value for automatic mode (Tauto) (S5).

[0033] When a limit value is set according to the operating mode, the control device 1 determines whether the product of the actual speed (v) and the torque command (T) (v·T) is less than 0 (S6). If the control device 1 determines that the product is less than 0 (S6:YES), it determines that the operation is in the reverse direction and sets the second limit value (TLimit2) to a reverse torque limit value (Tinverse) (S7). This limits the torque in the reverse direction and suppresses damage to the reduction gear 22.

[0034] On the other hand, if the control device 1 determines that the multiplication result is 0 or greater (S6:NO), it assumes that forward operation is in progress and further determines whether the absolute value of the actual speed (|v|) is less than a predetermined speed limit (vLimit) (S8). Then, if the control device 1 determines that the absolute value (|v|) is greater than or equal to the predetermined speed limit (vLimit) (S8:NO), it sets the forward torque limit (Tforward) as the second limit (TLimit2) (S9). This limits the torque in the forward direction and suppresses damage to the reduction gear 22.

[0035] In response to this, if the control device 1 determines that the absolute value (|v|) is less than the speed limit (vLimit) (S8:YES), it considers that it is operating in the low-speed range and sets the second limit value (TLimit2) to the reverse torque limit value (Tinverse) (S7). In other words, the control device 1 restricts the switching between the forward torque limit value (Tforward) and the reverse torque limit value (Tinverse) in the low-speed range where the absolute value (|v|) is less than the speed limit (vLimit). To put it another way, the control device 1 has a dead zone in the low-speed range relative to the actual speed at which the second limit value (TLimit2) is set.

[0036] As a result, even if the actual speed (v) repeatedly crosses zero due to noise from the encoder 24 in the low-speed range, the second limit value (TLimit2) does not switch due to the presence of a dead zone, thereby suppressing vibrations in the torque command (T) and preventing the generation of abnormal noise and vibration. Furthermore, since the reverse torque limit value (Tinverse) is set as the second limit value (TLimit2) in this low-speed range, the reduction gear 22 will not be damaged even if actual reverse operation occurs instead of just noise.

[0037] According to the embodiments described above, the following effects can be obtained. The control device 1 according to this embodiment includes a limiting unit that limits the torque command for driving the motor 21 of the industrial robot 2 to a predetermined limit value, and a setting unit 17 that sets a predetermined forward torque limit value as the limit value when the result of multiplying the actual speed, which represents the rotation direction of the motor 21, and the torque command, which represents the direction of torque, is 0 or greater, and sets a predetermined reverse torque limit value as the limit value when the result of multiplication is less than 0. The setting unit 17 then restricts switching between the forward torque limit value and the reverse torque limit value when the absolute value of the actual speed is less than a predetermined speed upper limit value.

[0038] As a result, a dead zone is created in the switching between the forward torque limit and the reverse torque limit in the low-speed range, which suppresses the rapid switching of the limit value when the actual speed (v) repeatedly crosses zero due to noise from the encoder 24, etc. Therefore, it is also prevented that the torque command will not vibrate as the limit value switches, and the generation of abnormal noise and vibration can be suppressed.

[0039] Furthermore, by setting a reverse torque limit value as a limit value in the low-speed range, as in the embodiment, the reduction gear 22 will not be damaged even if actual reverse operation occurs instead of noise.

[0040] Furthermore, the reverse torque limit set in the low-speed range, while limiting the torque command, is also used during the normal operation of the industrial robot 2, and a reasonably large torque can be obtained within that limit. Therefore, it can handle situations where a large torque is required in the low-speed range or while stationary, such as when supporting its own weight or pressing against a workpiece.

[0041] Furthermore, in the control method according to the embodiment, if the result of multiplying the actual speed, which represents the rotation direction of the motor 21, by the torque command, which represents the direction of torque, is 0 or greater, a predetermined forward torque limit value is set as the limit value for the torque command. On the other hand, if the result of multiplication is less than 0, a predetermined reverse torque limit value is set as the limit value. Additionally, if the absolute value of the actual speed is less than a predetermined speed upper limit value, the switching between the forward torque limit value and the reverse torque limit value is restricted. This control method can also be used to suppress the generation of abnormal noise and vibration in the low-speed range, and similar effects to the control device 1 described above can be obtained.

[0042] Furthermore, the limiting unit includes a first limiting unit 16 that limits the torque command by a predetermined first limiting value, and a second limiting unit 19 that further limits the torque command limited by the first limiting unit 16 by a predetermined second limiting value. The setting unit 17 sets the first limiting value according to the operating mode of the industrial robot 2, and sets the second limiting value to either a forward torque limiting value or a reverse torque limiting value according to the result of multiplying the actual speed and the torque command. This makes it possible to limit the torque using an appropriate limiting value according to the operating mode.

[0043] Incidentally, the low-speed range described above occurs when decelerating from a state where the vehicle is operating at a certain speed, but it also occurs when the motor 21 starts rotating from a stationary state. In this case, when the motor 21 starts moving and accelerates, it will be in the forward direction, but if the limit value in the low-speed range is set to the reverse torque limit value, the acceleration may be limited and it may not be possible to start moving at maximum performance.

[0044] Therefore, the setting unit 17 allows switching between the forward torque limit (Tforward) and the reverse torque limit (Tinverse) when accelerating in the low-speed range. Note that in Figure 4 described below, the same reference numerals are used for processes common to Figure 3, so the explanation of these common processes will be omitted. Furthermore, the control device 1 will be described as the main component of the process.

[0045] As shown in Figure 4, when the control device 1 limits the torque command, if it determines that the absolute value of the actual speed (|v|) is less than a predetermined speed limit (vLimit), it further determines whether the position command (Pc) is accelerating or not (S10). The speed limit (vLimit) can be set appropriately according to the specifications of the motor 21, etc. Furthermore, "the position command (Pc) is accelerating" means that a position command (Pc) that accelerates the actual speed of the motor 21 is being output.

[0046] Then, if the control device 1 determines that the position command (Pc) is not accelerating (S10: NO), it proceeds to step S7 and sets the reverse torque limit value (Tinverse) as the second limit value (TLimit2). This suppresses frequent switching of the limit value in the low-speed range.

[0047] On the other hand, if the control device 1 determines that the position command (Pc) is accelerating (S10:NO), it proceeds to step S9 and sets the forward torque limit value (Tforward) as the second limit value (TLimit2). The same procedure is followed if the process shown in Figure 4 is repeated during acceleration.

[0048] As a result, a relatively large forward torque limit (Tforward) is set when accelerating from low speeds, including a stationary state, enabling movement at maximum performance. Therefore, it is possible to suppress the generation of abnormal noise and vibration in the low speed range, and improve the responsiveness of the motor 21 when it starts moving.

[0049] This disclosure is described in accordance with embodiments, but it is understood that this disclosure is not limited to such embodiments or structures. This disclosure also includes various modifications and variations within the scope of equivalents. In addition, various combinations and forms, as well as other combinations and forms that include only one, more, or fewer of those elements, fall within the scope and idea of ​​this disclosure. [Explanation of symbols]

[0050] In the drawing, 1 represents the control device, 2 represents the industrial robot, 16 represents the first limiting unit, 17 represents the setting unit, 19 represents the second limiting unit, and 21 represents the motor.

Claims

1. A limiting unit that limits the torque command for driving the motor of an industrial robot to a predetermined limit value, The motor comprises a setting unit which sets a predetermined forward torque limit value as the limit value if the result of multiplying the actual speed representing the rotation direction of the motor by the torque command representing the direction of torque is 0 or greater, and sets a predetermined reverse torque limit value as the limit value if the result of multiplication is less than 0. The setting unit is a control device for an industrial robot that restricts switching between the forward torque limit value and the reverse torque limit value when the absolute value of the actual speed is less than a predetermined speed upper limit value.

2. The control device for an industrial robot according to claim 1, wherein the setting unit allows switching between the forward torque limit and the reverse torque limit when the absolute value of the actual speed is less than the speed upper limit and the position command is accelerating.

3. The limiting unit includes a first limiting unit that limits the torque command by a predetermined first limiting value, and a second limiting unit that further limits the torque command limited by the first limiting unit by a predetermined second limiting value. The control device for an industrial robot according to claim 1 or 2, wherein the setting unit sets the first limit value according to the operating mode of the industrial robot, and sets the second limit value to either the forward torque limit value or the reverse torque limit value according to the result of multiplying the actual speed and the torque command.

4. A control method for an industrial robot, wherein if the result of multiplying the actual speed, which represents the rotation direction of the motor, by a torque command, which represents the direction of torque, is 0 or greater, a predetermined forward torque limit value is set as the limit value of the torque command, while if the result of multiplication is less than 0, a predetermined reverse torque limit value is set as the limit value, and if the absolute value of the actual speed is less than a predetermined speed upper limit, the method restricts switching between the forward torque limit value and the reverse torque limit value.