Hall-Effekt-Sensor (49E)

Hall-Effekt-Sensor (49E)

Kategorien: Arduino

Hall-Effekt-Sensor (49E)Ausdrucken Ausdrucken


Ein Hall-Effekt-Sensor ist grob ausgedrückt die getunte Version eines Reed-Schalters, denn wie bei einem Reed-Schalter verwenden wir einen Magneten.
Ein Reed-Schalter kennt aber nur 0 oder 1, also ob der Kontakt mit Hilfe eines Magneten geschlossen ist, oder nicht.
Ein Hall-Effekt-Sensor erkennt neben der Stärke (gemessen in Gauss) eines Magnetfeldes auch, ob es sich um den Nord- oder den Südpol handelt.
Darüber hinaus ist er empfindlicher, sprich, bei einer höheren Dichte an Messungen registriert der Sensor mehr Werte, als es ein Reed-Schalter vermag.

 

Was macht ein Hall-Effekt-Sensor?

Haben wir beispielsweise eine rotierende Scheibe, an der ein Magnet befestigt ist und die sich um einen Reed-Schalter dreht, so wird dieser bis zu einer gewissen Umdrehungszahl zuverlässig erkennen, wie oft der Kontakt geschlossen wurde.
Ist die Geschwindigkeit zu hoch, wird er das nicht mehr können. Ein Hall-Effekt-Sensor wäre dann eine sehr gute Alternative.

Darüber hinaus ist ein weiterer Vorteil, dass wir beim messen mit einem Hall-Effekt-Sensor keinerlei Verschleiß an Kontakten haben, wie es bei einem Reed-Schalter der Fall sein kann.

Ein Praxisbeispiel wäre beispielsweise ein Windmesser (Schalen-Anemometer). Dort installieren wir im Mast den Sensor und am Deckel, der um den Mast dreht an einer Stelle einen Magneten. Bei jeder Umdrehung registriert der Sensor den Magneten.

 

Abschließend gesagt: Bei genauerer Messung und/oder bei größerer Zuverlässigkeit ist also ein Hall-Effekt-Sensor die erste Wahl.
Wir verwenden hier einen analogen 49E-Sensor, den Ihr auch günstig bei uns im Shop kaufen könnt. Dieser ist identisch mit dem SS49E/OH49E, welcher auch auf den fertigen Sensorboards verwendet wird.

 

Aufbau einer Schaltung

Das folgende Programm überwacht den Sensorausgang und lässt sich den Wert des Sensors auf dem Analogpin übergeben.

Dazu schließen wir den Sensor an den 5V Anschluss des Arduinos an, verbinden GND (Masse) und schließen den analogen Pin an den A1-Pin des Arduinos an (natürlich geht auch jeder andere analoge Pin).
(Das betrifft jetzt den xx49E-Hallsensor. Andere Modelle erfordern ggf. eine andere Beschaltung. Hierzu einen Blick in das entsprechende Datenblatt werfen.)

 

49E Schaltplan Steckplatine

Zum kalibrieren des Programms müssen wir das Programm erstmalig laufen lassen und unbedingt darauf achten, dass kein Magnet in der Nähe des Sensors ist.

Wir notieren uns jetzt den “Raw”-Wert und ändern den Wert der Variable “zeroLevel” entsprechend, damit der Messwert des Raw-Wertes 0,0 ist (minimale Schwankungen sind normal und können mit einer Mittelwertberechnung geglättet werden).

Wir installieren das Programm erneut auf dem Arduino und nun sollte der Wert ~ 0,0 anzeigen.

Mit einem 10KOhm Pulldown-Widerstand zwischen GND und A1 wird die Ausgabe ein wenig ruhiger.

49E Schaltplan Pulldown Steckplatine

Jetzt nehmen wir einen Magneten zur Hand und führen ihn vor den 49E (auf der Seite, die beschriftet ist).
Wenn sich der Südpol des Magneten nähert, sollte der Wert steigen, je näher – also stärker – das Magnetfeld auf den 49E-Sensor wirkt.
Beim Nordpol geschieht genau das Gegenteil, also die Werte gehen in den negativen Bereich.

Unser Sensor erkennt nun zuverlässig Magnetfelder.

 

Sensor kalibriertNeustart nach der Kalibrierung.
Sensor AusgabeMagnet(feld) wird erkannt.    .


Ein Kommentar

Josef

4. August 2020 at 4:57 pm

Vielen Dank für das ausführliche Tutorial! Ich habe es gleich mal probiert und den KY-024 Hall sensor dafür genutzt. Mein Ergebnis: https://nerd-corner.com/hallsensor-ky-024-arduino-code/

Schreibe einen Kommentar

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.