Programación Paralela y Computación de Altas
Prestaciones
Departamento de Informática y Sistemas
Control de Plataformas de Stewart y programación en
Raspberry Pi
Murcia, Octubre 2016
Agenda
1. Motivación
2. Conceptos matemáticos
3. Descripción del problema
4. Metodología
5. Raspberry Pi
6. Otras opciones de paralelismo con Pi
3
4
6
8
(1 diap.)
(2 diap.)
(2 diap.)
(3 diap.)
11
(3 diap.)
14
(1 diap.)
2
Motivación
• Se ha identificado un problema en robótica que requiere un alto
coste computacional para su resolución
• En concreto se trata de modelar una Plataforma de Stewart (un
tipo de robot manipulador paralelo)
• Se controlan los 6 grados de libertad, tres de posición (x y z) y
tres de orientación (θ ψ ϕ), de una parte del mecanismo, en
concreto el terminal
• Se usan en la simulación de sistemas
mecánicos, como por ejemplo:
o Barcos
o Aviones
o Helicópteros
3
Conceptos matemáticos utilizados
• Imprescindibles: el álgebra lineal y los sistemas de coordenadas
espaciales, y sus transformaciones
• Se debe poder:
o Expresar la situación de los cuerpos del robot, los unos
respecto a los otros
o Especificar la situación que debe tomar el sistema de
coordenadas del terminal, así como su velocidad
• Cinemática directa e inversa:
modelos matemáticos para
calcular la relación entre la
posición de los actuadores y
el elemento final, y viceversa
4
Conceptos matemáticos utilizados
• Ej. Cinemática directa:
• Todas las coordenadas son referenciadas respecto a la base
• La configuración mecánica (actuadores y bielas) determina:
o Las ecuaciones de traslación y rotación
o Las ecuaciones de restricción (p.e. posiciones máximas
alcanzables según la longitud de los elementos)
o Que pueden aportar soluciones múltiples, Ej:
5
Descripción del problema
• Se deben resolver los sistemas de ecuaciones planteadas
• Nuestro robot está formado por 6 brazos, cada uno con un
actuador rotativo y una biela. Empleando notación matricial:
o Las ecuaciones del terminal se pueden expresar como
matrices de 12x12
o Las ecuaciones de las manivelas se pueden expresar como
matrices de 18x18
• Se usa un método iterativo obteniendo pequeños Δ que se
suman a la posición actual, hasta obtener un error menor a un
valor prefijado. El caso de no convergencia es controlado por
un tiempo límite de ejecución
• Primero se calcula el terminal, y luego los brazos, que no
Comentarios de: Programación Paralela y Computación de Altas Prestaciones (0)
No hay comentarios