Kesimpulan AVR Mikrokontroller ATMega 8

BAB 5 KESIMPULAN DAN SARAN

5.1 Kesimpulan

Dari hasil perancangan alat hingga pengujian dan pembahasan sistem maka penulis dapat menarik kesimpulan, antara lain : 1. Telah berhasil dirancang sebuah alat yang dapat mendeteksi air pada tangki bahan bakar minyak menggunakan sensor konduktivitas berbasis Android serta dapat mengontrol pengurasan air secara otomatis dengan jarak jauh. Berdasarkan pengujian yang telah dilakukan, pada alat ini apabila ketinggian air melewati batas sensor pada ketinggian 6 cm, maka pompa otomatis hidup dan melakukan pengurasan air. 2. Berdasarkan pengujian yang telah dilakukan pada alat ini, Data dari sensor konduktivitas akan diterima oleh Android melalui media Bluetooth. volume air yang terdeteksi pada tangki dapat kita lihat pada ponsel Android yang digunakan sebagai monitoring proses pengurasan air secara otomatis.

5.2 Saran

Setelah melakukan penelitian, diperoleh beberapa hal yang dapat dijadikan saran untuk dilakukan penelitian lebih lanjut yaitu : 1. Untuk pengembangan lebih lanjut, perlu dibuat alat yang lebih besar sesuai dengan tangki Bahan bakar yang sesungguhnya. Universitas Sumatera Utara

BAB 2 TINJAUAN PUSTAKA

2.1 AVR Mikrokontroller ATMega 8

AVR merupakan salah satu jenis mikrokontroler yang di dalamnya terdapat berbagai macam fungsi. Perbedaannya pada mikro yang pada umumnya digunakan seperti MCS51 adalah pada AVR tidak perlu menggunakan oscillator eksternal karena di dalamnya sudah terdapat internal oscillator. Selain itu kelebihan dari AVR adalah memiliki Power-On Reset, yaitu tidak perlu ada tombol reset dari luar karena cukup hanya dengan mematikan supply, maka secara otomatis AVR akan melakukan reset. Untuk beberapa jenis AVR terdapat beberapa fungsi khusus seperti ADC, EEPROM sekitar 128 byte sampai dengan 512 byte. Gambar 2.1. Mikrokontroller ATMEGA8 AVR ATmega8 adalah mikrokontroler CMOS 8-bit berarsitektur AVR RISC yang memiliki 8K byte in-System Programmable Flash. Mikrokontroler dengan konsumsi daya rendah ini mampu mengeksekusi instruksi dengan kecepatan maksimum 16MIPS pada frekuensi 16MHz. Jika dibandingkan dengan ATmega8L perbedaannya hanya terletak pada besarnya tegangan yang diperlukan untuk bekerja. Untuk ATmega8 tipe L, mikrokontroler ini dapat bekerja dengan tegangan antara 2,7 - 5,5V sedangkan untuk ATmega8 hanya dapat bekerja pada tegangan antara 4,5 –5,5 V. Dayat, 2009 Universitas Sumatera Utara

2.1.1. Konfigurasi Pin ATMega8

Gambar 2.2. Konfigurasi Pin Atmega8 ATmega8 memiliki 28 Pin, yang masing-masing pin nya memiliki fungsi yang berbeda-beda baik sebagai port maupun fungsi yang lainnya. Berikut akan dijelaskan fungsi dari masing-masing kaki ATmega8. a. VCC Merupakan supply tegangan digital. b. GND Merupakan ground untuk semua komponen yang membutuhkan grounding. c. Port B PB7...PB0 Didalam Port B terdapat XTAL1, XTAL2, TOSC1, TOSC2. Jumlah Port B adalah 8 buah pin, mulai dari pin B.0 sampai dengan B.7. Tiap pin dapat digunakan sebagai input maupun output. Port B merupakan sebuah 8-bit bi- directional IO dengan internal pull-up resistor. Sebagai input, pin-pin yang terdapat pada port B yang secara eksternal diturunkan, maka akan mengeluarkan arus jika pull-up resistor diaktifkan. Khusus PB6 dapat digunakan sebagai input Kristal inverting oscillator amplifier dan input ke rangkaian clock internal, bergantung pada pengaturan Fuse bit yang digunakan untuk memilih sumber clock. Sedangkan untuk PB7 dapat digunakan sebagai output Kristal output oscillator amplifier bergantung pada pengaturan Fuse bit yang digunakan untuk memilih sumber clock. Jika sumber clock yang dipilih dari oscillator internal, PB7 dan PB6 dapat digunakan sebagai IO atau jika Universitas Sumatera Utara menggunakan maka PB6 dan PB7 TOSC2 dan TOSC1 digunakan untuk saluran input timer. Tabel 2.1. Fungsi Alternatif Port B d. Port C PC5…PC0 Port C merupakan sebuah 7-bit bi-directional IO port yang di dalam masing-masing pin terdapat pull-up resistor. Jumlah pin nya hanya 7 buah mulai dari pin C.0 sampai dengan pin C.6. Sebagai keluaranoutput port C memiliki karakteristik yang sama dalam hal menyerap arus sink ataupun mengeluarkan arus source. ADC 6 channel PC0,PC1,PC2,PC3,PC4,PC5 dengan resolusi sebesar 10bit. ADC dapat kita gunakan untuk mengubah input yang berupa tegangan analog menjadi data digital. I2C SDA dan SDL merupakan salah satu fitur yang terdapat pada PORTC. I2C digunakan untuk komunikasi dengan sensor atau device lain yang memiliki komunikasi data tipe I2C seperti sensor kompas, accelerometer nunchuck, dll. e. RESETPC6 Jika RSTDISBL Fuse diprogram, maka PC6 akan berfungsi sebagai pin IO. Pin ini memiliki karakteristik yang berbeda dengan pin- pin yang terdapat pada port C lainnya. Namun jika RSTDISBL Fuse tidak diprogram, maka pin ini akan berfungsi sebagai input reset. Dan jika level tegangan yang masuk ke pin ini rendah dan pulsa yang ada lebih pendek dari pulsa minimum, maka akan menghasilkan suatu kondisi reset meskipun clock-nya tidak bekerja. RESET merupakan salah satu pin penting di mikrokontroler, RESET dapat digunakan untuk merestart program. Pada ATMega8 pin RESET digabungkan dengan salah satu pin Universitas Sumatera Utara IO PC6. Secara default PC6 ini di disable dan diganti menjadi pin RESET. Kita dapat melakukan konfigurasi di fusebit untuk melakukan pengaturannya. Tabel 2.2. Fungsi Alternatif Port C f. Port D PD7…PD0 Port D merupakan 8-bit bi-directional IO dengan internal pull-up resistor. Fungsi dari port ini sama dengan port-port yang lain. Hanya saja pada port ini tidak terdapat kegunaan-kegunaan yang lain. Pada port ini hanya berfungsi sebagai masukan dan keluaran saja atau biasa disebut dengan IO. Tabel 2.3. Fungsi Alternatif Port D USART TXD dan RXD merupakan jalur data komunikasi serial dengan level sinyal TTL. Pin TXD berfungsi untuk mengirimkan data serial, sedangkan RXD kebalikannya yaitu sebagai pin yang berfungsi untuk menerima data serial. Interrupt INT0 dan INT1 merupakan pin dengan fungsi khusus sebagai interupsi hardware. Interupsi biasanya digunakan sebagai selaan dari program, misalkan pada saat program berjalan kemudian terjadi interupsi hardwaresoftware maka program Universitas Sumatera Utara utama akan berhenti dan akan menjalankan program interupsi. XCK dapat difungsikan sebagai sumber clock external untuk USART, namun kita juga dapat memanfaatkan clock dari CPU, sehingga tidak perlu membutuhkan external clock. T0 dan T1 berfungsi sebagai masukan counter external untuk timer 1 dan timer 0. AIN0 dan AIN1 keduanya merupakan masukan input untuk analog comparator. g. Avcc, Pin ini berfungsi sebagai supply tegangan untuk ADC. Untuk pin ini harus dihubungkan secara terpisah dengan VCC karena pin ini digunakan untuk analog saja. Bahkan jika ADC pada AVR tidak digunakan tetap saja disarankan untuk menghubungkannya secara terpisah dengan VCC. Jika ADC digunakan, maka AVcc harus dihubungkan ke VCC melalui low pass filter. h. AREF, Merupakan pin referensi jika menggunakan ADC.

2.1.2. Status Register

Pada AVR status register mengandung beberapa informasi mengenai hasil dari kebanyakan hasil eksekusi instruksi aritmatik. Informasi ini digunakan untuk altering arus program sebagai kegunaan untuk meningkatkan performa pengoperasian. Register ini di-update setelah operasi ALU Arithmetic Logic Unit hal tersebut seperti yang tertulis dalam datasheet khususnya pada bagian Instruction Set Reference. Dalam hal ini untuk beberapa kasus dapat membuang penggunaan kebutuhan instruksi perbandingan yang telah didedikasikan serta dapat menghasilkan peningkatan dalam hal kecepatan dan kode yang lebih sederhana dan singkat. Register ini tidak secara otomatis tersimpan ketika memasuki sebuah rutin interupsi dan juga ketika menjalankan sebuah perintah setelah kembali dari interupsi. Namun hal tersebut harus dilakukan melalui software. Berikut adalah gambar status register. Gambar 2.3. Status Register ATMega8 Universitas Sumatera Utara Penjelasan :  Bit 7I Merupakan bit Global Interrupt Enable. Bit ini harus di-set agar semua perintah interupsi dapat dijalankan. Untuk perintah interupsi individual akan di jelaskan pada bagian yang lain. Jika bit ini di-reset, maka semua perintah interupsi baik yang individual maupun yang secara umum akan di abaikan. Bit ini akan dibersihkan atau cleared oleh hardware setelah sebuah interupsi di jalankan dan akan di-set kembali oleh perintah RETI. Bit ini juga dapat di-set dan di-reset melalui aplikasi dan intruksi SEI dan CLL.  Bit 6T Merupakan bit Copy Storage. Instruksi bit Copy Instructions BLD Bit Load and BST Bit Store menggunakan bit ini sebagai asal atau tujuan untuk bit yang telah dioperasikan. Sebuah bit dari sebuah register dalam Register File dapat disalin ke dalam bit ini dengan menggunakan instruksi BST, dan sebuah bit di dalam bit ini dapat disalin ke dalam bit di dalam register pada Register File dengan menggunakan perintah BLD.  Bit 5H Merupakan bit Half Carry Flag. Bit ini menandakan sebuah Half Carry dalam beberapa operasi aritmatika. Bit ini berfungsi dalam aritmatika BCD.  Bit 4S Merupakan Sign bit. Bit ini selalu merupakan sebuah ekslusif di antara Negative Flag N dan two’s Complement Overflow Flag V.  Bit 3V Merupakan bit Two’s Complement Overflow Flag. Bit ini menyediakan fungsi aritmatika dua komplemen.  Bit 2N Merupakan bit Negative Flag. Bit ini mengindikasikan sebuah hasil negative di dalam sebuah fungsi logika atai aritmatika.  Bit 1Z Merupakan bit Zero Flag . Bit ini mengindikasikan sebuah jasil nol “0” dalan sebuah fungsi aritmatika atau logika.  Bit 0C Universitas Sumatera Utara Merupakan bit Carry Flag. Bit ini mengindikasikan sebuah Carry atau sisa dalam sebuah aritmatika atau logika.

2.1.3. Memori AVR ATMega8

Memori atmega terbagi menjadi tiga yaitu : a. Memori Flash Memori flash adalah memori ROM tempat kode-kode program berada. Kata flash menunjukan jenis ROM yng dapat ditulis dan dihapus secara elektrik. Memori flash terbagi menjadi dua bagian yaitu bagian aplikasi dan bagian boot. Bagian aplikasi adalah bagian kode-kode program apikasi berada. Bagian boot adalah bagian yang digunakan khusus untuk booting awal yang dapat diprogram untuk menulis bagian aplikasi tanpa melalui programmerdownloader, misalnya melalui USART. Gambar 2.4. Peta Memory ATMEGA8 b. Memori Data Memori data adalah memori RAM yang digunakan untuk keperluan program. Memori data terbagi menjadi empat bagian yaitu : 32 GPR General Purphose Register adalah register khusus yang bertugas untuk membantu eksekusi program oleh ALU Arithmatich Logic Unit, dalam instruksi assembler setiap instruksi harus melibatkan GPR. Universitas Sumatera Utara Dalam bahasa C biasanya digunakan untuk variabel global atau nilai balik fungsi dan nilai-nilai yang dapat memperingan kerja ALU. Dalam istilah processor komputer sahari- hari GPR dikenal sebagai “chace memory”.IO register dan Aditional IO register adalah register yang difungsikan khusus untuk mengendalikan berbagai pheripheral dalam mikrokontroler seperti pin port, timercounter, usart dan lain-lain. Register ini dalam keluarga mikrokontrol MCS51 dikenal sebagai SFR Special Function Register. c. EEPROM EEPROM adalah memori data yang dapat mengendap ketika chip mati off, digunakan untuk keperluan penyimpanan data yang tahan terhadap gangguan catu daya.

2.1.4. TimerCounter 0

Timercounter 0 adalah sebuah timercounter yang dapat mencacah sumber pulsaclock baik dari dalam chip timer ataupun dari luar chip counter dengan kapasitas 8-bit atau 256 cacahan. Timercounter dapat digunakan untuk : - Timercounter biasa. - Clear Timer on Compare Match selain Atmega 8 - Generator frekuensi selain Atmega 8 - Counter pulsa eksternal

2.1.5. Komunikasi Serial Pada ATMega8

Mikrokontroler AVR Atmega 8 memiliki Port USART pada Pin 2 dan Pin 3 untuk melakukan komunikasi data antara mikrokontroler dengan mikrokontroler ataupun mikrokontroler dengan komputer. USART dapat difungsikan sebagai transmisi data sinkron, dan asinkron. Sinkron berarti clock yang digunakan antara transmiter dan receiver satu sumber clock. Sedangkan asinkron berarti transmiter dan receiver mempunyai sumber clock sendiri-sendiri. USART terdiri dalm tiga blok yaitu clock generator, transmiter, dan receiver.Hari, 2012 Universitas Sumatera Utara

2.1.6. Arsitektur Mikrokontroler ATMega8

Gambar 2.5. Blok Diagram ATmega8 Universitas Sumatera Utara

2.1.7. Kelebihan Fitur Mikrokontroler AVR ATMega8

Mikrokontroler AVR ATmega8 merupakan CMOS dengan konsumsi daya rendah, mempunyai 8-bit proses data CPU berdasarkan arsitektur AVR RISC. Dengan mengeksekusi instruksi dalam satu siklus clock tunggal, ATmega8 memiliki kecepatan data rata-rata throughputs mendekati 1 MIPS per MHz, yang memungkinkan perancang sistem dapat mengoptimalkan konsumsi daya dan kecepatan pemrosesan. Berikut kelebihan yang dimiliki ATmega8 : 1. Kinerja Tinggi, Low-power AVR 8-bit Microcontroller Seperti yang disebutkan Atmel dalam websitenya The low-power Atmel 8-bit AVR RISC-based microcontroller... The device supports throughput of 16 MIPS at 16 MHz and operates between 2.7-5.5 volts. AVR Alf Egil Bogen and Vegard Wollan s Risc processor mengeluarkan ATmega8 dengan fitur yang sangat menarik untuk dicoba. Selama ini Penulis masih merasakan bahwa ATmega8 sangat bagus dalam hal kinerja, cocok untuk penelitian, pembuatan produk, bahkan untuk pembelajaran Robotik. Disamping kinerjanya yang handal, ATmega8 juga hemat energi daya rendah, karena mampu beroperasi pada tegangan 2,7 sampai 5,5 Volt, dan hanya mengkonsumsi arus sebesar 3,6 mA. 2. Kemajuan Arsitektur RISC Mikrokontroler AVR memiliki arsitektur Reduced Instruction Set Computing RISC atau set instruksi Komputasi yang disederhanakan. Arsitektur Reduced Instruction Set Computing RISC atau Set instruksi Komputer yang disederhanakan pertama kali digagas oleh John Cocke, peneliti dari IBM di Yorktown, New York pada tahun 1974 saat ia membuktikan bahwa sekitar 20 instruksi pada sebuah prosesor ternyata menangani sekitar 80 dari keseluruhan kerjanya. Komputer pertama yang menggunakan konsep RISC ini adalah IBM PCXT pada era 1980-an. Istilah RISC sendiri pertama kali dipopulerkan oleh David Patterson, pengajar pada University of California di Berkely . Atmel AVR adalah jenis mikrokontroler yang paling sering dipakai dalam bidang elektronika dan instrumentasi. Universitas Sumatera Utara Mikrokontroler AVR ini memiliki arsitektur RISC delapan bit, di mana semua instruksi dikemas dalam kode 16-bit 16 bits word dan sebagian besar instruksi dieksekusi dalam 1 satu siklus clock. 3. Daya Tahan Tinggi dan Segmen Memori non-volatile. Mikrokontroler AVR memiliki daya tahan data retensi data 20 tahun ketika suhu mencapai 85°C atau 100 tahun ketika suhu mencapai 25°C. ATmega8 memiliki 8 KB KiloByte memori Flash internal yang dapat dimasukan kode program utama seperti file .hex sehingga cukup untuk diterapkan dalam penelitian skala kecil - menengah. Disamping memori Flash, ATmega8 juga memiliki 512 Byte EEPROM yang dapat menampung data meskipun dalam keadaan OFF. Mikrokontroler ini juga memiliki 1K Byte Internal SRAM sehingga proses data bisa lebih cepat. Gambar 2.6. Flash ATmega8 Kelebihan lainnya dari ATmega8 adalah :  Dapat diisi data write dan dihapus eraser sampai 10.000 kali untuk Flash dan 100.000 kali untuk EEPROM  Memiliki daya tahan data retensi data 20 tahun ketika suhu mencapai 85°C atau 100 tahun ketika suhu mencapai 25°C  Terdapat pilihan Kode Boot Section dengan Lock Bits independen  Sistem keamanan data dengan mengunci program untuk Software Security Winoto, 2008 Universitas Sumatera Utara

2.2 Sensor Konduktivitas