Misuratore di frequenza Arduino con display 16 × 2

Prova Il Nostro Strumento Per Eliminare I Problemi





In questo articolo costruiremo un frequenzimetro digitale utilizzando Arduino le cui letture saranno mostrate su un display LCD 16x2 e avranno un range di misura da 35 Hz a 1MHz.

introduzione

Essendo appassionati di elettronica, ci saremmo tutti imbattuti in un punto in cui dobbiamo misurare la frequenza nei nostri progetti.



A quel punto ci saremmo resi conto che un oscilloscopio è uno strumento così utile per misurare la frequenza. Ma sappiamo tutti che un oscilloscopio è uno strumento costoso non tutti gli hobbisti possono permetterselo e l'oscilloscopio potrebbe essere uno strumento eccessivo per i principianti.

Per superare il problema della misurazione della frequenza, gli hobbisti non hanno bisogno di un costoso oscilloscopio, abbiamo solo bisogno di un frequenzimetro in grado di misurare la frequenza con ragionevole precisione.



In questo articolo creeremo un frequenzimetro, che è semplice da costruire e adatto ai principianti, anche i noob in Arduino possono realizzare con facilità.

Prima di entrare nei dettagli costruttivi, esploriamo cos'è la frequenza e come può essere misurata.

Cos'è la frequenza? (Per i principianti)

Conosciamo il termine frequenza, ma cosa significa veramente?

Ebbene, la frequenza è definita come il numero di oscillazioni o cicli al secondo. Cosa significa questa definizione?

Significa il numero di volte che l'ampiezza di 'qualcosa' sale e scende in UN secondo. Ad esempio la frequenza della corrente alternata presso la nostra residenza: l'ampiezza di 'voltaggio' ('qualcosa' è sostituito da 'voltaggio') sale (+) e scende (-) in un secondo, che è 50 volte nella maggior parte dei paesi.

Un ciclo o un'oscillazione comprende su e giù. Quindi un ciclo / oscillazione è l'ampiezza che va da zero al picco positivo e torna a zero e va al picco negativo e torna a zero.

'Periodo di tempo' è anche un termine usato quando si parla di frequenza. Il periodo di tempo è il tempo necessario per completare 'un ciclo'. È anche il valore inverso della frequenza. Ad esempio, 50 Hz ha un periodo di tempo di 20 ms.

1/50 = 0,02 secondi o 20 millisecondi

A questo punto avresti un'idea della frequenza e dei suoi termini correlati.

Come viene misurata la frequenza?

Sappiamo che un ciclo è una combinazione di segnale alto e basso. Per misurare la durata dei segnali alti e bassi, usiamo 'pulseIn' in arduino. pulseIn (pin, HIGH) misura la durata dei segnali alti e pulseIn (pin, LOW) misura la durata dei segnali bassi. Viene aggiunta la durata dell'impulso di entrambi che fornisce il periodo di un ciclo.

Il periodo di tempo determinato viene quindi calcolato per un secondo. Questo viene fatto seguendo la formula:

Freq = 1000000 / periodo di tempo in microsecondi

Il periodo di tempo da arduino è ottenuto in microsecondi. Arduino non campiona la frequenza di ingresso per un secondo intero, ma prevede la frequenza accuratamente analizzando il periodo di tempo di un solo ciclo.

Ora sai come arduino misura e calcola la frequenza.

Il circuito:

Il circuito è costituito da arduino che è il cervello del progetto, display LCD 16x2, inverter IC 7404 e un potenziometro per la regolazione del contrasto display LCD .

La configurazione proposta può misurare da 35Hz a 1 MHz.

Connessione display Arduino:

Lo schema sopra è autoesplicativo, la connessione del cablaggio tra arduino e display è standard e possiamo trovare connessioni simili su altri progetti basati su arduino e LCD.

Misuratore di frequenza Arduino con display 16x2

Lo schema sopra è costituito dall'inverter IC 7404. Il ruolo dell'IC 7404 è eliminare il rumore dall'ingresso, in modo che il rumore non si propaghi ad arduino che potrebbe fornire false letture e l'IC 7404 può tollerare brevi picchi di tensione che non passeranno pin di arduino. IC 7404 emette solo onde rettangolari in cui arduino può misurare facilmente rispetto alle onde analogiche.

NOTA: l'ingresso massimo da picco a picco non deve superare i 5V.

Programma:

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

Testare il frequenzimetro:

Una volta costruito con successo il progetto, è necessario verificare se tutto funziona correttamente. Dobbiamo usare una frequenza nota per confermare le letture. Per ottenere ciò, stiamo utilizzando la funzionalità PWM incorporata di arduino che ha una frequenza di 490 Hz.

Nel programma il pin # 9 è abilitato per dare 490Hz al 50% di duty cycle, l'utente può afferrare il filo di ingresso del frequenzimetro e inserirlo nel pin # 9 di arduino come mostrato in figura, possiamo vedere 490 Hz sul display LCD (con una certa tolleranza), se la procedura menzionata ha avuto successo, il frequenzimetro è pronto a servirti esperimenti.

Prototipo dell'autore:

Immagine prototipo del misuratore di frequenza Arduino

L'utente può anche testare questo prototipo di circuito del misuratore di frequenza Arduino utilizzando un generatore di frequenza esterno mostrato nell'immagine sopra.




Precedente: Circuito inverter a onda sinusoidale pura Arduino con codice programma completo Avanti: Realizzazione di un oscilloscopio a canale singolo utilizzando Arduino