TRAYECTORIAS
TRAYECTORIAS
TRAYECTORIAS
PRESENTADA POR:
VAZQUEZ SERRANO CARLOS ALBERTO.
DE LA SIERRA ALEXIS ANDRES.
MARTIN VAZQUEZ ISRAEL.
CESAR ALEXIS MARIN MENDEZ.
LICENCIATURA EN:
INGENIERA MECATRNICA
DE LA ESPECIALIDAD EN:
AUTOMATIZACIN DE PROCESOS.
DOCENTE:
I.R. MARIO EDUARDO AGUILAR ORTHA.
ROBOTICA.
Contenido
1.- INTRODUCCIN. ........................................................................................................................................ 3
2.- JUSTIFICACIN. ......................................................................................................................................... 3
3.- MARCO TERICO. ...................................................................................................................................... 4
3.1. Cinemtica directa ................................................................................................................................ 4
3.2. Cinemtica inversa. .............................................................................................................................. 8
3.3.- Trayectorias. ...................................................................................................................................... 10
3.3.1.- Descripciones en el espacio cartesiano versus espacio de las articulaciones. ................. 10
3.3.2.- Bases de planificacin de trayectorias. .................................................................................. 10
3.3.3.- Conversin de la especificacin de movimiento a un plano cartesiano. ........................... 10
3.3.4.- Planificacin de trayectorias en el espacio de las articulaciones. ....................................... 11
3.3.5.- Trayectorias punto a punto. .................................................................................................... 11
3.3.6.- Trayectorias coordinadas o iscronas. ................................................................................... 11
3.3.7.- Trayectorias continas. ............................................................................................................ 12
3.3.8.- Trayectorias en el espacio cartesiano. ................................................................................... 13
3.4.- Comandos ctraj y jtraj...................................................................................................................... 13
3.4.1.- ctraj ............................................................................................................................................. 13
3.4.2.- jtraj .............................................................................................................................................. 13
4.- DESARROLLO............................................................................................................................................ 14
5.- CONCLUSIONES. ...................................................................................................................................... 23
6.- BIBLIOGRAFA .......................................................................................................................................... 23
ROBOTICA.
1.- INTRODUCCIN.
La cinemtica del robot estudia el movimiento del mismo con respecto a un sistema de referencia.
As, la cinemtica se interesa por la descripcin analtica del movimiento espacial del robot como
una funcin del tiempo y, en particular por las relaciones entre la posicin y la orientacin del
extremo final del robot con los valores que toman las coordenadas articulares.
Existen dos problemas fundamentales a resolver en la cinemtica del robot, el primero de ellos se
conoce como el problema cinemtico directo, y el segundo se conoce como problema cinemtico
inverso.
Problema cinemtico directo.
Consiste en determinar cul es la posicin y orientacin del extremo final del robot, con respecto a
un sistema de coordenadas que se toma como referencia, conocidos los valores de las
articulaciones y los parmetros geomtricos del robot.
Problema cinemtico inverso.
Resuelve la configuracin que debe adoptar el robot para una posicin y orientacin del extremo
conocidas.
A continuacin se presenta la aplicacin de ambas caractersticas de la cinemtica para el estudio
del comportamiento de un manipulador IRB-4600 de ABB.
Respondiendo a los casos de cinemtica directa y a su vez, de cinemtica inversa, utilizando el
software MATLAB.
2.- JUSTIFICACIN.
La siguiente prctica, es realizada con la finalidad de la obtencin y anlisis de manipulabilidad y
trayectorias que puede realizar un robot, as podremos observar por medio del simulador, o
MATLAB, el comportamiento del brazo en las traslaciones o trayectorias que llevara a cabo para la
obtencin de las funciones que el programador quiera que este manipulador realice y observar
cmo se comportaran las descripciones de trayectorias en robots industriales.
En otras palabras, la intensin es comprender las formas de trayectoria que un robot puede
emprender, para ver y considerar desplazamientos y tiempos de desplazamiento, entre otras cosas.
ROBOTICA.
ROBOTICA.
Cinemtico directo
Dado que son las variables articulares las que pueden ser ledas directamente de
los correspondientes sensores por la unidad de control del robot, el modelo
cinemtico directo ser utilizado por ste, entre otros fines, para presentar al
usuario informacin relativa a la localizacin del extremo del robot.
As, si se han escogido coordenadas cartesianas y ngulos de Euler para
representar la posicin y orientacin del extremo de un robot de seis grados de
libertad, la solucin al problema cinemtico directo vendr dada por las relaciones:
La obtencin del modelo cinemtico directo puede ser abordado mediante dos
enfoques diferentes denominados mtodos geomtricos y mtodos basados en
cambios de sistemas de referencia.
ROBOTICA.
Los primeros son adecuados para casos simples, pero al no ser sistemticos, su
aplicacin queda limitada a robots con pocos grados de libertad. Los mtodos
basados en cambio de sistemas de referencia, permiten de una manera
sistemtica abordar la obtencin del modelo cinemtico directo del robot para
robots de n grados de libertad, siendo stos, por tanto, los ms frecuentemente
utilizados, en particular los que usan las matrices de transformacin homognea.
Cinemtica inversa
El objetivo del problema cinemtico inverso consiste en encontrar los valores que
deben adoptar las coordenadas articulares del robot
para
ROBOTICA.
del mismo modo. En estos casos una solucin cerrada permite incluir
determinadas reglas o restricciones que aseguren que la solucin obtenida sea la
ms adecuada de entre las posibles (por ejemplo, lmites en los recorridos
articulares).
Trayectorias
Es claro que una de las finalidades del robot y otras que se basan en esta, es
alcanzar tal ocual objeto para su manipulacin o incluso movimientos del robot
para alcanzar alguna posicin definida.
La importancia de la planificacin de trayectorias radica en la bsqueda y
obtencin de estrategias de control para obtener del robot trayectorias adecuadas,
seguras y que posean la mayor calidad en su desplazamiento.
Para poder llevar a cabo la planificacin de trayectorias resulta fundamental
conocer o ser capaz de obtener el modelo cinemtico y tambin dinmico del robot
que se pretenda controlar. La trayectoria posible, depende de las caractersticas
fsicas del robot, as como de sus articulaciones, porque solo ser posible realizar
aquellos movimientos alcanzables por el robot y que no requieran de
desplazamientos al lmite de lo imposible. Adems, dependiendo de las
caractersticas de operacin
ROBOTICA.
ROBOTICA.
Las ecuaciones cinemticas directas establecen la relacin funcional entre las variables de
articulaciones y la orientacin y posicin del efector final.
El problema de la cinemtica inversa consiste en la determinacin de las variables de articulaciones
correspondientes a una orientacin y una posicin especifica del efector final.
La solucin de este problema es de fundamental importancia con el fin de transformar las
especificaciones de movimiento asignadas al efector final en el espacio de trabajo en los
correspondientes movimientos de espacio de las articulaciones.
En la cinemtica directa, la matriz de posicin y rotacin del efector final se calculan en forma nica
una vez que se conocen las variables de las articulaciones.
Al contrario que el problema cinemtico directo, el clculo de la cinemtica inversa no es sencilla ya
que consiste en la resolucin de una serie de ecuaciones fuertemente dependiente de la
configuracin del robot, adems de existir diferentes n uplas q = [q1, q2,. . ., qn] que resuelven
el problema.
Existen diversos mtodos para resolver la cinemtica inversa de un manipulador por ejemplo:
ROBOTICA.
3.3.- Trayectorias.
La importancia de la planificacin de trayectorias radica en la bsqueda y obtencin de estrategias
de control para obtener del robot trayectorias adecuadas, seguras y que posean la mayor calidad
en su desplazamiento.
Para poder llevar a cabo la planificacin de trayectorias resulta fundamental conocer o ser capaz de
obtener el modelo cinemtica y tambin dinmico del robot que se pretenda controlar. La
trayectoria posible, depende de las caractersticas fsicas del robot as como de sus articulaciones,
porque solo ser posible realizar aquellos movimientos alcanzables por el robot y que no requieran
de desplazamientos al lmite de lo imposible. Adems dependiendo de las caractersticas de
operacin definidas por el usuario (destino, trayectoria cartesiana de efectores y el tiempo en que
se desee que se ejecute el movimiento) y la aplicacin, ser proyectado el trabajo, lo anterior es
bsicamente precisin, restricciones de tipo de movimiento (suave, rudo), etc.
La planificacin de trayectorias presenta dos puntos fundamentalmente, estos son: planificacin del
movimiento y control del movimiento. El primero de estos puntos parte de llevar al brazo o al robot
a las posiciones idneas para la manipulacin y el segundo punto se fundamenta en controlar cada
uno de esos desplazamientos para que el efector final llegue con xito y precisin al punto
requerido. (Corke, 2011)
ROBOTICA.
ROBOTICA.
Trayectorias continuas
ROBOTICA.
3.4.2.- jtraj
[Q, qd, qdd] = jtraj (q0, qf, m) es una trayectoria espacial conjunta q (MxN) donde las
coordenadas de la articulacin varan de q0 (1xN) a qf (1xN). Se utiliza un polinomio quntico
(quinto orden) con condiciones de lmite cero por defecto para la velocidad y la aceleracin. Se
supone que el tiempo vara de 0 a 1 en m pasos. La velocidad conjunta y la aceleracin se pueden
devolver opcionalmente como qd (MxN) y qdd (MxN) respectivamente. La trayectoria q, qd y qdd
son matrices MxN, con una fila por paso de tiempo, y una columna por junta.
[Q, qd, qdd] = jtraj (q0, qf, m, qd0, qdf) como anteriormente, pero tambin especifica la velocidad
inicial y final de la articulacin para la trayectoria.
ROBOTICA.
[Q, qd, qdd] = jtraj (q0, qf, T) como se indica ms arriba, pero la longitud de la trayectoria est
definida por la longitud del vector temporal T (Mx1).
[Q, qd, qdd] = jtraj (q0, qf, T, qd0, qdf) como anteriormente, pero especifica la velocidad conjunta
inicial y final de la trayectoria y un vector de tiempo.
4.- DESARROLLO.
Para el desarrollo de la practica comprobaremos los resultados obtenidos con la ayuda del Robotics
Toolbox de Matlab.
Parmetros Denavit y Hartenberg
El manipulador que se le realizara el anlisis cinemtico es la siguiente:
ROBOTICA.
Para obtener los parmetros de Denavit y Hartenberg se tiene que proponer las coordenadas de
x, y, z en base a los criterios que mencionaron en la teora anteriormente.
Donde
Eje Z
Eje X
Eje Y
ROBOTICA.
Q1
0.495
0.175
-90
Q2
0.9
Q3+90
-0.175
90
Q4
0.960
-90
Q5
90
Q6
0.135
en una
variable llamada IRB4600, el anlisis que se realizaran en nuestro cdigo aremos nfasis hacia este
variable.
con el comando IRB4600.teach visualizamos el manipulador.
ROBOTICA.
Las dimensiones obtenidas en los ejes X, Y, Z tienen que coincidir con las dimensiones del diseo
cad del manipulador, como se visualiza en la siguiente imagen.
Eje x
Eje z
Un punto importante a considerar, es que al momento de realizar el anlisis del manipulador hemos
modificado su posicin, por lo que se tiene que colocar el robot en su posicin de ready, para esto
cambiaremos los valores de las articulaciones en el grafico obtenido anteriormente.
ROBOTICA.
Como podemos ver en la imagen, las dimensiones de las coordenadas en X y Z coinciden con el
diseo cad del manipulador. En el eje Y tenemos un valor de 0 porque no se realizaron traslaciones
y rotaciones en ese eje, debido a que son restricciones que se deben de tomar en cuenta al aplicar
este mtodo.
Otra manera de comprobar las dimensiones del manipulador es programndolo como se visualiza a
continuacin.
qr = [0 -pi/2 pi/2 0 0 0];%Valores de los angulos para colocar en Puesta a home del
robot.
IRB4600.fkine(qr);%Comprobamos los valores de las coordenadas de acuerdo ala hoja
tecnica del robot
IRB4600.plot(qr);%Esquema del robot puesta a home.
Eje
X
Eje Z
ROBOTICA.
Hasta el momento hemos obtenido los parmetros del manipulador, sin embargo, no se han
realizado el anlisis completo, para ello comenzaremos aplicando la cinemtica directa.
ROBOTICA.
Cinemtica directa
T = fkine (robot, q)
fkine calcula la cinemtica directa para un vector qque representa las coordenadas de la
articulacin. Devuelve una matriz de transformacin homognea que describe el efector final.
Para esto propondremos 6 valores de articulaciones como se visualiza a continuacin.
mdl_ABB4600
%llamo al scrip
%% Conjunto de valores de articulaciones
qr1 = [0 pi/8 pi/6 0 0 0];
qr2 = [0 pi/6 0 0 0 0];
qr3 = [-pi/2 0 -pi/4 0 0 0];
qr4 = [0 0 0 0 0 0];
qr5 = [pi/6 -pi/4 pi/6 0 0 0];
qr6 = [pi/8 0 -pi/4 0 0 0];
t = [0:0.05:3];
q1 = jtraj(qr, qr1, t);
q2 = jtraj(qr1, qr2, t);
q3 = jtraj(qr2, qr3, t);
q4 = jtraj(qr3, qr4, t);
q5 = jtraj(qr4, qr5, t);
q6 = jtraj(qr5, qr6, t);
IRB4600.plot(q1);
IRB4600.plot(q2);
IRB4600.plot(q3);
IRB4600.plot(q4);
IRB4600.plot(q5);
IRB4600.plot(q6);
A cada valor de articulacin aplicaremos cinemtica inversa utilizando el comando explicado
anteriormente.
%% Cinematica Directa
%Articulacion qr1
IRB4600.fkine(qr1);%Calculamos la matriz de transformacion homogenea
T1 = IRB4600.fkine(qr1);%Guardamos el valor de cinematica inversa
%Articulacion qr2
IRB4600.fkine(qr2);%Calculamos la matriz de transformacion homogenea
T2 = IRB4600.fkine(qr2);%Guardamos el valor de cinematica inversa
%Articulacion qr3
IRB4600.fkine(qr3);%Calculamos la matriz de transformacion homogenea
T3 = IRB4600.fkine(qr3);%Guardamos el valor de cinematica inversa
%Articulacion qr4
IRB4600.fkine(qr4);%Calculamos la matriz de transformacion homogenea
Cinemtica
inversa
T4 = IRB4600.fkine(qr4);%Guardamos
el valor de cinematica inversa
%Articulacion qr5
T=
fkine (robot, q)
IRB4600.fkine(qr5);%Calculamos
la matriz de transformacion homogenea
T5
=
IRB4600.fkine(qr5);%Guardamos
el valor
de cinematica
ikine devuelve las coordenadas de la articulacin para
el manipulador
descrito porinversa
el objeto robot. T
%Articulacion qr6
es IRB4600.fkine(qr6);%Calculamos
una matriz de transformacin homogneala
quematriz
describe de
el efector
final.
transformacion
homogenea
T6
=
IRB4600.fkine(qr6);%Guardamos
el
valor
de
cinematica
inversa
Aplicamos cinemtica inversa para cada valor de articulacin propuesto anteriormente.
ROBOTICA.
IRB4600_1
%llamo al scrip
%% Cinematica Inversa
% Articulacion qr1
%Aplicamos el Metodo Iterativo
IRB4600.ikine(T1)%Este metodo ha fallado
%Aplicamos el Metodo Seudo Inverso
IRB4600.ikine(T1,'pinv')%Este metodo ha fallado
%Aplicamos el Metodo de las desacoplo cincematico
IRB4600.ikine6s(T1,'run')
IRB4600.ikine6s(T1,'ruf')
IRB4600.ikine6s(T1,'rdn')
IRB4600.ikine6s(T1,'rdf')
IRB4600.ikine6s(T1,'iun')
IRB4600.ikine6s(T1,'idn')
IRB4600.ikine6s(T1,'idf')
%------------------------% Articulacion qr2
%Aplicamos el Metodo Iterativo
%------------------------metodo ha fallado
%IRB4600.ikine(T2)%Este
Articulacion qr2
%Aplicamos
el
Metodo
Seudo
Inverso
%Aplicamos el Metodo Iterativo
IRB4600.ikine(T2,'pinv')%Este
metodo
ha fallado
IRB4600.ikine(T2)%Este metodo ha
fallado
%Aplicamos
el
Metodo
de
las
desacoplo
cincematico
%Aplicamos el Metodo Seudo Inverso
IRB4600.ikine6s(T2,'run')
IRB4600.ikine(T2,'pinv')%Este metodo ha fallado
IRB4600.ikine6s(T2,'ruf')
%Aplicamos
el Metodo de las desacoplo cincematico
IRB4600.ikine6s(T2,'rdn')
IRB4600.ikine6s(T2,'run')
IRB4600.ikine6s(T2,'rdf')
IRB4600.ikine6s(T2,'ruf')
IRB4600.ikine6s(T2,'iun')
IRB4600.ikine6s(T2,'rdn')
IRB4600.ikine6s(T2,'idn')
IRB4600.ikine6s(T2,'rdf')
IRB4600.ikine6s(T2,'idf')
IRB4600.ikine6s(T2,'iun')
%------------------------IRB4600.ikine6s(T2,'idn')
% Articulacion qr3
IRB4600.ikine6s(T2,'idf')
%Aplicamos el Metodo Iterativo
%------------------------metodo ha fallado
%IRB4600.ikine(T3)%Este
Articulacion qr3
%Aplicamos
el
Metodo
Seudo
Inverso
%Aplicamos el Metodo Iterativo
IRB4600.ikine(T3,'pinv')%Este
metodo
ha fallado
IRB4600.ikine(T3)%Este metodo ha
fallado
%Aplicamos
el
Metodo
de
las
desacoplo
cincematico
%Aplicamos el Metodo Seudo Inverso
IRB4600.ikine6s(T3,'run')
IRB4600.ikine(T3,'pinv')%Este
metodo ha fallado
IRB4600.ikine6s(T3,'ruf')
%Aplicamos
el Metodo de las desacoplo cincematico
IRB4600.ikine6s(T3,'rdn')
IRB4600.ikine6s(T3,'run')
IRB4600.ikine6s(T3,'rdf')
IRB4600.ikine6s(T3,'ruf')
IRB4600.ikine6s(T3,'iun')
IRB4600.ikine6s(T3,'rdn')
IRB4600.ikine6s(T3,'idn')
IRB4600.ikine6s(T3,'rdf')
IRB4600.ikine6s(T3,'idf')
IRB4600.ikine6s(T3,'iun')
%------------------------IRB4600.ikine6s(T3,'idn')
% Articulacion qr4
IRB4600.ikine6s(T3,'idf')
%Aplicamos el Metodo Iterativo
%------------------------metodo ha fallado
%IRB4600.ikine(T4)%Este
Articulacion qr4
%Aplicamos
el
Metodo
Seudo
Inverso
%Aplicamos el Metodo Iterativo
IRB4600.ikine(T4,'pinv')%Este
metodo
ha fallado
IRB4600.ikine(T4)%Este
metodo ha
fallado
%Aplicamos
el
Metodo
de
las
desacoplo
cincematico
%Aplicamos el Metodo Seudo Inverso
IRB4600.ikine6s(T4,'run')
IRB4600.ikine(T4,'pinv')%Este metodo ha fallado
IRB4600.ikine6s(T4,'ruf')
%Aplicamos
el Metodo de las desacoplo cincematico
IRB4600.ikine6s(T4,'rdn')
IRB4600.ikine6s(T4,'run')
IRB4600.ikine6s(T4,'rdf')
IRB4600.ikine6s(T4,'ruf')
IRB4600.ikine6s(T4,'iun')
IRB4600.ikine6s(T4,'rdn')
IRB4600.ikine6s(T4,'idn')
IRB4600.ikine6s(T4,'rdf')
IRB4600.ikine6s(T4,'idf')
IRB4600.ikine6s(T4,'iun')
%------------------------IRB4600.ikine6s(T4,'idn')
% Articulacion qr5
IRB4600.ikine6s(T4,'idf')
ROBOTICA.
%Aplicamos el Metodo Iterativo
%------------------------metodo ha fallado
%IRB4600.ikine(T5)%Este
Articulacion qr5
%Aplicamos
el
Metodo
Seudo
Inverso
%Aplicamos el Metodo Iterativo
% Articulacion qr6
%Aplicamos el Metodo Iterativo
IRB4600.ikine(T6)%Este metodo ha fallado
%Aplicamos el Metodo Seudo Inverso
IRB4600.ikine(T6,'pinv')%Este metodo ha fallado
%Aplicamos el Metodo de las desacoplo cincematico
IRB4600.ikine6s(T6,'run')
IRB4600.ikine6s(T6,'ruf')
IRB4600.ikine6s(T6,'rdn')
IRB4600.ikine6s(T6,'rdf')
IRB4600.ikine6s(T6,'iun')
IRB4600.ikine6s(T6,'idn')
IRB4600.ikine6s(T6,'idf')
%---------------------------------------------------
Generacin de trayectorias
ROBOTICA.
5.- CONCLUSIONES.
Se puede concluir que con la realizacin de esta prctica se logr aplicar la cinemtica directa e
inversa del robot IRB4600 con ayuda del tool box de Peter Corke. Es importante decir que para
comprobar los valores de las coordenadas de acuerdo a la hoja tcnica del robot se tuvo que poner
a ready el robot y as poder saber las distancias tanto en el eje x, y, z, tambin se logr
comprender que existen varios mtodos para calcular la cinemtica inversa entre los que podemos
mencionar son: mtodo iterativo, mtodo pseudo-inverso y desacoplo cinemtico. El mtodo de
desacoplo cinemtico presenta la caracterstica de poder cambiar sus configuraciones del brazo
(run, ruf, rdn, rdf.etc) esto para cuando el robot pasa por una configuracin singular. Tambin se
logr determinar las trayectorias coordinadas (jtraj) y continas del robot (ctraj).
6.- BIBLIOGRAFA
Aurova. (2003). Recuperado el 13 de Noviembre de 2016, de Aurova:
http://www.aurova.ua.es/robolab/EJS2/RRR_Intro_3.html
Bermudez, E. P. (2010). Fundamentos de control con MATLAB. Madrid: PEARSON EDUCACIN.
Corke, P. (2011). Robtica, Visin y Control. En P. Corke, Robtica, Visin y Control. Springer.
Aurova. (2003). Recuperado el 13 de Noviembre de 2016, de Aurova:
http://www.aurova.ua.es/robolab/EJS4/PRR_Suficiencia_Intro_2.html
SAHA, S. K. (2010). introduccin a la robtica. Mxico: McGRAW-HILL.
ROBOTICA.