GPIO-Projekt 10 – IR-Projekt
In diesem Projekt lernen Sie, wie Sie mithilfe eines Infrarot-Empfängers (IR) und einer Fernbedienung Aktionen auf einem Raspberry Pi auslösen . Als Ausgang verwenden wir eine LED (zu finden im GPIO-Kit ), die über spezielle Tasten auf der Fernbedienung gesteuert wird.
Anschlussplan
Schließen Sie den IR-Sensor an:
- VCC (oder +) : An 3,3 V (Pin 1) anschließen.
- GND (oder -) : Mit GND (Pin 6) verbinden.
- OUT : Verbindung mit GPIO 17 (Pin 11) .
Schließen Sie die LED an:
- Langes Bein (Anode) :
- Über einen 220Ω Widerstand an GPIO 27 (Pin 13) anschließen.
- Kurzes Bein (Kathode) :
- Mit GND (Pin 6) verbinden.
Pinbelegungsreferenz
GPIO | Pin-Nr. | Funktion | Verbindung |
| GPIO 17 | Stift 11 | Eingang | IR-Sensor (AUS) |
| GPIO 27 | Stift 13 | Ausgabe | LED |
| 3,3 V | Stift 1 | Stromversorgung | IR-Sensor (VCC) |
| Masse | Stift 6 | Erde (Boden) | IR-Sensor und LED |

Vorbereitung
Schritt 1: Installieren Sie die erforderlichen Pakete
Öffnen Sie ein Terminal und führen Sie die folgenden Befehle aus, um die erforderliche IR-Bibliothek zu installieren:
sudo apt-get update
sudo apt-get install lircSchritt 2: IR-Funktion aktivieren
- Öffnen Sie das Konfigurationsmenü:
sudo raspi-config2. Gehen Sie zu Schnittstellenoptionen > IR aktivieren und schalten Sie es ein.
3. Starten Sie den Raspberry Pi neu.
Python-Code in Thonny
Schritt 1: Schreiben Sie Ihren Code
Öffnen Sie die Thonny Python IDE und geben Sie den folgenden Code ein:
import RPi.GPIO as GPIO
from time import sleep
# GPIO-instellingen
IR_SENSOR_PIN = 17
LED_PIN = 27
GPIO.setmode(GPIO.BCM)
GPIO.setup(IR_SENSOR_PIN, GPIO.IN) # IR-sensor als input
GPIO.setup(LED_PIN, GPIO.OUT) # LED als output
try:
print("Druk op een knop op de afstandsbediening...")
while True:
if GPIO.input(IR_SENSOR_PIN) == GPIO.LOW: # Detectie van een signaal
print("IR-signaal ontvangen!")
GPIO.output(LED_PIN, GPIO.HIGH) # Zet LED aan
sleep(1) # Houd LED 1 seconde aan
GPIO.output(LED_PIN, GPIO.LOW) # Zet LED uit
else:
GPIO.output(LED_PIN, GPIO.LOW) # Houd LED uit als geen signaal
except KeyboardInterrupt:
print("\nProgramma gestopt.")
finally:
GPIO.cleanup() # Reset de GPIO-instellingen
Schritt 2: Speichern Sie die Datei
Klicken Sie auf Datei > Speichern unter und nennen Sie die Datei ir_project.py .
Schritt 3: Ausführen des Skripts
Klicken Sie oben in der Thonny-Benutzeroberfläche auf die grüne Schaltfläche „Ausführen“ (▶).
Wie funktioniert es?
- IR-Sensor:
- Empfängt das Infrarotsignal von der Fernbedienung.
- Wenn eine Taste gedrückt wird, sendet der Sensor ein Signal an GPIO 17.
- LED:
- Die LED leuchtet, sobald der IR-Sensor ein Signal empfängt.
- Wiederholung:
- Das Programm prüft kontinuierlich, ob ein Signal von der Fernbedienung kommt.
Ergebnis
- Taste gedrückt : Die LED leuchtet 1 Sekunde lang und erlischt dann.
- Keine Taste gedrückt : Die LED bleibt aus.
Experimentieren
- Erkennen Sie verschiedene Schaltflächen:
- Fügen Sie eine Bibliothek wie lirc oder pylirc hinzu , um bestimmte Schaltflächen zu erkennen und verschiedene Aktionen zuzuordnen.
- Weitere Ausgabegeräte:
- Verwenden Sie mehrere LEDs oder andere Geräte, beispielsweise einen Summer, um auf verschiedene Tasten zu reagieren.
- Codes der Schaltfläche „Protokollieren“:
- Protokollieren Sie die empfangenen IR-Codes, um bestimmte Tasten auf der Fernbedienung zu identifizieren.

