#include <WiFi.h>
#include <DHT.h>
// Definisikan pin yang digunakan
#define DHTPIN 15 // Pin untuk sensor kelembaban
#define DHTTYPE DHT22 // Jenis sensor kelembaban DHT22
#define LDRPIN 32 // Pin untuk sensor cahaya (LDR)
#define RAINPIN 33 // Pin untuk sensor hujan
#define LEDDRY 14 // LED untuk indikasi pakaian kering
#define LEDWET 27 // LED untuk indikasi pakaian masih basah
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(115200);
// Konfigurasi pin
pinMode(LDRPIN, INPUT);
pinMode(RAINPIN, INPUT);
pinMode(LEDDRY, OUTPUT);
pinMode(LEDWET, OUTPUT);
// Inisialisasi sensor DHT
dht.begin();
Serial.println("SmartDry");
}
void loop() {
// Membaca kelembaban dari sensor DHT
float humidity = dht.readHumidity();
// Membaca intensitas cahaya dari LDR
int lightIntensity = analogRead(LDRPIN);
// Membaca kondisi hujan dari sensor hujan
int rainStatus = digitalRead(RAINPIN);
// Debug output untuk melihat data sensor
Serial.print("Humidity: ");
Serial.print(humidity);
Serial.print("%, Light Intensity: ");
Serial.print(lightIntensity);
Serial.print(", Rain Status: ");
Serial.println(rainStatus ? "Dry" : "Wet");
// Logika untuk menentukan kondisi pakaian
if (humidity < 60 && lightIntensity > 2000 && rainStatus == HIGH) {
digitalWrite(LEDDRY, HIGH);
digitalWrite(LEDWET, LOW);
Serial.println("Pakaian Kering");
} else {
digitalWrite(LEDDRY, LOW);
digitalWrite(LEDWET, HIGH);
Serial.println("Pakaian Masih Basah");
}
// Menunggu 2 detik sebelum pembacaan berikutnya
delay(2000);
}