• Tidak ada hasil yang ditemukan

Perancangan Dan Implementasi Prototype Robot Pengantar Makanan Di restoran Cepat Saji

N/A
N/A
Protected

Academic year: 2017

Membagikan "Perancangan Dan Implementasi Prototype Robot Pengantar Makanan Di restoran Cepat Saji"

Copied!
81
0
0

Teks penuh

(1)

1 1.1 Latar Belakang Masalah

Dewasa ini kebutuhan manusia setiap harinya semakin meningkat. Salah satu contohnya dari dapat dilihat dari segi pangan yang hingga saat ini selalu menjadi kebutuhan utama. Para pengusaha yang berkecimpung di bidang restoran cepat saji ini dapat melihat hal tersebut sebagai prospek dalam berbisnis, sesuai dengan adanya permintaan dan penawaran. Jumlah populasi manusia yang terus meningkat membuat kebutuhan akan pangan juga terus bertambah. Produk makanan cepat saji (fastfood) ini dipilih oleh kalangan masyarakat kota karena kemudahannya dan sangat praktis dalam hal mengkonsumsi makanannya, sehingga dengan senangnya mengkonsumsi makanan cepat saji ini telah menjadi sebuah gaya hidup di beberapa kalangan masyarakat di indonesia. Untuk melakukan suatu usaha seperti di restoran cepat saji ini haruslah memiliki kualitas pelayanan yang baik, agar para pelanggan restoran dapat terpuaskan oleh kinerja dari seluruh manajemen restoran cepat saji dan para pelaku usahanya.

(2)

disebabkan oleh sumber daya manusia yang kurang untuk melayani konsumen yang begitu banyaknya. Berdasarkan latar belakang permasalahan di atas, maka peneliti mengangkat judul “Perancangan dan Implementasi Prototype Robot Pengantar Makanan di Restoran Cepat Saji” sebagai tema dari Tugas Akhir ini.

Prototype Robot ini dilengkapi dengan sensor garis (photodiode), sakelar tekan (push button switch), keypad, Liquid Crystal Display (LCD), dan driver motor DC. Robot akan berjalan pada lintasan dengan mengandalkan sensor garis (photodiode) yang dipasang pada bagian bawah dari robot, sehingga dapat mendeteksi keberadaan garis lintasan. Selain itu, robot ini juga terdapat 2-push button switch dan keypad matriks 3x4 yang mana memiliki fungsi sebagai masukan (input) sebelum nantinya diproses oleh mikrokontroler. Keypad matriks 3x4 memiliki kegunaan antara lain untuk memilih nomor meja pelanggan yang nantinya akan diantarkan makanannya. Sebenarnya penggunaan tombol keypad ini telah disesuaikan dengan konsep dasar restoran yang memiliki 9 meja pelanggan. Sedangkan 2-push button switch ini terdiri dari 1 tombol untuk memulai (start) dan 1 tombol untuk kembali (back).

1.2 Identifikasi Masalah

Berdasarkan permasalahan di atas dapai diidentifikasi beberapa permasalahan yang ada diantaranya ialah :

(3)

2. Belum tersedianya sistem robot yang dapat membantu dalam hal mengantarkan makanan sehingga para pelanggan/konsumen tidak menunggu teralu lama.

1.3 Rumusan Masalah

Berdasarkan latar belakang yang telah dikemukakan maka dapat dirumuskan suatu masalah sebagai berikut :

1. Bagaimana merancang sebuah alat canggih yang bekerja secara otomatis sehingga mampu memberikan pelayanan dalam hal mengantar makanan kepada pelanggan di restoran?

2. Bagaimana membuat sebuah sistem otomatis berupa robot yang dapat membantu mengantarkan makanan kepada para pelanggan ?

1.4 Tujuan Penelitian

Beberapa tujuan yang akan dicapai dari pembuatan tugas akhir ini diantaranya adalah sebagai berikut :

1. Membuat sebuah prototype robot yang dapat diimplementasikan sebagai alat otomatis yang digunakan untuk mengantar makanan dari dapur ke meja pelanggan.

(4)

1.5 Batasan Masalah

Untuk memperjelas ruang lingkup permasalahan dan mencegah kemungkinan meluasnya masalah ataupun penyimpangan dari fokus pembahasan, maka diperlukan pembatasan masalah sebagai berikut :

1. Menggunakan 9 meja pelanggan yang terdiri dari (3 baris dan 3 kolom). 2. Restoran yang digunakan untuk implementasi robot pengantar makanan ini berupa prototype dengan ukuran (2.5 meter x 2 meter) yang dirancang sendiri menyerupai restoran cepat saji.

3. Penempatan lintasan robot dan jalan orang atau pelanggan restoran ini dibuat berbeda dan posisinya terpisah.

1.6 Metoda Penelitian

Tahapan-tahapan penelitian yang akan ditempuh dalam menyelesaikan tugas akhir ini diantaranya adalah :

1. Tinjauan pustaka, yaitu mempelajari penelitian-penelitian terdahulu maupun alat-alat yang sudah ada di pasaran yang berkaitan mengenai sistem informasi yang sudah ada.

2. Melakukan studi literatur dengan mengumpulkan dan mempelajari bahan pustaka yang berhubungan dengan permasalahan baik dari buku maupun dari internet.

(5)

4. Pembuatan rancangan desain restoran serta komponen rangkaian yang akan digunakan.

5. Pembuatan layout PCB menggunakan komputer. 6. Pencetakan layout PCB ke papan PCB sebenarnya.

7. Perakitan seluruh komponen yang digunakan ke papan PCB dengan cara menyolder komponen tersebut.

8. Pembuatan program menggunakan software Basic Compiler AVR. 9. Pengisian program ke dalam chip mikrokontroler menggunakan

downloader.

10. Melakukan pengetesan hardware dan software yang telah disatukan tadi, apakah bekerja sesuai dengan yang diinginkan atau tidak.

11. Jika masih terjadi masalah, maka akan dilakukan pengecekan ulang baik dari sisi hardware maupun software-nya.

1.7 Sistematika Penulisan Laporan

(6)

BAB I PENDAHULUAN

Pada bab ini berisi pengantar dari keseluruhan skripsi yang menguraikan tentang latar belakang permasalahan, rumusan masalah, tujuan penelitian,batasan masalah, tahapan penelitian dan sistematika penulisan laporan tugas kahir.

BAB II LANDASAN TEORI

Pada bab ini berisi teori tentang permasalahan yang dibahas dalam skripsi ini mulai dari menjelaskan tentang landasan/dasar teori yang menunjang pada perancangan dan implementasi prototype robot pengantar makanan di restoran cepat saji.

BAB III PERANCANGAN ALAT

Pada bab ini berisi tentang proses perancangan perangkat keras (hardware) maupun perangkat lunak (software) dari sistem yang akan dibuat dan juga membahas mengenai latar belakang pemilihan komponen

BAB IV PENGUJIAN DAN ANALISIS

Pada bab ini berisi tentang hasil pengujian sistem, baik dari segi perangkat keras (hardware) maupun pada perangkat lunak (software) serta membahas hasil analisa yang telah dibuat.

BAB V PENUTUP

(7)

7

2.1 Sensor Photodiode

Photodiode adalah salah satu komponen semikonduktor yang peka terhadap cahaya (photodetector). Photodiode merupakan sebuah dioda dengan sambungan p-n junction yang dipengaruhi cahaya dan kerjanya. Cahaya yang dapat dideteksi oleh photodiode ini mulai dari cahaya infra merah, cahaya tampak, cahaya ultra sampai dengan sinar-X.

Gambar 2.1 Bentuk Fisik Sensor Photodiode

Photodiode akan mengalirkan arus yang sesuai dengan intensitas cahaya yang diterima. Arus ini umumnya teratur terhadap power density. Perbandingan antara arus keluaran dengan power density disebut sebagai current responsitivity. Arus yang dimaksud adalah arus yang mengalir ketika photodioda ini disinari langsung oleh cahaya dari Light Emitting Diode (LED). LED merupakan salah satu komponen elektronika yang dapat mengeluarkan cahaya bila diberikan bias maju. Di dalam perancangan, jenis LED yang digunakan dapat memancarkan cahaya merah terang sehingga sangat cocok digunakan pada rangkaian sensor photodiode.

(8)

Gambar 2.2 Cara Kerja dari Sensor Photodiode

Photodiode digunakan sebagai penangkap gelombang cahaya infra merah yang dipancarkan oleh sebuah LED. Besarnya tegangan atau arus listrik yang

dihasilkan oleh photodiode tergantung pada besar kecilnya radiasi cahaya yang dipancarkan oleh LED tersebut.

2.2 Keypad

Keypad adalah rangkaian tombol yang berfungsi untuk memberi sinyal pada suatu rangkaian dengan menghubungkan pin-pin tertentu dari keypad. Keypad terdiri dari beberapa macam berdasarkan jumlah tombol dan fungsinya. Dalam perancangan ini digunakan keypad matriks 3x4 yang bila dilihat dari bentuk fisiknya memiliki 12 sakelar dengan penghubung rangkaian sebanyak 7 pin.

(9)

Ketujuh pin penghubung tersebut terbagi menjadi dua kelompok yaitu 4 pin sebagai input dan 3 pin sebagai output. Maksud dari ketujuh pin input/output (I/O)

tersebut adalah untuk digunakan sebagai kombinasi penghubung pada rangkaian yang akan disambungkan dengan keypad ini. Dimana dalam setiap penekanan satu tombol pada keypad, maka akan terjadi kombinasi antara dua buah pin dalam pembacaan sinyalnya. Sebenarnya terdapat beberapa teknik untuk pembacaan data dari matriks keypad ini, salah satunya adalah dengan teknik scanning. Dimana baris

atau kolom selalu dipindai (di-scan) untuk mendeteksi tombol yang di tekan. Berikut ini adalah rangkaian matriks dari keypad ukuran 3x4.

Gambar 2.4 Rangkaian Susunan Matriks (Keypad 3x4)

2.3 Sakelar Push Button Switch

(10)

Gambar 2.5 Bentuk Fisik Sakelar Tekan (Push Button Switch)

2.4 Mikrokontroler

Mikrokontroler adalah prosesor mikro yang yang terdiri CPU ditambah dengan RAM, ROM, I/O ports, dan timer yang jumlahnya tetap dan dikemas dalam satu chip. Mikrokontroler merupakan salah satu bagian dasar dari suatu sistem komputer. Meskipun mempunyai bentuk yang jauh lebih kecil dari suatu komputer pribadi dan komputer mainframe, mikrokontroler dibangun dari elemen-elemen dasar yang sama. Mikrokontroler AVR ATmega 16 merupakan mikrokontroler 8-bit dengan konsumsi daya rendah yang mempunyai arsitektur Reduced Instruction Set Computer (RISC). Berbeda dengan mikrokontroler keluarga 8051 yang mempunyai arsitektur Complex Instruction Set Computer (CISC).

Gambar 2.6 ATmega 16

ATmega 16 menjalankan sebuah instruksi tunggal dalam satu siklus/clock

(11)

dipisahkan dengan memori data. Memori program diakses dengan single-level pipelining, dimana ketika sebuah instruksi dijalankan, instruksi lain berikutnya akan di prefetch dari memori program.

(Sumber : Datasheet ATMEL AVR ATmega 16)

Gambar 2.7 Konfigurasi Pin Mikrokontroler AVR ATmega 16

2.4.1 Konfigurasi Pin ATmega 16

Mikrokontroler AVR ATmega memiliki 40 pin dengan 32 pin diantaranya digunakan sebagai port paralel. Satu port paralel terdiri dari 8 pin, sehingga jumlah

port pada mikrokontroler adalah 4 port, yaitu port A, port B, port C dan port D. Sebagai contoh adalah port A memiliki pin antara port A.0 sampai port A.7, demikian selanjutnya untuk port B, port C, port D. Berikut ini adalah penjelasan

(12)

Tabel 2.1 Deskripsi Pin Mikrokontroler AVR ATmega 16 VCC Tegangan suplai antara 2,7 – 5,5 Volt

GND Ground

RESET

Input reset level rendah, pada pin ini selama lebih dari panjang pulsa minimum akan menghasilkan reset walaupun clock sedang berjalan. Reset pada pin 9 merupakan reset dari AVR. Jika pada pin ini diberi masukan low selama minimal 2 machine cycle maka sistem akan di-reset

XTAL 1 Input penguat oscillator inverting dan input pada rangkaian operasi clock internal

XTAL 2 Output dari penguat oscillator inverting AVCC Pin tegangan suplai untuk port A dan ADC AREF Pin referensi tegangan analog untuk ADC AGND Pin untuk analog ground

Penjelasan konfigurasi pin pada mikrokontroler AVR ATmega 16 yang mempunyai fungsi khusus sebagai berikut :

a. Fungsi pin 33 sampai 40 (port A), dijelaskan pada Tabel 2.2

Tabel 2.2 Fungsi Khusus port A

Port Fungsi Khusus

(13)

b. Fungsi pin 1 sampai 8 (port B), dijelaskan pada Tabel 2.3

Tabel 2.3 Fungsi Khusus port B

Port Fungsi Khusus

PB.0 T0 (Timer/Counter 0 External Counter Input), XCK (USART External Clock Input/Output) PB.1 T1 (Timer/Counter 1 External Counter Input), PB.2 AIN0 (Analog Comparator Positive Input),

INT2 (External Interrupt 2 Input)

PB.3

AIN1 (Analog Comparator Negative Input),

OC0 (Timer/Counter 0 Output Compare Match Output)

PB.4 SS (SPI Slave Select Input)

PB.5 MOSI (SPI Bus Master Output/Slave Input) PB.6 MISO (SPI Bus Master Input/Slave Output) PB.7 SCK (SPI Bus Serial Clock)

c. Fungsi pin 22 sampai 29 (port C), dijelaskan pada Tabel 2.4

Tabel 2.4 Fungsi Khusus port C

Port Fungsi Khusus

PC.0 SCL (Two-wire Serial Bus Clock Line)

PC.1 SDA (Two-wire Serial Bus Data Input/Output Line) PC.2 TCK (JTAG Test Clock)

(14)

d. Fungsi pin 14 sampai 21 (port D), dijelaskan pada Tabel 2.5

Tabel 2.5 Fungsi Khusus port D

Port Fungsi Khusus

PD.0 RXD (USART Input Pin) PD.1 TXD (USART Output Pin) PD.2 INT0 (External Interrupt 0 Input) PD.3 INT1 (External Interrupt 1 Input)

PD.4 OC1B (Timer/Counter 1 Output Compare B Match Output)

PD.5 OC1A (Timer/Counter 1 Output Compare A Match Output)

PD.6 ICP1 (Timer/Counter 1 Input Capture Pin)

PD.7 OC2 (Timer/Counter 2 Output Compare Match Output)

2.4.2 Arsitektur Mikrokontroler AVR ATmega 16

Mikrokontroler AVR ATmega 16 memiliki beberapa fitur utama atau spesifikasi yang menjadikannya sebuah solusi yang efektif untuk berbagai keperluan diantaranya adalah :

1. Memiliki 131 instruksi yang sebagian besar dieksekusi dalam satu siklus/cycle.

2. 32 register umum yang terhubung dengan Arithmetic Logic Unit (ALU). 3. Memiliki kemampuan untuk mencapai throughput sekitar 16 Million

Instruction Per Second (MIPS) pada 16 MHz.

4. Memiliki memori dengan kapasitas 16 Kbytes In-System Self-Programmable Flash dengan kemampuan (10.000 siklus hapus/tulis). 5. Memiliki memori dengan kapasitas 512 bytes In-System Programmable

(15)

6. Memiliki dua Timer/Counter 8-bit untuk Separate Prescaler dan Compare Modes.

7. Memiliki satu Timer/Counter 16-bit untuk Separate Prescaler, Compare Mode dan Capture Mode.

8. Real Time Counter (RTC) dengan osilator terpisah.

9. Memiliki Pulse Width Modulation (PWM) sebanyak 4-Channel.

10. Memiliki Analog to Digital Converter (ADC) internal dengan fidelitas 10-bit sebanyak 8-Channel.

11. Full Duplex Universal Synchronous Asynchronous Receiver Transmitter (USART) untuk komunikasi serial terprogram.

12. Watchdog Timer yang dapat diprogram dengan osilator internal.

13. Memiliki 1 Kbytes internal Static Random Access Memory (SRAM) yang digunakan untuk menyimpan data sementara dari program flash.

14. 32 jalur I/O (Input-Output) yang terpisah dan dikelompokkan dalam empat port yaitu : port A, port B, port C dan port D.

15. Memiliki External/Internal Interrupt Sources yang digunakan untuk melakukan proses interupsi secara internal maupun eksternal.

16. Memiliki enam pilihan mode Sleep yaitu : Idle, ADC Noise Reduction, Power-save, Power Down, Standby dan Extended Standby. Keenam mode Sleep ini dapat menghemat penggunaan daya listrik.

17. Memiliki Analog Comparator. 18. Frekuensi Clock maksimum 16 MHz.

(16)

2.5 Liquid Crystal Display (LCD)

Liquid Crystal Display (LCD) merupakan komponen yang dapat menampilkan suatu nilai hasil sensor, menampilkan teks atau menampilkan menu pada aplikasi mikrokontroler. Jenis LCD M1632 yang merupakan modul LCD dengan tampilan 16 baris x 2 kolom (16x2) dengan konsumsi daya rendah. Modul

tersebut dilengkapi dengan mikrokontroler yang di desain khusus untuk mengendalikan LCD. Mikrokontroler yang digunakan untuk mengendalikan LCD

adalah mikrokontroler HD44780 yang memiliki memori Character Generator Read Only Memory (CGROM), Character Generator Random Access Memory (CGRAM) dan Display Data Random Access Memory (DDRAM). Berikut ini merupakan bagian-bagian dari LCD :

a. Display Data Random Access Memory (DDRAM)

DDRAM merupakan memori tempat karakter yang ditampilkan berada. Contoh, untuk karakter ‘L’ atau 4CH yang ditulis pada alamat 00, karakter tersebut akan tampil pada baris pertama dan kolom pertama pada LCD.

Apabila karakter tersebut ditulis pada alamat 40, maka karakter tersebut akan tampil pada baris kedua kolom pertama dari LCD.

b. Character Generator Random Access Memory (CGRAM)

CGRAM merupakan memori untuk membuat bentuk karakter yang dapat diubah-ubah sesuai keinginan. Karakter yang disimpan di CGRAM akan

(17)

c. Character Generator Read Only Memory (CGROM)

CGROM merupakan memori yang menyimpan karakter-karakter yang

sudah permanen di dalam LCD, sehingga tidak dapat diubah-ubah lagi bentuknya oleh pengguna. Namun karena ROM bersifat permanen, pola

karakter tersebut tidak akan hilang saat tidak ada sumber tegangan suplai.

Gambar 2.8 Bentuk Fisik LCD (Character 16x2)

Bila dilihat dari bentuk fisiknya, LCD karakter 16x2 ini memiliki 16 pin yang memiliki fungsi masing-masing. Berikut ini adalah konfigurasi pin dari LCD karakter 16x2 yaitu :

Tabel 2.6 Fungsi dan Konfigurasi Pin LCD 16x2

Pin Simbol Level Deskripsi

1 VSS 0V Ground

2 VDD +5V Supply Voltage for Logic

3 VO (Variable) Operating Voltage for LCD 4 RS H/L H : Data, L : Instruction Code

5 R/W H/L H : Read, L : Write

6 E H, H->L Chip Enable Signal

7 DB0 H/L Data bit 0

8 DB1 H/L Data bit 1

9 DB2 H/L Data bit 2

10 DB3 H/L Data bit 3

11 DB4 H/L Data bit 4

12 DB5 H/L Data bit 5

13 DB6 H/L Data bit 6

14 DB7 H/L Data bit 7

15 A 4,2 – 4,6 V LED +

(18)

2.6 Motor DC

Motor DC merupakan perangkat elektromagnetis yang mengubah energi

listrik menjadi energi mekanik. Energi mekanik ini digunakan dalam berbagai peralatan, misalnya memutar impeller pompa, fan atau blower, menggerakkan kompresor, mengangkat bahan dan lain sebagainya. Motor DC ini memerlukan

suplai tegangan yang searah pada kumparan medan untuk diubah menjadi energi mekanik.

Gambar 2.9 Bentuk Fisik Motor DC

Prinsip dasar kerja dari motor DC adalah jenis motor ini menggunakan tegangan searah sebagai sumber tenaganya, dengan memberikan beda tegangan

pada kedua terminal tersebut, motor akan berputar pada satu arah dan bila polaritas dari tegangan tersebut dibalik maka arah putaran motor akan terbalik pula. Polaritas

dari tegangan yang diberikan pada kedua terminal ini menentukan kecepatan motor.

(19)

Gambar 2.10 Dasar Pengaturan Arah Putaran Motor DC

Bila kita lihat pada gambar (a) diatas, bahwa perputaran motor DC dikatakan searah jarum jam jika diberikan tegangan sumber dengan polaritas yang searah

maka arah putaran motor akan mengarah ke kanan. Sedangkan pada gambar (b) diatas, bahwa perputaran motor DC dikatakan berlawanan arah jarum jam jika diberikan tegangan sumber dengan polaritas terbalik, maka arah putaran motor akan

mengarah ke kiri. Kecepatan pada motor DC dapat diatur dengan berbagai cara yaitu dengan mengatur fluks medan dan tegangan sumber.

2.7 Driver Motor L293D

IC L293D diproduksi oleh SGS-Thomson Microelectronics merupakan sebuah chip yang di desain khusus sebagai driver motor DC dan dapat dikendalikan dengan rangkaian TTL maupun mikrokontroler. Motor DC yang dikontrol dengan

(20)

Gambar 2.11 Bentuk Fisik IC L293D

(Sumber : Datasheet STMicroelectronics L293D)

Gambar 2.12 Konfigurasi Pin IC Driver Motor L293D

Dalam satu unit chip IC L293D terdiri dari 4 buah driver motor DC yang berdiri sendiri dengan kemampuan mengalirkan arus 1 Ampere pada tiap driver-nya. Sehingga dapat digunakan untuk membuat driver Half-bridge (H-bridge) untuk 2 buah motor DC. Selain konfigurasi pin, IC L293D juga memiliki beberapa

fungsi dari setiap pin-nya yaitu :

a. Pin Enable (EN1 dan EN2), berfungsi untuk mengijinkan driver menerima perintah untuk menggerakkan motor DC.

b. Pin Input (1A, 2A, 3A, 4A) adalah pin input kendali pada motor DC. c. Pin Output (1Y, 2Y, 3Y, 4Y) adalah jalur output masing-masing driver yang

dihubungkan ke motor DC.

(21)

driver kontrol dan Vcc2 adalah jalur input sumber tegangan untuk motor DC yang dikendalikan.

e. Pin GND (Ground) adalah jalur yang harus dihubungkan ke ground. Pada IC L293D memiliki 4 buah pin ground yang berdekatan dan dapat dihubungkan ke sebuah pendingin kecil (heatsink).

2.8 Pemrograman Basic Compiler-AVR

Perangkat lunak (software) yang digunakan dalam tugas akhir ini adalah program Basic Compiler (Bascom-AVR). Pemrograman menggunakan Bascom-AVR adalah salah satu dari sekian banyak bahasa Basic untuk pemrograman mikrokontroler, misalnya bahasa Assembly, bahasa C dan lain sebagainya. Bahasa

pemrograman Basic sudah dikenal di seluruh dunia sebagai bahasa pemrograman yang handal, cepat, mudah dan tergolong ke dalam bahasa pemrograman tingkat

tinggi. Setiap bahasa pemrograman mempunyai standar penulisan program. Konstruksi dari program bahasa Basic harus mengikuti aturan sebagai berikut.

$regfile = “header” ‘inisialisasi

‘deklarasi variabel ‘deklarasi konstanta

Do

‘pernyataan-peryataan Loop

(22)

Berikut ini adalah bagian-bagian program yang terdapat pada Bascom-AVR, diantaranya ialah :

1. Tipe Data

Tipe data merupakan bagian program yang paling penting karena tipe data sangat mempengaruhi setiap instruksi dalam program yang akan

dilaksanakan oleh komputer. Pemilihan tipe data yang tepat akan membuat operasi data menjadi lebih efektif dan efisien.

2. Konstanta

Konstanta merupakan suatu nilai yang tidak dapat diubah selama proses program sedang berlangsung. Konstanta nilainya selalu tetap. Konstanta

didefinisikan terlebih dahulu di awal program. Konstanta dapat bernilai integer, pecahan, karakter dan string.

3. Variabel

Variabel adalah suatu pengenal (identifier) yang digunakan untuk mewakili suatu nilai tertentu di dalam proses program. Berbeda dengan konstanta

yang nilainya selalu tetap, nilai dari suatu variabel bisa diubah-ubah sesuai kebutuhan. Nama dari suatu variabel dapat ditentukan sendiri oleh

pemrogram dengan aturan sebagai berikut :

a. Terdiri dari gabungan huruf dan angka dengan karakter pertama harus berupa huruf.

b. Tidak boleh mengandung spasi.

c. Tidak boleh mengandung simbol-simbol khusus, kecuali garis

(23)

d. Maksimum 32 karakter. 4. Deklarasi

Deklarasi diperlukan jika akan menggunakan pengenal (identifier) dalam program. Identifier dapat berupa variabel, konstanta dan fungsi.

a. Deklarasi Variabel

Bentuk umum pendeklarasian suatu variabel adalah : Dim Nama_variabel As tipe_data;

Contoh : Dim x As Integer ‘deklarasi x bertipe integer b. Deklarasi Konstanta

Dalam bahasa Basic, konstanta dideklarasikan langsung,

Contoh : S = “Hello world” ‘Assign String c. Deklarasi Fungsi

Fungsi merupakan bagian yang terpisah dari program dan dapat dipanggil dimanapun di dalam program. Fungsi dalam bahasa Basic ini terdapat beberapa fungsi yang disediakan sebagai fungsi pustaka

seperti Print, Input dan Data, serta untuk menggunakannya tidak perlu dideklarasikan. Fungsi yang perlu dideklarasikan terlebih dahulu adalah fungsi yang dibuat oleh programmer, bentuk umum

deklarasi sebuah fungsi adalah :

TEST[(BYREF/BYVAL] var ss type)] As type

(24)

5. Operator

Operator adalah operasi yang dikenakan pada program. Terdapat beberapa

operator yang terdapat dalam program Bascom-AVR, diantaranya operator penugasan (Assignment Operator), operator aritmatika, operator hubungan (perbandingan), operator logika dan operator bitwise.

a. Operator Penugasan

Di dalam bahasa Basic terdapat satu simbol operator penugasan

yaitu berupa “=”.

b. Operator Aritmatika

Terdapat beberapa simbol operator aritmatika yang dapat digunakan

di dalam program diantaranya : .* : untuk perkalian / : untuk pembagian

% : untuk sisa pembagian (modulus) + : untuk pertambahan

- : untuk pengurangan

c. Operator Hubungan (Perbandingan)

Operator hubungan digunakan untuk membandingkan hubungan antara dua buah operand/ sebuah nilai atau variabel. Dibawah ini terdapat beberapa operator hubungan (perbandingan) diantaranya :

= : Equality X = Y

(25)

d. Operator Logika

Operator logika digunakan untuk membandingkan suatu logika hasil

dari operator-operator hubungan. Di dalam program terdapat empat macam operator logika yang digunakan yaitu :

NOT (Logical complement) AND (Conjunction)

OR (Disjunction) XOR (Exclusive or)

e. Operator Bitwise

Operator bitwise digunakan untuk memanipulasi bit dari data yang ada di memori. Di dalam bahasa Basic operator bitwise yang digunakan yaitu :

Shift A, Left, 2 : Pergeseran bit ke kiri Shift A, Right, 2 : Pergeseran bit ke kanan Rotate A, Left, 2 : Putar bit ke kiri

Rotate A, Right, 2 : Putar bit ke kanan 6. Komentar Program

Komentar program hanya diperlukan untuk memudahkan pembacaan dan

pemahaman suatu program (untuk keperluan dokumentasi program). Dengan kata lain, komentar program hanya merupakan sebuah keterangan atau penjelasan program. Komentar program tidak akan ikut diproses dalam

program (akan diabaikan). 7. Penyeleksian Kondisi

(26)

Terdapat beberapa struktur kondisi, diantaranya struktur kondisi “If ...” struktur kondisi “ If ... Else” dan struktur kondisi “Select Case”.

a. Struktur Kondisi “If ...”

Struktur If sering digunakan untuk menyeleksi suatu kondisi tunggal. Bila proses yang diseleksi terpenuhi, maka pernyataan

yang ada di dalam blok If akan dikerjakan. Bentuk umum dari struktur kondisi If adalah :

if(kondisi) then pernyataan;

Contoh : If data1 = 1 Then Call Lestoright(1) b. Struktur Kondisi “If ... Else”

Di dalam struktur kondisi If ... Else minimal harus terdapat dua pernyataan. Jika suatu kondisi yang diperiksa bernilai benar maka

pernyataan pertama yang dilaksanakan dan jika salah maka pernyataan kedua yang dilaksanakan. Bentuk umum dari struktur kondisi If ... Else ini adalah sebagai berikut.

if(kondisi then pernyataan; Pernyataan-1

else

Pernyataan-2

Contoh : If A > 10 then

Print “A > 10”

Else

Print “A not greater than 10”

End If

c. Struktur Kondisi “Select Case”

Struktur kondisi select case pada dasarnya sama dengan struktur kondisi If ... Else, hanya saja kondisinya banyak. Struktur kondisi

(27)

dengan kemungkinan yang terjadi cukup banyak. Pernyataan yang

dilaksanakan terus hingga ditemukan pernyataan ‘break’. Jika

tidak ada kondisi yang sesuai maka yang dikerjakan adalah program dibawahnya. Bentuk umum dari struktur kondisi “select

case” ini adalah :

Select Case(kondisi) {

case 1 : pernyataan-1; break;

case 2 : pernyataan-2; break;

...

case n : pernyataan-n; break;

default : pernyataan-m; }

Contoh :

Select Case Ultra

Case &B01000001 : Call Maju(6)

Case &B01001000 : Call Turnright110( ) Case Else : Call Maju(2)

End Select; 8. Perulangan

Dalam bahasa Basic tersedia suatu fasilitas yang digunakan untuk melakukan proses yang berulang-ulang. Struktur perulangan dalam bahasa

(28)

28 3.1 Perancangan Sistem

Pada perancangan dan implementasi prototype robot pengantar makanan di restoran cepat saji, secara umum terdapat tiga bagian utama yaitu bagian masukan (input), proses (process) dan keluaran (output). Tiga bagian inilah yang menjadi dasar dari kinerja prototype robot pengantar makanan di restoran cepat saji.

Mikrokontroler ATmega16

LCD 16x2

Driver Motor DC

Motor Kiri

Motor Kanan

INPUT PROCESS OUTPUT

5-Sensor Garis

Push Button 1 (Tombol Hijau)

Push Button 2 (Tombol Merah)

Keypad 3x4 Photodiode

LED

Gambar 3.1 Blok Diagram Prototype Robot Pengantar Makanan di Restoran Cepat Saji

(29)

array biasanya digunakan pada robot pengikut garis (line follower). Prinsip kerja dari prototype robot yang saya rancang ini sama seperti robot line follower pada umumnya, namun pada implementasinya dibuat sebagai prototype robot pengantar makanan di restoran cepat saji.

Selain sensor photodiode, terdapat 2-push button switch dan keypad matriks 3x4 (3 kolom dan 4 baris) ini yang difungsikan sebagai perangkat input. Keypad matriks ini memiliki beberapa tombol yang cukup untuk digunakan pada prototype robot yang dirancang. Beberapa tombol yang digunakan sebagai masukan (input) diantaranya ialah tombol (1, 2, 3, 4, 5, 6, 7, 8 dan 9 ). Setiap data masukan dari sensor photodiode, push button switch dan keypad ini akan diproses oleh mikrokontroler untuk menentukan proses eksekusi terhadap perangkat output.

(30)

Berikut adalah uraian singkat mengenai fungsi masing-masing bagian utama blok diagram Prototype Robot Pengantar Makanan di Restoran Cepat Saji.

1. Unit Masukan (Input)

Pada bagian masukan (input) terdapat dua perangkat input yang berfungsi untuk memberikan masukan bagi mikrokontroler sesuai dengan fungsinya masing-masing, diantaranya :

a. Sensor Photodiode

Masukan (input) dari sistem ini berasal dari sensor garis yang terdiri dari 5 buah LED merah superbright dan photodiode. Nilai tegangan dari

photodiode ini akan berubah-ubah sesuai dengan intensitas cahaya dari LED yang dipantulkan oleh permukaan garis. Tegangan yang dihasilkan

photodiode ini akan diteruskan ke pin ADC pada mikrokontroler. Di dalam mikrokontroler, nilai tegangan photodiode akan dikonversi ke digital dan hasilnya akan ditampilkan pada LCD 16x2. Di samping itu mikrokontroler juga bertugas untuk mengolah data dari setiap masukan yang selanjutnya dilakukan kalkulasi data sehingga dapat menghasilkan sinyal kontrol berupa PWM untuk men-drive motor pada perangkat keluaran. Keluaran (output) dari driver akan menjalankan motor kanan dan kiri sesuai dengan nilai PWM dari mikrokontroler.

b. Keypad

Dalam perancangan prototype robot pada tugas akhir ini, digunakan keypad

(31)

c. Sakelar Tekan (Push Button Switch)

Dalam perancangan prototype robot, digunakan 2 (dua) buah push button switch yang difungsikan sebagai tombol memulai (start) untuk menjalankan robot dan tombol kembali (back) untuk menggerakkan dan menjalankan robot kembali ke posisi awal yaitu di dapur (home).

2. Unit Pengolah Data (Process)

Mikrokontroler AVR ATmega 16 difungsikan sebagai perangkat kendali utama dari robot yang bertugas untuk mengolah setiap data masukan yang diberikan dari sensor photodiode, push button switch dan keypad. Data masukan tersebut akan diolah oleh mikrokontroler sehingga didapatkan hasil kalkulasi data dari mikrokontroler ini dapat digunakan untuk mengeksekusi perangkat keluaran (output).

3. Unit Keluaran (Output)

Pada bagian keluaran (output) adalah bagian yang merupakan hasil eksekusi perangkat dan bertindak sebagai hasil dari kinerja perangkat sesuai dengan keinginan perancang. Terdapat dua jenis perangkat keluaran yang digunakan dalam perancangan prototype robot pada tugas akhir ini, diantaranya :

a. Liquid Crystal Display (LCD)

Pada perancangan prototype robot ini, LCD ini difungsikan untuk menampilkan data kode meja pelanggan yang di-input-kan melalui keypad

dan status pengantaran makanan kepada pelanggan.

(32)

b. Driver Motor DC

Driver motor difungsikan untuk mengaktifkan/menonaktifkan motor DC dari mikrokontroler. Driver motor ini memang khusus digunakan untuk mengontrol motor DC. Jadi, dengan adanya driver motor ini maka mikrokontroler mampu untuk mengatur aktifitas pergerakan motor DC.

3.2 Pemilihan Komponen

Pemilihan jenis komponen dalam perancangan dan pembuatan suatu perangkat elektronik mutlak dilakukan karena akan berdampak langsung pada tingkat efisiensi dan efektifitas perangkat yang akan dibuat. Beberapa hal yang perlu diperhatikan diantaranya kualitas bahan, tingkat kecepatan dan keakuratan saat komponen bekerja, bentuknya serta ukuran dimensi dari komponen tersebut, sampai pengeluaran biaya yang digunakan. Latar belakang perbandingan dan pemilihan jenis komponen yang akan diuraikan pada bab ini dilakukan dengan cara membandingkan beberapa komponen-komponen dari jenis yang sama namun berbeda dari sisi spesifikasinya dan harga yang pada dasarnya mempengaruhi kinerja dari komponen terhadap sistem yang akan dirancang.

3.2.1 Pemilihan Jenis Mikrokontroler

(33)

Tabel 3.1 Uraian Perbandingan Jenis Mikrokontroler

Spesifikasi Jenis Mikrokontroler

ATmega 8535 ATmega 16 ATmega 32

Flash 8 Kb 16 Kb 32 Kb

RAM 512 bytes SRAM 1 Kb SRAM 2 Kb SRAM

I/O 32 32 32

Pin 40 40 40

Harga Rp. 50.000,00 Rp. 45.000,00 Rp. 50.000,00

Berdasarkan uraian Tabel 3.1 diatas, mikrokontroler AVR ATmega 16 lebih cocok digunakan dalam perancangan prototype robot pengantar makanan yang sedang dibuat, karena memiliki memori memori flash yang tidak terlalu kecil dan tidak pula terlalu besar kapasitasnya, sehingga saya rasa cukup untuk menyimpan program dibandingkan dengan jenis mikrokontroler yang ada pada Tabel 3.1, serta memiliki RAM yang cukup juga, ini dikarenakan bahwa sistem yang dibuat tidak terlalu kompleks dan pengaksesan data sementara pada mikrokontroler akan lebih cepat.

3.2.2 Pemilihan Jenis Keypad

(34)

Tabel 3.2 Uraian Perbandingan Jenis Keypad

Spesifikasi Jenis Keypad

Keypad 3x4 Keypad 4x4

Kolom 3 4

Baris 4 4

Harga Rp. 50.000,00 Rp. 57.500,00

3.2.3 Pemilihan Jenis LCD Character

Penggunaan Liquid Crystal Display (LCD) Character 16x2 pada perancangan dan implementasi prototype robot pengantar makanan di restoran cepat saji ini adalah sebagai penampil karakter data kode meja pelanggan yang

di-input-kan melalui keypad dan status pengantaran makanan kepada pelanggan. Jumlah karakter yang diperlukan kurang dari 16 karakter dan penampil karakter dilakukan menggunakan 2 baris, sehingga jenis LCD yang digunakan adalah 16x2.

Berikut uraian perbandingan jenis Liquid Crystal Display (LCD) Character 16x2 yang dapat dilihat pada Tabel 3.3.

Tabel 3.3 Uraian Perbandingan Jenis Liquid Crystal Display (LCD)

Spesifikasi Jenis LCD

LCD 16x1 LCD 16x2 LCD 16x4

Karakter 16 32 64

Baris 1 2 4

Harga Rp. 50.000,00 Rp. 55.000,00 Rp. 110.000,00

3.2.4 Pemilihan Jenis Driver Motor DC

(35)

driver motor ini dapat diaplikasikan sebagai pengontrol 2 buah motor DC. Disamping itu juga telah terintegrasi dengan pin enable dan direction atau arah polaritas output yang menuju ke motor sehingga memudahkan dalam pengendaliannya. Berikut uraian mengenai perbandingan jenis driver motor DC yang dapat dilihat pada Tabel 3.4.

Tabel 3.4 Uraian Perbandingan Jenis Driver Motor DC

Spesifikasi Jenis Driver Motor DC

L293D L298N

Enable 2 2

Pin 16 15

Output Current 1,2 A 2A

Harga Rp. 20.000,00 Rp. 40.000,00

3.3 Perancangan Perangkat Keras (Hardware)

Pada perancangan perangkat keras (hardware) sistem pada prototype robot ini dilakukan perancangan terhadap beberapa sistem kontrol elektronik yang meliputi pembuatan rangkaian-rangkaian elektronik yang nantinya akan saling terhubung dan terintegrasi membentuk suatu sistem kendali dengan tujuan hasil rancangan sistem dapat bekerja secara otomatis.

3.3.1 Perancangan Mikrokontroler AVR ATmega 16

(36)

terhadap data dari hasil pembacaan sensor dan input data dari keypad sehingga nantinya mikrokontroler dapat melakukan eksekusi pada perangkat keluaran (output).

Gambar 3.2 Skematik Sistem Minimum Mikrokontroler AVR ATmega 16

3.3.2 Perancangan Rangkaian Sensor Photodiode

(37)

PA.0_uC

Gambar 3.3 Skematik Sensor Photodiode

3.3.3 Perancangan Rangkaian Keypad

Dalam perancangan prototype robot ini, digunakan keypad 3x4 yang digunakan sebagai komponen yang memfasilitasi petugas restoran yang berada di dapur untuk menjalankan robot dan juga mengantarkan makanan pesanan ke meja pelanggan yang dituju dengan cara memasukkan kode meja pelanggan melalui tombol-tombol pada keypad. Pembacaan input dari keypad 3x4 ini dilakukan dengan cara menggunakan proses scanning, dimana setiap penekanan satu tombol merupakan kombinasi antara jalur baris dan kolom.

1 2 3

Gambar 3.4 Skematik Keypad 3x4

3.3.4 Perancangan Rangkaian 2-Push Button Switch

(38)

menjalankan robot dan tombol kembali (back) untuk menjalankan robot agar kembali lagi ke posisi awalnya (home).

+5V

Gambar 3.5 Skematik 2-Push Button Switch

3.3.5 Perancangan Rangkaian Liquid Crystal Display

Dalam perancangan prototype robot pada tugas akhir ini, digunakan Liquid Crystal Display (LCD) dengan jumlah karakter 16x2. Mode pemrograman pada LCD menggunakan 4-bit data yang diakses melalui pin data (D4, D5, D6, D7) pada LCD.

(39)

3.3.6 Perancangan Rangkaian Driver Motor DC

Driver motor DC yang digunakan pada perancangan prototype robot ini, memakai driver IC tipe L293D yang berfungsi untuk mengontrol kedua motor DC pada gearbox sebagai penggerak roda pada robot yang dirancang. Jadi, dengan adanya driver motor DC ini, maka mikrokontroler dapat mengontrol aktifitas pergerakan roda dan menentukan arah pada robot.

M

Gambar 3.7 Skematik Driver Motor DC L293D

3.3.7 Perancangan Rangkaian Catu Daya

(40)

diperlukan sebuah rangkaian penurun tegangan DC, dimana pada bagian ini terdapat IC regulator tipe L7805CT yang difungsikan untuk menurunkan tegangan menjadi 5Vdc. Tegangan ini diperlukan untuk mensuplai bagian mikrokontroler, sensor photodiode, penampil LCD dan driver kontrol motor DC. Sedangkan tegangan 11,1Vdc atau sama dengan tegangan sumber dari baterai ini diperlukan untuk mensuplai kedua motor DC, dikarenakan motor DC ini memerlukan tegangan dan arus yang cukup besar.

+

Gambar 3.8 Skematik Catu Daya (Power Supply)

3.4 Perancangan Mekanik Sistem

(41)

push button switch, driver motor DC dan catu daya dan diletakkan pada bagian bawah pada robot. Pada bagian atas robot digunakan untuk menyimpan nampan yang berisi makanan simulasi.

(42)

3.5 Perancangan Prototype Restoran

Selain merancang sebuah prototype robot pengantar makanan juga diperlukan sebuah media atau tempat yang digunakan untuk implementasinya, maka dari itu dirancang pula sebuah prototype restoran cepat saji yang sengaja di desain sendiri yang nantinya berguna untuk mensimulasikan sebuah restoran cepat saji, dimana di dalamnya telah dilengkapi dengan 9 meja pelanggan dan garis lintasan yang telah disesuaikan dengan fungsi kerja dari prototype robot pengantar makanan tersebut.

Pembuatan prototype restoran cepat saji ini diawali dengan merancang sebuah garis lintasan (track) yang digunakan sebagai media pergerakan robot agar dapat mengantarkan makanan dari dapur menuju meja pelanggan. Dilihat dari segi ukuran, prototype restoran ini memiliki ukuran (2,5 meter x 2 meter). Berikut ini adalah rancangan lintasan robot pengantar makanan di restoran cepat saji yang dapat dilihat pada Gambar 3.10.

(43)

3.6 Perancangan Perangkat Lunak (Software)

Perancangan perangkat lunak ini berguna untuk menentukan setiap alur proses eksekusi dari perangkat prototype robot pengantar makanan otomatis. Setiap data masukan (input) yang di terima dari sensor akan diatur oleh perangkat lunak yang dalam hal ini adalah source code program yang telah dibuat sebelumnya oleh programmer yang kemudian akan diproses oleh mikrokontroler untuk menentukan eksekusi pada bagian keluaran (output).

Mulai

Pemilihan Meja yang Dituju Berdasarkan Penekanan

Tombol Keypad

Penekanan Tombol Mulai (Start)

Robot Menuju Meja Sesuai Penekanan Tombol Keypad

Menunggu Penekanan Tombol Kembali (Back)

Selesai Inisialisasi LCD Inisialisasi Sensor

Inisialisasi ADC

Kembali ke Posisi Awal (Home)

(44)

Mulai

Baca Keypad

Tombol 1

Jalankan Motor ke Depan

Baca ADC

Deteksi Tikungan Kanan ke 1?

Motor Belok Kanan

Baca ADC

Deteksi Kanan ke 1 ?

Motor Belok Kanan Y

N

N

Y

Matikan Motor Y

N

A

Tombol Start (Hijau) ditekan ? N

Y Inisialisasi LCD

(45)

Tombol 2

Jalankan Motor ke Depan

Baca ADC

Jalankan Motor ke Depan

(46)

Tombol 4

Jalankan Motor ke Depan

Baca ADC

Jalankan Motor ke Depan

(47)

Tombol 6

Jalankan Motor ke Depan

Baca ADC

Jalankan Motor ke Depan

(48)

Tombol 8

Jalankan Motor ke Depan

Baca ADC

Jalankan Motor ke Depan

(49)

Cek Tombol Kembali (Merah)

Motor Balik Kiri Y

N

Simpangan ke 1 Motor Belok Kiri E

Selesai

Simpangan ke 2 Motor Belok Kiri

(50)

Baca ADC

Sensor Tengah Deteksi Hitam

Jalankan Dua Motor ke Depan

N Matikan Kedua Motor

Inisialisasi Sensor

(51)

Gambar 3.11 sampai 3.12 merupakan diagram alir utama dari sistem prototype robot pengantar makanan di restoran cepat saji. Pada awal diagram alir diinisialisasikan ADC, selain itu diinisialisasikan juga LCD. Berikut adalah penjelasan dari diagram alir tersebut.

Mikrokontroler akan mendeteksi pembacaan data dari setiap sensor photodiode, ketika sensor photodiode mendeteksi keberadaan suatu garis lintasan didepannya maka robot dalam keadaan siap (ready) sambil menunggu masukan selanjutnya dari penekanan tombol pada keypad untuk memilih kode nomor meja pelanggan. Selanjutnya setelah adanya penekanan salah satu tombol pada keypad maka tekan tombol mulai (start) untuk menjalankan robot agar dapat mengantarkan makanan menuju meja pelanggan dengan tepat sasaran.

Jika makanan telah siap dihidangkan dan ingin diantarkan menuju meja pelanggan yang dituju maka orang yang bertugas di dapur akan meletakkan makanan diatas robot dan menekan salah satu tombol dari 1 – 9 tombol yang ada. Apabila salah satu tombol pada keypad ditekan, misalnya tombol (3) lalu tekan tombol mulai (start), maka setelahnya robot mulai bergerak dan berjalan pada garis lintasan dengan dipandu oleh sensor photodiode. Mikrokontroler akan selalu mengecek data masukan hasil dari pendeteksian sensor photodiode terhadap garis lintasan lurus, persimpangan dan tikungan (belokan), karena setiap lintasan yang berbeda memiliki nilai pembacaan yang berbeda pula, sehingga hal ini dijadikan sebagai parameter mikrokontroler untuk mengontrol pergerakan robot.

(52)
(53)

53

Dalam bab ini akan dijelaskan mengenai proses pengujian dari sistem yang telah dirancang sebelumnya. Dimana dalam pengujian yang akan dilakukan ini nantinya berupa pengukuran terhadap komponen dari setiap perangkat mulai dari bagian masukan (input), proses (process) dan keluaran (output) yang terdapat di dalam sistem yang dirancang. Setelah melakukan proses pengujian komponen, berikutnya dilanjutkan dengan menganalisa setiap hasil pengecekan serta pengukuran. Hal tersebut dilakukan dengan tujuan untuk melihat dan memastikan bahwa sistem yang dirancang dapat sesuai dengan apa yang diharapkan.

4.1 Pengujian dan Analisis Perangkat Masukan (Input)

Pengujian dan analisis bagian masukan (input) ini terdiri dari pengujian pendeteksian sensor photodiode, keypad 3x4 dan 2-push button switch. Pengujian ini dilakukan untuk mendapatkan parameter dari setiap komponen masukan tersebut. Nilai parameter ini dapat menjadi acuan untuk melihat apakah komponen masukan tersebut dapat bekerja sesuai dengan fungsinya atau tidak.

4.1.1 Pengujian Sensor Photodiode

(54)

Gambar 4.1 Pengujian Sensor Photodiode

Tabel 4.1 Pengujian Deteksi Sensor Photodiode terhadap Garis

Jenis Sensor Kondisi Logika Hasil

Photodiode

Berdasarkan dari hasil pengujian terhadap sensor photodiode, dapat dianalisa bahwa ketika sensor photodiode ini mendeteksi garis berwarna hitam, maka akan berlogika 1 (high) dan memiliki nilai tegangan rata-rata sekitar 2 Volt saat mendeteksi garis. Nilai parameter inilah yang nantinya akan diolah oleh mikrokontroler melalui masukan port ADC.

4.1.2 Keypad 3x4

Dilihat dari prinsip kerjanya, keypad ukuran 3x4 ini difungsikan sebagai masukan (input) ke bagian pemroses data yaitu mikrokontroler. Mikrokontroler akan membaca data dari keypad melalui proses scanning pada keypad. Proses scanning ini maksudnya adalah bahwa mikrokontroler akan men-scan dan

(55)

mendeteksi ada atau tidaknya penekanan tombol pada keypad yang akan dijadikan sebagai masukan (input).

Gambar 4.2 Pengujian Penekanan Tombol pada Keypad Matriks 3x4

Setiap penekanan salah satu tombol pada keypad akan terjadi kombinasi antara pin input (baris) dan pin output (kolom) pada susunan matriks keypad. Berikut ini adalah pengujian penekanan tombol pada keypad berdasarkan kombinasi baris dan kolom dari tombol-tombol yang ada pada keypad.

Tabel 4.2 Pengujian Penekanan Tombol Keypad

Jenis Pengujian Kombinasi (Baris-Kolom) Kondisi

Penekanan Tombol 1 B1 dan K1 Terhubung

Penekanan Tombol 2 B1 dan K2 Terhubung

Penekanan Tombol 3 B1 dan K3 Terhubung

Penekanan Tombol 4 B2 dan K1 Terhubung

Penekanan Tombol 5 B2 dan K2 Terhubung

Penekanan Tombol 6 B2 dan K3 Terhubung

Penekanan Tombol 7 B3 dan K1 Terhubung

Penekanan Tombol 8 B3 dan K2 Terhubung

Penekanan Tombol 9 B3 dan K3 Terhubung

Penekanan Tombol * B4 dan K1 Terhubung

Penekanan Tombol 0 B4 dan K2 Terhubung

(56)

Berdasarkan dari hasil pengujian penekanan tombol-tombol pada keypad bahwa keseluruhan tombol pada keypad dapat berfungsi dengan baik, sehingga dapat digunakan sebagai tombol masukan nomor meja pelanggan.

4.1.3 Sakelar Tekan (Push Button Switch)

Secara umum, sakelar tekan atau push button switch ini merupakan jenis sakelar yang dapat menghubungkan aliran listrik hanya sesaat saja saat ditekan dan setelah dilepas maka akan kembali ke posisi off. Pada perancangan prototype robot pengantar makanan ini terdapat 2 buah push button switch yang berfungsi sebagai tombol (start) untuk memulai pergerakan robot untuk mengantarkan makanan menuju meja pelanggan. Sedangkan tombol (back) untuk memerintahkan robot untuk kembali posisi awalnya (home).

+5V

START PUSH BUTTON 1

R13

4K7

R14

4K7

PUSH BUTTON 2

BACK

PA.7_uC

PA.6_uC

Gambar 4.3 Pengujian Tombol Push Button Switch

Tabel 4.3 Pengujian Penekanan Tombol Push Button Switch

Jenis Pengujian Posisi Tombol Logika Kondisi

Tombol Hijau Ditekan 1 High

Tidak Ditekan 0 Low

Tombol Merah Ditekan 1 High

Tidak Ditekan 0 Low

(57)

Pada gambar di atas dapat dilihat bahwa rangkaian kedua push button switch ini menggunakan resistor pull-up dengan nilai 4K7 Ohm yang salah satu bagian pin nya terhubung langsung ke tegangan sumber +5 Vdc sedangkan bagian pin yang satunya ke pin sakelar (switch). Kedua tombol push button switch ini bila dalam kondisi aktif atau adanya tombol yang ditekan, maka pin keluaran dari sakelar akan

berlogika ‘1’ atau berada dalam kondisi (high). Apabila tidakada tombol yang

ditekan, maka akan berlogika ‘0’ atau berada dalam kondisi (low).

4.2 Pengujian dan Analisis Perangkat Proses (Process)

Pengujian rangkaian sistem minimum mikrokontroler AVR ATmega 16 ini ditujukan untuk menentukan parameter nilai tegangan Input-Output (I/O) dari mikrokontroler. Berdasarkan datasheet, mikrokontroler ATmega 16 dapat beroperasi pada rentang tegangan dari 2,7 – 5,5 Volt.

(58)

1

Gambar 4.4 Pengujian Kinerja Mikrokontroler ATmega 16

4.3 Pengujian dan Analisis Perangkat Keluaran (Output)

Pengujian dan analisis yang dilakukan selanjutnya adalah melakukan pengukuran serta pengujian terhadap perangkat keluaran (output). Bagian keluaran yang akan diuji terdiri pengujian Liquid Crystal Display (LCD), driver motor L293D dan juga motor DC penggerak roda. Pengujian serta analisis yang dilakukan ini bertujuan untuk mendapatkan parameter-parameter yang diperlukan yang diperlukan dari setiap komponen keluaran tersebut. Disamping itu juga untuk mengetahui kinerja komponen-komponen dari perangkat keluaran ini agar dapat bekerja sesuai dengan fungsinya.

4.3.1 Liquid Crystal Display (LCD) Character 16x2

Pengujian serta analisis mengenai Liquid Crystal Display (LCD) character 16x2 ini dilakukan agar LCD ini dapat menampilkan karakter huruf dan angka yang sesuai dengan keinginan. Jika ingin menampilkan beberapa karakter huruf dan

Port untuk LCD 16x2

Port untuk Sensor Photodiode

Ground (-)

(59)

angka pada layar LCD, maka mikrokontroler harus diprogram dengan program yang khusus digunakan untuk mengontrol tampilan karakter pada LCD.

Gambar 4.5 Tampilan Karakter Huruf pada LCD 16x2

Untuk dapat digunakan sebagai penampil karakter huruf dan angka, terlebih dahulu harus dikonfigurasikan beberapa pin pada LCD menuju ke mikrokontroler. Di dalam perancangan, rangkaian LCD ini memiliki beberapa pin kontrol yang dapat digunakan antara lain pin RS, E, 4-bit data (D4, D5, D6, D7) agar lebih jelas dapat dilihat pada Gambar 4.7.

V

Gambar 4.6 Pengujian pin-pin Pengontrol Data pada LCD 16x2

4.3.2 Driver Motor L293D

(60)

langsung, karena motor DC memerlukan sumber tegangan yang cukup besar untuk dapat bergerak, sehingga penggunaan driver motor ini sangat disarankan agar dapat mengontrol seluruh aktifitas pergerakan motor DC. Driver motor DC yang digunakan dalam perancangan sebelumnya adalah menggunakan IC driver L293D. Dimana driver motor ini memiliki kemampuan mengalirkan arus 1 ampere pada setiap driver-nya. Sehingga dapat digunakan untuk membuat rangkaian driver Half Bridge (H-Bridge) untuk mengontrol 2 buah motor DC.

Pengujian serta analisis ini dilakukan untuk mengetahui apakah komponen driver motor DC ini bekerja dengan baik atau tidak. Pengujian diawali dengan mengonfigurasikan pin input driver motor dengan mikrokontroler yang dapat dilihat pada Gambar 4.7.

M

Gambar 4.7 Konfigurasi Pin Driver Motor dengan Mikrokontroler

(61)

motor DC yang dikendalikan berkisar antara 12 Vdc tergantung dari jenis motor DC yang digunakan.

4.3.3 Motor DC

Pengujian dan analisis selanjutnya ditujukan pada motor DC sebagai penggerak roda pada prototype robot pengantar makanan. Untuk mengetahui arah pergerakan motor DC yang benar maka harus dilakukan pengujian arah putaran motor DC, agar nantinya saat digunakan dapat berjalan dengan baik. Pengujian motor DC ini dilakukan dengan cara menghubungkan sumber tegangan dengan kutub (+) dan kutub (-) pada motor DC.

Terdapat dua pengujian pergerakan motor DC yaitu, pengujian pertama dengan mengubungkan sumber tegangan dengan motor DC dengan benar seperti sumber tegangan positif (+) dihubungkan ke bagian kutub (+) motor. Sedangkan sumber tegangan negatif (-) ke bagian kutub (-) agar motor DC dapat bergerak normal (searah jarum jam).

(62)

Gambar 4.8 Pengujian Arah Pergerakan pada Motor DC

4.4 Pengujian dan Analisis Catu Daya (Power Supply)

Pengujian rangkaian catu daya ini bertujuan untuk mengetahui kinerja dari catu daya dalam mensuplai perangkat prototype robot pengantar makanan. Pemilihan catu daya yang benar sangat disarankan karena nantinya akan mempengaruhi kinerja dari prototype robot ketika akan dijalankan. Sumber tegangan untuk mensuplai rangkaian robot ini berasal dari sebuah baterai rechargeable (accumulator) dengan spesifikasi tegangan sebesar 12 Volt dan arus sebesar 1,2Ah.

Gambar 4.9 Pembagian Tegangan Keluaran pada Catu Daya Kutub (+) Sumber tegangan

(63)

Tabel 4.4 Pengujian Tegangan Keluaran Pada Catu Daya

Jenis Regulator Sumber Tegangan Baterai

L7805 (1) Input (Vdc) 12,03 Volt

Output (Vdc) 5,00 Volt

- Input (Vdc) 12,03 Volt

Output (Vdc) 12,03 Volt

L7805 (2) Input (Vdc) 12,03 Volt

Output (Vdc) 5,00 Volt

4.5 Pengujian Perangkat Lunak (Software)

Pengujian perangkat lunak (Software) ini bertujuan untuk mengetahui apakah source code program yang telah dibuat tersebut masih terdapat kesalahan (error) atau tidak. Kemudian pengujian ini juga untuk menguji perangkat lunak tersebut dapat sesuai dengan kinerja dari perangkat keras (hardware) yang diharapkan atau tidak. Oleh sebab itu, maka akan dijelaskan selengkapnya mengenai langkah-langkah pengujian perangkat lunak sebagai berikut :

1. Pertama, menjalankan program editor Basic Compiler (Bascom-AVR) maka akan muncul tampilan program Bascom-AVR.

(64)

Bascom-AVR merupakan sebuah program yang dikhususkan untuk melakukan pemrograman bahasa basic. Dimana Bascom-AVR ini dapat digunakan untuk memprogram mikrokontroler AVR. Pada program Bascom ini kita dapat membuat dan melakukan pengeditan program dengan kode basic dan juga dapat melakukan kompilasi terhadap program yang dibuat. Apabila pada saat melakukan kompilasi terjadi kesalahan penulisan syntax program, maka kita akan diberitahukan oleh program tersebut bahwa terjadi kesalahan atau ada baris program yang error. Biasanya pesan error ini dapat dilihat pada bagian bawah program.

(65)

Gambar 4.11 Program AVROSP II

Gambar 4.12 Pengaturan Konfigurasi Port COM dan Baudrate

Pada Gambar 4.11 di atas adalah tampilan program dari AVROSP II, dimana dengan program ini para programmer dapat dengan mudah melakukan proses

Pengaturan Baudrate Pengaturan

(66)

pengisian program ke dalam mikrokontroler. Tetapi sebelum melakukan proses pengisian program, ada hal yang perlu diperhatikan pada Gambar 4.12 di atas bahwa sebelumnya kita harus mengatur Port COM dan baudrate yang digunakan sehingga bila sudah benar maka proses pengisian program dapat berjalan dengan lancar.

4.6 Pengujian Pergerakan Robot pada Media Garis Lintasan

Dari hasil pengujian sebelumnya yang telah dilakukan, pengujian tahap ini adalah pengujian terakhir yang dilakukan untuk mengecek pergerakan dari robot, apakah berjalan sesuai dengan yang diharapkan atau tidak. Uji coba ini dilakukan untuk menentukan tingkat keberhasilan dari robot yang dalam aplikasinya sebagai robot pengantar makanan yang ditujukan ke meja pelanggan. Berikut ini adalah media garis lintasan yang akan di uji coba dengan menggunakan prototype robot pengantar makanan.

Gambar 4.13 Uji Coba Robot Pengantar Makanan pada Lintasan Persimpangan 1 & 2

Posisi Awal

(67)

Tabel 4.5 Pengujian Pergerakan Robot Pengantar Makanan

Masukan

Perintah Uji Coba Waktu Antar

Waktu

Kembali Keterangan

Robot Antar ke Meja 1

Ke-1 42,20 detik 46,04 detik Uji Coba Berhasil Ke-2 42,19 detik 46,01 detik Uji Coba Berhasil Ke-3 41, 98 detik 45,97 detik Uji Coba Berhasil

Robot Antar ke Meja 2

Ke-1 50,06 detik 54,03 detik Uji Coba Berhasil Ke-2 49,99 detik 54,01 detik Uji Coba Berhasil Ke-3 49,95 detik 51,98 detik Uji Coba Berhasil

Robot Antar ke Meja 3

Ke-1 57,68 detik 1,03 menit Uji Coba Berhasil Ke-2 57,55 detik 59,99 detik Uji Coba Berhasil Ke-3 57,53 detik 59,97 detik Uji Coba Berhasil

Robot Antar ke Meja 4

Ke-1 50,04 detik 59,26 detik Uji Coba Berhasil Ke-2 50,01 detik 59,24 detik Uji Coba Berhasil Ke-3 49,98 detik 59,20 detik Uji Coba Berhasil

Robot Antar ke Meja 5

Ke-1 58,10 detik 1,02 menit Uji Coba Berhasil Ke-2 58,07 detik 1,02 menit Uji Coba Berhasil Ke-3 58,05 detik 1,00 menit Uji Coba Berhasil

Robot Antar ke Meja 6

Ke-1 1,08 menit 1,50 menit Uji Coba Berhasil Ke-2 1,06 menit 1,48 menit Uji Coba Berhasil Ke-3 1,04 menit 1,45 menit Uji Coba Berhasil

Robot Antar ke Meja 7

Ke-1 1,02 menit 1,50 menit Uji Coba Berhasil Ke-2 1,01 menit 1,45 menit Uji Coba Berhasil Ke-3 1,00 menit 1,40 menit Uji Coba Berhasil

Robot Antar ke Meja 8

Ke-1 1,08 menit 1,79 menit Uji Coba Berhasil Ke-2 1,07 menit 1,78 menit Uji Coba Berhasil Ke-3 1,07 menit 1,76 menit Uji Coba Berhasil

Robot Antar ke Meja 9

Ke-1 1,14 menit 1,97 menit Uji Coba Berhasil Ke-2 1,13 menit 1,96 menit Uji Coba Berhasil Ke-3 1,13 menit 1,96 menit Uji Coba Berhasil

(68)

68

Dalam bab ini akan diuraikan mengenai kesimpulan dari hasil pengujian alat yang dibuat dan saran-saran, dimana di dalamnya telah mencakup seluruh hal tentang hasil perancangan dan pengujian yang telah dilakukan.

5.1 Kesimpulan

Berdasarkan dari hasil perancangan dan pengujian alat yang telah dilakukan, maka penulis berkesimpulan sebagai berikut :

1. Telah berhasil dibuat sebuah prototype robot pengantar makanan di restoran cepat saji dan juga sebuah prototype restoran dimana kedua alat ini saling berhubungan untuk mensimulasikan pengantaran makanan di sebuah restoran cepat saji yang dilakukan oleh prototype robot.

2. Prototype robot pengantar makanan ini telah mampu berjalan dari dapur menuju ke meja pelanggan dan kembali lagi ke posisi awal berada sesuai dengan yang diharapkan.

3. Penempatan catu daya (power supply) diletakkan berdekatan dengan perangkat mikrokontroler, sensor dan juga driver motor agar tegangan keluaran dapat maksimal mensuplai ke seluruh rangkaian.

5.2 Saran-Saran

(69)

dan mungkin sangat berguna sekali untuk pengembangan alat selanjutnya. Berikut ini beberapa saran-saran yang penulis dapat uraikan.

1. Penggunaan sensor yang tepat sangat berpengaruh pada kinerja robot tersebut. Contohnya dalam aplikasi ini digunakan sensor photodiode. Jenis sensor ini sangat peka cahaya sehingga sulit sekali untuk mengatur sensitifitas dari sensor tersebut. Disini penulis menyarankan, untuk melakukan pengaturan sensitifitas sensor harus dilakukan pada ruangan dengan pencahayaan konstan seperti cahaya lampu ruangan dan tidak boleh ada cahaya lainnya yang masuk seperti cahaya matahari. Cara ini lebih efektif untuk mengatur sensitifitas sensor.

2. Penggunaan komponen-komponen elektronika dalam sebuah sistem akan berpengaruh sekali terhadap kinerja dari alat yang dibuat. Penulis menyarankan untuk memilih komponen yang tepat dalam setiap pembuatan alat.

3. Bagian yang paling penting dari sebuah robot khususnya robot beroda ini terletak pada bagian gearbox motor DC sebagai penggerak roda. Dimana komponen ini memiliki peranan penting terhadap kinerja robot. Penggunaan motor DC yang tepat sangat disarankan guna mendapatkan hasil yang diharapkan.

(70)

SAJI

SKRIPSI

Skripsi ini disusun untuk memenuhi salah satu syarat kelulusan menempuh pendidikan program Sarjana di Program Studi Teknik Elektro

Oleh:

ARI PRAYOGA 1.31.09.002

PROGRAM STUDI TEKNIK ELEKTRO

FAKULTAS TEKNIK DAN ILMU KOMPUTER

UNIVERSITAS KOMPUTER INDONESIA

(71)

viii DAFTAR ISI

HALAMAN

HALAMAN JUDUL ... i

LEMBAR PENGESAHAN ... ii

ABSTRAK ... iii

ABSTRACT ... iv

KATA PENGANTAR ... v

DAFTAR ISI ... viii

DAFTAR GAMBAR ... xi

DAFTAR TABEL ... xiii

BAB I PENDAHULUAN 1.1 Latar Belakang Masalah ... 1

1.2 Identifikasi Masalah ... 2

1.3 Rumusan Masalah ... 3

1.4 Tujuan Penelitian ... 3

1.5 Batasan Masalah ... 4

1.6 Metoda Penelitian ... 4

1.7 Sistematika Penulisan Laporan ... 5

BAB II LANDASAN TEORI 2.1 Sensor Photodiode ... 7

2.2 Keypad ... 8

2.3 Sakelar Push Button Switch ... 9

2.4 Mikrokontroler ... 10

(72)

ix

2.4.2 Arsitektur Mikrokontroler AVR ATmega 16 ... 14

2.5 Liquid Crystal Display (LCD) ... 16

2.6 Motor DC ... 18

2.7 Driver Motor L293D ... 19

2.8 Pemrograman Basic Compiler-AVR ... 21

BAB III PERANCANGAN ALAT 3.1 Perancangan Sistem ... 28

3.2 Pemilihan Komponen ... 32

3.2.1 Pemilihan Jenis Mikrokontroler ... 32

3.2.2 Pemilihan Jenis Keypad ... 33

3.2.3 Pemilihan Jenis LCD Character ... 34

3.2.4 Pemilihan Jenis Driver Motor DC ... 34

3.3 Perancangan Perangkat Keras (Hardware) ... 35

3.3.1 Perancangan Mikrokontroler AVR ATmega 16 ... 35

3.3.2 Perancangan Rangkaian Sensor Photodiode ... 36

3.3.3 Perancangan Rangkaian Keypad ... 37

3.3.4 Perancangan Rangkaian 2-Push Button Switch ... 37

3.3.5 Perancangan Rangkaian Liquid Crystal Display .... 38

3.3.6 Perancangan Rangkaian Driver Motor DC ... 39

3.3.7 Perancangan Rangkaian Catu Daya ... 39

3.4 Perancangan Mekanik Sistem ... 40

3.5 Perancangan Prototype Restoran ... 42

(73)

x BAB IV PENGUJIAN DAN ANALISIS

4.1 Pengujian dan Analisis Perangkat Masukan (Input) ... 53

4.1.1 Pengujian Sensor Photodiode ... 53

4.1.2 Keypad 3x4 ... 54

4.1.3 Sakelar Tekan (Push Button Switch) ... 56

4.2 Pengujian dan Analisis Perangkat Proses (Process) ... 57

4.3 Pengujian dan Analisis Perangkat Keluaran (Output) ... 58

4.3.1 Liquid Crystal Display (LCD) Character 16x2 ... 58

4.3.2 Driver Motor L293D ... 59

4.3.3 Motor DC ... 61

4.4 Pengujian dan Analisis Catu Daya (Power Supply) ... 62

4.5 Pengujian Perangkat Lunak (Software) ... 63

4.6 Pengujian Pergerakan Robot pada Media Garis Lintasan .. 66

BAB V PENUTUP 5.1 Kesimpulan ... 68

5.2 Saran ... 68

(74)

70

[1] Heryanto, M. Ary dan Wisnu Adi P, Pemrograman Bahasa Bascom AVR Untuk Mikrokontroler ATMEGA 8535, Penerbit Andi, Yogyakarta, 2008. [2] Syahrul, Mikrokontroler ATMEGA 8535, Penerbit Informatika, Bandung,

2012.

[3] Hendrawan Soebhakti, “Basic AVR Microcontroller Tutorial”, [Online], http://docslide.us/documents/basic-avr-micro-controller-tutorial-v3.html , diakses tanggal 29 Oktober 2015.

[4] ________, “ATMEL 8-bit AVR Instruction Set”, [Online], http://www.atmel.com , diakses tanggal 31 Oktober 2015.

[5] ________, “Penerapan Kendali PID Pada Robot Line Follower”, [Online], http://fahmizaleeits.wordpress.com/tag/robot-pengikut-garis-dengan-pid/ , diakses tanggal 31 Oktober 2015.

[6] _________, “Pengertian Photodioda” [Online],

http://www.academia.edu/9974993/PENGERTIAN_PHOTODIODA ,

diakses tanggal 1 November 2015

[7] _________, “Liquid Crystal Display (LCD)” [Online],

http://www.scribd.com/doc/50403145/Liquid-Crystal-Diode-LCD#scribd ,

(75)

Data Pribadi

Nama : Ari Prayoga

Alamat : Jl. Jakarta Komplek Paldam III Siliwangi No.

16 Blok C6 RT07/09 Kel. Kacapiring, Kec. Batununggal, Bandung

Kode Pos : 40271

Nomor Telepon : 02292644139

Email : ari.prayoga58@yahoo.com

Jenis Kelamin : Laki-laki

Tempat Tanggal Lahir : Bandung, 17 Februari 1991

Status Perkawinan : Belum Menikah

Warga Negara : Indonesia

Agama : Islam

Alamat Email : ariprayoga.electro@gmail.com

Riwayat Pendidikan

1. TK Kartika Siliwangi III-2 : 1996 – 1997 2. SD Kacapiring IV Bandung : 1997 – 2003

3. SMP Negeri 37 Bandung : 2003 – 2006

4. SMK Kartika SLW 1 Bandung : 2006 – 2009

5. Teknik Elektro Unikom : 2009 – sekarang

Pendidikan Non Formal / Training – Seminar

1. Latihan Dasar Kepemimpinan (LDK)

Gambar

Tabel 3.1 Uraian Perbandingan Jenis Mikrokontroler
Tabel 3.3 Uraian Perbandingan Jenis Liquid Crystal Display (LCD)
Tabel 3.4 Uraian Perbandingan Jenis Driver Motor DC
Gambar 3.2 Skematik Sistem Minimum Mikrokontroler AVR ATmega 16
+7

Referensi

Dokumen terkait

Perancangan prototype, ditunjukkan pada Gambar 2 adalah merupakan sebuah mobil robot Flexbot dengan sebuah NXT Brick sebagai microcontrollernya, dua buah dc motor untuk

Prinsip kerja dari Prototipe Robot Line Follower Berkaki yaitu mengantar nampan makanan ke meja pelanggan dengan mengikuti garis sesuai nomor meja.Perangkat ini

Berdasarkan permasalahan tersebut, maka dilakukan sebuah penelitian mengenai perancangan purwarupa robot pembantu orang cacat yang mampu memindahkan makanan dari

Berdasarkan analisa data perancangan desain meja dan kursi usulan adalah sebagai berikut: Untuk merancang kursi adalah: Tinggi dudukan kursi = 43 cm, panjang dudukan kursi = 40

Dari hasil penelitian ditemukan 18 nama menu makanan dan minuman, berisi blending dengan rincian 6 blending dengan clipping pada kata asli pertama, 4 blending dengan clipping pada

Dalam tugas akhir ini, telah dirancang prototype robot pemadam api yang mengadopsi standar Kontes Robot Cerdas Indonesia (KRCI) 2008.. Perancangan robot ini mengikuti

Berdasarkan analisa sistem yang sedang berjalan, maka dapat diasumsikan sistem baru nantinya akan lebih mempermudah pelanggan restaurant untuk melihat menu makanan,

Metode Baru Robot Pengantar Menu Makanan Menggunakan Android dengan Kendali PID Berbasis Mikrokontroler.. Ludony, Stephanie Graciela., Melisa Mulyadi, Kumala