Automatic TCP setting?

I’ve come across TCP setting tools like this:

WireTank TCP Calibration

Aim Robotics TCP Calibration Tool

These tools have URCaps to run the process.

How do these tools work under the hood? On the surface it looks like the sensors provide input to the UR Controller. Is the actual TCP calculation done via script commands?


While I don’t know the details, using URscript to do the calculations would be definitely be and option using the pose_trans() method.
But depending on their implementation it would also be possible to use a python and/or c++ daemon to do the calculations instead.
It would even be possible to do the calculations in the java portion of the URCap by using the daemon only as a middle man between the URscript code and the java based installation node.

Each solution has their own upsides and downsides.

1 Like


I misunderstood what these tools do. It looks like they calculate XY and Z offsets relative to an EXISTING Tool Center Point. These appear to be well suited for calculating an offset when syringe tips are frequently changed.

If you’re trying to understand how the TCP measure wizard works, look into calculating the center of a sphere from 3 or 4 points (See attached)
Forum Post.pdf (911.0 KB)