Perancangan Dan Implementasi Prototype Robot Pengantar Makanan Di restoran Cepat Saji

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

Ada hal yang sering ditemui di restoran, di beberapa restoran belum tersedianya teknologi canggih yang memiliki kemampuan untuk memberikan pelayanan secara otomatis dalam hal mengantarkan makanan kepada para pelanggan. Contoh lainnya adalah dari segi pelayanan. Bentuk pelayanan yang diberikan oleh pihak restoran cepat saji kepada pelanggan tersebut masih kurang dikarenakan lamanya pelayanan yang diberikan kepada konsumen, hal ini


(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 :

1. Belum adanya teknologi canggih yang mampu memberikan pelayanan secara otomatis untuk mengantarkan makanan kepada para pelanggan.


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

2. Membuat prototype robot yang dapat digunakan untuk mensimulasikan sebuah robot pengantar makanan di restoran cepat saji.


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

3. Mempelajari literatur tentang sensor photodiode, push button switch, keypad matriks, mikrokontroler, Liquid Crystal Display (LCD), driver motor DC dan lain-lain.


(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

Sistematika penulisan laporan ini bertujuan untuk menguraikan urutan penulisan skripsi, susunan, hubungan antar bab dan fungsi setiap bab yang ada di skripsi ini, sehingga pembaca dapat lebih jelas, mengerti dan terarah. Secara garis besar sistematika penulisan laporan ini dibagi menjadi lima bab, yaitu sebagai berikut :


(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

Pada bab ini berisi tentang kesimpulan dan saran. Kesimpulan ini didapatkan dari data hasil pengujian dan saran ini bertujuan untuk perbaikan serta pengembangan lebih lanjut.


(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. Di dalam rangkaian, LED difungsikan sebagai alat untuk memancarkan cahaya.


(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

Sakelar adalah suatu perangkat elektronika yang digunakan untuk menghubungkan atau memutuskan aliran listrik. Sakelar tekan atau push button switch merupakan suatu jenis sakelar yang dapat menghubungkan aliran listrik sesaat saja saat ditekan dan setelah dilepas maka akan kembali lagi ke posisi off.


(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 dan memiliki struktur I/O yang cukup lengkap sehingga penggunaan komponen eksternal dapat dikurangi. Mikrokontroler AVR ATmega 16 di desain menggunakan arsitektur Harvard, dimana ruang dan jalur bus bagi memori program


(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 mengenai pin yang terdapat pada mikrokontroler ATmega 16 :


(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

PA.0 Input Analog to Digital Converter (ADC) port A.0 PA.1 Input Analog to Digital Converter (ADC) port A.1 PA.2 Input Analog to Digital Converter (ADC) port A.2 PA.3 Input Analog to Digital Converter (ADC) port A.3 PA.4 Input Analog to Digital Converter (ADC) port A.4 PA.5 Input Analog to Digital Converter (ADC) port A.5 PA.6 Input Analog to Digital Converter (ADC) port A.6 PA.7 Input Analog to Digital Converter (ADC) port A.7


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

PC.3 TMS (JTAG Test Mode Select) PC.4 TDI (JTAG Test Data Output) PC.5 TDI (JTAG Test Data Input) PC.6 TOSC1 (Timer Oscillator Pin 1) PC.7 TOSC2 (Timer Oscillator Pin 2)


(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 hilang apabila tidak ada sumber tegangan suplai, karena memori RAM bersifat tidak permanen.


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

Dalam aplikasinya seringkali sebuah motor digunakan untuk arah yang searah dengan jarum jam maupun sebaliknya. Untuk mengubah putaran dari sebuah motor dapat dilakukan dengan mengubah arah arus yang mengalir melalui motor tersebut. Secara sederhana seperti yang ada pada Gambar 2.18, hal ini dapat dilakukan hanya dengan mengubah polaritas tegangan 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 driver IC L293D dapat dihubungkan ke ground maupun sumber tegangan positif.


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

d. Pin VCC (Vcc1/Vss dan Vcc2/Vs) adalah jalur tegangan sumber driver motor DC, dimana Vcc1 adalah jalur input sumber tegangan rangkaian


(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 bawah (underscore). Disini yang termasuk simbol khusus yang tidak diperbolehkan antara lain : $, ?, %, #, !, &, *, (,), -, +, = dan lain-lain.


(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

Contoh : Declare Function Myfunction (byval I As Integer, S As String) As Integer.


(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

< > : Inequality X < > Y < : Less than X < Y > : Greater than X > Y < = : Less than or equal to X < = Y > = : Greater than or equal to 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

Penyeleksian kondisi digunakan untuk mengarahkan perjalanan suatu proses. Fungsi penyeleksian kondisi ini penting karena hal ini diperlukan dalam penyusunan bahasa Basic, terutama untuk program yang kompleks.


(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 switch ... case ... default digunakan untuk penyeleksian 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 Basic mempunyai bentuk yang bermacam-macam, diantaranya struktur perulangan “While”, “Do ... Loop” dan “For ... Next”.


(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

Dalam perancangan prototype robot pengantar makanan ini nantinya adalah diawali dengan merancang beberapa sensor yang digunakan untuk mendeteksi permukaan garis lintasan. Disini saya menggunakan sensor photodiode dan Light Emitting Diode (LED). Sensor photodiode dan LED ini dirangkai menjadi satu dan dibuat menjadi lima bagian yang disusun menjadi sebuah sensor array. Sensor


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

Jadi, prinsip kerja dari prototype robot pengantar makanan yang dirancang ini adalah pada awalnya robot dalam kondisi diam, karena tidak ada masukan yang diberikan. Jika makanan telah siap dihidangkan dan akan diantarkan ke meja pelanggan yang dituju, maka chef atau orang yang bertugas di dapur akan menekan salah satu tombol kode meja dari 9 tombol yang ada di keypad tersebut kemudian menekan tombol mulai (start), maka robot akan mengantarkan makanan secara otomatis langsung menuju meja pelanggan dengan tepat. Jika prosedur pengantaran makanan kepada pelanggan telah dilaksanakan, maka robot akan diam dan menunggu hingga pelanggan tersebut selesai mengambil makanannya dan menekan tombol kembali (back) pada keypad, maka robot akan bergerak dan berjalan kembali menuju posisi awal (home) yaitu di dapur dan menunggu masukan selanjutnya.


(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

3x4 yang digunakan sebagai masukan (input) yang terdiri dari tombol (1, 2, 3, 4, 5, 6, 7, 8, 9). Tombol (1 – 9) ini difungsikan untuk memilih kode nomor meja pelanggan yang akan ditujukan.


(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

Jenis mikrokontroler yang digunakan pada prototype robot pengantar makanan ini adalah mikrokontroler jenis AVR seri ATmega 16. Uraian mengenai perbandingan jenis mikrokontroler AVR ATmega 16, dapat dilihat pada Tabel 3.1 di bawah ini.


(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

Jenis keypad yang digunakan pada prototype robot pengantar makanan otomatis ini adalah jenis keypad 3x4 dengan spesifikasi (3 kolom x 4 baris). Keypad jenis ini digunakan karena sesuai dengan kebutuhan jumlah karakter yang diperlukan sebagai kode nomor meja pelanggan dan juga digunakan sebagai tombol untuk mengaktifkan robot. Berikut uraian perbandingan jenis keypad yang dapat dilihat pada Tabel 3.2.


(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

Jenis driver motor DC yang digunakan pada prototype robot pengantar makanan ini menggunakan jenis driver IC tipe L293D. Jenis driver motor IC L293D ini cocok digunakan dalam perancangan sistem yang dibuat, karena jenis


(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

Penggunaan sistem minimum mikrokontroler adalah untuk menjalankan fungsi dari Integrated Circuit (IC) mikrokontroler itu sendiri. Sistem kendali pada prototype robot pengantar makanan ini menggunakan jenis mikrokontroler ATMEL seri ATmega 16 yang bekerja sebagai pusat kendali otomatis yang berfungsi untuk menerima data masukan dari perangkat input, kemudian dilakukan proses kalkulasi


(36)

terhadap data dari hasil pembacaan sensor dan input data dari keypad sehingga nantinya mikrokontroler dapat melakukan eksekusi pada perangkat keluaran (output). 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 PB0/T0 PB1/T1 PB2/AIN0 PB3/AIN1 PB4/SS PB5/MOSI PB6/MISO PB7/SCK RESET VCC GND XTAL2 XTAL1 PD0/RXD PD1/TXD PD2/INT0 PD3/INT1 PD4/OC1B PD5/OC1A PD6/ICP1 TD0/PC4 TMS/PC3 TCK/PC2 SDA/PC1 SCLPC0 OC2/PD7 TD1/PC5 TOSC1/PC6 TOSC2/PC7 AVCC ADC4/PA4 ADC5/PA5 ADC6/PA6 ADC7/PA7 AREF AGND ADC3/PA3 ADC2/PA2 ADC1/PA1 ADC0/PA0 ATMEGA 16 +5V R11 10K VCC_uC RST_uC GND_uC + C1 1uF/ 16V RESET XTAL1_uC XTAL2_uC C2 33pF C3 33pF X1 11.0592MHz +5V AREF_uC AVCC_uC AGND_uC R12 10K C4 100nF AREF_uC AGND_uC AVCC_uC RST_uC VCC_uC GND_uC XTAL1_uC XTAL2_uC

Gambar 3.2 Skematik Sistem Minimum Mikrokontroler AVR ATmega 16

3.3.2 Perancangan Rangkaian Sensor Photodiode

Pada prototype robot yang dirancang ini, photodiode digunakan sebagai sebagai sensor untuk mendeteksi adanya garis lintasan (track). Dimana sensor photodiode merupakan jenis sensor yang peka terhadap cahaya. Jika dilihat dari fisiknya sensor ini memiliki bentuk seperti Light Emitting Diode (LED) pada umumnya, namun memiliki fungsi yang berbeda dengan LED. Dalam prinsip kerjanya LED difungsikan sebagai komponen yang dapat memancarkan cahaya (transmitter), sedangkan sensor photodiode difungsikan sebagai penerima (receiver) pantulan cahaya dari LED.


(37)

PA.0_uC +5V R2 22K R1 470 PD1 LED1 PA.1_uC +5V R4 22K R3 470 PD2 LED2 PA.2_uC +5V R6 22K R5 470 PD3 LED3 PA.3_uC +5V R8 22K R7 470 PD4 LED4 PA.4_uC +5V R10 22K R9 470 PD5 LED5

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

4 5 6

7 8 9

* 0 #

PC.4_uC PC.5_uC PC.6_uC PC.0_uC PC.1_uC PC.2_uC PC.3_uC

Gambar 3.4 Skematik Keypad 3x4

3.3.4 Perancangan Rangkaian 2-Push Button Switch

Dalam perancangan prototype robot, digunakan 2 (dua) sakelar tekan (push button switch) yang difungsikan sebagai tombol memulai (start) untuk


(38)

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

+5V

START PUSH BUTTON 1

R13 4K7

R14 4K7

PUSH BUTTON 2 BACK

PA.7_uC

PA.6_uC

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. V S S V D D V E E

RS R/W E D0 D1 D2 3D D4 D5 D6 D7 A K 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

+5V VDD_LCD VEE_LCD VSS_LCD R/W_LCD K_LCD A_LCD + D1 1N4002 VR1 10K C5 1uF/ 16V VSS_LCD VDD_LCD VEE_LCD PB.5_uC R/W_LCD PB.4_uC K_LCD A_LCD PB.0_uC PB.1_uC PB.2_uC PB.3_uC

LCD DISPLAY 16X2


(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 +VMOT D2 1N4002 1N4002 1N4002 1N4002 D3 D4 D5 M +VMOT D6 1N4002 1N4002 1N4002 1N4002 D7 D8 D9 MOTOR DC 1 MOTOR DC 2 +VMOT +5V VCC1/VSS VCC2/VS 16 8 1Y/OUTPUT 1 2Y/OUTPUT 2 3Y/OUTPUT 3 4Y/OUTPUT 4 3 6 11 14 1A/INPUT 1 2A/INPUT 2 3A/INPUT 3 4A/INPUT 4 2 7 10 15 EN1/ENABLE 1 EN2/ENABLE 2 GND 1 9 4,5,12,13 L293D PD.2_uC PD.3_uC PD.5_uC PD.6_uC PD.4_uC PD.7_uC

Gambar 3.7 Skematik Driver Motor DC L293D

3.3.7 Perancangan Rangkaian Catu Daya

Catu daya merupakan bagian paling penting diantara bagian yang lainnya pada sebuah robot, karena dengan adanya catu daya maka arus dan tegangan pada sumber dapat dikontrol sepenuhnya melalui rangkaian catu daya ini. Dalam perancangan prototype robot ini digunakan baterai isi ulang (reghargeable) dengan tegangan sebesar 11,1 Volt dan memiliki arus keluaran sebesar 2200 mAh (2,2 Ampere). Besar tegangan yang diperlukan untuk mensuplai masing-masing bagian dibagi menjadi tiga bagian, diantaranya tegangan 5Vdc(1) dan 5Vdc(2) serta 11,1Vdc. untuk mendapatkan tegangan sebesar 5Vdc dari tegangan sumber


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

+

+5V 1

2 3 VIN VO UT

GND L7805CT C6 0.47uF/ 50V + C7 22uF/ 50V BATT INPUT 12V C8 100nF 2 3 VIN VO UT

GND L7805CT 1 +12V +5V TO MICROCONTROLLER

TO MOTOR DC

TO DRIVER MOTOR

Gambar 3.8 Skematik Catu Daya (Power Supply)

3.4 Perancangan Mekanik Sistem

Dalam perancangan prototype robot yang sedang dibuat, jika dilihat dari bentuk fisiknya, robot ini memiliki 3 roda yang dibagi menjadi dua bagian kerja yaitu 2-roda bagian depan telah terhubung dan terintegrasi dengan motor DC pada dan 1-roda bebas pada bagian belakang sehingga dapat lebih mudah dalam mengarahkannya. Ketiga roda penggerak ini diperlukan untuk menjalankan fungsi robot tersebut yang dalam hal ini digunakan robot pengantar makanan kepada pelanggan. Untuk tata letak komponen lainnya seperti sensor photodiode diletakkan pada bagian depan robot sehingga dapat lebih mudah dalam melakukan pendeteksian permukaan garis lintasan. Sedangkan mikrokontroler, LCD, keypad,


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

Gambar 3.11 Diagram Alir Utama Pengoperasian Robot Pengantar Makanan di Restoran Cepat Saji


(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

Inisialisasi Sensor Inisialisasi ADC


(45)

Tombol 2

Jalankan Motor ke Depan

Baca ADC

Deteksi Tikungan Kanan ke 1?

Motor Belok Kanan

Baca ADC

Deteksi Kanan ke 2 ?

Motor Belok Kanan Y N N Y Matikan Motor Y N Tombol 3

Jalankan Motor ke Depan

Baca ADC

Deteksi Tikungan Kanan ke 1?

Motor Belok Kanan

Baca ADC

Deteksi Kanan ke 3 ?

Motor Belok Kanan Y N N Y Matikan Motor Y N A B Tombol Start ditekan ? N

Y

Tombol Start ditekan ? N


(46)

Tombol 4

Jalankan Motor ke Depan

Baca ADC

Deteksi Tikungan Kanan ke 2?

Motor Belok Kanan

Baca ADC

Deteksi Kanan ke 1 ?

Motor Belok Kanan Y N N Y Matikan Motor Y N Tombol 5

Jalankan Motor ke Depan

Baca ADC

Deteksi Tikungan Kanan ke 2?

Motor Belok Kanan

Baca ADC

Deteksi Kanan ke 2 ?

Motor Belok Kanan Y N N Y Matikan Motor Y N B C Tombol Start ditekan ? N

Y

Tombol Start ditekan ? N


(47)

Tombol 6

Jalankan Motor ke Depan

Baca ADC

Deteksi Tikungan Kanan ke 2?

Motor Belok Kanan

Baca ADC

Deteksi Kanan ke 3?

Motor Belok Kanan Y N N Y Matikan Motor Y N Tombol 7

Jalankan Motor ke Depan

Baca ADC

Deteksi Tikungan Kanan ke 3?

Motor Belok Kanan

Baca ADC

Deteksi Kanan ke 1 ?

Motor Belok Kanan Y N N Y Matikan Motor Y N C D Tombol Start ditekan ? N

Y

Tombol Start ditekan ? N


(48)

Tombol 8

Jalankan Motor ke Depan

Baca ADC

Deteksi Tikungan Kanan ke 3?

Motor Belok Kanan

Baca ADC

Deteksi Kanan ke 2?

Motor Belok Kanan Y N N Y Matikan Motor Y N Tombol 9

Jalankan Motor ke Depan

Baca ADC

Deteksi Tikungan Kanan ke 3?

Motor Belok Kanan

Baca ADC

Deteksi Kanan ke 3?

Motor Belok Kanan Y N N Y Matikan Motor Y N D E Tombol Start ditekan ? N

Y

Tombol Start ditekan ? N


(49)

Cek Tombol Kembali (Merah)

Motor Balik Kiri Y

N

Simpangan ke 1 Motor Belok Kiri E

Selesai

Simpangan ke 2 Motor Belok Kiri

Simpangan ke 3 Matikan Motor


(50)

Baca ADC

Sensor Tengah Deteksi Hitam

Jalankan Dua Motor ke Depan Y

N

Sensor Kiri Sedikit Deteksi Hitam

Jalankan Dua Motor ke Kanan Sedikit Y

N

Sensor Kiri Banyak Deteksi Hitam

Jalankan Dua Motor ke Kanan Banyak Y

N

Sensor Kanan Sedikit Deteksi Hitam

Jalankan Dua Motor ke Kiri Sedikit Y

N

Sensor Kanan Banyak Deteksi Hitam

Jalankan Dua Motor ke Kiri Banyak Y

N

Selesai Mulai

Semua Sensor Deteksi Hitam

Y

N Matikan Kedua Motor

Inisialisasi Sensor

Gambar 3.12 Diagram Alir Pergerakan Robot Menuju Meja yang Diinginkan Berdasarkan Penekanan Tombol pada Keypad


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

Jika robot telah sampai di meja pelanggan yang dituju, maka robot akan berhenti dan menunggu pelanggan selesai mengambil semua makanan yang dipesan


(52)

dan menekan tombol kembali (back). Setelah menekan tombol kembali (back), maka robot akan berputar 180 derajat kearah sebaliknya dan berjalan kembali mengikuti garis lintasan menuju ke posisi awal yaitu di dapur. Kedua tombol push button switch memang dikhususkan sebagai tombol untuk menjalankan robot dan juga memerintahkan robot untuk kembali lagi ke posisi awal (home).


(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

Sensor photodiode merupakan bagian komponen yang paling penting dari robot, dimana sensor ini difungsikan untuk mendeteksi garis (line) pada lintasan. Pengujian pada sensor photodiode ini dilakukan untuk mengetahui nilai tegangan keluaran dari sensor saat kondisi aktif pada saat mendeteksi garis. Berikut ini adalah tabel pengujian terhadap sensor photodiode.


(54)

Gambar 4.1 Pengujian Sensor Photodiode

Tabel 4.1 Pengujian Deteksi Sensor Photodiode terhadap Garis

Jenis Sensor Kondisi Logika Hasil

Photodiode (Kiri2)

Aktif 1 2,27 Volt

Tidak Aktif 0 0,02 Volt

Photodiode (Kiri1)

Aktif 1 2,32 Volt

Tidak Aktif 0 0,02 Volt

Photodiode (Tengah)

Aktif 1 2,40 Volt

Tidak Aktif 0 0,01 Volt

Photodiode (Kanan1)

Aktif 1 2,32 Volt

Tidak Aktif 0 0,03 Volt

Photodiode (Kanan2)

Aktif 1 2,27 Volt

Tidak Aktif 0 0,01 Volt

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

Pengecekan Output Sensor


(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

Pull-up Resistor 4K7 Ohm


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

Pengujian dilakukan dengan memberikan tegangan masukan sebesar 5Vdc pada mikrokontroler ATmega 16 melalui pin 10 (VCC) serta pin 11 dan pin 31 (Ground/GND) pada mikrokontroler ATmega 16. Pengujian kedua yaitu dengan melakukan pengetesan keempat port yang ada pada mikrokontroler ATmega 16 agar nantinya dapat digunakan sebagaimana mestinya.


(58)

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 PB0/T0 PB1/T1 PB2/AIN0 PB3/AIN1 PB4/SS PB5/MOSI PB6/MISO PB7/SCK RESET VCC GND XTAL2 XTAL1 PD0/RXD PD1/TXD PD2/INT0 PD3/INT1 PD4/OC1B PD5/OC1A PD6/ICP1 TD0/PC4 TMS/PC3 TCK/PC2 SDA/PC1 SCLPC0 OC2/PD7 TD1/PC5 TOSC1/PC6 TOSC2/PC7 AVCC ADC4/PA4 ADC5/PA5 ADC6/PA6 ADC7/PA7 AREF AGND ADC3/PA3 ADC2/PA2 ADC1/PA1 ADC0/PA0 ATMEGA 16 AREF_uC AGND_uC AVCC_uC RST_uC VCC_uC GND_uC XTAL1_uC XTAL2_uC

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

Port untuk Keypad Matriks 3x4


(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

S

S

V

D

D

V

E

E

RS R/W E D0 D1 D2 D3 D4 D5 D6 D7 A K 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

VSS_LCD VDD_LCD VEE_LCD PB.5_uC R/W_LCD PB.4_uC

K_LCD A_LCD PB.0_uC PB.1_uC PB.2_uC PB.3_uC

LCD DI SPLAY 16X2

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

4.3.2 Driver Motor L293D

Untuk mengontrol atau mengendalikan arah pergerakan motor DC dengan menggunakan mikrokontroler diperlukan sebuah rangkaian driver motor DC. Sebenarnya mikrokontroler tidak bisa mengontrol/ menggerakkan motor secara Pin Data Kontrol pada LCD


(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 +VMOT D2 1N4002 1N4002 1N4002 1N4002 D3 D4 D5 M +VMOT D6 1N4002 1N4002 1N4002 1N4002 D7 D8 D9 MOTOR DC 1 MOTOR DC 2 +VMOT +5V VCC1/VSS VCC2/VS 16 8 1Y/OUTPUT 1 2Y/OUTPUT 2 3Y/OUTPUT 3 4Y/OUTPUT 4 3 6 11 14 1A/INPUT 1 2A/INPUT 2 3A/INPUT 3 4A/INPUT 4 2 7 10 15 EN1/ENABLE 1 EN2/ENABLE 2 GND 1 9 4,5,12,13 L293D PD.2_uC PD.3_uC PD.5_uC PD.6_uC PD.4_uC PD.7_uC

Gambar 4.7 Konfigurasi Pin Driver Motor dengan Mikrokontroler

Bila dilihat pada gambar di atas, terdapat dua sumber tegangan input yang berbeda diantaranya adalah pin (Vss) digunakan untuk tegangan sumber driver motor DC yaitu sebesar 5 Vdc. Sedangkan pin (Vs) adalah jalur input sumber tegangan untuk


(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).

Pengujian kedua, dengan menghubungkan kebalikannya yaitu menghubungkan sumber tegangan positif (+) ke bagian kutub (-) pada motor DC. Sedangkan untuk sumber tegangan negatif (-) dihubungkan ke bagian kutub (+) pada motor DC, sehingga motor DC akan bergerak kebalikannya dari sebelumnya dikarenakan poralitas yang terbalik (berlawanan arah jarum jam). Berikut ini merupakan pengujian pergerakan serta arah putaran pada motor DC yang ditunjukkan pada Gambar 4.8.


(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. + +5V 1 2 3 VIN VO UT

GND L7805CT C6 0.47uF/ 50V + C7 22uF/ 50V BATT INPUT 12V C8 100nF 2 3 VIN VO UT

GND L7805CT 1 +12V +5V TO MICROCONTROLLER

TO MOTOR DC

TO DRIVER MOTOR

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

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.

2. Jika pengeditan program telah selesai dilakukan, maka selanjutnya akan dilakukan kompilasi (compile) program yaitu mengubah sebuah program yang sebelumnya berekstensi (.bas) menjadi bentuk file heksa (.hex). dimana file ini nantinya akan dimasukkan atau dalam istilah lain yaitu di download ke dalam chip mikrokontroler. Untuk dapat memasukkan program .hex ini ke dalam mikrokontroler diperlukan sebuah program downloader AVROSP II. Program ini berguna untuk mengisikan file .hex yang telah siap tadi ke dalam chip mikrokontroler. Berikut ini adalah tampilan program AVROSP II yang dtunjukkan pada Gambar 4.11


(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

Dari tabel di atas diketahui bahwa untuk keseluruhan pengantaran sudah cukup berhasil dilakukan oleh prototype robot pengantar makanan. Kemudian disini terdapat selisih perbedaan waktu tempuh, hal ini dikarenakan oleh beberapa kemungkinan-kemungkinan yang bisa saja terjadi diantaranya karena adanya faktor teknis dari sistem penggerak roda, permukaan lintasan tidak datar, atau bisa juga karena sumber tegangan catu daya tidak stabil sehingga mempengaruhi kinerja dari robot saat berjalan di garis lintasan.


(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

Selain terdapat kesimpulan yang telah dijelaskan secara singkat dan jelas di atas. Disini penulis juga memberikan beberapa saran-saran yang perlu diperhatikan


(1)

v

KATA PENGANTAR

Bismillahirrahmanirrahim Assalamu’alaikum Wr. Wb

Segala puji syukur kami panjatkan ke hadirat Allah SWT, karena atas limpahan rahmat dan hidayah-Nya penulis dapat menyelesaikan Tugas Akhir yang

berjudul “Perancangan dan Implementasi Prototype Robot Pengantar Makanan Di

Restoran Cepat Saji”. Tugas Akhir ini disusun sebagai persyaratan kelulusan pada Program Studi Teknik Elektro Strata-1 (S-1) Fakultas Teknik dan Ilmu Komputer Universitas Komputer Indonesia.

Dalam penyusunan Tugas Akhir ini penulis banyak mendapat saran, dorongan, bimbingan serta keterangan-keterangan dari berbagai pihak yang merupakan pengalaman yang tidak dapat diukur secara materi, namun dapat membukakan mata penulis bahwa sesungguhnya pengalaman dan pengetahuan tersebut adalah guru terbaik bagi penulis. Oleh karena itu dengan segala hormat dan kerendahan hati perkenankanlah penulis mengucapkan terima kasih kepada :

1. Kepada Tuhan yang Maha Esa, karena atas berkat rahmat-Nya penulis dapat menyelesaikan laporan tugas akhir ini.

2. Kedua orang tua penulis atas kasih sayang, do’a, dorongan dan motivasinya yang senantiasa diberikan kepada penulis, sehingga penulis dapat menyelesaikan tugas akhir dan penulisan laporan tugas akhir ini. 3. Bapak Dr. Ir. Eddy Suryanto Soegoto, M.Sc selaku Rektor Universitas

Komputer Indonesia Bandung.

4. Bapak Prof. Dr. H. Denny Kurniadie, Ir., M.Sc selaku Dekan Fakultas Teknik dan Ilmu Komputer, Universitas Komputer Indonesia.


(2)

vi

5. Bapak Rodi Hartono, MT selaku Ketua Program Studi Teknik Elektro, Universitas Komputer Indonesia Bandung.

6. Bapak Rodi Hartono, MT selaku pembimbing yang selalu memberikan masukan dan sarannya dalam penulisan laporan tugas akhir ini.

7. Ibu Tri Rahajoeningroem, MT selaku Koordinator tugas akhir Program Studi Teknik Elektro Universitas Komputer Indonesia Bandung.

8. Bapak dan Ibu Dosen pada Program Studi Teknik Elektro Universitas Komputer Indonesia Bandung atas bimbingan, didikan dan sarannya kepada penulis dalam menyelesaikan tugas akhir ini.

9. Duwi Adhani yang selalu memberikan masukan serta motivasinya yang diberikan kepada penulis menyelesaikan tugas akhir ini.

10. Rekan-rekan mahasiswa di Jurusan Teknik Elektro, atas kebersamaan dan persahabatannya selama ini, sehingga perkuliahan yang telah ditempuh tersebut memiliki banyak arti serta berbagai macam bantuan dan semangat yang senantiasa diberikan kepada penulis sehingga penulis dapat menyelesaikan penulisan laporan tugas akhir ini.

11. Semua pihak yang tidak dapat penulis sebutkan satu persatu yang telah memberikan bantuan baik dari segi moril serta materil sehingga penulis dapat menyelesaikan tugas akhir dan penulisan laporan tugas akhir ini. Semoga Allah SWT, melimpahkan rahmat dan hidayah-Nya kepada beliau-beliau tersebut, atas amal baik yang telah diberikan kepada penulis.

Dalam penyusunan tugas akhir ini, penulis menyadari masih terdapat banyak kekurangan yang dibuat baik sengaja maupun tidak disengaja, dikarenakan keterbatasan ilmu pengetahuan dan wawasan serta pengalaman yang penulis miliki.


(3)

vii

Untuk itu penulis mohon maaf atas segala kekurangan tersebut dan juga tidak menutup diri terhadap segala saran dan kritik serta masukan yang bersifat membangun bagi diri penulis. Akhir kata, semoga skripsi ini dapat bermanfaat bagi penulis sendiri, Institusi pendidikan dan semua pihak.

Wassalamu’alaikum Wr. Wb Bandung, Maret 2016


(4)

(5)

(6)