Mobile Robot, Teknologi Bluetoot
1. PENDAHULUAN
Saat ini di Indonesia, teknologi komunikasi bluetooth kebanyakan hanya digunakan
sebagai sarana transfer data dan masih sangat jarang digunakan sebagai pengendali suatu
perangkat keras. Mengingat perkembangan teknologi bluetooth yang semakin pesat tetapi
ruang lingkup aplikasinya yang masih sangat kecil, maka direncanakan sebuah aplikasi
mobile robot yang dikontrol oleh PC dengan menggunakan teknologi bluetooth di mana
mobile robot ini mampu melakukan komunikasi bi-directional, proses sensoring, dan
mengenali ID controller. Aplikasi mobile robot ini terdiri dari rangkaian controller dan
mobile robot.
Rangkaian controller berfungsi untuk mengatur seluruh gerakan mobile robot.
Rangkaian controller terdiri dari komputer dan USB Bluetooth Dongle. Sedangkan
rangkaian mobile robot berfungsi untuk menjalankan semua perintah yang diberikan dari
controller (termasuk perintah sensoring jarak dan kecepatan). Rangkaian mobile robot
terdiri dari modul AVR, modul ultrasonic untuk sensor jarak, sensor kecepatan, modul
EB500 (Embedded Bluetooth
TM
500), dan driver motor.
EB500 adalah suatu modul bluetooth buatan Parallax yang dapat menerima maupun
mengirim sinyal bluetooth. EB500 ini dapat dihubungkan langsung dengan microcontroller
secara serial sehingga sinyal kontrol yang diterima oleh EB500 dap langsung diolah oleh
microcontroller. EB500 termasuk salah satu modul yang baru saja dikenal dan dibuat
khusus untuk microcontroller milik Parallax sehingga masih belum diketahui kendalakendala apa saja yang akan dilalui apabila dihubungkan dengan microcontroller AVR.
2. DASAR TEORI
2.1 Modul Embedded Bluetooth
TM
500
Pada aplikasi ini, Embedded Bluetooth
TM
500 (EB500) digunakan sebagai
perantara komunikasi bluetooth antara microcontroller dengan komputer (menggunakan
Dongle USB Bluetooth). Seminar Nasional on Electrical, Mechanical, Civil Engineering, and Its Application E-115
Komunikasi bluetooth yang digunakan EB500 memiliki karakteristik sebagai
berikut:
1. Kekuatan pengiriman sinyal sebesar 4dBm (maksimum).
2. Menggunakan tipe komunikasi serial dengan jangkauan komunikasi pada lapangan
terbuka dapat lebih dari 100 meter (328 kaki).
3. EB500 dapat bekerja dengan baik pada temperature 0° hingga 70°C.
4. Supply Power sebesar 5 hingga 12 VDC.
5. Konsumsi arus sebesar 3mA hingga 35mA (bergantung pada kondisi koneksi dan
Baud Rate).
6. Tidak dapat menggunakan kode enkripsi dan sistem security yang lain (misal:
Passkey).
Pin yang dipakai adalah VSS, VIN, RX, TX, dan Connection Status. Pin RX Flow
dan TX Flow tidak digunakan karena format data serial yang dipakai tidak menggunakan
sistem flow control. Sedangkan pin Mode Control tidak digunakan, karena proses
perubahan mode pada EB500 dapat dilakukan secara software.
Komunikasi yang digunakan antara EB500 dan microcontroller adalah secara
Serial TTL (Standar Pabrik = 9600 Baud, 8 Data Bits, 1 Stop Bits, No Parity, dan No Flow
Control) dimana baud rate dan konfigurasi flow control–nya dapat dimodifikasi sesuai
keinginan pemrogram.
EB500 memiliki 2 mode operasi utama yaitu command mode dan data mode.
Setiap kali dilakukan power up, EB500 akan selalu masuk dalam command mode dan siap
untuk menerima serial command. Pada command mode ini terdapat beberapa perintah yang
dapat dikirim untuk menggunakan berbagai macam fitur yang dimiliki oleh EB500.
Perintah-perintah itu antara lain adalah : get con <CR> (notasi <CR> merupakan 0Ah dan
0Dh) : perintah untuk melihat kondisi connectable dari EB500 yang digunakan, get dis
<CR> : Perintah untuk melihat kondisi discoverable dari EB500 yang digunakan, lst
[timeout] <CR> : Perintah untuk mencari bluetooth motor lain yang masuk dalam
jangkauan EB500 dan dalam keadaan discoverable on, set dis status <CR> : Perintah
untuk merubah kondisi discoverable dari EB500. Variabel status diisi on (aktif) atau off
(non aktif).
Tabel 1. Konfigurasi Pin EB500
2.2 Sensor Ultrasonic dan MAX232 Fakultas Teknik Universitas Mataram, 17 September 2005 E-116
Prinsip kerja sensor ultrasonic untuk pengukuran jarak digambarkan dalam gambar
1. Pulsa ultrasonic, yang merupakan sinyal ultrasonic dengan frekuensi lebih kurang 41
KHz dikirimkan dari pemancar ultrasonic. Ketika pulsa mengenai benda penghalang, pulsa
ini dipantulkan, dan diterima kembali oleh penerima ultrasonic. Dengan mengukur selang
waktu antara saat pulsa dikirim dan pulsa pantul diterima, jarak antara alat pengukur dan
benda penghalang dapat dihitung.
Gambar 1. Prinsip Kerja Sensor Ultrasonic
MAX232 adalah multichannel RS232 driver / receiver yang hanya membutuhkan
single supply sebesar 5V. MAX232 memiliki jalur komunikasi RX dan TX namun yang
digunakan hanya bagian TX (Transmiter) saja dengan ketentuan sebagai berikut:
1. Logic Low (0) pada input dapat menghasilkan tegangan output sebesar
+10V.
2. Logic High (1) pada input menghasilkan tegangan output sebesar –10V.
Dalam aplikasi ini MAX232 digunakan untuk menerima keluaran dari
microcontroller, mengolahnya dan mengirimkan sinyal hasil pengolahan tersebut pada
ultrasonic transmitter. Dengan adanya MAX232, gelombang ultrasonic yang dikirimkan
oleh ultrasonic transmitter menjadi lebih kuat karena tegangan peak to peak yang menjadi
masukan ultrasonic transmitter menjadi lebih besar (Vpp tanpa MAX232 hanya 5V
sedangkan Vpp dengan MAX232 sebesar 20V).
2.3 Photo Interrupter
Photo interrupter yang digunakan pada proyek ini berjenis GP1A52HR buatan
SHARP. Photo interupter ini terdiri dari sebuah LED InfraRed , sebuah Photo Diode,
Voltage Regulator, serta komponen-komponen lain yang sudah terangkai khusus sehingga
tidak diperlukan lagi rangkaian-rangkaian lain untuk mengaktifkan Photo Interrupter.
Rangkaian dalam dari Photo Interrupter adalah sebagai berikut:
Gambar 2. Rangkaian Dalam dari Photo Interrupter
Dari gambar di atas dapat dilihat jika hubungan wireless antara LED InfraRed dan
PhotoDiode terpotong, maka pin 4 akan mengeluarkan logika ‘0’. Tetapi apabila tidak
terpotong, maka pin 4 akan mengeluarkan logika ‘1’. Seminar Nasional on Electrical, Mechanical, Civil Engineering, and Its Application E-117
2.4 Microcontroller dan software BASCOM AVR
Pada aplikasi ini digunakan microcontroller jenis AVR yaitu AT90S2313 produksi
ATMEL. Keunggulan dari jenis microcontroller ini adalah memiliki:
• Arsitektur AVR RISC
• 2K bytes In-System Programmable Flash
• 128 bytes SRAM
• 15 general purpose I/O pin
• 32 general purpose working register
• Flexible Timer/Counter yang dilengkapi dengan mode pembanding
• Internal dan eksternal interrupt
• Serial UART yang dapat diprogram
• Watchdog Timer yang dapat diprogram dan memiliki osilator internal
• Port serial jenis SPI untuk proses flash memory downloading
• 2 mode selectable program untuk menghemat daya
BASCOM AVR merupakan singkatan dari Basic Compiler AVR. BASCOM AVR
termasuk dalam program microcontroller buatan MCS Electronics yang mengadaptasi
bahasa tingkat tinggi yang sering digunakan oleh awam (Bahasa Basic). Dengan
menggunakan bahasa pemrograman tingkat tinggi, maka pemrogram mendapatkan banyak
kemudahan dalam mengatur sistem kerja dari microcontroller (terutama apabila tipe
microcontroller yang digunakan masih baru dan tidak terlalu dikenal).
BASCOM AVR memiliki program sendiri untuk memasukkan program yang telah
dikompilasi ke dalam AVR. Untuk AT90S2313 yang menggunakan kabel ISP, konfigurasi
dari programmer harus diubah menjadi STK300/STK200
3. PERENCANAAN SISTEM
Pada perencanaan ini akan lebih banyak dititikberatkan pada komunikasi bidirectional antara controller dengan mobile robot dengan menggunakan teknologi
bluetooth seperti yang dapat dilihat pada gambar 3
Controller
Mobile Robot
Command gerak
dan
Command
pengukuran sensor
Hasil
pengukuran
sensor
Proses
pengenalan
Controller
Gambar 3. Sistem secara Keseluruhan
Mobile robot yang dirancang ini memiliki tiga fitur dasar yaitu mengenali
controller, bergerak dan sensoring. Dalam mengenali ID controller, mobile robot akan
secara otomatis melakukannya apabila security mode dalam keadaan aktif (pin D.5
mendapat logika ‘high’). Sedangkan untuk dua fitur yang lain, mobile robot hanya akan
menjalankannya pada saat menerima perintah dari controller. Fakultas Teknik Universitas Mataram, 17 September 2005 E-118
Setelah program pada komputer diaktifkan dan berada dalam keadaan terkoneksi
dengan mobile robot, pengguna dapat memberikan perintah untuk menggerakkan mobile
robot (perintah gerak yang disediakan adalah maju, mundur, kiri , dan kanan). Jika
mendapat perintah gerak dan mobile robot dalam kondisi diam, mobile robot akan
berpindah posisi dengan kecepatan terendah. Kecepatan pada mobile robot dapat
meningkat apabila mendapat perintah gerak dengan arah yang sama dengan arah gerak
mobile robot (kecepatan mobile robot tidak dapat melebihi kecepatan maksimal yang telah
ditentukan). Sebaliknya, kecepatan pada mobile robot akan menurun atau bahkan berubah
arah apabila arah dari perintah gerak berlawanan dengan arah gerak mobile robot
(perubahan arah hanya terjadi secara langsung, bila mobile robot berada pada kecepatan
minimal atau dalam kondisi diam).
Selain bergerak, mobile robot juga memiliki kemampuan sensoring (jarak dan
kecepatan). Proses sensoring pada mobile robot terjadi secara otomatis pada selang waktu
tertentu sehingga pengguna dapat melihat hasil pengukurannya pada tampilan program
secara kontinu. Selain menampilkan hasil pengukuran, proses sensoring juga digunakan
untuk mengatur gerak mobile robot. Apabila mobile robot bergerak maju dan pada proses
sensoring jarak terdeteksi bahwa jarak antara mobile robot dan penghalang terlalu dekat,
maka secara otomatis mobile robot akan berhenti dan tidak akan menerima perintah untuk
bergerak maju. Perintah untuk bergerak maju akan terus tidak aktif hingga jarak antara
penghalang dengan mobile robot melebihi jarak minimal. Supaya mobile robot dapat
melakukan fungsinya, maka dibutuhkan sebuah rangkaian controller dan rangkaian mobile
robot. Rangkaian controller terdiri dari sebuah komputer yang sudah dilengkapi dengan
USB Bluetooth Dongle. Rangkaian mobile robot terdiri dari modul AVR (terdiri dari 2
buah AVR AT90S2313), modul ultrasonic, sensor kecepatan, modul EB500 (Embedded
Bluetooth), dan driver motor.
Gambar 4. Blok Diagram Sistem
Mekanik roda robot dirancang menyerupai helicak. Roda robot terdiri dari 3 buah
roda. roda depan hanya satu dan berbentuk bola sedangkan roda belakang ada dua dan
merupakan roda biasa yang dilengkapi dengan gear motor. Penggunaan roda depan yang
berbentuk bola adalah untuk mengurangi gaya gesek dan menghindari roda tersangkut
(pada jalur yang kasar) bila robot bergerak ke samping. Roda depan terbuat dari bola pimpong berdiameter 4 cm yang telah dilubangi pada bagian tengahnya sedangkan roda
belakang merupakan roda biasa yang terbuat dari karet dan berdiameter 4,5 cm
Seminar Nasional on Electrical, Mechanical, Civil Engineering, and Its Application E-119
Gambar 5. Sketsa Mekanik Robot
Mekanik sensor kecepatan terdiri dari sebuah roda khusus yang mempunyai
lubang-lubang di sisi luar. Roda khusus ini didapatkan dari sensor posisi pada mouse
komputer. Roda sensor dilubangi bagian tengahnya kemudian diselipkan pada gandar
motor sehingga roda sensor akan secara otomatis berputar (apabila roda motor juga
berputar). Roda ini memiliki lubang sebanyak 60 buah sehingga memiliki tingkat
kepresisian yang cukup tinggi dalam mengukur jarak dan kecepatan.
Lubang-lubang yang ada dipinggiran roda inilah yang menjadi masukkan dari
Photo Interrupter. Photo Interrupter mengeluarkan logika ‘1’ (apabila ada lubang) dan
logika ‘0’ (apabila tidak ada lubang). Jarak waktu perubahan output inilah yang
menentukan hasil pengukuran kecepatan motor.