Universidad de Costa Rica Facultad de Ingeniería Escuela de Ingeniería Eléctrica IE – 0502 Proyecto Eléctrico Desarrollo de procedimientos de adquisición y procesamiento de señales electroencefalográficas utilizando el hardware libre OpenEEG y el software libre OpenVibe Por: Diego Sayed Dumani Jarquín Ciudad Universitaria Rodrigo Facio Julio del 2011 Desarrollo de procedimientos de adquisición y procesamiento de señales electroencefalográficas utilizando el hardware libre OpenEEG y el software libre OpenVibe Por: Diego Sayed Dumani Jarquín Sometido a la Escuela de Ingeniería Eléctrica de la Facultad de Ingeniería de la Universidad de Costa Rica como requisito parcial para optar por el grado de: BACHILLER EN INGENIERÍA ELÉCTRICA Aprobado por el Tribunal: _________________________________ Ing. Lochi Yu Lo, Ph.D Profesor Guía _________________________________ Ing. Miguel Ruphuy Chan Profesor lector _________________________________ Ing. Fabián Abarca Calderón Profesor lector ii DEDICATORIA A mi mamá, mi papá y mi hermano, por toda su ayuda y apoyo durante estos años. iii RECONOCIMIENTOS Especial reconocimiento al Dr. Lochi Yu, que siempre ha estado dispuesto a ayudar con cualquier problema. A los profesores lectores Fabián Abarca y Miguel Ruphuy. A Yohan Molina, encargado de bodega de la escuela de Ingeniería Eléctrica por toda la ayuda brindada. Por último, a los compañeros del Laboratorio de Ingeniería Biomédica de la escuela de Ingeniería Eléctrica, por la compañía y ayuda cuando fue necesitada. iv ÍNDICE GENERAL 1. CAPÍTULO 1: INTRODUCCIÓN ....................................................... 1 1.1 Justificación ............................................................................................ 1 1.2 Objetivos ................................................................................................. 2 1.2.1 Objetivo general .......................................................................................................... 2 1.3 Metodología ............................................................................................ 3 2. CAPÍTULO 2: DESARROLLO TEÓRICO ....................................... 4 2.1 Generación de biopotenciales y ondas bioeléctricas ........................... 4 2.1.1 El cerebro .................................................................................................................... 4 2.1.2 Electroencefalografía .................................................................................................. 5 2.1.3 Regiones de la corteza cerebral .................................................................................. 7 2.1.4 Comportamiento de las señales electroencefalográficas ............................................ 8 2.1.5 Posicionamiento de los electrodos ............................................................................ 11 2.1.6 Sistemas de EEG ....................................................................................................... 12 2.2 Interfaz cerebro – computador........................................................... 15 2.2.1 Características de una BCI ........................................................................................ 17 2.2.2 Estado del arte ........................................................................................................... 18 v 2.2.3 BCI y software libre .................................................................................................. 20 3. CAPÍTULO 3: EL OPENEEG ........................................................... 22 3.1 El hardware .......................................................................................... 22 3.2 Conexiones ............................................................................................ 31 4. CAPÍTULO 4: OPENVIBE ................................................................ 36 4.1 Instalación ............................................................................................. 36 4.2 Controlador para OpenEEG .............................................................. 37 4.3 Ejecución del programa ...................................................................... 38 4.3.1 Ov-acquisition-server................................................................................................ 38 4.3.2 Ov-designer ............................................................................................................... 40 4.4 Pruebas y Resultados ........................................................................... 44 5. CONCLUSIONES Y RECOMENDACIONES ................................ 48 5.1 Conclusiones ......................................................................................... 48 5.2 Recomendaciones ................................................................................. 49 BIBLIOGRAFÍA ............................................................................................ 50 ANEXOS ......................................................................................................... 52 vi Diagrama esquemático de la tarjeta analógica ........................................... 52 Diagrama esquemático de la tarjeta digital ................................................. 53 Preparación del OpenEEG ............................................................................ 54 vii ÍNDICE DE FIGURAS Figura 2.1. Partes básicas de una neurona [4]......................................................................... 4 Figura 2.2. Espectro en frecuencia de un EEG normal [10] ................................................... 6 Figura 2.3. Regiones de la corteza cerebral [7] ...................................................................... 8 Figura 2.4. Ondas características de un EEG [10] ................................................................ 10 Figura 2.5. Actividad eléctrica cerebral respecto al nivel de conciencia [10] ...................... 11 Figura 2.6. Sistema internacional 10-20 de localización de electrodos [11] ........................ 12 Figura 2.7. Registro, filtrado, amplificación y digitalización de una señal bioeléctrica [19] ..... 13 Figura 2.8. Circuito DRL [21] .............................................................................................. 14 Figura 2.9. Etapas de una interfaz cerebro computador [9] .................................................. 15 Figura 3.1. Diagrama de bloques simplificado del OpenEEG [13] ...................................... 24 Figura 3.2. Diagrama de bloques simplificado de la etapa digital del OpenEEG [13] ......... 25 Figura 3.3. Pila 9 V ............................................................................................................... 25 Figura 3.4. Clip para pila 9 V ............................................................................................... 26 Figura 3.5. Interruptor de alimentación ................................................................................ 26 Figura 3.6. Conector macho .................................................................................................. 26 Figura 3.7. Conector hembra ................................................................................................ 26 Figura 3.8. Cable hembra-hembra ........................................................................................ 27 Figura 3.9. Cable hembra-macho .......................................................................................... 27 Figura 3.10. Socket berg pin de cuatro pines ........................................................................ 27 Figura 3.11. Cable IDC de 34 pines...................................................................................... 28 viii Figura 3.12. Electrodos WBT-DSC ...................................................................................... 29 Figura 3.13. Terminal para electrodo.................................................................................... 29 Figura 3.14. Socket XRL macho .......................................................................................... 30 Figura 3.15. Conector XRL hembra ..................................................................................... 30 Figura 3.16. Distribución de pines en un puerto serial macho ............................................. 32 Figura 3.17. Conexión de los electrodos a la tarjeta [13] ..................................................... 34 Figura 3.18. Conexión del electrodo DRL [13] .................................................................... 34 Figura 4.1. Servidor de adquisición de datos ........................................................................ 39 Figura 4.2. Propiedades del controlador ............................................................................... 39 Figura 4.3. Interfaz de diseño ............................................................................................... 40 Figura 4.4. Configuración del filtro ...................................................................................... 41 Figura 4.5. Visualización del espectro de frecuencias con 4 canales ................................... 42 Figura 4.6. Visualización de la señal en el tiempo para 4 canales ........................................ 43 Figura 4.7. Escenario ejemplo .............................................................................................. 44 Figura 4.8. Señal sin realimentación DRL ............................................................................ 45 Figura 4.9. Señal con realimentación DRL........................................................................... 45 Figura 4.10. Detección de la onda alfa ................................................................................. 46 ix NOMENCLATURA BCI Brain Computer Interface – Interfaz cerebro computador DRL Driven Right Leg circuit – Circuito de realimentación de pierna derecha EEG Electroencefalograma PCB Printed Circuit Board – Tarjeta de circuito impreso x RESUMEN El presente proyecto muestra los pasos para la creación de una interfaz de adquisición y procesamiento de ondas electroencefalográficas. Para esto se utilizan tanto hardware libre – OpenEEG – como software libre – OpenVibe –. El EEG, que cuenta con dos canales, se pretende utilizar para aplicaciones de investigación, recreativas y educativas. Se espera obtener un sistema de calidad similar a los disponibles comercialmente, pero que represente un costo menor. En el documento se enumeran las principales características del hardware y el software disponibles, y un procedimiento para su acople y conexión. La documentación en línea disponible para ambos OpenEEG y OpenVibe facilitó el proceso, llegando a un resultado exitoso. Las pruebas en coordinación con el departamento de neurociencias son importantes para comprobar la calidad de la señal y la capacidad de extraer información útil de esta. Las ondas resultantes dependerán del paciente sometido al electroencefalograma, así como de la preparación previa y un ambiente de trabajo que permita tanto relajación como concentración. xi 1. CAPÍTULO 1: Introducción En el presente proyecto se pretende desarrollar la base para una interfaz que permitirá obtener señales electroencefalográficas. Para este fin, se utiliza tanto hardware como software libre. El hardware a utilizar es denominado OpenEEG cuyo diseño es de código abierto y está también disponible comercialmente. Para este dispositivo, existen varias opciones de software de adquisición, entre las que está el programa – también de código abierto – OpenVibe. El fin principal, luego de adquirir e interpretar las señales electroencefalográficas, es utilizar esta interfaz para convertir las ondas cerebrales en señales de control determinadas. Específicamente, en un juego el cerebro puede dar instrucciones simples como moverse en una dirección, detenerse, entre otras. Entre tanto, el alcance de este proyecto no pretende interpretar dichas señales, sino aportar la primera fase de todo el proceso, un acople entre el hardware y el software, que permita adquirir y procesar las señales, dejándolas disponibles para una posterior interpretación. 1.1 Justificación Además de señales de control, las ondas cerebrales pueden ser estudiadas y utilizadas para gran cantidad de aplicaciones diagnósticas, científicas o recreativas. 1 Los electroencefalógrafos disponibles actualmente en el mercado ascienden a precios exorbitantes, lo que lleva a buscar soluciones más económicas. La opción hardware libre – software libre es sin duda un recurso que permite ahorrar costos significativamente, y según el trabajo que se le de, podría tener una calidad aceptable para la mayoría de aplicaciones. 1.2 Objetivos 1.2.1 Objetivo general Desarrollar métodos de adquisición y procesamiento de señales electroencefalográficas, utilizando el hardware libre OpenEEG y el software libre OpenVibe. 1.2.2 Objetivos específicos Estudiar las características del hardware OpenEEG y las señales eléctricas que genera. Estudiar los alcances del software OpenVibe para procesar señales bioeléctricas. Acoplar el conjunto hardware-software para adquirir y procesar las señales electroencefalográficas obtenidas 2 1.3 Metodología Para alcanzar los objetivos del presente proyecto se procederá de la siguiente manera: En primer lugar se hará una revisión de la documentación necesaria, tanto sobre el hardware como el software a utilizar. A partir de esta se identificará el hardware adicional necesario para interconectar los dispositivos. Luego, se debe estudiar los requerimientos de software para establecer una conexión que permita obtener las señales que brinda el electroencefalógrafo. El software OpenVibe cuenta con un cliente de adquisición de datos el cual, de acuerdo con los drivers disponibles, es capaz de obtener información de distintos dispositivos. Se debe verificar que el driver para el hardware OpenEEG funcione correctamente, así como la conexión física. Luego de obtener una conexión efectiva se estudiará cómo adquirir estas señales y procesarlas mediante el software, de manera que sean útiles para su uso en algoritmos que permitan tomar decisiones lógicas en una etapa posterior. 3 2. CAPÍTULO 2: Desarrollo teórico 2.1 Generación de biopotenciales y ondas bioeléctricas 2.1.1 El cerebro El cerebro está formado por millones de neuronas, responsables de las funciones automáticas e inconscientes de este. Las neuronas son la fuente de la carga eléctrica en el cerebro, medida mediante un electroencefalograma o EEG. Figura 2.1. Partes básicas de una neurona [4] Las neuronas son tan pequeñas como su carga eléctrica. Esta carga es causada por su polarización, donde se tienen iones negativos dentro de la membrana y iones positivos por fuera. Estos iones, al atravesar la membrana, crean señales eléctricas conocidas como potenciales de acción, que viajan por el axón. Cuando el potencial de acción llega a los terminales del axón, causa la liberación de neurotransmisores químicos en la hendidura sináptica, un espacio diminuto entre neuronas adyacentes. A continuación ocurre la sinapsis, donde se estimula la neurona vecina, que a 4 su vez generará un nuevo potencial de acción. Esto crea un “efecto dominó” llamado conducción de volumen. Este es un proceso a escala muy baja, al igual que las señales eléctricas emitidas. Si la onda de electrones es lo suficientemente fuerte para ser „empujada‟ a través del cráneo hacia el cuero cabelludo, esta puede ser detectada por sensores como una diferencia de potencial eléctrico. La medición de estas diferencias de potencial constituye el examen llamado electroencefalograma. Siendo que los campos de tensión disminuyen con el cuadrado de la distancia, obtener una señal lejana al cuero cabelludo ha sido virtualmente imposible hasta ahora [2]. 2.1.2 Electroencefalografía El primer registro del campo eléctrico del cerebro humano fue hecho por el psiquiatra alemán Hans Berger en 1924 en Jena. Éste le dio el nombre de electroencefalograma (EEG) [10]. Se definieron tres tipos de actividad cerebral: Actividad espontánea La amplitud del EEG es de unos 100 µV cuando se mide en el cuero cabelludo, y entre 1 mV y 2 mV cuando es medida en la superficie del cerebro, de forma invasiva. El ancho de banda de la señal es desde menos de 1 Hz hasta 50 Hz aproximadamente. Esta 5 actividad eléctrica es llamada actividad espontánea debido a que ocurre continuamente en el individuo. Figura 2.2. Espectro en frecuencia de un EEG normal [10] Potenciales evocados Son aquellos componentes del EEG que surgen en respuesta a estímulos, ya sean eléctricos, sonoros, visuales. Estas señales tienen amplitudes muy bajas, menores a 5 µV, por lo que no se distinguen fácilmente. Debe utilizarse un tren de estímulos y un promediado de la señal para mejorar la relación señal a ruido y así poder identificar estos potenciales [20]. 6 Eventos bioeléctricos producidos por neuronas individuales El comportamiento de células individuales puede ser examinado mediante el uso de microelectrodos que abarcan las células de interés. Con esto se pretende construir modelos de redes celulares que reflejarán propiedades del tejido al que pertenecen. El número de células nerviosas en el cerebro ha sido estimado a ser del orden de 1011. Las neuronas corticales – ubicadas en la corteza cerebral – están fuertemente interconectadas. En la superficie de una sola neurona pueden ocurrir de mil a cien mil sinapsis. El potencial de reposo de una neurona es alrededor de -70 mV, la amplitud de un impulso nervioso es de unos 100 mV y dura aproximadamente 1 ms [10]. Es importante rescatar que en un EEG no invasivo, las señales registradas no son una medida de potenciales en el axón, y no representan la actividad individual de neuronas y sinapsis. En cambio, representan la suma de la actividad eléctrica de grandes números de sinapsis, ubicadas en capas superficiales de la corteza cerebral [7]. 2.1.3 Regiones de la corteza cerebral Antes de enumerar las diferentes señales que se pueden obtener en un EEG, es necesario distinguir algunas regiones de la corteza cerebral. Son los lóbulos frontal, temporal, parietal y occipital, que se pueden observar en la siguiente figura: 7 Figura 2.3. Regiones de la corteza cerebral [7] 2.1.4 Comportamiento de las señales electroencefalográficas De una señal de EEG es posible diferenciar las denominadas ondas o ritmos: alfa (α), beta (β), delta (δ), y zeta (Θ). Las ondas alfa tienen su espectro entre 8 Hz – 13 Hz y pueden ser medidas desde la región posterior (parieto – occipital) en una persona despierta, relajada, cuando los ojos están cerrados. Se atenúa o desaparece al darse estímulos visuales, concentración. Puede estar presente al abrir los ojos en entornos poco luminosos. Su amplitud varía según la persona, pero se estima entre 40 µV y 50 µV en adultos. Esta fue la primera onda en ser descubierta [7] [18]. La banda de frecuencia de las ondas beta es de los 13 Hz – 30 Hz, y son detectadas sobre los lóbulos parietal y frontal. Al individuo abrir los ojos, el ritmo alfa se torna más rápido y de menor amplitud, obteniéndose así el ritmo beta. 8 Las ondas delta van desde 0,5 Hz hasta 4 Hz y son detectables en los adultos al dormir o en los bebés. Las ondas zeta abarcan el rango de 4 Hz – 8 Hz y se obtienen de adultos al dormir o niños. Estas ondas son también relacionadas con procesos de aprendizaje y memoria [3]. Las ondas delta y zeta son conocidas como ondas lentas. Las señales electroencefalográficas están relacionadas al nivel de conciencia de la persona. Conforme aumentan las actividades, el EEG muestra un cambio hacia frecuencias más altas y amplitudes más bajas. Cuando los ojos están cerrados, las ondas alfa son dominantes en la señal obtenida. Al dormir, la frecuencia dominante disminuye, hasta llegar a la fase REM del sueño (rapideye-movement) donde ocurren los sueños y la señal del EEG varía. Durante el sueño profundo, predominan las ondas delta. A continuación se presenta una figura con las formas de onda características de cada ritmo, y seguidamente un ejemplo del comportamiento del EEG durante las fases del sueño. 9 Figura 2.4. Ondas características de un EEG [10] 10 Figura 2.5. Actividad eléctrica cerebral respecto al nivel de conciencia [10] 2.1.5 Posicionamiento de los electrodos Sistema 10-20 Es un sistema recomendado por la Federación Internacional de Sociedades para Electroencefalografía y Neurofisiología Clínica (IFSECN) para la localización de los electrodos en el cuero cabelludo [1]. La intención es dar carácter de reproductibilidad a los estudios para así ser comparados a lo largo del tiempo. 11 El nombre se debe a que las distancias entre electrodos son de 10% o 20% de la distancia frontal-posterior o de lado a lado del cráneo. Se tienen letras para identificar cada lóbulo: F, T, C, P, O para el frontal, temporal, central, parietal y occipital respectivamente. La „z‟ se refiere a los electrodos colocados en la línea central, los números pares al hemisferio derecho, y los impares al izquierdo (visto desde arriba). Figura 2.6. Sistema internacional 10-20 de localización de electrodos [11] 2.1.6 Sistemas de EEG El proceso típico para registrar señales bioeléctricas que incluye registro, filtrado, amplificación y digitalización de la señal, se presenta en la siguiente figura: 12 Figura 2.7. Registro, filtrado, amplificación y digitalización de una señal bioeléctrica [19] De acuerdo con C. Binnie [1], una máquina de EEG debe ser capaz de registrar la actividad cerebral desde un nivel de 1 µV ó 2 µV hasta 1 mV o 2 mV, dentro de un ancho de banda de 0,1 Hz – 100 Hz. En general un EEG de 21 canales es lo mínimo considerado para utilizar todos los electrodos del sistema 10-20. En la mayoría de los laboratorios, se tienen campos eléctricos provenientes de la red, ya sea de 50 Hz o 60 Hz. Esto causa interferencia en varias maneras, ya que cualquier amplificador trabajando a nivel de microvolts será afectado por la interferencia de la red, así como al conectar y desconectar cables. 13 Algunas máquinas de EEG incorporan un circuito supresor que amplifica la diferencia de potencial entre un electrodo colocado en la cabeza y el chasis de la máquina, invierte la fase y aplica la señal resultante a otro electrodo en algún otro lugar de la cabeza, esto genera una retroalimentación negativa que reduce la interferencia de modo común, al mantener al paciente bajo la misma referencia que la máquina. Circuito supresor DRL Sus siglas provienen de Driven Right Leg Circuit, pues se supone que es conectado a la pierna derecha del paciente. Su objetivo, de minimizar la interferencia de modo común, se logra promediando las señales obtenidas y se hacen pasar por un amplificador inversor, cuya salida será colocada en la pierna derecha del paciente. El diagrama del circuito equivalente se presenta a continuación: Figura 2.8. Circuito DRL [21] 14 2.2 Interfaz cerebro – computador Una interfaz cerebro-computador (BCI por sus siglas en inglés) es un sistema que permite control directo de una aplicación computacional, instrumento mecánico, entre otros, mediante las intenciones de una persona, reflejadas en señales cerebrales. Se dice que se omite el mecanismo de salida tradicional del cuerpo humano, es decir, los músculos, para obtener las instrucciones directamente desde las señales medidas [9]. Figura 2.9. Etapas de una interfaz cerebro computador [9] En la figura anterior, se ilustran las etapas generales de una interfaz cerebro – computador, la medición de la señal EEG, preprocesado, identificación de características, 15 clasificación, decisión de clasificación, teoría de control y emisión de una señal de control. Por último se da una realimentación al usuario. En el preprocesado se filtra y amplifica la señal y se digitaliza. La extracción de las características intenta encontrar componentes que simplifiquen la posterior clasificación o detección de patrones específicos de la actividad cerebral. Se debe clasificar la señal según parámetros definidos previamente mediante un „entrenamiento‟ de la máquina para poder tomar una decisión que implicará el envío de una señal de control a un programa, robot, u otro dispositivo [12]. La realimentación al usuario es importante tanto en la etapa de entrenamiento como durante la aplicación. Puede ser discreta o continua, y con esta, se forma un sistema de lazo cerrado formado por dos controladores adaptativos: el cerebro y la computadora [15]. Generalmente lo que se pretende detectar de un EEG para ser utilizado en la interfaz son las señales ERP (event-related potencials), relacionadas con los potenciales evocados citados en 2.1.2. Al ser esta señal tan pequeña se procede promediando la señal obtenida a lo largo de cierto tiempo determinado, aplicando el estímulo en cuestión. Si se aumenta la cantidad de intervalos de tiempo promediados, la razón señal a ruido mejora, y así la ERP se hace visible al obtener suficientes intervalos. 16 La principal dificultad en las BCI es que se necesita actuar generalmente en tiempo real, por lo que se hacen necesarios métodos para obtener la señal ERP y clasificarla solamente necesitando de un intervalo. El proceso de promediado debe ser lo suficientemente robusto para permitir lo anterior. Por esto, se recurre a un entrenamiento previo al uso del sistema, donde la máquina „aprenderá‟ a clasificar patrones de actividad cerebral, mediante algoritmos de inteligencia artificial. 2.2.1 Características de una BCI Gert Pfurtscheller cita las características a distinguir en una BCI: Invasiva o no invasiva. En el primer caso los electrodos son colocados en la corteza cerebral; en la no invasiva los electrodos se fijan por fuera del cráneo. La ventaja de obtener las señales invasivamente radica en su menor vulnerabilidad a „artefactos‟ y mejor razón señal a ruido. Tipo de señal detectada. Puede ser la detección de potenciales evocados como tales, así como medir cambios en ciertas bandas de frecuencia en el EEG que se está llevando a cabo. Estrategia mental. Es la técnica mediante la cual la actividad eléctrica cerebral es modificada. La atención visual a un estímulo y la imaginación motora son estrategias de investigación en BCI. En la imaginación motora la persona imagina 17 una tarea, y luego de entrenamiento, el usuario puede obtener control sobre ciertos componentes de la actividad oscilatoria del EEG. Modo de operación. Determina cuando el usuario realiza una tarea mental y por tanto, pretende enviar un mensaje. Existen dos tipos de operación, en el primero la pauta es dada externamente (basado en indicación, controlado por computadora, BCI sincrónica). En el segundo, la pauta se controla internamente (controlado por usuario, BCI asincrónica). En la BCI sincrónica, una ventana predefinida es utilizada, donde se le presenta una señal de estímulo al usuario, a la que reaccionará de alguna manera específica. En la asincrónica, se necesita de un análisis continuo de la señal para determinar cuando un estado mental deseado ocurre [15]. 2.2.2 Estado del arte BCI de Albany: En los ochenta, se utilizaron señales EEG de adultos normales para controlar un cursor, usando una banda de potencia centrada en 9 Hz. El sistema era basado en indicación y usaba parámetros autoregresivos. BCI de Tuebingen: En los noventa, se medían los cambios en los potenciales de la corteza, en una ventana de dos segundos, basada en indicación y utilizada para mover una luz circular hacia un destino. Luego de varias sesiones de entrenamiento, los pacientes fueron capaces de escribir un texto. 18 BCI de Graz: Sistema basado en indicación, clasifica la actividad oscilatoria en las bandas de 10 Hz y 20 Hz. Se usan parámetros autoregresivos y potencia de la banda. BCI de Donchin. Basado en la presentación de una matriz 6 por 6, donde una fila o columna destella. La fijación del usuario en una letra o elemento específico emite un componente de potencial evocado llamado P300. Se obtiene una tasa de comunicación de unos siete elementos por minuto [15]. Hoy en día existen entre 200 y 300 laboratorios dedicados a BCI. Algunas características adicionales a las citadas por Pfurtscheller en [15], para describir los sistemas BCI son portabilidad, área de aplicación (deletreo, control mecánico, investigación), velocidad y precisión, tiempo de entrenamiento, bajo o alto costo, grados de libertad [6]. Para resaltar las tendencias y desarrollos actuales en el campo, la organización Guger Technologies patrocina los premios BCI anualmente. Entre las estadísticas de sus diez mejores nominados en 2010, ocho utilizaron EEG como señal de entrada y seis utilizaron la respuesta P300. Las razones radican en que esta respuesta es fácil de medir y es un método no invasivo, requiere pocos minutos de entrenamiento, trabaja para la mayoría de personas y brinda una señal de control orientada a un objetivo, por lo que es especialmente útil en aplicaciones de deletreo o donde no se necesita una señal continua de control. De la totalidad de proyectos presentados, un alto porcentaje son implementaciones en tiempo real, la imaginación motora es aún la técnica más utilizada para control de BCI, 19 seguida por P300. En su mayoría se utilizan señales EEG como entrada, debido a su facilidad y menor costo. La aplicación más implementada es la de deletreo, seguida de control general, rehabilitación en derrames cerebrales, control de internet, sillas de ruedas o robots [6]. Retos futuros Los potenciales relacionados a estímulos están reducidos a una gama específica de aplicaciones. En un estudio hecho por el Berlin Institute of Technology se identificó que, a pesar de que las técnicas de entrenamiento de la máquina permitían tiempos cortos (menores a 20 minutos), alrededor del 20% de los individuos no presentaban variaciones suficientes al pensar en una imagen motora, otro 30% exhibió un lento desempeño (menos de 20 bits por minuto). Es un tema de debate el por qué algunos individuos no son tan aptos como otros para utilizar una interfaz BCI, lo que en inglés es conocido como BCI illiteracy. Aunque 20 minutos de entrenamiento no son excesivos para un individuo nuevo, se beneficiaría mucho la usabilidad al requerir un mínimo tiempo de intervalos de calibración para conseguir un buen desempeño [12]. 2.2.3 BCI y software libre A pesar del rápido crecimiento del campo científico del aprendizaje automático de las computadoras mediante inteligencia artificial, pocos investigadores publican programas 20 o códigos fuente asociados con sus artículos. Esto contrasta con las prácticas de la comunidad bioinformática, donde el software de código abierto ha sido la base para posterior investigación [17]. Sören Sonnenburg cita en [17] las ventajas de publicar software de código abierto para esta área: 1. Aumento de la reproducibilidad en la investigación científica 2. Algoritmos implementados dentro del mismo marco facilita comparaciones certeras 3. Los problemas pueden ser descubiertos con mayor rapidez 4. Reparaciones de defectos o „bugs‟ y extenciones de otras fuentes 5. Los métodos son adoptados rápidamente por otros 6. Disponibilidad de algoritmos más eficientes 7. Impulso a las fuentes de recursos para invertir en más investigación 8. Un uso más amplio lleva a un mayor reconocimiento 9. Desarrollo de algoritmos más complejos 10. Acelera la investigación 11. Beneficia a los novatos y grupos de investigación más pequeños 21 3. CAPÍTULO 3: El OpenEEG El proyecto OpenEEG fue creado en 2000, como una organización de hardware y software de código abierto, destinada a facilitar la investigación de EEG a bajo costo para estudiantes. Se diseñaron dos tarjetas PCB, una analógica que filtrara y amplificara la señal, y otra digital para muestrear la señal y enviar los datos a una computadora. Desde entonces han coordinado con la empresa OLIMEX Ltd para la fabricación de estas tarjetas [5]. La información y diseño se encuentran en la página web del proyecto OpenEEG [13]. 3.1 El hardware Como se mencionó en el párrafo anterior el OpenEEG está formado por una etapa analógica seguida de una digital, a continuación se enumeran las características de cada una. Etapa Analógica Inicia con un circuito de protección, que protege al circuito de descargas electrostáticas, y al mismo tiempo al individuo, en caso de una falla. Está formado por capacitores que bloquean la entrada de otras señales de radiofrecuencia, y transistores de enclavamiento que limitan la tensión a niveles menores a 0,7 V, así como la corriente que fluye al individuo en caso de una falla. 22 Las ondas electroencefalográficas son del orden de los µV y a la vez propensas a interferencias de la red eléctrica de 60 Hz, lo que requiere una amplificación orientada a eliminar dicha interferencia. La señal proveniente de los electrodos entra a un amplificador de instrumentación, que medirá la diferencia de potencial entre dos posiciones del cuero cabelludo. Esto con el fin de disminuir la interferencia de modo común, suponiendo que cada electrodo es afectado por esta en igual magnitud. La ganancia de este amplificador es de 12,2 veces. Se pasa luego por un filtro paso alto, con frecuencia de corte 0,16 Hz para eliminar cualquier DC que se haya podido generar. Luego, la señal se amplifica 40 veces mediante un amplificador no inversor, cuya ganancia se puede ajustar entre 6 y 100, mediante un trimmer de 20 kΩ. Esto puede ser necesario para calibrar el circuito, en caso de que la onda se esté obteniendo muy pequeña o muy grande. El circuito se vende calibrado según la amplitud normal de las ondas EEG, pero incluye además una salida de calibración que se puede conectar a los canales para ajustar los trimmers nombrados. La señal es amplificada 16 veces y se hace pasar por un filtro paso bajo con frecuencia de corte de 59 Hz, que minimiza el problema de aliasing en el momento de muestrear y digitalizar la señal. Si se dispone de un cable blindado, este transportará la interferencia de 60 Hz. Los blindajes pueden conectarse al circuito, el cual hace pasar la señal por un inversor para 23 luego realimentarla al individuo mediante el circuito DRL. Así, se está restando la interferencia que era parte de la señal original. A continuación se presenta el diagrama de bloques simplificado de la etapa analógica: Figura 3.1. Diagrama de bloques simplificado del OpenEEG [13] Etapa Digital En la etapa digital se encuentra la alimentación del circuito. Mediante un regulador LM7805 se regula la tensión a 5 V. A través de un convertidor DC-DC se obtienen dos tensiones aisladas para la etapa digital y la analógica, esta última será transmitida mediante el cable que conecta los circuitos digital y analógico. 24 Se cuenta con un microcontrolador que hace la conversión analógico – digital de la señal. Esta información será enviada a una computadora mediante un circuito integrado que genera señales para puerto RS232 serial. Entre estos componentes se encuentra un optoacoplador, que permite aislar eléctricamente el circuito y así proteger al individuo de fuentes externas de potencia. El diagrama simplificado de esta etapa se muestra a continuación: Figura 3.2. Diagrama de bloques simplificado de la etapa digital del OpenEEG [13] Materiales Si se adquiere las tarjetas fabricadas por OLIMEX, se requieren todavía ciertos componentes para el completo funcionamiento del EEG. Pila de 9 V. Para la alimentación del circuito. Disponible en Electrónica Teltron. Figura 3.3. Pila 9 V 25 Clip para pila de 9 V. Para conexión de la batería al circuito. Disponible en Electrónica Teltron. Figura 3.4. Clip para pila 9 V Interruptor para alimentación de 9 V. Para poder apagar el OpenEEG sin necesidad de desconectar la pila. Disponible en Electrónica Teltron. Figura 3.5. Interruptor de alimentación Conector RS232 serial. Para permitir la conexión al computador, puede ser macho o hembra. Disponible en tiendas de computación como Compuamersa. Figura 3.6. Conector macho Figura 3.7. Conector hembra En este proyecto se utilizó un conector macho. 26 Cable serial. El puerto serial de la computadora es tipo macho, por lo que uno de los extremos del cable deberá ser hembra. El otro extremo será del tipo opuesto al del conector escogido en el punto anterior. Disponible en tiendas de computación como Compuamersa. La mejor opción es un cable serial tipo Null-Modem y según el tipo disponible (hembra-hembra o hembra-macho) escoger el conector para el OpenEEG. Esto porque la configuración interna de los cables en el Null-Modem permite una conexión directa según el estándar RS232 que se explicará más adelante. Figura 3.8. Cable hembra-hembra Figura 3.9. Cable hembra-macho En este proyecto se utilizó una extensión de cable serial, hembra-hembra, dado que se tenía un conector macho en el OpenEEG. 6 Sockets para berg pin. También llamados mini – molex o pin header. Figura 3.10. Socket berg pin de cuatro pines 27 Se necesitan: o 3 de dos pines o 3 de tres pines Es posible encontrarlos en fuentes de computadoras, en la alimentación para el floppy o abanicos. Además, las bases para diodos son una opción para los de dos pines. Disponibles en la tienda online: sparkfun.com Cable IDC (ribbon cable) de 34 pines (2 x 17). Para conexión entre la tarjeta analógica y la digital. Puede encontrarse en dispositivos de floppy. Figura 3.11. Cable IDC de 34 pines Electrodos En cuanto a los electrodos hay mayor flexibilidad respecto al electrodo mismo, así como los cables de conexión. o Activos. Estos electrodos preamplifican la señal recibida, por lo que disminuyen la necesidad de geles de contacto y mejora los resultados. Para alimentarlos se debe hacer conexiones adicionales al circuito, así como fabricarlos o comprarlos, lo que podría resultar costoso. Una guía para su construcción puede ser vista en la referencia [14]. 28 o Pasivos. No requieren alimentación aunque podrían necesitar de una preparación de la piel del paciente con pastas conductoras. A continuación se brinda una recomendación económica. Electrodos pasivos tipo WBT-DSC. Hechos de plástico cubierto con cloruro de plata. Disponibles en la tienda www.electrodestore.com Figura 3.12. Electrodos WBT-DSC Cable apantallado, “shielded cable” o cable con “shield” o blindaje. El „shield‟ es un tercer alambre que va descubierto, el cual ayuda a atrapar la interferencia de las líneas de 60 Hz. Se recomienda 3 metros el cable de audio RCA-500 disponible en la electrónica Teltron. Para poder conectar los electrodos al cable, se debe contar con una terminal de diámetro de 0,062 pulgadas, para ser ajustada al cable, similar a la siguiente: Figura 3.13. Terminal para electrodo 29 Luego, se cubren la terminal junto con el cable, mediante un tubo termocontráctil. Se utilizó un tubo de 1/8 de pulgada. El cual al calentarse se contrae y adhiere a la superficie, protegiendo la conexión en el extremo del cable hacia el electrodo. Imágenes del proceso se pueden encontrar en los anexos. 3 sockets y 3 conectores mini XLR. Este tipo de conector tiene tres pines, de los cuales uno está dispuesto para conectar el blindaje que viene en el cable. Figura 3.14. Socket XRL macho Figura 3.15. Conector XRL hembra Microcontrolador El circuito fabricado por Olimex se vende ensamblado, programado, probado y calibrado, por lo que no es necesario adquirir los componentes para la programación del microcontrolador. De todas formas, se citan, en caso de precisar alguna modificación en el firmware. Olimex tiene disponible el cable de programación AVR-PG1B o AVR-PG2B para puerto paralelo o serial respectivamente, aunque también existe la posibilidad de fabricarlo más económicamente con: 30 Conector D-sub 25 pines (puerto paralelo). Disponible en tiendas de computación como Compuamersa. 2 resistencias de 220 Ω Cable IDC de 10 pines Base para el OpenEEG Es importante tomar cualquier medida para reducir la interferencia en el circuito. Es por esto que se recomienda situar la tarjeta analógica dentro de una caja metálica de dimensiones: 100 mm × 80 mm × 60 mm. Esta se puede conectar a tierra, en el pin VGND del circuito. Entre VGND y la tierra de la placa digital (GND) existen 2 V de diferencia, por lo que esta última debe estar aislada para evitar corto circuitos. Así, la caja metálica junto con la tarjeta digital se pueden colocar dentro de una caja plástica 130 mm × 100 mm × 120 mm. Se recomienda que la caja principal sea plástica, para evitar cualquier contacto entre las partes aisladas de la placa digital. 3.2 Conexiones Una vez disponibles los componentes, se procede a hacer las conexiones debidas. 31 Serial A continuación se muestra la distribución de pines de un puerto serial RS 232 macho. En caso de ser un conector hembra, se deben invertir los números, comenzando de derecha a izquierda. Figura 3.16. Distribución de pines en un puerto serial macho El OpenEEG cuenta con tres pines para conexión del puerto serial: Tierra (GND), Transmisión (Tx) y Recepción (Rx). Estos deberían conectarse a los pines 5, 3 y 2 respectivamente. Una consideración importante es que en el puerto serial del computador, la distribución de pines es la misma, por lo que debe asegurarse que el pin de transmisión del OpenEEG llegue al pin de recepción del computador, y viceversa. 32 Si se tiene un cable serial tipo Null-modem que cruza las conexiones del pin 2 con el 3 internamente: Los pines tierra, transmisión y recepción se conectan según la figura 3.15 GND5, Tx3, Rx2. Si se tiene un cable serial, tipo extensión o alguno otro que no haga el intercambio de pines 2-3, si debe hacer este cambio manualmente en la conexión externa, para garantizar que la información se transmita a la computadora, por tanto se debe conectar de la forma GND5, Tx2, Rx3. Los restantes pines se utilizan para funciones de control o “handshakes”, estos se habilitan mediante software en el driver que se utilizará, por lo que no necesitan ser conectados físicamente. Electrodos El OpenEEG cuenta con dos canales para conexión de electrodos, además de una salida para el electrodo DRL. Cada canal cuenta con tres pines. Una entrada diferencial, que calcula la diferencia entre dos electrodos (positivo y negativo/referencia), y un tercer pin para el blindaje del cable. El electrodo DRL funciona como una “tierra activa” que invierte y realimenta la interferencia, lo que la reduce considerablemente. 33 Se tienen así 5 electrodos, o 4 en caso de que el electrodo de referencia de ambos canales fuera el mismo. Los electrodos se conectan al cable blindado, procurando que el blindaje llegue lo más cerca posible, pero sin tocar el electrodo, pues se quiere que por el blindaje solamente viaje la interferencia, y no las ondas que se están midiendo. Para la conexión a la tarjeta, se hace como en la siguiente figura: Figura 3.17. Conexión de los electrodos a la tarjeta [13] Luego, la conexión del DRL: Figura 3.18. Conexión del electrodo DRL [13] 34 En caso de necesitar solamente un canal, el no utilizado debe ser conectado a tierra (VGND), o bien puentear sus terminales positiva y negativa para que no contribuya con ruido ni interfiera en el funcionamiento correcto del electrodo DRL. 35 4. Capítulo 4: OpenVibe 4.1 Instalación El paquete de instalación, junto con la documentación completa del software OpenVibe, se encuentra disponible en la página web openvibe.inria.fr. Para la distribución Linux, se descarga una carpeta con los códigos fuente, los cuales deben ser compilados por el usuario. Una vez descargado, se descomprime el archivo .zip y en la carpeta scripts se encuentran los archivos con los comandos para la instalación. Se procede de la siguiente manera: 1) Ejecutar el script linux-install_dependencies, el cual descarga e instala los archivos necesarios para la instalación del OpenVibe. 2) Ejecutar el script linux-build, que compila todos los programas que conforman el software. 3) El script linux-test permite corroborar la correcta instalación de los programas, ejecutándolos uno a uno. La versión 0.10.0, disponible al momento de este trabajo, no es compatible con la distribución 11.04 de Ubuntu. Una forma de obtener la versión más reciente del OpenVibe (versión trunk) es ejecutando el código: svn checkout svn://scm.gforge.inria.fr/svn/openvibe/trunk Esta última sí es compatible con la distribución de Ubuntu 11.04. 36 4.2 Controlador para OpenEEG Los colaboradores del software OpenVibe han desarrollado un driver para obtener señales desde un OpenEEG conectado al puerto serial. Sin embargo, el driver contiene dos errores respecto a la numeración de los puertos seriales en Ubuntu. En Ubuntu, la numeración de los puertos seriales comienza desde cero – y no desde uno, a diferencia de Windows – con la denominación tty0, tty1, y así sucesivamente. Para poder obtener información del OpenEEG, se debe tener al menos un puerto serial disponible. Una manera de verificar los puertos disponibles en el equipo, es mediante los siguientes comandos: 1) # dmesg | grep ttyS – El cual informa de los puertos disponibles mediante un mensaje como el siguiente (en este caso se tienen dos puertos seriales) : serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A serial8250: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A 00:09: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A 00:0a: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A 2) Otra manera es probar cada puerto manualmente, mediante el código: # ls > /dev/ttyS0 ó # ls > /dev/ttyS1. Si no se obtiene ningún mensaje de error, significa que el puerto es reconocido por Linux. 37 El problema con el driver disponible, es que trabaja con los puertos a partir del tty1, ignorando el primer puerto tty0, lo cual representa un problema cuando el equipo tiene un solo puerto serial. Por tanto, debe editar el código para iniciar la detección de puertos desde el puerto “cero”. Los códigos del controlador están situados en la ruta openvibe-applications/acquisitionserver/trunk/src/openeeg-modulareeg. Se editan dos archivos, ovasCConfigurationOpenEEGModularEEG.cpp : En la línea 36, la instrucción for(uint32 i=1; i<17; i++) debe sustituirse por for(uint32 i=0; i<17; i++). ovasCDriverOpenEEGModularEEG.cpp : En la línea 307, sustituir ::sprintf(l_sTTYName, "/dev/ttyS%d", ui32TTYNumber); por ::sprintf(l_sTTYName, "/dev/ttyS%d", ui32TTYNumber-1); Luego de hacer cualquier cambio en los códigos, se debe recompilar mediante el script linux-build, el cual compilará aquellos archivos que registren alteraciones. 4.3 Ejecución del programa Luego de compilar todo el programa, se crean en la carpeta scripts, los archivos ov- acquisition-server.sh y ov-designer.sh. 4.3.1 Ov-acquisition-server 38 El servidor de adquisición de datos, como su nombre lo indica, permite la transmisión de información desde el OpenEEG al computador. Figura 4.1. Servidor de adquisición de datos En las propiedades del controlador, se escogen el puerto a utilizar y la frecuencia de muestreo. Otros datos como edad y género del paciente se pueden especificar si se desea registrar dicha información. Figura 4.2. Propiedades del controlador 39 Si el servidor no recibe información luego de un periodo de “time-out”, se detiene la adquisición, por lo que primero se debe encender el OpenEEG y luego dar la orden “Connect” y por último “Play”. 4.3.2 Ov-designer Contiene la interfaz donde se diseñan los parámetros de procesamiento de la señal. Se trabaja uniendo distintos bloques que realizan determinada función. Figura 4.3. Interfaz de diseño 40 En la figura 4.3, en la columna de la derecha se tienen los bloques agregados según su función. Estos se arrastran al área de trabajo para crear un escenario o flujo de instrucciones que van desde adquisición, filtrado, hasta clasificación de la señal resultante. Algunos de los bloques fundamentales se citan a continuación, - Acquisition client: Se comunica con el servidor de adquisición de datos para descargar la información al escenario. - Channel selector: Cuando se dispone de varios canales, este bloque permite aislar uno para utilizar la información individualmente. - Temporal filter – GPL: Al hacer click sobre el bloque, se puede escoger entre un filtro Butterworth, Chebychev o Yule-Walker, el orden, las frecuencias de corte, y el rizado máximo de la banda de paso en caso de escoger Chebychev. Figura 4.4. Configuración del filtro 41 - Spectral analysis – GPL: Mediante la transformada rápida de Fourier (FFT) se puede obtener información como amplitud y fase de los componentes espectrales de la señal. - Frequency band selector: Permite escoger la banda de frecuencia de interés, y así los restantes componentes de frecuencia se consideran como cero. - Power spectrum display: Muestra la amplitud de cada componente de frecuencia según la información proveniente del bloque de análisis de espectro. Figura 4.5. Visualización del espectro de frecuencias con 4 canales - Signal display: Permite visualizar una señal en el tiempo. 42 Figura 4.6. Visualización de la señal en el tiempo para 4 canales - GDF file writer: Permite almacenar la señal en un archivo .gdf, el usuario puede escoger la ubicación y el nombre de dicho archivo, el cual se crea automáticamente al correr el escenario. Para poder crear y guardar archivos, el programa ov-designer debe ejecutarse con permisos de escritura en disco. - GDF file reader: Lee la señal de un archivo .gdf creado previamente, se coloca en lugar del acquisition client para brindar la(s) señal(es) de entrada al escenario. A continuación se muestra un diagrama de ejemplo, donde se utilizan los bloques citados arriba. La señal se almacena y se visualiza sin procesamiento, mientras paralelamente se filtra y se selecciona un canal para visualizar. A la vez se obtiene el 43 espectro de la señal que se puede visualizar completo o también seleccionando las bandas de interés. Figura 4.7. Escenario ejemplo Estos filtros pueden definirse como pasabanda, entre determinado rango de frecuencias, y así enfocarse en un ritmo específico del EEG. 4.4 Pruebas y Resultados Al probar el equipo en el laboratorio, se comprobó el beneficio del electrodo DRL en cuanto a la reducción de la interferencia. 44 La figura 4.8 muestra la señal obtenida sin realimentación del electrodo DRL y se observa una señal poco limpia, con mucha interferencia y saturación, lo cual no permitiría obtener información útil del EEG. Figura 4.8. Señal sin realimentación DRL Figura 4.9. Señal con realimentación DRL 45 Luego de conectar el electrodo DRL se evidencia una mejora en la señal y se visualizan las frecuencias bajas características de un EEG. Una vez reducida la interferencia, se filtró la señal a partir de los bloques de instrucciones para detectar la onda alfa entre 8 Hz y 12 Hz, con la señal medida entre la apófisis mastoides y el punto C3. Figura 4.10. Detección de la onda alfa Se observa una señal poco ruidosa, muestra de que el filtrado es efectivo. Según la sección 2.1.4 de este documento, la onda alfa aumenta su amplitud cuando el individuo está despierto pero relajado, con los ojos cerrados. En el momento en que haya un estímulo visual o intento de concentración, la onda se atenúa por lo que la amplitud medida debería disminuir. No fue posible identificar este fenómeno en el laboratorio a la hora de las pruebas, sin embargo existen muchos posibles factores causantes. 46 Al utilizar electrodos pasivos, resulta necesario el uso de gel y pasta conductora. Primero se debe limpiar con alcohol la zona, luego se aplica el gel que prepara la superficie del cuero cabelludo, y por último la pasta conductora al electrodo. Ninguno de los anteriores pasos se realizó en el laboratorio al momento de la prueba. Otro factor importante a tomar en cuenta es que los resultados varían de persona a persona. Esta debe lograr relajarse para que se muestre y estabilice el ritmo alfa, para luego poder notar si se da una verdadera disminución. Muestra de ello es que al hacer pruebas en el laboratorio con un equipo comercial, los resultados tampoco fueron los esperados, probablemente porque la paciente no logró relajarse y estabilizar el ritmo alfa. 47 5. Conclusiones y Recomendaciones 5.1 Conclusiones El ensamble del hardware OpenEEG a partir del circuito prefabricado de Olimex resultó muy sencillo gracias a su simplicidad y a la documentación disponible en línea. La principal dificultad radica en encontrar algunos componentes y conectores faltantes, aunque existe flexibilidad para adaptar distintos tipos de conectores según lo que se pueda adquirir. El software OpenVibe presenta una interfaz amigable y de fácil aprendizaje. La documentación en línea es una ayuda importante desde la instalación hasta la creación de escenarios. El programa cuenta con los bloques y características que se utilizan frecuentemente en otros programas comerciales, con la ventaja de estar en constante mejora y permitir a los programadores desarrollar nuevos bloques. Se logró el acople del OpenEEG al computador mediante el software OpenVibe gracias al controlador dispuesto para este fin. Luego de corregir las líneas del código para su uso correcto, la conexión no presentó mayores problemas. Los resultados obtenidos no dependen solamente del hardware y la interfaz disponibles, sino también del paciente al que se le apliquen las pruebas, por lo que no está garantizado que el dispositivo funcione de igual manera para cualquier individuo. 48 5.2 Recomendaciones Para ensamblar más unidades de OpenEEG se recomienda adquirir los componentes necesarios en internet, pues algunos no se encuentran fácilmente en el país. Las adaptaciones que se hacen pueden deteriorar la señal, dejándola más propensa al ruido. Además los costos pueden disminuir al adquirir los materiales específicos en mayor cantidad. La coordinación con el departamento de neurociencias es fundamental para comprobar la calidad de la señal obtenida. Para esto se recomienda la realización pruebas que cumplan con toda la preparación necesaria – limpieza, gel, pasta conductora – para así poder comparar los resultados con los obtenidos mediante otros equipos. Para su uso en Linux, es necesario un manejo básico del sistema operativo en cuanto a la terminal de comandos y ejecución de scripts. Sin embargo, se podrían crear paquetes precompilados para que la instalación y ejecución del programa sean aún más sencillas. Si un canal del EEG fuera suficiente para obtener la información deseada, podría ser posible utilizar el otro canal en otro paciente simultáneamente. Por esto se recomienda diseñar en la siguiente etapa un algoritmo que permita interpretar la señal de cada canal independientemente. Sin embargo debe tenerse especial cuidado con la realimentación DRL, y comprobar si la realimentación a ambos pacientes es efectiva para eliminar la interferencia. 49 BIBLIOGRAFÍA [1] Binnie, C. Clinical Neurophysiology: EEG, paediatric neurophysiology, special techniques and applications. Elsevier Health Sciences, 2003. [2] BodyWave. Brain Wave Monitoring. Freer Logic, LLC. 2010. Obtenido el 25/04/2011 en la dirección: http://www.visionmind.co.il/Doc/BodyWaveEEG.pdf [3] Correa, A. Una caja de ritmos llamada cerebro: Moviendo objetos con la mente. Ciencia Cognitiva: Revista Electrónica de Divulgación, 2:1, 1-3. 2008. [4] Esquivel, J. Desarrollo de plataforma basada en Software Libre para adquisición y procesamiento de señales bioeléctricas como componente para una Interfaz Cerebro – Computador. Proyecto Eléctrico, Escuela de Ingeniería Eléctrica, Universidad de Costa Rica. 2010. [5] Griffith, A. An exploration of the Open EEG Project. C.H.G.Wright‟s BioData Systems, Spring 2006. Obtenido el 19/03/2011 en la dirección: http://www.austingriffith.com/files/Griffith_OpenEEG.pdf [6] Guger, C. State of Art in BCI Research: BCI Award 2010. g.tec medical engineering GmbH/Guger Technologies OG, Graz, Austria. 2010. [7] Jacobson, S; Marcus, E. Neuroanatomy for the Neuroscientist. Springer Science. New York, 2008. [8] Koolwal, K. Testing Serial Ports under Debian Linux. Obtenido el 6/05/2011 en la dirección: http://linux.koolsolutions.com/2008/04/10/how-to-test-serial-portsunder-debian-linux/ [9] Krauledat, M. Analysis of Nonstationarities in EEG Signals for Improving Brain-Computer Interface Performance. Technischen Universität Berlin. Berlin, 2008. [10] Malmivuo, J; Plonsey, R. Bioelectromagnetism. Principles and Applications of Bioelectric and Biomagnetic Fields. Oxford University Press, New York. 1995. [11] Niedermeyer, E; Lopes, F. Electroencephalography: Basic Principles, Clinical Applications, and Related Fields. Lippincott Williams & Wilkins, 2005. 50 [12] Nijholt, A; Desney, T; et al. Brain-Computer Interfacing for Intelligent Systems. Trends & Controversies IEEE Computer Society, 2008 [13] OpenEEG Project. Documentación obtenida el 19/03/2011 en la dirección: http://openeeg.sourceforge.net/ [14] Ortega, P. Active Electrode Building http://www.dcc.uchile.cl/~peortega/ae/ Guide. 2004. Disponible en: [15] Pfurtscheller, G. Brain–computer interface — state of the art and future prospects. Proc. EUSIPCO Conf., Vienna, Austria, pp. 509–510. 2004 [16] Renard, Y., Lotte, F., Gibert, G., Congedo, M., Maby, E., Delannoy, V., Bertrand, O., & Lécuyer, A. ―OpenViBE: An Open-Source Software Platform to Design, Test and Use Brain-Computer Interfaces in Real and Virtual Environments‖, Presence : teleoperators and virtual environments, vol. 19, no 1, 2010. [17] Sonnenburg, S; et al. The Need for Open Source Software in Machine Learning. Journal of Machine Learning Research 8 (2007) 2443-2466. 2007 [18] Stern, J; Engel, J. Atlas of EEG patterns. Lippincott Williams & Wilkins, 2004. [19] Tranquillo, J. Quantitive Neurophysiology. Morgan & Claypool, 2008. [20] Webster, J. Bioinstrumentation. John Wiley & Sons, 2004. [21] Webster, J. Medical Instrumentation: Application and Design. John Wiley & Sons, 2010. 51 ANEXOS Diagrama esquemático de la tarjeta analógica 52 Diagrama esquemático de la tarjeta digital 53 Preparación del OpenEEG Cable blindado Terminal para el electrodo 54 Tubo termocontráctil de 1/8 de pulgada 55 Moldeado del tubo Electrodos listos 56