// Pin Definition
#define MQ135_PIN 34 // Sensor gas MQ135
#define EXHAUST_PIN 26 // Relay Exhaust
#define SPRINKLER_PIN 27 // Relay Sprinkler
void setup() {
Serial.begin(115200);
// Setup pin mode
pinMode(EXHAUST_PIN, OUTPUT);
pinMode(SPRINKLER_PIN, OUTPUT);
// Initial state
digitalWrite(EXHAUST_PIN, LOW);
digitalWrite(SPRINKLER_PIN, LOW);
Serial.println("System Started!");
Serial.println("Gas Monitor System");
Serial.println("================");
}
void loop() {
// Baca sensor
int gasLevel = analogRead(MQ135_PIN);
// Tampilkan data ke Serial Monitor
Serial.print("Gas Level: ");
Serial.println(gasLevel);
// Logic otomatis
if(gasLevel > 200) { // Deteksi asap
digitalWrite(EXHAUST_PIN, HIGH);
digitalWrite(SPRINKLER_PIN, HIGH);
Serial.println("PERINGATAN: Asap Terdeteksi!");
Serial.println("Status: Exhaust ON, Sprinkler ON");
}
else if(gasLevel > 100) { // Gas berbahaya
digitalWrite(EXHAUST_PIN, HIGH);
digitalWrite(SPRINKLER_PIN, LOW);
Serial.println("PERINGATAN: Gas Berbahaya!");
Serial.println("Status: Exhaust ON, Sprinkler OFF");
}
else {
digitalWrite(EXHAUST_PIN, LOW);
digitalWrite(SPRINKLER_PIN, LOW);
Serial.println("Status: Normal");
Serial.println("Status: Exhaust OFF, Sprinkler OFF");
}
Serial.println("================");
delay(1000); // Delay 1 detik
}