#include <Adafruit_Sensor.h>
#include <DHT.h>
#define DHTPIN 22 // Pin data DHT22 terhubung ke pin digital 2
#define DHTTYPE DHT22 // Tipe sensor DHT (DHT22)
#define RELAY_PIN 15 // Pin relay terhubung ke pin digital 13
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(115200);
pinMode(RELAY_PIN, OUTPUT);
digitalWrite(RELAY_PIN, LOW); // Memastikan relay dimatikan pada awalnya
dht.begin();
}
void loop() {
delay(2000); // Menunggu 2 detik antara pembacaan sensor
float temperature = dht.readTemperature(); // Membaca suhu dalam derajat Celsius
if (isnan(temperature)) {
Serial.println("Gagal membaca dari sensor DHT");
return;
}
Serial.print("Suhu: ");
Serial.print(temperature);
Serial.println(" °C");
if (temperature > 30) {
// Menyalakan relay (menyambungkan jalur listrik) jika suhu di atas 30 °C
digitalWrite(RELAY_PIN, HIGH);
Serial.println("Relay Menyalakan Perangkat (Kipas)");
} else {
// Mematikan relay (memutus jalur listrik) jika suhu di bawah atau sama dengan 30 °C
digitalWrite(RELAY_PIN, LOW);
Serial.println("Relay Mematikan Perangkat (Kipas)");
}
}