'Resolu ' mesure de courant et tension

Pascal17740: non je n ai jamais parler de - 5v mais de -13,5 A pour 0V et 13.5 pour +5V

--> c'est quoi le petit tiret avant le 5?

Pascal17740: bonjour je viens de develloper sur une uno juste la fonction mesure de courant mais le resultat n 'est pas celui escompter si je force l entree analogique a + 5 volts j obtiens dans serial tension capteur 5 V , courant capteur 13.6 A et des que je force l entree a gnd tension capteur - 5 V , courant capteur -13.6 A je ne vois pas ou est le pb

avec la pin à GND vous devriez avoir dans la console 0V avec la formule... mais comme vous refusez de copier coller ce qui s'affiche, on ne sait pas...

68tjs: Je ferai autrement, la mise au point ne se fait pas comme cela, il faut de la rigueur. Je commencerai par faire la mesure avec un voltmètre, avec et sans courant (--> mesure du Vcc/2 réel en sortie de capteur). Je ferai le calcul avec une calculette. Je regarderai si la mesure est déconnante ou si elle est correcte. A quoi sert d'aligner des lignes de code si l'électronique n'est pas validée avant ?

Ensuite si c'est bon on passe à la programmation 1) Je ne laisserai branché QUE le capteur. 2) je partirai sur une seule mesure, sans aucun moyenage et je vérifierai la validité de la mesure. 3) Je séparerai dès le début le courant de la composante continue (déjà mesurée) de sortie du capteur et je validerai le calcul. Tant que ce ne sera pas bon il faudra trouver la raison.

4) Je connecterai le restant en vérifiant régulièrement la validité de la mesure : c'est le meilleur moyen pour trouver une éventuelle incohérence de câblage --> c'est le meilleur mais aussi en fin de compte le plus rapide.

5) si le besoin s'en fait sentir, [u]et seulement si c'est nécessaire[/u], j'introduirai un moyenage.

Question : Est-ce logique d'accumuler les mesures brutes (composante continue + courant), d'en faire la moyenne et seulement à la fin soustraire la composante continue de la mesure ? Cette composante continue est bien déterminée, la lecture de la datasheet valide bien qu'elle est égale non pas à 2,5V mais à Vcc/2 [u]c'est quelque peu différent[/u]. Même si la mesure de l'ADC du micro est bruitée une mesure au voltmètre de ce Vcc/2 donnera un résultat précis et fiable.

Pour moi ce n'est pas logique, il faut soustraire cette valeur de la mesure brute avant de faire l'accumulation. Cela peut fonctionner mais ce n'est pas logique et ce qui n'est pas logique sera à un moment ou à un autre source d'erreur.

je ne branche pas de capteur je veux verifier cette formule qui est sense me donner 5 A lorsque je passe a 5 v l entree analogique et 0 lorsque la broche est a GND. car il est pas normal d obtenir des valeur de -13.5 a 0 v et 13, 5 a vcc

J-M-L: --> c'est quoi le petit tiret avant le 5?

avec la pin à GND vous devriez avoir dans la console 0V avec la formule... mais comme vous refusez de copier coller ce qui s'affiche, on ne sait pas...

c est une erreur de frappe je voulais marque 0 v quand au copier coller j ai beau surligner les resultat dans la console je n ai pas la fonction copier qui marche .

Que ce soit dans la console ou dans la fenêtre de compilation, il suffit de sélectionner le résultat avec la souris puis faire CTRL+C pour copier Et CTRL + V pour coller dans le forum.

Tension capteur (V) = 5.01 Courant capteur (A) = 13.58 Tension capteur (V) = 5.01 Courant capteur (A) = 13.58 Tension capteur (V) = 5.01 Courant capteur (A) = 13.58 Tension capteur (V) = 5.01 Courant capteur (A) = 13.58 Tension capteur (V) = 5.01 Courant capteur (A) = 13.58 Tension capteur (V) = 5.01 Courant capteur (A) = 13.58 Tension capteur (V) = 5.01 Courant capteur (A) = 13.58 Tension capteur (V) = 5.01 Courant capteur (A) = 13.58 Tension capteur (V) = 5.01 Courant capteur (A) = 13.58 Tension capteur (V) = 5.01 Courant capteur (A) = 13.58 Tension capteur (V) = 5.01 Courant capteur (A) = 13.58 Tension capteur (V) = 5.01 Courant capteur (A) = 13.58 Tension capteur (V) = 5.01 Courant capteur (A) = 13.58 Tension capteur (V) = 5.01 Courant capteur (A) = 13.58 Tension capteur (V) = 0.00 Courant capteur (A) = -13.51 Tension capteur (V) = 0.00 Courant capteur (A) = -13.51 Tension capteur (V) = 0.00 Courant capteur (A) = -13.51 Tension capteur (V) = 0.00 Courant capteur (A) = -13.51 Tension capteur (V) = 0.00 Courant capteur (A) = -13.51 Tension capteur (V) = 0.00 Courant capteur (A) = -13.51 Tension capteur (V) = 0.00 Courant capteur (A) = -13.51 Tension capteur (V) = 3.34 Courant capteur (A) = 4.55 Tension capteur (V) = 3.33 Courant capteur (A) = 4.50 Tension capteur (V) = 3.33 Courant capteur (A) = 4.50 Tension capteur (V) = 3.34 Courant capteur (A) = 4.52 Tension capteur (V) = 3.34 Courant capteur (A) = 4.52 Tension capteur (V) = 3.34 Courant capteur (A) = 4.52 Tension capteur (V) = 3.34 Courant capteur (A) = 4.52 Tension capteur (V) = 3.33 Courant capteur (A) = 4.50

OK donc votre code et votre arduino fonctionnent. pas de soucis.

Dans la vraie vie en courant continue une intensité de 0A vous donnera un courant proche de Vcc / 2 donc vous serez toujours au dessus de ce seuil dans la mesure de AnalogRead() (échantilloné) et donc la formule mathématique de l'intensité ne passera pas négative.

(68tjs dira que dans la vraie vie va falloir tenir compte des petites approximations et il aura raison)

Le principe de ce produit est simple : il est prévu pour le continu comme pour l'alternatif. Comme on évite au maximum d'utiliser une double tension +5V et -5V, le concepteur du produit a prévu un décalage sur la sortie égal à Vcc/2 et j'y tiens absolument Vcc/2 pas 2,5V --> si Vcc = 4,8V la sortie sera égale à 2,4 V et avec 2.5 la valeur de ton courant sera fausse !

Donc cette valeur de Vcc/2 ne représente en rien la valeur du courant. Avant toute manipulation du résultat il faut VIRER cette composante continue de Vcc/2. Sinon tu compliques inutilement comme en ce moment.

Je te rappelle que je t'ai dit qu'en fonctionnement avec un courant continu si tu fais passer le courant dans un sens la mesure [u]vraie/u aura un sens et si tu inverse le câblage tu obtiendra la même valeur absolue mais avec le signe opposé.

je veux bien comprendre ta variation de vcc/2

mais cela n explique pas pourquoi j obtient 13.5 ampere a vcc et non 5 amperes.....

Je n'ai pas regardé mais en faisant confiance à 68tjs --> La formule qui donne l'intensité pour un x05B (Imax = 5A sensibilité = 185 mV par ampère)

Vs = 2,5 + 0,185 * I   (I en ampères)

soit

I = (Vs - 2,5) / 0,185

MAIS comme votre capteur est calibré pour ne pas mesurer plus de 5A, ça veut donc dire que Vs ne sera jamais égal à 5V mais au mieux il sera à environ 3.425V ce qui donne bien les 5A souhaités -> analogRead() sera environ à 700.

votre "simulation" sort des conditions normales de fonctionnement du capteur et donc la formule est hors intervalle de validité

Tiens une bonne remarque et j'ajoute c'est quelle version de capteur exactement ?

Parce qu'avec les renseignements donnés au compte goutte je n'arrive plus à m'y retrouver. Dans le code j'ai aperçu une version 5A et dans le texte il me semble avoir lu une version 20 A

RAZ --> Remise à Zéro pour ceux qui ne comprennent pas le français. Si je reprends en tenant compte de la remarque judicieuse de J-M-L

La datasheet est prévue pour 3 versions du circuit x05B Imax = 5A sensibilité = 185 mV par ampère x20A Imax = 20A sensibilité 100 mV par ampère x30A Imax = 30A sensibilité = 66 mV par ampère

Soit une excursion maximale par version avec un Vcc théorique égal à 5,00 V

| Version | Vmax si sens positif | Vmin si sens négatif | | - | - | - | | x05B | 2,5V + 0,185x5 = 3,425V | 2,5V - 0,185 x 5 = 1,575V | | x20A | 2,5V + 0,100x 20 = 4,5V | 2,5 V -0,100 x 20 = 0,5 V | | x30A | 2,5V + 0,066x 30 = 4,48 V | 2,5V + 0,066x 30 = 0,52V |

Conclusion : ta méthode de placer à 0 et à Vcc n'est pas bonne. Franchement je n'avais compris ce que tu voulais faire, je pensais que tu voulais seulement vérifier les entrées de ta carte. Si tu veux étalonner il faut utiliser une charge réelle, utiliser un multimètre en fonction ampèremètre et comparer les résultats. Si tu veux simuler tu peux utiliser un potentiomètre branché entre la masse et le Vcc et dont tu règles la tension de sortie avec un voltmètre.

Mais as-tu seulement un multimètre, je me pose la question.

Question qui j'espère obtiendra une réponse : le code c'est toi qui l'a pondu ou tu l'a récupéré ?

J-M-L:
Je n’ai pas regardé mais en faisant confiance à 68tjs → La formule qui donne l’intensité pour un x05B (Imax = 5A sensibilité = 185 mV par ampère)

Vs = 2,5 + 0,185 * I   (I en ampères)

soit

I = (Vs - 2,5) / 0,185

MAIS comme votre capteur est calibré pour ne pas mesurer plus de 5A, ça veut donc dire que Vs ne sera jamais égal à 5V mais au mieux il sera à environ 3.425V ce qui donne bien les 5A souhaités → analogRead() sera environ à 700.

votre “simulation” sort des conditions normales de fonctionnement du capteur et donc la formule est hors intervalle de validité

pour respecter les ordre des priorite mathematique Vs = 2,5 +( 0,185 * I)   (I en ampères)
avec butee haute a vs = 3.425
cela deviens de suite plus comprehensif

Pascal17740: pour respecter les ordre des priorite mathematique Vs = 2,5 +( 0,185 * I)  (I en ampères) avec butee haute a vs = 3.425 cela deviens de suite plus comprehensif

que dire... la multiplication étant prioritaire en notation mathématiques sur l'addition, mon expression est entièrement correcte.... désolé...

il n'y a que vous qui ne comprenez pas depuis le début j'ai l'impression... ou alors on était dans un flou artistique :) moi aussi je pensais que vous ne vouliez que vérifier si les entrées analogiques de votre carte étaient en bon état... (cf mon post plus haut où je dis "votre code et votre arduino fonctionnent. pas de soucis")

68tjs: Tiens une bonne remarque et j'ajoute c'est quelle version de capteur exactement ?

Parce qu'avec les renseignements donnés au compte goutte je n'arrive plus à m'y retrouver. Dans le code j'ai aperçu une version 5A et dans le texte il me semble avoir lu une version 20 A

RAZ --> Remise à Zéro pour ceux qui ne comprennent pas le français. Si je reprends en tenant compte de la remarque judicieuse de J-M-L Soit une excursion maximale par version avec un Vcc théorique égal à 5,00 V

| Version | Vmax si sens positif | Vmin si sens négatif | | - | - | - | | x05B | 2,5V + 0,185x5 = 3,425V | 2,5V - 0,185 x 5 = 1,575V | | x20A | 2,5V + 0,100x 20 = 4,5V | 2,5 V -0,100 x 20 = 0,5 V | | x30A | 2,5V + 0,066x 30 = 4,48 V | 2,5V + 0,066x 30 = 0,52V |

Conclusion : ta méthode de placer à 0 et à Vcc n'est pas bonne. Franchement je n'avais compris ce que tu voulais faire, je pensais que tu voulais seulement vérifier les entrées de ta carte. Si tu veux étalonner il faut utiliser une charge réelle, utiliser un multimètre en fonction ampèremètre et comparer les résultats. Si tu veux simuler tu peux utiliser un potentiomètre branché entre la masse et le Vcc et dont tu règles la tension de sortie avec un voltmètre.

Mais as-tu seulement un multimètre, je me pose la question.

Question qui j'espère obtiendra une réponse : le code c'est toi qui l'a pondu ou tu l'a récupéré ?

desole ne sachant pas que l on atteind jamais les 5 volts en sorti je me suis focaliser sur cette valeur et non la butee de 3.425 v pour le capteur 5 amperes j ai preciser que je voulais comprendre la formule mathematique et que le capteur n'etait pas brancher sur la uno et c est maintenant que l on me dit que la tension maximun de sortie du capteur est de 3.425 v pour 5 A. Oui j ai bien parler de capteur 5 et 20 amperes mais cela etait avant de faire des test simple sur Uno avec la formule pour le acs712 5 A avant de poursuivre avec celui de 20 A et lorsque tout aurait ete concluant et l inclure dans mon prjet de domotique . Pour une fois que je fais des tests les plus simplicime possible pour verifier une partie de code sans aucune autre interraction jai bien utiliser un potar de 10 meghom pour faie varier la valeur d entree sur ma pin analogique et aussi un multimtre pour en controler la tension.

bon - l’important c’est que tout est compris maintenant :slight_smile:

bonne soirée

Et continue d'être aussi clair que cette fois et on pourra avancer plus vite. Je répète ma question : est-ce toi qui a pondu le code avec le moyenage ou l'as tu trouvé sur internet ?

Pascal17740:
… Pour une fois que je fais des tests les plus simplicime possible pour verifier une partie de code sans aucune autre interraction jai bien utiliser un potar de 10 meghom pour faie varier la valeur d entree sur ma pin analogique et aussi un multimtre pour en controler la tension.

Je trouve cette valeur bien trop élevée …

Serge .D

Exact, cela m'avais échappé. La datasheet du microcontroleur indique que la source analogique à mesurer ne doit pas avoir une impédance interne supérieure à 1 megohm.

Avec un potar 10 megohms et le curseur au point milieu on obtient une impédance de sortie de 5 megohms.

68tjs: ... Avec un potar 10 megohms et le curseur au point milieu on obtient une impédance de sortie de 5 megohms.

Ah bon ! Moi j'aurais dit 2.5 MOhm ...

Cordialement.

Pierre

Avec un potar 10 megohms et le curseur au point milieu on obtient une impédance de sortie de 5 megohms.

ChPr: Ah bon ! Moi j'aurais dit 2.5 MOhm ...

Cordialement.

Pierre

Je dirais : - Sans voltmètre 5 MOhm - Avec voltmètre, moins que cela, tout dépends de l'impédance du voltmètre....

Serge .D

aligote: Je dirais : - Sans voltmètre 5 MOhm

  • potentiomètre = 10 MOhm,
  • curseur au milieur -> deux résistances de 5 MOhm
  • l'une allant au +5V et l'autre au GND
  • l'impédance de la source est quasiment nulle devant ces valeurs

On a donc deux résistances de 5 MOhm en parallèle, ce qui nous fait ... 2.5 MOhm

Cordialement.

Pierre