RC-5 Fernbedienungsempfänger


zurück zu PIC-Projekte , PIC-Prozessoren , Elektronik , Homepage

Problem
Die LED-Beleuchtung in einem Raum sollte mit einer normalen IR-Fernbedienung ein- und ausgeschaltet bzw. gedimmt werden.

Eine geeignete Fernbedienung ist jede Philips-TV-Fernbedienung oder dieser Eigenbau (RB0 mit Vss verbinden).



Lösung
Meine Lösung ist auf den RC-5 Code beschränkt, den z.B. Philips benutzt. Ein IR-Empfänger ist an einen PIC (Pin 6) angeschlossen, der jeden empfangenen RC-5-Code dekodiert. Auf bestimmte Codes hin schaltet er einen Ausgang (Pin 3 = GPIO4) ein bzw. aus. An einem andern Pin (Pin 5 = GPIO2) wird mittels PWM (500 Hz) ein Signal zum Dimmen ausgegeben.
Bei voller Helligkeit wird ein zusätzliches Pin (Pin2 = GPIO5) eingeschaltet. Dadurch lässt sich zusätzlich zu den gedimmten LEDs bei Bedarf eine zusätsliche LED aktivieren.

Um Platz zu sparen, verwende ich einen 8-Pin-PIC und benutze dessen interne Taktquelle. Da ich einen PWM-Ausgang benötige, fällt die Wahl auf den PIC12F683. Als IR-Empfänger verwende ich den TSOP1736. Die Schaltung benötigt eine Versorgungsspannung von 4,5 ... 5,5 V. Dabei beträgt die Stromaufnahme ca. 5 mA (PIC12F863 + TSOP1736) zuzüglich des Strombedarfs der nachfolgenden Schaltstufe.

Die Schaltung reagiert standardmäßig auf Signale für Philips-TV-Geräte, kann aber auf Signale für Philips-Videorecorder umgeschaltet werden. Die Umschaltung erfolgt durch eine Verbindung der Pins GPIO3 und Vss (Pin 4 und Pin 8). Die folgende Tabelle zeigt die Zuordnung der Tasten zu den erzeugten Ausgangssignalen. GPIO2 gibt ein PWM-Signal mit 500 Hz aus. Nur wenn dessen Tastverhältnis bei 0% liegt, dann führt GPIO4 Low-Pegel. Ansonsten führt GPIO4 High-Pegel. Nur wenn das Tastverhältnis bei 100% liegt, dann führt GPIO5 High-Pegel. Ansonsten führt GPIO5 Low-Pegel.

Die Schaltung speichert immer das gerade verwendete PWM-Tastverhältnis. Wird die Betriebsspannung ab- und später wieder angeschaltet, dann wird das zuletzt benutzte Tastverhältnis wieder verwendet. Mit einer Ausnahme: War das letzte Tastverhältnis 0%, dann wird beim Einschalten 100% gewählt. Das garantiert, dass man beim Licht einschalten nie im Dunkeln nach der Fernbedienung suchen muss.

Pin 7 führt beim Einschalten zunächst high-Pegel. Damach wird der Pegel bei jedem empfangenen gültigen RC5-Code (0..9, Next, Prev, Vol+, Vol-) geändert. Hier ließe sich also ein Gerät bei jedem Tastendruck ein- und aus-schalten.
Stromlaufplan

Taste auf der Fernbedienung
0
1
2
3
4
5
6
7
8
9
Next/+
Prev/-
Vol +
Vol -
GPIO2 Tastverhältnis
0%
4%
6%
8%
13%
19%
29%
43%
66%
100%
höhere Stufe
niedrigere Stufe
höhere Stufe
niedrigere Stufe
GPIO4 Ausgangspegel
0
1
1
1
1
1
1
1
1
1
1
0 oder 1
1
0 oder 1
GPIO5 Ausgangspegel 0
0
0
0
0
0
0
0
0
1
0 oder 1
0
0 oder 1
0

Nahezu  jede RC5-Fernbedienung kann die TV-Codes erzeugen.
Achtung: VCR-Fernbedienungen geben aber häufig Vol+ und Vol- Signale für TV-Geräte aus.




Ausgang
Die drei Ausgangspins können nur ca 25 mA liefern. Deshalb muss das zu schaltende Gerät (z.B. LED-Deckenleuchte) noch mit einem geeigneten Schalttransistor angesteuert werden.
Geeignete Transistorstufen findet man z.B. hier.




Downloads

zurück zu PIC-Projekte , PIC-Prozessoren , Elektronik , Homepage
Autor: sprut
erstellt: 28.10.20122002
letzte Änderung: 25.11.2012