IoT: Sensor de movimento com o NodeMCU e BLYNK

 

.

Step 1: Principais componentes

  • Resistor (1K, 2.2K and 330ohm)
  • LED
  • Breadboard
  • Cables

.

Step 2: O HC-SR501 “Passive Infrared (PIR) Motion Sensor”

Este módulo de sensor de movimento utiliza-se do sensor passivo de sinal infravermelho  LHI778 e o do circuito integrado BISS0001 para controlar como o “movimento deve ser detectado”.

O módulo possui sensibilidade ajustável que permite uma faixa de detecção de movimento de 3 a 7 metros.

O módulo também inclui ajustes de atraso de tempo e seleção de gatilho que permitem ajustes finos dentro de sua aplicação.

fkscpzbivo85exc-largehttps://mjrobot.files.wordpress.com/2016/12/fkscpzbivo85exc-large.jpg?w=150 150w" sizes="(max-width: 300px) 85vw, 300px" />

f19wasdivo85ey1-largehttps://mjrobot.files.wordpress.com/2016/12/f19wasdivo85ey1-large.jpg?w=150 150w" sizes="(max-width: 300px) 85vw, 300px" />

 

O link abaixo nos fornece mais detalhes do funcionamanto do sensor:

Arduino HC-SR501 Motion Sensor Tutorial

.

Step 3: O HW

O HW é muito simples. O sensor tem 3 pinos (+ 5V, GND e Saída).

É importante lembrar que a saída do HC-SR501 gera um sinal lógico de + 5V (ALTO) ou 0V (LOW), o qual NÃO É COMPATÍVEL com os níveis de entrada do NodeMCU, que funciona com o nível 3.3V.

Assim, você precisará de um divisor de tensão para converter os níveis de sinal (veja o diagrama elétrico acima).

  • Saída do HC-SR501 ==> para a entrada do divisor de tensão
  • NodeMCU Pin D1 (GPIO 5) ==> para o ponto médio do Divisor de Tensão

Também incluíremos um LED no pino D7 (GPIO13), para uma visualização local.

.

Step 4: Testando o sensor

Primeiramente faremos um programinha simples para testar e calibrar o sensor.

Carregue o código abaixo no Arduino IDE:

/* HC-SR501 Motion Detector */
#define ledPin D7 // Red LED
#define pirPin D1 // Input for HC-SR501
int pirValue; // variable to store read PIR Value
void setup()
{
  pinMode(ledPin, OUTPUT);
  pinMode(pirPin, INPUT);
  digitalWrite(ledPin, LOW);
}
void loop()
{
  pirValue = digitalRead(pirPin);
  digitalWrite(ledPin, pirValue);
}



Ao fazer um movimento na frente do sensor, você verá o LED vermelho acender. Você poderá usar o código acima para ajustes no sensor, se necessário.

Se você não sabe como preparar o IDE do arduino para trabalhar com o NodeMCU, por favor de uma olhadinha em meu tutorial:

Do “blink” ao BLYNK, uma viagem pela “Internet das coisas” nas asas...

.

Step 5: Incluindo o BLYNK

Siga os Passos abaixo::

  • Crie um  New Project.
  • Defina um nome para o projeto (em meu caso: “Motion Detector“)

  • Selecione NodeMCU como HW Model
  • Copie o  AUTH TOKEN para ser adicionado ao seu código do IDE (o melhor é enviar-lo para seu email).
  • Inclua o “Widget”:  Push Notification.

  • Pressione “Play” (o triangulo no canto superior direito)

Naturalmante o appicativo Blynk nesse ponto irá informar que o NodeMCU está off-line. Antes de rodar o aplicativo Blynk, o codigo deve ser carregado e iniciado no módulo NodeMCU.

Abaixo o código completo para ser executado no Arduino IDE (não se esqueça de entrar com seus dados):

Assim que o código é carregado e executado, verifique a aplicação BLYNK, a qual também deverá estar funcionando.
Faça um movimento na frente do sensor, você deverá receber uma mensagem em seu celular como a mostrada abaixo:


.

Step 6: Conclusão

Como sempre, espero que este projeto ajude outras pessoas a encontrar seu caminho no apaixonante mundo da eletrônica e do IoT!

Um abraço e até o próximo post!

"Saludos desde el sur del mundo!" ;-)

Obrigado

Marcelo

Exibições: 2418

Comentar

Você precisa ser um membro de Laboratorio de Garagem (arduino, eletrônica, robotica, hacking) para adicionar comentários!

Entrar em Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)

Comentário de José Gustavo Abreu Murta em 5 dezembro 2016 às 11:50

OPa ! Vai entrar para o meu time ? De aposentados ?

Comentário de Marcelo Rovai em 5 dezembro 2016 às 10:18

Bom dia, Murta.

Estes 3 projetos foram minhas primeiras experiências com o NodeMCU e com o Blynk. Mas pelo que vi até agora, o resultado foi muito bom. Deixei o sistema ligado por dias e sempre tive retorno dos sensores. O NodeMCU tem limitação de entradas analógicas (somente uma), quando comparado com o UNO por exemplo, fora isso sem problemas. Tem bastante digitais. Eu fiz o primeiro projeto com 3 sensores e todas as informações "subiam" ao Blynk sem problemas. O Blynk me surpreendeu por sua estabilidade e precisão. Para um alarme residencial "pequeno", o NodeMCU daria conta do recado. Em janeiro com mais tempo (quando estarei deixando a vida de executivo... ;-) vou procurar fazer umas experiências mais profundas nessa area (Alarmes/IoT).

Abração

Marcelo

Comentário de José Gustavo Abreu Murta em 5 dezembro 2016 às 8:31

Bom dia Marcelo, dá para usar vários sensores, não dá ?
Para fazer um alarme residencial, seria confiável ?
Obrigado e abraços

Gustavo

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço