Pages: 1 [2]   Go Down
Author Topic: [Résolu] Tension de la batterie  (Read 2560 times)
0 Members and 1 Guest are viewing this topic.
France
Offline Offline
Faraday Member
**
Karma: 36
Posts: 3414
There is an Arduino for that
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Quote
Quote
Ok, mais pourquoi entre 0 et 10 ???
Parce que tu doit mesurer la tension d'une pile 9 V; une échelle entre 0 et 10V me parait approprié.
C'est surtout parce que la référence de l'ATmega est à 5V et que l'on a proposé de mettre une division par 2 sur l'entrée analogique.

Maintenant pour la précision du résultat, il faut considérer:
 - la valeur exacte de la tension de référence de l'ATmega. On a dit 5V mais un port USB peut délivrer de 4,85V à 5,25V.
 - la valeur exacte de l'atténuation apportée par le pont diviseur. Les résistances font-elles exactement 1k?
Le plus simple c'est de faire une calibration avec une tension connue (ou vérifiée avec un voltmètre de bonne qualité) et d'en déduire le coefficient qui va bien pour faire la conversion.
Et puis c'est toujours pareil plus il y a de bits dans le convertisseur analogique-digital plus on veut de précision. Mais as-tu vraiment besoin de connaitre la tension de ta batterie à 100 ou 200mV près?
Logged

Forum Moderator
Toulouse / France
Offline Offline
Full Member
*****
Karma: 5
Posts: 233
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonjour,

Pour avoir la valeur image de la tension rentrée dans le convertisseur Analogique/numérique de l'Arduino, il n'y a qu'une seule méthode/solution.
En effet, comme marqué dans la datasheet du composant, la tension de référence pleine échelle du convertisseur (c.a.d la tension maximum admissible, qui égalera la valeur de 1023pts), est de 5V.
Pour avoir la valeur d'un point, vous divisez donc la tension de référence, par la pleine échelle : 5/1024 = 4.883mV/pt
Il ne reste plus qu'à multiplier la valeur obtenu via AnalogRead par la valeur du point pour avoir la tension.

ex : si val = 340, alors la tension mesurée est de 1.66V.

En espérant vous avoir aidé,

Bonne journée.

-----
Stéphane.
Logged

- Distributeur officiel Arduino - France

Offline Offline
Newbie
*
Karma: 0
Posts: 42
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ok smiley Merci de votre aide
c'est bon la valeur me convient en effet je n'ais pas besoin de précision a 200mV près ^^
les résistance font 1K mais pas exactement je pense, ça doit varier de 10 mili-ohms...


Mais si j'avais voulu mesurer du 18V il aurais fallu faire comment ?
1 resistance de 1K l'autre de 2K ? et faire un map de 0 a 20 ?
« Last Edit: October 26, 2011, 07:44:49 am by pierreyves258 » Logged

Offline Offline
Full Member
***
Karma: 0
Posts: 106
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Non!
Plutôt une de 3K et une de 1K smiley-razz
5=20*1/(3+1)
Vas voir à la rubrique Diviseur de tension sur wikipedia c'est très bien expliqué.
Logged

Forum Moderator
Toulouse / France
Offline Offline
Full Member
*****
Karma: 5
Posts: 233
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

La valeur des résistances et leur tolérance de précision est donnée par leur code couleur :
http://www.apprendre-en-ligne.net/crypto/passecret/ohm.html
Logged

- Distributeur officiel Arduino - France

Offline Offline
Newbie
*
Karma: 0
Posts: 42
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

@Bouault: Ok merci smiley
@Snootlab: Ah tu veut la tolérance ...  c'est 1%
Logged

Forum Moderator
Toulouse / France
Offline Offline
Full Member
*****
Karma: 5
Posts: 233
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Non, je ne la voulais pas expréssement, c'était juste pour répondre à ceci :

Quote
les résistance font 1K mais pas exactement je pense, ça doit varier de 10 mili-ohms...

Pour te dire que la tolérance des valeurs est marquée sur la résistance, donc si elle fait 1% et 1kOhms, elle varie donc entre 1010Ohms et 990Ohms.
Donc, un peu plus que quelques milliohms.

-----
Stéphane.
Logged

- Distributeur officiel Arduino - France

Offline Offline
Newbie
*
Karma: 0
Posts: 42
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ah ok merci (j'étais pas loing il suffisait de faire *1000   smiley-grin)
Logged

Offline Offline
Full Member
***
Karma: 0
Posts: 106
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Stéphane,
Tu es d'accord avec moi que dire :
Tension = (val*5/1024)*2
et :
Tension = val/102.4
veulent dire la même chose ?
(je sais, j'avais mis 102.3 ...)
Logged

Forum Moderator
Toulouse / France
Offline Offline
Full Member
*****
Karma: 5
Posts: 233
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Oui ça marche c'est a peut près comme val/100 (mais plus précis) ..

Il y a quand même 0.20V de différence entre ça et mon multimètre

Quote
Ok, mais pourquoi entre 0 et 10 ???
eu ... non je ne suis pas sur de la précision de mon voltmètre ... c'est un multimètre a 5€ ^^
EDIT:
Ah mais c'est parce que j'avais pas récupérer la valeur du map... et en la récuperant ça me met pas un float

Donc en divisant par 102.3 ça me donne la meme valeur que sur le multimètre !

Quand je vois qu'une personne est hésitante sur un concept, et ne connais pas le principe général du système qu'elle utilise, je l'explique.
De cette manière, une fois que le principe est énoncé et détaillé, il est plus facile de l'appliquer que de faire le chemin inverse.

Et un principe général expliqué pleinement reste à mon sens plus compréhensible et plus utilisable qu'un seul résultat numérique sur un cas particulier.
Effectivement, le résultat numérique est le même, mais détailler et expliquer chaque paramètre permet de comprendre le pourquoi du comment.

Du moins, à mon sens, mais je peux me tromper smiley

Bonne soirée.

-----
Stéphane.
Logged

- Distributeur officiel Arduino - France

Offline Offline
Newbie
*
Karma: 0
Posts: 42
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Oui merci a tous d'avoir bien expliqué
Logged

Offline Offline
Full Member
***
Karma: 0
Posts: 106
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

je suis d'accord avec toi Stéphane, rien ne vaut une explication claire. Je n'avais donné /1023 que pour corriger /1000 .
J'apprend beaucoup en lisant et en participant à ce forum.
Cordialement,
Jacques
Logged

Pages: 1 [2]   Go Up
Jump to: