#include <Adafruit_NeoPixel.h>
//Constants
const int dinPin = 9;
const int numOfLeds = 52;
Adafruit_NeoPixel pixels = Adafruit_NeoPixel(numOfLeds, dinPin, NEO_GRB + NEO_KHZ800);
//Defining The Ints
int Trg_1 = 5;
int Trg_2 = 12;
int Trg_3 = 7;
int Trg_4 = 2;
int Echo_1 = 4;
int Echo_2 = 11;
int Echo_3 = 6;
int Echo_4 = 3;
int Time = 700;
long Duration_1;
long Duration_2;
long Duration_3;
long Duration_4;
int Distance_1;
int Distance_2;
int Distance_3;
int Distance_4;
void setup()
{
pixels.begin();
pixels.setBrightness(80);
Serial.begin(9600);
pinMode(Trg_1, OUTPUT);
pinMode(Trg_2, OUTPUT);
pinMode(Trg_3, OUTPUT);
pinMode(Trg_4, OUTPUT);
pinMode(Echo_1, INPUT);
pinMode(Echo_2, INPUT);
pinMode(Echo_3, INPUT);
pinMode(Echo_4, INPUT);
}
void loop()
{
//Code For 1st Sensor
digitalWrite(Trg_1, LOW);
delayMicroseconds(2);
digitalWrite(Trg_1, HIGH);
delayMicroseconds(10);
digitalWrite(Trg_1, LOW);
Duration_1 = pulseIn(Echo_1, HIGH);
Distance_1 = Duration_1 * 0.0343;
Distance_1 = Distance_1 / 2;
Serial.print("Ultrasonic sensor 1: ");
Serial.println(Distance_1);
//Code for 2nd Sensor
digitalWrite(Trg_2, LOW);
delayMicroseconds(2);
digitalWrite(Trg_2, HIGH);
delayMicroseconds(10);
digitalWrite(Trg_2, LOW);
Duration_2 = pulseIn(Echo_2, HIGH);
Distance_2 = Duration_2 * 0.0343;
Distance_2 = Distance_2 / 2;
Serial.print("Ultrasonic sensor 2: ");
Serial.println(Distance_2);
//Code for 3rd Sensor
digitalWrite(Trg_3, LOW);
delayMicroseconds(2);
digitalWrite(Trg_3, HIGH);
delayMicroseconds(10);
digitalWrite(Trg_3, LOW);
Duration_3 = pulseIn(Echo_3, HIGH);
Distance_3 = Duration_3 * 0.0343;
Distance_3 = Distance_3 / 2;
Serial.print("Ultrasonic sensor 3: ");
Serial.println(Distance_3);
//Code for 4th Sensor
digitalWrite(Trg_4, LOW);
delayMicroseconds(2);
digitalWrite(Trg_4, HIGH);
delayMicroseconds(10);
digitalWrite(Trg_4, LOW);
Duration_4 = pulseIn(Echo_4, HIGH);
Distance_4 = Duration_4 * 0.0343;
Distance_4 = Distance_4 / 2;
Serial.print("Ultrasonic sensor 4: ");
Serial.println(Distance_4);
if(Distance_1<100||Distance_2<100||Distance_3<100||Distance_4<100){
for(int i=0;i<numOfLeds;i++){
pixels.setPixelColor(i, pixels.Color(255,0,0));
pixels.show();
}
}
else if((Distance_1>100 && Distance_1 < 200)||(Distance_2>100 && Distance_2 < 200)||(Distance_3>100 && Distance_3 < 200)||(Distance_4>100 && Distance_4 < 200)){
for(int i=0;i<numOfLeds;i++){
pixels.setPixelColor(i, pixels.Color(255,100,0));
pixels.show();
}
}
else
{
for(int i=0;i<numOfLeds;i++){
pixels.setPixelColor(i, pixels.Color(0,255,0));
pixels.show();
}
}
}
Comments
Please log in or sign up to comment.