Nota: o artigo foi escrito apenas para fins informativos e não constitui uma solicitação para repetir tais experimentos em casa devido ao risco potencial de danos à saúde física (se baterias e fotorresistores forem usados em dispositivos de íons de lítio).
Bom dia, queridos habrozuery e habrozhet) Este é o meu primeiro artigo sério sobre o Habré; portanto, julgue o mais estritamente possível, prometo trabalhar com estilo e conteúdo.
Brevemente sobre você. Pela educação - fabricante de instrumentos, mestre. Profissão: empreendedor, sou co-fundador da rede Robocor de clubes de robótica infantil. Durante seus estudos na universidade, ele se envolveu em vários tipos de pesquisa no campo de equipamentos de medição médica.
Muito tempo vou falar sobre esses desenvolvimentos, mas nem todas as mãos chegaram ...
Background. Desde a infância, muitas vezes vi sonhos muito vívidos e tramados. Tão enredo e vívido que eu não era preguiçoso desde os sete anos de idade com uma tenacidade invejável de manter um diário de sonhos. E então, uma vez, em 2014, um livro curioso intitulado "Dream Hackers" caiu em minhas mãos. Preciso dizer o quanto eu estava interessado no fenômeno em torno do qual a narrativa foi construída? Especialmente ao considerar um diário que excedeu o volume de 2 cadernos de 96 folhas cada e, desde 2012, ele é mantido em um computador.
Uma rápida pesquisa no Google, após significativa filtragem anti-esotérica, levou-me à pesquisa científica sobre sabzh. Como se viu, o início do estudo da OS na primeira metade do século 20 foi realizado por um psicólogo holandês, Frederick Van Eden. Seu artigo, "Um Estudo dos Sonhos" (Proceedings of the Society for Psychical Research, Volume 26, p. 431), destinado a classificar sonhos, continha o termo "sonhos lúcidos", que literalmente se traduz como "sonhos claros". Até onde eu sei, essa foi a primeira menção desse fenômeno na comunidade científica.
Os anos se passaram, mas somente em 1975, o cientista Ket Hearne (Keith Hearne, laboratório de sono da Universidade de Hull (Inglaterra)) conduziu um experimento que comprovou cientificamente a existência do sistema operacional. Como resultado do experimento, Alan Worley experimental mostrou movimentos oculares conscientes e pré-planejados quando, de acordo com todas as indicações dos instrumentos, ele estava em estado de sono. Este experimento foi repetido posteriormente pelo cientista Stephen Laberge, da Universidade de Stanford.
Os resultados do experimento tornaram-se amplamente conhecidos, pois o Laberge fez uma enorme contribuição para a popularização desse tópico. Este cientista também propôs o conceito de um dispositivo chamado "indutor de sonhos lúcidos" que permitiria a qualquer pessoa, mesmo sem uma longa sessão de treinamento, entrar no estado do SO ...
Depois de ler sobre o indutor do SO, não consegui mais dormir em paz. A alma do arduino foi despertada por uma incrível explosão de entusiasmo! O fato é que, naquela época, eu já havia lido sobre todos os tipos de práticas que me permitiam tomar consciência de um sonho, e todas elas, de maneira alguma, produziam resultados sem muito treinamento e trabalho comigo mesmo. Um sonho de dirigir uma caçada!)
Tendo estudado toda a variedade de indutores de SO, dos quais o mercado estava cheio, e também a base caseira, da qual também havia muito na Web, elaborei um padrão cuja essência foi reduzida à seguinte redação: "Não faça Remee, mas mais perto do Dreamstalker, mas apenas mais conveniente". Os requisitos técnicos se resumiam a quatro pontos:
- O dispositivo deve determinar com segurança a fase do sono REM (e não "adivinhar o NE555", como foi, a julgar pelas descrições, nas versões anteriores da máscara Remee);
- O dispositivo deve ser compacto e não deve interferir no processo de suspensão;
- O dispositivo deve ser capaz de coletar e exibir informações sobre o processo de suspensão para realizar pesquisas reais e não apenas reproduzir no sistema operacional;
- O dispositivo deve ser seguro de usar.
Esses são os requisitos ... Nekhilo para alguém que na época mal tocava no básico de trabalhar com amplificadores operacionais e geralmente pouco versado em circuitos) No entanto, o "jovem verde" e eu começamos a desenvolver.
Para começar, decidi ficar intrigado com a pergunta mais simples: que tipo de parâmetros fisiológicos mudam durante o sono? O resultado da pesquisa foi uma tabela (se alguém puder adicionar - escrever nos comentários, ficarei muito feliz):

Um sólido conhecimento do curso escolar de biologia e física, juntamente com habilidades de programação medíocres em C ++ e LabVIEW, além de possuir algumas informações do campo da tecnologia de medição, permitiu-me desenvolver um diagrama de blocos do dispositivo. Parecia algo assim:

A lógica era a seguinte. Para não bloquear o laboratório de medição na testa de uma pessoa (e não se tornar uma máscara Dreamstalker funcional, mas terrivelmente desconfortável), todos os blocos de medição da máscara devem ser removidos. Além disso, os esquemas encontrados de oculógrafos ópticos eram muito complexos ou extremamente pesados. Mas e quanto a registrar um oculograma, você pergunta? De fato, os movimentos dos olhos em um sonho são o sinal mais confiável da fase do sono REM!
Bem, então eu decidi que, como o batimento cardíaco também está mudando de alguma forma lá, será possível encontrar a fase de sono REM por ele. Assim, uma certa pulseira apareceu no dispositivo, com um sensor de pulso a bordo. E apenas a unidade de rádio e um punhado de LEDs permaneceram na máscara, que deveria ter sido ativada por um comando de um computador.
A questão lógica é: por que existe um computador e por que era impossível enviar imediatamente comandos do bracelete quando ele detectava as alterações necessárias na freqüência cardíaca? Em primeiro lugar, não sabia quais alterações foram consideradas "necessárias". Além disso, naquela época, ele tinha pouca ideia de como é um diagrama de frequência cardíaca humano, qual é um cardiointervalograma e variabilidade da frequência cardíaca ... Em segundo lugar, é muito mais fácil e mais claro escrever diferentes algoritmos complexos em um ambiente de desenvolvimento gráfico, e a busca pela fase de sono desejada por batimento cardíaco deve claramente algoritmos simples não se aplicaram e, portanto, o LabVIEW para ajudar.
Circuitry
Máscara:
- Plataforma Micro Pro do Arduino (pedra ATmega32U4)
- LEDs WS2812B
- Módulo de rádio padrão com frequência portadora de 433 MHz
- Bateria de iões de lítio de 200 mAh
- O módulo de carregamento para a bateria no chip TP4056
Em ordem de escolha dos componentes. A plataforma Micro Pro foi escolhida devido à sua compactação (devido à falta de CH3400 e à presença de PLL e USB integrados, mas isso é letra), além de baixo consumo de energia e apenas uma aparência agradável.
Escolhi LEDs RGB endereçáveis porque queria ver se a frequência de ocorrências no sistema operacional se correlacionaria com a cor do efeito estimulante. Eu sei o que parece mais ou menos, mas quem sabe, certo?)
Eu escolhi o módulo de 433 MHz por dois motivos: porque ainda não havia tentado mais nada com a tecnologia sem fio e porque não sabia que porco enorme esse módulo colocaria para mim ... Quando se tratava de testes, descobriu-se que uma antena meticulosamente medida costurado ao longo do contorno da máscara, estando perto do corpo, em princípio, não pode funcionar. Como expliquei no grupo Radio Amateur, onde às vezes faço perguntas, porque o corpo humano tem uma certa capacidade, que é muito significativa, e por isso a frequência do receptor se perde, porque possui um circuito oscilante e um extra. capacidade interfere com ele. Não entendo tudo isso, não quero desonrar, apenas direi que naquele momento não consegui realizar experimentos com a máscara.
Eu escolhi a bateria devido à sua compacidade, sacrificando um requisito de segurança: uma célula de íon-lítio montada na ponte do nariz, embora tivesse uma capacidade pequena, poderia causar danos aos olhos durante uma explosão. Portanto, como pude, empacotei em plástico do lado adjacente à face e deixei o lado oposto aberto. A compactação do design não foi muito afetada, mas acrescentou calma, embora irracional.
Com o módulo de carregamento, tudo é simples: é quase o padrão da indústria para todos os tipos de produtos caseiros, e aqui eu não estava preocupado com nada.
Pulseira:
- Arduino Nano Platform
- Sensor óptico de frequência cardíaca caseiro (falarei mais sobre isso mais tarde)
- Módulo transmissor de rádio padrão (mesmos 433 MHz)
- Suporte para quatro AA
- 4 baterias Ni-Mh a 2700 mAh cada
Com uma pulseira, as coisas estavam melhores. Eu coletei a primeira versão diretamente na placa de ensaio e a antena do módulo transmissor não estava diretamente sobre o corpo, portanto tudo funcionou como um relógio. A única coisa que merece atenção na primeira versão da pulseira é o sensor de frequência cardíaca, que era quase o meu maior problema, desde que nadei na eletrônica analógica.
O ponto de apoio foi um artigo muito bom sobre o que é a fotopletismografia e como são organizadas diferentes pulseiras para fitness. Depois de revisar a essência da operação dos sensores ópticos de frequência cardíaca, comecei a procurar soluções de circuito prontas. Como resultado, decidi-me por esse esquema, que funcionava quase imediatamente mesmo na tábua de pão. Não procurei um acoplador óptico de canal aberto, recomendado pelo autor do artigo, e apenas rasguei o TCRT5000 fora do sensor de linha, que estava acidentalmente em casa. Troquei o amplificador operacional pelo LM358 mais comum.

O sensor foi feito na forma de um anel usado na ponta do dedo. O TCRT5000 pressionou bastante contra a pele, e o sinal do fototransistor foi amplificado e transmitido através dos fios ao microcontrolador, onde foi digitalizado e enviado às autoridades.
Unidade de transmissão:
- Arduino Nano Platform
- Módulo de rádio padrão com frequência portadora de 433 MHz
- Módulo transmissor de rádio padrão (mesmos 433 MHz)
Tudo é brega aqui: quando a pulseira envia dados, ela é recebida pelo receptor e, através da porta COM, eles os enviam para o computador, onde são recebidos pelas patas carinhosas do meu VI auto-escrito. A primeira versão do instrumento virtual plotou estupidamente as leituras do ADC, e não tentou analisar nada. Posteriormente, quando ficou mais ou menos claro que era necessário analisar não o pulsograma, mas o intervalo que foi construído a partir dele e os padrões que freqüentemente ocorrem na fase do BDG foram detectados, os dados começaram a ser enviados de VI para a máscara, emitindo um sinal para ativar a estimulação. Mas até este ponto ainda estava muito longe))
A primeira noite com um monitor de batimentos cardíacos revelou imediatamente vários fatos desagradáveis.
Primeiro: devido ao fato de que, em um sonho, o fluxo sanguíneo no braço muda (por exemplo, quando flexiono o braço e fico nessa posição por um longo tempo), o sensor perde o sinal e o gráfico fica ilegível. Ajustar automaticamente o ganho, então eu ainda não conseguia imaginar como.
Segundo: o sensor pode perder o sinal do nada, e o ruído de frequência muito baixa, com uma amplitude muito grande, é sobreposto ao próprio gráfico, pelo que às vezes desaparece. Abaixo está uma tela de leituras de uma das primeiras (mas não a primeira) versões de trabalho do dispositivo virtual. O gráfico do pulsograma (vermelho) está de cabeça para baixo e o ruído de baixa frequência pode ser visto nos picos mais baixos.

O terceiro fato: dormir com uma tábua de pão e quatro baterias na mão não é totalmente impossível, mas extremamente desconfortável. Como ficou no começo, você pode ver abaixo (infelizmente. Além das fotos do diploma, nada foi deixado nesse esboço)))

"Precisamos de melhorias sérias!" - olhando os dados amordaçados, com sopa de repolho de popa, concluí. E antes de tudo, decidi terminar o sensor, necessário antes de tudo continuar trabalhando no dispositivo.
Depois de reler o artigo sobre fotopletismógrafos, percebi o seguinte: mas por que, de fato,
enrolei um cabo em volta do meu braço para usar um acoplador óptico de infravermelho se podia usar outra cor? Um gráfico que ilustra a dependência do coeficiente de absorção de luz da hemoglobina no comprimento de onda foi retirado do mesmo artigo.

Com base no gráfico, escolhi o verde como o mais absorvido pela hemoglobina nos dois estados (oxigenado e insaturado). Portanto, o sensor se tornará mais sensível precisamente a uma mudança no volume de sangue e não à saturação de oxigênio (suspeitei que devia a interferência de baixa frequência ao fato de que a sensibilidade do sensor de alcance IR muda significativamente devido à saturação de oxigênio).
Sob o spoiler: Gostaria de saber se é possível monitorar a frequência respiratória apenas por esse ruído de baixa frequência.
E tudo ficaria bem, mas gag: o que escolher como um elemento sensível? Após uma breve pesquisa, encontrei uma opção barata - um fotorresistor. As vantagens eram óbvias: o pico espectral dos modelos mais comuns é de cerca de 500 nm, é barato e sua inércia, que geralmente é reprovada, não é significativa neste caso - o batimento cardíaco em si não é muito rápido.
Das desvantagens, observei apenas que os fotorresistores contêm cádmio e chumbo (e é por isso que foram completamente proibidos em alguns países), e não é muito bom usá-los em equipamentos que contatam diretamente o corpo. Mas - a ciência requer sacrifício, e estraguei a segunda versão do sensor: em dois LEDs endereçáveis (o comprimento de onda da cor verde era, de acordo com a folha de dados, exatamente o que você precisava). Uma vantagem foi o fato de que agora era possível alterar programaticamente o brilho, ajustando a sensibilidade, embora dentro de pequenos limites.

Como você pode ver, o esquema de filtragem e ampliação analfabeto (mas que funciona minimamente) permaneceu em vigor, e o sensor agora tem até dois fios para comunicação com o MK.
Quando o layout foi montado, os testes mostraram uma melhoria significativa nos resultados da medição. Embora o sensor não funcione "para reflexão" (eu queria transformar a pulseira em uma pulseira de pleno direito, mas não deu certo - o sinal refletido era muito fraco), mas funcionou muito bem na luz. A interferência de baixa frequência também desapareceu, o que acabou com a perda de sinal.
O desenvolvimento do dispositivo entrou em um novo estágio - agora todos os esforços foram direcionados à coleta de dados e à tentativa de encontrar a fase de sono desejada entre eles.
Mas mais sobre isso no próximo artigo, mas agora é a hora, mas você não pode interromper o modo de suspensão)
PS Se for da vontade dos leitores, postarei em acesso aberto todos os esquemas e códigos-fonte do projeto, para que os bytes não fiquem cobertos de poeira no meu disco rígido.
Todos os tipos de utilidade:
- O livro "Habilidades de um sonho claro", que é a coleção mais abrangente de informações científicas sobre o assunto;- o produto caseiro de código aberto mais legal que eu já vi- Uma seleção legal de instrumentos virtuais para analisar sinais biomédicos