I have a simple LabVIEW application where I connect to the TCP/IP address of the robot and open port 30012, which is supposedly just spits out data about the robot. I don’t need data more than 10Hz, so this is fine. From the TCP IP client interfaces located here (Remote Control Via TCP/IP - 16496) I can use the decoder ring to get the TCP Cartesian info. From here I can get the X, Y, Z position where it matches the teach pendant. But when I go for the Rx, Ry, and Rz angles, it looks like the values more often do not match. I can pull the TCP offset values, but am unsure if there is a transformation I need to do to get the values to match? If so can someone please help a brother out.
Pretty sure the pendant displays it in helpful Roll Pitch Yaw, while the interfaces spit out Axis Angles, and I don’t remember nearly enough about my 3D transformations to make any sense of Axis Angles. The official UR forum links to the wiki here:
Axis–angle representation - Wikipedia.
Which always does a nice job reminding me that I don’t understand anything.
Thanks Eric, your comment made me laugh.
Keep in mind that the same pose can be defined in a different Rx Ry Rz combinations. It does not mean that the pose is different, just it was represented by a different set (remember that angles 0 and 6.28 rad are the same, transformation -3.14 and +3.14 are the same and so on)
I am pretty sure that what you see is the “normalization” that UR does to make display values to look “smooth”. If you read RTDE values - they are raw and more stable/predictable.
I have taken 4 different data points to show my issues.
From Pendant From TCP/IP packet
| Rx | Ry | Rz | | Rx | Ry | Rz |
| 2.251 | -2.076 | -0.104 | | 2.251 | -2.07639 | -0.104081 |
| 2.5 | -2.313 | 0.641 | | -2.03248 | 1.88057 | -0.521 |
| 2.076 | -1.856 | 0.62 | | 2.0756 | -1.8562 | 0.62 |
| 2.731 | -2.448 | -1.14 | | -1.73664 | 1.55665 | 0.72507 |
|1.686 | -3.607 | -0.543| | -0.95924 | 2.03287 | 0.306248 |
It looks like the data matches then just kindof goes astray at some points? TCP offsets are all zero’ed out and I got the data from the Base View on the move tab.
No clue, how to read the correct value?
Please clarify what are those numbers.
You mention 4 data points, but I see 10 sets of RxRyRz.
Are you changing poses or all of them are the same pose?