You are on page 1of 2

MEMBUAT SENDIRI FREKUENSI METER DIGITAL

Aplikasi Sistem Mikrokontroler


Zainal Abidin1)
1)
Divisi Sistem Mikrokontroler, PLATOGEOSAINS
Meteorologi, FITB – ITB – Indonesia

Kamis, 3 Desember 2009

PENDAHULUAN

Frekuensi meter adalah alat yang digunakan untuk mengukur frekuensi suatu sinyal
listrik. Frekuensi yang dimaksud adalah banyaknya pulsa tiap satuan waktu. Satuan frekuensi
adalah Hz atau s-1. Frekuensi meter biasanya ditambahkan pada multimeter digital yang cukup
mahal. Salah satu contohnya adalah UT60A buatan Hongkong.

Frekuensi meter dapat dibuat sendiri dengan memanfaatkan piranti counter (pencacah)
pada mikrokontroler (µC) ATMEGA 32. ATMEGA 32 merupakan sistem mikroprosesor 8 bit
berbasis RISC (Reduced Instruction Set Computing) dengan kecepatan maksimal 16 MHz.
Counter akan menghitung banyaknya pulsa dalam interval waktu tertentu yang dapat diatur oleh
pemrogram µC. Perhitungan tersebut didasarkan pada perubahan kondisi level tegangan TTL,
yaitu Falling dan Rising Edge. ATMEGA 32 memiliki dua buah counter melalui pin PB0 dan
PB1. Pin PB0 terhubung dengan counter 0 dan PB1 dengan counter 1. Counter 0 berukuran 8 bit
yang ditampung oleh sebuah register, yaitu TCNT0. Sedangkan counter 1 berukuran 16 bit yang
ditampung oleh dua buah register, yaitu TCNT1L dan TCNT1H. TCNT1L menampung 8 bit
hasil perhitungan pertama, sedangkan TCNT1H menampung 8 bit hasil perhitungan selanjutnya.
Tipe data kedua register tersebut adalah unsigned character dengan format heksadesimal.
Sehingga untuk mendapatkan hasil perhitungan counter 1, nilai TCNT1H harus digabungkan
dengan TCNT1L yang kemudian dikonversi menjadi desimal.

ATMEGA 32 juga menyediakan fitur overflow interrupt, yaitu penghentian program


utama sementara untuk menjalankan sub-program akibat melimpahnya nilai counter. Jika
counter 1 diaktifkan, interupsi tersebut akan tereksekusi setelah gabungan TCNT1H dan
TCNT1L menghasilkan bilangan desimal sebesar (216-1) = 65535. Walaupun counter 1 memiliki
ketelitian lebih tinggi (~1/65535) dibandingkan counter 0 (~1/255), tetapi penggunaan counter 1

PLATOGEOSAINS | Aplikasi Sistem Mikrokontroler 1


kurang efektif untuk aplikasi sistem µC. Oleh karena itu, penulis menggunakan counter 0 untuk
membuat frekuensi meter digital.

PRINSIP KERJA

Frekuensi meter ini akan menghitung banyaknya pulsa suatu sinyal listrik tiap lima detik.
Counter 0 berukuran 8 bit, hal ini berarti TCNT0 hanya mampu menampung (28-1) = 255 pulsa.
Agar frekuensi meter yang dibuat dapat menjangkau frekuensi seluas mungkin, maka penulis
mengaktifkan interupsi overflow. Variabel count merupakan penampung untuk penanda jumlah
kejadian interupsi. Formula konversi timer 01 dapat digunakan untuk mendapatkan jumlah total
pulsa, yaitu:

pulsa = (256*count) + TCNT0

Sedangkan frekuensi dapat diperoleh dari formula berikut:

frekuensi = pulsa/5

Firmware (program) dapat didownload di http://www.ziddu.com/download/7584735/


frekuensimeter.7z.html. Penulis menggunakan CodeVisionAVR C 2.03.4 sebagai editor
sekaligus kompiler kode program µC. CodeVisionAVR dapat memrogram waktu tunda mulai
dari 0.25 µs hingga 1000 ms (dengan X-TAL 4 MHz). Agar µC dapat melakukan penundaan
waktu hingga lima detik, penulis mengetikkan lima baris perintah delay_ms (1000);. Selain itu,
reset nilai count dan TCNT0 juga dilakukan setelah frekuensi ditampilkan pada terminal.
Jangkauan frekuensi meter mulai dari 1/5 = 0.2 Hz hingga [(256*65535)+255]/5 ~ 3.4MHz.

Sebelum program diatas dibuat, penulis melakukan sebuah eksperimen. Eksperimen


tersebut bertujuan untuk menyelidiki respon counter 0 ATMEGA 32. Penulis ingin mengetahui
tingkat kestabilan counter 0 dan kekonsistenan hasil perhitungan matematis pada µC. Tingkat
kestabilan counter 0 mirip ADC2 (Analog to Digital Converter = Konverter Analog ke Digital),
yaitu ± 1-2 LSB (Least Significant Bit). Hal ini merupakan bukti dari keterbatasan sistem
mikroprosesor 8 bit. Hasil perhitungan frekuensi di µC dan PC (Personal Computer)
menunjukkan hasil yang sama persis pada frekuensi 0.2–540 Hz (dengan waktu tunda satu
detik). Namun ketidakkonsistenan perhitungan mulai muncul pada frekuensi > 5 kHz.
1
Abidin, Zainal. 2009. Eksperimen Mikrokontroler (Timer). PLATOGEOSAINS: Bandung
2
Abidin, Zainal. 2009. Membuat Sendiri Volt Meter Digital. PLATOGEOSAINS: Bandung
PLATOGEOSAINS | Aplikasi Sistem Mikrokontroler 2

You might also like