Lire la fréquence d'un signal sinusoidale avec la carte Arduino

Adaptateur de niveaux
il faut un condensateur pour isoler C1, un pont diviseur pour atténuer, un pont de polarisation pour centrer le signal alternatif à un niveau acceptable pour le micro.

On va voir qu'on peut réaliser ces fonctions avec 3 résistances et 2 condensateurs.

Condensateur : il ne doit pas atténuer le signal. l'impédance d'un condensateur se calcule : Z= 1/(2PIC*F)
Si F = 250 kHz et si on prend C= 1µF on aura Z = 0,7 ohms ce qui est correct.
Idem pour C2 qui est le condensateur de découplage d'alimentation du micro. Pour l'alternatif une source de tension est un court-circuit. C'est pour améliorer ce rôle de court-circuit que l'on place des condensateurs de découplage. Là aussi il faudra prendre au minimum 1 µF.

Valeur des ponts :
Polarisation : R2 et R3.
Une entrée d'un micro ATMega commute autour de 2,3V pour éviter les instabilités en absence de signal à 250 kHz on choisira une tension de polarisation de 2V.
Ce qui donne R3/(R2+R3) = 0,4
On choisi de ne pas trop consommer dans le pont soit i= 1mA, on peut calculer R2 = 2V/ 1mA = 2kohms et donc R3 = 3kohms.

Atténuation:
Pour l'alternatif, et à cause de C2, R2 et R3 se trouvent placées en parallèle . La résistance équivalente formera le pont atténuateur avec R1.
Re = R2// R3 = R2*R3/ (R2 +R3) = 1,2kohms
Considérons qu'on a une valeur crête à crête de 20 V (en fait 17 V dans l'appli mais 20 V donne des marges) et qu'on veut la limiter à 5V, l'atténuation est égale à 4
Soit Re/(R1+Re) =1/4
ce qui donne R1 = 3 Re = 4,8 kohms

Pour la suite il existe des bibliothèques pour mesurer des fréquences.

forum_pont.png