# RoboDK (Pro)

{% hint style="warning" %}
Please note that this interface is only included in realvirtual.io Professional
{% endhint %}

[RoboDK](https://robodk.com/) is a powerful and cost-effective simulator for industrial robots and robot programming. No programming skills are required with RoboDK’s intuitive interface. You can easily program any robot offline with just a few clicks and [RoboDK](https://robodk.com/) has an extensive library with over 500 robot arms.

<figure><img src="/files/FZILCVw1pDZC1Yglz3fW" alt=""><figcaption></figcaption></figure>

With the RoboDK Interface, you can use [RoboDK](https://robodk.com/) to control the robots in your realvirtual.io models and you can connect the RobotIO's to realvirtual.io behavior models. By modeling the full production line with realvirtual.io and by connecting the real PLCs you can simulate and commission big robot cells including all PLCs and HMIs.

Here is a Youtube video showing the RoboDK interface in action:\
<https://youtu.be/C2ZngS9Lhck>

RoboDK can be tested for free. You can download RoboDK from this website:\
<https://robodk.com/download>

### RoboDK Demo scene

realvirtual.io includes a Demo scene with a RoboDK interface. You can find the Demo scene under Assets/game4automation/Scenes/DemoRoboDK or you can find the demo in the realvirtual.io menu under additional demos.

<figure><img src="/files/rdYicedckyYe4M09WcK5" alt=""><figcaption></figcaption></figure>

If RoboDK is installed on your computer RoboDK will be started automatically as soon as the Demo scene is started. The RoboDK file is loaded into RoboDK automatically.

### Using the RoboDK Interface

#### Setup

To use RoboDK to control your robots in realvirtual.io you always need to configure in RoboDK the same robot as in realvirtual.io. The kinematic of the realvirtual.io robot needs to be prepared as usual. Each robot axis needs to have a [Drive](/components-and-scripts/motion/drive.md) connected to the Geometry and the kinematic hierarchy needs to be prepared.

Please check the example in the demo scene or our Youtube tutorial about defining robot kinematics: <https://youtu.be/AENF87zd56U>

The RoboDK interface must be positioned in a parent Gameobject of the Robot. For connecting the RoboDK interface with the robot kinematic the 6 Robot Axis needs to be assigned to the RoboDK interface, starting with the first base axis. In Unity editor mode all robot axis must be positioned in the zero position of the robot controller and RoboDK.

<div align="left"><figure><img src="/files/UbBiaZgZB0JC1bsW8DCW" alt=""><figcaption></figcaption></figure></div>

The RoboDK application needs to be referenced by RoboDK Application as well as the RoboDK file. You can create a new RoboDK file by manually starting RoboDK or by pushing *Open RoboDK file* in the RoboDK interface.

#### RobotIOs

Inside RoboDK Input and Output signals can be defined. These signals can be used to wait for example for a start signal, to open the gripper of the robot or for sending other information about the robot status.

Inside RoboDK these signals can be defined under Options>Station.

In your realvirtual.io scene, you can import these signals by pushing the Button *Import Robot IOs*. For all signals inside RoboDK the realvirtual.io signals are created and you can use these signals in your PLC or Behavior scripts. This is how it is also possible to connect RoboDK with the PLCs inputs and outputs of realvirtual.io.

### Targets

By pushing on *Get Targets* you can get all RoboDK targets and show them inside unity. The Target Prefab must be connected to the RoboDK interface. Currently, the Targets must be defined inside RoboDK, for example by teaching the RoboDK during Unity simulation mode. In future releases, we plan also send back to RoboDK the target positions if they are changed inside Unity.

\
\
\
\
\
\
© 2025 realvirtual GmbH [https://realvirtual.io](https://realvirtual.io/) - All rights reserved. No part of this publication may be reproduced, distributed, or transmitted in any form or by any means, including printing, saving, photocopying, recording, or other electronic or mechanical methods, without the prior written permission of the publisher.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://doc.realvirtual.io/components-and-scripts/interfaces/robodk.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
