Stop Cartesian Motion
SUMMARY
Stop Cartesian Motion decelerates the robot and brings any active Cartesian (TCP-linear) motion to a complete stop.
This skill is the safe and controlled way to interrupt a Cartesian move that was launched with asynchronous=True.
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.stop_cartesian_motion(stopping_speed=0.5)The Code
Example: Stop Cartesian Motion Mid-Move
Launch an asynchronous Cartesian move, wait briefly, then stop the robot before it reaches the target.
import time
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)
actual_pose = robot.get_cartesian_pose()
target_pose = actual_pose[:]
target_pose[2] += 0.15
robot.set_cartesian_pose(
cartesian_pose=target_pose,
speed=0.25,
acceleration=0.5,
asynchronous=True,
)
time.sleep(0.3)
robot.stop_cartesian_motion(stopping_speed=0.25)
logger.info("Stopped Cartesian motion.")
# Disconnect
robot.disconnect()The Explanation of the Code
stop_cartesian_motion sends a deceleration command to the robot controller, which smoothly brings any ongoing Cartesian move to a halt. The stopping_speed parameter controls how aggressively the robot decelerates — lower values yield gentler stops; higher values yield faster stops.
How to Tune the Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
stopping_speed | float | 0.5 | Deceleration target speed in m/s. Lower values produce gentler stops. |
Return Value
| Type | Description |
|---|---|
None | Returns after the stop command is sent. |
Where to Use the Skill
- Interrupt asynchronous Cartesian moves — Stop a
set_cartesian_poseorset_joint_position_in_cartesian_spacecall launched withasynchronous=True - Emergency path abort — Halt TCP motion immediately when a sensor or vision system detects an obstacle
When Not to Use the Skill
Do not use Stop Cartesian Motion when:
- The active motion is joint-interpolated — use Stop Joint Motion instead
- The motion is already synchronous — synchronous calls block until completion; there is no motion to interrupt

