Otras representaciones para la orientación en 3D

MT3006 - Robótica 1

¿Por qué no es suficiente con los ángulos de Euler?

Ejemplo
Ejemplo
Ejemplo
se pierde un grado de libertad
Singularidades y el gimbal lock
Singularidades y el gimbal lock
se requiere la otra interpretación del teorema de rotación de Euler
Segunda interpretación
eje-ángulo
cuaterniones unitarios

Representación eje-ángulo

vector unitario del eje de rotación
magnitud de la rotación
% Robotics Toolbox
[theta, w_hat] = tr2angvec(T)
[theta, w_hat] = tr2angvec(R)
T = angvec2tr(theta, w_hat)
R = angvec2r(theta, w_hat)
Representación eje-ángulo

vector unitario del eje de rotación
magnitud de la rotación
% Robotics System Toolbox
w = rotm2axang(R)
R = axang2rotm(w)
Representación eje-ángulo

vector unitario del eje de rotación
magnitud de la rotación
Representación eje-ángulo

vector unitario del eje de rotación
magnitud de la rotación
Representación eje-ángulo

vector unitario del eje de rotación
magnitud de la rotación
¿Qué es todo esto?
vector que representa al eje de rotación de \(\{B\}\) con respecto de \(\{A\}\), pero representado como un vector en el marco de referencia \(\{A\}\)
vector que representa al eje de rotación de \(\{B\}\) con respecto de \(\{A\}\), pero representado como un vector en el marco de referencia \(\{A\}\)
vector que representa al eje de rotación de \(\{B\}\) con respecto de \(\{A\}\), pero representado como un vector en el marco de referencia \(\{A\}\)
???


fijo

fijo

fijo

fijo
\(\mathbf{w}, \mathbf{x} \in \mathbb{R}^3\), entonces \(\mathcal{S}\) representa al operador anti-simétrico (skew) tal que
% Robotics Toolbox
S = skew(w)
w = vex(S) % operador inverso
el objeto \(e^\mathbf{A}\) representa a la exponencial de una matriz
eA = expm(A)
el cual es considerablemente complicado de calcular analíticamente*
*excepto para matrices de rotación, en donde puede emplearse la fórmula de Rodrigues
bajo esta definición de la exponencial de una matriz, puede encontrarse el logaritmo de una matriz de rotación como
bajo esta definición de la exponencial de una matriz, puede encontrarse el logaritmo de una matriz de rotación como
seguimos teniendo inconvenientes
Cuaterniones unitarios
% Robotics Toolbox
Q = UnitQuaternion(T)
Q = UnitQuaternion(R)
T = Q.T
R = Q.R
% Robotics System Toolbox
Q = rotm2quat(R)
R = quat2rotm(Q)
norma unitaria
% Robotics Toolbox
Q = UnitQuaternion(T)
Q = UnitQuaternion(R)
T = Q.T
R = Q.R
% Robotics System Toolbox
Q = rotm2quat(R)
R = quat2rotm(Q)
norma unitaria
fáciles de normalizar
a pesar de esto, los cuaterniones unitarios sí pueden operarse (eficientemente) sin tener que transformase a matrices de rotación
si se tiene que \( \mathcal{Q}_1 \sim \mathbf{R}_1, \ \mathcal{Q}_2 \sim \mathbf{R}_2\) y \( \mathcal{Q}_3 \sim \mathbf{R}_3=\mathbf{R}_1\mathbf{R}_2\) entonces
si se tiene que \( \mathcal{Q}_1 \sim \mathbf{R}_1, \ \mathcal{Q}_2 \sim \mathbf{R}_2\) y \( \mathcal{Q}_3 \sim \mathbf{R}_3=\mathbf{R}_1\mathbf{R}_2\) entonces
si se tiene que \( \mathcal{Q}_1 \sim \mathbf{R}_1, \ \mathcal{Q}_2 \sim \mathbf{R}_2\) y \( \mathcal{Q}_3 \sim \mathbf{R}_3=\mathbf{R}_1\mathbf{R}_2\) entonces
si se tiene que \( \mathcal{Q}_1 \sim \mathbf{R}_1, \ \mathcal{Q}_2 \sim \mathbf{R}_2\) y \( \mathcal{Q}_3 \sim \mathbf{R}_3=\mathbf{R}_1\mathbf{R}_2\) entonces
si se tiene que \( \mathcal{Q}_1 \sim \mathbf{R}_1, \ \mathcal{Q}_2 \sim \mathbf{R}_2\) y \( \mathcal{Q}_3 \sim \mathbf{R}_3=\mathbf{R}_1\mathbf{R}_2\) entonces
¿Limitantes?
los cuaterniones pierden toda interpretación intuitiva
En resumen
Representación | Composición | Memoria | Numérico | Intuición |
---|---|---|---|---|
|
9 | |||
|
4 | N/A | ||
|
3 | N/A | ||
|
4 |
MT3005 - Lecture 3 (2025)
By Miguel Enrique Zea Arenales
MT3005 - Lecture 3 (2025)
- 131