IP Library Granted Patent US 12,077,229
Granted Patent B2
US 12,077,229 · App. 16/877,749 · Granted Sep 3, 2024

Stair tracking for modeled and perceived terrain

Inventor: Eric Cary Whitman (Watertown, MA)
Assignee: Boston Dynamics, Inc.
B62D57/024B62D57/032G05D1/0214G05D1/0238G05D1/0251G05D1/0274
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,077,229
App. No.
16/877,749
Granted
Sep 3, 2024
Kind
B2
Abstract

A method for a stair tracking for modeled and perceived terrain includes receiving, at data processing hardware, sensor data about an environment of a robot. The method also includes generating, by the data processing hardware, a set of maps based on voxels corresponding to the received sensor data. The set of maps includes a ground height map and a map of movement limitations for the robot. The map of movement limitations identifies illegal regions within the environment that the robot should avoid entering. The method further includes generating a stair model for a set of stairs within the environment based on the sensor data, merging the stair model and the map of movement limitations to generate an enhanced stair map, and controlling the robot based on the enhanced stair map or the ground height map to traverse the environment.

Claims (89)

1. A method comprising:

receiving, at data processing hardware, sensor data of an environment of a robot;

generating, by the data processing hardware, a map of movement limitations for the robot based on the sensor data, the map of movement limitations identifying at least one of an obstacle or a no-step region within the environment;

generating, by the data processing hardware, a stair model of at least one stair within the environment based on the sensor data;

merging, by the data processing hardware, the stair model and the map of movement limitations to generate an enhanced stair map; and

controlling, by the data processing hardware, the robot to traverse a first portion of the environment based on the map of movement limitations and a second portion of the environment based on the enhanced stair map.

2. The method of claim 1 , wherein controlling the robot comprises:

determining a movement step of the robot is associated with the at least one stair; and

based on determining the movement step of the robot is associated with the at least one stair, controlling the robot to traverse the at least one stair using the enhanced stair map.

3. The method of claim 1 , wherein the map of movement limitations comprises:

a body map identifying the obstacle within the environment; and

a step map identifying the no-step region within the environment.

4. The method of claim 1 , wherein the enhanced stair map comprises a signed distance field identifying a step region within the environment.

5. The method of claim 1 , wherein the map of movement limitations identifies the obstacle, the method further comprising:

determining that the obstacle satisfies a height criteria,

wherein merging the stair model and the map of movement limitations comprises incorporating the obstacle in the enhanced stair map based on determining that the obstacle satisfies the height criteria.

6. The method of claim 1 , wherein the map of movement limitations identifies the no-step region, wherein merging the stair model and the map of movement limitations comprises:

determining, at a location within a ground height map, that a first height associated with the ground height map exceeds a second height associated with the stair model, wherein a location of the at least one stair corresponds to the location within the ground height map;

segmenting the at least one stair into stripes; and

classifying a stripe of the stripes as the no-step region in the enhanced stair map.

7. The method of claim 6 , further comprising associating the at least one stair with information indicating the second height is overridden by the first height.

8. The method of claim 1 , wherein the map of movement limitations identifies the no-step region, wherein merging the stair model and the map of movement limitations comprises generating, by the data processing hardware, the no-step region about an edge of the at least one stair in the enhanced stair map.

9. The method of claim 1 , wherein the sensor data comprises one or more points of a point cloud, the sensor data obtained from at least one sensor mounted on the robot.

10. The method of claim 9 , wherein the at least one sensor comprises a stereo camera.

11. The method of claim 1 , wherein controlling the robot comprises at least one of:

selecting a movement controller based on the stair model; or

constraining a speed of travel for the robot based on the stair model.

12. The method of claim 1 , wherein the map of movement limitations identifies the obstacle, wherein controlling the robot comprises:

identifying a wall bordering the at least one stair as the obstacle; and

defining the obstacle to have an orientation parallel to a direction of the at least one stair.

13. The method of claim 1 , wherein controlling the robot comprises constraining touchdown for a foot of a swing leg of the robot to a distance associated with the at least one stair.

14. The method of claim 1 , wherein controlling the robot comprises:

determining a touchdown position;

determining a current position, a current velocity, and an estimated time until touchdown for a swing leg of the robot;

determining the swing leg will not clear an edge of the at least one stair based on the current position, the current velocity, and the estimated time until touchdown for the swing leg; and

preventing the robot from modifying the touchdown position based on determining the swing leg will not clear the edge of the at least one stair.

15. The method of claim 1 , wherein controlling the robot comprises:

identifying a distance between a swing leg of the robot and an edge of the at least one stair;

determining the identified distance does not satisfy a distance threshold; and

preventing the swing leg from further reducing the distance between the swing leg and the edge of the at least one stair based on determining the identified distance does not satisfy the distance threshold.

16. The method of claim 1 , wherein the sensor data is obtained from a sensor of the robot.

17. The method of claim 1 , wherein the map of movement limitations identifies the obstacle, wherein the obstacle comprises a wall of the at least one stair.

18. The method of claim 1 , wherein the map of movement limitations identifies the obstacle, wherein the obstacle comprises an obstacle on the at least one stair.

19. The method of claim 1 , wherein the map of movement limitations identifies the obstacle, wherein the obstacle comprises an object.

20. The method of claim 1 , wherein the map of movement limitations identifies the no-step region, wherein the no-step region comprises an area of the environment.

21. The method of claim 1 , wherein the map of movement limitations identifies the no-step region, wherein the no-step region comprises an edge of the at least one stair.

22. A robot comprising:

a body;

two or more legs coupled to the body and configured to traverse an environment; and

a control system 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 sensor data of an environment of the robot;

generating a map of movement limitations for the robot based on the sensor data, the map of movement limitations identifying at least one of an obstacle or a no-step region within the environment;

generating a stair model of at least one stair within the environment based on the sensor data;

merging the stair model and the map of movement limitations to generate an enhanced stair map; and

controlling the robot to traverse a first portion of the environment based on the map of movement limitations and a second portion of the environment based on the enhanced stair map.

23. The robot of claim 22 , wherein controlling the robot comprises:

determining a movement step of the robot is associated with the at least one stair; and

based on determining the movement step of the robot is associated with the at least one stair, controlling the robot to traverse the at least one stair using the enhanced stair map.

24. The robot of claim 22 , wherein the map of movement limitations comprises:

a body map identifying the obstacle within the environment; and

a step map identifying the no-step region within the environment.

25. The robot of claim 22 , wherein the enhanced stair map comprises a signed distance field identifying a step region within the environment.

26. The robot of claim 22 , wherein the map of movement limitations identifies the obstacle, wherein the operations further comprise:

determining that the obstacle satisfies a height criteria,

wherein merging the stair model and the map of movement limitations comprises incorporating the obstacle in the enhanced stair map based on determining that the obstacle satisfies the height criteria.

27. The robot of claim 22 , wherein the map of movement limitations identifies the no-step region, wherein merging the stair model and the map of movement limitations comprises:

determining, at a location within a ground height map, that a first height associated with the ground height map exceeds a second height associated with the stair model, wherein a location of the at least one stair corresponds to the location within the ground height map;

segmenting the at least one stair into stripes; and

classifying a stripe of the stripes as the no-step region in the enhanced stair map.

28. The robot of claim 27 , wherein the operations further comprise associating the at least one stair with information indicating the second height is overridden by the first height.

29. The robot of claim 22 , wherein the map of movement limitations identifies the no-step region, wherein merging the stair model and the map of movement limitations comprises generating the no-step region about an edge of the at least one stair in the enhanced stair map.

30. The robot of claim 22 , wherein the sensor data comprises one or more points of a point cloud, the sensor data obtained from at least one sensor mounted on the robot.

31. The robot of claim 30 , wherein the at least one sensor comprises a stereo camera.

32. The robot of claim 22 , wherein controlling the robot comprises at least one of:

selecting a movement controller based on the stair model; or

constraining a speed of travel for the robot based on the stair model.

33. The robot of claim 22 , wherein the map of movement limitations identifies the obstacle, wherein controlling the robot comprises:

identifying a wall bordering the at least one stair as the obstacle; and

defining the obstacle to have an orientation parallel to a direction of the at least one stair.

34. The robot of claim 22 , wherein controlling the robot comprises constraining touchdown for a foot of a swing leg of the robot to a distance associated with the at least one stair.

35. The robot of claim 22 , wherein controlling the robot comprises:

determining a touchdown position;

determining a current position, a current velocity, and an estimated time until touchdown for a swing leg of the robot;

determining the swing leg will not clear an edge of the at least one stair based on the current position, the current velocity, and the estimated time until touchdown for the swing leg; and

preventing the robot from modifying the touchdown position based on determining the swing leg will not clear the edge of the at least one stair.

36. The robot of claim 22 , wherein controlling the robot comprises:

identifying a distance between a swing leg of the robot and an edge of the at least one stair;

determining the identified distance does not satisfy a distance threshold; and

preventing the swing leg from further reducing the distance between the swing leg and the edge of the at least one stair based on determining the identified distance does not satisfy the distance threshold.

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 Jun 15, 2020
From: WHITMAN, ERIC CARY
To: BOSTON DYNAMICS, INC.
Reel/Frame 052936/0556 →
Continuity (2)
Provisional Application 63013707 · Apr 22, 2020
Related Publication 20210331754A1 · Oct 28, 2021
Cited By (18)
US 1,056,983 US 1,064,015 US 12,365,094 US 12,403,611 US 12,420,434 US 12,539,618 US 12,578,733 US 12,605,824 US 12,611,766 US 12,611,767 US 12,637,158 US 12,638,859 US 12,649,246 US 12,697,720 US 12,697,741 US 12,705,880 US 12,707,556 US 12,709,029