Măsurare frecvență cu Arduino

 Autor:   Publicat pe:    Niciun comentariu
Măsurarea frecvenței unui semnal folosind o placă de dezvoltare Arduino pare un lucru simplu. Dar,  mediul de dezvoltare Arduino nu prevede o funcție simplă care analizează un semnal de pe un pin și întoarce frecvența acestuia. Există funcția pulseIn pe care mulți utilizatori Arduino o folosesc pentru a măsura frecvențe, dar utilitatea ei este în a măsura durata unui semnal. Măsurarea unui singur ciclu al unui semnal oscilant nu este o metodă corectă pentru determinarea frecvenței acelui semnal. Mai mult de atât, „frecvența” maximă ce poate fi determinată astfel este de doar 50 kHz.

Măsurarea corectă a frecvenței unui semnal folosind un microcontroller se face numărând pulsațiile semnalului necunoscut într-un interval de timp bine determinat. Pentru o apreciere corectă, în acel interval de timp, semnalul ar trebui să treacă prin sute sau mii de tranziții (oscilații). Acest mod de măsurare presupune configurarea unor timer-e hardware. Timer-ul este un registru special care își incrementează valoarea sincron cu oscilatorul principal al sistemului sau în funcție de oscilațiile unui semnal extern aplicat pe un pin al microcontroller-ului.

Măsurare frecvență cu Arduino