#define TRIGGER_PIN 5 // Pin untuk sensor ultrasonik
#define ECHO_PIN 18
#define RELAY_PIN 23 // Pin untuk relay yang mengawal actuator
#define PIR_PIN 19 // Pin untuk sensor PIR
#define BLYNK_PRINT Serial
#include <WiFi.h>
#include <BlynkSimpleEsp32.h>
void setup() {
// Mulakan komunikasi Serial
Serial.begin(115200);
pinMode(TRIGGER_PIN, OUTPUT);
pinMode(ECHO_PIN, INPUT);
pinMode(RELAY_PIN, OUTPUT);
pinMode(PIR_PIN, INPUT);
// Initialize Blynk
Blynk.begin("AuthToken", "WiFi_SSID", "WiFi_password");
}
void loop() {
// Contoh untuk sensor ultrasonik
long duration, distance;
digitalWrite(TRIGGER_PIN, LOW);
delayMicroseconds(2);
digitalWrite(TRIGGER_PIN, HIGH);
delayMicroseconds(10);
digitalWrite(TRIGGER_PIN, LOW);
duration = pulseIn(ECHO_PIN, HIGH);
distance = (duration / 2) / 29.1;
// Check jarak air di sinki
if (distance < 10) { // Jika jarak kurang dari 10cm
Serial.println("Air detected!");
digitalWrite(RELAY_PIN, HIGH); // Tutup actuator linear
} else {
digitalWrite(RELAY_PIN, LOW); // Biarkan actuator terbuka
}
// Blynk dan sensor PIR
Blynk.run();
}