Raspberry Pi Pico: Berührungsloser Schalter mit Infrarot-Reflektionssensor FC-51
Berührungslose oder kontaktlose Schalter sind sehr beliebt. Wir finden sie an Wasserhähnen, Klospülungen, Seifenspendern und Lampen. Was in fertigen und kommerziellen Produkten integriert ist, kann man mit Hilfe eines Infrarot-Reflektionssensors selber bauen. In Kombination mit einem Raspberry Pi Pico lässt sich ein Annäherungsschalter bzw. berührungsloser Schalter bauen.
Es geht darum etwas einzuschalten und auf dem selben Weg wieder auszuschalten. Ein Infrarot-Reflektionssensor soll dabei einen Taster ersetzen.
Anwendungen:
- Licht
- Motor
- Relais
Aufbau und Bauteile
Raspberry Pi Pico | FC-51 | |
---|---|---|
Pin 36 | 3V3 OUT | VCC |
Pin 33 | GND | GND |
Pin 29 | GPIO 22 | DOUT |
Hinweis: Um den folgenden Programmcode sinnvoll nutzen zu können, muss der IR-Sensor kalibriert werden. Hierfür muss das Potentiometer auf dem Sensor-Modul verwendet werden.
Programmcode
In diesem Programmcode ist eine Funktion definiert, mit der das Schalten eines GPIO-Ausgangs möglich ist. Was an diesem GPIO-Ausgang dranhängt und geschaltet wird, spielt keine Rolle. Voraussetzung ist, dass es zwei Zustände hat und damit der binären Logik folgt. Beispielsweise die Zuständen EIN und AUS. In diesem Beispiel wird die Onboard-LED eingeschaltet und ausgeschaltet.
Der eigentliche Hauptteil des Programmcodes befindet sich in der Endlos-Schleife. Hier wird der IR-Sensor kontinuierlich abgefragt. Wenn eine Annäherung erkannt wird, dann wird die Schalt-Funktion aufgerufen.
Um zu verhindern, dass die selbe Annäherung als weiterer Schaltvorgang erkannt wird (Prellen), wird in einer weiteren Endlos-Schleife, solange pausiert, bis der Sensor keine Annäherung mehr erkennt.
# Bibliotheken laden from machine import Pin from utime import sleep # Initialisierung: Onboard-LED led_onboard = Pin(25, Pin.OUT, value=0) # Initialisierung: GPIO22 als Eingang sensor_d = Pin(22, Pin.IN, Pin.PULL_UP) # Funktion: Schalten der Onboard-LED (Beispiel) def switching(): #led_onboard.toggle() led_onboard.value(not led_onboard.value()) # Wiederholung (Endlos-Schleife) print('Annäherung prüfen') while True: # Sensor-Zustand lesen und prüfen value_d = sensor_d.value() if value_d == 0: print('Annäherung erkannt') switching() # Entprell-Funktion while True: sleep(0.5) value_d = sensor_d.value() # Weiter erst dann, wenn Sensor freigegeben ist if value_d == 1: break print('Annäherung prüfen') # Warten, um versehentliches Auslösen zu verhindern sleep(0.2)
Erweiterungen
- Eine Idee ist, den Programmcode so umzubauen, dass er die Annäherung erkennt, die Onboard-LED einschaltet und nach einer bestimmten Zeit automatisch ausschaltet.
- Die Abschaltzeit soll mit einem Potentiometer einstellbar sein.
Weitere verwandte Themen:
- Raspberry Pi Pico: Objekterkennung mit Infrarot-Reflektionssensor FC-51
- Raspberry Pi Pico: Berührungsloser Schalter mit IR-Sensor FC-51 und Servo-Motor SG90
- Raspberry Pi Pico: Objekterkennung mit TCRT5000
- Raspberry Pi Pico: Abstandsmessung mit TCRT5000
Teilen:
Hardware-nahes Programmieren mit dem Raspberry Pi Pico und MicroPython
Das Elektronik-Set Pico Edition ist ein Bauteile-Sortiment mit Anleitung zum Experimentieren und Programmieren mit MicroPython.
- LED: Einschalten, ausschalten, blinken und Helligkeit steuern
- Taster: Entprellen und Zustände anzeigen
- LED mit Taster einschalten und ausschalten
- Ampel- und Lauflicht-Steuerung
- Elektronischer Würfel
- Eigene Steuerungen programmieren
Online-Workshop
Hardware-nahes Programmieren mit dem Raspberry Pi Pico
Gemeinsam mit anderen und unter Anleitung experimentieren? Wir bieten unterschiedliche Online-Workshops zum Raspberry Pi Pico und MicroPython an. Einführung in die Programmierung, Sensoren programmieren und kalibrieren, sowie Internet of Things und Smart Home über WLAN und MQTT.
Für Ihre Fragen zu unseren Online-Workshops mit dem Raspberry Pi Pico besuchen Sie unseren PicoTalk (Online-Meeting). (Headset empfohlen)
Elektronik-Set Pico Edition
Raspberry Pi Pico: Hardware-nahes Programmieren mit MicroPython
Leichter Einstieg mit All-in-one-Set zum sofort Loslegen, um eigene Steuerungen programmieren.
Elektronik-Set Pico WLAN Edition
Raspberry Pi Pico W: IoT und Smart Home mit WLAN und MQTT
Betreibe Deinen Raspberry Pi Pico W als drahtloser Sensor in Deinem WLAN, versende E-Mails mit Daten und kommuniziere per MQTT im Internet of Things oder Smart Home.
Elektronik-Set Sensor Edition
Erweiterung zu den Elektronik-Sets Pico Edition und Pico WLAN Edition
Elektronik-Set mit den beliebtesten Sensoren zum Messen von Temperatur, Helligkeit, Bewegung, Lautstärke und Entfernung.