#include <ESP32Servo.h>
#define trig 22
#define echo 21
const int servoPin = 19;
Servo servo1;
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
pinMode(trig, OUTPUT);
pinMode(echo, INPUT);
servo1.attach(servoPin);
}
void loop() {
digitalWrite(trig, LOW);
delayMicroseconds(2);
digitalWrite(trig, HIGH);
delayMicroseconds(10);
digitalWrite(trig, LOW);
long duration = pulseIn(echo, HIGH);
float distance = (duration * 0.034) / 2;
if(distance < 40 ) servo1.write(0);
else if((distance > 40 ) && (distance < 80)) servo1.write(18);
else if((distance > 80 ) && (distance < 120)) servo1.write(36);
else if((distance > 120) && (distance < 160)) servo1.write(54);
else if((distance > 160) && (distance < 200)) servo1.write(72);
else if((distance > 200) && (distance < 240)) servo1.write(90);
else if((distance > 240) && (distance < 280)) servo1.write(108);
else if((distance > 280) && (distance < 320)) servo1.write(144);
else if((distance > 360) && (distance < 400)) servo1.write(162);
else servo1.write(180);
}