Pengukur Frekuensi Arduino Menggunakan Tampilan 16 × 2

Coba Instrumen Kami Untuk Menghilangkan Masalah





Pada artikel ini kita akan membuat pengukur frekuensi digital menggunakan Arduino yang pembacaannya akan dipamerkan pada layar LCD 16x2 dan akan memiliki rentang pengukuran dari 35 Hz hingga 1MHz.

pengantar

Menjadi penggemar elektronik, kita semua akan menemukan titik di mana kita perlu mengukur frekuensi dalam proyek kita.



Pada saat itu kami akan menyadari bahwa osiloskop adalah alat yang sangat berguna untuk mengukur frekuensi. Tapi, kita semua tahu bahwa osiloskop adalah alat yang mahal tidak semua penghobi mampu membelinya dan osiloskop mungkin merupakan alat yang berlebihan untuk pemula.

Untuk mengatasi masalah pengukuran frekuensi, hobbyist tidak membutuhkan osiloskop yang mahal, kita hanya membutuhkan pengukur frekuensi yang dapat mengukur frekuensi dengan cukup akurat.



Pada artikel ini kita akan membuat pengukur frekuensi, yang mudah dibuat dan ramah bagi pemula, bahkan noob di Arduino dapat melakukannya dengan mudah.

Sebelum membahas detail konstruksi, mari kita telusuri apa itu frekuensi dan bagaimana frekuensi itu dapat diukur.

Apa itu Frekuensi? (Untuk noobs)

Kita sudah familiar dengan istilah frekuensi, tapi apa sebenarnya artinya?

Frekuensi didefinisikan sebagai jumlah osilasi atau siklus per detik. Apa arti definisi ini?

Ini berarti berapa kali amplitudo 'sesuatu' naik dan turun dalam SATU detik. Misalnya frekuensi daya AC di tempat tinggal kita: Amplitudo 'tegangan' ('sesuatu' diganti dengan 'tegangan') naik (+) dan turun (-) dalam satu detik, yaitu 50 kali di sebagian besar negara.

Satu siklus atau satu osilasi terdiri dari naik dan turun. Jadi satu siklus / osilasi adalah amplitudo bergerak dari nol ke puncak positif dan kembali ke nol dan pergi ke puncak negatif dan kembali ke nol.

'Jangka waktu' juga merupakan istilah yang digunakan untuk menangani frekuensi. Jangka waktu adalah waktu yang dibutuhkan untuk menyelesaikan 'satu siklus'. Ini juga merupakan nilai kebalikan dari frekuensi. Misalnya 50 Hz memiliki jangka waktu 20 ms.

1/50 = 0,02 detik atau 20 milidetik

Sekarang Anda akan memiliki gambaran tentang frekuensi dan istilah terkaitnya.

Bagaimana frekuensi diukur?

Kita tahu bahwa satu siklus adalah kombinasi sinyal tinggi dan rendah. Untuk mengukur durasi sinyal tinggi dan rendah, kami menggunakan 'pulseIn' di arduino. pulseIn (pin, HIGH) mengukur durasi sinyal tinggi dan pulseIn (pin, LOW) mengukur durasi sinyal rendah. Durasi pulsa keduanya ditambahkan yang memberikan jangka waktu satu siklus.

Jangka waktu yang ditentukan kemudian dihitung selama satu detik. Ini dilakukan dengan rumus berikut:

Frek = 1000000 / periode waktu dalam mikrodetik

Jangka waktu dari arduino diperoleh dalam mikrodetik. Arduino tidak mengambil sampel frekuensi masukan untuk seluruh detik, tetapi memprediksi frekuensi secara akurat hanya dengan menganalisis periode waktu satu siklus.

Sekarang Anda tahu bagaimana arduino mengukur dan menghitung frekuensinya.

Sirkuit:

Rangkaian terdiri dari arduino yang merupakan otak proyek, layar LCD 16x2, inverter IC 7404 dan satu buah potensiometer untuk mengatur kontras layar LCD .

Pengaturan yang diusulkan dapat mengukur mulai dari 35Hz hingga 1 MHz.

Koneksi tampilan Arduino:

Diagram di atas sudah cukup jelas, koneksi kabel antara arduino dan layar adalah standar dan kami dapat menemukan koneksi serupa pada proyek berbasis arduino dan LCD lainnya.

Pengukur Frekuensi Arduino Menggunakan Tampilan 16x2

Diagram diatas terdiri dari IC inverter 7404. Peran IC 7404 adalah untuk menghilangkan noise dari input, sehingga noise tidak akan merambat ke arduino yang dapat memberikan pembacaan yang salah dan IC 7404 dapat mentolerir tegangan lonjakan pendek yang tidak akan lolos ke pin arduino. IC 7404 hanya mengeluarkan gelombang persegi panjang di mana Arduino dapat mengukur dengan mudah dibandingkan dengan gelombang analog.

CATATAN: Input puncak ke puncak maksimum tidak boleh melebihi 5V.

Program:

//-----Program Developed by R.Girish-----//
#include
LiquidCrystal lcd(12, 11, 5, 4, 3, 2)
int X
int Y
float Time
float frequency
const int input = A0
const int test = 9
void setup()
{
pinMode(input,INPUT)
pinMode(test, OUTPUT)
lcd.begin(16, 2)
analogWrite(test,127)
}
void loop()
{
lcd.clear()
lcd.setCursor(0,0)
lcd.print('Frequency Meter')
X=pulseIn(input,HIGH)
Y=pulseIn(input,LOW)
Time = X+Y
frequency=1000000/Time
if(frequency<=0)
{
lcd.clear()
lcd.setCursor(0,0)
lcd.print('Frequency Meter')
lcd.setCursor(0,1)
lcd.print('0.00 Hz')
}
else
{
lcd.setCursor(0,1)
lcd.print(frequency)
lcd.print(' Hz')
}
delay(1000)
}
//-----Program Developed by R.Girish-----//

Menguji pengukur frekuensi:

Setelah Anda berhasil membangun proyek, Anda perlu memeriksa apakah semuanya berfungsi dengan baik. Kami harus menggunakan frekuensi yang diketahui untuk mengkonfirmasi pembacaan. Untuk mencapai hal ini kami menggunakan fungsi PWM bawaan arduino yang memiliki frekuensi 490Hz.

Dalam program pin # 9 diaktifkan untuk memberikan 490Hz pada siklus kerja 50%, pengguna dapat mengambil kabel input dari pengukur frekuensi dan memasukkan pin # 9 arduino seperti yang ditunjukkan pada gambar, kita dapat melihat 490 Hz di layar LCD (dengan sedikit toleransi), jika prosedur yang disebutkan berhasil, pengukur frekuensi Anda siap melayani percobaan.

Prototipe penulis:

Gambar Prototipe Pengukur Frekuensi Arduino

Pengguna juga dapat menguji prototipe rangkaian pengukur frekuensi Arduino ini dengan menggunakan generator frekuensi eksternal yang ditunjukkan pada gambar di atas.




Sepasang: Sirkuit Inverter Gelombang Sinus Murni Arduino dengan Kode Program Penuh Berikutnya: Membuat Osiloskop Saluran Tunggal menggunakan Arduino