You are on page 1of 72

PROYEK AKHIR

RANCANG BANGUN SISTEM KEAMANAN PARKIR


BERPASSWORD

Tatak Basuki Riandono Santoso


NRP. 7203 030 024

Dosen Pembimbing :

Akuwan Saleh, SST


NIP. 131 831 467

JURUSAN TEKNIK TELEKOMUNIKASI


POLITEKNIK ELEKTRONIKA NEGERI SURABAYA
S U R A B A Y A 2006
RANCANG BANGUN SISTEM KEAMANAN PARKIR
BERPASSWORD

Oleh:
TATAK BASUKI RIANDONO SANTOSO
7203.030.024

Proyek Akhir ini Diajukan Sebagai Salah Satu Syarat


Untuk Memperoleh Gelar Ahli Madya (A.Md.)
di
Politeknik Elektronika Negeri Surabaya
Institut Teknologi Sepuluh Nopember Surabaya

Disetujui oleh
Tim Penguji Proyek Akhir: Dosen Pembimbing:

1.Drs. Miftahul Huda, MT. Akuwan Saleh, SST.


NIP. 132.055.257 NIP.131.831.467

2. Ir. Anang Budikarso, MT


NIP. 131.793.744

3. Hary Oktavianto, ST.


NIP. 132.300.375

Mengetahui:
Ketua Jurusan Telekomunikasi

Drs. Miftahul Huda, MT.


NIP.132.055.257
ABSTRAK
Adanya gangguan-gangguan dalam berbagai sistem keamanan parkir
dewasa ini yang dapat menyebabkan turunnya tingkat keamanan dari
sebuah tempat parkir yang ada saat ini. Selanjutnya, tujuan dari proyek
akhir ini adalah mengaplikasikan bahasa pemrograman visual basic
untuk aplikasi pada sebuah sistem keamanan parkir berpassword yang
aman dan nyaman bagi setiap para pengguna jasa tempat parkir. Disini
bahasa pemrogaman visual basic digunakan sebagai pengontrol arah
putaran besar sudut putaran dari motor stepper serta media untuk
memasukkan database dengan cara mengembangkannya sedemikian
rupa dan dengan memadukan dengan microsoft access sebagai media
penyimpan database. Sehingga dapat digunakan sebagai alat bantu bagi
petugas parkir dalam meningkatkan keamanan tempat parkir dengan
dilengkapi database pada sebuah PC. Disini PC yang digunakan hanya
satu hal ini dikarenakan untuk lebih mengefisiensikan kinerja dari sistem
tersebut sehingga lebih mudah dalam hal pengontrolan maupun
pengawasan.

Kata Kunci : motor stepper, sistem keamanan parkir, database visual


basic

iii
ABSTRACT
Nowdays,there are many problem in parking security system that cause
decreasing of their quality in the parking area. And The purpose of my
Final Project is to applicate Visual Basic Programming Language in
parking security system, that has password in order to give system safely
and comfortly for parking area’s user. In my final project, Visual Basic
programming language is used to control the direction of stepper motor
rotation, the value of rotation degree, and as media to input database.
The way of inputing database is by develop this system and combine
with Microsoft Access as media to store database. This can use to help
parking’s employee in effort of increasing security parking system,
because this system is completed with database in PC. Here, PC is used
to make working system more efficien in order easier to control and
observe it

keywords : motor stepper, park security system, visual basic database

iv
KATA PENGANTAR
Dengan mengucapkan Puji Syukur kehadirat Allah SWT yang
telah melimpahkan rahmat, hidayah serta karunia-Nya yang tiada hentii
sehingga penulis dapat menyelesaikan Tugas Akhir yang berjudul :

RANCANG BANGUN SISTEM KEAMANAN PARKIR


BERPASSWORD

Dalam menyelesaikan proyek akhir ini kami berpegang pada


teori yang pernah kami dapatkan, serta bimbingan dari dosen
pembimbing proyek akhir. Serta pihak-pihak lain yang sangat membantu
hingga sampai terselesaikannya proyek akhir ini.
Proyek akhir ini digunakan sebagai salah satu syarat akademis
untuk memperoleh gelar Ahli Madya (A.Md) di Politeknik Elektronika
Negeri Surabaya, Institut Teknologi Sepuluh Nopember Surabaya.
Kami menyadari bahwa masih banyak kekurangan dalam
perancangan dan pembuatan buku proyek akhir ini. Oleh karena itu
besar harapan kami untuk menerima saran dan kritik dari para pembaca.
Dan semoga buku ini dapat memberikan manfaat bagi para mahasiswa
Politeknik Elektronika Negeri Surabaya pada umumnya dan dapat
memberikan nilai lebih untuk para pembaca pada khususnya.

Surabaya, Juli 2006

Penulis

v
UCAPAN TERIMA KASIH
Puji syukur kepada Allah SWT yang telah memberikan
rahmatdan hidayah-Nya sehingga kami dapat menyelesaikan Proyek
Akhir ini. Dalam pelaksanaan pembuatan Proyek Akhir ini penulis
banyak mendapatkan bimbingan dan bantuan dari berbagai pihak. Oleh
karena itu pada kesempatan ini penulis mengucapkan terima kasih
sebesar-besarnya kepada:

1. Allah SWT, yang telah memberikan rahmat dan hidayah-Nya


sehingga penulis bisa menyelesaikan tugas akhir ini.
2. Ibu dan Ayah tercinta, yang telah memberikan dukungan doa,
motivasi, materiel, kasih sayang dan segala-galanya yang tidak
akan pernah bisa terukur nilainya.
3. Seluruh Keluargaku, yang tak bisa terlupakan. Terimakasih atas
semua yang telah diberikan padaku. Dan tak lupa, untuk kakak
dan adikku tersayang (terima kasih atas dukungan dan doanya).
4. Bapak Akuwan Saleh, S.ST. selaku dosen pembimbing yang
telah banyak memberikan ilmu, pengarahan, bimbingan, dan
masukan-masukan kepada penulis selama mengerjakan Tugas
Akhir ini.
5. Bapak Dr. Ir. Titon dutomo, M.ENG selaku Direktur Politeknik
Elektronika Negeri Surabaya.
6. Bapak Drs. Miftahul Huda., selaku Ketua Jurusan Teknik
Telekomunikasi yang selalu memberikan yang terbaik bagi
kami.
6. Seluruh Dosen, Asisten, dan Karyawan PENS-ITS, atas segala
bantuan dan fasilitas yang diberikan sehingga terselesaikannya
proyek akhir ini.
7. Serta tidak lupa kami ucapkan terima kasih Kepada Bapak Ibu
Dosen PENS-ITS yang telah memberi ilmu dari semester satu
sampai sekarang.
8. Semua teman-teman kelas 3 Telekomunikasi A serta seluruh
teman temanku, yang telah memberikan bantuan dan dukungan
berupa tempat tinggal dan alat transportasi sehingga penyusun
bisa menyelesaikan proyek akhir ini dengan baik dan lancar.
Dan juga kepada temanku Adib dan Tuso yang telah banyak
membantu dalam memberi inspirasi pembuatan program
(software) dalam proyek akhir kami. Terutama kepada

vi
Wahyudin ”Bolot” Azis yang telah membantu dalam
mengerjakan revisi alat.
9. Semua rekan-rekan Telkom D4 angkatan 2003 yang telah
memberi support dan semoga kalian juga sukses untuk TA taon
depan.
10. Rekan-rekanku penghuni wisma Kejawan Putih Tambak 1/14
Surabaya yang telah memberi saran, masukan dan kritik . Pak
dhe, Cak Bayu, Cak Dudiek, Wak Mo, Cak Windy, Cak CB,
Kang Dumbo, serta rekan seangkatanku Indra, Galih, Hendrik,
Andika, Rosi, Wahyu. Serta Bapak dan Ibu Kos atas dukungan
moral maupun material selama aku sakit di rumah sakit.
11. Semua pihak yang telah membantu kami dalam penyelesaian
Tugas akhir ini yang tidak dapat kami sebutkan satu persatu.

Semoga Allah S.W.T senantiasa membalas semua amalan yang


telah dilakukan dan apabila ada kesalahan penulis mohon maaf yang
sebesar-besarnya.

Surabaya, Juli 2006

Penulis

vii
DAFTAR ISI

JUDUL……………………………………………………………… i
PENGESAHAN ………………………………..………………….. ii
ABSTRAK………………………………………………………….. iii
ABSTRACT…...…………………………………………………..... iv
KATA PENGANTAR..……………………………………………... v
UCAPAN TERIMA KASIH………………………………………... vi
DAFTAR ISI.…………………………………………………..…… viii
DAFTAR GAMBAR……………………………………………….. x
DAFTAR TABEL…………………………………………………... xi

BAB I. PENDAHULUAN………………………………………….. 1
1.1. LATAR BELAKANG……………...…………………… 1
1.2. PERUMUSAN MASALAH………..………………....... 1
1.3. BATASAN MASALAH….………..…………………… 2
1.4. TUJUAN DAN MANFAAT……………………………. 2
1.5. METODOLOGI ………………….…………………….. 2
1.6. SISTEMATIKA PEMBAHASAN..…………………….. 3

BAB II. TEORI PENUNJANG..…………………………….……… 5


2.1. Umum………………………............................................ 5
2.2. Database Visual Basic dan Microsoft Access................... 5
2.2.1. Koneksi Database Dengan ODBC Driver................... 5
2.2.2. Koneksi Database Dengan Connection String............ 6
2.2.3. Koneksi Database Dengan ODBC Connection
7
String...........................................................................
2.2.4. Membaca Record Dengan Recordset.......................... 9
2.2.5. Membaca Record Dengan Command.......................... 10
2.2.6. Membaca Record dengan Recordset dan
11
Connection String........................................................
2.2.7. Membaca Record Dengan ADODC............................ 12
2.3. Komunikasi Data Pararel……………………………….. 12
2.4. Motor Stepper …………………………………………. 14
2.4.1. Kontruksi dan Cara Kerja Motor Stepper.................. 14
2.4.2. Penentuan Urutan Kutub Motor Stepper
16
Menggunakan Multimeter...........................................
2.4.3. Rangkaian Motor Stepper Driver………………........ 16

viii
2.5. Microsoft Visual Basic 6.0…………………………........ 17
2.5.1. Tampilan Dasar Microsoft Visual Basic 6.0............... 18
2.5.2. Komponen-Komponen Pada Microsoft Visual
18
Basic 6.0......................................................................
2.5.3. Macam-macam Objek pada Microsoft Visual
19
Basic 6.0……………………………………………..
2.6. SQL (Structured Query Language)……………………….. 20
2.6.1. SQL Inejction.............................................................. 21

BAB III. PERENCANAAN DAN PEMBUATAN PERANGKAT


25
KERAS DAN PERANGKAT LUNAK...............................
3.1. Perencanaan dan Pembuatan Driver Motor Stepper......... 25
3.2 Menu Tampilan Dengan visual Basic.............................. 28
3.3. Perancangan Program Motor Stepper Driver................... 31
3.4. Perancangan Database...................................................... 35

BAB IV. PENGUJIAN DAN ANALISA.......................................... 37


4.1. Tujuan…………………………………………………... 37
4.2. Pengujian Motor Stepper.................................................. 37
4.3. Pengujian Program Visual Basic……………………….. 38
4.3.1. Pengujian Program Komunikasi Antar Form............. 38
4.3.2. Pengujian Program Komunikasi Database................. 39
4.3.3. Pengujian Program Pencarian Data Dalam Database. 40
4.3.4. Pengujian Program Putar Motor Stepper.................... 41

BAB V. PENUTUP............................................................................ 43
5.1. Kesimpulan…………………………………………….. 43
5.2. Saran……………………………………………………. 43

DAFTAR PUSTAKA......................................................................... 45
LAMPIRAN........................................................................................ 47
RIWAYAT HIDUP............................................................................. 61

ix
DAFTAR GAMBAR

Gambar 2.1 Konfigurasi slot DB-25 female .................………....... 13


Gambar 2.2 Urutan pemberian arus……………………………… 15
Gambar 2.3 Rangkaian Motor Stepper Driver................................. 17
Gambar 2.4 Tampilan dasar Microsoft Visual Basic 6.0................. 19
Gambar 3.1 Flowchart Program Simtem Keamanan Parkir.............. 26
Gambar 3.2 Alur cara kerja alat ketika kendaran akan masuk.......... 27
Gambar 3.3 Alur cara kerja alat ketika kendaran akan keluar.......... 27
Gambar 3.4 Rangkaian Driver Motor................................................ 28
Gambar 3.5 Tata letak komponen..................................................... 32
Gambar 3.6 Tabel dari database MS Access……………................. 35
Gambar 4.1 Running program pertama kali...................................... 38
Gambar 4.2 Proses Registrasi............................................................ 39
Gambar 4.3 Database dalam microsoft access.................................. 39
Gambar 4.4 Proses ketika berada di pintu parkir.............................. 40
Gambar 4.5 Menu perintah ketika parkir.......................................... 41

x
DAFTAR TABEL

Tabel 2.1 Konfigurasi pin dan nama sinyal konektor pararel


13
standart DB-25..................................................................
Tabel 2.2 Alamat masing-masing port…………………………….. 14
Tabel 2.3 Urutan pemberian arus………………………………….. 16

xi
BAB 1
PENDAHULUAN

1.1 LATAR BELAKANG


Layanan parkir dewasa ini dituntut tingkat keamanan yang tinggi
hal ini dikarenakan banyaknya kasus pencurian kendaraan bermotor
(Curanmor), sehingga banyak sistem keamanan parkir yang ditawarkan
salah satunya sistem keamanan parkir berpassword. Sistem keaman ini
cocok digunakan sebagai media untuk menurunkan angka pencurian
kendaraan bermotor (curanmor) dilingkungan kampus pada umumnya
dan di tempat parkir PENS-ITS pada khususnya. Oleh karena itu kami
mengembangkan seperangkat alat sebagai sistem keamanan tersebut.
Sistem keamanan ini diintegrasikan dengan database dari setiap
kendaraan bermotor dan pemiliknya, sistem ini mampu mengecek setiap
kendaraan yang masuk maupun yang keluar dengan cara memasukkan
identitas pengguna (nomor kendaraan dan password), kemudian jika
masukkan benar maka portal akan membuka sejauh +900 dan setelah
kendaraan lewat maka portal akan menutup kembali sejauh -900.
Disini masukkan yang untuk pertama kali berasal dari sebuah
keyboard PC yang telah berisi program yang sebelumnya telah dibuat
yaitu berupa masukkan data berupa nomor kendaraan dan password.
Kemudian data tersebut akan dicocokan dengan data pada database akan
mengecek data tersebut apakah sudah ada atau belum, jika sudah benar
memasukkan data maka portal akan membuka dan setelah ada delay
beberapa saat maka portal akan menutup kembali. Tetapi jika data
pengguna belum ada maka diharuskan membuat database baru yang
kemudian data tersebut akan disimpan dalam database PC. Dalam hal
ini, portal dari pintu parkir tersebut digerakkan oleh perintah yang
melalui port paralel PC. Kemudian pada bagian akhir proyek ini
diharapkan keamanan dan kenyamanan para pengguna jasa parkir bisa
lebih terjamin.

1.2 PERUMUSAHAN MASALAH


Permasalahan yang ditangani pada pembuatan proyek akhir ini
adalah adalah bagaimana agar dapat meningkatkan sistem kerja dari
tempat parkir guna tercapainya keamanan dan kenyamanan dari
pengguna jasa tempat parkir.

1
2

1.3 BATASAN MASALAH


Permasalahan yang harus diselesaiakan pada proyek akhir ini
dibatasi hanya untuk masukan langsung dari pengendara kendaraan
bermotor melalui keyboard PC. Kemudian ditampilkan di PC yang
memuat database yang berisi data-data berisi data pengguna kendaraan
dan jika belum ada atau terdaftar maka harus memasukkan data terlebih
dahulu. Kemudian jika data yang dimasukkan sudah benar maka portal
akan membuka dan setelah itu kendaraan masuk atau keluar lalu portal
menutup kembali. Disini PC yang digunakan berjumlah satu, hal ini
dikarenakan untuk lebih mudah dalam memonitor/menjaga sehingga
biaya yang diperlukan lebih efisien.

1.4 TUJUAN DAN MANFAAT


Tujuan dari proyek akhir ini adalah untuk lebih mengaplikasikan
penggunaan program Microsoft Visual Basic 6.0 serta Microsoft Access
dalam sebuah sistem keamanan parkir berpassword. Dan dengan cara
mengembangkannya sedemikian rupa, baik pada sisi input dan output
dengan menambahkan perangkat keras (hardware) dan perangkat lunak
(software), sehingga dapat digunakan sebagai alat bantu bagi petugas
parkir dalam meningkatkan keamanan dan kenyamanan tempat parkir.
Selain itu, waktu maupun tenaga dapat lebih diefisiensi.

1.5 METODOLOGI
Untuk langkah langkah pembuatan proyek akhir ini langkah
langkahnya adalah sebagai berikut :

(a) Perancangan Sistem


Perancangan sistem berdasarkan pada petunjuk pengoperasian
(instruction manual) Microsoft Visual Basic 6.0 maupun Microsoft
Access dan dikembangkan dengan cara menghubungkan fungsi-
fungsi port paralel yang kemudian dihubungkan dengan driver
menuju ke motore stepper.
(b) Pembuatan Perangkat Keras (Hardware)
Hardware yang harus disediakan untuk tugas akhir ini ialah driver
motor stepper dengan teangan input +5 volt kemudian power supply
yang mempunyai outputan sebesar +5 volt, +9 volt dan +12 volt.
3

(c) Perangkat Lunak (Software) pada mikrokontroller


Pembuatan software pada TA ini dibagi menjadi beberapa bagian
yaitu pembuatan program untuk menjalankan motor stepper. Setelah
itu program untuk menampilkan pilihan menu dan sub menu
(pengendara lama atau baru) lalu program untuk mengoneksikan
antara port paralel dengan motor stepper.
(d) Pembuatan database
Sebagai media penyimpan data , maka diperlukan suatu database
yang nantinya akan dibuka melalui visual basic di bagian pelanggan.
Disini digunakan Visual basic serta microsoft acces sebagai database
dan database itu berisi tentang biodata pemilik maupun kendaraan.
Untuk database tentang kendaraan bermotor yaitu untuk mengetahui
jenis kendaraan dan nomor kendaraan..

1.6 SISTEMATIKA PEMBAHASAN


Buku laporan proyek akhir ini terdiri dari 5 (lima) bab, dimana
masing-masing bab mempunyai kaitan satu sama lain, yaitu:

BAB I : PENDAHULUAN
Bab ini berisi tentang uraian latar belakang,
tujuan, permasalahan, batasan masalah,
metodologi dan sistematika laporan.

BAB II : TEORI PENUNJANG


Bab ini berisi tentang teori – teori penunjang
yang dipergunakan dalam penyelesaian
proyek akhir.
BAB III : PERENCANAAN DAN REALISASI
Bab ini berisi tentang penjelasan mengenai
perencanaan serta realisasi Rangcang Bangun
Sistem Keamanan Parkir Berpassword.
BAB IV : PENGUJIAN
Bab ini berisi tentang pengujian serta hasil
pengamatan secara keseluruhan.
BAB V : KESIMPULAN
Bab ini berisi tentang kesimpulan dari
pembahasan yang telah ada serta saran –
saran guna pengembangan proyek akhir lebih
lanjut.
4

****Halaman ini sengaja dikosongkan****


BAB 2
TEORI PENUNJANG

2.1 U M U M
Pada bab ini akan diberikan teori dasar yang melandasi permasa-
lahan dan penyelesaiannya yang diangkat dalam proyek akhir ini. Teori
dasar yang diberikan meliputi: pembuatan database, yang memberikan
definisi dan klasifikasi tentang penyimpanan serta koneksi database
antara visual basic dan microsoft access. Selanjutnya, diberikan tentang
teori komunikasi data pararel, Motor Stepper Driver, serta cara
pengaksesan port paralel pada Visual Basic.

2.2 Database Visual Basic dan Microsoft Access


Di bawah ini adalah jenis-jenis pengoneksian database dari
microsoft access ke visual basic (software yang akan dibuat untuk media
penyimpanan data yang akan digunakan sebagai bagian dari proyek
akhir) dan fungsi-fungsinya.

2.2.1 Koneksi Database Dengan ODBC Driver


Salah satu kelebihan koneksi ODBC Driver adalah kemudahannya
dalam aplikasi client-server. Selain itu, apabila kita ingin mengganti
database aplikasi, kita tidak perlu mengganti kode program, tetapi hanya
mengganti koneksi pada ODBC Driver tersebut.
Untuk membuat sebuah ODBC Driver untuk koneksi database,
database tersebut sudah harus ada terlebih dahulu. Sebagai contoh, kita
buat sebuah database microsoft access dengan nama dbAplikasi dan
simpan. Setelah database tersebut dibuat, tutup database tersebut.
Langkah-langkah selanjutnya adalah sebagai berikut:
1 Masuklah ke Control Panel. Untuk pengguna Windows 2000 atau
Windows XP, setelahmasuk ke Control Panel, klik ganda icon
Administrative Tools.
2 Jika kita menggunakan Windows 2000 atau XP, di window
Administrative Tool klik ganda icon Data Source (ODBC). Jika kita
menggunakan Windows 9x, klik ganda ODBC Data Sources di
Control Panel.
3 Pada window ODBC Data Source Administrator tab System DSN,
klik tombol Add.

5
6

4 Pada kota dialog Create New Data Source, pilih Microsoft Access
Driver kemudian klik Finish.
5 Pada kotak dialog ODBC Microsoft Access Setup, isi nama Data
Source Name atau DSN. Nama inilah yang akan dipakai program
aplikasi untuk berhubungan dengan database.
6 Untuk menghubungkan ODBC dengan database, klik Select pada
bagian Database.
7 Pada kotak dialog Select database, cari directori tempat database
diletakkan dan pilih database yang akan digunakan.
8 Klik OK.
9 Pada kotak dialog ODBC Microsoft Access Setup, klik OK.
10 Perhatikan bahwa sekarang pada kotak dialog ODBC Data Source
Administrator telah terdapat ODBC Driver yang dibuat, selanjutnya
klik OK.
Setelah membuat ODBC Driver, kita dapat menggunakan ODBC
Driver tersebut untuk mengakses database melalui program aplikasi kita.
Sebagai contoh penggunaan ODBC Driver untuk mengakses database,
akan digunakan proses menambah data atau record ke tabel maupun
database.

2.2.2 Koneksi Database Dengan Connection String


Untuk mengakses database menggunakan Connection String,
pertama-tama dideklarasikan sebuah koneksi. Sintaks untuk
mendeklarasikan sebuah koneksi menggunakan Connection String adalah
sebagai berikut:

dim [nama koneksi] as New ADODB.Connection

Contoh:

dim cnn as New ADODB.Connection

Pada contoh di atas, dideklarasikan sebuah koneksi bernama cnn. Setelah


kita mendeklarasikan sebuah koneksi, selanjutnya kita perlu mengisi
koneksi tersebut, contoh sintaksnya seperti berikut:

Dim koneksi As String


Koneksi = “Driver={Microsoft Access Driver
(*.mdb)};” & _
“Dbq=dbAplikasi.mdb;” & “DefaultDir=C:\Data;” & _
7

“Uid=Admin;Pwd=”

Pada contoh tersebut terdapat variabel Koneksi bertipe data string untuk
menampung isi koneksi dengan database. Berikut ini penjelasan dari
sintaks tersebut:
1 Driver={Microsoft Access Driver (*.mdb)}. Sintaks ini menyatakan
jenis driver database yang digumakan, dalam hal ini driver Microsoft
Access.
2 Dbq=dbAplikasi.mdb. Sintaks Dbq menyatakan nama database yang
digunakan. Pada contoh ini database yang digunakan adalah database
dbAplikasi.mdb.
3 DefaultDir. Sintaks defaultDir menyatakan direktori dari database.
Pada contoh tersebut, database yang digunakan terletak di direktori
C:\Data.
4 Uid. Sintaks Uid menyatakan user id atau identitas dari user yang
mengakses database.
5 Pwd. Sintaks Pwd menyatakan password dari database yang berfungsi
untuk meningkatkan keamanan database.

Langkah selanjutnya adalah membuka koneksi ke database. Untuk itu


digunakan sintaks sebagai berikut:

Cnn.ConnectionString = Koneksi
Cnn.Open

Setelah selesai digunakan, koneksi tersebut dapat ditutup. Untuk


menutupnya, gunakan sintaks berikut:

Cnn.Close
Set cnn=Nothing

2.2.3 Koneksi Database Dengan ODBC Connection String


Koneksi menggunakan ODBC Connection String mirip dengan
koneksi menggunakan Connection String. Untuk dapat mengakses
database menggunakan ODBC Connection String, langkah pertama yang
harus dilakukan adalah mendeklarasikan sebuah koneksi. Sintaks untuk
mendeklarasikan sebuah koneksi menggunakan ODBC Connection
String adalah sebagai berikut:

Dim [nama koneksi] as New ADODB.Connection


8

Contoh:

Dim cnn as New ADODB.Connection

Pada contoh di atas, dideklarasikan sebuah koneksi bernama cnn. Setelah


kita mendeklarasikan sebuah koneksi, langkah selanjutnya adalah
membuat isi dari koneksi tersebut. Contoh sintaksnya adalah sebagai
berikut:

Dim Koneksi As String


Koneksi = “Driver={Microsoft Access Driver
(*.mdb)};” & _
“Dbq=dbAplikasi.mdb;” &
DefaultDir=C:\Data;” & _
“Uid=Admin;Pwd=;”

Pada contoh tersebut terdapat variabel Koneksi bertipe data string untuk
menampung isi koneksi dengan database. Berikut ini penjelasan dari
sintaks isi koneksi tersebut:
1 Driver={Microsoft Access Driver (*.mdb)}. Sintaks Driver
menyatakanjenis driver database yang digunakan, dalam hal ini driver
Microsoft Access.
2 Dbq=dbAplikasi.mdb. Sintaks Dba menyatakan nama database yang
digunakan, dalam hal ini database yang digunakan adalah
dbAplikasi.mdb.
3 DefaultDir. Sintaks DefaultDir menyatakan direktori database. Pada
contoh tersebut, database yang digunakan terletak pada direktori
C:\Data.
4 Uid. Sintaks Uid menyatakan user id atau identitas user yang
mengakses database.
5 Pwd. Sintaks Pwd menyatakan pasword dari database yang berfungsi
untuk meningkatkan keamanan database.
Langkah selanjutnya adalah membuka koneksi ke database. Sintaks untuk
membuka koneksi ke database adalah sebagai berikut:

Cnn.Open Koneksi

Setelah koneksi selesai digunakan, koneksi tersebut dapat ditutup.


Sintaks untuk menutup koneksi adalah sebagai berikut:
9

Cnn.Close
Set cnn=Nothing

2.2.4 Membaca Record Dengan Recordset


Database Microsoft Access yang akan dipakai sebagai contoh
adalah dbAplikasi. Untuk membaca record atau data dari tabel database
menggunakan recordset, pertama-tama perlu dideklarasikan sebuah
variabel recordset. Sintaks untuk mendeklarasikan sebuah recordset
adalah sebagai berikut:

Dim [nama recordset] as New ADODB.Recordset

Contoh:

Dim rs as New ADODB.Recordset

Pada contoh di atas disdeklarasikan sebuah recordset bernama rs.


Selanjutnya adalah menggunakan recordset tersebut untukmembaca data
atau record dimana menggunakan perintah SQL “select”. Contohnya
adalah sebagai berikut:

Set rs=cnn.Execute(“SELECT * FROM tbanggota WHERE


kode=’001’ ”)

Pada contoh tersebut, variabel recordset rs digunakan untuk menampung


isi record dari tbAnggota. Kita dapat menggunakan hasil record yang
terdapat pada recordset. Bentuk sintaksnya adalah sebagai berikut:

[Tampungan]=rs.Field([Nama Field Tabel])

Sebagai contoh, hasilnya akan ditampilkan pada sebuah textbox. Bentuk


sintaksnya adalah sebagai berikut:

Text1.Text=rs.Field(“Nama”)

Setelah selesai digunakan, recordset tersebut dapat ditutup dan sintaksnya


adalah sebagai berikut:

Rs.Close
10

2.2.5 Membaca Record Dengan Command


Untuk membaca record atau data dari tabel database menggunakan
command, langkah pertama yang dilakukan adalah mendeklarasikan
sebuah variabel command. Sintaks untuk mendeklarasikan sebuah
command adalah:

Dim [nama command] as New ADODB.Command

Contoh:

Dim cmd as New ADODB.Command

Pada contoh diatas, dideklarasikan sebuah command bernama cmd.


Selanjutnya adalah menggunakan command tersebut untuk membaca
data atau record dimana perintah yang digunakan adalahSQL “Select”
dan contohnya adalah sebagai berikut:

cmd.ActiveConnection = cnn
cmd.CommandText=(“SELECT * FROM tbAnggota WHERE
kode=’001’ ”)
rs.Close

Pada contoh tersebut, variabel recordset rs digunakan untuk menampung


isi record tbAnggota. Kita dapat menggunakan hasil dari record yang
terdapat pada recordset. Bentuk sintaksnya adalah sebagai berikut:

[Tampungan]=rs.Field([Nama Field Tabel])

Sebagai contoh, hasilnya akan ditampilkan pada sebuah textbox dan


bentuk sintaksnya adalah sebagai berikut:

Text1.Text=rs.Field(“Nama”)

Setelah selesai menggunakan recordset, recordset tersebutdapat ditutup


dengan menggunakan sintaks sebagai berikut:

Rs.Close
11

2.2.6 Membaca Record dengan Recordset dan Connection String


Langkah pertama yang perlu dilakukan untuk membaca record atau
data dari tabel database menggunakan recordset dan Connection String
adalah mendeklarasikan sebuah variabel recordset. Sebagai contoh,
sintaksnya adalah sebagai berikut:

Dim rs as New ADODB.Recordset

Pada contoh di atas, dideklarasikan sebuah recordset bernama rs.


Langkah selanjutnya adalah menggunakan recordset tersebut bersama
dengan Connection String untuk membaca data atau record dan perintah
yang digunakan adalah perintah SQL “Select”. Contoh listing kode
program untuk membaca data atau record dan menampungnya dalam
recordset adalah sebagai berikut:

Dim Koneksi As String


Koneksi = “Driver=(Microsoft Access Driver
(*.mdb)); ” & _
“Dbq=dbAplikasi.mdb; “ &
“DefaultDir=C:\data; “ & _
“Uid=Admin;Pwd=; ”

Pada contoh tersebut, variabel recordset rs digunakan untuk menampung


isi record dari tbAnggota. Hasil dari record tersebut dapat digunakan
dengan bentuk sintaks adalah sebagai berikut:

[Tampungan]=rs.Field([Nama Field Tabel])

Sebagai contoh, hasilnya dapat ditampilkan pada sebuah textbox dan


bentu sintaksnya adalah sebagai berikut:

Text1.Text=rs.Field(“Nama”)

Setelah selesai menggunakan recordset tersebut, recordset tersebut dapat


ditutup dengan menggunakan sintaks sebagai berikut:

Rs.Close
12

2.2.7 Membaca Record Dengan ADODC


Dengan ADODC, kita dapat membaca data atau record dari tabel
kemudian menampilkannya per record atau sekaligus beberapa record.
Kita dapat menggunakan record atau data tabel melalui ADODC
sehingga tidak perlu kawatir data atau record berubah pada waktu
membaca tabel tersebut.
Ada dua cara yang dapat digunakan untuk menghubungkan
ADODC dengan tabel, yaitu menggunakan ADBC Data Source Name
dan menggunakan Connection String.
Untuk menghubungkan ADODC dengan tabel menggunakan
ODBC Data Source Name, harus terdapat driver ODBC yang terhubung
dengan database dimana tabel tersebut berada. Apabila kita menggunakan
ODBC Data Source Name untuk menghubungkan tabel denganADODC,
sebaiknya kita menggunakan ODBC Driver untuk koneksi database agar
kita dapat menggunakan ODBC Driver tersebut.
Dengan Connection String, kita tidak perlu lagi membuat ODBC
Driver seperti pada cara sebelumnya. Sehingga hal ini dapat dibuat atau
menjadikannya lebih praktis.

2.3 Komunikasi Data Pararel


Port Pararel atau port printer sebenarnya terdiri dari tiga bagian yang
masing-masing diberi nama sesuai dengan tugasnya dalam melaksanakan
pencetakan pada printer. Tiga bagian tersebut adalah Data Port (DP),
Printer Control (PC), dan Printer Status (PS). DP digunakan untuk
mengirim data yang harus dicetak oleh printer, PC digunakan untuk
mengirimkan kode-kode control dari computer ke printer, dan PS
digunakan untuk mengirimkan kode-kode status printer ke computer.
DP,PC, dan PS sebenarnya adalah port-port 8 bit, namun hanya DP
yang benar-benar 8 bit. Untuk PC dan PS, hanya beberapa bit saja yang
dipakai yang berarti hanya beberapa bit saja dari port-port ini yang dapat
kita manfaatkan untuk keperluan interfacing. Port PC adalah port
baca/tulis (read/write), PS adalah port baca saja (read only), sedangkan
port DP adalah port baca/tulis juga. Akan tetapi, kemampuan ini hanya
dimiliki oleh Enhanced Pararel Port (EPP), sedangkan port pararel
standart hanya memiliki kemampuan tulis saja. Pada EPP, pengaturan
arah jalur data DP dilakukan lewat bit 5 PC. Jika bit 5 PC bernilai 0, maka
jalur data dwi-arah DP menjadi output dari port pararel, sebaliknya jika
bit 5 PC bernilai 1, maka jalur data dwi-arah DP menjadi input dari port
pararel.
13

Selengkapnya, konfigurasi slot DB-25 female yang terdapat pada


belakang komputer, dapat dilihat pada gambar 2.9 dan konfigurasi dari
DP, PC, dan PS dapat dilihat pada Tabel 2.2. pin-pin dengan keterangan
komplemen akan berlogika tinggi pada keadaan awal.

Gambar 2.1 Konfigurasi slot DB-25 female

Tabel 2.1 Konfigurasi pin dan nama sinyal konektor pararel


standart DB-25
Nomor Nama
Direction Register Komplemen
Pin Sinyal
1 Strobe In/Out Control bit 0 Ya
2 Data 0 Out Data bit 0
3 Data 1 Out Data bit 1
4 Data 2 Out Control bit 2
5 Data 3 Out Control bit 3
6 Data 4 Out Control bit 4
7 Data 5 Out Control bit 5
14

8 Data 6 Out Control bit 6


9 Data 7 Out Control bit 7
10 Ack In Status bit 6
11 Busy In Status bit 7 Ya
Paper-
12 In Status bit 5
Out/Paper-End
13 Select In Status bit 4
14 Auto-Linefeed In/Out Control bit 1 Ya
15 Error / Fault In Status bit 5
16 Initialize In/Out Control bit 2
Select- Printer/
17 In/Out Control bit 3 Ya
Select-in
18-25 Ground Gnd

Untuk dapat menggunakan port pararel, kita harus mengetahui


alamatnya. Base Address LPT1 biasanya adalah 888 (378h) dan LPT2
biasanya 632 (278h). Alamat tersebut adalah alamat yang umumnya
digunakan, tergantung dari jenis computer. Tepatnya kita bias melihat
pada peta memori tempat menyimpan alamat tersebut, yaitu memori
0000.0408h untuk base address LPT1 dan memori 0000.0408h untuk
base address LPT2.
Setelah kita mengetahui alamat port pararel, maka kita dapat
menentukan alamat DP, PC dan PS. Alamat DP adalah base address dari
Port Pararel tersebut, alamat PS adalah base address + 1, dan alamat PC
adalah base address + 2. Tabel 2.3 adalah alamat masing-masing port
yang umumnya digunakan:

Tabel 2.2 Alamat masing-masing port


Nama Port Alamat Register
LPT1 DP 378h / 888
LPT1 PS 379h / 889
LPT1 PC 37Ah / 890

2.4 Motor Stepper


2.4.1 Kontruksi dan Cara Kerja Motor Stepper
Motor stepper merupakan motor DC yang dapat diatur posisinya
dengan akurat pada posisi tertentu dan dapat berputar ke arah yang
15

diinginkan dengan memberi pulsa-pulsa listrik dengan pola tertentu.


Biasanya, motor stepper digunakan untuk aplikasi-aplikasi yang
membutuhkan torsi kecil dengan akurasi tinggi, seperti untuk penggerak
head pada floppy disk drive atau pada CD-ROM.
Motor stepper merupakan motor DC yang tidak memiliki
komutator. Secara tipikal, motor stepper hanya mempunyai kumparan
pada statornya, sedangkan pada bagian rotornya merupakan magnet
permanent. Konstruksi motor stepper ditunjukkan pada Gambar 2.2.
Bagian tengah merupakan bagian yang berputar disebut sebagai rotor,
dan bagian yang diam disebut stator. Stator terdiri dari beberapa kutub,
makin banyak kutub makin sulit kontruksinya. Gambar 2.10 adalah motor
stepper dengan tiga kutub. Setiap kutub memiliki lilitan yang
menghasilkan medan magnet yang akan menggerakkan motor. Pemberi
arus yang berurutan pada kutub-kutubnya menyebabkan medan
magnetberputar yang akan menarik rotor ikut berputar.

Gambar 2.2 Urutan pemberian arus

Jika lilitan 1 dilewati oleh arus, sementara lilitan 2 dan lilitan 3


tidak dialiri arus, maka kumparan 1 akan menghasilkan gaya tolakan
kepada rotor dan rotor akan berputar sejauh 30o searah jarum jam
sehingga kutub rotor dengan label Y sejajar dengan kutub dengan label 2.
Jika kemudian lilitan 2 dilewati arus, selanjutnya lilitan 3, dan akhirnya
kembali ke lilitan 1 lagi berulang terus menerus secara berurutan, maka
motor akan berputar secara terus-menerus.
Urutan pemberian arus pada lilitan da arah putaran yang
dikehendaki ditunjukkan pada Tabel 2.4.
‘1’ pada Tabel 2.4 diartikan bahwa lilitan yang bersangkutan
dilewati arus sehingga menghasilkan gaya tolak untuk rotor, sedangkan
‘0’ diartikan lilitan dalam kondisi off, yakni tidak mendapatkan arus.
Pada Tabel 2.4 juga ditunjukkan, untuk membalik urutan pemberian arus
pada lilitan.
16

Tabel 2.3 Urutan pemberian arus


Putar ke kanan Putar ke kiri
Putaran
Lilitan1 Lilitan2 Lilitan3 Lilitan1 Lilitan2 Lilitan3
Step 1 1 0 0 0 0 1
Step 2 0 1 0 0 1 0
Step 3 0 0 1 1 0 0
Step 4 Kembali seperti step 1 Kembali seperti step 1

Untuk memperlambat atau mempercepat putaran, cukup mengatur


waktu urutan pemberian arus saja. Akan tetapi, terlalu lambat akan
menyebabkan motor stepper bergetar dan jika terlalu cepat akan
mengakibatkan motor tidak mau berputar (slip).

2.4.2 Penentuan Urutan Kutub Motor Stepper Menggunakan


Multimeter
Penentuan urutankutub adalah penting untuk menentukan arah
putaran dan kontinuitas putaran (motor stepper tidak bolak-balik arahnya).
Langkah-langkah penentuan urutan kutub dengan menggunakan
multimeter adalah sebagai berikut.
1 Dengan menggunakan multimeter digital atau analog pada posisi
pengukuran tahanan, carilah kabel COMMON dari motor stepper,
dimana tahanan dari COMMON ke kutub 1,2,3 …dst memiliki
hambatan yang sama.
2 Beri tegangan 5 Volt pada COMMON, selanjutnya berilah tegangan
0 secara berurutan kabel-kabel kutub secara random. Carilah urutan
pemberian tegangan 0 pada kabel kutub yang menyebabkan motor
berputar searah (dapat searah jarum jam atau sebaliknya). Jika
urutan salah, maka motor akan berubah arah gerak putarannya. Jika
sudah ketemu urutan yang benar, catat urutan tersebut (biasanya
warna kabelnya berbeda).

2.4.3 Rangkaian Motor Stepper Driver


Rangkaian berikut digunakan untuk interfacing motor stepper
dengan mikrokontroller. Dapat dilihat pada Gambar 5.2. Untuk
menjalankan rangkaian ini diperlukan program Motor Stepper Driver.
Motor stepper yang digunakan pada rangkaian ini adalah motor
stepper jenis TEAC P.NO.14769070-90. Pada motor stepper ini terdapat
lima kabel sambungan, yaitu COMMON, kabel koil 1, 2, 3, dan koil 4.
Tegangan yang diperlukan yaitu sebesar 5 Volt pada COMMON.
17
Ke Motor Stepper
VCC
5V

1N4001 D 1N4001 D 1N4001 D 1N4001 D

R R R TIP31A R
TIP31 TIP31 TIP31
?
1.0k ?
1.0k ?
1.0k ?
1.0k

Ke Port Mikrokontroller

Gambar 2.3 Rangkaian Motor Stepper Driver

2.5 Microsoft Visual Basic 6.0


Microsoft Visual Basic 6.0 merupakan bahasa pemrograman yang
bekerja dalam ruang lingkup MS-Windows. Microsoft Visual Basic 6.0
hampir dapat memanfaatkan seluruh kemudahan dan kecanggihan yang
dimiliki oleh system operasi Windows. Secara umum kelebihan dari
Microsoft Visual Basic 6.0 adalah menyediakan komponen-komponen
yang memungkinkan Anda untuk membuat program aplikasi yang sesuai
dengan tampilan dan cara kerja Windows.
Visual Basic adalah bahasa pemrograman tingkat tinggi yang
merupakan pengembangan dari bahasa BASIC versi DOS. BASIC
(Beginners’ Allpurpose Symbolic Instruction Code) merupakan bahasa
pemrogaraman yang mudah dipelajari. Perintah-perintahnya mirip
dengan penggunaan bahasa sehari-hari (inggris). Perusahaan-perusahaan
software memproduksi bahasa BASIC dengan versi yang berbeda seperti
Microsoft QBASIC, QUICKBASIC, GWBASIC, dan IBMBASICA.
Perbedaan antara Visual Basic dengan bahasa BASIC adalah
pemrograman BASIC masih berorientasi pada text dan program
dieksekusi secara berurutan. Untuk itu bahasa BASIC disebut sebagai
Interpreter. Sedangkan dalam Visual Basic dengan lingkungan grafiknya,
pemrograman berorientasi object dan sudah merupakan compiler. Visual
Basic program terdiri dari banyak sub program (prosedur), dimana setiap
prosedur mempunyai kode tersendiri dan pada saat yang bersamaan dapat
digabungkan menjadi satu.
Visual Basic 6.0 adalah salah satu produk dari mikrosoft Visual
Studio. Visual Basic 6.0 ini adalah sebuah pemrograman berorientasi
obyek, dimana semua fungsi-fungsi yang akan dijalankan sudah berupa
kotrol yang dapat ditambahkan pada form yang akan dijalankan atau
18

secara lazim disebut dengan darg and drop method. Seluruhnya cepat,
hanya membutuhkan pemrograman yang lebih sedikit sehingga juga
disebut sebagai Rapid Application Development.
Selain itu Visual Basic 6 juga banyak dipilih karena fitur-fitur yang
dimiliki cukup lengkap untuk mendukung pemrograman yang cukup
kompleks. Keinggulan lain yang dimiliki Visual Basic versi ini adalah
kemampuannya dalam mengakses database yang tersedia dengan
kelengkapan komponen-komponen antara lain ORADC dan DBGRID.
Dan alasan lain mengapa VB 6 banyak digunakan untu operasi interface,
yaitu karena VB 6 telah menyediakan fungsi untuk komunikasi serial
yaitu dengan menggunakan MSComm Control. MSComm Control ini
sangat mudah penggunaannya sehingga sangat baik bila digunakan
sebagai protocol komunikasi serial.

2.5.1 Tampilan Dasar Mikrosoft Visual Basic 6.0


Pada tahap awal pemakaian Mikrosoft Visual Basic 6.0 sebaiknya
diatur tampilan untuk komponen-komponen yang ada diantaranya
Toolbaar, Toolbox, Project, dan Form Layout. Jika salah satu dari
komponen-komponen tersebut tidak muncul, anda dapat mengaktifkan
melalui menu View dan pilih komponen yang akan ditampilkan.

2.5.2 Komponen-Komponen Pada Microsoft Visual Basic 6.0


Ada beberapa istilah dan komponen Mikrosoft Visual Basic 6.0
yang digunakan untuk membuat program aplikasi. Komponen-komponen
yang akan dibahas in hanya dasar-dasarnya saja agar dalam pembahasan
selanjutnya Anda sudah dapat memahami penggunaan istilah dan
komponen tersebut.

Project
Project adalah sekumpulan modul-modul Jadi project (proyek)
adalah program aplikasi itu sendiri. Project disimpan dalam file yang
berakhiran .VBP.

Form
Form adalah suatu objek yang dipakai sebagai tempat bekerja
program aplikasi. Secara otomatis akan tersedia form yang baru bila Anda
membuat program aplikasi yang baru, yaitu dengan Form1. Umumnya
dalam suatu form terdapat garis titik-titik yang disebut dengan Grid.
19

Gambar 2.4 Tampilan dasar Microsoft Visual Basic 6.0

Properties
Properties digunakan untuk menentukan setting suatu objek.
Suatu objek biasanya mempunyai beberapa property yang dapat diatur
langsung dari jendela Properties atau lewat kode program.

2.5.3 Macam-macam Objek pada Microsoft Visual Basic 6.0


Pada umumnya objek-objek dalam Visual Basic dibentuk dari
icon-icon yang terdapat dalam kotak alat (Toolbox). Secara otomatis bila
program visual basic dijalankan akan tersedia icon-icon objek yang sering
dipakai, misalnya VB Enterprise edition, Standart EXE, Active EXE,
Active DLL, Data Project dan lain-lain.
Selain icon-icon yang tersedia, Anda juga bisa menambahkan komponen
icon dengan cara:
• Klik kanan mouse pada Toolbox atau klik menu Project pada
menu utama.
20

• Picture Box (.Pic)

Unit ini akan menampilkan file gambar (Bitmaps, Icon,


Gif, Jpeg, dsb.)
• Image Box (.Img)

Unit ini akan menampilkan gambar Bitmaps, Windows


metafile dan icon.
• Timer (.Tmr)

Unit ini digunakan untuk mengoperasikan waktukejadian


pada rutin program termasuk internal waktu.

2.6 SQL (Structured Query Language)


SQL kependekan dari Structured Query Language, bahasa yang
sering dipergunakan untuk mengelola database relasional. Terdapat
beberapa jenis SQL, salah satunya adalah SQL-92. Merujuk kepada
ANSI (American National Standar Institute), maka SQL adalah bahasa
standar untuk sistem manajemen database rasional.

Beberapa sistem database yang menggunakan SQL antara lain :


Oracle,DB2, sybase, MS SQL Server, Informix, Ingres, Interbase,
PostgreSQL, MySQL, MS Acces. Walaupun semua database yang
disebutkan menggunakan SQL, kebanyakan mereka memiliki perintah
tambahan yang proprietary(hanya ada dan berlaku pada sistem sendiri).

SQL sendiri memiliki 3 macam jenis perintah :


1. Data Defenition Language (DDL)
merupakan kelompok perintah yang digunakan untuk melakukan
pendefenisian database dan pendefenisian tabel. Dengan
kelompok perintah dalam DDL ini maka kita dapat membuat tabel,
mengubah strukturnya, menghapus tabel, membuat indeks untuk
tabel, dan lain-lain yang bermuara pada pembentukan struktur
database.
2. Data Manipulation Language (DML)
Perintah (statement) SQL digunakan untuk melakukan manipulasi
data dalam database, menambahkan (insert), mengubah (update),
menghapus (delete), mengambil dan mencari data (query).
Perintah SQL standar seperti : select, insert, update, delete, create,
21

dan drop dapat digunakan untuk menyelesaikan tugas yang


diberikan berhubungan dengan data suatu database.
3. Data Control Language (DCL)
Termasuk dalam DCL adalah perintah untuk melakukan
pendefenisian pemakai yang boleh mengakses database dan apa
saja privilegenya. Fasilitas ini tersedia pada sistem manajemen
database yang memiliki fasilitas keamanan dengan membatasi
pemakai dan kewenangannya.

Berikut ini adalah query pada SQL yang sering kita pergunakan
adalah SQL injection :
Insert
INSERT INTO namatabel (field1 [, field2 [, …]])
VALUES (nilai1 [,nilai2 [,…]]);
Select
SELECT{*| field1 [, field2 [,…]]} FROM
namatabel [where kondisi];

2.6.1 SQL Injection


SQL Injection dapat terjadi ketika seseorang dapat memasukkan
serangkaian perintah SQL dalam query dengan memanipulasi data pada
aplikasi database. Kita akan membahas beberapa teknik SQL injection
yang umum ditemukan pada Microsoft Internet Information
Server/Active Server Pages/SQL Server platform. Terdapat beberapa cara
dimana SQL dapat diinjeksikan pada sebuah aplikasi.
Contoh dari SQL statement:
select id, forename, surname from authors

Perintah ini akan menghasilkan kolom 'id', 'forename' dan 'surname' dari
tabel 'authors', dengan menghasilkan semua baris pada setiap kolom yang
relevan pada tabel tersebut. Hasil yang diinginkan dapat lebih spesifik
dengan menyebutkan 'author' seperti di bawah ini :

select id, forename, surname from authors where


forename = 'john' and surname = 'smith'

Hal utama yang perlu dicatat adalah kita telah memiliki batas-batas dalam
pencarian yakni dengan menyebutkan ‘john’ sebagai forename dan
‘smith’ sebagai surename. Seakan-akan 'forename' and 'surname' field 1
telah didapatkan dari user yang memberikan input.
22

Seorang attacker 2 dapat menginjeksikan beberapa SQL dalam query ini


dengan memasukkan nilai pada aplikasi seperti dibawah ini :

Forename: jo’hn

Surname: smith

Query akan menjadi seperti ini :

select id, forename, surname from authors where


forename = 'jo'hn' and surname = 'smith'

Ketika database menjalankan query, akan menghasilkan suatu kesalahan


seperti yang ditunjukkan berikut ini :

Server: Msg 170, Level 15, State 1, Line 1

Line 1: Incorrect syntax near 'hn'.

Ini disebabkan karena dimasukkannya karakter single quote (tanda petik


satu) yang menyatakan breaks out. Selanjutnya database akan mencoba
untuk mengeksekusi ’hn’ dan gagal juga.

Jika attacker menspesifikasi data seperti ini :

Forename: jo'; drop table authors--

Surname:

Akan menyebakan tabel penulis akan dihapus. Ini dapat memberikan


gambaran bahwa beberapa metoda seperti membuang single quote dari
input atau dengan mengabaikan mereka dalam beberapa hal dapat
memecahkan kasus ini. Tapi tidak semua itu benar, karena masih terdapat
beberapa kesulitan dalam aplikasinya. Pertama, tidak semua user
memasukkan data bertipe string. Jika user dapat memilih author dengan
’id’(yang biasanya berupa angka), kita akan memiliki query seperti di
bawah ini :

select id, forename, surname from authors where


id=1234
23

Pada siatuasi seperti ini seorang attacker dapat dengan sederhana


menambahkan perintah SQL pada akhir dari input yang berupa angka.
Beberapa delimiter3 juga digunakan pada dialek(perintah khusus) SQL
lainnya, seperti pada Microsoft Jet DBMS, tanggal dapat diakhiri dengan
karakter '#' character. Kedua, mengabaikan single quote tidak
permasalahan yang gampang.
Jika user memasukkan hal berikut ini :

Username: '; drop table users--


Password:

Tabel user akan terhapus, dan akan memberikan kesempatan sehingga


semua user dapat mengakses ke dalam database. Kejadiannya adalah sbb :
• Karakter ';' menandakan akhir dari sebuah query dan awalan dari
query yang lainnya.
• Karakter '--' adalah single line comment dalam Transact-SQL.
Karakter '--' pada akhir dari kolom username dibutuhkan agar
pada bagian ini query tidak menimbulkan erro pada waktu
dijalankan.

Attacker dapat log on (masuk) sebagai siapa saja, seakan-akan dia


mengetahui username dengan memberikan input sbb :

Username: admin'--

Attacker dapat juga log on sebagai user yang pertama pada tabel ‘user’
dengan menggunakan input sbb :

Username: ' or 1=1--

Attacker juga dapat log in seakan-akan terdapat user yang sebenarnya


tidak ada di database dengan memasukkan input sbb :

Username: ' union select 1, 'fictional_user',


'some_password', 1--

Ini disebabkan karena aplikasi yang kita buat percaya bahwa baris yang
konstan dispesifikasikan oleh attacker adalah bagian perintah yang
terdapat dalam database itu sendiri.
24

****Halaman ini sengaja dikosongkan****


BAB 3
PERENCANAAN DAN PEMBUATAN
PERANGKAT KERAS DAN PERANGKAT
LUNAK
Penggunaan port paralel sebagai media penyaluran sinyal
kontrol telah berkembang pesat, diantaranya untuk pengaturan peralatan
di rumah, kontrol robot, peralatan rumah tangga dan mesin produksi di
Industri. Namun demikian, dalam beberapa aplikasi umpan balik yang
diberikan ke operator atau user hanya status dari obyek yang dikontrol.
Dalam buku ini yang dipaparkan tentang sebuah sistem keamanan parkir,
yaitu dengan memberikan keamanan bagi setiap pengguna terhadap
kendaraannya dengan cara memasukkan nomor kendaraan dan password
dari pengguna itu sendiri. Komunikasi antara PC dengan motor stepper
itu sendiri menggunakan komunikasi data pararel untuk mangirimkan
perintah agar motor stepper berputar sesuai dengan yang telah ditentukan,
sedangkan database yang digunakan disini adalah menggunakan program
Microsoft Visual Basic 6.0 dan Microsoft Access.
Pada sistem ini, kami menggunakan program MicrosoftVisual
Basic 6.0 untuk mengontrol arah putaran motor stepper. Motor stepper ini
kami gunakan untuk mengatur arah putaran portal parkir (00 - 900).
Pengontrol ini terdiri dari beberapa blok rangkaian yang saling terkait
satu sama lain, sehingga dapat dihasilkan sudut ysng akurat. Blok
rangkaian yang digunakan adalah rangkaian driver yang dalam sistem ini
digunakan sebagai interface antara PC dengan motor stepper.

3.1.1 Perencanaan dan Pembuatan Driver Motor Stepper


Pada tugas akhir kali ini kami menggunakan motor stepper dengan
type unipolar. Dibanding dengan jenis motor stepper yang lain motor
stepper type unipolar sangat mudah dalam pengontrolannya. Rangkaian
driver sebagai pengontrol putaran motor stepper jenis unipolar sangat
mudah mekanismenya dibandingkan dengan rangkaian driver untuk
motor stepper jenis yang lain.
Secara teoritis, sebuah motor stepper dapat digerakkan langsung
oleh PC (port paralel). Dalam kenyataannya, arus dan tegangan yang
dikeluarkan oleh port paralel terlalu kecil untuk menggerakkan sebuah
motor stepper. Sementara itu untuk menggerakkan motor stepper
diperlukan arus yang lebih besar (dalam orde ampere) dan tegangan
berkisar 5 sampai 24 Volt.

25
26

START

Input Data Simpan Data

Scanning tidak
Input Data Baru
Data

ya

Buka Portal 90 0

Kendaraan
Masuk

Tutup Portal 90 0

END

Gambar 3.1 Flowchart Program Simtem Keamanan Parkir

Untuk mengatasi masalah tersebut, kami menggunakan sebuah


piranti tambahan yang memenuhi kebutuhan arus dan tegangan yang
cukup besar. Rangkaian driver motor stepper merupakan rangkaian “open
collector”, dimana output rangkaian ini terhubung dengan ground untuk
mencatu lilitan-lilitan motor stepper. Rangkaian ini pada dasarnya hanya
merupakan rangkaian switching arus yang mengaliri lilitan pada motor
stepper. Urutan pemberian data pada motor stepper ini dapat mengontrol
arah putaran dari motor stepper ini. Penambahan kecepatan pada motor
stepper dapat dilakukan dengan cara meningkatkan frekuensi pemberian
data pada rangkaian switching arus.
27

DRIVER

Buka / tutup portal


T. Parkir
Database

MONITOR

Masukan

Gambar 3.2 Alur cara kerja alat ketika kendaran akan masuk

DRIVER
KELUAR

Buka / tutup portal


Database

MONITOR

Masukan
T. Parkir

Gambar 3.3 Alur cara kerja alat ketika kendaran akan keluar

Rangkaian kontrol ini nantinya terhubung langsung dengan lilitan


pada motor, rangkaian power supplai, dan rangkaian yang pada akhirnya
menentukan kapan lilitan yang diinginkan dalam kondisi off atau on.
Kami menggunakan pin 1 sampai pin 9 pada port paralel sebagai output
yang terhubung pada rangkaian driver motor stepper. Pada rangkaian ini
kami menggunakan 2 jenis transistor yaitu 9012 yang bertype PNP dan H
1061 yang bertype NPN. Ada dua parameter yang harus didefinisikan bila
kita bekerja dengan stepper motor, yaitu: arah putaran dan kecepatan
28

putaran. Arah putaran dapat diatur dengan memberikan tegangan pada


lililtan-lilitan dengan urutan-urutan tertentu. Kecepatan putaran dapat
ditentukan dengan mengatur dan menghitung perbandingan waktu yang
dibutuhkan/diberikan untuk mencatu tegangan pada lilitan-lilitan dan
selang waktu antara tegangan step yang diberikan pada satu lilitan dengan
lilitan lain yang berurutan.

Ke port paralel

Gambar 3.4 Rangkaian Driver Motor

3.2. Menu Tampilan Dengan visual Basic


Menu tampilan merupakan menu utama yang dibuat menggunakan
Microsoft Visual Basic 6.0. Untuk mempermudah penggunaannya. Menu
tampilan ini terdiri dari komponen-komponen visual antara lain
komponen Timer, Label, ComboBox, TextBox, Frame, CommandButton,
ADODC.

¾ Penggunaan komponen Timer


Komponen Timer digunakan untuk menyediakan interval
waktu yang terukur yang dapat dikaitkan dengan suatu event.
Untuk merancang komponen timer, langkah-langkahnya adalah
sebagai berikut:
1. Mengambil komponen timer dari ToolBox dan
memasangkannya pada form yang digunakan.
2. Pada property interval diisikan dengan besar nilai sebagai
pengatur lamanya waktu terhadap system yang ingin
ditampilkan.
3. Apabila timer tidak difungsikan maka property enable
cukup diatur false.
29

Komponen timer yang dikenakan suatu perintah akan


mengatur sebuah tampilan berdasarkan jalannya waktu, diset dari
property tag.
Pada program sistem keamanan parker ini digunakan dua
komponen timer adapun fungsi dari kedua timer tersebut adalah
untuk pengaturan TextBox agar tulisan kelihatan berjalan.

¾ Penggunaan Komponen Label


Untuk merancang komponen Label, langkah-langkahnya
adalah sebagai berikut:
1. Mengambil komponen Label dari Toolbox dan
memasangkannya pada form yang digunakan.
2. Pada property Caption diisikan dengan tulisan yang ingi
ditampilkan pada form yang digunakan.
3. Komponen Label merupakan visual sehingga dapat diatur
property Visible-nya untuk ditampilkan atau tidak pda form
sesuai dengan kebutuhan yang diinginkan.
Label dalam tampilan digunakan untuk menuliskan
keterangan sebuah tampilan.

¾ Penggunaan Komponen ComboBox


Untuk merancang komponen ComboBox, langkah-
langkahnya adalah sebagai berikut:
1. Mengambil komponen ComboBox dari ToolBox dan
memasangkannya pada form yang digunakan.
2. Pada property text tidak diisikan tulisan atau dikosongkan
karena akan dijadikan sebagai masukan.
3. Pada property List isikan data yang digunakan sebagai
pilihan pada ComboBox.
4. Komponen ComboBox merupakan komponen visual
sehingga dapat diatur property Visible-nya untuk
ditampilkan atau tidak pada form sesuai dengan kebutuhan
yang diinginkan.
ComboBox dalam tampilan digunakan untuk memberikan
pilihan data untuk ditentukan sebagai masukan maupun pilihan.

¾ Penggunaan Komponen TextBox


Untuk merancang komponen TextBox, langkah-langkahnya
adalah sebagai berikut:
30

1. Mengambil komponen TextBox dari ToolBox dan


memasangkannya pada form yang digunakan.
2. Pada property text tidak diisikan tulisan atau dikosongkan
karena akan dijadikan sebagai masukan data.
3. Komponen TextBox merupakan komponen visual sehingga
dapat diatur property Visible-nya untuk ditampilkan atau
tidak pada form sesuai dengan kebutuhan yang diinginkan.
TextBox dalam tampilan digunakan untuk menuliskan data
sebagai masukan dan juga menampilkan data hasil pencarian
dalam database.

¾ Penggunaan Komponen Frame


Untuk merancang komponen Frame, langkah-langkahnya
adalah sebagai berikut:
1. Mengambil komponen Frame dari ToolBox dan
memasangkannya pada Form yang digunakan.
2. Komponen frame biasanya diletakkan dibawah komponen
tertentu. Untuk membuat demikian maka dilakukan dengan
klik kanan komponen Frame pilih Send to Back.
Komponen Frame pada proyek akhir ini merupakan
komponen pendukung. Komponen frame berfungsi untuk
membuat tampilan agar lebih rapid an indah. Pada program system
keamanan parkir ini menggunakan empat buah frame dimana
tiap-tiapnya digunakan sebagai frame dari komponen ComboBox,
Label, TextBox dan ADODC.

¾ Penggunaan Komponen CommandButton


Untuk merancang komponen CommandButton,
langkah-langkahnya adalah sebagai berikut:
1. Mengambil komponen CommandButton dari Toolbox dan
memasangkannya pada Form yang digunakan.
2. Pada property Caption diisikan dengan tulisan (Nama
Button) yang ingin ditampilkan pada form yang digunakan.
3. Komponen CommandButton merupakan komponen visual
sehingga dapat diatur property Visible-nya untuk
ditampilkan atau tidak pada form sesuai dengan kebutuhan
yang diinginkan.
Komponen CommandButton dapat digunakan untuk
memberikan suatu perintah dengan menambahkan program sesuai
dengan kebutuhan.
31

¾ Penggunaan Komponen ADODC


ADODC adalah komponen ToolBox yang digunakan untuk
link ke database (Microsoft Access). Untuk merancang kompnen
ADODC ini adalah dengan cara sebagai berikut:
1. Mengambil komponen ADODC dari ToolBox. Bila pada
ToolBox belum tersedia, klik kanan ToolBox lalu pilih
components dan aktifkan “Microsoft ADO Data Control 6.0
(OLEDB)”
2. Untuk mengaktifkan link ke Microsoft Access maka
ADODC perlu diset terlebih dahulu yaitu dengan cara klik
kanan komponen ADODC lalu pilih ADODC properties.
Pilih option Connection String dan pilih command Build.
Selanjutnya tentukan database untuk masukan level daya.
Atur Record Source sesuai dengan nama table database
system keamanan parker.
3. Komponen ADODC merupakan komponen visual sehingga
dapat diatur property Visible-nya untuk ditampilkan atau
tidak pada form sesuai dengan kebutuhan yang diinginkan.
Komponen ADODC dalam proyek akhir ini digunakan satu
buah yaitu digunakan untuk melakukan masukan data ke database
Microsoft Access.

3.3 Perancangan Program Motor Stepper Driver


Program berikut adalah program untuk menjalankan motor stepper
yang terdapat pada rangkaian motor stepper driver diatas dengan menu
pilihan untuk masuk ke dalam tempat parkir atau keluar dari tempat
parkir.
Untuk merancang pembuatan program motor stepper,
langkah-langkah yang harus dilakukan adalah sebagai berikut:
1. Buka VB. Pada menu File, klik perintah New Project, lalu klik OK
untukmembuat sebuah file axacutable standart.
2. Ubah ukuran form agar seukuran kotak dialog sedang, seperti
Gambar 3.5.
3. Klik kontrol Frame untuk membuat Frame1. frame ini digunakan
untuk mengelompokkan pilihan-pilihan tertentu dalam
pengontrolan motor stepper. Pilihan-pilihan tersebut dalam
program ini meliputi pengontrolan arah putaran motor stepper
yaitu plihan untu keluar atau parkir.
32

Gambar 3.5 Tata letak komponen

4. Klik kontrol Command untuk membuat Command1dan


Command2. command1 digunakan untuk membuat Tombol
Keluar dan Command2 digunakan untuk membuat Tombol
Keluar.
5. Klik tombol Timer untuk membuat timer dari program motor
stepper, yakni meliputi timer untuk delay maupun kecepatan
gerakan dari motor stepper.
6. Setelah selesai pembuatan form dan properti, kita siap menulis
kode-kode program yang menjadikan program yang kita buat
sesuai dengan rencana. Program motor stepper mempunyai tiga
even yang harus ditangani, yaitu Load pada form, even Timer,
serta even Clik pada tombol Command1 dan tombolo Command2.
untuk even Form_Load, kode programnya adalah sebagai berikut:

Private Sub Form_Load()


nilaisudut = 180
k = 0
i = 0
sudut = 0
End Sub

Prosedur ini akan berjalan pertama kali ketika program dijalankan.


Program ini mengatur lama putaran dari motor stepper.
7. Ketik kode program berikut ini pada even Timer.

Private Sub Timer1_Timer()


proses = i * 3.75
AKanan_click
33

i = i + 1
If i > sudut Then
Timer1.Enabled = False
Timer2.Enabled = True
i = 0
dataInp = ""
End If
End Sub

Private Sub Timer2_Timer()


Timer3.Enabled = True
Timer2.Enabled = False
End Sub

Private Sub Timer3_Timer()


proses = i * 3.75
Akiri_click
i = i + 1
If i > sudut Then
Timer1.Enabled = False
Timer2.Enabled = False
Timer3.Enabled = False
i = 0
dataInp = ""
End If
End Sub

Kode program yang dijalankan adalah untuk mengatur lamanya


putaran serta kecepatan dari motor stepper.
8. Ketik kode program berikut ini untuk pengaturan gerakan 900 dari
motor stepper.

Private Sub Form_Load()


nilaisudut = 180
k = 0
i = 0
sudut = 0
End Sub

Private Sub AKanan_click()


sudut = nilaisudut / 3.75
34

Data = 2 ^ n
Out Val("&H378"), Data
a = n
n = n + 1
If n > 3 Then
n = 0
End If
End Sub

Private Sub BKanan_click()


Data = 2 ^ (4 + n)
Out Val("&H378"), Data
a = n
n = n + 1
If n > 3 Then
n = 0
End If
End Sub

Private Sub ABKanan_click()


cek_sudut
Data = 2 ^ n Or 2 ^ (4 + n)
Out Val("&H378"), Data
a = n
n = n + 1
If n > 3 Then
n = 0
End If
End Sub

Jika terjadi penekanan tombol Parkir, maka semua menu pada


program tidak aktif. Hal ini dilakukan dengan mengubah properti
Enable menjadi False. ABKanan_click / ABKiri_click adalah
prosedur utama untuk menjalankan motor stepper, yaitu dengan
mengirim bit-bit tertentu ke port paralel dengan menggunakan
fungsi Port_Out dari file DLL. Bit-bit ini akan memutar motor
stepper kekiri atau kekanan sesuai dengan kombinasinya.
9. Langkah akhir dari pembuatan program ini adalah pembuatan
module. Langkah pembuatan module adalah sebagai berikut. Pada
menu Project klik Add Module. Selanjutnya, programnya adalah
sebagai berikut.
35

Public Declare Function Inp Lib "inpout32.dll"


_Alias "Inp32" (ByVal PortAddress As
Integer) As
Integer
Public Declare Sub Out Lib "inpout32.dll" _
Alias "Out32" (ByVal PortAddress As
Integer, ByVal Value As Integer)

Kode program di atas digunakan untuk mengikutkan prosedur


Port_out dan Tunda yang trdapat pada file Port_IO.dll sehingga
prosedur Port_Out dan Tunda siap digunakan pada program ini.

3.2.3 Perancangan Database


Pada proses ini dilakukan perancangan database dengan
menggunakan Microsft Access. Dalam proses perancangan database ini
memiliki tahap-tahap yang harus diperhatikan yaitu tipe data yang akan
diinputkan sehingga proses dalam pemrosesan databasenya data dapat
dengan mudah di eksekusi.

Gambar 3.6 tabel dari database MS Access

Untuk merancang table database, langkah-langkah yang harus


dilakukan adalah sebagai berikut:
1. Buat database baru dengan memilih Blank database.
2. Simpan database dengan nama “dbAplikasi”.
3. Pilih “Create table in Design View” dan klik 2x.
4. Desain nama table dan tipe data dengan mengeset Field Name dan
Data Type dengan mengisikan: No_Kendaraan (tipe data = text),
Jenis_Kendaraan (tipe data = text), Nama_Pemilik (tipe data =
ext), Alamat (tipe data = text), No_Telepon (tipe data = text),
36

password (tipe data = text). Pada database ini Field No_Kendaraan


dipilih sebagai Key Primary.
5. Untuk menampilkan password dalam bentuk asteris (*) maka
dalam PasswordChar kita isikan ‘*’.
6. Simpan table database dengan nama “TbAnggota2”.
Data pada database akan muncul ketika user memasukkan nomor
kendaraan dan password yang benar dan jika belum terdata maka user
harus mengisikan data ke dalam database terlebih dahulu.
Pada database ini data pada satu baris dinamakan Record dan data
dalam satu kolom dinamakan Field.
BAB 4
PENGUJIAN DAN ANALISA

4.1 Tujuan
Dalam Proyek Akhir ini akan dilakukan dua pengujian, yaitu
pengujian pada interfacing port parallel ke motor stepper dan pengujian
pada sistem database. Tujuan dari pengujian ini adalah untuk mengetahui
kinerja yang berupa kehandalan dan ketepatan eksekusi program untuk
mendefinisikan dan memanipulasi. Tanpa menutup kemungkinan adanya
kekurangan-kekurangan dalam sistem yang telah dibuat.

4.2 Pengujian Motor Stepper


Dalam pengujian motor stepper ini dilakukan dengan cara
mengunakan power supply yaitu dengan cara memberi arus pada
masing-masing lilitannya. Jika lilitan 1 dilewati oleh arus, sementara
lilitan 2 dan lilitan 3 tidak dialiri arus, maka kumparan 1 akan
menghasilkan gaya tolakan kepada rotor dan rotor akan berputar searah
jarum jam sehingga kutub rotor dengan label Y sejajar dengan kutub
dengan label 2. Jika kemudian lilitan 2 dilewati arus, selanjutnya lilitan 3,
dan akhirnya kembali ke lilitan 1 lagi berulang terus menerus secara
berurutan, maka motor akan berputar secara terus-menerus.
Dengan pengujian diatas dapat kita analisa bahwa suatu motor
stepper dapat bekerja dengan sempurna jika bisa melakukan hal-hal
tersebut diatas dengan baik dan lancar tetapi jika tidak bisa atau terdapat
kesalahan dalam pengujian meskipun hanya satu yang terjadi kesalahan
maka motor stepper tersebut sudah tidak bisa dipakai lagi dengan
sempurna dan jika tetap dipaksakan maka pasti akan terjadi kesalahan
dalam suatu aplikasi.

4.3 Pengujian Program Visual Basic


Pengujian software ini dilakukan dengan melakukan running
program terhadap program yang telah dibuat menggunakan bahasa visual
basic. Dari running program tersebut dapat diketahui bagaimana cara
kerja dari program yang telah dibuat
Pada perancangan aplikasi visual basic ini akan dibuat 1 buah
program, yaitu yang pertama adalah program komunikasi paralel antara
PC dengan motor stepper.
38

4.3.1 Pengujian Program Komunikasi Antar Form


Saat pertama kali program running maka, tampilan gambar pada
komputer akan nampak sebagai berikut:

Gambar 4.1 Running program pertama kali

Cara kerja dari program ini adalah, pertama:


1 Pertama kali PC akan menampilkan form awal seperti diatas.
2 Kemudian klik tombol Parkir (Tombol ini berfungsi untuk
menuju ke perintah parkir, baik itu akan masuk maupun keluar
dari parkir).
3 Atau kemudian klik tombol Registrasi (Tombol ini berfungsi
untuk menuju ke perintah registrasi, perintah ini dilaksanakan
ketika user belum pernah sama sekali parkir sehingga user harus
memasukkan data-data tentang dirinya maupun kendaraannya).

Pada proses tersebut diatas jika dianalisa telah sesuai dengan rencana
yang telah dibuat sebelumnya yaitu bisa mengakses form-form lainnya
yang diinginkan sehingga pengujian pada komunikasi antar form telah
bisa dikatakan sukses.

4.3.2 Pengujian Program Komunikasi Database


Dalam pengujian program ini kita pertama kali harus memasukkan
data pada form entry database, kemudian menghubungkan dengan
Microsoft Access.

Cara kerja dari program ini adalah:


1. Pertama kali yang harus kita lakukan belum pernah parkir adalah
melakukan entry data kedalam form yang telah disediakan.
39

Gambar 4.2 Proses Registrasi

Gambar 4.3 Database dalam microsoft access

2. Kemudian kita klik tombol simpan yang terdapat dalam form,


maka data secara otomatis akan tersimpan kedalam database.
3. Kemudian jika user ingin parkir, maka user tersebut harus
menekan tombol parkir untuk menuju ke menu parkir.

Pada analisa program pemasukkan data ke dalam database sistem,


program telah berjalan dengan sempurna sesuai dengan rencana semula
yaitu ketika semua form pengisian data telah terisi semua dan kemudian
40

kita klik tombol simpan maka dengan otomatis data tersebut akan dengan
secara langsung tersimpan kedalam database. Kemudian setelah
tersimpan kita bisa menuju ke parintah selanjutnya.

4.3.3 Pengujian Program Pencarian Data Dalam Database

Gambar 4.4 Proses ketika berada di pintu parkir

Cara kerja dari program ini adalah, pertama:


1. Pertama kali masukkan nomor kendaraan dan password.
2. Kemudian klik tombol Cek, jika nomor kendaraan dan password
benar maka akan tampil nama pemilik, jenis kendaraan dan
alamat user.
3. Jika data tersebut diatas ternyata salah maka user tidak dapat
melakukan perintah parker, tetapi jika benar maka user bias
melakukan perintah parkir.
4. Dan jika user belum pernah datang maka harus registrasi
terlebih dahulu sebelum melakukan perintah selanjutnya.

Disini dapat dianalisa bahwa pencarian data dari para pengguna jasa
parkir dengan cara memasukkan No_Kendaraan dan Password telah
berjalan sesuai dengan rencana dimana jika No_Kendaraan dan Password
benar maka eksekusi program selanjutnya bisa dijalankan. Sebelumnya
41

program ini sempat bisa dibobol dengan cara memasukkan kode-kode


tertentu, tetapi setelah dilakukan perbaikan pada program maka pada
akhirnya program ini telah aman dari para pembobol atau Hacker.

4.3.4 Pengujian Program Putar Motor Stepper

Gambar 4.5 Menu perintah ketika parkir

Cara kerja dari program ini adalah:


1. User harus memilih perintah apakah ingin parkir atau keluar.
2. Setelah itu portal akan membuka dan sesaat kemudian akan
menutup kembali.
3. Kemudian setelah proses diatas selesai maka tampilan akan
kembali ke form utama.

Pada program tersebut diatas bisa dianalisa ketika salah satu tombol
Keluar atau Parkir ditekan maka PC telah bisa mengirimkan perintah ke
motor stepper melaui port paralel agar berputar sesuai perintah yang
telah direncanakan. Dan kemudian setelah selesai maka portal akan
kembali ke posisi semula sehingga hal ini bisa dikatan bahwa program
tersebut diatas telah sempurna.
Secara keseluruhan pada sistem yang telah direvisi kali ini sama
sekali tidak menggunakan rangkaian mikrokontroller hal ini karena
mikrokontroller yang sebelumnya digunakan hanya bertujuan untuk
mengeluarkan bit 0 dan bit 1 saja untuk melakukan perintah
menggerakkan motor stepper sehingga hal ini sangat tidak efisiean,
kemudian setelah dilakukan revisi rangkaian mikrokontroller ini
dihilangkan dan untuk interface ke motor stepper digunakan port parallel
dimana sebelumnya kita menggunakan port serial. Dengan demikian
perintah untuk menggerakkan motor stepper secara otomatis langsung
dikendalikan oleh PC tanpa adanya mikrokontroller, sehingga hal ini
menjadi lebih efisien dan biaya yang dikeluarkan semakin sedikit.
42

****Halaman ini sengaja dikosongkan****


BAB 5
PENUTUP

Setelah dilakukan pengujian alat, maka diperoleh beberapa


kesimpulan dan saran yang diharapkan berguna untuk perbendaharaan
ilmu dan teknologi serta bagi kelanjutan dalam penyempurnaan alat ini.

5.1 KESIMPULAN
Berdasarkan studi dan penelitian yang dilakukan pada bab
sebelumnya, maka dapat disimpulkan beberapa hal antara lain:
1. Setiap pengguna jasa parkir harus mempunyai user name sendiri-
sendiri ketika akan memarkir kendaraan.
2. Pada sistem ini, pengontrolan gerakan portal agar bergerak sejauh
900 maupun kecepatan delay dari portal dilakukan dengan
pengaturan timer didalam program.
3. Dalam sistem keamanan parkir ini, penggunaan PC sebagai media
untuk menggerakkan portal melalui port paralel ternyata lebih efisien
dan sederhana dalam hal perancangan maupun pembuatan.

5.2 SARAN
Beberapa saran yang dapat dipertimbangkan untuk pengembangan
pada proyek akhir di masa mendatang :
1. Proses penyimpanan data dapat diperbaiki atau di-edit sehingga data
yang dimasukkan adalah data terbaru dari para pengguna.
2. Tidak adanya sistem pengontrol atau sensor ketika kendaraan sudah
masuk atau keluar, sehingga tidak bisa memastikan berapa lama
kendaraan melewati portal, untuk pengembangannya diharapkan
supaya bias menambahkan sensor pengontrol sehingga bias
mendeteksi apakah kendaraan telah melewati portal atau belum.
3. Perintah dalam melalui komunikasi paralel tidak bisa dilakukan
secara bersama-sama, untuk pengembangannya diharapkan bisa
dilakukan secara bersama-sama sehingga bisa mempercepat proses
kerja.
4. Pada sistem Informasi database diharapkan dalam pengembangan
bisa diberi laporan umpan balik yang dapat menunjukkan bahwa
kendaraan masih ada atau sudah keluar dari tempat parkir.

43
44
DAFTAR PUSTAKA
1. Andi, Yogyakarta, “Teori dan praktek interfacing port pararel dan
port serial komputer”.
2. M. Agus J. Alam, “Manajemen database dengan microsoft visual
basic versi 6.0”.
3. Bradly Millspaugh, “Programming in Visual Basic 6.0”.
4. Annisa Rasyid, “Visualisasi Pola Radiasi Antena”.
5. Alfian Andri Trianto, ”Pembuatan Monitoring Ruangan Berbasis
Camera Server --Pengontrolan Arah Kamera Menggunakan
Mikrokontroller—”.
6. Agus Supriyanto, ”Sistem Client-Server Untuk Aplikasi Mesin
Automatic Teller Machine (Software)”.
7. Muhammad Dahlan, “Perencanaan Dan Pembuatan Sistem Kontrol
ON/OFF Peralatan Rumah Tangga Via PABX NEAX 2000 IPS
Menggunakan Mikrokontroller AT89C51(Hardware)”.
8. ,http://electroniclab.com/index.php?action=html&fid=54

45
****Halaman ini sengaja dikosongkan****

46
LAMPIRAN
Private Sub Command1_Click()
Form2.Show
Form1.Hide
End Sub

Private Sub Command2_Click()


Form3.Show
Form1.Hide
End Sub

Private Sub Form_Load()


Label3.Caption = Date
End Sub

Private Sub Timer1_Timer()


tulisan = Text1.text
Text1.text = Right(tulisan, (Len(tulisan) - 1))
& Left(tulisan, 1)
End Sub

'Deklarasi Koneksi
Dim cnn As New ADODB.Connection
'Deklarasi Recordset
Dim rs As New ADODB.Recordset
'Deklarasi Command
Dim cmd As New ADODB.Command
Dim a As Integer

Sub cekinput(ByVal text As String)


aku = text
If aku = "" Then
MsgBox "Maaf Anda Belum Memasukkan Data
Kendaraan", vbOKOnly + vbInformation, "Data
Kendaraan Kosong"
a = 0
GoTo akhir
End If
For i = 1 To Len(aku)
48
b = Mid(aku, i, 1)
If b = "'" Or b = "(" Or b = ")" Or b = "-" Or b
= ";" Or b = "*" Or b = ":" Or b = "!" Then
MsgBox "jangan Coba coba, wajah anda telah kami
rekam untuk barang bukti", vbCritical,
"WARNING!"
a = 0
TxtPassword.text = ""
GoTo akhir
End If
Next i
akhir:
End Sub

Private Sub cmdTampil_Click()


a = 1
cekinput (TxtNo_Kendaraan)
If a = 0 Then
GoTo lanjuut:
Else

a = 1
cekinput (TxtPassword)
If a = 0 Then
GoTo lanjuut:
Else

Dim msql As String

'Mencari record yang kodenya


'sama dengan string pada
'textbox txtKode

msql = " select * from tbAnggota2" & _


" where (No_Kendaraan='" &
TxtNo_Kendaraan.text & "') and (password='" &
TxtPassword.text & "')"
49
'Membuka koneksi command
cmd.ActiveConnection = cnn
'Perintah SQL dari command

cmd.CommandText = msql

'Eksekusi command
Set rs = cmd.Execute
Set rs = cmd.Execute
Set rs = cmd.Execute

'Mengecek apakah recordset ada isinya


If Not rs.EOF Then
'Jika record ada

TxtNama_Pemilik.text =
rs.Fields("Nama_Pemilik")
TxtJenis_Kendaraan.text =
rs.Fields("Jenis_Kendaraan")
TxtAlamat.text = rs.Fields("Alamat")

Else
'Jika record tidak ada
MsgBox "Data Yang Anda Masukkan Salah !",
vbInformation + vbOKOnly

End If

'Menutup Recordset
rs.Close
End If
End If
lanjuut:
End Sub

Private Sub Command1_Click()


a = 1
cekinput (TxtNo_Kendaraan)
If a = 0 Then
GoTo lanjuut:
Else
50

Dim msql As String

'Mencari record yang kodenya


'sama dengan string pada
'textbox txtKode

msql = " select * from tbAnggota2" & _


" where (No_Kendaraan='" &
TxtNo_Kendaraan.text & "') and (password='" &
TxtPassword.text & "')"

'Membuka koneksi command


cmd.ActiveConnection = cnn
'Perintah SQL dari command

cmd.CommandText = msql

'Eksekusi command
Set rs = cmd.Execute
Set rs = cmd.Execute
Set rs = cmd.Execute

'Mengecek apakah recordset ada isinya


If Not rs.EOF Then
'Jika record ada

Konfirmasi.Show
Form2.Hide

Else
'Jika record tidak ada
MsgBox "Data Yang Anda Masukkan Salah !",
vbInformation + vbOKOnly

End If

'Menutup Recordset
rs.Close
51
TxtNo_Kendaraan.text = ""
TxtNama_Pemilik.text = ""
TxtJenis_Kendaraan.text = ""
TxtPassword.text = ""
TxtAlamat.text = ""
End If
lanjuut:
End Sub

Private Sub Form_Load()


a = 1
Dim KoneksiData As String

KoneksiData = "Driver={Microsoft Access Driver


(*.mdb)};" & _
"Dbq=dbAplikasi.mdb;" & _
"DefaultDir=C:\data;" & _
"Uid=Admin;Pwd=;"

'Membuat sebuah koneksi ODBC connection string


cnn.Open KoneksiData

End Sub

Private Sub Form_Unload(Cancel As Integer)

'Menutup koneksi
cnn.Close

'Menghapus koneksi
Set cnn = Nothing

End Sub

Private Sub txtNo_Kendaraan_KeyPress(KeyAscii As


Integer)

'Merubah teks menjadi huruf besar


If KeyAscii <> 13 Then
KeyAscii = Asc(UCase(Chr(KeyAscii)))
End If
52

End Sub

Private Sub TxtPassword_KeyPress(KeyAscii As


Integer)
'Merubah teks menjadi huruf besar
If KeyAscii <> 13 Then
KeyAscii = Asc(UCase(Chr(KeyAscii)))
End If
End Sub

Private Sub txtreg_Click()


Form3.Show
Form2.Hide
'Command3_Click

End Sub

'Deklarasi Koneksi
Dim cnn As New ADODB.Connection

Private Sub CmdCari_Click()


Form2.Show
Form3.Hide
'Command3_Click
End Sub

Private Sub cmdSimpan_Click()


Dim msql As String

'Mengisi Record ke Tabel


cnn.BeginTrans

msql = " INSERT INTO tbAnggota2(No_Kendaraan," &


_
"
Jenis_Kendaraan,Nama_Pemilik,Alamat,No_Telephon,
Password)" & _
53
" VALUES('" & txtNo_Kendaraan.text & "'," &
_
" '" & TxtJenis_Kendaraan.text & "'," & _
" '" & txtNama_Pemilik.text & "'," & _
" '" & txtAlamat.text & "'," & _
" '" & TxtNo_telephon.text & "'," & _
" '" & TxtPassword.text & "')"
cnn.Execute (msql)

'Menghapus teks
txtNo_Kendaraan.text = ""
TxtJenis_Kendaraan.text = ""
txtNama_Pemilik.text = ""
txtAlamat.text = ""
TxtNo_telephon.text = ""
TxtPassword.text = ""

cnn.CommitTrans

End Sub

Private Sub Form_Load()

Dim KoneksiData As String

KoneksiData = "Driver={Microsoft Access Driver


(*.mdb)};" & _
"Dbq=dbAplikasi.mdb;" & _
"DefaultDir=C:\data;" & _
"Uid=Admin;Pwd=;"

'Membuat sebuah koneksi ODBC connection string


cnn.Open KoneksiData

End Sub

Private Sub Form_Unload(Cancel As Integer)

'Menutup koneksi
cnn.Close
54
'Menghapus koneksi
Set cnn = Nothing

End Sub

Private Sub txtAlamat_KeyPress(KeyAscii As


Integer)

'Merubah teks menjadi huruf besar


If KeyAscii <> 13 Then
KeyAscii = Asc(UCase(Chr(KeyAscii)))
End If

End Sub

Private Sub TxtJenis_Kendaraan_KeyPress(KeyAscii


As Integer)
'Merubah teks menjadi huruf besar
If KeyAscii <> 13 Then
KeyAscii = Asc(UCase(Chr(KeyAscii)))
End If
End Sub

Private Sub txtNo_Kendaraan_KeyPress(KeyAscii As


Integer)

'Merubah teks menjadi huruf besar


If KeyAscii <> 13 Then
KeyAscii = Asc(UCase(Chr(KeyAscii)))
End If

End Sub

Private Sub txtNama_Pemilik_KeyPress(KeyAscii As


Integer)

'Merubah teks menjadi huruf besar


If KeyAscii <> 13 Then
KeyAscii = Asc(UCase(Chr(KeyAscii)))
End If
55
End Sub

Private Sub TxtPassword_KeyPress(KeyAscii As


Integer)
'Merubah teks menjadi huruf besar
If KeyAscii <> 13 Then
KeyAscii = Asc(UCase(Chr(KeyAscii)))
End If
End Sub

Dim dataInp As String


Dim header As String
Dim node As String
Dim motor As String
Dim arah As String
Dim sudut1 As String
Dim sudut2 As String
Dim a, n, i As Integer
Dim sudut As Integer
Dim proses As Integer
Dim cek1 As Boolean
Dim Cek2 As Boolean
Dim k As Integer
Dim carry As Integer
Dim kiri_carry As Boolean
Dim nilaisudut As Integer

Private Sub AKanan_click()


sudut = nilaisudut / 3.75
Data = 2 ^ n
Out Val("&H378"), Data
a = n
n = n + 1
If n > 3 Then
n = 0
End If
End Sub
Private Sub Akiri_click()
sudut = nilaisudut / 3.75
Data = 2 ^ (3 - n)
56
Out Val("&H378"), Data
a = n
n = n + 1
If n > 3 Then
n = 0
End If
End Sub
Private Sub BKanan_click()
Data = 2 ^ (4 + n)
Out Val("&H378"), Data
a = n
n = n + 1
If n > 3 Then
n = 0
End If
End Sub
Private Sub BKiri_click()
Data = 2 ^ (7 - n)
Out Val("&H378"), Data
a = n
n = n + 1
If n > 3 Then
n = 0
End If
End Sub
Private Sub ABKanan_click()
cek_sudut
Data = 2 ^ n Or 2 ^ (4 + n)
Out Val("&H378"), Data
a = n
n = n + 1
If n > 3 Then
n = 0
End If
End Sub
Private Sub ABKiri_click()
cek_sudut
Data = 2 ^ (3 - n) Or 2 ^ (7 - n)
Out Val("&H378"), Data
a = n
n = n + 1
57
If n > 3 Then
n = 0
End If
End Sub
Private Sub ABLawanKanan_click()
cek_sudut
Data = 2 ^ n Or 2 ^ (7 - n)
Out Val("&H378"), Data
a = n
n = n + 1
If n > 3 Then
n = 0
End If
End Sub
Private Sub ABLawanKiri_click()
cek_sudut
Data = 2 ^ (3 - n) Or 2 ^ (4 + n)
Out Val("&H378"), Data
a = n
n = n + 1
If n > 3 Then
n = 0
End If
End Sub

Private Sub Command1_Click()


carry = 0
proses = 0
Timer1.Enabled = True
Konfirmasi.Hide
Form1.Show
End Sub

Private Sub Command2_Click()


carry = 0
proses = 0
Timer4.Enabled = True
Konfirmasi.Hide
Form1.Show
End Sub
58
Private Sub Form_Load()
nilaisudut = 190
k = 0
i = 0
sudut = 0

End Sub

Private Sub Timer1_Timer()


proses = i * 3.75
AKanan_click
i = i + 1
If i > sudut Then
Timer1.Enabled = False
Timer2.Enabled = True
i = 0
dataInp = ""
End If
End Sub

Private Sub cek_sudut()


carry = nilaisudut - 360
If nilaisudut > 360 Then
sudut = nilaisudut / 3.75
ElseIf nilaisudut < 360 Then
sudut = nilaisudut / 3.75
Else
sudut = nilaisudut / 3.75
End If
End Sub

Private Sub Timer2_Timer()


Timer3.Enabled = True
Timer2.Enabled = False

End Sub

Private Sub Timer3_Timer()


proses = i * 3.75
Akiri_click
i = i + 1
59
If i > sudut Then
Timer1.Enabled = False
Timer2.Enabled = False
Timer3.Enabled = False
i = 0
dataInp = ""
End If
End Sub

Private Sub Timer4_Timer()


proses = i * 3.75
BKanan_click
i = i + 1
If i > sudut Then
Timer4.Enabled = False
Timer5.Enabled = True
i = 0
dataInp = ""
End If
End Sub

Private Sub Timer5_Timer()


Timer6.Enabled = True
Timer5.Enabled = False

End Sub

Private Sub Timer6_Timer()


proses = i * 3.75
BKiri_click
i = i + 1
If i > sudut Then
Timer4.Enabled = False
Timer5.Enabled = False
Timer6.Enabled = False
i = 0
dataInp = ""
End If
End Sub
60

****Halaman ini sengaja dikosongkan***


RIWAYAT HIDUP

Tatak Basuki Riandono Santoso


Penyusun lahir di Kediri, pada tanggal 8 Agustus
1984. Sebagai anak kedua dari 3 bersaudara dari
seorang ibu bernama Suprapti dan ayah bernama
Hari Santoso. Saat ini bertempat tinggal di jln. Raya
Ngadiredjo Kras-Kediri. Dan selama kuliah di
Surabaya kost di Wisma Kejawan Putih Tambak 1/14
hingga sekarang.

Riwayat pendidikan formal yang pernah ditempuh:


SD Negeri Tales 03 lulus tahun 1997.
SMP Negeri 1 Ngadiluwih lulus tahun 2000.
SMU Negeri 2 Kediri lulus tahun 2003.
D3 Jurusan Telekomunikasi, Politeknik Elektronika
Negeri Surabaya, Institut Teknologi Sepuluh Nopember
Surabaya (ITS).

Pada tanggal 10 Juli 2006 mengikuti Seminar Proyek Akhir sebagai


salah satu persyaratan untuk mendapatkan gelar Ahli Madya (A.Md.) di
Politeknik Elektronika Negeri Surabaya, Institut Teknologi Sepuluh
Nopember Surabaya (ITS).

61

You might also like