#include <Adafruit_Sensor.h>
#include <DHT.h>
#include <DHT_U.h>
// Definisi pin
#define DHTPIN 4 // Pin data DHT22
#define DHTTYPE DHT22 // Jenis sensor DHT22
#define RED_LED 25 // LED Merah suhu panass
#define GREEN_LED 14 // LED Hijau suhu normal
#define BLUE_LED 26 // LED Biru suhu dingin
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(9600);
pinMode(RED_LED, OUTPUT);
pinMode(GREEN_LED, OUTPUT);
pinMode(BLUE_LED, OUTPUT);
dht.begin();
}
void loop() {
float nilaisensor = dht.readTemperature();
// Cek apakah pembacaan suhu berhasil
if (isnan(nilaisensor)) {
Serial.println("Gagal membaca suhu dari DHT22!");
return;
}
Serial.print("Nilai sensor suhu DHT22 = ");
Serial.println(nilaisensor);
// Pengkondisian lampu LED berdasarkan suhunya
if (nilaisensor > 30) {
digitalWrite(RED_LED, HIGH);
digitalWrite(GREEN_LED, LOW);
digitalWrite(BLUE_LED, LOW);
} else if (nilaisensor >= 20 && nilaisensor <= 30) {
digitalWrite(RED_LED, LOW);
digitalWrite(GREEN_LED, HIGH);
digitalWrite(BLUE_LED, LOW);
} else {
digitalWrite(RED_LED, LOW);
digitalWrite(GREEN_LED, LOW);
digitalWrite(BLUE_LED, HIGH);
}
delay(2000);
}