A safe path of motion is calculated for every part that is picked. This path accounts for both the part position in the grippers and each robotic joint angle value, to eliminate singularities and exceeding set rotation limits.