15 15 10 5 3 Visual Basic
Prototype
Print Out Tiket
15 15 8 5 15 Visual Basic
Prototype
Print Out Tiket
6 13 3 5 11 Visual Basic
Prototype
Print Out Tiket
15 15 15 9 15 Visual Basic
Prototype
Print Out Tiket
15 15 10 9 15 Visual Basic
Prototype PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Print Out Tiket
15 15 10 0 4 Visual Basic
Prototype
Print Out Tiket
15 5 10 11 7 Visual Basic
Prototype
Print Out Tiket
1 13 10 11 13 Visual Basic
Prototype
Print Out Tiket
3 3 15 3 15 Visual Basic
Prototype
Print Out Tiket
15 15 15 15 15 Visual Basic
Prototype
Print Out Tiket
- PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Dari pengujian yang telah dilakukan dapat dikatakan berhasil pengendalian sensor LDR dapat bekerja untuk mendeteksi kendaraan yang masuk yang kemudian diolah oleh
mikrokontroler ATmega32 untuk dikirim melalui komunikasi serial menuju Visual Basic, di Visual Basic
optimasisasi data juga dapat bekerja dengan baik untuk mencari tempat parkir yang kosong dan terdekat. Printer untuk mencetak tiket juga dapat bekerja dengan baik
sehingga client yang akan masuk dapat menerima struk tiket yang telah tercetak oleh sistem.
4.3. Analisa dan Pembahasan Perangkat Lunak
Pada sub bab ini akan dibahas mengenai listing program pada CodeVision AVR dan Visual Basic
.
4.3.1. Aplikasi CodeVision AVR
Pada sub bab ini akan dijabarkan dan dijelaskan masing-masing fungsi pada listing program
yang diprogram menggunakan software CodeVision AVR diantaranya program pengendali sensor cahaya LDR, program untuk komunikasi serial menggunakan USART
Universal Synchronous Asynchronous Receiver Transmiter.
4.3.1.1. Pengendali Sensor Light Dependent Resistor
Pengendali sensor cahaya LDR dilakukan dengan instruksi „define‟, „define‟ berfungsi untuk mendefinisikam atau assignment, instruksi tersebut berfungsi untuk
mempermudah penulisan program.. include mega32a.h
include stdio.h include stdlib.h
define P_A ~PINC.01+~PINC.12+~PINC.24+~PINC.38 define P_B ~PINC.41+~PINC.52+~PINC.64+~PINC.78
define P_C ~PINA.01+~PINA.12+~PINA.24+~PINA.38 define P_D ~PINB.01+~PINB.12+~PINB.24+~PINB.38
define P_E ~PINB.41+~PINB.52+~PINB.64+~PINB.78
Program dengan instruksi define diatas digunakan untuk memasukkan inputan-inputan sensor cahaya LDR kedalam pin-pin yang terdapat pada mikrokontroler ATmega32, contoh
salah satu pembacaan instruksi define adalah pada define P_A yang berarti bahwa saat akan mengendalikan sensor cahaya LDR yang terdapat pada di blok P.A yang inputannya pada
port C.0 sampai dengan port C.3 cukup dengan menulis perintah P_A, maka mikrokontroler PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
sudah mengetahuinya. Dan perlu diketahui juga bahwa mikrokontroler hanya mengetahui angka, alamat, dan port sehingga perintah yang akan diberikan harus didefinisikan lebih
dahulu menggunakan instruksi define. Paket data sensor LDR yang dikirim oleh mikrokontroler diolah dari biner menuju
bilangan desimal supaya pengirimannya lebih cepat.Inputan sensor yang terdapat didalam instruksi define diolah kedalam bentuk biner.
printf d d d d d \n,parkirA, parkirB, parkirC, parkirD, parkirE;
Perintah „printf‟ diatas digunakan untuk mengirimkan keadaan parkir melalui komunikasi serial dan d digunakan untuk mengubah paket data kebentuk desimal. Sehingga
paket data yang dikirim mikrokontroler ATmega32 untuk mengendalikan sensor LDR adalah paket data berupa bilangan yang sudah kebentuk desimal.
4.3.1.2. Pengendali Komunikasi USART
Pada bagian ini berfungsi sebagai komunikasi serial USART untuk menghubungkan antara mikrokontroler ATmega32 dengan laptop. Baudrate yang digunakan yaitu 9600 bps.
Sistem parkir menggunakan komunikasi dua arah antara mikrokontroler dengan laptop sehingga dalam inisialisasinya Transmitter dan Receiver
di „On‟ kan. Fungsi “getchar” yaitu untuk menerima karakter dari laptop agar mikrokontroler dapat mengerti apa yang
dimaksud oleh laptop saat mengirimkan karakter. Ifcek==M merupakan karakter yang dikirim dari laptop ke mikrokontroler sebagai instruksi untuk mengirimkan paket data yang
telah diolah pada mikrokontroler, dan karakter yang dikirim adalah „M‟ jika karakter yang masuk adalah „M‟ maka mikrokontroler akan mengirim data melalui serial. Fungsi
“cek_parkir; yaitu untuk memanggil fungsi cek keadaan parkir. Sedangkan printf adalah
untuk mengirimkan keadaan parkir melalui komunikasi serial. PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
USART initialization Communication Parameters: 8 Data, 1 Stop, No Parity
USART Receiver: On USART Transmitter: On
USART Mode: Asynchronous USART Baud Rate: 9600
UCSRA=0x00; UCSRB=0x18;
UCSRC=0x06; UBRRH=0x00;
UBRRL=0x47; while 1
{ cek=getchar; terima data dari serial
ifcek==M apakah data di terima sama dengan M? {
cek_parkir; panggil fungsi cek keadaan parkir printf d d d d d \n,parkirA, parkirB, parkirC, parkirD, parkirE;
kirim keadaan parkir melalui serial }
} }
4.3.1.3. Subrutin Program Utama
Pada bagian ini akan dibahas mengenai subrutin program yang akan dieksekusi secara terus menerus karena terdapat didalam fungsi while. Listing program dapat dilihat dibawah
ini: while 1
{ Cek=getchar;
terima data dari serial ifcek==M
apakah data di terima sama dengan M? {
cek_parkir; panggil fungsi cek keadaan parkir
printf d d d d d \n,parkirA, parkirB, parkirC, parkirD, parkirE; kirim
keadaan parkir melalui serial }
} }
Pada bagian listing program diatas digunakan untuk pengiriman paket data melalui komunikasi serial
Subrutin yang terdapat didalam “while1” akan dieksekusi secara terus menerus hingga power
“OFF”. Hal ini dikarenakan didalam kurung while diberi angka “1” yang berarti bernilai true atau akan dieksekusi secara terus menerus.
4.3.2. Aplikasi VISUAL BASIC
Pada sub bab ini akan dijabarkan listing program yang diprogram menggunakan software Visual Basic
diantaranya penjelasan tampilan GUI, inisialisasi komunikasi serial, dan proses optimasi.
4.3.2.1. Tampilan GUI VISUAL BASIC
GUI Graphical User Interface yaitu suatu tampilan yang berfungsi untuk mempermudah dalam pengawasan program yang sedang terjadi atau dieksekusi. GUI
memiliki peran yang sangat baik karena dengan adanya GUI, pengguna akan dapat melihat apa yang sedang terjadi didalam program seperti pemrosesan data dan lain-lain. Tampilan
GUI yang dibuat dapat ditunjukan pada Gambar 4.9, 4.10. dan 4.11. dibawah ini
Gambar 4.9. Tampilan Visual Basic Pada Form 1
Gambar 4.10. Tampilan Visual Basic Pada Form 1 PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Gambar 4.11.Tampilan Visual Basic Pada Form 2 Tampilan GUI pada Visual Basic dibagi menjadi dua form dalam satu project. Pada
form yang pertama tampian berisi tampilan awal saat client akan masuk menuju lokasi
gedung parkir, tampilan pada form pertama yang akan muncul pada Visual Basic. Tampilan form
terdapat beberapa control pada toolbox yaitu text dan menu command button menu text berisi ucapan selamat datang yang berisi tulisan „Selamat Datang‟ selain itu juga berisi pesan
tentang status ketersediaan tempat parkir jika masih terdapat tempat parkir maka pesan pada text
adalah „Silahkan tekan tombol cek parkir‟ namun jika sudah tidak parkir yang tersedia atau parkir penuh maka pesan yang akan muncul pada menu text berupa „Maaf Parkir Sedang
Penuh‟.
Selain menu toolbox text terdapat toolbox menu command button, menu tersebut digunakan dalam aplikasi sebagai tombol tekan client untuk mengecek keadaan parkir yang
akan ditampilkan pada sebuah denah parkir gedung yang akan ditunjukkan pada form kedua dan form kedua dapat dilihat pada gambar 4.10. pada form kedua ini terdapat berbagai macam
toolbox seperti shape, line, yang digunakan untuk menggambarkan denah parkir gedung. Selain itu juga terdapat toolbox text yang berisi pesan yang ditujukkan untuk client pesan
tersebut berisi informasi blok parkir yang akan dituju oleh client dan pesan tersebut akan tercetak melalui perangkat keras printer, sehingga client sangat dimudahkan dengan tampilan
GUI Visual Basic
4.3.2.2. Inisialisasi Komunikasi Serial
Sebelum menghubungkan laptop dengan mikrokontroler Atmega32, maka pada bagian program Visual Basic harus di inisialisasi terlebih dahulu. Hal ini dikarenakan pada
bagian laptop dengan mikrokontroler harus memiliki baudrate yang sama. Jika kedua perangkat tidak memiliki baudrate yang sama, maka sudah dapat dipastikan kedua perangkat