#define BLYNK_TEMPLATE_ID "TMPL2QQ2sRnTc"
#define BLYNK_TEMPLATE_NAME "DHT Automação"
#define BLYNK_AUTH_TOKEN "n-4X6_uhuMreXbpy-RunDAAyb3qvZ3HH"
#include <DHT.h>
#include <DHTesp.h>
#include <BlynkSimpleEsp32.h>
char auth[] = BLYNK_AUTH_TOKEN; // Enter your Blynk auth token here
char ssid[] = "Wokwi-GUEST"; // Enter your WiFi SSID here
char pass[] = ""; // Enter your WiFi password here
#define DHTPIN 15 // Pin where the DHT11 is connected
#define DHTTYPE DHT22 // DHT 11 sensor type
#define LEDTEMPERATURE V2
#define LEDHUMIDITY V3
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(115000);
Blynk.begin(auth, ssid, pass);
dht.begin();
}
void loop() {
Blynk.run();
float temperature = dht.readTemperature();
float humidity = dht.readHumidity();
if (isnan(temperature) || isnan(humidity)) {
Serial.println("Failed to read from DHT sensor!");
return;
}
Serial.print("Temperature: ");
Serial.print(temperature);
Serial.print("°C, Humidity: ");
Serial.print(humidity);
Serial.println("%");
if (temperature > 30) {
Serial.print("\n!!!ALTA TEMPERATURA!!!\n");
Blynk.virtualWrite(LEDTEMPERATURE, 255);
Blynk.logEvent("alerta_temperatura","!!!ALTA TEMPERATURA!!!");
} else {
Blynk.virtualWrite(LEDTEMPERATURE, 0);
}
if (humidity > 60) {
Serial.print("\n!!!ALTA UMIDADE!!!\n");
Blynk.virtualWrite(LEDHUMIDITY, 255);
Blynk.logEvent("alerta_humidade","!!!ALTA HUMIDADE!!!");
} else {
Blynk.virtualWrite(LEDHUMIDITY, 0);
}
if(temperature < 15){
Serial.print("\n!!!BAIXA TEMPERATURA!!!\n");
Blynk.virtualWrite(LEDTEMPERATURE, 255);
Blynk.logEvent("alerta_temperatura","!!!BAIXA TEMPERATURA!!!");
} else {
Blynk.virtualWrite(LEDTEMPERATURE, 0);
}
if(humidity < 40){
Serial.print("\n!!!BAIXA HUMIDADE!!!\n");
Blynk.virtualWrite(LEDHUMIDITY, 255);
Blynk.logEvent("alerta_humidade","!!!BAIXA HUMIDADE!!!");
} else {
Blynk.virtualWrite(LEDHUMIDITY, 0);
}
Blynk.virtualWrite(V0, temperature); // Send temperature value to Blynk App
Blynk.virtualWrite(V1, humidity); // Send humidity value to Blynk App
delay(500); // Wait for repeat code
}