Explanation of the Calibration for Truss Robots
Related Concepts
Truss Robot
The truss robot is an automation device that can realize automatic control. It is reprogrammable based on the XYZ Cartesian coordinate system in space, has multiple degrees of freedom, and is suitable for different tasks.
Degrees of Freedom of Truss Robot
The truss robot supports multi-degree-of-freedom movement, and the space angle between each degree of freedom is a right angle.
Truss robots usually support 2 to 6 degrees of freedom, for example:
-
XYZ axes can move linearly (three degrees of freedom)
-
XYZ axes can move linearly, and the Z axis (called Rz or C axis) can rotate (four degrees of freedom)
-
XZ axes can move linearly (two degrees of freedom)
-
XZ axes can move linearly, and the Z axis can rotate (three degrees of freedom)
The camera is usually mounted on a certain axis of the truss (such as the Z or C axis), and the camera’s scanning position will be affected by the movement of the axis. Therefore, in the pre-calibration configuration, you need to specify which axis movements will affect the camera’s position.
Left- and Right-handed Coordinate Systems
Mech-Mind Vision System uses the flange pose of the robot in the right-handed coordinate system to calculate the extrinsic parameters. Therefore, when using a truss robot, you need to determine whether the truss coordinate system is a right-handed coordinate system.
The left-handed and right-handed coordinate systems can be determined is as follows:
-
Let the left thumb point to the positive direction of the X-axis, and the index finger point to the positive direction of the Y-axis. If the middle finger can point to the positive direction of the Z-axis, this coordinate system is called a left-handed coordinate system (see the left figure below).
-
Let the thumb of the right hand point to the positive direction of the X-axis, and the index finger point to the positive direction of the Y-axis. If the middle finger can point to the positive direction of the Z-axis, this coordinate system is called the right-hand coordinate system (see the right picture below).
When the truss robot is a left-handed coordinate system, it is recommended to change it to a right-handed coordinate system to facilitate subsequent calibration and vision processing. Typically, you need to invert the positive direction of the encoder motion for either XYZ axis on a truss robot. Generally, you just need to invert the axis installed on the truss base, and then select the right-handed coordinate system in Mech-Vision for calibration.
If you can make this change on the truss robot, you only need to select the left-handed coordinate system in Mech-Vision, and the software will automatically convert the input and output pose data.
Calibration Principles
For a truss robot, the camera is usually mounted on a certain axis of the robot, such as the Z axis, that is, the camera is mounted in Eye in Hand mode. The calibration of the truss robot aims to determine the relative relationship between the camera reference frame and the robot tool reference frame.
Considering the limited freedom and activity space of the truss robot, the Mech-Vision software uses the TCP touch method to collect calibration data and establish the relationship between the calibration board, camera and robot. In addition, the calibration process of the truss robot supports adding the poses of multiple calibration boards. If the truss robot cannot touch three points on the calibration board due to the limited degrees of freedom, you can use multiple calibration boards and control the truss robot to touch three points (not in a line) on multiple calibration boards.
For the principles of the hand-eye calibration for truss robots, please refer to the section Calibration in the EIH Scenario (TCP Touch).
Using the Extrinsic Parameter File
The calibration process of the truss robot generates an extrinsic parameter file for the calibration point, and Mech-Vision will calculate the dynamic extrinsic parameters in real time according to the pose of the truss robot. To calculate the dynamic extrinsic parameters in Mech-Vision projects, Steps Transform Point Clouds for Truss and Transform Poses for Truss need to be used to convert point clouds/poses in camera reference frame to those in the truss robot reference frame.
When the project is running, please ensure that the truss robot can communicate normally with Mech-Mind Vision System. In addition, the robot program should provide the robot flange pose when triggering the Mech-Vision project to run, so that the "Capture Images from Camera" Step can successfully obtain the pose of the robot flange when capturing images.
If the truss robot uses the left-handed coordinate system, the Communication Component software automatically converts the robot flange poses sent by the robot program to those in the right-handed coordinate system, and then sent them to Mech-Vision for vision processing. When the vision result is returned, the Communication Component software first automatically converts the poses in the truss robot reference frame output by Mech-Vision to the poses in the left-handed coordinate system, and then returns them to the robot program. |