#define BLYNK_TEMPLATE_ID "TMPL6UNU8Kw3C"
#define BLYNK_TEMPLATE_NAME "Alarm Kebakaran"
#define BLYNK_AUTH_TOKEN "L2lgH-JHCdiIWBMsBz9-uqTRsi2SRjBz"
#define BLYNK_PRINT Serial
#define smokeS 32
#define led 18
#define bzr 5
#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>
char ssid[] = "Wokwi-GUEST";
char pass[] = "";
BlynkTimer timer;
const int DHT = 26;
#include <DHTesp.h>
DHTesp dhtS;
float suhu, kelembaban;
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
dhtS.setup(DHT, DHTesp::DHT22);
pinMode(smokeS, INPUT);
pinMode(bzr, OUTPUT);
pinMode(led, OUTPUT);
Blynk.begin(BLYNK_AUTH_TOKEN, ssid, pass);
// timer.setInterval(1000L, myTimerEvent);
}
void loop() {
Blynk.run();
timer.run();
int smokeLevel = analogRead(smokeS);
Blynk.virtualWrite(V2, smokeLevel);
TempAndHumidity data = dhtS.getTempAndHumidity();
suhu = data.temperature;
kelembaban = data.humidity;
Serial.println("Suhu: " + String(suhu, 1) + "C");
Serial.println("Kelembaban: " + String(kelembaban, 1) + "%");
Serial.print("Kadar Asap: ");
Serial.println(smokeLevel);
if (smokeLevel > 500)
{
tone(bzr, 200);
digitalWrite(led, HIGH);
Serial.print("Deteki Asap!");
Blynk.logEvent("Deteksi Asap");
} else {
noTone(bzr);
digitalWrite(led, LOW);
}
delay(1000);
Blynk.virtualWrite(V0, suhu);
Blynk.virtualWrite(V1, kelembaban);
}