IP Library Granted Patent US 10,160,114
Granted Patent B2
US 10,160,114 · App. 15/788,391 · Granted Dec 25, 2018

Trajectory planning with droppable objects

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 10,160,114
App. No.
15/788,391
Granted
Dec 25, 2018
Kind
B2
Abstract

Example implementations may relate to methods and systems for determining a safe trajectory for movement of an object by a robotic system. According to these various implementations, the robotic system may determine at least first and second candidate trajectories for moving the object. For at least a first point along the first candidate trajectory, the robotic system may determine a predicted cost of dropping the object at the first point along the first candidate trajectory. And for at least a second point along the second candidate trajectory, the robotic system may determine a predicted cost of dropping the object at the second point along the second candidate trajectory. Then, based on these various determined predicted costs, the robotic system may select between the first and second candidates trajectories and may then move the object along the selected trajectory.

Claims (74)

1. A method comprising:

determining, by a control system, a candidate trajectory for a robotic system to move an object in an environment from a first location to a second location;

for at least a first point along the candidate trajectory, the control system determining a predicted cost of dropping the object at the first point;

based at least on the determined predicted cost for the first point along the candidate trajectory, the control system making a determination of whether or not to move the object along the candidate trajectory;

if the determination is to not move the object along the candidate trajectory, then, responsive to making the determination, the control system determining a different candidate trajectory for the robotic system to move the object from the first location to the second location; and

if the determination is to move the object along the candidate trajectory, then, responsive to making the determination, the control system causing the robotic system to move the object from the first location to the second location along the candidate trajectory.

2. The method of claim 1 , wherein the first point is an inflection point defining a point of transition between a convex segment of the candidate trajectory and a concave segment of the candidate trajectory.

3. The method of claim 1 , wherein determining the predicted cost of dropping the object at the first point comprises:

determining a height from which the object is predicted to be dropped if the robotic system were to drop the object at the first point along the candidate trajectory; and

based at least on the determined height, determining the predicted cost of dropping the object at the first point along the candidate trajectory.

4. The method of claim 3 , wherein determining the predicted cost of dropping the object at the first point based at least on the determined height comprises:

referring to a data storage containing mapping data that maps (i) each of a plurality of heights with (ii) a respective predicted cost;

while referring to the data storage, determining that the mapping data maps the determined height with a particular predicted cost; and

in response to determining that the mapping data maps the determined height with the particular predicted cost, setting the particular predicted cost as the predicted cost of dropping the object at the first point along the candidate trajectory.

5. The method of claim 1 , further comprising:

receiving, by the control system, information specifying a maximum height from which the robotic system is permitted to drop the object;

determining a height from which the object is predicted to be dropped if the robotic system were to drop the object at the first point along the candidate trajectory; and

determining that the determined height is higher than the maximum height, wherein determining the predicted cost of dropping the object at the first point is based at least on the determined height being higher than the maximum height.

6. The method of claim 5 , wherein determining the predicted cost of dropping the object at the first point based at least on the determined height being higher than the maximum height comprises:

based at least on the determined height being higher than the maximum height, assigning a maximum predicted cost as the predicted cost of dropping the object at the first point.

7. The method of claim 1 , wherein determining the predicted cost of dropping the object at the first point comprises:

determining a region of the environment through which the object is predicted to move if the robotic system were to drop the object at the first point; and

based at least on the determined region, determining the predicted cost of dropping the object at the first point.

8. The method of claim 7 , wherein determining the region comprises:

determining one or more of the following factors: (i) a spatial location of the object at the first point, (ii) a spatial orientation of the object (iii) a direction of movement of the object at the first point, (iv) a velocity of the object at the first point, (v) an acceleration of the object at the first point, (vi) a shape of the object, and (vii) a size of the object; and

determining the region based at least on one or more of the determined factors.

9. The method of claim 7 , wherein determining the predicted cost of dropping the object at the first point based at least on the determined region comprises:

making a determination of whether or not at least one entity is positioned within the determined region; and

determining the predicted cost of dropping the object at the first point based at least on the determination of whether or not at least one entity is positioned within the determined region.

10. The method of claim 7 , wherein determining the predicted cost of dropping the object at the first point based at least on the determined region comprises:

determining that at least one entity is positioned within the determined region;

in response to determining that at least one entity is positioned within the determined region; determining an entity type of the at least one entity; and

based at least on the determined entity type of the at least one entity, determining the predicted cost of dropping the object at the first point.

11. The method of claim 1 , further comprising:

for at least the first point along the candidate trajectory, the control system determining a probability of the robotic system dropping the object at the first point,

wherein making the determination is further based on the determined probability for the first point along the candidate trajectory.

12. The method of claim 11 , wherein determining the probability of the robotic system dropping the object at the first point comprises:

determining one or more of (i) a velocity of the object at the first point, (ii) an acceleration of the object at the first point, and (iii) a grasp quality level representative of quality with which the robotic system grasps the object at the first point; and

based on one or more of (i) the determined velocity, (ii) the determined acceleration, and (iii) the determined grasp quality level, determining the probability of the robotic system dropping the object at the first point.

13. The method of claim 1 , further comprising:

determining, by the control system, a predicted cost of dropping the object at a second point along the candidate trajectory;

wherein making the determination is further based on the determined predicted cost for the second point along the candidate trajectory.

14. The method of claim 13 , further comprising:

determining, by the control system, at least (i) a probability of the robotic system dropping the object at the first point along the candidate trajectory and (ii) a probability of the robotic system dropping the object at the second point along the candidate trajectory,

wherein making the determination is further based on the determined probabilities for the first and second points along the candidate trajectory.

15. The method of claim 1 , wherein determining a different candidate trajectory for moving the object from the first location to the second location comprises:

determining that the different candidate trajectory is invalid; and

in response to determining that the different candidate trajectory is invalid, providing an indication indicating that a valid candidate trajectory is unavailable.

16. A robotic 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:

determine a candidate trajectory for moving an object in an environment from a first location to a second location;

for at least a first point along the candidate trajectory, determine a predicted cost of dropping the object at the first point;

based at least on the determined predicted cost for the first point along the candidate trajectory, make a determination of whether or not to move the object along the candidate trajectory;

if the determination is to not move the object along the candidate trajectory, then, responsive to making the determination, determine a different candidate trajectory for moving the object from the first location to the second location; and

if the determination is to move the object along the candidate trajectory, then, responsive to making the determination, move the object from the first location to the second location along the candidate trajectory.

17. The robotic system of claim 16 , wherein determining the predicted cost of dropping the object at the first point comprises:

determining a height from which the object is predicted to be dropped if the robotic system were to drop the object at the first point along the candidate trajectory; and

based at least on the determined height, determining the predicted cost of dropping the object at the first point along the candidate trajectory.

18. The robotic system of claim 16 , wherein the program instructions are further executable to:

receive information specifying a maximum height from which the robotic system is permitted to drop the object;

determine a height from which the object is predicted to be dropped if the robotic system were to drop the object at the first point along the candidate trajectory; and

determine that the determined height is higher than the maximum height,

wherein determining the predicted cost of dropping the object at the first point is based at least on the determined height being higher than the maximum height.

19. The robotic system of claim 16 , wherein determining the predicted cost of dropping the object at the first point comprises:

determining a region of the environment through which the object is predicted to move if the robotic system were to drop the object at the first point; and

based at least on the determined region, determining the predicted cost of dropping the object at the first point.

20. A non-transitory computer readable medium having stored therein instructions executable by one or more processors to cause a control system to perform functions comprising:

determining a candidate trajectory for a robotic system to move an object in an environment from a first location to a second location;

for at least a first point along the candidate trajectory, determining a predicted cost of dropping the object at the first point;

based at least on the determined predicted cost for the first point along the candidate trajectory, making a determination of whether or not to move the object along the candidate trajectory;

if the determination is to not move the object along the candidate trajectory, then, responsive to making the determination, determining a different candidate trajectory for the robotic system to move the object from the first location to the second location; and

if the determination is to move the object along the candidate trajectory, then, responsive to making the determination, causing the robotic system to move the object from the first location to the second location along the candidate trajectory.

Assignments (4)
CORRECTIVE ASSIGNMENT TO CORRECT THE RECEIVING PARTY ADDRESS PREVIOUSLY RECORDED AT REEL: 057650 FRAME: 0325. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Oct 8, 2021
From: X DEVELOPMENT LLC
To: INTRINSIC INNOVATION LLC
Reel/Frame 057896/0807 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 3, 2021
From: X DEVELOPMENT LLC
To: INTRINSIC INNOVATION LLC
Reel/Frame 057650/0325 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 19, 2017
From: GOOGLE INC.
To: X DEVELOPMENT LLC
Reel/Frame 044242/0162 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 19, 2017
From: WATTS, KEVIN WILLIAM
To: GOOGLE INC.
Reel/Frame 043906/0254 →
Cited By (1)
US 12,617,092