DISEÑO DE UN SISTEMA ROBOTIZADO DE CLASIFICACIÓN DE BREVAS CON FINES ACADÉMICOS

DESIGN OF ROBOTIC SYSTEMS FOR FIG CLASSIFICATION WITH EDUCATIONAL AIMS

Jonathan Soto Duran 1, César Peña 2, Oscar Gualdron 2

1 SIARC - Semillero de Investigación en Automatización, Robótica y Control. Universidad de Pamplona. – Colombia, 2 Grupo de Automatización y Control, Universidad de Pamplona – Colombia.

jonathan.soto@unipamplona.edu.co, cesarapc@unipamplona.edu.co, oscar.gualdron@unipamplona.edu.co

Recibido: 07/10/2013 - Aceptado: 22/12/2013


Resumen

Este artículo propone el diseño y construcción de un sistema robotizado de clasificación de brevas para la gestión agroempresarial. El proyecto tiene dos objetivos principales, El primero contribuir con el desarrollo agroempresarial de la región y el segundo, desarrollar una plataforma de bajo costo que permita a los estudiantes de robótica fortalecer sus conocimientos en cinemática, dinámica, planeación de trayectorias, diseño mecatrónico, programación, control y tratamiento de imágenes. El proyecto incluye el desarrollo de una banda transportadora, un brazo antropomórfico de 5 grados de libertad y un sistema de visión artificial. Por último se exponen los resultados de las simulaciones, construcción del prototipo, planificaciones de trayectorias basado en la realimentación visual y las conclusiones.

Palabras clave: Robot, Agroempresarial, diseño, visión, cinemática y dinámica.

Abstract

This paper proposes the design and construction of an automated system for fig classifications in agribusiness management. The project has two main aims, the first to contribute to agribusiness development in the local region and second, to develop a low-cost platform that allows students to strengthen their knowledge of robotics in kinematics, dynamics, trajectory planning, mechatronic design, programming, control and image processing. The project includes the development of a conveyor belt, an anthropomorphic arm with 5 degrees of freedom, and a vision system. Finally the results of the simulations, prototype construction, planning of trajectories based on visual feedback, and conclusions are presented.

Key Words: Robot, agribusiness, design, vision, kinematics and Dynamics.

1. INTRODUCCIÓN

El tratamiento de productos agrícolas alimentarios comienza desde el análisis de suelos, siembra, riego poda, manejo de enfermedades, cosecha, poscosecha y termina con la comercialización [3]. La poscosecha contempla el lavado, secado, selección, clasificación y empacado. Este proyecto propone el diseño de un sistema robotizado para la clasificación de brevas. La breva es un producto utilizado en conservas o para consumo como fruto cuando está maduro. Sus plantas no requieren de mucho cuidado y pueden crecer en múltiples climas. Son más resistentes a las sequias que a la humedad. Incluso si la sequía es muy fuerte, este árbol permanece en estado de reposo sin hojas, ni frutos. En la producción el adecuado reconocimiento del estado de madurez es valioso para el mejoramiento del producto [4], [9].

El objetivo es estimular a los estudiantes en el desarrollo de proyectos del sector agrícola, aportando soluciones a problemas reales de la región, aplicando técnicas innovadoras en procesos tradicionales y a su vez realizar un sistema robótico de carácter didáctico con aplicaciones agroindustriales que permita el desarrollo de prácticas en robótica, tales como: cinemática directa, inversa, planeación de trayectorias, control cinemático, visión artificial, etc.

El sistema está principalmente compuesto por una banda transportadora que lleva las brevas, un brazo robótico antropomórfico de 5 grados de libertad y un equipamiento de visión artificial. La elección del brazo robótico como mecanismo actuador de clasificación se debe a que se adapta bien a espacios de trabajos circulares y rectangulares, posee un alto grado de maniobrabilidad permitiéndole el desarrollo de movimientos complejos y el direccionamiento adecuado del efector final [5]. El efector final implementado tiene la propiedad de ser bastante flexible y su forma (pinza de enganche) lo hace idóneo para el transporte de brevas, sin ejercer presiones que puedan dañar la fruta. Al tener cuatro elementos de sujeción se evita la caída de la fruta disminuyendo el maltrato de la misma.

El proceso comienza con el transporte de las brevas sobre una banda transportadora, agrupándolas en un extremo para ser clasificadas. Una cámara de bajo costo captura fotografías secuencialmente y el software de control desarrollado, las procesa para extraer las características de coloración y ubicación con respecto a la base del robot. Utilizando algoritmos de cinemática inversa y directa, interpoladores de trayectorias se generan las referencias de control articular que son enviadas a las tarjetas del control dinámico del brazo robótico.

Dado que el sistema además de enmarcase en aplicaciones agroindustriales tiene un propósito didáctico se desarrollo utilizando herramientas de uso común en instituciones universitarias, en este caso Matlab® para la manipulación matemática de variables, formulas, representación de datos, comunicación con dispositivos externos (hardware) e implementa algoritmos de tratamiento de imágenes y SolidWorks® para el diseño asistido por computador del brazo antropomórfico, la banda transportadora, el efector final y la caja de conexiones, incluyendo el tablero de control.

El artículo está organizado de la siguiente forma: en la segunda sección se presenta la metodología de diseño físico de la banda y el brazo, además de una explicación de las tarjetas de control y los circuitos eléctricos. La tercera sección muestra el procesamiento de imágenes. La cuarta, la descripción de la rutina, el análisis y control cinemático, análisis dinámico incluyendo la selección de los motores y por último las simulaciones 3D. La quinta sección presenta los resultados del sistema implementado y finalmente se exponen las conclusiones y la bibliografía.

Metodología

2.1. Descripción del Prototipo

  1. Estructura mecánica del brazo antropomórfico de 5 grados de libertad.

    El objetivo del brazo robótico es el de clasificar y trasladar las brevas a su correcto recipiente, para esto el brazo comprende datos clave como lo son su configuración, peso, dimensiones y cinemática. El sistema es de fácil ensamble, mantenimiento, con formas aptas para los mecanizados a láser o CNC. Los materiales escogidos para su realización son de fácil adquisición, bajo precio y están acordes con la metodología de diseño en verde para contribuir con el medio ambiente. A continuación se muestra el diseño en CAD del brazo antropomórfico.

    Los actuadores son roboservos AX-12 de la empresa Dynamixel y servomotores estándar de piñonería metálica (se escogieron los dos para que los estudiantes puedan ampliar el número de practicas). Cada articulación es controlada directamente por el giro de un actuador, a excepción de la segunda articulación que utiliza dos servos estándar debido al alto torque que requiere. Los acoplamientos de los roboservos ayuda a alivianar en peso al brazo, al no utilizar materiales auxiliares.

    El robot tiene la propiedad de aumentar la longitud de algunos de sus eslabones y así servir como una aplicación didáctica para realizar practicas donde los estudiantes aprendan a diferenciar las repercusiones en el modelo dinámico que puede tener el cambio de los parámetros físicos del robot. Los materiales seleccionados para el maquinado de las piezas fueron acrílicos y aluminio por ser económicos, permitir cortes en máquina de control numérico, también por ser livianos, resistentes y de fácil adquisición en el mercado lo que permite su replicación por parte de otros estudiantes. La figura 2 muestra los eslabones del brazo robótico.

  2. Herramienta o efector final del robot

    El efector final del brazo robótico tiene cuatro mecanismos que cierran similar a una mordaza de torno. Las pinzas se sujetan a cuatro engranes individualmente colocados, movidos por un tornillo sin fin que atraviesa todo el centro por la parte superior. El actuador es un roboservo configurado en giro continuo que mueve el tornillo sin fin. El efector final tiene las características idóneas para coger las brevas porque aprisiona objetos esféricos en su interior sin producirles daños. La figura 3 muestra el diseño en CAD del efector final.

  3. Banco de clasificación

    Utilizando técnicas especializadas como el despliegue de la función de calidad, se extrajeron las características más importantes para las personas que utilizaran el sistema, como por ejemplo agricultores y los estudiantes interesados en el tema agrario. Las preferencias del diseño del sistema de clasificación son la economía, durabilidad, seguridad de las conexiones eléctricas, eficiencia, flexibilidad para cambio de producto de clasificación, compacto, facilidad de mantenimiento y alimentación estándar.

    La estructura del sistema es compacta y está hecha de materiales como aluminio y láminas de hierro para darle solidez al modelo. La figura 4 (a) representa la estructura. En la primera parte, se ubica una banda transportadora. El motor que la mueve está protegido por la estructura. El brazo robótico está en el otro extremo, sujeto a una base. Para ubicar los reguladores eléctricos, tarjetas de control y circuitos impresos se diseño una gaveta extensible que tiene organizadas todas las conexiones. Este sistema ayuda en el mantenimiento, sin el problema de tener instrumentos ocultos e incomodidad para los profesionales que lo revisan. Un perfil de aluminio sujeta a la cámara.

    La figura 4 (b) representa el sistema compacto. Los rodillos de la banda y el motor DC que la mueve, se pueden retirar de la estructura rectangular como una sola pieza. Previendo que el sistema sea utilizado para estudios universitarios, también se puede quitar la cuerina de la banda y reemplazarla por otra de diferente color para pruebas de visión artificial o pruebas de agarre.

2.2. Implementación Electrónica, Eléctrica y Programación

El software Matlab® se programaron las ordenes que son enviadas a las tarjetas de control (Arduino Nano V3.0) por medio de la sistema de comunicación (dynamixel USB). Dos servomotores estándar y el motor de la banda transportadora se manejan con la tarjeta Arduino. Por su parte la tarjeta dynamixel se encarga del control de los cinco roboservos AX-12 del brazo robótico. La figura 5 muestra la comunicación del sistema.

  1. Comunicación Matlab-Arduino

    La tarjeta Arduino utiliza programación especializada para el intercambio de información. La selección de la Arduino Nano es por ser compatible con el software de control, robusto en programación y flexible en adición de nuevo hardware (si se desea incluir nuevos sensores). Los servomotores de alto torque son controlados desde esta tarjeta por medio de dos pines. Otro pin es una salida digital que activa o desactiva al motor de la banda, como se muestra en la figura 6.

  2. Comunicación Matlab-Dynamixel

    El control de los dynamixel AX-12 se hace por medio del uso de librerías en C++ y cargadas desde Matlab®. Una función comienza armar paquetes de datos compuestos por el primer dato que es la sincronización de escritura, el segundo es la dirección de inicio y los siguientes datos son dos de posición y dos de velocidad. El número de datos es proporcional al número de servos a controlar. En el brazo los roboservos se conectan por medio de un solo bus de datos a la tarjeta USB. La alimentación de los servos se realizo de forma independiente para evitar daños en el puerto o en la misma tarjeta.

3 PROCESAMIENTO DIGITAL DE IMÁGENES

El reconocimiento de objetos se hace usando operaciones matriciales entre los componentes o canales de las imágenes [2] capturadas. El objetivo es clasificar brevas verdes y maduras. El color de la banda se selecciono blanco para que se diferenciase fácilmente de las frutas. La figura 7 muestra una imagen tomada durante el movimiento de las brevas sobre la banda transportadora, donde se aprecian 4 verdes y 2 maduras.

Se realizo un estudio explorando los espacios de colores RGB, HSV y YCbCr de varias imágenes capturadas con diversos tipos de muestras. Los resultados de histogramas realizados a las imágenes arrojaron que es posible clasificar las brevas maduras con solo la componente verde de la imagen (espacio RGB) debido a que se ubican dentro de un umbral con valores inferiores a 40. La figura 8 muestra al rango de umbrales de las brevas maduras empleando un histograma (los otros dos montículos corresponden a las brevas verdes y a la banda transportadora).

Posteriormente se realiza un filtro de color para seleccionar los pixeles correspondiente al umbral anteriormente seleccionado y consecuentemente generar una imagen binaria con la brevas maduras tal como se ilustra en la figura 9(b).

Como se puede apreciar, la figura 9(b) tiene pequeñas manchas negras o blancas correspondientes a segmentos de fruta en proceso de maduramiento (al ser pequeñas se considera que la fruta sigue siendo verde de lo contrario se clasifica como madura). En el caso de clasificarse como brevas verdes los segmentos maduros se eliminan (figura 10(b)) y en el caso de clasificarse como maduras se aplican operaciones de rellenado (figura 10(a)) para tomar toda la fruta como tal. El usuario del sistema se encuentra en la capacidad de fijar los niveles de clasificación de acuerdo al porcentaje que lo considere pertinente.

El estudio de los espacios de colores arrojo que por medio de la componente azul de las imágenes se puede diferenciar notablemente las brevas y la banda transportadora. El histograma de la figura 11 muestra como los valores menores o iguales a 50 corresponden a los pixeles que representan a todas las brevas.

De esta forma se crea la matriz de binarización que contiene todas las brevas (figura 12(b)). Por medio de esta imagen se estiman las posiciones de todas las brevas sobre la banda transportadora.

.

Al igual que en el caso de la figura 9b, es necesario eliminar áreas pequeñas blancas y negras. La figura 13(b) representa en color blanco la forma de las todas las brevas. Una operación lógica de intersección, entre la imagen binaria de las brevas maduras y la del conjunto total de brevas se obtiene el conjunto de las brevas verdes, tal como se muestra en la figura 13(b).

Con operaciones morfológicas de erosión ejecutadas independientemente en las figuras 10 (b) y 13 (b), se crean imágenes binarias que muestran un mejor punto de separación. Haciendo fácil calcular los centroides de las brevas sin tener el problema en el caso que las brevas este en contacto. En la figura 14 (a) y 14 (b) se muestran las imágenes agrupadas en brevas maduras y verdes respectivamente. Estas imágenes son utilizadas para el calculo de los centroides de cada una de las brevas.

La imagen de la figura 15 ilustra el resultado de la clasificación y localización de la brevas de acuerdo a su nivel de maduración. Cabe aclarar que el cálculo de la posición real de los objetos sobre la banda se hace relacionando el número de pixeles con las dimensiones reales que abarca la imagen [6], [7].

4 DESCRIPCIÓN DE LA RUTINA, ANÁLISIS CINEMÁTICO Y DINÁMICO

4.1. Descripción de la rutina

La siguiente figura muestra el resumen de las órdenes de mando del sistema de clasificación. Donde se aprecia que en primer lugar se realizan la configuración de los diversos parámetros del sistema, posteriormente se hace el tratamiento de las imágenes para detectar y clasificar las brevas y en caso de encontrar alguna cerca del robot, realizar las acciones pertinentes para tomarla y ubicarla en el recipiente final destinado para la misma.

4.2 Análisis cinemático

La ubicación espacial del efector final de un robot depende de la coordinación serial de todos los actuadores que lo componen. La cinemática directa se encarga de encontrar la posición y orientación del efector final partiendo de los valores angulares o distancias de sus articulaciones. La cinemática inversa trata el caso opuesto. En ninguno de los dos problemas anteriores se toma en cuenta los pesos, fuerzas y perturbaciones del robot. [1].

4.3. Análisis Dinámico del Robot

La dinámica del robot se utilizada para encontrar ecuaciones que modelen el comportamiento del brazo robótico teniendo en cuenta el peso, fuerzas, perturbación, inercias, gravedad, etc. El modelo dinámico es calculado con la formulación de Lagrange-Euler. Aunque no es un método óptimo computacionalmente por tener un orden de potencia a la cuatro en cuanto al número de operaciones, los resultados son ecuaciones fácilmente identificable que permite identificar las fuerzas y pares involucrados en el robot. La formulación Lagrangiana parte de la ecuación:

Dónde: qi son las coordenadas generalizadas (articulares), τ vector de fuerza y pares aplicados en las qi, Ι función Lagrangiana, k: energía cinética y U: energía potencial. Para considerar el efecto de la carga sobre el robot, se plantea un peso y una inercia extras, sobre el último eslabón del robot y solidarios al mismo. El algoritmo de Lagrange-Euler utiliza parámetros propios de la estructura mecánica. Por medio del CAD SolidWorks® se calculan las inercias, centro de masa y masas, de acuerdo los materiales y formas especificados [10].

Estos parámetros son tomados en cuenta para la aplicación del algoritmo recursivo de Lagrange-Euler [11] por medio del cual se generan las ecuaciones del modelado dinámico del robot, expresado de la forma:

Dónde: τ matriz de fuerzas y torques, D matriz de inercias, H vector columna de fuerzas de Coriolis y centrifugas, C vector columna de fuerzas de gravedad, Fv par debido al rozamiento viscoso y q vector de coordenadas articulares.

Por medio del modelo dinámico se realiza la selección de los motores basándose en el cálculo de los máximos pares a los que estará expuesta la estructura del robot. Para medir estos valores, se simula al robot con el modelo dinámico planteado. Se posiciona el robot en la configuración más exigente (en la cual la gravedad lo afecte en mayor medida). Se aplican las máximas velocidades y aceleraciones conservando la misma posición. La figura 24 muestra un circuito de bloques implementado en Simulink de Matlab® por medio del cual se calculan los máximos pares de los motores.

Por su torque, velocidad, economía, peso, tamaño, amplio uso en robótica, fácil adquisición y compatibilidad con el software de control Matlab®, se seleccionaron los motores Dynamixel AX-12 para las articulaciones 1, 3, 4, 5 y dos servomotores estándar PowerPro 995 con piñonería metálica para la segunda articulación (téngase en cuenta que uno de los objetivos para la plataforma era usar dos tipos diferentes de motores por motivos didácticos).

4.4. Simulación 3D

Se creó un simulador del robot construido a partir de archivos de estereolitografía correspondientes al modelo generado con el CAD, los modelo cinemático y dinámico robot, permitiendo el análisis de las trayectorias propuestas e incluso un análisis de colisiones entre eslabones. Este simulador tiene una importancia crucial en el desarrollo de las practicas debido a que los estudiantes pueden realizar todas las verificaciones correspondientes antes de poner en marcha el robot. La figura 25 muestra un ejemplo de una trayectoria seguida por el robot para pasar por 3 puntos utilizando un interpolador cubico.

5 RESULTADOS Y DISCUSIONES

Se logró el diseño de un sistema de clasificación de brevas económico que involucra temas de robótica, visión artificial, control y que puede ser utilizado para prácticas académicas e impulsar la inversión tecnológica en las áreas agrarias.

El módulo de clasificación es ligero, económico y construido con materiales de fácil adquisición. La banda transportadora puede ser acoplada a las etapas del ciclo de producción. Los sistemas de potencia funcionan correctamente soportan trabajo continuo sin recalentarse. Para el mantenimiento se revisó la facilidad de extracción del motor que impulsa la banda transportadora y el sistema de gaveta sobre el que están montadas todas las conexiones, obteniendo resultados exitosos (ver figura 26).

La precisión de los movimientos del brazo robótico evidencio el buen planteamiento de la cinemática directa e inversa del brazo. Los movimientos suaves del robot en diferentes puntos del espacio de trabajo demuestran la correcta selección de los motores incluso con carga. El efector final demostró ser apto para la manipulación de las brevas sin producirles daños, además se verifico su eficacia haciendo pruebas con otros alimentos como limones, lulos, fresas, etc.

Las pruebas del sistema de visión artificial fueron exitosas y demostrando que es un sistema rápido, eficiente y eficaz. Se realizaron múltiple pruebas y el sistema funciono correctamente en todas las pruebas. Cabe aclarar que se implemento un sistema de control de iluminación para evitar los cambios de la misma según las perturbaciones [8] (iluminación externa según la hora del día, clima, etc.). En la figura 27 se aprecia una imagen del sistema de clasificación.

CONCLUSIONES

El sistema de visión artificial desarrollado, basado en una clasificación según las componentes verde y azul del modelo del espacio de colores RGB y un sistema de iluminación controlada, permite una clasificación eficiente y eficaz de las brevas según el grado de madures de las mismas, lo que demuestra que puede ser usado para automatización a nivel industrial de este proceso.

Teniendo en cuenta que el tratamiento digital de imágenes esta formado por unos algoritmos bastante simples, se puede dar pie a la generación de un sistema visión embebido de poco poder computacional (bajo costo) y aun así que realice la tarea de forma rápida y exitosa.

La solución de problemas reales contribuye con la motivación de los estudiantes a la adquisición de conocimientos, así involucren un alto contenido de herramientas matemáticas. El campo agroempresarial esta proyectado como uno de los pilares para el progreso económico de países como Colombia. Este proyecto ilustra que es posible desarrollar sistemas de bajo costo que permitan contribuir de forma adecuada en esta área.

Referencias

  1. A. Barrientos, L. Peñin, C. Balaguer y R. Aracil; Fundamentos de robótica, Editorial Mc. Graw Hill, Madrid, 2007.
  2. M. Faúndez, Tratamiento digital de voz e imagen y aplicación a la multimedia; Marcombo Boixareu Editores, 2007.
  3. J.A. García, L. A. Vásquez; Los robots en el sector agrícola; Universidad Politécnica de Madrid, Departamento de Automática, Ingeniería Electrónica e Informática Industrial, España, 2012.
  4. Fundación Social de Holcim Colombia; Guía práctica para productores, Editorial Jotamar Ltda, Colombia, 2011.
  5. D. Blanco, S Al Ansari, C. Castejón, B López, L. E. Moreno; Manfred: robot antropomórfico de servicio fiable y seguro para operar en entornos humanos, Revista Iberoamericana de Ingeniería Mecánica, Vol. 9, No 3, pp 33-48, 2005.
  6. E. A. Malpartida; Sistema de visión artificial para el reconocimiento y manipulación de objetos utilizando un brazo robot, Pontificia universidad católica del Perú, Perú, 2003.
  7. N. Gonzáles; Sistema de visión por computadora para la medición de distancia e inclinación de obstáculos para robots móviles, Pontificia Universidad Javeriana Colombia, Volumen 9, Julio – Diciembre, 2005.
  8. R. Rodríguez, M. Sánchez. M. Rivachegua, S. Castillo; Control del brazo robótico de seis grados de libertad, mediante retroalimentación visual, para la cosecha de ají paprika, 2013.
  9. M. Sánchez, R. Vaquero; Control de robot móvil con visión: Rectificación de imágenes para agricultura de precisión, Universidad Complutense de Madrid, Facultad de informática, Madrid, 2012.
  10. C. Humberto, S. Omar, V. Hugo; Evaluación de un sistema de control para un brazo robótico de cinco grados de libertad utilizando una red can-bus, Revista de las unidades tecnológicas de Santander, Vol 1, No 5, Diciembre, 2010.
  11. G.E. Valencia; Modelamiento de la cinemática y dinámica de un robot manipulador de cuatro grados de libertad tipo SCARA para el diseño e implementación en simulación de un controlador lineal por retroalimentación tipo CTC (computer torque control), Universidad del Norte, Colombia, 2008.