#include <Servo.h>
#define trigPin 7
#define echoPin 6
#define led 13
#define servo 9
Servo doorservo;
int position = 0;
long duration;
float distance;
void setup()
{
doorservo.attach(servo);
pinMode(trigPin, OUTPUT);
pinMode(echoPin,INPUT);
pinMode(led,OUTPUT);
doorservo.write(position);
}
void loop()
{
Serial.begin(9600);
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
distance = 0.034* (duration/2);
Serial.println(distance);
if (distance <35)
{
digitalWrite(led, HIGH);
//sweep from 0 to 180 degrees:
for (position =0; position <=180; position+=1){
doorservo.write(position);
delay(30);
}
delay(1000);
for (position = 180; position >=0; position -=1){
doorservo.write (position);
delay(30);
}
}
else
digitalWrite(led, LOW);
delay(300);
}