#include<Servo.h>
int servoPin=3;
int triggerPin=9;
int echoPin=8;
int travelTime;
float objectDistance;
float travelDistance;
int servoPos;
int opendledPin=7;
Servo myservo;
void setup() {
myservo.attach(servoPin);
pinMode(triggerPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(opendledPin, OUTPUT);
Serial.begin(9600);
}
void loop() {
//trigger pluse genarating
myservo.write(0);
digitalWrite(triggerPin,LOW);
delayMicroseconds(10);
digitalWrite(triggerPin, HIGH);
delayMicroseconds(10);
digitalWrite(triggerPin, LOW);
travelTime=pulseIn(echoPin,HIGH);
travelDistance=(travelTime*765.*5280.*12.)/(3600.*1000000.);
objectDistance=(2.54)*(travelDistance/2);
Serial.println(objectDistance);
//condition for open
if(objectDistance<=40.0){
myservo.write(90);
digitalWrite(opendledPin, HIGH);
Serial.println("Open");
delay(5000);
myservo.write(0);
digitalWrite(opendledPin,LOW);
}
delay(1000);
}