1
0
mirror of https://gitlab.com/obbart/universal_robots_ros_driver.git synced 2026-04-10 10:00:48 +02:00

Updated calibration instructions

This commit is contained in:
Lea Steffen
2019-09-25 13:14:31 +02:00
committed by Felix Mauch
parent 9af6389b52
commit 8c4532f29a
2 changed files with 44 additions and 39 deletions

View File

@@ -1,39 +1,49 @@
# ur_calibration
Package for extracting the factory calibration from a UR robot and change it such that it can be used by `ur_description` to gain a correct URDF
Package for extracting the factory calibration from a UR robot and changing it to be used by `ur_description` to gain a correct URDF model.
Each UR robot is calibrated inside the factory giving exact forward and inverse kinematics. To also
make use of this in ROS, you first have to extract the calibration information from the robot.
Though this step is not necessary, to control the robot using this driver, it is highly recommended
to do so, as end effector positions might be off in the magnitude of centimeters.
## Nodes
### calibration_correction
This node extracts calibration information directly from a robot, calculates the URDF correction and
saves it into a yaml file.
saves it into a .yaml file.
With the parameters explained below calibration will be saved inside
```bash
<output_package_name>/<subfolder>/<robot_name>_calibration.yaml
```
#### Example usage
```bash
rosrun ur_calibration calibration_correction _robot_ip:=192.168.56.101 _robot_name:=ur10_ideal _output_package_name:=ur_calibration
```
#### Parameters
* **"~subfolder_name"** (default: "etc")
#### Helper script
In the launch folder of the ur_calibration package is a helper script:
Given a package where the output should be saved, the calibration file will be saved in this
subfolder relative to the package root.
$ roslaunch ur_calibration calibration_correction.launch \
robot_ip:=<robot_ip> \
robot_name:=<robot_name> \
output_package_name:=ur_calibration \
subfolder_name:=etc
* **"~robot_ip"** (required)
For the parameter **<robot_ip>** insert the ip on which the ROS pc can reach the robot. The
**<robot_name>** is an arbitrary name you can give to the robot. It is recommended, to choose a unique
name that can be easily matched to the physical robot.
IP address of the robot. The robot has to be reachable with this ip from the machine running
this node.
As soon as you see the output
[ INFO] [1560953586.352160902]: Calibration correction done
* **"~robot_name"** (required)
you can exit the roslaunch by pressing `CTRL+C`.
#### Prerequisites for binary installation
In the example above, we use the **ur_calibration** package from this repository. This won't work,
if you use a binary installation of this driver. In that case please create a new ROS package
by going to your catkin_workspace's src folder and calling:
Arbitrary name that will be used for generating the calibration file's filename (see node
description).
catkin_create_pkg my_calibrations
* **"~output_package_name"** (required)
Package inside which the calibration data will be stored in. This package has to exist and has
to be writable. Otherwise execution will fail and calibration data won't be saved.
It is recommended to adapt the new package's *package.xml* with a meaningful description.