Ground plane compensation for legged robots

US9561592B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-9561592-B1
Application numberUS-201514713569-A
CountryUS
Kind codeB1
Filing dateMay 15, 2015
Priority dateMay 15, 2015
Publication dateFeb 7, 2017
Grant dateFeb 7, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

An example implementation includes (i) receiving sensor data that indicates topographical features of an environment in which a robotic device is operating, (ii) determining, for a particular topographical feature of the environment in a direction of travel of the robotic device, a height of the particular topographical feature and a distance between the robotic device and the particular topographical feature, (iii) estimating a ground plane extending from the robotic device in the direction of travel toward the particular topographical feature, the ground plane fitting to the determined distance and height, (iv) determining a grade of the estimated ground plane, and (v) directing the robotic device to adjust pitch in proportion to the determined grade.

First claim

Opening claim text (preview).

We claim: 1. A control system comprising: one or more processors; a non-transitory computer readable medium; and program instructions stored on the non-transitory computer readable medium and executable by the one or more processors to: receive sensor data that indicates topographical features of an environment in which a robot is operating, wherein the robot has a torso; determine, for a particular topographical feature of the environment in a direction of travel of the robot, a height of the particular topographical feature and a distance between the robot and the particular topographical feature; estimate a ground plane extending from the robot in the direction of travel toward the particular topographical feature, the ground plane fitting to the determined distance and height; determine a grade of the estimated ground plane; and control actuators of the robot so as to cause the robot to pitch the torso based on the grade of the estimated ground plane. 2. The control system of claim 1 , wherein directing the robot to pitch the torso based on the grade of the estimated ground plane comprises pitching the torso by a degree that is a portion of the determined grade. 3. The control system of claim 1 , wherein the robot has a leg, and wherein the program instructions are further executable to: for a step of the leg, determine a swing trajectory that traces a spline function having knot points on a quadrilateral in which the leg is lifted upward in a direction that is opposite of gravity, stepped forward in a direction that is parallel to the determined grade of the estimated ground plane, and lowered downward in the direction of gravity; and cause the robot to move the leg based on the determined swing trajectory. 4. The control system of claim 1 , wherein directing the robot to pitch based on the grade of the estimated ground plane comprises directing the robot to adjust a pitch of the torso approximately one stride in advance of the particular topographical feature. 5. The control system of claim 1 , wherein directing the robot to pitch the torso based on the grade of the estimated ground plane comprises directing the robot to adjust a pitch of the torso between one and two strides in advance of the particular topographical feature. 6. The control system of claim 1 , wherein the robot has legs, and wherein the program instructions are further executable to: detect, within the sensor data that indicates topographical features of the environment of the robot, a topographical feature in the direction of travel that forms ground roll; determine a magnitude of the ground roll formed by the topographical feature in the direction of travel; responsively cause the robot to reduce its height in proportion to the determined magnitude of the ground roll by bending one or more respective joints of the legs; and while the robot is traversing the detected topographical feature, cause the robot to conduct a gait with the legs while maintaining the reduced height. 7. The control system of claim 1 , wherein the program instructions are further executable to: cause the robot to reduce its height in proportion to the determined grade by bending one or more respective joints of the legs. 8. The control system of claim 1 , wherein the program instructions are further executable to: determine that a difference between the determined grade and a grade of a currently traversed ground plane exceeds a threshold difference in grade; and cause the robot to reduce speed in advance of the topographical feature. 9. A robot, comprising: a torso; at least one perception sensor; and a control system configured to: receive sensor data that indicates topographical features of an environment in which the robot is operating; determine, for a particular topographical feature of the environment in a direction of travel of the robot, a height of the particular topographical feature and a distance between the robot and the particular topographical feature; estimate a ground plane extending from the robot in the direction of travel toward the particular topographical feature, the ground plane fitting to the determined distance and height; determine a grade of the estimated ground plane; and cause the robot to pitch the torso based on the grade of the estimated ground plane. 10. The robot of claim 9 , wherein directing the robot to pitch the torso based on the grade of the estimated ground plane comprises pitching the torso by a degree that is a portion of the determined grade. 11. The robot of claim 9 , wherein the robot comprises a first leg, wherein the control system is further configured to: for a step of the first leg, determine a swing trajectory that traces a spline function having knot points on a quadrilateral in which the first leg is lifted upward in a direction that is opposite of gravity, stepped forward in a direction that is parallel to the determined grade of the estimated ground plane, and lowered downward in the direction of gravity; and cause the robot to move the first leg based on the determined swing trajectory. 12. The robot of claim 9 , wherein directing the robot to pitch the torso based on the grade of the estimated ground plane comprises directing the robot to adjust a pitch of the torso approximately one stride in advance of the particular topographical feature. 13. The robot of claim 9 , wherein directing the robot to pitch the torso based on the grade of the estimated ground plane comprises directing the robot to adjust a pitch the torso between one and two strides in advance of the particular topographical feature. 14. The robot of claim 9 , wherein the robot comprises legs, and wherein the control system is further configured to: detect, within the sensor data that indicates topographical features of the environment of the robot, a topographical feature in the direction of travel that forms ground roll; determine a magnitude of the ground roll formed by the topographical feature in the direction of travel; responsively cause the robot to reduce its height in proportion to the determined magnitude of the ground roll by bending one or more respective joints of the legs; and while the robot is traversing the detected topographical feature, cause the robot to conduct a gait with the legs while maintaining the reduced height. 15. The robot of claim 9 , wherein the control system is further configured to: cause the robot to reduce its height in proportion to the determined grade by bending one or more respective joints of the legs. 16. The robot of claim 9 , wherein the control system is further configured to: determine that a difference between the determined grade and a grade of a currently traversed ground plane exceeds a threshold difference in grade; and cause the robot to reduce speed in advance of the topographical feature. 17. A method comprising: receiving, by a control system of a robot, sensor data that indicates topographical features of an environment in which a robot is operating, wherein the robot has a torso; determining, for a particular topographical feature of the environment in a direction of travel of the robot, a height of the particular topographical feature and a distance between the robot and the particular topographical feature; estimating a ground plane extending from the robot in the direction of travel toward the particular topographical feature, the ground plane fitting to the determined distance and height; determining a grade of the estimated ground plane; and controlling actuators of the robot so as to c

Assignees

Inventors

Classifications

  • B25J9/1694Primary

    characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion · CPC title

  • characterised by motion, path, trajectory planning · CPC title

  • Mobile robot · CPC title

  • B25J5/00Primary

    Manipulators mounted on wheels or on carriages (B25J1/00 takes precedence; programme-controlled manipulators B25J9/00 {; vehicle aspects B60, B62, e.g. remote-controlled steering for motor vehicles B62D1/24; control of position of vehicles G05D1/00}) · CPC title

  • Measuring inclination, e.g. by clinometers, by levels · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9561592B1 cover?
An example implementation includes (i) receiving sensor data that indicates topographical features of an environment in which a robotic device is operating, (ii) determining, for a particular topographical feature of the environment in a direction of travel of the robotic device, a height of the particular topographical feature and a distance between the robotic device and the particular topogr…
Who is the assignee on this patent?
Google Inc
What technology area does this patent fall under?
Primary CPC classification B25J9/1694. Mapped technology areas include Operations & Transport.
When was this patent published?
Publication date Tue Feb 07 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).