Sistem Pengatur Pengisian Tangki Air 2 L Menggunakan Sensor Flow Meter Berbasis Mikrokontoler ATMega8

5

BAB 2 LANDASAN TEORI

2.1 Mikrokontroler AVR Atmega8
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
to3mbol 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. 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,5 V sedangkan untuk ATmega8 hanya dapat bekerja pada
tegangan antara 4,5 – 5,5 V.


Universitas Sumatera Utara

6

2.1.1 Konfigurasi Pin Atmega8

Gambar 2.1. Konfigurasi Pin ATmega 8
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 I/O dengan internal pull-up resistor. Sebagai input, pin-pin 7
yang terdapat pada port B yang secara eksternal diturunkan, maka akan
mengeluarkan arus jika pull-up resistor diaktifkan. Khusus PB6 dapat

Universitas Sumatera Utara

7

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


I/O

atau

jika

menggunakan

Asyncronous

Timer/Counter2 maka PB6 dan PB7 (TOSC2 dan TOSC1) digunakan
untuk saluran input timer.
d. Port C (PC5…PC0)
Port C merupakan sebuah 7-bit bi-directional I/O port yang di dalam
masingmasing pin terdapat pull-up resistor. Jumlah pin nya hanya 7 buah
mulai dari pin C.0 sampai dengan pin C.6. Sebagai keluaran/output port C
memiliki karakteristik yang sama dalam hal menyerap arus (sink) ataupun
mengeluarkan arus (source).
e. RESET/PC6

Jika RSTDISBL Fuse diprogram, maka PC6 akan berfungsi sebagai pin
I/O. 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 8 minimum, maka akan menghasilkan suatu kondisi reset
meskipun clock-nya tidak bekerja. Port D (PD7…PD0).
f. Port D merupakan 8-bit bi-directional I/O 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
I/O.
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

Universitas Sumatera Utara

8


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.2Spesifikasi Atmega 8
1. Kinerja tinggi, rendah daya Atmel®AVR® 8-bit Microcontroller
2. Advanced RISC Architecture
a. 130 Instruksi Powerfull - Kebanyakan Single-jam Siklus Eksekusi
b. 32 × 8 General Purpose Kerja Register
c. Operasi Fully Static
d. Sampai dengan 16MIPS throughput di 16MHz
e. On-chip 2-siklus Multiplier
3. segmen Memory Tinggi Ketahanan Non-volatile
a. 8Kbytes In-System Self-programmable memori program flash
b. 512bytes EEPROM
c. SRAM 1Kbyte internal
d. Menulis / Erase Cycles: 10.000 Flash / 100.000 EEPROM
e. Data retensi: 20 tahun pada 85 ° C / 100 tahun pada 25 ° C (1)

f. Opsional Boot Kode Bagian dengan Independent Lock Bits
g. In-System Programming secara On-chip Program Boot
h. Benar Operasi Baca-Sementara-Write
i. Kunci Pemrograman untuk Security Software
4. Fitur Peripheral
a. Dua 8-bit Timer / Counter dengan Prescaler terpisah, satu
Bandingkan Modus
b. Satu 16-bit Timer / Counter dengan Prescaler terpisah, Bandingkan
Mode, dan Tangkap
c. Mode
d. Real Time Counter dengan Oscillator terpisah
e. Tiga Saluran PWM
f. 8-channel ADC di TQFP dan QFN / MLF paket

Universitas Sumatera Utara

9

g. Delapan Saluran 10-bit Akurasi
h. 6-channel ADC dalam paket PDIP

i. Enam Saluran 10-bit Akurasi
j. Byte berorientasi Dua-kawat Serial Interface
k. Programmable Serial USART
l. Master / Slave SPI Serial Interface
m. Programmable

Watchdog

Timer

dengan

terpisah

On-chip

Oscillator
n. On-chip Analog Comparator
5. Fitur Mikrokontroler Khusus
a. Power-on ulang dan Programmable Brown-out Detection

b. Internal dikalibrasi RC Oscillator
c. Eksternal dan Sumber Interrupt internal
d. Lima Mode Sleep: Idle, ADC Noise Reduction, Power-save,
Power-down, dan
e. Bersiap
6. I / O dan Paket
a. 23 Programmable I / O Garis
b. 28-lead PDIP, 32-lead TQFP, dan 32-pad QFN / MLF
7. Tegangan Operasi
a. 2.7V - 5.5V (ATmega8L)
b. 4.5V - 5.5V (ATmega8)
8. Kelas Kecepatan
a. 0 - 8MHz (ATmega8L)
b. 0 - 16MHz (ATmega8)
9.
a. Aktif: 3.6mA
b. Menganggur Mode: 1.0mA
c. Power-down Mode: 0.5μA
2.1.3 Memori Atmega 8
Memori atmega terbagi menjadi tiga yaitu :


Universitas Sumatera Utara

10

1. 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

programmer/downloader, misalnya

melalui

USART. 32 General purpose registers 64 I/O registers Additional I/O

registers Internal RAM Flash Boot Section EEPROM 13.
2. 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.Dalam
istilah processor komputer sahari-hari GPR dikenal sebagai “chace
memory”. I/O register dan Aditional I/O register adalah register yang
difungsikan khusus untuk mengendalikan berbagai pheripheral dalam
mikrokontroler seperti pin port, timer/counter, usart dan lain-lain. Register
ini dalam keluarga mikrokontrol MCS51 dikenal sebagi SFR(Special
Function Register).

3. EEPROM EEPROM adalah memori data yang dapat mengendap ketika
chip mati (off), digunakan untuk keperluan penyimpanan data yang tahan
terhadap gangguan catu daya. 14 2.1.3 Timer/Counter 0 Timer/counter 0
adalah sebuah timer/counter yang dapat mencacah sumber pulsa/clock
baik dari dalam chip (timer) ataupun dari luar chip (counter) dengan
kapasitas 8-bit atau 256 cacahan. Timer/counter dapat digunakan untuk :
1. Timer/counter biasa

2. Clear Timer on Compare Match (selain Atmega 8)
3. Generator frekuensi (selain Atmega 8)
4. Counter pulsa eksternal
2.1.4 Komunikasi Serial Pada Atmega 8

Universitas Sumatera Utara

11

Mikrokontroler AVR Atmega 8 memiliki Port USART pada Pin 2 dan
Pin3 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 dab receiver mempunyai sumber clock sendiri-sendiri.
USART terdiri dalm tiga blok yaitu clock generator, transmiter, dan receiver.
2.1.5 Sistim Minimum Atmega 8
Dengan menggunakan minimum sistem yang kompatibel dengan
atmega8mikrokontroler atmega8 bertindak sebagai mikro target dimana kita
membutuhkan downloader lain intuk mendownload firmware ke atmega8.
downloader tersebut bisa berupa downloader paralel atau serial dengan tools
programmernya menggunakan Ponkemudian sediakan USBASP (Downloader)
yang lain untuk mendownload firmware ke atmega8. (Downloader tidak harus
yang berbasis USBASP bisa yang lain asal kompatibel

dengan

MOSI,MISO,SCK dan reset mikrokontroler AVR).

2.2 LCD
LCD merupakan salah satu perangkat penampil yang sekarang ini mulai
banyak digunakan.Penampil LCD mulai dirasakan menggantikan fungsi dari
penampil CRT (Cathode Ray Tube), yang sudah berpuluh-puluh tahun digunakan
manusia sebagai penampil gambar/text baik monokrom (hitam dan putih),
maupun yang berwarna.Teknologi LCD memberikan keuntungan dibandingkan
dengan teknologi CRT, kaena pada dasarnya, CRT adalah tabung triode yang
digunakan sebelum transistor ditemukan.
Beberapa keuntungan LCD dibandingkan dengan CRT adalah konsumsi
daya yang relative kecil, lebih ringan, tampilan yang lebih bagus, dan ketika
berlama-lama di depan monitor, monitor CRT lebih cepat memberikan kejenuhan
pada mata dibandingkan dengan LCD

Universitas Sumatera Utara

12

Gambar 2.2 LCD
LCD memanfaatkan silicon atau gallium dalam bentuk Kristal cair sebagai
pemendar cahaya.Pada layar LCD, setiap matrik adalah susunan dua dimensi
piksel yang dibagi dalam baris dan kolom.Dengan demikian, setiap pertemuan
baris dan kolom adalah sebuah LED terdapat sebuah bidang latar (backplane),
yang merupakan lempengan kaca bagian belakang dengan sisi dalam yang
ditutupi oleh lapisan elektroda trasparan.Dalam keadaan normal, cairan yang
digunakan memiliki warna cerah. Daerah-daerah tertentu pada cairan akan
berubah warnanya menjadi hitam ketika tegangan diterapkan antara bidang latar
dan pola elektroda yang terdapat pad sisi dalam lempeng kaca bagian depan.
Keunggulan LCD adalah hanya menarik arus yang kecil (beberapa
microampere), sehingga alat atau sistem menjadi portable karena dapat
menggunakan catu daya yang kecil.Keunggulan lainnya adalah tampilan yang
diperlihatkan dapat dibaca dengan mudah di bawah terang sinar matahari.Di
bawah sinar cahaya yang remang-remang dalam kondisi gelap, sebuah lampu
(berupa LED) harus dipasang dibelakang layar tampilan.
LCD yang digunakan adalah jenis LCD yang mena mpilkan data dengan 2
baris tampilan pada display. Keuntungan dari LCD ini adalah :
1. Dapat menampilkan karakter ASCII, sehingga dapat memudahkan untuk
membuat program tampilan.
2. Mudah dihubungkan dengan port I/O karena hanya mengunakan 8 bit data
dan 3 bit control.
3. Ukuran modul yang proporsional.
4. Daya yang digunakan relative sangat kecil.

Universitas Sumatera Utara

13

D0
D1
D2
D3
D4
D5
D6
D7

RS
RW
EN

LCD 16x2

4
5
6

1
GND
3
LCD Drv
16
V-BL

10
11
12
13
11
12
13
14

2
VCC
V+BL15

+5VDC

Gambar 2.3. Konfigurasi Pin LCD
Operasi dasar pada LCD terdiri dari empat, yaitu instruksi mengakses
proses internal, instruksi menulis data, instruksi membaca kondisi sibuk, dan
instruksi membaca data. ROM pembangkit sebanyak 192 tipe karakter, tiap
karakter dengan huruf 5x7 dot matrik.Kapasitas pembangkit RAM 8 tipe karakter
(membaca program), maksimum pembacaan 80x8 bit tampilan data.Perintah
utama LCD adalah Display Clear, Cursor Home, Display ON/OFF, Display
Character Blink, Cursor Shift, dan Display Shift. Tabel 2.1. menunjukkan operasi
dasar LCD
Tabel 2.1.Operasi Dasar LCD
RS R/W

Operasi

0

0

Input Instruksi ke LCD

0

1

Membaca Status Flag (DB7) dan alamat counter
(DB0 ke DB6)

1

0

Menulis Data

1

1

Membaca Data

Tabel 2.2. Konfigurasi LCD
Pin

Bilangan biner

Keterangan

RS

0

Inisialisasi

1

Data

0

Tulis LCD / W (write)

RW

Universitas Sumatera Utara

14

E

1

Baca LCD / R (read)

0

Pintu data terbuka

1

Pintu data tertutup

Tabel 2.3.Konfigurasi Pin LCD
Pin

Keterangan

Konfigurasi Hubung

1

GND

Ground

2

VCC

Tegangan +5VDC

3

VEE

Ground

4

RS

Kendali RS

5

RW

Ground

6

E

Kendali E/Enable

7

D0

Bit 0

8

D1

Bit 1

9

D2

Bit 2

10

D3

Bit 3

11

D4

Bit 4

12

D5

Bit 5

13

D6

Bit 6

14

D7

Bit 7

15

A

Anoda (+5VDC)

16

K

Katoda (Ground)

No.

Lapisan film yang berisis Kristal cair diletakkan di antara dua lempeng
kaca yang telah ditanami elektroda logam transparan. Saat teganga dicatukan pada
beberapa pasang elektroda, molekul – molekul Kristal cair akan menyusun diri
agar cahaya yang mengenainya akan dipantulkan atau diserap. Dari hasil
pemantulan atau penyerapan cahaya tersebut akan terbentuk pola huruf, angka,
atau gambar sesuai bagian yang di aktifka.

Universitas Sumatera Utara

15

LCD membutuhkan tegangan dan daya yang kecil sehingga sangat popular
untuk aplikasi pada kalkulator, arloji digital, dan instrument elektronika lain
seperti Global Positioning System (GPS), baragraph display dan multimeter
digital. LCD umumnya dikemas dalam bentuk Dual In Line Package (DIP) dan
mempunyai kemampuan untuk menampilkan beberapa kolom dan baris dalam
satu panel. Untuk membentuk pola, baik karakter maupun gambar pada kolom
dan baris secara bersamaan digunakan metode Screening.
Metode screening adalah mengaktifkan daerah perpotongan suatu kolo dan
suatu

baris

secara

bergantian

dan

cepat

sehingga

seolah-olah

aktif

semua.Penggunaan metode ini dimaksudkan untuk menghemat jalur yang
digunakan untuk mengaktifkan panel LCD. Saat ini telah dikembangkan berbagai
jenis LCD, mulai jenis LCD biasa, Passive Matrix LCD (PMLCD), hingga ThinFilm Transistor Active Matrix (TFT-AMLCD). Kemampuan LCD juga telah
ditingkatkan daru yang monokrom hingga yang mampu menampilkan ribuan
warna.
2.3Water Flow Sensor G1/2
Water Flow sensor terdiri dari tubuh katup plastik, rotor air, dan sensor
hall efek. Ketika air mengalir melalui, gulungan rotor-rotor. Kecepatan
perubahan dengan tingkat yang berbeda aliran. Sesuai sensor hall efek output
sinyal pulsa.Kelebihan sensor ini adalah hanya membutuhkan 1 sinyal (SIG)
selain jalur 5V dc dan Ground. Water flow sensor ini terdiri atas katup plastik,
rotor air, dan sebuah sensor hall-effect.
Prinsip kerja sensor ini adalah dengan memanfaatkan fenomena efek
Hall. Efek Hall ini didasarkan pada efek medan magnetik terhadap partikel
bermuatan yang bergerak. Ketika ada arus listrik yang mengalir pada divais efek
Hall yang ditempatkan dalam medan magnet yang arahnya tegak lurus arus
listrik, pergerakan pembawa muatan akan berbelok ke salah satu sisi dan
menghasilkan medan listrik. Medan listrik terus membesar hingga gaya Lorentz
yang bekerja pada partikel menjadi nol. Perbedaan potensial antara kedua sisi
divais tersebut disebut potensial Hall. Potensial Hall ini sebanding dengan
medan magnet dan arus listrik yang melalui divais.

Universitas Sumatera Utara

16

2.3.1 Spesifikasi Flow Sensor
a. Bekerja padategangan5VDC-24VDC

b. Arus Maksimum saat ini15mA(DC5V)

c. Berat sensor 43 gram

d. Tingkat Aliranrentang 0,5~ 60L / menit

e. SuhuPengoperasian 0°C~ 80°

f. Operasikelembaban35%~ 90% RH

g. Operasitekanan bawah1.75Mpa
2.4 Bahasa Pemograman Arduino Uno
Bahasa Pemograman Arduino Uno jenis pemograman yang paling banyak
digunakan terutama untuk para pemula sangat disarankan untuk digunakan
Arduino Uno.Dan banyak sekali referensi versi yang digunakan untuk membahas
Arduino Uno. Versi terakhir adalah Arduino Uno R3 ( revisi 3 ),menggunakan
ATMega 328 sebagai mikrokontrolernya.Berikut penjelasan bagian bahasa
pemograman Arduino Uno :
Void setup () {
// semua kode yang ada disini akan dibaca sekali oleh Arduino
}
Void loop () {
// semua kode yang ada disini akan dibaca berulang kali (terus-menerus)oleh
Arduino
}

Universitas Sumatera Utara

17

Semua kode program yang ada di dalam bagian void setup akan dibaca
sekali oleh Arduino.Biasanya isinya merupakan kode perintah untuk menentukan
fungsi pada sebuah pin.
Contoh kodenya seperti:
pinMode (13, OUTPUT);

//menentukan pin 13 sebagai OUTPUT

pinMode(3, INPUT);

//menentukan pin 3 sebagai INPUT

Adapun

untuk

komunikasi

antara

Arduino

dengan

komputer

menggunakan:
Serial.begin(9600);
Semua kode program yang ada di dalam void loop akan dibaca berulang
kali (terus-menerus) oleh Arduino.Isinya berupa kode-kode perintah kepada pin
INPUT dan OUTPUT pada Arduino.
Contoh kodenya seperti berikut:
digitalWrite(13, HIGH); //untuk memberikan 5v(nyala)kepada pin 13
digitalWrite(13, LOW); //untuk memberikan 0v(mati) kepada pin 13
analogWrite(3, 225); //untuk memberikan nilai 225(setara dengan 5v)kepada
pin3
Adapun untuk menampilkan sensor di Serial Monitor,bisa menggunakan:
Serial.print(namasensor); //menampilkan nilai sensor di variabel nama sensor
Untuk menampilkan teks biasanya menggunakan
Serial.print(“Selamat Datang”); //menampilkan teks Selamat Datang pada serial
monitor
Dan untuk membuka serial Monitor sendiri pada Arduino,bisa dengan
memilih menu tools kemudian pilih Serial Monitor,atau dengan menekan
kombinasi
CTRL+SHIFT+M di keyboard.Kamu bisa membuat catatan di program dan tidak
akan dibaca oleh Arduino,dengan cara mengetikkan // kemudian mengetikan
catatan seperti:
Voidloop(){
// Catatan pada baris ini tidak akan di baca oleh program
}

Universitas Sumatera Utara

18

Tapi pemakaian tanda // hanya berfungsi pada catatan satu baris saja.Jika
kamu ingin membuat catatan yang lebih panjang yang berupa paragraf.Maka
pertama kamu ketikkan /* lalu ketikkan catatanmu ,dan jika sudah selesai tutup
dengan kode */. Contohnya seperti berikut:
Void loop ()}
/*apapun yang akan kamu ketikkan disini tidak akan dibaca oleh program
sepanjang apapun kamu mengetikkannya
*/

BAB 3 PERANCANGAN DAN PEMBUATAN ALAT

3.1 Diagram Blok Sistem

Universitas Sumatera Utara