UNIVERSITAS GUNADARMA FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI JURUSAN SISTEM KOMPUTER
PROYEK SISTEM TERTANAM FLOOD SENSOR WITH LCD BERBASIS ATMEGA 8535 Disusun Oleh : (Rahmat Ali (Rio Ramski (Satya Ariyono
25111775) 26111252) 26111646)
Diajukan Guna Melengkapi Sebagian Syarat Dalam Kelulusan Praktikum Sistem Tertanam
UNIVERSITAS GUNADARMA 2014
LEMBAR PENGESAHAN
Judul Makalah
: Flood Sensor With LCD Berbasis ATMega 8535
Nama / NPM
: 1. Rahmat Ali
(25111775)
2. Rio Ramski
(26111252)
3. Satya Ariyono
(26111646)
No
Penguji 1
Penguji 2
(…………………….)
(…………………….)
Penguji 3
Penguji 4
(…………………….)
(…………………….)
NAMA NAMA
NILAI NILAI ALAT
MAKALAH
PRESENTASI
TOTAL
Depok, PJ. Praktikum Sistem Tertanam
Rizky Pratama Putra P., Amd
ii
LEMBAR PENGESAHAN
Judul Makalah
: Flood Sensor With LCD Berbasis ATMega 8535
Nama / NPM
: 1. Rahmat Ali
(25111775)
2. Rio Ramski
(26111252)
3. Satya Ariyono
(26111646)
No
Penguji 1
Penguji 2
(…………………….)
(…………………….)
Penguji 3
Penguji 4
(…………………….)
(…………………….)
NAMA NAMA
NILAI NILAI ALAT
MAKALAH
PRESENTASI
TOTAL
Depok, PJ. Praktikum Sistem Tertanam
Rizky Pratama Putra P., Amd
ii
PERNYATAAN ORIGINALITAS & PUBLIKASI
Yang bertanda tangan di bawah ini, 1. Rahmat Ali
(25111775)
2. Rio Ramski
(26111252)
3. Satya Ariyono
(26111646)
Dengan ini menyatakan bahwa hasil penulisan karya kami yang telah kami buat ini merupakan hasil karya sendiri dan benar keasliannya. Segala kutipan d alam bentuk apa pun telah mengikuti kaidah, dan etika yang berlaku. Mengenai isi dan segala yang tercantum dalam pembuatan makalah ini adalah tanggung jawab kami selaku penulis. Demikian, pernyataan ini kami buat dalam keadaan sadar dan tidak dipaksak an.
Depok, 10 Mei 2014
(Satya Ariyono)
iii
ABSTRAKSI Satya Ariyono. 26111646 Flood Sensor With LCD Berbasis ATMega 8535 Makalah. Fakultas Ilmu Komputer dan Teknologi Tekno logi Informasi. Universitas Gunadarma. 2014 Kata Kunci: Buzzer, LCD, LED, Mikrokontroler, Sensor ( xii + 33) Penelitian ini dimaksudkan untuk membuat suatu sistem informasi mobile yang diberi nama Flood nama Flood Sensor With LCD Berbasis ATMega AT Mega 8535. 8535. Sistem pengontrol pada alat ini dikendalikan oleh Mikrokontroler ATMega8535, menggunakan satu buah LCD sebagai informasi berupa teks, 3 buah LED sebagai tanda bahaya dan satu bu ah Buzzer sebagai tanda bunyi bahwa banjir telah melewati batas waspada. Sistem ini bekerja ketika sensor membaca ketinggian air dari suatu tempat dan daerah yang kemungkinan besar sering terjadinya banjir. Air di sini berupa d ata Analog yang kemudian sensor tersebut diproses di dalam mikrokontroler dengan menggunakan logika program. Setelah itu hasil dari pemrosesan tersebut diterjemahkan ke dalam data digital melalui mikrokontroler dan dikirim serta dipresentasikan pada LCD dan nyala LED. LCD akan ditampilkan sebuah karakter kata yang menggambarkan ketinggian air pada sensor begitupun dengan output LED. Jika tinggi air masih dalam keadaan normal atau aman, semua LED hijau akan menyala dan LCD akan menampilkan kata Aman. Jika tinggi air mengindikasikan Siaga, maka indikator LED berwarna kuning akan menyala dan LCD menampilkan kata Siaga. Jika tinggi air dalam keadaan Waspada maka LED merah menyala dan LCD tampil kata Waspada. Jika ketinggian air pada status Bahaya maka Buzzer akan berbunyi dan LCD menampilkan kata Bahaya.
Daftar Pustaka ( 2013 – 2013 – 2014 2014 )
iv
KATA PENGANTAR Puji syukur kami panjatkan ke hadirat Tuhan Yang Maha Esa, karena dengan pertolonganNya kami dapat menyelesaikan proyek ‘Flood Sensor With LCD Berbasis ATMega 8535’. Meskipun banyak rintangan dan hambatan yang kami alami dalam proses pengerjaannya tetapi kami berhasil menyelesaikannya dengan baik. Dengan keberhasilan dalam pengerjaan proyek tersebut, tak lupa kami mengucapkan terimakasih kepada:
Rizky Pratama Putra P., Amd sebagai Penanggung Jawab Praktikum yang telah memberi ketentuan-ketentuan kepada penulis dalam pembuatan makalah dan proyek ini.
Delwyn Antaryasa, sebagai Asisten Pembimbing dan Penanggung Jawab Shift yang telah membantu dan membimbing proses pembuatan makalah dan proyek ini.
Kedua orang tua penulis, yang telah memberikan dorongan dan motivasi sehingga makalah ini dapat diselesaikan.
Rekan-rekan kelompok atas kerjasama pembuatan proyek serta 3KB01 yang telah memberi bantuan, semangat, dukungan dan doanya. Tentunya ada hal-hal yang ingin kami berikan kepada masyarakat dari hasil
proyek ini. Karena itu kami berharap proyek ini dapat menjadi sesuatu yang berguna di masa yang akan datang bagi kita bersama. Semoga proyek yang kami buat ini dapat membuat kita mencapai kehidupan yang lebih baik lagi. Depok, 10 Mei 2014
Penulis
v
DAFTAR ISI
Halaman Judul ............................................. .............................................................
i
Lembar Pengesahan .................................................................................................
ii
Pernyataan Originalitas dan Publikasi ...................................................................... iii Abstrak ............................................... ...................................................................... iv Kata Pengantar .........................................................................................................
v
Daftar Isi ............................................. ....................................................................... vi Daftar Gambar ............................................. ............................................................ viii Daftar Tabel ............................................................................................................... ix BAB 1 PENDAHULUAN .....................................................................................
1
1. 1.
Latar Belakang Masalah ................................................... ...............
1
1. 2.
Pembatasan Masalah ............................................... ........................
1
1. 3.
Tujuan Penelitian .............................................................................
2
1. 4.
Metode Penelitian ............................................................................
2
1. 5.
Sistematika Penelitian .....................................................................
3
BAB 2 LANDASAN TEORI ................................................ .................................
4
BAB 3 PERANCANGAN SISTEM .............................................. .......................
22
3. 1.
Analisa Rangkaian Secara Blok Diagram ......................................
22
3. 2.
Analisa Rangkaian Secara Detail ...................................................
24
3. 3.
Flowchart ............................................... .........................................
25
3. 4.
Analisa Logika Program ................................................... ..............
26
vi
BAB 4 CARA KERJA ALAT ....................................................... ........................
29
BAB 5 PENUTUP .................................................................................................
30
5. 1.
Kesimpulan ......................................................................................
30
5. 2.
Saran ................................................................................................
30
DAFTAR PUSTAKA ................................................... ..........................................
33
vii
DAFTAR GAMBAR Gambar 2.1. Battery 9 Volt ............................................................. ....................... 4 Gambar 2.2. Resistor 220k ............................................ ......................................... 6 Gambar 2.3. IC ATMega 8535 .............................................. ................................ 7 Gambar 2.4. Konfigurasi Pin ATMega 8535 ......................................................... 11 Gambar 2.5. IC Regulator ...................................................................................... 15 Gambar 2.6. LCD ................................................... ................................................. 16 Gambar 2.7. Buzzer ................................................................................................ 20 Gambar 2.8. LED ................................................................................................... 21
viii
DAFTAR TABEL
Tabel 2.1. Kode Warna Resistor ........................................................................ 6 Tabel 2.2. Fungsi Khusus Port B ....................................................................... 12 Tabel 2.3. Fungsi Khusus Port C ....................................................................... 13 Tabel 2.4. Fungsi Khusus Port D ....................................................................... 14 Tabel 2.5. Konfiguras Pin LCD 2x16 ................................................................ 17
ix
BAB I PENDAHULUAN 1. 1.
Latar Belakang
Mikon lebih sering digunakan dibanding mikroprosesor karena mikon lebih mudah digunakan. Salah satu contoh mikon adalah Mikrokontroler ATMega 8535. ATMega 8535 sendiri merupakan IC yang dapat digunakan untuk berbagai macam aplikasi, salah satunya adalah untuk aplikasi proyek Flood Sensor with LCD dimana IC ATMega akan mengatur input dari sensor dan menghasilkan output berupa teks pada LCD, nyala Led dan sinyal bunyi oleh Buzzer. IC ATMega8535 juga salah satu keluaran ATMEL yang dapat diprogram menggunakan port serial atau paralel. Penggunaan IC tersebut memiliki beberapa keuntungan dan keunggulan, antara lain tingkat keandalan yang tinggi, komponen perangkat keras eksternal yang lebih sedikit, kemudahan dalam pemrograman, hemat dari segi biaya, dan dapat beroperasi hanya dengan satu chip dan beberapa komponen dasar seperti kristal, resistor dan kapasitor. IC ATMega 8535 memiliki program internal yang mudah untuk dihapus, direset dan diprogram kembali secara berulang-ulan g.
1. 2.
Pembatasan Masalah
Agar penulisan ini terarah sesuai dengan tujuan yang dicapai maka penulis membuat beberapa batasan masalah. Adapun batasan masalah pada penulisan ini adalah sebagai berikut:
Pembahasan dasar teori, Mikrokontroler ATMega 8535, ADC, bahasa pemrograman C adalah sebatas dari perancangan sistem.
Suatu sensor akan dikirimkan melalui mikorkontroler yang kemudian LCD akan memunculkan karakter teks berupa tanda bahaya
1
2
Led berperan sebagai indikator sinyal tanda bahaya pada sistem Flood Sensor
1. 3.
Tujuan Penelitian
Adapun tujuan dari penulisan makalah ini adalah: 1. Membuat sistem Flood Sensor seperi miniatur sensor untuk siaga bahaya banjir pada sisi sungai. 2. Menjelaskan analisa rangkaian dan program dari sistem Flood Sensor. 3. Menjelaskan cara kerja dari sistem Flood Sensor
1. 4.
Metode Penelitian
Untuk mendapatkan data yang didapat, penulis harus menyelesaikan makalah ini dengan baik, adapun metode yang dipakai pada pembuatan makalah ini, yaitu:
1. Metode Studi Kepustakaan Pengumpulan data secara teoritis sebagai bahan pembanding dan acuan dalam pengumpulan data-data yang diperoleh baik dari buku ataupun internet. Metode kepustakaan dilakukan untuk mendapatkan landasan teori yang kuat yang berkaitan dengan berbagai permasalahan yang muncul dalam proses pembuatan alat ini. 2. Metode Lapangan Pembuatan maket dan peraga dengan beberapa kali percobaan pada alat untuk mengetahui kinerja sistem alat tersebut agar berjalan sesuai yang diinginkan. 3. Metode Gabungan Pada metode ini menggabungkan metode lapangan dan Studi Kepustakaan dengan menerapkan dan menganalisa cara kerja dari alat peraga.
3
1. 5.
Sistematika Penulisan
Untuk memberikan gambaran yang jelas mengenai penulisan ini, maka penulis akan menguraikan isi tulisan secara garis besar. Adapun sistematika penulisan antara lain:
BAB 1
PENDAHULUAN Bab ini berisi tentang latar belakang masalah, batasan masalah, tujuan penelitian, metode penelitian, dan sistematika penulisan dari penyusunan makalah pembuatan alat.
BAB 2
LANDASAN TEORI Bab ini berisi uraian tentang teori-teori yang mendukung dan yang berkaitan dengan pembuatan alat ini.
BAB 3
PERANCANGAN SISTEM Bab ini berisi tentang analisa rangkaian secara blok diagram, analisa rangkaian secara detail, dan analisa logika program dari Sistem Flood Sensor
BAB 4
CARA KERJA ALAT Bab ini berisi uraian terhadap cara kerja sistem alat Flood S ensor yang telah dirancang
BAB 5
PENUTUP Bab ini berisi tentang kesimpulan dari perancangan Flood Sensor dengan Mikrokontroler ATMega 8535 serta saran-saran hasil evaluasi yang perlu diperhatikan baik dalam kerja perancangan dan penulisan.
BAB II LANDASAN TEORI
2. 1.
Baterai
Vcc yang digunakan pada proyek Sistem Flood Sensor ini adalah Baterai 9 Volt. Yang berfungsi sebagai media penyimpan dan penyedia energi listrik. Sumber listrik yang digunakan sebagai pembangkit power dalam bentuk arus searah (DC). Baterai memiliki prinsip kerja yaitu dengan cara mengubah energi kimia yang terkandung didalamnya menjadi energi listrik melalui reaksi elektro kima, Redoks (Reduksi – Oksidasi). Batere terdiri dari beberapa sel listrik, sel listrik tersebut menjadi penyimpan energi listrik dalam bentuk energi kimia. Sel batere tersebut elektroda – elektroda. Elektroda negatif disebut katoda, yang berfungsi sebagai pemberi elektron. Elektroda positif disebut anoda yang berfungsi sebagai penerima elektron. Antara anoda dan katoda akan mengalir arus yaitu dari kutub positif (anoda) ke kutub negatif (katoda). Sedangkan ele ctron akan mengalir dari ktoda menuju anoda.
Gambar 2.1. Battery 9 Volt http://shop.waayoo.com/index.php?route=product/product&product_id=226
4
5
2. 2.
Resistor
Resistor adalah komponen dasar elektronika yang digunakan untuk membatasi jumlah arus yang mengalir dalam suatu rangkaian. Kemampuan resistor dalam menghambat arus listrik sangat beragam disesuaikan dengan nilai resistansi resistor tersebut. Satuan resistansi dari suatu resistor disebut Ohm atau dilambangkan dengan symbol Ω (Omega). Resistor komposisi karbon terdiri dari sebuah unsur resistif berbentuk tabung dengan kawat atau tutup logam pada kedua ujungnya. Badan resistor dilindungi dengan cat atau plastik. Resistor komposisi karbon lawas mempunyai badan yang tidak terisolasi, kawat penghubung dililitkan disekitar ujung unsur resistif dan kemudian disolder. Resistor yang sudah jadi dicat dengan kode warna sesuai dengan nilai resistansinya. Unsur resistif dibuat dari campuran serbuk karbon dan bahan isolator (biasanya
keramik).
Resin
digunakan
untuk
melekatkan
campuran.
Resistansinya ditentukan oleh perbandingan dari serbuk karbon dengan bahan isolator. Resistor komposisi karbon sering digunakan sebelum tahun 1970-an, tetapi sekarang tidak terlalu populer karena resistor jenis lain mempunyai karakteristik yang lebih baik, seperti toleransi, kemandirian terhadap tegangan (resistor komposisi karbon berubah resistansinya jika dikenai tegangan lebih), dan kemandirian terhadap tekanan/regangan. Selain itu, jika resistor menjadi lembab, panas solder dapat mengakibatkan perubahan resistansi dan resistor jadi rusak. Walaupun begitu, resistor ini sangat reliabel jika tidak pernah diberikan tegangan lebih ataupun panas lebih. Resistor ini masih diproduksi, tetapi relatif cukup mahal. Resistansinya berkisar antara beberapa miliohm hingga 22M ohm. Nilai resistansi resistor dapat ditemukan pada bodi resistor tersebut biasanya berupa kode gelang warna atau angka (pada jenis surface mounted).
6
Gambar tabel 2.1. Kode warna resistor [http://www.infoservicetv.com/tabel-kode-warna-resistor.html]
Resistor merupakan salah satu komponen penting yang digunakan dalam pembuatan rangkaian Flood Sensor. Dibutuhkan tiga Resistor yang masing-masing bermuatan sama yaitu 220k.
Gambar 2.2. Resistor 220k entesla.com
7
2. 3.
Mikrokontroler ATMega 8535
Mikrokontroler adalah IC yang dapat diprogram berulang kali, baik ditulis atau dihapus (Agus Bejo, 2007). Biasanya digunakan untuk pengontrolan otomatis dan manual pada perangkat elektronika.
Gambar 2.3. IC ATMega 8535 http://produk-inovatif.com/wp-content/uploads/2013/06/atmega8535-1.jpg
Beberapa tahun terakhir, mikrokontroler sangat banyak digunakan terutama dalam pengontrolan robot. Seiring perkembangan elektronika, mikrokontroler dibuat semakin kompak dengan bahasa pemrograman yang juga ikut berubah. Salah satunya adalah mikrokontroler AVR ( Alf and Vegard’s Risc processor ) ATmega8535 yang menggunakan teknologi RISC (Reduce Instruction Set Computing ) dimana program berjalan lebih cepat karena hanya membutuhkan satu siklus clock untuk mengeksekusi satu instruksi program. Secara umum, AVR dapat dikelompokkan menjadi 4 kelas, yaitu kelas ATtiny, keluarga AT90Sxx, keluarga ATmega, dan AT86RFxx. Pada dasarnya yang membedakan masing-masing kelas adalah memori, peripheral, dan fungsinya.
8
Dari segi arsitektur dan instruksi yang digunakan, mereka bisa dikatakan hampir sama. Mikrokontroler AVR ATmega8535 memiliki fitur yang cukup lengkap. Mikrokontroler AVR ATmega8535 telah dilengkapi dengan ADC internal , EEPROM internal , Timer/Counter, PWM, analog comparator, dll (M.Ary Heryanto, 2008). Sehingga dengan fasilitas yang lengkap ini memungkinkan kita belajar mikrokontroler keluarga AVR dengan lebih mudah dan efisien, serta
dapat
mengembangkan
kreativitas
penggunaan
mikrokontroler
ATmega8535. Fitur-fitur yang dimiliki oleh mikrokontroler ATmega8535 adalah sebagai berikut: 1. Saluran I/O sebanyak 32 buah, yaitu port A, port B, port C, dan port D. 2. ADC internal sebanyak 8 saluran. 3. Tiga buah Timer/Counter dengan kemampuan pembandingan. 4. CPU yang terdiri atas 32 buah register. 5. SRAM sebesar 512 byte. 6. Memori Flash sebesar 8 kb dengan kemampuan Read While Write. 7. Port antarmuka SPI 8. EEPROM sebesar 512 byte yang dapat diprogram saat operasi. 9. Antarmuka komparator analog. 10. Port USART untuk komunikasi serial. 11. Sistem mikroprosesor 8 bit berbasis RISC dengan kecepatan maksimal 16 MHz.
2. 3. 1.
Konstruksi ATmega8535
Mikrokontroler ATmega8535 memiliki 3 jenis memori, yaitu memori program, memori data dan memori EEPROM. Ketiganya memiliki ruang sendiri dan terpisah.
9
a) Memori program ATmega8535 memiliki kapasitas memori progam sebesar 8 Kbyte yang terpetakan dari alamat 0000h – 0FFFh dimana masing-masing alamat memiliki lebar data 16 bit. Memori program ini terbagi menjadi 2 bagian yaitu bagian programboot dan bagian program aplikasi.
b) Memori data ATmega8535 memiliki kapasitas memori data sebesar 608 b yte yang terbagi menjadi 3 bagian yaitu register serba guna, register I/O dan SRAM. ATmega8535 memiliki 32 byte register serba guna, 64 byte register I/O yang dapat diakses sebagai bagian dari memori RAM (menggunakan instuksi LD atau ST) atau dapat juga diakses sebagai I/O (menggunakan instruksi IN atau OUT), dan 512 byte digunakan untuk memori data SRAM.
c) Memori EEPROM ATmega8535 memiliki memori EEPROM sebesar 512 byte yang terpisah dari memori program maupun memori data. Memori
EEPROM
ini
hanya
dapat
diakses
dengan
menggunakan register-register I/O yaitu register EEPROM Address, register EEPROM Data, dan register EEPROM Control . Untuk mengakses memori EEPROM ini diperlakukan seperti mengakses data eksternal, sehingga waktu eksekusinya relatif lebih lama bila dibandingkan dengan mengakses data d ari SRAM.
10
ATmega8535 merupakan tipe AVR yang telah dilengkapi dengan 8 saluran ADC internal dengan fidelitas 10 bit. Dalam mode operasinya, ADC ATmega8535 dapat dikonfigurasi, baik secara single ended input maupun differential input . Selain itu, ADC ATmega8535 memiliki konfigurasi pewaktuan, tegangan referensi, mode operasi, dan kemampuan filter derau yang amat fleksibel, sehingga dengan mudah disesuaikan dengan kebutuhan ADC itu sendiri. ATmega8535 memiliki 3 modul timer yang terdiri dari 2 buah timer/counter 8 bit dan 1 buah timer/counter 16 bit. Ketiga modul timer/counter ini dapat diatur dalam mode yang berbeda seca ra individu dan tidak saling mempengaruhi satu sama lain. Selain itu, semua timer/counter juga dapat difungsikan sebagai sumber interupsi. Masingmasing timer/counter ini memiliki register tertentu yang digunakan untuk mengatur mode dan cara kerjanya. Serial Peripheral Interface (SPI) merupakan salah satu mode komunikasi serial syncrhronous kecepatan tinggi yang dimiliki oleh ATmega8535. Universal Syncrhronous and Asyncrhronous Serial Receiver and Transmitter (USART) juga merupakan salah satu mode komunikasi serial yang dimiliki oleh ATmega8535. USART merupakan komunikasi yang memiliki fleksibilitas tinggi, yang dapat digunakan untuk melakukan transfer data baik antar mikrokontroler maupun dengan modul-modul eksternal termasuk PC yang memiliki fitur UART. USART
memungkinkan
transmisi
data
baik
secara
syncrhronous maupun asyncrhronous, sehingga dengan memiliki USART pasti kompatibel dengan UART. Pada ATmega8535, secara umum pengaturan mode syncrhronous maupun asyncrhronous adalah sama. Perbedaannya hanyalah terletak pada sumber clock saja. Jika pada mode asyncrhronous masing-masing peripheral memiliki sumber clock sendiri, maka pada mode syncrhronous hanya
11
ada satu sumber clock yang digunakan secara bersama-sama. Dengan demikian, secara hardware untuk mode asyncrhronous hanya membutuhkan 2 pin yaitu TXD dan RXD, sedangkan untuk mode syncrhronous harus 3 pin yaitu TXD, RXD dan XCK.
2. 3. 2.
Konfigurasi Pin pada Mikrokontroler ATMega 85335
Gambar 2.4. Konfiguras Pin ATMega 8535 repository.usu.ac.id/bitstream/123456789/20194/4/Chapter%20II.pdf = IC ATmega 8535
Konfigurasi pin ATmega8535 dengan kemasan 40 pin DIP ( Dual Inline Package) dapat dilihat pada gambar 2.1. Dari gambar di
12
atas dapat dijelaskan fungsi dari masing-masing pin Atmega8535 sebagai berikut:
VCC merupakan pin yang berfungsi sebagai masukan catu daya.
GND merukan pin Ground . Port A (PortA0…PortA7) merupakan pin input/output dua arah dan pin masukan ADC.
Port B (PortB0…PortB7) merupakan pin input/output dua arah dan dan pin fungsi khusus, seperti dapat dilihat pada tabel di bawah ini.
Pin
Fungsi Khusus
PB7
SCK (SPI Bus Serial Clock )
PB6
MISO (SPI Bus Master Input/ Slave Output )
PB5
MOSI (SPI Bus Master Output/ Slave Input )
PB4
SS (SPI Slave Select Input )
PB3
AIN1 ( Analog Comparator Negative Input ) OC0 (Timer/Counter0 Output Compare Match Output )
PB2
AIN0 ( Analog Comparator Positive Input ) INT2 ( External Interrupt 2 Input )
PB1
T1 (Timer/ Counter1 External Counter Input )
PB0
T0 T1 (Timer/Counter External Counter Input )
13
XCK (USART External Clock Input/Output )
Tabel 2.2 Fungsi Khusus Port B
Port C (PortC0…PortC7) merupakan pin input/output dua arah dan pin fungsi khusus, seperti dapat dilihat pada tabel dibawah ini.
Pin
Fungsi khusus
PC7
TOSC2 ( Timer Oscillator Pin2)
PC6
TOSC1 ( Timer Oscillator Pin1)
PC5
Input/Output
PC4
Input/Output
PC3
Input/Output
PC2
Input/Output
PC1
SDA ( Two-wire Serial Buas Data Input/Output Line)
PC0
SCL ( Two-wire Serial Buas Clock Line)
Tabel 2.3 Fungsi Khusus Port C
Port D (PortD0…PortD7) merupakan pin input/output dua arah dan pin fungsi khusus, seperti yang terlihat pada tabel dibawah ini.
14
Pin
Fungsi khusus
PD7
OC2 (Timer/Counter Output Compare Match Output )
PD6
ICP (Timer/Counter1 Input Capture Pin)
PD5
OC1A (Timer/Counter1 Output Compare A Match Output)
PD4
OC1B (Timer/Counter1 Output Compare B Match Output)
PD3
INT1 (External Interrupt 1 Input)
PD2
INT0 (External Interrupt 0 Input)
PD1
TXD (USART Output Pin)
PD0
RXD (USART Input Pin) Tabel 2.4 Fungsi Khusus Port D
RESET merupakan pin yang digunakan untuk me-reset mikrokontroler.
XTAL1 dan XTAL2 merupakan pin masukan clock eksternal.
AVCC merupakan pin masukan tegangan untuk ADC.
AREFF merupakan pin masukan tegangan referensi ADC.
15
2. 4.
IC Regulator
Gambar 2.5. IC Regulator http://diditnote.blogspot.com/2013/02/ic-regulator-tegangan.html
IC Regulator tegangan berfungsi sebagai filter tegangan agar sesuai dengan keinginan. IC regulator tegangan secara garis besar dapat dibagi menjadi dua, yakni regulator tegangan tetap (3 kaki) dan regulator tegangan yang dapat diatur (3 kaki dan banyak kaki). Kaki di sini menyatakan terminal IC. IC regulator tegangan tetap (3 kaki) yang sekarang ini populer adalah seri 78 untuk tegangan positif dan seri 79 untuk tegangan negatif. Regulator seri 78 tersedia dalam beberapa variasi tegangan keluaran mulai dari 5 volt sampai 24 volt, seperti 7805, 7806,7808, 7810, 7815, 7818, dan 7824. Besarnya tegangan keluaran IC seri 78 atau 79 ini dinyatakan dengan dua angka terakhir dari serinya. Contoh IC 7805 adalah regulator tegangan positif dengan tegangan keluaran 5 Volt. IC 7915 adalah regulator tegangan negative dengan tegangan -15 Volt. Selain dari regulator tegangan tetap ada juga IC regulator yang tegangannya dapat diatur. Prinsipnya sama dengan regulator OP-amp yang dikemas dalam satu IC misalnya LM317 untuk regulator variabel positif dan LM337 untuk regulator variabel negatif. Hanya saja perlu diketahui supaya
16
rangkaian regulator dengan IC tersebut bisa bekerja, tengangan input harus lebih besar dari tegangan output regulatornya. Biasanya
perbedaan
tegangan
Vin
terhadap
Vout
yang
direkomendasikan ada di dalam datasheet komponen tersebut. Pemakaian heatshink (aluminium pendingin) dianjurkan jika komponen ini dipakai untuk men-catu arus yang besar. Di dalam datasheet komponen seperti ini maksimum bisa dilewati arus mencapai 1 A.
2. 5.
LCD
LCD ( Liquid Cristal Display) berfungsi untuk menampilkan karakter angka, huruf ataupun simbol dengan lebih baik dan dengan konsumsi arus yang rendah. Dalam aplikasinya, LCD 2x16 terbagi menjadi beberapa bagian bentu k, ada yang memakaibacklight , ada juga yang tidak. Kemudian yang memakai backlight , ada yang berwarna hijau dan ada juga yang berwarna biru, tetapi intinya sama, pin yang digunakan sama.
Gambar 2.6. LCD www.parallax.com
Karena LCD sudah dilengkapi perangkat kontrol sendiri yang menyatu dengan LCD, maka kita mengikuti aturan standar yang telah disimpan dalam pengontrolan tersebut. konfigurasi pin yang terdapat dalam LCD adalah:
17
Pin
Simbol
Nilai
Fungsi
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Vss Vdd Vee RS R/W E DB0 DB1 DB2 DB3 DB4 DB5 DB6 DB7 VB+ VB-
0/1 0/1
Power Supply 0 volt (Ground) Power Supply Vcc Setting Contrast 0: instruksi / 1: data input 0: tulis ke LCD / 1: membaca dari LCD Mengaktifkan sinyal Data pin 0 Data pin 1 Data pin 2 Data pin 3 Data pin 4 Data pin 5 Data pin 6 Data pin 7 Power 5 V Power 0 V
01 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 -
Tabel 2.5. Konfigurasi Pin LCD 2x16 www.parallax.com Fungsi display dalam suatu aplikasi microcontroller sangat penting sekali . diantaranya untuk :
Memastikan data yg kita input valid
Mengetahui hasil suatu proses
Memonitoring suatu proses
Mendebug program
Menampilkan pesan Display karakter pada LCD diatur oleh pin EN, RS dan RW:
Jalur EN dinamakan Enable. Jalur ini digunakan untuk memberitahu LCD bahwa anda sedang mengirimkan sebuah data. Untuk mengirimkan data ke
18
LCD, maka melalui program EN harus dibuat logika low “0” dan set pada dua jalur kontrol yang lain RS dan RW. Ketika dua jalur yang lain telah siap, set EN dengan logika “1” dan tunggu untuk sejumlah waktu tertentu ( sesuai dengan datasheet dari LCD tersebut ) dan berikutnya set EN ke logika low “0” lagi. Jalur RS adalah jalur Register Select. Ketika RS berlogika low “0”, data akan dianggap sebagi sebua perintah atau instruksi khusus ( seperti clear screen, posisi kursor dll ). Ketika RS berlogika high “1”, data yang dikirim adalah data text yang akan ditampilkan pada display LCD. Sebagai contoh, untuk menampilkan huruf “T” pada layar LCD maka RS harus diset logika high “1”. Jalur RW adalah jalur kontrol Read/ Write. Ketika RW berlogika low (0), maka informasi pada bus data akan dituliskan pada layar LCD. Ketika RW berlogika high ”1”, maka program ak an melakukan pembacaan memori dari LCD. Sedangkan pada aplikasi umum pin RW selalu diberi logika low ”0”. Pada akhirnya, bus data terdiri dari 4 atau 8 jalur ( bergantung pada mode operasi yang dipilih oleh user ). Pada kasus bus data 8 bit, jalur diacukan sebagai DB0 s/d DB7. Beberapa perintah dasar yang harus dipahami adalah inisialisasi LCD Character: Function Set
Mengatur interface lebar data, jumlah dari baris dan ukuran font karakter
RS
R/W
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
0
0
0
0
1
DL
N
F
X
X
Entry Mode Set
Mengatur increment/ decrement dan mode geser
RS
R/W
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
0
0
0
0
0
0
0
1
I/D
S
19
Display On/ Off Cursor Mengatur status display ON atau OFF, cursor ON/ OFF dan fungsi Cursor Blink RS
R/W
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
0
0
0
0
0
0
1
D
C
B
Clear Display
Perintah ini hapus layar RS
R/W
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
0
0
0
0
0
0
0
0
0
1
Geser Kursor dan Display
Geser posisi kursor atau display ke kanan atau kekiri tanpa menulis atau baca data display. Fungsi ini digunakan untuk koreksi atau pencarian display
2. 6.
RS
R/W
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
0
0
0
0
0
1
S/C
R/L
X
X
Buzzer
Buzzer adalah sebuah komponen elektronika yang berfungsi untuk mengubah getaran listrik menjadi getaran suara. Pada dasarnya prinsip kerja buzzer hampir sama dengan loud speaker, jadi buzzer juga terdiri dari kumparan yang terpasang pada diafragma dan kemudian kumparan tersebut dialiri arus sehingga menjadi elektromagnet, kumparan tadi akan tertarik ke dalam atau keluar, tergantung dari arah arus dan polaritas magnetnya, karena kumparan dipasang pada diafragma maka setiap gerakan kumparan akan menggerakkan diafragma secara bolak-balik sehingga membuat udara bergetar yang akan menghasilkan suara.
20
Gambar 2.7. Buzzer http://www.digikey.com/product-detail/en/CEP-4411AC/102-1125-ND/412384
Buzzer pada rangkaian Flood Sensor di sini berfungsi memberitahukan bahwa ketika sensor menyatakan bahwa tanda bahaya sudah sampai pada ketinggian Overflow maka sensor Buzzer akan berbunyi.
2. 7.
LED
Lampu LED atau kepanjangannya Light Emitting Diode adalah suatu lampu indikator dalam perangkat elektronika yang biasanya memiliki fungsi untuk menunjukkan status dari perangkat elektronika tersebut. Misalnya pada sebuah komputer, terdapat lampu LED power dan LED indikator untuk processor, atau dalam monitor terdapat juga lampu LED power dan power saving.
21
Gambar 2.8. LED cs.wikipedia.org
Lampu LED terbuat dari plastik dan dioda semikonduktor yang dapat menyala apabila dialiri tegangan listrik rendah (sekitar 1.5 volt DC). Bermacam-macam warna dan bentuk dari lampu LED, disesuaikan dengan kebutuhan dan fungsinya. LED (Light Emitting Diode) merupakan sejenis lampu yang akhir-akhir ini muncul dalam kehidupan kita. LED dulu umumnya digunakan pada gadget seperti ponsel atau PDA serta komputer. Sebagai pesaing lampu bohlam dan neon, saat ini aplikasinya mulai meluas dan bahkan bisa kita temukan pada korek api yang kita gunakan, lampu emergency dan sebagainya. Led sebagai model lampu masa depan dianggap dapat menekan pemanasan global karena efisiensinya. Pada rangkaian sistem Flood Sensor menggunakan tiga LED yang masing-masing berwarna merah, kuning dan hijau. Warna hijau untuk keadaan Siaga, warna kuning untuk keadaan Waspada dan warna merah untuk keadaan Overflow.
BAB III PERANCANGAN SISTEM
3. 1.
Analisa Blok Diagram AKTIVATOR
INPUT
PROSES
OUTPUT
SENSOR AIR
ATMEGA8535
LED
BUZZER
LCD
Pada blok diagram di atas terdapat aktifator dan tiga blok di bawahnya yaitu blok input, proses dan output. Pada blok input terdapat sensor air sebagai sensor yang merupakan sistem kendali flood sensor, input ini lalu diproses pada blok proses, pada blok proses ini terdapat mikrokontroler ATMega8535. Setelah proses selesai maka di lanjutkan sebagai finishing sistem pada blok output, pada blok output ini terdapat LED hijau untuk level paling rendah, LED kuning untuk level sedang, LED merah untuk lv tinggi, dan buzzer yang berbunyi untuk level paling atas. LCD juga menampilkan output dalam bentuk karakter sesuai dengan level yang dicapai sebagai bentuk output dari program.
23
3. 2.
Aktifator
Aktifator adalah suatu power supply yang berfungsi untuk memberi masukan tegangan kepada setiap rangkaian dalam sistem. Aktifator dapat berupa catu daya, aki, baterai dan sebagainya. Pada project Flood Sensor with LCD ini menggunakan baterai bertegangan 9 Volt dan ground sebagai aktifatornya.
3. 2. 1.
Input
Pada blok input ini terdapat sensor air sebagai sensor pengukur ketinggian air. Saat terkena air, tegangan akan terhubung dari sensor yang terhubung sumber tegangan dengan sensor yang sudah diatur sesuai dengan level ketinggian. Ketika air menyentuh kedua elektroda (tembaga) maka tegangan 5V akan terhubung dengan output dan sebagian tegangan akan berkurang karena air berfungsi sebagai penghambat. Tegangan keluarannya sebesar 3v s ampai 4.5v dengan jarak antara kedua elektroda + 1cm.
3. 2. 2.
Proses
Pada blok proses ini terdapat IC ATMega 8535. Berikut fungsi IC tersebut:
IC ATMega8535 IC mikrokontroler ATMega8535 berfungsi sebagai pemroses
sinyal input. Saat sinyal input masuk, maka mikrokontroler juga akan mengatur outputnya. Pada kasus kali ini sisi input pada mikrokontroler terdapat pada port B, sedangkan sisi output yang digunakan adalah port A dan port C. Pada perencanaan program, IC ini akan bekerja apabila mendapatkan perubahan nilai logika pada port B, dan merubah nilai sisi output yang berada pada port A dan port C, sedangkan 2 port ini difungsikan sebagai olah sinyal untuk komponen output, yang mana jika berubah nilai input dari port B,
24
maka akan mempengaruhi sistem informasi dari Flood Sensor with LCD. IC ATMega 8535 ini merupakan inti dari pemroses sinyal input dan output, serta sebagai wadah program yang telah dibuat dalam fungsi sebagai inti proses kinerja sistem.
3. 2. 3.
Output
Pada blok output ini terdapat LED, buzzer, dan LCD sebagai informasi untuk pengguna. Output ini dipengaruhi oleh sinyal masukan yang didapatkan pada sensor air. Sistem pada output ini adalah pemberitahuan yang sesuai dengan level sensor yang didapat. Hal ini mengakibatkan LED, buzzer, dan LCD menampilkan informasi sesuai dengan level air yang dibaca oleh sensor.
3. 3.
Analisa Rangkaian Secara Detail
Untuk mengaktifkan rangkaian Flood Sensor with LCD ini dibutuhkan sumber tegangan sebesar 9 volt yang terbagi masing – masing untuk mengaktifkan LED, buzzer, dan LCD yang berfungsi sebagai suplai tegangan komponen melalui pin VS pada komponen tersebut. Saat sensor terkena air maka sensor akan mengubah nilai tegangan pada ATMega 8535 dan IC ATMega 8535 akan memproses masukan sehingga input ini akan diproses yang akhirnya akan menghasilkan output yang bernilai 1 ( High ) pada LED, buzzer, dan LCD. Sedangkan saat sensor tidak terkena air maka sensor akan mengubah juga nilai tegangan pada IC ATMega 8535 dan IC ATMega 8535 juga memproses masukan sehingga input ini akan diproses yang menghasilkan output yang bernilai 0 ( Low ). Dalam mikrokontroler ini akan memproses input dan output dalam bentuk heksadesimal, dengan Port B sebagai input dan Port A dan Port C sebagai output yang nantinya akan dilanjutkan kembali ke LED, buzzer, dan LCD untuk pengaktifan komponen tersebut masing - masing.
25
3. 4.
Flowchart
Mulai
Ya S 1 = Sensor 1
LH = 1
S1
S 2 = Sensor 2
Tidak
S 3 = Sensor 3
LCD “aman”
S 4 = Sensor 4 LH = LED hijau LK = LED kuning
Ya S2
LK = 1 LCD “siaga”
LM = LED merah
Tidak
BUZ = buzzer LCD = lcd
Ya S3
LM = 1 LCD “waspada”
Tidak
Power ON
Ya Input
S4
BUZ = 1 LCD “bahaya”
Tidak
26
3. 5.
Analisa Logika Program
#include
// mengaktifkan library “mega8535”
#include
// mengaktifkan library “delay”
#asm .equ __lcd_port=0x15; PORTC
// mengaktifkan komponen LCD
#endasm
#include
// mengaktifkan library “LCD”
void aman (void);
// memanggil fungsi “aman”
void siaga (void);
// memanggil fungsi “siaga”
void awas (void);
// memanggil fungsi “awas”
void overflow(void);
// memanggil fungsi “overflow”
void main(void){ PORTB = 0xFF; DDRB = 0x00;
// inisialisasi PORT B sebagai input
PORTC = 0x00; DDRC = 0x00;
// inisialisasi PORT C sebagai input
PORTA = 0xFF; DDRA = 0xFF; // inisialisasi PORT A sebagai output
lcd_init(16);
// inisialisasi LCD 16 karakter
lcd_gotoxy(2,0);
// menset pointer baris ke 2 kolom ke
lcd_putsf("FLOOD SENSOR");
//
0 memasukan karakter “FLOOD
SENSOR” delay_ms(500);
while(1){
// memberi delay sebanyak 500 ms
// memberikan fungsi percabangan
bila aktif lcd_gotoxy(2,0); baris 0
// penempatan pointer LCD kolom 2
27
lcd_putsf("FLOOD SENSOR");
// pemberian
karakter
“FLOOD
SENSOR” switch(PINB){
// percabangan switch pada PORT B
case 0b10111111 : aman(); break; //
jika
berlogika
10111111
jika
berlogika
10101111
jika
berlogika
10101011
memanggil “aman” case 0b10101111 : siaga();break; // memanggil “siaga” case 0b10101011 : awas(); break; // memanggil “awas” case 0b10101010 : overflow();break; // jika berlogika 10101010 memanggil “overflow” default : PORTD = 0xFF; lcd_clear(); break; // jika berlogika 11111111 LCD akan menghapus pada bagian baris 2 } } }
void aman (void) {
// blok koding untuk void “aman”
PORTD = 0xFE;
// pengaktifan PORT D sebesar
11111110 lcd_gotoxy(0,1);
// penempatan pointer LCD kolom 0
baris 1 lcd_putsf("
AMAN
");
// pemberian karakter “aman”
}
void siaga (void){
// blok koding untuk void “siaga”
PORTD = 0xFA;
// pengaktifan PORT D sebesar
11111010 lcd_gotoxy(0,1);
// penempatan pointer LCD kolom 0
baris 1 lcd_putsf(" }
SIAGA
");
// pemberian karakter “siaga”
28
void awas (void) {
// blok koding untuk void “awas”
PORTD = 0xEA;
// pengaktifan PORT D sebesar
11101010 lcd_gotoxy(0,1);
// penempatan pointer LCD kolom 0
baris 1 lcd_putsf("
AWAS
");
// pemberian karakter “awas”
}
void overflow (void){
// blok koding untuk void “overflow”
PORTD = 0xAA;
// pengaktifan PORT D sebesar
10101010 lcd_gotoxy(0,1);
// penempatan pointer LCD kolom 0
baris 1 lcd_putsf(" }
BAHAYA
");
// pemberian karakter “bahaya”
CARA KERJA ALAT
Berikut ini akan dijelaskan bagaimana cara kerja alat Flood Sensor with LCD beserta rinciannya.
1. Ketika sensor air tidak berkurang tegangannya, maka nilai tegangan sensor a kan bernilai tetap yaitu bernilai logika 0. Pada port B di mikrokontroler tidak mendapatkan perubahan sinyal, otomatis sistem tetap dan alat per aga diam. 2. Ketika air mengenai sensor paling bawah (level 1), maka nilai logika pada port B.6 akan berubah menjadi 1 yang mengakibatkan output pada LED berwarna hijau yang terpasang pada port Port A.0 akan bernilai 1 dan LCD juga akan menampilkan output berupa karakter yang bertuliskan “ Aman “. 3. Ketika air mengenai sensor bawah (level 2), maka nilai logika pada port B.4 akan berubah menjadi 1 yang mengakibatkan output pada LED berwarna kuning yang terpasang pada port Port A.2 akan bernilai 1 dan LCD juga akan menampilkan output berupa karakter yang bertuliskan “ Siaga “. 4. Ketika air mengenai sensor atas (level 3), maka nilai logika pada port B.2 akan berubah menjadi 1 yang mengakibatkan output pada LED berwarna merah yang terpasang pada port Port A.4 akan bernilai 1 dan LCD juga akan menampilkan output berupa karakter yang bertuliskan “ Waspada “. 5. Ketika air mengenai sensor paling atas (level 4), maka nilai logika pada port B.0 akan berubah menjadi 1 yang mengakibatkan output pada buzzer yang terpasang pada port Port A.6 akan bernilai 1 dan LCD juga akan menampilkan output berupa karakter yang bertuliskan “ Bahaya “.
BAB V PENUTUP
5. 1.
Kesimpulan
Setelah melakukan analisis, percobaan dan perancangan proyek Light Detector Robot secara manual. Dapat disimpulkan bahwa : 1. Flood Sensor merupakan sebuah proyek yang didesain untuk sistem keamanan mobile agar terhindar dari bahaya banjir. Flood Sensor dikendalikan oleh minsys yang telah diprogram oleh user dan sensor air sebagai sensornya. 2. Flood Sensor bekerja berdasarkan sensor ketinggian air, saat ada air yang mengenai sensor maka indikator LED akan menyala dan LCD akan menampilkan kata berdasarkan keadaan yang terjadi. 3. Flood Sensor memiliki beberapa kondisi yaitu:
5. 2.
Level
Output
LCD
1
LED Hijau
Aman
2
LED Kuning
Siaga
3
LED Merah
Waspada
4
Buzzer
Bahaya
Saran
Untuk mendapatkan hasil yang memuaskan dalam perancangan proyek Flood Sensor ini, maka disarankan untuk memerhatikan beberapa hal berikut :
1. Sebelum memulai perancangan proyek ini, buatlah beberapa tahapan secara berurutan agar proses pengerjaan tertata secara rapi dan tidak membuang banyak waktu. 2. Disarankan menggunakan Mynsis.
30
31
3. Disarankan menyusun tahapan kerja untuk merancang Flood Sensor sebagai berikut : i.
Menyediakan komponen-komponen yang dibutuhkan, seperti PCB, Buzzer, MinSys, black housing, dan lain-lain.
ii.
Pembuatan jalur sesuai dengan schematic. Disarankan untuk menggunakan software khusus untuk membuat jalur elektronika pada PCB. Perhatikan secara teliti, jangan sampai ada jalur yang bentrok ataupun salah menghubungkan jalur dengan pin IC maupun ground.
iii.
Setelah selesai, sablon jalur yang telah dibuat pada papan PCB. Apabila hasilnya kurang tebal, gunakan spidol permanent untuk menebalkan jalur tersebut.
iv.
Gunakan Mini Drill untuk membuat lubang-lubang yang dibutuhkan yang nantinya akan dipasangkan komponen pada lubang tersebut.
v.
Selanjutnya proses pelarutan menggunakan larutan FeCl, larutkan PCB pada air (disarankan air panas) yang telah dicampur dengan FeCl dalam wadah plastik (tidak boleh menggunakan wadah berbahan logam). Larutkan sampai logam pada PCB yang tidak terhalangi oleh jalur habis. Lalu bersihkan dengan air bersih.
vi.
Hapus tinta spidol yang menghalangi jalur dengan menggunakan bahan berbahan aerosol atau bisa juga menggunakan bensin.
vii.
Selanjutnya, Gunakan amplas untuk menggesek jalur yang telah dibuat agar timah mudah merekat pada jalur. (Penggesekan tidak boleh terlalu keras).
viii.
Letakkan komponen pada titik yang telah ditentukan. Gunakan solder dan juga timah dengan kualitas yang bagus agar hasilnya memuaskan.
32
ix.
Setelah semua selesai, proses selanjutnya yaitu masukan program yang dibutuhkan ke dalam MynSis. Program harus benar dan tidak boleh salah sedikit pun.
x.
Hubungkan port-port PCB dengan port-port pada Mynsis sesuai dengan program dan schematic.
xi.
Rancang dengan sedemikian rupa dan desain proyek ini sesuai dengan keinginan.
4. Berikan sumber tegangan yang sesuai pada proyek ini. Agar bisa berjalan dengan semestinya berikan sumber tegangan minimal tegangan 9V. 5. Gunakan Acrillic agar Maket pada Flood Sensor terlihat lebih menarik dan spacer untuk penempatan papan PCB terlihat kokoh.