Curso TOOLBOX Robotica

35
05/07/2011 1 Toolbox de Robótica para Matlab María Gabriela Cabrera Matlab Contenido Introducción Peter Corke Instalación Definición de un Nuevo Robot Matrices de Rotación Cuaternios Transformaciones Homogéneas Generación de Trayectorias Cinemática Dinámica Modelos Predefinidos de Manipuladores Toolbox de robótica y simulink Conclusiones

Transcript of Curso TOOLBOX Robotica

Page 1: Curso TOOLBOX Robotica

05/07/2011

1

Toolbox de Robótica para Matlab

María Gabriela Cabrera

Matlab

ContenidoIntroducción Peter CorkeInstalación Definición de un Nuevo Robot Matrices de Rotación Cuaternios Transformaciones Homogéneas Generación de Trayectorias yCinemática Dinámica Modelos Predefinidos de ManipuladoresToolbox de robótica y simulinkConclusiones

Page 2: Curso TOOLBOX Robotica

05/07/2011

2

Introducción Robots Industriales

Desarrollado por Peter Corke.

Versión 8 (2008).

Incluye funciones de cinemática, dinámica, y generación de trayectoriastrayectorias. 

Peter CorkeTitulo de pregrado y maestría en Ingeniería Eléctrica(Universidad de Melbourne).

Titulo PhD en Ingeniería Mecánica y de Manufactura(Universidad de Melbourne).

Presidente‐Editor de la revista IEEE Robotics & Automation.

Fundador y editor asociado del Journal of Field Robotics.

Fundador del Autonomous Systems laboratory.u dado de uto o ous Syste s abo ato y

Ganador de los premios Qantas/Rolls‐Royce y AustralianEngineering Excellence.

Profesor de control y robótica en la Universidad de Tecnologíade Queensland.

Page 3: Curso TOOLBOX Robotica

05/07/2011

3

Instalación 1. Descargar paquete en 

http://www.petercorke.com/RTB/signin.php

2. Llenar información requerida. 

3. Extraer paquete ‘robot’ en  C:\Program Files\MATLAB\R2009a\Toolbox

4 Abrir MATLAB4. Abrir MATLAB

5. Agregar el directorio ‘robot’ al MATLABPATH

file>>set path>>add folder>>robot>>ok>>save

Definición de un Nuevo RobotDefinición en MATLAB:

Li=link([αi a i θ i d i σi ])

á l t l j Z Z b l lαi ángulo entre el eje Zi‐1 y Zi, sobre el plano perpendicular a Xi. El signo lo da la regla de la mano derecha 

ai distancia entre los ejes Zi‐1 y Zi, a lo largo de Xi. El signo lo define el sentido de Xi.

θi: ángulo que forman los ejes Xi‐1 y Xi, sobre el plano perpendicular a Zi. El signo lo da la regla de la mano derechaderecha.

di: distancia a lo largo del eje Zi‐1 desde el origen del sistema Si‐1 hasta la intersección del eje Zi, con el eje Xi. En el caso de articulaciones prismáticas será la variable de desplazamiento.

σi : 0 (rotación) ó 1 (prismática) 

Page 4: Curso TOOLBOX Robotica

05/07/2011

4

Definición de un Nuevo RobotEjemplo:

Figura 1 Robot SRX‐611

Definición de un Nuevo RobotDefinir los parámetros de Denavit‐Hartenberg. 

a2

b2

{1}

{2}

a1

b1 {0}

Figura 2 Parámetros de Denavit‐Hartenberg del SRX‐611

Page 5: Curso TOOLBOX Robotica

05/07/2011

5

Definición de un Nuevo RobotDefinir los parámetros de Denavit‐Hartenberg.

Eslabón 1: a 350 mma1 = 350 mm

d1= 460.5 mm

α1 = 0

θ1 = θ1  {variable, rotación}

Eslabón 2: a2 = 250 mm

d2= ‐85.5 mm

α2= 0

θ2 = θ2  {variable, rotación}

Eslabón 3: a3 = 0 mm

d3= d3 {variable, prismática}

α3 = 0

θ3 = 0

Definición de un Nuevo RobotDefinición en MATLAB:

L1=link([0, 0.350, 0, 0.4605,0]);

L2=link([0, 0.250, 0, ‐0.0855,0]);

L3=link([0, 0, 0, 0,1]);

srx=robot({L1 L2 L3});

srx.name='SRX‐611';

srx.manuf='Sony';

plot(srx,[0 0 0]); 0

0.5

1

Z

xy z

-1-0.5

00.5

1

-1-0.5

00.5

1

-1

-0.5

0

XY

Z

SRX-611

Figura 3 Representación grafica del SRX‐611

Page 6: Curso TOOLBOX Robotica

05/07/2011

6

Matrices de Rotación• Rotación alrededor del eje X MATLAB:

Rx=rotx(α)

• Rotación alrededor del eje Y MATLAB:

Rx

Ry=roty( )Ry

Matrices de Rotación• Rotación alrededor del eje Z: MATLAB:

Rz=rotz(θ)Rz=rotz(θ)

• Matriz de rotación a matriz de TH: MATLAB:

Rz

T=r2t(R)

Page 7: Curso TOOLBOX Robotica

05/07/2011

7

Matrices de RotaciónFunción  Descripción 

angevecr forma angular/vectorial a matriz de rotación (MR)angevecr forma angular/vectorial a matriz de rotación  (MR)

eul2r ángulo de Euler a MR

rotx MR para rotación alrededor del eje X

roty MR para rotación alrededor del eje Y

rotz MR para rotación alrededor del eje Z

rpy2r ángulos roll/pitch/yaw a MR

r2t MR a THt

CuaterniosDefinidos por Hamilton para trabajar con giros y orientaciones.

Un cuaternio Q está constituido por cuatro componentes {q0, q1, q2, q3} que representan al cuaternio base {e, i ,j, k}.

Para la utilización de los cuaternios como metodología de representación de orientación, se realiza una asociación arbitraria del giro de un ángulo θ sobre un vector k al cuaternio definido por:p

Page 8: Curso TOOLBOX Robotica

05/07/2011

8

CuaterniosEjemplo: 

Obtener el cuaternio que representa una rotación de 90° sobre q pel eje k( 3, ‐2, 1).

Matlab:

Q=quaternion(k,θ’)

Q=quaternion([3 ‐2 1],(pi/2))

CuaterniosFunción  Descripción 

+ adición

substracción‐ substracción

/ dividir cuaternio entre un cuaternio o un escalar

* multiplicar cuaternio por un cuaternio o un vector

inv invertir un cuaternio

norm magnitud de un cuaternio

plot mostrar cuaternio como rotación 3D

q2tr cuaternio a THq2tr

quaternion construir cuaternio

qinterp interpolar cuaternio

unit cuaternio unitario

Page 9: Curso TOOLBOX Robotica

05/07/2011

9

Transformaciones Homogéneas

Transformaciones Homogéneas• Matriz de traslación  MATLAB:

T=transl(px, py, pz)

• Rotación alrededor del eje X MATLAB:

T=trotx(α)

Page 10: Curso TOOLBOX Robotica

05/07/2011

10

Transformaciones Homogéneas• Rotación alrededor del eje Y MATLAB:

T=troty( )

• Rotación alrededor del eje z MATLAB:

T=trotz(θ)

Transformaciones Homogéneas• Rotación sobre el eje X seguido  MATLAB:

por una traslación: p

T=trotx(α)*transl(px, py, pz)

• Rotación sobre el eje Y seguido  MATLAB:

por una traslación: 

T=troty( )*transl(px, py, pz)

Page 11: Curso TOOLBOX Robotica

05/07/2011

11

Transformaciones HomogéneasEjemplo:

tr = trotx(.2)*troty(.3)*transl(1,2,3)

trplot(tr)

3.5

4

Z

YZ2

2.53

1.41.61.822.22.4

2.5

3

X

X

Y

YZ

Figura 4 Combinación de varias operaciones

Transformaciones HomogéneasFunción  Descripción 

angevec2tr forma angular/vectorial a transformación homogénea(TH)

eul2tr ángulo de Euler a THeul2tr

oa2tr

rpy2tr ángulos roll/pitch/yaw a TH

tr2angvec TH o matriz de rotación a forma angular/vectorial

tr2eul TH o matriz de rotación en ángulos de Euler

t2r TH a sub‐matriz de rotación 

tr2rpy TH o matriz de rotación a ángulos roll/pitch/yaw

trotx TH para rotación alrededor del eje X

troty TH para rotación alrededor del eje Y

trotz TH para rotación alrededor del eje Z

transl fijar o extraer el componente de traslación de una TH

tnorm normalizar una TH

trplot graficar el sistema de coordenadas de una TH

Page 12: Curso TOOLBOX Robotica

05/07/2011

12

Generación de Trayectorias Ejemplo:

%ángulos iníciales start=[15 45 30 20 60 30]%ángulos finales 

0 0.5 1 1.5 2 2.5 30

50

100Posición de las articulaciones

0 0.5 1 1.5 2 2.5 30

50

100

200

stop=[75 0 120 25 30 0]t=[0:0.5:3]

[pos vel]=jtraj(start,stop,t)

subplot(6,1,1);plot(t,pos(:,1))subplot(6,1,2);plot(t,pos(:,2))subplot(6,1,3);plot(t,pos(:,3))subplot(6,1,4);plot(t,pos(:,4))subplot(6,1,5);plot(t,pos(:,5))

0 0.5 1 1.5 2 2.5 30

0 0.5 1 1.5 2 2.5 320

25

0 0.5 1 1.5 2 2.5 320

40

60

0 0.5 1 1.5 2 2.5 30

20

40

0 0.5 1 1.5 2 2.5 30

2040

Velocidad de las articulaciones

0subplot(6,1,6);plot(t,pos(:,6))figure

%velocidad de cada articulaciónsubplot(6,1,1);plot(t,vel(:,1))subplot(6,1,2);plot(t,vel(:,2))subplot(6,1,3);plot(t,vel(:,3))subplot(6,1,4);plot(t,vel(:,4))subplot(6,1,5);plot(t,vel(:,5))subplot(6,1,6);plot(t,vel(:,6))

0 0.5 1 1.5 2 2.5 3-40-20

0

0 0.5 1 1.5 2 2.5 30

50100

0 0.5 1 1.5 2 2.5 3024

0 0.5 1 1.5 2 2.5 3-20-10

0

0 0.5 1 1.5 2 2.5 3-20-10

0

Generación de Trayectorias Función  Descripción 

ctraj trayectoria cartesianactraj trayectoria cartesiana

jtraj trayectoria de una articulación 

trinterp interpolar TH

Page 13: Curso TOOLBOX Robotica

05/07/2011

13

Cinemática Cinemática Directa

Consiste en determinar cuál es la posición y orientación delextremo final del robot con respecto a un sistema deextremo final del robot, con respecto a un sistema decoordenadas que se toma como referencia, conocidos losvalores de las articulaciones y los parámetros geométricos delos componentes del robot.

Cinemática Inversa

En este caso el problema consiste en resolver la configuraciónd b d t l b t i ió i t ió d lque debe adoptar el robot para una posición y orientación del

extremo conocida.

Cinemática MATLAB:

Cinemática Directa

T fki ( b )T = fkine(robot, q)

fkine calcula la cinemática directa para un vector ‘q‘ querepresenta las coordenadas de la articulación. Devuelve unamatriz de transformación homogénea que describe el efectorfinal.

Cinemática Inversa

q = ikine(robot, T)

ikine devuelve las coordenadas de la articulación para elmanipulador descrito por el objeto robot. T es una matriz detransformación homogénea que describe el efector final.

Page 14: Curso TOOLBOX Robotica

05/07/2011

14

Cinemática Ejemplo:

Articulación θ d a α1 q1 l1 0 0

2 90 d2 0 90

3 0 d3 0 0

4 q4 l4 0 0

Cinemática Ejemplo:L1 = link([0 0 0 1 0]);D2 = link([pi/2 0 pi/2 1 1]); 2

4

D2 = link([pi/2 0 pi/2 1 1]);D3 = link([0 0 0 1 1]);L4 = link([0 0 0 1 0]);rob = robot({L1 D2 D3 L4})rob.name=‘robot2';plot(rob, [0 0 0 0]);

P d l i t d l ti l i i áti d 1-4

-20

24

-4-2

0

24

-4

-2

0

2

XY

Z

robot2

x y z

Para un desplazamiento de las articulaciones prismáticas de 1 unidad tenemos:

T=fkine(rob,[0 1 1 0])

Page 15: Curso TOOLBOX Robotica

05/07/2011

15

Cinemática Ejemplo:

Para las coordenadas de las articulaciones q = [‐pi/4 0.5 0.5 pi/3] se obtiene la siguiente matriz de transformación:pi/3] se obtiene la siguiente matriz de transformación:

T = fkine(rob,[‐pi/4 0.5 0.5 pi/3])

Calculo de la cinemática inversa:

qi = ikine(rob,T,[0 0 0 0],[1 1 1 1 0 0])

Cinemática Función  Descripción 

diff2tr vector de movimiento diferencial a TH

fkine calcular cinemática directafkine calcular cinemática directa

ftrans transformar fuerza/movimiento

ikine calcular cinemática inversa 

ikine560 calcular cinemática inversa  para un brazo tipo Puma 560

jacob0 calcular Jacobiano en sistema de coordenadas base

jacobn calcular Jacobiano en el sistema de coordenadas del efector final

tr2diff  TH a vector de movimiento diferencial

tr2jac TH a Jacobiano

Page 16: Curso TOOLBOX Robotica

05/07/2011

16

DinámicaFunción  Descripción 

accel calcular dinámica directa

cinertia calcular matriz de inercia de un manipuladorcinertia calcular matriz de inercia de un manipulador cartesiano

coriolis calcular torque de la articulación debido a efectos de fuerza centrípeta/coriolis

fdyn dinámica directa

friction fricción de la articulación 

gravload calcular torque de la articulación debido a la gravedad

inertia calcular matriz de inercia del manipulador

itorque calcular torque de la articulación debido a la inercia

rne dinámica inversa 

Modelos Predefinidos de Manipuladores

1

2

-2-1

01

2

-2-1

01

2-2

-1

0

XY

Z

Fanuc AM120iB/10L

xy z

Figura  Robot Fanuc ArcMate 120iB/10L

-10

1

-1

0

1

-1.5

-1

-0.5

0

0.5

1

1.5

XY

Z

Motoman HP6xyz

Figura  Robot Motoman HP6

Page 17: Curso TOOLBOX Robotica

05/07/2011

17

Modelos Predefinidos de Manipuladores

0.5

1

xy z

-1-0.5

00.5

1

-1-0.5

00.5

1-1

-0.5

0

XY

Z

Puma 560

Figura  Robot Puma 560

-4-2

02

4

-4-2

02

4-4

-2

0

2

4

XY

Z S4 ABB 2.8xy

z

Figura  Robot ABB S4 2.8

Modelos Predefinidos de Manipuladores

Función  Descripción 

Fanuc10L Fanuc ArcMate 120iB/10L (DH, cinemática)

MotomanHP6 Motoman HP6 (DH, cinemática)

puma560 Puma 560 (DH, cinemática, dinámica)

puma560akb Puma 560 (MDH, cinemática, dinámica)

S4ABB2p8 ABB S4 2.8 (DH, cinemática)

stanford Brazo Stanford (MDH, cinemática, dinámica)

twlink ejemplo simple de 2 articulaciones (DH, cinemática)

Page 18: Curso TOOLBOX Robotica

05/07/2011

18

Toolbox de robótica y simulinkPara utilizar esta característica :

addpath ROBOTDIR/simulinkp

Para observar los bloques:

roblocks

Toolbox de robótica y simulinkDemos:

Page 19: Curso TOOLBOX Robotica

05/07/2011

19

Toolbox de robótica y simulinkDemos:

Conclusiones

Page 20: Curso TOOLBOX Robotica

05/07/2011

20

Referencias Corke, P. (2011, Mayo 8). Robotics Toolbox for MATLAB. Recuperado de www.petercorke.comDapena, E. (2011, Mayo 20). ISPIRO: Introducción a la robótica. Recuperado 

// / / /de http://webdelprofesor.ula.ve/ingenieria/eladio/ISPIRO.htmSourceforge. (s.f.). Recuperado el 27 de Junio de 2011, de http://sourceforge.net/projects/scirt/SpaceLib. (s.f.). Recuperado el 28 de junio de 2011, de http://spacelib.ing.unibs.it/The Orocos Proyect. (s.f.). Recuperado el 27 de Junio de 2011, de http://www.orocos.org/Torres, F., Pomares, J., Gil, P., Puente, S., & Aracil, R. (2002). Robots y Sistemas Sensoriales .Madrid: Pearson Educación .Universidad Don Bosco. (s.f.). Recuperado el 30 de Mayo de 2011, de http://www udb edu sv/Academia/Laboratorios/electronica/FRobotica/guia5http://www.udb.edu.sv/Academia/Laboratorios/electronica/FRobotica/guia5FRO.pdfWane, S. (2011, Mayo 4). Staffordshire University. Recuperado de www.fcet.staffs.ac.uk/sow1/robotmaterial/MasteringRoboticsToolbox.pdf

Toolbox de RobóticaMaría Gabriela Cabrera

Page 21: Curso TOOLBOX Robotica

Resumen—El  Toolbox  de  Robótica  para  Matlab, desarrollado por el profesor Peter Corke, permite modelar  robots  tipo manipulador  con  diferentes números de articulaciones. Es posible describir  la posición  y  orientación  del  extremo  del  robot  a través  de  diferentes  herramientas  matemáticas. Además permite realizar cálculos de cinemática y dinámica. Su principal aplicación es en el área de la robótica industrial.   Palabras  clave— MATLAB,  Peter  Corke,  robótica industrial,  toolbox.  

INTRODUCCIÓN La  robótica  industrial  ha  jugado  un  rol clave en  la automatización de  actividades como  ensamblaje  y manufactura,  en  una gran diversidad de industrias alrededor del mundo. Industrias como  la automovilística y  la  de  fundición  han  sido  importantes precedentes  en  la  introducción de  robots industriales a las líneas de producción. “Se considera  como  un  robot  industrial  a  un manipulador multifuncional dotado de un conjunto  de  grados  de  libertad  con capacidad de reprogramación, utilizado en tareas  de  de  automatización  industrial” [7].  Los  robots  industriales  presentan grandes  beneficios  en  las  líneas  de producción  ya que pueden  realizar  tareas de  manera  rápida  y  eficiente,  algunos poseen  una  capacidad  de  carga importante,  además  de  que  pueden  ser utilizados en ambientes hostiles donde un humano  difícilmente  podría desenvolverse. En  las diferentes  industrias realizan  actividades  como  soldadura, 

ensamblaje y manipulación de materiales.  

Debido  a  la  importancia  anteriormente descrita  de  los  robots  industriales,  es imperativo  contar  con  herramientas  que permitan  simular, analizar y experimentar con  los  robots  sin  necesidad  de  ser manipularlos  directamente  de  manera física.  Un ejemplo de dichas herramientas es  el  Toolbox  de  Robótica  para MATLAB [1], el cual fue desarrollado como “hobby” por  Peter  Corke,  Profesor  de  control  y robótica en  la Universidad   de Tecnología de Queensland en Australia. El Toolbox ha sido  elaborado  y  mejorado  por  casi  una década. Su última publicación es la versión 8,  la  cual  fue  expuesta  en  diciembre  de 2008.  Dicha  versión  posee  funciones  de cinemática,  dinámica  y  generación  de trayectorias. Permite  la representación de la  posición  y  orientación  del  extremo  del robot  a  través  de  vectores,  matrices  de rotación, transformaciones homogéneas, y cuaternios.  Proporciona  ejemplos  de modelos  de  robots  conocidos  como  el Puma560.  Incluye  un  set  de  bloques  que pueden  ser  utilizados  con  Simulink. Conjuntamente,  facilita  una  variedad  de demos  creados  en  Simulink  utilizando diferentes bloques del Toolbox.   El código fuente  está  disponible,  por  lo  que  puede ser entendido y utilizado para enseñanza.  

ESTADO DEL ARTE Existen  otras  herramientas  de  dominio público disponibles que permiten simular y 

Toolbox de Robótica 

María Gabriela Cabrera  Laboratorio de Sistemas Discretos, Automatización e Integración 

LaSDAI‐ULA Julio, 2011 

Page 22: Curso TOOLBOX Robotica

analizar manipuladores.  Algunos  de  estos son  SpaceLib,  JRoboOp,  Toolbox  de Robótica para Scilab y Orocos. SpaceLib es una  librería desarrollada para ser utilizada con  MATLAB  en  el  caso  de  aplicaciones numéricas  y  con Maple  para  aplicaciones simbólicas.  SpaceLib  [5]  posee  funciones para  cinemática  y  dinámica.    Otra herramienta  disponible  pero  que  no  fue creada  para  MATLAB  es  JRoboOp  [3]. Dicha herramienta es un paquete de  Java que permite  simular  y  visualizar  en  3D  el modelo  de  un  robot.  Proporciona funciones  de  cinemática,  dinámica  y generación  de  trayectorias.  A  diferencia del  Toolbox  de  Robótica  para  Matlab, incluye  una  mejor  visualización  3D  del robot.    Otra  herramienta  que  posee  la ventaja de funcionar con software  libre es el  Toolbox  de  Robótica  para  Scilab  [4]. Dicho  Toolbox,  posee  funciones  de cinemática,  dinámica  y  generación  de trayectorias  bastante  similares  a  las  del Toolbox  de  Robótica  de  MATLAB,  sin embargo  no  es  tan  completo. Adicionalmente,  existe  la  herramienta conocida  como  Orocos  (Open  Robot Control Software) [6] también de software libre,  la cual es quizás  la más completa de las anteriormente descritas. Consta de una librería  para  cinemática  y  dinámica,  una librería  para  filtrado  Bayesiano,  y  un conjunto  de  herramientas  para  crear aplicaciones con robots en tiempo real.  

DEFINICIÓN DE UN NUEVO ROBOT  Una  forma  de  definir  un  nuevo  robot utilizando  el  Toolbox  de  Robótica,  es realizando  primero  una  descripción  de cada  articulación  o  eslabón  del  robot.  La función que se utiliza es la siguiente: 

Li=link([αi ai θi di σi ]) 

Los  primeros  cuatro  parámetros  de  la función anterior son calculados de acuerdo a  los  lineamientos de Denavit‐Hartenberg y  el  ultimo  parámetro  define  el  tipo  de articulación,  de  rotación  o  prismática.  A continuación, se explica brevemente como realizar el  cálculo de cada parámetro [7]. 

αi:  ángulo  entre  el  eje  Zi‐1  y  Zi,  sobre  el plano perpendicular a Xi. El  signo  lo da  la regla de la mano derecha 

ai:  distancia  entre  los  ejes  Zi‐1  y  Zi,  a  lo largo de Xi. El signo lo define el sentido de Xi. 

θi:  ángulo  que  forman  los  ejes  Xi‐1  y  Xi, sobre el plano perpendicular a Zi. El signo lo da la regla de la mano derecha. 

di: distancia a lo largo del eje Zi‐1 desde el origen  del  sistema  Si‐1  hasta  la intersección del eje Zi, con el eje Xi. En el caso  de  articulaciones  prismáticas  será  la variable de desplazamiento. 

σi : 0 (rotación) ó 1 (prismática) 

Una  vez  definida  cada  articulación  el siguiente paso es crear un objeto del  tipo robot.  Para  esto  se  utiliza  la  siguiente función, cuyo parámetro es un arreglo con la descripción de cada eslabón:  

variable_robot=robot({L1 L2…Li}) 

Para obtener una representación grafica simplemente se utiliza  

plot(varable_robot,q) 

donde q es un vector con los ángulos para cada articulación.  

Las  funciones anteriormente descritas son utilizadas  en  el  siguiente  ejemplo,  donde se  realiza  la  definición  de  un  robot  SRX‐611.  Dicho  robot  es  del  tipo  “pick  and place”,  es  fabricado  por  la  Sony,  y  posee tres  articulaciones.  Dos  de  las articulaciones son de rotación y  la tercera es prismática.  Es utilizado en  industrias de 

Page 23: Curso TOOLBOX Robotica

manufactura  de  electrónicos, farmacéutica, entre otros.  

 

Ejemplo: 

En  la figura 1 se aprecia una fotografía de un robot SRX‐611. 

Figura 1 Robot SRX‐611 

En  la  figura  2  se  observa  una representación  grafica  del  robot  SRX‐611 donde  se  señalan  algunos  de  los parámetros de Denavit‐Hartenberg.  

Figura 2 Parámetros de Denavit‐Hartenberg del SRX‐611 

Como  se  dijo  anteriormente,  primero  es necesario  definir  los  parámetros  de Denavit‐Hartenberg para cada articulación. 

Eslabón 1:   

a1 = 350 mm 

d1= 460.5 mm 

α1 = 0 

θ1 = θ1  {variable, rotación} 

Eslabón 2:   

a2 = 250 mm 

d2= ‐85.5 mm 

α2= 0 

θ2 = θ2  {variable, rotación} 

Eslabón 3:   

a3 = 0 mm 

d3= d3 {variable, prismática} 

α3 = 0 

θ3 = 0 

Una  vez  establecidos  los  valores  de  cada parámetro es posible escribir el código en MATLAB  para  la  definición  completa  del robot SRX‐611: 

 

%Ejemplo 1: Definición de un nuevo robot 

 

%Definir cada articulación de acuerdo a los parámetros de Denavit‐Hartenberg 

 

L1=link([0, 0.350, 0, 0.4605,0]); 

L2=link([0, 0.250, 0, ‐0.0855,0]); 

L3=link([0, 0, 0, 0,1]); 

 

%Crear un objeto del tipo robot   

srx=robot({L1 L2 L3}); 

 

%Si se desea asignar nombre al robot 

srx.name='SRX‐611'; 

 

%Si se desea especificar fabricante 

srx.manuf='Sony'; 

 

%Mostrar representación gráfica del robot  

plot(srx,[0 0 0]);  

 

Page 24: Curso TOOLBOX Robotica

-1-0.5

00.5

1

-1-0.5

00.5

1

-1

-0.5

0

0.5

1

XY

Z

SRX-611

xy z

Figura 3 Representación grafica del SRX‐611 

En la figura 3 se aprecia la grafica obtenida al  ejecutar  la  función  plot.  Donde, evidentemente  se  observa  una representación  grafica  sencilla  del  robot SRX‐611.  

Es  importante  destacar  que  con  las funciones  descritas  anteriormente simplemente  es  posible  realizar  una descripción básica del robot, resta analizar qué  funciones pueden ser utilizadas como herramientas  matemáticas  para representar  el  movimiento  espacial  del extremo del robot.  

MATRICES DE ROTACIÓN  Una  forma  de  representar  la  orientación de un sistema de coordenadas  respecto a otro  fijo  es  mediante  las  matrices  de rotación  [2].  A  través  de  las matrices  de rotación es posible analizar  la orientación del  efector  final  del  robot  respecto  a  su base.  

Es  posible  que  se  presenten  rotaciones alrededor del eje X, Y, Z o combinaciones de  éstas.  A  continuación,  se  presentan algunas matrices de  rotación y  su  función correspondiente  en  MATLAB.  Es importante  destacar  que  los  ángulos deben ser definidos en radianes. 

 

 

 

Rotación alrededor del eje X: 

 MATLAB: rotx(α) 

 

Rotación alrededor del eje Y: 

 MATLAB: T=roty(�) 

 

Rotación alrededor del eje Z: 

MATLAB: T=rotz(θ) 

 

En la tabla 1 se presentan las funciones del Toolbox  de Robótica  relacionadas  con  las matrices  de  rotación  y  una  breve descripción de las mismas.  Tabla 1 Funciones para matrices de rotación  

Función   Descripción  

angevecr  forma angular/vectorial a matriz de rotación  (MR)  

eul2r  ángulo de Euler a MR  

rotx  MR para rotación alrededor del eje X 

roty  MR para rotación alrededor del eje Y 

rotz  MR para rotación alrededor del eje Z 

rpy2r  ángulos roll/pitch/yaw a MR

r2t  MR a Transformación homogénea 

Existen  herramientas  matemáticas alternativas  que  al  igual  que  las matrices de  rotación  representan  la orientación de un  objeto.  Algunas  de  éstas  incluyen  los 

Page 25: Curso TOOLBOX Robotica

angulos  roll,  pitch,  yaw  de  Euler  y  los cuaternios.  

CUATERNIOS  Los  cuaternios  fueron  definidos  por Hamilton  para  definir  giros  y orientaciones.  Poseen  la  ventaja  de  que son más compactos y sencillos de calcular computacionalmente  que  las matrices  de rotación. Representan un giro de θ grados alrededor  de  un  vector  k  [2]. Generalmente,  posee  una  parte  escalar  y una  parte  vectorial.  Puede  representarse como: 

En MATLAB  la definición puede  realizarse de la siguiente forma: 

 Ejemplo: 

Obtener el cuaternio que representa una rotación de 90° sobre el eje k( 3, ‐2, 1). 

% Nota: el ángulo debe estar expresado en radianes  

Q=quaternion([3 ‐2 1],(pi/2)) 

 En  la  tabla  2  se  muestran  las  funciones disponibles en el Toolbox de Robótica para manejar  cuaternios  y  una  breve descripción de cada una.  

Tabla 2 Funciones para cuaternios 

Función   Descripción  

+   adición 

‐   substracción  

/   dividir cuaternio entre un cuaternio o un escalar  

*  multiplicar cuaternio por un cuaternio o un vector  

inv  invertir un cuaternio 

norm  magnitud de un cuaternio 

plot  mostrar cuaternio como rotación 3D 

q2tr  cuaternio a TH 

quaternion  construir cuaternio  

qinterp  interpolar cuaternio 

unit  cuaternio unitario 

  

Con  las  matrices  de  rotación  y  los cuaternios  es  posible  representar  la orientación  del  extremo  del  robot,  sin embargo,  también  es  importante  tener conocimiento sobre la posición del mismo. Una herramienta que permite representar tanto  la orientación  como  la posición  son las  matrices  de  transformación homogénea.  

TRANSFORMACIONES HOMOGÉNEAS  En robótica resulta de gran utilidad poseer un  mecanismo  que  permita  localizar  un objeto  de  acuerdo  a  su  posición  y orientación  respecto  a  un  sistema  de referencia.  

Para describir  la posición y orientación de un  objeto  es  posible  utilizar  la matriz  de transformación  homogénea  definida  por Forest [7]: 

        

   

 

Esta matriz 4x4 está compuesta por cuatro submatrices,  de  las  cuales  solo  los componentes  de  rotación  y  traslación resultan de interés para la robótica.  

Page 26: Curso TOOLBOX Robotica

       

 En  robótica  es  posible  tener transformaciones  que  representan  solo traslación, solo  rotación, o combinaciones de ambas. Seguidamente, se presentan las matrices  para  varias  transformaciones homogéneas y su función correspondiente en MATLAB.  Es  importante  destacar  que los  ángulos  deben  ser  definidos  en radianes.  

Matriz de Traslación:       

 MATLAB: T=transl(px, py, pz)              

Rotación alrededor del eje X: 

 MATLAB: T=trotx(α) 

 

Rotación alrededor del eje Y: 

 MATLAB: T=troty(�) 

 

Rotación alrededor del eje z     

 MATLAB: T=trotz(θ) 

 

Rotación  sobre  el  eje  X,  seguido  por  una traslación:            

 MATLAB: T=trotx(α)*transl(px, py, pz) 

 

Rotación  sobre  el  eje  Y,  seguido  por  una traslación:      

 MATLAB: T=troty(�)*transl(px, py, pz) 

 

En  el  siguiente  ejemplo  se  muestra  el código escrito en MATLAB, donde se llevan a  cabo  diferentes  transformaciones homogéneas. Adicionalmente, se utiliza  la función  trplot(T),  a  través  de  la  cual  es posible  visualizar  cómo  la  coordenadas originales  son  cambiadas  debido  a  una transformación T.  

 

Ejemplo: 

 

%Ejemplo  2  Transformaciones Homogéneas  

 

%Matriz de traslación  

T=transl(1,1,1); 

trplot(T) 

 

%Matriz  para  una  rotación  alrededor  del eje X 

Tx=trotx(0.2); 

figure 

trplot(Tx) 

Page 27: Curso TOOLBOX Robotica

 

%Matriz  para  una  rotación  alrededor  del eje Y 

Ty=troty(0.2); 

figure 

trplot(Ty) 

 

%Matriz  para  una  rotación  alrededor  del eje Z 

Tz=trotz(0.2); 

figure 

trplot(Tz) 

 

%Composición de varias transformaciones  

tr = trotx(.2)*troty(.3)*transl(1,2,3) 

figure 

trplot(tr) 

1

1.5

21

1.5

2

1

1.2

1.4

1.6

1.8

2

Z

Y

X

Y

X

Z

Figura 4 Traslación 

00.5

1 0 0.2 0.4 0.6 0.8

0

0.2

0.4

0.6

0.8

1

Y

Y

X

X

Z

Z

Figura 5 Rotación alrededor del eje X 

0 0.5 100.51

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

1.2

X

X

Z

Y

Z

Y Figura 6 Rotación alrededor del eje Y 

0

0.5

1

00.2

0.40.6

0.8

0

0.2

0.4

0.6

0.8

1

X

X

Z

Y

Y

Z

Figura 7 Rotación alrededor del eje Z 

22.5

3

1.41.61.822.22.4

2.5

3

3.5

4

X

X

Z

Y

Y

Z

Figura 8 Combinación de varias operaciones 

En las figuras 4, 5, 6, 7 y 8 se aprecia cómo las coordenadas originales cambian debido a una transformación  homogénea.  Las  nuevas coordenadas  son  las  de  color  azul mientras 

Page 28: Curso TOOLBOX Robotica

que  en  negro  se  observan  las  coordenadas originales.  Con  las  transformaciones  homogéneas  es  posible  representar  la  posición  y orientación  del  extremo  del  robot.  Sin embargo,  para  entender más  a  fondo  las capacidades  del  robot  es  necesario estudiar  las  funciones  del  Toolbox  que representan  las  trayectorias  y movimientos de cada articulación.  

GENERACIÓN DE TRAYECTORIAS   En  ciertas  aplicaciones  puede  ser necesario programar un robot para que su extremo  describa  una  trayectoria específica,  o  conocer  qué  trayectoria  se generará  al moverse de  un  punto  a otro. Para  esto  el  Toolbox  cuenta  con  las funciones jtraj y ctraj.  

La  función  jtraj  devuelve  una  trayectoria generada al mover las articulaciones desde un conjunto de coordenadas original hacia otro  conjunto  de  coordenadas. Opcionalmente,  puede  devolver  la velocidad  y  aceleración  de  cada articulación.  

La  función  ctraj  devuelve  una  trayectoria cartesiana  (línea  recta) desde un punto  a otro,  ambos  representados  por  una transformación  homogénea.  Es  necesario especificar  el  número  de  puntos  que  se trazarán.  

En el  siguiente ejemplo  [9],  se muestra el uso  de  la  función  jtraj  para  un manipulador  con  6  articulaciones.  Las articulaciones  recorrerán  una  trayectoria para  moverse  desde  el  conjunto  de coordenadas  iníciales  descritas  por  el vector ‘start’ hasta las coordenadas finales descritas  por  el  vector  ‘stop’.  El  tiempo para  realizar  la  trayectoria  se  especifica con el vector ‘t’.  

 

%Ejemplo 2 Generación de Trayectorias 

 

clc 

%ángulos iníciales  

start=[15 45 30 20 60 30]; 

%ángulos finales  

stop=[75 0 120 25 30 0]; 

%vector de tiempo 

t=[0:0.5:3]; 

 

[pos vel]=jtraj(start,stop,t); 

 

%posición de cada articulación  

subplot(6,1,1);plot(t,pos(:,1)) 

subplot(6,1,2);plot(t,pos(:,2)) 

subplot(6,1,3);plot(t,pos(:,3)) 

subplot(6,1,4);plot(t,pos(:,4)) 

subplot(6,1,5);plot(t,pos(:,5)) 

subplot(6,1,6);plot(t,pos(:,6)) 

figure 

 

%velocidad de cada articulación 

subplot(6,1,1);plot(t,vel(:,1)) 

subplot(6,1,2);plot(t,vel(:,2)) 

subplot(6,1,3);plot(t,vel(:,3)) 

subplot(6,1,4);plot(t,vel(:,4)) 

subplot(6,1,5);plot(t,vel(:,5)) 

subplot(6,1,6);plot(t,vel(:,6)) 

 

Page 29: Curso TOOLBOX Robotica

0 0.5 1 1.5 2 2.5 30

50

100Posición de las articulaciones

0 0.5 1 1.5 2 2.5 30

50

0 0.5 1 1.5 2 2.5 30

100

200

0 0.5 1 1.5 2 2.5 320

25

0 0.5 1 1.5 2 2.5 320

40

60

0 0.5 1 1.5 2 2.5 30

20

40

Figura 9 Posición de cada articulación 

0 0.5 1 1.5 2 2.5 30

2040

Velocidad de las articulaciones

0 0.5 1 1.5 2 2.5 3-40-20

0

0 0.5 1 1.5 2 2.5 30

50100

0 0.5 1 1.5 2 2.5 3024

0 0.5 1 1.5 2 2.5 3-20-10

0

0 0.5 1 1.5 2 2.5 3-20-10

0

Figura 10 Velocidad de cada articulación 

En  las  figuras  9  y  10,  puede  observarse respectivamente  la  posición  y  velocidad  de cada  articulación.  En  la  siguiente  tabla  se incluyen  las  funciones  relacionadas  con generación  de  trayectorias  y  una  breve descripción.  

Tabla 3 Funciones para trayectorias 

Función  Descripción  

ctraj  trayectoria cartesiana  

jtraj  trayectoria de una articulación 

trinterp  interpolar TH  

 

CINEMÁTICA La  cinemática  se  encarga  de  estudiar  el movimiento  del  robot,  sin  tomar  en  cuenta las  leyes  físicas  que  lo  generan,  se  limita  a estudiar  trayectorias  en  función  del  tiempo. La cinemática puede ser abordada desde dos puntos  de  vista:  la  cinemática  directa  y  la cinemática inversa.  La  cinemática  directa  calcula  la  posición  y orientación del extremo del robot a partir del valor de las coordenadas de las articulaciones del robot [2].  En MATLAB  la definición puede  realizarse de la siguiente manera: 

T = fkine(robot, q) fkine  calcula  la  cinemática  directa  para  un vector ‘q‘ que representa las coordenadas de la  articulación  y  devuelve  una  matriz  de transformación  homogénea  que  describe  el efector final. La  cinemática  inversa  calcula  el  valor  de  las coordenadas de  las articulaciones a partir de la  posición  y  orientación  del  extremo  del robot [2].  En MATLAB  la definición puede  realizarse de la siguiente manera: 

q = ikine(robot, T) ikine  devuelve  las  coordenadas  de  la articulación para el manipulador descrito por el  objeto  robot.  T  es  una  matriz  de 

Page 30: Curso TOOLBOX Robotica

10 

transformación  homogénea  que  describe  el efector final. En el ejemplo que  se muestra  seguidamente se  realiza  la definición de un  robot cilíndrico y, posteriormente, el cálculo de la cinemática directa e inversa para el mismo.   Ejemplo [8]: Como  se  explicó  anteriormente,  primero  es necesario definir  los parámetros de Denavit‐Hartenberg.  

Figura 11 Robot cilíndrico 

Tabla 4 Parámetros de Denavit‐Hartenberg para el robot cilíndrico 

Articulación   θ   d   a   α  

1   q1  l1   0   0 

2   90  d2   0   90 

3   0   d3   0   0 

4   q4  l4   0   0 

 En la tabla 4 se muestra el valor de cada uno de los parámetros necesarios para definir el robot. El código escrito en MATLAB para el ejemplo es el siguiente:  %Ejemplo 3: Cinemática directa e inversa    

%Definir  cada  articulación  de  acuerdo  a  los parámetros de Denavit‐Hartenberg L1 = link([0 0 0 1 0]); D2 = link([pi/2 0 pi/2 1 1]); D3 = link([0 0 0 1 1]); L4 = link([0 0 0 1 0]);   %Crear un objeto del tipo robot   rob = robot({L1 D2 D3 L4}); rob.name='robot2';   %Mostrar representación gráfica del robot  plot(rob, [0 0 0 0]);   %Para  un  desplazamiento  de  las articulaciones  prismáticas  de  1  unidad tenemos:   T1fkine(rob,[0 1 1 0])   %Para las coordenadas de las articulaciones q =  [‐pi/4  0.5 0.5 pi/3]  se obtiene  la  siguiente matriz de transformación:   T 2= fkine(rob,[‐pi/4 0.5 0.5 pi/3])   %Cálculo de la cinemática inversa:   qi = ikine(rob,T,[0 0 0 0],[1 1 1 1 0 0])  

-4-2

02

4

-4-2

0

24

-4

-2

0

2

4

XY

Z

robot2

x y z

Figura 12 Representación grafica del robot cilíndrico 

Page 31: Curso TOOLBOX Robotica

11 

En la figura 12 se muestra la representación grafica del robot cilíndrico descrito en la tabla 4. Luego, se muestran las matrices correspondientes a la cinemática directa para obtener primero un conjunto de coordenadas q=[0 1 1 0] y luego q=[‐pi/4  0.5  0.5  pi/3]. Posteriormente se realiza el cálculo de la cinámica inversa usando T2. Como se esperaba, se obtienen las mismas coordenadas que fueron utilizadas para calcular T2.

Tabla 5 Funciones para cinemática 

Función   Descripción  

diff2tr   vector de movimiento diferencial a TH 

fkine   calcular cinemática directa  

ftrans   transformar fuerza/movimiento 

ikine   calcular cinemática inversa 

ikine560   calcular cinemática inversa  para un brazo tipo Puma 560  

jacob0   calcular Jacobiano en sistema de coordenadas base  

jacobn   calcular Jacobiano en el sistema de coordenadas del efector final  

tr2diff   TH a vector de movimiento diferencial 

tr2jac   TH a Jacobiano  

DINÁMICA La  dinámica  de  un  robot  tiene  por  objeto conocer  la  relación  entre  el movimiento  del robot y las fuerzas implicadas en el mismo[7]. A continuación, se presenta una tabla donde se  describen  las  funciones  disponibles relacionadas con dinámica.  

Tabla 6 Funciones para dinámica 

Función   Descripción  

accel  calcular dinámica directa  

cinertia  calcular matriz de inercia de un manipulador cartesiano  

coriolis  calcular torque de la articulación debido a efectos de fuerza centrípeta/coriolis  

fdyn  dinámica directa  

friction  fricción de la articulación 

gravload  calcular torque de la articulación debido a la gravedad  

inertia  calcular matriz de inercia del manipulador  

itorque  calcular torque de la articulación debido a la inercia  

rne  dinámica inversa  

 

MODELOS  PREDEFINIDOS  DE 

MANIPULADORES  El  Toolbox  de  Matlab  cuenta  con  la definición  de  varios  manipuladores industriales  de  gran  utilidad  para  el aprendizaje  del  uso  de  las  funciones  del Toolbox. Los robots predefinidos  incluyen: Fanuc ArcMate 120iB/10L, Motoman HP6, Puma 560, ABB S4 2.8, y Brazo Stanford.  

En  la  tabla  7  se  presentan  las  funciones para  utilizar  cada  uno  de  los  modelos 

Page 32: Curso TOOLBOX Robotica

12 

predefinidos  y  una  breve  descripción  de cada una.  

Tabla 7 Funciones para modelos predefinidos 

Función   Descripción  

Fanuc10L   Fanuc ArcMate 120iB/10L (DH, cinemática)  

MotomanHP6   Motoman HP6 (DH, cinemática) 

puma560   Puma 560 (DH, cinemática, dinámica)  

puma560akb   Puma 560 (MDH, cinemática, dinámica)  

S4ABB2p8   ABB S4 2.8 (DH, cinemática) 

stanford   Brazo Stanford (MDH, cinemática, dinámica)  

twlink   ejemplo simple de 2 articulaciones (DH, cinemática)  

 

El  robot  Fanuc  ArcMate  120iB/10L  es utilizado  para  diferentes  aplicaciones donde  se  requiere  realizar  distintos  tipos de  soldadura  por  arco  o  por  chorro  de plasma,  entre  otros.  Posee  seis articulaciones. En la figugura 13 se observa una  fotografía  del  Fanuc  ArcMate 120iB/10L  y  en  la  figura  14  la representación grafica correspondiente en MATLAB.  

Figura 13 Robot Fanuc ArcMate 120iB/10L 

-2-1

01

2

-2-1

01

2-2

-1

0

1

2

XY

Z

Fanuc AM120iB/10L

xy z

Figura 14 Representación grafica de Fanuc ArcMate 

120iB/10L 

El robot Motoman HP6 es un robot multi‐aplicación con seis grados de  libertad que puede  realizar  actividades  como empaquetar,  distribuir  o  realizar soldaduras por arco.  En las figuras 15 y 16 se  observa  el  robot Motoman  HP6  y  su representación grafica respectivamente.  

Figura 15 Robot Motoman HP6 

-10

1

-1

0

1

-1.5

-1

-0.5

0

0.5

1

1.5

XY

Z

Motoman HP6xyz

Figura 16 Representación grafica de Motoman HP6 

Page 33: Curso TOOLBOX Robotica

13 

TOOLBOX DE ROBÓTICA Y SIMULINK   El  Toolbox  de  Robótica  incluye  un  set  de bloques  con  la mayoría  de  las  funciones del  Toolbox,  las  cuales  pueden  ser utilizados  en  Simulink.  Para  utilizar  esta característica  es  necesario  agregar  los bloques a Simulink, para esto, es necesario escribir  la siguiente  línea en el workspace de MATLAB: 

  addpath ROBOTDIR/simulink  

 

Para observar los bloques: 

    roblocks 

Al  ejecutar  roblocks  debe  observarse  la siguiente ventana.  

Figura 17 Bloques de Robótica para Simulink 

El  Toolbox  incluye  6  demos  con  diferentes ejemplos  de  aplicaciones  usando  Simulink. Para  acceder  a  cada  uno  de  estos  demos simplemente  se  debe  escribir  demo  y  el numero del demo que se desea visualizar. Es decir,  si  se  desea  observar  el  primer  demo, simplemente es necesario escribir demo1 en el workspace de MATLAB.  APLICACIONES El  Toolbox de Robótica  tiene  aplicaciones principalmente  en  la  robótica  industrial. Permite  modelar  manipuladores  con diferentes  números  de  articulaciones.  Es posible describir  la posición  y orientación del  extremo  a  través  de  diferentes herramientas  matemáticas,  además permite  realizar  cálculos  de  cinemática  y dinámica.  Utilizado  en  conjunto  con 

Simulink  también  tiene  aplicaciones  en el área de control y automatización.  

CONCLUSIONES El  toolbox  de  Robótica  para  MATLAB, desarrollado  por  el  profesor  Peter  Corke, permite simular y analizar manipuladores, que  generalmente  representan  robots industriales.  Posee  funciones  para  el estudio de transformaciones homogéneas, cuaternios,  matrices  de  rotación, generación  de  trayectorias,  cinemática  y dinámica. El código puede ser obtenido de manera gratuita, sin embargo funciona con el  software  MATLAB  para  el  cual  es necesario  poseer  una  licencia  para  poder utilizarlo.  El  Toolbox  posee  herramientas matemáticas  poderosas  y  puede  ser utilizado  en  conjunto  con  Simulink  para crear  una  gran  variedad  de  aplicaciones, sin  embargo,  carece  de  una  buena herramienta para visualización 3D.  

BIBLIOGRAFÍA [1]    Corke,  P.  (2011,  Mayo  8).  Robotics 

Toolbox  for  MATLAB.  Recuperado  de www.petercorke.com 

[2]    Dapena,  E.  (2011,  Mayo  20).  ISPIRO: Introducción  a  la  Robótica.  Recuperado  de http://webdelprofesor.ula.ve/ingenieria/eladio/ISPIRO.htm 

[3]    Jroboop.  (s.f.). Recuperado el 28 de  Junio de  2011,  de http://digilander.libero.it/carmine.lia/jroboop/index.html 

[4]    Sourceforge.  (s.f.).  Recuperado  el  27  de Junio  de  2011,  de http://sourceforge.net/projects/scirt/ 

[5]   SpaceLib.  (s.f.). Recuperado el 28 de  junio de 2011, de http://spacelib.ing.unibs.it/ 

[6]    The  Orocos  Proyect.  (s.f.).  Recuperado  el 27  de  Junio  de  2011,  de http://www.orocos.org/ 

[7]    Torres, F., Pomares, J., Gil, P., Puente, S., & Aracil, R. (2002). Robots y Sistemas Sensoriales . Madrid: Pearson Educación. 

Page 34: Curso TOOLBOX Robotica

14 

[8]    Universidad Don Bosco.  (s.f.). Recuperado el  30  de  Mayo  de  2011,  de http://www.udb.edu.sv/Academia/Laboratorios/electronica/FRobotica/guia5FRO.pdf 

[9]    Wane,  S.  (2011,  Mayo  4).  Staffordshire University.  Recuperado  de www.fcet.staffs.ac.uk/sow1/robotmaterial/MasteringRoboticsToolbox.pdf  

 

BIOGRAFÍA M. G. Cabrera actualmente cursa el último semestre  de  Ingeniería  de  Sistemas,  Departamento de Control, Universidad de los  Andes,  Mérida,  Venezuela  (e‐mail: [email protected]). 

  

Page 35: Curso TOOLBOX Robotica

Nombre de archivo: paper_toolbox_de_robotica01 Directorio: C:\Documents and Settings\Eladio\Mis

documentos\Dropbox\CLASES\ISPIRO\SEMINARIOS\GABRIELACABRERA

Plantilla: C:\Documents and Settings\Eladio\Datos de programa\Microsoft\Plantillas\Normal.dotm

Título: Asunto: Autor: Angelical V4 Palabras clave: Comentarios: Fecha de creación: 05/07/2011 18:11:00 Cambio número: 2 Guardado el: 05/07/2011 18:11:00 Guardado por: Eladio Tiempo de edición: 0 minutos Impreso el: 05/07/2011 18:11:00 Última impresión completa Número de páginas: 14 Número de palabras: 3.874 (aprox.) Número de caracteres: 21.310 (aprox.)