// Nama : Hery Kurniawan
// NIM : 2011102441015
// Kelas : A
// Tugas : Prak IOT
#define BLYNK_TEMPLATE_ID "TMPL8C86LyUJ"
#define BLYNK_DEVICE_NAME "prak iot suhu dan kelembapan"
#define BLYNK_AUTH_TOKEN "o0GXVAPwj2ZWr8h6tIau4KBemam1syzC"
#define BLYNK_PRINT Serial
#include <WiFi.h>
#include <BlynkSimpleEsp32.h>
#include <DHT.h>
char auth[] = BLYNK_AUTH_TOKEN;
char ssid[] = "Wokwi-GUEST";
char pass[] = "";
BlynkTimer timer;
#define DHTPIN 15
#define DHTTYPE DHT22
DHT dht(DHTPIN, DHTTYPE);
int led_Hijau = 33;
int led_Kuning = 21;
int led_Biru = 25;
void sendSensor()
{
float h = dht.readHumidity();
float t = dht.readTemperature();
if (isnan(h) || isnan(t)) {
Serial.println("Gagal membaca sensor!");
return;
}
Blynk.virtualWrite(V0, t);
Blynk.virtualWrite(V1, h);
float hic = dht.computeHeatIndex(t, h, false);
if (hic < 20.0) {
digitalWrite(led_Hijau, LOW);
digitalWrite(led_Kuning, HIGH);
digitalWrite(led_Biru, LOW);
}
else
if (hic > 20.0 == hic < 24.5) {
digitalWrite(led_Hijau, HIGH);
digitalWrite(led_Kuning, LOW);
digitalWrite(led_Biru, LOW);
}
else if (hic > 24.5) {
digitalWrite(led_Hijau, LOW);
digitalWrite(led_Kuning, LOW);
digitalWrite(led_Biru, HIGH);
}
delay(500);
Serial.print("Suhu : ");
Serial.print(t);
Serial.print(" Kelembaban : ");
Serial.println(h);
Serial.println("");
}
void setup()
{
Serial.begin(115200);
pinMode(led_Hijau, OUTPUT);
pinMode(led_Kuning, OUTPUT);
pinMode(led_Biru, OUTPUT);
Blynk.begin(auth, ssid, pass);
dht.begin();
timer.setInterval(100L, sendSensor);
}
void loop()
{
Blynk.run();
timer.run();
}