#include <Servo.h>
Servo myServo;
long distance;
int duration;
const int redLedPin = 3;
const int greenLedPin = 4;
const int buzzerPin = 5;
const int trigPin = 6;
const int echoPin = 7;
const int servoPin = 8;
const int distanceMin = 50;
void setup() {
// put your setup code here, to run once:
pinMode(redLedPin, OUTPUT);
pinMode(greenLedPin, OUTPUT);
pinMode(buzzerPin, OUTPUT);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
myServo.attach(servoPin);
myServo.write(0);
Serial.begin(9600);
}
void loop() {
// put your main code here, to run repeatedly:
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.println(distance);
Serial.println("cm");
delay(500);
if(distance <= distanceMin && distance > 0) {
digitalWrite(redLedPin, LOW);
digitalWrite(greenLedPin, HIGH);
digitalWrite(buzzerPin, HIGH);
myServo.write(90);
delay(3000);
}
else {
digitalWrite(redLedPin, HIGH);
digitalWrite(greenLedPin, LOW);
digitalWrite(buzzerPin, LOW);
myServo.write(0);
}
delay(100);
}