KY-003 Hall Magnetfeld-Sensor Modul: Unterschied zwischen den Versionen

Aus Linkerkit.de

Wechseln zu: Navigation, Suche
(Codebeispiel Raspberry Pi)
(Codebeispiel Arduino)
Zeile 16: Zeile 16:
 
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.
 
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.
  
<pre class="brush:cpp">int Led = 13 ;// Deklaration des LED-Ausgangspin
+
<pre class="brush:cpp">
 +
int Led = 13 ;// Deklaration des LED-Ausgangspin
 
int Sensor = 10; // Deklaration des Sensor-Eingangspin
 
int Sensor = 10; // Deklaration des Sensor-Eingangspin
 
int val; // Temporaere Variable
 
int val; // Temporaere Variable
 
+
 
void setup ()
 
void setup ()
 
{
 
{
 
   pinMode (Led, OUTPUT) ; // Initialisierung Ausgangspin
 
   pinMode (Led, OUTPUT) ; // Initialisierung Ausgangspin
 
   pinMode (Sensor, INPUT) ; // Initialisierung Sensorpin
 
   pinMode (Sensor, INPUT) ; // Initialisierung Sensorpin
 +
  digitalWrite(Sensor, HIGH); // Aktivierung interner Pull-Up Widerstand
 
}
 
}
 
+
 
void loop ()
 
void loop ()
 
{
 
{
 
   val = digitalRead (Sensor) ; // Das gegenwärtige Signal am Sensor wird ausgelesen
 
   val = digitalRead (Sensor) ; // Das gegenwärtige Signal am Sensor wird ausgelesen
 
+
 
   if (val == HIGH) // Falls ein Signal erkannt werden konnte, wird die LED eingeschaltet.
 
   if (val == HIGH) // Falls ein Signal erkannt werden konnte, wird die LED eingeschaltet.
 
   {
 
   {
Zeile 38: Zeile 40:
 
     digitalWrite (Led, HIGH);
 
     digitalWrite (Led, HIGH);
 
   }
 
   }
}</pre>
+
}
 +
</pre>
  
 
'''Anschlussbelegung Arduino:'''
 
'''Anschlussbelegung Arduino:'''

Version vom 2. März 2016, 12:13 Uhr

Bild

ky-003.jpg

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

3 S V G.png

Codebeispiel Arduino

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-Ausgangspin
int Sensor = 10; // Deklaration des Sensor-Eingangspin
int val; // Temporaere Variable
 
void setup ()
{
  pinMode (Led, OUTPUT) ; // Initialisierung Ausgangspin
  pinMode (Sensor, INPUT) ; // Initialisierung Sensorpin
  digitalWrite(Sensor, HIGH); // Aktivierung interner Pull-Up Widerstand
}
 
void loop ()
{
  val = digitalRead (Sensor) ; // Das gegenwärtige Signal am Sensor wird ausgelesen
 
  if (val == HIGH) // Falls ein Signal erkannt werden konnte, wird die LED eingeschaltet.
  {
    digitalWrite (Led, LOW);
  }
  else
  {
    digitalWrite (Led, HIGH);
  }
}

Anschlussbelegung Arduino:

LED + = [Pin 13]
LED - = [Pin GND]
Sensor Signal = [Pin 10]
Sensor +V = [Pin 5V]
Sensor GND = [Pin GND]

Beispielprogramm Download

KY-003_Arduino.zip

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. 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 "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

KY-003_RPi.zip

Zu starten mit dem Befehl:

sudo python KY-003.py