11/28/2016 | Posted in:News

Nowadays robotic assembly solutions are becoming easier to put together due to standardized hardware interfaces and specific “designed for” add-ons. However, on a software level, the configuration and operation of these extensions is becoming more complex, due to the greater number of configuration options and extensions leaning more and more on software for their functionality (e.g. vision systems).

The URCaps (UR Capabilities) are hardware and/or software extensions for the Universal Robot system. The purpose of the URCaps is to seamlessly extend any Universal Robot with customized functionality. Using the URCap software platform, third parties can define graphical user interfaces that seamlessly integrate with the UR workflow and provide device drivers for their hardware.

The research done in Factory-in-a-day project has contributed to the following features in the URCaps software platform:


Figure 1: Custom installation node

  • Workflow integration – Third party developers can provide custom installation extensions (see Figure 1) and custom program nodes (see Figure 2). The installation stores information and provides an interface for a specific hardware setup, i.e. settings that are valid for any program made with this hardware configuration. Custom program nodes can be used to hide complicated behavior and provide a convenient graphical user interface for the end-customer.
  • Device drivers – Many hardware extensions require device drivers for the robot program to communicate with the hardware extension or an extension might require a daemon process to run on the robot. The URCaps software platform provides a generic way to install and run a daemon process.
  • Real-Time Data Exchange (RTDE) – Reliably exchange data between UR robot controller and third party process to implement hierarchical control loops or monitoring software. Request specific robot state data (incl. registers) to be output at a specified rate. Input custom data (e.g. setpoints) through registers and use it in your program. Streaming setup is on a per connection basis and watchdogs are available to guard the input connection status.

    Custom program node

    Figure 2: Custom program node

  • XML-RPC – XML encoded Remote Procedure Calls for URScript. The RPCs almost look like calling normal URScript functions, e.g. camera.get_next_object_coordinates(“bolt”, “M8”). However, RPCs are executed by a different software stack than the UR controller, which might be on a different computer and might have different software installed (e.g. image processing libraries). Any type used by URScript can be transmitted as an argument or received as return value. Due to their simple usage and flexibility the RPCs are great for configuration and service calls, e.g. to setup a device, do a computationally intensive calculation or combine URScript with other software packages.


The main benefits for third-party developers are:

  • Easy integration & standardization – Seamless integration with the “normal” PolyScope workflow. No more “hacking” around to integrate software.
  • Better support possibilities – The URCaps software platform provides among others explicit interfaces and versioning. Configuration mistakes can be detected during programming time and simple coding errors are eliminated.
  • Sales / Marketing platform – Well-made URCaps can be featured on the Universal Robots+ website. Distributors and integrators can present accessories, which run successfully at end users, to each other.
  • New opportunities – New opportunities for integrating products and services, and tapping into new information sources.

The main benefits for end-customers / integrators are:

  • Lower installation time – By providing easy-to-use graphical user interfaces the technical expertise required to install hardware is lowered. Furthermore, less time is needed for installation & setup, since the graphical interface can guide one through to process and provide real-time feedback.
  • Faster programming – By lowering the threshold for configuring and programming robots, URCaps create a potential for highly reconfigurable solutions in the production environment. The robot becomes a general purpose tool rather than a highly specialized setup.
  • Lower project risk – URCaps featured on the Universal Robots+ website have run successfully at end users and are dedicated to UR robots.
  • Shorter lead time to implement robot applications – Access to well-proven technology will help to realize new automation solutions quicker.

The following two videos are made in cooperation with On Robot ApS and Robotiq. The videos show how the lower installation time and faster programming for their end-customers has been achieved with the URCaps software platform. At the end of each video the benefits for the end-customer and for URCaps developers are listed separately.