Je suis en train de refaire une carte neuve au propre et je teste avec mon acs neuf
Ps rien à voir: éxiste il un document internet genre catalogue qui recense tout les composants électronique?
bon ben avec un acs neuf ça me plait mieux:
Bon les valeurs ne sont pas précise car l'ampérage à été mesuré avec un Ampéremettre à aiguille
Bonjour à tous, ça fait longtemps que je n'ai pas avancé sur le sujet faute de temps professionnellement, enfants malades, sepulturesss et autres soucis...
A ce jour le souci qui se pose est la lecture (du courant transformé en voltage par mon acs758) via l'arduino (car j'ai fait un découpage au mosfet donc un signal en créneau)
du coup l'arduino lis la tension au seuil max ou 0.6V suivant le timing ou il arrive.
J'ai essayé de lisser le résultat avec un condensateur mais la tension ne commence à varier qu'a partir de 10A soit 1.2 V environ.
Mes questions sont après plusieurs recherche:
Les condensateur (tantale, chimique ...) travaille t'ils avec une voltage mini?
Ou que j'ai fait une boulette?
Bonjour,
Pour moyenner, il faut un filtre, il faut donc une résistance et une capa.
Ceci dit, si c'est possible, il est préférable de synchroniser le PWM et l'ADC pour échantillonner le courant au bon moment.
Si ce n'est pas possible, il est peut-être possible d'échantillonner continuellement et de voir, en fonction de la valeur obtenue, si le courant circule dans la charge ou non, et d'en déduire si la valeur mesurée a de la valeur ou non.
Ces deux dernières techniques supposent que le capteur de courant à une bande passante (très) supérieure à la fréquence du PWM et que le temps d'échantillonage de l'ADC est (très) inférieur à la durée d'un pulse PWM.
Deux pattes c'est une diode, trois pattes c'est un transistor, quatre pattes c'est une vache.
Je ne vais pas pouvoir synchroniser la lecture sur la pwm car dans mon codage arduino j'ai des fonctions "delay".
effectivement si je n'ai pas de résistance ça pose problème:
Pour le condo je sais le calculer.
Pour la resistance à mettre en place: y a t'il un valeur à respecter ou formule?
Deux pattes c'est une diode, trois pattes c'est un transistor, quatre pattes c'est une vache.
En fait effectivement je pense avoir fait une confusion:
Donc effectivement à ce jour je mettait le condensateur Cf mais pas la charge Rf
Sachant que j'ai une fréquence de 500Hz
Que VIout ira de 0.6V à 2V grand max
que suivant la data sheet de l'acs:
VIout to gnd = 3 mA
VCC to VIout = 1mA
Je dirai pour le condensateur : C= IΔu×f soit 3 uf
mais pour la résistance:
U=RxI
2=Rx0.003
R= 666 Ohm
donc je mettrai une résistance de 680 Ohm?
Bonjour,
ces courants sont les courant max admissibles, ils signifient juste que tu ne doit pas tirer plus de 1mA sur la sortie, ou envoyer plus de 3mA sur la sortie.
Ton RC constitue un filtre qui doit atténuer les oscillations de la tension de sortie VIOUT pour ne garder que la tension moyenne. La fréquence de coupure du filtre doit être choisie telle que les fréquences supérieures à la fréquence du PWM soient très atténuées. Tu pourras par exemple prendre une fréquence de coupure 10 ou 100 fois plus faible que la fréquence du PWM. Plus tu augmentes la fréquence de coupure, plus les oscillations en sortie du filtre augmente ; plus tu la diminue plus elle diminuent. En contrepartie, une fréquence trop basse diminue la réactivité du filtre.
Combien de bit fait ton ADC ?
Deux pattes c'est une diode, trois pattes c'est un transistor, quatre pattes c'est une vache.
il fait 10 bits
Pour le filtre du coup je peut mettre un 100uf ou plus si je veut parfaitement lisser, mais plus j'augmenterai plus le temps de réaction à la lecture serra long. (ce qui n'est pas un souci pour moi)
donc si je vais tirer moins de 1mA sur ma sortie il faut que je mette une résistance inférieure donc 2/0.001 = 2000 Ohm
Donc par sécurité je peut mettre une 2.7KOhm
Bonjour,
Il n'est pas indispensable que tu comprennes ce qui est en gris :
il fait 10 bits
1LSB sous 10bit, c'est 1/1024e de Pleine Echelle (PE), soit -60dB PE.
J'imagine que tu utilises une tension de référence de PE = 2.5V pour ton ADC. Le PWM en sortie du capteur fera 5V max (pire-cas, le capteur de courant est à son max), l'amplitude du fondamental à la fréquence du PWM sera donc de 4/pi*5V d'amplitude au max, soit 8/pi PE, soit 8dB PE.
Il faut donc que ton filtre atténue de 68dB la tension fournie par le capteur pour que l'ondulation ne se retrouve pas en sortie du CAN.
Avec un filtre du premier ordre, cela impose de choisir une fréquence de coupure valant 2500 fois plus faible que la fréquence du PWM, soit : 0.2Hz.
Avec un filtre du second ordre, cela impose de choisir une fréquence de coupure valant 50 fois plus faible que la fréquence du PWM, soit : 10Hz.
La fréquence de coupure d'un filtre RC vaut : 1/(2*pi*R*C).
Un filtre RC passif "de fortune" peut se faire en mettant directement deux filtres RC du premier ordre en série. En prenant les valeurs {R0 et C0} pour le premiers et {10*R0 et C0/10} pour le second, tels que fc=1/(2*pi*R0*C0), avec fc la fréquence de coupure du filtre (ici : 10 Hz).
Tu peux par exemple prendre R0=3.3k et C0= 4.7µF
Je te laisse calculer le RC pour un premier ordre.
Le temps de réaction, c'est le temps entre le moment ou le rapport cyclique change de valeur et celui où la tension en sortie du filtre atteint la bonne valeur.Pour le filtre du coup je peut mettre un 100uf ou plus si je veut parfaitement lisser, mais plus j'augmenterai plus le temps de réaction à la lecture serra long. (ce qui n'est pas un souci pour moi)
Oui. Tu peux aussi mettre beaucoup plus pour diminuer la taille du condensateur.donc si je vais tirer moins de 1mA sur ma sortie il faut que je mette une résistance inférieure donc 2/0.001 = 2000 Ohm
Donc par sécurité je peut mettre une 2.7KOhm
Dernière modification par Antoane ; 09/05/2016 à 13h17.
Deux pattes c'est une diode, trois pattes c'est un transistor, quatre pattes c'est une vache.
Merci Antoane pour ta réponse mais étant novice dans le domaine, il va falloir que je trouve un cours pour ce que tu viens de parler bits/db...
donc je te remercie, mais je vais d'abord étudier ce que tu vient de me donner comme information et je reviendrai plus tard.
Ps: connait tu un site avec un cours la dessus
bonjour,Bonjour,
Il n'est pas indispensable que tu comprennes ce qui est en gris :
1LSB sous 10bit, c'est 1/1024e de Pleine Echelle (PE), soit -60dB PE.
J'imagine que tu utilises une tension de référence de PE = 2.5V pour ton ADC. Le PWM en sortie du capteur fera 5V max (pire-cas, le capteur de courant est à son max), l'amplitude du fondamental à la fréquence du PWM sera donc de 4/pi*5V d'amplitude au max, soit 8/pi PE, soit 8dB PE.
Il faut donc que ton filtre atténue de 68dB la tension fournie par le capteur pour que l'ondulation ne se retrouve pas en sortie du CAN.
Avec un filtre du premier ordre, cela impose de choisir une fréquence de coupure valant 2500 fois plus faible que la fréquence du PWM, soit : 0.2Hz.
Avec un filtre du second ordre, cela impose de choisir une fréquence de coupure valant 50 fois plus faible que la fréquence du PWM, soit : 10Hz.
La fréquence de coupure d'un filtre RC vaut : 1/(2*pi*R*C).
Un filtre RC passif "de fortune" peut se faire en mettant directement deux filtres RC du premier ordre en série. En prenant les valeurs {R0 et C0} pour le premiers et {10*R0 et C0/10} pour le second, tels que fc=1/(2*pi*R0*C0), avec fc la fréquence de coupure du filtre (ici : 10 Hz).
Tu peux par exemple prendre R0=3.3k et C0= 4.7µF
Pièce jointe 313717
Je te laisse calculer le RC pour un premier ordre.
Le temps de réaction, c'est le temps entre le moment ou le rapport cyclique change de valeur et celui où la tension en sortie du filtre atteint la bonne valeur.
Oui. Tu peux aussi mettre beaucoup plus pour diminuer la taille du condensateur.
j'avais des questions pour essayer de comprendre apprendre:
10 bits = 1024 points: j'ai compris (2 exposant 10).
Comment tu passe de 1024 à -60dB ?
dB = décibel ?
pi = 3.141592654... ?
Donc un filtre premier ordre pour mon arduino 500 Hz (500/2500 = 0.2Hz)
donc : 1/(2*pi*R*C)
Si je prend un condensateur de 22 µF : Fc=1/(2*pi*R*C) : 0.2 =1/(2*pi*R*C) : R = 36.172KOhm
Donc premier RC : R= 36 KOhm C = 22 µF
Donc second RC : R= 360 KOhm C = 2.2 µF
Bonjour,
oui.
20*log(1/1024)=-60dBComment tu passe de 1024 à -60dB ?
le signal carré de fréquence f° en entrée du filtre peut être décomposé en une somme de sinus de fréquences f°, 3*f°, 5*f°... (https://en.wikipedia.org/wiki/Fourier_series, https://en.wikipedia.org/wiki/Square_wave)
Ton carré a pour amplitude 0/5V, donc l'amplitude crête à crête du sinus de fréquence f° est 4/pi*5V.
Le but est, qu'en sortie du filtre, ce sinus ait une amplitude inférieure à 1LSB, c'est à dire à : ( [la pleine échelle de l'ADC] divisée par 1024 ).
Ce que j'explique, c'est qu'il faut :Donc un filtre premier ordre pour mon arduino 500 Hz (500/2500 = 0.2Hz)
donc : 1/(2*pi*R*C)
Si je prend un condensateur de 22 µF : Fc=1/(2*pi*R*C) : 0.2 =1/(2*pi*R*C) : R = 36.172KOhm
Donc premier RC : R= 36 KOhm C = 22 µF
Donc second RC : R= 360 KOhm C = 2.2 µF
- ou bien un unique filtre du premier ordre coupant à ~0.2Hz
- ou bien un filtre du second ordre (c'est à dire deux filtres du 1er ordre) coupant à ~10Hz
Un unique RC tel que R=36k et C=22µF convient donc. Cependant, 36k n'est pas normalisé, il faudra plutôt utiliser 33 ou 39k.
Deux pattes c'est une diode, trois pattes c'est un transistor, quatre pattes c'est une vache.
ok je vais continuer à étudier.
que vaut t'il mieux 1 gros filtre premier ordre ou deux plus petit du premier?
C'est assez kifkif.
Le 2e ordre sera plutôt plus petit et plus performant.
Deux pattes c'est une diode, trois pattes c'est un transistor, quatre pattes c'est une vache.