Introduction: Nodemcu Esp8266 + PIR + Blynk

Nodemcu Esp8266 + PIR + Blynk

LABSTI - FIA - USMP

Step 1: Materiales

- Nodemcu esp8266

- Sensor PIR

- Aplicativo móvil Blynk

Step 2: Diseño

Step 3: Configuración Del Arduino IDE

El "Upload Speed" de la configuración del NodeMCU debe ser igual al "baudio" del monitor serie.

Step 4: Configuración Del Blynk

Requisitos:

- Descargar el aplicativo móvil "Blynk"

Pasos:

  1. Seleccionar la opción "+ New Project", para crear un nuevo proyecto.
  2. Seleccionar el dispositivo (ESP8266), agregar un nombre y seleccionar el botón "Create".
  3. Ingresar al proyecto recién creado y seleccionar la opción "(+)".
  4. Seleccionar la opción "Button", para crear un nuevo botón en el proyecto.
  5. Configurar el botón recién creado:
    - Ingresar un nombre al botón.
    - Ingresar al "OUTPUT" y seleccionar "V0".
    - Cambiar la opción "Mode" a "Switch".
  6. Seleccionar la opción "Notification".
  7. Configurar las notificaciones. Dejar por predeterminado.
  8. Ingresar a la opción de "tuerca" para validar el dispositivo.
  9. Verificar el "Auth Token" sea el mismo que se ingreso en el código.

El Auth Token se obtiene al crear un nuevo proyecto la cual lo recibiremos por nuestro correo electrónico asociado.

Step 5: Programación

<p>#include <ESP8266WiFi.h></p><p>#define BLYNK_PRINT Serial       </p><p>#include <BlynkSimpleEsp8266.h>
char auth[] = "Tu Auth Token";      // Auth Token del app móvil Blynk</p><p>/* Credenciales de WiFi */
char ssid[] = "Tu red";        // nombre de la red wifi
char pass[] = "Tu contraseña";     // contraseña de la red wifi</p><p>/* HC-SR501 Motion Detector */
#define pirPin 5                // Input for HC-S501
int pirValue;                  
int pinValue;                  </p><p>BLYNK_WRITE(V0)
{
 pinValue = param.asInt();    
} </p><p>void setup()
  {
    Serial.begin(115200);
    delay(10);
    Blynk.begin(auth, ssid, pass);
    pinMode(pirPin, INPUT);
  }</p><p>void loop()
  {
     if (pinValue == HIGH)    
      {
        getPirValue();
      }
    Blynk.run();
  }</p><p>void getPirValue(void)        
  {
   pirValue = digitalRead(pirPin);
    if (pirValue) 
     { 
       Serial.println("Motion detected");
       Blynk.notify("Motion detected");  
     }
  }</p>

Step 6: Resultados