Pose Correction (Assembly)
This section describes the Pose Correction (Assembly) function in the Advanced Pose Transformation step and its workflows.
Function Introduction
This function automatically corrects tool pose or flange pose before assembly, based on secondary vision capture after robot has picked the workpiece. It compensates picking error and placement offset to improve assembly precision.
It supports secondary capture with either 3D or 2D camera, and supports both fixed and non-fixed placement scenarios.
Prerequisites and Constraints
Before using this function, make sure the following conditions are met:
-
Coordinate-system constraint
All poses input to
Advanced Pose Transformationmust be in robot coordinate system.-
3D poses from steps such as
3D Matchingare usually in camera frame and should be converted by Transform Poses. -
2D poses from steps such as
2D Matchingshould be converted to 3D robot-frame poses by relevant 2D-to-3D conversion steps.
-
-
TCP consistency requirement
Teaching and runtime must use the same TCP configuration. If gripper or TCP changes, teaching must be redone.
-
Secondary vision capture requirement
Pose correction depends on secondary image capture at a fixed photo point after picking.
-
In 3D-camera scenarios, provide tool pose at secondary photo moment from teaching.
-
In 2D-camera scenarios, provide flange pose at secondary photo moment from teaching.
-
-
Placement-type definition
-
Fixed placement: placement position and orientation remain unchanged during runtime.
-
Non-fixed placement: placement position/orientation may vary and must be recognized in real time before assembly.
-
Workflow
The following four scenarios are supported:
3D Camera + Fixed Placement
After picking, robot moves to fixed photo point. 3D camera captures workpiece point cloud and calculates real-time workpiece pose. Corrected assembly tool pose is computed together with taught fixed placement pose.
Configure Step Ports
-
Open configuration wizard and select Pose Correction (Assembly).
-
Set camera type to 3D Camera and placement type to Fixed Placement.
-
Click OK.
Configured ports:
Input
| Input Port | Data Type | Description |
|---|---|---|
Tool Pose at Capture |
Pose [] |
Tool pose (robot frame) recorded at secondary photo point during teaching. |
Workpiece Pose at Capture |
Pose [] |
Real-time workpiece pose (robot frame) at secondary capture. |
Fixed Placement Pose |
Pose [] |
Taught tool pose for placement. |
Output
| Output Port | Data Type | Description |
|---|---|---|
Assembly Pose |
Pose [] |
Corrected assembly pose for direct downstream output. |
Teaching Phase
-
Record fixed placement pose in ideal assembly condition.
-
Record tool pose at secondary photo point and create workpiece point-cloud template.
-
Connect taught poses to corresponding input ports.
3D Camera + Non-Fixed Placement
In addition to workpiece real-time pose, obtain real-time placement pose from placement-recognition project and compute corrected assembly tool pose dynamically.
Configure Step Ports
-
Select Pose Correction (Assembly).
-
Set camera type to 3D Camera and placement type to Non-Fixed Placement.
-
Click OK.
Key inputs: Tool Pose at Capture, Workpiece Pose at Capture, Real-time Placement Pose.
Output: Assembly Pose.
Teaching Phase
-
Create placement point-cloud template under ideal setup.
-
Record tool pose at secondary photo point and create workpiece point-cloud template.
-
Connect taught pose data.
Runtime Phase
-
Obtain workpiece real-time pose at secondary photo point.
-
Obtain real-time placement pose from placement-recognition project.
-
Input both poses to this step for correction calculation.
|
To avoid mutual interference in recognition, it is recommended to run workpiece capture and placement capture in separate Mech-Vision projects and pass data via global variables or files. |
2D Camera + Fixed Placement
After picking, robot moves to fixed photo point. 2D camera captures image, recognition output is converted to 3D pose, and corrected assembly flange pose is computed with taught fixed placement pose.
Configure Step Ports
-
Select Pose Correction (Assembly).
-
Set camera type to 2D Camera and placement type to Fixed Placement.
-
Click OK.
Key inputs: Flange Pose at Capture, Workpiece Pose at Capture, Fixed Placement Pose.
Output: Assembly Pose.
Teaching Phase
-
Record taught fixed placement flange pose.
-
Record flange pose at secondary photo point.
-
Create workpiece 2D template at secondary photo point.
-
Connect taught poses to step inputs.
2D Camera + Non-Fixed Placement
After picking, robot captures secondary image for workpiece pose and also obtains real-time placement pose from placement-recognition project. Corrected assembly flange pose is then computed dynamically.
Configure Step Ports
-
Select Pose Correction (Assembly).
-
Set camera type to 2D Camera and placement type to Non-Fixed Placement.
-
Click OK.
Key inputs:
-
Flange Pose at Capture -
Workpiece Pose at Capture -
Taught Placement Pose -
Taught Placement-position Pose -
Real-time Placement Pose
Output: Assembly Pose.
Teaching Phase
-
Record taught assembly flange pose in ideal condition.
-
Create placement 2D template and obtain taught placement-position pose.
-
Record flange pose at secondary photo point.
-
Create workpiece 2D template.
-
Connect taught data to corresponding input ports.
Runtime Phase
-
Obtain workpiece real-time pose from secondary image (2D match + 2D-to-3D conversion).
-
Obtain real-time placement pose from placement recognition (2D match + 2D-to-3D conversion).
-
Input both real-time poses to this step for correction.
|
To reduce interference, run workpiece-recognition and placement-recognition in separate Mech-Vision projects and exchange data through global variables or files. |