Está en la página 1de 61

Cinemtica de los manipuladores

Robtica

Introduccin
Cinemtica: Estudio del movimiento sin considerar las fuerzas que lo producen
Propiedades geomtricas y temporales Posicin, velocidad, aceleracin, derivadas superiores de la posicin, etc.

Cinemtica de los manipuladores: Propiedades geomtricas y temporales del movimiento.

Aspecto a resolver
Problema:
A partir de los parmetros geomtricos del manipulador. Especificar: Posicin y orientacin del manipulador.

Solucin:
Definir sistemas de referencia en el manipulador y objetos del entorno siguiendo la Notacin de Denavit-Hartenberg (1955).

Los trminos enlace/articulacin


Articulacin: Conexin de dos cuerpos rgidos caracterizados por el movimiento de un slido sobre otro.
Grado de libertad: Circular o prismtico

Enlace: Cuerpo rgido que une dos ejes articulares adyacentes del manipulador.
Posee muchos atributos: Peso, material, inercia,etc.

Parmetros de un enlace
Eje articular: Lnea en el espacio alrededor de la cual el enlace i rota referido al enlace i-1 Longitud del enlace (ai-1): Distancia entre los ejes articulares i e i-1 Nmero de lneas que definen la longitud: Ejes paralelos: Ejes no paralelos: 1 Signo: positivo ngulo del enlace ( i-1): ngulo medido entre los ejes articulares i e i-1. Proyeccin sobre plano Signo: Regla de la mano derecha

perpendicular comn

Ejemplo de parmetros
1.- Se colocan los ejes articulares 2.- Longitud del enlace: 7 3.- ngulo del enlace: 450
Plano

Longitud del enlace

Variables articulares
Desplazamiento del enlace (di): Distancia medida a lo largo del eje de la articulacin i desde el punto donde ai-1 intersecta el eje hasta el punto donde ai intersecta el eje.
di es variable si la articulacin es prismtica di posee signo

ngulo de la articulacin (i): ngulo entre las perpendiculares comunes ai-1 y ai medido sobre el eje del enlace i.
i es variable si la articulacin es
de rotacin i posee signo definido por la regla de la mano derecha

Definicin de Sistemas de Referencia: Enlaces primero y ltimo


Sistema de referencia {0}: Sistema que se adjunta a la base del robot. No se mueve. El Sistema de referencia {1} coincide con la base.

Enlace(i)

a 0 y an 0

0 y n
0

di
Prismtica (di) Rotacional (0)

i
0

1yn

Definicin de Sistemas de Referencia: Enlaces intermedios


Origen del sistema de referencia { i }: Se ubica en el punto creado por la perpendicular de ai y el eje articular i. ) Eje Z: El eje Z i del sistema de referencia { i } se har coincidir con el eje articular i. ) Eje X: El eje X i se hace coincidir con la distancia ai desde la articulacin i hacia i+1. ) Eje Y: Se define a partir del eje X i, tomando como referencia la regla de la mano derecha.

) Yi 1

) Xi
) Zi

Procedimiento general para la definicin de sistemas de referencia


1. 2. Identificar los ejes articulares: De los pasos 2 a 5 utilice dos ejes consecutivos i e i-1. Identifique la perpendicular comn: Identifique la lnea que se intersecta, perpendicularmente, al eje articular i. Defina el sistema de referencia sobre el punto de interseccin. ) Asigne el eje Z i al eje articular i. ) Asigne el eje X i a la perpendicular comn que defini el origen del sistema de referencia i. ) Termine de asignar el sistema de referencia, definiendo el eje Y i segn la ley de la mano derecha. Haga coincidir los sistemas de referencia {0} y {1} cuando la primera variable articular sea cero.

3. 4. 5. 6.

Significado de los parmetros de


Denavit-Hartenberg
Los parmetros de DH tienen el siguiente significado: ) ) El parmetro a i es la distancia entre Z i y Z i 1 medida )

a lo largo de X i . ) ) El parmetro i es el ngulo entre Z i y Z i 1 referido a ) X i. ) ) El parmetro d i es la distancia de X i 1 a X i medida a lo ) largo de Z i. ) ) El parmetro i es el ngulo entre X i 1 y X i referido a ) Zi . Nota: a i es la nica magnitud positiva, las dems tienen signo.

Transformacin homognea de un enlace


Es el resultado de

Al definir tres sistemas de referencia Intermedios {R}, {Q} y {P}, se tiene: {R} difiere de i-1 en la rotacin i 1 {Q} difiere de {R} por la traslacin a i 1 {P} difiere de {Q} por la rotacin i {i} difiere de {P} por la traslacin d i

Transformacin homognea de un enlace (II)


Un punto definido en el sistema de referencia {i} proyectado en el sistema de referencia {i-1} responde a

La transformacin del sistema de referencia {i} en {i-1} responde a

Transformacin homognea de un enlace (III)

Matriz DH

Concatenar transformaciones homogneas de enlaces


Definir el sistema de referencia de los enlaces Definir los parmetros DH de cada enlace Calcular la matriz de transformacin de cada enlace Relacionar el sistema {N} sobre el sistema {0}

Transformacin resultante de todos los enlaces

Despus de medir la posicin, usando sensores, de los enlaces; se calcula la posicin del efector final

Ejemplo RRR (3R)

Ejemplo RRR (II)


Identificar el eje de las articulaciones Identificar la perpendicular comn entre los ejes de las articulaciones
) Asignar el eje Z i

en los ejes articulares


) Z3

) ) Z 0 Z1

) Z2

Ejemplo RRR (III)


Asignar el eje en la perpendicular comn.
) Xi

Utilizando la regla de la mano derecha, ) asignar el eje Yi .

Ejemplo RRR (IV)

i 1 2 3

i-1
0 0 0

ai-1 0 L1 L2

di 0 0 0

i 1 2 3

Ejemplo RRR (V)


i 1 2 3

i-1
0 0 0

ai-1 0 L1 L2

di 0 0 0

i 1 2 3

Ejemplo RRR (Final)

P = 0T 3P 3

Ejemplo RPR

1.- Identificar el eje de las articulaciones

2.- Identificar la perpendicular comn al eje de las articulaciones: Ninguna

Ejemplo RPR (II)


Asignar el eje en los ejes articulares
) Zi

) Si los ejes Z i se intersectan, ) ubicar X i de forma que sea normal al plano que contenga los dos ejes, considere adems que la variable articular {i} proyectada en {i-1} sea cero en el origen

Ejemplo RPR (III)


Completar el sistema de ) referencia colocando Y i aplicando la regla de la mano derecha

Ejemplo RPR (IV)

Parmetros DH
i 1 2 3

i-1
0 900 0

ai-1 0 0 0

di 0 d2 L2

i 1
0

Ejemplo RPR (Final)


i 1 2 3

i-1
0 900 0

ai-1 0 0 0

di 0 d2 L2

i 1
0

0 3 P = 3T P

Puma 560-6R

Asignacin del sistema de referencia 1


Posicin del robot cuando todas las variables articulares son cero. Hacer coincidir los sistemas de referencia {0} y {1}. ) Asignar el eje Z1 en el primer eje articular. ) X Asignar el eje ) 1 a la perpendicular comn al eje Z1. Si los ejes se ) intersectan, asignar X 1 a la normal del plano conteniendo los dos ejes. Completar el sistema de coordenadas ) asignando Y1 por la regla de la mano ) derecha Y2

Asignacin del sistema de referencia 2


) Asignar el eje Z 2 en el segundo eje articular.
2 3

Asignar el eje X 2 a la perpendicular comn a los ejes articulares 2 y 3. Completar el sistema de coordenadas ) asignando Y2 por la regla de la mano derecha

Asignacin del sistema de referencia 3


) Asignar el eje Z 3 en el tercer eje
3

articular.
) Asignar el eje X 3 a la perpendicular

comn a los ejes articulares 3 y 4 o normal al plano.


) Completar el sistema asignando Y3

por la regla de la mano derecha

Asignacin del sistema de referencia 4


) Asignar el eje Z 4 en el cuarto eje articular. ) Asignar el eje X 4 a la perpendicular comn a los ejes articulares 4 y 5 o normal al plano.

Completar el sistema ) asignando Y4 por la regla de la mano derecha

Asignacin del sistema de referencia 5


) Asignar el eje Z 5 en el quinto eje

articular.
) Asignar el eje X 5 a la perpendicular

comn a los ejes articulares 4 y 5 o normal al plano. Completar el sistema ) asignando Y5 por la regla de la mano derecha

Asignacin del sistema de referencia 6 {N}


) Asignar el eje Z 6 en el sexto eje

articular.
) Seleccione libremente el eje X 6

considerando que sean cero la mayor cantidad de parmetros DH. Completar el sistema ) asignando Y6 por la regla de la mano derecha

Parmetros DH

Transformaciones de los enlaces

Simulador PUMA 560


Toolbox Robtica Peter I. Corke >> puma560 >> plot(560,qz) >> drivebot(p560)

Sistemas de referencias con nombres estndar

Cinemtica directa
Cinemtica directa:
Se conocen las variables articulares de una cadena de enlaces de un brazo articulado Clculo sencillo (multiplicacin matricial) 0 Una nica solucin: 0 P = N T NP

Cinemtica inversa
Cinemtica inversa:
Problema difcil de resolver: Obtener los valores de las variables articulares para que el rgano terminal tenga una determinada posicin y orientacin Se deben resolver un conjunto de ecuaciones algebraicas no lineales simultneas Problemas fundamentales:
Ecuaciones no lineales (sen, cos en matrices de rotacin) Existen mltiples soluciones Es posible que no exista una solucin Singularidades.

Espacio alcanzable

Cartesiano

Cilndrico

Esfrico

Espacio alcanzable: Volumen del espacio que el robot puede alcanzar con al menos una orientacin

Scara

Antropomrfico

Existencia de mltiple soluciones


Deben atenderse las mltiples soluciones: Eleccin que minimice los movimientos desde la posicin actual Concepto de solucin ms Cercana Mover los eslabones de menor peso Considerar obstculos (evitar colisiones)

Obstculo

Mtodo de resolucin
Manipulador resoluble: Existe un algoritmo que permite determinar todas las soluciones del modelo inverso (variables articulares) asociadas a una determinada posicin y orientacin. Tericamente es resoluble: todo sistema R y P con 6 grados de libertad. Mtodos numricos iterativos: lentitud. Se prefieren expresiones analticas (soluciones cerradas):
Mtodos algebraicos Mtodos geomtricos

Porqu la cinemtica inversa?


Mtodos de programacin:
Programacin por guiado: Desplazamiento del efector final para que se alcancen las configuraciones deseadas, registrndose los valores (digitalizacin de posiciones). Programacin textual: Programa de ordenador donde existen rdenes para especificar los movimientos del robot, acceder a informacin de sensores, etc.

Cinemtica directa vs inversa


Cinemtica directa
Conocidos: ngulos articulares y geometra de los eslabones Determinar: Posicin y orientacin del elemento terminal referido a la base
B 0 f ( )= H T = N T
{Herramienta}

Cinemtica inversa
Conocidos: Posicin y orientacin del elemento terminal referido a la base Determinar: ngulos articulares y geometra de los eslabones para alcanzar la orientacin y posicin de la herramienta

{Base}

= f

1 B (HT)

= f

1 N ( 0T )

Nmero de soluciones
Se desea: Posicionar el elemento terminal en un punto del plano
Nmero de GDL del manipulador = Nmero de GDL que requiere la tarea Dos soluciones Nmero de GDL del manipulador > Nmero de GDL que requiere la tarea Infinitas soluciones

Tipos de solucin
Solucin: Conjunto de variables articulares que permiten posicionar el elemento terminal en una determinada posicin y orientacin No existen algoritmos generales de solucin al problema de cinemtica inversa Tipos de solucin:
Soluciones cerradas:
Solucin algebraica: Ecuaciones no lineales trigonomtricas Solucin geomtrica: Conjunto de subproblemas geomtricos en el plano

Soluciones numricas (iterativas): No aplicables en tiempo real

Ejemplo de solucin geomtrica (I)


Se conoce:
Geometra del manipulador Punto objetivo: Posicin (x e y) y orientacin elemento terminal en el espacio

del

Problema:
Determinar las variables articulares ( 1 2 3 )
y

Algunas identidades trigonomtricas


Ley de los cosenos para un tringulo general

Suma de ngulos: Identidades:

cos( ) = cos( )

cos( pi ) = cos( pi + )

Ejemplo de solucin geomtrica (II)


La orientacin del ltimo eslabn es la suma de las variables articulares

= 1 + 2 + 3
y

Ejemplo de solucin geomtrica (III)


Clculo de 2 :
Aplicando la ley de los cosenos:

Debido a que

Resulta:

Ejemplo de solucin geomtrica (IV)


Se debe verificar la solucin del algoritmo, el cual debe cumplir:

Espacio alcanzable
Espacio alcanzable

Intervalo de la solucin

Ejemplo de solucin geomtrica (V)


Si se definen dos ngulos se cumple

1 =
El ngulo
sen( ) =

se calcula:

x2 + y2

Y aplicando ley de los cosenos

Ejemplo de solucin geomtrica (VI)


Finalmente
3 = 1 2

Control basado en cinemtica inversa (I)


Seccin de cdigo de la funcin invsurf.m:
for i = 1:length(r), for j = 1:length(theta), xx = r(i)*cos(theta(j)); Cinemtica directa yy = r(i)*sin(theta(j)); c2 = (xx^2 + yy^2 - l1^2 - l2^2)/(2*l1*l2); c2 = min(max(c2, -1), 1); s2 = sqrt(1 - c2^2); th2(i, j) = atan2(s2, c2); k1 = l1 + l2*c2; k2 = l2*s2; th1(i, j) = atan2(yy, xx) - atan2(k2, k1); end end

Condiciones iniciales: l1 = 10; l2 = 7; point = 21; r = linspace(l1-l2, l1+l2, point); theta = linspace(0, 2*pi, 2*point);

Control basado en cinemtica inversa (II)


Resultado de ejecutar la funcin invsurf.m:

Control basado en cinemtica inversa (III)


2
y

1
x

1 2
Modelo del brazo articulado de dos grados de libertad

Control basado en cinemtica inversa (IV)


1 2
Modelo del brazo articulado de dos grados de libertad
x

xd

Modelo inverso del brazo articulado

yd

Control basado en cinemtica inversa (V)


Matrices inversas
invkine1
x1 y1 ; 11 x 2 y 2 ; 12 . . x y ; n n 1n

invkine2
x1 y1 ; 21 x 2 y 2 ; 22 . . x y ; n n 2n

for i = 1:length(x), for j = 1:length(y), xx = x(i); yy = y(j); c2 = (xx^2 + yy^2 - l1^2 - l2^2)/(2*l1*l2); s2 = sqrt(1 - c2^2); th2(i, j) = atan2(s2, c2); k1 = l1 + l2*c2; k2 = l2*s2; th1(i, j) = atan2(yy, xx) - atan2(k2, k1); if abs(c2) < 1; data1(data_n, :) = [xx yy th1(i, j)]; data2(data_n, :) = [xx yy th2(i, j)]; data_n = data_n + 1; end end end invkine1 = data1(1:data_n, :); invkine2 = data2(1:data_n, :);

Control basado en cinemtica inversa (VI)


Obtencin del modelo inverso
Sistema borroso 1: fismat1 [fismat1, error1] = anfis(invkine1, 3, [50, 0, 0.2]);
writefis(fismat1, 'invkine1.fis'); % WRITEFIS (FISMAT,'filename')

1 = f 1 ( x, y )

Sistema borroso 2: fismat2 [fismat2, error2] = anfis(invkine2, 3, [50, 0, 0.2]);


writefis(fismat2, 'invkine2.fis');

2 = f 1 ( x, y )

Control basado en cinemtica inversa (VI)


En el programa invkine.m: fismat1 = readfis('invkine1'); fismat2 = readfis('invkine2');

1 2
Modelo del brazo articulado de dos grados de libertad

xd theta1 = evalfis([x, y], fismat1); yd theta2 = evalfis([x, y], fismat2);

Control basado en cinemtica inversa (VII)


Resultado de ejecutar invkine.m:

También podría gustarte