i
TUGAS AKHIR
Diajukan untuk memenuhi salah satu syarat memperoleh gelar
Sarjana Teknik pada Program Studi Teknik Elektro
Fakultas Sains dan Teknologi Universitas Sanata Dharma
Disusun oleh :
TOMY KUSWARDHANI
NIM : 045114061
PROGRAM STUDI TEKNIK ELEKTRO
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
ii
ELECTRICITY COST VIEWER VISUAL BASIC
BASED
FINAL PROJECT
Presented as one of the requirement to obtain
Sarjana Teknik Degree in Electrical Engineering
Science and Technology Faculty Sanata Dharma University
By :
TOMY KUSWARDHANI
Student Number : 045114061
ELECTRICAL ENGINEERING STUDY PROGRAM
SCIENCE AND TECHNOLOGY FACULTY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
vi
HALAMAN PERSEMBAHAN DAN MOTTO HIDUP
KARYA INI KUPERSEMBAHKAN KEPADA
ALLAH SWT
AYAH DAN IBUKU
SAUDARA-SAUDARIKU
SEMUA PIHAK YANG TELAH MEMBANTU TERCIPTANYA KARYA INI
MOTTO :
Dan persembahkanlah yang terindah bagi sahabatmu.
Jika dia harus tahu musim surutmu, biarlah dia mengenal pula musim pasangmu.
Gerangan apa sahabat itu hingga kau senantiasa mencarinya, untuk sekadar bersama dalam membunuh waktu?
Carilah ia untuk bersama menghidupkan sang waktu!
Karena dialah yang bisa mengisi kekuranganmu, bukan mengisi kekosonganmu.
Dan dalam manisnya persahabatan, biarkanlah ada tawa ria berbagi kebahagiaan.
Karena dalam titik-titik kecil embun pagi, hati manusia menemukan fajar jati dan gairah segar kehidupan.
vii
Meteran listrik atau KWH Meter sangat umum dijumpai pada setiap rumah pelanggan listrik. Fungsi dari alat ini adalah menghitung seberapa besar pemakaian energi listrik suatu bangunan kantor, rumah, maupun pabrik. Nilai pemakaian energi listrik yang dihitung dalam satuan KWH (Kilo Watt Hour) setiap bulannya akan dikalikan dengan harga satuan Tarif Dasar Listrik (TDL) dan ditambahkan dengan nilai abonemen serta pajak sebesar 8 persen akan menghasilkan tagihan yang kita terima setiap bulannya. Menyadari akan sulitnya melakukan perhitungan – perhitungan tagihan listrik, maka dengan alat ini memberikan kemudahan untuk melakukan kalkulasi pembayaran listrik. Alat ini memberikan nilai setiap putaran piringan KWH Meter, sehingga dengan mudah kita dapat mengetahui seberapa besar biaya pemakaian listrik kita setiap saat kita ingin melihatnya.
Proses pembacaan putaran KWH Meter dimulai dari pembacaan putaran piringan KWh Meter oleh sensor optokopler. Jumlah pulsa yang dibaca sensor akan disimpan oleh mikrokontroler setiap harinya. Untuk melihat besarnya pemakaian listrik, maka mikrokontroler harus dihubungkan dengan PC, pada PC, menggunakan softwareVisual Basic untuk melakukan kalkulasi perhitungan tagihan. Perhitungan tagihan listrik yang dilakukan dapat disesuaikan dengan golongan pemakainya, sehingga alat ini dapat digunakan untuk semua golongan pemakai.
Dalam implementasi tugas akhir ini, mikrokontroler sudah dapat menyimpan dan mengirimkan data dengan baik. Data yang dikirimkan oleh mikrokontroler telah dapat ditampilkan dengan baik pada PC menggunakan kabel serial. Untuk program Visual Basic dapat melakukan kalkulasi perhitungan dengan baik, dengan dilakukannya perbandingan kalkulasi manual.
viii
ABSTRACT
KWH meter we can see it generally today in every house. Main function of this gage is to calculate how much electricity being used at office building, household and factory. The calculation value of electricity being used monthly in 1 unit of KWH (Kilo Watt Hour) will be multiply with TDL price and added with subscription cost and 8 percen, so the result is customer invoice. Using this device to calculate troublesome electicity calculation, It will make easier to know the monthly of our electricity invoice. This device will give a marks on every cycle of KWH gage, this marks will makes us know how much electricities being used if we want to see it.
The reading process of KWH gage cycle start from KWH gage cycle reading by optocoupler sensor. Number of pulse reading by the sensor will be saved dailly by microcontroller. Microcontroller needs to be fused to the pc regarding to know how much electricities being used using visual basic software to calculate the invoice. The electricity calculation can be adjust to the group of customers, in order to be able used for any group of customers.
At facts on this final assigment, the microcontroller had already run well on sending the data and saving it. The sending data which is sent by microcontroller able to be view on PC using serial cable. As the accuracy of calculation, manual calculation is still needed for comparison.
x
KATA PENGANTAR
Puji syukur kepada Tuhan atas segala karunia-Nya sehingga penulis dapat menyelesaikan penulisan karya tugas akhir ini. Tugas akhir berjudul : “Penampil Pemakaian Biaya Listrik Berbasis Visual Basic”.
Tugas akhir ini ditulis untuk memenuhi salah satu syarat dalam memperoleh gelar sarjana teknik pada program studi Teknik Elektro Universitas Sanata Dharma. Penulisan skripsi ini didasarkan pada hasil-hasil yang penulis peroleh pada saat perancangan alat, pembuatan alat, sampai pada hasil pengujian pengujian alat.
Penulis ingin mengucapkan terima kasih kepada beberapa pihak yang telah memberikan banyak bimbingan, bantuan, dan arahan sehingga laporan ini dapat diselesaikan, diantaranya :
1. Allah SWT, pelindung dan penuntun hidupku
2. Ibu Wiwien Widyastuti, S.T., M.T. selaku dosen pembimbing skripsi yang telah memberikan masukan, arahan, serta bimbingan selama pengerjaan rugas akhir ini. 3. Bapak Ir. Tjendro selaku dosen Jurusan Teknik Elektro yang telah membantu
dalam memberikan arahan serta masukan dalam pengerjaan proyek ini dan telah memberikan bimbingan sehingga penulis dapat menyelesaikan proyek ini dengan baik.
4. Bapak Martanto, S.T., M.T. selaku dosen Jurusan Teknik Elektro yang telah membantu dalam memberikan arahan serta masukan dalam pengerjaan proyek ini dan telah memberikan bimbingan sehingga penulis dapat menyelesaikan proyek ini dengan baik.
5. Bapak dan Ibu dosen Jurusan Teknik Elektro yang telah mendidik dan mengajarkan banyak hal yang berguna untuk masa depan penulis.
xii
DAFTAR ISI
Halaman Judul (Indonesia)……….………..………. i
Halaman Judul (Inggris)………. ii
Lembar Pengesahan oleh Pembimbing………..……..………... iii
Lembar Pengesahan oleh Penguji……….………..……… iv
Lembar Pernyataan Keaslian Karya………..………. v
Halaman Persembahan dan Motto Hidup..……….. vi
Intisari………..……….…………... vii
Abstract……….………..……… viii
Lembar Pernyataan Persetujuan Publikasi Karya Ilmiah ………..…………. viii
Kata Pengantar……….………..………. x
Daftar Isi………...………..……….. xii
Daftar Gambar………..……….. xv
Daftar Tabel………..……….. xvii
Bab I Pendahuluan ………...……… 1
1.1. Judul ………...…….……… 1
1.2. Latar Belakang Masalah….……….……… 1
1.3. Tujuan dan Manfaat………...……….. 2
1.4. Batasan Masalah …….……….……..………. 2
1.5. Metodologi Penelitian.……….…….………….. 3
Bab II Dasar Teori………..………..……..… 5
2.1. KWH Meter……….……. 5
2.1.1. Fungsi dan Prinsip Kerja KWH Meter…………..………… 5
2.2. Perhitungan Biaya Pemakaian Listrik..………..………. 7
2.3. Sensor Optokopler……….……….…...…….. 10
2.4. Inverter Schmitt Trigger 74LS14………...….. 12
2.5.Mikrokontroler Atmega 16………..…. 13
xiii
2.7. LCD (Liquid Crystal Display)………..…... 19
2.7.1. Register………... 20
2.7.2. BF (Busy Flag)………...…… 21
2.7.3. AC (Address Counter)……… 21
2.7.4. DDRAM (Display Data RAM)……….. 21
2.7.5. CGROM (Character Generator ROM)………...… 21
2.7.6. CGRAM (Character Generator RAM)………...…… 22
2.7.7. Deskripsi LCD………..…. 22
2.7.8. Pin LCD……….…… 23
2.8. Komunikasi Serial……….…….. 23
2.9. Port Serial……… 25
2.10. RS232……… 26
2.11. Pemrograman Visual Basic……… 28
2.11.1. Tampilan Awal Pada Visual Basic………... 28
2.11.2. Toolbar………. 29
2.11.3. Form Window……….. 29
2.11.4. Toolbox……… 30
2.11.5. Project Explorer……… 30
2.11.6. Properties Window………...… 31
2.11.7. Form Layout Windows………..…….. 32
2.11.8. Code Window………...……… 32
2.11.9. Komunikasi Serial Pada Visual Basic………..……… 33
Bab III Perancangan Alat………..………. 35
3.1. Blok Diagram Rangkaian………...………. 35
3.2. Realisasi Rangkaian………. 35
3.3. Rangkaian Sensor………. 36
3.4. Rangkaian Schmitt Trigger………..……… 38
xiv
3.6. Rangkaian RS232 ke Komputer……….……. 45
3.7. Pemrograman Visual Basic………...…….. 48
Bab IV Hasil dan Pembahasan………. ………...……...…..…….. 34
4.1. Pengamatan Pada Rangkaian Sensor……….. 56
4.2. Pengamatan Pada Tampilan LCD……… 57
4.3. Pengamatan Pada Visual Basic……… 58
4.4. Analisa………. 60
Bab V Kesimpulan dan Saran……….…………... 72
5.1. Kesimpulan ………...……….. 72
5.2. Saran ……… 72
Daftar Pustaka ……….………..… 73
xv
Gambar 2.1. Medan Magnet Pada KWH Meter………. 5
Gambar 2.2. Model Fisik KWH Meter……… 6
Gambar 2.3. Skema Hubungan Kumparan pada KWH Meter……….. 7
Gambar 2.4. Sensor Optokopler……….. 11
Gambar 2.5. Diagram Blok IC 74LS14………... 12
Gambar 2.6. Mikrokontroler Atmega 16………...…. 15
Gambar 2.7. Arsitektur Unit Pemrosesan AVR………...……….. 16
Gambar 2.8. Konfigurasi Pin RTC DS1307……….………….. 19
Gambar 2.9. Pengaksesan RTC Serial………. 19
Gambar 2.10. Dimensi Layar LCD………. 20
Gambar 2.11. Blok Diagram USART………. 24
Gambar 2.12. Sebuah Frame Pada Komunikasi Serial……….. 25
Gambar 2.13. Konfigurasi Port Serial DB9……… 25
Gambar 2.14. Pengiriman huruf ‘A’ pada level tegangan RS 232 dalam format ASCII tanpa bit paritas………...………... 27
Gambar 2.15 Visual Basic IDE (Integrated Development Environment)………… 28
Gambar 2.16. Toolbar Standart Visual Basic………. 29
Gambar 2.17. Jendela Form………. 29
Gambar 2.18. Toolbox control………..….. 30
Gambar 2.19. Windows Project Explorer……… 31
Gambar 2.20. Window Properties……… 31
Gambar 2.21. Form Layout………. 32
Gambar 2.22. Code Window……… 33
Gambar 3.1. Blok Diagram Rangkaian……… 35
Gambar 3.2. Perancangan Posisi Sensor Pada Piringan KWH Meter……… 36
xvi
Gambar 3.4. Sinyal Masukan IC 74LS14……… 39
Gambar 3.5. Sinyal Keluaran IC 74LS14……… 39
Gambar 3.6. Perancangan Rangkaian Mikrokontroler Atmega 16……… 40
Gambar 3.7. Diagram Alir Pemrograman Mikrokontroler Atmega 16……….. 44
Gambar 3.8. Tampilan Program Pemakaian Biaya Listrik………. 48
Gambar 3.9. Diagram Alir Utama Program Visual Basic……….. 49
Gambar 3.10. Diagram Alir Perhitungan Biaya Listrik Pergolongan……… 50
Gambar 3.11. Diagram Alir Perhitungan Biaya Listrik Golongan Sosial………….. 51
Gambar 3.12. Diagram Alir Perhitungan Biaya Listrik Golongan Rumah Tangga.. 53
Gambar 3.13. Diagram Alir Perhitungan Biaya Listrik Golongan Bisnis…………. 54
Gambar 3.14. Diagram Alir Perhitungan Biaya Listrik Golongan Industri……….. 54
Gambar 3.15. Diagram Alir Perhitungan Biaya Listrik Golongan Pemerintah……. 55
Gambar 4.1. Tampilan LCD……….. 57
Gambar 4.2. Tampilan Program Visual Basic……….. 58
Gambar 4.3. Penyimpanan data selama 2 bulan……… 59
Gambar 4.4. Pergeseran data pada bulan selanjutnya………... 60
Gambar 4.5. Tampilan program Visual Basic bulan pertama……….. 64
xvii
Tabel 2.1. Perhitungan Insentif dan Disinsentif……… 8
Tabel 2.2. Penggolongan Daya Listrik dan tarif Listrik………. 8
Tabel 2.3. Tarif Dasar Listrik……….. 9
Tabel 2.4. Tabel Kebenaran IC 74LS14……….. 13
Tabel 2.5. Konfigurasi Pin LCD……… 23
Tabel 4.1. Hasil Pengamatan Pada Rangkaian Sensor……… 56
Tabel 4.2. Hasil Percobaan Pertama………. 61
Tabel 4.3. Data hasil perhitungan secara manual dan program pada golongan Sosial……….. 67
Tabel 4.4. Data hasil perhitungan secara manual dan program pada golongan Rumah Tangga……….. 67
Tabel 4.5. Data hasil perhitungan secara manual dan program pada golongan Bisnis……….. 67
Tabel 4.6. Data hasil perhitungan secara manual dan program pada golongan Industri……….. 67
Tabel 4.7. Data hasil perhitungan secara manual dan program pada golongan Pemerintah……… 67
Tabel 4.8. Pengamatan Hasil Simulasi Golongan Sosial……… 74
Tabel 4.9. Pengamatan Hasil Simulasi Golongan Rumah Tangga……… 74
Tabel 4.10. Pengamatan Hasil Simulasi Golongan Bisnis……… 74
Tabel 4.11. Pengamatan Hasil Simulasi Golongan Industri………. 74
1
BAB I
PENDAHULUAN
1.1.
Judul
Penampil Biaya Listrik Berbasis Visual Basic
1.2.
Latar Belakang Masalah
Satuan yang digunakan untuk mengukur energi listrik adalah kilowatthour
(KWH). Untuk menghitung energi yang digunakan dalam kilowatthour,maka di kalikan
daya dengan kilowatt (KW) dengan waktu dalam jam (hour). Kilowatthour digunakan
untuk mengukur jumlah pemakaian energi listrik yang kemudian digunakan untuk
menentukan harga listrik.
KWH meter digunakan untuk menghitung pemakaian energi listrik. Dengan
perkembangan, maka KWH meter berkembang menjadi suatu alat ukur otomatis yang
bisa mengirimkan hasil pengukurannya kepada perusahaan listrik yang bersangkutan.
Perkembangan KWH meter ini didukung karena adanya perkembangan pada dunia
teknologi informasi khususnya internet, sehingga sekarang ini pengiriman data dapat
dengan mudah terlaksana dan proses pengirimannya pun cepat.
Perusahaan penyedia tenaga listrik di Indonesia masih belum bisa menyediakan
meteran otomatis sehingga meteran listrik konvensional masih dipakai di rumah – rumah
pelanggan listrik. Masalah yang sering terjadi ialah masalah kekeliruan pencatatan karena
letak KWH meter yang sulit dilihat oleh mata sehingga tagihan menjadi tidak akurat.
Oleh karena itu pada kesempatan penyusunan Tugas Akhir ini penulis mencoba
memodifikasi KWH meter konvensional agar pelanggan lebih mudah untuk mengetahui
Dalam tugas akhir ini KWH meter konvensional tersebut akan disempurnakan
dengan adanya suatu sistem perhitungan tagihan sehingga para pelanggan listrik maupun
penyewa kamar kos dapat dengan mudah mengetahui besar tagihan listrik mereka dalam
nilai rupiah.
1.3.
Tujuan dan Manfaat
Tujuan pembuatan alat penghitung meteran listrik digital ini adalah untuk
membuat sebuah alat untuk menghitung nilai rupiah dari pemakaian listrik sehingga para
pelanggan dapat dengan mudah mengetahui besar biaya penggunaan listrik mereka.
Alat ini sangat bermanfaat untuk pelanggan listrik dengan adanya nilai
pemakaian listrik dalam rupiah, maka pelanggan dapat melakukan penghematan listrik
sendiri, sehingga pemakaian listrik konsumen dapat terkontrol.
1.4.
Batasan Masalah
Untuk memperjelas pembahasan dalam perancangan, maka akan diberikan
pembatasan masalah sebagai berikut :
a. KWH meter yang digunakan adalah KWH meter jenis analog.
b. Pada bagian sensor, digunakan sensoroptokopler.
c. Menggunakan IC 74LS14 sebagaischmitt trigger
d. Untuk perhitungan jumlah putaran piringan KWH meter, digunakan
mikrokontroler Atmega16.
e. Jenis komunikasi yang digunakan antara PC dengan mikrokontroler adalah
3
f. RTC (Real Time Clock) yang digunakan adalah DS1307, yang sesuai dengan
komunikasi serial I2C mikrokontroler Atmega16.
g. Biaya pemakaian listrik ditampilkan berbasisVisual Basic
h. Pada perhitungan tarif, perhitungan yang dilakukan hanya yang berdasarkan pada
pemakaian KWHnya.
i. Perhitungan tarif listrik akan dihitung setiap akhir bulan.
1.5.
Metodologi Penelitian
Dalam Penyelesaian penelitian digunakan metode sebagai berikut :
1. Studi Pustaka meliputi :
a) Perumusan ide pokok.
b) Mencari dan mempelajari topik tentang KWH meter.
c) Mencari data-data dari internet dan dari berbagai jenis buku yang dapat
dijadikan sebagai referensi penelitian.
2. Perancangan Perangkat Keras meliputi :
a) Merancang dan mewujudkan rangkaianoptokoplerdanschmitt trigger.
b) Memprogram Mikrokontroler .
c) Merancang dan memprogram pengolahan pulsa sensor dengan
mikrokontroler.
d) Merancang dan memprogram komunikasi serial I2C antara mikrokontroler
dengan RTC (Real Time Clock).
e) Merancang sistem komunikasi serial antara mikrokontroler dangan PC.
3. Perancangan Perangkat Lunak meliputi :
b) Menentukan data yang dibutuhkan program dari mikrokontroler.
c) Merancang diagram alir pengolah data.
4. Implementasi meliputi :
a) Pemrograman pengolahan data dan penampil data.
5. Pengujian dan Pengetesan alat meliputi :
a) Menguji sistem secara keseluruhan untuk dianalisa kekurangannya.
b) Mengumpulkan data-data untuk mengetahui keadaan sistem secara
keseluruhan.
c) Melakukan perbandingan hasil keluaran program pada PC dengan KWH
meter analog.
d) Melakukan perbandingan hasil perhitungan program pada PC dengan
5
BAB II
DASAR TEORI
2.1.
KWH Meter
2.1.1. Fungsi dan Prinsip Kerja KWH Meter
KWH Meter adalah alat penghitung pemakaian energi listrik. Alat ini bekerja
menggunakan metode induksi medan magnet, di mana medan magnet tersebut
menggerakkan piringan yang terbuat dari alumunium. Pada piringan alumunium itu
terdapat as yang akan menggerakan pencacah digital sebagai tampilan jumlah KWH
nya[1].
KWH meter memiliki 3 kumparan yaitu 1 kumparan tegangan dengan koil yang
diameternya tipis dan 2 kumparan arus dengan koil yang diameternya tebal. Pada KWH
meter juga terdapat magnet permanen yang tugasnya menetralkan piringan alumunium
dari induksi medan magnet[1].
Pada Gambar 2.1 adalah cara medan magnet memutarkan piringan alumunium.
Arus listrik yang melalui kumparan arus mengalir sesuai dengan perubahan arus terhadap
waktu. Hal ini menimbulkan adanya medan di permukaan kawat tembaga pada koil
kumparan arus. Kumparan tegangan membantu mengarahkan medan magnet agar
menerpa permukaan alumunium sehingga terjadi suatu gesekan antara piringan
alumunium dengan medan magnet disekelilingnya. Dengan demikian maka piringan
tersebut mulai berputar dan kecepatan putarnya dipengaruhi oleh besar kecilnya arus
listrik yang melalui kumparan arus[1].
Gambar 2.2.Model Fisik KWH Meter
Pada Gambar 2.2. merupakan model fisik KWH meter di mana ada empat buah
terminal yang terdiri dari dua buah terminal masukan dari jala – jala listrik PLN dan dua
terminal lainnya merupakan terminal keluaran yang akan menyuplai tenaga listrik ke
rumah. Dua terminal masukan dihubungkan ke kumparan tegangan secara paralel dan
antara terminal masukan dan keluaran dihubungkan ke kumparan arus. Untuk lebih
7
Gambar 2.3.Skema Hubungan Kumparan Pada KWH meter
2.2
Perhitungan Biaya Pemakaian Listrik
Jika membeli sebuah KWH meter maka akan tercantum banyaknya putaran
untuk menghasilkan satu KWH dalam setiap jamnya. Contohnya jika 150 putaran per
KWH maka harus ada 150 putaran untuk dikatakan sebesar satu KWH. Jumlah KWH itu
secara kumulatif dihitung dan pada akhir bulan dicatat oleh petugas besarnya pemakaian
lalu dikalikan dengan Tarif Dasar Listrik (TDL) ditambah dengan biaya abonemen dan
pajak menghasilkan jumlah tagihan yang harus dibayarkan setiap bulannya[2].
Untuk melakukan penghematan energi listrik, maka pemerintah memberikan
kebijakan suatu tarif progresif. Kebijakan tarif progresif bertujuan agar pelanggan
menekan pemakaian listrik hingga sebatas kebutuhan wajar aktivitas sehari-hari. Untuk
itu, pelanggan dengan pemakaian KWH <80% rata-rata nasional akan mendapat insentif.
Sebaliknya pelanggan dengan KWH >80% rata-rata nasional akan dikenakan disinsentif.
Pelanggan yang terkena kebijakan ini adalah Pelanggan Rumah Tangga (R1, R2, R3),
Pelanggan Bisnis skala kecil (B1), Bisnis skala menengah (B2), dan Pelanggan
Tabel 2.1. Perhitungan Insentif dan Disinsentif
9
Biaya beban dan biaya per blok pemakaian dapat dilihat pada Tabel Tarif Dasar
Listrik (TDL) berikut. Sejak tahun 2004 s.d sekarang harga TDL belum berubah. PPJ n%
(nilai n tergantung Perda setempat)[3].
2.3.
Sensor Optokopler
Sensor Optokopler seperti yang terlihat pada Gambar 2.4 merupakan sensor yang
dapat mendeteksi perubahan cahaya infra merah. Sensor ini banyak dipakai untuk
11
ataupun baling – baling sehingga akan terdapat celah dan penghalang. Dengan menerima
sinar infra merah yang putus – putus akan menimbulkan pulsa – pulsa listrik. Pulsa –
pulsa itu kemudian diolah dan nantinya dapat memberikan keluaran seperti yang kita
inginkan[4].
Gambar 2.4 Sensor Optokopler
Bagian dari sensor optokopler ini adalah sebuah led merah biasa atau led infra
merah sebagai pengirim dan sebuah fototransistor sebagai penerima. Jumlah celah yang
akan dideteksi oleh sensor optokopler tergantung dari banyaknya celah pada piringan
KWH meter. Berikut ini adalah cara mencari total putaran pada piringan KWH meter,
dimana jumlah celah pada piringan KWH meter sangat berpengaruh pada perhitungan.
Dengan perhitungan jumlah pulsa sebagai berikut :
Jika : n = jumlah pulsa yang dihasilkan.
p = total putaran piringan KWH meter
l = Jumlah lubang pada piringan KWH meter = 2
maka didapatkan rumus sebagai beikut :
Cara Kerja dari rangkaian sensor adalah sebagai berikut :
a) Saat piringan aluminium berputar maka lubang –lubang pada piringan
aluminium ikut berputar.
b) Lubang lubang tersebut dideteksi oleh sensor optokopler dimana keluarannya
berupa pulsa – pulsa listrik.
c) Pada saat sensor optokoupler bertemu lubang pada piringan aluminium maka
sinar infra merah atau sinar LED akan tembus sehingga sensor optokopler
mengalirkan arus listrik, sedangkan apabila tertutup maka sensor optokopler
akan berhenti mengalirkan arus listrik.
2.4.
Inverter Schmitt Triggers 74LS14
Inverter schmitt trigger adalah rangkaian yang digunakan untuk membersihkan
desah, atau membersihkan isyarat yang lambat naik atau turun menjadi pulsa digital yang
cepat naik dan cepat turun[5].
Salah satu IC schmitt triggeryang banyak dijumpai di pasar adalah 74LS14. IC
74LS14 merupakan inverter schmitt trigger yang memiliki 6 buah pin masukan dan 6
buah pin keluaran. Diagram Blok IC 74LS14 ditujukan pada gambar 2.5[5].
13
Sedangkan tabel kebenaran inverter schmitt trigger adalah sebagai berikut :
Tabel 2.4 Tabel kebenaran IC 74LS14
INPUT OUTPUT
0 1
1 0
Keterangan : 0 = logika rendah
1 = logika tinggi
2.5.
Mikrokontroler AVR ATmega 16
Mikrokontroler AVR (Alfa and Vegard’s Risc processor) standart memiliki
arsitektur 8 bit, dimana semua instruksi dikemas dalam kode 16 bit, dan sebagian besar
intruksi dieksekusi dalam 1 (satu) siklus clock. AVR berteknologi RISC ( Reduced
Instruction Set Computing), sedangkan MCS51 berteknologi CISC (Complex Instruction
Set Computing)[6].
Di dalam mikrokontroler ATmega16 sudah terdiri dari :
1. Saluran I/O ada 32 buah, yaitu Port A, Port B, Port C, dan Port D.
2. ADC (Analog to Digital Converter) 10 bit, sebanyak 8 channel.
3. Tiga buah Timer/Counter dengan kemampuan pembandingan.
4. CPU yang terdiri dari 32 buah register.
5. 131 instruksi andal yang umumnya hanya membutuhkan 1 siklus clock.
6. Watchdog Timer dengan osilator internal.
7. Dua buah timer/counter 8 bit.
9. Tegangan operasi 2.7 V-5.5V pada ATmega16.
10. Internal SRAM sebesar 1KB.
11. Memory Flash sebesar 16 KB dengan kemampuan Read While Write.
12. Unit interupsi internal dan eksternal.
13. Port antarmuka SPI.
14. EEPROM sebesar 512 byte yang dapat diprogram saat operasi.
15. Antarmuka komparator analog.
16. 4 channel PWM.
17. 32x8 general purpose register.
18. Hampir mencapai 16 MIPS pada Kristal 16 MHz.
19. Port USARTprogrammableuntuk komunikasi serial.
2.5.1. Susunan Kaki Standart Mikrokontroler AVR ATmega16
Pada Gambar 2.6 dibawah ini merupakan susunan kaki standart ATmega16[6].
Berikut ini adalah penjelasan umum susunan kaki ATmega16.
a) VCC merupakan pin masukan positif catu daya.
b) GND sebagai pin Ground.
c) Port A (PA0….PA7) merupakan pin I/O dua arah dan dapat diprogram sebagai
pin masukan ADC.
d) Port B (PB0….PB7) merupakan pin I/O dua arah dan pin fungsi khusus, yaitu
Timer/Counter, komparator analog, dan SPI.
e) Port C(PC0….PC7) merupakan pin I/O dua arah dan pin fungsi khusus, yaitu
15
f) Port D(PD0….PD7) merupakan pin I/O dua arah dan pin fungsi khusus, yaitu
komparator analog, interupsi eksternal, dan komunikasi serial.
g) Reset merupakan pin yang digunakan untuk mereset mikrokontroler.
h) XTAL 1 dan XTAL 2 sebagai masukan clock eksternal. Suatu mikrokontroler
membutuhkan sumber detak (clock) agar dapat mengeksekusi instruksi yang ada
di memori. Semakin tinggi tinggi kristalnya, maka semakin cepat mikrokontroler
tersebut.
i) AVCC sebagai pin masukan tegangan untuk ADC.
j) AREF sebagai pin masukan tegangan referensi.
Gambar 2.6. Mikrokontroler Atmega16
2.5.2. Konsep I/O pada Mikrokontroler AVR ATmega16
Pada Gambar 2.6, terdapat empat buah port, yaitu PA,PB,PC, dan PD. Yang
semuanya dapat diprogram sebagai input ataupun output. Jika dilihat lebih detail lagi
eksekusi program. CPU juga dapat mengakses memori, melakukan kalkulasi,
pengontrolan, dan penangan instruksi dengan menggunakan arsitektur Harvard (bus
untuk memori dan program data terpisah), sehingga dihasilkan performa yang tinggi[6].
Hal ini dikarenakan instruksi pada memori program dieksekusi dengan single
level pipelining, dengan demikian, pada saat sebuah instruksi dieksekusi, instruksi
berikutnya dapat diakses dari memori program. Konsep ini memungkinkan
instruksi-instruksi dieksekusi pada setiap siklusclock[6].
Gambar 2.7. Arsitektur Unit Pemrosesan AVR
Pin I/O pada mikrokontroler AVR dapat dikonfigurasikan sebagai input atau
output, dengan cara mengubah isi I/O register Data Direction Register. Misalnya jika
17
(DDRB) harus diset sebagai 0xFFH (sama dengan 255). Jika sebagai input, maka diset
0x00H (sama dengan 0)[6].
Contoh :
a) DDRB = 255 // Port B dikonfigurasikan sebagai output, yaitu PB0-PB7
b) DDRD = 0x00// Port D dikonfigurasikan sebagai input.
VOH(Output High Voltage) ialah tegangan pada pin I/O mikrokontroler ketika ia
mengeluarkan logika “1” dengan besar sekitar 4,2 V dan arus sebesar 20 mA (IOH). Setiap
pin I/O mikrokontroler AVR memiliki internalpull-up.Misalnya Port B dikonfigurasikan
sebagai input dan internalPull-upnyadiaktifkan, maka DDRB=00H dan Port B =00H.[6]
Contoh :
a) Port B = PIN C // Semua data di Port C dikirim ke Port B.
b) Port B.0 = PIN C.0 // Data di Port C.0 dikirim ke Port B.0
Keluaran dari suatu port mikrokontroler hanya dapat mengendalikan perangkat
dengan arus yang kecil, oleh karena jika dipergunakan untuk pengendalian dengan arus
yang kuat maka perlu penguat lagi berupa transistor atau IC penguat agar port tersebut tak
terbebani[6].
2.5.3. Konsep Komunikasi Serial
Komunikasi serial merupakan fitur yang penting dalam suatu sistem embedded,
karena dengan komunikasi serial kita dapat dengan mudah menghubungkan
mikrokontroler dengan peranngkat lainnya. Port serial pada mikrokontroler terdiri atas
dua pin yaitu TxD dan RxD. RxD berfungsi untuk menerima data dari komputer atau
lainnya. Pengiriman data serial dikirim satu per satu, beserta format data serial yang
umum.[6]
Standar komunikasi serial untuk komputer ialah RS-232. RS-232 mempunyai
standar tegangan yang berbeda dengan serial port mikrokontroler, sehingga agar sesuai
dengan RS-232, maka dibutuhkan suatu rangkaian level converter. IC yang digunakan
bermacam-macam, tetapi yang paling mudah dan sering digunakan ialah IC
MAX232/HIN232. Menggunakan transistor dan diode juga bisa.[6]
Pada mikrokontroler ATmega16, pin PD0 dan PD1 digunakan untuk
komunikasi serial USART (Universal Synchronous and Ansynchronous Serial Receiver
and Transmitter) yang mendukung komunikasi full duplex (komunikasi dua arah).
Gambar 2.9.menampilkan model hubungan antara mikrokontroler dengan PC melalui
format serial[6].
Pada gambar di atas terdapat 3 buah register, yaitu UCSRA, UCSRB dan
ACSRC. Clock generation logic membangkitkan clock untuk pengirim dan penerima.
USART ini mendukung empat mode operasi clock, yaitu Normal Asynchronous, Double
Speed Asynchronous, Master Synchronous, dan Slave synchronous. Bit UMSEL pada
USARTControl And Status Register C (UCSRC) memilik operasisinkron atauasinkron
tersebut.[6]
2.6.
RTC ( Real Time Clock )
Merupakan chip yang didesain khusus sebagai pembangkit waktu. Chip ini
digunakan pada rangkaian – rangkaian yang membutuhkan data berupa waktu yangreal
19
yang real time, RTC dilengkapi dengan input tegangan cadangan yang berasal dari
baterai[7].
Gambar 2.8. Konfigurasi Pin RTC DS1307
Data waktu yang dihasilkan RTC meliputi : detik, menit, jam, hari, tanggal,
bulan, dan tahun. Masing-masing data memiliki alamat yang dapat diakses oleh
mikroprosesor ataupun mikrokontroler secara serial maupun parallel sesuai spesifikasi
RTC. Dalam hal ini RTC yang digunakan adalah yang bertipe DS 1307 dimana
pengaksesan datanya dilakukan secara serial melalui port I2C pada mikrokontroler
ATmega 16 seperti pada gambar 2.9[7].
Gambar 2.9. Pengaksesan RTC serial
2.7.
LCD (Liquid Crystal Display)
LCD merupakan suatu tampilan (display) yang terdiri dari bahan cairan Kristal
LCD HD44780U dapat menampilkan angka-angka, huruf jepang, abjad, dan juga
simbol – simbol lainnya. Interface LCD HD44780U dengan mikrokontroler ATmega 16
dapat dilakukan dengan sistem 4 bit maupun 8 bit[8].
Dimensi LCD HD4470U yang digunakan memiliki ukuran 2 x 16. Hal ini berarti
LCD tersebut memiliki layar tampilan yang terdiri atas 2 baris dan 16 kolom seperti pada
gambar 2.10 dibawah ini[8].
Dengan demikian total jumlah karakter yang ditampilkan sekaligus dalam satu
layar adalah sebanyak 32 karakter. Dimana setiap karakter terbentuk dari susunan titik –
titik (dot) yang memiliki ukuran 8 x 5[8].
Gambar 2.10. Dimensi Layar LCD
LCD HD44780U memiliki beberapa bagian sebagai berikut :
2.7.1. Register
HD44780U memiliki dua buah register 8 bit, yaitu IR (Instruction Register) dan
DR (Data Register). IR merupakan register yang hanya dapat ditulis dan berguna untuk
menyimpan kode-kode instruksi seperti Display Clear, Cursor Shift, dan juga untuk
alamat dari DDRAM (Display Data RAM) ataupun CGRAM (Character Generator
21
berguna sebagai tempat penyimpanan sementara data yang akan ditulis atau dibaca dari
atau kedalam DDRAM ataupun CGRAM[8].
2.7.2. BF (Busy Flag)
Sewaktu BF bernilai “1” maka driver HD44780U akan menjalankan operasi
internal sehingga instruksi selanjutnya tidak dapat dijalankan. Maka untuk menjalankan
instruksi selanjutnya perlu diperiksa apakah busy flag tersebut bernilai “0” atau dapat
dilakukan dengan memberikan waktu lebih lama dari waktu yang dibutuhkan oleh
eksekusi instruksi itu sendiri diantara instruksi pertama dengan instruksi selanjutnya[8].
2.7.3. AC (Address Counter)
Fungsi dari AC adalah untuk mengamati DDRAM dan juga CGRAM[8].
2.7.4. DDRAM (Display Data RAM)
DDRAM digunakan untuk menyimpan tampilan data yang direpreresentasikan
dalam bentuk 8 bit kode karakter. DDRAM memiliki kapasitas 80 x 8 bit atau 80
karakter[8].
2.7.5. CGROM ( Character Generator ROM )
CGROM merupakan ROM (Random Only Memory) berukuran 80 x 8 bit yang
mampu membangkitkan bentuk dot matriks berukuran 5 x 8 maupun 5 x 10 dari 8 bit
2.7.6. CGRAM ( Character Generator RAM )
CGRAM merupakan RAM (Random Access Memory) berukuran 64 x 8 bit yang
memungkinkan untuk memprogram karakter yang diinginkan[8].
2.7.7. Deskripsi LCD
DB0 sampai dengan DB7 merupakan jalur data yang dipakai untuk menyalurkan
kodeASCIImaupun perintah pengatur kerja LCD tersebut[8].
RS merupakanRegister Select yang dipakai untuk membedakan jenis data yang
dikirim ke LCD. Jika RS=0, maka data yang dikirim adalah perintah untuk mengatur
kerja LCD tersebut. Sebaliknya jika RS=1, maka data yang dikirim adalah kode ASCII
yang ingin ditampilkan[8].
R/W merupakan Read/Write. Jika R/W = 0, menandakan akan diadakan
pengiriman data ke LCD. Dan jika R/W = 1, menandakan akan diadakan pengambilan
data dari LCD[8].
E (Enable) merupakan sinyal sinkronisasi. Saat E berubah dari “1” menjadi “0”,
maka data di DB0 hingga DB7 akan diterima atau diambil dari atau oleh LCD[8].
Untuk menyalakan backlight pada layar LCD maka Anoda dan Katoda akan
dihubungkan pada +5V dan ground. Letak Anoda dan Katoda terpisah dari pin, namun
23
2.7.8. Pin LCD
LCD memiliki 14 kaki pin dengan konfigurasi pin seperti tabel 2.7 berikut ini[8].
Tabel 2.5 Konfigurasi PIN LCD
Nomor Pin Simbol
1 Vcc (+5V)
2 Vee (0V)
3 GND (0V)
4 RS
5 R/W
6 E
7 DB0
8 DB1
9 DB2
10 DB3
11 DB4
12 DB5
13 DB6
14 DB7
2.8.
Komunikasi Serial
Komunikasi serial ialah komunikasi pengiriman data yang dilakukan per bit
secara serial, sehingga akan lebih lambat dibandingkan komunikasi paralel. Dikenal dua
cara komunikasi data secara serial, yaitu komunikasi data serial sinkron dan komunikasi
data serial asinkron. Pada komunikasi data serial sinkron,clockdikirimkan bersama-sama
dengan data serial, sedangkan komunikasi data serial asinkron, clock tidak dikirimkan
bersama data serial, tetapi dibangkitkan secara sendiri-sendiri baik pada sisi pengirim
Gambar 2.11. Blok diagram USART
Pada komunikasi asinkron setiap karakter yang dikirim akan disinkronkan
dengan menyisipkan bit-bitframing(pembingkaian) pada permulaan karakter yaitu 14 bit
start dan akhir karakter yaitu bit stop. Bit start selalu berlogika rendah (0) berfungsi
untuk mengidentifikasikan permulaan karakter. Setelah bit data terakhir (MSB), 1 bit
paritas disisipkan , yang berfungsi untuk mengecek keabsahan dari data yang dikirim.
Logika 1 untukparitas genap dan logika 0 untukparitas ganjil. Bitstop selalu berlogika
tinggi (1) dan berfungsi mengidentifikasikan akhir dari karakter[6].
Biasanya komunikasi serial digunakan untuk mengirimkan data antara dua
25
Gambar 2.12 Sebuah Frame pada Komunikasi Serial
2.9.
Port Serial
Dalam penyampaian data secara serial pada PC dibutuhkanport sebagai saluran
data.Portyang biasanya digunakan adalah DB9. Standar RS232 menyangkut komunikasi
data antar komputer (Data Terminal Equipment/DTE) dengan peralatan pada komputer
(Data Circuit-Terminating Equipment/DCE). Berikut konfigurasi port serial DB9
ditunjukkan pada gambar 2.13[7].
Gambar 2.13. Konfigurasi Port Serial DB9
Keterangan mengenai fungsi saluran RS232 pada konektor DB-9 adalah sebagai
berikut:
1. Received Line Signal Detect, dengan saluran ini DCE memberitahukan ke DTE
bahwa pada terminal masukan ada data masuk.
3. Transmit Data, digunakan DTE mengirimkan data dari DCE.
4. Data Terminal Ready, pada saluran ini DTE memberitahukan kesiapan
terminalnya.
5. Signal Ground, saluran ground.
6. Ring Indicator, pada saluran ini DCE memberitahu ke DTE bahwa sebuah stasiun
menghendaki hubungan dengannya.
7. Clear To Send, dengan saluran ini DCE memberitahukan bahwa DTE boleh
mengirimkan data.
8. Request To Send, dengan saluran ini DCE diminta mengirim data oleh DTE.
9. DCEReady, sinyal aktif pada saluran ini menunjukkan bahwa DCE sudah siap.
2.10. RS232
Terdapat beberapa macam cara untuk menerapkan interface data biner pada
komunikasi secara serial, salah satunya adalah RS-232 yang merupakan salah satu dari
standar yang dipilih dan sekarang telah dipakai secara luas dan dalam komunikasi data
umumnya digunakan untuk menghubungkan DTE (Data Terminal Equipment) ke DCE
(Data Communication Equipment) yang berupa peralatan sistem komunikasi analog[9].
RS232 merupakan singkatan dari Recommended Standard number232. Standar
ini dibuat oleh Electronic Industry Association (EIA), untuk interface antara peralatan
terminal data dan komunikasi data, dengan menggunakan data biner sebagai data yang
ditransmisi. RS232 adalah suatu data Serial Data Interface Standard yang dikeluarkan
oleh EIA. Standarisasi meliputi konektor, fungsi dan level tegangan atau arus. Standar ini
27
rangkaian fungsional. Beberapa karakteristik rangkaian fungsionalnya adalah sebagai
berikut[9] :
1. Logika ‘1’ disebut ‘mark’ terletak antara -3V hingga -25V.
2. Logika ‘0’ disebut ‘space’ terletak antara +3V hingga +25V.
3. Daerah tegangan antara -3V hingga +3V, ≤ -25V dan ≥ +25V adalah invalid
level, yaitu daerah tegangan yang tidak memiliki logika pasti dan harus
dihindari.
Rangkaian pengubah level tegangan TTL menjadi level tegangan RS232
menggunakan rangkaian voltage doubler atau rangkaian pengganda tegangan dan
rangkaianvoltage inverteratau rangkaian pembalik tegangan.Voltage doublerdigunakan
untuk menggandakan tegangan TTL. Logika “1” pada tegangan TTL adalah saat memiliki
tegangan +5V dan logika “0” adalah saat memiliki tegangan 0V. Untuk dapat diterima di
PC keadaan logika “1” harus terletak antara -3V hingga -25V dan logika “0” terletak
antara +3V hingga +25V maka dibutuhkan voltage doubler dan voltage inverter
sekaligus[9].
Gambar 2.14. adalah contoh pengiriman huruf ‘A’ pada level tegangan RS232
dalam format ASCII tanpa bit paritas[9].
Gambar 2.14. Pengiriman huruf ‘A’ pada level tegangan RS232
2.11. Pemrograman Visual Basic
Visual Basic merupakan salah satu bahasa pemrograman yang berorientasi pada
obyek (Object Oriented Programming). Salah satu kehandalan Visual Basic adalah
pembuatan aplikasi Graphical User Interface (GUI). Dalam pembuatan tampilan user
interfacenya relatif mudah dilakukan karena hanya perlu diletakkan obyek-obyek grafis
ke lembar (form) yang telah disediakan, setelah itu hanya perlu pengaturan properti dan
obyek-obyek tersebut menurut kreatifitas pemrogram[10].
2.11.1. Tampilan Awal Pada Visual Basic
Pada tahap awal penggunaan Visual Basic, akan menampilkan tampilan
ToolBox, ToolBar, PropertiesdanForm Layout[10].
Gambar 2.15 Visual Basic IDE (Integrated Development Environment)
IDE merupakan bidang kerja tempat progammer membuat aplikasi. Di dalam
IDE antara lain terdapat Programming Tools, Toolbox Controls, Form Windows,
Properties Windows, Project Windows, Code Windows, Immediate Windows, Form
29
2.11.2. Toolbar
ToolBaradalah tombol-tombol yang mewakili suatu perintah tertentu dari Visual
Basic. Setiap tombol tersebut dapat langsung diklik untuk melakukan perintah tertentu.
Tombol-tombol dan perintah-perintah yang sering digunakan dalam Visual Basic:[10]
Gambar 2.16. Toolbar Standar Visual Basic
2.11.3. Form Window
Form Windowatau jendela form adalah daerah kerja utama dimana akan dibuat
aplikasi-aplikasi Visual Basic. Pada form ini akan diletakkan berbagai macam objek
alternatif seperti misalnya teks, gambar, tombol-tombol perintah, scrollbar, dan
sebagainya. Jendela form pada gambar 2.17. ini pada awalnya terlihat kecil tetapi
ukurannya dapat diubah-ubah[10].
2.11.4. Toolbox
ToolBoxadalah sebuah kotak piranti yang mengandung semua kotak atau kontrol
yang dibutuhkan untuk membentuk suatu program aplikasi. Kontrol adalah suatu objek
yang akan menjadi interfacepenghubung antara program aplikasi dan penggunanya, dan
kesemuanya harus diletakkan dalam jendela form. Apabila pertama kali menjalankan
Visual Basic, makaToolBoxakan ditampilkan di sebelah kiri layer dan berisi objek-objek
standar yang akan muncul setiap Visual Basic dijalankan. Objek kontrol ini terdapat pada
semua versi dari Visual Basic 6.0[10].
Gambar 2.18. Toolbox Control
2.11.5. Project Explorer
Jendela Project Explorer adalah jendela yang mengandung semua file di dalam
apikasi Visual Basic disebut dengan istilah project (proyek), dan setiap proyek bisa
mengandung lebih dari satu file. Pada Project Explorer ditampilkan semua file yang
31
Gambar 2.19. Windows Project Explorer
2.11.6. Properties Window
JendelaProperties adalah jendela yang mengandung semua informasi mengenai
obyek, seperti nama, warna, ukuran, posisi, dan sebagainya. Setiap objek sebagian besar
memiki properties yang sama, tetapi ada pula yang berbeda-beda. Melalui jendela
properties ini dapat diatur bentuk dan karakteristik dari setiap obyek. Bagian paling atas
dari jendela properties ini terdapat kotak yang dapat menunjukkan nama obyek yang
sedang aktif, sedangkan propertinya ditampilkan dibagian bawah dari jendela properties
tersebut[10].
2.11.7. Form Layout Windows
Form Layout Windows adalah jendela yang menggambarkan posisi dari setiap
formyang ditampilkan pada layar monitor. PosisiformpadaForm Layout Windowsinilah
yang merupakan petunjuk dimana aplikasi yang dibuat akan ditampilkan pada layar
monitor akan dijalankan. Pengaturan letak aplikasi tersebut dapat diatur pada properties
formmaupuncode window[10].
Gambar 2.21. Form Layout
2.11.8. Code Window
Code windowmerupakan tempat untuk menuliskan kode atau program. Ada dua
combo box di bagian atas dari code windows, box yang kiri menunjukkan obyek yang
kodenya ditulis danbox yang kanan menunjukkan prosedur atau eventdari kontrol yang
33
Gambar 2.22. Code Window
2.11.9. Komunikasi Serial Pada Visual Basic
Pada komunikasi serial pada Visual Basic digunakan custom control yaitu
communication control. Sintaks yang digunakan pada Visual Basic antara lain yaitu:
1) [Variabel] = Comm1.Input: Membaca karakter-karakter dari buffer penerima dan
dimasukkan variabel.
2) Comm1.Output = [Variabel]: Mengirimkan karakter-karakter yang terdapat pada
variabel melalui port Comm1.
Pada prosedur penerimaan data secara serial digunakan kode program sebagai
berikut:
1) Comm1.CommPort = 1, perintah ini digunakan untuk menginisialisasi penggunaan
2) Comm1.Settings = ‘9600,N,8,1”, perintah ini digunakan untuk mengeset port com1
dengan parameter sebagai berikut:
a. Angka pertama menunjukkan kecepatan transmisi data 9600baud.
b. N (none) menunjukkan tidak ada paritas yang digunakan.
c. Angka ketiga menunjukkan jumlah bit yang dikirim dalam 1 karakter yaitu 8 bit.
d. Angka terakhir menunjukkan bit akhir (stop bit) dalam satu karakter.
3) Comm1. InputLen = 0, perintah ini digunakan untuk menyatakan banyaknya karakter
yang akan dibaca jika input digunakan.
4) Comm1.PortOpen = True, perintah ini digunakan untuk membuka (true) atau
menutup (false)portComm1.
Sedangkan pada prosedur pengiriman data digunakan kode program sebagai
berikut:
1. Comm1.CommPort = 1
2. Comm1.Settings = ‘9600,N,8,1”
3. Comm1.InputLen = 0
4. Comm1.PortOpen = True
5. Comm1.OutputLen = “Data yang akan dikirim”
35
BAB III
PERANCANGAN ALAT
3.1.
Blok Diagram Rangkaian
Untuk merealisasikan alat penghitung pemakaian listrik digital ini, maka langkah
yang pertama kali dilakukan adalah dengan membuat blok diagram alat seperti pada
gambar 3.1.
Gambar 3.1. Blok Diagram Rangkaian
3.2.
Realisasi Rangkaian
Langkah berikutnya adalah merealisasikan rangkaian setiap blok. Rangkaian yang
akan dibuat yaitu :
a. Rangkain sensor
b. Rangkaianschmitt trigger
c. Rangkaian Mikrokontroler
d. Rangkaian RS232 ke Komputer
3.3.
Rangkaian Sensor
Rangkaian sensor berfungsi sebagai masukan bagi sistem mikrokontroler.
Rangkaian sensor ini akan mendeteksi putaran piringan aluminium pada KWH Meter.
Pada piringan aluminium diberi lubang agar sensor optokopler dapat mendeteksi putaran
piringan aluminium tersebut.
Jumlah lubang akan mempengaruhi rumus perhitungan yang nantinya akan di
masukan ke mikrokontroler. Spesifikasi yang akan digunakan adalah sebagai beikut :
a. Piringan KWH meter memiliki 2 lubang pada pinggirannya.
b. KWH meter yang memiliki spesifikasi 150 putaran per KWH.
Gambar 3.2 Perancangan Posisi Sensor Pada Piringan KWH Meter
Pada Gambar 3.2 menunjukkan posisi sensor pada piringan KWH meter, serta
jumlah titik akan dibuat sebanyak 2 titik, serta jarak antara titik satu dengan yang lainnya
37
Gambar 3.3. Perancangan Rangkaian Sensor Optokopler
Pada rangkaian optokopler diatas, nilai R1 dan R2 didapatkan dengan
mengetahui bahwa fototransistor pada keadaan rendah (ON) atau arus I2minimal 0,3 mA
dan arus I2 maksimal 0,5 mA, maka nilai R2 dapat ditentukan sebagai berikut :
Nilai R2 itu adalah nilai batas maksimum. Jika misalnya nilai tersebut diperkecil
menjadi 10000Ω, maka akan menaikkan arus I2menjadi :
Sedangkan nilai R1 dapat dicari dengan mengetahui bahwa LED dapat dialiri
arus I1 minimal 20 mA, dari nilai arus maksimal tersebut nilai R1 dapat diketahui dengan
cara :
Nilai R1=250Ω, adalah nilai maksimum, jika menggunakan nilai R1 sebesar
Sehingga dengan menggunakan nilai R1 sebesar 220Ω, LED masih dapat bekerja
dengan baik, serta cahaya yang dihasilkan dapat dibaca oleh fototransistor.
Cara Kerja dari rangkaian sensor adalah sebagai berikut :
a) Saat piringan aluminium berputar maka lubang –lubang pada piringan
aluminium ikut berputar.
b) Lubang lubang tersebut dideteksi oleh sensor optokopler dimana keluarannya
berupa pulsa – pulsa listrik.
c) Pada saat sensor optokoupler bertemu lubang pada piringan aluminium maka
sinar infra merah atau sinar LED akan tembus sehingga sensor optokopler
mengalirkan arus listrik, sedangkan apabila tertutup maka sensor optokopler
akan berhenti mengalirkan arus listrik.
d) Besarnya tegangan yang dihasilkan saat optokopler terhalang adalah 4V –
4,8V, dan saat tidak terhalang 0,2V – 0,7V.
3.4.
Rangkaian Schmitt Trigger
Penggunaan inverter schmitt trigger pada rangkaian digunakan untuk
membersihkan desah, atau membersihkan isyarat yang lambat naik atau turun menjadi
pulsa digital yang cepat naik dan cepat turun. Salah satu IC schmitt trigger yang banyak
dijumpai di pasar adalah 74LS14. IC 74LS14 merupakan inverter schmitt trigger yang
memiliki 6 buah pin masukan dan 6 buah pin keluaran. Diagram Blok IC 74LS14
39
IC 74LS14 digunakan sebagai pembentuk gelombang kotak dengan keluaran 0V
dan 5V. Seperti pada gambar 3.5.
Gambar 3.4. Sinyal Masukan IC 74LS14
Gambar 3.5. Sinyal Keluaran IC 74LS14
3.5.
Rangkaian Mikrokontroler AVR Seri Atmega 16
Pada rangkaian mikrokontroler seperti pada gambar 3.6, port yang akan
digunakan adalah port A, port B, port C dan port D. Port A yang merupakan pin I/O dua
arah pada mikrokontroler akan digunakan sebagai input masukan pulsa dari optokopler
atau sebagai input dari sensor optokopler.
Port B digunakan sebagai input dari saklar, yang berfungsi untuk pengesetan
jam. Port B yang digunakan sebanyak 3 pin, yaitu pin PB1 sebagai tombol pemilihan
menu pada hitungan jam, pin PB2 sebagai tomboldown, serta PB3 sebagai tombolup.
Port C digunakan untuk pengiriman data ke LCD, karena pengiriman data
Sedangkan pin PC0 dan PC1 digunakan sebagai komunikasi serial I2C antara
mikrokontroler dengan RTC DS1307.
Port D akan digunakan sebagai komunikasi serial pada mikrokontroler. Untuk
melakukan pengiriman data digunakan pin ke-15, yaitu pin PD1 sedangkan untuk
melakukan penerimaan data digunakan pin ke-14, yaitu pin PD0. Pada pin PD7
digunakan untuk sinyal sinkronisasi LCD, sedangkan pin PD5 berfungsi sebagai
pengiriman dan pembacaan data LCD.
Untuk penggunaan besarnya nilai kristal yang digunakan berdasarkan pada data
sheet, dimana penggunaan kristal sebesar 11,0592 Mhz pada baud rate 9600 bps error
yang terjadi adalah 0 %. Penggunaan kapasitor pada pin VCC dan AVCC adalah untuk
meredamnoiseyang berasal dari CPU.
S W 6 1 2 U9A 74LS14 1 2 C25 1uF R3 2k7 S W 7 1 2 C18 0,1u U2 DS1307 4 7 5 1 2 6 3 8 GND SQW/OUT SDA X1 X2 SCLK VBAT VCC R4 2k7 C17 0,1u VCC U4 MAX232 13 8 11 10 1 3 4 5 2 6 12 9 14 7 16 15 R1IN R2IN T1IN T2IN C+ C1-C2+ C2-V+ V-R1OUT R2OUT T1OUT T2OUT VCC GND R 9 1 0
K 1M R7
J4 power 1 2 SW1 R E S E T 1 2 J2 LM7805
123
Y 2 32,768Khz VCC R 8 1 0 K C12 30pF VCC C2 47u C20 1uF C8 1uF VCC C13 30pF VCC Y 1 11.059MHZ R 1 0 1 0 K C19 1uF BT1 CR2303 1 2 U1 ATMEGA 16 9 21 10 30 12 13 14 15 16 17 18 19 20 40 39 38 37 36 35 34 33 22 23 24 25 26 27 28 29 1 2 3 4 5 6 7 8 32 31 11 RESET PD7 VCC AVCC XTAL2 XTAL1 PD0 PD1 PD2 PD3 PD4 PD5 PD6 PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7 PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7 PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 AREF GND GND2 VCC VCC J3 CON16 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 C21 1uF VCC J1 Sensor 1 2 3 C3 47u C14 1uF D8 1n4001 VCC J9 Serial Port 1 2 3 R6 330 C1 0,1uF VCC S W 5 1 2 J7 Programing 1 3 5 7 9 2 4 6 8 10 VCC R2 POT 1 3 2 R5 100K
41
Pada mikrokontroler juga dilengkapi dengan tombolresetyang digunakan untuk
mereset program mikrokontroler. Reset dilakukan secara otomatis pada saat power
diaktifkan. Berdasar data sheet, reset terjadi saat adanya logika 1 selama 2 siklus mesin
pada pin 9 (RST). Dalam perancangan ini karena menggunakan osilator kristal 12 MHz
dan 1 siklus mesin dikerjakan dalam 12 periode osilator, maka 1 siklus mesin dikerjakan
selama :
Sehingga pada 1 siklusnya adalah :
Dengan demikian untuk keperluan reset dibutuhkan logika 1 pada pin RST
selama 2 x 1 µd = 2 µd. Pada perancangan ini, digunakan nilai kapasitor sebesar C =1 µF
dan nilai resistor sebesar R = 100 KΩ. Pada saat sumber daya diaktifkan, karena muatan
kapasitor masih kosong (VC=0),, maka pin RST akan terhubung langsung dengan Vcc.
Sejalan dengan pertambahan waktu, kapasitor akan diisi muatannya yang
mengakibatkan VC bertambah besar dan VR akan mengecil. Perlu diperhatikan disini
untuk power-onresetadalah nilai R dan C, agar VR selama minimal 2 ud masih dianggap
berlogika 1. Berdasarkan data sheet ATMega 16, diketahui tegangan masukan logika 1
pin RST memiliki batas bawah sebesar 0,7Vcc. Dengan memasukan rumus VR, maka
Dengan demikian konstanta waktu RC haruslah lebih besar dari 5,602 µd. Jika
toleransi komponen R dan C diperhitungkan, maka pada perancangan digunakan waktu
reset (konstanta waktu RC) yang jauh lebih besar dari syarat, yaitu 100 ms dengan
menggunakan kapasitor C = 1 µF dan resistor R = 100 KΩ. Setelah power-on, kapasitor
akan terus terisi, hingga tegangan Vc sama dengan Vcc (dibutuhkan waktu 100 ms), yang
berarti pin RST akan berlogika 0 dan selesailah prosesreset.
Pada diagram Alir pemrograman mikrokontroler seperti yang ditujukan pada
gambar 3.7, hal pertama kali adalah memulai program kemudian inisialisasi port, dimana
hal ini sangat penting sebagai patokan port mana saja yang akan digunakan sebagai I/O
pada mikrokontroler.
Berikut ini adalah adalah contoh program inisialisasi port :
Config Porta = Input Config Portb = Input Config Portd = Output
Config Lcdpin = Pin , Db4 = Portc.4 , Db5 = Portc.5 , Db6 = Portc.6 , Db7 = Portc.7 , E = Portd.7 , Rs = Portd.5
Config Scl = Portc.0 Config Sda = Portc.1 Config Lcd = 16 * 2
43
Pada port C0 dan C1 digunakan untuk komunikasi serial I2C RTC DS1307,
sehingga diperlukan inisialisasi port pada awal program. Sedangkan Const DS1307w dan
Const Ds1307r digunakan untuk variabel yang nilainya tetap.
Pada program, mikrokontroler hanya melakukan penyimpanan pulsa KWH per
hari, sehingga untuk perhitungan biaya akan dilakukan pada program Visual Basic.
Berikut ini adalah program padasub-routineBaca_sensor:
Baca_sensor: If Pina.0 = 1 Then
Waitms 40
If Pina.0 = 1 Then If Sudah = 0 Then
Sudah = 1 Kwh = Kwh + 1 Gosub Tulis_eprom End If
End If Else
Sudah = 0 End If Return
Pada program sub-routine Baca_sensor terdapat waktu tunda sekitar 40 ms.
Waktu tunda ini dimaksudkan untuk menghindari terjadinya bouncing pada pembacaan
START
1. Inisialisasi Alamat Data 2. Inisialisai Alamat LCD 3. Inisialisasi Alamat RTC 3. Inisialisasi Komunikasi Serial
Read_ds1307
Clock_init
Konvert
Cetak_ds1307
Baca_rs232
Baca_Sensor Baca_eeprom
Cek_masukkan
Tulis_kwh
Check_setting A
A
Jika setting=0
Cursor Blink Cursor On Y
N
Cursor Noblink Cursor Off
Tulis_kwh
Gosub_masukkan1
Tunggu 100ms
B
B
C C
45
3.6.
Rangkaian RS232 ke Komputer
Komunikasi serial pada mikrokontroler ATMega16 dilakukan melalui port D dan
port A yang merupakan pin I/O dua arah pada mikrokontroler. Untuk melakukan
pengiriman data digunakan pin ke-15, yaitu pin PD1 sedangkan untuk melakukan
penerimaan data digunakan pin ke-14, yaitu pin PD0.
Untuk membangun hubungan komunikasi data serial memerlukan suatu
kecepatan data ( data transfer rate ) yang sesuai, baik di sisi komputer maupun di sisi
mikrokontroler. Oleh karena itu, diperlukan proses inisialisasi di sisi mikrokontroler.
Masukan TTL pada MAX232 ada dua, yaitu T1IN dan T2IN. Pada perancangan
dipilih T1IN sebagai masukan tegangan TTL dari mikrokontroler, yaitu data yang akan
dikirim. Sedangkan keluaran TTL pada MAX232 juga ada dua saluran, yaitu R1OUT dan
R2OUT. Pada perancangan dipilih R1OUT sebagai jalur data yang diterima oleh
mikrokontroler. Sedangkan masukan dan keluaran yang terhubung dengan port serial
dihubungkan dengan pin T1OUT dan R1IN. Ground pada rangkaian dengan ground pada
komputer dihubungkan, agar referensi tegangan antar kedua perangkat sama sehingga
data dapat diterima dan dikirim dengan acuan yang sama.
Fungsi kapasitor pada rangkaian pengubah level tegangan TTL ke level tegangan
RS232, yaitu sebagai kapasitor ekternal untuk voltage doubler. Masing-masing kapasitor
digunakan sebagai berikut :
1. C1+ sebagai kapasitor “+” internalvoltage doubler.
2. C1– sebagai kapsitor “+” internalvoltage doubler.
3. C2+ sebagai kapasitor “+” internalvoltage inverter.
Nilai – nilai kapasitor yang digunakan sesuai dengan nilai-nilai yang tertera pada
datasheet MAX232. Bila nilai C1 dan C2 dinaikan, maka akan mengurangi nilai
impedansi masukan rangkaian voltage doubler dan inverter. Bila nilai C3 dan C4
dinaikkan, maka akan mengurangi riak catu daya.
Pengaturan nilai baud rate pada mikrokontoler dilakukan dengan cara
menentukan nilai Register USARTbaud rate(UBRR) menggunakan rumus :
Nilai UBRR = (Frekuensi_kristal / (16 * baud_rate)) –1………..(3-2)
Sehingga jika ingin digunakan baud rate sebesar 9600 maka nilai UBBR dapat
dihitung :
Nilai UBRR = (11.052 MHz / (16*9600)) – 1
Nilai UBRR = 27………..(3-3)
Untuk dapat terjadi komunikasi antara port serial DB9 dengan komputer terlebih
dahulu dilakukan pengubahan level tegangan dari level tegangan TTL yang hanya
mempunyai kondisi tegangan positif hingga nol ke level tegangan RS232 yang mampu
menghasilkan tegangan keluaran positif, negatif, dan nol. Level tegangan RS232 ini
diperlukan karena komputer tidak dapat membaca data yang dikirimkan jika hanya
mempunyai tegangan positif dan nol. Pengubahan level tegangan ini dapat dilakukan
dengan menambahkan IC MAX232 antara port serial DB9 dan serial port pada komputer.
Awal dari algoritma penyusunan perangkat lunak sebagai komunikasi terhadap
perangkat keras adalah inisislisasi port serial, yang bertujuan supaya data input tersebut
dapat dibaca atau diterima oleh PC dengan menggunakan peragkat lunak visual basic.
Penggalan program untuk inisialisasi port serial pada visual basic :
MSComm1.CommPort = 1
47
Program pada baris pertama menujukan pemilihan COM yang digunakan dalam
hal ini adalah COM1. Selanjutnya pada baris kedua yaitu setting MSComm, nilai 9600
menujukan baud rate yang digunakan, N menujukan bahwa setting port serial tanpa
paritas, 8 menunjukan jumlah data 8 bit, dan 1 menujukan jumlah bit stop adalah 1 bit.
Untuk dapat menggirimkan data atau menerima data maka dibutuhkan program
sebagai berikut :
MSComm1.PortOpen = True
Apabila sudah selesai mengirimkan atau menerima data maka dapat diganti nilai
truedenganfalse.
MSComm1.PortOpen = False
Dengan demikian tidak akan terjadi komunikasi antara software dengan
hardware.
3.7.
Pemrograman Visual Basic
Visual basic di sini, berfungsi untuk menghitung jumlah biaya yang harus
dikeluarkan berdasarkan golongan listrik. Tampilan awal program ditujukan seperti pada
gambar 3.8.
Pada tampilan program tersebut, pertama kali adalah menekan “BUKA COM”
untuk mengecek, apakah com 1 tersedia atau tidak. Jika com 1 tidak tersedia maka blok
yang ditujukan nomer 2 akan berstatus “8005”, apabila com 1 digunakan untuk aplikasi
lain, maka akan berstatus "Port sedang dipakai aplikasi lain, silahkan dicek" , sehingga
com 1 tidak dapat digunakan. Untuk mengetahui apakah port siap digunakan maka akan
Gambar 3.8. Tampilan Program Pemakaian Biaya Listrik
Selanjutnya tekan “BACA KWH” yang berarti program akan terhubung dengan
mikrokontroler, dan membaca data yang terdapat dalam EEPROM. Data telah terbaca,
ditampilkan pada program. Blok yang ditujukan oleh angka 1 mengartikan tanggal dan
bulan dari jumlah putaran piringan KWH terbaru, sedangkan blok nomer 3 menunjukan
jumlah putaran piringan KWH setiap hari selama 2 bulan.
Untuk blok yang ditujukan nomer 4 menandakan jumlah putaran piringan KWH
selama 31 hari atau sebulan. Dari blok 1, 2, 3, 4, merupakan data yang didapatkan dari
hasil pembacaan EEPROM Mikrokontroler. Untuk melakukan perhitungan biaya maka
sebelumnya harus melakukan pemilihan pada “Golongan Pelanggan” dan “Daya Listrik
49
karena biaya setiap golongan akan sangat berbeda, begitu juga dengan pemilihan daya
listriknya juga berpengaruh terhadap perhitungan harganya.
Pada pemilihan golongan pelanggan listrik yang dipakai, disini disediakan 5
golongan yaitu golongan sosial, rumah tangga, bisnis, industri dan pemerintah.
Penggolongan ini didasarkan pada perbedaan tarif perKWH berdasarkan pada tabel 2.3.
Gambar 3.9 menunjukan diagram alir utama pada program pemakaian biaya
listrik. Pada blok perhitungan biaya, terdapat beberapa sub yang didalamnya terkandung 5
golongan pelanggan listrik.
Untuk mendapatkan total putaran pada piringan KWH meter digunakan
persamaan (2-1). Perhitungan tersebut menghasilkan jumlah nilai p sebagai total putaran
yang dihasilkan, selanjutnya nilai p tersebut akan dibagi dengan 150, nilai 150
berdasarkan spesifikasi KWH meter. Hasil pembagian tersebut adalah pemakaian daya
listrik yang terpakai.
51
Pada diagram alir tersebut, perhitungan biaya yang akan dilakukan sesuai dengan
pilihan pengguna saat pertama kali program dijalankan. Jika nilai G=S, maka perhitungan
yang dilakukan masuk pada perhitungan golongan sosial, dan seterusnya.
Setelah perhitungan biaya pemakain listrik didasarkan pada golongan, maka jika
ada golongan yang memiliki tarif insentif dan disinsentif akan dilakukan perhitungan
kembali, sebelum ditampilkan pada program.
Perhitungan diagram alir jika masuk pada golongan rumah tangga, maka
dibedakan menjadi dua. Jika daya yang digunakan antara < 450 VA – 2200 VA pemakain
dayanya akan dihitung berdasarkan perblok. Sedangkan selain itu pemakaian dayanya
akan dihitung perKWH.
Untuk melakukan penghematan energi listrik, maka pemerintah memberikan
kebijakan suatu tarif progresif. Kebijakan tarif progresif bertujuan agar pelanggan
menekan pemakaian listrik hingga sebatas kebutuhan wajar aktivitas sehari-hari. Untuk
itu, pelanggan rumah tangga dengan pemakaian KWH <80% rata-rata nasional akan
mendapat insentif. Sebaliknya pelanggan dengan pemakaian KWH >80% rata-rata
nasional akan dikenakan disinsentif. Nilai insentif dan disinsentif yang dilakukan pada
perhitungan berdasarkan pada tabel 2.1 dan tabel 2.2. Pada penentuan apakah KWH
melebihi atau kurang dari 80% KWHRN, dilakukan pada data KWH.
Gambar 3.13 adalah diagram alir pada golongan bisnis, dimana pada golongan ini,
juga diterapkan penghematan listrik dengan adanya program insentif dan disinsentif. Pada
golongan bisnis hanya terdapat satu pilihan perhitungan yaitu pemakaian daya listrik akan
di hitung perblok.
Pada diagram alir golongan industri tidak dikenakan tarif insentif dan disinsentif.
Pada gambar 3.14 menerangkan diagram alir pada golongan pemerintah yang hanya akan
menghitung pemakaian daya listrik berdasarkan per KWH. Pada golongan ini juga ada
pemberian intensif dan intensif yang bertujuan agar pemerintah juga melakukan
penghematan listrik. Besarnya nilai insentif dan disinsentif juga berbeda pada setiap daya
yang dipakai sesuai pada tabel 2.1.
Pada golongan rumah tangga ARN diartikan sebagai KWH pemakaian rata-rata
53
Gambar 3.13. Diagram Alir Perhitungan Biaya Listrik Golongan Bisnis
55
56
Pada Bab ini akan dibuktikan hasil perancangan dengan menampilkan beberapa
hasil percobaan beserta analisanya.
4.1
Pengamatan Pada Rangkaian Sensor
Rangkaian sensor terdiri atas optokopler dan IC 74LS14. Saat optokopler aktif
karena terkena cahaya dari diode, maka IC 74LS14 akan mendapat masukan logika ‘0’
sehingga keluaran berupa logika ‘1’, dan sebaliknya, jika optokopler tidak aktif, maka IC
74LS14 akan mendapat input logika ‘1’ sehingga keluaran berupa logika ‘0’.
Berikut ini adalah table hasil pengukuran dan pengamatan pada rangkaian
sensor,di mana Vin pada IC 74LS14 sama dengan Vout pada rangkaian optokopler dan
Vout dari IC 74LS14 adalah masukan bagi mikrokontroler ATmega 16. Pengukuran
menggunakan alat ukur berupa multimeter digital.
Berdasarkan tabel 4.1, optokopler akan aktif (ON) jika tidak terkena cahaya.
Tabel 4.1 Hasil Pengamatan Pada Rangkaian Sensor
Tegangan Pada
IC74LS14
Kondisi Pada Optokopler
Kena Cahaya Tidak Kena Cahaya
Vin 0,5 V 4,7 V
57
Berdasarkan tabel 4.1 dapat diketahui bahwa sensor optokopler akan aktif jika
terkena cahaya. Hal ini menunjukkan bahwa komponen pada sensor yaitu LED sebagai
pengirim cahaya serta fototransistor sebagai penerima cahaya bekerja dengan semestinya
sesuai dengan dasar teorinya. Pada nilai tegangan juga sudah sesuai dengan perancangan,
saat terhalang yaitu 4V – 4,8V, dan saat tidak terhalang 0,2V – 0,7V.
4.2
Pengamatan Pada Tampilan LCD
Pada pembuatan alat ini, tampilan LCD berguna untuk mengamati hari, tanggal,
jam, serta jumlah pulsa KWH Meter. Pada hasil percobaan LCD dapat menampilkan data
dengan baik dan sesuai yang diinginkan, seperti yang di tujukan pada gambar 4.1
Gambar 4.1. Tampilan LCD
Pada gambar 4.1 dapat diketahui bahwa alat dapat bekerja dengan baik, hal ini
4.3
Pengamatan Pada Visual Basic
Pengamatan pada Visual Basic, program dapat berjalan dengan baik, dimana
program Visual Basic dapat membaca data yang tersimpan pada mikrokontroler. Seperti
pada gambar 4.2 :
Gambar 4.2 Tampilan Program Visual Basic
Berdasarkan pada gambar 4.2 dapat diketahui juga proses kalkulasi yang juga
bekerja baik dengan perhitungan sampai dengan total tagihan, serta komunikasi serial
antara mikrokontroler dengan Visual Basic, hal ini dapat diketahui pada kolom status
59
Berdasarkan pada gambar 4.3 dan 4.4 dapat terlihat pergeseran Jumlah Pulsa
KWH meter perhari, dimana pulsa per hari yang terdapat pada kolom 2 berpindah
kekolom 1 sedangkan kolom ke 2 terisi oleh jumlah pulsa per hari yang baru. Hal ini
mendakan bahwa mikrokontroler dapat menyimpan pemakaian listrik selama 2 bulan, dan
data tersebut tidak akan hilang walau terjadi pemadaman listrik. Data yang tersimpan
pada mikrokontroler tidak akan penuh, karena data akan selalu berubah dan bergeser ke
kolom 1.
Gambar 4.3 Penyimpana data selama 2 bulan
1
Gambar 4.4. Pergeseran data pada bulan selanjutnya
4.4<