#define BLYNK_TEMPLATE_ID "TMPL6g5bzDKKO"
#define BLYNK_TEMPLATE_NAME "Misaki"
#define BLYNK_AUTH_TOKEN "T-ZeraK2Lccdj2ZhHLKrLh3qYTeJDtF8"
#define BLYNK_PRINT Serial
#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>
char ssid[] = "Wokwi-GUEST"; //nama hotspot
char pass[] = ""; //password hotspot
// mendeklarasikan variabel
#define PIN_TRIG 22
#define PIN_ECHO 21
#define LOWLED 13
#define MIDLED 26
#define HIGHLED 34
#define MOTOR 19
long durasi;
unsigned int jarak = 0;
// inisiasikan
void setup() {
Blynk.begin(BLYNK_AUTH_TOKEN, ssid, pass);
{
Serial.print(".");
Serial.print("Connecting to WiFi");
delay(500);
}
pinMode(LOWLED, OUTPUT);
pinMode(MIDLED, OUTPUT);
pinMode(HIGHLED, OUTPUT);
pinMode(MOTOR, OUTPUT);
digitalWrite(LOWLED, HIGH);
digitalWrite(MIDLED, HIGH);
digitalWrite(HIGHLED, HIGH);
digitalWrite(MOTOR, LOW);
Serial.begin(115200);
pinMode(PIN_TRIG, OUTPUT);
pinMode(PIN_ECHO, INPUT);
}
// Perulanggan
void loop() {
Blynk.run();
// Start a new measurement:
digitalWrite(PIN_TRIG, LOW);
delayMicroseconds(10);
digitalWrite(PIN_TRIG, HIGH);
// Read the result:
durasi = pulseIn(PIN_ECHO, HIGH);
Serial.print("Distance in CM: ");
Serial.println(durasi / 58);
Serial.print("Distance in inches: ");
Serial.println(durasi / 148);
Blynk.virtualWrite(V0, durasi);
jarak = durasi / 58;
if (jarak < 100)
{
digitalWrite(LOWLED, LOW);
digitalWrite(MIDLED, HIGH);
digitalWrite(HIGHLED, HIGH);
}
else if ((jarak > 200) && (jarak < 400))
{
digitalWrite(LOWLED, HIGH);
digitalWrite(HIGHLED, HIGH);
digitalWrite(MIDLED, LOW);
}
else if (jarak >= 400)
{
digitalWrite(HIGHLED, HIGH);
digitalWrite(MIDLED, HIGH);
digitalWrite(LOWLED, HIGH);
digitalWrite(MOTOR, LOW);
}
delay(1000);
}