Comment Utiliser un Capteur de Tension avec Arduino pour Mesurer des Voltages Supérieurs à 5V

Introduction
Lorsque vous travaillez avec des microcontrôleurs tels qu’Arduino, il peut être difficile de mesurer des tensions dépassant la limite de 5V des broches analogiques intégrées. Cependant, il existe une solution simple : utiliser un capteur de tension. Ce tutoriel vous guidera étape par étape pour utiliser un capteur de tension avec votre Arduino, vous permettant ainsi de mesurer des tensions allant jusqu’à 25V de manière précise et efficace. Suivez ce guide pour découvrir comment interfacer le capteur de tension avec votre Arduino et obtenir des résultats fiables pour vos projets de mesure de tension.
Présentation du matériel
Le capteur de tension est essentiellement un circuit diviseur de tension composé de deux résistances, rien de plus compliqué que cela.
Schéma du Capteur de Tension
Composant | Valeur |
---|---|
Résistance R1 | 30 KΩ |
Résistance R2 | 7,5 KΩ |
Le capteur de tension divise la tension d’entrée par un facteur de 5, ce qui vous permet de mesurer des tensions inférieures à 25 volts avec un Arduino.
-
Capteur de tension B25 0-25V20,00 DH
-
ALIMENTATION 5V90,00 DH – 150,00 DH
-
Arduino Uno R3 avec câble USB120,00 DH
Lecture du Capteur de Tension
La lecture du capteur de tension, ou de tout diviseur de tension, est très simple. Nous pouvons utiliser l’équation du diviseur de tension.
Équation du Diviseur de Tension
L’équation du diviseur de tension suppose que vous connaissez trois valeurs du circuit ci-dessus : la tension d’entrée (Vin) et les valeurs des deux résistances (R1 et R2). En connaissant ces valeurs, nous pouvons utiliser cette équation pour trouver la tension de sortie (Vout) :
Vout = Vin * (R2 / (R1 + R2))
Cependant, dans notre cas, nous allons mesurer la tension de sortie (Vout) du circuit diviseur de tension en utilisant l’ADC de l’Arduino. Par conséquent, la valeur que nous ne connaissons pas est Vin.
Réarrangeons l’équation ci-dessus pour résoudre Vin :
Vin = Vout * ((R1 + R2) / R2)
Cette équation nous dit que la tension d’entrée (Vin) est égale à la tension de sortie (Vout) divisée par la fraction de la résistance de la deuxième résistance (R2) sur la résistance totale (R1 + R2) dans le circuit.
Configuration des Broches du Capteur de Tension
Examinons maintenant la configuration des broches du capteur de tension.
Broche d’Entrée
La broche VCC est connectée à la borne positive de la source de tension que vous souhaitez mesurer. La plage de tension recommandée pour cette broche est de 0 à 25V.
La broche GND est connectée à la borne négative de la source de tension d’entrée.
Sortie du Capteur
La broche S est la sortie du signal du capteur de tension. Elle fournit une tension analogique proportionnelle au niveau de tension d’entrée. Elle est généralement connectée à l’une des broches d’entrée analogiques de l’Arduino, comme A0.
La broche + n’est connectée à rien.
La broche – est la broche de mise à la terre commune.
Branchement du Matériel
Brancher un capteur de tension à un Arduino est un jeu d’enfant.
Pour commencer, connectez la source de tension que vous souhaitez mesurer à la borne d’entrée du capteur. Ensuite, connectez la broche S du capteur à la broche analogique A0 de l’Arduino et la broche – à la masse de l’Arduino.
L’image ci-dessous montre comment tout connecter.
Exemple de Code Arduino
Voici un sketch simple qui lit la tension analogique sur la broche analogique A0, calcule la tension d’entrée à l’aide de l’équation du diviseur de tension et affiche les résultats dans le Moniteur Série.
// Définition de l'entrée analogique #define ANALOG_IN_PIN A0 // Floats pour la tension ADC et la tension d'entrée float tension_adc = 0.0; float tension_entree = 0.0; // Floats pour les valeurs des résistances dans le diviseur (en ohms) float R1 = 30000.0; float R2 = 7500.0; // Float pour la tension de référence float tension_reference = 5.0; // Entier pour la valeur ADC int valeur_adc = 0; void setup(){ // Configuration du Moniteur Série Serial.begin(9600); } void loop(){ // Lecture de l'entrée analogique valeur_adc = analogRead(ANALOG_IN_PIN); // Détermination de la tension à l'entrée de l'ADC tension_adc = (valeur_adc * tension_reference) / 1024.0; // Calcul de la tension à l'entrée du diviseur tension_entree = tension_adc * (R1 + R2) / R2; // Affichage des résultats dans le Moniteur Série avec 2 décimales Serial.print("Tension d'Entrée = "); Serial.println(tension_entree, 2); // Petite pause delay(500); }
Explication du Code :
Ce sketch est assez simple, vous ne devriez donc pas avoir de difficulté à le suivre. Le sketch commence par la définition de quelques variables globales qui seront utilisées dans tout le programme.
La première ligne définit la broche d’entrée analogique sur l’Arduino que nous utilisons pour lire la tension du circuit diviseur de tension. Dans ce cas, nous utilisons la broche A0.
#define ANALOG_IN_PIN A0
Ensuite, deux floats, tension_adc et tension_entree, sont définis pour stocker les lectures de tension de l’ADC et l’entrée du diviseur de tension, respectivement.
float tension_adc = 0.0; float tension_entree = 0.0;
Les variables R1 et R2 stockent les valeurs des résistances pour le diviseur de tension. Si vous utilisez un ensemble différent de résistances pour fabriquer votre propre divise
ur de tension, vous devrez les modifier.
float R1 = 30000.0; float R2 = 7500.0;
tension_reference est la tension de référence pour l’ADC, généralement 5V pour un Arduino Uno.
float tension_reference = 5.0;
Enfin, la dernière variable valeur_adc est utilisée pour stocker la valeur numérique brute lue depuis l’ADC.
int valeur_adc = 0;
Dans la fonction setup(), nous configurons la communication série à un débit de 9600.
void setup(){ Serial.begin(9600); }
Dans la fonction loop(), la fonction analogRead() est utilisée pour lire la tension sur la broche A0. La valeur retournée est stockée dans la variable valeur_adc.
valeur_adc = analogRead(ANALOG_IN_PIN);
Cette valeur est ensuite convertie en une tension (tension_adc) en multipliant par la tension de référence et en divisant par 1024 (l’Arduino dispose d’un ADC sur 10 bits, d’où 2^10 = 1024 valeurs différentes).
tension_adc = (valeur_adc * tension_reference) / 1024.0;
La tension d’entrée du diviseur de tension est ensuite calculée en utilisant la formule pour un diviseur de tension :
tension_entree = tension_adc * (R1 + R2) / R2;
Enfin, la tension d’entrée calculée est affichée dans le Moniteur Série, avec une précision de 2 décimales. Après cela, l’Arduino attend 500 millisecondes avant de répéter la boucle.
Serial.print("Tension d'Entrée = "); Serial.println(tension_entree, 2); delay(500);
Questions Fréquentes (FAQ)
Q1 : Est-ce que le capteur de tension peut mesurer des tensions supérieures à 25V ?
R1 : Non, le capteur de tension est conçu pour mesurer des tensions jusqu’à 25V uniquement. Si vous avez besoin de mesurer des tensions plus élevées, vous devrez utiliser un autre circuit ou un diviseur de tension personnalisé avec des résistances adaptées.
Q2 : Puis-je utiliser des résistances de valeurs différentes pour le diviseur de tension ?
R2 : Oui, vous pouvez utiliser des résistances de valeurs différentes pour adapter le diviseur de tension à vos besoins spécifiques. Assurez-vous simplement de recalculer la tension d’entrée en fonction des nouvelles valeurs de résistance en utilisant la formule du diviseur de tension.
Q3 : Comment puis-je vérifier l’exactitude des mesures du capteur de tension ?
R3 : Vous pouvez vérifier l’exactitude des mesures du capteur de tension en comparant les résultats avec une source de tension connue, comme un multimètre de bonne qualité. Appliquez une tension connue sur la broche VCC du capteur, puis vérifiez si la tension affichée sur le Moniteur Série correspond à la valeur attendue.
Q4 : Puis-je utiliser plusieurs capteurs de tension avec un seul Arduino ?
R4 : Oui, vous pouvez utiliser plusieurs capteurs de tension avec un seul Arduino en connectant chaque capteur à une broche analogique différente. Assurez-vous simplement d’ajuster le code en conséquence pour lire les valeurs de tension de chaque capteur individuellement.
Q5 : Quelles sont les autres utilisations du capteur de tension en dehors de la mesure de tension ?
R5 : En plus de la mesure de tension, le capteur de tension peut être utilisé pour mesurer des signaux analogiques tels que des températures ou des courants continus. Vous pouvez également l’utiliser pour surveiller les variations de tension dans un circuit électrique et déclencher des actions en fonction des changements de tension.
Q6 : Comment puis-je améliorer la précision des mesures du capteur de tension ?
R6 : Pour améliorer la précision des mesures, utilisez des résistances de haute qualité avec des tolérances basses pour le diviseur de tension. Assurez-vous également que la source de tension est stable et propre. Enfin, calibrez périodiquement le capteur en comparant les mesures avec une source de tension de référence connue.
Q7 : Est-ce que le capteur de tension nécessite une alimentation séparée ?
R7 : Non, le capteur de tension tire son alimentation de l’Arduino via la broche VCC. Assurez-vous que la tension fournie à la broche VCC respecte la plage recommandée (0 à 25V) pour un bon fonctionnement du capteur.
Conclusion
Félicitations ! Vous avez maintenant appris comment utiliser un capteur de tension avec votre Arduino pour mesurer des tensions supérieures à 5V. Grâce à ce capteur, vous pouvez désormais effectuer des mesures de tension précises dans vos projets, sans vous soucier des limitations de l’ADC intégré de l’Arduino.
En utilisant la formule du diviseur de tension, vous pouvez facilement calculer la tension d’entrée en fonction de la tension de sortie mesurée. Assurez-vous de suivre les étapes de connexion matérielles pour obtenir des résultats fiables et précis.
N’hésitez pas à expérimenter avec différentes valeurs de résistance pour le diviseur de tension ou à ajouter des fonctionnalités supplémentaires à votre projet en utilisant les mesures de tension obtenues.
Amusez-vous bien à créer et à innover avec votre Arduino et votre capteur de tension ! Happy making !
arduino projects
Lien outilles
- Téléchargement de l’Arduino IDE arduino download – arduino logiciel : https://www.arduino.cc/en/software
- Pour plus d’articles : https://www.moussasoft.com/tutoriels-electroniques
- Twitter: Moussa Lhoussaine (@Moussasoft_com) / Twitter
- Arduino – Home