Arduino Automated Car Parking System.

by Ashraf Minhaj in Circuits > Arduino

62557 Views, 25 Favorites, 0 Comments

Arduino Automated Car Parking System.

20180716_015257.jpg
Fully Automated Parking Garage !! arduino diy.

An Arduino Automated Car Parking System that is too easy and too fun to make. When a car arrives it shows the number of empty slots (if available) and then opens the gate. if there is not any empty slot then the gate does not open. Amazing thing is that the whole project can just be POWERED using a POWER BANK!!

Watch the video for the full tutorial.

Note: you can use display instead of my hand made led sign display.

Now lets get started.

Parts

arduino uno.jpg
images.jpg
download (1).jpg
download.jpg
  • Arduino - any board
  • Infrared proximmity sensor (pic 2 & 3 - both are functional)
  • 330r resistor
  • some LED's
  • Servo motor - any model or size you wish.

Buy electronic components at utsource.net

Making the LED Display

20180715_235358.jpg
20180714_203533.jpg
20180714_203950.jpg
20180714_210016.jpg

To make this LED display I have used a piece of bredboard then soldered the LED's and the 330r resistor. Then just added a ribbon cable for nice finish.

NOTE: I soldered the resistors on back so that they cant be seen from front to make the display .

It would be better if you use LCD display or cheap OLED display instead of this. I had not any,so I made this.

Making the Parking Garage

20180714_212820.jpg
Capture.PNG
dbfd.PNG
fvfv.PNG
20180716_000807.jpg
20180716_000828.jpg
20180715_235344.jpg

To make this I have used a card board box then cut it to make a nice slope. Then added a piece of cardboard on to the servo motor and hot glued it. Added one sensor on the entrance and another on each SLOT. Then hot glued two chopsticks with the display we have made and glue it to the box. And of course as we will use the usb cable of arduino to power the whole project cut some area of the box to access to that port.

Don't forget to paint it a little bit.

The Circuit

Automated_Parking-garage.PNG

It looks a bit mess for the LED's but tell you what, this is really very much simple circuit.

NOTE: Proximity sensors use 5v to operate so you can just connect them to 5v source of arduino.

But what theee!! whay has he connected servo to VIN!! Let me explain you. Power banks usually supplies 5v 1Amp current which is input to arduino via the usb cable, now there is a voltage regulator on arduino which gives .5Amp to the board. By connecting to VIN we are actually accessing the power from the power bank without an breadboard. This works and safe.

The Code

Upload the following code to the arduino

download code https://github.com/ashraf-minhaj/Automated-Parking...

or copy from below

/*Automated Parking Garage by Ashraf Minhaj. www.youtube.com/c/fusebatti
* for any query please mail me at ashraf_minhaj@yahoo.com*/

#include //adding Servo library Servo gate; //you may open or close gate using a Servo motor int slot1 = 5; //Connect IR sensor on digital pin5 for sLOT 1 int slot2 = 4; //sLot2 pin on digital 4 int gateSensor = 3; //IR sensor on gate to arduino pin 3 int slot1_l = 13; int slot2_l = 12; int gate_grn = 11; int gate_red = 10;

void setup() { gate.attach(7); //connecting the gate servo on pin 5 pinMode(slot1,INPUT); //setting slot pins & gate IR sensor as input to arduino pinMode(slot2,INPUT); pinMode(gateSensor,INPUT); pinMode(slot1_l,OUTPUT); pinMode(slot2_l,OUTPUT); pinMode(gate_grn,OUTPUT); pinMode(gate_red,OUTPUT); Serial.begin(9600); //initialzing Serial monitor

}

void loop() { //the car arrives and sensor goes LOW

if( !(digitalRead(gateSensor)) && digitalRead(slot1) && digitalRead(slot2)) //slot1 & slot2 empty { Serial.println("Welcome, Available: sLOT1, sLOT2"); //print slot1 and slo2 available digitalWrite(slot1_l,HIGH); digitalWrite(slot2_l,HIGH); delay(1000); digitalWrite(gate_grn,HIGH);

gate.write(75); //gate will open after the dealy of 1 second

}

if( !(digitalRead(gateSensor)) && !(digitalRead(slot1)) && digitalRead(slot2)) //car on slot1,slot2 free { Serial.println("Welcome, Available: sLOT2"); // slo2 available digitalWrite(slot1_l,LOW); digitalWrite(slot2_l,HIGH); delay(1000); digitalWrite(gate_grn,HIGH); gate.write(75); //gate will open after the dealy of 1 second } if( !(digitalRead(gateSensor)) && digitalRead(slot1) && !(digitalRead(slot2))) //car on slot2,slot1 free { Serial.println("Welcome, Available: sLOT1"); // slo1 available digitalWrite(slot1_l,HIGH); digitalWrite(slot2_l,LOW); delay(1000); digitalWrite(gate_grn,HIGH); gate.write(75); delay(100); //gate will open after the dealy of 1 second }

if( !(digitalRead(gateSensor)) && !(digitalRead(slot1)) && !(digitalRead(slot2))) { Serial.println("Welcome, Parking Full");// No slot available digitalWrite(slot1_l,LOW); digitalWrite(slot2_l,LOW); delay(1000); digitalWrite(gate_red,HIGH); delay(100); digitalWrite(gate_red,LOW); delay(100); digitalWrite(gate_red,HIGH); delay(100); digitalWrite(gate_red,LOW); } if( digitalRead(gateSensor)) { Serial.println("Welcome"); // slo2 available gate.write(5); //gate close digitalWrite(slot1_l,LOW); digitalWrite(slot2_l,LOW); digitalWrite(gate_red,LOW); digitalWrite(gate_grn,HIGH); delay(100); digitalWrite(gate_grn,LOW); delay(100); } }

Finished

20180716_015257.jpg

Now power the project using a USB cable to arduino and have fun.

Let me know how you are thinking to upgrade this and why.

Thank you.