IP Library Granted Patent US 12,138,796
Granted Patent B2
US 12,138,796 · App. 17/574,577 · Granted Nov 12, 2024

Torque control of a motor

Inventors: Keita Shimamoto (Fukuoka, JP); Koji Uemura (Fukuoka, JP)
B25J9/1633B25J9/12B25J9/1653B25J9/1664B25J9/1674B25J13/085
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,138,796
App. No.
17/574,577
Granted
Nov 12, 2024
Kind
B2
Abstract

A robot system includes: a robot comprising a joint driven by a motor; and a circuitry configured to: execute position control of the motor based on position commands; store torque commands generated based on the position commands during execution of the position control of the motor; and execute torque control of the motor based on the stored torque commands.

Claims (77)

1. A robot system comprising:

a robot comprising a joint driven by a motor; and

circuitry configured to:

execute position control of the motor during a first mode of operation based on sequential position commands that specify an angular position of the motor for each of the position commands, so that the angular position of the motor sequentially follows the position commands;

store torque commands generated during execution of the first mode of operation, wherein the stored torque commands identify a torque generated by the motor corresponding to the angular position for each of the position commands; and

execute, after the first mode of operation, torque control of the motor during a second mode of operation based on the stored torque commands, so that the torque generated by the motor sequentially follows the stored torque commands.

2. The robot system according to claim 1 , wherein the circuitry is further configured to:

store first angular positions of the motor detected during execution of the first mode of operation;

calculate a positional deviation between a first angular position of the stored first angular positions and a second angular position of the motor detected during execution of the second mode of operation; and

determine whether there is a contact with the robot during execution of the second mode of operation based on the positional deviation during execution of the second mode of operation.

3. The robot system according to claim 2 , wherein the robot further comprises an encoder configured to detect the first angular positions and the second angular position.

4. The robot system according to claim 2 , wherein the circuitry is further configured to stop the motor in response to determining the contact with the robot.

5. The robot system according to claim 1 , wherein the circuitry is further configured to:

store first angular positions of the motor detected during execution of the first mode of operation;

calculate a positional deviation between a first angular position of the stored first angular positions and a second angular position of the motor detected during execution of the second mode of operation; and

stop the motor in response to determining that the positional deviation is greater than a predetermined stopping threshold.

6. The robot system according to claim 1 , wherein the circuitry is further configured to:

store first disturbances that have acted on the motor and that were estimated during execution of the first mode of operation based on the torque commands and angular positions of the motor;

estimate a second disturbance that has acted on the motor during execution of the second mode of operation based on the torque commands and the angular positions of the motor;

correct a torque command of the stored torque commands based on a disturbance deviation between a first disturbance of the stored first disturbances and the estimated second disturbance; and

execute the torque control based on the corrected torque command.

7. The robot system according to claim 6 , wherein the circuitry is further configured to determine whether there is a contact with the robot during execution of the second mode of operation based on the disturbance deviation.

8. The robot system according to claim 7 , wherein the circuitry is further configured to stop the motor in response to determining the contact with the robot.

9. The robot system according to claim 6 , wherein the circuitry is further configured to stop the motor in response to determining that the disturbance deviation is greater than a predetermined stopping threshold.

10. The robot system according to claim 1 , wherein the circuitry is further configured to:

store first angular positions of the motor detected during execution of the first mode of operation;

calculate a positional deviation between a first angular position of the stored first angular positions and a second angular position of the motor detected at a predetermined timing during execution of the second mode of operation; and

switch the torque control to the position control in response to determining that the positional deviation is greater than a predetermined switching threshold.

11. The robot system according to claim 1 , wherein the circuitry is further configured to:

store first angular positions of the motor detected during execution of the first mode of operation;

calculate a positional deviation between a first angular position of the stored first angular positions and a second angular position of the motor detected during execution of the second mode of operation;

stop the motor in response to determining that the positional deviation is greater than a predetermined stopping threshold; and

switch the torque control to the position control in response to determining that the positional deviation calculated at a predetermined timing during execution of the second mode of operation is greater than a predetermined switching threshold.

12. The robot system according to claim 1 , wherein the robot comprises a plurality of joints driven by a plurality of motors, and

wherein the circuitry is further configured to:

execute the position control of each of the plurality of motors during execution of the first mode of operation;

store, for one or more motors of the plurality of motors, the torque commands generated during execution of the first mode of operation;

execute the torque control of the one or more motors based on the stored torque commands during execution of the second mode of operation; and

execute the position control of each of the plurality of motors other than the one or more motors during execution of the second mode of operation.

13. The robot system according to claim 1 , wherein the circuitry is further configured to:

switch between a first control mode and a second control mode, based on a user selection;

execute, in the first control mode, a second position control based on the position commands instead of the torque control during execution of the second mode of operation; and

execute, in the second control mode, the torque control based on the stored torque commands during execution of the second mode of operation.

14. The robot system according to claim 1 , wherein the robot comprises:

an end effector for executing a predetermined task; and

an external force measurement sensor configured to measure an external force acting on the end effector, and

wherein the circuitry is further configured to:

correct a torque command of the stored torque commands based on the external force measured by the external force measurement sensor; and

execute the torque control based on the corrected torque command.

15. The robot system according to claim 1 , wherein the robot comprises:

an end effector for executing a predetermined task; and

an external force measurement sensor configured to measure an external force acting on the end effector, and

wherein the circuitry is further configured to:

correct a position command based on the external force measured by the external force measurement sensor; and

store the torque commands generated based on the position commands including the corrected position command.

16. A method for controlling a robot having a joint driven by a motor, the method comprising:

executing position control of the motor during a first mode of operation based on sequential position commands that specify an angular position of the motor for each of the position commands, so that the angular position of the motor sequentially follows the position commands;

storing torque commands generated during execution of the first mode of operation, wherein the stored torque commands identify a torque generated by the motor corresponding to the angular position for each of the position commands; and

executing, after the first mode of operation, torque control of the motor during a second mode of operation based on the stored torque commands, so that the torque generated by the motor sequentially follows the stored torque commands.

17. The method according to claim 16 , further comprising:

storing first angular positions of the motor detected during execution of the first mode of operation;

calculating a positional deviation between a first angular position of the stored first angular positions and a second angular position of the motor detected during execution of the second mode of operation; and

determining whether there is a contact with the robot during execution of the second mode of operation based on the positional deviation during execution of the second mode of operation.

18. The method according to claim 16 , further comprising:

storing a first angular position of the motor detected during execution of the first mode of operation;

calculating a positional deviation between the stored first angular position and a second angular position of the motor detected during execution of the second mode of operation; and

switching the torque control to the position control in response to determining that the positional deviation is greater than a predetermined switching threshold.

19. A servo system comprising:

a motor; and

circuitry configured to:

execute position control of the motor during a first mode of operation based on sequential position commands that specify an angular position of the motor for each of the position commands, so that the angular position of the motor sequentially follows the position commands;

store torque commands generated during execution of the first mode of operation, wherein the stored torque commands identify a torque generated by the motor corresponding to the angular position for each of the position commands; and

execute, after the first mode of operation, torque control of the motor during a second mode of operation based on the stored torque commands, so that the torque generated by the motor sequentially follows the stored torque commands.

20. The servo system according to claim 19 , wherein the circuitry is further configured to:

store first angular positions of the motor detected during execution of the first mode of operation;

calculate a positional deviation between a first angular position of the stored first angular positions and a second angular position of the motor detected during execution of the second mode of operation; and

switch the torque control to the position control in response to determining that the positional deviation is greater than a predetermined switching threshold.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 3, 2022
From: SHIMAMOTO, KEITA; UEMURA, KOJI
To: KABUSHIKI KAISHA YASKAWA DENKI
Reel/Frame 058868/0871 →
Continuity (2)
Continuation PCTJP2019028261 · Jul 18, 2019
Related Publication 20220134553A1 · May 5, 2022