BAB II TINJAUAN PUSTAKA
II.1.
Perancangan Perancangan adalah proses menuangkan ide dan gagasan berdasarkan
teori-teori dasar yang mendukung. Proses perancangan dapat dilakukan dengan cara pemilihan komponen yang akan digunakan, mempelajari karakteristik dan data fisiknya, membuat rangkaian skematik dengan melihat fungsi-fungsi komponen yang dipelajari, sehingga dapat dibuat alat yang sesuai dengan spesifikasi yang diharapkan. (http://elib.unikom.ac.id/download.php?id=95341: Diakses pada tanggal 20 Mei 2015).
II.2.
Robot Winarno dan Deni Arifianto (2011, Hal 2), kata robot berasal dari bahasa
Ceko yaitu robota, yang berarti pekerja. Menurut arti bahasa, robot adalah sebuah alat mekanik yang dapat melakukan tugas fisik, baik menggunakan pengawasan dan kontrol manusia, atau menggunakan program yang telah didefinisikan terlebih dahulu. Sedangkan menurut Kamus Besar Bahasa Indonesia, robot adalah alat berupa orang-orangan dan sebagainya yang dapat bergerak atau berbuat seperti anusia, dan dikendalikan oleh mesin.
8
9
II.3.
Penyaji Makanan Penyaji makanan adalah seseorang yang bertanggug jawab menyajikan
makanan. Penyajian makanan yang tidak baik dan etis, bukan saja dapat mengurangi selera makan seseorang tetapi dapat juga menjadi penyebab kontaminasi. Menurut WHO yang dimaksudkan makanan adalah semua benda yang termasuk dalam diet manusia sama ada dalam bentuk asal atau sudah diolah. Makanan yang dikonsumsi hendaknya memenuhi kriteria bahwa makanan tersebut layak untuk dimakan dan tidak menimbulkan penyakit, diantaranya berada dalam derajat kematangan yang dikehendaki, bebas dari pencemaran, bebas dari perubahan fisik atau kimia yang tidak dikehendaki, sebagai akibat dari pengaruh enzim, aktifitas mikroba, hewan pengerat, serangga, parasit dan kerusakan-kerusakan karena tekanan, pemasakan dan pengeringan.dan bebas dari mikroorganisme dan parasit yang menimbulkan penyakit yang dihantarkan oleh makanan. (repository.usu.ac.id/bitstream/123456789/23348/4/Chapter%20II.pdf).
II.4.
Makanan Siap Saji Makanan siap saji adalah istilah untuk makanan yang dapat disiapkan dan
dilayankan dengan cepat. Sementara makanan apapun yang dapat disiapkan dengan segera dapat disebut makanan siap saji, biasanya istilah ini merujuk kepada makanan yang dijual di sebuah restoran atau toko dengan persiapan yang berkualitas rendah dan dilayankan kepada pelanggan dalam sebuah bentuk paket untuk dibawa pergi. Istilah "Makanan Siap Saji" diakui dalam kamus bahasa Inggris Merriam-Webster pada 1951.
10
II.5.
Bluetooth Bluetooth adalah sebuah teknologi komunikasi wireless (tanpa kabel) yang
beroperasi pada pita frekuensi 2,4 GHz unlicensed ISM (Industrial, Scientific and Medical) dengan menggunakan sebuah frekuensi hopping transceiver yang mampu menyediakan layanan komunikasi data dan suara secara real-time antara host-host bluetooth dengan jarak jangkauan layanan yang terbatas (sekitar 10 meter). Bluetooth juga merupakan spesifikasi industry untuk jaringan kawasan pribadi (Personal Area Networks atau PAN) tanpa kabel. Bluetooth dapat dipakai untuk melakukan tukar menukar informasi di antara peralatan-peralatan. (Heri Andrianto, 2013, Hal 193). Adapun bentuk Bluetooth yang digunakan pada tugas akhir ini dapat dilihat seperti gambar berikut:
Gambar II.1 Bluetooth HC 05 (Sumber : datasheet Bluetooth HC-05)
11
II.6.
Mikrokontroler Menurut Heri Andrianto (2013, Hal 1-4), mikrokontroler adalah sebuah
komputer kecil (“special purpose computers”) didalam satu IC yang berisi CPU, memori, timer, saluran komunikasi serial dan pararel, Port input/output, ADC. Mikrokontroller digunakan untuk suatu tugas dan menjalankan suatu program. Pada saat ini penggunaan mikrokontroler dapat kita temui pada berbagai peralatan, misalnya peralatan yang terdapat dirumah, seperti telepon digital, microwave oven, televisi, mesin cuci, sistem keamanan rumah, PDA, dll. Mikrokontroler dapat kita gunakan untuk berbagai aplikasi misalnya untuk pengendalian, otomasi industri, akuisi data, telekominikasi dan lain-lain. Keuntungan menggunakan mikrokontroler yaitu harganya murah, dapat diprogram berulang kali, dan dapat kita program sesuai dengan keinginan kita. Saat ini keluarga mikrokontroler yang ada dipasaran yaitu Intel 8048 dan 8051(MCS51), Motorola68HC11, Microchip PIC, Hitachi H8, dan Atmel AVR.
II.6.1. Sejarah Mikrokontroler Mikrokontroler dikembangkan dari mikroprosesor. Berikut ini sejarah perkembangan teknologi mikroprosesor dan mikrokontroler. •
Tahun 1617, Jhon Napier menemukan sistem untuk melakukan perkalian dan pembagian berdasarkan logaritma.
•
Tahun 1694, Gottfriend Wilhelm Leibniz membuat mesin mekanik yang dapat melakukan operasi +,-,*, / dan akar kuadrat.
12
•
Tahun 1835, Charles Babbage mengusulkan komputer digital (Digital Computer) pertama di dunia menggunakan punched card untuk data dan instruksi, serta program control (looping and branching) dengan unit aritmatik dan unit penyimpanan.
•
Tahun 1850, George Boole mengembangkan symbolic logic termasuk operasi binary (AND, OR, dll).
•
Tahun 1946, Von Neumann menyarankan bahwa instruksi menjadi kode numerik yang disimpan pada memori. Komputer dan semua desain mikrokontroler didasarkan pada komputer Von Neumann. Memori
Address Bus
Program & Data
CPU Data Bus
Gambar II.2 Arsitektur Komputer Von Neumann (Sumber : Heri Andrianto, 2013: 3) •
Tahun 1948, Transistor ditemukan. Dengan dikembangkannya konsep software, pada tahun 1948 mulai adanya perkembangan hardware penting seperti transistor.
•
Tahun 1959, IC (Integrated Circuit) pertama dibuat.
•
Tahun 1971, Intel 4004 dibuat, yang merupakan Mikroprosesor pertama. Terdiri dari 2250 transistor. Kemudian Intel membuat Intel 8008, mikroprosesor 8 bit. Semakin besar ukuran bit berarti mikroprosesor dapat memproses lebih banyak data.
13
Gambar II.3. Intel 4004 (Sumber : Heri Andrianto, 2013: 3) •
Tahun 1972, TMS 1000, buatan Texas Instrument, Mikrokontroler pertama yang dibuat.
Gambar II.4 TMS 1000 (Sumber : Heri Andrianto, 2013: 4) •
Tahun 1974,beberapa pabrik IC menawarkan mikroprosesor dan pengendali menggunakan mikroprosesor. Mikroprosesor yang ditawarkan pada saat itu yaitu Intel 8080, 8085, Motorola 6800, Signetics 6502, Zilog Z80, dan Texas Instruments 9900 (16 bit).
•
Tahun 1978, mikroprosesor 16 bit menjadi lebih umum digunakan yaitu intel 8086, Motorola 68000 dan Zilog Z8000. Sejak saat itu pabrikan mikroprosesor terus mengembangkan mikroprosesor dengan berbagai keistimewaan dan arsitektur. Mikroprosesor yang dikembangkan termasuk mikroprosesor 32 bit seperti Intel Pentium, Motorola DragonBall, dan beberapa mikrokontroler yang menggunakan ARM core.
14
II.6.2. Mikrokontroler ATMega8535 Mikrokontroler ATMega8535 merupakan mikrokontroler 8 bit teknologi CMOS dengan konsumsi daya rendah yang berbasis arsitektur enhanced RISC AVR. Dengan eksekusi instruksi yang sebagian besar hanya menggunakan satu siklus clock. ATMega8535 mencapai throughput sekitar 1 MIPS per MHz yang mengizinkan perancang sistem melakukan optimal konsumsi daya versus kecepatan pemrosesan. (Syahrul, 2012, Hal 10). Bentuk fisik dari mikrokontroler Atmega8535 dapat dilihat pada gambar II.5 berikut.
Gambar II.5.Bentuk Fisik Mikrokontroller Atmega8535 (Sumber: www.atmel.com)
II.6.3. Arsitektur Mikrokontroler ATMega8535 Processor AVR menggaungkan set instruksi yang kaya dengan 32 register umum (general purpose registers, GPRs). Ke semua 32 register tersebut dikoneksikan langsung dengan Arithmetic Logic Unit (ALU), mengizinkan dua register independen untuk diakses dalam satu instruksi yang dieksekusi dalam siklus clock. Arsiteksut yang dihasilkan adalah arsitektur ang kode operasinya lebih efisien serta pencapaian throughput nya hingga sepuluh kali lebih cepat
15
daripada mikrokontroler CISC (Complex Intruction Set Computer) konvensional. (Syahrul, 2012, Hal 10-11). Beberapa fitur utama yang tersedia pada ATMega8535 adalah : •
Port I/O 32 bit, yang dikelompokkan dalam PORTA, PORTB, PORTC, dan PORTD.
•
Analog to Digital Converter 10 bit sebanyak 8 input
•
Timer/Counter sebanyak 3 buah
•
CPU 8 bit yang terdiri dari 32 register
•
Watchdog Timer dengan osilator internal
•
SRAM sebesar 512 byte
•
Memori flash sebesar 8 Kbyte dengan kemampuan read while write
•
Interrupt internal maupun eksternal
•
Port komunikasi SPI
•
EEPROM sebesar 512 byte yang dapat diprgram saat operasi
•
Analog Comparator
•
Komunikasi serial standar USART dengan kecepatan maksimal 2.5 Mbps
•
Frekuensi clock maksimum 16 MHz
16
Gambar II.6
merupakan diagram blok arsitektur mikrokontroler
ATMega8535.
Gambar II.6. Diagram Blok Arsitektur Mikrokontroler ATMega8535 (Sumber: Syahrul, 2012: 12)
17
II.6.4. Konfigurasi PIN Mikrokontroler ATMega8535 Konfigurasi pin mikrokontroler AVR ATmega8535 untuk 40 pin DIP (Dual in Line Package) ditunjukkan pada gambar berikut:
Gambar II.7. Konfigurasi Pin Mikrokontroler ATMega8535 (Sumber: Syahrul, 2012: 1) Untuk dapat memahami lebih jauh tentang konfigurasi pin ATMega8535 maka pada table II.1 diberikan deskripsi kaki-kai atau pin pada mikrokontroler ATMega8535: Tabel II.1 Fungsi Khusus Pin Mikrokontroler ATMega8535 No. Pin 10
VCC
Catu daya
11
GND
Ground
PortA: PA0-PA7
Port I/O dua arah dilengkapi internal pill-
(ADC0-ADC7)
up resistor. Port ini juga di multipleks
40-33
Nama Pin
Keterangan
dengan masukan analog ke ADC 8 kanal. 1-7
PortB: PB0-PB7
Port I/O dua arah dilengkapi internal pillup resistor. Fungsi lain dari masing-
18
masing port ini adalah: PB0 T0 (timer/counter0 external counter input) PB1 T1 (timer/counter1 external counter input) PB2 AIN0 (analog comparator positive input) PB3 AIN1 (analog comparator positive input) PB4 SS (SPI slave select input) PB5 MOSI (SPI bus master output/s;ave input) PB6 MISO (SPI bus master input/slave output) PB7 SCK (SPI bus serial clock 22-29
PortC: PC0-PC7
Port I/O dua arah dilengkapi internal pull up resistor. Dua pin yaitu PC6 dan PC7 berfungsi sebagai osilator eksternal untuk timer/counter2
14-21
PortD: PD0-PD7
Port I/O dua arah dilengkapi internal pillup resistor. Fungsi lain dari masingmasing port ini adalah: PD0 RXD (UART input line) PD1 TXD (UART output line) PD2 INT0 (External interrupt 0 input) PD3 INT1 (External interrupt 1 input) PD4 OC1B (timer/counter1 output compare B match output) PD5 OC1A (timer/counter1 output compare A match output)
19
PD6 ICP (timer/counter1 input capture pin) PD7 OC2 (timer/counter2 utput compare match output) 9
RESET
Masuka reset. Sebuah resetterjadi jika pin ini diberi logika low melebihi periode minimu yang diperlukan
13
XTAL1
Masukan ke inverting oscillator amplifier dan masukan ke rangkaian internal clock
12
XTAL2
Keluaran dari inverting oscillator amplifier
30
AVCC
Catu daya untuk PortA dan ADC
31
AGND
Analog ground
32
AREF
Referensi masukan analog untuk ADC (Sumber : Syahrul, 2012; 13-15)
II.7.
Motor DC Menurut Sumardi (2013, Hal 95), motor DC adalah perangkat mesin
pertama yang mengkonversikan besaran listrik menjadi besaran mekanik. Putaran dan torsi pada motor DC dihasilkan dari gaya tarik menarik dan gaya drong yang dihasilkan oleh medan magnetik pada motor DC tersebut. Motor DC terdiri dari 6 bagian utama, antara lain: •
Axis atau poros motor DC
•
Bagian yang berputar disebut rotor
•
Bagian yang tetap disebut stator
•
Komuntator
20
•
Filed Magnets
•
Brushes Perancangan motor DC berbeda-beda, ada motor DC dengan bagian rotor
nerupakan kumparan kawat dan bagian stator adalah magnet permanen, motor jenis ini disebut motor magnet permanen. Adapula motor DC dengan bagian rotor merupakan magnet permanen dan bagian stator adalah terdiri dari kumparan kawat, motor jenis ini disebut wound field motor. Bentuk fisik motor DC dapat dilihat pada gambar II.8 berikut:
Gambar II.8. Bentuk Fisik Motor DC (Sumber : Syahrul, 2012. Mikrokontroler AVR Atmega8535)
II.8.
LCD (Liquid Crystal Display) Menurut Sumardi (2013: Hal 36), modul LCD (Liquid Crystal Display)
adalah salah satu alat yang digunakan sebagai tampilan. M1632 merupakan modul dot-matrix tampilan kristal cair (LCD) dengan tampilan 16x12 baris dengan konsumsi daya rendah. Modul LCD ini telah dilengkapi dengan chip kontroller yang didesain khusus untuk mengendalikan LCD, berfungsi sebagai driver LCD
21
dan penghasi karakter (character generator). Bentuk fisik dari LCD M1632 dapat dilihat pada gambar II.9 berikut:
Gambar II.9. Bentuk Fisik LCD M1632 (Sumber : Sumardi; 2013; 36)
Sedangkan untuk konfigurasi dari modul LCD M1632 dapat dilihat pada gambar II.10 berikut:
Gambar II.10. Konfigurasi LCD M1632 (Sumber : Sumardi; 2013; 37)
Untuk dapat memahami lebih jauh tentang konfigurasi LCD M1632 maka pada tabel II.2 diberikan deskripsi keterangan kaki-kai LCD M1632 sebagai berikut:
22
Tabel II.2. Keterangan Kaki LCD M1632 No
Symbol Level
Fungsi
1
Vss
-
0 Volt
2
Vcc
-
5 + 10% Volt
3
Vee
-
Pengerak LCD H=memasukkan data
4
RS
H/L
Ins
5
R/W
H/L
H=baca L=tulis
6
E
7
DB0
H/L
8
DB1
H/L
9
DB2
H/L
10
DB3
H/L
11
DB4
H/L
12
DB5
H/L
13
DB6
H/L
14
DB7
H/L
15
V+BL
16
V-BL
L=memasukkan
Enable Signal
Data BUS
Kecerahan LCD
(Sumber : Sumardi; 2013; 36)
Modul LCD tipe M1632 memiliki karakteristik sebagai berikut: •
Terdapat 16x2 karakter huruf yang bisa ditampilkan
•
Setiap huruf terdiri dari 5x7 dot-matrik + cursor.
•
Terdapat 192 macam karakter
•
Terdapat 80x8 bit display RAM (maksimal 80 karakter)
•
Memiliki kemampuan penulisan dengan 8 bit maupun 4 bit
23
•
Dibangun dengan osilator local
•
Satu sumber tegangan 5 volt
•
Otomatis reset saat tegangan dihidupkan
•
Bekerja pada suhu 00 C sampai 550 C
II.9. Perangkat Lunak II.9.1. Pemrograman Bahasa C Pada perancangan program pada alat, program yang digunakan adalah pemrograman bahasa C. Untuk dapat memahami bagaimana suatu program ditulis, maka struktur dari program harus dimengerti terlebih dahulu, atau sebagai pedoman penulis program (programmer) bagaimana seharusnya program tersebut ditulis. Struktur dari program C dapat dilihat sebagai kumpulan dari sebuah atau lebih fungsi-fungsi. Fungsi pertama yang harus ada di program C yang sudah ditentukan namanya, yaitu fungsi main(). Artinya program C minimal memiliki satu fungsi (fungsi main()). Fungsi-fungsi lain selain fungsi utama bisa dituliskan setelah atau sebelum fungsi utama dengan deskripsi prototype fungsi pada bagian awal program. Bisa juga dituliskan pada file lain yang apabila kita ingin memakai atau memanggil fungsi dalam file lain tersebut, kita harus menuliskan header filenya, dengan preprocessor directive #include. File ini disebut file pustaka (library file).
24
II.9.2. CodeVisionAVR Menurut Sumardi, (2013: Hal 12-13), CodeVision AVR compiler (CV AVR) merupakan compiler bahasa C untuk AVR. CV AVR ini dapat berjalan di bawah sistem operasi Windows 9x, Me, NT, 2000 dan XP. CV AVR ini dapat mengimplementasikan hampir semua instruksi bahasa C yang sesuai dengan arsitektur AVR, bahkan terdapat beberapa keunggulan tambahan untuk memenuhi keunggulan spesifik dari AVR. Hasil kompilasi objek CV AVR bisa digunakan sebagai source debug dengan AVR Studio debugger dari ATMEL. Adapun tampilan dari perangkat lunak AVRCodeVision yang digunakan untuk menulis program
yang nantinya akan dimasukkan ke dalam memori
mikrokontroler ATmega8535 adalah seperti pada Gambar II.12. berikut.
Gambar II.11. Tampilan Perangkat Lunak CodeVisionAVR (Sumber : www.hpinfotech.com) Selain pustaka standar bahasa C, CVAVR juga menyediakan pustaka tambahan yang sangat membantu pemrograman AVR, yaitu: •
Alphanumeric LCD modules,
•
Philips 12C bus,
•
National semiconductor LM75 temperature sensor,
25
•
Philips PCF8563, PCF8583, Maxim/Dallas semiconductor DS 1302 dan DS 1307 real time clocks,
•
Maxim/Dallas semiconductor 1 wire protocol,
•
Maxim/Dallas semiconductor DS 1820, DS28S20, DS18B20 Temperature sensor,
•
Maxim/Dallas semiconductor DS 1621 Thermometer/Thermostat,
•
Maxim/Dallas semiconductor DS2430 and DS2433 EEPROMs,
•
SPI,
•
Power management,
•
Delays,
•
Gray Code Conversion.
II.9.3. Visual Basic .NET Hampir semua orang, terutama para pemrogram mengenal dengan baik Visual Basic, yaitu bahasa pemrograman berbasis Graphical User Interface (GUI) buatan Microsoft yang mampu membuat setiap pekerjaan menjadi mudah dan mampu meningkatkan produktivitas pemrograman. (Didik Dwi Prasetyo, 2005, hal: 17) Menurut Didik Dwi Prasetyo (2005: hal 18-19), sebagai salah satu bahasa pemrograman yang terpaket di dalam Visual Studio .NET, Visual Basic .NET dapat memanfaatkan semua kemampuan yang telah tersedia. Begitu juga dengan kekurangan-kekurangan dari Visual Basic, semua sudah tidak ditemukan lagi pada Visual Basic .NET. Selain itu, fitur-fitur baru juga akan ditemukan pada versi ini, di antaranya:
26
Fitur-fitur yang lebih lengkap untuk mendukung pemrograman berorientasi objek: •
Kemampuan untuk menangani kesalahan (error handling) yang lebih terstruktur
•
Kamampuan baru untuk bekerja dengan console
•
Dukungan inherent pada XML (Extensible Markup Language) dan Web Services
•
Pendekatan aplikasi desktop yang lebih baik menggunakan Windows Forms
•
Pemrograman database yang lebih baik, melaluinpendekatan ADO.NET
•
IDE (Inegrated Develo[ment Environment) yang bekerja lebih cepat dan lebih responsive dalam menerima perintah Sebagai bukti bahwa Visual Basic .NET memiliki kemampuan lebih,
adanya dukungan .NET Framwork memungkinkan untuk mengembangkan berbagai aplikasi seperti aplikasi windows, aplikasi web, aplikasi web mobile, bahkan sampai pembuatan web service, menggunakan pemrograman Visual Basic .NET. (Didik Dwi Prasetyo, 2005, hal: 18).
II.9.4. Perangkat Lunak Downloader Adapun perangkat lunak yang penulis gunakan untuk men-download program ke dalam mikrokontroler Atmega8 adalah AVRDude GUI v1.3. Dengan menggunakan software ini kita dapat menginputkan file *.hex yang telah di compile oleh software Code Vision AVR, kedalam Mikrokontroler Atmega8. Berikut tampilan AVRDude GUI v1.3. pada gambar II.13. :
27
Gambar II.12. Interface AVRDude GUI v1.3 (Sumber : http://www.avrdude.com)
II.10. Flowchart Flowcharting adalah suatu teknik untuk menyusun rencana program yang telah diperkenalkan dan telah dipergunakan oleh kalangan pemrogram komputer sebelum algoritma menjadi populer. Flowchart adalah untaian simbol gambar (chart) yang menunjukkan aliran (flow) dari proses terhadap data. Seorang pemrogram harus mampu membuat flowchart, harus mampu membaca dan mengerti flowchart, dan sanggup menerjemahkan flowchart ke algoritma dan sebaliknya. Adapun simbol – simbol yang sering digunakan pada diagram alir / flowchart ditunjukkan pada tabel II.3 berikut :
28
Tabel II.3. Simbol – Simbol Flowchart Simbol
Arti
Keterangan
Menyatakan kegiatan yang akan Process ditampilkan dalam diagran alir.
Digunakan untuk mewakili data masuk, Data atau data keluar.
Berupa pertanyaan atau penentuan Decision suatu keputusan.
Garis alir
Menunjukkan arah aliran proses.
Untuk menandai awal atau akhir Terminal program.
Preparation
Untuk inisialisasi suatu nilai.
Sebagai penghubumg dalam satu Connector halaman.
Off Page
Sebagai penghubung antar halaman.
Connector
(Sumber : Dr.Suarga,M.sc.,M.Math.,Ph D., 2012. Algoritma dan Pemrograman)