#include <Arduino.h>
#include <Ultrasonic.h>
#define TRIG_PIN 12 // Pin TRIG sensor ultrasonik
#define ECHO_PIN 13 // Pin ECHO sensor ultrasonik
#define RELAY_PIN 14 // Pin relay
Ultrasonic ultrasonic(TRIG_PIN, ECHO_PIN);
bool relayState = false;
void setup() {
Serial.begin(115200);
pinMode(RELAY_PIN, OUTPUT);
}
void loop() {
// Mengukur jarak dengan sensor ultrasonik
int distance = ultrasonic.read();
Serial.print("Jarak: ");
Serial.println(distance);
// Menghidupkan relay ketika objek berada dalam kisaran 5 hingga 10 cm
if (distance >= 6 && distance <= 8 && !relayState) {
digitalWrite(RELAY_PIN, HIGH);
delay(10000); // Mengaktifkan valve solenoid selama 5 detik (sesuaikan dengan kebutuhan)
digitalWrite(RELAY_PIN, LOW); // Mematikan relay
relayState = true;
}
// Mematikan relay ketika objek keluar dari kisaran tersebut
if ((distance < 6 || distance > 8) && relayState) {
digitalWrite(RELAY_PIN, LOW);
relayState = false;
}
delay(100); // Delay untuk menghindari pembacaan berulang-ulang yang cepat
}