#include <ESP32Servo.h>
Servo MG995_Servo;
#define servo 15
#define echoPin 4
#define trigPin 2
long duration;
int distance;
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
Serial.println("Smart Dustbin");
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
}
void loop() {
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
distance = duration * 0.034 / 2;
Serial.print("Distance: ");
Serial.print(distance);
Serial.println(" cm");
if(distance <=5) {
MG995_Servo.attach(servo);
MG995_Servo.write(0); //Turn clockwise at high speed
delay(3000);
MG995_Servo.detach();
}
else {
MG995_Servo.attach(servo);
MG995_Servo.write(90); //Turn clockwise at high speed
delay(3000);
MG995_Servo.detach();
}
}