#include <Servo.h>
Servo servo;
long duration;
int distance;
int full=0;
void setup() {
// put your setup code here, to run once:
servo.attach(9);
Serial.begin(9600);
pinMode(4, OUTPUT); //LED
pinMode(10, OUTPUT); //trigger
pinMode(12, INPUT); //echo
}
void loop() {
// put your main code here, to run repeatedly:
int x=digitalRead(5);
if(x==1){
if(full == 0){
Serial.println("opened");
servo.write(0);
delay(200);
}
}
else{
Serial.println("closed");
servo.write(90);
}
digitalWrite(10, LOW);
delayMicroseconds(2);
digitalWrite(10, HIGH);
delayMicroseconds(10);
digitalWrite(10, LOW);
duration=pulseIn(12,HIGH);
distance=duration*0.034/2;
if(distance<10){
full = 1;
digitalWrite(4, HIGH);
Serial.println("full remaining distance is");
Serial.print(distance);
delay(1000);
if(x==1){
servo.write(90);
}
}
else{
full = 0;
digitalWrite(4,LOW);
}
}