Raspberry Pi - Touch Sensor - LED

Deze tutorial legt uit hoe u de Raspberry Pi en een touch sensor gebruikt om een LED te bedienen. We behandelen twee verschillende toepassingen:

Toepassing 1 - De status van de LED is gesynchroniseerd met de status van de touch sensor. In detail:

Toepassing 2 - De LED-status wordt omgeschakeld telkens wanneer de touch sensor wordt aangeraakt. Meer specifiek:

Hardware Vereist

1×Raspberry Pi 5
1×Aanraaksensor
1×LED Kit
1×LED (red)
1×LED Module
1×220 ohm weerstand
1×Breadboard (experimenteerprint)
1×Jumper wires (male-male)
1×(Aanbevolen) Schroefklem Block Shield voor Raspberry Pi
1×(Aanbevolen) Raspberry Pi Prototyping Basisplaat & Breadboard Kit
1×(Aanbevolen) HDMI-Touchscreen-Monitor voor Raspberry Pi

Of u kunt de volgende kits kopen:

1×DIYables Sensorkit (30 sensoren/displays)
1×DIYables Sensorkit (18 sensoren/displays)
Openbaarmaking: Sommige van de links in deze sectie zijn Amazon-affiliate links. We kunnen een commissie ontvangen voor aankopen die via deze links worden gedaan, zonder extra kosten voor u. We waarderen uw steun.

Over LED en Touch Sensor

Bent u niet bekend met LED en touch sensor (inclusief pinout, werking en programmeren), dan kunnen de volgende tutorials u helpen:

Aansluitschema

Raspberry Pi Touch Sensor LED aansluitdiagram

This image is created using Fritzing. Click to enlarge image

Om uw bekabelingsopstelling te vereenvoudigen en te organiseren, raden we het gebruik van een Schroevenklemaansluiting-shield voor Raspberry Pi aan. Deze shield zorgt voor veiligere en beter beheerbare verbindingen, zoals hieronder weergegeven:

Raspberry Pi Schroevenklemaansluiting-Shield

Toepassing 1 - De LED-status is synchroon met de touch sensor status

Snel aan de slag

  • Zorg dat u Raspbian of een ander voor de Raspberry Pi geschikt besturingssysteem hebt geïnstalleerd op uw Pi.
  • Zorg dat uw Raspberry Pi verbonden is met hetzelfde lokale netwerk als uw pc.
  • Zorg dat uw Raspberry Pi verbonden is met internet als u bibliotheken moet installeren.
  • Is dit de eerste keer dat u een Raspberry Pi gebruikt? Bekijk dan hoe u de Raspberry Pi instelt.
  • Verbind uw pc met de Raspberry Pi via SSH met de ingebouwde SSH-client op Linux en macOS, of met PuTTY op Windows. Zie hoe u uw pc met Raspberry Pi verbindt via SSH.
  • Controleer of u de RPi.GPIO bibliotheek hebt geïnstalleerd. Zo niet, installeer deze dan met de volgende opdracht:
sudo apt-get update sudo apt-get install python3-rpi.gpio
  • Maak een Python scriptbestand aan met de naam touch_sensor_led.py en voeg de volgende code toe:
# Deze Raspberry Pi code is ontwikkeld door newbiely.nl # Deze Raspberry Pi code wordt zonder enige beperking aan het publiek beschikbaar gesteld. # Voor volledige instructies en schema's, bezoek: # https://newbiely.nl/tutorials/raspberry-pi/raspberry-pi-touch-sensor-led 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 = 15 # Set the pin number connected to the LED LED_PIN = 16 # Set the GPIO pin as an input GPIO.setup(TOUCH_PIN, GPIO.IN) # Set the GPIO pin as an output for the LED GPIO.setup(LED_PIN, GPIO.OUT) try: while True: # Read the state from the touch sensor touch_state = GPIO.input(TOUCH_PIN) if touch_state == GPIO.HIGH: # Sensor touched, turn on the LED GPIO.output(LED_PIN, GPIO.HIGH) else: # Sensor not touched, turn off the LED GPIO.output(LED_PIN, GPIO.LOW) time.sleep(0.1) # A small delay to debounce the input except KeyboardInterrupt: # Clean up the GPIO settings on program exit GPIO.cleanup()
  • Sla het bestand op en voer het Python-script uit door de volgende opdracht in de terminal te geven:
python3 touch_sensor_led.py
  • Raak de touch sensor aan en houd deze een paar seconden vast.
  • Bekijk de verandering in de LED-status. U zult zien dat de LED-status synchroon loopt met de touch sensor status.

Het script draait in een oneindige lus totdat u Ctrl + C in de terminal indrukt.

Code Uitleg

Bekijk de regel-voor-regel uitleg die in de opmerkingen van de broncode staat!

Toepassing 2 - Touch Sensor schakelt LED om

Snel aan de slag

  • Maak een Python scriptbestand aan met de naam touch_sensor_toggle_led.py en voeg de volgende code toe:
# Deze Raspberry Pi code is ontwikkeld door newbiely.nl # Deze Raspberry Pi code wordt zonder enige beperking aan het publiek beschikbaar gesteld. # Voor volledige instructies en schema's, bezoek: # https://newbiely.nl/tutorials/raspberry-pi/raspberry-pi-touch-sensor-led import RPi.GPIO as GPIO import time # Set the pin number connected to the touch sensor TOUCH_PIN = 15 # Set the pin number connected to the LED LED_PIN = 16 # Set GPIO mode and initial LED state GPIO.setmode(GPIO.BCM) GPIO.setup(TOUCH_PIN, GPIO.IN) # Touch sensor input GPIO.setup(LED_PIN, GPIO.OUT) # LED output led_state = False # LED is initially OFF try: prev_touch_state = GPIO.input(TOUCH_PIN) while True: touch_state = GPIO.input(TOUCH_PIN) if touch_state != prev_touch_state: if touch_state == GPIO.HIGH: # Check if touch sensor is being touched led_state = not led_state # Toggle the LED state. If it was ON, it becomes OFF, and vice versa. GPIO.output(LED_PIN, led_state) # Apply the updated LED state # Debounce by adding a small delay time.sleep(0.2) prev_touch_state = touch_state except KeyboardInterrupt: GPIO.cleanup()
  • Sla het bestand op en voer het Python-script uit door de volgende opdracht in de terminal te geven:
python3 touch_sensor_toggle_led.py
  • Raak de touch sensor meerdere keren aan en laat hem weer los.
  • Bekijk de verandering in de LED-status.

U zult zien dat de LED-status telkens wordt omgeschakeld wanneer de touch sensor wordt aangeraakt.

Video Tutorial

We overwegen het maken van videotutorials. Als u videotutorials belangrijk vindt, abonneer u dan op ons YouTube-kanaal om ons te motiveren de video's te maken.

※ ONZE BERICHTEN

  • U bent welkom om de link naar deze tutorial te delen. Gebruik onze inhoud echter niet op andere websites. We hebben veel moeite en tijd gestoken in het maken van de inhoud, respecteer alstublieft ons werk!