The code for the automatic railway crossing using IR and Arduino
Working Video
Visit our website for more interesting projects:
SR Automation & Robotics
the code is as written below:
--------------------------------------------************************-----------------------------------------
int M1 = 4;
int M2 = 5;
int M3 = 6;
int M4 = 7;
int RL = 8;
int YL = 9;
int GL = 10;
int BZ = 11;
int flag = 0;
void setup()
{
Serial.begin(9600);
pinMode(2, INPUT);
pinMode(3, INPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
pinMode(10, OUTPUT);
pinMode(11, OUTPUT);
}
void loop()
{
int IR1 = 2;
if (digitalRead(2) == 0 && flag == 0 )
{
flag = 1;
digitalWrite(BZ, HIGH);
delay(3000);
digitalWrite(M1, HIGH);
digitalWrite(M2, LOW);
digitalWrite(M3, LOW);
digitalWrite(M4, HIGH);
digitalWrite(RL, LOW);
digitalWrite(YL, HIGH);
digitalWrite(GL, LOW);
digitalWrite(BZ, HIGH);
delay(250);
digitalWrite(M1, LOW);
digitalWrite(M2, LOW);
digitalWrite(M3, LOW);
digitalWrite(M4, LOW);
digitalWrite(RL, HIGH);
digitalWrite(YL, LOW);
digitalWrite(GL, LOW);
digitalWrite(BZ, LOW);
}
int IR2 = 3;
if (digitalRead(3) == 0 && flag == 1)
{
flag = 0;
delay(3000);
digitalWrite(M1, LOW);
digitalWrite(M2, HIGH);
digitalWrite(M3, HIGH);
digitalWrite(M4, LOW);
digitalWrite(RL, LOW);
digitalWrite(YL, LOW);
digitalWrite(GL, HIGH);
digitalWrite(BZ, HIGH);
delay(250);
digitalWrite(M1, LOW);
digitalWrite(M2, LOW);
digitalWrite(M3, LOW);
digitalWrite(M4, LOW);
digitalWrite(RL, LOW);
digitalWrite(YL, LOW);
digitalWrite(GL, HIGH);
digitalWrite(BZ, LOW);
}
}
---------------------------------------**********************************-------------------------------
Working Video
Visit our website for more interesting projects:
SR Automation & Robotics
the code is as written below:
--------------------------------------------************************-----------------------------------------
int M1 = 4;
int M2 = 5;
int M3 = 6;
int M4 = 7;
int RL = 8;
int YL = 9;
int GL = 10;
int BZ = 11;
int flag = 0;
void setup()
{
Serial.begin(9600);
pinMode(2, INPUT);
pinMode(3, INPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
pinMode(10, OUTPUT);
pinMode(11, OUTPUT);
}
void loop()
{
int IR1 = 2;
if (digitalRead(2) == 0 && flag == 0 )
{
flag = 1;
digitalWrite(BZ, HIGH);
delay(3000);
digitalWrite(M1, HIGH);
digitalWrite(M2, LOW);
digitalWrite(M3, LOW);
digitalWrite(M4, HIGH);
digitalWrite(RL, LOW);
digitalWrite(YL, HIGH);
digitalWrite(GL, LOW);
digitalWrite(BZ, HIGH);
delay(250);
digitalWrite(M1, LOW);
digitalWrite(M2, LOW);
digitalWrite(M3, LOW);
digitalWrite(M4, LOW);
digitalWrite(RL, HIGH);
digitalWrite(YL, LOW);
digitalWrite(GL, LOW);
digitalWrite(BZ, LOW);
}
int IR2 = 3;
if (digitalRead(3) == 0 && flag == 1)
{
flag = 0;
delay(3000);
digitalWrite(M1, LOW);
digitalWrite(M2, HIGH);
digitalWrite(M3, HIGH);
digitalWrite(M4, LOW);
digitalWrite(RL, LOW);
digitalWrite(YL, LOW);
digitalWrite(GL, HIGH);
digitalWrite(BZ, HIGH);
delay(250);
digitalWrite(M1, LOW);
digitalWrite(M2, LOW);
digitalWrite(M3, LOW);
digitalWrite(M4, LOW);
digitalWrite(RL, LOW);
digitalWrite(YL, LOW);
digitalWrite(GL, HIGH);
digitalWrite(BZ, LOW);
}
}
---------------------------------------**********************************-------------------------------