- Composants requis:
- Schéma:
- Arduino Uno:
- Écran LCD 16x2:
- Concept de code couleur de résistance:
- Calcul de la résistance à l'aide de l'Ohm-mètre Arduino:
- Explication du code:
On a du mal à lire les codes couleurs sur les résistances pour trouver sa résistance. Afin de surmonter la difficulté de trouver la valeur de résistance, nous allons construire un simple Ohm mètre en utilisant Arduino. Le principe de base de ce projet est un réseau diviseur de tension. La valeur de la résistance inconnue est affichée sur l'écran LCD 16 * 2. Ce projet sert également d'affichage LCD 16 * 2 en interface avec Arduino.
Composants requis:
- Arduino Uno
- Écran LCD 16 * 2
- Potentiomètre (1 kilo Ohm)
- Résistances
- Planche à pain
- Fils de cavalier
Schéma:
Arduino Uno:
Arduino Uno est une carte microcontrôleur open source basée sur le microcontrôleur ATmega328p. Il possède 14 broches numériques (dont 6 peuvent être utilisées comme sorties PWM), 6 entrées analogiques, des régulateurs de tension intégrés, etc. Arduino Uno a 32 Ko de mémoire flash, 2 Ko de SRAM et 1 Ko d'EEPROM. Il fonctionne à la fréquence d'horloge de 16 MHz. Arduino Uno prend en charge la communication série, I2C, SPI pour communiquer avec d'autres appareils. Le tableau ci-dessous présente les spécifications techniques d'Arduino Uno.
Microcontrôleur | ATmega328p |
Tension de fonctionnement | 5V |
Tension d'entrée | 7-12V (recommandé) |
Broches d'E / S numériques | 14 |
Broches analogiques | 6 |
Mémoire flash | 32 Ko |
SRAM | 2 Ko |
EEPROM | 1 Ko |
Vitesse de l'horloge |
16 MHz |
Écran LCD 16x2:
L'écran LCD 16 * 2 est un écran largement utilisé pour les applications intégrées. Voici une brève explication sur les broches et le fonctionnement de l'écran LCD 16 * 2. Il y a deux registres très importants à l'intérieur de l'écran LCD. Ce sont un registre de données et un registre de commande. Le registre de commande est utilisé pour envoyer des commandes telles que l'affichage clair, le curseur à la maison, etc., le registre de données est utilisé pour envoyer des données qui doivent être affichées sur l'écran LCD 16 * 2. Le tableau ci-dessous montre la description des broches de 16 * 2 lcd.
Épingle |
symbole |
E / S |
La description |
1 |
Vss |
- |
Sol |
2 |
Vdd |
- |
Alimentation + 5V |
3 |
Vee |
- |
Alimentation pour contrôler le contraste |
4 |
RS |
je |
RS = 0 pour le registre de commande, RS = 1 pour registre de données |
5 |
RW |
je |
R / W = 0 pour l'écriture, R / W = 1 pour la lecture |
6 |
E |
E / S |
Activer |
sept |
D0 |
E / S |
Bus de données 8 bits (LSB) |
8 |
D1 |
E / S |
Bus de données 8 bits |
9 |
D2 |
E / S |
Bus de données 8 bits |
dix |
D3 |
E / S |
Bus de données 8 bits |
11 |
D4 |
E / S |
Bus de données 8 bits |
12 |
D5 |
E / S |
Bus de données 8 bits |
13 |
D6 |
E / S |
Bus de données 8 bits |
14 |
D7 |
E / S |
Bus de données 8 bits (MSB) |
15 |
UNE |
- |
+ 5V pour le rétroéclairage |
16 |
K |
- |
Sol |
Concept de code couleur de résistance:
Pour identifier la valeur de la résistance, nous pouvons utiliser la formule ci-dessous.
R = {(AB * 10 c) Ω ± T%}
Où
A = Valeur de la couleur dans la première bande.
B = Valeur de la couleur dans la deuxième bande.
C = Valeur de la couleur dans la troisième bande.
T = Valeur de la couleur dans la quatrième bande.
Le tableau ci-dessous montre le code couleur des résistances.
Couleur |
Valeur numérique de la couleur |
Facteur de multiplication (10 c) |
Valeur de tolérance (T) |
Noir |
0 |
10 0 |
- |
marron |
1 |
10 1 |
± 1% |
rouge |
2 |
10 2 |
± 2% |
Orange |
3 |
10 3 |
- |
Jaune |
4 |
10 4 |
- |
vert |
5 |
10 5 |
- |
Bleu |
6 |
10 6 |
- |
Violet |
sept |
10 7 |
- |
gris |
8 |
10 8 |
- |
blanc |
9 |
10 9 |
- |
Or |
- |
10 -1 |
± 5% |
argent |
- |
10 -2 |
± 10% |
Pas de bande |
- |
- |
± 20% |
Par exemple, si les codes de couleur sont Marron - Vert - Rouge - Argent, la valeur de la résistance est calculée comme suit:
Marron = 1 Vert = 5 Rouge = 2 Argent = ± 10%
À partir des trois premières bandes, R = AB * 10 c
R = 15 * 10 +2 R = 1500 Ω
La quatrième bande indique une tolérance de ± 10%
10% de 1500 = 150 Pour + 10 pour cent, la valeur est 1500 + 150 = 1650Ω Pour - 10 pour cent, la valeur est de 1500-150 = 1350Ω
Par conséquent, la valeur de résistance réelle peut être comprise entre 1350 Ω et 1650 Ω.
Pour le rendre plus pratique, voici le calculateur de code de couleur de résistance où il vous suffit d'entrer la couleur des anneaux sur la résistance et vous obtiendrez la valeur de la résistance.
Calcul de la résistance à l'aide de l'Ohm-mètre Arduino:
Le fonctionnement de ce mesureur de résistance est très simple et peut être expliqué à l'aide d'un simple réseau de diviseurs de tension illustré ci-dessous.
Du réseau diviseur de tension des résistances R1 et R2, Vout = Vin * R2 / (R1 + R2)
De l'équation ci-dessus, nous pouvons déduire la valeur de R2 comme
R2 = Vout * R1 / (Vin - Vout)
Où R1 = résistance connue
R2 = résistance inconnue
Vin = tension produite à la broche 5V d'Arduino
Vout = tension à R2 par rapport à la terre.
Remarque: la valeur de la résistance connue (R1) choisie est de 3,3 KΩ, mais les utilisateurs doivent la remplacer par la valeur de résistance de la résistance qu'ils ont choisie.
Donc, si nous obtenons la valeur de la tension à travers une résistance inconnue (Vout), nous pouvons facilement calculer la résistance inconnue R2. Ici, nous avons lu la valeur de tension Vout à l'aide de la broche analogique A0 (voir le schéma du circuit) et converti ces valeurs numériques (0-1023) en tension comme expliqué dans le code ci-dessous.
Si la valeur de la résistance connue est bien supérieure ou inférieure à la résistance inconnue, l'erreur sera plus grande. Il est donc conseillé de maintenir la valeur de résistance connue plus proche de la résistance inconnue.
Explication du code:
Le programme Arduino complet et la vidéo de démonstration de ce projet sont donnés à la fin de ce projet. Le code est divisé en petits morceaux significatifs et expliqué ci-dessous.
Dans cette partie du code, nous allons définir les broches sur lesquelles l'écran LCD 16 * 2 est connecté à Arduino. La broche RS de 16 * 2 lcd est connectée à la broche numérique 2 d'arduino. La broche d' activation de 16 * 2 lcd est connectée à la broche numérique 3 d'Arduino. Les broches de données (D4-D7) de 16 * 2 lcd sont connectées aux broches numériques 4,5,6,7 d'Arduino.
LiquidCrystal LCD (2,3,4,5,6,7); // rs, e, d4, d5, d6, d7
Dans cette partie du code, nous définissons certaines variables qui sont utilisées dans le programme. Vin est la tension fournie par la broche 5V d'arduino. Vout est la tension à la résistance R2 par rapport à la terre.
R1 est la valeur de la résistance connue. R2 est la valeur de la résistance inconnue.
int Vin = 5; // tension à la broche 5V du flotteur arduino Vout = 0; // tension à la broche A0 du flotteur arduino R1 = 3300; // valeur de la résistance connue float R2 = 0; // valeur de la résistance inconnue
Dans cette partie du code, nous allons initialiser l'affichage LCD 16 * 2. Les commandes sont données à l'écran LCD 16 * 2 pour différents paramètres tels que l'écran clair, l'affichage sur le clignotement du curseur, etc.
lcd.begin (16,2);
Dans cette partie du code, la tension analogique sur la résistance R2 (broche A0) est convertie en valeur numérique (0 à 1023) et stockée dans une variable.
a2d_data = analogRead (A0);
Dans cette partie du code, la valeur numérique (0 à 1023) est convertie en tension pour d'autres calculs.
buffer = a2d_data * Vin; Vout = (tampon) / 1024,0;
L' Arduino Uno ADC a une résolution de 10 bits (donc les valeurs entières de 0 - 2 ^ 10 = 1024 valeurs). Cela signifie qu'il mappera les tensions d'entrée entre 0 et 5 volts en valeurs entières entre 0 et 1023. Donc, si nous multiplions l'entrée anlogValue à (5/1024), alors nous obtenons la valeur numérique de la tension d'entrée. Apprenez ici comment utiliser l'entrée ADC dans Arduino.
Dans cette partie du code, la valeur réelle de la résistance inconnue est calculée en utilisant la procédure expliquée ci-dessus.
tampon = Vout / (Vin-Vout); R2 = R1 * tampon;
Dans cette partie du code, la valeur de la résistance inconnue est imprimée sur un écran LCD 16 * 2.
lcd.setCursor (4,0); lcd.print ("Ohm mètre"); lcd.setCursor (0,1); lcd.print ("R (ohm) ="); lcd.print (R2);
C'est que nous pouvons facilement calculer la résistance d'une résistance inconnue en utilisant Arduino. Vérifiez également:
- Fréquencemètre Arduino
- Compteur de capacité Arduino