Perangkat Keras Buzze Potensi Mikrokontroller Atmega8535 dan Sensor Ultrasonik sebagai Pendeteksi Dini Banjir

BAB 2 LANDASAN TEORI

2.1 Perangkat Keras

Dalam merancang sebuah peralatan yang cerdas, diperlukan suatu perangkat keras hardware yang dapat mengolah data, menghitung, mengingat dan mengambil pilihan. Mikrokontroler merupakan salah satu jawabannya. Vendor dari mikrokontroler ini ada beberapa macam, diantaranya yang paling terkenal adalah ATMega8535. Selain menggunakan mikrokontroler juga digunakan sensor ultrasonik sebagai pendeteksi jarak obyek dengan cara memancarkan gelombang ultrasonik dengan frekuensi 40 KHz dan kemudian mendeteksi pantulannya. Selain itu juga terdapat beberapa perangkat seperti : Mikrokontroler ATMega 8535, Transistor, Buzzer, LCD dan CVAVR.

2.2 Mikrokontroller ATMega 8535

ATMega8535 memiliki fitur yang cukup lengkap, mulai dari kapasitas memori program dan memori data yang cukup besar, interupsi, timercounter, PWM, USART, TWI, analog comparator, EEPROM internal dan juga ADC internal semuanya ada dalam ATMega8535. Sehingga dengan fitur yang cukup lengkap ini memungkinkan kita untuk dapat merancang suatu sistem yang sederhana sampai dengan sistem yang relatif kompleks hanya dengan menggunakan satu IC saja, yaitu dengan IC ATMega8535. ATMega8535 merupakan salah satu mikrokontroler 8 bit buatan Atmel untuk keluarga AVR. Pada tahun 1997 Atmel mengembangkan AVR Alf and Vegard’s RISC Processor. Mikrokontroler ATmega8535 menggunakan arsitektur RISC Universitas Sumatera Utara Reduced Instruction Set Computing. Beberapa fitur yang dimiliki Mikrokontroler ATmega8535 adalah berbasis RISC dengan kecepatan maksimal 16 MHz, memiliki memori Flash 8K Bytes, 512 Bytes EEPROM Electrically Erasable Programmable Read Only Memory , dan 512 Bytes Internal SRAM. Mikrokontroler ATmega8535 memiliki 2 8-bit TimerCounter, RTC Real Time Counter , 4 PWM chanel, 8-chanel 10-bit ADC, 1 programable serial USART, masterslave SPI serial interface, dan memiliki 32 programmable IO. Sedangkan untuk power, ATmega 8535 dapat dicatu menggunakan tegangan 2.7 – 5.5V untuk ATmega8535L dan 4.5 – 5.5V untuk ATmega8535 dengan frekuensi clock maksimum adalah 16MHz. ATMega8535 adalah mikrokontroler CMOS 8 bit daya rendah berbasis arsitektur RISC. Instruksi dikerjakan pada satu siklus clock, ATMega8535 mempunyai throughput mendekati 1 MIPS per MHz, hal ini membuat ATMega8535 dapat bekerja dengan kecepatan tinggi walaupun dengan penggunaan daya rendah. Mikrokontroler Atmega8535 memiliki beberapa fitur atau spesifikasi yang menjadikannya sebuah solusi pengendali yang efektif untuk berbagai keperluan.

2.2.1 Arsitektur ATMega8535

Mikrokontroler ATMega8535 memiliki arsitektur Harvard, yaitu memisahkan memori untuk kode program dan memori untuk data sehingga dapat memaksimalkan unjuk kerja dan paralelisme. Instruksi-instruksi dalam memori program dieksekusi dalam satu alur tunggal, dimana pada saat satu instruksi dikerjakan instruksi berikutnya sudah diambil pre-fetched dari memori program. Universitas Sumatera Utara Konsep inilah yang memungkinkan instruksi-instruksi dapat dieksekusi dalam setiap satu siklus clock. 32 x 8-bit register serba guna digunakan untuk mendukung operasi pada Arithmetic Logic Unit ALU yang dapat dilakukan dalam satu siklus. 6 dari register serba guna ini dapat digunakan sebagai 3 buah register pointer 16-bit pada mode pengalamatan tak langsung untuk mengambil data pada ruang memori data. Ketiga register pointer 16-bit ini disebut dengan register X gabungan R26 dan R27, register Y gabungan R28 dan R29, dan register Z gabungan R30 dan R31. Hampir semua instruksi AVR memiliki format 16-bit word. Setiap alamat memori program terdiri dari instruksi 16-bit atau 32-bit. Selain register serba guna diatas, terdapat register lain yang terpetakan dengan teknik memory mapped IO selebar 64 Byte. Beberapa register ini digunakan untuk fungsi khusus antara lain sebagai register kontrol TimerCounter, Interupsi, ADC, USART, SPI, EEPROM dan fungsi IO lainnya. Register-register ini menempati memori pada alamat 0x20h – 0x5Fh.

2.2.2 Organisasi Memori

Mikrokontroler ATMega8535 memiliki 3 jenis memori yaitu memori program, memori data dan memori EEPROM. Ketiganya memiliki ruang sendiri dan terpisah. a. Memori Program ATMega8535 memiliki kapasitas memori program sebesar 8 Kbyte yang terpetakan dari alamat 0000h – 0FFFh dimana masing-masing alamat memiliki lebar data 16 bit. Sehingga organisasi memori program seperti ini sering dituliskan dengan 4K x 16 bit. Memori program ini terbagi menjadi 2 bagian yaitu Universitas Sumatera Utara bagian program boot dan bagian program aplikasi. Jika kita tidak menggunakan fitur Boot Loader Flash maka semua kapasitas memori program diatas dapat digunakan untuk program aplikasi. Tetapi jika yang digunakan fitur Boat Loader Flash maka pembagian ukuran kedua bagian ini ditentukan oleh BOOTSZ fuse. b. Memori Data ATMega8535 memiliki kapasitas memori data sebesar 608 Byte yang terbagi menjadi 3 bagian yaitu register serba guna, register IO dan SRAM. 32 byte alamat terendah digunakan untuk register serba guna yaitu R0 – R31. 64 byte berikutnya digunakan untuk register IO yang digunakan untuk mengatur fasilitas seperti timercounter, interupsi, ADC, USART, SPI, EEPROM dan port IO seperti Port A, Port B, Port C dan Port D. Selanjutnya 512 Byte diatasnya 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 IO yaitu register EEPROM Address EEARH-EEARL, register EEPROM Data EEDR dan register EEPROM Control EECR. Untuk mengakses memori EEPROM ini diperlakukan seperti mengakses data eksternal sehingga waktu eksekusinya relatif lebih lama bila dibandingkan dengan mengakses data dari SRAM. Adapun kelebihan dari mikrokontroller adalah sebagai berikut : Pada dasarnya yang membedakan masing – masing kelas adalah memori, peripheral, dan fungsinya. Dari segi arsitektur dan instruksi yang digunakan, Universitas Sumatera Utara mereka bisa dikatakan hampir sama. Oleh karena itu, dipergunakan salah satu AVR produk Atmel, yaitu ATMega 8535. Selain mudah didapatkan dan lebih murah ATMega 8535 juga memiliki fasilitas yang lengkap. Untuk tipe AVR ada 3 jenis yaitu AT Tiny, AVR klasik, AT Mega. Perbedaannya hanya pada fasilitas dan IO yang tersedia serta fasilitas lain seperti ADC,EEPROM dan lain sebagainya. Salah satu contohnya adalah AT Mega 8535. Memiliki teknologi RISC dengan kecepatan maksimal 16 MHz membuat ATMega 8535 lebih cepat bila dibandingkan dengan varian MCS 51. Dengan fasilitas yang lengkap tersebut menjadikan ATMega 8535 sebagai mikrokontroler yang powerfull. Fitur-fitur yang dimiliki oleh mikrokontroler Atmega 8535 adalah sebagai berikut: 1. Saluran IO sebanyak 32 buah, yaitu port A, port B, port C, dan port D. 2. ADC internal sebanyak 8 saluran. 3. Dua buah TimerCounter 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. 12. Dan lain-lainnya. Universitas Sumatera Utara

2.2.3 Konstruksi ATMega8535

Mikrokontroler ATmega8535 memiliki 3 jenis memori, yaitu memori program, memori data dan memori EEPROM. Ketiganya memiliki ruang sendiri dan terpisah. 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 program boot dan bagian program aplikasi. b. Memori data ATmega8535 memiliki kapasitas memori data sebesar 608 byte yang terbagi menjadi 3 bagian yaitu register serba guna, register IO dan SRAM. ATmega8535 memiliki 32 byte register serba guna, 64 byte register IO yang dapat diakses sebagai bagian dari memori RAM menggunakan instuksi LD atau ST atau dapat juga diakses sebagai IO 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 IO 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 dari SRAM. Universitas Sumatera Utara Interupsi ATMega8535 menyediakan 21 macam sumber interupsi yang masing-masing memiliki alamat program vector interupsi. Setiap interupsi yang aktif akan dilayani segera setelah terjadi permintaan interupsi, tetapi jika dalam waktu bersamaan terjadi lebih dari satu interupsi maka prioritas yang akan diselesaikan lebih dulu adalah interupsi yang memiliki nomor urut lebih kecil. Sebagai contoh jika interupsi timer0 overflow dan timer1 overflow terjadi bersamaan maka prioritasnya interupsi timer 1 lebih dulu yang akan diselesaikan karena interupsi timer 1 memiliki nomor urut diatas timer 0. Port IO Semua port keluarga AVR bersifat bi-directional dua arah pada saat berfungsi sebagai port IO digital. Bahkan setiap pin dapat dikonfigurasikan baik sebagai input maupun output secara individu tanpa mempengaruhi pin-pin yang lain. Hal ini dapat dilakukan dengan perintah SBI dan CBI. Pengaturan port IO baik sebagai input maupun output otomatis akan diikuti dengan pengaturan pull- up resistor internal. Meskipun demikian pengaturan pull-up resistor bias saja dinon-aktifkan melalui bit PUD pada register SFIOR. Jika bit PUD diset ‘1’ maka berarti konfigurasi pull-up port IO non-aktif. Tiga alamat memori IO dialokasikan untuk mengatur konfigurasi setiap port IO yaitu : - Data Register PORTx - Data Direction Register DDRx - Data Input Pin PINx Universitas Sumatera Utara Timer Counter 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 secara individu dan tidak saling mempengaruhi satu sama lain. Selain itu semua timer counter juga dapat difungsikan sebagai sumber interupsi. Masing-masing timer counter ini memiliki register tertentu yang digunakan untuk mengatur mode dan cara kerjanya tetapi ada 2 register yang digunakan secara bersama-sama yaitu register TIMSK dan register TIFR. USART Universal Synchronous and Asynchronous 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 synchronous maupun asynchronous sehingga dengan demikian USART pasti kompatibel dengan UART. Pada ATMega8535, secara umum pengaturan mode komunikasi baik synchronous maupun asynchronous adalah sama. Perbedaannya hanyalah terletak pada sumber clock saja. Jika pada mode asynchronous masing-masing peripheral memiliki sumber clock sendiri maka pada mode synchronous hanya ada satu sumber clock yang digunakan secara bersama-sama. Dengan demikian secara hardware untuk mode asynchronous hanya membutuhkan 2 pin yaitu TXD dan RXD sedangkan untuk mode synchronous harus 3 pin yaitu TXD, RXD dan XCK. Universitas Sumatera Utara ATmega8535 merupakan tipe AVR yang telah dilengkapi dengan 8 saluran ADC internal dengan fidelitas 10 bit. Dalammode 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 timercounter 8 bit dan 1 buah timercounter 16 bit. Ketiga modul timercounter ini dapat diatur dalam mode yang berbeda secara individu dan tidak saling mempengaruhi satu sama lain. Selain itu, semua timercounter juga dapat difungsikan sebagai sumber interupsi. Masing-masing timercounter 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. Universitas Sumatera Utara Jika pada mode asyncrhronous masing-masing peripheral memiliki sumber clock sendiri, maka pada mode syncrhronous hanya 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.2.4 Pin-pin pada Mikrokontroler ATmega8535

Gambar 2.1. Konfigurasi pin ATmega8535 Data Sheet AVR Konfigurasi pin ATmega8535 dengan kemasan 40 pin DIP Dual Inline Package dapat dilihat pada gambar 2.1. Dari gambar di atas dapat dijelaskan fungsi dari masing-masing pin Atmega8535 sebagai berikut: 1. VCC merupakan pin yang berfungsi sebagai masukan catu daya. 2. GND merukan pin Ground. Universitas Sumatera Utara 3. Port A PortA0...PortA7 merupakan pin inputoutput dua arah dan pin masukan ADC. 4. Port B PortB0...PortB7 merupakan pin inputoutput dua arah 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 TimerCounter0 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 TimerCounter External Counter Input XCK USART External Clock InputOutput Tabel 2.1 Fungsi Khusus Port B 5. Port C PortC0...PortC7 merupakan pin inputoutput 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 InputOutput Universitas Sumatera Utara PC4 InputOutput PC3 InputOutput PC2 InputOutput PC1 SDA Two-wire Serial Buas Data InputOutput Line PC0 SCL Two-wire Serial Buas Clock Line Tabel 2.2. Fungsi Khusus Port C 6. Port D PortD0...PortD7 merupakan pin inputoutput dua arah dan pin fungsi khusus, seperti yang terlihat pada tabel dibawah ini. Pin Fungsi khusus PD7 OC2 TimerCounter Output Compare Match Output PD6 ICP TimerCounter1 Input Capture Pin PD5 OC1A TimerCounter1 Output Compare A MatchOutput PD4 OC1B TimerCounter1 Output Compare B MatchOutput PD3 INT1 External Interrupt 1 Input PD2 INT0 External Interrupt 0 Input PD1 TXD USART Output Pin PD0 RXD USART Input Pin Tabel 2.3 Fungsi Khusus Port D 7. RESET merupakan pin yang digunakan untuk me-reset mikrokontroler. 8. XTAL1 dan XTAL2 merupakan pin masukan clock eksternal. 9. AVCC merupakan pin masukan tegangan untuk ADC. 10. AREFF merupakan pin masukan tegangan referensi ADC. Universitas Sumatera Utara

2.3 Sensor Jarak Ultrasonik PING

Sensor jarak ultrasonik ping adalah sensor 40 khz produksi parallax yang banyak digunakan untuk aplikasi atau kontes robot cerdas. Kelebihan sensor ini adalah hanya membutuhkan 1 sinyal SIG selain jalur 5 v dan ground. Berikut adalah contoh gambar sensor PING: Gambar 2.2 Sensor jarak ultrasonik ping Sensor ini dapat mengukur jarak antara 2 cm sampai 300 cm blank area yaitu sensor tidak dapat mengukur jarak jika jarak benda 2cm. Keluaran dari sensor ini berupa pulsa yang lebarnya merepresentasikan jarak. Lebar pulsanya bervariasi dari 115 uS sampai 18,5 mS. Sensor ultrasonic ping parallax terdiri dari sebuah chip pembangkit sinyal 40KHz, sebuah speaker ultrasonik dan sebuah mikropon ultrasonik. Speaker ultrasonik mengubah sinyal 40 KHz menjadi suara sementara mikropon ultrasonik berfungsi untuk mendeteksi pantulan suaranya. Universitas Sumatera Utara

2.3.1 Spesifikasi sensor PING

a.Kisaran pengukuran 3cm-3m. b.Input trigger –positive TTL pulse, 2uS min., 5uS tipikal. c.Echo hold off 750uS dari fall of trigger pulse. d.Delay before next measurement 200uS. e.Burst indicator LED menampilkan aktifitas sensor.

2.3.2 Prinsip Kerja Sensor PING

Berikut adalah prinsip kerja sensor ultrasonic ping parallax. 1. Pin yang digunakan sebagai jalur data sensor dijadikan output. 2. Mikrokontroler memberikan pulsa trigger pulsa high dengan tOUT selama 2 µs sampai 5 µs. 3. Kemudian setelah memberikan trigger, pin tersebut dijadikan input. 4. Sensor memancarkan gelombang ultrasonic sebesar 40KHz selama 200 µs tBURST. 5. Gelombang ultrasonic ini akan merambat diudara dengan kecepatan 344.424 mdetik atau 1 cm setiap 29.034 µs. 6. Gelombang tersebut akan mengenai objek kemudian terpantul kembali ke sensor. 7. Selama menunggu pantulan, sensor akan menghasilkan sebuah pulsa high 8. Pulsa ini akan berhenti low ketika gelombang suara pantulan terdeteksi oleh sensor. 9. Lebar pulsa tersebutlah yang yang dipresentasikan sebagai jarak antara sensor ping dengan objek. Universitas Sumatera Utara 10. Lebar pulsa high tIN akan sesuai dengan lama waktu tempuh gelombang ultrasonik untuk 2x jarak ukur dengan obyek yang kemudian dapat merepresentasikan jarak antara sensor ping dengan objek. 11. Sinyal yang diterima oleh rangkaian receiver dikirimkan ke rangkaian mikrokontroler untuk selanjutnya diolah untuk menghitung jarak terhadap benda. 12. Benda di sini adalah benda yang bersifat memantul, bukan benda yang bersifat meredam sinyal. Pada dasanya, Sensor PING terdiri dari sebuah chip pembangkit sinyal 40KHz, sebuah speaker ultrasonik dan sebuah mikropon ultrasonik. Speaker ultrasonik mengubah sinyal 40 KHz menjadi suara sementara mikropon ultrasonik berfungsi untuk mendeteksi pantulan suaranya. Sensor PING mendeteksi jarak obyek dengan cara memancarkan gelombang ultrasonik 40 kHz selama tBURST 200 μs kemudian mendeteksi pantulannya. Sensor PING memancarkan gelombang ultrasonik sesuai dengan kontrol dari mikrokontroler pengendali pulsa trigger dengan tOUT min. 2 μs. Universitas Sumatera Utara Gelom detik, men pulsa outp setelah ge SIG. Leba ultrasonik

2.4 Buzze

Buzze getaran li tegangan buzzer ham yang terp sehingga keluar, te mbang ultra ngenai oby put high pa elombang pa ar pulsa Hig k untuk 2x ja er er adalah se istrik menja antara 5 vo mpir sama pasang pada menjadi el ergantung d Gambar 2. asonik ini yek dan me ada pin SIG antulan terd gh tIN ak arak ukur de ebuah komp adi getaran olt sampai dengan lou a diafragma lektromagne dari arah ar .3 Prinsip k melalui ud emantul kem G setelah me deteksi PIN kan sesuai d engan obye ponen elektr suara. Bu dengan 12 ud speaker, a dan kem et, kumpar arus dan po erja sensor dara dengan mbali ke se emancarkan NG akan me dengan lama ek. ronika yang zzer akan volt DC. P jadi buzzer mudian kum ran tadi ak olaritas ma PING n kecepatan ensor. PING n gelomban embuat outp a waktu tem g berfungsi u menyala jik Pada dasarn r juga terdir mparan terse kan tertarik gnetnya, ka n 344 mete G mengelu ng ultrasonik put low pad mpuh gelom untuk meng ka mendap nya prinsip ri dari kum ebut dialiri k ke dalam karena kum er per arkan k dan da pin mbang gubah patkan kerja mparan i arus atau paran Universitas Sumatera Utara dipasang pada diafragma maka setiap gerakan kumparan akan menggerakkan diafragma secara bolak-balik sehingga membuat udara bergetar yang akan menghasilkan suara. Di dalam tugas akhir ini, buzzer digunakan sebagai indikator bahwa telah terjadi suatu kesalahan pada sebuah alat alarm. Gambar 2.4 Bentuk Buzzer

2.5 Transistor