IP Library Granted Patent US 11,931,898
Granted Patent B2
US 11,931,898 · App. 17/318,435 · Granted Mar 19, 2024

Arm and body coordination

Inventors: Stephen George Berard (Burlington, MA); Andrew James Barry (Cambridge, MA); Benjamin John Swilling (Winchester, MA); Alfred Anthony Rizzi (Waltham, MA)
Assignee: Boston Dynamics, Inc.
B25J9/1661B25J9/1664G05D1/021B25J5/00B25J5/007G05B2219/40298
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,931,898
App. No.
17/318,435
Granted
Mar 19, 2024
Kind
B2
Abstract

A computer-implemented method, when executed by data processing hardware of a robot having an articulated arm and a base, causes data processing hardware to perform operations. The operations include determining a first location of a workspace of the articulated arm associated with a current base configuration of the base of the robot. The operations also include receiving a task request defining a task for the robot to perform outside of the workspace of the articulated arm at the first location. The operations also include generating base parameters associated with the task request. The operations further include instructing, using the generated base parameters, the base of the robot to move from the current base configuration to an anticipatory base configuration.

Claims (54)

1. A computer-implemented method that, when executed by data processing hardware of a robot having an articulated arm and a base, causes the data processing hardware to perform operations comprising:

determining, by an arm controller of the data processing hardware, a first location of a workspace of the articulated arm associated with a current base configuration of the base of the robot;

receiving, at the arm controller, a task request defining a task for the robot to perform outside of the workspace of the articulated arm at the first location;

generating, by the arm controller, i) instructions for controlling the articulated arm to perform the task request and ii) base parameters associated with the task request, the base parameters including at least one balance parameter identifying anticipated forces associated with the articulated arm performing the task;

providing the base parameters to a base controller of the data processing hardware;

instructing, by the base controller, the base of the robot to move from the current base configuration to an anticipatory base configuration based on the base parameters; and

instructing, by the base controller, the base of the robot to counter-balance the articulated arm performing the task based on the at least one balance parameter.

2. The method of claim 1 , wherein instructing the base of the robot to move from the current base configuration to the anticipatory base configuration comprises instructing the base of the robot to move the workspace of the articulated arm from the first location to a second location.

3. The method of claim 2 , wherein instructing the base of the robot to move the workspace of the articulated arm from the first location to the second location comprises instructing the base of the robot to change one of a location or a pose of the base.

4. The method of claim 1 , wherein the operations further comprise generating arm instructions for changing a configuration of the articulated arm within the workspace of the articulated arm.

5. The method of claim 1 , wherein the operations further comprise:

receiving arm sensor data of the articulated arm associated with changing a configuration of the articulated arm; and

instructing, based on the arm sensor data, the base of the robot to move from the anticipatory base configuration to a responsive base configuration.

6. The method of claim 1 , wherein the base parameters further include position coordinates for the base of the robot.

7. The method of claim 1 , wherein the task request comprises a request to move an object outside of the workspace of the articulated arm at the first location.

8. The method of claim 1 , wherein the task request comprises instructing the base of the robot to follow a continuous path outside of the workspace of the articulated arm at the first location.

9. The method of claim 1 , wherein:

the robot comprises a quadrupedal robot comprising four legs coupled to the base, and

instructing the base of the robot to counter-balance the articulated arm performing the task comprises instructing the legs of the robot to change a pose of the base of the robot.

10. A robot comprising:

a base;

an articulated arm coupled to the base;

data processing hardware comprising an arm controller and a base controller; and

memory hardware storing instructions that when executed by the data processing hardware cause the data processing hardware to perform operations comprising:

determining, by the arm controller, a first location of a workspace of the articulated arm associated with a current base configuration of the base of the robot;

receiving, at the arm controller, a task request defining a task for the robot to perform outside of the workspace of the articulated arm at the first location;

generating, by the arm controller, i) instructions for controlling the articulated arm to perform the task request and ii) base parameters associated with the task request, the base parameters including at least one balance parameter identifying anticipated forces associated with the articulated arm performing the task;

providing the base parameters to the base controller;

instructing, by the base controller, the base of the robot to move from the current base configuration to an anticipatory base configuration based on the base parameters; and

instructing, by the base controller, the base of the robot to counter-balance the articulated arm performing the task based on the at least one balance parameter.

11. The robot of claim 10 , wherein instructing the base of the robot to move from the current base configuration to the anticipatory base configuration comprises instructing the base of the robot to move the workspace of the articulated arm from the first location to a second location.

12. The robot of claim 11 , wherein instructing the base of the robot to move the workspace of the articulated arm from the first location to the second location comprises instructing the base of the robot to change one of a location or a pose of the base.

13. The robot of claim 10 , wherein the operations further comprise generating arm instructions for changing a configuration of the articulated arm within the workspace of the articulated arm.

14. The robot of claim 10 , wherein the operations further comprise:

receiving arm sensor data of the articulated arm associated with changing a configuration of the articulated arm; and

instructing, based on the arm sensor data, the base of the robot to move from the anticipatory base configuration to a responsive base configuration.

15. The robot of claim 10 , wherein the base parameters further include position coordinates for the base of the robot.

16. The robot of claim 10 , wherein the task request comprises a request to move an object outside of the workspace of the articulated arm at the first location.

17. The robot of claim 10 , wherein the task request comprises instructing the base of the robot to follow a continuous path outside of the workspace of the articulated arm at the first location.

18. The robot of claim 10 , further comprising:

four legs coupled to the base,

wherein instructing the base of the robot to counter-balance the articulated arm performing the task comprises instructing the legs of the robot to change a pose of the base of the robot.

19. A computer program product encoded on a non-transitory computer readable storage medium of a robot comprising a base and an articulated arm coupled to the base, the storage medium comprising instructions that when executed by a data processing apparatus cause the data processing apparatus to perform operations comprising:

determining, by an arm controller of the data processing apparatus, a first location of a workspace of the articulated arm associated with a current base configuration of the base of the robot;

receiving, at the arm controller, a task request defining a task for the robot to perform outside of the workspace of the articulated arm at the first location;

generating, by the arm controller, i) instructions for controlling the articulated arm to perform the task request and ii) base parameters associated with the task request, the base parameters including at least one balance parameter identifying anticipated forces associated with the articulated arm performing the task;

providing the base parameters to a base controller of the data processing apparatus;

instructing, by the base controller, the base of the robot to move from the current base configuration to an anticipatory base configuration based on the base parameters; and

instructing, by the base controller, the base of the robot to counter-balance the articulated arm performing the task based on the at least one balance parameter.

20. The computer program product of claim 19 , wherein instructing the base of the robot to move from the current base configuration to the anticipatory base configuration comprises instructing the base of the robot to move the workspace of the articulated arm from the first location to a second location.

21. The computer program product of claim 19 , wherein the operations further comprise generating arm instructions for changing a configuration of the articulated arm within the workspace of the articulated arm.

22. The computer program product of claim 19 , wherein the operations further comprise:

receiving arm sensor data of the articulated arm associated with changing a configuration of the articulated arm; and

instructing, based on the arm sensor data, the base of the robot to move from the anticipatory base configuration to a responsive base configuration.

Assignments (3)
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATIONS NUMBERS 63127573 AND 11/302759 AND THE CITY OF THE ASSIGNEE PREVIOUSLY RECORDED AT REEL: 057111 FRAME: 0202. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Oct 27, 2021
From: BOSTON DYNAMICS, INC.
To: BOSTON DYNAMICS, INC.
Reel/Frame 057964/0415 →
CHANGE OF NAME Recorded Oct 5, 2021
From: BOSTON DYNAMICS, INC.
To: BOSTON DYNAMICS, INC.
Reel/Frame 057711/0202 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 12, 2021
From: BERARD, STEPHEN GEORGE; BARRY, ANDREW JAMES; SWILLING, BENJAMIN JOHN; RIZZI, ALFRED ANTHONY
To: BOSTON DYNAMICS, INC.
Reel/Frame 056217/0428 →
Continuity (2)
Provisional Application 63129398 · Dec 22, 2020
Related Publication 20220193900A1 · Jun 23, 2022
Cited By (4)
US 12,321,672 US 12,440,970 US 12,515,323 US 12,554,902