BAB II Tinjauan Teoritis
2
BAB II
TINJAUAN TEORITIS
2.1
Visual Basic Visual Basic adalah salah satu bahasa pemrograman komputer. Bahasa
pemrograman adalah perintah-perintah yang dimengerti oleh komputer untuk melakukan
tugas-tugas
tertentu.
Bahasa
pemrograman
Visual
Basic
dikembangkan oleh Microsoft sejak tahun 1991, Visual Basic merupakan
pengembangan dari pendahulunya yaitu bahasa pemrograman BASIC (Beginner’s
All-purpose Symbolic Instruction Code) yang dikembangkan pada era 1950-an. Visual Basic merupakan salah satu bahasa pemrograman visual dan juga salah satu developement tools untuk membangun aplikasi dalam lingkungan Windows. Dalam pengembangan aplikasi, Visual Basic menggunakan pendekatan Visual untuk merancang user interface dalam bentuk form, sedangkan untuk coding-nya menggunakan bahasa Basic yang cenderung mudah dipelajari. Pada pemrograman Visual Basic, pengembangan aplikasi dimulai dengan pembentukkan user interface, kemudian mengatur properti dari objek-objek yang digunakan dalam user interface, dan baru dilakukan penulisan kode program untuk menangani kejadian-kejadian (event). Tahap pengembangan aplikasi demikian dikenal dengan istilah pengembangan aplikasi dengan pendekatan Bottom Up [1]. Berikut ini adalah keunggulan menggunakan Visual Basic 6.0 dibanding dengan jenis bahasa pemrograman yang lain [7]: 1. Visual Basic adalah pemrograman yang sederhana. Hal-hal yang mungkin sulit dalam pembuatan program akan lebih mudah dikerjakan di Visual Basic. 2. Karena berorientasi objek, maka dapat dibangun sebuah program aplikasi dengan tampilan grafis yang menarik. 3. Visual Basic 6.0 dibuat oleh Microsoft, sehingga memudahkan mengakses pustaka (library) yang tersedia dalam operasi windows.
Danuar Trianur Rohman 091331039 Laporan Proyek Akhir Tahun 2012
5
BAB II Tinjauan Teoritis
2.1.1
IDE Visual Basic Untuk dapat menggunakan Visual Basic, harus mengetahui terlebih dahulu
tentang IDE (Integrated Development Evironment) atau lingkungan kerja Visual
Basic itu sendiri. IDE Visual Basic 6 menggunakan model MDI (Multiple
Document Interface) [1]. Tampilan IDE Visual Basic terlihat seperti Gambar 1.
Gambar 1. IDE Visual Basic dengan Jendela-jendela yang Terbuka
Adapun jendela-jendela yang perlu diperhatikan: Menu Bar, digunakan untuk memilih tugas-tugas tertentu seperti menyimpan project, membuka project, dll. Main Toolbar, digunakan untuk melakukan tugas-tugas tertentu dengan cepat. Jendela Project, jendela ini berisi Gambaran dari semua modul yang terdapat dalam aplikasi anda. Anda dapat menggunakan icon Toggle Folders untuk menampilkan modul-modul dalam jendela tersebut secara di-group atau berurut berdasarkan nama. Anda dapat menggunakan Ctrl+R untuk menampilkan jendela project, ataupun menggunakan icon Project Explorer.
Danuar Trianur Rohman 091331039 Laporan Proyek Akhir Tahun 2012
6
BAB II Tinjauan Teoritis
Jendela Form Designer, jendela ini merupakan tempat anda untuk
merancang user interface dari aplikasi anda. Jadi jendela ini menyerupai kanvas bagi seorang pelukis.
Jendela Toolbox, jendela ini berisi komponen-komponen yang dapat anda
gunakan untuk mengembangkan user interface. Jendela Code, merupakan tempat bagi anda untuk menulis koding. Anda
dapat menampilkan jendela ini dengan menggunakan kombinasi Shift-F7.
Jendela Properties, merupakan daftar properti-properti objek yang sedang
terpilih. Sebagai contohnya anda dapat mengubah warna tulisan
(foreground) dan warna latarbelakang (background). Anda dapat menggunakan F4 untuk menampilkan jendela properti.
Jendela Color Palette, adalah fasilitas cepat untuk mengubah warna suatu object. Jendela Form Layout, akan menunjukan bagaimana form bersangkutan ditampilkan ketika runtime.
2.1.2
Komponen-komponen Visual Basic Pada pemrograman visual, pemrograman dilakukan dengan menggunakan
komponen-komponen yang tersedia pada toolbox. Toolbox standard diperlihatkan pada Gambar 2.
Gambar 2. Toolbox Visual Basic 6.0 dengan Semua Kontrol Intrinsik.
Danuar Trianur Rohman 091331039 Laporan Proyek Akhir Tahun 2012
7
BAB II Tinjauan Teoritis
Adapun secara garis besar fungsi dari masing-masing intrinsik kontrol
tersebut adalah sebagai berikut :
Pointer bukan merupakan suatu kontrol; gunakan icon ini ketika anda
ingin memilih kontrol yang sudah berada pada form.
Picture Box adalah kontrol yang digunakan untuk menampilkan image dengan format: BMP, DIB (bitmap), ICO (icon), CUR (cursor), WMF
(metafile), EMF (enhanced metafile), GIF, dan JPEG.
Label adalah kontrol yang digunakan untuk menampilkan teks yang
tidak dapat diperbaiki oleh pemakai.
Text Box adalah kontrol yang mengandung string yang dapat diperbaiki oleh pemakai, dapat berupa satu baris tunggal, atau banyak baris. Frame adalah kontrol yang digunakan sebagai kontainer bagi kontrol lainnya. Command Button merupakan kontrol hampir ditemukan pada setiap form, dan digunakan untuk membangkitkan event proses tertentu ketika pemakai melakukan klik padanya. Check Box digunakan untuk pilihan yang isinya bernilai yes/no, true/false. Option Button sering digunakan lebih dari satu sebagai pilihan terhadap beberapa option yang hanya dapat dipilih satu. List Box mengandung sejumlah item, dan user dapat memilih lebih dari satu (bergantung pada property MultiSelect). Combo Box merupakan konbinasi dari Text Box dan suatu List Box dimana pemasukkan data dapat dilakukan dengan pengetikkan maupun pemilihan. H-Scroll Bar dan V-Scroll Bar digunakan untuk membentuk scrollbar berdiri sendiri. Timer digunakan untuk proses background yang diaktifkan berdasarkan interval waktu tertentu. Merupakan kontrol non-visual. Drive List Box, Dir List Box, dan File List Box sering digunakan untuk membentuk dialog box yang berkaitan dengan file.
Danuar Trianur Rohman 091331039 Laporan Proyek Akhir Tahun 2012
8
BAB II Tinjauan Teoritis
Shape dan Line digunakan untuk menampilkan bentuk seperti garis,
persegi, bulatan, oval. Image berfungsi menyerupai image box, tetapi tidak dapat digunakan
sebagai kontainer bagi kontrol lainnya. Sesuatu yang perlu diketahui
bahwa kontrol image menggunakan resource yang lebih kecil dibandingkan dengan Picture Box
Data digunakan untuk data binding
OLE dapat digunakan sebagai tempat bagi program eksternal seperti
Microsoft Excel, Word, dll. Tapi objek – objek pada toolbox dapat ditambah sesuai dengan kebutuhan
user dalam pembuatan program aplikasinya. Cara menambah objek adalah dengan klik kanan pada toolbox, lalu pilih components, sehingga akan muncul tampilan seperti Gambar 3. selanjutnya pilih komponen - komponen kontrol / objek yang dibutuhkan dengan menklik /menceklis pada kotak pilihan dan klik OK [5].
Gambar 3. Menambah Komponen
2.1.3
Bahasa Visual Basic
2.1.3.1 Variabel Variabel merupakan tampungan atau tempat untuk menampung nilai yang bersifat sementara saja. Nilai yang akan di isikan ke dalam variabel harus sesuai
Danuar Trianur Rohman 091331039 Laporan Proyek Akhir Tahun 2012
9
BAB II Tinjauan Teoritis
dengan tipe data dari variabel tersebut. Sebab apabila tidak sesuai dengan tipe data
dari variabel, program akan error, kecuali jika memakai tipe data variant.
Variabel digunakan untuk menyimpan suatu nilai dan nilai yang ada didalamnya dapat diubah sewaktu-waktu. Dalam membuat suatu nama variabel, yang dipilih harus memenuhi aturan pengenal, adapun aturan yang berlaku nama
untuk pengenal, yaitu : • Karakter yang dapat digunakan yaitu huruf, angka, atau garis bawah • Karakter pertama harus berupa huruf atau garis bawah.
• Panjang variabel tidak boleh lebih dari 255 karakter. • Huruf kecil dan huruf kapital dibedakan.
• Tidak boleh memakai kata yang dipakai Visual Basic seperti dim, if, then, private dan lain-lain. Visual Basic memungkinkan untuk menggunakan variabel tanpa deklarasi. Tetapi hal ini adalah kurang baik untuk program yang terstruktur dan menghindari kesalahan pengolahan yang diakibatkan oleh kesalahan dalam pengetikkan nama variabel. Setiap variabel yang digunakan harus dideklarasikan, dapat digunakan perintah : Option Explicit. Pada setiap awal module, atau pada menu Tools, pilih Option, pilih tab Editor, buat tanda check pada Require Variable Declaration. Deklarasi variabel pada Visual Basic dapat dilakukan dengan keyword pada Tabel 1. Tabel 1. Keyword
Keyword
Keterangan
Public
Berlaku pada level modul
Private
Berlaku pada level modul
Dim
Berlaku pada level modul dan level procedure
Static
Berlaku pada level procedure
Apabila sebuah variabel kemudian dideklarasikan pada sebuah procedure atau function, maka hanya pada procedure atau function tersebut nilai variabel dikenali. Sedangkan jika ingin agar nilai variabel tersebut dapat dipakai di semua
Danuar Trianur Rohman 091331039 Laporan Proyek Akhir Tahun 2012
10
BAB II Tinjauan Teoritis
form pada program, maka dapat dilakukan dengan mendeklarasikannya sebagai
variabel global pada module.
Ketepatan pemilihan tipe variabel akan sangat menentukan pemakaian resources oleh aplikasi yang dihasilkan, adalah tugas programmer untuk memilih tipe yang sesuai untuk menghasilkan program yang efisien dan memiliki
performansi tinggi [1], tipe variabel ditunjukkan pada Tabel 2. . Tabel 2. Tipe variabel, Pemakaian Storage dan Jangkauan Masing-masing
2.1.3.2 Operator Operator adalah simbol yang digunakan dalam program untuk melakukan suatu operasi. Dalam Visual Basic terdapat tiga jenis operator utama, yaitu operator untuk operasi pembagian, operator untuk operasi perbandingan dan operator untuk operasi logika [8], ditunjukkan pada Tabel 3.
Tabel 3. Operator Pada Visual Basic dan Urutan Operasi dari Atas ke Bawah
Danuar Trianur Rohman 091331039 Laporan Proyek Akhir Tahun 2012
11
BAB II Tinjauan Teoritis
2.1.4
Percabangan dan Perulangan
2.1.4.1 Percabangan Pada beberapa kasus terkadang kita menginginkan komputer melakukan
suatu pernyataan tertentu bila suatu kondisi terpenuhi. Dalam Visual Basic perintah percabangan/pemilihan keputusan dapat dilakukan dengan statement
If...Then dan Select Case [5].
1. Statement If...Then
Statement ini digunakan untuk melakukan aksi setelah melakukan pengujian terhadap suatu kondisi. Pernyataan dalam blok statement hanya akan dilaksanakan ketika kondisi pengetesan/pengujian bernilai benar.
Statement If...Then memiliki beberapa sintaks/cara penulisan sesuai dengan jumlah pernyataan yang akan dieksekusi. a. If...Then dengan Kondisi dan Pernyataan Tunggal If
Then b. If...Then dengan Pernyataan Jamak If Then .
.
. End If c. If...Then dengan 2 kondisi. If Then Else End If d. If...Then dengan kondisi jamak. If Then
Danuar Trianur Rohman 091331039 Laporan Proyek Akhir Tahun 2012
12
BAB II Tinjauan Teoritis
ElseIf Then
... ElseIf Then
Else
End If
2. Statement Select Case
Sama halnya seperti statement If...Then, Select Case juga mengerjakan suatu blok statement berdasarkan uji nilai ekspresi. Perbedaannya adalah pada tata cara penulisan dan pengelompokan nilai dari variabel/kondisi. Sintaks : Select Case Case
Case
Case Else End Select
2.1.4.2 Perulangan Proses perulangan dalam pemrograman dilakukan untuk mengerjakan suatu proses operasi secara bertahap demi tahap dengan nilai variabel yang menaik atau menurun. Dalam Visual Basic proses perulangan dapat dilakukan dengan beberapa statement, diantaranya adalah statement For...Next dan Do...Loop. 1. For...Next Statement ini akan mengulangi suatu blok pernyataan sebanyak jumlah yang ditentukan. Statement ini digunakan jika banyaknya jumlah perulangan sudah diketahui. Sintaks:
Danuar Trianur Rohman 091331039 Laporan Proyek Akhir Tahun 2012
13
BAB II Tinjauan Teoritis
For = NilaiAwal To NilaiAkhir [Step Tingkat]
...
Next
2. Do...Loop
Statement ini mengulang blok statement bila kondisi benar atau sampai kondisi menjadi benar. Bila tidak ada perintah keluar, proses perulangan (loop) akan terus berlangsung. Statement ini digunakan untuk kondisi yang
mempunyai nilai tidak pasti dan tidak berurutan. Statement ini memiliki dua
buah bentuk logika. a. Statement Do...Loop...While Statement ini akan mengerjakan pernyataan dalam blok statement ketika kondisi bernilai benar, dan akan berhenti ketika kondisi sudah bernilai salah. Sintaks: Do While
Do
...
atau
...
Loop
Loop While
b. Statement Do...Loop...Until Statement ini akan mengerjakan pernyataan dalam blok statement ketika kondisi bernilai salah, dan akan berhenti ketika kondisi mencapai nilai benar. Sintaks: Do Until
Do
... Loop
Danuar Trianur Rohman 091331039 Laporan Proyek Akhir Tahun 2012
atau
... Loop Until
14
BAB II Tinjauan Teoritis
2.1.5
ActiveX Data Object (ADO)
Microsoft Visual Basic 6.0 memiliki teknologi akses data yaitu ActiveX Data Object atau lebih dikenal dengan ADO. ADO digunakan untuk memanipulasi informasi dari database relasional dan nonrelasional. ADO mampu meng integrasi-kan program aplikasi database dengan berbagai sumber data seperti
Microsoft Access, SQL Server, ODBC, Oracle, dan lain sebagainya. Microsoft Activex Data Object (ADO) memungkinkan untuk membangun aplikasi client/server yang dapat mengakses dan memanipulasi data dari sebuah server
dengan terlebih dahulu menentukan provider OLEDB-nya. ADO merupakan sebuah Component Object Model (COM) yaitu sebuah komponen interface
otomatis yang dapat digunakan dalam beberapa bahasa pemrograman diantaranya Microsoft Visual Basic 6.0, VBScript, JScript, Visual C++, dan Visual J++. Dalam prakteknya dapat digunakan salah satu cara koneksi database dengan ADO yaitu menggunakan ADO Data Control, menggunakan reference library atau juga DataEvironment. Atau dapat juga digunakan ketiga – tiganya dalam suatu project. Berikut beberapa metode yang ada dalam Activex Data Object [6]. Property dari ADODC ditunjukkan pada Tabel 4.
Tabel 4. Property ADO Data Control
Metode AddNew Update Delete Requery Find MoveFirst MoveLast Open Close
Keterangan Digunakan untuk membuat sebuah record baru yang kosong di dalam object recordset. Digunakan untuk menyimp an hasil perubahan pada record di dalam object recordset. Digunakan untuk menghapus record yang sedang aktif. Digunakan untuk meng-update atau memperbarui data – data di dalam object recordset. Digunakan untuk mencari record di dalam sebuah object recordset sesuai dengan kriteria tertentu. Digunakan untuk berpindah atau menuju ke record yang pertama. Digunakan untuk menuju ke record yang terakhir MoveNext Digunakan untuk menuju ke record selanjutnya. Digunakan untuk membuka object (Object Connection, Record, Recordset dan Stream). Digunakan untuk menutup object.
Danuar Trianur Rohman 091331039 Laporan Proyek Akhir Tahun 2012
15
BAB II Tinjauan Teoritis
2.1.6
MSComm Control MSComm Control adalah komponen pada MS Visual Basic yang
digunakan pada suatu program aplikasi yang mampu mengirimkan atau menerima data melalui serial port. MSComm Control ini berfungsi untuk mengakomodir jalannya komunikasi dan transfer data dari komputer ke peralatan elektronik ber
prosesor ataupun sebaliknya. Microsoft Comm Control 6.0 ini berfungsi untuk : 1. Mengadakan hubungan dengan serial port PC 2. Berhubungan dengan alat komunikasi lain (contoh : modem)
3. Melakukan pertukaran data
4. Memonitor dan merespon event dan error yang terjadi pada hubungan serial Property dan fungsi pada MSComm control ditunjukkan pada Tabel 5.
Tabel 5. Property MSComm Control
Property
Keterangan
CommPort Settings PortOpen Input
Menentukan nomor port serial Konfigurasi sesuai dengan device yang dipasang pada serial port Men-set kondisi communication port ke kondisi open atau close Mengambil karakter atau membersihkan receive buffer
2.2 Database Database (basis data) dapat diartikan sebagai suatu pengorganisasian data dengan bantuan komputer yang memungkinkan dapat diakses dengan mudah dan cepat. Dalam hal ini, pengertian akses dapat mencakup pemerolehan data maupun pemanipulasian data, seperti menambah dan menghapus data. Manfaat database banyak dijumpai di sekeliling kita. ATM (Anjungan Tunai Mandiri) merupakan sebuah contoh teknologi informasi yang pada dasarnya memenfaatkan database, yang memungkinkan seseorang bisa mengambil uang dimana saja dan kapan saja. Aplikasi database yang lain dapat dijumpai pada toko-toko swalayan, perpustakaan, dan bahkan pada Internet [5].
Danuar Trianur Rohman 091331039 Laporan Proyek Akhir Tahun 2012
16
BAB II Tinjauan Teoritis
2.2.1
Komponen Database Komponen terbesar dalam suatu Sistem database adalah database itu
sendiri. Data dalam database dapat dikelompokkan dalam beberapa tabel. Tabel merupakan kumpulan data sejenis. Sebuah tabel biasanya terdiri dari beberapa field (kolom) dan record (baris), sebuah field menerangkan sebuah informasi
dalam tentang identitas data dalam tabel, sedangkan record menerangkan sebuah data dalam tabel secara lengkap. Hirarki dari sebuah database dapat dilihat pada Gambar 4. [5]
Gambar 4. Hirarki Database
2.2.2 Microsoft Access Microsoft Access merupakan salah satu program aplikasi pengolah Database berbasis RDBMS (Relational Database Management System) yang paling mudah dan sering digunakan. Selain dapat dipakai sebagai single standing system, Database yang dibuat menggunakan Microsoft Access juga dapat dihubungkan dengan program aplikasi pembangun progam lain termasuk Visual Basic [2]. Bagian-bagian di Microsoft Access : 1. Tabel Tabel adalah tempat untuk menyimpan data. Tanpa tabel maka tidak dapat menyimpan data, Jika tidak ada data yang disimpan data tidak dapat diproses. 2. Form Form digunakan untuk merepresentasikan ke user atau menerima input-an dari user. Data-data dalam tabel/query dalam bentuk interface grid, tombol,
Danuar Trianur Rohman 091331039 Laporan Proyek Akhir Tahun 2012
17
BAB II Tinjauan Teoritis
dan lain-lain. Kontrol windows form dalam access bisa dimasukkan ke dalam
form lain sebagai control sub form, biasanya jika bekerja dalam transaksi
master-detail. 3. Query
Query adalah melihat sebagian atau seluruh data dari sebuah tabel atau
data. Beberapa hal yang dapat dilakukan dengan Query: o Menampilkan data-data tertentu pada suatu tabel. o Menampilkan data dari dua tabel atau lebih dengan syarat antar tabel itu
ada field yang berhubungan.
o Dapat melakukan operasi perhitungan.
o
Query biasanya digunakan sebagai sumber data untuk Report dan Form.
4. Report Seperti halnya form, digunakan untuk merepresentasikan hasil olahan data menjadi informasi yang siap di cetak di lembaran kertas. Pembuatan report kita lakukan Jika ingin membuat laporan tentunya segera menyiapkannya mencetak tabel sebagai laporan tetapi hasil cetakannya tidak seperti laporan yang diinginkan. 5. Switch Board Switch board adalah tampilan utama suatu program. Dengan penggunaan switch board akan lebih mudah untuk mengelola data yang akan dimasukkan pada sebuah database ataupun untuk melihat dan mengedit isi-isi yang ada.
2.3 Komunikasi Data Serial Komunikasi Data Serial penting untuk dibahas sebab jenis sistem komunikasi ini akan digunakan oleh mikrokontroler dan PC untuk dapat saling berinteraksi dan mengirimkan perintah melalui jalur komunikasi Bluetooth. Sistem komunikasi data serial merupakan sistem komunikasi yang biasa digunakan pada transmisi data jarak jauh. Port serial mengirim dan menerima data per 1 bit, melalui 1 kabel. Sehingga bila dibandingkan dengan port paralel yang mengirim data 8 bit dengan menggunakan 8 kabel bersamaan maka port serial akan membutuhkan waktu 8 kali lebih lama dalam mengirim data 8 bit, tetapi membutuhkan jumlah kabel yang lebih sedikit yaitu minimal 3 kabel (kabel
Danuar Trianur Rohman 091331039 Laporan Proyek Akhir Tahun 2012
18
BAB II Tinjauan Teoritis
pengirim, kabel penerima, kabel ground). Kecepatan pengiriman data ditentukan
oleh baudrate yaitu jumlah bit yang dikirim tiap detik. Nilai dari baudrate
ditentukan dari UART (Universal Asynchronous Receiver Transmitter) dan USART (Universal Synchronous Asynchronous Receiver Transmitter). Terdapat perbedaan dalam mengatur nilai baudrate berdasarkan UART dan USART karena
tergantung dari jenis pengiriman datanya [4]. 2.3.1
Komunikasi serial asynchronous Pada sistem asynchronous, data akan dikirim per karakter, dimana pada
setiap karakter akan diawali dengan start bit dan diakhiri dengan stop bit. Dengan
metode seperti ini maka penerima (receiver) mengetahui kapan sebuah karakter
masuk berdasarkan start bit-nya dan kapan berakhirnya berdasarkan stop bit-nya. 2.3.2
Komunikasi serial synchronous Pada sistem synchronous, data tidak dikirim per karakter melainkan per
frame, dimana satu frame terdiri dari beberapa karakter sekaligus. Pada setiap pengiriman frame terdapat karakter – karakter khusus yang akan digunakan sebagai penanda batas awal dan batas akhir dari sebuah frame. Komunikasi serial yang dipakai pada sistem Bluetooth untuk perancangan alat yang dibuat adalah komunikasi serial asynchronous sebab protokol untuk pengiriman maupun penerimaan datanya sama dengan.protokol komunikasi serial asynchronous yang mana data dikirim setiap 8 bit (per karakter), serta diawali start bit dan diakhiri stop bit. Sementara berdasarkan dari arah komunikasi data, maka komunikasi data serial dibedakan menjadi dua yaitu : 1. Sistem simplex Dalam sistem simplex, komunikasi data dilakukan dalam satu arah saja, yaitu dari transmitter ke receiver, oleh karena itu maka hanya dibutuhkan satu jalur transmisi saja. Sistem komunikasi simplex dapat dilihat pada Gambar 5.
Gambar 5. Komunikasi Simplex
Danuar Trianur Rohman 091331039 Laporan Proyek Akhir Tahun 2012
19
BAB II Tinjauan Teoritis
2. Sistem duplex
Dalam sistem duplex, komunikasi data dilakukan dalam dua arah secara
timbal balik. Pada sistem ini maka sebuah perangkat yang ada dapat berfungsi baik sebagai transmitter maupun receiver. Sistem duplex sendiri terdiri dari dua macam, yaitu half duplex dan full duplex : a. Sistem Half Duplex
Dalam sistem half duplex, jalur transmisi yang digunakan hanya satu.
Karena hanya ada satu jalur transmisi maka pengiriman data harus dilakukan
secara bergantian, satu sebagai transmitter dan lainnya sebagai receiver.
Adakalanya pada waktu bersamaan kedua perangkat berfungsi sebagai
transmitter, bila hal ini terjadi maka akan menimbulkan data collision. Sistem komunikasi half duplex dapat dilihat pada Gambar 6.
Gambar 6. Komunikasi Half Duplex
b. Sistem Full Duplex Dalam sistem full duplex, jalur transmisi yang digunakan ada dua. Satu digunakan oleh transmitter dan satunya oleh receiver. Sistem komunikasi full duplex dapat dilihat pada Gambar 7.
Gambar 7. Komunikasi Full Duplex
Sistem komunikasi Bluetooth yang digunakan pada perancangan alat menggunakan sistem half duplex sebab pengiriman data Bluetooth yang berasal dari mikrokontroler menuju ke PC maupun sebaliknya harus dilakukan bergantian serta tidak dapat dilakukan bersamaan dalam waktu yang sama.
Danuar Trianur Rohman 091331039 Laporan Proyek Akhir Tahun 2012
20
BAB II Tinjauan Teoritis
2.4 Komunikasi Bluetooth
Bluetooth adalah sebuah teknologi komunikasi wireless (tanpa kabel) yang
beroperasi dalam pita frekuensi 2,4 GHz unlicensed ISM (Industrial, Scientific
and Medical) dengan menggunakan sebuah frequency hopping tranceiver yang mampu menyediakan layanan komunikasi data dan suara secara real-time antara
host-host Bluetooth dengan jarak jangkauan layanan yang terbatas. Bluetooth menggunakan salah satu dari dua jenis frekuensi Spread Specturm Radio yang digunakan untuk kebutuhan wireless. Jenis frekuensi yang digunakan adalah
Frequency Hopping Spread Spedtrum (FHSS), sedangkan yang satu lagi yaitu Direct Sequence Spread Spectrum (DSSS) digunakan oleh IEEE802.11xxx.
Transceiver yang digunakan oleh Bluetooth bekerja pada frekuensi 2,4 GHz [9]. Logo Bluetooth diperlihatkan pada Gambar 8.
Gambar 8. Logo Bluetooth
2.4.1
Topologi Jaringan Pada saat sebuah perangkat Bluetooh berada pada daerah jangkauan dari
perangkat Bluetooth lainnya maka mereka dapat membentuk sebuah koneksi adhoc point-point seperti terlihat pada Gambar 9A atau koneksi point-to-multipoint. Dua atau lebih perangkat yang terhubung dalam sebuah daerah disebut dengan piconet. Beberapa piconet dapat terhubung bersama dalam ad-hoc scatternets. Untuk itulah pada teknologi Bluetooth dikenal sebuah istilah “Master and Slaves” dimana untuk mengontrol lalu lintas komunikasi data pada sebuah piconet. Salah satu perangkat dari perangkat Bluetooth yang terhubung menjadi master dan sisanya menjadi slave seperi terlihat pada Gambar 9B . Pada Bluetooth specification 1.1 dapat terjadi komunikasi secara aktif antara sebuah master sampai dengan tujuh buah slave. Scatternets terbentuk bila master dari sebuah piconet menjadi slave pada piconet lainnya atau dapat pula terjadi bila sebuah slave memiliki dua master seperti pada Gambar 9C. Dalam sebuah scatternet
Danuar Trianur Rohman 091331039 Laporan Proyek Akhir Tahun 2012
21
BAB II Tinjauan Teoritis
dapat terdiri sampai dengan 10 buah piconet. Pada Gambar 9 akan diberikan
ilustrasi mengenai hubungan yang terjadi antar perangkat Bluetooth [4].
Gambar 9. Ilustrasi Terjadinya Sebuah Picoonet A. Point-Point B. Point-to-Multipoint C. Scatternets
2.4.2
Arsitektur Protokol Bluetooth Bluetooth didefinisikan sebagai sebuah arsitektur protokol berlayer yang
mengandung protokol inti, pengganti kabel dan protokol telepon serta protokol adaptasi. Pada Gambar 10 dapat dilihat arsitektur protokol dari Bluetooth.
Gambar 10. Arsitektur Protokol Bluetooth
Berdasarkan Gambar 10, maka urutan layer arsitektur protokol Bluetooth adalah sebagai berikut: 1. Radio Layer paling dasar dari arsitektur Bluetooh adalah Bluetooth Radio. Bluetooth beroperasi pada Industrial Scientific and Medical (ISM) band antara 2,40 sampai dengan 2,48 GHz. Terdapat tiga kelas dari transmitter yang
Danuar Trianur Rohman 091331039 Laporan Proyek Akhir Tahun 2012
22
BAB II Tinjauan Teoritis
dibedakan dari output power dan jangkauan transmisi yang dimiliki. Kelas
yang ada dapat dilihat pada Tabel 6. Tabel 6. Kelas Bluetooth Radio
Power Class
Max Output Power
Min Output Power
1
100 mW (+20 dBm)
1 mW (0 dBm)
2 3
2.5 mW (+4dBm) 1 mW (0 dBm)
0.25 mW (-6 dBm) N/A
Range ~ 100 m ~ 10 m ~1m
Bluetooth radio menggunakan modulasi Gaussian Frequency Shift Keying
(GFSK) dalam melakukan transmisinya.
2. Baseband Layer Baseband Layer adalah lapisan fisik dan berada di atas Bluetooth radio. Baseband layer menangani masalah channel. Untuk menghindari terjadinya interferensi dari sinyal lain yang berada pada band 2.4 GHz seperti WLAN, Bluetooth menggunakan prinsip frekuensi hopping. Setiap perangkat Bluetooth mempunyai alamat hardware yang khusus dan sebuah Bluetooth clock. Sebuah algoritma tertentu digunakan untuk menghitung frekuensi hopping yang digunakan berdasarkan pada hardware address dari perangkat yang menjadi master dan clock. Untuk komunikasi duplex, skema Time Division Duplex (TDD) digunakan sebagai sarana pengiriman dan penerimaan data. Di mana pada skema ini perangkat master melakukan transmisi pada slot waktu genap dan perangkat slave melakukan transmisi pada slot waktu ganjil. 3. Link Manager Protocol Link Manager berfungsi untuk menjalankan link setup, authentication, link configuration dan aspek lainnya dari hubungan radio antara master dan slave. Selain itu juga berfungsi untuk menemukan link manager lainnya dan melakukan komunikasi dengan menggunakan link manager protocol. 4. Host Controller Interface Untuk memastikan hardware yang berbeda dapat saling mendukung maka perangkat Bluetooth menggunakan Host Controller Interface (HCI) sebagai tatap muka antara host Bluetooth (contohnya komputer) dan Baseband
Danuar Trianur Rohman 091331039 Laporan Proyek Akhir Tahun 2012
23
BAB II Tinjauan Teoritis
dan Link Manager. HCI dipecah menjadi tiga bagian, dimana setiap bagian
memiliki peranan yang berbeda, bagian – bagian dari HCI yang dibelah
menjadi tiga bagian tersebut adalah HCI firmware, HCI driver dan channel yang berada diantara keduanya. Susunan bagian – bagian dari HCI tersebut dapat dilihat pada Gambar 11.
Gambar 11. Bagan Host Controller Interface
Penjelasan untuk masing – masing bagian adalah sebagai berikut : a. HCI Firmware HCI Firmware merupakan bagian dari Host Controller 1, memungkinkan HCI command untuk digunakan oleh hardware dengan cara mengakses baseband commands, link manager commands, hardware status registers, control registers dan event registers. b. HCI Driver HCI driver berada pada host. Host menerima pemberitahuan mengenai kejadian HCI pada saat terjadi sesuatu yang kemudian menganalisa kejadian yang terjadi untuk menentukan apa yang terjadi. c. Host Controller Transport Layer Interaksi antara HCI driver dan firmware terjadi melalui host controller transport yang merupakan definisi dari beberapa layer yang ada di antara HCI driver dan firmware.
Danuar Trianur Rohman 091331039 Laporan Proyek Akhir Tahun 2012
24
BAB II Tinjauan Teoritis
5.
L2CAP
The Logical Link Control and Adaption Protocol (L2CAP) adalah
lapisan yang berada di atas baseband protocol dan melayani protokol yang di atasnya dengan kemampuan protocol multiplexing dan packet segmentation serta reassembly (SAR). Fungsi SAR diperlukan untuk mendukung protokol
yang menggunakan paket data yang lebih besar dari yang dapat didukung oleh baseband. Paket L2CAP yang besar dibagi kedalam beberapa paket baseband yang lebih kecil sebelum dipancarkan dan paket – paket tersebut akan disusun kembali setelah diterima menjadi paket L2CAP.
6. Sevice Discovery Protocol
Sevice Discovery Protocol pada dasarnya berfungsi untuk menyediakan perangkat (tools) yang dibutuhkan oleh sebuah aplikasi untuk memperoleh informasi dari sebuah perangkat Bluetooth, layanan Bluetooth apa saja yang tersedia dan untuk menentukan karakteristik dari layanan yang tersedia. 7. RFCOMM Port serial adalah salah satu dari layanan komunikasi yang sering digunakan. RFCOMM adalah pengganti protokol kabel yang termasuk di dalam spesifikasi Bluetooth. RFCOMM melakukan emulasi port serial RS-232 ke dalam protokol L2CAP dan menggantikan fungsi kabel serial. RFCOMM dapat menyediakan sampai dengan 60 port diantara dua perangkat Bluetooth. 8. Bluetooth Profile Bluetooth profile digunakan untuk memberikan Gambaran bagaimana implementasi dari sebuah fungsi dapat dilakukan. Bluetooth profile ditujukan untuk mengurangi masalah yang mungkin timbul dari perbedaan produk yang diproduksi oleh perusahaan yang berbeda. Profile yang dimiliki Bluetooth sampai saat ini antara lain, basic imaging, basic printing, cordless telephony, dial-up
networking,
file
transfer,
handsfree,
headset,
serial
port,
scynchronization.
Danuar Trianur Rohman 091331039 Laporan Proyek Akhir Tahun 2012
25
BAB II Tinjauan Teoritis
2.4.3
Wireless technologies Advantage and Disadvantages
Bluetooth sebagai salah satu teknologi wireless mempunyai pesaing lainnya yaitu, WLAN (Wireless LAN) atau banyak dikenal sebagai Wi-Fi (Wireless Fidelity) dan infrared yang pada saat ini sering ditemui. Masing-masing teknologi memiliki kelebihan dan kekurangan masing-masing. Pada Tabel 7 akan
diperlihatkan perbandingkan ketiganya.
Tabel 7. Keutungan dan Kerugian Teknologi Wireless
Bluetooth
Typical Range Line-of-sight Bandwith Interfere Security
Wireless LAN
Infrared
Medium (<100m)
Long (<100m)
Short (<1m)
No 1 Mbps shared Other RF devices Less secure than infrared. Uses linklayer authentication
No 11 Mbps shared Other RF devices
Yes 115 kbps None
Insecure unless protected with WEP & WPA encryption
Very secure due to short range and lineof-sight requirement.
Very High
Low
Power High Consumption
Penggunaan Bluetooth pada sistem ini dirasa tepat karena fitur – fitur yang dimiliki oleh Bluetooth telah mencukupi persyaratan yang dibutuhkan, antara lain: Jangkauan yang dibutuhkan telah sesuai dengan jangkauan maksimum yang dapat diperoleh oleh Bluetooth. Ukuran modul Bluetooth yang tidak terlalu besar. Daya yang dibutuhkan tidak terlalu mahal. Kecepatan data yang dihasilkan telah mencukupi karena data yang dikirimkan tidak terlalu besar.
Danuar Trianur Rohman 091331039 Laporan Proyek Akhir Tahun 2012
26