Basic Guide

Basic Guide

RoboDK is software for Simulation and Offline Programming. Offline Programming means that robot programs can be created, simulated and generated offline for a specific robot arm and robot controller.

Tip: When you press F1 from RoboDK, the Help topic related to the item currently selected or active is displayed.

This document is a basic guide to the RoboDK documentation. The RoboDK documentation is based on the Windows version of RoboDK. Mac, Linux and Android versions are also available.

A shortcut is created on your desktop when RoboDK is installed from the website. Double click the shortcut to start RoboDK.

The RoboDK window contains a Main Menu, a Toolbar, a Status Bar and the Main Screen. The Station Tree in the Main Screen contains all the items available in the station, such as robots, reference frames, tools, programs, etc. More information available in the Interface Section.

Select File Open to load one of the RoboDK station examples provided by default (RDK files). Alternatively, drag & drop a file to the RoboDK main screen to load it.

A library of industrial robots is available online or directly from the RoboDK application.

Throughout all RoboDK documentation, clicks on the screen are represented by the following icons:

Left click

Right click

Double click

3D Navigation

It is recommended to use a 3-button mouse to navigate in 3D. Alternatively, it is possible to use a combination of Ctrl, Alt and Shift keys with a simple mouse left click perform Pan, Rotate or Zoom motions:





Left click

Hold mid button

Hold right click

Move mouse wheel

Hold Ctrl to select more than
one object

Hold Ctrl + Alt

Hold Ctrl + Shift

Hold Shift


Tip: The default behavior for 3D mouse navigation can be changed in ToolsOptionsGeneral tabMouse 3D navigation.

Right click on the main screen to see the same 3D navigation commands.

Tip: Right click on the toolbar area and check View and Selection toolbar to display these commands in the toolbar:

Getting Started

The Getting Started section shows how to build a simple project offline for a robot painting application in RoboDK using a UR10 robot. The example provides a general overview of some of the key features of RoboDK for Simulation and Offline Programming, including:

o   How to Load a Robot from the  Online Library

o   How to  Add Reference Frames

o   How to  Load Objects

o   How to  Add Tools

o   How to  Add Targets

o   How to  Create Programs offline and simulate them

o   How to  Generate a program for the robot controller and select a post processor

o   How to  Export a simulation to share them as in 3D HTML or 3D PDF

This example is available in the RoboDK library by default as Tutorial-UR-Painting.rdk (located by default in C:/RoboDK/Library/).


Toolbar Menu

The Toolbar contains graphical icons that allow quick access to frequently used actions in the menu.

Tip: Select ToolsToolbar LayoutSet Default Toolbar to set up the default toolbar.

The following commands are available in the toolbar by default.

Load a new file (RoboDK RDK Station) or a supported file type (robot, tool, STEP, IGES, STL, …)

Open online library
Show the online library (robots, tools and sample objects)

Save Station
Save the RoboDK station (RDK file)

Undo the last command (Ctrl+Z)

Redo the last command (Ctrl+Y)

Add a reference frame
Reference frames allow placing objects with respect to each other

Add a new target
Robot targets record robot positions with respect to a reference frame or in joint coordinates

Fit All
Update the 3D view to display all items

Isometric View

Display the default 3D isometric view

Move reference Frames
Move a reference frame by dragging it on the screen (hold Alt)

Move TCP (robot tool)
Move a robot TCP by dragging it on the screen (hold Alt+Shift)

Check collisions
Activate or deactivate collision checking. More information available regarding collision checking in the Collisions section

Fast simulation
Accelerate the simulation speed (hold the space bar)

Pause simulation
The simulation can be resumed by pressing the space bar

Add Program
Add a new robot program for simulation and program generation

Add Python Program
Add a new Python macro

Move Joint Instruction
Add a new joint movement instruction

Move Linear Instruction
Add a new linear movement instruction

Export Simulation
Export a program or simulation as a 3D PDF or 3D HTML file. Example.

Note: More information about other commands in the Interface section.


The following list provides useful shortcuts and their equivalent buttons in the toolbar:



Move a reference frame



Move a TCP (tool)


Show this help guide



Rename item


Generate selected program(s)



Show/hide selected item(s)


Fit to selected item(s)



Load last file or RoboDK station



Show/hide text on screen



Make Reference frames bigger


Make Reference frames smaller



Show/hide robot workspace

Tip: Press the + key or – key multiple times to make the reference frames bigger or smaller respectively. Setting an appropriate size of the reference frames helps grabbing them properly when they are moved using the Alt key.

Reference Frames

A Reference Frame defines the location of an item with respect to another item with a given position and orientation. An item can be an object, a robot or another reference frame. All Offline Programming applications require defining a reference frame to locate the object with respect to a robot to update the simulation accordingly.

Drag & drop any reference frame or object within the Station Tree to define a specific relationship, such as the nested reference frame shown in the following image.

It is common to define the location of one or more reference frames with respect to the robot by touching 3 points. This allows placing objects in the virtual space. The procedure can be accomplished using the robot teach pendant or RoboDK (more information available in the Calibrate Reference Frame section).

Tip: Hold the Alt key to move reference frames with respect to each other. Alternatively, select the corresponding button in the toolbar: .

With RoboDK it is possible to manually enter the translation and rotation values, including different rotation orders of the Euler angles.

Note: The relationship of one reference frame with respect to another reference frame is also known as pose (position and orientation). A pose can be represented by the XYZ position and Euler angles for the orientation, by the XYZ position and Quaternion values or by a 4x4 matrix.

By default, RoboDK displays the relationship as the XYZ position and the Euler angles in the XYZ format. This means the rotation is made in the following order:

1.    First: a rotation is made around the X axis (light blue case)

2.    Second: a rotation is made around the static Y axis (pink case)

3.    Third: a rotation is made around the static Z axis (yellow case).

Fanuc and Motoman controllers use the previously described format, however, other robot manufacturers handle the rotation order in a different way.

Note: RoboDK automatically selects the right format for each robot.

It is possible to select among different orientation formats from the dropdown list of the reference frame details window (double click a reference frame).

Tip: When a program is generated, RoboDK will automatically generate the correct orientation values required by your robot controller (using a post processor).

For example, Staubli robots use the XY’Z’’ order, or KUKA and Nachi robots use ZY’X’’. On the other hand, ABB controllers use Quaternion values, which require 4 values to define the rotation:

It is also possible to manually enter a customized format. For example, the following command is displayed when the Custom option is selected:

Tip: Select the buttons on the right to copy/paste the values from/to an array of values or as a 4x4 pose. It is also possible to invert a transformation (pose inverse) or reset it (set the identity).

Note: Select the default Euler orientation in the Options menu: Select Tools-Options-General tab-Default Euler Angles mode.


Set Default Settings

Select ToolsOptions and select Set Default Settings to set the default settings. More information available in the Options Menu Section.

Select ToolsLanguage and select English to change the language to English.

Select ToolsToolbar LayoutSet Default Toolbar to set up the default toolbar.

Select ToolsOptionsOtherSet default Python Settings to set up the default Python settings and copy the robolink and robodk modules in the Python path. More information in the RoboDK API section.

Important: RoboDK requires updated graphic card drivers with support for OpenGL v3.2 or later.


Having trouble starting RoboDK?

RoboDK might not start when using a Remote Desktop connection or if you are running RoboDK on a virtual PC. To solve this problem, start RoboDK by double clicking the following file:


Starting RoboDK with this command does not require a graphic card as it uses a software emulated OpenGL. This solves any problems when running RoboDK using a Remote Desktop connection or a Virtual connection.