IP Library Granted Patent US 11,472,025
Granted Patent B2
US 11,472,025 · App. 16/880,813 · Granted Oct 18, 2022

Robotic demonstration learning device

Inventors: Bala Venkata Sai Ravi Krishna Kolluri (Fremont, CA); Stefan Schaal (Mountain View, CA); Ralf Oliver Michael Schönherr (San Francisco, CA); Ning Ye (Palo Alto, CA)
Assignee: Intrinsic Innovation LLC
B25J9/163B25J13/06
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 11,472,025
App. No.
16/880,813
Granted
Oct 18, 2022
Kind
B2
Abstract

Methods, systems, and apparatus, including computer programs encoded on computer storage media, for using a demonstration device for robotic demonstration learning. One of the methods includes generating, by a demonstration device for a robot, a representation of a sequence of states input by a user of the demonstration device. The representation is provided by the demonstration device to a robot execution system. The representation of the sequence of actions is translated into a plurality of robot commands corresponding to the representation of the sequence of states input by the user on the demonstration device. The plurality of robot commands corresponding to the sequence of actions input by the user on the demonstration device are executed. Demonstration data is generated from one or more sensor streams of the robot while executing the plurality of robot commands corresponding to the sequence of actions input by the user on the demonstration device.

Claims (38)

1. A method comprising:

generating, by a demonstration device for demonstrating actions to be undertaken by a robot, a representation of a sequence of states input by a user of the demonstration device;

providing, by the demonstration device to a robot execution system, the representation of the sequence of states input by the user;

translating the representation of the sequence of actions into a plurality of robot commands corresponding to the representation of the sequence of states input by the user on the demonstration device;

executing, by the robot, the plurality of robot commands corresponding to the sequence of actions input by the user on the demonstration device; and

generating demonstration data from one or more sensor streams of the robot while executing the plurality of robot commands corresponding to the sequence of actions input by the user on the demonstration device.

2. The method of claim 1 , wherein the representation includes a position and an orientation of the demonstration device for each of a plurality of points in time.

3. The method of claim 2 , wherein the representation includes a velocity, an acceleration, or both, of the demonstration device for each of a plurality of points in time.

4. The method of claim 1 , wherein the representation includes a tool state at each of a plurality of points in time.

5. The method of claim 4 , wherein the tool state at each of the plurality of points in time represents a position of a gripping mechanism of the demonstration device at each of the plurality of points in time.

6. The method of claim 1 , wherein executing, by the robot, the plurality of robot commands corresponding to the sequence of actions input by the user on the demonstration device comprises executing the plurality of robot commands online as soon as they are received.

7. The method of claim 1 , wherein executing, by the robot, the plurality of robot commands corresponding to the sequence of actions input by the user on the demonstration device comprises executing the plurality of robot commands after a delay.

8. The method of claim 1 , wherein generating demonstration data from one or more sensor streams of the robot while executing the plurality of robot commands corresponding to the sequence of actions input by the user on the demonstration device comprises generating system demonstration data for generating a base control policy of a demonstration subtask.

9. The method of claim 1 , wherein generating demonstration data from one or more sensor streams of the robot while executing the plurality of robot commands corresponding to the sequence of actions input by the user on the demonstration device comprise generating local demonstration data for tuning a base control policy of a demonstration subtask of a skill template.

10. A demonstration device comprising:

a physical input mechanism;

one or more sensors;

a body housing one or more processors and one or more computer-readable storage media; and

a physical tool, wherein a user engaging the input mechanism causes a tool state of the tool to change,

wherein the one or more computer-readable storage media is encoded with program code that when executed by the one or more processors, causes the one or more processors to perform operations comprising:

generating a representation of a sequence of states input by a user of the demonstration device according to respective outputs of the one or more sensors; and

providing the representation of the sequence of states input by the user to a robot execution system.

11. The demonstration device of claim 10 , wherein the physical tool is a gripping mechanism having multiple fingers.

12. The demonstration device of claim 11 , wherein the physical input mechanism is a trigger, and wherein the user engaging the trigger causes the fingers of the gripping mechanism to move.

13. The demonstration device of claim 10 , wherein the representation of the sequence of states represents a position, an orientation, or a velocity of the demonstration device.

14. The demonstration device of claim 13 , wherein the representation of the sequence of states includes a representation of the tool state.

15. The demonstration device of claim 14 , wherein the representation of the tool state represents a position of two fingers of a gripping mechanism of the demonstration device.

16. A system comprising:

one or more computers and one or more storage devices storing instructions that are operable, when executed by the one or more computers, to cause the one or more computers to perform operations comprising:

generating, by a demonstration device for demonstrating actions to be undertaken by a robot, a representation of a sequence of states input by a user of the demonstration device;

providing, by the demonstration device to a robot execution system, the representation of the sequence of states input by the user;

translating the representation of the sequence of actions into a plurality of robot commands corresponding to the representation of the sequence of states input by the user on the demonstration device;

executing, by the robot, the plurality of robot commands corresponding to the sequence of actions input by the user on the demonstration device; and

generating demonstration data from one or more sensor streams of the robot while executing the plurality of robot commands corresponding to the sequence of actions input by the user on the demonstration device.

17. The system of claim 16 , wherein the representation includes a position and an orientation of the demonstration device for each of a plurality of points in time.

18. The system of claim 17 , wherein the representation includes a velocity, an acceleration, or both, of the demonstration device for each of a plurality of points in time.

19. The system of claim 16 , wherein the representation includes a tool state at each of a plurality of points in time.

20. The system of claim 19 , wherein the tool state at each of the plurality of points in time represents a position of a gripping mechanism of the demonstration device at each of the plurality of points in time.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 5, 2021
From: X DEVELOPMENT LLC
To: INTRINSIC INNOVATION LLC
Reel/Frame 057650/0405 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2020
From: KOLLURI, BALA VENKATA SAI RAVI KRISHNA; SCHAAL, STEFAN; SCHÖNHERR, RALF OLIVER MICHAEL; YE, NING
To: X DEVELOPMENT LLC
Reel/Frame 052949/0661 →