• Tidak ada hasil yang ditemukan

Perancangan Purwarupa Robot pembantu Orang Cacat

N/A
N/A
Protected

Academic year: 2017

Membagikan "Perancangan Purwarupa Robot pembantu Orang Cacat"

Copied!
68
0
0

Teks penuh

(1)

ABSTRACT

Robot is a technology that could simplify or could alleviate human tasks and can replace the jobs that are at high risk for humans. Robot Waiter is the development of robots that have a purpose as a servant to deliver food, and many restaurants overseas such as Japan, Korea, Thailand using a Robot Waiter to attract visitors. Waiter robot can not only help to the waiter but it can be used to help disabled people.

In order to increase convenience for the disabled people, then designed a Robot Waiter to assist disabled people in terms of delivering the food. with the goal of designing a Robot Waiter was able to move objects, the object is a plate containing food, the plate was automatically be transferred from the refrigerator to the table.

(2)

ABSTRAK

Robot merupakan sebuah teknologi yang bisa mempermudah atau memperingan pekerjaan manusia, dan juga bisa menggantikan pekerjaan yang beresiko tinggi untuk manusia. Dimana Robot Waiter merupakan perkembangan robot yang bertujuan sebagai pelayan untuk mengantarkan makanan, dan sudah banyak restoran luar negri seperti di Jepang, Korea, Thailand menggunakan jasa Robot Waiter untuk menarik perhatian para pengunjung. Robot Waiter tidak hanya dapat digunakan sebagai robot yang dapat membantu pelayan restoran, tetapi juga dapat digunakan untuk membantu orang cacat.

Untuk dapat meningkatkan kemudahan bagi orang cacat, maka dirancang sebuah Robot Waiter untuk membantu orang cacat dalam hal mengantarkan makanan. Dengan tujuan perancangan Robot Waiter ini mampu memindahkan barang, dimana barang yang dimaksud adalah piring yang berisikan makanan, piring tersebut secara otomatis dipindahkan dari dalam kulkas ke meja. Robot Waiter ini dirancang dengan menggunakan dua buah mikrokontroler Basic Stamp jenis 2p40 sebagai mikrokontroler utama, dan mikrokontroler Atmega 8 sebagai mikrokontroler pendukungnya. Robot Waiter ini juga menggunakan sensor jarak Ultrasonik dan inframerah dalam bernavigasi, dan dipasang sebuah gripper yang dapat mengambil piring didalam kulkas dan menyimpannya dimeja.

(3)

BAB I

PENDAHULUAN

1.1 Latar Belakang Masalah

Robot merupakan sebuah teknologi yang bisa mempermudah atau memperingan pekerjaan manusia dan juga bisa menggantikan pekerjaan yang beresiko tinggi untuk manusia. Pada laboratorium riset kimia contohnya, manusia tidak mungkin berada didalam laboratorium tersebut karena terdapat gas beracun yang dapat beresiko terhadap nyawa manusia. Perkembangan teknologi robot pada saat sekarang ini sangat pesat, seiring dengan perkembangan mikrokontroler yang lebih canggih dan bentuk yang lebih kecil. Teknologi robot sudah banyak digunakan dari mulai dunia kedokteran, militer, penelitian, industri dan juga alat bantu pada rumah tangga.

Robot Waiter merupakan perkembangan robot yang bertujuan sebagai pelayan untuk mengantarkan makanan, sudah banyak restoran luar negri seperti di Jepang, Korea, Thailand menggunakan jasa Robot Waiter untuk menarik perhatian para pengunjung. Robot Waiter tidak hanya dapat digunakan sebagai robot yang dapat membantu pelayan restoran, tetapi juga dapat digunakan untuk membantu orang cacat.

Di Amerika sendiri sudah ada kompetisi Robot Waiter, yang bertugas sebagai pelayan untuk membantu para penyandang cacat dalam mengantarkan makanan. Untuk dapat meningkatkan kemudahan bagi orang cacat, maka dirancang sebuah Robot Waiter untuk membantu orang cacat dalam hal mengantarkan makanan.

1.2 Maksud Dan Tujuan

(4)

ini dimaksudkan dapat membantu orang penyandang cacat untuk melayani dalam mengantarkan makanan.

1.3 Batasan Masalah

Untuk mempermudah pengujian kehandalan mekanik dan algoritma robot, agar dapat memindahkan barang dari satu tempat ketempat lain dengan kecepatan relatip tinggi dan handal. Batasan penelitian yang di ambil dari peraturan pertandingan Robot Waiter di Trinity College tahun 2011 yaitu dengan secara garis besar :

1. Ukuran robot, yang dibatasi panjang maksimal 30cm, lebar maksimal 30cm, dan tinggi maksimal 30cm

2. Bentuk arena lapangan yang berukuran 2,5m x 2,5m seperti yang di tunjukan pada gambar dibawah.

(5)

3. Terdapat sebuah kulkas yang sudah berisi piring pada rak yang berbeda, dengan ukuran rak bawah 14cm dari lantai dan rak atas 28cm dari lantai. Ukuran kulkasnya sendiri memiliki tinggi 42cm, panjang 45cm, dan lebar 25cm, yang harus dibuka dan ditutup secara otomatis oleh robot.

4. Terdapat sebuah meja tempat menyimpan piring dengan ukuran panjang 70cm, lebar 45cm, dan tinggi 21cm.

5. Tugas utama robot.

a. Robot harus membuka pintu kulkas secara otomatis, agar bisa mengambil piring yang ada di dalam kulkas.

b. Robot harus mengambil piring yang tepat sesuai suara frekuensi yang diberikan.

c. Setelah mengambil piring, robot harus bisa memastikan bahwa pintu sudah tertutup dengan benar.

d. Robot harus mengantarkan piring ke meja.

6. Waktu yang diberikan dalam menyelesaikan tugas 4 menit, dan penambahan waktu 2 menit untuk kembali ke home.

7. Beberapa Kondisi yang membuat robot gagal trial diantaranya: a. Robot menyentuh pintu kulkas, boneka nenek, dan kursi. b. Robot salah mengambil piring.

c. Menjatuhkan piring.

8. Posisi boneka nenek dan kursi acak pada garis lurus yang sudah ditentukan, tetapi tidak mungkin berada menghalangi sensor kulkas.

9. Mode start.

a. Mode start standart tempatnya di pojok kiri bawah pada gambar 1 dan arah robot acak.

(6)

1.4 Metode Penelitian

Metode yang digunakan dalam penyusunan tugas akhir ini adalah sebagai berikut :

a. Studi literatur.

Merupakan metode pengumpulan data yang dilakukan dengan cara mencari dan membaca referensi, yang berhubungan dengan masalah yang menjadi topik tugas akhir serta mengikuti kegiatan tentang ilmu robotika.

b. Eksperimen dan Interview.

Mencoba beberapa modul rangkaian yang sudah didapat dari studi literatur, dengan meminta gagasan atau ide dari orang lain.

c. Perancangan dan implementasi.

Perancangan dilakukan dari modul rangkaian dengan perangkat lunak sehingga terbentuk sebuah system, yang kemudian diimplementasikan ke sebuah robot. d. Pengujian dan analisis.

Untuk mengetahui kehandalan dari sistem tersebut dilakukan pengujian dengan cara mengambil data dari sistem yang sudah dibuat, dan menganalisa sistem yang sudah diujikan.

1.5 Sistematika Penulisan

Sistematika dari penulisan laporan tugas akhir ini adalah :

BAB I PENDAHULUAN

Bab 1 membahas tentang latar belakang masalah, identifikasi masalah, maksud dan tujuan, metode penelitian, batasan masalah serta sistematika penulisan.

BAB II LANDASAN TEORI

(7)

BAB III PERANCANGAN

Bab 3 membahas perancangan sebuah robot dibentuk dari perangkat keras dan perangkat lunak, pemilihan sensor yang digunakan dalam bernavigasi dan pembentukan algoritma pergerakan robot di arena.

BAB IV PENGUJIAN DAN ANALISIS

Bab 4 membahas cara kerja robot lalu dilakukan pengujian dan menganalisa data dari hasil pengujian.

BAB V KESIMPULAN DAN SARAN

(8)

BAB II

LANDASAN TEORI

2.1 Perangkat Keras (Hardware)

2.1.1 Mikrokontroler

Mikrokontroler bisa diartikan sebagai sistem komputer yang memiliki CPU, memori, osilator clock, dan I/O dalam satu rangkaian terpadu. Fungsi dari mikrokontroler adalah mengerjakan intruksi-intruksi pada memori program, program merupakan imajinasi dari seorang programmer, dimana program merupakan intruksi-intruksi dari intruksi set dari CPU, program disimpan di memori yang secara berurutan intruksi-intruksi tersebut dikerjakan oleh CPU. Mikrokontroler menggunakan osilator clock yang berfungsi untuk memicu CPU dalam mengerjakan satu intruksi ke intruksi selanjutnya dalam program yang berurutan, dari setiap langkah operasi mikrokontroler memakan waktu beberapa clock untuk mengerjakan satu intruksi tergantung pada nilai dari osilator clock.

Central Procesing Unit (CPU) yang mengerjakan intruksi-intruksi yang diprogram oleh programmer, mengintruksikan CPU untuk membaca informasi dari piranti input, membaca informasi dan menulis informasi ke memori untuk menuliskan ke memori. Ada beberapa tipe dari memori didalam mikrokontroler yang digunakan untuk beberapa tujuan yang berbeda, yang sering ditemui adalah RAM (Random Access Memori) dan ROM (Random Only Memori). RAM berfungsi sebagai tempat penyimpanan data sementara dan hasil kalkulasi selama proses operasi, ROM digunakan media penyimpanan data yang bersifat volatile

jika tidak ada tegangan pada mikrokontroler maka data tersebut tetap ada.

Sebuah piranti input menyediakan informasi kepada sistem mikrokontroler dari dunia luar, hampir input mikrokontroler hanya bisa memproses sinyal input

digital, dengan tegangan yang sama dengan tegangan sumber 5 Volt jika berlogika

(9)

beberapa mikrokontroler yang sudah memiliki piranti ADC internal dalam satu rangkaian terpadu. Output dari mikrokontroler berbentuk sinyal digital, untuk mendapatkan output sinyal analog maka dibutuhkan piranti DAC (Digital to Analaog Converter) yang merubah sinyal digital ke analog.

Gambar 2.1. Blok Diagaram Sistem Mikrokontroler

Penggunaan mikrokontroler pada perancangan robot ini di harapkan bisa mengoptimalkan sistem kerja robot yang berjalan secara otomatis.

2.1.2 Sensor Jarak

Ada dua buah jenis sensor jarak untuk mendeteksi objek yang digunakan dalam perancangan robot ini, yaitu sensor ultrasonik PING))) dan sensor inframerah (GP2D12 dan GP2D15 yang di produksi oleh Sharp).

2.1.2.1Sensor Ultrasonik

Sensor dinding yang digunakan menggunakan sensor PING))) yang diproduksi oleh parallax, penggunaan sensor PING))) dalam perancangan robot ini karena sensor ini mendukung penggunaan mikrokontroler BS2p40 dengan penggunaan modul Basic stamp.

Piranti

INPUT

Piranti

OUTPUT

Memori

CPU

(10)

Gambar 2.2. Sensor Ultrasonik

Prinsip kerja dari sensor ultrasonik PING))) yaitu dengan mengirimkan gelombang ultrasonik dengan waktu yang singkat, dan menunggu gelombang pantulan (echo) dari gelombang ultrasonik yang dikirim terlebih dahulu pada Gambar 2.3 menunjukan prinsip kerja sensor ultrasonik. Dalam menentukan berapa jauh jarak antara dinding dengan robot ada beberapa langkah dalam proses intruksi pada mikrokontroler.

Gambar 2.3. Cara Kerja Sensor Ultrasonik

(11)

speaker ultrasonik dengan mengirimkan sinyal high ke mikrokontroler. Ketika bagian penerima ultrasonik mendeteksi adanya echo, sinyal pada awalnya high

akan berubah menjadi low. Waktu yang dibutuhkan gelombang ultrasonik menuju objek dan kembali kebagian penerima ultrasonik, nilai dari waktu tersebut dijadikan sebuah variabel untuk menghitung jarak antara robot dengan objek.

2.1.2.2Inframerah

Sensor infra merah adalah sinar elektromagnet yang panjang gelombangnya lebih dari pada cahaya nampak yaitu diantara 700nm dan 1mm, sinar merah merupakan cahaya yang tidak tampak. Jika dilihat dengan alat spektroskop cahaya maka radiasi cahaya infra merah akan nampak dengan panjang gelombang diatas panjang gelombang cahaya merah. Dengan panjang gelombang ini maka cahaya infra merah akan tampak oleh mata tetapi radiasi panas yang ditimbulkannya masih terasa. Ada tiga bagian pada sensor infra merah yaitu, Near infra merah 0.75-15µ m, Mid infra merah 1.50- 10µm, dan Far infra merah 10-100µ m [3].

Salah satu contoh penggunaan infra merah untuk menentukan jarak yaitu sensor GP2D15, yang memiliki jarak maksimal sampai 24cm. Kemampuan mengukur jarak dengan objek tanpa terpengaruh oleh warna dan cahaya didalam ruangan.

Gambar 2.4. Sensor Inframerah GP2D15

Tegangan yang digunakan antara 4.5V sampai dengan 5.5V dengan konsumsi arus sampai 35mA. Cara kerja dari sensor infra merah ini ketika cahaya terhalang oleh objek pada jarak kurang dari 25cm, output dari GP2D15 yang

Signal

Ground

Pow er

(12)

masuk ke pin mikrokontroler bernilai 1 (high), dan ketika cahaya tidak terhalang oleh objek maka output bernilai 0 (low). Pada perancangan robot ini sensor ini digunakan untuk mendeteksi jarak antara robot dengan meja.

Sensor GP2D12 sama seperti GP2D15 yang merupakan sensor infra merah, tetapi bedanya output dari sensor GP2D12 berupa sinyal analog yang diwakili dengan data biner 8 bit yang memiliki jarak rentang antara 10-80cm. Agar sinyal yang masuk ke mikrokontroler tetap berupa sinyal digital, diperlukan sebuah komparator LM339. Penggunaan komparator ini dikarenakan ouput dari komparator yang masuk ke pin mikrokontroler relatip cepat dibandingkan dengan menggunakan ADC, karena prinsip kerja komparator hanya membandingkan tegangan Vin dengan Vref, jika Vin lebih kecil maka output sama dengan Vcc (high), jika Vin lebih besar maka output sama dengan Vee (low). Pada perancangan robot ini sensor GP2D12 berfungsi untuk mendeteksi pintu kulkas, pada saat pintu kulkas hendak membuka dan menutup.

Gambar 2.5. Konfigurasi Rangkain GP2D12 Dengan Komparator

2.1.3 Sensor Suara

Sensor suara terbagi menjadi dua bagian yaitu bagian penghasil suara (Transmitter) dan bagian pendeteksi suara (Receiver), dua suara berbeda yang dihasilkan antara frekuensi rendah dengan frekuensi tinggi. Jika sinyal frekuensi 3500Hz maka robot harus mengambil piring yang ada di rak bawah, jika sinyal frekuensi 7500Hz maka harus mengambil piring yang ada di rak atas.

(13)

frekuensi yang ditentukan, berikut contoh sintak program untuk menghasilkan suara.

Sintak : FREQOUT Pin, Duration, Freq1{,Freq2}

Keterangan:

• Pin : Variabel atau konstanta yang menentukan pin I/O yang digunakan.

• Duration : Lama waktu dalam mengahasilkan suara.

• Freq1,Freq2 : Merupakan nilai sinyal frekuensi yang ditentukan

Tabel dibawah menunjukan penggunan dalam menentukan nilai duration, dan batas maksimal nilai dari sinyal suara.

Tabel 2.1. Sinyal Frekuensi Pada Modul Basic stamp

BS2 and BS2e

BS2sx BS2p BS2pe BS2px

Units in

Duration 1 ms 0.4 ms 0.265 ms 1 ms 0.166 ms

Units in Freq1

and Freq2 1 Hz 2.5 Hz 3.77 Hz 1.51 Hz 6.03 Hz

Range of frequency 0 to 32767 Hz 0 to 81.917 kHz 0 to 123.531 kHz 0 to 49.478 kHz 0 to 197.585 kHz

Untuk mendapatkan sinyal frekuensi 3500Hz dan 7500Hz, dengan cara mengalikan sinyal yang diinginkan dengan nilai duration yang sudah ditentukan pada tabel.

(14)

Gambar 2.6. Rangkaian Modul Penghasil Suara

Untuk mengeluarkan suara yang berbeda pada satu pin I/O, digunakan satu buah saklar yang terhubung ke pin I/O untuk menentukan frekuensi suara mana yang akan digunakan. Jika mikrokontroler menerima logika high dari saklar maka akan mengeluarkan suara frekuensi 7500Hz, jika berlogika low mengekluarkan frekuensi 3500Hz.

Pada bagian penerima suara menggunakan dua buah rangkaian band pass filter untuk membedakan antara frekuensi 3500Hz dan 7500Hz, output yang keluar dari rangkaian band pass filter terhubung ke pin ADC internal pada mikrokontroler ATmega8.

2.1.4 Kompas

(15)

Output sensor ini dapat berupa pwm atau I2C, jika output pwm maka output

akan mengeluarkan pulsa selama 1ms untuk 0 derajat hingga 36,99ms untuk 359,99 derajat, sehingga memiliki sensitivitas 0,1 ms per derajat. Untuk I2C modul dapat dengan mengirimkan data yang dapat berupa byte(0-255) atau word (0-3599) untuk satu putaran. Modul sensor ini bisa dikalibrasi ulang dengan metode manual atau I2C.

2.1.5 Sensor Cahaya

Terdapat banyak piranti yang dapat digunakan sebagai sensor cahaya antara lain fotoresistor, fotodioda, dan fototransistor. Berdasarkan panjang gelombangnya sensor cahaya diklasifikasikan menjadi sensor inframerah, cahaya tampak dan ultraviolet.

Sensor cahaya mempunyai banyak kegunaan pada sistem otomasi, beberapa contoh antara lain untuk mendeteksi kertas pada printer, penentuan banyaknya lampu yang dibutuhkan pada suatu ruangan dan masih banyak lainnya.

Gambar 2.8. Fotoresistor

(16)

Gambar 2.9. Rangkaian Fotoresistor

Fotoresistor dihubungkan dengan resistor yang lain yang akan membentuk rangkaian pembagi tegangan untuk diukur beda tegangannya. Pada gambar 2.9 sebelah kanan menunjukan rangkaian fotoresistor dengan tegangan output

sebanding dengan intesitas cahaya, dan gambar sebelah kiri menunjukan tegangan berbanding terbalik dengan intensitas cahaya.

Nilai tegangan keluaran dari rangkaian fotoresistor dapat dihubungkan dengan komparator untuk mendapatkan sinyal biner, atau dapat dihubungkan dengan ADC. Adapun cara lain untuk mengukur nilai resistansi fotoresistor adalah dengan mengukur waktu RC. Fotoresistor mempunyai kelemahan dibanding fototransistor ataupun fotodioda yaitu waktu respon yang relatif lambat.

(17)

2.1.6 Motor DC

Roda yang dihubungkan menggunakan rantai plastik pada robot digerakkan menggunakan dua buah motor gear dc yang dipasang pada roda paling belakang sebelah kiri dan kanan. Pemilihan motor gear dc didasarkan pada putaran dan torsi yang lebih besar dibandingkan dengan motor stepper atau motor servo, juga didasarkan atas ketersediaan di pasaran selain harga murah juga banyak variasinya.

Gambar 2.10. Motor DC

Motor gear dc tidak dapat dikendalikan secara langsung oleh mikrokontroler, karena kebutuhan arus yang besar sedangkan keluaran arus dari mikrokontroler sangat kecil. Motor driver merupakan alternatif yang dapat digunakan untuk menggerakkan motor dc.

2.1.7 Catu Daya

Penentuan sistem catu daya yang akan digunakan ditentukan oleh banyak faktor, diantaranya :

1. Tegangan

Setiap modul sensor atau aktuator tidak memiliki tegangan yang sama. Hal ini akan berpengaruh terhadap disain catu daya. Tegangan tertinggi dari salah satu modul sensor atau aktuator akan menentukan nilai tegangan catu daya.

2. Arus

(18)

3. Teknologi pada Baterai

Baterai isi ulang ada yang dapat diisi hanya apabila benar-benar kosong, dan ada pula yang dapat di isi ulang kapan saja tanpa harus menunggu baterai tersebut benar-benar kosong.

Secara umum, ada beberapa jenis dan bentuk baterai yang dapat digunakan untuk sistem catu daya pada sebuah robot, diantaranya baterai Nickel Metal Hydride (Ni-MH). Baterai ini mempunyai teknologi terbaik untuk rechargeable

baterai, yakni dapat diisi ulang lebih dari 400 kali serta memiliki tahanan dalam yang rendah dengan tegangan kerja sebesar 1.2 volt, sehingga dapat memberikan arus yang relatif besar. Jika digunakan untuk beban yang berat, baterai ini dapat menjadi panas.

Kapasitas simpan baterai Ni-MH ini sangat bervariasi, yakni sampai 2700 mAh. Berikut ini adalah contoh sebuah baterai Ni-MH 2700 mAh.

Gambar 2.11. Baterai Ni-MH 2700mAh

(19)

2.2Perangkat Lunak (Software)

Perangkat lunak ini berupa algoritma gerak dan tugas robot dalam bentuk listing program yang ditanamkan kedalam mikrokontroler. Program dapat bermacam-macam bentuk versi dan bahasa pemrogramannya, sesuai dengan spesifikasi dari mikrokontroler yang digunakan.

Mikrokontroler BS2P40 adalah jenis mikrokontroler yang didalamnya sudah terdapat interpreter chip. Di dalam interpreter chip sudah terdapat program kecil yang berfungsi untuk menginterpretasikan program yang ditulis di dalam Basic stamp Editor. Bahasa pemrograman yang digunakan untuk mengisikan program ke dalam mikrokontroler ini adalah Bahasa PBasic, yang bahasa pemrogramannya hampir sama dengan bahasa Basic Software yang digunakan adalah Basic stamp Editor. Mikrokontroler ATmega8 menggunakan bahasa pemrograman QBasic, yang bahasa pemrogramannya hampir sama dengan bahasa Basic. Software yang digunakan adalah Bascom-AVR.

2.2.1 Basic Stamp

Instruksi yang dapat digunakan pada Basic stamp Editor relatif cukup banyak dan bergantung dari tipe dan jenis Basic stamp yang digunakan. Berikut ini beberapa instruksi-instruksi dasar yang dapat digunakan pada mikrokontroler Basic stamp dengan tipe BS2P40.

Tabel 2.2. Instruksi Dasar Basic stamp

Instruksi Keterangan

DO…LOOP Perulangan

GOSUB Memanggil prosedur

IF…THEN Percabangan

SELECT…CASE Pencabangan FOR..NEXT Perulangan

HIGH Menset pin I/O menjadi 1 LOW Menset pin I/O menjadi 0 PAUSE Delay atau waktu tunda

PWM Konversi suatu nilai digital ke keluaran analog lewat pulse-width modulasi

COUNT Menghitung jumlah pulsa (0-1-0 atau 1-0-1) PULSOUT Membangkitkan pulsa

(20)

Basic stampEditor merupakan sebuah software yang dapat dijalankan pada dua jenis versi sistem operasi, yakni DOS dan Windows. Software ini dapat berjalan pada komputer dengan sistem minimum, tanpa harus membutuhkan spesifikasi komputer yang sangat canggih. Berikut ini tampilan jendela program EditorBasic stamp yang berjalan pada sistem operasi Windows

Gambar 2.12 Tampilan Jendela Basic stampEditor

2.2.2 Bascom AVR

Instruksi yang dapat digunakan pada Editor Bascom-AVR relatif cukup banyak dan bergantung dari tipe dan jenis AVR yang digunakan. Berikut ini beberapa instruksi-instruksi dasar yang dapat digunakan pada mikrokontroler ATmega8.

Tabel 2.3 Instruksi Dasar BascomAVR

Instruksi Keterangan

DO…LOOP Perulangan

GOSUB Memanggil prosedur

IF…THEN Percabangan

FOR..NEXT Perulangan

WAIT Waktu tunda detik

WAITMS Waktu tunda milidetik WAITUS Waktu tunda mikrodetik SELECT…CASE Pencabangan

PULSOUT Membangkitkan pulsa

(21)

Bascom-AVR adalah software yang khusus dibuat untuk keluarga AVR,

software ini berjalan pada sistem operasi Windows. Software ini dapat berjalan pada komputer dengan sistem minimum, tanpa harus membutuhkan spesifikasi komputer yang canggih. Berikut ini adalah tampilan jendela program Bascom

-AVRyang berjalan pada sistem operasi Windows

.

(22)

BAB III

PERANCANGAN

3.1 Perancangan Perangkat Keras (Hardware) 3.1.1 Mikrokontroler BS2p40

Kemudahan dalam pengembangan program karena menggunakan bahasa tingkat tinggi menjadi faktor utama dalam pemilihan mikrokontroler BS2p40 ini, dan fasilitas yang ada di mikrokontroler ini hampir mendukung semua sensor yang digunakan.

(23)

3.1.2 Mikrokontroler ATmega8

Mikrokontroler ATmega8 disini berfungsi sebagai mikrokontroler pendukung BS2p40, pemilihan mikrokontroler ini berdasarkan banyaknya kebutuhan sensor sehingga perlu mikrokontroler pendukung.

Tabel 3.2. Penggunaan Pin I/O ATmega8 Nama Port No Pin Pin

I/O Tipe Pin Fungsi

PORT B

14 0 I/O Komunikasi ke BS2p40 (data1) 15 1 I/O Komunikasi ke BS2p40 (data2) 16 2 I/O Sensor Lantai

17 3 I/O Konfirmasi komunikasi 18 4 I/O LED indikator

19 5 I/O LED indicator

9 6 I/O

10 7 I/O

PORT C

23 0 ADC Sensor suara

24 1 ADC

25 2 ADC

26 3 ADC

27 4 ADC

28 5 ADC

1 6 ADC

PORT D

2 0 I/O

3 1 I/O

4 2 I/O

5 3 I/O

6 4 I/O

11 5 I/O

12 6 I/O

13 7 I/O Saklar untuk mode kecepatan navigasi

(24)

Gambar 3.1. Blok Diagram Komunikasi Mikrokontroler

Komunikasi yang dilakukan dengan mengirimkan sinyal digital bernilai 1 dan 0 yang dikombinasikan dari data1 dan data2, setiap intruksi yang dikirim memiliki data yang berbeda. Mikrokontroler BS2p40 mengirimkan intruksi yang akan dikerjakan oleh ATmega8 dan jika sudah beres dikerjakan mikrokontroler ATmega8 akan mengirimkan data yang sama ke mikrokontroler BS2p40, untuk menghindari pengiriman data yang gagal maka digunakan satu jalur konfirmasi dimana sebelum proses pengiriman data dilakukan, pada bagian mikrokontroler pengirim akan menanyakan apakah data sudah siap untuk diterima atau belum pada bagian mikrokontroler penerima.

Tabel 3.3. Data Komunikasi

Pada awal program BS2p40 harus mengetahui piring mana yang harus diambil, perintah tersebut dikirim oleh mikrokontroler ATmega8 yang sudah tersabung dengan sensor suara. Untuk menentukan posisi piring mana yang harus diambil yaitu dengan suara yang keluar dari modul penghasil suara, jika suara yang keluar memiliki frekuensi 3500Hz maka mikrokontroler ATmega8 mengirimkan intruksi ke mikrokontroler BS2p40 untuk mengambil piring di

Mikrokontroler Perintah Data

ATmega8 Mode piring atas 1 0 Mode piring bawah 0 1 Mikrokontroler

BS2p40

Mikrokontroler ATmega8 Konfirmasi

Data1

(25)

bawah, jika frekuensi 7500Hz maka mengambil pring di rak atas suara yang keluar memiliki toleransi ±10%.

3.1.3 Kalibrasi Kompas

Ada dua mode dalam start pertama mode start home standart dan mode start home arbitrary, untuk start standart sudah ditentukan di pojok kiri yang ditunjukan pada gambar 3.20, dan untuk start arbitrary ditentukan tidak akan lebih dekat dari posisi piring dan posisi home standart, untuk posisi home arbitrary diperkirakan didekat meja.

Dengan demikian robot harus bisa bergerak dari home standart dan home arbitrary, untuk mode start arbitrary diperlukan sebuah modul kompas digital untuk menentukan arah robot karena pada mode start arbitrary arah robot ditentukan oleh juri. Modul kompas yang digunakan yaitu CMPS03 Magnetic Compass buatan Devantech. Yang mempunyai ukuran 4x4 cm dan menggunakan sensor medan magnet Philips KMZ51, sensor magnet ini cukup sensitif untuk mendeteksi medan magnet bumi.

Gambar 3.2. CMPS03 Magnetic Compass

(26)

akan low selama 65ms di anatara pulsa, sehingga total periodenya adalah 65ms ditambah lebar pulsa positif antara 66ms sampai 102ms.

Gambar 3.3. Tactile Switch Untuk Proses Kalibrasi

Sebelumnya modul CMPS03 telah dikalibrasi oleh pabriknya dengan sudut utara bumi, jika ingin menentukan sudut utara yang kita inginkan maka modul ini harus dikalibrasi ulang dengan cara I2C atau dengan menggunakan pin manual. Untuk mempermudah mengkalibrasi maka menggunakan teknik pin maunua karena lebih efisien, dengan menggunakan rangkaian tactile switch seperti pada gambar 3.2 yang langsung terhubung ke pin 4 pada modul CMPS03. Dengan langkah memposisikan orientasi utara dari CMPS03 ke arah utara yang diinginkan lalu tekan tactile switch, dan begitu seterusnya untuk arah selatan, timur, dan barat. Dengan demikian robot mempunyai arah utara sendiri sehingga bisa menentukan arah gerak robot, dan tidak tergantung pada arah utara bumi.

3.1.4 Sensor UltrasonikPING)))

(27)

Gambar 3.4. Penempatan Sensor Ultrasonik

Pada bagian robot sensor sebelah kanan dan sebelah kiri berfungsi untuk bergerak maju menyusuri dinding, dengan cara membandingkan jarak sensor kanan depan dan sensor kanan belakang, jika sensor kanan depan lebih besar dari pada sensor kanan belakang maka kecepatan motor kanan berkurang, dan jika sebaliknya maka kecepatan motor kiri berkurang. Begitu juga pada sensor sebelah kiri bekerja, sama seperti sensor pada bagian sebelah kanan. Untuk sensor pada bagian depan dan belakang, berfungsi untuk meluruskan posisi robot dengan dinding sesudah mengerjakan gerakan belok.

Berdasarkan data sheet pada sensor ultrasonicPING))), memiliki kecepatan suara 1130 kaki/detik jika dikonversi ke centi meter setara dengan 34442,4 cm/detik. Untuk mengetahui besarnya jarak antara sensor dengan objek dapat ditulis program seperti dibawah.

PULSOUTPin, Duration

Keterangan :

PULSOUT : Pulsa yang dihasilkan oleh Pin selama Duration yang

akan menjadi input sensor.

Depan kiri Depan kanan

Kanan belakang Kanan depan

Kiri belakang Kiri depan

(28)

Pin : Sebuah variabel/konstanta yang menetapak pin I/O yang digunakan, pin ini diset untuk mode Output.

• Duration : Lamanya waktu pulsa yang dihasilkan antara 1-65535.

Setelah pulsa trigger dikirim, sensor menunggu selama 750us sebelum mengirimkan gelombang ultrasonik pendek. Waktu ini juga digunakan oleh sensor untuk mengrimkan gelombang ultrasonik selama 200us pada frekuensi 40Khz dan mikrokontroler menyiapkan intruksi selanjutnya. Berikut intruksi yang digunakan untuk memulai pengukuran, setelah proses pengiriman pulsa dari sensor.

PULSIN Pin, State, Variable

Keterangan:

PULSIN : Mengukur lebar pulsa pada Pin yang digambarkan oleh State dan menyimpan hasilnya ke dalam Variabel.

Pin : Sebuah variabel/konstanta yang menetapak pin I/O yang

digunakan, pin ini diset untuk mode Input.

State : Sebuah variabel/konstanta (0-1) yang menetapkan apakah pulsa yang diukur low (0) atau high (1).

Variable :

Sebuah variabel yang mana pulsa yang diukur akan

disimpan.

3.1.5 Sensor Inframerah (GP2D12 dan GP2D15)

(29)

Gambar 3.5. Fungsi Sensor GP2D12 Untuk Mendeteksi Pintu Kulkas

Robot harus mengetahui jika pintu kulkas sudah terbuka penuh dan sudah tertutup rapat, cara yang dilakukan adalah dengan mendeteksi jarak sensor dengan pintu kulkas. Robot menunggu pintu kulkas hendak membuka sampai sensor mendeteksi jarak yang ditentukan pada saat pintu kulkas membuka setengah, dan sensor menunggu sampai jarak menjadi jauh pada saat pintu kulkas dalam keadaan membuka lebar. Begitu juga pada saat kondisi pintu akan hendak menutup, sensor akan menunggu sampai jarak sensor dekat dengan pintu kulkas, dan menunggu jarak dari pintu kulkas menjadi jauh kembali pada saat kondisi pintu kulkas tertutup rapat.

Pin data dari sensor GP2D12 tidak langsung masuk ke pin mikrokontroller, kita menggunakan komparator agar sinyal yang diterima mikrokontroller berupa sinyal digital. Prinsip kerja komparator hanya membandingkan tegangan Vin dengan Vref, jika Vin lebih kecil maka output sama dengan Vcc (high), jika Vin lebih besar maka output sama dengan Vee (low). Gambar 3.5 diatas menunjukan posisi sensor terhadap pintu kulkas, jarak antara sensor dengan dinding sudah ditentukan sebelumnya.

Pada gambar 3.6 terdapat sebuah modul sensor pintu kulkas yang berfungsi mendeteksi robot, jika robot berada diatas modul sensor tersebut maka pintu kulkas akan terbuka dan jika robot berada diatas modul sensor untuk kedua kalinya maka pintu akan menutup. Pada peraturannya pintu kulkas akan berfungsi hanya satu kali membuka dan satu kali menutup dalam satu kali percobaan, jika

(30)
[image:30.612.216.419.441.592.2]

robot berada diatas modul sensor untuk ketiga kalinya maka pintu kulkas tidak akan melakukan gerakan membuka atau menutup .

Gambar 3.6. Modul Sensor Pintu Kulkas

Sensor yang digunakan berupa sensor infra merah GP2D120, sensor ini di pasang dilantai lapangan dengan posisi menghadap keatas dengan dilengkapi tiga buah LED berwana putih. Berikut rangkaian modul sensor pintuk kulkas yang ditujukan pada gambar 3.7.

Gambar 3.7. Rangkain Modul Sensor Pintu Kulkas

Setelah robot berhasil membuka pintu kulkas maka robot harus mengambil piring yang sudah ditentukan, robot bergerak maju kebagian dalam kulkas sampai

GP2D120

(31)

pemasangan sensor tersebut agak miring keatas, karena robot mendeteksi kebagian bawah rak kulkas.

3.1.6 Mekanisme Gripper

Robot memiliki satu buah gripper yang berfungsi untuk mengambil piring, dengan menggunakan 1 buah servo, 2 buah gear berdiameter 1,5 cm dan potongan

acrylic sebagai pencapit piring. Bentuk gripper dirancang sesuai dengan ukuran dari piring yang digunakan, ukuran piring tersebut berdiameter 10cm maka robot hanya bisa mengambil piring dengan ukuran yang sudah ditentukan. Pada gambar 3.8 bentuk gripper dengan penutup makanan terlihat tampak atas.

Gambar 3.8. Gripper tampak atas

Mekanisme yang dilakukan supaya bisa mengambil piring pada rak atas dan piring pada rak bawah, ditunjukan pada gambar 3.9 dengan menggunakan 1 buah servo dan 2 buah batang almunium sebagai tuasnya supaya gripper bisa bergerak naik dan turun.

a b

Gambar 3.9. a. Mekanisme Gripper Bergerak Turun b. Mekanisme Gripper

[image:31.612.228.410.285.386.2]
(32)

Pada bagian depan gripper dipasang satu buah sensor cahaya menggunakan LDR untuk mendeteksi posisi piring didalam rak, gambar dibawah menunjukan

gripper tampak depan.

Gambar 3.10. Gripper Tampak Depan

Posisi gripper pada saat mengambil piring tidak selalu berada pada posisi lurus dengan piring, sehingga pada bagian bawah gripper ditambahkan mekanisme agar gripper bisa bergeser kekanan dan kekiri. Untuk mengetahui poisisi robot pada saat akan mengambil piring, robot mendeteksi cahaya LED dengan sensor LDR dan mengukur jarak dari sensor Ultrasonik sebelah kanan belakang ke pintu kulkas. Pada gambar 3.10 menunjukan penempatan sensor LDR.

Jika jarak sensor Ultrasonik lebih besar dari 20 cm dan sensor LDR tidak mendeteksi adanya cahaya, maka gripper bergeser kesebelah kanan sampai sensor LDR mendeteksi adanya cahaya, dan jika jarak sensor Ultrasonik lebih kecil dari 10 dan sensor LDR tidak mendeteksi adanya cahaya maka gripper bergeser ke kiri sampai sensor LDR mendeteksi cahaya dari LED, berikut gambar yang menunjukan mekanisme gerak geser gripper berikut menunjukan mekanisme gerak gripper pada gambar 3.11.

a. b.

Gambar 3.11. a. Mekanisme Gripper Bergerak Kekanan, b. Mekanisme Gripper

Motor DC Rel meja

(33)
[image:33.612.237.396.154.270.2]

Untuk bisa menggerakan gripper kekiri dan kekanan digunakan satu buah motor dc sebagai penggerak, dan juga menggunakan sebuah rel meja yang sebagai penopang gripper.

Gambar 3.12. Bagian Dalam Kulkas

[image:33.612.246.386.385.515.2]

Terdapat 2 buah piring didalam kulkas dibagian rak atas dan rak bawah, robot harus mengambil salah satu dari kedua piring tersebut sesuai ketentuan pada gambar 3.12 menunjukan bagian dalam kulkas.

Gambar 3.13. Bentuk Piring Dengan Berisikan Makanan

(34)
[image:34.612.245.391.422.531.2]

Robot akan menyimpan piring dimeja setelah mengambil piring didalam kulkas, pemasangan sensor GP2D15 pada gripper yang ditunjukan pada gambar 3.14, tujuannya untuk mendeteksi jarak robot dengan meja pada saat robot bergerak maju kearah meja.

Gambar 3.14. Posisi Robot Akan Menyimpan Piring

Robot akan bergerak maju sampai kondisi sensor terpenuhi dengan jarak kurang dari 24cm dari meja. Kondisi ini bertujuan agar posisi piring tidak terlalu berada dibibir meja, yang bisa menyebabkan piring terjatuh kelantai. Gambar 3.14 menunjukan posisi robot pada saat meletakan piring.

Gambar 3.15. Posisi Robot Meletakan Piring Dimeja

3.1.7 Modul sensor suara

Robot hanya akan aktif jika diberikan suara dengan frekuensi 3500Hz dan 7500Hz, nilai frekuensi ini menentukan piring yang akan diambil oleh robot. Jika robot menerima frekuensi 3500Hz maka robot harus mengambil piring di rak bawah, dan jika robot menerima frekuensi 7500Hz maka mengambil piring dirak

(35)
[image:35.612.304.353.83.205.2]

Gambar 3.16. Modul Sensor Penghasil Suara

Modul penghasil suara menggunakan mikrokontroler BS2sx, karena sudah ada sintak program untuk suara frekuensi. Output dari modul penerima suara berupa sinyal analog, maka dibutuhkan sebuah komponen ADC untuk mengkonversi ke sinyal digital. Mikrokontroler ATmega8 memiliki ADC internal sehingga tidak perlu menggunakan modul rangkaian ADC lain, output dari modul penerima suara masuk ke pin ADC ATmega8. Setelah dikonversi mikrokontroler ATmega8 mengirimkan data digital ke BS2p40, sebagai data aktifasi robot dan menentukan piring mana yang harus diambil.

3.1.8 Kendali Gerak Motor

Robot bergerak menggunakan 2 buah motor DC, yang dikendalikan menggunakan IC L298 yang merupakan komponen Duall Full-bridge Driver. Komponen ini bisa mendrive dua buah motor dc sampai tegangan 46 Vdc dan arus 2 A untuk tiap kanal. Satu motor dapat dikontrol dengan 3 pin yang terdiri dari pin Aenable, A+, dan A- untuk motor A dan untuk motor B terdiri dari

(36)

Tabel 3.4. Tabel Kebenaran Driver Motor Aen A(+) A(-) Status Motor

Low X X Motor off

High Low Low Stop (rem) High High Low Berputar kedepan High Low High Berputar kebelakang High High High Stop (rem)

Pulsa High Low Berputar kedepan Pulsa Low High Berputar kebelakang

Keterbatasan pada port I/O mikrokontroler BS2p40 mengaharuskan dalam mengoptimalkan port tersebut, maka untuk pin A+, A- dan pin B+,B- menjadi disatukan dengan menggunakan gerbang NOT IC4704 sehingga hanya membutuhkan 2 pin untuk satu motor dc.

Gambar 3.17. Konfigurasi Rangkaian Driver Motor

(37)

3.1.9 Catu Daya Regulator

Faktor pendukung yang sangat penting adalah catu daya, karena mikrokontroler, sensor, dan aktuator bisa bekerja karena adanya tegangan. Supply

tegangan menggunakan 3 sumber tegangan yaitu tegangan untuk mikrokontroler dan sensor dengan 5 Vdc, tegangan motor dc memakai 19,5 Vdc, dan tegangan 5 Vdc untuk mencatu kendali motor driver. Pemisahan tegangan ini dimaksudkan agar tegangan yang masuk ke mikrokontroler tidak terganggu oleh tegangan dari motor.

Tegangan yang digunakan berasal dari baterai rechargeable yang mempunyai nilai tegangan 1,2 volt per satu baterai, dengan penggunaan baterai yang diserikan sehingga untuk mendapatkan nilai tegangan untuk motor dc 19,5 Vdc dibutuhkan sebanyak 16 buah baterai, dan untuk mencatu tegangan mikrokontroler dibutuhkan 8 buah baterai dengan nilai tegangan 9,5 Vdc. Catu daya untuk tegangan output 5Vdc didapat dari output sebuah regulator, yang menggunakan IC LM2940 sebagai regulator tegangan positif yang dihasilkan dari tegangan sumber sebesar 9.6 Vdc.

Gambar 3.18. Rangkaian Regulator LM2940

Untuk mendapatkan tegangan 5 Volt sebagai tegangan logic bagi motor

(38)

Gambar 3.19. Rangkaian Regulator LM2575

3.2 Perancangan Perangkat Lunak (Software) 3.2.1 Algoritma Dasar

Perancangan algoritma dasar ini merupkan sebagai patokan dalam perancangan algoritma secara keseluruhan, maka perancangan algoritma ini sangatlah penting yang dijelaskan sebagai berikut:

a. Gerak maju dan mundur

Gerakan maju dilakukan dengan menggerakan kedua roda secara bersamaan ke arah depan, begitu juga gerakan mundur dengan menggerakan kedua roda secara bersamaan kea rah belakang. Untuk menggerakan robot dengan arah maju dan mundur, pada mikrokontroler diberikan intruksi sebagai berikut:

HIGH motorkanan ; motor arah maju HIGH motorkiri ; motor arah maju

PWM, Aen,speedr,40 ; kecepatan putar motor kanan PWM, Ben,speedl,40 ; kecepatan putar motor kiri

(39)

LOW motorkanan ; motor arah mundur LOW motorkiri ; motor arah mundur

PWM, Aen,speedr,40 ; kecepatan putar motor kanan PWM, Ben,speedl,40 ; kecepatan putar motor kiri

Intruksi maju dan mundur sering digunakan dalam navigasi robot, untuk menghindari penulisan listing program maka intruksi untuk gerak maju dan mundur dijadikan sebuah prosedur untuk menghemat pemakaian memori pada mikrokontroler, dan mempermudah dalam pengembangan algoritma.

b. Gerak belok kanan dan belok kiri

Gerakan belok dilakukan dengan menggerakan roda kiri dan roda kanan dengan arah yang berlawanan, jika ingin melakukan gerakan belok kanan maka motot kiri digerakan dengan arah maju dan motor kanan digerakan dengan arah mundur. Jika ingin melakukan gerakan belok kiri maka kebalikan dari gerakan belok kanana, untuk membuat gerakan belok kiri dan belok kanan, pada mikrokontroler diberikan intruksi sebagai berikut:

Gerakan belok kanan:

LOW motorkanan ; motor arah mundur HIGH motorkiri ; motor arah maju

FOR ulang = 0 TO belok ; perulangan sampai belok PWM, Aen,speedr,40 ; kecepatan putar motor kanan PWM, Ben,speedl,40 ; kecepatan putar motor kiri NEXT

Gerakan belok kiri:

(40)

3.2.2 Algoritma Keseluruhan

Algoritma keseluruhan dalam mengambil piring didalam kulkas dan menyimpannya diatas meja untuk mode start di home standart dan mode start di home arbitrary. Untuk posisi start arbitrary diperkirakan diantara daerah tersebut, karena sesuai dengan peraturan posisi start tidak akan lebih dekat dengan posisi start standart dan posisi kulkas.

a b

Gambar 3.20. a. Mode Posisi Start Standart b. Mode Posisi Start Arbitrary

Konfigurasi lapangan diambil dari peraturan pertandingan Robot Waiter di Trinity College tahun 2011, dengan ketentuan secara garis besar sebagai berikut:

1. Ukuran robot, yang dibatasi panjang maksimal 30cm, lebar maksimal 30cm, dan tinggi maksimal 30cm

2. Ukuran arena lapangan yang berukuran 2,5m x 2,5m.

3. Terdapat sebuah kulkas yang sudah berisi piring pada rak yang berbeda, dengan ukuran rak bawah 14cm dari lantai dan rak atas 28cm dari lantai. Ukuran kulkasnya sendiri memiliki tinggi 42cm, panjang 45cm, dan lebar 25cm, yang harus dibuka dan ditutup secara otomatis oleh robot.

(41)

a. Robot harus membuka pintu kulkas secara otomatis, agar bisa mengambil piring yang ada di dalam kulkas.

b. Robot harus mengambil piring yang tepat sesuai suara frekuensi yang diberikan.

c. Setelah mengambil piring, robot harus bisa memastikan bahwa pintu sudah tertutup dengan benar.

d. Robot harus mengantarkan piring ke meja.

6. Beberapa kondisi yang membuat robot gagal percobaan diantaranya: a. Robot menyentuh pintu kulkas, boneka nenek, dan kursi.

b. Robot salah mengambil piring. c. Menjatuhkan piring.

7. Posisi boneka nenek dan kursi acak pada garis lurus yang sudah ditentukan, tetapi tidak mungkin berada menghalangi sensor kulkas.

8. Mode start.

a. Mode start standart tempatnya di pojok kiri bawah pada gambar 1 dan arah robot acak.

b. Mode start arbitrary posisi start random tidak akan lebih dekat dari tempat penyimpanan piring dan arah robot acak.

9. Waktu yang diberikan dalam menyelesaikan tugas 4 menit, dan penambahan waktu 2 menit untuk kembali ke home.

(42)
[image:42.612.215.485.71.600.2]
(43)

Berikut prosedur – prosedur dari algoritma keselurahan pada posisi start mode standart dan mode arbitrary:

[image:43.612.177.433.150.589.2]

a. Prosedur Arah Kompas

Gambar 3.22. Diagram alir pembagian arah kompas

(44)
[image:44.612.200.444.121.433.2]

b. Prosedur sinyal suara untuk menentukan posisi piring

Gambar 3.23. Diagram Alir Sinyal Suara Untuk Menentukan Posisi Piring

(45)

c. Prosedur susur dinding kanan dan susur dinding kiri

[image:45.612.180.489.100.409.2]

a b

Gambar 3.24. a. Diagram Alir Susur Dinding Kanan b. Diagram Alir Susur Dinding Kiri

(46)
[image:46.612.169.495.92.571.2]

d. Prosedur belok kanan dan belok kiri

Gambar 3.25. Diagram Alir Belok Kanan Dan Belok Kiri

(47)
[image:47.612.225.414.101.567.2]

e. Prosedur maju dan membuka pintu kulkas

Gambar 3.26. Diagram Alir Maju Dang Membuka Pintu Kulkas

(48)

f. Prosedur maju dan menutup pintu kulkas Awal prosedur program Return Ya Mundur pelan Sensor LDR mendeteksi cahaya LED? Baca sensor LDR

bawah

Baca sensor belakang

Sensor belakang <= 140 Cm ? Rak bagian atas

? Gripper naik

D

D

Baca sensor GP2D12

Sensor GP2D12 mendeteksi gerakan pintu

kulkas?

Baca sensor GP2D12

Sensor GP2D12 tidak mendeteksi gerakan pintu

[image:48.612.136.498.82.462.2]

kulkas? Ya Ya Ya Ya Tidak Tidak Tidak Tidak

Gambar 3.27. Diagram Alir Maju Dan Menutup Pintu Kulkas

(49)
[image:49.612.217.493.101.495.2]

g. Prosedur bergerak untuk menyimpan piring di meja

Gambar 3.28. Diagram Alir Bergerak Untuk Menyimpan Piring

Setelah robot mengambil piring dan menutup pintu kulkas, kemudian robot bergerak ke arah meja sebagai tempat untuk menyimpan piring yang disimulasikan sebagai meja boneka kakek. Agar pada saat menyimpan piring dimeja posisi piring tidak terlalu pinggir maka dipasang sensor dibagian bawah

(50)
[image:50.612.148.500.97.593.2]

h. Prosedur mengambil piring di rak atas dan piring rak bawah

Gambar 3.29. Diagram Alir Mengambil Piring Di Rak Atas Dan Rak Bawah

(51)

i. Prosedur kembali ke posisi awal Awal prosedur program Tidak Ya Mundur dikit Belok kanan 90 Mundur cepat Baca sensor belakang Sensor belakang < 10Cm ? Belok kanan 90 Mundur pelan Baca sensor belakang Sensor belakang < 40Cm ? Rem Tidak Ya Tidak Ya Maju pelan Baca sensor belakang Sensor belakang < 55Cm ? Belok kanan 90

Mundur pelan Baca sensor

depan

Sensor depan < 20Cm ?

Rem Tidak

Ya

[image:51.612.200.446.84.567.2]

Sensor lantai = 0 ? Baca sensor lantai Maju pelan Ya Tidak Saklar Start aktif? Return Ya Tidak

Gambar 3.30. Diagram Alir Kembali Kembali Keawal

(52)

BAB IV

PENGUJIAN DAN ANALISIS

4.1 Pengukuran Jarak Dengan Sensor Ultrasonik

Pengujian dilakukan pada sensor ultrasonik PING))), untuk menentukan jarak sensor terhadap dinding. Data yang diambil merupakan nilai waktu yang ditempuh oleh sensor, dari data waktu tersebut bisa dikonversikan kedalam satuan centi meter.

Agar mempermudah proses pengujian agar terlihat nilai data dari sensor, menggunakan sintak program yang sekaligus menampilkan data dari sensor ke layar monitor yang biasa disebut proses DEBUG. Gambar 4.1 menunjukan tampilan data dari hasil pengujian sensor, yang bisa dilihat pada layar monitor.

Gambar 4.1. Tampilan Pada Layar Monitor Data Sensor Ultrasonik

(53)
[image:53.612.202.438.97.363.2]

Tabel 4.1. Data Hasil Pengujian Sensor Ultrasonik Jarak pengukuran sensor dari

hasil konversi (cm)

Waktu yang ditempuh (µ S)

10 787

20 1508

30 2222

40 2959

50 3694

60 4424

70 5142

80 5846

90 6570

100 7284

110 8011

120 8726

130 9546

140 10176

150 10924

160 11614

Pada grafik dibawah menunjukan nilai jarak yang mendekati liner terhadap nilai waktu yang ditempuh oleh sensor ultrasonik, semakin jauh jarak maka waktu yang dibutuhkan oleh sensor semakin lama.

Gambar 4.2. Grafik Hasil Pengujian Sensor Ultrasonik 0 2000 4000 6000 8000 10000 12000

0 20 40 60 80 100 120 140 160

Waktu

s)

[image:53.612.148.492.477.681.2]
(54)

4.2 Pengukuran Jarak Dengan Sensor Inframerah

Pengujian sensor ini dilakukan terhadap pergerakan pintu kulkas yang hendak membuka dan menutup. Pengujian sensor dilakukan dengan menyimpan sensor didepan kulkas, dengan jarak kurang lebih 65cm dari kulkas. Berikut gambar yang menunjukan posisi sensor yang berada didepan kulkas, dan pergerakan pintu kulkas:

a. b.

c.

Gambar 4.3. a. Pintu Kulkas Tertutup Rapat (0°), b. Pintuk Kulkas Terbuka Pada Posisi (45°), c. Pintu Kulkas Terbuka Penuh Pada Posisi (90°)

GP2D12 merupakan sensor yang berbasiskan inframerah, sensor ini bisa mendeteksi objek hingga 10cm sampai dengan 80cm. Output dari sensor GP2D12 merupakan sinyal analog, maka digunakan sebuah komparator sebagai pengubah sinyal analog menjadi digital.

[image:54.612.164.482.205.404.2]
(55)
[image:55.612.202.437.82.258.2]

Gambar 4.4. Tampilan Pada Layar Monitor

[image:55.612.140.499.381.608.2]

Berikut tabel hasil pengujian sensor GP2D12 terhadap pintu kulkas yang bergerak mulai dari 0° tertutup rapat sampai 90° terbuka penuh.

Tabel 4.2. Data Hasil Pengujian Sensor Terhadap Gerak Pintu Kulkas Vref (Volt) = 0.8V

Pintu Kulkas Jarak (cm) Output data sensor (Volt)

Output dari komparator

(Volt)

Data dari mikrokontroller

0° 65 0.5 4.97 1

10° 50 0.63 4.97 1

20° 45 0.7 4.97 1

30° 40 0.78 4.97 1

40° 30 1 0.3 0

50° 25 1.1 0.3 0

60° 65 0.5 4.97 1

70° 65 0.5 4.97 1

80° 65 0.5 4.97 1

90° 65 0.5 4.97 1

(56)
[image:56.612.160.481.77.270.2]

Gambar 4.5. Grafik Hasil Pengujian Sensor GP2D12

Dari grafik diatas bisa dilihat terjadi perubahan pada saat pintu mulai bergerak membuka, diantara jarak 30-40cm dari perubahan ini robot bisa membedakan dan mengetahui kondisi dari pintu kulkas tersebut.

Robot akan menunggu sampai posisi pintu bergerak membuka setengah sekitar 40° - 50°, dan nilai dari komparator berubah dari high menjadi low karena jarak dari sensor menjadi dekat dengan pintu.

4.3 Pengujian Pembacaan Sudut Kompas

Kompas yang memiliki karakter mudah terganggu oleh medan magnet, sehingga penempatan kompas tersebut harus berada jauh dari motor DC yang bisa mengganggu pembacaan sudut kompas. Pengujian ini dilakukan untuk mengatahui letak posisi kompas, sehingga tidak tergangu oleh adanya noise yang berupa medan magnet.

Pada tabel 4.4 menunjukan dari setiap pembacaan kompas masih memiliki error, karena masih sedikit terganggu oleh noise dari motor DC sehingga penempatan letak kompas tersebut hasus lebih tinggi. Masalahnya disini terbatas dengan ukuran dari dimensi robot yang berukuran maksimal tinggi 30cm, panjang, 30cm, dan lebar 30cm.

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5

65 50 45 40 30 25 65 65 65 65

sensor

(57)
[image:57.612.249.388.95.448.2]

Tabel 4.3 Data Pengujian Arah Kompas

Sudut Sudut

Terbaca Error

0 0 0

15 16 1

30 29 1

45 43 2

60 62 2

75 75 0

90 88 2

105 104 1

120 116 4

135 131 4

150 148 2

165 166 1

180 179 1

195 195 0

210 214 4

225 227 2

240 241 1

255 257 2

270 273 3

285 283 2

300 298 2

315 314 1

330 331 1

345 343 2

360 359 1

Rata-rata error 1,68

[image:57.612.160.483.542.685.2]

Setiap sudut yang terbaca memiliki error dan pada grafik dibawah menunjukan selisih perbandingan yang tidak terlalu jauh, antara sudut yang ditentukan dengan sudut yang terbaca pada kompas.

Gambar 4.6. Grafik Hasil Pengujian Kompas 0

100 200 300 400

1 3 5 7 9 11 13 15 17 19 21 23 25

(58)

4.4 Pengujian Fotoresistor

[image:58.612.249.397.233.320.2]

Pengujian sensor ini untuk mendeteksi cahaya yang dipancarkan oleh sebuah Led, cahaya yang dideteksi hanya dua warna yaitu Led berwana merah dan Led berwarna putih. Pada dasarnya tidak ada perbedaan dalam mendeteksi cahaya yang berbeda sekalipun, karena Fotoresistor memiliki sifat sangat peka terahadap cahaya tampak. Tabel dibawah menunjukan hasil pengujian dari sensor tersebut.

Tabel 4.4 Hasil Pengujian Sensor Fotoresistor Media Penguji Sinyal

Led Merah low

Tidak terkena

cahaya Led high Led Putih low

Sensor Fotoresistor diatur pada jarak ±3cm dari Led, pada tabel diatas dapat disimpulkan bahwa sensor Fotoresistor dapat mendeteksi cahaya Led tanpa terganggu dengan cahaya lain dimana cahaya tersebut tidak melebihi keterangan dari cahaya Led.

4.5 Pengujian Algoritma Dasar

Kecepatan pada motor kiri dan kanan tidak sama, disebabkan karena karakteristik dari kedua motor yang digunakan berbeda. Dari hasil percobaan dibuktikan bahwa kecepatan putar motor kanan lebih cepat dari motor kiri dengan perbandingan 1 : 3, dari perbandingan tersebut menjadi sebuah patokan dalam pemberian nilai untuk setiap motor.

(59)
[image:59.612.201.438.94.324.2]

Tabel 4.5. Hasil Pemgujian Gerak Belok Kanan Dan Belok Kiri 90°

Gerak Percobaan Keterangan hasil

pengujian gerakan belok

Belok kanan 90º

1 Berhasil

2 Berhasil

3 Berhasil

4 Berhasil

5 Berhasil

6 Berhasil

7 Berhasil

8 Berhasil

9 Berhasil

10 Berhasil

Belok kiri 90º

1 Berhasil

2 Berhasil

3 Berhasil

4 Berhasil

5 Berhasil

6 Berhasil

7 Berhasil

8 Berhasil

9 Berhasil

10 Berhasil

Uji coba dilakukan sebanyak 10 kali percobaan dengan media lantai kayu, dari percobaan 10 kali bisa dinyatakan berhasil dengan toleransi ±5% dengan toleransi yang cukup besar. Hal ini bisa diabaikan karena setelah melakukan pergerakan belok ada kondisi meluruskan untuk posisi robot terhadap dinding, dengan cara membandingkan jarak sensor ultrasonik.

4.6 Pengujian Algoritma Keseluruhan

(60)
[image:60.612.156.488.85.258.2]

a b

Gambar 4.7. a. Mode Posisi Start Standart b. Mode Posisi Start Arbitrary

[image:60.612.132.513.443.618.2]

Berikut tabel keberhasilan dari hasil percobaan dengan keberhasilan rata-rata 96% dari 1000 kali percobaan yang dilakukan, dan rata-rata-rata-rata waktu yang 24 detik untuk mode posisi start standart. Pada tabel dibawah keberhasilan dianalisa dari setiap pengujian dari jumlah pengujian yaitu 100 kali percobaan, dengan mengambil sebuah kesimpulan dari hasil pengujian tersebut.

Tabel 4.6. Data Keberhasilan Untuk Mode Posisi Start Standart

Nomor

Pengujian Tanggal

Jumlah Pengujian

Jumlah Berhasil

Jumlah Gagal

Waktu Rata-rata(detik)

Persentase Keberhasilan

1 1/12/2010 100 83 17 26,5 83%

2 13/12/2010 100 84 16 26,6 84%

3 15/01/2011 100 91 9 25,8 91%

4 30/01/2011 100 94 6 23 94%

5 7/1/2011 100 96 4 23,3 96%

6 27/02/2011 100 99 1 22 99%

7 8/3/2011 100 100 0 24,6 100%

8 14/3/2011 100 98 2 22,6 98%

9 20/3/2011 100 100 0 23,5 100%

10 25/3/2011 100 100 0 23,6 100%

Presentase Rata-rata Keberhasilan 96%

(61)
[image:61.612.149.490.78.259.2]

Gambar 4.8. Grafik Keberhasilan Untuk Mode Posisi Start Standart

Banyaknya jumlah kegagalan disebabkan oleh beberapa faktor, berikut tabel 4.8 menunjukan penyebab dari kegagalan.

Tabel 4.7. Penyebab Kegagalan Pada Mode Posisi Start Standart Penyebab Kegagalan Jumlah Kegagalan Persentase Kegagalan

Gripper 27 49%

Program 16 29%

Sensor 8 15%

Baterai 4 7%

Dari banyaknya kegagalan yang terjadi, gripper yang memiliki jumlah kegagalan terbesar, karena kesulitan dalam perancangan mekanisme gripper tersebut untuk bisa membawa piring dari dalam kulkas dan menjaga makanan agar tidak tumpah. Tidak hanya pada gripper ada beberapa faktor lain yang menyebabkan kegagalan yaitu, pada program, sensor, dan baterai.

Pengujian juga dilakukan pada algoritma keseluruhan pada mode posisi start arbitrary, pada mode ini dilakukan percobaan sebanyak 1000 kali percobaan dengan rata-rata presentrasenya masih dibawah 95%. Berikut tabel data keberhasilan untuk mode arbitrary ditunjukan pada tabel 4.9.

0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100%

1 2 3 4 5 6 7 8 9 10

Pe

rse

ntase

(62)
[image:62.612.149.491.356.534.2]

Tabel 4.8. Tabel Keberhasilan Untuk Mode Posisi Start Arbitrary

Nomor

Percobaan Tanggal

Jumlah Pengujian Jumlah Berhasil Jumlah Gagal Waktu Rata-rata (detik) Persentase keberhasilan

1 14/01/2011 100 81 19 27,5 81%

2 20/01/2011 100 87 13 27,1 87%

3 27/01/2011 100 86 14 26,9 86%

4 11/2/2011 100 91 9 25,6 91%

5 18/2/2011 100 95 5 28 95%

6 23/02/2011 100 99 1 28,8 99%

7 26/02/2011 100 100 0 27,8 100%

8 4/3/2011 100 100 0 28 100%

9 10/3/2011 100 99 1 26 99%

10 20/3/2011 100 100 0 27,6 100%

Presentase rata-rata keberhasilan 94%

Seperti halnya pada pengujian untuk mode posisi start standart, setiap keberhasilan dilakukan analisa dari 100 kali percobaan.

Gambar 4.9. Grafik Keberhasilan Untuk Mode Posisi Start Arbitrary

Keberhasilan meningkat terus dari setiap 100 kali percobaan, dengan mencapai keberhasilan diatas 95% seperti yang ditunjukan pada gambar 4.8 grafik keberhasilan untuk mode posisi start arbitrary. Banyaknya kegagalan terjadi disebabkan beberapa hal, yaitu seperti pada tabel 4.10 dibawah.

0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100%

0 1 2 3 4 5 6 7 8 9 10

(63)

Tabel 4.9. Penyebab Kegagalan Pada Mode Posisi Start Standart

Penyebab Kegagalan Jumlah kegagalan Persentase Kegagalan

Program 25 41%

Gripper 20 33%

Sensor 13 21%

Baterai 3 5%

Kondisi gagal sering terjadi pada mekanisme gripper yang sewaktu-waktu sering berubah, sehingga mempengaruhi pada program untuk menentukan kondisi ideal antara mekanisme gerak gripper dengan nilai yang dituliskan pada program. Pembacaan dari sensor juga menjadi faktor penyebab kegagalan dari setiap percobaan yang dilakukan, seperti pembacaan sensor error yang menyebabkan dari percobaan menjadi gagal.

(64)

BAB V

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Diperoleh beberapa kesimpulan dari pengujian dan anailisa yang telah dilakukan, yaitu sebagai berikut:

1. Mikrokontroler BS2p40 yang digunakan dalam perancangan Robot Waiter ini sudah bekerja dengan baik, tetapi mikrokontroler ini memiliki kapasitas memori yang sedikit dan jumlah port I/O yang terbatas.

2. Dalam perancangan sebuah robot yang harus diperhatikan adalah sumber tegangan, terutama mempengaruhi dalam mengatur kecepatan motor apabila menggunakan PWM.

3. Dari tabel 4.7 didapatkan hasil pengujian robot dengan 1000 kali percobaan, tingkat keberhasilannya mencapai 96% untuk mode start standart, dan untuk mode start arbitrary tingkat keberhasilannya mencapai 94% dari 1000 kali percobaan yang ditunjukan pada tabel 4.9.

4. Kondisi kegagalan robot dari percobaan yang telah dilakukan banyak disebabkan oleh kondisi gripper, yang setiap waktu bisa berubah mekanisme geraknya dan juga disebabkan oleh beberapa faktor lainnya yang ditunjukan pada tabel 4.8 dan tabel 4.10.

5.2 Saran

Berikut beberapa saran untuk melengkapi kekurangan dalam perancangan Robot Waiter:

1. Mekanisme gripper diharapkan harus bisa mengambil piring yang berbeda-beda ukurannya, sehingga tidak tergantung pada ukuran yang telah ditentukan. Gerak gripper baru bisa bergerak kekiri dan kekanan dan masih perlu ada gerak maju dan mundur, untuk memudahkan dalam menjangkau piring yang berada didalam kulkas.

(65)

PERANCANGAN PURWARUPA

ROBOT PEMBANTU ORANG CACAT

TUGAS AKHIR

Disusun untuk memenuhi syarat kelulusan pada

Program Studi Sistem Komputer Strata Satu di Jurusan Teknik Komputer

Oleh

Ridyan Ardiyan

10206044

Pembimbing

Dr. Yusrila Yeka Kerlooza

S Indriani L, M.T.

JURUSAN TEKNIK KOMPUTER

FAKULTAS TEKNIK DAN ILMU KOMPUTER

UNIVERSITAS KOMPUTER INDONESIA

BANDUNG

(66)

DAFTAR PUSTAKA

[1] Agfianto Eko Putra. (2005). Pengendalian Mobile Robot (Mobot) dengan MOBOTSIM v1.0. Yogyakarta : Gava Media.

[2] Kontes robot di amerika trinity college, diakses pada tanggal 1 November 2010 dari http://www.trincoll.edu

[3] Parallax, Inc (2006). PING)))™ Ultrasonic Distance Sensor. Diakses pada tanggal 25 Januari 2011 dari,

http://www.parallax.com/dl/docs/prod/acc/28015-PING-v1.3.pdf.

[4] Peraturan pertandingan di akses pada tanggal 2 November 2010 dari, http://www.trincoll.edu/events/robot/Rules/Rules%202011/Rules_2011- Final-3-Letter.pdf

[5] Mikrokontroller di akses pada tanggal 12 maret 2011 dari : http://mikrokontroler.tripod.com/6805/bab1.htm

[6] Schematic bs2p40 di akses pada tanggal 2 maret 2011 Dari : http://www.parallax.com/Portals/0/Downloads/docs/prod/schem/bs2p40Sc hemRevB.pdf

[7] Datasheet Basic stamp di akses pada tanggal 2 maret 2011 dari: http://www.parallax.com/Portals/0/Downloads/docs/books/BS2pCom mands.pdf

[8] Datasheet GP2D15 di akses pada tanggal 22 maret 2011 dari:http://www.sharpsma.com/webfm_send/1204

[9] Cara kerja sensor infra merah GP2D12 di akses pada tanggal 22 maret 2011 dari: http://fahmizaleeits.wordpress.com/2010/10/30/sensor-jarak-sharp-gp2d12/

[10] Datasheet PING))) di akses pada tanggal 22 maret 2011 dari: http://www.innovativeelectronics.com/innovative_electronics/download_fi les/artikel/AN73.pdf

(67)

DATA RIWAYAT HIDUP

Ridyan Ardiyan

. Lahir di Bandung tanggal 22 September

1988. Menyelesaikan pendidikan sekolah dasar di SD Negeri

ME Subuadinata Cangkring (2000), menyelesaikan pendidikan

sekolah lanjut tingkat pertama di SLTP Negeri 2 Baleendah

(2003), menyelesaikan pendidikan sekolah lanjut tingkat akhir

di SMK Prakarya Internasional Bandung (2006), dan

melanjutkan studi S1 pada Jurusan Teknik Komputer di Universitas Komputer

Indonesia (2006 - 2011). Mengerjakan Tugas Akhir dengan judul Perancangan

Purwarupa Robot Pembantu Orang Cacat dan ikut serta dalam kontes pertandingan

robot internasional 2011 TRINITY COLLEGE FIRE-FIGHTING HOME ROBOT

CONTEST, dengan prestasi yang diraih, Juara I pada pertandingan robot tingkat

internasional di TRINITY COLLEGE FIRE-FIGHTING HOME ROBOT CONTEST

kategori ROBOWAITER. Aktif sebagai asisten Lab. Divisi Robotika UNIKOM.

Gemar akan dunia elektronika, dan informasi teknologi (IT)

e-mail

:

ridyan.ardiyan@live.com

bedatibatur@gmail.com

(68)

KATA PENGANTAR

Syukur Alhamdulillah penulis panjatkan kehadirat Allah Subhanahu Wata’ala, yang telah memberikan kesehatan dan petunjuk sehingga dapat menyelesaikan Tugas Akhir ini. Tugas Akhir ini disusun untuk memenuhi salah satu syarat kelulusan, pada Program Studi Sistem Komputer Strata Satu di Jurusan Teknik Komputer.

Tugas Akhir ini masih jauh dari kesempurnaan karena keterbatasan pengetahuan dan pengalaman yang penulis miliki, oleh karena itu kritik dan saran sangat penulis harapkan. Tugas Akhir ini bukan sebuah kerja individual dan akan sulit terlaksana tanpa bantuan banyak pihak, namun dengan segala kerendaha hati pada kesempatan ini penulis mengucapkan terimakasih kepada:

1. Kedua orang tua dari penulis sekaligus orang pertama yang menjadi pembimbing bagi Penulis.

2. Bapak Dr. Yusrila Y Kerlooza selaku Pembimbing I yang telah mengajari penulis dalam segala hal.

3. Ibu S Indriani L, M.T, selaku Pembimbing II yang telah banyak memberikan arahan, saran dan bimbingan kepada penulis.

4. Bapak Taufiq Nuzwir Nizar, S.Kom dan Bapak Rodi Hartono, S.T. selaku pembimbing teknis yang telah memberikan arahan dan bimbingan pada penulis. 5. Teman-teman Divisi Robotika Unikom dan teman-teman kelas 06tk-1, penulis

ucapkan terimakasih atas bantuannya dan dukungannya bagi penulis.

Akhirnya, Penulis berharap semoga Tugas Akhir ini menjadi manfaat bagi dunia sains dan teknologi di Indonesia, khususnya disiplin keilmuan yang penulis dalami.

Gambar

Gambar 3.6. Modul Sensor Pintu Kulkas
Gambar 3.9. a. Mekanisme Gripper Bergerak Turun b. Mekanisme Gripper
Gambar 3.12. Bagian Dalam Kulkas
Gambar 3.14. Posisi Robot Akan Menyimpan Piring
+7

Referensi

Dokumen terkait

Hasil penelitian menunjukkan bahwa: (1) Kompensasi berada pada kategori cukup efektif, disiplin kerja berada pada kategori cukup tinggi, dan kinerja guru berada

Ringkasan hasil uji independent sample t-test terhadap motivasi belajar, hasil belajar kognitif dan retensi belajar siswa pada kelas eksperimen dan kelas

Setelah mengamati gambar tersebut, apa yang ada di benak kalian berkaitan dengan HARMONISASI HAK DAN KEWAJIBAN ASASI MANUSIA DALAM

In developing egosan engineering model products with a straight kick on the pencak silat martial arts further, the researcher has several suggestions, namely:

Persegi panjang atau disesuaikan dengan situasi tempat dan setiap kepala pematang harus diberi papan yang menjorok ke dalam ± 15-20 cm sebagai penghalang

Tujuan dari penelitian ini adalah untuk mengetahui macam-macam morfologi polen dan spora dari sedimen di Telaga Warna sehingga dapat diketahui tumbuhan

Hasil penelitian ini sesuai dengan yang dilakukan oleh Sayono pada tahun 2008 yang menemukan bahwa ovitrap yang dipasang di luar rumah menghasilkan jumlah telur

Pengaruh Ekstrak Daun Sirsak ( Annona muricata L) Terhadap Profil Darah dan Kelulushidupan Ikan Lele Sangkuriang ( Clarias gariepinus Var. Sangkuriang ) yang Diinfeksi