Como determinar se uma pessoa está dormindo através de ondas cerebrais (Parte 7/13)

Determine se uma pessoa está dormindo por meio de ondas cerebrais

RESUMO

Anteriormente, nas aplicações de ondas cerebrais, trabalhamos no controle da velocidade do motor usando o nível de atenção do cérebro. Agora, é hora de verificar nosso estudo para mais algumas aplicações em tempo real para detectar se as ondas cerebrais podem realmente ser usadas na vida cotidiana ou não. Atualmente neste artigo, estou planejando desencadear algo relacionado a qualquer tipo de onda cerebral. Na vida real, muitas vezes podemos querer saber se o paciente (possivelmente o nosso próximo) está dormindo ou não. Então, tentei fazer um aparelho usando Brainwave através do qual posso saber se a pessoa está dormindo com a ajuda de uma mensagem/chamada.
Imagem mostrando detecção de sono por sensor de ondas cerebrais
Fig. 1: Imagem mostrando a detecção do sono pelo sensor de ondas cerebrais
DESCRIÇÃO
Os valores de todos os tipos de ondas cerebrais são recebidos pelo nosso Arduino com a ajuda de um sensor Mindflex Brainwave. Nossa tarefa aqui é apenas encontrar a onda que é mais afetada enquanto a pessoa está dormindo. No entanto, não conseguimos dormir durante o experimento, então mudei um pouco e tentei usar o estado de alerta. Afinal, ficamos menos alertas enquanto dormimos e mais alertas enquanto estamos acordados. O efeito do estado de alerta pode ser visto em muitos tipos de ondas cerebrais, mas se falarmos de uma única onda, as ondas alfa nos mostram muitas variações de acordo com o nosso estado de alerta. Então, primeiro verificamos os valores das ondas alfa em diferentes níveis de alerta e descobrimos que os valores das ondas alfa no mindflex variam de 1 Lac a quase 10 Lacs. Após novas experimentações, constatou-se que os valores subiam para mais de 3 Lacs quando dormimos. Assim definimos um nível em 3 Lacs e sempre que os valores ultrapassavam era enviada uma mensagem para o número escrito no código.
Diagrama de blocos do detector de sono baseado no sensor de ondas cerebrais MindFlex
Fig. 2: Diagrama de blocos do detector de sono baseado no sensor de ondas cerebrais MindFlex

Hardware: Encontre o diagrama de circuito anexo das conexões que precisamos estabelecer. Pegamos um pino do pino T do sensor mindflex e o conectamos ao pino Rx do nosso Arduino UNO. Além disso, causamos um curto-circuito no aterramento do Sensor e do UNO por um fio. Tome especial cuidado ao soldar qualquer coisa ao sensor Mindflex, pois os pinos estão muito próximos uns dos outros. Para GSM, usei o módulo SIM908 que possui GSM e GPS. Alimentei o módulo 908 com 12V e usei um sim junto com sua antena. O RX TX do 908 GSM é conectado aos pinos seriais do software do Arduino.

Programas: Vamos discutir a parte do software. Temos recebido valores do sensor para nosso arduino via pino T. Depois de recebermos o valor em algum ponto específico, podemos verificar se os valores estão acima de um determinado ponto ou não. Aqui no código a seguir, armazenei o valor da onda na variável num1 e depois comparei com 309999. Se os valores ultrapassarem, um dado serial é enviado para o GSM.
Serial.print(“Val = “);
Serial.println(num1);
se (num1>309999)
{Serial.Write(“ATD 77****0506;”);
}
Alguns pontos a serem observados:
O sensor costuma fornecer resistência de 60 a 80% devido à sua orientação e ao local onde o colocamos. Tente manter o sensor de metal exatamente acima do olho esquerdo. Também apliquei água salgada na testa para melhor conectividade com o sensor. A intensidade do sinal também é prejudicada dependendo de como soldamos o fio ao pino T. Tente blindar este fio e também certifique-se de que as pontas de prova de referência estejam conectadas corretamente. Certifique-se de que o módulo GSM esteja captando o sinal e que o sim tenha saldo suficiente para fazer uma chamada.
Se você tiver algum fio conectado ao pino EEG do sensor, desconecte esse fio, pois isso criará muito ruído nos valores do sensor. Experimente esta experiência e compartilhe sua experiência conosco. Fique ligado em nosso próximo experimento que visa tocar um alarme após atingir um certo nível de meditação.

Código-fonte do projeto

###

 

// Arduino Brain Library - Brain Serial Test
 // Description: Grabs brain data from the serial RX pin and sends CSV out over the TX pin (Half duplex.)// More info: https://github.com/kitschpatrol/Arduino-Brain-Library// Author: Eric Mika, 2010 revised in 2014 #include  // Set up the brain parser, pass it the hardware serial object you want to listen on.Brain brain(Serial);//char a(400);String a,a1;int v = 0;int z=0,output;uint32_t num=0;uint32_t num1=0;void setup {    // Start the hardware serial.    Serial.begin(9600);          pinMode(12, OUTPUT);     pinMode(11, OUTPUT);     digitalWrite(12,HIGH);} void loop {    // Expect packets about once per second.    // The .readCSV function returns a string (well, char*) listing the most recent brain data, in the following format:    // "signal strength, attention, meditation, delta, theta, low alpha, high alpha, low beta, high beta, low gamma, high gamma"        if (brain.update ) {       // Serial.println(brain.readErrors );       // Serial.println(brain.readCSV );        //sprintf(a, "%c",brain.readCSV );        a = brain.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.substring(v+1,z);        num = a1.toInt ;                 v = a.indexOf(',',z+1);                        a = a.substring(z+1,v);                 num1 = a.toInt ;                               if (num1>309999)       {            Serial.Write(“ATD  77****0506;”);        }           }} 
//Program to 

###

Diagramas de circuito

Circuito-Diagrama-MindFlex-Brainwave-Sensor-Sleep-Detector

Vídeo do projeto

Related Content

Back to blog

Leave a comment

Please note, comments need to be approved before they are published.