Como aplicar ondas cerebrais para controlar um aparelho usando relé (Parte 9/13)

Cómo aplicar ondas cerebrales para controlar un dispositivo mediante relé (Parte 9/13)

Ondas cerebrales para controlar un dispositivo mediante motor de relé

RESUMEN

Hasta ahora, en la serie Brainwave, hemos llevado a cabo experimentos como GSM y altavoz de alarma. Ahora esforcémonos más y pasemos a más aplicaciones en tiempo real. Será una buena comprobación de la fiabilidad del módulo de ondas cerebrales.
En este artículo, planeo algunas aplicaciones en tiempo real en Brain Wave, incluida la automatización del hogar. Esta vez intenté controlar un dispositivo mediante un relé. El relé es solo un dispositivo de conmutación a través del cual podemos controlar aparatos de CA y CC. Aunque también depende de la corriente máxima que puede disparar el relé y de la corriente total que necesita nuestro dispositivo. Creo que será bueno controlar los electrodomésticos con sólo pensar y tener un mayor nivel de concentración. Así que veamos más detalles sobre esto.
Imagem mostrando eletrodomésticos controlados por ondas cerebrais
Fig. 1: Imagen que muestra electrodomésticos controlados por ondas cerebrales.
DESCRIPCIÓN
Como sabes, estamos obteniendo los valores de todo tipo de ondas cerebrales de nuestro Arduino, nuestra tarea aquí es simplemente encontrar la onda que se ve más afectada por el estado de alerta o la concentración. Las ondas alfa nos muestran muchas variaciones en función de nuestro estado de alerta. Entonces, primero verificamos los valores de la onda alfa en diferentes niveles de alerta. Probé mi nivel de meditación y luego los registré para realizar pruebas. Mientras me hacía pruebas, descubrí que los valores de la onda alfa cruzan 3 Lacs solo cuando mi concentración es más alta. Entonces configuré el nivel de codificación en 3 Lacs en mi Arduino . Descubrimos que los valores de onda alfa de mindflex oscilan entre 1 Lac y 10 Lacs y, por lo tanto, establecimos un nivel en 3 Lacs. Siempre que los valores eran mayores que eso, activamos el relé.
Diagrama de blocos do sistema de automação residencial baseado no sensor MindFlex Brainwave
Figura 2: Diagrama de bloques del sistema domótico basado en el sensor MindFlex Brainwave

Hardware: Encuentre el diagrama de circuito adjunto de las conexiones que necesitamos establecer. Cogemos un pin del pin T del sensor mindflex y conectamos este pin al pin Rx de nuestro Arduino UNO. Además, cortocircuitamos el sensor y la tierra UNO mediante un cable. Tenga especial cuidado al soldar cualquier cosa al sensor Mindflex, ya que los pines están muy cerca uno del otro. Después de conectarse a Mindflex, simplemente conecte el relé al Arduino y luego al dispositivo con el relé. Para obtener más detalles sobre Relay, puede consultar (aquí). En pocas palabras, tiene 5 pines, de los cuales dos están destinados a alimentar la bobina y los tres restantes son: pin común, pin normalmente conectado y pin normalmente abierto. Cuando no hay energía a la bobina, el pin común se conecta al pin normalmente conectado y cuando hay energía a la bobina, el pin común se conecta al pin normalmente abierto en lugar de normalmente conectado. En nuestro circuito conectamos el PIN12 de nuestro Arduino al pin de alimentación del relé. El otro pin de alimentación del relé está conectado a tierra.

Programas: Pasemos a la parte del software. Hemos estado recibiendo valores del sensor a nuestro arduino a través del pin T. Después de recibir el valor en algún punto específico, podemos verificar si los valores están por encima de cierto punto o no. Aquí, en el siguiente código, el valor de la onda se almacena en la variable num1 y luego se compara con 309999. Cuando los valores exceden esto, se activa el PIN12 del Arduino.
Serie.print(“Val = “);
Serie.println(num1);
si (núm1>309999)
{si (digitalRead(12)==ALTO)
{
escritura digital (12, ABAJO);
}
de lo contrario si (digitalRead(12)==BAJO)
{
escritura digital (12, ALTO);
}
}
Algunos puntos a tener en cuenta:
El sensor suele proporcionar entre un 60 y un 80% de resistencia debido a su orientación y a la ubicación donde lo coloquemos. Intente mantener el sensor de metal exactamente encima de su ojo izquierdo. También me apliqué agua salada en la frente para una mejor conectividad con el sensor.
La intensidad de la señal también afecta la forma en que soldamos el cable al pin T. Intente proteger este cable y también asegúrese de que las sondas de referencia estén conectadas correctamente. Si tiene algún cable conectado al pin EEG del sensor, desconecte ese cable ya que esto creará mucho ruido en los valores del sensor. Pruebe este experimento y comparta sus comentarios. Estén atentos a nuestro próximo experimento sobre el funcionamiento de LED danzantes a través de ondas cerebrales.

Código fuente del proyecto

###

 //Programa para

// Biblioteca cerebral Arduino - Prueba cerebral en serie
// Descripción: captura datos del cerebro desde el pin serial RX y envía CSV a través del pin TX (Half duplex). // Más información: https://github.com/kitschpatrol/Arduino-Brain-Library // Autor: Eric Mika, 2010 revisado en 2014 #incluir // Configura el analizador cerebral, pásale el objeto serie de hardware que deseas escuchar. Cerebro (Serie); //char a(400); Secuencia a,a1; int v = 0; int z=0,salida; uint32_t número=0; uint32_t número1=0; configuración vacía { // Inicia el serial del hardware. Serie.begin(9600); pinMode(12, SALIDA); pinMode(11, SALIDA); escritura digital (12, ALTO); } bucle vacío { // Espere paquetes aproximadamente una vez por segundo. // La función .readCSV devuelve una cadena (bueno, char*) que enumera los datos cerebrales más recientes, en el siguiente formato: // "intensidad de la señal, atención, meditación, delta, theta, alfa bajo, alfa alto, beta bajo, beta alto, gamma bajo, gamma alto" si (cerebro.actualización) { //Serial.println(brain.readErrors); //Serial.println(brain.readCSV); //sprintf(a, "%c",brain.readCSV); a = cerebro.readCSV; v = a.indexOf(','); v = a.indexOf(',',v+1); v = a.indexOf(',',v+1); v = a.indexOf(',',v+1); z = a.indexOf(',',v+1); a1 = a.subcadena(v+1,z); número = a1.toInt; v = a.indexOf(',',z+1); a = a.substring(z+1,v); número1 = a.toInt; Serie.print("Val = "); Serie.println(num1); si (núm1>309999) {si (digitalRead(12)==ALTO) { escritura digital (12, ABAJO); } de lo contrario si (digitalRead(12)==BAJO) { escritura digital (12, ALTO); } } // escritura analógica(12, salida) //brain.readCSV .toCharArray(a,200); } }

###

Diagramas de circuito

Diagrama-de-circuito-MindFlex-Sensor-de-ondas-cerebrales-Sistema-de-automatización-del-hogar

Vídeo del proyecto

Volver al blog

Deja un comentario

Los comentarios deben ser aprobados antes de su publicación.