// calibrate the thershold with respect to light // #define light_thershold 200 // connect pin 3-7 of Array with Analog Pins of Arduino // #define S1 A0 #define S2 A1 #define S3 A2 #define S4 A3 #define S5 A4 #define LedR 2 #define LedM 3 #define LedL 4 int Far_right, Far_left, right, left, mid; void setup() { pinMode(S1,INPUT); pinMode(S2,INPUT); pinMode(S3,INPUT); pinMode(S4,INPUT); pinMode(S5,INPUT); pinMode(LedR,OUTPUT); pinMode(LedL,OUTPUT); pinMode(LedM,OUTPUT); Serial.begin(9600); } // this function will take input of IR sensors and convert them into 1-0 i.e digital readings // void takereading() { if(analogRead(S1)>light_thershold) Far_right=1; else Far_right=0; if(analogRead(S2)>light_thershold) right=1; else right=0; if(analogRead(S3)>light_thershold) mid=1; else mid=0; if(analogRead(S4)>light_thershold) left=1; else left=0; if(analogRead(S5)>light_thershold) Far_left=1; else Far_left=0; } // this function will print the readings on Serail monitor // void showreading() { Serial.print(" FL= "); Serial.print(analogRead(S1)); Serial.print(" L= "); Serial.print(analogRead(S2)); Serial.print(" M= "); Serial.print(analogRead(S3)); Serial.print(" R= "); Serial.print(analogRead(S4)); Serial.print(" FR= "); Serial.print(analogRead(S5)); Serial.println(); delay(150); } // this function will control indicator LEDs void ledCheck() { if(analogRead(S1)>200 || analogRead(S2)>200 ) digitalWrite(LedR,HIGH); else digitalWrite(LedR,LOW); if(analogRead(S5)>200 || analogRead(S4)>200 ) digitalWrite(LedL,HIGH); else digitalWrite(LedL,LOW); if(analogRead(S3)>200 ) digitalWrite(LedM,HIGH); else digitalWrite(LedM,LOW); } // call all the functions in Output void loop() { takereading(); showreading(); ledCheck(); }