Robot control device, control method, and non-transitory storage medium

By calculating and compensating the viscosity resistance in the robot control device, the problem of insufficient reverse driving performance of the actuator in the prior art is solved, and higher reverse driving performance and flexibility are achieved, thereby improving the working efficiency of the robot arm.

CN119489458APending Publication Date: 2025-02-21TOYOTA JIDOSHA KK
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202411012975.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2023-08-14
Filing Date
2024-07-26
Publication Date
2025-02-21

AI Technical Summary

Technical Problem

The prior art is difficult to achieve sufficient reverse driving performance, especially in flexible robot arms, where the reverse driving performance of the actuator is insufficient, affecting the flexibility and working efficiency of the robot arms.

Method used

By introducing a speed calculation unit and a compensation value calculation unit into the robot control device, the viscous resistance compensation value is calculated and added with the torque command, a compensation torque command for driving the actuator is generated, thereby reducing the viscous resistance , improve reverse driving performance.

Benefits of technology

It effectively improves the reverse driving performance of the robot arm, enhances its flexibility and responsiveness in low-speed working areas, and improves its ability to coexist with humans.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119489458A_ABST
    Figure CN119489458A_ABST
Patent Text Reader

Abstract

The invention relates to a robot control apparatus, a control method, and a non-transitory storage medium. The robot control apparatus includes: a speed calculation unit configured to calculate a speed of an output shaft of a driving unit configured to drive a robot; and a compensation value calculation unit configured to calculate a viscous resistance compensation value, which is a value for generating a second torque command to be output to the driving unit by compensating the supplied first torque command in such a manner that the second viscous resistance is closer to zero than the first viscous resistance, the first viscous resistance is a viscous resistance at a first speed detected by the speed calculation unit, and the second viscous resistance is a viscous resistance at a second speed lower than the first speed.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to a robot control device, a control method, and a non-transitory storage medium. Background Art

[0002] Japanese Unexamined Patent Application Publication No. 2022-178399 (JP 2022-178399 A) discloses a technology of subtracting a disturbance estimated by a disturbance observer from a set control signal and outputting a control signal for an actuator. The disturbance observer receives the speed of the actuator and the control signal fed back from the actuator as inputs and estimates the disturbance. Summary of the invention

[0003] There is already a demand for a flexible robot arm for coexistence with humans. It is also expected to use, for example, machine learning to make the robot arm work. In order to increase the flexibility of the robot arm, it is important to increase the backdrivability of the actuator (easy to move when the actuator is moved from the outside). In JP 2022-178399 A, it is difficult to achieve sufficient backdrivability because compensation for the control signal for the actuator is performed by feedback control using a disturbance observer of the external force.

[0004] The present disclosure provides a robot control device, a control method, and a non-transitory storage medium, which can improve reverse driving performance.

[0005] A robot control device according to a scheme of the present disclosure includes: a speed calculation unit, which is configured to calculate the speed of an output shaft of a drive unit, and the drive unit is configured to drive the robot; and a compensation value calculation unit, which is configured to calculate a viscous resistance compensation value, wherein the viscous resistance compensation value is a value of a second torque command to be output to the drive unit by compensating a supplied first torque command in a manner that the second viscous resistance is closer to zero than the first viscous resistance, wherein the first viscous resistance is the viscous resistance at a first speed detected by the speed calculation unit, and the second viscous resistance is the viscous resistance at a second speed lower than the first speed.

[0006] The compensation value calculation unit may be configured to calculate the viscous resistance compensation value based on the following expression when the speed of the output shaft of the driving unit is greater than zero: d =-k 1 ×ω 2 +k 2 ×ω.

[0007] The compensation value calculation unit may be configured to calculate the viscous resistance compensation value based on the following expression when the speed of the output shaft of the driving unit is equal to or less than zero: d =k 1 ×ω 2 +k 2 ×ω.

[0008] In the above expression, ω is the velocity (rad / s)

[0009] k 2 is the measured value of viscous drag measured in the low-speed working area,

[0010] k 1 It is k 2 / (2ω 0 ),and

[0011] ω 0 is the maximum speed of compensation.

[0012] The speed of the output shaft is ω 0 Under the above conditions, or when the speed of the output shaft is -ω 0 Under the following conditions, the viscous resistance compensation value may be constant.

[0013] The robot control device may further include an adder configured to add the viscous resistance compensation value to the first torque command to generate the second torque command.

[0014] The driving unit may include a motor and a reducer, the motor being configured to rotationally drive a joint portion of the robot.

[0015] The robot may include: an arm portion extending from a main body portion and including at least one joint portion at a position more than a predetermined distance from a root portion of the arm portion; at least one of the drive units is configured to generate a driving force for rotationally driving the joint portion; and at least one transmission unit is provided between a corresponding one of the joint portions and the drive unit and is configured to transmit the driving force of the drive unit to the corresponding joint portion. The drive units may be centrally installed at the root portion of the arm portion.

[0016] The robot may further include at least one rotation detection unit configured to detect rotation information of the driving unit. The speed calculation unit may be configured to calculate the speed based on the rotation information.

[0017] A control method according to another aspect of the present disclosure is executed by a computer and includes:

[0018] calculating a speed of an output shaft of a drive unit configured to drive a robot; and calculating a viscous resistance compensation value, the viscous resistance compensation value being a value of generating a second torque command to be output to the drive unit by compensating a supplied first torque command in such a way that a second viscous resistance is closer to zero than a first viscous resistance, the first viscous resistance being a viscous resistance at a first speed obtained by calculating the speed, and the second viscous resistance being a viscous resistance at a second speed lower than the first speed.

[0019] According to still another aspect of the present disclosure, a non-transitory storage medium stores instructions, which can be executed by one or more processors and cause the one or more processors to perform functions.

[0020] The functions include: calculating a speed of an output shaft of a drive unit configured to drive a robot; and calculating a viscous resistance compensation value, the viscous resistance compensation value being a value of a second torque command to be output to the drive unit by compensating a supplied first torque command in such a way that a second viscous resistance is closer to zero than a first viscous resistance, the first viscous resistance being a viscous resistance at a first speed obtained by calculating the speed, and the second viscous resistance being a viscous resistance at a second speed lower than the first speed.

[0021] The present disclosure provides a robot control device, a control method, and a non-transitory storage medium, which can improve reverse driving performance. BRIEF DESCRIPTION OF THE DRAWINGS

[0022] Features, advantages, and technical and industrial significance of exemplary embodiments of the present invention will be described below with reference to the accompanying drawings, wherein like reference numerals represent like elements, and wherein:

[0023] Figure 1 is a perspective view showing a schematic configuration of an arm portion of a robot according to an embodiment;

[0024] Figure 2 is a block diagram showing a schematic configuration of a robot control device according to an embodiment;

[0025] Figure 3 It is shown Figure 2 A flowchart of the calculation of the compensation value by the compensation value calculation unit;

[0026] Figure 4 is a graph showing an example of a viscous resistance compensation value.

[0027] Figure 5 The effects of the embodiment are shown;

[0028] Figure 6The effects of the embodiment are shown;

[0029] Figure 7 The effects of the embodiment are shown;

[0030] Figure 8 To illustrate the effects of the embodiment; and

[0031] Fig. 9 The effects of the embodiment are shown. DETAILED DESCRIPTION

[0032] Hereinafter, embodiments of the present disclosure will be described with reference to the accompanying drawings. For the sake of clarity, omissions and simplifications are appropriately made in the following description and drawings. In all drawings, the same elements are represented by the same symbols, and repeated descriptions are omitted when necessary. An example of applying the technology of the present disclosure to the arm of a robot will be described in the embodiments.

[0033] First, a robot arm to which the robot control device according to the embodiment is applied will be described. Figure 1 1 is a perspective view showing a schematic configuration of an arm portion 1 of a robot according to an embodiment. The arm portion 1 extends from a main body portion 2 of the robot. Figure 1 In the example shown, the main body 2 is configured as a base. However, the present disclosure is not limited thereto. For example, the main body 2 may be configured as a torso of a humanoid robot.

[0034] The arm 1 is configured as a robot arm having one or more joints 3, with links between the joints 3. The one or more joints 3 are located at a predetermined distance or more from the base of the arm 1. Each joint 3 may be configured to rotate around at least one of a yaw axis, a pitch axis, and a roll axis that are perpendicular to each other.

[0035] exist Figure 1 In the example shown, the arm 1 has a wrist joint 31, an elbow joint 32, and a shoulder joint 33. The shoulder joint 33 is located at the root of the arm 1. The elbow joint 32 and the wrist joint 31 are located at a predetermined distance from the root of the arm 1. In this example, the wrist joint 31, the elbow joint 32, and the shoulder joint 33 are each configured to rotate around two axes. However, the present disclosure is not limited to this. For example, the wrist joint 31, the elbow joint 32, and the shoulder joint 33 can be configured to rotate around one axis or around three or more axes.

[0036] An end effector 8 capable of grasping an object is mounted at the distal end of the arm 1. A plurality of actuators 4 that generate driving forces for driving the respective joints 3 are collectively mounted at the base of the arm 1.

[0037] The actuator 4 is a specific example of a driving unit. The actuator 4 can be configured as, for example, a servo motor having a speed reducer. Each actuator 4 generates a driving force that rotationally drives the rotation axis of the corresponding joint part 3. Figure 1 In the example shown, eight actuators 4 that generate driving forces for rotating the wrist joint 31 , the elbow joint 32 , and the shoulder joint 33 about two axes are collectively mounted at the base of the arm 1 .

[0038] For example, Figure 1 As shown, the belt 5 is wound around each rotation axis of the elbow joint 32 and each output axis of the corresponding actuator 4. The belt 5 is a specific example of a transmission unit. The output axis of each actuator 4 transmits the driving force to each rotation axis of the elbow joint 32 via the belt 5.

[0039] Similarly, the belt 5 is wound around each rotation axis of the shoulder joint 33 and each output axis of the corresponding actuator 4. The output axis of each actuator 4 transmits the driving force to each rotation axis of the shoulder joint 33 via the belt 5. The wire 6 is wound around each rotation axis of the wrist joint 31 and each output axis of the corresponding actuator 4. The output axis of each actuator 4 transmits the driving force to each rotation axis of the wrist joint 31 via the wire 6.

[0040] In the above example, the belt 5 and the wire 6 are used as the transmission unit. However, the transmission unit is not limited to these. The transmission unit may be, for example, a chain, a gear, or a shaft, or may be any other transmission member capable of transmitting the driving force of the actuator 4.

[0041] The encoder 7 is a specific example of a rotation detection unit. The encoder 7 is provided integrally with the actuator 4. Each encoder 7 detects the rotation position of the output shaft of the corresponding actuator 4. The rotation detection unit is not limited to the encoder 7, and may be another angle sensor.

[0042] Generally, each joint of the arm is provided with an actuator. The arm is provided with peripheral components such as wires required for the actuator. This increases the weight of the arm, resulting in a decrease in reverse driving performance.

[0043] On the other hand, in the present embodiment, the actuator 4 is centrally arranged at the root of the arm 1, and the power is transmitted using a belt and a wire. Therefore, there is no need to install the actuator and its peripheral components at the distal end, the middle part, etc. of the arm 1. This significantly reduces the weight of the arm 1, making it possible to improve the reverse driving performance of the arm 1.

[0044] In a robot, one of the main factors that degrade the back-driving performance is the influence of friction in the actuator 4, especially the friction in the reducer. The torque T required for the back-driving performance f It is given by the following expression (1).

[0045]

[0046] In expression (1), T s It is a constant determined by the internal friction of the reducer and the self-holding torque of the motor. θ is the rotation angle of the output shaft. a is the moment of inertia, C a is the viscous friction coefficient, and K a is the stiffness of the drive unit. Improving the reverse driving performance means, for example, reducing the value T in expression (1) by physically or by control. s ,I a , C a and K a To reduce the torque T by one or more of f Ideally, the inertial resistance, viscous resistance and friction resistance of the reducer are required to be zero.

[0047] As described above, even if the weight of the robot arm is reduced and the reverse drive performance of the hardware itself is improved, each term in expression (1) cannot be reduced to zero. Therefore, in this embodiment, the reverse drive performance is improved by controlling the execution compensation. In this embodiment, compensation for the viscous resistance, which is a term proportional to the speed among the terms of the reverse drive performance, is performed.

[0048] As described above, the goal is to perform compensation until the viscous resistance becomes zero. However, for example, when the motor has a small viscous resistance, performing compensation to the limit may cause the motor to be rotated by the compensated torque due to parameter errors. For this reason, the compensation value is usually set to a smaller value in consideration of the variation.

[0049] The purpose of performing friction compensation in a human-symbiotic robot is to improve the accuracy of detecting external forces when the robot is in contact with a target object or the surrounding environment, such as when picking up a target object. Therefore, the area where friction compensation needs to be performed is limited to extremely low speeds. On the other hand, friction compensation performed to high-speed areas by control requires processing of nonlinear areas such as hysteresis, high-order fluctuations, etc. This may result in a more complex compensator (such as a high-order compensator) and may result in a reduction in compensation capability because a safety compensation value is set. Therefore, in this embodiment, as described below, friction compensation is designed for the low-speed working area required by the human-symbiotic robot. The low-speed working area can be, for example, a speed area below 10 to 20 (rad / s).

[0050] Figure 2 1 is a block diagram showing a schematic configuration of the robot control device 10 according to the embodiment. Figure 2As shown, the robot control device 10 includes an adder 11, a speed calculation unit 12, and a compensation value calculation unit 13. In the following description, it is assumed, as an example, that the actuator 4 includes a motor and a gear reducer that reduces the speed at a high reduction ratio using mechanical meshing. In the gear reducer, when the gear rotates at a predetermined rotation speed, friction is generated by contact between the tooth tips of the gear. The robot control device 10 performs feedforward control that eliminates the friction generated by the reducer by adding a compensation value for compensating for the friction in advance to a torque command to be supplied to the motor.

[0051] The adder 11 adds the compensation value T calculated by the compensation value calculation unit 13 to be described later. d The set torque command F0 is added, and the torque command F1 is output to the actuator 4. The speed calculation unit 12 calculates the speed of the output shaft of the actuator 4 according to the rotation angle θ of the actuator 4. The rotation angle θ of the output shaft of the actuator 4 can be acquired by an angle sensor such as an encoder 7. The torque command F0 is an example of the first torque command of the present disclosure. The torque command F1 is an example of the second torque command of the present disclosure.

[0052] Will refer to Figure 3 The calculation of the compensation value by the compensation value calculation unit 13 is described. First, the speed calculation unit 12 calculates the speed ω of the output shaft of the actuator 4, and inputs the generated speed ω to the compensation value calculation unit 13. Figure 3 As shown, the compensation value calculation unit 13 first determines whether ω is greater than zero (S1).

[0053] When the speed ω is greater than zero (S1, yes), the viscosity resistance compensation value T is calculated based on the following expression (2): d .

[0054] T d =-k 1 ×ω 2 +k 2 ×ω…(2)

[0055] When the speed ω is equal to or less than zero (S1, No), the viscosity resistance compensation value T is calculated based on the following expression (3): d .

[0056] T d =k 1 ×ω 2 +k 2 ×ω…(3)

[0057] The values ​​in expressions (2) and (3) are as follows.

[0058] ω: speed (rad / s)

[0059] k 2: Measured value of viscous drag measured in the low-speed working area

[0060] k 1 :k 2 / (2ω 0 )

[0061] ω 0 : Maximum speed of compensation

[0062] When ω>k 2 / 2k 1 And ω>-k 2 / 2k 1 When the viscous resistance compensation value T d With ω 0 Viscous resistance compensation value T under d same. Figure 4 An example of a viscous drag compensation value calculated in this manner is shown. Figure 4 In the figure, it is assumed that the maximum speed ω used for compensation is 0 is, for example, 20 (rad / s). Figure 4 As shown, the viscous resistance compensation value T d As the speed of the actuator 4 decreases, the viscosity resistance compensation value T decreases. d In ω 0 Above and -ω 0 The following are constant.

[0063] The robot control device 10 can generate a viscous resistance compensation value T according to the speed of the output shaft of the actuator 4. d , which is used to compensate for the viscous resistance of the reducer of the actuator 4. The viscous resistance compensation value T d The viscous resistance of the actuator 4 is eliminated by superimposing it on the torque command as the control voltage for the motor. As described above, as the speed of the output shaft of the actuator 4 decreases in the low-speed working area, the robot controller 10 according to the present embodiment can reduce the viscous resistance to be closer to zero. In other words, the torque command F1 is generated according to the torque command F0 so that when the first viscous resistance and the second viscous resistance are compared, the second viscous resistance is closer to zero than the first viscous resistance. The first viscous resistance is the resistance when the output shaft has the first speed, and the second viscous resistance is the resistance when the output shaft has the second speed.

[0064] The effects of the control according to the embodiment will be described. Figure 5 An example of performing a simple collision experiment is shown. In this experiment, an external force is applied to the arm 23 by contact with a hammer (not shown). Figure 5 As shown, the actuator 21 is mounted on a base 20 having an L shape when viewed from the side. The arm 23 is connected to the output shaft of the actuator 21 via a bracket 22. Figures 6 to 9The following describes the results obtained by the operation of the arm 23 when the arm 23 is struck from the side by a hammer (not shown). Figures 6 to 9 , A shows the result when compensation of the viscous resistance is performed, and B shows the result when compensation is not performed.

[0065] Figure 6 shows the speed of the output shaft of the actuator 21 when an external force is applied by contact with a hammer. Figure 6 In , the horizontal axis represents time (seconds), and the vertical axis represents speed (rad / s). Figure 6 As shown, the time for arm 23 to move when subjected to an external force is longer when compensation is performed than when compensation is not performed. This shows that the back-drive performance is improved by compensation.

[0066] Figure 7 The Q-axis current generated in the motor of the actuator 21 when an external force is applied is shown. The torque is given by the product of the Q-axis current and the torque constant. Figure 7 , the abscissa represents time (seconds), and the ordinate represents Q-axis current (A). Figure 8 and Fig. 9 The frequency characteristics of the speed and torque of the output shaft of the actuator 21 are shown. Figure 8 In , the abscissa represents frequency (rad / s), and the ordinate represents amplitude (dB). Fig. 9 In FIG. 1 , the abscissa represents frequency (rad / s), and the ordinate represents phase (deg). From these figures, it can be seen that the amplitude at a lower frequency is greater when compensation is performed than when compensation is not performed, and the cutoff frequency is moved toward the low frequency side by compensation.

[0067] As described above, according to this embodiment, in the low-speed operation area where the human symbiotic robot mainly operates, the reverse driving performance can be more effectively improved. As a result, a faster response can be achieved and the flexibility of the robot can be increased compared to the case of using feedback control.

[0068] Although the embodiments of the present disclosure are described above, the embodiments are presented only as examples and are not intended to limit the scope of the present invention. The novel embodiments can be performed in various other ways, and various omissions, substitutions and modifications can be made without departing from the scope of the present invention. The embodiments and their modifications are all included in the scope and spirit of the present invention, and are included in the scope of the present invention described in the claims and their equivalents.

[0069] In the present disclosure, the above method can also be implemented by, for example, causing a processor to execute a computer program. Figure 2 and Figure 3 Various treatments shown.

[0070] The program can be stored and supplied to the computer by using various types of non-transitory computer-readable media. Non-transitory computer-readable media include various types of tangible recording media. Examples of non-transitory computer-readable media include magnetic recording media (e.g., floppy disks, magnetic tapes, and hard disk drives), magneto-optical recording media (e.g., magneto-optical disks), compact disk read-only memories (CD-ROMs), recordable compact disks (CD-Rs), rewritable compact disks (CD-R / Ws), and semiconductor memories (e.g., mask ROMs, programmable ROMs (PROMs), erasable PROMs (EPROMs), flash ROMs, and random access memories (RAMs)).

[0071] The program can be supplied to the computer through various types of temporary computer-readable media. Examples of temporary computer-readable media include electrical signals, optical signals, and electromagnetic waves. The temporary computer-readable media can supply the program to the computer via a wired communication path such as an electric wire and an optical fiber or a wireless communication path.

[0072] The components constituting the robot control device 10 according to the above-described embodiment are not necessarily implemented by a program. Some or all of the components constituting the robot control device 10 may be implemented by dedicated hardware such as an application specific integrated circuit (ASIC) or a field programmable gate array (FPGA).

Claims

1. A robot control device, characterized in that: include: a speed calculation unit configured to calculate a speed of an output shaft of a drive unit configured to drive the robot; as well as a compensation value calculation unit configured to calculate a viscous resistance compensation value, the viscous resistance compensation value being a value of generating a second torque command to be output to the drive unit by compensating the supplied first torque command in such a manner that a second viscous resistance is closer to zero than a first viscous resistance, the first viscous resistance being a viscous resistance at a first speed detected by the speed calculation unit, and the second viscous resistance being a viscous resistance at a second speed lower than the first speed.

2. The robot control device according to claim 1, characterized in that: The compensation value calculation unit is configured to When the speed of the output shaft of the drive unit is greater than zero, the viscous resistance compensation value is calculated based on the following expression, T d =-k1×ω 2 +k2×ω, and When the speed of the output shaft of the drive unit is equal to or less than zero, the viscous resistance compensation value is calculated based on the following expression, T d =k1×ω 2 +k2×ω in ω is the speed (rad / s) k2 is the measured value of viscous drag measured in the low speed working area k1 is k2 / (2ω0), and ω0 is the maximum speed of compensation.

3. The robot control device according to claim 2, characterized in that: Under the condition that the speed of the output shaft is greater than or equal to ω0, or under the condition that the speed of the output shaft is less than or equal to −ω0, the viscous resistance compensation value is constant.

4. The robot control device according to claim 1, characterized in that: Also included is an adder configured to add the viscous drag compensation value to the first torque command to generate the second torque command.

5. The robot control device according to claim 1, characterized in that: The driving unit includes a motor and a speed reducer, and the motor is configured to rotationally drive a joint portion of the robot.

6. The robot control device according to claim 1, characterized in that: The robot comprises an arm portion extending from the main body portion and including at least one joint portion at a position more than a predetermined distance from a root of the arm portion, At least one of the driving units is configured to generate a driving force for rotationally driving the joint part, and at least one transmission unit disposed between a corresponding one of the joint parts and the driving unit and configured to transmit the driving force of the driving unit to the corresponding joint part, and The driving unit is centrally mounted on the base of the arm.

7. The robot control device according to claim 4, characterized in that The robot further includes at least one rotation detection unit, wherein the at least one rotation detection unit is configured to detect rotation information of the driving unit, and The speed calculation unit is configured to calculate the speed based on the rotation information.

8. A control method, which is executed by a computer, wherein the control method is characterized by comprising: calculating a speed of an output shaft of a drive unit, the drive unit being configured to drive the robot; as well as A viscous resistance compensation value is calculated, the viscous resistance compensation value being a value of generating a second torque command to be output to the drive unit by compensating the supplied first torque command in such a manner that a second viscous resistance is closer to zero than a first viscous resistance, the first viscous resistance being a viscous resistance at a first speed obtained by calculating the speed, and the second viscous resistance being a viscous resistance at a second speed lower than the first speed.

9. A non-transitory storage medium storing instructions, wherein the instructions can be executed by one or more processors and cause the one or more processors to perform functions, wherein the functions are characterized by: calculating a speed of an output shaft of a drive unit, the drive unit being configured to drive the robot; as well as A viscous resistance compensation value is calculated, the viscous resistance compensation value being a value of generating a second torque command to be output to the drive unit by compensating the supplied first torque command in such a manner that a second viscous resistance is closer to zero than a first viscous resistance, the first viscous resistance being a viscous resistance at a first speed obtained by calculating the speed, and the second viscous resistance being a viscous resistance at a second speed lower than the first speed.

Citation Information

Patent Citations

  • Actuator friction compensation controller

    JP2022178399A