Automatic parking system using Arduino in proteus simulation

Automatic parking system using Arduino in proteus simulation

In this article we will learn how to interface arduino with Automatic parking system in proteus.
In the last post we will learn how to interface arduino with Temperature sensor & LCD in proteus. You can visit our website,
I hope you appreciate my work, let’s discuss about today’s project.

Components which we use in this project are listed below:

  1. Arduino nano
  2. LCD display
  3. DC motor driver
  4. PIR sensor
  5. Push button
  6. DC motor
  7. Jumper wires

Diagram of this project is below:

Automatic parking system using Arduino in proteus simulation
Automatic parking system using Arduino in proteus simulation

Construction of Automatic parking system using Arduino in proteus simulation:

  • Connect the VDD point of LCD display with the +ve
  • Connect the RW & VSS common points with the GND
  • Connect the RS point of LCD display with the D7 point of arduino
  • Connect the E point of LCD display with the D6 point of arduino
  • Connect the D4 point of LCD display with the D5 point of arduino
  • Connect the D5 point of LCD display with the D4 point of arduino
  • Connect the D6 point of LCD display with the D3 point of arduino
  • Connect the D7 point of LCD display with the D2 point of arduino
  • Connect the VS,VSS & EN1 common point of DC motor driver with the +ve
  • Connect the GND point of driver with the GND
  • Connect the IN2 point of driver with the D8 pin of arduino
  • Connect the IN1 point of driver with the D9 pin of arduino
  • Connect the OUT1 pin of driver with the one side digital pin of DC motor
  • Connect the OUT2 pin of driver with the other digital pin of DC motor
  • Connect the VCC point of PIR sensor 1 with the +ve point
  • Connect the GND point of PIR sensor 1 with the GND
  • Connect the OUT pin of PIR sensor 1 with the D10 pin of arduino
  • Connect the VCC point of PIR sensor 2 with the +ve point
  • Connect the GND point of PIR sensor 2 with the GND
  • Connect the OUT pin of PIR sensor 2 with the D11 pin of arduino
  • Connect the VCC point of PIR sensor 3 with the +ve
  • Connect the GND point of PIR sensor 3 with the GND
  • Connect the OUT pin of PIR sensor 3 with the D12 pin of arduino
  • (we use 3 push buttons for car animation)

Working of Automatic parking system using Arduino in proteus simulation:

An automatic parking system using Arduino is a project that utilizes Arduino microcontrollers and various sensors to automate the process of parking a vehicle. It typically involves detecting the presence of a vehicle, guiding it to an available parking spot, and ensuring safe and precise parking.

Application of Automatic parking system using Arduino in proteus simulation:

  1. Smart Parking Lots
  2. Garage Parking
  3. Public Parking
  4. Valet Parking

Advantages of Automatic parking system using Arduino in proteus simulation:

  1. Efficiency
  2. Time Savings
  3. Reduced Traffic Congestion
  4. Improved Safety
  5. Security

Program code of this project is below:

#include <LiquidCrystal.h>

 

LiquidCrystal lcd(7, 6, 5, 4, 3, 2);

 

#define openGate 8

#define closeGate 9

#define sensor1 10

#define sensor2 11

#define sensor3 12

 

byte park[8] = {

B10001,

B10001,

B01010,

B00100,

B01010,

B10001,

B10001,

};

 

byte npark[8] = {

B11111,

B10001,

B10001,

B10001,

B10001,

B10001,

B11111,

};

 

int pA1, pA2, pA3;

 

void setup() {

pinMode(openGate, OUTPUT);

pinMode(closeGate, OUTPUT);

pinMode(sensor1, INPUT);

pinMode(sensor2, INPUT);

pinMode(sensor3, INPUT);

 

lcd.createChar(0, park);

lcd.createChar(1, npark);

lcd.begin(16, 2);

lcd.setCursor(0, 0);

lcd.print(“Gate Opening”);

}

 

void loop() {

// Check sensor inputs

int sensor1State = digitalRead(sensor1);

int sensor2State = digitalRead(sensor2);

int sensor3State = digitalRead(sensor3);

 

// If all sensors are active, close the gate

if (sensor1State == HIGH && sensor2State == HIGH && sensor3State == HIGH) {

digitalWrite(openGate, LOW);

digitalWrite(closeGate, HIGH);

lcd.clear();

lcd.setCursor(0, 0);

lcd.print(“Gate Closing”);

} else {

// If any sensor is not active, open the gate

digitalWrite(openGate, HIGH);

digitalWrite(closeGate, LOW);

lcd.clear();

lcd.setCursor(0, 0);

lcd.print(“Gate Opening”);

}

}