• No se han encontrado resultados

Robot retratista basado en el manipulador UR3

N/A
N/A
Protected

Academic year: 2020

Share "Robot retratista basado en el manipulador UR3"

Copied!
37
0
0

Texto completo

(1)Robot retratista basado en el manipulador UR3. Álvaro Orlando Benavides Garzón Juan David Gómez Santafé. Universidad Cooperativa De Colombia Facultad de Ingeniería Ingeniería Electrónica Bogotá 2018. 1.

(2) Robot retratista basado en el manipulador UR3. Álvaro Orlando Benavides Garzón Juan David Gómez Santafé. Trabajo de grado presentado como requisito para optar al título de Ingeniero electrónico. Director: José Luis Ramírez Arias, Ph.D.. Universidad Cooperativa De Colombia Facultad de Ingeniería Ingeniería Electrónica Bogotá 2018. 2.

(3) Nota de aceptación _______________________________________ _______________________________________ _______________________________________ _______________________________________ _______________________________________ _______________________________________ _______________________________________ _______________________________________ _______________________________________ _______________________________________ _______________________________________ _______________________________________ _______________________________________. _______________________________________ Presidente del Jurado. _______________________________________ Jurado. _______________________________________ Jurado. Bogotá, 05 de diciembre de 2018. 3.

(4) CONTENIDO Pag. INTRODUCCION……………………………………………………………………….8 1. MARCO TEÓRICO………………………………………………………………...10 1.1 ROBOTS MANIPULADORES……………………………………………….10 1.2 CLASIFICACIÓN DE LOS ROBOTS MANIPULADORES………………..10 1.3 MORFOLOGÍA DE LOS ROBOTS MANIPULADORES…………………..12 1.3.1 CONFIGURACIÓN CARTESIANA…………………………………...13 1.3.2 CONFIGURACIÓN CILÍNDRICA……………………………………..14 1.3.3 CONFIGURACIÓN ESFÉRICA……………………………………….14 1.3.4 CONFIGURACIÓN ANTROPOMÓRFICA…………………………...15 1.4 CINEMÁTICA DE LOS MANIPULADOR……………………………………..16 1.5 VISIÓN ARTIFICIAL…………………………………………………………….18 1.5.1 ¿QUÉ ES VISIÓN ARTIFICIAL?........................................................18 1.5.2 ¿CUÁLES SON LAS VENTAJAS DE LA VISIÓN ARTIFICIAL?........18 1.5.3 ¿CUÁLES SON LOS COMPONENTES DE LA VISIÓN ARTIFICIAL?...........................................................................................................18 1.6 PROCESAMIENTO DE IMÁGENES DETECCIÓN DE BORDES………….19 1.6.1 OPERADOR SOBEL……………………………………………………...20 1.6.2 OPERADOR PREWITT…………………………………………………..21 1.6.3 OPERADOR CANNY……………………………………………………..22 1.7 TRAYECTORIAS…………………………………………………………………22 1.7.1 TRAYECTORIAS PUNTO A PUNTO…………………………………...22 4.

(5) 1.7.2 TRAYECTORIAS COORDINADAS…………………………………….23 1.7.3 TRAYECTORIAS CONTINUAS…………………………………...……24 1.8 ALGORITMOS DE INTERPOLACIÓN……………………………………...…24 1.8.1 ALGORITMO BÁSICO DIRECTO………………………………………25 1.8.2 ALGORITMO DDA (DIGITAL DIFFERENTIAL ANALYZER)………..26 1.8.3 ALGORITMO DE BRESENHAM………………………………………..27 2. ESTADO DEL ARTE…………………………………………………….................28 3. DESARROLLO DE ALGORITMOS………………………………………………..30 3.1 ALGORITMO PARA EL PROCESAMIENTO DE IMAGEN………………..30 3.2 DESARROLLO DEL ALGORITMO DE DIBUJO…………………………….32 4. RESULTADOS……………………………………………………………………….33 5. CONCLUSIONES……………………………………………………………………..34 6. REFERENCIAS………………………………………………………………………..35. 5.

(6) LISTA DE FIGURAS Pag Figura 1. Distintos tipos de articulaciones para robots, por J.D. Gómez & A.O. Benavides, 2018, Desarrollada por medio del software “FREECAD”. Reimpresión [o adaptación] autorizada……………………………………..…………13 Figura 2. Robot Cartesiano, de "Fundamentos de robótica”, Página 35, Por Barrientos, Peñin & Balaguer, 2007……………………………………………….13 Figura 3. Robot Cilíndrico, de "Fundamentos de robótica”, Página 35, Por Barrientos, Peñin & Balaguer, 2007……………………………………………….14 Figura 4. Robot Esférico, de "Fundamentos de robótica”, Página 35, Por Barrientos, Peñin & Balaguer, 2007……………………………………………….14 Figura 5. Robot SCARA.de "Fundamentos de robótica”, Página 35, Por Barrientos, Peñin & Balaguer, 20………………………………………………….15 Figura 6. Robot Antropomórfico. De "Fundamentos de robótica”, Página 35, Por Barrientos, Peñin & Balaguer, 2007……………………………………................15 Figura 7. Brazo humano vs Robot antropomórfico. De “Introducción a la robótica”, Página 16, Por Saha, 2010…………………………………………….16 Figura 8. Matriz de transformación homogénea, Ramirez, J. L., Rubiano , A., Jouandeau, N., El Korso, M. N., Gallimard, L., & Polit, O. (2015, August). Hybrid kinematic model applied to the under-actuated robotic hand prosthesis promain-i and experimental evaluation. In Rehabilitation Robotics (ICORR), 2015 IEEE International Conference on (pp. 301-306). IEEE.………………………………………………………………….17 Figura 9. Planteamiento de sistema de coordenadas para un manipulador de 3 grados de libertad, De “Modelamiento Matemático de la cinematica directa e inversa de un Robot manipulador de tres grados de libertad”, Página 2, Por Ramírez & Rubiano, 2012…………………………………..………….17 Figura 10. Forma general de las matrices de rotación, De “Modelamiento Matemático de la cinemática directa e inversa de un Robot manipulador de tres grados de libertad”, Página 3, Por Ramírez & Rubiano, 2012………………17 Figura 11. Componentes de un sistema de visión artificial, De “Introducción a la visión artificial”, Página 12, Por Cognex, 2016……………………19 Figura 12. Cambio de grises entre píxeles, De “Análisis de Bioseñales I”, Página 30, Por Farias, Fasce, Ortiz & Zomosa, 2014………………………………..20 Figura 13. Ejemplo del operador Sobel. por J.D. Gómez & A.O. Benavides, 2018, Desarrollada por medio del software “Make human”. Reimpresión [o adaptación] autorizada………………………………………………………………..21 Figura 14. Ejemplo del operador Prewitt. por J.D. Gómez & A.O. Benavides, 2018, Desarrollada por medio del software “Make human”. Reimpresión [o adaptación] autorizada………………………………………………………………..21 Figura 15. Ejemplo del operador Canny. por J.D. Gómez & A.O. Benavides, 2018, Desarrollada por medio del software “Make human”. Reimpresión 6.

(7) [o adaptación] autorizada………………………………………………………………..22 Figura 16. Trayectorias punto a punto. Movimiento eje a eje(A). Movimiento simultáneo de ejes(B). de "Fundamentos de robótica”, Página 35, Por Barrientos, Peñin & Balaguer, 2007……………………………………………….23 Figura 17. Trayectoria coordinada. de "Fundamentos de robótica”, Página 35, Por Barrientos, Peñin & Balaguer, 2007……………………………………………….24 Figura 18. Trayectoria Continua. de "Fundamentos de robótica”, Página 35, Por Barrientos, Peñin & Balaguer, 2007………………………………………………24 Figura 19. Ejemplo de plano Virtual con línea de aproximación de un algoritmo de interpolación. De “How to implement Bresenham’s algorithm as a system of equations”, Página 1, Por Povkov, 2017………………………………………………25 Figura 20. Algoritmo Básico para generación de líneas. De DISEÑO E IMPLEMENTACIÓN DE UNA ESTRATEGIA DE CONTROL PARA UN MANIPULADOR ANTROPOMÓRFICO DE TRES GRADOS DE LIBERTAD. (p. 2), Por C. C. Téllez, 2012. Derechos de autor [2012] por C. C. Téllez. Reimpresión autorizada…………………………………………………………………25 Figura 21. Diagrama de flujo del algoritmo DDA. En “Drawing Algorithm Flowchart”, por ClipArtXtras, 2017, Derechos de autor [2017] por el ClipArtXtras. Adaptación autorizada…………………………………………………………………..26 Figura 22. Diagrama de flujo del algoritmo de Bresenham. En “Algorithm Breshenham draw straight lines”,por cachhoc, 2014. Derechos de autor [2014] por cachhoc. Adaptación autorizada…………………………………………...27 Figura 23. Estudio de correlación de los principales trabajos encontrados en el estado del arte. por J.D. Gómez & A.O. Benavides, 2018, Desarrollada por medio del software “VOSViwer”. Reimpresión [o adaptación] autorizada………….28 Figura 24. Diagrama de flujo algoritmo de detección de bordes, por J. D. Gómez & A. O. Benavides, 2018, Desarrollada por medio del software RFFlow. Reimpresión [o adaptación] autorizada……………………………………...30 Figura 25. Diagrama de flujo algoritmo de posicionamiento en el origen, por J. D. Gómez & A. O. Benavides, 2018, Desarrollada por medio del software RFFlow. Reimpresión [o adaptación] autorizada…………………………..31 Figura 26. Diagrama de flujo algoritmo de dibujo, por J. D. Gómez & A. O. Benavides, 2018, Desarrollada por medio del software RFFlow. Reimpresión [o adaptación] autorizada………………………………………………..32 Figura 27. Imagen dibujada por el robot retratista vs imagen propuesta por matlab. por J. D. Gómez & A. O. Benavides, 2018.. LISTA DE TABLAS. Tabla 1. Clasificación de los manipuladores a lo largo de la historia. Por L. F. Barrientos, Fundamentos de Robótica, Madrid: Mc Graw Hill, 1996…………………………………………………………………………………11. 7.

(8) INTRODUCCIÓN. Generalmente las acciones robóticas son establecidas previamente, y se expresan con un alto nivel de detalle para asegurar el éxito de las aplicaciones. El hecho de pre-establecer acciones limita la adaptabilidad de los sistemas robóticos, y con ello surgen dos desventajas: i) la necesidad de emplear más horas de trabajo en la programación del robot para cada operación predeterminada y ii) la limitante del robot, que solo puede ejecutar operaciones fijas, lo que causa una automatización rígida, restringiendo la evolución de los sistemas que permiten rapidez, eficacia y eficiencia en el desarrollo de una tarea en la que se involucra un robot (Mohammed, Wang & Gao, 2013). En consecuencia, para posibilitar dinamismo en el desarrollo de la manufactura y de la flexibilidad de la robótica de los manipuladores, se hace necesaria la dotación a estos robots de cierto grado de versatilidad, generando un sistema más robusto en el que se combinan procesos robóticos, visión artificial y procesamiento de imágenes. Consolidar dicho sistema le proporciona al robot la capacidad de adaptarse al entorno de trabajo, prevenir accidentes evadiendo obstáculos y disminuir el uso de otros sensores que hagan que el costo de operación sea más elevado, para lo cual se deben también implementar planeamiento de trayectorias autoajustables, según el campo de acción y la tarea a realizar. En los documentos, proyectos y artículos consultados (Ramírez & Rubiano, 2012; Ghisays, 2012; Vasilyev & Lyashin,2010; Gallant & Gosselin, 2018; Zhang, Sørensen, Iversen & Li, 2018; Zanchettin & Rocco, 2017; Mohammed, Wang & Gao, 2013; Vakanski, Janabi-Sharifi & Mantegh, 2017; Jin, Li, Yu & He; 2018; De Silva, 1995; Douglas & Peucker, 1973; Edan, Flash, Peiper, Shmulevich & Sarig, 1991; Canny,1986; Laib & Lagarrigue, 1995; Dimeas, Moulianitis & Aspragathos, 2018; Leite, Lizarralde, From, Costa & Hsu, 2012; Burlacu, Copot & Lazar, 2012; Hultmann & dos Santos, 2012; Zhou, Shi, Chao, Lin, Yang, Shang & Zhou, 2018; Saravanan, Ramabalan & Balamurugan, 2009; Zou, Liu, Li & Chen, 2009; Chaumette & Hutchinson, 2006; Morales, Carelli & García, 2000; Zeng & Wang, 2014; Yang & Xu, 2011; Sánchez, Pérez & Ricalde, 2002) se encontró la integración de la visión artificial a los robots manipuladores, sólo como sistema de vigilancia, de prevención de accidentes, pero no se encontró mayor recopilación del estado del arte referente a la visión artificial como medio de planeamiento de trayectorias autoajustables según la evolución del entorno de trabajo, con la ayuda del procesamiento de imágenes. Consecuentemente, este proyecto busca desarrollar un algoritmo que permita integrar visión artificial y generación de trayectoria en un solo sistema. Para esto, primero se desarrollará una identificación de las características, parámetros 8.

(9) cinemáticos y de movimiento del robot UR-3 de universal robots, después se desarrollará un algoritmo de procesamiento de imágenes para la detección de bordes, a continuación, se propondrá una técnica de generación de trayectorias, las cuales se ajustan al resultado del procesamiento de la imagen y por último se establecerá una estrategia de control para dibujar la imagen de bordes. Por consiguiente, este trabajo constituye un interesante caso de estudio de la implementación del sistema descrito anteriormente, y de igual manera se proporcionaría una herramienta de aprendizaje a la comunidad académica de la Universidad Cooperativa de Colombia.. 9.

(10) 1. MARCO TEÓRICO En este capítulo se exponen los conceptos teóricos que permiten la comprensión y familiarización con las características de los robots manipuladores en cuanto a su definición, clasificación, morfología, configuraciones articulares y su incidencia en el campo de trabajo. Teniendo una configuración articular definida, se obtiene un modelo matemático, en el cual se describe cada uno de los movimientos a partir de posiciones coordenadas del efector final y angulares de cada una de las articulaciones del robot manipulador; a este modelo matemático se le conoce como la cinemática del movimiento, la cual será definida. De la misma manera se aborda la visión artificial en cuanto a su definición, ventajas y componentes; posteriormente se ahonda en el procesamiento de imágenes en cuanto a la detección de bordes. Finalmente se abordan los conceptos relacionados con la generación de trayectorias a partir de diferentes algoritmos y qué tan eficientes resultan.. 1.1 ROBOTS MANIPULADORES Los sistemas asistidos por computadora comprenden una gran parte de la industria, la combinación de distintas ramas de la ingeniería actualmente nos permite lograr automatizar procesos. Queriendo dar una definición formal de lo que significa robot industrial hemos revisado las definiciones dadas por las diferentes organizaciones internacionales de la estandarización de la robótica como el Robotics Institute of America (RIA) o la Japan Industrial Robot Association (JIRA), entre otras. Lo que nos permite decir de manera general que el robot industrial es un manipulador mecánico con articulaciones móviles capaces de hacer múltiples tareas de forma específica siguiendo trayectorias definidas y con la cualidad de ser reprogramable. Más velocidad, más precisión, nada de riesgo y monotonía mantienen los robots manipuladores como la mejor opción en cuanto a la automatización de procesos industriales (Saha, 2010).. 1.2 CLASIFICACIÓN DE LOS ROBOTS MANIPULADORES En la Asociación Francesa de Robótica Industrial, los robots manipuladores se encuentran clasificados en cuatro categorías: •. Categoría A: manipulador con control manual o teleoperado.. 10.

(11) •. Categoría B: manipulador automático con ciclos preajustados; regulación mediante fines de carrera o topes; control por PLC.. •. Categoría C: manipulador con trayectoria definida y sin poseer información de su entorno.. •. Categoría D: posee información de su entorno y modifica su tarea según las variaciones del mismo (Sciavicco & Siciliano, 2007). Otra manera de clasificar los robots manipuladores es según el modo de control de sus movimientos: •. Manual: Cuando el operador controla directamente la tarea del robot manipulador.. •. Secuencia fija: Cuando se repite de manera invariable una secuencia fija de trabajo preparada previamente.. •. Secuencia variable: Cuando se alteran algunas características de los ciclos de trabajo. (Barrientos, Peñin & Balaguer, 2007). Existen diferentes maneras de clasificar los robots manipuladores, bien sea por número de articulaciones, generación o tipo de control. Pero fue T. M. Knasel quien en 1986 recopiló varios aspectos, los cuales a pesar de su antigüedad no han perdido validez, lo cual permite tener una visión del pasado, presente y futuro de la robotica.(Barrientos, Peñin & Balaguer, 2007). Generación. Nombre. Tipo de control. Grado de movilidad. Usos más frecuentes. 1(1982). Pick & Place. Fines de carrera, aprendizaje.. Ninguno.. Manipulación, servicio de máquinas.. 2(1984). Servo. Servo control, trayectoria continua, programación condicional.. Desplazamiento por vía.. Soldadura, pintura.. 3(1989). Ensamblado. Servos de precisión, visión, tacto.. Guiado por vía.. Ensamblado, desbardado.. 11.

(12) 4(2000). Móvil. Sensores inteligentes.. Patas, ruedas.. Construcción, mantenimiento.. 5(2010). Especiales. Controlados con técnicas de IA.. Andante, saltarín.. Militar, espacial.. Tabla 1. Clasificación de los manipuladores a lo largo de la historia. Por L. F. Barrientos, Fundamentos de Robotica, Madrid: Mc Graw Hill, 1996.. 1.3 MORFOLOGÍA DE LOS ROBOTS MANIPULADORES Los robots manipuladores están constituidos por estructuras cinemáticas y estas a su vez por articulaciones y eslabones; las articulaciones se pueden clasificar en cinco categorías: •. Articulación rotacional o revoluta: Permite que dos eslabones giren uno con respecto al otro. Como se muestra en la figura 1.. •. Articulación prismática: Permite que dos eslabones se deslicen uno con respecto al otro, a lo largo de un eje, tal como se muestra en la figura 1.. •. Articulación helicoidal o de tornillo: Como se muestra en la figura 1, esta permite que dos eslabones unidos giren alrededor del eje de la articulación y se trasladen al mismo tiempo.. •. Articulación cilíndrica: Permite la rotación alrededor del eje de la articulación y el traslado independiente a lo largo de ella, como se muestra en la figura 1.. •. Articulación esférica: Permite que uno de los eslabones unidos gire libremente en todas las orientaciones posibles respecto al otro alrededor del centro de una esfera, se puede observar en la figura 1.. •. Articulación planar: Permite dos traslados a lo largo de dos ejes independientes del plano y una rotación perpendicular al mismo. Ver figura 1. (Saha, 2010). Al conjunto de articulaciones anteriormente descrito se le conoce también como los seis pares inferiores de Reuleaux.. 12.

(13) Figura 1. Distintos tipos de articulaciones para robots, por J.D. Gómez & A.O. Benavides, 2018, Desarrollada por medio del software “FREECAD”. Reimpresión [o adaptación] autorizada.. 1.3.1 CONFIGURACIÓN CARTESIANA El posicionamiento de esta configuración en el espacio se lleva a cabo mediante articulaciones lineales. Se compone de tres articulaciones prismáticas como se ve en la figura 2.. Figura 2. Robot Cartesiano, de "Fundamentos de robótica”, Página 35, Por Barrientos, Peñin & Balaguer, 2007.. 13.

(14) 1.3.2 CONFIGURACIÓN CILÍNDRICA El posicionamiento de esta configuración en el espacio se lleva a cabo por medio de una articulación rotacional sobre una base y articulaciones lineales para el movimiento en altura y en radio. Como se observa en la Figura 3.. Figura 3. Robot Cilíndrico, de "Fundamentos de robótica”, Página 35, Por Barrientos, Peñin & Balaguer, 2007.. 1.3.3 CONFIGURACIÓN ESFÉRICA El posicionamiento de esta configuración en el espacio se lleva a cabo mediante dos articulaciones rotacionales y una lineal, para una configuración esférica, ver figura 4; mediante varios tipos de articulaciones, combinaciones de las anteriores para una configuración SCARA (Selective Compliance Assembly Robot Arm), ver figura 5.. 14.

(15) Figura 4. Robot Esférico, de "Fundamentos de robótica”, Página 35, Por Barrientos, Peñin & Balaguer, 2007.. Figura 5. Robot SCARA.de "Fundamentos de robótica”, Página 35, Por Barrientos, Peñin & Balaguer, 2007.. 1.3.4 CONFIGURACIÓN ANTROPOMÓRFICA El posicionamiento de esta configuración en el espacio se lleva a cabo mediante tres o más articulaciones rotacionales, como se muestra en la figura 6; tiene como característica principal, que se asemeja al campo de movimiento de un brazo humano y a su morfología, ver figura 7.. 15.

(16) Figura 6. Robot Antropomórfico.de "Fundamentos de robótica”, Página 35, Por Barrientos, Peñin & Balaguer, 2007.. Figura 7. Brazo humano vs Robot antropomórfico. De “Introducción a la robótica”, Página 16, Por Saha, 2010.. 1.4 CINEMÁTICA DE LOS MANIPULADORES Como bien se ha definido previamente una cualidad con la que coinciden todas las definiciones dadas hasta el momento para los manipuladores es su capacidad de seguir trayectorias definidas, esto nos obliga a hablar del concepto de cinemática. La cinemática entonces es un planteamiento matemático dado para entender el movimiento de un robot manipulador, esta se ocupa de dar una relación geométrica. 16.

(17) entre un punto de referencia, las articulaciones o grados de libertad, el tiempo y un valor final. Dicho esto, nos encontramos con dos situaciones puntuales a la hora de definir la cinética de un manipulador, por una parte, nos encontramos con el problema de definir una posición final para el manipulador en términos del valor traslacional de sus articulaciones, este ejercicio es conocido en la automatización como la definición de la cinemática directa del manipulador. Por otro lado, tenemos el problema contrario, el cálculo de los valores articulares del robot para un punto final establecido en coordenadas globales del robot (Ramírez & Rubiano, 2012). En la actualidad existen diversos métodos para hacer frente a estos problemas de planteamiento geométrico de los manipuladores, la matriz Jacobiana, pero sobre todo los parámetros de Denavit-Hartenberg son métodos conocidos de matrices que nos permiten definir la cinemática tanto directa como inversa de un manipulador a partir de una matriz de 4x4 que nos proporciona la información pertinente a la ubicación del robot en todas sus perspectivas (Rotación, Traslación, Escala y perspectiva). Dicho arreglo es conocido como la matriz de transformación homogénea del manipulador y podemos definirla como el producto entre las matrices de rotación y traslación del eje X y del eje Z de nuestro manipulador. Esta puede apreciarse en la siguiente matriz.. Figura 8. Matriz de transformación homogénea. Ramirez, J. L., Rubiano, A., Jouandeau, N., El Korso, M. N., Gallimard, L., & Polit, O. (2015, August). Hybrid kinematic model applied to the under-actuated robotic hand prosthesis promain-i and experimental evaluation. In Rehabilitation Robotics (ICORR), 2015 IEEE International Conference on (pp. 301-306). IEEE.. Teniendo definida la matriz de transformación homogénea, se reemplazan los 4 parámetros de Denavit-Hartenberg (‘a’ es la longitud del eslabón, ‘d’ es la distancia entre el eslabón a lo largo del eje Z, ‘𝛼’ es el ángulo de rotación entre el eje Z a lo largo del eje X y ‘𝜃’ que es la rotación a lo largo del eje Z) para obtener las matrices de traslación del manipulador y el producto entre estas nos proporcionará una matriz de traslación final que describe la cinemática del manipulador.. 17.

(18) Figura 9. Planteamiento de sistema de coordenadas para un manipulador de 3 grados de libertad, De “Modelamiento Matemático de la cinematica directa e inversa de un Robot manipulador de tres grados de libertad”, Página 2, Por Ramirez & Rubiano, 2012.. Figura 10. Forma general de las matrices de rotación, De “Modelamiento Matemático de la cinemática directa e inversa de un Robot manipulador de tres grados de libertad”, Página 3, Por Ramírez & Rubiano, 2012.. 1.5 VISIÓN ARTIFICIAL Es indispensable abordar éste tema para el entendimiento y familiarización con los conceptos abordados en este trabajo, en el cual se hace uso de la visión artificial como medio de adquisición de imagen para su posterior procesamiento; surgen entonces varias preguntas.. 1.5.1 ¿QUÉ ES VISIÓN ARTIFICIAL? Según la Automated Imaging Association (AIA), la visión artificial abarca todas las aplicaciones industriales y no industriales en las que una combinación de hardware y software brinda un guiado operativo a los dispositivos en la ejecución de sus funciones de acuerdo con la captación y procesamiento de imágenes. (Cognex, 2016). 18.

(19) 1.5.2 ¿CUÁLES SON LAS VENTAJAS DE LA VISIÓN ARTIFICIAL? Una de las ventajas más importantes de la visión artificial es su interpretación de manera cuantitativa, la cual evalúa una escena estructurada debido a su velocidad, precisión y repetibilidad; en contraste con la visión humana, cuya interpretación es más cualitativa, evaluando una escena de manera abstracta y diferente para cada observador. Por lo anterior se deduce que la utilización de visión artificial aporta beneficios operativos, y de seguridad al reducir la participación humana en los procesos. 1.5.3 ¿CUÁLES SON LOS COMPONENTES DE LA VISIÓN ARTIFICIAL? Los componentes principales de un sistema de visión artificial son la iluminación, la lente, el sensor de imagen, el procesamiento de visión y las comunicaciones.. Figura 11. Componentes de un sistema de visión artificial, De “Introducción a la visión artificial”, Página 12, Por Cognex, 2016.. 19.

(20) 1.6 PROCESAMIENTO DE IMÁGENES DETECCIÓN DE BORDES A un conjunto de técnicas y procesos, para extraer o descubrir información presente en una imagen por medio de un ordenador o sistema inteligente informático se le conoce como procesamiento de imágenes; para este trabajo en particular se aborda el procesamiento en pro de la detección de bordes de una imagen. Un borde en una imagen es un cambio significativo en el nivel de gris entre dos o más píxeles adyacentes (Farías, Fasce, Ortiz & Zomosa, 2014), para determinar estos puntos en la imagen se utilizan operadores entre los cuales destacan: Sobel, Prewitt y Canny, siendo estos los principalmente usados.. Figura 12. Cambio de grises entre píxeles, De “Análisis de Bioseñales I”, Página 30, Por Farias, Fasce, Ortiz & Zomosa, 2014.. 1.6.1 OPERADOR SOBEL El operador Sobel calcula el gradiente de la intensidad de una imagen en cada punto (píxel). Así, para cada punto, este operador da la magnitud del mayor cambio posible, la dirección de éste y el sentido desde oscuro a claro. El resultado muestra cómo de abruptamente o suavemente cambia una imagen en cada punto analizado y, en consecuencia, cuán probable es que éste represente un borde en la imagen y, también, la orientación a la que tiende ese borde. (Patnaik & Yang, 2012).. 20.

(21) Matemáticamente, el gradiente de una función de dos variables para cada punto es un vector bidimensional. Para cada punto de la imagen, el vector gradiente apunta en dirección del incremento máximo posible de la intensidad, y la magnitud del vector gradiente corresponde a la cantidad de cambio de la intensidad en esa dirección.. Figura 13. Ejemplo del operador Sobel. por J.D. Gómez & A.O. Benavides, 2018, Desarrollada por medio del software “Make human”. Reimpresión [o adaptación] autorizada.. 1.6.2 OPERADOR PREWITT El operador Prewitt detecta cambios en los límites de la respuesta al ruido, así como los cambios abruptos de intensidad en la imagen (Farías, Fasce, Ortiz & Zomosa, 2014), a cada pixel se aplican ocho matrices bidimensionales cada una de ellas toma el nombre de un punto cardinal y por último se suman las imágenes para obtener otra con bordes bien marcados.. 21.

(22) Figura 14. Ejemplo del operador Prewitt. por J.D. Gómez & A.O. Benavides, 2018, Desarrollada por medio del software “Make human”. Reimpresión [o adaptación] autorizada.. 1.6.3 OPERADOR CANNY El operador Canny utiliza un filtro basado en la primera derivada gaussiana. Ya que es susceptible al ruido presente en datos de imagen sin procesar, la imagen original es transformada con un filtro gaussiano. El resultado es una imagen un poco borrosa respecto a la versión original. Esta nueva imagen no se ve afectada por un píxel único de ruido en un grado significativo. (Canny, 1986). Este algoritmo está considerado como uno de los mejores métodos de detección de contornos mediante el empleo de máscaras de convolución.. Figura 15. Ejemplo del operador Canny. por J.D. Gómez & A.O. Benavides, 2018, Desarrollada por medio del software “Make human”. Reimpresión [o adaptación] autorizada.. 22.

(23) 1.7 TRAYECTORIAS. Las trayectorias para los robots manipuladores es el tema mayormente estudiado, ya que para el desplazamiento de un punto a a un punto b, un robot tiene infinitas maneras de cumplir esa trayectoria, por lo cual, con el estudio de planeación de trayectorias, se busca dar la solución más eficiente y eficaz entre la infinidad de posibilidades. Existen tres tipos de trayectorias. 1.7.1 TRAYECTORIAS PUNTO A PUNTO En esta clase de trayectorias cada articulación evoluciona desde su punto inicial hasta el punto final, sin tener en cuenta el estado de las demás articulaciones, para este tipo de trayectorias se dan dos casos (Barrientos, Peñin & Balaguer, 2007): ● Movimiento eje a eje: este movimiento es de forma secuencial, un eje a la vez generando menor consumo de potencia, pero ocasionando en el movimiento mayor tiempo de ejecución. ● Movimiento simultáneo de ejes: como su nombre lo menciona, las articulaciones inician su movimiento en el mismo instante, haciendo que el tiempo de la tarea se vea reducido y limitándose a la velocidad que le tome a la articulación más lenta llegar al punto indicado, esto conlleva a que algunas articulaciones se expongan a aceleraciones innecesarias (Barrientos, Peñin & Balaguer, 2007).. 23.

(24) Figura 16. Trayectorias punto a punto. Movimiento eje a eje(A). Movimiento simultáneo de ejes(B). de "Fundamentos de robótica”, Página 157, Por Barrientos, Peñin & Balaguer, 2007.. 1.7.2 TRAYECTORIAS COORDINADAS Estas trayectorias evitan que las articulaciones se vean forzadas a movimientos innecesarios e inútiles, brindando una simultaneidad en tiempo y velocidad, ya que las articulaciones con mayor velocidad se sincronizan con la articulación más lenta, aunque su tiempo total sigue dependiendo de esta (Barrientos, Peñin & Balaguer, 2007).. 24.

(25) Figura 17. Trayectoria coordinada. de "Fundamentos de robótica”, Página 157, Por Barrientos, Peñin & Balaguer, 2007.. 1.7.3 TRAYECTORIAS CONTINUAS Estas trayectorias son calculables y buscan que la articulación o movimiento presente varios cambios en dirección y velocidad, donde el resultado del extremo será la trayectoria deseada (Barrientos, Peñin & Balaguer, 2007).. Figura 18. Trayectoria Continua. de "Fundamentos de robótica”, Página 158, Por Barrientos, Peñin & Balaguer, 2007.. 1.8 ALGORITMOS DE INTERPOLACIÓN Son un conjunto de operaciones matemáticas sistemáticas, utilizados para el cálculo de valores intermedios entre dos puntos, generando así líneas o curvas que unen dichos puntos; en robótica son utilizados para la generación de trayectorias, y los puntos son representados por píxeles en un plano virtual. 25.

(26) Figura 19. Ejemplo de plano Virtual con línea de aproximación de un algoritmo de interpolación. De “How to implement Bresenham’s algorithm as a system of equations”, Página 1, Por Povkov, 2017.. 1.8.1 ALGORITMO BÁSICO DIRECTO Este método permite dibujar una línea, entre los puntos (x0,y0) y (x1,y1), utilizando la ecuación y = mx + b generando a continuación la secuencia (xi+1 = xi + x, round (yi + 1)). Con este cálculo se obtiene el píxel más cercano o sea aquel cuya distancia a la recta es menor.Este método no es tan eficiente debido a que en cada iteración se requiere una multiplicación y una suma en punto flotante, más la invocación del método de truncamiento. El uso de la función de redondeo y el hecho de que para cada valor (discreto) de x se grafica un solo valor de y, ocasiona que la gráfica sea discontinua para |m|>1.(Donald & Baker, 1996). Figura 20. Algoritmo Básico para generación de líneas. De DISEÑO E IMPLEMENTACIÓN DE UNA ESTRATEGIA DE CONTROL PARA UN MANIPULADOR ANTROPOMÓRFICO DE TRES GRADOS DE LIBERTAD. (p. 2), Por C. C. Tellez, 2012. Derechos de autor [2012] por C. C. Tellez. Reimpresión autorizada.. 26.

(27) 1.8.2 ALGORITMO DDA (DIGITAL DIFFERENTIAL ANALYZER) El Algoritmo DDA es un algoritmo de línea de conversión de rastreo que se basa en el cálculo ya sea en el incremento de X o en el incremento de Y. La finalidad de este algoritmo es determinar los valores enteros correspondientes más próximos a la trayectoria de la línea para la otra coordenada. (Blanco & Arévalo, 2011).. Figura 21. Diagrama de flujo del algoritmo DDA. En “Drawing Algorithm Flowchart”, por ClipArtXtras, 2017, Derechos de autor [2017] por el ClipArtXtras. Adaptación autorizada.. Los inconvenientes con este algoritmo son el redondeo necesario al momento de dibujar un pixel, ya que retrasa la ejecución del algoritmo, además la acumulación de incremento del error debido a las sumas flotantes (Jana, 2010). 27.

(28) 1.8.3 ALGORITMO DE BRESENHAM Un algoritmo preciso y efectivo para la generación de líneas de rastreo, desarrollado por Bresenham, convierte mediante rastreo las líneas al utilizar sólo cálculos incrementales con enteros que se pueden adoptar para desplegar circunferencias y otras curvas. El algoritmo de línea de Bresenham se basa en probar el signo de un parámetro entero, cuyo valor es proporcional a la diferencia entre las separaciones de las dos posiciones de píxel de la trayectoria real de la línea(Donald & Baker, 1996).. Figura 22. Diagrama de flujo del algoritmo de Bresenham. En “Algorithm Breshenham draw straight lines”,por cachhoc, 2014. Derechos de autor [2014] por cachhoc. Adaptación autorizada.. 28.

(29) 2. ESTADO DEL ARTE En procesos donde se utilizan robots manipuladores, el desarrollo de un algoritmo para cada una de las tareas a realizar es una gran limitante que aparece con alta frecuencia, ya que, si el proceso cambia, se debe realizar una reprogramación del robot, de igual manera cuando el entorno de trabajo evoluciona. Lo anterior propone un problema de versatilidad y adaptabilidad del sistema robótico.. Figura 23. Estudio de correlación de los principales trabajos encontrados en el estado del arte. por J.D. Gómez & A.O. Benavides, 2018, Desarrollada por medio del software “VOSViwer”. Reimpresión [o adaptación] autorizada.. La figura 23, presenta estudio de correlación de los principales trabajos encontrados en el estado del arte (Ramírez & Rubiano, 2012; Ghisays, 2012; Vasilyev & Lyashin,2010; Gallant & Gosselin, 2018; Zhang, Sørensen, Iversen & Li, 2018; Zanchettin & Rocco, 2017; Mohammed, Wang & Gao, 2013; Vakanski, JanabiSharifi & Mantegh, 2017; Jin, Li, Yu & He; 2018; De Silva, 1995; Douglas & Peucker, 1973; Edan, Flash, Peiper, Shmulevich & Sarig, 1991; Canny,1986; Laib & Lagarrigue, 1995; Dimeas, Moulianitis & Aspragathos, 2018; Leite, Lizarralde, From, Costa & Hsu, 2012; Burlacu, Copot & Lazar, 2012; Hultmann & dos Santos, 2012; Zhou, Shi, Chao, Lin, Yang, Shang & Zhou, 2018; Saravanan, Ramabalan & Balamurugan, 2009; Zou, Liu, Li & Chen, 2009; Chaumette & Hutchinson, 2006;. 29.

(30) Morales, Carelli & García, 2000; Zeng & Wang, 2014; Yang & Xu, 2011; Sánchez, Pérez & Ricalde, 2002). Es importante mencionar que el estudio de correlación considera las siguientes variables relevantes: i) el color, que representa la cantidad de estudios desarrollados (rojo indica el máximo y azul el mínimo), ii) el tamaño de la letra, que indica la importancia del tema dentro del campo de estudio y iii) la posición, que explica la relación entre los temas, entre más cercanos estén más relacionados están.. 3. DESARROLLO DE ALGORITMOS. 3.1 ALGORITMO PARA EL PROCESAMIENTO DE IMAGEN Para el procesamiento de imagen se desarrolló un algoritmo en el cual se hace uso de varias funciones propias de matlab; por medio de las cuales se sigue paso a paso el algoritmo descrito en la siguiente figura.. Figura 24. Diagrama de flujo algoritmo de detección de bordes, por J. D. Gómez & A. O. Benavides, 2018, Desarrollada por medio del software RFFlow. Reimpresión [o adaptación] autorizada.. 30.

(31) 3.2 DESARROLLO DEL ALGORITMO DE DIBUJO Para el algoritmo de control se desarrollaron dos scripts, uno de origen que permite posicionar el robot en el punto inicial de dibujo en el cual, por medio de comandos de matlab y Ur-script se cumple con las tareas descritas en la siguiente figura. Figura 25. Diagrama de flujo algoritmo de posicionamiento en el origen, por J. D. Gómez & A. O. Benavides, 2018, Desarrollada por medio del software RFFlow. Reimpresión [o adaptación] autorizada.. El segundo script lee los vectores de coordenadas X & Y enviando la información al robot sobre los puntos o lineas que debe seguir, el algoritmo se describe en la siguiente figura. 31.

(32) Figura 26. Diagrama de flujo algoritmo de dibujo, por J. D. Gómez & A. O. Benavides, 2018, Desarrollada por medio del software RFFlow. Reimpresión [o adaptación] autorizada.. 32.

(33) 4. RESULTADOS El proceso para la obtención del resultado final empezó por el desarrollo del algoritmo de procesamiento de imagen, en el cual se probaron los diferentes operadores escogiendo finalmente el operador “Canny”, ya que es el que mejor detalle ofrece, seguido de eso, se enlazó el robot UR3 con MATLAB por medio de direccionamiento IP, a continuación, se desarrolló el algoritmo de dibujo, inicialmente se pensó en utilizar bresenham, pero se dependía todo el tiempo de dos puntos cercanos entre sí, por lo que se decidió dividir las coordenadas en dos vectores que se leen en iteraciones pixel por pixel. Después del desarrollo del algoritmo para el dibujo de imágenes a partir de bordes, se logró dibujar retratos por medio de la lectura de los puntos coordenados de cada pixel de manera vertical, por lo cual el dibujo se completa columna a columna de derecha a izquierda.. Figura 27. Imagen dibujada por el robot retratista vs imagen propuesta por MATLAB. por J. D. Gómez & A. O. Benavides, 2018.. Como se observa en la figura 27, la reproducción de la imagen es altamente fiel, lo cual supone gran eficiencia y eficacia del algoritmo; también abre el espectro a posibles aplicaciones como lo son la soldadura de precisión, procedimientos de selección de objetos.. 33.

(34) El resultado sienta un precedente de las posibles aplicaciones para los robots manipuladores y deja para la Universidad Cooperativa De Colombia un medio de aprendizaje aplicable en las diferentes clases donde utilice el robot UR3 de Universal Robots.. 5. CONCLUSIONES •. Por medio del desarrollo de este trabajo, se adquirieron conocimiento acerca del procesamiento de imágenes en cuanto a la detección de bordes, y cómo obtener un plano coordenado a partir de cada pixel presente en la misma.. •. Se implementó un método simple y sencillo para la generación de trayectorias por medio de las cuales el robot logra dibujar una imagen exacta, fiel a la obtenida por medio de la detección de bordes.. •. La exactitud con la que el robot reproduce la imagen de bordes genera una amplia gama de aplicaciones para el proyecto, por ejemplo, soldadura por medio de robots manipuladores, selección y clasificación de materiales, entre otras.. •. La resolución y el tratamiento de imagen exitoso del retrato influye directamente en los tiempos de procesamiento del algoritmo, permitiendo al robot reducir los tiempos de ejecución.. 34.

(35) 6. REFERENCIAS. A. Burlacu, C. C. (2012). Predictive control architecture for real-time image moments based servoing of robot manipulators. IFAC Proceedings Volumes, 847-852. A., G. (2012). DISEÑO DE UN ALGORITMO PARA EL CÁLCULO DE TRAYECTORIAS DE ROBOTS SERIADOS CON EL FIN DE LOGRAR EL PRE-AGARRE EN POSICIÓN Y DIRECCIÓN DEL EFECTOR FINAL, MEDIANTE VISIÓN DE MÁQUINA. Universidad Militar. Abdelhamid L., L.-L. F. (1995). Robust Adaptive Control of Robot Manipulators. IFAC Proceedings Volumes, 331-334. C., D. S. (1995). Applications of fuzzy logic in the control of robotic manipulators. Fuzzy Sets and Systems, 223-234. Douglas., P. (1973). ALGORITHMS FOR THE REDUCTION OF THE NUMBER OF POINTS REQUIRED TO REPRESENT A DIGITIZED LINE OR ITS CARICATURE. Cartographica: The International Journal for Geographic Information and Geovisualization, 112-122. Fotios D., V. C. (2018). Manipulator performance constraints in human-robot cooperation. Robotics and Computer-Integrated Manufacturing, 222-233. Francois C., H. S. (2006). Visual servo control. I. Basic approaches. IEEE Robotics & Automation Magazine, 82 - 90. Gallant A., G. C. (2018). Extending the capabilities of robotic manipulators using trajectory optimization. Mechanism and Machine Theory, 502-514. Guowei Y., F. X. (2011). Research and analysis of Image edge detection algorithm Based on the MATLAB. Procedia Engineering, 1313-1318. Hongmei C., T. L. (2009). Research on the approach of dynamically maintenance of approximations in rough set theory while attribute values coarsening and refining. Granular Computing, 17-19. Hultmann H., D. S. (2012). Tuning of PID controller based on a multiobjective genetic algorithm applied to a robotic manipulator. Expert Systems with Applications, 8968-8974. J., C. (1986). A Computational Approach to Edge Detection. IEEE Transactions on Pattern Analysis and Machine Intelligence , 679-698.. 35.

(36) Jin L., L. S. (2018). Robot manipulator control using neural networks: A survey. Neurocomputing, 23-34. Leite A., L. F. (2012). Remote Calibration and Trajectory Replanning for Robot Manipulators Operating in Unstructured Environments. IFAC Proceedings Volumes, 59-65. Mohammed A., W. L. (2013). Integrated Image Processing and Path Planning for Robotic Sketching. Procedia CIRP, 199-204. Morales Beatriz, R. C. (2000). Motion Control Strategy for Robot Manipulators in the Neighbourhood of Singularities. IFAC Proceedings Volumes, 275-280. R. Saravanan, S. R. (2009). Evolutionary multi-criteria trajectory modeling of industrial robots in the presence of obstacles. Engineering Applications of Artificial Intelligence, 329-342. Ramírez J., R. A. (2012). Modelamiento Matemático de la cinematica directa e inversa de un Robot manipulador de tres grados de libertad. Revista UCC, 46-52. Sanchez E., P. J. (2012). RECURRENT NEURAL CONTROL FOR ROBOT TRAJECTORY TRACKING. IFAC Proceedings Volumes, 283-288. Vakanski A., J.-S. F. (2017). An image-based trajectory planning approach for robust robot programming by demonstration. Robotics and Autonomous Systems, 241-257. Vasilyev A., L. A. (2010). Analytical solution to inverse kinematic problem for 6DOF robot-manipulator. Automation in Industry, 3-5. Y. Edan, T. F. (1991). Near-minimum-time task planning for fruit-picking robots. IEEE Transactions on Robotics and Automation , 48-56. Zanchettin A., R. P. (2017). Motion planning for robotic manipulators using robust constrained control. Control Engineering Practice, 127-136. Zeng W., W. C. (2014). Learning from NN output feedback control of robot manipulators. Neurocomputing, 172-182. Zhang X., S. R. (2018). Computationally efficient dynamic modeling of robot manipulators with multiple flexible-links using acceleration-based discrete time transfer matrix method. Robotics and Computer-Integrated Manufacturing, 181-193.. 36.

(37) Zhou D., S. M. (2018). Use of human gestures for controlling a mobile robot via adaptive CMAC network and fuzzy logic controller. Neurocomputing, 218231.. 37.

(38)

Referencias

Documento similar

que hasta que llegue el tiempo en que su regia planta ; | pise el hispano suelo... que hasta que el

Abstract: This paper reviews the dialogue and controversies between the paratexts of a corpus of collections of short novels –and romances– publi- shed from 1624 to 1637:

En junio de 1980, el Departamento de Literatura Española de la Universi- dad de Sevilla, tras consultar con diversos estudiosos del poeta, decidió propo- ner al Claustro de la

Entre nosotros anda un escritor de cosas de filología, paisano de Costa, que no deja de tener ingenio y garbo; pero cuyas obras tienen de todo menos de ciencia, y aun

E Clamades andaua sienpre sobre el caua- 11o de madera, y en poco tienpo fue tan lexos, que el no sabia en donde estaña; pero el tomo muy gran esfuergo en si, y pensó yendo assi

The part I assessment is coordinated involving all MSCs and led by the RMS who prepares a draft assessment report, sends the request for information (RFI) with considerations,

Ciaurriz quien, durante su primer arlo de estancia en Loyola 40 , catalogó sus fondos siguiendo la división previa a la que nos hemos referido; y si esta labor fue de

Las manifestaciones musicales y su organización institucional a lo largo de los siglos XVI al XVIII son aspectos poco conocidos de la cultura alicantina. Analizar el alcance y