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
KWH METER
SENSOR
MIKROKONTROLER
DISPLAY
3.2.
Realisasi Rangkaian Langkah berikutnya adalah merelaisasikan rangkaian setiap blok, Rangkaian rangkaian yang akan dibuat yaitu : Rangkaian Sensor Rangkaian Mikrokontroler Rsngksisn Display
Rangkaian sensor berfungsi sebagai masukkan bagi sistem mikrokontroler. Rangkaian sensor ini akan mendeteksi putaran piringan alumunium pada KWH Meter. Pada piringan alumunium diberi lubang agar sensor optocoupler dapat mendeteksi putaran piringan alumunium tersebut seperti yang terlihat pada Gambar 3.2
Setelah dilubangi, KWH Meter di modifikasi dengan membuat kedudukan untuk sensor opto sehingga akan menjadi seperti pada Gambar 3.3 Jumlah lubang akan mempengaruhi rumus perhitungan yang nantinya akan di masukan ke mikrokontroler. Sebagai contoh alat yang dibuat disini, KWH Meter memiliki spesifikasi 1200 putaran per KWH, artinya harus ada 20 putaran per menit untuk mencapai satu KWHnya. Perhitungan biaya per KWH saat ini berdasarkan TDL R2 (3500 Watt) adalah Rp. 600,00 ( sudah berikut PPN ) artinya per menit = Rp. 10,00. Jika demikian apabila lubangnya dibuat menjadi 10 titik maka jumlah pulsa
per KWH adalah 20 putaran x 10 titik = 200 titik. Dari perhitungan diatas didapat nilai setiap lubang per menitnya adalah 10 : 200 = Rp. 0,05
Gambar 3.3 memperlihatkan cara meletakan sensor optocoupler pada rangka KWH Meter.
1. Saat piringan alumunium berputar maka lubang lubang pada piringan alumunium ikut berputar. 2. Lubang lubang tersebut dideteksi oleh sensor optocoupler dimana keluarannya berupa pulsa-pulsa listrik 3. Pada saat sensor optocoupler bertemu lubang pada piringan alumunium maka sinar infra merah atau sinar LED akan tembus sehingga sensor optocoupler mengalirkan arus listrik, sedangkan apabila tertutup maka sensor optocoupler akan berhenti mengalirkan arus listrik
4. Pulsapulsa listrik itu kemudian diolah agar keluarannya sesuai dengan yang dibutuhkan oleh masukkan dari mikrokontroler.
Optocoupler
3.2.2 Rangkaian Mikrokontroler Rangkaian mikrokontroler berisikan sebuah mikrokontroler Atmel, sebuah rangkaian kristal dan rangkaian reset. Port yang difungsikan untuk mengendalikan tampilan display adalah Port 1.0 Port 1.7 dan Port 2.0 Port 2.7. Untuk dapat mengendalikan kerja dari mikrokontroler ini, sebuah program harus dibuat untuk kemudian di-download ke dalam mikrokontroler pada bagian Flash Mikrokontroler.
3.2.3 Rangkaian Display Rangkaian display berisikan delapan buah seven segment Penampil Seven Segment bertugas untuk menampilkan jumlah biaya pemakaian biaya listrik dalam rupiah, sedangkan alumunium pada KWH Meter. ecompile LED menampilkan putaran piringan
3.3
Perancangan Program untuk Mikrokontroler AT89C51 Setelah merealisasikan rangkaian perangkat keras sistem, maka langkah
selanjutnya adalah membuat program untuk menjalankan alat tersebut. Program untuk mikrokontroler AT89C51 ini dibuat menggunakan bahasa assembler ASM51. Sesudah di-compile menjadi file hexa (*.hex), program ini kemudian di-download ke dalam mikrokontroler menggunakan mikrokontroler programmer.
3.3.1. Program Untuk Mikrokontroler Program pada mikrokontroler ini terdiri dari program penerima sinyal masukkan, program untuk menghitung pulsa per menitnya, program perhitungan biaya dan program penampil seven segment
3.3.1.1.Diagram Alir
Program Utama :
START
RET1
Siapkan lokasi memori penampung tampilan seven Untuk mendapatkan 1 detik maka perlu di set ke mode 1 dan pencacah diberi nilai 50000 mickrodetik * 20 = 1000000 mikrodetik = 1 detik, demikian pula untuk 1 menit maka perlu dikalikan 60 detik
Non-aktifkan timer 0
Tidak
Ya
Pindahkan biaya listrik ke lokasi memori penampung tampilan 7 segment
RET1
Program ini berfungsi untuk membaca pulsa pulsa masukkan yang dikirimkan sensor dan kemudian melakukan perhitungan dan menampilkan jumlah dari pemakaian energi listrik dalam rupiah yang ditampilkan oleh seven segment. Listing programnya adalah sebagai berikut : waktu equ org jmp org jmp org jmp -49995 0h utama 03h pulsa 0bh menit ; inisialisasi interupsi timer0 ; inisialisasi interupsi eksternal0 ; konstanta waktu = -49995 (49,995ms) ; inisialisasi interupsi reset
utama: mov mov mov mov mov mov mov mov mov mov mov mov mov
r0,#0 r1,#0 r2,#0 r3,#0 r4,#0 r5,#0 r6,#0 r7,#0 30h,#0 31h,#0ah 32h,#0ah 33h,#0ah 34h,#0ah
mov mov mov mov mov mov mov mov setb setb mov mov scan: mov
35h,#0ah 36h,#0ch 37h,#0bh 38h,#20 39h,#60 tmod,#01h th0,#high(waktu) tl0,#low(waktu) tr0 it0 ie,#83h ; aktifkan timer ; interupsi eksternal terjadi ; aktifkan interupsi timer dan eksternal ; isi pencacah timer ; faktor pengali timer untuk 1 detik ; faktor pengali timer untuk 1 menit
dptr,#angka0 ; simpan base address angka pada DPTR a,37h ; tampilkan tampilan awal pada 7segmen
movc a,@a+dptr mov mov call mov p2,a p1,#11111110b tunggu a,36h
movc a,@a+dptr mov mov call mov p2,a p1,#11111101b tunggu a,35h
movc a,@a+dptr mov mov call mov mov p2,a p1,#11110111b tunggu dptr,#angka1 a,33h
movc a,@a+dptr mov mov call mov mov p2,a p1,#11101111b tunggu dptr,#angka0 a,32h
movc a,@a+dptr mov mov call mov p2,a p1,#11011111b tunggu a,31h
movc a,@a+dptr mov mov call mov p2,a p1,#10111111b tunggu a,30h
movc a,@a+dptr mov mov call jmp p2,a p1,#01111111b tunggu scan
pulsa: inc inc inc inc inc cjne mov inc cjne mov inc cjne mov inc cjne mov inc cjne mov
r0 r0 r0 r0 r0 r0,#0ah,back r0,#0 r1 r1,#0ah,back r1,#0 r2 r2,#0ah,back r2,#0 r3 r3,#0ah,back r3,#0 r4 r4,#0ah,back r4,#0
inc cjne mov inc cjne mov inc cjne mov back: reti
menit: clr mov mov setb djnz mov djnz mov cjne cjne cjne cjne cjne jmp
tr0 th0,#high(waktu) tl0,#low(waktu) tr0 38h,belum 38h,#20 39h,belum 39h,#60 r7,#0,ubah r6,#0,ubah1 r5,#0,ubah2 r4,#0,ubah3 r3,#0,ubah4 ubah5 ; aktifkan timer ; keluar jika belum 1 detik ; isi ulang pencacah 1 detik ; keluar jika belum 1 menit ; isi ulang pencacah 1 menit ; jika harga tidak = 0, lompat ke ubah ; isi ulang timer
ubah: mov ubah1: mov ubah2: mov ubah3: mov ubah4: mov ubah5: mov belum: reti
mov
40h,#3
3.3.1.3.Cara Kerja Alat Pulsapulsa listrik yang dikeluarkan oleh sensor terjadi karena adanya putaran piringan alumunium dan lubanglubang di pinggirnya menyebabkan sinar dari optocoupler terputusputus dan menimbulkan pulsa pulsa tersebut. Pulsapulsa itu kemudian diumpankan ke rangkaian inverter. Untuk ini kami menggunakan IC HD 7404 yaitu IC inverter. Inverter ini dibutuhkan karena sinyal masukkan yang
diinginkan oleh mikrokontroler adalah aktif rendah. Setelah itu pulsapulsa tersebut diolah pada mikrokontroler secara perhitungan matematisnya dan disajikan melalui tampilan seven segment.