| CPC B25J 9/1687 (2013.01) [B25J 9/163 (2013.01); B25J 9/1661 (2013.01); B25J 9/1671 (2013.01); B65B 35/50 (2013.01); B65B 57/10 (2013.01); G05B 19/402 (2013.01); G05B 2219/39001 (2013.01)] | 20 Claims |

|
1. A computer-implemented method, comprising:
identifying, by a controller, a plurality of items to be packed into one or more containers;
receiving, by the controller, item attributes associated with respective items of the plurality of items, the item attributes including size, weight, stability, and fragility associated with respective items;
determining, by the controller, a placement sequence for the plurality of items based on the item attributes associated with respective items;
receiving, by the controller, a placement heuristic for packing of the plurality of items into one or more containers;
generating, by the controller, a pack plan for the plurality of items, wherein generating the pack plan includes for each item of the plurality of items:
selecting, by the controller, an item based on the placement sequence;
receiving, by the controller, a three-dimensional model of the item;
determining, by the controller, a placement pose for the item in a container based on the placement heuristic;
verifying, by the controller, that the placement pose for the item satisfies one or more containment constraints;
verifying, by the controller, that the placement pose for the item satisfies a stability constraint;
verifying, by the controller, that the placement pose for the item satisfies a fragility constraint, wherein the fragility constraint comprises the placement pose of the item being positioned such that any local stress of the item is less than a respective local fragility threshold associated with another item positioned under the item; and
updating, by the controller, the pack plan including the placement pose for the item; and
instructing, by the controller, packing of the plurality of items into one or more containers based on the pack plan.
|
|
5. A method, comprising:
determining, by a controller, a placement sequence for a plurality of items to be packed into a container;
generating, by the controller, a pack plan for the plurality of items, wherein generating the pack plan includes for individual items of the plurality of items:
selecting, by the controller, an item based on the placement sequence;
determining, by the controller, a placement pose for the item in the container;
determining, by the controller, whether the placement pose for the item satisfies a stress constraint, wherein the stress constraint comprises the placement pose of the item being positioned such that any local stress of the item is less than a respective local stress threshold associated with another item positioned under or in contact with the item; and
in response to determining that the placement pose for the item satisfies the stress constraint:
updating, by the controller, the pack plan including the placement pose for the item; and
instructing, by the controller, packing of the plurality of items into the container based on the pack plan.
|
|
17. A system, comprising:
an item identification subsystem configured to detect and identify a plurality of items to be packed into a container;
a pack planning subsystem configured to generate a pack plan for the plurality of items based on a placement sequence for the plurality of items, wherein the pack plan is generated such that respective placement poses of individual items of the plurality of items satisfy a stress constraint, wherein the stress constraint comprises the placement pose of the item being positioned such that any local stress of the item is less than a respective local stress threshold associated with another item positioned under or in contact with the item; and
a robotic packing subsystem configured to pack the plurality of items into the container based on the pack plan.
|