ETS PBO "Manless Parking System"
"Manless Parking System"
Nama : Isnaini Nurul KurniaSari
NRP : 05111740000010
Kelas : PBO-B
Hallo teman-teman Isna, pada kesempatan kali ini saya akan memposting ETS Pemrograman Berorientasi Objek (PBO). Pada kesempatan kali ini saya diminta untuk membuat sistem parkir otomatis yang bernama Manless Parking System. Manless Parking System adalah sistem Parkir yang di pintu masuknya tidak dijaga oleh operator. Namun digantikan oleh kotak dispenser yang ada tombolnya untuk membuka palang parkir dan mencetak tanda mulai parkir. Sistem Parkir seperti ini banyak digunakan di bandara, Rumah Sakit, Gedung Perkantoran, Aparartment, Mall-Plaza dan lain sebagainya.
Sistem ini bertujuan untuk mengurangi kemungkinan kehilanggan kendaraan ( Pencurian ) dan Juga Untuk meminimalisir kebocoran dana, karena sistem ini terintregasi dengan aplikasi parkir dimana ada database kendaraan dan laporan keuangan yang masuk dan keluar harus sama. Alur Sistem ini di pintu In tdk perlu Operator fungsi operator diganti dengan box tiket dispenser yang mana didalam nya terdapat PC dan Mikrocontroller sebagai pengendali system di pintu masuk, Sedangkan di Pintu Keluar membutuhkan operator untuk Proses Identifikasi Secara Visual Baik kendaraan maupun laporan Keuangan.
Untuk class yang digunakan adalah:
- Class Vehicle, merupakan class untuk input jenis kendaraan, nopol, serta durasi parkir
- Class Input Reader, sebagai class untuk melakukan input
- Class ParkingMachine, merupakan class yang berupa mesin parkir, dimana class ini menjadi pusat pengaturan operasi-operasi dan obyek-obyek pada mesin
Pada Alur Proses Masuk:
- Metal detector mainles mendeteksi kendaraaan.
- Gretting “Selamat datang silahkan tekan tombol atau tempelkan kartu anda”.
- Jika pengemudi mempunyai kartu e-money maka pengemudi menempelkan kartu di mesin tiket dispenser.
- Jika pengemudi tidak mempunyai kartu e-money maka pengemudi Menekan tombol tiket.
- Struk parkir keluar.
- Pengemudi mengambil tiket parkir.
- Camera capture kendaraan masuk.
- Palang Gate Terbuka.
- Kendaraan memasuki area parkir.
- Kendaraan melewati metal detector gate.
- Palang Gate Tertutup.
Pada Alur Proses Masuk:
- Petugas melakukan proses scaning struk barcode.
- Dari hasil scaning maka akan keluar plat nomor beserta gambar fisik kendaraan pada waktu transaksi masuk.
- Petugas mencocokan plat nomor dengan STNK kendaraan.
- Informasi Durasi parkir dan biaya parkir.
- Tekan 'ENTER' untuk mencetak struk parkir,dengan perintah tersebut secara otomatis pintu akan terbuka.
- Palang pintu akan terbuka dan slip parkir tercetak.
- Palang Gate Terbuka.
- Kendaraan keluar area parkir.
- Kendaraan melewati metal detector gate.
- Palang Gate Tertutup.
Perangkat Pintu Masuk Parkir:
- Dispenser Box: adalah box dimana Termal Printer atau bisa juga berupa Card Dispenser dan perangkat lain dipasang. Box Dispenser ini berada paling depan karena pengunjung harus tekan tombol dan mendapatkan karcis parkir atau Kartu Parkir yang keluar dari Dispenser Box ini.
- Loop Detector: adalah perangkat sensor kendaraan yang mana terdiri dari antena loop yang di pasang dibawah lantai atau aspal atau paving (tergantung area) dan controller loop detector itu sendiri. Biasanya pada Sistim Parkir Manless paling tidak dipasang 2 unit loop detektor yaitu di depan Box Dispenser dan di depan Barrier Gate.
- Controller Manless: adalah modul yang didesain khusus dari microcontroller untuk bisa menterjemahkan input dan output yang diperlukan pada sistem parkir manless ini. Beda supplier beda pula controller manless ini. Controller Manless ini dipasang di dalam Box Dispenser. Dibeberapa suppler system parkir menggunakan mini-pc atau juga ada yang menggunakan motherboard Pc. Kami menggunakan pure controller yang berkomunikasi dengan PC di gate exit melalui LAN (local Area Network) yang terbukti lebih stabil.
- Thermal Printer: adalah printer thermal auto cutter yang dugunakan untuk print karcis setiap pengunjung yang masuk area parkir. Dan pasti Printer auto cutter ini berada didalam box dispenser yang dipasang sedemikian rupa sehingga karcir parkir bisa keluar dengan sempurna dan yang tidak kalah penting adalah gampang dalam mengganti kertas thermal.
- Camera: adalah perangkat yang digunakan untuk capture foto kendaraan yang masuk. Bisa capture pelat nomor, capture kendaraan utuh atau capture pengendara atau driver tergantung kebutuhan. Dan hasil foto yang dicapture ini adalah sebagai foto perbandingan yang akan muncul di komputer pos keluar untuk dibandingkan dengan hasil camera dipos keluar itu sendiri oleh operator parkir. Dalam hal ini kami menggunakan IP Camera dengan resolusi gambar yang cukup bagus dibandingkan dengan yang menggunakan webcam.
- Display: adalah perangkat tambahan yang jika diperlukan adalah untuk menampilkan text pada box dipenser yang seyogyanya bersifat interaktif dan memberikan petunjuk tambahan bagi pengendara tentang apa yang harus dilakukan dengan sistem parkir manless ini. Tidak semua supplier parkir menyedikan fitur tambahan ini.
- Speaker: adalah perangkat yang mengelaurkan suara tentang bagaimana pengendara bertindak dalam menggunakan Sistim Manless ini. Suara yang dimunculkan bisa berupa "Selamat datang di.................., Silakan tekan Tombol Hijau"
- Tombol: adalah perangkat yang ditekan berdasarkan instruksi yang muncul dari speaker agar Box Dispenser mengeluarkan Karcis, Camera akan capture gambar dan Barrier Gate akan terbuka.
- Barrier Gate: adalag Palang parkir yanga akan buka tutup sesuai instruksi yang diberikan oleh sistem menless ini.
Perangkat Pintu Keluar Parkir
- Pos Keluar: adalah tempat duduk operator di jaluar keluar dari system parkir ini. Pos Keluar ini bisa berupa Pos Permanen atau juga Pos Portable
- Komputer: adalah perangkat dimana software parking system di install
- Thermal Printer: untuk print tiket keluar jika pengunjung menghendaji bukti parkir
- Barcode Scanner: adalag alat pembaca barcode yang di cetak pada karcis parkir
- Mini Controller: adalah controller sederhana yang berfungsi sebagai interface antara barrier gate keluar dengan PC
- Camera: untuk capture gambar kendaraan pasa saat diam dan melakukan pembayaran parkir yang mana hasil capture gambar ini akan dibandingkan dengan capture pada saat kendaraan masuk tadi untuk selanjutnya pihak operator menilai kecocokannya
- Software Parking System
- Barrier Gate Keluar
- Loop Detector atau VLD
Berikut ini adalah Source Code untuk Class Packing Machine:
/**
* ETS PBO
* Berikut ini adalah implementasi dari Sistem Parkir Otomatis
* Dengan menggunakan Manless Parking System
* Berikut ini adalah Source Code untuk class ParkingMachine
* @author (Isnaini Nurul KurniaSari)
* @version (Surabaya, 15 Oktober 2018)
*/
import java.util.Scanner;
public class ParkingMachine
{
private InputReader reader;
private Vehicle vehicle;
private int harga = 0;
public ParkingMachine()
{
reader = new InputReader();
vehicle = new Vehicle();
}
public void start()
{
printWelcome();
vehicle.createVehicle();
harga = 1000*vehicle.jenis*vehicle.lama;
System.out.println("Masukkan identitas kendaraan anda sebelum parkir: ");
System.out.println("Jenis kendaraan : " + vehicle.jenis);
System.out.println("Nomor polisi : " + vehicle.nopol);
System.out.println("Durasi : " + vehicle.lama + "jam");
System.out.println("Biaya Parkir : Rp" + harga );
System.out.println("#Arahkan No polisi kendaraan anda pada camera#");
System.out.println("Klik Tombol Hijau(enter) jika data yang anda masukkan sudah benar");
reader.getInput();
System.out.println("Silakan tempelkan kartu pembayaran anda (tekan enter)");
reader.getInput();
printTicket();
}
private void printWelcome(){
System.out.println("#######Selamat datang di Isna's Mart###########");
}
public void printTicket(){
System.out.println("####################Tiket1#####################");
System.out.println("####Sistem parkir elektronik Isna'sMart####");
System.out.println("Jenis kendaraan : " + vehicle.jenis);
System.out.println("Nomor polisi : " + vehicle.nopol);
System.out.println("Durasi : " + vehicle.lama + "jam");
System.out.println("Biaya Parkir sejumlah : Rp" + harga );
System.out.println("##Mohon letakkan tiket ini di kendaraan anda##");
System.out.println("#####Simpan dan jaga tiket anda baik2#########");
System.out.println("##########Jangan sampai hilang ya#############");
System.out.println("#Kalau hilang nanti anda ditahan disini loh:(#");
System.out.println("##############################################");
System.out.println();
System.out.println("####################Tiket2#####################");
System.out.println("####Sistem parkir elektronik Isna'sMart####");
System.out.println("Jenis kendaraan : " + vehicle.jenis);
System.out.println("Nomor polisi : " + vehicle.nopol);
System.out.println("Durasi : " + vehicle.lama + "jam");
System.out.println("Biaya Parkir : Rp" + harga );
System.out.println("#Silahkan letakkan tiket ini di kendaraan anda#");
System.out.println("#####Simpan dan jaga tiket anda baik2#########");
System.out.println("##########Jangan sampai hilang ya#############");
System.out.println("#kalau hilang nanti anda ditahan disini loh:(#");
System.out.println("##############################################");
System.out.println();
}
}
Berikut ini adalah Source Code untuk Vehicle:
/**
* ETS PBO
* Berikut ini adalah implementasi dari sistem Parkir Otomatis
* Dengan menggunakan Manless Parking System
* Berikut ini adalah Source Code untuk class Vehicle
* @author (Isnaini Nurul KurniaSari)
* @version (Surabaya, 15 Oktober 2018)
*/
public class Vehicle
{
private InputReader reader;
public int lama = 0;
public int jenis = 0;
public String nopol;
public void createVehicle(){
reader = new InputReader();
jenis = getJenis();
nopol = getNopol();
lama = getLama();
}
public int getJenis(){
System.out.println("Jenis Kendaraan Anda:");
System.out.println("1. Motor");
System.out.println("tarif parkir:Rp.1000/jam");
System.out.println("2. Mobil");
System.out.println("tarif parkir:Rp.2000/jam");
int jenis = reader.getInt();
return jenis;
}
public int getLama(){
System.out.println("Lama Anda Akan Parkir (dalam jam) :");
int durasi = reader.getInt();
return durasi;
}
public String getNopol(){
System.out.println("Mohon masukkan nomor polisi kendaraan anda: ");
String nopol = reader.getInput();
return nopol;
}
}
Berikut ini adalah tampilan pada Blue-J :
Klik kanan pada Class Packing Machine, Klik New PackingMachine() |
Ketikkan Nama sesuai keinginanmu, Klik OK |
Klik kanan, Klik void start () |
cetak tiket parkir
tiket pertama disimpan baik-baik dan tiket kedua disimpan di kendaraan
yang nantinya akan dicocokkan oleh petugas apakah sesuai dengan tiket pertama |
cetak tiket parkir tiket pertama disimpan baik2 dan tiket kedua disimpan di kendaraan yang nantinya akan dicocokkan oleh petugas apakah sesuai dengan tiket pertama |
Terima Kasih
Semoga Bermanfaat :)
Comments
Post a Comment