3. URinterfaces Message Library

Universal Robots defined a range of custom ROS2 message types. Intention is to efficiently pass robot state to external and internal client nodes.

URinterfaces is available as a ROS binary package and as source code that can be compiled in a ROS2 workspace.

3.1 Usage on robot

ROS docker images provided with URCap SDK should be used.

3.2 Usage off robot

Install the package by running:

sudo apt-get install ros-humble-urinterfaces

Alternatively, or if you require another version than the one being released, you can download the source code from GitHub, select a tag with minimum Polyscope version that should be supported. Compile like any other ROS 2 package using colcon.

3.3 Versioning and compatibility

Message types are released together with public releases. Each released PolyScope version will have a corresponding tag in the urinterfaces repository. For example, the tag v10.7 is the one that corresponds to the latest release of PolyScope 10.7.x.

Backwards compatibility will be maintained through all future versions.

Following example presents scenario where urinterfaces version 2.0.0 was released with public Polyscope release. Description in version tag will note minimum Polyscope version (ex. 10.5) that is needed. This library can be used with future Polyscope releases (10.1, 10.2, …).

Next example - incompatible release 3.0.0 released with future products (ex. Polyscope 12.0, ROS3) contains breaking changes, and message types from version 2.x.x are not guaranteed to work with future products beyond that point.

img