BAB II METODE PERANCANGAN APLIKASI
2.1.
Landasan Teori Pembuatan termometer digital ini berdasar pada sensor suhu LM35. Nilai
suhu yang dibaca oleh sensor ditampilkan pada 4 digit 7-Segment dengan nilai ketelitian 2 digit di belakang koma dengan satuan oC. Kemudian mikrokontroler ATMEGA8535 digunakan sebagai pengendali sistem dengan perangkat lunak penulisan skrip program-nya menggunakan bahasa pemrograman C, Selain itu ada pula tambahan buzzer sebagai indikator suhu panas yang luar biasa / kebakaran yang akan berbunyi pada suhu diatas 40oC
2.2.
Mikrokontroler ATMega8535
Mikrokontroler AVR adalah suatu alat elektronika digital yang mempunyai masukan dan keluaran serta kendali dengan program yang bisa ditulis dan dihapus dengan cara khusus, cara kerja mikrokontroler sebenarnya membaca dan menulis data. Sekedar contoh, bayangkan diri Anda saat mulai belajar membaca dan menulis, ketika Anda sudah bisa melakukan hal itu Anda bisa membaca tulisan.
Atmel AVR adalah jenis mikrokontroler yang paling sering dipakai dalam bidang elektronika dan instrumentasi. Mikrokontroler AVR ini memiliki arsitektur RISC (Reduce Instruction Set Computer) delapan bit, di mana semua instruksi dikemas dalam kode 16-bit (16 bits word) dan sebagian besar instruksi dieksekusi dalam 1 (satu) siklus clock. (http://id.wikipedia.org/wiki/Atmel_AVR)
Sedangkan seri MCS51 berteknologi CICS (Complex Instruction Set Computer). Secara umum, AVR dapat dikelompokkan mnjadi 4 kelas, yaitu keluarga ATtiny, keluarga AT90Sxx, keluarga ATMega, dan AT86RFxx. Pada dasarnya yang membedakan masing-masing kelas adalah memory, peripheral, dan fungsinya. Dari segi arsitektur dan instruksi yang digunakan, mereka bisa dikatakan 5 http://digilib.mercubuana.ac.id/
hampir sama. Dalam hal ini ATMEGA8535 dapat beroperasi pada kecepatan maksimal 16MHz serta memiliki 6 pilihan mode sleep untuk menghemat penggunaan daya listrik.
Gambar 2.1 Mikrokontroler AVR ATMega8535 (http://www.atmel.com)
Gambar 2.2 Block Diagram Fungsional ATMega8535 (http://www.atmel.com)
6 http://digilib.mercubuana.ac.id/
Dari gambar tersebut dapat dilihat bahwa ATMega 8535 memiliki bagian sebagai berikut:
Saluran I/O sebanyak 32 buah, yaitu Port A, Port B, Port C, dan Port D.
ADC 10 bit sebanyak 8 saluran.
Tiga buah Timer/Counter dengan kemampuan pembandingan.
CPU yang terdiri atas 32 buah register.
Watchdog Timer dengan osilator internal.
SRAM sebesar 512 byte.
Memori Flash sebesar 8 kb dengan kemampuan Read While Write.
Unit interupsi internal dan eksternal.
Port antarmuka SPI.
EEPROM sebesar 512 byte yang dapat diprogram saat operasi.
Antarmuka komparator analog.
Port USART untuk komunikasi serial.Fitur ATMega8535.
(http://joaldera.com/2008/10/mikrokontroler-atmega-8535/)
2.3.
Konfigurasi Mikrokontroler AVR ATMega8535
Mikrokontroller AVR memiliki arsitektur RISC 8 Bit, sehingga semua instruksi dikemas dalam kode 16-bit (16-bits word) dan sebagian besar instruksi dieksekusi dalam satu siklus instruksi clock. Dan ini sangat membedakan sekali dengan instruksi MCS-51 (Berarsitektur CISC) yang membutuhkan siklus 12 clock. RISC adalah Reduced Instruction Set Computer sedangkan CISC adalah Complex Instruction Set Computer.
Mikrokontroler AVR ATMega 8535 mempunyai 40 kaki, 32 kaki digunakan untuk keperluan port pararel. Setiap port teriri dari 8 pin, sehingga terdapat port yaitu Port A (PA0..PA7), Port B (PB0..PB7), Port C (PC0..PC7), Port D (PD0..P7).
7 http://digilib.mercubuana.ac.id/
Gambar 2.3 Konfigurasi Pin ATMega 8535 (http://www.atmel.com)
Penjelasan dari pin-pin mikrokontroler ATMega 8535 tersebut adalah sebagai berikut :
VCC merupakan Input sumber tegangan (+).
GND merupakan Ground (-).
Port A (PA0...PA7) merupakan 8-bit directional port I/O. Setiap pinnya dapat menyediakan internal pull-up resistor (dapat diatur per bit). Output buffer Port A dapat memberi arus 20 mA dan dapat mengendalikan display LED secara langsung. Data Direction Register port A (DDRA) harus disetting terlebih dahulu sebelum Port A digunakan. Bit-bit DDRA diisi 0 jika ingin memfungsikan pin-pin port A yang bersesuaian sebagai input, atau diisi 1 jika sebagai output. Selain itu, kedelapan pin port A juga digunakan untuk masukan sinyal analog bagi A/D converter.
8 http://digilib.mercubuana.ac.id/
Port B (PB0...PB7) merupakan 8-bit directional port I/O. Setiap pinnya dapat menyediakan internal pull-up resistor (dapat diatur per bit). Output buffer Port B dapat memberi arus 20 mA dan dapat mengendalikan display LED secara langsung. Data Direction Register port B (DDRB) harus disetting terlebih dahulu sebelum Port B digunakan. Bit-bit DDRB diisi 0 jika ingin memfungsikan pinpin port B yang bersesuaian sebagai input, atau diisi 1 jika sebagai output. Pinpin port B juga memiliki untuk fungsi-fungsi alternatif khusus seperti yang dapat dilihat dalam tabel berikut.
9 http://digilib.mercubuana.ac.id/
Port C (PC0...PC7) merupakan 8-bit directional port I/O. Setiap pinnya dapat menyediakan internal pull-up resistor (dapat diatur per bit). Output buffer Port C dapat memberi arus 20 mA dan dapat mengendalikan display LED secara langsung. Data Direction Register port C (DDRC) harus disetting terlebih dahulu sebelum Port C digunakan. Bit-bit DDRC diisi 0 jika ingin memfungsikan pinpin port C yang bersesuaian sebagai input, atau diisi 1 jika sebagai output. Selain itu, dua pin port C (PC6 dan PC7) juga memiliki fungsi alternatif sebagai oscillator untuk timer / counter 2
Port D (PD0...PD1) merupakan 8-bit directional port I/O. Setiap pinnya dapat menyediakan internal pull-up resistor (dapat diatur per bit). Output buffer Port D dapat memberi arus 20 mA dan dapat mengendalikan display LED secara langsung. Data Direction Register port D (DDRD) harus disetting terlebih dahulu sebelum Port D digunakan. Bit-bit DDRD diisi 0 jika ingin memfungsikan pin-pin port D yang bersesuaian sebagai input, atau diisi 1 jika sebagai output. Selain itu, pin-pin port D juga memiliki untuk fungsi-fungsi alternatif khusus seperti yang dapat dilihat dalam tabel berikut.
10 http://digilib.mercubuana.ac.id/
RESET merupakan RST pada pin 9 merupakan reset dari AVR. Jika pada pin ini diberi masukan low selama minimal 2 machine cycle maka sistem akan di-reset.
XTAL1 adalah masukan ke inverting oscillator amplifier dan input ke internal clock operating circuit.
XTAL2 adalah output dari inverting oscillator amplifier.
AREF
adalah
kaki
masukan
referensi
bagi
A/D
Converter.
Untuk
operasionalisasi ADC, suatu level tegangan antara AGND dan Avcc harus dibeikan ke kaki ini.
AGND adalah kaki untuk analog ground. Hubungkan kaki ini ke GND, kecuali jika board memiliki anlaog ground yang terpisah.
Avcc adalah kaki masukan tegangan bagi A/D Converter. Kaki ini harus secara eksternal terhubung ke Vcc melalui lowpass filter.
(http://www.mikron123.com/index.php/Tutorial-AVR/ArsitekturAVR.html)
11 http://digilib.mercubuana.ac.id/
Mikrokontroler-
2.4.
Sensor PIR (Pasive Infrared Receiver)
PIR (Passive Infrared Receiver) merupakan sebuah sensor berbasiskan inframerah. Akan tetapi, tidak seperti sensor inframerah kebanyakan yang terdiri dari IR LED dan fototransistor. PIR tidak memancarkan apapun seperti IR LED. Sesuai dengan namanya ‘passive’, sensor ini hanya merespon energi dari
pancaran
sinar
inframerah
pasif yang dimiliki oleh setiap benda yang
terdeteksi olehnya. Benda yang bisa dideteksi oleh sensor ini biasanya adalah tubuh manusia.
Mengapa sensor PIR hanya bereaksi pada tubuh manusia saja? Hal ini disebabkan
karena adanya IR Filter yang menyaring panjang gelombang sinar
inframerah pasif. IR Filter dimodul sensor PIR ini mampu menyaring panjang gelombang sinar inframerah pasif antara 8 sampai 14 mikrometer, sehingga panjang gelombang yang dihasilkan dari tubuh manusia yang berkisar antara 9 sampai 10 mikrometer ini saja yang dapat dideteksi oleh sensor.
Jadi, ketika seseorang berjalan melewati sensor, sensor akan menangkap pancaran sinar inframerah pasif yang dipancarkan oleh tubuh manusia
yang
memiliki suhu yang berbeda dari lingkungan sehingga menyebabkan material pyroelectric bereaksi menghasilkan arus listrik karena adanya energi panas yang dibawa oleh sinar inframerah pasif tersebut. Kemudian sebuah sirkuit amplifier yang ada menguatkan arus tersebut yang kemudian dibandingkan oleh comparator sehingga menghasilkan output.
Jadi sensor PIR tidak akan menghasilkan output apabila sensor ini dihadapkan dengan benda panas yang tidak memiliki panjang gelombang inframerah antara 8 sampai 14 mikrometer dan benda yang diam seperti sinar lampu yang sangat terang yang mampu menghasilkan panas, pantulan objek benda dari cermin dan suhu panas ketika musim panas.
12 http://digilib.mercubuana.ac.id/
Gambar 2.4 Pasive Infrared Receiver
2.5.
IC Regukator LM7805
IC LM7805 adalah IC penyetabil tegangan 5 Volt DC yang memiliki kemampuan arus keluaran sampai 1 Ampere. Pada kemasan IC ini terdapat tiga kaki yaitu kaki pertama sebagai input, kaki kedua (tengah) sebagai kaki ground dan kaki ketiga sebagai output atau tegangan stabil 5 Volt. (http://rangkaianelektronika.net/search/ic-regulator-7805)
Gambar 2.5.1 IC Regulator 7805
Gambar 2.5.2 Rangkaian IC Regulator 7805 (www.rason.org/Projects/regulator/)
13 http://digilib.mercubuana.ac.id/
Pada badan kemasan IC ini terdapat besi yang berfungsi sebagai pendingin karena tegangan atau arus yang dikeluarkan oleh IC ini sangat dipengaruhi perubahan suhu komponen IC ini.
2.6.
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). (http://elektronikaelektronika.blogspot.com/2007/04/buzzer.html)
Gambar 2.6 Buzzer
2.7.
SENSOR SUHU
Sensor suhu yang digunakan adalah LM35
Gambar 2.7.1 LM35 14 http://digilib.mercubuana.ac.id/
(https://arduino-info.wikispaces.com/LM35)
Gambar 2.7.2 Sensor Suhu LM35 (http://priyahitajuniarfan.files.wordpress.com/2010/03/lm35.jpg) Keistimewan dari IC LM35 adalah:
Lineritas +10mV/°C.
Akurasi 0.5°C pada suhu ruang.
Range +2°C - 150°C.
Dioperasikan pada catu daya 4V – 30V.
Gambar 2.7.3 Detil LM 35 (http://todoelectrodo.blogspot.com/2012/04/)
15 http://digilib.mercubuana.ac.id/
Sensor suhu LM35 adalah komponen elektronika yang memiliki fungsi untuk mengubah besaran suhu menjadi besaran listrik dalam bentuk tegangan. Sensor Suhu LM35 yang dipakai dalam penelitian ini berupa komponen elektronika elektronika yang diproduksi oleh National Semiconductor. LM35 memiliki keakuratan tinggi dan kemudahan perancangan jika dibandingkan dengan sensor suhu yang lain, LM35 juga mempunyai keluaran impedansi yang rendah dan linieritas yang tinggi sehingga dapat dengan mudah dihubungkan dengan rangkaian kendali khusus serta tidak memerlukan penyetelan lanjutan.
Meskipun tegangan sensor ini dapat mencapai 30 volt akan tetapi yang diberikan kesensor adalah sebesar 5 volt, sehingga dapat digunakan dengan catu daya tunggal dengan ketentuan bahwa LM35 hanya membutuhkan arus sebesar 60 µA hal ini berarti LM35 mempunyai kemampuan menghasilkan panas (self-heating) dari sensor yang dapat menyebabkan kesalahan pembacaan yang rendah yaitu kurang dari 0,5 ºC pada suhu 25 ºC (pada suhu ruang).
2.8.
FlowChart
Menurut Sarwidi (2007), flowchart adalah representasi grafik dari langkahlangkah yang harus diikuti dalam menyelesaikan suatu permasalahan yang terdiri atas sekumpulan simbol, dimana masing-masing simbol merepresentasikan suatu kegiatan tertentu. Flowchart diawali dengan penerimaan input, pemprosesan input, dan diakhiri dengan penampilan output.
Flowchart dalam Bahasa Indonesia diterjemahkan sebagai Diagram Alir. Dari dua kata ini, maka dapat kita bayangkan bahwa flowchart itu berbentuk diagram yang bentuknya dapat mengalirkan sesuatu. Hal ini memang benar, flowchart memang melukiskan suatu aliran kegiatan dari awal hingga akhir mengenai suatu langkah-langkah dalam penyelesaian suatu masalah. Masalah tersebut bisa bermacam-macam, mulai dari masalah yang sederhana sampai yang kompleks. Masalah yang kita pelajari tentu saja masalah pemrograman dengan
16 http://digilib.mercubuana.ac.id/
menggunakan komputer, tetapi secara logika dapat kita awali dengan mengamati permasalahan dalam kehidupan sehari-hari kita.
Contoh sederhananya adalah masalah membuat secangkir kopi. Dalam membuat secangkir kopi, tentu saja diperlukan langkah-langkah yang berurutan agar hasilnya dapat sesuai dengan apa yang kita inginkan, yaitu secangkir kopi. Demikian halnya dalam memprogram, diperlukan suatu algoritma (urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis) agar program yang kita buat dapat berjalan dan memberikan hasil yang valid. Nah, untuk merepresentasikan algoritma itulah kita gunakan flowchart.
2.9.
Open Loop System dan Close Loop System Sistem kontrol open loop
Aksi kontrolnya tidak tergantung dari output sistem.
Tidak dapat memberikan kompensasi/koreksi jika ada gangguan Contoh : mesin cuci, oven, AC, dll.
Ketepatan hasil bergantung pada kalibrasi.
Sederhana dan murah.
Sistem kontrol close loop
Aksi kontrolnya bergantung pada output sistem (melalui feedback).
Mengatasi kelemahan sistem open loop karena bisa memberikan koreksi saat ada gangguan
Mungkin terjadi “overkoreksi”, sehingga sistem justru menjadi tidak stabil
2.10.
Kompleks dan mahal, karena komponen lebih banyak
Bahasa yang digunakan dalam pembuatan perangkat lunak Pemrograman mikrokontroller ini, menggunakan software
Atmel
AVR Studio 5 menggunakan bahasa pemrograman C. Untuk dapat menyimpan program yang telah kita buat pada memori mikrokontroller
17 http://digilib.mercubuana.ac.id/
dibutuhkan perangkat tambahan yang menghubungkan antara PC dan mikrokontroller. Register I/O
Fasilitas input/output merupakan fungsi mikrokontroller untuk dapat menerima sinyal masukan (input) dan memberikan sinyal keluaran (output). Sinyal input maupun sinyal output adalah berupa data digital 1 (high, mewakili tegangan 5 volt) dan 0 (low, mewakili tegangan 0 volt). Mikrokontroller ATMEGA8535 memiliki 4 buah PORT 8 bit bidirectional yang dapat difungsikan sebagai PORT input maupun PORT output yaitu PORTA, PORTB , PORTC, dan PORT D. Register digunakan untuk mengatur
fungsi
dari
pin-pin
pada
tiap
port.
Register
dapat
dianalogikan sebagai kumpulan switch on/off yang digunakan untuk mengaktifkan fungsi apa yang akan dipakai dari port mikrokontroller. Pada setiap port pin terdapat 3 buah register 8 bit: DDRxn, PORTxn, dan PINxn.
Register DDRxn digunakan untuk menentukan arah dari pin yang bersangkutan. Jika DDRxn diberikan nilai 1 (high), maka pin digunakan sebagai output. Jika DDRxn diberikan nilai 0 (low), maka pin difungsikan sebagai input. Register PORTxn digunakan untuk mengaktifkan pull-up resistor (pada saat pin difungsikan sebagai input), dan memberikan nilai keluaran pin high/low (pada saat difungsikan sebagai output).
Konfigurasi PORTxn dan DDRxn dapat dilihat pada tabel dibawah, Table 2.5. Konfigurasi port pin
18 http://digilib.mercubuana.ac.id/
2.11.
Komunikasi Data Dalam pengisian Mikrokontroler penulis mengunakan DI-USB AVR ISP V2 (DI-USB to Serial TTL) Spesifikasi dari DI-USB AVR ISP V2 ini diantaranya : 1.Target In System Programer (ISP) 2. Kompatibel dengan Windows XP, Windows Vista dan Windows 7 3. Didukung oleh perangkat lunak Code Vision AVR 4. Tidak membutuhkan catu daya dari luar
(a)
(b)
Gambar 2.10 (a) Downloader DI-USB AVR ISP V2 c/w Kabel konektor IDC-10
19 http://digilib.mercubuana.ac.id/