IP Library Granted Patent US 11,548,151
Granted Patent B2
US 11,548,151 · App. 16/382,390 · Granted Jan 10, 2023

Robotically negotiating stairs

Inventors: Eric Whitman (Waltham, MA); Gina Christine Fay (Waltham, MA); Benjamin Swilling (Waltham, MA)
Assignee: Boston Dynamics, Inc.
B25J9/1666B62D57/024B62D57/032
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,548,151
App. No.
16/382,390
Granted
Jan 10, 2023
Kind
B2
Abstract

A method for negotiating stairs includes receiving image data about a robot maneuvering in an environment with stairs. Here, the robot includes two or more legs. Prior to the robot traversing the stairs, for each stair, the method further includes determining a corresponding step region based on the received image data. The step region identifies a safe placement area on a corresponding stair for a distal end of a corresponding swing leg of the robot. Also prior to the robot traversing the stairs, the method includes shifting a weight distribution of the robot towards a front portion of the robot. When the robot traverses the stairs, the method further includes, for each stair, moving the distal end of the corresponding swing leg of the robot to a target step location where the target step location is within the corresponding step region of the stair.

Claims (61)

1. A method comprising:

receiving, at data processing hardware, image data about a robot maneuvering in an environment with a set of stairs, the robot comprising two or more legs;

prior to the robot traversing the set of stairs:

for each stair of the set of stairs, determining, by the data processing hardware, a corresponding step region based on the received image data, the step region identifying a safe placement area on the stair for a distal end of a corresponding swing leg of the robot and the step region excluding an unsafe placement area on the stair for the distal end of the corresponding swing leg of the robot; and

shifting, by the data processing hardware, a weight distribution of the robot towards a front portion of the robot; and

when the robot traverses the set of stairs, for the each stair of the set of stairs, moving, by the data processing hardware, the distal end of the corresponding swing leg of the robot to a target step location, wherein the target step location is within the corresponding step region of the stair.

2. The method of claim 1 , further comprising, prior to the robot traversing the set of stairs, identifying, by the data processing hardware, a corresponding collision region for the each stair of the set of stairs, the collision region corresponding to a region of the stair that the legs of the robot should avoid when the robot traverses the set of stairs.

3. The method of claim 2 , further comprising, when the robot traverses the set of stairs, adjusting, by the data processing hardware, a body height of the center of mass of the robot with respect to a surface of the set of stairs and a pitch of the robot about a longitudinal axis defined along the body of the robot, wherein the adjustment of the body height and the pitch is based on the corresponding collision region identified for the each stair of the set of stairs.

4. The method of claim 2 , further comprising, when the robot traverses the set of stairs:

identifying, by the data processing hardware, corresponding leg kinematics for each leg of the robot; and

adjusting, by the data processing hardware, a body height of the center of mass of the robot with respect to a surface of the set of stairs and a pitch of the robot about a longitudinal axis defined along the body of the robot, wherein the adjustment of the body height and the pitch is based on the corresponding collision region identified for the each stair of the set of stairs and the corresponding leg kinematics for each leg of the robot.

5. The method of claim 1 , further comprising, while moving the distal end of the corresponding swing leg to the target step location:

detecting, by the data processing hardware, that the distal end of the corresponding swing leg of the robot contacts the stair at the target step location; and

based on the detection, classifying, by the data processing hardware, the corresponding swing leg of the robot as a stance leg.

6. The method of claim 1 , further comprising, while moving the distal end of the corresponding swing leg to the target step location:

detecting, by the data processing hardware, that a knee joint of a trailing leg of the robot contacts an object behind a body of the robot; and

based on the detection, moving, by the data processing hardware, the knee joint of the trailing leg forward beneath the body of the robot.

7. The method of claim 1 , further comprising, while moving the distal end of the corresponding swing leg to the target step location:

detecting, by the data processing hardware, an impact between the corresponding swing leg of the robot and a contralateral stance leg of the robot; and

based on the detected impact, shifting, by the data processing hardware, the distal end of the corresponding swing leg of the robot away from the contralateral stance leg of the robot to an adjusted step location, wherein the adjusted step location is within the corresponding step region of the stair and shifted relative to the target step location.

8. The method of claim 1 , further comprising, while moving the distal end of the corresponding swing leg to the target step location:

detecting, by the data processing hardware, a trip condition of the corresponding swing leg of the robot that causes instability of the robot; and

based on the detected trip condition, elevating, by the data processing hardware, the distal end of the corresponding swing leg.

9. The method of claim 1 , further comprising, prior to the robot traversing the set of stairs, selecting, by the data processing hardware, a movement controller for traversing the set of stairs with a fixed cadence, wherein the fixed cadence is based on the corresponding step region determined for the each stair of the set of stairs.

10. The method of claim 1 , further comprising, when moving the distal end of the corresponding swing leg of the robot to the target step location, positioning, by the data processing hardware, a distal end of a stance leg to a trailing stair of the set of stairs, wherein the trailing stair of the set of stairs is located at one of:

below the stair associated with the target step location for the corresponding swing leg when the robot is ascending the set of stairs; or

above the stair associated with the target step location for the corresponding swing leg when the robot is descending the set of stairs.

11. The method of claim 10 , wherein the movement by the distal end of the corresponding swing leg of the robot and movement by the distal end of the stance leg of the robot occur in a fixed cadence.

12. The method of claim 1 , wherein the corresponding step region determined for the each stair of the set of stairs is associated with a tread portion of the stair.

13. A robot comprising:

a body;

two or more legs coupled to the body and configured to traverse an environment with a set of stairs; and

a movement controller in communication with the two or more legs, the movement controller comprising data processing hardware and memory hardware in communication with the data processing hardware, the memory hardware storing instructions that when executed on the data processing hardware cause the data processing hardware to perform operations comprising:

receiving image data about the robot maneuvering in the environment with a set of stairs;

prior to the robot traversing the set of stairs:

for each stair of the set of stairs, determining a corresponding step region based on the received image data, the step region identifying a safe placement area on the stair for a distal end of a corresponding swing leg of the robot and the step region excluding an unsafe placement area on the stair for the distal end of the corresponding swing leg of the robot; and

shifting a weight distribution of the robot towards a front portion of the robot; and

when the robot traverses the set of stairs, for the each stair of the set of stairs, moving the distal end of the corresponding swing leg of the robot to a target step location, wherein the target step location is within the corresponding step region of the stair.

14. The robot of claim 13 , wherein the operations further comprise, prior to the robot traversing the set of stairs, identifying a corresponding collision region for the each stair of the set of stairs, the collision region corresponding to a region of the stair that the legs of the robot should avoid when the robot traverses the set of stairs.

15. The robot of claim 14 , wherein the operations further comprise, when the robot traverses the set of stairs, adjusting a body height of the center of mass of the robot with respect to a surface of the set of stairs and a pitch of the robot about a longitudinal axis defined along the body of the robot, wherein the adjustment of the body height and the pitch is based on the corresponding collision region identified for the each stair of the set of stairs.

16. The robot of claim 14 , wherein the operations further comprise, when the robot traverses the set of stairs:

identifying corresponding leg kinematics for each leg of the robot; and

adjusting a body height of the center of mass of the robot with respect to a surface of the set of stairs and a pitch of the robot about a longitudinal axis defined along the body of the robot, wherein the adjustment of the body height and the pitch is based on the corresponding collision region identified for the each stair of the set of stairs and the corresponding leg kinematics for each leg of the robot.

17. The robot of claim 13 , wherein the operations further comprise, while moving the distal end of the corresponding swing leg to the target step location:

detecting that the distal end of the corresponding swing leg of the robot contacts the stair at the target step location; and

based on the detection, classifying the corresponding swing leg of the robot as a stance leg.

18. The robot of claim 13 , wherein the operations further comprise, while moving the distal end of the corresponding swing leg to the target step location:

detecting that a knee joint of a trailing leg of the robot contacts an object behind a body of the robot; and

based on the detection, moving the knee joint of the trailing leg forward beneath the body of the robot.

19. The robot of claim 13 , wherein the operations further comprise, while moving the distal end of the corresponding swing leg to the target step location:

detecting an impact between the corresponding swing leg of the robot and a contralateral stance leg of the robot; and

based on the detected impact, shifting the distal end of the corresponding swing leg of the robot away from the contralateral stance leg of the robot to an adjusted step location, wherein the adjusted step location is within the corresponding step region of the stair and shifted relative to the target step location.

20. The robot of claim 13 , wherein the operations further comprise, while moving the distal end of the corresponding swing leg to the target step location:

detecting a trip condition of the corresponding swing leg of the robot that causes instability of the robot; and

based on the detected trip condition, elevating the distal end of the corresponding swing leg.

21. The robot of claim 13 , wherein the operations further comprise, prior to the robot traversing the set of stairs, selecting a movement controller for traversing the set of stairs with a fixed cadence, wherein the fixed cadence is based on the corresponding step region determined for the each stair of the set of stairs.

22. The robot of claim 13 , wherein the operations further comprise, when moving the distal end of the corresponding swing leg of the robot to the target step location, positioning a distal end of a stance leg on a trailing stair of the set of stairs, wherein the trailing stair of the set of stairs is located at one of:

below the stair associated with the target step location for the corresponding swing leg when the robot is ascending the set of stairs; or

above the stair associated with the target step location for the corresponding swing leg when the robot is descending the set of stairs.

23. The robot of claim 22 , wherein the movement by the distal end of the corresponding swing leg of the robot and movement by the distal end of the stance leg of the robot occur in a fixed cadence.

24. The robot of claim 13 , wherein the corresponding step region determined for the each stair of the set of stairs is associated with a tread portion of the stair.

Assignments (4)
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 →
CORRECTIVE ASSIGNMENT TO CORRECT THE RECEIVING PARTY STATE/COUNTRY PREVIOUSLY RECORDED AT REEL: 50219 FRAME: 581. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Oct 17, 2019
From: WHITMAN, ERIC; FAY, GINA CHRISTINE; SWILLING, BENJAMIN
To: BOSTON DYNAMICS, INC.
Reel/Frame 050754/0441 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 30, 2019
From: WHITMAN, ERIC; FAY, GINA CHRISTINE; SWILLING, BENJAMIN
To: BOSTON DYNAMICS, INC.
Reel/Frame 050219/0581 →
Continuity (1)
Related Publication 20200324412A1 · Oct 15, 2020
Cited By (7)
US 12,235,652 US 12,372,982 US 12,391,323 US 12,468,300 US 12,637,158 US 12,673,417 US 12,705,880