Guía de práctica N° 3
Representaciones espaciales de posición
Sección: 20978-21012
Docente: Ing. DEL CARPIO RAMIREZ, SLIVER IVAN
Integrantes:
SANTOS SALAZAR, MANFRED DICKERS
TRINIDAD GUTARRA ,HELVERT MAZEL
Fecha: 09/09/24
Duración: 90 min
Instrucciones: Debe ingresar al laboratorio con guardapolvo. Antes de encender el robot o realizar la
ejecución de algÚn programa o movimiento del robot, el docente deberá dar el consentimiento para que se
proceda. Tener consigo siempre una laptop por grupo.
1. Propósito /Objetivo:
El estudiante reconoce los principales conceptos de representaciones espaciales de
posición y orientación.
2. Fundamento Teórico
2.1.1. Representación de la posición
Es común en robótica el uso de coordenadas cartesianas para localizar un
cuerpo en el espacio, sin embargo, es igualmente válido y el lector
encontrará varios autores que hacen uso de las coordenadas polares o
esféricas en sus desarrollos matemáticos.
Coordenadas cartesianas en 2 y 3 dimensiones
Coordenadas polares en 2 y 3 dimensiones
Coordenadas esféricas
Gestión
Curricular
Asignatura: Fundamentos de Robótica
2.1.2. Representación de la orientación
La orientación de un sólido en el espacio se puede especificar utilizando varios
sistemas de referencia. La orientación en el espacio tridimensional viene
definida por tres grados de libertad, luego será necesario un mínimo de tres
parámetros linealmente independientes.
En robótica es común el uso de matrices de rotación, debido a la comodidad
que proporciona el uso del álgebra matricial. La matriz de rotación es una matriz
3x3 ortogonal de cosenos directores que define la orientación del sistema
OUVW móvil respecto al sistema OXYZ fijo, y que tiene la forma siguiente:
Donde [ix jy kz] son los vectores unitarios del sistema OXYZ y [iu jv kw] los vectores
unitarios del sistema OUVW.
El ejemplo siguiente muestra la matriz de rotación del sistema OUVW que
ha girado un ángulo α respecto a OXYZ.
Rotación del sistema OUVW respecto al eje OX
3. Equipos, Materiales y Reactivos
a. Equipos
Ítem Equipo Característica Cantida
d
1 Computador Con software de diseño. 1
ucontinental.edu.pe |
2
Gestión
Curricular
Asignatura: Fundamentos de Robótica
4. Indicaciones/instrucciones:
a. Ingresar al laboratorio con guardapolvo y EPPS necesarias.
b. Conformar grupos de trabajo, compuestos por 3 personas.
c. Realizar los ejercicios según las indicaciones del docente.
5. Procedimientos:
1. Se tiene un vector posición dado por:
3
𝐵
𝑝 = [5]
2
con respecto al sistema {B}, y se tiene la matriz de rotación
1 0 0
𝐵
𝑅Æ = 0.6 0.8
[0 ]
0 −0. 0.6
a. Calcular el vector posición Ap con respecto al sistema {A}.
b. Usando el vector Ap obtenido y la matriz de rotación, encontrar Bp.
Verificar que es el resultado sea coherente.
2. Se tiene un sistema de referencia fijo {F}. A un sistema {A} inicialmente
ucontinental.edu.pe |
3
Gestión
Curricular
Asignatura
coincidente con {F} se le aplica una rotación de: θFundamentos de Robótica
grados alrededor del eje
z. Seguidamente, al sistema resultante se le aplica una rotación de -90
alrededor del eje x del sistema {F}. Finalmente, a este nuevo sistema se
le aplica una rotación de 90 alrededor del nuevo eje y. La matriz de
rotación resultante es
1 0.866 −0.5
[−1 0 0 ]
0 0.5 0.866
Usando esta matriz resultante, determinar el valor del ángulo θ.
3. Considerar la siguiente figura:
ucontinental.edu.pe |
4
Gestión
Curricular
a. Determinar las matrices de rotación 2RAsignatura
1, R3 y R1.: Fundamentos de Robótica
0 0
b. Usando la composición de las matrices anteriores encontrar 2R3 y verificar el
resultado por inspección (usando el significado de las columnas de la matriz).
ucontinental.edu.pe |
5
Gestión
Curricular
Asignatura: Fundamentos de Robótica
import numpy as np
def rotacion_x(angulo):
"""
Calcula la matriz de rotación en 3D alrededor del eje X.
Parámetros:
angulo (float): Ángulo de rotación en radianes.
Retorna:
numpy.ndarray: Matriz de rotación 3x3.
"""
return np.array([[1, 0, 0],
[0, np.cos(angulo), -np.sin(angulo)],
[0, np.sin(angulo), np.cos(angulo)]])
def rotacion_y(angulo):
"""
Calcula la matriz de rotación en 3D alrededor del eje Y.
Parámetros:
angulo (float): Ángulo de rotación en radianes.
Retorna:
numpy.ndarray: Matriz de rotación 3x3.
"""
return np.array([[np.cos(angulo), 0, np.sin(angulo)],
[0, 1, 0],
[-np.sin(angulo), 0, np.cos(angulo)]])
def rotacion_z(angulo):
"""
Calcula la matriz de rotación en 3D alrededor del eje Z.
Parámetros:
angulo (float): Ángulo de rotación en radianes.
Retorna:
numpy. ndarray: Matriz de rotación 3x3.
"""
return np. array([[np.cos(angulo), -np.sin(angulo), 0],
[np.sin(angulo), np.cos(angulo), 0],
[0, 0, 1]])
# Ejemplo de uso:
angulo = np.pi / 4 # Rotación de 45 grados
matriz_x = rotacion_x(angulo)
matriz_y = rotacion_y(angulo)
matriz_z = rotacion_z(angulo)
print("Matriz de rotación en X:\n", matriz_x)
print("Matriz de rotación en Y:\n", matriz_y)
print("Matriz de rotación en Z:\n", matriz_z)
Descripción de la programación.
ucontinental.edu.pe |
6
Gestión
Curricular
Asignatura: Fundamentos de Robótica
En la programación se emplea las coordenadas de movimiento proporcionas para la
multiplicación y poder hallar la matriz de rotación, como de la identidad atan2 que
nos ayuda para poder saber el Angulo de movimiento.
6. Resultados
Pudimos concluir con el modelo matemático como desarrollar la matriz de
rotación , con ayuda de un software de programación .
ucontinental.edu.pe |
7
Gestión
Curricular
Asignatura: Fundamentos de Robótica
7. Conclusiones
Se debe de poner los puntos de referencia y la dirección para poder tener una noción
de la matriz de rotación.
8. Sugerencias y /o recomendaciones
Tomar como referencia el modelo matemático de matrices para el desarrollo de la
matriz de rotación, como emplear un software de programación para facilitar el calculo
matemático
Referencias bibliográficas consultadas y/o enlaces recomendados
MELLADO, Martín (2012). “Robótica”, México: Limusa.
KUMAR, Subir (2010). “Introducción a la Robótica”, McGraw-Hill.
BARRIENTOS, Antonio (2007). “Fundamentos de Robótica”, McGraw-Hill
https://es.mathworks.com/products/robotics.html
https://es.mathworks.com/help/robotics/getting-started-with-robotics-system-
toolbox.html
ucontinental.edu.pe |
8