02-16-2021, 02:17 PM (This post was last modified: 02-16-2021, 02:20 PM by colinb83.)
When i tried to calibrate my TCP using RDK its giving me a strange result that is approx. 24mm out from the TCP figures i get when calibrating the TCP on the robot, and by using the Delcam long spike short spike method, this is on a KR240 2500 Prime running KRC4 8.6.6
these are the Figures i got from the RDK TCP calibration, and i have also attached the RDK station
You didn't attach your .rdk station to your post.
I'll take a look as soon as you do.
Could you also provide the values calibrated with the robot? (Btw, in the meantime, you can simply enter these values directly in RDk and skip RDK's tool calibration all together.)
I attached a sample project that goes a step further and recalculates all your tools based on tool lengths. This script is based on the TCP_Set_Relative_All.py example and it takes the tool length/offsets from the name.
We can help you customize it or create a simple UI so you can recalculate your tools.
I'll agree with the title of your post, it is strange.
I did take all the joint positions available in the "Define TCP" window of RoboDK and created targets with them.
They all line up perfectly with the TCP calculated by RoboDK.
The semi-transparent TCP you see is the one calculated in Delcam.
And according to the TCP errors graph, everything lines up well. (see picture)
If you use the Delcam values in the controller, does the jog rotation around a fixed cartesian position works?
Yes the figures from the robot controller, and from Delcam both line up on the real robot to move around a fixed cartesian, Its the RDK define TCP that is giving the strange values, i used the driver to pull the joint positions so it wasn't finger error on my part I shouldn't think
One quick test you can run would be the following.
If you bring the robot to a certain set of joint values, do the same in RDK, does the cartesian position of the flange (TOOL) match in both environments.
As the difference seems very small, I'm looking to see if the kinematic of the robot you are using in RDK and the one in the controller are the same.