Halleffekt-Schalter sind monolithisch integrierte Schaltungen mit engeren magnetischen Spezifikationen. Dies bedeutet, dass der Sensor aus einem Stück besteht, eine erhöhte Empfindlichkeit bezüglich Magnetfeldern hat und das alles, was benötigt wird, bereits direkt in dem Sensor selbst verbaut ist. Der Sensor ist für den Dauerbetrieb bei Temperaturen bis +150 °C geeignet und zeichnet sich durch seine Stabilität gegenüber Temperatur- und Versorgungsspannungsänderungen aus. Jedes Gerät enthält einen Spannungsregler für den Betrieb mit Versorgungsspannungen von 4,5 bis 24 Volt, eine Verpolungsschutzdiode, einen quadratischen Hall-Spannungsgenerator, Temperaturkompensationsschaltung, Kleinsignalverstärker, Schmitt Trigger und einen Open-Kollektor-Ausgang zur Senkung bis zu 25 mA. Der Transistor schaltet durch, falls das Modul in ein Magnetfeld gehalten wird. Dies kann dann am Signalausgang als analoger Spannungswert ausgelesen werden.

Technische Daten

Chipsatz A3141
Messbereich –40°C bis +150°C
Sensortyp Hall Effect Transistor/Schalter
Funktionsbereich 4.5V bis zu 24V

Pin Belegung

Codebeispiel Arduino

Anschlussbelegung Arduino

Arduino Sensor
Pin 10 Signal
5V +V
Masse GND
Arduino Sensor
Pin 13 LED+
Masse LED-

Hier bei handelt es sich um ein Beispielprogramm, welches eine LED zum Leuchten bringt, wenn am Sensor ein Signal detektiert wurde. Als LED können z.B. auch unter anderem die Module KY-011, KY-016 oder KY-029 verwendet werden.

int Led = 13 ;// Deklaration des LED-Ausgangspins
int Sensor = 10; // Deklaration des Sensoreingangs-Pins
int val; // Temporäre Variable
  
void setup ()
{
  pinMode (Led, OUTPUT) ; // Initialisierung Ausgangs-Pin
  pinMode (Sensor, INPUT) ; // Initialisierung Sensor-Pin
  digitalWrite(Sensor, HIGH); // Aktivierung interner Pull-up-Widerstand
}
  
void loop ()
{
  val = digitalRead (Sensor) ; // Das Stromsignal am Sensor wird ausgelesen.
  
  if (val == HIGH) // Wenn ein Signal erkannt werden konnte, wird die LED eingeschaltet.
  {
    digitalWrite (Led, LOW);
  }
  else
  {
    digitalWrite (Led, HIGH);
  }
}

Beispielprogramm Download

KY003-Arduino.zip

Codebeispiel Raspberry Pi

Anschlussbelegung Raspberry Pi

Raspberry Pi Sensor
GPIO 24 [Pin 18] Signal
3,3V [Pin 1] +V
Masse [Pin 6] GND

Hier bei handelt es sich um ein ähnliches Beispielprogramm mit dem Unterschied das hier keine LED zum leuchten gebracht wird sonder etwas in der Konsole ausgegebn wird, wenn ein Signal detektiert wird.

# Benoetigte Module werden importiert und eingerichtet
import RPi.GPIO as GPIO
import time
  
GPIO.setmode(GPIO.BCM)
  
# Hier wird der Eingangs-Pin deklariert, an dem der Sensor angeschlossen ist. Zusaetzlich wird auch der PullUP Widerstand am Eingang aktiviert
GPIO_PIN = 24
GPIO.setup(GPIO_PIN, GPIO.IN, pull_up_down = GPIO.PUD_UP)
  
print ("Sensor-Test [druecken Sie STRG+C, um den Test zu beenden]")
  
# Diese AusgabeFunktion wird bei Signaldetektion ausgefuehrt
def ausgabeFunktion(null):
        print("Signal erkannt")
  
# Beim Detektieren eines Signals (fallende Signalflanke) wird die Ausgabefunktion ausgeloest
GPIO.add_event_detect(GPIO_PIN, GPIO.FALLING, callback=ausgabeFunktion, bouncetime=100) 
  
# Hauptprogrammschleife
try:
    while True:
        time.sleep(1)
  
# Aufraeumarbeiten nachdem das Programm beendet wurde
except KeyboardInterrupt:
        GPIO.cleanup()

Beispielprogramm Download

KY003-RPi.zip

Zu starten mit dem Befehl:

sudo python3 KY003-RPi.py

Codebeispiel Micro:Bit

Anschlussbelegung Micro:Bit:

Micro:Bit Sensor
Pin 1 Signal
3V +V
Masse GND

Hierbei handelt es sich um ein MakeCode Beispiel für Micro:Bit welches essenziel das gleiche macht wie die Beispiele der anderen beiden Varianten. Jedoch ist dieses Beispiel eher näher an das Beispiel des Raspberry Pi angelehnt als an das Beispiel des Arduino.

Beispielprogramm Download

microbit-KY-003.zip