KY-003 Hall Magnetfeld-Sensor Modul: Unterschied zwischen den Versionen
Aus Linkerkit.de
(→Codebeispiel Raspberry Pi) |
|||
Zeile 101: | Zeile 101: | ||
<pre class="brush:bash">sudo python KY-003.py | <pre class="brush:bash">sudo python KY-003.py | ||
</pre> | </pre> | ||
+ | |||
+ | ==Codebeispiel Raspberry Pi== | ||
+ | Programmierbeispiel in der Programmiersprache Python | ||
+ | |||
+ | <pre class="brush:py"># 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 | ||
+ | GPIO_PIN = 24 | ||
+ | GPIO.setup(GPIO_PIN, GPIO.IN) | ||
+ | |||
+ | print "KY-002 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() | ||
+ | |||
+ | </pre> | ||
+ | '''Anschlussbelegung Raspberry Pi:''' | ||
+ | |||
+ | {| style="height: 58px; padding-left: 30px;" width="228" | ||
+ | |- | ||
+ | ||Signal | ||
+ | ||= | ||
+ | ||GPIO24 | ||
+ | ||[Pin 18] | ||
+ | |- | ||
+ | ||+V | ||
+ | ||= | ||
+ | ||3,3V | ||
+ | ||[Pin 1] | ||
+ | |- | ||
+ | ||GND | ||
+ | ||= | ||
+ | ||Masse | ||
+ | ||[Pin 6] | ||
+ | |} |
Version vom 24. Februar 2016, 08:52 Uhr
Inhaltsverzeichnis
Bild
Technische Daten / Kurzbeschreibung
Chipsatz: A3141
Sensortyp: Hall Effect Transistor/Schalter
Der Transistor schaltet durch, falls das Modul in ein Magnetfeld gehalten wird. Dies kann dann am Signalausgang als analoger Spannungswert ausgelesen werden.
Pin-Belegung
Codebeispiel Arduino
/* KY-003 Hall magnetic switch */ int Led = 13 ; // define LED Interface int SENSOR = 10 ; // define the Hall magnetic sensor interface int val ; // define numeric variables val void setup () { pinMode (Led, OUTPUT) ; // define LED as output interface pinMode (SENSOR, INPUT) ; // define the Hall magnetic sensor line as input } void loop () { val = digitalRead (SENSOR) ; // read sensor line if (val == LOW) // when the Hall sensor detects a magnetic field, Arduino LED lights up { digitalWrite (Led, HIGH); } { digitalWrite (Led, LOW); } }
Codebeispiel Raspberry Pi
Programmierbeispiel in der Programmiersprache Python
# 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 GPIO_PIN = 24 GPIO.setup(GPIO_PIN, GPIO.IN) print "KY-003 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()
Anschlussbelegung Raspberry Pi:
Signal | = | GPIO24 | [Pin 18] |
+V | = | 3,3V | [Pin 1] |
GND | = | Masse | [Pin 6] |
Beispielprogramm Download
Zu starten mit dem Befehl:
sudo python KY-003.py
Codebeispiel Raspberry Pi
Programmierbeispiel in der Programmiersprache Python
# 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 GPIO_PIN = 24 GPIO.setup(GPIO_PIN, GPIO.IN) print "KY-002 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()
Anschlussbelegung Raspberry Pi:
Signal | = | GPIO24 | [Pin 18] |
+V | = | 3,3V | [Pin 1] |
GND | = | Masse | [Pin 6] |