#include <WiFi.h>
#include <DHT.h>
// Nombre de la red Wi-Fi de Wokwi
const char* ssid = "Wokwi-GUEST";
// La red Wokwi-GUEST no utiliza contraseña
const char* password = "";
// Definimos el pin conectado al DHT22
#define DHT_PIN 4
// Indicamos el tipo de sensor
#define DHT_TYPE DHT22
// Creamos el objeto que representa al sensor
DHT dht(DHT_PIN, DHT_TYPE);
void setup() {
// Iniciamos la comunicación serial
Serial.begin(115200);
delay(1000);
Serial.println();
Serial.println("=== Practica 3: Conexion WiFi ===");
// Mostramos la red a la que intentaremos conectarnos
Serial.print("Conectando a: ");
Serial.println(ssid);
// Iniciamos la conexión Wi-Fi
// Configuramos la ESP32 en modo estación
WiFi.mode(WIFI_STA);
// Desactivamos el ahorro de energía Wi-Fi
WiFi.setSleep(false);
// Iniciamos la conexión Wi-Fi
WiFi.begin("Wokwi-GUEST", "", 6);
// Esperamos hasta 15 segundos para establecer conexión
unsigned long tiempoInicio = millis();
while (WiFi.status() != WL_CONNECTED &&
millis() - tiempoInicio < 15000) {
delay(500);
Serial.print(".");
}
Serial.println();
// Verificamos si se logró conectar
if (WiFi.status() == WL_CONNECTED) {
Serial.println("WiFi conectado correctamente");
// Mostramos información de la conexión
Serial.print("SSID: ");
Serial.println(WiFi.SSID());
Serial.print("Direccion IP: ");
Serial.println(WiFi.localIP());
// Mostramos la dirección MAC
Serial.print("Direccion MAC: ");
Serial.println(WiFi.macAddress());
// Mostramos la intensidad de señal
Serial.print("Intensidad de señal: ");
Serial.print(WiFi.RSSI());
Serial.println(" dBm");
} else {
Serial.println("No se pudo conectar a WiFi");
}
// Iniciamos el sensor DHT22
dht.begin();
Serial.println("Sistema de monitoreo DHT iniciado");
}
void loop() {
// Verificamos el estado de la conexión Wi-Fi
if (WiFi.status() == WL_CONNECTED) {
Serial.println("WiFi: CONECTADO");
} else {
Serial.println("WiFi: DESCONECTADO");
}
// Leemos humedad relativa
float humedad = dht.readHumidity();
// Leemos temperatura en grados Celsius
float temperatura = dht.readTemperature();
// Verificamos si ocurrió un error de lectura
if (isnan(humedad) || isnan(temperatura)) {
Serial.println("Error al leer el sensor DHT22");
} else {
// Mostramos la temperatura
Serial.print("Temperatura: ");
Serial.print(temperatura);
Serial.println(" °C");
// Mostramos la humedad
Serial.print("Humedad: ");
Serial.print(humedad);
Serial.println(" %");
}
Serial.println("--------------------");
// Esperamos cinco segundos antes de la siguiente lectura
delay(5000);
}
Loading
esp32-devkit-c-v4
esp32-devkit-c-v4