Professional Documents
Culture Documents
Automatic Railway Crossing Using Arduino
Automatic Railway Crossing Using Arduino
This is a simple college project. It automatically turn off the railway gate when train arrival and after
train departure.
1. fix the track on cardboard as shown in pic or in my youtube video, link shown below
https://youtu.be/1Oc5R_yByNw
you can fix this by using hot melt glue, screw, rubber strip.
2. Fix the moter on cardboard as shown in pic by screw or rubber strip.
3. Connect a plastic or wooden rod to motor's axis, this is used as gate.
4. fix two IR sensor in both side of gate(motor) and should be at equal distance as shown in my
video https://youtu.be/1Oc5R_yByNw
5. Remove the LED's from circuit of sensor and fix opposite to PHOTO TRANSISTOR and connect by
wires
3. connect the pin no 4 and 5 of Arduino to L293D's input pins as shown in circuit.
int sensor1=2;
int sensor2=3;
int motor1=4;
int motor2=5;
void setup(){
pinMode(sensor1,INPUT);
pinMode(sensor2,INPUT);
pinMode(motor1,OUTPUT);
pinMode(motor2,OUTPUT);
}
void loop(){
C:
if(sensor1==LOW){
digitalWrite(motor1,HIGH);
digitalWrite(motor2,LOW);
delay(500);
digitalWrite(motor1,HIGH);
digitalWrite(motor2,HIGH);
A:
if(sensor2==LOW){
digitalWrite(motor1,LOW);
digitalWrite(motor2,HIGH);
delay(500);
digitalWrite(motor1,HIGH);
digitalWrite(motor2,HIGH);
delay(1000);
goto C;
}goto A;
if(sensor2==LOW){
digitalWrite(motor1,HIGH);
digitalWrite(motor2,LOW);
delay(500);
digitalWrite(motor1,HIGH);
digitalWrite(motor2,HIGH);
B:
if(sensor1==LOW){
digitalWrite(motor1,LOW);
digitalWrite(motor2,HIGH);
delay(500);
digitalWrite(motor1,HIGH);
digitalWrite(motor2,HIGH);
delay(1000);
goto C;
goto B;
here 500ms delay is used because gate is closed in this time. you can change this according to practical
response