Complete Automatic Calibration in the Eye to Hand Setup

You are viewing an old version of the documentation. You can switch to the documentation of the latest version by clicking the top-right corner of the page.

This how-to guide introduces how to complete the automatic calibration in the Eye to Hand (ETH) setup.

Preparation before Calibration

Before hand-eye calibration, you need to finish the following preparations:

  • Construct the Mech-Mind Vision System.

  • Prepare the materials required for calibration.

  • Adjust the effect of calibration board’s point cloud.

  • Complete the robot and communication configuration.

Construct the Mech-Mind Vision System

Construct the Mech-Mind Vision System by referring to the section Construct Mech-Mind Vision System.

You need to use Mech-Eye Viewer, Mech-Center, Mech-Vision and Mech-Viz during hand-eye calibration. Please ensure that they have been installed and are running the latest versions.

Prepare the Materials Required for Calibration

The automatic calibration in the ETH setup needs to use the calibration board.

Please prepare the calibration board according to the following requirements:

  • Ensure that the circles of the calibration board are clearly visible and without obvious scratches, and the board does not suffer from deformations.

  • In the ETH setup, mount the robot-specific bracket for calibration board onto the robot flange, and then mount the calibration board onto the bracket. Make sure that the calibration board is attached securely, and that the board is parallel to the XY plane of the robot flange frame.

    If an undetachable gripper is connected to the robot flange, you can attach the calibration board directly to the gripper.

In addition, before calibration, move the robot to the starting point for calibration. For the automatic calibration in the ETH setup, the starting point is the bottom center of the camera’s field of view (the robot will move up during calibration).

Adjust the Effect of Calibration Board’s Point Cloud

  1. Open Mech-Eye Viewer to adjust camera parameters.

  2. Adjust 2D parameters to make sure that the 2D image of the calibration board is clear and neither overexposed nor underexposed.

  3. Adjust 3D parameters to make sure that the point clouds of the circles on the calibration board are complete and have clear contours. It is recommended to set Surface Smoothing and Outlier Removal to Normal in the Point Cloud Processing section to reduce the point cloud fluctuation range.

    If the on-site ambient lights are not ideal and affects the quality of 2D images and point clouds, you can use shading or supplemental light to improve the lighting conditions.

  1. Make sure that the images and point cloud of the calibration board are up to standard after completing preceding steps.

    Normal Overexposed Underexposed

    2D image

    normal-2d

    overexposure-2d

    underexposure-2d

    Point cloud

    normal-3d

    overexposure-3d

    underexposure-3d

Complete Robot and Communication Configuration

If the robot uses Standard Interface to communicate with the vision side, please complete the robot’s Standard Interface communication configuration. For details, refer to the section Standard Interface Communication.

If the robot uses Master-control to communicate with the vision side, please complete the robot’s Master-control communication configuration. For details, refer to the section Master-control Communication.

Pre-calibration Configuration

If the robot uses Standard Interface to communicate with the vision side, complete Pre-calibration Configuration (Standard Interface).

If the robot uses Master-control to communicate with the vision side, complete Pre-calibration Configuration (Master-control).

Pre-calibration Configuration (Standard Interface)

If Standard Interface is used to communicate with the robot, follow these steps:

  1. Open Mech-Vision, and click the Camera Calibration (Standard) button in the toolbar. The Configuration before Calibration window will be prompted.

  2. In the Select how to calibrate window, select the New calibration radio button, and then click the Next button.

    calibration calib preset new
  3. In the Select calibration task window, select Hand-eye calibration for listed robot from the drop-down list box, click the Select robot model button to select the robot model used by the project, and then click the Next button.

    calibration calib preset select robot
  4. In the Select camera setup window, select the Eye to hand radio button, and then click the Next button.

    calibration calib preset eth
  5. In the Calibration method and robot control window, select Automatic and Standard Interface, and then click the Next button.

    calibration auto calib preset auto standardinterface
  6. In the Interface Settings window, set parameters Protocol and Host IP address, and then click the Start interface service button. The button will turn into Waiting for the robot to connect...

    calibration auto calib preset auto start interface
    In the preceding figure, TCP server and Hex (Little-endian) are only the Protocol setting example of the ABB robot. The protocol settings of other robot brands are different. The software will automatically set this parameter and you just need to keep the default setting.
  7. On the robot teach pendant, select the automatic calibration program, teach the starting point and run the program. For details on the calibration programs of different robots, refer to the section Standard Interface Communication. After the program is started, log message "Entering the calibration process, please start the calibration in Mech-Vision" will be printed in the console log panel of Mech-Vision.

  8. Return to Mech-Vision, confirm that "Connected" status message is displayed in the Connect the robot area, and click the Calibrate button. The Calibration (Eye to Hand) window will be prompted.

Pre-calibration Configuration (Master-control)

If Master-control is used to communicate with the robot, follow these steps:

  1. Open Mech-Vision, and click the Camera Calibration (Standard) button in the toolbar. The Configuration before Calibration window will be prompted.

  2. In the Select how to calibrate window, select the New calibration radio button, and then click the Next button.

    calibration calib preset new
  3. In the Select calibration task window, select Hand-eye calibration for listed robot from the drop-down list box, click the Select robot model button to select the robot model used by the project, and then click the Next button.

    calibration calib preset select robot
  4. In the Select camera setup window, select the Eye to hand radio button, and then click the Next button.

    calibration calib preset eth
  5. In the Calibration method and robot control window, select Automatic and Master-control, and then click the Next button.

    calibration auto calib preset auto mastercontrol
  6. In the prompted window, set the Robot IP address parameter.

    calibration auto calib preset auto mastercontrol robotip
  7. On the robot teach pendant, select and run the Master-control program. For the instructions for different robots, refer to the section Master-Control Communication.

  8. Return to Mech-Vision, and click the Connect the robot button in the Connect the robot area. The button will turn into Waiting for the robot to connect...

    calibration auto calib preset auto connect robot
  9. Wait until the "Connected" status message is displayed in the Connect the robot area, and then click the Calibrate button. The Calibration (Eye to Hand) window will be prompted.

Till now, you have completed the pre-calibration configuration and can start the calibration procedure.

Calibration Procedure

Connect to the Camera

  1. In the Connect to camera step, select the camera to connect in the Detected cameras list, and then click the calibration icon 1 button or double-click the camera entry to connect to it.

    calibration auto connect camera auto
  2. After the camera is connected, click the Capture once or Capture live button.

    calibration auto image capture auto
  3. In the right Image viewer panel, ensure that the captured 2D image and depth map meet the calibration requirements and click the Next button on the bottom bar.

    If the captured image does not meet the calibration requirements, you need to open the Mech-Eye Viewer software to adjust the 2D and 3D exposure parameters and re-capture images.

Mount the Calibration Board

  1. In the Mount calibration board step, select the Standard radio button and select the calibration board model according to its model nameplate in the 1. Select calibration board type area.

    calibration auto select calib board auto
  2. Make sure that the calibration board has been placed to the plane of the workobject, and then click the Confirm button in the 2. Mount calibration board area.

  3. Confirm that the calibration board is in the center of the camera’s field of view (the red rectangle), and then click the Confirm button in the 3. Position calibration board into red rectangle area.

    calibration install calib board eth
  4. After all the operations related to the calibration board are completed, click the Next button on the bottom bar.

Check Intrinsic Parameters

  1. In the Check intrinsic parameters step, click the Start checking button.

    calibration auto check intri auto
  2. Confirm the results of the camera intrinsic parameter check.

    • If the camera intrinsic parameter check passes, click the OK button and then click the Next button on the bottom bar.

      calibration check intri pass
    • If the camera intrinsic parameter check fails, adjust detection parameters by drawing aid circles or manually adjusting the calibration circle detection parameters, and then click the Check again button.

Draw an Aid Circle

  1. To draw an aid circle, click the Draw an aid circle button.

  2. In the right Image viewer panel, right-click the calibration board image and clear the Fit to window checkbox, and press the Ctrl key and drag the roller to adjust the image to a suitable size.

  3. Move the mouse pointer to the cross center point of the calibration circle, press the left mouse button and make the aid circle completely include the calibration circle and then release it.

    calibration adjust blob
  4. Click the Check again button, and confirm that the camera intrinsic parameter check passes.

Manually Adjust Detection Parameters

To manually adjust the detection parameters, click Calibration circle detection parameters (advanced) and change the values of detection parameters accordingly.

If the calibration circles are still not detected, please adjust the camera settings according to the on-site operating conditions.

Set Robot Path

  1. In the Set robot path step, specify the Height span parameter.

    calibration auto set robot path eth

    The Height span parameter should be set according to the recommended working distance range of the camera and the size of the robot’s working space.

  2. If the Z axes of the camera and world frames are not parallel, click the Auto-align the path button.

  3. Set the Path type to ToHand, specify the pyramid parameters Height span, Num of layers, Bottom-layer dimensions X/Y, Top-layer dimensions X/Y, and Motion grid cols and rows per layer, specify the satellite parameter Rotation angle, and then click the Confirm button.

  4. Confirm that waypoints are reasonable and will not collide with obstacles in the right scene viewer panel.

    calibration auto set robot path eth view
  5. Click the Next button on the bottom bar.

Collect Images and Poses

  1. In the Collect images and poses step, select the Save images checkbox, and then click the Auto move robot along path and capture images button.

    calibration auto add image pose
  2. Read the safety window carefully and click the OK button.

    calibration safety tips
  3. Wait until the robot finishes moving along the preset path and the camera finishes capturing images on all waypoints. In the right Image viewer panel, all the captured images are displayed.

    • Please stay away from the robot working area to keep safe.

    • Clicking the Stop Robot button can exit the calibration process. But the robot will not stop until it finishes the current waypoint. In case of emergency, please tap the emergency stop button on the robot teach pendant to stop the robot immediately.

  4. After all images are captured, and click the OK button in the prompted window.

    calibration auto auto capture finished
  5. Confirm that the number of the currently recognized calibration circles meets the requirements, and then click the Next button on the bottom bar.

    If the requirements are not met, please manually move the robot (through the teach pendant or Mech-Viz) , select the Manually add more images checkbox, and click the Add an image and record flange pose button to add the calibration board image and enter the robot flange pose.

Calculate Camera Parameters

  1. In the Calculate camera parameters step, select the Calculate rotation and translation separately checkbox, and then click the Calculate camera extrinsic parameters button.

    calibration auto calculate extri params auto
  2. In the prompted window indicating calibration success, click the OK button.

    calibration auto confirm calib eth result
  1. View the calibration error of the point cloud in the right Point cloud viewer panel.

    The error point cloud shows the deviation between the calculated value and the actual value of the circles on the calibration board.
  2. Confirm that the calibration accuracy meets the project requirements.

    Find the error value with the 100% percentage to get the rough calibration accuracy. For example, the calibration accuracy in the following figure is within 2.5 mm.

    calibration error point cloud

    To enhance the calibration accuracy, please refer to the section Calibration Result Check and Analysis.

Validate and Save the Calibration Result

You can check calibration results roughly by inspecting the coincidence degree between the point cloud of the robot and the robot model in Scene Viewer. To do so, follow these steps:

  1. After calibration, move the robot arms into the FOV of the camera.

  2. In the Calculate camera parameters step, click the Calculate camera extrinsic parameters button. This operation will trigger the camera to capture images.

  3. Click Scene viewer to check the coincidence degree between the point cloud of the robot and the robot model.

    If the point cloud of the robot roughly coincides with the robot model, the calibration is successful.

    calibration reference coincidence degree
    1. Be aware that the robot simulation cannot match the real robot completely, and thus cannot be used to fine-tune the extrinsic parameters.

    2. Besides Scene viewer, you can also check the coincidence degree between the point cloud of the robot and the robot model in Mech-Viz.

  4. Click the Save button on the bottom bar. In the prompted Save Calibration Files dialog box, click the OK button. The camera calibration result will be automatically saved in the “calibration” directory of the project.

Till now, the calibration process is completed.

We Value Your Privacy

We use cookies to provide you with the best possible experience on our website. By continuing to use the site, you acknowledge that you agree to the use of cookies. If you decline, a single cookie will be used to ensure you're not tracked or remembered when you visit this website.