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: Berührungsloser Schalter mit Infrarot-Reflektionssensor FC-51

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

  1. Eine Idee ist, den Programmcode so umzubauen, dass er die Annäherung erkennt, die Onboard-LED einschaltet und nach einer bestimmten Zeit automatisch ausschaltet.
  2. Die Abschaltzeit soll mit einem Potentiometer einstellbar sein.

Weitere verwandte Themen:

Teilen:

Hardware-nahes Programmieren mit dem Raspberry Pi Pico und MicroPython

Elektronik-Set Pico Edition

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

Elektronik-Set jetzt bestellen Online-Workshop buchen

Programmieren mit dem Raspberry Pi Pico
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.

Online-Workshop buchen

Für Ihre Fragen zu unseren Online-Workshops mit dem Raspberry Pi Pico besuchen Sie unseren PicoTalk (Online-Meeting). (Headset empfohlen)

Zum PicoTalk

 

Elektronik-Set Pico Edition
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 jetzt bestellen

 

Elektronik-Set Pico WLAN Edition
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 jetzt bestellen

 

Elektronik-Set Sensor Edition
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.

Elektronik-Set jetzt bestellen