#define BLYNK_TEMPLATE_ID "TMPL3CWe5H1tG"
#define BLYNK_TEMPLATE_NAME "Ultrasonic"
#define BLYNK_AUTH_TOKEN "WwyxnpgJwCmn0QRa0UzWxFGNytFrm5GX"
#define BLYNK_PRINT Serial
#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>
char auth[] = BLYNK_AUTH_TOKEN;
char ssid[] = "Wokwi-GUEST";
char pass[] = "";
//BlynkTimer timer;
#define BuzzerPin 12 //D12
#define trigPin 25
#define echoPin 26
int distance;
void setup()
{
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(BuzzerPin,OUTPUT);
// Debug console
Serial.begin(115200);
Blynk.begin(auth, ssid, pass);
}
void loop()
{
Blynk.run();
// Clear the trigPin by setting it LOW:
digitalWrite(trigPin, LOW);
delayMicroseconds(5);
// Trigger the sensor by setting the trigPin high for 10 microseconds:
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
// Read the echoPin. pulseIn() returns the duration (length of the pulse) in microseconds:
int duration = pulseIn(echoPin, HIGH);
// Calculate the distance:
// distance = duration*0.034/2;
distance = (duration/2) / 29.1;
// Print the distance on the Serial Monitor (Ctrl+Shift+M):
int dist = map(distance,22,51, 100, 0);
Serial.print("Distance = ");
Serial.print(distance);
Serial.println(" cm");
Serial.println(dist);
Blynk.virtualWrite(V0,dist);
Blynk.virtualWrite(V1,distance);
if (distance>45 ){
digitalWrite(BuzzerPin, HIGH);
Serial.println("Buzzer is turned on");
}
if (distance <21){
digitalWrite(BuzzerPin, LOW);
}
}