#include <DHT.h>
#define MQ2_PIN 34 // Pin analog MQ-2
#define DHTPIN 15 // Pin digital DHT22
#define DHTTYPE DHT22 // Tipe sensor DHT
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(115200);
dht.begin();
}
void loop() {
// Baca nilai gas (MQ-2)
int mq2Value = analogRead(MQ2_PIN);
String statusGas = (mq2Value > 800) ? "BAHAYA" : "AMAN";
// Baca data suhu dan kelembaban (DHT22)
float suhu = dht.readTemperature();
float kelembaban = dht.readHumidity();
String statusSuhu = (suhu > 35) ? "BAHAYA" : "AMAN";
String statusKelembaban = (kelembaban < 30 || kelembaban > 80) ? "BAHAYA" : "AMAN";
// Gabungkan status
String statusAkhir = (statusGas == "BAHAYA" || statusSuhu == "BAHAYA" || statusKelembaban == "BAHAYA") ? "BAHAYA" : "AMAN";
// Tampilkan semua status ke Serial Monitor
Serial.print("[MQ-2] Nilai Gas: ");
Serial.print(mq2Value);
Serial.print(" | Status: ");
Serial.println(statusGas);
Serial.print("[DHT22] Suhu: ");
Serial.print(suhu);
Serial.print(" °C | Status: ");
Serial.println(statusSuhu);
Serial.print("[DHT22] Kelembaban: ");
Serial.print(kelembaban);
Serial.print(" % | Status: ");
Serial.println(statusKelembaban);
Serial.print("Status Akhir: ");
Serial.println(statusAkhir); // Gabungan status keseluruhan
delay(2000);
}