#include <BlynkSimpleEsp32.h>
#include <ESP32Servo.h>
#define BLYNK_PRINT Serial
#define trigPin 18
#define echoPin 5
#define led1 19
char auth[] = "ooAE3xJNerVFWkOkgJMlxil3PdfD5zcI";
char ssid[] = "Wokwi-GUEST";
char password[] = "";
const int servoPin = 21;
int data;
int pos = 0;
BlynkTimer timer;
Servo myservo;
void sendDataSensor(){
Blynk.virtualWrite(V0, data);
}
void setup() {
Serial.begin(115200);
Blynk.begin(auth, ssid, password, "blynk.cloud", 80);
timer.setInterval(1000L, sendDataSensor);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(led1, OUTPUT);
myservo.attach(servoPin, 500, 2400);
}
void loop() {
long duration, distance;
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
distance = (duration/2) / 29.1;
if (distance <= 10){
digitalWrite(led1, HIGH);
pos=90;
myservo.write(pos);
delay(5000);
digitalWrite(led1, LOW);
pos=0;
myservo.write(pos);
data++;
Serial.println(data);
}
Blynk.run();
timer.run();
delay(100);
}