Cara Membuat Smart Parking System Menggunakan ARDUINO UNO
LATAR BELAKANG
Saat ini perpakiran dalam suatu gedung sudah mulai menggunakan sistem otomatisasi dalam pengoperasiannya, tetapi penggunaan parkir masih saja terkendala atau kesulitan dalam mencari tempat parkir yang kosong dengan mengelilingi area parkir sehingga kurang efisien dan membutuhkan waktu yang lama untuk memarkirkan kendaraan. Jika proses pelayanan tersebut dapat digantikan dengan menggunakan sistem yang lebih maju lagi maka akan sangat menguntungkan bagi pengguna parkir, baik itu untuk perusahaan besar atau tempat umum lainnya. Berdasarkan hal tersebut maka merasa perlu membuat suatu alat kendali parkir cerdas (smart parking system) dengan menggunakan mikrokontroler sebagai otak pengendalian
SKEMA RANGKAIAN
KOMPONEN
PROGRAM
Dalam pembuatan kode ini saya menggunakan Arduino IDE yang bisa Anda download di sini. Berikut kodenya :
Jadi kira - kira begitulah cara membuat Smart Parking System Menggunakan ARDUINO UNO. Silakan mencoba dan sampai berjumpa dilain kesempatan.
Saat ini perpakiran dalam suatu gedung sudah mulai menggunakan sistem otomatisasi dalam pengoperasiannya, tetapi penggunaan parkir masih saja terkendala atau kesulitan dalam mencari tempat parkir yang kosong dengan mengelilingi area parkir sehingga kurang efisien dan membutuhkan waktu yang lama untuk memarkirkan kendaraan. Jika proses pelayanan tersebut dapat digantikan dengan menggunakan sistem yang lebih maju lagi maka akan sangat menguntungkan bagi pengguna parkir, baik itu untuk perusahaan besar atau tempat umum lainnya. Berdasarkan hal tersebut maka merasa perlu membuat suatu alat kendali parkir cerdas (smart parking system) dengan menggunakan mikrokontroler sebagai otak pengendalian
SKEMA RANGKAIAN
Rangkaian Pada Proteus ISIS |
KOMPONEN
- Arduino Uno Sebuah mikrokontroler yang di dalamnya terdapat program yang berfungsi dalam pengendalian komponen elektronika yang akan kita gunakan.
- Ultrasonik Sensor HC-SR04 Sebuah sensor yang dapat menghitung jarak terhadap suatu benda, jarak ini akan berfungsi untuk menentukan apakah tempat parkir tersebut "kosong" atau "terisi".
- LCD 16x4 Berfungsi sebagai output dari alat ini, apakah tempat parkir A "terisi" atau "kosong" dan tempat parkir selanjutnya.
- I2C LCD Module Berfungsi untuk mempermudah dalam pembuatan program dan lebih praktis dan efisien dalam penggunaan kabel daripada tanpa menggunakan LCD Module
PROGRAM
Dalam pembuatan kode ini saya menggunakan Arduino IDE yang bisa Anda download di sini. Berikut kodenya :
#include
#include
LiquidCrystal_I2C lcd(0x20 ,2,1,0,4,5,6,7,3, POSITIVE);
/*0x20 Merupakan default alamat I2C yang digunakan di Proteus. Ganti dengan alamat I2C yang Anda miliki.*/
#define trig1 7
#define echo1 6
#define trig2 5
#define echo2 4
#define trig3 3
#define echo3 2
void setup() {
Serial.begin(9600);
pinMode(trig1, OUTPUT);
pinMode(trig2, OUTPUT);
pinMode(trig3, OUTPUT);
pinMode(echo1, INPUT);
pinMode(echo2, INPUT);
pinMode(echo3, INPUT);
lcd.begin(16,4);
}
void loop() {
long duration1, distance1;
digitalWrite(trig1, LOW);
delayMicroseconds(2);
digitalWrite(trig1, HIGH);
delayMicroseconds(10);
digitalWrite(trig1, LOW);
duration1 = pulseIn(echo1, HIGH);
distance1 = (duration1/2) / 29.1;
long duration2, distance2;
digitalWrite(trig2, LOW);
delayMicroseconds(2);
digitalWrite(trig2, HIGH);
delayMicroseconds(10);
digitalWrite(trig2, LOW);
duration2 = pulseIn(echo2, HIGH);
distance2 = (duration2/2) / 29.1;
long duration3, distance3;
digitalWrite(trig3, LOW);
delayMicroseconds(2);
digitalWrite(trig3, HIGH);
delayMicroseconds(10);
digitalWrite(trig3, LOW);
duration3 = pulseIn(echo3, HIGH);
distance3 = (duration3/2) / 29.1;
lcd.setCursor(0, 0);
lcd.print("Informasi Parkir");
if (distance1 >= 100) {
lcd.setCursor(0, 1);
lcd.print("P A : Kosong");
} else if (distance1 <30 1="" :="" a="" distance2="" if="" lcd.print="" lcd.setcursor="" terisi="">= 100) {
lcd.setCursor(0, 2);
lcd.print("P B : Kosong");
} else if (distance2 <30 2="" :="" b="" distance3="" if="" lcd.print="" lcd.setcursor="" terisi="">= 100) {
lcd.setCursor(0, 3);
lcd.print("P C : Kosong");
} else if (distance3 <30 3="" :="" a="" arak="" b="" c="" cm="" delay="" distance1="" distance2="" distance3="" div="" lcd.print="" lcd.setcursor="" sensor="" serial.print="" serial.println="" terisi="">
30>30>30>
#include
LiquidCrystal_I2C lcd(0x20 ,2,1,0,4,5,6,7,3, POSITIVE);
/*0x20 Merupakan default alamat I2C yang digunakan di Proteus. Ganti dengan alamat I2C yang Anda miliki.*/
#define trig1 7
#define echo1 6
#define trig2 5
#define echo2 4
#define trig3 3
#define echo3 2
void setup() {
Serial.begin(9600);
pinMode(trig1, OUTPUT);
pinMode(trig2, OUTPUT);
pinMode(trig3, OUTPUT);
pinMode(echo1, INPUT);
pinMode(echo2, INPUT);
pinMode(echo3, INPUT);
lcd.begin(16,4);
}
void loop() {
long duration1, distance1;
digitalWrite(trig1, LOW);
delayMicroseconds(2);
digitalWrite(trig1, HIGH);
delayMicroseconds(10);
digitalWrite(trig1, LOW);
duration1 = pulseIn(echo1, HIGH);
distance1 = (duration1/2) / 29.1;
long duration2, distance2;
digitalWrite(trig2, LOW);
delayMicroseconds(2);
digitalWrite(trig2, HIGH);
delayMicroseconds(10);
digitalWrite(trig2, LOW);
duration2 = pulseIn(echo2, HIGH);
distance2 = (duration2/2) / 29.1;
long duration3, distance3;
digitalWrite(trig3, LOW);
delayMicroseconds(2);
digitalWrite(trig3, HIGH);
delayMicroseconds(10);
digitalWrite(trig3, LOW);
duration3 = pulseIn(echo3, HIGH);
distance3 = (duration3/2) / 29.1;
lcd.setCursor(0, 0);
lcd.print("Informasi Parkir");
if (distance1 >= 100) {
lcd.setCursor(0, 1);
lcd.print("P A : Kosong");
} else if (distance1 <30 1="" :="" a="" distance2="" if="" lcd.print="" lcd.setcursor="" terisi="">= 100) {
lcd.setCursor(0, 2);
lcd.print("P B : Kosong");
} else if (distance2 <30 2="" :="" b="" distance3="" if="" lcd.print="" lcd.setcursor="" terisi="">= 100) {
lcd.setCursor(0, 3);
lcd.print("P C : Kosong");
} else if (distance3 <30 3="" :="" a="" arak="" b="" c="" cm="" delay="" distance1="" distance2="" distance3="" div="" lcd.print="" lcd.setcursor="" sensor="" serial.print="" serial.println="" terisi="">
30>30>30>
Jadi kira - kira begitulah cara membuat Smart Parking System Menggunakan ARDUINO UNO. Silakan mencoba dan sampai berjumpa dilain kesempatan.
Comments