J'ai enfin reçu mon ARDUINO UNO
J'ai commencé différents tests, tout fonctionne comme prévu sauf la mesure analogique...
En effet, si je dois mesurer une tension bien établie, pas de problème, mais lorsque je suis sur de très faibles tensions genre rien ou inférieure à 0,2V, j'ai un genre de bruit avec des valeurs oscillant entre 0 et 50... Lorsque je ne branche rien sur l'entrée analogique je me retrouve même avec une valeur de 300 et des poussières...
J'ai essayé sur A0, pas sur d'autres entrées...
Lorsque je ne branche rien sur l'entrée analogique je me retrouve même avec une valeur de 300 et des poussières...
Lorsqu'on ne branche rien sur une entrée, elle est en l'air c'est à dire qu'elle n'est reliée à aucun potentiel. Comme l'entrée du circuit présente une impédance d'entrée élevée, des charges (électricité statique, porteuse de France Inter, rayonnement du 50Hz, ..) s'accumulent sur cette entrée. De même lorsque l'on connecte une source délivrant des signaux faibles on est plus susceptible d'être perturbé. Pour réduire ces problèmes, le plus simple est de placer au plus près de l'entrée de la carte arduino une résistance entre l'entrée et la masse. Cette résistance en abaissant l'impédance de la liaison la rend moins sensible à son environnement. Pour la valeur de la résistance, le mieux est de l'adapter en fonction de la caractéristique de sortie du capteur. Mais tu peux commencer avec une résistance de quelques kilo-ohms pour voir.
10k ohm est souvent la résistance utilisée pour les arduino.
Si tu va dans un magasin d'électronique, tu peux faire le plein de 10k, 2k , 1k et autres plus basses (pour les boutons en tres autres). Ca servira touours !
Merci pour vos réponses
J'ai fait un peu de stock de composants pour ne pas faire trop d'aller et retours avec les magasins d'électroniques ...
Je ne comprends pas exactement le fonctionnement de la résistance de 10K...
Je vous explique ce que je veux mesurer... Je souhaite mesurer la tension aux bornes d'une LED... Ca peut sembler bizarre, mais en fonction de son éclairage, une LED peut produite jusqu'à presque 2V... On mesure facilement cette tension au voltmètre...
Le problème est que lorsque j'ai une faible intensité lumineuse, et donc une tension de l'ordre de 0.2V, les mesures obtenues sont 'bruitées'...
Comment pourrais-je améliorer mon montage pour ne pas avoir ces bruits...
Il faut mettre une résistance de pull-down qui va comme son nom l'indique "tirer" le potentiel vers le bas. Tu auras un montage de ce genre :
GND ---- LED ----------- A0
|
R
|
GND
Pour la valeur de R je pense qu'il va falloir prendre une grosse valeur (genre 1 ou 10 Mohm) car j'imagine que le courant produit par la LED sera assez faible.
Je vous explique ce que je veux mesurer... Je souhaite mesurer la tension aux bornes d'une LED... Ca peut sembler bizarre, mais en fonction de son éclairage, une LED peut produite jusqu'à presque 2V... On mesure facilement cette tension au voltmètre...
Oui mais le courant délivré est très faible et lorsqu'il y a peu de lumière il n'est pas certain que l'on arrive à charger correctement la capacité d'entrée de l'étage analogique.
Il y a d'autre moyens pour utiliser une LED "à l'envers". Sur le playground il y a un exemple de code http://www.arduino.cc/playground/Learning/LEDSensor. Il mesure le temps de basculement d'une entrée logique par un cycle de charge/décharge de la capacité intrinsèque de la LED polarisée en inverse.
Cela dit une LED ne sera jamais un bon capteur de lumière. C'est intéressant si on a un montage avec des LED et que l'on veut avoir la fonction capteur de lumière à moindre coût. Mais tu n'auras pas les même performances qu'avec un phototransistor (ou une photodiode) en particulier le spectre est limité par la couleur de la LED. La LED sera sensible aux couleurs dont la longueur d'onde est égale ou plus courte que celle de la LED.
B@tto:
Il faut mettre une résistance de pull-down qui va comme son nom l'indique "tirer" le potentiel vers le bas. Tu auras un montage de ce genre :
GND ---- LED ----------- A0
|
R
|
GND
Pour la valeur de R je pense qu'il va falloir prendre une grosse valeur (genre 1 ou 10 Mohm) car j'imagine que le courant produit par la LED sera assez faible.
Bonjour,
Je n'ai pas de résistances supérieure à 100Kohm et avec 100K ca ne donne rien de plus...
J'obtiens cala en faisant une mesure toutes les 0,5 sec...:
0
0
0
0
10
18
20
6
0
0
0
4
11
19
16
3
0
0
0
5
16
20
12
0
0
0
2
11
20
22
7
0
0
0
3
12
20
18
4
0
0
0
4
12
18
18
4
0
Je ne comprends pas pourquoi un voltmètre peut mesurer une tension de l'ordre de plus d 1V et que l'entrée analogique ne puisse pas la mesurer...? C'est normal d'un point de vue électronique???
L'impédance d'entrée d'un voltmètre est de plusieurs Megohms.
Une entrée de processeur c'est beaucoup plus faible. En plus il peut y avoir un courant de fuite dans cette entrée (leakage current dans les docs), elle peut très bien absorber du courant voir même en fournir. C'est faible de l'ordre du µA voir moins, mais dans une capa de quelques pF cela créé vite une tension de décalage.
Peut être une idée pour ton problème de précision à faible valeur.
La carte Arduino UNO dispose d'un convertisseur Analogique Numérique avec une numérisation sur 10 bits
soit une précision de environ 4,9mV.
Voir la doc de ATMEGA328 [chapitre 23]
Le problème est que en utilisant la même référence de tension pour alimenter le montage et l'ARduino UNO, tu subit les variations de tensions de ta réfèrence et elle se répercute sur ta lecture analogique, et plus la valeur est petite plus la variation est importante au niveau de la valeur numérisée.
Si tu souhaite obtenir le plus de précision possible, il te faut utilisé la pin AREF
En utilisant une source de tension dédiée pour tes entrées analogiques.
De plus, j'ai déjà eut d'expérience voir des entrées analogiques qui "bavent" les unes sur les autres de manières résiduelle, il faut donc utilisé des cables au plus court et si possibles blindés et câbler les autres entrées analogiques (non utilisées) à la masse.
B@tto:
Il faut mettre une résistance de pull-down qui va comme son nom l'indique "tirer" le potentiel vers le bas. Tu auras un montage de ce genre :
GND ---- LED ----------- A0
|
R
|
GND
Pour la valeur de R je pense qu'il va falloir prendre une grosse valeur (genre 1 ou 10 Mohm) car j'imagine que le courant produit par la LED sera assez faible.
Je viens d'essayer avec une résistance de 10 Mohm et ça ne change absolument rien au résultat...
semageek:
De plus, j'ai déjà eut d'expérience voir des entrées analogiques qui "bavent" les unes sur les autres de manières résiduelle, il faut donc utilisé des cables au plus court et si possibles blindés et câbler les autres entrées analogiques (non utilisées) à la masse.
J'ai relié les entrées analogiques non utilisées à la masse, aucun effet non plus, toujours énormément de fluctuations...
Si ma led est très éclairée, elle génère alors une tension de l'ordre de 1,5V et la valeur lue aux alentours de 300 ne varie à +-2 ou 3 ce qui est normal...
Dès que j'éclaire moins la LED et que je génère une tension de l'ordre de 0.5V, j'ai des résultats compléments variables à +-100 voir même plus...
Lorsque la tension est à 0 j'ai des variations comprises entre 0 et 33 se répétant à une fréquence bien définie... En couvrant l'ARDUINO avec mes mains, la valeur varie entre 0 et 10 avec une fréquence moindre...
Il faut savoir qu'une led ne produit pas de "tension" lorsqu'elle est exposée à une source de rayonnements, mais une intensité.
Pour cela, il faut coupler cette led, avec un montage qui "l'isolera" des interactions avec les autres composants, tout en lui permettant de délivrer son intensité.
En gros, il faut la transformer en un montage l'assimilant à un générateur de courant.
Pour cela, je te propose le montage simple ci-dessous.
Ce montage va isoler la led par rapport au circuit interne des entrées de l'Arduino, mais également, au travers de la résistance (U=R x I), créer une tension, à l'image des microampères générés par la led. Etant donné que ce que chaque led émet dépend de ses caractéristiques, j'ai mis une résistance de 5MOhms.
En effet, si la valeur max en pleine lumière de l'intensité générée est de 1 microampère, tu auras donc 5v sur ton entrée analogique.
Si tu as les caractéristiques de ta led, profites-en pour ajuster cette résistance, pour obtenir au mieux la pleine échelle de valeurs.
Note : j'ai utilisé un LM741 parceque comme AOP, c'est un cas d'école, si tu as de meilleurs comparateurs, n'hésites pas !
Bonjour et merci pour ta réponse qui semble mûrement réfléchie
Snootlab:
Il faut savoir qu'une led ne produit pas de "tension" lorsqu'elle est exposée à une source de rayonnements, mais une intensité.
Ha... Donc quand je mets une led aux bornes de mon voltmètre et qu'il affiche 1,5V, c'est parce que le voltmètre a une forte 'résistance' qu'il affiche cette tension, c'est bien ça??? C'est une résistance interne que l'ARDUINO ne possède pas et c'est pour cela que l'ARDUINO fait mal la mesure???
N'y-a-t-il pas une façon 'simple' d'apporter cette résistance à l'ARDUINO???
Snootlab:
Pour cela, je te propose le montage simple ci-dessous.
Ce montage va isoler la led par rapport au circuit interne des entrées de l'Arduino, mais également, au travers de la résistance (U=R x I), créer une tension, à l'image des microampères générés par la led. Etant donné que ce que chaque led émet dépend de ses caractéristiques, j'ai mis une résistance de 5MOhms.
En effet, si la valeur max en pleine lumière de l'intensité générée est de 1 microampère, tu auras donc 5v sur ton entrée analogique.
Je comprends la transformation du courant très faible en tension mesurable au travers de U=RI 8)
Malheureusement le montage de l'AOP, je ne comprends pas... Je ne connais que le montage classique en amplificateur et dans ce cas, je ne comprends pas... suis désolé
Je n'ai pas d'AOP disponible sous la main, je vais pouvoir l'acheter vendredi pas avant..
N'y aurait-il pas un moyen plus simple juste pour une petite expérimentation d'ici vendredi
A ce niveau il n'y a rien de plus indiqué/fiable qu'un montage à AOP pour interfacer/mesurer de très faibles valeurs.
De plus, le montage indiqué est le meilleur compromis, à mon sens entre efficacité et simplicité.