7203030024

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

Transcript of 7203030024

Page 1: 7203030024

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

Page 2: 7203030024

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

Page 3: 7203030024

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

Page 4: 7203030024

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

Page 5: 7203030024

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

Page 6: 7203030024

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

Page 7: 7203030024

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

Page 8: 7203030024

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 String........................................................................... 7

2.2.4. Membaca Record Dengan Recordset.......................... 9 2.2.5. Membaca Record Dengan Command.......................... 10 2.2.6. Membaca Record dengan Recordset dan Connection String........................................................ 11

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 Menggunakan Multimeter........................................... 16

2.4.3. Rangkaian Motor Stepper Driver………………........ 16

viii

Page 9: 7203030024

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 Basic 6.0...................................................................... 18

2.5.3. Macam-macam Objek pada Microsoft Visual Basic 6.0…………………………………………….. 19

2.6. SQL (Structured Query Language)……………………….. 20 2.6.1. SQL Inejction.............................................................. 21 BAB III. PERENCANAAN DAN PEMBUATAN PERANGKAT KERAS DAN PERANGKAT LUNAK............................... 25

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. PPeenngguujjiiaann PPrrooggrraamm VViissuuaall BBaassiicc……………………………………………….... 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

Page 10: 7203030024

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

Page 11: 7203030024

DAFTAR TABEL

Tabel 2.1 Konfigurasi pin dan nama sinyal konektor pararel standart DB-25.................................................................. 13

Tabel 2.2 Alamat masing-masing port…………………………….. 14 Tabel 2.3 Urutan pemberian arus………………………………….. 16

xi

Page 12: 7203030024

B A B 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

Page 13: 7203030024

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.

Page 14: 7203030024

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.

Page 15: 7203030024

4

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

Page 16: 7203030024

B A B 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

Page 17: 7203030024

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;” & _

Page 18: 7203030024

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

Page 19: 7203030024

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:

Page 20: 7203030024

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

Page 21: 7203030024

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

Page 22: 7203030024

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

Page 23: 7203030024

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.

Page 24: 7203030024

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 Pin

Nama Sinyal Direction Register Komplemen

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

Page 25: 7203030024

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

12 Paper- Out/Paper-End In Status bit 5

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

17 Select- Printer/ Select-in In/Out Control bit 3 Ya

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

Page 26: 7203030024

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.

Page 27: 7203030024

16

Tabel 2.3 Urutan pemberian arus Putar ke kanan Putar ke kiri Putaran

Lilitan1 Lilitan2 Lilitan3 Lilitan1 Lilitan2 Lilitan3Step 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.

Page 28: 7203030024

17

TIP31AR1.0k?

D1N4001

TIP31R1.0k?

D1N4001

TIP31R

1.0k ?

D

TIP31R

1.0k?

D1N40011N4001

VCC5V

Ke Motor Stepper

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

Page 29: 7203030024

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.

Page 30: 7203030024

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.

Page 31: 7203030024

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,

Page 32: 7203030024

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.

Page 33: 7203030024

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

Page 34: 7203030024

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.

Page 35: 7203030024

24

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

Page 36: 7203030024

B A B 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

Page 37: 7203030024

26

START

Scanning Data

Buka Portal 900

Input Data

Kendaraan Masuk

Tutup Portal 900

Input Data Baru

Simpan Data

END

tidak ya 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.

Page 38: 7203030024

27

MONITOR

DRIVER

Database

Masukan

Buka / tutup portal T. Parkir

Gambar 3.2 Alur cara kerja alat ketika kendaran akan masuk

MONITOR

DRIVER

Database

Masukan

Buka / tutup portal

T. Parkir

KELUAR

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

Page 39: 7203030024

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.

Page 40: 7203030024

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:

Page 41: 7203030024

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.

Page 42: 7203030024

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.

Page 43: 7203030024

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

Page 44: 7203030024

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

Page 45: 7203030024

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.

Page 46: 7203030024

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),

Page 47: 7203030024

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.

Page 48: 7203030024

B A B 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. 44..22 PPeenngguujjiiaann MMoottoorr SStteeppppeerr

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.

44..33 PPeenngguujjiiaann PPrrooggrraamm VViissuuaall BBaassiicc

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.

Page 49: 7203030024

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.

Page 50: 7203030024

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

Page 51: 7203030024

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

Page 52: 7203030024

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.

Page 53: 7203030024

42

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

Page 54: 7203030024

B A B 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

Page 55: 7203030024

44

Page 56: 7203030024

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

Page 57: 7203030024

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

46

Page 58: 7203030024

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)

Page 59: 7203030024

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 & "')"

Page 60: 7203030024

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

Page 61: 7203030024

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

Page 62: 7203030024

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

Page 63: 7203030024

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)" & _

Page 64: 7203030024

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

Page 65: 7203030024

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

Page 66: 7203030024

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)

Page 67: 7203030024

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

Page 68: 7203030024

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

Page 69: 7203030024

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

Page 70: 7203030024

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

Page 71: 7203030024

60

****Halaman ini sengaja dikosongkan***

Page 72: 7203030024

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