Le contenu de cet article a été entièrement réécrit et mis à jour sur le site Carnet du Maker.
Liens vers les nouveaux articles :
- Mesurer la tension sur la broche VIN d’une carte Arduino / Genuino : https://www.carnetdumaker.net/articles/mesurer-la-tension-sur-la-broche-vin-dune-carte-arduino-genuino/
N.B. Les commentaires de l’article ont été pris en compte lors de la rédaction des nouveaux articles 😉
Cool ! mais ça consomme combien de mesurer comme ca en continu la batterie? ça la viderait pas en quelques heures par hasard?
Loi d’ohm : U = R * I, I = U / R
U = 9 volts
R = 4400 ohms
I = 9 / 4400 = 2.04mA de consommation … on va pas chipoter 😉
Et si tu prend 33K et 11K ça tombe à 204µA … soit 10x moins 😉
L’avantage du couple 3.3 / 1.1, c’est de s’affranchir de l’impédance d’entrée des pins analogiques. Avec 11K, je ne suis pas sûr qu’on puisse négliger une petite perte… Dommage, car ce mA continu peut jouer en notre défaveur. Un juste milieu à trouver?
Le convertisseur analogique/numérique de l’ATmega328p est optimisé pour des impédances de 10K ou moins (datasheet §24.6.1) donc avec 11K on est limite mais ça devrait passer.
Oui mais dans ce cas (mesure d’une tension de batterie) l’évolution de la tension dans le temps est négligeable par rapport au temps d’échantillonage. Donc autant réduire la consommation du pont diviseur au max en utilisant un forte resistance.
Je pense que même avec 1 Mohm ça pose pas de problème ?
Le code Arduino est manquant dans le Tuto ou je dois mettre des lunettes ? 🙂
Désolé, je sait pas ce qui c’est passé mais la partie code avait disparu …
Heureusement que vous êtes ponctuel 🙂
Merci
si jamais la pile n’alimente pas le montage, suffirait de brancher la masse sur le – et l’entrée du pont diviseur sur le + de la pile ?
C’est ce que j’ai fait regarde bien le schéma 😉
Dans tout les cas les masses DOIVENT être reliés sinon ça ne marche pas.
ok ok donc j’ai plus qu’a trouver la valeur a la quelle une pile 9V serait en moitié de vie (8V en sortie selon moi) et donc je lirait 409 sur l’arduino si elle est a 8V ? ca m’a l’air d’etre sa je m’y met =D
Bonjour, à quoi sert la ligne:
* (5.0 / 1024)) * coeff_division
Car je ne comprend pas comment tu trouve le calcul pour passer de ce que tu appelles la tension brute à la tension reelle.
Bonjour,
La plage limite n’est pas plutôt entre 0 et 1023 de qui donne en codage sur 1024 ?
Si je code sur 8 bits, j’ai le droit à 256 valeurs donc de 0 à 255 si je ne me trompe pas 🙂
Cordialement,
Le réparateur de PC
Exact, mais dans le tableur il y a un arrondi au nombre le plus proche d’où le 1024 qui ne pourra jamais être atteint avec une valeur sur 10 bits.
Ahh OK 🙂 Moi et les tableurs …… Je suis actuellement sur un projet de gestionnaire de charge pour mon bloc batterie 12V 95Ah et c’est assez galère en maquette ….. Si vous avez un article là dessus… Ce qui me bloque, c’est le temps de réaction des sécurités qui dépend du temps d’exécution du programme.
En tout cas merci car en recherchant des bricoles sur les alims ATX, je suis tombé sur Arduino grâce à :
https://skyduino.wordpress.com/2012/09/04/bricolage-partie-1-alimentation-datelier-diy-a-partir/
Ayant XXX alims HS récupérées, après bricoles je sens que votre idée va se réaliser 🙂
PS : il y a de tout ici : http://lereparateurdepc.olympe.in/ImgBox/
bonjour, est il possible d’afficher la tension sur un afficheur lcd relier sur l’arduino
Oui, il suffit de remplacer les Serial.println() par un lcd.println() et d’utiliser la librairie LiquidCrystal.
je serais intéressé par l’affichage sur lcd.
Pour cela outre le fait de changer le Serial print par lc print, il faut enlever l’initialisation du port série et la remplacé par quelque chose qui initialise l’ecran lcd? si oui quel est le code svp? 🙂
Salut; je suis intéressée de même sujet mais pour mesurer la tension d’une machine asynchrone ç’est à dire en alternatif j veux savoir est ce qu’il y a une grande différence au niveau du code arduino et si oui lequel! merci
Mesurer une tension continu et une tension alternative c’est le jour et la nuit.
Je te laisse chercher « Root mean square » sur google tu comprendras 😉
En plus au niveau matériel ce n’est pas du tout la même chose.
Il faut mesurer une tension alternativement positive et négative, ça demande un circuit bien plus complexe que deux simples résistances.
hugh,
je voudrais faire exactement le même genre de mesures mais pour des mesures en alternatif (10Hz) ET pour des amplitudes en tension allant jusqu’à 1200V. A moins de prendre un pont diviseur de rapport 100 (ce qui n’est pas idéal…) je ne vois pas trop comment faire. Quelqu’un aurait-il une idée? Merci
re,
1200V ehhh là ça fait un peut beaucoup ….. Si c’est de l’AC, il n’y a pas moyen de passer par un transfo ?
1200/12V ou 1200/230V puis 230/12V ?
Un pont diviseur oui mais faut dimensionner les résistance en conséquences (puissance/dissipation).
Cordialement,
Le réparateur de PC
Slt peut tu m’expliquer le 1024 que tu as dans le programme? 🙂 merci
analogRead() retourne une mesure sur 10 bits, or 2^10 = 1024.
Si nous avons on Arduino qui tourne sous 3,3V 8 MHz, les tensions d’entrée seront max de 3,3V ou 5V ?
3,3v exclusivement !
Uniquement 3,3V en entrée ? En sortie je comprend mais en entrées bizzare. Merci 🙂
Tension max en entrée = tension d’alimentation.
Donc si VCC = 3.3, Vmax = 3.3v
Ne pas s’amuser à tester du 5v en entrée sur une carte 3v3, sinon c’est l’effet barbecue au coin du feu assuré 😉
J’alimente un Arduino Nano avec un accu li-ion via un convertisseur DC-DC 5V.
J’aimerai mesurer le « niveau » de charge de mon accu. Donc entre 3.7V et 3V (4.1V quand il est en charge).
Je pensai relier directement le +accu (avant le convertisseur) à A0 par exemple.
On est d’accord, j’ai pas besoin de pont diviseur, pour ça ?
Doit-je mettre une résistance en série ? Si oui, pourquoi et de combien ?
Si tu as une carte arduino 5v pas besoin de pont diviseur.
Quand la carte arduino est allumée, l’entrée analogique à une impédance élevée : pas besoin de faire quoique ce soit, tu peux brancher direct le + de l’accus sur une broche analogique.
Par contre quand la carte n’est pas alimentée, il est déconseillée de mettre une tension sur la broche analogique. Donc si tu as un interrupteur dans ton montage, il faut qu’il soit placé juste après la batterie avant le convertisseur dc-dc et que tu mesure la tension après l’interrupteur mais avant le convertisseur. De cette manière la broche analogique ne sera jamais sous tension quand l’arduino n’est pas allumée.
Ok, c’est bien ce que je pensai et oui, je place un inter au plus proche de la batterie de pas de soucis pour l’accu.
+1 pour l’interrupteur général. Quand l’Arduino n’est pas alimentée, aucune tension ne doit arriver sur les entrées (numérique ou analogique).
Pas besoin de pont diviseur ou de résistance en série si tu es alimenté en 5v.
Par sécurité tu peux quand même mettre une zener 4.7v en parallèle de A0, voir une double diode anti-esd si le connecteur de batterie est accessible aux gros doigts plein d’électricité statique.
Salut, je suis nouveau sur Arduino donc désolé de la question mais peux-tu m’expliquer cette ligne stp :
float real_bat = ((raw_bat * (5.0 / 1024)) * coeff_division);
Merci 🙂
Ah et par ailleurs, comment faire pour réduire le rapport du réduction du pont diviseur ? :3
je veut mesurer le courant dans une circuit diviseur de tension en utilisant un capteur de courant SEN23931P
avec une ardouino … si vous pouvais m’aider je suis perdu ?
Désolé je connais pas du tous ce capteur.
J’ai -13 jusqu’a -12 pour la tension d’un chargeur de 7.5v, je comprend pas d’ou ça peut venir car le montage est pourtant simple : (
La tension réelle mesurée en A0 avec un multimètre est de combien ? Et la tension mesurait par le montage ?