Offline determination of robot behavior
US-9440353-B1 · Sep 13, 2016 · US
US10654168B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10654168-B2 |
| Application number | US-201816137796-A |
| Country | US |
| Kind code | B2 |
| Filing date | Sep 21, 2018 |
| Priority date | Aug 25, 2014 |
| Publication date | May 19, 2020 |
| Grant date | May 19, 2020 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A control system may receive a first plurality of measurements indicative of respective joint angles corresponding to a plurality of sensors connected to a robot. The robot may include a body and a plurality of jointed limbs connected to the body associated with respective properties. The control system may also receive a body orientation measurement indicative of an orientation of the body of the robot. The control system may further determine a relationship between the first plurality of measurements and the body orientation measurement based on the properties associated with the jointed limbs of the robot. Additionally, the control system may estimate an aggregate orientation of the robot based on the first plurality of measurements, the body orientation measurement, and the determined relationship. Further, the control system may provide instructions to control at least one jointed limb of the robot based on the estimated aggregate orientation of the robot.
Opening claim text (preview).
What is claimed is: 1. A method comprising: receiving, at a processing system from a plurality of sensors connected to a robot, a plurality of measurements indicative of respective joint angles of jointed limbs connected to a body of the robot; receiving, at the processing system, a body orientation measurement indicative of an orientation of the body of the robot; estimating, by the processing system, an aggregate orientation of the robot based on the plurality of measurements and the body orientation measurement; determining, by the processing system, whether the robot is unstable or will become unstable based on the estimated aggregate orientation comprising a particular angle, wherein the particular angle is one of a yaw angle, a pitch angle, or a roll angle; and in response to determining that the robot is one of unstable or will become unstable based on the estimated aggregate orientation comprising the particular angle, providing, by the processing system, instructions to control at least one of the jointed limbs to cause the robot to assume an alternative aggregate orientation that reduces the particular angle. 2. The method of claim 1 , wherein: the particular angle of the estimated aggregate orientation exceeds a non-zero threshold value; and the alternative aggregate orientation reduces the particular angle to a value that is less than the non-zero threshold value. 3. The method of claim 2 , wherein the non-zero threshold value is a non-zero threshold angle value, and wherein determining whether the robot is unstable or will become unstable based on the estimated aggregate orientation comprising the particular angle comprises: determining, based on the estimated aggregate orientation, an angular velocity of the robot; and determining that the robot is unstable based on the angular velocity exceeding a non-zero threshold velocity value. 4. The method of claim 1 , wherein estimating the aggregate orientation of the robot comprises predicting that the robot will assume the aggregate orientation at a future time. 5. The method of claim 1 , wherein providing the instructions to control the at least one of the jointed limbs comprises providing the instructions to control the at least one of the jointed limbs to cause the robot to assume the alternative aggregate orientation before the robot assumes the estimated aggregate orientation. 6. The method of claim 1 , wherein determining whether the robot is unstable or will become unstable based on the estimated aggregate orientation comprising the particular angle comprises determining that the particular angle of the estimated aggregate orientation is accelerating. 7. The method of claim 1 , wherein estimating the aggregate orientation of the robot comprises determining a relationship between the respective joint angles and the body orientation measurement based on a weight distribution of the at least one of the jointed limbs, wherein the relationship represents an extent to which the respective joint angles affect the estimated aggregate orientation. 8. The method of claim 7 , wherein the relationship between the respective joint angles and the body orientation measurement indicates a torque applied to the body from moving the at least one of the jointed limbs. 9. The method of claim 1 , wherein providing the instructions to control the at least one of the jointed limbs comprises: determining an extent of force with which to place the at least one of the jointed limbs against a surface in the environment to assume the alternative aggregate orientation; and providing the instructions to place the at least one of the jointed limbs against the surface using the determined extent of force. 10. The method of claim 1 , wherein providing the instructions to control the at least one of the jointed limbs comprises: determining a position to which to move the at least one of the jointed limbs to assume the alternative aggregate orientation; and providing the instructions to move the at least one of the jointed limbs to the determined position. 11. The method of claim 1 , wherein the at least one of the jointed limbs includes two legs, and wherein the estimated aggregate orientation represents the robot at a time when the robot is in mid-air above a surface and the two legs are not in contact with the surface, the method further comprising: determining, by the processing system, an angle by which to adjust one of the two legs to cause the robot to assume the alternative aggregate orientation when at least one of the two legs lands on the surface; and providing, by the processing system, instructions to adjust the one of the two legs by the determined angle to cause the robot to assume the alternative aggregate orientation. 12. The method of claim 1 , further comprising: determining, by the processing system, a desired trajectory for the robot to follow; and determining, by the processing system, modifications to the estimated aggregate orientation to cause the robot to follow the desired trajectory, wherein the alternative aggregate orientation includes the determined modifications. 13. The method of claim 1 , wherein the provided instructions are first instructions, the method further comprising: estimating, by the processing system, an angular velocity of the robot based on the estimated aggregate orientation; receiving, at the processing system, a second plurality of measurements indicative of external forces exerted on the robot; based on the second plurality of measurements and the estimated angular velocity of the robot, determining, by the processing system, a component of the estimated angular velocity caused by the external forces exerted on the robot; and providing, by the processing system, second instructions to control the at least one of the jointed limbs based on the determined component of the estimated angular velocity caused by the external forces exerted on the robot. 14. A robot comprising: a body; jointed limbs connected to the body; a plurality of sensors configured to provide a plurality of measurements indicative of respective joint angles of the jointed limbs; a body orientation sensor connected to the body and configured to provide a body orientation measurement indicative of an orientation of the body of the robot; a processing system; and memory hardware in communication with the processing system, the memory hardware storing instruction that when executed on the processing system cause the processing system to perform operations comprising: receiving, from the plurality of sensors, the plurality of measurements; receiving, from the body orientation sensor, the body orientation measurement; estimating an aggregate orientation of the robot based on the plurality of measurements and the body orientation measurement; determining whether the robot is unstable or will become unstable based on the estimated aggregate orientation comprising a particular angle, wherein the particular angle is one of a yaw angle, a pitch angle, or a roll angle; and in response to determining that the robot is unstable or will become unstable based on the estimated aggregate orientation comprising the particular angle, controlling at least one of the jointed limbs to cause the robot to assume an alternative aggregate orientation that reduces the particular angle. 15. The robot of claim 14 , wherein: the particular angle of the estimated aggregate orientation exceeds a non-zero threshold value; and the alternative aggregate orientation reduces the particular angle to a value that is less than the non-zero threshold value.
characterised by motion, path, trajectory planning · CPC title
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
External force control, additional loop comparing forces corrects position · CPC title
Adaptive control with stabilizing compensation · CPC title
Closed loop, sensor feedback controls arm movement · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.