Intelligent Car Parking

3.3K70

Intro: Intelligent Car Parking

Abstract

Large parking spaces especially in shopping malls often increases difficulty for the customers to reach back to their respective parking spot. Remembering the correct parking slot number adds on to the problem. This project aims at eliminating both these problems. The customer tags an RFID card at the entry point of the parking space. An LCD module informs the customer about the parking space that has been allotted. Once the customer returns from the shopping centre, he/she can tag the RFID card on a rover which will guide the user to his/her respective parking space. During the exit, the card is tagged once again at the exit point. Depending on the time taken by the customer, a nominal fee is charged and will be displayed on the LCD. For simplicity, it is assumed that the entry and exit is through a single point and the rover travels only on a specific path.

This project consists of two sections:

  1. Entry/Exit Point
  2. A Rover

At first, let us see how the Entry/Exit point is made.

STEP 1: Entry/ Exit Control: Components Required

  1. Arduino UNO R3 x 1
  2. USB cable x 1
  3. RFID Module RC -522 x 1
  4. RFID cards x 3
  5. Servo motor x 1
  6. 16 x 2 LCD Module x 1
  7. 220 ohm Resistor x 1
  8. 10K ohm Potentiometer x 1
  9. Breadboard x 1
  10. Jumper Wires Male - Male (M-M) x 40
  11. Jumper Wires Male - Fe-Male (M-F) x 40

STEP 2: Interfacing the 16x2 LCD Module With Arduino UNO

16x2 LCD Module:

The LCD is expanded as Liquid Crystal Display. The module used in this project is a monotone display. It has two rows and 16 columns. Hence, total of 32 characters can be displayed at a time. The contrast of the display is controlled by the 10K ohm potentiometer. The display also possess a Backlight feature.

Circuit Connections:

  1. Connect an M-F jumper wires from all the pins of LCD module to the breadboard.
  2. Connect an M-M jumper wire from 5V pin of the Arduino to one of the horizontal lines of the breadboard.(Henceforth referred as 5V line)
  3. Connect an M-M jumper wire from GND pin of the Arduino to another horizontal line of the breadboard.(Henceforth referred as GND line)
  4. Connect an M-M jumper wire from the GND pin of the LCD to the GND line of the breadboard
  5. Connect an M-M jumper wire from the VCC pin of the LCD to the 5V line of the breadboard.
  6. Place the 10K ohms potentiometer on the breadboard.
  7. Connect an M-M jumper wire from the CONTRAST pin of the LCD to the wiper pin of the potentiometer.
  8. Connect an M-M jumper wire from one pin of the potentiometer to the GND line.
  9. Connect an M-M jumper wire from the last pin of the potentiometer to the 5V line.
  10. Connect an M-M jumper wire from the RS pin of the LCD to Pin 7 of the Arduino.
  11. Connect an M-M jumper wire from the RW pin of the LCD to GND pin of the LCD.
  12. Connect an M-M jumper wire from the EN pin of the LCD to Pin 6 of the Arduino.
  13. Connect an M-M jumper wire from the D4 pin of the LCD to Pin 5 of the Arduino.
  14. Connect an M-M jumper wire from the D5 pin of the LCD to Pin 4 of the Arduino.
  15. Connect an M-M jumper wire from the D6 pin of the LCD to Pin 3 of the Arduino.
  16. Connect an M-M jumper wire from the D7 pin of the LCD to Pin 2 of the Arduino.
  17. Place the 220 ohm resistor on the breadboard such that one pin is connected to BACKLIGHT(+) pin of the LCD and the other end is connected to the 5V line.
  18. Connect an M-M jumper wire from the BACKLIGHT(-) pin of the LCD to the GND line (or to the GND line in which one pin of potentiometer is connected ).

STEP 3: Interfacing the RFID Module With Arduino UNO

RFID Module RC-522:

RFID can be expanded as Radio Frequency Identification. The RFID reader comes 8 pin male headers. Out of the 8 pins, SDA, SCK, MOSI, MISO, GND, RST and VCC pins are used. Separate libraries has to be downloaded to use the RFID module. The libraries used in this project are ‘RFID.h’, ‘pitches.h’ and a different version of ‘SPI.h’ library.

Circuit Connections:

  1. Connect an M-F jumper wire from 3.3V pin of the RFID module to the 3.3V pin of the Arduino UNO.
  2. Connect an M-F jumper wire from GND pin of the RFID module to the GND line of the breadboard.
  3. Connect an M-F jumper wire from the RST pin of the RFID module to Pin 5 of the Arduino UNO.
  4. Connect an M-F jumper wire from the SDA pin of the RFID module to Pin 10 of the Arduino UNO.
  5. Connect an M-F jumper wire from the SCK pin of the RFID module to Pin 13 of the Arduino UNO.
  6. Connect an M-F jumper wire from the MOSI pin of the RFID module to Pin 11 of the Arduino UNO.
  7. Connect an M-F jumper wire from the MISO pin of the RFID module to Pin 12 of the Arduino UNO.

STEP 4: Connecting Servo Motor to Arduino UNO

Servo Motor:

A servo motor is a rotary actuator that allows for precise control of angular position. It consists of a motor coupled to a sensor for position feedback. By varying the pulse width of the output voltage to a servo, you can move a servo to a specific position. The servo motor has three pins. The darkest wire is the GND pin. The lightest wire is the VCC pin. Finally, the last one is the control pin.

Circuit Connections:

  1. Connect an M-M jumper wire from the Red wire of the servo to the 5V line of the breadboard.
  2. Connect an M-M jumper wire from the brown wire of the servo to the GND line of the breadboard.
  3. Connect an M-M jumper wire from the orange wire of the servo to Pin 9 of the Arduino UNO.

STEP 5: Configure the Header Files

Download the header files and place them in the Library folder of Arduino.

STEP 6: Upload the Arduino Sketch

STEP 7: Reference Images for Construction

STEP 8: Rover: Components Required

  1. Arduino UNO x 1
  2. USB cable x 1
  3. Infrared Sensor x 2
  4. 3V DC BO Motor x 2
  5. Motor Driver Board (L293D IC ) x 1
  6. 9v Battery Pack (6 AA Cells) x 1
  7. RFID Reader x 1
  8. RFID Card x 3
  9. Breadboard x 1
  10. Connecting Wires (Male to Female) x 25
  11. Connecting Wires (Male to Male) x 25
  12. Motor Mounts x 2
  13. Caster Wheel x1
  14. Wheels x 2
  15. Driving Base x1
  16. Top Plate x 1
  17. Nuts/ Screws/ Washers
  18. Screwdriver x 1

Note: Mi-Bot kit can be purchased from ebay:

http://www.ebay.in/itm/MiBOT-Arduino-Robotic-Kit-w...

STEP 9: Construction of Mi-Bot

A detailed instructable on the construction of Mi-Bot is available on:

https://www.instructables.com/id/Construction-Manu...

STEP 10: Circuit Connections of Mi-Bot

Motor Driver:

A motor driver is a module that helps in the operation of certain motors at variable speeds by providing a separate power source other than that from the microcontroller. This protects the microcontroller/ microprocessor from the current surges initiated by the motor. This module consists of a common 3 Male headers which corresponds to +9V/+12V, GND and +5V. The +9V or +12V supply is used to power the motor. +5V is used to operate the L293D IC. This motor driver module can handle a maximum of 2 motors. For each motor, 2 pins are used to receive signals from the microcontroller/microprocessor and 2 pins are used to connect the DC motor.

Few precautions:

Always ensure and re-check the wiring (against circuit design), before powering up the board.

Circuit Connections:

  1. Connect the two terminals of the left Motor to the Left Screw Header pins of the Motor Driver Board.
  2. Repeat the same for the Right Motor also.
  3. Connect M1.A to Digital Pin 3 using Male to Female Connecting Wire.
  4. Connect M1.B to Digital Pin 5 using Male to Female Connecting Wire.
  5. Connect M2.A to Digital Pin 6 using Male to Female Connecting Wire.
  6. Connect M2.B to Digital Pin 9 using Male to Female Connecting Wire.
  7. Take one Male to Female Connecting Wire and Connect the Female side of the wire to +5V Terminal of the Motor Driver Board.
  8. Connect the other terminal to the Breadboard as shown in the circuit.
  9. Take one Male to Male connecting wire and connect one end to 5V Pin on the Arduino UNO and connect the other terminal on the breadboard where the wire was connected in the last step.
  10. Take one Male to Female connecting Wire and connect the Female side of the wire to GND terminal of the Motor Driver Board.
  11. Connect the other terminal to the Breadboard as shown in the circuit.
  12. Take one Male to Male connecting wire and connect one end to GND Pin on the Arduino UNO and connect the other terminal on the Breadboard where the wire was connected in the last step.
  13. Now take the 9V (6AA Cells) Battery pack and connect its Positive terminal to the +12V terminal of the motor Driver.
  14. Connect the negative terminal of the 9V battery to the Breadboard where GND is connected.

STEP 11: Interfacing Infrared Sensor With Arduino UNO

Infrared Sensor

An infrared Sensor has two IR LED’s. One is IR Transmitter and the other one is IR Receiver. IR Transmitter transmits the IR rays. If there is some object in front of it, then the IR Rays are reflected from the object and is received by the IR Receiver. If there is black object or no object in front of it, then no rays will be reflected. As black colour absorbs light, the IR Rays are absorbed by the Black colour. This sensor has a ‘3 pin’ configuration. The VCC and GND pins are supplied with +5V and ground from the microcontroller/ microprocessor. The OUT pin is the signal pin which gives a digital high upon sensing IR rays. The sensor module is equipped with a potentiometer which enables the user to adjust its sensitivity.

Circuit Connections:

  1. Connect the VCC pin of the Infrared Sensors to the 5V line of the breadboard.
  2. Connect the GND pin of the Infrared Sensors to the GND line of the breadboard.
  3. Connect the OUT Pin of Left IR to the Digital Pin 7 of the Arduino UNO(this IR is used for Line Follower).
  4. Connect the OUT Pin of Right IR to the Digital Pin 8 of the Arduino UNO (this IR used for Line Follower).

STEP 12: Interfacing RFID Sensors With Arduino UNO

Circuit Connections:

  1. Connect an M-F jumper wire from 3.3V pin of the RFID module to the 3.3V pin of the Arduino UNO.
  2. Connect an M-F jumper wire from GND pin of the RFID module to the GND line of the breadboard.
  3. Connect an M-F jumper wire from the RST pin of the RFID module to Pin 5 of the Arduino UNO.
  4. Connect an M-F jumper wire from the SDA pin of the RFID module to Pin 10 of the Arduino UNO.
  5. Connect an M-F jumper wire from the SCK pin of the RFID module to Pin 13 of the Arduino UNO.
  6. Connect an M-F jumper wire from the MOSI pin of the RFID module to Pin 11 of the Arduino UNO.
  7. Connect an M-F jumper wire from the MISO pin of the RFID module to Pin 12 of the Arduino UNO.

STEP 13: Upload the Arduino Sketch

STEP 14: Reference Images for Construction