desarrollo de un simulador basado en el robot irb140 de abb para la

Revista Aristas: Investigación Básica y Aplicada. Facultad de Ciencias Químicas e Ingeniería. UABC.
DESARROLLO DE UN SIMULADOR BASADO EN EL ROBOT IRB140 DE ABB PARA LA
ENSEÑANZA DE LA ROBÓTICA
Development of a simulator based in ABB's robot IRB140 for teaching in robotic
Resumen—Este trabajo presenta una contribución al desarrollo de
un simulador utilizado como recurso educativo digital en la enseñanza
del modelado cinemático de robots manipuladores dentro de la
materia de robótica. La idea de enriquecer esta herramienta se debe a
ciertos inconvenientes encontrados en los procesos de enseñanza y de
aprendizaje de la robótica. Los típicos inconvenientes en la enseñanza
de esta materia, están relacionados con el entendimiento del
funcionamiento de robots manipuladores. Mostrar el modelado
cinemático de robots, sin la posibilidad de contar con estos, es un
problema. Las tecnologías de la información y de comunicación
(TIC’s) constituyen un gran apoyo para desarrollar recursos
educativos que permitan mejorar los procesos de enseñanzaaprendizaje de materias con este tipo de contenidos. En particular, en
esta etapa de desarrollo del recurso educativo, se recurre al modelo
del robot IRB140 proporcionado directamente por el fabricante de
robots ABB. Se continúa utilizando el lenguaje de alto nivel y entorno
interactivo para el cálculo numérico, visualización y programación,
Matlab, para el desarrollo de esta herramienta de simulación. Ante
esta problemática, el uso de este recurso educativo digital para la
materia de robótica, facilitará la transferencia de conceptos
matemáticos, informáticos, científicos y tecnológicos.
FERNÁNDEZ RAMÍREZ ARNOLDO
Mecánico de Sólidos, Dr.
Profesor Investigador
Instituto Tecnológico de Nuevo León
[email protected]
Palabras clave—Recurso Educativo Digital, Robótica, Simulador,
Software Educativo.
GARCÍA ANDRADE ROXANA
Ingeniero en Electrónica en Instrumentación
Profesor Investigador
Instituto Tecnológico de Nuevo León
[email protected]
1. INTRODUCCIÓN
La simulación de un sistema puede ser considerada como
el proceso de representar un sistema real mediante la
implementación de un modelo que permita realizar
experimentos [1]. El uso de la simulación trae consigo
beneficios como costo, ahorro de tiempo, reducción de
riesgo y en el caso específico de trabajar con dispositivos
que se mueven siguiendo leyes, sin la posibilidad de
contar con estos, es un problema, el uso de la simulación
mediante el empleo de las tecnologías de la información
y la comunicación (TIC’s) constituyen valiosos recursos
para desarrollar estrategias que apunten a mejorar los
procesos de enseñanza y de aprendizaje de materias con
estos contenidos o similares.
El propósito de realizar experimentos mediante una
simulación es el de entender el comportamiento o evaluar
estrategias para la operación de un sistema sin requerir la
construcción o experimentación con el sistema físico real.
En una simulación por método analítico, se hacen
suposiciones acerca del sistema y se derivan algoritmos y
CUAN DURÓN ENRIQUE
Ingeniero en Electrónica, Dr.
Responsable de cuerpo académico en
Ingeniería de Software del posgrado en
Sistemas Computacionales
Instituto Tecnológico de La Laguna
[email protected]
URQUIZO BARRAZA ELISA
Administrador Estratégico, Dra.
Líder de la Línea de Investigación de
Tecnología Aplicada a la Educación del
posgrado en Sistemas Computacionales
Instituto Tecnológico de La Laguna
[email protected]
relaciones
matemáticas
comportamiento.
para
describir
su
El presente trabajo plantea mejoras en el desarrollo de un
simulador utilizando Matlab, el cuál puede ser usado
como un recurso digital que ahora simula el
comportamiento cinemática inverso de la estructura de un
robot manipulador. Este comportamiento resultante del
modelado inverso del manipulador se podrá visualizar en
3D.
Gracias a su diseño gráfico, será́ de gran ayuda en la
docencia ya que puede funcionar como un laboratorio
virtual de la materia de robótica Industrial, ayudando a
que los alumnos comprendan de mejor manera los
aspectos matemáticos.
Actualmente se puede encontrar un gran número de
simuladores de robots manipuladores. Algunos presentan
grandes limitaciones debido a las licencias de uso y
distribución [2], [3] y [4].
En otros casos no se ha podido encontrar mayor
18 al 20 de febrero 2015. Facultad de Ciencias Químicas e Ingeniería. UABC. Copyright 2015. Tijuana, Baja California, México.
17
Congreso Internacional de Investigación Tijuana.
Revista Aristas: Investigación Básica y Aplicada.
información o el código fuente no está disponible o no es
ejecutable [5] y [6].
En la primer etapa de desarrollo de este proyecto, la idea
ha sido dejarlo a disposición, tanto del profesor como del
estudiante, para que ellos mismo puedan modificarlo e
incrementar funciones que enriquezcan al simulador [7],
en el cual se utilizan una geometría muy simple basada
en prismas rectangulares para el modelado de los
elementos o eslabones móviles del robot, como se
muestra en la figura 1.
En [8] se han agregado componentes y funcionalidades al
simulador, entre dichos componentes está la posibilidad
de visualizar una representación simplificada del robot,
utilizando líneas, para los eslabones móviles y cilindros
para las articulaciones de revolución. La representación
del nivel suelo y de marcos referencia en cada uno de los
eslabones móviles.
2. PROBLEMA
El presente trabajo plantea la implementación de un
simulador del robot IRB140, del fabricante ABB,
utilizando el lenguaje de alto nivel Matlab, el cuál puede
ser usado como un recurso digital de apoyo en la
enseñanza de la robótica con interfaz gráfica, que simule
el comportamiento cinemático de la estructura de robots
manipuladores.
En la figura 1, se muestra la ventana principal del
simulador presentado en [7]. La utilización del modelo
cinemático inverso de posición permite la realización de
trayectorias en el espacio operacional.
Figura 1. Simulador del robot Motoman K6SB.
ISSN 2007-9478, Vol. 4, Núm. 7. Año 2015.
3. ENFOQUE, METODOS
En la etapa de desarrollo actual, se utiliza modelo cad del
robot IRB140, obtenido del sitio web del fabricante ABB
[9] para representarlo, es un robot con seis grados de
libertad o variables independientes. Los eslabones están
unidos mediante articulaciones.
Además, se puede seleccionar la visualización de un
esquema simplificado, con todos los marcos de referencia
asignados a cada eslabón. En el esquema simplificado, se
representa como en [8]. En [7], se presentó la
metodología para obtener el modelo cinemático directo
de posición que es el siguiente:
x = f (q)
(1)
Dónde:
x: es el vector de coordenadas operacionales que
representa la posición y la orientación del eslabón final.
q: es el vector de coordenadas articulares que representa
la configuración del robot.
El modelo directo de posición se expresa como:
0
6
T = 01T 12T ... 56T
(2)
En el cuadro 1 se presentan de forma simbólica y
explícita cada una de las matrices
la ecuación anterior.
0
1
T, 12T, ..., 56T de
Cuadro 1. Matrices de transformación homogénea
T 
C1
 S
 1
 0
 0

0
1
T 
 C 3
 S
 3
 0
 0

2
3
T 
 C 5
 0

  S5
 0

4
5
0
0
C3
0
0
1
2
0
C1
-S3
T 

C 2 -S 2 0 D 2 
 0
0 1 0 


 S 2 C 2 0 0 
 0
0
0 1 


0
0 0

1 0
0 1 
-S1

0 D3 
0 0

1 0
0 1 
-S5
0
0
1
C5
0
0
0

0
0

0
1 
T 
 C 4
 0

 S 4
 0

3
4
-S 4
T 
 C 6
 0

 S 6
 0

5
6
0
C 4
0
-S 6
0
C 6
0

D4 
1  R4 

0
0 
0
1 
0

0
1 0 

0 0
0 1 
0
Fuente: Elaboración propia a partir de Matlab. Desarrollo de un
Recurso Educativo Digital de apoyo a la Materia de Robótica.
Fuente: Desarrollo de un Recurso Educativo Digital de apoyo a
la Materia de Robótica [7].
18 al 20 de febrero 2015. Facultad de Ciencias Químicas e Ingeniería. UABC. Copyright 2015. Tijuana, Baja California, México.
18
Congreso Internacional de Investigación Tijuana.
Revista Aristas: Investigación Básica y Aplicada.
El modelado cinemático inverso de posición se presenta a
continuación, cabe mencionar que permitirá obtener
todas las configuraciones posibles de un robot
correspondientes a una localización dada del órgano
terminal (la posición y la orientación). Este modelo es
llamado generalmente la forma cerrada del modelo
cinemático inverso.
U0 = 01T 12T 23T 34T 45T 56T
U1 = 12T 23T 34T 45T 56T
No hay una solución general para obtener este modelo.
Sea f ETd la matriz de transformación deseada que
define la localización de la herramienta del órgano
terminal con respecto al marco fijo. En general, fETd se
puede escribir como:
Con
f
d
ET
=Z
0
nT
E
Asumiendo que se especifican tanto el emplazamiento
del manipulador en la estación de trabajo, así como la
geometría de la herramienta del órgano terminal, se tiene
que las matrices Z y E son conocidas. Agrupando
entonces del lado izquierdo de la ecuación anterior todos
los términos conocidos, se tiene:
f
d
ET
E-1 =
0
nT
(4)
Haciendo ahora:
U0 = Z-1
f
d
ET
E-1
U0 = 0nT
(5)
(6)
El problema del modelo inverso, entonces, consiste en
obtener las variables articulares tales que sustituidas en
0
nT la ecuación se satisfaga:
0
nT
= 01T 12T ... n-1nT
(7)
Remplazando esta ecuación en el lado derecho de la
ecuación anterior se tiene:
U0 = 01T 12T ... n-1n
(8)
Para un robot de seis grados de libertad, de la
premultiplicación de ambos lados de la ecuación U0 = 01T
1
n-1
1
2T...
n T por 0T se obtiene:
1
0T
U0 = 12T 23T 34T 45T 56T
(10)
(11)
U2 = 23T 34T 45T 56T
(12)
U3 = 34T 45T 56T
(13)
U4 = 45T 56T
(14)
U5 = 56T
(15)
Uj = jTj-1 Uj-1.
(3)
Donde:
Z = f0T es la matriz que define al marco 0 de la base
en el marco fijo de referencia f.
E = nET es la matriz que define al marco E de la
herramienta del órgano terminal en el marco del eslabón
terminal n.
Z-1
ISSN 2007-9478, Vol. 4, Núm. 7. Año 2015.
(9)
El lado derecho es función de las variables
2
6,
mientras que el lado izquierdo es función de
.
1
1
puede ser obtenido por identificación de uno o dos
elementos de ambos lados de la ecuación previa.
El anterior grupo de ecuaciones es llamado en sentido
directo. En el cuadro 2, se presentan de forma explícita
las ecuaciones para resolver el modelo inverso de
posición del robot IRB140.
Cuadro 2. Modelado cinemático inverso de posición robot
IRB140.
Q1 = ATAN2(-PY,-PX)
O
Q1 = ATAN2(-PY,-PX)+180°
B1 = -C1*PX-S1*PY+D2
X = -2*PZ*D3
Y = +2*B1*D3
Z = +R4*R4+D4*D4-D3*D3-B1*B1-PZ*PZ
D = X*X+Y*Y
W = SQRT(D-Z*Z)
E = ±1
C2 = (Y*Z-E*X*W)/D
S2 = (X*Z+E*Y*W)/D
Q2 = ATAN2(S2,C2)
D1 = +R4*R4+D4*D4
S3 = +(B1*S2*D4+PZ*C2*D4+PZ*S2*R4-B1*C2*R4D3*R4)/D1
C3 = -(B1*S2*R4+PZ*C2*R4PZ*S2*D4+B1*C2*D4+D3*D4)/D1
Q3 = ATAN2(S3,C3)
Q5 = ARCOS(+S(2#3)*C1*AX+S(2#3)*S1*AYC(2#3)*AZ)
B2 = +S1*AX-C1*AY
B4 = +C(2#3)*C1*AX+C(2#3)*S1*AY+S(2#3)*AZ
S4 = +B2/S5
C4 = +B4/S5
Q4 = ATAN2(S4,C4)
B6 = -S(2#3)*C1*NX-S(2#3)*S1*NY+C(2#3)*NZ
B8 = -S(2#3)*C1*SX-S(2#3)*S1*SY+C(2#3)*SZ
S6 = -B6/S5
C6 = +B8/S5
Q6 = ATAN2(S6,C6)
Fuente: Desarrollo de un Recurso Educativo Digital de apoyo a
la Materia de Robótica [7].
Similarmente, se obtienen:
18 al 20 de febrero 2015. Facultad de Ciencias Químicas e Ingeniería. UABC. Copyright 2015. Tijuana, Baja California, México.
19
Congreso Internacional de Investigación Tijuana.
Revista Aristas: Investigación Básica y Aplicada.
4. RESULTADOS
ISSN 2007-9478, Vol. 4, Núm. 7. Año 2015.
Figura 3. Simulador del robot IRB140 de ABB.
Antes de proceder a la presentación de los resultados de
la versión del desarrollo actual, en la figura 2, se muestra
la versión precedente del simulador [8].
En cada versión del simulador se persigue la finalidad de
que, en la medida de lo posible, continúe siendo fácil de
utilizar, por un lado, como entrada, los valores de las
variables articulares, mediante cajas de edición y barras
deslizadoras como en [7].
En [8] se cuentan con las siguientes funciones
a)
Visualización de la solución del modelo
cinemático directo de posición.
b) Visualización de marcos de referencia.
c) Visualización de un esquema simplificado.
d) Visualización del nivel suelo.
Estas algunas de estas funciones se ilustran en las figuras
3, 4 y 5.
Figura 2. Simulador del robot Motoman K6SB.
Fuente: Elaboración propia a partir de Matlab. Contribución al
Desarrollo de un Recurso Educativo Digital de Apoyo a la
Enseñanza de Robótica [8].
Para ilustrar la resolución del modelo cinemático directo
de posición, se dio click, primero, en la barra deslizadora
correspondiente a q2 para pasar del valor de 90° a 45°,
luego en la barra deslizadora correspondiente a q3 para
pasar del valor de 0° a 45°.
Las variables articulares de q = [ 0°, 90°, 0°, 0°, 0°, 0°],
pasaron a q = [ 0°, 45°, 45°, 0°, 0°, 0°].
Eso mientras la posición de referencia en el último
eslabón móvil paso de x = 47.5, y = 0, z = 56.01 a x =
72.95, y = 0, z = 45.46, estos cambios se ilustras en la
figura 4.
Se actualizaron los valores en las cajas de edición
correspondiente, además se actualizo la matriz de
transformación homogénea.
Figura 4. Determinación del modelo cinemático directo de
posición.
Fuente: Elaboración propia a partir de Matlab. Contribución al
Desarrollo de un Recurso Educativo Digital de Apoyo a la
Enseñanza de Robótica [8].
A continuación, en la figura 3, se muestra el simulador
objeto del presente artículo.
Fuente: Elaboración propia a partir de Matlab. Contribución al
Desarrollo de un Recurso Educativo Digital de Apoyo a la
Enseñanza de Robótica [8].
18 al 20 de febrero 2015. Facultad de Ciencias Químicas e Ingeniería. UABC. Copyright 2015. Tijuana, Baja California, México.
20
Congreso Internacional de Investigación Tijuana.
Revista Aristas: Investigación Básica y Aplicada.
Figura 5. Visualización de los marcos de referencia.
ISSN 2007-9478, Vol. 4, Núm. 7. Año 2015.
contemplar la adición de más robots a una base de datos
de robots. Teniendo como base el simulador actual se
está en medida de poder implementar algoritmos para la
planificación de trayectorias con los modelos cinemáticos
implementados. Una vez probados se pueden proponer
modificaciones o alternativas para robustecer las ventajas
de contar son un simulador de este tipo.
6. REFERENCIAS
Fuente: Elaboración propia a partir de Matlab. Contribución al
Desarrollo de un Recurso Educativo Digital de Apoyo a la
Enseñanza de Robótica [8].
Figura 6 Visualización del esquema simplificado.
Fuente: Elaboración propia a partir de Matlab. Contribución al
Desarrollo de un Recurso Educativo Digital de Apoyo a la
Enseñanza de Robótica [8].
5. CONCLUSIONES
En el presente trabajo se presenta una nueva fase de
desarrollo de un simulador de robots manipuladores el
cuál puede ser utilizado como un recurso digital de apoyo
en la materia de robótica. La utilización de los modelos
CAD para la representación gráfica del robot IRB140 de
ABB, nos permite, tener la confiabilidad, de que la
simulación realizada se puede llevarse a cabo por el robot
real. Se han implementado todas las funciones necesarias
para el desarrollo de los algoritmos de cinemática
inversa, además, se cuenta con una interfaz gráfica con
visualización en 3D que contiene mejoras respecto a las
primeras fases de desarrollo y es posible manejar las
funciones del simulador desde la línea de comandos en
Matlab. En base al desarrollo actual, es posible
[1] Smith, R. D. “Simulation”, cuarta ed. New York:
Grove’s Dictionaries, July 2000.
[2] “Camelot-robot off line programming.”[Online].
Available: https://www.camelot.dk/
[3] “Easy-rob: 3d robot simulation tool.” [Online].
Available: http://www.easyrob.de/
[4] Corke, P. I. “A robotics toolbox for matlab”, Robotics
& Automation Magazine, IEEE, vol. 3, no. 1, pp. 24–32,
Mar. 1996.
[5] Salazar-Silva, G. H., Martinez-Garcia, J. C. y
Garrido, R. “Enhancing basic robotics education on the
web,” in American Control Conference, 1999.
Proceedings of the 1999, vol. 2, 1999, pp. 1470–1471
vol.2.
[6] Morales H. y Cruz C., “Edisim: editor y simulador de
robots manipuladores,” in 2o Congreso Nacional de
Electrónica, Puebla, México, Sep. 2002.
[7] Cuan Duron E., Fernández Ramírez A. y Urquizo
Barraza E. “Desarrollo de un Recurso Educativo Digital
de apoyo a la Materia de Robótica.”,Tecnologías y
Aprendizaje. Avances en Iberoamerica, Vol. 1, 2013,
270-275, ISBN: 978-607-96242-0-0].
[8] Cuan Duron E., Fernández Ramírez A., Urquizo
Barraza E, García Andrade R., “Contribución al
Desarrollo de un Recurso Educativo Digital de Apoyo a
la Enseñanza de Robótica.”, Congreso Internacional de
Investigación AcademiaJournals.com Celaya 2014, ISSN:
1946-5351, 2014, Vol. 6, N° 5, 1066-1071.
[9] Robot IRB140 de ABB.
Dr. Arnoldo Fernández Ramírez: es Doctor en Mecánica de Sólidos
por la Universidad de Poitiers, República Francesa. Este autor es
profesor de las carreras de Mecatrónica y Electromecánica.
Dr. Enrique Cuan Durón: es Doctor en Ciencias en Ingeniería
Eléctrica por Instituto Tecnológico de La Laguna en Torreón Coahuila,
México y la Universidad de Poitiers, República Francesa. Es
responsable de cuerpo académico en Ingeniería de Software del
posgrado en Sistemas Computacionales del Instituto Tecnológico de La
Laguna.
Dra. Elisa Urquizo Barraza: es Doctora en Administración
Estratégica por el Instituto Internacional de Administración en Torreón
Coahuila, México, Maestra en Sistemas Computacionales por el ITESM
campus Laguna y Maestra en Educación por UIA plantel Laguna. Es la
líder de la Línea de Investigación de Tecnología Aplicada a la
Educación del posgrado en Sistemas Computacionales del Instituto
Tecnológico de La Laguna.ng. Roxana García Andrade es Ingeniero en
Electrónica en Instrumentación por el Instituto Tecnológico de Nuevo
León. es profesor de la carrera de Electrónica.
18 al 20 de febrero 2015. Facultad de Ciencias Químicas e Ingeniería. UABC. Copyright 2015. Tijuana, Baja California, México.
21