Select Page

Autonomous Parking System

Objective:
The objective of this project is to implement an autonomous parking system, which
1. Guides the driver to the available parking slot through the shortest path.
2. Let the user know in advance, if the parking is full.
Thus, saves the user time which could be wasted in searching the parking slot.

 

 

 

 

Motivation:

With the increased urbanization and lifestyle changes, the autonomous systems have been
gaining prominence in every aspect of life, and vehicle parking is one of the key aspects.

With the increase in number of vehicles and rise of technologies such as self-driven cars, the
need for autonomous systems in terms of monitoring the cars becomes a prominent area.

This project considers one such area – Autonomous parking system which enables the cars
to occupy and exit parking spaces with minimal human intervention and also saves the user
time.

Working:
1. Entry of Car to the Parking Zone:
1.1. Ultrasonic Sensor is used to detect the presence of car at the entry point. If the
distance of car from the sensor is less than threshold distance, entry is detected.
1.2. Subsequently, Stepper motor rotates to open the gate.
1.3. 4×4 Keypad is then used to enter the car number which is stored in the database.
1.4. Now the stepper motor rotates back to close the entry door. Here, the stepper
motor does not rotate back (gate does not close) until the car has been entered. Or
if another car is also there in tandem, then the door remains open.
1.5. Thus, the entry of the car is done successfully.
2. Allocation of slot (if available), and shortest path suggestion:
2.1. If all the slots are full, then the control goes into an infinite loop, and waits until at
least one of the slots is free.
2.2. Else If the empty slots are available, then, based on the car number, a hashing
function is used to allot a slot to the car.

2.3. If the calculated slot is not empty, linear probing technique is used to find the next
available slot.
2.4. The final allotted slot is displayed to the user on LCD. And also, the spot is
highlighted using LEDs.
2.5. Once the slot has been allocated, next task is to find the shortest path to the slot.
This is done by using Dijkstra’s Algorithm. And the shortest path to the slot is
displayed on 16×2 LCD.
3. Exit of Car from the Parking Zone:
3.1. Exit is made a high priority task (because it will help in entry of more cars) and is
implemented using interrupt.
3.2. Whenever the switch SW1 on board is pressed, GPIO PortF Handler function is
implemented.
3.3. First, car number is entered using keyboard. If this car number is not in database,
then, exit is not allowed and interrupt returns, considering it as a mistake.
3.4. But, if car number is present in this database, then based on the time spent by the
car in parking zone, payment is done by user.
3.5. After the successful payment confirmation, stepper motor rotates, thus opening the
exit door for the car exit. Thus, in this project, a car cannot exit the arena without
making the payment.
3.6. After some delay, stepper motor rotates back to close the exit door.
4. Here, Systick handler is used to continuously update the time and to highlight the allotted
slot for some duration.

Components Used:

1.TIVA C Series Micro-controller (TM4C123GH6PM)
2.Ultrasonic Sensor –1
3.Stepper Motor –1
4.LCD –1
5.4×4 Keypad Matrix –1
6.LEDs –4
Pin Configuration:
PA2 – PA5: I0 –I3 of Stepper Motor
PA6 – PA7: LCD RS and E Pin
PB0 – PB7: LCD D0 – D7
PC4 – PC7: 4 Columns of Keypad
PD2 – PD3, PD6 – PD7: 4 LEDs
PE0 – PE3: 4 Rows of Keypad
PF0 – PF1: Ultrasonic Sensor; PF0: Echo; PF1: Trigger
PF4: SW1; GPIO PortF interrupt

Implementation Flow Details:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Shortest Path Search Algorithm: Dijkstra’s Algorithm:

 

 

 

 

 

 

 

 

 

 

 

Future Work:
1. Car detection can be implemented using advanced Image recognition mechanism which
facilitates no human intervention for car number entry.
2. Can be extended to support IoT services like real time booking and cost estimation through
an app.
3. Memory card can be integrated to store the data even after the power failure.
4. Can be extended to car-manoeuvring system that moves a vehicle from a traffic lane into a
parking spot to perform parking using the shortest path.

References:

  1. Tiva c series data sheet
  2. ultrasonic sensor data sheet

Demo:https://www.youtube.com/watch?v=QeHq6F8Y514