Lecture analogique
Cet exemple vous montre comment lire
l'entrée analogique du monde physique à l'aide d'un potentiomètre.
Un potentiomètre est un
dispositif mécanique simple qui fournit une quantité variable de résistance
lorsque son arbre est tourné. En passant la tension à travers un
potentiomètre et dans une entrée analogique sur votre carte, il est possible de
mesurer la quantité de résistance produite par un potentiomètre comme une
valeur analogique. Dans cet exemple, vous surveillerez l'état de votre
potentiomètre après avoir établi une communication série entre votre Arduino et
votre ordinateur exécutant le logiciel Arduino (IDE).
Matériels requis
·
Carte Arduino
·
Potentiomètre
10k ohm
Circuit
Connectez les trois fils du
potentiomètre à votre tableau. Le premier se relie de l'une des broches
externes du potentiometer à la masse. La seconde se relie de l'autre
broche externe du potentiomètre à 5 volts. Le troisième se relie de la
broche médiane du potentiomètre à la broche analogique A0.
En tournant l'arbre du
potentiomètre, vous modifiez la quantité de résistance. Cela modifie la
tension au niveau de la broche centrale. Lorsque la résistance entre le
centre et le côté connecté à 5 volts est proche de zéro (et la résistance de
l'autre côté est proche de 10k ohms), la tension à la broche centrale
s'approche de 5 volts. Lorsque les résistances sont inversées, la tension
au niveau de la broche centrale est proche de 0 volt ou de la masse. Cette
tension est la tension analogique que vous lisez en entrée.
Les cartes Arduino ont un circuit
interne appelé un convertisseur analogique-numérique ou ADC qui
lit cette tension changeante et la convertit en un nombre entre 0 et 1023.
Lorsque l'arbre est complètement tourné dans une direction, il y a 0 volts
allant à la broche, et la valeur d'entrée est 0. Lorsque l'arbre est tourné
tout le chemin dans le sens opposé, il y a 5 volts allant à la broche et la
valeur d'entrée est 1023. Entre-deux, analogRead () renvoie
un nombre entre 0 et 1023, proportionnel à la tension appliquée sur la broche.
Schématique
Code
Dans l'esquisse ci-dessous, la seule
chose que vous faites dans la fonction de configuration est de commencer les
communications série, à 9600 bits de données par seconde, entre votre carte et
votre ordinateur avec la commande:
Serial.begin(9600);
Ensuite, dans la boucle principale
de votre code, vous devez établir une variable pour stocker la valeur de
résistance (qui sera comprise entre 0 et 1023, parfait pour un int type de données )
venant de votre potentiomètre:
int sensorValue = analogRead(A0);
Enfin, vous devez imprimer cette
information dans votre fenêtre de moniteur série. Vous pouvez le faire
avec la commande Serial.println ()
dans votre dernière ligne de code:
Serial.println(sensorValue)
Maintenant, lorsque vous ouvrez
votre moniteur série dans le logiciel Arduino (IDE) (en cliquant sur l'icône
qui ressemble à un objectif, sur la droite, dans la barre supérieure verte ou
en utilisant le raccourci clavier Ctrl + Shift + M), vous devriez voir un flux
régulier de nombres allant de 0 à 1023, en corrélation avec la position du
pot. Lorsque vous tournez votre potentiomètre, ces chiffres répondent
presque instantanément.
/ *
DIY Electronics par Bessem BELGHITH
DIY Electronics par Bessem BELGHITH
AnalogReadSerial
cet exemple Lit une entrée analogique sur la broche 0, imprime le résultat sur le moniteur série.
La représentation graphique est disponible à l'aide du traceur série
cet exemple Lit une entrée analogique sur la broche 0, imprime le résultat sur le moniteur série.
La représentation graphique est disponible à l'aide du traceur série
Fixez la broche centrale d'un potentiomètre à la broche A0 et les
broches extérieures à + 5V et à la masse.
* /
// la routine d'installation s'exécute une fois lorsque vous appuyez sur reset:
void setup ( ) {
// initialise la communication série à 9600 bits par seconde:
Serial.begin ( 9600 ) ;
}
// le sous-programme de la boucle s'exécute encore et encore pour toujours:
void loop ( ) {
// lit l'entrée sur la broche analogique 0:
int sensorValue = analogRead ( A0 ) ;
// affiche la valeur que vous avez lu:
Serial . println ( sensorValue ) ;
delay ( 1 ) ; // délais entre les lectures pour la stabilité
}
* /
// la routine d'installation s'exécute une fois lorsque vous appuyez sur reset:
void setup ( ) {
// initialise la communication série à 9600 bits par seconde:
Serial.begin ( 9600 ) ;
}
// le sous-programme de la boucle s'exécute encore et encore pour toujours:
void loop ( ) {
// lit l'entrée sur la broche analogique 0:
int sensorValue = analogRead ( A0 ) ;
// affiche la valeur que vous avez lu:
Serial . println ( sensorValue ) ;
delay ( 1 ) ; // délais entre les lectures pour la stabilité
}
Aucun commentaire:
Enregistrer un commentaire