Skip to content

Latest commit

 

History

History
173 lines (114 loc) · 6.55 KB

iot_home_environment.rst

File metadata and controls

173 lines (114 loc) · 6.55 KB

Note

¡Hola, bienvenido a la Comunidad de Aficionados a Raspberry Pi, Arduino y ESP32 de SunFounder en Facebook! Profundiza en Raspberry Pi, Arduino y ESP32 con otros entusiastas.

¿Por qué unirse?

  • Soporte de expertos: Resuelve problemas posventa y desafíos técnicos con ayuda de nuestra comunidad y equipo.
  • Aprender y compartir: Intercambia consejos y tutoriales para mejorar tus habilidades.
  • Vistas previas exclusivas: Obtén acceso anticipado a anuncios de nuevos productos y avances.
  • Descuentos especiales: Disfruta de descuentos exclusivos en nuestros productos más nuevos.
  • Promociones festivas y sorteos: Participa en sorteos y promociones de fiestas.

👉 ¿Listo para explorar y crear con nosotros? Haz clic en [|link_sf_facebook|] y únete hoy!

5. Monitoreo del Ambiente Doméstico

En este capítulo, utilizaremos Blynk para crear un monitor de ambiente doméstico. Puedes medir la temperatura, humedad e intensidad lumínica de una habitación usando el DHT11 y un fotoresistor. Al enviar estos valores a Blynk, podrás conocer el estado del ambiente de tu hogar a través de internet.

Componentes Necesarios

Para este proyecto, necesitamos los siguientes componentes.

Es definitivamente conveniente comprar un kit completo, aquí está el enlace:

Nombre ELEMENTOS EN ESTE KIT ENLACE
3 in 1 Starter Kit 380+ |link_3IN1_kit|

También puedes comprarlos por separado en los enlaces a continuación.

INTRODUCCIÓN DEL COMPONENTE ENLACE DE COMPRA
:ref:`cpn_uno` |link_Uno_R3_buy|
:ref:`cpn_breadboard` |link_breadboard_buy|
:ref:`cpn_esp8266` |link_esp8266_buy|
:ref:`cpn_wires` |link_wires_buy|
:ref:`cpn_resistor` |link_resistor_buy|
:ref:`cpn_photoresistor` |link_photoresistor_buy|
:ref:`cpn_dht11` -

1. Construir el Circuito

Note

El módulo ESP8266 requiere una alta corriente para proporcionar un entorno operativo estable, así que asegúrate de que la batería de 9V esté conectada.

img/wiring_dht11.jpg

2. Editar el Tablero de Mandos

  1. Para registrar valores de humedad, crea un Datastream de tipo Virtual Pin en la página de Datastream. Configura el TIPO DE DATO a Double y el MIN y MAX a 0 y 100. También establece las unidades a Percentage, %.

    img/sp220610_145748.png
  2. Luego crea un Datastream de tipo Virtual Pin para registrar la temperatura. Configura el TIPO DE DATO a Double, MIN y MAX a -30 y 50, y las unidades a Celsius, °C.

    img/sp220610_145811.png
  3. También crea un Datastream de tipo Virtual Pin para registrar la intensidad lumínica. Utiliza el tipo de dato predeterminado - Integer, con MIN y MAX configurados a 0 y 1024.

    img/sp220610_145834.png
  4. Ve a la página de Wed Dashboard, arrastra dos widgets Label y configura sus flujos de datos a V4 y V5 respectivamente, y arrastra un widget Gauge y configura el flujo de datos a V6. También en la configuración del widget, puedes activar Cambiar color según el valor y seleccionar el color apropiado para que el widget se vea mejor y más intuitivo.

img/sp220610_150400.png

3. Ejecutar el Código

  1. Abre el archivo 5.home_environment_monitoring.ino en la ruta 3in1-kit\iot_project\5.home_environment_monitoring, o copia este código en Arduino IDE.

    Note

    • Aquí se utiliza la DHT sensor library, puedes instalarla desde el Library Manager.

      ../img/lib_dht11.png
  2. Sustituye el Template ID, Device Name y Auth Token por los tuyos. También necesitas ingresar el ssid y la password del WiFi que estás utilizando. Para tutoriales detallados, por favor consulta :ref:`connect_blynk`.

  3. Tras seleccionar la placa y puerto correctos, haz clic en el botón Upoad.

  4. Abre el monitor Serial(configura la tasa de baudios a 115200) y espera a que aparezca un aviso como una conexión exitosa.

    img/2_ready.png

    Note

    Si aparece el mensaje ESP is not responding al conectar, sigue estos pasos.

    • Asegúrate de que la batería de 9V esté conectada.
    • Restablece el módulo ESP8266 conectando el pin RST a GND durante 1 segundo, luego desenchúfalo.
    • Presiona el botón de reset en la placa R3.

    A veces, puede ser necesario repetir la operación anterior de 3 a 5 veces, por favor ten paciencia.

  5. Ahora, verás la temperatura ambiental actual, la humedad y la intensidad de luz en Blynk.

    img/sp220610_150400.png
  6. Si quieres usar Blynk en dispositivos móviles, consulta :ref:`blynk_mobile`.

    img/mobile_home.jpg

¿Cómo funciona?

Estas dos funciones se utilizan para obtener la temperatura, humedad e intensidad lumínica de la habitación.

int readLight(){
    return analogRead(lightPin);
}

bool readDHT() {

    // Reading temperature or humidity takes about 250 milliseconds!
    // Sensor readings may also be up to 2 seconds 'old' (it's a very slow sensor)
    humidity = dht.readHumidity();
    // Read temperature as Celsius (the default)
    temperature = dht.readTemperature();

    // Check if any reads failed and exit early (to try again).
    if (isnan(humidity) || isnan(temperature)) {
        Serial.println("Failed to read from DHT sensor!");
        return false;
    }
    return true;
}

Con el Timer de Blynk, la temperatura ambiente, humedad e intensidad de luz se obtienen cada segundo y se envían al flujo de datos en Blynk Cloud, desde donde los widgets muestran los datos.

void myTimerEvent()
{
    bool chk = readDHT();
    int light = readLight();
    if(chk){
        Blynk.virtualWrite(V4,humidity);
        Blynk.virtualWrite(V5,temperature);
    }
    Blynk.virtualWrite(V6,light);
}