You are on page 1of 23

ROBOTICA.

PRACTICA: MANIPULABILIDAD Y 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.

Teziutln, Puebla; Agosto-Diciembre 2016

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.

3.- MARCO TERICO.


Cinemtica del Robot
La cinemtica del robot estudia el movimiento del mismo con respecto a un
sistema de referencia sin considerar las fuerzas que intervienen. 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 sus coordenadas
articulares.
Existen dos problemas fundamentales a resolver en la cinemtica del robot (Figura
1); el primero de ellos se conoce como el problema cinemtico directo, y 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 de los elementos
del robot; el segundo, denominado problema cinemtico inverso, resuelve la
configuracin que debe adoptar el robot para una posicin y orientacin del
extremo conocidas.
Denavit y Hartenberg propusieron un mtodo sistemtico para describir y
representar la geometra espacial de los elementos de una cadena cinemtica, y
en particular de un robot, con respecto a un sistema de referencia fijo. Este
mtodo utiliza una matriz de transformacin homognea para describir la relacin
espacial entre dos elementos rgidos adyacentes, reducindose el problema
cinemtico directo a encontrar una matriz de transformacin homognea 4 4 que
relacione la localizacin espacial del extremo del robot con respecto al sistema de
coordenadas de su base.
Por otra parte, la cinemtica del robot trata tambin de encontrar las relaciones
entre las velocidades del movimiento de las articulaciones y las del extremo. Esta
relacin viene dada por el modelo diferencial expresado mediante la matriz
Jacobiana.
La resolucin del problema cinemtico directo permite conocer cul es la posicin
y orientacin que adopta el extremo del robot cuando cada una de las variables

ROBOTICA.

que fijan la posicin u orientacin de sus articulaciones toma valores


determinados.

Figura 1. Diagrama de relacin entre cinemtica directa e inversa.

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

que su extremo se posicione y oriente segn una determinada localizacin


espacial

As cmo es posible abordar el problema cinemtico directo de una manera


sistemtica a partir de la utilizacin de matrices de transformacin homogneas, e
independientemente de la configuracin del robot, no ocurre lo mismo con el
problema cinemtico inverso, siendo el procedimiento de obtencin de las
ecuaciones fuertemente dependiente de la configuracin del robot.
As como es posible abordar el problema cinemtico directo de una manera
sistemtica a partir de la utilizacin de matrices de transformacin homogneas, e
independientemente de la configuracin del robot, no ocurre lo mismo con el
problema cinemtico inverso, siendo el procedimiento de obtencin de las
ecuaciones fuertemente dependiente de la configuracin del Se han desarrollado
algunos procedimientos genricos susceptibles de ser programados, de modo
que un computador pueda, a partir del conocimiento de la cinemtica del robot
(con sus parmetros de Denavit-Hartenberg, por ejemplo) obtener la n-upla de
valores articulares que posicionan y orientan su extremo. El inconveniente de
estos procedimientos es que se trata de mtodos numricos iterativos, cuya
velocidad de convergencia e incluso su convergencia en s no est siempre
garantizada.

ROBOTICA.

A la hora de resolver el problema cinemtico inverso es mucho ms adecuado


encontrar una solucin cerrada. Esto es, encontrar una relacin matemtica
explcita de la

Este tipo de solucin presenta, entre otras, las siguientes ventajas:


En muchas aplicaciones, el problema cinemtico inverso ha de resolverse en
tiempo real (por ejemplo, en el seguimiento de una determinada trayectoria). Una
solucin de tipo iterativo no garantiza tener la solucin en el momento adecuado.
Al contrario de lo que ocurra en el problema cinemtico directo, con cierta
frecuencia la solucin del problema cinemtico inverso no es nica; existiendo
diferentes n-uplas

que posicionan y orientan el extremo del robot

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.

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.
3.1. Cinemtica directa
La cinemtica directa permite conocer cul es la posicin y orientacin que adopta el extremo del
robot cuando cada una de las variables que fijan la posicin u orientacin de sus articulaciones
toma valores determinados.
Tambin podremos mencionar que no es de inters saber las causas que se presentan en el
movimiento de los motores. Si no, nicamente se toma en cuenta la descripcin del mismo.
Se utiliza algebra vectorial y matricial para desarrollar un mtodo generalizado y sistemtico para
describir y representar la localizacin de los elementos de un brazo con respecto a un sistema de
referencia fijo.
Como los elementos del brazo pueden girar y/o trasladarse con respecto a un sistema de
coordenadas ligado al cuerpo a lo largo del eje de la articulacin para cada elemento.
El problema cinemtico directo se reduce a encontrar una matriz de transformacin que relaciona el
sistema de coordenadas ligado al cuerpo al sistema de coordenadas de referencia. (SAHA, 2010)

3.2. Cinemtica inversa.


Los robots basados en computadora se suelen controlar en el espacio de las variables de
articulacin, mientras que los objetos que se manipulan se suelen expresar en un sistema de
coordenadas mundo.
Con el fin de controlar la posicin y orientacin del efector final de un robot para alcanzar su
objeto, es ms importante la solucin cinemtica inversa.
En pocas palabras dada la posicin y orientacin del efector final de un brazo robtico y sus
parmetros de articulacin y elementos se busca encontrar los ngulos correspondientes del robot
de manera que pueda posicionar como se desee el efector final.
En general, el problema cinemtico inverso se puede resolver por diversos mtodos, tales como la
transformacin inversa, el lgebra de tornillo,
mtodos geomtricos. (Bermudez, 2010)

ROBOTICA.

matrices duales, cuaterniones duales, iterativo y

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:

Transformacin inversa (Paul y col. [1981]).

Algebra de tornillo (Kohli y Soni [1975]).

Matrices duales (Denavit [1956]).

Cuaterniones duales (Yang y Freudenstein [1964]).

Iterativo (Uicker y col. [1964]).

Mtodos geomtricos (Lee y Ziegler [1984]).

Desacoplo Cinemtico (Pieper [1968]).

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)

3.3.1.- Descripciones en el espacio cartesiano versus espacio de las articulaciones.


Principalmente la diferencia radica en que el estudio de las trayectorias en el espacio Cartesiano
toma en cuenta el movimiento del efector final sin importar lo que tengan que hacer las
articulaciones para lograrlo. En el caso del estudio de trayectorias en el espacio de las
articulaciones, se trabaja independiente cada como trabajara cada articulacin, sin importar el
comportamiento de las dems. Es claro que se cuida la posicin final.
3.3.2.- Bases de planificacin de trayectorias.
Para planificacin de trayectorias el control cinemtica debe ser capaz de:
3.3.3.- Conversin de la especificacin de movimiento a un plano cartesiano.
Obtener una cantidad de puntos finitos que correspondan a la trayectoria.
Utilizando la Cinemtica inversa, obtener la posicin de las articulaciones dependiendo de la
posicin final de efector.
Interpolacin de los puntos de la articulacin obtenidos del anlisis anterior, para generar puntos o
expresiones realizables. Aqu se genera una trayectoria cartesiana lo ms prxima a lo surgido del
anlisis anterior.
Se muestrea la trayectoria para generar referencias de control dinmico.

ROBOTICA.

3.3.4.- Planificacin de trayectorias en el espacio de las articulaciones.


Los robots al realizar alguna tarea deben ejecutar determinada trayectoria, principalmente podemos
suponer un punto de inicio y un punto de llegada. El planteamiento anterior conlleva una enorme
cantidad de posibles movimientos para alcanzar determinado punto. Es claro que algunas de ellas
son las mejores, sea por simplicidad, limitantes geomtricas o espaciales, o por el tipo de
operacin. Para determinar las trayectorias existen tres posibilidades:
3.3.5.- Trayectorias punto a punto.
La esencia es llevar cada articulacin de un punto inicial a un punto final, aqu el control de las
articulaciones es independiente pues cada actuador lleva a su articulacin al punto donde debe
estar a la mxima velocidad posible o en el menor tiempo posible. Se puede realizar el movimiento
de un eje a la vez o de manera simultnea.

Movimiento eje a eje

Movimiento simultaneo de ejes

3.3.6.- Trayectorias coordinadas o iscronas.


Tiene la finalidad de llevar a todas las articulaciones al final de su carrera de manera simultnea.
Para ello se realizan clculos para que todos los actuadores trabajen al mejor desempeo posible y
adecundose a las velocidades y movimientos del actuador que tenga que ir ms lento. Se busca
tambin que no forzar los actuadores y evitar tiempos largos provenientes de la espera que se
tiene que hacer hasta que cada uno de los actuadores mueva su articulacin para que el siguiente
trabaje.

ROBOTICA.

Trayectorias coordinadas o iscronas

3.3.7.- Trayectorias continas.


Cuando la trayectoria del extremo del robot es conocida por el usuario. Esta se tiene que obtener
mediante clculos continuos para cada articulacin. Al observar despus de este anlisis las
articulaciones se puede denotar un movimiento posiblemente ilgico, descontrolado, sin sentido de
estas y posiblemente al lmite; pero si se realiza una observacin al efector final, podremos notar
como el extremo realiza la trayectoria que se le pidi siguiendo todos los puntos, de ser posible.

Trayectorias continuas

ROBOTICA.

3.3.8.- Trayectorias en el espacio cartesiano.


Cuando se realiza una trayectoria es fundamental indicar de donde parte y a donde debe llegar,
pero tambin es importante agregar informacin como: velocidades, instantes de paso y tipos de
trayectorias, todo esto en el intervalo de los puntos principales. Por lo anterior se deben agregar
puntos intermedios siguiendo coordenadas cartesianas para que se realice la trayectoria deseada y
con precisin.Para la localizacin de puntos intermedios se utiliza la interpolacin, teniendo en
cuenta que cada coordenada evoluciona a velocidad constante (ms comn).

3.4.- Comandos ctraj y jtraj


3.4.1.- ctraj
Trayectoria cartesiana entre dos poses
Tc = ctraj (T0, T1, n) es una trayectoria cartesiana (4x4xN) de la pose T0 a T1 con n puntos que
siguen un perfil de velocidad trapezoidal a lo largo de la trayectoria. La trayectoria cartesiana es
una secuencia de transformacin homognea y el ltimo subndice es el ndice de puntos, es decir,
T (:,:, i) es el i-simo punto a lo largo de la trayectoria.
Tc = ctraj (T0, T1, s) como anteriormente, pero los elementos de s (Nx1) especifican la distancia
fraccional a lo largo de la trayectoria, y estos valores estn en el rango [0 1]. El i-simo punto
corresponde a una distancia s (i) a lo largo de la trayectoria.
Calcular una trayectoria espacial conjunta entre dos configuraciones

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.

1. Obtener los parmetros Denavit y Hartenberg del manupulador IRB4600.


2. Callculo de valores de articulacin partiendo de los datos anteriores (Cinemtica Inversa).
3. Determinacin de manipulabilidad para cada Pose, y generaciones de 3 trayectorias
coordinadas (jtraj) y 3 continuas (ctraj) a partir de los valores previos.

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:

Figura 1. Manipulador ABB IRB4600.

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.

La tabla queda de la siguiente manera:


Articulacin
1

Q1

0.495

0.175

-90

Q2

0.9

Q3+90

-0.175

90

Q4

0.960

-90

Q5

90

Q6

0.135

Obteniendo los parmetros de Denavit y Hartenberg lo que prosigue es comprobar las


dimensiones del robot utilizando Robotics Toolbox de Matlab.
Antes de comenzar a programar se tiene que ejecutar la librera Robotics Toolbox, de lo contrario el
momento d ejecutar nuestro cdigo generara errores.
%Modelo cinematico deL Robot ABB IRB4600
%Manipulador de 5 grados de libertad (RRRRR).
clear L%Se borra toda la informacion de la variable L
%% Declaracion de parametros D-H.
L(1) = Link([0
0.495
0.175
-pi/2
0]);%Conjunto de parametros para el primer eslabon
L(2) = Link([0
0
0.9
0
0]);% Conjunto de parametros para segundo eslabon
L(3) = Link([0
0
-0.175
pi/2
0]);% Conjunto de parametros para tercer eslabon
L(4) = Link([0
0.960
0
-pi/2
0]);% Conjunto de parametros para cuarto eslabon
L(5) = Link([0
0
0
pi/2
0]);% Conjunto de parametros para quinto eslabon
L(6) = Link([0
0.135
0
0
0]);% Conjunto de parametros para sexto eslabon
%% Delaracion de offset
L(3).offset
= pi/2;
En este
apartado de cdigo hemos colocado los parmetros de Denavit y

Hartenberg de la tabla obtenida anteriormente, para el mejor entendimiento hemos comentado


los cdigos.
%% Limites de articulacion o los rangos de movimiento.
IRB4600 = SerialLink(L,'name','RB4600','manufacturer','ABB');
%% Visualizamos el robot
Los lmites de las articulaciones del manipulador lo hemos almacenado
IRB4600.teach;

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.

En la variable qr hemos almacenado los valores de las 6 articulaciones, con el


comando fkine podemos visualizar las dimensiones de los ejes y finalmente con el comando plot
visualizar la posicin e ready del manipulador.

Eje
X
Eje Z

ROBOTICA.

Finalmente, la posicin de ready del manipulador.

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')
%---------------------------------------------------

Posteriormente se va a obtener la manipulabilidad de cada pose como se muestra a continuacin.


%% Calcule su manipulabilidad mediante Yoshikawa
ES165RD.maniplty(qr1,'yoshikawa');
ES165RD.maniplty(qr2,'yoshikawa');
ES165RD.maniplty(qr3,'yoshikawa');
ES165RD.maniplty(qr4,'yoshikawa');
ES165RD.maniplty(qr5,'yoshikawa');
ES165RD.maniplty(qr6,'yoshikawa');
%%-----------------------------------------------------

Generacin de trayectorias

Se van a proponer 3 trayectorias coordinadas de las articulaciones propuestas anteriormente.


IRB4600_1
%llamo al scrip
%% Trayectorias
%Primera trayectoria(Trayectoria Coordinada)
Tra1 = jtraj(qr1,qr2,50);
IRB4600.plot(Tra1);
%Segunda trayectoria(Trayectoria Coordinada)
Tra2 = jtraj(qr2,qr3,50);
IRB4600.plot(Tra2);
%--------------------------------------

ROBOTICA.

Finalmente se propondrn 3 trayectorias continuas.


IRB4600_1
%llamo al scrip
%% Trayectorias
%Primera trayectoria(Trayectoria Coordinada)
Tra1 = ctraj(qr1,qr2,50);
IRB4600.plot(Tra1);
%Segunda trayectoria(Trayectoria Coordinada)
Tra2 = ctraj(qr2,qr3,50);
IRB4600.plot(Tra2);
%--------------------------------------

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.

You might also like