#define BLYNK_TEMPLATE_ID "TMPL6G451wV4Z"
#define BLYNK_TEMPLATE_NAME "RTC asu"
#define BLYNK_AUTH_TOKEN "Jvs2J4Cibq4iBg3KugtEqfrvmHjF0s1j"
#define BLYNK_PRINT Serial
#include <WiFi.h>
#include <WiFiClient.h>
#include <ArduinoJson.h>
#include <BlynkSimpleEsp32.h>
#define Echo 15
#define Trig 2
#define Merah 14
#define Kuning 12
#define Hijau 13
#define Buzzer 26
char auth[]=BLYNK_AUTH_TOKEN;
char ssid[]="Wokwi-GUEST";
char pass[]="";
BlynkTimer timer;
float jarak = 0;
int nada;
void ukur_jarak(){
digitalWrite(Trig, LOW);
delay(10);
digitalWrite(Trig, HIGH);
delay(10);
digitalWrite(Trig, LOW);
int duration = pulseIn(Echo, HIGH);
jarak = duration * 0.034 / 2 + 1;
Serial.print("Jarak: ");
Serial.print(jarak);
Serial.println(" cm");
}
void output_jarak(){
if(jarak > 400) {
Serial.println("Aman");
digitalWrite(Hijau, HIGH);
noTone(Buzzer );
}
else if(jarak >= 200 && jarak <= 400) {
Serial.println("Hama Mendekat!");
digitalWrite(Kuning, HIGH);
}
else if(jarak < 200) {
Serial.println("Ada Hama");
digitalWrite(Merah, HIGH);
tone(Buzzer,500);
}
}
void setup() {
Serial.begin(115200);
Blynk.begin(auth, ssid, pass);
pinMode(Trig, OUTPUT);
pinMode(Echo, INPUT);
pinMode(Merah, OUTPUT);
pinMode(Kuning, OUTPUT);
pinMode(Hijau, OUTPUT);
pinMode(Buzzer, OUTPUT);
}
void loop() {
digitalWrite(Merah, LOW);
digitalWrite(Kuning, LOW);
digitalWrite(Hijau, LOW);
ukur_jarak();
output_jarak();
Blynk.run();
timer.run();
delay(200);
}