IP Library › Granted Patent US 12,017,352
Granted Patent B2
US 12,017,352 · App. 17/176,672 · Granted Jun 25, 2024

Transformation of joint space coordinates using machine learning

Inventors: Visak Chadalavada Vijay Kumar (Atlanta, GA); David Hoeller (Zurich, CH); Balakumar Sundaralingam (Milpitas, CA); Jonathan Tremblay (Redmond, WA); Stanley Thomas Birchfield (Sammamish, WA)
Assignee: NVIDIA CORPORATION
B25J9/023B25J9/163B25J9/1664G05B2219/39064
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,017,352
App. No.
17/176,672
Granted
Jun 25, 2024
Kind
B2
Abstract

Apparatuses, systems, and techniques to map coordinates in task space to a set of joint angles of an articulated robot. In at least one embodiment, a neural network is trained to map task-space coordinates to joint space coordinates of a robot by simulating a plurality of robots at various joint angles, and determining the position of their respective manipulators in task space.

Claims (46)

1. A system comprising:

one or more processors to calculate parameters corresponding to one or more machine learning models, at least in part, by determining a set of joint angles from a set of joint velocities and a set of coordinates that specify a point in space, such that the set of joint angles are applicable to a plurality of joints of a robot to position a component of the robot according to the point in space; and

one or more non-transitory computer-readable media to store the parameters.

2. The system of claim 1 , wherein the one or more machine learning models are trained at least in part by simulating a plurality of robots with a variety of joint angles, and determining a position of a component of each robot of the plurality of robots.

3. The system of claim 1 , wherein the one or more machine learning models are trained at least in part by training the robot to move the component within a first space, followed by training the robot to move the component within a second space, the second space larger than the first space.

4. The system of claim 3 , wherein:

the first space is a portion of the second space; and

the second space is a segment of a torus.

5. The system of claim 1 , wherein the one or more machine learning models are trained to avoid an obstacle by at least determining a reward value that is based at least in part on a distance of the robot from the obstacle.

6. The system of claim 1 , wherein the point in space is a goal position specified by a controller trained to perform a task using the robot.

7. The system of claim 1 , wherein the one or more machine learning models are trained at least in part using model-free deep reinforcement learning techniques.

8. The system of claim 1 wherein the set of coordinates further specify an orientation, such that the set of joint angles are further applicable to the plurality of joints of the robot to orient a component of the robot according to the orientation.

9. A non-transitory machine-readable medium having stored thereon a set of instructions, which if performed by one or more processors, cause the one or more processors to implement one or more machine learning model trained to:

determine one or more commands that control a set of joint angles of a robot, such that the one or more commands, when performed by the robot, position a part of the robot at a point in space identified by a set of coordinates; and

wherein the one or more machine learning models are trained at least in part by training the one or more machine learning models to determine the set of joint angles from a set of joint velocities and the set of coordinates within a first space, followed by training the one or more machine learning models to determine the set of joint angles from the set of joint velocities and the set of coordinates within a second space, the second space encompassing the first space.

10. The non-transitory machine-readable medium of claim 9 , wherein:

the robot has a movable joint; and

the movable joint is controllable to a desired angle with a motor.

11. The non-transitory machine-readable medium of claim 9 , wherein the first space and the second space are regions of a workspace reachable by the robot.

12. The non-transitory machine-readable medium of claim 9 , the robot is trained to move to points within successively larger spaces until the one or more machine learning models is trained to direct the robot to any point within a space in which a task is to be performed.

13. The non-transitory machine-readable medium of claim 9 , wherein the one or more machine learning models are trained to avoid an obstacle by at least determining a reward value that is based at least in part on a least distance between the robot and the obstacle.

14. The non-transitory machine-readable medium of claim 13 , wherein the one or more machine learning models are trained to keep at least a threshold distance between the robot and the obstacle.

15. The non-transitory machine-readable medium of claim 9 , wherein the point in space is a goal position specified by a control system that directs performance of a task by the robot.

16. The non-transitory machine-readable medium of claim 9 , wherein the one or more machine learning models are trained in simulation at least in part using model-based deep reinforcement learning techniques.

17. The non-transitory machine-readable medium of claim 9 , wherein the one or more machine learning models is trained at using a reward value based at least in part on an amount of position error, a measure of torque applied by the robot, and a distance from the robot to an obstacle.

18. A computer-implemented method comprising training one or more machine learning models to:

determine a set of joint angles from a set of coordinates that specify a point in space, such that the set of joint angles, when adopted by a robot, move a part of the robot to the point in space; and

wherein the one or more machine learning models are trained at least in part by training the one or more machine learning models to determine the set of joint angles from a set of joint velocities and the set of coordinates within a first space, followed by training the one or more machine learning models to determine the set of joint angles from a set of joint velocities and the set of coordinates within a second space, the second space encompassing the first space.

19. The computer-implemented method of claim 18 , wherein the first space and the second space are subsets of a workspace reachable by the robot.

20. The computer-implemented method of claim 19 , wherein a first shape of the first space and a second shape of the second space are based on a third shape of the workspace.

21. The computer-implemented method of claim 18 , wherein the one or more machine learning models are trained to avoid an obstacle by at least determining a reward value that is based at least in part on a minimum distance that occurs between the robot and the obstacle while the robot moves to the point in space.

22. The computer-implemented method of claim 21 , wherein the one or more machine learning models are trained to keep at least a threshold distance between the robot and the obstacle as the robot is moved.

23. The computer-implemented method of claim 22 wherein the one or more machine learning models are trained to maintain an object grasped by the robot in an orientation as the robot is moved.

24. The computer-implemented method of claim 18 , wherein the point in space is a goal position specified by a controller that directs performance of a task by the robot.

25. The computer-implemented method of claim 18 , wherein the one or more machine learning models are trained in simulation at least in part using model-free deep reinforcement learning techniques.

26. The computer-implemented method of claim 18 , wherein the one or more machine learning models is trained at using a reward value based at least in part on a combination of an amount of position error, and a measure of torque applied by the robot.

27. A system comprising:

one or more processors that implement one or more machine learning models, the one or more machine learning models trained to:

determine a set of commands from a set of joint velocities and a set of coordinates that specify a point in space, such that when the set of commands are performed by a robot, a set of joint angles are adopted by a robot causing a component of the robot to be positioned at the point in space;

wherein the one or more machine learning models are trained at least in part by training the robot to move the component within a first space, followed by training the robot to move the component within a second space, the second space larger than the first space; and

one or more memories to store one or more parameters of the one or more machine learning models.

28. The system of claim 27 , wherein the robot is an excavator.

29. The system of claim 27 , wherein the robot is a welding machine.

30. The system of claim 29 , wherein the one or more machine learning models are trained to position a welding machine to span a plurality of parts to be welded, without touching the plurality of parts.

31. The system of claim 27 , wherein the robot is 3-D printer.

32. The system of claim 27 , wherein the first space is a subset of the second space.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 22, 2021
From: CHADALAVADA VIJAY KUMAR, VISAK; HOELLER, DAVID; SUNDARALINGAM, BALAKUMAR; TREMBLAY, JONATHAN; BIRCHFIELD, STANLEY THOMAS
To: NVIDIA CORPORATION
Reel/Frame 055356/0638 →
Continuity (2)
Provisional Application 63107322 · Oct 29, 2020
Related Publication 20220134537A1 · May 5, 2022
Cited By (1)
US 12,194,637