Manual robot-camera Calibration

Before controlling the robot to follow a detected object, it is required to know the position and orientation (pose) between the robot and the camera.

To not waste much time on this task, let's perform a manual calibration.

It is important to know that this manual calibration is far for being accurate, but for the demonstration purpose, a manual calibration is more than suitable.

Configuration & Installation:

  • robot: UR10e
  • camera: Intel RealSense D435 (RGB-D camera)
  • Install the External Control URCap on your UR10e controller. See this post to further instruction on how to do it.

  • Clone this repository and install every required dependency. Every step of this calibration will work on top of this repository. See the ReadMe of it, or see this post for further instructions.

Performing manual calibration:

  1. Using the Free Drive mode on the UR10e controller Teach Pendant, move the TCP (tool center point) to the RealSense camera mass center:

     
  2. Run roslaunch ur_robot_driver ur10e_bringup.launch robot_ip:=192.168.56.2

  3. Run the external control program on the teach pendant:

    Click on Program + URCaps + External Control + Press "play"

    tp5

    At this point, you should get the message "Robot connected to reverse interface. Ready to receive control commands." printed out on your terminal window.

  4. Run rosrun tf tf_echo /base_link /tool0_controller

    You will see the Translation and Rotation (in quaternions and rpy) Values:



  5. Copy the values of X Y Z (translation) and the values R P Y (radians) and paste them on catkin_ws/src/larcc_interface/ur_description/urdf/ur10e.xacro
     
    Create a <origin> section inside the <xacro: realsense2_camera> section, as follows:
     
    <origin xyz="X Y Z" rpy="R P+{pi} Y"/> 

    You should add pi (3.14159) to the second rotation value (P), otherwise it won't work!

    Here is an example:
     

     In this case, 3.30 = 0.188 + pi


    That is it! The UR10e is calibrated with the RealSense RGB-D camera. Now we can work on the object tracking and following.




     

Comments

Popular posts from this blog

Real-time UR10e following a tracked object

RGB-D tracking + UR10e following & picking/placing

RGB-D tracking (ViSP/ROS) - 2nd demo