KY-010 Lichtschranke
Wenn die Lichtschranke des Moduls unterbrochen wird, wird auch das Signal welches vom Modul selbst ausgeht unterbrochen.
- Arduino
- Raspberry Pi
- Raspberry Pi Pico
- Micro:Bit

Wenn die Lichtschranke des Moduls unterbrochen wird, wird auch das Signal, welches vom Modul selbst ausgeht, unterbrochen.
Betriebsspannung | 3,3 V - 5 V |
Pin-Belegung
Codebeispiel Arduino
Anschlussbelegung Arduino
Arduino | Sensor |
---|---|
Pin 10 | Signal |
5V | +V |
GND | GND |
Arduino | Sensor |
---|---|
Pin 13 | LED+ |
GND | LED- |
Hierbei 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);
}
}
Beispielprogramm Download

Wenn die Lichtschranke des Moduls unterbrochen wird, wird auch das Signal, welches vom Modul selbst ausgeht, unterbrochen.
Betriebsspannung | 3,3 V - 5 V |
Pin-Belegung
Codebeispiel Raspberry Pi
Anschlussbelegung Raspberry Pi
Raspberry Pi | Sensor |
---|---|
GPIO 24 [Pin 18] | Signal |
3,3V [Pin 1] | +V |
GND [Pin 6] | GND |
Hierbei handelt es sich um ein Beispielprogramm, welches Text Seriell ausgibt, wenn am Sensor ein Signal detektiert wurde.
# 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_DOWN)
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 (steigende Signalflanke) wird die Ausgabefunktion ausgeloest
GPIO.add_event_detect(GPIO_PIN, GPIO.RISING, callback=ausgabeFunktion, bouncetime=100)
# Hauptprogrammschleife
try:
while True:
time.sleep(1)
# Aufraeumarbeiten nachdem das Programm beendet wurde
except KeyboardInterrupt:
GPIO.cleanup()
Beispielprogramm Download
Zu starten mit dem Befehl:
sudo python3 KY010-RPi.py

Wenn die Lichtschranke des Moduls unterbrochen wird, wird auch das Signal, welches vom Modul selbst ausgeht, unterbrochen.
Betriebsspannung | 3,3 V - 5 V |
Pin-Belegung
Codebeispiel Micro:Bit
Anschlussbelegung Micro:Bit:
Micro:Bit | Sensor |
---|---|
Pin 1 | Signal |
3V | +V |
GND | GND |
Hierbei handelt es sich um ein Beispielprogramm, welches Text Seriell ausgibt, wenn am Sensor ein Signal detektiert wurde.

Beispielprogramm Download

Wenn die Lichtschranke des Moduls unterbrochen wird, wird auch das Signal, welches vom Modul selbst ausgeht, unterbrochen.
Betriebsspannung | 3,3 V - 5 V |
Pin-Belegung
Codebeispiel Raspberry Pi Pico
Anschlussbelegung Raspberry Pi Pico
Raspberry Pi Pico | Sensor |
---|---|
GPIO18 | Signal |
3.3V | +V |
GND | GND |
Hierbei handelt es sich um ein Beispielprogramm, welches hoch zählt und Seriell Text ausgibt, wenn am Sensor ein Signal detektiert wurde.
# Bibliotheken laden
from machine import Pin, Timer
# Initialisierung von GPIO als Eingang
sensor = Pin(18, Pin.IN, Pin.PULL_DOWN)
# Timer erstellen
timer = Timer()
# Zähler auf 0 stellen
counter = 0
# Funktion: Schritte zählen
def step(timer):
global counter
counter = counter + 1
print(counter)
# Funktion: Barriere
def barrier(pin):
# Entprellfunktion: Timer setzen
timer.init(mode=Timer.ONE_SHOT, period=100, callback=step)
# Initialisierung Interrupt
sensor.irq(trigger=Pin.IRQ_FALLING, handler=barrier)