Universal Robots Forum

Accessing speed in tool space


I am working on a rather ‘pointy’ solution =)

Which makes me wanna know the tools Z axis speed, in order to limit it using the speed slider.

get_actual_tcp_speed() gives me the speed i the base X,Y,Z coordinates, is it possible to get the speed in the tool X,Y,Z coordinates?

Best regards JP

If you want to limit the speed from a Safety perspective, you should use the general safety settings, to limit the tool Speed setting there. That, from a safety POV is the only way to actually ensure, that the limit is not exceeded.

hello jbm

I can fully understand you, and I agree. But from a user POV having a safety limit under 100mm/s renders freedrive useless, as it becomes way to sensitive to emergency stops. And having freedrive (user friendlyness) is often a big selling point in our buisness. That is the only reason im having these thoughts.

Best Regards JP

You can always recalculate a set of coordinates from one coordinate system to another.

EDIT: Ok, turns out it is not so trivial as I thought. Nevermind what I wrote. :wink:
EDIT2: How about this:

def get_actual_tcp_speed_in_tcp():
    return pose_trans(pose_inv(get_actual_tcp_pose()), pose_add(get_actual_tcp_pose(), get_actual_tcp_speed()))