Serviços Personalizados
Journal
Artigo
Indicadores
-
Citado por SciELO
-
Acessos
Links relacionados
-
Similares em SciELO
Compartilhar
Acta Nova
versão On-line ISSN 1683-0789
RevActaNova. vol.9 no.1 Cochabamba mar. 2019
Artículo Científico
Sistema de control de mano robótica replicadora de movimientos para manipular sustancias químicas
Control system for robotic hand to replicate movements to manipulate chemical substances
Natalia Leonila Quiroga Pérez & Edwin Calla Durandal
Departamento de Ciencias Exactas e Ingeniería, Universidad Católica Boliviana San Pablo.
Recibido: 7 de septiembre 2018.
Aceptado: 2 de noviembre 2018.
Resumen: El presente proyecto ayuda al desempeño en laboratorios químicos, con el fin de reducir accidentes laborales y enfermedades a corto y largo plazo. El proceso de realización del robot consta de cuatro partes fundamentales. El sistema mecánico, el sistema electrónico, el sistema de reconocimiento de movimiento de manos y el sistema de control.
El objetivo de este proyecto es realizar un sistema de control para el robot replicador de movimientos para manipular sustancias químicas. Por lo tanto, se analizó los movimientos que puede realizar una mano, concluyendo que existen cuatro tipos de sujeción fundamentales. El modelo matemático de cada tipo de agarre se determinó con ayuda del software PIPIMC y Matlab. Por lo tanto, se logró estimar las funciones de transferencia y realizar los cuatro controladores proporcionales integrales IMC (PI-IMC), a partir de la técnica de control IMC (internal model controller). Finalmente, el controlador fue incluido en el programa principal del robot. De esta manera se mejoró la precisión y tiempo de respuesta del robot.
Palabras clave: Robot, mano, sistema de control, controlador, replicar, PI-IMC.
Abstract: This project helps performance in chemical laboratories, in order to reduce work accidents and diseases in the short and long term. The process of realization of the robot consists of four fundamental parts. The mechanical system, the electrical system, the hand movement recognition system and the control system.
The objective of this project is to make a control system for the robot replicator of movements to manipulate chemicals. Therefore, we analyzed the movements that can be made by a hand, concluding that there are four fundamental types of subjection. The mathematical model of each type of equipment was determined with the help of the PIPIMC and Matlab software. Therefore, the transfer functions are calculated and perform the four proportional - integral IMC controllers (PI-IMC), from the IMC control technique (internal model controller). Finally, the controller was included in the robot's main program. This improved the accuracy and response time of the robot.
Key words: Robot, hand, control system, controller, replicate, PI-IMC.
1 Introducción
La ingeniería se encarga de entender y controlar los materiales y fuerzas de la naturaleza en beneficio de la humanidad. Es por eso que los ingenieros se preocupan de comprender y controlar segmentos de su entorno más comúnmente llamados sistemas de control, con el fin de proporcionar productos económicos y útiles para la sociedad. El control efectivo de los sistemas requiere entendimiento y modelamiento, se deben considerar paralelamente el control de sistemas conocidos, como los sistemas robóticos como base teórica (BISHOP & DORF, 2008).
Desde hace algunos años, los robots son utilizados para realizar trabajos especialmente peligrosos, moverse por zonas inhóspitas, contacto con ambientes nocivos y peligrosos para seres humanos (CONSEJO DE SEGURIDAD NUCLEAR, 2014). Un ejemplo claro son los manipuladores robóticos capaces de realizar gran variedad de tareas a distintas velocidades y precisiones, en muchos casos superan a los operadores humanos. Son usados en procesos de fabricación como la soldadura por puntos o administración de fármacos, para realizar las tareas con Habilidad y precisión (FADALI, 2009).
Según la asociación mundial de robótica, un robot industrial es un manipulador reprogramable multifuncional diseñado para mover materiales, partes, herramientas o dispositivos especiales (ALVAREZ, 1999). Los productos químicos poseen un riesgo potencial para la salud, por fugas o derrames, ya sea por una situación accidental en las plantas de procesamiento o por errores humanos (MARCO DE RESPUESTA A EMERGENCIAS, 2013). Se estima que durante 1998 y 2007, cerca de 3 200 accidentes tecnológicos afectaron a dos millones de personas, con un aproximado de 100 000 pérdidas humanas (WORLD HEALTH ORGANIZATION, 2009).
En el presente trabajo se propone un sistema de control de mano robótica replicadora de movimientos para manipular sustancias químicas, entre otros elementos electrónicos y mecánicos para su funcionamiento, además de realizar la descripción del software y hardware de apoyo para el funcionamiento.
2 Identificación del Problema
En Bolivia según el ministerio de trabajo, empleo y previsión social con datos hasta el 30 de junio de 2012, se tiene que 7 384 personas en promedio sufrieron accidentes laborales entre los años 2009 y 2012. Existen muy pocos datos acerca de accidentes con productos químicos en el país, por lo tanto, de acuerdo con el Ministerio de Ambiente y Desarrollo Sostenible de Colombia, el año 2009, 19 723 personas sufrieron de alguna clase de intoxicación por sustancias químicas. Un total de 4 578 personas tuvieron una emergencia relacionada con tóxicos.
En el país, la industria química es muy limitada y no se cuenta con programas para hacer frente a los accidentes que podrían ocurrir en exposición con sustancias químicas. Por ello se considera importante realizar diferentes acciones como nuevos equipos de manipuleo (NACIONES UNIDAS PARA LA FORMACIÓN PROFESIONAL E INVESTIGACIÓN, 2008).
3 Objetivo
El objetivo de la investigación es implementar un sistema de control para un robot replicador manipulador de sustancias químicas comandado por un sensor de visión y sensores resistivos de fuerza. Debido a que diariamente se manipulan gran variedad de sustancias peligrosas en laboratorios, durante esta manipulación ocurren accidentes y la exposición puede causar daños a corto y largo plazo. Los elementos más peligrosos son los explosivos o inflamables, ácidos y peróxidos, como ser el ácido nítrico, ácido fluorhídrico, ácido tricloroacético, ácido clorhídrico, peróxido de hidrógeno, entre otros.
El prototipo ayuda a evitar el contacto directo con sustancias tóxicas, evitando accidentes y enfermedades a corto y largo plazo. Por otro lado, el precio de un robot con estas características asciende a los miles de dólares, el diseño y la tecnología a ser usada en el presente proyecto, permite reducir el costo haciéndolo significativamente más económica y accesible, sin perder la fiabilidad o eficiencia del mismo.
4 Sustento teórico
4.1 Sustancias químicas y enfermedades
Existe una gran variedad de sustancias químicas, cada una tiene propiedades y composiciones diferentes (PATNAIK, 2007). Las sustancias peligrosas son elementos los cuales al ser liberados son capaces de afectar a la salud pública o al medio ambiente. Esta peligrosidad se debe a alguna propiedad corrosiva, reactiva, explosiva, tóxica o inflamable. (YARTO, IZE, & GAVILÁN, 2003).
Los tóxicos pueden dañar uno o más órganos específicos del cuerpo, que incluyen el hígado, los riñones, las vías respiratorias, el sistema inmunitario, la piel, el sistema nervioso, los ojos, el sistema reproductor y los sistemas cardiovasculares (PATNAIK, 2007). Un carcinógeno es una sustancia capaz de causar cáncer en mamíferos. Los productos químicos, la radiación y ciertos virus son agentes causantes de cáncer. Las rutas de exposición, la cantidad de dosis, la absorción y la distribución del producto químico dentro del cuerpo (PATNAIK, 2007).
4.2 Identificación de sistemas
En un proceso de control, un sistema se denota como un objeto o una colección de objetos, que tiene un objetivo y cuyas propiedades son estudiadas. En la Figura 1: se muestran los principales elementos que componen un sistema de control. Donde u(.) es considerada la entrada del sistema, h(.) es el sistema e y(.) es la salida (RODRIGUES & DOS SANTOS, 2004).
Para la identificación del sistema h(.), es necesario conocer la entrada u(.) y la salida y(.), de modo que y'(.) tienda a y(.). Donde y(.) es la salida real del sistema o la leída e y'(.) es la salida estimada (RODRIGUES & DOS SANTOS, 2004).
4.3 Modelo matemático de un sistema
Los modelos matemáticos de los sistemas físicos son fundamentales en el diseño y análisis de los sistemas de control. El comportamiento dinámico generalmente se describe mediante ecuaciones diferenciales ordinarias ya sea para sistemas mecánicos, eléctricos, hidráulicos, etc. debido a que los sistemas físicos no son lineales, se realizan aproximaciones mediante la transformada de Laplace. Posteriormente, se obtiene la relación entre la entrada y la salida en forma de función de transferencia (BISHOP &DORF, 2008).
Se entiende por modelaje e identificación a la determinación del modelo matemático de un sistema representado por sus aspectos esenciales de forma que se enfoque a una utilización en particular. Se divide en los siguientes subprocesos (RODRIGUES & DOS SANTOS, 2004).
Análisis físico-matemático: se basa en las leyes físicas que caracterizan un sistema en particular.
Análisis experimental: se basan en las medidas y observaciones del sistema.
Estos subprocesos facilitan la obtención de modelos matemáticos de un sistema. El propósito de los modelos matemáticos son en particular, la previsión de estados futuros, análisis y diseño del sistema de control para proporcionar algoritmos de control adaptativo y predictivo, supervisión para analizar las características operacionales del sistema y optimización de los sistemas (RODRIGUES & DOS SANTOS, 2004).
4.4 Identificación experimental por computadora
El modo de identificación del modelo tipo off-line, recolecta una cierta cantidad de datos de entrada y salida del sistema, que están almacenados. Después de la recolección, estas medidas son procesadas para estimar los parámetros del modelo. Por otro lado, la identificación on-line, no almacena ningún dato del proceso, un algoritmo de estimación recursivo es utilizado para ajustar los parámetros en cada periodo de muestreo, el tiempo de procesamiento del algoritmo necesario para ajustar el modelo está en función al periodo de muestreo (RODRIGUES & DOS SANTOS, 2004).
4.5 Modelo de un proceso de primer orden
Un modelo paramétrico de dinámica de un proceso común está caracterizado por la función de transferencia mostrada en la ecuación (1). Donde podemos identificar a K como la ganancia, τ es la constante de tiempo y θ es el atraso (RODRIGUES & DOS SANTOS, 2004).
La respuesta de primer grado de un modelo matemático está representada por la ecuación (2). Con esta base en la respuesta temporal es posible dimensionar puntos para la aplicación de diferentes métodos de estimación. Los métodos más usados para determinar los parámetros de la ecuación (1), son Ziegler Nichols y Hagglund (RODRIGUES & DOS SANTOS, 2004).
4.6 Los métodos de PIPIMC
PIPIMC es una herramienta computacional, la cual sirve para la enseñanza de la identificación del modelo FOPDT (First-Order Plus Dead-Time) y proyectar el controlador PI-IMC (Proportional Integral -Internal Model Controller). PIPIMC utiliza distintos métodos para hallar los valores de K, τ y θ de la ecuación (1), como ser: Ziegler-Nichols, Hagglund, Smith-Corripio, Sundaresand-Krishnawamy y el método de áreas o Nishikawa (ARAÚJO y otros, 2015).
Para poder la herramienta PIPIMC es necesario que el sistema tenga las siguientes características: ser estable y convergente en estado estacionario (ARAÚJO y otros, 2015). Los valores del MVI (Model Validation Index) y del MCI (Model Caracterization Index), determinan: la consistencia del sistema y la característica del modelo de proceso y se calculan mediante las ecuaciones (3) y (4). Donde Y(t) es el valor real del vector de salida, Ys(t) es el valor simulado del vector de salida. Se debe considerar un valor de MVI > 0,9 para demostrar un sistema consistente. Por otro lado, para el MCI se divide en: 0 ≤ MCI ≤ 0,2 para lag-dominated dynamic, 0,2 < MCI < 0,7 para balanced y por último 0 ,7 ≤ MCI ≤ 1 para delay-dominated (ARAÚJO y otros, 2015).
En la Tabla 1, se muestran las reglas de sintonización PI-IMC para los modelos simplificados que utilizan la función de transferencia FOPDT (ARAÚJO y otros, 2015).
Para ajustar la constante de tiempo λ se procede de la siguiente manera: λ > 0,1τ o 0,8θ en caso de contar con la respuesta de bucle con 10% a 15% de sobre-impulso, λ > 0,5τ o 4θ en caso de contar con la respuesta de bucle sin sobre-impulso, según el Chien y Fruehauf θ < λ < τ y según Skogestad λ = θ.
4.7 Controladores
La mayoría de los procesos encontrados en la práctica tienen carácter estocástico. Los cambios de parámetros son causados por cambios en el proceso, en la naturaleza de los materiales de entrada, combustible, desgaste, etc. es por eso que la técnica de autoajuste de los parámetros de control es indispensable (BOBAL, BOHM, FESSL, & MACHACEK, 2005).
Alrededor del 90% de los controladores actualmente utilizados en la industria son controladores de tipo PID porque, siempre que estén bien ajustados, muestran resultados de control muy buenos, son fáciles de usar porque son simples, generalmente bien conocidos y fáciles de implementar (BOBAL, BOHM, FESSL, & MACHACEK, 2005).
4.7.1 Controladores PID
Los miembros de la familia de controladores PID, incluyen tres acciones: proporcional (P), integral (I) y derivativo (D). Los controladores más usados con esta denominación son: P, I, PI, PD y PID. A continuación, se muestra la definición del PI y el PID (MAZZONE, 2002).
El PI o acción de control proporcional-integral, se define mediante la ecuación (5). Donde Ti se denomina tiempo integral y es quien ajusta la acción integral. La función de transferencia resultante se expresa en la ecuación (6) (MAZZONE, 2002).
Con un control proporcional, es necesario que exista error para tener una acción de control distinta de cero. Con acción integral, un error pequeño positivo siempre dará una acción de control creciente, y si fuera negativo será decreciente. Este razonamiento sencillo muestra que el error en régimen permanente será siempre cero. Muchos controladores industriales tienen solo acción PI. Se puede demostrar que un control PI es adecuado para todos los procesos donde la dinámica es esencialmente de primer orden. Para el PI, la ley de control discretizada es la mostrada en la ecuación (7), donde q0 y q2 son parámetros constantes calculados en la discretización (MAZZONE, 2002).
4.8 Robots manipuladores
Un robot manipulador es un brazo articulado, es un elemento programable multifuncional diseñado para mover objetos, piezas, materiales, etc. El sistema mecánico está compuesto por distintas articulaciones, las principales son el brazo y el efector terminal (OLLERO, 2001).
Para realizar tareas con precisión y fiabilidad, las posiciones y velocidades del manipulador se controlan digitalmente. Todos los movimientos son coordinados por una computadora supervisora para lograr los resultados deseados. Los algoritmos de control se descargan de la computadora de supervisión a los microprocesadores (FADALI, 2009).
Los robots de laboratorio son robots colaborativos, o cobots y están destinados a la interacción con el ser humano. Sus funciones principales son: evitar lesiones ergonómicas y realizar trabajos de forma precisa y rápida (PESHKIN, y otros, 2001).
4.9 Cylon
Cylon es un framework JavaScript, osea una plataforma basada en JavaScript especialmente diseñado para la robótica, la computación física y el internet de las cosas. Soporta un gran número de protocolos y dispositivos, cuenta con una API sencilla desde la cual se puede manejar un hardware como Arduino, Beaglebone, entre otros (VEGA, 2016). Cylon usa el protocolo firmata para comunicarse con Arduino va través del puerto serie. Hace uso de Node.js para ejecutar órdenes a través del puerto serie. Establece una comunicación maestro-esclavo, donde Arduino hace todo aquello que el PC le manda (VEGA, 2016).
4.10 Arduino
Arduino es una herramienta que permite controlar el mundo físico desarrollado por medio de programas en un computador. Consta de una placa que incluye un microcontrolador y un entorno de desarrollo de software que permite comunicación con el computador y otros programas de interés. Arduino tiene gran variedad de productos y modelos que pueden ser utilizados de acuerdo a la magnitud de cada proyecto a ser realizado. En general cada placa Arduino tiene las especificaciones técnicas generales para su uso mostradas en la Tabla 2 (ARDUINO, 2017).
4.11 Sensor resistivo de fuerza (FSR)
El sensor resistivo de fuerza FSR (Force Sensitive Resistor) es una película de polímero (PTF) el cual reacciona resistivamente frente a la fuerza aplicada sobre la superficie activa, la resistencia es inversamente proporcional a la fuerza aplicada (CARRION, OCHO A, & VALVERDE, 2009).
Las características más importantes del FSR-402 según su hoja de datos son las siguientes:
Tamaño: 12,7 [mm] de diámetro de área activa por 0,05 [mm] de espesor.
Rango de resistencia: sin presión a 100 [KΩ] y 200 [Ω] a presión máxima.
Rango de fuerza: 0 a 20 lb. (0 a 100 [Newtons]).
Fuente de alimentación: Utilizar menos de 1 [mA] de corriente.
La forma de medir un sensor resistivo es conectar un extremo a power y el otro a una resistencia desplegable a tierra. Luego, el punto entre la resistencia fija desplegable y el la resistencia FSR variable debe estar conectada a la entrada analógica de un microcontrolador (LADYADA, 2013).
4.12 Sensor Leap Motion
Leap Motion es un sensor equipado con dos cámaras monocromáticas IR y tres leds infrarrojos. Es una herramienta tecnológica enfocada al control de movimientos, es precisa y robusta (LEAP MOTION, 2017).
La función principal de Leap Motion es detectar como se mueven naturalmente las manos, permite apuntar, agitar, alcanzar, agarrar, recoger cosas y moverlas. Es ligero y pequeño ya que mide solo 1,27 x 3,05 x 7,62 [cm]. Su campo de visión es de 150° y todo un eje para la profundidad. Para usarlo es necesario únicamente conectarlo a una computadora y descargar el software Orion. El sensor es capaz de rastrear movimientos a una velocidad de más de 200 fotogramas por segundo (LEAP MOTION, 2017).
4.13 Servomotores
El servomotor es un actuador eléctrico que consta de un motor eléctrico al que se puede controlar la velocidad y la posición de eje giratorio por lo general de 0 a 180 grados, aunque algunos servomotores giran 360 grados. El servomotor se alimenta con 4 a 8 [V] dependiendo del modelo. Es controlado por pulsos eléctricos durante un tiempo determinado. El periodo del pulso es constante y tiene un valor de 20 [ms]. Para regular la posición del servomotor la parte del pulso alto debe durar entre 1 a 2 [ms]. Los pulsos deben ser generados por un microcontrolador o con un circuito analógico con un timer (DIGEST, 2017).
4.14 Estructura del robot InMoov
La estructura del robot InMoov está impresa originalmente en plástico ABS (LANGEVIN, 2012). El plástico PLA es otro material el cual también se usa para la impresión 3D. PLA es un polímero (ácido poliláctico) que al contrario del ABS es biodegradable ya que es fabricado a base de almidón de maíz. Es un material no tóxico generalmente utilizado en la fabricación de objetos que entran en contacto con alimentos. Es más fácil de manipular que el ABS por su elevada velocidad de enfriamiento y solidificación (SANCHEZ, 2016).
5 Metodología
Las siguientes actividades a realizar, son fundamentales para la conclusión satisfactoria del proyecto. Primeramente, establecer los alcances y limitaciones tanto de la estructura y del sistema de control. Realizar la selección de la estructura y los materiales de construcción. Realizar la impresión 3D y correspondiente armado del robot. Diseñar e implementar un sistema de reconocimiento de movimiento de las manos y procesar las señales leídas para interpretar la información. Diseñar la parte electrónica del dispositivo, determinar los materiales, determinar las conexiones, enlaces, empalmes, soldaduras, etc. Proyectar el sistema de control del robot en función a las señales de presión y analizar el comportamiento del robot. Integrar los sistemas eléctrico, mecánico, de reconocimiento de las manos y de control. Realizar pruebas y ajustes del sistema.
6 Resultados
6.1 Sistema mecánico
Se utilizó la impresora Witbox 2, para realizar la impresión de la estructura con una calidad de impresión de 0,2 [mm], el tipo de relleno (sólido), en material PLA, el cual tiene la característica de ser flexible, biodegradable, resistente y tiene buena solidificación. Una vez impresas las piezas se lijan y pulen, de esta manera el acabo de las piezas es más uniforme, se eliminan asperezas que pueden causar fricción durante el movimiento, en la Figura 2:, se muestra la mano armada.
La estructura seleccionada es el brazo del robot InMoov. Debido a que el movimiento de la estructura funciona a base de poleas es necesario seleccionar hilos adecuados. Los hilos de pesca ofrecen gran resistencia, son utilizados con más de una aplicación debido a sus características. El monofilamento, tiene características favorables para el proyecto como gran resistencia a los enredos y resistencia a la tensión. La poliamida seleccionada es de 1 [mm] de diámetro, este hilo resiste hasta 45 [Kg].
6.1.1 Análisis de esfuerzos de la estructura
El fabricante del robot InMoov garantiza que el brazo del mismo resiste hasta un peso de 3 [Kg]. Tomando en cuenta esta referencia, se realizó el análisis de esfuerzos de la estructura para la presente aplicación. En la Figura 3:, se muestra el robot ensamblado en el software Fusion 360, el cual está desarrollado por Autodesk. Por motivos de disponibilidad, se usó plástico ABS con calidad de 0,2 [mm].
Posteriormente, se procedió a realizar dos análisis de esfuerzos; el primero aplicando una fuerza puntual en la palma de 100[N], el segundo análisis aplicando fuerzas puntuales de 100[N] a cada uno de los dedos, se selecciona este valor debido a que es la fuerza máxima sensada por el FSR, y por tanto la fuerza límite de agarre. Se observó el resultado de la Figura 4:(a), Figura 4: (b) y Figura 4: (c). El software consta de una escala propia, la cual se muestra en la Figura 4: (c). Es por este motivo que recomienda tener un factor de seguridad mínimo de 3, ya que con eso se garantiza la durabilidad de las piezas. En la primera prueba, no existe deformidad en la estructura y no se esperan puntos de quiebre, se determina el factor de seguridad de 5,248. Por otro lado, en la segunda prueba, el factor de seguridad reduce a 2,287. El software indica que con esta fuerza la estructura puede sufrir deformaciones pero no rupturas a menos que se excedan las fuerzas por factores externos.
6.2 Sistema electrónico
6.2.1 Simulaciones
El modelo de sensor de presión seleccionado fue el FSR-402, debido a que cuenta con las mejores prestaciones. El microcontrolador con mejores características es Arduino, por la cantidad de puertos PWM y el lenguaje de programación. Existe una gran gama de microcontroladores Arduino, el más adecuado según las características proporcionadas por el fabricante, es el modelo Arduino UNO.
La carencia de precisión en el los movimientos podría causar accidentes de gravedad tanto para el usuario como para el robot. El servomotor modelo Mg 996R, es el que tiene mejores prestaciones para cumplir con los requerimientos del proyecto debido a que su velocidad de reacción y el material de los engranajes garantizan buen funcionamiento. En la Tabla 3, se muestran las características del servomotor seleccionado.
Una vez seleccionados los componentes electrónicos, es necesario determinar la interacción entre ellos. En la Figura 5:, se muestra la conexión entre los FSR, Arduino y los servomotores. Esta simulación se realizó en el software PROTEUS.
El diagrama de conexiones se muestra en la Figura 6:, donde el sensor Leap Motion, cuenta con un cable de conexión USB para conectarlo directamente con la computadora. Para mover los actuadores es necesario tener una interfaz entre la computadora y el sensor, por esta razón se cuenta con la placa Arduino, la cual estará directamente conectada con la computadora para recibir la información procesada mediante el puerto serial. Debido a que esta placa no es capaz de proporcionar corriente eléctrica a seis servomotores de forma simultánea, se cuenta con una fuente de alimentación externa a la que están conectados todos los motores. Los FSRs, al ser sensores resistivos no tienen un consumo de corriente significante por lo que será conectado directamente al Arduino.
Por otro lado, los FSRs tanto del usuario como del robot están posicionados en el pulgar de ambos elementos tal como se muestra en la Figura 7:. El FSRu, está fijado sobre un guante de tela común con el fin de mantenerlo en una posición estable mientras se realizan tareas de sujeción o movimientos, además de proteger la parte plástica del sensor y los cables conectados al sensor. De la misma manera se fijaron los cables del sensor al guante mediante hilos para que este no se mueva durante la actividad.
6.2.2 Cálculo de los límites de funcionamiento del sistema
Para calcular los límites de sistema, se realizaron pruebas midiendo la variación del voltaje de alimentación de los motores. Estas mediciones se realizaron con el sistema sin movimiento, con movimiento de un solo grado de libertad y con presión en 2, 3, 4 y 5 dedos. Posteriormente se realizaron cálculos de torque, tiempo de reacción, momento y velocidad angular, de los motores.
Los datos del servomotor MG996R se describen en la Tabla 4. Estos valores son proporcionados por el fabricante. Respecto a esta tabla se realizó la aproximación del torque (T) ecuación (8) y tiempo de reacción (TR), ecuación (9), donde V es el voltaje de alimentación. Posteriormente se transformó las unidades del torque a [Nm] y se calculó la velocidad angular (ω) respecto al tiempo de reacción del motor, según la ecuación (10). Los resultados de los cálculos, fueron almacenados en la Tabla 5.
Posteriormente, se prosigue a calcular la potencia de los servomotores mediante la ecuación (11). Y la corriente consumida por cada servomotor mediante la ecuación (12).
La corriente de un servomotor sin carga es aproximadamente 0,9 [A]. Por lo tanto, la corriente total será la cantidad de motores con carga por la corriente con carga más la cantidad de motores sin carga por la corriente sin carga. Los parámetros calculados se muestran en la Tabla 6.
La corriente máxima alcanzada por los servomotores es 1,1047 [A]. Lo cual es menor a 2,5 [A], límite establecido por el fabricante. Por otro lado, es importante hallar el torque máximo que puede ejercer el servomotor a 2,5 [A]. En la ecuación (13) se realiza este cálculo.
El valor del torque calculado es 22,359 [Kgf*cm]. Este torque debe ser menor al valor del torque de ruptura de los hilos. Para calcular el valor, se tomó en cuenta la masa máxima que soporta el hilo de pesca, este es 45 Kg. Por lo tanto el peso máximo soportado por el hilo se da por medio de la ecuación (14). Donde 9,77 [m/s2] es la el valor de la aceleración de la gravedad de Cochabamba.
El valor del peso es 439,65 [N]. Para calcular el torque máximo, es necesario medir la distancia desde el eje del servomotor hasta el punto del contacto del hilo. Este valor es 1,35 [cm]. Por lo tanto, el torque máximo que se puede ejercer al hilo es 5,94 [Nm], el cual es calculado mediante la ecuación (15).
Realizando la conversión a kilogramos fuerza, se obtiene 60,5232 [Kgf*cm]. El cual es menor al torque máximo que ejercen los motores, por esta razón se tiene un margen de seguridad de 38,164 [Kgf*cm].
6.3 Sistema de reconocimiento de las manos
6.3.1 Plataforma Orion
Orion es el programa de instalación de Leap Motion, gracias a esta plataforma es posible interpretar los datos obtenidos por el sensor. En el presente proyecto se trabaja con la versión Orion 3.2. Para entender los datos obtenidos mediante la API (Application Programming Interface) del sensor, es necesario tomar en cuenta el sistema de coordenadas de la Figura 8:.
La API, cuenta con una estructura de clases bien definida, la cual se muestra en la Figura 9:. Los objetos son frame, hand, pointable, arm, finger y bone. El objeto frame es esencialmente la raíz del modelo de datos y proporciona acceso a todas las entidades rastreadas por el sensor. El objeto hand describe la posición y la orientación de una mano, rastrea su movimiento y contiene listas de los dedos asociados con esa mano. El objeto pointable define las características básicas comunes a los dedos. El objeto finger se extiende a través de pointable con información adicional específica para cada dedo. El objeto bone y arm no son usados en esta aplicación.
6.3.2 Estándar Firmata
Dentro de la librería Firmata, se encuentra el protocolo Firmata genérico para la comunicación con microcontroladores desde software instalado en un ordenador. Este protocolo se puede implementar en cualquier arquitectura de microcontroladores, así como en cualquier paquete de software. El objetivo de Firmata es permitir controlar completamente Arduino desde software instalado en un ordenador, sin escribir una sola línea de código de Arduino.
6.3.3 Diagrama de flujo del sistema
Para realizar la programación del sistema es necesario realizar el diagrama de flujo previo donde se especifican todas las funciones e instrucciones necesarias para el funcionamiento del robot. En la Figura 10: se presenta el diagrama o línea principal del sistema.
El ciclo de trabajo de la mano consta de un bucle infinito que termina cuando el usuario detiene el sistema, en la Figura 11:, se describe este algoritmo con cada uno de los pasos respectivos.
El movimiento de cada dedo se describe en el diagrama de la Figura 12:, este proceso se realiza para cada uno de los cinco dedos. En el bloque 3, la distancia medida (entre la punta del dedo y el centro de la palma) se reemplaza en la ecuación respectiva de cada uno de los dedos para hallar el equivalente en grados, para el dedo pulgar ecuación (16), dedo índice ecuación (17), dedo medio ecuación (18), dedo anular ecuación (19) y dedo meñique ecuación (20).
Las ecuaciones (16), (17), (18), (19) y (20), tienen la siguiente forma: a = (d - m) * f. Dónde:
a es el ángulo que debe girar el servomotor para replicar el movimiento de cada dedo.
d es la distancia actual entre la punta del dedo y el centro de la palma.
m es la distancia mínima entre la punta del dedo y el centro de la palma.
M es la distancia máxima entre la punta del dedo y el centro de la palma.
f es el factor de proporción, el cual es equivalente a M/m.
Los valores a, d, m, M y f son variables que dependen del tamaño de la mano del usuario. Por esta razón las siguientes ecuaciones deben ser calculadas para cada persona que use el robot.
El movimiento de la muñeca se describe en el diagrama de la Figura 13:. En el bloque cuatro se calcula el ángulo entre el vector de referencia u = (u1; u2, u3) y el vector normal a la palma v = (v1, v2, v3), según la ecuación (21), la cual da como resultado el ángulo entre dos vectores en el espacio. Posteriormente, en el bloque cinco se realiza la conversión de radianes a grados.
6.4 Sistema de control
6.4.1 Diagrama de proceso
El primer paso de este diagrama de la Figura 14:, es la obtención de datos del sensor Leap Motion y del FSRu, posteriormente se procesan estos datos y se realizan los cálculos respectivos. Estos datos son procesados por el controlador el cual se encarga de modificar la posición de los actuadores, esta diferencia en la posición crea movimiento en el robot. Por último se realiza la lectura del FSRr y se retroalimenta el sistema hasta que se llega a la presión especificada por el usuario.
Por otro lado, este sistema MIMO se representará por cuatro sistemas SISO en paralelo, mediante cuatro modelos matemáticos y cuatro controladores, los cuales dependen de la cantidad de dedos que están en contacto con el objeto que se sujeta en un determinado tiempo. El diagrama de este proceso se muestra en la Figura 15:.
6.4.2 Cálculo del setpoint
Para el uso de PIPIMC es necesario determinar el valor del setpoint. Para el robot, este valor está dado por el FSRu al ser la presión de referencia. Para cada objeto que se sostiene este valor cambia en un rango de 0 a 1 000 (adimensional), lo cual representa una fuerza de presión entre 0 y 100 Newtons. Dado que esta variable cambia para cada instrumento de laboratorio, se toma en cuenta la Tabla 7, para determinar un valor promedio.
El cálculo del setpoint (Sp), se da en la ecuación (22). Por lo tanto el valor de Sp es 426,695. Es importante tomar en cuenta que este valor está calculado mediante la columna del valor del sensor y no así por la columna en Newtons de la Tabla 7.
6.4.3 Pruebas con PIPIMC
Una vez calculado el setpoint, se realizaron pruebas con el robot y una frecuencia de muestreo de 0,1 [s/muestra]. Estas pruebas consisten en agarrar un objeto de laboratorio con 2, 3, 4 y 5 dedos, para ver el comportamiento del sistema en cada uno de estos casos.
El procedimiento de uso del software PIPIMC es el mismo para todos los tipos de agarre. En cada prueba se deben ajustar los valores λ y Ts, en la ventana de Tuning PI-IMC, verificando para qué valores se tienen mejor respuesta del sistema.
El proceso de modelamiento FOPDT del sistema con dos dedos, dio como resultado los valores mostrados en la Figura 16:, donde se identifica a la curva azul como la respuesta real y a la curva roja como el valor estimado. Se usó el tipo de proceso en circuito abierto, el modelo de Nishikawa debido a que está enfocado en sistemas de circuito abierto. Posteriormente se ejecutó la ventana Tuning-IMC como se muestra en la Figura 17:, donde se seleccionó el modelo de primer orden aproximado 3 de la Tabla 1.
En la Figura 17: se muestra la respuesta del sistema al escalón unitario, a un escalón de valor 3 y finalmente al escalón unitario nuevamente. Donde la señal constante negra es referencia, la señal de salida es roja y la señal de control es azul punteada.
En la Figura 18: se muestra el proceso de modelamiento FOPDT del sistema con tres dedos. Donde se identifica a la curva azul como la respuesta real y a la curva roja como el valor estimado. Esta respuesta tiene menos ruido que la respuesta con dos dedos de agarre.
En la Figura 19: se muestra la ventana Tuning-IMC del sistema con tres dedos. Donde la señal constante negra es referencia, la señal de salida es roja y la señal de control es azul punteada. Esta respuesta tiene mayor oscilación y retraso que la respuesta con dos dedos de agarre.
En la Figura 20: se muestra el proceso de modelamiento FOPDT del sistema con cuatro dedos. Donde se identifica a la curva azul como la respuesta real y a la curva roja como el valor estimado. Esta respuesta tiene un retraso considerable en comparación con los otros tipos de agarre. En la Figura 21: se muestra la ventana Tuning-IMC del sistema con cuatro dedos.
En la Figura 22: se muestra el proceso de modelamiento FOPDT del sistema con cinco dedos. Donde se identifica a la curva azul como la respuesta real y a la curva roja como el valor estimado. Esta respuesta no cuenta con retraso considerable. En la Figura 23: se muestra la ventana Tuning-IMC del sistema con cinco dedos. Donde la señal constante negra es referencia, la señal de salida es roja y la señal de control es azul punteada Se muestra que el tiempo de reacción y la oscilación tienden a cero.
Todos los parámetros estimados tanto del modelamiento FOPDT como del Tuning PI-IMC están clasificados en las Tabla 8 y 9 respectivamente, se analizaron los valores de MVI, los cuales demuestran la consistencia de los sistemas. Por otro lado, el valor de MCI identificó el tipo de modelo de cada uno de los sistemas.
Reemplazando los datos de la Tabla 8 en el modelo equivalente 3, da como resultado el modelo de primer orden de la ecuación (23), resultante para el agarre con dos dedos, la ecuación (24) es la resultante para el agarre con tres dedos, la ecuación (25) es la resultante para el agarre con cuatro dedos, la ecuación (26) es la resultante para el agarre con cinco dedos.
En la Tabla 9, se clasifican los parámetros de PI-IMC, en todos los casos se tomó una frecuencia de muestreo de 0,1 [seg/muestra], por otro lado se determinó λ para cada uno de los casos, este valor determina la robustez del sistema, mientras más inestable es la respuesta del sistema este número aumenta, como en el agarre con tres dedos, por otro lado, el valor es menor cuando el sistema no presenta retraso u oscilaciones considerables.
Según la aproximación número 3 de la Tabla 1. Se obtiene la ecuación (27).
Realizando operaciones aritméticas sobre la ecuación (27), se llega a la ecuación (28), donde se reemplazaran los valores estimados de τ, θ, K y λ, para cada uno de los casos.
Reemplazando los datos de la Tabla 24, se obtienen las siguientes ecuaciones (29) a (32), que representan la estructura del PI para agarres con 2, 3, 4 y 5 dedos.
Posteriormente, se realizó la discretización de estas ecuaciones con ayuda de Matlab. Obteniendo como resultado las ecuaciones (33) a (36).
A continuación, se reemplazan las ecuaciones en la siguiente igualdad u(k) = C2-iDedos(z) *e(k), obteniendo la ecuación genérica (37). Mediante operaciones aritméticas se llega a la ecuación (38). Finalmente, se reemplazan valores numéricos en la ecuación (38) para obtener las ecuaciones (39) a (42), las cuales tienen la misma forma que la ecuación (7). Estas ecuaciones están discretizadas, por lo tanto es posible incluirlas en el algoritmo de control.
6.5 Implementación del control
A continuación, en la Figura 24:, se muestra el desarrollo del algoritmo de control, representador por un diagrama de flujo implementado para un grado de libertad.
7 Conclusiones
El sistema es capaz de replicar los movimientos de la mano. El sistema de control mejora el funcionamiento del robot en comparación con el sistema en lazo abierto y es capaz de manipular sustancias químicas en cantidades menores a 500 mL.
El algoritmo de reconocimiento de manos es capaz de realizar 50 ciclos de trabajo por segundo, es por esta velocidad de procesamiento que tiene una reacción de 40 milisegundos de retraso, este tiempo es casi imperceptible para el ojo humano, por lo que puede considerarse tiempo real.
Los datos obtenidos mediante el sistema de reconocimiento de la mano, son modelos matemáticos de alto orden que fueron relacionados con la señal de presión, por esta razón se vio la necesidad de levantar modelos de orden reducido equivalentes de los mismos. En los cuales se determinó si eran lag-dominated, balanced o delay-dominated. Los datos fueron almacenados en vectores de 400 (equivalente a ocho segundos) para poder analizar y clasificar las señales.
El sistema MIMO se reemplazó por cuatro sistemas SISO en paralelo. Para cada sistema SISO se proyectó un controlador a partir del modelo matemático de orden reducido FOPDT obtenido del software PIPIMC, donde se identificó el sistema de primer orden con la técnica de Nishikawa, y posteriormente se proyectó el controlador con la técnica de IMC para sintonizar un PI. Dicha técnica aumenta la robustez del controlador a partir de la variable lambda.
Referencias Bibliográficas
[1] ALVAREZ, J. (1999). Técnicas de control para robots manipuladores con flexibilidad en la acticulación. Nuevo Leon: Universidad Autónoma de Nuevo Leon. [ Links ]
[2] ARDUINO. (2017). Arduino. Obtenido de Arduino: https://www.arduino.cc/
[3] BISHOP, R., & DORF, R. (2008). Modern Control Systems Eleventh edition. United States: Pearson Education International.
[4] BOBAL, V., BOHM, J., FESSL, J., & MACHACEK, J. (2005). Digital Self-tuning Controllers. República Checa: Springer. [ Links ]
[5] CARRION, L., OCHOA, D., & VALVERDE, J. (2009). Análisis del funcionamiento del sensor resistivo (FSR) con LabVIEW. Cuenca: NATIONAL INSTRUMENTS. [ Links ]
[6] CONSEJO DE SEGURIDAD NUCLEAR. (2014). Robots al rescate. Revista de seguridad nuclear y protección radiológica, 4-5. [ Links ]
[7] DIGEST, C. (13 de Octubre de 2017). CIRCUIT DIGEST. Obtenido de https://circuitdigest.com/article/servo-motor-basics [ Links ]
[8] FADALI, S. (2009). Digital control engineering. Burlington: Elsevier Inc. [ Links ]
[9] LADYADA. (2013). Force Sensitive Resistor (FSR). Adafruit learning system.
[10] LANGEVIN, G. (Enero de 2012). iinmoov. Obtenido de inmoov: http://inmoov.fr/
[11] LEAP MOTION. (2017). Leap Motion Datasheet. LEAP MOTION, INC. [ Links ]
[12] MARCO DE RESPUESTA A EMERGENCIAS. (2013). Accidentes químicos. Washington, DC: World Health Organization.
[13] MAZZONE, V. (2002). Controladores PID. Quilmes: Universidad Nacional de Quilmes. [ Links ]
[14] NACIONES UNIDAS PARA LA FORMACIÓN PROFECIONAL E INVESTIGACIÓN. (2008). Perfil Nacional de Sustancias Químicas en Bolivia. La Paz: SAICM. [ Links ]
[15] OLLERO, A. (2001). Robótica, manipuladores y robots moviles. Barcelona: Marcombo S.A. [ Links ]
[16] PATNAIK, P. (2007). A comprehensive guide to the hazardous properties of chemical substances. New Jersey: John Wiley & Sons, Inc. [ Links ]
[17] PESHKIN, M., COLGATE, E., WANNASUPHOPRASIT, W., MOORE, C., GILLESPIE, B., & AKELLA, P. (2001). Cobot Architecture. IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, 377-389. [ Links ]
[18] RODRIGUES, A., & DOS SANTOS, L. (2004). Indentificación de sistemas dinámicos lineales. Florianópolis: Universidad Federal de Santa Catarina. [ Links ]
[19] SANCHEZ, S. (15 de Julio de 2016). Plasticos de la impresión 3D. Obtenido de 3D natives: https://www.3dnatives.com/es/plasticos-impresion-3d-22072015/
[20] VEGA, R. (15 de Septiembre de 2016). Cylon.js. Obtenido de https://ricveal.com/blog/cylon-js/ [ Links ]
[21] WORLD HEALTH ORGANIZATION. (2009). Manual for the public health management of chemical incidents. Geneva: World Health Organization. [ Links ]
[22] YARTO, M., IZE, I., & GAVILÁN, A. (2003). "El universo de las sustancias químicas peligrosas y su regulación para un manejo adecuado". Gaceta ecológica, 57-66. [ Links ]