Aclaración real get actual tcp pose - get actual joint position

Hola es mi primer programa real de robot, una pregunta básica que no comprendo

Tengo el siguiente código script, un punto fijo llamado PuntoRefer, dos variables cogen el valor de ese punto con diferentes comando.

Al visualizar el valor de estas dos variables no entiendo bien la transformación.
get actual joint position nos envía x,y,z en que unidades ??? veo que no son metros, rx,ry,rz en radianes
get actual tcp pose nos envía la posición en función de coordenadas base x,y,z en metros y rx,ry,rz en que unidades ???

No comprendo la transformación, si por ejemplo -0.522 son 522 milímetros como obtiene -0.459 la función get actual joint position

Otra cosa en un script cuando realizo movej se dan los valores en radianes, pero si quiero que el centro de coordenadas de ese punto sea el de la herramienta en vez de la base o otro creado en el programa, como se lo digo?

Muchas Gracias

get_actual_joint_positions() no te devuelve la posición en formato cartesiano, si no la posición de cada una de las articulaciones, que en los UR son siempre manipuladores de 6 gl, por eso tienes un vector de 6 elementos.
La transformación de una posición en get_actual_joint_positions() a get_actual_tcp_pose() es una transformación de espacio angular a espacio cartesiano, basado en la física de la cinemática directa (lo puedes buscar en Google, y hay vídeos que lo explican en detalle)
Para distinguirlos en el código, puedes ver que las posiciones anguales son variables tipo vector [], mientras que las posiciones cartesianas son variables tipo pose p[]
Creo que la función movej se puede usar con ambos formatos.

Muchas Gracias por la aclaración

Lo que he hecho es no utilizar las lecturas angulares que nos da get actual joint positions, utilizo la posición tcp de la función get actual tcp pose, pero he descubierto que para que un movej entienda esa posición le tenemos que hacer un get inverse kin a la variable que almacena esa posición, esto funciona bien.

global PuntoRefer = p[-0.4,-0.2,0.68,2,-0.2,2.18]

movej(get_inverse_kin(PuntoRefer),a=1.4, v=1.05,t=0, r=0)

Sino ponemos el get inverse kin el robot va a otras coordenadas en ocasiones inalcanzables.

cgs muchas gracias al final le cogeré la marcha

Un punto que no he descubierto todavía es, si quiero trabajar un punto en función de la herramienta en vez de la base como se lo digo por script.

Un saludo