Cinemática de Robots Manipuladores

Anuncio
Geometría y Cinemática
Control y Programación
de Robots
1
Cinemática de un Robot Manipulador
Cinemática directa
Cinemática Inversa
Matriz Jacobiana
2
Cinemática de un Robot Manipulador
Cinemática del robot : Estudio de su movimiento con respecto a un
sistema de referencia
– Descripción analítica del movimiento espacial en función del tiempo
– Relaciones: localización del extremo del robot-valores articulares
Problema cinemático directo: Determinar la posición y orientación del
extremo final del robot, con respecto a un sistema de coordenadas de referencia,
conocidos los ángulos de las articulaciones y los parámetros geométricos de los
elementos del robot
Problema cinemático inverso: Determinar la configuración que debe adoptar el
robot para una posición y orientación del extremo conocidas
Modelo diferencial (matriz Jacobiana): Relaciones entre las velocidades de
movimiento de las articulaciones y las del extremo del robot
3
Cinemática de un Robot Manipulador
4
Cinemática de un Robot Manipulador
Resolución del problema cinemático directo con matrices de
transformación homogéneas
5
Modelo directo
qn
p(x,y,z,α,β,γ)
q2
q1
qn-1
Cálculo de la posición y orientación de
cualquier punto del robot (Elemento
Terminal) en función las variables
articulares
Procedimiento sistemático de
Denavit-Hartemberg
6
Procedimiento de colocación de
Ejes de Referencia
1. Identificar los Enlaces y Ejes de las articulaciones y trazar líneas
imaginarias a lo largo de ellos.
+1
+1
7
Procedimiento de colocación de
Ejes de Referencia
2. Identificar la perpendicular común entre ejes consecutivos. El
origen del SR i estará en la intersección del Eje i con la normal
común entre los ejes i e i+1
+1
+1
8
Procedimiento de colocación de
Ejes de Referencia
3. Colocar el eje Zi sobre el eje de la articulación i
Zi
Zi
+1
+1
9
Procedimiento de colocación de
Ejes de Referencia
4. Colocar el eje Xi sobre la perpendicular común, o si los ejes
intersectan, sobre la normal al plano que forman los ejes Zi y Zi+1
Zi
Zi
Xi
+1
+1
Xi
10
Procedimiento de colocación de
Ejes de Referencia
5. Colocar el eje Yi completando un
sistema de referencia dextrógiro
Zi
Zi
Yi
Xi
Yi
+1
+1
Xi
11
Parámetros D-H
Parámetros de Denavit-Hartemberg (D-H)
Cuatro Parámetros:
– Dos ángulos (θi, αi-1)
– Dos distancias (di, ai-1)
12
Parámetros D-H
Definen el paso de un sistema de referencia asociado a una
articulación al siguiente
Sólo dependen de las características geométricas de cada
eslabón y de las articulaciones que le unen con el anterior y
siguiente (no dependen de la posición del robot)
Definen las matrices A que permiten el paso de un sistema
de referencia asociado a una articulación al siguiente y por
tanto definen las matrices T
Cuatro Parámetros:
– Dos ángulos (θi, αi-1)
– Dos distancias (di, ai-1)
13
Interpretación Parámetros D-H
θi: Es el ángulo de xi-1 a xi medida
sobre zi (utilizando la regla de la mano
derecha).
di: Es la distancia de xi-1 a xi medida
a lo largo de zi
ai: Es la distancia de zi a zi+1 medida
a lo largo de xi
αi: Es el ángulo de zi a zi+1 medida
sobre xi (utilizando la regla de la mano
derecha).
14
Matrices de transformación
i −1
Ai = T ( x,αi−1 )T (ai−1,0,0)T ( z,θi )T (0,0, di )
0
0
0⎤ ⎡1 0 0 ai −1 ⎤ ⎡cθi − sθi
⎡1
⎢0 cα
⎥ ⎢0 1 0 0 ⎥ ⎢sθ cθ
−
0
s
α
i
−
1
i
−
1
i
i −1
⎥⎢
⎥⎢ i
Ai = ⎢
⎢0 sαi −1 cαi −1 0⎥ ⎢0 0 1 0 ⎥ ⎢ 0
0
⎢
⎥⎢
⎥⎢
0
0
0
1
0
0
0
1
0
⎣
⎦⎣
⎦⎣ 0
− sθi
ai−1 ⎤
0
⎡ cθi
⎢cα sθ cα cθ − sα
⎥
−
d
s
α
i
−
1
i
i
−
1
i
i
−
1
i
i
−
1
⎥
=⎢
⎢sαi−1sθi sαi −1cθi cαi−1
di cαi −1 ⎥
⎢
⎥
0
0
0
1
⎣
⎦
0 0⎤ ⎡1
0 0⎥⎥ ⎢⎢0
1 0⎥ ⎢0
⎥⎢
0 1⎦ ⎣0
0 0 0⎤
1 0 0 ⎥⎥
=
0 1 di ⎥
⎥
0 0 1⎦
15
Matrices de transformación
i −1
Ai = T ( x,αi−1 )T (ai−1,0,0)T ( z,θi )T (0,0, di )
0
0
0⎤ ⎡1 0 0 ai −1 ⎤ ⎡cθi − sθi
⎡1
⎢0 cα
⎥ ⎢0 1 0 0 ⎥ ⎢sθ cθ
−
0
s
α
i
−
1
i
−
1
i
i −1
⎥⎢
⎥⎢ i
Ai = ⎢
⎢0 sαi −1 cαi −1 0⎥ ⎢0 0 1 0 ⎥ ⎢ 0
0
⎢
⎥⎢
⎥⎢
0
0
0
1
0
0
0
1
0
⎣
⎦⎣
⎦⎣ 0
− sθi
ai−1 ⎤
0
⎡ cθi
⎢cα sθ cα cθ − sα
⎥
−
d
s
α
i
−
1
i
i
−
1
i
i
−
1
i
i
−
1
⎥
=⎢
⎢sαi−1sθi sαi −1cθi cαi−1
di cαi −1 ⎥
⎢
⎥
0
0
0
1
⎣
⎦
0 0⎤ ⎡1
0 0⎥⎥ ⎢⎢0
1 0⎥ ⎢0
⎥⎢
0 1⎦ ⎣0
0 0 0⎤
1 0 0 ⎥⎥
=
0 1 di ⎥
⎥
0 0 1⎦
16
Matrices de transformación
i −1
Ai = T ( x,αi−1 )T (ai−1,0,0)T ( z,θi )T (0,0, di )
0
0
0⎤ ⎡1 0 0 ai −1 ⎤ ⎡cθi − sθi
⎡1
⎢0 cα
⎥ ⎢0 1 0 0 ⎥ ⎢sθ cθ
−
0
s
α
i
−
1
i
−
1
i
i −1
⎥⎢
⎥⎢ i
Ai = ⎢
⎢0 sαi −1 cαi −1 0⎥ ⎢0 0 1 0 ⎥ ⎢ 0
0
⎢
⎥⎢
⎥⎢
0
0
0
1
0
0
0
1
0
⎣
⎦⎣
⎦⎣ 0
− sθi
ai−1 ⎤
0
⎡ cθi
⎢cα sθ cα cθ − sα
⎥
−
d
s
α
i
−
1
i
i
−
1
i
i
−
1
i
i
−
1
⎥
=⎢
⎢sαi−1sθi sαi −1cθi cαi−1
di cαi −1 ⎥
⎢
⎥
0
0
0
1
⎣
⎦
0 0⎤ ⎡1
0 0⎥⎥ ⎢⎢0
1 0⎥ ⎢0
⎥⎢
0 1⎦ ⎣0
0 0 0⎤
1 0 0 ⎥⎥
=
0 1 di ⎥
⎥
0 0 1⎦
17
Matrices de transformación
i −1
Ai = T ( x,αi−1 )T (ai−1,0,0)T ( z,θi )T (0,0, di )
0
0
0⎤ ⎡1 0 0 ai −1 ⎤ ⎡cθi − sθi
⎡1
⎢0 cα
⎥ ⎢0 1 0 0 ⎥ ⎢sθ cθ
−
0
s
α
i
−
1
i
−
1
i
i −1
⎥⎢
⎥⎢ i
Ai = ⎢
⎢0 sαi −1 cαi −1 0⎥ ⎢0 0 1 0 ⎥ ⎢ 0
0
⎢
⎥⎢
⎥⎢
0
0
0
1
0
0
0
1
0
⎣
⎦⎣
⎦⎣ 0
− sθi
ai−1 ⎤
0
⎡ cθi
⎢cα sθ cα cθ − sα
⎥
−
d
s
α
i
−
1
i
i
−
1
i
i
−
1
i
i
−
1
⎥
=⎢
⎢sαi−1sθi sαi −1cθi cαi−1
di cαi −1 ⎥
⎢
⎥
0
0
0
1
⎣
⎦
0 0⎤ ⎡1
0 0⎥⎥ ⎢⎢0
1 0⎥ ⎢0
⎥⎢
0 1⎦ ⎣0
0 0 0⎤
1 0 0 ⎥⎥
=
0 1 di ⎥
⎥
0 0 1⎦
18
Matrices de transformación
i −1
Ai = T ( x,αi−1 )T (ai−1,0,0)T ( z,θi )T (0,0, di )
0
0
0⎤ ⎡1 0 0 ai −1 ⎤ ⎡cθi − sθi
⎡1
⎢0 cα
⎥ ⎢0 1 0 0 ⎥ ⎢sθ cθ
−
0
s
α
i
−
1
i
−
1
i
i −1
⎥⎢
⎥⎢ i
Ai = ⎢
⎢0 sαi −1 cαi −1 0⎥ ⎢0 0 1 0 ⎥ ⎢ 0
0
⎢
⎥⎢
⎥⎢
0
0
0
1
0
0
0
1
0
⎣
⎦⎣
⎦⎣ 0
− sθi
ai−1 ⎤
0
⎡ cθi
⎢cα sθ cα cθ − sα
⎥
−
d
s
α
i
−
1
i
i
−
1
i
i
−
1
i
i
−
1
⎥
=⎢
⎢sαi−1sθi sαi −1cθi cαi−1
di cαi −1 ⎥
⎢
⎥
0
0
0
1
⎣
⎦
0 0⎤ ⎡1
0 0⎥⎥ ⎢⎢0
1 0⎥ ⎢0
⎥⎢
0 1⎦ ⎣0
0 0 0⎤
1 0 0 ⎥⎥
=
0 1 di ⎥
⎥
0 0 1⎦
19
Cinemática de un Robot Planar 2GDL
Ejemplo:
X3
Z2
Z0 Z1
Y0 Y1
i
1
2
3
Z3
Y2
Y3
X0 X1
X2
a1
a2
αi-1 ai-1 di
0
0
0
0
a1
0
-90º a2
0
θi
θ1
θ2
θ2
d3
20
Cinemática de un Robot Manipulador
Ejemplo:
Robot Industrial RM-10
21
Cinemática de un Robot Manipulador
22
Cinemática de un Robot Manipulador
23
Cinemática de un Robot Manipulador
Matriz de Cambio para
problema cinemático directo
24
Cinemática de un Robot Manipulador
Matriz de Cambio para
problema cinemático directo
25
Cinemática Inversa
26
Cinemática Inversa: Posibles Soluciones
27
Cinemática Inversa: Métodos
28
Cinemática Inversa: Método Geométrico
Ejemplo de solución del problema cinemático Inverso por métodos
geométricos
29
Cinemática Inversa: Método Geométrico
Ejemplo de solución del problema cinemático Inverso por métodos
geométricos (Múltiples soluciones)
30
Cinemática Inversa: Método Matrices
Homogéneas
Ejemplo de solución del problema cinemático Inverso mediante
matrices de transformación homogéneas
z3
Y3
x3
z1
z0
z2
Y1
Y2
x1
Y0
x0
i
αi-1
ai-1
1
0
0
l1
q1
2
-90º
0
0
q2
3
0
0
q3
0
⎡cq1 − sq1
x2 0 ⎢sq1 cq1
A1 = ⎢
⎢0
0
⎢
0
⎣0
di
0 0⎤
⎡ cq2 − sq2
⎢ 0
0 0⎥⎥ 1
0
A =⎢
1 l1 ⎥ 2 ⎢− sq2 − cq2
⎢
⎥
0
0 1⎦
⎣ 0
⎡1
⎢0
2
A3 = ⎢
⎢0
⎢
⎣0
θi
0
1
0
0
0⎤
0⎥⎥
0⎥
⎥
1⎦
0 0 0⎤
1 0 0 ⎥⎥
0 1 q3 ⎥
⎥
0 0 1⎦
31
Cinemática Inversa: Método Matrices
Homogéneas
Ejemplo de solución del problema cinemático Inverso mediante
matrices de transformación homogéneas
⎡ Cq1 Sq1
⎢− Sq Cq
1
1
⎢
⎢ 0
0
⎢
0
⎣ 0
⎡ cq2 − sq2
⎢ 0
0
⎢
⎢− sq2 − cq2
⎢
0
⎣ 0
Cq1 p x + Sq1 p y = 0 ⇒ q1 = arctan(
q2 = arctan
py
px
0 0⎤ ⎡1
1 0⎥⎥ ⎢⎢0
0 0⎥ ⎢0
⎥⎢
0 1⎦ ⎣0
0⎤
0 0 ⎥⎥
1 − l1 ⎥
⎥
0 1⎦
0
0 0 0 ⎤ ⎡ cq2 − sq2
1 0 0 ⎥⎥ ⎢⎢ 0
0
=
0 1 q3 ⎥ ⎢− sq2 − cq2
⎥ ⎢
0 0 1⎦ ⎣ 0
0
0 0⎤
1 q3 ⎥⎥
0 0⎥
⎥
0 1⎦
)
p x2 + p y2
l1 − pz
q3 = Cq2 ( p x − 1) − Sq2 p x2 + p y2
32
Cinemática Inversa: Método de
reducción polinómica
Consiste en transformar las ecuaciones trascendentales obtenidas por
métodos algebraicos o geométricos para que adopten forma
polinómica, más fáciles en principio de resolver.
u = tan
θ
2
Algunas
2
u
1
−
transformaciones cos θ =
usuales
1+ u2
2u
sin θ =
2
1+ u
a cosθ + b sin θ = c
solution)
a (1 − u 2 ) + 2bu = c(1 + u 2 )
(a + c)u 2 − 2bu + (c − a) = 0
b ± b2 − a2 − c2
u=
a+c
2
2
2
⎛
−1 ⎜ b ± b − a − c
∴θ = 2 tan
⎜
a+c
⎝
⎞
⎟
⎟
⎠
33
Cinemática Inversa: Desacoplamiento
cinemático
Es típico en robots de 6 GDL
Se puede resolver de forma explícita
los 3GDL que definen la orientación de
la garra.
34
Cinemática Inversa: Desacoplamiento
cinemático
Es típico en robots de 6 GDL
Ejes 4,5,6 se intersectan en un
punto ⇒ Existe solución analítica
por métodos algebraicos (Método
de Pieper).
35
Cinemática Inversa: Consideraciones
computacionales
• Para seguimiento de trayectorias es necesario resolver el problema
cinemático a gran velocidad (30 veces/seg o más).
• Son preferibles las soluciones cerradas explícitas (si existen) a las
iterativas.
• Para acelerar cálculos generalmente se emplean tablas previamente
calculadas (look-up tables)
•El coste de calcular n soluciones, no es necesariamente n veces el de
calcular una única solución.
36
Especificaciones del usuario y localizaciones
estándar
{W}
{B}
{T}
{S}
{G}
• {S} Marco de referencia de la celda
de trabajo
• {B} Marco de referencia base del
robot
• {T} Marco de referencia de la
herramienta
• {G} Marco de referencia objetivo
(Objeto a manipular)
• {W} Marco de referencia del extremo
terminal del robot (Sin herramienta)
Objetivo: Planear secuencia de movimientos
articulares para llevar {T} a {G} satisfaciendo las
restricciones del problema
37
Velocidades Lineales y Rotacionales
Transformación de velocidades lineales
VP = VpORG + R VP + ΩB × R P
A
A
A
B
B
A
A
B
BΩ
C
B
{C}
{B}
Transformación de velocidades
ZA
angulares
A
{A}
ΩC = ΩB + R ΩC
A
A
B
BP A
ΩB
AP
ZB
B
AP
ORG
xA
xB
YB
YA
38
Matriz Jacobiana
39
Matriz Jacobiana
Relaciones Diferenciales
40
Matriz Jacobiana
En Robótica la matriz Jacobiana describe las relaciones entre las velocidades
articulares (θi) y las velocidades lineales y de rotación del efector final (xi)
41
Matriz Jacobiana en el dominio de las
fuerzas
Adicionalmente estamos interesados en conocer la relación entre los pares
articulares que se ejercen sobre el robot (τi) y las fuerzas/momentos ejercidas
por el efector final (Fi)
Principio de los trabajos
virtuales
F T δX = τ T δθ
42
Matriz Jacobiana en el dominio de las
fuerzas
∀δθ
Definición de Jacobiano
δX = Jδθ
F Jδθ = τ δθ
T
T
τ =J F
T
La Expresión anterior se puede
expandir como
43
Matriz Jacobiana
Ejemplo: Jacobiana de un robot Plano de 3GDL
Calcular las relaciones que
describen las siguientes
igualdades
44
Matriz Jacobiana
Ejemplo: Jacobiana de un robot Plano de 3GDL
Parametros
del efector
final
Cinemática Directa
45
Matriz Jacobiana
Ejemplo: Jacobiana de un robot Plano de 3GDL
d
dt
46
Matriz Jacobiana
En forma matricial tenemos
47
Matriz Jacobiana
Jacobiana de un robot SCARA
48
Matriz Jacobiana Inversa
49
Matriz Jacobiana Inversa:
Configuraciones Singulares
50
Descargar