Arduino Frequency Meter Gamit ang 16 × 2 Display

Subukan Ang Aming Instrumento Para Sa Pagtanggal Ng Mga Problema





Sa artikulong ito magtatayo kami ng isang digital frequency meter gamit ang Arduino na ang mga pagbasa ay ipapakita sa isang 16x2 LCD display at magkakaroon ng saklaw na pagsukat mula 35 Hz hanggang 1MHz.

Panimula

Ang pagiging mahilig sa electronics, lahat tayo ay maaaring magkaroon ng isang punto kung saan kailangan nating sukatin ang dalas ng aming mga proyekto.



Sa puntong iyon nais nating mapagtanto na ang isang oscilloscope ay isang kapaki-pakinabang na tool para sa pagsukat ng dalas. Ngunit, alam nating lahat na ang isang oscilloscope ay isang mamahaling tool hindi lahat ng mga hobbyist ay kayang bayaran ang isa at ang oscilloscope ay maaaring isang labis na tool para sa mga nagsisimula.

Upang mapagtagumpayan ang isyu ng pagsukat ng dalas, ang hobbyist ay hindi nangangailangan ng isang mamahaling oscilloscope, kailangan lang namin ng isang meter ng dalas na maaaring masukat ang dalas na may makatwirang kawastuhan.



Sa artikulong ito ay gagawa kami ng isang meter ng dalas, na kung saan ay simpleng upang makagawa at magiliw ng nagsisimula, kahit na ang noob sa Arduino ay maaaring magawa nang madali.

Bago pumunta sa mga detalye sa konstruksyon, tuklasin natin kung ano ang dalas at kung paano ito masusukat.

Ano ang Frequency? (Para sa mga noobs)

Pamilyar tayo sa term na dalas, ngunit ano talaga ang ibig sabihin nito?

Sa gayon, ang dalas ay tinukoy bilang bilang ng mga oscillation o cycle bawat segundo. Ano ang kahulugan ng kahulugan na ito?

Nangangahulugan ito ng bilang ng beses na ang amplitude ng 'isang bagay' ay pataas at pababa sa ONE segundo. Halimbawa dalas ng lakas ng AC sa aming tirahan: Ang amplitude ng 'boltahe' ('isang bagay' ay pinalitan ng 'boltahe') ay pataas (+) at pababa (-) sa isang segundo, na 50 beses sa karamihan ng mga bansa.

Ang isang ikot o isang pag-oscillation ay binubuo ng pataas at pababa. Kaya't isang pag-ikot / pag-oscillation ay ang amplitude mula sa zero hanggang positibong rurok at bumalik sa zero at pumupunta sa negatibong rurok at babalik sa zero.

Ang 'tagal ng panahon' ay isang term na ginamit din habang nakikipag-usap sa dalas. Ang tagal ng panahon ay ang oras na ginugol upang makumpleto ang 'isang pag-ikot'. Ito rin ang kabaligtaran na halaga ng dalas. Halimbawa 50 Hz ay ​​may 20 ms time period.

1/50 = 0.02 segundo o 20 millisecond

Sa ngayon magkakaroon ka ng ideya tungkol sa dalas at mga kaugnay na term.

Paano sinusukat ang dalas?

Alam namin na ang isang ikot ay kombinasyon ng mataas at mababang signal. Upang sukatin ang tagal ng mataas at mababang signal, gumagamit kami ng 'pulseIn' sa arduino. sukatin ng pulseIn (pin, MATAAS) ang tagal ng mataas na signal at pulseIn (pin, LOW) sukatin ang tagal ng mababang signal. Ang tagal ng pulso ng pareho ay idinagdag na nagbibigay ng tagal ng panahon ng isang pag-ikot.

Ang natukoy na tagal ng oras pagkatapos ay kinakalkula para sa isang segundo. Ginagawa ito sa pamamagitan ng sumusunod na pormula:

Freq = 1000000 / tagal ng panahon sa microseconds

Ang tagal ng panahon mula sa arduino ay nakuha sa microseconds. Hindi sample ng arduino ang dalas ng pag-input para sa buong segundo, ngunit hinuhulaan nito nang wasto ang dalas sa pamamagitan ng pag-aaral ng tagal ng tagal ng isang cycle.

Ngayon alam mo kung paano sinusukat at kinakalkula ng arduino ang dalas.

Ang circuit:

Ang circuit ay binubuo ng arduino na utak ng proyekto, 16x2 LCD display, IC 7404 inverter at isang potentiometer para sa pag-aayos ng kaibahan ng LCD display .

Ang panukalang pag-setup ay maaaring masukat mula sa 35Hz hanggang 1 MHz.

Koneksyon sa display ng Arduino:

Ang nasa itaas na diagram ay nagpapaliwanag sa sarili, ang koneksyon ng mga kable sa pagitan ng arduino at pagpapakita ay pamantayan at mahahanap namin ang mga katulad na koneksyon sa iba pang mga proyekto na batay sa arduino at LCD.

Arduino Frequency Meter Gamit ang 16x2 Display

Ang diagram sa itaas ay binubuo ng inverter IC 7404. Ang papel na ginagampanan ng IC 7404 ay upang maalis ang ingay mula sa input, upang ang ingay ay hindi magpalaganap sa arduino na maaaring magbigay ng maling pagbasa at maaaring tiisin ng IC 7404 ang maikling boltahe ng spike na hindi pumasa sa mga pin ng arduino Ang IC 7404 ay naglalabas lamang ng mga hugis-parihaba na alon kung saan madaling sukatin ng arduino ang madaling ihambing sa mga alon ng analogue.

TANDAAN: Ang maximum na rurok sa rurok na input ay hindi dapat lumagpas sa 5V.

Programa:

//-----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-----//

Pagsubok sa dalas ng metro:

Kapag matagumpay mong naitayo ang proyekto, kinakailangan upang suriin kung ang lahat ay gumagana nang maayos. Kailangan naming gumamit ng isang kilalang dalas upang kumpirmahin ang mga pagbasa. Upang magawa ito ginagamit namin ang inbuilt na pagpapaandar ng PWM ng arduino na may dalas na 490Hz.

Sa pin na programa ay pinapagana ang 490Hz sa 50% na cycle ng tungkulin, maaaring makuha ng gumagamit ang input wire ng frequency meter at ipasok sa pin # 9 ng arduino tulad ng ipinakita sa pigura, maaari nating makita ang 490 Hz sa LCD display. (na may ilang pagpapaubaya), kung matagumpay ang nabanggit na pamamaraan, handa ka na sa metro ng dalas na maghatid sa iyo ng mga eksperimento.

Prototype ng may-akda:

Arduino Frequency Meter Prototype na Larawan

Maaari ring subukan ng gumagamit ang prototype ng circuit circuit ng dalas ng metro ng Arduino sa pamamagitan ng paggamit ng panlabas na generator ng dalas na ipinapakita sa larawan sa itaas.




Nakaraan: Arduino Pure Sine Wave Inverter Circuit na may Buong Program Code Susunod: Paggawa ng Single Channel Oscilloscope gamit ang Arduino