real ur5 end effector orientation does not match waypoint orientation given

I am trying to control a real ur5 with waypoints. Giving the ur5 waypoints positions works fine, but I am having trouble understanding how the resulting transformation with orientation works. I am using trac_ik as my kinematics solver.

Approximate starting pose of end effector (I don't have permission to post pictures unfortunately):

Position: [0.14, 0.07, 0.365]
Orientation: [0.27, 0.653, -0.27, 0.653]


After the asking the ur5 to move to the following waypoint:

wpose.position.z += 0.02
quas = quaternion_from_euler(0,0,0, 'ryzy')
wpose.orientation.x = quas[0]
wpose.orientation.y = quas[1]
wpose.orientation.z = quas[2]
wpose.orientation.w = quas[3]


The end effector moves to this pose:

Position: [0.14, 0.07, 0.375]
Orientation: [0.15, 0.36, -0.14, 0.909]


I don't understand why this is, I expect as converting euler angles (0,0,0) to quaternions should generate an orientation of [0, 0, 0, 1].

Can someone help me understand how to transform the end effector orientation correctly? Please let me know if you need any more information.

edit retag close merge delete

I meant what your move_group returns for getEndEffectorLink. Is it the same link you check in Rviz? What is the terminal output when you plan a motion? I assume you mean the TCP in the UR teach pendant is unchanged ("just the end of the wrist").