High Precision Pick and Place Operation
An assembly operation and a robotic cell for inserting a part into a chassis comprising calculating a first part pose estimation for the part in the pick area, picking up the part, and moving the part above the chassis, calculating a second part pose estimation for the part being held by the robot arm above the chassis, and correcting the second part pose estimation using a chassis pose estimation. The operation further comprising inserting the part into the chassis, wherein the multi-stage verification ensures that a high value part is not damaged in the assembly.
1 . A method for an assembly operation for inserting a part into a chassis, the method comprising:
calculating a first part pose estimation for the part in a pick area;
picking up the part from the pick area using a robot arm, and moving the part above the chassis to an approach point;
calculating a second part pose estimation for the part being held by the robot arm above the chassis;
correcting the second part pose estimation using a chassis pose estimation, thereby performing multi-stage verification;
inserting the part into the chassis, wherein the multi-stage verification ensures that a high value part is not damaged in the assembly.
2 . The method of claim 1 , further comprising:
applying a final position correction by verifying a position of a fixed region of interest prior to the inserting.
3 . The method of claim 2 , wherein the final position correction comprises:
locating a region of interest on a board;
using template matching to compute distance between the regions of interest; and
verifying that the distance is below a threshold.
4 . The method of claim 1 , wherein the calculating the first part pose estimation comprises:
generating a point cloud of the part, using a first sensor;
matching the point cloud to a template of the part; and
computing subpart locations based on the matching.
5 . The method of claim 4 , further comprising:
defining a working plane, the working plane defining a bottom of the subpart locations; and
removing points in the point cloud below the working plane, prior to the computing.
6 . The method of claim 5 , further comprising:
clustering the point cloud into distinct clusters; and
matching the subpart locations based on the template of the part and the clusters.
7 . The method of claim 1 , further comprising performing a calibration verification to verify that sensors remain calibrated, by:
comparing a scan of a static portion of the robot arm to a robot template;
computing a transformation between the robot template and the scan; and
determining that the transformation is identity, to verify the calibration.
8 . A high precision pick and place system for inserting a part into a chassis comprising:
run-time pick location computer to calculate a first part pose estimation for the part in a pick area;
a robot arm configured to pick up the part from the pick area and move the part above the chassis to an approach point;
a run-time place location computer further configured to calculate a second part pose estimation for the part being held by the robot arm above the chassis;
a final position corrector to correct the second part pose estimation using a chassis pose estimation, thereby performing multi-stage verification;
the robot arm further configured to insert the part into the chassis, wherein the multi-stage verification ensures that a high value part is not damaged during the insertion.
9 . The system of claim 8 , further comprising:
the final position corrector to apply position correction just before insertion by verifying a position of a fixed region of interest prior to the inserting.
10 . The system of claim 9 , wherein the position correction just before insertion comprises:
the final position corrector to locate a region of interest on a board, use template matching to compute distance between the regions of interest, and verify that the distance is below a threshold.
11 . The system of claim 8 , further comprising:
the run-time pick location computer further configured to:
generate a point cloud of the part, using a first sensor;
match the point cloud to a template of the part; and
compute subpart locations based on the matching.
12 . The system of claim 11 , further comprising:
the run-time pick location computer to define a working plane, the working plane defining a bottom of the subpart locations; and
the run-time pick location computer to remove points in the point cloud below the working plane, prior to the computing.
13 . The system of claim 12 , further comprising:
the run-time pick location computer further to cluster the point cloud into distinct clusters and match the subpart locations based on the template of the part and the clusters.
14 . The system of claim 8 , further comprising:
a calibration validator to perform a calibration verification to verify that sensors remain calibrated, by comparing a scan of a static portion of the robot arm to a robot template, computing a transformation between the robot template and the scan, and determining that the transformation is identity, to verify the calibration.
15 . A method for an assembly operation for inserting a part into a chassis, the method comprising:
picking up the part from a pick area using a robot arm;
moving the part above the chassis to an approach point;
calculating a part pose estimation for the part being held by the robot arm at the approach point, based on data from one or more sensors;
verifying that the part pose estimation matches an intended part pose;
matching the part pose estimation to a chassis pose estimation;
applying a final position correction just before inserting the part by verifying a position of a fixed region of interest prior to the inserting; and
inserting the part into the chassis, wherein the method ensures that a high value part is not damaged in the assembly.
16 . The method of claim 15 , wherein the final position correction comprises:
locating a region of interest on a board;
using template matching to compute distance between the regions of interest; and
verifying that the distance is below a threshold.
17 . The method of claim 15 , wherein the calculating a part pose estimation comprises:
generating a point cloud of the part, using a first sensor;
matching the point cloud to a template of the part; and
computing subpart locations based on the matching.
18 . The method of claim 17 , further comprising:
defining a working plane, the working plane defining a bottom of the subpart locations; and
removing points in the point cloud below the working plane, prior to the matching.
19 . The method of claim 18 , further comprising:
decimating the point cloud prior to the matching, to reduce a resolution.
20 . The method of claim 15 , further comprising performing a calibration verification to verify that sensors remain calibrated, by:
comparing a scan of a static portion of the robot arm to a robot template;
computing a transformation between the robot template and the scan; and
determining that the transformation is identity to verify the calibration.