#define BLYNK_TEMPLATE_ID "TMPL6Z-cRmHnz"
#define BLYNK_TEMPLATE_NAME "IOT"
#define BLYNK_AUTH_TOKEN "3XkK6xirg815jxIhNEjcooXjnEB0aV97"
#include <Arduino.h>
#include <DHT.h>
#include <WiFi.h>
#include <BlynkSimpleEsp32.h>
#define DHT_PIN 2
#define LED_PIN 4
#define BUZZER_PIN 5
#define BUTTON_PIN 14
DHT dht(DHT_PIN, DHT22);
char auth[] = "3XkK6xirg815jxIhNEjcooXjnEB0aV97";
char ssid[] = "Wokwi-GUEST";
char pass[] = "";
bool ledState = false;
bool buzzerState = false;
bool buttonState = false;
void setup() {
Serial.begin(115200);
Blynk.begin(auth, ssid, pass);
pinMode(LED_PIN, OUTPUT);
pinMode(BUZZER_PIN, OUTPUT);
pinMode(BUTTON_PIN, INPUT_PULLUP);
dht.begin();
}
void loop() {
Blynk.run();
float temperature = dht.readTemperature();
delay(1000);
Blynk.virtualWrite(V1, temperature);
Serial.println("nhiet do = ");;
Serial.print(temperature);
if (temperature > 70) {
ledState = !ledState;
buzzerState = true;
Blynk.virtualWrite(V0,"có cháy, mọi người sơ tán");
} else if (temperature > 50) {
ledState = true;
buzzerState = false;
Blynk.virtualWrite(V0,"nhiệt độ đang cao, nguy hiểm");
} else {
ledState = false;
buzzerState = false;
Blynk.virtualWrite(V0,"nhiệt độ bình thường");
}
digitalWrite(LED_PIN, ledState);
if (buzzerState) {
tone(BUZZER_PIN, 1000);
} else {
noTone(BUZZER_PIN);
}
if (digitalRead(BUTTON_PIN) == LOW) {
ledState = !ledState;
buzzerState = true;
}
}