Rangkaian Perangkat Keras Hardware .1 Diagram Blok Rangkaian Pengujian Program

BAB 3 PERANCANGAN ALAT DAN PROGRAM 3.1 Rangkaian Perangkat Keras Hardware 3.1.1 Diagram Blok Rangkaian Diagram blok merupakan diagram kotak blok diagram system yang dirancang yaitu deteksi dini banjir dengan alarm. Rancangan berupa suatu proses deteksi input dan mengeluarkan output tertentu. Dalam hal ini adalah ketinggian air pada saat terjadi luapan akibat banjir. Dengan menggunakan sensor jarak ultrasonic dapat diukur ketinggian air yang masuk dalam suatu wadah yang dibuat dengan tabung plastik. Bagian proses terdiri dari sebuah kontroler yang bekerja membaca ketinggian air melalui sensor ultrasonic pada keadaan tertentu yaitu ketinggian air tertentu kontroler harus memberikan isyarat melalui output suara yaitu buzzer sebagai isyarat kemungkinan atau akan terjadi banjir. Universitas Sumatera Utara Gambar 3.1 Diagram Blok Rangkaian

3.2 Perancangan Rangkaian Kendali

Rancangan rangkaian kendali adalah suatu rangkaian elektronik berbasis mikrokontroller. Rancangan terdiri dari beberapa bagian utama antara lain yaitu: Sensor Ultrasonik, Mikrokontroller, Penguat, Display LCD, Buzzer dan Flow Chart. Universitas Sumatera Utara

3.2.1 Sensor Ultrasonik

Pada rancangan ini menggunakan sensor jarak sensor jarak yaitu sensor ultrasonic. Tipe sensor ultrasonic yaitu SR 04. Cara kerja sensor pada rangkaian adalah sebagai berikut: Sensor akan memancarkan sebuah gelombang ultrasonic dengan frekuensi 40 kHz kemudian sensor akan mendeteksi pantulan gelombang ultrasonic tersebut jika mengenai suatu objek pemantul. Antara dipancarkan gelombang ultrasonic dengan diterimanya kembali gelombang tersebut terdapat selisih waktu dan dengan mengetahui kecepatan suara kecepatan suara diudara maka dapat dihitung jarak objek dengan sensor. Dengan persamaan: s = V × …………………………………………………………………………. 1 Dimana: s = jarak objek dengan sensor v = kecepatan suara 340 ms t = waktu pantul ultrasonic Universitas Sumatera Utara Gambar 3.2 Rangkaian Skematik Sensor Ultrasonik PING

3.2.2 Mikrokontroller

Mikrokontroller adalah bagian rangkaian yang berfungsi mengendalikan sistem secara keseluruhan yaitu membaca input dari sensor, mengkalkulasikan jarak dan memutuskan jika harus mengeluarkan suatu output peringatan atau isyarat. Mikrokontroller yang digunakan dalam rancangan adalah AVR ATmega8535. Mikrokontroller tersebut diprogram dengan bahasa C yaitu CV AVR 2.04. Mikrokontroller membaca input melalui port D yaitu PD.0 dan PD.1 Universitas Sumatera Utara sedangkan output mikrokontroller diprogram pada port B yaitu PB.0. Kristal pada pin 12 dan 13 berfungsi sebagai masukan pulsa clock, sedangkan resistor pada pin 9 berfungsi sebagai riset awal saat mikrokontroller diaktifkan. Mikrokontroller akan membaca sensor dengan cara mendeteksi waktu pancar gelombang ultrasonic dan diterimanya kembali gelombang tersebut yaitu dengan mendeteksi pulsa atau logika yang diberikan oleh sensor saat diterimanya gelombang ultrasonic pantulan. Mikrokontroller mengeluarkan output dengan cara memberikan logika 1 pada penguat untuk mengaktifkan buzzer. Universitas Sumatera Utara Gambar 3.3 Rangkaian Mikrokontroller ATMega8535

3.2.3 Penguat

Yang dimaksud dengan penguat dalam rangkaian ini adalah rangkaian penguat arus yaitu rangkaian yang berfungsi menguatkan arus agar dapat mengendalikan beban yang lebih besar. Penguat arus terdiri dari sebuah transistor Universitas Sumatera Utara dan sebuah resistor. Transistor dikonfigurasikan sebagai penguat common emitor dan bekerja pada daerah on-off dengan memberikan logika 1 pada basis akan menyebabkan transistor jenuh karena mendapat bias positif sehingga arus akan terputus. Tipe transistor dalam rangkaian adalah BD139 yaitu transistor NPN Negatif Positif Negatif dengan arus 1 ampere.

3.2.4 Display LCD

Gambar 3.4 Rangkaian LCD Display LCD sebuah liquid crystal atau perangkat elektronik yang berfungsi untuk menampilkan angka atau teks. Dalam menampilkan numerik ini kristal yang dibentuk menjadi bar, dan dalam menampilkan alfanumerik kristal hanya diatur kedalam pola titik. Setiap kristal memiliki sambungan listrik individu sehingga dapat dikontrol secara independen. Ketika kristal off yakni tidak ada arus yang melalui kristal cahaya kristal terlihat sama dengan bahan latar belakangnya, sehingga kristal tidak dapat terlihat. Namun ketika arus listrik melewati kristal, itu Universitas Sumatera Utara akan merubah bentuk dan menyerap lebih banyak cahaya. Hal ini membuat kristal terlihat lebih gelap dari penglihatan mata manusia sehingga bentuk titik atau bar dapat dilihat dari perbedaan latar belakang. Modul display LCD sudah dilengkapi dengan sebuah kontroler yang memiliki dua register 8 bit yaitu instruction register IR dan data register DR. IR menyimpan kode instruksi, seperti display clear, cursor shift dan informasi address untuk display data RAM DDRAM dan character generator CGRAM.

3.2.5 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. Buzzer biasa digunakan sebagai indikator bahwa proses telah selesai atau terjadi suatu kesalahan pada sebuah alat alarm. Dalam rancangan ini digunakan buzzer tipe piezo elektrik dengan frekuensi ± 1000 Hz. Dengan memberikan arus pada buzzer menyebabkan getaran pada piezo dan mengeluarkan suara berupa bunyi dengan frekuensi 1000 Hz. Universitas Sumatera Utara Gambar 3.5 Rangkaian Buzzer

3.2.6 Flow Chart

Flowchart Bagan Alir merupakan suatu bagan yang menggambarkan arus logika dari data yang akan diproses dari awal sampai akhir. Tujuan utama dari penggunaan Flowchart adalah untuk menggambarkan suatu tahapan penyelesaian masalah secara sederhana, terurut, rapi dan jelas dengan menggunakan simbol- simbol yang standar. Tahap masalah yang disajikan harus jelas, sederhana, efektif dan tepat. Universitas Sumatera Utara S ta rt In is id a s i L C D Is i N ila i A w a l P o rt P e m b e ria n S in y a l P ic u T rig g a r P a d a S e n s o r B a c a N ila i P u ls a P a n tu la n D a ri S e n s o r U ltra s o n ik P u ls a A d a A ta u P a n tu la n ? K a lk u la s i J a ra k O b je k T a m p ilk a n P a d a L C D J a ra k Y a n g T e ru k u r A k tifk a n B u z z e r S e s u a i J a ra k Y a n g T e ru k u r E n d Y a Universitas Sumatera Utara Gambar 3.6 Flow Chart Pendeteksi Banjir Diagram diatas adalah diagram alir sistem yaitu proses kerja dari awal hingga selesai. Diagram tersebut menggambarkan 1 siklus dari start hingga stop yang merupakan proses yang dilakukan oleh mikrokontroller mulai dengan start mikrokontroller akan menginisialisasi port dan mengisi nilai awal dari semua port kemudian mulai memicu sensor untuk bekerja mendeteksi jarak atau ketinggian jika mikrokontroller membaca pulsa akibat diterima kembali gelombang ultrasonic maka tahap selanjutnya adalah mengkalkulasi ketinggian air kemudian membandingkan ketinggian yang terdeteksi dengan suatu acuan dalam hal ini 10 cm ketinggian air jika bacaan sensor melebihi batas tersebut mikrokontroller akan mengaktifkan buzzer sebagai isyarat peringatan akan terjadi banjir. Universitas Sumatera Utara 3.3 Rancangan Rangkaian Pendeteksi Banjir Menggunakan Sensor Ultrasonic Berbasis Mikrokontroller ATmega8535 Universitas Sumatera Utara Gambar 3.7 Rancangan Rangkaian Deteksi Banjir Berbasis ATmega8535 Berikut Ini Adalah Program Utuh Deteksi Banjir include alcd.h include mega8535.h include delay.h include stdio.h define SIG_in PINC.1 define trigger PINC.0 unsigned int US; unsigned int Constant; void mainvoid { PORTA=0x00; DDRA=0x00; PORTB=0x00; DDRB=0x0F; PORTC=0x02; DDRC=0x01; Universitas Sumatera Utara PORTD=0xFF; DDRD=0x00; lcd_init16; lcd_gotoxy0,0; lcd_putsf SISTEM ALARM; lcd_gotoxy0,1; lcd_putsf DETEKSI BANJIR; delay_ms2000; Constant = 27; lcd_clear; while 1 { PORTC.0 = 1; delay_us20; PORTC.0 = 0; TCNT1=0; while PINC.1 == 0{}; TCCR1B=0x02; while PINC.1 == 1 TIFR 0x80; TCCR1B=0x00; US = TCNT1; if US 1000 {US = US10Constant;} Universitas Sumatera Utara if US = 1000 {US = USConstant10;} if US 2000{ lcd_gotoxy0,0;lcd_putsfTINGGI: CM; US = 198 - US; if US 0{US = 0;} if US 50 {PORTB.0 = 1;}else{PORTB.0 = 0;} lcd_gotoxy8,0; lcd_putcharUS1000 10 + 0x30; lcd_putcharUS100 10 + 0x30; lcd_putcharUS10 10 + 0x30; lcd_putsf.; lcd_putcharUS 10 + 0x30; delay_ms100; PORTB.1 = 0; delay_ms500; PORTB.1 = 1;} } } Universitas Sumatera Utara Keterangan yang ada pada CV AVR: 1. USART untuk komunikasi data serial. 2. Analog Computer untuk pembanding sinyal analog. 3. ADC untuk mengubah analog menjadi digital. 4. SP1, I2C, 1 Wire, TW1 I2C untuk mengkomunikasi data serial. 5. Alphanumeric LCD untuk pengaturan port LCD. 6. Chip untuk pemilihan IC mikrokontroller. 7. External IRQ untuk pengaturan interupsi eksternal. 8. Timer untuk pengaturan waktu atau delay. 9. Bit-Banged untuk penggunaan periveral tertentu. Misalnya sensor project information untuk menulis data project. Universitas Sumatera Utara BAB 4 PENGUJIAN PROGRAM DAN PENGUKURAN RANGKAIAN

4.1 Pengujian Program

include alcd.h include mega8535.h include delay.h include stdio.h define SIG_in PINC.1 define trigger PINC.0 unsigned int US; unsigned int Constant; void mainvoid { PORTA=0x00; DDRA=0x00; PORTB=0x00; DDRB=0x0F; Universitas Sumatera Utara PORTC=0x02; DDRC=0x01; PORTD=0xFF; DDRD=0x00; lcd_init16; lcd_gotoxy0,0; lcd_putsf SISTEM ALARM; lcd_gotoxy0,1; lcd_putsf DETEKSI BANJIR; delay_ms2000; Constant = 27; lcd_clear; while 1 { PORTC.0 = 1; delay_us20; PORTC.0 = 0; TCNT1=0; Universitas Sumatera Utara while PINC.1 == 0{}; TCCR1B=0x02; while PINC.1 == 1 TIFR 0x80; TCCR1B=0x00; US = TCNT1; if US 1000 {US = US10Constant;} if US = 1000 {US = USConstant10;} if US 2000{ lcd_gotoxy0,0;lcd_putsfTINGGI: CM; US = 198 - US; if US 0{US = 0;} if US 50 {PORTB.0 = 1;}else{PORTB.0 = 0;} lcd_gotoxy8,0; lcd_putcharUS1000 10 + 0x30; lcd_putcharUS100 10 + 0x30; lcd_putcharUS10 10 + 0x30; lcd_putsf.; lcd_putcharUS 10 + 0x30; Universitas Sumatera Utara delay_ms100; PORTB.1 = 0; delay_ms500; PORTB.1 = 1;} } } Berikut adalah proses pengujian program yang dibuat dengan bahasa C, dimana program diuji langsung pada alat atau rangkaian sistem. Sebelumnya program diunduh kedalam IC mikrokontroller kemudian dijalankan. Hasil yang diperoleh dari pengujian program adalah bahwa sensor memberikan input pada mikrokontroller sehingga mikrokontroller akan merespon pada jarak tertentu yaitu mengeluarkan output buzzer. Dalam hal ini, jarak sensor dengan objek untuk memberikan output buzzer adalah lebih kecil dari 17 cm. Dengan asumsi bahwa alat ukur ketinggian air telah mencapai 3 cm yaitu tinggi sensor dikurangi selisih antara jarak sensor dengan ketinggian air yaitu 20 cm – 17 cm = 3 cm. Dari uji coba tersebut dapat disimpulkan bahwa rancangan program telah berjalan dengan baik yaitu memberikan output yang diinginkan sesuai dengan kondisi input.

4.2 Pengukuran Rangkaian