Offline Setup

It is recommended to create a virtual environment of the robot setup in RoboDK (offline setup) before starting to take measurements. This section explains how to prepare the RoboDK station offline. This can be done before having the robot and the tracker, only using a computer with RoboDK installed.

RoboDK calibration setup examples can be downloaded from the following folder:

Skip this section if you already have an offline cell. The reference frames and tool frames can be estimated approximately. A sample station is shown in the following picture.

Robot Calibration LaserTracker - Image 2

RoboDK station

A RoboDK station is where the virtual environment station and calibration information is stored. The station is saved as an RDK file. Follow the next steps to create a robot station for robot calibration from scratch (video preview:

1.Select the robot:

a.Select FileOpen online library. The online library will show up in RoboDK.

b.Use the filters to find your robot by brand, payload, ...

c.Select Download and the robot should automatically appear in the station.

d.Alternatively, download the robot files (.robot file extension) separately from and open them with RoboDK.

Robot Calibration LaserTracker - Image 3

2.Model the virtual station

a.Add reference frames by selecting ProgramAdd Reference Frame.

i.One “Measurements reference” frame must be added with respect to the robot base frame.

ii.One “Tracker reference” must be added with respect to the “Measurements reference” that we just added.

iii.One additional “Tool reference” can be added with respect to the “Measurements reference” frame to visualize the position of the tool seen by the tracker.

Tip 1: Drag and drop items in the tree to reconstruct the dependency that exists in the real world. For example, the tracker reference must be placed with respect to the “Measurements Reference”.

Tip 2: Approximately move any reference frames or tool frames by holding the ALT key and SHIFT+ALT key respectively. Alternatively, double click the reference frame and input the right coordinates.

Tip 3: Rename any object using the F2 key on the item tree.

b.Add the tool object (STL, IGES and STEP files are supported formats) and drag and drop it to the robot (inside the item tree), this will convert the object into a tool. More information available here.

Robot Calibration LaserTracker - Image 4Robot Calibration LaserTracker - Image 5

Optional: Select ProgramAdd empty tool to add any TCP’s that we want to visualize in the station (to check for collisions or other). To set an approximate value of the TCP:

i.Double click the new tool.

ii.Set an approximate TCP value. You can copy/paste the 6 values at once using the two buttons at the right.

iii.It is recommended to rename the TCPs used for calibration with the name “CalibTool id”, where id is the calibration target number.

Robot Calibration LaserTracker - Image 6

c.Add other 3D CAD files (STL, IGES, STEP, SLD, ...) to model the virtual station using the menu FileOpen… Alternatively, drag and drop files to RoboDK’s main window.

Tip 1: Import the 3D files of the measurement workspace and name it Workspace so that the robot measurements are generated inside the workspace of the tracker. Alternatively, set the workspace invisible if we do not want to constrain the measurements inside the tracker workspace. More information is available in the next section.

Tip 2: It is possible to select CTRL+ALT+Shift+P to block exporting confidential 3D files that have been imported in RoboDK.

3.Add the calibration module in the station:

a.Select the menu UtilitiesRobot Calibration.

b.Select Laser tracker.

Robot Calibration LaserTracker - Image 7

Then, the following window will appear.

Robot Calibration LaserTracker - Image 8

This window can be closed for now. We can open it anytime by double clicking the Robot calibration station item.

Robot Calibration LaserTracker - Image 9

4.Save the station.

a.Select FileSave station.

b.Provide a folder and a file name.

c.Select save. A new RDK file will be generated (RoboDK station file).

We can recover the station modifications anytime by opening the RDK file (double click the file on Windows).

It is important to double check the following details:

1.The calibration tools are named “CalibTool id” and the id are numbers start at 1 (if there are 3 calibration tools we must have “CalibTool 1”, “CalibTool 2” and “CalibTool 3”.

2.The Measurements reference frame directly depends on the robot base.

For now, we can use an estimate of this reference frame.

3.The Tracker reference directly depends on the Measurements reference. The tracker reference must be an approximate position of the laser tracker with respect to the measurements reference.

4.The Robot calibration project is present in the station and all the measurements that we are planning to take are free of collision and visible by the laser tracker (select show for each group of measurements).

5.If we want to automatically check for collisions we must use the name tag “collision” in every object that we want to use to check collisions. It is recommended to use a tool around 25% bigger than the calibrated tool for collision checking to safely avoid collisions.

Generate calibration targets

There are four sets of measurements that are required to successfully accomplish robot calibration:

1.Base setup: six measurements (or more) moving axis 1 and 2 are required to place the calibration reference with respect to the robot. Select Show in the calibration settings window and the robot will move along the sequence.

2.Tool setup: seven or more measurements are required to calibrate the tool flange and the tool targets (moving axis 5 and 6). Select Show and the robot will move along the sequence.

3.Calibration measurements: 60 measurements or more are required to calibrate the robot. These measurements can be randomly placed in the robot workspace and free of collision with the surrounding objects.

4.Validation measurements (optional): as many measurements as desired can be used to validate the robot accuracy. These measurements are used only to validate the accuracy of the robot and not to calibrate the robot.

The first two sets of measurements are automatically generated by RoboDK. Select Show and the robot will follow the sequence (as shown in the following images). If the sequence needs to be changed, select Measure and export the calibration measurements as a CSV file by selecting Export data. This file can be edited using an Excel sheet and re-imported by clicking Import data.

The last two sets of measurements (calibration and validation) can be generated using the macro script called Robot Calibration LaserTracker - Image 10Create measurements. This macro script is automatically added to the station when we start the robot calibration project. Double click the macro to execute it. This macro is a Python program that guides the user to define the following settings:

oNumber of measurements: The number of measurements to generate. By default, 80 measurements are used because a minimum of 60 measurements is required for robot calibration.

oReference position: The reference position must be a position of the robot where the tool is facing the tracker with visible targets.

oJoint limits: The lower and upper joint limits must be provided.

oCartesian limits: We can provide Cartesian limits (X,Y,Z values) with respect to the robot reference frame.

The script automatically generates measurements where the tool is facing the tracker as well as respecting the joint and Cartesian constrains. A rotation of +/-180 deg around the tool is permitted around the direction that faces the tracker at the reference position. Furthermore, the sequence of joint movements is free of collision and inside the measurement workspace (if the workspace is set to be visible). The following image shows the summary that is presented to the user before the automatic sequence starts. It may take up to 5 minutes for the sequence to finish.

Robot Calibration LaserTracker - Image 11

If desired, we can modify the script by right clicking the Create measurements script and selecting Edit script, then, modify additional parameters of the algorithm. The script automatically saves the user input as station parameters. We can view, edit or delete these settings by right clicking the station and selecting Station parameters, as shown in the next image.

A new message will pop up once the algorithm finishes. We can select “Calibration” to use the 60 measurements for robot calibration. We can re-execute the same script to generate another set of measurements for validation. This step is optional but 80 measurements are recommended for validation purposes.

Robot Calibration LaserTracker - Image 12

Robot Calibration LaserTracker - Image 13

Finally, it is also possible to import configurations that have been selected manually by selecting Import data (inside the Measure menu). We can import a CSV or a TXT file as an Nx6 matrix, where N is the number of configurations.

Robot Calibration LaserTracker - Image 14