#define TRIG_PIN 12
#define ECHO_PIN 14
#define MQ2_PIN 34
#define BUZZER_PIN 25
void setup() {
Serial.begin(115200);
pinMode(TRIG_PIN, OUTPUT);
pinMode(ECHO_PIN, INPUT);
pinMode(BUZZER_PIN, OUTPUT);
}
void loop() {
// Baca jarak dari sensor HCSR04
digitalWrite(TRIG_PIN, LOW);
delayMicroseconds(2);
digitalWrite(TRIG_PIN, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG_PIN, LOW);
long duration = pulseIn(ECHO_PIN, HIGH);
float distance = duration * 0.034 / 2;
// Baca nilai gas dari sensor MQ2
int gasValue = analogRead(MQ2_PIN);
// Jika jarak terlalu dekat atau gas tinggi, buzzer bunyi
if (distance < 20 || gasValue > 500) {
digitalWrite(BUZZER_PIN, HIGH);
tone(BUZZER_PIN, 1000);
} else {
digitalWrite(BUZZER_PIN, LOW);
}
// Debugging ke Serial Monitor
Serial.print("Jarak: "); Serial.print(distance); Serial.print(" cm, ");
Serial.print("Gas: "); Serial.println(gasValue);
delay(500);
}