IP Library Granted Patent US 12,214,497
Granted Patent B2
US 12,214,497 · App. 17/810,130 · Granted Feb 4, 2025

Footstep contact detection

Inventors: Eric Whitman (Waltham, MA); Alex Khripin (Waltham, MA)
Assignee: Boston Dynamics, Inc.
B25J9/1633B25J9/162B25J9/1664B25J13/085B62D57/02B62D57/024B62D57/028B62D57/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 12,214,497
App. No.
17/810,130
Filed
Jun 30, 2022
Granted
Feb 4, 2025
Kind
B2
Art Unit
3657
USPC
700/245
Abstract

A method of footstep contact detection includes receiving joint dynamics data for a swing phase of a swing leg of the robot, receiving odometry data indicative of a pose of the robot, determining whether an impact on the swing leg is indicative of a touchdown of the swing leg based on the joint dynamics data and an amount of completion of the swing phase, and determining when the impact on the swing leg is not indicative of the touchdown of the swing leg, a cause of the impact based on the joint dynamics data and the odometry data.

Claims (59)

1. A method of footstep contact detection, the method comprising:

receiving, at data processing hardware of a robot, joint dynamics data associated with a leg of the robot;

receiving, at data processing hardware of the robot, odometry data indicative of a pose of the robot;

determining, by the data processing hardware, based on the joint dynamics data and an amount of completion of a swing phase of the leg, a classification of an impact on the leg from a set of classifications, wherein the set of classifications comprises a touchdown classification and a non-touchdown classification;

determining, by the data processing hardware, using the joint dynamics data and the odometry data and based on the classification of the impact corresponding to the non-touchdown classification, that occurrence of the impact is based on a particular condition, wherein-based on the joint dynamics data and the odometry data are indicative of the particular condition; and

instructing, by the data processing hardware, movement by the robot based on determining that the occurrence of the impact is based on the particular condition.

2. The method of claim 1 , wherein determining that the occurrence of the impact is based on the particular condition comprises:

determining, further based on determining that a value associated with a joint of the leg exceeds a threshold, that the occurrence of the impact is based on the particular condition.

3. The method of claim 1 , wherein a joint of the leg comprises an abduction-adduction component and a flexion-extension component, wherein determining that the occurrence of the impact is based on the particular condition comprises:

determining, further based on comparing a first value associated with the abduction-adduction component to a second value associated with the flexion-extension component, that the occurrence of the impact is based on the particular condition.

4. The method of claim 1 , wherein determining that the occurrence of the impact is based on the particular condition comprises:

determining, further based on comparing a first torque measurement to one or more predicted torques, that the occurrence of the impact is based on the particular condition.

5. The method of claim 1 , wherein determining that the occurrence of the impact is based on the particular condition comprises:

determining, further based on determining that the leg crossed a second leg of the robot, that the occurrence of the impact is based on the particular condition.

6. The method of claim 5 , further comprising:

instructing movement by the robot to uncross the leg and the second leg.

7. The method of claim 1 , wherein the swing phase comprises a lift-off from a ground surface, a flexion at a knee joint of the leg, an extension of the knee joint, and a touchdown of the leg to the ground surface.

8. The method of claim 1 , wherein determining that the occurrence of the impact is based on the particular condition comprises:

determining, further based on detecting a liftoff scuffing of the leg, that the occurrence of the impact is based on the particular condition,

the method further comprising:

instructing movement by the leg to complete the swing phase.

9. The method of claim 1 , wherein the joint dynamics data indicates one or more of an angle associated with a joint of the leg, a speed associated with the joint, or a torque associated with the joint.

10. The method of claim 1 , wherein determining that the occurrence of the impact is based on the particular condition comprises:

determining, further based on determining a distance between the leg and a second leg of the robot, that the occurrence of the impact is based on the particular condition.

11. The method of claim 1 , wherein determining that the occurrence of the impact is based on the particular condition comprises:

determining, further based on detecting a torque, that the occurrence of the impact is based on the particular condition.

12. A robot comprising:

two or more legs; and

a control system in communication with the two or more legs, the control system comprising data processing hardware configured to:

receive joint dynamics data associated with a leg of the two or more legs;

receive odometry data indicative of a pose of the robot;

determine, based on the joint dynamics data and an amount of completion of a swing phase of the leg, a classification of an impact on the leg from a set of classifications, wherein the set of classifications comprises a touchdown classification and a non-touchdown classification;

determine, using the joint dynamics data and the odometry data and based on the classification of the impact corresponding to the non-touchdown classification, that occurrence of the impact is based on a particular condition, wherein the joint dynamics data and the odometry data are indicative of the particular condition; and

instruct movement by the robot based on determining that the occurrence of the impact is based on the particular condition.

13. The robot of claim 12 , wherein to determine that the occurrence of the impact is based on the particular condition, the data processing hardware is further configured to:

determine, further based on determining that a value associated with a joint of the leg exceeds a threshold, that the occurrence of the impact is based on the particular condition.

14. The robot of claim 12 , wherein a joint of the leg comprises an abduction-adduction component and a flexion-extension component, wherein to determine that the occurrence of the impact is based on the particular condition, the data processing hardware is further configured to:

determine, further based on comparing a first value associated with the abduction-adduction component to a second value associated with the flexion-extension component, that the occurrence of the impact is based on the particular condition.

15. The robot of claim 12 , to determine that the occurrence of the impact is based on the particular condition, the data processing hardware is further configured to:

determine, further based on comparing a first torque measurement to one or more predicted torques, that the occurrence of the impact is based on the particular condition.

16. The robot of claim 12 , wherein to determine that the occurrence of the impact is based on the particular condition, the data processing hardware is further configured to:

determine, further based on determining that the leg crossed a second leg of the two or more legs, that the occurrence of the impact is based on the particular condition,

wherein the data processing hardware is further configured to:

instruct movement by the robot to uncross the leg and the second leg.

17. The robot of claim 12 , wherein the swing phase comprises a lift-off from a ground surface, a flexion at a knee joint of the leg, an extension of the knee joint, and a touchdown of the leg to the ground surface.

18. The robot of claim 12 , wherein to determine that the occurrence of the impact is based on the particular condition, the data processing hardware is further configured to:

determine, further based on detecting a liftoff scuffing of the leg, that the occurrence of the impact is based on the particular condition,

wherein the data processing hardware is further configured to;

instruct movement by the leg to complete the swing phase.

19. The robot of claim 12 , wherein to determine that the occurrence of the impact is based on the particular condition, the data processing hardware is further configured to:

determine, further based on determining a distance between the leg and a second leg of the two or more legs, that the occurrence of the impact is based on the particular condition.

20. The robot of claim 12 , wherein to determine that the occurrence of the impact is based on the particular condition, the data processing hardware is further configured to:

determine, further based on detecting a torque, that the occurrence of the impact is based on the particular condition.

21. A method of footstep contact detection, the method comprising:

receiving, at data processing hardware of a robot, joint dynamics data associated with a leg of the robot;

receiving, at data processing hardware of the robot, odometry data indicative of a pose of the robot;

determining, by the data processing hardware, based on the joint dynamics data and an amount of completion of a swing phase of the leg, that a classification of a first impact on the leg corresponds to a touchdown classification;

determining, by the data processing hardware, that a classification of a second impact on the leg corresponds to a non-touchdown classification, wherein occurrence of the second impact is based on a particular condition, and wherein the joint dynamics data and the odometry data are indicative of the particular condition; and

instructing, by the data processing hardware, movement by the robot based on one or more of determining the classification of the first impact or determining the classification of the second impact.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 16, 2024
From: WHITMAN, ERIC; KHRIPIN, ALEX
To: BOSTON DYNAMICS, INC.
Reel/Frame 069601/0393 →
CHANGE OF NAME Recorded Dec 16, 2024
From: BOSTON DYNAMICS, INC.
To: BOSTON DYNAMICS, INC.
Reel/Frame 069713/0379 →
Continuity (3)
Continuation 16573579 · Sep 17, 2019
Provisional Application 62883636 · Aug 6, 2019
Related Publication 20220324104A1 · Oct 13, 2022
References Cited (45)
US 9044859B2 · Cory · 2015 [cited by applicant]
US 9446518B1 · Blankespoor · 2016 [cited by applicant]
US 9750620B2 · Goldfarb et al. · 2017 [cited by applicant]
US 9969087B1 · Blankespoor · 2018 [cited by applicant]
US 10406690B1 · Blankespoor et al. · 2019 [cited by applicant]
US 11383381B2 · Whitman et al. · 2022 [cited by applicant]
US 20050080590A1 · Kawai · 2005 [cited by examiner]
US 20050171635A1 · Furuta · 2005 [cited by examiner]
US 20070260354A1 · Hasegawa · 2007 [cited by examiner]
US 20080065269A1 · Hasegawa · 2008 [cited by examiner]
US 20110077775A1 · Nagasaka · 2011 [cited by examiner]
US 20110098860A1 · Yoshiike · 2011 [cited by examiner]
US 20110178637A1 · Lee · 2011 [cited by examiner]
US 20110231050A1 · Goulding · 2011 [cited by examiner]
US 20120046789A1 · Kwak et al. · 2012 [cited by applicant]
US 20120221119A1 · Goldfarb et al. · 2012 [cited by applicant]
US 20150120044A1 · Cory · 2015 [cited by examiner]
US 20220097230A1 · Kawabe · 2022 [cited by examiner]
CN 101403925A · 2009 [cited by applicant]
CN 101745910A · 2010 [cited by applicant]
CN 103318289A · 2013 [cited by applicant]
CN 107128394A · 2017 [cited by applicant]
CN 110072676A · 2019 [cited by applicant]
EP 2347867A1 · 2011 [cited by applicant]
JP 2003159674A · 2003 [cited by applicant]
JP 2003220583A · 2003 [cited by applicant]
JP 2003236781A · 2003 [cited by applicant]
JP 2004152075A · 2004 [cited by applicant]
JP 2006167890A · 2006 [cited by applicant]
JP 2019107047A · 2019 [cited by applicant]
KR 20110082394A · 2011 [cited by applicant]
KR 20170087626A · 2017 [cited by applicant]
Office Action with Translation for Korean Application No. 10-2022-7003697 dated Jul. 1, 2023 in 10 pages. [cited by applicant]
Martin Gorner, M.S, Locomotion and Pose Estimation . . . Hexapedal Robots (presumed to be released on May 3, 2017) in 167 pages. [cited by applicant]
Boston Dynamics, The New Spot, [https://www.youtube.com/watch?v=kgaO45SyaO4] (released on Nov. 14, 2017) in 2 pages. [cited by applicant]
Notice of Allowance with Translation Issued for Korean Application No. 10-2024-7000137 dated May 13, 2024 in 3 pages. [cited by applicant]
Decision to Grant Issued for Japanese Application No. 2022-502055 dated Oct. 5, 2023 in 3 pages. [cited by applicant]
Notice of Allowance with Translation Issued for Korean Application No. 10-2022-7003697 dated Oct. 4, 2023 in 4 pages. [cited by applicant]
The New Spot, published Nov. 14, 2017, available at https://www.youtube.com/watch?v=kgaO45SyaO4. [cited by applicant]
International Search Report, PCT/US2019/051535, Apr. 24, 2020, 14 pages. [cited by applicant]
Gorner, Locomotion and Pose Estimation in Compliant, Torque-Controlled Hexapedal Robots, May 3, 2017, 162 pages. [cited by applicant]
Winkler et al., Path planning with force-based foothold adaptation and virtual model control for torque controlled quadruped robots, May 31, 2014, 14 pages. [cited by applicant]
Office Action with Translation for Chinese Application No. 201980100358.2 dated Mar. 28, 2024 in 23 pages. [cited by applicant]
Office Action with Translation for Japanese Application No. 2022-502055 dated Apr. 18, 2023, in 11 pages. [cited by applicant]
Office Action with Translation for Korean Application No. 10-2024-7000137 dated Feb. 15, 2024 in 13 pages. [cited by applicant]
Cited By (14)
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,638,859 US 12,649,246 US 12,697,720 US 12,697,741 US 12,707,556 US 12,709,029