Hoi jongens, welkom bij de tutorial van vandaag. Vandaag bekijken we hoe we een Hall-effectsensor kunnen gebruiken met Arduino.

Een Hall-effectsensor is een sensor die zijn output varieert op basis van de aan- of afwezigheid van een magnetisch veld. Dit betekent dat het uitgangssignaal van een Hall-effectsensor een functie is van de magnetische velddichtheid er omheen. Wanneer de magnetische fluxdichtheid rond de sensor een bepaalde vooraf ingestelde drempelwaarde overschrijdt, detecteert de sensor dit en genereert hij een uitgangsspanning die soms de hall-spanning wordt genoemd om de aanwezigheid van het magnetische veld aan te geven.

Hall-effectsensor

Hall-sensoren worden erg populair door hun veelzijdigheid en ze worden in veel verschillende toepassingen gebruikt. Een van de populaire toepassingen van hall-effectsensoren is in automobielsystemen waar zij worden gebruikt om positie te detecteren, afstand en snelheid te meten. Zij worden ook gebruikt in moderne apparaten zoals smartphones en computers en ook in verschillende soorten schakelaars waar de aanwezigheid van een magnetisch veld wordt gebruikt om een circuit te activeren of te deactiveren.

Hall sensoren produceren ofwel analoge of digitale output, afhankelijk van de specifieke sensor. Ongeacht het type, komen zij gewoonlijk in een drie speldpakket met één speld om signaal te vertegenwoordigen en de andere twee om macht aan de sensor te verstrekken. Dit maakt de aansluiting op elke microcontroller eenvoudig.

Voor de tutorial van vandaag zullen we demonstreren hoe de hall effect sensor werkt door hem naast een LED aan te sluiten op een Arduino. De Arduino zal zo worden geprogrammeerd dat wanneer een magneet dicht bij de hall-effectsensor wordt gebracht, de LED gaat branden en wanneer de magneet wordt verwijderd, deze uitgaat.

Noodzakelijke componenten

De volgende componenten zijn nodig om dit project te bouwen.

  1. Hall Effect Sensor
  2. Cheap Arduino Uno
  3. Breadboard mini
  4. LED
  5. Draden
  6. Magneten

Zoals gebruikelijk kunnen de exacte componenten die voor deze tutorial zijn gebruikt, worden gekocht via de links die bij elk van de hierboven vermelde componenten zijn gevoegd.

Schema

Het schema voor dit project is eenvoudig, omdat we alleen de drie pinnen van de hallsensor en een LED op de Arduino hoeven aan te sluiten. Sluit de componenten aan zoals aangegeven in het schema hieronder.

Schema

De aansluiting wordt hieronder verder beschreven om het gemakkelijk te volgen te maken.

Hall Sensor – Arduino

VCC - 5VGND - GNDSIG - D2

De LED kan rechtstreeks in de Arduino worden gestoken met het positieve pootje in Arduino pin 13 en het andere pootje in de massapin zonder weerstand omdat arduino een interne weerstand aan pin 13 heeft hangen.

Met het schema klaar, kunnen we verder gaan met de code voor dit project.

Code

De code voor dit project is echt eenvoudig, alles wat we willen doen zoals eerder vermeld is om te controleren of een magnetisch veld wordt gedetecteerd en zo ja, zet de LED aan zo nee, dan zetten we de LED uit.

Om een korte uitleg van de code voor dit project te doen, het eerste wat we doen is de pinnen van de Arduino verklaren waarop onze hall sensor en LED is aangesloten, waarna we een variabele “state” maken die de waarde van de hall sensor zal opslaan.

 ////////////////////////////////////////////// // HALL EFFECT SENSOR DEMO // // Author: Nick Koumaris //// http://www.educ8s.tv ///////////////////////////////////////////////int hallSensorPin = 2; int ledPin = 13; int state = 0;

Volgende gaan we naar de void setup functie waar we de pin mode declareren voor de pinnen van de Arduino waarop de LED en de Hall sensor zijn aangesloten.

void setup() { pinMode(ledPin, OUTPUT); pinMode(hallSensorPin, INPUT); }

Volgende is de void loop functie, de taak hier is hetzelfde als wanneer we een drukknop willen gebruiken om een LED aan te sturen met een Arduino ertussen. We lezen de output van de hall sensor en slaan die op in een variabele met de naam state. Wanneer de waarde LAAG is, zetten we de LED HOOG en wanneer de waarde hoog is, zetten we de LED laag. De configuratie van uw hallsensor kan anders zijn, omdat de sensor hoog kan worden wanneer een magnetisch veld wordt gedetecteerd. Dit moet worden bevestigd op de datasheet van de sensor.

void loop(){ state = digitalRead(hallSensorPin); if (state == LOW) { digitalWrite(ledPin, HIGH); } else { digitalWrite(ledPin, LOW); }}

De volledige code voor dit project is hieronder weergegeven en ook beschikbaar voor download onder de download sectie aan het einde van deze tutorial.

 ////////////////////////////////////////////// // 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); }}

Demo

Kopieer de code en upload deze naar uw Arduino board. U zou de LED moeten zien schakelen wanneer een magneet dichtbij wordt gebracht zoals getoond in de afbeelding hieronder.

Demo

Articles

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.