Hi les gars, bienvenue au tutoriel d’aujourd’hui. Aujourd’hui, nous allons voir comment utiliser un capteur à effet Hall avec Arduino.
Un capteur à effet Hall est un capteur qui varie sa sortie en fonction de la présence ou de l’absence d’un champ magnétique. Cela signifie que le signal de sortie produit par un capteur à effet Hall est fonction de la densité du champ magnétique qui l’entoure. Lorsque la densité du flux magnétique autour de lui dépasse une certaine valeur seuil préétablie, le capteur le détecte et génère une tension de sortie parfois appelée tension de hall pour indiquer la présence du champ magnétique.
Les capteurs à effet Hall deviennent très populaires en raison de leur polyvalence et ils sont utilisés dans de nombreuses applications différentes. L’une des applications populaires des capteurs à effet Hall est dans les systèmes automobiles où ils sont utilisés pour détecter la position, mesurer la distance et la vitesse. Ils sont également utilisés dans les appareils modernes comme les smartphones et les ordinateurs et également utilisés dans différents types de commutateurs où la présence d’un champ magnétique est utilisée pour activer ou désactiver un circuit.
Les capteurs à effet Hall produisent une sortie analogique ou numérique en fonction du capteur particulier. Quel que soit le type, ils se présentent généralement sous la forme d’un boîtier à trois broches dont une représente le signal et les deux autres l’alimentation du capteur. Cela rend facile la connexion à n’importe quel microcontrôleur.
Pour le tutoriel d’aujourd’hui, nous allons démontrer le fonctionnement du capteur à effet hall en le connectant aux côtés d’une LED à un Arduino. L’Arduino sera programmé de telle sorte que lorsqu’un aimant est approché du capteur à effet hall, la LED s’allume et lorsque l’aimant est retiré, elle s’éteint.
Composants requis
Les composants suivants sont nécessaires pour construire ce projet.
- Capteur à effet Hall
- Cheap Arduino Uno
- Breadboard mini
- LED
- Fils
- Aimants
Comme d’habitude, les composants exacts utilisés pour ce tutoriel peuvent être achetés via les liens attachés à chacun des composants listés ci-dessus.
Schémas
Le schéma de ce projet est simple, car tout ce que nous avons à faire est de connecter les trois broches du capteur de hall et une LED à l’Arduino. Connectez les composants comme indiqué dans les schémas ci-dessous.
La connexion est décrite plus en détail ci-dessous pour la rendre facile à suivre.
Capteur de paroi – Arduino
VCC - 5VGND - GNDSIG - D2
La DEL peut être branchée directement sur l’Arduino avec la branche positive dans la broche 13 de l’Arduino et l’autre branche branchée sur la broche de masse sans résistance car l’arduino a une résistance interne attachée à la broche 13.
Avec les schémas faits, nous pouvons passer au code de ce projet.
Code
Le code de ce projet est vraiment simple, tout ce que nous voulons faire comme mentionné précédemment est de vérifier si un champ magnétique est détecté et si oui, allumer la LED si non, nous éteignons la LED.
Pour faire une courte explication du code de ce projet, la première chose que nous faisons est de déclarer les broches de l’Arduino auxquelles notre capteur de hall et la LED sont connectés, après quoi nous créons une variable « state » qui va stocker la valeur du capteur de hall.
////////////////////////////////////////////// // HALL EFFECT SENSOR DEMO // // Author: Nick Koumaris //// http://www.educ8s.tv ///////////////////////////////////////////////int hallSensorPin = 2; int ledPin = 13; int state = 0;
Puis, nous procédons à la fonction void setup où nous déclarons le mode des broches de l’Arduino auxquelles la LED et le capteur à effet Hall sont connectés.
void setup() { pinMode(ledPin, OUTPUT); pinMode(hallSensorPin, INPUT); }
Vient ensuite la fonction void loop, la tâche ici est la même que si nous voulons utiliser un bouton poussoir pour contrôler une LED avec un Arduino entre les deux. Nous lisons la sortie du capteur de hall et la stockons dans une variable nommée state. Quand la valeur est BASSE, nous allumons la LED, HAUT et quand la valeur est haute, nous allumons la LED BAS. La configuration de votre capteur à effet Hall peut être différente, car le capteur peut devenir élevé lorsqu’un champ magnétique est détecté. Cela doit être confirmé sur la fiche technique du capteur.
void loop(){ state = digitalRead(hallSensorPin); if (state == LOW) { digitalWrite(ledPin, HIGH); } else { digitalWrite(ledPin, LOW); }}
Le code complet de ce projet est présenté ci-dessous et également disponible en téléchargement dans la section téléchargement à la fin de ce tutoriel.
////////////////////////////////////////////// // HALL EFFECT SENSOR DEMO // // //// http://www.educ8s.tv ///////////////////////////////////////////////int hallSensorPin = 2; int ledPin = 13; int state = 0; void setup() { pinMode(ledPin, OUTPUT); pinMode(hallSensorPin, INPUT); }void loop(){ state = digitalRead(hallSensorPin); if (state == LOW) { digitalWrite(ledPin, HIGH); } else { digitalWrite(ledPin, LOW); }}
Démo
Copiez le code et téléchargez-le sur votre carte Arduino. Vous devriez voir la LED s’allumer lorsqu’un aimant est approché d’elle, comme le montre l’image ci-dessous.