We did a small proof of concept about 18 months ago for a company where there were a lot of different configurations that they had to handle throughout the day. Are the boxes coming down the line at random as far as size or is it package a pallet of this size box then switch to another size and package some of them?
As far as how we planned to accomplish the task we were using a database that stored a set of arrays for each part number (pallet configuration) they were packaging. This database would basically return a set of lists to the robot, one list for the x,y and rotation of each box on the pallet, how many layers there were and the number of boxes on each layer as well as the center coordinates used by the robot to pick the box off of the pallet. The system then used that information to determine how to loop through the list of coordinates and place each box onto the pallet oriented in the correct direction, we would use a dead-stop at the end of the conveyor that was feeding the robot and a cylinder to square up the box prior to being picked. We were looking at using a camera potentially to ensure that the boxes were oriented correctly before being picked, less of a concern on that project as the boxes were flowing to the robot out of a taping machine so unless someone really messed up they were all oriented the correct direction.
Hope that gives you some ideas to work with.
mhowe
@matthewd92 Was there a particular program that you used to help generate the pallet configurations?
I have an application where a UR10 is palletizing boxes. There is about 50 different sizes which means 50 different pallet layouts. Multiple box sizes a day so it is always changing.
I am interested in seeing how others have accomplished this task, how you tell the UR what box is coming and if an external motion controller is used.