Perancangan Program Pengujian Rangkaian Mikrokontroller AVR ATMega8535

elektronik. Tegangan pemicu dari transistor berasal dari mikrokontroller. Pada saat mikrokontroller memberikan logika tinggi high, maka transistor mendapat tegangan bias dari kaki basis. Dengan adanya tegangan ini maka transistor akan aktif saturation, sehingga ada arus yang mengalir ke kumparan relay. Hal ini akan menyebabkan saklar pada relay 12 Volt DC tertutup, sehingga arus akan mengalir ke kumparan coil relay 220 Volt AC. Pada keadaan ini, saklar NO normally open pada relay 220 Volt AC akan tertutup dan daya dari PLN akan mengalir ke MCB dan KWH Meter yang selanjutnya ke beban. Demikian juga sebaliknya, pada saat mikrokontroller memberikan logika rendah low maka relay pun tidak akan dialiri arus dan saklar relaypun akan tetap terbuka sehingga daya dari PLN akan terputus.

3.2 Perancangan Program

Diagram alir pemrogramannya adalah sebagai berikut : Start Baca Sisa KWH Input = 1? Baca Input Counter Counter + 1 Counter = 10? Kwh + 1 Counter = 0 Tampilkan ke LCD End Ya Ya Tidak Tidak Sisa 20 KWH? Hidupkan Lampu Peringatan Ya Tidak Sisa = 0 KWH? Nonaktifkan Relay 12 VDC 220 VAC Ya Tidak Gambar 3.9 Flow Chart Program Sistem Universitas Sumatera Utara Pada saat power dihidupkan, maka program akan langsung membaca jumlah unit KWH sisa yang ada di memori dan akan Langsung ditampilkan ke display LCD. Apabila program membaca jumlah unit KWH yang tersisa kurang dari 20 KWH maka program akan mengirimkan perintah untuk menghidupkan alarmlampu indikator tanda Voucher yang akan segera habis dan disarankan untuk segera melakukan pengisian voucher unit KWH. Kemudian program akan melanjutkan menghitung counter. Dan apabila program membaca unit sisa KWH sisa sama dengan nol maka program akan memberikan perintah untuk menonaktifkan relay 12 Volt DC, kontak relay ini akan memutuskan hubungan dari koil relay 220 Volt AC dan menonaktifkannya. Counter akan mengenali setiap perubahan logika low 0 menjadi high 1 sebagai 1 putaran piringan KWH Meter. Apabila counter telah menghitung putaran piringan sampai sepuluh kali maka program akan menambahkan satu 1 unit nilai KWH. Artinya satu 1 unit KWH sama dengan sepuluh 10 putaran piringan KWH Meter, dan pemakaian ini akan langsung dikurangkan dari unit KWH awal, kemudian sisanya akan ditampilkan pada display LCD 2 X 16. Pengurangan unit KWH sesuai dengan putaran piringan akan berlangsung terus sampai unit KWH sama dengan nol 0. Setelah ini, pelanggan akan mengisi voucher unit KWH Meternya dan pengurangan unit KWH Meterpuan akan berlangsung kembali seperti dijelaskan di atas. Universitas Sumatera Utara BAB IV PENGUJIAN ALAT DAN PROGRAM

4.1 Pengujian Rangkaian Mikrokontroller AVR ATMega8535

Untuk mengetahui apakah rangkaian mikrokontroller bekerja dengan baik, maka dilakukan pengujian. Pengujian pada bagian ini dilakukan dengan memberikan program sederhana pada mikrontroller. Programnya adalah sebagai berikut : Moving LED CodeVisionAVR C Compiler Chip: ATMega8535 Memory Model: SMALL Data Stack Size: 128 bytes 8 LEDs are connected between the PORTC outputs and +5V using 1K current limiting resistors The LEDs anodes are connected to +5V IO register definitions for ATMega8535 include mega8535.h quartz crystal frquency [Hz] define xtal 12000000 moving LE D frequency [Hz] define fmove 2 the LE D on PORTC output 0 will be on unsigned char led_status= 0xfe; TIME R1 overflow interrupt service routine occurs every 0.5 seconds Universitas Sumatera Utara interrupt [TIM1_OVF] void timer1_overflowvoid { preset again TIME R1 TCNT1= 0x10000-xtal1024fmove; move the LE D led_status = 1; led_status|= 1; if led_status= = 0xff led_status= 0xfe; turn on the LED PORTC= led_status; } void mainvoid { set the IO ports all PORTC pins are outputs DDRC= 0xff; turn on the first LE D PORTC= led_status; init TIME R1 TIME R1 is disconnected from pin OC1 no PWM TCCR1A= 0; TIME R1 clock is xtal1024 TCCR1B= 5; preset TIME R1 TCNT1= 0x10000-xtal1024fmove; clear TIME R1 interrupts flags TIFR= 0; enable TIME R1 overflow interrupt TIMSK= 0x80; all other interrupt sources are disabled GIMSK= 0; global enable interrupts asm sei endasm the rest is done by TIME R1 overflow interrupts while 1; } Program diatas bertujuan untuk menghidupkan LED berjalan Running LED yang terhubung ke PortC. Kristal yang digunakan adalah kristal 12 MHz dan frekuensi Universitas Sumatera Utara pemindahan LED adalah 2 Hz. Setelah didownload ke mikrokontroller, program ini telah berjalan dengan baik dan LED bekerja sesuai dengan perintah.

4.2 Pengujian Rangkaian Sensor Optocoupler