#define BLYNK_TEMPLATE_ID "TMPL6UOTgCUid"
#define BLYNK_TEMPLATE_NAME "KASUS"
#define BLYNK_AUTH_TOKEN "t3LyvYMfwqGZaSQavyXfbfxa4Nr3S1db"
#include <DHT.h>
#include <DHT_U.h>
#include <WiFi.h>
#include <BlynkSimpleEsp8266.h>
#define DHTPIN 2 // Pin data sensor DHT11/DHT22
#define DHTTYPE DHT11 // Tipe sensor (DHT11 atau DHT22)
#define SERVO_PIN 12 // Pin servo
DHT dht(DHTPIN, DHTTYPE);
char auth[] = "t3LyvYMfwqGZaSQavyXfbfxa4Nr3S1db";
char ssid[] = "Wokwi-GUEST";
char pass[] = "";
BlynkTimer timer;
Servo servo;
void setup() {
Serial.begin(9600);
Blynk.begin(auth, ssid, pass);
dht.begin();
servo.attach(SERVO_PIN);
servo.write(90); // Inisialisasi posisi servo ke 90 derajat (tengah)
timer.setInterval(10000L, sendSensorData); // Kirim data suhu ke Blynk setiap 10 detik
}
void loop() {
Blynk.run();
timer.run();
}
void sendSensorData() {
float temperature = dht.readTemperature(); // Baca suhu
Blynk.virtualWrite(V5, temperature); // Kirim suhu ke widget V5 di Blynk
// Kontrol servo berdasarkan suhu
if (temperature > 28) {
servo.write(0); // Putar servo ke 0 derajat
} else if (temperature < 20) {
servo.write(180); // Putar servo ke 180 derajat
} else {
servo.write(90); // Kembalikan servo ke 90 derajat (tengah)
}
}