HUMANOID ROBOT PUSH RECOVERY ON LEVEL AND NON-LEVEL GROUND
First Claim
1. A computer-implemented method for controlling a humanoid robot in response to an external disturbance, the method comprising:
- receiving, by a robot controller, state information of a humanoid robot;
determining, by the robot controller, a predicted stepping location of the robot based on the state information of the humanoid robot, the predicted stepping location comprising a location such that the humanoid robot will maintain balance if it steps to the predicted stepping location;
responsive to the predicted stepping location falling within a predefined region, controlling the robot to make a postural change without stepping to maintain balance in response to the external disturbance; and
responsive to the predicted stepping location falling outside the predefined region, controlling the robot to take a step to the predicted stepping location to maintain balance in response to the external disturbance.
1 Assignment
0 Petitions
Accused Products
Abstract
A robot controller controls a robot to maintain balance in response to an external disturbance (e.g., a push) on level or non-level ground. The robot controller determines a predicted stepping location for the robot such that the robot will be able to maintain a balanced upright position if it steps to that location. As long as the stepping location predicted stepping location remains within a predefined region (e.g., within the area under the robot'"'"'s feet), the robot will maintain balance in response to the push via postural changes without taking a step. If the predicted stepping location moves outside the predefined region, the robot will take a step to the predicted location in order to maintain its balance.
-
Citations
20 Claims
-
1. A computer-implemented method for controlling a humanoid robot in response to an external disturbance, the method comprising:
-
receiving, by a robot controller, state information of a humanoid robot; determining, by the robot controller, a predicted stepping location of the robot based on the state information of the humanoid robot, the predicted stepping location comprising a location such that the humanoid robot will maintain balance if it steps to the predicted stepping location; responsive to the predicted stepping location falling within a predefined region, controlling the robot to make a postural change without stepping to maintain balance in response to the external disturbance; and responsive to the predicted stepping location falling outside the predefined region, controlling the robot to take a step to the predicted stepping location to maintain balance in response to the external disturbance. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. The computer-implemented method of claim 8, further comprising:
-
determining a trajectory of a center of mass of the humanoid robot; and determining a trajectory for a swing foot of the robot executing the step to the predicted stepping location.
-
-
9. A non-transitory computer-readable storage medium for storing computer program instructions for controlling a humanoid robot in response to an external disturbance, the program instructions when executed by a processor cause the processor to perform steps including:
-
receiving, by a robot controller, state information of the humanoid robot; determining, by the robot controller, a predicted stepping location of the robot based on the state information of the humanoid robot, the predicted stepping location comprising a location such that the humanoid robot will maintain balance if it steps to the predicted stepping location; responsive to the predicted stepping location falling within a predefined region, controlling the robot to make a postural change without stepping to maintain balance in response to the external disturbance; and responsive to the predicted stepping location falling outside the predefined region, controlling the robot to take a step to the predicted stepping location to maintain balance in response to the external disturbance. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A computer-implemented method for determining a stepping location on non-level ground for a humanoid robot in response to an external disturbance, the method comprising:
-
modeling the humanoid robot as a rimless wheel model, the rimless wheel model having a point mass corresponding to the center of mass of the humanoid robot, a first spoke corresponding to a first leg of the humanoid robot, and a second spoke corresponding to a second leg of the humanoid robot; determining a plane on which the rimless wheel model resides based on a direction of the humanoid robot'"'"'s center of mass projected onto the non-level ground; determining an anchor point for the rimless wheel model based on the center of pressure of the humanoid robot; applying a dynamic model to model motion of the rimless wheel through the plane about the anchor point; selecting, based on the modeled motion, which of a first section of the non-level ground and a second section of non-level ground to step to, the first section of the non-level ground having a first slope and the second section of the non-level ground having a second slope; and determining the stepping location on the selected section of the non-level ground above which the point mass of the rimless wheel model will come to rest after executing the modeled motion. - View Dependent Claims (18, 19, 20)
-
Specification