#include <Servo.h>
Servo servo1;
#define led 10
#define led1 9
#define led2 8
const int trigPin = 13;
const int echoPin = 12;
long duration;
int distance;
void setup()
{ // Initializes the interface to the LCD screen, and specifies the dimensions (width and height) of the display
Serial.begin (9600);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(led, OUTPUT);
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT); // put your setup code here, to run once:
servo1.attach(11);
}
void loop()
{
long duration, distance;
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
distance= 0.03435 * (duration / 2); // put your main code here, to run repeatedly:
getServo(distance);
if (distance < 51)
{
digitalWrite(led,HIGH);
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
}
else if (distance <= 100)
{
digitalWrite(led,LOW);
digitalWrite(led1,HIGH);
digitalWrite(led2,LOW);
}
else if (distance > 100)
{
digitalWrite(led,LOW);
digitalWrite(led1,LOW);
digitalWrite(led2,HIGH);
}
if (distance > 100 || distance <= 0)
{
Serial.print(distance);
Serial.println("cm");
}
else
{
Serial.print(distance);
Serial.println("cm");
}
}
void getServo(long distance)
{
if(distance >= 0 && distance <= 50)
{
servo1.write(0);
}
else if(distance > 50 && distance <= 100){
servo1.write(90);
}
else {
servo1.write(90);
}
}