SciELO - Scientific Electronic Library Online

 
vol.38 número2The Promotion of the Digitalization of the Spanish Port System Through the Business Observation ToolVariability in Densities, Ultrasound Speeds and Dynamic Modulus in Three Mexican and Three Japanese Woods índice de autoresíndice de assuntospesquisa de artigos
Home Pagelista alfabética de periódicos  

Serviços Personalizados

Journal

Artigo

Indicadores

Links relacionados

  • Em processo de indexaçãoCitado por Google
  • Não possue artigos similaresSimilares em SciELO
  • Em processo de indexaçãoSimilares em Google

Compartilhar


Ingeniería y Desarrollo

versão impressa ISSN 0122-3461versão On-line ISSN 2145-9371

Ing. Desarro. vol.38 no.2 Barranquilla jul./dez. 2020  Epub 21-Out-2021

https://doi.org/10.14482/inde.38.2.629.89 

ARTÍCULO DE INVESTIGACIÓN

Movimiento de un robot PA10 por medio de una interfaz natural

Movement of a PA10 Robot Through a Natural Interface

Diego Manuel Dussán Muñoz*  a 
http://orcid.org/0000-0002-5106-224X

Enrique Bauzano Núñez** 
http://orcid.org/0000-0002-0753-8714

Oscar Andrés Vivas Albán*** 
http://orcid.org/0000-0001-5381-8234

* Universidad del Cauca, Colombia.

** Universidad de Málaga, España.

*** Universidad del Cauca, Colombia.


Resumen

Este artículo muestra la implementación de una interfaz natural y su sistema para el movimiento de un robot PA10 industrial. Con la finalidad de evaluar la utilidad de este tipo de interfaces y la diferencia que se presenta entre las trayectorias ingresadas y las ejecutadas por el robot mediante el uso de una metodología de desarrollo propia. Inicialmente se obtuvieron los modelos matemáticos del robot PA10 para simular su movimiento en el motor gráfico Unity 3D. Posteriormente, se adicionó el dispositivo de captura Leap Motion como elemento principal de la interfaz natural, y, a partir de ella, se realizó el seguimiento del movimiento de la palma de la mano del usuario durante la ejecución de diversas trayectorias, tanto en el software de simulación como en el robot real. Los resultados muestran un error de seguimiento bastante bajo entre las consignas deseadas y las trayectorias reales obtenidas del robot PA10.

Palabras clave: captura de gestos; control de robots; dispositivo Leap Motion; interfaz natural; robot PA10; seguimiento de trayectorias

Abstract

This article shows the implementation of a natural interface, and its system, for the movement of an industrial PA10 robot. In order to evaluate the usefulness of this type of interfaces and the difference that occurs between the paths entered and tho se executed by the robot through the use of its own development methodology. First, the mathematical models of the PA10 ro bot were obtained in order to simulate its movement in the Unity 3D graphics engi ne. Subsequently, the Leap Motion capture device was added as the main element of the natural interface, and from it, the movement of the user’s palm during the execution of various trajectories was carried out, both in the software simulation as in the real robot. The results found a fairly low tracking error between the desired setpoints and the actual trajectories obtained from the PA10 robot.

Keywords: gesture capture; Leap Motion device; natural interface; PA10 robot; robot control; track tracking

INTRODUCCIÓN

Durante los últimos años, se ha evidenciado el papel representativo que juega la robótica dentro del desarrollo de diferentes ámbitos al servicio del ser humano [1]. Dadas sus cualidades de precisión, exactitud, rapidez y consistencia en diferentes entornos, presentan los más altos niveles de desempeño y calidad en su funcionamiento, así como permiten que estos sean llevados a otros ambientes con la pretensión de mantener sus cualidades mencionadas [2], [3]. Particularmente, se destaca su labor en la industria [4] (fundición, soldadura, carga y descarga de materiales), en el hogar [5] (limpieza, mantenimiento, acompañamiento), en entornos militares [6] (detección, desactivación de agentes peligrosos, transporte, carga de material en terrenos agrestes, sistemas de seguridad y ataque) y en la medicina en la que surge la oportunidad de integrar estos beneficios en este entorno y sus ventajas se aprovechan en función de facilitar el ejercicio médico [7]. Principalmente, su labor dentro de este ambiente se enfoca en la asistencia de actividades tales como cirugía, diagnóstico y exploración [8], que permiten al personal médico mejorar sus capacidades de movimiento y exploración de cavidades corporales inaccesibles para la mano humana [9]. Estas cualidades brindan grandes ventajas en innumerables tipos de intervenciones quirúrgicas, entre ellas la cirugía laparoscopia [10], [11]. Esta se define como una de las más importantes dentro de este ámbito, la cual se practica por medio de una serie de pequeños orificios en la zona abdominal, por donde se introducen los instrumentos que se requieran para la realización del procedimiento (p. ej., endoscopio, pinzas, tijeras) [12].

Sin embargo, en la mayoría de los casos, estos asistentes robotizados necesitan dentro de su composición una estructura física de realimentación entre la máquina y el operario, en la cual se puedan realizar tareas de visualización del campo de trabajo y manipulación del instrumental mediante un conjunto de órdenes motrices impartidas [13].

Una de las más grandes dificultades se presenta debido a la complejidad en su manejo, lo cual genera contrariedades en el proceso de aprendizaje y hace que sea dispen diosa y lenta [14], proporcional al grado de complejidad del robot. Lo anterior conlleva la necesidad de ofrecer nuevas alternativas para el manejo de tales asistentes [15].

Durante los últimos años, la Universidad del Cauca, con su Grupo de Investigación Automática Industrial, ha desarrollado una serie de proyectos de investigación aplicada relacionados con la construcción de entrenadores en ambientes virtuales de simulación, donde se reproducen ciertos tipos de procedimientos quirúrgicos. Para seguir explorando este tema, el artículo muestra el manejo de un robot PA10, el cual es utilizado en diversos experimentos quirúrgicos, movido por una interfaz natural. Los experimentos fueron llevados a cabo en la Universidad de Málaga (España).

El artículo se encuentra dividido de la siguiente manera. Inicialmente se exhibe el diseño general del sistema utilizado. Luego, se muestra el modelamiento matemático dentro de la función libre del brazo, los principios del algoritmo de reconocimiento de gestos y su integración con el control de las articulaciones motorizadas del brazo articulado. Por último, se presentan los resultados de las pruebas realizadas directamente sobre el robot PA10.

METODOLOGÍA

Las interfaces naturales se componen de una serie de elementos que permiten su uso dentro de ciertas aplicaciones. En este caso, se opta por un diseño y una implementa ción propia para la aplicación desarrollada, la cual se expone a continuación.

Diseño general del Sistema

El sistema se compone por dos unidades principales que conforman el funcionamiento del robot (figura 1). La primera de estas unidades, denotada como unidad hardware, se compone por una estructura física o brazo robótico, una fuente de alimentación, un ordenador de control, una seta de emergencia y el dispositivo de captura de movimiento, en este caso el dispositivo comercial Leap Motion. Por otro lado, la segunda unidad (unidad software) se compone del algoritmo de control, el algoritmo de reconocimiento de gestos y el software de animación tridimensional.

Figura 1 Diseño general del sistema empleado. 

Unidad hardware

Se utilizó para este desarrollo, el robot industrial PA10 de Mitsubishi (figura 2), el cual es un brazo articulado que cuenta con siete articulaciones rotacionales, compuestas cada una de su respectivo motor.

Figura 2 Brazo industrial PA10 utilizado. 

Por otra parte, como dispositivo de captura de gestos se tiene un Leap Motion (figura 3). Este dispositivo comercial presenta dos cámaras encapsuladas que son usadas como sensores para la detección y el seguimiento del movimiento de las manos y los dedos.

Figura 3 Dispositivo de captura de movimiento (Leap Motion). 

Los dispositivos descritos pertenecientes a la unidad hardware se encuentran interconectados entre sí, centralizados en un ordenador donde se tiene el software de control.

Unidad software

Esta se compone de tres elementos esenciales para su funcionamiento, tal como se describe en las secciones mostradas a continuación.

Reconocimiento de gestos

Algoritmo encargado en la interpretación, detección y reconocimiento de los gestos realizados por la mano en un espacio tridimensional. En este caso, el posicionamien to cartesiano de la palma de la mano derecha se usa como la posición del efector final del robot durante la ejecución del movimiento o consigna de trabajo para el algoritmo de control, donde el área de movimiento se limita por el espacio de trabajo del Leap Motion (aproximadamente 61cm3 [16]) y el brazo articulado PA10. Este desarrollo se realiza bajo el funcionamiento de las librerías nativas de desarrollo del Leap Mo tion para diferentes IDE (por sus siglas en inglés) de programación.

Algoritmo de control

Compuesto por la consigna de movimiento, modelos matemáticos de control y las cuplas de movimiento para cada una de las articulaciones del brazo articulado. En la figura 4, se muestra la representación del funcionamiento interno del algoritmo de movimiento (circunferencia roja). Inicialmente, a este se le ingresa la consigna de movimiento o de trabajo entregada por el algoritmo de reconocimiento de gestos expuesto y, luego, esta consigna se ingresa al modelo matemático el cual entrega las cuplas de movimiento para el funcionamiento tanto del robot animado en software como de la estructura física real.

Figura 4 Esquema de funcionamiento del algoritmo de control. 

En ninguno de los casos se efectuó un escalamiento entre las consignas ya que la con signa ingresada se encuentra dentro del espacio de trabajo del robot articulado. En caso de que se efectué un movimiento involuntario (p. ej., resbalar, caer, entre otros) dentro del muestreo de la trayectoria ingresada o que esta se encuentre fuera del espacio de trabajo, el algoritmo de control no las toma en cuenta y se detiene al llegar a su límite de operación; adicional a ello el sistema robótico tiene una seta de emergencia que al accionarla activa los frenos de cada uno de sus motores en caso de que se requiera.

El modelo matemático para el control de movimiento se expone a continuación.

Modelo matemático

El robot industrial PA10 fabricado por Mitsubishi, de siete articulaciones o grados de libertad, tiene la arquitectura que se muestra en la figura 5.

Figura 5 Diagrama cinemático del robot PA-10 [12]. 

Siguiendo el análisis entre ejes y articulaciones de Dombre y Khalil descrito en [17], se obtiene la tabla de parámetros geométricos (tabla 1). Cabe aclarar que dentro de la tabla de parámetros en mención se cuenta con una octava articulación debido a la distancia RL8 vista en la figura anterior (figura 5), la cual existe entre el eje de la articulación 7 y la terminación del órgano terminal.

Tabla 1 Parámetros geométricos PA-10 [12

Fuente: elaboración propia.

Donde j representa el número de la articulación analizada, σj es el tipo de articulación (valor 0 para rotacional o 1 para prismática), αj, θj son los ángulos que dependen de las articulaciones o de la rotación de una articulación rotacional y dj, rj hacen referencia a las distancias entre los ejes de las articulaciones o el desplazamiento de una articulación prismática [18], [19].

Con la ayuda del software para el modelamiento de robots Symoro y la tabla de parámetros del robot (tabla 1), se hallan los modelos dinámicos (MDD, MDI: modelo dinámico directo e inverso) y geométricos (MGD, MGI: modelo geométrico directo e inverso) del robot PA-10. Los modelos dinámicos servirán para simular y controlar el robot, mientras que los modelos geométricos permiten verificar el movimiento de las articulaciones del mecanismo. En especial, el modelo geométrico inverso proporciona los ángulos en los cuales se debe posicionar cada articulación para alcanzar una posición cartesiana deseada. Estos ángulos son:

Siendo q1, q2, q3, q4, q5 y q6 las variables articulares para cada una de las articulaciones del robot PA10 como respuesta a la consigna de movimiento ingresada al sistema. Por otro lado, las variables xc, yc, zc, xm, ym y zm representan las posiciones cartesianas del codo (articulación 3) y la muñeca (articulación 4), mientras que las variables xd, yd y zd son las coordenadas correspondientes al valor deseado o ingresado, en este caso por la consigna de movimiento.

Software de animación

Se construyó la aplicación de la interfaz de usuario para la manipulación virtual y física del prototipo, en el motor gráfico de desarrollo Unity 3D, bajo el lenguaje de programación C# en el compilador Visual Studio 2017. Para iniciar con el funcionamiento de la interfaz (figura 6), se cuenta con un botón para el inicio y el fin de la lectura de datos del dispositivo de captura de gestos, los cuales se verán reflejados tanto en la simulación tridimensional como en brazo real. Cabe aclarar que el movimiento se realiza tanto en el prototipo físico como en el virtual de forma simultánea.

Figura 6 Interfaz de usuario. 

T2Funcionamiento del Sistema

Inicialmente, el usuario coloca en una mesa plana el dispositivo de captura de gestos Leap Motion y, luego, realiza la señal de movimiento con su mano derecha frente al dispositivo mencionado, y genera la consigna de trabajo, como se muestra en la figura 7.

Fuente: elaboración propia.

Figura 7 Captura inicial del movimiento. 

Posteriormente, esta consigna se ingresa al algoritmo de control, el cual internamente se encarga de entregar como respuesta las cuplas para cada uno de los motores de las articulaciones para realizar el movimiento deseado. Esta actividad se replica de principio a fin hasta que el usuario presione la seta de emergencia o se oprima el botón de fin dentro de la interfaz de usuario construida. La estructura física y la representación virtual inicialmente se encuentran en la posición mostrada en la figura 8.

Fuente: elaboración propia.

Figura 8 Posición inicial del robot PA10. 

Es de aclarar que dentro del movimiento de la estructura física se realiza un cambio de ejes de movimiento, ya que, como se evidencia en la figura 9, el Leap Motion y la estructura física no cuentan con sus ejes en la misma posición.

Figura 9 Ejes cartesianos del Leap Motion versus estructura física del PA10. 

Para realizar un seguimiento del robot durante la ejecución de la trayectoria, el sistema cuenta con una función que registra el estado de cada una de las articulaciones del robot y su efector final, obtiene datos como orientación, posición cartesiana del efector final, posición angular de cada una de las articulaciones, entre otras, y permite en este caso el registro en vivo de cada una de las posiciones que lleva a cabo el brazo durante la ejecución de cada una de las trayectorias realizadas.

RESULTADOS

Se realizaron las siguientes pruebas de manipulación del robot PA10 bajo la ejecución de cuatro consignas de movimiento tridimensional (figuras 10, 11, 12 13), las cuales serán ejecutadas por el brazo articulado mediante el seguimiento de la trayectoria ingresada por el efector final del robot.

Figura 10 Trayectoria 1, comparación entre trayectorias ingresada versus ejecutada. 

Figura 11 Trayectoria 2, comparación entre trayectorias ingresada versus ejecutada. 

Figura 12 Trayectoria 3, comparación entre trayectorias ingresada versus ejecutada. 

Figura 13 Trayectoria 4, comparación entre trayectorias ingresada versus ejecutada. 

Una vez ingresadas las consignas con la mano derecha, se obtienen las trayectorias ejecutadas por el brazo robótico en respuesta a dichas consignas. Las siguientes figuras muestran la consigna en color azul versus la trayectoria obtenida en color rojo.

El error cartesiano obtenido para cada una de las cuatro trayectorias se muestra en la figura 14. Se puede notar que la diferencia entre la señal deseada y la señal obtenida no sobrepasa los 5 × 10-3 m en la ejecución de la trayectoria 1 (figura 10), por ejemplo, y que el error promedio para las cuatro pruebas realizadas es de 1,3 × 10-3 m (poco más de 1 mm).

Figura 14 Comportamiento de las señales de error de las cuatro trayectorias. 

Por otra parte, en la figura 15, se presenta la secuencia de movimiento realizada por el brazo real durante la ejecución de la trayectoria 1 (figura 10). Se puede concluir que los errores obtenidos se deben, principalmente, a la precisión del dispositivo Leap Motion. Además, el factor de escalamiento entre las trayectorias ingresadas y las ejecutadas es un valor que repercute directamente en el desempeño y cálculo de este valor de error.

Figura 15 Secuencia de movimiento del robot PA10 para la primera trayectoria. 

CONCLUSIONES

Este artículo mostró un sistema que permite manipular un robot PA10 por medio de una interfaz natural. Se desarrolló el modelo matemático de este robot de siete grados de libertad y se simuló su comportamiento utilizando el motor gráfico Unity 3D. Como interfaz natural, se utilizó el dispositivo Leap Motion, el cual permite leer con relativa precisión los movimientos de la mano de un usuario.

Las pruebas realizadas mostraron gran concordancia entre los movimientos de la mano del usuario, con los movimientos del robot en simulación y los movimientos del órgano terminal del robot PA10 real. Se obtuvo un error cuadrático menor del 10 % entre las consignas deseadas y las trayectorias obtenidas.

Los trabajos futuros implementarán este sistema en un ambiente quirúrgico simulado, donde se simule un abdomen humano con sus respectivos orificios de ingreso, para determinar la potencialidad de utilizar interfaces naturales en ciertas etapas de un procedimiento quirúrgico.

REFERENCIAS

[1] A. Barrientos. (2002). Nuevas aplicaciones de la robótica: robots de servicio [En línea]. Disponible en: https://www.researchgate.net/profile/Antonio_Barrientos2/publication/228889902_Nuevas_aplicaciones_de_la_robotica_Robots_de_servicio/links/0c96052855198b0438000000.pdfLinks ]

[2] F. M. Sánchez-Martín, F. M. Rodríguez, J. Salvador-Bayarri, V. M. Font, J. P. Redorta, H. V. Mavrich y P. J. Schlegl, “Historia de la robótica: de Arquitas de Tarento al Robot da Vinci. (Parte II)”, Actas Urológicas Españolas, vol. 31, no. 3, pp. 185-196, 2007. https://doi.org/10.1016/S0210-4806(07)73624-0Links ]

[3] F. Á. Bravo-Sánchez y A. Forero-Guzmán, “La robótica como un recurso para facilitar el aprendizaje y desarrollo de competencias generales”, Teoría de la Educación: Educación y Cultura en la Sociedad de la Información, vol. 13, no. 2, pp. 120-136, 2012. [ Links ]

[4] A. H. Odorico, F. J. Lage y Z. Cataldi. (2007). Robótica, informática, inteligencia artificial y educación [En línea], Disponible en: http://sedici.unlp.edu.ar/handle/10915/20504Links ]

[5] E. Grisales-Ramírez, “Control de un robot móvil en entornos domésticos”, Tesis de maestría, Universidad Nacional de Colombia, Manizales, Colombia, 2013). [ Links ]

[6] A. Gaitán-Rodríguez, “Cibernética en la guerra contemporánea: definición de nuevos escenarios estratégicos y operacionales”, Estudios en Seguridad y Defensa, vol. 10, no. 20, pp. 117-131, 2015. https://doi.org/10.25062/1900-8325.41Links ]

[7] D. Galeano. (2016). Robótica médica [En línea]. Disponible en: http://jeuazarru.com/wp-content/uploads/2014/10/robotica_medicinal.pdfLinks ]

[8] O. A. Vivas-Albán, “Aplicaciones de la robótica al campo de la medicina”, Revista Pulsos, vol. 9, pp. 32-38, 2007. [ Links ]

[9] M. Berry y C. Martínez, “Medicina y robótica”, Rev. Méd. Clín. Condes, vol. 16, no. 3, pp. 157-167, jul. 2005. [ Links ]

[10] R. K. Mishra, Textbook of practical laparoscopic surgery. Nueva Delhi: Jaypee, 2013. [ Links ]

[11] P. Escobar y T. Falcone, Atlas of single-port, laparoscopic, and robotic surgery. Nueva York: Springer, 2014. [ Links ]

[12] C. E. Fernández-Riomalo, H. A. Guástar-Morillo y O. A. Vivas-Albán, “Diseño y modelado del robot PA-10 virtual para aplicaciones quirúrgicas”, Revista Facultad de Ingeniería, vol. 25, no. 42, pp. 21-32, 2016. [ Links ]

[13] G. H. Ballantyne, “Robotic surgery, telerobotic surgery, telepresence, and telementoring”, Surgical Endoscopy and Other Interventional Techniques, vol. 16, no. 10, pp. 1389-1402, oct. 2002. https://doi.org/10.1007/s00464-001-8283-7Links ]

[14] J. A. Juanes, J. J. Gómez, P. D. Peguero y P. (2015). Practical applications of movement control technology in the acquisition of clinical skills [En línea]. Disponible en: https://dl.acm.org/doi/abs/10.1145/2808580.2808583Links ]

[15] J. Y. Lee, P. Mucksavage, C. P. Sundaram y E. M. McDougall, “Best practices for robotic surgery training and credentialing”, The Journal of Urology, vol. 185, no. 4, pp. 1191-1197, abr. 2011. https://doi.org/10.1016/j.juro.2010.11.067Links ]

[16] E. Vilaplana-Monserrat, “Diseño de un algoritmo de seguimiento del instrumental quirúrgico mediante un dispositivo Leap Motion y su validación en un simulador físico”, Tesis, Universidad politécnica de Madrid, 2017. [ Links ]

[17] E. Dombre y W. Khalil, Modeling, performance analysis and control of robot manipulators. Londres: Wiley, 2010. [ Links ]

[18] C. E. Fernández-Riomalo y H. A. Guastar-Morillo, “Diseño y modelado del robot PA-10 virtual para aplicaciones quirúrgicas”, Tesis, Universidad del Cauca, Popayán, 2014. [ Links ]

[19] O. A. Vivas-Albán, Diseño y control de robots industriales: teoría y práctica. Buenos Aires: Elaleph, 2010. [ Links ]

Recibido: 11 de Junio de 2020; Aprobado: 22 de Agosto de 2020

aCorrespondencia:dussan@unicauca.edu.co

Creative Commons License Este es un artículo publicado en acceso abierto bajo una licencia Creative Commons