Skip to content

Get Joint Temperatures

SUMMARY

Get Joint Temperatures reads the motor temperature of every joint, returning values in degrees Celsius.

Use this skill to monitor thermal load and prevent overheating during prolonged or high-force operations.

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
temperatures = robot.get_joint_temperatures()

The Code

Example: Read and Log Joint Temperatures

Connect to the robot and read the current motor temperatures.

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)

temperatures = robot.get_joint_temperatures()
logger.success(f"Joint temperatures: {temperatures}")

# Disconnect
robot.disconnect()

The Explanation of the Code

get_joint_temperatures reads the joint_temperatures field from the RTDE data stream. Values are in degrees Celsius, ordered from base to wrist. Sustained temperatures above the manufacturer's rated limit may trigger thermal protection and a protective stop.

How to Tune the Parameters

This skill takes no input parameters.

Return Value

TypeDescription
list[float]Motor temperatures in °C, one value per joint, ordered base to wrist.

Where to Use the Skill

  • Thermal monitoring — Log temperatures during extended operations to detect overheating trends
  • Duty-cycle management — Trigger cooling breaks when any joint exceeds a temperature threshold
  • Health dashboards — Surface thermal state alongside other robot diagnostics in a monitoring UI

When Not to Use the Skill

Do not use Get Joint Temperatures when: