Pages: [1]   Go Down
Author Topic: Masse arduino  (Read 1345 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 19
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

J'ai quelque chose qui m'intrigue sur arduino : Pour mesurer une tension, il faut une entrée et une masse !  Lorsqu'on veut mesurer une tension d'un circuit, par une broche analogique, utilise-t-il comme masse la broche GROUND ? Mais comment cela fonctionne-t-il, puisqu'il y a plusieurs broches GROUND ? Laquelle Arduino utilise-t-il comme masse ?
Merci  smiley
Logged

France S-O
Offline Offline
Edison Member
*
Karma: 41
Posts: 2176
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Délicate question que la gestion des masses.
1) Obligatoirement toutes les masses doivent être reliées entre elles au moins en 1 point.
2) Sur un circuit imprimé l'épaisseur du cuivre est généralement de 35µm. Dans un circuit imprimé les liaisons métalliques ne font que quelques µm d'épaisseur et ne se font généralement pas en cuivre, c'est rare, techniquement difficile et réservé à des cas particuliers. Les liaisons se font soit en or, réservé aux circuits très technologiques, soit dans la grande majorité en aluminium et l'aluminium est un moins bon conducteur que le cuivre ou que l'or.

Donc pour éviter des interactions parasites à l'intérieur de la puce de CI on sépare les plans de masse interne sur la puce, on sort les plans de masse sur les broches et on relie les masses sur le circuit imprimé qui est un bien meilleur conducteur.

Dans le cas du processeur de l'arduino (ATMega328 pour le UNO) le fabricant Atmel a isolé le convertisseur analogique digital pour qu'il ne soit pas pollué par les circuits purement digitaux qui génèrent des parasites à chaque commutation entre 0V et 5V.

Pour le circuit imprimé on peut soit générer un plan de masse avec la surface la plus grande possible en espérant qu'il sera le plus homogène possible ou gérer des plans plus petit et reliés entre eux en étoile.
Pour la UNO et la Mega l'équipe Arduino fourni l'implantation des pistes mais pas celle des plans de masse et c'est bien dommage mais la réussite d'une implantation se trouve dans les plans de masse et d'alim, libérer ces plans était faire un trop gros cadeau à la concurrence.

Pour l'application mesure d'une tension analogique je préfère utiliser la masse la plus proche des entrées analogiques et par conséquent la plus éloignée des Entrées/Sorties digitales.
Logged

France
Offline Offline
Faraday Member
**
Karma: 55
Posts: 5347
Arduino Hacker
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonjour,

J'ai quelque chose qui m'intrigue sur arduino : Pour mesurer une tension, il faut une entrée et une masse !  Lorsqu'on veut mesurer une tension d'un circuit, par une broche analogique, utilise-t-il comme masse la broche GROUND ? Mais comment cela fonctionne-t-il, puisqu'il y a plusieurs broches GROUND ? Laquelle Arduino utilise-t-il comme masse ?
Le convertisseur analogique / numérique des ATmega (au cœur de l'arduino) utilise la masse (notée GND, disponible en trois point sur la carte : à coté de AREF, et à coté de VIN) comme référence basse pour la conversion.

Il prend aussi +5v comme référence haute (par défaut) pour la conversion.
Ainsi 0v = 0, et 5v = 1023.

Il faut quand même noter qu'il est possible de choisir cette référence haute, cela permet d'affiner les mesures sur des plages de tension inférieur à 5v.
voir analogReference() : http://arduino.cc/it/Reference/AnalogReference

DEFAULT: 5v sur les cartes arduino 5v, 3v3 sur les cartes arduino 3v3,
INTERNAL: 1v1 sur les arduino "classique", 2v56 sur les arduino mega,
EXTERNAL: tension entre 0v et 5v (ou 3v3 selon la carte arduino) appliqué sur la broche AREF.

C'est pratique par exemple pour mesure plus précisément une tension entre 0v et 2.56v par exemple puisque :
0v = 0, 2.56 = 1023 -> gain en précision de 50%

Par contre la tension mesuré ne doit pas dépasser la référence sinon sa fera pchiit smiley-wink
Logged

Des news, des tuto et plein de bonne chose sur http://skyduino.wordpress.com !

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

Merci beaucoup, mais par exemple peut-on utiliser l'arduino comme un voltmètre, en reliant une de ses masses et une de ses entrées aux chacun aux bornes d'un dipole ? Comment fait alors l'arduino pour savoir quelle masse choisir comme référence ?
Ou alors je me trompe sur le fonctionnement de l'arduino, ce qui est très possible  smiley-razz
EDIT : En fait, on a pas le droit de brancher les masses a plusieurs endroits différents dans le circuit c'est ça ?
« Last Edit: March 30, 2012, 01:01:46 pm by arispot » Logged

Offline Offline
Faraday Member
**
Karma: 33
Posts: 4968
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset


voir analogReference() : http://arduino.cc/it/Reference/AnalogReference

DEFAULT: 5v sur les cartes arduino 5v, 3v3 sur les cartes arduino 3v3,
INTERNAL: 1v1 sur les arduino "classique", 2v56 sur les arduino mega,
EXTERNAL: tension entre 0v et 5v (ou 3v3 selon la carte arduino) appliqué sur la broche AREF.

C'est pratique par exemple pour mesure plus précisément une tension entre 0v et 2.56v par exemple puisque :
0v = 0, 2.56 = 1023 -> gain en précision de 50%

Par contre la tension mesuré ne doit pas dépasser la référence sinon sa fera pchiit smiley-wink
Bonsoir skywodd
tu es sur de ça ?
que ça fasse pschiit ou boum  smiley-mr-green en cas de dépassement des max rating ok
mais en dehors si Vmesure>Aref   ça doit retourner 1023 sans faire pschitt ?

Logged

France
Offline Offline
Faraday Member
**
Karma: 36
Posts: 3430
There is an Arduino for that
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Mais comment cela fonctionne-t-il, puisqu'il y a plusieurs broches GROUND ?
Quote
Comment fait alors l'arduino pour savoir quelle masse choisir comme référence ?
Toutes les masses sont reliées. Elles sont au même potentiel et donc tu peux utiliser indifféremment l'une ou l'autre.

Quote
EDIT : En fait, on a pas le droit de brancher les masses a plusieurs endroits différents dans le circuit c'est ça ?
Exactement. Puisque les broches GND sont toutes réunies les unes aux autres sur la carte, si tu les connectes à des points différents sur un montage alors tu feras un court-circuit dans le montage. Exactement comme tu le ferais si tu réunissais ces points avec un fil.

Quote
Merci beaucoup, mais par exemple peut-on utiliser l'arduino comme un voltmètre, en reliant une de ses masses et une de ses entrées aux aux bornes d'un dipole ?
On peut dire oui moyennant quelques précautions:
       - la tension mesurée ne doit pas excéder la tension d'alimentation du processeur (5V) sous peine de destruction de celui-ci
       - la tension devrait rester inférieure à la valeur de la référence utilisée. En effet toute tension supérieure à la référence donnera 1023.
       - la broche GND de l'arduino doit être connectée sur le potentiel le plus bas. La différence de potentielle entre GND et la broche de mesure (A0, A1, ...) doit être positive.
       - si tu veux vraiment pouvoir mesurer en n'importe quel point du montage, comme tu le ferais avec un voltmètre, l'alimentation de l'arduino doit être distincte de celle du montage sur lequel tu fais la mesure.
Logged

France
Offline Offline
Faraday Member
**
Karma: 55
Posts: 5347
Arduino Hacker
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

tu es sur de ça ?
que ça fasse pschiit ou boum  smiley-mr-green en cas de dépassement des max rating ok
mais en dehors si Vmesure>Aref   ça doit retourner 1023 sans faire pschitt ?
Si Vanalog > Aref sa retourne 1023, avec un AVR tant que ça dépasse pas VCC ya pas de probléme.

Mais avec certain µc (enfin plutôt avec certain convertisseur A/N low-cost) si Vanalog > Aref le CAN perd les pédales et peut ne plus fonctionner correctement.
Donc dans le doute je préfère dire "ça fait pschiit" smiley-wink
Logged

Des news, des tuto et plein de bonne chose sur http://skyduino.wordpress.com !

Pages: [1]   Go Up
Jump to: