Skip to content

Get Output Int Register

SUMMARY

Get Output Int Register reads the current value of an output integer register on the robot controller. These registers are part of the UR RTDE interface and provide a general-purpose integer communication channel between the robot program and external systems.

Valid register IDs are in the lower range (18–22) or upper range (42–46).

SUPPORTED ROBOTS

This skill is currently supported on Universal Robots only. Calling this method on other robot brands will raise a NotImplementedError.

The Skill

python
value = robot.get_output_int_register(output_id=18)

The Code

Example: Read an Output Integer Register

Connect to the robot, read register 18, and log its value.

python
from loguru import logger
from telekinesis.synapse.robots.manipulators import universal_robots

robot_ip = "192.168.1.2"  # replace with your robot's IP

robot = universal_robots.UniversalRobotsUR10E()
# Connect
robot.connect(ip=robot_ip)

val = robot.get_output_int_register(18)
logger.info(f"Output int register 18: {val}")

# Disconnect
robot.disconnect()

The Explanation of the Code

get_output_int_register reads the integer value stored in the specified RTDE output integer register. These registers are written by the URScript program running on the controller and read by external RTDE clients. They are commonly used to communicate robot state flags and counters to an external supervisor.

How to Tune the Parameters

ParameterTypeDefaultDescription
output_idintRTDE output integer register ID. Valid values: 18–22 (lower range) or 42–46 (upper range).

Return Value

TypeDescription
intCurrent integer value stored in the specified output register.

Where to Use the Skill

  • Robot-to-supervisor communication — Read state flags or counters written by a URScript program
  • Synchronization — Use integer registers as handshake signals between the robot program and Python

When Not to Use the Skill

Do not use Get Output Int Register when: