Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Cinemática
Espacio directa Espacio
articular Cartesiano
𝐪 = (𝑞1 , ⋯ , 𝑞𝑛 ) 𝐱 = (𝑥, 𝑦, 𝑧, 𝛼, 𝛽, 𝛾)
• Cinemática directa
Dada una configuración articular (q), halla la posición/orientación (x) de alguna
parte del robot (ejm. efector final)
Dado 𝐪 = (𝑞1 , ⋯ , 𝑞𝑛 )
𝐪 = 𝑓 −1 (𝐱)
• Cinemática inversa
Halla la configuración articular (q) necesaria para alcanzar una posición /
orientación (x) de alguna parte del robot
Dado 0𝑇𝑛 (𝐪) o𝐱 = 𝑓(𝐪) para algún punto del robot (ejm. efector final)
Encontrar 𝐪 = (𝑞1 , ⋯ , 𝑞𝑛 )
Cinemática de un Robot de 2GDL
• Posición de un robot de 2 grados de libertad
𝐲
Variables Variables
𝑦 cartesianas articulares
𝑥 𝐪
𝑙2 𝐱= 𝑦 𝑞1
= 𝑞
𝑞2 2
𝑙1 Considerando
solo posición
𝑞1
𝑥 𝐱
𝑥 𝑙1 cos( 𝑞1 ) + 𝑙2 cos( 𝑞1 + 𝑞2 )
Cinemática = Dado q, existe
𝑦 𝑙1 sin( 𝑞1 ) + 𝑙2 sin( 𝑞1 + 𝑞2 ) 𝐱 = 𝑓(𝐪)
directa un único x
𝑞1 ?
Cinemática 𝑞2 = ? 𝐪 = 𝑓 −1 (𝐱) = ? Dado x, ¿existe
inversa (un único) q?
Espacio de trabajo asociado
• Posición de un robot de 2 grados de libertad y
𝐲
Si l1 > l2
l1+l2
𝑦
𝑥
𝐩= 𝑦
𝑙2
x
𝑙1 𝑞2
𝑞1
𝑥 𝐱
Espacio de trabajo
• Espacio de trabajo (l1 > l2) (Workspace: WS)
x
𝑙2
𝑙1 𝑞2
𝑞1
𝑥 𝐱
Posición y
orientación
donde:
Cinemática del manipulador Stanford
Calcular los ángulos para que la posición y orientación del
efector final sean:
Matriz
numérica
¡Sistema de ecuaciones
trigonométricas no lineales!
Cinemática Inversa
• Encontrar los ángulos
𝐪 = 𝑓 −1 (𝐱)
• Es un problema no lineal:
• ¿Existe una solución? Respuesta: espacio de
• ¿Existe una única solución o múltiples soluciones? trabajo, redundancia
• ¿Cómo solucionarlo?
Multiplicidad de Soluciones
pA Configuración inicial para pA: qA
qA
pB
Configuraciones nuevas para pB: q1, q2
q2
¿Es mejor escoger q1 o q2? q2
q1
n articulaciones: 𝐪 = (𝑞1 , ⋯ , 𝑞𝑛 )
• Ejemplo
- Robot de 6 gdl es redundante si solo se
considera la posición (no orientación)
- Robot de 6 gdl no es redundante si se
considera posición y orientación (m=6)
Consideraciones a tomar en cuenta
Multiplicidad de soluciones
• Solución numérica
• Es una solución iterativa (es un algoritmo)
• Es necesaria cuando el robot es siempre redundante (siempre habrá más grados de libertad
que los necesarios para una tarea)
• Más fácil de obtener (puede ser más lento)
• Métodos usuales: Newton, descenso del gradiente, etc.
Soluciones Geométricas
• Tratan de encontrar los valores articulares q1, q2, …, qn analizando la geometría
(en el plano o espacio) del robot
• No es una solución genérica → depende del robot
• Pasos útiles (depende del caso):
• Proyectar en el plano (y analizar en el plano)
• Realizar “trazos” para encontrar triángulos rectángulos (y obtener tangentes)
• Utilizar la regla del coseno:
c
𝑐 2 = 𝑎2 + 𝑏 2 − 2𝑎𝑏 cos 𝛼
α b
a
enfoque geométrico
𝑙 𝑙2
Solución 𝑞2
𝑙1
𝑞1
𝑥 𝐱
Soluciones Geométricas
• Ejemplo: 𝐲
enfoque geométrico
𝑙 𝑙2
Solución 𝑞2
𝑙1
Para q2 :
𝑞1
- Usando la ley de cosenos: 𝑥 𝐱
𝑞2 = atan2(𝑠2 , 𝑐2 ) 𝑞2 = atan2(𝑠2 , 𝑐2 )
Soluciones Algebraicas
• Tratan de encontrar los valores articulares q1, q2, …, qn manipulando
algebraicamente las ecuaciones de la cinemática directa
• Aplicable a robots con pocos grados de libertad
• Elementos útiles (depende del caso):
• Elevar al cuadrado para encontrar la identidad trigonométrica (permite eliminar algún
valor articular): sin2 𝜃 + cos𝜃 2 = 1
• Expandir expresiones del ángulo doble (a veces se pueden simplificar con otros sumandos)
sin( 𝛼 ± 𝛽) = sin 𝛼 cos 𝛽 ± sin 𝛽 cos 𝛼
cos( 𝛼 ± 𝛽) = cos 𝛼 cos 𝛽 ∓ sin 𝛼 sin 𝛽
• Encontrar el seno y coseno de forma matricial y reemplazarlo en atan2
𝑎 𝑏 cos 𝑞𝑖 𝑒 𝑞𝑖 = atan2(sin𝑞𝑖 , cos𝑞𝑖 )
= 𝑓
𝑐 𝑑 sin 𝑞𝑖
Soluciones Algebraicas
• Ejemplo 1
Encontrar la cinemática inversa para la posición de un robot RR usando el enfoque algebraico
Solución 𝐲
- Cinemática Directa: 𝑦
𝑥 = 𝑙1 c1 + 𝑙2 𝑐12 𝑦 = 𝑙1 s1 + 𝑙2 𝑠12
𝑙2
- Para q2 : 𝑙1
𝑞2
𝑞1
De x 2 l12 c12 l2 2 c12 2 2l1c1l2 c12
C.D. 𝑥 𝐱
y l s l2 s12 2l1s1l2 s12
2 2 2
1 1
2 2
Encontrar la cinemática inversa (𝜃1 , 𝑞2 , 𝜃3 ) de este robot como una función de los elementos de Tdes.
- Para 𝜃3 :
- Para 𝑞2 :
Solución por Transformaciones Inversas
• Realiza multiplicaciones (a la derecha o izquierda) por las inversas de
transformaciones homogéneas
• Busca obtener expresiones “más simples” (menos variables)
• Idea: (tratar de) encontrar expresiones más simples (términos que dependan de una sola
variable)
0
𝑇1 (𝑞1 )−1 𝑇𝑑𝑒𝑠 = 1𝑇2 (𝑞2 ) ⋯ 𝑛−1𝑇𝑛 (𝑞𝑛 )
0
𝑇1 (𝑞1 )−1 𝑇𝑑𝑒𝑠 𝑛−1𝑇𝑛 (𝑞𝑛 )−1 = 1𝑇2 (𝑞2 ) ⋯ 𝑛−2𝑇𝑛−1 (𝑞𝑛−1 )
Desacople Cinemático
• Condición suficiente (no necesaria) para la existencia de solución analítica para
un robot de 6 grados de libertad:
• El robot tiene 3 articulaciones de revolución consecutivas que se intersecan en un punto común (muñeca esférica), o
• El robot tiene 3 articulaciones de revolución consecutivas que son paralelas
d6
Posición y orientación
deseadas para el
efector final {6} con
respecto a la base
𝑝𝑥 − 𝑑6 𝑎𝑥
• Posición de la muñeca: 𝑝𝑤 = 𝑝𝑦 − 𝑑6 𝑎𝑦 Valor
𝑝𝑧 − 𝑑6 𝑎𝑧 numérico
Tiene la estructura de
ángulos de Euler ZYZ o ZXZ
<Robot Scara>
Cinemática Inversa
<Métodos de Solución>
• Solución analítica (exacta)
• Es preferida cuando puede ser hallada
• Métodos:
• Enfoque geométrico (robots específicos)
• Enfoque algebraico (resolución de sistemas en H)
• Desacople cinemático (robots con 6 GDL)
• Solución numérica (iterativa)
• Necesaria cuando hay redundancia
• Más fácil de obtener (¿ejecución más lenta?)
• Utiliza la matriz Jacobiana de la cinemática directa
• Métodos usuales: Newton, gradiente, etc.
Cinemática Inversa
<Enfoque Algebraico>
Cinemática Inversa
<Métodos de Solución>
• Solución analítica (exacta)
• Es preferida cuando puede ser hallada
• Métodos:
• Enfoque geométrico (robots específicos)
• Enfoque algebraico (resolución de sistemas en H)
• Desacople cinemático (robots con 6 GDL)
• Solución numérica (iterativa)
• Necesaria cuando hay redundancia
• Más fácil de obtener (¿ejecución más lenta?)
• Utiliza la matriz Jacobiana de la cinemática directa
• Métodos usuales: Newton, gradiente, etc.
Cinemática Inversa
<Desacople Cinemático - Posición>
Se desea encontrar O0c , R03 y R36 donde los datos son
𝑅60 (orientación total) y 𝑂60 (posición total)
0
𝑂60 = 𝑂𝑐0 + 𝑑6 𝑅60 0
1
𝑂𝑥 0
𝑂𝑐0 = 𝑂𝑦 − 𝑑6 𝑅60 0
𝑂𝑧 1
𝑋𝑐 𝑂𝑥 − 𝑑6 𝑟13
𝑌𝑐 = 𝑂𝑦 − 𝑑6 𝑟23 ⇒ 𝑞1 , 𝑞2 , 𝑞3
𝑍𝑐 𝑂𝑧 − 𝑑6 𝑟33
Cinemática Inversa
<Desacople Cinemático - Orientación>
𝑋𝑐
Al tener 𝑌𝑐 se puede obtener R03
𝑍𝑐
0 −1 0 1m
𝑅60 = −1 0 0 (orientación total)
0 0 −1
2
𝑂60 = 0 (posición total)
0.5 1m
𝑧0 𝑦0
𝑥0
Se pide calcular la cinemática inversa del manipulador propuesto, a través del desacople cinemático.
1 0 0
𝑅60 = 0 0 1 (orientación total)
0 −1 0
0
𝑂60 = 2 (posición total)
2