Amplificación de señal EEG e interfaz con Arduino (Parte 4/13)

Ahora que hemos discutido todos los conceptos básicos de las ondas cerebrales junto con la introducción del sensor de ondas cerebrales, es hora de pasar a los temas siguientes. En este artículo veremos cómo funciona el chip de ondas cerebrales, cuál debe ser el algoritmo esperado dentro del sensor y qué debemos hacer para fabricar dicho sensor por nuestra cuenta con cualquier microcontrolador o procesador.

Al hablar del uso del sensor, su objetivo principal es detectar las ondas cerebrales o señales eléctricas cerca de nuestra área del cerebro, filtrarlas eliminando el ruido y las fluctuaciones y luego convertir las señales respectivas en sus valores digitales. Los datos del valor de potencia FFT de 8 tipos diferentes de Brainwave se envían en serie a nuestro sensor.

Ahora, veremos el funcionamiento del sensor, lo que explicará los distintos bloques dentro del sensor que nos permiten convertir las señales de nuestro cerebro en valores digitales.

Laboral

Cuando las señales se miden directamente desde nuestro cerebro, la amplitud está en el rango de microvoltaje. Estas señales también contienen ruido ambiental y también se ven afectadas por los campos parásitos presentes en el área. Nosotros, como cuerpo, también emitimos muchas otras ondas, que se mezclan con el sensor y forman parte de los resultados. Para obtener una señal clara de las ondas entrantes, necesitamos utilizar muchos filtros, amplificadores y un circuito para mejorar los resultados.

Los siguientes son los pasos que debemos seguir para imitar el sensor y producir resultados similares.

Pasos

1. Amplificador

2. Filtro de paso alto

3. Amplificador

4. Filtro de paso bajo

5. Convertidor analógico a digital

6. FFT

7. Codificación

8. Salida en serie

Echemos un vistazo a estos pasos uno por uno.

AMPLIFICADOR

El amplificador de instrumentación se utiliza después de las señales sin procesar y aporta muchos beneficios en comparación con el amplificador diferencial simple. En el amplificador diferencial, la impedancia de entrada no se acerca al infinito. Además, la resistencia de entrada en la entrada inversora es relativamente baja. Debido a la impedancia de entrada inigualable, existe una gran diferencia en comparación con la entrada no inversora.

Aunque podemos aumentar la impedancia de entrada haciendo cambios en la resistencia de retroalimentación, para obtener una ganancia de 10, necesitaríamos una resistencia de 10 M ohmios, si la resistencia de retroalimentación es de 1 M ohmios. Además, mi experiencia personal es que las resistencias grandes son muy ruidosas y es difícil igualarlas. Además, una resistencia grande a veces provoca capacitancia parásita.

En el caso del amplificador de instrumentación, podemos lograr una impedancia de entrada infinita y una alta ganancia, ambas al mismo tiempo. El resultado es un circuito con alta ganancia junto con CMRR e impedancia de entrada. Los amplificadores de instrumentación están especializados en amplificar señales débiles y ruidosas y son muy adecuados en nuestro caso donde la señal es muy ruidosa y de baja amplitud.

Por tanto, el primer paso es aplicar un amplificador de instrumentación con una ganancia aproximada de 100. Así, podremos obtener una señal del orden de milivoltajes que luego podrá ser leída por nuestro circuito y controlador.

FILTRO DE PASO ALTO

Ahora, después de obtener la salida amplificada, debemos comenzar a filtrar la señal y mantenerla dentro de la frecuencia deseada. Primero filtraremos todas las frecuencias bajas usando el filtro de paso alto. Podemos usar un filtro de paso alto RC pasivo simple, pero esto disminuirá la intensidad de la señal en gran medida, lo cual no es deseable en nuestro sistema. Por lo tanto, utilizaremos un filtro de paso alto activo después de la señal amplificada.

Filtraremos todas las frecuencias por debajo de 0,1 Hz. El rango de señal de nuestras ondas cerebrales es de 0,1 Hz a 50 Hz. Las señales de ondas cerebrales más bajas son ondas delta con un rango de frecuencia de 0,1 a 3 Hz. El corte de frecuencia en un filtro de paso alto se mide de la siguiente manera. fórmula:

Frecuencia de corte = 1/(2*pie*R*C) en Hz

Por tanto, fijaremos los valores de RC de forma que la frecuencia de corte sea de 0,1 Hz. De esta forma atenuamos las frecuencias por debajo de 0,1 Hz. Ahora nos quedan frecuencias que varían desde 0,1 Hz hasta el infinito.

Un beneficio adicional del filtro de paso alto activo sobre el pasivo es que podemos lograr amplificación y control de ganancia.

AMPLIFICADOR

Nuevamente usaremos un amplificador para amplificar nuestras señales. Aquí también podemos usar un amplificador diferencial, ya que nuestra señal no es tan pequeña y la ganancia requerida no es del orden de 100. Una ganancia de 5 – 10 es suficiente en esta etapa. La ganancia se puede lograr mediante valores de resistencia adecuados y sus proporciones.

Nuestra tarea principal es actuar como repetidor y darle más fuerza a la señal para continuar procesando.

FILTRO DE PASO BAJO

Ahora, después de obtener la salida amplificada, debemos comenzar a filtrar la señal nuevamente y limitarla dentro de la frecuencia deseada de 0,1 Hz a 50 Hz. Ya la hemos limitado a 0,1 Hz. Podemos usar un filtro de paso bajo RC pasivo. simple pero nuevamente esto disminuirá la intensidad de la señal en gran medida, lo cual no es deseable en nuestro sistema. Por lo tanto, utilizaremos un filtro de paso bajo activo después de la señal amplificada.

Esta vez filtraremos todas las frecuencias después de 50 Hz. Nuestro rango de señal de ondas cerebrales es de 0,1 Hz a 50 Hz. Las señales de ondas cerebrales más altas son ondas gamma con un rango de frecuencia de 38 Hz a 45 Hz. La frecuencia de corte en un filtro de paso bajo se mide mediante la siguiente fórmula. Es lo mismo que el filtro de paso alto.

Frecuencia de corte = 1/(2*pie*R*C) en Hz

Por lo tanto, estableceremos los valores de RC de manera que la frecuencia de corte sea de 50 Hz. De esta forma atenuamos las frecuencias después de 50Hz. Ahora nos quedan frecuencias que van desde 0,1 Hz a 50 Hz. Eliminamos el ruido y las señales parásitas, excepto en este rango de frecuencia. Aunque hay pocas señales en este rango de frecuencia que no sean ondas cerebrales reales.

REFERENCIA

También nos ponemos dos sondas en los oídos. Estas sondas actuarán como voltaje de referencia para nuestra señal. Las señales perdidas (ruido y corporal) también están presentes en las señales captadas por los oídos. Ahora, la señal real es la diferencia entre la señal EEG que capturamos y las señales de referencia. Las señales de referencia deben restarse de la señal del EEG para obtener señales más adecuadas con menos ruido.

En el siguiente paso, necesitamos dividir las señales en su rango de frecuencia específico para poder obtener señales de diferentes tipos de ondas cerebrales. Por ejemplo, para las ondas alfa necesitamos tener señales en el rango de 8 a 12 Hz, para las ondas beta necesitamos tener señales en el rango de 10 a 38 Hz y así sucesivamente.

Después de definir con éxito un rango de 0,1 a 50 Hz, aplicaremos la misma técnica de filtrado a esta señal y produciremos señales con el rango de frecuencia establecido con diferentes tipos de ondas cerebrales. Usaremos un filtro de paso alto, un amplificador y un filtro de paso bajo para producir dichas señales. Luego de completar el filtrado de cada paso, tendremos señales con un rango de frecuencia de 0,1 a 3 Hz, 3 a 8 Hz, 8 a 12 Hz, 12 a 38 Hz y 38 a 45 Hz.

ADC y MUESTREO

Una vez que hemos obtenido las diferentes señales con diferentes rangos de frecuencia, ahora llega el momento de extraer de ellas valores digitales. Podemos usar cualquier controlador para esto con ADC integrado.

El ADC incorporado convierte automáticamente los voltajes analógicos de la señal a digitales. Así, en nuestro controlador tendremos una secuencia de valores digitales de nuestras señales analógicas de diferentes ondas. Necesitamos guardar estos valores en el búfer durante un período determinado.

Aquí la frecuencia de muestreo vendrá definida por el retraso que mantengamos entre sucesivas conversiones de analógico a digital. Intentaremos mantenerlo muy bajo para mayor precisión.

FFT

Una vez que tengamos los valores digitales de nuestra señal, averiguaremos la FFT a partir de estos valores digitales. FFT significa transformada rápida de Fourier. Un algoritmo (FFT) calcula la Transformada Discreta de Fourier (DFT) de una secuencia, o su inversa. El análisis de Fourier convierte una señal de su dominio original (generalmente tiempo o espacio) a una representación en el dominio de la frecuencia y viceversa. Una FFT calcula rápidamente estas transformaciones factorizando la matriz DFT en un producto de factores escasos (en su mayoría cero).

Nota: La biblioteca FFT también está disponible para Arduino

En consecuencia, podemos tener los valores FFT de todas las diferentes señales que filtramos y manipulamos.

SALIDA SERIE

Luego de obtener los valores de FFT haremos una secuencia y los transferiremos serialmente uno por uno. La mayoría de los controladores admiten comunicación en serie (protocolo RS232). Crearemos una serie de valores FFT de diferentes tipos de ondas cerebrales y transmitiremos esta matriz en serie.

Entonces, de esta manera, transformamos con éxito la señal de ondas cerebrales analógicas en valores FFT de diferentes tipos de ondas cerebrales e imitamos el chip TGAM1 y nuestro sensor.

Después de tender el puente entre las visiones teórica y práctica, podemos identificar fácilmente cómo y de dónde provienen estos valores. Sin embargo, si realmente lo intentamos, habrá muchas más complicaciones y puntos. Además, el resultado puede ser más complejo con variaciones inesperadas.

En el próximo artículo veremos cómo estos valores de FFT se pueden utilizar para medir el cambio en diferentes tipos de ondas, controlando el brillo del LED a través de la meditación y el nivel de alerta.

contenido relacionado

Regresar al blog

Deja un comentario

Ten en cuenta que los comentarios deben aprobarse antes de que se publiquen.