^
INAOE

Actas del Congreso Nacional de
Tecnología Aplicada a Ciencias
de la Salud

TecnyMed

IMPLEMENTACIÓN DE UN BRAZO ROBÓTICO DE 4 GRADOS DE LIBERTAD PARA VALIDAR UNA INTERFAZ CEREBRO-COMPUTADORA

Daniel Ríos Barrientosa, M. Monserrat Morín Castilloa, J.E. Moisés Gutiérrez Ariasa, Carlos A. Hernández Gracidasb, Isabel Stange Espínolac
aFacultad de Ciencias de la Electrónica, Benemérita Universidad Autónoma de Puebla, daniel.rios@alumno.buap.mx, ,
amaria.morin@correo.buap.mx, jose.gutierrez@correo.buap.mx
bCONACYT - Facultad de Ciencias Físico Matemáticas, Benemérita Universidad Autónoma de Puebla,
cahernandezgr@conacyt.mx,
cFacultad de Psicología, Benemérita Universidad Autónoma de Puebla,,
isabel.stange@correo.buap.mx

Actas del Congreso Nacional de Tecnología Aplicada a Ciencias de la Salud Vol. 3, 2021


RESUMEN

En este trabajo se presenta el desarrollo de uno de los bloques que conforman un sistema de interfaz cerebro-computadora, a saber, bloque 1: Registro de señales eléctricas cerebrales, bloque 2: Interfaz cerebro-computadora, bloque 3: Brazo robótico. En este trabajo nos enfocaremos en la implementación de un brazo robótico de 4 grados de libertad, con sus respectivos circuitos de alimentación y control; el brazo realiza una secuencia de movimientos programados en lenguaje Arduino, cuya secuencia permite visualizar cada uno de sus movimientos posibles. La importancia del desarrollo de este sistema se debe a que las interfaces cerebro-computadora sirven como un intermediario para la comunicación entre el cerebro y un dispositivo de interés; esto puede facilitar el uso de diversos dispositivos a personas que tienen alguna dificultad en utilizar sus músculos como normalmente lo hacen los humanos.

Palabras clave: Interfaz cerebro-computadora, Brazo robótico, Señales-eléctricas

ABSTRACT

In this work, the development of one of the blocks that make up a brain-computer interface system is presented, namely block 1: Brain electrical signal recording, block 2: Brain-computer interface, block 3: Robotic arm. In this work we will focus on the implementation of a robotic arm with 4 degrees of freedom, with its respective power and control circuits; the arm performs a sequence of movements programmed in Arduino language, the sequence of which allows each of its possible movements to be visualized. The importance of the development of this system is due to the fact that brain-computer interfaces serve as an intermediary for communication between the brain and a device of interest; this can facilitate the use of various devices for people who have some difficulty using their muscles as humans normally do.

Keywords: Brain-computer interface, Robotic arm, Electrical-signal

1. INTRODUCCIÓN

Una interfaz cerebro-computadora (BCI, por sus siglas en inglés) es un sistema que le permite a un individuo una comunicación con el mundo externo a partir de la actividad eléctrica cerebral sin la ayuda de los nervios periféricos o de la actividad motora, esta actividad cerebral puede ser medida a través del estudio de electroencefalograma (EEG). Una vez adquiridas las señales provenientes de la actividad cerebral, dentro de la BCI esta información se procesa, interpreta y se asocia a intenciones voluntarias e involuntarias del sujeto para ser utilizadas como señales de mando para el control de brazos robóticos, sillas de ruedas, prótesis, comunicadores, entre otras aplicaciones importantes [1, 2, 3].

Ante la problemática de adaptabilidad de los usuarios con los sistemas BCI se plantea este proyecto; el cual tiene la finalidad de mejorar la interacción que existe entre el usuario y la interfaz. El algoritmo de control que se implementará posteriormente, utilizará la técnica de aprendizaje por refuerzo; los sistemas que la utilizan se caracterizan por tener un comportamiento inicial de prueba y error, de los cuales por cada acierto que tenga el sistema recibe una recompensa que en términos de programación se refleja a través del aumento de un contador establecido y en caso de error con una penalización, así la interfaz interpretará que la acción realizada fue errónea y necesitará probar con una acción diferente de las que posee en su base de datos, previamente definidas por el desarrollador.

Por las características de la técnica de aprendizaje, se usará una estructura de control en lazo cerrado, la cual permite tener una retroalimentación de la posición del brazo y evaluar el desempeño del sistema; el brazo implementado en este proyecto cuenta con 4 grados de libertad [4]. Adicionalmente se diseñaron e implementaron 2 sistemas de detección de posición empleando sensores de luz infrarroja, cuyo objetivo es detectar si el brazo se encuentra en la posición asociada al sensor para mandar una señal (alto/bajo). Con ello la interfaz interpreta si la acción realizada ante la entrada recibida es adecuada y así pueda asociar esa información para situaciones futuras y tener un aprendizaje automático por parte de la BCI.

2. TEORÍA

Los brazos robóticos son dispositivos programables compuestos de varias piezas que interconectadas forman una estructura similar a las de uno real, éstos son capaces de realizar movimientos de traslación y rotación, con los cuales pueden emular trayectorias de movimiento de un brazo humano. Una estructura de este tipo generalmente presenta en el extremo final una herramienta de interés para darle una funcionalidad específica al mismo y este pueda realizar una tarea de forma repetitiva sin bajar su rendimiento en cuanto a precisión y velocidad; siendo así un dispositivo útil en el sector de la industria, automatización de procesos y salud; uno de los más utilizados es el brazo robótico tipo Aura que cuenta con 6 grados de libertad y que por la combinación de movimientos que puede realizar lo hace bastante funcional; el brazo implementado en este proyecto está inspirado en él, que a diferencia de este último, cuenta con 4 grados de libertad (rotacionales) que permiten una buena funcionalidad.

3. DESARROLLO

Se realizó la impresión en 3D de las piezas que conformarían la estructura del brazo robótico, posteriormente se ensamblaron con sus respectivos servomotores SG90 los cuales se muestran en la Figura 1, además en la Figura 2 se muestran las características de este último.


Figura 1. Servomotor SG90

Figura 2. Caracteristicas del servomotor SG90


En la Figura 3 se muestra el circuito implementado para alimentar los servomotores y establecer los pines a utilizar del Arduino, para realizar este circuito se utilizaron: 1 Arduino Uno, 4 servomotores SG90, una fuente de alimentación de 5 volts, además en el circuito se observan 2 bloques referentes a los sensores los cuales contienen más elementos y conexiones, se muestran a detalle en la Figura 4.


Figura 3. Circuito implementado para el funcionamiento del brazo robótico


Los bloques correspondientes a “Sensor 1” y “Sensor 2” de la Figura 3 son los sistemas de detección de posición implementados, para ello se realizó el diseño y la implementación del circuito que se muestra en la Figura 4; este último detecta si el brazo se encuentra en las posiciones de interés y genera la señal de retroalimentación al sistema de la interfaz.

El funcionamiento del circuito consiste en un emisor de luz infrarroja y un receptor de luz infrarroja; a saber en la parte izquierda del circuito se tiene un led de luz infrarroja (imperceptible por el ojo humano) y del lado derecho un fototransistor el cual es un dispositivo cuyo funcionamiento es parecido al de un interruptor, inicialmente el fototransistor funciona como un circuito abierto, esto es, no permite el flujo de la corriente y por lo tanto no se estimula la base del transistor 2N222 y no se envía señal en alto al Arduino, hasta que el led infrarrojo y el fototransistor estén alineados y este último capte la luz infrarroja entonces se estimulará la base del transistor 2N2222 y se enviará una señal en alto al Arduino de tal modo que tanto el led infrarrojo como el fototransistor fueron colocados de manera estratégica para asociar la activación de cada sensor a una posición del brazo robótico; ya sea que este último se encuentre de manera vertical u horizontal.


Figura 4. Circuito utilizado para implementar cada uno de los sensores


En la Figura 5 se observa el brazo robótico armado y montado sobre una tabla de madera. Si enumeramos los servomotores del 1 al 4 tomando como número 1 el servomotor que está pegado a la tabla de madera y continúa la numeración en forma ascendente hasta llegar al servomotor 4 que esta acoplado a la pinza del brazo robótico, los servomotores 1 y 3 giran respecto al eje , el servomotor 2 gira respecto al eje  y el servomotor 4 gira respecto al eje  del sistema de referencia propuesto.

Una vez armado el brazo y el circuito, se desarrolló una rutina de prueba su funcionamiento en lenguaje Arduino; por otra parte se implementaron los sistemas de detección de posición, empleando sensores de luz infrarroja como se muestra en la Figura 6, en donde se observan 2 postes de madera en donde fueron colocados los fototransistores y sobre la estructura del brazo se acoplaron los diodos led de luz infrarroja, además en la esquina inferior derecha de la tabla se colocaron 2 diodos de luz verde y roja, los cuales encenderán cuando esté activo el sensor en cuestión y por lo tanto se estará enviando una señal en alto al Arduino.

Finalmente se desarrolló una rutina de prueba adicional a la ya implementada que consistía en que el servomotor 2 realizará un giro de -90° y posteriormente de 90° respecto al eje , esto con la finalidad de verificar que el funcionamiento de los sensores implementados sea el deseado.


Figura 5. Brazo robótico

Figura 6. Ubicación de los diodos de luz infrarroja y los fototransistores


4. EXPERIMENTOS

Una vez implementado el brazo robótico y los sensores, se realizaron pruebas de funcionamiento con la finalidad de validar un buen desempeño por parte del brazo y los sensores, en las figuras 7 y 8 se observan fotografías tomadas mientras el brazo robótico realizaba la primer secuencia de prueba, la cual consistía en tomar un bombón desde una posición establecida y colocarlo en un recipiente transparente en otra posición dentro del rango de trabajo del brazo, la rutina implementada fue desarrollada en lenguaje Arduino y dicha rutina se realizaba de forma repetitiva ya que la secuencia está dentro de un bucle, después de varios minutos realizando la rutina y moviendo los bombones sin ningún problema, se consideró que el brazo cumplió satisfactoriamente la secuencia de prueba y para los objetivos futuros del desarrollo del proyecto es bastante aceptable.

Una vez verificado el buen funcionamiento del brazo, se implementó una rutina diferente, la cual sólo consta de 2 movimientos (arriba-abajo) y en esta rutina se pudo verificar que los sistemas de detección de posición implementados están funcionando según lo esperado; dependiendo de la posición del brazo es el sensor que debe estar activo y además se interpreta por el Arduino como una señal en alto, estas señales servirán de retroalimentación a la BCI. En las figuras 9 y 10 se observan las dos posiciones en las que se activan los sensores y de igual manera se enciende el led verde o rojo según sea el caso.


Figura 7. Brazo robótico tomando el bombón

Figura 8. Brazo robótico colocando el bombón en el recipiente



Figura 9. Posición del brazo en la que se activa el sensor 1

Figura 10. Posición del brazo en la que se activa el sensor 2


5. CONCLUSIONES

En este trabajo se implementaron un brazo robótico de 4 grados de libertad y un sistema de detección de posición. Lo más destacado es que se logró verificar el buen funcionamiento de ambos sistemas que posteriormente servirán para realizar la conectividad con la interfaz cerebro-computadora. Uno de los detalles que surgieron, al momento de probar el funcionamiento del sistema de detección de posición, fue que su rango de trabajo era muy corto y no cumplía con el objetivo de detectar las posiciones de interés; por lo que, basado en la forma usual de implementar un sensor infrarrojo, se realizaron algunas modificaciones agregando un transistor 2N2222 para lograr un mayor rango y fuese funcional para la detección de las posiciones deseadas. 

6. REFERENCIAS

Moreno, I., Batista, E., Serracín S., Moreno R., Gómez L., Serracín J., Boya C., and Quintero J., “Los sistemas de interfaz cerebro-computadora basado en EEG: características y aplicaciones,” Revista de I+D Tecnológico. 15 (2), 13-26 (2019).
[2] Morín, M., Santillán, A., Sainos, S. and Oliveros, J., “Prototipo de silla de ruedas dirigida usando parpadeos”. Ingeniería Biomédica, 3 (1), 1-13 (2019).
[3] J. R. Wolpawa, N. Birbaumerc, D. J. McFarlanda, G. Pfurtschellere, T. M. Vaughana, “Brain– computer interfaces for communication and control,” Clinical Neurophysiology. 113, 767–791 (2002).
[4] Vilela M. and Hochberg L.R., “Applications of brain-computer interfaces to the control of robotic and prosthetic arms,” Handb Clin Neurol. 168, 87-99 (2020).