Raspberry Pi - Touch Sensor

Dieses Tutorial zeigt Ihnen, wie Sie den kapazitiven Touch Sensor mit Raspberry Pi verwenden. Im Detail werden wir lernen:

Hardware Erforderlich

1×Raspberry Pi 5
1×Berührungssensor
1×Jumper Wires (Verbindungskabel)
1×(Empfohlen) Schraubklemmenblock-Shield für Raspberry Pi
1×(Empfohlen) Raspberry Pi Prototyping-Grundplatte & Breadboard-Kit
1×(Empfohlen) HDMI-Touchscreen-Monitor für Raspberry Pi

Oder Sie können die folgenden Kits kaufen:

1×DIYables Sensor-Kit (30 Sensoren/Displays)
1×DIYables Sensor-Kit (18 Sensoren/Displays)
Offenlegung: Einige der in diesem Abschnitt bereitgestellten Links sind Amazon-Affiliate-Links. Wir können eine Provision für Käufe erhalten, die über diese Links getätigt werden, ohne zusätzliche Kosten für Sie. Wir schätzen Ihre Unterstützung.

Über Touch Sensor

Ein kapazitiver Touch Sensor, auch als Touch Button oder Touch Switch bekannt, wird häufig zur Bedienung von Geräten verwendet (z.B. eine berührbare Lampe). Er hat den gleichen Zweck wie ein Button. Viele moderne Geräte sind damit ausgestattet anstatt mit einem Button, da es dem Produkt ein eleganteres Aussehen verleiht.

Der Touch Sensor Pinout

Der Touch Sensor hat drei Pins:

  • GND Pin: Dieser muss mit der Masse (0V) verbunden werden.
  • VCC Pin: Dieser muss mit VCC (5V oder 3.3V) verbunden werden.
  • SIGNAL Pin: Dies ist ein Ausgangs-Pin. Er ist LOW wenn nicht berührt und HIGH wenn berührt. Dieser Pin muss mit einem Eingangs-Pin des Raspberry Pi verbunden werden.
Touch Sensor pinout

Wie es funktioniert

  • Wenn der Sensor nicht berührt wird, ist der SIGNAL Pin des Sensors auf LOW-Pegel.
  • Wenn der Sensor jedoch berührt wird, ist der SIGNAL Pin des Sensors auf HIGH-Pegel.

Raspberry Pi - Touch Sensor

Der SIGNAL Pin des Touch Sensors ist mit einem Eingangs-Pin des Raspberry Pi verbunden.

Durch Überprüfung des Status eines Raspberry Pi Pins (als Eingangs-Pin konfiguriert) können wir erkennen, ob der Touch Sensor aktiviert wurde oder nicht.

Schaltplan

Raspberry Pi Touch Sensor wiring diagram

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.

Um Ihren Verdrahtungsaufbau zu vereinfachen und zu organisieren, empfehlen wir die Verwendung eines Schraubklemmenblock-Shields für Raspberry Pi. Dieses Shield gewährleistet sicherere und besser verwaltbare Verbindungen, wie unten gezeigt:

Raspberry Pi Schraubklemmenblock-Shield

Wie man für Touch Sensor programmiert

  • Konfiguriert den Raspberry Pi Pin als digitalen Eingangsmodus mit der GPIO.setup() Funktion.
GPIO.setup(TOUCH_PIN, GPIO.IN)
  • Verwendet die GPIO.input() Funktion, um den Status des Raspberry Pi Pins zu ermitteln.
touch_state = GPIO.input(TOUCH_PIN)

Es gibt zwei häufige Anwendungsfälle für den Touch Sensor:

  • Der erste: Wenn der Eingangszustand HIGH ist, eine Aktion ausführen. Wenn der Eingangszustand LOW ist, die entgegengesetzte Aktion ausführen.
  • Der zweite: Wenn der Eingangszustand von LOW zu HIGH (oder HIGH zu LOW) wechselt, eine Aktion ausführen.

Je nach Anwendung wird einer davon ausgewählt. Zum Beispiel bei der Verwendung eines Touch Sensors zur Steuerung einer LED:

  • Wenn das Ziel ist, dass die LED AN ist, wenn der Sensor berührt wird, und AUS, wenn der Sensor NICHT berührt wird, sollte der erste Anwendungsfall verwendet werden.
  • Wenn das Ziel ist, dass die LED bei jeder Berührung des Sensors zwischen AN und AUS wechselt, sollte der zweite Anwendungsfall verwendet werden.

Raspberry Pi Code für Touch Sensor

Wir werden zwei Beispiel-Codes lernen:

  • Raspberry Pi liest den Wert vom Touch Sensor und gibt ihn im Terminal aus.
  • Raspberry Pi überprüft, ob der Sensor berührt oder losgelassen wird.

Raspberry Pi liest den Wert vom Touch Sensor und gibt ihn im Terminal aus

Schnelle Schritte

  • Stellen Sie sicher, dass Sie Raspbian oder ein anderes Raspberry Pi kompatibles Betriebssystem auf Ihrem Pi installiert haben.
  • Stellen Sie sicher, dass Ihr Raspberry Pi mit dem gleichen lokalen Netzwerk wie Ihr PC verbunden ist.
  • Stellen Sie sicher, dass Ihr Raspberry Pi mit dem Internet verbunden ist, falls Sie einige Bibliotheken installieren müssen.
  • Wenn Sie Raspberry Pi zum ersten Mal verwenden, sehen Sie wie man den Raspberry Pi einrichtet
  • Verbinden Sie Ihren PC über SSH mit dem Raspberry Pi, indem Sie den integrierten SSH-Client unter Linux und macOS oder PuTTY unter Windows verwenden. Siehe wie Sie Ihren PC über SSH mit Raspberry Pi verbinden.
  • Stellen Sie sicher, dass Sie die RPi.GPIO Bibliothek installiert haben. Falls nicht, installieren Sie sie mit folgendem Befehl:
sudo apt-get update sudo apt-get install python3-rpi.gpio
  • Erstellen Sie eine Python-Skriptdatei touch_sensor.py und fügen Sie folgenden Code hinzu:
# Dieser Raspberry Pi Code wurde von newbiely.de entwickelt # Dieser Raspberry Pi Code wird der Öffentlichkeit ohne jegliche Einschränkung zur Verfügung gestellt. # Für vollständige Anleitungen und Schaltpläne besuchen Sie bitte: # https://newbiely.de/tutorials/raspberry-pi/raspberry-pi-touch-sensor import RPi.GPIO as GPIO # Set the GPIO mode to BCM (Broadcom SOC channel numbering) GPIO.setmode(GPIO.BCM) # Set the pin number connected to the touch sensor TOUCH_PIN = 12 # Set the GPIO pin as an input GPIO.setup(TOUCH_PIN, GPIO.IN) try: while True: # Read the state from the touch sensor touch_state = GPIO.input(TOUCH_PIN) # The touch sensor outputs LOW (0) when not touched, and HIGH (1) when touched if touch_state == GPIO.LOW: print("Touch sensor is not touched.") else: print("Touch sensor is touched!") except KeyboardInterrupt: # Clean up the GPIO settings on program exit GPIO.cleanup()
  • Speichern Sie die Datei und führen Sie das Python-Skript aus, indem Sie folgenden Befehl im Terminal ausführen:
python3 touch_sensor.py
  • Legen Sie Ihren Finger auf den Sensor und nehmen Sie ihn dann weg.
  • Überprüfen Sie das Ergebnis im Terminal.
PuTTY - Raspberry Pi
Touch sensor is not touched. Touch sensor is not touched. Touch sensor is not touched. Touch sensor is touched! Touch sensor is touched! Touch sensor is touched! Touch sensor is touched! Touch sensor is touched! Touch sensor is touched! Touch sensor is not touched. Touch sensor is not touched.

Das Skript läuft in einer Endlosschleife kontinuierlich, bis Sie Ctrl + C im Terminal drücken.

Raspberry Pi erkennt Sensor berührt oder losgelassen

Schnelle Schritte

  • Erstellen Sie eine Python-Skriptdatei TO_BE_UPDATED.py und fügen Sie folgenden Code hinzu:
# Dieser Raspberry Pi Code wurde von newbiely.de entwickelt # Dieser Raspberry Pi Code wird der Öffentlichkeit ohne jegliche Einschränkung zur Verfügung gestellt. # Für vollständige Anleitungen und Schaltpläne besuchen Sie bitte: # https://newbiely.de/tutorials/raspberry-pi/raspberry-pi-touch-sensor import RPi.GPIO as GPIO import time # Set the GPIO mode to BCM (Broadcom SOC channel numbering) GPIO.setmode(GPIO.BCM) # Set the pin number connected to the touch sensor TOUCH_PIN = 12 # Set the GPIO pin as an input GPIO.setup(TOUCH_PIN, GPIO.IN) # Variable to track the touch sensor state prev_touch_state = GPIO.LOW # Assuming the sensor is not touched initially try: while True: touch_state = GPIO.input(TOUCH_PIN) if touch_state != prev_touch_state: if touch_state == GPIO.HIGH: # Sensor touched event print("Touch sensor is touched!") else: # Sensor released event print("Touch sensor is released!") prev_touch_state = touch_state time.sleep(0.1) # A small delay to debounce the input except KeyboardInterrupt: # Clean up the GPIO settings on program exit GPIO.cleanup()
  • Speichern Sie die Datei und führen Sie das Python-Skript aus, indem Sie folgenden Befehl im Terminal ausführen:
python3 touch_sensor_events.py
  • Berühren Sie den Sensor und halten Sie Ihren Finger darauf.
  • Überprüfen Sie die Ausgabe im Terminal.
PuTTY - Raspberry Pi
Touch sensor is touched!
  • Nehmen Sie Ihren Finger vom Sensor.
  • Überprüfen Sie die Ausgabe im Terminal.
PuTTY - Raspberry Pi
Touch sensor is touched! Touch sensor is released!

Video Tutorial

Wir erwägen die Erstellung von Video-Tutorials. Wenn Sie Video-Tutorials für wichtig halten, abonnieren Sie bitte unseren YouTube-Kanal , um uns zu motivieren, die Videos zu erstellen.

※ UNSERE NACHRICHTEN

  • Sie können gerne den Link zu diesem Tutorial teilen. Bitte verwenden Sie jedoch unsere Inhalte nicht auf anderen Websites. Wir haben viel Mühe und Zeit in die Erstellung der Inhalte investiert, bitte respektieren Sie unsere Arbeit!