Trigger Protective Stop
SUMMARY
Trigger Protective Stop commands the robot controller to enter a protective stop — the same state triggered by collision or safety boundary violations. All motion halts immediately; the robot remains powered but frozen until the stop is acknowledged from the teach pendant.
SUPPORTED ROBOTS
This skill is currently supported on Universal Robots only. Calling this method on other robot brands will raise a NotImplementedError.
The Skill
robot.trigger_protective_stop()The Code
Example: Trigger a Protective Stop
Connect to the robot and trigger a protective stop programmatically.
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)
robot.trigger_protective_stop()
logger.success("Protective stop triggered.")
# Disconnect
robot.disconnect()The Explanation of the Code
trigger_protective_stop sends a stop command that puts the controller into a protective stop state. Unlike stop_cartesian_motion or stop_joint_motion, which decelerate motion gracefully, a protective stop halts the robot immediately regardless of speed. The robot remains powered and joint-locked. Recovery requires manually acknowledging the stop on the teach pendant before motion can resume. This method requires an active motion program to be running on the controller; calling it on an idle robot will raise an error.
How to Tune the Parameters
This skill takes no input parameters.
Return Value
| Return Type | Description |
|---|---|
None | Returns after the protective stop command is sent. |
Where to Use the Skill
- Safety-triggered application-level stops when a sensor or vision system detects an imminent collision.
- Testing protective stop recovery procedures in a controlled environment.
When Not to Use the Skill
Use graceful motion stop methods instead:
- Use Stop Cartesian Motion or Stop Joint Motion for graceful motion interruption that does not require teach-pendant recovery.

